{"report_id":"3475db09-5ad3-4c19-8cd2-1dec69545807","version":0,"status":"done","tags":[],"date":"2026-07-27T04:24:52Z","url":{"schema":"https","addr":"besttrader.live/","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":0,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"final":{"url":{"schema":"https","addr":"besttrader.live/","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"title":"besttraders | HOME","dom":{"size":118342,"mime_type":"text/html; charset=utf-8","magic":"HTML document, ASCII text, with very long lines (11038)","md5":"8de5b4500c75a324e1dae3c478c7d556","sha1":"604520ba84875240010eabc13e2219e6556f6270","sha256":"8fb3f67d181da7eda105c12c67490facf8711d5ecb599a3d2ecf929071eaab9c","sha512":"78b557961005803efadfcee938d3adcd6d5042fb75fedc69040d106777116f4f9e1bb78c2884ae6fbbefed774ac86b37672d4d51584ca2a2d9afef2482d04034","ssdeep":"1536:ddNUWAQ6Q7pmcllWvvYvf2G3IA4VDqA3FC6sAORl:PAQ66p5WvvYvf2G3r4pq/6m","tlshash":"acc3d611ace5582300ab44d5b1a21e19bef94333da620484f7ae87f91fe7f6dc937249","dom_hash":"domhash08caad4c7f595e8f0570c589d062cdae","first_seen":"","last_seen":"","times_seen":0,"resource_available":false,"data":null}},"submit":{"url":{"schema":"https","addr":"besttrader.live/","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":0,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"tags":null,"meta":null},"settings":{"access":"public","device_type":"desktop","expires_at":"2027-08-31T04:24:52Z","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":2}},"detection":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null},"summary":[{"fqdn":"kit-free.fontawesome.com","ip":{"addr":"104.21.51.18","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"domain_registered":"2012-10-18","domain_rank":215435,"first_seen":"2019-05-10T12:34:22Z","last_seen":"2026-07-23T14:44:40.235713Z","alert_count":0,"request_count":4,"received_data":171730,"sent_data":2158,"comment":"","tags":null,"fingerprints":[{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]},{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]}]},{"fqdn":"scanner.tradingview.com","ip":{"addr":"143.204.238.100","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"domain_registered":"2010-03-20","domain_rank":111106,"first_seen":"2016-08-02T09:33:18Z","last_seen":"2026-07-22T10:20:45.048286Z","alert_count":0,"request_count":2,"received_data":195648,"sent_data":1334,"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"]},{"name":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]}]},{"fqdn":"www.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":1,"received_data":63330,"sent_data":497,"comment":"","tags":null,"fingerprints":null},{"fqdn":"www.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":146047,"first_seen":"2012-05-29T15:36:17Z","last_seen":"2026-07-26T23:06:30.068608Z","alert_count":0,"request_count":1,"received_data":1223,"sent_data":510,"comment":"","tags":null,"fingerprints":null},{"fqdn":"snowplow-pixel.tradingview.com","ip":{"addr":"32.186.65.3","port":443,"asn":0,"as":"","country":"United States","country_code":"US"},"domain_registered":"2010-03-20","domain_rank":110021,"first_seen":"2020-02-21T21:21:18Z","last_seen":"2026-07-21T08:39:31.331722Z","alert_count":0,"request_count":2,"received_data":997,"sent_data":1152,"comment":"","tags":null,"fingerprints":[{"name":"Akka HTTP:10.2.9","description":"","website":"https://akka.io","common_platform_enumeration":"cpe:2.3:a:lightbend:akka_http:*:*:*:*:*:*:*:*","icon":"akka-http.png","categories":["Web frameworks","Web servers"]},{"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":"Snowplow Analytics","description":"Snowplow is an open-source behavioral data management platform for businesses.","website":"https://snowplowanalytics.com","common_platform_enumeration":"","icon":"Snowplow.svg","categories":["Analytics","IaaS"]}]},{"fqdn":"widget-sheriff.tradingview-widget.com","ip":{"addr":"143.204.238.28","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":2,"received_data":1110,"sent_data":1130,"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":"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-20T08:16:40.328836Z","alert_count":0,"request_count":1,"received_data":2848,"sent_data":557,"comment":"","tags":null,"fingerprints":null},{"fqdn":"www.tradingview-widget.com","ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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":69,"received_data":2229933,"sent_data":38729,"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":"besttrader.live","ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"domain_registered":"unknown","domain_rank":0,"first_seen":"2026-07-27T03:36:33.775917Z","last_seen":"2026-07-27T03:36:33.775917Z","alert_count":162,"request_count":81,"received_data":4899132,"sent_data":40370,"comment":"","tags":null,"fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"jQuery","description":"jQuery is a JavaScript library which is a free, open-source software designed to simplify HTML DOM tree traversal and manipulation, as well as event handling, CSS animation, and Ajax.","website":"https://jquery.com","common_platform_enumeration":"cpe:2.3:a:jquery:jquery:*:*:*:*:*:*:*:*","icon":"jQuery.svg","categories":["JavaScript libraries"]},{"name":"Moment.js","description":"Moment.js is a free and open-source JavaScript library that removes the need to use the native JavaScript Date object directly.","website":"https://momentjs.com","common_platform_enumeration":"cpe:2.3:a:momentjs:moment:*:*:*:*:*:*:*:*","icon":"Moment.js.svg","categories":["JavaScript libraries"]},{"name":"jQuery CDN","description":"jQuery CDN is a way to include jQuery in your website without actually downloading and keeping it your website's folder.","website":"https://code.jquery.com/","common_platform_enumeration":"","icon":"jQuery.svg","categories":["CDN"]},{"name":"JivoChat","description":"JivoChat is a live chat solution for websites offering customizable web and mobile chat widgets.","website":"https://www.jivosite.com","common_platform_enumeration":"","icon":"JivoChat.png","categories":["Live chat"]},{"name":"Slick","description":"","website":"https://kenwheeler.github.io/slick","common_platform_enumeration":"","icon":"Slick.svg","categories":["JavaScript libraries"]},{"name":"BootstrapCDN:4.3.1","description":"BootstrapCDN is a powerful and reliable Content Delivery Network (CDN) that delivers static resources, including CSS, JavaScript, and font files, for the widely-used Bootstrap framework. By leveraging multiple server locations worldwide, BootstrapCDN accelerates website loading times, ensuring a smooth and visually appealing user experience. Additionally, it ensures website compatibility with various devices and browsers. The service reduces bandwidth usage and server load, improving web performance for developers and end-users alike.","website":"https://www.bootstrapcdn.com/","common_platform_enumeration":"","icon":"BootstrapCDN.png","categories":["CDN"]},{"name":"jQuery Migrate:1.2.1","description":"Query Migrate is a javascript library that allows you to preserve the compatibility of your jQuery code developed for versions of jQuery older than 1.9.","website":"https://github.com/jquery/jquery-migrate","common_platform_enumeration":"","icon":"jQuery.svg","categories":["JavaScript libraries"]},{"name":"Bootstrap:4.3.1","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":"cdnjs","description":"cdnjs is a free distributed JS library delivery service.","website":"https://cdnjs.com","common_platform_enumeration":"","icon":"cdnjs.svg","categories":["CDN"]},{"name":"jQuery:3.2.1","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":"jQuery UI","description":"jQuery UI is a collection of GUI widgets, animated visual effects, and themes implemented with jQuery, Cascading Style Sheets, and HTML.","website":"https://jqueryui.com","common_platform_enumeration":"cpe:2.3:a:jquery:jquery_ui:*:*:*:*:*:*:*:*","icon":"jQuery UI.svg","categories":["JavaScript libraries"]},{"name":"Font Awesome","description":"Font Awesome is a font and icon toolkit based on CSS and Less.","website":"https://fontawesome.com/","common_platform_enumeration":"","icon":"Font Awesome.svg","categories":["Font scripts"]},{"name":"Popper:1.14.7","description":"Popper is a positioning engine, its purpose is to calculate the position of an element to make it possible to position it near a given reference element.","website":"https://popper.js.org","common_platform_enumeration":"","icon":"Popper.svg","categories":["Miscellaneous"]},{"name":"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":"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":"SweetAlert","description":"SweetAlert is a JavaScript library that provides alternative alert and modal dialog boxes for web applications, with customisable features, aiming to improve the user interface of the default browser dialogs.","website":"https://sweetalert.js.org","common_platform_enumeration":"","icon":"SweetAlert.png","categories":["JavaScript libraries"]}]},{"fqdn":"widget-v3.smartsuppcdn.com","ip":{"addr":"185.76.9.11","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":329031,"sent_data":1870,"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":"websocket-visitors.smartsupp.com","ip":{"addr":"3.122.197.123","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":630,"comment":"","tags":null,"fingerprints":null},{"fqdn":"widgetdata.tradingview.com","ip":{"addr":"93.123.102.179","port":443,"asn":199524,"as":"G-Core Labs S.A.","country":"United Kingdom","country_code":"GB"},"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":765,"comment":"","tags":null,"fingerprints":null},{"fqdn":"bootstrap.smartsuppchat.com","ip":{"addr":"3.69.194.231","port":443,"asn":16509,"as":"AMAZON-02","country":"Germany","country_code":"DE"},"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":1579,"sent_data":533,"comment":"","tags":null,"fingerprints":null},{"fqdn":"www.smartsuppchat.com","ip":{"addr":"185.76.9.11","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":462,"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.youtube.com","ip":{"addr":"142.251.153.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-20T08:23:54.066263Z","alert_count":0,"request_count":8,"received_data":3847680,"sent_data":9779,"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":"fonts.gstatic.com","ip":{"addr":"142.250.178.67","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"2008-02-11","domain_rank":0,"first_seen":"2014-04-02T10:51:04Z","last_seen":"2026-07-26T22:19:52.505461Z","alert_count":0,"request_count":3,"received_data":105103,"sent_data":1699,"comment":"","tags":null,"fingerprints":null},{"fqdn":"jnn-pa.googleapis.com","ip":{"addr":"172.217.119.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-20T10:03:51.986275Z","alert_count":0,"request_count":2,"received_data":1197,"sent_data":1220,"comment":"","tags":null,"fingerprints":null},{"fqdn":"fonts.googleapis.com","ip":{"addr":"142.250.178.74","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"domain_registered":"2005-01-25","domain_rank":313,"first_seen":"2012-05-23T12:41:44Z","last_seen":"2026-07-26T22:23:14.439231Z","alert_count":0,"request_count":1,"received_data":2610,"sent_data":511,"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":"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":7732,"sent_data":515,"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":"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":147,"received_data":360484,"sent_data":85731,"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":"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":4,"received_data":30308,"sent_data":1989,"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"]}]}],"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/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"b6a20c0d9da44983aefc2889595774b7","sha1":"a6b83289561646aee8a972f7631e8e92f56cda48","sha256":"2fdd1b9481f875ab3ee4f5d37d4f77142929c0cdf6ced65060f0aa2aed4984a5","sha512":"9baedb500c9f00af4ff8fb892caba990a86a6042c868841f50f6b10c277d8c0566f5ce7049164e86e2bccaa0a786567e18bfb5f3ca7845b5ac65123f207b110c","ssdeep":"","tlshash":"66c022cc7b2b0c088352d9ba107b0566d86ac92cd94c8761d811fb16b92a25a087bba9","size":194,"data":"","first_seen":"2026-07-25T07:02:54.124398Z","last_seen":"2026-07-27T07:00:44.980996Z","times_seen":501,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"ac74e3f51cb94709e1948a70433bdfc5","sha1":"76d121cd4e0c881523d60b8dafc1b3589ae5b2b9","sha256":"a217633e7706a1bd9a42b4bd78d98f44f81e614d34e42aa97562232e0a0ad14e","sha512":"d002a88da3d454e2fac7bdbe5704290b8c7c6d1eb2375744991a1514e9fe83cfe43438c67667d42aa12f2de01cada231171ec95288d671df022d4a7f4d1eb06d","ssdeep":"","tlshash":"2990028430426c102202e0612a9a69b6d175448020199164f0951044392545d505bd0c","size":51,"data":"","first_seen":"2026-07-25T07:02:54.16226Z","last_seen":"2026-07-27T07:00:44.974362Z","times_seen":501,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"9485c8ae181348af0537aeb02376d77f","sha1":"67b0b7f7f914e89f6e0c6651049d5e58063eaf96","sha256":"77724e449ce352c6bb493ce82b91d7ed6b93156928d311f67cc1c57481e6c2f9","sha512":"037ffde473310d2491e664f6fba33b747a956c19bf99420da07bbde6ffbe4ca768da17177bb1643630ff6ae1448ffe79ce1613d08dbea8d610d7d51161950d1b","ssdeep":"","tlshash":"c2d02b8eec5b8595f966e9ca40766d29e0589802ec789cc11527c55261d4a195832cb3","size":266,"data":"","first_seen":"2026-07-25T07:02:54.116193Z","last_seen":"2026-07-27T07:00:45.020622Z","times_seen":502,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"d94eb39b7c5996a928c1d97e2d336207","sha1":"63d8851850a208fd85df769e5ccadcc4474859fe","sha256":"ea73e902e70b18a2f35dd009e26fcf9c68771ff4060e21c60533c90291328a25","sha512":"36bcc6c512fff73197bfea984000d3f197ae09de13dbc39397c2812b3f5b9e8da2d6ebead97520615c83ac480fa2c07701fba86a4a659c3114b29b9c889dbb34","ssdeep":"","tlshash":"c7100000000000000000000000000000c0000c00000000000000000300000000000000","size":2,"data":"","first_seen":"2023-03-26T06:16:09Z","last_seen":"2026-07-27T07:00:44.956099Z","times_seen":1175,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.013985Z","times_seen":172803,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/js/jquery-ui.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"97754b3466ac135c3e8d6b197fa9988f","sha1":"8195a501259fae40f5be4bf8a80ddc889d4414c9","sha256":"fe80885ebb5b9776ef48d0ceee8857a0f707104e7ec9e948567d62d61df35629","sha512":"f829ae92b3a145217247af9c22d02236829cb0a9b32dd769753065faf325b1dec5ed4339d8c9039c18381a30703322d2dcbb61ccf3b94fea16b9e3d464460619","ssdeep":"12288:3DdHCcmMj/W/CCk/QRzbrVDDdRv6FtvemHFgymO:3DdHCcmMj/W/CCkIVDDdRiFD","tlshash":"b4b4a6c9f39c266a867a32595c2e42cdb23c8075d600587fbc5d59dc29a883c43bbf79","size":520714,"data":"","first_seen":"2023-03-09T10:05:20Z","last_seen":"2026-07-27T06:53:32.309821Z","times_seen":201,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"3943450e225c6a2fdea1effade0ebd89","sha1":"56469df750b12b2c1ed5849865f5ede8381f153e","sha256":"ea43a462245af07a2916cdf93717d019f698edf00b308541c18dbc4983efc01c","sha512":"853b34dfcfbeb6d4c932a655b3487a87a75bfb08c079e7422078d4e2ec1c151513adaa5414c3ae267e19e2161852123fef5136402b378595e19b0139bfb0bf17","ssdeep":"","tlshash":"2ec08c090b0dd3a6038a6a94610a43aba15184ca7e611c28ab40e0c2e68e5054066a1e","size":149,"data":"","first_seen":"2026-07-25T07:02:54.138561Z","last_seen":"2026-07-27T07:00:45.01263Z","times_seen":506,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.035123Z","times_seen":184276,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.014446Z","times_seen":295451,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.014968Z","times_seen":259283,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.015364Z","times_seen":17256,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"a7501f04eebeb7462b49e73ee5a10f73","sha1":"37f7aa746686bbfec1b006d92bad45102952aa8c","sha256":"5b71f6fe26ea42d7e734a213f051569ea07b39d911bc52fdc26d7c37bede2f88","sha512":"e93726bfb08071257cfdcceff7b409c6b3b1dfec077d04ea479dfc49de1a3f73a8c2aa79a08778d8a585fd7e33c23723c1cb664af2bbf5ef6b1e4d35e9d738a3","ssdeep":"768:G1ChGD4UuXHwUPDi7Qsrm9Jjle9vYMdmqc7SyY/v1M6LnB/MzheDo/Sg72lCLLqD:0MQbrnQMkzYVM6bBUzh3/G/","tlshash":"697375240868a872d893a447deb9ff3e9cf406790bc9996dbcb7935c01ec6610e9f413","size":79236,"data":"","first_seen":"2026-07-27T04:25:12.88616Z","last_seen":"2026-07-27T04:25:12.88616Z","times_seen":1,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.01666Z","times_seen":110855,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.017172Z","times_seen":17237,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.017655Z","times_seen":257342,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.018141Z","times_seen":1531,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.018592Z","times_seen":1547,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.019054Z","times_seen":254008,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"26b2cd17221dd3d87393816e56cde4d9","sha1":"57306298a28e0e2d4960aff8ed6f2f19088b4795","sha256":"c706dda9d0a0be450c6cccfbd004edf1874948780fa76ac950996963903420f9","sha512":"b62c50ab68fac03780eb136cd5b336f19a0a7810e8e62f37dbc85a237d60e7f7db4bf31b3045739c57b63df5f24a3e0c468e99c16b630e8cd2cd1ce2b03b4c3f","ssdeep":"768:kA6Sc+AX9c/LTM9/KpNX2N6hUwsZf06VEf2hEfSmiLCEEPWA9h87OaU5z:o2zT0/K/GSsZc6MfS/1EOIh87jU1","tlshash":"b3f2e1a4e178cedf0b255fca921d2e3f9ebc06f1a003a9c536f47082375f546291d6a9","size":36609,"data":"","first_seen":"2026-07-27T04:25:12.8943Z","last_seen":"2026-07-27T04:25:12.8943Z","times_seen":1,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"708b895afb5e40d55ed8847eef548e95","sha1":"9b04393832efd3cc330f690db4684507ab7149c6","sha256":"5c3d7261d32d43e7bcfd8e0558ed622494338c67bd948da70f5ca5ba04b3fa3c","sha512":"e7b1ece39db7f116dd4bc26ef415afb6cf13734a411417e14387a5d7b5865fa7e846ed5bda5173e3e5357e6a21747f45980ca48e0f5b185b99b155441b95cdc0","ssdeep":"","tlshash":"b4a02223c028cc230038003000833803e00803208820a00c030b830830e880bfe8888b","size":62,"data":"","first_seen":"2023-12-25T11:00:16Z","last_seen":"2026-07-27T07:16:21.538154Z","times_seen":3614,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"382df8f48d5107dd2a96921030e79c0e","sha1":"19bd60f0b2ee5dd0d3ba977e9a464d03cf135682","sha256":"5893dbf7b9a7496a0d79489a22f335b0d20530e25f0b95656b206bf44d9bc139","sha512":"31f04d2c5e1759fe8774b17908257fc5e07199b54c7ff483008d92ee115393e249d0e8ae814a57758638a7ef3169a4a485812762f2efbc92be6cf307780f7741","ssdeep":"","tlshash":"f8b092191f6d822948a4760c66ab478ab8f8045299005c15b300648816a8e84009ae2a","size":109,"data":"","first_seen":"2026-07-25T07:02:54.150949Z","last_seen":"2026-07-27T07:00:44.960296Z","times_seen":512,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"58cf531c1b4e5d67b0c780ff6899d969","sha1":"9e997fb73f7026136c3201510d77658d59407ded","sha256":"16d4dd67cf8a92581836f38ae1673f2fb1d7d97e0f913eaa6e7e102be59cc123","sha512":"b1961e02be4ed40fd3ccf43025f087eb7528a808a4349b7a97525a0b07f298ff35062c61bf5c5758027ef410cfa58aacfdaed05ca47e4bc93ef17feeff4817f9","ssdeep":"","tlshash":"eba0220c3c083002320b2cb0888b82cbc0202330e0080802c032c08222f3a0c830be3b","size":72,"data":"","first_seen":"2026-07-25T07:02:54.187451Z","last_seen":"2026-07-27T07:00:44.96084Z","times_seen":501,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.001879Z","times_seen":189208,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/demo/moment.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"4b664d03b6c57a7b6773f5a93e15b66e","sha1":"db7615e7a91a6b154a1c6a4cbee1084819fc866e","sha256":"0970616062df1476eaa67ae724ec3a843f759a3e0dbe7e435227f646ee70b5db","sha512":"ba5958b72b4df4a64466b5cdd7ab6a3ca8179cef34a517107016830c35aca771562c0ebdf9fae81f769c2bb2ac0153a7da2beaaead2b8fdfd9e89880e4e165aa","ssdeep":"1536:S64o/hT+6JGXxc0z/2/LjhSbEydRQ6Uucjo:S64ad+YWb7d1rcjo","tlshash":"c0935096994724134ab26738cf9f5409ff298633120a8605bced92d42f75d2943affec","size":97622,"data":"","first_seen":"2026-07-27T03:36:45.092588Z","last_seen":"2026-07-27T04:25:12.777279Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:04:13.236614Z","times_seen":134077,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.079797Z","times_seen":64769,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"9a2a6b16da447c1060cd4a5c09dc8a1c","sha1":"fbe9678c38ea75b2e7379a3bc99ec154f8339330","sha256":"5e778835b3f9e816a452ab0f9acd9459861522e6eb9f61f1c9e60fdc8d9e64cc","sha512":"0808cbb678605f7f165e7bd536f3c2f0c25dc06211624161d1209d80074d262e63db1c4ce941f6da3374566ed577862582f561ae623f28000c61877b25a7c317","ssdeep":"","tlshash":"c4e0c274241450de4a47304a908d7fcc791a86ca3d483b6aa09180d1a72cb9b636dc38","size":301,"data":"","first_seen":"2026-07-25T07:02:54.177153Z","last_seen":"2026-07-27T07:00:44.996332Z","times_seen":501,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.488629Z","times_seen":3247,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.489568Z","times_seen":1808,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"9fd334fc820049549b4ea4d3733ba47f","sha1":"6ba0fb201a5db2e2090074dfbdd7975c2cfc78f1","sha256":"43d899e666518fb0ef349e48afdbc0048874bcdb6b00ba4b53793f1b19b2945d","sha512":"a6c1e074b032916c30c8a6ef55f4ffb1890aeea22f929e3c6110ef4e7f57742253428d4833b95ea32dada78c5b3e17d0f85241a603dc2d2139aa56ce50eca4e5","ssdeep":"384:UipOwuVkogCEowCWLg/JcVlRcHtmjpfbrtka4xPZ/Mb30:ZNogFbLrQPZ/Mb30","tlshash":"34823067c80da72ac4569d26bc7bb602fc2e075945a529606aecc86c04c7d53e30fb7d","size":18865,"data":"","first_seen":"2026-07-24T15:28:45.007972Z","last_seen":"2026-07-27T07:05:45.490386Z","times_seen":453,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.491167Z","times_seen":3378,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.491962Z","times_seen":2666,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.492704Z","times_seen":999,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.493473Z","times_seen":999,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.494266Z","times_seen":1684,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.495073Z","times_seen":3380,"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":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.4484Z","times_seen":1029,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"b16d224a9cf9b154c238a00f6ce89562","sha1":"bf90040361427079f596e6a8daa5c6ce789e6d2d","sha256":"8d1320cfe03ab58ca10d024104587c313b2e9dbd142122d973f29c92637aed23","sha512":"4bfdbc6f94a21a7a7955caa00d6f05f6faada48c56a5e7a72f4e70bbe9c6ce01e2f76a8699e4d035e9981d03a5ab940122be0ac7bdbd6ec7405a17d7e5f37605","ssdeep":"","tlshash":"7d31a99f13b50938c5c0cffd41af066248f16115ad074c1f7e01eae54928553aeb1afb","size":1534,"data":"","first_seen":"2026-07-25T07:02:54.139431Z","last_seen":"2026-07-27T07:00:44.944604Z","times_seen":507,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"49342302f3a1bf591d537268aaa3db97","sha1":"1e27d4dce5d9e78a557d902e2f9255d8f1d567e4","sha256":"217a194b2b1e9e205f2ce02d68f3d346218cf59e0ffb48dfa0f2331ed11232c4","sha512":"4214bf7801e5a15a9af9e231ca3cdb1bd8a05eb81f603da3351e3def46477af2f9a3543cd8f1cc0e19df81303618c01c3b4bd820b4f45d8be5c11a1e0f0e067f","ssdeep":"","tlshash":"59a0120074447c0116112c75c2260584b0511a0b50902401810596c002705895113ce7","size":79,"data":"","first_seen":"2026-07-25T07:02:54.160135Z","last_seen":"2026-07-27T07:00:44.942852Z","times_seen":501,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/js/jquery.cycle.all.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"d05046f4210171ca35db9d8ecea96e39","sha1":"4b25d2063f39b9984498c8f73f868a989d1ef34b","sha256":"e7d3b93f1acfc40949cc4449e84ee9b452d16af13761f7dc0b35179c262d28d0","sha512":"504eecab22044ed30bc4b3b46b74eff705d327b8208a25c75a57aa7ac26e12da10c3b0467fbd7dd723a3374f6f875a4b60fed40e5794b5de2378c043e7ea37a0","ssdeep":"1536:CSOtJJMVoWVLzBjotwM6GjLs7ytfGoANjwaW0+F:C3twM6+smtkdwayF","tlshash":"c833980c934ddb1a96763257ab5bd8cd2e7cc023e9068c79b8ed45dd278082c7217de9","size":51707,"data":"","first_seen":"2023-03-09T10:05:20Z","last_seen":"2026-07-27T04:25:12.816409Z","times_seen":195,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.023677Z","times_seen":56333,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"2da41093c5101c915eba4d7ce7b0703d","sha1":"be67856563d898a7b733742a56b7c24e76f6c12b","sha256":"861a8f8ff3b790a4f6c9a8fbca93e201d714e26ee74a051cc77d25e79ef5f581","sha512":"c78400c6cb9ba66626b3f922da612a3663809ccf26a7b35521a117ee56b1f69fde071301026b99a7976cd6794a76568b7bb46065da5f4d0f23946c850b6a0e24","ssdeep":"","tlshash":"a70110862cf902b6b2d176612be37a2800f8b0476d082418e205e6a096564c2000adcb","size":684,"data":"","first_seen":"2026-07-25T07:02:54.184161Z","last_seen":"2026-07-27T07:00:44.9995Z","times_seen":510,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"c498f21d596cab179eb2e5de92013857","sha1":"8a29a189198796bd164fc566e952884b07496fbe","sha256":"cd5e183ec113a6429535157117bb1ddc54f96b68728ca66921d74b20f8e4c15c","sha512":"4904d4f49e94e06750ba6c2783c51d29ee20d33aab48ea66ed7cb33796e8225b927b0de33aaa23af79e583f48e5d32db88b8ccab4053d59cf0ac4bfd93236c57","ssdeep":"","tlshash":"e770000a3c08a000a22238e008cb2088002300080000a80000c000800cb200e202280a","size":22,"data":"","first_seen":"2026-07-25T07:02:54.145555Z","last_seen":"2026-07-27T07:00:45.018968Z","times_seen":507,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"7bfa335530acd41b8967a37e1c3e076c","sha1":"bdd8d14050dd0955829601ee023b1d449a9dd9b6","sha256":"ef226bb136cc66226cb2c478dc58478eb1fde25b90960098b4b48eaa64465b23","sha512":"feeca3580d39cf46c2d2f6719da557fdafd0278ce21b7e2710aefe013293c853c0ddafc3045baa1fc2ccc483191b5d89d47cedb49a52e3c55012e4718affa3ed","ssdeep":"","tlshash":"97c02bc49d5110548141e0bda13e215a30cab1031c200e10d730c2eb7c357d4100f74f","size":138,"data":"","first_seen":"2026-07-25T07:02:54.178036Z","last_seen":"2026-07-27T07:00:45.027665Z","times_seen":499,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"c2fd98c678db6a4e592fc1fce467a095","sha1":"23d71a1dee6fdcdb530042f8de4c7ab53166f476","sha256":"ce773908bfcad90b99b630fe30a23d2abf23d0530137862b34afd9426fc37f4e","sha512":"4cfdbe3278dfe3b25ee1d5b7c5e2b6136e0813ed126409b436ff14b98ff511e7849897d572bb20701f90c207a7d1a474166b8a3c01bcaa87f87836674926e582","ssdeep":"","tlshash":"14b012187d04e4376302347960230d04e151080342818c0b800ed8c047701cb00104bf","size":91,"data":"","first_seen":"2026-07-25T07:02:54.158231Z","last_seen":"2026-07-27T07:00:45.020059Z","times_seen":502,"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":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.445719Z","times_seen":854,"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":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:43.287718Z","times_seen":2243,"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":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.338148Z","times_seen":2378,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.007242Z","times_seen":182728,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.045627Z","times_seen":207464,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/7504.1288d1d28b2f47f7ac43.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"185306b73eb6156ba89819ac42f09043","sha1":"0e91a337a58188b9760881d3eeb271cc4c8ac2d0","sha256":"4433e6c002fc34e6971b340b447cb59f9704a935f8ff79457535ae6c04f2a91e","sha512":"62e46a9de161a635772e81ac6f569c8a85bcde20c9143b5dbf3fff3d0acc7a668643a351bbfe42e981d28861648256d6fb72849990fbdf3089e0d8da3a378c9b","ssdeep":"384:t0ohD1L+Hfz4m0ehDLL+HfzLNVEGdmMDPHt+eiWxyATTSXUaaexXzIDyg5nAWhJw:t0ohJL+Hfcm0eh3L+HfdaGdmMDvwWxn4","tlshash":"3aa294c83ad3f0ea926721f514af14c7f2392e666c9d9660c15de0d87c3602df12bd6a","size":22216,"data":"","first_seen":"2026-07-04T00:11:22.529436Z","last_seen":"2026-07-27T07:14:43.777909Z","times_seen":230,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"6e6b4e7c1a45993ae64f9aaa4672f019","sha1":"81ed544bb4656d12c73eff1d5fe3911a080f8c51","sha256":"4da86e48d9b22ffccb648bc40fa2df935429b12e5903bdeb308b218615df64b6","sha512":"5b788fd445160f1aa102912f67fc8b92f90f2f78e16690e093896b972e1a73c2ee56f3fa14c6c7261cb3aeccedcf2433d7cc65db8d881b09554b01640d3a9faf","ssdeep":"","tlshash":"158000883e08aa0c000238a0000bc008c83202022a02880000c820800c3a00e030282a","size":26,"data":"","first_seen":"2026-07-25T07:02:54.185612Z","last_seen":"2026-07-27T07:00:45.021194Z","times_seen":500,"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":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.467506Z","times_seen":946,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"87ffe847185e28ae7a0d8bc14f472f3a","sha1":"7ffc222362f7a8ad2b00256d024afb411eebf957","sha256":"07f6e5970352eced1348da096deb7e06d516f0c58df0ef8e24b11fe14af261a7","sha512":"cad56225745ac1811b625bd6acb2da218cd095be7d6dc86b7420e9134c40714c7f4f1f75717f200502f64b021ba7040c7f1bc17f1d0396301f838dcff80c225a","ssdeep":"","tlshash":"cca02208fa3ce003a03f8c088f3f20c00a0f00022c020833822080acb02820aa00ec8f","size":78,"data":"","first_seen":"2026-07-18T07:27:21.544268Z","last_seen":"2026-07-27T04:25:12.919811Z","times_seen":4,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"e37effa9e24c32379780a7a1085e25cc","sha1":"ebd5a937f0328bbe0c086af8745be129db23e8bd","sha256":"72bab54133fd2f04cc30147c3b80df9df2fc8b47ba9fca7c5e10fb548832594e","sha512":"79fc9ca8ddcc1d93e4328bfa52205b7c2d38866fed3f223e719a63331d98343ce937b933cbdfdbffecf7295a41f1e0186e6eb9d8a509258f8f5d5c84d4b900f1","ssdeep":"","tlshash":"8e01b843b35c01a9509eb107af9738c8657d13bd04301da8bf0ca9923ba3a08434e2f2","size":829,"data":"","first_seen":"2026-07-27T03:36:45.268383Z","last_seen":"2026-07-27T04:25:12.920689Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"f785a4d7d61269c28419b7e587b31a01","sha1":"e6e96ed1494a978c750cb972b5baa912054c035c","sha256":"3c3e22dbccce67e5daedc5975cbdde9594e5079484a8e4f164173a0e8c15f320","sha512":"c4b4b0cc1424eea1d492101c956445356576e1170a5d5c2031152e3652926aac36d5406601123f24d934ac9f0fd975b3666af78cfd10aedcb5757cf1ac134746","ssdeep":"","tlshash":"e6219c4730a201a8649fb04bfbdb7888757d524b0034ed94b70ca5861fa3b04438e3f6","size":1145,"data":"","first_seen":"2026-07-27T03:36:45.270652Z","last_seen":"2026-07-27T04:25:12.922389Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"ef031b1cfef4c1687ad85f53efcb8f40","sha1":"89311b746cc4a7496918dfe1062a8486b4471d35","sha256":"aac5bb35ac0288f5097d58fbdadbb21c5c15b77d83c60c0945d3f9c7d7565ae5","sha512":"fc8ca3a89225e0e2c72f893bf19451de72799962f0e6e8dc46faefeca6cef915b5bf140b78075ad378daf303deba25cd7acfddd094615f2b45f51b845afb1c20","ssdeep":"","tlshash":"0de0f13c3c30404407d300f481b7e5383d0a30b44880c8578496dc382cf0fc97d059c4","size":416,"data":"","first_seen":"2026-07-27T03:36:45.271901Z","last_seen":"2026-07-27T04:25:12.924166Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"895cc31e6c2c7947754c54412f9594d2","sha1":"f2ea75b12b74444c7b76b9ceeee09a8cfd1e66a9","sha256":"952a29614cc8cc0799be8d7c4c6b61519acd7aa131eacf882630f75da8fcc943","sha512":"d179e19b3af6ee7c4a83b68f20c8d1325483e88f66b021d396bf7a2af7a6eb6856a44cb9a447c9f11be8d5a1bced27b8b6752fca428a4f967a6ee8d1e43ad617","ssdeep":"","tlshash":"0ed0a729be460d2070af34a7dbcff700183e0003d55c88003d8e87f44f04e6e460358a","size":243,"data":"","first_seen":"2026-07-21T21:17:33.932903Z","last_seen":"2026-07-27T04:25:12.925766Z","times_seen":3,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"6e70066bb2593b36218b785ba3dd6c29","sha1":"15d12188427365dbf0c301b6044f918fc8285712","sha256":"4a60b9609c381f3576b0dd0ee056d3c1a1bd6a28d4cb2d4c16e6540a634d8e29","sha512":"83f396f068f1e36fe2a8affaf50a84ff1b87e63ea81e149541c40367652ac4507e673c75efdbb336855d2c0cc4650df2d03a70e55991cf8753285e2dffff7d4f","ssdeep":"","tlshash":"d621cc54f9c630e214eb3b240efb010547b879975153cd46f04cd6504f57a7864adbe8","size":1209,"data":"","first_seen":"2026-07-27T03:36:45.276187Z","last_seen":"2026-07-27T04:25:12.926583Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":true,"md5":"84a87884b8e3ba62d2e2d33d81962add","sha1":"22513fa27b3ad6b118f6b02a392aadcd9526136c","sha256":"8d2be1953b7ecc5be862e684dc01813ccf0578883957e7d056b9ca94b2ed2434","sha512":"343a3b53d4f193dc09380b6fb0fce2dc9a3724818dc4749fd015d28ac9a00123c87f20a29eabd8aced7517bf6a6f8c88abe8ccdd7470d736308c3e238136aa00","ssdeep":"","tlshash":"d2311dceb22ca01b8bdb6ef4186f18c5ea7e067e548400a2878bbc765acc9591753902","size":1760,"data":"","first_seen":"2026-07-27T03:36:45.2781Z","last_seen":"2026-07-27T04:25:12.9283Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"644dc335ba482697b43192f5bde84d9c","sha1":"fca03ed806772ffcb1cbe9621bdf964719ef1569","sha256":"76e4392222a281443de945105b1deb3a14a6b53bb350ad127d42f13f5a81ee21","sha512":"8be06ff06adc228081ce796af04e081862bdd46ee0a4388d6f8a928c423eec8e167eb52e2a40ed444812fcc4fef2774349c253e0aea07ffbc1df69ec478869a3","ssdeep":"","tlshash":"6e7000083c082000a22238e0080b200a002300080000ae0000c008800c3220aa02a82b","size":22,"data":"","first_seen":"2026-07-25T07:02:54.150082Z","last_seen":"2026-07-27T07:00:44.995713Z","times_seen":501,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"c2d0b50c5f3341004fc9eb0180fbedbf","sha1":"a61e5ec146c93a860130cb8da7142fa3d1026a4b","sha256":"9c8b8d8ede5390dffefadd3c93c2cba6763f91fa72ec56525f683cd02667344d","sha512":"862f887b9b3c5580acb5d98a1e3c047e6c07f5fdb963069083a16c1b6a8380f5af6fa58d032da5b3756a57de86cfc388c7c7f96a9dbd5f0e0214407796ce8e38","ssdeep":"","tlshash":"0ad05b40ab0ae553904e3cd7c69ed9251a9155672112c01171216074d4735e487467a1","size":260,"data":"","first_seen":"2026-07-25T07:02:54.164149Z","last_seen":"2026-07-27T07:00:44.966501Z","times_seen":500,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.05979Z","times_seen":207431,"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":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.424648Z","times_seen":3936,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.080796Z","times_seen":338766,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"d3789a3f91258fcf605452196e19c21c","sha1":"f468a49ed14aa61cc199cac1759cb76160b266ff","sha256":"fa37be71bea1abe989546295b5d10f6a34598aa7ce90cfed1f870131e8e30c9e","sha512":"b93e82af199ae63f26b48b71e93f5f5c7be0c5efe33aad59dcd1109142d79d988b24ba63c4c0a5731a1d2a852fe817da47371412bc5cc8579078e4c5eebb0669","ssdeep":"","tlshash":"c710000000000000000000000000000000000000000000c000000000c0000000000000","size":2,"data":"","first_seen":"2023-03-07T21:37:56Z","last_seen":"2026-07-27T07:00:44.952125Z","times_seen":907,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"65cfbef4976ed897962f8aab52c2e7dd","sha1":"5002f4eb74d361e916cd01adcce97615bb98a93c","sha256":"7ffca58a18354a6fafd52f93908f56bade386cd0181cabc22dde999e040843c9","sha512":"af6eaa50caa0889f6d7d19ae675e875be4d2577826cade64399694acd9a3c494bd35791cc47de33782b2fd996ce97b638289cad79915949a891f5e885da04ddc","ssdeep":"","tlshash":"141154b6393fd032c2e924a6d846ee7a42d08449926210b50fb332c437f6e9cd11ad54","size":1012,"data":"","first_seen":"2026-07-25T07:02:54.112569Z","last_seen":"2026-07-27T07:00:44.948009Z","times_seen":502,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/js/custom_slick.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"48504d800ec15e00524974ec0eaa8478","sha1":"736af2fd9ff3ce0be9433e08561ad3b22ae04110","sha256":"a3dd8d3a7709bfd4636cc1d26b50ca5d6134091db7f191b04df9281774353856","sha512":"0980b7b3c638447ac941e0b7c8fa6cfc872b8e5a65e4f4c3f31ce9cdce3f86474e57a063498c81286d2fd3c90e57b60f25a9d994d2660b53e637de2967a208bf","ssdeep":"","tlshash":"1b51690a941251b74c3b62369f39b240cf5a6317414ac9a37efe47440f3421ab1e5eea","size":2523,"data":"","first_seen":"2023-03-13T03:45:08Z","last_seen":"2026-07-27T04:25:12.643189Z","times_seen":188,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"61e9c06ea9a85a5088a499df6458d276","sha1":"e2415cb7f63df0c9de23362326ad3c37a9adfc96","sha256":"fcb5f40df9be6bae66c1d77a6c15968866a9e6cbd7314ca432b019d17392f6f4","sha512":"61037724a2fb00a12fa8a53ada233f54ff7fc6ee02048e579b83a127ce79fc03906c35b5307beb18a3cf5021fe031ae6587448d4d60a082d73252fe2e2f4ae7f","ssdeep":"","tlshash":"c700000000000000c00000300000000000c00000000000000000000000000000000000","size":1,"data":"","first_seen":"2023-03-07T01:02:14Z","last_seen":"2026-07-27T07:00:45.021763Z","times_seen":79764,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"053fbccf1e17390f7a9adc3521ed7696","sha1":"e3d25d9c529549b5e8c066fe1e3390a03cff30a3","sha256":"5bebf4b6615a6aa6aea024a979423e3c35ed65dca89cec752afe3c5fa0262789","sha512":"8df25f0190b67780e3fe3549184050dd91e162ba06815e92e63f89fe1f07f1259f9ee294a4efde8b498c4c99dd2300947201d7859c913c85021d7b84107588cf","ssdeep":"","tlshash":"8890028430426c102202d0612a9a69b6d175448020199164f05510443921059505bd0c","size":49,"data":"","first_seen":"2026-07-25T07:02:54.198206Z","last_seen":"2026-07-27T07:00:45.002562Z","times_seen":505,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"97893f46e7e13ef37b4c2e0ac60d85ca","sha1":"9c93b4599fe3df75fb3326420f7805a0b572eb98","sha256":"e5b564a7a4059dccb9c20cd678603a6f30c5f3db3af9b421e7f87eb37b030337","sha512":"973fb08ee51bb939b314a5dca3d67e39b8d27d209f5328a9c6fc3e4d7a716b29098e81824ac0c15f9a9a98d070fe09176399f78f1828080c5d9142c9835453f4","ssdeep":"","tlshash":"c710000000000000000000000000000000000000000000000000000000000000000c00","size":2,"data":"","first_seen":"2023-10-13T15:09:37Z","last_seen":"2026-07-27T07:00:44.950253Z","times_seen":1984,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"da3f5f8741b5de980662d730df73f871","sha1":"896f82c86f77ec8f6696a162f44345d84f4b302e","sha256":"da48bc39846fb2dfb11eac0208ab64b9f8b2f12fc89e9832b61d63d68935138b","sha512":"4c5197263ad82b11b501108b4da2d7f9ed721fff7146f15e294451be9611cbce7e079ec7a8204d358379003f85061b186fa8f851e271c05119b44ce405066b04","ssdeep":"","tlshash":"84a022203e20ee02b3232ace023b2c08f2088002c0000c0fc03ef3c00330bc223028fa","size":78,"data":"","first_seen":"2026-07-25T07:02:54.111523Z","last_seen":"2026-07-27T07:00:45.009896Z","times_seen":501,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"b2c033e81e5f5f3d63beba88712ff6ad","sha1":"98f27a412fcc1ba29098c5d60e0577a19d2d2db9","sha256":"bea6c2d06c730cbcc0383d0be45269737019dbd4e40dab4c786861a9c82baa8f","sha512":"6fd35b35256ea2ee673f840880503a5102921fdeafea46e81d91e200506905861eabf9dc5a7640bb37d0645e5a68febbd3a4d15c26db7ed405794c8865f0632c","ssdeep":"","tlshash":"84d0a7049119108386346d5bc282dfafe59184433e01d81b299c49ec16fc957e5b98a5","size":240,"data":"","first_seen":"2026-07-25T07:02:54.154377Z","last_seen":"2026-07-27T07:00:44.963638Z","times_seen":519,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.026765Z","times_seen":174924,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"5206560a306a2e085a437fd258eb57ce","sha1":"c9ee5681d3c59f7541c27a38b67edf46259e187b","sha256":"de5a6f78116eca62d7fc5ce159d23ae6b889b365a1739ad2cf36f925a140d0cc","sha512":"40422e2733a73dec2f9aac48e2ab48d3b2fdcdc1e3a88bc7ea855227e62c029246da1dd49dd057bb8a8b796b3b2a6f60d9d8a85de53df597e422b2f68c54cfb6","ssdeep":"","tlshash":"c70000000000000cc00000300000000000000000000000000000000000000000000000","size":1,"data":"","first_seen":"2023-03-07T12:04:13Z","last_seen":"2026-07-27T07:03:19.014699Z","times_seen":68663,"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":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.453763Z","times_seen":1216,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"a78c5c832247d38a96a1d593f639a2f8","sha1":"5f0015f64b3fa0c1cf637e590267ba3b24120422","sha256":"70af5859b85dd4f8bae68a68aca5782a1795821b1cdd307c803d62f76ed1859f","sha512":"effa7fe575fe0f5f3c2a7d8a377f6bc00f909e1e47ec5a6e93f6f16ffd0bf227e506ee3da11dae805d30c1e01b690cacbfb4e891f973bb5cc1daf9cd7a08daab","ssdeep":"","tlshash":"ab7000083e08a0080a2238a000ab00280022000032808a00808002a00c3200e802280a","size":22,"data":"","first_seen":"2026-07-25T07:02:54.087327Z","last_seen":"2026-07-27T07:00:44.957131Z","times_seen":502,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"db0e667538ab4e563e08c53acdc8adca","sha1":"7b00a8cb6da0a073775af7b8536d09fa244594ec","sha256":"b57608c5537f1c358fa12ec9a41449489847678d160fc29bea540ebfe93b1af5","sha512":"0388191a568e959e0ee4d19304a222bd647c874b02cbbe7a589757c47da8277ca1e7afb02a3eb9803a1fdf3220bae8875aad1d8f8fd624284f0fcd32abbcfeff","ssdeep":"","tlshash":"f9c0c000f44cc39725933c2f0d41873e801b120384320c030301d8cd0833beee245f60","size":180,"data":"","first_seen":"2026-07-25T07:02:54.18944Z","last_seen":"2026-07-27T07:00:44.982845Z","times_seen":503,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"796a99cad1a6610a7fa68e368d72cb4d","sha1":"b484b5b4973974c40859b0bcdc09c6c87a9a659c","sha256":"d61a50f46cd94e534153820f129c90bcab530e78f08cf2f179b008fac3c6f3dd","sha512":"76e33f7b2eac4d092754e12c149ce663195bad3173c574ddbd997bbc8a75594e868ace5263bfbb32aa2d38fe74918ef36242241498935df9df6535aecdaa7fb7","ssdeep":"","tlshash":"69d022072287ddb6a2729804030afa15b0ff100b0f262a06f3c885026734b8cc262a97","size":214,"data":"","first_seen":"2026-07-25T07:02:54.074862Z","last_seen":"2026-07-27T07:00:44.96701Z","times_seen":500,"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":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.358764Z","times_seen":949,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/36166.7637be1cf2514504ac79.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"51776a5fc46a025b06d1b20c444a8934","sha1":"ded406bfe93dcf4112270cd3f1634b7bec2da0cf","sha256":"6619f156d8b0192fb34d6c756bf0bda361c55a6a2d79c9fe1117d9a83ad626df","sha512":"1a8c2a8de6868dcf9765cf86c13f9a9f50c87cc022a6142c3a48a4e8da04589a6c06376ccb2928de274dd64f5558784b2a5f2c5c13617c7c40ea38359ab819ad","ssdeep":"384:Ew9WKLri/jpKfQVAFzMnNReRhrt3bkiRWXxKziTObRcRbF:Ew9WKa9K4Gz4fejx1RWszhbe9F","tlshash":"8492b5c8b1e1f0e556e768a0807f444bf13a7d19349e9060a3a2d4d678b46dec07bf6e","size":21217,"data":"","first_seen":"2026-07-25T03:24:57.421925Z","last_seen":"2026-07-27T07:14:43.842369Z","times_seen":147,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"9af69e91e9a0e1650ac23ca1a06d9a03","sha1":"1a26706289f10c0bd07fcca5b37e9cd1f31742ce","sha256":"b5f92e34f5614aa40d35166769b90304819bc552ad045006a56b2672ea5e635a","sha512":"23ce7998bc81e6515eb7c1d416ff1e22fe067aaf6d5348bd66654a5c6d9d65e89276e08da1431693589b7566ebdd95651132e2d6ed6ad3cc765532482f5c5d3c","ssdeep":"","tlshash":"67d023de54545753a25515f39009d6154307504f52f8cf5bd11198b414d64074087b11","size":213,"data":"","first_seen":"2026-07-25T07:02:54.07392Z","last_seen":"2026-07-27T07:00:44.954199Z","times_seen":516,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"4e5784c2f559c1f257d3fe1adff1b994","sha1":"a8bb93b81e79497dcbaea5f08618abe3e13614d5","sha256":"9abd5bd5bc72c038c0276119bd897de57b661a0e4b0d9849758dd698f4b11d10","sha512":"a66be2c2557a5eae52f07ea28edae7acf52d9ab08345204fc42a161d1c474ac05d43323229367c9eaffc197970a47846353096695ff79bb6fc820a804c268af4","ssdeep":"","tlshash":"19c02b08746220f04a43ce395fbfc804a05c62511720128c216274c80c80a94607308d","size":137,"data":"","first_seen":"2026-07-25T07:02:54.148131Z","last_seen":"2026-07-27T07:00:45.024626Z","times_seen":505,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"11721f4fe0fa20af0333c7eda891ca0f","sha1":"372c3c93f86eb46b9afffaebbf49c82cf42fa466","sha256":"ef2a3319810f3ae9cd5948f3229bc195d7b1558846487473b21a842f9d1b503b","sha512":"0f12b9a1099d5be03aa05cb2c7fda09fcd3d47094ee1973d5beb44d6651729d7c7d719af6b57981f3a39f9024ee36e549167a21724929930e62271547ec0e3c0","ssdeep":"","tlshash":"c7100000000c00c0000000000000000000000000000000000000000000000000300000","size":2,"data":"","first_seen":"2023-03-08T06:14:19Z","last_seen":"2026-07-27T07:00:44.935983Z","times_seen":2894,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"f69a3704d7f533aa4245e6bf79aaf7f0","sha1":"11e5a704728320de77d28101f21079c644136b4c","sha256":"adb064ad7f04d21017f0801899a3867082ed16d71583c6cc7756f30beb9363ff","sha512":"d12fd361ad1905660b2bc871f8d172acac2972e2cb3c4930db744248f12624d3f6410618ed13d6b45e6881d90f82078db0e2178f55b8ae4b151994ecb9ebbcfb","ssdeep":"","tlshash":"27d09730e9010300b22c1ca230a1dfe700a0c4073e00e8268a698dec08f8202c056aec","size":243,"data":"","first_seen":"2026-07-25T07:02:54.142504Z","last_seen":"2026-07-27T07:00:44.9509Z","times_seen":518,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"a5f3c6a11b03839d46af9fb43c97c188","sha1":"a7ee38bb7be4fc44198cb2685d9601dcf2b9f569","sha256":"86be9a55762d316a3026c2836d044f5fc76e34da10e1b45feee5f18be7edb177","sha512":"dddb9ec4c4ac04a2559d9b711eaa8e35475db3c4d6a7a06dde785dc83f3ed121710cb512733c8095ff346fc8601e7a73ecb53fac752010116e692b1ce73c8e59","ssdeep":"","tlshash":"c700000000000000c00000300000000000000000000000000000000c00000000000000","size":1,"data":"","first_seen":"2023-03-07T01:02:19Z","last_seen":"2026-07-27T07:04:11.918511Z","times_seen":86180,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/code.jquery.com/jquery-migrate-1.2.1.min.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"eb05d8d73b5b13d8d84308a4751ece96","sha1":"743052320809514fb788fe1d3df37fc87ce90452","sha256":"1e67d8dbcca1f6fd94e077c85c2fb40fa1c2756c99238daa8da882144260a68d","sha512":"7b68a43a22a41404a2ff58e0da6a237492cad0fc3e56d216980802b4d5fb483895262a7e049340d6670002bdf899ba88c319239e60d0aae1ac31d98556b0ad6e","ssdeep":"96:tBySz91Gwyk35YrfBewIt9jKLKDs2SFNK7wIDBRANyCfVJ45NI:zySzvGw/35YbMx9jKLKD3UIDBR8VVUq","tlshash":"3fe196dc72aab5611ffa30a8503bd21b72b25aec140d95a4f08ccde5392cc5d413ab7e","size":7199,"data":"","first_seen":"2023-03-07T01:02:56Z","last_seen":"2026-07-27T06:23:25.87903Z","times_seen":24755,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/30288.59207aa2607ea1597287.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"ea1d9d8d3342c88f33ec3b530e0573ef","sha1":"d655950fc76c40243ee9494c5fcc45e069dbaad3","sha256":"5c4b42f42930e52d140aec5e82b967b86ea0bc4581cfea3ecd33ca21c156520f","sha512":"4a85bff8bc70939b4386535712fa0ce2eae8d2f970a7e4c0f966b40eef502520b53f0bcc55b8062e0d4154ec40c589d4be511f57f11176afdb68166e3b090436","ssdeep":"1536:M/5WmDah7ltfnbgA/bllhJ9AwCh85Q9BO9X/tH78kJM:MZilpvbAR9By/5M","tlshash":"6e330ac572d6f0ab03d605e584bb5042f33d49a9b80d84a1f658e9d13c66c9e63b3fac","size":50816,"data":"","first_seen":"2026-07-23T22:46:45.786098Z","last_seen":"2026-07-27T07:14:43.747539Z","times_seen":158,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"37051dbe85a36239dda2c2d0af9b328a","sha1":"7d1741c1823eedcb9f90cf15bcec255ce4270c98","sha256":"ad7fece7cc20e7af63da127ccd71979b14b7d02c60526deb52e1e985c4f92c76","sha512":"d6443268e97958dbba496787bfab4ae71709996624ece68f1f89b66a6ee7273997f95e2cbc5c78df367005531d51eb9cc1a9296bced3259271c76314f4e3b962","ssdeep":"","tlshash":"bfa0223c3c383002320a2c20088b82cae0202330f0880802c020cc8220fb20c830ae3b","size":71,"data":"","first_seen":"2026-07-25T07:02:54.078023Z","last_seen":"2026-07-27T07:00:44.984094Z","times_seen":506,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"59ce6228ddf62be7f8aefab2518b85de","sha1":"900ad9ac49e0c31c073d6f6d90b1f4a96cc6fd70","sha256":"8ff18c08cbe337e7e73e5fa2906915a48539b24a7fad20153b95bce97834aaac","sha512":"dc9152b4e22f588df140c33a6635b551d942579445ef185f0fa62fd31dd807fdc9bd23ce42e0a3ff8872a4ca6e9e2942f9f76a727cbb74ea049a513e9a8a309b","ssdeep":"","tlshash":"f1c080447556b1ffd6426482c05f151562550705d9549a06d3a054e02e349899091f2d","size":166,"data":"","first_seen":"2026-07-25T07:02:54.079559Z","last_seen":"2026-07-27T07:00:45.004871Z","times_seen":514,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"85667210a9ca3aaa44be54eb3274f280","sha1":"f69565032aaeb8d28ca4ca0daea8784dc01baf70","sha256":"0ba3ef12c7fadaef9ac42ea9cd42db694e3a5d2f64c6d21c2690ec7649bdad85","sha512":"e04c814490d64e8424e9cd097247cc4ce5ef616c21619b8b6f35b81cc47ac3f4504d94e7ec0a8bc45c8d5fd0deea6427a7c1c5d34c0841b6ec1d9e0b785c0570","ssdeep":"","tlshash":"23a0120074447c0116112c75c2260544b0511a0b50902401810996c002705890113ce7","size":79,"data":"","first_seen":"2026-07-25T07:02:54.208693Z","last_seen":"2026-07-27T07:00:44.969132Z","times_seen":509,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/noti/fake.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"6bda9dc367efb649fd72a2da6fe8d256","sha1":"0d2c5e7211e4d5933ab2fb2599b9114cb9e5a86e","sha256":"569bac53f3de95b50f302baaf9a56c762967f755846a3c54ea6d7097af7d7ddc","sha512":"db30efaa1e68f93fc972f6818a34c23193be8e6625d2ce8d0025b70576010cb4e228b1fb2122feff918328e91a4c31ef64b2e69f8b6b3141913be3e9beb9d78d","ssdeep":"","tlshash":"906130df3251642e83e7d03ed9dff4c44632151eca460629191ad06a9ae437c638fcd8","size":3232,"data":"","first_seen":"2025-10-04T21:35:53.199263Z","last_seen":"2026-07-27T06:59:18.35389Z","times_seen":17,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"83a77a8fa8101ab38a74167392abf2af","sha1":"ecad96d097ab2adb9729e0b0c5f8063e6445e4c7","sha256":"7e8c17ebc1c4489f3752972cf347c83e9eaf85dea4b84c375746377e5216d9d3","sha512":"f2250fb803e1cab98bdeabfe1cf415d3c7a2f3daf7d4d2e650196e709a5aff915427825b1f5e403dcefd704b290b091b69cb1fb437f6e5f69c7a1023a23f0c5a","ssdeep":"","tlshash":"c71000000000000c00000000000000000000000000000000000000000000000c000000","size":2,"data":"","first_seen":"2023-03-26T05:54:38Z","last_seen":"2026-07-27T07:00:44.949685Z","times_seen":7712,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"cbce5f030ab9bcb5d5a13f3094ed0c14","sha1":"a8dabb19b3be950bce6159811f80596a5bd78b54","sha256":"22d532f2907a94e1755ff7183e34abaed0e92f01415b2c98b71e860af2af3020","sha512":"d8d914e21a56a18b2bf24d25cf9df74cd94c4a9fdbad963cfd1eb90080d01d6cdafd27712026ecf692d43cfc977a8abf44d969e2d299d204b4da9263b9dc7036","ssdeep":"","tlshash":"e07000283c08e800022238a000bb02280222000022808a00808080a00c3200a800282e","size":22,"data":"","first_seen":"2026-07-25T07:02:54.179802Z","last_seen":"2026-07-27T07:00:44.952697Z","times_seen":502,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:42.991696Z","times_seen":173993,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.078275Z","times_seen":167138,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"4f15bb2d5bb35eef8ed5691a49a89add","sha1":"93dc792cd6f66b017de508d1653d257572b336ef","sha256":"92e207c292ff65d3a04f6cb843c69816f6a1520ba0907168e313bfe2f983c80d","sha512":"cab6a3bfc63b8a7d457b211a2f223bb58cfc2385f4a6a33d7f48812b4747bf0a0d7abfe7979388ed3e467ea5c6d65c688f7ab189a7f3ce0abd21958f9c6f8b5d","ssdeep":"","tlshash":"e6d02ecbb1c0378ab8a66cf4f2b34a0438a322243b8080ec803a36581fe05c8d903d25","size":282,"data":"","first_seen":"2026-07-25T07:02:54.086465Z","last_seen":"2026-07-27T07:00:44.987202Z","times_seen":502,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"c3787754c9ab0b54c83fc20e994fd71e","sha1":"79836961d0829dd4343389004c5f3bd806adeb6b","sha256":"725f4326baec82abc6db3f2144c45f09d47264f86f9fbc21a9825a9e73a7368a","sha512":"8d62d1275f3fe42a18d23ee3f8dfc60eca479b3eef7c05ad6181f2aa36b8c5ba1e937408474d57a33a742058c55f7c3f805a0b48f1f3162596be217a76e9d538","ssdeep":"","tlshash":"a8b01224242de61233322ef180131d2c603a4406425f590ec04de5c0033c0cb40475ef","size":97,"data":"","first_seen":"2026-07-25T07:02:54.156202Z","last_seen":"2026-07-27T07:00:44.993549Z","times_seen":500,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"115b3cd49c739440787a505ab2ee1fa0","sha1":"3f1da71d9f392fd05f503b9c37140524df25c91b","sha256":"b36d3c52f42742303976f7fa86f396d248d2fe7b0f3b3e18c092577e621a0e0c","sha512":"78e25ce66f42fd5b77614cbad4c7ffc671997f0f317882289e9da969621935ea0110b6910e2b693a99736a7403f1e43f54c02d76485d8fd7fe72bda1265d4a6c","ssdeep":"","tlshash":"c710000000000000000000000000000000000000000000c00000000300000000000000","size":2,"data":"","first_seen":"2023-03-10T22:24:54Z","last_seen":"2026-07-27T07:00:44.977418Z","times_seen":1876,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/js/sweetalert.min.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"f3b8ce97ff6ce324da6232da353adf40","sha1":"2a3daabc70232c6350ab48d32605dc4a6ac1f1fa","sha256":"2ac46ebee46d515be86deeba385b4e41f8cff160364b362c9a6e153df327c66b","sha512":"000d41ce9e50d0ad4a6a728a9af37fe1ddc844a565bfd3d883014fbe6df69cf3ba412f321f51ceecb6e0075a6088ec4fb5f7a0e73127d9b6bae0c51ca89c7a08","ssdeep":"384:/BLa4qL1li0jldLUuuRzdNU/CfFqLyX9ye1hAbj/i5Yy/kyyeu8pgUqaF2XSSHEj:ZLahUvdNU/CNqWX9ye1hWz8+B3c2Bkj","tlshash":"96031a96758470a643e398f191ef020ef2359523b84798d5b361e8e88ff4e8d50a7f1b","size":40808,"data":"","first_seen":"2023-03-07T01:03:31Z","last_seen":"2026-07-27T07:04:49.464391Z","times_seen":11583,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"673a875cd33f946c7fb234078db0d89f","sha1":"f1cecf9e970522a619b72e66a124dbf89737b06f","sha256":"e4d6fedd18866f7aa5469a8b90a348fec071f4b82598152a7aac6419edc3ac3b","sha512":"da7502389b64be9c9f1ce98b8976e58b6f1e897b5afd9af08fba27f6d70d01021e08f621eec1d589e2ffe0bd67e8610fd8936fb35623d28eb443631414c11e87","ssdeep":"","tlshash":"c71000c000000003000000000000000000000000000000000000000000000000300000","size":2,"data":"","first_seen":"2023-03-08T06:14:19Z","last_seen":"2026-07-27T07:00:44.975594Z","times_seen":2378,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"553043d48d6dd80a787af64045a49e96","sha1":"e63956e5e0aa636885b9ed763d13ab9fdd1ecc29","sha256":"1984338e5b6994ef452ccc065e0cbad0892b40e3ae8938d3bde4f6a76e660975","sha512":"6754bfc75e8a2d15fb5e7f309524e2b22812ff1d97cd7b18508495ab00c590eb64ced78dd0bff9aae3a5902fc2fd215cd73b76864004a441d2239777a547c631","ssdeep":"","tlshash":"8ad02bfb5811c06ffc23059213335dc910d2f20cd5993f9ab5b2b1a4392000c70d54c7","size":281,"data":"","first_seen":"2026-07-25T07:02:54.176272Z","last_seen":"2026-07-27T07:00:45.001355Z","times_seen":508,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"1750e9b76f54961545a1edf5b6bd9a5f","sha1":"9bdfc833f7e055821fae1f547e0abec9ee9b9718","sha256":"358ccf6ccf547b6106792de57295c558115f2ba6f5764c19a638c992bf90aeb4","sha512":"62c097d4b1fa74b247955132f63bb4b06f2ff9fb5074d68382f0f7d3233f82bf1a62b3153497ea23bb745f3c9ecb3c50602bc9484759a6b8b74939944750dcae","ssdeep":"","tlshash":"0fe07db0258123422174df79f0f3120430e172c67e48ac8f51256b429e388d1142353b","size":316,"data":"","first_seen":"2026-07-25T07:02:54.202304Z","last_seen":"2026-07-27T07:00:45.028847Z","times_seen":500,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/80207.3e5e7d68c875b367cad0.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"efb45a2a5e9dedce76162279dc170b0e","sha1":"38843307f1bc14de893dfe253b89aa9ec4532bfa","sha256":"c4adc1700ca5f8538ca44843bf76da33e0bc360cdf11ff0ddafbd8856c5bad4d","sha512":"3ef5908b8c8ed8de392171a9c51bbea83f11fdb7542f8fb58439589ee43db4b6785bdb1a3e71993950d28351eb79c5548d8567cfb5f4a5991ab3488d323d675e","ssdeep":"1536:guE5AIu9J3vqcJNT6FuEckfLVnddIwc99EkRIWEEPk2SYHj28kxu:DGxu95vqcHT6gT8VnddPgTRCEgYDDkxu","tlshash":"7f33a56091880f44656183d0bcff24602d9c3d5b4ab665bcde9f0d5b4e99ac83e3bd3a","size":54012,"data":"","first_seen":"2026-06-24T00:20:51.960912Z","last_seen":"2026-07-27T07:14:43.780454Z","times_seen":261,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"771f01104d905386a134a676167edccc","sha1":"51af17721bd7b84218774f9064fe481c033d0b1c","sha256":"46874106f9ac7f3b68a422895aa223e1ea5ed0db860f179f6362cb166c65f8ca","sha512":"0c85b6b14d917b941d01903af93ca93b97b7112355ba3f19f0ac2e243427be9905abb48f24a6dd6c6a72c140bbbc7ed7d231609425b0f132375b0f990ccef8cf","ssdeep":"","tlshash":"c7100000000000000000000000000000000000000000000000030000c00000000c0000","size":2,"data":"","first_seen":"2023-03-07T01:20:09Z","last_seen":"2026-07-27T07:00:44.994262Z","times_seen":1807,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"c97f06046b55e8dae6a537ed7ae34fef","sha1":"84149880d516a37ca62c27e982f46d830b79caa8","sha256":"131b8b1c3193add0da6e1bc7b54e66e599b02037f372eb68ae1086fe443811f4","sha512":"8cd93216b1b29a3b9551a054b4c950e750d68749d9f6a2c8d7ddec13ec6894949d80c67cd339cd50916de026e15fc81727f9725ae127a9d6604b5989a711fa8f","ssdeep":"","tlshash":"6ef0dc0d48fd83769ac44dc290d33c0ccb0806071cc2610f7a49fb7032632b78497e64","size":485,"data":"","first_seen":"2026-07-25T07:02:54.134293Z","last_seen":"2026-07-27T07:00:44.955206Z","times_seen":501,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"7121a3428492966c83430108c81b0128","sha1":"faa54a8131b597a6b972810794c8ac848b67b351","sha256":"6ece104aeb4ca53d9261705afb936cd0bebf554bd318f77613325b124a234c24","sha512":"8f54791b217786c95592d4411cc15e5cfdc7432d5db0617f60ce69a260cee1e7fd968b441bc4a2e40cdd6af24c25051881dc4b934bb3458a152b4503d52e13a1","ssdeep":"","tlshash":"c710000000000000000000000000000000000003000000000000000000000000300300","size":2,"data":"","first_seen":"2023-03-07T23:42:40Z","last_seen":"2026-07-27T07:00:45.015529Z","times_seen":2610,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"f09564c9ca56850d4cd6b3319e541aee","sha1":"c3156e00d3c2588c639e0d3cf6821258b05761c7","sha256":"4ae81572f06e1b88fd5ced7a1a000945432e83e1551e6f721ee9c00b8cc33260","sha512":"2ddcd5fd66f62c38135603defc728493bc9012c9ea6abc8a9823165792136513b2c53722d2a79c0d6ea31467308bbb49eb217d151d79baf4b2085f487d0abfae","ssdeep":"","tlshash":"c700000000000300c00000300000000000000000000000000000000000000000000000","size":1,"data":"","first_seen":"2023-03-07T01:15:12Z","last_seen":"2026-07-27T07:00:44.983466Z","times_seen":57693,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"c11d89c2ca93836ea343a05338bd670f","sha1":"62a6ad7f8271078933dcd08d5424e2393bb5da8b","sha256":"5b399a3e0eebfecdf232a414d8d0557d3eaed3041a5641a639e715c63586aaad","sha512":"f7855d7cc1bb2478457e1a465962dd6c7a86607759e9e70be7c3ae6c1eb28484222e8e51d876d28696dc1882c733ff396797d143eb074648d45c6274a8eed8c9","ssdeep":"","tlshash":"9a8004041c04d00c01511d5530df10cc045310d731100554141441c55c773451101d3c","size":34,"data":"","first_seen":"2026-07-25T07:02:54.181325Z","last_seen":"2026-07-27T07:00:44.958516Z","times_seen":490,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"widget-v3.smartsuppcdn.com/assets/main-t6WxLABA.js","fqdn":"widget-v3.smartsuppcdn.com","domain":"smartsuppcdn.com","tld":"com"},"ip":{"addr":"185.76.9.11","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"introduction_type":"scriptElement","is_inline":false,"md5":"9253d4d9d6ea32e484f0be9a0320a7a7","sha1":"762fb8fdf15626507c1c26a66aa7fe399d39e803","sha256":"1fb0b8e426f707feea50785bc24016fe14a76fb763d5eca3bc9b1d265bf77fa2","sha512":"5a1592fc87a402c636315def22f3c60dd7eeda34701b08005a192ae060acbe7ed8ae8aa709cc1664c3d9489c641e1ada60e79c66f13073ab61e6ba5bd86f524d","ssdeep":"384:9rgi5RFMkSjJOE/0BW2rkZZ795P6zrnBOVmPCRkXQbpaIF2K:9EizlSjJOEiWYoR5P6nnBOVmycQbpaId","tlshash":"0272d7742700783f711f489e16ade546b232c29dd693892d9b6fec0976c5cc0a8b37b9","size":16281,"data":"","first_seen":"2026-07-07T11:50:17.711459Z","last_seen":"2026-07-27T07:05:43.365554Z","times_seen":1812,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/demo/chart.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"91110a5c4a823116627728c5abd44b94","sha1":"378889c73e7f8d554e93c2a69118a031e30ebdae","sha256":"8f0322f4b50bf6d6d4ae65f3c79710d036e3f66be2be642d3632680f4445d49a","sha512":"ebc5684a74b2b6adfd0758bdc6968171104df92d5d0f76bf56a11ad421065363e57800c7c96eb2dcbadcadbd49d5b3bba489dea20b99e2cd78227494097760be","ssdeep":"768:cTk2JbAIF4lK5e+nZLbS0FBRv1g8sOvPrzy9vwnchaqcxB0Qcu6E0N0C0h:DldUZ","tlshash":"db03eb4a976d1a36d4723329af0b1748fb62553b0a07eaad397ca3d01f7052601bdfb4","size":38322,"data":"","first_seen":"2026-07-27T03:36:45.027484Z","last_seen":"2026-07-27T04:25:12.789657Z","times_seen":2,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/87926.8ab9cfede16295107017.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"5f5b2f579bfcf6854f67787677d11c94","sha1":"6de49cc606825ccf66acbceb2ba4d23d91f0ec4c","sha256":"38c41c9069ed7604e737e462760f16363aad09961b1091c66dfab594df263108","sha512":"3a309c43d694230393cf3d65bb8e48af52ff337f61f287f020e266764e5df3ad2531cd999bc8dbf42e74c27546fd871a68515a183ef1c35d24e0c0cb77549a6c","ssdeep":"384:KossZPZ8HYrU0jAWia49Aa4/WHA1E9y3ywtUPIsxmvxqlOwSCoBPy7:KossZPZEYrU0AWPXa4/WHH9WywtUgsSi","tlshash":"9752c9ea72c1357251da45a7613e7202a3394588f4898178b52cecdf172edcd73b2abc","size":13639,"data":"","first_seen":"2026-07-23T13:38:20.421953Z","last_seen":"2026-07-27T07:05:45.359656Z","times_seen":767,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.488629Z","times_seen":3247,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.489568Z","times_seen":1808,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"79683414ddadd9ceb9595bf3297f1d6b","sha1":"6cf1e56842061a0fc01b82d8c766041c86c6aa18","sha256":"8a92afadafaa628064c86d12df75e52fdf64071c11c2a1d9bf2bd217213ca0de","sha512":"24f6a0868598635d73572113901b43b8eb1423627d220dd09e7d5382ead3c9e47c11d55fe9b34606182092db4f3293f96910f48c362a4215f482b0d809686ae3","ssdeep":"384:UipOwuVkogCEowCWLg/JcVlRcHtmjpfbrtka4Q30:ZNogFbLrX30","tlshash":"29822067c80da32ac456de26bc7bb602fc2e075945b529646aecc86c04c7d53e30bb7d","size":18673,"data":"","first_seen":"2026-07-25T05:38:59.79928Z","last_seen":"2026-07-27T07:05:43.422979Z","times_seen":118,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.491167Z","times_seen":3378,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":true,"md5":"f103cd93b96905ea7d90bf627d9ef69d","sha1":"e37e19173263d551d84957d033ef7a1a30e180ed","sha256":"30455182bf8db66b87f96444e3b4356eae13954eb33b29a9636817b091c7d25d","sha512":"8610576226b73656614eb67bb72368cab9d6d3834045eee7eeef1f25cea0d1c245c08cc7e15ef0d13a7a854d676e1ed45115d0c7fab0d4631d1b43caeeeef526","ssdeep":"","tlshash":"0711880a0135042a7ae04164b6362ef5363d3add4e43d6fc9b857c0872b3a728d50bfd","size":1016,"data":"","first_seen":"2026-05-25T20:24:44.28983Z","last_seen":"2026-07-27T07:14:43.86113Z","times_seen":405,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.494266Z","times_seen":1684,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.495073Z","times_seen":3380,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"6b74d263b2f181bb8c759bdb049f2cca","sha1":"f4ee289de7015e0faac2be30edb6240a6d7c6139","sha256":"e5a9bf69c1f1f7fa5574037a92b8b3dfc6ba7b0479d1d9e7347d39a0bdc41753","sha512":"10bbf90be8836779b50b0da8ce0f1773f474e604cc0d10101267cf42c41ab78d27a2609f824a3493b235650ac7bff8777cc297feb6a000dd7b6aacaaab88597c","ssdeep":"","tlshash":"527000083c08a200022238a2e0ab00280022000022808a0080c000a00c3200ab00a80a","size":22,"data":"","first_seen":"2026-07-25T07:02:54.203661Z","last_seen":"2026-07-27T07:00:45.018417Z","times_seen":506,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"22fb59e0e0cdacc10fb7f1ad105606ed","sha1":"c6b3878cffd44663b546b12c26af899b037a4a53","sha256":"34469a749ff4f676f6d6a4d95bd641b9f9078810647dd3f14ac9e2aca1045513","sha512":"c39750c2a29c1873c338aba8a3bbd078bec533900b4ed5e1e46a17a8daf2b90c1999a8ea60da594bc411f49f60bb33f525f29d47990d0d6575b9231ba0ccf370","ssdeep":"","tlshash":"65d097c46bbb982c4984ce2b403311319049a21c8e080c50b230fb3bf7a075b243b0c1","size":229,"data":"","first_seen":"2026-07-25T07:02:54.072496Z","last_seen":"2026-07-27T07:00:44.969716Z","times_seen":507,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"afb0fced528eaac5fe170b763cda5975","sha1":"8f0d85954d44c90a2fc59b8cc9297ea972774185","sha256":"9206ef16552ccd926e4421fe6ef369cbc40add64488b7e3d88350e3588a35c34","sha512":"67f6f6d5f810fc0fe5fe606415d86bc4efb11ca6df92a8d6b6d8280d1e4d731ea24b038f7525a6ac5084fac9f78f13d835e0679a1d0e3cba751465bafbcf4211","ssdeep":"","tlshash":"c71000000000000000000000c000000000000000000000000000000000300000000000","size":2,"data":"","first_seen":"2023-03-10T12:52:28Z","last_seen":"2026-07-27T07:00:44.994979Z","times_seen":597,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"952ddc5ca686660c54f7b74840982b4b","sha1":"fe05b5837e28143d2981f9a67a56e565a7982be7","sha256":"9baacdd193c5a18c5a01ecf248bf7a316f7927c345ee3ec94fdce802d458718e","sha512":"a652cf3cc48705bc2b0fcbb449a0a61fcf31f30ad0feab7697a10c6c0e6485353c815048a9570763d74cddcb857fe49973ced6de10bc5f8239c7671fbe1881e0","ssdeep":"","tlshash":"d5c02b08746220f04e43ce395fbfc804a05c62511720128c216274c80c80a94607308d","size":139,"data":"","first_seen":"2026-07-25T07:02:54.186501Z","last_seen":"2026-07-27T07:00:44.972651Z","times_seen":503,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"f9f2d672039ed5d04839b769ad71e1b0","sha1":"9a86054ee3627014bb2f372f939ff22772a90aa5","sha256":"ef099fcece6eeca3777d0d4a6ac606beb557e08dcd95cf93d0d42a0334329c10","sha512":"52923fb4476412cf751131a95f749956c1a4c83641935695522af4434c3c42047820db169481885cb549e9a6a8c5ffbbc6ac49ad08f246612debd54bd3ee68e8","ssdeep":"","tlshash":"c71000000000000000000000000000c0000c0000000000000000000000000000000000","size":2,"data":"","first_seen":"2023-03-08T15:11:30Z","last_seen":"2026-07-27T07:00:45.011529Z","times_seen":2711,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"accb66f0ecd826aac89065990e1da97f","sha1":"3c5339881a1720deed325383e8c3839b7748d254","sha256":"ca68fe3f50735b174e950c34f54dc1f4469d57f94c55f259174e8ee730ea86c4","sha512":"52408933e4d4f3fc5069da409f56adaa898366c9c2b71abc013277b38aba5e7dcac15868ffef3495cc1a64af8cbe1bdd7dcf79691ec2b15ac2eb8a3fa76f3370","ssdeep":"","tlshash":"c710000000000000000000000000000000000000000300000000000000000000300000","size":2,"data":"","first_seen":"2023-03-10T23:00:59Z","last_seen":"2026-07-27T07:00:44.997624Z","times_seen":2844,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"7fc56270e7a70fa81a5935b72eacbe29","sha1":"6dcd4ce23d88e2ee9568ba546c007c63d9131c1b","sha256":"559aead08264d5795d3909718cdd05abd49572e84fe55590eef31a88a08fdffd","sha512":"21b4f4bd9e64ed355c3eb676a28ebedaf6d8f17bdc365995b319097153044080516bd083bfcce66121a3072646994c8430cc382b8dc543e84880183bf856cff5","ssdeep":"","tlshash":"c700000030000c00c0000030000000000000c000000000000000000000000000000000","size":1,"data":"","first_seen":"2023-03-07T01:15:06Z","last_seen":"2026-07-27T07:00:44.98961Z","times_seen":74523,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"9818af84da6f96579e99ed315f69e0c5","sha1":"7ecf16ebb75bea5bc8309fbecd3e3df799ab4371","sha256":"dfa3bde638cb08d781f46d978f471fe535a642cb24d408bcc486a67c819cc4e4","sha512":"1a5cf2ca1f7c50defc0af583f15e3d2b0e392e8886d39ce5b6d213ee8e01ee3c1131a901b393f05cb8c9ea412fc2598cdbf33dd895e2d284fb9c7dc6ca080aa1","ssdeep":"","tlshash":"c71000000000000000000c000000000000000000000000000000000000000000000000","size":2,"data":"","first_seen":"2023-03-26T11:55:44Z","last_seen":"2026-07-27T07:00:45.004266Z","times_seen":2162,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"ac6dfa045179132aefaf73bbae961f84","sha1":"5b4a09943ab49ca1438497710be50b54077e9374","sha256":"18437a515c82285b4cbdaf60b46bdcd426eb4514c03ebef4e2e4a3caa0f75497","sha512":"df27138801c468c597084ae71e58544c6d3b95e9d57d3bb003339aa035e1e04eb7b85932f01573eba17613500cd7bf65d9de52570fd0dcd3f409dc5286d5f155","ssdeep":"","tlshash":"a6b012185c0835193f336ce99117681ed0b0dd06c4b4b90d8004d5d402a404e5051cbf","size":94,"data":"","first_seen":"2026-07-25T07:02:54.141577Z","last_seen":"2026-07-27T07:00:45.030723Z","times_seen":503,"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":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.415905Z","times_seen":3613,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"41cffca8e35a84d3f88f9a25719e1bcd","sha1":"7dc2fe5ff12a7a0748d95c710eaf05536eaf88e7","sha256":"c950106fab05530dced5c2d95d8c8b0082afb6c2434895b968e7e8a208b8f3f0","sha512":"1d6080e041f9cd50074d23dfb1b15d5197813d1c0668dd6a2cea31f264f590029644e6912d6e1beef5931bb634ad4fbac05e1c5dc3d2f9eed4b217a58dd989cf","ssdeep":"","tlshash":"74e026c771603759d0585eb4e27317053c62a081ab4889e9b236f60aabe49ad35e3806","size":338,"data":"","first_seen":"2026-07-25T07:02:54.168496Z","last_seen":"2026-07-27T07:00:44.973784Z","times_seen":508,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.007729Z","times_seen":82460,"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.153.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-27T07:05:43.06302Z","times_seen":1446,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/76577.f73a01e1f00043622b65.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"6a57b1deb31991bb129476b06e9cad11","sha1":"d00dffa870d90063d146679279b23729d7cc0bb2","sha256":"4ba69451c43dc3871ed3f2b689d739650d0189c1095c65a1e4c3050c3ca9a662","sha512":"73f9b1560727a29f3cfe717e938a390645a6bb2cae109ebddc8e909a042a048adc3d51bccd2be01a77a3839b742c0edf3283489d06d79bb43e3d75bc2974df1e","ssdeep":"768:VXEgvhG7/2KArEGBxc1lmprTmMAo58FRGdfycQKRAppcS+oLAMzpOXYq9EqLN6e:V5G7/0r9HqlmprTmMAw8FRGdfycNAgVf","tlshash":"7873f8cdb281b46546e7a1b0803f550bf23a6998700d8488f235e8e97c7ca5ea177f7d","size":76578,"data":"","first_seen":"2026-07-25T03:24:57.112206Z","last_seen":"2026-07-27T07:14:43.749745Z","times_seen":132,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/embed_screener_v1_widget.3c6dcb48241b38ad20cd.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"b07d7762afc64303abb48d31f9b49b37","sha1":"1c890e25377b837bc68ec086492e285e65d16c18","sha256":"1eb5c13d7babdf9d1b73d7ad5a55022781e5d3f382adc1ee187565d64a40827f","sha512":"a8f88cc675c375635ddd8bede571efff87e5328f1d0d90c979d7b07ebc0ae4eb81802b64a9d6eff50ce17142110fbbb224ff8fc3c4c22a1338431110a908c8b5","ssdeep":"12288:N5WOCvvhWwgPkUciIrBbM37JDMclwUYGZTw7yhLrLl1wrFh:N5WOitgPkDiIrBbM37JDMclwUYGZTw7N","tlshash":"8dd43a71a1a5293011f6c2dad8b66406623d2647f80604adfe7d8cdf168ee45f13bf3a","size":602700,"data":"","first_seen":"2026-07-25T03:24:57.336653Z","last_seen":"2026-07-27T07:14:43.818488Z","times_seen":131,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.google.com/js/th/b8qXrFAu9PHVrGqMZi2nqKm9TUNPrrzEh40PAl-6oVo.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":"443622910d8e7fe75010d4a41f533e07","sha1":"9774250436c6d11ce6978a2f57e620b1b86098c1","sha256":"6fca97ac502ef4f1d5ac6a8c662da7a8a9bd4d434faebcc4878d0f025fbaa15a","sha512":"8ce4ae6fb3b48726d2ac7dd7f8bcfb87df79adfc89c666d8278594d86648345411b78b003967291c4125ebbf78a2af3c7dd7dfdb100899ecea73c8ad8bd8b7a5","ssdeep":"1536:jN7w3cPBzlUowT2cm9iXFHDYzcmNkBfXoLz:RtyokXFHDSH","tlshash":"ce532acf72d2b73559e269e6105f410a62fe940a4c85186fba10f6f42a70d4b903bf7e","size":62519,"data":"","first_seen":"2026-07-25T07:02:54.064057Z","last_seen":"2026-07-27T07:00:44.845626Z","times_seen":542,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"cadb00a60a3fda71b0a59c1eaa577422","sha1":"81bbc75ee8276e534256b7a30dff2b86c5e0c893","sha256":"834021cef72202c07f1e4b770a7cbf84adf11afa2f1527353f4b35cfe558e977","sha512":"437459289997803a93a4e734fc87ee0896b6fc58ad8971d9898488ca77f0305953f17bebe1ee4f0dd90c0987266edfd1241bff7d32c08f3bb103129b1b1bcfbf","ssdeep":"","tlshash":"08a0228c2880afcc00be3a28222fb00030a03032028c083c03328000af3008c30c03fe","size":65,"data":"","first_seen":"2026-07-25T07:02:54.119796Z","last_seen":"2026-07-27T07:00:44.974926Z","times_seen":500,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.07241Z","times_seen":77659,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/kit.fontawesome.com/e44d5a293a.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"a8e6a3dde655976cfaa1ae45d67d78de","sha1":"59d0646c28ea61558c1266ba00002a84b20868d9","sha256":"717360f1759b6925a3e40ea293d825b50fc17e8bf7e849de44d70769664bf696","sha512":"1fc3d0b6a933ba2cd69740153152bfdced30d5e34eee434580ced337c784417ae85d89942a84cea15be5e5780caec0d35b281bc08b3dd72d4018ae98030f9f40","ssdeep":"96:fc8ry8qLx58VFng4FebYuiTeDILE/Dif7Tq7ceP+tDVEpFH:fc8ry0ngIxuoE/OTTqn409","tlshash":"73c1b8eb7102367e599ba755c13b3398763196226403d460a52dccac983efd40637fbb","size":5782,"data":"","first_seen":"2023-03-07T01:20:20Z","last_seen":"2026-07-27T04:25:12.743443Z","times_seen":82,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/demo/jquery.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"46836bbc603c9565b5cc061100ccbac8","sha1":"38e82b4f24bf9f7e678a1d69a4e635363ce711ab","sha256":"d7a71d3dd740e95755227ba6446a3a21b8af6c4444f29ec2411dc7cd306e10b0","sha512":"5816dd29029e21015aaead61acec4d2ff827a744ea876e5f9f4cf75f5a68f9e8fc8ae1e11dda7a4a1f65fad8211b0e4bd5bb2fb738deb922ac2fcd115b75dd63","ssdeep":"6144:otah6/m+TCtrlTzcvkv2YmDezK8gB7arFy0GPL/g+71FIPfDTAAI1+V1:xVv2YmDQysFyCAsPfnAAIkV1","tlshash":"6144b5d8f78d112e423231aaac2f12cdb77dd171560458aebd4d597c24a083d82faf7a","size":267194,"data":"","first_seen":"2023-03-07T12:07:50Z","last_seen":"2026-07-27T04:25:12.783406Z","times_seen":387,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"64e1e1cbe1ca8e88ef3a838a3e7b57d6","sha1":"5498d9b96ed2832e04a90c4ac2ab71f869b2bfdc","sha256":"0510eddd781102030eb8860671503a28e6a37f5346de429bdd47c0a37c77cc7d","sha512":"44ee2764491048592021ece402fc174f9f4d95cf25dd7227e1029cfdfbc6f574f811fac940495ee0db71db3714c70d7ee27c142876e4a191a0fda92a2e93073d","ssdeep":"","tlshash":"c710000000000000000000000000000000000000000000000000000000300000000c00","size":2,"data":"","first_seen":"2023-03-10T03:04:09Z","last_seen":"2026-07-27T07:00:44.970327Z","times_seen":1286,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3.tradingview.com/external-embedding/embed-widget-ticker-tape.js","fqdn":"s3.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"introduction_type":"scriptElement","is_inline":false,"md5":"2671d4a92091986b7abd2e1e685669ca","sha1":"b59db96af3dd1593356058703fc7af3cd7269919","sha256":"986cfef49d6a6ccd5cb1f1cbf562e8341ed581936885830831a2f4c3dc2b5901","sha512":"c07159fc500c72469ba6dfb7ccf5afdbaf476906fb039e5bfc7ab2c95e79b0067a47e6e02ad44915b9ba426273dc39996ffb1899c029253b56e4b02f7d419883","ssdeep":"384:gf6uCWoofYkFdjhUjrb26n0q6Or26ZMViZMEmkfknYH:uD5Unb26nD6Or26ZkFE9fknE","tlshash":"8e52d8a9b660ecbd51d945dbe07a2321b6193944b203aca4b9ecd4c510fdccca131f7e","size":13608,"data":"","first_seen":"2026-07-20T13:42:57.5385Z","last_seen":"2026-07-27T07:05:45.416589Z","times_seen":1089,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"56456db9d72a4b380ed3cb63095e6022","sha1":"6dbce88aee15b42f29083df7a07513cf3b486ba0","sha256":"66f3a07e1fa9b64a686b66381e4458dbc8abf3dbbff954720c4eec07b84411c2","sha512":"e56bd96b837b26add354d0a9e2b8dc04c95cea94f7959ee05718ed23a224296fae22d49afab160b45963bd99c2c501a3f12517e431eb68a13a327ff8b262b50a","ssdeep":"384:kmQkLrwVOyzirVyKnxRsIB9Db5HjiWn8xHOxvRVgD75zBY5vImg3FzGpL9ARdOgS:vLsgyziJp3Db5OxHOxvYD73Y5vQzyL9p","tlshash":"1992b4cc3294b06643a791a7a0af960fb2339875610e9410f19df2d97c30ef9a13bc79","size":21004,"data":"","first_seen":"2023-03-07T01:06:27Z","last_seen":"2026-07-27T06:59:18.326572Z","times_seen":19750,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/js/counter.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"10a591844653b3c507ac061491e9da73","sha1":"0813a0e1cd897be6e70e2b01ebdb2a0141e45706","sha256":"f9c65b907c5fbb6268d3037d655dbcc568e88ae430cfa98bc3576a9c92d777b0","sha512":"185f5a7833d640a3460d0caa4fa9c18bd575f3f4d1674701c206c3b2a7a536b4ad50f9649c46f4686f0538f8f0e8e9cf3855b53734ea02e8e5e2207df96be69d","ssdeep":"","tlshash":"d701969c8a570090ac36e7a97b6b5624eae367131009d44fb6dcb2401ff3a2cc099fdd","size":661,"data":"","first_seen":"2023-03-09T10:05:20Z","last_seen":"2026-07-27T04:25:12.772044Z","times_seen":185,"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/br=1/rs=AGKMywEu2TQUzdSF0AcsFBMUrFqyurKluw/m=root,base","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:42.930195Z","times_seen":986,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:04:13.288566Z","times_seen":278704,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/70644.448743def325feb61967.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"8cde28c2b9d157a818e87a14278c7a00","sha1":"1de831d7926ffcdfe3bdd82419e6225185d37e34","sha256":"f5576d28408b822a04da2e824feb2d936edf1e1959b29e0849e709c4ff1beba7","sha512":"dfeb6f084e4ee784b4a74a0525c09ed8d481320b0708417429758d5d393b7f6eec9e153c60a63025903dc145cd998cce1676335c44ba0e9011bf068fb3dd2e24","ssdeep":"384:57bUjPiPk+mozZ2DZNFAw0wg7LEJ8yBzjkjWQIfQ/6URF2a6nUFlUTr1H6ssDLv5:57gjPi8+hiTRXbfQOXXUFwhHnecsfHp","tlshash":"ae13f5c936d6b02452b73475007f710bf23eaea1284e8450d117e8d87cb5a9fa27be6d","size":42319,"data":"","first_seen":"2026-05-23T04:38:21.326763Z","last_seen":"2026-07-27T07:05:43.248322Z","times_seen":637,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.050251Z","times_seen":171689,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"316d406bec14ed278d88b29656ec9700","sha1":"bd547102264254e2beef20bde9dbb4a76930c603","sha256":"c20bceec8e69ac1e4c2e4e22bd2c3676487f19b8676151449558633b99b47e86","sha512":"46f1ff723d384eba48d0384e861d729824711cc28520de2cb5defc92c4db58aeff67b8349ad7d2d75368507cad41580169a73a544a2fd0364b326442be72360e","ssdeep":"","tlshash":"42c08c1814a2983a3224acc3b08f910234c528110104406483ad8031b73044aad380a9","size":145,"data":"","first_seen":"2026-07-25T07:02:54.099906Z","last_seen":"2026-07-27T07:00:44.979724Z","times_seen":499,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"04349b75733f9a34b4021b587765005c","sha1":"6070a8a928fcfb84d659883893b6917e124ca898","sha256":"86d8798669d148db9b83305e628958589e0a0699eb4c5176a49445d3f4b45eb6","sha512":"951d0dbaee27fba356c6b0b3be78b59f088d48efe1d065da056b3c37633ccf9c7ef5932f08f294d5b5411fa7dad37f6cd9f9191bbce94af7c6e76e69eefa4cd3","ssdeep":"","tlshash":"a731a99f53b50938c5c0cffd41af066248f16115ad074c1f7e01eae54928553aeb1afb","size":1536,"data":"","first_seen":"2026-07-25T07:02:54.188598Z","last_seen":"2026-07-27T07:00:44.990878Z","times_seen":500,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/en.46024.97176aa48fe9d9a0d127.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"07d126f5f997c2ed316e3742d5b45af1","sha1":"826dfb648f32acec5e5699cc15a08026e137e6a3","sha256":"fb0cd50a605d7edce14affef79a6dfae9404ba2f7d7818008345363e9e26a988","sha512":"c7114acc89392a1469487feb62b74be0cd3a585a3b5d7a4bb38f30575f557f59860a020911d77ff07f283945810bbfe3bd8586e314442a21ea0c2e1e3625bfc6","ssdeep":"3072:WFM91hHo+AyVKC+wNBsx4A5b0jp4mMGOlyIhVh4dt//9:WFM91hHo+Ay/NNBM4A5bsp4mMGOlVp4d","tlshash":"69b3fe03c901d0ea9fb2d6063ba5dcc878f0774541f0e6c27b998f29c5a3da6593a778","size":115596,"data":"","first_seen":"2026-07-25T03:24:57.378453Z","last_seen":"2026-07-27T07:14:43.802839Z","times_seen":133,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"92eb5ffee6ae2fec3ad71c777531578f","sha1":"e9d71f5ee7c92d6dc9e92ffdad17b8bd49418f98","sha256":"3e23e8160039594a33894f6564e1b1348bbd7a0088d42c4acb73eeaed59c009d","sha512":"5267768822ee624d48fce15ec5ca79cbd602cb7f4c2157a516556991f22ef8c7b5ef7b18d1ff41c59370efb0858651d44a936c11b7b144c48fe04df3c6a3e8da","ssdeep":"","tlshash":"c700000000000003c00000300000000000000000000000000003000000000000000000","size":1,"data":"","first_seen":"2023-03-07T01:11:47Z","last_seen":"2026-07-27T07:03:40.023759Z","times_seen":80737,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/7278.738759ef0ac33469253b.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"0b8a552598142ab8089cd94992779448","sha1":"87a17e3637b405af0a42d322fc032cfd1da668b2","sha256":"22e612835027b9e83688180a91ed31c88f1ccb25ae05dc6866015bd73cb709a8","sha512":"3117f337cfd3fac0235478fc1c3bed80263bf95c521e7d287c8d86eada785db4a298db00b8523d0c3f22c5bced964bb3c73d3b355fb4211325d32ddc24fdcb10","ssdeep":"768:FbBK1Dsf6MP7AAKZAlrHp4Czh1HBvJ+vmdv2cKWPUqz+1xKGDZwYzYAlFKVGjqtr:UsfDP7ADAzlRBvJ++dv2cKWPUqz+1xK9","tlshash":"52d2940ab26054a711db01db4077405bea3fa6e9a04185befa688cdd0b6ee4c3167b7d","size":30098,"data":"","first_seen":"2026-07-23T13:38:20.531806Z","last_seen":"2026-07-27T07:05:45.400233Z","times_seen":846,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"f0a14387aa464f863985b6a6bef1d093","sha1":"51a4a9443e6f007f24b04c914d2721b2730ef3d4","sha256":"5d99f2d91f27190245664e4b3f6f485a27e025b4be90857bcafe11ad8e51111e","sha512":"8d05c11c4010e655a48e74dc053f3b5cac9072e3236bddb482312cc9a5c65db32ccb40274919820c6ace897bad2eeb88d4816605a149d1fa22561eb5a23edb61","ssdeep":"","tlshash":"1480000c3e082800000238a0000bc008c83200020800880000ce008c8c3b00e022282a","size":26,"data":"","first_seen":"2026-07-25T07:02:54.137523Z","last_seen":"2026-07-27T07:00:45.005979Z","times_seen":515,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"30ba2015f57e9fb9a3b395a597ce8f96","sha1":"bea3fe0a47418c0192788fd73b50c3b7f930a3c9","sha256":"f684f5f4f99665c48ebf89434434309281912ca6ae3283b246db5b9b0725e75a","sha512":"3db38cab3bcbb8c7595c8f0d00363bd335a59959c9d266a84b8679341c9c2f9fb4d1f89ae7679bf1c2cde13f1da7f2ec0043e4b1fbc8abdea754c06b095746e3","ssdeep":"","tlshash":"c71000000000000000003000000000030000000c000000000000000000000000000000","size":2,"data":"","first_seen":"2023-03-12T15:19:25Z","last_seen":"2026-07-27T07:00:44.984678Z","times_seen":1086,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"e4728480e2fb7f7ad5c9fda4ae9a24a7","sha1":"d271c64c26f1980b5bcba96d21ac5cadb06e7977","sha256":"8222c16f8274ee37719a8d83f2aefe2259e820728e881bfc83430f3c5336f732","sha512":"d5c34af2fb42a8ebf58500129c2cbbec60704cc1e3275f93dfc44dccd3b3487456bb20ed56bb7e4138e86530d9f61b4cfd2e791b5e0d857c87336a50ed923bea","ssdeep":"","tlshash":"e8d09706b91480223932382302628e07e4a2e8475df3a452a18acdc945f1944805d919","size":241,"data":"","first_seen":"2026-07-25T07:02:54.165069Z","last_seen":"2026-07-27T07:00:44.945204Z","times_seen":501,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"ded6cb7b021faf2355497e718ed7afc0","sha1":"fde446763014ad7c5b2045c021bdfe8ca139fd5d","sha256":"096a45acd89683278277589df946866fc34365c96212f1a60f42b143e5ffb28c","sha512":"160406cdfc444d63df42a6cff7c879049902401b95442e7ce2b82ccbac11aee8f6dbb1eb8382e2d8d21257925b51718eea4518fc53f8161654c3d8eef36546a9","ssdeep":"","tlshash":"25d02ba5b1061051f77079a19262d8989992d6cb2af1cdeb442c41400dbfe045875b14","size":283,"data":"","first_seen":"2026-07-25T07:02:54.081421Z","last_seen":"2026-07-27T07:00:45.022961Z","times_seen":500,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"a9b9531d1e04e0a55ec0f1b0f7dc0cca","sha1":"56e751849cdf2b84d3ba51b7d6f99a311fe1b931","sha256":"1293c6c545962eed76dbefc58f7aea4f82d6a29199b8c6eb9aa29b4f9f9d93da","sha512":"7d7ad121357dfe0827325a3feb542ae4e9ff4a0d18a434c6096eb54564242296df4cdd9124731957374978610373cb0d853468efbef13a2e054ab4e3e5781800","ssdeep":"1536:L9w3cPpzlUowL2cm9ibFHDYzcmNGBfXoLL:pFyoybFHDQf","tlshash":"87531acef2d2a73555e269f6105f410a62fe9006cc85182fba15f6f42a70d4b903bf7a","size":62885,"data":"","first_seen":"2026-07-27T04:25:12.990101Z","last_seen":"2026-07-27T04:25:12.990101Z","times_seen":1,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"86649f7e1c723028d2f82b2c50600d69","sha1":"d054d66e4c26951897c16eb69e57f9803279cdbf","sha256":"7c890a86937b21a7c49e2b3888877244c5442926548497319e537f237e78ef13","sha512":"82625c492170b8a8bc520d8e53c837ff8b7f02e4dd0e442c24edf74abdae64db605c53ef7171b7083f234b32d79179662aada511875ce13842c04185e8111905","ssdeep":"","tlshash":"c3d022072187ddb6a2729804030afa15b0ff100b0e262606f3c885026734b8cc262997","size":212,"data":"","first_seen":"2026-07-25T07:02:54.167434Z","last_seen":"2026-07-27T07:00:44.942215Z","times_seen":505,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.083719Z","times_seen":173952,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"0cb2ca5238ca9b85cbde05a0c6a96a2d","sha1":"e7a5d39e6f8c5139be41d138aeb818c7b5c789ba","sha256":"65cdc6799de01f75bae65d4915b26836b836cc17ab7614020fa97a1d96992d6e","sha512":"c76c6a2b76b731648ebe5b1ed2a0f02a6b803cd96721d39dd9022ea67cfc21c068cff19624d10f4fea8058e486b4138084c49a0d85113008a8f828be99dc79f8","ssdeep":"","tlshash":"c710000000000300000000000000000000000000000000000000000000000000000000","size":2,"data":"","first_seen":"2023-03-10T12:37:25Z","last_seen":"2026-07-27T07:00:45.007697Z","times_seen":6767,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"89124fc63620d83761110bc7e1ba5df9","sha1":"7caa348e5a262dfbebc80293ec34cc3d7e03216b","sha256":"8e1dbf14ae83c99040ff15a1b7c612b72e5847b9d3ef4948fa2a29ddace9971d","sha512":"876865b27affb00d47d87210ce6c7e84373650fbd0a0917fd1fcf949a36b4c5b61c367ebe7aa5c96389499247ff223206dd14fdd197222c9dc22a8c8b19ced44","ssdeep":"","tlshash":"c71000000000000000000000000000000000c000000000000000000000000000300000","size":2,"data":"","first_seen":"2023-03-10T23:00:59Z","last_seen":"2026-07-27T07:00:44.985336Z","times_seen":582,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"bfb05b64541b797fbc56b1ceab0d0707","sha1":"ff5eea3714de9fa65254f3722ee63ff9718b4cd8","sha256":"9a3032ec6f3b482ef8f786196f5fec31ee55139f79eec40f1ef9e5d487f68c37","sha512":"ef42e661cb08389b03f24f5e884fc11c24a95d58110d3bd963a916d449cc80e06554ef4863d18aa0b14c12c0004f03f3b244442f4adcc9cd895ea236dd283ff7","ssdeep":"","tlshash":"687000083c282000a22238e0080b2008002308080080a80000c000820c3200e203280a","size":22,"data":"","first_seen":"2026-07-25T07:02:54.15521Z","last_seen":"2026-07-27T07:00:44.976836Z","times_seen":500,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"fa317cda84211445676c1cddaaae7c0e","sha1":"56c4706fd639682e3b4522c810eee9ea11f2d38b","sha256":"2740769e28e35690a4f400ce64b425de677a1dc517b2859219e883c874e4a664","sha512":"a6c704bc3492435fa28ff4a72847e656af3f982f8988c051b3d48959f553a38a54e5606c50fbcf73af0300faa637f2b3bbe311484f190131207b31b4a7939008","ssdeep":"","tlshash":"c1c08c4a588022263b707d80c0ba192cb354096b109e8f0f8c2ee3943320f62c00643f","size":155,"data":"","first_seen":"2026-07-25T07:02:54.082992Z","last_seen":"2026-07-27T07:00:44.976197Z","times_seen":499,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.022243Z","times_seen":207767,"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/exm=base,root/ed=1/br=1/rs=AGKMywEu2TQUzdSF0AcsFBMUrFqyurKluw/m=r78Drb","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"b0ad8a0af02b0646525f5764557f74f7","sha1":"3b5ecd18dc5225ff5e062f1f355636ee87daa374","sha256":"41ca2ce29b6abecad6de552d13e73fb3b7628a958b5fbffeb8cc0f8b4495f4f9","sha512":"066d24883fd73c8304fc558fbfc404650cdba71f6f3973bf37273ddb405e563c181cd6767cb575ae3d20139bc047514916e3d227d9a4e17fdcd377a478b0556c","ssdeep":"12288:H0PeofempMe8l0tGc70LCSn4AqUlvdDJdGhxnYUjpjYtsxDT:Hjofemc+tD70LCSn4AqVnYU1YtsxDT","tlshash":"f0e47de07392f4b586426966e57f8003b17e5943f2044478e1fa9edc15fce48a2bbf29","size":698252,"data":"","first_seen":"2026-07-24T13:29:06.300454Z","last_seen":"2026-07-27T07:05:42.941279Z","times_seen":471,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"288f4801942ba7fe2e468ad22eb3b34c","sha1":"93c816901b3435f6f5cf6b2bd92e6727e442a895","sha256":"3f0ed40e2c3c5964be4eedf2e9176f9987135e03e131c9e4faa1334b3d0f179b","sha512":"118664d8321242dd85ca89acfa377dca6520b707e6efe6ffa76f2d06facc829277bda47b5889021d70cd3f1a9a382ca7fbe5e41502906853f7527222f9a33659","ssdeep":"","tlshash":"c9e0c05d611b7411b0c03cd1d5cf1498f0f42236c5ce0c1d8375d4c012a2ced569cf19","size":348,"data":"","first_seen":"2026-07-25T07:02:54.136642Z","last_seen":"2026-07-27T07:00:44.936518Z","times_seen":507,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"aac1259dfa2c6c5ead508f34e52bb990","sha1":"8ccb8a3f7ac5bd9c4f1ab74cb453f7f32903fb1b","sha256":"27a26bca625b223971909dd88fc93faeb050dc5b34d91c0871661740dcfb9d18","sha512":"2a404c9768dc86190bcc7c98645afa7b6f74488371b974d14da48d7379b2cfae6c8c5bc878ed17d0f9f4c4e62138bfe416cf9a1be31eab07e062c0f5f55ef811","ssdeep":"","tlshash":"c71000000000000c0000000000000000300000000000000000000000000c0000000000","size":2,"data":"","first_seen":"2023-03-10T08:44:37Z","last_seen":"2026-07-27T07:00:44.992827Z","times_seen":1135,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"207c220e7119b0530724dc731f2361b4","sha1":"7aa18fcb217183a72060d380ee0150133518dee3","sha256":"645011bcb7ff4bb41b4ecb04213d43dbbf54fef13631581a2a59f7c167aa18fa","sha512":"9c0f5f4d4d2cba1b9b96427bc6a014a81fa6fc98815e7fc6370ef28c0b65d196a6d55fc7d9ccb9125455f8eab715e16847eec069e146de094aefb9e753f21fa3","ssdeep":"","tlshash":"80c022c87b2b0c088352d9ba107b0526d86ac928d94c8760d811fb16a92a25a087bb99","size":192,"data":"","first_seen":"2026-07-25T07:02:54.165992Z","last_seen":"2026-07-27T07:00:44.965913Z","times_seen":505,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/69352.33011f244b92ea0b642c.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"5892ca5b3227e78df9d2ab92c3248724","sha1":"60544e547f80c21daf35460e9a75d3e817a58acd","sha256":"69236d01bc831a7a43ff776d09a39734ce30f2be4ecd83b55272b4c1d798c182","sha512":"1a6f2ba628e22166c5e1285ea8771085d4fb4bc18728dd29dcc612bfff921b3cde7047233fac48e47050cb6922013824b1166676d4d77219f87ed820d7333524","ssdeep":"48:fGoeBtt/RMHZr15WY7bq5+EGbplkGbDlZ6JGbHwa+EPyZT1k0SL6tGbdnRyeqg5v:RZ15FbqYtZ6UyEeT1hUAeJ4hZ72cYtOO","tlshash":"6ea165cd33c5f46523e2aad7a4bf510be13e198d601c6814b399e8e178579ce8132f78","size":4689,"data":"","first_seen":"2026-07-23T13:38:20.554349Z","last_seen":"2026-07-27T07:05:45.410878Z","times_seen":488,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/embed_ticker_tape_widget.965c90dc6d41319f132d.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"8194369d30f2aef481ad9b0e75ee118e","sha1":"37a70e62467216b914515bcbdac9df29330d6ae5","sha256":"44ece61da7dd37300e68e5b567453707c97eafcbaccfab2e1cf62f6b05966071","sha512":"4371d06b7b2b3c3742f8395c8c142405ef02bdfae5eb8f48ebb626a5ef89ccac5e87891a1a1806d59bd827f4c45bd0043bcb15e4858bc5264022119f93954367","ssdeep":"384:sN6NujCBUjpEQ4aa20p3kHYB022b2jfMwttlhp4XYzNn0+fo1r7K/A5akkVC8WGq:sMsjCBmEQ4aa26y22b2jfMwt1p4XYhDS","tlshash":"7492e9133394247b80ea44eb91fd4647b6224888f6828818b96ccdce276ddd935b7f7d","size":20040,"data":"","first_seen":"2026-07-23T13:38:20.453766Z","last_seen":"2026-07-27T07:05:45.397227Z","times_seen":479,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"63a7a928200fbecbaab566892f269b4c","sha1":"c71a636656586ecbfe05e9a5cfd5dd020f6fef61","sha256":"364b13b094815ae8cd606830efaae5f3f5be1e799ec75ec3bb301e1e1444aac4","sha512":"4b94f4c7820ccfc5b0ad57c2b4e2b7aec3aa7ed0e2e7b35d2e1f19b60b070eb4deec3cb87b3169bf47077f0f1c7d5d880950e8cb0f07e3428d524a0489a01ca4","ssdeep":"","tlshash":"8fc08cca89c8da99a01060ce34d3e009a368a9283a83f908d11ed1c46a40ad8e4ad47f","size":158,"data":"","first_seen":"2026-07-25T07:02:54.118953Z","last_seen":"2026-07-27T07:00:44.947463Z","times_seen":503,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"d193015219e346f2bf0ce2dca8cfc190","sha1":"0d2597c667e73cf9db77a51e62c72c36f98a7e76","sha256":"8d796a8d6a9168e6a422919403df5b9e758a488eb0ffa7334a10a11484598a4c","sha512":"b2df811c77da9c4675495997cded50ea42f8923d8516f30f4c6210a06fbe6d8780245d9433a4f55868029be2c719f32d88553d2df1bb8ae117fe7f43428cc365","ssdeep":"","tlshash":"149022f02ca030220200b030800f0038220b0acbc080820088a8e83b2c302000cc0800","size":56,"data":"","first_seen":"2026-07-27T04:25:13.016287Z","last_seen":"2026-07-27T04:25:13.016287Z","times_seen":1,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/slick/slick.min.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"2664f36c2bc885bb04c0434714894396","sha1":"47bb7250bb5bcfe92085650d493830704053008a","sha256":"5ee46746338cf8314c4288eb3524854a4376deca66d9fb1a0d1ceaa516c95cf8","sha512":"42d935c9333285d458c3beba5b31c10a9a1b7256a97b2ce70df4b8b67de9dc8cde44ea5a2312209e5efe4c62bcd2fd332c98e816f95bd1c02079b6a1a009a652","ssdeep":"768:4rkkX123A5Ybi6pWzYdlNWYcx16nnYdXRRMd20YCQCsPShb1ez7RFmYH:ErrYdlNiXEePiYH","tlshash":"bf13a549d204276285d721e62105c40eb3f7fb3cba22c0e435c9d3ea646ed4896d7bfa","size":42855,"data":"","first_seen":"2025-05-03T17:30:36.896974Z","last_seen":"2026-07-27T04:25:12.748455Z","times_seen":12,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"bd0bcbfeaf7651b34de78f94db256e9a","sha1":"d5d4133262a2d4536708007fd3d58db921c73a6b","sha256":"7c4c4985dc2c7739b2b78d4608b572981a8394702ca5cef9773fe555ff0eafd3","sha512":"4d4b6a8f7b6d27a5d6e269d4b9a804986a2fdddd08cc47ed5cb726e993749117dafe9300281cf36c5065dd89063cd7c09e39e2851bb7626184be44b33d3237a8","ssdeep":"","tlshash":"faa022203e00ee02a32328cc023b2c08f20a8002c0000c8fc03ef3c00330bc023028fa","size":77,"data":"","first_seen":"2026-07-25T07:02:54.183264Z","last_seen":"2026-07-27T07:00:44.972095Z","times_seen":508,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.034568Z","times_seen":155142,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"e1d98d47689e00f8ecbc5d9f61bdb42e","sha1":"6778fed3cf095a318141a31f455c8f4663885bde","sha256":"0a34a87842c539c1f4feec56bba982fd596b73500046a6e6fe38a22260c6577b","sha512":"021e615983f30ec5477fd8b611e8c5045ac6d9900f9a9bb8649b56e0c7d282965a727f8cf501c3b7e1ddff02f5b44924d5481bcea7a926be8a9e166314a07ed0","ssdeep":"768:5NYyDyKAmHVaS3m3Dqp0NwCkXDtdFDLmTV+miDNJcJiQMRqyPiYtB6UvcCg8YGk:5NTKktDLmTF8yJL45XtHjoGk","tlshash":"1243c90a725478b205df9176917f420bb737688ae94ac16cb91d98ed1e7cc893227f3c","size":58072,"data":"","first_seen":"2023-03-07T01:02:33Z","last_seen":"2026-07-27T06:59:18.34131Z","times_seen":28147,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"53f90a23c820f4d35aad5e1fc69c3631","sha1":"adfd381939291c573a7f091f1a486b30a9598190","sha256":"c43f747e9a95c0f6b4b687850f9ddb61fc6791213cfa3bf2c08f7358c1fc93c7","sha512":"757f13afbfba4457e7c08c0ed2cc31146c8174b5b9c42a6e86d3703078d5819a577f061397bdb28f87ddd8f3dfabb09be6cc1623d83644ba6e2d1df26c15e18b","ssdeep":"","tlshash":"f1a0220c288f2032b202bc2280323c08a32f2003e8a0ec0e0028c2c20b30a8e020303f","size":72,"data":"","first_seen":"2026-07-25T07:02:54.130379Z","last_seen":"2026-07-27T07:00:45.010981Z","times_seen":515,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"32efc8291438b62ef493347e387cca0c","sha1":"cfde2c91f018e6df9094980266806f07d5595723","sha256":"6ea6f07e03fc88bb1c49cd7c10e57e591028e47da7ba7ee2587f34d1b9f3cc54","sha512":"81c67ce5df3bff4092525e1994a46a1798ac52f794c0a30e12fc4b3571bfa81a6d69a60144d8ed3246fe8e42b72a49108992bc01ab56c0b35f5e6c41782c4b5b","ssdeep":"","tlshash":"73e0c0197b572073a1b6288650062fcd6a682c4668c9788bd222794008acdc3544dc42","size":329,"data":"","first_seen":"2026-07-25T07:02:54.071637Z","last_seen":"2026-07-27T07:00:45.025225Z","times_seen":502,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"fe63e72e58f232e831ebaa50436cd976","sha1":"3eb05a9376004c39c93288d95443d7f967c4d383","sha256":"fe4765abdb60dbb4296984f65320d7fa3f3047b70c94c2cd7737a9edb867a57b","sha512":"b39b8a0ffad610e40cd8116a7d35d709a6f3bed7ac49e980e5e2f26218cdaca4629af6047a9e7a7bc8857ee6fcd6da93808f9aaf4c26de44ecefc2fd92a87ef5","ssdeep":"","tlshash":"36f0ebb65a0180c490b39deb6e7f3a3f61866aa7b58110814393d725939c1d2300deed","size":546,"data":"","first_seen":"2026-07-25T07:02:54.125329Z","last_seen":"2026-07-27T07:00:44.95151Z","times_seen":500,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"cb8abb683722cea7fb115342abc554ef","sha1":"776b83217d825a68ed51f891fb2d360c233eb726","sha256":"139ffca75e64693ada18ad987a1d7881947ff41ed7784d3dcf349f5915124464","sha512":"7fceeb9ba20bab9484738d20748f7a935aca6ab7d869417d3629d2db9884afba198b09c6fdca26a84d90d6fa5676000775da441daf4e9940fc687e476ae54a67","ssdeep":"","tlshash":"9fd097c46bbb982c4984ce2b40331131d049a21c8e080c50b230fb3bf7a075b243b0d1","size":231,"data":"","first_seen":"2026-07-25T07:02:54.205479Z","last_seen":"2026-07-27T07:00:45.00312Z","times_seen":500,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/js/range-custom.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"462106021dc731314c94c45ea510df57","sha1":"8155d4459508288c7d0afc805da6811d7f2a8953","sha256":"7318fcd0a830a493f01fbb5080445e054b048add0001f3611818a21564a58809","sha512":"43f6cc2cec3b54da973295eb7db249f00a1f3c1f7099c2e94278cb068e5cb9d366de5f06d915ab0492752683cb8ccb1b1a5ac4db7f8679a3aa2ca25d0d3996cb","ssdeep":"","tlshash":"0061ad41bc4151d5abbf122c8fb48520fbc94e578524cf40faee09a86f39fa54284ed6","size":3234,"data":"","first_seen":"2023-03-13T03:45:08Z","last_seen":"2026-07-27T04:25:12.860113Z","times_seen":187,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"f3c46dd141ed0afa02a1b3049bab0729","sha1":"0f9b6e8412fa13b27e3af2816a112bb28a04a735","sha256":"4962a69b03ce9dced7bd2f588eead880ca97dc93d3fd354fc911d8b6b815d11b","sha512":"006dc0d7d1ead7ff5d5cf02082d1aaebb3dfc2a9a046c9d60bddadfcb9e0ac4702e9868970fb61a9af4bf366d76a03d09a264adf462e9414296dd0d749c136f3","ssdeep":"","tlshash":"9ac08c090b0dd3a6038a6a94610a43aba15284cabe615c28ab40e0c2e68e6054066a1e","size":151,"data":"","first_seen":"2026-07-25T07:02:54.100897Z","last_seen":"2026-07-27T07:00:44.977956Z","times_seen":499,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"93dddbbea2419c0820cae293f64a56a7","sha1":"fec37c7f501f1834dcfed04edd754ab32b0661a9","sha256":"ca0f37dbe01b74a05d3b263e0f9b36a99e44350031baabb6c14c7d2d0f869d83","sha512":"e3f524dc1b1210369142abc7c52aca7bebb9edfdfb9237ebb03aae85d1a1403d2884e0062a7fae21d29207f237868efc1295460052c4ebc7860958d0102f88a5","ssdeep":"","tlshash":"0f9002c53c4456153662ac61402e44059165860e24a294829916e2940732b99850242b","size":57,"data":"","first_seen":"2026-07-25T07:02:54.19501Z","last_seen":"2026-07-27T07:00:45.013735Z","times_seen":501,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/aos/dist/aos.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"d3718e34eeb0355be8e3179a2e2bccb7","sha1":"850ee2e5c9fba610840137c6c4e92b5abbc428fe","sha256":"a5005b2e414770fd5ccb40bc221a12771966d02b5c1f9c89da48bd8e3811d377","sha512":"03b0189357c6297e92d92b07cb098f92b9f34d91eb822553ec671090b1837b67afd1a59bf337a3cadcd2f308e8ecf1845caa893ab8d0e28391b678a6211641b7","ssdeep":"384:3IJfNa+yGZHbXPgJT7UKEgMt1sH6GCZy54:4JfNa+yGZHbfgJT7URgesaGCZy54","tlshash":"d162e8dc3691f0a617a790f782bf600ff2f04874245d9090d269c4e63eb58ae8673e5e","size":14690,"data":"","first_seen":"2023-03-07T01:19:08Z","last_seen":"2026-07-27T06:49:58.632378Z","times_seen":10219,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/en.57291.7208384210f7c33bcce4.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"df08a1dd70ffac4f28fcc3d7dbbe08a4","sha1":"7ccdbd9c3c329f4aa7c79c73e2bb3943ea45ebef","sha256":"db9d406f4660f93fca8338121e3f490d121c0d8c145adf7b5255109dd254fc22","sha512":"ddbd2ec7971bce16527fb401f1a3a6162efc2a827a9684ba05c3c7a2453eac89da95cba33f9f32fce00d8e36547421b0446718bda2cf81251f62240f8a342978","ssdeep":"","tlshash":"3d512127d020d5f22f73ca08b792edd675f072a111f2e8da7b4a6f65c25bc5018395b4","size":2513,"data":"","first_seen":"2026-07-23T13:38:20.437954Z","last_seen":"2026-07-27T07:05:45.343944Z","times_seen":764,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/99827.d3976dc0c5cfa2c2140e.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"0af33a0629a4a15d05b8d21be003c0eb","sha1":"d61ed97048a72976c85785513a62b5e8590fb75a","sha256":"4dbdbd0c38d1d6468cbd0ec6b02411faaeffeddfc87c7b638be2e1263931cd14","sha512":"4350a5eab085a85477d149b1a91edb41a808bb070818e9d43e5e1147e4c71a0a5c3438616ab61efb6497365cb84e1f518343afd20431bb8612ba9f7a2165f814","ssdeep":"1536:wjugPsJO3KbxBvr1tBzoxvAgVIvrKfu2DNzmR5axsx5Eng/vc2JZu4+ej3aNOtHm:k0yKlvh/Z+839HMY74qBs","tlshash":"149309ddb2c5b06257e731b910af650ab237249d680d8440f139e8f6bc74b4aa13be7d","size":88966,"data":"","first_seen":"2026-05-05T10:36:04.846561Z","last_seen":"2026-07-27T07:07:14.00031Z","times_seen":2040,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"8019a2b7d49c53a548a55f046b75eb57","sha1":"4db451122874d00f6b6fc751e5545823a75b818a","sha256":"e313eabc79a57bc0506d61fce96ce2b6dd9cd635130b8c8d029fe24db01ce844","sha512":"e945ce874884b5d67375a48bf9169e85c9f19519dcd646eeced82292b23f9174af233c378fa483ed79a04fef47ea55c9fe0f8ec71a2bfb18c714efe75c3a112f","ssdeep":"","tlshash":"38c08ce873b61824c2809ab3a03b46a1a88ba69c98094440e220f9a9763030d082faa5","size":158,"data":"","first_seen":"2026-07-25T07:02:54.159204Z","last_seen":"2026-07-27T07:00:44.986576Z","times_seen":501,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"0ee7840c65fd232997d06d9430eb3cd3","sha1":"d7b08c1b33e71fb050eda8eb76673e4ad9a8e2e7","sha256":"b1934a6c0e3ad971de0f6acb755aa575707e156d75224d0d6290a0f1d9fb6329","sha512":"f49fc43de4c5e49b7b4f81a3de77f3a6642f44ed070ae82a48e541a680b4992dee7b43218235a23384d386adddaca5a463a723470e778006b84dbe309db5e215","ssdeep":"","tlshash":"61e020a4b60370c596a67c844417db33f1b8b6180864679335a9f85cbc15507929bf35","size":347,"data":"","first_seen":"2026-07-25T07:02:54.163257Z","last_seen":"2026-07-27T07:00:45.009317Z","times_seen":501,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.039234Z","times_seen":245736,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"b5b6fee0a4d21f85dce9a49e0e9a9036","sha1":"34f9d5791d070ae880424d2e4c6c2b578271cac0","sha256":"123cbe058700145f7b9e0d18298653a900ac9389207b3b95c4a98fbec94401ab","sha512":"16b1868151143dfcb7805ad1d5a183bb7c99d79eeb35b3bb38b1d2110c7bd387c1222be2c121764afaacd7c74b503cd59fe5813f1d5d99c7d207ea7c57095e5f","ssdeep":"","tlshash":"52a0120076447c0116112c79c2260545b0511a0b54906401c10596c102705890113ce7","size":79,"data":"","first_seen":"2026-07-25T07:02:54.173327Z","last_seen":"2026-07-27T07:00:44.97092Z","times_seen":509,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"16c0e822a412e900773f94265229b860","sha1":"3f7b94f3942f43c81bf6104a63328a04122f46ef","sha256":"b15fdefcf464539466ed442882025a3860330cb62ac4613d91e8a94448850155","sha512":"662eed3905e417a9d5d68d7a9aef8c7eb97df1e6c03ad095fe7bc3f29a7820cd4b4611afd58f3ac95a91b71d7c45daeebcddd1ed5092d85b6d678b40b7fbe88f","ssdeep":"","tlshash":"60a024005c0c45013713315144370c0750d11107f0f44d0f430dc05017305050744333","size":75,"data":"","first_seen":"2026-07-25T07:02:54.207231Z","last_seen":"2026-07-27T07:00:45.031352Z","times_seen":500,"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":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.444836Z","times_seen":919,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"f58a7d86186e19db84e783bc06177a55","sha1":"8002a6aa19ad59d43ccc8b32ff7c6d561f9e1259","sha256":"41cd1e4850b992f8c433a1a085a6585a8e79ff96413f11e360a6743babd8cb93","sha512":"be81de332fa854c02257328706e95326c7aac28318d95e5f910a68f7b74bda38161de6fe6040a2d41ede8941285d69e4e4b22554f2fe5f6a1bd2473a4b4dd366","ssdeep":"","tlshash":"42e0c05d611b7411b0c03cd1d5cf1498f0f42236c5ce0c1d8375d4c412a2ced569cf19","size":350,"data":"","first_seen":"2026-07-25T07:02:54.088205Z","last_seen":"2026-07-27T07:00:45.029481Z","times_seen":505,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"908d5ccda6d90aab1d372185818e11c6","sha1":"917ea62d00a3e75d9b87d9a831eb81c24db4441f","sha256":"c9a8ffb3a00f63b1c983f1445fccea9aa101fe4d579aa885f7b1d8ab8e488faa","sha512":"868bb8a092222b3a369569f020417d22a4567faf3da65a85a2fa6492b812e961407d92f563bd02ec1c190d70a200301a36c9575386d779d98659d38ea7ecf40e","ssdeep":"","tlshash":"4cb092c8abc2a0625441958a413eba59f3e4bdc22706247ae052ac1aa4a470e40bf25b","size":118,"data":"","first_seen":"2026-07-25T07:02:54.17899Z","last_seen":"2026-07-27T07:00:45.003717Z","times_seen":503,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"39d2592bac0eccdff1e94886f4472629","sha1":"35d3462c7a93c0264610efd6ac970e5d47ca7792","sha256":"24677b8b077f1fc6144a4e59498483aa30800bd1ba610a984f65b357cb198479","sha512":"5c9b66a1781728f08b8b4f9493c68ed5af9382c90f72cc5869f2a07f1837e50ffa4719273c1445bc025454171a535cf621e8f29a6630c32f07843708331409f2","ssdeep":"","tlshash":"88b012247c08fc22ab212c7841120d197120c04354a784d7d02ce3c00339186300b593","size":98,"data":"","first_seen":"2026-07-25T07:02:54.143979Z","last_seen":"2026-07-27T07:00:45.023552Z","times_seen":502,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.001429Z","times_seen":156310,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/12181.b65a58355ff7cc34950f.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"90cd4a18a60bc908d0840ba4fec27dc6","sha1":"bb5de7eba54b0d9323f872960612df642a27716e","sha256":"ae043b44480c283e0e50b84e353fe3e98e560fb8f9bd14638f61a5dfadc231ba","sha512":"1ff83bc8bcac42839140d927da7b753dc51b3ab887327bf07fef3ca3b194425621ed7376ef404517f818a80b9f3d96955fd5c9239c1dc05e599503f7118edc99","ssdeep":"1536:U4ecrc2hMNlbPWqfxN+fUE44ld4e44IJmuJY7+fHfvWr05KNyhLcSbWd4+o:4CxdswjaWyn","tlshash":"10d345b217f406f473b80d5293f77e591b3c74a359882c52d2a4d9a0dd40fc2a96ba3e","size":138370,"data":"","first_seen":"2026-07-01T19:46:28.364877Z","last_seen":"2026-07-27T07:05:43.382219Z","times_seen":910,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"9087bfb5987e012165369f31c80da771","sha1":"e4b912603b7a38d385bb3770f3d3c3574c4c7d09","sha256":"17b51df2b060b946881ffe59fc2d1cd01fc09a7c7d40c7b4dcce2526e10308df","sha512":"df59e3a180757201879e376cbb16a70c6f55dd732e6eda3f9809868bcf9fe2eb2e73a288192394cc3b9736832423672db4a13a3f1fa1aaa8ac37d3374c01b356","ssdeep":"","tlshash":"28e026c771613759d0585eb4e27317053c62a081ab4889e9b236f60aabe49ad35e3816","size":340,"data":"","first_seen":"2026-07-25T07:02:54.191647Z","last_seen":"2026-07-27T07:00:44.965368Z","times_seen":502,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"21af29eb4a2661cde1ec2e23d5bfacd6","sha1":"7d2873f1d5edec0591009cb7c58ac0a8583acbeb","sha256":"355b175012ceed0b8437fb62d9e30416e770998561d266f70691acd8f7022641","sha512":"421539d8e4b532816aa4e443242637ff1e64519e1131ca733adb76acb7defa95088078a829c848c79f3e0c98c5065c0179d868360023547dad53797f81cee06d","ssdeep":"","tlshash":"f1c0122f63c0433609d3a2c4128f2716420991093ed51dae985663b81c3a0476068d25","size":190,"data":"","first_seen":"2026-07-25T07:02:54.080469Z","last_seen":"2026-07-27T07:00:45.010434Z","times_seen":502,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"25607f1ffaa7d1ff142e22e0e8ae6779","sha1":"207c150da361f4c91b20acad7c60918a9818305c","sha256":"8495a59d9339a0440ffe0861eaf8f3248dc31cd6f5e5447e07d6e6d376b2002c","sha512":"5a76b2517dfa3140c30a7a50b1d6f4d49ccf641725897a7d2f2131e4638d97279de45263ebb59371c7dc55e1204c94afd08eaf294e6cffb62e94580ea47223a0","ssdeep":"","tlshash":"6ad05eeb6b0f267900d33d34090b0a546a56c401ecca14e59711b8dc4f5460b40f3d2e","size":242,"data":"","first_seen":"2026-07-25T07:02:54.140729Z","last_seen":"2026-07-27T07:00:44.998252Z","times_seen":503,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"56d477e14d3afb1ffba04e085eba7834","sha1":"640b4d7232aba3b4b3f243b10228f7bd6bb27aff","sha256":"21220562832a31cb34cf0cc2cfcf17728feac102affc17e2e97d7e405c224f06","sha512":"389a61bfa0b427630b58c48dd7c72c4206a76c88e6743d446674a84c0cddfdd12b8fa66086bdf5c900937cc837841b85f9c2f47f6a03237c552af2c5766ec936","ssdeep":"","tlshash":"82d02bfb5811c06ffc27059213335dc910d2f20dd5993f9ab6b2b1a4392000c70d54c7","size":283,"data":"","first_seen":"2026-07-25T07:02:54.126205Z","last_seen":"2026-07-27T07:00:44.985926Z","times_seen":502,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"eb7194ac9d6f5a83b6c7cae43038d2ef","sha1":"9b1cfda44cba767b72373d6df56249b565efb634","sha256":"eb2bf66d92707acd8be84dbfcca1376c2562c4ec94a4d87babbbe67f4d125aae","sha512":"7ae1e7cb8edf692da592a8ddc798f6f564f5ea0d6fd6919ee5c86ca95d983d15e707615cb6ff6623c0951e0eca8a4852f1d8d8596f985ba3e214feb47bfcb886","ssdeep":"","tlshash":"6390025969497099203710e0425e292640d2c40065544041961494f65434b17d531c6a","size":57,"data":"","first_seen":"2026-07-25T07:02:54.098994Z","last_seen":"2026-07-27T07:00:44.998879Z","times_seen":501,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.069693Z","times_seen":186692,"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":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.3965Z","times_seen":884,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/runtime-embed_screener_v1_widget.9dbe1b28214d7a1471ba.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"078c641a9165940f92f650670dcfe56c","sha1":"588a588b3de873254a2ca6be4975e9a456d154af","sha256":"bf1232ee83f71f223d4d69f4ec7b7ffc474385b0bf3e2ea817a41a51de2fdffc","sha512":"d70d6ac8dc2d5315cae23b5ad2102e5968136636834d12b08553280efe2990f9bb1ca243bb1cc9bcee0f291f1db4af42d8ef1716326c2ca0de1643e12bdfe1ff","ssdeep":"768:2O2u/W/ww+vFmk6+uoYOgJV3MDbos8ZJh9qWxZjcLY8Z4NqSY:2O2u/WIw49gJV3ebo9h9HrD+7F","tlshash":"35e27ded923cd6b336f12da96d7a9863f33c24237c5980d49393b56409a6ff4a232513","size":31926,"data":"","first_seen":"2026-07-25T03:24:57.413219Z","last_seen":"2026-07-27T07:14:43.743783Z","times_seen":133,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"79563e90630af3525dff01b6638b0886","sha1":"68d2ad23b5e1102797ff78d3d0d55d97ba75c268","sha256":"9e507a6dfbf98393bbf23d487af7f1c5b2e8ea0635e3f0cddeac3a9a090a3dbe","sha512":"c11c66b5e92dce18ce4e6c7c9d956d09afd5a734c046f8fe645653931de1db0ef639567724e65e48f05bd922a78fa1547c86996fd5de1a62573c4cc2f46d2300","ssdeep":"","tlshash":"c710000000000000000000000000000000003000300000000000000003000000000000","size":2,"data":"","first_seen":"2023-03-11T15:36:04Z","last_seen":"2026-07-27T07:00:45.007103Z","times_seen":970,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"widget-v3.smartsuppcdn.com/assets/shared-CgMCAfor.js","fqdn":"widget-v3.smartsuppcdn.com","domain":"smartsuppcdn.com","tld":"com"},"ip":{"addr":"185.76.9.11","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"introduction_type":"scriptElement","is_inline":false,"md5":"06c5668b0e6d3383e096c45abdbedf9d","sha1":"8d64309e8ec50da59f799336c11685ca7fd15ecc","sha256":"2724b50edb69a23cc951a77f775727b960c857d18d58cfa9a47fe5c094d9b99a","sha512":"c4a86d25f4e86be36db19539b4e3efc70500a48b9664349043d76a1451f8536c8bed7fe22f8ca790fb3ac7e26fa7efbfc37e0c927687966dc08a02442e15f85c","ssdeep":"6144:mLjnOEIL18ad2jJKaQo+tRkYcuBaay+moJG:iOEIZRd29lqj4n+moY","tlshash":"53443ad53294b035439b51e6906f1106f33e5c58580d812cf269ede678baec8a2f7fb8","size":272133,"data":"","first_seen":"2026-07-07T11:50:17.748529Z","last_seen":"2026-07-27T07:05:43.330797Z","times_seen":1788,"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":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.398742Z","times_seen":959,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.060258Z","times_seen":266279,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"42397e761d6e41735413532880049e6f","sha1":"95f740d93be57eaa0388e50ea79e4ce0bc32a47c","sha256":"76354f8202dcb3bd872442c0934f9c7e5e9f61540f27727a42a5eb594e9143ea","sha512":"37cf8e6de170216c3bb26136f48d90eb71bc4bd34d7b8e59991083fe5c79b32d4f12a4412445f5f115a748693f51a2d3528d3f2e8b169ebcb1b4a87c2124f9b3","ssdeep":"","tlshash":"8aa024451fc0173071c174f015070010450d107dd37444d54075dcd00c34fcd3441117","size":82,"data":"","first_seen":"2026-07-25T07:02:54.195903Z","last_seen":"2026-07-27T07:00:45.014366Z","times_seen":500,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.056193Z","times_seen":184924,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/js/jquery-3.2.1.min.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"introduction_type":"scriptElement","is_inline":false,"md5":"c9f5aeeca3ad37bf2aa006139b935f0a","sha1":"1055018c28ab41087ef9ccefe411606893dabea2","sha256":"87083882cc6015984eb0411a99d3981817f5dc5c90ba24f0940420c5548d82de","sha512":"dcff2b5c2b8625d3593a7531ff4ddcd633939cc9f7acfeb79c18a9e6038fdaa99487960075502f159d44f902d965b0b5aed32b41bfa66a1dc07d85b5d5152b58","ssdeep":"1536:YNhEyjjTikEJO4edXXe9J578go6MWX2xkj8e4c4j2ll2AckaXEP6n15HZ+FhFcQ7:uxc2yjx4j2uX/kcQDU8Cu9","tlshash":"4483e6d9b2c67062977730b950bf410bb17a98dab44c8c60f158d9d47eb8a8d907bf2c","size":86659,"data":"","first_seen":"2023-03-07T01:02:00Z","last_seen":"2026-07-27T07:03:18.946584Z","times_seen":98372,"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":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"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-27T07:05:45.412508Z","times_seen":989,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"57cec4137b614c87cb4e24a3d003a3e0","sha1":"23eb4d3f4155395a74e9d534f97ff4c1908f5aac","sha256":"18f5384d58bcb1bba0bcd9e6a6781d1a6ac2cc280c330ecbab6cb7931b721552","sha512":"4921de1edb2ecc8ca3a22823705194b902cfa471675f2d1ae8bf67d0c7b060a7c192e36ffca9f1a0d90ac2dbbdaf429ee1ec97e160eb00dc80b07000935304f3","ssdeep":"","tlshash":"c700000000000000c00030300000000000000000000000000000000300000000000000","size":1,"data":"","first_seen":"2023-03-07T01:02:06Z","last_seen":"2026-07-27T07:03:19.113894Z","times_seen":45495,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"e25b5a6d5b2365cb579d486a6acba51b","sha1":"6f513d7efbf5cd1176677d41c82b897b8006217b","sha256":"81799c32d53294ca91ef92a976a6501f0a7c8c424aa44278c8f06c0f71e0eb52","sha512":"d0b8a9b323c125a111082164ec638c05109a1b0add4136f4a0b69c99b680579b4755177a7c586a92f295bd1882b7eb8e41eb6bac406ef90d4257805cfb82308f","ssdeep":"","tlshash":"e9e07db0258123422174df79f0f3120430e072c67e48ac8f51256b428e388c1142353b","size":314,"data":"","first_seen":"2026-07-25T07:02:54.113702Z","last_seen":"2026-07-27T07:00:44.946298Z","times_seen":506,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"e1469a0c2dc2156f9a727d0ed640ac13","sha1":"ba1dd0fe89c6bf92a6a0f1dfc9336ec0c722f494","sha256":"12854497ac91b3bf315b127a6c446692fb3c10bd1dcd87c3d60a592f63083cc2","sha512":"0cced30914a00cca9185467b9de158e890ae36123087ab40ce5ab41f2ff3ff858178f42c2810106003fad52d94dbebf96e5e47c7d3935f2cb2ebffe7ab387b94","ssdeep":"","tlshash":"6c0110862cf902b7b2d176612be37a2800f8b0476d082418e205e6a096564c2000adcb","size":686,"data":"","first_seen":"2026-07-25T07:02:54.118078Z","last_seen":"2026-07-27T07:00:44.964759Z","times_seen":500,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"13d618642764d2b6960367a857576c87","sha1":"8a7893b1545d1dfa2ebee469c2ee8ddd0a0c0b7d","sha256":"45428e1193fa8edd3f86d91bf4fb01b486cd6c1290d013f948c732adf7fb8875","sha512":"ae679fdd05e738532172c82f852d19e014f49f54e805eb49694cf0849c98278864afe9d8cbf2d19fa29c5fa73aa5143aeb3d012d841915597b5af30af9c77ba3","ssdeep":"","tlshash":"707000083c08a000822238a000ab00280022000022808a8080a000a00c3280a800288a","size":22,"data":"","first_seen":"2026-07-25T07:02:54.077156Z","last_seen":"2026-07-27T07:00:45.000766Z","times_seen":506,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"834dec29a06aa1149f778035ffade82d","sha1":"cc71686d432a1236d2cab595573ea9498de75463","sha256":"4f36b2c33e2478b4d3ba77a2d6ee222f79ddda0c54ed27e41f3fe2cd7a62d318","sha512":"48c414ee31ecc55c83cb5b925daaaba737aca1cf332cc37dec593c919fcf0175118fefd24df9e42662593abe95e078e5c9a09ac2502aefc496e0df715b6d590a","ssdeep":"","tlshash":"26d02ecbb1c0378ab8a66cf4f2b34a0438a322243b8080e8803a36580fe05c8d903d25","size":280,"data":"","first_seen":"2026-07-25T07:02:54.194101Z","last_seen":"2026-07-27T07:00:45.017282Z","times_seen":507,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"9e6f21901550fc1605fc3b7bb6220df5","sha1":"2c9aa881509ef9f0bdc5a0e496b852467b52bd1a","sha256":"d68cf2832956cf0a7b5ce50801e57f1a4aa9c959d170ef458bc12ee7a8e26f5f","sha512":"fe48c482cef77538444ec38384fc51fd461c90e228bcc2be17c1558ea1937e26eee63a2ea7fd01969aa1132b1413d738bc023fc6ea286b151dd8f8267278ad12","ssdeep":"","tlshash":"6ca0120074447c0116112c75c2260548f0511a0b50902401810596c002705890113ce7","size":79,"data":"","first_seen":"2026-07-25T07:02:54.172421Z","last_seen":"2026-07-27T07:00:44.980375Z","times_seen":509,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/runtime-embed_ticker_tape_widget.962f777c23b660d830a5.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"6261f54efc700f40121ffb4b8469e97e","sha1":"ce3b28aab3d88f4c8efb56c9421582b8795b170a","sha256":"784267261c93801d2acc456a3fd6bdebee924adb480d41166947dbef83d09720","sha512":"24eac8beb0159520437818ae9b0622b1a35010f7b030d8235bafbe66000eccedec201dadd509607239623d395152fe9e364a0fc0ff255a87f05f763c2bd6ce2b","ssdeep":"192:YLwqLptVvG6uptkfr8lJkNFmn1BnRMC4p2kuVcsFAvaGg:4wqLp/vXunkfr8/kPm1BnRMC4p2kazAO","tlshash":"fe12e9ac354ce53225bb0c525479e462f72c23fb5e0ae0a09367fcf96858ed46633d91","size":9160,"data":"","first_seen":"2026-07-24T15:28:44.921696Z","last_seen":"2026-07-27T07:05:45.46591Z","times_seen":448,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"a7f8d6710421b13561d798da885286d4","sha1":"40bbf372af2386d0230d48c56680b364196e5238","sha256":"01233f22b0adbeec53c41f6c10babce298647c9c6c5c6ced4c143a2a88d18f4e","sha512":"86969e257ca8c46c346e574182d16d97936c58fac9d836ab3b8850d964753e8fd0b3a9f5b703cc23db2f982c8ca5b56f7b2a54ab7ce90178cd8c29a05724eb22","ssdeep":"","tlshash":"79f0e1c9b392146536ec934ebddf4d613cb16158413c512da7a066f104a06d5a8edf53","size":585,"data":"","first_seen":"2026-07-25T07:02:54.206377Z","last_seen":"2026-07-27T07:00:45.013199Z","times_seen":500,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3.tradingview.com/external-embedding/embed-widget-screener.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":"1d1f8c8f959c6dfe16b5df875e3e6a20","sha1":"05c8ccc14d187d3f57e68109996ffb71835de5a8","sha256":"362c5302b447aa33060156e760f193574c506b4bcbcce3d720c0422a830da740","sha512":"66818bdae0d6b15dd9e97bd4ab64b6396595b2f685c5643165618cfce9f13699a12db224ea81c51e78e303be467795c01dd25084441a89c487fab2fcfb37882c","ssdeep":"384:gfLuCWoofYkFdjEUjrb2oNf0qIOj26eoVH7MXt:u4MUnb2oJDIOj26eQYXt","tlshash":"f452c6aab660ecbd41d945cbe07a2720b61d3a44b207eca4b5acd4c550edccca531f7e","size":13242,"data":"","first_seen":"2026-07-16T20:48:56.348973Z","last_seen":"2026-07-27T07:05:43.395571Z","times_seen":142,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/snowplow-tracker-base.465f8af1aa72ac3a1c32.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"1edb2832b292eaf1f490fd35fadf61ec","sha1":"40184dc94dd19e2bb7b906af7cc99c694efae8d5","sha256":"68c5b31fb26ad1af6d37dc872285b1e5c9837fed11bba1414d053e93e3728567","sha512":"a575cef153e42834c4fe933e7ec67a2a5442aec23dcf472bb585c8da5b858bfac30b279e03691938a35400b286055406e5a9f34bd3d5e5c8b51f1dbccd902df0","ssdeep":"384:rNtq6SWGLOzCHMJY+Uhb7773Y6cR39CF0msq2k70wcWKd:PjSWGLOuHM4hb7773X3F0msq2k7jcWI","tlshash":"ea62d7887043b09a42d925ef986b5149f7380898740d84b5b651f8d23caed9f63f3ebc","size":14701,"data":"","first_seen":"2026-07-24T05:39:08.468159Z","last_seen":"2026-07-27T07:05:43.344948Z","times_seen":217,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.081245Z","times_seen":75575,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"08a4415e9d594ff960030b921d42b91e","sha1":"1f444844b1ca616009c2b0e3564fecc065872b5b","sha256":"27a84712e4b22c415fc544d55cdee82327a829f96d03329457f76ebf9af4dcaa","sha512":"2c9fbb3f289c28bcec752f021d36c3a14b86140bd82942b06c0838931ce5999c1fd0b297b9bdb24aa145fc0244b7f3824c838d26ff7c222ad7663ddfb2c066b4","ssdeep":"","tlshash":"c71000000000000000000000000c0000000030000000000000c0000000000000000000","size":2,"data":"","first_seen":"2023-03-10T01:16:47Z","last_seen":"2026-07-27T07:00:44.971519Z","times_seen":2058,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"130c787f212b30dec62fe9d1f64adf89","sha1":"0fe829cf5728aa8f881b127725d34bff3e703f22","sha256":"50560cc380f1458be9737fd2ee27daea8b9426db77b4b38ce5554e4a651ad09d","sha512":"650a479f750fa63552a1eb884acdc1d5a0ff7136389e396a8c311804d6490e8657b6ac81855d1d7633a27309f79c578d0a4927e35cded386db1808d1e5d8e017","ssdeep":"","tlshash":"fbf02d135782b7b2d04a560b50cf628806b2c032ec5acc8f1a33e2b40cb888a209af85","size":621,"data":"","first_seen":"2026-07-25T07:02:54.169445Z","last_seen":"2026-07-27T07:00:44.964235Z","times_seen":498,"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.11","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-27T07:05:43.369921Z","times_seen":6394,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"506062df458617a6bfdd35a3fbd41c54","sha1":"7e7395752c17ceee179c6a6ac0cdc54a44401c6b","sha256":"a7e4c6a4faba5d54fbf9e416b44f1e4c26d60946ee542ea3510b95b0c146e6a4","sha512":"e0aa46183e606b4bd2eac6695caecce85498b80a41894bc26fd6dfa2a7db92c78f9e69349df0daf41d79df5a8d1f95c5aef07047e4231252f0eaa123daf3d096","ssdeep":"","tlshash":"cff08bd487010de8b201bce92deb3464927f89133c503009ba12a21a5234f4d945b82d","size":540,"data":"","first_seen":"2026-07-25T07:02:54.146382Z","last_seen":"2026-07-27T07:00:45.019491Z","times_seen":503,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"e3853dd21d7b37c8e001cbeb80def269","sha1":"22eab5e6d95c0a758b5105a2ca285550e4ddf4c0","sha256":"739c47988f1b9658cc13de9f615b8e5dcd2976ae3baf5442f36d6cdb7646b1a2","sha512":"186172b3a889c4e9dc3598d3d92d43b10144f04dcf14ecb3bcc6b6d6f45448caa601ab93a2b550bd7bf82f6a1905efccb9cabc88da9b70873a953a5ee0fe8660","ssdeep":"","tlshash":"4ef02d4235828222c02270af50bb60ce00b2c261af6b8e4e8a3292d15cea48a40c6f89","size":627,"data":"","first_seen":"2026-07-25T07:02:54.196783Z","last_seen":"2026-07-27T07:00:44.981605Z","times_seen":501,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.072963Z","times_seen":190706,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/61495.37ee7d182cf84caa7681.js","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"introduction_type":"scriptElement","is_inline":false,"md5":"1101547aa0a5f1429817d5e491a4287b","sha1":"0bb8f75c93fe64e583a0bc2f0859ff602e1d94a7","sha256":"1f91a265530e9f4142c3b135c93094b7746dba4d3ff42b4ba49d8690c98c7597","sha512":"9f661d05439bbe5f87c7b8580707ce9d517a82a994773de68693c0ba9d653c3bf2565b248d08253aecfc1781e4706198fc30eab02cf96336de418992131d8497","ssdeep":"768:VbtJRlpt8ZUxC6nEFMQQE0rmtel4/0Q+xg23ba1Sj7Fk+1/1NB2VVR4m:VbtvCZLu/004/7+Gsba1SaU2F","tlshash":"cbe2e55632357a3601ef508b58fb0043e23a64486114992dfc7cdeec6ebdd8a623657f","size":32657,"data":"","first_seen":"2026-07-25T03:24:57.451516Z","last_seen":"2026-07-27T07:14:43.764741Z","times_seen":132,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"d224d956791813697309740c0fbcd15e","sha1":"2418655004b5f0f64a6e4075cb8ac4b53444421d","sha256":"48c035187614ea92c5bf66cec55cf8a9a0a30eaabd1bfd51234d0d5e44c93d65","sha512":"c1005f866f7b788b9fd04d3374ef4405bbadde272bf42c4bd0f8cf942bf1e9f6ebd13d50284f2eb5da4e5fd783c16dd4ef54f7e24e8eaf62496d2e744ffe13eb","ssdeep":"","tlshash":"ea8000083e08ae00800238a0280bc008c832003a0c20880000c800a80cbe02e020282a","size":26,"data":"","first_seen":"2026-07-25T07:02:54.182324Z","last_seen":"2026-07-27T07:00:45.02827Z","times_seen":515,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"06940d1ec461f6967164c26d60cbaefc","sha1":"2dd63cac632d95db488d6221109b5f3f932c9999","sha256":"c9f3959e3d485cc26bd83a108824fe7039921005faa810892c704386b9572acd","sha512":"4abc10cb04a87ffa25293243f9bb9d4498d4a1acebe89e239cdc92058d9f491da6b5de3ea698c856e62b3153c7d006aa340ee50912e29f019752453976fce2bb","ssdeep":"","tlshash":"ebb01224281de61233322ef080131d2c603b4402424f551ec44ce5c2032c0ce80475eb","size":96,"data":"","first_seen":"2026-07-25T07:02:54.115267Z","last_seen":"2026-07-27T07:00:44.990278Z","times_seen":507,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"df4ecf2995d9a4760b6fe2b232d66a91","sha1":"21dfc49632cd521980c8fd611315a62037b83142","sha256":"1d0ddd4ea3351d60237f5374532c094863db8fee5d00fdbb477612c30630d16e","sha512":"3f1e696cd9e7f7b05b35195d7967fa6fe8332b9e921ed3077b855283e083ddb38d878f6509353e11b40c8e9f2e2799dd820e790ec46ebe93a9da31576028c336","ssdeep":"","tlshash":"9ee07d68664571642f929e46868eba88d68a404dc071c9022629d0c00c745e4903de81","size":305,"data":"","first_seen":"2026-07-25T07:02:54.190462Z","last_seen":"2026-07-27T07:00:45.022381Z","times_seen":500,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.037467Z","times_seen":235038,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.066954Z","times_seen":176055,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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-27T07:05:43.04414Z","times_seen":201763,"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"introduction_type":"eval","is_inline":false,"md5":"909822438f3880445c5535efb48b46d9","sha1":"00685c680d8f0bfb3dda3154539bb972552fd921","sha256":"894963ac612d3c872d00cfc1a926c6f034036e99512409f06342bff53d723689","sha512":"ce5816d0da41ef048fbcd158120239337d58bf594db8b7deff493beb436c5319220f1b01ea03fd9f4b755b4fd43155f23271e1e27078167041feb5c9a784699f","ssdeep":"","tlshash":"f9c08cd873b61824c2809a73a03b46a1a88ba69c98094440e220f9a9763030d082faa5","size":156,"data":"","first_seen":"2026-07-25T07:02:54.13346Z","last_seen":"2026-07-27T07:00:45.030115Z","times_seen":506,"alerts":{"ids":null,"analyzer":null,"urlquery":null}}],"eval":null,"write":null,"console":[{"level":"log","text":"[cycle] terminating; zero elements found by selector","filename":"https://besttrader.live/js/jquery.cycle.all.js","line_number":14,"column_number":11}]},"http":[{"url":{"schema":"https","addr":"www.youtube.com/embed/Gc2en3nHxA4","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.4","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"subdocument","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.667Z","timestamp":1785126256667,"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/Gc2en3nHxA4 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://besttrader.live/\r\nUpgrade-Insecure-Requests: 1\r\nSec-Fetch-Dest: iframe\r\nSec-Fetch-Mode: navigate\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\ncontent-type: text/html; charset=utf-8\r\nx-content-type-options: nosniff\r\ncontent-security-policy: script-src 'unsafe-eval' 'self' 'unsafe-inline' https://www.google.com https://apis.google.com https://ssl.gstatic.com https://www.gstatic.com https://www.googletagmanager.com https://www.google-analytics.com https://*.youtube.com https://*.google.com https://*.gstatic.com https://youtube.com https://www.youtube.com https://google.com https://*.doubleclick.net https://*.googleapis.com https://www.googleadservices.com https://tpc.googlesyndication.com https://www.youtubekids.com https://www.youtube-nocookie.com https://www.youtubeeducation.com https://www-onepick-opensocial.googleusercontent.com;report-uri https://csp.withgoogle.com/csp/youtube_main/allowlist, base-uri 'self';object-src 'none';script-src 'nonce-zJbH3TewL1sREcA8B9nfjw' 'unsafe-inline' 'strict-dynamic' https: http: 'unsafe-eval';report-uri https://csp.withgoogle.com/csp/youtube_main/strict, require-trusted-types-for 'script'\r\ncache-control: no-cache, no-store, max-age=0, must-revalidate\r\npragma: no-cache\r\nexpires: Mon, 01 Jan 1990 00:00:00 GMT\r\ndate: Mon, 27 Jul 2026 04:24:16 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-embedder-policy-report-only: require-corp; report-to=\"youtube_main\"\r\norigin-trial: AmhMBR6zCLzDDxpW+HfpP67BqwIknWnyMOXOQGfzYswFmJe+fgaI6XZgAzcxOrzNtP7hEDsOo1jdjFnVr2IdxQ4AAAB4eyJvcmlnaW4iOiJodHRwczovL3lvdXR1YmUuY29tOjQ0MyIsImZlYXR1cmUiOiJXZWJWaWV3WFJlcXVlc3RlZFdpdGhEZXByZWNhdGlvbiIsImV4cGlyeSI6MTc1ODA2NzE5OSwiaXNTdWJkb21haW4iOnRydWV9, AiDEBptUfVeO93q48VdVMe/ubupazdAl8AaHP+NBzdnW8quUcHdzJUyGSfrmtpKJu7EOvwRp9ug2rEo3XU+WMAMAAAB2eyJvcmlnaW4iOiJodHRwczovL3lvdXR1YmUuY29tOjQ0MyIsImZlYXR1cmUiOiJEZXZpY2VCb3VuZFNlc3Npb25DcmVkZW50aWFsczIiLCJleHBpcnkiOjE3NzQzMTA0MDAsImlzU3ViZG9tYWluIjp0cnVlfQ==\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\ncross-origin-resource-policy: cross-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\ncontent-encoding: br\r\nserver: ESF\r\nx-xss-protection: 0\r\nset-cookie: __Secure-YNID=20.YT=E5bZH_lP1NArLG48t6lRj9oeecW0xyEFe9u0ebWOb-g-_JffSEAYD96vgiz84ztWu4jL2Qub3iqTQ2XsVrmUelh8bL2Z51wNDSmop6dn1VykM86DS3aVeEn7QG8EY9Ml3wvuvcssa43xkqpG8yaId8urAjrXhYEfGQpbtjPMaEJoztxh0chYc1U5XnLeSKOglaDLkUb_VvEZq4QcOK6PKm2QcEJ7YaKMvNNnRY4v3GMNcZEy2NrRIXXQEQI5D8IEV_am0BM4s0b23dnIOVfMyNQVyW0u7xAK0Ni0sYaQe1TWl0KmDEjJm310XaYqlpGcnfGpZpknLRrb4GiekJ28gg; expires=Sat, 23-Jan-2027 04:24:16 GMT; path=/; domain=.youtube.com; Secure; HttpOnly; SameSite=none\nYSC=nYVVApPxeLY; Domain=.youtube.com; Path=/; Secure; HttpOnly; SameSite=none\n__Secure-ROLLOUT_TOKEN=CL_qp-jW2sbDnwEQ_4Clw4HylQMY_4Clw4HylQM%3D; Domain=youtube.com; Expires=Sat, 23-Jan-2027 04:24:16 GMT; Path=/; Secure; HttpOnly; SameSite=none; Partitioned\n__Secure-YEC=; Domain=.youtube.com; Expires=Tue, 31-Oct-2023 04:24:16 GMT; Path=/; Secure; HttpOnly; SameSite=lax\nVISITOR_INFO1_LIVE=8BWjCSfd-OY; Domain=.youtube.com; Expires=Sat, 23-Jan-2027 04:24:16 GMT; Path=/; Secure; HttpOnly; SameSite=none\nVISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgGA%3D%3D; Domain=.youtube.com; Expires=Sat, 23-Jan-2027 04:24:16 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":142724,"size_decoded":59822,"mime_type":"text/html; charset=utf-8","magic":"HTML document, ASCII text, with very long lines (52140)","md5":"d745ac30739978c67fe2548d4f795557","sha1":"e77be02c945b9c7d9b9ef67776870d8d6ce83c98","sha256":"c4ad2016c4117bcbe59610aea999015ff4aa43b7a388fdebf581362da4be2922","sha512":"fbfe1d5129efd794031ae6b2a9274ce5bb8e2fe8fc9332d6f135c2c42fbb875373fb1535a63527da4750da5d2c33f884e93f8f5e213b0257743c5fdfecb62b65","ssdeep":"1536:3MQbrnQMkzYVM6bBUzh3/GFo43UEwgN2zT0/K/GSsZc6MfS/1EOIh87jUW:nbzQbYYPGF0EwgS0/KrJ8TICR","tlshash":"abd31a240868a876c9939547eebaff3e9cf8023907c9956dbcbb935c01dd6510eaf413","first_seen":"2026-07-27T04:25:12.589177Z","last_seen":"2026-07-27T04:25:12.589177Z","times_seen":1,"resource_available":false,"data":"PCFET0NUWVBFIGh0bWw+PGh0bWwgbGFuZz0iZW4iIGRpcj0ibHRyIiBkYXRhLWNhc3QtYXBpLWVuYWJsZWQ9InRydWUiPjxoZWFkPjxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSI+PHNjcmlwdCBub25jZT0iekpiSDNUZXdMMXNSRWNBOEI5bmZqdyI+aWYgKCd1bmRlZmluZWQnID09IHR5cGVvZiBTeW1ib2wgfHwgJ3VuZGVmaW5lZCcgPT0gdHlwZW9mIFN5bWJvbC5pdGVyYXRvcikge2RlbGV0ZSBBcnJheS5wcm90b3R5cGUuZW50cmllczt9PC9zY3JpcHQ+PHN0eWxlIG5hbWU9Ind3dy1yb2JvdG8iIG5vbmNlPSIzczV2dkVETzJyck11ZDNpc2U1eEl3Ij5AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYTNHVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswNDYwLTA1MkYsVSsxQzgwLTFDOEEsVSsyMEI0LFUrMkRFMC0yREZGLFUrQTY0MC1BNjlGLFUrRkUyRS1GRTJGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYTNpVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMzAxLFUrMDQwMC0wNDVGLFUrMDQ5MC0wNDkxLFUrMDRCMC0wNEIxLFUrMjExNjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzQ1VCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMUYwMC0xRkZGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYTMtVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMzcwLTAzNzcsVSswMzdBLTAzN0YsVSswMzg0LTAzOEEsVSswMzhDLFUrMDM4RS0wM0ExLFUrMDNBMy0wM0ZGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYXdDVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMzAyLTAzMDMsVSswMzA1LFUrMDMwNy0wMzA4LFUrMDMxMCxVKzAzMTIsVSswMzE1LFUrMDMxQSxVKzAzMjYtMDMyNyxVKzAzMkMsVSswMzJGLTAzMzAsVSswMzMyLTAzMzMsVSswMzM4LFUrMDMzQSxVKzAzNDYsVSswMzRELFUrMDM5MS0wM0ExLFUrMDNBMy0wM0E5LFUrMDNCMS0wM0M5LFUrMDNEMSxVKzAzRDUtMDNENixVKzAzRjAtMDNGMSxVKzAzRjQtMDNGNSxVKzIwMTYtMjAxNyxVKzIwMzQtMjAzOCxVKzIwM0MsVSsyMDQwLFUrMjA0MyxVKzIwNDcsVSsyMDUwLFUrMjA1NyxVKzIwNUYsVSsyMDcwLTIwNzEsVSsyMDc0LTIwOEUsVSsyMDkwLTIwOUMsVSsyMEQwLTIwREMsVSsyMEUxLFUrMjBFNS0yMEVGLFUrMjEwMC0yMTEyLFUrMjExNC0yMTE1LFUrMjExNy0yMTIxLFUrMjEyMy0yMTRGLFUrMjE5MCxVKzIxOTIsVSsyMTk0LTIxQUUsVSsyMUIwLTIxRTUsVSsyMUYxLTIxRjIsVSsyMUY0LTIyMTEsVSsyMjEzLTIyMTQsVSsyMjE2LTIyRkYsVSsyMzA4LTIzMEIsVSsyMzEwLFUrMjMxOSxVKzIzMUMtMjMyMSxVKzIzMzYtMjM3QSxVKzIzN0MsVSsyMzk1LFUrMjM5Qi0yM0I3LFUrMjNEMCxVKzIzREMtMjNFMSxVKzI0NzQtMjQ3NSxVKzI1QUYsVSsyNUIzLFUrMjVCNyxVKzI1QkQsVSsyNUMxLFUrMjVDQSxVKzI1Q0MsVSsyNUZCLFUrMjY2RC0yNjZGLFUrMjdDMC0yN0ZGLFUrMjkwMC0yQUZGLFUrMkIwRS0yQjExLFUrMkIzMC0yQjRDLFUrMkJGRSxVKzMwMzAsVStGRjVCLFUrRkY1RCxVKzFENDAwLTFEN0ZGLFUrMUVFMDAtMUVFRkY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtc3RyZXRjaDoxMDAlO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92NDgvS0ZPN0NucUV1OTJGcjFNRTdrU242NmFHTGRUeWxVQU1heEtVQkdFZS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzAwMDEtMDAwQyxVKzAwMEUtMDAxRixVKzAwN0YtMDA5RixVKzIwREQtMjBFMCxVKzIwRTItMjBFNCxVKzIxNTAtMjE4RixVKzIxOTAsVSsyMTkyLFUrMjE5NC0yMTk5LFUrMjFBRixVKzIxRTYtMjFGMCxVKzIxRjMsVSsyMjE4LTIyMTksVSsyMjk5LFUrMjJDNC0yMkM2LFUrMjMwMC0yNDNGLFUrMjQ0MC0yNDRBLFUrMjQ2MC0yNEZGLFUrMjVBMC0yN0JGLFUrMjgwMC0yOEZGLFUrMjkyMS0yOTIyLFUrMjk4MSxVKzI5QkYsVSsyOUVCLFUrMkIwMC0yQkZGLFUrNERDMC00REZGLFUrRkZGOS1GRkZCLFUrMTAxNDAtMTAxOEUsVSsxMDE5MC0xMDE5QyxVKzEwMUEwLFUrMTAxRDAtMTAxRkQsVSsxMDJFMC0xMDJGQixVKzEwRTYwLTEwRTdFLFUrMUQyQzAtMUQyRDMsVSsxRDJFMC0xRDM3RixVKzFGMDAwLTFGMEZGLFUrMUYxMDAtMUYxQUQsVSsxRjFFNi0xRjFGRixVKzFGMzBELTFGMzBGLFUrMUYzMTUsVSsxRjMxQyxVKzFGMzFFLFUrMUYzMjAtMUYzMkMsVSsxRjMzNixVKzFGMzc4LFUrMUYzN0QsVSsxRjM4MixVKzFGMzkzLTFGMzlGLFUrMUYzQTctMUYzQTgsVSsxRjNBQy0xRjNBRixVKzFGM0MyLFUrMUYzQzQtMUYzQzYsVSsxRjNDQS0xRjNDRSxVKzFGM0Q0LTFGM0UwLFUrMUYzRUQsVSsxRjNGMS0xRjNGMyxVKzFGM0Y1LTFGM0Y3LFUrMUY0MDgsVSsxRjQxNSxVKzFGNDFGLFUrMUY0MjYsVSsxRjQzRixVKzFGNDQxLTFGNDQyLFUrMUY0NDQsVSsxRjQ0Ni0xRjQ0OSxVKzFGNDRDLTFGNDRFLFUrMUY0NTMsVSsxRjQ2QSxVKzFGNDdELFUrMUY0QTMsVSsxRjRCMCxVKzFGNEIzLFUrMUY0QjksVSsxRjRCQixVKzFGNEJGLFUrMUY0QzgtMUY0Q0IsVSsxRjRENixVKzFGNERBLFUrMUY0REYsVSsxRjRFMy0xRjRFNixVKzFGNEVBLTFGNEVELFUrMUY0RjcsVSsxRjRGOS0xRjRGQixVKzFGNEZELTFGNEZFLFUrMUY1MDMsVSsxRjUwNy0xRjUwQixVKzFGNTBELFUrMUY1MTItMUY1MTMsVSsxRjUzRS0xRjU0QSxVKzFGNTRGLTFGNUZBLFUrMUY2MTAsVSsxRjY1MC0xRjY3RixVKzFGNjg3LFUrMUY2OEQsVSsxRjY5MSxVKzFGNjk0LFUrMUY2OTgsVSsxRjZBRCxVKzFGNkIyLFUrMUY2QjktMUY2QkEsVSsxRjZCQyxVKzFGNkM2LTFGNkNGLFUrMUY2RDMtMUY2RDcsVSsxRjZFMC0xRjZFQSxVKzFGNkYwLTFGNkYzLFUrMUY2RjctMUY2RkMsVSsxRjcwMC0xRjdGRixVKzFGODAwLTFGODBCLFUrMUY4MTAtMUY4NDcsVSsxRjg1MC0xRjg1OSxVKzFGODYwLTFGODg3LFUrMUY4OTAtMUY4QUQsVSsxRjhCMC0xRjhCQixVKzFGOEMwLTFGOEMxLFUrMUY5MDAtMUY5MEIsVSsxRjkzQixVKzFGOTQ2LFUrMUY5ODQsVSsxRjk5NixVKzFGOUU5LFUrMUZBMDAtMUZBNkYsVSsxRkE3MC0xRkE3QyxVKzFGQTgwLTFGQTg5LFUrMUZBOEYtMUZBQzYsVSsxRkFDRS0xRkFEQyxVKzFGQURGLTFGQUU5LFUrMUZBRjAtMUZBRjgsVSsxRkIwMC0xRkJGRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzT1VCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDEwMi0wMTAzLFUrMDExMC0wMTExLFUrMDEyOC0wMTI5LFUrMDE2OC0wMTY5LFUrMDFBMC0wMUExLFUrMDFBRi0wMUIwLFUrMDMwMC0wMzAxLFUrMDMwMy0wMzA0LFUrMDMwOC0wMzA5LFUrMDMyMyxVKzAzMjksVSsxRUEwLTFFRjksVSsyMEFCO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYTNLVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMTAwLTAyQkEsVSswMkJELTAyQzUsVSswMkM3LTAyQ0MsVSswMkNFLTAyRDcsVSswMkRELTAyRkYsVSswMzA0LFUrMDMwOCxVKzAzMjksVSsxRDAwLTFEQkYsVSsxRTAwLTFFOUYsVSsxRUYyLTFFRkYsVSsyMDIwLFUrMjBBMC0yMEFCLFUrMjBBRC0yMEMwLFUrMjExMyxVKzJDNjAtMkM3RixVK0E3MjAtQTdGRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzeVVCQS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzAwMDAtMDBGRixVKzAxMzEsVSswMTUyLTAxNTMsVSswMkJCLTAyQkMsVSswMkM2LFUrMDJEQSxVKzAyREMsVSswMzA0LFUrMDMwOCxVKzAzMjksVSsyMDAwLTIwNkYsVSsyMEFDLFUrMjEyMixVKzIxOTEsVSsyMTkzLFUrMjIxMixVKzIyMTUsVStGRUZGLFUrRkZGRDt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzR1VCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDQ2MC0wNTJGLFUrMUM4MC0xQzhBLFUrMjBCNCxVKzJERTAtMkRGRixVK0E2NDAtQTY5RixVK0ZFMkUtRkUyRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzaVVCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDMwMSxVKzA0MDAtMDQ1RixVKzA0OTAtMDQ5MSxVKzA0QjAtMDRCMSxVKzIxMTY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtc3RyZXRjaDoxMDAlO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92NDgvS0ZPN0NucUV1OTJGcjFNRTdrU242NmFHTGRUeWxVQU1hM0NVQkdFZS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzFGMDAtMUZGRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzLVVCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDM3MC0wMzc3LFUrMDM3QS0wMzdGLFUrMDM4NC0wMzhBLFUrMDM4QyxVKzAzOEUtMDNBMSxVKzAzQTMtMDNGRjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWF3Q1VCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDMwMi0wMzAzLFUrMDMwNSxVKzAzMDctMDMwOCxVKzAzMTAsVSswMzEyLFUrMDMxNSxVKzAzMUEsVSswMzI2LTAzMjcsVSswMzJDLFUrMDMyRi0wMzMwLFUrMDMzMi0wMzMzLFUrMDMzOCxVKzAzM0EsVSswMzQ2LFUrMDM0RCxVKzAzOTEtMDNBMSxVKzAzQTMtMDNBOSxVKzAzQjEtMDNDOSxVKzAzRDEsVSswM0Q1LTAzRDYsVSswM0YwLTAzRjEsVSswM0Y0LTAzRjUsVSsyMDE2LTIwMTcsVSsyMDM0LTIwMzgsVSsyMDNDLFUrMjA0MCxVKzIwNDMsVSsyMDQ3LFUrMjA1MCxVKzIwNTcsVSsyMDVGLFUrMjA3MC0yMDcxLFUrMjA3NC0yMDhFLFUrMjA5MC0yMDlDLFUrMjBEMC0yMERDLFUrMjBFMSxVKzIwRTUtMjBFRixVKzIxMDAtMjExMixVKzIxMTQtMjExNSxVKzIxMTctMjEyMSxVKzIxMjMtMjE0RixVKzIxOTAsVSsyMTkyLFUrMjE5NC0yMUFFLFUrMjFCMC0yMUU1LFUrMjFGMS0yMUYyLFUrMjFGNC0yMjExLFUrMjIxMy0yMjE0LFUrMjIxNi0yMkZGLFUrMjMwOC0yMzBCLFUrMjMxMCxVKzIzMTksVSsyMzFDLTIzMjEsVSsyMzM2LTIzN0EsVSsyMzdDLFUrMjM5NSxVKzIzOUItMjNCNyxVKzIzRDAsVSsyM0RDLTIzRTEsVSsyNDc0LTI0NzUsVSsyNUFGLFUrMjVCMyxVKzI1QjcsVSsyNUJELFUrMjVDMSxVKzI1Q0EsVSsyNUNDLFUrMjVGQixVKzI2NkQtMjY2RixVKzI3QzAtMjdGRixVKzI5MDAtMkFGRixVKzJCMEUtMkIxMSxVKzJCMzAtMkI0QyxVKzJCRkUsVSszMDMwLFUrRkY1QixVK0ZGNUQsVSsxRDQwMC0xRDdGRixVKzFFRTAwLTFFRUZGO31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OidSb2JvdG8nO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjUwMDtmb250LXN0cmV0Y2g6MTAwJTtzcmM6dXJsKC8vZm9udHMuZ3N0YXRpYy5jb20vcy9yb2JvdG8vdjQ4L0tGTzdDbnFFdTkyRnIxTUU3a1NuNjZhR0xkVHlsVUFNYXhLVUJHRWUud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMDAxLTAwMEMsVSswMDBFLTAwMUYsVSswMDdGLTAwOUYsVSsyMERELTIwRTAsVSsyMEUyLTIwRTQsVSsyMTUwLTIxOEYsVSsyMTkwLFUrMjE5MixVKzIxOTQtMjE5OSxVKzIxQUYsVSsyMUU2LTIxRjAsVSsyMUYzLFUrMjIxOC0yMjE5LFUrMjI5OSxVKzIyQzQtMjJDNixVKzIzMDAtMjQzRixVKzI0NDAtMjQ0QSxVKzI0NjAtMjRGRixVKzI1QTAtMjdCRixVKzI4MDAtMjhGRixVKzI5MjEtMjkyMixVKzI5ODEsVSsyOUJGLFUrMjlFQixVKzJCMDAtMkJGRixVKzREQzAtNERGRixVK0ZGRjktRkZGQixVKzEwMTQwLTEwMThFLFUrMTAxOTAtMTAxOUMsVSsxMDFBMCxVKzEwMUQwLTEwMUZELFUrMTAyRTAtMTAyRkIsVSsxMEU2MC0xMEU3RSxVKzFEMkMwLTFEMkQzLFUrMUQyRTAtMUQzN0YsVSsxRjAwMC0xRjBGRixVKzFGMTAwLTFGMUFELFUrMUYxRTYtMUYxRkYsVSsxRjMwRC0xRjMwRixVKzFGMzE1LFUrMUYzMUMsVSsxRjMxRSxVKzFGMzIwLTFGMzJDLFUrMUYzMzYsVSsxRjM3OCxVKzFGMzdELFUrMUYzODIsVSsxRjM5My0xRjM5RixVKzFGM0E3LTFGM0E4LFUrMUYzQUMtMUYzQUYsVSsxRjNDMixVKzFGM0M0LTFGM0M2LFUrMUYzQ0EtMUYzQ0UsVSsxRjNENC0xRjNFMCxVKzFGM0VELFUrMUYzRjEtMUYzRjMsVSsxRjNGNS0xRjNGNyxVKzFGNDA4LFUrMUY0MTUsVSsxRjQxRixVKzFGNDI2LFUrMUY0M0YsVSsxRjQ0MS0xRjQ0MixVKzFGNDQ0LFUrMUY0NDYtMUY0NDksVSsxRjQ0Qy0xRjQ0RSxVKzFGNDUzLFUrMUY0NkEsVSsxRjQ3RCxVKzFGNEEzLFUrMUY0QjAsVSsxRjRCMyxVKzFGNEI5LFUrMUY0QkIsVSsxRjRCRixVKzFGNEM4LTFGNENCLFUrMUY0RDYsVSsxRjREQSxVKzFGNERGLFUrMUY0RTMtMUY0RTYsVSsxRjRFQS0xRjRFRCxVKzFGNEY3LFUrMUY0RjktMUY0RkIsVSsxRjRGRC0xRjRGRSxVKzFGNTAzLFUrMUY1MDctMUY1MEIsVSsxRjUwRCxVKzFGNTEyLTFGNTEzLFUrMUY1M0UtMUY1NEEsVSsxRjU0Ri0xRjVGQSxVKzFGNjEwLFUrMUY2NTAtMUY2N0YsVSsxRjY4NyxVKzFGNjhELFUrMUY2OTEsVSsxRjY5NCxVKzFGNjk4LFUrMUY2QUQsVSsxRjZCMixVKzFGNkI5LTFGNkJBLFUrMUY2QkMsVSsxRjZDNi0xRjZDRixVKzFGNkQzLTFGNkQ3LFUrMUY2RTAtMUY2RUEsVSsxRjZGMC0xRjZGMyxVKzFGNkY3LTFGNkZDLFUrMUY3MDAtMUY3RkYsVSsxRjgwMC0xRjgwQixVKzFGODEwLTFGODQ3LFUrMUY4NTAtMUY4NTksVSsxRjg2MC0xRjg4NyxVKzFGODkwLTFGOEFELFUrMUY4QjAtMUY4QkIsVSsxRjhDMC0xRjhDMSxVKzFGOTAwLTFGOTBCLFUrMUY5M0IsVSsxRjk0NixVKzFGOTg0LFUrMUY5OTYsVSsxRjlFOSxVKzFGQTAwLTFGQTZGLFUrMUZBNzAtMUZBN0MsVSsxRkE4MC0xRkE4OSxVKzFGQThGLTFGQUM2LFUrMUZBQ0UtMUZBREMsVSsxRkFERi0xRkFFOSxVKzFGQUYwLTFGQUY4LFUrMUZCMDAtMUZCRkY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtc3RyZXRjaDoxMDAlO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92NDgvS0ZPN0NucUV1OTJGcjFNRTdrU242NmFHTGRUeWxVQU1hM09VQkdFZS53b2ZmMilmb3JtYXQoJ3dvZmYyJyk7dW5pY29kZS1yYW5nZTpVKzAxMDItMDEwMyxVKzAxMTAtMDExMSxVKzAxMjgtMDEyOSxVKzAxNjgtMDE2OSxVKzAxQTAtMDFBMSxVKzAxQUYtMDFCMCxVKzAzMDAtMDMwMSxVKzAzMDMtMDMwNCxVKzAzMDgtMDMwOSxVKzAzMjMsVSswMzI5LFUrMUVBMC0xRUY5LFUrMjBBQjt9QGZvbnQtZmFjZXtmb250LWZhbWlseTonUm9ib3RvJztmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo1MDA7Zm9udC1zdHJldGNoOjEwMCU7c3JjOnVybCgvL2ZvbnRzLmdzdGF0aWMuY29tL3Mvcm9ib3RvL3Y0OC9LRk83Q25xRXU5MkZyMU1FN2tTbjY2YUdMZFR5bFVBTWEzS1VCR0VlLndvZmYyKWZvcm1hdCgnd29mZjInKTt1bmljb2RlLXJhbmdlOlUrMDEwMC0wMkJBLFUrMDJCRC0wMkM1LFUrMDJDNy0wMkNDLFUrMDJDRS0wMkQ3LFUrMDJERC0wMkZGLFUrMDMwNCxVKzAzMDgsVSswMzI5LFUrMUQwMC0xREJGLFUrMUUwMC0xRTlGLFUrMUVGMi0xRUZGLFUrMjAyMCxVKzIwQTAtMjBBQixVKzIwQUQtMjBDMCxVKzIxMTMsVSsyQzYwLTJDN0YsVStBNzIwLUE3RkY7fUBmb250LWZhY2V7Zm9udC1mYW1pbHk6J1JvYm90byc7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NTAwO2ZvbnQtc3RyZXRjaDoxMDAlO3NyYzp1cmwoLy9mb250cy5nc3RhdGljLmNvbS9zL3JvYm90by92NDgvS0ZPN0NucUV1OTJGcjFNRTdrU242NmFHTGRUeWxVQU1hM3lVQkEud29mZjIpZm9ybWF0KCd3b2ZmMicpO3VuaWNvZGUtcmFuZ2U6VSswMDAwLTAwRkYsVSswMTMxLFUrMDE1Mi0wMTUzLFUrMDJCQi0wMkJDLFUrMDJDNixVKzAyREEsVSswMkRDLFUrMDMwNCxVKzAzMDgsVSswMzI5LFUrMjAwMC0yMDZGLFUrMjBBQyxVKzIxMjIsVSsyMTkxLFUrMjE5MyxVKzIyMTIsVSsyMjE1LFUrRkVGRixVK0ZGRkQ7fTwvc3R5bGU+PHNjcmlwdCBuYW1lPSJ3d3ctcm9ib3RvIiBub25jZT0iekpiSDNUZXdMMXNSRWNBOEI5bmZqdyI+aWYgKGRvY3VtZW50LmZvbnRzICYmIGRvY3VtZW50LmZvbnRzLmxvYWQpIHtkb2N1bWVudC5mb250cy5sb2FkKCI0MDAgMTBwdCBSb2JvdG8iLCAiRSIpOyBkb2N1bWVudC5mb250cy5sb2FkKCI1MDAgMTBwdCBSb2JvdG8iLCAiRSIpO308L3NjcmlwdD48bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii9zL3BsYXllci83YTc5NjljMi93d3ctcGxheWVyLmNzcyIgbmFtZT0id3d3LXBsYXllciIgbm9uY2U9IjNzNXZ2RURPMnJyTXVkM2lzZTV4SXciPjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iL3MvXy95dGVtYmVkcy9fL3NzL2s9eXRlbWJlZHMuYmFzZS5OeG5pdXVaRVRady5MLkY0Lk8vYW09QUFBQWdBL2Q9MC9icj0xL3JzPUFHS015d0d4NHR4aEZKaGNydXRLWXNmUG1TNG1GYzZvSlEiIG5hbWU9ImVtYmVkLXVpIiBub25jZT0iM3M1dnZFRE8ycnJNdWQzaXNlNXhJdyI+PHN0eWxlIG5vbmNlPSIzczV2dkVETzJyck11ZDNpc2U1eEl3Ij5odG1sIHtvdmVyZmxvdzogaGlkZGVuO31ib2R5IHtmb250OiAxMnB4IFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGNvbG9yOiAjZmZmOyBoZWlnaHQ6IDEwMCU7IHdpZHRoOiAxMDAlOyBvdmVyZmxvdzogaGlkZGVuOyBwb3NpdGlvbjogYWJzb2x1dGU7IG1hcmdpbjogMDsgcGFkZGluZzogMDt9I3BsYXllciB7d2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTt9aDEge3RleHQtYWxpZ246IGNlbnRlcjsgY29sb3I6ICNmZmY7fWgzIHttYXJnaW4tdG9wOiA2cHg7IG1hcmdpbi1ib3R0b206IDNweDt9LnBsYXllci11bmF2YWlsYWJsZSB7cG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IHJpZ2h0OiAwOyBib3R0b206IDA7IHBhZGRpbmc6IDI1cHg7IGZvbnQtc2l6ZTogMTNweDsgYmFja2dyb3VuZDogdXJsKC9pbWcvbWVoNy5wbmcpIDUwJSA2NSUgbm8tcmVwZWF0O30ucGxheWVyLXVuYXZhaWxhYmxlIC5tZXNzYWdlIHt0ZXh0LWFsaWduOiBsZWZ0OyBtYXJnaW46IDAgLTVweCAxNXB4OyBwYWRkaW5nOiAwIDVweCAxNHB4OyBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzg4ODsgZm9udC1zaXplOiAxOXB4OyBmb250LXdlaWdodDogbm9ybWFsO30ucGxheWVyLXVuYXZhaWxhYmxlIGEge2NvbG9yOiAjMTY3YWM2OyB0ZXh0LWRlY29yYXRpb246IG5vbmU7fTwvc3R5bGU+PHNjcmlwdCBub25jZT0iekpiSDNUZXdMMXNSRWNBOEI5bmZqdyI+dmFyIHl0Y3NpPXtndDpmdW5jdGlvbihuKXtuPShufHwiIikrImRhdGFfIjtyZXR1cm4geXRjc2lbbl18fCh5dGNzaVtuXT17dGljazp7fSxpbmZvOnt9LGdlbDp7cHJlTG9nZ2VkR2VsSW5mb3M6W119fSl9LG5vdzp3aW5kb3cucGVyZm9ybWFuY2UmJndpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcmJndpbmRvdy5wZXJmb3JtYW5jZS5ub3cmJndpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcubmF2aWdhdGlvblN0YXJ0P2Z1bmN0aW9uKCl7cmV0dXJuIHdpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcubmF2aWdhdGlvblN0YXJ0K3dpbmRvdy5wZXJmb3JtYW5jZS5ub3coKX06ZnVuY3Rpb24oKXtyZXR1cm4obmV3IERhdGUpLmdldFRpbWUoKX0sdGljazpmdW5jdGlvbihsLHQsbil7dmFyIHRpY2tzPXl0Y3NpLmd0KG4pLnRpY2s7dmFyIHY9dHx8eXRjc2kubm93KCk7aWYodGlja3NbbF0pe3RpY2tzWyJfIitsXT10aWNrc1siXyIrbF18fFt0aWNrc1tsXV07dGlja3NbIl8iK2xdLnB1c2godil9dGlja3NbbF09CnZ9LGluZm86ZnVuY3Rpb24oayx2LG4pe3l0Y3NpLmd0KG4pLmluZm9ba109dn0saW5mb0dlbDpmdW5jdGlvbihwLG4pe3l0Y3NpLmd0KG4pLmdlbC5wcmVMb2dnZWRHZWxJbmZvcy5wdXNoKHApfSxzZXRTdGFydDpmdW5jdGlvbih0LG4pe3l0Y3NpLnRpY2soIl9zdGFydCIsdCxuKX19OwooZnVuY3Rpb24odyxkKXtmdW5jdGlvbiBpc0dlY2tvKCl7aWYoIXcubmF2aWdhdG9yKXJldHVybiBmYWxzZTt0cnl7aWYody5uYXZpZ2F0b3IudXNlckFnZW50RGF0YSYmdy5uYXZpZ2F0b3IudXNlckFnZW50RGF0YS5icmFuZHMmJncubmF2aWdhdG9yLnVzZXJBZ2VudERhdGEuYnJhbmRzLmxlbmd0aCl7dmFyIGJyYW5kcz13Lm5hdmlnYXRvci51c2VyQWdlbnREYXRhLmJyYW5kczt2YXIgaT0wO2Zvcig7aTxicmFuZHMubGVuZ3RoO2krKylpZihicmFuZHNbaV0mJmJyYW5kc1tpXS5icmFuZD09PSJGaXJlZm94IilyZXR1cm4gdHJ1ZTtyZXR1cm4gZmFsc2V9fWNhdGNoKGUpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXt0aHJvdyBlO30pfWlmKCF3Lm5hdmlnYXRvci51c2VyQWdlbnQpcmV0dXJuIGZhbHNlO3ZhciB1YT13Lm5hdmlnYXRvci51c2VyQWdlbnQ7cmV0dXJuIHVhLmluZGV4T2YoIkdlY2tvIik+MCYmdWEudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJ3ZWJraXQiKTwwJiZ1YS5pbmRleE9mKCJFZGdlIik8CjAmJnVhLmluZGV4T2YoIlRyaWRlbnQiKTwwJiZ1YS5pbmRleE9mKCJNU0lFIik8MH15dGNzaS5zZXRTdGFydCh3LnBlcmZvcm1hbmNlP3cucGVyZm9ybWFuY2UudGltaW5nLnJlc3BvbnNlU3RhcnQ6bnVsbCk7dmFyIGlzUHJlcmVuZGVyPShkLnZpc2liaWxpdHlTdGF0ZXx8ZC53ZWJraXRWaXNpYmlsaXR5U3RhdGUpPT0icHJlcmVuZGVyIjt2YXIgdk5hbWU9IWQudmlzaWJpbGl0eVN0YXRlJiZkLndlYmtpdFZpc2liaWxpdHlTdGF0ZT8id2Via2l0dmlzaWJpbGl0eWNoYW5nZSI6InZpc2liaWxpdHljaGFuZ2UiO2lmKGlzUHJlcmVuZGVyKXt2YXIgc3RhcnRUaWNrPWZ1bmN0aW9uKCl7eXRjc2kuc2V0U3RhcnQoKTtkLnJlbW92ZUV2ZW50TGlzdGVuZXIodk5hbWUsc3RhcnRUaWNrKX07ZC5hZGRFdmVudExpc3RlbmVyKHZOYW1lLHN0YXJ0VGljayxmYWxzZSl9aWYoZC5hZGRFdmVudExpc3RlbmVyKWQuYWRkRXZlbnRMaXN0ZW5lcih2TmFtZSxmdW5jdGlvbigpe3l0Y3NpLnRpY2soInZjIil9LApmYWxzZSk7aWYoaXNHZWNrbygpKXt2YXIgaXNIaWRkZW49KGQudmlzaWJpbGl0eVN0YXRlfHxkLndlYmtpdFZpc2liaWxpdHlTdGF0ZSk9PSJoaWRkZW4iO2lmKGlzSGlkZGVuKXl0Y3NpLnRpY2soInZjIil9dmFyIHNsdD1mdW5jdGlvbihlbCx0KXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dmFyIG49eXRjc2kubm93KCk7ZWwubG9hZFRpbWU9bjtpZihlbC5zbHQpZWwuc2x0KCl9LHQpfTt3Ll9feXRSSUw9ZnVuY3Rpb24oZWwpe2lmKCFlbC5nZXRBdHRyaWJ1dGUoImRhdGEtdGh1bWIiKSlpZih3LnJlcXVlc3RBbmltYXRpb25GcmFtZSl3LnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe3NsdChlbCwwKX0pO2Vsc2Ugc2x0KGVsLDE2KX19KSh3aW5kb3csZG9jdW1lbnQpOwo8L3NjcmlwdD48c2NyaXB0IG5vbmNlPSJ6SmJIM1Rld0wxc1JFY0E4QjluZmp3Ij52YXIgeXRjZmc9e2Q6ZnVuY3Rpb24oKXtyZXR1cm4gd2luZG93Lnl0JiZ5dC5jb25maWdffHx5dGNmZy5kYXRhX3x8KHl0Y2ZnLmRhdGFfPXt9KX0sZ2V0OmZ1bmN0aW9uKGssbyl7cmV0dXJuIGsgaW4geXRjZmcuZCgpP3l0Y2ZnLmQoKVtrXTpvfSxzZXQ6ZnVuY3Rpb24oKXt2YXIgYT1hcmd1bWVudHM7aWYoYS5sZW5ndGg+MSl5dGNmZy5kKClbYVswXV09YVsxXTtlbHNle3ZhciBrO2ZvcihrIGluIGFbMF0peXRjZmcuZCgpW2tdPWFbMF1ba119fX07Cnl0Y2ZnLnNldCh7IkNMSUVOVF9DQU5BUllfU1RBVEUiOiJub25lIiwiREVWSUNFIjoiY2JyXHUwMDNkRmlyZWZveFx1MDAyNmNicnZlclx1MDAzZDEzNC4wXHUwMDI2Y2VuZ1x1MDAzZEdlY2tvXHUwMDI2Y2VuZ3Zlclx1MDAzZDEzNC4wXHUwMDI2Y29zXHUwMDNkV2luZG93c1x1MDAyNmNvc3Zlclx1MDAzZDEwLjBcdTAwMjZjcGxhdGZvcm1cdTAwM2RERVNLVE9QIiwiRVZFTlRfSUQiOiJjTjFtYXItQUxKYmtxN1lQNHA3TnVBMCIsIkVYUEVSSU1FTlRfRkxBR1MiOnsiYWJfZGV0X2FwYl9iIjp0cnVlLCJhYl9kZXRfYXBtIjp0cnVlLCJhYl9kZXRfZWxfaCI6dHJ1ZSwiYWN0aW9uX2NvbXBhbmlvbl9jZW50ZXJfYWxpZ25fZGVzY3JpcHRpb24iOnRydWUsImFsbG93X3NraXBfbmV0d29ya2xlc3MiOnRydWUsImFsd2F5c19zZW5kX2FuZF93cml0ZSI6dHJ1ZSwiYXR0X3dlYl9yZWNvcmRfbWV0cmljcyI6dHJ1ZSwiYXR0bXVzaSI6dHJ1ZSwiYzNfZW5hYmxlX2J1dHRvbl9pbXByZXNzaW9uX2xvZ2dpbmciOnRydWUsImMzX3dhdGNoX3BhZ2VfY29tcG9uZW50Ijp0cnVlLCJjYW5jZWxfcGVuZGluZ19uYXZzIjp0cnVlLCJjbGllbnRfdWlfZW5hYmxlX211bHRpX3RyYWNrX2F1ZGlvX29uX3dlYl9lbWJlZGRlZF9wbGF5ZXIiOnRydWUsImNvbmZpZ19hZ2VfcmVwb3J0X2tpbGxzd2l0Y2giOnRydWUsImNvd19vcHRpbWl6ZV9pZG9tX2NvbXBhdCI6dHJ1ZSwiY3NpX29uX2dlbCI6dHJ1ZSwiZGVkdXBwaW5nX3NlcnZlcl92ZSI6dHJ1ZSwiZGVsaGlfbXdlYl9jb2xvcmZ1bF9zZCI6dHJ1ZSwiZGVsaGlfbXdlYl9jb2xvcmZ1bF9zZF92MiI6dHJ1ZSwiZGVwcmVjYXRlX3BhaXJfc2VydmxldF9lbmFibGVkIjp0cnVlLCJkZXNrdG9wX3NwYXJrbGVzX2xpZ2h0X2N0YV9idXR0b24iOnRydWUsImRpc2FibGVfY2hpbGRfbm9kZV9hdXRvX2Zvcm1hdHRlZF9zdHJpbmdzIjp0cnVlLCJkaXNhYmxlX2xvZ190b192aXNpdG9yX2xheWVyIjp0cnVlLCJkaXNhYmxlX21pbmlfYXBwX2NvbnRhaW5lcl93ZWJfdmlld19pbnNldHMiOnRydWUsImRpc2FibGVfcGFjZl9sb2dnaW5nX2Zvcl9tZW1vcnlfbGltaXRlZF90diI6dHJ1ZSwiZW1iZWRzX2Rlc2t0b2ZmX25vbm1vYmlsZV9lbGlnaWJsZSI6dHJ1ZSwiZW1iZWRzX2Rlc2t0b2ZmX25vbm1vYmlsZV9lbmFibGVkIjp0cnVlLCJlbWJlZHNfZGVza3RvZmZfc2F2ZV91c2VyX3ZvbHVtZSI6dHJ1ZSwiZW1iZWRzX2Rlc2t0b3BfZW5hYmxlX3ZvbHVtZV9zbGlkZXIiOnRydWUsImVtYmVkc19lbmFibGVfY2hhbm5lbF9zdWJzY3JpYmVfZGVwcmVjYXRpb24iOnRydWUsImVtYmVkc19lbmFibGVfZGVsYXlfY29udHJvbHNfaGlkZSI6dHJ1ZSwiZW1iZWRzX2VuYWJsZV9laWRfZW5mb3JjZW1lbnRfZm9yX3lvdXR1YmUiOnRydWUsImVtYmVkc19lbmFibGVfZW1jM2RzX3BmcCI6dHJ1ZSwiZW1iZWRzX211dGVkX2F1dG9wbGF5X3NvdW5kX2ZpeCI6dHJ1ZSwiZW1iZWRzX3NlcnZlX2VzNl9jbGllbnQiOnRydWUsImVtYmVkc193ZWJfdXBkYXRlZF9zaG9ydHNfZGVmaW5pdGlvbl9maXgiOnRydWUsImVuYWJsZV9hMTF5X2ZvY3VzX2ZpeF9mb3JfbWFjX3BhbmVsX29uX2Rlc2t0b3AiOnRydWUsImVuYWJsZV9hY2Nlc3NfY29kZV9zZXJ2aWNlX3JwYyI6dHJ1ZSwiZW5hYmxlX2FjdGl2ZV92aWV3X2Rpc3BsYXlfYWRfcmVuZGVyZXJfd2ViX2hvbWUiOnRydWUsImVuYWJsZV9haV9zZWFyY2hfaW5uZXJ0dWJlX20wX2ZpeGVzIjp0cnVlLCJlbmFibGVfYW5kcm9pZF93ZWJfdmlld190b3BfaW5zZXRzX2J1Z2ZpeCI6dHJ1ZSwiZW5hYmxlX2F0dGVudGlvbl9sb2dnaW5nX21lYXN1cmVfb25fc2hvd24iOnRydWUsImVuYWJsZV9hdV91MTZfdmVyaWZ5X2FnZV9wYWdlIjp0cnVlLCJlbmFibGVfYXV0b21vdGl2ZV9mb3JtX2ZhY3Rvcl9jaGVjayI6dHJ1ZSwiZW5hYmxlX2NsaWVudF9zbGlfbG9nZ2luZyI6dHJ1ZSwiZW5hYmxlX2NsaWVudF9zdHJlYW16X3dlYiI6dHJ1ZSwiZW5hYmxlX2NsaWVudF92ZV9zcGVjIjp0cnVlLCJlbmFibGVfY2xvdWRfc2F2ZV9lcnJvcl9wb3B1cF9hZnRlcl9yZXRyeSI6dHJ1ZSwiZW5hYmxlX2N1c3RvbV9zY3J1YmJlcl92MiI6dHJ1ZSwiZW5hYmxlX2RhaV9zZGZfaDVfcHJlcm9sbCI6dHJ1ZSwiZW5hYmxlX2RhdGFzeW5jX2lkX2hlYWRlcl9pbl93ZWJfdnNzX3BpbmdzIjp0cnVlLCJlbmFibGVfZGVmYXVsdF9tb25vX2N0YV9taWdyYXRpb25fd2ViX2NsaWVudCI6dHJ1ZSwiZW5hYmxlX2RvY2tlZF9jaGF0X21lc3NhZ2VzIjp0cnVlLCJlbmFibGVfZHJvcF9zaGFkb3dfZXhwZXJpbWVudCI6dHJ1ZSwiZW5hYmxlX2VtYmVkc19uZXdfY2FwdGlvbl9sYW5ndWFnZV9waWNrZXIiOnRydWUsImVuYWJsZV9lbmRlbWljX2hpZ2hfY2N2X3NtZWFyaW5nX2g1Ijp0cnVlLCJlbmFibGVfZW50aXR5X3N0b3JlX2Zyb21fZGVwZW5kZW5jeV9pbmplY3Rpb24iOnRydWUsImVuYWJsZV9pbmxpbmVfbXV0ZWRfcGxheWJhY2tfb25fd2ViX3NlYXJjaCI6dHJ1ZSwiZW5hYmxlX2lubGluZV9tdXRlZF9wbGF5YmFja19vbl93ZWJfc2VhcmNoX2Zvcl92ZGMiOnRydWUsImVuYWJsZV9pbmxpbmVfbXV0ZWRfcGxheWJhY2tfb25fd2ViX3NlYXJjaF9mb3JfdmRjYiI6dHJ1ZSwiZW5hYmxlX2xvZ2dpbmdfZmlyc3RfdXNlcl9hY3Rpb25fYWZ0ZXJfZ2FtZV9yZWFkeSI6dHJ1ZSwiZW5hYmxlX2x0Y19wYXJhbV9mZXRjaF9mcm9tX2lubmVydHViZSI6dHJ1ZSwiZW5hYmxlX20wX2xvZ2dpbmdfZml4ZXMiOnRydWUsImVuYWJsZV9tZW51X3JlbmRlcmVyX2J1dHRvbl9pbl9td2ViX2hjbHIiOnRydWUsImVuYWJsZV9taW5pX2FwcF9jb21tYW5kX2hhbmRsZXJfbXdlYl9maXgiOnRydWUsImVuYWJsZV9taW5pX2d1aWRlX2Rvd25sb2Fkc19pdGVtIjp0cnVlLCJlbmFibGVfbWl4ZWRfZGlyZWN0aW9uX2Zvcm1hdHRlZF9zdHJpbmdzIjp0cnVlLCJlbmFibGVfbXdlYl9hdWRpb190cmFja19waWNrZXIiOnRydWUsImVuYWJsZV9td2ViX2tleWJvYXJkX3Nob3J0Y3V0cyI6dHJ1ZSwiZW5hYmxlX25hbWVzX2hhbmRsZXNfYWNjb3VudF9zd2l0Y2hlciI6dHJ1ZSwiZW5hYmxlX25hdGl2ZV9icmlkZ2Vfdmlld19zYXZlZF9wbGF5YWJsZXMiOnRydWUsImVuYWJsZV9uZXR3b3JrX3JlcXVlc3RfbG9nZ2luZ19vbl9nYW1lX2V2ZW50cyI6dHJ1ZSwiZW5hYmxlX25ld19wYWlkX3Byb2R1Y3RfcGxhY2VtZW50Ijp0cnVlLCJlbmFibGVfb3Blbl9pbl9uZXdfdGFiX2ljb25fZm9yX3Nob3J0X2RyX2Zvcl9kZXNrdG9wX3NlYXJjaCI6dHJ1ZSwiZW5hYmxlX29wZW5feXRfY29udGVudCI6dHJ1ZSwiZW5hYmxlX29yaWdpbl9xdWVyeV9wYXJhbWV0ZXJfYnVnZml4Ijp0cnVlLCJlbmFibGVfcGF1c2VfYWRzX29uX3l0dl9odG1sNSI6dHJ1ZSwiZW5hYmxlX3BheW1lbnRzX3B1cmNoYXNlX21hbmFnZXIiOnRydWUsImVuYWJsZV9wZHBfaWNvbl9wcmVmZXRjaCI6dHJ1ZSwiZW5hYmxlX3BsYWNlX3Bpdm90X3VybCI6dHJ1ZSwiZW5hYmxlX3BsYXlhYmxlX2NvbnRhaW5lcl9zYXZlX2J1dHRvbiI6dHJ1ZSwiZW5hYmxlX3BsYXlhYmxlX2VudGl0eV9zYXZlX21lbnVfaXRlbSI6dHJ1ZSwiZW5hYmxlX3B0Y19ob21lX2xvY2F0aW9uX29uX3dlYiI6dHJ1ZSwiZW5hYmxlX3B2X3NjcmVlbl9tb2Rlcm5fdGV4dCI6dHJ1ZSwiZW5hYmxlX3J0YV9tYW5hZ2VyIjp0cnVlLCJlbmFibGVfc2NyZWVuX21hbmFnZXJfbGF5ZXJfc2VwYXJhdGlvbiI6dHJ1ZSwiZW5hYmxlX3NkZl9jb21wYW5pb25faDUiOnRydWUsImVuYWJsZV9zZGZfZGFpX2g1X21pZHJvbGwiOnRydWUsImVuYWJsZV9zZGZfaDVfZW5kZW1pY19taWRfcG9zdF9yb2xsIjp0cnVlLCJlbmFibGVfc2RmX29uX2g1X3VucGx1Z2dlZF92b2RfbWlkcm9sbCI6dHJ1ZSwiZW5hYmxlX3NkZl9zaG9ydHNfcGxheWVyX2J5dGVzX2g1Ijp0cnVlLCJlbmFibGVfc2VuZGluZ191bndyYXBwZWRfZ2FtZV9hdWRpb19hc19zZXJpYWxpemVkX21ldGFkYXRhIjp0cnVlLCJlbmFibGVfc2V0X3ZpZGVvX2lkX2luX3Nob3J0c19sb2NrdXBfdmlld19tb2RlbCI6dHJ1ZSwiZW5hYmxlX3Nmdl9lZmZlY3RfcGl2b3RfdXJsIjp0cnVlLCJlbmFibGVfc2hvcnRzX25ld19jYXJvdXNlbCI6dHJ1ZSwiZW5hYmxlX3NraXBfYWRfZ3VpZGFuY2VfcHJvbXB0Ijp0cnVlLCJlbmFibGVfc2tpcHBhYmxlX2Fkc19mb3JfdW5wbHVnZ2VkX2FkX3BvZCI6dHJ1ZSwiZW5hYmxlX3NtZWFyaW5nX2V4cGFuc2lvbl9kYWkiOnRydWUsImVuYWJsZV9zdXBleF9td2ViX2RlbW9fd2ViZmUiOnRydWUsImVuYWJsZV90aW1lX291dF9tZXNzYWdlcyI6dHJ1ZSwiZW5hYmxlX3RpbWVsaW5lX3ZpZXdfbW9kZXJuX3RyYW5zY3JpcHRfZmUiOnRydWUsImVuYWJsZV92aWRlb19kaXNwbGF5X2NvbXBhY3RfYnV0dG9uX2dyb3VwX2Zvcl9kZXNrdG9wX3NlYXJjaCI6dHJ1ZSwiZW5hYmxlX3dlYl9kZWxoaV9pY29ucyI6dHJ1ZSwiZW5hYmxlX3dlYl9ob21lX3RvcF9sYW5kc2NhcGVfaW1hZ2VfbGF5b3V0X2xldmVsX2NsaWNrIjp0cnVlLCJlbmFibGVfd2ViX3Nob3J0c19hdWRpb190cmFjayI6dHJ1ZSwiZW5hYmxlX3dlYl90aWVyZWRfZ2VsIjp0cnVlLCJlbmFibGVfd2luZG93X2NvbnN0cmFpbmVkX2J1eV9mbG93X2RpYWxvZyI6dHJ1ZSwiZW5hYmxlX3dpel9xdWV1ZV9lZmZlY3RfYW5kX29uX2luaXRfaW5pdGlhbF9ydW5zIjp0cnVlLCJlbmFibGVfeXBjX3NwaW5uZXJzIjp0cnVlLCJlbmFibGVfeXRfYXRhX2lmcmFtZV9hdXRodXNlciI6dHJ1ZSwiZXhwb3J0X25ldHdvcmtsZXNzX29wdGlvbnMiOnRydWUsImV4cG9ydF9wbGF5ZXJfdmVyc2lvbl90b195dGNvbmZpZyI6dHJ1ZSwiZmlsbF9zaW5nbGVfdmlkZW9fd2l0aF9ub3RpZnlfdG9fbGFzciI6dHJ1ZSwiZml4X2Fkc190cmFja2luZ19mb3Jfc3dmX2NvbmZpZ19kZXByZWNhdGlvbl9td2ViIjp0cnVlLCJoNV9jb21wYW5pb25fZW5hYmxlX2FkY3BuX21hY3JvX3N1YnN0aXR1dGlvbl9mb3JfY2xpY2tfcGluZ3MiOnRydWUsImg1X2lucGxheWVyX2VuYWJsZV9hZGNwbl9tYWNyb19zdWJzdGl0dXRpb25fZm9yX2NsaWNrX3BpbmdzIjp0cnVlLCJoNV9yZXNldF9jYWNoZV9hbmRfZmlsdGVyX2JlZm9yZV91cGRhdGVfbWFzdGhlYWQiOnRydWUsImhpZGVfY2hhbm5lbF9jcmVhdGlvbl90aXRsZV9mb3JfbXdlYiI6dHJ1ZSwiaGlnaF9jY3ZfY2xpZW50X3NpZGVfY2FjaGluZ19oNSI6dHJ1ZSwiaHRtbDVfbG9nX3RyaWdnZXJfZXZlbnRzX3dpdGhfZGVidWdfZGF0YSI6dHJ1ZSwiaHRtbDVfc3NkYWlfZW5hYmxlX21lZGlhX2VuZF9jdWVfcmFuZ2UiOnRydWUsImlkYl9pbW1lZGlhdGVfY29tbWl0Ijp0cnVlLCJpbF9hdHRhY2hfY2FjaGVfbGltaXQiOnRydWUsImlsX3VzZV92aWV3X21vZGVsX2xvZ2dpbmdfY29udGV4dCI6dHJ1ZSwiaXNfYnJvd3Nlcl9zdXBwb3J0X2Zvcl93ZWJjYW1fc3RyZWFtaW5nIjp0cnVlLCJqc29uX2NvbmRlbnNlZF9yZXNwb25zZSI6dHJ1ZSwia2V2bGFyX2ZpbHRlcl91bmtub3duX3NvdXJjZSI6dHJ1ZSwia2V2bGFyX2dlbF9lcnJvcl9yb3V0aW5nIjp0cnVlLCJrZXZsYXJfdHJpbV9wbGF5ZXJfYmVoYXZpb3IiOnRydWUsImtldmxhcl93YXRjaF9jaW5lbWF0aWNzIjp0cnVlLCJsaW1pdF95dGNzaV9kZWJ1Z19hcnJheV9zaXplIjp0cnVlLCJsaXZlX2NoYXRfZW5hYmxlX3J0YV9tYW5hZ2VyIjp0cnVlLCJsb2dfY2xpY2tfd2l0aF9sYXllcl9mcm9tX2VsZW1lbnRfaW5fY29tbWFuZF9oYW5kbGVyIjp0cnVlLCJtYXdfZW5hYmxlX25ldHdvcmtfbWFjaGluZSI6dHJ1ZSwibWR4X2VuYWJsZV9wcml2YWN5X2Rpc2Nsb3N1cmVfdWkiOnRydWUsIm1keF9sb2FkX2Nhc3RfYXBpX2Jvb3RzdHJhcF9zY3JpcHQiOnRydWUsIm1lZGl1bV9wcm9ncmVzc19iYXJfbW9kaWZpY2F0aW9uIjp0cnVlLCJtb2JpbGVfYWNjb3VudF9tZW51X3JlZnJlc2giOnRydWUsIm13ZWJfYWNjb3VudF9saW5raW5nX25vYXBwIjp0cnVlLCJtd2ViX2FsbG93X21vZGVybl9zZWFyY2hfc3VnZ2VzdF9iZWhhdmlvciI6dHJ1ZSwibXdlYl9hbmltYXRlZF9hY3Rpb25zIjp0cnVlLCJtd2ViX2FwcF91cHNlbGxfYnV0dG9uX2RpcmVjdF90b19hcHAiOnRydWUsIm13ZWJfYmFkZ2Vfc2hhcGVfZGVmcmFnIjp0cnVlLCJtd2ViX2MzX2FwcF9wcm9tb19lbmFibGVfcmVmZXJyaW5nX2FwcCI6dHJ1ZSwibXdlYl9jM19lbmFibGVfYWRhcHRpdmVfc2lnbmFscyI6dHJ1ZSwibXdlYl9jM19saWJyYXJ5X3BhZ2VfZW5hYmxlX3JlY2VudF9zaGVsZiI6dHJ1ZSwibXdlYl9jM19tZW51X3NpZ25hbHNfcmVuZGVyIjp0cnVlLCJtd2ViX2MzX3JlbW92ZV93ZWJfbmF2aWdhdGlvbl9lbmRwb2ludF9kYXRhIjp0cnVlLCJtd2ViX2MzX3RvYXN0X3VzZV93aXpfcmVhY3RpdmVfcmVuZGVyIjp0cnVlLCJtd2ViX2MzX3VzZV9jYW5vbmljYWxfZnJvbV9wbGF5ZXJfcmVzcG9uc2UiOnRydWUsIm13ZWJfY2FydmVfb3V0X2lvc19hcHBfc3RvcmVfcmVkaXJlY3QiOnRydWUsIm13ZWJfY2FydmVfb3V0X3Rlcm1zX3BhZ2VzIjp0cnVlLCJtd2ViX2NpbmVtYXRpY193YXRjaCI6dHJ1ZSwibXdlYl9jb21tYW5kX2hhbmRsZXIiOnRydWUsIm13ZWJfZGVidWdfc3RpY2t5X3NldHRpbmdzIjp0cnVlLCJtd2ViX2RlbGF5X3dhdGNoX2luaXRpYWxfZGF0YSI6dHJ1ZSwibXdlYl9kaXNhYmxlX3NlYXJjaGJhcl9zY3JvbGwiOnRydWUsIm13ZWJfZW5hYmxlX2NsaWNrX3RvX3BsYXlfcGF1c2UiOnRydWUsIm13ZWJfZW5hYmxlX2NvbG9yZnVsX2FpX3N1bW1hcnkiOnRydWUsIm13ZWJfZW5hYmxlX2R5bmFtaWNfZG91YmxlX3RhcF90b19saWtlIjp0cnVlLCJtd2ViX2VuYWJsZV9maW5lX3NjcnViYmluZ19mb3JfcmVjcyI6dHJ1ZSwibXdlYl9lbmFibGVfa2V0b19iYXRjaF9wbGF5ZXJfZnVsbHNjcmVlbiI6dHJ1ZSwibXdlYl9lbmFibGVfa2V0b19iYXRjaF9wbGF5ZXJfcHJvZ3Jlc3NfYmFyIjp0cnVlLCJtd2ViX2VuYWJsZV9rZXRvX2JhdGNoX3BsYXllcl90b29sdGlwcyI6dHJ1ZSwibXdlYl9lbmFibGVfa2V0b19jb250ZW50Ijp0cnVlLCJtd2ViX2VuYWJsZV9sb2NrdXBfdmlld19tb2RlbF9mb3JfdWNwIjp0cnVlLCJtd2ViX2VuYWJsZV9taXhfcGFuZWxfdGl0bGVfbWV0YWRhdGEiOnRydWUsIm13ZWJfZW5hYmxlX21vcmVfY2h1bmtzIjp0cnVlLCJtd2ViX2VuYWJsZV9tb3JlX2RyYXdlciI6dHJ1ZSwibXdlYl9lbmFibGVfb3B0aW9uYWxfZnVsbHNjcmVlbl9sYW5kc2NhcGVfbG9ja2luZyI6dHJ1ZSwibXdlYl9lbmFibGVfb3ZlcmxheV90b3VjaF9tYW5hZ2VyIjp0cnVlLCJtd2ViX2VuYWJsZV9wb3J0cmFpdF9mdWxsc2NyZWVuX2FjdGlvbnMiOnRydWUsIm13ZWJfZW5hYmxlX3ByZW1pdW1fY2FydmVfb3V0X2ZpeCI6dHJ1ZSwibXdlYl9lbmFibGVfcmVmcmVzaF9kZXRlY3Rpb24iOnRydWUsIm13ZWJfZW5hYmxlX3NlYXJjaF9pbXAiOnRydWUsIm13ZWJfZW5hYmxlX3Nob3J0c192aWRlb19wcmVsb2FkIjp0cnVlLCJtd2ViX2VuYWJsZV90d29fbGluZV90aXRsZV9vbl9zaG9ydHMiOnRydWUsIm13ZWJfZW5hYmxlX3ZhcmlzcGVlZF9jb250cm9sbGVyIjp0cnVlLCJtd2ViX2VuYWJsZV92aWRlb19sb29wX3RvZ2dsZSI6dHJ1ZSwibXdlYl9lbmFibGVfd2F0Y2hfZmVlZF9pbmZpbml0ZV9zY3JvbGwiOnRydWUsIm13ZWJfZml4X2NvbGRfbG9hZF9yZXNwb25zZV9hY3Rpb25zIjp0cnVlLCJtd2ViX2ZpeF9tb25pdG9yX3Zpc2liaWxpdHlfYWZ0ZXJfcmVuZGVyIjp0cnVlLCJtd2ViX2ZvcmNlX2lvc19mYWxsYmFja190b19uYXRpdmVfY29udHJvbCI6dHJ1ZSwibXdlYl9mcF9hdXRvX2Z1bGxzY3JlZW4iOnRydWUsIm13ZWJfZnBfZW5hYmxlX3Nob3J0c19zd2lwZV9sb2dnaW5nIjp0cnVlLCJtd2ViX2Z1bGxzY3JlZW5fY29udHJvbHMiOnRydWUsIm13ZWJfZnVsbHNjcmVlbl9jb250cm9sc19hY3Rpb25fYnV0dG9ucyI6dHJ1ZSwibXdlYl9mdWxsc2NyZWVuX3dhdGNoX3N5c3RlbSI6dHJ1ZSwibXdlYl9mdWxseV9yZWFjdGl2ZV9jYiI6dHJ1ZSwibXdlYl9ob21lX3JlYWN0aXZlX3Nob3J0cyI6dHJ1ZSwibXdlYl9pbm5lcnR1YmVfc2VhcmNoX2NvbW1hbmQiOnRydWUsIm13ZWJfa2Fpb3NfZW5hYmxlX2F1dG9wbGF5X3N3aXRjaF92aWV3X21vZGVsIjp0cnVlLCJtd2ViX2xhbmdfaW5faHRtbCI6dHJ1ZSwibXdlYl9saWtlX2J1dHRvbl9zeW5jZWRfd2l0aF9lbnRpdGllcyI6dHJ1ZSwibXdlYl9sb2dvX3VzZV9ob21lX3BhZ2VfdmUiOnRydWUsIm13ZWJfbG9uZ19wcmVzc19zcGVlZHVwX3ZpYnJhdGlvbiI6dHJ1ZSwibXdlYl9uYXRpdmVfY29udHJvbF9pbl9mYXV4X2Z1bGxzY3JlZW5fc2hhcmVkIjp0cnVlLCJtd2ViX3BsYXllcl9jb250cm9sX29uX2hvdmVyIjp0cnVlLCJtd2ViX3BsYXllcl9kZWxoaV9kdHRzIjp0cnVlLCJtd2ViX3BsYXllcl9zaG93X3ByZXZpb3VzX25leHRfYnV0dG9uc19pbl9wbGF5bGlzdCI6dHJ1ZSwibXdlYl9wbGF5ZXJfc2tpcF9ub19vcF9zdGF0ZV9jaGFuZ2VzIjp0cnVlLCJtd2ViX3BsYXllcl91c2VyX3NlbGVjdF9ub25lIjp0cnVlLCJtd2ViX3BsYXlsaXN0X2VuZ2FnZW1lbnRfcGFuZWwiOnRydWUsIm13ZWJfcHJvZ3Jlc3NfYmFyX3NlZWtfb25fbW91c2VfY2xpY2siOnRydWUsIm13ZWJfcHJvcGFnYXRlX3BsYXllcl9saW5rX2NsaWNrcyI6dHJ1ZSwibXdlYl9wdWxsXzJfZnVsbCI6dHJ1ZSwibXdlYl9wdWxsXzJfZnVsbF9lbmFibGVfdG91Y2hfaGFuZGxlcnMiOnRydWUsIm13ZWJfc2NoZWR1bGVfd2FybV93YXRjaF9yZXNwb25zZSI6dHJ1ZSwibXdlYl9zZWFyY2hfbWF4X3dpZHRoX2xpbWl0Ijp0cnVlLCJtd2ViX3NlYXJjaGJveF9sZWdhY3lfbmF2aWdhdGlvbiI6dHJ1ZSwibXdlYl9zZWVfZmV3ZXJfc2hvcnRzIjp0cnVlLCJtd2ViX3Nob3J0c19jb21tZW50c19wYW5lbF9pZF9jaGFuZ2UiOnRydWUsIm13ZWJfc2hvcnRzX2Vhcmx5X2NvbnRpbnVhdGlvbiI6dHJ1ZSwibXdlYl9zaG9ydHNfZW5hYmxlX2xvbmdfcHJlc3Nfc3BlZWR1cCI6dHJ1ZSwibXdlYl9zaG9ydHNfb3ZlcmxheV9kZXByZWNhdGVfa2Fpb3NfbGF5b3V0Ijp0cnVlLCJtd2ViX3Nob3dfc2lnbl9pbl9idXR0b25fZnJvbV9oZWFkZXIiOnRydWUsIm13ZWJfdXNlX21pY3JvZm9ybWF0X3RpdGxlX2Zvcl9wb3N0cyI6dHJ1ZSwibXdlYl91c2Vfc2VydmVyX3VybF9vbl9zdGFydHVwIjp0cnVlLCJtd2ViX3dhdGNoX2NhcHRpb25zX2VuYWJsZV9hdXRvX3RyYW5zbGF0ZSI6dHJ1ZSwibXdlYl93YXRjaF9jYXB0aW9uc19zZXRfZGVmYXVsdF9zaXplIjp0cnVlLCJtd2ViX3dhdGNoX2RlbGhpX3BsYXllciI6dHJ1ZSwibXdlYl93YXRjaF9zdG9wX3NjaGVkdWxlcl9vbl9wbGF5ZXJfcmVzcG9uc2UiOnRydWUsIm13ZWJfd2F0Y2hmZWVkX2JpZ190aHVtYm5haWxzIjp0cnVlLCJtd2ViX3l0X3NlYXJjaGJveCI6dHJ1ZSwibmV0d29ya2xlc3NfbG9nZ2luZyI6dHJ1ZSwibm9fY2xpZW50X3ZlX2F0dGFjaF91bmxlc3Nfc2hvd24iOnRydWUsInBhZ2VpZF9hc19oZWFkZXJfd2ViIjp0cnVlLCJwbGF5ZXJfY29udHJvbHNfYXV0b25hdl9maXgiOnRydWUsInBsYXllcl9jb250cm9sc19za2lwX2RvdWJsZV9zaWduYWxfdXBkYXRlIjp0cnVlLCJwbGF5ZXJfY29udHJvbHNfdXNlX3BsYXllcl9hcGlfY29udGV4dCI6dHJ1ZSwicGxheWVyX2NvbnRyb2xzX3ZvbHVtZV9jb250cm9sc191c2VfcGxheWVyX3Byb3BzIjp0cnVlLCJwb2x5bWVyX2JhZF9idWlsZF9sYWJlbHMiOnRydWUsInBvbHltZXJfdmVyaWZpeV9hcHBfc3RhdGUiOnRydWUsInFvZV9zZW5kX2FuZF93cml0ZSI6dHJ1ZSwicmVtb3ZlX2NoZXZyb25fZnJvbV9hZF9kaXNjbG9zdXJlX2Jhbm5lcl9oNSI6dHJ1ZSwicmVtb3ZlX21hc3RoZWFkX2NoYW5uZWxfYmFubmVyX29uX3JlZnJlc2giOnRydWUsInJlbW92ZV9zbG90X2lkX2V4aXRlZF90cmlnZ2VyX2Zvcl9kYWlfaW5fcGxheWVyX3Nsb3RfZXhwaXJlIjp0cnVlLCJyb3NjYXMiOnRydWUsInNlcnZpY2Vfd29ya2VyX2VuYWJsZWQiOnRydWUsInNlcnZpY2Vfd29ya2VyX3B1c2hfZW5hYmxlZCI6dHJ1ZSwic2VydmljZV93b3JrZXJfcHVzaF9ob21lX3BhZ2VfcHJvbXB0Ijp0cnVlLCJzZXJ2aWNlX3dvcmtlcl9wdXNoX3dhdGNoX3BhZ2VfcHJvbXB0Ijp0cnVlLCJzaGVsbF9sb2FkX2djZiI6dHJ1ZSwic2hvcnRlbl9pbml0aWFsX2dlbF9iYXRjaF90aW1lb3V0Ijp0cnVlLCJzaG9ydHNfZW5hYmxlX3JlZWxfY2Fyb3VzZWwiOnRydWUsInNob3VsZF91c2VfeXRfdm9pY2VfZW5kcG9pbnRfaW5fa2Fpb3MiOnRydWUsInNtYXJ0ZXJfdmVfZGVkdXBwaW5nIjp0cnVlLCJzdG9wX2hhbmRsaW5nX2NsaWNrX2Zvcl9ub25fcmVuZGVyaW5nX292ZXJsYXlfbGF5b3V0Ijp0cnVlLCJzdXBwcmVzc19lcnJvcl8yMDRfbG9nZ2luZyI6dHJ1ZSwic3luY2VkX3BhbmVsX3Njcm9sbGluZ19jb250cm9sbGVyIjp0cnVlLCJ0b29sdGlwX3JlZmFjdG9yX2Zvcl9ob3RrZXkiOnRydWUsInVzZV9ldmVudF90aW1lX21zX2hlYWRlciI6dHJ1ZSwidXNlX2ZpZm9fZm9yX25ldHdvcmtsZXNzIjp0cnVlLCJ1c2VfcmVxdWVzdF90aW1lX21zX2hlYWRlciI6dHJ1ZSwidXNlX3Nlc3Npb25fYmFzZWRfc2FtcGxpbmciOnRydWUsInVzZV90aHVtYm5haWxfb3ZlcmxheV90aW1lX3N0YXR1c19yZW5kZXJlcl9mb3JfbGl2ZV9iYWRnZSI6dHJ1ZSwidnNzX2ZpbmFsX3Bpbmdfc2VuZF9hbmRfd3JpdGUiOnRydWUsInZzc19wbGF5YmFja191c2Vfc2VuZF9hbmRfd3JpdGUiOnRydWUsIndhdGNoX3B1YnN1Yl9yZWZhY3RvciI6dHJ1ZSwid2ViX2FkYXB0aXZlX3JlcGVhdF9hc2UiOnRydWUsIndlYl9hbHdheXNfbG9hZF9jaGF0X3N1cHBvcnQiOnRydWUsIndlYl9hcGlfdXJsIjp0cnVlLCJ3ZWJfYXR0ZW50aW9uX2xvZ2dpbmdfZW5hYmxlZCI6dHJ1ZSwid2ViX2F0dGVudGlvbl9sb2dnaW5nX2V4cG9ydF90b19nZWwiOnRydWUsIndlYl9hdHRyaWJ1dGVkX3N0cmluZ19kZWVwX2VxdWFsX2J1Z2ZpeCI6dHJ1ZSwid2ViX2F1dG9uYXZfYWxsb3dfb2ZmX2J5X2RlZmF1bHQiOnRydWUsIndlYl9idXR0b25fb3JfYW5jaG9yX2xpc3RfaXRlbSI6dHJ1ZSwid2ViX2J1dHRvbl92aWV3X21vZGVsX25vbl9udWxsaXNoX2RhdGEiOnRydWUsIndlYl9idXR0b25fdm1fcmVmYWN0b3JfZGlzYWJsZWQiOnRydWUsIndlYl9jM19sb2dfYXBwX2luaXRfZmluaXNoIjp0cnVlLCJ3ZWJfY29tbWVudF9wYW5lbF9lYXN5X2V4cGFuZCI6dHJ1ZSwid2ViX2NzaV9hY3Rpb25fc2FtcGxpbmdfZW5hYmxlZCI6dHJ1ZSwid2ViX2RlZHVwZV92ZV9ncmFmdGluZyI6dHJ1ZSwid2ViX2Rpc2FibGVfYmFja2Ryb3BfZmlsdGVyIjp0cnVlLCJ3ZWJfZGlzYWJsZV9jaGlwX3ZpZXdfbW9kZWxfbXV0YXRpb24iOnRydWUsIndlYl9lbmFibGVfYWJfcnNwX2NsIjp0cnVlLCJ3ZWJfZW5hYmxlX2FkX2J1dHRvbl9zdHlsZV9vdmVycmlkZSI6dHJ1ZSwid2ViX2VuYWJsZV9hc2tfZGlzY2xhaW1lcl91cGRhdGUiOnRydWUsIndlYl9lbmFibGVfY2Fub25pY2FsX3VybF9tYW5hZ2VyIjp0cnVlLCJ3ZWJfZW5hYmxlX2NvdXJzZV9pY29uX3VwZGF0ZSI6dHJ1ZSwid2ViX2VuYWJsZV9lbnRpdHlfdXBzZXJ0X29uX3VwZGF0ZSI6dHJ1ZSwid2ViX2VuYWJsZV9lcnJvcl8yMDQiOnRydWUsIndlYl9lbmFibGVfbm9fZW5kcG9pbnRzX29uX2FkX21ldGFkYXRhIjp0cnVlLCJ3ZWJfZW5hYmxlX3RodW1ibmFpbF9vdmVybGF5X2FsaWdubWVudCI6dHJ1ZSwid2ViX2djZl9oYXNoZXNfaW5uZXJ0dWJlIjp0cnVlLCJ3ZWJfZ2VsX3RpbWVvdXRfY2FwIjp0cnVlLCJ3ZWJfaGlkZV95b3VyX2RhdGFfb25fYXV0b21vdGl2ZSI6dHJ1ZSwid2ViX2ltcF9lbmFibGVfY3NpX3N0YXJ0X3RpY2siOnRydWUsIndlYl9tb25vbWVyX3dlYl9jb21wb25lbnRfd3JhcHBlcl9oYW5kbGVfZXJyb3JzIjp0cnVlLCJ3ZWJfbm9uX25hdmlnYXRpbmdfYXRhZyI6dHJ1ZSwid2ViX3BhcmVudF90YXJnZXRfZm9yX3NoZWV0cyI6dHJ1ZSwid2ViX3BlcnNpc3Rfc2VydmVyX2F1dG9uYXZfc3RhdGVfb25fY2xpZW50Ijp0cnVlLCJ3ZWJfcGxheWJhY2tfYXNzb2NpYXRlZF92ZSI6dHJ1ZSwid2ViX3BsYXllcl91cGRhdGVkX2VudHJ5cG9pbnQiOnRydWUsIndlYl9wcmVmZXRjaF9wcmVsb2FkX3ZpZGVvIjp0cnVlLCJ3ZWJfcHJvZ3Jlc3NfYmFyX2RyYWdnYWJsZSI6dHJ1ZSwid2ViX3Byb3BhZ2F0ZV92aXNpYmlsaXR5X3RvX2FwcGxpY2F0aW9uX3N0YXRlIjp0cnVlLCJ3ZWJfcmVtb3ZlX3NuYWNrYmFyX2FjdGlvbnMiOnRydWUsIndlYl9zZWN0aW9uX2xpc3RfcmVuZGVyZXJfd3JhcHBlZF9jb250ZW50cyI6dHJ1ZSwid2ViX3Nob3J0c19hdWRpb190cmFja19waWNrZXIiOnRydWUsIndlYl9zaG9ydHNfZW5hYmxlX3JlbW92ZV9zZWFyY2hfcGl2b3RfYmFja19idXR0b24iOnRydWUsIndlYl9zaG9ydHNfd25fc2hlbGZfaGVhZGVyX3R1bmluZyI6dHJ1ZSwid2ViX3VuaWZpZWRfZmV0Y2giOnRydWUsIndlYl91cGRhdGVfcGFuZWxfdmlzaWJpbGl0eV9sb2dnaW5nX2ZpeCI6dHJ1ZSwid2ViX3dhdGNoX2NvbnRyb2xzX3N0YXRlX3NpZ25hbHMiOnRydWUsIndlYmZlX213ZWJfd2F0Y2hfbWljcm9kYXRhIjp0cnVlLCJ3ZWJmZV93YXRjaF9zaG9ydHNfY2Fub25pY2FsX3VybF9maXgiOnRydWUsIndlYnBvX2V4aXRfb25fbmV0X2VyciI6dHJ1ZSwid2l6X2RpZmZfb3ZlcndyaXRhYmxlIjp0cnVlLCJ3aXpfd3JhcHBlcl9jYWxsYmFja19wcm9wc19maXgiOnRydWUsInd1Z19uZXR3b3JraW5nX2d6aXBfcmVxdWVzdCI6dHJ1ZSwiSDVfYXN5bmNfbG9nZ2luZ19kZWxheV9tcyI6MzAwMDAuMCwiYXV0b3BsYXlfcGF1c2VfYnlfbGFjdF9zYW1wbGluZ19mcmFjdGlvbiI6MC4wLCJjaW5lbWF0aWNfd2F0Y2hfZWZmZWN0X29wYWNpdHkiOjAuNCwibG9nX3dpbmRvd19vbmVycm9yX2ZyYWN0aW9uIjowLjEsInNwZWVkbWFzdGVyX3BsYXliYWNrX3JhdGUiOjIuMCwid2ViX2F0dGVudGlvbl9sb2dnaW5nX3Njcm9sbF90aHJvdHRsZSI6NTAwLjAsIndlYl9kZWFkX2NvZGVfZGV0ZWN0b3Jfc2FtcGxpbmdfcmF0ZSI6MC4wLCJ3ZWJfbG9hZF9wcmVkaWN0aW9uX3RocmVzaG9sZCI6MC4zLCJ3ZWJfbmF2aWdhdGlvbl9wcmVkaWN0aW9uX3RocmVzaG9sZCI6MC4xLCJ3ZWJfcGJqX2xvZ193YXJuaW5nX3JhdGUiOjAuMCwid2ViX3N5c3RlbV9oZWFsdGhfZnJhY3Rpb24iOjAuMDEsInl0aWRiX3RyYW5zYWN0aW9uX2VuZGVkX2V2ZW50X3JhdGVfbGltaXQiOjAuMDIsImF0dF9pbml0X2RlbGF5Ijo1MDAsImF1dG9wbGF5X3BhdXNlX2J5X2xhY3Rfc2VjIjowLCJib3RndWFyZF9hc3luY19zbmFwc2hvdF90aW1lb3V0X21zIjozMDAwLCJjaGVja19uYXZpZ2F0b3JfYWNjdXJhY3lfdGltZW91dF9tcyI6MCwiY2luZW1hdGljX3dhdGNoX2Nzc19maWx0ZXJfYmx1cl9zdHJlbmd0aCI6NDAsImNpbmVtYXRpY193YXRjaF9mYWRlX291dF9kdXJhdGlvbiI6NTAwLCJjbG9zZV93ZWJ2aWV3X2RlbGF5X21zIjoxMDAsImNsb3VkX3NhdmVfZ2FtZV9kYXRhX3JhdGVfbGltaXRfbXMiOjMwMDAsImNvbXByZXNzaW9uX2Rpc2FibGVfcG9pbnQiOjEwLCJjdXN0b21fYWN0aXZlX3ZpZXdfdG9zX3RpbWVvdXRfbXMiOjM2MDAwMDAsImVtYmVkc193aWRnZXRfcG9sbF9pbnRlcnZhbF9tcyI6MCwiZW5kZW1pY19oaWdoX2Njdl9zbWVhcmluZ19tYXhfd2luZG93X3NlY29uZHMiOjYwLCJnZWxfbWluX2JhdGNoX3NpemUiOjMsImdlbF9xdWV1ZV90aW1lb3V0X21heF9tcyI6NjAwMDAsImdldF9hc3luY190aW1lb3V0X21zIjo2MDAwMCwiaHRtbDVfYnl0ZXJhdGVfc29mdF9jYXAiOjAsImluaXRpYWxfZ2VsX2JhdGNoX3RpbWVvdXQiOjIwMDAsIm1heF9ib2R5X3NpemVfdG9fY29tcHJlc3MiOjUwMDAwMCwibWF4X3ByZWZldGNoX3dpbmRvd19zZWNfZm9yX2xpdmVzdHJlYW1fb3B0aW1pemF0aW9uIjoxMCwibWluX3ByZWZldGNoX29mZnNldF9zZWNfZm9yX2xpdmVzdHJlYW1fb3B0aW1pemF0aW9uIjoyMCwibWluaV9hcHBfY29udGFpbmVyX2lmcmFtZV9zcmNfdXBkYXRlX2RlbGF5X21zIjowLCJtdWx0aXBsZV9wcmV2aWV3X25ld3NfZHVyYXRpb25fdGltZSI6MTEwMDAsIm13ZWJfYzNfdG9hc3RfZHVyYXRpb25fbXMiOjUwMDAsIm13ZWJfZGVlcF9saW5rX2ZhbGxiYWNrX3RpbWVvdXRfbXMiOjEwMDAwLCJtd2ViX2RlbGF5X3Jlc3BvbnNlX3JlY2VpdmVkX2FjdGlvbnMiOjEwMCwibXdlYl9kd2VsbF9kZWxheV9tcyI6NTAwLCJtd2ViX2ZwX2RwYWRfcmF0ZV9saW1pdF9tcyI6MCwibXdlYl9mcF9kcGFkX3dhdGNoX3RpdGxlX2NsYW1wX2xpbmVzIjowLCJtd2ViX2hpc3RvcnlfbWFuYWdlcl9jYWNoZV9zaXplIjoxMDAsIm13ZWJfaW9zX2Z1bGxzY3JlZW5fcGxheWJhY2tfdHJhbnNpdGlvbl9kZWxheV9tcyI6NTAwLCJtd2ViX2lvc19mdWxsc2NyZWVuX3N5c3RlbV9wYXVzZV9lcGlsc29uX21zIjowLCJtd2ViX292ZXJyaWRlX3Jlc3BvbnNlX3N0b3JlX2V4cGlyYXRpb25fbXMiOjAsIm13ZWJfc2hvcnRzX2Vhcmx5X2NvbnRpbnVhdGlvbl90cmlnZ2VyX3RocmVzaG9sZCI6NCwibXdlYl9zaG9ydHNfbnVtYmVyX29mX3RodW1ibmFpbHNfc2hvd24iOjIsIm13ZWJfdzJ3X21heF9hZ2Vfc2Vjb25kcyI6MCwibXdlYl93YXRjaF9jYXB0aW9uc19kZWZhdWx0X3NpemUiOjIsIm5lb25fZGFya19sYXVuY2hfZ3JhZGllbnRfY291bnQiOjAsIm5ldHdvcmtfcG9sbGluZ19pbnRlcnZhbCI6MzAwMDAsInBsYXlfcGluZ19pbnRlcnZhbF9tcyI6MTAwMDAsInNlbmRfY29uZmlnX2hhc2hfdGltZXIiOjAsInNlcnZpY2Vfd29ya2VyX3B1c2hfbG9nZ2VkX291dF9wcm9tcHRfd2F0Y2hlcyI6LTEsInNlcnZpY2Vfd29ya2VyX3B1c2hfcHJvbXB0X2NhcCI6LTEsInNlcnZpY2Vfd29ya2VyX3B1c2hfcHJvbXB0X2RlbGF5X21pY3Jvc2Vjb25kcyI6Mzg4ODAwMDAwMDAwMCwic2hvd19taW5pX2FwcF9hZF93ZWJfcmVndWxhcl9mcmVxdWVuY3lfY2FwX21zIjoyNDAwMDAsInNob3dfbWluaV9hcHBfYWRfd2ViX3Jld2FyZGVkX2ZyZXF1ZW5jeV9jYXBfbXMiOjAsInNsb3dfY29tcHJlc3Npb25zX2JlZm9yZV9hYmFuZG9uX2NvdW50Ijo0LCJzcGVlZG1hc3Rlcl9jYW5jZWxsYXRpb25fbW92ZW1lbnRfZHAiOjEwLCJzcGVlZG1hc3Rlcl90b3VjaF9hY3RpdmF0aW9uX21zIjo1MDAsIndlYl9haV9zZWFyY2hfcm9sbG91dF92ZXJzaW9uIjoxLCJ3ZWJfZm9yZWdyb3VuZF9oZWFydGJlYXRfaW50ZXJ2YWxfbXMiOjI4MDAwLCJ3ZWJfZ2VsX2RlYm91bmNlX21zIjoxMDAwMCwid2ViX2xvZ2dpbmdfbWF4X2JhdGNoIjoxMDAsIndlYl9tYXhfdHJhY2luZ19ldmVudHMiOjUwLCJ3ZWJfc2Vzc2lvbl9yZXBsYXlfbW91c2Vtb3ZlX2ludGVydmFsIjowLCJ3ZWJfc2Vzc2lvbl9yZXBsYXlfc2Nyb2xsX2ludGVydmFsIjowLCJ3ZWJfc2Vzc2lvbl9yZXBsYXlfc2VuZF9hZnRlcl90aW1lb3V0IjowLCJ3ZWJfdHJhY2luZ19zZXNzaW9uX3JlcGxheSI6MCwid2lsX2ljb25fbWF4X2NvbmN1cnJlbnRfZmV0Y2hlcyI6OTk5OSwieXRjc2lfZGVidWdfbWF4X3NpemUiOjEwMCwieXRpZGJfcmVtYWtlX2RiX3JldHJpZXMiOjEsInl0aWRiX3Jlb3Blbl9kYl9yZXRyaWVzIjowLCJXZWJDbGllbnRSZWxlYXNlUHJvY2Vzc0NyaXRpY2FsX195b3V0dWJlX2VtYmVkc19jbGllbnRfdmVyc2lvbl9vdmVycmlkZSI6IiIsIldlYkNsaWVudFJlbGVhc2VQcm9jZXNzQ3JpdGljYWxfX3lvdXR1YmVfZW1iZWRzX3dlYl9jbGllbnRfdmVyc2lvbl9vdmVycmlkZSI6IiIsImRlYnVnX2ZvcmNlZF9pbnRlcm5hbGNvdW50cnljb2RlIjoiIiwiZW5hYmxlX3dlYl9tZWRpYV9zZXJ2aWNlIjoiRElTQUJMRUQiLCJpbF9wYXlsb2FkX3NjcmFwaW5nIjoiIiwibGl2ZV9jaGF0X3VuaWNvZGVfZW1vamlfanNvbl91cmwiOiJodHRwczovL3d3dy5nc3RhdGljLmNvbS95b3V0dWJlL2ltZy9lbW9qaXMvZW1vamlzLXN2Zy05Lmpzb24iLCJtd2ViX2RlZXBfbGlua19mZWF0dXJlX3RhZ19zdWZmaXgiOiI1MTgzMTYxNSIsIm13ZWJfZW5hYmxlX3Nob3J0c19pbm5lcnR1YmVfcGxheWVyX3ByZWZldGNoX3RyaWdnZXIiOiJOT05FIiwibXdlYl9mcF9kcGFkIjoiaG9tZSxzZWFyY2gsYnJvd3NlLGNoYW5uZWwsY3JlYXRlX2NoYW5uZWwsZXhwZXJpbWVudHMsc2V0dGluZ3MsdHJlbmRpbmcsb29wcyw0MDQscGFpZF9tZW1iZXJzaGlwcyxzcG9uc29yc2hpcCxwcmVtaXVtLHNob3J0cyIsIm13ZWJfZnBfZHBhZF9saW5lYXJfbmF2aWdhdGlvbiI6IiIsIm13ZWJfZnBfZHBhZF9saW5lYXJfbmF2aWdhdGlvbl92aXNpdG9yIjoiIiwibXdlYl9mcF9kcGFkX3Zpc2l0b3IiOiIiLCJtd2ViX3ByZWxvYWRfdmlkZW9fYnlfcGxheWVyX3ZhcnMiOiIiLCJwbGFjZV9waXZvdF90cmlnZ2VyaW5nX2NvbnRhaW5lcl9hbHRlcm5hdGUiOiIiLCJwbGFjZV9waXZvdF90cmlnZ2VyaW5nX2NvdW50ZXJmYWN0dWFsX2NvbnRhaW5lcl9hbHRlcm5hdGUiOiIiLCJzZXJ2aWNlX3dvcmtlcl9wdXNoX2ZvcmNlX25vdGlmaWNhdGlvbl9wcm9tcHRfdGFnIjoiMSIsInNlcnZpY2Vfd29ya2VyX3Njb3BlIjoiLyIsInN1Z2dlc3RfZXhwX3N0ciI6IiIsIndlYl9jbGllbnRfdmVyc2lvbl9vdmVycmlkZSI6IiIsImVuZGVtaWNfaGlnaF9jY3Zfc21lYXJpbmdfYWxsb3dlZF92aWRlb19pZHMiOlsiT0psd0lkb0Z6OUEiLCJBcktiQXgxSy0yVSIsIm1fZGhNU3ZVQ0ljIiwiQzFEaHBKMDdadUUiLCJOcTJ3WWxXRnVjZyIsIkpDN2YzRVVEYXF3IiwidnIzWHlWQ1I0VDAiLCJnQ05lRFdDSTB2byIsImtCVHVkbTRnZU1zIiwiRnhzZlZYNkIxTWsiLCJ5bFlKU0JVZ2FNQSIsIlZXaFE2eHNwblNjIiwiUkhVYXVNY1lsWDAiLCJjYjEyS21NTURKQSIsIldKeEVqX2hycFNnIiwiZXVoWS10bWc5eDgiLCJUbElWSTJFVzdSMCIsIk1JTmZ2T1g0QnpJIiwieUhtUFd6a2hjWjgiLCJwM3cxdk85WHYyNCIsIlZsYUNucDFmeEk4IiwiLU9mQTA0QkQ0R0EiLCIxb2RZM0lZc05ubyIsIndpVFRyVnFSVkR3IiwiRGZtMnJCLW5ROVkiLCJRbTFGdHo4bFZuSSIsIjlpdEF4cV9TR0RNIiwieUZJM3dwWHk0ekEiLCJQeTVKWVpYSnZ6byIsImI0dEU1YUtodGxnIiwiNUpEeGpzQVZhR2siLCJlVW1mR1BhenVFTSIsIlc4blRocTYyVmI0IiwiVkxqdlMzdWZsWGMiLCJCZmRMS3ZKQk1fYyIsIndlTFhkd1ZqU3hzIiwiMkphLXVQT2t6N0kiLCJBOVFCVkZFWXhPUSIsImstWkZRa2tIVWZjIiwid3V1MEQyMEFacUkiLCJfSHZpU3lDN3pTVSIsIl9feE96X1EzcVI0IiwidzJzQjg3akxFMUkiLCI4clRURU1kTWg4USIsIi1rNm1wZ214ZXJVIiwiOTdja25ySnlMV2ciLCIyRkl0Vnl4TE5OYyIsIm90bnhmY3NHRS1ZIiwiczl4TDFEcEJzZlEiLCJ3ZkFHQlZnVXJybyIsIm5YSDZUeFEtc2k4IiwiV2lJMVhnX25FdTgiLCIzZmxhc0dWVXJDQSIsImVEWV9IZTkybGNVIiwiYTQ3Y2tYS1pqeEkiLCJJNldSWGVLWks2NCIsIlQ5SjVEcVAyREt3IiwiS3RrX0kwcFVwRzgiLCJlUTJjekdxT0NQZyIsImhMbVU0OWhtWjRjIiwiN2Y3TWdhTUU3U2MiLCJRQjVCTmRCRnVqRSIsIkFHaHRNVV9maTcwIiwicDJSYVFVUlJBd0EiLCJtel9fRU1ZcFdQdyIsIjZqaEx1U1FWSXhVIiwickM4M3ZfdXVJcW8iLCI2RGFHZEpSX2VMZyIsImNtNDN1WGpmdlpZIiwiWTFKc1BwbTJibVEiLCJ6MDk3alB5S2VlbyIsIlRZVlpXVVRqa3gwIiwiVkhhQXZlbmZURGsiLCJ0djlPVV81UTBwUSIsIjZvS0N2em02SG1nIiwiQkVGVUVSaFQwbjAiLCJ1VE4tZXUwLU9YRSIsImhiYXByaFI3elRvIiwiMkNWMFYtb01ORk0iLCJ1OGRTT0tvTkpwMCIsIkg4TXFxd21Gc3hZIiwiSXNra21OUEpkVWsiLCJYOUhfRXpwREdYUSJdLCJrZXZsYXJfY29tbWFuZF9oYW5kbGVyX2NvbW1hbmRfYmFubGlzdCI6W10sIm1pbmlfYXBwX2lkc193aXRob3V0X2dhbWVfcmVhZHkiOlsiVWdreEhIdHNhazFTQzhtUkdITVpld2M0SHplQVkzeWhQUG1KIiwiVWdreDdPZ3pGcUU2el81TXRmNFlzb3RHZlFOSUkxREZfUkJtIl0sIndlYl9vcF9zaWduYWxfdHlwZV9iYW5saXN0IjpbXSwid2ViX3RyYWNpbmdfZW5hYmxlZF9zcGFucyI6WyJldmVudCIsImNvbW1hbmQiXX0sIkdBUElfSElOVF9QQVJBTVMiOiJtOy9fL3Njcy9hYmMtc3RhdGljL18vanMva1x1MDAzZGdhcGkuZ2FwaS5lbi41NF9IRHZlT3RrUS5PL2RcdTAwM2QxL3JzXHUwMDNkQUhwT29vOVF1Zk9kUFlUUmtiVEphZFRXNnNtc3hsV0xNdy9tXHUwMDNkX19mZWF0dXJlc19fIiwiR0FQSV9IT1NUIjoiaHR0cHM6Ly9hcGlzLmdvb2dsZS5jb20iLCJHQVBJX0xPQ0FMRSI6ImVuX1VTIiwiR0wiOiJOTyIsIkhMIjoiZW4iLCJIVE1MX0RJUiI6Imx0ciIsIkhUTUxfTEFORyI6ImVuIiwiSU5ORVJUVUJFX0FQSV9LRVkiOiJBSXphU3lBT19GSjJTbHFVOFE0U1RFSExHQ2lsd19ZOV8xMXFjVzgiLCJJTk5FUlRVQkVfQVBJX1ZFUlNJT04iOiJ2MSIsIklOTkVSVFVCRV9DTElFTlRfTkFNRSI6IldFQl9FTUJFRERFRF9QTEFZRVIiLCJJTk5FUlRVQkVfQ0xJRU5UX1ZFUlNJT04iOiIyLjIwMjYwNzI0LjAxLjAwIiwiSU5ORVJUVUJFX0NPTlRFWFQiOnsiY2xpZW50Ijp7ImhsIjoiZW4iLCJnbCI6Ik5PIiwicmVtb3RlSG9zdCI6IjE5NS42NC4xMTguMTUyIiwiZGV2aWNlTWFrZSI6IiIsImRldmljZU1vZGVsIjoiIiwidmlzaXRvckRhdGEiOiJDZ3M0UWxkcVExTm1aQzFQV1Nqd3VwdlRCaklvQ2dKT1R4SWlFaDRTSEFzTURnOFFFUklURkJVV0Z4Z1pHaHNjSFI0ZklDRWlJeVFsSmljZ0dHTGZBZ3JjQWpJd0xsbFVQVVUxWWxwSVgyeFFNVTVCY2t4SE5EaDBObXhTYWpsdlpXVmpWekI0ZVVWR1pUbDFNR1ZpVjA5aUxXY3RYMHBtWmxORlFWbEVPVFoyWjJsNk9EUjZkRmQxTkdwTU1sRjFZak5wY1ZSUk1saHpWbkp0VldWc2FEaGlUREphTlRGM1RrUlRiVzl3Tm1SdU1WWjVhMDA0TmtSVE0yRldaVVZ1TjFGSE9FVlpPVTFzTTNkMmRYWmpjM05oTkRONGEzRndSemg1WVVsa09IVnlRV3B5V0doWlJXWkhVWEJpZEdwUVRXRkZTbTk2ZEhob01HTm9XV014VlRWWWJreGxVMHRQWjJ4aFJFeHJWV0pmVm5aRlduRTBVV05QU3paUVMyMHlVV05GU2pkWllVdE5kazVPYmxKWk5IWXpSMDFPWTFwRmVUSk9jbEpKV0ZoUlJWRkpOVVE0U1VWV1gyRnRNRUpOTkhNd1lqSXpaRzVKVDFabVRYbE9VVlo1VnpCMU4zaEJTekJPYVRCeldXRlJaVEZVVjJ3d1MyMUVSV3BLYlRNeE1GaGhXWEZzY0VkamJtWkhjRnB3YTI1TVVuSmlORWRwWld0S01qaG5adyUzRCUzRCIsInVzZXJBZ2VudCI6Ik1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjA7IFdpbjY0OyB4NjQ7IHJ2OjEzNC4wKSBHZWNrby8yMDEwMDEwMSBGaXJlZm94LzEzNC4wLGd6aXAoZ2ZlKSIsImNsaWVudE5hbWUiOiJXRUJfRU1CRURERURfUExBWUVSIiwiY2xpZW50VmVyc2lvbiI6IjIuMjAyNjA3MjQuMDEuMDAiLCJvc05hbWUiOiJXaW5kb3dzIiwib3NWZXJzaW9uIjoiMTAuMCIsIm9yaWdpbmFsVXJsIjoiaHR0cHM6Ly93d3cueW91dHViZS5jb20vZW1iZWQvR2MyZW4zbkh4QTQiLCJwbGF0Zm9ybSI6IkRFU0tUT1AiLCJjbGllbnRGb3JtRmFjdG9yIjoiVU5LTk9XTl9GT1JNX0ZBQ1RPUiIsImNvbmZpZ0luZm8iOnsiYXBwSW5zdGFsbERhdGEiOiJDUEM2bTlNR0VJbmswUndRdm9UUkhCQzl0cTRGRUltd3pod1F2b3F3QlJBQUVKbU5zUVVRdHR2UkhCRG02OUVjRUxudzBSd1E2ZmpSSEJEeHROQWNFTXI3Z0JNUXlmYUFFeEQ1OHRFY0VMMlpzQVVRek4tdUJSQ0RoN2dpRVBhcnNBVVE5dmZSSEJDdTFzOGNFTWY4Z0JNUWg2ek9IQkNranRJY0VKWHYwUndReEkzU0hCRGV2TTRjRUliaGdCTVE0TGZSSEJDMy1JQVRFTGpremh3UTRvZTRJaENJa05FY0VPRHEwUndRbmRDd0JSRGE5ODRjRUpfUGdCTVFpb2U0SWhDOHBOQWNFT19lMFJ3UWlfZlBIQkRCajlBY0VQeXl6aHdRanBEUkhCQ2txZEVjRUlITnpod1FuWWE0SWhDT3RZQVRFSk9EMGh3UTllblJIQ3B3UTBGTlUxUjRWazB0V25FdFJFeHBWVVZ3VVVOdVFUYzFSbGhoZGtKMVJWZHhUbFZRZVVGTlRUTjNNMk5DZEdkSE4xRlVNM1psYTB4TmNVTnpRa0ZQVVhKblVEZEtjbUpyUW5WVFJrWTVSRTFDYzFOVFFtTnpPWGhUWmxveFVWaGtURTlhUnpGTE4zWklkSE5IU0ZGalBUQUEifSwiYnJvd3Nlck5hbWUiOiJGaXJlZm94IiwiYnJvd3NlclZlcnNpb24iOiIxMzQuMCIsImFjY2VwdEhlYWRlciI6InRleHQvaHRtbCxhcHBsaWNhdGlvbi94aHRtbCt4bWwsYXBwbGljYXRpb24veG1sO3FcdTAwM2QwLjksKi8qO3FcdTAwM2QwLjgiLCJkZXZpY2VFeHBlcmltZW50SWQiOiJDaHhPZWxreVRucEJNVTlFWnpWTlJFRjZUbnBaZDA1VVRYaFBVVDA5RVBDNm05TUdHUEM2bTlNRyIsInJvbGxvdXRUb2tlbiI6IkNMX3FwLWpXMnNiRG53RVFfNENsdzRIeWxRTVlfNENsdzRIeWxRTSUzRCJ9LCJ1c2VyIjp7ImxvY2tlZFNhZmV0eU1vZGUiOmZhbHNlfSwicmVxdWVzdCI6eyJ1c2VTc2wiOnRydWV9LCJjbGlja1RyYWNraW5nIjp7ImNsaWNrVHJhY2tpbmdQYXJhbXMiOiJJaE1Jdi9pa3c0SHlsUU1WRnZMS0FCMWlUeFBYIn0sInRoaXJkUGFydHkiOnsiZW1iZWRkZWRQbGF5ZXJDb250ZXh0Ijp7ImVtYmVkZGVkUGxheWVyRW5jcnlwdGVkQ29udGV4dCI6IkFDbWJsQlVWWDE1VHAwUlhvT0ViU00tSmk1aXBRNUg3ZWxTS0VUWXBjNnhfTk8zZXg3MEthWDEtOG5RYVQ1Z05JM0hfcmJ2V3h6RVpNMFpFczlvaE5UbkhHdkNDMmJEQzRsYWNLbVl3bFVaQ0xEREk4SU1qZlhkRlZFeXdLaU1Mc3g4IiwiYW5jZXN0b3JPcmlnaW5zU3VwcG9ydGVkIjpmYWxzZX19fSwiSU5ORVJUVUJFX0NPTlRFWFRfQ0xJRU5UX05BTUUiOjU2LCJJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfVkVSU0lPTiI6IjIuMjAyNjA3MjQuMDEuMDAiLCJJTk5FUlRVQkVfQ09OVEVYVF9HTCI6Ik5PIiwiSU5ORVJUVUJFX0NPTlRFWFRfSEwiOiJlbiIsIkxBVEVTVF9FQ0FUQ0hFUl9TRVJWSUNFX1RSQUNLSU5HX1BBUkFNUyI6eyJjbGllbnQubmFtZSI6IldFQl9FTUJFRERFRF9QTEFZRVIiLCJjbGllbnQuanNmZWF0IjoiMjAyMSJ9LCJMT0dHRURfSU4iOmZhbHNlLCJQQUdFX0JVSUxEX0xBQkVMIjoieW91dHViZS5lbWJlZHMud2ViXzIwMjYwNzI0XzAxX1JDMDAiLCJQQUdFX0NMIjo5NTMyMDYwMTAsIlNFUlZFUl9OQU1FIjoiV2ViRkUiLCJWSVNJVE9SX0RBVEEiOiJDZ3M0UWxkcVExTm1aQzFQV1Nqd3VwdlRCaklvQ2dKT1R4SWlFaDRTSEFzTURnOFFFUklURkJVV0Z4Z1pHaHNjSFI0ZklDRWlJeVFsSmljZ0dHTGZBZ3JjQWpJd0xsbFVQVVUxWWxwSVgyeFFNVTVCY2t4SE5EaDBObXhTYWpsdlpXVmpWekI0ZVVWR1pUbDFNR1ZpVjA5aUxXY3RYMHBtWmxORlFWbEVPVFoyWjJsNk9EUjZkRmQxTkdwTU1sRjFZak5wY1ZSUk1saHpWbkp0VldWc2FEaGlUREphTlRGM1RrUlRiVzl3Tm1SdU1WWjVhMDA0TmtSVE0yRldaVVZ1TjFGSE9FVlpPVTFzTTNkMmRYWmpjM05oTkRONGEzRndSemg1WVVsa09IVnlRV3B5V0doWlJXWkhVWEJpZEdwUVRXRkZTbTk2ZEhob01HTm9XV014VlRWWWJreGxVMHRQWjJ4aFJFeHJWV0pmVm5aRlduRTBVV05QU3paUVMyMHlVV05GU2pkWllVdE5kazVPYmxKWk5IWXpSMDFPWTFwRmVUSk9jbEpKV0ZoUlJWRkpOVVE0U1VWV1gyRnRNRUpOTkhNd1lqSXpaRzVKVDFabVRYbE9VVlo1VnpCMU4zaEJTekJPYVRCeldXRlJaVEZVVjJ3d1MyMUVSV3BLYlRNeE1GaGhXWEZzY0VkamJtWkhjRnB3YTI1TVVuSmlORWRwWld0S01qaG5adyUzRCUzRCIsIldFQl9QTEFZRVJfQ09OVEVYVF9DT05GSUdTIjp7IldFQl9QTEFZRVJfQ09OVEVYVF9DT05GSUdfSURfRU1CRURERURfUExBWUVSIjp7InJvb3RFbGVtZW50SWQiOiJtb3ZpZV9wbGF5ZXIiLCJqc1VybCI6Ii9zL3BsYXllci83YTc5NjljMi9wbGF5ZXJfZW1iZWRfZXM2LnZmbHNldC9lbl9VUy9iYXNlLmpzIiwiY3NzVXJsIjoiL3MvcGxheWVyLzdhNzk2OWMyL3d3dy1wbGF5ZXIuY3NzIiwiY29udGV4dElkIjoiV0VCX1BMQVlFUl9DT05URVhUX0NPTkZJR19JRF9FTUJFRERFRF9QTEFZRVIiLCJldmVudExhYmVsIjoiZW1iZWRkZWQiLCJjb250ZW50UmVnaW9uIjoiTk8iLCJobCI6ImVuX1VTIiwiaG9zdExhbmd1YWdlIjoiZW4iLCJpbm5lcnR1YmVBcGlLZXkiOiJBSXphU3lBT19GSjJTbHFVOFE0U1RFSExHQ2lsd19ZOV8xMXFjVzgiLCJpbm5lcnR1YmVBcGlWZXJzaW9uIjoidjEiLCJpbm5lcnR1YmVDb250ZXh0Q2xpZW50VmVyc2lvbiI6IjIuMjAyNjA3MjQuMDEuMDAiLCJkZXZpY2UiOnsiYnJhbmQiOiIiLCJtb2RlbCI6IiIsImJyb3dzZXIiOiJGaXJlZm94IiwiYnJvd3NlclZlcnNpb24iOiIxMzQuMCIsIm9zIjoiV2luZG93cyIsIm9zVmVyc2lvbiI6IjEwLjAiLCJwbGF0Zm9ybSI6IkRFU0tUT1AiLCJpbnRlcmZhY2VOYW1lIjoiV0VCX0VNQkVEREVEX1BMQVlFUiIsImludGVyZmFjZVZlcnNpb24iOiIyLjIwMjYwNzI0LjAxLjAwIn0sInNlcmlhbGl6ZWRFeHBlcmltZW50SWRzIjoiMjQwMDQ2NDQsNTEwNjM2NDMsNTEwOTgyOTksNTEyMjI5NzMsNTEzNDA2NjIsNTEzNDk5MTQsNTEzNTMzOTMsNTEzNjY0MjMsNTEzNzI2NzgsNTEzODk2MjksNTE0OTAzMzEsNTE0OTMyMDksNTE1MDU0MzYsNTE1MzA0OTUsNTE1MzQ2NjksNTE1NjUxMTUsNTE1ODM4MjEsNTE2MDUyNTgsNTE2MDk4MjksNTE2MTUwNjYsNTE2MjI4NDUsNTE2Mzg5MzIsNTE2NDY0NTAsNTE2NDgzMzYsNTE2NzIxNjIsNTE2ODE2NjIsNTE2ODM1MDIsNTE3MjkyMTgsNTE3NDIzNzcsNTE3NDI4MzAsNTE3NTI1MTgsNTE3NzgzNDAsNTE3OTg5MjgsNTE4MDMxMjcsNTE4MDM1ODYsNTE4MzMyNDEsNTE4NDI0MjIsNTE4NTc4MzgsNTE4NTc5MjAsNTE4ODc4ODAsNTE4OTU0MDQsNTE4OTU3NzEsNTE5MDE0MzcsNTE5MDI2MDUsNTE5MDI5NzcsNTE5MTA3MzUsNTE5MjcxODgsNTE5MjczNjAsNTE5MzYyMjgsNTE5Mzk3MDMsNTE5Mzk3MzAsNTE5NDUwNTYsNTE5NTQ5MjIsNTE5NTY1MTgsNTE5NTc0NDUsNTE5NTk2OTQsNTE5NTk4MDksNTE5NTk4ODAsNTE5NTk5NjcsNTE5NjgwODQsNTE5NzE3NzYsNTE5ODMzNjUsNTE5ODQ3MTcsNTE5ODQ4MjcsNTE5ODU1ODMsNTIwMDI4MDUsNTIwMTI1MjIsNTIwMTM5MjcsNTIwMTYxMzYsNTIwMjAwMzIsNTIwMjI0ODcsNTIwMjMzMzMsNTIwMjQyMTcsNTIwMjYxOTQsNTIwMjY4MTMsNTIwMjcwOTksNTIwMjc3NTEsNTIwMjc3NTMsNTIwMzU2NDQsNTIwMzY5MzksNTIwNDAzODQsNTIwNDMyMjcsNTIwNDY1MTgsNTIwNDcxNDgsNTIwNDc2ODQsNTIwNDc2ODcsNTIwNDc2OTEsNTIwNDg0MzQsNTIwNTY1MDIsNTIwNjQxMzUsNTIwNjU1ODksNTIwNzE4MDIsNTIwNzM5NjEsNTIwNzU5MjIsNTIwNzY3MDUsNTIwOTIwODcsNTIwOTY1MDcsNTIwOTg2ODUiLCJzZXJpYWxpemVkRXhwZXJpbWVudEZsYWdzIjoiSDVfYXN5bmNfbG9nZ2luZ19kZWxheV9tc1x1MDAzZDMwMDAwLjBcdTAwMjZhMTF5X2g1X2Fzc29jaWF0ZV9zdXJ2ZXlfcXVlc3Rpb25cdTAwM2R0cnVlXHUwMDI2YWJfZGV0X2FwYl9iXHUwMDNkdHJ1ZVx1MDAyNmFiX2RldF9hcG1cdTAwM2R0cnVlXHUwMDI2YWJfZGV0X2VsX2hcdTAwM2R0cnVlXHUwMDI2YWN0aW9uX2NvbXBhbmlvbl9jZW50ZXJfYWxpZ25fZGVzY3JpcHRpb25cdTAwM2R0cnVlXHUwMDI2YWRfcG9kX2Rpc2FibGVfY29tcGFuaW9uX3BlcnNpc3RfYWRzX3F1YWxpdHlcdTAwM2R0cnVlXHUwMDI2YWxsb3dfYXV0b2hpZGVfb25fcGF1c2VkX3ZpZGVvc1x1MDAzZHRydWVcdTAwMjZhbGxvd19kcm1fb3ZlcnJpZGVcdTAwM2R0cnVlXHUwMDI2YWxsb3dfbGl2ZV9hdXRvcGxheVx1MDAzZHRydWVcdTAwMjZhbGxvd19wb2x0ZXJndXN0X2F1dG9wbGF5XHUwMDNkdHJ1ZVx1MDAyNmFsbG93X3NraXBfbmV0d29ya2xlc3NcdTAwM2R0cnVlXHUwMDI2YWxsb3dfdnA5XzEwODBwX21xX2VuY1x1MDAzZHRydWVcdTAwMjZhbHdheXNfY2FjaGVfcmVkaXJlY3RfZW5kcG9pbnRcdTAwM2R0cnVlXHUwMDI2YWx3YXlzX3NlbmRfYW5kX3dyaXRlXHUwMDNkdHJ1ZVx1MDAyNmFubm90YXRpb25fbW9kdWxlX3Zhc3RfY2FyZHNfbG9hZF9sb2dnaW5nX2ZyYWN0aW9uXHUwMDNkMC4wXHUwMDI2YXNzaWduX2RybV9mYW1pbHlfYnlfZm9ybWF0XHUwMDNkdHJ1ZVx1MDAyNmF0dF93ZWJfcmVjb3JkX21ldHJpY3NcdTAwM2R0cnVlXHUwMDI2YXR0YWNoX2V4cGVyaW1lbnRfcHJvcGFnYXRpb25fY29udGV4dF90b19jb25maWdcdTAwM2R0cnVlXHUwMDI2YXR0bXVzaVx1MDAzZHRydWVcdTAwMjZhdXRvcGxheV90aW1lXHUwMDNkMTAwMDBcdTAwMjZhdXRvcGxheV90aW1lX2Zvcl9mdWxsc2NyZWVuXHUwMDNkLTFcdTAwMjZhdXRvcGxheV90aW1lX2Zvcl9tdXNpY19jb250ZW50XHUwMDNkLTFcdTAwMjZiZ192bV9yZWluaXRfdGhyZXNob2xkXHUwMDNkNzIwMDAwMFx1MDAyNmJsb2NrX3R2aHRtbDVfc2ltcGx5X2VtYmVkZGVkXHUwMDNkdHJ1ZVx1MDAyNmJsb2NrZWRfcGFja2FnZXNfZm9yX3Nwc1x1MDAzZFtdXHUwMDI2Ym90Z3VhcmRfYXN5bmNfc25hcHNob3RfdGltZW91dF9tc1x1MDAzZDMwMDBcdTAwMjZieXBhc3NfbGljZW5zZV9jaGVja19mb3JfaW5saW5lX211dGVkXHUwMDNkdHJ1ZVx1MDAyNmNhcHRpb25zX3VybF9hZGRfZWlcdTAwM2R0cnVlXHUwMDI2Y2hlY2tfbmF2aWdhdG9yX2FjY3VyYWN5X3RpbWVvdXRfbXNcdTAwM2QwXHUwMDI2Y2hlY2tfcGxheWFiaWxpdHlfc3RhdHVzX2luX2ZpbGxlcnNcdTAwM2R0cnVlXHUwMDI2Y2xpZW50X3VpX2VuYWJsZV9tdWx0aV90cmFja19hdWRpb19vbl93ZWJfZW1iZWRkZWRfcGxheWVyXHUwMDNkdHJ1ZVx1MDAyNmNvbXByZXNzaW9uX2Rpc2FibGVfcG9pbnRcdTAwM2QxMFx1MDAyNmNvd19vcHRpbWl6ZV9pZG9tX2NvbXBhdFx1MDAzZHRydWVcdTAwMjZjc2lfb25fZ2VsXHUwMDNkdHJ1ZVx1MDAyNmN1c3RvbV9hY3RpdmVfdmlld190b3NfdGltZW91dF9tc1x1MDAzZDM2MDAwMDBcdTAwMjZkYXNoX21hbmlmZXN0X3ZlcnNpb25cdTAwM2Q1XHUwMDI2ZGVidWdfYmFuZGFpZF9ob3N0bmFtZVx1MDAzZFx1MDAyNmRlYnVnX2JhbmRhaWRfcG9ydFx1MDAzZDBcdTAwMjZkZWJ1Z19zaGVybG9nX3VzZXJuYW1lXHUwMDNkXHUwMDI2ZGVkdXBwaW5nX3NlcnZlcl92ZVx1MDAzZHRydWVcdTAwMjZkZWxoaV9mYXN0X2ZvbGxvd19hdXRvbmF2X3RvZ2dsZVx1MDAzZHRydWVcdTAwMjZkZWxoaV9tb2Rlcm5fcGxheWVyX2RlZmF1bHRfdGh1bWJuYWlsX3BlcmNlbnRhZ2VcdTAwM2QwLjBcdTAwMjZkZWxoaV9tb2Rlcm5fcGxheWVyX2Zhc3Rlcl9hdXRvaGlkZV9kZWxheV9tc1x1MDAzZDIwMDBcdTAwMjZkZWxoaV9tb2Rlcm5fcGxheWVyX3BhdXNlX3RodW1ibmFpbF9wZXJjZW50YWdlXHUwMDNkMC42XHUwMDI2ZGVsaGlfbW9kZXJuX3dlYl9wbGF5ZXJfYmxlbmRpbmdfbW9kZVx1MDAzZFx1MDAyNmRlbGhpX21vZGVybl93ZWJfcGxheWVyX2Rpc2FibGVfZnJvc3RlZF9nbGFzc1x1MDAzZHRydWVcdTAwMjZkZWxoaV9tb2Rlcm5fd2ViX3BsYXllcl9ob3Jpem9udGFsX3ZvbHVtZV9jb250cm9sc1x1MDAzZHRydWVcdTAwMjZkZWxoaV9tb2Rlcm5fd2ViX3BsYXllcl9saHNfdm9sdW1lX2NvbnRyb2xzXHUwMDNkdHJ1ZVx1MDAyNmRlbGhpX21vZGVybl93ZWJfcGxheWVyX3Jlc3BvbnNpdmVfY29tcGFjdF9jb250cm9sc190aHJlc2hvbGRcdTAwM2QwXHUwMDI2ZGVwcmVjYXRlX2NhcHRpb25zX3RyYWNrX2NvdW50X2Rpc3BsYXlcdTAwM2R0cnVlXHUwMDI2ZGVwcmVjYXRlX2RlbGF5X3BpbmdcdTAwM2R0cnVlXHUwMDI2ZGVwcmVjYXRlX3BhaXJfc2VydmxldF9lbmFibGVkXHUwMDNkdHJ1ZVx1MDAyNmRlc2t0b3Bfc3BhcmtsZXNfbGlnaHRfY3RhX2J1dHRvblx1MDAzZHRydWVcdTAwMjZkaXNhYmxlX2F2MV9zZXR0aW5nXHUwMDNkdHJ1ZVx1MDAyNmRpc2FibGVfY2hpbGRfbm9kZV9hdXRvX2Zvcm1hdHRlZF9zdHJpbmdzXHUwMDNkdHJ1ZVx1MDAyNmRpc2FibGVfbGlmYV9pbl8ya180a1x1MDAzZHRydWVcdTAwMjZkaXNhYmxlX2xvZ190b192aXNpdG9yX2xheWVyXHUwMDNkdHJ1ZVx1MDAyNmRpc2FibGVfcGFjZl9sb2dnaW5nX2Zvcl9tZW1vcnlfbGltaXRlZF90dlx1MDAzZHRydWVcdTAwMjZkaXNhYmxlX3JlZHVjZWRfZnVsbHNjcmVlbl9hdXRvcGxheV9jb3VudGRvd25fZm9yX21pbm9yc1x1MDAzZHRydWVcdTAwMjZkaXNhYmxlX3JlZWxfaXRlbV93YXRjaF9mb3JtYXRfZmlsdGVyaW5nXHUwMDNkdHJ1ZVx1MDAyNmRpc2FibGVfdG91Y2hfZXZlbnRzX29uX3NraXBfYnV0dG9uXHUwMDNkdHJ1ZVx1MDAyNmR1cmF0aW9uX2JlZm9yZV9wYXVzZV9hZF9icmVha19tc19mb3Jfc3lzdGVtX3BhdXNlXHUwMDNkNTAwMFx1MDAyNmVkZ2VfZW5jcnlwdGlvbl9maWxsX3ByaW1hcnlfa2V5X3ZlcnNpb25cdTAwM2R0cnVlXHUwMDI2ZW1iZWRzX2Rlc2t0b2ZmX2VuYWJsZV9hZHNfdG9wX2Jhclx1MDAzZHRydWVcdTAwMjZlbWJlZHNfZGVza3RvcF9lbmFibGVfdm9sdW1lX3NsaWRlclx1MDAzZHRydWVcdTAwMjZlbWJlZHNfZW5hYmxlX2NoYW5uZWxfc3Vic2NyaWJlX2RlcHJlY2F0aW9uXHUwMDNkdHJ1ZVx1MDAyNmVtYmVkc19lbmFibGVfZW1iZWRfY29uZmlnX2Zvcl9tdXRlZF9hdXRvcGxheVx1MDAzZHRydWVcdTAwMjZlbWJlZHNfZW5hYmxlX2lubmVydHViZV9zdG9yZVx1MDAzZHRydWVcdTAwMjZlbWJlZHNfZW5hYmxlX21vdmVfc2V0X2NlbnRlcl9jcm9wX3RvX3B1YmxpY1x1MDAzZHRydWVcdTAwMjZlbWJlZHNfZW5hYmxlX3Blcl92aWRlb19lbWJlZF9jb25maWdcdTAwM2R0cnVlXHUwMDI2ZW1iZWRzX3dlYl9saXRlX21vZGVcdTAwM2QxXHUwMDI2ZW5hYmxlX2ExMXlfZm9jdXNfZml4X2Zvcl9tYWNfcGFuZWxfb25fZGVza3RvcFx1MDAzZHRydWVcdTAwMjZlbmFibGVfYWJhbmRvbl9waW5nX2Zvcl9zc2RhaVx1MDAzZHRydWVcdTAwMjZlbmFibGVfYWNjZXNzX2NvZGVfc2VydmljZV9ycGNcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2FjaV9vbl9scl9mZWVkc1x1MDAzZHRydWVcdTAwMjZlbmFibGVfYWN0aXZlX3ZpZXdfZGlzcGxheV9hZF9yZW5kZXJlcl93ZWJfaG9tZVx1MDAzZHRydWVcdTAwMjZlbmFibGVfYWN0aXZlX3ZpZXdfbHJfc2hvcnRzX3ZpZGVvXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9hY3RpdmVfdmlld19td2ViX3Nob3J0c192aWRlb1x1MDAzZHRydWVcdTAwMjZlbmFibGVfYWN0aXZlX3ZpZXdfd2ViX3Nob3J0c192aWRlb1x1MDAzZHRydWVcdTAwMjZlbmFibGVfYWRfY3BuX21hY3JvX3N1YnN0aXR1dGlvbl9mb3JfY2xpY2tfcGluZ3NcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2FkX2Rpc2Nsb3N1cmVfYmFubmVyX2ExMXlfZml4XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9hbnRpc2NyYXBpbmdfd2ViX3BsYXllcl9leHBpcmVkXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9hcHBfcHJvbW9fZW5kY2FwX2VtbF9vbl90YWJsZXRcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2F0dGVudGlvbl9sb2dnaW5nX21lYXN1cmVfb25fc2hvd25cdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2F1X3UxNl92ZXJpZnlfYWdlX3BhZ2VcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2F1dG9tb3RpdmVfZm9ybV9mYWN0b3JfY2hlY2tcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2F2MV9mb3JfeXR2X2xpdmVcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2JhdGNoZWRfY3Jvc3NfZGV2aWNlX3BpbmdzX2luX2dlbF9mYW5vdXRcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2NhcGFiaWxpdHlfZm9ybWF0X2ZpbHRlcl9pbl93YXRjaF9zZXJ2ZXJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2Nhc3RfZm9yX3dlYl91bnBsdWdnZWRcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2NlbnRlcmVkX2NhcHRpb25fZm9yX3R2ZmlsbV92aWRlb1x1MDAzZHRydWVcdTAwMjZlbmFibGVfY2lwaGVyX2Zvcl9tYW5pZmVzdF91cmxzXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9jbGVhbnVwX21hc3RoZWFkX2F1dG9wbGF5X2hhY2tfZml4XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9jbGllbnRfcGFnZV9pZF9oZWFkZXJfZm9yX2ZpcnN0X3BhcnR5X3BpbmdzXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9jbGllbnRfc2xpX2xvZ2dpbmdcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2NsaWVudF92ZV9zcGVjXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9jdGFfYmFubmVyX29uX3VucGx1Z2dlZF9sclx1MDAzZHRydWVcdTAwMjZlbmFibGVfY3VzdG9tX3BsYXloZWFkX3BhcnNpbmdcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2N1c3RvbV9zY3J1YmJlcl92Mlx1MDAzZHRydWVcdTAwMjZlbmFibGVfZGFpX3NkZl9oNV9wcmVyb2xsXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9kYXRhc3luY19pZF9oZWFkZXJfaW5fd2ViX3Zzc19waW5nc1x1MDAzZHRydWVcdTAwMjZlbmFibGVfZGVmYXVsdF9tb25vX2N0YV9taWdyYXRpb25fd2ViX2NsaWVudFx1MDAzZHRydWVcdTAwMjZlbmFibGVfZHNhX2FkX2JhZGdlX2Zvcl9hY3Rpb25fZW5kY2FwX29uX2FuZHJvaWRcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2RzYV9hZF9iYWRnZV9mb3JfYWN0aW9uX2VuZGNhcF9vbl9pb3NcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2VuZGVtaWNfaGlnaF9jY3Zfc21lYXJpbmdfaDVcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2VudGl0eV9zdG9yZV9mcm9tX2RlcGVuZGVuY3lfaW5qZWN0aW9uXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9lcnJvcl9jb3JyZWN0aW9uc19pbmZvY2FyZF93ZWJfY2xpZW50XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9lcnJvcl9jb3JyZWN0aW9uc19pbmZvY2FyZHNfaWNvbl93ZWJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2dldF9yZW1pbmRlcl9idXR0b25fb25fd2ViXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9pbmxpbmVfbXV0ZWRfcGxheWJhY2tfb25fd2ViX3NlYXJjaFx1MDAzZHRydWVcdTAwMjZlbmFibGVfaW5saW5lX211dGVkX3BsYXliYWNrX29uX3dlYl9zZWFyY2hfZm9yX3ZkY1x1MDAzZHRydWVcdTAwMjZlbmFibGVfaW5saW5lX211dGVkX3BsYXliYWNrX29uX3dlYl9zZWFyY2hfZm9yX3ZkY2JcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX2x0Y19wYXJhbV9mZXRjaF9mcm9tX2lubmVydHViZVx1MDAzZHRydWVcdTAwMjZlbmFibGVfbWl4ZWRfZGlyZWN0aW9uX2Zvcm1hdHRlZF9zdHJpbmdzXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9tb2Rlcm5fc2tpcF9idXR0b25fb25fd2ViXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9td2ViX2F1ZGlvX3RyYWNrX3BpY2tlclx1MDAzZHRydWVcdTAwMjZlbmFibGVfbXdlYl9rZXlib2FyZF9zaG9ydGN1dHNcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX25ld19wYWlkX3Byb2R1Y3RfcGxhY2VtZW50XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9vcGVuX2luX25ld190YWJfaWNvbl9mb3Jfc2hvcnRfZHJfZm9yX2Rlc2t0b3Bfc2VhcmNoXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9vdXRfb2Zfc3RvY2tfdGV4dF9hbGxfc3VyZmFjZXNcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3BhaWRfY29udGVudF9vdmVybGF5X2J1Z2ZpeFx1MDAzZHRydWVcdTAwMjZlbmFibGVfcGF1c2VfYWRzX29uX3l0dl9odG1sNVx1MDAzZHRydWVcdTAwMjZlbmFibGVfcGxheWVyX2NhcHRpb25zX3BlcnNpc3RlbmNlX3N0YXRlX21hY2hpbmVcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3BvX2RlY29yYXRpb25fb2ZfZm9yY2VkX3RyYWNrc1x1MDAzZHRydWVcdTAwMjZlbmFibGVfcG9saWN5X2Jhc2VkX2hxYV9maWx0ZXJfaW5fd2F0Y2hfc2VydmVyXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9wcm9ncmVzX2NvbW1hbmRzX2xyX2ZlZWRzXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9wcm9ncmVzc19jb21tYW5kc19lbF9kYWlcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3Byb2dyZXNzX2NvbW1hbmRzX2xyX3Nob3J0c1x1MDAzZHRydWVcdTAwMjZlbmFibGVfcHVibGlzaGluZ19yZWdpb25fcGFyYW1faW5fc3VzXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9wdl9zY3JlZW5fbW9kZXJuX3RleHRcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3Jwcl90b2tlbl9vbl9sdGxfbG9va3VwXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zY3JlZW5fbWFuYWdlcl9sYXllcl9zZXBhcmF0aW9uXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zZGZfY29tcGFuaW9uX2g1XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zZGZfZGFpX2g1X21pZHJvbGxcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3NkZl9oNV9lbmRlbWljX21pZF9wb3N0X3JvbGxcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3NkZl9vbl9oNV91bnBsdWdnZWRfdm9kX21pZHJvbGxcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3NkZl9zaG9ydHNfcGxheWVyX2J5dGVzX2g1XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zZXJ2ZXJfZHJpdmVuX2Ficlx1MDAzZHRydWVcdTAwMjZlbmFibGVfc2VydmVyX2RyaXZlbl9hYnJfZm9yX2JhY2tncm91bmRhYmxlXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zZXJ2ZXJfZHJpdmVuX2Ficl91cmxfZ2VuZXJhdGlvblx1MDAzZHRydWVcdTAwMjZlbmFibGVfc2VydmVyX2RyaXZlbl9yZWFkYWhlYWRcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3NraXBfYWRfZ3VpZGFuY2VfcHJvbXB0XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9za2lwX3RvX25leHRfbWVzc2FnaW5nXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9za2lwcGFibGVfYWRzX2Zvcl91bnBsdWdnZWRfYWRfcG9kXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV9zbWFydF9za2lwX3BsYXllcl9jb250cm9sc19zaG93bl9vbl93ZWJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3NtYXJ0X3NraXBfcGxheWVyX2NvbnRyb2xzX3Nob3duX29uX3dlYl9pbmNyZWFzZWRfdHJpZ2dlcmluZ19zZW5zaXRpdml0eVx1MDAzZHRydWVcdTAwMjZlbmFibGVfc21hcnRfc2tpcF9zcGVlZG1hc3Rlcl9vbl93ZWJcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3NtZWFyaW5nX2V4cGFuc2lvbl9kYWlcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3NwbGl0X3NjcmVlbl9hZF9iYXNlbGluZV9leHBlcmllbmNlX2VuZGVtaWNfbGl2ZV9oNVx1MDAzZHRydWVcdTAwMjZlbmFibGVfc3ViZnJhZ21lbnRlZF9jYXB0aW9uX2ZpbHRlcmluZ1x1MDAzZHRydWVcdTAwMjZlbmFibGVfc3VwZXhfbXdlYl9kZW1vX3dlYmZlXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV90b19jYWxsX3BsYXlyZWFkeV9iYWNrZW5kX2RpcmVjdGx5XHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV91bmlmaWVkX2FjdGlvbl9lbmRjYXBfb25fd2ViXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV92ZW5vbV9ub3RpZmljYXRpb25fY2FjaGVcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3ZpZGVvX2Rpc3BsYXlfY29tcGFjdF9idXR0b25fZ3JvdXBfZm9yX2Rlc2t0b3Bfc2VhcmNoXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV92b2ljZV9ib29zdF9mZWF0dXJlXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV92cDlfYXBwbGV0djVfb25fc2VydmVyXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV93ZWJfZGVsaGlfaWNvbnNcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3dlYl9ob21lX3RvcF9sYW5kc2NhcGVfaW1hZ2VfbGF5b3V0X2xldmVsX2NsaWNrXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV93ZWJfbWVkaWFfc2Vzc2lvbl9tZXRhZGF0YV9maXhcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3dlYl9wcmVtaXVtX3ZhcmlzcGVlZF91cHNlbGxcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3dlYl9zaG9ydHNfYXVkaW9fdHJhY2tcdTAwM2R0cnVlXHUwMDI2ZW5hYmxlX3dlYl90aWVyZWRfZ2VsXHUwMDNkdHJ1ZVx1MDAyNmVuYWJsZV93aXpfcXVldWVfZWZmZWN0X2FuZF9vbl9pbml0X2luaXRpYWxfcnVuc1x1MDAzZHRydWVcdTAwMjZlbmFibGVfeXRfYXRhX2lmcmFtZV9hdXRodXNlclx1MDAzZHRydWVcdTAwMjZlbmFibGVfeXR2X2NzZGFpX3ZwOVx1MDAzZHRydWVcdTAwMjZlbmRlbWljX2hpZ2hfY2N2X3NtZWFyaW5nX2FsbG93ZWRfdmlkZW9faWRzXHUwMDNkW09KbHdJZG9GejlBLCBBcktiQXgxSy0yVSwgbV9kaE1TdlVDSWMsIEMxRGhwSjA3WnVFLCBOcTJ3WWxXRnVjZywgSkM3ZjNFVURhcXcsIHZyM1h5VkNSNFQwLCBnQ05lRFdDSTB2bywga0JUdWRtNGdlTXMsIEZ4c2ZWWDZCMU1rLCB5bFlKU0JVZ2FNQSwgVldoUTZ4c3BuU2MsIFJIVWF1TWNZbFgwLCBjYjEyS21NTURKQSwgV0p4RWpfaHJwU2csIGV1aFktdG1nOXg4LCBUbElWSTJFVzdSMCwgTUlOZnZPWDRCekksIHlIbVBXemtoY1o4LCBwM3cxdk85WHYyNCwgVmxhQ25wMWZ4STgsIC1PZkEwNEJENEdBLCAxb2RZM0lZc05ubywgd2lUVHJWcVJWRHcsIERmbTJyQi1uUTlZLCBRbTFGdHo4bFZuSSwgOWl0QXhxX1NHRE0sIHlGSTN3cFh5NHpBLCBQeTVKWVpYSnZ6bywgYjR0RTVhS2h0bGcsIDVKRHhqc0FWYUdrLCBlVW1mR1BhenVFTSwgVzhuVGhxNjJWYjQsIFZManZTM3VmbFhjLCBCZmRMS3ZKQk1fYywgd2VMWGR3VmpTeHMsIDJKYS11UE9rejdJLCBBOVFCVkZFWXhPUSwgay1aRlFra0hVZmMsIHd1dTBEMjBBWnFJLCBfSHZpU3lDN3pTVSwgX194T3pfUTNxUjQsIHcyc0I4N2pMRTFJLCA4clRURU1kTWg4USwgLWs2bXBnbXhlclUsIDk3Y2tuckp5TFdnLCAyRkl0Vnl4TE5OYywgb3RueGZjc0dFLVksIHM5eEwxRHBCc2ZRLCB3ZkFHQlZnVXJybywgblhINlR4US1zaTgsIFdpSTFYZ19uRXU4LCAzZmxhc0dWVXJDQSwgZURZX0hlOTJsY1UsIGE0N2NrWEtaanhJLCBJNldSWGVLWks2NCwgVDlKNURxUDJES3csIEt0a19JMHBVcEc4LCBlUTJjekdxT0NQZywgaExtVTQ5aG1aNGMsIDdmN01nYU1FN1NjLCBRQjVCTmRCRnVqRSwgQUdodE1VX2ZpNzAsIHAyUmFRVVJSQXdBLCBtel9fRU1ZcFdQdywgNmpoTHVTUVZJeFUsIHJDODN2X3V1SXFvLCA2RGFHZEpSX2VMZywgY200M3VYamZ2WlksIFkxSnNQcG0yYm1RLCB6MDk3alB5S2VlbywgVFlWWldVVGpreDAsIFZIYUF2ZW5mVERrLCB0djlPVV81UTBwUSwgNm9LQ3Z6bTZIbWcsIEJFRlVFUmhUMG4wLCB1VE4tZXUwLU9YRSwgaGJhcHJoUjd6VG8sIDJDVjBWLW9NTkZNLCB1OGRTT0tvTkpwMCwgSDhNcXF3bUZzeFksIElza2ttTlBKZFVrLCBYOUhfRXpwREdYUV1cdTAwMjZlbmRlbWljX2hpZ2hfY2N2X3NtZWFyaW5nX21heF93aW5kb3dfc2Vjb25kc1x1MDAzZDYwXHUwMDI2ZXhwYW5kX21lZGlhdGVrX2RlbnlsaXN0X3RvX2FsbF9saXZlX3ZwOV9pbl9iYWNrZW5kX2V4cGVyaW1lbnRcdTAwM2RbXVx1MDAyNmV4cG9ydF9uZXR3b3JrbGVzc19vcHRpb25zXHUwMDNkdHJ1ZVx1MDAyNmV4cG9ydF9wbGF5ZXJfdmVyc2lvbl90b195dGNvbmZpZ1x1MDAzZHRydWVcdTAwMjZmaWxsX2Fkc191c3RyZWFtZXJfY29uZmlnXHUwMDNkdHJ1ZVx1MDAyNmZpbGxfbGl2ZV9yZXF1ZXN0X2NvbmZpZ19pbl91c3RyZWFtZXJfY29uZmlnXHUwMDNkdHJ1ZVx1MDAyNmZpbGxfc2luZ2xlX3ZpZGVvX3dpdGhfbm90aWZ5X3RvX2xhc3JcdTAwM2R0cnVlXHUwMDI2ZmlsdGVyX3ZiX3dpdGhvdXRfbm9uX3ZiX2VxdWl2YWxlbnRzXHUwMDNkdHJ1ZVx1MDAyNmZpbHRlcl92cDlfZm9yX2xpdmVfZGFpXHUwMDNkdHJ1ZVx1MDAyNmZpeF9hZF9taW5pcGxheWVyX2NvbnRyb2xzX3JlbmRlcmluZ1x1MDAzZHRydWVcdTAwMjZmaXhfYWRzX3RyYWNraW5nX2Zvcl9zd2ZfY29uZmlnX2RlcHJlY2F0aW9uX213ZWJcdTAwM2R0cnVlXHUwMDI2Zml4X2g1X3RvZ2dsZV9idXR0b25fYTExeVx1MDAzZHRydWVcdTAwMjZmaXhfc3VydmV5X2NvbG9yX2NvbnRyYXN0X29uX2Rlc3RvcFx1MDAzZHRydWVcdTAwMjZmcmVzY2FfcG9sbGluZ19kZWxheV9vdmVycmlkZVx1MDAzZDBcdTAwMjZnYWJfcmV0dXJuX3NhYnJfc3NkYWlfY29uZmlnXHUwMDNkdHJ1ZVx1MDAyNmdlbF9taW5fYmF0Y2hfc2l6ZVx1MDAzZDNcdTAwMjZnZWxfcXVldWVfdGltZW91dF9tYXhfbXNcdTAwM2Q2MDAwMFx1MDAyNmd2aV9jaGFubmVsX2NsaWVudF9zY3JlZW5cdTAwM2R0cnVlXHUwMDI2aDVfY29tcGFuaW9uX2VuYWJsZV9hZGNwbl9tYWNyb19zdWJzdGl0dXRpb25fZm9yX2NsaWNrX3BpbmdzXHUwMDNkdHJ1ZVx1MDAyNmg1X2VuYWJsZV9hZF9tYnNcdTAwM2R0cnVlXHUwMDI2aDVfaW5wbGF5ZXJfZW5hYmxlX2FkY3BuX21hY3JvX3N1YnN0aXR1dGlvbl9mb3JfY2xpY2tfcGluZ3NcdTAwM2R0cnVlXHUwMDI2aDVfcmVzZXRfY2FjaGVfYW5kX2ZpbHRlcl9iZWZvcmVfdXBkYXRlX21hc3RoZWFkXHUwMDNkdHJ1ZVx1MDAyNmg1X3plcm9fZHVyYXRpb25fY3VlX3JhbmdlX2Zvcl9kaWJzXHUwMDNkdHJ1ZVx1MDAyNmhmcl9kcm9wcGVkX2ZyYW1lcmF0ZV9mYWxsYmFja190aHJlc2hvbGRcdTAwM2QwXHUwMDI2aGlnaF9jY3ZfY2xpZW50X3NpZGVfY2FjaGluZ19oNVx1MDAzZHRydWVcdTAwMjZobHNfdXNlX25ld19jb2RlY3Nfc3RyaW5nX2FwaVx1MDAzZHRydWVcdTAwMjZodG1sNV9hZF90aW1lb3V0X21zXHUwMDNkMFx1MDAyNmh0bWw1X2FkYXB0YXRpb25fc3RlcF9jb3VudFx1MDAzZDBcdTAwMjZodG1sNV9hZHNfcHJlcm9sbF9sb2NrX3RpbWVvdXRfZGVsYXlfbXNcdTAwM2QxNTAwMFx1MDAyNmh0bWw1X2FsbG93X211bHRpdmlld190aWxlX3ByZWxvYWRcdTAwM2R0cnVlXHUwMDI2aHRtbDVfYWxsb3dfcHJlbG9hZGluZ193aXRoX2lkbGVfb25seV9uZXR3b3JrX2Zvcl9zYWJyXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2FsbG93X3ZpZGVvX2tleWZyYW1lX3dpdGhvdXRfYXVkaW9cdTAwM2R0cnVlXHUwMDI2aHRtbDVfYXBwbHlfY29uc3RyYWludHNfaW5fY2xpZW50X2Zvcl9zYWJyXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2FwcGx5X21pbl9mYWlsdXJlc1x1MDAzZHRydWVcdTAwMjZodG1sNV9hcHBseV9zdGFydF90aW1lX3dpdGhpbl9hZHNfZm9yX3NzZGFpX3RyYW5zaXRpb25zXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2F0cl9kaXNhYmxlX2ZvcmNlX2ZhbGxiYWNrXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2F0dF9wbGF5YmFja190aW1lb3V0X21zXHUwMDNkMzAwMDBcdTAwMjZodG1sNV9hdHRhY2hfbnVtX3JhbmRvbV9ieXRlc190b19iYW5kYWlkXHUwMDNkMFx1MDAyNmh0bWw1X2F0dGFjaF9wb190b2tlbl90b19iYW5kYWlkXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2F1dG9uYXZfY2FwX2lkbGVfc2Vjc1x1MDAzZDBcdTAwMjZodG1sNV9hdXRvbmF2X3F1YWxpdHlfY2FwXHUwMDNkNzIwXHUwMDI2aHRtbDVfYXV0b3BsYXlfZGVmYXVsdF9xdWFsaXR5X2NhcFx1MDAzZDBcdTAwMjZodG1sNV9hdXhpbGlhcnlfZXN0aW1hdGVfd2VpZ2h0XHUwMDNkMC4wXHUwMDI2aHRtbDVfYXYxX29yZGluYWxfY2FwXHUwMDNkMFx1MDAyNmh0bWw1X2JhbmRhaWRfYXR0YWNoX2NvbnRlbnRfcG9fdG9rZW5cdTAwM2R0cnVlXHUwMDI2aHRtbDVfYmxvY2tfcGlwX3NhZmFyaV9kZWxheVx1MDAzZDBcdTAwMjZodG1sNV9ieXBhc3NfY29udGVudGlvbl9zZWNzXHUwMDNkMC4wXHUwMDI2aHRtbDVfYnl0ZXJhdGVfc29mdF9jYXBcdTAwM2QwXHUwMDI2aHRtbDVfY2hlY2tfZm9yX2lkbGVfbmV0d29ya19pbnRlcnZhbF9tc1x1MDAzZDEwMDBcdTAwMjZodG1sNV9jaGlwc2V0X3NvZnRfY2FwXHUwMDNkODE5Mlx1MDAyNmh0bWw1X2NsYW1wX2ludmFsaWRfc2Vla190b19taW5fc2Vla2FibGVfdGltZVx1MDAzZHRydWVcdTAwMjZodG1sNV9jb25zdW1lX2FsbF9idWZmZXJlZF9ieXRlc19vbmVfcG9sbFx1MDAzZHRydWVcdTAwMjZodG1sNV9jb250aW51b3VzX2dvb2RwdXRfcHJvYmVfaW50ZXJ2YWxfbXNcdTAwM2QwXHUwMDI2aHRtbDVfZDZkZTRfY2xvdWRfcHJvamVjdF9udW1iZXJcdTAwM2Q4Njg2MTg2NzY5NTJcdTAwMjZodG1sNV9kZWJ1Z19kYXRhX2xvZ19wcm9iYWJpbGl0eVx1MDAzZDAuMFx1MDAyNmh0bWw1X2RlY29kZV90b190ZXh0dXJlX2NhcFx1MDAzZHRydWVcdTAwMjZodG1sNV9kZWZhdWx0X2FkX2dhaW5cdTAwM2QwLjVcdTAwMjZodG1sNV9kZWZhdWx0X2F2MV90aHJlc2hvbGRcdTAwM2QwXHUwMDI2aHRtbDVfZGVmYXVsdF9xdWFsaXR5X2NhcFx1MDAzZDBcdTAwMjZodG1sNV9kZWZlcl9mZXRjaF9hdHRfbXNcdTAwM2QwXHUwMDI2aHRtbDVfZGVsYXllZF9yZXRyeV9jb3VudFx1MDAzZDFcdTAwMjZodG1sNV9kZWxheWVkX3JldHJ5X2RlbGF5X21zXHUwMDNkNTAwMFx1MDAyNmh0bWw1X2RlcHJlY2F0ZV9hZHNlcnZpY2VcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZGVwcmVjYXRlX21hbmlmZXN0ZnVsX2ZhbGxiYWNrXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2RlcHJlY2F0ZV92aWRlb190YWdfcG9vbFx1MDAzZHRydWVcdTAwMjZodG1sNV9kZXNrdG9wX3ZyMTgwX2FsbG93X3Bhbm5pbmdcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZGZfZG93bmdyYWRlX3RocmVzaFx1MDAzZDAuNlx1MDAyNmh0bWw1X2Rpc2FibGVfYmFuZHdpZHRoX2NvZmFjdG9yc19mb3Jfc2Ficl9saXZlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2Rpc2FibGVfY2xpZW50X2F1dG9uYXZfY2FwX2Zvcl9vbmVzaWVcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZGlzYWJsZV9sb29wX3JhbmdlX2Zvcl9zaG9ydHNfYWRzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2Rpc2FibGVfbm9uX2NvbnRpZ3VvdXNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZGlzYWJsZV9wZWFrX3NoYXZlX2Zvcl9vbmVzaWVcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZGlzYWJsZV91c3RyZWFtZXJfY29uc3RyYWludF9mb3Jfc2Ficlx1MDAzZHRydWVcdTAwMjZodG1sNV9kaXNhYmxlX3dlYl9zYWZhcmlfZGFpXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2Rpc3BsYXllZF9mcmFtZV9yYXRlX2Rvd25ncmFkZV90aHJlc2hvbGRcdTAwM2Q0NVx1MDAyNmh0bWw1X2RybV9ieXRlcmF0ZV9zb2Z0X2NhcFx1MDAzZDBcdTAwMjZodG1sNV9kcm1fY2hlY2tfYWxsX2tleV9lcnJvcl9zdGF0ZXNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZHJtX2NwaV9saWNlbnNlX2tleVx1MDAzZHRydWVcdTAwMjZodG1sNV9kcm1fbGl2ZV9ieXRlcmF0ZV9zb2Z0X2NhcFx1MDAzZDBcdTAwMjZodG1sNV9lYXJseV9tZWRpYV9mb3Jfc2hhcnBlcl9zaG9ydHNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX2FjM1x1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfYXVkaW9fdHJhY2tfc3RpY2tpbmVzc1x1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfYXVkaW9fdHJhY2tfc3RpY2tpbmVzc19waGFzZV90d29cdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX2NhcHRpb25fY2hhbmdlc19mb3JfbW9zYWljXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV9jb21wb3NpdGVfZW1iYXJnb1x1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfZDZkZTRcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX2Q2ZGU0X2NvbGRfc3RhcnRfYW5kX2Vycm9yXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV9kNmRlNF9pZGxlX3ByaW9yaXR5X2pvYlx1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfZHJjXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV9kcmNfdG9nZ2xlX2FwaVx1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfZWFjM1x1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfZW1iZWRkZWRfcGxheWVyX3Zpc2liaWxpdHlfc2lnbmFsc1x1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfZW5jcnlwdGVkX2F2MVx1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfb2R1Y1x1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfc2Ficl9mb3JtYXRfc2VsZWN0aW9uXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV9zYWJyX2Zyb21fd2F0Y2hfc2VydmVyXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV9zYWJyX2hvc3RfZmFsbGJhY2tcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX3NhYnJfb25feXRfZW1iZWRzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV9zYWJyX3ZvZF9zdHJlYW1pbmdfeGhyXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV9zZXJ2ZXJfZHJpdmVuX3JlcXVlc3RfY2FuY2VsbGF0aW9uXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuYWJsZV9zcHNfcmV0cnlfYmFja29mZl9tZXRhZGF0YV9yZXF1ZXN0c1x1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfc3NkYWlfdHJhbnNpdGlvbl93aXRoX29ubHlfZW50ZXJfY3VlcmFuZ2VcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX3RyaWdnZXJpbmdfY3VlcG9pbnRfZm9yX3Nsb3RcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZW5hYmxlX3R2b3NfZGFzaFx1MDAzZHRydWVcdTAwMjZodG1sNV9lbmFibGVfdHZvc19lbmNyeXB0ZWRfdnA5XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2VuY291cmFnZV9hcnJheV9jb2FsZXNjaW5nXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2ZpbGxfZGVmYXVsdF9tb3NhaWNfYXVkaW9fdHJhY2tfaWRcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZml4ZWRfbWVkaWFfZHVyYXRpb25fZm9yX3JlcXVlc3RcdTAwM2QwXHUwMDI2aHRtbDVfZmx1c2hfaW5kZXhfb25fdXBkYXRlZF90aW1lc3RhbXBfb2Zmc2V0XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2ZvcmNlX3NhYnJfZnJvbV93YXRjaF9zZXJ2ZXJfZm9yX2Rmc3NcdTAwM2R0cnVlXHUwMDI2aHRtbDVfZm9yd2FyZF9jbGlja190cmFja2luZ19wYXJhbXNfb25fcmVsb2FkXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2dhcGxlc3NfYWRfYXV0b3BsYXlfb25fdmlkZW9fdG9fYWRfb25seVx1MDAzZHRydWVcdTAwMjZodG1sNV9nYXBsZXNzX2VuZGVkX3RyYW5zaXRpb25fYnVmZmVyX21zXHUwMDNkMjAwXHUwMDI2aHRtbDVfZ2FwbGVzc19oYW5kb2ZmX2Nsb3NlX2VuZF9sb25nX3JlYnVmZmVyX2NmbFx1MDAzZHRydWVcdTAwMjZodG1sNV9nYXBsZXNzX2hhbmRvZmZfY2xvc2VfZW5kX2xvbmdfcmVidWZmZXJfZGVsYXlfbXNcdTAwM2QwXHUwMDI2aHRtbDVfZ2FwbGVzc19sb29wX3NlZWtfb2Zmc2V0X2luX21pbGxpXHUwMDNkMFx1MDAyNmh0bWw1X2dhcGxlc3Nfc2xvd19zZWVrX2NmbFx1MDAzZHRydWVcdTAwMjZodG1sNV9nYXBsZXNzX3Nsb3dfc2Vla19kZWxheV9tc1x1MDAzZDBcdTAwMjZodG1sNV9nYXBsZXNzX3Nsb3dfc3RhcnRfZGVsYXlfbXNcdTAwM2QwXHUwMDI2aHRtbDVfZ2VuZXJhdGVfY29udGVudF9wb190b2tlblx1MDAzZHRydWVcdTAwMjZodG1sNV9nZW5lcmF0ZV9zZXNzaW9uX3BvX3Rva2VuXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2dsX2Zwc190aHJlc2hvbGRcdTAwM2QwXHUwMDI2aHRtbDVfaGFyZF9jYXBfbWF4X3ZlcnRpY2FsX3Jlc29sdXRpb25fZm9yX3Nob3J0c1x1MDAzZDBcdTAwMjZodG1sNV9oZGNwX3Byb2Jpbmdfc3RyZWFtX3VybFx1MDAzZFx1MDAyNmh0bWw1X2hlYWRfbWlzc19zZWNzXHUwMDNkMC4wXHUwMDI2aHRtbDVfaGZyX3F1YWxpdHlfY2FwXHUwMDNkMFx1MDAyNmh0bWw1X2hpZ2hfcmVzX2xvZ2dpbmdfcGVyY2VudFx1MDAzZDAuMDFcdTAwMjZodG1sNV9oaWdoX3Jlc19zZWVrX2xvZ2dpbmdcdTAwM2R0cnVlXHUwMDI2aHRtbDVfaG9wZWxlc3Nfc2Vjc1x1MDAzZDBcdTAwMjZodG1sNV9odWxpX3NzZGFpX3VzZV9wbGF5YmFja19zdGF0ZVx1MDAzZHRydWVcdTAwMjZodG1sNV9pZGxlX3JhdGVfbGltaXRfbXNcdTAwM2QwXHUwMDI2aHRtbDVfaWdub3JlX3BhcnRpYWxfc2VnbWVudF9mcm9tX2xpdmVfcmVhZGFoZWFkXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2lnbm9yZV9zYWJyc2Vla19kdXJpbmdfYWRza2lwXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2lubmVydHViZV9oZWFydGJlYXRzX2Zvcl9mYWlycGxheVx1MDAzZHRydWVcdTAwMjZodG1sNV9pbm5lcnR1YmVfaGVhcnRiZWF0c19mb3Jfd2lkZXZpbmVcdTAwM2R0cnVlXHUwMDI2aHRtbDVfanVtYm9fbW9iaWxlX3N1YnNlZ21lbnRfcmVhZGFoZWFkX3RhcmdldFx1MDAzZDMuMFx1MDAyNmh0bWw1X2p1bWJvX3VsbF9ub25zdHJlYW1pbmdfbWZmYV9tc1x1MDAzZDQwMDBcdTAwMjZodG1sNV9qdW1ib191bGxfc3Vic2VnbWVudF9yZWFkYWhlYWRfdGFyZ2V0XHUwMDNkMS4zXHUwMDI2aHRtbDVfa2FidWtpX2RybV9saXZlXzUxX2RlZmF1bHRfb2ZmXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2xpY2Vuc2VfY29uc3RyYWludF9kZWxheVx1MDAzZDUwMDBcdTAwMjZodG1sNV9saXZlX2Ficl9oZWFkX21pc3NfZnJhY3Rpb25cdTAwM2QwLjBcdTAwMjZodG1sNV9saXZlX2Ficl9yZXByZWRpY3RfZnJhY3Rpb25cdTAwM2QwLjBcdTAwMjZodG1sNV9saXZlX2NodW5rX3JlYWRhaGVhZF9wcm94aW1hX292ZXJyaWRlXHUwMDNkMFx1MDAyNmh0bWw1X2xpdmVfbG93X2xhdGVuY3lfYmFuZHdpZHRoX3dpbmRvd1x1MDAzZDAuMFx1MDAyNmh0bWw1X2xpdmVfbm9ybWFsX2xhdGVuY3lfYmFuZHdpZHRoX3dpbmRvd1x1MDAzZDAuMFx1MDAyNmh0bWw1X2xpdmVfcXVhbGl0eV9jYXBcdTAwM2QwXHUwMDI2aHRtbDVfbGl2ZV91bHRyYV9sb3dfbGF0ZW5jeV9iYW5kd2lkdGhfd2luZG93XHUwMDNkMC4wXHUwMDI2aHRtbDVfbGl2ZW5lc3NfZHJpZnRfY2h1bmtfb3ZlcnJpZGVcdTAwM2QwXHUwMDI2aHRtbDVfbGl2ZW5lc3NfZHJpZnRfcHJveGltYV9vdmVycmlkZVx1MDAzZDBcdTAwMjZodG1sNV9sb2dfYXVkaW9fYWJyXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2xvZ19leHBlcmltZW50X2lkX2Zyb21fcGxheWVyX3Jlc3BvbnNlX3RvX2N0bXBcdTAwM2RcdTAwMjZodG1sNV9sb2dfZmlyc3Rfc3NkYWlfcmVxdWVzdHNfa2lsbHN3aXRjaFx1MDAzZHRydWVcdTAwMjZodG1sNV9sb2dfcmVidWZmZXJfZXZlbnRzXHUwMDNkNVx1MDAyNmh0bWw1X2xvZ19zYWJyX21hbGZvcm1lZF9jb25maWdfcHJvdG9fc2hhcmVkXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X2xvZ190cmlnZ2VyX2V2ZW50c193aXRoX2RlYnVnX2RhdGFcdTAwM2R0cnVlXHUwMDI2aHRtbDVfbG9nX3Zzc19leHRyYV9scl9jcGFyYW1zX2ZyZXFcdTAwM2RcdTAwMjZodG1sNV9sb25nX3JlYnVmZmVyX2ppZ2dsZV9jbXRfZGVsYXlfbXNcdTAwM2QwXHUwMDI2aHRtbDVfbG9uZ19yZWJ1ZmZlcl90aHJlc2hvbGRfbXNcdTAwM2QzMDAwMFx1MDAyNmh0bWw1X21hbmlmZXN0bGVzc192cDlfb3RmXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X21heF9idWZmZXJfaGVhbHRoX2Zvcl9kb3duZ3JhZGVfcHJvcFx1MDAzZDAuMFx1MDAyNmh0bWw1X21heF9idWZmZXJfaGVhbHRoX2Zvcl9kb3duZ3JhZGVfc2Vjc1x1MDAzZDAuMFx1MDAyNmh0bWw1X21heF9ieXRlcmF0ZVx1MDAzZDBcdTAwMjZodG1sNV9tYXhfZGlzY29udGludWl0eV9yZXdyaXRlX2NvdW50XHUwMDNkMFx1MDAyNmh0bWw1X21heF9kcmlmdF9wZXJfdHJhY2tfc2Vjc1x1MDAzZDAuMFx1MDAyNmh0bWw1X21heF9oZWFkbV9mb3Jfc3RyZWFtaW5nX3hoclx1MDAzZDBcdTAwMjZodG1sNV9tYXhfbGl2ZV9kdnJfd2luZG93X3BsdXNfbWFyZ2luX3NlY3NcdTAwM2Q0NjgwMC4wXHUwMDI2aHRtbDVfbWF4X3F1YWxpdHlfc2VsX3VwZ3JhZGVcdTAwM2QwXHUwMDI2aHRtbDVfbWF4X3JlZGlyZWN0X3Jlc3BvbnNlX2xlbmd0aFx1MDAzZDgxOTJcdTAwMjZodG1sNV9tYXhfc2VsZWN0YWJsZV9xdWFsaXR5X29yZGluYWxcdTAwM2QwXHUwMDI2aHRtbDVfbWF4X3ZlcnRpY2FsX3Jlc29sdXRpb25cdTAwM2QwXHUwMDI2aHRtbDVfbWF4aW11bV9yZWFkYWhlYWRfc2Vjb25kc1x1MDAzZDAuMFx1MDAyNmh0bWw1X21lZGlhX2Z1bGxzY3JlZW5cdTAwM2R0cnVlXHUwMDI2aHRtbDVfbWVkaWFfdGltZV93ZWlnaHRfcHJvcFx1MDAzZDAuMFx1MDAyNmh0bWw1X21mY19tYXhfcXVldWVfbGVuZ3RoXHUwMDNkMVx1MDAyNmh0bWw1X21mY19taW5fYnVmZmVyX2hlYWx0aFx1MDAzZDBcdTAwMjZodG1sNV9tZmNfc2Vjc19sZWZ0X3RvX3N0YXJ0X3ByZWxvYWRcdTAwM2QwXHUwMDI2aHRtbDVfbWluX2ZhaWx1cmVzX3RvX2RlbGF5X3JldHJ5XHUwMDNkM1x1MDAyNmh0bWw1X21pbl9tZWRpYV9kdXJhdGlvbl9mb3JfYXBwZW5kX3Byb3BcdTAwM2QwLjBcdTAwMjZodG1sNV9taW5fbWVkaWFfZHVyYXRpb25fZm9yX2NhYnJfc2xpY2VcdTAwM2QwLjAxXHUwMDI2aHRtbDVfbWluX3BsYXliYWNrX2FkdmFuY2VfZm9yX3N0ZWFkeV9zdGF0ZV9zZWNzXHUwMDNkMFx1MDAyNmh0bWw1X21pbl9xdWFsaXR5X29yZGluYWxcdTAwM2QwXHUwMDI2aHRtbDVfbWluX3JlYWRiZWhpbmRfY2FwX3NlY3NcdTAwM2Q2MFx1MDAyNmh0bWw1X21pbl9yZWFkYmVoaW5kX3NlY3NcdTAwM2QwXHUwMDI2aHRtbDVfbWluX3NlY29uZHNfYmV0d2Vlbl9mb3JtYXRfc2VsZWN0aW9uc1x1MDAzZDAuMFx1MDAyNmh0bWw1X21pbl9zZWxlY3RhYmxlX3F1YWxpdHlfb3JkaW5hbFx1MDAzZDBcdTAwMjZodG1sNV9taW5fc3RhcnR1cF9idWZmZXJlZF9tZWRpYV9kdXJhdGlvbl9mb3JfbGl2ZV9zZWNzXHUwMDNkMC4wXHUwMDI2aHRtbDVfbWluX3N0YXJ0dXBfYnVmZmVyZWRfbWVkaWFfZHVyYXRpb25fc2Vjc1x1MDAzZDEuMlx1MDAyNmh0bWw1X21pbl9zdGFydHVwX2R1cmF0aW9uX2xpdmVfc2Vjc1x1MDAzZDAuMjVcdTAwMjZodG1sNV9taW5fdW5kZXJydW5fYnVmZmVyZWRfcHJlX3N0ZWFkeV9zdGF0ZV9tc1x1MDAzZDBcdTAwMjZodG1sNV9taW5fdXBncmFkZV9oZWFsdGhfc2Vjc1x1MDAzZDAuMFx1MDAyNmh0bWw1X21pbmltdW1fcmVhZGFoZWFkX3NlY29uZHNcdTAwM2QwLjBcdTAwMjZodG1sNV9tb2NrX2NvbnRlbnRfYmluZGluZ19mb3Jfc2Vzc2lvbl90b2tlblx1MDAzZFx1MDAyNmh0bWw1X21vdmVfZGlzYWJsZV9haXJwbGF5XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X25vX3BsYWNlaG9sZGVyX3JvbGxiYWNrc1x1MDAzZHRydWVcdTAwMjZodG1sNV9ub25fb25lc2llX2F0dGFjaF9wb190b2tlblx1MDAzZHRydWVcdTAwMjZodG1sNV9vZmZsaW5lX2Rvd25sb2FkX3RpbWVvdXRfcmV0cnlfbGltaXRcdTAwM2Q0XHUwMDI2aHRtbDVfb2ZmbGluZV9mYWlsdXJlX3JldHJ5X2xpbWl0XHUwMDNkMlx1MDAyNmh0bWw1X29mZmxpbmVfcGxheWJhY2tfcG9zaXRpb25fc3luY1x1MDAzZHRydWVcdTAwMjZodG1sNV9vZmZsaW5lX3ByZXZlbnRfcmVkb3dubG9hZF9kb3dubG9hZGVkX3ZpZGVvXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X29uZXNpZV9hdWRpb19vbmx5X3BsYXliYWNrXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X29uZXNpZV9jaGVja190aW1lb3V0XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X29uZXNpZV9kZWZlcl9jb250ZW50X2xvYWRlcl9tc1x1MDAzZDBcdTAwMjZodG1sNV9vbmVzaWVfbGl2ZV90dGxfc2Vjc1x1MDAzZDhcdTAwMjZodG1sNV9vbmVzaWVfcHJld2FybV9pbnRlcnZhbF9tc1x1MDAzZDBcdTAwMjZodG1sNV9vbmVzaWVfcHJld2FybV9tYXhfbGFjdF9tc1x1MDAzZDBcdTAwMjZodG1sNV9vbmVzaWVfcmVkaXJlY3Rvcl90aW1lb3V0X21zXHUwMDNkMFx1MDAyNmh0bWw1X29uZXNpZV9zZW5kX3N0cmVhbWVyX2NvbnRleHRcdTAwM2R0cnVlXHUwMDI2aHRtbDVfb3ZlcnJpZGVfbWljcm9fZGlzY29udGludWl0aWVzX3RocmVzaG9sZF9tc1x1MDAzZC0xXHUwMDI2aHRtbDVfcGFjZWRfcG9sbF9taW5faGVhbHRoX21zXHUwMDNkMFx1MDAyNmh0bWw1X3BhY2VkX3BvbGxfbXNcdTAwM2QwXHUwMDI2aHRtbDVfcGF1c2Vfb25fbm9uZm9yZWdyb3VuZF9wbGF0Zm9ybV9lcnJvcnNcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcGVha19zaGF2ZVx1MDAzZHRydWVcdTAwMjZodG1sNV9wZXJmX2NhcF9vdmVycmlkZV9zdGlja3lcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcGVyZm9ybWFuY2VfY2FwX2Zsb29yXHUwMDNkMzYwXHUwMDI2aHRtbDVfcGVyc2VydmVfYXYxX3BlcmZfY2FwXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3BpY3R1cmVfaW5fcGljdHVyZV9sb2dnaW5nX29ucmVzaXplX3JhdGlvXHUwMDNkMC4wXHUwMDI2aHRtbDVfcGxhdGZvcm1fbWF4X2J1ZmZlcl9oZWFsdGhfb3ZlcnNlbmRfZHVyYXRpb25fc2Vjc1x1MDAzZDAuMFx1MDAyNmh0bWw1X3BsYXRmb3JtX21pbmltdW1fcmVhZGFoZWFkX3NlY29uZHNcdTAwM2QwLjBcdTAwMjZodG1sNV9wbGF0Zm9ybV93aGl0ZWxpc3RlZF9mb3JfZnJhbWVfYWNjdXJhdGVfc2Vla3NcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcGxheWVyX2F0dF9pbml0aWFsX2RlbGF5X21zXHUwMDNkMzAwMFx1MDAyNmh0bWw1X3BsYXllcl9hdHRfcmV0cnlfZGVsYXlfbXNcdTAwM2QxNTAwXHUwMDI2aHRtbDVfcGxheWVyX2F1dG9uYXZfbG9nZ2luZ1x1MDAzZHRydWVcdTAwMjZodG1sNV9wbGF5ZXJfZXM2XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3BsYXllcl9taW5fYnVpbGRfY2xcdTAwM2QtMVx1MDAyNmh0bWw1X3BsYXllcl9wcmVsb2FkX2FkX2ZpeFx1MDAzZHRydWVcdTAwMjZodG1sNV9wb3N0X2ludGVycnVwdF9yZWFkYWhlYWRcdTAwM2QyMFx1MDAyNmh0bWw1X3ByZWZlcl9sYW5ndWFnZV9vdmVyX2NvZGVjXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3ByZWZlcl9zZXJ2ZXJfYndlM1x1MDAzZHRydWVcdTAwMjZodG1sNV9wcmVsb2FkX2JlZm9yZV9pbml0aWFsX3NlZWtfd2l0aF9zYWJyXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3ByZWxvYWRfd2FpdF90aW1lX3NlY3NcdTAwM2QwLjBcdTAwMjZodG1sNV9wcmV2ZW50X21vYmlsZV9iYWNrZ3JvdW5kX3BsYXlfb25fZXZlbnRfc2hhcmVkXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3Byb2JlX3ByaW1hcnlfZGVsYXlfYmFzZV9tc1x1MDAzZDBcdTAwMjZodG1sNV9wcm9jZXNzX2FsbF9lbmNyeXB0ZWRfZXZlbnRzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3FvZV9wcm90b19tb2NrX2xlbmd0aFx1MDAzZDBcdTAwMjZodG1sNV9xdWVyeV9zd19zZWN1cmVfY3J5cHRvX2Zvcl9hbmRyb2lkXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3JhbmRvbV9wbGF5YmFja19jYXBcdTAwM2QwXHUwMDI2aHRtbDVfcmVjb3JkX2lzX29mZmxpbmVfb25fcGxheWJhY2tfYXR0ZW1wdF9zdGFydFx1MDAzZHRydWVcdTAwMjZodG1sNV9yZWNvcmRfdW1wX3RpbWluZ1x1MDAzZHRydWVcdTAwMjZodG1sNV9yZWxvYWRfYnlfa2FidWtpX2FwcFx1MDAzZHRydWVcdTAwMjZodG1sNV9yZW1vdmVfY29tbWFuZF90cmlnZ2VyZWRfY29tcGFuaW9uc1x1MDAzZHRydWVcdTAwMjZodG1sNV9yZW1vdmVfbm90X3NlcnZhYmxlX2NoZWNrX2tpbGxzd2l0Y2hcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmVwb3J0X2ZhdGFsX2RybV9yZXN0cmljdGVkX2Vycm9yX2tpbGxzd2l0Y2hcdTAwM2R0cnVlXHUwMDI2aHRtbDVfcmVwb3J0X3Nsb3dfYWRzX2FzX2Vycm9yXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3JlcHJlZGljdF9pbnRlcnZhbF9tc1x1MDAzZDBcdTAwMjZodG1sNV9yZXF1ZXN0X29ubHlfaGRyX29yX3Nkcl9rZXlzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3JlcXVlc3Rfc2l6ZV9tYXhfa2JcdTAwM2QwXHUwMDI2aHRtbDVfcmVxdWVzdF9zaXplX21pbl9rYlx1MDAzZDBcdTAwMjZodG1sNV9yZXNlZWtfYWZ0ZXJfdGltZV9qdW1wX2NmbFx1MDAzZHRydWVcdTAwMjZodG1sNV9yZXNlZWtfYWZ0ZXJfdGltZV9qdW1wX2RlbGF5X21zXHUwMDNkMFx1MDAyNmh0bWw1X3Jlc2V0X2JhY2tvZmZfb25fdXNlcl9zZWVrXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3Jlc291cmNlX2JhZF9zdGF0dXNfZGVsYXlfc2NhbGluZ1x1MDAzZDEuNVx1MDAyNmh0bWw1X3Jlc3RyaWN0X3N0cmVhbWluZ194aHJfb25fc3FsZXNzX3JlcXVlc3RzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3JldHJ5X2Rvd25sb2Fkc19mb3JfZXhwaXJhdGlvblx1MDAzZHRydWVcdTAwMjZodG1sNV9yZXRyeV9vbl9kcm1fa2V5X2Vycm9yXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3JldHJ5X29uX2RybV91bmF2YWlsYWJsZVx1MDAzZHRydWVcdTAwMjZodG1sNV9yZXRyeV9xdW90YV9leGNlZWRlZF92aWFfc2Vla1x1MDAzZHRydWVcdTAwMjZodG1sNV9yZXR1cm5fcGxheWJhY2tfaWZfYWxyZWFkeV9wcmVsb2FkZWRcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2Ficl9lbmFibGVfc2VydmVyX3h0YWdfc2VsZWN0aW9uXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NhYnJfZmV0Y2hfb25faWRsZV9uZXR3b3JrX3ByZWxvYWRlZF9wbGF5ZXJzXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NhYnJfZm9yY2VfbWF4X25ldHdvcmtfaW50ZXJydXB0aW9uX2R1cmF0aW9uX21zXHUwMDNkMFx1MDAyNmh0bWw1X3NhYnJfbGl2ZV9sb3dfbGF0ZW5jeV9zdHJlYW1pbmdfeGhyXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NhYnJfbGl2ZV9ub3JtYWxfbGF0ZW5jeV9zdHJlYW1pbmdfeGhyXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NhYnJfbGl2ZV90aW1pbmdcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2Ficl9saXZlX3VsdHJhX2xvd19sYXRlbmN5X3N0cmVhbWluZ194aHJcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2Ficl9sb2dfc2VydmVyX3h0YWdfc2VsZWN0aW9uX29uZXNpZV9taXNtYXRjaFx1MDAzZHRydWVcdTAwMjZodG1sNV9zYWJyX21pbl9tZWRpYV9ieXRlc19mYWN0b3JfdG9fYXBwZW5kX2Zvcl9zdHJlYW1cdTAwM2QwLjBcdTAwMjZodG1sNV9zYWJyX25vbl9zdHJlYW1pbmdfeGhyX3JlcXVlc3RfY2FuY2VsbGF0aW9uX3RpbWVvdXRfbXNcdTAwM2QwXHUwMDI2aHRtbDVfc2Ficl9ub25fc3RyZWFtaW5nX3hocl90aW1lb3V0X3JldHJ5X2xpbWl0XHUwMDNkMFx1MDAyNmh0bWw1X3NhYnJfcmVwb3J0X3BhcnRpYWxfc2VnbWVudF9lc3RpbWF0ZWRfZHVyYXRpb25cdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2Ficl9yZXBvcnRfcmVxdWVzdF9jYW5jZWxsYXRpb25faW5mb1x1MDAzZHRydWVcdTAwMjZodG1sNV9zYWJyX3JlcXVlc3RfbGltaXRfcGVyX3BlcmlvZFx1MDAzZDIwXHUwMDI2aHRtbDVfc2Ficl9yZXF1ZXN0X29uX2NvbnN0cmFpbnRcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2Ficl9zZWVrX25vX3NoaWZ0X3RvbGVyYW5jZVx1MDAzZHRydWVcdTAwMjZodG1sNV9zYWJyX3NraXBfY2xpZW50X2F1ZGlvX2luaXRfc2VsZWN0aW9uXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NhYnJfc3VjY2Vzc2Z1bF9wcm9iZV90aW1lb3V0X21zXHUwMDNkMFx1MDAyNmh0bWw1X3NhYnJfdWdjX3ZvZF93ZWJfZW1iZWRkZWRfY2xpZW50X2RlZmF1bHRfYmFuZHdpZHRoX29uX2lwaG9uZVx1MDAzZHRydWVcdTAwMjZodG1sNV9zYWJyX3VudXNlZF9ibG9hdF9zaXplX2J5dGVzXHUwMDNkMFx1MDAyNmh0bWw1X3NhbXN1bmdfa2FudF9saW1pdF9tYXhfYml0cmF0ZVx1MDAzZDBcdTAwMjZodG1sNV9zZWVrX2ppZ2dsZV9jbXRfZGVsYXlfbXNcdTAwM2Q4MDAwXHUwMDI2aHRtbDVfc2Vla19uZXdfZWxlbV9kZWxheV9tc1x1MDAzZDEyMDAwXHUwMDI2aHRtbDVfc2Vla19uZXdfZWxlbV9zaG9ydHNfZGVsYXlfbXNcdTAwM2QyMDAwXHUwMDI2aHRtbDVfc2Vla19uZXdfbWVkaWFfZWxlbWVudF9zaG9ydHNfcmV1c2VfY2ZsXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NlZWtfbmV3X21lZGlhX2VsZW1lbnRfc2hvcnRzX3JldXNlX2RlbGF5X21zXHUwMDNkMFx1MDAyNmh0bWw1X3NlZWtfbmV3X21lZGlhX3NvdXJjZV9zaG9ydHNfcmV1c2VfY2ZsXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NlZWtfbmV3X21lZGlhX3NvdXJjZV9zaG9ydHNfcmV1c2VfZGVsYXlfbXNcdTAwM2QwXHUwMDI2aHRtbDVfc2Vla19zZXRfY210X2RlbGF5X21zXHUwMDNkMjAwMFx1MDAyNmh0bWw1X3NlZWtfdGltZW91dF9kZWxheV9tc1x1MDAzZDIwMDAwXHUwMDI2aHRtbDVfc2VuZF9jdWVwb2ludF9pZF9pbl9hZF9icmVha19yZXF1ZXN0XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NlbmRfc2VyaWFsaXplZF9vbmVfdGltZV9xb2VfY29udGV4dF9kYXRhXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NlcnZlX3N0YXJ0X3NlY29uZHNfc2Vla19mb3JfcG9zdF9saXZlX3NhYnJcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2VydmVyX3N0aXRjaGVkX2RhaV9kZWNvcmF0ZWRfdXJsX3JldHJ5X2xpbWl0XHUwMDNkNVx1MDAyNmh0bWw1X3Nlc3Npb25fcG9fdG9rZW5faW50ZXJ2YWxfdGltZV9tc1x1MDAzZDkwMDAwMFx1MDAyNmh0bWw1X3NldF92aWRlb19pZF9hc19leHBlY3RlZF9jb250ZW50X2JpbmRpbmdcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2hvcnRzX2dhcGxlc3NfYWRfc2xvd19zdGFydF9jZmxcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2hvcnRzX2dhcGxlc3NfYWRfc2xvd19zdGFydF9kZWxheV9tc1x1MDAzZDBcdTAwMjZodG1sNV9zaG9ydHNfZ2FwbGVzc19uZXh0X2J1ZmZlcl9pbl9zZWNvbmRzXHUwMDNkMFx1MDAyNmh0bWw1X3Nob3J0c19nYXBsZXNzX25vX2dsbGF0XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3Nob3J0c19nYXBsZXNzX3Nsb3dfc3RhcnRfZGVsYXlfbXNcdTAwM2QwXHUwMDI2aHRtbDVfc2hvd19kcmNfdG9nZ2xlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NpbXBsaWZpZWRfYmFja3VwX3RpbWVvdXRfc2Ficl9saXZlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NraXBfZW1wdHlfcG9fdG9rZW5cdTAwM2R0cnVlXHUwMDI2aHRtbDVfc2tpcF9zbG93X2FkX2RlbGF5X21zXHUwMDNkMTUwMDBcdTAwMjZodG1sNV9zbG93X3N0YXJ0X25vX21lZGlhX3NvdXJjZV9kZWxheV9tc1x1MDAzZDBcdTAwMjZodG1sNV9zbG93X3N0YXJ0X3RpbWVvdXRfZGVsYXlfbXNcdTAwM2QyMDAwMFx1MDAyNmh0bWw1X3NzZGFpX2VuYWJsZV9tZWRpYV9lbmRfY3VlX3JhbmdlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3NzZGFpX2ZhaWx1cmVfcmV0cnlfbGltaXRcdTAwM2QwXHUwMDI2aHRtbDVfc3NkYWlfbG9nX21pc3NpbmdfYWRfY29uZmlnX3JlYXNvblx1MDAzZHRydWVcdTAwMjZodG1sNV9zdGFsbF9mYWN0b3JcdTAwM2QwLjBcdTAwMjZodG1sNV9zdGF0ZWZ1bF9hdWRpb19ub3JtYWxpemF0aW9uXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3N0aWNreV9kdXJhdGlvbl9tb3NcdTAwM2QwXHUwMDI2aHRtbDVfc3RvcmVfeGhyX2hlYWRlcnNfcmVhZGFibGVcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc3RyZWFtaW5nX3Jlc2lsaWVuY2VcdTAwM2R0cnVlXHUwMDI2aHRtbDVfc3RyZWFtaW5nX3hocl90aW1lX2Jhc2VkX2NvbnNvbGlkYXRpb25fbXNcdTAwM2QtMVx1MDAyNmh0bWw1X3N1YnNlZ21lbnRfcmVhZGFoZWFkX2xvYWRfc3BlZWRfY2hlY2tfaW50ZXJ2YWxcdTAwM2QwLjVcdTAwMjZodG1sNV9zdWJzZWdtZW50X3JlYWRhaGVhZF9taW5fYnVmZmVyX2hlYWx0aF9zZWNzXHUwMDNkMC4yNVx1MDAyNmh0bWw1X3N1YnNlZ21lbnRfcmVhZGFoZWFkX21pbl9idWZmZXJfaGVhbHRoX3NlY3Nfb25fdGltZW91dFx1MDAzZDAuMVx1MDAyNmh0bWw1X3N1YnNlZ21lbnRfcmVhZGFoZWFkX21pbl9sb2FkX3NwZWVkXHUwMDNkMS41XHUwMDI2aHRtbDVfc3Vic2VnbWVudF9yZWFkYWhlYWRfc2Vla19sYXRlbmN5X2Z1ZGdlXHUwMDNkMC41XHUwMDI2aHRtbDVfc3Vic2VnbWVudF9yZWFkYWhlYWRfdGFyZ2V0X2J1ZmZlcl9oZWFsdGhfc2Vjc1x1MDAzZDAuNVx1MDAyNmh0bWw1X3N1YnNlZ21lbnRfcmVhZGFoZWFkX3RpbWVvdXRfc2Vjc1x1MDAzZDIuMFx1MDAyNmh0bWw1X3RyYWNrX292ZXJzaG9vdFx1MDAzZHRydWVcdTAwMjZodG1sNV90cmFuc2Zlcl9wcm9jZXNzaW5nX2xvZ3NfaW50ZXJ2YWxcdTAwM2QxMDAwXHUwMDI2aHRtbDVfdHJpZ2dlcl9sb2FkZXJfd2hlbl9pZGxlX25ldHdvcmtcdTAwM2R0cnVlXHUwMDI2aHRtbDVfdWdjX2xpdmVfYXVkaW9fNTFcdTAwM2R0cnVlXHUwMDI2aHRtbDVfdWdjX3ZvZF9hdWRpb181MVx1MDAzZHRydWVcdTAwMjZodG1sNV91bnJlcG9ydGVkX3NlZWtfcmVzZWVrX2RlbGF5X21zXHUwMDNkMFx1MDAyNmh0bWw1X3VwZGF0ZV90aW1lX29uX3NlZWtlZFx1MDAzZHRydWVcdTAwMjZodG1sNV91c2VfZGF0ZV9ub3dfZm9yX2xvY2FsX3N0b3JhZ2VcdTAwM2R0cnVlXHUwMDI2aHRtbDVfdXNlX2luaXRfc2VsZWN0ZWRfYXVkaW9cdTAwM2R0cnVlXHUwMDI2aHRtbDVfdXNlX25vbl9hY3RpdmVfYnJvYWRjYXN0X2Zvcl9wb3N0X2xpdmVcdTAwM2R0cnVlXHUwMDI2aHRtbDVfdXNlX3Bvc3RfZm9yX21lZGlhXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3VzZV9zaGFyZWRfb3dsX2luc3RhbmNlXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3VzZV91bXBcdTAwM2R0cnVlXHUwMDI2aHRtbDVfdXNlX3VtcF9yZXF1ZXN0X3NsaWNlclx1MDAzZHRydWVcdTAwMjZodG1sNV91c2VfdW1wX3RpbWluZ1x1MDAzZHRydWVcdTAwMjZodG1sNV91c2VfdmlkZW9fcXVhbGl0eV9jYXBfZm9yX3VzdHJlYW1lcl9jb25zdHJhaW50XHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3VzZV92aWRlb190cmFuc2l0aW9uX2VuZHBvaW50X2hlYXJ0YmVhdFx1MDAzZHRydWVcdTAwMjZodG1sNV92aWRlb190YmRfbWluX2tiXHUwMDNkMFx1MDAyNmh0bWw1X3ZpZXdwb3J0X3VuZGVyc2VuZF9tYXhpbXVtXHUwMDNkMC4wXHUwMDI2aHRtbDVfdm9sdW1lX3NsaWRlcl90b29sdGlwXHUwMDNkdHJ1ZVx1MDAyNmh0bWw1X3dlYl9wb19leHBlcmltZW50X2lkc1x1MDAzZFtdXHUwMDI2aHRtbDVfd2ViX3BvX3JlcXVlc3Rfa2V5XHUwMDNkXHUwMDI2aHRtbDVfd2ViX3BvX3Rva2VuX2Rpc2FibGVfY2FjaGluZ1x1MDAzZHRydWVcdTAwMjZodG1sNV93ZWJwb19pZGxlX3ByaW9yaXR5X2pvYlx1MDAzZHRydWVcdTAwMjZodG1sNV93ZWJwb19rYWlvc19kZWZlcl90aW1lb3V0X21zXHUwMDNkMFx1MDAyNmh0bWw1X3dvZmZsZV9yZXN1bWVcdTAwM2R0cnVlXHUwMDI2aHRtbDVfd29ya2Fyb3VuZF9kZWxheV90cmlnZ2VyXHUwMDNkdHJ1ZVx1MDAyNmlkYl9pbW1lZGlhdGVfY29tbWl0XHUwMDNkdHJ1ZVx1MDAyNmlnbm9yZV9vdmVybGFwcGluZ19jdWVfcG9pbnRzX29uX2VuZGVtaWNfbGl2ZV9odG1sNVx1MDAzZHRydWVcdTAwMjZpbF9hdHRhY2hfY2FjaGVfbGltaXRcdTAwM2R0cnVlXHUwMDI2aWxfcGF5bG9hZF9zY3JhcGluZ1x1MDAzZFx1MDAyNmlsX3VzZV92aWV3X21vZGVsX2xvZ2dpbmdfY29udGV4dFx1MDAzZHRydWVcdTAwMjZpbml0aWFsX2dlbF9iYXRjaF90aW1lb3V0XHUwMDNkMjAwMFx1MDAyNmluamVjdGVkX2xpY2Vuc2VfaGFuZGxlcl9lcnJvcl9jb2RlXHUwMDNkMFx1MDAyNmluamVjdGVkX2xpY2Vuc2VfaGFuZGxlcl9saWNlbnNlX3N0YXR1c1x1MDAzZDBcdTAwMjZpb3NfYW5kX2FuZHJvaWRfZnJlc2NhX3BvbGxpbmdfZGVsYXlfb3ZlcnJpZGVcdTAwM2QwXHUwMDI2aXRkcm1fYWx3YXlzX3VzZV93aWRldmluZV9zZGtcdTAwM2R0cnVlXHUwMDI2aXRkcm1fZGlzYWJsZV9leHRlcm5hbF9rZXlfcm90YXRpb25fc3lzdGVtX2lkc1x1MDAzZFtdXHUwMDI2aXRkcm1fZW5hYmxlX3Jldm9jYXRpb25fcmVwb3J0aW5nXHUwMDNkdHJ1ZVx1MDAyNml0ZHJtX2luamVjdGVkX2xpY2Vuc2Vfc2VydmljZV9lcnJvcl9jb2RlXHUwMDNkMFx1MDAyNml0ZHJtX3NldF9zYWJyX2xpY2Vuc2VfY29uc3RyYWludFx1MDAzZHRydWVcdTAwMjZpdGRybV91c2VfZmFpcnBsYXlfc2RrXHUwMDNkdHJ1ZVx1MDAyNml0ZHJtX3VzZV93aWRldmluZV9zZGtfZm9yX3ByZW1pdW1fY29udGVudFx1MDAzZHRydWVcdTAwMjZpdGRybV93aWRldmluZV9oYXJkZW5lZF92bXBfbW9kZVx1MDAzZGxvZ1x1MDAyNmpzb25fY29uZGVuc2VkX3Jlc3BvbnNlXHUwMDNkdHJ1ZVx1MDAyNmtldmxhcl9jb21tYW5kX2hhbmRsZXJfY29tbWFuZF9iYW5saXN0XHUwMDNkW11cdTAwMjZrZXZsYXJfZGVsaGlfbW9kZXJuX3dlYl9lbmRzY3JlZW5faWRlYWxfdGlsZV93aWR0aF9wZXJjZW50YWdlXHUwMDNkMC4yN1x1MDAyNmtldmxhcl9kZWxoaV9tb2Rlcm5fd2ViX2VuZHNjcmVlbl9tYXhfcm93c1x1MDAzZDJcdTAwMjZrZXZsYXJfZGVsaGlfbW9kZXJuX3dlYl9lbmRzY3JlZW5fbWF4X3dpZHRoXHUwMDNkNTAwXHUwMDI2a2V2bGFyX2RlbGhpX21vZGVybl93ZWJfZW5kc2NyZWVuX21pbl93aWR0aFx1MDAzZDIwMFx1MDAyNmtldmxhcl9nZWxfZXJyb3Jfcm91dGluZ1x1MDAzZHRydWVcdTAwMjZrZXZsYXJfbWluaXBsYXllcl9leHBhbmRfdG9wXHUwMDNkdHJ1ZVx1MDAyNmtldmxhcl9taW5pcGxheWVyX3BsYXlfcGF1c2Vfb25fc2NyaW1cdTAwM2R0cnVlXHUwMDI2a2V2bGFyX3BsYXliYWNrX2Fzc29jaWF0ZWRfcXVldWVcdTAwM2R0cnVlXHUwMDI2bGF1bmNoX2xpY2Vuc2Vfc2VydmljZV9hbGxfb3R0X3ZpZGVvc19hdXRvbWF0aWNfZmFpbF9vcGVuXHUwMDNkdHJ1ZVx1MDAyNmxpbWl0X3l0Y3NpX2RlYnVnX2FycmF5X3NpemVcdTAwM2R0cnVlXHUwMDI2bGl2ZV9jaGF0X2VuYWJsZV9ydGFfbWFuYWdlclx1MDAzZHRydWVcdTAwMjZsaXZlX2NodW5rX3JlYWRhaGVhZFx1MDAzZDNcdTAwMjZsb2dfY2xpY2tfd2l0aF9sYXllcl9mcm9tX2VsZW1lbnRfaW5fY29tbWFuZF9oYW5kbGVyXHUwMDNkdHJ1ZVx1MDAyNmxvZ193aW5kb3dfb25lcnJvcl9mcmFjdGlvblx1MDAzZDAuMVx1MDAyNm1hbmlmZXN0bGVzc19wb3N0X2xpdmVcdTAwM2R0cnVlXHUwMDI2bWFuaWZlc3RsZXNzX3Bvc3RfbGl2ZV91ZnBoXHUwMDNkdHJ1ZVx1MDAyNm1heF9ib2R5X3NpemVfdG9fY29tcHJlc3NcdTAwM2Q1MDAwMDBcdTAwMjZtYXhfY2RmZV9xdWFsaXR5X29yZGluYWxcdTAwM2QwXHUwMDI2bWF4X3ByZWZldGNoX3dpbmRvd19zZWNfZm9yX2xpdmVzdHJlYW1fb3B0aW1pemF0aW9uXHUwMDNkMTBcdTAwMjZtYXhfcmVzb2x1dGlvbl9mb3Jfd2hpdGVfbm9pc2VcdTAwM2QzNjBcdTAwMjZtZHhfZW5hYmxlX3ByaXZhY3lfZGlzY2xvc3VyZV91aVx1MDAzZHRydWVcdTAwMjZtZHhfbG9hZF9jYXN0X2FwaV9ib290c3RyYXBfc2NyaXB0XHUwMDNkdHJ1ZVx1MDAyNm1pbl9wcmVmZXRjaF9vZmZzZXRfc2VjX2Zvcl9saXZlc3RyZWFtX29wdGltaXphdGlvblx1MDAzZDIwXHUwMDI2bXRhX2RyY19tdXR1YWxfZXhjbHVzaW9uX3JlbW92YWxcdTAwM2R0cnVlXHUwMDI2bXVzaWNfZW5hYmxlX3NoYXJlZF9hdWRpb190aWVyX2xvZ2ljXHUwMDNkdHJ1ZVx1MDAyNm13ZWJfYWNjb3VudF9saW5raW5nX25vYXBwXHUwMDNkdHJ1ZVx1MDAyNm13ZWJfZGVidWdfc3RpY2t5X3NldHRpbmdzXHUwMDNkdHJ1ZVx1MDAyNm13ZWJfZW5hYmxlX2NsaWNrX3RvX3BsYXlfcGF1c2VcdTAwM2R0cnVlXHUwMDI2bXdlYl9lbmFibGVfZmluZV9zY3J1YmJpbmdfZm9yX3JlY3NcdTAwM2R0cnVlXHUwMDI2bXdlYl9lbmFibGVfbW9yZV9jaHVua3NcdTAwM2R0cnVlXHUwMDI2bXdlYl9uYXRpdmVfY29udHJvbF9pbl9mYXV4X2Z1bGxzY3JlZW5fc2hhcmVkXHUwMDNkdHJ1ZVx1MDAyNm13ZWJfcGxheWVyX2NvbnRyb2xfb25faG92ZXJcdTAwM2R0cnVlXHUwMDI2bXdlYl9wcm9ncmVzc19iYXJfc2Vla19vbl9tb3VzZV9jbGlja1x1MDAzZHRydWVcdTAwMjZtd2ViX3Nob3J0c19jb21tZW50c19wYW5lbF9pZF9jaGFuZ2VcdTAwM2R0cnVlXHUwMDI2bXdlYl91c2VfbWljcm9mb3JtYXRfdGl0bGVfZm9yX3Bvc3RzXHUwMDNkdHJ1ZVx1MDAyNm5ldHdvcmtfcG9sbGluZ19pbnRlcnZhbFx1MDAzZDMwMDAwXHUwMDI2bmV0d29ya2xlc3NfbG9nZ2luZ1x1MDAzZHRydWVcdTAwMjZuZXdfY29kZWNzX3N0cmluZ19hcGlfdXNlc19sZWdhY3lfc3R5bGVcdTAwM2R0cnVlXHUwMDI2bm9fY2xpZW50X3ZlX2F0dGFjaF91bmxlc3Nfc2hvd25cdTAwM2R0cnVlXHUwMDI2bm9fZmlsbGVyX3ZpZGVvX2Zvcl9zc2FfcGxheWJhY2tzXHUwMDNkdHJ1ZVx1MDAyNm92ZXJyaWRlX2RybV9yZXF1aXJlZF9wbGF5YmFja19wb2xpY3lfY2hhbm5lbHNcdTAwM2RbXVx1MDAyNnBhZ2VpZF9hc19oZWFkZXJfd2ViXHUwMDNkdHJ1ZVx1MDAyNnBsYXllcl9hZHNfc2V0X2FkZm9ybWF0X29uX2NsaWVudFx1MDAzZHRydWVcdTAwMjZwbGF5ZXJfYm9vdHN0cmFwX21ldGhvZFx1MDAzZHRydWVcdTAwMjZwbGF5ZXJfY29udHJvbHNfdXNlX3BsYXllcl9hcGlfY29udGV4dFx1MDAzZHRydWVcdTAwMjZwbGF5ZXJfY29udHJvbHNfdm9sdW1lX2NvbnRyb2xzX3VzZV9wbGF5ZXJfcHJvcHNcdTAwM2R0cnVlXHUwMDI2cGxheWVyX2Rlc3Ryb3lfb2xkX3ZlcnNpb25cdTAwM2R0cnVlXHUwMDI2cGxheWVyX2VuYWJsZV9wbGF5YmFja19wbGF5bGlzdF9jaGFuZ2VcdTAwM2R0cnVlXHUwMDI2cGxheWVyX25ld19pbmZvX2NhcmRfZm9ybWF0XHUwMDNkdHJ1ZVx1MDAyNnBsYXllcl91bmRlcmxheV9taW5fcGxheWVyX3dpZHRoXHUwMDNkNzY4LjBcdTAwMjZwbGF5ZXJfdW5kZXJsYXlfdmlkZW9fd2lkdGhfZnJhY3Rpb25cdTAwM2QwLjZcdTAwMjZwbGF5ZXJfd2ViX2NhbmFyeV9zdGFnZVx1MDAzZDBcdTAwMjZwbGF5cmVhZHlfZmlyc3RfcGxheV9leHBpcmF0aW9uXHUwMDNkLTFcdTAwMjZwb2RjYXN0c192aWRlb3N0YXRzX2RlZmF1bHRfZmx1c2hfaW50ZXJ2YWxfc2Vjb25kc1x1MDAzZDBcdTAwMjZwb2x5bWVyX2JhZF9idWlsZF9sYWJlbHNcdTAwM2R0cnVlXHUwMDI2cG9seW1lcl92ZXJpZml5X2FwcF9zdGF0ZVx1MDAzZHRydWVcdTAwMjZwb3B1bGF0ZV9mb3JtYXRfc2V0X2luZm9faW5fY2RmZV9mb3JtYXRzXHUwMDNkdHJ1ZVx1MDAyNnByZXNraXBfYnV0dG9uX3N0eWxlX2Fkc19iYWNrZW5kXHUwMDNkXHUwMDI2cHJveGltYV9hdXRvX3RocmVzaG9sZF9tYXhfbmV0d29ya19pbnRlcnJ1cHRpb25fZHVyYXRpb25fbXNcdTAwM2QwXHUwMDI2cHJveGltYV9hdXRvX3RocmVzaG9sZF9taW5fYmFuZHdpZHRoX2VzdGltYXRlX2J5dGVzX3Blcl9zZWNcdTAwM2QwXHUwMDI2cW9lX3NlbmRfYW5kX3dyaXRlXHUwMDNkdHJ1ZVx1MDAyNnF1YWxpdHlfY2FwX2Zvcl9pbmxpbmVfbm9uX2FwcF9hZHNcdTAwM2QwXHUwMDI2cXVhbGl0eV9jYXBfZm9yX2lubGluZV9wbGF5YmFja1x1MDAzZDBcdTAwMjZxdWFsaXR5X2NhcF9mb3JfaW5saW5lX3BsYXliYWNrX2Fkc1x1MDAzZDBcdTAwMjZyZWFkX2FoZWFkX21vZGVsX25hbWVcdTAwM2RcdTAwMjZyZWplY3RfaGlkZGVuX2xpdmVfZm9ybWF0c1x1MDAzZHRydWVcdTAwMjZyZWplY3RfbGl2ZV92cDlfbXFfY2xlYXJfd2l0aF9ub19hYnJfbGFkZGVyXHUwMDNkdHJ1ZVx1MDAyNnJlbGF4X2JnX25vdGlmaWNhdGlvbl90aHJvdHRsaW5nXHUwMDNkdHJ1ZVx1MDAyNnJlbW92ZV9jaGV2cm9uX2Zyb21fYWRfZGlzY2xvc3VyZV9iYW5uZXJfaDVcdTAwM2R0cnVlXHUwMDI2cmVtb3ZlX21hc3RoZWFkX2NoYW5uZWxfYmFubmVyX29uX3JlZnJlc2hcdTAwM2R0cnVlXHUwMDI2cmVtb3ZlX3Nsb3RfaWRfZXhpdGVkX3RyaWdnZXJfZm9yX2RhaV9pbl9wbGF5ZXJfc2xvdF9leHBpcmVcdTAwM2R0cnVlXHUwMDI2cmVwbGFjZV9wbGF5YWJpbGl0eV9yZXRyaWV2ZXJfaW5fd2F0Y2hcdTAwM2R0cnVlXHUwMDI2cm9zY2FzXHUwMDNkdHJ1ZVx1MDAyNnNhYnJfZW5hYmxlX2hvc3RfZmFsbGJhY2tcdTAwM2R0cnVlXHUwMDI2c2VsZl9wb2RkaW5nX2hlYWRlcl9zdHJpbmdfdGVtcGxhdGVcdTAwM2RzZWxmX3BvZGRpbmdfaW50ZXJzdGl0aWFsX21lc3NhZ2VcdTAwMjZzZWxmX3BvZGRpbmdfbWlkcm9sbF9jaG9pY2Vfc3RyaW5nX3RlbXBsYXRlXHUwMDNkc2VsZl9wb2RkaW5nX21pZHJvbGxfY2hvaWNlXHUwMDI2c2VuZF9jb25maWdfaGFzaF90aW1lclx1MDAzZDBcdTAwMjZzZXJ2ZV9hZGFwdGl2ZV9mbXRzX2Zvcl9saXZlX3N0cmVhbXNcdTAwM2R0cnVlXHUwMDI2c2V0X21vY2tfaWRfYXNfZXhwZWN0ZWRfY29udGVudF9iaW5kaW5nXHUwMDNkXHUwMDI2c2hlbGxfbG9hZF9nY2ZcdTAwM2R0cnVlXHUwMDI2c2hvcnRlbl9pbml0aWFsX2dlbF9iYXRjaF90aW1lb3V0XHUwMDNkdHJ1ZVx1MDAyNnNob3J0c19tb2RlX3RvX3BsYXllcl9hcGlcdTAwM2R0cnVlXHUwMDI2c2hvdWxkX2F0dHJpYnV0ZV90b193YXRjaF93aXRoX3NvdXJjZVx1MDAzZFtdXHUwMDI2c2hvdWxkX2F0dHJpYnV0ZV92aWV3c190b193YXRjaF93aXRoX3NvdXJjZVx1MDAzZHRydWVcdTAwMjZzaW1wbHlfZW1iZWRkZWRfZW5hYmxlX2JvdGd1YXJkXHUwMDNkdHJ1ZVx1MDAyNnNsb3dfY29tcHJlc3Npb25zX2JlZm9yZV9hYmFuZG9uX2NvdW50XHUwMDNkNFx1MDAyNnNtYWxsX2F2YXRhcnNfZm9yX2NvbW1lbnRzXHUwMDNkdHJ1ZVx1MDAyNnNtYXJ0X3NraXBfd2ViX3BsYXllcl9iYXJfbWluX2hvdmVyX2xlbmd0aF9taWxsaXNlY29uZHNcdTAwM2QxMDAwXHUwMDI2c21hcnRlcl92ZV9kZWR1cHBpbmdcdTAwM2R0cnVlXHUwMDI2c3BlZWRtYXN0ZXJfY2FuY2VsbGF0aW9uX21vdmVtZW50X2RwXHUwMDNkMTBcdTAwMjZzcGVlZG1hc3Rlcl9wbGF5YmFja19yYXRlXHUwMDNkMi4wXHUwMDI2c3BlZWRtYXN0ZXJfdG91Y2hfYWN0aXZhdGlvbl9tc1x1MDAzZDUwMFx1MDAyNnN0b3BfaGFuZGxpbmdfY2xpY2tfZm9yX25vbl9yZW5kZXJpbmdfb3ZlcmxheV9sYXlvdXRcdTAwM2R0cnVlXHUwMDI2c3RyZWFtaW5nX2RhdGFfZW1lcmdlbmN5X2l0YWdfYmxhY2tsaXN0XHUwMDNkW11cdTAwMjZzdWJzdGl0dXRlX2FkX2Nwbl9tYWNyb19pbl9zc2RhaVx1MDAzZHRydWVcdTAwMjZzdXBwcmVzc19lcnJvcl8yMDRfbG9nZ2luZ1x1MDAzZHRydWVcdTAwMjZ0cmltX2FkYXB0aXZlX2Zvcm1hdHNfc2lnbmF0dXJlX2NpcGhlcl9mb3Jfc2Ficl9jb250ZW50XHUwMDNkdHJ1ZVx1MDAyNnR2aHRtbDVfdW5wbHVnZ2VkX3ByZWxvYWRfY2FjaGVfc2l6ZVx1MDAzZDVcdTAwMjZ1c2VfY3VlX3JhbmdlX21hcmtlcl9wb3NpdGlvblx1MDAzZHRydWVcdTAwMjZ1c2VfZXZlbnRfdGltZV9tc19oZWFkZXJcdTAwM2R0cnVlXHUwMDI2dXNlX2V4dHJhX3JlYWRhaGVhZF9ub3JtYWxfbGF0ZW5jeV9mcmFtZV9sZXZlbF9zdHJlYW1pbmdfaW5fYmFja2VuZF9leHBlcmltZW50XHUwMDNkWzQ1Nzk3MTQ4XVx1MDAyNnVzZV9maWZvX2Zvcl9uZXR3b3JrbGVzc1x1MDAzZHRydWVcdTAwMjZ1c2VfZ2VuZXJhdGVkX21lZGlhX2tleXNfaW5fZmFpcnBsYXlfcmVxdWVzdHNcdTAwM2R0cnVlXHUwMDI2dXNlX2lubGluZWRfcGxheWVyX3JwY1x1MDAzZHRydWVcdTAwMjZ1c2VfbmV3X2NvZGVjc19zdHJpbmdfYXBpXHUwMDNkdHJ1ZVx1MDAyNnVzZV9wbGF5YWJpbGl0eV9yZXN1bHRfZm9yX2Nhbl9wbGF5X3N0YXR1c1x1MDAzZHRydWVcdTAwMjZ1c2VfcmVxdWVzdF90aW1lX21zX2hlYWRlclx1MDAzZHRydWVcdTAwMjZ1c2VfcnRhX2Zvcl9wbGF5ZXJcdTAwM2R0cnVlXHUwMDI2dXNlX3Nlc3Npb25fYmFzZWRfc2FtcGxpbmdcdTAwM2R0cnVlXHUwMDI2dXNlX3RodW1ibmFpbF9vdmVybGF5X3RpbWVfc3RhdHVzX3JlbmRlcmVyX2Zvcl9saXZlX2JhZGdlXHUwMDNkdHJ1ZVx1MDAyNnZhcmlhYmxlX2J1ZmZlcl90aW1lb3V0X21zXHUwMDNkMFx1MDAyNnZwOV9kcm1fbGl2ZVx1MDAzZHRydWVcdTAwMjZ2c3NfZmluYWxfcGluZ19zZW5kX2FuZF93cml0ZVx1MDAzZHRydWVcdTAwMjZ2c3NfcGxheWJhY2tfdXNlX3NlbmRfYW5kX3dyaXRlXHUwMDNkdHJ1ZVx1MDAyNnZzc191c2VfcG9zdF9yZXF1ZXN0XHUwMDNkdHJ1ZVx1MDAyNndlYl9hcGlfdXJsXHUwMDNkdHJ1ZVx1MDAyNndlYl9hdHRlbnRpb25fbG9nZ2luZ19lbmFibGVkXHUwMDNkdHJ1ZVx1MDAyNndlYl9hdHRlbnRpb25fbG9nZ2luZ19leHBvcnRfdG9fZ2VsXHUwMDNkdHJ1ZVx1MDAyNndlYl9hdHRlbnRpb25fbG9nZ2luZ19zY3JvbGxfdGhyb3R0bGVcdTAwM2Q1MDAuMFx1MDAyNndlYl9idXR0b25fdmlld19tb2RlbF9ub25fbnVsbGlzaF9kYXRhXHUwMDNkdHJ1ZVx1MDAyNndlYl9idXR0b25fdm1fcmVmYWN0b3JfZGlzYWJsZWRcdTAwM2R0cnVlXHUwMDI2d2ViX2NsaWVudF92ZXJzaW9uX292ZXJyaWRlXHUwMDNkXHUwMDI2d2ViX2NvbGxlY3Rfb2ZmbGluZV9zdGF0ZVx1MDAzZHRydWVcdTAwMjZ3ZWJfY3NpX2FjdGlvbl9zYW1wbGluZ19lbmFibGVkXHUwMDNkdHJ1ZVx1MDAyNndlYl9kZWR1cGVfdmVfZ3JhZnRpbmdcdTAwM2R0cnVlXHUwMDI2d2ViX2Rpc2FibGVfY2FwdGlvbl9vcGFjaXR5X2tleWJvYXJkX3Nob3J0Y3V0c1x1MDAzZHRydWVcdTAwMjZ3ZWJfZGlzYWJsZV9jaGlwX3ZpZXdfbW9kZWxfbXV0YXRpb25cdTAwM2R0cnVlXHUwMDI2d2ViX2VuYWJsZV9hYl9yc3BfY2xcdTAwM2R0cnVlXHUwMDI2d2ViX2VuYWJsZV9jYXB0aW9uX2xhbmd1YWdlX3ByZWZlcmVuY2Vfc3RpY2tpbmVzc1x1MDAzZHRydWVcdTAwMjZ3ZWJfZW5hYmxlX2NvdXJzZV9pY29uX3VwZGF0ZVx1MDAzZHRydWVcdTAwMjZ3ZWJfZW5hYmxlX2VudGl0eV91cHNlcnRfb25fdXBkYXRlXHUwMDNkdHJ1ZVx1MDAyNndlYl9lbmFibGVfZXJyb3JfMjA0XHUwMDNkdHJ1ZVx1MDAyNndlYl9lbmFibGVfa2V5Ym9hcmRfc2hvcnRjdXRfZm9yX3RpbWVseV9hY3Rpb25zXHUwMDNkdHJ1ZVx1MDAyNndlYl9lbmFibGVfc2hvcHBpbmdfdGltZWx5X3NoZWxmX2NsaWVudFx1MDAzZHRydWVcdTAwMjZ3ZWJfZW5hYmxlX3NtYWxsX3NwZWVkbWFzdGVyXHUwMDNkdHJ1ZVx1MDAyNndlYl9lbmFibGVfdGltZWx5X2FjdGlvbnNcdTAwM2R0cnVlXHUwMDI2d2ViX2ZpeF9maW5lX3NjcnViYmluZ19mYWxzZV9wbGF5XHUwMDNkdHJ1ZVx1MDAyNndlYl9mb3JlZ3JvdW5kX2hlYXJ0YmVhdF9pbnRlcnZhbF9tc1x1MDAzZDI4MDAwXHUwMDI2d2ViX2Z1bGxzY3JlZW5fc2hvcnRzXHUwMDNkdHJ1ZVx1MDAyNndlYl9mdWxsc2NyZWVuX3Nob3J0c19tZW51X2l0ZW1cdTAwM2R0cnVlXHUwMDI2d2ViX2djZl9oYXNoZXNfaW5uZXJ0dWJlXHUwMDNkdHJ1ZVx1MDAyNndlYl9nZWxfZGVib3VuY2VfbXNcdTAwM2QxMDAwMFx1MDAyNndlYl9nZWxfdGltZW91dF9jYXBcdTAwM2R0cnVlXHUwMDI2d2ViX2hpZGVfbmV4dF9idXR0b25cdTAwM2R0cnVlXHUwMDI2d2ViX2hpZGVfd2F0Y2hfaW5mb19lbXB0eVx1MDAzZHRydWVcdTAwMjZ3ZWJfaGlkZV95b3VyX2RhdGFfb25fYXV0b21vdGl2ZVx1MDAzZHRydWVcdTAwMjZ3ZWJfbG9hZF9wcmVkaWN0aW9uX3RocmVzaG9sZFx1MDAzZDAuM1x1MDAyNndlYl9sb2dnaW5nX21heF9iYXRjaFx1MDAzZDEwMFx1MDAyNndlYl9tYXhfdHJhY2luZ19ldmVudHNcdTAwM2Q1MFx1MDAyNndlYl9tb25vbWVyX3dlYl9jb21wb25lbnRfd3JhcHBlcl9oYW5kbGVfZXJyb3JzXHUwMDNkdHJ1ZVx1MDAyNndlYl9uYXZpZ2F0aW9uX3ByZWRpY3Rpb25fdGhyZXNob2xkXHUwMDNkMC4xXHUwMDI2d2ViX25vbl9uYXZpZ2F0aW5nX2F0YWdcdTAwM2R0cnVlXHUwMDI2d2ViX29wX3NpZ25hbF90eXBlX2Jhbmxpc3RcdTAwM2RbXVx1MDAyNndlYl9wbGF5YmFja19hc3NvY2lhdGVkX3ZlXHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfYXBpX2xvZ2dpbmdfZnJhY3Rpb25cdTAwM2QwLjAxXHUwMDI2d2ViX3BsYXllcl9iaWdfbW9kZV9zY3JlZW5fd2lkdGhfY3V0b2ZmXHUwMDNkNDAwMVx1MDAyNndlYl9wbGF5ZXJfZGVmYXVsdF9wZWVraW5nX3B4XHUwMDNkMzZcdTAwMjZ3ZWJfcGxheWVyX2Rpc2FibGVfZ3JpZF9vbl9vZmZsaW5lX3NsYXRlXHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfZW5hYmxlX2ZlYXR1cmVkX3Byb2R1Y3RfYmFubmVyX2V4Y2x1c2l2ZXNfb25fZGVza3RvcFx1MDAzZHRydWVcdTAwMjZ3ZWJfcGxheWVyX2VuYWJsZV9mZWF0dXJlZF9wcm9kdWN0X2Jhbm5lcl9wcm9tb3Rpb25fdGV4dF9vbl9kZXNrdG9wXHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfZnJvc3RlZF9nbGFzc19ibHVyX3JhZGl1c1x1MDAzZDE2XHUwMDI2d2ViX3BsYXllcl9mcm9zdGVkX2dsYXNzX2JsdXJfcmFkaXVzX2Zsb2F0XHUwMDNkMTYuMFx1MDAyNndlYl9wbGF5ZXJfaW5uZXJ0dWJlX3BsYXlsaXN0X3VwZGF0ZVx1MDAzZHRydWVcdTAwMjZ3ZWJfcGxheWVyX2ludmlzaWJsZV9mdWxsc2NyZWVuX2J1dHRvblx1MDAzZHRydWVcdTAwMjZ3ZWJfcGxheWVyX2lwcF9jYW5hcnlfdHlwZV9mb3JfbG9nZ2luZ1x1MDAzZFx1MDAyNndlYl9wbGF5ZXJfbG9nX2NsaWNrX2JlZm9yZV9nZW5lcmF0aW5nX3ZlX2NvbnZlcnNpb25fcGFyYW1zXHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfbWluaXBsYXllcl9pbl9jb250ZXh0X21lbnVcdTAwM2R0cnVlXHUwMDI2d2ViX3BsYXllcl9tb3VzZV9pZGxlX3dhaXRfdGltZV9tc1x1MDAzZDMwMDBcdTAwMjZ3ZWJfcGxheWVyX211c2ljX3Zpc3VhbGl6ZXJfdHJlYXRtZW50XHUwMDNkZmFrZVx1MDAyNndlYl9wbGF5ZXJfb2ZmbGluZV9wbGF5bGlzdF9hdXRvX3JlZnJlc2hcdTAwM2R0cnVlXHUwMDI2d2ViX3BsYXllcl9wbGF5YWJsZV9zZXF1ZW5jZXNfcmVmYWN0b3JcdTAwM2R0cnVlXHUwMDI2d2ViX3BsYXllcl9xdWlja19oaWRlX3RpbWVvdXRfbXNcdTAwM2QyNTBcdTAwMjZ3ZWJfcGxheWVyX3NlZWtfY2hhcHRlcnNfYnlfc2hvcnRjdXRcdTAwM2R0cnVlXHUwMDI2d2ViX3BsYXllcl9zZWVrX292ZXJsYXlfYWRkaXRpb25hbF9hcnJvd190aHJlc2hvbGRcdTAwM2QyMDBcdTAwMjZ3ZWJfcGxheWVyX3NlZWtfb3ZlcmxheV9kdXJhdGlvbl9idW1wX3NjYWxlXHUwMDNkMC45XHUwMDI2d2ViX3BsYXllcl9zZWVrX292ZXJsYXlfbGluZ2VyX2R1cmF0aW9uXHUwMDNkMTAwMFx1MDAyNndlYl9wbGF5ZXJfc2VudGluZWxfaXNfdW5pcGxheWVyXHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfc2hvd19tdXNpY19pbl90aGlzX3ZpZGVvX2dyYXBoaWNcdTAwM2R2aWRlb190aHVtYm5haWxcdTAwMjZ3ZWJfcGxheWVyX3NzX2RhaV9hZF9mZXRjaGluZ190aW1lb3V0X21zXHUwMDNkMTUwMDBcdTAwMjZ3ZWJfcGxheWVyX3RvdWNoX2lkbGVfd2FpdF90aW1lX21zXHUwMDNkNDAwMFx1MDAyNndlYl9wbGF5ZXJfdHJhbnNmZXJfdGltZW91dF90aHJlc2hvbGRfbXNcdTAwM2QxMDgwMDAwMFx1MDAyNndlYl9wbGF5ZXJfdXBkYXRlZF9lbnRyeXBvaW50XHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfdXNlX2NpbmVtYXRpY19sYWJlbF8yXHUwMDNkdHJ1ZVx1MDAyNndlYl9wbGF5ZXJfdXNlX25ld19hcGlfZm9yX3F1YWxpdHlfcHVsbGJhY2tcdTAwM2R0cnVlXHUwMDI2d2ViX3BsYXllcl91c2Vfc2NyZWVuX3dpZHRoX2Zvcl9iaWdfbW9kZVx1MDAzZHRydWVcdTAwMjZ3ZWJfcHJlZmV0Y2hfcHJlbG9hZF92aWRlb1x1MDAzZHRydWVcdTAwMjZ3ZWJfcHJvZ3Jlc3NfYmFyX2RyYWdnYWJsZVx1MDAzZHRydWVcdTAwMjZ3ZWJfcHJvcGFnYXRlX3Zpc2liaWxpdHlfdG9fYXBwbGljYXRpb25fc3RhdGVcdTAwM2R0cnVlXHUwMDI2d2ViX3JlbWl4X2FsbG93X3VwX3RvXzN4X3BsYXliYWNrX3JhdGVcdTAwM2R0cnVlXHUwMDI2d2ViX3JlbW92ZV9icm9rZW5fc3Vic2NyaWJlX2VuZHNjcmVlblx1MDAzZHRydWVcdTAwMjZ3ZWJfc2Vzc2lvbl9yZXBsYXlfbW91c2Vtb3ZlX2ludGVydmFsXHUwMDNkMFx1MDAyNndlYl9zZXNzaW9uX3JlcGxheV9zY3JvbGxfaW50ZXJ2YWxcdTAwM2QwXHUwMDI2d2ViX3Nlc3Npb25fcmVwbGF5X3NlbmRfYWZ0ZXJfdGltZW91dFx1MDAzZDBcdTAwMjZ3ZWJfc2V0dGluZ3NfbWVudV9zdXJmYWNlX2N1c3RvbV9wbGF5YmFja1x1MDAzZHRydWVcdTAwMjZ3ZWJfc2V0dGluZ3NfdXNlX2lucHV0X3NsaWRlclx1MDAzZHRydWVcdTAwMjZ3ZWJfc2hvcnRzX2F1ZGlvX3RyYWNrX3BpY2tlclx1MDAzZHRydWVcdTAwMjZ3ZWJfdHJhY2luZ19lbmFibGVkX3NwYW5zXHUwMDNkW2V2ZW50LCBjb21tYW5kXVx1MDAyNndlYl90cmFjaW5nX3Nlc3Npb25fcmVwbGF5XHUwMDNkMFx1MDAyNndlYl91bmlmaWVkX2ZldGNoXHUwMDNkdHJ1ZVx1MDAyNndlYl93YXRjaF9kaXNhYmxlX2FjY291bnRfbGV2ZWxfY2FwdGlvbnNfc2V0dGluZ3NcdTAwM2R0cnVlXHUwMDI2d2VicG9fZXhpdF9vbl9uZXRfZXJyXHUwMDNkdHJ1ZVx1MDAyNndpbF9pY29uX21heF9jb25jdXJyZW50X2ZldGNoZXNcdTAwM2Q5OTk5XHUwMDI2d2l6X2RpZmZfb3ZlcndyaXRhYmxlXHUwMDNkdHJ1ZVx1MDAyNndpel93cmFwcGVyX2NhbGxiYWNrX3Byb3BzX2ZpeFx1MDAzZHRydWVcdTAwMjZ3b2ZmbGVfZW5hYmxlX2Rvd25sb2FkX3N0YXR1c1x1MDAzZHRydWVcdTAwMjZ3cml0ZV9yZWxvYWRfcGxheWVyX3Jlc3BvbnNlX3Rva2VuX3RvX3VzdHJlYW1lcl9jb25maWdfZm9yX3ZvZFx1MDAzZHRydWVcdTAwMjZ3c19hdjFfbWF4X2hlaWdodF9mbG9vclx1MDAzZDBcdTAwMjZ3c19hdjFfbWF4X3dpZHRoX2Zsb29yXHUwMDNkMFx1MDAyNndzX3VzZV9jZW50cmFsaXplZF9ocWFfZmlsdGVyXHUwMDNkdHJ1ZVx1MDAyNnd1Z19uZXR3b3JraW5nX2d6aXBfcmVxdWVzdFx1MDAzZHRydWVcdTAwMjZ5dGNzaV9kZWJ1Z19tYXhfc2l6ZVx1MDAzZDEwMFx1MDAyNnl0aWRiX3JlbWFrZV9kYl9yZXRyaWVzXHUwMDNkMVx1MDAyNnl0aWRiX3Jlb3Blbl9kYl9yZXRyaWVzXHUwMDNkMFx1MDAyNnl0aWRiX3RyYW5zYWN0aW9uX2VuZGVkX2V2ZW50X3JhdGVfbGltaXRcdTAwM2QwLjAyIiwic3RhcnRNdXRlZCI6ZmFsc2UsIm1vYmlsZUlwaG9uZVN1cHBvcnRzSW5saW5lUGxheWJhY2siOnRydWUsImlzTW9iaWxlRGV2aWNlIjpmYWxzZSwiY3NwTm9uY2UiOiJ6SmJIM1Rld0wxc1JFY0E4QjluZmp3IiwiY2FuYXJ5U3RhdGUiOiJub25lIiwiZW5hYmxlQ3NpTG9nZ2luZyI6dHJ1ZSwibG9hZGVyVXJsIjoiaHR0cHM6Ly9iZXN0dHJhZGVyLmxpdmUvIiwiZGlzYWJsZUF1dG9uYXYiOmZhbHNlLCJpc0VtYmVkIjp0cnVlLCJkaXNhYmxlQ2FzdEFwaSI6ZmFsc2UsInNlcmlhbGl6ZWRFbWJlZENvbmZpZyI6Int9IiwiZGlzYWJsZU1keENhc3QiOmZhbHNlLCJkYXRhc3luY0lkIjoiVmVmZTc0N2Q3fHwiLCJzdG9yZVVzZXJWb2x1bWUiOnRydWUsImRpc2FibGVQYWlkQ29udGVudE92ZXJsYXkiOnRydWUsImVuY3J5cHRlZEhvc3RGbGFncyI6IkFDbWJsQlhEQ1Z2ai1IUmNTZHBLcDdwVFJKd0tQbEM4TUw5TGpFVVFGY1dKYU5pTm81VWxlN256Mmhacl9nc014a1J0bmdDTEo4eG93WHJJaWNxWDZsTFg4UDVBaDJ6cTRKb2NOWm1PcGFUYVBDM1RzbW9MTkV1MlRoWU94USIsImNhbmFyeVN0YWdlIjoiIiwidHJ1c3RlZEpzVXJsIjp7InByaXZhdGVEb05vdEFjY2Vzc09yRWxzZVRydXN0ZWRSZXNvdXJjZVVybFdyYXBwZWRWYWx1ZSI6Ii9zL3BsYXllci83YTc5NjljMi9wbGF5ZXJfZW1iZWRfZXM2LnZmbHNldC9lbl9VUy9iYXNlLmpzIn0sInRydXN0ZWRDc3NVcmwiOnsicHJpdmF0ZURvTm90QWNjZXNzT3JFbHNlVHJ1c3RlZFJlc291cmNlVXJsV3JhcHBlZFZhbHVlIjoiL3MvcGxheWVyLzdhNzk2OWMyL3d3dy1wbGF5ZXIuY3NzIn0sImhvdXNlQnJhbmRVc2VyU3RhdHVzIjoibm90X3ByZXNlbnQiLCJlbWJlZHNFbmFibGVFbWMzZHMiOnRydWUsImRpc2FibGVPcmdhbmljVWkiOnRydWUsImVuYWJsZVNhYnJPbkVtYmVkIjpmYWxzZSwic2VyaWFsaXplZENsaWVudEV4cGVyaW1lbnRGbGFncyI6IjQ1NzE4MTc1XHUwMDNkMC4wXHUwMDI2NDU3MTgxNzZcdTAwM2QwLjAxXHUwMDI2NDU3MjU1MzhcdTAwM2QwLjBcdTAwMjY0NTcyNTUzOVx1MDAzZDAuMFx1MDAyNjQ1NzI1NTQwXHUwMDNkMC4wXHUwMDI2NDU3MjU1NDFcdTAwM2QwLjBcdTAwMjY0NTcyNTU0Mlx1MDAzZDAuMFx1MDAyNjQ1NzI1NTQzXHUwMDNkMC4wXHUwMDI2NDU3Mjg1NTNcdTAwM2R0cnVlXHUwMDI2NDU3Mjg1NzJcdTAwM2R0cnVlXHUwMDI2NDU3MjkyMTVcdTAwM2R0cnVlXHUwMDI2NDU3MzI3MDRcdTAwM2R0cnVlXHUwMDI2NDU3MzI3OTFcdTAwM2R0cnVlXHUwMDI2NDU3MzU0MjhcdTAwM2Q0MDAwLjBcdTAwMjY0NTczNzQ4OFx1MDAzZDAuMFx1MDAyNjQ1NzM3NDg5XHUwMDNkMC4wXHUwMDI2NDU3MzkwMjNcdTAwM2QwLjBcdTAwMjY0NTc0MTMzOVx1MDAzZDAuMFx1MDAyNjQ1NzQxNzczXHUwMDNkMC4wXHUwMDI2NDU3NDMyMjhcdTAwM2QwLjBcdTAwMjY0NTc0NTYxMFx1MDAzZHRydWVcdTAwMjY0NTc0Njk2Nlx1MDAzZDAuMFx1MDAyNjQ1NzQ2OTY3XHUwMDNkMC4wXHUwMDI2NDU3NDcwNTNcdTAwM2QwLjBcdTAwMjY0NTc1MDk0N1x1MDAzZDEwMjQwXHUwMDI2NDU3NTYyMDFcdTAwM2R0cnVlXHUwMDI2NDU3NTY4NzJcdTAwM2QwLjBcdTAwMjY0NTc1NzQyNlx1MDAzZDAuMFx1MDAyNjQ1NzU3NDI3XHUwMDNkMC4wXHUwMDI2NDU3NTc3NTBcdTAwM2QwLjBcdTAwMjY0NTc1Nzk1N1x1MDAzZDAuMFx1MDAyNjQ1NzU4NDY3XHUwMDNkMC4wXHUwMDI2NDU3NjAwMThcdTAwM2R0cnVlXHUwMDI2NDU3NjE3NjBcdTAwM2QyMDBcdTAwMjY0NTc2MjgzOFx1MDAzZDBcdTAwMjY0NTc2NDIxN1x1MDAzZDAuMFx1MDAyNjQ1NzY0MjUyXHUwMDNkMC4wXHUwMDI2NDU3NjQ1MjNcdTAwM2QwLjBcdTAwMjY0NTc2NDUyNFx1MDAzZDAuMFx1MDAyNjQ1NzY0NTkzXHUwMDNkMC4wXHUwMDI2NDU3NjUwNzdcdTAwM2R0cnVlXHUwMDI2NDU3NjU1NjhcdTAwM2QwLjBcdTAwMjY0NTc2NTYwMlx1MDAzZDAuMFx1MDAyNjQ1NzY1NjgwXHUwMDNkdHJ1ZVx1MDAyNjQ1NzY2NTExXHUwMDNkdHJ1ZVx1MDAyNjQ1NzY3NzYzXHUwMDNkMC4wXHUwMDI2NDU3Njc5NDNcdTAwM2QwLjBcdTAwMjY0NTc2ODM0MFx1MDAzZDAuMFx1MDAyNjQ1NzY4NDMwXHUwMDNkMC4wXHUwMDI2NDU3NjkxMTlcdTAwM2R0cnVlXHUwMDI2NDU3NjkyMTRcdTAwM2QwLjBcdTAwMjY0NTc3MDAwMVx1MDAzZDAuMFx1MDAyNjQ1NzcwMDAyXHUwMDNkMC4wXHUwMDI2NDU3NzAxMzVcdTAwM2R0cnVlXHUwMDI2NDU3NzEyODhcdTAwM2R0cnVlXHUwMDI2NDU3NzE4OTBcdTAwM2QwLjBcdTAwMjY0NTc3MzYwM1x1MDAzZDAuMFx1MDAyNjQ1NzczNjA0XHUwMDNkMC4wXHUwMDI2NDU3NzU3NTdcdTAwM2R0cnVlXHUwMDI2NDU3NzU3OTFcdTAwM2QwLjBcdTAwMjY0NTc3NTc5Mlx1MDAzZDAuMFx1MDAyNjQ1Nzc2MTkwXHUwMDNkMC4wXHUwMDI2NDU3Nzg2NjNcdTAwM2QwLjBcdTAwMjY0NTc3ODY3MVx1MDAzZDAuMFx1MDAyNjQ1NzgzODc1XHUwMDNkdHJ1ZVx1MDAyNjQ1Nzg0NDM5XHUwMDNkMFx1MDAyNjQ1Nzg2NDQzXHUwMDNkMC4wXHUwMDI2NDU3ODc5NDhcdTAwM2R0cnVlXHUwMDI2NDU3ODk0NzRcdTAwM2R0cnVlXHUwMDI2NDU3OTExMTdcdTAwM2QwLjBcdTAwMjY0NTc5MTExOFx1MDAzZDAuMFx1MDAyNjQ1NzkxMTE5XHUwMDNkMC4wXHUwMDI2NDU3OTM3MTBcdTAwM2QwLjBcdTAwMjY0NTc5NDQ0MVx1MDAzZDAuMFx1MDAyNjQ1Nzk0ODY3XHUwMDNkdHJ1ZVx1MDAyNjQ1Nzk0ODY4XHUwMDNkdHJ1ZVx1MDAyNjQ1Nzk3NzIxXHUwMDNkdHJ1ZVx1MDAyNjQ1Nzk3OTYzXHUwMDNkMC4wXHUwMDI2NDU4MDIxMjNcdTAwM2QwLjBcdTAwMjY0NTgwMzc1NFx1MDAzZDAuMFx1MDAyNjQ1ODA0NzcxXHUwMDNkMC4wXHUwMDI2NDU4MDU2OTVcdTAwM2QwLjBcdTAwMjY0NTgwNjU1NVx1MDAzZDJcdTAwMjY0NTgwNzQzMlx1MDAzZDAuMFx1MDAyNjQ1ODA3NDg0XHUwMDNkXHUwMDI2NDU4MDc3NzFcdTAwM2QwLjBcdTAwMjY0NTgwNzc3Mlx1MDAzZDAuMFx1MDAyNjQ1ODA3NzczXHUwMDNkMC4wXHUwMDI2NDU4MDg3NjJcdTAwM2QwXHUwMDI2NDU4MTQ0ODBcdTAwM2R0cnVlXHUwMDI2NDU4MTUwMTFcdTAwM2QwLjBcdTAwMjY0NTgxNTYzMFx1MDAzZDBcdTAwMjY0NTgxNjg4OFx1MDAzZDAuMFx1MDAyNjQ1ODE4MTI4XHUwMDNkMC4wIn19LCJYU1JGX0ZJRUxEX05BTUUiOiJzZXNzaW9uX3Rva2VuIiwiWFNSRl9UT0tFTiI6IlFVTTRabTlyVTJkd1JtcHVkVFUzTlRaNlltZEdXV1IyT1ZKUGFYeEJSM0ppUzJGcmRtTTNNakJhVkRObGNHVXpVMnhKYjBSTVpGZGFSR2R4VTNOVldWWk9ObEJKVkRsdGMybEJhazVLTW5WUlVVaFRaRjlOV0hKWGNVbHdZbmRKVm5kRVUwczNNMjlhVFVwQmEwaFVTRW95VlMxblRsZENaR1pGU1hNMFYwRVx1MDAzZCIsIlNFUlZFUl9WRVJTSU9OIjoicHJvZCIsIkRBVEFTWU5DX0lEIjoiVmVmZTc0N2Q3fHwiLCJTRVJJQUxJWkVEX0NMSUVOVF9DT05GSUdfREFUQSI6IkNQQzZtOU1HRUluazBSd1F2b1RSSEJDOXRxNEZFSW13emh3UXZvcXdCUkFBRUptTnNRVVF0dHZSSEJEbTY5RWNFTG53MFJ3UTZmalJIQkR4dE5BY0VNcjdnQk1ReWZhQUV4RDU4dEVjRUwyWnNBVVF6Ti11QlJDRGg3Z2lFUGFyc0FVUTl2ZlJIQkN1MXM4Y0VNZjhnQk1RaDZ6T0hCQ2tqdEljRUpYdjBSd1F4STNTSEJEZXZNNGNFSWJoZ0JNUTRMZlJIQkMzLUlBVEVMamt6aHdRNG9lNEloQ0lrTkVjRU9EcTBSd1FuZEN3QlJEYTk4NGNFSl9QZ0JNUWlvZTRJaEM4cE5BY0VPX2UwUndRaV9mUEhCREJqOUFjRVB5eXpod1FqcERSSEJDa3FkRWNFSUhOemh3UW5ZYTRJaENPdFlBVEVKT0QwaHdROWVuUkhDcHdRMEZOVTFSNFZrMHRXbkV0UkV4cFZVVndVVU51UVRjMVJsaGhka0oxUlZkeFRsVlFlVUZOVFROM00yTkNkR2RITjFGVU0zWmxhMHhOY1VOelFrRlBVWEpuVURkS2NtSnJRblZUUmtZNVJFMUNjMU5UUW1Oek9YaFRabG94VVZoa1RFOWFSekZMTjNaSWRITkhTRkZqUFRBQSIsIlJPT1RfVkVfVFlQRSI6MTY2MjMsIkNMSUVOVF9QUk9UT0NPTCI6ImgyIiwiQ0xJRU5UX1RSQU5TUE9SVCI6InRjcCIsIlBMQVlFUl9DTElFTlRfVkVSU0lPTiI6IjEuMjAyNjA3MjEuMDguMDAiLCJUSU1FX0NSRUFURURfTVMiOjE3ODUxMjYyNTY3MzYsIlZBTElEX1NFU1NJT05fVEVNUERBVEFfRE9NQUlOUyI6WyJ5b3V0dS5iZSIsInlvdXR1YmUuY29tIiwid3d3LnlvdXR1YmUuY29tIiwid2ViLWdyZWVuLXFhLnlvdXR1YmUuY29tIiwid2ViLXJlbGVhc2UtcWEueW91dHViZS5jb20iLCJ3ZWItaW50ZWdyYXRpb24tcWEueW91dHViZS5jb20iLCJtLnlvdXR1YmUuY29tIiwibXdlYi1ncmVlbi1xYS55b3V0dWJlLmNvbSIsIm13ZWItcmVsZWFzZS1xYS55b3V0dWJlLmNvbSIsIm13ZWItaW50ZWdyYXRpb24tcWEueW91dHViZS5jb20iLCJzdHVkaW8ueW91dHViZS5jb20iLCJzdHVkaW8tZ3JlZW4tcWEueW91dHViZS5jb20iLCJzdHVkaW8taW50ZWdyYXRpb24tcWEueW91dHViZS5jb20iXSwiTE9UVElFX1VSTCI6eyJwcml2YXRlRG9Ob3RBY2Nlc3NPckVsc2VUcnVzdGVkUmVzb3VyY2VVcmxXcmFwcGVkVmFsdWUiOiIvcy9lbWJlZHMvMzJkMmFjODMvbG90dGllLWxpZ2h0LnZmbHNldC9sb3R0aWUtbGlnaHQuanMifSwiSURFTlRJVFlfTUVNRU5UTyI6eyJ2aXNpdG9yX2RhdGEiOiJDZ3M0UWxkcVExTm1aQzFQV1Nqd3VwdlRCaklvQ2dKT1R4SWlFaDRTSEFzTURnOFFFUklURkJVV0Z4Z1pHaHNjSFI0ZklDRWlJeVFsSmljZ0dHTGZBZ3JjQWpJd0xsbFVQVVUxWWxwSVgyeFFNVTVCY2t4SE5EaDBObXhTYWpsdlpXVmpWekI0ZVVWR1pUbDFNR1ZpVjA5aUxXY3RYMHBtWmxORlFWbEVPVFoyWjJsNk9EUjZkRmQxTkdwTU1sRjFZak5wY1ZSUk1saHpWbkp0VldWc2FEaGlUREphTlRGM1RrUlRiVzl3Tm1SdU1WWjVhMDA0TmtSVE0yRldaVVZ1TjFGSE9FVlpPVTFzTTNkMmRYWmpjM05oTkRONGEzRndSemg1WVVsa09IVnlRV3B5V0doWlJXWkhVWEJpZEdwUVRXRkZTbTk2ZEhob01HTm9XV014VlRWWWJreGxVMHRQWjJ4aFJFeHJWV0pmVm5aRlduRTBVV05QU3paUVMyMHlVV05GU2pkWllVdE5kazVPYmxKWk5IWXpSMDFPWTFwRmVUSk9jbEpKV0ZoUlJWRkpOVVE0U1VWV1gyRnRNRUpOTkhNd1lqSXpaRzVKVDFabVRYbE9VVlo1VnpCMU4zaEJTekJPYVRCeldXRlJaVEZVVjJ3d1MyMUVSV3BLYlRNeE1GaGhXWEZzY0VkamJtWkhjRnB3YTI1TVVuSmlORWRwWld0S01qaG5adyUzRCUzRCJ9LCJNV0VCX1NVUFBPUlRTX0RPVUJMRV9UQVBfVE9fU0VFSyI6dHJ1ZSwiUExBWUVSX1ZBUlMiOnsiZW1iZWRkZWRfcGxheWVyX3Jlc3BvbnNlIjoie1wicmVzcG9uc2VDb250ZXh0XCI6e1wic2VydmljZVRyYWNraW5nUGFyYW1zXCI6W3tcInNlcnZpY2VcIjpcIkNTSVwiLFwicGFyYW1zXCI6W3tcImtleVwiOlwiY1wiLFwidmFsdWVcIjpcIldFQl9FTUJFRERFRF9QTEFZRVJcIn0se1wia2V5XCI6XCJjdmVyXCIsXCJ2YWx1ZVwiOlwiMi4yMDI2MDcyNC4wMS4wMFwifSx7XCJrZXlcIjpcInl0X2xpXCIsXCJ2YWx1ZVwiOlwiMFwifSx7XCJrZXlcIjpcIkdldEVtYmVkZGVkUGxheWVyX3JpZFwiLFwidmFsdWVcIjpcIjB4ZDA2OWYwYmUyYTNiZWM2MFwifV19LHtcInNlcnZpY2VcIjpcIkdGRUVEQkFDS1wiLFwicGFyYW1zXCI6W3tcImtleVwiOlwibG9nZ2VkX2luXCIsXCJ2YWx1ZVwiOlwiMFwifV19LHtcInNlcnZpY2VcIjpcIkdVSURFRF9IRUxQXCIsXCJwYXJhbXNcIjpbe1wia2V5XCI6XCJsb2dnZWRfaW5cIixcInZhbHVlXCI6XCIwXCJ9XX0se1wic2VydmljZVwiOlwiRUNBVENIRVJcIixcInBhcmFtc1wiOlt7XCJrZXlcIjpcImNsaWVudC52ZXJzaW9uXCIsXCJ2YWx1ZVwiOlwiMi4yMDI2MDcyNFwifSx7XCJrZXlcIjpcImNsaWVudC5uYW1lXCIsXCJ2YWx1ZVwiOlwiV0VCX0VNQkVEREVEX1BMQVlFUlwifV19XSxcInJlc3BvbnNlSWRcIjpcIkloTUk5dkNsdzRIeWxRTVZfZHBQQ0IxbmtUVk5cIixcIndlYlJlc3BvbnNlQ29udGV4dEV4dGVuc2lvbkRhdGFcIjp7XCJoYXNEZWNvcmF0ZWRcIjp0cnVlfX0sXCJlbWJlZFByZXZpZXdcIjp7XCJ0aHVtYm5haWxQcmV2aWV3UmVuZGVyZXJcIjp7XCJ0aXRsZVwiOntcInJ1bnNcIjpbe1widGV4dFwiOlwiV2hhdCBpcyBCaXRjb2luPyAodjIpXCJ9XX0sXCJkZWZhdWx0VGh1bWJuYWlsXCI6e1widGh1bWJuYWlsc1wiOlt7XCJ1cmxcIjpcImh0dHBzOi8vaS55dGltZy5jb20vdmlfd2VicC9HYzJlbjNuSHhBNC9kZWZhdWx0LndlYnBcIixcIndpZHRoXCI6MTIwLFwiaGVpZ2h0XCI6OTB9LHtcInVybFwiOlwiaHR0cHM6Ly9pLnl0aW1nLmNvbS92aS9HYzJlbjNuSHhBNC9ocWRlZmF1bHQuanBnP3NxcFx1MDAzZC1vYXltd0ViQ0tnQkVGNUlWZktyaXFrRERnZ0JGUUFBaUVJWUFYQUJ3QUVHXFx1MDAyNnJzXHUwMDNkQU9uNENMQlluTEYyYVlKZnY0amtVSnlaRHkxdF9EdjRSZ1wiLFwid2lkdGhcIjoxNjgsXCJoZWlnaHRcIjo5NH0se1widXJsXCI6XCJodHRwczovL2kueXRpbWcuY29tL3ZpL0djMmVuM25IeEE0L2hxZGVmYXVsdC5qcGc/c3FwXHUwMDNkLW9heW13RWJDTVFCRUc1SVZmS3JpcWtERGdnQkZRQUFpRUlZQVhBQndBRUdcXHUwMDI2cnNcdTAwM2RBT240Q0xBMHVhVXM5NjVzekM4ZTFBSGh4aFc2c09WOTlnXCIsXCJ3aWR0aFwiOjE5NixcImhlaWdodFwiOjExMH0se1widXJsXCI6XCJodHRwczovL2kueXRpbWcuY29tL3ZpL0djMmVuM25IeEE0L2hxZGVmYXVsdC5qcGc/c3FwXHUwMDNkLW9heW13RWNDUFlCRUlvQlNGWHlxNHFwQXc0SUFSVUFBSWhDR0FGd0FjQUJCZ1x1MDAzZFx1MDAzZFxcdTAwMjZyc1x1MDAzZEFPbjRDTER5d0FBcFNMNjdTdmE0bGdGVU9jZlRCdjJnandcIixcIndpZHRoXCI6MjQ2LFwiaGVpZ2h0XCI6MTM4fSx7XCJ1cmxcIjpcImh0dHBzOi8vaS55dGltZy5jb20vdmlfd2VicC9HYzJlbjNuSHhBNC9tcWRlZmF1bHQud2VicFwiLFwid2lkdGhcIjozMjAsXCJoZWlnaHRcIjoxODB9LHtcInVybFwiOlwiaHR0cHM6Ly9pLnl0aW1nLmNvbS92aS9HYzJlbjNuSHhBNC9ocWRlZmF1bHQuanBnP3NxcFx1MDAzZC1vYXltd0VjQ05BQ0VMd0JTRlh5cTRxcEF3NElBUlVBQUloQ0dBRndBY0FCQmdcdTAwM2RcdTAwM2RcXHUwMDI2cnNcdTAwM2RBT240Q0xDdGxHTXpnbEt2bmNRa3BOTDdXVWowejZhMTNBXCIsXCJ3aWR0aFwiOjMzNixcImhlaWdodFwiOjE4OH0se1widXJsXCI6XCJodHRwczovL2kueXRpbWcuY29tL3ZpX3dlYnAvR2MyZW4zbkh4QTQvaHFkZWZhdWx0LndlYnBcIixcIndpZHRoXCI6NDgwLFwiaGVpZ2h0XCI6MzYwfSx7XCJ1cmxcIjpcImh0dHBzOi8vaS55dGltZy5jb20vdmlfd2VicC9HYzJlbjNuSHhBNC9zZGRlZmF1bHQud2VicFwiLFwid2lkdGhcIjo2NDAsXCJoZWlnaHRcIjo0ODB9LHtcInVybFwiOlwiaHR0cHM6Ly9pLnl0aW1nLmNvbS92aV93ZWJwL0djMmVuM25IeEE0L21heHJlc2RlZmF1bHQud2VicFwiLFwid2lkdGhcIjoxOTIwLFwiaGVpZ2h0XCI6MTA4MH1dfSxcInBsYXlCdXR0b25cIjp7XCJidXR0b25SZW5kZXJlclwiOntcInN0eWxlXCI6XCJTVFlMRV9ERUZBVUxUXCIsXCJzaXplXCI6XCJTSVpFX0RFRkFVTFRcIixcImlzRGlzYWJsZWRcIjpmYWxzZSxcIm5hdmlnYXRpb25FbmRwb2ludFwiOntcImNsaWNrVHJhY2tpbmdQYXJhbXNcIjpcIkNBY1E4RnNpRXdqMjhLWERnZktWQXhYOTJrOElIV2VSTlUzS0FRUVhJN0haXCIsXCJjb21tYW5kTWV0YWRhdGFcIjp7XCJ3ZWJDb21tYW5kTWV0YWRhdGFcIjp7XCJ1cmxcIjpcIi93YXRjaD92XHUwMDNkR2MyZW4zbkh4QTRcXHUwMDI2cHBcdTAwM2QwZ2NKQ1hvQVJQaGRfZlhrXCIsXCJ3ZWJQYWdlVHlwZVwiOlwiV0VCX1BBR0VfVFlQRV9XQVRDSFwiLFwicm9vdFZlXCI6MzgzMn19LFwid2F0Y2hFbmRwb2ludFwiOntcInZpZGVvSWRcIjpcIkdjMmVuM25IeEE0XCIsXCJwbGF5ZXJQYXJhbXNcIjpcIjBnY0pDWG9BUlBoZF9mWGtcIn19LFwiYWNjZXNzaWJpbGl0eVwiOntcImxhYmVsXCI6XCJQbGF5IFdoYXQgaXMgQml0Y29pbj8gKHYyKVwifSxcInRyYWNraW5nUGFyYW1zXCI6XCJDQWNROEZzaUV3ajI4S1hEZ2ZLVkF4WDkyazhJSFdlUk5VMFx1MDAzZFwifX0sXCJ2aWRlb0RldGFpbHNcIjp7XCJlbWJlZGRlZFBsYXllck92ZXJsYXlWaWRlb0RldGFpbHNSZW5kZXJlclwiOntcImNoYW5uZWxUaHVtYm5haWxcIjp7XCJ0aHVtYm5haWxzXCI6W3tcInVybFwiOlwiaHR0cHM6Ly95dDMuZ2dwaHQuY29tL3l0Yy9BSWRyb19tcC1hel92eEZmS1RmZHpVVXNYUFJzdWJOQWxyNHFDaDhCRXpFSmZPY1BrQVx1MDAzZHM2OC1jLWstYzB4MDBmZmZmZmYtbm8tcmpcIixcIndpZHRoXCI6NjgsXCJoZWlnaHRcIjo2OH1dfSxcImNvbGxhcHNlZFJlbmRlcmVyXCI6e1wiZW1iZWRkZWRQbGF5ZXJPdmVybGF5VmlkZW9EZXRhaWxzQ29sbGFwc2VkUmVuZGVyZXJcIjp7XCJ0aXRsZVwiOntcInJ1bnNcIjpbe1widGV4dFwiOlwiV2hhdCBpcyBCaXRjb2luPyAodjIpXCIsXCJuYXZpZ2F0aW9uRW5kcG9pbnRcIjp7XCJjbGlja1RyYWNraW5nUGFyYW1zXCI6XCJDQVlRNDZJQ0loTUk5dkNsdzRIeWxRTVZfZHBQQ0IxbmtUVk55Z0VFRnlPeDJRXHUwMDNkXHUwMDNkXCIsXCJjb21tYW5kTWV0YWRhdGFcIjp7XCJ3ZWJDb21tYW5kTWV0YWRhdGFcIjp7XCJ1cmxcIjpcImh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3dhdGNoP3ZcdTAwM2RHYzJlbjNuSHhBNFwiLFwid2ViUGFnZVR5cGVcIjpcIldFQl9QQUdFX1RZUEVfVU5LTk9XTlwiLFwicm9vdFZlXCI6ODM3Njl9fSxcInVybEVuZHBvaW50XCI6e1widXJsXCI6XCJodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92XHUwMDNkR2MyZW4zbkh4QTRcIixcInRhcmdldFwiOlwiVEFSR0VUX05FV19XSU5ET1dcIn19fV19LFwic3VidGl0bGVcIjp7XCJydW5zXCI6W3tcInRleHRcIjpcIjcuMk0gdmlld3Mg4oCiIDIuN0sgY29tbWVudHNcIn1dfSxcInRyYWNraW5nUGFyYW1zXCI6XCJDQVlRNDZJQ0loTUk5dkNsdzRIeWxRTVZfZHBQQ0IxbmtUVk5cIn19LFwiZXhwYW5kZWRSZW5kZXJlclwiOntcImVtYmVkZGVkUGxheWVyT3ZlcmxheVZpZGVvRGV0YWlsc0V4cGFuZGVkUmVuZGVyZXJcIjp7XCJ0aXRsZVwiOntcInJ1bnNcIjpbe1widGV4dFwiOlwiV2VVc2VDb2luc1wifV19LFwic3VidGl0bGVcIjp7XCJydW5zXCI6W3tcInRleHRcIjpcIjI2LjJLIHN1YnNjcmliZXJzXCJ9XX0sXCJ0cmFja2luZ1BhcmFtc1wiOlwiQ0FVUTVLSUNJaE1JOXZDbHc0SHlsUU1WX2RwUENCMW5rVFZOXCJ9fSxcImNoYW5uZWxUaHVtYm5haWxFbmRwb2ludFwiOntcImNsaWNrVHJhY2tpbmdQYXJhbXNcIjpcIkNBQVFydTRCSWhNSTl2Q2x3NEh5bFFNVl9kcFBDQjFua1RWTnlnRUVGeU94MlFcdTAwM2RcdTAwM2RcIixcImNvbW1hbmRNZXRhZGF0YVwiOntcIndlYkNvbW1hbmRNZXRhZGF0YVwiOntcInVybFwiOlwiL2NoYW5uZWwvVUNPUXJOVTQySEZTemdGSGVmV1hkdGtRXCIsXCJ3ZWJQYWdlVHlwZVwiOlwiV0VCX1BBR0VfVFlQRV9VTktOT1dOXCIsXCJyb290VmVcIjo4Mzc2OX19LFwidXJsRW5kcG9pbnRcIjp7XCJ1cmxcIjpcIi9jaGFubmVsL1VDT1FyTlU0MkhGU3pnRkhlZldYZHRrUVwiLFwidGFyZ2V0XCI6XCJUQVJHRVRfTkVXX1dJTkRPV1wifX19fSxcInZpZGVvRHVyYXRpb25TZWNvbmRzXCI6XCI5N1wiLFwid2ViUGxheWVyQWN0aW9uc1BvcnRpbmdcIjp7XCJnZXRTaGFyZVBhbmVsQ29tbWFuZFwiOntcImNsaWNrVHJhY2tpbmdQYXJhbXNcIjpcIkNBQVFydTRCSWhNSTl2Q2x3NEh5bFFNVl9kcFBDQjFua1RWTnlnRUVGeU94MlFcdTAwM2RcdTAwM2RcIixcImNvbW1hbmRNZXRhZGF0YVwiOntcIndlYkNvbW1hbmRNZXRhZGF0YVwiOntcImFwaVVybFwiOlwiL3lvdXR1YmVpL3YxL3NoYXJlL2dldF93ZWJfcGxheWVyX3NoYXJlX3BhbmVsXCJ9fSxcIndlYlBsYXllclNoYXJlRW50aXR5U2VydmljZUVuZHBvaW50XCI6e1wic2VyaWFsaXplZFNoYXJlRW50aXR5XCI6XCJDZ3RIWXpKbGJqTnVTSGhCTkElM0QlM0RcIn19LFwic3Vic2NyaWJlQ29tbWFuZFwiOntcImNsaWNrVHJhY2tpbmdQYXJhbXNcIjpcIkNBQVFydTRCSWhNSTl2Q2x3NEh5bFFNVl9kcFBDQjFua1RWTnlnRUVGeU94MlFcdTAwM2RcdTAwM2RcIixcImNvbW1hbmRNZXRhZGF0YVwiOntcIndlYkNvbW1hbmRNZXRhZGF0YVwiOntcInNlbmRQb3N0XCI6dHJ1ZSxcImFwaVVybFwiOlwiL3lvdXR1YmVpL3YxL3N1YnNjcmlwdGlvbi9zdWJzY3JpYmVcIn19LFwic3Vic2NyaWJlRW5kcG9pbnRcIjp7XCJjaGFubmVsSWRzXCI6W1wiVUNPUXJOVTQySEZTemdGSGVmV1hkdGtRXCJdLFwicGFyYW1zXCI6XCJFZ0lJQnhnQVwifX0sXCJ1bnN1YnNjcmliZUNvbW1hbmRcIjp7XCJjbGlja1RyYWNraW5nUGFyYW1zXCI6XCJDQUFRcnU0QkloTUk5dkNsdzRIeWxRTVZfZHBQQ0IxbmtUVk55Z0VFRnlPeDJRXHUwMDNkXHUwMDNkXCIsXCJjb21tYW5kTWV0YWRhdGFcIjp7XCJ3ZWJDb21tYW5kTWV0YWRhdGFcIjp7XCJzZW5kUG9zdFwiOnRydWUsXCJhcGlVcmxcIjpcIi95b3V0dWJlaS92MS9zdWJzY3JpcHRpb24vdW5zdWJzY3JpYmVcIn19LFwidW5zdWJzY3JpYmVFbmRwb2ludFwiOntcImNoYW5uZWxJZHNcIjpbXCJVQ09Rck5VNDJIRlN6Z0ZIZWZXWGR0a1FcIl0sXCJwYXJhbXNcIjpcIkNnSUlCeGdBXCJ9fSxcImFkZFRvV2F0Y2hMYXRlckNvbW1hbmRcIjp7XCJjbGlja1RyYWNraW5nUGFyYW1zXCI6XCJDQUFRcnU0QkloTUk5dkNsdzRIeWxRTVZfZHBQQ0IxbmtUVk55Z0VFRnlPeDJRXHUwMDNkXHUwMDNkXCIsXCJjb21tYW5kTWV0YWRhdGFcIjp7XCJ3ZWJDb21tYW5kTWV0YWRhdGFcIjp7XCJhcGlVcmxcIjpcIi95b3V0dWJlaS92MS9icm93c2UvZWRpdF9wbGF5bGlzdFwifX0sXCJwbGF5bGlzdEVkaXRFbmRwb2ludFwiOntcInBsYXlsaXN0SWRcIjpcIldMXCIsXCJhY3Rpb25zXCI6W3tcImFkZGVkVmlkZW9JZFwiOlwiR2MyZW4zbkh4QTRcIixcImFjdGlvblwiOlwiQUNUSU9OX0FERF9WSURFT1wifV19fSxcInJlbW92ZUZyb21XYXRjaExhdGVyQ29tbWFuZFwiOntcImNsaWNrVHJhY2tpbmdQYXJhbXNcIjpcIkNBQVFydTRCSWhNSTl2Q2x3NEh5bFFNVl9kcFBDQjFua1RWTnlnRUVGeU94MlFcdTAwM2RcdTAwM2RcIixcImNvbW1hbmRNZXRhZGF0YVwiOntcIndlYkNvbW1hbmRNZXRhZGF0YVwiOntcImFwaVVybFwiOlwiL3lvdXR1YmVpL3YxL2Jyb3dzZS9lZGl0X3BsYXlsaXN0XCJ9fSxcInBsYXlsaXN0RWRpdEVuZHBvaW50XCI6e1wicGxheWxpc3RJZFwiOlwiV0xcIixcImFjdGlvbnNcIjpbe1wiYWN0aW9uXCI6XCJBQ1RJT05fUkVNT1ZFX1ZJREVPX0JZX1ZJREVPX0lEXCIsXCJyZW1vdmVkVmlkZW9JZFwiOlwiR2MyZW4zbkh4QTRcIn1dfX19LFwiYWN0aW9uQmFyQnV0dG9uc1wiOlt7XCJidXR0b25SZW5kZXJlclwiOntcInN0eWxlXCI6XCJTVFlMRV9PUEFDSVRZXCIsXCJzaXplXCI6XCJTSVpFX0RFRkFVTFRcIixcImlzRGlzYWJsZWRcIjpmYWxzZSxcImljb25cIjp7XCJpY29uVHlwZVwiOlwiU0hBUkVfQVJST1dcIn0sXCJuYXZpZ2F0aW9uRW5kcG9pbnRcIjp7XCJjbGlja1RyYWNraW5nUGFyYW1zXCI6XCJDQVFRLU44QkdBQWlFd2oyOEtYRGdmS1ZBeFg5Mms4SUhXZVJOVTNLQVFRWEk3SFpcIixcImNvbW1hbmRNZXRhZGF0YVwiOntcIndlYkNvbW1hbmRNZXRhZGF0YVwiOntcImlnbm9yZU5hdmlnYXRpb25cIjp0cnVlfX0sXCJzaGFyZUVudGl0eUVuZHBvaW50XCI6e1wic2VyaWFsaXplZFNoYXJlRW50aXR5XCI6XCJDZ3RIWXpKbGJqTnVTSGhCTkElM0QlM0RcIixcInNoYXJlUGFuZWxUeXBlXCI6XCJTSEFSRV9QQU5FTF9UWVBFX1VOSUZJRURfU0hBUkVfUEFORUxcIn19LFwidHJhY2tpbmdQYXJhbXNcIjpcIkNBUVEtTjhCR0FBaUV3ajI4S1hEZ2ZLVkF4WDkyazhJSFdlUk5VMFx1MDAzZFwiLFwiYWNjZXNzaWJpbGl0eURhdGFcIjp7XCJhY2Nlc3NpYmlsaXR5RGF0YVwiOntcImxhYmVsXCI6XCJTaGFyZVwifX19fSx7XCJidXR0b25SZW5kZXJlclwiOntcInN0eWxlXCI6XCJTVFlMRV9PUEFDSVRZXCIsXCJzaXplXCI6XCJTSVpFX0RFRkFVTFRcIixcImlzRGlzYWJsZWRcIjpmYWxzZSxcInNlcnZpY2VFbmRwb2ludFwiOntcImNsaWNrVHJhY2tpbmdQYXJhbXNcIjpcIkNBTVEtZDhCR0FFaUV3ajI4S1hEZ2ZLVkF4WDkyazhJSFdlUk5VM0tBUVFYSTdIWlwiLFwiY29tbWFuZE1ldGFkYXRhXCI6e1wid2ViQ29tbWFuZE1ldGFkYXRhXCI6e1wiYXBpVXJsXCI6XCIveW91dHViZWkvdjEvYnJvd3NlL2VkaXRfcGxheWxpc3RcIn19LFwicGxheWxpc3RFZGl0RW5kcG9pbnRcIjp7XCJwbGF5bGlzdElkXCI6XCJXTFwiLFwiYWN0aW9uc1wiOlt7XCJhZGRlZFZpZGVvSWRcIjpcIkdjMmVuM25IeEE0XCIsXCJhY3Rpb25cIjpcIkFDVElPTl9BRERfVklERU9cIn1dfX0sXCJpY29uXCI6e1wiaWNvblR5cGVcIjpcIkFERF9UT19XQVRDSF9MQVRFUlwifSxcInRyYWNraW5nUGFyYW1zXCI6XCJDQU1RLWQ4QkdBRWlFd2oyOEtYRGdmS1ZBeFg5Mms4SUhXZVJOVTBcdTAwM2RcIixcImFjY2Vzc2liaWxpdHlEYXRhXCI6e1wiYWNjZXNzaWJpbGl0eURhdGFcIjp7XCJsYWJlbFwiOlwiV2F0Y2ggbGF0ZXJcIn19LFwiY29tbWFuZFwiOntcImNsaWNrVHJhY2tpbmdQYXJhbXNcIjpcIkNBTVEtZDhCR0FFaUV3ajI4S1hEZ2ZLVkF4WDkyazhJSFdlUk5VM0tBUVFYSTdIWlwiLFwiY29tbWFuZE1ldGFkYXRhXCI6e1wid2ViQ29tbWFuZE1ldGFkYXRhXCI6e1widXJsXCI6XCJodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20vU2VydmljZUxvZ2luP3NlcnZpY2VcdTAwM2R5b3V0dWJlXFx1MDAyNnVpbGVsXHUwMDNkM1xcdTAwMjZwYXNzaXZlXHUwMDNkdHJ1ZVxcdTAwMjZjb250aW51ZVx1MDAzZGh0dHBzJTNBJTJGJTJGd3d3LnlvdXR1YmUuY29tJTJGc2lnbmluJTNGYWN0aW9uX2hhbmRsZV9zaWduaW4lM0R0cnVlJTI2aGwlM0RlbiUyNm5leHQlM0QlMjUyRnBvc3RfbG9naW5cXHUwMDI2aGxcdTAwM2RlblwiLFwid2ViUGFnZVR5cGVcIjpcIldFQl9QQUdFX1RZUEVfVU5LTk9XTlwiLFwicm9vdFZlXCI6ODM3Njl9fSxcInNpZ25JbkVuZHBvaW50XCI6e1wibmV4dEVuZHBvaW50XCI6e1wiY2xpY2tUcmFja2luZ1BhcmFtc1wiOlwiQ0FNUS1kOEJHQUVpRXdqMjhLWERnZktWQXhYOTJrOElIV2VSTlUzS0FRUVhJN0haXCIsXCJjb21tYW5kTWV0YWRhdGFcIjp7XCJ3ZWJDb21tYW5kTWV0YWRhdGFcIjp7XCJ1cmxcIjpcIi9wb3N0X2xvZ2luXCIsXCJ3ZWJQYWdlVHlwZVwiOlwiV0VCX1BBR0VfVFlQRV9VTktOT1dOXCIsXCJyb290VmVcIjo4Mzc2OX19LFwidXJsRW5kcG9pbnRcIjp7XCJ1cmxcIjpcIi9wb3N0X2xvZ2luXCJ9fX19fX1dLFwicXVpY2tBY3Rpb25zQmFyXCI6e1wicXVpY2tBY3Rpb25zVmlld01vZGVsXCI6e1wid2F0Y2hPbllvdXR1YmVCdXR0b25cIjp7XCJ3YXRjaE9uWW91dHViZUJ1dHRvblZpZXdNb2RlbFwiOntcIndhdGNoT25ZdExhYmVsQnV0dG9uXCI6e1wiYnV0dG9uVmlld01vZGVsXCI6e1wib25UYXBcIjp7XCJpbm5lcnR1YmVDb21tYW5kXCI6e1wiY2xpY2tUcmFja2luZ1BhcmFtc1wiOlwiQ0FJUXl2TUZJaE1JOXZDbHc0SHlsUU1WX2RwUENCMW5rVFZOeWdFRUZ5T3gyUVx1MDAzZFx1MDAzZFwiLFwiY29tbWFuZE1ldGFkYXRhXCI6e1wid2ViQ29tbWFuZE1ldGFkYXRhXCI6e1widXJsXCI6XCJodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92XHUwMDNkR2MyZW4zbkh4QTRcIixcIndlYlBhZ2VUeXBlXCI6XCJXRUJfUEFHRV9UWVBFX1VOS05PV05cIixcInJvb3RWZVwiOjgzNzY5fX0sXCJ1cmxFbmRwb2ludFwiOntcInVybFwiOlwiaHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g/dlx1MDAzZEdjMmVuM25IeEE0XCIsXCJ0YXJnZXRcIjpcIlRBUkdFVF9ORVdfV0lORE9XXCJ9fX0sXCJhY2Nlc3NpYmlsaXR5VGV4dFwiOlwiV2F0Y2ggb24gWW91VHViZVwiLFwic3R5bGVcIjpcIkJVVFRPTl9WSUVXX01PREVMX1NUWUxFX09WRVJMQVlfREFSS1wiLFwidHJhY2tpbmdQYXJhbXNcIjpcIkNBSVF5dk1GSWhNSTl2Q2x3NEh5bFFNVl9kcFBDQjFua1RWTlwiLFwidHlwZVwiOlwiQlVUVE9OX1ZJRVdfTU9ERUxfVFlQRV9URVhUXCIsXCJidXR0b25TaXplXCI6XCJCVVRUT05fVklFV19NT0RFTF9TSVpFX0xBUkdFXCIsXCJ0aXRsZUZvcm1hdHRlZFwiOntcImNvbnRlbnRcIjpcIldhdGNoIG9uXCIsXCJzdHlsZVJ1bnNcIjpbe1wid2VpZ2h0TGFiZWxcIjpcIkZPTlRfV0VJR0hUX1RISU5cIn1dLFwiYXR0YWNobWVudFJ1bnNcIjpbe1wic3RhcnRJbmRleFwiOjgsXCJsZW5ndGhcIjowLFwiZWxlbWVudFwiOntcInR5cGVcIjp7XCJpbWFnZVR5cGVcIjp7XCJpbWFnZVwiOntcInNvdXJjZXNcIjpbe1wiY2xpZW50UmVzb3VyY2VcIjp7XCJpbWFnZU5hbWVcIjpcIndhdGVybWFya1wifX1dfX19LFwicHJvcGVydGllc1wiOntcImxheW91dFByb3BlcnRpZXNcIjp7XCJoZWlnaHRcIjp7XCJ2YWx1ZVwiOjIwLFwidW5pdFwiOlwiRElNRU5TSU9OX1VOSVRfUE9JTlRcIn0sXCJ3aWR0aFwiOntcInZhbHVlXCI6OTAsXCJ1bml0XCI6XCJESU1FTlNJT05fVU5JVF9QT0lOVFwifSxcIm1hcmdpblwiOntcImxlZnRcIjp7XCJ2YWx1ZVwiOjV9fX19fSxcImFsaWdubWVudFwiOlwiQUxJR05NRU5UX1ZFUlRJQ0FMX0NFTlRFUlwifV19fX0sXCJ5dExvZ29Pbmx5QnV0dG9uXCI6e1wiYnV0dG9uVmlld01vZGVsXCI6e1wib25UYXBcIjp7XCJpbm5lcnR1YmVDb21tYW5kXCI6e1wiY2xpY2tUcmFja2luZ1BhcmFtc1wiOlwiQ0FFUTF0Y0VJaE1JOXZDbHc0SHlsUU1WX2RwUENCMW5rVFZOeWdFRUZ5T3gyUVx1MDAzZFx1MDAzZFwiLFwiY29tbWFuZE1ldGFkYXRhXCI6e1wid2ViQ29tbWFuZE1ldGFkYXRhXCI6e1widXJsXCI6XCJodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92XHUwMDNkR2MyZW4zbkh4QTRcIixcIndlYlBhZ2VUeXBlXCI6XCJXRUJfUEFHRV9UWVBFX1VOS05PV05cIixcInJvb3RWZVwiOjgzNzY5fX0sXCJ1cmxFbmRwb2ludFwiOntcInVybFwiOlwiaHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g/dlx1MDAzZEdjMmVuM25IeEE0XCIsXCJ0YXJnZXRcIjpcIlRBUkdFVF9ORVdfV0lORE9XXCJ9fX0sXCJhY2Nlc3NpYmlsaXR5VGV4dFwiOlwiV2F0Y2ggb24gWW91VHViZVwiLFwic3R5bGVcIjpcIkJVVFRPTl9WSUVXX01PREVMX1NUWUxFX01PTk9cIixcInRyYWNraW5nUGFyYW1zXCI6XCJDQUVRMXRjRUloTUk5dkNsdzRIeWxRTVZfZHBQQ0IxbmtUVk5cIixcInR5cGVcIjpcIkJVVFRPTl9WSUVXX01PREVMX1RZUEVfVEVYVFwiLFwiYnV0dG9uU2l6ZVwiOlwiQlVUVE9OX1ZJRVdfTU9ERUxfU0laRV9DT01QQUNUXCIsXCJ0aXRsZUZvcm1hdHRlZFwiOntcImNvbnRlbnRcIjpcIiBcIixcImF0dGFjaG1lbnRSdW5zXCI6W3tcInN0YXJ0SW5kZXhcIjowLFwibGVuZ3RoXCI6MCxcImVsZW1lbnRcIjp7XCJ0eXBlXCI6e1wiaW1hZ2VUeXBlXCI6e1wiaW1hZ2VcIjp7XCJzb3VyY2VzXCI6W3tcImNsaWVudFJlc291cmNlXCI6e1wiaW1hZ2VOYW1lXCI6XCJ3YXRlcm1hcmtcIn19XX19fSxcInByb3BlcnRpZXNcIjp7XCJsYXlvdXRQcm9wZXJ0aWVzXCI6e1wiaGVpZ2h0XCI6e1widmFsdWVcIjoyMCxcInVuaXRcIjpcIkRJTUVOU0lPTl9VTklUX1BPSU5UXCJ9LFwid2lkdGhcIjp7XCJ2YWx1ZVwiOjkwLFwidW5pdFwiOlwiRElNRU5TSU9OX1VOSVRfUE9JTlRcIn0sXCJtYXJnaW5cIjp7XCJsZWZ0XCI6e1widmFsdWVcIjo1fX19fX0sXCJhbGlnbm1lbnRcIjpcIkFMSUdOTUVOVF9WRVJUSUNBTF9DRU5URVJcIn1dfX19fX19fX19LFwidHJhY2tpbmdQYXJhbXNcIjpcIkNBQVFydTRCSWhNSTl2Q2x3NEh5bFFNVl9kcFBDQjFua1RWTnlnRUVGeU94MlFcdTAwM2RcdTAwM2RcIixcInBlcm1pc3Npb25zXCI6e1wiYWxsb3dJbWFNb25ldGl6YXRpb25cIjpmYWxzZSxcImFsbG93UGZwVW5icmFuZGVkXCI6ZmFsc2V9LFwidmlkZW9GbGFnc1wiOntcInBsYXlhYmxlSW5FbWJlZFwiOnRydWUsXCJpc0NyYXdsYWJsZVwiOnRydWV9LFwicHJldmlld1BsYXlhYmlsaXR5U3RhdHVzXCI6e1wic3RhdHVzXCI6XCJPS1wiLFwicGxheWFibGVJbkVtYmVkXCI6dHJ1ZSxcImNvbnRleHRQYXJhbXNcIjpcIlEwRkZVMEZuWjBFXHUwMDNkXCJ9LFwiZW1iZWRkZWRQbGF5ZXJNb2RlXCI6XCJFTUJFRERFRF9QTEFZRVJfTU9ERV9ERUZBVUxUXCIsXCJlbWJlZGRlZFBsYXllckNvbmZpZ1wiOntcImVtYmVkZGVkUGxheWVyTW9kZVwiOlwiRU1CRURERURfUExBWUVSX01PREVfREVGQVVMVFwiLFwiZW1iZWRkZWRQbGF5ZXJGbGFnc1wiOnt9fSxcImVtYmVkZGVkUGxheWVyQ29udGV4dFwiOntcImVtYmVkZGVkUGxheWVyRW5jcnlwdGVkQ29udGV4dFwiOlwiQUNtYmxCVVZYMTVUcDBSWG9PRWJTTS1KaTVpcFE1SDdlbFNLRVRZcGM2eF9OTzNleDcwS2FYMS04blFhVDVnTkkzSF9yYnZXeHpFWk0wWkVzOW9oTlRuSEd2Q0MyYkRDNGxhY0ttWXdsVVpDTERESThJTWpmWGRGVkV5d0tpTUxzeDhcIixcImFuY2VzdG9yT3JpZ2luc1N1cHBvcnRlZFwiOmZhbHNlfX0iLCJ2aWRlb19pZCI6IkdjMmVuM25IeEE0IiwicmVzb2x2ZV91cmxfcmVzcG9uc2UiOiJ7XCJyZXNwb25zZUNvbnRleHRcIjp7XCJzZXJ2aWNlVHJhY2tpbmdQYXJhbXNcIjpbe1wic2VydmljZVwiOlwiQ1NJXCIsXCJwYXJhbXNcIjpbe1wia2V5XCI6XCJjXCIsXCJ2YWx1ZVwiOlwiV0VCX0VNQkVEREVEX1BMQVlFUlwifSx7XCJrZXlcIjpcImN2ZXJcIixcInZhbHVlXCI6XCIyLjIwMjYwNzI0LjAxLjAwXCJ9LHtcImtleVwiOlwieXRfbGlcIixcInZhbHVlXCI6XCIwXCJ9LHtcImtleVwiOlwiUmVzb2x2ZVVybF9yaWRcIixcInZhbHVlXCI6XCIweGQwNjlmMGJlMmEzYmVjNjBcIn1dfSx7XCJzZXJ2aWNlXCI6XCJHRkVFREJBQ0tcIixcInBhcmFtc1wiOlt7XCJrZXlcIjpcImxvZ2dlZF9pblwiLFwidmFsdWVcIjpcIjBcIn1dfSx7XCJzZXJ2aWNlXCI6XCJHVUlERURfSEVMUFwiLFwicGFyYW1zXCI6W3tcImtleVwiOlwibG9nZ2VkX2luXCIsXCJ2YWx1ZVwiOlwiMFwifV19LHtcInNlcnZpY2VcIjpcIkVDQVRDSEVSXCIsXCJwYXJhbXNcIjpbe1wia2V5XCI6XCJjbGllbnQudmVyc2lvblwiLFwidmFsdWVcIjpcIjIuMjAyNjA3MjRcIn0se1wia2V5XCI6XCJjbGllbnQubmFtZVwiLFwidmFsdWVcIjpcIldFQl9FTUJFRERFRF9QTEFZRVJcIn1dfV0sXCJyZXNwb25zZUlkXCI6XCJJaE1JX2NTbHc0SHlsUU1WaDViMEJ4MzRneEpuXCIsXCJ3ZWJSZXNwb25zZUNvbnRleHRFeHRlbnNpb25EYXRhXCI6e1wiaGFzRGVjb3JhdGVkXCI6dHJ1ZX19LFwiZW5kcG9pbnRcIjp7XCJjbGlja1RyYWNraW5nUGFyYW1zXCI6XCJJaE1JX2NTbHc0SHlsUU1WaDViMEJ4MzRneEpuTWdobGVIUmxjbTVoYk1vQkJCY2pzZGtcdTAwM2RcIixcImNvbW1hbmRNZXRhZGF0YVwiOnt9fX0ifSwiUE9TVF9NRVNTQUdFX09SSUdJTiI6IioiLCJWSURFT19JRCI6IkdjMmVuM25IeEE0IiwiRE9NQUlOX0FETUlOX1NUQVRFIjoiIn0pO3dpbmRvdy55dGNmZy5vYmZ1c2NhdGVkRGF0YV8gPSBbXTs8L3NjcmlwdD48c2NyaXB0IG5vbmNlPSJ6SmJIM1Rld0wxc1JFY0E4QjluZmp3Ij53aW5kb3cueXRBdFAgPSBuZXcgUHJvbWlzZShyZXMgPT4gd2luZG93Lnl0QXROID0gcmVzKTsgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ0RPTUNvbnRlbnRMb2FkZWQnLCAoKSA9PiB7d2luZG93Lnl0QXROKCk7IGRlbGV0ZSB3aW5kb3cueXRBdE47fSk7PC9zY3JpcHQ+PHNjcmlwdCBub25jZT0iekpiSDNUZXdMMXNSRWNBOEI5bmZqdyI+d2luZG93Lnl0ZXJyPXdpbmRvdy55dGVycnx8dHJ1ZTt3aW5kb3cudW5oYW5kbGVkRXJyb3JNZXNzYWdlcz17fTsKd2luZG93Lm9uZXJyb3I9ZnVuY3Rpb24obXNnLHVybCxsaW5lLG9wdF9jb2x1bW5OdW1iZXIsb3B0X2Vycm9yKXt2YXIgZXJyO2lmKG9wdF9lcnJvcillcnI9b3B0X2Vycm9yO2Vsc2V7ZXJyPW5ldyBFcnJvcjtlcnIubWVzc2FnZT1tc2c7ZXJyLmZpbGVOYW1lPXVybDtlcnIubGluZU51bWJlcj1saW5lO2lmKCFpc05hTihvcHRfY29sdW1uTnVtYmVyKSllcnJbImNvbHVtbk51bWJlciJdPW9wdF9jb2x1bW5OdW1iZXJ9dmFyIG1lc3NhZ2U9U3RyaW5nKGVyci5tZXNzYWdlKTtpZighZXJyLm1lc3NhZ2V8fG1lc3NhZ2UgaW4gd2luZG93LnVuaGFuZGxlZEVycm9yTWVzc2FnZXMpcmV0dXJuO3dpbmRvdy51bmhhbmRsZWRFcnJvck1lc3NhZ2VzW21lc3NhZ2VdPXRydWU7dmFyIGltZz1uZXcgSW1hZ2U7d2luZG93LmVtZXJnZW5jeVRpbWVvdXRJbWc9aW1nO2ltZy5vbmxvYWQ9aW1nLm9uZXJyb3I9ZnVuY3Rpb24oKXtkZWxldGUgd2luZG93LmVtZXJnZW5jeVRpbWVvdXRJbWd9O3ZhciB2YWx1ZXM9CnsiY2xpZW50Lm5hbWUiOnl0Y2ZnLmdldCgiSU5ORVJUVUJFX0NPTlRFWFRfQ0xJRU5UX05BTUUiKSwiY2xpZW50LnZlcnNpb24iOnl0Y2ZnLmdldCgiSU5ORVJUVUJFX0NPTlRFWFRfQ0xJRU5UX1ZFUlNJT04iKSwibXNnIjptZXNzYWdlLCJ0eXBlIjoiVW5oYW5kbGVkV2luZG93IitlcnIubmFtZSwiZmlsZSI6ZXJyLmZpbGVOYW1lLCJsaW5lIjplcnIubGluZU51bWJlciwic3RhY2siOihlcnIuc3RhY2t8fCIiKS5zdWJzdHIoMCw1MDApfTt2YXIgcGFydHM9W3l0Y2ZnLmdldCgiRU1FUkdFTkNZX0JBU0VfVVJMIiwiL2Vycm9yXzIwND90PWpzZXJyb3ImbGV2ZWw9RVJST1IiKV07dmFyIGtleTtmb3Ioa2V5IGluIHZhbHVlcyl7dmFyIHZhbHVlPXZhbHVlc1trZXldO2lmKHZhbHVlKXBhcnRzLnB1c2goa2V5KyI9IitlbmNvZGVVUklDb21wb25lbnQodmFsdWUpKX1pbWcuc3JjPXBhcnRzLmpvaW4oIiYiKX07Cjwvc2NyaXB0PjxzY3JpcHQgbm9uY2U9InpKYkgzVGV3TDFzUkVjQThCOW5manciPnZhciB5dGVyciA9IHl0ZXJyIHx8IHRydWU7PC9zY3JpcHQ+PHNjcmlwdCBkYXRhLWlkPSJfZ2QiIG5vbmNlPSJ6SmJIM1Rld0wxc1JFY0E4QjluZmp3Ij53aW5kb3cuV0laX2dsb2JhbF9kYXRhID0geyJBZlk4SGYiOmZhbHNlLCJGTDFhbiI6ZmFsc2UsIkhpUHNiYiI6MCwiTVVFNk5lIjoieW91dHViZV93ZWIiLCJNdUpXamQiOmZhbHNlLCJVVUZhV2MiOiIlLkAubnVsbCwxMDAwLDJdIiwiY2ZiMmgiOiJ5b3V0dWJlLndlYi1mcm9udC1lbmQtY3JpdGljYWxfMjAyNjA3MjIuMDFfcDAiLCJmUER4d2QiOltdLCJoc0ZMVCI6IiUuQC5udWxsLDEwLDNdIiwiaUN6aEZjIjpmYWxzZSwiblF5QUUiOnt9LCJveE4zbmIiOnsiMSI6ZmFsc2UsIjAiOmZhbHNlLCI2MTA0MDEzMDEiOmZhbHNlLCI4OTk1ODg0MzciOmZhbHNlLCI3NzI2NTc3NjgiOnRydWUsIjUxMzY1OTUyMyI6ZmFsc2UsIjU2ODMzMzk0NSI6dHJ1ZSwiMTMzMTc2MTQwMyI6dHJ1ZSwiNjUxMTc1ODI4IjpmYWxzZSwiNzIyNzY0NTQyIjpmYWxzZSwiNzQ4NDAyMTQ1IjpmYWxzZSwiNzQ4NDAyMTQ2IjpmYWxzZSwiNzQ4NDAyMTQ3Ijp0cnVlLCIxNjAyNjEzMTg1IjpmYWxzZSwiODYxMzc3NzIzIjpmYWxzZSwiODYxMzc3NzI0IjpmYWxzZSwiODY5MzM2OTAzIjpmYWxzZSwiODgyNjc0NTA3IjpmYWxzZSwiODY5MzM2OTA0IjpmYWxzZSwiODY5MzM2OTA1IjpmYWxzZSwiMjgzOTUzMTU1IjpmYWxzZSwiOTE5NDQ0ODI0IjpmYWxzZSwiOTMxNDY4MDQ3IjpmYWxzZSwiOTI4ODc1Mzk4IjpmYWxzZSwiNjgzNzQ5MjAxIjpmYWxzZX0sInU0ZzdyIjoiJS5ALm51bGwsMSwzXSIsInhuSTlQIjpmYWxzZSwieHdBZkUiOnRydWUsInlGbnhyZiI6MjQ4Nn07PC9zY3JpcHQ+PHRpdGxlPllvdVR1YmU8L3RpdGxlPjxsaW5rIHJlbD0iY2Fub25pY2FsIiBocmVmPSJodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92PUdjMmVuM25IeEE0Ij48L2hlYWQ+PGJvZHkgY2xhc3M9ImRhdGUtMjAyNjA3MjYgZW5fVVMgbHRyICBzaXRlLWNlbnRlci1hbGlnbmVkIHNpdGUtYXMtZ2lhbnQtY2FyZCBnZWNrbyBnZWNrby0xMzQiIGRpcj0ibHRyIj48ZGl2IGlkPSJwbGF5ZXIiPjwvZGl2PjxzY3JpcHQgbm9uY2U9InpKYkgzVGV3TDFzUkVjQThCOW5manciPnZhciBzZXRNZXNzYWdlPWZ1bmN0aW9uKG1zZyl7aWYod2luZG93Lnl0JiZ5dC5zZXRNc2cpeXQuc2V0TXNnKG1zZyk7ZWxzZXt3aW5kb3cueXRjZmc9d2luZG93Lnl0Y2ZnfHx7fTt5dGNmZy5tc2dzPW1zZ319OwpzZXRNZXNzYWdlKHsiQUNDT1VOVF9MQUJFTCI6IkFjY291bnQiLCJBQ1RfT05fVEhJU19DT01NRU5UIjoiQWN0IG9uIHRoaXMgY29tbWVudCIsIkFERF9UT19EUk9QRE9XTl9MQUJFTCI6IkFkZCB0byBwbGF5bGlzdCIsIkFEX0JBREdFX0hJTlQiOiJBZHZlcnRpc2VtZW50IiwiQURfQkFER0VfVEVYVCI6IkFEIiwiQUxMX0NIQU5ORUxTX0xBQkVMIjoiQWxsIGNoYW5uZWxzIiwiQU1CSUVOVF9NT0RFIjoiQW1iaWVudCBtb2RlIiwiQU1CSUVOVF9NT0RFX09GRiI6IkFtYmllbnQgbW9kZSBvZmYiLCJBTUJJRU5UX01PREVfT04iOiJBbWJpZW50IG1vZGUgb24iLCJBTkRST0lEX0RFUFJFQ0FUSU9OX01FU1NBR0VfQk9EWSI6IlBsZWFzZSB1cGRhdGUgeW91ciBkZXZpY2UgdG8gQW5kcm9pZCA0LjAgYmVmb3JlIE9jdCAyMiwgMjAyMCB0byBrZWVwIHVzaW5nIFlvdVR1YmUgd2l0aG91dCBpbnRlcnJ1cHRpb25zLiIsIkFORFJPSURfREVQUkVDQVRJT05fTUVTU0FHRV9IRUFERVIiOiJZb3VUdWJlIHdpbGwgbm8gbG9uZ2VyIGJlIHN1cHBvcnRlZCBvbiB5b3VyIGRldmljZSBhZnRlciAyMDIwLTEwLTIyIiwiQVBQX1VQU0VMTF9TVUJUSVRMRSI6IlVwbG9hZCwgc2F2ZSwgYW5kIGNvbW1lbnQgb24gdmlkZW9zIHdpdGggdGhlIFlvdVR1YmUgYXBwIiwiQVBQX1VQU0VMTF9USVRMRSI6IlN3aXRjaCB0byB0aGUgYXBwIGZvciBhIGJldHRlciB2aWV3aW5nIGV4cGVyaWVuY2UiLCJBVURJT19UUkFDSyI6IkF1ZGlvIFRyYWNrIiwiQVVUT05BVl9UT0dHTEUiOiJBdXRvcGxheSIsIkFVVE9QTEFZX0lOX1RFTl9TRUNPTkRTIjoiTmV4dCB2aWRlbyB3aWxsIGJlIHBsYXllZCBpbiB0ZW4gc2Vjb25kcyIsIkFVVE9QTEFZX1BBVVNFRCI6IkF1dG9wbGF5IGlzIHBhdXNlZCIsIkFVVE9QTEFZX1BMQVlfTk9XIjoiUGxheSBub3ciLCJBVVRPUExBWV9VUF9ORVhUX0lOIjoiVXAgbmV4dCBpbiBzZWNvbmRzX3BsYWNlaG9sZGVyIiwiQVVUT19UUkFOU0xBVEUiOiJBdXRvLXRyYW5zbGF0ZSIsIkFVVE9fWk9PTSI6IkF1dG8gem9vbSIsIkJBQ0siOiJCYWNrIiwiQlJBTkRFRF9TSUdOX0lOX0RJQUxPR19ERVNDUklQVElPTiI6IkFjY2VzcyBhbGwgZmVhdHVyZXMgYW5kIGdldCBhIHNlYW1sZXNzIGV4cGVyaWVuY2UiLCJDQU5DRUwiOiJDYW5jZWwiLCJDSEFOTkVMX1NXSVRDSEVSX0xBQkVMIjoiU3dpdGNoIGFjY291bnQiLCJDSEFSQUNURVJfTElNSVQiOiJVc2UgZmV3ZXIgdGhhbiAkbnVtYmVyIGNoYXJhY3RlcnMiLCJDTE9TRSI6IkNsb3NlIiwiQ0xPU0VEX0NBUFRJT05TX0RJU0FCTEVEIjoiTm8gY2FwdGlvbnMgYXJlIGF2YWlsYWJsZSBmb3IgdGhpcyB2aWRlbyIsIkNMT1NFRF9DQVBUSU9OU19PRkYiOiJTdWJ0aXRsZXMvQ0MgdHVybmVkIG9mZiIsIkNMT1NFRF9DQVBUSU9OU19PTiI6IlN1YnRpdGxlcy9DQyB0dXJuZWQgb24iLCJDTE9TRURfQ0FQVElPTlNfT05fTEFOR1VBR0UiOiJTdWJ0aXRsZXMvQ0MgdHVybmVkIG9uIChsYW5ndWFnZV9wbGFjZWhvbGRlcikiLCJDTE9TRV9TRUFSQ0hfTEFCRUwiOiJDbG9zZSBzZWFyY2giLCJDTE9TRV9TRVRUSU5HU19MQUJFTCI6IkNsb3NlIFNldHRpbmdzIiwiQ09NTUVOVEJPWF9QT1NUIjoiUG9zdCIsIkNPTU1FTlRfTU9EQUxfQ09OVEVOVCI6IlBsZWFzZSBzaWduIGluIHRvIGFjdCBvbiB0aGlzIGNvbW1lbnQuIiwiQ09ORklSTV9PSyI6Ik9LIiwiQ09OTkVDVF9UT19USEVfSU5URVJORVQiOiJDb25uZWN0IHRvIHRoZSBpbnRlcm5ldCIsIkNPUElFRF9UT19DTElQQk9BUkQiOiJDb3BpZWQgdG8gY2xpcGJvYXJkIiwiQ09QWSI6IkNvcHkiLCJDT1BZX0RFQlVHX0lORk8iOiJDb3B5IERlYnVnIEluZm8iLCJDT1BZX0VNQkVEX0NPREUiOiJDb3B5IGVtYmVkIGNvZGUiLCJDT1BZX0xJTktfTEFCRUwiOiJDb3B5IGxpbmsiLCJDT1BZX1ZJREVPX1VSTCI6IkNvcHkgdmlkZW8gVVJMIiwiQ09QWV9WSURFT19VUkxfQVRfQ1VSUkVOVF9USU1FIjoiQ29weSB2aWRlbyBVUkwgYXQgY3VycmVudCB0aW1lIiwiQ1JFQVRFX0NIQU5ORUxfVElUTEUiOiJDcmVhdGUgY2hhbm5lbCIsIkRFTEVURV9GUk9NX0RPV05MT0FEUyI6IkRlbGV0ZSBmcm9tIGRvd25sb2FkcyIsIkRJQUxPRyI6IkRpYWxvZyIsIkRNQV9DT05TRU5UX0NPTkZJUk1BVElPTiI6IllvdXIgY2hvaWNlIHdpbGwgdGFrZSBlZmZlY3Qgb24gTWFyY2ggNiwgMjAyNC4gWW91IGNhbiBjaGFuZ2UgeW91ciBjaG9pY2VzIGFueXRpbWUgaW4geW91ciBHb29nbGUgQWNjb3VudC4iLCJETUFfQ09OU0VOVF9DT05GSVJNQVRJT04yIjoiWW91ciBjaG9pY2VzIGhhdmUgYmVlbiBzYXZlZC4gWW91IGNhbiBjaGFuZ2UgeW91ciBjaG9pY2VzIGFueXRpbWUgaW4geW91ciBHb29nbGUgQWNjb3VudC4iLCJETUFfQ09OU0VOVF9HRU5FUkFMX0VSUk9SIjoiU29tZXRoaW5nIHdlbnQgd3Jvbmcgd2hpbGUgbG9hZGluZyIsIkRNQV9DT05TRU5UX1JFQ09SRF9FUlJPUiI6IlNvbWV0aGluZyB3ZW50IHdyb25nIGFuZCB5b3VyIGNob2ljZXMgd2VyZSBub3Qgc2F2ZWQiLCJET05FIjoiRG9uZSIsIkRPV05MT0FEIjoiRG93bmxvYWQiLCJGQUlMRURfQ09QWV9FUlJPUl9NRVNTQUdFIjoiQ29weSBpcyBub3Qgc3VwcG9ydGVkIG9uIHRoZSBkZXZpY2UsIGZhaWxlZCB0byBjb3B5LiIsIkZMQUdfQ09ORklSTSI6IkFyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBmbGFnIHRoaXMgdmlkZW8/IiwiRkxBR19DT05URU5UIjoiU2lnbiBpbiB0byBmbGFnIGl0LiIsIkZMQUdfTEFCRUwiOiJGbGFnIGFzIGluYXBwcm9wcmlhdGUiLCJGTEFHX1RJVExFIjoiSW5hcHByb3ByaWF0ZSB2aWRlbz8iLCJGVUxMU0NSRUVOX0dFTkVSSUNfRVJST1IiOiJGdWxsIHNjcmVlbiBpcyB1bmF2YWlsYWJsZS4iLCJHT09HTEVfQ09NUEFOWSI6IllvdVR1YmUsIGEgR29vZ2xlIGNvbXBhbnkiLCJISURFX0FMRVJUIjoiSGlkZSB0aGlzIGFsZXJ0IiwiSElERV9QTEFZRVJfQ09OVFJPTFMiOiJIaWRlIHBsYXllciBjb250cm9scyIsIkhJREVfUExBWUxJU1RfVklERU9TIjoiSGlkZSBwbGF5bGlzdCB2aWRlb3MiLCJISURFX1NFQVJDSF9GSUxURVJTX0xBQkVMIjoiSGlkZSBzZWFyY2ggZmlsdGVycyIsIkhPTUUiOiJIb21lIiwiSU5WQUxJRF9SRVNQT05TRV9SRUNFSVZFRCI6IkludmFsaWQgcmVzcG9uc2UgcmVjZWl2ZWQuIiwiTEVBVkVfQV9DT01NRU5UX1RJVExFIjoiTGVhdmUgYSBjb21tZW50PyIsIkxJQlJBUlkiOiJMaWJyYXJ5IiwiTElLRV9DT1VOVF9URVhUIjp7ImNhc2UwIjoiTm8gbGlrZXMiLCJjYXNlMSI6IjEgbGlrZSIsIm90aGVyIjoiIyBsaWtlcyJ9LCJMSUtFX0NPVU5UX1RFWFRfTEFCRUwiOiJ7XCJjYXNlMFwiOiBcIk5vIHBlb3BsZSBoYXZlIGxpa2VkIHRoaXMgdmlkZW8uXCIsIFwiY2FzZTFcIjogXCIxIHBlcnNvbiBoYXMgbGlrZWQgdGhpcyB2aWRlby5cIiwgXCJvdGhlclwiOiBcIiMgcGVvcGxlIGhhdmUgbGlrZWQgdGhpcyB2aWRlby5cIn0iLCJMSVNURU5JTkciOiJMaXN0ZW5pbmcuLi4iLCJMT0FESU5HIjoiTG9hZGluZy4uLiIsIkxPTkdfUFJFU1NfTUlDX1RPX1NQRUFLIjoiTG9uZyBwcmVzcyBtaWNfaWNvbl9wbGFjZWhvbGRlciB0byBzcGVhayIsIkxPT1AiOiJMb29wIiwiTUVOVV9ERVNLVE9QIjoiRGVza3RvcCIsIk1FTlVfRVhJVCI6IkV4aXQiLCJNRU5VX0ZFRURCQUNLIjoiRmVlZGJhY2siLCJNRU5VX0hFTFAiOiJIZWxwIiwiTUVOVV9JTVBSRVNTVU0iOiJJbXByaW50IiwiTUVOVV9QTEFZRVJfU0VUVElOR1MiOiJQbGF5YmFjayBTZXR0aW5ncyIsIk1FTlVfUkVQT1JUX0FfUFJPQkxFTSI6IlJlcG9ydCBhIHByb2JsZW0gd2l0aCBZb3VUdWJlIiwiTUVOVV9TRU5EX0ZFRURCQUNLIjoiU2VuZCBmZWVkYmFjayIsIk1FTlVfU0VUVElOR1MiOiJTZXR0aW5ncyIsIk1FTlVfU0lHTl9JTiI6IlNpZ24gSW4iLCJNRU5VX1RFUk1TIjoiUHJpdmFjeSBcdTAwMjYgVGVybXMiLCJNRU5VX1RJVExFIjoiTWVudSIsIk1FTlVfWU9VUl9EQVRBIjoiWW91ciBkYXRhIGluIFlvdVR1YmUiLCJNRVRBREFUQV9TVUJUSVRMRV9DSEFOTkVMX05BTUVfTEFCRUwiOiJVcGxvYWRlZCBieSAke2NoYW5uZWxfbmFtZV9wbGFjZWhvbGRlcn0uIiwiTU1HX0NPTkZJUk1BVElPTiI6IllvdXIgY2hvaWNlIGhhcyBiZWVuIHNhdmVkLiBZb3UgY2FuIGNoYW5nZSB0aGlzIHNldHRpbmcgYW55dGltZSBpbiBNeSBBZCBDZW50ZXIuIiwiTU1HX0NPTlNFTlRfUkVDT1JEX0VSUk9SIjoiU29tZXRoaW5nIHdlbnQgd3JvbmcgYW5kIHlvdXIgY2hvaWNlIHdhcyBub3Qgc2F2ZWQiLCJNT1JFIjoiTW9yZSIsIk1PUkVfSU5GTyI6Ik1vcmUgaW5mbyIsIk1PUkVfTE9XRVJDQVNFIjoibW9yZSIsIk1PUkVfT1BUSU9OUyI6Ik1vcmUgb3B0aW9ucyIsIk1PUkVfVklERU9TIjoiTW9yZSB2aWRlb3MiLCJNT1JFX1ZJREVPU19DTE9TRV9CVVRUT05fQVJJQV9MQUJFTCI6IkhpZGUgbW9yZSB2aWRlb3MiLCJNT1JFX1ZJREVPU19GUk9NX0NIQU5ORUwiOiJNb3JlIHZpZGVvcyBmcm9tICRjaGFubmVsX25hbWVfcGxhY2Vob2xkZXIiLCJNT1JFX1ZJREVPU19ORVhUX0JVVFRPTl9BUklBX0xBQkVMIjoiTmV4dCB2aWRlb3MiLCJNT1JFX1ZJREVPU19QUkVWSU9VU19CVVRUT05fQVJJQV9MQUJFTCI6IlByZXZpb3VzIHZpZGVvcyIsIk1VVEVfVk9MVU1FIjoiTXV0ZSIsIk5FV19QTEFZTElTVCI6Ik5ldyBwbGF5bGlzdCIsIk5FWFRfVklERU8iOiJOZXh0IHZpZGVvIiwiTk9USUZJQ0FUSU9OX0VSUk9SX01FU1NBR0UiOiJTb21ldGhpbmcgd2VudCB3cm9uZywgcGxlYXNlIHRyeSBhZ2Fpbi4iLCJOT1RfRk9VTkRfQ1RBIjoiQnJvd3NlIFZpZGVvcyIsIk5PVF9GT1VORF9NRVNTQUdFIjoiUGxlYXNlIHNlYXJjaCBmb3Igc29tZXRoaW5nIGVsc2UsIG9yIGJyb3dzZSB5b3VyIEhvbWUgZmVlZC4iLCJOT1RfRk9VTkRfVElUTEUiOiJUaGlzIHBhZ2UgaXNuXHUwMDI3dCBhdmFpbGFibGUiLCJOT19ET1dOTE9BRFMiOiJObyBkb3dubG9hZHMiLCJOT19NSUNfSU5QVVQiOiJEaWRuXHUwMDI3dCBoZWFyIHRoYXQuIFRyeSBzcGVha2luZyBhZ2Fpbi4iLCJPRkZMSU5FX0NIRUNLX0NPTk5FQ1RJT04iOiJZb3VcdTAwMjdyZSBvZmZsaW5lLiBDaGVjayB5b3VyIGNvbm5lY3Rpb24uIiwiT09QU19NRVNTQUdFIjoiT29wcyEgU29tZXRoaW5nIHdlbnQgd3JvbmcuIiwiT1BFTl9BUFAiOiJPcGVuIEFwcCIsIk9QRU5fWU9VVFVCRSI6Ik9wZW4gdGhlIGFwcCIsIk9QRU5fWU9VVFVCRV9BUFAiOiJPcGVuIFlvdVR1YmUgYXBwIiwiUEFVU0UiOiJQYXVzZSIsIlBMQVkiOiJQbGF5IiwiUExBWUJBQ0tfU1BFRURfWCI6IiR7c3BlZWRfcmF0ZV9wbGFjZWhvbGRlcn14IiwiUExBWUVSX0NBUFRJT04iOiJDYXB0aW9ucyIsIlBMQVlFUl9DQVBUSU9OX09GRiI6Ik9mZiIsIlBMQVlFUl9DQVBUSU9OX09OIjoiT24iLCJQTEFZRVJfRE9VQkxFX1NQRUVEX1VTRVJfRURVIjoiMngiLCJQTEFZRVJfRE9VQkxFX1RBUF9UT19TRUVLIjoiRG91YmxlIHRhcCBsZWZ0IG9yIHJpZ2h0IHRvIHNraXAgMTAgc2Vjb25kcyIsIlBMQVlFUl9ET1VCTEVfVEFQX1RPX1NIT1dfT1JfSElERV9QTEFZRVJfQ09OVFJPTFMiOiJEb3VibGUgdGFwIHRvIHNob3cgb3IgaGlkZSBwbGF5ZXIgY29udHJvbHMiLCJQTEFZRVJfRVhJVF9GVUxMU0NSRUVOIjoiRXhpdCBmdWxsIHNjcmVlbiIsIlBMQVlFUl9GQVNURk9SV0FSRF9TRUNPTkRTIjoiRmFzdCBmb3J3YXJkICRzZWNvbmRzX3BsYWNlaG9sZGVyIHNlY29uZHMiLCJQTEFZRVJfRlVMTFNDUkVFTiI6IkVudGVyIGZ1bGwgc2NyZWVuIiwiUExBWUVSX0xJVkVfTEFCRUwiOiJMaXZlIiwiUExBWUVSX0xJVkVfTk9XIjoiTGl2ZSBub3ciLCJQTEFZRVJfTUlOSU1JWkUiOiJNaW5pbWl6ZSIsIlBMQVlFUl9ORVhUIjoiTmV4dCB2aWRlbyIsIlBMQVlFUl9QQVVTRSI6IlBhdXNlIHZpZGVvIiwiUExBWUVSX1BMQVkiOiJQbGF5IHZpZGVvIiwiUExBWUVSX1BSRU1JRVJFX0xBQkVMIjoiUHJlbWllcmUiLCJQTEFZRVJfUFJFVklPVVMiOiJQcmV2aW91cyB2aWRlbyIsIlBMQVlFUl9QUk9HUkVTU19CQVIiOiJTZWVrIHNsaWRlciIsIlBMQVlFUl9RVUFMSVRZIjoiUXVhbGl0eSIsIlBMQVlFUl9RVUFMSVRZX0FVVE8iOiJBdXRvIiwiUExBWUVSX1JFUExBWSI6IlJlcGxheSBWaWRlbyIsIlBMQVlFUl9SRVdJTkRfU0VDT05EUyI6IlJld2luZCAkc2Vjb25kc19wbGFjZWhvbGRlciBzZWNvbmRzIiwiUExBWUVSX1NFQ09ORFMiOiIkc2Vjb25kc19wbGFjZWhvbGRlciBzZWNvbmRzIiwiUExBWUVSX1NQRUVEIjoiU3BlZWQiLCJQTEFZRVJfU1BFRURVUF9VU0VSX0VEVSI6IlBsYXlpbmcgYXQgc3BlZWRfcmF0ZV9wbGFjZWhvbGRlcnggc3BlZWQiLCJQTEFZRVJfU1BFRURfREVDUkVBU0UiOiJEZWNyZWFzZSBwbGF5YmFjayBzcGVlZCIsIlBMQVlFUl9TUEVFRF9JTkNSRUFTRSI6IkluY3JlYXNlIHBsYXliYWNrIHNwZWVkIiwiUExBWUVSX1NQRUVEX05PUk1BTCI6Ik5vcm1hbCIsIlBMQVlFUl9TUEVFRF9SRUNFTlQiOiJSZWNlbnQiLCJQTEFZRVJfVElNRV9EVVJBVElPTiI6IlRpbWUgZHVyYXRpb24iLCJQTEFZRVJfVElNRV9FTEFQU0VEIjoiVGltZSBlbGFwc2VkIiwiUExBWUVSX1RJTUVfRk9STUFUVEVEIjp7ImNhc2UwIjoiJHttaW51dGVzfSBtaW51dGVzIGFuZCAke3NlY29uZHN9IHNlY29uZHMiLCJjYXNlMSI6IjEgaG91ciwgJHttaW51dGVzfSBtaW51dGVzIGFuZCAke3NlY29uZHN9IHNlY29uZHMiLCJvdGhlciI6IiMgaG91cnMsICR7bWludXRlc30gbWludXRlcyBhbmQgJHtzZWNvbmRzfSBzZWNvbmRzIn0sIlBMQVlMSVNUX0NVUlJFTlRfVklERU9fSU5ERVgiOiIke2N1cnJlbnRfdmlkZW9faW5kZXh9IG9mICR7bGFzdF9pbmRleH0uIiwiUExBWUxJU1RfREVTQ1JJUFRJT05fSU5WQUxJRF9DSEFSQUNURVJTIjoiUGxheWxpc3QgZGVzY3JpcHRpb24gY2FuXHUwMDI3dCB1c2UgXHUwMDNjIG9yIFx1MDAzZSIsIlBMQVlMSVNUX01JWF9ERVRBSUxFRF9MT05HX0JZTElORSI6Ik1peGVzIGFyZSBwbGF5bGlzdHMgWW91VHViZSBtYWtlcyBmb3IgeW91IiwiUExBWUxJU1RfTkFNRV9JTlZBTElEX0NIQVJBQ1RFUlMiOiJQbGF5bGlzdCB0aXRsZSBjYW5cdTAwMjd0IHVzZSBcdTAwM2Mgb3IgXHUwMDNlIiwiUExBWUxJU1RfTkFNRV9NSVNTSU5HIjoiUGxheWxpc3QgdGl0bGUgcmVxdWlyZWQuIiwiUExBWUxJU1RfTkFNRV9UT09fTE9ORyI6IlBsYXlsaXN0IHRpdGxlIGlzIHRvbyBsb25nLiIsIlBMQVlMSVNUX1BBTkVMX0VORF9PRl9QTEFZTElTVCI6IkVuZCBvZiBQbGF5bGlzdCIsIlBMQVlMSVNUX1BBTkVMX05FWFQiOiJOZXh0OiIsIlBMQVlMSVNUX1BBTkVMX1VOTElTVEVEX1BMQVlMSVNUIjoiVW5saXN0ZWQgUGxheWxpc3QiLCJQTEFZTElTVF9URVhUX0lOUFVUX0NIQVJfQ09VTlQiOiJjdXJyZW50X2NvdW50X3BsYWNlaG9sZGVyIG9mIG1heF9jb3VudF9wbGFjZWhvbGRlciBjaGFyYWN0ZXJzIHVzZWQiLCJQTEFZX0FMTCI6IlBsYXkgYWxsIiwiUExFQVNFX0ZJWF9FUlJPUlMiOiJQbGVhc2UgZml4IGVycm9ycyBhbmQgdHJ5IGFnYWluLiIsIlBSRU1JVU1fQkFER0VfTEFCRUwiOiJQcmVtaXVtIiwiUFJFVklPVVNfVklERU8iOiJQcmV2aW91cyB2aWRlbyIsIlBSSVZBQ1lfUE9MSUNZIjoiUHJpdmFjeSBQb2xpY3kiLCJSRUxPQUQiOiJSZWxvYWQiLCJSRVBMSUVTX1NIT1dfTU9SRSI6IlNob3cgbW9yZSByZXBsaWVzIiwiUkVRVUlSRURfTEFCRUwiOiJSZXF1aXJlZCIsIlNBVkVfUExBWUxJU1QiOiJTYXZlIiwiU0NSVUJfU0xJREVfVVNFUl9FRFUiOiJTbGlkZSBsZWZ0IG9yIHJpZ2h0IHRvIHNlZWsiLCJTRUFSQ0giOiJTZWFyY2giLCJTRUFSQ0hfQVBQRU5EX0xBQkVMIjoiQXBwZW5kIHN1Z2dlc3Rpb24gdG8gc2VhcmNoIGZpZWxkIiwiU0VBUkNIX0NIQU5ORUwiOiJTZWFyY2ggY2hhbm5lbCIsIlNFQVJDSF9DTEVBUl9MQUJFTCI6IkNsZWFyIGN1cnJlbnQgc2VhcmNoIHRleHQiLCJTRUFSQ0hfRU5USVRZX1NVR0dFU1RJT05fQUxCVU0iOiJBbGJ1bSBieSAke2FydGlzdH0iLCJTRUFSQ0hfRU5USVRZX1NVR0dFU1RJT05fQUxCVU1fTk9fQVJUSVNUIjoiQWxidW0iLCJTRUFSQ0hfRU5USVRZX1NVR0dFU1RJT05fTU9WSUUiOiJNb3ZpZSIsIlNFQVJDSF9FTlRJVFlfU1VHR0VTVElPTl9TT05HIjoiU29uZyBieSAke2FydGlzdH0iLCJTRUFSQ0hfRU5USVRZX1NVR0dFU1RJT05fU09OR19OT19BUlRJU1QiOiJTb25nIiwiU0VBUkNIX0VOVElUWV9TVUdHRVNUSU9OX1RWX1NIT1ciOiJUViBzaG93IiwiU0VBUkNIX0ZJTFRFUlNfTEFCRUwiOiJTZWFyY2ggZmlsdGVycyIsIlNFQVJDSF9MQUJFTCI6IlNlYXJjaCBZb3VUdWJlIiwiU0VBUkNIX1BQUF9QTEFDRUhPTERFUl9URVhUIjoiU2VhcmNoIHBhaWQgcHJvZHVjdCBwbGFjZW1lbnQgdmlkZW9zIiwiU0VFS19TTElERVIiOiJTZWVrIHNsaWRlciIsIlNFVFRJTkdTX0xBQkVMIjoiU2V0dGluZ3MiLCJTRVRUSU5HU19NSUNfUEVSTUlTU0lPTiI6IlBsZWFzZSBhbGxvdyBtaWNyb3Bob25lIHBlcm1pc3Npb24gaW4gZGV2aWNlIHNldHRpbmdzLiIsIlNFVF9QTEFZQkFDS19TUEVFRF9YIjoiJHtzcGVlZF9yYXRlX3BsYWNlaG9sZGVyfXggc3BlZWQiLCJTSE9SVFNfVEFCX0xBQkVMIjoiU2hvcnRzIiwiU0hPV19MRVNTIjoiU2hvdyBsZXNzIiwiU0hPV19NT1JFIjoiU2hvdyBtb3JlIiwiU0hPV19QTEFZRVJfQ09OVFJPTFMiOiJTaG93IHBsYXllciBjb250cm9scyIsIlNIT1dfUExBWUxJU1RfVklERU9TIjoiU2hvdyBwbGF5bGlzdCB2aWRlb3MiLCJTSE9XX1NFQVJDSF9GSUxURVJTX0xBQkVMIjoiU2hvdyBzZWFyY2ggZmlsdGVycyIsIlNJR05fSU5fTEFCRUwiOiJTaWduIGluIiwiU0lHTl9JTl9PTl9XRUIiOiJTaWduIGluIG9uIHdlYiIsIlNUQUJMRV9WT0xVTUUiOiJTdGFibGUgdm9sdW1lIiwiU1RBQkxFX1ZPTFVNRV9PRkYiOiJTdGFibGUgdm9sdW1lIG9mZiIsIlNUQUJMRV9WT0xVTUVfT04iOiJTdGFibGUgdm9sdW1lIG9uIiwiU1RBVFNfRk9SX05FUkRTIjoiU3RhdHMgRm9yIE5lcmRzIiwiU1VHR0VTVElPTl9ESVNNSVNTRURfTEFCRUwiOiJTdWdnZXN0aW9uIFJlbW92ZWQiLCJTVUdHRVNUSU9OX0RJU01JU1NfSU5fU0VUVElOR1NfTEFCRUwiOiJSZW1vdmUgaW4gc2V0dGluZ3MiLCJTVUdHRVNUSU9OX0RJU01JU1NfTEFCRUwiOiJSZW1vdmUiLCJTVUdHRVNUSU9OX05FV19WSURFT1NfVEVYVCI6Ik5ldyB2aWRlb3MiLCJTVUdHRVNUSU9OX1RIVU1CTkFJTF9BVFRSSUJVVElPTl9ESUFMT0dfQlVUVE9OX0xBQkVMIjoiVmlzaXQgc291cmNlIiwiU1VHR0VTVElPTl9USFVNQk5BSUxfQVRUUklCVVRJT05fRElBTE9HX0RFU0NSSVBUSU9OIjoiVmlzaXQgaW1hZ2Ugc291cmNlIHdlYnNpdGU/IiwiU1VHR0VTVElPTl9USFVNQk5BSUxfQVRUUklCVVRJT05fRElBTE9HX1RJVExFIjoiSW1hZ2Ugc291cmNlIiwiU1VHR0VTVElPTl9USFVNQk5BSUxfQVRUUklCVVRJT05fTEFCRUwiOiJWaWV3IGltYWdlIHNvdXJjZSIsIlNVR0dFU1RJT05fVEhVTUJOQUlMX0xBQkVMIjoiSW1hZ2UgZm9yIHN1Z2dlc3Rpb24iLCJURVJNU19PRl9TRVJWSUNFIjoiVGVybXMgb2YgU2VydmljZSIsIlRJTUVTVEFNUF9NSU5VVEVTIjoidGltZXN0YW1wIG1pbnV0ZXMgcmVxdWlyZWQiLCJUSU1FU1RBTVBfU0VDT05EUyI6InRpbWVzdGFtcCBzZWNvbmRzIHJlcXVpcmVkIiwiVE9HR0xFX09GRiI6Ik9mZiIsIlRPR0dMRV9PTiI6Ik9uIiwiVFJFTkRJTkciOiJUcmVuZGluZyIsIlRST1VCTEVTSE9PVF9QTEFZQkFDS19JU1NVRSI6IlRyb3VibGVzaG9vdCBwbGF5YmFjayBpc3N1ZSIsIlRSWV9BR0FJTl9MQVRFUiI6IlNvbWV0aGluZyB3ZW50IHdyb25nLiBQbGVhc2UgdHJ5IGFnYWluIGxhdGVyLiIsIlRSWV9BR0FJTl9NSUNfUEVSTUlTU0lPTiI6IlBsZWFzZSB0cnkgYWdhaW4gYW5kIGFsbG93IG1pY3JvcGhvbmUgcGVybWlzc2lvbi4iLCJUVVJOX09GRl9BVVRPUExBWV9DT05GSVJNX0JVVFRPTl9USVRMRSI6IlR1cm4gb2ZmIiwiVFVSTl9PRkZfQVVUT1BMQVlfRElBTE9HX0RFU0NSSVBUSU9OIjoiV2hlbiBhdXRvcGxheSBpcyBvZmYsIGEgc3VnZ2VzdGVkIHZpZGVvIHdpbGwgbm90IGF1dG9tYXRpY2FsbHkgcGxheSBuZXh0IiwiVFVSTl9PRkZfQVVUT1BMQVlfRElBTE9HX1RJVExFIjoiVHVybiBvZmYgYXV0b3BsYXk/IiwiVU5NVVRFX1ZPTFVNRSI6IlVubXV0ZSIsIlZJREVPUyI6Int2aWRlb3MscGx1cmFsLCBcdTAwM2QwezAgdmlkZW9zfVx1MDAzZDF7MSB2aWRlb31vdGhlcnsjIHZpZGVvc319IiwiVklERU9fTElOS19MQUJFTCI6IlZpZGVvIGxpbmsiLCJXQVRDSEVEIjoiV2F0Y2hlZCIsIl9fbGFuZ19fIjoiZW4ifSk7PC9zY3JpcHQ+PHNjcmlwdCBzcmM9Ii9zL18veXRlbWJlZHMvXy9qcy9rPXl0ZW1iZWRzLmJhc2UuZW5fVVMuXzg4VHd5eUhLSHMuMjAyMS5PL2FtPUFBQUFnQS9kPTEvYnI9MS9ycz1BR0tNeXdFdTJUUVV6ZFNGMEFjc0ZCTVVyRnF5dXJLbHV3L209cm9vdCxiYXNlIiBuYW1lPSJlbWJlZF9jbGllbnQiIGlkPSJiYXNlLWpzIiBub25jZT0iekpiSDNUZXdMMXNSRWNBOEI5bmZqdyI+PC9zY3JpcHQ+PHNjcmlwdCBzcmM9Ii9zL3BsYXllci83YTc5NjljMi9wbGF5ZXJfZW1iZWRfZXM2LnZmbHNldC9lbl9VUy9iYXNlLmpzIiBuYW1lPSJwbGF5ZXIvYmFzZSIgbm9uY2U9InpKYkgzVGV3TDFzUkVjQThCOW5manciPjwvc2NyaXB0PjxzY3JpcHQgbm9uY2U9InpKYkgzVGV3TDFzUkVjQThCOW5manciPndyaXRlRW1iZWQoKTs8L3NjcmlwdD48c2NyaXB0IG5vbmNlPSJ6SmJIM1Rld0wxc1JFY0E4QjluZmp3Ij4oZnVuY3Rpb24oKSB7aWYgKHdpbmRvdy55dEF0Tikge3dpbmRvdy55dEF0Tih7J1InOiAnXHg3Ylx4MjJyZXNwb25zZUNvbnRleHRceDIyOlx4N2JceDIyc2VydmljZVRyYWNraW5nUGFyYW1zXHgyMjpceDViXHg3Ylx4MjJzZXJ2aWNlXHgyMjpceDIyQ1NJXHgyMixceDIycGFyYW1zXHgyMjpceDViXHg3Ylx4MjJrZXlceDIyOlx4MjJjXHgyMixceDIydmFsdWVceDIyOlx4MjJXRUJfRU1CRURERURfUExBWUVSXHgyMlx4N2QsXHg3Ylx4MjJrZXlceDIyOlx4MjJjdmVyXHgyMixceDIydmFsdWVceDIyOlx4MjIyLjIwMjYwNzI0LjAxLjAwXHgyMlx4N2QsXHg3Ylx4MjJrZXlceDIyOlx4MjJ5dF9saVx4MjIsXHgyMnZhbHVlXHgyMjpceDIyMFx4MjJceDdkLFx4N2JceDIya2V5XHgyMjpceDIyR2V0QXR0ZXN0YXRpb25DaGFsbGVuZ2VfcmlkXHgyMixceDIydmFsdWVceDIyOlx4MjIweGQwNjlmMGJlMmEzYmVjNjBceDIyXHg3ZFx4NWRceDdkLFx4N2JceDIyc2VydmljZVx4MjI6XHgyMkdGRUVEQkFDS1x4MjIsXHgyMnBhcmFtc1x4MjI6XHg1Ylx4N2JceDIya2V5XHgyMjpceDIybG9nZ2VkX2luXHgyMixceDIydmFsdWVceDIyOlx4MjIwXHgyMlx4N2RceDVkXHg3ZCxceDdiXHgyMnNlcnZpY2VceDIyOlx4MjJHVUlERURfSEVMUFx4MjIsXHgyMnBhcmFtc1x4MjI6XHg1Ylx4N2JceDIya2V5XHgyMjpceDIybG9nZ2VkX2luXHgyMixceDIydmFsdWVceDIyOlx4MjIwXHgyMlx4N2RceDVkXHg3ZCxceDdiXHgyMnNlcnZpY2VceDIyOlx4MjJFQ0FUQ0hFUlx4MjIsXHgyMnBhcmFtc1x4MjI6XHg1Ylx4N2JceDIya2V5XHgyMjpceDIyY2xpZW50LnZlcnNpb25ceDIyLFx4MjJ2YWx1ZVx4MjI6XHgyMjIuMjAyNjA3MjRceDIyXHg3ZCxceDdiXHgyMmtleVx4MjI6XHgyMmNsaWVudC5uYW1lXHgyMixceDIydmFsdWVceDIyOlx4MjJXRUJfRU1CRURERURfUExBWUVSXHgyMlx4N2RceDVkXHg3ZFx4NWQsXHgyMnJlc3BvbnNlSWRceDIyOlx4MjJJaE1JdlpPbXc0SHlsUU1WemY5UENCMlVOeEloXHgyMixceDIyd2ViUmVzcG9uc2VDb250ZXh0RXh0ZW5zaW9uRGF0YVx4MjI6XHg3Ylx4MjJoYXNEZWNvcmF0ZWRceDIyOnRydWVceDdkXHg3ZCxceDIyY2hhbGxlbmdlXHgyMjpceDIyYVx4M2Q2XFx1MDAyNmEyXHgzZDEwXFx1MDAyNmNceDNkMTc4NTEyNjI1NlxcdTAwMjZkXHgzZDU2XFx1MDAyNnRceDNkMjE2MDBcXHUwMDI2YzFhXHgzZDFcXHUwMDI2YzZhXHgzZDFcXHUwMDI2YzZiXHgzZDFcXHUwMDI2aGhceDNkeU0wZ3ZqZlM2Yms0WGVYam1PY0g4a2ZHclNfM0pGQTZOUENVcVVVNkhyVVx4MjIsXHgyMmJnQ2hhbGxlbmdlXHgyMjpceDdiXHgyMmludGVycHJldGVyVXJsXHgyMjpceDdiXHgyMnByaXZhdGVEb05vdEFjY2Vzc09yRWxzZVRydXN0ZWRSZXNvdXJjZVVybFdyYXBwZWRWYWx1ZVx4MjI6XHgyMlwvXC93d3cuZ29vZ2xlLmNvbVwvanNcL3RoXC9iOHFYckZBdTlQSFZyR3FNWmkybnFLbTlUVU5QcnJ6RWg0MFBBbC02b1ZvLmpzXHgyMlx4N2QsXHgyMmludGVycHJldGVySGFzaFx4MjI6XHgyMmI4cVhyRkF1OVBIVnJHcU1aaTJucUttOVRVTlBycnpFaDQwUEFsLTZvVm9ceDIyLFx4MjJwcm9ncmFtXHgyMjpceDIyUnJ2Q0dCRFwvbW11SjlkMmtPQ3AwZVVqY0NmRGRJT1d2TFZXRWRuam1RcnBhT1dET1J2TnR1d3NlbkV1a0xWUWdReG9iMjl3WVRQQ1l6SStjSjFjMkxrTWlXSllEdUtVNGJEVzdSd1gyK0RlSmZoWmFsWjQ4Y0xhZ01ta3lsR1VXTzR2S0lnOVUyZXh1ejZZbDBNV2RVaXQ5M1d1czdPNG1LY3J2bkFUSFF3TmVCekFjZno0aDRIUmZia1dRdEdXVG5renVwUzQ2SVNwbzFlekdSZ3Y2azIwY1ZoWkZmVDE1cTFCa2RqTXVzMVJTak1BNnJtbWRQM3lFbTUzdHp3Rm04Zkx3QzVYNXlDbWx0b1dMUGkyblMwYnBkbzlyYkZSRkNPdkZOYXMwRGRVUkx2M3RQZnhhWVBlUFwvbk91cFVMU1RVYWdFZzdDRnc0NVJIQ2lUN203bmpFZVwvOVlYOXJldWxia1hHYmhNblRSenlpMFVMVXFcL1RFY01FaWNUQkJcL215dThvSUxQV2pZZXJDdzNVNTZMcmZWNWl1RlA5Zm1xZFlEXC9acUFhV2xRZFMwVDB4bnlrOVpzaEoxWUxlR1BmZ3B0QVwvaEtyMDZ4ZXpoODZyWGVcL2xDUFlzR3MxQ0VGTThKM1VBQXgwZEg5ZGxUVzhvcG9sMlpTXC8xbXF6emVTamhqMGtXZytBVG1hQ0dISWw5TTc1OG9zTDdYUVhKUFhpY05MNTg3VFNnSjJ4azNuUFhxTUIybTJXYnNoVENVT3grZlkxa1J0bjBLdVZGQldPXC9FTEl3Mzc4TE5neDhNYkhJWXV2XC9PVktLd1RTUWhPSW9ySjVTejVRZCtlVFZmT1ZBUkpuajJIV2dcL2F0cjY4cXlIeEEzKzlZYmJZeG9laW1TZTJuZzRyVCtyXC9cL2g3TVdScHNLUFQrUVVxTVlkRk5JTDdKZXFqM0NYSmlIMis2ZHJHTHpWblRNZ0JLaTBQZDBZUElWeVR3QVI1Mlh4VWJKY1l6eUpITDJKRkJuN2s1b1FNRkkxSjFPUXdDZ1lHUVJPeGt3QmNoeGVsMVBXVEZkWW1tU2NicXBka1R4RGRJcEJcLzJDQ3ZFU1pXNWJcL3g4NlZVZVJuSks4bFE5bzlFZndMUE9IUDlhb3BJRXplR2oyR3JEWnppMVVaeEhJWWlIMThsWUphQXhpRFNcL3lWY3FjWTNtWDhoNkNFXC9POFpsTnFKcG1xdG84MzJkQmJTSk5DUk1NOWJIVGpUZEtmRHBzZ0Q3Skg1MEZpbml4Z0dvU2Fhbjd6bzlyQyt5UkhrdEljWGhtcmlNdDl3c01LK21BNHNmSmZkWEQxRHo5Zk9va2NiTEhNOWNvSVZGWTBDaytsNW03VVJXempBOVc2SU4yUVpVU0RhUjE3NE0zdnZxOEw2cytmU2t5YVp5eVFDQ1wvc0Qwa20wQWtuanlwOFlsQjZ5Yng0ckFFVGI4a1FYOWFaZ0ZWcVZMeERmaGY1bWpDblBOd0w5dXpscWlSbzA2K1JvdDdWRGVIMjNpSWRINGVEaDdSMnVHQWFBbzdKem1FMkgxRkRcL3VSdGhuNWFFaWlHeEdZKzFRWjMwcURQdzdpdDZYRGM0aTFUbFVkY2V5OUlkZ083YWo5Y0xmakhDUlg5M1V2cG5HZTIzVE9qRFlWZUJMYWpzS0gzanVJMWI2ZkluYkpOTmtoYlBlcFhWWE9MS2FDRlwvUVNZNHlnRkVNXC9SMFwvWmFNcjhtNDFUeHZsc3hLNHkrcVdFR0k3QmFHdFJJZ2ZEVXRVcmxVZFh2RlwvekdnMEZwZnpBTGJucVR1bTUrcGlYNzdUR0hqM3JKV1BmNXZoVEhnNVwvUnRDRUdtb3Q1SEFHRThFQk5cL0lrUWVDKzF0YWk5M3VjZE1mYjJaMUNCQXB2WVBFb3B3MHdWOGF2b2ZDVjNkb2FmRjZtZlBJYmhaNlJJMFhZYmZiTjd0MVk0d1VkbFlsNHlGQk1RMk5KODhlV1lkRVlBemdYQlJqR1hkMDRveFVPeDk0cmFseVU2cUx1TlNRellGMjhzdHI0MFROXC9ieFdFdjRzaFF2R2R5OVQ0aDJ2SXhXdW9td0l4Z2VXWjA5RjFVREtDWURITTcyS256RlwvUmlsMWsrN1lyXC9CU0RYWnZpNUl4VFNWSk5vU29KXC9UUWpvaDRGZDhuam4xYXdUTkNpUklqYlFIaHcxVm9RXC9rWkpsXC9kWjE3elFTODJzNHphUFwvWGs0Y0hJYjlyWFl1M3FhNkZBeGpEczNvREpycXFUSEtMRWhuTkVyZkVNTFNnV2F1MmVublpHN0k5azJGQzFJdzcrU1JwWDZGU2JmeTVFXC9KMnMzckVTZ2liQll2bEVoU1VvaDJnNXpXT0d3K2FsM1cxUHR4OHliK1F2aTdzUTlxbHNpQlwvRUtUYkVnTXZcL3F3ZjR0bmVPWko1ajJ3eVFBR3BQRHRPNVhcL3k0Vlp4d0hKc2VpNTB3MWttTzdPc3Q2MnJBVndsZUxVa0xlSGVCTzNiS3Y2WDFTQnBNczB1VFBnSFJrb25SVU1USG1lZWpsd1ZyalwvZVk5cEdvVWkxQSs4eVF2N2hMOUdXUXdMOVVBTnRhVzhweXZtMFwvSGdySWF2S1wvWkRIOEdJWVI0bTFHbmF3RFo5WTI1SXd3eEx3WFhxc1FmTWdTeE5URWROZDE1RjJcL2FrOEk0WFkxemRsakl5QmswcFk2eUdYWDVxZGVvQVBSdjFPSDU5MnFmR1RJdTZyNk5NaEFsNStnUVAycXNHcVdvRUdoT29GdUVKelU0TWJjK1JDdWh6WnVHUGFuRXQyS3VnRk5RZzFkVnh3enlWN3QrVmZNNGVadHJsbWk5UlNyT0lqSkhaUWM5dDRPTDN5aVU3a2RZS1RMM1ByckR2MkdtbTVkMUgzTHFhWVRBRitFS0dGMDVwODJRalp6Q3ExaitMczNMMWVpZ1YxQ0MxK3d0VU8xV0ZBXC9kdStQQU1meWRObnJnK1VQMkhlZnM4RWZ0MHRET096RkYxOTRQbnhVdEVnMnBsZCtkK04rOWRRbFE3ck1Yd2d1UlFYeGx4bTBEOXM0SGJDXC9rQ2xoa1pPUVo2QmI2cVJvU1RPT0ZZWWJMOUhSaVM3ZTVVZmxvc0RQUlRiUXc5N3VNbFA4VE1TUG55RmZpK3c0TnZMSEdcL2JHVHdjZGxlUkRFUHFtTEJZb3ZMQ3NoeHFVQ1pCWTl1TXQwaEY5eUVkQWRaVXhjampBcFRJZjNCVzlHc0tjUW1mejhPQ1BSK3NKSXdzdmhBblVtMk9ScWxzUUNhT2tDN3RXRGp1Q0hRWWI5a3htM0UrXC9KV2poelE0REEzNTlsNmNTRW56Y3ZOcGo5dWhBdTdielZPbmFjaEFOK2hZN1ZrODY3VDZXSUx3NktvWExlMVNRV1VvOGo0WDFGNmdGYWI0cW1KVmV5YStpVHhubVBQeW1qQk1kN2NJZFJMRElrUE5JdnErZ05seFluVmh2UmFGQ1pXYUdVZ20zTmJlS2hQK09Md1BmTUNuaFBoSEVcL3pXOTVLNGErTkwzTDdTdEJqUmYrd0RINnUwdzIxUFZTWVZ4OUtqQTFzOHkyZzNSUmVPb2JJbE5OUlVTVHMxT3BYcTZOVkJRbE9xYjVmbFBjU0E1bDNFd2xGalVTcWUzTlwvZDdkUTJ6TUtJZlk0TlwvRUtjeHFcL0tkYU1udDVYbHM0UFhvblwvbkVkd1FoU2UxanE2OVV5MnVPMWNFc1VwS1JJNzlmTWx2MVhZOThlOWdPQm9ISjc4TzFqdEhqMVpRSjVxQ2FrSzZRUXlsQ20rRXBLK0phWTIzc1FJZmp1MkxGRTZNYlJaWVFzXC9maUI3KzJ0QWFTRTVXV1Z5QkVZSm5jUG5cL3puWUJ1c0R6c1UzRlRVTk13MERvV1R4aGo5czIrZFc2Und6Y2NGNWJlZlN4dUtmN1dsdjRyVzVsSFVBb0RvUmIzMEJPRWxqc0FHWFpTT3NYQ3lyOFFXa0gwZkFiWjBkQk1BTVhKcGlFYjFCR3VXcmJoeVZuajM5YTh5ZzFcLzNheTQ1NyszQkNWNFRCOUtlbUJad1BPKytmMk1Zcndzak5iYXFcL1l4d3dIOU4xb3M0VzJwKzcrM1RKUWZmRGxKXC9sRHRqZFZEZk1hRWZBcXBYQ2NrbVlNOXp4RUY4TnUydHRrR283TElFWkxNaVltbUxiOGE5elI4ZU5LS3ljVjU0NmZHUGFaT0RqK1RwYU9ZSEFJWkt4R2FEczBSVWtncVFQYkpCaHhINHdqblNqbldmMXJpbkxNcnhVS0QzdkpleDNlTEVYYTlzVWxETEVhOFRmemVVMXVHSU5EYXRGUTRjYytzSnN0NU5vXC9pZnJGcFM4bWVmWFhHdFgxejljejl0NDFwTytJVVh3OVpxd0lwRWZib2E5YXdUK3hURGRNUUhvZE5GTW14ZGhGaThnRUpXTDd5RFpLcG8xaUtPaWhXQTB4M0FOZGdZTWhEUW8rK1htVEJNOU5GTkdaUVB5Y2xIejVsNHQ2cFgyNG1YelMrcG9KcXZoenBuSzBHRWlZY2ZoK200QVlxd2RDQWVzZlwvbFI1XC82SWdVOGVEOGlUeWVXXC91UTZjMmp3Z2J4UWZkYmQrMWpYXC9hcllKYTlVS2Z6MlVxVllvV3QxWm1HMUlkYm1WY0VmV0ZnbVNUXC8ySHRybWIzT2UyRVZRTEVPSEwrNXY3bDVpQ3p0N2dWb29ocDFnUEttUHdLMTJHNWQrZm5nclNUb1NYeXNvQ2VDSDkrN1hoZmh5YmcxeFRoZVRsaGJlOElRYnhjVVBhcUxPem91QlZITnZmbFh3dlJTR2FPRTFcL1dGUVwvTzBZU2JMNGJpR1loN3pDNk1XcWcwVDgxXC9CNFo1QzhVb2pCQjAzbXJraFhRNEJJcVJjbmkxeWtpc2xRK29JUmhrQWJNR1N5am1LUGxNTHdHV3pLczYyckRVS0dENjc0UTZoTDBBaGFEc3F2dlYzVXhEeU50QU9PeGZ5S0pFYk9GTVlCbTRwRm5RN0dkeE54NTdMWENiT1RFVSs4clNEaGEzejFLVFlBSkZlU21QVEN2d1B0c29qaE8yWndCRGxUaGI5VzhxdFlFdnRBQk1DYTI5dUtSRDdZV0s0Qm9cL0lMazRNOUc4OFdueFl1STBvNElpZ0U2b3ptWFJ1b2NzeGdMK1lwTThVdWdkVjZiVCtPNlF2TlZTY1RlYUFjeERCQVlqTkVKTTZqSHZSYnc1S0k5Y1ZiZ1JkTEk0c0ZaSlNiTUU4TWswMitzRVwvUmxRZDRHMzk1WTAwQm5GazZsaUZFcEZ4NUdiUzM2YWtKU2N6K1dTUjVBMldidW1FNzMxSDN5OGVyVXg5d2RpWGE5Q21yeE1yUkxxM2ZOdHcxd1hRNDY0a2liZ3VLYlVVQ0NuN1VNSFwvZEZ2Sm5MRW9RcllFa1k5cjN2V2tBREV0VElhZ3Y1dkFHNDlzRW03V25TNUUxeExRTENJMmtYM0F1bFwvTkswaEF5OFZ3SnlCbSs1UlBXK3cyNGRUN0R3dGRMQXJSQW1iU2tTMU5uQmxSczRUR0N5ZzhmUnZsUnVma3JWTDVBYXR1c0hmelN4NEJKVUZUdGZydFwvRCtrMzJORk1oNmdkKzQreSsrXC93dUdhRENxdDRZa2prdEdscDdkK2dcL0dEN3JlSVhcL2pCbW9zZzFWdnhIXC9HMHRGRTQwY1dFY0ROYk9razNRbEt1Zk5DdjE3Zm5TYjl0bWQ0SzBvZWQ5c05iMTRoZkgwakxYUTdcLzNYSCt1eTYxU1wvYjZRVlBRQkJpXC83S0ltT2JUNlwvXC91dTRXajAwUE9tTkFBM0w0ZVlKeTZteGNTZjFhaGJMMFdScHlMZDhsZ0VLaUhzK0FQZnBcL0pDV05nUStTanlYMHRzRVZVeW9Gdmtvb1FNTFBzR1VFNzJBK3FiK05zNE91QzdtSWh2aHJ4SDB6cWZsNTRHdlVQbExlVys5NTFwNnFYd05ZUG1cL2t5TGwwVGk4TGgxRlVkZitwV2pxa1M1RTAzTnFFS3NKV2dhXC9OcUVaNFVMMjMyeHFNdlpac1ErMnJUcjMwQnRDTktLZUV6bnBYdVwvQkdkZEp4ckpMVE5FMkNZODREdWRhV0JkQ1BTZDhNT3REZmNRRjMxbEZWSXA1amFyc0JveVdvbEVvbzVldTBJbTBjZmVEVStMU3U3RTJKOE5WbWpWMWxONUR4a0FqZ20yZzZENllSQU03cXd4ckUyd0pSdVwvbU0zWFRqeDRGRnp1M0ZORzI2ZmxxXC9ka05DUCt3NmpnK2lVN1EwMG5LMER2NTZOblVLSTh5Y3gxdlhKRDQrR3hrY0liY0puRTg3TnJJODlESU8xcWhCYXc0TDNFcXQrZjdCS082OU9GRkFoQ3VpaDRUOUoxcmkzMHd1bzl2RjE3emVCQ0I1NDlhR0lmc0FwNlJOUzd5aG5oM1RcL0NpdkQxY1czaDlpQ2JGM3h4dHJMMXVPRXNUVHV0cmFtY0w0N0NVcXJSajI4d2pvdmpIY2E3aXdFXC9zem9DaitZSkFzaCtFZjd4XC9BcnJoZ1dZeGdHOE80S0xUWHFcL0FUY2ZKeEpQYmh2Z20wQjNoXC9UVkdzdkR6VkdSb2o2dkdjYW5XaXAzMnROWkhJamFWaTlockxnVnk3SXpcL05GWDY3TzNsdU5BUXE3aWY4UDBmM0hIQnVuNStyYnphQU93RFAwZDM1ZnZqMVFyUXhIT2JBQTVzQ2JZeWM0akQ0RFphT0JETFpCRGVGaGhWaDA2R2x5Qm9ncE5PMVplMkFBKytlXC9TQ2xFTWNKeFhQenBkRW5ueEJFdG1pVGZXcXA2VjVzZTNcL3dQOUkreUk0Qm1kYlhVNGxDNUdIS2FtM1dnSjFIT3BYb3VlWERCblRwdGIyd0xEd0dqc2pkd25pVWg1SDV5bHJiTVpJaStnV1MyUUlOSncwNGFFRmFCT0h2bW1TRHZHSGx3THhxcVAwcFBsdDhiaEw4WXgzdWc3eklNRzRCenk0TlVWY2UyaFdJTU1XNlhrYjAyZHM0bytLalwvQkJnbWJTQ3I3SnRMU1wva01UNjdLbEQrM2ZZVDloWnZ3aXJrRXUxKys4RDMwS1hTWVIrOTFNV21LeGZwVVpWcFdURVwvcEVcL1lpM2lQdFhEWWZHbEtURzh0clwvZ2hcL1E4YmdCS1dFVGtNeUZrSzltZXY5eGNsajVrZVVIdTlhNW5ycTlNenVsTGlQNmtSU013SWx1TXo1UVp2SFNBSVRicDFBb2hHUWdCRTFtc0xwejhrQXdTSm55SjhtNGczRHl2WHNiS1FMSnFOdzUzSE9hU01yKzN5M1RVakdaTzc4R2JpeXk0WVBKSDVFZ3RXcWpVdG1JaDh6bVkwc1o4NGxwUW43bVdPMmtUbFhTR2ZtcWRJXC9UR0RTeUswWlFaWTBFcjFsaktxdnllZStOdmhnY1JkVzIrVXlrcTg3eXZ1R3NCSDQ5cnNGazNQQ0dPV2l5R2x3ZjZhQllOZzNEdWgwUXk1NFlzNmRWdk9PVjVMaXh3eVM1Zzh2dTRzN1Roc2owd09BTHZUdkptSkJZMWJnQm9wWUNGbXpEUHJidnRPTDF1d2owVndjRmh4alcyWjZ5TnhJbzhuVDU1SkRQWU5CMWE4ZkxaRTNwMmtsbFpTTHl6bmxoQ0xTR1NBeHlmVmY3SzFqMUw1N0hiUFRtVXNuRXhaUVFJajY3bzBVXC9QWlwvOE1UdHpsUjhGY3RicFQ0R2doYzRkU3JiXC81dEVtS1ZOcnlsWkRyNTdnS2dRQ3NaeEh5MDM5WkVYK0VHYXlKS2RSazh1YnlOOXFFQ2sxWVVteWhrY2dLb3hUZWZJQzNHc0k4SjZKQjJ6dG5Bb2xLRkxkd0VcL0hmRDJsUm01d3Iyd2FLbFBxWXBBMEhcL2xxR1hrMFZBUTJnXC8xbjJHQXRTMzVMZ3VkaVBVa1JRMWV3eCtUcGMxSlI4c1Z0dW9QNitKTGpoUllKdzdvWlVvSDJRNnFMZzdZMEtGc1hZVFpyYWdVSnpHZW9cL1NWZFA5UVdEbFVUc0plZERzd1FmZXpidStRYmhoTmtEXC9xcFFUanQ0b2o0eVFqV0dGU1ZDczRvNHlhSEpcLzRBdytscnZGdHF1UmJ5ZFhMakZOK3BLOVp5ams1aFJzZXVFa3hUZlM5dEtEQUFMY2RwbUxUaEx3d1BicndsWUE4U08wRUNnSUwrUW4zN3dVTkFjZ09DXC9ZSnJBXC9nQ1hlVE5XbHhhOGt0M1owc0ZDMGtPK3hkOUxFalN1MEhEMXBLM3N4Rjc3a3ZFNHRQVkJNXC84dVpuWUxOZVpcL1VkaEQ3aitlK0ZMR3oyQTdGR0dBd3RqXC8zSFVpTzN5TWVUUkE5SjU5eEJtYjFzXC9vNzdnNG9SS3djT0FwaTdXbGVaMFg5S3R5djRKXC9iWWsweDVPMzZCSlwvaVhRQ2RRemVHWmVDS1Z2VVJHZ0xhd0NzSlFVXC9PTXpkUnM2ZVBhR1phdE5cL252Rk9BYUViYVwvbnFEVmRqKzRuSU96NWVLXC9sWXNRaCtncG83UTRlYUU5c1dDZ2Nha1JqMUdoMk9VaWNKbGhwbnVDOGJ3OWQ2eDlpRFExZDdONjR4TnF6S05oemlZcFZvbytBeHFQbjBLY01POVFycElsR2xZQU1FOFNCU2ZTZ0VHVUNyaVwvWmE3cWxwckFYUVZXazE5V1VnelRvRXdHREZuM0xCdHd0R2ErRFBnTWRmKzVKeUFMRmRYaWFrZ0JkYTAwSDVnSlROcmN4N3RCNHAwb3VzcUFpQWVhOTBIWnJTMGMraEt6blJGeFpVeExXV3NtUktZTndLQXQyWWVyY1ZOaDE2NXVSODgwTnVKdGc1U05iT2t0TVdVSmFrUFRDZGtNTmFEZFJSWUpSbHExWU9YVkV5NmVyT2V4ZDFJVzhPNXpSbFFiSnFZcW1BbkF1S2tyeUlUZzhzMFpBeTM3NUI3cWxnQUJUMlhsXC9JQkF0aTY5cTJjVlJcL2VzM0ViVFFXREpPRmx3T2ZvMWVCUzBxb0NXcHE1QjJDUWM4eVF6WmVOQjNFQWxNU1dlckZxTXRGT2NMd1p4WFFwb2xKaWVjcnBRQzVRSElFbzNOa3M3V052aGRoK1JHK21GSElZenpHK2l4QkpZVHRHdmx2SXVHVjVPaEN0REFENVVIN29sT3BsM2RmSnNyYnBFS0FHeGFtS3Y5VHJyUTExZ2paV2hIa1FDdFZVeWZLUnpUSEh3dW91aGl6V0hrakYzQzRnaDd1ajdNQmgwS3Z6Y05vRGRsK0hSUUpjdEhYRVdhczdDcFB4OG1uNkVnNHMxTldzcVpoNXMzaHdmQlJxeEs0VHJkYWhkSEJ0RmVMclVcL1lIaDZzZVh4UUNjbUErQXBEblZWYnpERzJVald3eHNKQ2orWGd4c0l2MWRXNFBDWTdLaHpWSkkzSmgwWldTMk8zaUo2THV0bW9oODVBSFdqaitNM3JSUEdieHIyTjdCamFQOWh6TXYrbTNYSXlvT3BRaGVBdWZSZUFcL1BcL0xZeEs3U05DS2dNVDIzWlAyeEo1NVdvaGhUUWQrbUEzNEZpOVlNSG1wTFwvXC9jQjlhSGtwNmM0eXA4azhpS3NVckhObnlEbGYrVXhjbmE0YzRoVWFUZzRTM3dPenlaSHlCaU9DN2tcL1l3TTgrUU4wbHNqcHVlUjU1c0FIXC84Nm9ocmlaWlRsd1wvaElcL3loTFwveGJ6ZW1pS1o5cklKVXJcL1wvVGc4OXlIYjQ3WXI3VFpZeVZqeWhKaVZYeFZRNks2c1hRZXNGeVpkK0U3ODhDZGNcL0laMHdOQlZTd3I1NDdMZFdtcDM0V2gwb0FDaVJDM29XZkltV01iQngxQlpjXC9PeENQRUJJVDViSVlIbzZBZGhMSWFZRDZJTnZcL0J1NU94djZ4UmVTOUpRY0o1bFFweGlOckY3ZU54V0l4Ykc5RXlqbEoySnNOSWVQQkxVdVRjcUppVUJtdjJMV255Q3RnbVRIZzhIQ2VQTHF1SVFWOG5EVHRQcTFSRVVMXC9RamRFMzhcL0F3aTVxZEZka3p1WHM5NFBnNWJ6VDZHMVFYanM4S1A2WGxBXC9JMFl4SVwvd0FZSDh6Um1IUDV1VWdYS1V3K3Zqa0hPWjB1ZnZFMkdWUjV0QnJXVmw4cEdcL2dkZmpVK2tNMFhEOXdkZmNcL2JBVHlNSXVYR0lzVDYzSFNwT3I3dFNTZWlLWFdDVWprOVFFSmJyRFNROHZ3dnduSkJxSDlRbUpZeng5SGZ6SW9sYlN3VGJDT2t3eWlyU0kyVlRyaHUrWUduZTBUM0xCNFRONERTVjFNN09ybk1Nc2pIYWxIRTlJVXJrUHNFWmJhSkpZSzQrOEdsTEhlb3lRR3NTNVpnV3FMWFNMYzdLVG1YWmRySVRtZ1dnVUNWUFhEVG00TGdIMjJ1ZCtOMXZDdUpIT3h4cE1GUHJlU2h3aVBlNFBHcFlBaldxVjdkcWUxcnBHQnlvOVMwbkdVTVlkaEF0ek56OTM2WFY5Sk05M0JzQ1d6VkhTQTdnYXhJQlZFeDB6SkVOcE5xTWdhdWF2YXI5UlVlZHg3Qk01MUc5blIwbVB2Z3pVWEFBTnkwTG90aVdQa2dCVEJUSUlnSWZmM1RGMjgwRlwvSEZBb0ptNCtwNnN5UnRqZTI1NlQ5aG9wM2NnVEJhUTZGeTJ3bGtDMyt3NzlCNDFnQjdDdEtUbFwvOXBTcGE4emlYbVJVRmdRcEhiMDJ6YWpVd245QUtaWXhXVVFqcnJTVHhmYlBnVHhBOE5lVlplVWdHQitXOWE1TGhhN2hCQUhwVDYyY0QzOStGTCtJSXpzdXNjODU0VElcL2VkN290UDc1OXlBb3c0c1ZRZGlBVlc3SnhWWGxWTGpjXC9tTmVxQVd5cHlxQTM5WXUzWTVxVis3WEJiQ2lCNlUxWXVnZlBUbmtZeWt5dTdrc1BMN0p0VENGelNpQjRrTVBXM1FwcUdHRitWTFJ1bmZVYisrRVNJUVQ5YkhPa1dMOTFLMkVUWlA3WEs2em9vbjV5U3ZpQmlyVkdcLzkya3RRb3lLYjY1TnZvdWVNbVdUOVRXbmtjSjJwNWw2c0hNZU83TVFpXC9sK3lxN1poaVN2OVlPdVFmdktDXC8zWkdmN3h6dEFwVU1TeWErTmNkc1lYKzFsSHAxb1RFdG5wZnU0WVd5MlhNaEk3Wk0xMndseW85WGJVQ2RKblRYbmRiZE9FZis3U2YrK0ZuSXJDRmVkM2lrR2MxelU2bGczVzJqdEpDVk51TXAzekhXamFlWjRVYUVacXdKd2JldVd1UWp5VjNlZVwvaExTNWd5THBmUnAwemdUZ0ViSExlRXowc2Z6MDlaVnVPd3M3bTJRREE3aUIwa2lKMCtQbytxVU9DS1VVWnd0eHBCK2Z3THVjWTNvVEEyUmVFaWE2OFMzNVQ1cUd2bEthQ0o3cW1KanJYbEdOS05BMlZCalJaSnJjb1RTeGRaWDl5ZDZ3Z0lUNnI3ZVgrWFRaVEVBY2hwRDNxWDJ2RlE0ckJock5UVzlTM1FCRDMwYkI2cFpVNGZNK2FrQTBhRmZrXC9ibTZHVFhVWVdIck1iYmxxaEhqbXhXTDJ3a1wvUmxkZGRzVXdCWHVDTEk5UXU0VEhkVGNuVTRvaVlOT3VyQUU1S1RQSUNQa0h2UFdhcEtjcW9FSDVzaDZNalVaRU1NVlpqUlJkQkM1VzVlQ3I1RkROQ0xsSzJVdTNWbVlEZk9tR3BXYTFOSDlKa3MzVnNLVnRaZXhTUnBTcjBaSFZHWkZxRFNHbVpnck1EeTQ4SnRzTWxOOXZqc3kxXC9ZVFwvbkJjdzVITSsxOW4yalVQTG1MUmRYWXlTUFRjY24xVjA5S2xyN2h5QUF1SmJSZ0xYUm5oMmIyemtvUERPdGZ5K2w4bVdCc2Vzcmd0dWt2eHZHaTdPSHI0MGJwb1UxYVJicFdlZUlNQTVINExlVTc2V1wvMUMzUHZDdndWSEpUNWpSYUpacVwvcEk0R1htTjBsQlczanFVaWlGVzNNSFRiOTZtSDljVWhkM2VTK3B2N0QrTk93RlhVMGFQTDZRYkxKVUFsNlVITm1VTVcxWlE0N2wyeW9JMkRtS2pNenRnc1U4NnRwU3NjQW1yOG1TQmc3STJUSTlMYUNTTWlaMFlIUFFUcDJ4S1wvUjgrb2pPR1dJeDkyVUVPS0l0eGxDRWFEaGRWdGlqdXFWTFN4N2dnM0p4UzRka1hWY2NJT1ZOdHdkV3p2ek9XOHVDTEpPbnhNQnFqR3llU3lyWThaQ0hoWUo3USszaWErRUtiT1IxN0lSbEFpUlE1NklJZlZocEU5NFFQWDBvSWdUdGNGMU5ZVFl3RDBqd0FiNE55QTdvc3RDXC92eXBuOEhiZm9mQml0MlwvRmFMQWNmVXJPYk9HVFZIN2FOMWRwbFwvRkp6ZkU0K3RoTTRXd2x2RmVFS054aExaVGtuUnNWUXdUM0tLNjN6Vm1vbWo4UGJSaEZLUGhxYzkxTmJGaTYyaitqUmE0UU9tUEJrQWxRSUVwSGJZV01WbWF5WmdEdEdqY1YyeXk1TWw3QmFUWUlkQTNrMnF3XC85eUhadDRpYUtTTTJkT2xFMWpGRDNObEYzTTlralV4R3N5Z1V3WHJ0RERRcEluVk9GbXdwVk1XcTdRM2xWUVlibkJvb1NHaTNQeUI4YzhtaVdRclpoVW5cL2Rhd0Z4NkJIeFhJTHJHSWljTzNrQUJkRlZKNEdHUVlOM2xodUh1OHNja204eG12cWhPbjBRaUlcL0R6OTR1cTBsc3czbnhOSFQyalhLbjdISlJQSXhEeDBjekliNUlHOEhhcmFBa2ZMNUNQZVlFM1d0ZDNVbDhsWTNhclFrOEFtVGNUU0dSZFNOT2pFN1FkVGtvdVljcCtMb2ZNc0M0NlZ2TVwvQjl6ZHlkdzc2NTVHclh6Um9jRFlJUEdRNVFCeURDNnJoamtFTkZOcTJBN0VOV256dTBDZEs5Sysxc2RTS3RTVXd6emxwZ05cL2IxVkV1QmhHQXBGbTFhMCtNVU5EWnl2RWlOMFNUSVJcL3JoRWZlQ2d2NklpWnp3NnhjVGw2c3hzeFhYd0xFTGFIdzVhVWVqbm4rUjBDMitaQ0dVUFM1aHN3S1pxb1FWcGd1Zk1Iak43Z2s1dU5XaVk0dGUya1wvZEkySUFNY3lDb2Z6Wk8zVU1IWFZ5OGkyNngzaUtETGtaVElGc2NocHJcL2N4TDBGYTZvWm9XajJjRDNycHNhTjAyckk3QVZrWHJxdmJieVh2Zm5iYkNlZ1JoWmZMM3lLUW1xTXlmUkhGU20wdXpMbFhoWjZDSW5UMlY5RG1YWUtmWk0yZEdwdkdkWHhzdE9vSnZuOW9OSXA5WURnR1ozR2JLMUZORVRKVzhqT3JlamFMNXpsZ3RQMGpKcFhkSzdyWjhvdWd3VkhONE92Y1R3WFVrZGR5NlpyNW5nejArTjh0VisweXhTMUVUSFUyMGN6UUFxTERPOVZWbVNzcEQzZGlTY3l4bkZ6THdMR0srMkUxK2M2M2RDeWxEYUdGYWFMZnVacHUwMkJEdU1FMGo0aUVUOThCclY2cGJWNkZkXC9DMCtzanpVbmxGSzNESEpLYlgyUE81UXJGOWp4eVpHbGVuSThXbUtNZU94VlBnRkNVTm5xakQ3REJ3WTNxRTZ5XC9UY1JnNXhmeFZONXExT3pcL3BvRmxEWmhVbjk4ZTJiRHl0SHhtemFcL1JVWU5MK1ZucFNRZEo2aXNTdFAweElnVk9PR1gxWmNoXC9rdkRyaVBZUkdFVHNSUGozMVdQaWhVTzZLVTFIUHlzNHo5VXBlVWgrUnBRVGhcL3JPQWxXekRDV3piOTVcL3dYblZWODZIamFaMXF4MEN5MWJRSDJ2eU5BSFFvSmwrWDVaVGYwRmU3OTlER3ptREo0UlJZYjhrWnJYY2pvc0pIUFRVaFZMeG9oOHp5bEZYK3FpMzdyaTFvOE9lMGVUeUx1b3NlNjM3VnF3RXF3YUtPaHRVOEhreVRFQU8wbnhcL2pZU0RiZW9OU29wNlE1ZHltMXN2cmU3eXFRQlQxQWJLM3hhQWJqY2pDbDNveXIzUTgrY1FQVVBFRUxuc1M4TVg4RDBkaGNXQWEwVmR6dU0rdGVPRGI0ZG5yMWJDS3hSbSs2WFh4RERXVEcxTWN0Rm5VUkJPYm1YcWZwc1NOVHNFNkZ4alZpVUZEUWg4dUxKcEVJbEZEcGlUcUI1dE9icmJaNlN2cGxMTEdKZWVFd2FCV29ZOU5MZmtaM2haWlFtRXRONFlxaGU0MGdhOXFBbU9Od0dhUTk5QTlSTmNER0RCZEhXYnc2bVpHdlVURkFicnJ1UUkrK01nRFBiVU5JTlFkWVk3bElzSE5BYU5EclFvMmRta2w3RGk4WERGQlpXMlJhV1VTNWlOQnNoOFI2bFlkVkx4WFQ4NUVTOXpXSWFTRnlVZXpUcEY4bzZcL1Jma2NReVBkOWttUWRhVTlxYmxoUzNEbXBvSXRxV3lGazA5Q0k3UEFjYnVtMXgrOGRaSG5qM3JBNzNtTmhYSWxTaHJ1WU1QQ1wvSDBwa2NKTWg2OHNhVHh5UmZxdGJYQ1BvNG1MSXpzY0FQWENyZkpkelpMZ0JSeHJRTG05OWpmZnBHUVZBdmNrbDJ1S0RoYndoWHg2YzVPYjdlbkVCMDdQXC9rZnhOd3MzaEhjeTlTNUc5RHEyUE9KVXNENVNRTFZiNUF1NTRRVklJRTVKbjdBY3hCUE1jckJ0S1hpRTMyYmxwYmZnY0FwMlorRTRFcTE5U0hjdlZ6ajBGVmltdThFd0lJbXpcL0kwZHArTmxIS3hRS0l5eE9CR0thSmtxWFc5ZG83V0ZyT25PTU1rb29MTEhERHdDOUZVb1ZhRWFKbEphbmlZQ1BuMXU2M2RpMkhxa3RoV21YdGpQaVF3WStWcEhYUFNVREhnRlRCNlwvMmpBY3g1R3F5TGtUVkFCRzdXbGFYQWduNkJkM0hMOEptSEs4VkZOY2lraElRUmJiQWVZNXRMVWo3Z2R3RjAweW9qWFZTVlJjSzdGMWhCZ1hZNytCY0ZyeFZxbmhERGQ2NkkwNWtjbmN2M0dtbE5ObUMxMlpZeFBJSWdxNlc0MWpoK1pIRXluYUhwaE1neDRseWRcL01SSEE1QjdwRm5nemx5d1BqTktyVkR4cnRjVzljeld3TE5hVlZNTlFnaTJoZzlHWFpLWk1lb284V2hyaWd1SWMzczB5eEtuT3g0ODZSQnkraTYweThyWnBXeUQ0V0l4TnFkR0tEU0d5S2VGenZTY3BIOHNnYnRtdHVBWGRnWmtZaFwvXC9WSjZLbGZVTHVKXC9hd09OTFZuMUo2M2FRU3Q4MXRvYVNrZEpPTG94VzhGanRUemtaeEI3M3hLaHpzR3NuUXFUanE3UXdcL2J6RG5oeWhlajlQYWF5ZEo1WmxBZGRWVGVxenVVTGtVTGI3ZU1XNjBUM3c3MGxSQVFISFJhV0Q1TzV2MVljRWF6SldhaUREUWdGcitwSHd2dXRXWHRlYnNmbHZYaklJMXYyN3JkZUQzM3d3N0tiTnlOWnpoXC9zd2xYRG1vbWV4MVFPMWxESWlhdG9nUGhOWk1jTVZJVFZDQmVYYVVRbnZZR1J1UVwvd2ZiM3JvRm1oQnZpNzluV2ttNXBGZXJtczl5eWtOYkk3UGlZZEgxY2Z1SDVQd2JNakl6b3R4UElHUVlnU2xmcWJVUXZ4dkdaajZkWldMSEp2d25TSTBJOHM1TGVzWG9IUVJGbFlcLzY5YVlWUkRHRXBlbUhPUU92VDVmOHA4ZzJzdVBYcWdkTnpJT1wvRFwvZmRiOENtZzl1cnNzcVpTXC9iQ25uYUxDdUFTbjRxQmI2U055eStnTndHMU42azBKdFE5QjBWRXZTQlo1dVN6d1wvZ3IrMXJcL05MTjhNalJSMEZuNTM1aGo1TFFJS1pRMVdwVUFnWk5rY3M1MExoUVNSazVmcnlhR2F2SXRLQjBcL0taY092MG9tNmpZcU9HK3hmdzU1TzJUa2l5TVZRSHBjSEN0blBCcWhyVUNuSkNHaGFrZXNVRjhcL2piQjFWaHlZcFR3OG9GYjNCYkh0YnNCOXozUXU5XC9ObEtRR0ExQjVwOUlYSU1qbGxhaEpLXC81TjBLUFZBV1wvNHNIcm5SK0R0czdieExzenRvWFZOWldtOStKQXJKRTBONWxZREI3UjY5dmZ5MCtuZVhMYkg0ZUxuYWRrY2dSaXNhNGVBaTBLZnM0bktjOGxYTk96M1cwanViOXltZXZEVzdwOEx1dXVMYUJSZjlOQ1pYdzkraG9ZR3pQQjI4SEFYZmJ0aFZxZW1vTXFiYTM5OVY2VTBjR2pqRzJwM2NzYVRUdGhKNnBYcHJ5SUU4azRRR3p3dmlUb0tHVXYxemdFUm96dnlCRWRzb0ZuRWNLQzdvQ09RcWxBRU15ZXg0cnNUWUtZNTdYNU54eUFiSUl6V1lvU0dJQjBxMVc2c0lucFwvOE1wbmdsQXFSRnIxU1RnaE4ybVNnVFNcL0t3UmxmWFpQYnVPTE5YVUVUeXdHTlhuZ1paNG1ycHVIdzFJcUlMaTlpb0tqck96dVVPZ080OFIxMk53dmx4ZnVnVlI2ZmlCSlBcL0cyaW1kbWszcUk2OTg5VVlUQVdkWTJGcTdjSG42d2llMllxaWIxSDlZMjdGY3VuUVh4Z0VwYjBBUGNDalRqTXRuMzF5OXBhcmR6WlB6M3dSaEpkdXA5U0s4KzhDaVMzM21wZTc5eGxSOEx6VFBHSGxJTkk1cXZ6ajhPMDFRRUR0XC9id0d0VlJncVZjZURqRVJlZXZLakhOT2hvUWpkY1ZOazRuWXdUSkp3VUxaWDQxNWxWQ0Z6cVVHTzNrcEd5cWNWWTlOeGw3UlwvOEZaeFlKNVk3Wnl4SWgxU2piU1wvS1pHNGdnSE5iNHhqNFNyRVVFR0VWc3p2a0wyY2ZLSTlXNThJeWp4cTNyM0pTaFRpVU5mazZKR1haamo5K1ZTbUJIZFZrbkwxOHJOYjVERnVrZ1FOVit5U3phTnRIVVp6QStRQVZrZVBNd3FPZUxjNTNQekpkU25qXC9UZkZYSVlFVUJ6aGM3TjhDUVwvS1VcL3prQzFHTmtpNUNVYWxaOWx6SDF1aGlWQUJpb2ZOZXdwSXpiNlVrVlZJb0pxZ3RjNjdHRGRIZHh5aDhaMUJhVnpHXC85cnF1M1RzeUZJMEdGUjZ2S3dwWVFuZG5yUTREdVlydmQ0VDRCVmROWkVrOVNkWjlyRzB1cFBFcENrNDdDTHBReXdMbUY5MTViTFVaTE1tRlZPQmQ5SVZNXC9aMU00c1Z2aG1jNTVOTDhNT0hobE9DeUhXdkZ3K3VlbjdzRTl1SVN0SEk3RHVMVGJcLzdTQWczSUhwb0xnVnlRXC9RQ25xVUI2YThZVENtUzEwdmpiMkxpZ05OcXlneWdSZG1RRkloVzAwVHlHSTNCcDJ0S3h3OGdmYitSVEZuNk9tNkJVOU9IOSswSHg0UnBHN3pYZVh0elZocUI5VE9yXC92ZlR3WWdqUklSWFFrUHFsSnhBTFlZTFFJbDNZaHk4Z1F6eFVyYThpYmZYVmJhQzNkZmVOK0syUnBZYkIzXC9KckRNcTlqZldDczRNWEJiOEZUdVF2aENiRkZPS0xycXVweUNNN090ZHlIOThRXC9wcTQ5YVwvYzhodjdLNzFtandsbGRxN0RPaFQyQzFiV3lQeFF0XC9RN1JqQkVXS0NNcm5oRmRHYVZ5SENqaHVzNzFqS0o2TTZFdnB1aEVuKyttWnNyaGNBRzJOdVRPcjZtdm52cGFNTE5rZjR4ZCtCWkozNHp0YkhXcGcreXlXamQ2bDh2ZHh6dm5BUUhiNUNTU25qZERiOXBqaDkraXFBdkF5N1JKU05TQzRiTmxnK1ZHaVcyb3JPaGE0VmpEWnNaZitRRWM3OUl4YytBa3Z3UXdKd2ZqMlRZb0gyZGZZV3BPbFwvTWFCdCtUOHhXT1NxQjJxKzVMN1VmXC9QU01GRE5iTlBSQnNydzZqQ3NuXC9weGpJOXQrUlIzV1Q5SkdJekFNaFNuMGJJNmJ5a2x1a1RjUkN2XC9KREFydmswcXRhMmhuVk5oa1dcL0tvN3BOM3BQSVJvT0hRZ0x6ZTRQRmRoQktxeklQMUN6NkxhMkI5VEJnUmxtTEdsRjFaUklrMXVCMFU0d082WlJneldNeStlSkxRdFN0blNWZ01yamJyeEFRd2xsU2prSU5SWmdMcExvb1dTUkUwTUp0UmVPeExaaTB5cmtYck52U2ZDcEN1MVRnN2NKeGJsSkYra3luZlNNaHhIZUx1c240Tko1Rlk3TUNZZlBHMElnMkZBazlRWXF3ZmdQMktyQVNUczJ1SU00dzJJaGdnK2Z1bVUrTVwvNVdWSGxGZnA0bEc3TlU0S0duRnZnMFVTZFA4OFYzN0N6VUh3UlNwR3F0d3FMR215UmdPK0NjSjhGdnArODV3MG5MNXlNU1VZVnRqUmhHbXlBZDIwUWtBWFNnT0ZPKzdrc3dnR0FMNjdSbHFwRUYrY1paVmxTY3V2MnozSXhJbVNsbVN2RHUwcXkxbjl4akFTTVVwT2s5bit3RkNKekNWVHlIY3E2N0lvMlVLVGJwTmlPdzZjcURBV2ZQaEpIcDZlU3Z0N1J6cHIzRk5UZElHdFArM1Q1NXFyelh0U2doVEJYV0FHT1Izbnl0b1VQNzhrK1JpK0V2UTFxTmE5bWRHY2VWSFRBTHpydElLRHhoRjVhdXN4ZHl1dkZJRGZWNWt5SWxCKzlXTVJxZzNYQXYrOWdhc1hSRzVWQzk0eEM4ZTZNSXZLWXN1VUQyc3cxYTF3dXZ2cUEzd0g3Z2IxVFwvTG5HOWlJdHdZWG9haDV3clE1XC9tSVNzQXF0QnhjeTdvM1BTYVFTXC95eGhOVDdoeFkxUzBqRlkrY3U2MG9mbGxuRHYyVGZqZEMrSVk5U0syam1rU0pscDdndW94bHA1NFJhbW1DczBlOGZmNGM4MUpwdXpIR3JDMUlZM0JUQkV1bUQ3V3p1YStGVGdPalFuRkNENkFZTGNtZHpRNERsS2RldDN3NFlwbUt3MGRcL1wvZTlNTTQrQnJvbGVQSnpFa2kzMHFCSVpUMHBJWlwvXC9jb0FTaDBLT1lhN3hCV05MY0cwYUZZUUVUMEsxaG9tVmFraUhxZG9UVVlPY1VGS1V5SHpzYTl4SU1HVnhHSVg2a1ZSZGNFeFppTG5QcmE3MEplbXhyK3BYXC8yQnc5YTNwcEMzemFRVUtpcWxQamFUa1ppR3pSbkt2aGU0aEhcL0pjRkY3aGxUSzB2Q0FCS1UzMU41SE5DZ0JUTDVPNXN4YjJuY1lIUjg2clJ1dERzV2g0QmFlcENRMXpvYXBvSktTS0l0OTY0UkZmUjduWjNOejlqeVppb1wvSEFOS1JuU3dQVlY5cjMwT1lSTlFsRUh0cWFBNEpiQzQ5SDhkdHplNWFwcXRKXC9SUmVSV0RBNERTTTJrUGNaMmtQa1dldUJoN1RoNjVNSG12SVV2WHF5d3BWelRYWGRyZk1zdDNzWE9xQzFZRURBUmxNdUxpMWtqMnN6UHMwcjUrSlFFMHpSMDVuaDZjdlFZellSODZIc21FS3VqTUZHblYwTU9UdUVSMFh2ZVpzdXZVZEVaOGVEVTZnek5WK2xLQXRLWEJGQlUrNThDYTVRMHJHb3JkVkcrN1ZjTXR4SWUrdE1kR0pxeUtzbWdOQjhodFZTVjd4cGtvdENmUmVuVlN0KytQMWhnbmtxNWNPOVVGWXg4QU9kVlltWTlxSHJ2SGNzdWdpQk05Tm41SFdYYXdUTFd0dEE4dDJYdnFhMTdCWXZqV1FhYzhsZzcydHJneXlZVkw5WUdKYlwvRDZlUVliK09JQjN6dHV6WFA4V21OMUJDbklCRGVEaVhoS1V1eXNcL3JXZGlQcU9HUkYwaEg1OGNGTEpxM29vSSs4TDRKdnRMVzFuYWMyNGs5Y0xuV1wvTUhNRmZWVnZrcmk3N1JrQm5vSzk0XC8rdU12d2dwNkFQVlZuWjV2em9zTEJHNnh1Tm5QT2ZWUnRWRWk4WFNhbnl0aTBaM2pLNVo2Zlc2dkRXd2NOdnB1Z3E3WEF1U2U0OVhlWmVrdWl1alZHNWdhZW1EbjVRdzhyV2FGVE1GM0dNU1wvQnYwdnV4T2FDWTdobEsyRW5DZDZ0bEZNazZLblByMnJQQXlVWnEyYWhyYjZDQzNldlczZWVNeVJBN2hQSkVtZHRRVGlzSXFzc3Rsd0Vvb2ZKXC9CV2hpZnhcL2xFQWd5U1UrWHhiRE82YTBKN3dIY2xaRTk3cDMxWlJ3ZCtReGRoTVBjaWRQREJuSnoxcDFDU2RFbVVNRVJjcmtKN2xKNzNLK3hBekxRR2MwY001eFVxSUluazJ4d1dYV1ZBeEFDY1NFUUhXMGxIZE0yMnFQWW44c0xaVmZcL3dQK0JcL0xCOGNRY0FMXC85aWNLcVJFU1phSTh3ckhuZTZTeEhnK2hicDR1NWFcL0xGSk5PaTQzMmlaODAycklsRTdGNEJFaTM5WVpUZmMydko5dTYyS1V6WlVDZFliY1lIQ2p6WWJEK1ZxcWZGcmZzMyszUEpma0MrXC9nYlZsd2EzS0lDMjlRM0dzenpxbWZ1ajliWlg4QzM2ejN1M2prbUlJbHNDMW1FSFc2MkRldDdEUlwvd3VGTWxub3IwTTh5U3pUc0J3VWl6YTEza1JcL1pJWGE2TEh5VXcrb3JRbk9kYU9kQTRCMzdGdkNVMlRtbVZ3QVNncUh4dVpGdWlBVjNuYU9BNEd5YW5RNTQzUENGVE1NWjkxV2tDSzZnTU1BcCtmdjJJVGRQM1JOOGNLNHc0aFhTc2ZXaHhkRmVEMjc4VUNoblVLaGUrWFFLUisxdlVuQ3oyTHJWbzBmcmRCQXZJSlF5RmpQSVl4eW4zdnR0Mm9xc3lYQkJ3Z1I2QVFmOFV1XC9kTHZCRmgzcHdZem9jRGQ1MlwvXC9sb2hsWlV3VWVyUEZ1U2QzeStKYThGeE9YNEt4M05cL3lSZnhPWTE5V1Vpbmt4TzZqZGkwcHROWHA0SzNjb3k1VkNLWU1SXC9IQUxaREZiTmhCdGtzSTJDQzlpRUFkQmZmcjdZdGdZRFR4ZzYrRDF3SkNjcEVTZVBFR014XC90YVlwMUViYnUwcWxJZDNsTW1MXC9ldk1ON2Z2dWhsOUxZUGw5Zm8wQUlJYTQ0R2JWbVlwcm4wb204cjBLVWV5MDV0YTVWcFlVTWE0NUpzTEVZQ215R3NtTDNJYXBVdlcybW91S3hROWp6dzJLbHNMK3pEN3ZVdVg0UWxvU3ZjUnJNRUVVZ0NKTE5cL0hvZ2R0Zk1Sajg5NUM4S3o1TXI3Q1NZQVhkSDRcL2x5eXY5TVFHbFFzbmlBRFpiQnNNUkhlcmxSdkd5S0ZBbGtSXC9CdFZreVRWTGxtaGFnUVljMWIzOUxIbitHVGV4VkkraHQ1NVNnNzIrdjBRWjNRWStkZlkrRk92U2JYVnZJdFhtM2RZNDdkb2ttWnBLQU5VTkh4akt3WjhEbU1KUDlhVEVpbVVBQWVEZWJzNGpMdHR0UEZacHRzbVhKZmhsaGdBSkdmd3JBaVFLbkRsdWhnMytOMHk3S2gyNFJCXC9VcnFTbFVuVEpPM1BDZ04rMnR2MmVXOUxjUG5XYW9vR0Nka1dJbkZ3emdMaXlFY2VnUUIzbWh6Tm1TXC9OR00zRFY1ZU5uMHcyNUl4MFh0b0VVUktOdUdLaHIwcGFWSFdCUkpSMDA4RXpENGRBbmtHM2NmZldvQjBCZjZhbk5lS0VPbGFSQ0Fhb3Azd0RlRk8zYUd0d0xDUHh3clwvb3ZQYjdiWjVpY3ZNaEl4ZDIySlVcL0Jsb1YwTVRzV3pjNmRzbTZydVF3RVhVaE1ZV3UyZnUrNldNYVpmMnlhN2FEc1wvbFk5WEp3Rk5KWFRCZldZVXFKUEdRYXE5a1lBdVV2SlkybldLMmdyQUZxeDdcL2tYQ1dBeUdKc1V5UFwvVWdHUG1nXC9zMVwveHVGWnFWR0ptMjZ3ZFBBNTlLd215cmdFa3J5NEZZWndKWTRsdUU1cUxJRG92RElsR28wUnlidEg1SG1CYmFmVzhYRlNJNVJcLzdHQ21pYmJlVEkrXC9TalZtd2F3UlwvTlNoTklPRitUbVwvNUNcL2FBY2UzV0U5cU5GdDNCTWszTlwvaGtsWTd2aUVSQlV0a3pzU0ZROHJqWlJyWE82NllcL09EbW1wUFwvdGpsQmJLcHAwZm5zMEJ2UldseElaZHZQZXgxUWc2eVVZVFcwOE9WdUhRK2tJZGpibmRkWXdkTU41XC8xQ1QxQ2R4ZkF6dk9VOGFxbHpLZkNLMWNGMEFmc0YxaDg1XC9wZmN0b214Qlg0ZklkXC9Yalg5THdmcEtLMUtmRytNSCtzUEE5cDlJRGtucnBRMFBJeDVQOUxzUmdKUUtUQVZlNzdteHUydFhrSFFraFkwVnJZSGNIZlh3VGJjZGYzNTdwcUpLdzVJVTV3TjBoQWJRUFZTYktTZFBoQkM0VmdcL3prRXYyWUNcLzh3RWhWa1wvWmRHdGNmZUE0cFwvcVA1VkdTVStXK2QxVVZBcE9BNWM5ZndSc3o4dmFEVmRSR2s0UlozMHdKajdCOE9uSUl4MktNRGIzMGdnQkFQRlZCTHYwM0FlWHVRM0ZQVGlGdjRnOTBNWEpldm0xdWM5dUFnRjY4bFV0NDBsWm44OWVZOHdNM01JS2lSXC9CTnRFQTRSN3VZcnhnVFRYaktWeHhWRTZYZFgzd3MwOEV5d1BOWFdubWRzb2hTZ2V5S3BpM0w4MFFnZnhyZE90Tk1jY0Q5Y3paOEJZWUpRbThTYm9LbFBrR1orS0dDc0lIYjl2anZ6SDVYc09GREMrTVFqT3QxbDNXWmNLYmhDUU1CdEFFU2RqM1ZoSkxnVHZKSXBvQWdBMXp0bzZBbTR6b3NBWTF2UmNodENkejI5cGdYYkczOHhpcDBZM0xFcHNHM2J1UG5xNHdsRWFRbDVrMG1sbjcrWDZjZ3ZRQXFweXNvM3VucGFQV1o3VmNWY3ZDMXVVQ0FvdzJqaHlndVJcL0E3UkJuNzRrN3h0bEEycFdGSW9NXC9qOHdHd28wcVhrM29hejB1R0dSMEFEVzN6ZjlGckh3MHY3dmorekg2TEx2NFwvcDZiU3o5NHNob3h5d0VidVNyV3JURGJLdnlUV0pOUjJnbGc4YTQ2UUxcL0o3cUdkVXJIaHJIalo0Z0NnXC9tUlByZ2xIemlIaFA2ZlwvaEhPWmltQVRDbGVcLzNyWHFUS29cL3AxOFBZOU5RbzRaRGdZR1dSb0Q3YkxvdXJVYW9VZmh6SEUraUdrSDVDSG5sZGpYTGFtbUlxQjZMNUhCdFl0VGU3OVp6MWo2V2dyd1lodEFWcHI1aGNKbXlPRHl6MmVnd2FpUGQ2VGRTbTZQVGdob29xb3k5Z3l2OTl1SGJHSWxqQzVsNGxXRDRCV2E0cmRnUGp3aVJZZ2d2TWRDeHpTVCtPa0FRTUJiMDZtbDk4UlVTOStYRFVXQWM2QVwvcTJZR1BLc3ZobzJlalV5QkxtaTdETEs5djY4UktvWmwydmhpb0FmQm51QWU5REJranJWM3RxQ1ZndmFBOG5GbjdsMDJZVStNZUgwaFhEU2xUMlpQYW1OMURkNElKQWlYeHMyYWN2a2Y5Kzg2T2QwdVZNcHJTRVwvY0VKMG5jVmpYVHpWXC8yWk1Lbm1Sc1lUVVNKdWxDbjVaRTdhc1VUUjJZdHBZcHVLSng0U2IyWGR0bzhBUndBclBZNDA0UG45SDZXU3hrRjVXZjRJbWdWdUJDYTlMeVo3blVhT2RNeTRXRjUyVkRFZitxRkhCRk9kc0RsNTVxSitvclpSQ2MwTGVsYzhBbFFMdTMyMEVNRVRxUk03KzR4TWhyZkZvbis0UVRzSXJCOGpXZnl1T1hZSWV3aWZZbHNJQnFpZFwvRTErVUo3WDVQQlwvUzdBSEFiOEFuaGp1TlgxcEdXbXMzK0E1QVhkUENQWVwvWGl3cDBEN1BiU0tiN2d2aXZQdVpZR3lvRXRNbW02eDZQVkFRK1U2MWZHWEJsWmpoSHczTk5ncHpVN3JpblpPWlAyNW95N253eU04OUVEemFlN0JNQjJtbHhQZFhleUJWeU9XQ29tWStBVkV6dU5xakpHV3FlV1pQYlZCNTdqUG8ranZabkpQYU1nMUZnanJ5Uzc5T2xTVGhaTHZzamdqaFRFd0ZtUWRCWHh1azRWSW1GQ2FDN2N3cEVFZHNIb3VxS1VROGRkcVBoaU5haWlOeVhldmFsTW9YNUVpZ1pHSWJvU1ltc1M5cExKTjZLOUFkTXl3N1ArbjhKN0grS3djbmRMbVwvVXc4SkVUcWdhdlUwZmdscTY2ZkNGMDFTUWQxelJcL3VyK3lvc3ZHdUxWQktWTzQ5YWNPeE5qRkU0dkRudTJCMjRuZmVxU203cVlrZ0JxczlPTFpKWm1GRTVIUk9WV3lRU2szcHRQcDBUT0xBT2xoaUdEajdKZ1dkZjh3eWJxQ1E4WDJ3RytOTkpEWW9TWTlEdDRWdzlXQUtMTXpKRlpGR2I2WHZOTzZHUW1pUlh2WFk5SWJXbUJ3RW9qQ3VnMzY3aGNHa1NmcjZGYjJoMDAwakZOVlAzUGwrbGVzWWZ0Q0JGcllXVEZ0ZnkrYWY0UCtyTnpibHZ1OUhyblBkc1pLbDV2NUtRM25hWlMwSm1mMDd5SG5SWmxEWGZvUUZjQlU0S0Y5cGtXaktKMmpFTHFGcWJ4d3dQNExmOHVrdE0wMGc4V1JwSXpRRG14eDhNdWZIZ0RPbkFMTnRVR3N3Y1Y0VnFhdTNUdHhRSTJQbUo5NFNFNmRmTDd4bW5LditCTGptSzN0WHVPUUVrd2VKRGptNit0SnVUb2RVWTY0empaWDljK2pOb0Q5eGhWSEF4TDdncll0a0ZxNjBOQ1Zkc2VsSTRMTG1sNDI0cGFNOHNCeVUwQ2xVemdoaVc5amlKdCtBQVkxdDQxSlNCXC80WkF4ZXZtem1BTXpOcEI1Vjg0WWYrNHljQWl5SWM1ZUhkR2dGZVVkdmhVRDRoVlRMSUZJVlFDSFRGZlVcL2VIRklVbVVnZkxZNDBBWHdTNzlITmdOYlZmV1wvd1JHXC9ZNXFcL296UXF3cmRoRWxCR0srRHp5QndkV3Rsd3BwdHZtRTVHRGhIZVNwbFJTdDc0aE9RNmlVWk9aUGJFVklWRVdyVTJqMG5ZUUN5M3h0V1IxR2xwYmExS1VKRTZCM24zcG0rQWxuQUpaUTFhM1I4NG5NTGZnTCswOXQrZWJVUDZ1TlBzRmlGcG1JRTFmYVwvNlUxVnEyOUMzVXREVWZVMU9tNlVRU1VvNVwvWHZPYWh6S0g4SVhcL3BnenNna1wvK2JoUFhCZHVkaVVVQnNJeWN5RmUyXC92aHRNeTNPYlA5ZU5nNUNZaGZUMHBhcmJPdnBSbDR4d2tUaHB1c3BjY0xGSzdCbkg5WUFidmx0QjcrdFVGbGFsemtRdjNnekU3RG1YQ2tjamk4V2NYb0lRXC8ydG5NZFwvZ1V2TGJ5MVZuMytXNGhWVzdOYkdcL3E3ZjNcL2szNGloNXZ4Njg1bm9ZQkM2U090bDU0elBiK2pZUE5qbGN1NzhaTDZZQU8wTGl5RUg0aGo3dThVa3daeXlaeWpyNml3bE03QzR5KzlMa3JHemIrV2hNaVFUSFJrY0JuY1JaZlhXVmJEOWhudWEzVlNEaU1BelJsUFo3WUc3azB6MmFoVHVjZ2ZZWkZIR2xEcGVvaEM0U0kwcmF4OTkxY1NVd0p2RjVsTGhHeitORjNJellRaktNdEYwaTc3b1FRZEJiVlp1UmIxc0s2MkNWYU04Q0RPK1lxSDByUkw5UlNxWDM5VmdLXC9hM2RWbUF3cGhsK0ZSQmh3V1E1K0NVUXJNVE8wb3VMOWNyTldCWEgrXC91TWRlS2NQYWJmRldvQkYyNkFEcHdmM1ZWVGE3eG5vK0M2T0IwYmdTbjZCZXgwbENPdDJPSFYxRGxXYWY0K0tYZ3p6TlZZNndFMndUajBvYVdFaVpaR1wvNHJLWUl3ck5VYTlcL1wvWVZWdjNybm4zNDVRb3hDWkRwdlpcL3JBWjB1eUFJNXRyYTNCOUNGZWtKSXRSUCtvXC9QeWxSS1J5ZEtJRjJmaUdSeHVjd245QnNzMmhubW5obFgwa1J2UXVqajlOemh6Z2FCQnpBWnlkeFRCSmpkN3VPVmdrYXJlNzlRakVkalMyRVo2cVJ3SjE5aXlCY2w0ajZ3NCtYNm5RXC96ZCtNVFpRZnFIYnhmeFdcL1FyYTVxTnhiT3NwcmJ6anFqQkV6K3liR2p0VGVadERJTVBjR2tDTkVcL0RlQ282QkFvekVkNkNrVDhSQVAxZXV5Qzd3ZEgzbUJ5eTY5SlE2VDF3aDU0RWp0bjdTeXpnaXZRWjhmWGN5MUZYT0thbG9CNzVqQlU3U25mM2J3aERFZ1p0Wk5QZVc4K2kwZ1cyK3VVZzlQRmNXdUgxWU1QTFBpQk1CQWx0YmppUEtTXC9pa3doZ0kxV2N4cVRxY2dcL1wvdFBmTXkwVUl5UnBrcTBzYmdGYktzTGFwN1BxdGhlVzdcL2QrVFJsa1BTXC9PMXpJRUpxUEg2a0Q5eWpRT0ZWaUhrSG44V24yR1ZrT2p3SVNkeUwwdFwvd0UyMVNraGRBRDBIMWl5RVA5d0tnWnR6aCtVR05yQnZHSzNkWXc3TWZGOE9tcWw0Y0tsaFhEMDNcL1lmZXVyV1BJTlp3dXRUcFpaMWJBQjhqbENLb1FzdlUrTUY4VTc4TjRNQkdvZ1BFMlJsQTU2NWlhM3pEQkdtT2lYTmliN1ZKZkxTMlh6SVlFem1QUTdIeGMzZXBKWEpRNEVRK2F3dEtSenpUbFpMbFNvM3RxS0ErSFwvbE9oclNYQldpZ3kxMlhpZ0w0ZUxQVlhJZ3JlTURkeUQzc3RhZ2ZFdFZEcE51cnp2ZVBkMFI3RXpVc09WdVlOZkowRlRJWGxFSmpyeHo0UUd4UEFJeDBmVzIyc1phNGRxNjRySjNGKzdUU3JoeFl1YkNMZXFqamdMSDVKVExmZU5wOFRNblFHczVxbVpRRnY5YmVxdVpheGlsXC9zbGZ0aDgzRFIzb3BKSTYwV3NpaVJnTU43SldxdUttRDV6M0puWVwvTmFRMXRwZGJYNEc0V09saCtsOXJJSGlqZGJKRm0yQ1F6YmkzelhZQlRmeUpOeUh0cHR0S0d4T3JlTkVKQzZrVkZtbm1oRnhjeDFhcXhnMmhcLyt4VkxlOFR5cDlnXC94VXd4bTNhdEJyM25TbWVVNW4zdTNQMGpucHZvSXM4S2NCdXVvaW9MS1N2eDRGanRqc1czWndJXC9EdVY0M2lqbG5ldkYxbzlBQUtDa1JVbGRHMThVczltbXF4UzNcLzBqeTczMjVFN0I4N1ZsV3BsT0JnekNiZmpOVEhxQlNJbzBqckh2aWlQOWUyMndxQ056dTBEUEVLT0ZjSmg4WGIzVW42T05ySW9pTTFpQkFOVmV0Zk5ISW5QVlhVTnRvV3B0RTJNREhrZHU1UWZEOUdQNTUwRmZ2cXFTOXlrWWNxVm1iU3dWeThxRzlRR3RmUlpBdXBwS0tmTmYyanVkZ05Xa2QrWTg0TVwveTZoUFF3N1Y0OEJER0tyeEd2c2JCXC9qRkhtQ1V4N0I3aU5BNU5QNHpZTjN1RGNtUE9CRUpQTnBGZHpWSTBQMEpabFQ1VVg2ZGp4cnRnUEVUY1JoNlhRWXRjaVR4YUxVMytlMW94bUdGdTlISDZ4ODlcL2dnY1Z0RmFkb1ZDTEg3WWczd0V3cTUzYldIQ0VESEhKOUp5ME01aGxvamlLRGZtek1WVkFmMm1GTXppMzJyUmF3VUN0OGlTXC9SOWxpODFVSE9uOHhVMkNXTjZCU0ZoYkx5VmdxZ1NidURhbzF3R2IxVkZBVjFHMzdHRmVPMUpmeVd6a0dwZDhic2wrTjFpeVwveWZrRm13WVwvTnVQNTRyOG41eTZDUnQwNVk4aklYSjNxWmUxNzd0cnNYOGs4WFZoM1wvMGJCSmR0QUx3XC9UZVRSWDBocE9yXC95S1FyV01oeVwvQ29Qb0E1b3JDdzJCQjlOdElEMkhPVHdiQWFGTGV1MmpqbTYzYlRpSFE3cE43d2NoZHB0WE9VZkkzNnRDc2J6c2J6aTZVbVJcL1kwTSsxdWE3UmVvODVcLzBkWUZsY0NucXRJempvczByY3VmbDhSTnZcL0dKM0VYMDBYNmJtamJ6dVRBazFmZU5URit5eWYxaVd0ZEZqSjNEaVZ2blJjcHBTTGlTQlR4eUlSbHdLaE1rXC9jRW9QeWJQejNMY2dFdExwXC9qTVhodmpzTlJOUkg2dTB4UHZ2dHBEN2hXMFwvcERraFU4cmxuaCtwNUp1TkJUQVdvYTNVZjJQb005bFhoUDFRQ0pDYVBuR1d4YVwvMnl1NVF0ZXJ4VWM4MkpaK1wvZE9NK0tiZDlzWWp6a3hVN1hDUXdkeG0yR0VoK0ZQcWVKbERiOGFzSWNZTjZ3T20rTFRUTFRPRHRydEl0cm1CRUVYdVZBZWc0RGo1UGxaOSsyRjlrcm1GTzhKR05SN3dGNU5HOUdyam44anlcL2NOMEZzY2pTSFwvRWNiOTBIQm41R040dXBTN012SERNa1NpZWRsRHNoNEFzQkpEcVwvK1RXSGxNSEtUWG9ESXVqQVU2NThwcFlGb2hPbmcrVzlSQURcL2w1c09ucVQrWWZjdktsSEFZSVpXYTF1TFY3bytaajk3R1ZaOXphT3pucHRSUHVVOHBCZENnREdyYlZnbG84bGZNTUFMR1hrUlNrZzZvXC9KNHl2NlkrR1NsaThESGZSeU9cL0RDREM2eGVrN1h0ZndYejIrTjJFUkJFbHpuM1JlMWhjc3pTY2thdzllMnh6WmlqN0p1QWw0YWwzQ0V4ZHI3QVdvZHdIXC8zWWV3RUFVbjNLSHYzQzlIeWRVRkFlOWN4T25jWk5qN3YxVzVYdUdsNTJmSEF5YUxIcDVcL3ZKd3FsaFwvK2drZ2ZiRWRzS25VRmJtdzdmckhVY3U5WDVNVmNHVGdFRExFbkFHNnNYVndrM1BLZDRqUldvTW0yTzNqZHhnS25zTVl2dmFYdVpSWFQ0YVBHZkE5eE9jQmRcL2tlaVVSXC9JMW9acmx3NEJBd3doNXBXcWxobHhOQ0xmZGlDZTlDVjJlQ05hcDd0TWpUSGVmaUZyTEprMURHUEJ1SFJ2OWVtVlFHVWRZS0VCTlpUMXpqeGN3Y1k3aDVnNXc1Y0d4Z3d5ZkY0M3krUXRrRXBBMnhmcVlSZnhwdmJqMDZLa2ErdVBwQW1nRWF2cHpSSUx6UVBtQTV3VTVqbXBBa0lqVEgyUDg2N2VCaUgwYktuN0RNVXFqd09BeHY4T2RwTmJVY0VYN1JjTXZIY3JuSklIU1IwandFNENGRUlZaXZBMTRieU5xU0FKblBNS3NuMW5zdlNPMnAzMUdYODJhV01mamZhR1pucFVheWU3emNrWXAzRVh2TnZWbDViZ2huZ0dldHVOOTQ3eFFkdXlzVWhYMWtcL25YckhUK1wvcUVDMDBYM2hFYWFTbk94N0tvdEg0Yzc1K2prdFNTKzUyNXI4cHMxK0J5cFwvT1YzSTA4RnFuenZpbjFTV3gxN1BmakpGenA0XC9aM1lTY1wvelo2MmpcL2h3TzZKdlNkM1hcL0RvOE43aEFoUnRwbTZGNDd6ZDlaSk02UlExdnE1K1BjRmVNUlwvemNpZlhwakRmUnhKeWRaT1pqOXBtM1lDSmhra29JSmZNamY3aGx1XC8rSmlFZ2pvRjhONTg3K2htaTJIeHJGYWdtTHlcL1dudWlZcDNESGJuM0dCKys1UkdaRjB1bVhxXC9qSWU2blczWjluME40K2o1UXR0U0o2Q0I5SnF1SlpiVmpXRkoxUnFZQUZYaWZhaDlhbWNkXC81WmM2Z2ZlSGxWVXlYQ2poMWMxSUh2UVkxeVk0elRSVTM4QlpCZW1ITDB3Qm1jeDl4MW9wclF2dmZEd2dmbWNlNVNreGxDNGlmRDkyUnhcL3JWVVVcL0NpNTkrUHpZc2s5eWxRdjk4cTJTQllyWHd0bWZqNXpxbzdLQXZIZWhqQlFvWVVOK1RhbEk4UmtHekJGZTd5UlZYV09IYUNmc2FTbkhvMWtiZ2cyRTNIRjRwODZQM0ZZeXNydjVFSUhhRHRVMkF0MzNrMStwT1VlQ1FKTXVmMTl1UkNsUzJhWVBtd00xT0NhRmhwbnJtZWlBZWdscWNQTURHcVhGUUpzNGprbUhienVBTUpZOWJFcGlOQmdHUkk5aERydlBKakFuczFKWm9lUHhJaHNYVVwvam5Lb0ZZZHNIZ2lnRWtcL1ZERWlGMVJPZFo2Q0xhZVwvVytsbktRWVY2RkY1TFdNNDBLd0ViWCtmTmhiVENZcFl3aUJTbzhZSXFRaFRETUgwN0N4QmN6UktucGJydENEam5lZ3lMazN3NVFId0d0ZkhVUTlWSVFVYWdydVgyd0JScmVCU0M4MjRMWWFLc00yVVppblJHd09TbHUwNlwvZG40bEdQRWFFaGwrQ3pBR082ZjI1XC9LbEdoa2JwYmkxektqSEllTkVRQ0U3YUowTUJnU1ZGck05RUpMMWxXNVRnZjNKVmdtdUJmR0xEQXlac0Y2ODlJRzR6TFZJRHI0ZVNNK3NtNmoxSnFzYWo0ZE9wdDFHZ2tTc0JLOEQrWlBcL2RZd3JYSWdFWHBUSlRwTzlwT2Job3ZRQWlQa05zekZvcENtZmk3dFRSZVd5UFR5RWthdWpcL0hSVmlhT1lKOFdhZW5zOG81SVNZWDF4NXhnM252dUFMRWM0dkNiQmNHTlUzSUdZZjdBcWZUOVp6XC80NW0xR0wrN0xsdlRqMDVxcFpcL1VrZUJBWUFDWkFPNzI0WWRjaHNQcWN4eVBYRVMzREpkWVwvM3RSNTlyZWdcLzA4QWp5RGNMNmowWnJaK3laVGxcL2JicGNBTkF1cWFsam5Jd09SWkpIQWd5ODd1ZXNPWEl0emtSendCRGRyRnFjQnBVTU9lQkhQaDdcL25idWJBUEJiMmdcLytDS0ZGQ09ZeGFrZjA0QzFzY3JEYlwvN1pSbXhpZlpVVEVuSHVUeHJUMDA3Vm9xcDAwM0QyQm5MZjZzTmFLdUpHVjZzNGUrZU1Oa0lBZXRBTDlRN2JDZklrdVVOZzRtVHJJenNPN3hQdkVoVTlRbUhkQXZDa1FzMGN5bFdCWTQzTXRsZ0k5ZUNpMUh6Mk51ZHNsN1pTTmxBN3hqTVZzQlIrQW01VGFVU0NwSXl3Y0VQNzlKS1hiUDlzXC9DZk1MS281c3dZS0xSSUVTYjlyazFUMnNWT1FRWmprYVNmR3BITHVsb0x6N3VSbEoycnpyYnZRaWF3RXRmZE1YNGF5Z0tRYms1NkF0ODVnNlQ5dWJmNmxTQUozMzQ4bnlBNFdnbk1KaWZaTHE4cVNlekZcLzBNcGVQekxSK1RRTkhPYnlyYndMMXRkb3hUaWo2NGY1aHJySnYzZm1yQnNNVThoVktJZk9RUHdZK3Y3THUxcmdtM3pXRGxjUVY5aEwzaUgzUTJVSW5oY0lLTGJLcjg0RkJIYVdpYkFyeE5VSUJ0elgwV2NvMTdiNjkyZnY2eFZGeFRTVCtZYW5MdE4zQ1VTNXpZQVRYeGx5UkJ3a3FOclFoMG1FT291VldqRDMxV0pSTUdTeVhIUGJub1hyTmhYSkY2dnZDcjBEaXVTU0tMVEdTSEtcLzI2amxxcWxMXC9nanhnYmQxekY1c1hrcEJaSGRaRXJBMHhcL1hnSiszWDlhVmJWVVFMR1VUNHdrS3ZodTQyT1o4STVhbXRGUURWeGRMT1krcXVpMnA1ek0ranR4YVFubmZcL1ArV0k0Vjl6d0Y2c2VDRHBUXC9aRHZ1Z3dOWFBMUFlJQU9reks3NnFObkoyaTM4a2VoZWZvMEdUREJXTzBYb2JpZkFEbVJsdFhzbGtzOUI4Mmt6MXkxSDdHeXFDYzBiUkROdUhFVmRhQWVDc0pmenVxZXM3WlwvZWRtZHVFYisyTXlcL3JmTXhXZDlDSmVZMmlRVGNST0w1UGdaSnF5WTV0Mld0dXRsTllUZ2RJSFhrR3Y3S3kwNVFlM0F0ak5udis4YjFwZ3VUWGdJQmVUaE5jaUIrc2dhVHFsMHczcm42dWhrcFpZVjh2VkxvNlU4TDdOa2pyTEFST2Zib3lrN3FcL1B6RHFOQWRQeGlmUlFSNDdWb2lScU9tVXlmNWE3ck9oNEZWRnN4b3BVMGVNYkdJY1JiRjN6aGR1UGFoWTY0VFVKV0NKalBUb1JtaUxLXC9yZUNDd3A2Q3RYRUp3aEJBMUJoa2Vybmt0dUhmeGVrM1VybllQNFZEMFdOeXZ4WHpta0VXczFjRkt2emNaNEZIU0U3ZmNESHFFTHZzXC9aU1B2VTZRckFtb1RNOVVxaUVrTDlOeGtUVHVWZGQ1XC83VHBWM0pDZ01FMWcrdjFDYTFpVzJvNVNtWkFRWmo0QUNkdG5MdFZcL1pYays0Mkp6cGxXSjhWZ3U1Y1B1YStDREo1ZnhydUo2NlN2TjlGMFlwc0VzcEZ5SVF6Vk41RjBZVFE2K1Z2THFpeE9HUlBYZFJCVG9aTlNYWTFqeTZ2XC85aWp4Q2twcDJxUHBEMytHMWJ5ekNwZGFoVTVXbjk5UytcL0RaYXk4cjlQVFkxZXVKbXBSbm1YOGNaYXJ5N1JkZlB5VXVkMU15SCtXUXRTUFJqMmozenFUNW1OWGVzM005dk9WU3Njb1RVWUFPTkJ2NGZkbUxLWFBHMlwvaVlRbk5EVjJ2SnNBU1U0aGFkRGlMTnhsZGF6UWt3ZDNSTlhHXC8wVkZ0XC9cL0o1M0RZaFZcL1ZhVXdKbytOYmhuOVZBZGprMVF1bnBIT3FCNXFCdHlnSlVudUFQSUdKMjJuSmdLaVBUUWg5RFZ4V09mRTY2NzdvUlpOMEhlOTZYUWthdStTMHpoRG43N3ZDMERhdnE4K21Td1FVejZxa0MzNmtiZlhWU3JNcWF6MEg2VG1yM2Z5VlN1MXZ0eUhjVXl4Y05aNklyR2duVXdhMXFibnBvNWxzOGd0cXBtM3VmbXFvenpoemhyRHZJVnhveUNFSWp3SkxxSU9vR3lYYUNCMkJQcTZlZHZKbVBnOENcL3NqUDNUT3NQVEdzenM3d1EweVBwOWo5WlQwWkJJUjQyaUgyTmtvWHV1NW1sUHBmRndMVlJhT1VnWnEwMktPMjFJbzJNbGIzSERLVHF5djZQUkRPTjRkUUdNN0lUSHRcL0RhS2dOOXA0UndBV2RoWHdoK0ExRjFWa2Q4SHNkVkhSUEtCUWgzeE5rSituQ21OaVZQMUtcLzgrRlwvN0MzQ0tqRlFVQkVrVVN2SkVrdFd5Y3RTS0hvd253bllqTE9oQW5MaEcweUdyak1qVHdzM1NOM2s0N3ByOEJGaUN5cVMybFdMQU1MVGJXaUdMN1FLZk1QRUtqdUg1YTNwWVJcL2V6ZHdMZGlYcm5DNVYxRGIzeWMwZ3grSGp3TVdMXC9XNGdTc3ZBNG5GbldSU1ZcL0Nqek9zRGdEM0Y3azgyb2VxQXMzbG51TExVVzRmUWx3Z2sxRFI5SHZ3endXRUFseWpkWHVtSGp0VG85clNTQUJNbGN5NTFDYWJ5QkhTeU5qalJKTkFlbDgrRmdKRjM2UW9wYTNHV3p3ZmgxWDNrZlJjV09hNXFyejNJZ1JGRTN0ektcL2g3cU1Qa2NSRk9SeUZJdER1S0dKY2tJeTZJaGg3NEJYdWVEMnFTQVFScUdFZXlnMGpEM0Z3SEI1amY4dU5oRmZGSmVHTmlZcitJYjU5ZER0Rlo4RmVtK21nSE4wTXpqOTV6XC9vc09Ealc4c01EQTVTb0JkTmxlaEhkRWxmRWZsbjlGMG1CalZpc3lza3lyUUVMdXhnbXl6Mjk3V2pRaVRYSVN4RU40NUtKMzcyeHc5WUxnT1VmOWlMYTA4RmlYdmUrRk9sbFdxVVlYYlp3a3Z5ejZ6RjJwNk81Tm1zcVBCSEtydHM0XC9oZU9zRVwvWkZDXC9ra3Qrbm1FUHh0WWVRT213THZyQkY1MUd1dUdKNmJsVnZvTlI3UE1hTTJjTlFiUE9sNGxENVFhaUFhendPUENHN1V1djhzOHE0dXZ3U2NCWDRwdEJOalYxcTU3cmNWN2xXdEE3UDhCRVU3RnRYeklsVmJBZytBdGVMdmVNYmFibXA1V0JqVEpWZ2NjSGsyeENocFBud1RuUkpoeE5adjllYlEyUWdWaUFhQXBGeis4NnUycU15NzZjWFdCN1F2emFlRE5pRFFsR2EyQ0RTMzBQajVuV3Q4c0JKdUFCaU1BeTQ0WGJuQUpYQkRQbEh0SVp1Z1pKaXpLSEozMTRWOGszM3hEdmtOcTNEdFZndUtyTFBwMWYzN1B2MW5OeWxaWGVQTk04SUF2Y3JiaXRIVUtnczdFKzl4ZmFneVM4cEdWQm5Pblk0ZGNMVEFSV3JTSkQ0cit5OURnNzJXazFYZldwR0lzN0tGV3NQa1V5R3RtQnN0SUdXNTQzMUdWQU94a1B0MFlYUFpEeVZJbnQrTlpZOHVxak1nTzJ5SHh4ZjREcVN3TWNtR0Vjd2RKdlwvcGVCb2p6K2ZCTXpFWU02TVpvd1lGWHhXTlMxcjJ5bVh0UFg0bFBXWVRNaHNxZDhvNGpHT0JGWGxlbmx0cXI4ckxXaGpJVlNmN2tpbWVtT3hwNDN4TDJSUUNqVVdROFFPWlM2N3U3WXlwY2FBak91R09uRzhwXC82dVZTbTJPNkJVZ3VmMGE1NzFaVUZjOFNOWmk4bkhKRFdDd0EzWVF0K0pcL2YzT01jeTB5SmhZanVNRjJ4TWhsYllVdndcL0s4ZmFSc0ZKUHg3NFJQVTR6dDU3UzQwb0lRZVwvRTAyU1I1YUtVTFNGOG1FajlMbVFMXC95NW9IVnEzUGFURnNlQklzT2krS3JjbjM1RisxMFdEeTZjNG1VZ1MzQWhlUE9ITXNEM29HQzN4RmVxZUFKenlqeUVvalh1RzRhYmdXNUhNbUgrRVBWVUZMVG42djB0VjEzREdVOVAyTEJvQm40WWI3dVdZVnMzaEl0RXp2bW9CTHd5bUxHcEtqNnhjZVQyWWNnUDVNOVl0Nm5QenBBdjhuXC9FM1RmS0NVbFwvZXpzS1pTdk1LbDZRUDRJZ1pNOExcL1RkMGNvMDBISmhaVjZcL2RhYmVZM0RtdHhSeDFCU1NoOFZCV000dHVlTGJPWHl3b0FyMklhdFFKMGwxUnE1bFwvV2dRbEtJWG9GSStPekhGYjM3RGhIQmRLandKckIrYlQ2VUNUUG9IVjFcL2pERVwvd0xuXC9KTE4zT3lMQkFcL1d3VVRiWEVyNmFPRkxlN3FObE93Yjg2M3E4anY0R2ZIUVwvZWJ0VGpWK0FaWWVcL1NcL1hyOEdFSStPekJBZ2lsNFpoUnBTMWJaMWQ4dDZzSDd5SGpYSStUcFNCM2V2VkVjbmxOcmo1a0VVaUM3WW9KSHA3NkdJaHBRazR0amxxZThvbDB2OWNUXC9tSXFUOEhQYnVzOVRIWDJzam5UaXFwMjVha2xGRXF5K3pTdDluUDlCbFkxbTdRZEg2cWNORUVvdEJQUmRDYjlWRlwvWnE4bUFxYzRpaVpEbVwvMmd4RWhPQVlCTU1KKzBWUit6VWVRWmoyZUJUa3RpRHZDR1k3V1V3T3VjbGFwWXdhNWlCOFwvcHJ5QzdVTFNRRzJLQVJCOFRYaFZkU25RdTlQNHR2NEk4c2l4Q1dDalNZT0oxVmRDMUh0SW1pNmZZR2RoNVNkQlFrZnpxSGJkemR1SU5IbmRHajdqUXB6d1wveFFqMGpHSnF2cERpazR2VndBNDJ4R3hIOVFtSGhhSm92dFk0Y1VOY2FKRW1CdXpDbXNTNkxwSlVvTnJUeVVzd0gxQ0xPWUQ3K3JRTERvRis2WEZScVVGU1JxblJsZ3YrWnlNNU90ekcxMTJGbTd5VEJRZnpcL1NhdWVMVXpZSlZVRHk0ZStFSmNxZDV3UUJZSWNqVjRxUmdpUnNGQ1VSZ1VPNVBESzdvZmhvZ3VqWmdMaEdGa0JKbWE1cU16d09ZWTQ3TkNIcjFYTTVkOU10NHYwQU5OczRlUWhqcHJIV2dqSDZoS2FtdjF3WEZ6WFwvekF3Y3A2Y0ZYYkFqbnBMK3M2aU5cL1ZTeVZWXC90SGw0SUZzNmdTRG03Vng5V3FBN3F4KzExTDdraXA0Z0owNnF1ejRudG9aVnV5TDRcL1h0S0F2UUFoOWlwTUFFZDN3S0dBRmNSTm5JTUNUOUJVWlB4OVRwTEJ6RUF5UnlKWXBPa25UenZrYlwvNmJ0enhoQXE3UlB3a3Brb2gyZzZnbEhPc2VoQ2Z5NDd3dlNtZm95eFF6Qjk0SERHTXo0emVSdWdtM2NjNjJ0enQzMHViSWFXVk04c0gwMTArOW5tVm9WWFlEOFkxMFZMaGJjeHg2QWFMS0tBVlhueFdDanozbzg5c2tzdU9IUFh2Vk55TmI3NEh0REptUWlMcFNzaStDQUlieVFHbG1SNkJhZUpCY1FjNkg4SDk2U3BPcnE0WWlJMWQ5SmxzcE9mZFdXUnBQXC9LaEkrbG9yck1JZHdXNFZJM3NTWkdib3pKajRqa0p1bG5qM3VVdWJlb1wvUXpJeHU4V2FaS00yalwvMkRhQWE1M1hpcHlBaVZrZStqOFRla3FlVlk0MXZveWxUQldFSzBcL2RUMmFFOUJtQjZscmhrQmxHUnZpNUNSRjRCYVNxYWVJdXJpWTBcL3FTYXpFZmQ5MURXazhVdkowRXBsTTJzVHBqSFNtWnJEdmZCaCtKcW5MRWNpbVZScnl6a0pHYWJQWkdJd3AzN2ZzMEdUd3Z5eFFTVkFoU0RJNEU4TitFQkVqWDYrMHJsREVGaTNlZlYzK2ZMSGZCMmMrUEhNVVhhMGtEV0xIRlRNU3l6eCtUeTBvTis0a0dsVEF0dldUSm5xVHhiMU1KY2E3blwvc1FVaWR2OUVJYzNwSm9yXC8yY1IxQlNrYnNhTFp6WWVBalprM0R1TU5Gb2w3OXJuUTBMblwvVTB1XC9WWEFGNmxsSVJiV0lBWFhxWEc1cm15NUQ0T3NcL05tTVFDMXp3aHJHTjZQb3p4MnVhc3B1VERrVVwvSE1oSm1QODZoTkRValBkSkVqeXZOWWJzRjA2K3Z6d3pFa3BQaTVhekhnYTd4aFwvckFaeXN3TVwvcHBCR2psakg2UUZsSTlOcTdzRkwxZ2JRRmd2UDlBXC95TnkydHVKVFBkUGFlZHhseXlHYTFYTzR6YzhQSUxsOCtFZU1wN0lacDlVZmRuUTcxbnFTVkllanVQSk44T09DWlFMRWFMUndjYW5sSDRtd09WdFFPQjdOWFlQM3BaM0lidW1xRVU3aFV5dVBCUEtESHN2WnRQOXJvSTVCWjdHRXUrbWhmMGZBZW1mbk5GUDRBT1FqbEc2Mm02bm4wYVZJUGhKM0lZcE9MWFhGU3Z0SVRFR3VxelgwZzU2ajB2RUtGM3ZaM1V1VENSVnQrMnVBdTlFME1XZ0ZWemtBT0JNRU1PS2lBSkJFU3FwUFkwa00zK3VxT2tvK0EramplcERMc1RLVHdmNktHNGpHSktuSHlhYVwvSUQyN3hhTFhvZjJPQitvcGRSVng1NGtSSlJleE5SNXBGUHlpQUJhY2MzOFNFMjEySUV1U2RiVThzVEMyY0RmMTdFenVrQmd4WjlaMnpMdkZcL3dCZU5ObzB5TTE4SVNtTElVb0ZmQ1hpalNjMnFvYnFwYlFsNnhWY0xBa1wvNkdNNFcraCtEOW1ZTmhYaUE0UU9XQURQNitnXC9wOUlLSjhWQ3IwR1ppS0VVaGwyTnR1YVRpVXpiK0NYa09IaUdpZGsrT3gxeDdRUHBsVjdlczNSWnhFb3RRRmx0eDZ5TVwvaGg5Q0NFNXFKN2RQdiswd1NTMUVLWTFzOWxUY2hhMWFtWER5MmI2NTgxaHJUdzFKaFRNdTJ3aXNscnJTanhwTXZzbCtZWHUzcytSMTkxMU82SmpETDljYkppVkx6S2JzYTlFVjh4QTBcL24wMzcwRUZcL1BSNnRvUUlVZ3kzemhhXC8yMUczaWFBY3hEbG5BZ1Z4QXZ6MG96VXFXaHZqUEZuN0JKcXlDaGcwcEc0Z3VWOVdjakVzWDNldmd5M0NlM0hDSVhPZmFMSnRReERVaURqVHNcL3dCNEYrQVU2SkdtRm8rcDdFRVN0K05KKzdXNG5jdFR4R3JlOGxETDZkU0N1RHlScjQ4THZ4bitxSGU5NUdURmVoMzdvTVRZSm1rNmNtTU1yOVpneXgwSEdHcGhwNU1IM0FEVFluQlRlZWtuTVhvNTV2cEc3cW5ZS3ZTRE9GUWNrYWJPWEdweTNuZHRFdVJWOEV4RE03U1dVMlBBUlRmMnZRYnAxeGI2aFwvdVV2NDFNVW0rYnlMXC9ZRmoxNnVjSWhcL2N0V0ZzT1ZzcnlZRVlxTm5OTElBWEdielY1KzRVQ2hjNExEY2J5VlwvZDU0UUlsTThlYjVobFwvTDEybW9wc0ZWVlRFSnpHYnp6TnArQjRcL1dFajdzeVRDcnA4S0RLZ2wrcks5cyswWnpMYTMyc3duN1dqczlzZnljdkRTcjhzeldlQ2tDdDJoRXpRT003WHVnRm1cL1djQnB5XC9ZbzBBR2JpdFBWQW5cL2Z2bWt1OWN1bXl4VTNzNThEQWErazdnbW54R29tRWo1RFZWMEJFemxmU1VJZWpQa0NkUUVWN3JWQlZxcFFxMFhibnpQRWhwUm9QdlYxTXdrNFVpWkRyVzJxTzN1bDVOd1p6b0pBRDdNYk85UUxVRW5KZDRvXC9FUFwvbm5FTGRZdnRoRXo2YTdndlNveXFSRjQ0ckZuNXBBdkxvRFwvVTRUYkJTb2pQNUJvWDM2ZGhUV0o0NFNCYkZodE02eWtcL3JnNTVmb2pzXC9HQ04zZ2lKZ0RSSjIwVjR3eVwvQlJTakJ3VENpSzRCTUhtZjNsbzNldnpaZzV5c2wwNzNIZmVxNlB1TzVQT0llaEFGMlRUcXRGNzN0UmxwV3NSRWhcL1RZb1N3MldxU3lld2xUMW83THZPQWswMnIyQmVleENhN1NSaDZzVGxZQk1mOXF6R3cwdFwvNHJoNnhxZEdoRGFrOEhENVN6QnNYUkVpNGxNaERBQllvUktJd3RHR1JMTHNMN2JscTJoTVNpU0hCNWQzV2xqXC8xc2tMSW9sSUZZYzFEXC9DbStYZWloanYxa2RvM0N2UHZHN1VOWk9RUDJ3ZGVYRmg2Ykszb0J3WStXOURNSU41Z1pBUXJyN1pTdmRQWENhTWYyTG80QnhpMHZ1SHVLclJ4elBWeVRaOHVFNHVod3I0dUVDZlVqTUdjWVZtS0k4eHNsSEhhMlk5NjdDYU5VTlRGTXhHNDkyV2hXaVBKZXg3czZ4WWdkK3RyZFwvNk14MnBMZGRjSGNiUG9Xd2xyRmN1SW9kUmJtZkswOTRIVjZaSlJra1lvWHhsamtCZFlGaWxUWVlFWkFocnkyOTlGdzVIQ0NIclBvajRiUFBIYWlSOG83cldFcDdPMjhaRnpJajNKSGticGRscXczb2M2QTErY1BJcTlLU0M5T1UwUmJlXC9Db0NzWXk5VVRjNFByNktld2dQNlIrWFVmODhxVkZIS3RSdzF1N1J1OGJzTTZFUDhCT0VLRENTN21aQXpSZWQ1XC85UVcxMTJVZXFJMURMYTBYWk9nbisrT2NxRVRZd2oyQlwvNGYwNXdNT2U0Z3A1N3VBb05EWTU4MkZZcjQ0eU5jbE5tV2QwRFM1eU5udVdJTEpPbndyeVNUMEs3Z0EyRFl5WGF5cW16Y3RNZ3VwZU9NU2tzZ0xhNld2b0YyYllrXC8xaTFCeXVCNjJPV1o1dGozVE1aZGcwWjgrMjhodVoxMzd1cDVTanJJYjl4MmlpMzM4aUM4OFwvSmNRU2R3bTFMMEpnNzRBdGVLZ0hcL2Zmc251WHVjK0wwOFZEelJRV2NXaVNvNmJWTmdOYSt5dGFuQ25aNTZaR0duZ3hoYTQyeXpjK2pvYTNxV0h4V3dVTjdaMXVpMXloaXBXYXdXelFJZ08yVk80T25pTkpkR2NtNlwvRXArQlFpOURVVXdiS2NtUFJtYUptWEZcLzd3bXdON09xcVh6ckRxajVTY0dFVzFuejNHTVAxRFpnQ0x4WmdLU2RqSE1Cc05sWE4wblJYMnVrMmxtdXFKVXQ4aTc5R2s5V1JSYlBGdnNMcGdFaWQ4TGdtZldXZXFrQ3ZWVlwvd0dkNzFEa2F2ZFZLVys5cmpcL3FIMlViQ3FMWTFTcUE4bGJyM3AzWUtvZW5BQ0NDcTJRalE2aUQzeHU1aENuWEVsRlNVVngwQ1JzTnVMWVJHKzlob0Rwc3RsM21NSGNxNGRtRmhsN3NVZGpTS3YrMHFCRU93c2hqdzVkdnBwZzB2Z2NiWHV4VG1MVk41cXZnYzZLQWVxcE54N0VMNUhEVXpQaWhwNThKd0pnYkVmMkVhYWRpVStLRTNtUFpOa2FSY25DT1EwQnUzUktrTTlKOWRGd0VkZ1pYRkdpdjEzelh6VkFvblIyeDY1YVJPbWNYK1UyVU9WUnhiRGZoZlZPbllEN09XREVFRU5HVUFvalR5K0xCTG40U1hJT0F3V2FxdzB3MWxHUGNXYm5YSmoyem1TUWNXM0ozTVRIV0NHcHBucTZyaFdNYWpkQkFRdUZublpLaU91U2lWQ1dDQ0ZZWkxhTXZIQlVvNzBxWklLU2hjb1c1Q1IxK2E5aUtJaWtCUXdPS0Q0aFoxVG9FWXY5WmZGa3JJdnFmSDYraHYxK254T2xEYk4rUno1b29OODRleEdTb1BKNVwvZHBNQzVBd28wblk2cnRJaXRFb3hOM01KR2tPOGx0c3BiWGVqVFFiZ3lWS295MUZCUnV4K1h6blJDVmptc1JuWVFyN1hDSksyRk9aMEF6Z2hndWhlRUdlOHR6cFV2NTNNcnhCNXp3dERjbWdEM2M4Qjlnd0dEaGRzUDhTWFRMbEV5WmJvOG5pWWszSWFmY1FBZTAyTEpJWVE2a0ltNnpNOUxETFhlSklIbkJtZVg0anpSc2FRN3U3cktmOXNSdDBjRTdCZ3B1NFA1cVNrbnRSekpiQ0dqRzBGM1V5bVlzT1QrY3lubzB6dENKR29NU1Q0elI1ZzFyY1pFUkpzUWhpbFZjQ0dBcnNHR2RnVGpCVFwvSHdVQVBqK2dYWU9qRmtcL3VyWXJZalV1d0pMUkFjOFRpMXo2SUk1K2dIZEFUa1JzNmdnSHZXNkRabk9cLzlPOFwvTlZuOFYzUnhGMDg4enZnV0FHQ2xTR0dqNzlkaERycWhycEx1ZHNsUFE5a3F3c1NkVlJaUUZ0ajZPOUlxRTJtR28xTTlYa3pjN2pzTytmdE9ZV242NWh0NHNVQU5heEphN0hRRkduUnFuNmNpSHczK2NKV3VnK0VJM0FVdHpaNHlzOVNmTHhSSWlZRGhSXC9JQmlDeTQyZmhXUjVnS2FvQWlCM0lKRTdqWVVDbEtteFVjTVAzVnZmbHBRWm01N1ZoT2t6YllkZW1zK3VHRVIyM1lHUkoxd3YrUzhGTFRDSSs4YlZ1aHhiOU9QTzdmcHJ0ZUdcLzFaZ1R4YlNLYTNRTEtpUTBLK1REbmNiRE01N2NoRmNKMCtXWTBQRzF1eHRzdnZ1MzFiVkxiZkQ4NDRiWTNVTkVyNDBkQ2NmRnJkVTNRR28yMDExSERPS2dGUjVFbUV6ZW8xVWFZTFpYWXh4ZmZjaEh3U21ub1lvUEdHdkE2UTFaUjd1aVQ5N0x6SXNUQ0tGREhBVElGYmgrRmxqNnQwMVppeVJjcXBhM0d1bk1ZUEhJUXI0Vk1NWTVzTndoK1pEdXhLWnIwQnlSQlU3cUxieTJhT3FGMWEzQ1pHclwvTzRcLzFhdlwvYXhqN0hPWGhIZG56R0xjVTdYRllocmQ2M0hJRUlIbUFDYmpoY3FaK01aV2ViUTlzZUlUc1JRODluUktUQmhXa0hubTdNb2g3em1CblQrNlBSbWVhWXFaTDZZc1Zmd01NSUVkK21TbUVyQmpEMnkxTWR5R203bkNObWFRREFXSlNpbnppeEpsQVwvTXdNVHdhaTBXdW1ib01cLzhZMEU4eXY1ZFZiYjAxVFROaUZZZ1BHOHpDWTVXTE82RkNrMVpOc3pkT2dsYkh3XC90c0dpWjFOa3J1dXdnU3FwdXA0TkhuTGo4M1B6dkJHd0lUb3VrQTFVZlwvbnFib0FPeUNKbGwxVGZZdllzRVA3Um0yRm5QaFMwUlhwY29oNjR1c2swSk1EYkVsdkZlOHVQNVNiYUZTZWNES0dRclk1YktLOXczcUNCM05aZzdzdmxDVVpSc3hXeVdLeTIwWlcybzk1QVd6SU04TWZQdlwvRkVLSjVtdE14TjBrRitHXC9NdzF5R29LTEhsa05MWEs4NmpRbUkwb1hSQ1hmZXlSVzI0MGViMUdLcnkyT2dxb2NORDM0NmtrajBNTmhiUE1sOFExaCtYN2Z5VkQ5enJYRjlQYkNIQlFybW5jbFFwOFptMjNcL1FBM21lWmp6Y0YzNHB0QUR3UkE1RFVwdlBmZlwvT2RVOHJcL0kxT1wvSlN4RGNJWW90dnpMTW1lUGVkU1F1ZU1FYmJHVUgzMlBTWE5Gd0dBa3Z3YkRWOVBGRG00U0FlUno5eWJFN3ZuT1ZQd0MwVGRRMVFhZjVMWEw1TWhVc0JoeUdBMVpFSnZIRDdvWVJIOGNDNUZFWGpEQTZLNnZRa1I2TzdabTlhSjJGQUpnSjg1VktkXC9haXRZMStwb1MwZENmNGpwbmh5cEJtTGkyY1c1dHNpSTlZQUhxeCtoNGdrSW0wZE5RcVFHWE13a1dpZzdSbTU0OHJ0WnF1MmpSdW5lR0YwcVAzQkNmWkhLUU9lVXA2YnpUZ1VueFJoWHIzd3dGbkNGcytxWjNIZzVhcDh6Zk1JblNGdVRMR1VRY3dnQjExUlBTV0wzaE84RDdRMkYyeGh6aW9ud1wvak5WSVBTQ1wvcFJhbldcL05MQWpZMnB0T05nMVdralorMFR3WXlDc3dFcmNsVXd3b1Azd1JKb1czR2RtK2NTSlhDMk40ZWRaNkJnUDdLeDIxcnEwNGw5UjMxbVJRbXNmZHdEVGVtYUptV0lUdjdtelRLZVRzZkUwb0FPU20yRjRVSGM5bHR1bis2RFdXak43SHhqTXJ0WlN5TDBUandiR01VXC9SVVRJOXErRXM5R2ZoY2ZTVkR3S1Fpb2haZ1Nzdlc2ajFZenpETDQ4a1wvMzcwYlVJOHcwTm1DRm0rXC83OUhXMnluXC82d0VrXC9LYzJITzh2aGdpcTdDN1BTRXQ5R2tUSlA3eXpzVzdGaUZaK3Yyb3FJZXZVdXB2YU9uNUNQK1wvZzVYXC9mMTdWeVdKd2p2VWJFbDJLV2dVWSt6SFgzeXQ1TTVKWXcweHRXT2NKZCtydzhna3UrZzArVDNiTVBzU0l3SjNVa1VWeUlEY0YrdlwvZU1jTWJhXC9ZelBCaTVSUUpHZXM0UHZxanpSQytvTlgrdDFoMlFRNWU0ZHgzeW80ZVRwWWZocTA4MlgxYnBaQUtJNDFrY01pUW1rY05PSGs2TXRxVjlQRkJwWVFpeTl0NW12TFZtSFBLaXRTWlZ6OTIxNjBab0VlZE81WDMwUTBWRitaOVpKMWdyRjRaSXZ6SjlRTkhzXC82RFZFYkNLMkN6Z0Q4bEk4MFwveXNUWXBYSHZod2NWN1lQejJWaExnOE5CZHVod1hpNzlMTG5HMzBmVWNlbjc4Zm13TDQ2WVZwcnpZWU5QeWNaQUpJOWIwd1wvWU9WSFNidGtjTjZsTkQzdEZpSTdpbnE2S2ZFTHIwcG01QzloNWwydk9YQlo4QjBGclFBcnNYTTJCZkt0Y2FoWTZjS1d0MXR6a0krcUw4cFdmY1d3WVVwTzJBdHBpSUhsck1sblZqXC9jaEdYVTNqMTRZbFZaQllZd3NMRk9MREtWeVB3MXBWSzBIeE1xQjV4dzJCSXhXS3djVXNENTNwd3Q3dE45b1pZdkJNSExUUnBIRTBSZGdxOTREQTlmdFpGNDQ4VmxlQUs3eUFaN0hJZWI3TktKWWt4SWhjamIxNnp0OTRBMFVlNHU2bllzV3hGWTZYNzRZYzNjY095aXVVS21ERTFVV1pBTHpiejJrTWdnYTB4bUFBUk5wdnoyY0gyYkJOZkZQd0tMbEZLZnFxemFKZFlVN3lOdlAxTHFFVG0rWk9EaFhDQStMaDFMclQwcVVrYms5TTc4a3RyaFF1V0tBemtHU1VmNlZ6MzV0TzF3dnZxVzhkMmYwN1I2eHE2UCszNmpqd1FcL0FnVW05UGNwM1wva3hqQllsSnd4TUMycUJSMEdBa29FMHJqUDhEcDYrd1pwcTkxXC9tRkJEWGsyVlF6SWJ5ZkF4Q3lRQzFBbEROMEVPMm1BTmN6aGFyZnJBYkFOZDBpbTE4YlwvWHRKMFRMNFBWM2NhRnlJOHJocDYwdHhJTXJuY1lrcTRhcmtxeGRhTmxCOGFVOFlOTkJST1A3d3VJRDBjZlF4NzE5aUxRd0pMOUU0TGxuTXJtcEF0R1Z3cGVRdXg2d1NKVlFGSHMxY3QydWI0eGtVRkxpd3QzbjFCMDBDSUxRRmNvSWdJSUFjbUh1RWNHb000bXRKdHlMWUZRY0RGYjNjdlkrYlBhUjcram53d1krOFI1THZlWkxaS0l5aFFvZ0tSb1h0XC9BTjlpYk5DbHBoK2g3TDhmT0I0K1N4OUw3XC94MkZXSFJ4dWR1RHQ2MFNyMmp6T0FtcXFrT0ROVXpKMmI4aXBMQjVoVHNoWTdlbXJkMGJ6S1lUQWlYcE9lU1o3dVRWMEs5WDdkbFFPKzVCdTJkcTlnNVNRVEVoNlFDa2FSSExpeklkQmZlRmRUN0FPOFZrZDZ3TkRmU3ZHbE5qUkhjZ0d3SEFodit1WlRcL20zYlZ6V1wvaVpDbnpwdkF5dzF0bjRuXC9aK3IwVFk1RmRCMDh0WTVzU3BwRjVpdE5meVNNSEtFellPdXYrcUJvWWdOVWloWDJrU1M0eGRFajBRM1JXcmI3bTBVRHk1ZTRMRWFrUG4yM2xNUUQ1VHp1NVdOVlEwWHkzcngwdm5tTFwvRzdlcTN0UGhTazRIYzJnMm4rWXhUbGJxOTdjc1ZoZWhNK2JBaVBUMklNc0Z6R3JMNHlMeDdIcXFwaHNiM3FyejEyVkVnbHNGMlowZitwR1wvVGExYmJ4SnZUa0ZlTHFmU3dqcnIxRlFUaVNSd0tkVmJFektNaUc5cmNsckJNVWV6WVpJY0tlWm5hb0x4WDFVVjNtb2ZteFRzZHRaMmZtUjAzS29wdGJwbmRZU3F1UDVKUmtsQk5UWUxBdktPR2VQekNITStHT2hKeXp6TUdjNVhhczhidFlORkdcL1kxMmRSVkdFdGhBU2c5c1lpTk9OQ0o5NEloR2xjU241TGVZcmFZUEIrRURtR2RjamJlamQwT3QwbGZDbyt1cU5nNHo0cGxhcm9UU2RPano2RDFVa3R0cFY1dXlzY1NaUVR6aWNJMFVoVWlhYTJVUjFtV1I3ZGFjTXhHR0VJalNLUjZyZHVWXC9MaWoxd25iaTUrUlwveDhlMERuZWRRQVx4M2RceDNkXHgyMixceDIyZ2xvYmFsTmFtZVx4MjI6XHgyMnRyYXlyaWRlXHgyMixceDIyY2xpZW50RXhwZXJpbWVudHNTdGF0ZUJsb2JceDIyOlx4MjJceDVibnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxceDViXHg1ZCxceDViXHg1ZFx4NWRceDIyXHg3ZFx4N2QnLCdUJzogJ0FTQUZBVUxvb21ialhaSlBiSGRvd0MzWlk1UVZoazRmX0lKXzJNbTNaVXV0eDc4SkFnUHNUNDFwaWNVRU0wSDNyYnphT24zekg2MzdadTJJMk1TN0FiUzFDVXNceDNkJyx9KTt9fSkoKTs8L3NjcmlwdD48c2NyaXB0IG5vbmNlPSJ6SmJIM1Rld0wxc1JFY0E4QjluZmp3Ij5pZiAod2luZG93Lnl0Y3NpKSB7eXRjc2kuaW5mb0dlbCh7c2VydmVyVGltZU1zOiAgMzYuMCB9LCAnJyk7fTwvc2NyaXB0Pjxub3NjcmlwdD48ZGl2IGNsYXNzPSJwbGF5ZXItdW5hdmFpbGFibGUiPjxoMSBjbGFzcz0ibWVzc2FnZSI+QW4gZXJyb3Igb2NjdXJyZWQuPC9oMT48ZGl2IGNsYXNzPSJzdWJtZXNzYWdlIj48YSBocmVmPSJodHRwczovL3d3dy55b3V0dWJlLmNvbS93YXRjaD92PUdjMmVuM25IeEE0IiB0YXJnZXQ9Il9ibGFuayI+VHJ5IHdhdGNoaW5nIHRoaXMgdmlkZW8gb24gd3d3LnlvdXR1YmUuY29tPC9hPiwgb3IgZW5hYmxlIEphdmFTY3JpcHQgaWYgaXQgaXMgZGlzYWJsZWQgaW4geW91ciBicm93c2VyLjwvZGl2PjwvZGl2Pjwvbm9zY3JpcHQ+PC9ib2R5PjwvaHRtbD4="}},"time_used":98,"timings":{"blocked":-1,"dns":4,"connect":9,"send":0,"wait":56,"receive":0,"ssl":28},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","fqdn":"www.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"subdocument","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.988Z","timestamp":1785126256988,"http_version":"","security_state":"insecure","security_info":null,"request":{"raw":"GET /embed-widget/crypto-mkt-screener/?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://besttrader.live/\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":"","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-27T07:04:52.530819Z","times_seen":17558191,"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":"www.tradingview-widget.com/static/bundles/embed/61495.37ee7d182cf84caa7681.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.371Z","timestamp":1785126257371,"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-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/61495.37ee7d182cf84caa7681.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/crypto-mkt-screener/?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 04:24:17 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-7f91\"\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:20:17\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: b83580d0c5584d54df257fdc0230ad60\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":32657,"size_decoded":11309,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3072)","md5":"1101547aa0a5f1429817d5e491a4287b","sha1":"0bb8f75c93fe64e583a0bc2f0859ff602e1d94a7","sha256":"1f91a265530e9f4142c3b135c93094b7746dba4d3ff42b4ba49d8690c98c7597","sha512":"9f661d05439bbe5f87c7b8580707ce9d517a82a994773de68693c0ba9d653c3bf2565b248d08253aecfc1781e4706198fc30eab02cf96336de418992131d8497","ssdeep":"768:VbtJRlpt8ZUxC6nEFMQQE0rmtel4/0Q+xg23ba1Sj7Fk+1/1NB2VVR4m:VbtvCZLu/004/7+Gsba1SaU2F","tlshash":"cbe2e55632357a3601ef508b58fb0043e23a64486114992dfc7cdeec6ebdd8a623657f","first_seen":"2026-07-25T03:24:57.451516Z","last_seen":"2026-07-27T07:14:43.764741Z","times_seen":132,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s2MTQ5NSw2MzU5NV0sezgwMzI4NyhlKXtlLmV4cG9ydHM9eyJkZWZhdWx0LWRyYXdlci1taW4tdG9wLWRpc3RhbmNlIjoiMTAwcHgiLHdyYXA6IndyYXAtaWlpMTE4b04iLHBvc2l0aW9uQm90dG9tOiJwb3NpdGlvbkJvdHRvbS1paWkxMThvTiIsYmFja2Ryb3A6ImJhY2tkcm9wLWlpaTExOG9OIixkcmF3ZXI6ImRyYXdlci1paWkxMThvTiIscG9zaXRpb25MZWZ0OiJwb3NpdGlvbkxlZnQtaWlpMTE4b04ifX0sNzUxODYzKGUpe2UuZXhwb3J0cz17d3JhcDoid3JhcC1HaERqWHpCeCIsaW5wdXQ6ImlucHV0LUdoRGpYekJ4Iixib3g6ImJveC1HaERqWHpCeCIsaG92ZXJEb3Q6ImhvdmVyRG90LUdoRGpYekJ4IixyZWQ6InJlZC1HaERqWHpCeCIsYmx1ZToiYmx1ZS1HaERqWHpCeCIsZ3JlZW46ImdyZWVuLUdoRGpYekJ4IixvcmFuZ2U6Im9yYW5nZS1HaERqWHpCeCIscHVycGxlOiJwdXJwbGUtR2hEalh6QngiLGN5YW46ImN5YW4tR2hEalh6QngiLHBpbms6InBpbmstR2hEalh6QngiLGxhcmdlOiJsYXJnZS1HaERqWHpCeCIscGlja2VyRG90OiJwaWNrZXJEb3QtR2hEalh6QngifX0sNTU4OTcyKGUpe2UuZXhwb3J0cz17d3JhcHBlcjoid3JhcHBlci1WbmVRVm9OdiIsc2VsZWN0b3I6InNlbGVjdG9yLVZuZVFWb052IixhcnJvd0xlZnQ6ImFycm93TGVmdC1WbmVRVm9OdiIsY29sb3JTZWxlY3RCdXR0b246ImNvbG9yU2VsZWN0QnV0dG9uLVZuZVFWb052Iixwb3B1cDoicG9wdXAtVm5lUVZvTnYifX0sOTE2MjYoZSl7ZS5leHBvcnRzPXtpdGVtOiJpdGVtLXZUbThPMExNIixpbnRlcmFjdGl2ZToiaW50ZXJhY3RpdmUtdlRtOE8wTE0iLGhvdmVyZWQ6ImhvdmVyZWQtdlRtOE8wTE0iLGRpc2FibGVkOiJkaXNhYmxlZC12VG04TzBMTSIsYWN0aXZlOiJhY3RpdmUtdlRtOE8wTE0iLHNob3J0Y3V0OiJzaG9ydGN1dC12VG04TzBMTSIsbm9ybWFsOiJub3JtYWwtdlRtOE8wTE0iLGJpZzoiYmlnLXZUbThPMExNIixpY29uQ2VsbDoiaWNvbkNlbGwtdlRtOE8wTE0iLGljb246Imljb24tdlRtOE8wTE0iLGNvbnRlbnQ6ImNvbnRlbnQtdlRtOE8wTE0iLGxhYmVsOiJsYWJlbC12VG04TzBMTSIsY2hlY2tlZDoiY2hlY2tlZC12VG04TzBMTSIsdG9vbGJveDoidG9vbGJveC12VG04TzBMTSIsc2hvd1Rvb2xib3hPbkhvdmVyOiJzaG93VG9vbGJveE9uSG92ZXItdlRtOE8wTE0iLGFycm93SWNvbjoiYXJyb3dJY29uLXZUbThPMExNIixzdWJNZW51OiJzdWJNZW51LXZUbThPMExNIixpbnZpc2libGVIb3RrZXk6ImludmlzaWJsZUhvdGtleS12VG04TzBMTSJ9fSwxMDc5NjYoZSl7ZS5leHBvcnRzPXtpdGVtOiJpdGVtLWQ5akxPTHJSIixlbXB0eUljb25zOiJlbXB0eUljb25zLWQ5akxPTHJSIixsb2FkaW5nOiJsb2FkaW5nLWQ5akxPTHJSIixkaXNhYmxlZDoiZGlzYWJsZWQtZDlqTE9MclIiLGludGVyYWN0aXZlOiJpbnRlcmFjdGl2ZS1kOWpMT0xyUiIsaG92ZXJlZDoiaG92ZXJlZC1kOWpMT0xyUiIsbm9ybWFsOiJub3JtYWwtZDlqTE9MclIiLGJpZzoiYmlnLWQ5akxPTHJSIixpY29uOiJpY29uLWQ5akxPTHJSIixsYWJlbDoibGFiZWwtZDlqTE9MclIiLHRpdGxlOiJ0aXRsZS1kOWpMT0xyUiIsbmVzdGVkOiJuZXN0ZWQtZDlqTE9MclIiLHNob3J0Y3V0OiJzaG9ydGN1dC1kOWpMT0xyUiIscmVtb3ZlOiJyZW1vdmUtZDlqTE9MclIifX0sOTU0NDc4KGUpe2UuZXhwb3J0cz17c2VwYXJhdG9yOiJzZXBhcmF0b3ItS0h0eU1UWUcifX0sMzEzNzcyKGUsdCxzKXsidXNlIHN0cmljdCI7cy5kKHQse0RyYXdlckNvbnRleHQ6KCk9PmMsRHJhd2VyTWFuYWdlcjooKT0+bn0pO3ZhciBvPXMoNzc5NDc0KSxpPXMoOTk1Njc4KTtjbGFzcyBuIGV4dGVuZHMgby5QdXJlQ29tcG9uZW50e2NvbnN0cnVjdG9yKGUpe3N1cGVyKGUpLHRoaXMuX2lzQm9keUZpeGVkPSExLHRoaXMuX2FkZERyYXdlcj1lPT57dGhpcy5zZXRTdGF0ZSgodD0+KHtzdGFjazpbLi4udC5zdGFjayxlXX0pKSl9LHRoaXMuX3JlbW92ZURyYXdlcj1lPT57dGhpcy5zZXRTdGF0ZSgodD0+KHtzdGFjazp0LnN0YWNrLmZpbHRlcigodD0+dCE9PWUpKX0pKSl9LHRoaXMuc3RhdGU9e3N0YWNrOltdfX1jb21wb25lbnREaWRVcGRhdGUoZSx0KXshdC5zdGFjay5sZW5ndGgmJnRoaXMuc3RhdGUuc3RhY2subGVuZ3RoJiYoKDAsaS5yZXF1ZXN0TW9kYWxTY3JvbGxMb2NrKSh3aW5kb3cpLHRoaXMuX2lzQm9keUZpeGVkPSEwKSx0LnN0YWNrLmxlbmd0aCYmIXRoaXMuc3RhdGUuc3RhY2subGVuZ3RoJiZ0aGlzLl9pc0JvZHlGaXhlZCYmKCgwLGkucmVsZWFzZU1vZGFsU2Nyb2xsTG9jaykod2luZG93KSx0aGlzLl9pc0JvZHlGaXhlZD0hMSl9Y29tcG9uZW50V2lsbFVubW91bnQoKXt0aGlzLnN0YXRlLnN0YWNrLmxlbmd0aCYmdGhpcy5faXNCb2R5Rml4ZWQmJigwLGkucmVsZWFzZU1vZGFsU2Nyb2xsTG9jaykod2luZG93KX1yZW5kZXIoKXtyZXR1cm4gby5jcmVhdGVFbGVtZW50KGMuUHJvdmlkZXIse3ZhbHVlOnthZGREcmF3ZXI6dGhpcy5fYWRkRHJhd2VyLHJlbW92ZURyYXdlcjp0aGlzLl9yZW1vdmVEcmF3ZXIsY3VycmVudERyYXdlcjp0aGlzLnN0YXRlLnN0YWNrLmxlbmd0aD90aGlzLnN0YXRlLnN0YWNrW3RoaXMuc3RhdGUuc3RhY2subGVuZ3RoLTFdOm51bGx9fSx0aGlzLnByb3BzLmNoaWxkcmVuKX19Y29uc3QgYz1vLmNyZWF0ZUNvbnRleHQobnVsbCl9LDk2NDIxNChlLHQscyl7InVzZSBzdHJpY3QiO3MuZCh0LHtEcmF3ZXI6KCk9Pl99KTt2YXIgbz1zKDc3OTQ3NCksaT1zKDkxNDQ4Nyksbj1zLm4oaSksYz1zKDEzODYzOCksbD1zKDU4NTQ4KSxyPXMoMTUwMTUwKSxhPXMoMzEzNzcyKSxoPXMoNjMyOTkyKSxkPXMoNTU4MDMwKSx1PXMoODAzMjg3KTt2YXIgbTtmdW5jdGlvbiBfKGUpe2NvbnN0e3Bvc2l0aW9uOnQ9IkJvdHRvbSIsb25DbG9zZTpzLGNoaWxkcmVuOmkscmVmZXJlbmNlOmQsY2xhc3NOYW1lOm0sdGhlbWU6Xz11fT1lLHA9KDAsYy5lbnN1cmVOb3ROdWxsKSgoMCxvLnVzZUNvbnRleHQpKGEuRHJhd2VyQ29udGV4dCkpLFt2XT0oMCwKby51c2VTdGF0ZSkoKCgpPT4oMCxyLnJhbmRvbUhhc2gpKCkpKSxmPSgwLG8udXNlUmVmKShudWxsKSxiPSgwLG8udXNlQ29udGV4dCkoaC5DbG9zZURlbGVnYXRlQ29udGV4dCk7cmV0dXJuKDAsby51c2VMYXlvdXRFZmZlY3QpKCgoKT0+KCgwLGMuZW5zdXJlTm90TnVsbCkoZi5jdXJyZW50KS5mb2N1cyh7cHJldmVudFNjcm9sbDohMH0pLGIuc3Vic2NyaWJlKHAscykscC5hZGREcmF3ZXIodiksKCk9PntwLnJlbW92ZURyYXdlcih2KSxiLnVuc3Vic2NyaWJlKHAscyl9KSksW10pLG8uY3JlYXRlRWxlbWVudChsLlBvcnRhbCxudWxsLG8uY3JlYXRlRWxlbWVudCgiZGl2Iix7cmVmOmQsY2xhc3NOYW1lOm4oKSh1LndyYXAsdVtgcG9zaXRpb24ke3R9YF0pfSx2PT09cC5jdXJyZW50RHJhd2VyJiZvLmNyZWF0ZUVsZW1lbnQoImRpdiIse2NsYXNzTmFtZTp1LmJhY2tkcm9wLG9uQ2xpY2s6c30pLG8uY3JlYXRlRWxlbWVudChnLHtjbGFzc05hbWU6bigpKF8uZHJhd2VyLHVbYHBvc2l0aW9uJHt0fWBdLG0pLHJlZjpmLCJkYXRhLW5hbWUiOmVbImRhdGEtbmFtZSJdLCJkYXRhLXFhLWlkIjplWyJkYXRhLXFhLWlkIl19LGkpKSl9IWZ1bmN0aW9uKGUpe2UuTGVmdD0iTGVmdCIsZS5Cb3R0b209IkJvdHRvbSJ9KG18fChtPXt9KSk7Y29uc3QgZz0oMCxvLmZvcndhcmRSZWYpKCgoZSx0KT0+e2NvbnN0e2NsYXNzTmFtZTpzLC4uLml9PWU7cmV0dXJuIG8uY3JlYXRlRWxlbWVudChkLlRvdWNoU2Nyb2xsQ29udGFpbmVyLHtjbGFzc05hbWU6bigpKHUuZHJhd2VyLHMpLHRhYkluZGV4Oi0xLHJlZjp0LC4uLml9KX0pKX0sNjMyOTkyKGUsdCxzKXsidXNlIHN0cmljdCI7cy5kKHQse0Nsb3NlRGVsZWdhdGVDb250ZXh0OigpPT5ufSk7dmFyIG89cyg3Nzk0NzQpLGk9cygyNzYwMTkpO2NvbnN0IG49by5jcmVhdGVDb250ZXh0KGkuZ2xvYmFsQ2xvc2VEZWxlZ2F0ZSl9LDM4NzIzMShlLHQscyl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG8oZSx0LHM9e30pe3JldHVybiBPYmplY3QuYXNzaWduKHt9LGUsZnVuY3Rpb24oZSx0LHM9e30pe2NvbnN0IG89T2JqZWN0LmFzc2lnbih7fSx0KTtmb3IoY29uc3QgaSBvZiBPYmplY3Qua2V5cyh0KSl7Y29uc3Qgbj1zW2ldfHxpO24gaW4gZSYmKG9baV09W2Vbbl0sdFtpXV0uam9pbigiICIpKX1yZXR1cm4gb30oZSx0LHMpKX1zLmQodCx7bWVyZ2VUaGVtZXM6KCk9Pm99KX0sOTAwODQxKGUsdCxzKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbyhlLHQscyxvLGkpe2Z1bmN0aW9uIG4oaSl7aWYoZT5pLnRpbWVTdGFtcClyZXR1cm47Y29uc3Qgbj1pLnRhcmdldDt2b2lkIDAhPT1zJiZudWxsIT09dCYmbnVsbCE9PW4mJm4ub3duZXJEb2N1bWVudD09PW8mJih0LmNvbnRhaW5zKG4pfHxzKGkpKX1yZXR1cm4gaS5jbGljayYmby5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsbiwhMSksaS5tb3VzZURvd24mJm8uYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIixuLCExKSxpLnRvdWNoRW5kJiZvLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoZW5kIixuLCExKSxpLnRvdWNoU3RhcnQmJm8uYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsbiwhMSksKCk9PntvLnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIixuLCExKSxvLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsbiwhMSksby5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaGVuZCIsbiwhMSksby5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IixuLCExKX19cy5kKHQse2FkZE91dHNpZGVFdmVudExpc3RlbmVyOigpPT5vfSl9LDIzNjc2NShlLHQscyl7InVzZSBzdHJpY3QiO3MuZCh0LHt1c2VPdXRzaWRlRXZlbnQ6KCk9PmN9KTt2YXIgbz1zKDc3OTQ3NCksaT1zKDYxNjMxMSksbj1zKDkwMDg0MSk7ZnVuY3Rpb24gYyhlKXtjb25zdHtjbGljazp0LG1vdXNlRG93bjpzLHRvdWNoRW5kOmMsdG91Y2hTdGFydDpsLGhhbmRsZXI6cixyZWZlcmVuY2U6YX09ZSxoPSgwLG8udXNlUmVmKShudWxsKSxkPSgwLG8udXNlUmVmKSgidW5kZWZpbmVkIj09dHlwZW9mIHdpbmRvdz8wOm5ldyB3aW5kb3cuQ3VzdG9tRXZlbnQoInRpbWVzdGFtcCIpLnRpbWVTdGFtcCk7cmV0dXJuKDAsaS51c2VJc29tb3JwaGljTGF5b3V0RWZmZWN0KSgoKCk9Pntjb25zdCBlPXtjbGljazp0LG1vdXNlRG93bjpzLHRvdWNoRW5kOmMsdG91Y2hTdGFydDpsfSxvPWE/YS5jdXJyZW50OmguY3VycmVudDtyZXR1cm4oMCxuLmFkZE91dHNpZGVFdmVudExpc3RlbmVyKShkLmN1cnJlbnQsbyxyLGRvY3VtZW50LGUpfSksW3QscyxjLGwscl0pLGF8fGh9fSw4Njk4NDIoZSx0LHMpeyJ1c2Ugc3RyaWN0IjtzLmQodCx7U3dpdGNoR3JvdXBDb250ZXh0OigpPT5ufSk7dmFyIG89cyg3Nzk0NzQpLGk9cyg4NjIzODgpO2NvbnN0IG49KDAsby5jcmVhdGVDb250ZXh0KSh7Z2V0TmFtZTooKT0+IiIsZ2V0VmFsdWVzOigpPT5bXSxnZXRPbkNoYW5nZTooKT0+aS5kZWZhdWx0LHN1YnNjcmliZTppLmRlZmF1bHQsdW5zdWJzY3JpYmU6aS5kZWZhdWx0fSl9LDY1ODQ2KGUsdCxzKXsidXNlIHN0cmljdCI7cy5kKHQse21ha2VTd2l0Y2hHcm91cEl0ZW06KCk9Pm59KTt2YXIgbz1zKDc3OTQ3NCksaT1zKDg2OTg0Mik7ZnVuY3Rpb24gbihlKXt2YXIgdDtyZXR1cm4gdD1jbGFzcyBleHRlbmRzIG8uUHVyZUNvbXBvbmVudHtjb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyksdGhpcy5fb25DaGFuZ2U9ZT0+e3RoaXMuY29udGV4dC5nZXRPbkNoYW5nZSgpKGUudGFyZ2V0LnZhbHVlKX0sdGhpcy5fb25VcGRhdGU9ZT0+e2UuaW5jbHVkZXModGhpcy5wcm9wcy52YWx1ZSkmJnRoaXMuZm9yY2VVcGRhdGUoKX19Y29tcG9uZW50RGlkTW91bnQoKXt0aGlzLmNvbnRleHQuc3Vic2NyaWJlKHRoaXMuX29uVXBkYXRlKX1yZW5kZXIoKXtyZXR1cm4gby5jcmVhdGVFbGVtZW50KGUsey4uLnRoaXMucHJvcHMsbmFtZTp0aGlzLl9nZXROYW1lKCksb25DaGFuZ2U6dGhpcy5fb25DaGFuZ2UsY2hlY2tlZDp0aGlzLl9pc0NoZWNrZWQoKX0pfWNvbXBvbmVudFdpbGxVbm1vdW50KCl7dGhpcy5jb250ZXh0LnVuc3Vic2NyaWJlKHRoaXMuX29uVXBkYXRlKX1fZ2V0TmFtZSgpewpyZXR1cm4gdGhpcy5jb250ZXh0LmdldE5hbWUoKX1faXNDaGVja2VkKCl7cmV0dXJuIHRoaXMuY29udGV4dC5nZXRWYWx1ZXMoKS5pbmNsdWRlcyh0aGlzLnByb3BzLnZhbHVlKX19LHQuY29udGV4dFR5cGU9aS5Td2l0Y2hHcm91cENvbnRleHQsdH19LDE0OTM2NChlLHQscyl7InVzZSBzdHJpY3QiO3MuZCh0LHtTd2l0Y2hHcm91cDooKT0+bn0pO3ZhciBvPXMoNzc5NDc0KSxpPXMoODY5ODQyKTtjbGFzcyBuIGV4dGVuZHMgby5QdXJlQ29tcG9uZW50e2NvbnN0cnVjdG9yKGUpe3N1cGVyKGUpLHRoaXMuX3N1YnNjcmlwdGlvbnM9bmV3IFNldCx0aGlzLl9nZXROYW1lPSgpPT50aGlzLnByb3BzLm5hbWUsdGhpcy5fZ2V0VmFsdWVzPSgpPT50aGlzLnByb3BzLnZhbHVlcyx0aGlzLl9nZXRPbkNoYW5nZT0oKT0+dGhpcy5wcm9wcy5vbkNoYW5nZSx0aGlzLl9zdWJzY3JpYmU9ZT0+e3RoaXMuX3N1YnNjcmlwdGlvbnMuYWRkKGUpfSx0aGlzLl91bnN1YnNjcmliZT1lPT57dGhpcy5fc3Vic2NyaXB0aW9ucy5kZWxldGUoZSl9LHRoaXMuc3RhdGU9e3N3aXRjaEdyb3VwQ29udGV4dDp7Z2V0TmFtZTp0aGlzLl9nZXROYW1lLGdldFZhbHVlczp0aGlzLl9nZXRWYWx1ZXMsZ2V0T25DaGFuZ2U6dGhpcy5fZ2V0T25DaGFuZ2Usc3Vic2NyaWJlOnRoaXMuX3N1YnNjcmliZSx1bnN1YnNjcmliZTp0aGlzLl91bnN1YnNjcmliZX19fXJlbmRlcigpe3JldHVybiBvLmNyZWF0ZUVsZW1lbnQoaS5Td2l0Y2hHcm91cENvbnRleHQuUHJvdmlkZXIse3ZhbHVlOnRoaXMuc3RhdGUuc3dpdGNoR3JvdXBDb250ZXh0fSx0aGlzLnByb3BzLmNoaWxkcmVuKX1jb21wb25lbnREaWRVcGRhdGUoZSl7dGhpcy5fbm90aWZ5KHRoaXMuX2dldFVwZGF0ZXModGhpcy5wcm9wcy52YWx1ZXMsZS52YWx1ZXMpKX1fbm90aWZ5KGUpe3RoaXMuX3N1YnNjcmlwdGlvbnMuZm9yRWFjaCgodD0+dChlKSkpfV9nZXRVcGRhdGVzKGUsdCl7cmV0dXJuWy4uLnQsLi4uZV0uZmlsdGVyKChzPT50LmluY2x1ZGVzKHMpPyFlLmluY2x1ZGVzKHMpOmUuaW5jbHVkZXMocykpKX19fSwzMTQ3MjAoZSx0LHMpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBvKGUpe2NvbnN0e3BhZGRpbmdUb3A6dCxwYWRkaW5nQm90dG9tOnN9PXdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGUpO3JldHVyblt0LHNdLnJlZHVjZSgoKGUsdCk9PmUtTnVtYmVyKCh0fHwiIikucmVwbGFjZSgicHgiLCIiKSkpLGUuY2xpZW50SGVpZ2h0KX1mdW5jdGlvbiBpKGUsdD0hMSl7Y29uc3Qgcz1nZXRDb21wdXRlZFN0eWxlKGUpLG89W3MuaGVpZ2h0XTtyZXR1cm4iYm9yZGVyLWJveCIhPT1zLmJveFNpemluZyYmby5wdXNoKHMucGFkZGluZ1RvcCxzLnBhZGRpbmdCb3R0b20scy5ib3JkZXJUb3BXaWR0aCxzLmJvcmRlckJvdHRvbVdpZHRoKSx0JiZvLnB1c2gocy5tYXJnaW5Ub3Ascy5tYXJnaW5Cb3R0b20pLG8ucmVkdWNlKCgoZSx0KT0+ZSsocGFyc2VGbG9hdCh0KXx8MCkpLDApfWZ1bmN0aW9uIG4oZSx0PSExKXtjb25zdCBzPWdldENvbXB1dGVkU3R5bGUoZSksbz1bcy53aWR0aF07cmV0dXJuImJvcmRlci1ib3giIT09cy5ib3hTaXppbmcmJm8ucHVzaChzLnBhZGRpbmdMZWZ0LHMucGFkZGluZ1JpZ2h0LHMuYm9yZGVyTGVmdFdpZHRoLHMuYm9yZGVyUmlnaHRXaWR0aCksdCYmby5wdXNoKHMubWFyZ2luTGVmdCxzLm1hcmdpblJpZ2h0KSxvLnJlZHVjZSgoKGUsdCk9PmUrKHBhcnNlRmxvYXQodCl8fDApKSwwKX1zLmQodCx7Y29udGVudEhlaWdodDooKT0+byxvdXRlckhlaWdodDooKT0+aSxvdXRlcldpZHRoOigpPT5ufSl9LDQ0MDcxNShlLHQscyl7InVzZSBzdHJpY3QiO3MuZCh0LHtDb250ZXh0TWVudUNvbnRleHQ6KCk9Pm99KTtjb25zdCBvPXMoNzc5NDc0KS5jcmVhdGVDb250ZXh0KG51bGwpfSw1MjUxKGUsdCxzKXsidXNlIHN0cmljdCI7cy5kKHQse0hpbnQ6KCk9Pmx9KTt2YXIgbz1zKDc3OTQ3NCksaT1zKDkxNDQ4Nyksbj1zLm4oaSksYz1zKDkxNjI2KTtmdW5jdGlvbiBsKGUpe2NvbnN0e3RleHQ6dD0iIixjbGFzc05hbWU6c309ZTtyZXR1cm4gby5jcmVhdGVFbGVtZW50KCJzcGFuIix7Y2xhc3NOYW1lOm4oKShjLnNob3J0Y3V0LHMpfSx0KX19LDcyMTE2NyhlLHQscyl7InVzZSBzdHJpY3QiO3MuZCh0LHtDb250ZXh0TWVudUl0ZW06KCk9Pl99KTt2YXIgbz1zKDc3OTQ3NCksaT1zKDkxNDQ4Nyksbj1zLm4oaSksYz1zKDI3MzMxMCksbD1zKDY0OTE2Nikscj1zKDc3OTEwOCksYT1zKDUyNTEpLGg9cygzODA1NiksZD1zKDU4MDU5NiksdT1zKDQ2MjcwNCksbT1zKDEwNzk2Nik7ZnVuY3Rpb24gXyhlKXtjb25zdHtjbGFzc05hbWU6dCxpc1RpdGxlOnMsaXNMb2FkaW5nOmksaXNIb3ZlcmVkOl8sYWN0aXZlOmcsY2hlY2thYmxlOnAsZGlzYWJsZWQ6dixjaGVja2VkOmYsaWNvbjpiLGljb25DaGVja2VkOkMsaGludDpJLHN1Ykl0ZW1zOkUsbGFiZWw6eSxzdHlsZWRMYWJlbDprLG9uQ2xpY2s6eCxjaGlsZHJlbjpMLHRvb2xib3g6dyxqc3hMYWJlbDpOLHNpemU6Uz0ibm9ybWFsIn09ZSxNPSgwLG8udXNlQ29udGV4dCkoci5FbXB0eUljb25zQ29udGV4dCksRD0hIUUubGVuZ3RoO3JldHVybiBpP28uY3JlYXRlRWxlbWVudCgibGkiLHtjbGFzc05hbWU6bigpKHQsbS5pdGVtLG0ubG9hZGluZyxtW1NdKX0sby5jcmVhdGVFbGVtZW50KGwuTG9hZGVyLG51bGwpKTpvLmNyZWF0ZUVsZW1lbnQoImxpIix7Y2xhc3NOYW1lOm4oKSh0LG0uaXRlbSxtLmludGVyYWN0aXZlLHMmJm0udGl0bGUsdiYmbS5kaXNhYmxlZCxfJiZtLmhvdmVyZWQsZyYmbS5hY3RpdmUsTSYmbS5lbXB0eUljb25zLG1bU10pLG9uQ2xpY2s6eH0sby5jcmVhdGVFbGVtZW50KGMuSWNvbix7Y2xhc3NOYW1lOm4oKShtLmljb24pLGljb246ZnVuY3Rpb24oKXtpZihwJiZmKXJldHVybiBDfHxifHxoO3JldHVybiBifSgpfSksby5jcmVhdGVFbGVtZW50KCJzcGFuIix7Y2xhc3NOYW1lOm4oKShtLmxhYmVsKX0sIU4mJms/ay5tYXAoKCh7dGV4dDplLC4uLnR9LHMpPT5vLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtrZXk6cyxzdHlsZTp0fSxlKSkpOk4/P3kpLCEhdyYmby5jcmVhdGVFbGVtZW50KGMuSWNvbix7Cm9uQ2xpY2s6ZnVuY3Rpb24oKXt3JiZ3LmFjdGlvbigpfSxjbGFzc05hbWU6bS5yZW1vdmUsaWNvbjp1fSksIUQmJkkmJm8uY3JlYXRlRWxlbWVudChhLkhpbnQse2NsYXNzTmFtZTptLnNob3J0Y3V0LHRleHQ6SX0pLEQmJm8uY3JlYXRlRWxlbWVudChjLkljb24se2NsYXNzTmFtZTptLm5lc3RlZCxpY29uOmR9KSxMKX19LDMyMzgzMChlLHQscyl7InVzZSBzdHJpY3QiO3MuZCh0LHtDb250ZXh0TWVudUxpc3Q6KCk9Pl99KTt2YXIgbz1zKDc3OTQ3NCksaT1zKDk1NDQ3OCk7ZnVuY3Rpb24gbihlKXtyZXR1cm4gby5jcmVhdGVFbGVtZW50KCJsaSIse2NsYXNzTmFtZTppLnNlcGFyYXRvcn0pfXZhciBjPXMoNzIxMTY3KSxsPXMoNTY5Mzk4KSxyPXMoOTY0MjE0KSxhPXMoMjc2MDE5KTtjb25zdCBoPSgwLGwuaXNGZWF0dXJlRW5hYmxlZCkoImZvcmNlX2Rpc2FibGVfanN4X21lbnVfaXRlbXNfcmVuZGVyaW5nIik7ZnVuY3Rpb24gZChlKXtjb25zdCB0PWg/ZS5hY3Rpb246ZS5hY3Rpb24uY3VzdG9tKCk/P2UuYWN0aW9uLFtzLGldPSgwLG8udXNlU3RhdGUpKCgoKT0+dC5nZXRTdGF0ZSgpKSksW24sbF09KDAsby51c2VTdGF0ZSkoITEpLGQ9ISFzLnN1Ykl0ZW1zLmxlbmd0aCx1PWQmJm47cmV0dXJuKDAsby51c2VFZmZlY3QpKCgoKT0+e2NvbnN0IGU9KCk9PmkodC5nZXRTdGF0ZSgpKTtyZXR1cm4gdC5vblVwZGF0ZSgpLnN1YnNjcmliZShudWxsLGUpLCgpPT57dC5vblVwZGF0ZSgpLnVuc3Vic2NyaWJlKG51bGwsZSl9fSksW10pLG8uY3JlYXRlRWxlbWVudChjLkNvbnRleHRNZW51SXRlbSx7Li4ucyxvbkNsaWNrOmZ1bmN0aW9uKGUpe2lmKHMuZGlzYWJsZWR8fGUuZGVmYXVsdFByZXZlbnRlZClyZXR1cm47aWYoZClyZXR1cm4gdm9pZCBsKCEwKTtzLmRvTm90Q2xvc2VPbkNsaWNrfHwoMCxhLmdsb2JhbENsb3NlTWVudSkoKTt0LmV4ZWN1dGUoKX0saXNMb2FkaW5nOnMubG9hZGluZyxpc0hvdmVyZWQ6dX0sdSYmby5jcmVhdGVFbGVtZW50KHIuRHJhd2VyLHtvbkNsb3NlOm19LG8uY3JlYXRlRWxlbWVudChfLHtpdGVtczpzLnN1Ykl0ZW1zLHBhcmVudEFjdGlvbjp0LGNsb3NlTmVzdGVkOm19KSkpO2Z1bmN0aW9uIG0oZSl7ZSYmZS5wcmV2ZW50RGVmYXVsdCgpLGwoITEpfX12YXIgdT1zKDc3OTEwOCksbT1zKDMzNDU1MCk7ZnVuY3Rpb24gXyhlKXtjb25zdHtpdGVtczp0LHBhcmVudEFjdGlvbjpzLGNsb3NlTmVzdGVkOml9PWUsbD0hQm9vbGVhbihzKSYmdC5ldmVyeSgoZT0+IUJvb2xlYW4oInNlcGFyYXRvciIhPT1lLnR5cGUmJihlLmdldFN0YXRlKCkuaWNvbnx8ZS5nZXRTdGF0ZSgpLmNoZWNrYWJsZSkpKSk7cmV0dXJuIG8uY3JlYXRlRWxlbWVudCh1LkVtcHR5SWNvbnNDb250ZXh0LlByb3ZpZGVyLHt2YWx1ZTpsfSxvLmNyZWF0ZUVsZW1lbnQoInVsIixudWxsLHMmJm8uY3JlYXRlRWxlbWVudChvLkZyYWdtZW50LG51bGwsby5jcmVhdGVFbGVtZW50KGMuQ29udGV4dE1lbnVJdGVtLHtsYWJlbDpzLmdldFN0YXRlKCkubGFiZWwsaXNUaXRsZTohMCxhY3RpdmU6ITEsZGlzYWJsZWQ6ITEsc3ViSXRlbXM6W10sY2hlY2thYmxlOiExLGNoZWNrZWQ6ITEsZG9Ob3RDbG9zZU9uQ2xpY2s6ITEsaWNvbjptLG9uQ2xpY2s6aX0pLG8uY3JlYXRlRWxlbWVudChuLG51bGwpKSx0Lm1hcCgoZT0+e3N3aXRjaChlLnR5cGUpe2Nhc2UiYWN0aW9uIjpyZXR1cm4gby5jcmVhdGVFbGVtZW50KGQse2tleTplLmlkLGFjdGlvbjplfSk7Y2FzZSJzZXBhcmF0b3IiOnJldHVybiBvLmNyZWF0ZUVsZW1lbnQobix7a2V5OmUuaWR9KX19KSkpKX19LDc3OTEwOChlLHQscyl7InVzZSBzdHJpY3QiO3MuZCh0LHtFbXB0eUljb25zQ29udGV4dDooKT0+b30pO2NvbnN0IG89cyg3Nzk0NzQpLmNyZWF0ZUNvbnRleHQoITEpfSwzMjk2NjgoZSx0LHMpeyJ1c2Ugc3RyaWN0Ijt2YXIgbztmdW5jdGlvbiBpKGUpe2UuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoInJvdmluZy10YWJpbmRleDptYWluLWVsZW1lbnQiKSl9ZnVuY3Rpb24gbihlKXtlLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KCJyb3ZpbmctdGFiaW5kZXg6c2Vjb25kYXJ5LWVsZW1lbnQiKSl9cy5kKHQse2JlY29tZU1haW5FbGVtZW50OigpPT5pLGJlY29tZVNlY29uZGFyeUVsZW1lbnQ6KCk9Pm59KSxmdW5jdGlvbihlKXtlLk1haW5FbGVtZW50PSJyb3ZpbmctdGFiaW5kZXg6bWFpbi1lbGVtZW50IixlLlNlY29uZGFyeUVsZW1lbnQ9InJvdmluZy10YWJpbmRleDpzZWNvbmRhcnktZWxlbWVudCJ9KG98fChvPXt9KSl9LDMwNjYwMShlLHQscyl7InVzZSBzdHJpY3QiO3MuZCh0LHtDb2xvclNlbGVjdG9yOigpPT5JfSk7dmFyIG89cyg3Nzk0NzQpLGk9cyg3MTIxMzQpLG49cygyMzU3MjQpLGM9cygxNDkzNjQpLGw9cyg5ODM2MTYpLHI9cygzMjk2NjgpLGE9cyg5MTQ0ODcpLGg9cy5uKGEpLGQ9cyg2NTg0NiksdT1zKDI3MzMxMCksbT1zKDE4NTI3MSksXz1zKDQ0MDcxNSksZz1zKDE4MjMwOCkscD1zKDI3NDg1MSksdj1zKDIwMzMwOSksZj1zKDc1MTg2Myk7Y29uc3QgYj0oMCxkLm1ha2VTd2l0Y2hHcm91cEl0ZW0pKChmdW5jdGlvbihlKXtjb25zdHtjbGFzc05hbWU6dCx2YWx1ZTpuPWkuTGlzdENvbG9yLlJlZCxuYW1lOmMsY2hlY2tlZDpsfT1lLFtyLGFdPSgwLGcudXNlUm92aW5nVGFiaW5kZXhFbGVtZW50KShudWxsKSxkPSgwLG8udXNlQ29udGV4dCkoXy5Db250ZXh0TWVudUNvbnRleHQpLGI9ZD8udHlwZT8/Im1lbnUiLEM9bjtyZXR1cm4gby5jcmVhdGVFbGVtZW50KCJsYWJlbCIse3JlZjpyLHRhYkluZGV4OmEsY2xhc3NOYW1lOmgoKSh0LGYud3JhcCwiZHJhd2VyIj09PWImJmYubGFyZ2UpLCJkYXRhLWNvbG9yIjpDLHJvbGU6Im1lbnVpdGVtIiwiYXJpYS1sYWJlbCI6bS50KG51bGwse3JlcGxhY2U6e2NvbG9yOkN9fSxzKDUwNjkxNSkpLCJhcmlhLWNoZWNrZWQiOmx9LG8uY3JlYXRlRWxlbWVudCgiaW5wdXQiLHtjbGFzc05hbWU6Zi5pbnB1dCx0eXBlOiJyYWRpbyIsbmFtZTpjLHZhbHVlOm4sY2hlY2tlZDpsLG9uQ2hhbmdlOmUub25DaGFuZ2Usb25DbGljazpsP2Z1bmN0aW9uKCl7CmUub25DbGlja0lmQ2hlY2tlZCYmZS5vbkNsaWNrSWZDaGVja2VkKG4pfTp2b2lkIDB9KSxvLmNyZWF0ZUVsZW1lbnQoImRpdiIse2NsYXNzTmFtZTpoKCkoZi5ib3gsZltDXSwiZHJhd2VyIj09PWImJmYubGFyZ2UpfSxsP28uY3JlYXRlRWxlbWVudCh1Lkljb24se2ljb246cH0pOm8uY3JlYXRlRWxlbWVudCgiZGl2Iix7Y2xhc3NOYW1lOmYucGlja2VyRG90fSxvLmNyZWF0ZUVsZW1lbnQodS5JY29uLHtjbGFzc05hbWU6Zi5ob3ZlckRvdCxpY29uOnZ9KSkpKX0pKSxDPVszOSwzNywxMywzMiwyN107ZnVuY3Rpb24gSShlKXtjb25zdHtidXR0b25DbGFzc05hbWU6dCx2YWx1ZTpzLG9uU2VsZWN0ZWRDbGljazphLGZyb21LZXlib2FyZDpofT1lLGQ9KDAsby51c2VSZWYpKG51bGwpLHU9KDAsby51c2VDYWxsYmFjaykoKGU9PntpZighZC5jdXJyZW50fHxlLmRlZmF1bHRQcmV2ZW50ZWQpcmV0dXJuO2NvbnN0IHQ9KDAsbi5oYXNoRnJvbUV2ZW50KShlKTtpZighQy5pbmNsdWRlcyh0KSlyZXR1cm47ZS5wcmV2ZW50RGVmYXVsdCgpO2NvbnN0IG89KDAsbC5xdWVyeUZvY3VzYWJsZUVsZW1lbnRzKShkLmN1cnJlbnQpLnNvcnQobC5uYXZpZ2F0aW9uT3JkZXJDb21wYXJhdG9yKSxjPW8uZmluZEluZGV4KChlPT5lPT09ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCkpO2lmKC0xPT09YylyZXR1cm47Y29uc3QgYT1vW2NdO2xldCBoO3N3aXRjaCh0KXtjYXNlIDEzOmNhc2UgMzI6XyhhLmRhdGFzZXQuY29sb3J8fGkuTGlzdENvbG9yLlJlZCk7YnJlYWs7Y2FzZSAyNzpfKHMpfXN3aXRjaCgoMCxsLm1hcEtleUNvZGVUb0RpcmVjdGlvbikodCkpe2Nhc2UiaW5saW5lTmV4dCI6aD1vW2MrMV18fG9bMF07YnJlYWs7Y2FzZSJpbmxpbmVQcmV2IjpoPW9bYy0xXXx8b1tvLmxlbmd0aC0xXX1oIGluc3RhbmNlb2YgSFRNTExhYmVsRWxlbWVudCYmKCgwLHIuYmVjb21lU2Vjb25kYXJ5RWxlbWVudCkoYSksKDAsci5iZWNvbWVNYWluRWxlbWVudCkoaCksaC5mb2N1cygpKX0pLFtdKTsoMCxvLnVzZUxheW91dEVmZmVjdCkoKCgpPT57aWYoIWgpcmV0dXJuO2NvbnN0IGU9ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCx0PWQuY3VycmVudDtpZighdClyZXR1cm47Y29uc3Rbc109KDAsbC5xdWVyeUZvY3VzYWJsZUVsZW1lbnRzKSh0KS5zb3J0KGwubmF2aWdhdGlvbk9yZGVyQ29tcGFyYXRvcik7cmV0dXJuIHM/KCgwLHIuYmVjb21lTWFpbkVsZW1lbnQpKHMpLHMuZm9jdXMoKSwoKT0+e2UgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCYmZS5mb2N1cygpfSk6dm9pZCAwfSksW10pO2NvbnN0IG09aS5MSVNUX0NPTE9SUy5tYXAoKChlLHMpPT5vLmNyZWF0ZUVsZW1lbnQoYix7a2V5OnMsY2xhc3NOYW1lOnQsb25DbGlja0lmQ2hlY2tlZDphLHZhbHVlOmV9KSkpO3JldHVybiBvLmNyZWF0ZUVsZW1lbnQoIm1lbnUiLHtyZWY6ZCxvbktleURvd246dX0sby5jcmVhdGVFbGVtZW50KGMuU3dpdGNoR3JvdXAse25hbWU6ImNvbG9yLXNlbGVjdG9yIixvbkNoYW5nZTpfLHZhbHVlczp2b2lkIDAhPT1zP1tzXTpbXX0sbSkpO2Z1bmN0aW9uIF8odCl7ZS5vbkNoYW5nZSYmdm9pZCAwIT09dCYmZS5vbkNoYW5nZSh0KX19fSw4MzQxODgoZSx0LHMpeyJ1c2Ugc3RyaWN0IjtzLmQodCx7UG9wdXBDb2xvclNlbGVjdG9yOigpPT5JfSk7dmFyIG89cyg3Nzk0NzQpLGk9cyg2MDc4MzIpLG49cyg2MDk1MjgpLGM9cyg0MDYxMTApLGw9cygzMTM3NzIpLHI9cyg5NjQyMTQpLGE9cygzMjM4MzApLGg9cyg0NDA3MTUpLGQ9cyg5NjkxNjgpLHU9cyg1ODU0OCksbT1zKDMwNjYwMSksXz1zKDM2MzI2OSksZz1zKDU1ODk3Mik7Y2xhc3MgcCBleHRlbmRzIG8uUHVyZUNvbXBvbmVudHtjb21wb25lbnREaWRNb3VudCgpe2RvY3VtZW50LmRvY3VtZW50RWxlbWVudCYmKF8ubW9iaWxldG91Y2g/ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLHRoaXMuX29uVG91Y2hTdGFydCk6KHRoaXMucHJvcHMuZWxlbS5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIix0aGlzLl9vblRhcmdldE1vdXNlTGVhdmUpLGRvY3VtZW50LmJvZHkuYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsIix0aGlzLnByb3BzLmhpZGUpKSl9Y29tcG9uZW50V2lsbFVubW91bnQoKXtkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQmJihfLm1vYmlsZXRvdWNoP2RvY3VtZW50LmRvY3VtZW50RWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0Iix0aGlzLl9vblRvdWNoU3RhcnQpOnRoaXMucHJvcHMuZWxlbSYmKHRoaXMucHJvcHMuZWxlbS5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIix0aGlzLl9vblRhcmdldE1vdXNlTGVhdmUpLGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJzY3JvbGwiLHRoaXMucHJvcHMuaGlkZSkpKX1yZW5kZXIoKXtjb25zdCBlPXt0b3A6MH07aWYodGhpcy5wcm9wcy5lbGVtKXtjb25zdCB0PXRoaXMucHJvcHMuZWxlbS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtlLnRvcD10LnRvcCt0LmhlaWdodC8yLCgwLGQuaXNSdGwpKCk/ZS5yaWdodD13aW5kb3cuaW5uZXJXaWR0aC10LmxlZnQ6ZS5sZWZ0PXQubGVmdCt0LndpZHRofWVsc2UgZS5sZWZ0PTA7cmV0dXJuIG8uY3JlYXRlRWxlbWVudCh1LlBvcnRhbCxudWxsLG8uY3JlYXRlRWxlbWVudCgiZGl2Iix7c3R5bGU6ZSxjbGFzc05hbWU6Zy5wb3B1cCxyZWY6dGhpcy5fc2V0UG9wVXBFbGVtLG9uTW91c2VMZWF2ZTpfLm1vYmlsZXRvdWNoP3ZvaWQgMDp0aGlzLl9vblBvcFVwTW91c2VMZWF2ZX0sby5jcmVhdGVFbGVtZW50KCJkaXYiLHtjbGFzc05hbWU6Zy53cmFwcGVyfSxvLmNyZWF0ZUVsZW1lbnQoImRpdiIse2NsYXNzTmFtZTpnLnNlbGVjdG9yfSxvLmNyZWF0ZUVsZW1lbnQoImRpdiIse2NsYXNzTmFtZTpnLmFycm93TGVmdH0pLG8uY3JlYXRlRWxlbWVudChtLkNvbG9yU2VsZWN0b3Ise2J1dHRvbkNsYXNzTmFtZTpnLmNvbG9yU2VsZWN0QnV0dG9uLHZhbHVlOnRoaXMucHJvcHMuY3VycmVudENvbG9yLGZyb21LZXlib2FyZDp0aGlzLnByb3BzLmZyb21LZXlib2FyZCxvbkNoYW5nZTp0aGlzLl9vbkNoYW5nZX0pKSkpKQp9Y29uc3RydWN0b3IoKXtzdXBlciguLi5hcmd1bWVudHMpLHRoaXMuX3BvcFVwRWxlbT1udWxsLHRoaXMuX29uQ2hhbmdlPWU9Pnt0aGlzLnByb3BzLm9uU2VsZWN0Q29sb3IoZSksdGhpcy5wcm9wcy5oaWRlKCl9LHRoaXMuX29uVGFyZ2V0TW91c2VMZWF2ZT1lPT57Y29uc3QgdD0hIWUucmVsYXRlZFRhcmdldC5ub2RlTmFtZSxzPWUucmVsYXRlZFRhcmdldD09PXRoaXMuX3BvcFVwRWxlbSxvPXRoaXMuX3BvcFVwRWxlbSYmdCYmdGhpcy5fcG9wVXBFbGVtLmNvbnRhaW5zKGUucmVsYXRlZFRhcmdldCk7c3x8b3x8dGhpcy5wcm9wcy5oaWRlKCl9LHRoaXMuX29uUG9wVXBNb3VzZUxlYXZlPWU9Pntjb25zdCB0PSEhZS5uYXRpdmVFdmVudC5yZWxhdGVkVGFyZ2V0Lm5vZGVOYW1lLHM9ZS5uYXRpdmVFdmVudC5yZWxhdGVkVGFyZ2V0PT09dGhpcy5wcm9wcy5lbGVtLG89dCYmdGhpcy5wcm9wcy5lbGVtLmNvbnRhaW5zKGUubmF0aXZlRXZlbnQucmVsYXRlZFRhcmdldCk7c3x8b3x8dGhpcy5wcm9wcy5oaWRlKCl9LHRoaXMuX29uVG91Y2hTdGFydD1lPT57Y29uc3QgdD0hIWUudGFyZ2V0Lm5vZGVOYW1lLHM9ZS50YXJnZXQ9PT10aGlzLnByb3BzLmVsZW0sbz1lLnRhcmdldD09PXRoaXMuX3BvcFVwRWxlbSxpPXQmJnRoaXMucHJvcHMuZWxlbS5jb250YWlucyhlLnRhcmdldCksbj10aGlzLl9wb3BVcEVsZW0mJnQmJnRoaXMuX3BvcFVwRWxlbS5jb250YWlucyhlLnRhcmdldCk7c3x8aXx8b3x8bnx8dGhpcy5wcm9wcy5oaWRlKCl9LHRoaXMuX3NldFBvcFVwRWxlbT1lPT57dGhpcy5fcG9wVXBFbGVtPWV9fX1mdW5jdGlvbiB2KGUpe2NvbnN0e2FjdGlvbnM6dCwuLi5zfT1lO3JldHVybiBvLmNyZWF0ZUVsZW1lbnQoYy5NYXRjaE1lZGlhLHtydWxlOm4uRGlhbG9nQnJlYWtwb2ludHMuVGFibGV0U21hbGx9LChlPT5lJiZ0P28uY3JlYXRlRWxlbWVudChsLkRyYXdlck1hbmFnZXIsbnVsbCxvLmNyZWF0ZUVsZW1lbnQoaC5Db250ZXh0TWVudUNvbnRleHQuUHJvdmlkZXIse3ZhbHVlOnt0eXBlOiJkcmF3ZXIifX0sby5jcmVhdGVFbGVtZW50KHIuRHJhd2VyLHtvbkNsb3NlOnMuaGlkZSxwb3NpdGlvbjoiQm90dG9tIn0sby5jcmVhdGVFbGVtZW50KGEuQ29udGV4dE1lbnVMaXN0LHtpdGVtczp0fSkpKSk6by5jcmVhdGVFbGVtZW50KHAsey4uLnN9KSkpfXZhciBmPXMoNTcxMzAwKTtsZXQgYj1udWxsLEM9bnVsbDt2YXIgSTshZnVuY3Rpb24oZSl7ZnVuY3Rpb24gdCgpe2ImJkM/LnVubW91bnQoKX1lLnNob3c9ZnVuY3Rpb24oZSl7Ynx8KGI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IikpLHQoKSxDPSgwLGYuY3JlYXRlUmVhY3RSb290KShvLmNyZWF0ZUVsZW1lbnQoaS5TbG90Q29udGV4dC5Qcm92aWRlcix7dmFsdWU6ZS5tYW5hZ2VyfHxudWxsfSxvLmNyZWF0ZUVsZW1lbnQodix7Li4uZSxoaWRlOnR9KSksYil9LGUuaGlkZT10fShJfHwoST17fSkpfSw4NTU5ODkoZSx0LHMpeyJ1c2Ugc3RyaWN0IjtzLmQodCx7Y3JlYXRlU2VsZWN0YWJsZUxpc3Q6KCk9PnB9KTtjbGFzcyBve2NvbnN0cnVjdG9yKGUpe3RoaXMuX2NvbGw9ZX1nZXRJdGVtQnlJZHgoZSl7cmV0dXJuIHRoaXMuX2NvbGwuaXRlbShlKX1nZXRJdGVtcygpe3JldHVybiBBcnJheS5mcm9tKHRoaXMuX2NvbGwpfWdldEZpcnN0SXRlbSgpe3JldHVybiB0aGlzLmdldEl0ZW1CeUlkeCgwKX1nZXRMYXN0SXRlbSgpe2NvbnN0IGU9dGhpcy5fY29sbC5sZW5ndGg7cmV0dXJuIHRoaXMuZ2V0SXRlbUJ5SWR4KGUtMSl9Z2V0SXRlbUlkeChlKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLmZpbmRJbmRleC5jYWxsKHRoaXMuX2NvbGwsKHQ9PnQ9PT1lKSl9Z2V0TGVuZ3RoKCl7cmV0dXJuIHRoaXMuX2NvbGwubGVuZ3RofWNvbnRhaW5zKGUpe3JldHVybi0xIT09dGhpcy5nZXRJdGVtSWR4KGUpfX12YXIgaSxuPXMoNzI3MDkpOyFmdW5jdGlvbihlKXtlW2UuUHJldj0tMV09IlByZXYiLGVbZS5OZXh0PTFdPSJOZXh0In0oaXx8KGk9e30pKTtjb25zdCBjPSJjdXJzb3IiO2NsYXNzIGx7Y29uc3RydWN0b3IoZSl7dGhpcy5fZW5hYmxlRm9jdXNET01FbGVtZW50PSExLHRoaXMuX2xpc3Q9ZS5saXN0LHRoaXMuX2l0ZW1zPW5ldyBvKHRoaXMuX2xpc3QuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShlLmxpc3RJdGVtQ2xhc3MpKSx0aGlzLl9mb2N1c2VkPW5ldyBvKHRoaXMuX2xpc3QuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShlLmZvY3VzZWRMaXN0SXRlbUNsYXNzKSksdGhpcy5fc2VsZWN0ZWQ9bmV3IG8odGhpcy5fbGlzdC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKGUuc2VsZWN0ZWRMaXN0SXRlbUNsYXNzKSksdGhpcy5fY3Vyc29yPW5ldyBvKHRoaXMuX2xpc3QuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShjKSksdGhpcy5fc2VsZWN0ZWRMaXN0SXRlbUNsYXNzPWUuc2VsZWN0ZWRMaXN0SXRlbUNsYXNzLHRoaXMuX2ZvY3VzZWRMaXN0SXRlbUNsYXNzPWUuZm9jdXNlZExpc3RJdGVtQ2xhc3MsdGhpcy5fb25TZWxlY3Q9ZS5vblNlbGVjdCx0aGlzLl9vbk5hdmlnYXRlPWUub25OYXZpZ2F0ZSx0aGlzLl9vbkNvbmZpcm09ZS5vbkNvbmZpcm0sdGhpcy5fb25EZWxldGU9ZS5vbkRlbGV0ZSx0aGlzLl9tb3VzZUFjdGlvbnM9bmV3IE1hcCx0aGlzLl9jeWNsaWNOYXZpZ2F0aW9uRGlzYWJsZWQ9Qm9vbGVhbihlLmN5Y2xpY05hdmlnYXRpb25EaXNhYmxlZCksdGhpcy5fZW5hYmxlRm9jdXNET01FbGVtZW50PUJvb2xlYW4oZS5lbmFibGVGb2N1c0RPTUVsZW1lbnQpLHRoaXMuaG90a2V5cz0oMCxuLmNyZWF0ZUdyb3VwKSh7ZGVzYzoiU2VsZWN0YWJsZSBsaXN0In0pLGUubW9kZXMmJmUubW9kZXMuZm9yRWFjaCgodD0+bmV3IHQoe3NlbGVjdGlvbjp0aGlzLGxvY2FsSG90a2V5RWxlbWVudDp0aGlzLl9saXN0LGdsb2JhbEhvdGtleUVsZW1lbnQ6ZS5nbG9iYWxIb3RrZXlzP251bGw6dGhpcy5fbGlzdH0pKSl9c2VsZWN0SXRlbShlKXtlLmNsYXNzTGlzdC5hZGQodGhpcy5fc2VsZWN0ZWRMaXN0SXRlbUNsYXNzKX11bnNlbGVjdEl0ZW0oZSl7ZS5jbGFzc0xpc3QucmVtb3ZlKHRoaXMuX3NlbGVjdGVkTGlzdEl0ZW1DbGFzcyl9dmlzdWFsbHlGb2N1c0l0ZW0oZSl7CnRoaXMucmVtb3ZlRm9jdXMoKSxlLmNsYXNzTGlzdC5hZGQodGhpcy5fZm9jdXNlZExpc3RJdGVtQ2xhc3MpLHRoaXMuc2V0Q3Vyc29yKGUpfWZvY3VzSXRlbShlKXt0aGlzLnZpc3VhbGx5Rm9jdXNJdGVtKGUpLHRoaXMuX2VuYWJsZUZvY3VzRE9NRWxlbWVudCYmZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiZ0aGlzLl9mb2N1c0RPTUVsZW1lbnQoZSl9Z2V0Rm9jdXNlZEl0ZW1JZHgoKXtjb25zdCBlPXRoaXMuX2ZvY3VzZWQuZ2V0Rmlyc3RJdGVtKCk7cmV0dXJuIGU/dGhpcy5faXRlbXMuZ2V0SXRlbUlkeChlKTotMX1nZXRGb2N1c2VkSXRlbSgpe3JldHVybiB0aGlzLl9mb2N1c2VkLmdldEZpcnN0SXRlbSgpfWlzU2VsZWN0ZWQoZSl7cmV0dXJuIHRoaXMuX3NlbGVjdGVkLmNvbnRhaW5zKGUpfWlzRm9jdXNlZChlKXtyZXR1cm4gdGhpcy5fZm9jdXNlZC5jb250YWlucyhlKX1pc0xpc3RJdGVtKGUpe3JldHVybiB0aGlzLl9pdGVtcy5jb250YWlucyhlKX1yZW1vdmVTZWxlY3Rpb25zKCl7dGhpcy5fc2VsZWN0ZWQuZ2V0SXRlbXMoKS5mb3JFYWNoKChlPT5lLmNsYXNzTGlzdC5yZW1vdmUodGhpcy5fc2VsZWN0ZWRMaXN0SXRlbUNsYXNzKSkpfXJlbW92ZUZvY3VzKCl7dGhpcy5fZm9jdXNlZC5nZXRJdGVtcygpLmZvckVhY2goKGU9PmUuY2xhc3NMaXN0LnJlbW92ZSh0aGlzLl9mb2N1c2VkTGlzdEl0ZW1DbGFzcykpKX1tb3ZlKGUsdCxzKXtjb25zdCBvPWU/dGhpcy5faXRlbXMuZ2V0SXRlbUlkeChlKTotMTtsZXQgaTtpPSJudW1iZXIiPT10eXBlb2YgdD90aGlzLl9pdGVtcy5nZXRJdGVtQnlJZHgodGhpcy5fY2FsY05leHRJdGVtSWR4KG8sdCkpOnQsaSYmKHMoaSxlKSx0aGlzLl9zY3JvbGxJZk5vdFZpc2libGUoaSkpfWdldFNlbGVjdGVkSXRlbXMoKXtyZXR1cm4gdGhpcy5fc2VsZWN0ZWQuZ2V0SXRlbXMoKX1nZXRMaXN0KCl7cmV0dXJuIHRoaXMuX2xpc3R9Z2V0SXRlbXNDb2xsZWN0aW9uKCl7cmV0dXJuIHRoaXMuX2l0ZW1zfWdldFNlbGVjdGVkQ29sbGVjdGlvbigpe3JldHVybiB0aGlzLl9zZWxlY3RlZH1zZXRDdXJzb3IoZSl7dGhpcy5yZW1vdmVDdXJzb3IoKSxlLmNsYXNzTGlzdC5hZGQoYyl9cmVtb3ZlQ3Vyc29yKCl7dGhpcy5fY3Vyc29yLmdldEl0ZW1zKCkuZm9yRWFjaCgoZT0+ZS5jbGFzc0xpc3QucmVtb3ZlKGMpKSl9Z2V0Q3Vyc29ySXRlbSgpe3JldHVybiB0aGlzLl9jdXJzb3IuZ2V0Rmlyc3RJdGVtKCl9Z2V0Q3Vyc29ySXRlbUlkeCgpe2NvbnN0IGU9dGhpcy5nZXRDdXJzb3JJdGVtKCk7cmV0dXJuIGU/dGhpcy5faXRlbXMuZ2V0SXRlbUlkeChlKTotMX1vblNlbGVjdChlLHQpe3RoaXMuX29uU2VsZWN0JiZ0aGlzLl9vblNlbGVjdCh7Y3Vyc29yOnQsaXRlbXM6dGhpcy5nZXRTZWxlY3RlZEl0ZW1zKCksYWN0aW9uOmV9KX1vbk5hdmlnYXRlKGUsdCl7dGhpcy5fb25OYXZpZ2F0ZSYmdGhpcy5fb25OYXZpZ2F0ZSh7Y3Vyc29yOmUsY3Vyc29ySWR4OnRoaXMuZ2V0Q3Vyc29ySXRlbUlkeCgpLGl0ZW1zOltlXSxhY3Rpb246dH0pfW9uQ29uZmlybShlLHQpe3RoaXMuX29uQ29uZmlybSYmdGhpcy5fb25Db25maXJtKHtjdXJzb3I6ZSxpdGVtczpbZV0sYWN0aW9uOnR9KX1vbkRlbGV0ZShlLHQscyl7dGhpcy5fb25EZWxldGUmJnRoaXMuX29uRGVsZXRlKHtjdXJzb3I6cyxpdGVtczplLGFjdGlvbjp0fSl9cmVnaXN0ZXJNb3VzZUFjdGlvbihlLHQpe3RoaXMuX21vdXNlQWN0aW9ucy5zZXQoZSx0KX1kaXNwYXRjaE1vdXNlRXZlbnQoZSx0KXtjb25zdCBzPXRoaXMuX21vdXNlQWN0aW9ucy5nZXQoZSk7cyYmcyh0KX1kZWxlZ2F0ZUNsaWNrKGUpe3JldHVybiB0PT57aWYoIXQuZGVmYXVsdFByZXZlbnRlZCl7Y29uc3Qgcz10aGlzLl9saXN0LmNvbnRhaW5zKHQudGFyZ2V0KTtsZXQgbz10LnRhcmdldDtmb3IoO3MmJm8hPT10aGlzLl9saXN0Oyl7aWYobyYmdGhpcy5pc0xpc3RJdGVtKG8pKXJldHVybiB2b2lkIGUobyk7bz1vJiZvLnBhcmVudEVsZW1lbnR9fX19Y2xlYXIoKXt0aGlzLnJlbW92ZVNlbGVjdGlvbnMoKSx0aGlzLnJlbW92ZUZvY3VzKCksdGhpcy5yZW1vdmVDdXJzb3IoKX1kZXN0cm95KCl7dGhpcy5ob3RrZXlzLmRlc3Ryb3koKSxkZWxldGUgdGhpcy5fbGlzdCxkZWxldGUgdGhpcy5faXRlbXMsZGVsZXRlIHRoaXMuX3NlbGVjdGVkLGRlbGV0ZSB0aGlzLl9mb2N1c2VkLGRlbGV0ZSB0aGlzLl9jdXJzb3IsZGVsZXRlIHRoaXMuX21vdXNlQWN0aW9uc31fc2Nyb2xsSWZOb3RWaXNpYmxlKGUpe2NvbnN0IHQ9dGhpcy5fbGlzdC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxzPWUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksbz10LnRvcCxpPXQuYm90dG9tLG49cy50b3AsYz1zLmJvdHRvbTtuPG8/dGhpcy5fbGlzdC5zY3JvbGxUb3AtPW8tbjpjPmkmJih0aGlzLl9saXN0LnNjcm9sbFRvcCs9Yy1pKX1fY2FsY05leHRJdGVtSWR4KGUsdCl7Y29uc3Qgcz10aGlzLl9pdGVtcy5nZXRMZW5ndGgoKS0xO2xldCBvPWUrdDtpZihvPDApe2lmKHRoaXMuX2N5Y2xpY05hdmlnYXRpb25EaXNhYmxlZClyZXR1cm4tMTtvPXN9aWYobz5zKXtpZih0aGlzLl9jeWNsaWNOYXZpZ2F0aW9uRGlzYWJsZWQpcmV0dXJuLTE7bz0wfXJldHVybiBvfV9mb2N1c0RPTUVsZW1lbnQoZSl7ZS5mb2N1cygpfX12YXIgcj1zKDIzNTcyNCk7Y2xhc3MgYXtjb25zdHJ1Y3RvcihlKXt0aGlzLl9mb2N1c05leHQ9KCk9PntpZighdGhpcy5faXNWYWxpZE5hdmlnYXRpb24oKSlyZXR1cm47Y29uc3QgZT10aGlzLl9zZWxlY3Rpb24uZ2V0Q3Vyc29ySXRlbSgpO3RoaXMuX3NlbGVjdGlvbi5tb3ZlKGUsaS5OZXh0LHRoaXMuX2ZvY3VzSXRlbS5iaW5kKHRoaXMsImRvd24iKSl9LHRoaXMuX2ZvY3VzUHJldj0oKT0+e2lmKCF0aGlzLl9pc1ZhbGlkTmF2aWdhdGlvbigpKXJldHVybjtjb25zdCBlPXRoaXMuX3NlbGVjdGlvbi5nZXRDdXJzb3JJdGVtKCk7dGhpcy5fc2VsZWN0aW9uLm1vdmUoZSxpLlByZXYsdGhpcy5fZm9jdXNJdGVtLmJpbmQodGhpcywidXAiKSl9LHRoaXMuX2ZvY3VzRmlyc3Q9KCk9PntpZighdGhpcy5faXNWYWxpZE5hdmlnYXRpb24oKSlyZXR1cm4KO2NvbnN0IGU9dGhpcy5fc2VsZWN0aW9uLmdldEl0ZW1zQ29sbGVjdGlvbigpLmdldEZpcnN0SXRlbSgpLHQ9dGhpcy5fc2VsZWN0aW9uLmdldEZvY3VzZWRJdGVtKCk7dGhpcy5fc2VsZWN0aW9uLm1vdmUodCxlLHRoaXMuX2ZvY3VzSXRlbS5iaW5kKHRoaXMsImhvbWUiKSl9LHRoaXMuX2ZvY3VzTGFzdD0oKT0+e2lmKCF0aGlzLl9pc1ZhbGlkTmF2aWdhdGlvbigpKXJldHVybjtjb25zdCBlPXRoaXMuX3NlbGVjdGlvbi5nZXRJdGVtc0NvbGxlY3Rpb24oKS5nZXRMYXN0SXRlbSgpLHQ9dGhpcy5fc2VsZWN0aW9uLmdldEZvY3VzZWRJdGVtKCk7dGhpcy5fc2VsZWN0aW9uLm1vdmUodCxlLHRoaXMuX2ZvY3VzSXRlbS5iaW5kKHRoaXMsImVuZCIpKX0sdGhpcy5fc2VsZWN0aW9uPWUuc2VsZWN0aW9uLHRoaXMuX3NlbGVjdGlvbi5yZWdpc3Rlck1vdXNlQWN0aW9uKCJjbGljayIsdGhpcy5fc2VsZWN0aW9uLmRlbGVnYXRlQ2xpY2sodGhpcy5fZm9jdXNJdGVtLmJpbmQodGhpcywiY2xpY2siKSkpLHRoaXMuX3NlbGVjdGlvbi5ob3RrZXlzLmFkZCh7ZGVzYzoiRm9jdXMgUHJldmlvdXMiLGhvdGtleTozOCxoYW5kbGVyOnRoaXMuX2ZvY3VzUHJldixlbGVtZW50OmUuZ2xvYmFsSG90a2V5RWxlbWVudCxpc1JlcGVhdEFjY2VwdGVkOiEwfSksdGhpcy5fc2VsZWN0aW9uLmhvdGtleXMuYWRkKHtkZXNjOiJGb2N1cyBOZXh0Iixob3RrZXk6NDAsaGFuZGxlcjp0aGlzLl9mb2N1c05leHQsZWxlbWVudDplLmdsb2JhbEhvdGtleUVsZW1lbnQsaXNSZXBlYXRBY2NlcHRlZDohMH0pLHRoaXMuX3NlbGVjdGlvbi5ob3RrZXlzLmFkZCh7ZGVzYzoiRm9jdXMgUHJldmlvdXMiLGhvdGtleTpyLk1vZGlmaWVycy5TaGlmdCszMixoYW5kbGVyOnRoaXMuX2ZvY3VzUHJldixlbGVtZW50OmUuZ2xvYmFsSG90a2V5RWxlbWVudCxpc1JlcGVhdEFjY2VwdGVkOiEwfSksdGhpcy5fc2VsZWN0aW9uLmhvdGtleXMuYWRkKHtkZXNjOiJGb2N1cyBOZXh0Iixob3RrZXk6MzIsaGFuZGxlcjp0aGlzLl9mb2N1c05leHQsZWxlbWVudDplLmdsb2JhbEhvdGtleUVsZW1lbnQsaXNSZXBlYXRBY2NlcHRlZDohMH0pLHRoaXMuX3NlbGVjdGlvbi5ob3RrZXlzLmFkZCh7ZGVzYzoiRm9jdXMgRmlyc3QiLGhvdGtleTozNixoYW5kbGVyOnRoaXMuX2ZvY3VzRmlyc3QsZWxlbWVudDplLmdsb2JhbEhvdGtleUVsZW1lbnR9KSx0aGlzLl9zZWxlY3Rpb24uaG90a2V5cy5hZGQoe2Rlc2M6IkZvY3VzIExhc3QiLGhvdGtleTozNSxoYW5kbGVyOnRoaXMuX2ZvY3VzTGFzdCxlbGVtZW50OmUuZ2xvYmFsSG90a2V5RWxlbWVudH0pfV9mb2N1c0l0ZW0oZSx0KXt0aGlzLl9zZWxlY3Rpb24ucmVtb3ZlU2VsZWN0aW9ucygpLHRoaXMuX3NlbGVjdGlvbi5mb2N1c0l0ZW0odCksdGhpcy5fc2VsZWN0aW9uLnNldEN1cnNvcih0KSx0aGlzLl9zZWxlY3Rpb24uc2VsZWN0SXRlbSh0KSx0aGlzLl9zZWxlY3Rpb24ub25OYXZpZ2F0ZSh0LGUpfV9pc1ZhbGlkTmF2aWdhdGlvbigpe3JldHVybiBkb2N1bWVudC5hY3RpdmVFbGVtZW50PT09ZG9jdW1lbnQuYm9keXx8dGhpcy5fc2VsZWN0aW9uLmdldExpc3QoKS5jb250YWlucyhkb2N1bWVudC5hY3RpdmVFbGVtZW50KX19Y2xhc3MgaHtjb25zdHJ1Y3RvcihlKXt0aGlzLl9zZWxlY3Rpb249ZS5zZWxlY3Rpb24sdGhpcy5fc2VsZWN0aW9uLmhvdGtleXMuYWRkKHtob3RrZXk6ci5Nb2RpZmllcnMuQWx0KzEzLGhhbmRsZXI6dGhpcy5fb25JdGVtS2V5RG93bi5iaW5kKHRoaXMsImFsdCtyZXR1cm4iKSxlbGVtZW50OmUubG9jYWxIb3RrZXlFbGVtZW50fSksdGhpcy5fc2VsZWN0aW9uLmhvdGtleXMuYWRkKHtob3RrZXk6ci5Nb2RpZmllcnMuQWx0K3IuTW9kaWZpZXJzLlNoaWZ0KzEzLGhhbmRsZXI6dGhpcy5fb25JdGVtS2V5RG93bi5iaW5kKHRoaXMsImFsdCtyZXR1cm4iKSxlbGVtZW50OmUubG9jYWxIb3RrZXlFbGVtZW50fSl9X29uSXRlbUtleURvd24oZSx0KXtjb25zdCBzPXRoaXMuX3NlbGVjdGlvbi5nZXRDdXJzb3JJdGVtKCk7cyYmdGhpcy5fc2VsZWN0aW9uLm9uQ29uZmlybShzLGUpfX1jbGFzcyBke2NvbnN0cnVjdG9yKGUpe3RoaXMuX3NlbGVjdGlvbj1lLnNlbGVjdGlvbix0aGlzLl9zZWxlY3Rpb24ucmVnaXN0ZXJNb3VzZUFjdGlvbigic2hpZnQrY2xpY2siLHRoaXMuX3NlbGVjdGlvbi5kZWxlZ2F0ZUNsaWNrKHRoaXMuX29uSXRlbUNsaWNrLmJpbmQodGhpcywic2hpZnQrY2xpY2siKSkpLHRoaXMuX3NlbGVjdGlvbi5ob3RrZXlzLmFkZCh7ZGVzYzoiRXh0ZW5kIFNlbGVjdGlvbiBEb3duIixob3RrZXk6ci5Nb2RpZmllcnMuU2hpZnQrNDAsaGFuZGxlcjp0aGlzLl9uZXh0UmFuZ2VJdGVtLmJpbmQodGhpcywic2hpZnQrZG93biIpLGVsZW1lbnQ6ZS5sb2NhbEhvdGtleUVsZW1lbnR9KSx0aGlzLl9zZWxlY3Rpb24uaG90a2V5cy5hZGQoe2Rlc2M6IkV4dGVuZCBTZWxlY3Rpb24gVXAiLGhvdGtleTpyLk1vZGlmaWVycy5TaGlmdCszOCxoYW5kbGVyOnRoaXMuX3ByZXZSYW5nZUl0ZW0uYmluZCh0aGlzLCJzaGlmdCt1cCIpLGVsZW1lbnQ6ZS5sb2NhbEhvdGtleUVsZW1lbnR9KX1fbmV4dFJhbmdlSXRlbShlKXtjb25zdCB0PXRoaXMuX3NlbGVjdGlvbi5nZXRJdGVtc0NvbGxlY3Rpb24oKSxzPXRoaXMuX3NlbGVjdGlvbi5nZXRDdXJzb3JJdGVtKCk7dGhpcy5fc2VsZWN0aW9uLmdldEN1cnNvckl0ZW1JZHgoKSE9PXQuZ2V0TGVuZ3RoKCktMSYmdGhpcy5fc2VsZWN0aW9uLm1vdmUocyxpLk5leHQsdGhpcy5fYWRkSXRlbVRvUmFuZ2UoZSwoKGUsdCk9PmU8dCkpKX1fcHJldlJhbmdlSXRlbShlKXtjb25zdCB0PXRoaXMuX3NlbGVjdGlvbi5nZXRDdXJzb3JJdGVtKCk7MCE9PXRoaXMuX3NlbGVjdGlvbi5nZXRDdXJzb3JJdGVtSWR4KCkmJnRoaXMuX3NlbGVjdGlvbi5tb3ZlKHQsaS5QcmV2LHRoaXMuX2FkZEl0ZW1Ub1JhbmdlKGUsKChlLHQpPT5lPnQpKSl9X29uSXRlbUNsaWNrKGUsdCl7Y29uc3Qgcz10aGlzLl9zZWxlY3Rpb24uZ2V0SXRlbXNDb2xsZWN0aW9uKCkuZ2V0SXRlbXMoKSxvPXRoaXMuX2dldFJhbmdlSW5mbyh0KTt0aGlzLl9zZWxlY3Rpb24ucmVtb3ZlU2VsZWN0aW9ucygpCjtmb3IobGV0IGU9by5zdGFydDtlPD1vLmVuZDtlKyspdGhpcy5fc2VsZWN0aW9uLmlzU2VsZWN0ZWQoc1tlXSl8fHRoaXMuX3NlbGVjdGlvbi5zZWxlY3RJdGVtKHNbZV0pO3RoaXMuX3NlbGVjdGlvbi5zZXRDdXJzb3IodCksdGhpcy5fc2VsZWN0aW9uLm9uU2VsZWN0KGUsdCl9X2dldFJhbmdlSW5mbyhlKXtjb25zdCB0PXRoaXMuX3NlbGVjdGlvbi5nZXRJdGVtc0NvbGxlY3Rpb24oKS5nZXRJdGVtSWR4KGUpLHM9dGhpcy5fc2VsZWN0aW9uLmdldEZvY3VzZWRJdGVtSWR4KCksbz0tMSE9PXM/czowO3JldHVybiB0Pm8/e3N0YXJ0Om8sZW5kOnR9OntzdGFydDp0LGVuZDpvfX1fYWRkSXRlbVRvUmFuZ2UoZSx0KXtyZXR1cm4ocyxvKT0+e2NvbnN0IGk9dGhpcy5fc2VsZWN0aW9uLmdldEl0ZW1zQ29sbGVjdGlvbigpLmdldEl0ZW1JZHgocyksbj10aGlzLl9zZWxlY3Rpb24uZ2V0Rm9jdXNlZEl0ZW1JZHgoKTswPT09dGhpcy5fc2VsZWN0aW9uLmdldFNlbGVjdGVkQ29sbGVjdGlvbigpLmdldExlbmd0aCgpJiZvJiZ0aGlzLl9zZWxlY3Rpb24uc2VsZWN0SXRlbShvKSx0KG4saSk/dGhpcy5fc2VsZWN0aW9uLnNlbGVjdEl0ZW0ocyk6byYmdGhpcy5fc2VsZWN0aW9uLnVuc2VsZWN0SXRlbShvKSx0aGlzLl9zZWxlY3Rpb24uc2V0Q3Vyc29yKHMpLHRoaXMuX3NlbGVjdGlvbi5vblNlbGVjdChlLHMpfX19Y2xhc3MgdXtjb25zdHJ1Y3RvcihlKXt0aGlzLl9zZWxlY3Rpb249ZS5zZWxlY3Rpb24sdGhpcy5fc2VsZWN0aW9uLnJlZ2lzdGVyTW91c2VBY3Rpb24oImN0cmwrY2xpY2siLHRoaXMuX3NlbGVjdGlvbi5kZWxlZ2F0ZUNsaWNrKHRoaXMuX29uSXRlbUNsaWNrLmJpbmQodGhpcywiY3RybCtjbGljayIpKSksdGhpcy5fc2VsZWN0aW9uLnJlZ2lzdGVyTW91c2VBY3Rpb24oIm1ldGErY2xpY2siLHRoaXMuX3NlbGVjdGlvbi5kZWxlZ2F0ZUNsaWNrKHRoaXMuX29uSXRlbUNsaWNrLmJpbmQodGhpcywibWV0YStjbGljayIpKSksdGhpcy5fc2VsZWN0aW9uLmhvdGtleXMuYWRkKHtob3RrZXk6ci5Nb2RpZmllcnMuTW9kKzY1LGhhbmRsZXI6dGhpcy5fc2VsZWN0QWxsLmJpbmQodGhpcywiY3RybCthIiksZWxlbWVudDplLmxvY2FsSG90a2V5RWxlbWVudH0pLHRoaXMuX3NlbGVjdGlvbi5ob3RrZXlzLmFkZCh7aG90a2V5OjI3LGhhbmRsZXI6dGhpcy5fdW5zZWxlY3RBbGwuYmluZCh0aGlzLCJlc2MiKSxlbGVtZW50OmUubG9jYWxIb3RrZXlFbGVtZW50fSl9X29uSXRlbUNsaWNrKGUsdCl7Y29uc3Qgcz10aGlzLl9zZWxlY3Rpb24uZ2V0Rm9jdXNlZEl0ZW0oKSxvPXRoaXMuX3NlbGVjdGlvbi5nZXRTZWxlY3RlZENvbGxlY3Rpb24oKS5nZXRMZW5ndGgoKTtzJiYwPT09byYmdGhpcy5fc2VsZWN0aW9uLnNlbGVjdEl0ZW0ocyksdGhpcy5fdG9nZ2xlU2VsZWN0aW9uKHQpLHRoaXMuX3NlbGVjdGlvbi5vblNlbGVjdChlLHQpfV90b2dnbGVTZWxlY3Rpb24oZSl7dGhpcy5fc2VsZWN0aW9uLmlzU2VsZWN0ZWQoZSk/dGhpcy5fc2VsZWN0aW9uLnVuc2VsZWN0SXRlbShlKTp0aGlzLl9zZWxlY3Rpb24uc2VsZWN0SXRlbShlKSx0aGlzLl9zZWxlY3Rpb24uc2V0Q3Vyc29yKGUpfV9zZWxlY3RBbGwoZSl7dGhpcy5fc2VsZWN0aW9uLmdldEl0ZW1zQ29sbGVjdGlvbigpLmdldEl0ZW1zKCkuZm9yRWFjaCgoZT0+dGhpcy5fc2VsZWN0aW9uLnNlbGVjdEl0ZW0oZSkpKSx0aGlzLl9zZWxlY3Rpb24ub25TZWxlY3QoZSl9X3Vuc2VsZWN0QWxsKGUpe3RoaXMuX3NlbGVjdGlvbi5yZW1vdmVTZWxlY3Rpb25zKCk7Y29uc3QgdD10aGlzLl9zZWxlY3Rpb24uZ2V0Rm9jdXNlZEl0ZW0oKTt0JiZ0aGlzLl9zZWxlY3Rpb24uc2V0Q3Vyc29yKHQpLHRoaXMuX3NlbGVjdGlvbi5vblNlbGVjdChlKX19Y2xhc3MgbXtjb25zdHJ1Y3RvcihlKXt0aGlzLl9zZWxlY3Rpb249ZS5zZWxlY3Rpb24sdGhpcy5fc2VsZWN0aW9uLmhvdGtleXMuYWRkKHtkZXNjOiJEZWxldGUiLGhvdGtleTo0NixoYW5kbGVyOnRoaXMuX2RlbGV0ZS5iaW5kKHRoaXMsImRlbCIpLGVsZW1lbnQ6ZS5nbG9iYWxIb3RrZXlFbGVtZW50fSl9X2RlbGV0ZShlKXtjb25zdCB0PXRoaXMuX3NlbGVjdGlvbi5nZXRTZWxlY3RlZEl0ZW1zKCkscz10aGlzLl9zZWxlY3Rpb24uZ2V0Q3Vyc29ySXRlbSgpO3MmJnQubGVuZ3RoPjA/dGhpcy5fc2VsZWN0aW9uLm9uRGVsZXRlKHQsZSxzKTpzJiZ0aGlzLl9zZWxlY3Rpb24ub25EZWxldGUoW3NdLGUscyl9fXZhciBfPXMoMzE4OTc0KTtjbGFzcyBne2NvbnN0cnVjdG9yKGUpe3RoaXMuX2Rpc3BhdGNoQ2xpY2s9ZT0+e2UuY3RybEtleSYmISgwLF8uaXNNYWMpKCk/dGhpcy5fc2VsZWN0aW9uLmRpc3BhdGNoTW91c2VFdmVudCgiY3RybCtjbGljayIsZSk6ZS5zaGlmdEtleT90aGlzLl9zZWxlY3Rpb24uZGlzcGF0Y2hNb3VzZUV2ZW50KCJzaGlmdCtjbGljayIsZSk6ZS5tZXRhS2V5JiYoMCxfLmlzTWFjKSgpP3RoaXMuX3NlbGVjdGlvbi5kaXNwYXRjaE1vdXNlRXZlbnQoIm1ldGErY2xpY2siLGUpOnRoaXMuX3NlbGVjdGlvbi5kaXNwYXRjaE1vdXNlRXZlbnQoImNsaWNrIixlKX0sdGhpcy5fb25TZWxlY3Q9ZT0+e3RoaXMuX2NvbGxlY3RLZXlzKCksdGhpcy5fb3B0cy5vblNlbGVjdCYmdGhpcy5fb3B0cy5vblNlbGVjdChlKX0sdGhpcy5fb25OYXZpZ2F0ZT1lPT57dGhpcy5fY29sbGVjdEtleXMoKSx0aGlzLl9vcHRzLm9uTmF2aWdhdGUmJnRoaXMuX29wdHMub25OYXZpZ2F0ZShlKX0sdGhpcy5fZGlzYWJsZVNlbGVjdGlvbj0oKT0+e3RoaXMuX2xpc3Qub25zZWxlY3RzdGFydD0oKT0+ITF9LHRoaXMuX2VuYWJsZVNlbGVjdGlvbj0oKT0+e3RoaXMuX2xpc3Qub25zZWxlY3RzdGFydD0oKT0+bnVsbH0sdGhpcy5fb3B0cz1lLHRoaXMuX2xpc3Q9ZS5saXN0LHRoaXMuX3NlbGVjdGlvbj1uZXcgbCh7bGlzdDplLmxpc3QsbGlzdEl0ZW1DbGFzczplLmxpc3RJdGVtQ2xhc3Msc2VsZWN0ZWRMaXN0SXRlbUNsYXNzOmUuc2VsZWN0ZWRMaXN0SXRlbUNsYXNzLGZvY3VzZWRMaXN0SXRlbUNsYXNzOmUuZm9jdXNlZExpc3RJdGVtQ2xhc3Msb25TZWxlY3Q6dGhpcy5fb25TZWxlY3Qsb25OYXZpZ2F0ZTp0aGlzLl9vbk5hdmlnYXRlLApvbkNvbmZpcm06ZS5vbkNvbmZpcm0sb25EZWxldGU6ZS5vbkRlbGV0ZSxtb2RlczplLm1vZGVzLGdsb2JhbEhvdGtleXM6Qm9vbGVhbihlLmdsb2JhbEhvdGtleXMpLGN5Y2xpY05hdmlnYXRpb25EaXNhYmxlZDpCb29sZWFuKGUuY3ljbGljTmF2aWdhdGlvbkRpc2FibGVkKSxlbmFibGVGb2N1c0RPTUVsZW1lbnQ6Qm9vbGVhbihlLmVuYWJsZUZvY3VzRE9NRWxlbWVudCl9KSx0aGlzLl9zZWxlY3RlZEtleXM9W10sdGhpcy5fZm9jdXNlZEtleT1udWxsLHRoaXMuX2N1cnNvcktleT1udWxsLHRoaXMuYWN0aXZhdGUoKSx0aGlzLl9jb2xsZWN0S2V5cygpfWFjdGl2YXRlKCl7dGhpcy5fbGlzdC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsdGhpcy5fZGlzcGF0Y2hDbGljayksdGhpcy5fbGlzdC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIix0aGlzLl9kaXNhYmxlU2VsZWN0aW9uKSx0aGlzLl9saXN0LmFkZEV2ZW50TGlzdGVuZXIoImtleXVwIix0aGlzLl9lbmFibGVTZWxlY3Rpb24pLHRoaXMuX3NlbGVjdGlvbi5ob3RrZXlzLnByb21vdGUoKX1kZWFjdGl2YXRlKCl7dGhpcy5fbGlzdC5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsdGhpcy5fZGlzcGF0Y2hDbGljayksdGhpcy5fbGlzdC5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIix0aGlzLl9kaXNhYmxlU2VsZWN0aW9uKSx0aGlzLl9saXN0LnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleXVwIix0aGlzLl9lbmFibGVTZWxlY3Rpb24pfWZvY3VzSXRlbShlKXt0aGlzLl9pc05vdEZvY3VzZWQoZSkmJih0aGlzLl9zZWxlY3Rpb24ucmVtb3ZlU2VsZWN0aW9ucygpLHRoaXMuX3NlbGVjdGlvbi5mb2N1c0l0ZW0oZSkpfXZpc3VhbGx5Rm9jdXNJdGVtKGUpe3RoaXMuX2lzTm90Rm9jdXNlZChlKSYmKHRoaXMuX3NlbGVjdGlvbi5yZW1vdmVTZWxlY3Rpb25zKCksdGhpcy5fc2VsZWN0aW9uLnZpc3VhbGx5Rm9jdXNJdGVtKGUpLHRoaXMuX3NlbGVjdGlvbi5zZWxlY3RJdGVtKGUpKX1yZW1vdmVGb2N1cygpe3RoaXMuX3NlbGVjdGlvbi5yZW1vdmVGb2N1cygpfXJlbW92ZVNlbGVjdGlvbnMoKXt0aGlzLl9zZWxlY3Rpb24ucmVtb3ZlU2VsZWN0aW9ucygpfXJlc3RvcmUoKXtpZih0aGlzLl9vcHRzLmdldE5vZGVLZXkpe2NvbnN0IGU9dGhpcy5fc2VsZWN0aW9uLmdldEl0ZW1zQ29sbGVjdGlvbigpLmdldEl0ZW1zKCksdD10aGlzLl9vcHRzLmdldE5vZGVLZXk7ZS5mb3JFYWNoKChlPT57Y29uc3Qgcz10KGUpO3RoaXMuX2ZvY3VzZWRLZXk9PT1zJiZ0aGlzLl9zZWxlY3Rpb24uZm9jdXNJdGVtKGUpLHRoaXMuX2N1cnNvcktleT09PXMmJnRoaXMuX3NlbGVjdGlvbi5zZXRDdXJzb3IoZSksdGhpcy5fc2VsZWN0ZWRLZXlzLmluY2x1ZGVzKHMpJiZ0aGlzLl9zZWxlY3Rpb24uc2VsZWN0SXRlbShlKX0pKX19Z2V0U2VsZWN0ZWRLZXlzKCl7cmV0dXJuIHRoaXMuX2NvbGxlY3RLZXlzKCksdGhpcy5fc2VsZWN0ZWRLZXlzfWdldEZvY3VzZWRLZXkoKXtyZXR1cm4gdGhpcy5fY29sbGVjdEtleXMoKSx0aGlzLl9mb2N1c2VkS2V5fHxudWxsfWNsZWFyKCl7dGhpcy5fc2VsZWN0aW9uLmNsZWFyKCl9ZGVzdHJveSgpe3RoaXMuZGVhY3RpdmF0ZSgpLHRoaXMuX3NlbGVjdGlvbi5kZXN0cm95KCksZGVsZXRlIHRoaXMuX3NlbGVjdGlvbixkZWxldGUgdGhpcy5fbGlzdCxkZWxldGUgdGhpcy5fb3B0c31fY29sbGVjdEtleXMoKXtpZih0aGlzLl9vcHRzLmdldE5vZGVLZXkpe2NvbnN0IGU9dGhpcy5fb3B0cy5nZXROb2RlS2V5LHQ9dGhpcy5fc2VsZWN0aW9uLmdldFNlbGVjdGVkSXRlbXMoKSxzPXRoaXMuX3NlbGVjdGlvbi5nZXRGb2N1c2VkSXRlbSgpLG89dGhpcy5fc2VsZWN0aW9uLmdldEN1cnNvckl0ZW0oKTt0aGlzLl9zZWxlY3RlZEtleXM9dC5tYXAoKHQ9PmUodCkpKSx0aGlzLl9mb2N1c2VkS2V5PXM/ZShzKTpudWxsLHRoaXMuX2N1cnNvcktleT1vP2Uobyk6bnVsbH19X2lzTm90Rm9jdXNlZChlKXtyZXR1cm4hdGhpcy5fc2VsZWN0aW9uLmlzU2VsZWN0ZWQoZSkmJiF0aGlzLl9zZWxlY3Rpb24uaXNGb2N1c2VkKGUpfX1mdW5jdGlvbiBwKGUpe3JldHVybiBuZXcgZyhPYmplY3QuYXNzaWduKHt9LHttb2RlczpbYSxoLG0sdSxkXX0sZSkpfX0sMTY4ODI0KGUsdCxzKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbyhlKXtjb25zdFt0LHMsb109ZnVuY3Rpb24oZSl7Y29uc3QgdD1lLnRvU3RyaW5nKCk7cmV0dXJuW051bWJlcih0LnNsaWNlKDAsNCkpLE51bWJlcih0LnNsaWNlKDQsNikpLE51bWJlcih0LnNsaWNlKDYpKV19KGUpO3JldHVybiBuZXcgRGF0ZSh0LHMtMSxvKX1zLmQodCx7Z2V0RGF0ZUZyb21ZWVlZTU1ERDooKT0+b30pfSwxODIzMDgoZSx0LHMpeyJ1c2Ugc3RyaWN0IjtzLmQodCx7dXNlUm92aW5nVGFiaW5kZXhFbGVtZW50OigpPT5jfSk7dmFyIG89cyg3Nzk0NzQpLGk9cyg3ODc4OTUpLG49cyg2MTYzMTEpO2Z1bmN0aW9uIGMoZSx0PVtdKXtjb25zdFtzLGNdPSgwLG8udXNlU3RhdGUpKCExKSxsPSgwLGkudXNlRnVuY3Rpb25hbFJlZk9iamVjdCkoZSk7cmV0dXJuKDAsbi51c2VJc29tb3JwaGljTGF5b3V0RWZmZWN0KSgoKCk9Pntjb25zdCBlPWwuY3VycmVudDtpZihudWxsPT09ZSlyZXR1cm47Y29uc3QgdD1lPT57c3dpdGNoKGUudHlwZSl7Y2FzZSJyb3ZpbmctdGFiaW5kZXg6bWFpbi1lbGVtZW50IjpjKCEwKTticmVhaztjYXNlInJvdmluZy10YWJpbmRleDpzZWNvbmRhcnktZWxlbWVudCI6YyghMSl9fTtyZXR1cm4gZS5hZGRFdmVudExpc3RlbmVyKCJyb3ZpbmctdGFiaW5kZXg6bWFpbi1lbGVtZW50Iix0KSxlLmFkZEV2ZW50TGlzdGVuZXIoInJvdmluZy10YWJpbmRleDpzZWNvbmRhcnktZWxlbWVudCIsdCksKCk9PntlLnJlbW92ZUV2ZW50TGlzdGVuZXIoInJvdmluZy10YWJpbmRleDptYWluLWVsZW1lbnQiLHQpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigicm92aW5nLXRhYmluZGV4OnNlY29uZGFyeS1lbGVtZW50Iix0KX19KSx0KSxbbCxzPzA6LTFdfX0sMzA5ODM2KGUsdCxzKXsidXNlIHN0cmljdCI7cy5kKHQse2FkZFV0bVRvVXJsOigpPT5pfSk7dmFyIG89cyg2MDE1ODcpO2Z1bmN0aW9uIGkoZSx0KXsKaWYoIS8oW2EtekEtWjAtOS4tXSp0cmFkaW5ndmlldy5jb20pfGxvY2FsaG9zdC8udGVzdChlKSlyZXR1cm4gZTtjb25zdCBzPSgwLG8uYnVpbGRVdG1RdWVyeVN0cmluZykodCk7aWYoIiI9PT1zKXJldHVybiBlO2NvbnN0IGk9ZS5pbmRleE9mKCI/Iiksbj1lLmluZGV4T2YoIiMiKSxjPS0xIT09bjtpZigtMSE9PWkmJighY3x8aTxuKSl7cmV0dXJuYCR7ZS5zbGljZSgwLGkpfT8ke2M/ZS5zbGljZShpKzEsbik6ZS5zbGljZShpKzEpfSYke3N9JHtjP2Uuc2xpY2Uobik6IiJ9YH1pZihjKXtyZXR1cm5gJHtlLnNsaWNlKDAsbil9PyR7c30ke2Uuc2xpY2Uobil9YH1yZXR1cm5gJHtlfT8ke3N9YH19LDYwMTU4NyhlLHQscyl7InVzZSBzdHJpY3QiO3MuZCh0LHtidWlsZFV0bVF1ZXJ5U3RyaW5nOigpPT5sLGJ1aWxkVXRtUXVlcnlTdHJpbmdGcm9tVXJsUGFyYW1zOigpPT5yLGZpbHRlclV0bUluZm86KCk9PmN9KTt2YXIgbz1zKDQ5MjY3NyksaT1zKDY0MTU5Myk7Y29uc3Qgbj1bInV0bV9zb3VyY2UiLCJ1dG1fbWVkaXVtIiwidXRtX2NhbXBhaWduIl07ZnVuY3Rpb24gYyhlKXtjb25zdCB0PXt9O3JldHVybiBuLmZvckVhY2goKHM9Pntjb25zdCBvPWVbc107InN0cmluZyI9PXR5cGVvZiBvJiYiIiE9PW8mJih0W3NdPSgwLGkuaHRtbEVzY2FwZSkobykpfSkpLHR9ZnVuY3Rpb24gbChlLHQ9ITEpe2NvbnN0IHM9KDAsby5jcmVhdGVVcmxQYXJhbXMpKGUpO3JldHVybiBzJiZ0PyI/IitzOnN9ZnVuY3Rpb24gcihlKXtyZXR1cm4gbChjKCgwLG8uZ2V0VXJsUGFyYW1zKSgpKSxlKX19LDQ2MjcwNChlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTggMTgiIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCI+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNMTIgNGgzdjFoLTEuMDRsLS44OCA5LjY0YTEuNSAxLjUgMCAwIDEtMS41IDEuMzZINi40MmExLjUgMS41IDAgMCAxLTEuNS0xLjM2TDQuMDUgNUgzVjRoM3YtLjVDNiAyLjY3IDYuNjcgMiA3LjUgMmgzYy44MyAwIDEuNS42NyAxLjUgMS41VjRaTTcuNSAzYS41LjUgMCAwIDAtLjUuNVY0aDR2LS41YS41LjUgMCAwIDAtLjUtLjVoLTNaTTUuMDUgNWwuODcgOS41NWEuNS41IDAgMCAwIC41LjQ1aDUuMTdhLjUuNSAwIDAgMCAuNS0uNDVMMTIuOTQgNWgtNy45WiIvPjwvc3ZnPid9LDIwMzMwOShlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTYgMTYiPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTQgOGE0IDQgMCAxIDAgOCAwIDQgNCAwIDEgMC04IDAiLz48L3N2Zz4nfSwyNzQ4NTEoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE2IDE2Ij48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTAgOGE4IDggMCAxIDAgMTYgMEE4IDggMCAxIDAgMCA4em0yIDBhNiA2IDAgMSAwIDEyIDBBNiA2IDAgMSAwIDIgOHptMiAwYTQgNCAwIDEgMCA4IDAgNCA0IDAgMSAwLTggMCIvPjwvc3ZnPid9LDMzNDU1MChlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjggMjgiIHdpZHRoPSIyOCIgaGVpZ2h0PSIyOCIgZmlsbD0ibm9uZSI+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIyIiBkPSJNMTYuNSAyMEwxMSAxNC41IDE2LjUgOSIvPjwvc3ZnPid9LDM4MDU2KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyOCAyOCIgd2lkdGg9IjI4IiBoZWlnaHQ9IjI4IiBmaWxsPSJub25lIj48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2Utd2lkdGg9IjEuNSIgZD0iTTcgMTVsNSA1TDIzIDkiLz48L3N2Zz4nfX1dKTs="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCAPTO.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.644Z","timestamp":1785126258644,"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 /crypto/XTVCAPTO.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 04:24:18 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: \"f37ec3b4412973f4c208665bbda9a3e4\"\r\nlast-modified: Fri, 12 Jan 2024 14:17:36 GMT\r\ncdn-cachedat: 08/14/2025 09:10:22\r\nx-amz-id-2: csjjIx+uOwuHq2RIXnp6F1953KVJYS2tMtQwqM9qNURg49iiSjF94eYwvIahdLzYECU00RbMYc0=\r\nx-amz-request-id: BFGGPB51W0G8HERJ\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: f37ec3b4412973f4c208665bbda9a3e4\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: 87a90bd2de47140512387c50c61f5a76\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":1167,"size_decoded":1563,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1167), with no line terminators","md5":"f37ec3b4412973f4c208665bbda9a3e4","sha1":"67bcef27226b65876a6e869d904a4d4577ce628b","sha256":"b29c52094c3b7d77da0b5efc3e1fc271dfd9b93e3a999c24820478d73e6e5ee7","sha512":"e50549df569f534e8375a37b9f5e7d05a809ac397d49b4118ad0771f4f5116c1be7c5bdf744f9f71671ebcc685a4bad31e6b6a6308bf964788fcefd456b971cc","ssdeep":"","tlshash":"de21c129a228962ceac3e75cfb369c52230e8099f0b7e2b45cfed79d10491c1d852810","first_seen":"2024-08-20T09:36:43.200474Z","last_seen":"2026-07-27T07:05:43.303078Z","times_seen":817,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYWxxMnEzZXp4KSIgZD0iTTAgMGgxOHYxOEgweiIvPjxwYXRoIGQ9Ik0xMC44NSA3LjQ0Yy0uMSAwLS4yLS4xNC0uMjctLjJsLS4zNi0uNGEuMy4zIDAgMCAwLS40LS4wNGwtLjAzLjAzLS4zLjM1Yy0uMS4xMi0uMjUuMjYtLjQuMjZINC4yNmMtLjEzLjM5LS4yMi44My0uMjYgMS4yNWg0LjU3Yy4wOCAwIC4xNi0uMTQuMjItLjJsLjQyLS40NGEuMy4zIDAgMCAxIC4yMS0uMDloLjAyYy4wOCAwIC4xNi4wNC4yMS4xbC4zNi40Yy4wNy4wOC4xNy4yMy4yNy4yM0gxNGE1LjM3IDUuMzcgMCAwIDAtLjI2LTEuMjVoLTIuOVpNOC44IDkuOGwtLjM1LS40YS4zLjMgMCAwIDAtLjQtLjAzbC0uMDMuMDMtLjMxLjM1YS41MS41MSAwIDAgMS0uNC4xOEg0LjA3Yy4wOC40My4yMi44NS40MSAxLjI1aDIuMjhjLjA4IDAgLjE1LS4wNC4yMS0uMWwuNDMtLjQ0YS4zLjMgMCAwIDEgLjItLjFoLjAzYy4wOCAwIC4xNi4wNC4yLjFsLjM3LjRjLjA3LjA5LjE3LjE0LjI2LjE0aDUuMDZhNSA1IDAgMCAwIC40LTEuMjVIOS4wOGMtLjEgMC0uMi0uMDUtLjI3LS4xM1ptMS43NS00LjAyLjQzLS4zMWEuMy4zIDAgMCAxIC4yLS4xaC4wM2MuMDggMCAuMTYuMDQuMjEuMWwuMzYuMjdjLjA3LjA4LjE3LjEzLjI2LjEzaC44NkE0LjYzIDQuNjMgMCAwIDAgOS4xIDRjLTEuNDcgMC0zLjA5LjY3LTQgMS44OGg1LjI1Yy4wOS4wMS4xNi0uMDQuMjEtLjA5Wk03LjEgMTIuNDRjLS4xIDAtLjItLjA3LS4yNy0uMTRsLS4zNi0uNGEuMjguMjggMCAwIDAtLjQtLjAybC0uMDIuMDItLjMuMzRhLjUxLjUxIDAgMCAxLS40LjE4aC0uMDJhNS4wMyA1LjAzIDAgMCAwIDcuMS4yMmwuMjMtLjJINy4xWiIgZmlsbD0iI2ZmZiIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0iYWxxMnEzZXp4IiB4MT0iMy4zNSIgeTE9IjMuMTIiIHgyPSIyMS45IiB5Mj0iMjQuNDMiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjMUExRTIxIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMDYwNjBBIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCHUMA.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.702Z","timestamp":1785126258702,"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 /crypto/XTVCHUMA.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 04:24:18 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: \"dd76d2d0c6942ce58daf9da0524b2bd3\"\r\nlast-modified: Fri, 04 Jul 2025 20:16:27 GMT\r\ncdn-cachedat: 08/09/2025 15:40:17\r\nx-amz-id-2: SpNsfxaAZhxMJrssw7a41UQmOzu3OjrG0NpfwXh97Tvumf9uq2TypQS+aZCzbwsn+U6oGPvCIR8=\r\nx-amz-request-id: T6ZY3VK081RRJVVY\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: dd76d2d0c6942ce58daf9da0524b2bd3\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: 7a40973b40c382772e5506d6fddeb5e7\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":917,"size_decoded":1326,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (917), with no line terminators","md5":"dd76d2d0c6942ce58daf9da0524b2bd3","sha1":"c610df293a8e273cd780b03934038d843e3839a2","sha256":"23fd469803184588db619038f0abd3f3d819c94d87abfd80bfb7a5dac4b799f3","sha512":"6d71eb1fd81b9aa2b5c0f520d8668141a2edbccb3d31c122ac1ca25e41057cd8740badbdbad60b2a7eb7d7ffee70f976fde80451a437fc3b27f688d08f2c5af0","ssdeep":"","tlshash":"f0119076f81d582bd11bd77dec489476220d80eb94c05329a594fb3e2528bc76d0cf64","first_seen":"2025-12-17T03:21:18.463914Z","last_seen":"2026-07-27T07:05:43.332673Z","times_seen":415,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTEuNjYgOEg3LjAydjJoNC42NFY4WiIgZmlsbD0iI0IyNDZGRiIvPjxwYXRoIGQ9Ik0xMC40NCA0LjJhNS4wMiA1LjAyIDAgMCAwLTQuMjEgOWwyLjQzLTUuMTggMS43OC0zLjgyWiIgZmlsbD0idXJsKCNiKSIvPjxwYXRoIGQ9Ik0xMS43NyA0LjhhNS4wMiA1LjAyIDAgMCAxLTQuMjEgOWwyLjQyLTUuMTggMS43OS0zLjgyWiIgZmlsbD0idXJsKCNjKSIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0iYSIgeDE9IjMuMzUiIHkxPSIzLjEyIiB4Mj0iMjEuOSIgeTI9IjI0LjQzIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iIzFBMUUyMSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzA2MDYwQSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IGlkPSJiIiB4MT0iMTAuMDQiIHkxPSI1LjA3IiB4Mj0iLTIuMzMiIHkyPSIzLjU1IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iI0IyNDZGRiIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI0ZGNkE4QSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IGlkPSJjIiB4MT0iMTEuMzYiIHkxPSI1LjY2IiB4Mj0iMjAuNDUiIHkyPSIxNC4xOCIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiNCMjQ2RkYiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNGRjZBOEEiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4="}},"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":"besttrader.live/slick/ajax-loader.gif","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:17.105Z","timestamp":1785126257105,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /slick/ajax-loader.gif HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/slick/slick-theme.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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:17 GMT\r\ncontent-type: image/gif\r\ncontent-length: 4178\r\nlast-modified: Sat, 07 Oct 2023 09:01:37 GMT\r\netag: \"65211e71-1052\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":4178,"size_decoded":4427,"mime_type":"image/gif","magic":"GIF image data, version 89a, 32 x 32","md5":"c5cd7f5300576ab4c88202b42f6ded62","sha1":"7a1aa43614396382bb15e5fde574d9cdcd21698f","sha256":"e7b44c86b050fca766a96ddac2d0932af0126da6f2305280342d909168dcce6b","sha512":"f0d7ada22a3eb3b2758198a71472fb240c74ce4ca09028076e23690c70b2339c6b2a40f9158dd71c52d953ef27bbcc0105b061bdc74fbb0ad0b304c7c6a04a38","ssdeep":"48:32e4MxZKDtivGOFkoajWKOwD2s4UYX034Hk4zHdwt4zeoAF5oM4JTp3uVj4gBFyj:32e4ZtyiqsdWAXWwXPF5oMcdUjVsmuS","tlshash":"e2810b9ce8a0f631c59936b78dd92d1a9adc5796ac3ccf5215986808f91f223028735d","first_seen":"2023-04-05T22:52:05Z","last_seen":"2026-07-27T07:07:10.743737Z","times_seen":45260,"resource_available":false,"data":"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"}},"time_used":107,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":107,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCSYRUP.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.673Z","timestamp":1785126258673,"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 /crypto/XTVCSYRUP.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 04:24:18 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: \"fce92cd118b33607b134fedeaae62f01\"\r\nlast-modified: Tue, 25 Feb 2025 16:53:35 GMT\r\ncdn-cachedat: 08/14/2025 09:16:49\r\nx-amz-id-2: ISECyTXNlp+fZncOweIuGkgmOjm/OTTixgrIY2hZy8Tad2sJXvP0XExiplqdzBZ6oAdxCx72FWa/u11hjKCf0l8hBgeShzw0\r\nx-amz-request-id: PEE4P4MYGABZ4JRG\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: fce92cd118b33607b134fedeaae62f01\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: a6405d4a788fc76d2c6dd3ebb6508223\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":927,"size_decoded":1520,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (927), with no line terminators","md5":"fce92cd118b33607b134fedeaae62f01","sha1":"0fe7b98e7f4b6155ea0d6a5124741204820ae2af","sha256":"84a2a34d1b7329eb786dcbfc4ba37ec5e540f77b3297d7aa87459793ef1f62a0","sha512":"1c513f0fab2cb5d2e638b2a8db0ff871cb757dac08223ed876e46746897dd8f8caed97a24009ef81b10946433b7ac85c763118590a17a717f005e3bfae201a65","ssdeep":"","tlshash":"ee119b3aa258c62ead07d168df7080a6520b94c9b5cd02d464e78bba70678d5ed15838","first_seen":"2025-08-02T16:04:41.385237Z","last_seen":"2026-07-27T07:05:43.318047Z","times_seen":771,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJtMTMuODMgMTAuMzEtLjE0LjQxYy0uMTUuNDUtLjM5Ljg1LS43IDEuMi0uMzkuNDUtMS4yLjg5LTEuNTguMTRhMi4yNyAyLjI3IDAgMCAxLS4xNi0uNDcgNS41IDUuNSAwIDAgMS0uMTMtLjg1Yy0uMDYtLjc4LS4wNC0xLjc3LS4wNC0yLjM5IDAtLjc0LS41Mi0xLjQ2LTEuMzUtMS4yYS43NS43NSAwIDAgMC0uNDMuMzhjLS4yNC40LS4yLjk3LS4wMiAxLjQuMS4yMy4yNi41NS40OS45NGwuNTkgMS4wMmMuMi4zOC40Ljc2LjU1IDEuMTYuMDUuMTUuMDguMjguMDguNC4wNiAxLjA1LS44NiAxLjUtMS43NyAxLjU0YTUgNSAwIDAgMS00LjkxLTYuNzNjLjE1LS40MS4zNS0uNzguNjEtMS4xLjMtLjM2Ljg0LS43NiAxLjMxLS41OC41My4yMS40Ni45OC40IDEuNDgtLjA4Ljc3LS4xOCAxLjQ1LjA0IDIuMTUuMTcuNTMuNiAxLjAzIDEuMjIuODQuNDUtLjE1LjYzLS42Mi42My0xLjA4IDAtLjU0LS4yNC0uOTgtLjUzLTEuNDNsLS41My0uODRjLS4yNC0uNC0uNDYtLjgyLS40NS0xLjI4IDAtLjM5LjE2LS43Mi40OC0uOTkuNDQtLjMyIDEtLjQzIDEuNTMtLjQzYTUgNSAwIDAgMSA0LjggNi4zMVoiIGZpbGw9IiNmZmYiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImEiIHgxPSIxNC42MyIgeTE9IjIuMTciIHgyPSIyLjQ0IiB5Mj0iMTMuNzIiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjRkM4NTQxIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjRkQ4RDRFIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCPROVE.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.741Z","timestamp":1785126258741,"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 /crypto/XTVCPROVE.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 04:24:18 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: \"0fc4ddba977d1ff9f5ea4d13e295e0eb\"\r\nlast-modified: Fri, 22 Aug 2025 12:09:03 GMT\r\ncdn-cachedat: 08/22/2025 14:55:38\r\nx-amz-id-2: GxtXmyRm2KgCRDFBpy/Xrx+Jw4T0BQE2RDaMpbNulvT9IpuIbydyk3M14FEdeu2KjJ1MCAGu44k=\r\nx-amz-request-id: 4B4XV6JCSZK8QDQ0\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 0fc4ddba977d1ff9f5ea4d13e295e0eb\r\ncdn-proxyver: 1.34\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 798ee41350d4587b136c0ddd3d0128fe\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":366,"size_decoded":1174,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (366), with no line terminators","md5":"0fc4ddba977d1ff9f5ea4d13e295e0eb","sha1":"e540594778485ae4891cd2575a81fe934aaa5a69","sha256":"5d10027dae2b67e2847aa60a5dc8bf9d85ab985651532b5e0918541a0d5702c2","sha512":"e2aa8f6e1f2858777444fdc61c7644b2b270cb85327ae72d86b6fd466b1e32b505fdd17691a5ba3f51b96e02444d5fbedf909951781048fcba40109513f270db","ssdeep":"","tlshash":"cce068abe2289008d89ecbf95da87493307a70ead0cb4896b1c4039a28419d72c43d18","first_seen":"2025-08-22T21:02:17.989989Z","last_seen":"2026-07-27T07:05:43.37579Z","times_seen":484,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJtNyA4IDIgMS0yIDEtMi0xIDItMVpNMTEgOGwyIDEtMiAxLTItMSAyLTFaIiBmaWxsPSIjRkZBMEU4Ii8+PHBhdGggZD0iTTcgNS40MlY4bDIgMVY2LjU5bDItMS4yMVY4bDItMS4yNlY0LjJMMTEuMDEgMyA3IDUuNDJaTTExIDEyLjU4VjEwTDkgOXYyLjQxbC0yIDEuMjFWMTBsLTIgMS4yNnYyLjU0TDYuOTkgMTUgMTEgMTIuNThaIiBmaWxsPSIjRkUxMUM1Ii8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCWIN.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.763Z","timestamp":1785126258763,"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 /crypto/XTVCWIN.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 04:24:18 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: \"cb0b4d38df472c2ade91bfacfbb97e8c\"\r\nlast-modified: Wed, 08 Sep 2021 09:04:36 GMT\r\ncdn-cachedat: 08/09/2025 14:29:48\r\nx-amz-id-2: Z7KhTFaW4hqkk5FDRMi+HQbKSsW2ljRjgyaGzNB5PGnj4zcIEqVeNoX4wyfKaSMWNlehj7GYu/0=\r\nx-amz-request-id: 5MMDMNGZ6F8H0QBC\r\nx-amz-meta-hash: cb0b4d38df472c2ade91bfacfbb97e8c\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: 757cb8d8a9445fec3bbff5edc654ba5d\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":1079,"size_decoded":1491,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1079), with no line terminators","md5":"cb0b4d38df472c2ade91bfacfbb97e8c","sha1":"ef71c42414c7899defc58dd1c45a9b0d2ee607a5","sha256":"bf2d33b055a04b88401a201516b62565a396283831364f353a4041678595f2f2","sha512":"a1b2447b1bf2be637fcbb57188a254ba4690d2c2b05e365ab59235437db4e5217e3de4cf39a821956186adc66588904894629dcb73dcfd54e9a973d1a82a1b0d","ssdeep":"","tlshash":"e91123cf2148814cb886c51cabae50a56406709fba7b76c4e48e5736e44b5defa54c70","first_seen":"2026-06-21T08:17:21.782899Z","last_seen":"2026-07-27T07:05:43.382731Z","times_seen":137,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjMjg0MTg3IiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTUuNzE1IDEyLjA5MWEuNDUuNDUgMCAwMC0uNjA4LjA2LjQxOC40MTggMCAwMDAgLjU1NGMxLjM5MiAxLjEwOSAyLjk5NyAxLjI4NiAzLjgxIDEuMjk1IDEuNTE0LjAxNyAzLjIxNS0uNzg2IDMuODc2LTEuMTkuMTQtLjA4Ni4zMTEtLjMyOC4xMjQtLjYwMi0uMTg3LS4yNzQtLjUxLS4xOTItLjY0Ny0uMTE3LS41NDIuMzM4LTEuOTcxIDEuMDEzLTMuMzU0IDEuMDEzLTEuNzIzIDAtMi44OS0uOC0zLjE5OC0xLjAxbC0uMDAzLS4wMDN6IiBmaWxsPSIjZmZmIi8+PGVsbGlwc2UgY3g9IjYuMDAxIiBjeT0iNSIgcng9IjEuMDAxIiByeT0iMSIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik0xMi40NjcgNC4wNWMuMTk2LS4wOTMuNDAyLS4wNDYuNDYzLjA1Ny4xMTEuMTkuMDA3LjMxMS0uMDU4LjM1bC0xLjA4NC41M2MuMjk2LjE0OC45MjIuNDU3IDEuMDUzLjUyLjE2NS4wOC4yMDkuMjMzLjA5Ny4zOTQtLjA3Ni4xMS0uMjk0LjEyMy0uMzk2LjA2NUwxMS4xOTggNS4zQS4zNDMuMzQzIDAgMDExMSA1LjAwMWEuMzc4LjM3OCAwIDAxLjE5OC0uMzNjLjM0Mi0uMTY4IDEuMDc0LS41MjYgMS4yNy0uNjJ6IiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTguNDQ2IDExLjQ2OEw5LjA4IDkuNjFsLjc4NyAxLjkwNWEuNzk0Ljc5NCAwIDAwLjk4My40NDIuNjkzLjY5MyAwIDAwLjQ1Ny0uNTEyLjgxNy44MTcgMCAwMC4wMTItLjAzOGwxLjAyLTMuNDgxYS43MDcuNzA3IDAgMDAtLjUxNC0uODkzLjc4NC43ODQgMCAwMC0uOTMyLjUzNmwtLjQzOCAxLjQ5NC0uNjUxLTEuNThhLjc5Ni43OTYgMCAwMC0uODEtLjQ4Ljc5Ljc5IDAgMDAtLjc3Mi41MjhsLS41NiAxLjY0LS41Ni0xLjY0YS43ODkuNzg5IDAgMDAtLjk1NS0uNDk4LjcuNyAwIDAwLS40NzQuOTA5bDEuMjA0IDMuNTI2YS43OS43OSAwIDAwLjc4Ni41MjcuNzkuNzkgMCAwMC43ODMtLjUyN3oiIGZpbGw9IiNEMUFBMTEiLz48L3N2Zz4="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCNEAR.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.589Z","timestamp":1785126258589,"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 /crypto/XTVCNEAR.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=4, 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 04:24:18 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: \"f7d1613b17b2f01426b498133ea26ae7\"\r\nlast-modified: Fri, 12 Jan 2024 14:17:35 GMT\r\ncdn-cachedat: 08/14/2025 09:13:02\r\nx-amz-id-2: +jzMHvtHhZK8oS6H0fcvLrlvCd/UHkYGix3ev2X4kaAtnFb4+WTAcFr03yjchvHxVsW4pJkft3w=\r\nx-amz-request-id: EB7HAQQ9GEC26FYE\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: f7d1613b17b2f01426b498133ea26ae7\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: 5aec35c35fabb866fc9208031d3721b4\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":513,"size_decoded":1259,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (513), with no line terminators","md5":"f7d1613b17b2f01426b498133ea26ae7","sha1":"160e2db33f21f35156877137774bccf45cb80fa2","sha256":"9ff7f60bc2b12cc10ee414f1572959a3c6ff0b3cfdfe32f97732bb6245af3ded","sha512":"284e9bbf2db590e3415be8299772c2195c5f39a744d4b50e6955f48a8beb52fb48085242ea5f9ad6c5f5dbb6f4fac007d292cdefb06a4bbf72eca75eb6f0177b","ssdeep":"","tlshash":"a4f084a99224ca5e2883c1aceaa124a03bcf90cbbba813dc79db5f74120b456f415128","first_seen":"2025-04-11T11:28:49.150886Z","last_seen":"2026-07-27T07:05:43.259532Z","times_seen":821,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMwMEVDOTciIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJtMTIuMDEgNC41MS0yLjA4IDMuMWMtLjE1LjIxLjEzLjQ3LjMzLjI5bDEuNi0xLjc5Yy4wNi0uMDQuMTQtLjAxLjE0LjA3djUuNTljMCAuMDctLjEuMS0uMTQuMDVMNi4wOSA0LjM4Yy0uMi0uMjUtLjUtLjM4LS44MS0uMzhDNC42MyA0IDQgNC4zMyA0IDUuMDd2Ny44NmExLjA3IDEuMDcgMCAwIDAgMS45OC41NmwyLjA4LTMuMWMuMTUtLjIxLS4xMy0uNDctLjMzLS4yOWwtMS42IDEuNzhjLS4wNS4wNC0uMTMgMC0uMTMtLjA3VjYuMjNjMC0uMDcuMS0uMS4xNC0uMDVsNS43NiA3LjQ0Yy4yNy4zMy42NC4zOCAxLjAzLjM4LjYgMCAxLjA3LS40OCAxLjA3LTEuMDdWNS4wN2ExLjA3IDEuMDcgMCAwIDAtMS45OS0uNTZaIi8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCAIOZ.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.710Z","timestamp":1785126258710,"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 /crypto/XTVCAIOZ.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 04:24:18 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: \"818cec95520d0748c3e1ee30e776d5ce\"\r\nlast-modified: Tue, 22 Nov 2022 13:38:16 GMT\r\ncdn-cachedat: 08/09/2025 14:29:30\r\nx-amz-id-2: jNRzj9N9lIzzgabOiU2jliiiZ7BJUJoI17CqrWgoJeN7Vm9kXwOX3C73pAfZyGCsUk8zJZUD2Bo=\r\nx-amz-request-id: 9DXNFP4J73Z0E4S9\r\nx-amz-meta-hash: 818cec95520d0748c3e1ee30e776d5ce\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: 0e418ae39ec5a87e3925a8221cfe4865\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":600,"size_decoded":1294,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (600), with no line terminators","md5":"818cec95520d0748c3e1ee30e776d5ce","sha1":"d728c66896595d50e8ef64146e7397e9b3b4dd8b","sha256":"fae06b3fb65b967804e9d8a7a95bca4fe15e9131b45b56680da414ac5f1e4ab6","sha512":"c566c4550a2b34d63282cc9710186396319fcbb1b43cc67816e047a452c1379aafc05e0f9931c94baefe2d6a47e8521a7301d6617cec3bcec75cf1d8692d9ff5","ssdeep":"","tlshash":"75f0ac3ae16ccd2fe902c278ebb094c7524f10c9b56083e5a5d95b6f5409ad3ed05774","first_seen":"2024-12-09T01:49:43.364241Z","last_seen":"2026-07-27T05:33:43.572022Z","times_seen":239,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYXMyaTFramJhKSIgZD0iTTAgMGgxOHYxOEgweiIvPjxwYXRoIGQ9Ik05IDE0LjFhNSA1IDAgMSAwIDAtMTAgNSA1IDAgMCAwIDAgMTBabTEtMi41OFY4LjAzbC0zLjI1IDMuOGMtLjA4LjEtLjIuMTYtLjMuMTctLjI0LjAxLS40NS0uMi0uNDUtLjQ1IDAtLjEyLjA0LS4yMi4xLS4zbDQuMDctNS4wOGEuNDcuNDcgMCAwIDEgLjM2LS4xN2MuMjYgMCAuNDcuMjIuNDcuNDl2NS4wM2MwIC4yNi0uMi40OC0uNDcuNDgtLjI1IDAtLjUzLS4yMi0uNTMtLjQ4WiIgZmlsbD0iI2ZmZiIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0iYXMyaTFramJhIiB4MT0iMy4zNSIgeTE9IjMuMTIiIHgyPSIyMS45IiB5Mj0iMjQuNDMiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjMUExRTIxIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMDYwNjBBIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PC9zdmc+"}},"time_used":135,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":135,"receive":0,"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.11","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"is_navigation_request":false,"resource_type":"xhr","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:20.182Z","timestamp":1785126260182,"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://besttrader.live\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://besttrader.live/\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 04:24:20 GMT\r\ncontent-type: application/json\r\naccess-control-allow-origin: *\r\ncache-control: max-age=300, public, s-maxage=60\r\netag: W/\"6a4cb803-891\"\r\nexpires: Tue, 07 Jul 2026 08:35:15 GMT\r\nlast-modified: Tue, 07 Jul 2026 08:25:39 GMT\r\nx-77-nzt: k8zhDOTqrb3SiSCwQ6UdDf02KAwbmDL0vGxaPW6RDD5KemDJPH7RpmsuyuMHBTBTtRjdL10\r\nx-77-nzt-ray: e2f754201b235a1474dd666aa903bc0e\r\nx-77-cache: HIT\r\nx-77-age: 53\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":1034,"mime_type":"application/json","magic":"JSON text data","md5":"88bd6816d4679ef7a63e1e6b61490804","sha1":"a592c82f8688d81c4ff12ddda0f42d842dbcf079","sha256":"1147d96bffe9abe8aa663c63cca281edbff049e2211f810da089a1dd90051df8","sha512":"e583bebb86335657d7cca5065967a4e281280f0b4ab1fe0457de1dee47f12f84922daf5fe938c39bfb8f03e086d706f2b0fd1d86a6e79c4cce053f0943dcb762","ssdeep":"","tlshash":"d9414593c0b80e5317cc262bb89545515d5083c7e88a3d0d366d9a7f2f4cea920e6b7e","first_seen":"2026-07-07T11:50:17.724469Z","last_seen":"2026-07-27T07:05:43.342998Z","times_seen":1725,"resource_available":false,"data":"ewogICJfV2lkZ2V0TWVzc2VuZ2VySW5wdXQtQzBYSFB4ZXYuanMiOiB7CiAgICAiZmlsZSI6ICJhc3NldHMvV2lkZ2V0TWVzc2VuZ2VySW5wdXQtQzBYSFB4ZXYuanMiLAogICAgIm5hbWUiOiAiV2lkZ2V0TWVzc2VuZ2VySW5wdXQiLAogICAgImltcG9ydHMiOiBbCiAgICAgICJfc2hhcmVkLUNnTUNBZm9yLmpzIgogICAgXSwKICAgICJkeW5hbWljSW1wb3J0cyI6IFsKICAgICAgIm5vZGVfbW9kdWxlcy8ucG5wbS9lbW9qaS1tYXJ0QDUuNi4wL25vZGVfbW9kdWxlcy9lbW9qaS1tYXJ0L2Rpc3QvbW9kdWxlLmpzIgogICAgXQogIH0sCiAgIl9zaGFyZWQtQ2dNQ0Fmb3IuanMiOiB7CiAgICAiZmlsZSI6ICJhc3NldHMvc2hhcmVkLUNnTUNBZm9yLmpzIiwKICAgICJuYW1lIjogIkljb25CdXR0b24iLAogICAgImR5bmFtaWNJbXBvcnRzIjogWwogICAgICAibm9kZV9tb2R1bGVzLy5wbnBtL0B0aHVtYm1hcmtqcyt0aHVtYm1hcmtqc0AxLjkuMC9ub2RlX21vZHVsZXMvQHRodW1ibWFya2pzL3RodW1ibWFya2pzL2Rpc3QvdGh1bWJtYXJrLmVzbS5qcyIKICAgIF0KICB9LAogICJub2RlX21vZHVsZXMvLnBucG0vQHRodW1ibWFya2pzK3RodW1ibWFya2pzQDEuOS4wL25vZGVfbW9kdWxlcy9AdGh1bWJtYXJranMvdGh1bWJtYXJranMvZGlzdC90aHVtYm1hcmsuZXNtLmpzIjogewogICAgImZpbGUiOiAiYXNzZXRzL3RodW1ibWFyay5lc20tQ1A0Q1UweUwuanMiLAogICAgIm5hbWUiOiAidGh1bWJtYXJrLmVzbSIsCiAgICAic3JjIjogIm5vZGVfbW9kdWxlcy8ucG5wbS9AdGh1bWJtYXJranMrdGh1bWJtYXJranNAMS45LjAvbm9kZV9tb2R1bGVzL0B0aHVtYm1hcmtqcy90aHVtYm1hcmtqcy9kaXN0L3RodW1ibWFyay5lc20uanMiLAogICAgImlzRHluYW1pY0VudHJ5IjogdHJ1ZQogIH0sCiAgIm5vZGVfbW9kdWxlcy8ucG5wbS9lbW9qaS1tYXJ0QDUuNi4wL25vZGVfbW9kdWxlcy9lbW9qaS1tYXJ0L2Rpc3QvbW9kdWxlLmpzIjogewogICAgImZpbGUiOiAiYXNzZXRzL21vZHVsZS1ERDVudlZEMy5qcyIsCiAgICAibmFtZSI6ICJtb2R1bGUiLAogICAgInNyYyI6ICJub2RlX21vZHVsZXMvLnBucG0vZW1vamktbWFydEA1LjYuMC9ub2RlX21vZHVsZXMvZW1vamktbWFydC9kaXN0L21vZHVsZS5qcyIsCiAgICAiaXNEeW5hbWljRW50cnkiOiB0cnVlCiAgfSwKICAic3JjL2ZyYW1lcy9tZXNzZW5nZXIvV2lkZ2V0TWVzc2VuZ2VyLnN2ZWx0ZSI6IHsKICAgICJmaWxlIjogImFzc2V0cy9XaWRnZXRNZXNzZW5nZXItREQ3T3l5VDUuanMiLAogICAgIm5hbWUiOiAiV2lkZ2V0TWVzc2VuZ2VyIiwKICAgICJzcmMiOiAic3JjL2ZyYW1lcy9tZXNzZW5nZXIvV2lkZ2V0TWVzc2VuZ2VyLnN2ZWx0ZSIsCiAgICAiaXNEeW5hbWljRW50cnkiOiB0cnVlLAogICAgImltcG9ydHMiOiBbCiAgICAgICJfc2hhcmVkLUNnTUNBZm9yLmpzIiwKICAgICAgIl9XaWRnZXRNZXNzZW5nZXJJbnB1dC1DMFhIUHhldi5qcyIsCiAgICAgICJzcmMvbWFpbi50cyIKICAgIF0KICB9LAogICJzcmMvZnJhbWVzL3BvcHVwL1dpZGdldFBvcHVwLnN2ZWx0ZSI6IHsKICAgICJmaWxlIjogImFzc2V0cy9XaWRnZXRQb3B1cC1xZXV3a2NCbi5qcyIsCiAgICAibmFtZSI6ICJXaWRnZXRQb3B1cCIsCiAgICAic3JjIjogInNyYy9mcmFtZXMvcG9wdXAvV2lkZ2V0UG9wdXAuc3ZlbHRlIiwKICAgICJpc0R5bmFtaWNFbnRyeSI6IHRydWUsCiAgICAiaW1wb3J0cyI6IFsKICAgICAgIl9zaGFyZWQtQ2dNQ0Fmb3IuanMiLAogICAgICAiX1dpZGdldE1lc3NlbmdlcklucHV0LUMwWEhQeGV2LmpzIgogICAgXQogIH0sCiAgInNyYy9tYWluLnRzIjogewogICAgImZpbGUiOiAiYXNzZXRzL21haW4tdDZXeExBQkEuanMiLAogICAgIm5hbWUiOiAibWFpbiIsCiAgICAic3JjIjogInNyYy9tYWluLnRzIiwKICAgICJpc0VudHJ5IjogdHJ1ZSwKICAgICJpbXBvcnRzIjogWwogICAgICAiX3NoYXJlZC1DZ01DQWZvci5qcyIKICAgIF0sCiAgICAiZHluYW1pY0ltcG9ydHMiOiBbCiAgICAgICJzcmMvZnJhbWVzL21lc3Nlbmdlci9XaWRnZXRNZXNzZW5nZXIuc3ZlbHRlIiwKICAgICAgInNyYy9mcmFtZXMvcG9wdXAvV2lkZ2V0UG9wdXAuc3ZlbHRlIgogICAgXQogIH0sCiAgInN0eWxlLmNzcyI6IHsKICAgICJmaWxlIjogImFzc2V0cy9zdHlsZS1DbGlKd1VUUi5jc3MiLAogICAgInNyYyI6ICJzdHlsZS5jc3MiCiAgfQp9"}},"time_used":68,"timings":{"blocked":-1,"dns":32,"connect":9,"send":0,"wait":9,"receive":0,"ssl":18},"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.153.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/Gc2en3nHxA4","date":"2026-07-27T04:24:20.398Z","timestamp":1785126260398,"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: 1785126260376\r\nContent-Type: application/json\r\nX-Goog-Visitor-Id: Cgs4QldqQ1NmZC1PWSjwupvTBjIoCgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgGGLfAgrcAjIwLllUPUU1YlpIX2xQMU5BckxHNDh0NmxSajlvZWVjVzB4eUVGZTl1MGViV09iLWctX0pmZlNFQVlEOTZ2Z2l6ODR6dFd1NGpMMlF1YjNpcVRRMlhzVnJtVWVsaDhiTDJaNTF3TkRTbW9wNmRuMVZ5a004NkRTM2FWZUVuN1FHOEVZOU1sM3d2dXZjc3NhNDN4a3FwRzh5YUlkOHVyQWpyWGhZRWZHUXBidGpQTWFFSm96dHhoMGNoWWMxVTVYbkxlU0tPZ2xhRExrVWJfVnZFWnE0UWNPSzZQS20yUWNFSjdZYUtNdk5OblJZNHYzR01OY1pFeTJOclJJWFhRRVFJNUQ4SUVWX2FtMEJNNHMwYjIzZG5JT1ZmTXlOUVZ5VzB1N3hBSzBOaTBzWWFRZTFUV2wwS21ERWpKbTMxMFhhWXFscEdjbmZHcFpwa25MUnJiNEdpZWtKMjhnZw%3D%3D\r\nX-Goog-Event-Time: 1785126260376\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=1785126257065\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%2C0%2C0%2C0%2C0\u0026vis=1\u0026wgl=true\u0026ca_type=image\r\nContent-Length: 13122\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/Gc2en3nHxA4\r\nCookie: __Secure-YNID=20.YT=E5bZH_lP1NArLG48t6lRj9oeecW0xyEFe9u0ebWOb-g-_JffSEAYD96vgiz84ztWu4jL2Qub3iqTQ2XsVrmUelh8bL2Z51wNDSmop6dn1VykM86DS3aVeEn7QG8EY9Ml3wvuvcssa43xkqpG8yaId8urAjrXhYEfGQpbtjPMaEJoztxh0chYc1U5XnLeSKOglaDLkUb_VvEZq4QcOK6PKm2QcEJ7YaKMvNNnRY4v3GMNcZEy2NrRIXXQEQI5D8IEV_am0BM4s0b23dnIOVfMyNQVyW0u7xAK0Ni0sYaQe1TWl0KmDEjJm310XaYqlpGcnfGpZpknLRrb4GiekJ28gg; YSC=nYVVApPxeLY; __Secure-ROLLOUT_TOKEN=CL_qp-jW2sbDnwEQ_4Clw4HylQMY_4Clw4HylQM%3D; VISITOR_INFO1_LIVE=8BWjCSfd-OY; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgGA%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":13122,"data":"{\"context\":{\"client\":{\"hl\":\"en\",\"gl\":\"NO\",\"clientName\":56,\"clientVersion\":\"2.20260724.01.00\",\"configInfo\":{\"appInstallData\":\"CPC6m9MGEInk0RwQvoTRHBC9tq4FEImwzhwQvoqwBRAAEJmNsQUQttvRHBDm69EcELnw0RwQ6fjRHBDxtNAcEMr7gBMQyfaAExD58tEcEL2ZsAUQzN-uBRCDh7giEParsAUQ9vfRHBCu1s8cEMf8gBMQh6zOHBCkjtIcEJXv0RwQxI3SHBDevM4cEIbhgBMQ4LfRHBC3-IATELjkzhwQ4oe4IhCIkNEcEODq0RwQndCwBRDa984cEJ_PgBMQioe4IhC8pNAcEO_e0RwQi_fPHBDBj9AcEPyyzhwQjpDRHBCkqdEcEIHNzhwQnYa4IhCOtYATEJOD0hwQ9enRHCpwQ0FNU1R4Vk0tWnEtRExpVUVwUUNuQTc1RlhhdkJ1RVdxTlVQeUFNTTN3M2NCdGdHN1FUM3Zla0xNcUNzQkFPUXJnUDdKcmJrQnVTRkY5RE1Cc1NTQmNzOXhTZloxUVhkTE9aRzFLN3ZIdHNHSFFjPTAA\"},\"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\":0,\"windowHeightPoints\":0},\"thirdParty\":{\"embedUrl\":\"https://besttrader.live/\"}},\"events\":[{\"eventTimeMs\":1785126257078,\"latencyActionTicked\":{\"tickName\":\"mm_is\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126257081,\"latencyActionTicked\":{\"tickName\":\"mm_ie\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126257088,\"latencyActionTicked\":{\"tickName\":\"ep_init_cus\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126257088,\"latencyActionTicked\":{\"tickName\":\"ep_init_eps\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126257088,\"latencyActionTicked\":{\"tickName\":\"ep_init_epe\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126257088,\"latencyActionTicked\":{\"tickName\":\"ep_init_cue\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126257366,\"latencyActionTicked\":{\"tickName\":\"pe\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126257368,\"latencyActionTicked\":{\"tickName\":\"ep_init_wes\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126256766,\"latencyActionTicked\":{\"tickName\":\"srt\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126256648,\"latencyActionBaselined\":{\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126256710,\"latencyActionTicked\":{\"tickName\":\"nreqs\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126256766,\"latencyActionTicked\":{\"tickName\":\"nress\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126256780,\"latencyActionTicked\":{\"tickName\":\"nrese\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126256668,\"latencyActionTicked\":{\"tickName\":\"ndnss\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126256672,\"latencyActionTicked\":{\"tickName\":\"ndnse\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126256672,\"latencyActionTicked\":{\"tickName\":\"ntcps\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126256710,\"latencyActionTicked\":{\"tickName\":\"ntcpe\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126256681,\"latencyActionTicked\":{\"tickName\":\"nstcps\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126256710,\"latencyActionTicked\":{\"tickName\":\"ntcpe\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126256907,\"latencyActionTicked\":{\"tickName\":\"wffs\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126257023,\"latencyActionTicked\":{\"tickName\":\"wffe\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126256889,\"latencyActionTicked\":{\"tickName\":\"rsf_pj\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126256983,\"latencyActionTicked\":{\"tickName\":\"rse_pj\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126256887,\"latencyActionTicked\":{\"tickName\":\"rsf_pc\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126256939,\"latencyActionTicked\":{\"tickName\":\"rse_pc\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126256889,\"latencyActionTicked\":{\"tickName\":\"rsf_ecj\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126256964,\"latencyActionTicked\":{\"tickName\":\"rse_ecj\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126256889,\"latencyActionTicked\":{\"tickName\":\"rsf_ecc\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126256945,\"latencyActionTicked\":{\"tickName\":\"rse_ecc\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126257375,\"latencyActionInfo\":{\"isNavigation\":true,\"actionType\":\"LATENCY_ACTION_VIDEO_PREVIEW\",\"httpProtocol\":\"h2\",\"transportProtocol\":\"tcp\",\"isVisible\":true,\"loadType\":\"cold\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126257063,\"latencyActionTicked\":{\"tickName\":\"rses_dpj\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126257380,\"latencyActionTicked\":{\"tickName\":\"ep_init_wee\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126257383,\"latencyActionInfo\":{\"serverTimeMs\":36,\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"-1\"}},{\"eventTimeMs\":1785126257422,\"screenCreated\":{\"csn\":\"l8OFgUarMqzqfQ6Q\",\"pageVe\":{\"veType\":16623,\"youtubeData\":{\"servletData\":{\"serializedServletEventId\":\"cN1mar-ALJbkq7YP4p7NuA0\"}}}},\"context\":{\"lastActivityMs\":\"21\"}},{\"eventTimeMs\":1785126257422,\"latencyActionInfo\":{\"clientScreenNonce\":\"l8OFgUarMqzqfQ6Q\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"22\"}},{\"eventTimeMs\":1785126257422,\"screenCreated\":{\"csn\":\"8ybcv_VM0SDUAjNs\",\"pageVe\":{\"veType\":32594},\"implicitGesture\":{\"parentCsn\":\"l8OFgUarMqzqfQ6Q\",\"gesturedVe\":{\"veType\":16623},\"gestureType\":\"INTERACTION_LOGGING_GESTURE_TYPE_AUTOMATED\"}},\"context\":{\"lastActivityMs\":\"22\"}},{\"eventTimeMs\":1785126257423,\"visualElementHidden\":{\"csn\":\"l8OFgUarMqzqfQ6Q\",\"ve\":{\"veType\":16623},\"eventType\":16},\"context\":{\"lastActivityMs\":\"22\"}},{\"eventTimeMs\":1785126257423,\"latencyActionInfo\":{\"clientScreenNonce\":\"8ybcv_VM0SDUAjNs\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"22\"}},{\"eventTimeMs\":1785126257423,\"visualElementAttached\":{\"csn\":\"8ybcv_VM0SDUAjNs\",\"parentVe\":{\"veType\":32594},\"childVes\":[{\"trackingParams\":\"CAAQru4BIhMI9vClw4HylQMV_dpPCB1nkTVNygEEFyOx2Q==\"}]},\"context\":{\"lastActivityMs\":\"22\"}},{\"eventTimeMs\":1785126257426,\"latencyActionTicked\":{\"tickName\":\"qoes\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"25\"}},{\"eventTimeMs\":1785126257427,\"latencyActionTicked\":{\"tickName\":\"fs\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"26\"}},{\"eventTimeMs\":1785126257459,\"latencyActionInfo\":{\"clientPlaybackNonce\":\"pTgPkwqaoaBmiEn4\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"59\"}},{\"eventTimeMs\":1785126257461,\"latencyActionTicked\":{\"tickName\":\"ep_init_pr\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"61\"}},{\"eventTimeMs\":1785126257689,\"latencyActionTicked\":{\"tickName\":\"ep_init_ijs\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"288\"}},{\"eventTimeMs\":1785126257690,\"latencyActionTicked\":{\"tickName\":\"ep_init_ije\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"290\"}},{\"eventTimeMs\":1785126257691,\"latencyActionTicked\":{\"tickName\":\"ep_init_rs\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"291\"}},{\"eventTimeMs\":1785126257696,\"latencyActionTicked\":{\"tickName\":\"ep_init_re\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"297\"}},{\"eventTimeMs\":1785126257723,\"visualElementAttached\":{\"csn\":\"8ybcv_VM0SDUAjNs\",\"parentVe\":{\"veType\":32594},\"childVes\":[{\"veType\":28572,\"veCounter\":2,\"elementIndex\":0}]},\"context\":{\"lastActivityMs\":\"322\"}},{\"eventTimeMs\":1785126257723,\"visualElementShown\":{\"csn\":\"8ybcv_VM0SDUAjNs\",\"ve\":{\"veType\":28572,\"veCounter\":2,\"elementIndex\":0},\"eventType\":1},\"context\":{\"lastActivityMs\":\"322\"}},{\"eventTimeMs\":1785126257786,\"latencyActionTicked\":{\"tickName\":\"ftr\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"385\"}},{\"eventTimeMs\":1785126257816,\"visualElementAttached\":{\"csn\":\"8ybcv_VM0SDUAjNs\",\"parentVe\":{\"veType\":32594},\"childVes\":[{\"veType\":23851,\"veCounter\":3,\"elementIndex\":0}]},\"context\":{\"lastActivityMs\":\"416\"}},{\"eventTimeMs\":1785126257816,\"visualElementShown\":{\"csn\":\"8ybcv_VM0SDUAjNs\",\"ve\":{\"veType\":23851,\"veCounter\":3,\"elementIndex\":0},\"eventType\":1},\"context\":{\"lastActivityMs\":\"416\"}},{\"eventTimeMs\":1785126257816,\"visualElementAttached\":{\"csn\":\"8ybcv_VM0SDUAjNs\",\"parentVe\":{\"veType\":32594},\"childVes\":[{\"veType\":36925,\"veCounter\":4,\"elementIndex\":0}]},\"context\":{\"lastActivityMs\":\"417\"}},{\"eventTimeMs\":1785126257816,\"visualElementShown\":{\"csn\":\"8ybcv_VM0SDUAjNs\",\"ve\":{\"veType\":36925,\"veCounter\":4,\"elementIndex\":0},\"eventType\":1},\"context\":{\"lastActivityMs\":\"417\"}},{\"eventTimeMs\":1785126257817,\"foregroundHeartbeatScreenAssociated\":{\"clientDocumentNonce\":\"UoukKXAucWZX4MSU\",\"clientScreenNonce\":\"l8OFgUarMqzqfQ6Q\"},\"context\":{\"lastActivityMs\":\"417\"}},{\"eventTimeMs\":1785126257817,\"foregroundHeartbeatScreenAssociated\":{\"clientDocumentNonce\":\"UoukKXAucWZX4MSU\",\"clientScreenNonce\":\"8ybcv_VM0SDUAjNs\"},\"context\":{\"lastActivityMs\":\"417\"}},{\"eventTimeMs\":1785126257817,\"latencyActionTicked\":{\"tickName\":\"ol\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"417\"}},{\"eventTimeMs\":1785126257817,\"latencyActionTicked\":{\"tickName\":\"ol\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"417\"}},{\"eventTimeMs\":1785126257881,\"latencyActionTicked\":{\"tickName\":\"pot_ist\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"481\"}},{\"eventTimeMs\":1785126258257,\"streamzIncremented\":{\"serializedIncrementBatch\":\"ChUvY2xpZW50X3N0cmVhbXovYmcvZWMSEAoOCghib3RndWFyZBICNTMaAmVuGgJtayIRCgMKAW8KBgoEYUdJZhICCAEiEQoDCgF0CgYKBGFHSWYSAggBIhEKAwoBaAoGCgRhR0lmEgIIEw==\"},\"context\":{\"lastActivityMs\":\"857\"}},{\"eventTimeMs\":1785126258260,\"streamzIncremented\":{\"serializedIncrementBatch\":\"ChUvY2xpZW50X3N0cmVhbXovYmcvZWwSEAoOCghib3RndWFyZBICNTMaAmVuGgJtayIYCgMKAWgKBgoEYUdJZhIJEQAAAAAAACZAIhgKAwoBaAoGCgRhR0lmEgkRAAAAAAAAKEAiGAoDCgFoCgYKBGFHSWYSCREAAAAAAAAoQCIYCgMKAWgKBgoEYUdJZhIJEQAAAAAAACZAIhgKAwoBaAoGCgRhR0lmEgkRAAAAAAAAJkAiGAoDCgFoCgYKBGFHSWYSCREAAAAAAAAmQCIYCgMKAWgKBgoEYUdJZhIJEQAAAAAAACZAIhgKAwoBaAoGCgRhR0lmEgkRAAAAAAAAEEAiGAoDCgFoCgYKBGFHSWYSCREAAAAAAAAQQCIYCgMKAWgKBgoEYUdJZhIJEQAAAAAAADdAIhgKAwoBaAoGCgRhR0lmEgkRAAAAAAAAIEAiGAoDCgFoCgYKBGFHSWYSCREAAAAAAAAmQCIYCgMKAWgKBgoEYUdJZhIJEQAAAAAAAPA/IhgKAwoBaAoGCgRhR0lmEgkRAAAAAAAAJkAiGAoDCgFoCgYKBGFHSWYSCREAAAAAAAAmQCIYCgMKAWgKBgoEYUdJZhIJEQAAAAAAACZAIhgKAwoBaAoGCgRhR0lmEgkRAAAAAACAVEAiGAoDCgFoCgYKBGFHSWYSCREAAAAAAAAmQCIYCgMKAWgKBgoEYUdJZhIJEQAAAAAAACJAIhgKAwoBdAoGCgRhR0lmEgkRAAAAAADQckA=\"},\"context\":{\"lastActivityMs\":\"859\"}},{\"eventTimeMs\":1785126258374,\"latencyActionTicked\":{\"tickName\":\"pot_if\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"973\"}},{\"eventTimeMs\":1785126258374,\"latencyActionTicked\":{\"tickName\":\"pot_cms\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"973\"}},{\"eventTimeMs\":1785126258376,\"latencyActionTicked\":{\"tickName\":\"pot_cmf\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"975\"}},{\"eventTimeMs\":1785126259261,\"streamzIncremented\":{\"serializedIncrementBatch\":\"ChYvY2xpZW50X3N0cmVhbXovYmcvZnJzEhAKDgoIYm90Z3VhcmQSAjUzGgJtayITCgYKBGFHSWYSCREAAAAAAJybQA==\"},\"context\":{\"lastActivityMs\":\"1860\"}},{\"eventTimeMs\":1785126259261,\"streamzIncremented\":{\"serializedIncrementBatch\":\"ChUvY2xpZW50X3N0cmVhbXovYmcvZWMSEAoOCghib3RndWFyZBICNTMaAmVuGgJtayIRCgMKAW4KBgoEYUdJZhICCAEiEQoDCgFtCgYKBGFHSWYSAggB\"},\"context\":{\"lastActivityMs\":\"1861\"}},{\"eventTimeMs\":1785126259262,\"streamzIncremented\":{\"serializedIncrementBatch\":\"ChUvY2xpZW50X3N0cmVhbXovYmcvZWwSEAoOCghib3RndWFyZBICNTMaAmVuGgJtayIYCgMKAW4KBgoEYUdJZhIJEQAAAAAAADtAIhgKAwoBaQoGCgRhR0lmEgkRAAAAAAAA8D8iGAoDCgFvCgYKBGFHSWYSCREAAAAAAKB+QCIYCgMKAWMKBgoEYUdJZhIJEQAAAAAAAAAAIhgKAwoBQwoGCgRhR0lmEgkRAAAAAAAAAEAiGAoDCgF4CgYKBGFHSWYSCREAAAAAAAAAACIYCgMKAW0KBgoEYUdJZhIJEQAAAAAAAABA\"},\"context\":{\"lastActivityMs\":\"1861\"}},{\"eventTimeMs\":1785126259813,\"latencyActionTicked\":{\"tickName\":\"ftl\",\"clientActionNonce\":\"otzgnfYbOUpUWEZ4\"},\"context\":{\"lastActivityMs\":\"2412\"}}],\"serializedClientEventId\":{\"serializedEventId\":\"cN1mar-ALJbkq7YP4p7NuA0\",\"clientCounter\":\"19875\"}}"}},"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 04:24:20 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-27T07:05:42.989595Z","times_seen":281974,"resource_available":false,"data":"ewogICJyZXNwb25zZUNvbnRleHQiOiB7fQp9Cg=="}},"time_used":30,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":30,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/images/step2.png","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.089Z","timestamp":1785126256089,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/step2.png HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/png\r\ncontent-length: 3295\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-cdf\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":3295,"size_decoded":3543,"mime_type":"image/png","magic":"PNG image data, 101 x 78, 8-bit/color RGBA, non-interlaced","md5":"50a768fb98a45eae8d7eba79f8b5240f","sha1":"a912f830128781ed8e10e2921bf40c5edbbf7b2d","sha256":"3e895614f81069bd5df023ac04bb7ea8fc95391a3f15b12af409b57416214dd9","sha512":"d7e14a50cce4bea3733f63d14f8000af9aee93e642a9d93153d07d26f00e6d17bf8e0eb4638c0571a3a4f235241e131aec3f5fa6c10c339fca063d33c0b69128","ssdeep":"","tlshash":"83614a1bed601dc162dde4970dc8cd3a8a3454c29bd16bb2ba87e86107701f49e8d9ce","first_seen":"2025-08-09T17:53:17.882243Z","last_seen":"2026-07-27T04:25:12.604008Z","times_seen":11,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAGUAAABOCAYAAAA5F9g6AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyNpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChNYWNpbnRvc2gpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkMxQUZGRDE4QjQ4MjExRTVCRjIwRjA1QTAxMTBFQTg5IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkZFODk1N0YyQjQ4MjExRTVCRjIwRjA1QTAxMTBFQTg5Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QzFBRkZEMTZCNDgyMTFFNUJGMjBGMDVBMDExMEVBODkiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QzFBRkZEMTdCNDgyMTFFNUJGMjBGMDVBMDExMEVBODkiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4mprhgAAAJUklEQVR42uxdCWxU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"}},"time_used":336,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":316,"receive":20,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.youtube.com/generate_204?ooTpVA","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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/Gc2en3nHxA4","date":"2026-07-27T04:24:18.133Z","timestamp":1785126258133,"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?ooTpVA 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/Gc2en3nHxA4\r\nCookie: __Secure-YNID=20.YT=E5bZH_lP1NArLG48t6lRj9oeecW0xyEFe9u0ebWOb-g-_JffSEAYD96vgiz84ztWu4jL2Qub3iqTQ2XsVrmUelh8bL2Z51wNDSmop6dn1VykM86DS3aVeEn7QG8EY9Ml3wvuvcssa43xkqpG8yaId8urAjrXhYEfGQpbtjPMaEJoztxh0chYc1U5XnLeSKOglaDLkUb_VvEZq4QcOK6PKm2QcEJ7YaKMvNNnRY4v3GMNcZEy2NrRIXXQEQI5D8IEV_am0BM4s0b23dnIOVfMyNQVyW0u7xAK0Ni0sYaQe1TWl0KmDEjJm310XaYqlpGcnfGpZpknLRrb4GiekJ28gg; YSC=nYVVApPxeLY; __Secure-ROLLOUT_TOKEN=CL_qp-jW2sbDnwEQ_4Clw4HylQMY_4Clw4HylQM%3D; VISITOR_INFO1_LIVE=8BWjCSfd-OY; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgGA%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 04:24:18 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-27T07:04:52.530819Z","times_seen":17558191,"resource_available":true,"data":""}},"time_used":13,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":13,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCMASK.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.739Z","timestamp":1785126258739,"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 /crypto/XTVCMASK.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 04:24:18 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: \"750a0d1d120cf5197561e489460a245a\"\r\nlast-modified: Mon, 25 Oct 2021 15:58:36 GMT\r\ncdn-cachedat: 08/09/2025 14:32:28\r\nx-amz-id-2: nLoy4yLdOlSeX6m8JzrBszAXnscfXI1fZMEpuvK8wxRvj7JKa2Szp/eLOzpj86J4jfCrFiZbAQU=\r\nx-amz-request-id: TVTXMVRYZ8X9XMYF\r\nx-amz-meta-hash: 750a0d1d120cf5197561e489460a245a\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: 36db3d391cb02e594d871aef66270d98\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":682,"size_decoded":1276,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (682), with no line terminators","md5":"750a0d1d120cf5197561e489460a245a","sha1":"64d7864ea32101448e940262ea4f0e11cdbf5c0f","sha256":"dffe582ff8b408c64d1ed3dc60322c970ac82047b83b61a9d86d124de7c29aa2","sha512":"c7dc6321e8719cda90756411a20b137dac5a1368f9a82bcfc8323f7d626fd155fe3dc65d6a41699be6e4d3b565452daa911d54f2751d0a427633958d8face190","ssdeep":"","tlshash":"aa019ee42b2991cc5d8fc53fee3f1cd53511bad5a17408c552f81f54a4967e36418a80","first_seen":"2023-05-14T08:25:50Z","last_seen":"2026-07-27T07:05:43.418851Z","times_seen":473,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjMUM2OEYzIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNCA3djNINS4zMDhDNS42ODggMTEuNjg1IDcuMiAxMi43NSA5IDEyLjc1YzEuNDg4IDAgMi44MjItMSAzLjQzOC0yLjI1SDE0VjEzYTEgMSAwIDAxLTEgMUg1YTEgMSAwIDAxLTEtMVY3aDEwem0tMi41IDMuNUEzLjA5MSAzLjA5MSAwIDAxOSAxMS44MTNjLTEuMDEgMC0xLjk3LS41MzgtMi41LTEuMzEzaDV6TTYuODEyIDcuNzVjLS43ODMgMC0xLjQ1NC40OTYtMS41NjIgMS4yNWguOTI0YS42MzcuNjM3IDAgMDEuNjM4LS40NjljLjMyMiAwIC41MzIuMTc5LjYyNS40NjloLjkzOGMtLjEwOC0uNzU0LS43NzktMS4yNS0xLjU2My0xLjI1em00LjM3NSAwYy0uNzgzIDAtMS40NTQuNDk2LTEuNTYyIDEuMjVoLjkzOGMuMDkzLS4yOS4zMDMtLjQ2OS42MjQtLjQ2OS4zMjIgMCAuNTMyLjE3OS42MjYuNDY5aC45MzdjLS4xMDgtLjc1NC0uNzc5LTEuMjUtMS41NjMtMS4yNXpNMTMgNGExIDEgMCAwMTEgMXYxSDRWNWExIDEgMCAwMTEtMWg4eiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCMANTRA.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.744Z","timestamp":1785126258744,"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 /crypto/XTVCMANTRA.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 04:24:18 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=300,s-maxage=180\r\ncontent-encoding: zstd\r\netag: \"76a313afd489707ee08314fda0124e46\"\r\nlast-modified: Thu, 02 Apr 2026 10:48:54 GMT\r\nx-amz-id-2: hxoto4bvOxUBFSsjOgTRORVvUaGrcIAH4QDzWo/ET/0Hvi7w4yJHNvlA7ScUfRMhbHqe1b13cFI=\r\nx-amz-request-id: MXDTF11Y485RJN2D\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 76a313afd489707ee08314fda0124e46\r\ncdn-proxyver: 1.49\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 04/02/2026 11:07:31\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 1f27dd335952bdc234fd2c8571438d5c\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":734,"size_decoded":1392,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (734), with no line terminators","md5":"76a313afd489707ee08314fda0124e46","sha1":"651c8dad20cd4663501198f7955504c722bf29ad","sha256":"5c45f29346898a5e2af20eaca67fa4e77b33d8ecbb7754a5fe51e7db5ce07015","sha512":"93c7ebf65c8e6bbfcfba7aed6e0d3da65d15d92a2e674c4f3a561b27c95eab62821ecc48beff56a3129e7936cab61870084f54665f3c3c4bc7d1c720a5035014","ssdeep":"","tlshash":"cf01dc7bdb2c484ea007d26ddb974800238f90ebf28ed2f4a4f9db39106b5828d02960","first_seen":"2026-04-03T05:20:54.920574Z","last_seen":"2026-07-27T07:05:43.240575Z","times_seen":261,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJtNC4zMyA2LjQ1IDMuNTUgMy45OWMuMy4zMy42Ny41IDEuMTIuNS40NSAwIC44My0uMTcgMS4xMi0uNWExNTAxLjE1IDE1MDEuMTUgMCAwIDAgMy41OC00bC4wMi4wMSAxLjIyIDEuNC4wMS4wMy0uMDEuMDQtMy41MiAzLjk2QTMuMTEgMy4xMSAwIDAgMSA5IDEzYy0uOTUgMC0xLjc2LS4zOC0yLjQyLTEuMTNhMTQyNDUuOTkgMTQyNDUuOTkgMCAwIDEtMy41My0zLjk5bC4wMS0uMDQgMS4yMi0xLjM5LjAyLS4wMS4wMy4wMVptNC43LTEuNDQgMS4yNSAxLjQyYy4wMS4wMi4wMS4wNiAwIC4wN0w5LjA0IDcuOTNhLjA0LjA0IDAgMCAxLS4wNiAwTDcuNzQgNi41YS4wNi4wNiAwIDAgMSAwLS4wN0w4Ljk3IDVhLjA0LjA0IDAgMCAxIC4wNyAwWiIgZmlsbD0iIzMwMkUyRCIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0iYSIgeDE9IjE1LjgzIiB5MT0iNS40NCIgeDI9IjEuOTYiIHkyPSIxMy4xMiIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiNGRjk3RDYiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNGOEI5OTQiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCOPGOPE.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.768Z","timestamp":1785126258768,"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 /crypto/XTVCOPGOPE.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 04:24:18 GMT\r\ncontent-type: image/svg+xml\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1827952\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 30\r\ncache-control: max-age=300,s-maxage=180\r\netag: W/\"6fd8e1798d146b391dc4c68c86a04064\"\r\nlast-modified: Thu, 14 May 2026 13:36:04 GMT\r\nx-amz-id-2: K9JHfc3pvpAIA39+j7vy5rdrjydyKTjLuDKmBTMq14KS9Mm3j6qoTu9CLXXqSv14N+290XxznXGfcwFkHO8BowDgHa27lD0X\r\nx-amz-request-id: 6X2T74P9MPNVYBWZ\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 6fd8e1798d146b391dc4c68c86a04064\r\nx-amz-version-id: F1dlacToOcOV1yAZCZOvQiGVhQCUWCjw\r\ncdn-proxyver: 1.53\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/14/2026 16:23:10\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: b562e4709c403a62363258c83fbd552a\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"]},{"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":1950,"size_decoded":2001,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1950), with no line terminators","md5":"6fd8e1798d146b391dc4c68c86a04064","sha1":"6367f5999ab17823ae69c93c00a398ae10874d22","sha256":"7a540062b53a8c672691957f1ffbda272b24a25263b643e3c1e0ebbc27a2e351","sha512":"e4ebd83ade60118b9e04e8fc6e5e6f4397c79250489a153d0823ad11f4f7e13cfbc1ba45b7ab69de380e3eba6eae61190ffaa0266923d15a9b953698141c6a76","ssdeep":"","tlshash":"2441ce657319a76e8883c198cb66d0f1030e409bf5faf2a869fa837d780b4c5f202d24","first_seen":"2026-06-18T08:26:17.089329Z","last_seen":"2026-07-27T05:33:43.656321Z","times_seen":7,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTIuNSA3LjAzYTEuMiAxLjIgMCAwIDAtLjgzLS4zNGgtLjM2di0uMzZjMC0uMzEtLjEyLS42LS4zNC0uODNMOS44NiA0LjM2YTEuMTkgMS4xOSAwIDAgMC0xLjcyIDBMNy4wNCA1LjVjLS4yMi4yMi0uMzUuNTItLjM1Ljgzdi4zNmgtLjM2Yy0uMzEgMC0uNi4xMi0uODMuMzRMNC4zNiA4LjE0YTEuMTkgMS4xOSAwIDAgMCAwIDEuNzJsMS4xNCAxLjFjLjIyLjIyLjUyLjM1LjgzLjM1aC4zNnYuMzZjMCAuMy4xMy42LjM0LjgzbDEuMTEgMS4xNEExLjE5IDEuMTkgMCAwIDAgOSAxNGMuMzIgMCAuNjMtLjEzLjg2LS4zNmwxLjEtMS4xNGMuMjItLjIyLjM1LS41Mi4zNS0uODN2LS4zNmguMzZjLjMxIDAgLjYtLjEyLjgzLS4zNGwxLjE0LTEuMTFhMS4xOSAxLjE5IDAgMCAwIDAtMS43MmwtMS4xNC0xLjFabS01LjA1LjQyaC40NGMuMTIgMCAuMjMuMDQuMzEuMTJsLjI2LjI1LS4yNy4yNy0uMDUuMDR2LjAxbC0uMDUuMDUtLjI3LjI3LS4yNS0uMjZhLjQ0LjQ0IDAgMCAxLS4xMi0uM3YtLjQ1Wm0wIDIuNjZjMC0uMTIuMDQtLjIzLjEyLS4zMWwuMjUtLjI2LjI3LjI3LjA0LjA1aC4wMWwuMDUuMDUuMjcuMjctLjI2LjI1YS40NC40NCAwIDAgMS0uMy4xMmgtLjQ1di0uNDRabS0uNDItLjg0Yy0uMjEuMjItLjM0LjUyLS4zNC44NHYuNDRoLS4zNmEuNDQuNDQgMCAwIDEtLjMtLjEyTDQuODggOS4zMkEuNDQuNDQgMCAwIDEgNC43NSA5YzAtLjEyLjA1LS4yMy4xNC0uMzJsMS4xMy0xLjFjLjA5LS4wOS4yLS4xMy4zMS0uMTNoLjM2di40NGMwIC4zMi4xMi42MS4zNC44NEw3LjMgOWwtLjI3LjI3Wm0zLjUyIDIuNGMwIC4xMS0uMDQuMjItLjEyLjNsLTEuMTEgMS4xNGEuNDQuNDQgMCAwIDEtLjY0IDBsLTEuMS0xLjEzYS40NC40NCAwIDAgMS0uMTMtLjMxdi0uMzZoLjQ0Yy4zMiAwIC42MS0uMTIuODQtLjM0TDkgMTAuN2wuMjcuMjdjLjIyLjIxLjUyLjM0Ljg0LjM0aC40NHYuMzZaTTguNSA5YS41LjUgMCAxIDEgMSAwIC41LjUgMCAwIDEtMSAwWm0yLjA1IDEuNTVoLS40NGEuNDQuNDQgMCAwIDEtLjMxLS4xMmwtLjI2LS4yNS4yNy0uMjcuMDUtLjA0di0uMDFsLjA1LS4wNS4yNy0uMjcuMjUuMjZjLjA4LjA4LjEyLjIuMTIuM3YuNDVabTAtMi42NmMwIC4xMi0uMDQuMjMtLjEyLjMxbC0uMjUuMjYtLjI3LS4yN2ExLjE2IDEuMTYgMCAwIDAtLjA0LS4wNWgtLjAxYTEuMjEgMS4yMSAwIDAgMC0uMDUtLjA1bC0uMjctLjI3LjI2LS4yNWMuMDgtLjA4LjItLjEyLjMtLjEyaC40NXYuNDRabTAtMS4yaC0uNDRjLS4zMiAwLS42Mi4xMy0uODQuMzRMOSA3LjNsLS4yNy0uMjdhMS4xOSAxLjE5IDAgMCAwLS44NC0uMzRoLS40NHYtLjM2YzAtLjExLjA0LS4yMi4xMi0uM2wxLjExLTEuMTRhLjQ0LjQ0IDAgMCAxIC41LS4xYy4wNS4wMi4xLjA1LjE0LjFsMS4xIDEuMTNjLjA5LjA5LjEzLjIuMTMuMzF2LjM2Wm0yLjU2IDIuNjMtMS4xMyAxLjFhLjQ0LjQ0IDAgMCAxLS4zMS4xM2gtLjM2di0uNDRjMC0uMzItLjEyLS42Mi0uMzQtLjg0TDEwLjcgOWwuMjctLjI3Yy4yMi0uMjIuMzQtLjUyLjM0LS44NHYtLjQ0aC4zNmMuMTEgMCAuMjIuMDQuMy4xMmwxLjE0IDEuMTFhLjQ0LjQ0IDAgMCAxIC4xLjUuNDQuNDQgMCAwIDEtLjEuMTRaIiBmaWxsPSIjQkRFQkY3Ii8+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJhIiB4MT0iOSIgeTE9IjAiIHgyPSI5IiB5Mj0iMTgiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjMDMzMDQ1Ii8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMjk4RkE1Ii8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCLAGR.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.807Z","timestamp":1785126258807,"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 /crypto/XTVCLAGR.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 04:24:18 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: \"fc41e340119e60299bd83acd57b969b4\"\r\nlast-modified: Fri, 04 Jul 2025 20:18:49 GMT\r\ncdn-cachedat: 08/09/2025 14:41:14\r\nx-amz-id-2: JjmdPv2QXvFg56PQIRr26dMBMPXNAhMnLIRMCgJMTpoNTdMRAfF7IhLy8tdMgxL6sSCPMBPQdRE=\r\nx-amz-request-id: DHCHGPHW4P4A7KB3\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: fc41e340119e60299bd83acd57b969b4\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: 7b61d999637173540a481cf1dd63aa62\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":566,"size_decoded":1275,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (566), with no line terminators","md5":"fc41e340119e60299bd83acd57b969b4","sha1":"2055b93f3fbe4d232c9e50b3813d3a2cd6c12a1e","sha256":"c5f7306aafd846e9d8ea475aea9462f4ec112713d80d0ecb70a8febeb4a1f083","sha512":"b3fa3775de8e7a51786b325ded11be6b5ad2c8251892121d59d56b18943a6b129880063ac20c14019db60641914360007b6f6310cebb8c9afaaf27bf4d646e51","ssdeep":"","tlshash":"ecf0a2f2a258c1ad84c2c2d8c7344170238d14a0708986f1b4bb1364b44f4ecd843908","first_seen":"2026-02-07T02:43:22.440738Z","last_seen":"2026-07-27T07:05:43.390337Z","times_seen":244,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTUgOWMwIC4zNC0uMS42My0uMzEuOS0uMi4yNS0uNDcuNDMtLjguNTMtLjMzLjEtLjY2LjA4LS45OS0uMDZhNy4zNCA3LjM0IDAgMCAxLTEuNzgtMS4yYy0uMDQtLjA0LS4wNy0uMDUtLjEtLjA0YTcuMjQgNy4yNCAwIDAgMS00LjEyIDIuNzJjLS41LjE5LTEuMDQuMi0xLjYuMDRhMy4xNyAzLjE3IDAgMCAxLTIuMDYtMS43NCAyLjg2IDIuODYgMCAwIDEgMC0yLjNBMy4xNyAzLjE3IDAgMCAxIDUuMyA2LjExYy41Ni0uMTYgMS4xLS4xNSAxLjYuMDQuNDUuMTYuODguMzcgMS4zLjYzYTIwLjY4IDIwLjY4IDAgMCAxIDIuODIgMi4xYy4wMyAwIC4wNi0uMDEuMS0uMDRhNy4zMyA3LjMzIDAgMCAxIDEuNzgtMS4yMWMuMzMtLjE0LjY2LS4xNi45OC0uMDYuMzQuMS42LjI4LjguNTMuMjIuMjcuMzIuNTYuMzIuOVoiLz48L3N2Zz4="}},"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":"besttrader.live/noti/fake.css","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.036Z","timestamp":1785126256036,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /noti/fake.css HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: text/css\r\nx-accel-version: 0.01\r\nlast-modified: Sat, 07 Oct 2023 09:01:37 GMT\r\netag: W/\"283-6071c9abfbe40\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":643,"size_decoded":470,"mime_type":"text/css","magic":"ASCII text, with very long lines (643), with no line terminators","md5":"621e2d6191ebd6b853fc337788474ad8","sha1":"72dc8b206721bb472641b650bff0f1a8755ad62f","sha256":"61448ffe88e6ddd4a42113ab7be9ebc514dc3bcaadbeb64a5ac5d8943272834e","sha512":"7fa9a72fddd40380ef1376a4027c538886c9eab23399eb2fb13b7969df99abd1fa19f89b91b56af7b31d5abf92ab3f84484ed46c140ac929f07e897bcf0d08eb","ssdeep":"","tlshash":"b8f09e118232b886b5b6827bb8033ef57433c84f3f530990cbd26f31d54599a5b03348","first_seen":"2024-12-25T09:51:11.973402Z","last_seen":"2026-07-27T06:59:18.347662Z","times_seen":19,"resource_available":false,"data":"Lm5vdGlmaWNhdGlvbntwYWRkaW5nOjEwcHg7ei1pbmRleDo5OTk5OTk5OTk5O3Bvc2l0aW9uOmZpeGVkO2ZvbnQtc2l6ZToxMnB4O2ZvbnQtZmFtaWx5OlZlcmRhbmEsc2Fucy1zZXJpZjtkaXNwbGF5Om5vbmU7Ym9yZGVyLXN0eWxlOnNvbGlkO30ubm90aWZpY2F0aW9uLWJsb2Nre3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7ZmxvYXQ6bGVmdDttaW4taGVpZ2h0OjFweDt3aGl0ZS1zcGFjZTpub3JtYWw7fS5ub3RpZmljYXRpb24taW1nLC5ub3RpZmljYXRpb24tdGV4dC1ibG9ja3tmbG9hdDpsZWZ0O21pbi1oZWlnaHQ6MXB4O3doaXRlLXNwYWNlOm5vcm1hbDtkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7fS5ub3RpZmljYXRpb24taW1ne2hlaWdodDo2MHB4O3dpZHRoOjYwcHg7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOjQwcHghaW1wb3J0YW50O2xpbmUtaGVpZ2h0OjQwcHg7fS5ub3RpZmljYXRpb24taW1naW1ne3dpZHRoOjEwMCU7aGVpZ2h0OmF1dG87fS5ub3RpZmljYXRpb24tdGV4dC1ibG9ja3t3aWR0aDoyMDBweDtwYWRkaW5nLWxlZnQ6MTBweDtwYWRkaW5nLXJpZ2h0OjEwcHg7bGluZS1oZWlnaHQ6MS4zO30ubm90aWZpY2F0aW9uLXRpdGxle2ZvbnQtd2VpZ2h0OmJvbGQ7fQ=="}},"time_used":184,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":184,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/images/preloader.gif","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.076Z","timestamp":1785126256076,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/preloader.gif HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/gif\r\ncontent-length: 137024\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-21740\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":137024,"size_decoded":137276,"mime_type":"image/gif","magic":"GIF image data, version 89a, 150 x 150","md5":"1ba954b1e6f749c142b13eb9cf7fdea4","sha1":"046b7880b6278a0a204e799f08097c526a1c0c23","sha256":"05a613ef9606956a253aa66173ad619a69925f2ba4edd861bfd775c623bb8b65","sha512":"773a0fc325434365319495957fec564ea6f622194b795964fc043eb8643679559834138b21dbc39f9da1e4caa5b126589ad110d620e235a7b5bebc6c5ae817cc","ssdeep":"3072:TGZd5DBLgfLwqbUa4m73gNl+jKewpec7zB5P0F0k0pPNu8Vf:TGD1AbU6wNlwwpX7t10F0kmVu8J","tlshash":"56d3238ed16d4ec6f72aa47481cfcd24eb240932ddba768e5513e78f05a480db887cd5","first_seen":"2026-07-27T03:36:45.060763Z","last_seen":"2026-07-27T04:25:12.60994Z","times_seen":2,"resource_available":false,"data":"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"}},"time_used":508,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":329,"receive":179,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/images/slider/slider3.jpg","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.706Z","timestamp":1785126256706,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/slider/slider3.jpg HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/jpeg\r\ncontent-length: 383855\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-5db6f\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":383855,"size_decoded":384108,"mime_type":"image/jpeg","magic":"JPEG image data, JFIF standard 1.01, resolution (DPI), density 96x96, segment length 16, baseline, precision 8, 1920x1080, components 3","md5":"519d115ae4280f7be01195e9bc636065","sha1":"b5ab70a72e3e46b6a65fb10112ee2208e6e78419","sha256":"7f8647367903e23aafd1667730e3a5283764e86ce9fe7b4cdea61474e20fe6fd","sha512":"ca8089decd2fcb764edaa9bf8babd9e091b31cbae49da627a36ef7c92c2901c630401daa25fde416020bc1961e30ebee591725e2de3e27d8c634d1eecff7b312","ssdeep":"6144:PleHB1n+RoWKaD/JYw3ldoaG3HpKGqBsb47iLMXvW4YEevS2yy7Q5Gs3PLPoOjO5:8kbYw3ldoaQHgGq2b47PXvWBvS2yzV3u","tlshash":"bb8423e35c214ca5093da2b1bf13f197ee4abd5f82dae354415a6daf37eee805ac1004","first_seen":"2025-10-25T15:46:41.086798Z","last_seen":"2026-07-27T04:25:12.61168Z","times_seen":6,"resource_available":false,"data":"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"}},"time_used":105,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":101,"receive":4,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","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/62681.6883c4b17e6a89e4b87f.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.330Z","timestamp":1785126257330,"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-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/62681.6883c4b17e6a89e4b87f.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/crypto-mkt-screener/?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 04:24:17 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-26d5\"\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:16:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 014495eb3a874c2a86fdda61f099436c\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":9941,"size_decoded":2934,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (9941), with no line terminators","md5":"96701d95e8d00efdc09eb9279b871453","sha1":"f12c6f203f7a76e20a0c25bccfbc5f43206b0eda","sha256":"88302743f0b5328d7e90f7e88b47561bc485ab5932193d4dc7755f1bf64cce3d","sha512":"046a3817646c8aca396aad13fdab96075c8699a9d511bc761475ed9e6337ee12877ed966bdd5a60f6361578d948dec9b2e08e3aed8fd78bda1cf8782568c89fa","ssdeep":"192:wCNtGzkUD/UlZ9wmjuMhT27zNJbg9spNHXRWgCWCoTwtsyYIOi7wYdg6YN:Ep89spNHXRWVWnTwtsyYVkwYdg6YN","tlshash":"5b22fab2d16265a76213f62de3e1fe09e337e3939a131fdee223845dc4c6ad94138049","first_seen":"2026-03-24T19:47:05.242316Z","last_seen":"2026-07-27T07:07:14.003416Z","times_seen":1498,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAteVR5eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLV8xLXlUeXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1fMi15VHl5OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLV8zLXlUeXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1fNC15VHl5OnZhcigtLWNvbG9yLXdoaXRlKTstLV81LXlUeXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1fNi15VHl5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tXzcteVR5eTp2YXIoLS1jb2xvci13aGl0ZSk7LS1fOC15VHl5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tXzkteVR5eTojMWUyMjJkZDk7LS1fMTAteVR5eTojMWUyMjJkMDA7LS1fMTEteVR5eTojZmZmZmZmZDk7LS1fMTIteVR5eTojZmZmMDstLV8xMy15VHl5OiNmZmYwOy0tXzE0LXlUeXk6I2YwZjNmYTAwfVtkYXRhLXRoZW1lPWRhcmtdey0tXzAteVR5eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLV8xLXlUeXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1fMi15VHl5OnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLV8zLXlUeXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1fNC15VHl5OnZhcigtLWNvbG9yLXdoaXRlKTstLV81LXlUeXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1fNi15VHl5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tXzcteVR5eTp2YXIoLS1jb2xvci13aGl0ZSk7LS1fOC15VHl5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tXzkteVR5eTojMWUyMjJkZDk7LS1fMTAteVR5eTojMWUyMjJkMDA7LS1fMTEteVR5eTojMDAwMDAwZDk7LS1fMTIteVR5eTojMDAwMDstLV8xMy15VHl5OiMwMDAwOy0tXzE0LXlUeXk6IzEzMTcyMjAwfS50di10YWJze2Rpc3BsYXk6ZmxleDtoZWlnaHQ6NTNweDtsaW5lLWhlaWdodDo1M3B4O292ZXJmbG93OmhpZGRlbjtwYWRkaW5nOjAgMTZweDtwb3NpdGlvbjpyZWxhdGl2ZTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZTt3aGl0ZS1zcGFjZTpub3dyYXA7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50fS50di10YWJzOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJvcmRlcik7Ym90dG9tOjA7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxcHg7aW5zZXQtaW5saW5lLWVuZDowO2luc2V0LWlubGluZS1zdGFydDowO3Bvc2l0aW9uOmFic29sdXRlfS50di10YWJzOjotd2Via2l0LXNjcm9sbGJhcntkaXNwbGF5Om5vbmV9LnR2LXRhYnMuaS1sb2FkZWR7cGFkZGluZzowfS50di10YWJzLS1jYXRlZ29yeS1jb250ZW50e3BhZGRpbmc6MCA2cHh9LnR2LXRhYnNfX3Njcm9sbC13cmFwe2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7b3ZlcmZsb3cteDpzY3JvbGw7b3ZlcmZsb3cteTpoaWRkZW47cGFkZGluZy1ib3R0b206MTAwcHg7cG9zaXRpb246cmVsYXRpdmU7d2hpdGUtc3BhY2U6bm93cmFwO3dpZHRoOjEwMCU7LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2g7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9LnR2LXRhYnNfX3Njcm9sbC1ib3h7ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOnJlbGF0aXZlfS50di10YWJzLmktbG9hZGVkIC50di10YWJzX19zY3JvbGwtYm94e3BhZGRpbmc6MCAxNnB4fS50di10YWJzX19hZGRpdGlvbmFsLWluZm97Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7dHJhbnNpdGlvbjppbmhlcml0fS50di10YWJzX190YWJ7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToxNHB4O2hlaWdodDo1M3B4O2xpbmUtaGVpZ2h0OjUzcHg7bWFyZ2luOjA7cGFkZGluZzowIDE2cHg7cG9zaXRpb246cmVsYXRpdmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50O2JveC1zaXppbmc6Ym9yZGVyLWJveDt0cmFuc2l0aW9uOmNvbG9yIC4zNXMgZWFzZX0udHYtdGFic19fdGFiOmFjdGl2ZXt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di10YWJzX190YWI6aG92ZXJ7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfX0udHYtdGFic19fdGFiLmktYWN0aXZlLC50di10YWJzX190YWI6YWN0aXZle2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXRhYnNfX3RhYjpob3Zlcntjb2xvcjp2YXIoLS1jb2xvci1icmFuZCl9fS50di10YWJzX190YWIuaS1kaXNhYmxlZCwudHYtdGFic19fdGFiOmRpc2FibGVkLC50di10YWJzX190YWJbZGlzYWJsZWRde2NvbG9yOnZhcigtLWNvbG9yLWJvcmRlcik7Y3Vyc29yOmRlZmF1bHR9LnR2LXRhYnNfX3RhYi0tbm8tcGFkZGluZ3twYWRkaW5nOjB9LnR2LXRhYnNfX3RhYi0tcmlnaHQtc2hpZnRlcnttYXJnaW4taW5saW5lLXN0YXJ0OmF1dG99LnR2LXRhYnNfX3RhYi0taWNvbi10YWJ7cGFkZGluZzowfS50di10YWJzLS1jYXRlZ29yeS1oZWFkZXJ7aGVpZ2h0OjQ2cHh9LnR2LXRhYnMtLWNhdGVnb3J5LWhlYWRlciAudHYtdGFic19fdGFie2ZvbnQtc2l6ZToxNnB4O2hlaWdodDo0NnB4O2xpbmUtaGVpZ2h0OjQ2cHg7cGFkZGluZy1pbmxpbmUtZW5kOjE2cHg7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MTZweH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXRhYnMtLWNhdGVnb3J5LWhlYWRlciAudHYtdGFic19fdGFiOmhvdmVyLC50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIgLnR2LXRhYnNfX3RhYjpob3ZlciAudHYtdGFic19fYWRkaXRpb25hbC1pbmZve2NvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsKX19LnR2LXRhYnMtLWNhdGVnb3J5LWhlYWRlciAudHYtdGFic19fdGFiLmktYWN0aXZle2N1cnNvcjpkZWZhdWx0fS50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIgLnR2LXRhYnNfX3RhYi5pLWFjdGl2ZSwudHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyIC50di10YWJzX190YWIuaS1hY3RpdmUgLnR2LXRhYnNfX2FkZGl0aW9uYWwtaW5mb3tjb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXByaW1hcnktbmV1dHJhbC1ib2xkKX0udHYtdGFic19fc2xpZGVyLC50di10YWJzX190YWIuaS1hY3RpdmU6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXByaW1hcnktbmV1dHJhbC1ib2xkKTtib3R0b206MDtkaXNwbGF5OmJsb2NrO2hlaWdodDozcHg7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZX0udHYtdGFicy0tY29tcGFjdCwudHYtdGFicy0tY29tcGFjdCAudHYtdGFic19fc2Nyb2xsLWJveCwudHYtdGFicy0tY29tcGFjdCAudHYtdGFic19fdGFie2hlaWdodDoyM3B4fS50di10YWJzLS1jb21wYWN0IC50di10YWJzX190YWJ7Zm9udC1zaXplOjEzcHg7bGluZS1oZWlnaHQ6MjNweH0udHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyLmktbG9hZGVkLC50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIuaS1sb2FkZWQgLnR2LXRhYnNfX3Njcm9sbC1ib3gsLnR2LXRhYnMtLWNvbXBhY3QsLnR2LXRhYnMtLWNvbXBhY3QuaS1sb2FkZWQgLnR2LXRhYnNfX3Njcm9sbC1ib3h7cGFkZGluZy1pbmxpbmUtZW5kOjA7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MH0udHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyLC50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIgLnR2LXRhYnNfX3Njcm9sbC1ib3gsLnR2LXRhYnMtLWNhdGVnb3J5LWhlYWRlci5pLWxvYWRlZCAudHYtdGFic19fc2Nyb2xsLWJveHtwYWRkaW5nLWlubGluZS1lbmQ6MjBweDtwYWRkaW5nLWlubGluZS1zdGFydDoyMHB4fS50di10YWJzLS1jYXRlZ29yeS1oZWFkZXI6YmVmb3JlLC50di10YWJzLS1jb21wYWN0OmJlZm9yZXtib3R0b206MH0udHYtdGFicy0tY29tcGFjdCAudHYtdGFic19fdGFiOmZpcnN0LWNoaWxke21hcmdpbi1pbmxpbmUtc3RhcnQ6LTE2cHh9LnR2LXRhYnMtLWNvbXBhY3QgLnR2LXRhYnNfX3RhYjpsYXN0LWNoaWxke21hcmdpbi1pbmxpbmUtZW5kOi0xNnB4fS50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIgLnR2LXRhYnNfX3RhYjpmaXJzdC1jaGlsZHttYXJnaW4taW5saW5lLXN0YXJ0Oi0xNnB4fS50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIgLnR2LXRhYnNfX3RhYjpsYXN0LWNoaWxke21hcmdpbi1pbmxpbmUtZW5kOi0xNnB4fS5wYWdlLXdpZGUgLnR2LXRhYnMtLWNhdGVnb3J5LWhlYWRlciAudHYtdGFic19fdGFie3BhZGRpbmctaW5saW5lLWVuZDoxNnB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjE2cHh9LnBhZ2Utd2lkZSAudHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyIC50di10YWJzX190YWI6Zmlyc3QtY2hpbGR7bWFyZ2luLWlubGluZS1zdGFydDotMTZweH0ucGFnZS13aWRlIC50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIgLnR2LXRhYnNfX3RhYjpsYXN0LWNoaWxke21hcmdpbi1pbmxpbmUtZW5kOi0xNnB4fS50di10YWJzLS1jb21wYWN0IC50di10YWJzX190YWIuaS1oaWRkZW46Zmlyc3QtY2hpbGQrLnR2LXRhYnNfX3RhYnttYXJnaW4taW5saW5lLXN0YXJ0Oi0xNnB4fS50di10YWJzLS1jb21wYWN0IC50di10YWJzX19zbGlkZXIsLnR2LXRhYnMtLWNvbXBhY3QgLnR2LXRhYnNfX3RhYi5pLWFjdGl2ZTphZnRlcntib3R0b206MDtoZWlnaHQ6MXB4fUBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KXsudHYtdGFicy0td2l0aC13cmFwLXBhZGRpbmctbW9iaWxlIC50di10YWJzX190YWI6Zmlyc3QtY2hpbGR7bWFyZ2luLWlubGluZS1zdGFydDowO3BhZGRpbmctaW5saW5lLXN0YXJ0OjB9LnR2LXRhYnMtLXdpdGgtd3JhcC1wYWRkaW5nLW1vYmlsZSAudHYtdGFic19fdGFiOm50aC1sYXN0LWNoaWxkKDIpe21hcmdpbi1pbmxpbmUtZW5kOjA7cGFkZGluZy1pbmxpbmUtZW5kOjB9fS50di10YWJzLS1uby1tYXJnaW4gLnR2LXRhYnNfX3RhYjpmaXJzdC1jaGlsZHttYXJnaW4taW5saW5lLXN0YXJ0OjB9LnR2LXRhYnMtLW5vLW1hcmdpbiAudHYtdGFic19fdGFiOmxhc3QtY2hpbGR7bWFyZ2luLWlubGluZS1lbmQ6MH0udHYtdGFicy0tc2Vjb25kYXJ5LWFjdGl2ZSAudHYtdGFic19fd3JhcHthbGlnbi1pdGVtczpjZW50ZXI7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMC15VHl5KTtib3JkZXItcmFkaXVzOjI1cHg7ZGlzcGxheTpmbGV4O2hlaWdodDoyM3B4O3BhZGRpbmc6MCAxNHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtdGFicy0tc2Vjb25kYXJ5LWFjdGl2ZSAudHYtdGFic19fd3JhcDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8xLXlUeXkpfX0udHYtdGFicy0tc2Vjb25kYXJ5LWFjdGl2ZSAudHYtdGFic19fdGFie2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7Zm9udC1zaXplOjEzcHg7cGFkZGluZzowIDZweH0udHYtdGFicy0tc2Vjb25kYXJ5LWFjdGl2ZSAudHYtdGFic19fdGFiLmktYWN0aXZlIC50di10YWJzX193cmFwe2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzIteVR5eSk7Y29sb3I6dmFyKC0tXzQteVR5eSl9LnR2LXRhYnMtLW5vLWJvcmRlcjpiZWZvcmV7ZGlzcGxheTpub25lfS50di10YWJzLS1uby1wYWRkaW5nLC50di10YWJzLS1uby1wYWRkaW5nLmktbG9hZGVkIC50di10YWJzX19zY3JvbGwtYm94e3BhZGRpbmc6MH0udHYtdGFicy0tbm8tcGFkZGluZyAudHYtdGFic19fdGFie3BhZGRpbmc6MCAxNnB4fS50di10YWJzLS1uby1wYWRkaW5nIC50di10YWJzX190YWIudHYtdGFic19fdGFiLS1uby1wYWRkaW5ne3BhZGRpbmc6MH0udHYtdGFicy5pLWxvYWRlZCAudHYtdGFic19fdGFiLmktYWN0aXZlOmFmdGVye2NvbnRlbnQ6bm9uZTtkaXNwbGF5Om5vbmV9LnR2LXRhYnNfX2xlZnQtYXJyb3csLnR2LXRhYnNfX3JpZ2h0LWFycm93e2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym90dG9tOjA7Ym94LXNpemluZzppbml0aWFsO2N1cnNvcjpwb2ludGVyO2RpcmVjdGlvbjpsdHI7ZGlzcGxheTpmbGV4O3BhZGRpbmc6MCA1cHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7d2lkdGg6MzZweH0udHYtdGFic19fbGVmdC1hcnJvdzphZnRlciwudHYtdGFic19fcmlnaHQtYXJyb3c6YWZ0ZXJ7Y29udGVudDoiIjtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MTAwJTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LnR2LXRhYnNfX2xlZnQtYXJyb3cgc3ZnLC50di10YWJzX19yaWdodC1hcnJvdyBzdmd7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjEycHg7dHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zaXRpb246ZmlsbCAuMzVzIGVhc2U7dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjEycHh9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di10YWJzX19sZWZ0LWFycm93OmhvdmVyIHN2ZywudHYtdGFic19fcmlnaHQtYXJyb3c6aG92ZXIgc3Zne2ZpbGw6dmFyKC0tXzUteVR5eSk7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfX0udHYtdGFic19fbGVmdC1hcnJvdzphY3RpdmUgc3ZnLC50di10YWJzX19yaWdodC1hcnJvdzphY3RpdmUgc3Zne2ZpbGw6dmFyKC0tXzYteVR5eSk7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfS50di10YWJzX19yaWdodC1hcnJvd3tqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnR2LXRhYnMtLWNhdGVnb3J5LWhlYWRlciAudHYtdGFic19fbGVmdC1hcnJvdywudHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyIC50di10YWJzX19yaWdodC1hcnJvd3tib3R0b206M3B4O21hcmdpbi10b3A6LTFweH0udHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyIC50di10YWJzX19sZWZ0LWFycm93IHN2ZywudHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyIC50di10YWJzX19yaWdodC1hcnJvdyBzdmd7dmVydGljYWwtYWxpZ246dG9wfS50di10YWJzX19sZWZ0LWFycm93e2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LHZhcigtLWNvbG9yLWJvZHktYmcpLHZhcigtLV8xMS15VHl5KSx2YXIoLS1fMTIteVR5eSkpO2xlZnQ6MDt0ZXh0LWFsaWduOmxlZnQ7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfS50di10YWJzX19sZWZ0LWFycm93Lmktc2xpZGVke3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKX0udHYtdGFic19fcmlnaHQtYXJyb3d7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gbGVmdCx2YXIoLS1jb2xvci1ib2R5LWJnKSx2YXIoLS1fMTEteVR5eSksdmFyKC0tXzEyLXlUeXkpKTtyaWdodDowO3RleHQtYWxpZ246cmlnaHQ7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfS50di10YWJzX19yaWdodC1hcnJvdy5pLXNsaWRlZHt0cmFuc2Zvcm06dHJhbnNsYXRlWCgxMDAlKX0udHYtdGFicy0tY29tcGFjdCAudHYtdGFic19fbGVmdC1hcnJvdywudHYtdGFicy0tY29tcGFjdCAudHYtdGFic19fcmlnaHQtYXJyb3d7d2lkdGg6MjNweH0udHYtdGFicy0tY2F0ZWdvcnktaGVhZGVyIC50di10YWJzX19sZWZ0LWFycm93LC50di10YWJzLS1jYXRlZ29yeS1oZWFkZXIgLnR2LXRhYnNfX3JpZ2h0LWFycm93e3dpZHRoOjQ1cHh9LnR2LXRhYnMtLXNlYXJjaGJhcjpiZWZvcmV7ZGlzcGxheTpub25lfS50di10YWJzLS1zZWFyY2hiYXIsLnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fc2Nyb2xsLWJveHtoZWlnaHQ6ODBweH1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di10YWJzLS1zZWFyY2hiYXIsLnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fc2Nyb2xsLWJveHtoZWlnaHQ6NTRweH19LnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fc2xpZGVyLC50di10YWJzLS1zZWFyY2hiYXIgLnR2LXRhYnNfX3RhYi5pLWFjdGl2ZTphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV83LXlUeXkpO2JvdHRvbTowfS50di10YWJzLS1zZWFyY2hiYXItcHJvZmlsZSAudHYtdGFic19fc2xpZGVyLC50di10YWJzLS1zZWFyY2hiYXItcHJvZmlsZSAudHYtdGFic19fdGFiLmktYWN0aXZlOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWwtYm9sZCk7Ym90dG9tOjB9LnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fbGVmdC1hcnJvdyBzdmcsLnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fcmlnaHQtYXJyb3cgc3Zne2ZpbGw6dmFyKC0tY29sb3Itd2hpdGUpO29wYWNpdHk6LjY1fS50di10YWJzLS1zZWFyY2hiYXIgLnR2LXRhYnNfX2xlZnQtYXJyb3c6YWN0aXZlIHN2ZywudHYtdGFicy0tc2VhcmNoYmFyIC50di10YWJzX19yaWdodC1hcnJvdzphY3RpdmUgc3Zne2ZpbGw6dmFyKC0tY29sb3Itd2hpdGUpO29wYWNpdHk6MX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fbGVmdC1hcnJvdzpob3ZlciBzdmcsLnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fcmlnaHQtYXJyb3c6aG92ZXIgc3Zne2ZpbGw6dmFyKC0tY29sb3Itd2hpdGUpO29wYWNpdHk6MX19LnR2LXRhYnMtLXNlYXJjaGJhciAudHYtdGFic19fbGVmdC1hcnJvdywudHYtdGFicy0tc2VhcmNoYmFyIC50di10YWJzX19yaWdodC1hcnJvd3tiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byByaWdodCx2YXIoLS1fOC15VHl5KSx2YXIoLS1fOS15VHl5KSx2YXIoLS1fMTAteVR5eSkpfS50di10YWJzLS1zZWFyY2hiYXJfc3ViLC50di10YWJzLS1zZWFyY2hiYXJfc3ViIC50di10YWJzX19zY3JvbGwtYm94e2hlaWdodDo0MHB4O2xpbmUtaGVpZ2h0OjQwcHh9LnR2LXRhYnMtLXNlYXJjaGJhcl9zdWIgLnR2LXRhYnNfX2xlZnQtYXJyb3d7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcsIzI2NWFlYiAwLCMyNjVhZWIgMTUlLCMyNjVhZWIwMCl9LnR2LXRhYnMtLXNlYXJjaGJhcl9zdWIgLnR2LXRhYnNfX3JpZ2h0LWFycm93e2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLCMyNjVhZWIwMCAwLCMyNjVhZWIgODUlLCMyNjVhZWIpfS50di10YWJzLS1zZWFyY2hiYXItcHJvZmlsZSAudHYtdGFic19fbGVmdC1hcnJvd3tiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byByaWdodCx2YXIoLS1jb2xvci1oZWFkZXItYmcpIDAsdmFyKC0tY29sb3ItaGVhZGVyLWJnKSA0NSUsdmFyKC0tXzEzLXlUeXkpIDEwMCUpfS50di10YWJzLS1zZWFyY2hiYXItcHJvZmlsZSAudHYtdGFic19fcmlnaHQtYXJyb3d7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsdmFyKC0tXzEzLXlUeXkpIDAsdmFyKC0tY29sb3ItaGVhZGVyLWJnKSA1NSUsdmFyKC0tY29sb3ItaGVhZGVyLWJnKSAxMDAlKX0udHYtdGFicy0tc2VhcmNoYmFyLXByb2ZpbGUgLnR2LXRhYnNfX2xlZnQtYXJyb3csLnR2LXRhYnMtLXNlYXJjaGJhci1wcm9maWxlIC50di10YWJzX19yaWdodC1hcnJvd3tjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXJlZ3VsYXIpfS50di10YWJzLS1zZWFyY2hiYXItcHJvZmlsZS50di10YWJzLS1zZWFyY2hiYXJfc3ViIC50di10YWJzX19sZWZ0LWFycm93e2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LHZhcigtLWNvbG9yLWJvZHktc2Vjb25kYXJ5LWJnKSAwLHZhcigtLWNvbG9yLWJvZHktc2Vjb25kYXJ5LWJnKSA0NSUsdmFyKC0tXzE0LXlUeXkpIDEwMCUpfS50di10YWJzLS1zZWFyY2hiYXItcHJvZmlsZS50di10YWJzLS1zZWFyY2hiYXJfc3ViIC50di10YWJzX19yaWdodC1hcnJvd3tiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byByaWdodCx2YXIoLS1fMTQteVR5eSkgMCx2YXIoLS1jb2xvci1ib2R5LXNlY29uZGFyeS1iZykgNTUlLHZhcigtLWNvbG9yLWJvZHktc2Vjb25kYXJ5LWJnKSAxMDAlKX0="}},"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.tradingview-widget.com/static/bundles/embed/80207.3e5e7d68c875b367cad0.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.368Z","timestamp":1785126257368,"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-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/80207.3e5e7d68c875b367cad0.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/crypto-mkt-screener/?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 04:24:17 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: \"6a3a25bf-d2fc\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 23 Jun 2026 06:20:47 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/23/2026 10:37:07\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: ef05c0e8f95d4680cf810371b689486f\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":54012,"size_decoded":13968,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (51870)","md5":"efb45a2a5e9dedce76162279dc170b0e","sha1":"38843307f1bc14de893dfe253b89aa9ec4532bfa","sha256":"c4adc1700ca5f8538ca44843bf76da33e0bc360cdf11ff0ddafbd8856c5bad4d","sha512":"3ef5908b8c8ed8de392171a9c51bbea83f11fdb7542f8fb58439589ee43db4b6785bdb1a3e71993950d28351eb79c5548d8567cfb5f4a5991ab3488d323d675e","ssdeep":"1536:guE5AIu9J3vqcJNT6FuEckfLVnddIwc99EkRIWEEPk2SYHj28kxu:DGxu95vqcHT6gT8VnddPgTRCEgYDDkxu","tlshash":"7f33a56091880f44656183d0bcff24602d9c3d5b4ab665bcde9f0d5b4e99ac83e3bd3a","first_seen":"2026-06-24T00:20:51.960912Z","last_seen":"2026-07-27T07:14:43.780454Z","times_seen":261,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbODAyMDddLHszODAyMDcobCxpLG4pe24uZChpLHt0cmllc1RyYW5zbGF0ZVNjcmVlbmVyRGF0YTooKT0+dX0pO3ZhciB0PW4oMTg1MjcxKTtjb25zdCBlPW5ldyBNYXAoW1siQmFzaWMgTWF0ZXJpYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDAxMTY4KSldLFsiQ2FwaXRhbCBHb29kcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk4NjU4OSkpXSxbIkNvbW1lcmNpYWwgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0Mzc3MDEpKV0sWyJDb21tdW5pY2F0aW9ucyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg1ODE4KSldLFsiQ29uZ2xvbWVyYXRlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDcyMTMzMykpXSxbIkNvbnN1bWVyIEN5Y2xpY2FsIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTU5MjUyKSldLFsiQ29uc3VtZXIgQ3ljbGljYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTQ1Mzk1KSldLFsiQ29uc3VtZXIgRHVyYWJsZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3NTQ4NDMpKV0sWyJDb25zdW1lciBOb24tQ3ljbGljYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODMxODgyKSldLFsiQ29uc3VtZXIgTm9uLUR1cmFibGVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTU2NDc1KSldLFsiQ29uc3VtZXIgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNTI4MDgpKV0sWyJDb25zdW1lci9Ob24tQ3ljbGljYWwiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNjQ5KSldLFsiRGlzdHJpYnV0aW9uIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTcxMzQyKSldLFsiRWxlY3Ryb25pYyBUZWNobm9sb2d5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzU5NjE1KSldLFsiRW5lcmd5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODI1NTQyKSldLFsiRW5lcmd5IE1pbmVyYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTYwMzg5KSldLFsiRmluYW5jZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ2MjE5MykpXSxbIkZpbmFuY2lhbCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEyODQ3OSkpXSxbIkZpbmFuY2lhbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNjkzMjUpKV0sWyJHb3Zlcm5tZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzgzMzE4KSldLFsiSGVhbHRoIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjIwNjAxKSldLFsiSGVhbHRoIFRlY2hub2xvZ3kiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0MTg0NTcpKV0sWyJIZWFsdGhjYXJlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODA2ODY3KSldLFsiSW5kdXN0cmlhbCBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk5OTU2MCkpXSxbIkluZHVzdHJpYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTc4NTcyKSldLFsiTWlzY2VsbGFuZW91cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE1NzAyMykpXSxbIk5vbi1FbmVyZ3kgTWluZXJhbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1OTI1MzgpKV0sWyJQcm9jZXNzIEluZHVzdHJpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MjA2OTgpKV0sWyJQcm9kdWNlciBNYW51ZmFjdHVyaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTI3NjQwKSldLFsiUmV0YWlsIFRyYWRlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTkwMDY2KSldLFsiU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MzcwNTkpKV0sWyJUZWNobm9sb2d5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjcxMDc5KSldLFsiVGVjaG5vbG9neSBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY0MDk1MykpXSxbIlRlbGVjb21tdW5pY2F0aW9ucyBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg1MjU4NSkpXSxbIlRyYW5zcG9ydGF0aW9uIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzY4MzkwKSldLFsiVXRpbGl0aWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODkxMTM2KSldXSkKO2NvbnN0IG89bmV3IE1hcChbWyJFeG90aWMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1ODA4MzIpKV0sWyJNYWpvciIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ0Nzc1MykpXSxbIk1pbm9yIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjA2OTgzKSldLFsiQWNjZXNzb3JpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMzkwMjcpKV0sWyJBY2NvdW50aW5nICYgVGF4IFByZXBhcmF0aW9uIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjAzMjkyKSldLFsiQWRoZXNpdmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5MTgzMTApKV0sWyJBZHVsdCBFbnRlcnRhaW5tZW50IFByb2R1Y3Rpb24gJiBCcm9hZGNhc3RpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigxODcwNzUpKV0sWyJBZHVsdCBQcm9kdWN0cyBSZXRhaWxlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyOTA3ODQpKV0sWyJBZHZhbmNlZCBFbGVjdHJvbmljIEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDcwOTkzKSldLFsiQWR2YW5jZWQgTWVkaWNhbCBFcXVpcG1lbnQgJiBUZWNobm9sb2d5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjI5NjQwKSldLFsiQWR2YW5jZWQgTWVkaWNhbCBFcXVpcG1lbnQgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjk0MDMzKSldLFsiQWR2YW5jZWQgUG9seW1lciIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU4MDM0MCkpXSxbIkFkdmVudHVyZSBTcG9ydHMgRmFjaWxpdGllcyAmIFNraSBSZXNvcnRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzc1ODc2KSldLFsiQWR2ZXJ0aXNpbmcgJiBNYXJrZXRpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNjgzNjkpKV0sWyJBZHZlcnRpc2luZy9NYXJrZXRpbmcgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyODU2NzcpKV0sWyJBZHZlcnRpc2luZyBBZ2VuY3kiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMjY4NjkpKV0sWyJBZXJvc3BhY2UgJiBEZWZlbnNlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTMwOTY5KSldLFsiQWdyaWN1bHR1cmFsIEJpb3RlY2hub2xvZ3kiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2ODUxNTApKV0sWyJBZ3JpY3VsdHVyYWwgQ2hlbWljYWxzIFdob2xlc2FsZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM2Mjg3OCkpXSxbIkFncmljdWx0dXJhbCBDaGVtaWNhbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzOTE2NzIpKV0sWyJBZ3JpY3VsdHVyYWwgQ29tbW9kaXRpZXMvTWlsbGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYwMjY4MCkpXSxbIkFncmljdWx0dXJhbCBNYWNoaW5lcnkiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0ODIxMDEpKV0sWyJBZ3JpY3VsdHVyZSBTdXBwb3J0IFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODg3MzkyKSldLFsiQWlyICYgR2FzIENvbXByZXNzb3JzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjA4OTY0KSldLFsiQWlyIEZyZWlnaHQgJiBDb3VyaWVyIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODA3MDQyKSldLFsiQWlyIEZyZWlnaHQgJiBMb2dpc3RpY3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NjQ4MTApKV0sWyJBaXIgRnJlaWdodCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDcwNDg0NikpXSxbIkFpciBGcmVpZ2h0L0NvdXJpZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzkwNDkzKSldLFsiQWlyIEZyZWlnaHQvRGVsaXZlcnkgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1NjgzMzYpKV0sWyJBaXJjcmFmdCBFcXVpcG1lbnQgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjQ4MDkxKSldLFsiQWlyY3JhZnQgUGFydHMgTWFudWZhY3R1cmluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDcwMjE3MSkpXSxbIkFpcmxpbmUgQ2F0ZXJpbmcgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2MDgyNzYpKV0sWyJBaXJsaW5lcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM1MDQwMykpXSxbIkFpcnBvcnQgT3BlcmF0b3JzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzg2NDcwKSldLFsiQWlycG9ydCBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMwMjMwMykpXSxbIkFsbCBPdGhlciBGb29kIE1hbnVmYWN0dXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NjIwMTYpKV0sWyJBbHRlcm5hdGl2ZSBNZWRpY2luZSBGYWNpbGl0aWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjEwMDgxKSldLFsiQWx0ZXJuYXRpdmUgTWVkaWNpbmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MTQ1MDApKV0sWyJBbHRlcm5hdGl2ZSBQb3dlciBHZW5lcmF0aW9uIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTk1NzQ1KSldLFsiQWx1bWludW0gUm9sbGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIwNzc3MSkpXSxbIkFsdW1pbnVtIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjY3OTkzKSldLFsiQW1idWxhbmNlICYgRW1lcmdlbmN5IFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzgxMDg4KSldLFsiQW11c2VtZW50IFBhcmtzIGFuZCBab29zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDE5NTMpKV0sWyJBbmltYWwgQnJlZWRpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NzM4MzQpKV0sWyJBbmltYWwgRmVlZCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY2MDY4NCkpXSxbIkFuaW1hbCBTbGF1Z2h0ZXJpbmcgJiBQcm9jZXNzaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTQzODY2KSldLFsiQW50aXF1ZSBEZWFsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzgwMzUwKSldLFsiQXBwYXJlbCAmIEFjY2Vzc29yaWVzIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM5NTcyNSkpXSxbIkFwcGFyZWwgJiBBY2Nlc3NvcmllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI0MTc4NykpXSxbIkFwcGFyZWwgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTI4MDkpKV0sWyJBcHBhcmVsL0Zvb3R3ZWFyIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTI2NzM0KSldLFsiQXBwYXJlbC9Gb290d2VhciBSZXRhaWwiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5MDI5ODQpKV0sWyJBcHBsaWFuY2UgJiBIb3VzZXdhcmUgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzAyNDQ3KSldLFsiQXBwbGlhbmNlcywgVG9vbHMgJiBIb3VzZXdhcmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTE4NDApKV0sWyJBcHBsaWNhdGlvbiBTb2Z0d2FyZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg0MjE1NCkpXSxbIkFxdWFjdWx0dXJlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTgxMjYwKSldLFsiQXJtcyAmIEFtbXVuaXRpb25zIE1hbnVmYWN0dXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig4ODY0NjUpKV0sWyJBdXRvICYgVHJ1Y2sgTWFudWZhY3R1cmVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEyNTY2MikpXSxbIkF1dG8gJiBUcnVjayBQYXJ0cyBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4NzU1NzkpKV0sWyJBdXRvICYgVHJ1Y2sgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODc4NzIzKSldLFsiQXV0byBDbGVhbmluZyBQcm9kdWN0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk1ODIzNSkpXSxbIkF1dG8gUGFydHM6IE9FTSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM3MDEyKSldLFsiQXV0byBWZWhpY2xlcywgUGFydHMgJiBTZXJ2aWNlIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk5Njk3MikpXSxbIkF1dG8sIFRydWNrICYgTW90b3JjeWNsZSBQYXJ0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY2MTk4MykpXSxbIkF1dG9tYXRpYyBWZW5kaW5nIE1hY2hpbmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDY1MjIyKSldLFsiQXV0b21vdGl2ZSBBZnRlcm1hcmtldCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU0MzE1NykpXSxbIkF1dG9tb2JpbGVzICYgTXVsdGkgVXRpbGl0eSBWZWhpY2xlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI5ODY2MikpXSxbIkF1dG9tb3RpdmUgQWNjZXNzb3JpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNjk2NDYpKV0sWyJBdXRvbW90aXZlIEJhdHRlcmllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE3NTc0NCkpXSxbIkF1dG9tb3RpdmUgQm9keSBQYXJ0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM4NTU5MSkpXSxbIkF1dG9tb3RpdmUgUGFydHMgJiBBY2Nlc3NvcmllcyBSZXRhaWxlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NTcwODkpKV0sWyJBdXRvbW90aXZlIFN5c3RlbXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNTcyNTQpKV0sWyJCYWJ5IEZvb2QiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MDg1NDkpKV0sWyJCYWxsICYgUm9sbGVyIEJlYXJpbmdzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjg4OTY5KSldLFsiQmFua3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0OTc4MzcpKV0sWyJCYW5xdWV0IEhhbGxzICYgQ2F0ZXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MjQ1OTUpKV0sWyJCYXRocm9vbSBGaXh0dXJlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDUzNTkwOCkpXSxbIkJhdHRlcmllcyAmIFVuaW50ZXJydXB0aWJsZSBQb3dlciBzdXBwbGllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY4ODU1MikpXSxbIkJhdXhpdGUgTWluaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDk4Mjg4KSldLFsiQmVhdXR5IFN1cHBseSBTaG9wIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjczMTQyKSldLFsiQmVlZiAmIFZlYWwgRmFybWluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDUwMTE2KSldLFsiQmVlciwgV2luZSAmIExpcXVvciBTdG9yZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NDk2MzYpKV0sWyJCZXZlcmFnZXM6IEFsY29ob2xpYyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY1NzQ3MSkpXSxbIkJldmVyYWdlczogTm9uLUFsY29ob2xpYyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg5Mzg4NSkpXSxbIkJldmVyYWdlcyAoUHJvZHVjdGlvbi9EaXN0cmlidXRpb24pIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzkyODY2KSldLFsiQmljeWNsZSBNYW51ZmFjdHVyaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODk0NzM4KSldLFsiQmlvIERpYWdub3N0aWNzICYgVGVzdGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYzNTE1NykpXSxbIkJpbyBNZWRpY2FsIERldmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MzIzMTYpKV0sWyJCaW8gVGhlcmFwZXV0aWMgRHJ1Z3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NDgyNDkpKV0sWyJCaW9kaWVzZWwiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3OTYyNikpXSxbIkJpb21hc3MgJiBCaW9nYXMgRnVlbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1NTcyMzkpKV0sWyJCaW9tZXRyaWMgUHJvZHVjdHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2Mzc0MDkpKV0sWyJCaW9waGFybWFjZXV0aWNhbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNDU3NTMpKV0sWyJCaW90ZWNobm9sb2d5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTc5NDEzKSldLFsiQmlvdGVjaG5vbG9neSAmIE1lZGljYWwgUmVzZWFyY2giLCgpPT50LnQobnVsbCx2b2lkIDAsbig4OTIxNDMpKV0sWyJCaXJ0aCBDb250cm9sIFByb2R1Y3RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTA0NzU3KSldLFsiQm9vayAmIE1hZ2F6aW5lIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk3NjM0NikpXSxbIkJvb2sgUHJpbnRpbmcgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NDYyNDcpKV0sWyJCb29rIFB1Ymxpc2hpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig3NTAxODIpKV0sWyJCb3R0bGVkIFdhdGVyICYgSWNlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTk2NzAwKSldLFsiQnJhbmRpbmcgJiBOYW1pbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MjEzOTkpKV0sWyJCcmVhZCAmIEJha2VyeSBQcm9kdWN0IE1hbnVmYWN0dXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig3ODkxODApKV0sWyJCcmVha2Zhc3QgQ2VyZWFsIE1hbnVmYWN0dXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNDMwNDIpKV0sWyJCcmV3ZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDgwNDEzKSldLFsiQnJvYWRjYXN0aW5nIEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk1MTk2MykpXSxbIkJyb2FkY2FzdGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDgxODYxNikpXSxbIkJyb2tlcmFnZSBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYyODQ4MSkpXSxbIkJyb29tcywgQnJ1c2hlcyAmIER1c3RwYW5zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjU1MDc3KSldLFsiQnVpbGRlciBNZXJjaGFudHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNjE3MTcpKV0sWyJCdWlsZGluZyBDb250cmFjdG9ycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM4NjcxOSkpXSxbIkJ1aWxkaW5nIFByb2R1Y3RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjU3MjM0KSldLFsiQnVzaW5lc3MgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNzI2NDcpKV0sWyJCdXNpbmVzcyBTdXBwb3J0IFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTczNSkpXSxbIkJ1c2luZXNzIFN1cHBvcnQgU3VwcGxpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4NzAyOTkpKV0sWyJDYWJsZSBTZXJ2aWNlIFByb3ZpZGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDkxMjgyNikpXSxbIkNhYmxlL1NhdGVsbGl0ZSBUViIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMxMjg4NykpXSxbIkNhZmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzI5ODMwKSldLFsiQ2FsbCBDZW50ZXIgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NjQ4MzQpKV0sWyJDYXJib24gQ2FwdHVyZSAmIFN0b3JhZ2UiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNzUxMjEpKV0sWyJDYXJib25hdGVkIFNvZnQgRHJpbmtzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzMwNTczKSldLFsiQ2FycGV0cyAmIEN1cnRhaW5zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzkxNzYpKV0sWyJDYXNpbm9zICYgR2FtaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjU4MjU2KSldLFsiQ2FzaW5vcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYwNjIwNykpXSxbIkNhc2lub3MvR2FtaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODU3MzQ1KSldLFsiQ2FzdWFsdHkgSW5zdXJhbmNlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTEwNDY4KSldLFsiQ2F0YWxvZy9TcGVjaWFsdHkgRGlzdHJpYnV0aW9uIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTE1NzA1KSldLFsiQ2VsbHVsYXIgRmliZXIiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNDM1MTgpKV0sWyJDZW1lbnQgJiBDb25jcmV0ZSBNYW51ZmFjdHVyaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTA4NDU2KSldLFsiQ2hhcnRlciAmIFByaXZhdGUgQWlyIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTk1NDQxKSldLFsiQ2hhcnRlciBCdXMgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MTg0OTYpKV0sWyJDaGVtaWNhbHM6IEFncmljdWx0dXJhbCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI0MDE5MSkpXSxbIkNoZW1pY2FsczogTWFqb3IgRGl2ZXJzaWZpZWQiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMzM3MikpXSxbIkNoZW1pY2FsczogU3BlY2lhbHR5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTYzMDU1KSldLFsiQ2hpbGQgQ2FyZSAmIEZhbWlseSBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ0MTUyNikpXSxbIkNoaWxkcmVuICYgSW5mYW50cyBDbG90aGluZyBSZXRhaWxlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3ODY4NTgpKV0sWyJDaGlsZHJlbiAmIEluZmFudHMgQ2xvdGhpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig3Mzg0MzIpKV0sWyJDaG9jb2xhdGUgJiBDb25mZWN0aW9uZXJ5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTQ4OTA5KSldLFsiQ2lnYXJzICYgQ2lnYXJldHRlIE1hbnVmYWN0dXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNDM2ODcpKV0sWyJDaXZpbCBFbmdpbmVlcnMgJiBBcmNoaXRlY3RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTc0ODk1KSldLFsiQ2xlYW5pbmcgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNjUxOTgpKV0sWyJDbGVhcmluZywgU2V0dGxlbWVudCAmIEN1c3RvZGlhbCBTZXJ2aWNlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjA0NDM3KSldLFsiQ2xvc2VkIEVuZCBGdW5kcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY4OTg0KSldLFsiQ2xvdWQgQ29tcHV0aW5nIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjk3NTM0KSldLFsiQ29hbCBNaW5pbmcgU3VwcG9ydCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMxMDQpKV0sWyJDb2FsIFdob2xlc2FsZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDgzNTg5NCkpXSxbIkNvYWwiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2ODM3NDApKV0sWyJDb2ZmZWUgJiBUZWEiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzMjcwODQpKV0sWyJDb2ZmZWUsIFRlYSAmIENvY29hIEZhcm1pbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNTUwMikpXSxbIkNva2UgQ29hbCBNaW5pbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig2MjM4MDkpKV0sWyJDb2xsZWN0aXZlIEludmVzdG1lbnQgRnVuZCBPcGVyYXRvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MTg2NzMpKV0sWyJDb2xvcmluZyBBZ2VudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ5MjY3OSkpXSxbIkNvbW1lcmNpYWwgQWlyY3JhZnQgTWFudWZhY3R1cmluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQxNTY5KSldLFsiQ29tbWVyY2lhbCBCYW5rcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM2NzU4MykpXSxbIkNvbW1lcmNpYWwgQnVpbGRpbmdzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODg5MjM4KSldLFsiQ29tbWVyY2lhbCBEb2N1bWVudCBNYW5hZ2VtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODAyNTE5KSldLFsiQ29tbWVyY2lhbCBFcXVpcG1lbnQgUmVudGFsIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjkyNTE2KSldLFsiQ29tbWVyY2lhbCBGaXNoaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTc5ODM1KSldLFsiQ29tbWVyY2lhbCBGb29kIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTM1MDcpKV0sWyJDb21tZXJjaWFsIExlYXNpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NDk1MTApKV0sWyJDb21tZXJjaWFsIExvYW5zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDU4OTc5KSldLFsiQ29tbWVyY2lhbCBOdXJzZXJpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MjUxNjMpKV0sWyJDb21tZXJjaWFsIFByaW50aW5nIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzY2NDAyKSldLFsiQ29tbWVyY2lhbCBQcmludGluZy9Gb3JtcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk1NzkzNSkpXSxbIkNvbW1lcmNpYWwgUkVJVHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1NDcyMzIpKV0sWyJDb21tb2RpdHkgQ2hlbWljYWxzIFdob2xlc2FsZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE1ODA4NSkpXSxbIkNvbW1vZGl0eSBDaGVtaWNhbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNTI5MTMpKV0sWyJDb21tdW5pY2F0aW9uICYgU2F0ZWxsaXRlIEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY4NzUyKSldLFsiQ29tbXVuaWNhdGlvbnMgJiBOZXR3b3JraW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODg1Njg4KSldLFsiQ29tbXV0ZXIgRmVycnkiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MDUyMDkpKV0sWyJDb21tdXRpbmcgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNTY2NjEpKV0sWyJDb21wdXRlciBDb21tdW5pY2F0aW9ucyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYxNzI2MykpXSxbIkNvbXB1dGVyICYgRWxlY3Ryb25pY3MgUmV0YWlsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjI1MDI4KSldLFsiQ29tcHV0ZXIgSGFyZHdhcmUgJiBTb2Z0d2FyZSBSZXRhaWxlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0MTI2NjUpKV0sWyJDb21wdXRlciBIYXJkd2FyZSBDb21wb25lbnQgQXNzZW1ibHkiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyODIyMTcpKV0sWyJDb21wdXRlciBIYXJkd2FyZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY2NTQyMikpXSxbIkNvbXB1dGVyIFBlcmlwaGVyYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzk0OTQpKV0sWyJDb21wdXRlciBQcm9jZXNzaW5nIEhhcmR3YXJlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzI1ODMwKSldLFsiQ29tcHV0ZXIgUHJvZ3JhbW1pbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig1NzA3NCkpXSxbIkNvbnN1bWVyIFN1bmRyaWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODQ3Mzk4KSldLFsiQ29tcHV0ZXIgVHJhaW5pbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig4OTY0NSkpXSxbIkNvbmZlcmVuY2luZyBUb29scyAmIFN5c3RlbXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMzA4MzMpKV0sWyJDb250YWluZXJzL1BhY2thZ2luZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ4NTM0OSkpXSxbIkNvbnRyYWN0IERyaWxsaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjk2NTI1KSldLFsiQ29uc3RydWN0aW9uICYgRW5naW5lZXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MzU5NDcpKV0sWyJDb25zdHJ1Y3Rpb24gTWFjaGluZXJ5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjYyODE0KSldLFsiQ29uc3RydWN0aW9uIE1hdGVyaWFsIFByb2Nlc3NpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNzg1OTQpKV0sWyJDb25zdHJ1Y3Rpb24gTWF0ZXJpYWwgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTk2NykpXSxbIkNvbnN0cnVjdGlvbiBNYXRlcmlhbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MDE0ODIpKV0sWyJDb25zdHJ1Y3Rpb24gU3VwcGxpZXMgJiBGaXh0dXJlcyBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMjY4MzkpKV0sWyJDb25zdHJ1Y3Rpb24gU3VwcGxpZXMgJiBGaXh0dXJlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDgyNDI3MykpXSxbIkNvbnN0cnVjdGlvbiBTdXBwbGllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI3NzQ1NCkpXSxbIkNvbnN1bWVyIENyZWRpdCBDYXJkcyBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM5NzkwOCkpXSxbIkNvbnN1bWVyIERvY3VtZW50IE1hbmFnZW1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MzE5ODMpKV0sWyJDb25zdW1lciBFbGVjdHJvbmljIFdob2xlc2FsZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDkyNDM5MykpXSxbIkNvbnN1bWVyIEVsZWN0cm9uaWNzIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU1NTA4OCkpXSxbIkNvbnN1bWVyIEVsZWN0cm9uaWNzL0FwcGxpYW5jZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMjg0KSldLFsiQ29uc3VtZXIgR29vZHMgUmVudGFsIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzkwNzE2KSldLFsiQ29uc3VtZXIgTGVhc2luZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM5NDY2NikpXSxbIkNvbnN1bWVyIExlbmRpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigzMTkzOTMpKV0sWyJDb25zdW1lciBQdWJsaXNoaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTY5MjkxKSldLFsiQ29uc3VtZXIgUmVwYWlyIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzIyNTI5KSldLFsiQ29udGFpbmVyICYgUGFja2FnaW5nIE1hdGVyaWFsIFdob2xlc2FsZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM2OTQzNikpXSxbIkNvbnRlbnQgJiBTaXRlIE1hbmFnZW1lbnQgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2OTc5MzQpKV0sWyJDb29raWUsIENyYWNrZXIgJiBQYXN0YSBNYW51ZmFjdHVyaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzIzMjgyKSldLFsiQ29wcGVyIE9yZSAgTWluaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjIyNzU5KSldLFsiQ29weXJpZ2h0IE1hbmFnZW1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMjQ0MDYpKV0sWyJDb3Jwb3JhdGUgQWNjb3VudGluZyBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI3MjIzOSkpXSxbIkNvcnBvcmF0ZSBGaW5hbmNpYWwgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNTA3NDMpKV0sWyJDb3NtZXRpY3MgJiBQZXJmdW1lcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc0Mzc3OCkpXSxbIkNvdXJpZXIgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MjUxNzgpKV0sWyJDcmFmdCAmIE1pY3JvIEJyZXdlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MDk5ODIpKV0sWyJDcmVkaXQgVW5pb25zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDc0NzI4KSldLFsiQ3J1aXNlIExpbmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzU5NTMwKSldLFsiQ3V0bGVyeSAmIEZsYXR3YXJlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTY1ODgzKSldLFsiRGFpcnkgUHJvZHVjdHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3ODkwMTUpKV0sWyJEYXRhIFByb2Nlc3NpbmcgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4ODQ3ODApKV0sWyJEZWVwIFNlYSBGcmVpZ2h0IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODI0NDAzKSldLFsiRGVwYXJ0bWVudCBTdG9yZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0MTUxMDUpKV0sWyJEZXBhcnRtZW50L1NwZWNpYWx0eSBSZXRhaWwgU3RvcmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDM2OTcwKSldLFsiRGVzaWduIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzAyMjA2KSldLFsiRGlhZ25vc3RpYyAmIFRlc3RpbmcgU3Vic3RhbmNlcyBNYW51ZmFjdHVyZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTg4MTIxKSldLFsiRGlhZ25vc3RpYyAmIFRlc3RpbmcgU3Vic3RhbmNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU3ODU3MSkpXSxbIkRpYW1vbmQgTWluaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTUyMDg5KSldLFsiRGlnaXRhbCBNZWRpYSBBZ2VuY2llcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEzNzM3NykpXSxbIkRpZ2l0YWwgUHVibGlzaGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQzNjQ4MCkpXSxbIkRpcmVjdCBNYXJrZXRpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNTE0OTYpKV0sWyJEaXJlY3RvcnkgUHVibGlzaGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg2NTAzMSkpXSxbIkRpc2NvdW50IFN0b3JlcyB3aXRoIGdyb2NlcmllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYzNzE4NCkpXSxbIkRpc2NvdW50IFN0b3JlcyB3aXRob3V0IGdyb2NlcmllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc5NTEyNCkpXSxbIkRpc2NvdW50IFN0b3JlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDUxODExNykpXSxbIkRpc3BsYXkgU2NyZWVucyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI5OTgyNCkpXSxbIkRpc3RpbGxlcmllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEzMDIwKSldLFsiRGlzdGlsbGVycyAmIFdpbmVyaWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTU4MDk1KSldLFsiRGl2ZXJzaWZpZWQgQ2hlbWljYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODgyOTE5KSldLFsiRGl2ZXJzaWZpZWQgSW52ZXN0bWVudCBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY2OTE4NSkpXSxbIkRpdmVyc2lmaWVkIFJFSVRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzYwMDYpKV0sWyJEaXZlcnNpZmllZCBUcmFkaW5nICYgRGlzdHJpYnV0aW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTAzNzMxKSldLFsiRG9jdG9yJ3MgT2ZmaWNlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODMyNTYyKSldLFsiRG9sbHMgJiBTdHVmZmVkIFRveXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MjQ1NykpXSxbIkRvb3JzICYgV2luZG93IEZyYW1lcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE4MjE0MykpXSxbIkRydWcgRGVsaXZlcnkgU3lzdGVtcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU2MTA2MCkpXSxbIkRydWcgUmV0YWlsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTU5MjA2KSldLFsiRHJ1Z3N0b3JlIENoYWlucyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg5Njc3MikpXSxbIkUtY29tbWVyY2UgJiBBdWN0aW9uIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDcwMTA1KSldLFsiRWR1Y2F0aW9uICYgVHJhaW5pbmcgSW5mb3JtYXRpb24gUHJvdmlkZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjQzMDgyKSldLFsiRWR1Y2F0aW9uYWwgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNDQyNjApKV0sWyJFbGVjdHJpYyBDb25zdHJ1Y3Rpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNzQ3ODIpKV0sWyJFbGVjdHJpYyBFcXVpcG1lbnQgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzg3MTcwKSldLFsiRWxlY3RyaWMgVXRpbGl0aWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODExODcwKSldLFsiRWxlY3RyaWMgVXRpbGl0aWVzOiBDZW50cmFsIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzQ2NzExKSldLFsiRWxlY3RyaWNhbCAoQWx0ZXJuYXRpdmUpIFZlaGljbGVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTk5MDE0KSldLFsiRWxlY3RyaWNhbCBDb21wb25lbnRzICYgRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDYxMjI3KSldLFsiRWxlY3RyaWNhbCBNZWFzdXJpbmcgJiBUZXN0aW5nIEluc3RydW1lbnRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDE2NTM3KSldLFsiRWxlY3RyaWNhbCBQcm9kdWN0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYxNDQ0MCkpXSxbIkVsZWN0cm9uIFR1YmVzICYgSW5zdWxhdG9ycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMyMTQ2NSkpXSxbIkVsZWN0cm9uaWMgQ29tcG9uZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzY4NTYwKSldLFsiRWxlY3Ryb25pYyBDb21wb25lbnRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDQ5NDE5KSldLFsiRWxlY3Ryb25pYyBFcXVpcG1lbnQgJiBQYXJ0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE1NDA0NykpXSxbIkVsZWN0cm9uaWMgRXF1aXBtZW50cyAmIFBhcnRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzczMTQ0KSldLFsiRWxlY3Ryb25pYyBFcXVpcG1lbnQvSW5zdHJ1bWVudHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzOTYzMTYpKV0sWyJFbGVjdHJvbmljIFByb2R1Y3Rpb24gRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODk0NzM3KSldLFsiRWxlY3Ryb25pYyBSZXBhaXIgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NTQzMikpXSxbIkVsZWN0cm9uaWNzIERpc3RyaWJ1dG9ycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEwMjI0NykpXSxbIkVsZWN0cm9uaWNzL0FwcGxpYW5jZSBTdG9yZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NzcwMDkpKV0sWyJFbGVjdHJvbmljcy9BcHBsaWFuY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjYwMDM3KSldLFsiRWxldmF0b3IgJiBDb252ZXlpbmcgRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTIyNDU5KSldLFsiRW1wbG95bWVudCBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ4NTc5MCkpXSxbIkVuZXJneSBEcmlua3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNjc3NjApKV0sWyJFbmdpbmUgJiBQb3dlcnRyYWluIFN5c3RlbXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyOTczMDQpKV0sWyJFbmdpbmVlcmluZyAmIENvbnN0cnVjdGlvbiIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIyMzI2MikpXSxbIkVudGVycHJpc2UgU29mdHdhcmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NzQ0ODEpKV0sWyJFbnRlcnRhaW5tZW50IFByb2R1Y3Rpb24gRXF1aXBtZW50ICYgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMTg3NjcpKV0sWyJFbnRlcnRhaW5tZW50IFByb2R1Y3Rpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NTgwMTEpKV0sWyJFbnZpcm9ubWVudGFsIEJpb3RlY2hub2xvZ3kiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMDUyMDkpKV0sWyJFbnZpcm9ubWVudGFsIENvbnN1bHRhbmN5IFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTgwNjcyKSldLFsiRW52aXJvbm1lbnRhbCBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMwNzAxNykpXSxbIkVudmlyb25tZW50YWwgU2VydmljZXMgJiBFcXVpcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2OTAwOTApKV0sWyJFcG94eSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg3MzQwMykpXSxbIkV0aGFub2wgRnVlbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NTA2MjMpKV0sWyJFeGNoYW5nZSBUcmFkZWQgRnVuZCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU0ODc1MykpXSxbIkV4Y2hhbmdlIFRyYWRlZCBGdW5kcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIyMjUzMikpXSxbIkV4ZWN1dGl2ZSBTZWFyY2ggU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyOTkzMTYpKV0sWyJFeGhpYml0aW9uICYgQ29uZmVyZW5jZSBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDkxOTE3NykpXSxbIkV4cGxvc2l2ZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzOTEyNTEpKV0sWyJGYWJyaWMgRHllaW5nICYgRmluaXNoaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTgwNjU4KSldLFsiRmFjdG9yaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzUyNDMwKSldLFsiRmFzaGlvbiBFeWV3ZWFyIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzQ1NTE2KSldLFsiRmVydGlsaXplciIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYzNjA2NCkpXSxbIkZpYmVyIE9wdGljIENhYmxlIE1hbnVmYWN0dXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMTQ4NSkpXSxbIkZpbmFuY2U6IENvbnN1bWVyIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjY1OTA1KSldLFsiRmluYW5jZS9SZW50YWwvTGVhc2luZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk5MjI5NikpXSxbIkZpbmFuY2lhbCBDb25nbG9tZXJhdGVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTAwMjQ3KSldLFsiRmluYW5jaWFsICYgQ29tbW9kaXR5IE1hcmtldCBPcGVyYXRvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5MjA2NDIpKV0sWyJGaW5hbmNpYWwgSW5mb3JtYXRpb24gUHJvdmlkZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjE0NDMzKSldLFsiRmluYW5jaWFsIFB1Ymxpc2hpbmcvU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5MzcyNjQpKV0sWyJGaW5hbmNpYWwgVGVjaG5vbG9neSAmIEluZnJhc3RydWN0dXJlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDQzNDk2KSldLFsiRmlzaGluZyAmIEZhcm1pbmcgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjE2MTg5KSldLFsiRmlzaGluZyAmIEZhcm1pbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigzMDE2OTUpKV0sWyJGbG9vciBDb3ZlcmluZyBSZXRhaWxlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0ODU0MjkpKV0sWyJGbG9vcmluZyAmIEludGVyaW9yIFRpbGUgTWFudWZhY3R1cmVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDgxODYyOCkpXSxbIkZsb3Jpc3RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzg5NDg3KSldLFsiRmxvdXIgTWlsbGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM5ODIzNykpXSxbIkZsdWlkIFBvd2VyIEN5bGluZGVyICYgQWN0dWF0b3JzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDc1MjI1KSldLFsiRm9vZCBEaXN0cmlidXRvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2MzI4NDcpKV0sWyJGb29kIEluZ3JlZGllbnRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDAzOTQzKSldLFsiRm9vZCBNYXJrZXRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTE0Mzg3KSldLFsiRm9vZCBQcm9jZXNzaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTQ2MDQzKSldLFsiRm9vZCBSZXRhaWwiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMzE0MzQpKV0sWyJGb29kIFJldGFpbCAmIERpc3RyaWJ1dGlvbiIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg2MzY2MSkpXSxbIkZvb2QgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTc2ODIyKSldLFsiRm9vZDogTWFqb3IgRGl2ZXJzaWZpZWQiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNTc3MDkpKV0sWyJGb29kOiBNZWF0L0Zpc2gvRGFpcnkiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0MjQ2ODUpKV0sWyJGb29kOiBTcGVjaWFsdHkvQ2FuZHkiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5MzE4ODMpKV0sWyJGb290d2VhciBSZXRhaWxlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5MTUwMzcpKV0sWyJGb290d2VhciBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NzMyOTUpKV0sWyJGb290d2VhciIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY5ODA1NykpXSxbIkZvcmVzdCAmIFdvb2QgUHJvZHVjdHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MDgwMDgpKV0sWyJGb3Jlc3QgTnVyc2VyaWVzICYgR2F0aGVyaW5nIG9mIEZvcmVzdCBQcm9kdWN0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ2NDIzOSkpXSxbIkZvcmVzdCBQcm9kdWN0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM0NDY1MykpXSxbIkZvcmVzdCBTdXBwb3J0ICYgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MzE4NzUpKV0sWyJGb3NzaWwgRnVlbCBFbGVjdHJpYyBVdGlsaXRpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNDk4MikpXSxbIkZvc3NpbCBGdWVsIElQUHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxOTM3MTEpKV0sWyJGcmVpZ2h0IExvZ2lzdGljcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk2OTIzNykpXSxbIkZyZWlnaHQgVHJ1Y2tpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNDI3MDYpKV0sWyJGcm96ZW4gRm9vZCBNYW51ZmFjdHVyaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzgyOTY0KSldLFsiRnJ1aXQgJiBWZWdldGFibGUgUHJvY2Vzc2luZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDkxNjYyKSldLFsiRnJ1aXQgRHJpbmtzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzc0MjE2KSldLFsiRnVuZXJhbCBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg4MTkxOSkpXSxbIkZ1cm5pdHVyZSBSZXRhaWxlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4Mzg1KSldLFsiRnVybml0dXJlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjY2NjcxKSldLFsiR2FtYmxpbmcgJiBHYW1pbmcgTWFjaGluZSBNYW51ZmFjdHVyZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjIwMTU2KSldLFsiR2FtZXMsIFRveXMgJiBDaGlsZHJlbiBWZWhpY2xlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU4NDg0MSkpXSxbIkdhbWluZyBNYWNoaW5lIE9wZXJhdG9ycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ4NTkzNSkpXSxbIkdhcyBEaXN0cmlidXRvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMzc5OTYpKV0sWyJHYXMgRHJpbGxpbmcgLSBPbnNob3JlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTI1MTExKSldLFsiR2Fzb2xpbmUgc3RhdGlvbnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NjczMTYpKV0sWyJHZW5lcmFsIEVkdWNhdGlvbiBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg1NTE3NykpXSxbIkdlbmVyYWwgR292ZXJubWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI0MTk5NSkpXSxbIkdlbmVyaWMgUGhhcm1hY2V1dGljYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzQ2MTQ2KSldLFsiR2VvcGh5c2ljYWwgU3VydmV5aW5nICYgTWFwcGluZyBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDgyNDEyMykpXSxbIkdpZnQsIE5vdmVsdHkgJiBTb3V2ZW5pciBTdG9yZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNTMyNDEpKV0sWyJHbGFzcyBDb250YWluZXJzICYgUGFja2FnaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjM2MjIxKSldLFsiR2xhc3NlcywgU3BlY3RhY2xlcyAmIENvbnRhY3QgbGVuc2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjA5NDYxKSldLFsiR29sZCBNaW5pbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig2ODM1KSldLFsiR29sZCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU2NTI5NCkpXSxbIkdvbGYgQ291cnNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY5ODMyNSkpXSxbIkdyYWluIChDcm9wKSBQcm9kdWN0aW9uIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzUwMjc3KSldLFsiR3JvdW5kIEZyZWlnaHQgJiBMb2dpc3RpY3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzMjkyOTEpKV0sWyJHdWlkZWQgVG91ciBPcGVyYXRvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1ODQzMykpXSxbIkd5bXMsIEZpdG5lc3MgYW5kIFNwYSBDZW50ZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzE3NzgxKSldLFsiSGFpciBBY2Nlc3NvcmllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEzNjk0NikpXSxbIkhhbGFsIEFuaW1hbCBTbGF1Z2h0ZXJpbmcgJiBQcm9jZXNzaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODI4NjQxKSldLFsiSGFuZGJhZ3MgJiBMdWdnYWdlIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE0NDAxKSldLFsiSGFuZGJhZ3MgJiBMdWdnYWdlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDY2NDc5KSldLFsiSGVhbHRoIEZvb2QgU3RvcmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTAwOTU2KSldLFsiSGVhbHRoIEluc3VyYW5jZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM1MDA5MCkpXSxbIkhlYWx0aGNhcmUgRmFjaWxpdGllcyAmIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjkzMTg1KSldLFsiSGVhbHRoY2FyZSBSRUlUcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE2ODcyOCkpXSxbIkhlYXRpbmcsIFZlbnRpbGF0aW9uICYgQWlyIENvbmRpdGlvbmluZyBTeXN0ZW1zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTM5OTIyKSldLFsiSGVhdnkgQnVzZXMgJiBDb2FjaGVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjYyOTgzKSldLFsiSGVhdnkgRWxlY3RyaWNhbCBFcXVpcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NTgxMjcpKV0sWyJIZWF2eSBNYWNoaW5lcnkgJiBWZWhpY2xlcyBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MTgwNDQpKV0sWyJIZWF2eSBNYWNoaW5lcnkgJiBWZWhpY2xlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM4MTYwNCkpXSxbIkhlYXZ5IE1vdG9ycyAmIEdlbmVyYXRvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNTA1MikpXSxbIkhlYXZ5IFRydWNrcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk5ODA2NykpXSxbIkhlZGdlIEZ1bmRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODk4MzM2KSldLFsiSGlnaHdheSAmIEJyaWRnZSBDb25zdHJ1Y3Rpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NzM3NjIpKV0sWyJIaWdod2F5IE9wZXJhdG9ycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc3Mjg4NikpXSxbIkhpZ2h3YXlzICYgUmFpbCBUcmFja3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MTM3NzYpKV0sWyJIb2xkaW5nIENvbXBhbmllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDczMDQ5NikpXSxbIkhvbWUgQXVkaW8iLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NzQxMDUpKV0sWyJIb21lIERlY29yIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI2NTQyKSldLFsiSG9tZSBGdXJuaXNoaW5ncyBSZXRhaWxlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyOTEyMDMpKV0sWyJIb21lIEZ1cm5pc2hpbmdzIFdob2xlc2FsZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ2MTQ1MikpXSxbIkhvbWUgRnVybmlzaGluZ3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3OTc4NikpXSxbIkhvbWUgSGVhbHRoY2FyZSBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI5Njc4MSkpXSxbIkhvbWUgSW1wcm92ZW1lbnQgQ2hhaW5zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTE2Mjg3KSldLFsiSG9tZSBJbXByb3ZlbWVudCBQcm9kdWN0cyAmIFNlcnZpY2VzIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY2MTE0NykpXSxbIkhvbWVidWlsZGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg1MjcyNCkpXSxbIkhvcnNlICYgRG9nIFJhY2UgVHJhY2tzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTQ1OTI1KSldLFsiSG9zaWVyeSAmIFNvY2siLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMjQ0MDIpKV0sWyJIb3NwaXRhbC9OdXJzaW5nIE1hbmFnZW1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzODA5NDQpKV0sWyJIb3NwaXRhbGl0eSBSRUlUcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU0OTEzNykpXSxbIkhvc3BpdGFscywgQ2xpbmljcyAmIFByaW1hcnkgQ2FyZSBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc3MjU0OCkpXSxbIkhvdGVscyAmIE1vdGVscyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg4MzYyMCkpXSxbIkhvdGVscywgTW90ZWxzICYgQ3J1aXNlIExpbmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzk5NzkxKSldLFsiSG90ZWxzL1Jlc29ydHMvQ3J1aXNlIGxpbmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTY0Mjc3KSldLFsiSG91c2Vob2xkIEFwcGxpYW5jZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MTg2MDcpKV0sWyJIb3VzZWhvbGQgRWxlY3Ryb25pY3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNzU0OTgpKV0sWyJIb3VzZWhvbGQgUHJvZHVjdHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2OTkyODkpKV0sWyJIb3VzZWhvbGQvUGVyc29uYWwgQ2FyZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI5MzcwNykpXSxbIkh1bWFuIFJlc291cmNlcyBDb25zdWx0aW5nIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTk1OTk2KSldLFsiSHlkcm9nZW4gRnVlbCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM0NzI0OSkpXSxbIkh5ZHJvcG93ZXIgRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODg3ODM3KSldLFsiSVQgU2VydmljZXMgJiBDb25zdWx0aW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTc0NTQzKSldLFsiSW5kZXBlbmRlbnQgUG93ZXIgUHJvZHVjZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTcyMjk1KSldLFsiSW5kdXN0cmlhbCAgUmVhbCBFc3RhdGUgRGV2ZWxvcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxOTU4NzgpKV0sWyJJbmR1c3RyaWFsIEJpb3RlY2hub2xvZ3kgQ2hlbWljYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjUwMTAzKSldLFsiSW5kdXN0cmlhbCBDbG90aGluZyAmIFVuaWZvcm1zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODE3OTUxKSldLFsiSW5kdXN0cmlhbCBDb25nbG9tZXJhdGVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTQ4MzEwKSldLFsiSW5kdXN0cmlhbCBFbGVjdHJpY2FsIFN3aXRjaGdlYXIiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NjI2NjgpKV0sWyJJbmR1c3RyaWFsIEdhcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIyNjY3MCkpXSxbIkluZHVzdHJpYWwgTWFjaGluZXJ5ICYgRXF1aXBtZW50IFdob2xlc2FsZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc2Njc3NykpXSxbIkluZHVzdHJpYWwgTWFjaGluZXJ5ICYgRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjU3MzcxKSldLFsiSW5kdXN0cmlhbCBNYWNoaW5lcnkiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0OTQ1ODgpKV0sWyJJbmR1c3RyaWFsIE1vdWxkcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI3NjI0NykpXSxbIkluZHVzdHJpYWwgUGFydHMgJiBDb21wb25lbnRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjQxNjkpKV0sWyJJbmR1c3RyaWFsIFBsYW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTE3MjY0KSldLFsiSW5kdXN0cmlhbCBQcm9jZXNzIEZ1cm5hY2UgJiBPdmVucyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMyMjA4MikpXSxbIkluZHVzdHJpYWwgUkVJVHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMDgzNjEpKV0sWyJJbmR1c3RyaWFsIFJ1YmJlciBQcm9kdWN0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDczNTcyMykpXSxbIkluZHVzdHJpYWwgU3BlY2lhbHRpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMTQzOTYpKV0sWyJJbmR1c3RyaWFsIFZhbHZlIE1hbnVmYWN0dXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNDkyNDkpKV0sWyJJbmZvcm1hdGlvbiBUZWNobm9sb2d5IFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODk5MDgwKSldLFsiSW5sYW5kIFdhdGVyIEZyZWlnaHQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0MjA4NCkpXSxbIklucHV0IERldmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0MDM0NzQpKV0sWyJJbnN1cmFuY2UgLSBBdXRvbW9iaWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDY3NTUyKSldLFsiSW5zdXJhbmNlIEJyb2tlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4NzExNTYpKV0sWyJJbnN1cmFuY2UgQnJva2Vycy9TZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY2NDY3MCkpXSxbIkludGVncmF0ZWQgIE1pbmluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDcxNTEwNykpXSxbIkludGVncmF0ZWQgQ2lyY3VpdHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4ODZlMykpXSxbIkludGVncmF0ZWQgTG9naXN0aWNzIE9wZXJhdG9ycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQxNDg3MykpXSxbIkludGVncmF0ZWQgT2lsIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjYyMDQ1KSldLFsiSW50ZWdyYXRlZCBPaWwgJiBHYXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5OTkxMzEpKV0sWyJJbnRlZ3JhdGVkIFRlbGVjb21tdW5pY2F0aW9ucyBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc0NTU5MCkpXSxbIkludGVyLWRlYWxlciBCcm9rZXIiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1OTgwODMpKV0sWyJJbnRlcmlvciBEZXNpZ24gU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNjc3MjIpKV0sWyJJbnRlcm5hdGlvbmFsIFRyYWRlIEZpbmFuY2luZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDgyNzQ1NikpXSxbIkludGVybmV0ICYgTWFpbCBPcmRlciBEZXBhcnRtZW50IFN0b3JlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDgyMDQ2NCkpXSxbIkludGVybmV0ICYgTWFpbCBPcmRlciBEaXNjb3VudCBTdG9yZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3NzEyOTIpKV0sWyJJbnRlcm5ldCBHYW1pbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigzMDY4KSldLFsiSW50ZXJuZXQgUmV0YWlsIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjc1MDEyKSldLFsiSW50ZXJuZXQgU2VjdXJpdHkgJiBUcmFuc2FjdGlvbnMgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3OTc5OTcpKV0sWyJJbnRlcm5ldCBTZXJ2aWNlIFByb3ZpZGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDkwNTU5MykpXSxbIkludGVybmV0IFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjc0NzI5KSldLFsiSW50ZXJuZXQgU29mdHdhcmUvU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NjM1MjMpKV0sWyJJbnZlc3RtZW50IEJhbmtzL0Jyb2tlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NzM3MjQpKV0sWyJJbnZlc3RtZW50IEJhbmtlcnMvQnJva2Vycy9TZXJ2aWNlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTg2OTE0KSldLFsiSW52ZXN0bWVudCBCYW5raW5nICYgQnJva2VyYWdlIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTEyNjU4KSldLFsiSW52ZXN0bWVudCBCYW5raW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDc1MTc0KSldLFsiSW52ZXN0bWVudCBNYW5hZ2VtZW50ICYgRnVuZCBPcGVyYXRvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1OTE5NjIpKV0sWyJJbnZlc3RtZW50IE1hbmFnZW1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0MDkyNzIpKV0sWyJJbnZlc3RtZW50IE1hbmFnZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzc5MDY1KSldLFsiSW52ZXN0bWVudCBTdXBwb3J0IFRvb2xzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzU2MTM2KSldLFsiSW52ZXN0bWVudCBUcnVzdHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3ODQzMzIpKV0sWyJJbnZlc3RtZW50IFRydXN0cy9NdXR1YWwgRnVuZHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyOTU5NzIpKV0sWyJJcm9uIE9yZSBNaW5pbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MDk3OTQpKV0sWyJJcm9uLCBTdGVlbCBNaWxscyAmIEZvdW5kcmllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI2MzQyMSkpXSxbIkplYW5zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTYxODQwKSldLFsiSmV3ZWxyeSAmIFdhdGNoIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ1NDk4MykpXSxbIkpld2VscnkiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NjAyOTQpKV0sWyJKdXZlbmlsZSBGdXJuaXR1cmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2Njk2OTEpKV0sWyJLaXRjaGVuIEFwcGxpYW5jZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NTcyNDIpKV0sWyJLaXRjaGVuIENhYmluZXRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDIyNjE5KSldLFsiS25pdHdlYXIiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1ODE2NzkpKV0sWyJMTkcgVHJhbnNwb3J0YXRpb24gJiBTdG9yYWdlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODYzOTE2KSldLFsiTGFuZCBEaXZpc2lvbiAmIFN1YmRpdmlzaW9uIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDU2NTM3KSldLFsiTGFwdG9wICYgRGVza3RvcCBDb21wdXRlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1NTIyNzMpKV0sWyJMYXNlciBFcXVpcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2MDk2NjYpKV0sWyJMYXVuZHJ5IFN1cHBsaWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDcxOTgxKSldLFsiTGVhZCBPcmUgTWluaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDU4ODg4KSldLFsiTGVhdGhlciBHb29kcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDkwODA0MykpXSxbIkxlZ2FsIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODY2MTc2KSldLFsiTGVpc3VyZSAmIFJlY3JlYXRpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbig3NTIyNikpXSxbIkxlaXN1cmUgUHJvZHVjdHMgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjE0MzMwKSldLFsiTGlmZSAmIEhlYWx0aCBJbnN1cmFuY2UiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0ODc2NjApKV0sWyJMaWZlICYgSGVhbHRoIFJlaW5zdXJhbmNlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDkzMjY4KSldLFsiTGlmZS9IZWFsdGggSW5zdXJhbmNlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjQzMzY1KSldLFsiTGlmZSBJbnN1cmFuY2UiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5OTQxOTIpKV0sWyJMaWdodCBUcnVja3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3Mjg2NDkpKV0sWyJMaWdodGluZyBFcXVpcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxOTE2MzApKV0sWyJMaWdodGluZyBGaXh0dXJlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ3OTA5MSkpXSxbIkxpbmdlcmllIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjg0OTAxKSldLFsiTG9jYWwgQWdlbmNpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NDM0MykpXSxbIkxvY29tb3RpdmUgRW5naW5lcyAmIFJvbGxpbmcgU3RvY2siLCgpPT50LnQobnVsbCx2b2lkIDAsbigyOTkxNzUpKV0sWyJMb2dnaW5nICYgU2F3bWlsbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5ODAyNDYpKV0sWyJMb3R0ZXJ5IE9wZXJhdG9ycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDczODQwNykpXSxbIkx1eHVyeSBBY2Nlc3NvcmllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY3NTEwKSldLFsiTHV4dXJ5IENhciBEZWFsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDA5MzU3KSldLFsiTWFjaGluZSBUb29scyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc0NTAwMykpXSxbIk1hZ2F6aW5lIFB1Ymxpc2hpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMjc2MzMpKV0sWyJNYWludGVuYW5jZSAmIFJlcGFpciBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk4MDc4NikpXSxbIk1ham9yIEJhbmtzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTQzNzc0KSldLFsiTWFqb3IgUGhhcm1hY2V1dGljYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTE3NTc4KSldLFsiTWFqb3IgVGVsZWNvbW11bmljYXRpb25zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjczMTAzKSldLFsiTWFsdCBwcm9kdWNlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4NDIzMTIpKV0sWyJNYW5hZ2VkIEhlYWx0aCBjYXJlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTI5MzQ3KSldLFsiTWFuYWdlZCBIZWFsdGggQ2FyZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDgxMTQ4MykpXSxbIk1hbmFnZW1lbnQgQ29uc3VsdGluZyBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEyMjEwMikpXSxbIk1hcmluYXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMzcxNTIpKV0sWyJNYXJpbmUgQ2FyZ28gSGFuZGxpbmcgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMzU5OTQpKV0sWyJNYXJpbmUgRnJlaWdodCAmIExvZ2lzdGljcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY5MDM4OCkpXSxbIk1hcmluZSBMb2dpc3RpY3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3NjQwOTkpKV0sWyJNYXJpbmUgUGFzc2VuZ2VyIFRyYW5zcG9ydGF0aW9uIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjk0ODQ5KSldLFsiTWFyaW5lIFBvcnQgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MTE0NTIpKV0sWyJNYXJpbmUgU2hpcHBpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MDc1NjEpKV0sWyJNYXJrZXQgUmVzZWFyY2giLCgpPT50LnQobnVsbCx2b2lkIDAsbig4NDE3NjEpKV0sWyJNYXJrZXRpbmcgQ29uc3VsdGluZyBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg5NzM5MykpXSxbIk1lZGlhIEJ1eWluZyBBZ2VuY3kiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNjYwMjApKV0sWyJNZWRpYSBDb25nbG9tZXJhdGVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjUyMjAzKSldLFsiTWVkaWNhbCAmIERpYWdub3N0aWMgTGFib3JhdG9yaWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDMyNjYyKSldLFsiTWVkaWNhbCBEZXZpY2VzICYgSW1wbGFudHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4NzA1NTkpKV0sWyJNZWRpY2FsIERpYWdub3N0aWMgJiBUZXN0aW5nIEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY1OTk3MSkpXSxbIk1lZGljYWwgRGlzdHJpYnV0b3JzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTA3ODUpKV0sWyJNZWRpY2FsIEVxdWlwbWVudCBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MzI4NTcpKV0sWyJNZWRpY2FsIEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc5MjIwMCkpXSxbIk1lZGljYWwgRXF1aXBtZW50LCBTdXBwbGllcyAmIERpc3RyaWJ1dGlvbiIsKCk9PnQudChudWxsLHZvaWQgMCxuKDcyMjU1NikpXSxbIk1lZGljYWwgSW1hZ2luZyBTeXN0ZW1zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzcxNDU3KSldLFsiTWVkaWNhbCBNb25pdG9yaW5nIFN5c3RlbXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NjY3NDgpKV0sWyJNZWRpY2FsIFByb3N0aGV0aWNzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzc3NzgpKV0sWyJNZWRpY2FsIFNvZnR3YXJlICYgVGVjaG5vbG9neSBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQzMzI2NCkpXSxbIk1lZGljYWwgU3BlY2lhbHRpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNzYzMTYpKV0sWyJNZWRpY2FsIFN1cHBsaWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjYwNDMyKSldLFsiTWVkaWNhbC9OdXJzaW5nIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTk5MTUwKSldLFsiTWVtb3J5IENoaXBzIChSQU0pIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjAzODMpKV0sWyJNZW4ncyBBcHBhcmVsIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk5NjY0OSkpXSxbIk1lbidzIENsb3RoaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzk2MTApKV0sWyJNZW4ncyBGb290d2VhciIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc5NjA4MikpXSxbIk1lcmNoYW50IEJhbmtzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzA2NjYpKV0sWyJNZXRhbCBDb250YWluZXJzICYgUGFja2FnaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTA5MzcyKSldLFsiTWV0YWwgRmFicmljYXRpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MzY3OTUpKV0sWyJNZXRhbCBNZXJjaGFudCBXaG9sZXNhbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU1OTc2MCkpXSxbIk1ldGFsIFNlcnZpY2UgQ2VudGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIyOTU0MCkpXSxbIk1ldGFsbGljIFJvbGxpbmcgJiBEcmF3aW5nIFByb2R1Y3RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTYyNDI3KSldLFsiTWljcm9maW5hbmNpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig2MDYyNjYpKV0sWyJNaW5pbmcgTWFjaGluZXJ5ICYgRXF1aXBtZW50IE1hbnVmYWN0dXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MzgzMzApKV0sWyJNaW5pbmcgU3VwcG9ydCBBY3Rpdml0aWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDA0ODU2KSldLFsiTWluaW5nIFN1cHBvcnQgU2VydmljZXMgJiBFcXVpcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MTY4NDUpKV0sWyJNaXNjZWxsYW5lb3VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTU3MDIzKSldLFsiTWlzY2VsbGFuZW91cyBDb21tZXJjaWFsIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTMyOTg0KSldLFsiTWlzY2VsbGFuZW91cyBNYW51ZmFjdHVyaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTQ3NzE0KSldLFsiTW9iaWxlIEFwcGxpY2F0aW9uIFNvZnR3YXJlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjgyNTU3KSldLFsiTW9iaWxlIFBob25lIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYyNTQ1MykpXSxbIk1vYmlsZSBTeXN0ZW0gU29mdHdhcmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3NTAwMzMpKV0sWyJNb3J0Z2FnZSBSRUlUcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ5ODE1NCkpXSxbIk1vdG9yIFZlaGljbGVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzIwMDU4KSldLFsiTW90b3JjeWNsZSBEZWFsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDgwMDQ1KSldLFsiTW90b3JjeWNsZSBQYXJ0cyAmIEFjY2Vzc29yaWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTIyNjIpKV0sWyJNb3RvcmN5Y2xlcyAmIFNjb290ZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTQyNjgpKV0sWyJNb3ZpZSBUaGVhdGVycyAmIE1vdmllIFByb2R1Y3RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTg1ODQ1KSldLFsiTW92aWUsIFRWIFByb2R1Y3Rpb24gJiBEaXN0cmlidXRpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbigxOTI5MzEpKV0sWyJNb3ZpZXMvRW50ZXJ0YWlubWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM3MDEwKSldLFsiTXVsdGlsaW5lIEluc3VyYW5jZSAmIEJyb2tlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NzY1MTgpKV0sWyJNdWx0aWxpbmUgVXRpbGl0aWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTczMDczKSldLFsiTXVsdGktTGluZSBJbnN1cmFuY2UiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5MTM1NjEpKV0sWyJNdW5pY2lwYWxpdHkiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NDc2NTEpKV0sWyJNdXNldW1zICYgSGlzdG9yaWMgUGxhY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjQ0NTQ1KSldLFsiTXVzaWMsIE11c2ljIFZpZGVvIFByb2R1Y3Rpb24gJiBEaXN0cmlidXRpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbig2MjczNDApKV0sWyJNdXNpY2FsIEluc3RydW1lbnQgUmV0YWlsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTA4NzY5KSldLFsiTXVzaWNhbCBJbnN0cnVtZW50cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDcxNjY2OSkpXSxbIk11dHVhbCBGdW5kcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEwMDAzKSldLFsiTmF0aW9uYWwgQWdlbmN5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTU2NDYyKSldLFsiTmF0aW9uYWwgQWdlbmNpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMzEzMzQpKV0sWyJOYXR1cmFsIEZhYnJpY3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMjgyMTEpKV0sWyJOYXR1cmFsIEdhcyBEaXN0cmlidXRpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMDU1MzIpKV0sWyJOYXR1cmFsIEdhcyBFeHBsb3JhdGlvbiAmIFByb2R1Y3Rpb24gLSBPZmZzaG9yZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIzNzM0OSkpXSxbIk5hdHVyYWwgR2FzIEV4cGxvcmF0aW9uICYgUHJvZHVjdGlvbiAtIE9uc2hvcmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NTMwMzApKV0sWyJOYXR1cmFsIEdhcyBQaXBlbGluZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEyNDk5OCkpXSxbIk5hdHVyYWwgR2FzIFV0aWxpdGllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI1ODc4NSkpXSxbIk5ldHdvcmsgRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzYzMDgzKSldLFsiTmV3IENhciBEZWFsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjI5NTU2KSldLFsiTmV3cyBBZ2VuY2llcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM1MjI4NSkpXSxbIk5ld3NwYXBlciAmIE1hZ2F6aW5lIFByaW50aW5nIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjIxMzcxKSldLFsiTmV3c3BhcGVyIFB1Ymxpc2hpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigxODY3KSldLFsiTmV3c3ByaW50IE1pbGxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODE5NDczKSldLFsiTmlja2VsIE9yZSBNaW5pbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig2MDY4NTQpKV0sWyJOb24tQWxjb2hvbGljIEJldmVyYWdlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk4NzcxNSkpXSxbIk5vbi1QYXBlciBDb250YWluZXJzICYgUGFja2FnaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTQyMjM1KSldLFsiTm9uLWZlcnJvdXMgTWV0YWwgTWluaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTg5OTQwKSldLFsiTm9uLWZlcnJvdXMgTWV0YWwgUHJvY2Vzc2luZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDgxOTU2NikpXSxbIk51Y2xlYXIgSVBQcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ0MjQxMykpXSxbIk51Y2xlYXIgVXRpbGl0aWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjQ0ODU2KSldLFsiTnVyc2VyeSAmIEdhcmRlbiBDZW50ZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzA2NjcxKSldLFsiT2ZmaWNlIEVxdWlwbWVudCAmIFN1cHBsaWVzIFJlbnRhbCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQyNDg2MSkpXSxbIk9mZmljZSBFcXVpcG1lbnQgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTM3NTI1KSldLFsiT2ZmaWNlIEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEyODc0KSldLFsiT2ZmaWNlIEVxdWlwbWVudC9TdXBwbGllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg0OTExOCkpXSxbIk9mZmljZSBGdXJuaXR1cmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3OTc3NDgpKV0sWyJPZmZpY2UgUkVJVHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5Mjc3MTIpKV0sWyJPZmZpY2UgUmVhbCBFc3RhdGUgRGV2ZWxvcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0MzM5MTEpKV0sWyJPZmZpY2UgUmVhbCBFc3RhdGUgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MDYzNDkpKV0sWyJPZmZpY2UgU3VwcGxpZXMgJiBTdGF0aW9uZXJ5IFN0b3JlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk0MDExNSkpXSxbIk9mZmljZSBTdXBwbGllcyBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNzk1MDcpKV0sWyJPZmZpY2UgU3VwcGxpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4NTYzMikpXSxbIk9mZmljZSBUZWNobm9sb2d5IEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI5MDM3MCkpXSxbIk9pbCAmIEdhcyBEcmlsbGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY0NzQzOSkpXSxbIk9pbCAmIEdhcyBFeHBsb3JhdGlvbiBhbmQgUHJvZHVjdGlvbiIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE5NDQ1MCkpXSxbIk9pbCAmIEdhcyBQaXBlbGluZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyODM4ODUpKV0sWyJPaWwgJiBHYXMgUHJvZHVjdGlvbiIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM5MTcpKV0sWyJPaWwgJiBHYXMgUmVmaW5pbmcgYW5kIE1hcmtldGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDUwMzMxNykpXSxbIk9pbCAmIEdhcyBTdG9yYWdlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTIyNDkzKSldLFsiT2lsICYgR2FzIFRyYW5zcG9ydGF0aW9uIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODk2ODE5KSldLFsiT2lsIERyaWxsaW5nIC0gT2Zmc2hvcmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNzk0OTcpKV0sWyJPaWwgRHJpbGxpbmcgLSBPbnNob3JlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjk4MDUwKSldLFsiT2lsIEV4cGxvcmF0aW9uICYgUHJvZHVjdGlvbiAtIE9mZnNob3JlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODU3OTE4KSldLFsiT2lsIEV4cGxvcmF0aW9uICYgUHJvZHVjdGlvbiAtIE9uc2hvcmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MzcyMzApKV0sWyJPaWwgUGlwZWxpbmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMjg4NzkpKV0sWyJPaWwgUmVmaW5pbmcvTWFya2V0aW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzkyMDMyKSldLFsiT2lsIFJlbGF0ZWQgLSBTdXJ2ZXlpbmcgJiBNYXBwaW5nIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjY5MTU2KSldLFsiT2lsIFJlbGF0ZWQgRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTYxNjE1KSldLFsiT2lsIFJlbGF0ZWQgU2VydmljZXMgYW5kIEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIyMDUzKSldLFsiT2lsIFJlbGF0ZWQgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1NzMxNjcpKV0sWyJPaWxmaWVsZCBTZXJ2aWNlcy9FcXVpcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4ODU1NDYpKV0sWyJPbmxpbmUgSm9iIHBvcnRhbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNDAyMikpXSxbIk9wdGljYWwgR29vZHMgU3RvcmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzY4NDAxKSldLFsiT3JnYW5pYyAmIEVjb2xvZ2ljYWxseSBQcm9kdWNlZCBGYWJyaWMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MTMyMTgpKV0sWyJPcmdhbmljIEZlcnRpbGl6ZXIiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzMDE3MzEpKV0sWyJPdGhlciBDb25zdW1lciBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ2MzgwKSldLFsiT3RoZXIgQ29uc3VtZXIgU3BlY2lhbHRpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5MDc3NTApKV0sWyJPdGhlciBNZXRhbHMvTWluZXJhbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMDU4NzEpKV0sWyJPdGhlciBTcGVjaWFsdHkgUmV0YWlsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzY2Nzg5KSldLFsiT3RoZXIgVHJhbnNwb3J0YXRpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MTE1ODYpKV0sWyJPdXRkb29yIEFkdmVydGlzaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDMwNzk4KSldLFsiT3V0c291cmNpbmcgJiBTdGFmZmluZyBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI3Nzk0MikpXSxbIlBhY2thZ2VkIFNvZnR3YXJlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzkxMjcxKSldLFsiUGFpbnQgJiBDb2F0aW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTYzODE3KSldLFsiUGFwZXIgTWlsbHMgJiBQcm9kdWN0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM4OTIzNSkpXSxbIlBhcGVyIFBhY2thZ2luZyBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzMjY0NzcpKV0sWyJQYXBlciBQYWNrYWdpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MDM0NDYpKV0sWyJQYXBlciBQcm9kdWN0IFdob2xlc2FsZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU5Mjg0KSldLFsiUGFwZXIgUHJvZHVjdHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NDk5NjApKV0sWyJQYXJraW5nIExvdCBPcGVyYXRvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMTgzNTcpKV0sWyJQYXNzZW5nZXIgQ2FyIHJlbnRhbCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg4NDMzOCkpXSxbIlBhc3NlbmdlciBUcmFuc3BvcnRhdGlvbiwgR3JvdW5kICYgU2VhIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjA3NDI3KSldLFsiUGVuc2lvbiBGdW5kcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg4ODU2OCkpXSxbIlBlcnNvbmFsICYgQ2FyIExvYW5zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTg3MzUyKSldLFsiUGVyc29uYWwgQ2FyZSBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk1OTMzOCkpXSxbIlBlcnNvbmFsIExlZ2FsIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzA1NjA0KSldLFsiUGVyc29uYWwgTXVzaWMgUGxheWVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk1NjA2MCkpXSxbIlBlcnNvbmFsIFByb2R1Y3RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjUyNjczKSldLFsiUGVyc29uYWwgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NzIzOTkpKV0sWyJQZXJzb25uZWwgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5MjcyNikpXSxbIlBlc3QgQ29udHJvbCBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI3NjkwMCkpXSxbIlBlc3RpY2lkZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU4NzYwMikpXSxbIlBldCAmIFBldCBTdXBwbGllcyBSZXRhaWxlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNDIwMTMpKV0sWyJQZXQgRm9vZCBNYW51ZmFjdHVyaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTU5MDMxKSldLFsiUGV0cm9sZXVtIFByb2R1Y3QgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjcxOTIxKSldLFsiUGV0cm9sZXVtIFJlZmluaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjg2Nzg3KSldLFsiUGhhcm1hY2V1dGljYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjk5NzIzKSldLFsiUGhhcm1hY2V1dGljYWxzOiBHZW5lcmljIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzYxODQ5KSldLFsiUGhhcm1hY2V1dGljYWxzOiBNYWpvciIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE4MjY0MykpXSxbIlBoYXJtYWNldXRpY2FsczogT3RoZXIiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3NDUxODApKV0sWyJQaG9uZXMgJiBIYW5kaGVsZCBEZXZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTMzMzMyKSldLFsiUGhvbmVzICYgU21hcnQgUGhvbmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTIzNzY0KSldLFsiUGhvdG9ncmFwaGljIEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDgzMDc5NykpXSxbIlBob3Rvdm9sdGFpYyBTb2xhciBTeXN0ZW1zICYgRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTQ1NzYyKSldLFsiUGxhc3RpYyBDb250YWluZXIgJiBQYWNrYWdpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig2ODkzOTMpKV0sWyJQbGFzdGljcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDkwNTkzNCkpXSxbIlBsYXRpbnVtIE1pbmluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDkzNjI2MCkpXSxbIlBsYXlzICYgQ29uY2VydCBQcm9kdWN0aW9uIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzQwMDMpKV0sWyJQbHVtYmluZyBGaXh0dXJlcyAmIEZpdHRpbmdzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzg2NTYpKV0sWyJQb2ludCBvZiBTYWxlIFN5c3RlbXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MDkyKSldLFsiUG9ydCBPcGVyYXRvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyOTUxNjApKV0sWyJQb3J0IFdhcmVob3VzaW5nIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzU3MDYwKSldLFsiUG9ydGFibGUgTW90b3JzICYgR2VuZXJhdG9ycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI3NzQ0MykpXSxbIlBvcnRhYmxlIFNhdGVsbGl0ZSBOYXZpZ2F0aW9uIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjYyMjQzKSldLFsiUG91bHRyeSBGYXJtaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjM1NDE1KSldLFsiUHJlY2lvdXMgTWV0YWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODY0MjEyKSldLFsiUHJlY2lvdXMgTWV0YWxzICYgTWluZXJhbHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNzYwODkpKV0sWyJQcmVmYWJyaWNhdGVkIEhvbWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODcxMDg4KSldLFsiUHJpbWFyeSBBbHVtaW51bSBQcm9kdWN0aW9uIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjU1MzcpKV0sWyJQcml2YXRlIEJhbmtzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjQzNzU2KSldLFsiUHJpdmF0ZSBFcXVpdHkiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5Nzk1MzIpKV0sWyJQcm9jZXNzb3JzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTQ4MzYpKV0sWyJQcm9mZXNzaW9uYWwgSW5mb3JtYXRpb24gU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1NTMzMzApKV0sWyJQcm9mZXNzaW9uYWwgU3BvcnRzIFZlbnVlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEwNDAxNCkpXSxbIlByb2dyYW1taW5nIFNvZnR3YXJlICYgVGVzdGluZyBUb29scyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDUzNDM5KSldLFsiUHJvcGVydHkgJiBDYXN1YWx0eSBJbnN1cmFuY2UiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MzYwNjYpKV0sWyJQcm9wZXJ0eSAmIENhc3VhbHR5IFJlaW5zdXJhbmNlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODk2MjMwKSldLFsiUHJvcGVydHkgSW5zdXJhbmNlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzY0ODc3KSldLFsiUHJvcGVydHktQ2FzdWFsdHkgSW5zdXJlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNTE2MTQpKV0sWyJQcm9wZXJ0eS9DYXN1YWx0eSBJbnN1cmFuY2UiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2OTY0NzcpKV0sWyJQcm92aW5jZS9TdGF0ZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc2NjkyKSldLFsiUHVibGljIFJlbGF0aW9ucyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU2ODMwKSldLFsiUHVibGljIFNwb3J0IEZhY2lsaXRpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxODIwOTcpKV0sWyJQdWJsaXNoaW5nOiBCb29rcy9NYWdhemluZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzMTMwNTYpKV0sWyJQdWJsaXNoaW5nOiBOZXdzcGFwZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzAwNDQyKSldLFsiUHVicywgQmFycyAmIE5pZ2h0IENsdWJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTMzNDYxKSldLFsiUHVscCBNaWxscyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM1Mjg1NikpXSxbIlB1bHAgJiBQYXBlciIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM2NzM2MSkpXSxbIlB1bXAgJiBQdW1waW5nIEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMyMTE3KSldLFsiUHVyaWZpY2F0aW9uICYgVHJlYXRtZW50IEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg0MDM4NikpXSxbIlF1aWNrIFNlcnZpY2UgUmVzdGF1cmFudHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NDcyOTkpKV0sWyJSRklEIFN5c3RlbXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NjcwMjMpKV0sWyJSYWRpbyBCcm9hZGNhc3RpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMTk4OTIpKV0sWyJSYWlsIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjAwNTc2KSldLFsiUmFpbHJvYWRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzY3MTQ3KSldLFsiUmFpbHdheSBDb25zdHJ1Y3Rpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NjY1NDcpKV0sWyJSYWlsd2F5IEZyZWlnaHQgT3BlcmF0b3JzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzE5NzEzKSldLFsiUmFyZSBFYXJ0aCBNaW5lcmFscyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDkxODQpKV0sWyJSYXRpbmcgQWdlbmNpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMjc3NTQpKV0sWyJSZWFkeS1NYWRlIE1lYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjEzOTUxKSldLFsiUmVhbCBFc3RhdGUgRGV2ZWxvcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NDEwNDUpKV0sWyJSZWFsIEVzdGF0ZSBEZXZlbG9wbWVudCAmIE9wZXJhdGlvbnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MTIwMDQpKV0sWyJSZWFsIEVzdGF0ZSBJbnZlc3RtZW50IFRydXN0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE0MjA4NikpXSxbIlJlYWwgRXN0YXRlIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzc2MzY1KSldLFsiUmVjcmVhdGlvbmFsIFByb2R1Y3RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTA1NzEpKV0sWyJSZWdpb25hbCBBaXJsaW5lcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc2NjE2NSkpXSxbIlJlZ2lvbmFsIEJhbmtzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzU4NjIzKSldLFsiUmVpbnN1cmFuY2UiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MzQ0NzcpKV0sWyJSZW5ld2FibGUgRW5lcmd5IEVxdWlwbWVudCAmIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTc4OTMwKSldLFsiUmVuZXdhYmxlIEVuZXJneSBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDkxOTYzOSkpXSxbIlJlbmV3YWJsZSBGdWVscyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM5NDE3NCkpXSxbIlJlbmV3YWJsZSBJUFBzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTg0OTkzKSldLFsiUmVuZXdhYmxlIFV0aWxpdGllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE4MDA5MCkpXSxbIlJlc2lkZW50aWFsICBSZWFsIEVzdGF0ZSBEZXZlbG9wbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIwNjE0NCkpXSxbIlJlc2lkZW50aWFsICYgTG9uZyBUZXJtIENhcmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMjIxODkpKV0sWyJSZXNpZGVudGlhbCBBcmNoaXRlY3R1cmFsICYgSW50ZXJpb3IgRGVzaWduIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTA5MDA3KSldLFsiUmVzaWRlbnRpYWwgQnVpbGRlcnMgLSBNdWx0aWZhbWlseSBIb21lcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU3ODgxMikpXSxbIlJlc2lkZW50aWFsIEJ1aWxkZXJzIC0gU2luZ2xlIEhvbWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTgyNzk3KSldLFsiUmVzaWRlbnRpYWwgUkVJVHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMjAyNjQpKV0sWyJSZXNpZGVudGlhbCBSZWFsIEVzdGF0ZSBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE0NTI4MSkpXSxbIlJlc29ydCBPcGVyYXRvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4NDMxODEpKV0sWyJSZXN0YXVyYW50cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMyMzg4OSkpXSxbIlJlc3RhdXJhbnRzICYgQmFycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMxNTIxMykpXSxbIlJldGFpbCAgUmVhbCBFc3RhdGUgRGV2ZWxvcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0MTI2MjApKV0sWyJSZXRhaWwgJiBNb3J0Z2FnZSBCYW5rcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc5MjkyNikpXSxbIlJldGFpbCAtIERlcGFydG1lbnQgU3RvcmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTYxMjA1KSldLFsiUmV0YWlsIC0gRHJ1Z3Mgd2l0aCBHcm9jZXJ5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjU5NzYxKSldLFsiUmV0YWlsIC0gRHJ1Z3Mgd2l0aG91dCBHcm9jZXJ5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjA5NzI4KSldLFsiUmV0YWlsIFJFSVRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTAxMTQwKSldLFsiUmV0YWlsIFJlYWwgRXN0YXRlIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzA5NjI1KSldLFsiUmV0aXJlbWVudCBIb21lIEJ1aWxkZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTE4ODkpKV0sWyJSb2NrIE1pbmluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg5MTM5OSkpXSxbIlJvb2ZpbmcgU3VwcGxpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyOTIxMzUpKV0sWyJSdWJiZXIgUGxhbnRhdGlvbiIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ2MTk3MikpXSxbIlNhaWxpbmcgWWFjaHRzICYgTW90b3Jib2F0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIyNzg2MSkpXSxbIlNhbGVzIFByb21vdGlvbnMgJiBFdmVudHMgTWFuYWdlbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIxOTcxNykpXSxbIlNhbml0YXJ5IFByb2R1Y3RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjI3MzU1KSldLFsiU2F0ZWxsaXRlICBTeXN0ZW1zICYgQWNjZXNzb3JpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MzQwNzQpKV0sWyJTYXRlbGxpdGUgU2VydmljZSBPcGVyYXRvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4NTkxMTYpKV0sWyJTYXZpbmdzIEJhbmtzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzM0NTA3KSldLFsiU2NpZW50aWZpYyAmIFByZWNpc2lvbiBFcXVpcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxOTg2MjgpKV0sWyJTY2llbnRpZmljICYgU3VwZXIgQ29tcHV0ZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzY2NzA0KSldLFsiU2VhLUJvcm5lIFRhbmtlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0MDQ0MTIpKV0sWyJTZWFmb29kIFByb2R1Y3QgUHJlcGFyYXRpb24gJiBQYWNrYWdpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMzI2NjkpKV0sWyJTZWFyY2ggRW5naW5lcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg5MjE2MikpXSxbIlNlY29uZGFyeSBTbWVsdGluZyAmIEFsbG95aW5nIG9mIEFsdW1pbnVtIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTc4NzM4KSldLFsiU2VjdXJpdGllcyAmIENvbW1vZGl0eSBFeGNoYW5nZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3ODYwMTUpKV0sWyJTZWN1cml0eSAmIFN1cnZlaWxsYW5jZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk0OTI2NSkpXSxbIlNlY3VyaXR5IFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTI3MjUyKSldLFsiU2VsZi1TdG9yYWdlIFJFSVRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTkyMjYpKV0sWyJTZW1pY29uZHVjdG9yIEVxdWlwbWVudCAmIFRlc3RpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigzOTIzODEpKV0sWyJTZW1pY29uZHVjdG9yIEVxdWlwbWVudCBXaG9sZXNhbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE4MzIwOSkpXSxbIlNlbWljb25kdWN0b3IgTWFjaGluZXJ5IE1hbnVmYWN0dXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig1NDk0NTkpKV0sWyJTZW1pY29uZHVjdG9yIFRlc3RpbmcgRXF1aXBtZW50ICYgU2VydmljZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMxNjg0NSkpXSxbIlNlbWljb25kdWN0b3IgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTUxMzQ2KSldLFsiU2VtaWNvbmR1Y3RvcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4NTUyODIpKV0sWyJTZW1pcHJlY2lvdXMgR2VtIFN0b25lcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc3MDc3NSkpXSxbIlNlcnZlciAmIERhdGFiYXNlIFNvZnR3YXJlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjg2Mzg1KSldLFsiU2VydmVycyAmIFN5c3RlbXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNTUwOTYpKV0sWyJTZXJ2aWNlcyB0byB0aGUgSGVhbHRoIEluZHVzdHJ5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjU0NDA4KSldLFsiU2V3YWdlIFRyZWF0bWVudCBGYWNpbGl0aWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTA0MTM5KSldLFsiU2hlbGwgQ29tcGFuaWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDE4NjgpKV0sWyJTaGlwIFBhcnQgTWFudWZhY3R1cmVyIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTExODM2KSldLFsiU2hpcCBSZXBhaXJpbmcgJiBNYWludGFuYW5jZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg5NDg5MSkpXSxbIlNoaXBidWlsZGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM5OTgzMSkpXSxbIlNpZ25zICYgQWR2ZXJ0aXNpbmcgU3BlY2lhbHR5IFByb2R1Y2VycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMyNTA3NykpXSxbIlNpbHZlciBNaW5pbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNTYxMDMpKV0sWyJTbWFydCBHcmlkICYgRWxlY3RyaWNhbCBUcmFuc21pc3Npb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbig1NzMzMTEpKV0sWyJTbWFydCBHcmlkICYgUG93ZXIgRGlzdHJpYnV0aW9uIENvbnN0cnVjdGlvbiIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE4NDI3MCkpXSxbIlNuYWNrIEZvb2QgJiBOb24tY2hvY29sYXRlIENvbmZlY3Rpb25hcnkiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5MDg0NSkpXSxbIlNvY2lhbCBNZWRpYSAmIE5ldHdvcmtpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MTgyMjIpKV0sWyJTb2Z0IEZ1cm5pc2hpbmcgUmV0YWlsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODI0NTc4KSldLFsiU29mdHdhcmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1OTcxMDMpKV0sWyJTb3ZlcmVpZ24iLCgpPT50LnQobnVsbCx2b2lkIDAsbig3ODE5MzIpKV0sWyJTcGFjZWNyYWZ0IE1hbnVmYWN0dXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNTk3NjEpKV0sWyJTcGVjaWFsIEZvb2RzICYgV2VsYmVpbmcgUHJvZHVjdHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MjY1NzApKV0sWyJTcGVjaWFsIEZvb2RzICYgV2VsbGJlaW5nIFByb2R1Y3RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzA5NjEwKSldLFsiU3BlY2lhbGl6ZWQgQXZpYXRpb24gU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMTc2MjkpKV0sWyJTcGVjaWFsaXplZCBQcmludGluZyBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY3ODEyNikpXSxbIlNwZWNpYWxpemVkIFJFSVRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzI0NTExKSldLFsiU3BlY2lhbHR5ICYgQWR2YW5jZWQgUGhhcm1hY2V1dGljYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDM2NTQ5KSldLFsiU3BlY2lhbHR5IENoZW1pY2FscyBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NzE3ODYpKV0sWyJTcGVjaWFsdHkgQ2hlbWljYWxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzkwOTY0KSldLFsiU3BlY2lhbHR5IEluc3VyYW5jZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIxMTI4NykpXSxbIlNwZWNpYWx0eSBJbnN1cmVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU1NTk3OSkpXSxbIlNwZWNpYWx0eSBNaW5pbmcgJiBNZXRhbHMgV2hvbGVzYWxlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzA1NTQ2KSldLFsiU3BlY2lhbHR5IE1pbmluZyAmIE1ldGFscyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDgxODcwOCkpXSxbIlNwZWNpYWx0eSBTdG9yZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNTUyODEpKV0sWyJTcGVjaWFsdHkgVGVsZWNvbW11bmljYXRpb25zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzQ1NjUzKSldLFsiU3BvcnRpbmcgJiBPdXRkb29yIEdvb2RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTg1ODk5KSldLFsiU3BvcnRpbmcgR29vZHMgU3RvcmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTQ0NDk0KSldLFsiU3BvcnRzICYgT3V0ZG9vciBGb290d2VhciIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIxMzk4NykpXSxbIlNwb3J0cyAmIE91dGRvb3JzIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM3MjE3MykpXSxbIlNwb3J0c3dlYXIgJiBPdXRkb29ycyBDbG90aGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY0NjE0NCkpXSxbIlN0YXJjaCwgVmVnZXRhYmxlIEZhdCAmIE9pbCBNYW51ZmFjdHVyaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjkxNDU2KSldLFsiU3RhdGUgQWdlbmN5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTQyMTg4KSldLFsiU3RhdGlvbmFyeSBGdWVsIENlbGxzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzUxMDc0KSldLFsiU3RlYW0gJiBBaXItQ29uZGl0aW9uaW5nIFN1cHBseSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ5ODYzOCkpXSxbIlN0ZWVsIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTcyNzUzKSldLFsiU3RvcmFnZSBEZXZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzQ2MzMwKSldLFsiU3VnYXIgJiBBcnRpZmljaWFsIFN3ZWV0ZW5lcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MjYxMDcpKV0sWyJTdWdhcmNhbmUgRmFybWluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMzNjk4OCkpXSxbIlN1cGVybWFya2V0cyAmIENvbnZlbmllbmNlIFN0b3JlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc4MDIyKSldLFsiU3VwcmFuYXRpb25hbCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc3NDM4NikpXSxbIlN3aXRjaGdlYXIiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3OTYzMDcpKV0sWyJTeW50aGV0aWMgRmFicmljcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ1NTU1MCkpXSxbIlN5c3RlbSBTb2Z0d2FyZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDU3MTcyNykpXSxbIlRWICYgVmlkZW8iLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMzc3NDgpKV0sWyJUYWJsZXQgJiBOZXRib29rIENvbXB1dGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDY5OTEyMikpXSxbIlRhbm5pbmcgJiBTb2Z0ZW5pbmcgYWdlbnRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTk3MzQ4KSldLFsiVGF4aSAmIExpbW91c2luZSIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE4OTQ4KSldLFsiVGVjaG5vbG9neSBDb25zdWx0aW5nICYgT3V0c291cmNpbmcgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3NjA1MTMpKV0sWyJUZWxlY29tbXVuaWNhdGlvbiBDb25zdHJ1Y3Rpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbig5MTYxODUpKV0sWyJUZWxlY29tbXVuaWNhdGlvbnMgRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzg5Njg5KSldLFsiVGVsZWNvbW11bmljYXRpb25zIE5ldHdvcmsgSW5mcmFzdHJ1Y3R1cmUiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxODUxNjQpKV0sWyJUZWxlY29tbXVuaWNhdGlvbnMgUmVzZWxsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTczMjY3KSldLFsiVGVsZW1lZGljaW5lIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjU1ODIwKSldLFsiVGVsZXZpc2lvbiBCcm9hZGNhc3RpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig4Mjc5ODApKV0sWyJUZXN0aW5nICYgTWVhc3VyaW5nIEVxdWlwbWVudCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDIyMTM1NSkpXSxbIlRlc3RpbmcgTGFib3JhdG9yaWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTIxNzg2KSldLFsiVGVzdGluZyBTZXJ2aWNlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDQ5MjU3NykpXSxbIlRleHRpbGVzICYgTGVhdGhlciBHb29kcyBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MjA2NDcpKV0sWyJUZXh0aWxlcyAmIExlYXRoZXIgR29vZHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyMjM2NDQpKV0sWyJUZXh0aWxlcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDg1MTk5MykpXSxbIlRoZWF0cmVzICYgUGVyZm9ybWluZyBBcnRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDE1NDEpKV0sWyJUaGVybWFsIFNvbGFyIFN5c3RlbXMgJiBFcXVpcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNTg0MjEpKV0sWyJUaWxlICYgUGF2aW5nIE1hdGVyaWFsIE1hbnVmYWN0dXJpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig1ODE1MSkpXSxbIlRpbWJlciBSRUlUcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDc3NTc1NSkpXSxbIlRpbWJlciBUcmFjdCBPcGVyYXRpb25zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzIwNykpXSxbIlRpcmUgJiBUdWJlIE1hbnVmYWN0dXJlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig5NjAwNTMpKV0sWyJUaXJlIERlYWxlcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMzUwMzMpKV0sWyJUaXJlIFJldHJlYWRpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MjYwMDEpKV0sWyJUaXJlcyAmIFJ1YmJlciBQcm9kdWN0cyBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxNjIxMzMpKV0sWyJUaXJlcyAmIFJ1YmJlciBQcm9kdWN0cyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI0Mjc3NSkpXSxbIlRvYmFjY28iLCgpPT50LnQobnVsbCx2b2lkIDAsbig0NzI5NzEpKV0sWyJUb29scyAmIEhhcmR3YXJlIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjQ3MDgzKSldLFsiVG9vbHMgJiBIb3VzZXdhcmVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTE4MDkyKSldLFsiVG95cyAmIEdhbWVzIFJldGFpbGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDE1MjgzMykpXSxbIlRveXMgJiBKdXZlbmlsZSBQcm9kdWN0cyBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2MjIzMjcpKV0sWyJUb3lzICYgSnV2ZW5pbGUgUHJvZHVjdHMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNTc4MDQpKV0sWyJUcmFkZSAmIEJ1c2luZXNzIFB1Ymxpc2hpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbigzMzg4NjUpKV0sWyJUcmFuc2FjdGlvbiAmIFBheW1lbnQgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MTg2MCkpXSxbIlRyYW5zbGF0aW9uICYgSW50ZXJwcmV0YXRpb24gU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1MzMyNjkpKV0sWyJUcmF2ZWwgQWdlbnRzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTMzNTkxKSldLFsiVHJ1Y2tpbmciLCgpPT50LnQobnVsbCx2b2lkIDAsbig3MjEyMjUpKV0sWyJUcnVja3MvQ29uc3RydWN0aW9uL0Zhcm0gTWFjaGluZXJ5IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDIxNjQ3KSldLFsiVHVyYmluZSBNYW51ZmFjdHVyaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjg3NzI1KSldLFsiVW5jb252ZW50aW9uYWwgT2lsICYgR2FzIERyaWxsaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTM3ODg4KSldLFsiVW5jb252ZW50aW9uYWwgT2lsICYgR2FzIFByb2R1Y3Rpb24iLCgpPT50LnQobnVsbCx2b2lkIDAsbig2NjE5NzYpKV0sWyJVcmFuaXVtIE1pbmluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDEwNzQwNSkpXSxbIlVyYW5pdW0iLCgpPT50LnQobnVsbCx2b2lkIDAsbigzMjMxMzIpKV0sWyJVc2VkIENhciBEZWFsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDg3MDA2KSldLFsiVXNlZCBNZXJjaGFuZGlzZSBTdG9yZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1OTI2MjcpKV0sWyJWT0lQIEVxdWlwbWVudCAmIFN5c3RlbXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigzNzI1MjMpKV0sWyJWT0lQIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMjk4MTEzKSldLFsiVmVnZXRhYmxlLCBGcnVpdCAmIE51dCBGYXJtaW5nIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjEwNjgwKSldLFsiVmVuZGluZyBNYWNoaW5lIFByb3ZpZGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDI0OTY4NSkpXSxbIlZlbnR1cmUgQ2FwaXRhbCIsKCk9PnQudChudWxsLHZvaWQgMCxuKDM4NjU4NikpXSxbIlZldGVyaW5hcnkgRHJ1Z3MiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMjY3NCkpXSxbIlZldGVyaW5hcnkgTWVkaWNhbCBFcXVpcG1lbnQgJiBTdXBwbGllcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYxOTQ5MCkpXSxbIlZldGVyaW5hcnkgU2VydmljZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3OTEzODQpKV0sWyJXYWxscGFwZXIiLCgpPT50LnQobnVsbCx2b2lkIDAsbig1NTQxNzMpKV0sWyJXYXJlaG91c2luZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDkwNjM3OSkpXSxbIldhc3RlIE1hbmFnZW1lbnQsIERpc3Bvc2FsICYgUmVjeWNsaW5nIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDkzMzMzKSldLFsiV2FzdGUgdG8gRW5lcmd5IFN5c3RlbXMgJiBFcXVpcG1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMjEzMDEpKV0sWyJXYXRjaGVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNjMxMDUyKSldLFsiV2F0ZXIgJiBTZXdhZ2UgQ29uc3RydWN0aW9uIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODYxNjU1KSldLFsiV2F0ZXIgU3VwcGx5ICYgSXJyaWdhdGlvbiBTeXN0ZW1zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDM1OTgwKSldLFsiV2F0ZXIgVXRpbGl0aWVzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMzY5OTQ0KSldLFsiV2F2ZSBQb3dlciBFbmVyZ3kgRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNDA1Nzc5KSldLFsiV2VhbHRoIE1hbmFnZW1lbnQiLCgpPT50LnQobnVsbCx2b2lkIDAsbig3OTU3NykpXSxbIldlbGRpbmcgJiBTb2xkZXJpbmcgRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oOTE0ODE2KSldLFsiV2hvbGVzYWxlIERpc3RyaWJ1dG9ycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYwOTQ1NSkpXSxbIldpLUZpICYgV2ktTWF4IFByb3ZpZGVycyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDYyODk1KSldLFsiV2luZCBTeXN0ZW1zICYgRXF1aXBtZW50IiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTk5Nzg4KSldLFsiV2luZXJpZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig2MTM2NzUpKV0sWyJXaXJlZCBUZWxlY29tbXVuaWNhdGlvbnMgQ2FycmllcnMiLCgpPT50LnQobnVsbCx2b2lkIDAsbigyNDcxNjUpKV0sWyJXaXJlbGVzcyBUZWxlY29tIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTc4MzA1KSldLFsiV2lyZWxlc3MgVGVsZWNvbW11bmljYXRpb25zIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oODUzMTY0KSldLFsiV2lyZWxlc3MgVGVsZWNvbW11bmljYXRpb25zIFNlcnZpY2VzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oMTI1NzQzKSldLFsiV2lyZXMgJiBDYWJsZXMiLCgpPT50LnQobnVsbCx2b2lkIDAsbig4MDA4NDUpKV0sWyJXb21lbidzIEFwcGFyZWwgUmV0YWlsZXJzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNTQxNDA1KSldLFsiV29tZW4ncyBDbG90aGluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDUwMzcxMykpXSxbIldvbWVuJ3MgRm9vdHdlYXIiLCgpPT50LnQobnVsbCx2b2lkIDAsbig0MzQwNzcpKV0sWyJXb29kIENvbnRhaW5lciAmIFBhY2thZ2luZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDUyNDUzOSkpXSxbIldvb2QgUHJvZHVjdCBXaG9sZXNhbGUiLCgpPT50LnQobnVsbCx2b2lkIDAsbigxMDM2NDApKV0sWyJXb29kIFByb2R1Y3RzIiwoKT0+dC50KG51bGwsdm9pZCAwLG4oNzA2MDY1KSldLFsiWWFybiBHb29kcyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDMwOTUyMykpXSxbIlppbmMgT3JlIE1pbmluZyIsKCk9PnQudChudWxsLHZvaWQgMCxuKDk1MDIwNykpXV0pCjtmdW5jdGlvbiB1KGwpe2NvbnN0IGk9by5nZXQobCk7cmV0dXJuIHZvaWQgMCE9PWk/aSgpOmZ1bmN0aW9uKGwpe2NvbnN0IGk9ZS5nZXQobCk7cmV0dXJuIHZvaWQgMCE9PWk/aSgpOmx9KGwpfX19XSk7"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCZEC.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.512Z","timestamp":1785126258512,"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 /crypto/XTVCZEC.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 04:24:18 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: \"08cbf05cf98b49bd9fe1f115f35f4717\"\r\nlast-modified: Wed, 08 Sep 2021 09:05:29 GMT\r\ncdn-cachedat: 08/14/2025 09:16:49\r\nx-amz-id-2: K45MYrI7R/pk/WaoWQADntBz63tm36qn3J/RkZFxJxBuFM5lJ/choiq9XbjZKMD0jm58VUsXo6I=\r\nx-amz-request-id: G5MPGDVMW4Y99TNV\r\nx-amz-meta-hash: 08cbf05cf98b49bd9fe1f115f35f4717\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: de79a1499afbd762b4a8a1b65e7cc308\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":222,"size_decoded":1058,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with no line terminators","md5":"08cbf05cf98b49bd9fe1f115f35f4717","sha1":"ff3cd6bbd0770bd17181a92c792f73225dda8d71","sha256":"a5156bd953c2fff7dae55d90148a3663e322fa5150eb3ec8f909b860f8d2f03d","sha512":"9c340abe0d24c25b996de99e721d82d4fcca900c76e881a28758eb27667b7d929ba53bec46e918ce6f0e9e88f4619b68738ee608fb172ba8283fccb67e22613c","ssdeep":"","tlshash":"90d0a7a9a63d5444a4554af468741573201ea0eb914f05ecf1906d6926486db6c40628","first_seen":"2023-05-02T00:44:00Z","last_seen":"2026-07-27T07:05:43.285354Z","times_seen":849,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjRUNCMjQ0IiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTguNDg3IDExSDEydjJoLTJ2Mkg4di0ySDZ2LTJsMy40OTYtNEg2VjVoMlYzaDJ2MmgydjJsLTMuNTEzIDR6IiBmaWxsPSIjMUUyMjJEIi8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCAR.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.688Z","timestamp":1785126258688,"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 /crypto/XTVCAR.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 04:24:18 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: \"e2704c56a660524b36418d731e75caac\"\r\nlast-modified: Wed, 08 Sep 2021 09:03:34 GMT\r\ncdn-cachedat: 08/09/2025 14:29:30\r\nx-amz-id-2: XVf81d8MUzKjRFv5eEHvJyA3WZjfz9em0/6S6u59y9qKyhhq9zy1dMS8bUnpCdh7wtSgKnkBnUs=\r\nx-amz-request-id: GQRTN1D9RBD217RC\r\nx-amz-meta-hash: e2704c56a660524b36418d731e75caac\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: e2cacdc503c8d09cb96937c695d131d7\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":1083,"size_decoded":1471,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1083), with no line terminators","md5":"e2704c56a660524b36418d731e75caac","sha1":"3d03ea0a84b1f8984d19d8c931d38a6ea5fe6275","sha256":"31b25a78577e63ea0f45866f9eea0e29b92d7960ca1aaf75a8f8be4e0cd807f4","sha512":"8f24b1dfe969be4e0ce09764bde1b33031f411306a4c404dfae70daf804955421f7795429e0491aed04ab0c3c1659f1f1a0cdf45f4084e80127c0328ce568739","ssdeep":"","tlshash":"f411f08056b0ab4cb8c4d6bedf9594a0404a9086b0fb9dc8ae4b8fd8741a8a9fc94445","first_seen":"2024-02-21T19:26:55Z","last_seen":"2026-07-27T07:05:43.3546Z","times_seen":791,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjMjIyMzI2IiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTguOTE0IDQuNzg1YTQuMjE1IDQuMjE1IDAgMTAwIDguNDMgNC4yMTUgNC4yMTUgMCAwMDAtOC40M3pNMy45MTQgOWE1IDUgMCAxMTEwIDAgNSA1IDAgMDEtMTAgMHoiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNOS43NzQgMTAuNjY1YS44MjUuODI1IDAgMDEtLjA1OC0uMTU0IDIuMDQ2IDIuMDQ2IDAgMDEtLjA0LS4xODUgMS4yMiAxLjIyIDAgMDEtLjY3MS4zNzIgMS40MzUgMS40MzUgMCAwMS0uMzE5LjAzNGMtLjE4NiAwLS4zNTctLjAyNy0uNTEzLS4wOGExLjIyIDEuMjIgMCAwMS0uNC0uMjI1IDEuMDE5IDEuMDE5IDAgMDEtLjM1Ni0uNzc5YzAtLjM4My4xNDMtLjY3OC40MjctLjg4Ni4yODYtLjIxLjcxMi0uMzE1IDEuMjc4LS4zMTVoLjUydi0uMjE1YS41MjIuNTIyIDAgMDAtLjE3LS40MTNjLS4xMTUtLjEwMy0uMjgtLjE1NC0uNDk0LS4xNTQtLjE5IDAtLjMyOS4wNDEtLjQxNi4xMjRhLjQyMi40MjIgMCAwMC0uMTMuMzI1aC0uOTM0YzAtLjE1NC4wMzQtLjMuMS0uNDQuMDctLjEzOC4xNy0uMjYuMy0uMzY1LjEzMi0uMTA1LjI5MS0uMTg4LjQ4LS4yNDguMTktLjA2My40MDctLjA5NC42NS0uMDk0LjIyIDAgLjQyMy4wMjYuNjExLjA4LjE5LjA1NC4zNTUuMTMzLjQ5NC4yMzguMTM4LjEwNi4yNDcuMjM5LjMyNS40LjA3OS4xNTkuMTE4LjM0My4xMTguNTUzdjEuNTU4YzAgLjE5NC4wMTIuMzU1LjAzNy40ODMuMDI0LjEyNy4wNi4yMzcuMTA3LjMyOXYuMDU3aC0uOTQ3em0tLjg5LS42NTRhLjk3NS45NzUgMCAwMC42NDgtLjI0Mi42NzguNjc4IDAgMDAuMTEtLjE0MXYtLjYyNGgtLjQ3NmMtLjE0NSAwLS4yNy4wMTQtLjM3Mi4wNDNhLjY3NS42NzUgMCAwMC0uMjUyLjExOC40NTIuNDUyIDAgMDAtLjE0NC4xODEuNTQ4LjU0OCAwIDAwLS4wNDcuMjI4YzAgLjEyNS4wNDMuMjMuMTMuMzEyLjA5LjA4My4yMjQuMTI1LjQwMy4xMjV6IiBmaWxsPSIjZmZmIi8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCAVNT.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.756Z","timestamp":1785126258756,"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 /crypto/XTVCAVNT.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 04:24:18 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: \"f3cd26b52c49628e4957c5ddbf6500ea\"\r\nlast-modified: Fri, 03 Oct 2025 20:27:08 GMT\r\ncdn-cachedat: 10/04/2025 18:19:19\r\nx-amz-id-2: x3e0HxMs5+prdCQQcBlxHF8gaBFUDaTanfAwqhZNHQ8r9MRIZTWrHQNrDTF+gpPDfcGboFHEDiY=\r\nx-amz-request-id: YNXHPZX7XYRJX489\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: f3cd26b52c49628e4957c5ddbf6500ea\r\ncdn-proxyver: 1.37\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 79a6c6f488294747ba55e0e5ad9b09ea\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":1283,"size_decoded":1468,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1283), with no line terminators","md5":"f3cd26b52c49628e4957c5ddbf6500ea","sha1":"f45b388a70396233f54683c41f0a2d122e96802d","sha256":"656cc6393e0785dd1e4ffa91e2087ccda569760a3f063da93cb1c8d1abb62c09","sha512":"1eb260a8d8dfdd6e4bcd75a79789e84f3e54b4eb7713492b3a9164a7f48e1bca32ebc50e779c4da7cbd450391f72d558ca071658e40ad6c5bb395947c84d64dd","ssdeep":"","tlshash":"7d21c036f91ee82bd56ec2acdc8194e6211d90dbe6c59375e1989f2e64144c35d0cf70","first_seen":"2025-10-06T03:50:37.054819Z","last_seen":"2026-07-27T07:05:43.389705Z","times_seen":517,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMxODFCMUUiIGQ9Ik0wIDBoMTh2MThIMHoiLz48Y2lyY2xlIGN4PSI5IiBjeT0iOSIgcj0iNSIgZmlsbD0idXJsKCNhKSIvPjxjaXJjbGUgY3g9IjkiIGN5PSI5IiByPSI0LjcxIiBmaWxsPSJ1cmwoI2IpIi8+PHBhdGggZD0iTTEyIDlWN2MtLjYxIDAtMS4zNyAwLTEuODIuOTZDOS44MiA4LjcyIDkuMjQgOC45OCA5IDl2MmgxLjM1Yy4xIDAgLjE3LS4wOC4xOS0uMi4yNS0xLjQ3IDEuMDctMS44MyAxLjQ2LTEuOFoiIGZpbGw9InVybCgjYykiLz48cGF0aCBkPSJNNiA5djJjLjYxIDAgMS4zNyAwIDEuODItLjk2QzguMTggOS4yOCA4Ljc2IDkuMDIgOSA5VjdINy42NWMtLjEgMC0uMTcuMDgtLjE5LjJDNy4yMSA4LjY2IDYuMzkgOS4wMiA2IDlaIiBmaWxsPSJ1cmwoI2QpIi8+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJhIiB4MT0iNS4xIiB5MT0iNS44MyIgeDI9IjEzLjI4IiB5Mj0iMTEuNTkiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjMjQyODhEIi8+PHN0b3Agb2Zmc2V0PSIuNSIgc3RvcC1jb2xvcj0iIzRBNjBFQSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzQ4MEY4RiIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IGlkPSJiIiB4MT0iNi4xMiIgeTE9IjUuNDUiIHgyPSIxMi4yMyIgeTI9IjEyLjQiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9Ii40IiBzdG9wLWNvbG9yPSIjMDEwMTAxIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjNDgwRTkyIi8+PC9saW5lYXJHcmFkaWVudD48bGluZWFyR3JhZGllbnQgaWQ9ImMiIHgxPSIxMC41IiB5MT0iMTEiIHgyPSIxMC41IiB5Mj0iNyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiNDNTk4RkYiLz48c3RvcCBvZmZzZXQ9Ii42MSIgc3RvcC1jb2xvcj0iI2ZmZiIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IGlkPSJkIiB4MT0iNy41IiB5MT0iNyIgeDI9IjcuNSIgeTI9IjExIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agb2Zmc2V0PSIuMzkiIHN0b3AtY29sb3I9IiNmZmYiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNDNTk4RkYiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCVIRTUAL.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.654Z","timestamp":1785126258654,"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 /crypto/XTVCVIRTUAL.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 04:24:18 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: \"ad6f6e0bb7ec33499b2ba8bfc36affe7\"\r\nlast-modified: Wed, 13 Nov 2024 14:04:58 GMT\r\ncdn-cachedat: 08/09/2025 14:43:05\r\nx-amz-id-2: zBvCGRyX+Jja/7wGwUDCBc7z+H/qQLUhmoDvCThlSZrv8w4jYMt2QFWDzsoLJvYIuW5+mfSGXl4=\r\nx-amz-request-id: 2E6VAT68ZE2TY3V3\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: ad6f6e0bb7ec33499b2ba8bfc36affe7\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: 32d96b05502b4b04555c0eaecd2eaf57\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":1743,"size_decoded":1750,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1743), with no line terminators","md5":"ad6f6e0bb7ec33499b2ba8bfc36affe7","sha1":"f968b5f9d1889ecdd303cc2a91522ee4ddee0033","sha256":"e36bc484a0802bae1481acbe22e32922345787b4f70b2286572b2769b694ead4","sha512":"0e199dda853c689bc0f898aefc9cc71579374512cfda6ba863a8fc2ca46dd953f79002bf9ecf821500bc61c0d71f54a2c9629b79a75c4178a851471e80077fc4","ssdeep":"","tlshash":"51312539f21cda6fe587d2acdf5844b0334f00b7b0d592a09aeedb5da04e0c1dd0a560","first_seen":"2025-04-11T11:28:49.231453Z","last_seen":"2026-07-27T07:05:43.3235Z","times_seen":791,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMC44OSA2LjJjLS4yLS4zOS0uNDYtLjY4LS43OC0uODlhMi4wNCAyLjA0IDAgMCAwLTIuMDctLjA2Yy0uNDMuMjMtLjc2LjU1LS45OC45Ny0uMjcuNDgtLjMzLjk3LS4yIDEuNDdhMi42NSAyLjY1IDAgMCAwIDIuNiAxLjkxbC4wMi4wMnYuMDRjLS4yLjQ0LS40NS44Ny0uNzUgMS4zLS4wMS4wMi0uMDMuMDItLjA0IDBsLS4yNC0uMzd2LS4wMWwtLjA0LS4wNWE4LjcgOC43IDAgMCAwLTEuMzMtMS41N0E3LjkgNy45IDAgMCAwIDMuODMgNy4xYTYuOTggNi45OCAwIDAgMC0uNzQtLjEyYy0uMDcuMDMtLjEuMDgtLjA5LjE0IDAgLjA3LjA0LjExLjEuMTVhMTAuMDQgMTAuMDQgMCAwIDEgNC41IDQuNzVsLjA1LjA4YTMxLjYgMzEuNiAwIDAgMSAuMS4yNGMuMDYuMTQuMTEuMjQuMTYuMy4xMS4xNi4yNy4yNy40Ny4zMi4zNi4xLjY3LjAxLjkyLS4yNS4zMy0uMzYuNjYtLjggMS0xLjMzLjM5LS42My42OC0xLjMxLjg4LTIuMDUgMC0uMDIuMDEtLjA0LjA0LS4wNWE3LjcyIDcuNzIgMCAwIDAgMi41My0xLjYxYy4wMS0uMDUgMC0uMS0uMDItLjE0LS4wMy0uMDUtLjA3LS4wNy0uMTItLjA2YS4yMy4yMyAwIDAgMC0uMS4wMyA4IDggMCAwIDEtMi4xOC45MiA0Ljc2IDQuNzYgMCAwIDAtLjQ0LTIuMjJaTTkuNDIgOC42bC4zOS4wNWguMDFsLjAxLS4wMmMuMS0uNC4xMy0uOC4wOC0xLjIyLS4wNy0uMzktLjE4LS42OS0uMzUtLjlhLjcxLjcxIDAgMCAwLS42Ny0uMjcuOTcuOTcgMCAwIDAtLjY0LjM1Ljg4Ljg4IDAgMCAwLS4xNy45MmMuMS4zLjI4LjU1LjUyLjc0LjIyLjE4LjUuMy44Mi4zNVoiIGZpbGw9InVybCgjYikiLz48cGF0aCBkPSJNMTQuMjUgNi44NGEuNTMuNTMgMCAwIDEgLjItLjEyLjU2LjU2IDAgMCAxIC4yNS0uMDNjLjE5LjAzLjI5LjE0LjMuMzQgMCAuMTItLjAzLjIzLS4xLjMzYS41LjUgMCAwIDEtLjI4LjIuMy4zIDAgMCAxLS4yNS0uMDMuMzguMzggMCAwIDEtLjE2LS4yMi45LjkgMCAwIDEtLjA1LS4yNWMwLS4xLjAzLS4xNy4xLS4yMloiIGZpbGw9InVybCgjYykiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImEiIHgxPSIxLjM2IiB5MT0iNC44OSIgeDI9IjE1LjIyIiB5Mj0iMTYuMDEiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjQ0VGNEVFIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjRUJGREQ5Ii8+PC9saW5lYXJHcmFkaWVudD48bGluZWFyR3JhZGllbnQgaWQ9ImIiIHgxPSIzLjc0IiB5MT0iNy4xOSIgeDI9IjEwLjI3IiB5Mj0iMTIuNTUiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjMzc5RDlGIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMzI4RjhGIi8+PC9saW5lYXJHcmFkaWVudD48bGluZWFyR3JhZGllbnQgaWQ9ImMiIHgxPSIzLjc0IiB5MT0iNy4xOSIgeDI9IjEwLjI3IiB5Mj0iMTIuNTUiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjMzc5RDlGIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMzI4RjhGIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PC9zdmc+"}},"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":"besttrader.live/stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.053Z","timestamp":1785126256053,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Sat, 07 Oct 2023 09:01:37 GMT\r\netag: W/\"65211e71-e2d8\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":58072,"size_decoded":14865,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (57791)","md5":"e1d98d47689e00f8ecbc5d9f61bdb42e","sha1":"6778fed3cf095a318141a31f455c8f4663885bde","sha256":"0a34a87842c539c1f4feec56bba982fd596b73500046a6e6fe38a22260c6577b","sha512":"021e615983f30ec5477fd8b611e8c5045ac6d9900f9a9bb8649b56e0c7d282965a727f8cf501c3b7e1ddff02f5b44924d5481bcea7a926be8a9e166314a07ed0","ssdeep":"768:5NYyDyKAmHVaS3m3Dqp0NwCkXDtdFDLmTV+miDNJcJiQMRqyPiYtB6UvcCg8YGk:5NTKktDLmTF8yJL45XtHjoGk","tlshash":"1243c90a725478b205df9176917f420bb737688ae94ac16cb91d98ed1e7cc893227f3c","first_seen":"2023-03-07T01:02:33Z","last_seen":"2026-07-27T06:59:18.34131Z","times_seen":28147,"resource_available":true,"data":"LyohCiAgKiBCb290c3RyYXAgdjQuMy4xIChodHRwczovL2dldGJvb3RzdHJhcC5jb20vKQogICogQ29weXJpZ2h0IDIwMTEtMjAxOSBUaGUgQm9vdHN0cmFwIEF1dGhvcnMgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ncmFwaHMvY29udHJpYnV0b3JzKQogICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvTElDRU5TRSkKICAqLwohZnVuY3Rpb24odCxlKXsib2JqZWN0Ij09dHlwZW9mIGV4cG9ydHMmJiJ1bmRlZmluZWQiIT10eXBlb2YgbW9kdWxlP2UoZXhwb3J0cyxyZXF1aXJlKCJqcXVlcnkiKSxyZXF1aXJlKCJwb3BwZXIuanMiKSk6ImZ1bmN0aW9uIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZD9kZWZpbmUoWyJleHBvcnRzIiwianF1ZXJ5IiwicG9wcGVyLmpzIl0sZSk6ZSgodD10fHxzZWxmKS5ib290c3RyYXA9e30sdC5qUXVlcnksdC5Qb3BwZXIpfSh0aGlzLGZ1bmN0aW9uKHQsZyx1KXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaSh0LGUpe2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKXt2YXIgaT1lW25dO2kuZW51bWVyYWJsZT1pLmVudW1lcmFibGV8fCExLGkuY29uZmlndXJhYmxlPSEwLCJ2YWx1ZSJpbiBpJiYoaS53cml0YWJsZT0hMCksT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsaS5rZXksaSl9fWZ1bmN0aW9uIHModCxlLG4pe3JldHVybiBlJiZpKHQucHJvdG90eXBlLGUpLG4mJmkodCxuKSx0fWZ1bmN0aW9uIGwobyl7Zm9yKHZhciB0PTE7dDxhcmd1bWVudHMubGVuZ3RoO3QrKyl7dmFyIHI9bnVsbCE9YXJndW1lbnRzW3RdP2FyZ3VtZW50c1t0XTp7fSxlPU9iamVjdC5rZXlzKHIpOyJmdW5jdGlvbiI9PXR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzJiYoZT1lLmNvbmNhdChPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHIpLmZpbHRlcihmdW5jdGlvbih0KXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihyLHQpLmVudW1lcmFibGV9KSkpLGUuZm9yRWFjaChmdW5jdGlvbih0KXt2YXIgZSxuLGk7ZT1vLGk9cltuPXRdLG4gaW4gZT9PYmplY3QuZGVmaW5lUHJvcGVydHkoZSxuLHt2YWx1ZTppLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6ZVtuXT1pfSl9cmV0dXJuIG99Zz1nJiZnLmhhc093blByb3BlcnR5KCJkZWZhdWx0Iik/Zy5kZWZhdWx0OmcsdT11JiZ1Lmhhc093blByb3BlcnR5KCJkZWZhdWx0Iik/dS5kZWZhdWx0OnU7dmFyIGU9InRyYW5zaXRpb25lbmQiO2Z1bmN0aW9uIG4odCl7dmFyIGU9dGhpcyxuPSExO3JldHVybiBnKHRoaXMpLm9uZShfLlRSQU5TSVRJT05fRU5ELGZ1bmN0aW9uKCl7bj0hMH0pLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtufHxfLnRyaWdnZXJUcmFuc2l0aW9uRW5kKGUpfSx0KSx0aGlzfXZhciBfPXtUUkFOU0lUSU9OX0VORDoiYnNUcmFuc2l0aW9uRW5kIixnZXRVSUQ6ZnVuY3Rpb24odCl7Zm9yKDt0Kz1+figxZTYqTWF0aC5yYW5kb20oKSksZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodCk7KTtyZXR1cm4gdH0sZ2V0U2VsZWN0b3JGcm9tRWxlbWVudDpmdW5jdGlvbih0KXt2YXIgZT10LmdldEF0dHJpYnV0ZSgiZGF0YS10YXJnZXQiKTtpZighZXx8IiMiPT09ZSl7dmFyIG49dC5nZXRBdHRyaWJ1dGUoImhyZWYiKTtlPW4mJiIjIiE9PW4/bi50cmltKCk6IiJ9dHJ5e3JldHVybiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGUpP2U6bnVsbH1jYXRjaCh0KXtyZXR1cm4gbnVsbH19LGdldFRyYW5zaXRpb25EdXJhdGlvbkZyb21FbGVtZW50OmZ1bmN0aW9uKHQpe2lmKCF0KXJldHVybiAwO3ZhciBlPWcodCkuY3NzKCJ0cmFuc2l0aW9uLWR1cmF0aW9uIiksbj1nKHQpLmNzcygidHJhbnNpdGlvbi1kZWxheSIpLGk9cGFyc2VGbG9hdChlKSxvPXBhcnNlRmxvYXQobik7cmV0dXJuIGl8fG8/KGU9ZS5zcGxpdCgiLCIpWzBdLG49bi5zcGxpdCgiLCIpWzBdLDFlMyoocGFyc2VGbG9hdChlKStwYXJzZUZsb2F0KG4pKSk6MH0scmVmbG93OmZ1bmN0aW9uKHQpe3JldHVybiB0Lm9mZnNldEhlaWdodH0sdHJpZ2dlclRyYW5zaXRpb25FbmQ6ZnVuY3Rpb24odCl7Zyh0KS50cmlnZ2VyKGUpfSxzdXBwb3J0c1RyYW5zaXRpb25FbmQ6ZnVuY3Rpb24oKXtyZXR1cm4gQm9vbGVhbihlKX0saXNFbGVtZW50OmZ1bmN0aW9uKHQpe3JldHVybih0WzBdfHx0KS5ub2RlVHlwZX0sdHlwZUNoZWNrQ29uZmlnOmZ1bmN0aW9uKHQsZSxuKXtmb3IodmFyIGkgaW4gbilpZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobixpKSl7dmFyIG89bltpXSxyPWVbaV0scz1yJiZfLmlzRWxlbWVudChyKT8iZWxlbWVudCI6KGE9cix7fS50b1N0cmluZy5jYWxsKGEpLm1hdGNoKC9ccyhbYS16XSspL2kpWzFdLnRvTG93ZXJDYXNlKCkpO2lmKCFuZXcgUmVnRXhwKG8pLnRlc3QocykpdGhyb3cgbmV3IEVycm9yKHQudG9VcHBlckNhc2UoKSsnOiBPcHRpb24gIicraSsnIiBwcm92aWRlZCB0eXBlICInK3MrJyIgYnV0IGV4cGVjdGVkIHR5cGUgIicrbysnIi4nKX12YXIgYX0sZmluZFNoYWRvd1Jvb3Q6ZnVuY3Rpb24odCl7aWYoIWRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5hdHRhY2hTaGFkb3cpcmV0dXJuIG51bGw7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIHQuZ2V0Um9vdE5vZGUpcmV0dXJuIHQgaW5zdGFuY2VvZiBTaGFkb3dSb290P3Q6dC5wYXJlbnROb2RlP18uZmluZFNoYWRvd1Jvb3QodC5wYXJlbnROb2RlKTpudWxsO3ZhciBlPXQuZ2V0Um9vdE5vZGUoKTtyZXR1cm4gZSBpbnN0YW5jZW9mIFNoYWRvd1Jvb3Q/ZTpudWxsfX07Zy5mbi5lbXVsYXRlVHJhbnNpdGlvbkVuZD1uLGcuZXZlbnQuc3BlY2lhbFtfLlRSQU5TSVRJT05fRU5EXT17YmluZFR5cGU6ZSxkZWxlZ2F0ZVR5cGU6ZSxoYW5kbGU6ZnVuY3Rpb24odCl7aWYoZyh0LnRhcmdldCkuaXModGhpcykpcmV0dXJuIHQuaGFuZGxlT2JqLmhhbmRsZXIuYXBwbHkodGhpcyxhcmd1bWVudHMpfX07dmFyIG89ImFsZXJ0IixyPSJicy5hbGVydCIsYT0iLiIrcixjPWcuZm5bb10saD17Q0xPU0U6ImNsb3NlIithLENMT1NFRDoiY2xvc2VkIithLENMSUNLX0RBVEFfQVBJOiJjbGljayIrYSsiLmRhdGEtYXBpIn0sZj0iYWxlcnQiLGQ9ImZhZGUiLG09InNob3ciLHA9ZnVuY3Rpb24oKXtmdW5jdGlvbiBpKHQpe3RoaXMuX2VsZW1lbnQ9dH12YXIgdD1pLnByb3RvdHlwZTtyZXR1cm4gdC5jbG9zZT1mdW5jdGlvbih0KXt2YXIgZT10aGlzLl9lbGVtZW50O3QmJihlPXRoaXMuX2dldFJvb3RFbGVtZW50KHQpKSx0aGlzLl90cmlnZ2VyQ2xvc2VFdmVudChlKS5pc0RlZmF1bHRQcmV2ZW50ZWQoKXx8dGhpcy5fcmVtb3ZlRWxlbWVudChlKX0sdC5kaXNwb3NlPWZ1bmN0aW9uKCl7Zy5yZW1vdmVEYXRhKHRoaXMuX2VsZW1lbnQsciksdGhpcy5fZWxlbWVudD1udWxsfSx0Ll9nZXRSb290RWxlbWVudD1mdW5jdGlvbih0KXt2YXIgZT1fLmdldFNlbGVjdG9yRnJvbUVsZW1lbnQodCksbj0hMTtyZXR1cm4gZSYmKG49ZG9jdW1lbnQucXVlcnlTZWxlY3RvcihlKSksbnx8KG49Zyh0KS5jbG9zZXN0KCIuIitmKVswXSksbn0sdC5fdHJpZ2dlckNsb3NlRXZlbnQ9ZnVuY3Rpb24odCl7dmFyIGU9Zy5FdmVudChoLkNMT1NFKTtyZXR1cm4gZyh0KS50cmlnZ2VyKGUpLGV9LHQuX3JlbW92ZUVsZW1lbnQ9ZnVuY3Rpb24oZSl7dmFyIG49dGhpcztpZihnKGUpLnJlbW92ZUNsYXNzKG0pLGcoZSkuaGFzQ2xhc3MoZCkpe3ZhciB0PV8uZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQoZSk7ZyhlKS5vbmUoXy5UUkFOU0lUSU9OX0VORCxmdW5jdGlvbih0KXtyZXR1cm4gbi5fZGVzdHJveUVsZW1lbnQoZSx0KX0pLmVtdWxhdGVUcmFuc2l0aW9uRW5kKHQpfWVsc2UgdGhpcy5fZGVzdHJveUVsZW1lbnQoZSl9LHQuX2Rlc3Ryb3lFbGVtZW50PWZ1bmN0aW9uKHQpe2codCkuZGV0YWNoKCkudHJpZ2dlcihoLkNMT1NFRCkucmVtb3ZlKCl9LGkuX2pRdWVyeUludGVyZmFjZT1mdW5jdGlvbihuKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIHQ9Zyh0aGlzKSxlPXQuZGF0YShyKTtlfHwoZT1uZXcgaSh0aGlzKSx0LmRhdGEocixlKSksImNsb3NlIj09PW4mJmVbbl0odGhpcyl9KX0saS5faGFuZGxlRGlzbWlzcz1mdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24odCl7dCYmdC5wcmV2ZW50RGVmYXVsdCgpLGUuY2xvc2UodGhpcyl9fSxzKGksbnVsbCxbe2tleToiVkVSU0lPTiIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIjQuMy4xIn19XSksaX0oKTtnKGRvY3VtZW50KS5vbihoLkNMSUNLX0RBVEFfQVBJLCdbZGF0YS1kaXNtaXNzPSJhbGVydCJdJyxwLl9oYW5kbGVEaXNtaXNzKG5ldyBwKSksZy5mbltvXT1wLl9qUXVlcnlJbnRlcmZhY2UsZy5mbltvXS5Db25zdHJ1Y3Rvcj1wLGcuZm5bb10ubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBnLmZuW29dPWMscC5falF1ZXJ5SW50ZXJmYWNlfTt2YXIgdj0iYnV0dG9uIix5PSJicy5idXR0b24iLEU9Ii4iK3ksQz0iLmRhdGEtYXBpIixUPWcuZm5bdl0sUz0iYWN0aXZlIixiPSJidG4iLEk9ImZvY3VzIixEPSdbZGF0YS10b2dnbGVePSJidXR0b24iXScsdz0nW2RhdGEtdG9nZ2xlPSJidXR0b25zIl0nLEE9J2lucHV0Om5vdChbdHlwZT0iaGlkZGVuIl0pJyxOPSIuYWN0aXZlIixPPSIuYnRuIixrPXtDTElDS19EQVRBX0FQSToiY2xpY2siK0UrQyxGT0NVU19CTFVSX0RBVEFfQVBJOiJmb2N1cyIrRStDKyIgYmx1ciIrRStDfSxQPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gbih0KXt0aGlzLl9lbGVtZW50PXR9dmFyIHQ9bi5wcm90b3R5cGU7cmV0dXJuIHQudG9nZ2xlPWZ1bmN0aW9uKCl7dmFyIHQ9ITAsZT0hMCxuPWcodGhpcy5fZWxlbWVudCkuY2xvc2VzdCh3KVswXTtpZihuKXt2YXIgaT10aGlzLl9lbGVtZW50LnF1ZXJ5U2VsZWN0b3IoQSk7aWYoaSl7aWYoInJhZGlvIj09PWkudHlwZSlpZihpLmNoZWNrZWQmJnRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKFMpKXQ9ITE7ZWxzZXt2YXIgbz1uLnF1ZXJ5U2VsZWN0b3IoTik7byYmZyhvKS5yZW1vdmVDbGFzcyhTKX1pZih0KXtpZihpLmhhc0F0dHJpYnV0ZSgiZGlzYWJsZWQiKXx8bi5oYXNBdHRyaWJ1dGUoImRpc2FibGVkIil8fGkuY2xhc3NMaXN0LmNvbnRhaW5zKCJkaXNhYmxlZCIpfHxuLmNsYXNzTGlzdC5jb250YWlucygiZGlzYWJsZWQiKSlyZXR1cm47aS5jaGVja2VkPSF0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhTKSxnKGkpLnRyaWdnZXIoImNoYW5nZSIpfWkuZm9jdXMoKSxlPSExfX1lJiZ0aGlzLl9lbGVtZW50LnNldEF0dHJpYnV0ZSgiYXJpYS1wcmVzc2VkIiwhdGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoUykpLHQmJmcodGhpcy5fZWxlbWVudCkudG9nZ2xlQ2xhc3MoUyl9LHQuZGlzcG9zZT1mdW5jdGlvbigpe2cucmVtb3ZlRGF0YSh0aGlzLl9lbGVtZW50LHkpLHRoaXMuX2VsZW1lbnQ9bnVsbH0sbi5falF1ZXJ5SW50ZXJmYWNlPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgdD1nKHRoaXMpLmRhdGEoeSk7dHx8KHQ9bmV3IG4odGhpcyksZyh0aGlzKS5kYXRhKHksdCkpLCJ0b2dnbGUiPT09ZSYmdFtlXSgpfSl9LHMobixudWxsLFt7a2V5OiJWRVJTSU9OIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4iNC4zLjEifX1dKSxufSgpO2coZG9jdW1lbnQpLm9uKGsuQ0xJQ0tfREFUQV9BUEksRCxmdW5jdGlvbih0KXt0LnByZXZlbnREZWZhdWx0KCk7dmFyIGU9dC50YXJnZXQ7ZyhlKS5oYXNDbGFzcyhiKXx8KGU9ZyhlKS5jbG9zZXN0KE8pKSxQLl9qUXVlcnlJbnRlcmZhY2UuY2FsbChnKGUpLCJ0b2dnbGUiKX0pLm9uKGsuRk9DVVNfQkxVUl9EQVRBX0FQSSxELGZ1bmN0aW9uKHQpe3ZhciBlPWcodC50YXJnZXQpLmNsb3Nlc3QoTylbMF07ZyhlKS50b2dnbGVDbGFzcyhJLC9eZm9jdXMoaW4pPyQvLnRlc3QodC50eXBlKSl9KSxnLmZuW3ZdPVAuX2pRdWVyeUludGVyZmFjZSxnLmZuW3ZdLkNvbnN0cnVjdG9yPVAsZy5mblt2XS5ub0NvbmZsaWN0PWZ1bmN0aW9uKCl7cmV0dXJuIGcuZm5bdl09VCxQLl9qUXVlcnlJbnRlcmZhY2V9O3ZhciBMPSJjYXJvdXNlbCIsaj0iYnMuY2Fyb3VzZWwiLEg9Ii4iK2osUj0iLmRhdGEtYXBpIix4PWcuZm5bTF0sRj17aW50ZXJ2YWw6NWUzLGtleWJvYXJkOiEwLHNsaWRlOiExLHBhdXNlOiJob3ZlciIsd3JhcDohMCx0b3VjaDohMH0sVT17aW50ZXJ2YWw6IihudW1iZXJ8Ym9vbGVhbikiLGtleWJvYXJkOiJib29sZWFuIixzbGlkZToiKGJvb2xlYW58c3RyaW5nKSIscGF1c2U6IihzdHJpbmd8Ym9vbGVhbikiLHdyYXA6ImJvb2xlYW4iLHRvdWNoOiJib29sZWFuIn0sVz0ibmV4dCIscT0icHJldiIsTT0ibGVmdCIsSz0icmlnaHQiLFE9e1NMSURFOiJzbGlkZSIrSCxTTElEOiJzbGlkIitILEtFWURPV046ImtleWRvd24iK0gsTU9VU0VFTlRFUjoibW91c2VlbnRlciIrSCxNT1VTRUxFQVZFOiJtb3VzZWxlYXZlIitILFRPVUNIU1RBUlQ6InRvdWNoc3RhcnQiK0gsVE9VQ0hNT1ZFOiJ0b3VjaG1vdmUiK0gsVE9VQ0hFTkQ6InRvdWNoZW5kIitILFBPSU5URVJET1dOOiJwb2ludGVyZG93biIrSCxQT0lOVEVSVVA6InBvaW50ZXJ1cCIrSCxEUkFHX1NUQVJUOiJkcmFnc3RhcnQiK0gsTE9BRF9EQVRBX0FQSToibG9hZCIrSCtSLENMSUNLX0RBVEFfQVBJOiJjbGljayIrSCtSfSxCPSJjYXJvdXNlbCIsVj0iYWN0aXZlIixZPSJzbGlkZSIsej0iY2Fyb3VzZWwtaXRlbS1yaWdodCIsWD0iY2Fyb3VzZWwtaXRlbS1sZWZ0IiwkPSJjYXJvdXNlbC1pdGVtLW5leHQiLEc9ImNhcm91c2VsLWl0ZW0tcHJldiIsSj0icG9pbnRlci1ldmVudCIsWj0iLmFjdGl2ZSIsdHQ9Ii5hY3RpdmUuY2Fyb3VzZWwtaXRlbSIsZXQ9Ii5jYXJvdXNlbC1pdGVtIixudD0iLmNhcm91c2VsLWl0ZW0gaW1nIixpdD0iLmNhcm91c2VsLWl0ZW0tbmV4dCwgLmNhcm91c2VsLWl0ZW0tcHJldiIsb3Q9Ii5jYXJvdXNlbC1pbmRpY2F0b3JzIixydD0iW2RhdGEtc2xpZGVdLCBbZGF0YS1zbGlkZS10b10iLHN0PSdbZGF0YS1yaWRlPSJjYXJvdXNlbCJdJyxhdD17VE9VQ0g6InRvdWNoIixQRU46InBlbiJ9LGx0PWZ1bmN0aW9uKCl7ZnVuY3Rpb24gcih0LGUpe3RoaXMuX2l0ZW1zPW51bGwsdGhpcy5faW50ZXJ2YWw9bnVsbCx0aGlzLl9hY3RpdmVFbGVtZW50PW51bGwsdGhpcy5faXNQYXVzZWQ9ITEsdGhpcy5faXNTbGlkaW5nPSExLHRoaXMudG91Y2hUaW1lb3V0PW51bGwsdGhpcy50b3VjaFN0YXJ0WD0wLHRoaXMudG91Y2hEZWx0YVg9MCx0aGlzLl9jb25maWc9dGhpcy5fZ2V0Q29uZmlnKGUpLHRoaXMuX2VsZW1lbnQ9dCx0aGlzLl9pbmRpY2F0b3JzRWxlbWVudD10aGlzLl9lbGVtZW50LnF1ZXJ5U2VsZWN0b3Iob3QpLHRoaXMuX3RvdWNoU3VwcG9ydGVkPSJvbnRvdWNoc3RhcnQiaW4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50fHwwPG5hdmlnYXRvci5tYXhUb3VjaFBvaW50cyx0aGlzLl9wb2ludGVyRXZlbnQ9Qm9vbGVhbih3aW5kb3cuUG9pbnRlckV2ZW50fHx3aW5kb3cuTVNQb2ludGVyRXZlbnQpLHRoaXMuX2FkZEV2ZW50TGlzdGVuZXJzKCl9dmFyIHQ9ci5wcm90b3R5cGU7cmV0dXJuIHQubmV4dD1mdW5jdGlvbigpe3RoaXMuX2lzU2xpZGluZ3x8dGhpcy5fc2xpZGUoVyl9LHQubmV4dFdoZW5WaXNpYmxlPWZ1bmN0aW9uKCl7IWRvY3VtZW50LmhpZGRlbiYmZyh0aGlzLl9lbGVtZW50KS5pcygiOnZpc2libGUiKSYmImhpZGRlbiIhPT1nKHRoaXMuX2VsZW1lbnQpLmNzcygidmlzaWJpbGl0eSIpJiZ0aGlzLm5leHQoKX0sdC5wcmV2PWZ1bmN0aW9uKCl7dGhpcy5faXNTbGlkaW5nfHx0aGlzLl9zbGlkZShxKX0sdC5wYXVzZT1mdW5jdGlvbih0KXt0fHwodGhpcy5faXNQYXVzZWQ9ITApLHRoaXMuX2VsZW1lbnQucXVlcnlTZWxlY3RvcihpdCkmJihfLnRyaWdnZXJUcmFuc2l0aW9uRW5kKHRoaXMuX2VsZW1lbnQpLHRoaXMuY3ljbGUoITApKSxjbGVhckludGVydmFsKHRoaXMuX2ludGVydmFsKSx0aGlzLl9pbnRlcnZhbD1udWxsfSx0LmN5Y2xlPWZ1bmN0aW9uKHQpe3R8fCh0aGlzLl9pc1BhdXNlZD0hMSksdGhpcy5faW50ZXJ2YWwmJihjbGVhckludGVydmFsKHRoaXMuX2ludGVydmFsKSx0aGlzLl9pbnRlcnZhbD1udWxsKSx0aGlzLl9jb25maWcuaW50ZXJ2YWwmJiF0aGlzLl9pc1BhdXNlZCYmKHRoaXMuX2ludGVydmFsPXNldEludGVydmFsKChkb2N1bWVudC52aXNpYmlsaXR5U3RhdGU/dGhpcy5uZXh0V2hlblZpc2libGU6dGhpcy5uZXh0KS5iaW5kKHRoaXMpLHRoaXMuX2NvbmZpZy5pbnRlcnZhbCkpfSx0LnRvPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7dGhpcy5fYWN0aXZlRWxlbWVudD10aGlzLl9lbGVtZW50LnF1ZXJ5U2VsZWN0b3IodHQpO3ZhciBuPXRoaXMuX2dldEl0ZW1JbmRleCh0aGlzLl9hY3RpdmVFbGVtZW50KTtpZighKHQ+dGhpcy5faXRlbXMubGVuZ3RoLTF8fHQ8MCkpaWYodGhpcy5faXNTbGlkaW5nKWcodGhpcy5fZWxlbWVudCkub25lKFEuU0xJRCxmdW5jdGlvbigpe3JldHVybiBlLnRvKHQpfSk7ZWxzZXtpZihuPT09dClyZXR1cm4gdGhpcy5wYXVzZSgpLHZvaWQgdGhpcy5jeWNsZSgpO3ZhciBpPW48dD9XOnE7dGhpcy5fc2xpZGUoaSx0aGlzLl9pdGVtc1t0XSl9fSx0LmRpc3Bvc2U9ZnVuY3Rpb24oKXtnKHRoaXMuX2VsZW1lbnQpLm9mZihIKSxnLnJlbW92ZURhdGEodGhpcy5fZWxlbWVudCxqKSx0aGlzLl9pdGVtcz1udWxsLHRoaXMuX2NvbmZpZz1udWxsLHRoaXMuX2VsZW1lbnQ9bnVsbCx0aGlzLl9pbnRlcnZhbD1udWxsLHRoaXMuX2lzUGF1c2VkPW51bGwsdGhpcy5faXNTbGlkaW5nPW51bGwsdGhpcy5fYWN0aXZlRWxlbWVudD1udWxsLHRoaXMuX2luZGljYXRvcnNFbGVtZW50PW51bGx9LHQuX2dldENvbmZpZz1mdW5jdGlvbih0KXtyZXR1cm4gdD1sKHt9LEYsdCksXy50eXBlQ2hlY2tDb25maWcoTCx0LFUpLHR9LHQuX2hhbmRsZVN3aXBlPWZ1bmN0aW9uKCl7dmFyIHQ9TWF0aC5hYnModGhpcy50b3VjaERlbHRhWCk7aWYoISh0PD00MCkpe3ZhciBlPXQvdGhpcy50b3VjaERlbHRhWDswPGUmJnRoaXMucHJldigpLGU8MCYmdGhpcy5uZXh0KCl9fSx0Ll9hZGRFdmVudExpc3RlbmVycz1mdW5jdGlvbigpe3ZhciBlPXRoaXM7dGhpcy5fY29uZmlnLmtleWJvYXJkJiZnKHRoaXMuX2VsZW1lbnQpLm9uKFEuS0VZRE9XTixmdW5jdGlvbih0KXtyZXR1cm4gZS5fa2V5ZG93bih0KX0pLCJob3ZlciI9PT10aGlzLl9jb25maWcucGF1c2UmJmcodGhpcy5fZWxlbWVudCkub24oUS5NT1VTRUVOVEVSLGZ1bmN0aW9uKHQpe3JldHVybiBlLnBhdXNlKHQpfSkub24oUS5NT1VTRUxFQVZFLGZ1bmN0aW9uKHQpe3JldHVybiBlLmN5Y2xlKHQpfSksdGhpcy5fY29uZmlnLnRvdWNoJiZ0aGlzLl9hZGRUb3VjaEV2ZW50TGlzdGVuZXJzKCl9LHQuX2FkZFRvdWNoRXZlbnRMaXN0ZW5lcnM9ZnVuY3Rpb24oKXt2YXIgbj10aGlzO2lmKHRoaXMuX3RvdWNoU3VwcG9ydGVkKXt2YXIgZT1mdW5jdGlvbih0KXtuLl9wb2ludGVyRXZlbnQmJmF0W3Qub3JpZ2luYWxFdmVudC5wb2ludGVyVHlwZS50b1VwcGVyQ2FzZSgpXT9uLnRvdWNoU3RhcnRYPXQub3JpZ2luYWxFdmVudC5jbGllbnRYOm4uX3BvaW50ZXJFdmVudHx8KG4udG91Y2hTdGFydFg9dC5vcmlnaW5hbEV2ZW50LnRvdWNoZXNbMF0uY2xpZW50WCl9LGk9ZnVuY3Rpb24odCl7bi5fcG9pbnRlckV2ZW50JiZhdFt0Lm9yaWdpbmFsRXZlbnQucG9pbnRlclR5cGUudG9VcHBlckNhc2UoKV0mJihuLnRvdWNoRGVsdGFYPXQub3JpZ2luYWxFdmVudC5jbGllbnRYLW4udG91Y2hTdGFydFgpLG4uX2hhbmRsZVN3aXBlKCksImhvdmVyIj09PW4uX2NvbmZpZy5wYXVzZSYmKG4ucGF1c2UoKSxuLnRvdWNoVGltZW91dCYmY2xlYXJUaW1lb3V0KG4udG91Y2hUaW1lb3V0KSxuLnRvdWNoVGltZW91dD1zZXRUaW1lb3V0KGZ1bmN0aW9uKHQpe3JldHVybiBuLmN5Y2xlKHQpfSw1MDArbi5fY29uZmlnLmludGVydmFsKSl9O2codGhpcy5fZWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKG50KSkub24oUS5EUkFHX1NUQVJULGZ1bmN0aW9uKHQpe3JldHVybiB0LnByZXZlbnREZWZhdWx0KCl9KSx0aGlzLl9wb2ludGVyRXZlbnQ/KGcodGhpcy5fZWxlbWVudCkub24oUS5QT0lOVEVSRE9XTixmdW5jdGlvbih0KXtyZXR1cm4gZSh0KX0pLGcodGhpcy5fZWxlbWVudCkub24oUS5QT0lOVEVSVVAsZnVuY3Rpb24odCl7cmV0dXJuIGkodCl9KSx0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoSikpOihnKHRoaXMuX2VsZW1lbnQpLm9uKFEuVE9VQ0hTVEFSVCxmdW5jdGlvbih0KXtyZXR1cm4gZSh0KX0pLGcodGhpcy5fZWxlbWVudCkub24oUS5UT1VDSE1PVkUsZnVuY3Rpb24odCl7dmFyIGU7KGU9dCkub3JpZ2luYWxFdmVudC50b3VjaGVzJiYxPGUub3JpZ2luYWxFdmVudC50b3VjaGVzLmxlbmd0aD9uLnRvdWNoRGVsdGFYPTA6bi50b3VjaERlbHRhWD1lLm9yaWdpbmFsRXZlbnQudG91Y2hlc1swXS5jbGllbnRYLW4udG91Y2hTdGFydFh9KSxnKHRoaXMuX2VsZW1lbnQpLm9uKFEuVE9VQ0hFTkQsZnVuY3Rpb24odCl7cmV0dXJuIGkodCl9KSl9fSx0Ll9rZXlkb3duPWZ1bmN0aW9uKHQpe2lmKCEvaW5wdXR8dGV4dGFyZWEvaS50ZXN0KHQudGFyZ2V0LnRhZ05hbWUpKXN3aXRjaCh0LndoaWNoKXtjYXNlIDM3OnQucHJldmVudERlZmF1bHQoKSx0aGlzLnByZXYoKTticmVhaztjYXNlIDM5OnQucHJldmVudERlZmF1bHQoKSx0aGlzLm5leHQoKX19LHQuX2dldEl0ZW1JbmRleD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5faXRlbXM9dCYmdC5wYXJlbnROb2RlP1tdLnNsaWNlLmNhbGwodC5wYXJlbnROb2RlLnF1ZXJ5U2VsZWN0b3JBbGwoZXQpKTpbXSx0aGlzLl9pdGVtcy5pbmRleE9mKHQpfSx0Ll9nZXRJdGVtQnlEaXJlY3Rpb249ZnVuY3Rpb24odCxlKXt2YXIgbj10PT09VyxpPXQ9PT1xLG89dGhpcy5fZ2V0SXRlbUluZGV4KGUpLHI9dGhpcy5faXRlbXMubGVuZ3RoLTE7aWYoKGkmJjA9PT1vfHxuJiZvPT09cikmJiF0aGlzLl9jb25maWcud3JhcClyZXR1cm4gZTt2YXIgcz0obysodD09PXE/LTE6MSkpJXRoaXMuX2l0ZW1zLmxlbmd0aDtyZXR1cm4tMT09PXM/dGhpcy5faXRlbXNbdGhpcy5faXRlbXMubGVuZ3RoLTFdOnRoaXMuX2l0ZW1zW3NdfSx0Ll90cmlnZ2VyU2xpZGVFdmVudD1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXMuX2dldEl0ZW1JbmRleCh0KSxpPXRoaXMuX2dldEl0ZW1JbmRleCh0aGlzLl9lbGVtZW50LnF1ZXJ5U2VsZWN0b3IodHQpKSxvPWcuRXZlbnQoUS5TTElERSx7cmVsYXRlZFRhcmdldDp0LGRpcmVjdGlvbjplLGZyb206aSx0bzpufSk7cmV0dXJuIGcodGhpcy5fZWxlbWVudCkudHJpZ2dlcihvKSxvfSx0Ll9zZXRBY3RpdmVJbmRpY2F0b3JFbGVtZW50PWZ1bmN0aW9uKHQpe2lmKHRoaXMuX2luZGljYXRvcnNFbGVtZW50KXt2YXIgZT1bXS5zbGljZS5jYWxsKHRoaXMuX2luZGljYXRvcnNFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoWikpO2coZSkucmVtb3ZlQ2xhc3MoVik7dmFyIG49dGhpcy5faW5kaWNhdG9yc0VsZW1lbnQuY2hpbGRyZW5bdGhpcy5fZ2V0SXRlbUluZGV4KHQpXTtuJiZnKG4pLmFkZENsYXNzKFYpfX0sdC5fc2xpZGU9ZnVuY3Rpb24odCxlKXt2YXIgbixpLG8scj10aGlzLHM9dGhpcy5fZWxlbWVudC5xdWVyeVNlbGVjdG9yKHR0KSxhPXRoaXMuX2dldEl0ZW1JbmRleChzKSxsPWV8fHMmJnRoaXMuX2dldEl0ZW1CeURpcmVjdGlvbih0LHMpLGM9dGhpcy5fZ2V0SXRlbUluZGV4KGwpLGg9Qm9vbGVhbih0aGlzLl9pbnRlcnZhbCk7aWYobz10PT09Vz8obj1YLGk9JCxNKToobj16LGk9RyxLKSxsJiZnKGwpLmhhc0NsYXNzKFYpKXRoaXMuX2lzU2xpZGluZz0hMTtlbHNlIGlmKCF0aGlzLl90cmlnZ2VyU2xpZGVFdmVudChsLG8pLmlzRGVmYXVsdFByZXZlbnRlZCgpJiZzJiZsKXt0aGlzLl9pc1NsaWRpbmc9ITAsaCYmdGhpcy5wYXVzZSgpLHRoaXMuX3NldEFjdGl2ZUluZGljYXRvckVsZW1lbnQobCk7dmFyIHU9Zy5FdmVudChRLlNMSUQse3JlbGF0ZWRUYXJnZXQ6bCxkaXJlY3Rpb246byxmcm9tOmEsdG86Y30pO2lmKGcodGhpcy5fZWxlbWVudCkuaGFzQ2xhc3MoWSkpe2cobCkuYWRkQ2xhc3MoaSksXy5yZWZsb3cobCksZyhzKS5hZGRDbGFzcyhuKSxnKGwpLmFkZENsYXNzKG4pO3ZhciBmPXBhcnNlSW50KGwuZ2V0QXR0cmlidXRlKCJkYXRhLWludGVydmFsIiksMTApO3RoaXMuX2NvbmZpZy5pbnRlcnZhbD1mPyh0aGlzLl9jb25maWcuZGVmYXVsdEludGVydmFsPXRoaXMuX2NvbmZpZy5kZWZhdWx0SW50ZXJ2YWx8fHRoaXMuX2NvbmZpZy5pbnRlcnZhbCxmKTp0aGlzLl9jb25maWcuZGVmYXVsdEludGVydmFsfHx0aGlzLl9jb25maWcuaW50ZXJ2YWw7dmFyIGQ9Xy5nZXRUcmFuc2l0aW9uRHVyYXRpb25Gcm9tRWxlbWVudChzKTtnKHMpLm9uZShfLlRSQU5TSVRJT05fRU5ELGZ1bmN0aW9uKCl7ZyhsKS5yZW1vdmVDbGFzcyhuKyIgIitpKS5hZGRDbGFzcyhWKSxnKHMpLnJlbW92ZUNsYXNzKFYrIiAiK2krIiAiK24pLHIuX2lzU2xpZGluZz0hMSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cmV0dXJuIGcoci5fZWxlbWVudCkudHJpZ2dlcih1KX0sMCl9KS5lbXVsYXRlVHJhbnNpdGlvbkVuZChkKX1lbHNlIGcocykucmVtb3ZlQ2xhc3MoViksZyhsKS5hZGRDbGFzcyhWKSx0aGlzLl9pc1NsaWRpbmc9ITEsZyh0aGlzLl9lbGVtZW50KS50cmlnZ2VyKHUpO2gmJnRoaXMuY3ljbGUoKX19LHIuX2pRdWVyeUludGVyZmFjZT1mdW5jdGlvbihpKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIHQ9Zyh0aGlzKS5kYXRhKGopLGU9bCh7fSxGLGcodGhpcykuZGF0YSgpKTsib2JqZWN0Ij09dHlwZW9mIGkmJihlPWwoe30sZSxpKSk7dmFyIG49InN0cmluZyI9PXR5cGVvZiBpP2k6ZS5zbGlkZTtpZih0fHwodD1uZXcgcih0aGlzLGUpLGcodGhpcykuZGF0YShqLHQpKSwibnVtYmVyIj09dHlwZW9mIGkpdC50byhpKTtlbHNlIGlmKCJzdHJpbmciPT10eXBlb2Ygbil7aWYoInVuZGVmaW5lZCI9PXR5cGVvZiB0W25dKXRocm93IG5ldyBUeXBlRXJyb3IoJ05vIG1ldGhvZCBuYW1lZCAiJytuKyciJyk7dFtuXSgpfWVsc2UgZS5pbnRlcnZhbCYmZS5yaWRlJiYodC5wYXVzZSgpLHQuY3ljbGUoKSl9KX0sci5fZGF0YUFwaUNsaWNrSGFuZGxlcj1mdW5jdGlvbih0KXt2YXIgZT1fLmdldFNlbGVjdG9yRnJvbUVsZW1lbnQodGhpcyk7aWYoZSl7dmFyIG49ZyhlKVswXTtpZihuJiZnKG4pLmhhc0NsYXNzKEIpKXt2YXIgaT1sKHt9LGcobikuZGF0YSgpLGcodGhpcykuZGF0YSgpKSxvPXRoaXMuZ2V0QXR0cmlidXRlKCJkYXRhLXNsaWRlLXRvIik7byYmKGkuaW50ZXJ2YWw9ITEpLHIuX2pRdWVyeUludGVyZmFjZS5jYWxsKGcobiksaSksbyYmZyhuKS5kYXRhKGopLnRvKG8pLHQucHJldmVudERlZmF1bHQoKX19fSxzKHIsbnVsbCxbe2tleToiVkVSU0lPTiIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIjQuMy4xIn19LHtrZXk6IkRlZmF1bHQiLGdldDpmdW5jdGlvbigpe3JldHVybiBGfX1dKSxyfSgpO2coZG9jdW1lbnQpLm9uKFEuQ0xJQ0tfREFUQV9BUEkscnQsbHQuX2RhdGFBcGlDbGlja0hhbmRsZXIpLGcod2luZG93KS5vbihRLkxPQURfREFUQV9BUEksZnVuY3Rpb24oKXtmb3IodmFyIHQ9W10uc2xpY2UuY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHN0KSksZT0wLG49dC5sZW5ndGg7ZTxuO2UrKyl7dmFyIGk9Zyh0W2VdKTtsdC5falF1ZXJ5SW50ZXJmYWNlLmNhbGwoaSxpLmRhdGEoKSl9fSksZy5mbltMXT1sdC5falF1ZXJ5SW50ZXJmYWNlLGcuZm5bTF0uQ29uc3RydWN0b3I9bHQsZy5mbltMXS5ub0NvbmZsaWN0PWZ1bmN0aW9uKCl7cmV0dXJuIGcuZm5bTF09eCxsdC5falF1ZXJ5SW50ZXJmYWNlfTt2YXIgY3Q9ImNvbGxhcHNlIixodD0iYnMuY29sbGFwc2UiLHV0PSIuIitodCxmdD1nLmZuW2N0XSxkdD17dG9nZ2xlOiEwLHBhcmVudDoiIn0sZ3Q9e3RvZ2dsZToiYm9vbGVhbiIscGFyZW50OiIoc3RyaW5nfGVsZW1lbnQpIn0sX3Q9e1NIT1c6InNob3ciK3V0LFNIT1dOOiJzaG93biIrdXQsSElERToiaGlkZSIrdXQsSElEREVOOiJoaWRkZW4iK3V0LENMSUNLX0RBVEFfQVBJOiJjbGljayIrdXQrIi5kYXRhLWFwaSJ9LG10PSJzaG93IixwdD0iY29sbGFwc2UiLHZ0PSJjb2xsYXBzaW5nIix5dD0iY29sbGFwc2VkIixFdD0id2lkdGgiLEN0PSJoZWlnaHQiLFR0PSIuc2hvdywgLmNvbGxhcHNpbmciLFN0PSdbZGF0YS10b2dnbGU9ImNvbGxhcHNlIl0nLGJ0PWZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShlLHQpe3RoaXMuX2lzVHJhbnNpdGlvbmluZz0hMSx0aGlzLl9lbGVtZW50PWUsdGhpcy5fY29uZmlnPXRoaXMuX2dldENvbmZpZyh0KSx0aGlzLl90cmlnZ2VyQXJyYXk9W10uc2xpY2UuY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdbZGF0YS10b2dnbGU9ImNvbGxhcHNlIl1baHJlZj0iIycrZS5pZCsnIl0sW2RhdGEtdG9nZ2xlPSJjb2xsYXBzZSJdW2RhdGEtdGFyZ2V0PSIjJytlLmlkKyciXScpKTtmb3IodmFyIG49W10uc2xpY2UuY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKFN0KSksaT0wLG89bi5sZW5ndGg7aTxvO2krKyl7dmFyIHI9bltpXSxzPV8uZ2V0U2VsZWN0b3JGcm9tRWxlbWVudChyKSxhPVtdLnNsaWNlLmNhbGwoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChzKSkuZmlsdGVyKGZ1bmN0aW9uKHQpe3JldHVybiB0PT09ZX0pO251bGwhPT1zJiYwPGEubGVuZ3RoJiYodGhpcy5fc2VsZWN0b3I9cyx0aGlzLl90cmlnZ2VyQXJyYXkucHVzaChyKSl9dGhpcy5fcGFyZW50PXRoaXMuX2NvbmZpZy5wYXJlbnQ/dGhpcy5fZ2V0UGFyZW50KCk6bnVsbCx0aGlzLl9jb25maWcucGFyZW50fHx0aGlzLl9hZGRBcmlhQW5kQ29sbGFwc2VkQ2xhc3ModGhpcy5fZWxlbWVudCx0aGlzLl90cmlnZ2VyQXJyYXkpLHRoaXMuX2NvbmZpZy50b2dnbGUmJnRoaXMudG9nZ2xlKCl9dmFyIHQ9YS5wcm90b3R5cGU7cmV0dXJuIHQudG9nZ2xlPWZ1bmN0aW9uKCl7Zyh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhtdCk/dGhpcy5oaWRlKCk6dGhpcy5zaG93KCl9LHQuc2hvdz1mdW5jdGlvbigpe3ZhciB0LGUsbj10aGlzO2lmKCF0aGlzLl9pc1RyYW5zaXRpb25pbmcmJiFnKHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKG10KSYmKHRoaXMuX3BhcmVudCYmMD09PSh0PVtdLnNsaWNlLmNhbGwodGhpcy5fcGFyZW50LnF1ZXJ5U2VsZWN0b3JBbGwoVHQpKS5maWx0ZXIoZnVuY3Rpb24odCl7cmV0dXJuInN0cmluZyI9PXR5cGVvZiBuLl9jb25maWcucGFyZW50P3QuZ2V0QXR0cmlidXRlKCJkYXRhLXBhcmVudCIpPT09bi5fY29uZmlnLnBhcmVudDp0LmNsYXNzTGlzdC5jb250YWlucyhwdCl9KSkubGVuZ3RoJiYodD1udWxsKSwhKHQmJihlPWcodCkubm90KHRoaXMuX3NlbGVjdG9yKS5kYXRhKGh0KSkmJmUuX2lzVHJhbnNpdGlvbmluZykpKXt2YXIgaT1nLkV2ZW50KF90LlNIT1cpO2lmKGcodGhpcy5fZWxlbWVudCkudHJpZ2dlcihpKSwhaS5pc0RlZmF1bHRQcmV2ZW50ZWQoKSl7dCYmKGEuX2pRdWVyeUludGVyZmFjZS5jYWxsKGcodCkubm90KHRoaXMuX3NlbGVjdG9yKSwiaGlkZSIpLGV8fGcodCkuZGF0YShodCxudWxsKSk7dmFyIG89dGhpcy5fZ2V0RGltZW5zaW9uKCk7Zyh0aGlzLl9lbGVtZW50KS5yZW1vdmVDbGFzcyhwdCkuYWRkQ2xhc3ModnQpLHRoaXMuX2VsZW1lbnQuc3R5bGVbb109MCx0aGlzLl90cmlnZ2VyQXJyYXkubGVuZ3RoJiZnKHRoaXMuX3RyaWdnZXJBcnJheSkucmVtb3ZlQ2xhc3MoeXQpLmF0dHIoImFyaWEtZXhwYW5kZWQiLCEwKSx0aGlzLnNldFRyYW5zaXRpb25pbmcoITApO3ZhciByPSJzY3JvbGwiKyhvWzBdLnRvVXBwZXJDYXNlKCkrby5zbGljZSgxKSkscz1fLmdldFRyYW5zaXRpb25EdXJhdGlvbkZyb21FbGVtZW50KHRoaXMuX2VsZW1lbnQpO2codGhpcy5fZWxlbWVudCkub25lKF8uVFJBTlNJVElPTl9FTkQsZnVuY3Rpb24oKXtnKG4uX2VsZW1lbnQpLnJlbW92ZUNsYXNzKHZ0KS5hZGRDbGFzcyhwdCkuYWRkQ2xhc3MobXQpLG4uX2VsZW1lbnQuc3R5bGVbb109IiIsbi5zZXRUcmFuc2l0aW9uaW5nKCExKSxnKG4uX2VsZW1lbnQpLnRyaWdnZXIoX3QuU0hPV04pfSkuZW11bGF0ZVRyYW5zaXRpb25FbmQocyksdGhpcy5fZWxlbWVudC5zdHlsZVtvXT10aGlzLl9lbGVtZW50W3JdKyJweCJ9fX0sdC5oaWRlPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcztpZighdGhpcy5faXNUcmFuc2l0aW9uaW5nJiZnKHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKG10KSl7dmFyIGU9Zy5FdmVudChfdC5ISURFKTtpZihnKHRoaXMuX2VsZW1lbnQpLnRyaWdnZXIoZSksIWUuaXNEZWZhdWx0UHJldmVudGVkKCkpe3ZhciBuPXRoaXMuX2dldERpbWVuc2lvbigpO3RoaXMuX2VsZW1lbnQuc3R5bGVbbl09dGhpcy5fZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKVtuXSsicHgiLF8ucmVmbG93KHRoaXMuX2VsZW1lbnQpLGcodGhpcy5fZWxlbWVudCkuYWRkQ2xhc3ModnQpLnJlbW92ZUNsYXNzKHB0KS5yZW1vdmVDbGFzcyhtdCk7dmFyIGk9dGhpcy5fdHJpZ2dlckFycmF5Lmxlbmd0aDtpZigwPGkpZm9yKHZhciBvPTA7bzxpO28rKyl7dmFyIHI9dGhpcy5fdHJpZ2dlckFycmF5W29dLHM9Xy5nZXRTZWxlY3RvckZyb21FbGVtZW50KHIpO2lmKG51bGwhPT1zKWcoW10uc2xpY2UuY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHMpKSkuaGFzQ2xhc3MobXQpfHxnKHIpLmFkZENsYXNzKHl0KS5hdHRyKCJhcmlhLWV4cGFuZGVkIiwhMSl9dGhpcy5zZXRUcmFuc2l0aW9uaW5nKCEwKTt0aGlzLl9lbGVtZW50LnN0eWxlW25dPSIiO3ZhciBhPV8uZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7Zyh0aGlzLl9lbGVtZW50KS5vbmUoXy5UUkFOU0lUSU9OX0VORCxmdW5jdGlvbigpe3Quc2V0VHJhbnNpdGlvbmluZyghMSksZyh0Ll9lbGVtZW50KS5yZW1vdmVDbGFzcyh2dCkuYWRkQ2xhc3MocHQpLnRyaWdnZXIoX3QuSElEREVOKX0pLmVtdWxhdGVUcmFuc2l0aW9uRW5kKGEpfX19LHQuc2V0VHJhbnNpdGlvbmluZz1mdW5jdGlvbih0KXt0aGlzLl9pc1RyYW5zaXRpb25pbmc9dH0sdC5kaXNwb3NlPWZ1bmN0aW9uKCl7Zy5yZW1vdmVEYXRhKHRoaXMuX2VsZW1lbnQsaHQpLHRoaXMuX2NvbmZpZz1udWxsLHRoaXMuX3BhcmVudD1udWxsLHRoaXMuX2VsZW1lbnQ9bnVsbCx0aGlzLl90cmlnZ2VyQXJyYXk9bnVsbCx0aGlzLl9pc1RyYW5zaXRpb25pbmc9bnVsbH0sdC5fZ2V0Q29uZmlnPWZ1bmN0aW9uKHQpe3JldHVybih0PWwoe30sZHQsdCkpLnRvZ2dsZT1Cb29sZWFuKHQudG9nZ2xlKSxfLnR5cGVDaGVja0NvbmZpZyhjdCx0LGd0KSx0fSx0Ll9nZXREaW1lbnNpb249ZnVuY3Rpb24oKXtyZXR1cm4gZyh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhFdCk/RXQ6Q3R9LHQuX2dldFBhcmVudD1mdW5jdGlvbigpe3ZhciB0LG49dGhpcztfLmlzRWxlbWVudCh0aGlzLl9jb25maWcucGFyZW50KT8odD10aGlzLl9jb25maWcucGFyZW50LCJ1bmRlZmluZWQiIT10eXBlb2YgdGhpcy5fY29uZmlnLnBhcmVudC5qcXVlcnkmJih0PXRoaXMuX2NvbmZpZy5wYXJlbnRbMF0pKTp0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IodGhpcy5fY29uZmlnLnBhcmVudCk7dmFyIGU9J1tkYXRhLXRvZ2dsZT0iY29sbGFwc2UiXVtkYXRhLXBhcmVudD0iJyt0aGlzLl9jb25maWcucGFyZW50KyciXScsaT1bXS5zbGljZS5jYWxsKHQucXVlcnlTZWxlY3RvckFsbChlKSk7cmV0dXJuIGcoaSkuZWFjaChmdW5jdGlvbih0LGUpe24uX2FkZEFyaWFBbmRDb2xsYXBzZWRDbGFzcyhhLl9nZXRUYXJnZXRGcm9tRWxlbWVudChlKSxbZV0pfSksdH0sdC5fYWRkQXJpYUFuZENvbGxhcHNlZENsYXNzPWZ1bmN0aW9uKHQsZSl7dmFyIG49Zyh0KS5oYXNDbGFzcyhtdCk7ZS5sZW5ndGgmJmcoZSkudG9nZ2xlQ2xhc3MoeXQsIW4pLmF0dHIoImFyaWEtZXhwYW5kZWQiLG4pfSxhLl9nZXRUYXJnZXRGcm9tRWxlbWVudD1mdW5jdGlvbih0KXt2YXIgZT1fLmdldFNlbGVjdG9yRnJvbUVsZW1lbnQodCk7cmV0dXJuIGU/ZG9jdW1lbnQucXVlcnlTZWxlY3RvcihlKTpudWxsfSxhLl9qUXVlcnlJbnRlcmZhY2U9ZnVuY3Rpb24oaSl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciB0PWcodGhpcyksZT10LmRhdGEoaHQpLG49bCh7fSxkdCx0LmRhdGEoKSwib2JqZWN0Ij09dHlwZW9mIGkmJmk/aTp7fSk7aWYoIWUmJm4udG9nZ2xlJiYvc2hvd3xoaWRlLy50ZXN0KGkpJiYobi50b2dnbGU9ITEpLGV8fChlPW5ldyBhKHRoaXMsbiksdC5kYXRhKGh0LGUpKSwic3RyaW5nIj09dHlwZW9mIGkpe2lmKCJ1bmRlZmluZWQiPT10eXBlb2YgZVtpXSl0aHJvdyBuZXcgVHlwZUVycm9yKCdObyBtZXRob2QgbmFtZWQgIicraSsnIicpO2VbaV0oKX19KX0scyhhLG51bGwsW3trZXk6IlZFUlNJT04iLGdldDpmdW5jdGlvbigpe3JldHVybiI0LjMuMSJ9fSx7a2V5OiJEZWZhdWx0IixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gZHR9fV0pLGF9KCk7Zyhkb2N1bWVudCkub24oX3QuQ0xJQ0tfREFUQV9BUEksU3QsZnVuY3Rpb24odCl7IkEiPT09dC5jdXJyZW50VGFyZ2V0LnRhZ05hbWUmJnQucHJldmVudERlZmF1bHQoKTt2YXIgbj1nKHRoaXMpLGU9Xy5nZXRTZWxlY3RvckZyb21FbGVtZW50KHRoaXMpLGk9W10uc2xpY2UuY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKGUpKTtnKGkpLmVhY2goZnVuY3Rpb24oKXt2YXIgdD1nKHRoaXMpLGU9dC5kYXRhKGh0KT8idG9nZ2xlIjpuLmRhdGEoKTtidC5falF1ZXJ5SW50ZXJmYWNlLmNhbGwodCxlKX0pfSksZy5mbltjdF09YnQuX2pRdWVyeUludGVyZmFjZSxnLmZuW2N0XS5Db25zdHJ1Y3Rvcj1idCxnLmZuW2N0XS5ub0NvbmZsaWN0PWZ1bmN0aW9uKCl7cmV0dXJuIGcuZm5bY3RdPWZ0LGJ0Ll9qUXVlcnlJbnRlcmZhY2V9O3ZhciBJdD0iZHJvcGRvd24iLER0PSJicy5kcm9wZG93biIsd3Q9Ii4iK0R0LEF0PSIuZGF0YS1hcGkiLE50PWcuZm5bSXRdLE90PW5ldyBSZWdFeHAoIjM4fDQwfDI3Iiksa3Q9e0hJREU6ImhpZGUiK3d0LEhJRERFTjoiaGlkZGVuIit3dCxTSE9XOiJzaG93Iit3dCxTSE9XTjoic2hvd24iK3d0LENMSUNLOiJjbGljayIrd3QsQ0xJQ0tfREFUQV9BUEk6ImNsaWNrIit3dCtBdCxLRVlET1dOX0RBVEFfQVBJOiJrZXlkb3duIit3dCtBdCxLRVlVUF9EQVRBX0FQSToia2V5dXAiK3d0K0F0fSxQdD0iZGlzYWJsZWQiLEx0PSJzaG93IixqdD0iZHJvcHVwIixIdD0iZHJvcHJpZ2h0IixSdD0iZHJvcGxlZnQiLHh0PSJkcm9wZG93bi1tZW51LXJpZ2h0IixGdD0icG9zaXRpb24tc3RhdGljIixVdD0nW2RhdGEtdG9nZ2xlPSJkcm9wZG93biJdJyxXdD0iLmRyb3Bkb3duIGZvcm0iLHF0PSIuZHJvcGRvd24tbWVudSIsTXQ9Ii5uYXZiYXItbmF2IixLdD0iLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW06bm90KC5kaXNhYmxlZCk6bm90KDpkaXNhYmxlZCkiLFF0PSJ0b3Atc3RhcnQiLEJ0PSJ0b3AtZW5kIixWdD0iYm90dG9tLXN0YXJ0IixZdD0iYm90dG9tLWVuZCIsenQ9InJpZ2h0LXN0YXJ0IixYdD0ibGVmdC1zdGFydCIsJHQ9e29mZnNldDowLGZsaXA6ITAsYm91bmRhcnk6InNjcm9sbFBhcmVudCIscmVmZXJlbmNlOiJ0b2dnbGUiLGRpc3BsYXk6ImR5bmFtaWMifSxHdD17b2Zmc2V0OiIobnVtYmVyfHN0cmluZ3xmdW5jdGlvbikiLGZsaXA6ImJvb2xlYW4iLGJvdW5kYXJ5OiIoc3RyaW5nfGVsZW1lbnQpIixyZWZlcmVuY2U6IihzdHJpbmd8ZWxlbWVudCkiLGRpc3BsYXk6InN0cmluZyJ9LEp0PWZ1bmN0aW9uKCl7ZnVuY3Rpb24gYyh0LGUpe3RoaXMuX2VsZW1lbnQ9dCx0aGlzLl9wb3BwZXI9bnVsbCx0aGlzLl9jb25maWc9dGhpcy5fZ2V0Q29uZmlnKGUpLHRoaXMuX21lbnU9dGhpcy5fZ2V0TWVudUVsZW1lbnQoKSx0aGlzLl9pbk5hdmJhcj10aGlzLl9kZXRlY3ROYXZiYXIoKSx0aGlzLl9hZGRFdmVudExpc3RlbmVycygpfXZhciB0PWMucHJvdG90eXBlO3JldHVybiB0LnRvZ2dsZT1mdW5jdGlvbigpe2lmKCF0aGlzLl9lbGVtZW50LmRpc2FibGVkJiYhZyh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhQdCkpe3ZhciB0PWMuX2dldFBhcmVudEZyb21FbGVtZW50KHRoaXMuX2VsZW1lbnQpLGU9Zyh0aGlzLl9tZW51KS5oYXNDbGFzcyhMdCk7aWYoYy5fY2xlYXJNZW51cygpLCFlKXt2YXIgbj17cmVsYXRlZFRhcmdldDp0aGlzLl9lbGVtZW50fSxpPWcuRXZlbnQoa3QuU0hPVyxuKTtpZihnKHQpLnRyaWdnZXIoaSksIWkuaXNEZWZhdWx0UHJldmVudGVkKCkpe2lmKCF0aGlzLl9pbk5hdmJhcil7aWYoInVuZGVmaW5lZCI9PXR5cGVvZiB1KXRocm93IG5ldyBUeXBlRXJyb3IoIkJvb3RzdHJhcCdzIGRyb3Bkb3ducyByZXF1aXJlIFBvcHBlci5qcyAoaHR0cHM6Ly9wb3BwZXIuanMub3JnLykiKTt2YXIgbz10aGlzLl9lbGVtZW50OyJwYXJlbnQiPT09dGhpcy5fY29uZmlnLnJlZmVyZW5jZT9vPXQ6Xy5pc0VsZW1lbnQodGhpcy5fY29uZmlnLnJlZmVyZW5jZSkmJihvPXRoaXMuX2NvbmZpZy5yZWZlcmVuY2UsInVuZGVmaW5lZCIhPXR5cGVvZiB0aGlzLl9jb25maWcucmVmZXJlbmNlLmpxdWVyeSYmKG89dGhpcy5fY29uZmlnLnJlZmVyZW5jZVswXSkpLCJzY3JvbGxQYXJlbnQiIT09dGhpcy5fY29uZmlnLmJvdW5kYXJ5JiZnKHQpLmFkZENsYXNzKEZ0KSx0aGlzLl9wb3BwZXI9bmV3IHUobyx0aGlzLl9tZW51LHRoaXMuX2dldFBvcHBlckNvbmZpZygpKX0ib250b3VjaHN0YXJ0ImluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCYmMD09PWcodCkuY2xvc2VzdChNdCkubGVuZ3RoJiZnKGRvY3VtZW50LmJvZHkpLmNoaWxkcmVuKCkub24oIm1vdXNlb3ZlciIsbnVsbCxnLm5vb3ApLHRoaXMuX2VsZW1lbnQuZm9jdXMoKSx0aGlzLl9lbGVtZW50LnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsITApLGcodGhpcy5fbWVudSkudG9nZ2xlQ2xhc3MoTHQpLGcodCkudG9nZ2xlQ2xhc3MoTHQpLnRyaWdnZXIoZy5FdmVudChrdC5TSE9XTixuKSl9fX19LHQuc2hvdz1mdW5jdGlvbigpe2lmKCEodGhpcy5fZWxlbWVudC5kaXNhYmxlZHx8Zyh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhQdCl8fGcodGhpcy5fbWVudSkuaGFzQ2xhc3MoTHQpKSl7dmFyIHQ9e3JlbGF0ZWRUYXJnZXQ6dGhpcy5fZWxlbWVudH0sZT1nLkV2ZW50KGt0LlNIT1csdCksbj1jLl9nZXRQYXJlbnRGcm9tRWxlbWVudCh0aGlzLl9lbGVtZW50KTtnKG4pLnRyaWdnZXIoZSksZS5pc0RlZmF1bHRQcmV2ZW50ZWQoKXx8KGcodGhpcy5fbWVudSkudG9nZ2xlQ2xhc3MoTHQpLGcobikudG9nZ2xlQ2xhc3MoTHQpLnRyaWdnZXIoZy5FdmVudChrdC5TSE9XTix0KSkpfX0sdC5oaWRlPWZ1bmN0aW9uKCl7aWYoIXRoaXMuX2VsZW1lbnQuZGlzYWJsZWQmJiFnKHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKFB0KSYmZyh0aGlzLl9tZW51KS5oYXNDbGFzcyhMdCkpe3ZhciB0PXtyZWxhdGVkVGFyZ2V0OnRoaXMuX2VsZW1lbnR9LGU9Zy5FdmVudChrdC5ISURFLHQpLG49Yy5fZ2V0UGFyZW50RnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7ZyhuKS50cmlnZ2VyKGUpLGUuaXNEZWZhdWx0UHJldmVudGVkKCl8fChnKHRoaXMuX21lbnUpLnRvZ2dsZUNsYXNzKEx0KSxnKG4pLnRvZ2dsZUNsYXNzKEx0KS50cmlnZ2VyKGcuRXZlbnQoa3QuSElEREVOLHQpKSl9fSx0LmRpc3Bvc2U9ZnVuY3Rpb24oKXtnLnJlbW92ZURhdGEodGhpcy5fZWxlbWVudCxEdCksZyh0aGlzLl9lbGVtZW50KS5vZmYod3QpLHRoaXMuX2VsZW1lbnQ9bnVsbCwodGhpcy5fbWVudT1udWxsKSE9PXRoaXMuX3BvcHBlciYmKHRoaXMuX3BvcHBlci5kZXN0cm95KCksdGhpcy5fcG9wcGVyPW51bGwpfSx0LnVwZGF0ZT1mdW5jdGlvbigpe3RoaXMuX2luTmF2YmFyPXRoaXMuX2RldGVjdE5hdmJhcigpLG51bGwhPT10aGlzLl9wb3BwZXImJnRoaXMuX3BvcHBlci5zY2hlZHVsZVVwZGF0ZSgpfSx0Ll9hZGRFdmVudExpc3RlbmVycz1mdW5jdGlvbigpe3ZhciBlPXRoaXM7Zyh0aGlzLl9lbGVtZW50KS5vbihrdC5DTElDSyxmdW5jdGlvbih0KXt0LnByZXZlbnREZWZhdWx0KCksdC5zdG9wUHJvcGFnYXRpb24oKSxlLnRvZ2dsZSgpfSl9LHQuX2dldENvbmZpZz1mdW5jdGlvbih0KXtyZXR1cm4gdD1sKHt9LHRoaXMuY29uc3RydWN0b3IuRGVmYXVsdCxnKHRoaXMuX2VsZW1lbnQpLmRhdGEoKSx0KSxfLnR5cGVDaGVja0NvbmZpZyhJdCx0LHRoaXMuY29uc3RydWN0b3IuRGVmYXVsdFR5cGUpLHR9LHQuX2dldE1lbnVFbGVtZW50PWZ1bmN0aW9uKCl7aWYoIXRoaXMuX21lbnUpe3ZhciB0PWMuX2dldFBhcmVudEZyb21FbGVtZW50KHRoaXMuX2VsZW1lbnQpO3QmJih0aGlzLl9tZW51PXQucXVlcnlTZWxlY3RvcihxdCkpfXJldHVybiB0aGlzLl9tZW51fSx0Ll9nZXRQbGFjZW1lbnQ9ZnVuY3Rpb24oKXt2YXIgdD1nKHRoaXMuX2VsZW1lbnQucGFyZW50Tm9kZSksZT1WdDtyZXR1cm4gdC5oYXNDbGFzcyhqdCk/KGU9UXQsZyh0aGlzLl9tZW51KS5oYXNDbGFzcyh4dCkmJihlPUJ0KSk6dC5oYXNDbGFzcyhIdCk/ZT16dDp0Lmhhc0NsYXNzKFJ0KT9lPVh0OmcodGhpcy5fbWVudSkuaGFzQ2xhc3MoeHQpJiYoZT1ZdCksZX0sdC5fZGV0ZWN0TmF2YmFyPWZ1bmN0aW9uKCl7cmV0dXJuIDA8Zyh0aGlzLl9lbGVtZW50KS5jbG9zZXN0KCIubmF2YmFyIikubGVuZ3RofSx0Ll9nZXRPZmZzZXQ9ZnVuY3Rpb24oKXt2YXIgZT10aGlzLHQ9e307cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIHRoaXMuX2NvbmZpZy5vZmZzZXQ/dC5mbj1mdW5jdGlvbih0KXtyZXR1cm4gdC5vZmZzZXRzPWwoe30sdC5vZmZzZXRzLGUuX2NvbmZpZy5vZmZzZXQodC5vZmZzZXRzLGUuX2VsZW1lbnQpfHx7fSksdH06dC5vZmZzZXQ9dGhpcy5fY29uZmlnLm9mZnNldCx0fSx0Ll9nZXRQb3BwZXJDb25maWc9ZnVuY3Rpb24oKXt2YXIgdD17cGxhY2VtZW50OnRoaXMuX2dldFBsYWNlbWVudCgpLG1vZGlmaWVyczp7b2Zmc2V0OnRoaXMuX2dldE9mZnNldCgpLGZsaXA6e2VuYWJsZWQ6dGhpcy5fY29uZmlnLmZsaXB9LHByZXZlbnRPdmVyZmxvdzp7Ym91bmRhcmllc0VsZW1lbnQ6dGhpcy5fY29uZmlnLmJvdW5kYXJ5fX19O3JldHVybiJzdGF0aWMiPT09dGhpcy5fY29uZmlnLmRpc3BsYXkmJih0Lm1vZGlmaWVycy5hcHBseVN0eWxlPXtlbmFibGVkOiExfSksdH0sYy5falF1ZXJ5SW50ZXJmYWNlPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgdD1nKHRoaXMpLmRhdGEoRHQpO2lmKHR8fCh0PW5ldyBjKHRoaXMsIm9iamVjdCI9PXR5cGVvZiBlP2U6bnVsbCksZyh0aGlzKS5kYXRhKER0LHQpKSwic3RyaW5nIj09dHlwZW9mIGUpe2lmKCJ1bmRlZmluZWQiPT10eXBlb2YgdFtlXSl0aHJvdyBuZXcgVHlwZUVycm9yKCdObyBtZXRob2QgbmFtZWQgIicrZSsnIicpO3RbZV0oKX19KX0sYy5fY2xlYXJNZW51cz1mdW5jdGlvbih0KXtpZighdHx8MyE9PXQud2hpY2gmJigia2V5dXAiIT09dC50eXBlfHw5PT09dC53aGljaCkpZm9yKHZhciBlPVtdLnNsaWNlLmNhbGwoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChVdCkpLG49MCxpPWUubGVuZ3RoO248aTtuKyspe3ZhciBvPWMuX2dldFBhcmVudEZyb21FbGVtZW50KGVbbl0pLHI9ZyhlW25dKS5kYXRhKER0KSxzPXtyZWxhdGVkVGFyZ2V0OmVbbl19O2lmKHQmJiJjbGljayI9PT10LnR5cGUmJihzLmNsaWNrRXZlbnQ9dCkscil7dmFyIGE9ci5fbWVudTtpZihnKG8pLmhhc0NsYXNzKEx0KSYmISh0JiYoImNsaWNrIj09PXQudHlwZSYmL2lucHV0fHRleHRhcmVhL2kudGVzdCh0LnRhcmdldC50YWdOYW1lKXx8ImtleXVwIj09PXQudHlwZSYmOT09PXQud2hpY2gpJiZnLmNvbnRhaW5zKG8sdC50YXJnZXQpKSl7dmFyIGw9Zy5FdmVudChrdC5ISURFLHMpO2cobykudHJpZ2dlcihsKSxsLmlzRGVmYXVsdFByZXZlbnRlZCgpfHwoIm9udG91Y2hzdGFydCJpbiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQmJmcoZG9jdW1lbnQuYm9keSkuY2hpbGRyZW4oKS5vZmYoIm1vdXNlb3ZlciIsbnVsbCxnLm5vb3ApLGVbbl0uc2V0QXR0cmlidXRlKCJhcmlhLWV4cGFuZGVkIiwiZmFsc2UiKSxnKGEpLnJlbW92ZUNsYXNzKEx0KSxnKG8pLnJlbW92ZUNsYXNzKEx0KS50cmlnZ2VyKGcuRXZlbnQoa3QuSElEREVOLHMpKSl9fX19LGMuX2dldFBhcmVudEZyb21FbGVtZW50PWZ1bmN0aW9uKHQpe3ZhciBlLG49Xy5nZXRTZWxlY3RvckZyb21FbGVtZW50KHQpO3JldHVybiBuJiYoZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKG4pKSxlfHx0LnBhcmVudE5vZGV9LGMuX2RhdGFBcGlLZXlkb3duSGFuZGxlcj1mdW5jdGlvbih0KXtpZigoL2lucHV0fHRleHRhcmVhL2kudGVzdCh0LnRhcmdldC50YWdOYW1lKT8hKDMyPT09dC53aGljaHx8MjchPT10LndoaWNoJiYoNDAhPT10LndoaWNoJiYzOCE9PXQud2hpY2h8fGcodC50YXJnZXQpLmNsb3Nlc3QocXQpLmxlbmd0aCkpOk90LnRlc3QodC53aGljaCkpJiYodC5wcmV2ZW50RGVmYXVsdCgpLHQuc3RvcFByb3BhZ2F0aW9uKCksIXRoaXMuZGlzYWJsZWQmJiFnKHRoaXMpLmhhc0NsYXNzKFB0KSkpe3ZhciBlPWMuX2dldFBhcmVudEZyb21FbGVtZW50KHRoaXMpLG49ZyhlKS5oYXNDbGFzcyhMdCk7aWYobiYmKCFufHwyNyE9PXQud2hpY2gmJjMyIT09dC53aGljaCkpe3ZhciBpPVtdLnNsaWNlLmNhbGwoZS5xdWVyeVNlbGVjdG9yQWxsKEt0KSk7aWYoMCE9PWkubGVuZ3RoKXt2YXIgbz1pLmluZGV4T2YodC50YXJnZXQpOzM4PT09dC53aGljaCYmMDxvJiZvLS0sNDA9PT10LndoaWNoJiZvPGkubGVuZ3RoLTEmJm8rKyxvPDAmJihvPTApLGlbb10uZm9jdXMoKX19ZWxzZXtpZigyNz09PXQud2hpY2gpe3ZhciByPWUucXVlcnlTZWxlY3RvcihVdCk7ZyhyKS50cmlnZ2VyKCJmb2N1cyIpfWcodGhpcykudHJpZ2dlcigiY2xpY2siKX19fSxzKGMsbnVsbCxbe2tleToiVkVSU0lPTiIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIjQuMy4xIn19LHtrZXk6IkRlZmF1bHQiLGdldDpmdW5jdGlvbigpe3JldHVybiAkdH19LHtrZXk6IkRlZmF1bHRUeXBlIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gR3R9fV0pLGN9KCk7Zyhkb2N1bWVudCkub24oa3QuS0VZRE9XTl9EQVRBX0FQSSxVdCxKdC5fZGF0YUFwaUtleWRvd25IYW5kbGVyKS5vbihrdC5LRVlET1dOX0RBVEFfQVBJLHF0LEp0Ll9kYXRhQXBpS2V5ZG93bkhhbmRsZXIpLm9uKGt0LkNMSUNLX0RBVEFfQVBJKyIgIitrdC5LRVlVUF9EQVRBX0FQSSxKdC5fY2xlYXJNZW51cykub24oa3QuQ0xJQ0tfREFUQV9BUEksVXQsZnVuY3Rpb24odCl7dC5wcmV2ZW50RGVmYXVsdCgpLHQuc3RvcFByb3BhZ2F0aW9uKCksSnQuX2pRdWVyeUludGVyZmFjZS5jYWxsKGcodGhpcyksInRvZ2dsZSIpfSkub24oa3QuQ0xJQ0tfREFUQV9BUEksV3QsZnVuY3Rpb24odCl7dC5zdG9wUHJvcGFnYXRpb24oKX0pLGcuZm5bSXRdPUp0Ll9qUXVlcnlJbnRlcmZhY2UsZy5mbltJdF0uQ29uc3RydWN0b3I9SnQsZy5mbltJdF0ubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBnLmZuW0l0XT1OdCxKdC5falF1ZXJ5SW50ZXJmYWNlfTt2YXIgWnQ9Im1vZGFsIix0ZT0iYnMubW9kYWwiLGVlPSIuIit0ZSxuZT1nLmZuW1p0XSxpZT17YmFja2Ryb3A6ITAsa2V5Ym9hcmQ6ITAsZm9jdXM6ITAsc2hvdzohMH0sb2U9e2JhY2tkcm9wOiIoYm9vbGVhbnxzdHJpbmcpIixrZXlib2FyZDoiYm9vbGVhbiIsZm9jdXM6ImJvb2xlYW4iLHNob3c6ImJvb2xlYW4ifSxyZT17SElERToiaGlkZSIrZWUsSElEREVOOiJoaWRkZW4iK2VlLFNIT1c6InNob3ciK2VlLFNIT1dOOiJzaG93biIrZWUsRk9DVVNJTjoiZm9jdXNpbiIrZWUsUkVTSVpFOiJyZXNpemUiK2VlLENMSUNLX0RJU01JU1M6ImNsaWNrLmRpc21pc3MiK2VlLEtFWURPV05fRElTTUlTUzoia2V5ZG93bi5kaXNtaXNzIitlZSxNT1VTRVVQX0RJU01JU1M6Im1vdXNldXAuZGlzbWlzcyIrZWUsTU9VU0VET1dOX0RJU01JU1M6Im1vdXNlZG93bi5kaXNtaXNzIitlZSxDTElDS19EQVRBX0FQSToiY2xpY2siK2VlKyIuZGF0YS1hcGkifSxzZT0ibW9kYWwtZGlhbG9nLXNjcm9sbGFibGUiLGFlPSJtb2RhbC1zY3JvbGxiYXItbWVhc3VyZSIsbGU9Im1vZGFsLWJhY2tkcm9wIixjZT0ibW9kYWwtb3BlbiIsaGU9ImZhZGUiLHVlPSJzaG93IixmZT0iLm1vZGFsLWRpYWxvZyIsZGU9Ii5tb2RhbC1ib2R5IixnZT0nW2RhdGEtdG9nZ2xlPSJtb2RhbCJdJyxfZT0nW2RhdGEtZGlzbWlzcz0ibW9kYWwiXScsbWU9Ii5maXhlZC10b3AsIC5maXhlZC1ib3R0b20sIC5pcy1maXhlZCwgLnN0aWNreS10b3AiLHBlPSIuc3RpY2t5LXRvcCIsdmU9ZnVuY3Rpb24oKXtmdW5jdGlvbiBvKHQsZSl7dGhpcy5fY29uZmlnPXRoaXMuX2dldENvbmZpZyhlKSx0aGlzLl9lbGVtZW50PXQsdGhpcy5fZGlhbG9nPXQucXVlcnlTZWxlY3RvcihmZSksdGhpcy5fYmFja2Ryb3A9bnVsbCx0aGlzLl9pc1Nob3duPSExLHRoaXMuX2lzQm9keU92ZXJmbG93aW5nPSExLHRoaXMuX2lnbm9yZUJhY2tkcm9wQ2xpY2s9ITEsdGhpcy5faXNUcmFuc2l0aW9uaW5nPSExLHRoaXMuX3Njcm9sbGJhcldpZHRoPTB9dmFyIHQ9by5wcm90b3R5cGU7cmV0dXJuIHQudG9nZ2xlPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl9pc1Nob3duP3RoaXMuaGlkZSgpOnRoaXMuc2hvdyh0KX0sdC5zaG93PWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7aWYoIXRoaXMuX2lzU2hvd24mJiF0aGlzLl9pc1RyYW5zaXRpb25pbmcpe2codGhpcy5fZWxlbWVudCkuaGFzQ2xhc3MoaGUpJiYodGhpcy5faXNUcmFuc2l0aW9uaW5nPSEwKTt2YXIgbj1nLkV2ZW50KHJlLlNIT1cse3JlbGF0ZWRUYXJnZXQ6dH0pO2codGhpcy5fZWxlbWVudCkudHJpZ2dlcihuKSx0aGlzLl9pc1Nob3dufHxuLmlzRGVmYXVsdFByZXZlbnRlZCgpfHwodGhpcy5faXNTaG93bj0hMCx0aGlzLl9jaGVja1Njcm9sbGJhcigpLHRoaXMuX3NldFNjcm9sbGJhcigpLHRoaXMuX2FkanVzdERpYWxvZygpLHRoaXMuX3NldEVzY2FwZUV2ZW50KCksdGhpcy5fc2V0UmVzaXplRXZlbnQoKSxnKHRoaXMuX2VsZW1lbnQpLm9uKHJlLkNMSUNLX0RJU01JU1MsX2UsZnVuY3Rpb24odCl7cmV0dXJuIGUuaGlkZSh0KX0pLGcodGhpcy5fZGlhbG9nKS5vbihyZS5NT1VTRURPV05fRElTTUlTUyxmdW5jdGlvbigpe2coZS5fZWxlbWVudCkub25lKHJlLk1PVVNFVVBfRElTTUlTUyxmdW5jdGlvbih0KXtnKHQudGFyZ2V0KS5pcyhlLl9lbGVtZW50KSYmKGUuX2lnbm9yZUJhY2tkcm9wQ2xpY2s9ITApfSl9KSx0aGlzLl9zaG93QmFja2Ryb3AoZnVuY3Rpb24oKXtyZXR1cm4gZS5fc2hvd0VsZW1lbnQodCl9KSl9fSx0LmhpZGU9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcztpZih0JiZ0LnByZXZlbnREZWZhdWx0KCksdGhpcy5faXNTaG93biYmIXRoaXMuX2lzVHJhbnNpdGlvbmluZyl7dmFyIG49Zy5FdmVudChyZS5ISURFKTtpZihnKHRoaXMuX2VsZW1lbnQpLnRyaWdnZXIobiksdGhpcy5faXNTaG93biYmIW4uaXNEZWZhdWx0UHJldmVudGVkKCkpe3RoaXMuX2lzU2hvd249ITE7dmFyIGk9Zyh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhoZSk7aWYoaSYmKHRoaXMuX2lzVHJhbnNpdGlvbmluZz0hMCksdGhpcy5fc2V0RXNjYXBlRXZlbnQoKSx0aGlzLl9zZXRSZXNpemVFdmVudCgpLGcoZG9jdW1lbnQpLm9mZihyZS5GT0NVU0lOKSxnKHRoaXMuX2VsZW1lbnQpLnJlbW92ZUNsYXNzKHVlKSxnKHRoaXMuX2VsZW1lbnQpLm9mZihyZS5DTElDS19ESVNNSVNTKSxnKHRoaXMuX2RpYWxvZykub2ZmKHJlLk1PVVNFRE9XTl9ESVNNSVNTKSxpKXt2YXIgbz1fLmdldFRyYW5zaXRpb25EdXJhdGlvbkZyb21FbGVtZW50KHRoaXMuX2VsZW1lbnQpO2codGhpcy5fZWxlbWVudCkub25lKF8uVFJBTlNJVElPTl9FTkQsZnVuY3Rpb24odCl7cmV0dXJuIGUuX2hpZGVNb2RhbCh0KX0pLmVtdWxhdGVUcmFuc2l0aW9uRW5kKG8pfWVsc2UgdGhpcy5faGlkZU1vZGFsKCl9fX0sdC5kaXNwb3NlPWZ1bmN0aW9uKCl7W3dpbmRvdyx0aGlzLl9lbGVtZW50LHRoaXMuX2RpYWxvZ10uZm9yRWFjaChmdW5jdGlvbih0KXtyZXR1cm4gZyh0KS5vZmYoZWUpfSksZyhkb2N1bWVudCkub2ZmKHJlLkZPQ1VTSU4pLGcucmVtb3ZlRGF0YSh0aGlzLl9lbGVtZW50LHRlKSx0aGlzLl9jb25maWc9bnVsbCx0aGlzLl9lbGVtZW50PW51bGwsdGhpcy5fZGlhbG9nPW51bGwsdGhpcy5fYmFja2Ryb3A9bnVsbCx0aGlzLl9pc1Nob3duPW51bGwsdGhpcy5faXNCb2R5T3ZlcmZsb3dpbmc9bnVsbCx0aGlzLl9pZ25vcmVCYWNrZHJvcENsaWNrPW51bGwsdGhpcy5faXNUcmFuc2l0aW9uaW5nPW51bGwsdGhpcy5fc2Nyb2xsYmFyV2lkdGg9bnVsbH0sdC5oYW5kbGVVcGRhdGU9ZnVuY3Rpb24oKXt0aGlzLl9hZGp1c3REaWFsb2coKX0sdC5fZ2V0Q29uZmlnPWZ1bmN0aW9uKHQpe3JldHVybiB0PWwoe30saWUsdCksXy50eXBlQ2hlY2tDb25maWcoWnQsdCxvZSksdH0sdC5fc2hvd0VsZW1lbnQ9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcyxuPWcodGhpcy5fZWxlbWVudCkuaGFzQ2xhc3MoaGUpO3RoaXMuX2VsZW1lbnQucGFyZW50Tm9kZSYmdGhpcy5fZWxlbWVudC5wYXJlbnROb2RlLm5vZGVUeXBlPT09Tm9kZS5FTEVNRU5UX05PREV8fGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodGhpcy5fZWxlbWVudCksdGhpcy5fZWxlbWVudC5zdHlsZS5kaXNwbGF5PSJibG9jayIsdGhpcy5fZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoImFyaWEtaGlkZGVuIiksdGhpcy5fZWxlbWVudC5zZXRBdHRyaWJ1dGUoImFyaWEtbW9kYWwiLCEwKSxnKHRoaXMuX2RpYWxvZykuaGFzQ2xhc3Moc2UpP3RoaXMuX2RpYWxvZy5xdWVyeVNlbGVjdG9yKGRlKS5zY3JvbGxUb3A9MDp0aGlzLl9lbGVtZW50LnNjcm9sbFRvcD0wLG4mJl8ucmVmbG93KHRoaXMuX2VsZW1lbnQpLGcodGhpcy5fZWxlbWVudCkuYWRkQ2xhc3ModWUpLHRoaXMuX2NvbmZpZy5mb2N1cyYmdGhpcy5fZW5mb3JjZUZvY3VzKCk7dmFyIGk9Zy5FdmVudChyZS5TSE9XTix7cmVsYXRlZFRhcmdldDp0fSksbz1mdW5jdGlvbigpe2UuX2NvbmZpZy5mb2N1cyYmZS5fZWxlbWVudC5mb2N1cygpLGUuX2lzVHJhbnNpdGlvbmluZz0hMSxnKGUuX2VsZW1lbnQpLnRyaWdnZXIoaSl9O2lmKG4pe3ZhciByPV8uZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGhpcy5fZGlhbG9nKTtnKHRoaXMuX2RpYWxvZykub25lKF8uVFJBTlNJVElPTl9FTkQsbykuZW11bGF0ZVRyYW5zaXRpb25FbmQocil9ZWxzZSBvKCl9LHQuX2VuZm9yY2VGb2N1cz1mdW5jdGlvbigpe3ZhciBlPXRoaXM7Zyhkb2N1bWVudCkub2ZmKHJlLkZPQ1VTSU4pLm9uKHJlLkZPQ1VTSU4sZnVuY3Rpb24odCl7ZG9jdW1lbnQhPT10LnRhcmdldCYmZS5fZWxlbWVudCE9PXQudGFyZ2V0JiYwPT09ZyhlLl9lbGVtZW50KS5oYXModC50YXJnZXQpLmxlbmd0aCYmZS5fZWxlbWVudC5mb2N1cygpfSl9LHQuX3NldEVzY2FwZUV2ZW50PWZ1bmN0aW9uKCl7dmFyIGU9dGhpczt0aGlzLl9pc1Nob3duJiZ0aGlzLl9jb25maWcua2V5Ym9hcmQ/Zyh0aGlzLl9lbGVtZW50KS5vbihyZS5LRVlET1dOX0RJU01JU1MsZnVuY3Rpb24odCl7Mjc9PT10LndoaWNoJiYodC5wcmV2ZW50RGVmYXVsdCgpLGUuaGlkZSgpKX0pOnRoaXMuX2lzU2hvd258fGcodGhpcy5fZWxlbWVudCkub2ZmKHJlLktFWURPV05fRElTTUlTUyl9LHQuX3NldFJlc2l6ZUV2ZW50PWZ1bmN0aW9uKCl7dmFyIGU9dGhpczt0aGlzLl9pc1Nob3duP2cod2luZG93KS5vbihyZS5SRVNJWkUsZnVuY3Rpb24odCl7cmV0dXJuIGUuaGFuZGxlVXBkYXRlKHQpfSk6Zyh3aW5kb3cpLm9mZihyZS5SRVNJWkUpfSx0Ll9oaWRlTW9kYWw9ZnVuY3Rpb24oKXt2YXIgdD10aGlzO3RoaXMuX2VsZW1lbnQuc3R5bGUuZGlzcGxheT0ibm9uZSIsdGhpcy5fZWxlbWVudC5zZXRBdHRyaWJ1dGUoImFyaWEtaGlkZGVuIiwhMCksdGhpcy5fZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoImFyaWEtbW9kYWwiKSx0aGlzLl9pc1RyYW5zaXRpb25pbmc9ITEsdGhpcy5fc2hvd0JhY2tkcm9wKGZ1bmN0aW9uKCl7Zyhkb2N1bWVudC5ib2R5KS5yZW1vdmVDbGFzcyhjZSksdC5fcmVzZXRBZGp1c3RtZW50cygpLHQuX3Jlc2V0U2Nyb2xsYmFyKCksZyh0Ll9lbGVtZW50KS50cmlnZ2VyKHJlLkhJRERFTil9KX0sdC5fcmVtb3ZlQmFja2Ryb3A9ZnVuY3Rpb24oKXt0aGlzLl9iYWNrZHJvcCYmKGcodGhpcy5fYmFja2Ryb3ApLnJlbW92ZSgpLHRoaXMuX2JhY2tkcm9wPW51bGwpfSx0Ll9zaG93QmFja2Ryb3A9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcyxuPWcodGhpcy5fZWxlbWVudCkuaGFzQ2xhc3MoaGUpP2hlOiIiO2lmKHRoaXMuX2lzU2hvd24mJnRoaXMuX2NvbmZpZy5iYWNrZHJvcCl7aWYodGhpcy5fYmFja2Ryb3A9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdGhpcy5fYmFja2Ryb3AuY2xhc3NOYW1lPWxlLG4mJnRoaXMuX2JhY2tkcm9wLmNsYXNzTGlzdC5hZGQobiksZyh0aGlzLl9iYWNrZHJvcCkuYXBwZW5kVG8oZG9jdW1lbnQuYm9keSksZyh0aGlzLl9lbGVtZW50KS5vbihyZS5DTElDS19ESVNNSVNTLGZ1bmN0aW9uKHQpe2UuX2lnbm9yZUJhY2tkcm9wQ2xpY2s/ZS5faWdub3JlQmFja2Ryb3BDbGljaz0hMTp0LnRhcmdldD09PXQuY3VycmVudFRhcmdldCYmKCJzdGF0aWMiPT09ZS5fY29uZmlnLmJhY2tkcm9wP2UuX2VsZW1lbnQuZm9jdXMoKTplLmhpZGUoKSl9KSxuJiZfLnJlZmxvdyh0aGlzLl9iYWNrZHJvcCksZyh0aGlzLl9iYWNrZHJvcCkuYWRkQ2xhc3ModWUpLCF0KXJldHVybjtpZighbilyZXR1cm4gdm9pZCB0KCk7dmFyIGk9Xy5nZXRUcmFuc2l0aW9uRHVyYXRpb25Gcm9tRWxlbWVudCh0aGlzLl9iYWNrZHJvcCk7Zyh0aGlzLl9iYWNrZHJvcCkub25lKF8uVFJBTlNJVElPTl9FTkQsdCkuZW11bGF0ZVRyYW5zaXRpb25FbmQoaSl9ZWxzZSBpZighdGhpcy5faXNTaG93biYmdGhpcy5fYmFja2Ryb3Ape2codGhpcy5fYmFja2Ryb3ApLnJlbW92ZUNsYXNzKHVlKTt2YXIgbz1mdW5jdGlvbigpe2UuX3JlbW92ZUJhY2tkcm9wKCksdCYmdCgpfTtpZihnKHRoaXMuX2VsZW1lbnQpLmhhc0NsYXNzKGhlKSl7dmFyIHI9Xy5nZXRUcmFuc2l0aW9uRHVyYXRpb25Gcm9tRWxlbWVudCh0aGlzLl9iYWNrZHJvcCk7Zyh0aGlzLl9iYWNrZHJvcCkub25lKF8uVFJBTlNJVElPTl9FTkQsbykuZW11bGF0ZVRyYW5zaXRpb25FbmQocil9ZWxzZSBvKCl9ZWxzZSB0JiZ0KCl9LHQuX2FkanVzdERpYWxvZz1mdW5jdGlvbigpe3ZhciB0PXRoaXMuX2VsZW1lbnQuc2Nyb2xsSGVpZ2h0PmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQ7IXRoaXMuX2lzQm9keU92ZXJmbG93aW5nJiZ0JiYodGhpcy5fZWxlbWVudC5zdHlsZS5wYWRkaW5nTGVmdD10aGlzLl9zY3JvbGxiYXJXaWR0aCsicHgiKSx0aGlzLl9pc0JvZHlPdmVyZmxvd2luZyYmIXQmJih0aGlzLl9lbGVtZW50LnN0eWxlLnBhZGRpbmdSaWdodD10aGlzLl9zY3JvbGxiYXJXaWR0aCsicHgiKX0sdC5fcmVzZXRBZGp1c3RtZW50cz1mdW5jdGlvbigpe3RoaXMuX2VsZW1lbnQuc3R5bGUucGFkZGluZ0xlZnQ9IiIsdGhpcy5fZWxlbWVudC5zdHlsZS5wYWRkaW5nUmlnaHQ9IiJ9LHQuX2NoZWNrU2Nyb2xsYmFyPWZ1bmN0aW9uKCl7dmFyIHQ9ZG9jdW1lbnQuYm9keS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTt0aGlzLl9pc0JvZHlPdmVyZmxvd2luZz10LmxlZnQrdC5yaWdodDx3aW5kb3cuaW5uZXJXaWR0aCx0aGlzLl9zY3JvbGxiYXJXaWR0aD10aGlzLl9nZXRTY3JvbGxiYXJXaWR0aCgpfSx0Ll9zZXRTY3JvbGxiYXI9ZnVuY3Rpb24oKXt2YXIgbz10aGlzO2lmKHRoaXMuX2lzQm9keU92ZXJmbG93aW5nKXt2YXIgdD1bXS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwobWUpKSxlPVtdLnNsaWNlLmNhbGwoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChwZSkpO2codCkuZWFjaChmdW5jdGlvbih0LGUpe3ZhciBuPWUuc3R5bGUucGFkZGluZ1JpZ2h0LGk9ZyhlKS5jc3MoInBhZGRpbmctcmlnaHQiKTtnKGUpLmRhdGEoInBhZGRpbmctcmlnaHQiLG4pLmNzcygicGFkZGluZy1yaWdodCIscGFyc2VGbG9hdChpKStvLl9zY3JvbGxiYXJXaWR0aCsicHgiKX0pLGcoZSkuZWFjaChmdW5jdGlvbih0LGUpe3ZhciBuPWUuc3R5bGUubWFyZ2luUmlnaHQsaT1nKGUpLmNzcygibWFyZ2luLXJpZ2h0Iik7ZyhlKS5kYXRhKCJtYXJnaW4tcmlnaHQiLG4pLmNzcygibWFyZ2luLXJpZ2h0IixwYXJzZUZsb2F0KGkpLW8uX3Njcm9sbGJhcldpZHRoKyJweCIpfSk7dmFyIG49ZG9jdW1lbnQuYm9keS5zdHlsZS5wYWRkaW5nUmlnaHQsaT1nKGRvY3VtZW50LmJvZHkpLmNzcygicGFkZGluZy1yaWdodCIpO2coZG9jdW1lbnQuYm9keSkuZGF0YSgicGFkZGluZy1yaWdodCIsbikuY3NzKCJwYWRkaW5nLXJpZ2h0IixwYXJzZUZsb2F0KGkpK3RoaXMuX3Njcm9sbGJhcldpZHRoKyJweCIpfWcoZG9jdW1lbnQuYm9keSkuYWRkQ2xhc3MoY2UpfSx0Ll9yZXNldFNjcm9sbGJhcj1mdW5jdGlvbigpe3ZhciB0PVtdLnNsaWNlLmNhbGwoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChtZSkpO2codCkuZWFjaChmdW5jdGlvbih0LGUpe3ZhciBuPWcoZSkuZGF0YSgicGFkZGluZy1yaWdodCIpO2coZSkucmVtb3ZlRGF0YSgicGFkZGluZy1yaWdodCIpLGUuc3R5bGUucGFkZGluZ1JpZ2h0PW58fCIifSk7dmFyIGU9W10uc2xpY2UuY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIiK3BlKSk7ZyhlKS5lYWNoKGZ1bmN0aW9uKHQsZSl7dmFyIG49ZyhlKS5kYXRhKCJtYXJnaW4tcmlnaHQiKTsidW5kZWZpbmVkIiE9dHlwZW9mIG4mJmcoZSkuY3NzKCJtYXJnaW4tcmlnaHQiLG4pLnJlbW92ZURhdGEoIm1hcmdpbi1yaWdodCIpfSk7dmFyIG49Zyhkb2N1bWVudC5ib2R5KS5kYXRhKCJwYWRkaW5nLXJpZ2h0Iik7Zyhkb2N1bWVudC5ib2R5KS5yZW1vdmVEYXRhKCJwYWRkaW5nLXJpZ2h0IiksZG9jdW1lbnQuYm9keS5zdHlsZS5wYWRkaW5nUmlnaHQ9bnx8IiJ9LHQuX2dldFNjcm9sbGJhcldpZHRoPWZ1bmN0aW9uKCl7dmFyIHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dC5jbGFzc05hbWU9YWUsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0KTt2YXIgZT10LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoLXQuY2xpZW50V2lkdGg7cmV0dXJuIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQodCksZX0sby5falF1ZXJ5SW50ZXJmYWNlPWZ1bmN0aW9uKG4saSl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciB0PWcodGhpcykuZGF0YSh0ZSksZT1sKHt9LGllLGcodGhpcykuZGF0YSgpLCJvYmplY3QiPT10eXBlb2YgbiYmbj9uOnt9KTtpZih0fHwodD1uZXcgbyh0aGlzLGUpLGcodGhpcykuZGF0YSh0ZSx0KSksInN0cmluZyI9PXR5cGVvZiBuKXtpZigidW5kZWZpbmVkIj09dHlwZW9mIHRbbl0pdGhyb3cgbmV3IFR5cGVFcnJvcignTm8gbWV0aG9kIG5hbWVkICInK24rJyInKTt0W25dKGkpfWVsc2UgZS5zaG93JiZ0LnNob3coaSl9KX0scyhvLG51bGwsW3trZXk6IlZFUlNJT04iLGdldDpmdW5jdGlvbigpe3JldHVybiI0LjMuMSJ9fSx7a2V5OiJEZWZhdWx0IixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gaWV9fV0pLG99KCk7Zyhkb2N1bWVudCkub24ocmUuQ0xJQ0tfREFUQV9BUEksZ2UsZnVuY3Rpb24odCl7dmFyIGUsbj10aGlzLGk9Xy5nZXRTZWxlY3RvckZyb21FbGVtZW50KHRoaXMpO2kmJihlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoaSkpO3ZhciBvPWcoZSkuZGF0YSh0ZSk/InRvZ2dsZSI6bCh7fSxnKGUpLmRhdGEoKSxnKHRoaXMpLmRhdGEoKSk7IkEiIT09dGhpcy50YWdOYW1lJiYiQVJFQSIhPT10aGlzLnRhZ05hbWV8fHQucHJldmVudERlZmF1bHQoKTt2YXIgcj1nKGUpLm9uZShyZS5TSE9XLGZ1bmN0aW9uKHQpe3QuaXNEZWZhdWx0UHJldmVudGVkKCl8fHIub25lKHJlLkhJRERFTixmdW5jdGlvbigpe2cobikuaXMoIjp2aXNpYmxlIikmJm4uZm9jdXMoKX0pfSk7dmUuX2pRdWVyeUludGVyZmFjZS5jYWxsKGcoZSksbyx0aGlzKX0pLGcuZm5bWnRdPXZlLl9qUXVlcnlJbnRlcmZhY2UsZy5mbltadF0uQ29uc3RydWN0b3I9dmUsZy5mbltadF0ubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBnLmZuW1p0XT1uZSx2ZS5falF1ZXJ5SW50ZXJmYWNlfTt2YXIgeWU9WyJiYWNrZ3JvdW5kIiwiY2l0ZSIsImhyZWYiLCJpdGVtdHlwZSIsImxvbmdkZXNjIiwicG9zdGVyIiwic3JjIiwieGxpbms6aHJlZiJdLEVlPXsiKiI6WyJjbGFzcyIsImRpciIsImlkIiwibGFuZyIsInJvbGUiLC9eYXJpYS1bXHctXSokL2ldLGE6WyJ0YXJnZXQiLCJocmVmIiwidGl0bGUiLCJyZWwiXSxhcmVhOltdLGI6W10sYnI6W10sY29sOltdLGNvZGU6W10sZGl2OltdLGVtOltdLGhyOltdLGgxOltdLGgyOltdLGgzOltdLGg0OltdLGg1OltdLGg2OltdLGk6W10saW1nOlsic3JjIiwiYWx0IiwidGl0bGUiLCJ3aWR0aCIsImhlaWdodCJdLGxpOltdLG9sOltdLHA6W10scHJlOltdLHM6W10sc21hbGw6W10sc3BhbjpbXSxzdWI6W10sc3VwOltdLHN0cm9uZzpbXSx1OltdLHVsOltdfSxDZT0vXig/Oig/Omh0dHBzP3xtYWlsdG98ZnRwfHRlbHxmaWxlKTp8W14mOi8/I10qKD86Wy8/I118JCkpL2dpLFRlPS9eZGF0YTooPzppbWFnZVwvKD86Ym1wfGdpZnxqcGVnfGpwZ3xwbmd8dGlmZnx3ZWJwKXx2aWRlb1wvKD86bXBlZ3xtcDR8b2dnfHdlYm0pfGF1ZGlvXC8oPzptcDN8b2dhfG9nZ3xvcHVzKSk7YmFzZTY0LFthLXowLTkrL10rPSokL2k7ZnVuY3Rpb24gU2UodCxzLGUpe2lmKDA9PT10Lmxlbmd0aClyZXR1cm4gdDtpZihlJiYiZnVuY3Rpb24iPT10eXBlb2YgZSlyZXR1cm4gZSh0KTtmb3IodmFyIG49KG5ldyB3aW5kb3cuRE9NUGFyc2VyKS5wYXJzZUZyb21TdHJpbmcodCwidGV4dC9odG1sIiksYT1PYmplY3Qua2V5cyhzKSxsPVtdLnNsaWNlLmNhbGwobi5ib2R5LnF1ZXJ5U2VsZWN0b3JBbGwoIioiKSksaT1mdW5jdGlvbih0LGUpe3ZhciBuPWxbdF0saT1uLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7aWYoLTE9PT1hLmluZGV4T2Yobi5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpKSlyZXR1cm4gbi5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKG4pLCJjb250aW51ZSI7dmFyIG89W10uc2xpY2UuY2FsbChuLmF0dHJpYnV0ZXMpLHI9W10uY29uY2F0KHNbIioiXXx8W10sc1tpXXx8W10pO28uZm9yRWFjaChmdW5jdGlvbih0KXsoZnVuY3Rpb24odCxlKXt2YXIgbj10Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7aWYoLTEhPT1lLmluZGV4T2YobikpcmV0dXJuLTE9PT15ZS5pbmRleE9mKG4pfHxCb29sZWFuKHQubm9kZVZhbHVlLm1hdGNoKENlKXx8dC5ub2RlVmFsdWUubWF0Y2goVGUpKTtmb3IodmFyIGk9ZS5maWx0ZXIoZnVuY3Rpb24odCl7cmV0dXJuIHQgaW5zdGFuY2VvZiBSZWdFeHB9KSxvPTAscj1pLmxlbmd0aDtvPHI7bysrKWlmKG4ubWF0Y2goaVtvXSkpcmV0dXJuITA7cmV0dXJuITF9KSh0LHIpfHxuLnJlbW92ZUF0dHJpYnV0ZSh0Lm5vZGVOYW1lKX0pfSxvPTAscj1sLmxlbmd0aDtvPHI7bysrKWkobyk7cmV0dXJuIG4uYm9keS5pbm5lckhUTUx9dmFyIGJlPSJ0b29sdGlwIixJZT0iYnMudG9vbHRpcCIsRGU9Ii4iK0llLHdlPWcuZm5bYmVdLEFlPSJicy10b29sdGlwIixOZT1uZXcgUmVnRXhwKCIoXnxcXHMpIitBZSsiXFxTKyIsImciKSxPZT1bInNhbml0aXplIiwid2hpdGVMaXN0Iiwic2FuaXRpemVGbiJdLGtlPXthbmltYXRpb246ImJvb2xlYW4iLHRlbXBsYXRlOiJzdHJpbmciLHRpdGxlOiIoc3RyaW5nfGVsZW1lbnR8ZnVuY3Rpb24pIix0cmlnZ2VyOiJzdHJpbmciLGRlbGF5OiIobnVtYmVyfG9iamVjdCkiLGh0bWw6ImJvb2xlYW4iLHNlbGVjdG9yOiIoc3RyaW5nfGJvb2xlYW4pIixwbGFjZW1lbnQ6IihzdHJpbmd8ZnVuY3Rpb24pIixvZmZzZXQ6IihudW1iZXJ8c3RyaW5nfGZ1bmN0aW9uKSIsY29udGFpbmVyOiIoc3RyaW5nfGVsZW1lbnR8Ym9vbGVhbikiLGZhbGxiYWNrUGxhY2VtZW50OiIoc3RyaW5nfGFycmF5KSIsYm91bmRhcnk6IihzdHJpbmd8ZWxlbWVudCkiLHNhbml0aXplOiJib29sZWFuIixzYW5pdGl6ZUZuOiIobnVsbHxmdW5jdGlvbikiLHdoaXRlTGlzdDoib2JqZWN0In0sUGU9e0FVVE86ImF1dG8iLFRPUDoidG9wIixSSUdIVDoicmlnaHQiLEJPVFRPTToiYm90dG9tIixMRUZUOiJsZWZ0In0sTGU9e2FuaW1hdGlvbjohMCx0ZW1wbGF0ZTonPGRpdiBjbGFzcz0idG9vbHRpcCIgcm9sZT0idG9vbHRpcCI+PGRpdiBjbGFzcz0iYXJyb3ciPjwvZGl2PjxkaXYgY2xhc3M9InRvb2x0aXAtaW5uZXIiPjwvZGl2PjwvZGl2PicsdHJpZ2dlcjoiaG92ZXIgZm9jdXMiLHRpdGxlOiIiLGRlbGF5OjAsaHRtbDohMSxzZWxlY3RvcjohMSxwbGFjZW1lbnQ6InRvcCIsb2Zmc2V0OjAsY29udGFpbmVyOiExLGZhbGxiYWNrUGxhY2VtZW50OiJmbGlwIixib3VuZGFyeToic2Nyb2xsUGFyZW50IixzYW5pdGl6ZTohMCxzYW5pdGl6ZUZuOm51bGwsd2hpdGVMaXN0OkVlfSxqZT0ic2hvdyIsSGU9Im91dCIsUmU9e0hJREU6ImhpZGUiK0RlLEhJRERFTjoiaGlkZGVuIitEZSxTSE9XOiJzaG93IitEZSxTSE9XTjoic2hvd24iK0RlLElOU0VSVEVEOiJpbnNlcnRlZCIrRGUsQ0xJQ0s6ImNsaWNrIitEZSxGT0NVU0lOOiJmb2N1c2luIitEZSxGT0NVU09VVDoiZm9jdXNvdXQiK0RlLE1PVVNFRU5URVI6Im1vdXNlZW50ZXIiK0RlLE1PVVNFTEVBVkU6Im1vdXNlbGVhdmUiK0RlfSx4ZT0iZmFkZSIsRmU9InNob3ciLFVlPSIudG9vbHRpcC1pbm5lciIsV2U9Ii5hcnJvdyIscWU9ImhvdmVyIixNZT0iZm9jdXMiLEtlPSJjbGljayIsUWU9Im1hbnVhbCIsQmU9ZnVuY3Rpb24oKXtmdW5jdGlvbiBpKHQsZSl7aWYoInVuZGVmaW5lZCI9PXR5cGVvZiB1KXRocm93IG5ldyBUeXBlRXJyb3IoIkJvb3RzdHJhcCdzIHRvb2x0aXBzIHJlcXVpcmUgUG9wcGVyLmpzIChodHRwczovL3BvcHBlci5qcy5vcmcvKSIpO3RoaXMuX2lzRW5hYmxlZD0hMCx0aGlzLl90aW1lb3V0PTAsdGhpcy5faG92ZXJTdGF0ZT0iIix0aGlzLl9hY3RpdmVUcmlnZ2VyPXt9LHRoaXMuX3BvcHBlcj1udWxsLHRoaXMuZWxlbWVudD10LHRoaXMuY29uZmlnPXRoaXMuX2dldENvbmZpZyhlKSx0aGlzLnRpcD1udWxsLHRoaXMuX3NldExpc3RlbmVycygpfXZhciB0PWkucHJvdG90eXBlO3JldHVybiB0LmVuYWJsZT1mdW5jdGlvbigpe3RoaXMuX2lzRW5hYmxlZD0hMH0sdC5kaXNhYmxlPWZ1bmN0aW9uKCl7dGhpcy5faXNFbmFibGVkPSExfSx0LnRvZ2dsZUVuYWJsZWQ9ZnVuY3Rpb24oKXt0aGlzLl9pc0VuYWJsZWQ9IXRoaXMuX2lzRW5hYmxlZH0sdC50b2dnbGU9ZnVuY3Rpb24odCl7aWYodGhpcy5faXNFbmFibGVkKWlmKHQpe3ZhciBlPXRoaXMuY29uc3RydWN0b3IuREFUQV9LRVksbj1nKHQuY3VycmVudFRhcmdldCkuZGF0YShlKTtufHwobj1uZXcgdGhpcy5jb25zdHJ1Y3Rvcih0LmN1cnJlbnRUYXJnZXQsdGhpcy5fZ2V0RGVsZWdhdGVDb25maWcoKSksZyh0LmN1cnJlbnRUYXJnZXQpLmRhdGEoZSxuKSksbi5fYWN0aXZlVHJpZ2dlci5jbGljaz0hbi5fYWN0aXZlVHJpZ2dlci5jbGljayxuLl9pc1dpdGhBY3RpdmVUcmlnZ2VyKCk/bi5fZW50ZXIobnVsbCxuKTpuLl9sZWF2ZShudWxsLG4pfWVsc2V7aWYoZyh0aGlzLmdldFRpcEVsZW1lbnQoKSkuaGFzQ2xhc3MoRmUpKXJldHVybiB2b2lkIHRoaXMuX2xlYXZlKG51bGwsdGhpcyk7dGhpcy5fZW50ZXIobnVsbCx0aGlzKX19LHQuZGlzcG9zZT1mdW5jdGlvbigpe2NsZWFyVGltZW91dCh0aGlzLl90aW1lb3V0KSxnLnJlbW92ZURhdGEodGhpcy5lbGVtZW50LHRoaXMuY29uc3RydWN0b3IuREFUQV9LRVkpLGcodGhpcy5lbGVtZW50KS5vZmYodGhpcy5jb25zdHJ1Y3Rvci5FVkVOVF9LRVkpLGcodGhpcy5lbGVtZW50KS5jbG9zZXN0KCIubW9kYWwiKS5vZmYoImhpZGUuYnMubW9kYWwiKSx0aGlzLnRpcCYmZyh0aGlzLnRpcCkucmVtb3ZlKCksdGhpcy5faXNFbmFibGVkPW51bGwsdGhpcy5fdGltZW91dD1udWxsLHRoaXMuX2hvdmVyU3RhdGU9bnVsbCwodGhpcy5fYWN0aXZlVHJpZ2dlcj1udWxsKSE9PXRoaXMuX3BvcHBlciYmdGhpcy5fcG9wcGVyLmRlc3Ryb3koKSx0aGlzLl9wb3BwZXI9bnVsbCx0aGlzLmVsZW1lbnQ9bnVsbCx0aGlzLmNvbmZpZz1udWxsLHRoaXMudGlwPW51bGx9LHQuc2hvdz1mdW5jdGlvbigpe3ZhciBlPXRoaXM7aWYoIm5vbmUiPT09Zyh0aGlzLmVsZW1lbnQpLmNzcygiZGlzcGxheSIpKXRocm93IG5ldyBFcnJvcigiUGxlYXNlIHVzZSBzaG93IG9uIHZpc2libGUgZWxlbWVudHMiKTt2YXIgdD1nLkV2ZW50KHRoaXMuY29uc3RydWN0b3IuRXZlbnQuU0hPVyk7aWYodGhpcy5pc1dpdGhDb250ZW50KCkmJnRoaXMuX2lzRW5hYmxlZCl7Zyh0aGlzLmVsZW1lbnQpLnRyaWdnZXIodCk7dmFyIG49Xy5maW5kU2hhZG93Um9vdCh0aGlzLmVsZW1lbnQpLGk9Zy5jb250YWlucyhudWxsIT09bj9uOnRoaXMuZWxlbWVudC5vd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudCx0aGlzLmVsZW1lbnQpO2lmKHQuaXNEZWZhdWx0UHJldmVudGVkKCl8fCFpKXJldHVybjt2YXIgbz10aGlzLmdldFRpcEVsZW1lbnQoKSxyPV8uZ2V0VUlEKHRoaXMuY29uc3RydWN0b3IuTkFNRSk7by5zZXRBdHRyaWJ1dGUoImlkIixyKSx0aGlzLmVsZW1lbnQuc2V0QXR0cmlidXRlKCJhcmlhLWRlc2NyaWJlZGJ5IixyKSx0aGlzLnNldENvbnRlbnQoKSx0aGlzLmNvbmZpZy5hbmltYXRpb24mJmcobykuYWRkQ2xhc3MoeGUpO3ZhciBzPSJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLmNvbmZpZy5wbGFjZW1lbnQ/dGhpcy5jb25maWcucGxhY2VtZW50LmNhbGwodGhpcyxvLHRoaXMuZWxlbWVudCk6dGhpcy5jb25maWcucGxhY2VtZW50LGE9dGhpcy5fZ2V0QXR0YWNobWVudChzKTt0aGlzLmFkZEF0dGFjaG1lbnRDbGFzcyhhKTt2YXIgbD10aGlzLl9nZXRDb250YWluZXIoKTtnKG8pLmRhdGEodGhpcy5jb25zdHJ1Y3Rvci5EQVRBX0tFWSx0aGlzKSxnLmNvbnRhaW5zKHRoaXMuZWxlbWVudC5vd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudCx0aGlzLnRpcCl8fGcobykuYXBwZW5kVG8obCksZyh0aGlzLmVsZW1lbnQpLnRyaWdnZXIodGhpcy5jb25zdHJ1Y3Rvci5FdmVudC5JTlNFUlRFRCksdGhpcy5fcG9wcGVyPW5ldyB1KHRoaXMuZWxlbWVudCxvLHtwbGFjZW1lbnQ6YSxtb2RpZmllcnM6e29mZnNldDp0aGlzLl9nZXRPZmZzZXQoKSxmbGlwOntiZWhhdmlvcjp0aGlzLmNvbmZpZy5mYWxsYmFja1BsYWNlbWVudH0sYXJyb3c6e2VsZW1lbnQ6V2V9LHByZXZlbnRPdmVyZmxvdzp7Ym91bmRhcmllc0VsZW1lbnQ6dGhpcy5jb25maWcuYm91bmRhcnl9fSxvbkNyZWF0ZTpmdW5jdGlvbih0KXt0Lm9yaWdpbmFsUGxhY2VtZW50IT09dC5wbGFjZW1lbnQmJmUuX2hhbmRsZVBvcHBlclBsYWNlbWVudENoYW5nZSh0KX0sb25VcGRhdGU6ZnVuY3Rpb24odCl7cmV0dXJuIGUuX2hhbmRsZVBvcHBlclBsYWNlbWVudENoYW5nZSh0KX19KSxnKG8pLmFkZENsYXNzKEZlKSwib250b3VjaHN0YXJ0ImluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCYmZyhkb2N1bWVudC5ib2R5KS5jaGlsZHJlbigpLm9uKCJtb3VzZW92ZXIiLG51bGwsZy5ub29wKTt2YXIgYz1mdW5jdGlvbigpe2UuY29uZmlnLmFuaW1hdGlvbiYmZS5fZml4VHJhbnNpdGlvbigpO3ZhciB0PWUuX2hvdmVyU3RhdGU7ZS5faG92ZXJTdGF0ZT1udWxsLGcoZS5lbGVtZW50KS50cmlnZ2VyKGUuY29uc3RydWN0b3IuRXZlbnQuU0hPV04pLHQ9PT1IZSYmZS5fbGVhdmUobnVsbCxlKX07aWYoZyh0aGlzLnRpcCkuaGFzQ2xhc3MoeGUpKXt2YXIgaD1fLmdldFRyYW5zaXRpb25EdXJhdGlvbkZyb21FbGVtZW50KHRoaXMudGlwKTtnKHRoaXMudGlwKS5vbmUoXy5UUkFOU0lUSU9OX0VORCxjKS5lbXVsYXRlVHJhbnNpdGlvbkVuZChoKX1lbHNlIGMoKX19LHQuaGlkZT1mdW5jdGlvbih0KXt2YXIgZT10aGlzLG49dGhpcy5nZXRUaXBFbGVtZW50KCksaT1nLkV2ZW50KHRoaXMuY29uc3RydWN0b3IuRXZlbnQuSElERSksbz1mdW5jdGlvbigpe2UuX2hvdmVyU3RhdGUhPT1qZSYmbi5wYXJlbnROb2RlJiZuLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQobiksZS5fY2xlYW5UaXBDbGFzcygpLGUuZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUoImFyaWEtZGVzY3JpYmVkYnkiKSxnKGUuZWxlbWVudCkudHJpZ2dlcihlLmNvbnN0cnVjdG9yLkV2ZW50LkhJRERFTiksbnVsbCE9PWUuX3BvcHBlciYmZS5fcG9wcGVyLmRlc3Ryb3koKSx0JiZ0KCl9O2lmKGcodGhpcy5lbGVtZW50KS50cmlnZ2VyKGkpLCFpLmlzRGVmYXVsdFByZXZlbnRlZCgpKXtpZihnKG4pLnJlbW92ZUNsYXNzKEZlKSwib250b3VjaHN0YXJ0ImluIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCYmZyhkb2N1bWVudC5ib2R5KS5jaGlsZHJlbigpLm9mZigibW91c2VvdmVyIixudWxsLGcubm9vcCksdGhpcy5fYWN0aXZlVHJpZ2dlcltLZV09ITEsdGhpcy5fYWN0aXZlVHJpZ2dlcltNZV09ITEsdGhpcy5fYWN0aXZlVHJpZ2dlcltxZV09ITEsZyh0aGlzLnRpcCkuaGFzQ2xhc3MoeGUpKXt2YXIgcj1fLmdldFRyYW5zaXRpb25EdXJhdGlvbkZyb21FbGVtZW50KG4pO2cobikub25lKF8uVFJBTlNJVElPTl9FTkQsbykuZW11bGF0ZVRyYW5zaXRpb25FbmQocil9ZWxzZSBvKCk7dGhpcy5faG92ZXJTdGF0ZT0iIn19LHQudXBkYXRlPWZ1bmN0aW9uKCl7bnVsbCE9PXRoaXMuX3BvcHBlciYmdGhpcy5fcG9wcGVyLnNjaGVkdWxlVXBkYXRlKCl9LHQuaXNXaXRoQ29udGVudD1mdW5jdGlvbigpe3JldHVybiBCb29sZWFuKHRoaXMuZ2V0VGl0bGUoKSl9LHQuYWRkQXR0YWNobWVudENsYXNzPWZ1bmN0aW9uKHQpe2codGhpcy5nZXRUaXBFbGVtZW50KCkpLmFkZENsYXNzKEFlKyItIit0KX0sdC5nZXRUaXBFbGVtZW50PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudGlwPXRoaXMudGlwfHxnKHRoaXMuY29uZmlnLnRlbXBsYXRlKVswXSx0aGlzLnRpcH0sdC5zZXRDb250ZW50PWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5nZXRUaXBFbGVtZW50KCk7dGhpcy5zZXRFbGVtZW50Q29udGVudChnKHQucXVlcnlTZWxlY3RvckFsbChVZSkpLHRoaXMuZ2V0VGl0bGUoKSksZyh0KS5yZW1vdmVDbGFzcyh4ZSsiICIrRmUpfSx0LnNldEVsZW1lbnRDb250ZW50PWZ1bmN0aW9uKHQsZSl7Im9iamVjdCIhPXR5cGVvZiBlfHwhZS5ub2RlVHlwZSYmIWUuanF1ZXJ5P3RoaXMuY29uZmlnLmh0bWw/KHRoaXMuY29uZmlnLnNhbml0aXplJiYoZT1TZShlLHRoaXMuY29uZmlnLndoaXRlTGlzdCx0aGlzLmNvbmZpZy5zYW5pdGl6ZUZuKSksdC5odG1sKGUpKTp0LnRleHQoZSk6dGhpcy5jb25maWcuaHRtbD9nKGUpLnBhcmVudCgpLmlzKHQpfHx0LmVtcHR5KCkuYXBwZW5kKGUpOnQudGV4dChnKGUpLnRleHQoKSl9LHQuZ2V0VGl0bGU9ZnVuY3Rpb24oKXt2YXIgdD10aGlzLmVsZW1lbnQuZ2V0QXR0cmlidXRlKCJkYXRhLW9yaWdpbmFsLXRpdGxlIik7cmV0dXJuIHR8fCh0PSJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLmNvbmZpZy50aXRsZT90aGlzLmNvbmZpZy50aXRsZS5jYWxsKHRoaXMuZWxlbWVudCk6dGhpcy5jb25maWcudGl0bGUpLHR9LHQuX2dldE9mZnNldD1mdW5jdGlvbigpe3ZhciBlPXRoaXMsdD17fTtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5jb25maWcub2Zmc2V0P3QuZm49ZnVuY3Rpb24odCl7cmV0dXJuIHQub2Zmc2V0cz1sKHt9LHQub2Zmc2V0cyxlLmNvbmZpZy5vZmZzZXQodC5vZmZzZXRzLGUuZWxlbWVudCl8fHt9KSx0fTp0Lm9mZnNldD10aGlzLmNvbmZpZy5vZmZzZXQsdH0sdC5fZ2V0Q29udGFpbmVyPWZ1bmN0aW9uKCl7cmV0dXJuITE9PT10aGlzLmNvbmZpZy5jb250YWluZXI/ZG9jdW1lbnQuYm9keTpfLmlzRWxlbWVudCh0aGlzLmNvbmZpZy5jb250YWluZXIpP2codGhpcy5jb25maWcuY29udGFpbmVyKTpnKGRvY3VtZW50KS5maW5kKHRoaXMuY29uZmlnLmNvbnRhaW5lcil9LHQuX2dldEF0dGFjaG1lbnQ9ZnVuY3Rpb24odCl7cmV0dXJuIFBlW3QudG9VcHBlckNhc2UoKV19LHQuX3NldExpc3RlbmVycz1mdW5jdGlvbigpe3ZhciBpPXRoaXM7dGhpcy5jb25maWcudHJpZ2dlci5zcGxpdCgiICIpLmZvckVhY2goZnVuY3Rpb24odCl7aWYoImNsaWNrIj09PXQpZyhpLmVsZW1lbnQpLm9uKGkuY29uc3RydWN0b3IuRXZlbnQuQ0xJQ0ssaS5jb25maWcuc2VsZWN0b3IsZnVuY3Rpb24odCl7cmV0dXJuIGkudG9nZ2xlKHQpfSk7ZWxzZSBpZih0IT09UWUpe3ZhciBlPXQ9PT1xZT9pLmNvbnN0cnVjdG9yLkV2ZW50Lk1PVVNFRU5URVI6aS5jb25zdHJ1Y3Rvci5FdmVudC5GT0NVU0lOLG49dD09PXFlP2kuY29uc3RydWN0b3IuRXZlbnQuTU9VU0VMRUFWRTppLmNvbnN0cnVjdG9yLkV2ZW50LkZPQ1VTT1VUO2coaS5lbGVtZW50KS5vbihlLGkuY29uZmlnLnNlbGVjdG9yLGZ1bmN0aW9uKHQpe3JldHVybiBpLl9lbnRlcih0KX0pLm9uKG4saS5jb25maWcuc2VsZWN0b3IsZnVuY3Rpb24odCl7cmV0dXJuIGkuX2xlYXZlKHQpfSl9fSksZyh0aGlzLmVsZW1lbnQpLmNsb3Nlc3QoIi5tb2RhbCIpLm9uKCJoaWRlLmJzLm1vZGFsIixmdW5jdGlvbigpe2kuZWxlbWVudCYmaS5oaWRlKCl9KSx0aGlzLmNvbmZpZy5zZWxlY3Rvcj90aGlzLmNvbmZpZz1sKHt9LHRoaXMuY29uZmlnLHt0cmlnZ2VyOiJtYW51YWwiLHNlbGVjdG9yOiIifSk6dGhpcy5fZml4VGl0bGUoKX0sdC5fZml4VGl0bGU9ZnVuY3Rpb24oKXt2YXIgdD10eXBlb2YgdGhpcy5lbGVtZW50LmdldEF0dHJpYnV0ZSgiZGF0YS1vcmlnaW5hbC10aXRsZSIpOyh0aGlzLmVsZW1lbnQuZ2V0QXR0cmlidXRlKCJ0aXRsZSIpfHwic3RyaW5nIiE9PXQpJiYodGhpcy5lbGVtZW50LnNldEF0dHJpYnV0ZSgiZGF0YS1vcmlnaW5hbC10aXRsZSIsdGhpcy5lbGVtZW50LmdldEF0dHJpYnV0ZSgidGl0bGUiKXx8IiIpLHRoaXMuZWxlbWVudC5zZXRBdHRyaWJ1dGUoInRpdGxlIiwiIikpfSx0Ll9lbnRlcj1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXMuY29uc3RydWN0b3IuREFUQV9LRVk7KGU9ZXx8Zyh0LmN1cnJlbnRUYXJnZXQpLmRhdGEobikpfHwoZT1uZXcgdGhpcy5jb25zdHJ1Y3Rvcih0LmN1cnJlbnRUYXJnZXQsdGhpcy5fZ2V0RGVsZWdhdGVDb25maWcoKSksZyh0LmN1cnJlbnRUYXJnZXQpLmRhdGEobixlKSksdCYmKGUuX2FjdGl2ZVRyaWdnZXJbImZvY3VzaW4iPT09dC50eXBlP01lOnFlXT0hMCksZyhlLmdldFRpcEVsZW1lbnQoKSkuaGFzQ2xhc3MoRmUpfHxlLl9ob3ZlclN0YXRlPT09amU/ZS5faG92ZXJTdGF0ZT1qZTooY2xlYXJUaW1lb3V0KGUuX3RpbWVvdXQpLGUuX2hvdmVyU3RhdGU9amUsZS5jb25maWcuZGVsYXkmJmUuY29uZmlnLmRlbGF5LnNob3c/ZS5fdGltZW91dD1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZS5faG92ZXJTdGF0ZT09PWplJiZlLnNob3coKX0sZS5jb25maWcuZGVsYXkuc2hvdyk6ZS5zaG93KCkpfSx0Ll9sZWF2ZT1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXMuY29uc3RydWN0b3IuREFUQV9LRVk7KGU9ZXx8Zyh0LmN1cnJlbnRUYXJnZXQpLmRhdGEobikpfHwoZT1uZXcgdGhpcy5jb25zdHJ1Y3Rvcih0LmN1cnJlbnRUYXJnZXQsdGhpcy5fZ2V0RGVsZWdhdGVDb25maWcoKSksZyh0LmN1cnJlbnRUYXJnZXQpLmRhdGEobixlKSksdCYmKGUuX2FjdGl2ZVRyaWdnZXJbImZvY3Vzb3V0Ij09PXQudHlwZT9NZTpxZV09ITEpLGUuX2lzV2l0aEFjdGl2ZVRyaWdnZXIoKXx8KGNsZWFyVGltZW91dChlLl90aW1lb3V0KSxlLl9ob3ZlclN0YXRlPUhlLGUuY29uZmlnLmRlbGF5JiZlLmNvbmZpZy5kZWxheS5oaWRlP2UuX3RpbWVvdXQ9c2V0VGltZW91dChmdW5jdGlvbigpe2UuX2hvdmVyU3RhdGU9PT1IZSYmZS5oaWRlKCl9LGUuY29uZmlnLmRlbGF5LmhpZGUpOmUuaGlkZSgpKX0sdC5faXNXaXRoQWN0aXZlVHJpZ2dlcj1mdW5jdGlvbigpe2Zvcih2YXIgdCBpbiB0aGlzLl9hY3RpdmVUcmlnZ2VyKWlmKHRoaXMuX2FjdGl2ZVRyaWdnZXJbdF0pcmV0dXJuITA7cmV0dXJuITF9LHQuX2dldENvbmZpZz1mdW5jdGlvbih0KXt2YXIgZT1nKHRoaXMuZWxlbWVudCkuZGF0YSgpO3JldHVybiBPYmplY3Qua2V5cyhlKS5mb3JFYWNoKGZ1bmN0aW9uKHQpey0xIT09T2UuaW5kZXhPZih0KSYmZGVsZXRlIGVbdF19KSwibnVtYmVyIj09dHlwZW9mKHQ9bCh7fSx0aGlzLmNvbnN0cnVjdG9yLkRlZmF1bHQsZSwib2JqZWN0Ij09dHlwZW9mIHQmJnQ/dDp7fSkpLmRlbGF5JiYodC5kZWxheT17c2hvdzp0LmRlbGF5LGhpZGU6dC5kZWxheX0pLCJudW1iZXIiPT10eXBlb2YgdC50aXRsZSYmKHQudGl0bGU9dC50aXRsZS50b1N0cmluZygpKSwibnVtYmVyIj09dHlwZW9mIHQuY29udGVudCYmKHQuY29udGVudD10LmNvbnRlbnQudG9TdHJpbmcoKSksXy50eXBlQ2hlY2tDb25maWcoYmUsdCx0aGlzLmNvbnN0cnVjdG9yLkRlZmF1bHRUeXBlKSx0LnNhbml0aXplJiYodC50ZW1wbGF0ZT1TZSh0LnRlbXBsYXRlLHQud2hpdGVMaXN0LHQuc2FuaXRpemVGbikpLHR9LHQuX2dldERlbGVnYXRlQ29uZmlnPWZ1bmN0aW9uKCl7dmFyIHQ9e307aWYodGhpcy5jb25maWcpZm9yKHZhciBlIGluIHRoaXMuY29uZmlnKXRoaXMuY29uc3RydWN0b3IuRGVmYXVsdFtlXSE9PXRoaXMuY29uZmlnW2VdJiYodFtlXT10aGlzLmNvbmZpZ1tlXSk7cmV0dXJuIHR9LHQuX2NsZWFuVGlwQ2xhc3M9ZnVuY3Rpb24oKXt2YXIgdD1nKHRoaXMuZ2V0VGlwRWxlbWVudCgpKSxlPXQuYXR0cigiY2xhc3MiKS5tYXRjaChOZSk7bnVsbCE9PWUmJmUubGVuZ3RoJiZ0LnJlbW92ZUNsYXNzKGUuam9pbigiIikpfSx0Ll9oYW5kbGVQb3BwZXJQbGFjZW1lbnRDaGFuZ2U9ZnVuY3Rpb24odCl7dmFyIGU9dC5pbnN0YW5jZTt0aGlzLnRpcD1lLnBvcHBlcix0aGlzLl9jbGVhblRpcENsYXNzKCksdGhpcy5hZGRBdHRhY2htZW50Q2xhc3ModGhpcy5fZ2V0QXR0YWNobWVudCh0LnBsYWNlbWVudCkpfSx0Ll9maXhUcmFuc2l0aW9uPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5nZXRUaXBFbGVtZW50KCksZT10aGlzLmNvbmZpZy5hbmltYXRpb247bnVsbD09PXQuZ2V0QXR0cmlidXRlKCJ4LXBsYWNlbWVudCIpJiYoZyh0KS5yZW1vdmVDbGFzcyh4ZSksdGhpcy5jb25maWcuYW5pbWF0aW9uPSExLHRoaXMuaGlkZSgpLHRoaXMuc2hvdygpLHRoaXMuY29uZmlnLmFuaW1hdGlvbj1lKX0saS5falF1ZXJ5SW50ZXJmYWNlPWZ1bmN0aW9uKG4pe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgdD1nKHRoaXMpLmRhdGEoSWUpLGU9Im9iamVjdCI9PXR5cGVvZiBuJiZuO2lmKCh0fHwhL2Rpc3Bvc2V8aGlkZS8udGVzdChuKSkmJih0fHwodD1uZXcgaSh0aGlzLGUpLGcodGhpcykuZGF0YShJZSx0KSksInN0cmluZyI9PXR5cGVvZiBuKSl7aWYoInVuZGVmaW5lZCI9PXR5cGVvZiB0W25dKXRocm93IG5ldyBUeXBlRXJyb3IoJ05vIG1ldGhvZCBuYW1lZCAiJytuKyciJyk7dFtuXSgpfX0pfSxzKGksbnVsbCxbe2tleToiVkVSU0lPTiIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIjQuMy4xIn19LHtrZXk6IkRlZmF1bHQiLGdldDpmdW5jdGlvbigpe3JldHVybiBMZX19LHtrZXk6Ik5BTUUiLGdldDpmdW5jdGlvbigpe3JldHVybiBiZX19LHtrZXk6IkRBVEFfS0VZIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gSWV9fSx7a2V5OiJFdmVudCIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIFJlfX0se2tleToiRVZFTlRfS0VZIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gRGV9fSx7a2V5OiJEZWZhdWx0VHlwZSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGtlfX1dKSxpfSgpO2cuZm5bYmVdPUJlLl9qUXVlcnlJbnRlcmZhY2UsZy5mbltiZV0uQ29uc3RydWN0b3I9QmUsZy5mbltiZV0ubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBnLmZuW2JlXT13ZSxCZS5falF1ZXJ5SW50ZXJmYWNlfTt2YXIgVmU9InBvcG92ZXIiLFllPSJicy5wb3BvdmVyIix6ZT0iLiIrWWUsWGU9Zy5mbltWZV0sJGU9ImJzLXBvcG92ZXIiLEdlPW5ldyBSZWdFeHAoIihefFxccykiKyRlKyJcXFMrIiwiZyIpLEplPWwoe30sQmUuRGVmYXVsdCx7cGxhY2VtZW50OiJyaWdodCIsdHJpZ2dlcjoiY2xpY2siLGNvbnRlbnQ6IiIsdGVtcGxhdGU6JzxkaXYgY2xhc3M9InBvcG92ZXIiIHJvbGU9InRvb2x0aXAiPjxkaXYgY2xhc3M9ImFycm93Ij48L2Rpdj48aDMgY2xhc3M9InBvcG92ZXItaGVhZGVyIj48L2gzPjxkaXYgY2xhc3M9InBvcG92ZXItYm9keSI+PC9kaXY+PC9kaXY+J30pLFplPWwoe30sQmUuRGVmYXVsdFR5cGUse2NvbnRlbnQ6IihzdHJpbmd8ZWxlbWVudHxmdW5jdGlvbikifSksdG49ImZhZGUiLGVuPSJzaG93Iixubj0iLnBvcG92ZXItaGVhZGVyIixvbj0iLnBvcG92ZXItYm9keSIscm49e0hJREU6ImhpZGUiK3plLEhJRERFTjoiaGlkZGVuIit6ZSxTSE9XOiJzaG93Iit6ZSxTSE9XTjoic2hvd24iK3plLElOU0VSVEVEOiJpbnNlcnRlZCIremUsQ0xJQ0s6ImNsaWNrIit6ZSxGT0NVU0lOOiJmb2N1c2luIit6ZSxGT0NVU09VVDoiZm9jdXNvdXQiK3plLE1PVVNFRU5URVI6Im1vdXNlZW50ZXIiK3plLE1PVVNFTEVBVkU6Im1vdXNlbGVhdmUiK3plfSxzbj1mdW5jdGlvbih0KXt2YXIgZSxuO2Z1bmN0aW9uIGkoKXtyZXR1cm4gdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fHRoaXN9bj10LChlPWkpLnByb3RvdHlwZT1PYmplY3QuY3JlYXRlKG4ucHJvdG90eXBlKSwoZS5wcm90b3R5cGUuY29uc3RydWN0b3I9ZSkuX19wcm90b19fPW47dmFyIG89aS5wcm90b3R5cGU7cmV0dXJuIG8uaXNXaXRoQ29udGVudD1mdW5jdGlvbigpe3JldHVybiB0aGlzLmdldFRpdGxlKCl8fHRoaXMuX2dldENvbnRlbnQoKX0sby5hZGRBdHRhY2htZW50Q2xhc3M9ZnVuY3Rpb24odCl7Zyh0aGlzLmdldFRpcEVsZW1lbnQoKSkuYWRkQ2xhc3MoJGUrIi0iK3QpfSxvLmdldFRpcEVsZW1lbnQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50aXA9dGhpcy50aXB8fGcodGhpcy5jb25maWcudGVtcGxhdGUpWzBdLHRoaXMudGlwfSxvLnNldENvbnRlbnQ9ZnVuY3Rpb24oKXt2YXIgdD1nKHRoaXMuZ2V0VGlwRWxlbWVudCgpKTt0aGlzLnNldEVsZW1lbnRDb250ZW50KHQuZmluZChubiksdGhpcy5nZXRUaXRsZSgpKTt2YXIgZT10aGlzLl9nZXRDb250ZW50KCk7ImZ1bmN0aW9uIj09dHlwZW9mIGUmJihlPWUuY2FsbCh0aGlzLmVsZW1lbnQpKSx0aGlzLnNldEVsZW1lbnRDb250ZW50KHQuZmluZChvbiksZSksdC5yZW1vdmVDbGFzcyh0bisiICIrZW4pfSxvLl9nZXRDb250ZW50PWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZWxlbWVudC5nZXRBdHRyaWJ1dGUoImRhdGEtY29udGVudCIpfHx0aGlzLmNvbmZpZy5jb250ZW50fSxvLl9jbGVhblRpcENsYXNzPWZ1bmN0aW9uKCl7dmFyIHQ9Zyh0aGlzLmdldFRpcEVsZW1lbnQoKSksZT10LmF0dHIoImNsYXNzIikubWF0Y2goR2UpO251bGwhPT1lJiYwPGUubGVuZ3RoJiZ0LnJlbW92ZUNsYXNzKGUuam9pbigiIikpfSxpLl9qUXVlcnlJbnRlcmZhY2U9ZnVuY3Rpb24obil7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciB0PWcodGhpcykuZGF0YShZZSksZT0ib2JqZWN0Ij09dHlwZW9mIG4/bjpudWxsO2lmKCh0fHwhL2Rpc3Bvc2V8aGlkZS8udGVzdChuKSkmJih0fHwodD1uZXcgaSh0aGlzLGUpLGcodGhpcykuZGF0YShZZSx0KSksInN0cmluZyI9PXR5cGVvZiBuKSl7aWYoInVuZGVmaW5lZCI9PXR5cGVvZiB0W25dKXRocm93IG5ldyBUeXBlRXJyb3IoJ05vIG1ldGhvZCBuYW1lZCAiJytuKyciJyk7dFtuXSgpfX0pfSxzKGksbnVsbCxbe2tleToiVkVSU0lPTiIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIjQuMy4xIn19LHtrZXk6IkRlZmF1bHQiLGdldDpmdW5jdGlvbigpe3JldHVybiBKZX19LHtrZXk6Ik5BTUUiLGdldDpmdW5jdGlvbigpe3JldHVybiBWZX19LHtrZXk6IkRBVEFfS0VZIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gWWV9fSx7a2V5OiJFdmVudCIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHJufX0se2tleToiRVZFTlRfS0VZIixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gemV9fSx7a2V5OiJEZWZhdWx0VHlwZSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIFplfX1dKSxpfShCZSk7Zy5mbltWZV09c24uX2pRdWVyeUludGVyZmFjZSxnLmZuW1ZlXS5Db25zdHJ1Y3Rvcj1zbixnLmZuW1ZlXS5ub0NvbmZsaWN0PWZ1bmN0aW9uKCl7cmV0dXJuIGcuZm5bVmVdPVhlLHNuLl9qUXVlcnlJbnRlcmZhY2V9O3ZhciBhbj0ic2Nyb2xsc3B5Iixsbj0iYnMuc2Nyb2xsc3B5Iixjbj0iLiIrbG4saG49Zy5mblthbl0sdW49e29mZnNldDoxMCxtZXRob2Q6ImF1dG8iLHRhcmdldDoiIn0sZm49e29mZnNldDoibnVtYmVyIixtZXRob2Q6InN0cmluZyIsdGFyZ2V0OiIoc3RyaW5nfGVsZW1lbnQpIn0sZG49e0FDVElWQVRFOiJhY3RpdmF0ZSIrY24sU0NST0xMOiJzY3JvbGwiK2NuLExPQURfREFUQV9BUEk6ImxvYWQiK2NuKyIuZGF0YS1hcGkifSxnbj0iZHJvcGRvd24taXRlbSIsX249ImFjdGl2ZSIsbW49J1tkYXRhLXNweT0ic2Nyb2xsIl0nLHBuPSIubmF2LCAubGlzdC1ncm91cCIsdm49Ii5uYXYtbGluayIseW49Ii5uYXYtaXRlbSIsRW49Ii5saXN0LWdyb3VwLWl0ZW0iLENuPSIuZHJvcGRvd24iLFRuPSIuZHJvcGRvd24taXRlbSIsU249Ii5kcm9wZG93bi10b2dnbGUiLGJuPSJvZmZzZXQiLEluPSJwb3NpdGlvbiIsRG49ZnVuY3Rpb24oKXtmdW5jdGlvbiBuKHQsZSl7dmFyIG49dGhpczt0aGlzLl9lbGVtZW50PXQsdGhpcy5fc2Nyb2xsRWxlbWVudD0iQk9EWSI9PT10LnRhZ05hbWU/d2luZG93OnQsdGhpcy5fY29uZmlnPXRoaXMuX2dldENvbmZpZyhlKSx0aGlzLl9zZWxlY3Rvcj10aGlzLl9jb25maWcudGFyZ2V0KyIgIit2bisiLCIrdGhpcy5fY29uZmlnLnRhcmdldCsiICIrRW4rIiwiK3RoaXMuX2NvbmZpZy50YXJnZXQrIiAiK1RuLHRoaXMuX29mZnNldHM9W10sdGhpcy5fdGFyZ2V0cz1bXSx0aGlzLl9hY3RpdmVUYXJnZXQ9bnVsbCx0aGlzLl9zY3JvbGxIZWlnaHQ9MCxnKHRoaXMuX3Njcm9sbEVsZW1lbnQpLm9uKGRuLlNDUk9MTCxmdW5jdGlvbih0KXtyZXR1cm4gbi5fcHJvY2Vzcyh0KX0pLHRoaXMucmVmcmVzaCgpLHRoaXMuX3Byb2Nlc3MoKX12YXIgdD1uLnByb3RvdHlwZTtyZXR1cm4gdC5yZWZyZXNoPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcyx0PXRoaXMuX3Njcm9sbEVsZW1lbnQ9PT10aGlzLl9zY3JvbGxFbGVtZW50LndpbmRvdz9ibjpJbixvPSJhdXRvIj09PXRoaXMuX2NvbmZpZy5tZXRob2Q/dDp0aGlzLl9jb25maWcubWV0aG9kLHI9bz09PUluP3RoaXMuX2dldFNjcm9sbFRvcCgpOjA7dGhpcy5fb2Zmc2V0cz1bXSx0aGlzLl90YXJnZXRzPVtdLHRoaXMuX3Njcm9sbEhlaWdodD10aGlzLl9nZXRTY3JvbGxIZWlnaHQoKSxbXS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwodGhpcy5fc2VsZWN0b3IpKS5tYXAoZnVuY3Rpb24odCl7dmFyIGUsbj1fLmdldFNlbGVjdG9yRnJvbUVsZW1lbnQodCk7aWYobiYmKGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcihuKSksZSl7dmFyIGk9ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtpZihpLndpZHRofHxpLmhlaWdodClyZXR1cm5bZyhlKVtvXSgpLnRvcCtyLG5dfXJldHVybiBudWxsfSkuZmlsdGVyKGZ1bmN0aW9uKHQpe3JldHVybiB0fSkuc29ydChmdW5jdGlvbih0LGUpe3JldHVybiB0WzBdLWVbMF19KS5mb3JFYWNoKGZ1bmN0aW9uKHQpe2UuX29mZnNldHMucHVzaCh0WzBdKSxlLl90YXJnZXRzLnB1c2godFsxXSl9KX0sdC5kaXNwb3NlPWZ1bmN0aW9uKCl7Zy5yZW1vdmVEYXRhKHRoaXMuX2VsZW1lbnQsbG4pLGcodGhpcy5fc2Nyb2xsRWxlbWVudCkub2ZmKGNuKSx0aGlzLl9lbGVtZW50PW51bGwsdGhpcy5fc2Nyb2xsRWxlbWVudD1udWxsLHRoaXMuX2NvbmZpZz1udWxsLHRoaXMuX3NlbGVjdG9yPW51bGwsdGhpcy5fb2Zmc2V0cz1udWxsLHRoaXMuX3RhcmdldHM9bnVsbCx0aGlzLl9hY3RpdmVUYXJnZXQ9bnVsbCx0aGlzLl9zY3JvbGxIZWlnaHQ9bnVsbH0sdC5fZ2V0Q29uZmlnPWZ1bmN0aW9uKHQpe2lmKCJzdHJpbmciIT10eXBlb2YodD1sKHt9LHVuLCJvYmplY3QiPT10eXBlb2YgdCYmdD90Ont9KSkudGFyZ2V0KXt2YXIgZT1nKHQudGFyZ2V0KS5hdHRyKCJpZCIpO2V8fChlPV8uZ2V0VUlEKGFuKSxnKHQudGFyZ2V0KS5hdHRyKCJpZCIsZSkpLHQudGFyZ2V0PSIjIitlfXJldHVybiBfLnR5cGVDaGVja0NvbmZpZyhhbix0LGZuKSx0fSx0Ll9nZXRTY3JvbGxUb3A9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fc2Nyb2xsRWxlbWVudD09PXdpbmRvdz90aGlzLl9zY3JvbGxFbGVtZW50LnBhZ2VZT2Zmc2V0OnRoaXMuX3Njcm9sbEVsZW1lbnQuc2Nyb2xsVG9wfSx0Ll9nZXRTY3JvbGxIZWlnaHQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fc2Nyb2xsRWxlbWVudC5zY3JvbGxIZWlnaHR8fE1hdGgubWF4KGRvY3VtZW50LmJvZHkuc2Nyb2xsSGVpZ2h0LGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxIZWlnaHQpfSx0Ll9nZXRPZmZzZXRIZWlnaHQ9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fc2Nyb2xsRWxlbWVudD09PXdpbmRvdz93aW5kb3cuaW5uZXJIZWlnaHQ6dGhpcy5fc2Nyb2xsRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHR9LHQuX3Byb2Nlc3M9ZnVuY3Rpb24oKXt2YXIgdD10aGlzLl9nZXRTY3JvbGxUb3AoKSt0aGlzLl9jb25maWcub2Zmc2V0LGU9dGhpcy5fZ2V0U2Nyb2xsSGVpZ2h0KCksbj10aGlzLl9jb25maWcub2Zmc2V0K2UtdGhpcy5fZ2V0T2Zmc2V0SGVpZ2h0KCk7aWYodGhpcy5fc2Nyb2xsSGVpZ2h0IT09ZSYmdGhpcy5yZWZyZXNoKCksbjw9dCl7dmFyIGk9dGhpcy5fdGFyZ2V0c1t0aGlzLl90YXJnZXRzLmxlbmd0aC0xXTt0aGlzLl9hY3RpdmVUYXJnZXQhPT1pJiZ0aGlzLl9hY3RpdmF0ZShpKX1lbHNle2lmKHRoaXMuX2FjdGl2ZVRhcmdldCYmdDx0aGlzLl9vZmZzZXRzWzBdJiYwPHRoaXMuX29mZnNldHNbMF0pcmV0dXJuIHRoaXMuX2FjdGl2ZVRhcmdldD1udWxsLHZvaWQgdGhpcy5fY2xlYXIoKTtmb3IodmFyIG89dGhpcy5fb2Zmc2V0cy5sZW5ndGg7by0tOyl7dGhpcy5fYWN0aXZlVGFyZ2V0IT09dGhpcy5fdGFyZ2V0c1tvXSYmdD49dGhpcy5fb2Zmc2V0c1tvXSYmKCJ1bmRlZmluZWQiPT10eXBlb2YgdGhpcy5fb2Zmc2V0c1tvKzFdfHx0PHRoaXMuX29mZnNldHNbbysxXSkmJnRoaXMuX2FjdGl2YXRlKHRoaXMuX3RhcmdldHNbb10pfX19LHQuX2FjdGl2YXRlPWZ1bmN0aW9uKGUpe3RoaXMuX2FjdGl2ZVRhcmdldD1lLHRoaXMuX2NsZWFyKCk7dmFyIHQ9dGhpcy5fc2VsZWN0b3Iuc3BsaXQoIiwiKS5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIHQrJ1tkYXRhLXRhcmdldD0iJytlKyciXSwnK3QrJ1tocmVmPSInK2UrJyJdJ30pLG49ZyhbXS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwodC5qb2luKCIsIikpKSk7bi5oYXNDbGFzcyhnbik/KG4uY2xvc2VzdChDbikuZmluZChTbikuYWRkQ2xhc3MoX24pLG4uYWRkQ2xhc3MoX24pKToobi5hZGRDbGFzcyhfbiksbi5wYXJlbnRzKHBuKS5wcmV2KHZuKyIsICIrRW4pLmFkZENsYXNzKF9uKSxuLnBhcmVudHMocG4pLnByZXYoeW4pLmNoaWxkcmVuKHZuKS5hZGRDbGFzcyhfbikpLGcodGhpcy5fc2Nyb2xsRWxlbWVudCkudHJpZ2dlcihkbi5BQ1RJVkFURSx7cmVsYXRlZFRhcmdldDplfSl9LHQuX2NsZWFyPWZ1bmN0aW9uKCl7W10uc2xpY2UuY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHRoaXMuX3NlbGVjdG9yKSkuZmlsdGVyKGZ1bmN0aW9uKHQpe3JldHVybiB0LmNsYXNzTGlzdC5jb250YWlucyhfbil9KS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3JldHVybiB0LmNsYXNzTGlzdC5yZW1vdmUoX24pfSl9LG4uX2pRdWVyeUludGVyZmFjZT1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIHQ9Zyh0aGlzKS5kYXRhKGxuKTtpZih0fHwodD1uZXcgbih0aGlzLCJvYmplY3QiPT10eXBlb2YgZSYmZSksZyh0aGlzKS5kYXRhKGxuLHQpKSwic3RyaW5nIj09dHlwZW9mIGUpe2lmKCJ1bmRlZmluZWQiPT10eXBlb2YgdFtlXSl0aHJvdyBuZXcgVHlwZUVycm9yKCdObyBtZXRob2QgbmFtZWQgIicrZSsnIicpO3RbZV0oKX19KX0scyhuLG51bGwsW3trZXk6IlZFUlNJT04iLGdldDpmdW5jdGlvbigpe3JldHVybiI0LjMuMSJ9fSx7a2V5OiJEZWZhdWx0IixnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdW59fV0pLG59KCk7Zyh3aW5kb3cpLm9uKGRuLkxPQURfREFUQV9BUEksZnVuY3Rpb24oKXtmb3IodmFyIHQ9W10uc2xpY2UuY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKG1uKSksZT10Lmxlbmd0aDtlLS07KXt2YXIgbj1nKHRbZV0pO0RuLl9qUXVlcnlJbnRlcmZhY2UuY2FsbChuLG4uZGF0YSgpKX19KSxnLmZuW2FuXT1Ebi5falF1ZXJ5SW50ZXJmYWNlLGcuZm5bYW5dLkNvbnN0cnVjdG9yPURuLGcuZm5bYW5dLm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gZy5mblthbl09aG4sRG4uX2pRdWVyeUludGVyZmFjZX07dmFyIHduPSJicy50YWIiLEFuPSIuIit3bixObj1nLmZuLnRhYixPbj17SElERToiaGlkZSIrQW4sSElEREVOOiJoaWRkZW4iK0FuLFNIT1c6InNob3ciK0FuLFNIT1dOOiJzaG93biIrQW4sQ0xJQ0tfREFUQV9BUEk6ImNsaWNrIitBbisiLmRhdGEtYXBpIn0sa249ImRyb3Bkb3duLW1lbnUiLFBuPSJhY3RpdmUiLExuPSJkaXNhYmxlZCIsam49ImZhZGUiLEhuPSJzaG93IixSbj0iLmRyb3Bkb3duIix4bj0iLm5hdiwgLmxpc3QtZ3JvdXAiLEZuPSIuYWN0aXZlIixVbj0iPiBsaSA+IC5hY3RpdmUiLFduPSdbZGF0YS10b2dnbGU9InRhYiJdLCBbZGF0YS10b2dnbGU9InBpbGwiXSwgW2RhdGEtdG9nZ2xlPSJsaXN0Il0nLHFuPSIuZHJvcGRvd24tdG9nZ2xlIixNbj0iPiAuZHJvcGRvd24tbWVudSAuYWN0aXZlIixLbj1mdW5jdGlvbigpe2Z1bmN0aW9uIGkodCl7dGhpcy5fZWxlbWVudD10fXZhciB0PWkucHJvdG90eXBlO3JldHVybiB0LnNob3c9ZnVuY3Rpb24oKXt2YXIgbj10aGlzO2lmKCEodGhpcy5fZWxlbWVudC5wYXJlbnROb2RlJiZ0aGlzLl9lbGVtZW50LnBhcmVudE5vZGUubm9kZVR5cGU9PT1Ob2RlLkVMRU1FTlRfTk9ERSYmZyh0aGlzLl9lbGVtZW50KS5oYXNDbGFzcyhQbil8fGcodGhpcy5fZWxlbWVudCkuaGFzQ2xhc3MoTG4pKSl7dmFyIHQsaSxlPWcodGhpcy5fZWxlbWVudCkuY2xvc2VzdCh4bilbMF0sbz1fLmdldFNlbGVjdG9yRnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7aWYoZSl7dmFyIHI9IlVMIj09PWUubm9kZU5hbWV8fCJPTCI9PT1lLm5vZGVOYW1lP1VuOkZuO2k9KGk9Zy5tYWtlQXJyYXkoZyhlKS5maW5kKHIpKSlbaS5sZW5ndGgtMV19dmFyIHM9Zy5FdmVudChPbi5ISURFLHtyZWxhdGVkVGFyZ2V0OnRoaXMuX2VsZW1lbnR9KSxhPWcuRXZlbnQoT24uU0hPVyx7cmVsYXRlZFRhcmdldDppfSk7aWYoaSYmZyhpKS50cmlnZ2VyKHMpLGcodGhpcy5fZWxlbWVudCkudHJpZ2dlcihhKSwhYS5pc0RlZmF1bHRQcmV2ZW50ZWQoKSYmIXMuaXNEZWZhdWx0UHJldmVudGVkKCkpe28mJih0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IobykpLHRoaXMuX2FjdGl2YXRlKHRoaXMuX2VsZW1lbnQsZSk7dmFyIGw9ZnVuY3Rpb24oKXt2YXIgdD1nLkV2ZW50KE9uLkhJRERFTix7cmVsYXRlZFRhcmdldDpuLl9lbGVtZW50fSksZT1nLkV2ZW50KE9uLlNIT1dOLHtyZWxhdGVkVGFyZ2V0Oml9KTtnKGkpLnRyaWdnZXIodCksZyhuLl9lbGVtZW50KS50cmlnZ2VyKGUpfTt0P3RoaXMuX2FjdGl2YXRlKHQsdC5wYXJlbnROb2RlLGwpOmwoKX19fSx0LmRpc3Bvc2U9ZnVuY3Rpb24oKXtnLnJlbW92ZURhdGEodGhpcy5fZWxlbWVudCx3biksdGhpcy5fZWxlbWVudD1udWxsfSx0Ll9hY3RpdmF0ZT1mdW5jdGlvbih0LGUsbil7dmFyIGk9dGhpcyxvPSghZXx8IlVMIiE9PWUubm9kZU5hbWUmJiJPTCIhPT1lLm5vZGVOYW1lP2coZSkuY2hpbGRyZW4oRm4pOmcoZSkuZmluZChVbikpWzBdLHI9biYmbyYmZyhvKS5oYXNDbGFzcyhqbikscz1mdW5jdGlvbigpe3JldHVybiBpLl90cmFuc2l0aW9uQ29tcGxldGUodCxvLG4pfTtpZihvJiZyKXt2YXIgYT1fLmdldFRyYW5zaXRpb25EdXJhdGlvbkZyb21FbGVtZW50KG8pO2cobykucmVtb3ZlQ2xhc3MoSG4pLm9uZShfLlRSQU5TSVRJT05fRU5ELHMpLmVtdWxhdGVUcmFuc2l0aW9uRW5kKGEpfWVsc2UgcygpfSx0Ll90cmFuc2l0aW9uQ29tcGxldGU9ZnVuY3Rpb24odCxlLG4pe2lmKGUpe2coZSkucmVtb3ZlQ2xhc3MoUG4pO3ZhciBpPWcoZS5wYXJlbnROb2RlKS5maW5kKE1uKVswXTtpJiZnKGkpLnJlbW92ZUNsYXNzKFBuKSwidGFiIj09PWUuZ2V0QXR0cmlidXRlKCJyb2xlIikmJmUuc2V0QXR0cmlidXRlKCJhcmlhLXNlbGVjdGVkIiwhMSl9aWYoZyh0KS5hZGRDbGFzcyhQbiksInRhYiI9PT10LmdldEF0dHJpYnV0ZSgicm9sZSIpJiZ0LnNldEF0dHJpYnV0ZSgiYXJpYS1zZWxlY3RlZCIsITApLF8ucmVmbG93KHQpLHQuY2xhc3NMaXN0LmNvbnRhaW5zKGpuKSYmdC5jbGFzc0xpc3QuYWRkKEhuKSx0LnBhcmVudE5vZGUmJmcodC5wYXJlbnROb2RlKS5oYXNDbGFzcyhrbikpe3ZhciBvPWcodCkuY2xvc2VzdChSbilbMF07aWYobyl7dmFyIHI9W10uc2xpY2UuY2FsbChvLnF1ZXJ5U2VsZWN0b3JBbGwocW4pKTtnKHIpLmFkZENsYXNzKFBuKX10LnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsITApfW4mJm4oKX0saS5falF1ZXJ5SW50ZXJmYWNlPWZ1bmN0aW9uKG4pe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgdD1nKHRoaXMpLGU9dC5kYXRhKHduKTtpZihlfHwoZT1uZXcgaSh0aGlzKSx0LmRhdGEod24sZSkpLCJzdHJpbmciPT10eXBlb2Ygbil7aWYoInVuZGVmaW5lZCI9PXR5cGVvZiBlW25dKXRocm93IG5ldyBUeXBlRXJyb3IoJ05vIG1ldGhvZCBuYW1lZCAiJytuKyciJyk7ZVtuXSgpfX0pfSxzKGksbnVsbCxbe2tleToiVkVSU0lPTiIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIjQuMy4xIn19XSksaX0oKTtnKGRvY3VtZW50KS5vbihPbi5DTElDS19EQVRBX0FQSSxXbixmdW5jdGlvbih0KXt0LnByZXZlbnREZWZhdWx0KCksS24uX2pRdWVyeUludGVyZmFjZS5jYWxsKGcodGhpcyksInNob3ciKX0pLGcuZm4udGFiPUtuLl9qUXVlcnlJbnRlcmZhY2UsZy5mbi50YWIuQ29uc3RydWN0b3I9S24sZy5mbi50YWIubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBnLmZuLnRhYj1ObixLbi5falF1ZXJ5SW50ZXJmYWNlfTt2YXIgUW49InRvYXN0IixCbj0iYnMudG9hc3QiLFZuPSIuIitCbixZbj1nLmZuW1FuXSx6bj17Q0xJQ0tfRElTTUlTUzoiY2xpY2suZGlzbWlzcyIrVm4sSElERToiaGlkZSIrVm4sSElEREVOOiJoaWRkZW4iK1ZuLFNIT1c6InNob3ciK1ZuLFNIT1dOOiJzaG93biIrVm59LFhuPSJmYWRlIiwkbj0iaGlkZSIsR249InNob3ciLEpuPSJzaG93aW5nIixabj17YW5pbWF0aW9uOiJib29sZWFuIixhdXRvaGlkZToiYm9vbGVhbiIsZGVsYXk6Im51bWJlciJ9LHRpPXthbmltYXRpb246ITAsYXV0b2hpZGU6ITAsZGVsYXk6NTAwfSxlaT0nW2RhdGEtZGlzbWlzcz0idG9hc3QiXScsbmk9ZnVuY3Rpb24oKXtmdW5jdGlvbiBpKHQsZSl7dGhpcy5fZWxlbWVudD10LHRoaXMuX2NvbmZpZz10aGlzLl9nZXRDb25maWcoZSksdGhpcy5fdGltZW91dD1udWxsLHRoaXMuX3NldExpc3RlbmVycygpfXZhciB0PWkucHJvdG90eXBlO3JldHVybiB0LnNob3c9ZnVuY3Rpb24oKXt2YXIgdD10aGlzO2codGhpcy5fZWxlbWVudCkudHJpZ2dlcih6bi5TSE9XKSx0aGlzLl9jb25maWcuYW5pbWF0aW9uJiZ0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoWG4pO3ZhciBlPWZ1bmN0aW9uKCl7dC5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKEpuKSx0Ll9lbGVtZW50LmNsYXNzTGlzdC5hZGQoR24pLGcodC5fZWxlbWVudCkudHJpZ2dlcih6bi5TSE9XTiksdC5fY29uZmlnLmF1dG9oaWRlJiZ0LmhpZGUoKX07aWYodGhpcy5fZWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKCRuKSx0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5hZGQoSm4pLHRoaXMuX2NvbmZpZy5hbmltYXRpb24pe3ZhciBuPV8uZ2V0VHJhbnNpdGlvbkR1cmF0aW9uRnJvbUVsZW1lbnQodGhpcy5fZWxlbWVudCk7Zyh0aGlzLl9lbGVtZW50KS5vbmUoXy5UUkFOU0lUSU9OX0VORCxlKS5lbXVsYXRlVHJhbnNpdGlvbkVuZChuKX1lbHNlIGUoKX0sdC5oaWRlPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXM7dGhpcy5fZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoR24pJiYoZyh0aGlzLl9lbGVtZW50KS50cmlnZ2VyKHpuLkhJREUpLHQ/dGhpcy5fY2xvc2UoKTp0aGlzLl90aW1lb3V0PXNldFRpbWVvdXQoZnVuY3Rpb24oKXtlLl9jbG9zZSgpfSx0aGlzLl9jb25maWcuZGVsYXkpKX0sdC5kaXNwb3NlPWZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KHRoaXMuX3RpbWVvdXQpLHRoaXMuX3RpbWVvdXQ9bnVsbCx0aGlzLl9lbGVtZW50LmNsYXNzTGlzdC5jb250YWlucyhHbikmJnRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShHbiksZyh0aGlzLl9lbGVtZW50KS5vZmYoem4uQ0xJQ0tfRElTTUlTUyksZy5yZW1vdmVEYXRhKHRoaXMuX2VsZW1lbnQsQm4pLHRoaXMuX2VsZW1lbnQ9bnVsbCx0aGlzLl9jb25maWc9bnVsbH0sdC5fZ2V0Q29uZmlnPWZ1bmN0aW9uKHQpe3JldHVybiB0PWwoe30sdGksZyh0aGlzLl9lbGVtZW50KS5kYXRhKCksIm9iamVjdCI9PXR5cGVvZiB0JiZ0P3Q6e30pLF8udHlwZUNoZWNrQ29uZmlnKFFuLHQsdGhpcy5jb25zdHJ1Y3Rvci5EZWZhdWx0VHlwZSksdH0sdC5fc2V0TGlzdGVuZXJzPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcztnKHRoaXMuX2VsZW1lbnQpLm9uKHpuLkNMSUNLX0RJU01JU1MsZWksZnVuY3Rpb24oKXtyZXR1cm4gdC5oaWRlKCEwKX0pfSx0Ll9jbG9zZT1mdW5jdGlvbigpe3ZhciB0PXRoaXMsZT1mdW5jdGlvbigpe3QuX2VsZW1lbnQuY2xhc3NMaXN0LmFkZCgkbiksZyh0Ll9lbGVtZW50KS50cmlnZ2VyKHpuLkhJRERFTil9O2lmKHRoaXMuX2VsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShHbiksdGhpcy5fY29uZmlnLmFuaW1hdGlvbil7dmFyIG49Xy5nZXRUcmFuc2l0aW9uRHVyYXRpb25Gcm9tRWxlbWVudCh0aGlzLl9lbGVtZW50KTtnKHRoaXMuX2VsZW1lbnQpLm9uZShfLlRSQU5TSVRJT05fRU5ELGUpLmVtdWxhdGVUcmFuc2l0aW9uRW5kKG4pfWVsc2UgZSgpfSxpLl9qUXVlcnlJbnRlcmZhY2U9ZnVuY3Rpb24obil7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciB0PWcodGhpcyksZT10LmRhdGEoQm4pO2lmKGV8fChlPW5ldyBpKHRoaXMsIm9iamVjdCI9PXR5cGVvZiBuJiZuKSx0LmRhdGEoQm4sZSkpLCJzdHJpbmciPT10eXBlb2Ygbil7aWYoInVuZGVmaW5lZCI9PXR5cGVvZiBlW25dKXRocm93IG5ldyBUeXBlRXJyb3IoJ05vIG1ldGhvZCBuYW1lZCAiJytuKyciJyk7ZVtuXSh0aGlzKX19KX0scyhpLG51bGwsW3trZXk6IlZFUlNJT04iLGdldDpmdW5jdGlvbigpe3JldHVybiI0LjMuMSJ9fSx7a2V5OiJEZWZhdWx0VHlwZSIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIFpufX0se2tleToiRGVmYXVsdCIsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRpfX1dKSxpfSgpO2cuZm5bUW5dPW5pLl9qUXVlcnlJbnRlcmZhY2UsZy5mbltRbl0uQ29uc3RydWN0b3I9bmksZy5mbltRbl0ubm9Db25mbGljdD1mdW5jdGlvbigpe3JldHVybiBnLmZuW1FuXT1ZbixuaS5falF1ZXJ5SW50ZXJmYWNlfSxmdW5jdGlvbigpe2lmKCJ1bmRlZmluZWQiPT10eXBlb2YgZyl0aHJvdyBuZXcgVHlwZUVycm9yKCJCb290c3RyYXAncyBKYXZhU2NyaXB0IHJlcXVpcmVzIGpRdWVyeS4galF1ZXJ5IG11c3QgYmUgaW5jbHVkZWQgYmVmb3JlIEJvb3RzdHJhcCdzIEphdmFTY3JpcHQuIik7dmFyIHQ9Zy5mbi5qcXVlcnkuc3BsaXQoIiAiKVswXS5zcGxpdCgiLiIpO2lmKHRbMF08MiYmdFsxXTw5fHwxPT09dFswXSYmOT09PXRbMV0mJnRbMl08MXx8NDw9dFswXSl0aHJvdyBuZXcgRXJyb3IoIkJvb3RzdHJhcCdzIEphdmFTY3JpcHQgcmVxdWlyZXMgYXQgbGVhc3QgalF1ZXJ5IHYxLjkuMSBidXQgbGVzcyB0aGFuIHY0LjAuMCIpfSgpLHQuVXRpbD1fLHQuQWxlcnQ9cCx0LkJ1dHRvbj1QLHQuQ2Fyb3VzZWw9bHQsdC5Db2xsYXBzZT1idCx0LkRyb3Bkb3duPUp0LHQuTW9kYWw9dmUsdC5Qb3BvdmVyPXNuLHQuU2Nyb2xsc3B5PURuLHQuVGFiPUtuLHQuVG9hc3Q9bmksdC5Ub29sdGlwPUJlLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KX0pOwovLyMgc291cmNlTWFwcGluZ1VSTD1ib290c3RyYXAubWluLmpzLm1hcA=="}},"time_used":352,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":352,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/code.jquery.com/jquery-migrate-1.2.1.min.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.054Z","timestamp":1785126256054,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /code.jquery.com/jquery-migrate-1.2.1.min.js HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: W/\"65211e70-1c1f\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":7199,"size_decoded":3117,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (7085)","md5":"eb05d8d73b5b13d8d84308a4751ece96","sha1":"743052320809514fb788fe1d3df37fc87ce90452","sha256":"1e67d8dbcca1f6fd94e077c85c2fb40fa1c2756c99238daa8da882144260a68d","sha512":"7b68a43a22a41404a2ff58e0da6a237492cad0fc3e56d216980802b4d5fb483895262a7e049340d6670002bdf899ba88c319239e60d0aae1ac31d98556b0ad6e","ssdeep":"96:tBySz91Gwyk35YrfBewIt9jKLKDs2SFNK7wIDBRANyCfVJ45NI:zySzvGw/35YbMx9jKLKD3UIDBR8VVUq","tlshash":"3fe196dc72aab5611ffa30a8503bd21b72b25aec140d95a4f08ccde5392cc5d413ab7e","first_seen":"2023-03-07T01:02:56Z","last_seen":"2026-07-27T06:23:25.87903Z","times_seen":24755,"resource_available":true,"data":"LyohIGpRdWVyeSBNaWdyYXRlIHYxLjIuMSB8IChjKSAyMDA1LCAyMDEzIGpRdWVyeSBGb3VuZGF0aW9uLCBJbmMuIGFuZCBvdGhlciBjb250cmlidXRvcnMgfCBqcXVlcnkub3JnL2xpY2Vuc2UgKi8KalF1ZXJ5Lm1pZ3JhdGVNdXRlPT09dm9pZCAwJiYoalF1ZXJ5Lm1pZ3JhdGVNdXRlPSEwKSxmdW5jdGlvbihlLHQsbil7ZnVuY3Rpb24gcihuKXt2YXIgcj10LmNvbnNvbGU7aVtuXXx8KGlbbl09ITAsZS5taWdyYXRlV2FybmluZ3MucHVzaChuKSxyJiZyLndhcm4mJiFlLm1pZ3JhdGVNdXRlJiYoci53YXJuKCJKUU1JR1JBVEU6ICIrbiksZS5taWdyYXRlVHJhY2UmJnIudHJhY2UmJnIudHJhY2UoKSkpfWZ1bmN0aW9uIGEodCxhLGksbyl7aWYoT2JqZWN0LmRlZmluZVByb3BlcnR5KXRyeXtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsYSx7Y29uZmlndXJhYmxlOiEwLGVudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHIobyksaX0sc2V0OmZ1bmN0aW9uKGUpe3IobyksaT1lfX0pLG59Y2F0Y2gocyl7fWUuX2RlZmluZVByb3BlcnR5QnJva2VuPSEwLHRbYV09aX12YXIgaT17fTtlLm1pZ3JhdGVXYXJuaW5ncz1bXSwhZS5taWdyYXRlTXV0ZSYmdC5jb25zb2xlJiZ0LmNvbnNvbGUubG9nJiZ0LmNvbnNvbGUubG9nKCJKUU1JR1JBVEU6IExvZ2dpbmcgaXMgYWN0aXZlIiksZS5taWdyYXRlVHJhY2U9PT1uJiYoZS5taWdyYXRlVHJhY2U9ITApLGUubWlncmF0ZVJlc2V0PWZ1bmN0aW9uKCl7aT17fSxlLm1pZ3JhdGVXYXJuaW5ncy5sZW5ndGg9MH0sIkJhY2tDb21wYXQiPT09ZG9jdW1lbnQuY29tcGF0TW9kZSYmcigialF1ZXJ5IGlzIG5vdCBjb21wYXRpYmxlIHdpdGggUXVpcmtzIE1vZGUiKTt2YXIgbz1lKCI8aW5wdXQvPiIse3NpemU6MX0pLmF0dHIoInNpemUiKSYmZS5hdHRyRm4scz1lLmF0dHIsdT1lLmF0dHJIb29rcy52YWx1ZSYmZS5hdHRySG9va3MudmFsdWUuZ2V0fHxmdW5jdGlvbigpe3JldHVybiBudWxsfSxjPWUuYXR0ckhvb2tzLnZhbHVlJiZlLmF0dHJIb29rcy52YWx1ZS5zZXR8fGZ1bmN0aW9uKCl7cmV0dXJuIG59LGw9L14oPzppbnB1dHxidXR0b24pJC9pLGQ9L15bMjM4XSQvLHA9L14oPzphdXRvZm9jdXN8YXV0b3BsYXl8YXN5bmN8Y2hlY2tlZHxjb250cm9sc3xkZWZlcnxkaXNhYmxlZHxoaWRkZW58bG9vcHxtdWx0aXBsZXxvcGVufHJlYWRvbmx5fHJlcXVpcmVkfHNjb3BlZHxzZWxlY3RlZCkkL2ksZj0vXig/OmNoZWNrZWR8c2VsZWN0ZWQpJC9pO2EoZSwiYXR0ckZuIixvfHx7fSwialF1ZXJ5LmF0dHJGbiBpcyBkZXByZWNhdGVkIiksZS5hdHRyPWZ1bmN0aW9uKHQsYSxpLHUpe3ZhciBjPWEudG9Mb3dlckNhc2UoKSxnPXQmJnQubm9kZVR5cGU7cmV0dXJuIHUmJig0PnMubGVuZ3RoJiZyKCJqUXVlcnkuZm4uYXR0ciggcHJvcHMsIHBhc3MgKSBpcyBkZXByZWNhdGVkIiksdCYmIWQudGVzdChnKSYmKG8/YSBpbiBvOmUuaXNGdW5jdGlvbihlLmZuW2FdKSkpP2UodClbYV0oaSk6KCJ0eXBlIj09PWEmJmkhPT1uJiZsLnRlc3QodC5ub2RlTmFtZSkmJnQucGFyZW50Tm9kZSYmcigiQ2FuJ3QgY2hhbmdlIHRoZSAndHlwZScgb2YgYW4gaW5wdXQgb3IgYnV0dG9uIGluIElFIDYvNy84IiksIWUuYXR0ckhvb2tzW2NdJiZwLnRlc3QoYykmJihlLmF0dHJIb29rc1tjXT17Z2V0OmZ1bmN0aW9uKHQscil7dmFyIGEsaT1lLnByb3AodCxyKTtyZXR1cm4gaT09PSEwfHwiYm9vbGVhbiIhPXR5cGVvZiBpJiYoYT10LmdldEF0dHJpYnV0ZU5vZGUocikpJiZhLm5vZGVWYWx1ZSE9PSExP3IudG9Mb3dlckNhc2UoKTpufSxzZXQ6ZnVuY3Rpb24odCxuLHIpe3ZhciBhO3JldHVybiBuPT09ITE/ZS5yZW1vdmVBdHRyKHQscik6KGE9ZS5wcm9wRml4W3JdfHxyLGEgaW4gdCYmKHRbYV09ITApLHQuc2V0QXR0cmlidXRlKHIsci50b0xvd2VyQ2FzZSgpKSkscn19LGYudGVzdChjKSYmcigialF1ZXJ5LmZuLmF0dHIoJyIrYysiJykgbWF5IHVzZSBwcm9wZXJ0eSBpbnN0ZWFkIG9mIGF0dHJpYnV0ZSIpKSxzLmNhbGwoZSx0LGEsaSkpfSxlLmF0dHJIb29rcy52YWx1ZT17Z2V0OmZ1bmN0aW9uKGUsdCl7dmFyIG49KGUubm9kZU5hbWV8fCIiKS50b0xvd2VyQ2FzZSgpO3JldHVybiJidXR0b24iPT09bj91LmFwcGx5KHRoaXMsYXJndW1lbnRzKTooImlucHV0IiE9PW4mJiJvcHRpb24iIT09biYmcigialF1ZXJ5LmZuLmF0dHIoJ3ZhbHVlJykgbm8gbG9uZ2VyIGdldHMgcHJvcGVydGllcyIpLHQgaW4gZT9lLnZhbHVlOm51bGwpfSxzZXQ6ZnVuY3Rpb24oZSx0KXt2YXIgYT0oZS5ub2RlTmFtZXx8IiIpLnRvTG93ZXJDYXNlKCk7cmV0dXJuImJ1dHRvbiI9PT1hP2MuYXBwbHkodGhpcyxhcmd1bWVudHMpOigiaW5wdXQiIT09YSYmIm9wdGlvbiIhPT1hJiZyKCJqUXVlcnkuZm4uYXR0cigndmFsdWUnLCB2YWwpIG5vIGxvbmdlciBzZXRzIHByb3BlcnRpZXMiKSxlLnZhbHVlPXQsbil9fTt2YXIgZyxoLHY9ZS5mbi5pbml0LG09ZS5wYXJzZUpTT04seT0vXihbXjxdKikoPFtcd1xXXSs+KShbXj5dKikkLztlLmZuLmluaXQ9ZnVuY3Rpb24odCxuLGEpe3ZhciBpO3JldHVybiB0JiYic3RyaW5nIj09dHlwZW9mIHQmJiFlLmlzUGxhaW5PYmplY3QobikmJihpPXkuZXhlYyhlLnRyaW0odCkpKSYmaVswXSYmKCI8IiE9PXQuY2hhckF0KDApJiZyKCIkKGh0bWwpIEhUTUwgc3RyaW5ncyBtdXN0IHN0YXJ0IHdpdGggJzwnIGNoYXJhY3RlciIpLGlbM10mJnIoIiQoaHRtbCkgSFRNTCB0ZXh0IGFmdGVyIGxhc3QgdGFnIGlzIGlnbm9yZWQiKSwiIyI9PT1pWzBdLmNoYXJBdCgwKSYmKHIoIkhUTUwgc3RyaW5nIGNhbm5vdCBzdGFydCB3aXRoIGEgJyMnIGNoYXJhY3RlciIpLGUuZXJyb3IoIkpRTUlHUkFURTogSW52YWxpZCBzZWxlY3RvciBzdHJpbmcgKFhTUykiKSksbiYmbi5jb250ZXh0JiYobj1uLmNvbnRleHQpLGUucGFyc2VIVE1MKT92LmNhbGwodGhpcyxlLnBhcnNlSFRNTChpWzJdLG4sITApLG4sYSk6di5hcHBseSh0aGlzLGFyZ3VtZW50cyl9LGUuZm4uaW5pdC5wcm90b3R5cGU9ZS5mbixlLnBhcnNlSlNPTj1mdW5jdGlvbihlKXtyZXR1cm4gZXx8bnVsbD09PWU/bS5hcHBseSh0aGlzLGFyZ3VtZW50cyk6KHIoImpRdWVyeS5wYXJzZUpTT04gcmVxdWlyZXMgYSB2YWxpZCBKU09OIHN0cmluZyIpLG51bGwpfSxlLnVhTWF0Y2g9ZnVuY3Rpb24oZSl7ZT1lLnRvTG93ZXJDYXNlKCk7dmFyIHQ9LyhjaHJvbWUpWyBcL10oW1x3Ll0rKS8uZXhlYyhlKXx8Lyh3ZWJraXQpWyBcL10oW1x3Ll0rKS8uZXhlYyhlKXx8LyhvcGVyYSkoPzouKnZlcnNpb258KVsgXC9dKFtcdy5dKykvLmV4ZWMoZSl8fC8obXNpZSkgKFtcdy5dKykvLmV4ZWMoZSl8fDA+ZS5pbmRleE9mKCJjb21wYXRpYmxlIikmJi8obW96aWxsYSkoPzouKj8gcnY6KFtcdy5dKyl8KS8uZXhlYyhlKXx8W107cmV0dXJue2Jyb3dzZXI6dFsxXXx8IiIsdmVyc2lvbjp0WzJdfHwiMCJ9fSxlLmJyb3dzZXJ8fChnPWUudWFNYXRjaChuYXZpZ2F0b3IudXNlckFnZW50KSxoPXt9LGcuYnJvd3NlciYmKGhbZy5icm93c2VyXT0hMCxoLnZlcnNpb249Zy52ZXJzaW9uKSxoLmNocm9tZT9oLndlYmtpdD0hMDpoLndlYmtpdCYmKGguc2FmYXJpPSEwKSxlLmJyb3dzZXI9aCksYShlLCJicm93c2VyIixlLmJyb3dzZXIsImpRdWVyeS5icm93c2VyIGlzIGRlcHJlY2F0ZWQiKSxlLnN1Yj1mdW5jdGlvbigpe2Z1bmN0aW9uIHQoZSxuKXtyZXR1cm4gbmV3IHQuZm4uaW5pdChlLG4pfWUuZXh0ZW5kKCEwLHQsdGhpcyksdC5zdXBlcmNsYXNzPXRoaXMsdC5mbj10LnByb3RvdHlwZT10aGlzKCksdC5mbi5jb25zdHJ1Y3Rvcj10LHQuc3ViPXRoaXMuc3ViLHQuZm4uaW5pdD1mdW5jdGlvbihyLGEpe3JldHVybiBhJiZhIGluc3RhbmNlb2YgZSYmIShhIGluc3RhbmNlb2YgdCkmJihhPXQoYSkpLGUuZm4uaW5pdC5jYWxsKHRoaXMscixhLG4pfSx0LmZuLmluaXQucHJvdG90eXBlPXQuZm47dmFyIG49dChkb2N1bWVudCk7cmV0dXJuIHIoImpRdWVyeS5zdWIoKSBpcyBkZXByZWNhdGVkIiksdH0sZS5hamF4U2V0dXAoe2NvbnZlcnRlcnM6eyJ0ZXh0IGpzb24iOmUucGFyc2VKU09OfX0pO3ZhciBiPWUuZm4uZGF0YTtlLmZuLmRhdGE9ZnVuY3Rpb24odCl7dmFyIGEsaSxvPXRoaXNbMF07cmV0dXJuIW98fCJldmVudHMiIT09dHx8MSE9PWFyZ3VtZW50cy5sZW5ndGh8fChhPWUuZGF0YShvLHQpLGk9ZS5fZGF0YShvLHQpLGEhPT1uJiZhIT09aXx8aT09PW4pP2IuYXBwbHkodGhpcyxhcmd1bWVudHMpOihyKCJVc2Ugb2YgalF1ZXJ5LmZuLmRhdGEoJ2V2ZW50cycpIGlzIGRlcHJlY2F0ZWQiKSxpKX07dmFyIGo9L1wvKGphdmF8ZWNtYSlzY3JpcHQvaSx3PWUuZm4uYW5kU2VsZnx8ZS5mbi5hZGRCYWNrO2UuZm4uYW5kU2VsZj1mdW5jdGlvbigpe3JldHVybiByKCJqUXVlcnkuZm4uYW5kU2VsZigpIHJlcGxhY2VkIGJ5IGpRdWVyeS5mbi5hZGRCYWNrKCkiKSx3LmFwcGx5KHRoaXMsYXJndW1lbnRzKX0sZS5jbGVhbnx8KGUuY2xlYW49ZnVuY3Rpb24odCxhLGksbyl7YT1hfHxkb2N1bWVudCxhPSFhLm5vZGVUeXBlJiZhWzBdfHxhLGE9YS5vd25lckRvY3VtZW50fHxhLHIoImpRdWVyeS5jbGVhbigpIGlzIGRlcHJlY2F0ZWQiKTt2YXIgcyx1LGMsbCxkPVtdO2lmKGUubWVyZ2UoZCxlLmJ1aWxkRnJhZ21lbnQodCxhKS5jaGlsZE5vZGVzKSxpKWZvcihjPWZ1bmN0aW9uKGUpe3JldHVybiFlLnR5cGV8fGoudGVzdChlLnR5cGUpP28/by5wdXNoKGUucGFyZW50Tm9kZT9lLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoZSk6ZSk6aS5hcHBlbmRDaGlsZChlKTpufSxzPTA7bnVsbCE9KHU9ZFtzXSk7cysrKWUubm9kZU5hbWUodSwic2NyaXB0IikmJmModSl8fChpLmFwcGVuZENoaWxkKHUpLHUuZ2V0RWxlbWVudHNCeVRhZ05hbWUhPT1uJiYobD1lLmdyZXAoZS5tZXJnZShbXSx1LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKSksYyksZC5zcGxpY2UuYXBwbHkoZCxbcysxLDBdLmNvbmNhdChsKSkscys9bC5sZW5ndGgpKTtyZXR1cm4gZH0pO3ZhciBRPWUuZXZlbnQuYWRkLHg9ZS5ldmVudC5yZW1vdmUsaz1lLmV2ZW50LnRyaWdnZXIsTj1lLmZuLnRvZ2dsZSxUPWUuZm4ubGl2ZSxNPWUuZm4uZGllLFM9ImFqYXhTdGFydHxhamF4U3RvcHxhamF4U2VuZHxhamF4Q29tcGxldGV8YWpheEVycm9yfGFqYXhTdWNjZXNzIixDPVJlZ0V4cCgiXFxiKD86IitTKyIpXFxiIiksSD0vKD86Xnxccylob3ZlcihcLlxTK3wpXGIvLEE9ZnVuY3Rpb24odCl7cmV0dXJuInN0cmluZyIhPXR5cGVvZiB0fHxlLmV2ZW50LnNwZWNpYWwuaG92ZXI/dDooSC50ZXN0KHQpJiZyKCInaG92ZXInIHBzZXVkby1ldmVudCBpcyBkZXByZWNhdGVkLCB1c2UgJ21vdXNlZW50ZXIgbW91c2VsZWF2ZSciKSx0JiZ0LnJlcGxhY2UoSCwibW91c2VlbnRlciQxIG1vdXNlbGVhdmUkMSIpKX07ZS5ldmVudC5wcm9wcyYmImF0dHJDaGFuZ2UiIT09ZS5ldmVudC5wcm9wc1swXSYmZS5ldmVudC5wcm9wcy51bnNoaWZ0KCJhdHRyQ2hhbmdlIiwiYXR0ck5hbWUiLCJyZWxhdGVkTm9kZSIsInNyY0VsZW1lbnQiKSxlLmV2ZW50LmRpc3BhdGNoJiZhKGUuZXZlbnQsImhhbmRsZSIsZS5ldmVudC5kaXNwYXRjaCwialF1ZXJ5LmV2ZW50LmhhbmRsZSBpcyB1bmRvY3VtZW50ZWQgYW5kIGRlcHJlY2F0ZWQiKSxlLmV2ZW50LmFkZD1mdW5jdGlvbihlLHQsbixhLGkpe2UhPT1kb2N1bWVudCYmQy50ZXN0KHQpJiZyKCJBSkFYIGV2ZW50cyBzaG91bGQgYmUgYXR0YWNoZWQgdG8gZG9jdW1lbnQ6ICIrdCksUS5jYWxsKHRoaXMsZSxBKHR8fCIiKSxuLGEsaSl9LGUuZXZlbnQucmVtb3ZlPWZ1bmN0aW9uKGUsdCxuLHIsYSl7eC5jYWxsKHRoaXMsZSxBKHQpfHwiIixuLHIsYSl9LGUuZm4uZXJyb3I9ZnVuY3Rpb24oKXt2YXIgZT1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMCk7cmV0dXJuIHIoImpRdWVyeS5mbi5lcnJvcigpIGlzIGRlcHJlY2F0ZWQiKSxlLnNwbGljZSgwLDAsImVycm9yIiksYXJndW1lbnRzLmxlbmd0aD90aGlzLmJpbmQuYXBwbHkodGhpcyxlKToodGhpcy50cmlnZ2VySGFuZGxlci5hcHBseSh0aGlzLGUpLHRoaXMpfSxlLmZuLnRvZ2dsZT1mdW5jdGlvbih0LG4pe2lmKCFlLmlzRnVuY3Rpb24odCl8fCFlLmlzRnVuY3Rpb24obikpcmV0dXJuIE4uYXBwbHkodGhpcyxhcmd1bWVudHMpO3IoImpRdWVyeS5mbi50b2dnbGUoaGFuZGxlciwgaGFuZGxlci4uLikgaXMgZGVwcmVjYXRlZCIpO3ZhciBhPWFyZ3VtZW50cyxpPXQuZ3VpZHx8ZS5ndWlkKyssbz0wLHM9ZnVuY3Rpb24obil7dmFyIHI9KGUuX2RhdGEodGhpcywibGFzdFRvZ2dsZSIrdC5ndWlkKXx8MCklbztyZXR1cm4gZS5fZGF0YSh0aGlzLCJsYXN0VG9nZ2xlIit0Lmd1aWQscisxKSxuLnByZXZlbnREZWZhdWx0KCksYVtyXS5hcHBseSh0aGlzLGFyZ3VtZW50cyl8fCExfTtmb3Iocy5ndWlkPWk7YS5sZW5ndGg+bzspYVtvKytdLmd1aWQ9aTtyZXR1cm4gdGhpcy5jbGljayhzKX0sZS5mbi5saXZlPWZ1bmN0aW9uKHQsbixhKXtyZXR1cm4gcigialF1ZXJ5LmZuLmxpdmUoKSBpcyBkZXByZWNhdGVkIiksVD9ULmFwcGx5KHRoaXMsYXJndW1lbnRzKTooZSh0aGlzLmNvbnRleHQpLm9uKHQsdGhpcy5zZWxlY3RvcixuLGEpLHRoaXMpfSxlLmZuLmRpZT1mdW5jdGlvbih0LG4pe3JldHVybiByKCJqUXVlcnkuZm4uZGllKCkgaXMgZGVwcmVjYXRlZCIpLE0/TS5hcHBseSh0aGlzLGFyZ3VtZW50cyk6KGUodGhpcy5jb250ZXh0KS5vZmYodCx0aGlzLnNlbGVjdG9yfHwiKioiLG4pLHRoaXMpfSxlLmV2ZW50LnRyaWdnZXI9ZnVuY3Rpb24oZSx0LG4sYSl7cmV0dXJuIG58fEMudGVzdChlKXx8cigiR2xvYmFsIGV2ZW50cyBhcmUgdW5kb2N1bWVudGVkIGFuZCBkZXByZWNhdGVkIiksay5jYWxsKHRoaXMsZSx0LG58fGRvY3VtZW50LGEpfSxlLmVhY2goUy5zcGxpdCgifCIpLGZ1bmN0aW9uKHQsbil7ZS5ldmVudC5zcGVjaWFsW25dPXtzZXR1cDpmdW5jdGlvbigpe3ZhciB0PXRoaXM7cmV0dXJuIHQhPT1kb2N1bWVudCYmKGUuZXZlbnQuYWRkKGRvY3VtZW50LG4rIi4iK2UuZ3VpZCxmdW5jdGlvbigpe2UuZXZlbnQudHJpZ2dlcihuLG51bGwsdCwhMCl9KSxlLl9kYXRhKHRoaXMsbixlLmd1aWQrKykpLCExfSx0ZWFyZG93bjpmdW5jdGlvbigpe3JldHVybiB0aGlzIT09ZG9jdW1lbnQmJmUuZXZlbnQucmVtb3ZlKGRvY3VtZW50LG4rIi4iK2UuX2RhdGEodGhpcyxuKSksITF9fX0pfShqUXVlcnksd2luZG93KTs="}},"time_used":350,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":350,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/images/monik3.png","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.092Z","timestamp":1785126256092,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/monik3.png HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/png\r\ncontent-length: 349977\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-55719\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":349977,"size_decoded":350229,"mime_type":"image/png","magic":"PNG image data, 878 x 747, 8-bit/color RGBA, non-interlaced","md5":"005630da2280194d85dfb39ba4949e85","sha1":"50839774c274fa9aa5901e5b8db032a35fb5e4f3","sha256":"fc4195b05d45d7016496b5aacc9c595f0f810926b70509b6fab717aa78832644","sha512":"ad95f265cd7326821103b67924f6fc2a6182fc3fc0fa7219528d2905c9cb203af3ce69af43a9862e35bd3cf93ee8b97c4c78530a02a01a70add7dd5c7f8ffb84","ssdeep":"6144:6ZpzQ6dmJtPNRg7j2LeF3AgPeH3s6CRXlL6fSvM1S5NXkQHp2y5CM7T:6ZD02jKeF/P++J3k1Gdp24CM","tlshash":"447423641680a68fd1e2f3f7425de464a82527435facce02739505fb98bf72836b938c","first_seen":"2025-08-09T17:53:17.867215Z","last_seen":"2026-07-27T04:25:12.619337Z","times_seen":10,"resource_available":false,"data":"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"}},"time_used":498,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":312,"receive":186,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","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/37867.ec731ad102db6762e40c.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.329Z","timestamp":1785126257329,"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-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/37867.ec731ad102db6762e40c.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/crypto-mkt-screener/?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 04:24:17 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/\"69f98b78-134\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Tue, 05 May 2026 06:17: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.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: 6b6cd1ff9b65f7af8b58b409fc8e3c45\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":308,"size_decoded":973,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (308), with no line terminators","md5":"935c55cc3e17810075bcce4ab81c1124","sha1":"af63671b9b4c5e480ce1ed8cf80fb5e6cd9a4901","sha256":"0660e1a2eac6aab1096c15e3927919c9f443ff7189df135f235a3aac5b88cd5a","sha512":"5fca3255a37ff2053cf3aac0373f856dd54b280aeeefee9e8f904f1c75266a63414feaa87a1bb692566c171879527baa045548e01ed46b623edd70d9cd15522d","ssdeep":"","tlshash":"01e026bc52740320ac308738b9ce8ccd3e05f22186c30e8ca942d602846d8c08860895","first_seen":"2025-07-09T23:41:09.652491Z","last_seen":"2026-07-27T07:14:43.791417Z","times_seen":1602,"resource_available":false,"data":"LnR2LWZsYWctY291bnRyeXtib3JkZXItcmFkaXVzOjUwJTtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MjBweDtvdmVyZmxvdzpoaWRkZW47dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjIwcHh9LnR2LWZsYWctY291bnRyeS0tc2l6ZV9ibG9jay10aXRsZXtoZWlnaHQ6MjJweDt3aWR0aDoyMnB4fS50di1mbGFnLWNvdW50cnktLWZvcmV4e2NvbG9yOnZhcigtLWNvbG9yLWZvcmV4LWljb24pfS50di1mbGFnLWNvdW50cnktLWJ0YywudHYtZmxhZy1jb3VudHJ5LS1mb3JleHtib3JkZXItcmFkaXVzOjA7b3ZlcmZsb3c6dmlzaWJsZX0="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCBABYL.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.720Z","timestamp":1785126258720,"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 /crypto/XTVCBABYL.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 04:24:18 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: \"3a2bafd498dfc3c0573548a55e5e34b1\"\r\nlast-modified: Wed, 30 Apr 2025 15:36:45 GMT\r\ncdn-cachedat: 08/14/2025 09:19:06\r\nx-amz-id-2: fZJRePwOfnFu9wPysR19brO6cz9JIYB//i6RILBDCvWTBtL6uZWoUlmYV/UEdqqtOqh0QCnnYhs=\r\nx-amz-request-id: 9B7A2X2YZC23PHJR\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 3a2bafd498dfc3c0573548a55e5e34b1\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: dd2ad887818863767d8ca4b93fc6065b\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":767,"size_decoded":1339,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (767), with no line terminators","md5":"3a2bafd498dfc3c0573548a55e5e34b1","sha1":"993e383db8a8c97a63465aaad93ec60f25c59638","sha256":"bc1a5a7810845ff712a15d9d7f8640f472a6ee1c27b319e9ffc1e089be50221e","sha512":"2822aae629be753a2f29215119ac3d0e17967fc1435e41e89c25ec5fa70d971c872a4a885e27aab74b2ac4edea2eca9d11f1928a3ba7c029560a2694c2846281","ssdeep":"","tlshash":"e8016b1de518d76c2081c2e4cb2bd075674f9066f1e15bd838eaabfd68575d6d402818","first_seen":"2026-03-08T18:24:07.005656Z","last_seen":"2026-07-27T07:05:43.416983Z","times_seen":305,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMxODFCMUUiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNOC42OSA1LjM0YS4zNC4zNCAwIDAgMC0uMjItLjMybC0yLjYtMWEuMzEuMzEgMCAwIDAtLjM0LjA4TDQuMSA1LjY0YS4zNi4zNiAwIDAgMC0uMDcuMzZMNS4xIDlsLTEuMDcgMy4wMWEuMzYuMzYgMCAwIDAgLjA3LjM2bDEuNDQgMS41M2MuMS4xLjIzLjEyLjM0LjA4bDIuNi0xYS4zNC4zNCAwIDAgMCAuMjItLjMxdi0uNTZjMC0uMDktLjA0LS4xOC0uMS0uMjRsLS43My0uNzgtMS43Ni42Ni42MS0xLjg3TDUuODcgOWwuODQtLjg4LS42Mi0xLjg4IDEuNzguNjYuNzItLjc3Yy4wNi0uMDYuMS0uMTUuMS0uMjR2LS41NFpNOS4zMSA1LjM0YzAtLjE0LjA5LS4yNy4yMi0uMzJsMi42LTFhLjMxLjMxIDAgMCAxIC4zNC4wOGwxLjQ0IDEuNTRjLjA5LjEuMTEuMjMuMDcuMzZMMTIuOSA5bDEuMDcgMy4wMWMuMDQuMTMuMDEuMjctLjA3LjM2bC0xLjQ0IDEuNTNhLjMxLjMxIDAgMCAxLS4zNC4wOGwtMi42LTFhLjM0LjM0IDAgMCAxLS4yMi0uMzF2LS41NmMwLS4wOS4wNC0uMTguMS0uMjRsLjczLS43OCAxLjc2LjY2LS42MS0xLjg3Ljg0LS44OS0uODQtLjg4LjYyLTEuODgtMS43OC42Ni0uNzItLjc3YS4zNS4zNSAwIDAgMS0uMS0uMjR2LS41NFoiIGZpbGw9IiNDQkZCRTUiLz48L3N2Zz4="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCMOODENG.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.740Z","timestamp":1785126258740,"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 /crypto/XTVCMOODENG.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 04:24:18 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: \"c1e074aaa369bba15d77f5e56a0de29c\"\r\nlast-modified: Fri, 25 Oct 2024 16:09:31 GMT\r\ncdn-cachedat: 08/09/2025 14:29:32\r\nx-amz-id-2: isLAoo69/ARO5BucVx9laooBMdcb0bg27pHNBRhssg7bkLtUA9+3rqeBNtSBoH0xMoxhSme8Rtc=\r\nx-amz-request-id: 4855FW8YQ8ZTW7JN\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: c1e074aaa369bba15d77f5e56a0de29c\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: ac7ef47a0adb820003c7997bfcb4e4b0\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":30618,"size_decoded":12247,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (30618), with no line terminators","md5":"c1e074aaa369bba15d77f5e56a0de29c","sha1":"0de4763c9968e1ce259739e1775d4a5e4ea184b9","sha256":"d32b62fc028c11852b926e85eddcc3742d9dfaef775e3dd857e1f4851b8c8ac6","sha512":"fe7099b689e399a90e935e712c29a52128dc47a42db866a6b12f02045a4db92544248d8f6b966a7d33915c0c21f9f9a9f95c62e9c0d4618162c991e0deb56493","ssdeep":"384:Thw7k8utAD1zANNekc1K7UxQNVnxhViTWaeNwyGvp1CdAezbqF8vBntdNaejOwVN:qxDz1cUxQNVnhiKLAjCdAweFnejOyN","tlshash":"b8d246556148e65c1883f74dc7bfd4e1234e405ab1ee96d82efee7ace00e694fd52820","first_seen":"2025-07-09T23:41:09.645807Z","last_seen":"2026-07-27T07:05:43.333702Z","times_seen":459,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTAuOTEgMy4zM2MtLjA3LjA4LS4xNy4xLS4yOC4wNWgtLjA1YS4zMy4zMyAwIDAgMC0uMS4xOGwtLjE5LS4xYS4wOC4wOCAwIDAgMC0uMDYgMCAuMjMuMjMgMCAwIDAtLjE0LjExYy0uMTUuMjgtLjMxLjM4LS40OC4zMmgtLjA2bC0uMzcuMjJhLjEuMSAwIDAgMS0uMSAwIC4zOC4zOCAwIDAgMC0uMzMtLjA0Yy0uMDIgMC0uMDQgMC0uMDUtLjAyYS44LjggMCAwIDEtLjA3LS4yYy0uMDItLjA2LS4wMy0uMS0uMDUtLjExLS4wOS0uMDctLjIzLS4wNy0uMzEtLjFhLjA5LjA5IDAgMCAxLS4wNS0uMDMuNTguNTggMCAwIDAtLjM3LS4yM2wtLjMtLjJhNS44NiA1Ljg2IDAgMCAxIDMuMzYuMTVaIiBmaWxsPSIjMUU1OTI0Ii8+PHBhdGggZD0ibTcuNTUgMy4xOS4zLjIuMTcuMTVjLjEuMDYuMTUuMS4xOC4xNC4wMy4wNS4wNy4xMS4xLjIuMDQuMDYuMDQuMTMuMDMuMi0uMDUuMTgtLjE3LjI2LS4zNS4yNWEyLjA4IDIuMDggMCAwIDEtLjctLjIuNC40IDAgMCAxLS4xNS0uMSA2LjcyIDYuNzIgMCAwIDEtLjM3LS41NGMwLS4wMiAwLS4wMy4wMy0uMDQuMjQtLjEyLjUtLjIuNzYtLjI2WiIgZmlsbD0iI0JGQkZCRiIvPjxwYXRoIGQ9Im0xMi45OCA0LjUzLS45NS0uMjRhMi4wNCAyLjA0IDAgMCAwLS40OS0uMDZjLS4xMSAwLS4xNy4wNy0uMjQuMTJhLjA3LjA3IDAgMCAxLS4xLS4wMmwtLjI1LS4zYTEuNTkgMS41OSAwIDAgMC0uMjMtLjI0IDIuNjMgMi42MyAwIDAgMS0uMjQtLjIzLjMzLjMzIDAgMCAxIC4xLS4xNy4wNC4wNCAwIDAgMSAuMDUtLjAxYy4xMS4wNS4yLjAzLjI4LS4wNS43Ny4yNCAxLjQ2LjY0IDIuMDcgMS4yWiIgZmlsbD0iIzVBOThFMyIvPjxwYXRoIGQ9Ik0xMC4wOSAzLjU3Yy4wMS4xNi4wNS4yNi4xLjMybC4yLjMuMjIuM2MuMjIuMjMuNDkuNDQuOC42MmExMi4yMyAxMi4yMyAwIDAgMC0uNTMuMzZjLS4wNC4wNS0uMDMuMDYuMDIuMDJsLjQ3LS4yOWMuMDkuMTUuMi4yNi4zMi4zM2wuNC4yM2MuMDYuMDQuMTMuMDYuMi4wNy4zNC4wNi42Ny4wNiAxIC4wMS4wOC0uMDEuMi0uMDUuMzQtLjFhMiAyIDAgMCAxIC4zNC0uMTFjLjMuNDQuNTQuOTIuNzEgMS40NC0uMTMuMDYtLjQyLjI3LS40My40NCAwIC4wMiAwIC4wNC4wMi4wNS4xLjE1LjIzLjIuNDEuMThsLjE4LS4wMS4xLjU5YTkuNzcgOS43NyAwIDAgMS0yLjUyLS4zNSAxMi4zOCAxMi4zOCAwIDAgMC0uNzYtLjI1LjQuNCAwIDAgMC0uMTItLjEybC0uMTEtLjA2Yy0uMDEtLjA1LS4wNC0uMDctLjA4LS4wNi0uMDIgMC0uMDUuMDEtLjA4LjA0LS4xLjA4LS4yMS4wOC0uMzMtLjAyYTQuMjEgNC4yMSAwIDAgMC0uMjMtLjE3bC0uMTMtLjE1YTEuNiAxLjYgMCAwIDAtLjM0LS42Yy0uMjItLjM2LS41LS42My0uODQtLjgxIDAtLjAyIDAtLjAzLjAzLS4wNC4yMy0uMTEuNDctLjIuNzItLjI3LjAzIDAgLjA3LS4wNC4xMS0uMDkuMDctLjAyLjExLS4wNi4xMi0uMTEuMDMtLjE3LS4wNC0uMzEtLjItLjQyLS4zOC0uMjctLjc0LS4yNS0xLjA4LjA1YS43Ny43NyAwIDAgMC0uMjguNjIuMDEuMDEgMCAwIDEtLjAyIDAgLjk2Ljk2IDAgMCAwLS40Ny0uMTVoLS40OWwtLjM0LS4wNC0xLjA1LS45N2ExLjk1IDEuOTUgMCAwIDEtLjQtLjU2Yy4xNy0uMTIuMzUtLjIuNTQtLjIzYS4xLjEgMCAwIDEgLjA2IDBjLjA2LjAzLjEuMDMuMTQuMDNsLjMyLjQzYS40LjQgMCAwIDAgLjE0LjExYy4yNi4xMi41LjE4LjcxLjIuMTguMDEuMy0uMDcuMzUtLjI2YS4yOS4yOSAwIDAgMC0uMDItLjIgMS4xIDEuMSAwIDAgMC0uMTEtLjE5Ljc3Ljc3IDAgMCAwLS4xOC0uMTQuNzYuNzYgMCAwIDEtLjE3LS4xNmMuMTYuMDMuMjguMTEuMzcuMjMgMCAuMDIuMDIuMDMuMDQuMDQuMS4wMi4yMy4wMS4zMi4wOS4wMi4wMS4wMy4wNS4wNS4xYS44LjggMCAwIDAgLjA3LjJjLjAxLjAzLjAzLjAzLjA1LjAzLjEtLjA0LjIyLS4wMi4zMy4wNGEuMS4xIDAgMCAwIC4xIDBsLjM3LS4yMWEuMDcuMDcgMCAwIDEgLjA2IDBjLjE3LjA1LjMzLS4wNS40OC0uMzNaIiBmaWxsPSIjNUE5OEUzIi8+PHBhdGggZD0ibTEwLjQ4IDMuNTYuMjQuMjNjLjEuMDguMTguMTYuMjMuMjNhMzQuNyAzNC43IDAgMCAxIC4zLjM0aC4wNWMuMDctLjA2LjEzLS4xMy4yNC0uMTMuMjEgMCAuMzcuMDIuNDkuMDYuNC4xMS43Mi4yLjk1LjI0LjM4LjMuNy42Ny45OSAxLjFhMiAyIDAgMCAwLS4zNC4xYy0uMTUuMDYtLjI2LjEtLjM0LjExYTMuMiAzLjIgMCAwIDEtMSAwIC42My42MyAwIDAgMS0uMi0uMDhsLS40LS4yM2EuOTEuOTEgMCAwIDEtLjMyLS4zM2wxLjE0LS42MWguMDRjLjA4LjE3LjA4LjE2IDAgMCAwLS4wMi0uMDItLjAzLS4wNC0uMDItLjI4LjEtLjUxLjItLjcuMzFsLS40LjIzYy0uMy0uMTgtLjU3LS40LS44LS42M2ExLjczIDEuNzMgMCAwIDEtLjIxLS4yOSAyLjYgMi42IDAgMCAwLS4yMS0uM2MtLjA1LS4wNi0uMDktLjE2LS4xLS4zMi4wNC0uMDYuMDgtLjEuMTQtLjEybC4wNi4wMS4yLjFaIiBmaWxsPSIjQkZCRkJGIi8+PHBhdGggZD0iTTYuMDcgMy43OWMuMTEuMjMuMjUuNDIuNC41NmwxLjA1Ljk3LS41NS4wOWEuMDQuMDQgMCAwIDEtLjA1LS4wMmMtLjA3LS4xNC0uMTUtLjI3LS4yNC0uMzlsLS41My0uN2EuODEuODEgMCAwIDEtLjE3LS40Ny4xOC4xOCAwIDAgMSAuMDktLjA0WiIgZmlsbD0iIzhDQzlENCIvPjxwYXRoIGQ9Ik01Ljk4IDMuODNjMCAuMTYuMDYuMzIuMTcuNDZsLjUzLjcxYy4xLjEyLjE3LjI1LjI0LjM5YS4wNC4wNCAwIDAgMCAuMDUuMDJsLjU1LS4xLjM0LjA1LTEuMDguMi0uMzIuMWMtLjAzLjAxLS4wNCAwLS4wMy0uMDMgMC0uMDIuMDQtLjA0LjA4LS4wNmEuMTMuMTMgMCAwIDAgLjExLS4wOS4xLjEgMCAwIDAtLjAyLS4wOSAyLjA3IDIuMDcgMCAwIDAtLjIyLS4yMiAyMC44NSAyMC44NSAwIDAgMS0uOC0xYy0uMDUtLjAyLS4wNS0uMDUgMC0uMDhsLjQtLjI2WiIgZmlsbD0iI0YzRjJGMCIvPjxwYXRoIGQ9Ik02LjIgNS44NGMtLjAyIDAtLjA0LjAyLS4wNi4wNGwuMDEtLjA4YzAtLjAyIDAtLjA0LS4wMi0uMDVhLjgxLjgxIDAgMCAxLS4xNS0uMTZsLS40MS0uNTdjLS4xNC0uMi0uMjctLjQyLS4zNy0uNjZsLjItLjEzYy4wMi0uMDEuMDMtLjAxLjA0LjAxYTkuNTMgOS41MyAwIDAgMCAuNS43M2wuMDQuMDQuNDIuNTh2LjA0bC0uMi4yMVoiIGZpbGw9IiMwMTM1NEUiLz48cGF0aCBkPSJNNi41MSA1LjU3YS40LjQgMCAwIDAtLjI0LS4yNC4xLjEgMCAwIDEtLjA1LS4wNGwtLjEyLS4xNmE2OC44MyA2OC44MyAwIDAgMS0uMzgtLjY4bC0uMDUtLjE4YTIwLjg5IDIwLjg5IDAgMCAwIC43LjljLjA5LjA3LjE2LjE1LjIzLjIyYS4xLjEgMCAwIDEgLjAyLjEuMTMuMTMgMCAwIDEtLjEuMDhaIiBmaWxsPSIjOENDOUQ0Ii8+PHBhdGggZD0iTTUuMiA0LjM2Yy4xLjI0LjIzLjQ2LjM3LjY2LjEzLjIuMjcuMzguNDEuNTdsLjE1LjE2Yy4wMiAwIC4wMy4wMi4wMy4wNWwtLjAyLjA4YTEwLjAxIDEwLjAxIDAgMCAxLS41Ny4zLjguOCAwIDAgMC0uMy4yNSA0Ljg1IDQuODUgMCAwIDEtLjM4LjQyVjYuOGwtLjAxLS4wMmEuMy4zIDAgMCAxLS4wNi0uMmMwLS4wMi0uMDItLjAzLS4wNC0uMDJhLjA2LjA2IDAgMCAxLS4wNi0uMDNsLS4yMi0uMjdhLjE2LjE2IDAgMCAwLS4xOC0uMDIgMTIuMDIgMTIuMDIgMCAwIDAtLjMuMTVjLS4xLjIxLS4wOC40LjAzLjU0LjAzLjA2LjA2LjEzLjA3LjIuMDUuMS4xLjE3LjE2LjIzLjA2LjA3LjEzLjEyLjIxLjE2LjE0LjA2LjE3LjEzLjE1LjI3YS4xLjEgMCAwIDAgMCAuMDZsLjE5LjQyYy0uMTMuMDgtLjE3LjE2LS4xMy4yNC4wMy4wNi4wNC4xLjA0LjEzYS44OC44OCAwIDAgMC0uMi41Ljg5Ljg5IDAgMCAwLS40Mi0uNTUgNS44MiA1LjgyIDAgMCAxLS43NS0uNTcuNi42IDAgMCAwLS4yOC0uMUE2LjIxIDYuMjEgMCAwIDEgNS4yIDQuMzZaIiBmaWxsPSIjMDAxRjM3Ii8+PHBhdGggZD0iTTEyLjMxIDUuMDJjLjQtLjE4LjctLjM1LjctLjM2LS4wMS0uMDItLjM0LjExLS43My4zLS4zOS4xOC0uNy4zNC0uNjkuMzYuMDEuMDIuMzMtLjEyLjcyLS4zWk0xMC4yOCA1LjM3YS4yNC4yNCAwIDAgMC0uMTctLjAzbC0uNDgtLjAzYS42LjYgMCAwIDAtLjU3LjI3LjAyLjAyIDAgMCAxLS4wMSAwaC0uMDJ2LS4wNGEuNjYuNjYgMCAwIDEgLjYtLjM0IDMuNDYgMy40NiAwIDAgMSAuNjEuMDYuMTMuMTMgMCAwIDAgLjA5LS4xNWMtLjAzLS4xMS0uMDktLjE4LS4xOC0uMi0uMzEtLjIzLS42NC0uMi0uOTcuMDYtLjEzLjExLS4yLjIzLS4yMi4zOGEuOC44IDAgMCAwLS4wMS4yM2wuMDEuMDVjLjAyLjAyLjAzLjAzLjA1LjAzLjAzIDAgLjA0LjAxLjA0LjAzYTMuNCAzLjQgMCAwIDEgMCAuMjRsLjAyLjAyYy4wMiAwIC4wNCAwIC4wNC0uMDIuMDYtLjE4LjE3LS4yMy4zMS0uMTYuMzQuMTguNjIuNDUuODQuOGwuMzQuNjEuMTMuMTUuMTYuMzRjLjAxLjAyLjAzLjAzLjA2LjAzLjEgMCAuMi4wMi4yOC4xaC4wMmEuMDIuMDIgMCAwIDAgLjAxLS4wMmMwLS4xNy4wNS0uMjUuMTktLjI0bC4xMS4wNmMuMDYuMS4wOS4yLjA4LjNhLjE3LjE3IDAgMCAwLS4wNy4wNmMwIC4wMiAwIC4wNS4wNC4wOC4xMS4xLjIuMjEuMjcuMzFsLjE2LjIzYy4wMy4wNC4wNi4xLjA4LjE3bC4wNy4xOC4wNS4yMi4wNS4yNGEuMDcuMDcgMCAwIDAgLjA1LjA1Yy40NS4wOS44My4zNyAxLjE1LjdhMy42OCAzLjY4IDAgMCAxIC44IDEuNjl2LjAzYS4xNC4xNCAwIDAgMS0uMDcuMDkgMy41IDMuNSAwIDAgMC0uNzItMS42NiAyLjIgMi4yIDAgMCAwLS43Mi0uNiAxLjcxIDEuNzEgMCAwIDAtLjQzLS4xNWMtLjAzIDAtLjA0IDAtLjA0LjAzbC0uMDMuMTRjLjAyLjI2LS4wMi41NC0uMTIuODEtLjAyIDAtLjA0LS4wMS0uMDUtLjAzbC4xLS43MWMwLS4yNi0uMDUtLjUyLS4xNS0uNzhhLjA0LjA0IDAgMCAwLS4wNC0uMDNsLTEuMzEtLjA2Yy4xMy0uMy4xNy0uNjMuMTItLjk4YTEuMjIgMS4yMiAwIDAgMC0uMi0uNTN2LjAxYy4xNS40Ny4xNy45NC4wNSAxLjQybC0uMy0uNDVjLjA5LS4zLjEyLS41NC4xLS43YTIuNDQgMi40NCAwIDAgMC0uODktMS43My41NC41NCAwIDAgMC0uMjctLjEyYy0uMDIgMC0uMDQgMC0uMDYuMDJhLjI4LjI4IDAgMCAwLS4xLjE2YzAgLjA0IDAgLjA0LjAzIDBsLjA3LS4wOGEuMTIuMTIgMCAwIDEgLjE3LS4wMmMuMTIuMS4yLjE3LjI2LjIuMDkuMDcuMTYuMTUuMjEuMjVsLjI2LjM5Yy4wNy4xLjEyLjIyLjE0LjMzYTIuNDcgMi40NyAwIDAgMS0uMDYgMS41MmMtLjA3LS4yLS4xLS4zOS0uMTItLjU5LjA4LS4yMi4xMi0uNDMuMTEtLjYxIDAtLjEzLS4wMi0uMTMtLjA0IDBsLS4wNy40NGMtLjE3LS4zNy0uNDQtLjctLjgtMWEyLjMgMi4zIDAgMCAwLTIuNi0uNGwtMS4wMi41Yy0uMTguMDgtLjM5LjE3LS42Mi4yNS0uMDQuMDEtLjA1IDAtLjA0LS4wNS4xNC0uMzMuMzQtLjYyLjYxLS44Ni4zMS0uMjEuNTgtLjM4LjgxLS40OWEzLjM4IDMuMzggMCAwIDEgMS4yOC0uMjhsLjU2LjAyYTEgMSAwIDAgMSAuNTguMmMtLjExLS4yOS0uNy0uMy0uOTUtLjI3aC0uMzVjLS4xMSAwLS4yMy4wMi0uMzUuMDRsLS40NC4xYS4xLjEgMCAwIDEgMC0uMDVsMS4wNy0uMmguNDlhLjk2Ljk2IDAgMCAxIC40OC4xNy4wMS4wMSAwIDAgMCAuMDEtLjAxYzAtLjI0LjA5LS40NS4yOC0uNjIuMzQtLjMuNy0uMzIgMS4wOC0uMDUuMTYuMS4yMy4yNS4yLjQyIDAgLjA1LS4wNS4wOS0uMTIuMTFaIiBmaWxsPSIjNTQzOTMwIi8+PHBhdGggZD0iTTEwLjE1IDQuOWMuMDkuMDMuMTUuMS4xOC4yMWEuMTMuMTMgMCAwIDEtLjE1LjE2IDMuNDYgMy40NiAwIDAgMC0uNTUtLjA3Yy0uMjUgMC0uNDYuMS0uNi4zNHYuMDNsLjAyLjAxYS4wMi4wMiAwIDAgMCAuMDEgMCAuNi42IDAgMCAxIC41Ny0uMjcuNzIuNzIgMCAwIDAtLjIyLjA0Yy0uMS4wNC0uMS4wOCAwIC4xLjAzLjAxLjA3LjAyLjEuMDEuMSAwIC4xLjAxLjAzLjA1bC0uMDkuMDRhLjAyLjAyIDAgMCAwIDAgLjAyLjAzLjAzIDAgMCAwIDAgLjAybC4wNC4wMmguMDZsLjYzLS4yM2MuMDIgMCAuMDItLjAyIDAtLjAybC0uMDctLjAyYy4wNiAwIC4xMiAwIC4xNy4wMy0uMDQuMDUtLjA4LjA4LS4xMS4xLS4yNS4wNi0uNS4xNS0uNzIuMjYtLjAzLjAxLS4wMy4wMi0uMDMuMDQtLjE0LS4wNy0uMjUtLjAyLS4zLjE2LS4wMS4wMi0uMDMuMDMtLjA1LjAyLS4wMSAwLS4wMiAwLS4wMy0uMDJWNS43YzAtLjAzIDAtLjA0LS4wMy0uMDRhLjA4LjA4IDAgMCAxLS4wNS0uMDNsLS4wMS0uMDVhLjguOCAwIDAgMSAwLS4yM2MuMjYtLjQ4LjY2LS42MyAxLjItLjQ0WiIgZmlsbD0iIzZDNDMzNSIvPjxwYXRoIGQ9Im05LjYzIDUuMy40OC4wNC4wNi4wMmMuMDMgMCAuMDMuMDEgMCAuMDJsLS42Mi4yM2gtLjA2Yy0uMDIgMC0uMDQgMC0uMDUtLjAyYS4wMy4wMyAwIDAgMSAwLS4wMi4wMi4wMiAwIDAgMSAuMDEtLjAybC4wOS0uMDRjLjA4LS4wNC4wNy0uMDYtLjAyLS4wNWgtLjFjLS4xLS4wMy0uMS0uMDctLjAxLS4xYS43Mi43MiAwIDAgMSAuMjItLjA1WiIgZmlsbD0iI0VGNjU2OCIvPjxwYXRoIGQ9Ik01LjY1IDYuMjhjLS4wNi0uMDctLjE2LS4wMi0uMy4xNy0uMTguMTctLjMyLjM2LS40My41NS0uMDQuMDgtLjA3LjA3LS4wOSAwbC0uMDgtLjM0YzAtLjAyIDAtLjAyLS4wMSAwYS43OC43OCAwIDAgMCAuMDcuNXYuMTNjLS4wMi4wMi0uMDQuMDEtLjA1IDBhLjk1Ljk1IDAgMCAxLS4wOS0uMzR2LS4yNGMwLS4wNi0uMDItLjExLS4wNC0uMTVhLjQ0LjQ0IDAgMCAwLS4xMi0uMTFsLS4wNy0uMDZjLjAxLS4wMyAwLS4wNS0uMDItLjA4aC0uMDVhLjEuMSAwIDAgMS0uMDYuMDEuMzcuMzcgMCAwIDAtLjI1LjI3IDguMjkgOC4yOSAwIDAgMS0uMDEuMzVjLS4xMS0uMTUtLjEyLS4zMy0uMDItLjU0IDAtLjAyLjAyLS4wMy4wNC0uMDRhMTIgMTIgMCAwIDEgLjI1LS4xMS4xNi4xNiAwIDAgMSAuMTguMDJsLjIyLjI3YS4wNi4wNiAwIDAgMCAuMDYuMDNjLjAyIDAgLjAzIDAgLjAzLjAzIDAgLjA3LjAyLjEzLjA2LjJsLjAxLjAxdi4wMmEuMDIuMDIgMCAwIDAgLjAxLjAyaC4wMmMuMTMtLjEzLjI1LS4yOC4zNi0uNDJhLjguOCAwIDAgMSAuMy0uMjUgMTQuNDUgMTQuNDUgMCAwIDAgLjU3LS4zbC4wNS0uMDQuNi0uMjUuNDQtLjEuMzUtLjAyLjM1LS4wMWMuMjQtLjAyLjg0LS4wMS45NS4yNnYuMDFoLS4wMWExIDEgMCAwIDAtLjU3LS4ybC0uNTYtLjAyYy0uMiAwLS4zOC4wMS0uNTcuMDUtLjI4LjA3LS41Mi4xNC0uNy4yMy0uMjQuMTItLjUxLjI4LS44Mi41WiIgZmlsbD0iI0U4QjNBNSIvPjxwYXRoIGQ9Ik00LjUgNS43Yy4wNC4wMi4wOCAwIC4xLS4wMiAwLS4wMy0uMDEtLjA2LS4wNS0uMDgtLjAzLS4wMS0uMDcgMC0uMDguMDMtLjAxLjAyIDAgLjA2LjA0LjA3WiIgZmlsbD0iI0JGQkZCRiIvPjxwYXRoIGQ9Ik0xMC4zOCA4LjM4Yy0uMDUuMjMtLjE1LjQzLS4zLjZhLjI0LjI0IDAgMCAxLS4wMy4wNWMtLjA0LjA0LS4wNS4wMy0uMDMtLjAzbC4yMi0uNGEyLjYgMi42IDAgMCAwIC4wNy0xLjUyIDEuMDMgMS4wMyAwIDAgMC0uMTUtLjMzbC0uMjYtLjRhLjcxLjcxIDAgMCAwLS4yMS0uMjMgMy44NCAzLjg0IDAgMCAxLS4zLS4yMy4xMi4xMiAwIDAgMC0uMTMuMDRsLS4wNy4wOWMtLjAyLjAzLS4wMy4wMy0uMDItLjAxYS4yOC4yOCAwIDAgMSAuMS0uMTYuMDcuMDcgMCAwIDEgLjA1LS4wMmMuMS4wMi4yLjA2LjI3LjEyLjU0LjQ0Ljg0IDEuMDIuOSAxLjczLjAxLjE2LS4wMi40LS4xLjdaIiBmaWxsPSIjRThCM0E1Ii8+PHBhdGggZD0iTTEwLjEyIDcuODRjLS4wNC4xNC0uMDMuMiAwIC4xNy4wMS4yLjA1LjQuMTIuNmwtLjIyLjRjLS4wMi4wNS0uMDEuMDUuMDMuMDJsLjA0LS4wNWE3LjUgNy41IDAgMCAxIDEuODkgMS43bC4wOS0uMTYuMDQtLjAzYzAgLjAyLjAzLjAzLjA1LjAzbC0uMTYuNDJ2LS4wMmMwLS4wMi0uMDItLjAyLS4wMyAwbC0uMDMuMDR2LS4wMmMtLjAxLS4wMi0uMDItLjAyLS4wMyAwbC0uNTQuOTZhLjk4Ljk4IDAgMCAxLS4yLjNsLS4yNS4yNi0uMzQuM2MtLjEyLjA3LS4yMy4xMi0uMzIuMTUtLjAzIDAtLjA0IDAtLjAyLS4wM2wuMDYtLjExdi0uMDNsLjAxLS4wNWMtLjA3LS40My0uMzYtLjY2LS43NC0uOGEuMzYuMzYgMCAwIDAtLjE4LS4wMmwtLjE4LjAzYS4zNy4zNyAwIDAgMC0uMS4wOGMtLjA4LjE2LS4xLjE1LS4wOS0uMDIuMDEtLjA1LjA0LS4xLjEtLjE3LjEtLjExLjM3LS4xNC41Mi0uMTQuMDcgMCAuMDgtLjAyLjAzLS4wNiAwLS4wMi0uMDQtLjAxLS4wOSAwYS4wMy4wMyAwIDAgMS0uMDMgMCAuMDMuMDMgMCAwIDEtLjAxLS4wNGMuMDctLjMxLjMtLjY1LjQ4LS44OC4wNS0uMDYuMDMtLjA4LS4wNC0uMDVhLjIyLjIyIDAgMCAwLS4wOC4wNmMtLjE2LjItLjMuNC0uNDEuNjNhLjUuNSAwIDAgMC0uMDcuMmMwIC4wNS0uMDIuMDctLjA2LjA4YS42Ny42NyAwIDAgMC0uMzQuMTRjLS4xNy4xMy0uMDguNDQtLjAxLjYyLjAxLjAzLjAyLjA2LjAxLjA4IDAgLjA2LS4wNy4xMi0uMS4xNWEuOTEuOTEgMCAwIDEtLjQ4LjM3LjE4LjE4IDAgMCAwLS4xLS4wOWMtLjA3LS4wMy0uMS0uMDUtLjEzLS4xMWEyLjQgMi40IDAgMCAxLS4yOC0xLjAybC0uMDMtLjQxYzAtLjAyLS4wMS0uMDMtLjAzIDBhLjEzLjEzIDAgMCAwLS4wMy4wNmMtLjAyLjE1LS4wMi4zIDAgLjQ0bC0uMDMtLjM3di0uMDFhLjAyLjAyIDAgMCAwLS4wMyAwaC0uMDJhLjA3LjA3IDAgMCAwLS4wNC4wN2wtLjAxLjM4YzAgLjA3LS4wMi4wNy0uMDUgMGEuMzEuMzEgMCAwIDAtLjEyLS4xMi4xMy4xMyAwIDAgMS0uMDQtLjA1bC0uMjQtLjQyLS4wMi0uMDJINy4ybC0uMDEuMDJjMCAuMDEgMCAuMDMuMDIuMDVoLS4wM2EuMDIuMDIgMCAwIDAtLjAxIDAgLjAyLjAyIDAgMCAwIDAgLjAzYy4xLjM1LjMuNjMuNi44M2wuMDcuM2MwIC4wNSAwIC4xMi0uMDUuMjN2LjA2YzAgLjEgMCAuMTYtLjA1LjItLjE1LjE2LS4zMS4xOS0uNDguMDguMDQtLjAyLjA1LS4wNCAwLS4wNWEyLjQ4IDIuNDggMCAwIDEtLjc1LS45bC0uMTQtLjNjLS4wNS0uMTItLjEtLjIyLS4xMi0uMzFhMi44MiAyLjgyIDAgMCAxLS4wNy0xLjAzLjE0LjE0IDAgMCAwIC4wMi0uMDljLjA3LjA2LjExLjEyLjEzLjE5IDAgLjA2LjAyLjE4LjAyLjM3IDAgLjA4LjAzLjEzLjEuMTYuMTEuMDUuMjMuMDYuMzcuMDQuMzMtLjAzLjY3LS4xMyAxLjAxLS4yOS4xMS0uMDUuMjgtLjAyLjQtLjA1LjI0LS4wNi41LS4xNy43OC0uMzMuMTctLjEuMy0uMjEuMzgtLjM0LjIzLS4xMy40LS4zLjUyLS41My4wNy0uMTMuMDYtLjEzLS4wMy0uMDItLjEuMTMtLjIyLjI2LS4zOC4zOS0uMTYuMTQtLjQ1LjMtLjg2LjVsLjI3LS4yNC4yNy0uMjVjLjI1LS4zLjU0LS42LjY3LS45NmExMy42NyAxMy42NyAwIDAgMCAuMTYtLjUzbC4wMy0uMDVjMC0uMDgtLjAzLS4wOS0uMDYtLjAybC0uMTkuMzhjLS4yOS42Mi0uNyAxLjE1LTEuMjYgMS41OC0uMy4yMS0uNjMuMzYtMSAuNDRsLjY4LS40NWMuMi0uMTUuMzYtLjM3LjQ4LS42Ni4xMy0uMy4yLS42LjE4LS44NiAwLS4wMiAwLS4wNC0uMDItLjA1LS4wMi0uMDYgMC0uMS4wNS0uMTUuMjctLjE5LjQyLS40Ni40My0uOCAwLS4wMi0uMDEtLjA0LS4wMy0uMDVhLjIxLjIxIDAgMCAwLS4xLS4wM2MtLjAzIDAtLjA0LjAyLS4wNC4wNGwuMDMuMTEtLjIzLjQ4YS4wMi4wMiAwIDAgMCAuMDMuMDNMOSA4LjQ0di4wMWMtLjIxLjI0LS40Ny40LS43Ni40OGwtLjAxLS4wMmMwLS4wMS0uMDEtLjAyLS4wMy0uMDItLjIuMDUtLjM3LjA4LS41MS4wN2wtLjktLjAyYy0uMjQtLjAxLS40Ni4wNC0uNjQuMTZsLS44NS40OGEuNDcuNDcgMCAwIDAtLjMgMGMtLjE2IDAtLjI2LS4wNy0uMy0uMi0uMDItLjAyLS4wMi0uMDItLjAzIDAgMCAuMDQgMCAuMDcuMDMuMTFhLjA2LjA2IDAgMCAwLS4wNS0uMDFsLS4wMi4wM2EuNTIuNTIgMCAwIDAtLjA4LS4xOWMtLjAzLS4wMi0uMDQtLjA4LS4wMi0uMThoLjAxYy0uMDEuMDMgMCAuMDUuMDIuMDZhLjAzLjAzIDAgMCAwIC4wMiAwIC4wMy4wMyAwIDAgMCAuMDItLjAyYy4wMi0uMjIuMTUtLjQ0LjI3LS42Mi4wNS0uMDkuMDQtLjEtLjAzLS4wM2EuNTMuNTMgMCAwIDAtLjEuMTJjMC0uMDMtLjAxLS4wNy0uMDQtLjEzLS4wNC0uMDggMC0uMTYuMTMtLjI0YTIuMzUgMi4zNSAwIDAgMSAuMTguMDhoLjAxYy4wMi0uMDIuMDItLjAzLjAxLS4wNGEuMTUuMTUgMCAwIDAtLjA0LS4wNGMuMS4wMS4xOC0uMDIuMjItLjA4bC4xLS4xaC4wNHYuMDJoLjAybC4yLS4xNGMuMjEtLjE2LjM0LS4xOC42LS4yMy4xNi0uMDQuMzItLjEyLjQ5LS4yMy4wMS0uMDIuMDItLjAzIDAtLjA1di0uMDJoLS4wMmExLjYgMS42IDAgMCAxLS42MS4yNWwuMDMtLjAzYS4wMy4wMyAwIDAgMC0uMDMtLjA2Yy0uMjIuMDMtLjQyLjEyLS42LjI3bC0uMDQtLjAxYy0uMDMtLjA3LS4wMy0uMTQtLjA4LS4yLS4xMS0uMTUtLjI0LS4xMy0uMzguMDRsLjAzLS40OGMuMDctLjI3LjItLjUuNC0uNzEuMDUtLjA2LjA1LS4wOCAwLS4wNy4xMy0uMTkuMjMtLjI0LjMtLjE3LS4yOC4yNC0uNDguNTMtLjYyLjg2LS4wMS4wNSAwIC4wNi4wNC4wNC4yMy0uMDcuNDQtLjE2LjYyLS4yNWwxLjAyLS40OGEyLjMgMi4zIDAgMCAxIDIuNi4zOGMuMzYuMy42My42NC44IDFaIiBmaWxsPSIjN0M1MTNDIi8+PHBhdGggZD0iTTQuNDQgNi4zOWMtLjA3LjIzLS4xLjQ2LS4xLjdsLjAxLjA2LjAzLjA1Yy4wMS4wMiAwIC4wMy0uMDEuMDJhLjA2LjA2IDAgMCAxLS4wMy0uMDIuNjIuNjIgMCAwIDAtLjEtLjE0LjExLjExIDAgMCAxLS4wNC0uMDUuOTMuOTMgMCAwIDEtLjA2LS4zOGMuMDEtLjEuMDgtLjIuMi0uMjcuMDItLjAxLjAyLS4wMiAwLS4wM0g0LjNhLjEuMSAwIDAgMCAuMDYtLjAyaC4wNWMuMDMuMDMuMDMuMDUuMDIuMDhaIiBmaWxsPSIjRUY2NTY4Ii8+PHBhdGggZD0iTTQuMyA2LjMyYS4xLjEgMCAwIDEgLjA0IDBjLjAyLjAyLjAyLjAzIDAgLjA0LS4xMi4wNy0uMTkuMTYtLjIuMjctLjAxLjA5IDAgLjIxLjA2LjM4IDAgLjAyLjAyLjA0LjAzLjA1LjA0LjAzLjA4LjA4LjExLjE0bC4wMy4wMWMuMDIuMDIuMDIuMDEuMDEtLjAxbC0uMDMtLjA1YS4xMi4xMiAwIDAgMS0uMDEtLjA2YzAtLjI0LjAzLS40Ny4xLS43bC4wNy4wNmMtLjA1LjItLjA2LjQxLS4wNC42MmEuNi42IDAgMCAwIC4yNi40NGguMDFjLjA3LS4yLjEtLjMuMDctLjM0YS43OC43OCAwIDAgMS0uMDctLjUxYzAtLjAyIDAtLjAyLjAxIDBsLjA4LjMzYy4wMi4wOC4wNS4wOS4wOS4wMS4xLS4yLjI1LS4zOC40NC0uNTUuMDUgMCAuMDUuMDIgMCAuMDctLjIuMi0uMzMuNDQtLjQuNzEtLjExLjI1LS4xNC41LS4wNy43NGEuNC40IDAgMCAwIC4xLjE2aC4wM1Y4LjFhLjcuNyAwIDAgMS0uMS0uMzljLjE1LS4xNy4yOC0uMTkuNC0uMDUuMDQuMDcuMDQuMTQuMDcuMi4wMS4wMy4wMy4wMy4wNC4wMi4xOC0uMTUuMzgtLjI0LjYtLjI3YS4wMy4wMyAwIDAgMSAuMDMuMDZsLS4wMy4wM2MtLjI2LjA2LS40OS4yLS42OC40aC0uMDNjLjAyLS4wOCAwLS4xNS0uMDUtLjIuMDItLjA0LjAyLS4wOCAwLS4xMmEuMDMuMDMgMCAwIDAtLjAzLS4wMS4wMy4wMyAwIDAgMC0uMDIuMDFjMCAuMDItLjAxLjA0IDAgLjA3LS4wNS0uMDItLjA4IDAtLjEuMDVhLjYuNiAwIDAgMC0uMDIuMjNjMCAuMDUuMDQuMDguMTEuMDctLjA0LjA2LS4xMi4xLS4yMi4wOWEuNjguNjggMCAwIDEtLjI1LS4zOWMtLjAyLS4wOC0uMDEtLjE4LS4wMi0uMjZhLjA1LjA1IDAgMCAwLS4wMy0uMDUgMS4wNyAxLjA3IDAgMCAxLS40NC0uMzQuMS4xIDAgMCAwLS4wNS0uMDNjLS4wMiAwLS4wNC0uMDMtLjA1LS4wNS0uMDEtLjA1LS4wMi0uMDYtLjAzLS4wM2EuNTcuNTcgMCAwIDAtLjA3LS4yIDguMjIgOC4yMiAwIDAgMCAuMDEtLjM1LjM3LjM3IDAgMCAxIC4yNS0uMjdaTTcuNTggNi41MmMuMzIuMDcuNTIuMjcuNTkuNTkgMCAuMDIgMCAuMDMtLjAzLjAzYS42Ny42NyAwIDAgMC0uMzguMTUuMDUuMDUgMCAwIDEtLjA1IDAgLjc0Ljc0IDAgMCAxLS40MS0uNjVsLjAxLS4wNWMuMTQtLjIxLjMzLS4yNC41Ni0uMXYuMDRsLS4yNi0uMDhoLS4wMnYuMDFsLS4wMi4wNGEuMDEuMDEgMCAwIDAgMCAuMDFaIiBmaWxsPSIjNjAxNzAwIi8+PHBhdGggZD0ibTQuNSA2LjQ1LjEzLjFjLjAyLjA1LjA0LjEuMDQuMTZ2LjI0YzAgLjA2LjAzLjE3LjEuMzMgMCAuMDIuMDIuMDMuMDMgMCAuMDItLjAxLjAyLS4wNSAwLS4xMS4wNC4wNC4wMS4xNS0uMDYuMzNoLS4wMWEuNi42IDAgMCAxLS4yNi0uNDNjLS4wMi0uMjEtLjAxLS40Mi4wNC0uNjJaIiBmaWxsPSIjNkM0MzM1Ii8+PHBhdGggZD0ibTEzLjg1IDYuNTYuNC4xOGEuMTMuMTMgMCAwIDEgLjA3LjE3LjYuNiAwIDAgMS0uMzcuMzZoLS4wNGwtLjM4LS4xN2MtLjA1LS4wMi0uMDgtLjA2LS4wNy0uMTIuMDItLjI1LjE1LS4zOS4zOC0uNDJaIiBmaWxsPSIjMUU1OTI0Ii8+PHBhdGggZD0ibTEwLjYgNy4xOC0uMzQtLjZjLjE1LjE2LjI2LjM2LjM0LjZaIiBmaWxsPSIjOENDOUQ0Ii8+PHBhdGggZD0iTTcuNyA2Ljc5YS4yLjIgMCAwIDEtLjEyLS4wNGMtLjA2LS4wNi0uMDUtLjA5LjAzLS4xbC4wNC4wMWMuMDcuMDUuMDkuMDkuMDUuMTNaIiBmaWxsPSIjRThCM0E1Ii8+PHBhdGggZD0iTTcuNTggNi43NGEuMi4yIDAgMCAwIC4xMi4wNWMuMTIuMDUuMi4xMy4yMi4yNWEuMDkuMDkgMCAwIDEtLjA0LjEuMDkuMDkgMCAwIDEtLjAzIDBjLS4xOS4wNC0uMzItLjE0LS4zOC0uMy0uMDEtLjAyIDAtLjA0LjAxLS4wNWEuMTcuMTcgMCAwIDEgLjEtLjA1WiIgZmlsbD0iIzAwMUYzNyIvPjxwYXRoIGQ9Ik0xMi4zNCA3Ljg3YTcuNyA3LjcgMCAwIDEtLjI0LS4xLjA3LjA3IDAgMCAxLS4wNC0uMDRjLS4wNC0uMTUtLjEtLjM1LjAyLS40OC4xMi0uMTQuMjgtLjIuNDYtLjE2LjIuMDQuODEuMjIuODcuNDMuMDUuMTgtLjA2LjM0LS4xNy40NmEuMDcuMDcgMCAwIDEtLjA2LjAyIDMuNzMgMy43MyAwIDAgMS0uODQtLjEzWiIgZmlsbD0iIzFFNTkyNCIvPjxwYXRoIGQ9Im0xNC42OCA3LjA3LjE4LjY2LS4xOC4wMWEuNC40IDAgMCAxLS40MS0uMTguMDguMDggMCAwIDEtLjAyLS4wNWMuMDEtLjE3LjMtLjM4LjQzLS40NFoiIGZpbGw9IiNCRkJGQkYiLz48cGF0aCBkPSJNNSA4LjI4YzAgLjAyLjAyLjAzLjAzLjA0di4wNGgtLjA1YTIuMzUgMi4zNSAwIDAgMC0uMTUtLjA4bC0uMTgtLjQyYS4xLjEgMCAwIDEtLjAxLS4wNmMuMDItLjE0IDAtLjIxLS4xNS0uMjdhLjY1LjY1IDAgMCAxLS4yMS0uMTYgMS4wOCAxLjA4IDAgMCAxLS4xNi0uMjNjMC0uMDMuMDItLjAyLjAzLjAzbC4wNS4wNWEuMS4xIDAgMCAxIC4wNS4wM2MuMTIuMTUuMjYuMjcuNDQuMzQuMDIuMDEuMDMuMDIuMDMuMDUgMCAuMDggMCAuMTguMDIuMjYuMDMuMTYuMTIuMjguMjUuMzhaTTQuOTYgNy4yM2wtLjAzLjQ4YzAgLjE0LjAzLjI3LjEuMzl2LjAzaC0uMDRhLjQuNCAwIDAgMS0uMS0uMTZjLS4wNy0uMjQtLjA0LS40OS4wNy0uNzRaTTEwLjEyIDguMDFhOS45IDkuOSAwIDAgMSAuMDYtLjYxYy4wMy0uMTMuMDUtLjEzLjA1IDAgLjAxLjE5LS4wMy4zOS0uMS42MVoiIGZpbGw9IiNFOEIzQTUiLz48cGF0aCBkPSJNMTEuNDUgNy41NGMtLjE0IDAtLjIuMDctLjE5LjI0YS4wMi4wMiAwIDAgMS0uMDIuMDIuNC40IDAgMCAwLS4zLS4xYy0uMDIgMC0uMDQtLjAxLS4wNS0uMDNsLS4xNi0uMzQuMjMuMTdjLjEyLjEuMjMuMS4zMy4wMi4wMy0uMDMuMDYtLjA0LjA4LS4wNC4wNCAwIC4wNy4wMS4wOC4wNloiIGZpbGw9IiNGM0YyRjAiLz48cGF0aCBkPSJtMTAuNyA4LjkxLS4wNS4wOWMtLjAyLjAyLS4wMi4wMi0uMDEtLjAxbC4wNC0uMTZhMi40NCAyLjQ0IDAgMCAwLS4wNS0xLjQzaC4wMWMuMS4xNC4xNi4zMS4xOS41My4wNS4zNiAwIC42OC0uMTIuOThaTTUuMzUgOC4xYy4yLS4yLjQyLS4zNC42OC0uNC4yMi0uMDQuNDItLjEyLjYtLjI1aC4wM3YuMDJjLjAyLjAyLjAxLjAzIDAgLjA1LS4xNy4xMS0uMzMuMi0uNS4yMy0uMjUuMDUtLjM4LjA3LS41OC4yM2wtLjIxLjE0aC0uMDJWOC4xWiIgZmlsbD0iI0U4QjNBNSIvPjxwYXRoIGQ9Im0xNC45NyA4LjMyLjAyLjMzYy0uNTYuMDQtLjk2LjA2LTEuMi4wNS0uNDItLjAxLTEuMDQtLjE0LTEuNTctLjE2LS4wNiAwLS4xLS4wMS0uMTEtLjAzYS4yMi4yMiAwIDAgMS0uMDgtLjEuMTUuMTUgMCAwIDAtLjA0LS4wNiAxLjUgMS41IDAgMCAxLS4zNS0uNDUuNDYuNDYgMCAwIDAtLjA4LS4zLjQuNCAwIDAgMSAuMTIuMTNsLjA1LjAzYTEyLjM2IDEyLjM2IDAgMCAxIC45LjI1bC4yLjA0Yy42NC4xNiAxLjM1LjI1IDIuMTQuMjdaIiBmaWxsPSIjOENDOUQ0Ii8+PHBhdGggZD0iTTUuMjcgNy45YS4wOC4wOCAwIDAgMS0uMDYtLjA1bC4wMS0uMDdhLjAzLjAzIDAgMCAxIC4wMi0uMDEuMDMuMDMgMCAwIDEgLjAzIDBjLjAyLjA1LjAyLjA5IDAgLjEzWiIgZmlsbD0iI0U4QjNBNSIvPjxwYXRoIGQ9Ik04LjIgMTAuMzljLjE2LS4yMi4yOS0uNDMuMzgtLjY1LjA0LS4wOS4wNy0uMTguMDktLjI4bC4wNi0uM2MuMDItLjEuMDItLjIgMC0uM2EuMDQuMDQgMCAwIDAtLjA0LS4wNC4wNC4wNCAwIDAgMC0uMDQuMDJsLS4wOC4wOC0uMTMuMDJjLS4wMiAwLS4wMy4wMi0uMDIuMDQuMDIuMi4wMS40My0uMDQuNjcuMDIuMDYuMDEuMTItLjAyLjE2YTQwLjQ3IDQwLjQ3IDAgMCAwLS4yNC4yNWwtLjI1LjI1YTEuMjEgMS4yMSAwIDAgMS0uMzkuMjQgNS45IDUuOSAwIDAgMC0uNDUuMThjLS4xNS4wNi0uMjYuMDYtLjM2IDAtLjA1LS4wNC0uMS0uMTEtLjEzLS4yMmEuOTYuOTYgMCAwIDAtLjE5LS4zMyA1LjQgNS40IDAgMCAwLS40My0uNDMuNTQuNTQgMCAwIDAtLjE2LS4xIDEuMDQgMS4wNCAwIDAgMS0uMTgtLjFoLS4wMWwtLjAzLjAzdi4wM2MuMjMuMTIuNDMuMjkuNjEuNS4xNC4xNS4yMi4zLjI2LjQ2bC4wMi4xNS4wMi4xNGMuMDMuMTQuMS4yLjIzLjIuMy0uMDQuNTgtLjEuODQtLjIyLjM4LS4wOC43Mi0uMjMgMS4wMS0uNDRBMi41OSAyLjU5IDAgMCAwIDkuOCA4LjgybC4xOS0uMzhjLjAzLS4wNy4wNS0uMDYuMDYuMDIgMCAuMDEgMCAuMDMtLjAzLjA1YTEzLjY2IDEzLjY2IDAgMCAxLS4xNi41M2MtLjEzLjM2LS40Mi42Ny0uNjcuOTZsLS4yNy4yNS0uMjcuMjQtLjM5LjE4Yy0uMTMuMDgtLjEzLjEuMDIuMDUuMzUtLjEuNzItLjI5IDEuMTItLjU3LS4wOS4xMy0uMjEuMjQtLjM4LjM0LS4yOC4xNi0uNTQuMjctLjc4LjMzLS4xMi4wMy0uMjkgMC0uNC4wNS0uMzQuMTYtLjY4LjI2LTEuMDEuM2EuNzEuNzEgMCAwIDEtLjM3LS4wNWMtLjA3LS4wMy0uMS0uMDgtLjEtLjE2IDAtLjE5LS4wMS0uMzEtLjAyLS4zNy0uMDItLjA3LS4wNi0uMTMtLjEzLS4xOWwtLjAxLS4wNC0uMDQuMDFhLjA2LjA2IDAgMCAwLS4wMi4wNGMtLjA2LjM3LS4wNC43My4wNSAxLjA3LjEzLjQ2LjM0Ljg3LjY0IDEuMjQuMS4xMy4yNS4yNS40NC4zNi4xNy4xLjMzLjA4LjQ4LS4wNy4wNC0uMDUuMDYtLjEyLjA1LS4ydi0uMDdjLjA0LS4xLjA2LS4xOC4wNS0uMjJhMi4xNiAyLjE2IDAgMCAxLS4wNi0uMy43NC43NCAwIDAgMC0uMTUtLjJjLS4xLS4wOC0uMTUtLjEzLS4xNy0uMTYtLjEzLS4xNi0uMTctLjMzLS4yNS0uNS0uMDItLjAzLS4wMy0uMDUtLjAyLS4wNmEuMDQuMDQgMCAwIDEgLjAzLS4wMi4wNC4wNCAwIDAgMSAuMDQuMDJsLjI0LjQyYzAgLjAyLjAyLjA0LjA0LjA1LjA1LjAzLjEuMDcuMTIuMTMuMDMuMDYuMDUuMDYuMDUtLjAxbC4wMS0uMzhjMC0uMDMuMDItLjA1LjA0LS4wNmwuMDItLjAxYS4wMi4wMiAwIDAgMSAuMDIgMCAuMDIuMDIgMCAwIDEgLjAxLjAxbC4wMy4zN2MuMDUuNC4xNC43LjI4LjkyLjA1LjA4LjE2LjE1LjMyLjIxLjItLjA3LjM3LS4xOS40OC0uMzcuMDMtLjAzLjEtLjA5LjEtLjE1bC0uMDEtLjA4Yy0uMDctLjE4LS4xNi0uNSAwLS42Mi4xLS4wOC4yMi0uMTIuMzUtLjE0LjA0IDAgLjA2LS4wMy4wNi0uMDdhLjUuNSAwIDAgMSAuMDctLjIxYy4xMi0uMjMuMjUtLjQ0LjQxLS42M2EuMjIuMjIgMCAwIDEgLjA4LS4wNmMuMDctLjAzLjA5LS4wMS4wNC4wNWEyLjQ5IDIuNDkgMCAwIDAtLjQ4LjkuMDMuMDMgMCAwIDAgLjAyLjAySDkuNjhjLjA0LjA0LjAzLjA2LS4wNC4wNi0uMTUgMC0uNDEuMDMtLjUyLjE1YS4zMy4zMyAwIDAgMC0uMS4xNmMtLjAyLjE3LjAxLjE4LjA5LjAybC4xLS4wOGEuOTcuOTcgMCAwIDEgLjQuMDN2LjAxYzAgLjAyIDAgLjAyLS4wMi4wMmgtLjI2YS4xNi4xNiAwIDAgMC0uMTYuMTNjLS4wMS4xLS4wMS4yIDAgLjI4LjAyLjA4LjA3LjE2LjE1LjI0LjE5LjIuNDIuMy42OS4zM2EuMS4xIDAgMCAwIC4wNS0uMDEuNTEuNTEgMCAwIDAgLjItLjJjLjAxLS4wNS4wMy0uMDUuMDQgMHYuMDRsLS4wNi4xMWMtLjAyLjAzLS4wMS4wNC4wMi4wMy4xLS4wMi4yLS4wOC4zMi0uMTZzLjIzLS4xOC4zNC0uMjlsLjI0LS4yNWMuMS0uMS4xNi0uMi4yLS4zMS4yNS0uMy40NC0uNi41OC0uOTRsLjAzLS4wNGMuMDEtLjAyLjAyLS4wMi4wMiAwbC4wMS4wMmMtLjMuNzItLjY5IDEuMzItMS4xOCAxLjc3LS4yLjE4LS40NS4yOS0uNzcuMzNhLjc2Ljc2IDAgMCAxLS41LS4xIDEuMzEgMS4zMSAwIDAgMS0uNC0uMzcuMDQuMDQgMCAwIDAtLjA0IDBsLS4wMS4wMWMtLjEzLjE5LS4yOC4zMi0uNDYuNDFhLjUyLjUyIDAgMCAxLS4yMi4wNS4zLjMgMCAwIDEtLjItLjA4bC0uMjctLjIzYy0uMDItLjAzLS4wMy0uMDItLjAzIDAtLjA2LjM0LS4yNC41LS41NC41LS4wMiAwLS4wNCAwLS4wNi4wMmwtLjQ3LjI0LS40My4wMy0uMTctLjA0Yy0uMDIgMC0uMDMgMC0uMDMuMDIuMDUuMzIuMTQuNjIuMjYuOTMtLjAyLjAzLS4wNS4wMS0uMS0uMDYtLjEzLS4yOC0uMi0uNTgtLjI0LS45YS4wNS4wNSAwIDAgMC0uMDMtLjA0Yy0uMi0uMS0uMzktLjI1LS41Ny0uNDZhLjYyLjYyIDAgMCAxLS4xMi0uMjQgNi4wNyA2LjA3IDAgMCAwLS4wOC0uMjdjLS4wMS0uMDMgMC0uMDguMDMtLjEzLjAzLS4xNS4xLS4yNC4yNC0uM2EyLjcgMi43IDAgMCAwIC41LS4zMnYtLjAzYTQuMyA0LjMgMCAwIDEtLjEtLjMybC0uMDQtLjMydi0uMzNjMC0uMi4wMy0uMzUuMDctLjUgMC0uMDIgMC0uMDQtLjAyLS4wNi0uMTctLjItLjM2LS4zNi0uNTgtLjVhLjA2LjA2IDAgMCAwLS4wNiAwbC0uMzEuMS0uMDYuMDJhLjEuMSAwIDAgMS0uMDYgMCAxLjAyIDEuMDIgMCAwIDEtLjI0LS4xMmMtLjA0LS4wMy0uMDUtLjA3LS4wNy0uMTIgMC0uMDMgMC0uMDMtLjAxLS4wMWwuMDItLjA0LjA1LjAxYy4xLjE0LjIzLjE4LjQuMTNsLjItLjA0Ljg1LS40OGMuMjMtLjA0LjQyLS4wNy41Ni0uMDZsLjg3LjAyYy4yIDAgLjQyLS4wNC42Ni0uMTNBMS42MiAxLjYyIDAgMCAwIDkgOC40NGMuMTQtLjE1LjItLjMxLjE5LS41bC0uMDMtLjFjMC0uMDMgMC0uMDUuMDMtLjA1LjA0IDAgLjA4LjAxLjExLjAzLjAyLjAxLjAzLjAzLjAzLjA1YS45Ni45NiAwIDAgMS0uNDMuOGMtLjA2LjA0LS4wNy4wOS0uMDUuMTVsLjAyLjA1Yy4wMS4yNi0uMDUuNTUtLjE4Ljg2LS4xMi4yOS0uMjguNS0uNDguNjZaIiBmaWxsPSIjNjAxNzAwIi8+PHBhdGggZD0iTTUuMjEgNy44NWMuMDEuMDMuMDMuMDQuMDYuMDUuMDYuMDYuMDcuMTMuMDUuMjFsLS4xLjFjLS4wOCAwLS4xMi0uMDMtLjEyLS4wOGwuMDEtLjIyYy4wMy0uMDcuMDYtLjA4LjEtLjA2WiIgZmlsbD0iIzAwMUYzNyIvPjxwYXRoIGQ9Ik00LjUzIDkuMTRjLS4wMi4xLS4wMS4xNi4wMi4xOC0uMDMuMS0uMDEuMTYuMDYuMjJoLjAybC4wMS0uMDFjLjAyLjA1LjAzLjA5LjA3LjEyLjA4LjA1LjE2LjA4LjI0LjExYS4xLjEgMCAwIDAgLjA2IDBoLjA2YzAgLjAyIDAgLjAzLS4wMS4wMi4wNC4wMi4wNS4wNS4wMi4wOC0uMTQuMTktLjI0LjMzLS4zLjQ0LS4xMy4yMy0uMDkuMjcuMTMuMTJhLjguOCAwIDAgMCAuMTktLjIxYy4xLS4xNi4yNC0uMjkuMzgtLjQyLjA4LjAzLjE0LjA3LjE4LjExLS4yMS4yMy0uNC40Ny0uNTYuNzVhNC4yNiA0LjI2IDAgMCAwLS41NyAxLjNoLS4wNGExNC40NiAxNC40NiAwIDAgMS0uOC0uNTJjLS4wNi0uMDctLjE0LS4xNC0uMjItLjEyQTYuNjggNi42OCAwIDAgMSAzIDkuMTJjMC0uMDcuMDEtLjEyLjA0LS4xOGEuMDcuMDcgMCAwIDAgMC0uMDYuMzYuMzYgMCAwIDEtLjAzLS4yYy4wMy0uMzQuMDUtLjYuMDgtLjc2YS42LjYgMCAwIDEgLjI4LjFjLjI4LjI1LjUzLjQ0Ljc1LjU4LjIyLjE0LjM2LjMyLjQxLjU0WiIgZmlsbD0iIzAwMjc0OCIvPjxwYXRoIGQ9Ik0xNSA4LjY1di40Yy0uODIuMDQtMS42NCAwLTIuNDQtLjEyLS4xLS4wMi0uMjMtLjAxLS4zNyAwYTEuMyAxLjMgMCAwIDEtLjA3LS4xOC41Mi41MiAwIDAgMC0uMDgtLjE3IDUuNCA1LjQgMCAwIDEtLjE2LS4yMmMtLjA3LS4xLS4xNi0uMjEtLjI3LS4zMi0uMDQtLjAzLS4wNS0uMDYtLjA0LS4wOCAwLS4wMi4wMy0uMDQuMDctLjA2LjA5LjE3LjIuMzIuMzUuNDVsLjA0LjA2Yy4wMi4wNC4wNC4wOC4wOC4xLjAyLjAyLjA1LjAzLjEuMDMuNTQuMDIgMS4xNi4xNSAxLjU3LjE2LjI1IDAgLjY1LS4wMSAxLjIxLS4wNVoiIGZpbGw9IiNGM0YyRjAiLz48cGF0aCBkPSJtNS42IDguNDItLjI1LjA1YS4wMy4wMyAwIDAgMS0uMDQtLjAzdi0uMDJjLS4wMS0uMDMgMC0uMDUuMDMtLjA2LjEtLjAyLjIgMCAuMjcuMDMuMDMuMDIuMDMuMDMgMCAuMDNaIiBmaWxsPSIjNjAxNzAwIi8+PHBhdGggZD0ibTEwLjM4IDguMzguMy40NS0uMDQuMTZjLS4wMS4wMyAwIC4wMy4wMSAwbC4wNi0uMDggMS4zMS4wNmMuMDIgMCAuMDQuMDEuMDQuMDMuMS4yNi4xNC41Mi4xNC43OGwtLjEzLjc0LS4xLjE2YTcuNSA3LjUgMCAwIDAtMS44OS0xLjdjLjE1LS4xNy4yNS0uMzcuMy0uNloiIGZpbGw9IiM2QzQzMzUiLz48cGF0aCBkPSJNNC41NCA5LjE1YS44OC44OCAwIDAgMSAuMi0uNWMuMDMtLjA2LjA2LS4xLjEtLjEyLjA3LS4wNy4wOC0uMDYuMDMuMDNhMS41OCAxLjU4IDAgMCAwLS4yOC42My4wMy4wMyAwIDAgMS0uMDIuMDFoLS4wMWMtLjAzLS4wMS0uMDMtLjAzLS4wMi0uMDVaTTkuOCA4LjgyYy0uMi42OS0uNjMgMS4yMi0xLjI3IDEuNTguNTUtLjQzLjk3LS45NiAxLjI2LTEuNThaIiBmaWxsPSIjRThCM0E1Ii8+PHBhdGggZD0ibTguMiAxMC4zOS0uNjguNDVjLS4yNi4xMS0uNTQuMTgtLjg0LjIxLS4xMi4wMS0uMi0uMDUtLjIzLS4xOWExLjUgMS41IDAgMCAxLS4wNC0uMjkgMS4xNCAxLjE0IDAgMCAwLS4yNi0uNDYgMi4yMSAyLjIxIDAgMCAwLS42LS41Yy0uMDItLjAxLS4wMi0uMDItLjAxLS4wM2wuMDMtLjAzaC4wMWwuMTguMWMuMDYuMDIuMTEuMDUuMTYuMS4xOS4xNy4zMy4zMi40My40My4wOS4xLjE1LjIxLjIuMzMuMDMuMTEuMDcuMTguMTIuMjIuMS4wNi4yMS4wNi4zNSAwbC40Ni0uMThhMS4yMyAxLjIzIDAgMCAwIC4zOS0uMjQgMiAyIDAgMCAxIC4yNS0uMjVjLjA2LS4wNC4xLS4wOC4xMy0uMTJsLjEtLjEzYy4wNC0uMDQuMDUtLjEuMDMtLjE2bC4xLS4yNGMwLS4wMi4wMS0uMDMuMDMtLjAzLjAzIDAgLjA0LS4wMi4wNS0uMDV2LS4yMWEuMTIuMTIgMCAwIDAtLjAzLS4wNmMtLjA0LS4wNS0uMDItLjEuMDQtLjE0bC4wOC0uMDhhLjA0LjA0IDAgMCAxIC4wNC0uMDIuMDQuMDQgMCAwIDEgLjAzLjAzYy4wMy4xMS4wMy4yMi4wMS4zMmwtLjA2LjMtLjA5LjI3Yy0uMS4yMi0uMjIuNDMtLjM3LjY1WiIgZmlsbD0iI0VGNjU2OCIvPjxwYXRoIGQ9Ik0xNSA5LjA1YzAgLjA0IDAgLjEtLjAyLjE3LS41Mi4wMi0xLjAxIDAtMS40OS0uMDUtLjEtLjAxLS4xMy4wMi0uMDUuMWwuMTUuMTJhLjIuMiAwIDAgMSAuMDYuMDhjLjAxLjAyIDAgLjA0LS4wMS4wNS0uMDMuMDEtLjA2LjAxLS4xLS4wMmExIDEgMCAwIDAtLjM3LS4xNy43OC43OCAwIDAgMS0uMi0uMDkgMTYuOTggMTYuOTggMCAwIDEtLjcxLS4yMmwtLjAyLjAydi4wM2wuMDIuMDRhLjEuMSAwIDAgMC0uMDIuMDRsLS4wNS0uMjJoLjM3Yy44LjEyIDEuNjIuMTYgMi40NC4xMloiIGZpbGw9IiM4Q0M5RDQiLz48cGF0aCBkPSJNOC4yMyA4LjkzYy0uMjMuMS0uNDUuMTQtLjY1LjEzbC0uODctLjAyYy0uMTQgMC0uMzMuMDItLjU2LjA2LjE4LS4xMi40LS4xNy42NC0uMTZsLjkuMDJjLjE0IDAgLjMxLS4wMS41MS0uMDcuMDIgMCAuMDMgMCAuMDMuMDJ2LjAyWiIgZmlsbD0iI0U4QjNBNSIvPjxwYXRoIGQ9Ik04LjU3IDguOTJjLS4wNi4wNC0uMDguMDktLjA0LjE0bC4wMy4wNnYuMjFjMCAuMDMtLjAyLjA1LS4wNS4wNWEuMDUuMDUgMCAwIDAtLjA0LjAzbC0uMDkuMjRjLjA1LS4yNC4wNi0uNDYuMDQtLjY3IDAtLjAyIDAtLjAzLjAyLS4wNGwuMTMtLjAyWiIgZmlsbD0iIzlCMkYyRiIvPjxwYXRoIGQ9Im0xMy42IDkuMzkuMzIuMzFoLjAybC0uMjMtLjI3Yy0uMDQtLjA0LS4wMy0uMDYuMDItLjA2TDE1IDkuNGE1Ljc5IDUuNzkgMCAwIDEtLjQgMS43OC40NS40NSAwIDAgMC0uMTItLjIxLjA2LjA2IDAgMCAxLS4wMS0uMDV2LS4wM2MtLjIxLS4zLS40Ni0uNTgtLjc1LS44MWExLjQgMS40IDAgMCAwLS4zOC0uMzNjLS4xLS4wNS0uMTUtLjEzLS4yNS0uMThhMS4zMiAxLjMyIDAgMCAxLS4yLS4xIDEuMjYgMS4yNiAwIDAgMC0uMTgtLjEyLjQyLjQyIDAgMCAxLS4yMi0uMS4wOS4wOSAwIDAgMC0uMDYtLjAyYy0uMDcgMC0uMTItLjA0LS4xNy0uMTFsLS4wMi0uMDR2LS4wM2wuMDEtLjAyYS4wNC4wNCAwIDAgMSAuMDQgMCAxNi44NSAxNi44NSAwIDAgMCAuNjcuMjJsLjIuMDlhMSAxIDAgMCAxIC4zOC4xN2MuMDQuMDMuMDcuMDMuMS4wMi4wMi0uMDEuMDItLjAzLjAyLS4wNWEuMi4yIDAgMCAwLS4wNy0uMDhaIiBmaWxsPSIjMDAyNzQ4Ii8+PHBhdGggZD0iTTYuNjQgOS44YS42LjYgMCAwIDEgLjIyLS4ybC4wNS0uMDQuMTYtLjE3aC4wM2wuMDEuMDJjMCAuMDIuMDEuMDIuMDIgMGwuMDctLjA3YTIuNjggMi42OCAwIDAgMC0uMjUuOTNoLjAydi0uMDFhMyAzIDAgMCAxIC4yOC0uNzJjLjEtLjE4LjI0LS4zMi40LS40MS4wMy0uMDMuMDYtLjAzLjA4IDAgLjAxLjAyLjAzLjAzLjA1LjAzbC4yLS4wNGMuMTUtLjA0LjI1LjAxLjI4LjE3di4wNWE1Ljc4IDUuNzggMCAwIDEtLjU1Ljg0bC4wMy4wMmMuMDIgMCAuMDQgMCAuMDUtLjAybC40LS40aC4wMnYuMDRjLS4yMy4yNy0uNDUuNDYtLjY1LjU4LS4yNS4xMy0uNDguMi0uNzEuMmEuMjUuMjUgMCAwIDEtLjItLjEuNC40IDAgMCAxLS4wOC0uMTguOC44IDAgMCAxIC4wNy0uNTJaIiBmaWxsPSIjRUY2NTY4Ii8+PHBhdGggZD0iTTEyLjI2IDkuMWMuMDUuMDguMS4xMi4xNy4xMmwuMDYuMDJjLjA2LjA2LjEzLjA5LjIyLjFsLjE5LjEyLjIuMWMuMDkuMDUuMTMuMTMuMjQuMTguMTQuMDkuMjcuMi4zOC4zMy4xLjE1LjIyLjI5LjMzLjQxbC4wNy4xYy4wNC4xLjEyLjE3LjE1LjI3LjAyLjA4LjA3LjE4LjE0LjNhLjEyLjEyIDAgMCAxIC4wMS4wOGwtLjAxLjAzLS4wMy4wMi0uMDEuMDRjMCAuMDIuMDEuMDQuMDMuMDUuMDIuMDIuMDMuMDQuMDEuMDhhLjAzLjAzIDAgMCAxLS4wNC4wMWwtLjAxLS4wMS0uMDctLjE5di0uMDVjLjAyLS4wMS4wMi0uMDIuMDItLjA0cy0uMDItLjAzLS4wNC0uMDNsLS4wNC0uMDJhNS4yOSA1LjI5IDAgMCAwLS4zLS41MmMwLS4wMi0uMDEtLjAyLS4wMy0uMDJsLS4wMi4wMWEuMDIuMDIgMCAwIDAtLjAxLjAxdi4wMWMuMi4zMy4zNi42Ny40NiAxLjA0LjAzLjA4IDAgLjE0LS4wNS4xOGEzLjY4IDMuNjggMCAwIDAtLjgtMS42OSAyLjIgMi4yIDAgMCAwLTEuMTgtLjcyLjA3LjA3IDAgMCAxLS4wMS0uMDNsLS4wNS0uMjRjMC0uMDEgMC0uMDMuMDItLjA0WiIgZmlsbD0iI0YzRjJGMCIvPjxwYXRoIGQ9Im03LjIgOS4zNC0uMDcuMDhoLS4wMnYtLjAzaC0uMDRsLS4xNi4xN2EuMTguMTggMCAwIDEtLjA1LjAzLjYuNiAwIDAgMC0uMjIuMmMuMS0uMjcuMjgtLjQ3LjU1LS42YS41LjUgMCAwIDAgLjA3LS4wNGMuMDItLjAyLjA1LS4wMi4wNy0uMDIuMDcgMCAuMDcuMDMuMDIuMDctLjA2LjA0LS4xLjA5LS4xNS4xNFoiIGZpbGw9IiM5QjJGMkYiLz48cGF0aCBkPSJNNC42MyA5LjUyYzAtLjAyIDAtLjAyLjAxLjAxbC0uMDEuMDJINC42Yy0uMDctLjA3LS4wOS0uMTQtLjA2LS4yMy4wNC4wNS4wNi4xMS4wOC4yWk01IDkuNThjLjEtLjAxLjE0IDAgLjEuMDUtLjE3LjA0LS4zIDAtLjQtLjE0YS4xNS4xNSAwIDAgMS0uMDMtLjFjMC0uMDIuMDEtLjAzLjAyIDAgLjA1LjEzLjE1LjE5LjMuMlpNOS4zOSAxMC4xNWMtLjQuMjktLjc3LjQ4LTEuMTIuNTctLjE1LjA0LS4xNS4wMy0uMDItLjA1bC40LS4xOGMuNC0uMi42OS0uMzYuODUtLjUuMTYtLjEzLjI5LS4yNi4zOC0uMzkuMDktLjExLjEtLjEuMDMuMDItLjEyLjIyLS4zLjQtLjUyLjUzWiIgZmlsbD0iI0U4QjNBNSIvPjxwYXRoIGQ9Im0xNC4yMiAxMS45NS0uMjYuNDNoLS4wMmMtLjAyLS4wMS0uMDItLjAyLS4wMS0uMDN2LS4wMmMwLS4wMiAwLS4wMy0uMDMtLjAzYTUuMDcgNS4wNyAwIDAgMC0uNDMuMWwtLjAyLS4wNy40NC0uMTRjLjAyLS4wMS4wMy0uMDIuMDMtLjA1YS45OS45OSAwIDAgMC0uMDYtLjMyIDEuOTUgMS45NSAwIDAgMS0uMTUtLjM3IDEuMDQgMS4wNCAwIDAgMC0uMS0uMjMgMi43NCAyLjc0IDAgMCAxLS4xLS4yMi43OC43OCAwIDAgMC0uMTEtLjE4LjE5LjE5IDAgMCAxLS4wNC0uMDlsLS4wMi0uMWEuMDguMDggMCAwIDAtLjAyLS4wNC44OC44OCAwIDAgMS0uMjEtLjI0LjI1LjI1IDAgMCAwLS4xLS4xMmMtLjAyIDAtLjA2LS4wNC0uMTQtLjFhMS4xNiAxLjE2IDAgMCAwLS4yLS4xMWMtLjE2LS4wOC0uMjktLjE4LS4zOS0uMzFsLjAzLS4xNGMwLS4wMy4wMS0uMDMuMDQtLjAzLjE1LjAzLjMuMDguNDMuMTUuMjcuMTQuNS4zNC43Mi42LjM4LjQ4LjYyIDEuMDMuNzIgMS42NloiIGZpbGw9IiNGM0YyRjAiLz48cGF0aCBkPSJNNy40NyAxMC4xMmMtLjA2LjA0LS4wNy4wMy0uMDMtLjAybC4zNy0uNDloLjAydi4wMmMtLjAyLjItLjE4LjM4LS4zNi41WiIgZmlsbD0iI0U4QjNBNSIvPjxwYXRoIGQ9Im01LjM3IDEyLjMzLS4wMi0uMDFjLjAxLS4zMy4wNC0uNjIuMS0uODcuMDYtLjMzLjItLjY0LjQtLjk1LjAzLS4wMy4wMy0uMSAwLS4yLjAzLS4wOC4wMy0uMTQgMC0uMThhLjM3LjM3IDAgMCAwLS4xOS0uMjIuNDUuNDUgMCAwIDAtLjE4LS4xLjIxLjIxIDAgMCAwLS4xMS0uMDYuMS4xIDAgMCAwLS4wNi4wMi4zNy4zNyAwIDAgMS0uMjUuMDJ2LS4wM2wuMzItLjFoLjA2Yy4yMi4xNC40MS4zLjU4LjUuMDIuMDIuMDMuMDQuMDIuMDctLjA1LjE0LS4wNy4zLS4wNy40OXYuMzNjMCAuMTMuMDIuMjQuMDQuMzJhNC4yNyA0LjI3IDAgMCAwIC4xLjM1YzAgLjAyIDAgLjAzLS4wMi4wNC0uMTQuMS0uMy4yLS40OC4yNy0uMTUuMDctLjIxLjE2LS4yNC4zMVoiIGZpbGw9IiNGM0YyRjAiLz48cGF0aCBkPSJNMTIuMjggOS43Yy4xLjE0LjIzLjI0LjQuMzJsLjIuMTIuMTIuMDljLjA1LjAzLjA4LjA2LjEuMTIuMDQuMDYuMS4xNC4yMi4yNGwuMDMuMDUuMDEuMWMwIC4wMy4wMi4wNi4wNC4wOC4wNS4wNi4wOC4xMi4xMS4xOGwuMS4yMmMuMDQuMDcuMDguMTUuMS4yMy4wMy4xMi4wOC4yNC4xNS4zNy4wMy4wNS4wNS4xNi4wNi4zMiAwIC4wMyAwIC4wNC0uMDMuMDVsLS40NC4xNGMtLjEtLjEzLS4yMS0uMTYtLjMtLjA3LS4wOS4wNy0uMDguMDguMDIuMDQuMS0uMDUuMTgtLjAxLjI1LjEydi4wMWguMDNsLjAyLS4wMmguMDZjLjEtLjAzLjIyLS4wNy4zNy0uMS4wMy0uMDEuMDQgMCAuMDQuMDJsLS4wMS4wMmMtLjAxLjAxIDAgLjAyLjAxLjAybC4wMi4wMWE1LjM1IDUuMzUgMCAwIDEtMS4zNyAxLjQxaC0uMWEuNDcuNDcgMCAwIDAtLjI4IDAgMiAyIDAgMCAwLS4zMy4xNy43MS43MSAwIDAgMC0uMy40NyA1Ljg3IDUuODcgMCAwIDEtMi41NS41NmMtLjA1IDAtLjA5LS4wMy0uMS0uMDhhLjA4LjA4IDAgMCAwLS4wNS0uMDVjLS4yMy0uMTEtLjQzLS4xLS42LjA2YS4wOC4wOCAwIDAgMS0uMDYuMDJjLS4yNCAwLS40NS0uMDQtLjY0LS4xNWEuMS4xIDAgMCAxLS4wNC0uMDQuNS41IDAgMCAwLS4yMy0uMjQuMDYuMDYgMCAwIDEtLjA0LS4wNC41Ni41NiAwIDAgMC0uMDgtLjE4IDE1LjEzIDE1LjEzIDAgMCAwIDEuNTUtLjM2SDguN2wtMS41NS4yNy0uMjktLjYyLS4wMi0uMDJoLS4wMmMtLjAyLS4wMS0uMDItLjAzIDAtLjA1bC4wMi0uMDIuNDctLjI0YS4xMS4xMSAwIDAgMSAuMDYtLjAyYy4zLjAxLjQ4LS4xNS41NC0uNSAwLS4wMi4wMS0uMDIuMDMgMGwuMjcuMjNhLjMuMyAwIDAgMCAuMi4wOGMuMDggMCAuMTYtLjAyLjIyLS4wNWExLjE2IDEuMTYgMCAwIDAgLjQ3LS40Mi4wNC4wNCAwIDAgMSAuMDUuMDFjLjEuMTQuMjMuMjYuNC4zNS4xNS4xLjMyLjEzLjUuMS4zMS0uMDMuNTctLjE0Ljc2LS4zMi41LS40NS44OS0xLjA1IDEuMTgtMS43N2wuMTYtLjQyYy4xLS4yNy4xNC0uNTQuMTItLjgxWiIgZmlsbD0iI0I3QUE5NyIvPjxwYXRoIGQ9Ik01LjQ4IDkuOGMtLjE0LjEyLS4yOC4yNS0uMzguNGEuOC44IDAgMCAxLS4xOS4yMmMtLjIyLjE1LS4yNi4xMS0uMTMtLjEybC4zLS40NGMuMDItLjAzLjAyLS4wNi0uMDItLjA4LjEuMDIuMTguMDEuMjUtLjAzYS4xLjEgMCAwIDEgLjA2IDBjLjA0IDAgLjA4LjAyLjExLjA0WiIgZmlsbD0iIzE5NjM3OCIvPjxwYXRoIGQ9Im0xMi4yIDkuNzgtLjEuNzEtLjAzLjAzLjEzLS43NFoiIGZpbGw9IiNCN0FBOTciLz48cGF0aCBkPSJNNS42NiA5LjljLjEuMDYuMTYuMTMuMTguMjItLjI0LjIzLS40NS41LS42My44bC0uMjUuMzdoLS4wNGEuMDIuMDIgMCAwIDEtLjAyLS4wM2wuMi0uNjFjLjE2LS4yNy4zNS0uNTIuNTYtLjc1Wk0xNC42IDExLjE3bC0uMTguNDItLjAyLjA2YzAgLjEtLjAzLjE2LS4xLjIxbC0uMDItLjAzYy4wNi0uMDQuMDgtLjEuMDUtLjE4YTMuOTcgMy45NyAwIDAgMC0uNDUtMS4wNmguMDZsLjMuNTNjMCAuMDEuMDEuMDIuMDMuMDIuMDIgMCAuMDMuMDEuMDQuMDNsLS4wMS4wNGEuMDUuMDUgMCAwIDAtLjAxLjA1bC4wNy4xOWEuMDMuMDMgMCAwIDAgLjA0LjAxbC4wMS0uMDFjLjAyLS4wNC4wMS0uMDYtLjAxLS4wOGEuMDcuMDcgMCAwIDEtLjAzLS4wNWwuMDEtLjA0Yy4wMSAwIC4wMiAwIC4wMy0uMDJhLjEuMSAwIDAgMCAuMDEtLjAzLjEuMSAwIDAgMCAwLS4wNGwtLjAxLS4wNGExLjE2IDEuMTYgMCAwIDEtLjE0LS4zYy0uMDMtLjEtLjEtLjE3LS4xNS0uMjdhLjM4LjM4IDAgMCAwLS4wNy0uMSAzLjQ4IDMuNDggMCAwIDEtLjMzLS40MSAzLjg2IDMuODYgMCAwIDEgLjc1Ljg0bC4wMS4wNWMuMDYuMDYuMS4xMy4xMi4yMVoiIGZpbGw9IiMxOTYzNzgiLz48cGF0aCBkPSJNNS44NCAxMC4xMmMuMDQuMDQuMDQuMS4wMi4xOS0uMTUuMTItLjI2LjI0LS4zNC4zNmE0LjkgNC45IDAgMCAwLS41OCAxLjU1bC0uMi0uMWMuMDItLjE3LjA2LS4zMy4xMy0uNDYuMDYtLjEuMDgtLjE3LjEtLjI2bC4xLS4yYy4wNS0uMDkuMS0uMTguMTQtLjI5LjE4LS4zLjM5LS41Ni42My0uOFoiIGZpbGw9IiMwMDI3NDgiLz48cGF0aCBkPSJNNS44NiAxMC4zYy4wMi4xLjAyLjE3IDAgLjItLjIxLjMtLjM1LjYyLS40Mi45NS0uMDUuMjUtLjA4LjU0LS4wOS44Ny0uMDQuMDctLjA1LjEyLS4wNC4xNWwuMDguMzRhLjQzLjQzIDAgMCAxLS4wMi4wN2MtLjA1LjA2LS4wOC4wNS0uMDktLjAzdi0uMTdsLS4wMy0uMDItLjAyLjAxdi4xNmMtLjAxLjAyLS4wMi4wMy0uMDQuMDNsLS4wOC0uMDZhLjA4LjA4IDAgMCAwLS4wNS0uMDNjLS4wMyAwLS4wNiAwLS4wOC4wNGEuMDQuMDQgMCAwIDEtLjA0LjAzbC0uMDEtLjAxLS44MS0uNS0uMDIuMDF2LjAyYy4yLjE2LjQyLjMuNjMuNGwuMi4xM2MuMDYuMDQuMTMuMDguMi4xYS4wNS4wNSAwIDAgMSAuMDUuMDVsLjAyLjE1LjA0LjA0Yy4wMi4wMS4wNCAwIC4wNC0uMDN2LS4wNWMwLS4wMyAwLS4wNC4wMy0uMDNoLjA0bC4wNS4yYy4wMi4wNy4wMy4xMy4wMy4yMnMuMDEuMTkuMDQuM2E1LjUgNS41IDAgMCAxLTEuNi0xLjc0Yy0uMTEtLjE3LS4yMy0uMzUtLjMtLjU0bC0uMS0uMjVjLjA4LS4wMi4xNi4wNS4yMi4xMmwuMS4wOGExNC4zOCAxNC4zOCAwIDAgMCAuNzQuNDQuMDUuMDUgMCAwIDAgLjAzLS4wM2MuMS0uNDUuMjktLjg4LjU0LTEuMjdsLS4yLjYxYS4wMi4wMiAwIDAgMCAwIC4wMmwuMDEuMDFoLjA0bC4yNi0uMzgtLjE0LjNhLjkzLjkzIDAgMCAwLS4xLjE4Yy0uMDMuMS0uMDQuMTYtLjEuMjctLjA3LjEzLS4xMS4yOS0uMTIuNDVMNC41NyAxMmgtLjAybC0uMDIuMDF2LjA0Yy4wNS4wNi4xMi4xLjIuMTJsLjA1LjAyYy4wNS4wNC4xLjA1LjE2LjAzLjEyLS41OC4zMi0xLjEuNTgtMS41NC4wOC0uMTMuMTktLjI1LjM0LS4zNloiIGZpbGw9IiMwMTM1NEUiLz48cGF0aCBkPSJNNi4yIDEwLjRjMCAuMDMgMCAuMDYtLjAyLjA5YTIuODIgMi44MiAwIDAgMCAuMDcgMS4wMyA0Ni41NiA0Ni41NiAwIDAgMSAuMjcuNjEgMi40OCAyLjQ4IDAgMCAwIC43NC45Yy4wNC4wMS4wNC4wMyAwIC4wNWExLjY5IDEuNjkgMCAwIDEtLjQ0LS4zNmMtLjMtLjM3LS41MS0uNzgtLjY0LTEuMjRhMi41IDIuNSAwIDAgMS0uMDUtMS4wN2MwLS4wMiAwLS4wMy4wMi0uMDRsLjA0LS4wMXYuMDRaIiBmaWxsPSIjRThCM0E1Ii8+PHBhdGggZD0iTTEzLjMgMTAuOTdjLjA1LjA3LjA4LjEuMDguMTIuMDcuMjUuMS40My4wOC41My0uMDIuMTMtLjEuMi0uMjYuMjJhLjcuNyAwIDAgMS0uMzgtLjA1Yy0uMDYtLjAzLS4xMS0uMS0uMTQtLjE5LS4wNi0uMjItLjEtLjQ0LS4xLS42Ny0uMDItLjE4LjA1LS4zMS4yLS4zOGguMDZsLjIyLjFjLjA2LjA0LjEyLjEuMTcuMmwuMDcuMTJaIiBmaWxsPSIjNTc1MDQ4Ii8+PHBhdGggZD0iTTExLjk0IDEwLjk2Yy0uMTQuMzMtLjMzLjY1LS41Ny45NGwuNTQtLjk2Yy4wMS0uMDIuMDItLjAyLjAyIDB2LjAyWiIgZmlsbD0iI0I3QUE5NyIvPjxwYXRoIGQ9Ik04LjQ0IDEyLjk1Yy0uMTYtLjA2LS4yNy0uMTMtLjMyLS4yYTIuMzYgMi4zNiAwIDAgMS0uMjgtMS4zN2MwLS4wMi4wMS0uMDUuMDMtLjA3LjAyLS4wMi4wMy0uMDEuMDMuMDFsLjAzLjQxYy4wMi4zNi4xMS43LjI4IDEuMDIuMDMuMDYuMDYuMDguMTQuMTEuMDQuMDIuMDcuMDUuMS4xWk03LjIgMTEuMzVjLjA5LjE4LjEzLjM1LjI2LjUxbC4xNy4xNmMuMDYuMDYuMS4xMi4xNS4yYTEuNDggMS40OCAwIDAgMS0uNjItLjg1LjAyLjAyIDAgMCAxIC4wMS0uMDJoLjA0WiIgZmlsbD0iI0U4QjNBNSIvPjxwYXRoIGQ9Ik01LjYzIDEyLjQxYS41OS41OSAwIDAgMC0uMTMuMDhjLS4wNi4wNS0uMDguMDMtLjA3LS4wNC4wMS0uMTQuMDctLjI3LjIzLS4zMy4xMy0uMDUuMjktLjEzLjQ4LS4yMy4wMi0uMDEuMDQgMCAuMDUuMDFsLjIuMzlBMi4xMyAyLjEzIDAgMCAwIDcgMTNsLjIuMTV2LjAzbC0uMzQuMmgtLjAyYS4wMy4wMyAwIDAgMS0uMDMtLjAyYy0uMDgtLjE4LS4xNC0uMzMtLjI4LS40Ny0uMjEtLjIxLS40Ni0uMzctLjc1LS40Ny0uMDctLjAyLS4xMS0uMDItLjE0LS4wMVoiIGZpbGw9IiM3QzUxM0MiLz48cGF0aCBkPSJNMTAuMyAxMi43N3YtLjA0Yy0uMDEtLjA1LS4wMy0uMDUtLjA1IDBhLjUxLjUxIDAgMCAxLS4xOS4yLjEuMSAwIDAgMS0uMDUuMDFjLS4yNy0uMDItLjUtLjEzLS42OS0uMzNhLjUxLjUxIDAgMCAxLS4xNC0uMjQuODMuODMgMCAwIDEgMC0uMjguMTUuMTUgMCAwIDEgLjE1LS4xM2guMjZjLjAxIDAgLjAyIDAgLjAyLS4wMnYtLjAxbC0uMDItLjAxYS45Ny45NyAwIDAgMC0uMzgtLjAybC4xOC0uMDNjLjA2IDAgLjEyIDAgLjE4LjAyLjM4LjE0LjY3LjM3Ljc0Ljh2LjA1bC0uMDEuMDNaIiBmaWxsPSIjOUIyRjJGIi8+PHBhdGggZD0ibTQuNzUgMTIuMTEuMi4xYS4xOC4xOCAwIDAgMS0uMTctLjAzLjE1LjE1IDAgMCAwLS4wNi0uMDIuMzYuMzYgMCAwIDEtLjE5LS4xMlYxMmguMDJ2LS4wMWguMDJsLjE4LjEyWiIgZmlsbD0iIzE5NjM3OCIvPjxwYXRoIGQ9Im0xMy40NSAxMi4zMy4wMi4wOC0uMDMuMDJhLjAyLjAyIDAgMCAxLS4wMi0uMDFjLS4wNy0uMTMtLjE1LS4xNy0uMjUtLjEyLS4xLjA0LS4xLjAzLS4wMi0uMDQuMDktLjA5LjItLjA2LjMuMDdaIiBmaWxsPSIjNTQzOTMwIi8+PHBhdGggZD0ibTUuNCAxMi44MS0uMDUuMzItLjA0LS4wMWMtLjAyIDAtLjAzIDAtLjAzLjAzdi4wNmMwIC4wMi0uMDIuMDMtLjA0LjAyYS4xLjEgMCAwIDEtLjA0LS4wNC42OC42OCAwIDAgMS0uMDItLjE1YzAtLjAxIDAtLjAyLS4wMi0uMDNMNS4xNCAxM2EuNjMuNjMgMCAwIDEtLjIxLS4xIDEuMjIgMS4yMiAwIDAgMC0uMi0uMTIgMy44NSAzLjg1IDAgMCAxLS42My0uNDNsLjAxLS4wMi44Mi41MWEuMDQuMDQgMCAwIDAgLjAzIDBoLjAxbC4wMS0uMDJjLjAyLS4wMy4wNS0uMDUuMDgtLjA0LjAyIDAgLjA0LjAyLjA1LjAzbC4wOC4wNmMuMDIgMCAuMDMgMCAuMDMtLjAzbC4wMS0uMTVjMC0uMDIuMDEtLjAyLjAyLS4wMmwuMDIuMDIuMDEuMTdjMCAuMDguMDQuMS4xLjA0bC4wMS0uMDhaIiBmaWxsPSIjMTk2Mzc4Ii8+PHBhdGggZD0ibTUuMzUgMTIuMzIuMDIuMDFjLS4wMy4wNS0uMDQuMS0uMDMuMTNsLjA4LjI3Yy4wMy4xLjA3LjE4LjEyLjI0LjE4LjIuMzcuMzYuNTcuNDYuMDIuMDEuMDMuMDIuMDMuMDQuMDMuMzIuMS42Mi4yMy45bC0uMDUuMDNhLjUyLjUyIDAgMCAwLS4yNC0uMTJjLjAzIDAgLjAyLS4wMi0uMDQtLjA2YS44NS44NSAwIDAgMC0uMS0uMzQuMS4xIDAgMCAxLS4wMS0uMDVjMC0uMDIgMC0uMDQuMDItLjA1YS4xNC4xNCAwIDAgMCAuMDQtLjEyLjE1LjE1IDAgMCAwLS4wNi0uMWMtLjA2LS4wNi0uMDktLjA3LS4xMi0uMTZhLjUyLjUyIDAgMCAwLS4yLS4yNWgtLjAzYy0uMDIgMC0uMDIgMCAwIC4wMWwuMDQuMDNhLjA0LjA0IDAgMCAxIC4wMi4wM2wuMDUuMzRjLjA0LjA3LjA1LjE0LjAzLjIxYS4xLjEgMCAwIDAgMCAuMDZjLjAzLjA3LjA1LjE0LjA0LjIxbC0uMy0uMmExLjYgMS42IDAgMCAxLS4wMy0uMy44MS44MSAwIDAgMC0uMDMtLjIxIDQuNjQgNC42NCAwIDAgMS0uMDUtLjJsLjA0LS4zMi0uMDgtLjM0Yy0uMDEtLjAzIDAtLjA4LjA0LS4xNVoiIGZpbGw9IiNCRkJGQkYiLz48cGF0aCBkPSJtMTIuNDggMTMuMjUuMjYtLjQxLjMzLS4zMmMuMDQtLjA1LjEtLjA4LjE0LS4wOGEuMDkuMDkgMCAwIDEgLjA3LjAxLjA5LjA5IDAgMCAxIC4wMy4wNmMuMDEuMDYgMCAuMTMtLjA0LjItLjE1LjMtLjM0LjU0LS41OC43MWEuMjkuMjkgMCAwIDEtLjExLjA1Yy0uMDUuMDEtLjA5IDAtLjExLS4wMy0uMDMtLjA0LS4wMy0uMSAwLS4xOVoiIGZpbGw9IiM1NDM5MzAiLz48cGF0aCBkPSJNNS41NCAxMi44OGMtLjA3LS4xLS4wNy0uMjIuMDEtLjMzYS4wNy4wNyAwIDAgMSAuMDUtLjAzYy4xMS0uMDIuMjItLjAxLjMuMDMuMTcuMDcuMzIuMTcuNDcuM2ExLjE2IDEuMTYgMCAwIDEgLjM0LjUyLjA1LjA1IDAgMCAxLS4wNC4wNGMtLjA4IDAtLjIgMC0uMzgtLjAyYS43LjcgMCAwIDEtLjMzLS4xMiAxLjY2IDEuNjYgMCAwIDEtLjQyLS40WiIgZmlsbD0iIzlCMkYyRiIvPjxwYXRoIGQ9Im0xMi43NCAxMi44NC0uMjYuNDEtLjA1LjAzLS4wMi0uMDItLjAyLS4wMnYtLjAybC4wMS0uMDIuMzQtLjM2WiIgZmlsbD0iI0U4QjNBNSIvPjxwYXRoIGQ9Ik0xMi43NCAxMy4yNGMuMDctLjA3LjE4LS4yLjMzLS40IDAtLjAyLjAyLS4wMi4wMyAwaC4wMXYuMDJsLS4yLjI5YS44Mi44MiAwIDAgMS0uMy4yM2wtLjAxLS4wMXYtLjAybC4xNC0uMVoiIGZpbGw9IiM3QzUxM0MiLz48cGF0aCBkPSJtNi4wNCAxNC4yMi0uMjgtLjE4YzAtLjA3IDAtLjE0LS4wMy0uMjFhLjEuMSAwIDAgMSAwLS4wNi4yOS4yOSAwIDAgMC0uMDQtLjJ2LS4wMWwtLjA1LS4zNGEuMDQuMDQgMCAwIDAtLjAyLS4wM2wtLjA1LS4wM3YtLjAybC4wNS4wMWMuMDkuMDcuMTUuMTUuMTkuMjUuMDMuMDkuMDYuMS4xMy4xNWEuMTUuMTUgMCAwIDEgLjA1LjExLjE0LjE0IDAgMCAxLS4wNC4xMi4wNy4wNyAwIDAgMC0uMDIuMDVsLjAxLjA1Yy4wNi4xLjEuMjIuMS4zNFoiIGZpbGw9IiMxOTYzNzgiLz48cGF0aCBkPSJNMTIuMzcgMTMuMjNjLS4wOC4yLS4wNS4zLjE3LjM2di4wMmwtLjAyLjAxYS4yOC4yOCAwIDAgMS0uMjEtLjA4Yy0uMTItLjEtLjA1LS4yNS4wNC0uMzMuMDMtLjAyLjA0LS4wMi4wMi4wMloiIGZpbGw9IiM1NDM5MzAiLz48cGF0aCBkPSJtNi40MiAxMy41Mi4xOC4wNWMuMDIgMCAuMDMuMDIuMDIuMDQtLjAzLjAzLS4wNS4wNC0uMDcuMDMtLjA2LS4wMS0uMDkuMDEtLjA4LjA4LjAxLjIuMDYuMzcuMTQuNTMuMDEuMDIuMDMuMDMuMDUuMDJsLjUtLjA3YTc2LjU0IDc2LjU0IDAgMCAwIDEuNTctLjI2Yy0uNTIuMTQtMS4wMy4yNi0xLjU0LjM1bC0uNS4wOWMtLjA0IDAtLjA0LjAyLS4wMi4wNGwuMDYuMWMuMDIuMDMuMDIuMDQtLjAyLjAzYS40My40MyAwIDAgMS0uMjMtLjEyYy0uMTItLjMtLjItLjYxLS4yNi0uOTMgMC0uMDIuMDEtLjAzLjAzLS4wMmwuMTcuMDRaIiBmaWxsPSIjRjNGMkYwIi8+PHBhdGggZD0iTTYuODUgMTMuNWEuMDcuMDcgMCAwIDAtLjAzLjAxbC4wMS4wNC4wMi4wMS4wMi4wMi4zLjYyLS41MS4wN2MtLjAyIDAtLjA0IDAtLjA1LS4wMmExLjMyIDEuMzIgMCAwIDEtLjE0LS41M2MwLS4wNy4wMi0uMS4wOC0uMDguMDIgMCAuMDUgMCAuMDctLjAzIDAtLjAyIDAtLjA0LS4wMi0uMDRsLS4xOC0uMDUuNDMtLjAzWiIgZmlsbD0iIzY5Njg2OCIvPjxwYXRoIGQ9Ik0xMi41IDEzLjc5Yy0uMTEuMTUtLjI1LjI3LS40My4zNi0uMTIuMDYtLjI5LjE1LS41LjI4YS43MS43MSAwIDAgMSAuMzEtLjQ3IDIgMiAwIDAgMSAuMzMtLjE4LjQ3LjQ3IDAgMCAxIC4yOC4wMVoiIGZpbGw9IiM1NzUwNDgiLz48cGF0aCBkPSJtMTAuNzggMTMuOTEtLjA1LjAzYS4xNC4xNCAwIDAgMC0uMDcuMThsLjA0LjA4Yy4wMy4wNy4xMS4xLjE4LjA3bC4wNi0uMDNjLjA2LS4wMy4xLS4xMS4wNi0uMThsLS4wNC0uMDhhLjE0LjE0IDAgMCAwLS4xOC0uMDdaIiBmaWxsPSIjNjk2ODY4Ii8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCAXL.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.715Z","timestamp":1785126258715,"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 /crypto/XTVCAXL.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 04:24:18 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: \"689d9a76bea661f3bec76215ae1c90c2\"\r\nlast-modified: Thu, 11 Jun 2026 10:27:22 GMT\r\nx-amz-id-2: 4lUMZc1nmfcqMs2eFUh1QAJwBYRZXZ2AAhEwD/4pNFfa0FyoOkz7urggoiPKGs4AlJdhIp9acsU=\r\nx-amz-request-id: 0Z2CXT48AH3MNNRA\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 689d9a76bea661f3bec76215ae1c90c2\r\nx-amz-version-id: jdFUHS8mGBC3FjL3Pg9g6ZtEZJwY94Oc\r\ncdn-proxyver: 1.55\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 06/11/2026 14:21:27\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 419a0a70bc394dea295654600bc8a312\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":495,"size_decoded":1291,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (495), with no line terminators","md5":"689d9a76bea661f3bec76215ae1c90c2","sha1":"dd307b3763538328eb1e6d086aa39777c8dab1ec","sha256":"eb66d9ef28c72165f2083d068c40b565626797eb96d06d5b78fd81b4ae071af6","sha512":"ae709b21d9762adc68b16336413a82a9f17689e8ece1b27d20d9a4c3e7095270a52b5a67deaa95edb0379e744a5d2e0b8323e772a6fdcc559bc48fd6ff9a3c23","ssdeep":"","tlshash":"cbf050a5f7d5a52d028347b49520c1943b7f70ba7fc5d1fd6409dabc8150d87d553908","first_seen":"2024-08-21T08:17:04Z","last_seen":"2026-07-27T05:33:43.676962Z","times_seen":605,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJtOS41OCA4LjIxIDMuMDUtMy4wNUwxMS40OCA0IDkgNi40NyA2LjUzIDQgNS4zNyA1LjE2IDguNDIgOC4yYS44Mi44MiAwIDAgMCAxLjE2IDBaTTE0IDExLjQ3IDExLjUzIDkgMTQgNi41MmwtMS4xNi0xLjE1TDkuOCA4LjQyYS44Mi44MiAwIDAgMCAwIDEuMTZsMy4wNSAzLjA1TDE0IDExLjQ3Wm0tNSAuMDZMMTEuNDcgMTRsMS4xNi0xLjE2TDkuNTggOS44YS44Mi44MiAwIDAgMC0xLjE2IDBsLTMuMDUgMy4wNUw2LjUyIDE0IDkgMTEuNTNaTTguMiA5LjU4YS44Mi44MiAwIDAgMCAwLTEuMTZMNS4xNiA1LjM3IDQgNi41MyA2LjQ3IDkgNCAxMS40OGwxLjE2IDEuMTVMOC4yIDkuNThaIi8+PC9zdmc+"}},"time_used":130,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":130,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCMLK.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.782Z","timestamp":1785126258782,"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 /crypto/XTVCMLK.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 04:24:18 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: \"ee4aea21971cf3f566424ffdb2e17cd2\"\r\nlast-modified: Wed, 08 Sep 2021 09:05:35 GMT\r\nx-amz-id-2: isep2rFWAMMr+D0O7aPM7kFKkZGTodJQPXnKQwH5QfVMiy0KOpvUQYQiGFX9voVV52eGDMgHwIQ=\r\nx-amz-request-id: 10HV9TJ6YD22NG3T\r\nx-amz-meta-hash: ee4aea21971cf3f566424ffdb2e17cd2\r\ncdn-proxyver: 1.53\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/28/2026 06:07:24\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 8cdb94d348d8974316ebcc1db7da7c6c\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":670,"size_decoded":1272,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (670), with no line terminators","md5":"ee4aea21971cf3f566424ffdb2e17cd2","sha1":"ad8ceb5fb3f86cf56d91baaad1dca44b231d1fa2","sha256":"2a6cfe3b9346e5d9b3be161316a80cc2a05cfed1a20937ae8b451c6e90da892f","sha512":"4c3fff1fef0f0dec2d92c9b348a616fdc869ed044d3323063946512ed8d509235e4d5d4c4d1aabb56745199a0bc475412457178d3be5cd333c2c0dd0a0badf81","ssdeep":"","tlshash":"71017bcb6b05528cc04a87562f704140a239b0baf7bb959ae4099559f7838dbbb12828","first_seen":"2026-06-05T07:21:33.255565Z","last_seen":"2026-07-27T07:05:43.267848Z","times_seen":171,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjNURCQUI4IiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTEzLjE0OCA1Ljc2OUw5LjgzIDMuNjExYTEuNjY0IDEuNjY0IDAgMDAtMS42NTIgMEw0LjgzNCA1Ljc3QzQuMjk0IDYuMDc4IDQgNi42NjMgNCA3LjI5M3YzLjQxYzAgLjYzMy4yOTQgMS4yMTUuODM0IDEuNTIzbDMuMzQgMi4xNThjLjUxMi4yOTMgMS4xNC4yOTMgMS42NTIgMGwzLjMxOC0yLjE1OGMuNTQtLjMwOS44NTYtLjg5Ljg1Ni0xLjUyNHYtMy40MWMwLS42MjktLjMxMi0xLjIxNC0uODUyLTEuNTIzek03IDkuOTg1QS45OS45OSAwIDAxNiAxMWEuOTkuOTkgMCAwMS0xLTEuMDE1VjguMDY0QzUgNy40ODcgNS40MzYgNyA2IDdjLjU2NCAwIDEgLjQ4NyAxIDEuMDY0djEuOTIxek05IDljLS41MDQtLjAwNC0xLS40MTktMS0xcy41MjUtMS4wMDMgMS0xYy40NzUuMDAzIDEgLjQxOSAxIDFhMS4wMSAxLjAxIDAgMDEtMSAxem00IC45ODVBLjk5Ljk5IDAgMDExMiAxMWEuOTkuOTkgMCAwMS0xLTEuMDE1VjguMDY0QzExIDcuNDg3IDExLjQzNiA3IDEyIDdjLjU2NCAwIDEgLjQ4NyAxIDEuMDY0djEuOTIxeiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg=="}},"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":"besttrader.live/admin/testimony-images/2082.jpg","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.105Z","timestamp":1785126256105,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /admin/testimony-images/2082.jpg HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/jpeg\r\ncontent-length: 257815\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-3ef17\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":257815,"size_decoded":258068,"mime_type":"image/jpeg","magic":"JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, baseline, precision 8, 1080x1350, components 3","md5":"b96208d6b1a61e390c3a1c6288050c1c","sha1":"1a5e90fc372a7236bbd5bec22271cc17c48cb1c5","sha256":"745621d38a8205ce1d99fe81e89d0e4603d6584a41ee9ffc92f758f18957c735","sha512":"153943248a77e7561544740a90004c16e828d426b0665b28d86f8e4a8103d6572ea8e84d57f479f228adce746573c1f71c488c46ce8cc457972807ea88bda6cf","ssdeep":"6144:4t9QRrw/5qbRb7E1eO8phdbltfvcKhF2OMw4DHfWLJrCw+1DMX:bRrw/5GXqa7d5ttn2pYC71Dk","tlshash":"f44412be0e8c011cd39dd7acd422e87f69818fbc6652849d57620771e38fad87841e9e","first_seen":"2026-07-27T03:36:44.991609Z","last_seen":"2026-07-27T04:25:12.625824Z","times_seen":2,"resource_available":false,"data":"/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/2wBDAQMEBAUEBQkFBQkUDQsNFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAVGBDgDASEAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD9CKK8I7R9OoAl8qn0ANooAKhqAPEv2qvMi8B6fIn7r/To677wv/yBdNk/6d46j7ZZv1YrYgTy6koAPKp9UA6ljoAZTqCRtJN5f7ygo+Zfhz/yW7xR/vTV71HWUQLNWKsBY6s0AFFBY+mVRBYptADK+b/CMq/8Ly8Sb4/+WlZSLPbo6mhiqwLlOjoAfRQQFWKAH0VADK474tRf8W/17/r1oA4/4Nyx/wDCE2sdd/S+ySTx1NTAKkjoNSbzafVkC+VTkoAKp6pL5Wn3n+7JQB5D8G4v+JDeSf8ALSS6kr0elD4RyJ46npkDqfQAyigAqagoK8w+N0v7nQf3fm/6ZHSn8IHRWv8AqY4/+edXIP8AVVYDo6s0AJDLHTvl9qi9x8oeb5VVdQ1SGwh/0iTyqnmuIyZvG+l2EMf2y8g86T/ppXOyfGnRYta+z/bk8vdVwjzE8pD8VvGWh6z4X8tL6Py/tC0aP4ytYtPhjeZP9XWXKO5e/wCFjaDa3UccupR+dXTWt1b38PmW80d5HURqtSK5Q83yqs10ylfQRapPMpASUUAPrgPEn/JQrf8A696gDejqzQBb82kqwLFPoAKfQAVz3jz/AJFuSP8A1X7yP97Sl8IFHT4lihj/AHdWo6IfCBchipaYFinUAPoqgCuV1r/kYo/+mcNKQFqpo4qQEtPj8ygCWp46AH02gBH/ANU1cPp8vm/vKiQGjVqgB9TRxVYDvN/c1JHQAtQXXmRQ0AcjJEvnSUU7lnvFFIgm/wBVHSUAS+bS0AFFABUNQB45+1V+6+HNrJ/zzvlrsvBv/Ir6b/1xjqPtlm9B/qqmrYglpPMoAnoqgCigB1FBI2igo+ZPA/8AyXjxNH+8/dySV75HWUQLEdT1YDqfQAVLQWPp9UQFFADK+b/Dv/JefE3+s/137uspFnuUP7qpqsCxT6AHU+ggKloAfRUAR+ZXI/Ff/knWvf8AXGgDhfgv5n/CD2MbyebXo9L7JI6rdMAqxDFQaj6lqyAplAD6z9ai83S7z/dagDyX4Qy/8SGT/rtJXo0dKHwjkWo4qd/q6ZBLRQAkdLQA/wAqOn0FBXlnxy/49dF/6+KU/hA6zT/+PWP/AHamkljiqwMHXtek0uP5Jo4q858ZftVeG/BF9/Z95JHLcbfMoA4PxR+3D4VihkuNLjk+1f8APK5rxG+/b18RS+dJZwxxeX/q62p07nP7Qo69+2b4417/AJi0EVee+Mv2jPGWvX3/ACHp7z5Y/Ll8ytqeHuZ+1Od1748eNr/RbXT3165/dzSSeVHXMzePPEV15kkutP522uunQ5TfnLn/AAu7XpY/sb6ldy/9NfM/d1Tj+JepfvrdNauvJkj/AOelZ+wQrly6+IOuXU0cd5rV15f/ACzllkr0b4c/tQeJPh9JHHb6lPeaX/q/sMlcksLaRPtD6g8B/tw6frPl2/iiz/s+aSP93c21e4eF/jd4b8RyR29vfRy+Z/q5a5sTH2dSx0Hokcscv3JPNoklpAOhlqxDLQBJXn+vf8lKh/641AHRR1ZoAnjqarAlp9AD6fHQAlcx48i83QZP96OlL4QIbWX9zVqOiHwgWalpgOjqZKACiqAlrkNY8z/hIo/+udKQF6Op6QBSx0AXKdHQA+m0ARXX/Hrcf9c2rjbH91D5dRIC9HU1AFipasCanUANqK6/1ckj/wB2gDjf9bJJRWdyz3yn1oQPjqWgAooAWOloAbRQB41+1JF5vwz/ANX/AKu6jkrqvAf73wnpO/8A1nk1j9ss6hKK2AkjqSggfRVAFOoAKKkkKZ5v76gD5l8JxfZfj94ijff53mSV77URKJY/LqzWoBVqgApY6AHU+gAooAi/1tfOfhv/AJOD1r/gVZVfiiB7ZHVqP91VlluiqIJaKksKsUEBRUAFch8Uv+RD1r/rjJSl8IHFfBv914Nta7+s6Xwkj/KqeugCapf9ZQUPp1ABT6CQqnrUv+g3n/XFqAPJ/hDa+V4Xk/6+JK9ESlD4Sh9WKZI6igAp/lUFBRVAMryr43S+ba6L/wA9o76sZK5ZvQ6zY+TH++rD8XfEHRdBsb77ZdRxfZ46cNTO58b/ABk/bDs9Uk+x+FLySW1jj/4+a+S9U1m61nUJLh7p/J+by/N/5abq9rCUOSJx1NSjdX/7uP7Rcf6uT93UM2sxxeXGkMdaVJXkWR/aprqSPZZ0XUt9a+ZG9ncwTf6z/VtWVirlWS/uvsMmyG7lhj/1n/TOs+HxRHF5m/8Ae/8ATKWtCzQj1TRb/wD5aVHNFHL5mzzPJ/5Zy0GRD5s38ckkvlyVoQ3/AJtr88cn7z955stSBcjv/Nhkj879z5daVj4o1jQZvtFnqUn/AFzikrOrT5qdgPoz4V/tzeJvCU0f9qR/2hY7l8y2r7c+HPx98J/EuH/Q75LO+j/1llc/LJXm1KDgdB6J5vlTVNDL++rljO5RahlrgdU/e/Eb5/8An1qpAdBHWhHWwEtS0AS0+gAooAlrlPiNL5Wlx/7y0p/CA2P/AFIq5HTAsR1JQBJHUlUAUUATQ/va5HWv+Ri/65rUgTR1doAKlSgB9WKoBI6fUgQX3+qm/wB2uRtf3sfmVEgLkdWI6ALNSx0ASeatJVgPSmzf8tKAOBSiuQs+g6dXWQFFAE1FABTqACm0AeQftOf8k1k/3q3vhz50vgnRY5f9dHDHWP2yzrkqWtgJqYlBA+iqAKdQAUVJIvlVDNL5VAHzXoP7r9oLVo/Mr3iOoiUT1arUAqxQA+igB9FABRQAV84aD5kX7QWtVlV+KIHt0dWasslp9UQOp9SWSR1JQQFPqACuQ+JX/Ih6t+7/AOWNKXwgcH8G/wDkR7OOvRI6zpfCSWaf5VdAE3lU6gofTqACn0EhVXWIv+JXdbP+eclAHlPwli/4kt1/18NXoFKHwlEkdTR0yR9FADaloKGUnmVQDZK8X/aS1TT9LtdDjuLzypvtnmUoq4rnyf8AHj9r6HQZLWz8H31tqF9Iv+kSV8q+JPHmqePPLk1fUpJZvM8zypZK7aFK5lcw45bH7LUP/CRrFN5aQ/8AkSvV5+WJhuF1+9j8z95LNJWxoNhDLH8kP7yufkvIs3vK/sv/AI95I/J/6Z1Tmv7rzPnkpE3MvVPGWvRSRx21jazx/wDPTy/9ZWTJ4jkupPs95pttLDHJ+8/d0G4XV14duppvtFj/AKySnf2Xpv7uTS5PKhk/1kdBkRyWFxazeZcWscsf/LOSKSsnypIpP+Wn7z/nrUgTTXXlf8tPKmk/5aVctb+SW1/gl8v/AFlaxfNoASS/8tP9VXQaP4j+yww295v/AHf+rkik/eR0qkVI6D6C+Hv7V/jbwRNax3Grf8JDptv/AM9JP3klfXXw1/av8H/EuGON5v7D1L/nnc15Fah7Mo9y0+6WX93/AMtK43VJfN+Jkn/LX/Ra5JAdFHVpK2AtR0+gCxS+bQBLRQAVy3xG/wCQDH/12WlP4QG2v+pq5HTAnooAtU+qAlooAfXH6p/yHpI6kC5HU9ACx1PQBLUtUAUVIFTUP+PG4/3a5W1ik8uokBoJVugAqfzaAFp1WA+odS/1Mn+61AHCpRXIWfQ0dJXWQFTUAFFADqTy6AFooA8o/aQ/dfC+6k/55zLWh8NZfN8D6L/161j9ss7SOpq2ICjzaAHf62lqiQp1SUFFABS+b+88yoA+ZdH/AHX7Rmrf9cWr3qPy6IjkTR1ZqxD6k83zaoCSn1YCR0+gApZKgCF6+b9L/wCTgta3/wDXSueXxAe6R1JWxZYp9BAsdSUAS0+gkKKgB9cl8Uf+RD1r/r1koLiee/Bf/kSbWvQo6ygEi5HVmugQVLVAS/vKfUgFFBJLVDWv+QLfR/8APSFqAPKfhL5kWgyf9dmjr0OlD4S5DqmqyAooAKdQUJ5lQUrlnHfEb4oaP8OdFvLzUZvK8tfMr81f2kP2lta+L+seXp3/ABKtDjqaU+eVzCR8/wD9jLF9+SppNL8qbzI/+ede1CFjEj+y/wCrkepo4oYvuQwf9dIq6OUgbdXUfnR+bD5s0bf62tLT9ZWL92kfleX/ANM9tTJ+8WaEes2MX7xLWSX/ALaU6HVLPyfM8yOLy6yMpK5lyeMtP86TfHJZ/wDPOLy90dZ+oa9oN1DJIkltFdSfu5PLoKirGT9gs7+1/wBHkj+1R1lx2uoWEPmW83lf9Mo6ksq2vijUrW6j+0fvYfM/5a10Wl+LYb+GTfs8yP8A561QFO+tY7+1/wCmn/LOsvymsLqORJP+un/TSpAm83zfL+Xzf3laXmyXUPl/vPJjoudBveHdZXS/Lk/1v/PSKr0PiNr/AMz7HJHF5cn/AE0jkqfip2IPbPAf7V/jb4ffY4/tX9o28ayRx/aZPMk8uvdPhf8Atm6L4t8ZWf8Awkcf9n3UkP2fzK8urR9mXGofV2l6zY6pax3lneRywyf6uthKwjP2kbFE0dT1qA+pI6AJKKAH1y3xGl/4ldrH/wBNqUgC1q3TAnjqbyqoB9PqySWk8ugB0lcjqP8AyHpP92siiaOJqveXQBJ5XlU6GKT/AFlAEkdS0AOooJKl9Ev2Gb/rnXL6X/q45KiRRp0sdAE3l0tWAVbSgAqG9/49bj/rnQByFFcJZ7nHV2u4gKKAE8qloAdT6ACmUAeUftOfuvhLqUnl/wCrkWrnwv2/8IHov/XutY/bLOyjq4lbEAlFAD6dVEhRUlBRQAslMqAPm6PdF+0hqX+75de5R0RHIsR1PViJalqgCpqsBPKp9ABRUARPXznp/wDycZrW+T+GueXxAe3WtWo62LJ6T/W0EE1FAFiigkKKgB9ch8UP+RD1r/r1aguJwfwRl83wPZ/7zV6LWUAkTx1PXQIlp9UA6ljqQHUUEktZ2tf8gq9/64tQB5T8G4vK0G6/67SV6FSh8JciWirIJqKACkkoKIq8m+OX7Q+g/BvQZrjUbyOK6/5ZxVkWfmb8UPjTrHxa16TVNUvH8ndJ9nto/wDVx1wfmxyx/wCrrvw1DljcwkR3V/a2sf8Ay0l8z/WVTm15fOjkkhknhr0eaxiZt1rNj+8jT7T/AN+6LXxHZxWMn7zy/lajnICa6mtYf+eslZsPiP7LD/qZPMqZP3iy5a6pNdR+Y8fleXH/AMso6tSSxy+XJ8kVZXFFXMvULrUPM8zy47y3rNmla6uvM8uOKSi5UlYrwxXUXmfZ5P3n/XSpv7UuoofLfy/Oj/8AIlUIvR3Wn3/7u4jSqd1o0drJ/wAtKoCG1v7rS4/k3ywxyVofb1uoY5PJ/cyf+Q6kCHyo/wB3U1jdSWEknm1nc6Dch2y/9dN3+q8yiGWSwuo5E/0aSq+HQg0I9Uk8uTfJ9sjk/wCeklVYbr7LdfaLenJKsZRR618Kf2gta8B61ZyWepSeTH+8ksrn/VyV+jHwV+N2i/F/RfMs7yOK+j/4+LST93JXlyo+xlY6j1KGWrdQA9KsJQAU+gB1cp8RpfKtbP8A67UpARwxeVV6OmBPU8dUAtLDFVklmigB9cfqG7/hIpJPL/d+XWRRNHV6OgCepYZaAA/8tKloAKfQSU9U/dafcSf9M65fT/8AU1EijQjqegCxTqsB8f72pI6ADzKo6p+9sZv+udAHI2v72iuEs97p1dxBNTqoAoqQCigAooA8w/aIi+1fCnVo/wDnptp3wp8uX4c6DJ5f/LrWf2iztI6s1oQPooJJaKooKKkAooAbTqAPmqHy4v2kNS/57V7pHURAnqzHVgSVLVAPp9BIkdPqyhZKSoAK+dLXzIv2jNS/3VqJ/EOJ7RHVmmIsUsdBJJUtACx0eUtAEkdLQAVy3xK/5EPWv+uLVEiYnnvwV/e+B4f96SvRov8AVVjT+E1kSR1ajrpIJKfVFDqKkkfRQBJJWbqkv+g3n/XGSgDyv4P+X/YPl/8ALbzpK9CrSPwgPp1SBNRQBQ1TXrXRofMuK898ZfGmHRoZI7fTZ7uTb/qo6iWpcdD5d+K37bmvWHmR6RavZzW83lyR18i+PPHmsfEvXv7Q1y882ST/AL9x7a3pUmpXMpanN/6L/BN5tZN1rPlSSbI/3delcoq3Ws/av3fk1m3V1HF+7eSrlK5AWP8AYvkyfbJHij/5ZyRSVVki02WT/R5P3cn/AD1qjIdY6NHF5n2e4/eSVJN9usPMuP3dQA218RzeX5f7unTa9H/HZpLUmpYjv4fO/wBZR5sPnfPDHLN/q6zsKwQ2EMU0ckdTSWC3X360MYq4f2X5Ukf7z9zHVqOLzZvM8uOWH/lpWsZWOohutLh/dyJHJF+8rP8AsDRR+Ykkn/XPy6XsyOZlj7B5XnVTkrMCbzftUMe+PypKtWt/5v7t5KxHItc1V+yrayfaEk8r/lpJFWwghlhv/uf67/WR16V8OfiDrnw51SPULObyL6Pb/q6zqq9OxZ+jH7Pv7S2k/FXS447yZItWjhjkkr3a1lrzpqxe5bqxUCCpqACuW+IX/HrY/wDXagAtauQxUAWqfWoDqelBJLRQAVy2of8AIduqzkUTQxVYi/1tIC15dOjoAdT6AJaKCSjrX/IKvP8ArnXL2MXlVBRrUUATR1PVgPoSgAeqOo/8esn+7QBzMdFZ8pZ7zSyVoQOhiqxVAMp9SAUUAFMoA86+PEXm/DPVqp/CHzP+EH02s/tFneVLWhAvlVLQSOoqigoqQJqKAIaWSgD5xvv3X7RF1JXtkdREC1HUtWBLRVAWKdHQSLTqsoKKgAr5u/d/8NGX3+r87y6ifxDie31ZjpiJ6SOgkt0+gAooAd5VLQAVy3xM/deCdWk/6dZKiRMTz34K/uvBscf/ADzavRI6xp/CayLEdWI66SB0dS1RQ6ipJH1JHQASVm6x+60u8/64yUAeU/Bv974bk/67SV6JWkfhAfU8dSAtQSSyeTJIlAHk/i7xR9l8z7Rvih/6Zw+ZXyv8bvj7a6XYyaX4avNQivo5v+P35fLqI6ly0Pj3VPO1S6muLyZ7y6km8ySSsm6tVtYfL8xJ/M8z93XsR0jcyjqZcNh+5qGaL/lp5clRcohurVov3af66qsmlzed/qf9Z/5DreMbkDodLWL/AJZpF+8oh0v/ALZTSVRkQzWEkX3KqyWF9LN9nTzJf+ecUtQBvR6M0trDsj8393/qoqbD4cvpZPLSHzak1Ln/AAhF1YQxyXEMnmSR+ZHWx/wrS6863k/3f3ctFjSxNa/D66ikj3zJL+8jrctfh9qUWnyXiRxyw+dJHQdVKjcj/wCENki8y4eP/RZJPLk/6Z7asaX4SktYZNkf2yGRvMk8uOs5Oxr7E6i68B2f2Hy7yGeKT/WW/wDzzrBh+HMmqRx29n5/2j/np/rKPbE+wRh6x4N1CwjmjeOSLy2/efu6x/8AhHJIvM/1f+s/7aeXWhn7Ir6h4c/6aJL5kn/PH/V1i/ZfrWJxyJIZZIvM30Sfvf8Alp5VbCCaL/WSVa0vWZorWON/3tElfQs6LQfFt9oOqR3ml3k9nNuWTzIq+uPgj+25JoN9HZ+JY/N0u4k8uST/AJaR1x11YunqfdHh3XrHxRpdnqmlzJeWNwvmRyx1rQy1xiLNPoAfXNePIv3em/8AXagAjqaOgC5T61AKf/raCSaOpKAGVy11+9168rORRa8qpaQFmOpo6AH0+gBf+WtSUEmV4k/daLJJWDbf6mOoKL1TR0ASR1NVgFFAD6oapE32WST/AJ5x0AcjH+6orPmLPfasVcSB1FWAU+gAooJH0ygDgfjd/wAkz1r93/q1rD+Cssn/AArnSaz+0anoVS1RBNRVEjqKAH/L5NMoAmoqSiGiqA+cNW/5OMuK9utu1RTLLkMtS0yB/lVJHVAT06rJG0VqA6isgG185f8ANyV9H5n/ACzrGfxAe1Q/9c6uR0wJKmhioAdVigAp9UAU6gArlPiZ/wAiTrX/AF6tUVfhLiee/Bf/AJEiP/V+Zur0aOso/CEiepq2ILFOoAKfQAVLQAVma1L/AMSu8/64tVAeV/BvzP8AhG5N8f8Ay2kr0WrAdRUAL5sdcb8QvGVno2lzRpef6VSsB8C/Ez9q++v4byPTrFIrXy5rOPzK+VdaurrVLqS4uPL/AOen+sruw1PliTczZt0scezy/Lq5a6X/AKuTy/30ldZQfZfK/uedUfm/uZKkCrJdfvP45flqn9qupf8AVx/vv+WlaU3YXKO8r/lpUPmyf88/3P8Az1jreJlzE3lRywxx/JXYaP4SbWf3iQ+b/wBNYqqU1HU6KEHKR6RoP7PGsXUccnmfu5G/eR17B4X/AGfbWL/j4jg1Cavm8VjFKR9ThMC4/wBf8E7q1+Dej2unxx/YYP8AV/8APP8AeU21+EulxRx/uY/3a+X5VeN9ZPYjh2ht98KtFv8A79n9s/8AadVYfhpY2u37P5cHl/6uLy/3dX9ZN/YGbP8AC+Hy/s/yWcf7z91bR/xf89K0tP8ABtvFayW/l/6uT93Sliecr2DLEng21+ywx+X++t/Mk/d1yNr8NIbDUPMT91/0zjp+2J+rs1NU+GkN/ayW9vIln9o3R/u64mT4N/Zf3b3k8scf7vy6n26MamCb/r/gleb4crdQ/Y7jZp/mfvPN8uuDuvhfJ9qkjubN/wB3H5fmxSf+hV20sal/X/APNr5c3/X/AATk9a8EXVhdSR+TJ9n/ANZHL/zz/wCulcjqnhxv337z95HD/wA9K9mhNSPmcXhnSMWOVv46m83/AK6S11wdzzLuMhscslh+88z93VyG6h8v5P8AlpHWMlc3PrT9jf8Aal/4V9fR+D9cm8/w/JH+7ll/1lnJX6EWuvWt1aw3lvcRz28kf+sjrypxsamtU0dMglrmPHH3dP8A96gB0dWkoAsU+tQF8upIYqgCxRUgFcfdfvdeuv3dAGnSwxUAWo6dQA+nVBI+igDL8ReZ/ZdxWLp/+rjoKL0MtTR1kWS0sf8ArK2uQT0/yvNqgGVU1qXytLmoA4+ioLPfasVUSAoqwH0UAFHlUEhRQBwfxu/e/C/Xv+uNc78Ff+Se6bWf2jU9CjqxDFVEE9OqiQooAKKAJqKkohoqgPnDXvMi/aG+eOvbo6imWWvKq0lMgloqgJqKskdRWoBRWQCyV823X7r9oi6/ef8AXOsZ/EB7olTfL7UwJI6moAkjqTyqACn1QBRQAVzXxG/5EPWv+vdqir8JcTzX4Jf8ibH/AL1elR1lH4QkS1KlbEFiigCSOrNAD6r0AS1nap/yDLr/AK4yVQHl/wAKZfK0GT/rtXeVYEtFQBkaxdR2FjNJ5n8P7uKvkH4qeI774lwyaXodu/nW/wC8uL2ST/V1pYD4h8UWsOg3UdnFef2h+8rj9auv30lvb160fdiY3K8d0sX/ACz83/pnVyPxGsUnl+T/AORKk2K82s2919yNK0NLtft8Mkkv7qGpAuaXEtrDJsj82nXW66+5+6m/1dZ3sdFiH+y7rzP3Ufm/u/8AW1D/AMI5dSyR3D2b+TVxqmPszrvCPw+tdZvvLuJP3fmeX5Ucf7vzK+tPh78KtBtY5Nkafu4Vjrz8ZXcadz6LA4dSkeqWNgthD8kMdWPN82vj5ycpH2MLRI/KklpajlLk0ipdaX/q/Kk/5afvKd9gXyf+WlSXzEPl1m30S+ZJJSinErmRR8qSL95R5da3Luguoo6zbqVYv3dVyj5kyrNFa+Z5nl/vKz9Q0tbrzpH/AHtEYtGU5pnO3WgrLa3kfmP+8WSvPfEXw5tYvMkt/wDrnHFXrUMQ4HhYvDKqeZ6x8PpIv9I8xJf+elcDfaDeWvmfu6+koO58li8MoSMuaKTy6NPljtY44/8AW/6uuuMbnmmtp91H5nmJH+8jr6a/Zp/ab1LwRfQ+H9cvo5fDcn7v/rzrzq8bDufod8NfFq+MtBjuPM/0iOSSOSuxrjGTVynjyX95pP8Az28ygB0MVXkoAsVLWoD6kjqAJKKkArj/APmM3X+9QBpR1NQA6GWrNABSx1BItWKAMrxR+60uT/ern7WWgovR1PWRZLHTuKu5BYjqStQCaWs3WP8AkH3FAHKUVBZ9AUVZA6n0AFFUAUUEhRQBxPxk/wCSZeIP+vVq5f4F/vfhzY1n9oo9Dq3VAPp1USFTUAQ1NUlBRQAUUAfNni791+0RHs/55rJXtkdREstR1aqyCTy6WqJH0+riA6igAoqCgr5svvL/AOGjJo/+ea+ZXPL4iT3aPbUkP+uFbAT1LQAVYoAfRQAkdLVAFc948/e+E9W/692pVPhA8t+Bf/Ipxx/9NK9NrmpFyJ46sR11EElPoAdT6koKloAKpa1/x4Xn/XGSqJPK/hT/AMi5/wACrvKAH0/zY6AOd1jS11mb/SP9XXzv+0Nqln4D8LyeF/Cmm20urXH7ySP/AJ5x079APzZ8UX8n9ofPcfbJpP8AnlXL3UsdevKVwIfN8qH/AFfm/wDLOOo5vLlm/wBZ++jrImmWtLsJr+Ty0jeXzK9CtfCV95f/ADy+Vf3X+rosonZQpOZ0Wi/D7UPOkj/eRTXn7uPzI66C68B6XayeWkfmSRt/rYo/31eLVqrmufQUsG1Gx2Gi/DSaW1/4847yaSTzP3n/ACzrvNB+EtjFHa2/lpeQyfvP3leZUxKZ6H1Y9I8N/D6xsJvnhjlm3SeX+7rrrXQfsFctR8x6lKnYm8qjyvKrksbi0kkVFjUr+V5VNkiosWVZKq3Xlyw0WAx9Q8zy6q+bVFkM0tZ8lalFWb/np/5EqPzaAKcnly0f6qH93H5U1Sc/KY+qaXDdf6Q8P76OTzK8117wlp91dSSPCktxH/zyjr1cNieU8jE4Zyp2PO9U+F9xLa/aEjSWP955kcf+sjrzvUPCV1o0Me/91DJJJHX0+GrqR8hicO4lG1lWKarHmtW0lznkeR9gfsd/tLNoOsab4b1y+82H93b1+i0N/HLNDs/exyV5NWnySuOJoVx/j3/j60n/AHqzNC5HVqP91VAWqkjoJJKloAKfUgPriP8AW61dUFGtHE1TUASR1N5tAD6fUASeXS0EmV4ki82xk/eVgx0FGlHFJTpIqyLJI6moAdDFU1axIGyVl69ui0ub95VgczHRUFnvNTVZA6igAp9UAUUEhRQBxvxa/e/DnxF/161xvwH/AHvwz0395H+7/d1n9oo9Ijq4lUA+nVRIUUATUVJQUUAFFAHzd44/dftBWcn+yte3WveoiWW6dVkD0q3VEhTquIBRQBNSebUFEVfOmtbYv2jPM/1U32eueXxEntEdXq2AfUtAEtMkoAmSn0AOoqgG1z3jj974T1b/AK95KVT4QPK/gj5n/CNyfvPN/eV6hHXNSLkTR1crqIGx1LQAkdTVJRLT6ACs3WJf9BvP+uMlUSeV/Cn/AJFuT/pnM1d3QBYqJ6AOP+IXjdvBug3l5HGkt95f+jxS/wDLSSvz9/aM+IN9o1rq0eqeZ/wlXiRf9I8r/lnCtRf95YD5FurWSWTzHkj8mT/nnTfKkirujK4FeTzK3vBvg248UahHsh/c7f8All+8kroJpn0N4N+EEel2sfl+Z5f+r82u6sfhzDa+ZJceXPcR/wDPWOvFr4lxPusLhVE0NL0GTWZo47ffFH5n7uSuy0f4aWul+ZceXH53meZXg1ar5bnsRilKx2Fro0Nr+8+f/ppWlHYL/wBcof8AnlHXDZss3LWJad5X7yuum+Y0i7EkdhJR5XlVFiSv9l+tH2X/AKZ0WNSGaKqs0VFixs1hJLHWbfRfuZKLAYP/AKMqr5VSWQzRVRkrUoz5KhegCOTd5dV5v+ulSFgml/5Z1l3Vr5snzx0RXKcsmpaFGawki1CST7OkX2iuf8UeCLW60+G4SGPzri4/eSfe8uvSw1dxPNxOHUjw3x58PpNLkmks5IP+mflV5ndbvOjj2/6vdHJX1GGqc58Hi6Xsqlja8O6pdRapHJbf66P/AFlfpV+zf+0tY+LfDdjp95+6vtPuo7PyvM/1kdY4l80bnHE+tIZVlkrlfHv/AB9abXGaFi18utKOqAkp9BJLUtACx06pAfXHf63VLz/rpQUXk/1NW6AHx1LQAsdSJUAS0UEmNr0v+gyeXJWTa/6mgovR07zWrIsnp6UAPqxWsSArK17/AI8Zv3lWBzcdFQWe80VZA6igAp9UAUUEhRQByvxQ/wCSe+IP3fm/6LJXn/7Psscvw9h/55+dXP8A8vCj06OrkMtdBJLRQAUUFBU1SAsdElACVFJQB84/EDb/AMNBWNe2Qy1EQL9OqwH1boAKdVEhRQAUUANr528USyf8NGf9c4Y46ykB7RHU1WBbqWgASpaAH0+qAdRQAVheMv8AkV9Wk/6dZKUgPIfgX/yK/l+X++3V6pHWcQJo6nrUB8dT0AFWKkoKfQSFZusRL9hvv+uLVQHlfwll83w3JJ5flTSTNXfQxVESiWonpknI/Ea/0vRvDdxqFxa/bL6NW+y23/PSSvyX+Mnii+8b+MtS8WajH5Ue5bfy/wDlnHWlBdQPMZJf7/8ArJKqzSrFD5j10gWvC+jTeLdaj0+3/wCWn+skr7I+Hvw+/wCEXtfMSzglvv8Alp5VZ4pqFHlPay7DuUuY9Q0+L/RY4/8AljH/AM8quTWFxfyeWkdfMVJn2kdDcsbD7LH5af6ytC1tY68+50WLXlSVahiqYiNaO1ji/wBZ/rKPll/5Z1qBJ5v7mqs3mVYFiP8Ae02aKgCn5X7uqMlUajf9bWXdUFmP9l/1lV5ovK8ypNTNk/66VDNFQbGXJF/0zqjJFJQA7zaj/wBVTuYlWq9ZgHm/u6j1iK1v4Y7d/wB1DG1VLU5qhw/iiwjltb7fH5vl/u/NrwPxl4IkiupLyz/e2slfV4OranY+PzWneVzz395azfP5nnV3Xg3xbNoPl/Z5vKk/dyf98yeZXfV96nY+WP1a/Zz+LTfFX4c6Tql5siuvL/0iuy1jVIdUvrGRP+enl15clYo2I6tQy1YE0dT1RJLUtACx1LQAVxkcX/E0vP8AeqSjSjq5HQBPRQA+paACn0EnO+KIv9B/66NVG171z1PiKLUdLQWWY6uUEEfl1JQAVka9/wAeMlakmBHRQanudTVZAVKlABRVAFFBIUUAcv8AEyLzfAetR/8ATGvNf2eP+Sfx/wDXZq5/+XhR655VTV0EkkdLQAUUFE1FSA6m0AQ0UAfN3xMlb/hoLSf+vevdLWKoiBYqSOrAs1NQAUVRI6pfKoAWigCKSvm/xR+6/aIhk/56RrWUgPbo6tR1YEtS0ASR1JQAU+qAdRQAVz3jbzJfCOtf9eslKQHlfwR/e+F5P+ulenR1nEC1UkdagT1KlAEtFSUFLHQSE0TVR1iKT+y7r/ri1UB5b8JfM/4R2T/rs1d7URKLFVLq6jtY5JH/ANTHTJPmH9qb4jXXgjwbea5efuptQ8zT9Lj/AOea/wDPSvzd8Xaz9vuvsdvJ/oMbV2UF+7uByMn7rzKo+VcapdRx2/8Ay0by6YH2B8EfhVD4S0fzPk+3XG2SST/WSV7Np9r+7+eSOKb/AFdeNjq3NLlPu8tgoUeY6SxsPssccdakMVfOVJnpy0Na1tateVHUXOuxMlPqomZapkdagLSwxVYFyq70AQyVRktfK8yqNSr9q8r92lVbqKgsy5N0VZ915lSalH5faqt1/wAtP9ZQbGbNFH+72SVXmtWihoAqf8sqTyqm5iQ3UXm02S1k8mkBDNayeT/q65/XpfstrVR1OaoYetap5ujyfu6871i183/npF/7Tr38NpofMZi7xueS+JNBjikjk+eKT5v3n/PSuXjupLX/AKZeXXtx97Q+NPqD4B/H26+H3hG60tJkvI93l28XmeXJHI1fd3ge6hv9F0GPzv8A7Y1cdVWKPUI6dHWQGhHU9USPqaOgCWigArkNP/e3V9/12qSizV+OgCzRQA+paACn0EmL4p/5B8f/AF0rJte9c9T4ii5HU3leVQWPqaggKsUAMrJ17/jyrUkwKKDU93jp3mVZAeXUlOwBT6ZIVLQBFRQBznxB/wCRH1r/AK9Wryn9nL/kn8f/AF2krGXxFHrdW0rYkKloKJqKkAooAdRQSNqKSgD5r+KlrH/wvzRdn92Ovco/9SlKJRatatUwLFPqgCnUAFFSBNRQBFJXzn42i8r9oaz/AHj/ALxY6iQHtlr/AKmrtaRJHU+mBJHUlSA+igB1FUAVjeLtsvhfWo/+WP2OSql8IHjvwH/deF5v3fleXNXqkdYRAtVNHVRAlp1WA+paACn1IDvNrP1iX/iV3n/XGSgDy/4SxNF4d8vzP+WkldzSh8JQ6qGqRR3Ufly/6uiRJ8K/tha83i3Xr6NI/I0Pw/ZyeZ5kn+smavhOTdFa12UFanEmRl3XmReZs/e17l8AfhfNLN/bl5ayRQ/u/s/mU68uU7cDTdSpc+ptB0aOKGPfJ/yzrsLG1j8nzPLr5OrL95c+/oK0TShiWrHleVXnnWXo6uVAE0dTRxR10AXo4qPsqy/cqyCr9l8rzNlFr3pWAml/1VVqLG8SD95F5kiVVmlklqxkPlebVO6i/wBXQWUbnvVGS1/6Z1ZcSndWvlVRuoqyKKdVZov+WdUBlzeX+7kqHy6yNiSo5paDEbffZ/LjjrldQ1SGWaS387+H95WtJXkc9U5vUIlurGb935EcdcLdXSy+Z5kkf+rr6Ckj5nGO5zOtRL532OOPzYZI468t8RaX9l1SSvVpu58rXRHDL5skez/XR/vI6+2P2a/jnN/YP2WVv7Q8vyfssX/POs6qvE5T7s0W6kurGGT/AJ6VsR1yFFqOrNBI+paoB9PqygrjrX97fX3/AF0qANCOrUdSBZp9ADKt0AFFBJi+JPMltY6zYf3Vc5RPTqALaVYoAKd5v7utQFrG17/j0j/3qAMPyvNooA9vqxVgPorawD6KzJCigAooAxPGX/Ip6tH/ANOsleP/ALOfmf8ACDyfvP8AV3VYy+Io9ijqatiR9OoKJqi8qpAlooAKKCQqKSgD5z+Kn7r45aLJ/wBM469qj/1KUolFqOrVMCWn1QD6dQAvlVLUgFFAEUlfOvxA2xftBabJ/wA9IY6iQHsif6mtKOtIkknlUlMC2lPqQCigB1FUAVieLf8AkV9W/wCvWSql8IHkfwL/AORXkk/6bV6hHWEQLVWKqID6dVgPqT/lrQBJT6kBj1R1iL/iV3m//ni1AHl/wri/4kMlx/qvMau5pQ+EoKZJdR2v7x/9XHH5klEiT8of2pvir9v8SaxpenX39oR3F9JcSS1853V1J/rK9SCtTiTI674Q/Dmbx54oh/tHZFY7fMuI6+0tH0vyrG3t0j/1a+XXl46XKfT5VTS1O20+1WwrSjr5OrLqfWwVol7zKvQ/vfM/56VBZP8A8tafD/rKgDQ8urkMVdAEtPqyA/1s1QzeXFN5daWAb5q/vKzbq6osbxKP2/8A6Z037VJ5NSMd5sdNurrzYaCzPvooZfLqn5UdWXELqL9zWXNYeb/yzrIoo3VhJF+8qj/20qgKd1a+b5lUfsvleZJ5lZGw3yv+mdV5omoMTJupfssPmf8ALGOuBur/AO1XUkj/APLT93JXbho3kc9U5XXr/wCy3Ulukn7us+1lW6kjr3aSPlcQ7kOtRW/+r8uvN/HGg/668T/V/LXZQdzwq8Tg5opPO/5aRV6d8H/FH2DWLWN5ns7GPy/tEf3vM2ybq6JK8TzD9WPhX4tuvFug2t55f+gyQ+ZHFXoUdeYUXo6sR0EklSeXVAT0VZQVxml7ftV1/wBdKgDVqzHUgSebT6AJ/LojoAkooJMXxJu+yx/9NGrOrnKJqtUAPSrFAD6Tyq1AWsTxV/x6x0AYfmUUAe41LHWpI+irAmooAKKgAoqwMTxR+60HUv8Ar1krxn9mn/kUZv8Ar6krkl8RR7VHUldBJLRUlE1FADqbQAUUAOpklAHzf8arWOL41eH5P+ekNe0ad/x6x0AXI6uR0ATU+qAKdQSFTUFBRUgFfOnxG/5L5pv/AF6rUSLPYo6uR1qQWkoqySxT6gAooAKdQAVjeKP3vh3Vv+vdqkDxv4A/8ixN/wBfTV6rSpfCTItpVirKH06gB9S0APp9SAVlax5f9l33/XFqAPL/AIQ/uvDcn/XZq72nEon8qvF/2nPHmpeA/hfq1xpEn/E02+XHVyVwPyV1i6/t7Xry8f8AdeY3mSeXTvC/gO88W+IobO3hkvIfM/ef88466vg3MqUXOR9ffD/wRa+HNBtbO3hg/efvJLmvQrW1jsP3aeX51fNYmXNI/QsvpuNOxtWMX/LSr0fl14x7Zbq3D/10oAu0/wA1fMrUiw77fR9vp2KsSQ39O+1SS/8AbOiwWI/tUn+rSqs0v76tC4ohjuo4qhurqOWpL5Sr9vpvm0FhJfxxVVkuvNoJsHm+VRVFD6Kkkzr6JpaxZrXyqColfyqhki83949AFeT97VO6/dRyf8taCTmb791D/wDGq4XxRFJ9qj2R/wCs/eV0YY4a5x+vRTRahHv3+TJ/q6q2svlTf88vlr6Gn8J8rV0kQ6p5Mv8ApCf6z93XH+JLr9z5f/LP/plRSdpHmVzgdUi8qHzPLk/eSU3S7+SK6+T975derE8jaR+iH7GfxV/4Si1j0e8m8u6jh/dxR19gWsv/AC0ryJaVCjWjqemBKlWKoB9FWAVxml7ZZrr/AKZtWcijYqaP91SAf/y1qegCWn0AFFAGD4k/48I/+u1VY/8AUioAlqasiSVKt1qA6l8qrASsDxJE32X/ALaUFGP5X7yioA9wjqetSRPMqerAKKACioAKKsDM8Sf8gHUv+uMleG/s3/8AIB1KNP8AV/aq5JfEUe1WverFdBI+nVJRNUNAFim0AOooAKbQB87fHL918XvDeyOvZIYqALHlVcjoAmSn1QBTqCQqagoKKkAr52+JnmRfH7Rf9X/q1qJFnsUdWo61ILVFWSW6ZUAPp1ABRQAVkeKP+Rb1L93/AMsZKkDx34DxeVoN5/18V6jSpfCTInjqerKLFSpQBLRQA+ipAfWdr3/IH1D/AK4yUAeX/Cn/AJAMkf8AzzmrtPNjij8ynEo5XXviD/Zcc0aV8R/tQfH2HWYZNL0iSS8/5Z3UlbxVwPk2x0GbxRdR29vHH51xNX1h8M/hpD4N0WOzs4/tkn+skk/2qxxdXlPVy+gpyPRLWLyqmh/dTeYlfMylzSPvaVNQ0NaOXzasebXGbFqGWrHm0AH2r2pv2qT3rUqxNDdVZrSxVgpfN/1lFgsQ/avKqv8AbqZvFFf7V5tQ+bUl2FooMSCb97TfN8qgqw7zf+mlSVRI+ipJM663eZJsqjJQVEhmiX95WbJQBX/eS/8ALT9zVO6/dUEnL33/AC02SVy+qeZL+7/1tdGGOGucv4kiklsfM/1sMdcbNF+8+SvoafwnyuJ0kN/dyxyVj69Eth5ckUfn+Z/rKzi7SPMrnF6pE11a+Ykdc7/qvLkT91XsxPInpI+qv2FdZjsPHEm+RNP8uHzJJZa/SrS5Vuo45Ek82Py68irpUKNZKtR0wJqlqgH0+rAK4zS4v3lx+7/5bSVnIo2Eq3SAWOpKAJafQAebRQBg+KP9VZ/71VagCaOKp6yJJqsVqBLRVgRyVi+Iv9THH/z0koKMVKKgD3OitSR1PSgB9FABRVgS1FQBnav/AMgu8/64yV4f+zf/AMgvWvK/5+JK5p/Eax+E9qh/dVNDLWhAtOoAmooAdRVAFFADaKUgPnb4/SrF8VPC/wC8r2KH/UikWWo6tUEFin0AOoqiQqagoSSlqQIa+fvi1+6+OXh//ppDUSA9kSpoZa1AtVLVkj6fSuA6iswCigArI8RReboOpf8AXrJQB478DfLl0W82f6nzq9WjpUvhJkPqarKLFLHQBZoqwCn1AD6ztai83S76P/pi1AHl/wAKf+QBJ/12au2/1v7ugo8r+KHhf7Vos32e4ks5pK/O/wCL3hL/AIn00aRyf89P3klKOkrjirnVfs++A1itZNcvLf8AhaO3/eV7la/uoY9+/wDeV5ONqKVS59hl9Llo2Jo6mjrzD6aJa83yqPNqDcPtX1q9DdU7AHmU6GWkUXI6u/8ALKrAWm+bQaWM/wA3zf8AnnTKCh1NqbAP8qmyVoYleaKjy6AI6PN/5ZvVgWKfUAMmirJuv9dJUklOSs26ioKK1RXUXm/u6CTj7qWOWaTZJ+7rn9eiaKP/AFn+srsw0rHlVzD1SwmutB1C38xP3i1wflN50n7yvYpM+crr3jPuvMimkrD1SX/lo9V9o82qc3N/zz8yubvovKupI69aloePL4jvvgb43j8EeLIdUex/tD7P/q46/Wz4S69H4j8E6beJa/Y4ZI/MrgriO8SrUdQWTVYoAKfVgPm/5aVxuly+b53/AF0rORRqRxVbpAOqxQAUsdADqKCTB8RfvZLOP/ppVWoKLUdPoJJqsUALHUlAA9YPiT/l3qyjHj8uioA9rqatSSWn0AFFABS+XVgJRQBS1iL/AIld5/1xkrwn9nPy/suvRxf8s7ySuafxGsfhPbI6m82tCB9FAE1LHQBJTKoB9FABTKUgPnL9oLy4viV4Tkf/AFf+rr2C1/1cf/TNVpFl6Or0dBA7yqloAKKokdU8MVBQlFSAV88fFr918avDsn/POGokB7BD+9hjq1HWoFqpaskfT6wuAU6qAKKACszxJ+60fUNn+s8mgDxf4F/8gG8t/wDlj51eqR+ZSpfCTItJU0dWUT0+Hy6AJaKsAqWOoAWs7WvM/su62f6zyWoA8v8AhL/yAZv+e3nV3NBRxnxQij+w/aHk8qGOP95LX5w+KIode8cSWelxySwyXDeZLH/rJN0n+spS0jc2pK57hY2v9l6fDb20PlW8cdaUfmSzR187V11Pu8MuWNizU1YHrRCnVBuT+XViOtLAHmVYh/dVmUXIZabNdVYB5rU3zf8AlnQdFhsf72poYqCS59m9qjhtadgCa1ps0VMxIZrWoZoqAKt12qr5tWA37VJFVyO682oAk8ysu6lqSSrJWdfUFFKGX99Ud1+9hoJOburXyppPN8zy/MrD16KOXy/+e3+r8qilKx5Vc5m+l/0WaN/9dJH5dcfdWH7z5K9ukzwa694zZLWT/lrbvWbffvZP+mNdf2jyKpxeqWv+lXEiR/xVzN1a/vJPNj/fV60dDx5fEbXw/v7XRtakkuIUl/d/u5a/XL4D+I7XxR4Nsbizj/c+StcFcR6pHFVuoLLMdSUAPoqwCuQ0WL93J/10krORRtR1JHSAmSpPLoAWn0APooJOe8SeZ5lrUFQUWKlSgksVLQAUUAFYXiTzPMj/AHlWUY9FQB7ZHVmrAfRVAPqWrJCigCKioApX/wDx63H+7JXgv7PP+u8UR/8AT5Wf2ij2iOrEdUBNDLT6oCxRQA+igkZRQUFFAHz1+0Z/yOXhWSvXrX/j1jk/2VqSy1VqOggm82n0AFOqgCnwy0AS02pASSvnn4yfuvjB4fkT/nnSkB7JD/qY6kjpklxKlqgH0+pAKdQAVNVAQ1meJP3Wi33/AFxkoA8V+APnRaDdSPJ+++0V6rUQ+ECeOrUdWBPT6AJaKsB9PoAKztZ/5Bd//wBcWqAPL/hXL5ugyb/+WkldzSiTL4jyD9pzxHH4c+H95J+7lr4d+Ge3xHr0155KWc0dc1U9HBr94e1eb9qq1DL/ANNK8WR9/SLtJ5X7v/pjXNI6YkkMVTfZf+mVBsalrpayx07+y5P+mdOxqN+wfvKd9l8qs7GtyTyqkhi82iwyb7Kvl/JRDayfvK1sVctWtg1XIbDza15Tl5iSSw8qqv2WT1rSxQeVUMkvlUWJKvm1VklqbAZd1dNTf9bDWfKdH2ClSwy1VRBcufavNqjJWZzmbNLVG6laWgCCoppf+mlBiUb797DXM6pa+V+7/eUqZ51dHL6h/os0mzzKqxxLLJ5jxpLN5devRPFqHO6xax+ZHs/55t+6/wBZXD61L/q5Ej/66V6NM8qqY91LH5MknyVysMXmyV6Z400N0uL7BrEf+r8vzF/2q/XL9l+1s7X4a2Mln/y0rnqiPZEq1HWRRa4qSgAp9BIl1XI6P5kUM3+9WcijYjqekA6rFA5BRQQTUUAc94k/19rUMdBRYjqRKALFPoJFjqSGKgoJpa5vXv8Aj6jqAM6isgPa46lroAloqgH0VZJLRQBFRUAVr7/j1m/3WrwH9n3y/tXiCP8A553TVn9oo9ojq4lUBLRVATU6gB9FBIUUFEVFAHgH7RkX/FReG5K9S0v97a2/+7UlmhHV6HbQQSU+gAp1UAVNQAUVICeVXzv8bv8AksHhelID17T/ADPJq5HTJLEdSVQFuipAKdQBNRVAQ1meKIvN0HUo/wDnpDJQB4r8B/8AkH6l/wBdq9ajqIfCBN+7qxVgS0+gCWirAKmoAdVDWP8AkFXn/XFqgDy34U/utBk/6ZyV3UdKJMviPm39tK6tbDwjDHcSP/plfLfwl22trHJ5f7zdJ5kkdc1U9XBr94epWu3yf+WlakcX9+vFkfd0i5HWhDa1zSOmJN5VXIbWg2Naxtf3dTeVWljUh+y/SpprCOXy9lVyjuNksPK/5Z0eVRymo7yqtWtrTsTc0vsC/wDPOrXleVXTY4OYp+V/fpvlLL9ylY3uZd1FWfJ+6/d0WKKs0vlVXmlji/ePUgcvdX/m1j3WsrYeZ9+WaOOix0fYGx69Yyx+Y91HFWhayxy/vEkSpmjm5i5DdVDNdf8ATSOucZVkl82qd9LQBm+bTfN/feXQYhzXO69+6hkuP+/kVKmcddHF30v2qSqsP/Lb/pnH5fm169E8CoYviTy4vLjjj/5Z1x+oReVayV6NM8qqczqFrJ+8qjDYf6yTy69M8qojn7qX7Bqkf7vzf+mcfy1+sX7Jes6XrPwvsZNLvPtlvH+7/ef6yOueqZHvCVajrIot0+gAqaOgkjuv9XJ/1zrkdF2/ZfM/6aVnIo2I6npAS1JHQORJRQQFPoA5rxJF/pUNHlUFDofMq55dAElO+X3oJJkqxQUQyVzOu/663qAM6isgPa/KjiqWugBY6koAKfVEktFWAVFQBWvv+PWb/davn39n2Vv7a8URv/yzvG/dVh9oD3KOpkrQCWnwxUAPp1ABRQUP82ipAZTaAPCv2kJfK1TwzJ/yz3SV6Jossn2G1/5a/u46z+0WakdXI62IJqfQAVYoAKKACigAr54+OUTWvxQ8LyVEgPXo6tR0ySzT0oAtR0tABTqoAooAmrM1o+bpd5/u0AeD/AfzPJ1aN/8AlncV7FHUQ+EmRNVqOrKH09KAJafVgPp1ABVDVf8AkG3X/XFqAPLfhTL/AMSGT/rs1d15vm1nED5p/bi0ua68I6bcJHH+7avmv4e/uofLSPyvtDR1zVT08D/EPTrGJq0o68eR93S+EsR1sR1zm5Zq3axfvpN9Kx03L0d15X7utCOKt4lENTRxVoEi15VWI7Dyoa1pozuRzWq1ejiWr5CSaoZK2Azbr97J/wBMahjuvKrn+2Vcp6pqkdczqHiiOKaTf+7/AHlbxjccUmcz4k8UfZfJkST/AFklV7Xx5p9/a+X5j/8APOSl7J8pz1KqiYuvap9gtZrj93PHHHXA69r0nl+Zb2snneT/AM9P9Y1bU6VjCpiUzLuvEflaX5lxHH9q/d/upa7Dwj4oj+w+Z5n+sj/1X3pI6qvSvEzoV1GR0Eeveb+8/wCelTXUvm+XsrxJRZ68JLlGw3TRR/6yqMl/J/20pylYyuQ+bJR/z0qTKQQy1j69E37v95++qTKRzt1o0f7yT/pnXL+bD/q/L/ir1qHwng14mH4si826tZP+mPl/6usH7V5U3z+X5kdd0F7x4tU5+6l/eSbP+elV/K82OTfH++kr04M884/ULWSK6k/56R7v3ktfpZ+wLt/4VzNbpeeb5fl+XFUyOGSPrKGKpI65zQs1NQAU+OgCvdfuoW/3a5XS/wDV1jIo2I6npgOqxQSPp9ABR/yxoA57Xv3uoWv/AEzpaChY6noAfHU9ABT6AJPMrl/EX/IQjoAp0VBZ7LU1WQOooAelWKokKKsCOSkoAgk/1cn+7Xz38EfL/wCEy8Zf9NLqSsPtAe4Wv+pq3WgD46SgCanUAPooKI/LqSpAHqGSgDwn9pqL9z4fkeT9353l16Vo+3+y7XZ/zzWs/tFmhHVyOtiCan0AFWKACigAooASaWvn39oL/ko3hOokB6tay/6ur0dMks0+gC1HS0AFOqgCpqACszWP+Qfef9cWoA8L+BfmfZdW3/677VXr0dRD4SZE1TR1ZRPT0oAlpY6sB1PoAdWZr3/ILuv+uLUAeZ/Cv/kA/wDbSu1rOIHgH7aVr/xa+TUPL/eWbV8q/C/97aySJ/y0rmqnp4H+Ieoad/2zq7/yyrx5H3dL4SeOWtLT7r/WVzm5ejq9ay1pY0uXPNkqaGWqibhDL++ra0+X9389aBItdfL/AHlW66oI5rlSX/W07zViquYsb5tUZL/zfMqgMO+16OL93bzVzuqeLZLCaSPy/Nh8z/W1z/bIucfrHxf0fS/M+0SebNurifEXx4tbXzrd4bTzI/3nmeZ+72130lc4K2IdM891743Sa9NNHZ7ItLk/1fmVyMnxGurCOSOKSOW1/wCectep7Jcp4M8U5lW1+JeqX9jJpbyP+8j8uP8A6Z1Ha3+ueXHG9888P/PKsdifaNnTXUV5dWv2d/L/AHf7z/ln5lc7ouqah4X8SeZ5f7m48zzPN/5aVM9YmnM4yPUofEdrrNjHJp3mRTf88v8Alpuq9Y+Mv9XJ5cktvu8vy64JUEe5TrvlOitb+G/j/wBHk82GnTX6xV5dWFjvuRw3/myVahl/uSViEgm8yqc3/XSpMpGbqnl+X5b1wd1YTRXUknl+VHJJ5fleZXrUPhPKrowfEm7yf+evlt5dcrJXp017x85VK/lR+ZJ+7oktf3Mnlf6z/V1002eecLqHmS3Um+Ovvr/gnPFHdeG9W1D/AKaeXJVyOaSPtiOpo65xFypI6AFooArap/x63Fc3o3/HjHWMijUtdtWPLpgWaKCR9FAD6KAOa16KP7fH/u+ZUtBQsMVTQxUASeVUtAE/+qp9AET1zfiLzPt0NAFH5vaioLPZ6mqyB1FAD6fVEhRVgFFQAyvn34N/uvHHjKPy/wDl4as/tFHs0dXErQkmjqWgAp1AD6KACigA8qo5KCjwP9qT/kF6HJ/zzuI5K9M0G6jl0ez/AHf/ACxWsY/EORr1arQQ+iqAlqagAooAdRUgNr54/aC/5HzwvJSkB61a/wDLP/drQjpklpKloAWOpaACnVQBU1ABWZrUv/Eruv8AdkoA8H+Bvmf8Tb/r4/1VexR1FImRN5VWo6sofT6AJafVgFSSUALWZr3/ACC7r/ri1QB5r8L/APkCySf9Nq7aD/W04fCB4v8AtaaNeaz8KZo7P/lnJ5kn/TSNa+RfhXF/xK5pPMjrmrnrYH4j0iOLyofn/vVn/b/3leby3PsqdRKJJ9v8qb5/3Valrr0cUMmyGSsZXidFka39swxQx/vPN8yj+2Y5fL2SUXaHGKZpQ36/89K0rW6kuv3fmUqiOiDHQy+VN89akN1+7rM0JLWWbzKm81ov3jyVvTZATXX/AC0So5tZji/v11XAh/t7+5HXE+LtZ8q6uI0kkiqZayA898XeMofDmnybJPN8ta8B8UfFq+/eSeZ+53eZH/10rsw1Kx5eKrcsbHmOqeI7q61CSS3mn8uT95/1z3ViyX83nfJJ5XmR/vP+mlevGNj5Kr70hvlXF1N5f/LOvSPCPwv1TXoZJPLki/d/u6mdVRLpUXI6SH4cyaXDHH/rZvm8yr2l+DbrzI/3dcntD1IU2XNa8L6pa+XJ9lklhk/d+bF/erlbqJZfL+0R1UZIUoMbY3V1a3Ulv/qv3f8Arao69LrHnXFxZySQf8tJPKpyleI9o2Ok8D/EuaK+t/tEfkf9Mv8Aer1r7V9vsY7hK8fE0r6nrYavzRsQx+ZF/wAtK1LX/V+Z/wAsa4JQOqIfu/L/ANZ5VUx/yzrC/vFFHWv9TJXG6pdTfZa9XC/CeRjGcXr119vj+eOsv/VWvyV7VM+cGw2q3X7x/M/d1HJF5XmRp/x7yUjOS905PXrWa6jkr70/4Js6XJa/DPUrh4/3Ml5V1PhPOkfYkdT1BBYqaoAdRQBW1T/jyuP91q5/S/3VrHUlxNKOp6USCxT6YD6KAEjpaAOc1rzPt0e/+7TY6Ci9HUlAD6dUAPqWgArltY3fbo/+edWBnUVAHtFWKsAqWgB9FUSS0VYBUVQAySKvnn4S/wDJTPGH/PPzqz+0Ue3JVyOtCRamoAKdQAU+gAooAP3lFBR4L+1JEv8AYui/8tf31d94Xl83RbX/AHY6xj8Q5G5VyOtBDo6lqgHVNQAUUAOoqQCvAP2jIv8AiqPC/wC8fzN1KQHqmn/6uP8A651cji/6aUyS0lS0ATUUAFWKoAooAKoX3/IPuN//ADzagDwf4Iy/vtS3/wDLSaSvXo6ikTIuR1LVlDqfQBLSR1YE9OoAKpa3/wAgy8/64tUAeU/CmL/iQ/P/AM9q7unD4QOE+Olr9q+F+vRp/qfsslfFfwzsJLWxj2Q+V5lc1c9bA/EaXjLxR/YMcf2z/XSfu444v3lefyeMrq6k+0JqUnk/8tLaXy4/LrKnG57vO1EzdQ+NOlxXUkn2V5ax5v2jGlhkj8n7HH/y0i8yuqOFUzm+vP8Ar/hi1a/F/wAO383mXHn2f/LT+9Wpo/xQ0v7VJcP5ksP/ACzlirOphkjppYxs9E0X4q6P5ccnmSeXJ5n7yWussfG9rf8Al/Z5k+0SfvP9ZXm1Ee7Tkb0es/b5vnbyq3tLuvNrjO00o5ZIpo6tXXmS0qbIKM0skUdYt9qnlQyf89K7rgcjr3ijzbrzPni/1deb+KPHkmqSXlvFJJFJZ/vP+ulVHWQHk/jbxRfX/k/vE/dr+8jjrzW+tft/7z935lezS0PlsW3KVin/AGXNax+Y/wDrP+WlbnhPwlJfx/aPL/feX+8i/wBmtpTsclKlzyPSvAfw+ktdajkeP99Iv7uSvbvDfhf7BNJI+zzpP+edeJUquZ7FKiompN4S0uX959hj8mSStyHwvpfkx7If33+rj82Sp9odlOmijNoy+XJGn7j/AK5x1xusfD6x/eSJ+9qI12VLDo5O68OXFh+7ez823/5aRyx1l6ppdr5cmyP/AFkflyfu67YyvE5J0rSscHJ4Xm+3eZp3/XTy5a77wPrM32X+z7z/AJZ06utO5z0ockrG9J/rK0tHlk8mT935VeRKR68S9+78nzKgrz7+8UZGtSrFHJvrzfWL9rqby/8AljH+8/dV7WF+E8TGMyZrDzf+WlZfzeX5de1TPACOL/WUX3mfZKQSXunO6p5n2WS3/wCen/oVfZn/AATXv5v7B8Uae/8AyzbzKup8J5Uj7YjqeoILdFQA+nUAUtU/48rj/drFsYv9FjqS4l6OrNKJBYp9MB9FADqXzaAOZ17/AJCkf+7RDFQUWo/MqaOWSgB9OqALFFADJP8AbrmdY/dXVWBnUVAHtVTUEjqfWoD6KACpasdyKioEMk/1VfOfwv8AM/4XJ4w/3mrOXxFHuNXq0JHVNQAnlU+gB9FABRQAUPQB4P8AtTbovC+iyJ/yzvK7jwX/AMi1pf8A1xjrGPxGv2Doo4o6t1oQTUVQDqmoJHUUAFFSUMkrwn9ojbF4o8L/APTOSlID0bRfM+yx/wC7WpHTJLVS0ATU6gAoqgJqKACqV1F/oN1+7/5YtQB4L8EbXyrrWt8n77zq9gjpRJkSJVutBDqfUFktPqwCnebQAtUte/5A+of9cWqAPLfhT5f/AAjv+r/fedJXc0AZ3i6whv8Awvq1vLH5sMlq1fnjDrMfg21vriX915cjeXFUVT0cIeV6XLeeI9Umke+klk/5aSy1e8SRR2tr5lvDJLN/10qKUbHoS9087vvJ86Pf+9/5Z1zt1La+ZXqUo2OCpaJl6hL5scflf8s6LXVLiKurcy5+Y7Kx8b3X2WvRvDfxLjlhhjvI454Y/wDlpF+7krwsThuY+hwmJUZHq3hvxbHf2scn7vyZP9X+8r1TwjrP9qV4tWFj6qFRSidda1oeVURNSrqEVcX4klW1tZLiWOTy/wDplWpBwN1dQy+X+882OvFbqwkivpriT97NJ5lddNnPVOZ1qJYpv/IlUY7D7V5cfl/8tPMr0jxKi941NL8Ofvo40hf95/q69C8L6D5skcn+qjrKRtCNj1jS7WP/AFf+tmjrYjiWKb/V/wDXSvO5jupxJoZak0vWY7rzKx5Q5OYufu6r/L/y1hT7tTc6bnP69pcMsPl+XXl/i7S/svlyJ/y0rojoZ1dTLsdU83/Q3t45Yf8AlnVz7A37v93J5clVzHFY1LX97DWhay/Zbr/rpXDI2ia03mfvKpVyHSZHiT/j1jj8v/WNXlt9dN50cf8A00r0sJ8J4mM+IbNLJ5dY/wAsU38c9exE8CRasYo/Lqa+tV8uOmBzeoReVayfu6+vP+CcMv7nxxZ+Z++3R10HDVPtmpUrE5yxT6skKdQBS1v/AJBdz/1zrF0uL/RY6wl8RRpVYpxJCpaYE1OoAKSSgDmda/e61/wGpo6gokp9WA+Op6ALFFAEVc3r372+oArUVB0HsVTUHKS0VqAVJHQASVJVmdwqKoNAr56+Hv8Aovxk8YR+ZWcviKPaI/3tWkrQklqagAp1AD6KACigAplAHiH7VUUn/CG6bIkf7yO4rrvA919q8J6bJ/07x1jH4jX7B00dWo60IJKfVAOqagkKdQAUVJQV4N+0Z5kV94ZkT/npJSkB6Vpf7qxh/wCudaEdMktVYoAfTqACpqoAooAKrX3/AB6zR/7LUAeB/BuKT7drX/XavWofMpRJkWEq7Wgh9CVBZLUsdWAtJ5VAEklZ+tfvdLuo3/1PktUAeY/C+LytBk/67V20dAEOsXUf9lzb/wDloskdfmD8ZNZhi17UtLTf/oc0kdRVPRwh5D/wlF5a2v2e3jjosYvEHiP95byXPneX/wAs/wB3+7WojKx6EffOm0v4Va5rN15bx/vtskkkkUnmVl6p8FtSimk2SP8A9dY6uOIsV9Rc/wCv+CYN18OdUsP9HuIawb7wldaXN5nzy2u6u6FW5zVKHIQ/ZZov9ZH5VFrK1rdeYknlTVs2pGME4yPSPh7rPlfu0/ceZ/z0/wBXX1d8NdUXy443/dTeXXgYmFj6/A1OeJ6NDL/q61oZa8uJ7QXXl4k/541zOvRSeXJWpB5rfeHIYoZNkkk/y15f4o0a4tYfkh/c/wDLSTzK3ps56p5jfSxyyf8ATam2v/LOvWPMmveN611lrCOrV18S49Lhjkt/LihrKQuaxvaX8c7qWSTZYyS/u5P9X/z0q9pfxp1K6jkjt9FuZf8ArrJ/rGri5DppzNL/AISjWLqH59PuZfL/AOWVQw/Eb+y4f9Mju7P/ALZ/6uq5Uac/KdlD8S9Lih+S+S8jk/1flTVqR+MrGXzI0kk/d+XWPszW5eurqOWsW+sIbqGPfH/q6JaBLUw4fBujy/ch8r/tpUOoaX9gtfL8zzZNtYXOWxl2Mv8Aq43/ANZVqaLzaykXE1Pt/wDq438z/V03zf3lch0mD4y/daXH5XmeZ537vy68nuoriW6k3+ZXpYT4TxMZ8QfavKj8v95WX/rZpP3clexE8CRqWsX/ADyq9Naf8tJPLpgcnqnWvqr/AIJzyyf8JJ8Qrf8A6Z28laXOGqfc0dTJUnOWKfVkhTqAKXiL/kC3tY+lf6mOsJfEUaFWKcSSSOlpgPqWgAptAHNah/yGamjqCiSpI6sCSpaALFJzQASVyeqRebqElAEVFQdB7BU8dWcpNT6oBlPqyCWigCKpagCKvnTwbF5Xxy8Uf7sdRP4iz2yOriVYEtSx0APpI6sCSioAEoqwH1DUAeLftQf8iHDJ/wAsftFdJ8P/APkTdNj/AOecK1n9oo6qOpkqgLdFAFiigB1FAD6ZQAySvDf2kJfKvvC//TSalP4QPQtL8v7DZ7P+edakdMkmjqx5dAE9PjqgEqarAKKACql1F+5k/wCudAHgfwV/dXWtf9fDV7BHWcSZElWo60KJqloAKfQA+nUAFZ2sfvdLvP8AdkoA8z+Gf/IFk/d/8tpK7aP91QUYfiyVvsMkaSfudtfmD48tZNU8Xat/rJYftE372Spqs7cKrlHwj8PoZb7zNRuv+Wnl/u69usfCWl6X5dukf7mP/V151SVz6jCQ5TQtdLjtbqa4T91/0yoksLOLzJPJ/wBZXFa8j1JMw9UiWK68zzPK/d15j480azljkk8yvTwysefX1PJdYsI4rqSP/nnH5dc/5qxTfP8A6mvXgz5+qveubXg3Wfss32d4/wB3ur62+Gd/a39rHJb3CS/LHJXm4yHunt5bP3rHtFrKstb0cX7vzK8Kn8R9RYzb797D8lc/qH8VUTI4XXrryofMT/lpXkfi7VP+Wdz/AKmNW8utqfxHLVPJdQuvNupK1tHtY/L8zzP30lepc821xuvSyRRxxpv/AHkn+qrQ0vwb+5uLjUY/3n/PKtCoxvK56VY2Fja2sdwkltZ/9NK5u6+KHhHw5ffaEuo/M8z/AFUcf7ySlGl7pnXxKpjpP2lvCf2qTfHc+XHJ+7kiqvffF/w/r0ckf2pPJuP+etP2DUTgjjV/X/DHE30UN1deZZ3kcU0f+r+zSVRsfGXiLw5fNsvJLuOT/j4il/5aUezFKulK56h4T+LUesySf6L++/55/d8uvUNPulv/ADI68urGx7VCftIlqH/nn/yxoksIb+H/AFdc9RnQcbfaDJ/an+hzP5P/ADylj/iWrENr/wBM/wB5XNJ3JsaUNqvk1HJ5lQUYfiiKSXS5P3deZ6pF/wBNI4pq78KeHjfiMeGL9988dZeny/6VHv8ALl8uavXueNY6jT5fKupNn/PStrzY/Jm3+Z5m2sb2NLHnOqWq/apP30cv/LSvpT/gnjdeV8VvEmn/APLG402ummzz6q90++Pm9quR0ziJqfQA6pfKqyTJ17/kF3FZ9h/x6pWRRfqWgkEqxQA+igApJKAOb1D/AJDE3/TP93U9BQVb/wBXQAVN5VADvKqxQBXrn9U/4/pKC4lKiuQ1PY/KqWus5SWiqAfRVkC/6mpKAIqKgBlfO/hH91+0F4gj/wCeix1E/iLPbI60I6sCeigB1PqwCioAfRVgMoqAPGf2pP8Akmv7v+9HWt8OZZP+EN0WT/pitZ/aKOujq/VATUUAWKKACnUAPplABXhX7Rn+s8P/APXSlP4QO80H/kF2v+7W1HTJLVTR0AS06qAKmqwCigAqtdf6uT/rnQB4L8H/AC4tY16P/p4r1qOs4kyLNWq0KCn0AWPKooAfTqACqGvf8g66/wCuMlAHmPwv/wCRcP8AvNXa0FHFfFq/bRvCcmzZ5lxujjr827HS2utauLjUZPNk3SR1yVWetgVc9MsdBsYoY9kddFHL5X368vmufYQhykeoa9DYRyb64O++I1noMM2+883955flVcFeQpMxbGXXvFF1N9njks/LX95Ld/7VaFj8EdS8RwyXmo6l9m8zb5kUf+sr2KUbHHPU43xl8EbXRofMS+uYvMb93Xl+vfD680bzLhJvtdvt8yOummzgq0vduYP+lWE0e+Pyq+qP2ZdZkv8Aw3eW9x5cUlnJ/wB/K5sZL3TbLY/vrH0pp/8AqY/3dbEMv7ny6+ep/EfYFWaXyvMrlda8vy5JHkk/1dUYyPO9a2/u68R8cS/6VJW1P4jlqnEw2E0Ufz122i6NNFaxx+TXoXOGmrk11/oH/HxJ/wAe9c34u+JcmlzTR6dI95ceT/qv9Z5ddBNWfs43If8AhCPF3i3wvH4k1G8kit/3kn2avE9aij/tS8+zzebDu/1lejH4T5XHVGzutE8VTXP7P3i3wrbeG9Kljs9WtdYk8Qyf8ftv/D5P/XOvKf3ksM37vyo466akUonhxqM2tB/tT935e/8A7a1ah17VLD+/XDc9SM3ONzqvDvij7V+88meKb93H+7r3z4Z+N7qX/R9RvPKtdreXJXmYmNj6fAzaieqWssMsPmfbEn8yOum0WLS4rH59nnR14VRnslibVIfO8u32Vg6hYLLDJJ/5FrKLuVYx/KqG6/5aSUyTB1i6X7DN+8ryvXpfNuo5P+ef7uu/Cnh434imIv8An4qrHYeVJ/q/Nmr1LnlWLlrdeVN8+yt6H91+8rnqOxrY5/VLX/lnHH/1zr079jHVI9B/aI03f5n+mWc1vWtNnHVXun6R1PHXUeSSU+gCxRVkmR4il/4lc1Z+n/6uOsijRp9BJLT6ACn0AOpZKAOTvv3uqTVboKH1YoAbHU0dAFmigArmtel/4mH/AAGguJSorkNT2Kp467TnJKKskfRQQFWKAIpKdUAV3rwWx3RftGa1/wBNI6zl8Q4nsSVcjrQodHU0dWO4tFAh9FQAUUAFRyUAeS/tJf8AJOX/AOuy1N8L5fN8G6T/AM9vJjrn+2UdxVyOugCeipAdUsdAD6KACigBJK8Q/aW/49dF/wCujUp/CB2/h2L/AIkNjGn/ADxWtqOmSWqmjqgJadVgTUVqA6igAqCX/Uyf7rVkB4D8JfMi8ReIv+u1euR1nEmRajqetCh9S0APooAfU8dAEclZuteZ/Zd5/wBcZKAPM/hf5n9gyf7zV3dAHAfFSKGWG13/AOrt4/Mr8+bW/ji1C6kePzP33/fyvPxR7uWfxJM7KOWb93s/dVj694tk0aP/AJ6yV40Pd0PqZtRjc8l1TxvqHii6kt7OTyo/ljkpv/CR+G/AcP2jzJ9V1iOPy/s0X7zy692nQZ4csSomPr37S2vRf6PpcMen2P8A31JTvhn48+KnxV8SWfhfwpM8urXCzXEf7yOPzNq+Y1ezTo2PMq5k9v6/I5PUPj74wivvs+ozfvo5JI/Kkj/1dami/Eu11n93qMfl/wDXOP8Ad1VSBVLG3l/X+R1nhGw0XxlN9neSP7VHH5n73/lpXtnwL8GzeDdP1KP/AJ6TR142Ll7p9HgY89Q98sZVl/5aR1sf6qvneY+q5TP1CJf9Z5lcjrUv7mb95/1zrQKiPM/FF/dReTIknlV5nrGjSX90sldEH7xxTgTaL4I+33UcnlyS2v8Az0kr0zxJa6DpcMeoXHmWdvHb+XJJXbCRy8p87+KNU1K/+1bLWSWPzF8uX95Wl8PfDlnoOsQ6peR+b+7/AHn7v/V10RdjCpSvI9sk8b6ff+F5LNNPufO/1f8Aq/8AWV8n6x8G9elvry4s4fKsZJv3f/PT5q6qVRI8LF4J1P6/4JueEfgZJLfTWeuST+deW/l2/wBmk/dyV2Fr+y/HpflyJcf2hRUrpnNDL2v6/wCCdpovw0hsI/LeGTUJv+udO/4UFDrN1HcahH/ov/LO2rz/AGp7VPDP2djY0vwRpfhKaSOz02OKbzP3ktaGqaDY69N9oez/ANK8v/W/889tcVWVzup0vZnQeDbDT7qS3s7jT/tk0cf7ySuw8WS6L4XsftHk+VD/AM9I68qRtYLXS7X7L9oT/lpVW6sP3f8Az1q4mpgyReVHJWLqn+r/AOWldBBxOvRNLa/Z/wDargbq6jikkjST/VzNHXo0Twcb8RH5lU7ry5Yf+BV1HllrS4oZZo9/72OT/WV6N/ZccVctWZ1UjL1S18218v8A55/8tab8EdUutG+Mmi7Nn7tqKEuaJjVjbQ/UT/lnHJ/0zqaOvVirnztST5rklPpEjqKsDM8Uf8gv/gVUdP2+TWRRe/1tPoAnjqSgkfRQA6m0Ac1L/wAhi4q1QUSR1JQA+nf8tqAH1YoAK5e+i82+mpSAp+XRWFiz2aOn11ED6KskfUtBBFUtABRUAV68D/dxftIalH88Ufl1nL4hxPYI6uJWhRLU1WZ3HUUGg+ioAKKACh6APJf2jIv+La3Un/POZaPhLL/xROm/7tc/2yjuI6vR10AOjqWpAdU1ADqfQAUUARyV4v8AtOf8gfQf+vqlP4QOw8Ly/wDEhsf+mkK1vR0ySarFUA+irAdU1agFOoAKgm/1MlZAeB/C/wDe+KPEWz/ntJXrUdZxJkT1YrQolqWgB9PoAdRQAVnaxt+w3n/XGSgDzf4ZxeVoMn/XSuxoA4T4tRQxeHdWvLjf5MdnX582Nr9q/eeS8UfmfvK8/FHu5Z9pnXahF5Wn3En/ACz8uvm/4reMv30lnbfvf+mtc9Clz1LHp4us40bnms3ii+/1dtI8FeifC/wlpd1/pGo3nm3X7z91L/q6+lhFHz8U5mP8eNLtbDXrX7HH9jt/J/1Udec2t00V1HJbyTxXX/TP5ZK6Oexw1Yr2liTXtt/rF5JZx3fk+c3l+b/rK6j4U2EcWtTSajY/bLWRfLqZyN8NQvI7rVLC60a+huNDmjs45I/Mjr6y+F91dX/heG41GHyrq4r5bFy90+/y2PLUPQtLl/cx1vWsskteTyn1XKjH1791JHvrm9U/e2tx+8rQzqI4HxJat/q3k82HzP8AnnWPY6N9qmpU37x5U5nSaLpa2FrH/wBc60rrRrHVLWSO8t47yGu6EiOUxZPh9pdrDJ9nj8rzKw5PCUdrN9nSx/ef89a3k7F7yL1rpcdr9yH/AJaUf2M0v/PTzN3meVWMajQTgkbVrpd150ckcP77zPM82SSuqtbCaKby47jyv+enl1nztmVki1a/ZdLh+TZZw1i6x4oWWb7Hp0nmzSLWdyoNbFPQbCG6mkt9Ujk8yRo44/NrqNL8JXVh9yOC8j3VzSlcKmpuafYLF5n7vyqk1Tw5a6pD5dxH58clc8ibGfdWv2W1+T/VxrXL/wBqfavM31cRmXfS+bWLqH+proIOJ16WPzpPv+TXmvlSRfvP9qvRong434iHzf8Alp5lEcvmyV1HlmppcsdrNH+7jrsPtXm2vmf89K4asTqpHI+MvFtrFHHb2c32yaOSTzIqufBWw1668cWOqfZf9Bj/ANI/55+ZWkI8kTeMfaVLH2d/w0j4iiuo4/sNp9lr274e/EGx8eaXHcJ+6uv+WkVdlKpc4sdglSjf+vzOvp1dB82FTVYGR4j/AOQX/wACqnaxVkUXafDFQBLT6CR9FADqbQBzE3/IauquUFD6loAkjo8ugCzT6AGVyWqSt9ukkpSAZRUWLPYY6nrpMh9PoAKKCCWioAiooAWSvnm+/wCTkJv+vNaBRPakqaOg0Jo6nqyB1JHQWSUVABRQAVHJQB5r8fPMl+Gd1/vR1R+D/wDyI+mx/wDPOGOsftFHfR1ajrYkdHUtADqmoKCpakBlPSgBleKftQStF4d0mT/W/wCkR/u6U/hJOu8J/wDIDsf92ujpgOq3VASR0tWAUVqBNTqACmTf8tPNrIDwH4X/ALrxd4ij/wCmzV6pDFUEyL0dT0FD6kjoAkqSOrAWl8qgBKoa1+60u8/64yUAea/C/wDe6D/wKu3oA84+N3/JPdaj/wCW32WSvh/S9LuIvuRvLJJH+8rzcV8R9FlUf3cjm/G3hzXpbH5P3UP7ySSKvnGbwRqHiO6jkSSS8/efu60wk/ZnZi6TkeheCfg3JLHNJcQ+VdR/89P+WbV2EPw5+y2scdvH/wBdP+WcldUsWuYuhgWo/wBf5jdU+HMf/HneR+b8vmf6T/tVY0H4c+HbDS5P+Jb/AKdHIvlyx/8ALOl9ZVQ6ZZev6/4c6SPw5pf2WGT7DbWc0f8Ay08n/WUX3hLT9Zuo4/JSKGs+Y6YUToLHwHosX3IY5ZJF/eeVXo2j2v7uOP8A55x15leVz2cLH3jotP8A3U3l+XWtDL5UMdcZ7VjB1i6klm8yuXvv9d+9qCKhh3Vr9qmqGGwoOL2Z22g2EMtq0nlvTdQ8OXVrH8nl+T/rK0uc/IY/2W6/jt5KhmlrQzL1rfwy/wDLS2/d0SX+ny/8+0slVYCH+1LWL955kdH9vXUvl7JKkixX8pr+T55JJZJP3n/PSStrw74XXS4be4jhk86ST95/1zWs7jhE7S60Gxv/AL8dXIbWSw8uNP3vl1hYo0Pluoayb7zLWT/pnU1EBiyXUd1XK61FVRIsYM0v7usu6/ex+XWxlI52+0uO6sZN9cDqFh9g8z95JLDXdSZ4mLjc5e6/dSeXUPmtXZFnkWtI1tLl83y/+eNdRHpeqa9awx6d5cXmR159V2PQw0OeJ0Wj/Bux0uP7Zef6ZcXH+s82ustZbXS4Y9n7iG3X/lnXNGfOfQ0KfszzvxF8S5pdekjs/wB19nk8uu8+C/xL1jS9ajkTUP31u3mSf9NI2rsgzWpH2tGx9/eEfEdr4o0WHULOSOW3krZr14u+p+ZVf3dSUWTUVocxheKf+Qf/AMCqO1/551kUWo6koAsUUAPooJHUslAHH+b/AMTS6k/6aVpJVFBU0dSBLUtAEkdSVRIVx99L5t9cSf8ATSlIoZRSA9gqxWpI+igCSOkoICpagAqKgAr5+1qKSL9pL/rpZ0Cie0R1MlBoPqxVkDqfQWFFQAUUAFFAHmfx+i834Z6lWP8ABWXzfAdjWP2ij0aOrUO2tiSxHS0ATUnlUFD6KkAp9ADK8Y/aWlWLw3pMj/vf9KpT+Ek6bwjL/wASG1/3Y66aOXzaYE1TR1QEtFWBYorUB1FABUU2795WQHgfw5/deLtc/wCviSvWI6gmRajqaOgokqWgBY6lqwHUsdAEtZ2sbf7Luv8Ari1AHmPw1/5Asn/Xau3oA4r4vRRxfD/UpHt/+WdfKceqWv8Aq7OOPzK83FfEfVZUv3cjk/G3hzUvFvl273X2O3krn7H4VL4cj8zToZPtVcUJ3Pop0lI6jQdLmsPMkvP3F1/zyrQmtYbr78Ked/z1rklJ8x1waUSG6sIf9Y8f+rrDurX/AFmz/U/88666CaM5JleSwm/ghqbRdLb95vjfzpJP9b5ddHMOB2Vro0el2sf+r8yumta4pu56uEj7xqQxf3I6bNdfuZI3rM9Gxg3V00tYeofvf+WlQYVDNk/1JqWgyudboN/H5cccf/LOuo0/y7+H56Vzk5jQm0GGX7kdc7qHhy1lm+e382HzK1ucxn33w00uWT7RbxpZyVn/APCr4f8AWS3H+rjqfaAO/wCFfQ+ZHJ53m/8AbOr1r4Stf9Z5dVcqxqWOjWth9yGtiGL+5HWVzSETWtbX9zVqa1q7GJXkqjqn7qHy02VE0B5/rXmWt1JWXJdfaoamJVjm9Yi8ry5ErLki/d/6utjlkZt1LJ5NcrqGjR3/ANybyq2pM4a8bnG69o0n7u4SN/LrDr0Is8OorSOo8G6XJf3Ue9f3de3aD9l0bT/LT91Xn4l2PZwcFGJn+KPFtrpcclu8n76vNfF3i3+1IfL/ANV+7rKlHlPYvc5+1sG8yPZXoXheKO1urONP9TJW9NnTQj7tj7G/ZZ8RzX+n61o7yfubeSOSOvf69ik707n5vm9L2eMlFBRXQeKYHiiLzbH/AIFUcctZFF2n0AWKKAH06gkWOiSgDkR/x/Xn+9V2qKH1NHUgT1J/y1oAnoqiRlchfeX9uuNn/PSlIoI/3VFID16OrEdUSSUVYD6KggKfJVgMooAK+evGX7r9pDSY/k86S1/ef9c6z+0B7JHV5KZY+rFWQOooHcf5tFQIfRQWFMegDzv45fvfhfrn/XGuX+CPmf8ACE2slY/aA9Kjq0lbAXI6WgCanVJQUUAPooJGV4x+05/yKNnJ/wBNqU/hA6bwjL/xTem/9cVrpo6sCarCUAFPoAdU1WA6igAooA8A+HP7rxt4gj8z/ltJJJXrSVjEmRNHU9WUPooAmjqWrAdSx0AS1Q1T/kF3v/XFqAPL/ht/yAv+BV3NAHNfFb7L/wAK91aO82eXJDXyfHEv/LOOvGxj/eH2GUL92H2BpajtbqHzvn/f/wDPT95XAfS00aUP2HyfnjqT+xtN8v8A5Z2fmUDsZd9a6TFHJG8ltXL3WqWcXmR20P7n/nrHHVxdh8o21tbqWSONI67LRfDkelx+Y/8Arq3lK5rGJDdSr9qrctYvNrlPQoRNjyo4o/M8ysfVJa1O4w5pV86qP7zzJP3lBy1SnJF5tHlLF/zzoIL2ly+VdR12Gg3Ucv3KzsZSR2Vjulq1No3/AE0rWKMTJvrDyqr+V5tYVEdBV8qSKaT/AFlEcVSLlCtS18uWrGa0MsdE0tanHJFO6uo4qw7qWuSRhYw9YtY7+1/651wuoRSWE3l/8saZZm6pE0sPlp/yzkrmZP3X7uqIkU9Q2+TJWbHF/wBM/NhrSJwGf4ksPNsfLSuF+wf3K6onmVI+8dl4R/0W18ut7VPEa2Gn+Z+8n8z/AFdVJHpUHaJweoay1/NJcPJ/zzjqbwvo3/CUX0mzzJZo/wB5/rP3dVc9ClrI7D/hHFtbqP7RJ/p3meZXXaXpf+ircJH5dET1Yr3T6I/Zplji8UatH5f+stY6+j67KH8M/Ms6/wB6CnV1HgGB4olj8mz/AOu1Q1JRajqagCWpqACnUEhSyVQHJ+b5t9N/vVajoKLEdSVIEtWKCQooASaKuRuv+P64oKGUUAexVPHVEklPqwCioICirAKloArvXgPjyJYv2htDuP3n+pWs/tAeyQ/66SrSUyyWpqsgKdQRcfRUFj6ZQWFMoA4z4yReb8Odej/6da4H4D/8iHZ1j9oD1aOpkrYCxUtAE1OqSgooAfT6CSCSvI/2lv8AkQI/+u1KfwgbXgn974b0/wD64x10kdWBaqWgCaigCxRVgFOoAKQf8tKAPAfh7FJF448Rf9dq9Yj/AHVYxJkWI6mjqyiSpaAH0+rAdRQBNVDWv+QVe/8AXFqAPM/hfF/xIf8AtpJXa0AeaftEeZF4D+T/AJ+FrwGP/nnXg4x/vD7TKF+7C6iaXzPs8lZ8mgzWsP8A02rlPpYIo/8ACG6pL9+Z4v8AyJTZvh9qV/5n2i+oCxNp/wAOYYv+PzUHlrWsfBFra2vlpG8s0n+skpSdjflN610tbWGONI46p30rRVMZXOmMTN0uwWX7RcV0EP8Aqas7KCHTS/uY4/LqhfVqanOX1Vf9bQctUPKk8qof3dBA618uWSui0e6+y3Ucnl0Ckj07S/8AVVcjlkrWKOUq3PeqPlebWE0dBV8qSiG1rEXMNurD+5JTrWKS1+/VjLHm+b9yi6v/ACo61OeSMvzZJfvyU2T97XJIxsU5rX93XN+KNB8q1kkt46ZJxv2rzf8AtnWLr1r5X7zy6oiRzvmyS0VpE4DB1T/U+X/raweK6onJUXvFr7VJF/q/LqGSXzfLjeStpIdOVonP69LJ/o9nF5n+kSV9HfC/wlDYaDHJ5ifvI6xuezhtZFXx55cV9HH53+r/AOWn+9XTeHYrX+y4f+eMn7ytInvRXunuX7PNr5uva9ef8sY4Y7evd67KH8M/Kc6/3oKK6jwDC8Uf8uMn/TaiOpKJ6nhloAkp9ABRQSOpZKoDkf3n2qT/AJ47qu0FE1FSBZjqSgksUUAFcbN/x9N/10oKEooA9eqeOtSR9FAE1FQQFFABTKsArwH4mfuvj94b/wCuNTL4jSPwnsUdXKqQiaOpagB1M8qrAmooAKKgAooA5H4tWvm/D3Wv+veSvNfgD+98Ew1JR6tHVq171QFunUEhVigoKfSsAUUySOSvKf2jP3vw/wDL/wCmy1IF74e/vfDem/8AXrXXR1QDo6uJVgPooAsUVABTqsAooHc8E8E/8lG17/rtJXqdQIsx1PQA+pasB9PoAdRQBNVDVN32G8jT/nm1AHmfwz/5A7f9dmruEoA8v/aIv/svhGzt/M/4+Jq8Hte9eDiv4h9xlH8E0o7X9z5lWvKjirgPqaS90d5Tf6ypIYvNqDX2Y6OwWr0cXlVVyrFWT/W1l69F5UcclETUhsf9T5lWLWKSX93XTHU2oO0TUk0vyofnrn9eiWL955n7utdjpg7nM3PeobWoOaRejrH1Ty7Wapsc1iva6pHFdfPJ/rK7DS/L86OugD0LQbqOW1rUml8qPy6g5yv5vm1DNKv/AD0rKJsU/Nk/1fl1a8poq1iirk0P/XOr01qt1DWvsznkzFurX7BWPJdSS0SQRI5pab5tedIzkibzKq3UXm2sn7uszmPM9UsPsGoTbI6z9Yl821kt/L/1lKloVI4ub91+7/5aU37V5X7zy/3NdxwHP6pLJ+7rJ/5eo/3dETnl8RehtY5ZPLrJ1S/tbC1urh/9Xb10RfQPg1Pbvhr4N0Xxl4Rs7i5h/wBKkh8yOuyh0G+8Oaf5fmebDHUy+I+jw3wxPO/HEsfnfP8A6ySOu00XzJbXTf8AntJ5dOLPVPor9nOL/QfEkn/PS+r1+vTofwz8hzd3xUgp1bHimB4o/wBdY7/+elEdBRPT6kAq3QSFOpxAKWStAORt/M8yT/eq7UATU+OpAnp6UAS0+gBlch5X7ySoLiOop3Eeu1LHW5I+igCaioICigApeasCN6+ffjB+6+NXheSpl8RpH4T2SOXzavJVSETR1LUAOoqwH0UAFFQA+igDlviNF5vgnWo/+elrJXlP7O8vleDY46ko9fqVKoC5HS0EhU1BQ6npWlgCisyQryf9obd/wgfyf89o6kCx8PZW/wCEX03/AK412UdUBMlWKsCSOloAKKgCairAKT/tpQZ3PA/BsUn/AAtDXv8Apm0nl16pHUGhajqzQA+pasCanUAFFAE1ZmtS/wDEruv92SgDzf4Z/wDILm/6aTV3dAHjH7S0rfZfD8aR/uZGkrxi1/1kdeDiv4h9xlH8E2Y6uR1wH1tJe6akcX7vzKdDFUHTcm+y+bJVWaKpuVykMlc/rF0ss0m+TyvLrSJBJp8UldVoulw3Xmfu4/8ArpXTS1Kg7RNK+0uT7LXA69WtTQ1oSucDdf8AH1/q6mtbqoFIPNqrdRebVWMrGLN5kU1bnhfWa0Mz07w7deVH5n+thk/eVvTX6y/8tJKg5xs11WD4iiuNUtZI7eZ4vLb/AFtZRNjS0u6/dx7/AO7XRWssfk/JXTFE3HQy/vqvPXVzHPJmTrEqxQ1zskvleZJ5cdZSRpEy/N/c07za8qQSQfao4qseb+7rM4jl/EkX7mSR68/1D915n/TOiOhUjkbqWoq7TgMLVNvmeY9UbWL998klETnl8R1HhGwj1TVJNkfm+X+8kirlf2kPAd14c0uz1BP3VjeXH7ySX/npWkX+8sFT3qdzvv2c9Z1iLQdL2eZ9lr3bUImurX95v/1lVL4j6PDfDE8p8caXbxTf6z/WV21jEsX2OOL/AGaiLPVPo74A6X9l8L3Vx/z8Xklem169D+GfjuZu+KkFNrY8kwPFG37VYyU6Ogomjq5UgFFBI+nU4gTVDWgHJWP73zP96tCoAfUsMVSBLT0oAlp9AEc37quPH+ukqC4liOipuI9XqxXUSLHUlBnIKfQMKloAKKAK714H8bv3XxU8Fyf89G8usaoHr0dWo62AnqeOgsfRQA+ioAKKAH0UAct8Qv3vg3Wv+vWSvI/2fZfK8N3kf/TSpKPZI6mSgkt06qAmoqwHUUAPorOQBXlf7Q37r4czXH/POZfMpgHw12y+F9N+/wD6mu2joAmSpaAJ46WrAKmoAKdQTIKbQI8C8Jy+V8WvEH7v/lo1etJWcRWLFSR0zQs0kddAFmigAooAmqlqkX+gzf7slAHl/wAK5ZP+Eb+f/WeZJXbeXWQHj/7S1rJLH4dk8z93HNJXi8fl+ZXiYn+Ifc5V/BNRKuRyr/q68yx9VS+E2o7rzfuVN/qajmOomkrPupZKqwGbNLWLqkUfnf8ALStqasB0Gg2vmzeW/wC6/wCmtdxaxeV5caVpSIkaV1oLXVj5nl/u68z8UaN5Xmb67KsSMHO0jy/VN0V1HH8//PSm/wCtrA7ibyo6bNtijkqzIx7qLzfuVm2sv2C+qiD17w3dfarWPZXQ1lJGRQ1SX7LN5lU/N/6Z1YFrT5Y5f+WlblrfyedH+7oA1IZf+WlTTX9dNzlsczfS+V5lZM11XMdVNFan+bXIFRCUsd1/yzesjkM3WP8AU1wOtS+bH/z1pRMavwnH3UX7ny46y5t0X/LSuyCOAx7r97TbXvWpEjtvhXL5XiT/AK6SR16p8ZPDkPi34Z6tb7bb7V8txH5sf+r2tWP2zekjB+EPhyOK1tfsc0ksNe0XWl/ufL8uuiJ6W0jxn4oRQxTeYn+p/wCWlaHhfdf2tnJ/s1kexH+GfV3wViji+H9j/wBNJJJK7mvapfCfjmYRvipMZ5tPqzzDnNe/4/rOP/pnViOgomSpaCR9PoAKdQBNVe6/1clWByWl/uo5NlXvMrIC1HUtADqfQBLT6AIbqX93XHx1BMSaisjQ9ejqWu0kWOpKDOQUUDH1LQBFUtAEVeCfHiL/AIrjwvJWNUD1Sx/49I/+ucdaEdbAT0+Ogslp1ABT6gAooAKKAMHxl+98L6tH/wBMa8b+Af73S5v96pKPZI6moJLdFUBPHT6sBtOoAfRWcgCvL/2gv3vw5m/3qYDfhf8A8ijpv+7XYebQBNHVjzKAJvNp9WAVNQA6m0EyEkpaBHgXhe18r4ta9J5f+s8yvVo6ziaWLUdWqYixRXQA+nUATUUAFUtU/wCPCb/dagDy/wCFf/IB/wCmnmV3SVkB5T+0ZF5uj6HJ/wA87qvCq8TE/wAQ+5yr+CXYf3VWoZa4bH1VL4S9p/8AotbUMvmx+Y9RyHUQzX6y/wBysfUL/wA393RYDDurqSodPl82+j8yt7WA6y13Rfck/wBZXUfavN+xyJJ/q6KREjqv7baW18t2/d15v4u1RfJrsqyMMNG0jyvWIvNuv+ucdZ+l3Ud1N+8/dVgekXof+ukdElWZFWSuL8XStYWsn7yqIO4+F/iPzdBtZPM/fV6JdX7Sw/JSkjIxZrqqs11JFSAdDLJa/cjrcsdUkl/6ZUAb1rdSXU3+s/1dE1//AHI/9ZWlzEwb66/efPVGS6/551mdUEVftUlWvtX1rkCaJOnmfvKz5P3X7ysjgIdQuvNsbj/rnXneoXXlfu6UTGr8Jy/lfvJKj8r93/q69CCOAx7qL99/q6h8ryqZEjqPh/8A8jJaxp+6/eV7l4ouo7XwvqW+T95JD+7rH7Z30kc78L9Z8qOOvcvNjv4Y66InVU0keE/HLbo1jN/12jpvhuWSKx/65xx1kexH+GfZHwzsJNL8B6Lbv/rPssfmV0kle1S+E/GMZO9aTFoqzgOe1n/kKWv+7U0dBRNUkdBJJT6AHUUAFJN/qZKsDktP/wCPWrcdZAXqfQA6rFABT6AIbqLzYZK4+OWoJiWPl96KyND1upq7SR1FBAU+gB9L/wAsqAEqWgCKvBP2iPLi8UeE5H/vVMgPVrWr9UBNVitRxHUVkUPoqACigAooAyfFEXm6DqXlf6z7PJXhfwBl82x1L/rtWf2ij2qGWrFUSTR1LWoFinVqAUUAFPrIm4V5r8fv+Sc3n+9HWcijP+F8v/FG2NdrTAsx1JQBYp9WA6pqAHUUAFNoIPBtBv8Ayvi1r0aR16lHUFliOriVYEtPrUB9OoAmooAKqap+90+8/wCuMlAHmPwzij/sWSP/AJ5zNXbJUxA8p/aMl/4pvTY/+nqvC4f+2deLjtah9zk3+7jvNps11XDY+xpFqG/q99vk8uOOixZXmv4/Ok+b99VG6v8AyoZP3lFiDLkuvNqrpd/HFdf6z/WV0AdpY38nkxyJ+9rpvt9YcpJVutZ8r935n7muF8UazJ5M0nlySyR/88q1sVFHjviTxRJdXXlpNJU2l695v7zzv+2UldMdTolaJ1Gl38cU3meZ+7re+X3rO9pXI5UVda/49fMrzPx5r3m6fJvj/c1cZGOxtfAuwur/AMLyag/7q1kaTy/3de7WthJLYw7/APnnRIz9p7pm3WgzRTeX5lc7qkU0UMlc9h8xn/8ACRwxeXG80f8Aq/8AnpWtp9//AHJI6qJVzpo7/wAqGOTzKtSS0AZ19WZNL5VBqUbqXyoajtdU/wBXJWJjNmxHf+bVXULpcVzmBiyVxevRf8TCT935VRY5K5jyRLFVOSuuJxGXdfvarzS/vv8AnnXQB2XwvtftWsSXH/LOP/v5urW8eeN4Yr630uz/ANZJ/wAfHm/89KDqw0baF74c3/lahJG83/TSvcPC+vfatQ8vy62PRkjxn9oy/ml1SSz/AOmkfl/u667wb4cmurqx0u0tY/tF5MvmVz8vNodGJqqnh7n2Ra2v2WGO3T/UxrHU9e6fjNR3qXCioMjC1iX/AInUP+7RQBYSpaAH0+gAp1ABUNx/x5zf7tWBzWl/6qrkMVZFFqn0EjqfQBLT6AKd1K3kySf88465GOsrExJvLorL2Zuew1NXeZDqfQQFFABToZaAFooAZXhf7SFrHLrXg3fs/wCPxamQHqGn/wCqj/3a1KoCWitRxJqdWRQ+ioAKKACigDL1/wD5AWpf9e7V4L8B/wDU6lH/ANNqz+0Ue0WsVadUSTUVqA6rFagFFAD6KyMbhXnvx4i834c6t/0z8uSs5Gxg/Cj/AJE2zru6YE8dWo6AJKKsB9FAFiigApI6CDwnQfMi+LWtR+Z/y0r1COoLLUdTR1YFmitQJ46WgCaigAqlqn/HhN/utQB5j8K/3ugyf9dpK7hKmIHkP7Rn7rS9Dk/6aSV4f5teLitah9zk3+7kM11Uc3l/8865bH2NId/rY6tR3UkVFiyG6l82qc3meZ5klFiA+Xyf9XXG+KLptGuo4/M82OSPzI60A67w7r0N1p9vWtdeI/KhjrblJM++8UR/vJPL8qT/AJ5V5r4i8byfavMrOxtFHmd14jtbWOSS7m+x/wDLT97JXF6p8ZGtf3lnpskvl/8ALWWvWpUrni4nFOI7Qf2h76Kby7vTfPsf+ecX+sjkr17wb8X7HxRDHJbyfvv+eX+rk+WieHSjcnCYx1Ta8UeN/sun/wDLCKvI/FHiiPVLqGzSTzftEn/LL95J81ebGJ1VKtj6g+ENr9g8I6bb/vJfLWOT97Xqlr/qY9kdEgt7pe8qOXy653VNBhluv+A1nYnmZwPiz4aWssMklvJJF5f7yvL9UuvEHg26mt9RjkisZJPMjli/1clTE15j0Lwv4yhuo/L8xJf+2ldta+I2lh+SOg6SHUL+S/rFvpW8yg1KOoS+bHWb5vlVics2amm3VWr66j8uucgwbqWSsHWpY7ryf3f+rqrHJXMm6qjJ/t/6utonEZd95lU/+2cddAHUeA9Zt9Bh1rULiRP3fl15Xpd/qnjfXry4SH9953mf9c91BtSnapY9y8G6DqFhqH2jUYf4Vr2bRb+PzPk/551sezJHmvxM1RbrxxYxpIn+jx+ZX0F+zn4SbzrzxReR/wDLP7Pa0UI81Sx4ub1XDB3R7tHT69U/M731Ck5qBHP6x/yGod//ACzhp0dAF6OpKABKfQAU+OgBKi1SVYrGb/rnVgczY/6mOryVkUWKfQSOp9AEtPoAq3w/0W4k/wCWnl1ysdTYmJZooubnq1Tx1uYXFp1Ah9FAD6ZQA+igBleG/tLeX5nhOR/+Wd5UyA9K0r/jzj/3a1I6oCxHS0Fk1FADqKgB9FABRQBT1j97pd9/1xavnf8AZ9/e3Wtf88/OqQPco6vR1QDvNqWugAqxQZyE82neZQMWisgCvP8A43f8k51Ks5FnOfBuXzfBNnJXfJTAsVJHQBcoqwH0fu6AHVNQBF5tJQB4Np8vlfGrXpK9W82piBZqzHW4FiOloAfU0dACVNQAVS1T97pd1+8/5YtQB5r8L/8AkAyf9NJpK7SpiTI8l/aW/wCRT0WT/nneV87yX/lV4uK0qH32SfwSL7UtM82uY+uiWobqm3V+sX7yq3NL2iY914jWL92klXNLuvtVOQcxqeUtcX8RtGXVLH5P3V1H5nl0rmcTxW18W33hKaSzuJJ/3dbX/Cxvt/l3F5NHeQ/9M/3ddkKdzk+sqMh0fje11T7l48X/AG0rn/Enij7BDJHb/wCu8uur2ZFXFpxPJ9Q+1azdR3F5+9m/5Z0Wulyfu43j/cyeZXQfMyXNIbN4Skih+0Jav/11qra/atGuo9lrJ/z082X/AJaV01JIpUXE3LrxbeX8P/LOKb/npHWt8PfC82s61DI9vJL5f+r/AOmleRJ3PUpU3UqXPszwHa/2Xp8du+/zI/3degWN1J+7jrkketI1vtX+romlqTnKt1/qZI3rl/FGjQ6zp8kdzH5v7mpMjwHWPBF14X8zUNO8zy5G8zyq6Lw34yW/hjj8zyrqg64s7qG/XyfMqOSoNLlO68usuSoJKdjqklrdeW9b2ZP+elZBIo30skVc7NL5vmVcTiqlWSqeofuoY6qJxHN33+uj+5VN67ImdyrJYXXiPS7zS7fzP9IkXzPL/wBmSvbvgj8FodGh8y8jSTzKyqs6KC9656Zr2jR2FjJsuP8ApnXC3XxLs9BsZP8AVxX0f7vyqKcvdsevS96JyPwz8Oal8UPiNYyP/wAtPM/79rX6GaLpcOjaXZ6fZx+Va28ccccVduGVonx2fVVzQo9i/Tq7z48KZJUEnO6pLH/b3/XOGrUdAFj/AFtTUACU+gAp1KIE1UNY/wCQfN/1zpgc7Y/vY46vJUgWKfQBLUtAEVSSUAU9U/49ZpPMrmYfMoKJqKoD1qP97T6s57k1P/1VBYlPoAKKACigArw39qDy4tB0WR/+Wd5UyA9K0f8Ae6Xa/u/I/crWrVAWKWOgslooAWOpKgAooAKKAKN9/wAes3+61fOPwDl8rWtat/8Aps1SB7xHV6OqAdDFU9dABTqDORNRQMKKyAK4j41f8k51b935snl1nIs434N/8ibZ/wCsr0ZKYE0dT0AWKKsB9FADoZafQAUsdAHgtr+6+NWrV6tHUxAtR1ZrcB6VLQA+po6AEqagAqhqm3+z7z/rjJQB5r8NZf8AiS/8Ckruo6mJMjzH9oaL/i38kn/PO6hr5VmlrxcdpUPvsk/giUscvlVzH10SPUL+OKP/AF1cP4u8eQ6NH5fmJF/0y/56VUNTOo7ROb8Gy6l431SSR/3VrJJ/2z+WvbtL8m1j8uKOnIVzSml8qOsm623Ufzxp/wBcqyuaxPnH4oeF2tdQkvLeOvOfKby/Lr2aDufN4tOMiSx1mTyfn/8AIXy1Ymv2uq6uY5JNuJm/62SONJErpNBsLWK68y4kj8vy6QUlzSPQrXWVuofLSPyoasWvg211mOSR4f3Pmf8AbOonI9+lRUy9J8JdD1T7lj5U0dd14X8EWeg7ZH8z7VJJ5lcEXc6I01R1Oyj/AHX7utSxv5IqwkEjYtbrzYY/+elXo7+OpOck81bqmzWvm+XUmRyesWDfwR/9c6838ZeA/NtZNQs/3Vxb/wDLKOP/AFlBUWc74X8ZTX91/Z9xI8Ukf+si8uvQLXVPNjqDpuLUH+pqCjjb7zLXVLeTzP8Alt/2zrvrWVZY46yCRT1r97JXLzRf6yricVUh/wBbVe6/1Mn7uqicRx+qXUdZc0v76uyJz3PUvhzoLRWv2x4/30jV7pa6o0UfySfw1zVWepQXu3M/xxqk39gySJ+9kr558I+HI/Ec02oajM/lxzf9c/MrOnL3rHfS92J9pfs0/D6HQdLk1yW18q6vP9X/ANM4a9vr3aUbRPzHM6rq4qc+wU6tzzAptQSc5ff8h75/7tWo6AJqsUAFPoAKdSiAVT1j/kH3FMDC0+KrlSBYpsdAFqigAqWgClqn/HncVgx0FDuKKoD1RKfVmRYp1AD6K1AKI/MoAfTKACvF/wBpz/kV9Jk8z/V3i1lIDutB/wCQXb/89vJWtZKIgXI6WtSyaisgF/5ZUtAD6KgAplWBUuv+PW4/3a+bfgXFH/wmXiz/AJ7faqzkB75HViOmBcSn1YDqK1AbTqyICigBY5a4n41f8k117/rj5lZyLOJ+CMscvgeHZXpyURAsVLTAKfQBLRQA+n1YBT46gDwG12/8Lu1qvVo6cSi7U8dbkj6fWQE0dS1qA6pqACqWq/8AILvP+uLUAeZ/DWL/AIkMn/XaSu2jiqYgc78UNLXXvhzrln/y0+z/AGiP/gP7yvieSVZZv9ZXmY74rn22Ry92SHRyrTb6VYvLrzz6+5574216HQbWSRPL/wCudeX6Do2qfEbWry8T/kF28kf/AF0krppaHNPWR9CaDYLo1r9nt4/9XXRR1jI2ix0kv/LSofNrEq5yPi7S7W/m+eH935f7yvHfiN4cjih+SH/Sv+WkX/POvXpHl143ieUzeZUkN1J+8rsPnedlq1iuJf3n7z93Xo3hf4aa9dQx3Dx+VHJ/z1/55tRKR3UIWkeueCfhzDo3nSXH73/nnLXZfYIYv3aQx+TH/wAsq4ajvI+igivDF5VXv9ZWRoTSSrFU1rdeb/yz8v5qkJGhHdeVNHWla3XlViY8psQ3Xm2sf7v99/y0qnqmqNFD5aUGBizaovk+Y9YOsX6+T5fmfvK2HY8b8caW32qbXLOZ4rj93XReF9U82xs/3f8ArK5zaJ1f7yk8rza5DY4nx5Ev9l/6xP8AXRyV6Jo8X+gwyUElPVIv33z1zN1+68z/AL+R1cThrmXD/wAtKp33+lR+XWpx3OZuov30lUfK/wCWm2umPwnFI+pPhfoNrf8Aw/t9myX5f+en/LRauTRNpd1JHJHXFV+I9Wl8Iah/pUNZOg+Ev7U8Xabp/nJFHeXS1VP4jer7kbn2NYxR2Ecdun+rjjq5HXvUz8tl8RLUtaCGUVBJzU3mf8JFcR/9M6u0APqxQAU+gAp1ABVLW/8AkF3lAGLaxfu/kq1UgWKloAX95LU9ABRQBQ1T91p81YNBRLRVAeo/62pasyHVNQA6itQCn0APooAZXjf7Tn/Im6b/AM9vtkNZSA67wvL5uj2P/XGOt5KIgXI6WtSyanVkAnmUtAD6KgB9MerAhuv9TJ/u182/CX918RvEn+r+9WcgPc6sx0wLiU+rAdSx1qAyj95WRAUnmx0ANrjfi1L/AMUHrUb/AOp+y1nIs4H4Dy+b4Hj/AOuleoQy0RAsebU3m0wG3UvlR1N5tAE3m0UAHm1J9q/c+XVgTR/6sU2aWoA8Djlk/wCF8a1vjj/ebZK9YjpxKLNW63JLFFZASR1JWoD6sUAFVNU/48bz/ri1AHlvw1/5Bcn+9XfR1MQHeV5sflvH5sMn7uvz78URf2D4i1DT/L/fW9xJHXmY74bn1ORy96SD/lj8lYuqf9+q88+z5jy3xJYTeKNejs7fzP8AppXrmi6DDoNrHZ28McXlx/8ALKumOgbyNS1l/v8Al/6z/lnWhHWMiosJpZqhesSrmPqlhJdfc/11cj4o8JSX/mR+X5v/AE1i/wCWdddKqRUjeJ5rqnw0vpfO2fvahsfhLN5McjySeX/zy8uuv2p5P1Q6jT/h9JYSf6lK9G0vQdU+yxyPDc/vP3nmUSkbQhaR0Gny+VDHH5n77b5clWvN/wByL/rnWV7yPWpomotfM8z/AFdIRqQxf9M6uWthH9l/1dSEgjtfKmq9a1iY8xNDqi/vN9U9U/e/vKDA5nUIpq5eTd5kn+sirY0sVdU0GO/0v54/+2VZfgPS5LW6vLf/AJ51zlxO28qiaJvL+SP+GuQ2OH+IX+lWMcbx+VHuWvRLHy7rT7OT5P3i0ElfVIo7r935f/bWuF1Tb53l+ZH+7/5a1cThrmXVd/8AU1qcFzDvpf31xHWXay/6Usbx/wCskX/x6umPwnLI+tvgXrNrdeE5I0/57V0XiS183zJPLriq/EerS+E5GTy4qteB9Uji8eaH/wA9vtFVT+I3xPvUbn1B9p96uWt/+5r3qZ+Wy+IuQ3VT1oIdRUEnNf8AMYuquR0AWI6koAKKADyqfQAVna9/yCpqAMu1/wBXHV2pAf5tT0APooAlooAzte/dafNWGlBRLRVAerUVZkWKK1AWOpKACigCTzKSgBleR/tLf8k9/ef8/ENTIDoPBv8AyK2j/wDXFa6GqAux0tBZYorIAooJkS0UCD95RQO5DJXzX8M4vK+KHiL/AK6USKPdo6s0ATwy1JQBJHS0ANpPNoAPNptAEPm/vq5H4oRfavAevSPJ/wAu9QB5v8AfM/4QiOvUvN8qoigLEcvm1VvpZLCaO4rWxnzFrzfNtfMp0N/H5Pzzf6uq3NDQpvm1EkA3zf31Teb5tZ8wFjzaT/lrVgeDeU0Xx41b/poteuR0FFqGWpo62JJKlqAJ46krUB9OoAmqhqn/AB43n+61AHmfwp/e+G/M/wBqu8joAdHXxb8ePDklh8VvEEiR/wCskjkrzcYr0z6HJpcuIOBhlrJvrqT95+8/hrzD7Q890WXyvGUm+vUo7/zfL/eJWtzUsR3S+d8kiVqWvmVjcC5/rf8AV06aL99UX5TSKsQ/ZZP4KpyaN9q+/JUalcnLoTaP4ckijkt66Cx8OLFD5b/vfLrqHKdzUsfC8csfzwp5NdBa2C3XmV10o2MpTLH/AAi+m/ufMjT93/0zouvC+nxeZ9nt0ikkqgpzOftdGhtZvLuKddRWP+sSPypqDWUDJur+xtf3jyR1nzfEbQ7COP7RqCReZ/00rONLnMJvkKN98bvD8U0kf2z95H5cdZcfx48OyzeWl1bSyVtGjNnJKpFly1+Kugy/u3m82T/plVe++Jelxfu0uo5ZP+eVKWD5TSlOOxl3XxBhlm+z2f72Tb5nmx1YhtZpZo/tG/8AefvI657m3KWpNLaL/lpUPgfw5DLqmrXH7yWGRo/L8yuY1udZqFhDFJ/q5KydQ8uKoEeZ+LpbrWZrGz/5aSTeXXuWl6DH/Yscnl+RJ5f7ysizk/FFq1h+7/1HmV5nqkskWoSfvKcTz65BTNU/dWtbnmSOLupabY/vbqP/AK6V2Q+E5rnRfBv4tTeHPEmpaXqM0lnHJcN9n/6ZtX05pfi2HWfL2fuv3f8Ara5K8byPRwklOnYwfFF/b2v3JKufBHS7rWfHEesf8uNvDN/38qqUTbHTVLC8p9HQ38laFrdV7Nz82NKG6q9DLTAuebUVAGF/rdamjrQ8qgklp9ABT6sB1FABWZr0v+g1nIDLjq0lICxTvNoAfT6AJafQBl61L5VrJWGlUUS0VIHqdS1qZEvy+9LWoCx1JQA+igBlPoAgkryn9pLb/wAKzm83+8tTIDY8Dy+b4X0n/rjHXTR1QFxKloLCpqyAKKCZDqfQIKKCLleaKvnHwP8AuvjJ4m/66NRI2Pco6s0APSrCUAHm0UAFMoATzKjmloAZXHfFDVLW18G61b3En76SGSOoA8P+EvxGh0vw3JH5cf7uT/np5dbmqftD6Po11HHeSJ/z0kjpxQGXfftX6La+Z9nhk8yuN1D9s1bq6kjt9Fjl/wC2lahyHNzftkeOJYfL06x0+KGuN8Uftc+PtUh8t7XT4pvM/wBbHU09QKui/tm+MtG8uPVJP7QsfMr688B/H3QfFGl2d5b6hafvFj/dyyVUkB10PxL0nVIZI7PUrbzo/wDWVY0H4l6TLJJH50dZcgHYWuqWt/8A8e8lTf6qkB4XdS/8X4vv+mcMdetQ/wDPSgomjlqaGWquSSRy1ajpgPqeOtQJKloAKrap/wAeVx/utQB5j8Kf3WgyR/8ATSSu6SgCxXzL+1Vo32XxlouoeX/x+WbRyf8AXSOubEq9M9TLZcuIPnuaKS1k8t6hurX7fDJHJ/y0Xy/Nrwz9BOL1DQZLDXo7xF/dyfu5PKretf3Ufmf6qnc1NqO6tbWSOumj1Sx8uPZJWNwCbxHptr9+6gs/+uslcbrXxp8O6X+8e+tv3m6T95XTTp85lKpYzf8Ahozwf/rPO82tK1+Pvg+6m+SaSt/ZImnX56lixD8bvD8V1/o90ktb1j8adLuo/L+SK6kkrnPWjRudBa/FrS5Zo9lalr8UNNtfMuPMjlh/1cldcZWCVA5XWv2h/sE0n2eH7ZXG+Iv2kdWljkjSGqCFAwdU+NPiK/mvI0sbmXy6x49e8eeI/wB5Zw3MXl/6z/WSUHTKBR1r4c+PJbWSO8kn+z/6z/WfvK8zvvAfiiX78d3LN/z7V20vdPPr0+Y5m68G6ppckkl5Y3NnWbdWv+r3169KpBny+Joypmf/AKd53ySPBJJ/q6988I/CXUIvJjeSOK6krmxM1Ezy+MqtSx9GfDP4QWugww3mo/vZrj/yHXqU3hfTf446+ZufR8xzetaNHYQyf8taueF/Dn2DRY9+zzpN1ZBcydUi/eSf89K5vVPM8mT/AFn+rqDQ5Pwjo02veLrO4ePzbe3/AHkn7uvfLqw+y2sf/LDy46yLPK/G11cS+ZH5f+rWSvLdU1SSX7/73y1/eSU4nn1ya18mWGOs3xJdRy/u/Mrc8yRysm3zqm0/yf3m+T/V12Q+E4rnn9r/AMf01w8fnyeZ5kklfZXg34X6x/wi+i6hod9+7vLWPzIrmnON5GcK7o6Gta/BbxFr11JJq995Vv8A9Mq9q8L+HNP8G6XDZ6dD5UccdXSicGOxrqx5f6/I3PtX0qxDdeb+7re54hehlrUtbqtgNa1uvNqzQBhQ/vdYupK0vNoJJafQAUVYD6dQAVkeJP8AkF/9tFrOQGba/uv3daEdICSn0AOp9AEtFAGVr3/HhWPVFEtFSB6nT61Mh1WK1AKSOgCSn0AFMoAK8z/aCi834Z33+9HWQDvhzL5vg3Sf3f8AyzrsI/3VAE0dT0AOqagB1FABRQAUVqAV80eEYvK+NWuRp/ekrKRZ7lHLVugB1S/N70ANooAb9qjohuvNoAhur9bCGP7RIkVeZ+OPjn4d8L2Mlx532zy5PL8qKgzseD/ED9teSwhj/s6xn8uRv3deJ6x8c/G3jfztmoeVHcSfvPMoka2PP/Nvorry7iS5ik/56/8ALSuih8R+VYzR3GofbJPMpcxoc7ql1JdeZePdf2hH/wAs/wDpnXJzeLZLWbzEjkim/wCen3aqCLi7E3/C1Y4v3j+XLN5ldNoviPT9U/eJcfvN3/LWqjExDVP7H+1fZ3jj+1eX5n7qOqtjF9luvM0u8/eSf8so6exkXrX4jeIPCUcn9nTXMU3+rkll/wBXJurldU+IPij/AI/H1q5imjk8yP8A5Z1pHQD3z9n39siTQf8AiT+MJn+y/wDLO+ijr6G0X9tf4e3Unl/2tJLNVS1HzGT4X+MnhPxb8brq80vWrSW3uIY698tb+Tya5OTlLuaUMtWo5ai4ierMdaAHm1N5lAFjzKd5tagT1S1T91p91/1zkrIDzv4a/wDIMuP+u0ldpRECaOvMf2jNBXVPh79s/wCWml3S3FXU+E7sJLlrXPjnXv3U0dx/yxqxY2H2r78f7mvnKi94/ROa8SxqnhKPWbWORI0/0f8A55UWPhyOWHy5KgBs3w5/dybJnrj9e+GmsRRzfZ7zyvMWs/tG8GeM618NNe+wySfbPNmrxvWtLmsJvLuP73+qlr6ehG8TwMypOMeYow7Yv+WdfSnwD+FVrr2nzXmoxxy1eKlyROTKoe0xFzuLr4GQy61JGkf+i113hP4I6D+8+0RyeTXh2P0iMFGNzqLr4LaDLa/6PDP50ccf72rlj8DPCt1dWP8AxMrv7LI37zzKIysY1Kz5bnWWPwq8H2sMcaWMcsfl1gw/D7SYpo43jg8mNvL/AHUda2scdKSlI6TW/Amn6ck0cMaXNvbt+5kj/wCWlSwNa2/hDTtG/cRzSalJeVrz8hFlUjYguvh9qH9jyah9j/0fy68d8ryteurNIf8Alp5cf/PTdVUpdDehWUoyZj/EzwvdaDqEMmqWccXmV4v8QvhzNF4bj1h7G5+z/wDLOX/erupz5TlxahWpRija+D/wgh8u11i8/wCPr7V+7jkhr6U0XS44vM3wx+dHXPjJ3OXCUvYU7M7SxiklmjkrQ1SVv3f/ADz3V4typayK/wBla6q1fS+VD9nqSzj9Z/5aV534ov1tbGT/AFnl0Adh8JfDn2XR4dUePyrq4bzJK67XpZPssn7xKzkaRl71zw/4hXTfavnjTy5P3kn7z/WV5zJdf6dDH53+sk8v/V1cV7p4+LlzSN7TP+QfXM69L5V1JHWkUcNSoYckv76SppP3VjNJ5fmw12ROE5nR7Ca6uof3P+smjjr9ItFijtbGzj8nyvLhjpnlYk2auwy1seeFPrUB/mtWha3/AJX36sDUtbqtiG6/c1RBm6fL5s15WpHQBZp9BIUVYEtFABWR4ol/4lf/AE08xazkBTjiWpqzAsU+gBY6mjqwJqKAMnXv+PWsmOgod5VFUB6fU1WZDqmrUB1PoAKKACigCOSvOfj9+9+F+rVkBD8K5fN8B6T/ANca7WgCeOrEdAC0UATUkdAD6KACitQCvmjS4vK+PGpR/vPvSR1lIs9ujq5QBLRQAVUmloAh83935jyV5f8AED43aH4N86N7yP7Vbx+Z+6oA+SfiN+0tN4j1Dy7O+/0H/WebXk+qeMtU17yY7eOTT4fMby/9K86gdiGHVNDisY47y8nkmjj/AOWklY998ULWwtZPs/8Ax9R/9M6JGhy+seKJNUmk2SSRRySf8taxZtZ1KL7k1LlAh/4SjVvtUe+4/wBXWLN4jupf3lxN5s22StqaJk7GX/anm3Un/TSrGl37RXX+srrjER1F14j1SLy/KvPN+WpLHxb9qkjj/wCPOaOipSsZHXWuvfb9P8uWPzf+ektYPiTzPsvmf88/9ZXPLQDi5r+bS7qSNKd/b11/rE/dSRx1UdR8pJ/wkbXX+kPNH/q/L82KPy69u+FP7UvjzwHqnmW+pR6rY7fL+xXNbcnOTc+3Phf+194P8b/ZbO436Vqn/PO5r3aPXrWX94klcnszQuWuqLdfu0rQjrIC5To6AJqlrUBfNqHVP+Qfcf7rVkB5r8M5Y5dFk/3pK7pKIgWo6q6pYQ6zpeoaXcf6u8hkjkq6nwjhLllc+EfEmjTWt9qXh+7j8q4s5mj/AOBLXP6DdfZf3dzJ/wAtP9XXg1F7x+kUJc0T1TwvLHdRzb4/9Xtj/wC+qsahpcdhD9n/AHflyVx3OkrybYpq53VLWOW6kj/5aUfaLps8p8SWElhfRxv/AKuRZK8V+Jlh5t1DG8MfmXH+r/4DX0mEneJeY0lPC8x5X/Y0cuqRx/62OSvvj9mP4QX0Xh28+0x+VJ9lhkt5f+WclbYqPPE+Wy2XsalztNL8G6tfzXkj2f8Aq91dx8H/AARJr2qTR3f7qxs//IleRY+urYxxo3PWrr4aabpcP2jS7fy7iOvJfC/hz/hI/F11H5f7nd+8j/550pQsebh8wVWjf+vyPef+Fa6f/wAI9ar9l/dx/wDLSvKNa8ELF4iht7eP9zI3+srqqRsedgsY5SPWIfBGn2scdu9v5nlx/u5K8lPwhkk8fwm3/wCPHd5n7ys5w5i6GOakexa9o1rFYyR/u/J218/fA74PqfivrOsagI7mGzmk+zx/89GaqpR/eWMKOLcaMmP+N3wvj+IOveGdPeaOzjt7795L/s1wn7QUXhzUvEt74b0qytrnSrPyY/8AtpHXdUhym2BqTrVowexymg6MvkyfaIY/MrutLtfNmj/3a8bEzufTV/d0RuQxUSfvfv1xXOSOsh1rFTr7y/svz1Nyzg/EmqQxaf5nmRy+XJJXmOi2E3ijxJDH5cn2f/WUXA+irHRvsFrHH/zzX/VVx/jbVI7W18vzvKmjWiRlF+7c+afEniP7fqkcnmP+7/d1l6DazX+oR3Hmfu/OrrivdPDnLmkdJrV/9l/dpJXnetXUkskf/PGPzKIo5qiGx/8APSodUlkita6ImJ1nwrtZL/XtJs02ReZcR/8Ajtfc1rL5sPmUzysSXoZf3dXkrY88lpfNrUB1O82rA0LW6krShuqogNLl/fTVtQy+bQBaSpaCR9PqwHUUALHWP4i/49Y4/wDppWcgM+OrSVmBbooAWOrNWAUUAZWvfvdPj/66Vj0FFiiqA9NqzHVmRLRWoBTqAEkpaAH0VkWRyVwPxu/e/DPVo6CDJ+EO3/hX+m13kdEQLUdTR0ALRUFhU1WQOpPLoDkForUsTivm2PzLX4/X0aeZWUgPaI6tR0ATebS0AVLq/wDKrl/EXjLTfC9j9o1S6js/L/56046gfLPxa/agk+3Xmj6dJJFD5kflyxV8161dNr2sfaLyTzPveZ5s1TzWLiYt1f6bo0Pzyf6yP93HFXM694om/efvEi8z935f/LSumECDi9Q1SGXy5Euk/eVRmlj/ANZczf8ALOq5R3I/t8nnR3Fv5n7v/V+ZVX/hI7iLy43jj/6aVsI0rXWbW/8AL/ef6z/pnTbqwhuo7jZQQczdWt1YR/6vzf8AprVP7VJ/z0pSRZ1Wg6yt1H5b/wDPOjXv3Xl3CSeVdVXP7oBY+I7j93H5f/bWus0XXrf/AI97j/UyLWYGbr2l+ba/P/10jrmfKuLr7kf7ygC9Ho32X78da0N19l/6ZVtEg1IdevrCOT7PN5U0iyR+bXq3w/8A2kdY8Jfu/wC1p5fLWifwiifWHwb/AGqtL1m+ht3vo/J/1cn2n/WRtX01Y+I1l8uS58uWGT/lrHXJUjc0Ny1v1v4/kk/d1N5lZSAs0+oAlqpqkv8AoM3/AFzkoA83+F/7rQfL+T/XNXfJRECaOpa1A+aP2pPBraNr1r4st/8Ajx1DbZ3n/TOZa+d9asJIpo7y3jklh/5aeVXiYuPvH3WW1OfD8p3Hg3Xmljj/AOnhfMr1DS/+Jpp/mSR+bXBHSR6xzPlfuZI/L/5aVm6h+9qCoHG+KNL82xm2R+bJXhvjLw5Ndffjfya9XCytI9Xl9rR5TyPULWaw16T9z5VxH+8jr9MP2d9ehv8AwjZxx/vbr7DDJXtV9aZ+eTg8PWuekWthDazSSJH+8k3VteA9LXS4/wDR4/K+0SV5EY+8VVre6eieV+8j31yPhfwvDo3jLxBIkP8Ao9w0fl1Uo+8ctKryRPU7Kwhv9MeOuE1qwj/tT/V/8tK6JfCcVGq+Y1JpfNh/651h3V/Do2qWcj/8tKy5TrhFMNe1n9zJXzHH+0F/whHizUrN9JeW18z/AI+YqqMuSR7GBwrrxON8SfFC68b30myz8q18zzKo6XYR3998/wC6/wC2dc9Wrc+zo0vYU7HYWtrWxDFHa/8APOuA45sb9v8AKm+SrUMqy1zmZetbXyo6zdeuo7W1/wBW8tZ7AeI+LNZ+1XUlvb/89P3leifCHwl5ViuoXkdt50law1lciqz0rUJVtbWTZH59fPfxW8W2vnTR+Z/rF/efu6mSvUMJe7TPnmbztU1qORI/tnmSfu7au88pbC1j/eR/d/7Z13Hg09DkfEmsx2scn/TT/VxVzcd1NfzfPsrYmWsjWhi8qHzKz4bX+1NQhs0j/ip8tgjK5658L/CVrpfxA0WSTzP3fmSR19XWsv7vy/8AUUue5w434jQjrRroieOWKiStQJaSGXyqyAmhlrQhuv3dakDdLlk/eSV0FrLWkWBpRy1bpgPp9WSOooAKxPEn3Lf/AHqzkBXjqbzaRQ+rFOxJKlS0wH0PUgYeveZ+7rLoKJaKoD1Cpv8AltVmQ6pq1AKdQAU+gAorIsjkrh/jJ5kvw11qNP8Ani1BBzvwb8z/AIQPTa9Gh8yiIFin0AOoqCwqarIFjpaC+YbRWoCf6qvm++/dftEXX+6tZSA9oh/dVMlAD6l82OLzKAPMfiZ8S9L8EaX5lxMnmSf89K+J/jV8brzx5qnl28kktjGv/bOOnS1A8hkv4bW6j1S8k824uP8AnpJWHqnjf9zcXD2qf884/KqqkLFxPLda8UX2qX0lxLdfvpKq/vrr78nlf+RPMrppyILFrYWv+seSi60uHzv3W+t+UzuUfsEkUnyXkkU3l077LdfvP3fm/vKg0Kf2WSKT/WSS/vPLrS0+W4/1b0EEnlNLayb/ADPLk/1lc7daXJF/1x8z93VyRZraXatF5e+OrF9L5s0cjyVPJ7oFPyriK6j/AOeMlXJLqaK1k2f6yswN7T9U+32Mcbx+V8vlyVRsbqOKaSOgC59vji/66VVmurX/AFj1tEgqzazH/wA86P8Ann+7k/56UT+EUS1Dr01r5eySSLy/3n7uvqD9n39rTVPCU1npdxN/aGk/6v7NVctzQ++Phz480vxva/aNOmT7R5fmSW1dta3/AO++evNkBsebVqoAKTUP+Qfef7tAHmHwp/5AMn/Xau6joiBcjqWtQMjxd4XtfG/hfUtDvP8AU3kPl+Z/zzr4b1TS9Q8L69feH9U/dalZyeXJ/wBNF/vR15mLXvH0GVVOX3TFtbpvDl9HJ/rbf/V17N4N16G/tY40/wCedeRLSR9gQ69/ot18kfm+ZWDdXUfnfuqgqBj6h+9hkrh9Y0ZovMt/L/1kf+srooStI9bCT97lPOde8Lwy3XmRQxy+Zu8uvdP2afHkegwzaXqMkcVv+7+x17U6t6Z5OZYJSlf+vzPbP+E8kl8ySzj/ALQ8vzJI/Kk/1m2tb4L/ABkj8R+HfM1yxk8NX3nSR/ZtQrljL3j4+rT909SuviNoNrHH9o1K087/AK6Vj+G/iroviO+vvs8nmw28nl1Upe8csad4nSTfFLTYIfMt9SjirjdU+Jdjfzf6PfP/AM9PMrol8J0UsL7xwutftGTWvmR3EdrFJHt/2q4HVPjn9vupNkb6j81cvOfSUMqb/r/gnN618afE2vRzWfmfY7WT93XF2th5v7y4keWSsZS5pH1WFwqw8Te8N6DN5kkjxx+X5n+rrsNP0uOL/lnWEtTmq1efQ0I5fss1aUn+p/1lQefUZV8pfMjkrYsbVf3klc4FyaXyoa8l8ZeI5LWGTfJWdTQDl/hz4cm8Ua9DI8Mk9vu8ySSvoS1tY7D7kda0NY3MKrOb8baz9lhmk8z9zGtfHfxQ8eSX832Oz/1PmSVUVeoefiavLTIfCOg+VDHcP5daGvXVrFN9n87/AEr/AFnlV1HnbHnusX811N+8/wC/VTaDFHLN5b1sTHWRtXX+r8tP9THXWfCnwl9qupNQuKzqTsaUoXO+8Dyrf/Eyx8r/AJZ7vMr6Cj/1lFONzzcb8RsWstXo67Injk1FagMorICXzfKqbzfNhrUgNPuvKrctbqiLA2LW6rQjrUC4lPqyQp1ABWFr/wDrLOs5ARVKlIofVitrEktS1mAUVIGRrXWOs6goKKoD0/mpKsyH1YrUAooAKdQA+isgI5K5H4of8k91r93/AKu3koA4r4F/8iFa16XHTh8IFiOnR1oKJPRWRoFTUAFFA7hRWoiP/lrXzV4k/dftDSf7sdZSA9oj/wBWKb9vji/1klQBN9vh/wCWkleZ/GD456D8PvDt1I95H51K5e58F/Fb4v6x8RtUkuH/AHVj/wAs7avL/EniiaWaSNJP3NXSkTY5PVL/APtTUIbdJPNrF8eX6xXUNnbyR+XbxtHJFXTEZytrFNLN5aR1tR2F1F5e/wDdTVpcxsH7z+Or32DyoY9kj1tFqRUbovR6DNdQ/wCrf93/AKyr3/CON5f2h/8Aj38z/np+8pSaDVlqHwRNLH9ot4avf8K5uvsvlvs+0SfvP9ZXNKaN6VJyMnUPBF9Yf8fEnlTfNVWTwv5tr8kj/wDbSnzisy5pfhKb/pn/AKusvVNBuLWb/R6vmUx8z5i1pfg2bVP+Wfm+XJ5dO1DwbJF+7p86HyMr6X4cm+wyVDJoOpRSf6mT95RCCZEoszb6wksIZN8lZ8kXlfvPMra3Kc8m3IvWv+p8zy461of3skMdPmHYh1rS5PJrm/NuLD94nmeZWUjY9++D/wAff+ES16x1B7q5+1W/+skj+WSSv0o+D/xas/iXoMN4kif88/8ApnJJWEtalyT1C1uv33l1qWstQBNVXVP+Qdef9cWrIDzv4Xyr/YMn/XaSu4joiBehl82pa1AK8a/aM+EsnjLQZNc0iP8A4qDS1/8AAiH+7XNVV6djpwlX2Va58ow/Zb+1+f8Aew0aDr1x4cvobe4k/wBW3/jrV8/OPNofdw7nq11fyap5cnmfu5P+Wlc7dfupPL+espL3jugQ2v76SOOo9a0Zb+1kk8nzZK2O6m/eOFurCS1/dvH++/8ARdZMdh9gkmkt/Mr1aMj2o++b2j6zrWgzRyWckkXmfu66qTxbqksPl3kccsdZyZ5tTL1P+v8AgjfNkl8m4eGP93Wx/wAJHeXWj/2elrB+8/eSSx1Bl9RX9f8ADh4dtdSuofLs460NQ8L3Xl/6RNQVGFjm7rQbWL955n76i10v+5DWPMdMpk3/AAji+dDJ5cdaFr4c/wBXJ+8/d1kVz+6alrYfZbWP93U3y+1QeZJ3IZpf3clNhupv3dBBNa3832ry38uWuwh/dQ0ROWRg61rMMVr5nmf8tPLkrwHxZrLazrH2ez8ye1+0fvKx+0Tc92+Gvhf+wdLjkeP99JW9fX/2X955nlR1vH3I2OOUrngPxe+ILaNoN1GlxH5ki+XJ/wA9Pmr5z8L2E2s699o1SF/s8kdb0I3iedXfNI9Ejv7Wwuo98f8Aosf+s8uvP9Y1mS/kjk/1U3zfvKvkMJGLY6W1/qEcaR16VY6MthaybI/NrOTHSic75Tapqken237qa4/dx+VX0VNpdr4D8Lw/Z/3sdvD/AK2WP/lptrkqa6HoUVfU8l+FOstF8VLG8fzP9Mum8zypP3dfWkcvlTeZcf8ALSu/4T5zFu8jetf9T5nyVpQy10HCS09K6DIKioAlo82gCGGX99W1ay1kBtWMtbUMtbxILCVbrYAooJCsTxJ/y51nICrHVqiJRNHUtaEiwy1JWcgHQ/uqfSAxtf8A+WMdUKC4hRVCPUKfVmRLRWoE1FADqKACisgEkrm/iB+98E61/wBerUAec/Af/kQ4f+e0cknmV6lHTh8IFiOnR1oKJLT46yNBKKACpqDO4VDWpoNr5w8WS/Zf2grP/WfvI6ykB6t5tU9Q1nS7D95czR+XHUAeC/GD9qDT9G0vUrfw/JJqNxHXxXr3iPWvih4kuJLj979nh8z/AIE1Y3Lp6mT4u1mHw5HHbpIktxt/eeVXnt1qjX80kn7vy5K7KUCibwPo11r2qSXHl+VDG37yX/drh/El1HdaxeSf9NpK1iQWtB8uWPy7eOumh0u6l8vZ5f8Azzp3FY6qx8B3kVr5lxa/6z/WW3/LSu20H4NtdQ/P+68yuOVbkPWw2GVQ77w78KpNLms/KtY5fs//AD1/1ldddfDS186SRLHzbeTzP+ufzferili2elTwCf8AX/BIdL+GkNhHHGkfm+XJ/wAtZN0fl1qXXw0tYvLuEt9Pi/5af6vdWUq7No4VQPO77wH5uqX37v8A1c1aGl/DS1urWT7Z5kV1T9uzm+qIz774VX0s1vH88U1Z8Pw0vota/wBZXL9ccB/Ulzf1/mdhoPw0mtfM+2f88/L8qjXvhpY3X7t7eTyf+uf+rko+us7fqS/r/hzm7r4cw3VrJb/Z47P/AJ6fvKxbrwHDL5kenR/w/wDPT+Ja9KhjGzCWDRw/iTwHJazSSPDHLXN6h4XtbD95cSSWf7uvXp1Oc8LE4dU5HPyaNp8v3Jn87/npVgWDWH7xLrzY66eU4LFfVJWlj8t5K5uTzLWspDC2lhim8x/7te4fA34+6l8L9Uh2X08uhySfvI65466kn3B8H/2ufDN/dQ6fqN9HF5n+rr6e0vXrHVLWO4s5o5fMXzP3VSBpebTdU/e6Xef9cWrIDzX4S7pdBk/67SV6BHREC1HU9agOp9Eo30I+1c+Rf2lvhLJ4I16TxhpFr/xI9Qb/AEyOP/lzmrxnUIv7UsfMi/e/9NY68OvHkqWPtcDV9rTub3w916Ty7izvJP8ArnXQa1dfapvMT/lnXLJe8fQQKdrKsUn/AE2rS/1sclSawl7xi3WjTXUn+rrLk0H95H9sj/1cldFKR61KpylqO1k8mtKPS5JY60ky/aOJehtfKtY4/MqxDFHFVBeRuaXr0lrHJGkdTQy+bQYylYIdGtZf+WP7mtT+y1i/5ZpBU8hwymUf7Lt4o5PN2f6yq/2Xyv8AnnXMTz+6Nk/1fmfJ5NU/t6+d5dQZRdyG6/5Z/N/F+8psf72g1NGxq7JrP+st/wDnotETlkeS/EbXo7C1/wBd/wAtvLjjqj8K9G+1X0eqP/qZPMrH7Rhc92+3/u4/s+yuL8Zaz9g0/wAzzPKj3eXW0velYwjG58c/EzxbN4o16SRJHirY0WwmsLX5/L87bH+6jr0OX2cTy780iPWrr93/ANM65Xypr+aTZ5ktTzGcj1Twn4S+y6X9ouI087/lnUPiyX+xtF/0eTyv+edckmd1KJ0XwB8BrLa3Hii8jk8yRpI7etD43a95Wlx6XbyJ5kn+srDepY6Irkp3Pn3UNek8OXVncJI/2qzZbiP/AKZyLW1dfF/xV48sY5NR1J4o5P8AVxV9B7LnPjq7vI+iv2c/ireXV1J4b1yTzfM/4976vobzZIq5jIuf6qn/ALuugyCm0AJ5tElAEP8Aqa0rWWsgNyxlrajreJBoW3arlbAPooJHVz2vf8fVv/u1nIBsdTURKJo6lrQkdT6zkAVYpAc74l/1sdU46C4jvLoqhHplTR1ZkS0UAOqatQCnUAFFAD65nxxF5vg3Vv3n/Lq1ZSA81+AMvm+DZP8Ar6avVI6cPhAsR1PWgBRQA6igAooAKKCxPN8qvmv4mSx2vx4tY/M/1kMf72sqr90n7R0mqeKJLC1muP8AlnHXzr8ZPiq32Xy3kT/SP3ccdc32jc+WfF1/Jf6hJpdnHbSw/ao5PNirS1Ty/Ael+ZZzW326SHzJPNrQ1ieO3100tr/pP72bzPMpv2BvsM1x8/8Aq/3daxA7LQbWTRvCfmf89Lf93+8/vV4fdfurqSNJP4q6Dn5T1T4c+F7i6mjt7ez835fMkr6E8I/CWGKGOS40uTzNv7z95XNXqqEbHqYPDurqemeHfCUOl+Z+5/s+uyh0uHyfLeG28mRa+b5j6+hS5ImhiP8A551DHYQ+T5aR+b5m7/W1yXOnlCPS4/46mm0v9z/q6Lh7Mr/2Nay/8sf31Efhyx/66zR1kR7MryaND9q+eOo7Xw5axSSbNkEklVJXNOUJrDyqdNaw+XJVlmb/AGDDLHWXqnhyPzP9X++p8xxVInK694D/ANFjk8mP923meVXB+KPAccUcl5b/AOu8vzJLavVoVkjz6+Hc4nmeseErf959ot3s/wDr2ri9a0ZrCP7Qn+rr6KlWR81XpOErmDN5n8cnm1J+5uv3byeVJJW0VeJwSdpFG60aaLy9knm/9Mqhjiktf+W1ckhnceB/G/2DVIbh4/8ATreT/R5ZK+8P2LfirdeI4ZNP+2f6u4b93RzDlA+yLW/j8zy3kqxqksf9l3H/AFxaoCR538KYli0H/tpJJXeR0RILSVYroIJaKgdyK+sLXVLGazvIY7y3uI/Lkjkr4J+Mnwvuvgj4u8tN8vhnUJP9Fl/9lkrkxMeaJ7OW11GocfdbYrqG88zypo/+eddla3/2+1j8z/lpHXi/FGx9pDuSVesbqSp5TqJvN/5aVvaffwyxxxv5ctUdcR0MVrLVW6sFimrpixxRctdLhlh+ern9jQ/6xKOUOYda2EMXlyVuebD/AKxKLnLNB9vhourrzY/LrMkx9UupooY46o+a1ccjUddfvYZKyfsv1pASf62P5/8AtnVq1tfNk8t/9X/zyroOeRaupY7WGsPVNU/dzXH+q8uOgwqM8N16/k8W+KLWz/eTx+Z+8iir3bwbo39l6fHb+X5UlYRMJM3L6/hsPMkuJvK8uvnX43fEua1tfLt5PNrWkr1LmVWXJE8V8G6XJf3U15cf89P3dddql0sscm+T/tpXpHk0laJx80sl15Nuk3+s/d16Z8OfAcPmfaH/ANM8usK8jqpR96523iSX+y9LkvPL/wBXXmvhfQZPi144+eP/AEG3/wBZL5dcPN71zaMbyPpj7LHoOg/Z7OOOOO3j8uOvmfx5rP8Ab3ij/nra26/6ypwyvWudWJ92jY8X17/iaapN9n/dR7mrqrWwkl/ef89I/Mjr6CUWfCy1Nbw3r11o2oRyP/y7zeZX298L/HkPxB8L2d4kn+neX/pkf/PNqz+IzO65qaOpAfTPl96AG03zaAGx1cte9AGxa962tLlji/d10EGxa1erUB9FBI6ue17/AJCFv/u0ALRUFFun0EhUtSAUPQBg6x/rY6rx0FxHSUVpcR6dHTvMpmQ6OrEdACUvlVqBLRQA6k8ygBaxvFH7rw3qX/XFqykB5H8B93/CL3H/ADx+1NXrVrTh8IFqOpK0AfRQA6igApZKAG+ZRJQWZsl/5XmV8w/GSWaX4tWciTJLJJHHXNVfuk/aMv4heI7Hw5oMn2iTzZJFr4j8cfEubxRdeXbxv5kn7z91WX2jck8N6DdaDNJqFx+68tf+unmVzfi7VJtZ1D/Wf6utDWJy+oWEl1NHGn+pkrY1qLyrW1jSPy/MhrWIG1deXa+F7iO0/wBT5K+ZL/tV5LpdhHdapJXQFj7M+EPw+j0bR49UuI/9O8vy/M/5aSV7Bp8S/wCs8v8AeV8xi6rlKx9bg4KlTuan2WSX95To64OY9uHvRJPKk8yrVrax1ycxnzF7yqPK82OjmOi4R2EdO+yxxVoTcjmtapVvFXK5Sp+8lNU7rd/HHUmZD80sdRzS0+UJxM+SWPzqy7rRo7+b5/3v+r/dUQdjCb5Ynl/iLwHJa3V5bpH/AKDI37uvM5PBskV1NHL/AKmOvVpVmeFXpKUbnG694XmsPtkf2OOWGP8A1dcv/Zdvf+XG8f2OavoKVS8T5qrTtItahoN1pc0caeX5dYM1/DL+7uYfK/55yeXUSMB1rYL5nmJNHXsnwD+Jd18PvHlvef6238tfMi/1cfl0co5TP1Y8O39nLotrqml3XmWt5Gskf7z+Fq3r66+1WMmyT/VxyVASOD+D8v8AxTf/AAJq9IjoiQXI5afXQQTx0+oIuFYnjbwbpfxB8L3Wh6vD5tjef+Q/+mi1Uo80S6EuWofBfxM+GmofCrXpNH1GTzbXy2ks7n/npHWf4bv5P3lu/mS/886+Yqe5Kx+g4Gr7Wnc6z5f3lPrDnPXLcPmVNHF/y0StzriHmtFD8n+upvmzVrFmsUWrHWfKj8uSPyoa1pL+aWH5JKOcz5SjHdNFN5n7yWugtbVrr95RcxqIuQ2vlf8AXarHlNQYmTdRSS1Xhi/fVxyNR3lUSWvmw0gKclTQ/wDPR66DnkQ+b5ted/ELVLq1tZJPMoOSozP+FOl/apI7y4h8qvZvtPvWETCTOJ8ea8thpd9I8n/LNfLi/wCWm6vjnxl4obxl4kkt03/ZY2/dxV24ZX1OLEy5onbaXYf2Npfl3En77/WVg6pqkl/5caf89K6jGKtE7T4e+A47+OO8uI/NuJP9X+7r2qxsFsLX7Okf+rry68j0qUfdueW/EbWZL+6h0fTv3V1cf6P5kn+1Xrnw/wDBFr4N8Nw2aRpXDze7c3pRvIyfjJ4o/wCEc8L3kif67/ln/wBdK+afFGvSaX4dkuPM/eXi/wDPSvUwcbyueXmFXljY8N/4SO6ik8u3uP3PmV2Hhv4l+VN9n1T/AFMkkf8ApMX/ACzr7CVBHxUatzvpvLl+/s86vUPgP4tbwR4kjuPM/wBBvP3dxFXhT9w6D7IhlW6hjkt/9TJVupAKKACq9ADEq1HLQBqWsv8Aq63rWWugg2I6uQy1qBYooJH1z2tf8f0f+7QAtLHUFFiOpKCR0dPqQCn0AYOtf6yOOoqC4hRU3EelpUtbxMhY6nrUAqagApv/ACyoAdTqACs7W/8AkGXn+61AHiP7Pssn/CN30b/8/DV7BHQBcjqagAooAfRWQBRQBB5lQ311HFa/vKCzlfEmsw6Xp/2jzI/Mkby446+XfjB4jjsPGX2ySZ7OOPb+9rGqaxPlH4yePNS1m+vI7y8/0XzP9HtK5XQfLiuo5Lf7N5nmeXUxA3PFF/8AYLWOOP8AdeYrV5/JLJLqE2+TzZv9Z5lVSNS9p9qv2r5/+Wa/u6zfF2vR6pqlnb+Z+5j/ANXWwFzWrr/ijZJP+W1xNHJHLTfg/wCHP7e8UWf2iTyo5JPLj/66LVz93U6sNDmqH29oth9gtYY/L/c+X5kflVvafa/vPMr5KpL3j7OCL3lSS0Q2sn+seOuC513NSGLzfv75at/2fJUcoXLX2Vaf5VdUUFw+wLFTprCojEkozWFQ/Zf+elb2NLlWbS/K/wCuNUZrWixJkx+ZFS0wMy6iWWSSqc0VBMindRR3UPzx+b5lcL4y8Gw39rJcW8flTeZ+78qtTzakTzPWtLm+y+W8PkeZJ+7/AHleX31hdWHlyPG9fR4SolGx8xi6fKEOs2vlxx3kfmf9c6x9Qihuv3aSebHXoydzx+XmMn7A1rN5lnJ+5j/1nm1atb+SKTzP9RNJWcjY+lv2c/2oNQ8JfY9D8QTefo+793c/886/QjR/G9n4j0f7ZZ3Uc8MkPmRyxVhuZGb8Jf3vh3/pn5zV6Nay1pEmRdqarKHx1PQc4+igDj/it8NNP+Kvg2bR7z91df6y1uf+ec1fAuoWt94N8WTaXdr9j1Szm+z3EfmV5WMjeVz6rKKq2OutZf30clWJv3U1eLUPsqUrxLlr3rQtYqqJ0lryqhmsPKtZK6DWLMuS1/vx1raLYTXXlx+Z+58ug1lI6LT9B/5af6qt77B5Wn/6uug8yTC1sF/j/wBdUl1FJFD5dc8ibmb9l96h/svzZKykje5Vuoo7Wb5KyZNUm/ebP3UlYkyKsMtHm+bNJXQc9RmbfXX2WOvI/EUsfijVI7NPMl+0TeXJUxRxSdz1Twbo0OjQ+XWpfap+5kkT/V1lYw5j5/8AjR4383zLe3mj86Nv3cVeU+F5fsGn3GqXEf8Ay0/1tehSVonnSnctTa9dapa/PJJXVeCfBtxql1a3nl/6yT93Wk5ezjY6KS5pXPo7QfDn2C1j/efuY/8AV1j/ABA1n+wbGaRJP3n7uvCqnq0zm/hD4Nk1T/ioLya5lmvI/Lt4/L/eR161qEv2C1k83/nn/qqwlLljY3pe7E+Z/jB4o/4TLxl/Z9vJ/otn/wChV87/ABU8RyaprH9l6d+6tbOPy5P96vq8si56nx2a1VKRwfmyf89I5Zqkhl/vyV9OfKHs3w1v9Nl8N+XealH9ujm/1cv+sjj2122i+I7O1vpLP/Wwx/6yXyd0ce6vDrwvI7qcrRPoj4B/FD/SpPC95ceb/wAtLeT/AKZ179+7i/d1zRp8pcXclorUoKqPUANhlqxD/wAs6CDQhl/fVsWMtVEDcta0rbtWwFyigkfXPap+91iP/rnQA7y6WgonjqSoJH06pAfRQBg61/yEI/8ArnUMdBQSfuo6KoD0rzamjq4mRJT61AdRQBL5tLQAU6gBnm1V1SX/AEG8/wCuNAHg/wAA/wDkF61/1+NXs1rQBaqWgCaigAorIBlRzf6ugCj5tZOsS/ZY/tFxJQWeT/ELxlpfg3T49U1SSSWaT/V20dfH/wAfvEepappcesapHHZ2Mn+rto6xqmsT5r1TVIb+6+0f8tJK6bwbdRy/cj/fR1MQKfjLxH9vuvs/kpFD/wA9fLqjoNhJdWs0if3vLjiqqRqY/jLVJrC6js0jfT5o/wDWf9NN1cfa381/qklbAdVdS/avsNmkn/LP/Vf7VfTHwB+GnlRw6g/73zPLkrlxdXlp3Pby+HNUPoqOwaKGrVjYSXUnlpXy837x9VTR0Vro03l/8s6tf2X/AH6fsxXLkNqvl0SWH7yq5QuTfYF8mofsEnmVrFBcmh0tf9Z5lR/ZfNqoxKCOKOKGofKj8v8A1dKwXMuS1/ffJHUf2CixRn3Wlx+dJH+7rLurD995flyVmBm3VhHa1k3VrQTIzbr91DTfKhlj/wBY9anLNHnfiLQVlupNkcf+srz/AMReCLqKGSR5vK/5Z100KjUrHk4unzHleoWE2g3UkdxG/k+Z5cnm/vKo3Wl/u5LjTo/Njr6eLufNVI8hl+bJFWfJLa3Uf/LTzKJGJa0WVovuSJXvXwf/AGkfFHhL/Q/OSXTfL/1csfmVtTpXMj7k/Zl+Jek+MtBm+zyeVdeZ5kkVe5f885K5okyNCOrNWUS0+g5x1PoAK8B/aq+Ev/CR6XH4w0uH/iZafD5d5HH/AMtIa58TG8bnbg6rpVLHzPoN/wDaoY9kldNYy+bDJHXzFQ/R8M7xLVrF++rYtbVqqJ6Ja8ryqm8pZYfnroHFlj7LHdf8s6sWNr9l/d0GcpG5a1sWMUPl+Y9dByyYlNrnkTcqXUSxR1nzS0pI6LmPqF/HL/y0rnZPL/grlHIrzbYqo6hdebXQefNnJ+MtU8qH7Olx5X/PSWuP8J2s39tQyPv8n/np5lVFHDF3PUJJZIrWSSuV8ZeMrXRtPkke6ks4f+evl+Z5lZGHMfMPiLWf+Ey1rzLePyv3ldtNoMP9jx2byRxWsa16MVaJxxjcr+E/CV1rOqRxpH+5j/eSV9MeA/CUNha/Jvi/eVxV5c0rHqUlyxudldeXFH/rJPLrx2bRm+KHiiTf+90e3b/ln+78zbXnVTtpnuWi2C6Xp/8AH+7WvM/jV43j0bRbz959jk/8iVEYc8rG8vdifEfiT4l/YLqSOzt0864h/wBIl8z/AFe6vO9QuvNupJPkr9AwdD2FO5+Y46q5SKfzeZ8kdWrXy7q6jt3jruOE9E1j4Qa5awx3FnNJLbyf9NNsn+6y102n6NNdRw/aLX/ln/6DXJOF5D5rRDw74o+y+JLe4t7p5Y4/+XmKSv0U8B+LbPxl4X0vVLORJfMVfM8r+9XDW903pO503ze9LWB1jKrvUARVbjoIL0dbVrVRA2rGWthK2Alp9BIVzuqf8hiP/doAm8upKCixT6gkdRUgFFAGNqkq/bvLT+7UFBQvy+1FUB6LVmOriSSU+tSB1FABUsdAC06gBtVL6L/RZo/+ekdAHgvwH/5mD/pnfSV7RHWUQJo6krUCxRQAUVkBH5lE3l+TJQBzP2pYv3lcDrWvf2zdTXF3+6sbes7m0T5z8Rapb/EbVLjWNXtZLOxs7ry7OLzP3clfNP7QWszfapI3uoLya3m/d1nEo8bkiki8vf8A8tP3ldZosXlaDHeeZ/00rpjA1MHWL+OWb/Vv+7j/AHldBa38elww/aP9TIv7yKP/AGqmmrAeZ6xdSS+deeX++kby46q+G4llm8zzKrktqTGN9D1b4X+Em8W+Lo43t/NtY6+9PBug/wBg2scfl/6uHy5PMkrycdPmPpsvhyneafardR+ZWtDYRxfcjSvJPXL1jF/cjqSS1jl8yOqsBD/ZflR0/wDs+SqsO4+G1o8qtAuHlVV8qrNrjfK82aj7N7UEmXdReVRDLUGxDNayfvKy76L995nl0FXM+6ijlhrBurD/AKafu6xsTIyb61821rFmi/c+XWUTnCS1jurWSOudjsJLX78db/aOepqea+NvDkM1rqX2i4kij8n935X+rrw3ULCTRrqSS3vP9ZJ+7kr6DByPmMZEydQ/dTeX/wBtKw77b/rPLrvkjyZGbHf/AGWSSuq0PxGtx5myaOWOtKZNz2T4F/Ea88JeMrO406T/AJaRx3Ffpx8P/EcPjLS4bzzvN8z95HUyj7xEkdon+urQqSixTo6CCaigyJaTyv8AtrHQB8G/GTwbffDT4matZ29r9j0O4k+0WMv/ACz2tVG1upP3cn/fyvnMTG0j9Ey+alRN6O6j/d7461oZfssPyeZWR7sSS11RZfM3x+VRqF/5VrHsoNzUtf3scdXPK/5aVqYSFqeG/agYSX/2WbzKhj8RzeZHsrnkRYvSap5sf+rqjqF1/oslWScjNLVX7esVYQRlVZXvpfNh8uuX1rVFtY45PO82t4RPJqSPOfEms3Gs699jiukijrc0uWO1sfLk/wC/tdPKYRLV14taKT/pj/z1rxH4oePIdUupI0/e/L+7pxiZ15csbGX8P/C82vTSSJJXfaxazWscdnFslkkb/VRVtUkKhH3T174e+CJrC1jt7eGSLzF/eS+XG1ewWthHpdrHG9eNP4rnocp5v8RtZmlm/s+33+X/ANMq6b4a+CIdB0eONNn/AD0k/wCBVx2vUudu1Ox1mvX8dha18H/tVfEtr/XptP06Su/L4c+K5jizGSp4blPne10G8ltZLhLV5bWP93JLVH7V/wA8q+9uj80lqXLXwveS2sdx9huZbHzP9ZVeG6uLC6jkT91JHJU81iY+6dVr3xB1zXvscb3j/wCjt5n7uT/lp/z0oj+JesRaXNp/nSfvI/LklqZO0bBJXMvwvf8A2DWLGR438nzP3nlV9tfBv4g/8Ib4us5LeaOXw/qH+jyfvP3dv/00rz66OmkvePrqOKlrnOsKqPQAWv8Ay0qaOoAtJW1a1USDY0//AFtbEdbATVLQSPrmb/8A5CElAE0MtWKgB9S0AFS0AFFSBgap+9vv+ua0lBQ+iqA9EjqbzauJJNT61ICnx0AS1DQBNSx0AJSSRebayUAfPvwR/da94wj/AOn6vZo6yiBLUtagS0UAFFZAVJv3VVZrr7V+78ugDBuov+PqNP8AlnXz78VvGUMtrH4bs5vKvtQm8uua5tE8T+KnjK18G6Da2fmJ9qkXy47b/wBmr5b8SSzazr1vcXEj3n2df3nmf8tJKcSjH17/AEqaP/v3J/0zqb7f5Wl/Z/M/0Xy66YzNTJ0WX7fdSSPs8mnapqjXUkcfl/6tfLjqrWA5PWJWuvMjruvhf8KtU8W+TH9j/wBFqakrU7m1JXqWPtr4U/CqHw5DH5ln/pVe2aXar53yR18xXnzH19KHIdJHt8mrkMUlZGxcji8qrVrF5tbWAWp5rXyof3lUTcrzRVD5VAXEqpdRVZdyG1i/1nmR0SeXQaFXyo5fMjqv9l/fVBsH7y1qjdRR3XmUE3MeSw82Osu6tfKjqbFSOZ1C1/dySVR+y+VNXNE5x3+qrL1Swhlk/wBXW/2jn3OZ8SaNHLpclukf77d5nm+X5leJ/ELwb5sMeoJIkU0f+si/56V6eDkeLjInm+qRfatP8v7L++t5PMrgb7y4rqvoJI+ckU7qJf8AWVDo/wDosnmUUzC56t4NiWXVLf7RN+5kkWP/AEb/AJZ197fsq+PI7/VL7w+8n763mqZS943kj6wh8ytCOpIJEq1HQQPp9BkSR0tAHkn7TXg3/hKPhzJqFvH5upaHJ9oj/wCuP8S18h6Lf+bXk4yNpH2mUT5qJ1mn3X7yORKvSS15p9bEIZf7lXv+WP8Aq/8AyDQbm9p8qy2sdaFt2rUwkNm8uX7n+pqnJ5kVAyrdS+bayVmwyyfu655FWNbzfNj8usu6v5PL+SrMDHk8z/V1j3115VRTRw1WUdav47qGPZJ+52xxyR15H4k8R3Usk1nb+fFHHJXoU4njTkYun/uq3JvFEdra/Ps8v/lpJLJXVymEapxPiTx5N50kaTeRDtrjdB0ubxl4ihs4vPojEynLnlY9+sdGtfDmn28f7v8A1f8A495daXw98JNr19JcPH5sP+sjl/56V5dSR7FCPun0JothHFax/u6q+Lr+OwsZP+mn7uuOfw3OzlON8J+HJNZvpLj95L5f/LSvYLWwjih8vzKinG+prPTQ8Z+N3xBtfDmg3VxcW/7n95XwXrGjTeMr6bWNRvPsf2hvMj8z/lnur18shyy5j5nOa7cuU7LS7C1sNLs9Pt4/3ca+X5v/AD0qnrHw+0nXpo5HtZNPuP8AnpbV6/tj5+NK5oa5df8ACPeDWt7O1e5/c+Xbx14H+8irehL2hhVp8p2nhvwbpfiPR4/L1Lyr7955kVN1Twa3hfVPMeP+1dN/1cn/ACzraq7SsZRVzc8Jy+G9ZsbrS/L8rzP3kMslerfDXw5Jo2g/Y0m82GT955sdZ14mtJe8fTngP9pHQ4v7N0PxBceVff6v7b5f7uvdI9ssPmRf6uvPNw8qqs0VAENTR1AFpK1NP/11VEg2o62I62AuR1NQSMrnrr97qk1AE9S+bUAFTR0AS0sdAC0+pA5u6lb7dJvjpaCgoqgPRfNp0dWZFyn1qAU6gAqWOgB9NoAKim/e2slAHz38G/3XjbxhH/0+V7VHWQFyigCWmSUAEP72n0AZWqS/8s6zZLpYofMqAOf8XapHpfhfUrjzvKk8lq+Ifit4tksPiFpNw8yS+XpslxJH/wBNGqJDpnzn4k8W3XjLWpNQvJJJay4/3v7yrp0zsM3UIrfzpI/+Wkf/ADyqjfRSRaf8knlQ+XWkdAMHS7+b7LJ/z2/1dEX+trQDtvhr8Km+I2tSR+T/AKLHJH5klfdnw/8Ahza+F9L8u3hSK6/d/aJf+Wkka/drycXV5Y2PfwNLlpno2l6XDa+X/wBM63rWKOKH5K8U9w0If+edbCVpEVyWmfN71oSR/avKqGaWT/npQbxJIbpqb9voHyEP2qTzPnjqPzaskKhkqwIf9yjyo6g1Kcksfl1DJQBRmi/5aVg6puqbe6ZyMG+ib/nnVO6tZP8AtpXIZkf+q8zzKx76qAzb6L+55led+KNG821jjSSu3DaHlYlHgetWF1aw6lv3+Z51eZ3372PzP+W0clfVRd4nyVdWkc39v8q6k2Ve/wCmn7zzqRhE7b4f+I7qwvo9kiS+ZHJH5Xl19jfBHXrWK+8L+JE2RXX/AB531tFJ5fzLJt8xqxnK0jpj8J+gWly+bYwyf89Fq55tBkWkq3VkEtFBkFS0ARXVrDfwyW9zH5sNwskcn+61fnr4k8LzeA/iFrmh/wCqh0+6aOOT/npD/rFrhxKvE+iyqXLKxraXqkMtjH5U0cv/AD0rSh3S15U0fewdya1lklmjrYjijqTe5saT/wAesdF1dfZaDMPt6/x1paf5N/ayVpFmRyf2qSWrH2Vv9ZWNjeTKskvlSVR1q/aw8zf/AK7y6UUcdVmDDr39/wD7Z1x+vapa2GoeX5yReZXRTieTXmeb614yupZJJP8Aln/q4/8ApnHXN/b/ADfM3/va9CmrHk8xRvvEcdrN5dZOoeLWtf3fmRy1qc9zBtYptevo47ffeTSSRx/89JK+mvhn4DXwRYw3Fx5n26T95J/0zrkxM+WNjpwlNzlcLW1k8Za19jt9n+sr3rwv4Xh0axWOvFPfp6G5fSrYR1weqbte1SOOT/WSSVnU1N4aano2g6NHpdr/ANNJKo+LtZbS7GTZs86SFv3tOMeXQN5cx8J/tJfEb/hLfEUel28nm29vtkuJf+mleL6p4omiuo7O4/eeXX0uFpWo2PgMdW9riuY6TwvrMf2qO8e4kit/L/1VegaXdQ3+nx3FvJ5sfmfvK0qw905aBa1DzJbGST7P5vy14P8AEqwm/wCEkkk8nyrHavlyVphKqiaYmnzRNT4S6M1/rX2x5PKjt1/dxf8APSvZJNLW6tfLuIY5YfM/eR1NaqnUuRSp2Ob/AOFQaff6pefZ5Lm0huP9X/0zauPtfFGqaNffY9O1KS8+zzf6RH/q/MatqVT2xNWnySPRPC+vTXX7tLGOfzJPMktpJK+vv2b/ABlDdeG77T9R1L95p/7z/SZP3lurVzV48uor3PTLrx54btfv61p//fyj/hPPDt/+7t9atP8Av5WcqtjXc0LXy7r7kkctSR1HNcJFqOtC27VRkbljWtHXQBaSpaACucuv3uoSVMgLEdTJSAKkjoAkqSOgCSmUAc9qH/IQalrI1CirA9Fjp9anOWKmrUAp1ABU1AENTUAFQTf6mSgD5/8AhX/yUzxhH5flfvq9kSsgLdSpQBLRQAVFNLQBh3X72as3XvJsI5JPMqAPm/4yfFCx0a1uo7z97b2/+ritv+Xj/pnXwn488W3l14surzzJIvMh/wCen+rX+7USHTMHRf8ASoZv3f8Aq61PsvlQ/PH+82+Z5UVdcGdhxvzeZ/q/3lan2XzbWSN4/wDWR1nLQDn/ALKtr5n/AD0rNsf3t1JGn/LStAPuD9mX4fSaDo8dw+z7VcR+ZJFX0dpdr/ov+rr5mv78rH2FD3aZsRxf8s0jrStbWuU6y9Da1pWsVaRMrjvsv1pK0KILqL9zVWOg3iH+pqtQa8xL5VE0XlQ1ZiCU6aKrAr+V5VV5pZPJqDUoyWrS03yvKoAq1m31qtVb3TORk3Vr5tZt1atF5lcBmZ8lUbr/AFNUBz91L+5/g/eVwOqXX+ukeT/lov8Ara7aWhxYlHhPjyL7LfXklx5n7z/nnJ/rNteP6pF5V1J/yy8yTzK+hpO8T47Fq0jFupV/tCSRK1I5V8mORJPNroOSJueHbrytQt5P9qOSvq7S9ug+LtF+z/6yS1hvJP8Ann5i1wV3aR0x+E/SLQbr7Voun/vP9ZDHJWnXSZFirMdWQT0UGQ+paACvjL9qTw5N/wAJJfeJLf8A497eSO3vK5aqvE9XAy5a1jznRdsX7v8Ad/6utq1lk86OvKqI/QaErnQWvlxRx1ehl8qsTruOtdZ/dyfvKp6hr3mzRx0DJNPl+1f8tK0rW6aL/vr/AFVEWZEd1YWssf8Azy+arU11DYWsf76OqsVJnJyXUkX7usPVNZk1TUI43kSlFHn1WcrrXiOOw8yT5PLryXxl4thluvM8nzYa9CETwq8zjYb+S6k/1n+saqOvazJaw/Z7eSuy1jy+YwZtUmuv3jyVXhia6uvs6fvZKgq59NfBH4VWvhzR49UvI0ivq77Womltby3t4/Nk2/u4q8OrPnlY+mwtNQjc674X+A4dGsbON9nkx16VJF5Vcxtsc34ilk8n/VyVc8J6N/y+XH+s/wCWdZ7m+1O50l1L5X3K8F/aM+KsPgjw7JH9s8rWLyOSOztq6aUeepY4q9X2dHmPjGx1nS5fMjSF4rqSP/WyVzt14c+33XmXkNfVUNI2PzufxcxpXWl3VhNNG9rJF/zzrrtBl/suxkt3h/5Z+Z5lZ1Ze6dFAmkv/ADf+uf8Azzq1a2q3VrJb3Hl/ZfL/ANXL/q6827idkneJc0XRrXS4W+zx+VD/AMs/3da3/LHzH/1cdTH3tSo6HB+JPiXa2sN9HZzTyX0f7v8Au143a3U3nfaPMeKT/V/6yvbw1H2Z5eJrc0ia186Wb/WfvK9y+HsuqWs2pf2jN5t1H5cd1+8/1itSrx5qdwg7neRy2f2qONPI+0eX/qq6L7fJLa/wWdeFV0OqGo7wT8adU8Ea1HHZ3jy6bJJ+8j8vdHX094D+Kuh+N4/km8qb/V+VJHt/eVNOVxSO+hiq9a967jI2rWtSOugCaOrNABXPfu/7QkqZAT06kBPHSUAS1LQAUUAc9df8f0n+9UiVkahRVgd9HU9axOcnjqetQGU+gAp1ABRQAUslAHgfgOWT/hbXjCP/AKaV7FbdqyAnqWtQCpayAKpSS/8ALOtSLGHql1Ha3Ucf/LSuB8Za9JLHcW/mfvpI28uX/nnJXNJlWPz7+K3jyPxbdRx2f/HrZyN/pMv+skm8z/WR14zqFh5V1/y08v8A56UuVmhoaPEtr5n/AE0qa+l/1kfl/vP+Wf8AyzrqOow5rWjzY5Y5Nkn+rrCQGfqlrJa+Xvj8r7Qtanwb8Lya942tY/8ASfL86PzPKqZP3TfDK9SKP0U8J6N9l+zxpH5UMdd5pcX7uvAPsTWji/c/JRa+ZWQGta+ZVqtQCaKprXb/AKyrAq6hL/yzqr9lX/WVMEaRdguovN/eVH9l+tb2NOZElrFRNa/uaqxkOtYqJKLAQyRfuazqzkaRIvK8qaSqv+tqDQzZKh+WX79K5jJmPdfurqSoZov3NYGRlzWv7ys26i8qGnIDkdYiaK1k2bPOjrgfFH72H7Q8n+rh8z/rp/s100/hMKp4z8UIv7U8v7P/AKy3/wBX+8/d+TXiOqfvf/adexQPksWYN9a1paL/AKmOOvX+yeXE3tF/4/o5H/5ZtX1VHft4j8ZeBbjy/NuvJkkk8qvMqnTH4T9GPA8skvh3TY/+ecKx11EdbkE9Tx1ZBPTqDIfUtABXkmqeHLPxRr3izS9Rj82xvFjjqDrpux8b61FqXgPXr7R9Ujk+3WbfvP8Apotbkd03kx14k42PucHNSNSx1T+/NH5P/POrE2qQy/vPOqz2qa90b5sf96o45Y4rr565y7mxa3/lWv8ArP31V7rVPsHlyeXHLQHKF94jkitfM/d+d/zyrm9U8USaz/yz8qP/AJZ1ra5hUKc2qeVa+Wkn/XSWuTutUWL7kfm1vTgeTXkjz/4jeMoYvLt0keL/AJ5/vN3mba8h1TWbi/kkrujTPmak7jZNUjtYY47eT95/z1rL82TzP9ZJLWkjDlLljpdxfzfZ7eN6+iPhL8JYdLuobjUYX8zb+8i8uvNxlTljY9bA03KVz2q68n/V07QfDk2s6p9of/j1rwpayPpI6RPWtP0uOwjjjqjqF15VbyEU7W1+1SeZ/wAs66SHy4qmOkRy1OR+IHjK18JeF9W1S48yKOzhaSvhfxFr0nxL16bXNU/ex3H7u1/6Zx124NOep4OZ1lGPKcf4u+y6XNHHb/6zbU3hO/bVJpI3j82OOvbsfInTaxfw+TJsk/eeZ/qqw/tUf7v955slZnRTY61sJrqT5P8AVx/vK6SOLyof+udcR3w1LUMv9yquvWH9s6XNGl15UlHL7xUtInzfJayf2pJby+Z5kc37z/gNO/5beWlfQx+E+elpI3PC8XlapHePH+5j/wBX/wBNGr0rS/Eclrpc2yb95+88ySqqr3QhO8jtPDus+H9B0uPUNU1KCK+uF/eSSf6ytCbVLHxHax3lndRyw+ZJHXz1Si5S5js57HL6prP9jX3/AD1tY66ix1maLS/Lt4/3P+s83zP3lVGHuj5ke5fDn9pG+0ub7HeSR6hb+X+88yTy6+kvCPjLR/GUPmadeR+ZH/yy8yr5jGWp2mn/AOprQjrWMLmxZp9aAD1zf/L1N+8/5aVBJejp9AD0qxUgFTR0AJRQBzx/4+rj/eqSoKCirA76Op61iZD0qxWoD6KACnUAFFABTaAPAvCMS2vxo8SR/u/Mkr2KOWsgLdLHWoElS1kBWupfKhrF1S/+wVqOxwcmvRy3V55v7qSvlP8Aaa+JcP8AZc2h2d5dRXUn+j/uq4pMux8x2tr/AH9nnR10l9qlv4ch/sf93/pFv5ld/KI8ztb+T93J5lOurr7LHHH/AM9PMk/1lSdRn3V/9lj+SOpvBv8ApUM2/wAzzvMrCQEniS1/dx/89Leu+/Zfihi8UeY/73/lpWMn7p14NXxEUfeWj2v+rk8ySWT/AJ6V2Vja14h9aTf6qj7V5tZAOhlrUhuq1Atfao/apofLqwJPssd19+po7BYv9XVQQSdgk0Zf+elVbqw8qt7GfMU/Lp3lfuauxuNtu1WpLVZaLAVbq1/c1mzRR1zSNIlP/VVn3X73/VVBoYt15kUkkdZskskVZXOSTMfymik8tKtR3X/LN6gCG6lWse6/5aU5Ac7qH/LT/npXnOvfuv3ibI/Lrpp/CYVTxH4oWs3l3En7vzpJP3deI6hLJ/rPL/49/wB3XsUD5LFmDNdeVD8kNXvC/wDrJP8A0VXr/ZPLidtpdr5s1n+8/wBY1fRHg2X7f8RvD9n5kf8AxL7NY68yqdMfhP0o8GxeVY+XXR1uQWqmqyCxSebQZE1S0AFeaWMskvjjXvN/vVBV7Hm/7S3wbm+I3hv+2NDjj/4SLT1/1f8Az+LXyjovijzZpLN/3tx/q/Ll/dyR7a4a8bH0mWV3I3rWWH/Wf6itL7VH/wA865T7CnU90dHF5UlNur+P95J9o/1dc50XHaf4jhupI40k/feXTdY1SGXzI5Lj99QLnOT1TxHdf6v93LDVH7e0Vr8kaRV0wVzz51TF17x55Vr5f7v943l1xt948hsLptkieZJ+7/dV6lOB87Xrs8r1TWZLq6k3ySedVGOtYs83luSfvK0LGwkl/wCuMlZyN7HuXwz+H3m+TeeS/nRyeZHXv0NrH9lhj8nyq+YxNRzlY+mwlNQjc1tL0b+1PL82P9zHXfeG7CO1h/5Z+TXPHWR1y0iXLq6qj9g+1TVvIRqQ2sdrD5aVT1SX+5J5UP8Az1qZaRHHU+Hf2kvirN48vrzR9LmSXw/pc3l/aYvm+2SV5vo/i2G1tY7N4f30f7uOvosHRUadz4DMKznW5TkfEV1J9ukkfzP+mddRpcUel2sezy/3ldVjiOT166urXVJLh/M/1ldRoMV9dWscn7yWTy65zSDO00vS5LC1j3x/6yPzKteXXEelQ1D7L/fp0cUPlyeZH/rP/Qlo5veLq6RPI/iFa6bF9suEjkiupK89sbWS61CO3ST+KvoY/CfPVdJHoWjxeVHJJ/rYbf8Ad29eieB/AcOvSfbNc8z7DHH+7sf+elYVanuhQheQ745eHLXVPDclxb+RFfaf/q4o64n4N380v27T0k/1cf2ioprmo8xvUjY6LVLCSWT/AFn76qtrf31rN/q/K8v95HUxh7pjzHfaf/p+lx3CRzxV0Xh3WdS0uSO4t5Psd1byeZHJF/y0rh5TaOp9OfCn9pbzfLs/FkccXmf6u+ir6KtbqG/tY7izk821k/1ckda0p3Ni1HU3m1oAPXNn/j6uP96oJL0dLQBKlEctSBbp1ABSyUAc7/y9yUtQUFFWB3+P+mlTR1qZE1WK1AKfQAUUAOooAKKAPn7w3/yXPxFHXsEdZAX6dQA+igCrJXN6xdeVdTSP/wAs46Czwv4reKLXwl4b1LXLyP8A0r/ln5dfBOseKL7xRql5eXnn+TJdNcR/9c2rGlT965RzOta99qupI7eGOKxj/wBXWL9qupfMuLiT7ZNt/dy/8866wHQyta2v2i4rL1i/82asizHm/dV2nhu1msNUm/54yQyVjJHRE1r61+36DNqFvD5sO3y5JfL/ANXJXTfs03X/ABVHl1z1PhOnDR/fRZ97eG7pZbH/AK511Frf15X2D6wbNdf6ySqcms2MX35q5zSw2T4g6DYff1SOsnVPjJ4d0uaPfN+5kreKuZjZvjn4dikkjluqJvj7o9rD9oSPzY41oi5IOc6zwn8X9H8Rw/6PMnnV3ml6pa3/APy0rti7EyV4mv8Au6zrqLzf3laGEUVZIqPK82g3M2aLyquR0FEd9KtcvrWvQ2H36zrFxPMde+L9ro334/8ApnHXA+Iv2m7XQf3f2OSWT/npHWG5EpnEzftXw+dHHcWsnl/89avf8NN6HrMPmfbP7Km3f8tI6cqBh7YLX9ofR5ZJI3vI7SPzP9ZL/q5K1NL+L+g38PlvN+8kk/dy+ZWHKbRqnbfallh8z/lnJVWa683/AJaVPsibmDfSxxeZvrz/AFj7V/rEr0TkqnnvxGi8rQZI3k/c3C+Z/rNv7yvmnWJfst9NH5n/AE0rvwnw2PnMYc3rHned5jyVqeDd3mfJXsy1PGPRrGLytah317p8B7X7f8RpLh5P3fy29eRXXvHXH4T9FPBMs0sMP2j/AJ6NHJXeR10mUien+bViJo6loMh1PoAlrzCx8z/hONakoA6KvC/jp+zTY/EGT+3PD8keleIv+Wn/ADzvKzqq510qlj4x1jxRqXgPxJqWh6pZ/Y76zm8uSKWrlj48sZfL/eTxf89K8yovePqaGItTN6H4gx2v/LGSf/prLJRrXi2P7L8kPm+ZU+yO/wCsI5u11lvO8x5JKbfeKFv/ADJPtkn7uTy5P3nmVp7IPrSiZsfjKxtZPLuJP+/Vc/qnjzyvMj8yTy61pU7Hl1cSmcDqni2aXzNlYP7yXzI0r0Dyghij/wCmfnVNDFUAXrGwkupo469S8B+F21S6js3j/hrixNSx6GDpvmufTmi6NDpcPl+X5tdZY2vm+X+7/c189LU+nidBpdhHF+8rWhuvKh8uthDfK8379Wv9ZVkDpJfKh8yvm/8Aag+Ml1oOl/8ACH+H/wDkMah/x+SR/wDLvC1TTj7Spc4sXUUKNj471Ty7Cx/svy/9XR4XsJLq++0P5nkx19dL3Ynwd+aR0WqeTfwxx3Efm+W1Q+V5v7tKwijS/umfrGltLa/6utD4f+d++t7y4T93/q4qykZwmd55v2ry5P8AW+ZH5lHlf6v/AJZV58tD3IK8SOb/AFcn36z9Q+0eXJGkcn/TT/lpV4aPPqZV/hscbr2jeFde8yS48TfvreFvs9tF+88xq43w74Supf3dvZyT/N/pUkde9E8GR6tqFhofhyxs9QvI00/y/L8uKjQfjxod/wD6PcWc+n3H+rjrGtQ9obRlyEmqWHjC6/0fUb61vNNuJP3kX7v/AFdca2l6D4S1q4ksLyOKaNfs8llLJRSpWJqvmial1r1xf+XJF+6h/wCmcdVfNml8vfJ/q60sc2x0nhvxRqGjeTG8nm2tepaXdafdWsdxb/8ALx+8ki/5aeYtebjI8krm9B+8TQ6p5Ukcbx/uf9Z/rP3dejfC/wCN2peA/Lt/MgvLH/lpFXl06lj1j6o+HPxV0H4jWMf2O8j+1f8ALS2/5aV21elS94yqIK5+1/ezTSeX/wAtqo5y3SyUASUVIEkdT0AOpZKAOb/5aSVNQUFFAHdQxVYjrUyJkqxWoBT6ACigAp1ABRQB4FpcXlfH7xFs/wCWkMdeuR1kBejlpaAJahkl8qgCrN5kv7yuP8SSxxXU2/8A1Pl0Fnxj+1p4382xj0f57Py/3n+rr5N1DxHNLp8lvZx+V5n+sk/5aVvS+G5R1Xwl+Glj4tvrOTUb7yrWST/SIpaq+JItLsPtlnZw/uftEnlyx/8APNakDhdU/e2v+r/1f7yuXmlklmrIsm83+/8Ava6jw3dNLHDJ/qpv3kdTJHRE9C+GvheTXvDuoaP+7/13mebWP8DftWl/FCO3T91dRySR/va46nwnrYaPvRZ9/eG7+T7D5n/PSOpv+Ejt7WvK+we+Z+qeN28uTZH/AKv95XlviTVPE3iOaP8As61/0f8A6ZfvJK5zqsc/N8PvGV/N/wAgmf8AeR/62uR8SfC/xFpcNxJcabd+XbyV30o3OU4+H/ln+58ry/8AWS10Xhu/urDy4/8AWRySV3ScUHId5oP/ABPvJkt5Hs/Lk/dyRfu69u8E+I9Q+1RyRTfvv9XJ/wA85I64pOxUVeJ79a6p5sNSfavN/wBbXQYRQJQf+WlBZm30v76jzfKh8ygoo3103lzf7teA/ErVJrrVLWRJJIo41kkrOsXE+f8Axlf6lf3Xyf6uOPzJP96uN17zJfLkeP8Ai8v/AKaVhDUiUAtfhfq2vTf6Pa/uY5PL82trRf2ZPEWs/wDLTyvMb93HXdKZx+zNT/hkvUov3kc0/wD1zljo1T9m7xFa2s0jzR/9M6w5RRMvQde8YfCX93cRvqujxyeX5XzSeXXo2i/FCz8W2MMaSfY5pJP9VLUG1ybVL9pf3dYd1df8s3jrUwqnA+PJZPJk3/6uTy/Lr5n8ZfutQkj8z95u/wBZXfhfisfOYw52S6WWOug8B2qy3X2fzH+9Xsx1PGPTvsq/2pJJ5n7u3r3D9mOwjlurq48z99JIv/jsleZXXvHXH4T7s8B3/m2vmf8APSTy69Ejl8qatTKRejlq0lWImjqWgyHUUAFedaX/AMjlr3+9QBuTS1WrSUblRVj4S/bM8G/YPiheah5Mnk6hDHcV84yRN/rEk/1leZOPvH0MI2pmDdapeWv7vzPK/d0f8JRdeZVC52V9Q8W3115cfz1lyazqEt15jyVqc3tXMLq/uL+Hy3qrHRF2IkmyaGKOpv8AVQ10GgQxVctbCS6kj2R1AHceB9Ba6vvL8v8AeSf8e9fSHw58JW+l2PmeX9suriOPzJJP+WcdfO4yo0fTYOmuW56Zp+l+bdeY8by/8866SxsJIvLrjjqejE16l8qP/npWwg/5bVD9vh+1fY/M/wBK/wCeVWQcL8YPira/DnR/M/1uqSfu7e2r49k+1azfXGoapeebfXG6SST/AKaV10I8up85jqjlGx5brFhdWs0lxcR/uZP9XJW1pfmWug/aPL/dxr+8lr6GXvRPkL8sjNk8R2t1D8kjxTVpaPqlrdQ/6zyv+mctTFGt/dM21urq/wDEUcdvI8UP+r/4DVrXvC82lxyXiSeV+8/eSxf6yuWRpCBseF/Fum2tr/pEn7z/AFcldl+7lh8yL/UyNHXn1dD06FS8Tk/iZ4tk8JWv2ezm/s+4vP3n/Aa4/wAE/wBrfEuG+jfUni+VY69DDR5Kdzmr1fescvdeF5tB8SSW6eXeXVvJ5cflf8tJGr0rS/DmveCPBt5cRyJdalcSeZJF/wA869GJ50jx/WPEesa9deZql55s1O0HQZvFGqQ6faRp50kn/LWtozsYylzHaap8JfFmjaPeao8iSw2//PK6rz3zZPM8x/3tEdDaL5ondWPi3TYtPj3xyf8ATPyvmre0HxbpeqSf8e9Z2M6mhrTeI9BtZI/9MtpZPL/1X+s8uuy8N+KPDt1N9ot7GSKb/nr/ALLVy4yPNG5VB+8dRHdWuqR/aIpPKh/6a02Sw8qSvl7WPaL2l69qGjXXmWdxJFJH+88yP/WV714D/a0urX93rli8trGscfmRf6yumlV5BTR9IeEfiDofje1juNL1COWb/lpHRY/uvM/3q9M4y7RQAU+pAkjqegB1FAHP0UFD6KAO7qeOWtYmch9T+ZWohamoAKKAHUUAFFAHz5JLJa/tEX0f/LOSzjr2KOgC5UtZAL5tU/K82gDPmv1i8yOvPde1mTzJLi5/496Cz83/ANqTxR9v8cX3+s/dzRxxyRyfu41rgYb/AEO68Ix272tz/bEc3+s/56R1MPhKPaPhTr2i6NoNnJeeZLDZwt5n2aP+L/ppurwnUNZjv9em2R/uZLpvLrUcdBuvWsfkyf8AkSuTmi8qaoKiFrF5tbE11a6XND9n/wCelBqe/fBWWH/V+X/oMjeZJXF+EYmi/aMj2b/L+1SSVxVex7WG+yz7K1S/ksNHjt0/10lO8L+A9U8RzeZqMckVvXlSheR9BF2iepWvw00mWOON45K3tF8G6XoPl/Z7OOKt40rGUq1ze8mD/nnXJ69pcN1DJG/l1pynKeX6x8JdBv5pJLjT086uZ/4U3pdh9ySsztpyNjS/BscU0Mb/AOpj/wCecddZpejQ2v8Ax7/uqzsXE7jS7/yo/L8utq1lrciSNKOKi68utSTFvv8ARZvM/wCWdZv2/wA2by/MoNTP1i6/dyR15f4o8mW1uv8AppHXPVdyDy+Hwva/avn/AHv/ADzqG18B2cs0n2iH+LzI6kDstH0aT93b16l4b0uG1/eJH5tbXOaSua3+i+dJ/q6juorWWPy/LjrTmRMYWOP1rwHpeqQyfaI3/wBX5dfOvxK/Zz0+1hjuNLkfT/L8z95XOaVNTm/Dd1qVrN9j1f8A0z/nnc1uR3UN1NHb1sefU0OX8ZRebqHl2/72b/WR/wDAa+X/AB5F/pXmW/mfvP8AnpXVhf4h5GI+E5HyvK+/XSfDXy/+Eys7fzJP3lfQHgHq00TWuoX1x5f7vy/93y67z4I+KG8JeJIby3/1n7yOSKvLr/EejTPvTwnfyRaXY7I0im/d3Enl16Zpesx3UMmyStIP3TM3LW/WtCOWrMi1U0dAEtOoMgrzbS5fN8ZeIv8ArtQaROgkqtQM+aP20vDkl1D4b1hI/wB9Gs1vXxfrEXlSSRv+6rzp6SPosJrRMW6tfNj/AOesclYeoWDS+ZHFVU37pNSJRmtf3clQ+V+7ra5w7DZoqPssnrTDlDyvK/5ZyVYrW5rylq1sJLqaGNK7bRfCUks0dYV/hOrCUnOVz3L4e+CPNvrOTy/3kf8A20r3TRdBjsPv18xLWR9TTNqGLypI5E/5Z1qRxebWwy55SxQ/6uqv7uKgB1cD4u8b6L8L/DeqeJNXkSOH/nl/y0uG/hjqIrmkZSmqVPU+D/EXjzXviX4ym1y4m/0i4m/dxf8ALO3j/hjrrI4lih+z170o8uh8LKr7SVzy3x5r3mzR2cUnnyR7vMrl/wC1JvLkt/M/c17dJnj1fiLWi2C3V1H9sk8qH/nrFWtqmjSaNDHsm82OT/V1zVSIyvItaXf3VhN9sSH/ALa+X+7rS1rXrrWYY7PyY/s8beZ/z0kkrll8R3w+Eh8L6XDLr0cd5G8X/LSvQppYbWGs6i55aHbT92J4f4o1S68b+MvsaTJL9s8u3j83/lmq1654l+x/Bv4azXmlzW0mqXjfY7fy5P3kcf8Az0r0bchwwdqlzzP4c3WoX/iKHUHheW3t/M8yX73mSVofELxHefvLN4/7Pt7fzPL83/WXEjVoo3lc5pS5jyf95LJ/02re8G6DfeI9Y+z2f/PT/j58z93b/wDTRq0Ikd9qn9teI5ptH1fxJ9j0PS2WO4l+0bvMasvQdB0HxH4kmt7b7XFodv8A6y5/56R1n8BrE1Ne8b+DfsMOh6X4f82O3aP/AE6Sby5K9MsdG8G+HNL+0f6JBY3lr/rZf+edc0pcugRVj598Uf2L/bV5/wAI/JJLY7v3fmVHpevappf3LqTydv7yKvRsZHtnwR1TxZrMnl3ljJ/ZP+r+0yV6hNtih8zzEr5fFwvWPaoaRuUfK+1WvmW8jywyfvPN8zzKJIprWSSRJK8uonzHRGNza0vVJrCb7ZpepT2d1H/y1i8yOvoD4f8A7TcP2qTS9cvLXUI5G/4/o666UuXUirTue0aP8S/C+vR+ZZ65azzR/wCs/eV1HmrdQ+ZbyRyx/wDTKvS57nDKNh1FLmIiSR1PTiUFJ5tWBhU+pNQooA9AorWJhIkjqzWoh9FABT6ACigB1NoA8E1T/k4L+D/j3r1q1oAuR1LWQDKpyUAYPiKVYofk8uvP/iFdQ2HhOaTzJPOjWSSSgs/MX4lRSX/ii8/eSeZcM0kn+9WHr3gjUNG8Oyaxb3Ud5/yzuP8ApnUw+Eo5ex8R3X2W8t/3kv2j/ppWp4bi/eSSfu/3dO45aGxfRRyx1xN15kUkm+mVEuWPmRffqHWLqSWag1PdvhTL9l0uS88vyvtEdWvBsV1F+0Not5ceX50itJXFV/iWPaw38OLPsTwv4c/tTUI7i8/5Z+Z+7r1DT4obWPy/LSvOjK8j3JO0S99vW1h8ysfVPG9rYSSSPJ+5jreVSxzRhc4W++Miy3X2dI6NP8ZXWqSfPayVnznX7I0pr+SXzN8dVZv3tAU4lyxiWW1jq5JRYuIWt/5X7uug0u//AHNWVJHZWMq+TH+7pt1F+5kkStTA5XUJfN+/XI3WsrYXVBqcj4s8W/ZZv9dXnuqa99q/65+ZXFJ3IJobVvL+ePyqq/2p5s3l2cMmoTeZ+88qrA6a1sNe8uHZDbWfmf8APSsO68UeLrD78dpJ5cnl+VHVXCKuZcfx9vtLkkj1fSZ67Lw78VdL8UXX+jzf6v8A5Z1nzG0oWO8/tSP/AK61j6pKt/5cfl/ua0OLc8X8eeElimkkTy4vL/eebHXA2N1JYff8zy62PPr6HP6pdX0uoX1vLJ5t15nlxy/881r55+JUTRX3mfu/Lkrqwv8AEPIxHwnB+bHLW98Pf+Rys6+gPAPZI7+G6m1CP95FN+8jj8yP/lm1Q6X/AKLYzfu/KuI5PL/d15df4j0aZ9qfBXXmuvCdrb/ap5LiNfMj83/lpC1e4eF7+P7LHH/yzjrKnL3TM7Cxv/N/1tblrf8AlV2GRqRy+bVygCxDLUtBkFeZaL/yO3iL/eoNInRSVVoGeT/tQWH2r4XyXH7v/R7yOSvhvx5arLY/aPL/AHPy151fSR9FgdaJyNrF+88ui60aOW1kkqab9066kTDvrDyvL/dyVl3Vh5X7ytLnDUpWG/YJP9XRHFJF5kdbmdi1Y2HmxyfvKmsdGkurry6jmNbHceF/CSxfvLy1k8yvUNB8EQy3UMdn5nk159er7p7+EpKEbn0F4X0FdLtfL8lIq3PKklryY6yOuma0dgv8clWpIvK/d1sMrzS1SoAqa9r1r4c0G+1TUZPKsbePzJJZK/PH40fFq8+LWveYknleH7P93a23/s0ld2Gpc0j5zN67pU9DH8E2sdrdfaE/1Nv+8kra1DXo7qbzPMk/eV6slzVLHy9LSNzjdeisb+H/AEj915dc3axV30mcdX4iaHzPOjrstB8JTa9/pD/8evmf8spKyqkUo3kejf2XD9hjt/L/AHcdOtbBbX93FH+5ryJVfePoKdL3Q+wWtrNJcPDHXgvxA8UTeI/EUknmeVa26+XH/wABruwi55anNXfLEwdH8RyaXrUesR+X5kf/AD1/eV0V94j1b4l3UNumm/adSkj8v/V/u44/71ehNcx5t7aneTXWsfDnwnHH9ntZfs+37PLLH+7ry/xZFr2veZrGqeZ9q8z/AJafLWdKd43NJQ5TBsYlv7qzj8yOLzJl8yWvVPFHxBtfC+n/APCP+FJP9ZH5dxqVdBgzznRfsd1qljb6pNPFYyTf6RJXrnjjx54f8JeF5PD/AIfs45Zrj/j4kik3Rx1n8ZrEwfh/8ILrxRNHeajG+n2P7v8A66SUfGSXwvazafpekSXPnWe6OTzZP3cdc0Y89SxpJWPOZttRw+Z/q90derY5j6M+C/xBh1TQY9DvJLn7dp8fl2/7zzPMhrF/aB1TWP3NvFJ/xI5IfL8yKOvErw/fHbCrajcwfhL8UF8GzTafqkn/ABK5P3kcv/POT/7Kuq0H4l65438ZQ2ejWvlaH/y0i/6Z/wB6oqYRcxpSxDZc+I3/AAl2qX1rp/h+x+x6bJH81z5lbXhfw5pvw00G4t7jUkvPtCrJNLJ/yz21jLDqNO50yrXHaf4j0e/1qOzt9ktvt/4+Y/lrSk8R+KPBEP8AaHhrWruz/wCud15n/kOnCNzhqzsdh4N/bc8deHP3euSJrVrXvHhP9uHwrqk0Nvrlq+hySf8ALT/WR0uU5I1T3Dwb8RvDfjyOOTw/rVrqHy/8spq6mnE7wp1WBz0crS1JUmo+igDuKfHXUc5LUtAEtPoAKfQAUUAFFAHgHijzIvj9DJ/z0tVr16OsgLNFADPNqrNdVBZzN9KvneY//LOvNfjJ5P8AwiM0fmfvrz935f8AurSvaJR+bvizy4tYvPM/13/TSt6+l83wvZ7/APVyQyR+bFW9J+6OSPFZLCOK6k8r/npW5ov+sj3yVBRe1DVIYv3aSeb/AM9K5m6ikluo5Ej/ANZJQBY/5ZVXvovN+z/vKAPYPhf+90Gzjj/e29nDNXefBuwtdZ+LVjJeRxzzR2f7v93Xm1Xapc+mwnwxPtbRbDyqvXV19lhrzrnqmDqms+bXmPii/j86aS8uPK8v95Ttc6DlbX4l6PYf6Rbwvefu/wB3VyH4v6l5N5J5dtZw2/7zza64Um4mMmomxJ8UL6KPzLeaOXzI6hsfi1HdX11HeQxxQ2/l/vIpP71H1cmMk42O00XxRZyw+ZbyfbIZP+eVdN9qj/d1z8vJIqMLxI5P3tbmjy/6vfJTubHeaXL/AKurl1t8muy/unPb3jkb66WWSvKfFmsw6X9q/eR+dWFTU6Y6RPD4/Ed1r19efvI5YY/9XJFXbaXYL9lj/wCWv7v/AFvl1NjCTKOsbrq6jt0k/d1pWOs2PhzT/s9v5kUn/LT/AKaVlz+8Vye6YPij4q2ulyTWf+quvl/1n+1XnPjj4jaTdahJZ20knl6XDJ5kv3fMmrthhXOJySxShI4v/hN/K0f7Q99J5fl+Z9mlkqHwj43jtdajk+ez/wCekcX+r8uj6q1GwU8Uj6K8G+KI9Uh+Sb/Wf885P9ZXZQ3Tf6yueSsbWtqcb4sim/7Y+X5leP61FJFdSW/k+VHG3mf9dK0icFVHOyWEMVrN+7k/1cn/AC0rwf4mfur7/V/8s467sL/EPCxX8M87mlklhk310nw5t1/t6zvPMeLy5PLr3jxD0Sxv/wDj8k8uSui8N+XqkM0deXUVjtps9u+A+qSWFr9j/efavO8y3llr6U0fWYZYbPULPf8AZZGripytI1O8tb+aL/lpXQWN/wCb/wBc69GmznN6xv63rWXzaCS7U8ctWQPrzLRP+Ry8Rf71Aom9JUNBscv8VtLj174Z+JtPlj/5c5pI6+D9ai/4SPS/kmrzsT8R7uW/DY89jsJPtUkfkyedH/zyrQ1rRr6L/lnJXNF2PY9kYN1pd1FN5bxz1D/ZbeRJvjrf2hzewKd1o3leXIkP7uOm2tg119ytPaIx9kzc0XwRdX8ccieZ/wBdK77w34Dhi8v7R5nnR/6zzK4atXlOinRsenaD4DX95Gnl/u/+Wv8Ay0r1Dw34chsLWONNnnf89PLrz5zPSidJDFV6OLyqzpo2L1rFVW6lrYCnJR/qvv8A7qH/AJ6S1nGN5BO258T/ALTnxkvvHmsSeH9PkeLwrZ/6v/p8k/vV4HNF5UPlpX1eEg1E/Ncwq+1xFwutUmisY7f5/M8z/W1DY69J9qjjuJPNjrr5ThLWvX9rf2sMaRv5nmf62qccXlWsf7utiBs1r/zzr0r4XxeVDJced/rI/wB3FXNiVamdOGjetc9Ctdvl/wCrkqrdX+n6XqEceo3HleZXh8nPI+knLliUb6Wx1SPy7fUrb73l/wCsrwH4oRXUutX0aWf7m3k8v7T/AMs469bDU+U8WrU5jF8G+DbrxRqken2f/XS4l/55rXqHwh8Gw2vnapcSSSx/6uOOKT/WR10158sbmMI+8dJ8SYrrXtHh0uz2XNxcXC/vJP8AVxr/AHqy/FF/Ho3hfSdH8xNV8QSRrZwxf6z/AIFXlUtDepqeO2On32qavDpaWLy33/PKKOvTtB+DcNr9oj8Qf66SP93JF/yzr05YhR0OaNI8z17wvfaDrUmlv+9uP+Wflf8ALSvYPhr8G10u1j1TXIfNuJJF+z23/LOOsatblp2Kp0rnffECW8v/AAvdW+kXUcd9J+7h/wCmf/XOvk26ik86SO48z7RG0nmf9dKMuaqaF4mN9Q/3Kkkr3DzC9ouvX3hfULPUNOm8q4t5PM83/pnXrHjb4v6Tr3hP7G8cl5fXkMfmRf8ALOOuSrDnNInitr+9mhjSOSXzJK9+0fWdQ8B/DO1k/s2OS+k8uPy5P/Qm21w158sbHXBDvh3/AMJJ5Opapq83m2Nx/qbaX5fLkqnpfw+uvFt9JqniWSPyZI/9FjtpP3clcvLfYqUvdsWLrwbNoN9NH5flfZ/3cctOmv8Azf3bzebVxjaR5tWpeRXuvJ/ef6z95TY9UhtbWS38v/Vx+XHW8tTM6Twb4jj0u1uryzmk0/VLOOT97bSV9Xfss/tS3XjL7Lofii4jlk+W3t72vP8AZWO2hKx9b0yf/VVsd9znUq3WRoFFAHbwy1NXUc46OpqACpaAH0UAPooATzaWgDwDxxF5Xx80n/r3r161rIB9Pk/1VAFX/W/crH1C/wDK+437yoLOb+a/k+eT9z/rK8h+MnjKGwtfs6fvfm8vy/MrGo7RKPz98ZRR3XiTUN++WaOZv3v/ACzk21rePL/7Lpdjpdv/AKvyVrek/dNpI4Gby7WPzJN9Z8MqxVRBXji83y5K1PsEn2WPzaAMPUJfss1Em2X79AHsXwpia18GyeX/AMtJP9X5f8Ne1fA21jsNeh1D/pt5ckteJiZW1PpsJ8MT60juvKh/1f7ysXVL/wArzI68/mPVPP8AxJ4tk0uOb7ZJ+78z93HFXzr4i8eXWs6h5l5NJHpfmfu7au2mrnQcDqHxBk0ua6t9LkfULH/lnXI33xVvv3cb7/3n7uSL/npX0lCknE+YxOLcQ/4WXrUskP8Ay1+z7fLrpPDvxL1bWdYuLjzJ5ZJI/LktvL/1ka1ryI46WMblY9a8G+I7q18u4s5pLO4/1klt92vdPBvjyPXpvLij/fRt/wAtZK8HFx5ZH1tKd4nbR3UktXrW/krgubHoWj3/APosciSVck1St7+6Z2944HxlftawySJXzb8ZPFCxWPySVW5rLSJg/C+wmv4fMf8A5aR17ZdWsOjaLJG9VY5JM8r17xla+HIftF5G/wBl3f8ALKuN8Ua94uutB1DXHsf7P0P/AJd5bmtMJQ9rIwxdf2UTwe+17xRqkc2oXEcn2WPbb+ZL/q5K53+3tUitZvtEdtL5n7zzIq+ippQifJVazlItf8Ibrl1oseuadHc6hY/6uST/AJ51i2vje687y3kkrOpZSsaQqs9u+EvxB8q6h3wyeT/q7jyq+otH1mG6tY7hJJJY68GqrH1NCp7Sncq61Kst1N9nrh/FmgrdR/aHj/65+VWcSKqPL/Fn/LSN5P3Mf+rrwf4tRN5n+r/1f/Tau7C/xD57Ffwzy2P97J/0zrqvCf8Aot9H/wA89te8eIegWt//AMS+SR/+en+trc8Dyra+KLf95+5k/wBZXn11Y6YM9s0W1htfOuEvPK8z/V/9M2X/AJaV7d4X1SHzIdkn7m8XzPNik/d7q8LmtI6T1zT7rzYY/wB55tbFrdSV6lNnObVjqmf3b10mn3/lV0km5DdebVrzasgsV5joP/I5eIP+mclAonUSVVoNiG6tVv7Wa3f/AFMkLR18AyWC3Ufl2/8Ayz8z/wAdrzsT8R7uXfFY5HS9L+y69JcXEf8ArJK9m0vwvHf3Uf2i1j8mSvNk7H0uhqX3gi18mOufvvhpb6z+8SFP3f8Azy/5aVh7Q05UY8fwvhl/5Zxyx1Vj+EskU0kccf8Ay0/1VP2jI9kjrNL+GnlWse+P99/y0i8yu40XwRDFJDI/+urKXvhax0n2CGKH5I6vaf5f8dROJETQji82r9aQRsJNdVRk/e/cqgIZtsUNfOfxg+NP/CUedofhqbzbHd5dxexV00o3kefjqvsqdz5Z16X7frEnlf6u3j8uOuLurrM0clfZ0KaUT84q/wAS5DNLRHYebV8ojStbX/pp/q6m8pawILWl2E2qX0dvbx/vJK9m0GwXRtPsY0k/feT/AORPMrzcZUtTPVwcbyubn7yWvI/G1/Nda9JI8fkeXHXDhJc0jrxcrRPN7qKS/wBes/tEnkWNv5knmy/u63PFGg614ttftmnR/bNLs4ftEksUle8vdPKiuYp6xOvgPwjY2NvH5erat+8uP73k13Xg3XtLv7X7Ppc1tF5kf7y2k+WT5f8AnnWVeHPRuVCXvGxNK0WqTb/7skclVdL1nT5fiB9j+y/8TKS1/wCPv/nnXlx0N9zrrW1tdL1CS4s7W2s5JP8AlpFHUd9La2Gn3Gqaj/o1jH/rK4HNzqWOiNjzeP4oaPf+Lo5LPSX+y/L5f2mSvZrW/wD9Fjk+eKSSP/V/8891bYx8uhNDUbNLHL9/91a14z8YPhy0XmeJNLh/5Y+ZeR1rgavsaliqsb07njPy/wCrp037qvrTwA/6aUeb++8z/pnWMpcppE9Y+AP9n/ary48uOLUo/wDVyeX/AKuOu+1Dxbfap/o+h2LxQx/vLjUrv/V7f+mdeRXjzysXCoYPizS/GXjfy40sZNK0vy/3nm/u5LiuB8XWuueEprGzfUH8uP8AeRxRyVtCNyJS96x0mj+LW1mxjkuJJ59Sjb/SpZam83zZpKJK0jhkryJvN/5aJH/q46Lq1huofL+TzI6mOpqZutaXcaDN/q/3Mldl4HtbjS9BvNkn+lSSLJ5sX7uSOSonoFOVj9Av2af2go/irov9n6j+61y3jr2y6l8qGb/drA9e5gwf6uOrUdZHSL/y2ooA7VKt11HOOp9AAlS0AL5slOoAfRQAyisgPDfiN5kXxo0X/rjXqEdEQJahoArX1/8AYLX/AKbVxOoX80X7v/lpIv8AraVzUzZLqSKHy/Mr5r+N1/8Ab5oY08yLy7po/wDWf6yOuGvMukfNPjzRtNtdajjSPyobe3XzIvMrF166j1S6t98aV10vhNTj9UimtZJPtFYP2+PzK0kB0Gj2Hm/u/MSL/lpJTta1T/SpI0/1Pmf8tZK1A5u6i82SrX+qhk/541lewRVz3SxtWtbHRY3kT/UrX018C9G8rS4ftn+skmkuI7aWvEr++fUYX4T2i6sJIv8AlpXP6pYSeTXmbHdA+d/iNf6XFqHl3l5++r5n8XX+sapffY7OR7y1k/d/va9bDaEYuXNGx9PfA39m7R/+EHj8QapJJLfSWrV8n+JNG/0rULhP9ZH5n/bNq+pw01OnY+HxcXGpc1Pip8S9J+Jei6HqGneG9M8HatpdrDp99baX/q9U/wCnrbUnw/v/AOy/GXh28SP/AFcy/wCtp3M6bZ9ifGD4aQ3+j2esaX5dnqka+Z+6/wCWleW/DnWbrVLqOS8j/eR/8tK8KvK8j7jCK9Ox9UeE9LbVNBj/AOmcdWNL/dahJb/62vKqnZE6DR7ryvMrUhlojKw7Hnvjy6X+y5tkn+rr5F+KEt1L4k+z+ZJ9ljjj8u2k/wCelb0tS6h6t8DYpr+H/V/3ZJP+ulWvjx48bwlH+8h/cyfu7f8A6aNWtRXicMdJHnvwb8Jf8LL17+0PEF8ktjZ7ZPKr1L9tK6+wfCHSY9OjT7DHeQx3Fepg58p4+OpuZ8l2vxk17wR4N8SeD0jjl8H+LI4Y77/R/Mkj8v7rQ/3ZK8t8N/apbGT7Z+9hjk/d+bXocykfNSufQX7PsS/8I3q32iFPsv2j93XC/Fr4c6b9u1K4s4/Ihjkj+z+XWEmenSoOUTgfC+qXnhySTf5n7z93+8r6e+D+s6hdafNp9xH5f2f95Xn19T28J7kbM9w8J+HPNtZJHj/651a8XaD/AKDN+5j87b5leb9k7D5d+IGl/YNUk8uOTy/L8zza8F+Kn7qxaT/lt+78zzK9HBr3j5rG/CeW28Sv8qLXTWvmRWMNx/zzr2ah4tM6TzftUcf7zyvMWtyxlupZvtFvvikjX/0GuWep1R+I9k8G+I7W/j03zZvN/wCekVeseHb/AO1aXY7P3UlnN5cnm14VWNjtPdtBv/3Nv+882uisbqSXzP3ldtJnJI0Erasb+umJkdJY39blrf1qQXo5a850f/kbNc/67UXA3pJarzS0XNT59/bI+Pv/AApv4f8A2PS/3viLWP3dvXh/gmK61Tw3YyeZ+8kh8ySscWrU7nsZdrUsQ+KNLbS76ON/L/1ddZ8Ndeklvvs/lx+T/wAtK8WR9RFnqH2Xzf3nmU6O1WKsjquQzWCy/u6LWwWL7/72gwNryqmtfMoMi3SWu3zqwsUaNFbliyVVklWX/lpU2L8z49/aa/aWa/hvvDfhSaT7Db/u769/56V4D4Jtbq/tY5LeSSLzPMr1aS9lTsfFZhV9rWuWNa8EalYWM0lvJHeR+X5kksUn7yuH/wBb/wA9K+joVfaxPmpw94k8qOtS1tfKjj/8iV1GJpWNh9q1CG3/AOeknl16d/Y0P2GGzeFJY4/+mdcleXumlKPvHF2trZ+A/iBeXmr30Fpayf8AHnH/AL1ewaXLDdWMd5bSfubj95HXkYlXPawmgX0un6XazXF5NHFDHG0klzLXIzap4Z16++S+tbu18vzJJIv9ZGtcmFp3O3Ey92x88+ONej1TVJPs8j/Zf9XHF/s11nw91vVtSsbrSXurW28Pw2/mXUkkP+rhWveijxDide1Sb4g+NpLy3j/4+JvLt4q2PFHgNfDkMd59u/ij8uqloKGp6Z4N0HxRYaXDJ/aXm+YvmeV/rJK3PC8sfhzT5pLyxSC+k3eZdxfvpJK8aT5pXOyL5o2NTQbqPVPOks5JJfL/ANZF/wAtK1prCx1TT5rO8j/0W4j/AHn/AD0rz6kuSVzpjE5/wH8KtJ8OXUknl/bLqOb93LL/AKyNa77VNLh86ORP3VZYnEe0qXNacOWJl2sv9lzeW8fm/vKtah/pUMknmfuZNvmVVKV5XIqr93Y+X/iV4I/4RfVJrhI/IsZJK5fRdGm1668uzjklmr7ClV54ngyOgsfhf4kurya3XT2lWPd5kkfyx102g/CW+tfM/tS4j+y/6uSO2/5aVPtOYzlK8T0axtf+ES8L3lv4f0W2/d/8tbmTdJJXMza94ilupPtl5pmlSfLJcebH5lTKNyIoxbr4q+IPC80cdvfWuoRyf8svJ8yOuZ8ceN9U8W+T9s/s+X7P/q5Y49skatXRTibknw5v4ftV9b3nn+XJGskcsVepQ6XoN1D5lnfXUs1cdf4jkqr3jLurCa1m8t44/MqjN5nmR7KyiBuWuvfvo47yP9z/AMs/+mdddaxSWsMeyT9z/rPMjk/dyUSJsc7pfjLVPhp8RrHWNIvJIr6z8u4/+xr9SPAfjzTfiX8PbHxJpcnm295D/u/NXN9k9SDLkP8Aq6mjrmidwtFWQdlVuuoyCpaAH1LQAkdSUAFFABRWQHhvxM/0X4taDv8A3v7uvTo6IgT1BJL5VAGLfXS3f7x/+ucdcrqEv2+6+T/ln+7rC5qcv4k1RYpvscc376SPzK+XfiNr0Ol69qH2yTzfL8uT93JXPXgXSPCdY1STxHrE155f+s/5ZS1k61+6m+T/AFPl/vPM/vV10vhNTl9ev/N8v/njHXKxxL53z+Z5P/LTy60kB0n9qeVNH9j/AHvl7f3tQ+U3nTf8861Ab9l/c1veEdB/tTUI99v5tvH/AKyuKo7GlJXPQo7+Pzvs/wC8/d/u7eKvs74N2skVrbx+X/q4a8yv7h9JhfhPTr77RLH+7/11cbr1hqV/p/lpIn+srzKmh3QPJdU+DcesyfaLj97+8/5aR+ZUNr8AtLsJJJLO1SWbzP8AlpWtKrYqcOaVjcsdG1rwlpfl28z+TH/rIo/m8yvFdU/Z9k1m6vLzzp9K8yb/AFckfmRyV7OGxDhoebisGpanL/8ADKs37v8A062roPDv7PsOjX1ncPq08s1vJ5nleXXo+1OWngV/X/DnrGoXWpazJHv/AOuflR1qeEfhxHFa+XceZFa+Z/qq8qpK8j3IL2eh7V4XijsI/s6fuoap3Xl/21JIlcdUuJNHLUn2ryoa5pOxvY4nxda/arW8/d/6uPzI6+X/AIlaXNL4o8z/AFEcm3y69DDakVD1r4B6pH/plmkcn7yOOSOvRvF3w+0PxHDHcapD5s0f+r/6Z102vE4ZaSONm8EWdhN5lnH5Uf8ArPKqO68OQ6zpclnqEf2y1k/5dqUZ8hnOmpnI3XwC8GxeG5pPL8qb/nn5lee3XwW0mKSP+y9NfzN3+q8yt/buJyywC/r/AIc1vCfw+vrD/Q0t49Pt93mR/ZP9XW1rHgiH7D5eoyebNJukjljqZVmd1KgoxOBsfhBdapfSb7dPLkk8ySX/AFlegeA/hLdeF7r/AEOaeK3uP9ZFLXPOrcfsuWVj37QfLi0//pttqr4ulXyfnk/5Z+ZWX2TM+QfG1/5uqSW6eZ9nuJPM/d14b8UPOuo5vs8Nerg17x81jfhPKY1+0XS26R/9M66T7V/oM1un97/nnXq1DxaZuRxeV9h/6Z11Gj3Un263j8zyoZP+Wdc251R+I7jwnFD/AGxHHcRxxQ+Z/q469u8O/wDIP8zzPN8uT95Xk4lWO09Y8L38n7v93+58z/WV32i3Uf8A11rOkzkkdF5q06G6r0omRsWt/XQaff1qQakeqf8ALR64vw3+98UeJP8Ar4rO4HR1518TPjT4b+GlrJJq+oR/bv8AlnaRfvJKLmp+Yf7Rn7Q+ofFr4qSeIE2f2TZw+XY20te+fs269/b3w5sbx4/KuJJpI/MrbHK2HudeVVb4ix2XjzS/tWi/bPL8ry65PwPqkMV15dxHJ5n/ACzr52R9jFnt2g6pDL5kfmf9dK1ppV86sjouVZpf31XI6BF6HzKuWu3yaDIkp0fl1BReo82rLD955clfMPx4+PDXUn/CL+FPMih/eR32pRf+gw1VjmxdT2VO54z4X0aHQZpLi0/5aL5cn8XmLWf488b6X4N+wx3EPmwyf8s7b935a16tJe10PhKr965h3XjfT9e0W4k064fzJJPL8v8A5aba4GO1/ef6uvfoUvZRPMnP3jQjiqauoxJIZfK/eJ/rK6TQfEd9f31rb/8APT93JXJXj7ppSl7x03iL4N6b4yvo5Hvp7OT/AJaS122j+EofDmlw29vNJLHHXzdWrc+noUrGD4ytY/EelyaG/wBp8u8kj/1deB69dWvhLVNW0PSNksNx+7kvpf8AWR114F3OLEy96xwMksmqX0lwkflV3XiKX/hDfhzDo7/8hLXNtxcf9M1WvZijhPRPhjdeEbC303ZNp8t9b2/+sl+X941dJ4s+Gmm69fWNw90/7vb+7irgq1bCoam9rWs2OjRyXDzRxeZ/q/8AnpXnuveKLq/kkjTZ5fmfu6ilT5o3Lk+SVindSta3UeqWd95V9/0zkrrtH+IOm69qEdveeXpV9/q/M/5ZyVz18PzRuOOIOytb+TRpPLuI45ZP+ekX+r/76atSaVbrzNm/93XiSoW1PWpz5olHWrXyrX55I7Ob/V15ja+Mrz+3oY7j91DHJ+8/d114aF43OSrU6EniLxbZ380cer2ttFocn/Hx5nzSSSVR0vWfDcsfmW8Nz97y/sUUfl+ZXt0vdieTI5fxZrPij7LNcadpt1p9jt/1f/POuH0G61jXtatbe31K6luriRY4/wB5/e/vVvbkCMLxPSNa8B6X4StZI7fXruW6/wBZ/wA86811C/1C/wBU/wBI33knl+X5clVGdyYobqmjSaNdeW8f+sWs37VHLXZTkUdx8OYpNG8bWMlx/wAesjeX5n/LOPdXr32DR9GkmvEhT/R5o646/wARhVXvFXWJV1668zTo5Ko3XhfUrCH7ReWskUO795/0zrKJmOh0u1l/eJ+9hrU0vVLWW6+zyTRxf8s/KokVYq+PNBX93qlv+9t5FXzP+Wkcf/bSvoL9hn4qyaDrV94H1GT/AEHVP3lnJ/zzmrm+ydkGfa0cXlQ1N5Vc0T0g8qirIOujq5XUZD6TzaAH1YoASOloAfRQAUysgPDPi1+6+JXhm4/d/d8uvUo6ADzKo3X72gDH1Ty/OhjrnZtthNeb/wDaqDU8huvFtr4XtdS1C4j83WP3nlx18l+JL+a/utWuNU3/AG6zjb/j5kb95XFz3kdcTg49Zkijk2VR83yv3j12RIOLvpWl8yPy/wB3JJVCtANPRbVrq6j3/uq2JIpPOq4uwU5DtL0a+1m6kjSOTyY67b7VDYafbxpD5fl/6v8A5aVyHZGNir4Xuv7U8cWdnJ+9/wCWlfoJ8OfOi0uP93++kjjkkrx8Ue3gfhO8/wBbVWaw82uQ9Qr/ANg/3JP3lUbq1+yzfPN5lBNijdX9r5ckb1DdS2strH+8j86tITMrHN31hDdSeZVGTwl5V15jyfu69KCNIuxch0ZovL/1f7yumsdGYeXQRc6CO1ktY6z/ACpPOkrhqM6qY+pZovKhrI0Of1C1kuobiOvnP43aW1rNpsiSfvI5K7KD94zkQ/CXxG1rqENwn7qGP/0GvqKPyfEdjb3FvJ+7216EdDinG5lzaNJ+8jeNJay7rRvK/eJWYzn9Utb7yZP9F/791zPlapayf8eM8U0n/TOs5Gty99g1aWGOP7DPF5knlx/u/Lq1/wAIlfapNbxvsi/efu/NrksB32l+A/7Lh+zv5cvl/wCr/wCmlNvtG+y/cj/hrblJM+GVov3lYviy6jihj3/6mOOTzKziB8r+Iv3viKS4i8yKP/nnXivxQl/eXkf7v93Ivl/9NK97Cq0j5LGM8rjlm+1fJs87zK2I9sV1HH/x+SSV6FQ8ZHXXUUkUcdXNQl+yxxyeZ+8+WuY6DsLWWS/0eG8+fzLf/WV6t4D8USaz/o95G8Unl/8ALOP93Xn1zrieuaDf3Wl3Vr9n/ewyN5flSV65Y3X2WOP93++kkrgpTsEjpIZf+mlWI5ZP4K9OmzlsaEMvlVsWt/8AufLrpuTY2rW6/c15LrXxf8I/DTxJrkmuatbWfmfvI4/M/eSVhJ+8TGNonzn8Qv219U8RySW/h/8A4l8Mn7uP/npXhfxq16Sw8D/Z7+6efVtUuP3cvmeZ+7+81XSj7xz3PnuGX7BdSXHl19Ufsq+LV17R9Ws/+W1vJ/z02x/vK7sZK+HsdOWPlxUWfS01hHf6XNb/AOt/d/8ALWvKb7S1tZJI/L/eR/vPNr5OJ+gF7R/Hk2jR+XcQ/bP3ddpa+LV1SOO4tpJIv3dYyA2tPlkl/efvK3rX/lnJQUanm0f6qgCaGWtCOgkm83yqJv8AUySeZH5McfmSebWkfeLqtRifKPxo/aHm8W30mh+EprmLR7eTy7y+i8v/AEj/AHa8p0uwWKHzH/dQxxt5ldNOhynzmJq+1lzHF6X8c7WK6ure8s4/sPmfu7ny91eb/EDxRD4o1SS4SST7D/q7eOvo6VH2crnz8qnPGx2Wg/D6Sw8J2uuedHF9o/eeVUdrFXdGSkePKLhIPKoq46aikrxsOh/65133wr0aGW6m1DzIPMjby6wxL/cm+E/iRPWIbX7BJ5j1k6hfyf8ATP8A1dfIfFKx9ZH3ZXOH8WeI18P2N1qFxN++t/8A0Kvm3UJf3Mklz/rrj/SK+hwceWJ4eJlzSOm+HOgx3WoSahqMflaXp8f2i48yuV8Sa83jLxRfapJH/wAfDV3/AGTmOo0HwRrGqaxpu+xeKG4aOTzf9mvoTUNZh0uGaT/ljbxxxxxV5lR8+hrGHunC+LtUW/1T/nl5cf7uKWud81ov3j/6muyFM45anL694jurXUPLs/8AV/8ALStKS1m1nRZN8nlVoUWNF1TxFYR/2fJefbNL/wCWcUv7yvXvCfiNbrw7bx299++/49/Klj8ySOvNxdD3TooVPeMnVPEa+dHZ/wBpfY/3n+tlrDutU8P399DZ6dqXm3Ukf7yWSOuelDkiay1kTa14DutZh/0fyP8AV/u5Jfmrm9U+H3jKwmjvLeZPMt/3kf2STy63jiEi/Zs6LwnYeMr+xvJNctbmWGSPy/3vmfvGrY8G/C3T/BFnM1xcfbNWuP3bSRf6vb/drCti1E0p4VozfF3he8v/ADJLfzJf33+rlrl9e0HWtB0uS3vLGDyaqlikY1cO2c3deKJPsseh6vpPm/8APOWqN94NvtL/ANISHzbW4WO4/dfvP3dexG0onFKPsy9pfiNYv3d5H/pFdZpeqebDH+8/cyVnVnYi56BJpcNh4d+2W8flXXkr+98z+9XK33i3VL+H7PcXzy1lF3OYy45fKuvM/wCmn+trsPC8Wi6pazf2pvlvt37vyqLFnpHh2K10HS5o7Ob7Za3Ef+q+Wuf8Nxf2D4ij8SaHJbfYbeSPy4vtXmeXJXny0Nowufo94D8W2fjzwbpuuWknmw3C/vJf9pa36yhI9IKK0KOoqWuoyLFPoAdT6AJaKACigB9FZAeE/G7da+OPCciR/wDLSvRI5ZPJoAmm/wBXVagDK1TbLJHHXD+Mrr7Ba31wnl/u5PM/e/7NQanzTfaz9v1ibWH8+XzJPMjijr51+I3i1tUvr648vyrq8mkjji8z935a151ON5HXE4nTu1aGoRf6L/rI69CJByc1rH53mRVX+weVNHWgGp9q+weXsj835v3cVb1j4Sml8v7Zvg8z/ll/q5KUnY0pwNq6urXw5a+X5b/u/wDVx/8ALSuL1TxHNLdSXCSSReZH/qqwLlOxtfBu1mv/ABJJ+7+2Sbo/L/ebfmav0W8G3Xm6XDH5fleXHXj4o+gwPwnfWsvm+Xvq15dch6gTRVVk0uGX92/+roHYqyeF9Nl/5YxxVnzeCIZfM/0ryq0hAzsEfgi38z55p61rXwlD/H5ldUKhzSdjStfBFnF5ciR1aurCOw8vZH++roKuY8372SqN1FXmzZ3UyPT7XzZo5KvXUUfk0jQ5u6tfssf7uvnn48boo45Ej/1f+si8uuig/eM5HK/DW/juvLkSOvaPBuvTaDfL+8/0H/nlXRKrYXLc9q0W603XrWOS3qa60uOX/ln5sNdBwXKf9jQxffjqEWH/AExj/d1nI1uTaf5Mv/XSnSaDHLN5lYWNC95X7ny3rn9UlWq5iThb6WP955cdcL421SaKOaNP9T5P+tkk/irOIHzfqks32q4k8z/SJJPL83/lnXhvxMuv3fl+Z5scklfRUFaR8djGcH+7i/66VoaPFH9uhkud8UNdlQ8pHZTS/aqvebHdWvmPD/q65joNrwPqnleZZxyP9lk8yuwj8zw5qmn6hb3H7uvPrnXE+jPC9/Dqmj2txHHH93zK7zS7/wA393LHXBGFgkdhp9/+7j/d1sWt15v3K6qbMbGpHKtOmv7Ww/eXE0cX7uurmJPFfj98ZPN8G32n+H9WSz+75l7bV8o6hoNrdQ+Z5P8ApX/PzLJ5lRJ+8YylaJmyeHLXVNUs40j/AHkcfmSXP/POvI/HniiTxH4kk+0Teba2/wC7t/8AdWvUpR9447nK3W7ya9k/ZL8RNpfju+0z/VC8t6eIhenY6cG+WtFn3ho/l39rHJ5f7uRY64fxZ4c8q+8z/pisdfJxP0Qx5tLhuvM/dx0WujSWsP8AzyrGQHXeHftUVr8/97935ddhp8v7v/nrQUbUP7ry6k8ygCa2/wBTHVyP91QSYvizxlpfg3S/7Q1Sb7Hax/vK+J/jl+03qnxGhk0vS5P7D8Pyfu/Li/dzXH+9Xq4KlzHgZhi3GJg+A/CTaNo/zzebNceXJJH5f+r+Wuqm0aG6tbi3uI5Ps9xD5cnlVrUnynmx/g8x4z4y+EDeF9Bk1T7cksMf/PWNv3lcToul/wBqapZ6f5nlfaJvL8yX/lnXvYafto3PIkuSVj6c17wvJf2MNmkz2drbqvlx/e8yuf0H4c30Wtf6R+6sY/3nm/6zzK8yVdwOqVBSkWPGWl+GdLjh+2Sf2f5kn7uuL1DRrXy/tGnXH2y18z/WV6GGq+0p3PNxK9nKxRjij/dx12nw5sJJfEkez91Hb/6zzKjEv9yThP4kT1a+1ST7L88kdeE/GT4oalYa1Hp+kXXkSR/vJK8XCUuatY9+rV5Y3PL9U8Uapr3lx6pfPLbxyeZWbD5l1dSSf62aT93HFX0EY8sTw5S5pHZfESf/AIQjw3pvhVN0WsfvLjVpP977sdY+ifD66l0211R7iO20v/WXH7z95GtX9k0PeNLlt7qOOSz/ANX5f7uX/Zq1qmgzapaxxov+sk8uvIvy1LHTGXunzr4ylurDxJfW/nP+7by/9ZUOg6peXWqR2ck0l55n/LKvZps8+Op1FrYQyyfPDXVWth9q/wBHSPyvL/eVkUZv/CJeItZ1CG30v91DHu8yWT93HXeaX8NPsvl3iXV3BdR/8tIpPJj8uvIxeI909ChQ94NQ+EGi6pfR3l5Nd/vP3knm3Famg/Dnwv4d/eadH5s3l+Z5ktcEcQ5ROmNK8jcjtft/mfZ5I4oY/wB3Wpp/hzyo4bi4j8+4/wCWkdckpNHX7MuQxSf6tI/3cdQ3UUN1NJJHH/1zkrz5Sczu0RVmsI/+e0n/ADzqjJFa2v8Ayz83y42/1vzV10rmEoJnnfjLwvpstr5dxa23lxr/AKP/ANM91cbH4jtdBhht9RtX/dr5cf8A00jr6XDVeaJ4WJjcp69oMOqTfaIo086TbJDXeeF7Ca/8Nxx3Fxbfao5G/ef6uSSunExseVcp32qTXX+h+c8vl/u/9ZWbNFJ5Mkj1lSdzMhqSOVv9X/z0j8uSumxZ6p8H/wB7pepfbJPK+7Jby/7vy03VPg3YxXUmqaHNdaf5jSSeX5leVV0NqU7nvHwD+Mk3wgtY9H1fzNQ0ORvMjk/5aW9fX2g69pfi2xj1DSNQTULXzP8AllN5lZQiekaHl0VoUdRHVjzK6jISrFABTqAF82nVkAUUAWKj8ygDwv4/fuvFHheR/wDlnNXoXm0RAdJTbr/lnHb0AUf3f2rzP+mdeH/HLxHHF5Oj28f768k8ysKr906Inzn448R/2Dp919nk/ebpPLl8v/VtXzTJf3WqXUlxeTebNI1Y0kdA6Otj/lnJ9o/1e2um4SOZmsPKh/1n7ym2OlzXV1DHF5nmf89PLouKx3FroNr4ck+0XE0d5J/zyo1TxRdS/u7O3+xwxx/vPMrmqSvI6qekTgbqW4/eb5Kw9Quv31aRkYSZ69+znayXXiiPf5fmXDfu/N/2Vr7s8LxLa2sf/kSvNxyPey/4TurW68ry460o5fNkryontmpDYVa+wLW9gM+Swk8yj7L9a2Ad5sdrU0N1H51LmMeQmk1RYqzb668395WgchQqlN5ktc0kdkGWrWKT/WVNHTEZesRf6LJG9fOPxg8yWGbf/e/dx11UnaQ7e6cD8M5Zv30fl+b83mV7Rpel/arWOTy6chHWafdXFh+8SOu+0vxRHdUc5zyp3Nj/AI+qk+yrTk7kSRV/svypPM8ur1IdinfVxusSt9q+SSgixwOsXX2CH95H5teS/ELWfNsZLd/3Ucf/ACy/1nmVpQRlVPB7q/ktftn/ADzk/wCWckleJ+Mt0t19nTZ5cf8Ay0r6OkfIYw5+G68r/lmktamlxNdf8s44vmqzgOqurr/WbP3Xy1Dov721j3yeb+8rKXxGly59qk0ub/Vp5Nd9pevTX9rHb+WnmSR/u/3lctdXjY1pns3wN1mOXRfsfmJ50c37yvYIYv31ebzWNzpNLupPJj310Frfr9lkuHmjitY/9ZLJ+7jrCDvIz2POfGX7Uvg3QZpLPTtSTUL7/npF/q68V8ZfH3UvFGsf8s55Nv8Az08uGvT5Ocy5jzvRdUvNeuryz1GT+0Pm+0V0XiTVIfDmlyR+X+8uP3ccVaRicUneR5z4o1m18OeDZpPMk868X7PH5kn7z5vvV5za/CXXrrR5NUTyPJ8nzP3klenTgY8xy/76WSOO3jkvJv8ApnXrn7Ofhz7L8QP7QuJv+POGif8ADsdNP+Jc+/vC8X/EvhjfZV7XtGjv7WSTy/3dfJ/bP0NS5ZXOF/saT/V1YhsP30f7uueRB0mn6XD5flv5fmVqQxVQ7knze1Hm0vdibU2zSsf9d5lcX8UPjnoPwv0uT7ZefbNckj/0fTYpP3lXhoOrUuefia6oU7Hw7428b658S9eutY8QX32yTzPLjtv+Wdv/ANc64HxRdfvppLeF/Lj/AHcflf8APRq+upUrRPgqlT2lS52nwl8UTXVrcR6jqX+nfu/s9tJ8tc/8QvHmqS+LPMs7y5i+x/u4/Lmqfq7nW5jqjV92xNr1/wCKNe+HtjJeWP8AotxdNJ5sUf7yTb/z0rm9B8Eah4ohmkTy4vsbL5nm10wa2OfbU+lv7Uhl8m3t/wDTPs8Kx/u5P3fmVzuj/FrRdZ8USaX/AMec3meXa/8ATSvN+rXOyVVHA/HKw16616OT7Hdy6XGq+XLF80e5qufC/wCH0ms+G7jUHmuYvMm8vyq6aT9lRseXUnznQR+EofBuoWdxq/ly2vnN5flf7NdtouqeH7qb/iVyJZzSeX+6k/1klcuJ/eRNoSJPNmiupLh40/dr5n/TPy1r5H8UX914j1661S4j/eXDU8FT5TqryuZ99tit44/nkupP9dHXZfD2KO1vrzXNRmjs/wCy4WuI/M/5aN/DHHXrR+I5JanD3WqSa9r0moXkn7y4m8yaSvZPFH2rWfC+l29n/odjcbZLjzf3flxrUz+GxX2j0zwPa2P9j2cdvH/oscf/AH820eNvFENhY6hpdncebfR2cknl20n7zdXh8tqlzphrTsfLsNhql1df8e91LdSf9M66rwv4I1661iGRLOSKGOSPzLmvd9ojl5D1rRfhfNLql1HJN+7t4/3f/TSu+0vQbGwhjt0tY/u141XEe9c6qFK5a1CWP/nn++/650teXGdz1Y6kE3+rkkq1p+jeVD/pH+ukrOdBx1IpSvKxseUsv36SuSJ6AyaX9zJI9ZPm+bN/q0p8oE0P72s26sKZA2+0GHXrXy/tnleZJ/zz8yOvKfHnhfTYtFuvK8uW6jX/AFsdenQlY4cTG8Tye1v7qw8v95J9qr0D4P8AjLUJfGUdvqMzy2+3/nnur6GouameDy2O+8SaDHf/AOkWdx/pEjf6ry9sdcj/AMs/L8uOuDCVeaPKYV6fLqUfKoj/AHVeiZEnmta+ZJb/ALqavZvBPjfS4vC9rb3l9/pUf+stpI65KlK5pSdpXOi1C1jltfL/AOWMkf8Aqv8AnpG1Zvw/8ZeMPg3r0lx4f1J/7H87/SrG7+aubU9W/un3J8L/AIv6X8S7GPZJH/aXl/vIvMorn5Wjo0PXo5fNqaOu45ienx0AS06gAp9ZAFFABQ9AHivx+tfN1rwnJ/08eXXdR/vYY6IgH2r/AEr7PR/qvMkoA4vxd4jbS7WPZH+7k/5a182/FDxHa3XjiOSWT95br/veZtrgqv3ToifKfxK8UL4jvv44pI/Mkk/66NXI2MUnl1tSR0GlaxfufMf/AJ6V0mqaX5Wnxx+Z++kkouEjm/sv76Sr1rL5X/HvJ++/1dFzSwTf66OR/wDWVm+JIvsEP2i8k8r/AJZx1nyXka7ROR1S/hlm8u3m82uf1q6k+1fJXTGBxyZ7p+zn5d1fSR/62bb5kdfcXhOVZf8ArnXBjkfR5f8ACdlp/wDyz/56V1FjXhRPbNuxqxXXYBJImqjNti/d1QFGbzJf+WflQ0Q2slLlJ5hs1rNFNRDa1oHMTTWFZslr9l/eVlJGlNlH7V9KsWstQWU/FHmS2vyeZ/rK8B+I2g/b4byNI/8AV/6v/gNbJ2ka2908v8N38Ojap5bx+VJJXvnhu6tZfLj8z/WVrIyOw+wVatdL/c1lyhF3NKxl+y+XHXQRyySw1UXcxki3TKsVjNvpf3nzyVxuqSr+8koJscD4o/1MmySvAfFl+uqah8n7ry66aCOaqeP+JPLiupJPJk8mSSvF/FF/NLrU2+FP+mde9SPkMYR2th/y0f8AdR1etZVlk/5Z/u6s4CxrF99gtY/+mlb2jyrLHax+Y/8Az0krKXxCuN1jy7Xy/wDnpJ/z0ra0XVPsEfl+Z/8AG6yqK8rHVTOu+HPiO8tda+0JN5X/AD08r/V19aaPdLf6P5iTeb5f7zzY/wDnnXj1IWNznfF3xas/Bsk1uk0F5cfu/wDajjry/wCIHi3UPG+lx/bLrzbW4/efYbaT/WbauhTvI8+pVseL/wDCB2ct1JJeeZZ/887bzP8AVyV6J4D/ALBtdLk/tePyvLb93Xt8nKc3OXtY8eaHoM3l6Rax/Z44/wDW/wDPSvK9e8ZTazr32x/3nlt5nlf89KIxMYyvI434oeI5NevrOPy/K8uGpvBuvah9uj0f/kIQyL/10+WtoTL5Tota0HTfC9rJ9j/dTeZ+8krsvgPaR3XhvWrzzPKuJLjy/wDrntoqdjpp9z6++GviNf7Lj+0R/Y7jb+882T/yJXoXlfarWT95Xyf2z7alLnjc5vVLX/Wb5I/3dZ8fl+ZH/wA9K55HUbEN0tr/AM86LrVLW1/5afu4/wB3VGdzD1TxvZ6Xayb9QtP+2U37yuNvvjno9hH5iRz3klXTwspnBXzBUv6/4B5T4u/aM1y/86zSaez/AOucdeI61r15qmtSXl5I95dXH/LST5pJK+hw2HVLU+SxOMdfQhupbWKSTfJHF8vmfva43XrqT7LHHHJ+5uJPtklezHSJw01bUx45ZP8AWJ/rKmtbWa/vrOzt98txcN5ccXmVXNyrmNY/FY+vtH0ZdG0ex095JPLt4Y7fypf9XWX48uo/Dmj3moW9uks3+rjijjrw4Vn7Sx61Slanc+W4de1LS5vMt7q5s5P3n+zR4d1SbQdasdUtvLlmt5vMjik/efNXuU2meTI908G/Gmx166ks7y1n0++kjk8v/nnTdH8R3XhyaSO3kj+y/wCs8uuarT92xz8vKR+KPFEmveXvj8r5v3f7ysOxtft99bx/9Nv9ZFJ/q6ylStEVOR0nxG8R+bax6XZ/8tI445LvzP8AWRrXj+veZL5f2j91b28dFL3TpnK5c/4Vpqkvhv8A4SC4vIIvMkh8u2/5abmrD8UXUKSQ6Cn+pt5ts3+9XVH4io6mtpfgjQ4rWG8vLz9zuq18QPG+n6zY2en6R5n2WP8A4+JKmfxWK+2d94X+Jfhe1sdN8Pp/aEX2dVt/Njj/AHkkjVz/AIN0vxFL8QLrWEjT7VHJNJ9pl+WOuCcbanTQ10PVrXwlH+7vLjUJLy4/5aXPmVqfZYYv3ibLP935n/TOuH2ptyjv7etYrGTULib7Hpsf+suZa5Ob48eG7WGSS38zUPL/ANX5cfl+ZTo0PaxuZe19mc//AML9t7qSP7HodzL5n/PWSvRvDsuqX+gw3F5pvlXUit5dtWdWh7M3pVLnzv4817xFr2tTf2pJ+8t5pI47a2/1du3/ADzXbXvPwN8JeMrDRfM8RzfY7H93Ja20v7yaSurFRSp3Iw0r1rHoP/LGSOqMmqQxeZG8nlV81E90b/wkdn/q9zywyf8ALWOsHzZP3lPmAm+3zf8APSqN1LJf/wDLTzf3lMgozWEfkyR1kw+F45fM+0Sf89P3X/LPbW1OVjKqrxPLfEnhzyvM+x+ZZ3Vv5n7v/npWL4b15dGvo7j54po/+mf/AC0r6WFTmpngVFY+ttF8R6b/AGDD9z/Ux+ZH5f8ArJK898UXWk6pfSR3Gk/Y5o/+faPy68ih7lblMK75qdzjdQtY4v3ifvbWqP8Ayzj2V9EcRT166ksLWGT93LWhpcscv2W8STyvMj8yPy6rcIu0bnqWn/EuOKxjt7iOSWaNf9bXl/jLx5r1h4skvNLm8+18uP8A65/LWXskdHtfdKfgn4yeJPBvi6HVLC++x/N/x6UV0fVkw+tM/b6OrSV556A+ioAlqWgAooAfRWQBRQB4z+0N/rPDf/X8tdlayyeTH/u0AWI4vNrLur+OKabf+6hqZMUTwX4qeMo/O1a887/RbeH93FHJXyj4s8WzS+JPMuI5Jf8AR/L8z/WV5kn7x3RPH76KT7V5ib/Lk/1dHleVDJ/rK6qfwlnUaLpf+lQyP/20ror7b9hkj/1v/POq5gOHkibzI/8AnpXTQ2tjpdr/AKRJBF5kf+qosb3OBuviD5UPl6dY/wCr/wCeslcPqmqXl/dRyXEnm1vEzqVCrovl+ZHJ/rfM/d1V1qL995fz+TG1dRwnv37KPly33meZ/D+7ir7a8Oy+bH/q68XMPiPpsun+7O40uXyvv11Vr/qoq8Ox7ptWtXo9tdMQkWp/9VWXdWvmyV0EEf2CSpIbWsuU0uSeVR5UMVacthylcy7q6/feWlY99L5UNYSLpoyYYvNmrWtbDyqzpRNr2G6hF5sMm+vKfFFg3mRyeX+5rW3vGtKJ4L480v7BdR3Cf6u3k/efu/3nzV1ml+I5ItLsZPOTyY461sTL4j2DwH4tsdZjhj8zzZP+Wnl16ZY2sN1D8lVE46qLk2lrL5dHleV/yzjqiSWql1+6qZBEybqWuP16KSL/AJaR10FnmfiS/wD3Mnm14P4ktYfO8xJvK/ffu6KTOWv8JwPjy1+wRwyJH+7kk/56V883Uv8Ap2pR/u/MkZo6+hofCfF4wLqXzf8Almn/AE0kq1D5lrHHJ8/+s/1VXI4i9r3nfZbO3fZ5fl1veF4luvM2fuvL21mBqapF5v7uSP8A1lQzWv2W1+Sp+0XTZreA7+6/tTy/nl8xa9I1j4jTaDpc1nZyeXa3i+XJLHI3mfN/yzrGUOcmUjzeG6kiupLipI9Zh+3RxyzebdXDfu61+E5jvtYtdNsLWOTzP3nl15/qmvXV15cf/fuKtYq8TLYrzXUl1DHG8dYc3+uk3ySRR+XWwGHa6DqHiO6uNQ/ef2bH+782WvSvCfhePwvo8158kt9J/wB/P+udTGViZanH+KNU+1R+Z/yz8v8A791vfBvWbqwsdWjs/wB1J5kfmSVgze9onqVj4ovopof3jx/89JYv7tdVa/FDXLD7l5/q/wB3HXF7M2pYhQL3/C5NUlkkjeZP3f8Az1td1N/4WrfeTJcfvPOk/d/uvlrl9gb/ANov+v8Ahh0fxV1Lyf8AR5o/+uX/ADzrFvvHmsedNI948vmf8sv+WdFOhaRnLHt/1/wDlZLqSXzP3j+TJ/yyrL1qWbS7GT7PH/rI5P3v+9Xp00cPP71zg/Nk/wCej/e8yugtfDkN/p8clxfW3lyL/qvu+XXoxjaNjOSb1PKZtGm17xZJb2cb3kkl1/q4/m+WjxFfw3WqXGz/AFcf7v8A657aZsZsP72vTvgDo02qeOPtCRx6jDZwt5nm/LHHuqK6UackOlL95c+kJrWSqOoWskXmb7fzYa+TifVHl/x4i0vS/CMMj2tp/al5N5dv+7/5ZrXz7N/q4/3kdfVYb+GfPYn3ah3Hw5sJPOm1CSP93H/o8cn+1XYTbf45K3lqebURj3V/UNrdSXV9Hb/89K5qmmoo66HQapar4c0uSTy/Nmk/1f8AzzjasvwT8NJvHmtRx3EkcdrHJ/y1/wBXI1YQjyyNb2Nj4jeN7PS9Qkj0v/kE6XNJHb+ZHH/pF1/z0ryPwvoN1rOofbH/AHvmM0ld0So6ROsktVi/dvH5s0f7ujS/CVjql1HbpZ/uZJP9bRONtS4q+h6xpfwv0GwvvtFnpsn/AD0jll/56V1X2Xyv3cUNt/2yjrwqtW56dKnY0tQv9P0u1+0ap5dnHXjfiT4l/wBva9HZ6Hp8moeW37u2/wCem3+9/wBM6WGjcyxLsZOqS+KPjJJJb+THp+l6f/yzi/dxxtTofgFdfYZLi48RW0Un/LOKOOvX+A4vaHZfD34BWtrdf2xql5/aFrG3l2sX3fMauq+Jlr4wl8LyW/hf7NFDcR+XeW3/AC0/7Z15M52xHMzuhDno2PmXS9U1DQdes7iz+0xapbzf6ry90nmV9dWuva5f6DZ3D2P2a+uI/Mkjuf8Aln/d3VeOnzxsRhI+9c4PxFa+PLC6kuLOS21WGNvM8uP5ZJP4a2PCfhz4hap/pGo6Hp+h6P5n7y2uf3cklcHtFOB32vI3NQi0uwtf9I1LT4o5G/d+Vt/ebarx3+hxXUkdvJdaj/0z+9Xnez5Y2O6E7yuamn6NHf8AmbI7uL/nnFFJUN94D1KKTzE3/Zf+mtUMvf8ACubqWHzP9bDtXy5JY6sWvw5WKHy3k8iaT/lpFQQXP+FQQ3/2q4SOT7VH/q7mX/lnXNzfs3af9qmvLyNNV8yTzPLl/d/+PV1c/IeVUiYt1Lpvw51BdH07TZJYfmk/e1wvjzXvEXii6s9Qt4fP8v8AdyfZo67aXuxuebXj71jj5vFt9pd19nvLGfzPm/5Z1ztr4jurW6X7RIkf7zy/Klr2Kc4TOSVJo3rq/m8ny5I45Y5F/d/u6m0u1mij/ew+VH5i+XWvIpSMoyaNzzfssMdc3rEv2W6+z+Z+8krUInH61L5WoSf6vy6Kmx02P35qzDFXAeiOSn1AEtOjloAfRQAU+sgCigDxf9oaLzbXw7J5f/L4tdZp8v8AosP+7QBNdao1rH8leb/FDxGthot5J88v7taxkxRPm3xxF/xRt1HeSJPdXjfu/Mj/AHfmV806hrLXWseZcSJL5a15kn7x3ROXvrqGw/d+XWl4X23XlyV3U/hLOwtbpvtUlU/EWveVYyeZ/rN3lx1XKByOtazHYQx/vP3n+srnbrVLrVLqS4uJPNk8utbDuUf9bWHP+6mk/wCWXlt/y1kqomM0FjF5UkeySm61Ess03lx+VNu8yuoxPbv2UYo/t11v/eyW/wD6C1fcXhGXzdLjrxcw+I+iy2P7s7DT5fK8yussZf8AV7K8ix9CbFrLWpay1pEJF6Oo5P8AYroIG/79RzSrFV8o7mTqmvQ2FcvqnjeSWaONPMrOpKx0Rhcda3UkslN1SVvOjjrCRcEXtPsGl8uOuwsbDyo/nrWkjCo7GPqmjSf6xJK8516L7VHJG9aW946aUz5/+I1hay/aP3f76sP4a2EN/ot1H+8i8uanYuXxHRWN1N4N1SH7PeP5P+sr6K8L6z+7j8ySpiRVR20N1HLHUnmVRyEdUbrb/wA9KmQRMO+l/eVyusS+b5kddBZ5H4klklkk/wCe1eL+KLryv3jx/vLdvL8qs6TOWv8ACcH8Rr9b/RbG48zyo7eSvm2SKOXVLiR/9Tukr6Wh8J8XjCS6l8r928f7ytCGVZfLj8yrkcQ66/ezR7K6Lw3frYQ+ZJv/ANZWYGxrW2Xy6h0+X7VDJ/0zqftCpsLWL7BqEkif8s5Km1TWfsGnx/u/33mfu6mMuUqUTLjv5r+SGP8A56SeX5vmV6d4T8G2Ol6hHqH2jzbjy/8AV0/iOY5f4meI9U1TVJLdLd4o/wDWeZLHTvC8Tfav7QuP3VrZx/vJZa6aSvEzqaHL+KPG82s6pJ9j/eSSSfu/92na9rMcWix28uz/AKaVQj061ltf7Lsfs/7rTY44/L8uj4rXUejeF7OPT5P9KuJJI5P+udTKNiY6ni+vboo47f8A5ev+eVeseA9Gj0vw7ayXkPlXVwv7ysJFzdom95v2WoZrqsrnJFNljzZP3e+nQy+b5knyeXWXObcqLHm/886hkl+1f6ujntII2Zw/jLxvDYaDNHYap/xMvM/1cclc34T/ALU177RJeTXN5D/yzl/56V300acnu3PSPBPg211nS5Li88zzPMqrrHwRs4pry4/ta7/56VzSxDUrHdGlenc4v4Q37eHLrxJ4gdk/0PT5o7fzf9r5flrzuGKS6/dpHJLJJ/6E1ekcZ71D+zJNdaLDeW99JZ6lJCvmR3Mf7vzK774Z+CP+FfeHY7N/3upfaPMkk/5Z/LXj18Tz8yPSpYfqddHL/q/3nm/9dab9g+1XUf7vzfMjryInsnzP8dNemv8AxxNZ/wCoh0+P7HHXm3/LWvqsN/DPnqvv1B8Os3VhH5dvcSRQ/wDLTyq7DQde/tSx8uW6kvJttbx1OGojQjlrpPA9/psV95fl+VcSVzV9KdzKlrUsdJ4i0uHWY/MSP/Sv9XXP69o2ofDmOOO3vkn1LVIZPs8VtN/q4/4pmrkoT55HdUp2PGdaum1m6jjebzbW3Wuq0vXrPw5ax7/M+1SR+X5sslelExlpEy7rWf7Z1qOOz/df8s/+ule5fD3wldaN5cj2vn+Z+7kkl/5Z1lXnanc2pK9Sx33lSSzVNaxSf9dfLavmpanuR0K/jKwurXQZv7P0n+1b6SPy7eO5/wBXHXmvwz8JWvhzS/EW/wD5CX+ruL6Ly/3a/wDTGvVwcbnkYx2KNrf3Gjaf5dnN5VjH5n/XSTd/y0kpv9qXEsn2h5Hl/wCecdd3xnn2NjRdUvLWaOSzvHi/6Z13kfjyzl+z29x58t1JHHHH+7/1m6uWvQt7x1UK/LGxl6X4Sh8UeLvtFnZpFJG3mSX3/LSPbXeTeDdSluvs9vN9supP+WksfmV4GLqcsrHrYSPu3IfHms+H/hBYyf2pJJeX0kK+T5f+skavE/EnxQ8ZfEab7HZ+Zoelyfu47S2uP3km7/npXXhKPNHUxr1PZyO0+H/7Pv8A0F9SSzj/ANZJFH+8kkr2LS/C+l6XpcNulnaRXUf/ADyrjrvllY9KhG8bmlHEsX7z/Wf89I6kmiX/AFdYGoTSra2sO+TyqbHLDLdUEGtdX6xQ+YklYt94jjuo5N83/HvXTy8x5VSR4n8TPG9rr0Mdvbx+fJZyf8fNdp4N0HwzdeG9PvLOFJb7yY/tknmfxV3y92jc5aa9rWsal1o1jFa/6HH+7kk/5a/8s465PVPCWk6pa332yxjljk/1kn2eOvHp1JxOurSSOTh+F+my6XdW9nDH/qf9bWTfeDbzS4ZNkPm+XXt0MY5SPNlh7BovheHWbHzNR8yzj/6Z/wCsqa6+HOn6pDNp9xG8vmf6uXy90kdafWQjSPGfGXhy10a6vNHuPMlvo5PMjuf+WdFdntDOx+89OqDtH0+oAKKAJad/raAH0VkAUUAePftGf8gHTZP+ed4tbWly+baw/wC7HWf2gIda/dSSfvP+WdeG/GTxHDrMljo8X+pj/wBIklrORtBHz38Steaw0GSTzI4vMb/R468J0vzJdU+zy/8ALSSuDlOo5XVJfN1SaPzP9XJ5ddR4XiW1tZtn/LT/AFld5ZqXV/cRQySJN5VcfqF/JfyeZcfvZKISAzb66+1eZ+8qjHLXQQOjl82b56y9QiXzvMoIkQ/vPOjkSrWsbf3Nx5f+sj8uT/gNXEyPXP2Vf+Rouo/MT95X3h4XiWXT45PLrxcd8R9Nl38M6CxirqNLl/1dcMT2omxD/rhWhDL5Valmpay+bVutYoxkUrq/8qud1TWfK/eeZW17RHTjc43VNZ+1SfJ/y0/1lRx6NJ5kMj/6uuDeVz0No2O00u1j/wBWlUdYib7V5nl1tKN4nLGVja0n/lnXVWt1DXTSZzV1cy766WWaT5a878Wf6V/3zJRLU6aWh81/EyLytLkjtvM8yNf+Wdcn4D1SO1+2R/u4vtFKEGVV+Ip/EbxlHF+7s5raXy69++F/iP8AtTw7aySzRy3VE42iHNeJ6dpd/DLW1Df1lFEF6aWs2aWTzJKLAY91FXP69F+5/wCeU1bxgB43423fvpPtHleZ5kckleE+KNsXmR+Z5Uf/AKMqqSOLFv3Th9el+36f5b14LY2H2q6urj/nnNXuYb4j4nFFe6l+1apHWla7YrqST5K6aruc0Sa+lb/WeX+++WOStT939l8v93+7Wuc0NC61SS1tZI3kojv44o5P3dABDdfapvM8yquoedL+8/1vzfu6CDU0uJYoY5HjrstF8eWN/N5bzeV5f/kSlJdTnkZfjzWY/t32d5I/Jt4fMrJh/tK/+HepSXN99mtZP3kMUla04+6Z2904PS4m+1W9wn7ry/8AnrXcf2Na/wBjxyapsguLiTzLe2/2a0FItR2sfnR7/wDU1h+OL/7Vqlnb+dJ5Nn5dBNg8L6M3i3xlH+88r7PH9ok/4DXr3myS+TI/lyzSRyVhUXvBImmi8378dZ8lq0X7t5PNrAxCGL95VqGL95HWRqWo4pP9Xb+XRfeHLXVLGS31GO58mST/AJdpKwlLkqXNIU76nkvxa8L6X4X/ALN/s618iSRm8yub8N+N9W8L+ZHp032OGvYoS51zDlHoe9fCnXtS1nwnHeXn7+aS8m/eV1moeZ9hvpHk8qGO1mkryqulSx7FCP7k+c9P8L6pF4HvtcTZLYyTSRyRf6vy9v8Ay0rF8L6pHo2sWOoSwwXkdvIskkUke6vape/E8ia5ND6W+Hvxks/GWoQ6fcWM8V9JHJJ+6/1ddx5vm+Z+7r53E03Tqcx9BhJ80bFr7B/00ps0X7nzIo/IrljO53cljzv4iWGi2vhPUtQ1fTbW8+x/89P3fmSSV8p/ao5Zv+Wf7v8A1dfQYN/u7Hz+L/iXI/8AWyV13hvS/sGn/aHj/fXH+srup6HBJmxDKsv7yvQvBOgyWFr/AGheeXF5kf7v/pnWGJjeNjOlpI1tB1nTYrq81S8m8u3j/wBZ/wBNK8T8efEG68b6peXDx+VdSf6Pbxf6v7PD/wA865qEbHXJ3JvBvhf/AEX7RcbPJrlfEmjR2GvSW8c32vzJP3ctd8feic8F7x658C/het1J/bmqQ/8AHvJ5dv8A9NK9wvr+HyfMf/WR14eJqc0j16EeWJXurqG1tZLy4k8q1jjrY0G6h/dyeY/l1ybRO2Luc38TPFt1539l2ckcEO395LXD6Dpf2+1ks7eSSLS44/8ASJf+Wfy17GGjy07Hj11eRDdfZ5f3dvH+7jqa60G6l0+G8+yyRWv7yOOX/nptrq9qkeV7NykVYbryo49kb1Jpe7VLqOOzje8/65f8s6ipVUYjhScj2zwvdSRWsOn2en/vPM/ef9dP9qtTxR4tX4X2M2oajJHFN5beX+8/1jf886+M5HVqXPqv4NOzPl26i1jxlrEmsav+9upN3l+Z/wAs6z9e0HVNLvrPUNOuvN+zyf6PFFJ/q6+kpVFSPnas+fY+pvBv9tap4J03VNctUtr6T93J5ddF9qbzvLSvCqPmldH09KPLTsOjlkpt9qkNh5n2ibypKLGkvhOF8ZfEuP7D5elyfxf8tY/3m2uT0fWfFHi2aS3i32cP+sjllrtpxtE+fqS5qh0GqeI7zwbY2sf9rebJ83+jf8s5K5HxJr0njL7995Um395bRfu466qRhOdtDHk0H+y7X7Zq+pW2n2P/AC0l/wBZWx8M/HnheK+tdP0jVrnULi8aSSS2ksdsda1Kd6djCl7tS56tNqkcs3lvH5VWrWL935iRx/6zy6+flBs9znRHHo0cUkkdv+6jk/eeV/zzrz3xlr80WoSRpJaeT/y0r0cNSaOSvJRicva6zrkskkj/AGTyfL/efu/9XWxous+bdRyWd1BJJH/00jk+9XXXoNxscVKp71zk/it4X1rxHp8Nvbw23+jtJJ/q9snzf8s/moq6N1AtyR+x9Tx11HQLT/8AV1ABVigApvm0AT0VkAUUAeRftIf8inZyf887yOrmny/ZdLtf+uK1n9oBvij91ax/9NK+b/jBqkNhdWv3/wB5NJ5nlf7tZyOumjwH9ozXofJ0nT0/0zy4/MjkirxvT7r7LdR0uU1MOa1/4nU1dppcU32WSR/+Xj/V0yzP16/jihj2VyP2rzZpK0pwAp3X+u8yiOWtCBv/AD0+/Uf+t/1lBEgksPtVrTrWKa/0uaOTy5Zo4/Mjq4mR6h+yzL9l+I3/AAGvvbQYm+y/JJ+58yvFx3xH02XfwzprWLyq1tLlrhie1E3rWr1all61lp0l15VdMUYyOX1TVGi/d+ZXA+IvEa+ZHHbyVNR2id1CNw8I3X2qbzPLrtL6JpYfkrjhrG5VTSVjidU+LV14Dvo7PV9PuZbeRfM+0xx1ND8UNP8AEd15lvN/D/qv+WlXGd4mUoWOk0XxvZ+d5bzP53/PKtabxbY38cmyb95trppMzqRuYt14tWL/AJaV5z8Qviha2HmbJvKk8ytI6hHQ+X/iF8WpNZmjjs4/I/5aeZ/z03V5jfePLrzPLs5K9CEEcFWr7w6Pzr+6j3/8tJK+tvgD+60vy/8AnnD5dZ142iaU5XieqTRSRTfaLf8A1Pl1qaDr32qP/WVwxR1HWQ3Syx1XvpfKosBz91fx+ZJXH32qfvPnreMgPK/G1/HFa30n+tj8ny468J8ZXUkvk/vK3pI8nFv3Tk9eijl0eaT5P+Wn/LT/AJaV8/zXqxfav+ulenhviPksUGlxN+8kra0+wWX93cR+b/rPM8qtZO5zRHXXmed/q/8ArnUK/wCsjrM0NaTy7+x+fZ527zKryXU1AF61lki/ef635ad5v7mggyb7XpLCH5JP3lbHw18Pwy3EerapI8H7z9zVv+Hc55Gl4yitf9M1Dy7n95JXN/2zqniO1h0d5v8AQY5P3cVFOXuhb3Ta0fwldazdSR2/mRfY/Mkk8yrWtaosvk3GoyebJ5flx+V83y1qZSOXvvFt1Fax7JHiqjayyXX2i8uN8sklBR6V4N0uGw0eO8fzPt1xJ+783938tejQ2skui2cnl/vI1rgqVPeM5B9vhv8A7n+ups0VMxK//XL97To4o/OrI1Oi0vRpIvL3yR/u/wDlrWp9lj/1nnV5daXNqe1QgnTueS/F7yfFF1ax2cf+lW8jeZ/yzryHWrCbS5I43jevpcJG2H5jy5S/eWPdvg3+6+H9rH/zzkkkrrNY/tbXvC+rafZ7PMuLfy4/N/2q8rE6Yix69CX7k81+KF1deEvhD4X8L+ZHBdSeZJcR14/HKsVe1h/dieZXXNUsbGj6zqHhy6jvNLk8q6jr6U+Evi268b+G5NUvI4/Mjm+zx+XXNmFNOnzHXhJ8srHTWvxG8Py6peaO+rfY763ka3kjua53xl8bvD/hDxRNpM8cl59nXzJLm0kWSOvJpULnpVK9iTxxoOn/ABB0uP8AtGO7s444/tEflfLJ5jV8s+LtLh0bWr6PTt8trHN5fmyV1YOXQ8zFdx3huwWW6mkuN/2Wush8yW1r19jzJM2PDcUMU01xcSR/6P8A6uKX/lo1Ta1r2pX9jHpfyeT5nmf6usKsrysEdJGP4iurWLR5IVjj/wBDX7Q3/XSvM7fW/wDTPOeP983zeZJWlONjeLuehaXLJa+HZtQ8ufUPM3eZFF8vl1c+EPg3/hKNY+0PH5Vjb/8APX/lpJXLKryRNIL3j6K83yvLt7ePyrWOP93FViGKPzv9Lj8393XzUqjlI9zl5YnmN9rM1/4is9Lez82+8z93ZSyfu7f/AGpq9WjiaKSP92ldVTSJz0ncz4fAej3U0eyHzZJPM8zzZPMrUvvBH2rT5LP/AFUf/PKKPbWUcY46DnRvI4P/AIQibQfEUdnq8lp9h8xZPN/5ZyRtXtkn9mxWNn/o8f2e3/1cUX7z5a6alVo46FNSkcnrXhLT5dUhvPLglh2yeZF/rK2LG/jsNLj0vS9Lj0/935f7qvPninKJ6MMMokOveKIfhVpcmsajD5t1JD5dv5n/AD0r5xvtZ1jx5rEeqa5M8scf+psvL/d2/wDu104SC3OLHVbaHXeF9ButZvo7NLVJY/L/AHcnmV69o/w+0ewk8x9l5fbf9XJ/q46mtUZz4ahzjvHHjfSfBtj9s1fUvs0f/LOOL/WSV4vqnxu8XeLdYjj8H6OkFjbyf6y5h8yST/rpTw9PmjdnrSny6HoVr4y1iW1hkuLd9PmkX95Wb5tjLfQx6pqH2P7RJS5TmlV90p614cktf9I06aTVY/Or0bw7o2nxafYyPa/6V5f+sl3fvJK1qStE5acOaoc7420axluo5Lj7L9uk8zy4/L8vy/8Aarz3WtGhtbWTVJZPscMcf7zza6qR59eNqljx/wAWXUnjy6h/s6zufsNv/q5PL/dyf7Vd98L7WH4c2t5J+71DUpP+ecf+rrtvfQiXu6nbXXjfULqHy08uzj/1n96obrxlr37vZfJFDHWMcOmY/WDDur/UP3mzULv/AFn/AD0aq9rF9lm8v/lpXZSpJEzr88TgfipLr11JHb/YZItN/wCmfzfN/tVwf2W+ihkjTz7P/pn/AKuuipG8rGlJe7c6Lw34j16W+sY7PVpPOk/dx+bJ+7/8eopQoLlFzH7x1YrjPUHU+oAKkjoASpaAGx1LQA6lj8usgPJf2jIvN8D/AMf+ujohl/4puxuP+ecK+ZWf2izD8Waz/wASu4k8zzfM/d/9c6+Y/jlFJayWNx/yz3eZHXLL4TqifPPxAv49ZtY9Q+T/AJZ2/wD1zjrj7X/WfJJVxLMm6ikv9U+T915ldla3XlXU2/y5fs8cdSWcvrUsf+s/1sfmVzt1dRxTVvEiRl3V15s3/XSrENrWxBak2+XJJJVO6ljsIfnoA7zRdGm1nT/Ms5E8ySP93F5nl1w8PmaDqkkb/vfL/dyVMl1Jp/EenfAGX7L8UI/3cnlyR1+gmg7fssP7uSCvLxnxH0GX/wAM6iGL9z/02q1ay1ynsGpHLH5laH2qSWb/AFn7utbmly59qjirNutUjrS4zldav/KmrzO63a9r0Maf66SSsJ6nbT01PTvDulw2FrHb1sTeZTMpMx9U8OafrP8Ax+Qxy1x+vfBGzv8AzrjS5JNPuPLqbEyqnm82ja94NupvtH72OP8Ad/aam0Xxa0Vr/rv9XJRY0jK5yPjj4jXX2X91J5VeN6x4jmv44433+dH/AMtPMr1KVI4KtQ4260ua6j/1nmx1NovhyPzreP7P5slxJ5ddZ5tjvvC/giO/uo/3ckvl19JeCdL/ALB0+ONP9TXDVZ6VJWO4hv8A7VD89Vf9VJ5iVySR0HTaXrP7mON5KsXWqLL+8rSmwOL8UX7f6xP+Wklc7qF/HF/y0p0zOXwnkPjjVIb+GO3t5vP/AHnmSV5TNF5t1Jv/ANTXXS0PNrnP+OIobC18uLfPH8sn/XOSvnO6l826m/3mr1qCtK58lii9p8sflx1011LJax+X+8/551Zzmb/rfMkpscXlXUf7tKyLLWqS/ZbGT79an/H1oNrcf8tqdyCGT/nolZd9f+V5lv8Au6zLI/DvhybxRqkdmn7u3j/1kle5Wvg218mPZJ5VrHH+7tov7y1NaVzOUTgfGV1/akclv/qv3lO8Gy6To3mXFxJ5vlx/6qWt6SsYHfX0sn9jwyWfl/arz95+6+Xy1rhb74c6h4j+3XFvJbRQ2f7uP/p4krflMIyPMZPM/wBX5ckXlyfvK6Dw3pa6pr0Oly/6mTy/M8v+7SNz2LULWH7dHbxRx/YbdfLji/1f3a3tB1STS5vn2fZa8j7RzT+GxrXWl2ss0l5bRyRQyN5kdZN1YXFrN5nmR+T/AMs/3n7ytDKLKN1YXVr+8+0eb/01ptr4njsP3aWvmzSfu/N8yqnCxrDWR6F5S2v7usvVPG+h6NNJZ3N5++ry6VH2lQ+gnP2dGx47fXUd1qFxcR7/AN5JJ5dXLHwlqGvap5iWccvy/u/Nr6Gc1Rp8p4ELzlc9a8J/D660vQfLi3xVveJNulwxx/PL5ccfl/8ATTdXj8/tJHsxVjifiF8IP+Eo8y4vNS/sqbR7Vv3kn7yOT935lfNd1+9r2cHtynDiY+9cb+7/AOutexfs+6pff29Npaf8g23X7RJ/vNW2Lny4flFQj+8LXxW+EGj6Xa61riTT2fzfaPK+996uF+EvhyTxR4ojkvI3lsbP/SJK4YVb0TeUb1D6K+3yf6z55a+d/jRr32q6j0vyfK+x/vJP96uLB+/U5jeu/wB3Yo/C/Qft91JeXcLy28cn7uP/AJZyNXqVjo1r/rPscf7tm/d12VJ8sjijDmicvdS/YNQm+z/6yP8AeUQ6p9g0+81Dy/Nvo/8AV/71bHLLU42+i/tm6j0e3k8/y/3l5L/z0kr0CPwRpdr5e+zjl/661jJ8kbHZBG9oulrrM0en2/kRR/8ALSX/AGa9M8210HR/s9nH5Vjbx+XJL5f8NedUV5HXGFjl7r4oeE9L8vfqyS/vP+Pa0j3SVkw/FqPVNLk1BPL0OH/lnHLJ+8k/d1tSwT5r/wBfmKeJRwcnxG/4RzXprjTobbULqSH95JJJ5nmbq774c/FD/hLfsun3lnJeap/1z/1cddWKoWpnPSrctQqzfFDxFYeOJND0Oa11W6uJv+Wv+pt/92vpS13fYbPfJbSyeT/pEv8Ayzrw8TStTserSfMfNPiLVLrWdam+2R/6uaTy/wDlnXrXgPS5tL0Xy7yOfzLhf3cfnf6ta6MTaWH5Tnw0LVrnUWtgtr5O/wAy8m/1knmVqeE5bO11DzLjzJZPL/d23l14696Vj05vljc+Xfi143m8W+Mr6S8uv9B0uRreP/pntrgbX4jWdhfR7LXz7XdH5lfVUKV4ny1efNLQ+pPBPjzwXFof9oaRdQafbyf6ySWuN174+ap4imm0PwBYyahNJ5f/ABO/+edcc6HJI9WhO8STQfgJNFfR654zvrrxDqX+s8qT/Vx11V1qmj+HNYt9PT+z4rq4j/0exrklVliJXNnH2ehN4itZvsvmWdnJLJ5leV+KJW+1f2f5Mn2qNv3laQXvXOapE9M+Hvhe60uxjuLyTzbj935cf+s8uuo16K6/suT7PJ+8kj/3aVTWRvH3YnkutaytrdfaNR1Cf/WfZ445f9ZJXI69qjeI5vnj8ix/5Z21d9KFonzs37xR83/QY7P/AJdf+WcVN83yq2uSO82TzPM8yrEd1JFD88fm1ZBejl/c0f6ry664MgbD5dU5LrT7W1kkvP8AUx+ZJ/q/3lbx0A8r1DVNPv7qT+y7OS2t/wDnnJRWxvc/eSOrNeOeoT+ZS1ABU1ABUtAD6KAHUVkB5Z+0F/yJv/PL98tZsP73wPZx/vP3kNZ/aLOBuv8AiczWtn/y08z95FXlPxQ0v+1NQ1bQ7f8AdeXb+ZXLL4TqifI+vfvdL+0J5kXzeX5Vc/osvmzeW/8AqauJZN4XiWXXvs7wyedW9dRfubqSP/lnUlnL61L5X/LP95XL3UUnk+Z/zzWt4kSKMMX7yP8A54+ZWt5S1sQNm/exxxyyfuaq30Xm2vl0AehfDOKO6/0e4k/0WuV8eWsP/CRX32OH9z51XJfu7k0/iOk+EsvlfELSY08zybho46/Rjw7a/wCg/PXjYz4j6DL/AOGdFay/vPL8ypq5T2C19vqb7V7U7hck+31j32vRxVpc1OH8UeI2ljuNn7ry1/1vmVJ4JsI4rX7Y/wC9mkqNzt2p3PSLW18qGtSOKOmcUmaVraxyw+X5dWP7Lh/gqrGEjJ1rwba6pDJHXkvjz4D/AGqGSSz/AHUnl0WNKUrnzn44+HOsaDJJJeQyS+X+782SuHk8JXV19yxnr0KVUqrROg0v4QapfwxyXEflxx/6uP8A1nmV3Hh34IrFD5ksP/bXzKn2pl7I77wv4NtfDlrax/63y/8Apn5dbX+qkrKqzpjGxoRyr5K1etYvtVRJAN+yzWs0dWpJZv8AnpWdNgcjrUsnnSVyuqX6+XJ+78393JWtMzl8J47rEU3meX5fm/8ATOKsO60byoY7j/npJ/qq646Hm1zg/G0rWtrcbP3vl+Z+7/6ZrXzm372bzP8AnpXtQVo3PksUbFiskXk7JPK8utKT979+Skc43yv3Pl1csYvK+5HWRZHqlq0t15f/ACxq1oMX76a38upuQal1ata6fJs/551w91+9uv8AVySyUiz2bwT4ck0bT4d8n76SPzK6DVNes9B87fJH9qjj/wBVJ/yzqpQuc8pnjPijxbJf3XybIof+mVVdB0aaWT+0PsM8ul27LJJ/00rrirEHVSePLq/m1DULzZF9o/5ZRf6uNab4Xv8AXNB0e8/s6ZI/3i+XS5iIwPO76X7VdTSPJ5s3mf6yu6+HtrN/aH2ykWejaX511NXXWtgv2Xy/M/5Z+ZJXkfaOafxWKOoaDdRQxyadN5UlZt1L4gtY/L8xJZpJFjrQ0jTKMl/rF/5lvb2cksP/AC28qOu+tfBtjYeX5ln+8rlr17HdQpXkblrFNL/zzrw/xZ+617UI7ez8ry5P3lZ4OpaodWLjeNjtvC/gNdUtbW8e8/1irXo1jYWsUcdm8f8AoO1Y/wDV/wDLSs6+IdSpyl0MKoxudZDFaxR+Wm+vNfFni1Zfih4b8HpZxxeZ5ckkskla0I2kXJWNibRrXXrW+juJPNsdQVo5PL/5518y/ErwHD4I+w+XNJ515/q7aWP955a/8tK7MHV/fcpzYmPu3Kvw58EL438WR6XcTeVa/Z2uJv3i17Vay6H8DPDvlvG95NeTSfvf+WnyrXr14c/unDQl+8PM/jJ8S7XxRpem6fZyPLb/ADSXHlx7fMkau++Gul6X4c8Jx2cV9ay6lcQ+Zcfvv3kjN/yzrhqUvZ0S4zvUNbxR4tXwv4bvry4/dfu/Lt/+mjNXzHY6XdeI9ahj/wCPy6vJqWDpcsOY3rvoe+aXoMOjWMdnbw/6v/nnWLqni2OWGaz079/N/wAtJaz5eeRyylyRMW6iklh8vzE/5+JJazZtejltZPs8byxx/u44v+ejV1HNHU7LwP4XWw0eS48v/Srj/Wfu60tauodBsZLi8m8qGOTy/Mrlk+eVj0KaMGb4+tpcMen6HpMcUcf/AC83P7zzK5XxJ8S/EHjKP7PLdeVDJH5ckcUfl+ZXRTopyMZV7HGzWvlfvPM8ry6Pmi/5aV6VKS5bnFO47ymupP8AppX0F+zn4DutZ0HWrx4ZItLuG8uO++7Jcf8AXOuXHTtTO3DU+eoeveG/hVoPgi6/tDS7FPt3+rjuZf3kldla3UkU3meYnmV8jKt7TQ+ijT5Dnda0aG61SS4e1SWPb/qv+WdEd/J53ybP3ci/uqzlV5vdCMOWVya1ia/uvL8vzf3lcX8VvirD4SsZtDs9n9uSLJH+8/5Zrt8vdWuGpc1axji3y0bngej6MstjJZ3Ef7nzq4vVNGh/tqPT9Lk/tCbd5ccUUdfVQ9yJ89TjzSPVvAf7N2qa9NDceII30+xkXzI7by/9ZX014d8L6X4IsY7PS7Xyo/8Apn/yzr57F4luR7uEoXicR8Xfi5a+BoI/s/8ApviDb+5sq+ftF+Evjj4g6pHqF5/odxeTeZ9t1CurDKMI3ZjiZ3qWPpLVPFFr8NNL0mTVNWjl1K3tfL/1f7ySuV8G2H/CUePJLz95LdSeZJbxS/8ALSiEfduZVJHrXiSwtfDlj9seTyvLjb/lnXmOveLbzXo5I7OOOKP/AFccv/LSuK95G9XSJwN1oN1Fdf6PZveTf9c/9X/00+as26iktZJN8clevGVoni1KfvEdr4c1bWY5JLO1eXy4/MkqHym/j/5Z1NzlHQxTeXUn7vzI463ILX+qh8zy/N/7Y0Ry+bH5db02QNl/5Z0eVH/drrloBzN1qng2LXoZNQ02SWG3/wCPj7N/qZKK2NNT9so6tR14h65LTqACn0AFSR0ASU+gApPN8qgDy/8AaCikl8B3mz/WSba5e11mS60Gx2f6zyf3lc0viNIo53QbCHRrW+1C4k/i8yvI766m8Ua9eapb/uq45/DY66Z8u+PNLktdU1a3/d/vJPMt64/w3pceqapHG8kkEfl+ZRE3kbXhfw5N/wAJlJcPHH9nj/eVseKLD7BN9nf975lVcg5O+iW6sZv+elcfqlr9qhrWkRIoxxSRTfJH5tXPNrpID5vaj/llJQBuaXKth5eyOq+vSyX/ANok/wCWklagHg2X7B4y0OPzI/J86P8Aey/6uv0s8G6ot/oMOySOXy68bExtK572Xv4jqLW1/fRyeXWhdWvlQ+ZXJY9IrU96QFWaL/ppJXK+JL/7BH8/+poO2kzn/Dug3XijUI7i4k8rS42/eRf8tK9U0XS/sskf/LXy46s0lI6SOKOpvNjiqjki+Uveb5UMlV/7ZhtZv9ZH5lbHRCDmY/8AwnkP7yRJKI/Ful38fz3H/LOo9mdEsKzB1T+w5Yfkmjl8z/WR/wDLOuN1DxR4X0uSS3Ty5fLk/wCWdbWOulhHIw7r4g6Pa+XI8dEPxB0mWH55K19kRVwbgTf29Y/89P8Av1Juqrdazb+T5iSVhL4jllRuTWuqQ3UPz/uq6bw7fr5McdTOdonPKPKdNNaxywyfu6zZNGaWHzKyuTcxdU0bzZq43VNL8rzP9ZFJG1bU37xlc4HUNLWX/plN/wA9Kx/Fmlx2tjHJ/wAtI66qfxHn1PhPnf4leZYWupb5PN8uvn6veh8J8ni/4hs6fL++j31oR/vf3iSP/rPLkrnILHmySyeXb7/LroLWKOK6j/6Z/vKgDLuovNmk/wCmjVqaD5cUkkn7z/WVUYlEfii6j/eR/wDTPy6p+F9Lh/tCOS88zyY/9XFS+0ZHReIvHl1a6hdR2ezzI1/d+ZXB32vTapdSXEt1JLNJ/rJa3Ocq6fYSX/mW7/6v/WV6l4o8R2vhfwna6HZxp50kMfmSVvTlYykryL3w18JQ3/mSXkMf+kL+78z/AJZ1aupbH+0I9kbxW8fmRyf8s5K4ZTTrG3L7tzxHxJti1i6+z+X5cleleA4pIrHzEk/c2/8Aq/8AppXRIzPRNLiWKP7RXRaXax/2f88knmbq8yRkXv8AXVaj0uG6j+eTypq5qlS0bHbhIc5pQy+VayR2f7qPzP3lN+aL92/mV5vMfT2Kv2r7L5n2b91VH/hHNF/4+Hh82Td5nmyVpTMPiOo0u1h8mPyv3UNXo4v9Kjk8z93WEdJFmxJt+wyXFec2vheS/wDivH4suJvKkt7do47b/tnXdRkedNe8dBY+XFHHGkkfk15v8ZPhLqXjzXv7c07ULb/Uxx+XLWtCfLW5iZQ5o2PA/Emg6p4I1COPUY/KuP3ckflyVl6prOpap5f2y8e8kj/1fmSf6uvp+bnPFlAp/wCtj+0PHHW94D1m18OeIrXVLizkljt/3kcVEo3jY1jI6DxZr2qfFW+jt9Ihklt7f/WeZWf4d0HWLDWI9Lt/3V9JH/pEn/POOua9iz2CawtYtF+e8fyY4/Lkk/56Vw/7nS7Wa4SP9zH+88v/AJaVhS+IxqnL3WvSXUMlvZx+VcSfu/Nk/wBqvSvDvgjTb+Szt9P/AHtvp9v+8l/56XTf8tKqq7RIpRvI9GtbWPRtL8z939q8mP8A1f7uvE/iVdTSzQyXF15sf7yO3j/5Z1yUvekdtVWiec/N7V0Xhe/tdGjm1C4/eyeS0cde5E4znfN83zJP+em6pI4v78cdWTI674X/AA5k+I3iiHS/O8q3k/eXEkf/ACzVa+0tFsLPw5Y2ul6XH9jsbePy446+bzKvzaHtYGh1NT/W+Zv/ALtU5olih8z/AFv/AFykrwD2fskkcsN/HJG//LPbUOqSwy2Mdvp0cfk2/wDyyoMzB1rxHp/w+0eTXNUm8qOOP93H/wAtLiT/AJ5rXyfrXjL+2bq61TVJpJb68k8ySL/Wfu697L6XU8vFy5pWLfhfwb4k+IMkdxpcMmn6THJ5cl7X0D8Ovg54d8G2v+jwvqF9/wAtLmSsMXi05WJoUGj0qPbLD8/7ry65vXvFs0U0dnpcfn6lJ/q/tPywxr/z0avEjK0rnr8pzOg/DTS9Luv7YljfVdck8y4urm5/5af9c46yfDvxk0vXvGV1Z2drd/Z7O3kk+0/89GWvWpL21M8/Ez5NA0fRrXxvrF9capZyS+ZD5n72seS61zwRr0dxZx3dn5f7uOWS1/dybq2jKxyWvE6i617WvFunw2b/AOpjk8yaXzP9ZVrQbCPRpvM8z99HJ+7l/wCWkdcNU6aXvGlJL5sPl/8ALOsWP4fWcs3ySP50dRTn7xdWhzxKfiLxRH4N0uPS9O/4/pF/3q8z/wBb/wAtPNr36GkT56vO8bDv+W3mPVyxitZb6H948XmV1HnSPZNBl0Gwtfs9vdJ5O7/SIv8AnpXF+PLrw/f30f8AZ3+s/wBXcSx/u465qUPeN+b3bHE311HFDJJ5n7nzK878ZeN5Lr93p0nkRxyf62OPb5leobU0cb5dFB1n9AEdWo68w6CWnUAFPoAKfQAVLQA3zaPN82gDy/8AaG3f8IPNb2/+uridBi/4pe1uH/dfu/Ljlrml8R0RRzfii68rS/sdvJ/pUknmf9815Ta3/wBqsbrfJbWcn/TX/lpXHP4rG9M+d/Ekv9qap5kccfkx1gx2E1rqHyf8tG/eURN5G1o/2Ww8WfZ38yWTy/L/AOBeXuqn48la/wBak/ePU3IOPmuvsslZcP8Ap8kkflvXTSIkY8kU327/AEiOi68u1hj/AN2SukgseVJ9ljk8ur2gyx3V1JG//POgDWhiX7V5f/LH/V/6yuf+3yS69Jb/ALvyf3lagZfmyWv2W4TzP3dxH+8r9KPhfryy6DpsaQ/6yGOSvPxqtG562Xv4j1yxi83y5K1IbXza8+x7RDdWH/TPyqqzWskVZAVbqLyq4vVNGm1m6kjoOikzptF0uPS7WOOuqsf3UP8Aq6szlIJNUhsIfMlrk9e+Jem6X50fmebJH/yzqjqpU+c4u6+MjXUMn2P91/10/wBZXG33xBmupJJHmuf3lbH0VDDpEcfi37V+7SOP+H/lpV6HXvNjj3x+V/20rW56EqSG61qnlWskkU1ea6pqknl+Ynl/6z/llVWLpJQObuvEf+sjeR5fLrF/4SiOK1m3xvXcclWakYcnjyaKH55EimjX/VUf8LuvrCOSRJv9YtTKl7x8/iansyxY/tKxSxx/aZpJf+ecf/LSNq+gvg38X7XxbffY45LbzpI4/Li/5aVz16Fonnxnzn0VoP73S60rG182SvKuTcy9atVi/dvXmuvWsct9cVVN+8ZXObvrVYv3nlpXD/ErbLY/J5fmeTXpU/iOOp8J8n/Fidbexvo4pknj/dx+bXicde9D4T5PF/xDe0vbLN+6keWtSGX7LqEcaSf8tP3lc5BsWtrHa/vP9qSrknnRWsm/y/O/9lqAM2O18rzJHk/fVsaXLH9hkkqIzKMPxRdR3Xl+V+9qrpfmXXmR/ao/9X+8835a0+0ZGDqF99qk8tP3vl/6yWptL0abWfLj/wCPSH/nrJXQc512j3VroN1a7P3/AJdSaf4cvvGWvSaxcRx/ZZJvMkrGpLlCKvI9s8N/Zbq+8v5/stZ/xC0vTbDS7zUPJ8qby/8Ad/eV5Eal6x3cv7m581/LdapHv/e/NXsHg2wX+xf+eUkjV7sjzjutLij86GPy/wBzXQWsVeZIyMXw74jXxv4ivo9OuI/sOn7Y/N/56N/z0rvvKkltfMeP99JXm11aVj38DDlGwxfu/Lf/AJaVM9cHMe1Y4nx5ql14c0uS4s5I5ZJJPLqTwjdTapp8NxceZ5kldVM4/hO80vd+530XWqWsU3lpInnVhLSRZatbW6upPn8uK1qG++y+TqEiXH7u3Xy/Ni/56VrSZx1F7xxPjLxRD4c8D3V4/wDx9eWtvbx/7VeT6L+0Pq2l3Xl6jpttqEP/AD1jr28JQ548x59WtySscD448RzeMvEl9eXH/LRvMjj/AOecdc7/AMto4/Mjr2uXkPPlI9O+HPhDw3LoP2zxBsvLq8m/dxed+8jjWuL1rQZr/WryPSNJuvsPmN9n/d/8s6zjO8rGkYl7Rb/XvC8f2dP3X2ySP/Rv+WkleoXXhfUpbWa8eSCz8uPzLi2jrmm7Fmx4b8Oal4y0GGP7ZHFb2beX5Ukn+srl9U1m18JTXkl5Gks1v+78qSopfEY1Th9H87VNUm1S4j826j/1f/TxM33Y6+kvCelx+CPDenxvJJ/q/MuJfL/1n/TOpxOkTqw0byNSSwWWOO4uP9DtY/MkuPNj/wCWdfKPjLxH/wAJH4kmk8v9z/q4/K/1flrWGD96RpiVaJkf8taSOKSX/lnJ5ckn/POvcieeTQ2Ekvl7IXl8z/pnWtovg3VtZuvs9vp8n7v/AFnm/LVkyPqT4QxeGfhz4X+x3F8kt9JGsl9/vNXoX9vWd/5clveJ5P8Az0r47FQ5qlj2sDX/AHdy1Yy291H5iVVupfN/eV5p7P2Sj9qm8uPfH++2/vKk0G6uvJj1CX/j1+b/AFslBmfPPxu+KFjr3i6z094/M0PT5v8Al2/5eJKz/Ems+C7+TRdP0vRX1y+3L/qv9X83/LOvqqX7qnc+fnLmrWPqrS7X7BpdnZ21rbWdjbx+X5UcdSebDF9+b93tr4mbcpH0dOKRzPiL4g6Xa6heaOl1H/aUnl+XHLJ+7k3VXtfMlj/5aed5n7yu2ULRuY85g+JNZmihkjf/AI8dv7z/AK5153pdhpv9tR7I49KtbiaP95/y08uvZwy9nTPCxM3OpY9G/wCE8h8OeXGkNtLa+T/rfL8uSo9Y8ZXXjLS5NHt45Irf/WfafM/1dXKFiKdS8Q0/7DYWNrb29mkUlvH/AK2tb7V9qhrzKp6VL3S1DF/rP3n+rpvijS9Y1nQY7fSI44ppJv3n7zy/3dYU4+8eg58sTx/xJ4X1Lw5fRx6j/wAtI1k+0+d5lZccXlTfJsr6OGkT4ypG8rFqOL/WbI5K0tPi8qHy/J/fV1HHIueb/wAs/LeqeqXUdr+8uP3X/LSSuilD3jHm96x434y8WzapNJbpH5Udcr5XP/LTy/Mqz16aD/tnRQbn9AdTV5h0E8dPqwCn1ABRQAVYoAKhh/1n+soA8r+P10t14Tvo0/551wul6z9v0HSbd/8AlnH+8rkn8R0U/hPO/GWqSRX2tao8f76OTy4/Kr5117xHdX+oSfu44rWORY45f+WnmVx1NTtpoy7q1X/V1yeoSyRXXzx/6ykORlw6y39qSXifuvLk/d+V/rKLqXzZJJPM82T/AFlBBn6xu8uGse6i8qH/AFcktdEGOx2V94I+36DY6pZ2cn7tV+0eXJXl+qXS+d5fz+ZHJXQZ2sanlNdWPl07RdL/AOJxYx/9NKsDc8SeZo2nzXkcn76OvPdFv2/t6GT/AHpJK2lqRIm8UXUcUMdv5cnmV9ufsq+KP7e8D2P7z/Vxrb/9tFrzcb71G524OVqx9WaDLJLa+ZXVWv8Aqa86J7xNJFVeT97QWQzWH+i+XXN2ult9qkjesrGtNl7ylikrxX4tfHhvDl9Hpehx+bqldNL4jqpUeeofMfjj9of4lRax/Z+o2b2dxW94XsPE3jK1mkvNQfT/AC5P3kcsbeXHXs1IctOx04StyVOSZ7ZY/sta9deA7fXLPVo7uGSHzPs0cf8AyzrN0v4Gapfw+YmpRy+WqyeXFHXmch6NLMY1JS/r9Bt18JfElhNZ26Seb5k3l/u67L/hQ/jKK1/1P7yRaqn2O2eYU6Ov9fkcbrXwlvNG8y3uL67+3SeZ5cX/AD0ptr+zn4o1n94lncwR/wDTX93Wl/eOeeaxjT/r/I5nXv2c/EWjapHZ6jsgjuP9XXXTfsW/ZfCMl5LeT/2xHH5kcfmfu66eY8irmKcYr+vyN74P/s3aDpfhO81S8sftlxqG6OPzfm8ta+ZfG3wW0vRvDvjC8eSeK60++aO3tv8AnpHVRfvHiV8Z7aWh5j8P/hpHda9JqElnJLpsf+r/AOeclfVnwR+H0MV9Y6h5flfvP3ddNWdonpYLDulR9oz6o0uKOLT49nmVraLa/wCskSvnbe8ckjmfF1/9lkk/d15vqF19vmkk/wCeknmVlb3iZGT4o8y10ua4SPzfLWvI/iFrzfZZpPL8j/nnJXdSl7xz1JWpnyL8WL9YvLs/+en7z91Xm9r/AK6vo4L3T4yq71rnSaX5nlyR/J96tS1ihlk8z/Wx/wDLSsQiXvtXm6h88fmx/wDLT95/rK1NQlWW1k/eSeTG37uXy64pGsUZvmx/9sZK0tQtbqKxkjtpH86kUcLqks0X7x/9ZUOlxRyzeZeSfuf+WkUddsdDml8R2Wi+CIbW6jvE1D93JWtrVh/b2oQ6Ppf7rzJI44/K/d1vf3TDcLrRodLvrXT0k+2SW/8A0zrvtLtfKhj/AHnlQ+X/AKquOu/dCkjtNF0vyrWP/wAh1578d9ZktfCklu//AC8V5eH1q2PTqK1E8B8O2El1dLs2S175p/8Aq4ZP+ef7uvop/CeFU+I6a171wvxM8eWv2W60vTrz95G3lyeXXPCPPIUFeVx37OcvlXWvR/u/3nl19BQy/vo5PLkrxcav31z6fB/CXrq1h8mSSqvleVXlneU7r7LL/o7x+bHIv/POuB8D399qmtSfbJI/Jj/eRxeX/DTpv3TnqP3jvIf+ef8AqqvWNh5XmXj0WvI1uUdU8ZeGbWx+zyX0ct15cn7uLc1ee2PjzT/CXhH7Hqn7qS4uvtEn7v8Avfdr1qeFZ5E8SvaXPJfjB4y/4SjXvs9n/wAgezX93/00Zq4P/W/vK+ioU7U7HFUdw+X93vqGSVYvuV1GB03gP+zbC6k1DUZJPOj/ANXFHXbaL8Qf7e1q30+zjeWH/lpLXnV488jWMzU8qz0u+/thI/tl9H+7jkqxdeI7rxHDHbySeVD5n7yiUbxsZ2tqdl4o16z8OeG49L06ZJfs8Mfl/u/9XXmOl6XY+KL6T+1/3vl+ZcXHm/u4/lqqSFJ+6Hw50az/ALeh/d/6DZ/6ReeV/rK960u1j16GO8/5cf8AWR/9dK8/HTtE7ML7xwPjLw54++IMl5Z2/keHvD/mSf624/1m2sux/Zfm8vzP+Eigi/56RRWtFOuqZ1ey5y1N+y/axR/8ha7/AOmnmWtSaPFH4SsZNLs/+Pf95H5vl16OGxKqHh5hS5OVEP2WHy/LT91/01ip0MUcX7v/AFVWeaVY7qTS5pJLeTyvMoj1S6sPLkt5Psc0lYyhcs9E8L/FprC18vUYfPjjVa3ofiXpN/8AZ98k/wC8by5Io4/3ny15dTBtn0FLGpU7f1+QQ+PLG/1SOz0u3kvPm/eSy/u46w/2jPiR/wAIR4X+z6XI/wBu1Dbbxyx1yU8O/bHdKupUT5HtbW61Ty40juby4uP3ccfk/vK+rPg/8II/h9aw6pqlqkuuSQ/9+678dW9nH2Zz4SHPI9ctdektfvx15z8Wvi1a+A9Lj+zxpeapeeZ9ljkj8z/gUleDQpe2l7M9bE1FCNjwv4e/DTUvirqkniDxBeXUUNxM0nm/8tLiSvfNa1S18JafD/yyhjh/d+Z+8kr16y59DyHL2cTl45dS1m1ks7eSD/SF/wBbc/u6ozeEpPC8dreazeJ+8k/5Z11xjynl895Gh4yi0XXtBj1Sz/dSRw+ZH/y0rz/w79utZLy8+eK1kk8yOoKO20XxRJdahDZvHHFa7fMkkk/1kldla6zaxXUdv5n7z/2WuCvSuephsSomD8RviNa+CLWS3t/+Jhqkf/Lt/rI68Zsfjn8SPt0cdvq0n+sby4/s8ddVDD2iZV8SnI6jUNZ1DWb6PUNZvE1C+8tY/N/1f7uiG683y98ddsVY8UmjlWrHlNW9jC5DJLH/AKt5Kx9e0v8A4SOxkt0kk/1f/LOt6YR92R5HqmlyaNffY/tnm+WtU/8Alp5f7yWanN2PTpnq3hf9n2+17w3NqGozPp99Jt+x21zRXE8YjuhhPdP2rp9ZEk0ctT1YBRUAPooAKfQAvmVTmloA8v8AjlF5vgnUNn+u8uvL/DcsMuj/AOs/fRwtXJP4jop/CeO+PL+6i0W4t0m+xzXE3l/vf9ZItcndaXHpfhOb9z/rPL/6afvK49z0YI5HVLXypLi4eP8A1klcLql1HYX32y8/e/8ATKkRI5mxuoZf9H8zypPmkjirW8ryqCCa10abXrW6t7eP/Stv7uuNjl/fSf8ALL/ln+6q4M2sexaPL5XhGaz8zyrjb5flS188zWsn2qT93+83f89K7RVFY7LS4obW18u4j82bbXUeE/Di2tr/AGhcf664WT7P5VWc5xfjzWf7U1iazi2S2+3/AL+SVx/heKSXUJJH/dxxr+8raOpEiHxRdf8AkT/V17p+x74o8rXrzR938P2i3rKrT5qI8NK1Y/QrwPr0N1axxpInk+XXcWv72vBifVGl/wBdKkhioLJoYqw7q18rVPMelYcGNvrX995leY+PPhBp9/YzXlna/wClSSL5nlf6yStaXxHpYapy1D5x+IXgj+1LH54X+3afN+7l/wCWke2voj4K+N7HWbqaz1Szjivry38u4/d/u7jbXZ7fn0O7MsNzU/bQPqL4e+TpdrDpdvs8ny/3f+61Gg+DdL0a6vI/s6fvJK6+Q/P415UZSJta8G6XLqmm6okf7z/VyV3Wj2trFJ86+Z8tVCl+8sc9etUqU7nnPxA8GaTrOu2N4kefLkWStSSKH/nnWXs/eNPbSnTOL8ReHLPVNUsZLiFJ4Y5PMqr8SrqGL7ZH53mw0+UUptyijhf+EosZfh7p9xbyR+T80f8AD+7r4h8WeI4fFsmvaf5k/wBhuLqT975n+srCL94+gy3B+2lqHhPRv3MdnFG/kx19FfD+1hsLXT7eniZ2ifYYmKpUfZo9itbpfL+T/lnXRaLL9lsZP3f+sri+0fLSOL8UeTLNNH5f7mvMf3l1qk0nmVlb3iZFHxlti0uOOvnf4gayv9lyRx/uvM/5ayyeXJ81dVKPvHn13amfI/jaXzdekj8zzYbeNY65vyq+ogvdPkJO8rndafatYaX9ouf3XmR/u5aLWXzYZtkNchpEtWsvlXUcf/LHdW5qH+p8vy/KrikdUUXtP8yKGO4eP/rnFWXql1JLdR2//PSTy6RBl6xYLLNDpdna+b8v76WqN94ck0b/AEfy/wB9HXbLQ5pfEe4eEdLh8OfBHUPtkdp/a2oSLqEcv3pLeFf4V/3q8b/su6l163jSF4JrhvtFXf3TCnqenf8ACLyfbre88xP3e2tq11TT/t32N7yPzpF8yuOu/dOmlE7zRbX9z/pH7r/nnJFXhv7S0vlahHG8NefhNcRY9OurUTgfhfatdap/zy8v955lezaLFH5kfmf8tK+in8J8zU+IwfiF8QV0bzNL0797fSL5ckv/ADz3V49WlCPLIugrxuew/s53Wn2t9q32y6SzmuPJ+y+b/wAtJK+jtLlj8v8Adf8ALOvBzBWlc+jwfwjpJVqnqF19l/5Z+VH5deGd5zOqS3Uv7uzkeWOSOT95FXrXxk8G6X4S8D+AdLSx826+xtH9t8vy5vLWuqFP3TjqP3jzmP8AdeXW1ffbpfC+sfZoX87yZI46KavIOY+edQ0a++1R/wDXP95J/wA86mml+1WNnZ3kMd597zIpK+rhY+YqJ7nkusaDqGl/aJLi18qPzKzfN/dyf89q7YO2hpzXG3Uv+rj8utbw3o32/UPn3+TTGdVNo0n2WS3SRIvMaSOOrXgnwv8AZY7yNLxJbr/rpXnTnyyHGJ6t4T8G2v8Aq7vZLJJ/zyqrrHg26+3SXFv9mit9sn+r/wCWca1lGd5WNJq1O5wN1FJLJ+73/wCs/wCWda0NrDYR/Z/3nl+S1xeeZ/q44VrrpI5pP3Tnf7Uk8OeE5rh5I/tGqMvl/wDTSOu88L/HPQfDnhGGzuPteoal/rLj93+78ysK9D2kS6FXkC+/aRtf3cenaLJ/10kuv9ZXvnh3zNZ8O6LqF5D9kkvLOO4kj/557q8THQ9nse3hKnOaWoWElrpc15+8g+zwtJ5lfOt1ft9q/wCuldWXpo8zM/eqRRYji82OpPlih8t/3VeweAc/dXX2q6kjT975dEMUkU0n7upjK5ZN5skUMdSapqn2/wAuNLeOzhj8unzpkxi1odl8Kfsv26G4vJk+1fvI7fzf9XurxX9pDxR/wlHxKkt7ObzbHT18uOsKcF7Y9KjJyomD8NfG/wDwhGsR6wljbXk21o/3n+sj/wB2vsTwj4oj8W+G7HWEj/d3Ef8Ay1jrzMyp80faHtYGXLIyfG3jyx8EaXJePs86OOT91/y0kavk2OLUvih4oj+2eZealeTVrlVJOPtWRjKjlKx9XaPFHoP2HT0kj+z2cP8A37rzXXr+++3alG8z+XJ/q6dJc1Sxw4mV4mfa2F99ut5JP+PWu+0/4c32s6DHeXEyQRySfu7SX/0Krqy5TjpxvI891C1uLC+j0+3k82aORo5PLroo/L0HQZv7R8v7RHujjjqDY5uSWS6kkkf/AFcn/LOuk0uL+wdBkuEuPNvpI/M/df8ALOoqamUU4nO/63/SPMeo4/8AlnJ/zzrupytEynrIb/y2/wBXVr/VQ+ZTkrCN7R/BGtX8cdwkPmw/9dKryfupPnh/1fmVj7Qr2YeVH5clx/zzj/eVw/jzxvHa3U1npf8Ax8f6uSXzP9XXoUzmpe/I8pmtf9+WvQvAcUPw58SWOqeK9F1D95Gslj/zz/3qxrux6dM+lrHxHp/jKOG40u+ttQj8vzJP3nlyRtRXzbgz6KFRcp+lkdSV7h5I6OrdABRUAFPoAKjml/uUGQlJ5VAHkvx4uvK0eSP/AFsMnl14ndX/APZfhG6k8t5YY4Wk8uKuGr8R6FKXunk9rpc1/DJJ532z93+78395XM69f6pa6XHbv5nnRt/zzrhuekcvfXU11feX53lWv/LOOvOfFGqf6V5nlpF/zz82OStzCfxHP+EYppdekuE8z+Ku0k/e/vKBGp4Hl+y+KLOPzo7PzJPL82Ssn4oeEv8AhEvFElu6232W4WSiL946IFix1SS/sY98if6vy/8AtmtcjrXhyG11j5PMi8z/AKafu66DCR33gfwvDFa3lxcK8t1H5flx/wDLOs34qeN4dL8zT9Lj/fSV1037pzSPF5JWluo9n+s8yus0vRllhkjijT93uk8zy6KRkef61dLdapJs/e1oeB9ek8L+KNN1BJJP9HbzK6yab5T9Lvhf43k1TQbXUE/54rXu2l6pHdRwyRf8tFr5mvHlkfYUp80bnRRy+b5clO8ysjUtRyrVfWLVfL8zy6ocSG1ijlhp01r+5qom55L8QPBCyyfbPL/c15PqGgyWF1H9nk/fR/6uiOh9fgaqlR5TuvAfxf1zwlfXUl5JPqEMir5cVeheEf2oGurq+/t+xjtIZGj+zyW37z93XdTqWPExeTKrK6/r8Tpo/wBpHwvLqEcf/Ew8n/np5ddD/wANGeDrXy9+siL93/crr9rc8Cpk8v6/4c5DxJ+1L4Si8v7J9q1CT/nl9jkpsf7Uvhe6tY5Psup+dJ/z1tay5yo5LLlt/X5nA+PP2lrrVLG4t9D0WSzvv+WclzXmfjL9ofxZ4osfLSPT9PupF8uSWKOnE9vDZOo/1/wTxG1ik0G6mktJHimk3eZ+8/1m6o4/3VVKNj3+T2Z1ng21/ffPJJL/AM86928IxSaX5cjyR15ld3PJxc1KR6R4Xulv5vs6fvfm/wBZXeTeXFa1NNnz9X4jyHxtrMNr50fmebXD6XEss3mVna8jKTOR+KmvWthaxx3EieZHu8v95Xyb8SvFv76b95HL5cf/AD0r1sNB8p5OOqLY+e7q682StDQbBr+6jr2Nj5c9ctbCHWfBv2N5PKm/1kdcL5sdhDDJ/wB/K5qjudcTotHsPsunx3n2jzfMk/541cvovN/5aeVHtrjkUTaXL5sccfmf6utqOwsbC1mvLiOOW+uPM8uqAwbr91NJ+7/1n/LSOse+8z/WPsl/6610R1ic32jtNP1S6+I2qfaNR/daTp8Mcdx/zz+WP5Y46m0Hdr3ii1keFLO1k/1fmf8ALPbRL4jA67Wr9dLmuJHjjltY45JPM/3a4H4aRSeMvG02sXk37y43eXHWFXa500PiPfrXzooY4/tH7zy/L/eV81/tGay2s+KLGPy4P3cP+tirz8DC2Iud1f3adiv8ObBf+Ph/M/1NdJ4u8W/2Dpf+hyebNJ/rP3dfUxl7tj5+avI8jk877V5if8tJKI/L/d761p/Fc2NzwP5n/CZaDH5n777dHJX2haxfYLWH/nnHXzmZK8onsYN2jIh839z5dGl2EOszR3DyP/00i8vbHXg2tI9SUrxuYPjjS5ItQjt7fy/JjjWPy4v3f3pK9C+L3ijRdU1TQbe3heK40e1+zyeZdSV6vJ+7PMlV94z7Ww/1e+prXWdNv7WS38xJYf8AV+VRHQqRj+KL/S7DRbyS3hT/AEeH95Xzb4u8Rx+HJrWPy/PvvJ/eV7WFXu3PAxKvUON8WeKP7Z8mOz/48Y65e61T93JH5dejKXNqEVy6HWWPwq8RSw2OqPZx6fY3kf8Ao9zc/u45K9M+HujaD4cj+x6pNPqEn/TOPy493+81eTXxKlTOuNFqR9ZfA39nP4b/ABBjs9Q/4QvU9V/56XOqalJ5dewfGrwH4R+DfwR8TXGh+HdI0+a4t/s8fl2sa18rUxHtKh7UIWPh2+1n/hF/h/pvlzSfbry1jkj/AOekdedw69ql1ayRvfXPlyfu/wDWV9RhFaJ4eMd6gQ2sl15knmR/9M/Np2qWuqXWnw6e8n2b+1PLkuP+nexj/wCWleha55/P7x5n4iv4de1STZvisbdvLtf+mcdU45Wrpi+aJrY6Twn4I1rxlfWcel6bc6hHHdQxySeX+7j3V97f2M1r5Nv9s82Ozh8uP93/AHa+ezKXvHr4PU5H4jX7f8IPffZ5PKm2x/8Aj1eBxxeV+7fy/O8uSnganJTscuZU25XOg0vRprr95bRxyw+WtGteZaw/6z9z/wAtK9ClVUtDw6tFw1OX/ef9M/Lqax8z93J5laCuFra3l1qkknl/bPLbzPK8zb5ca1avvtF1HHb+T+8kqfhiEVeQ7xxrP9jaDHstUihjh/ef9dlr51a/kuPmlbzZrjzJPNrbaVz0MMuSNj0j4Z+DdN16+s7zV5rn+ybeRfMji/1km2vqqS/sbDS4ZNOktPsMcf8Aq45NsccdeRmeFdSJ24TEezkfKPxa+IzfEHxd5f7v+y7NpI7eKvTP2c/AckVrdeJLmP8A1nmWdvJXdf2GE5AqPnrcxra9qjS2skdv/qfM/eeb/wAtKw7qX7VdSSf9NPMkrOlG0bHmylc7jwv4I/t6b5/+PeNf9bL/AKuuo8Wa9Jo1r5dnqEGn/uZPM/d/8sVrzq8uepdG9JctOx5XY3Wly3Ul4n/bTzaxdQv5tUuvM/5Y/wDLP/lnXeZmt4d8OQ6pJDG91+8vG/3q9W0fwva+F9P+zpM8vmf8tJa8vEyvKx6GGVtTz3xxqkN/deXZ/vYbfzP3nl1x9enQ/hnnVJ80h3/bTzfL/wBZ+8rS8L/2bLr1n/a8cn2H/plXRLUzPcpNU0uX93b3lrF5f+rjirznxl4jW/1SS3T/AEyOPbHJ/wBdK8ahH95Y9KvL2tM8h8eePFsI7yz06PyrqSRfL/6515n+8v8AzJPM82vojipU7RPSvBvheSw1C11S8t/I+z/vLe2/6aV69/wkel6lax2eubJbGT93JFJHu8zdXJVRVKfNIw7HQfAvww8TR6omufY7iRf9HikkorznTvqz2OY/W6rFdhgS1NQA6ioAKKAFmlqOOgyH0yaX93JsoA8D+P115Wix3D/67zvLjrxXxl4os7D4cx3HneVdSTeXHXDV+I9SlD3TlfBPl3Vj5lvJ+5/6ax+XXD+ONe8qa8+0fZpY7dvMkkirzbnceU6h4j82GOTy3ltdtcHrF+11deY8flV1mE/iOm8LxfYNP+eFIvM3Vreb5snybPJoEEMvm3Ucif8ALORa7j43Wv8AwkfhHTdUt5I/Ljm8zzazi/eOiB5T4Ruo5da+x+Y/7xfLrqNQ0ttUuo9kfmzV2GEjN1rWZNGhmt7fZ50n+sk/5515DdX8l1fSSPW1N+6c0ia18z7VW9rX/Eh8NyeXI8VxcVrSMjz2bzJfMk8z99U0MXm2v7yOus5Kj5T6S/Zb+KF1a3UPh+4/7Z196eA/EcMtrDGleLjo8sj6jL581G56JY3Sywx1eklWvOPWDzakkuvNh8t6ocSraxNayVoebVRNzL1SJZbXy6818XeEvNkkkSPyvl/1tEtD0sJVcJcpxf8AY0n+r/5bVV+yw2ta2sfUe0fLckhsFlmj/wCulXJvC80U3yR+bW8NRTcTP/sGSK6rLvrWSL/rjWnKVGceaxk337r/AJZvXM6p5MX/AF0krWJtG8Tkbq682GOOo9L0ttUmj2Rv+8apqzscdeVz1Twjpf2COORJH/dyN5ddxa3/AO5/1deZUdz5Sc+aR6R4Dlj+yxyV1HijWfsulyVMGcFX4jwHxRqn2rVI4/3laX2qHS7HzP8AyFFWlNXkc0mfOPxW8USfbvLkhjl/5aRyy/N5e2vlHx54lkv9Qkt4pvPjj/1kv/PSvosND3T5jHVH7Sxx/wDzzjruPC9rDL5cn2X/AFf+srpqaHmHVfb/ALBDHG8kn2e4/wDIdcrqEq/vPueTuaSuC9zribmlxR3VjHs/5Z1aur/95H/oflTf6usJFHXeE9B8qSO4uI/3P/PKo/FF0ss0klvH5Xl1QHD+bJLdfJD5XmSf6uqd19uutah0u3s5Jbq4k/d+X+88yuilrE5vtHVX10trosPh+3kk8m3/AHl9L937RJW5oNha6poOpahcSeV9jjj+zxf89KJfEYGb8WL/AFC18J2OyRIvtDLHJXpXwx0v+xvB+mx38aQXm1fLkj+7Juqaq/d3Omh8Ra8RfEuz0bzrdI/tn2df9ZFJXy/8RPEc3i3xRJqDx+V5n7vy/u1nhYWqXHXq8+h33hfzrDw3qF48flfZ4/Mrh7q6mv8Azrz7P/rJP9ZXfF+9Y4LXkQ6Dpc2vapHb20nlTeXJJ5taHizw5deHJrW3+2eb5kfmSf8ALOu6n8Nybmp8JbVb/wCIWgx3EMd5++8ySvfviN4ovtL+x6XpckfmR/6zyq8XHK8onp4Z2jIk+HOg6xrMMeqXk0n2q4by44pZP9XHXslrayRQxx+Z5Xl14NRWkejGV6Nz59uvFEmqahq1v/aUcsMd0v73zP7slbl14j8P6p4yms9L+2QXGl+db3X2n/Wed5le9yfuzyJfEdtfRXGqQ+X9qubP5vM/d03S9GhsLX/R/wB75jf62WvNloelI53xldRxaXNInl+ZeN9nk8z/AJZ18s+PNZbWfEkknmebDGvl172FX7m54lVXqHOzRV0XgPwa3i3xRpOh28f7zULhbenVlyU7mtKPPUsfa37SHgjxB4j1jwnofhfQ7vWfLj/eRW0P7uOnfC/9jzxBFrVrrHxHutM8HeH7Ob95aS3H7ySvkKdTmpn0lWioyPqS6/ab+Dfwvsf7L/4Syxj+z/u5LbT/AN9Xif7QXx48P/HjQdF0PwpJqHlyX3mXEstj5cckdZU8O1UOfnsfJPji6/tnxxdfY45IrX/V/wCr/eVg3X+gWseyN/Mk/dxy19hQVonz+Jd6hoaLo3+nWunv/rLhftF1/wBcVrgfF3ihtZ8RX15bzSfvJP8Ant+72/6uuymrnHye8c39kj/56JXQTeDdc8uOT+ybvyf+vVvLrOT5InTY+vPgboN14N+EOm/bLX95J9ovJK6K6+MnhuWOOT/SYpJP3cf7uvmq8vayPTpfuwsZdN8UaLDceX5tjcRyUWvhfSZZvs/2GCX/AJZ+bLXJ7Rw0R3zpqtG5011YWsWnyR/ZbSL5Vjjk+7J8tfN/xWlk/wCE41aO3/49/Mjrsy+q5VLHmZhRUadzl7X97J/z1/d1sWujTRaXHePD/o8knlxyV9CfLXLUN/Ha2Mkf/TT/AFv/AC0qbwvpeoap4k/0e1k/56W9TX92J1UleRsfGjwvpv8AYNnZvM8WqXk3+kRxf6v/AK6V4PJ8KptB8SLZ3EiS2O3/AFkXzSVjQq+0jc9CS5ZWO2sYvsv7u3k/cx/u465Pxl47utB0+40vTt8Ul5JJHcfu69KVqkdTnhG8jl/CfhK68UaxY6PZx/vrhvL8yvrjVLWx8G+DY9LSSPybdVjj/wCWfmV5mLfMuU6ebljzHA+VdX/lx29jJL5n/PKiPw5qEvl29vY3PnSf9O7VnGdpWMowue0eG5ZPBGjx29vJ9smt4ftkkcnyxyV86+KNUvPFHiK81DUZE8z/AJZxR/LHHHXHQjz6s2rLl0KcMXlSeZV7zZIofMSPzf3ddxzntnw98OWOgw/bE8uXWLiPzJPKk8zy1arXjL+0NU0W8s7O4js45I/+Wkf7ySvn6sr1rHsUo2p3PNbrwlqlhD89v/00k/eVy/2X/npXv0P4Z41SHLIj+bzamtYvK/eJ+6m8uuiOpmdd4R8GzX81neXkf2OGSTzI4q5X40azofhf/R9Lj83VpP8App/q64qEf9osa05fuzwOSXzZJLh/9ZJ+8kpa9Y6Iu0To9L8b65pf+j/JeRyeXXs3g2wXWZo49R/df89KwqoxjHkkdl4o+FXhfxvo8cn2V4r63/5ebaSivnvrLWh7fIfp9HVxK9U5R3m0+rAsUVBkNp1ADJKgoAf5tQyS/uayKseG/HKKGKxk33kdfJ+vX9rf6pHHZyfuY5P9b5deDi58srHr0l7pDdazDo3mR3k0kU0leK69r1xfw/6HdSfZ5JGjki8utaVM1ucvayzS+Z+8/wBWtN0/QZrqbzLiOSKu+xidFql0sUnl1Rhv4f3kf/POSlyAO/4SOOKvUPhna/8ACwdF8QeG7i6SST7G32eOSsnH3TWk/ePHbWwvPDniyazeN4po5PL/AHn+sjr0LxJf2vg3S49QvP8Al4j/ANDohrIUtDyO+uo9U8y4k/1klcrqH+g/cj8qau+NOxwSNj4f6NNdahJePN5Vrb/u5JfLqr8Rte82a1s/k8mOvQjE5pHM2Mq+X/q66bxFarF4dtY7eTzf3n7ySmMyfDeqX2japHead+7mj/5aV96fAf4qyaz4b024uJI/t22T/VyVz1Y89M9nL5/vD6U8O+KGl8mN5P3Mn/LWuytb/wA2vmpI98dNdSRVetZY5fLqrll77KtVZIpIvM31sdFNlOaKqM0Vc5tc5nWvCX2+bzLdfLrznUNGvIrry0tX/dtW0T6DCV1Ey5LprWby3/dTVch8W6lFD5fmef8A9da6abPQk1My5PFF19l+ff8A6ysma6muv3n/AH7rYIxSOb1TzrqT56xbrS7qX/ljc1pF2On2qiXtB8B30snmXn+hwx12Fr4cWw+5H5HmVzVXc+fxdZSNaG18r935flU7zfK8vZ/yzrhPFPQPAd+0sMmyT/VyU34ra9JFpflpH+8rPlOKprI8x0GKT/WP5kt1JWH8QvGUdhYzbJI/Ojj/AHktehCN5HHVd4nyH8SviDJaw+XFJ5skkfl143J+9mkkfZ96vo6StTsfJ15XqXI7WL/VyV6R4b8mLw7HeJH9puvMkjkk8zy/lpTZjEx9Yuo5br/V/uf+mslU/t6+T5b75ZI2Wuaxvc3tBv44o7WN/M/0dZpJP+mlQx38Ny0l5/x7f9dJP3kdY8vvCPYNL8u60uzuLeTzY7hY/wDlp5clc74uuobWSOz8v95u/wCWtRqVKRwOqeKJtL1CaO3hj8yP93XqHgPwRfRafJrHmRxatcW7R2vl/wDLNW+9JXdaxw3OFsbC40GaSO8keWSRpPMrsNUv49UsbGzs4fscMc3mVgM4nWtUuviN4yj0+33y/L5fm16xJfw+EtBs9Ps/+WcP/XTy615A5veueX6x43hsNtvbxwXkkkjSSVxtrpd54t8Vw2/lpbTXH7yqjFLQUnfU+orG18G+EvC/9n2+pf2rdRx/6R+7/dyNXF/EDVNN8UeF5tkf9laTpa/aLfyo/wB5Ju/d1OGVpHPPU8PjlmsLqSRJPK/5Z1DdStL5n2jfLdSV1mh7ZdXUPhzR9Nj8L6bJ50kKx/uo/wB5JNXpHwl8EapLov8AaGuR/Y9S8zzP3sdePjKvuyiejhoe01PaNL0b9za/aLr95/z08uvEfGX7UtjFJfafp2hyeXHuj+0yyVwYOl7SR11Zcp4v4HuvN8L61J5b+d5i/vP95q9s0/4aax8JdUk1TUfLluNYuv3l3H80cf8Ay0WvZkrRPKv+8OujsI7/AMu4855f3n+sqxNfyWGnyR28deZex6FP4Tw341a9eSw6TvjST/Rbi4+zf737uvB45fKh+z17VDSnY8+q7yHfNLN+6/56V7Z+zna3mg3114os2j+1Rstvay3MfmRx1lX9yjyjpR9650nxA/aW+JGvXV1b/wDCXXVtY/8APPS4/stHhvwvfa9Yx6pq91d3kkn+rkuZJJPLWvA9nyHo+055GlH8JbW6kkuPt0cVr+88v93UnijXpPC8NnZ6RJ5sklK95GtVchzckWj2F1HJLePqE3/LTzI6m/feN9akuEkeLSdHs2kkk/3a92nLlPCn7x4zrGszXU11eeZ5E0n+s/56Vl/8869TmfKYxm+Y9C8B/CrxF4jutF1CLTf+JPcTLJ5tfY1rF+78u4/deW1fP5lUXMe3hIXMf4jX82l+E7rZGk/y+XJXhtrE3kx/u/30cn+qrkw0+aJli42qHvHheKOw8N2NunlxfZ7X95/10rB1TxHNda1Y2dnN5Ue5fMlrL2Z0SxHunpV1+9h8uWOvG9e+Es2s61NcJqVtL9ok8ySKuTBT9lK5piaXtYnM6p8INYih+SSO8qbXr+GKPT9L8vyrrT/3d1HHJ+78yvq6VdVpXPmquGdHQz7WLT7qaxt7z/nn+8lk/wBX5n8Pl17p4d1TS9G0+OTTvskXmQ/6R5Um793XBjJc8rnRQfJGx4T8VPFEes+PP3v7qx0+OOubhlkv7qST/lpcN5lb4anyhN85R17xHa6Xo8dukcf7zd5nm/6yT/ZryGaWS/vpJPMf943+q8yvXiuaVzOmvdse8fs++A/KsZvElzD+78uS3ta9G1T+x9Zj8y8uo/Mj/wBX5kn7yvCrLnxHMdcpcsbG54N+y+F9LurxJIIvtH/TT95tWsmx+L9rL4k8vVNn9l+Z5cdEqVznp1TkfjB43h1m6t7ez/df8s/9Z/rI687tZZP3mytY0uQiU+c6rwvpceqTXEl5C/kx/vPtNWte1Szlm8uzhtooY/8AWeVVWtIzNLwjpc2s+ZHp3mRR+Yslxcx/L5deyWtr5UPySSS+X/y1ryMX71S57GEfLTsec/EzxbHf3X2fTpPKhjb/AEj/AKaba4XzfeOvWoK1Ox5VeXNIqzeXTof3UldZwlybxlqHhfQf+JXY3Mt95bSRyxSfu91eB6p50uqTXGoyT/apP3kklz80km6nHQ6qT5YmlN4S1yLS47x9Pk+zyf8AfysmGJpZI4/JuZf3n+r/AOWlayj1OuMj3L4f/CqxtbWHVLy8T+0o1aSS2/59/wC6v/XSuq1TwlqWl2MMj+ZFYxyeZ+9/1lRzGRDpd/fWE0ckV5JH+8/56fu6K4vYHRzn6wR1cpHQO8qn1YE1OqDIKKACoJLVaAGyf6usPXtU/su1j2eX5klZG1jwH41X8P8AwjflvN/p0n7uvmXWtU02KOS3s5PNupP3f+jR7fL/AOmlfO1489ax69Je6eV6xa/Zbq4juJElmjk/1v8AvVw+tX8d/dR2dnH/AKxv9bXpUmZ3OosfCX9lwyb5vNuqveV/yz8yOumwjk/Ekt19qkjeR5Y/9ZHWP9q8qSs+cCv9q/ef6yvQvhL4tm8JeKNN1BLp/Lkb7PJ5X91qylL3R0n7x13xq8OLpfxM0nWP3f2fWI/Mkij/ANX5i15z8XtZa/8A7N/1fl+T5dFDWRVXQ4f7fHaw+Z5klYt152qSeWknmzSV68nY4ZHVSfZfCvheP935U0i/73mSV5rdWsl/qHmeZ++kauiMjmkTWsv2W68z93F5f+rrqPFkv/Eh0+TzP9XTGZel+X+8/d/vv3flx19JfCWw+1x6b9n8yPy4/L+zfu/L8uuerLkpnqZfH94e/eG/GU2g3UdneSf6P/z1lr3Lw3r0N/DbyfaK+ekj6Q6S1ljuofM8yrlrLJWNyzotPl/c06b97XUXBleaL99UM0Vc50XKfl1Vm0tZfvx1tE2pzcSnJ8PtLlj8vyay7r4QabLH5ibPMrWDOuOLcTH/AOFQWv7zfJBLJJ/0zo/4VLD/ABySf9/K6jSWMaHf8K502Kb/AFKT/L+8qndeEtLi8v7PDHFSk7EfWnI5vXtLuIpI/wB3+52/6yqMNh5v7yuaTuck25BDYLWLrEq2slcxkdt8Ob+Ow0uTfHJ5cnmSVxvxG1Sa/vo5POki/wCeddHKjj3kc7daz9g0eST/AFUkf/TSvmn4vfFBV863/wBVDu8uOKvRoRvI8HGVfZxPmu+v5r+68y4keWjypvJ8z/ljJXtRVtD5ecr6mtpejXH7u4ih83/tnXSWNrJYR6hZyw/6z955sf8AyzauaozeJzt1debD5ckNZ/m/8s3j/dx0WKubGj/8tJLf/nnU0n/IHuri3/651FveNDuvAviua68OrD5nm3Ecn7vzPmjjrJ8WazNYff8AL+1f8s6r2RyykU/h/wCHJte+1ag6p9793F/z0kr1DS7rVPBuoalJqnly2txa+XYxeZ/q61qKxjc4+6uptZ1TzPL82SRq3PGHhe68K6H9qePyvLX99/0zrkNTyHQdeuvDmvWeqWcknnbq6KPxlqnii6js/nvLq8mrp5g5fduezeA/g3pfhfS/tF55eoa5J5n/AE0jt9tWLr4c2vhLQdW8QPIl5fXDf63/AJ5/9c6+cljWqlv6/I9SOGvTucj/AK3/AL+eZXN+NrqGw0+O38z95X0dJWkeFueezeZRDLJa6hHJW5ofW3gPw4sXhvRdUeR4r68tVuJP+BV2k3xB8M2t19jvL6fzPM8v/V/u/lr5p/va0kerSl7Gnc2P+Fq+DbD93/wlGn2flt5f+kyV89337PFnf315eJrzz2NxNJJHLFH+7k3V14b9zIxqy5ji9Blm0u18RaXb/wDP0sf/AGzjr1K6+LWqeN/Btnp95q139us9sflf8tLhVr1aqtE86/7w1NF1m+tfOjuI5Pssk3mR/wC7W9ql1qWqQ/Y7aOSWx+XzJfL/ALv/ADzr5+bsezT+E8X+Mn2rVPLkt5PKsY/9HklrxmTb9q/66NXvU9NDy27yPoL4e/CXSZfBsf8Abmmpc6pcfvGjl/d/Z466aOyt9Dsl0Wwh8qzjWSNY/wDerya9Vzlyno0o+7c4nWNGtdL8ZWf2iT/Qf3cn7yvStF17T9Zjjjt5PN8upqe8RTXLIuapr1vpf7vy/wC0P+WleT694tkv76SRPs0X/TWO18zzKyoU7yNcTU5je8J+CJvEdrJeahI8Vv8A6z/Ro66Sb4fXWqQx6Hpc1rZ6HqDeZJ5kn7yNa6akuU5qdPmMP/hlCGL7/iL/AMh0f8Ml2v8ArE8TP53/AF61f9orl/r/ACN44Ncx7loug2ujafDZ2cflQxw+X5VXo4o/O8z95/38/wBZXh16jqyPThD2Zj+MtU+waD5lx/rJJl/dRVwsnxB0+KOS3/sl4pJF/wBb+7rvy+PNE8THTtUOf8N/2hrN9Dp8d9PLN/rP9ZJXqnhf4czRTfbLySSKaObzK2xf7ozw0faxO0166ji8v/po1c/5q/8APTzf/IleJGPu3Ppor3TN1rxHDYTQx+d5V1/rJIvM/hrg/CMVjr3ja8jeN7yOTdJ5VethpOnG54eJftKli18WtBjtb612QpF9oh/1Vt/yz21x9jdSRafdSf6rzI674w543Z5Nd8krHAxy3Et1cSPJJL5k3meZV66lkitY/wDVy11p8plflPK/Emvf2pdfZ7eaT7PH+7q94J8L3XjLxRpuj2ccnnXEn7yX/nnHW0qns43Omn8Vj6m8US2vgjwjoul2ckH2ryVj8qvN9eupL/y9kif8tPMrzqS5/eMcTLllYbDFD5P+rqjNLDYRyb7zyv3f7v8A6aV2x1OSmzg9e+IMn9qeXZ28fk2/+srL/wCEyvLqaON5PscPmL+7ipy947Yx5T1rQdemitbOO4muZdHkb95bf71dhNFoMt19oTTY/wDln5lYTVpGYWviPUtLjk/s6ZLPzJPLk/d+ZW5H4t1jxHHNbpslm/1cf/XNq5Z0ebUqFbl0ON1TwveaN+7uI/8AtrFWTJa+VJ/rJP8AV+ZXVBW0OPm5pEP/AKMo8qOL/plJWwiS1/0/93WhqmgzRWsdxeWsnlxtH/rLX93Tloa0nzxKtr5kX7zzJIv+uUlZs1hYy6p/aDw/6dH/AKuWtZS/d3LjIvQyySzR3D/8s67ixtW1TQY/+JlJ+8j/AHcUn7z93XHzHQY8lr9lk/137n/nr5f+rorT2hpyn6wR1ermNwp9ADqljoAfRQBFN5lQyeZQBk32s/Za5fVJft80kj/uoa5Tpgj5r+MmqRxa1J9n/wCPG3hk8yvl3+1PN+5Xk8t6lz0/snM+PLqGw8m3uNk91J+8o8G+HLWK6jvLj91NIv7vzY/9Xur0zAtahr0Mvlx6d5f2WP8A4+Kq2t1JL+8eN6CzBvv9KmkuHrD1SX93/wBtKqIpGT5scsPmVseHbr7LqkNxcSf8e8kcn72OpkhRdj6I17zPiN8ObPUEh83VNPvPLkij+Xy468F+KF19luo45KVL+IbV9Y3POZtUklm/e112gxR2sMmoP5f+rr04wPNOV17WZtZvv9IjrNh/56UzImtYv9Kre1S6+36X5fk/vI5P3f7mqAb4X23WoWP/AD28zzK+vvg/oNraySSXEMHnSeTHXHjNaZ6uXxvI96sfBFr4jsZLf9350cknlyxVzOn/ANteA9U/s/VJP9XJ5cclfP2Ppj1TQde82HzE/ew11EOqebSA6LS7rzYY5K2a1NabCk8ug1KvleVRHFHQWaEMX7uqr11wRlUYTRf6LJWbJ5ldAU2U5oqx9UtVi8zZHUSOmJxt1F/frJ/5bSf8sq5zeRVupf3PmV5z4yupJbqSR6iMbnDNcp03h3VPK0GOuF8ZeMo7D9483lRx/wCr/d1rTT5jzalRI8b8efEtorGbZN5vltH5f7vy4491fL/iLWbrXtUmuHkkl+aveoUrHyWMq88jKrf0f/SrFo12SyR11yOGJ1H7ywsbf7PJJ51Q3UX+g/aHh8q6rg+0dZzuqSx+dHIkPlfu6xq6ImMjX0uXytPrQ1S6WLwbDZp/y0umkqY6SF9k0Phr5kt1eWaf66SFvLj/AOmi/dqro+jXGqXXl6p5n+s/5a10xOZnoHhH7DYahb75JIrG3q54y1mO/uvMSR/+mdc1Qn7RJ8Obq1i1qaS4/wCef+j/ALuofjl4ytZdPh0uOTzZLj/SJJf+Wf8A1zrkjG9Q3ps8Njl83y40/wCWlfSnwX+HMnhy1j1S8s5P7Wkj/dySf8s91PHVOSnY3oUec77XvG8Og+ZH5f8AaF9H+88qP/V/M1V/FGqf2z8P7y48vyvtEPl+V5n7uvnKdB81z05YhctjyX/Vf8tPN8yuP+IUv2q6t7fy/K+zrX19M8A5OH/WfPHXReA/BsnjfxF/Z9vIlnN5MknmVpN8sRxV5H2l4X0aG1sbPT/M/c2cMcf/ADz+7XhusS/8TC6k8mSf981eJgfeqSO3Hfw4lrwv8NPD+vTSapeQ/wCsuP3kUkn7uOqPij4c+IvEesXkekalHF4bk/0ePyrj93XVN+znzGVJ88Yo8jvvt3gPxReW8ciSzW8ldx4d8ZSeKNQuP7L0W00+48uPzJK9aUuemckqfvHp3hfQbi1kjt/LeW18zzJJZY9vy1311rLaDoMl55P7m38yvk6k+aoe9CNqZ8z/ABC1mP8AsWTzIf8ATribzK4XwbFpcXiix/teTyrHzl8yvo9onkbyPrj+1LW/tbe4t5Eit5I/3f8Az0rnb6/s/M/4/o/Jk/5aeZXz9CNqlz1JS5TjfEkU2vap9oj3/Z5P3dvXXaDpcmjWsdnFGksn/TKuowMPxt4ttdB8zS3kkivvl/dRR+ZVWbwRqml2sN48aeTJt8uPy/3klaxlaNjnlK8rnqXheLVNZtY4/sf2OOSSOPzJZNvlrXo0ejLpc0dun+pjj8uvIqyvI9LDR5ZXI/Kkim8ypo/9FrmjoenFXCb97Tf+2f7ygi55v8Xr+SKOzs0m82bzGuI4v+mdebx7pf3j19RglajY+Ox2tbmPWPgjo3/H5rFxs+y+X5dv5slemXV1+5kk/dxV4OOly1uY9zAtKnynG61dZm+STzZKteG/3sdvJ+78ndXKerc8n8eWrX/jjVt+z/WRxx+V/wChV7Npelw+HLXy7OOOLzP+ecf+sr0qk06djyaV1Wucz4i8GyeKNa+2favK/d+XJ+5WvOfippepeCPCMlx51t9quLX935X7z9237uumhV6HJjKPvcx5LoMXlQ+W8iVV8ba9/Y1rHGnmfapI/wB3L/zzr1vsnBH4jgbX975dfRnwD8LroOg/8JJcR+bdahG3l/8ATOFawxL/AHdjSGlS5N4i1m41nVLy8eTyvl/1f/POseH/ALZ/vKypKxyVtalyT/WzR/8APSSuJ8XX6y/aJHm/d2/+r8qOugKS9655vY2s1/dR26Q+bfXEn+qr17/hV/8AZdjD9otfN1KNfMraEbG9SVjBute8UaN5dxc6T5tr/wBNY67zwP8AEG6luvMvNNf/AKZxeZ+7qZGUo3O2vvGVrdTXX/Et/eeX5f72uVk/0Xy/+WUm793XNKXvE/YCa/8AN8vfJ5s0dHy/883iroOblHafo39s6hHZ28ckt1J5nl12Efwl1L7LHcJJbSySL/q5a4sTiFRlY78Nh3WjcteEfhzqEuqQx3FjJZ2scn/HzXqE2lx2vl27yPeRxr5ccUteNicSpH0ODwzpROTuvg3oOvR+Z5l3pV1/rJK43VPg3dWE3yagn/bT5fMrowmMexz4zDOMbhovhfR5bX/TL6CK6/1cflVn+bDo11N9skkvPL/d+b/srXobaHixbcS1p+l6Hr3mR2+tRwXEf/LLzKKrQ21P1QqWmdA+n0AOqagB1FADJKp3UvlQ+ZQBy/8ArZJJHj/651x/xW1mPw54RmkeT/Wfu65Ttpo+C/it4t/fXWnp/rpG/wBIl8z/AFlcDp8v/LS4j82uGmr6nf8AZOL83/iafaPL/c+d5kfm/wCzV6+166urqTZJ5EMn+rjrrMCbS9BvpY/M+xyf6z/lr+7qb5v3kf2jyv3dBZTuovKtf3kn+rjrj9Ul83y46qIpEdrLJFTv9bN5ccn96qkjKTseyfCvxHNa2s0byPLHJ5f7uuD+MGgt9uhkTZFDJM0kf+7WVH+IdNTWjc4HS9GWKbzLyP8A1dN17XpL+6hjT91b16cZHnGTN5f7z/np5lR/vJaZkXo/3UdaFjKsun/PJH5nmVQG54JsPN8SW8jx/wCiyV9cfDmJbW1sfs/lxSf8tIvvfu648TrTPocsjeR9NeF9L+yxySeWnlyVqeJPC9r4osZLO8/7Zyf8868Ox7R43D/aHg3WJLO4/wCWddpovij7faxyWcnm+X/rIpKyA77w3r32qH/nlXZQ3Vajgx00v/TSpo7r93QdIf62iPdFQWXrX97WlJpcktr5lehBHLUZRmsGihqjdWv7mrCDKN15dczrX72T/WVEjuicrff885I65eb91deW8dc5vIzdUuo9Ljk+5F+7/wC2deI69rK3+oTb5o5Ya6aUbnkYupylq68UfYIbiO5k8qO3t/M8373mV4n4k8ZR+ZNeXEiRR7ZP+unzV3Qo+8fO16jR4L4o16TWbr/WP9lrHjl8qvWhofPS9+Q2SX9z5e1K0tBupLC6kkT/AJaR1MhROk+3/wClfP8A89KdDFHf30f7yS7/ANZ/erg+0dZzeqRTWs0lv/zzkrNh/eyfPXRExkb3h2wW68yOm6xu+w29un+p/wCWf+9Uy0kL7JT0vzrq6hjt/wDj48yvWrrRr7S7WOO8jT923l+b5f8ArK6YnNIbDdfZYfL/ANZN/rJKy77zJZPMrmqE/aOi8ExQ/wBqSebv/dw+ZXC6pdQ+KNU1K8/1Ucccnlx06Ub1CoMk+DejWeqeLIftn/XS3j/56SV9CXWst4csY40kfy5G/dx15eOXPU5T0KFTlPPftU11NNcXHmfvK6jzfsvw5kt/L83zFq4QXLc4ZTfNY4WbbFqkdu8kf2r/AJ51wvjjy/8AhJLyPy/Nhjr0qZJl6Xpcms6pa6XZx+VdXEixx19BaD4Stfg3/wATy00m68QalHN9n8uOninaJrSV5HvUMUl1awyeX/x8L5nlSf8ALOvDfEUU0Woapb/885q8fA+7UkdOO/hxONmluov3iSP/ANcq9E+GultLDNI/+ut5K9LF070+Y4sM+WUUeC/F7978Rte/6ZzVY+GfmfZb6SKT/lotOMuWmbSfvH1F4Xulv9Fj+z/vYY/L/d1R+JWsr4c0uO3+yx3n2ySOvnKceaoerzWpng/xGtZNZ+w/Y47aW4j3eZJUPgPwB4f1S1vP+Eluniuo2X7PFbSf6yOvo5u0TyKesj1bxdr0cuj29vZ3X7uRfs9vH/zzjrh4fssV1HHcyJ5nmf8AbSuCnG2p0SlzHtF1qkMulw6emkvZ29vGvlyyx1y+oao0WtWun2/mRX1x/wAtf9XHGtQambovw5sf+Eukt0k82TzPtHm16d4o+IOg+F7XTdD07Z4m1y8by4bKKTd+8/2qiTtKxnGF43O68N+HLjS7Hy7ySOW48z95/wBM6p+LvFtn4Xvo7O43yzSQ+ZJ/zzjrglG8jqjPljcsaDrMOvaXHeWf+p8ySP8A66batf8AbPyvMrmlod1Kpcb+8l+5/wA8aqzRRxf8s6CrnxH8VNeurr4oeIJPOf8Ad3kkcda3wzlur+GSR5JJfL/d/va+spLljY+TxWseY9y0X4g33hzw7DpenRpHNGzSSXP3vMjrY8I+LdQv9U+z3nlxRyR/u/LrzsXh+ePMdWFq2qcpuQxfarqT/llV6PbF5cf/ACxjrxD6K5T/AOEN0211T7Zbwv5Mn7y4/eVveb5s0caR+b/zzj/5aU+e+go0rSuU/wB5537rf5f/AD1/1deU/tEeF5ovDseqXGpR/dj8uL/nnuruoL95YwxiXsuY8d0v91DH+7/1cdYPxK0FbX+ydQlmfzLjd5n/ADz+WvovsnzcfiMXwboP/CUa9Z6fbyfvriTy6+otelh0bQbXR9Pk8qG3hhs/Mj/2fvVyYl9DTbU4HULqzimhjSTzZI9v2iX/AJ5yV0HhvwRda953/X1Hbx1pFWOSWupj+JLWTwlYyWd3/wAha8Xy4/3n7uOvPbHwbqnjy1kj0jy5YY5F+0XMkn7uOrOikvduepfD34S2Pgj7dqmoyf2rfbf3cn/LOOqevX82qah9olm82ST935X/ADz21VCfOKvGxk6pYXV/os1vb/urrb5kdcbpel+LNG1SOz87yLX935n8UdVI5ozuesaD4j/sGSbfDHLHcQ+XJH/tVpa94tk1TRfs/k20U3mL5kVZSh7xX2Dj4efM/d1chiaX7++tAsekfC/w5a/ZZNYvI3ik/wCXevRrX91H5aeZ+7r5HGTdStY+owUFTo3NT955fl1D/wAfUMe+vOkmz2Iv3SOOKuD+K0t1+5s7eGfy/L+0SSf89N3/ACzr0MLJe0sYYxqVG5y/gPwldeLr64/tH/iX6bb+X5kv/PSui8UfD61v9aj/ALI/4l837z7ZbR/NJ5f8LLG1ehOrapY8Clh7xL3hf4X2tr9+b7Z5f7zzZLeisfrTO76qj9GPNp0de0eUSUebQAebUtAE1OoAgkrN1CXzYfLoNSn9l82P5P3U1fLP7VXjeO/msdD/AOW3kySV59f4TopfEfGfjKWTRpI/tH73zK5++uvKj/1n8NRH4TskUdP0a61nUPsenR/6VXrnhP4fTeF7qxjt5o/t1x/y0/56bqJMRufFrS/7B0uxjfzJbq42+XLXkOobazplGX4sl82xtd8L+ZG3l/aa4nVPM8iP/ersoaCkGn2v77zPMq59l826+0JJJVXMzvvAcs0U0cfmR+TJ/q/No+N32rS9Uj3/APLwvmR1NP8AjXNJfwzy3+1LXy/LvKJrD+2Y447O8/0r/lnFXp00eVIwb6wutGuvLvI3i/7Z03+2Vijh+zx/6RG1bDLlrKssPmXEb0Q2vmxx7P73mf6usSz0b4VxWN1qkP2iOCKGSby/Ml/vLX1J4Di/4mk0flpFDHJXlV9D6bLfhPqLw3+6sYd9dRHF5sdcEn7x6cjifiN4SXWbWP8Adyfu/wB5Xjc1rdeEtU8tLh/JrOSMDptF8eTWsflv/rI/+WlepaD4oW68v955vmf6z/ppRYqJvf2ovpWha3VB3U5Gpa/vauf6mtIllzT5V86ugjuvKrsicNdXMu6lrJupasKaMG+l8qby653VJY/O/wCulRI9Ckjh9Q/ezSfvKyZv+elc51xXLE8v+K3i2Gwhkk8z/R7j/R46+e7rxHNdX0d5/wAu9epSVqdj5nHVFKRz/jzx5/oP+kTSfd/1cleI+JfFt54ik/eN5Vv/AAx16FBWifLYmXMYlJHW55wtdDoP+ix3Uj/8s/8AV0Fl77V5X+kPGn7yrWgyw383meS/+j/6yXzP9Y1c5Zh6pKsuoXUn7z95M3+trMoNTpfDt1DFpd1v/wCen7us3VLqSXy7Og5zY8L6DfS61DHbyPF5f/LWP/WV7B44lWW1t4/Jk8yP/WSf886d7SMJRvUucr5vlTf9NpKj+y+b5fmyf6ysyrkkN/Na6XqVmkn7y4/5aR15rDa3UVrJ+7k8nzPLk8v/AJaVpHQmJ7F8IfBraNayeINUj+xySfu7eL/pnWt4iv7q6vvtCR/9c4pZK86rrWuVz+6Zd1dSReZJW58ObWS/8SeWn/PGSjl5gidVr3w50XS9L1bWPnvNcvJvM8z/AJ5/7K181+Mt3/CSX0b/AOs8yurDe+FR3kZdrfzaXdR3Fn+6mjk8yOWvWPhL4817xH8TPD9vf6hPPDJJHHJHXRVp/uzWlK1Q+wJJVta5XWolijvJEjgl8yNq+epRvI9LGfwzwG68u1uvL8zza6rwb4otdBtdSjuN/nSR+ZHJX0XLzHzXOeUzWtj8QfjJJHcRyWdjeM3mf8Bjr0STwlpelyf2fp1rHFH/AM9I/wDWSf71clVXjY9WD965qSeN5PBEMNvaaT/atx/y721WvHHiO6v9U8y4t5LOG3ht5JLaST/VzVyUo2qXKryvTsc7oPw0uvFtjNcfbEi+z7ZI/N/5aV2nhH4c3WgwzRy2qS3FxJ/rP+ea1VWdy4R5zoofBC/ZYY7ezSKOP955kn/PSuZ+Jngi6tdFm1TSNJtf7c+WPzYtv7uuGjOUalztnTi42Mn4X+X4c8Lzah4r16Oe+kb/AFVzeK3l1yOi/FDw34c8STXmqTSXnmQ+X5sVezKF5HBcy5PjxJF48k1Twvpsf2qSH7P5tzH5nmVtfCmK68OX154kfy7zXI7zzJJJf71XTo2OeTufSHwv8b33jKPUPt80f2iOOOTyvu/erhfi1pesS+LL64uIfK0eTbHb/vFrzZUXCtcj237ux03gnxboul6DZ6fcahBHcf6uOui/tnTdZ8yPTr62vJP+eUclefXw3Kevgq6dGx5ffeI9Uv8A9oWx0ezvrmLSbPTW+1W3+rj3eXJXL/Hj4q694S8RWOl6RdfY/Ms/MuPMj/eV1YenetFmdepyxOLutGh1S6+2XGmxy3VxtkuJfLrc8L6NDYWsn2ePyoY28zy/J/1jV70tZHzsp3NiHb/B/rK2vCMXm6peSPG8trGtctd/u7HRhqd8RzHoWixeVH/y087/AKaVeutvk/PXykpe8fZU/hK+n69Yy3Umn+dBLdR1qeb5U0P7zypv9ZHLW9NhHSI2aJYrXzPLjl/5515X+1d+68O+F47iR/MuL6TzK6qEuaoYYvWieD3VrJLYzR2//HxJH5cdcDded+8s7zf51u0n7r73l19IfMUSxoN/qGg6pDeadN5UkdfW02jXVh4T03+1LF9c8RbVk8qL5fMkauXE9jWEbniOoeCPiFYaxNJcWb6fDcN5kkn3o6+hPBPl6Do9xZpdRy3H+s8ySTy/MrOX7ymRtI+ffiBr2sfF/wAf/wBn2dj/AKuTy4/L/wCWarX0F4d8Jab4c0uO3s7GPydv7y5/56baxkrnXD39Tl/GWsr9uj0vTpLaW1t445LiWKP/AJbf3a5O62/6yvQpK1Ox5FepzyIKf/qvMj8vyvM/1n7utOU5osr/ALzzvL/eeZXo3g34X/29o/2jUbi5s/Mb935dcuLqqGh6GEpOcrlqb4GahFJHImpQXlju/wCeflyV31r4cj8m1/0WP7LHH5f+rrwK+J5z6DDYZ0zYktbW1tfLt4/K8ui18zyY9kdeZc9cdN/tyJ+8WjzVl/ef89KwNQk/dfvPL/6aVJ9qj8797H5vy1vTAh1SW3tdLmk0uH95bxxyRx/dj8yuD8YfEXQfhrHpsmvzXMV9qkaySR20e6Su6jH2pzz92JqeDfiX4b8bzSW+h6lBeSR/vJLaX93J/vUVvPBu5jCryxsfoPT69k8AsUUAFPoAdRQAVQ1CL95HJQakMkvlQ1+e/wAaL9te+MHl3EkkVvb3H+jy159f4TopfEeO/FrRvsuqf8fn2z7P/wAtfM8yvG7q/uPt15+8/eeZUx+E7JH0N8JfsdroMf2e1jiupP3nmf8ALSvTNB+w694yj1D/AJbaXGslZSYjmfjpFeaprWgxpD5sf7z/AFUf+r3V5P4k0GS1168jSTyv+mVFMo5fXrWaWGH/AFlczJYTRTSR+XXXDQUhvlSRVLU3MzufhzpcmqapHsvEg+z/ALyo/wBpyX/icaLG8ccUn2fzKun8VzSX8M8Jmikihkkqra38lhJ5lv8Au69emjypHZWviiO/hjs9UuPNsf8AyJHWLqmgzaX5kf8ArbHb5nm1QyGGWTyY40jk/d1chupIv+elYlnq3w/0uO/8G3X7xIpo28ySOWP95Jtr6U+Gd/Jqml2sj/66RvLkrycXofTZb8J9KaDE0UMMf+qh8v8A1Vd1p8X+rrzZP3j05DdYtZJYf3clec+IvDkd/DcW7x1pJGB5jrGgzaX5kn/LHzPLo0HXprCSP995U1FionfaX48m8n/lnLD/AM8q9G0XWYb+GPZJWZrBnTWN1+7rU+X/AFlaROwbDLHVqG/krsiYzVyrNf1k31//AHJKsKaMW+lk/jrk/EUs3/PSokdlJHN3UsnlySPXB694jk8maO3/ANr97XOKrU5Ynzv8RvGXmyfZ0vo5ZI/3fmV5DrHihdGtf9ZHPNH5n7qvYiraHw9eo5SPKdY1m616b7RcfvJKzq9WCtE8KUuYk/74qOpIH+VVq1upIofLTZQWalj5ktr5nlv5claWj2skUc2zyIq5yzHupWv7rzPLoktf+/lBqWrHVFtYbq3eH93Iq/8ALOq9r5cuoR/88aDnPZPCP/Em0H/iXQ/vpP8AWS+XW5Ha/b476O3hSWaueo7SKjG+pV17w4vhzQZLy8/e3FwvlxxVn+B/DkniO+8u48z7PHHWpyXM3VJbH+2JrPTpPNht/wDlnTo9Z0+LT5NLezT7du8z/tmtaS0KiddqniNb+1s49O8yKOP95+8rLhlkluvM/wBVXny1lcrk90q3V/HF5m//AJaV6d4R0b7B4NkvPLT/AEhZJP3X+s8usqk+QInDySyXXlxvJ/2ylryHxtL/AMVZfSPH5Xmf8sq7sN7pne8g8L6DDrOqfZ7i68qGvXPAfhLRdG8XaLcJvivpJvL83zP4q9Cq/wB2EXaofWE1qt/H8/mfvK+b9U1TVLDWNSt/tkn3mjj/AHn/ACzrw8NG8juxlX92c/8A62Py/M83/rnVXzfKj+fy/Lk/dyV6vNynj8hzsfhzVNGurPxRZwx3klxujji/5512Wn69qUVra2erxpFrlw37upkrysejB+7ch8L/AB90vwHDJJqOiz654mjuG/1s37uPbRp/xahv7qbWNX0mO2tdUuP3cckn92sIxtqTUlfQ1r7456bYWskenWMcU0cn/XSOuVuv2jPF1/ax2/nWtnax/wDLKO3qJUbnXCXIcLqnxL8ba9dSbNS1D/rlFJ+7ps0Wvap5ccsmoS+ZRKMI6md5OVh0Pw08RX/l/wCgyf8AXWWuih+C11F/yEb5PM/6ZyK1XGd5E3Ou8G/D6z8Lyf25qk3lWtnH5lee2vijXNU177R9u8r7Rcf6uKuvnsccXc9m8pov+WiSzf8APWmzSyS0qsU5XPPu9jQ0v4fapr2g3GoW/l/Z4/M/dyf8tI61NPtZPhVdfaLzTfNuLiH93+8rz6jUzupTdONin8Rvi19ghk1Dw/orxeILjb5lzLHG3l7awfO8O+PNL03xB4rh/wCKgjt/Lktov3da0qahKLNa9RyiUf3nnQ7I/wBz5lbEcX+gx/fimrqjrI86Mbk2n3VrFdWsb/vf3y/uoq7zVIlsIfMeSOKH/lnJ5lcVd9D1MG7+8b2l3X2/zJPL/hjq9JL+5j/1dfNyh7x9VT+E5PWrD7Bqn9qJ/wAtJv3kdbXiTWbHRvDd9qFx5ktrZ2/2iOOP/lp/s12U6YS0ieY+A/2lm8ZeJNJ0N9Fgs5ryaOP7TFJR+1hLJ/wlGg2/mfuY7PzPLl/1lelDD8lQ8uvUvRPKYYlljrgde0HVLW6mvLiF7v8A6ax16Z4tE7j4I+A5vFHiS31B9/8AZtm3mSV9SXWsx399/rH+zxx/6uvExNV+0selQjc4n4meI7W/vo9LT7T5lv8A6yvM77zvEd9JodnJH50n7ySTzP3dnH/00rtpaUzz6mkjvtFl0nwvYx2doqfu4/L/AHfy1zd14y1aXUI5Lebyof8Ann5lTFXMYVeSncox7vOuJPMjg8ySST/gTVJ+8l/5Z16EVbQ4ZrlkE3+u8t4/9Z/0z/d1cmtZLWSS3f8AcVnznRGmbHw98G3WveKIY/Mj+y28n2i48r/nnX0h5Vr5dvs/5Zr/AKqvm8dVcqlj6TA0lGNyHzKr/wDPP/ntXlTXKe5Fph/rf3n/ADzohi8qOS4/5abf3n7ys7kh5vm/vI5Kh/5beZ5knnf88v8AnnUmo3zf9ZImyneV5sPmJ+6remBl2Msd/wCZJbyR/wCu8ujxF4S0XxHDDHrFjBqv2fzPL+0/8s66Yz9ic8/eieI+KPg34B8JappsmqatdeHo7iT95F5jN5i0V9BTq80bnkz92Vj9X6lrU4CWn0AFPoAKKACoLqKg1MHVJf8ASo/+edfnn8UP+ShTSP8Auv8ASpo/9X+7k2/8868/EnRSPK/HkupWF19nvPMnsbj/AFdzXlcdh5WvSfaP3UfmVNNG82e1eDdUvpbqz0uzhTzrivfvDthD4StY7zUYf30n7usKsTSlI4HxFfzReKIZLj97/wA84683+IUskWqSSf8ALP8A5Z1NJ+8bXOB1S/aWG33yJ5nmUTaX5ul+Zb3nmzf88q9MxM+60uS1kkjuJPLmjqjdeXFdRxp5n7yOspFHpnwXsJpdejkt4f8Alm0cktc/8fJbXWfEnlpI/nW6+XJVYZe8Kr/DPDdQlki/d+X5VUfLr2YM8qcx0f7qvVPDvl6ppc2j3Ejyw/6y3qb2Jgjmbqwmur7/AFfmyR/u6jvtGuoo/wDrnJXMehE9u+F/wg1jxRaySWfl/ZZPLkj8z/WV9afCv4fLoNrZ+bJ/x5rXgYyreVj6nA0uWNz261tf3ceyuksf9VWMTokWpIlrH1rS/NtfLrqOY43UNG821kjrz3WPCUn/AC70GUdDkZvOsJvM8uTzK3PDvjybRrqT/So5fuxyebTsB7NoPjeGWGGT/npHXbWviOG6tfMSSix6UVcmurpaw5te+wXXl+ZWprGBch1SSWPzKzbq6rUOUz7qWTy/3slcvql/DFH89x++j/5Zf6z71ZWN+Y4Pxdr0MsMlum/zpK8B+KHjKPS7WTT08yLzIWjrelE8fGVFGNj551S/kupPtHmP/wCg/KtcH4olX7dH5W/ydvmV6tBWPjqtQwKK6TiG06gCfyvKjjo8r/lpUAa1j+90/wCf/UySVpTfurHy/M8rzK5JfEbxL2n2EPneWkcn+rrLmtYbW6kjqzQyYdsUkkdx/wAtG8utbwT4XuvFuvR29mr+XG1bHIfS2i2q2sccdva/9M5PKre0fS7PS/Oj8v8Ac3DV5UpWkdNLSJ5z8QIrqXXprf5/Lj/1dQ3Xi218OaXJZ2/mf6ny/N8zy66qXvyuc09JHiuj6zJa69/aHl+bHJJ/qq6j+wby/wDiFJb3HmRR+Z5n7v8A55tW0pWIv7x7Fqnw+m8L+F7XUPkl8z935Xl1zdro02qQySeYkUcdefEDn/Kuv7Qkt33+ZX0ZoNh9q8O2Nu8nlRyWsdv+6/1lcWOly0zqw2tQx/F3gjSdG8LzSW8L/aNv7u5r5V8ZeZ/wkV5I7eb5nl16OVVeanImvC1Q0Ph7ayXWvQyeXJ+8k8vypflr1rRbqSK6sbx/L/0O4WSvWq60zzpfxLn0ha391f6fDIn91ZI/KryHxRoP2XxlqFulnJ+8/eeZ5deVQqWkd2J1p2OP161utL/d/wBl+VdSfvJP3dcT4o8Lwy3Ud5ea19jtZP8AWf8ATOuyR5dJFz4c/Ea1+Gl9q1neXU+taPJH5lvHF8v7yub8eeLV8UeKP7U061ks5v8AV/6795T0cj0KasY+n+EtY8R6hJ+78qb/AJaSy16p4b+CMd/axx3E3m+Z/wAtPL/1cdYV5chVjrLX9njw7a/u3vLvUP3n/XOtq1+FWl2H7yz0lP8AXf8ALT95Ue3HLU2ofC9r9qk2abB50n7v/Rv9XRJoK+X88ckX7z93FHH/ABVjKrcORhdeEvtXlyXnmRVxuqWtn9q8zy/3cf7uppIxnG0bFjRfDkfi2+j0+88z7DJ/x8eV/rPLrvtB+AXg2wmhvE0mSzuP+um6sa9f2RVCjzHG+MrWx0vXryz06OSKOPy4/K/6aVgzf8tP3jxV61KV4njV1+8Oo8N/EH/hHNLjs0s5JYf3nmfvKq/ELXofFs1jcJHc+XZ/6uL733qzlT9nqdEal6PKc75XlR+Z/wAtqrzf67569CMuaNyIrl0NTwj4ck8R+KLGz8zyo5G/eSV69dfDnS4ofnjeX93/AMtK8THYjkrHq4Wh7WJ4n8ePFs3gjVNJs9Ahjs4ZI5LiuLhupr+OO4uJH+1SL5kld1L97TsYVI+xke1fB+6aW11KSX/XeX/rZa7bzVirw8THlrHvYR81E4H4tePJvBug2dxZ2sct1qFwtv8Avay/HnxL0vw5peteF7iGSXVLjR2j83/ln+8jrooUnLUdWuoHhvwb1nS9B+IWi6hq/wBpisbeTzP3f96vRvjB4ysfiD42sbjSLpNRtY7X93LF/rP9pZK9n2X7y55ftP3djn/9yPyqjurD7fayRp/rqU42PPij0b4ey6pa2Nno+nR23/PO4uZY69ij0a1ijjt08z/2p5leBiZ2ke5g9YnG/Ebw5o91/pln5n9sSTeXJH837yvLdUtb6L7Vb2di/l+Z/pUkUf8AFXbSjzRPKxL5ahn2sTeZ5jxvFVq1iXzJNlelE45Gxo+gzazfQ2dvayfvG/d16RffCD/V/Y7zypv+WltJ/erkr4hUJWOnDUnWjc5HQdU/sbVLqTy7W8mt2kj8u5/1fy16FovjKz8ZTeXeWdtLJH+8krDEpSplYbSodVoOl2Og2skdnGln81aXmV83Vdz7CnDkp2Ks11+++eqd14j0/wAOaXNqmqXSW1jH+8mkqY/vSubkDwj8QfC/jKxkk0vxNa3c27y/Kl/cyV0kn+gf8fEnlUVqcqJMavPIo/u7r/lpUN1/qZq57HQU4ZfKrk/GXxG/4QO1juLiaOK1km8uSST95+7rtw1L2kjkxVXkiR+B/iN4N1mx8zT9e0+K48z95Hc/6LJXWa9r1r4X0u61DVJPLt7eT955slbVcOznp1jH+JV/4N8W/D+4uNQvLXVbe4j/ANDli+aSORqK0pucI2RE5KUrn6CR1NXunkBUtAD6KAH0kdABJUM372g1I7q1X7LJvj8+Ovz/AP2pvDl1oPjz/WSeXJ5dxHXn4k6KR4H4423/AJcj3Dy+X/6FXA3X/E0tfMfZ5kdVBF1Ga3g3xldeEtas7hP+Wbfu/Nj8z7te7XX7QUfjfVPM1GG20+GOOqqxCkzSvvEek+KPC8N5Z3lp5n+s/wCmkdeN694tbXrqSN5H/d7vLi/551hSp+8dNzg9a/dTQ/7slGi6pNFffPJ+5/1ddYi1r11+88z/AL+f9dGqjNF5XmXEn7qaOspFHung3RpvDngn+0H3+TeeX5fmfL+8avD9Y1n+3r6S48xPM8z/AJZVthl7wqv8M5PWrCHVP3iR+VWD/Yyy/wDLRLaOvRps8qcC1pvhq32zSPdf6v8A5Z10Gi3/AJWqWv8Az0qajKpo3PG1hJ4c8RSb/wDWXEfmSVT+1Q39r5f/AE0rI7In2l8F9Gki0WxkuJPNm8n/AJ5175Y2scUMeyvk8TrWsfdUPdo3Os0+LzfL82OtqHy4q3ic0i3SSRebDXUcxj31h/0zrlb7RpIpv9XQZS0OV1Tw5HLNJIkMcU3ltHXF614Nbyfkj+xzVrYDn9Pv7zwvdSfZ/wDUyf6yKvRPBvxVs5Zo7e4k8qaSPy6LHVSqXPTrXxGt/a+Yn72Oqc3ky+X+7/fUztjMkjupIv8Anp5NF1qkdahzGLqmqQ+XXB+KL+GL955n/TP93/z0pWJueJ/Er4qw+HI5Ps8iS3H/ACz/AHe6vm++1S6v7qSS8kkr0KUT5fGVHKVjDuvL86OS5k8r/nnXA61LJLqHmPXZBWPn6qM+OJpfuVFWpkFW7W182OSTzKACby/O+eSnSRLLNDUAb2lxebJa2/lyTw+Z/qq3NF0trqSTZ/qY2/dxf6zzK5JfEbxNbS4v+Jp5flyedtrkfFEX2XVP9X+83f8ALOrNDnZJf9Kk/wCekldZ/aV94Z0uxt7C8kimjb7RJLbSf3q2OQ9w+H/i261nwvJqGuf6mOTy/M/56V211E0XlyW/7z5fMryqsbSOmOkTmfGUV1a6XD+8jikk8z97/vfM1eO3V1a6pfR6e83+gySSfva6sN7sbnNX0kddoPhLw/r3h211CzvPKvtLkWO4ilj8vzK7LRfL8ZXX2N5Psf2P955nmVNV2OS/vG94o8UaPr1rJodvM/3l/wBJk/dx/LXG6p4X82+8yzuv3Mckf7yKSueJ0GXqlrHpd1+6/wBZJ/y1l/vV6x4X8Rtf+EdNuP8Al68lfM/4DXNjoc1M6sHrUL3iKWS/0G8+0SPLDb/vLj/lpJ8teX2vw0tfiD5nii31aTQ/DMi+XH9p8vzPlrPLvcpyKxUrVDy/XPs/gv4jNG+sf2hY2s27zY5Fk8xa9Ct/iv8AD3SP4da8Q/8AkrX08taZ5Uu52nhf9pHVv7L/AOJH4XtIrGNvLjudUk3SVeuvi/qms+Z/ak3lSSSf6P8A2fHXnU6NpDq1L6HO+LtGh1n/AJCmpT/atvmfvbiuR/4VLpN/dR/uZJbf/ln+8rokOlE7ax+Deg/ZfL+x3Mv/AD08yuZ+IHhzSfA2htJa2P2nUpP3cMdcFOreR2WsbHwr+GmsX+g2MmoR+b/aDeZJLL/yzX/nnXvn9jR2sccaR/8AXOory5zflCPS1sJKdDaw+T5aV5/MzpjSuQ/YPssPl+Z/0z8yq91F5UPz/wB6t46i5EcT448UfZb6PR7eb/TvL8yTyv8Al3Vq5H/lj5jx130keLXnaVi9pfiiTw5dR6hZ+XLN/wA8q6qH4yXX2rzP7Jgi8usK+H9qTQxPKU9e0aPXvDc3ij/l6kaOPyq4vypvM/1fm11YZ3ic9dfvDSuvBuuWHmfbNJu4v+uUdesfCnw5Ha+F5tQuLH/l48uOKWOssTWvTub0qN5cpyfxqi8rWtN2Q20Vx5f7zyo9vmLXnL12YaXNRuYVVy1LGl4R+JfhnwHql1ea5Jd/aI/3dvHbR7vvVc179qrSfJj+z6LdS2//AE0rGvhPb1j0cLX9lE5nxZZw/HrTdL15Lx9P+zrJbyRfZ1aOOuF17Xv+EI16TS0t49Qms44/3ssn+sr06VL2WhhXl7SR61+zn4ym8Ua9rVveWcFn5duskccX96vRPEXiPTdGsby4vPMjsbNfMmkirw8THnrHq0HyUT57+L3xV8O+PIfD8elzXWnx29xJJJ5sdZPxC8W6LrPxA1rVE8/UNNuLfy7P955fl/LXs0KSicFWTkedxyyWv3JP3kcf7ytjwnFH50n/AD2kb/lnXR5mduh3Vr/ro/tG+X/npXonw58EQ+KLq6kvP3Wl2cf7uL7vmbq82vOxMUeieEfh9Dpd15iSTyySbo4/3n+rra1S6/sGxmuH/wCWcfmeVJJXgSj7SR69L93E8h8UfEa61m6kjSO2ihj/ANXJ5dZcfijVJf8Al8r3qUeSJ4uJfPUKd1/rvnk8ypo4oZf3fkwVrEwke3fCXwQsVj/bl55n+mQ+Xbx16FdWEOqWNxZpvihk/dyS18ljpudax9Pg6Sp0bnj/AIo+EEf266j0797Dt/d+ZJXRfDn4af8ACG+ZeXEyfbpP9ZFH80dVLEt0yqWFSqHYf62b5I6PK8r935fkVwSdz1ubm0IZIqxdY8G6X4l0eS11e1/tCxkkj/d1Uf3WxPLznl/iL9kbS7668zS9an0+1/6ax/aq9isdGh0HS7PT7ff9nt4Y44/M/eVricZGorExpckibyvN/eU7/Vff/dVy2Ogy9Qv1ik+z/wDL1XyT8ZItel8RXEl5pOoWem2bSR28vlyeXXr5fpI8fHe9E85tbWTWbqO3to/Nurj/AFflV9zfBv4Wrpfwrk8N+NP+Jhpt5N9suormT/VyV7dWCPPptnl/wh+EsN/r11qCXEn/AAjcd80lvHL+8jkorjnUipWNITvG5+qUdTeZXZY5iSpaoAp9ABT6mwrkE1/a2vmb7yP93WXN480G1m8uTVrSL/nn+8qpe4FzL174yeDfDlj9s1TWrazt/L/1kkn7uvnv4qeN/h343tby88yPVbHULVo7eWvPq+9E35j43vtZtdU8I/2XcWMkuuWe77PqXmf8s64O+sPsv7v95FJ/zyqowNYmX9qX/Vv+6qx/zz2f6yt+YqLsaXg3xRcWuqR26SfvJI5I/wB7WhfWscXiibf5kUNx+8rM6YMzfF1gsun28f8ArZI/3lZPhe6/fXEnmfufMj8yl9oRNrVr/oMMj133wz8OQ+LbqzvLizk+w2cP+kS/885KwqnWaXx48ZfZZLOzS6/6Z+VFJ/q68D+1TWs3mJWtJe6cdUb+7/56eVR5S/6v93XoR+E5SaOK6tbWSRP9ZJHRp+6W6tbdP3skf+slpgaHxGupr++jk8yP7tZei+ZLNH+78qHzI6iWptE+/vhDdSS+HbGP/lt5nlyV7toPmfao6+Rqe9WPt1G1O52lrFVyGKu+JgWPKplbkDaxtQtf3MlQRJGLNYRyw1g32jRy+X/zxropxA4/VNGji/494/Km/wCeUkdcTrWgzWH2i8ST/V/6yOOsjIp6X8Qb7wv5cn2q5ljrqofjJDfxyXDyVrE6Y1LB/wALf0uKb57xJfl/57VX1T4yaTpdrHeP/s+Z+8rew5YlHnPiT9oyPy5o7ff/ANM68r8ZfGnXNehmt7eT7H5n/LSOtadM4a+JTPM77zr+68y8kkuZv+etVZov+Wfl16ETwqhh6hL/AKDNvk8r93XC3UsnmeW8lUefUJrWKTy5qbdWE3k+Z5dUZyKNra+bJW1Ja/YPJjT/AF0n+s8yggy5rWTzI/8AnjV61ihi3SPH5skn+r/ef6upZZ3ml6N5WgzXj/upvJ/0f/npI1Gi2Elr9nuP9VJHXJL4jribng3S5Jb6bUNRjeW1j8zzPKrz/wASRL/b02z97D5lbR0iZfaM2xtfN1T95H+7q1r1/wD2pqkkf/Lv5ax/u61MvtHWeHfHkl1pei+G9Rhtv7Nt7pf3tfRVr/5B/wBZXl4yBrS0jY5Obw5D8RvG2taXcXXlSWem/u/Kk/5aNXjvgfS49U8ZaTp7yRy/Z/M8ytqHu6GNeN4nca9Yafo2vTXGlx+VNcL5dx/zz/7Z1NouqfYP9XD5v/LOiWpyx0Nzxdpdra6XD5UP+lf6ySWq/h37VLpfl2+mySxx/vPMjjk+7WdOD5rh9k5nxZ400G1uI2uJvPk8tv3cVEf7Rl1YaPDH4f8ADen23l/8veofvpK750ueJrH3Dida+PvjTWbVreXVvKj/AOecce2uBF/cSwxxyXT+XG3yx+ZWkKfJGxTfMHlRyx1NayyeZHH5f+srSRlc+hvD1jHpfhPTdL87zI4/3kkn/TRqr69L9l+zyf8APOso6HNGPvHOzSyX99JJXVeF7DULC+h/eeV93y/3n7usLFSZ6F4i8broOoR6ekceof8APSSr0niOx0HRbPWLyP8A4+P3ccX+rry5UveN4u0TtNHv11TR47xI/wBzJH/z0r5z+JXjLVvG/wAWo9L0PVrr7DHcLp9v5claUI83Mjo+yfT0Nq1hDHb+Y8s0a+XJR8v7yT5K8qULSPepfCVfKk/1nl/8tPMrD8SSyWun+Z5kn/fuqjKxhUjcx/8AhCNN0vw7dapeQ/6dJXH3Vh9l+/DJF+7/AOWsdelhat9D5/GYZx1M3/Vf9dqPtXlQ/wCr82SSu082J6FdedF8L7Gz+f7VJNHJ5UtYvhOwk1nxRY2/l/8ALTzPM/557awpx5dTtiubQ+krH/So5I/tj0XUsMUf/wAcryeY93kOV1jwbpPiPVPtmo2Pm321f3sUzV4j480az0bxRdWdnH9jtbOPy/7tejg6nNI83GR90+efEV1/amtTSJJ+5jk/d+VJWHdReV5dx5f/AF0r6z7ByDZL+a1j8uKS5ih/55+ZWbDFD9q8zy6yNj6E/Zf+1RaprV5cR/6L9jjrrvjvdfYPh1qXzRx/2hNHb/8AXOSvCrq2IuehDSjY+WfKj8uT/pnJVzS/Olmm2QyS+ZDJXtx92R5NrDbXzorWaTy/3Mkcccldh4J0a+v9HmuLe38399U3KkdNa2En2qOP95ef89PLr27QdLm8L6XHp+o/upJJPtn/AFzrxcdK8bGuGXNUudRDdfuZJHrxvxd4tm17zI4/3Fv/AM9f+eledg4Wlc6sZPljYwYYqmm/10f/ADxkr2TxiS18yKtjRfDl14ovo9Pi3/vP3nm/7tKU+WmOKvKx9OeVHaw/JD5Uccflxx1H/qvM/wCulfDz+I+1pK0Qmljl/wBHk/56f8tah/1v/LSjlO0j/wB+pP8AWVrEyG/8tP8ApjTvKWKT/WJFJHUyd9Dbk6hdS+b+78v95VPzfKovzBbliTeb5UMcdQyX8MXmR/u/M/1nlUyblHT9L0+W6k1Ty7mTzI5Ps8Un+rrY/ef9+61pswkcL8StU8O/DTQf7cs/B9tqGuecvlyxR/u44643VPi1H8WrHR9H0PR59Pj1T/j+jkkr28NLnp3PDqx5Kh6p4T0u10HR7Oz0uRJbH/rpRUcrIufdVS16tjEfUtSAVW1S/tdG/wCPyZIqAPL/ABd+0ZofhzxRa+H/ADP9OvP9XXhfxG/ab8dap44/sPwNHba5H/y0qrGVzzPXvFGqfF/VJtDs5Lnw1qlvH/pl9c3n+rkb70Ncz4D1nxN4o+IU3hPxJfQa5o+lxyeXJp//AD0Wpl74XI/HniOT4jfEr/hX+nSWmn2P+r8y5/1fnUeKPDkOg6LH4L0u6TXLqTy5P9G/5Z040uaJVzz3xlo2vfDS6hs9Y01POvP9X+8/1m2udmiutZhjuLiH7HdSSeXVRgd0THk0aaWGT7PVrT/C+oXUPl+T5Vx/zzlrHkJk7HNyfatL1CSN4/8ASo5K6y1urq68uR5P3kf/ADzkrnNacin4yik+1Wd4n/HvIv2eqfhv97Y3kibP3klL7RudRoPhy68RzTRp5cnlyV7dHaw+A/AdrpaTJFNIrSXH/PSRmrCqdZ4D420HzZNPvLeSSWG4XzJJf9Z5deb+VdWEklu8n+s/5Zyx100V7px1SOPzP9ZUn77/AFnmSSx12R+E5SxDfw07RdZW1/6axySfu6YEOqXUkt15knmeT/zyosdU8r/lp5Ee6OTyqiOptE+pvgX8af3ljpfk/u/3dfaHhPVIbqOPZJ5tfO1KXJWPs8NP2mHudxYyyS1eq4kFjzf3NFbkEclV5KgckZc0VY91a/ua0hMzMW6sPNhk/wCe1cnrWgrF+88ukZHG614XXVPMjrzPxd4Na1hm+z/884/tHlVrEclY85utLvrXzI/MeKudmuml8z7RI/nV2WPPkmU7r/XfPNWbNayRQ/8AAq7abOGomyjTZdv2WX/Wfdq4mdQ43WJZpf3b/wCp/wCeVc3N/ot1+98yqPPqFr5pbrzPLT93/wBM62vNX+z5v3f764/55f8ALOpuZyOTsYvNuv8AptXReKIprXyZE2f9da0IMWHdLNXaeF/CV14j1SG3t44/3f7yTzamRZ0mvXUf2qSzs4/K+zt+88qqsN1HFayf8ta5JfEdcTpvDd1/ZegyW7/6uT935deZ6x5kuqTSJ/rtzVtLSJl9oo2O6KOSRNlUf9b+78ytTL7R0XwztYb/AMWWslx/q4/Mkjj/AN2tqP4yapYa1dSPH9sjuJvM8qSolD2pzxq2lY9y+DdhNa6DeeINUh/4mWsSeZ/10jqGGw0e18ZXkaWcf+mf6uSXb+7rx/a8tSx6k43icL4y2/8ACXXUaWcfkxyfvK2PBvhxtZm8xLWT93XbHU8iWhxfiv4qr4S8S3X2D7Nqskf7v95D+7krlNb+PvjLxBB9nl1h7a1/55W0ax12wh7tx/ZPOJpZJfmenRyyV1fDE0lqSR2s11H5irV7TdLjN5/pW6O2j2+ZLH83l0X5pWJk+U6q68OfZdUh/cvLb3DLJ+7j/wCWdF1o1rL4y+x2f/PT93JWcjK57x4T8OLdahHpdvJc/wCrk/e1x/iiwk0bWJNPeTzfL/1lZS0OaM/eKdjYNdeX/wAsrXd+8r07xFrNrdaPa2enSfvo6mxUmZfi6wj0GHTfLkklvpIfMk8yneVJf6XotxeTJ+73fu/9muOXxG8naJ7J4D0ttL8Iw3FxM8Ukn/LL/eryXS/Afhv4S/EDTbi41i61DVLxf9Fsfsv/AC0kripz5Kkkez7Ncp6B4X8Oa1Yapq1xq+rPczXlxJ/o3mfu7da66OLyq86tO0j0aXwk0MVa1jF9lkrklKxty3DWr+1+w+ZqMf7v/lp5leY/FrxHa6p9ls9Ouo57eP8A1nl7fLr0sDrUseZmb5adzzXyo4q2NH8OLqnhfUNYeaSKa3mj+z20n/LSvaPk4lqbxvqlr5MdxHbXkMcf/LSOt74Uy3WqX159ojg8uNv+WcdYVJWp3PQwy5qlj1rzZIoY9klQ/apJfL3/AOrrwbn1XKcX8QvGU3hyOP7HH5skitXlfxCijl+Ht14o1STzZriTy4469DBrlkeXjI+6fPMMUnkyb6rzbf3lfa/YPGM26lWnRxR1kbHefDP4l3Xw+mvPs9rHL9s/1kUnmfu67zxJ8S7r456fZ+G00WPSr7zPM/1n7v5a450uepcv2to2OV1D4D+KrWaaPyUu4Y2/dy/aP9ZWfdfD7xJ4Xjmje3/s/wC0Wcn/AC0/1ka/eWopVOeQqkbHFwyyeTJ/zxrvvA8v9l6LHefP+8/1lb3MZHrnw98JWsutQ6hqMkdna2f7z/rpur3q1sLWXzJI/Ll/5Z+ZXzmLleVjtpLk1PMfjJ4tjsLqx0PS7ryv3cn2j7NXlf7uKHy67MNC0bnBiZ88rBHEvnR066l+y/fjrpOcuQxf6v8A5417V8B9Gh868kuI/NmuP+POOX/Z+9WWJjy0zWkr1rHpmqXXlXUcfk/9+qz/AN5LDXxc/iPuoq0SOoZpf+WfmUcxoH2r6VX1DWbGwh/eeX5cf7yST5f9XWsTIksdZ0fWY/8AiV6laah/17XVYPjbx3ovw+sY7zXL6S0juG8uOL/WSVvGnzVLHP7f93cq+HfiXoPjKG1/su+0+W6k/wCXaWTbN/3zW95sf7v92lFSnyGsKnPEP9TWLfbb+6kj/wBb5n+slrnKudBp8X2W1j2SebWla2DS+X/rJZN0cf7rzKiDJkcn8dPiDp/gPwPNpb+X/bGqQ+Xb20kfmfu64P4I+DbXS/C8n2f7NqE1xt8uWP8A1katHX0WDhy4e54eJlzVDe8UfEbR/BGqabp6RySzf6y68qSiuzlRhc/RiP8A1fmPRNfwxfu5Zki/7aVfMScn8Rvi14X+FWgyaxrl95dvHXB+G/2ufAfjLS7680i6ubyGz/1n7uqIqM85+I37euh+HPEkPhvS4XvJP+Wl9FWL48isfiN5Ouad4of+1NPha8j/AIpI6Ka5jI8T+F/xB1TWda17XNc8TSahfWcclvb20Vj+8kjqrY2vxSuvDuveINO1K28PaPJ50lxJLH5c0m2rM+Y6L4A6DqkvhfWtQ1eGDVb7UP8AWX0knl+ZHXN/BWXwP4cvtWt/Esmp6ffR3H/H7L8tht/u+ZQbHG+ONZ0Hw5421qTwlov/AAktjt8z+2f3jR7q3vhD8B9e8R+F4fHGl+NrXT5tzeZFLH/q2rUX2TB8UWvjr45+KI9LTUv7Q/svd5dzWPr2jal8PrrTdH8VxvFDcQ/u7m2qLdTqhL3bHI6Xf339tSR2cMl5a/8APP8A1lN1rxkvnSR6dM8UlZWLuZOn3/2rUPMvP+ukklXtPurH7V5ieZ+8qDWJsap/p+lyafceX+8/495ah8J+HJtG863uJEiqZG522i39roNrJb2ccf2iRvMra1j7Vf6XZ65Z/v8A7P8Au7iPzP8AV1w1EWcHa+LYbWGaNLf7ZDcfu65XVNLjv5Pk/wCWdawmKUDn7q1kijkuH8v93H/qpar2Mv8Ay0SSOu+xyXC68yX+/VOHy4pP9Z+7jkqguTTfupvLq1pdhNLN/q5P+ustRJe6aR1ke6fAewmsNatdlvJ+8b935lffXgOw82OPZH/q4ZK8WvC9Q+2w2mHselad/qRVikQSR0R0AElJQBmTRVl3UX76SgxMu+8yL78lc7qnmXUcmytjI5m6tf31ZeqaX5vmSJs8yoA8n8XeEo/ss159qSWbd+8ryvVNBktf+WfkeZXoUpHJUVzkZrWaLzNn/LOSqMlenCR51SNivN+6j8x6qzRR+XJQYSOR1SL/AE6SOSSuX1CX99JH/rf3n7uSg4aptSeX9hkjSsvz5P8AnpQZkOjy/wCnR13HiyWOLS9NkSGqNImLoOg3V/r0caQwS/8APSSX/V16RNdWvhLw3JJ/qpJJP3ccX/LSs6jNDPjljtbWTfHH93zJPNrFk/0//tpJ5dcxR0msay1hotr/AM/ElcbfRLL5kn7zzJKJL3iTDupZPJ+z+Z+7k/5aVX/5Y+Yn7r/lnXTE5JHUeA7qTRtUvLi8t5PMjtZI7eLy/wCKqeh6dJ4j8TzXDxvLbs32iSOKnV0jYyufXmg6pDrOgxyJD/Z9j5f2eP8A4DXluvaza6N4s/5CX2y1t937z/ab93tWvBoRc5HoSl7pi+Otb0/wzH9svJra+1K4k8z7FHJ80NeY6p8XvEGqaW2nxzfZrGST/VR17dKlyHnWOJ81paSvRLF8qSWaOPb+8re/4RLVLXzJLizqLBOR6No+l2f9g2tneWqeZIvmSSeXVP8A4Qi1tZo/3nmR/wDPKtJQucNzuvBvhybxHrVrZpJ5X/PSTzP7tdt8QPh94P8ADkdreaRZx2epSTSR/wDTT/eryKlW9Y3iv3Zwsks3mRxpvi+7H+7ko8RWq2uqfZ/M82byfMkrrOKw3S9Lmv7qG3t45P8AtlXcaLoLReIrO3uIf+Wn7v8A4D/vVz1ZX0NqZ6BfeA7PxH5f9o28kU0f7uOsv4heErOwutD0uKO5ihj8y3j/AOefltJXn8/vHtypcsTJ+JXxkk+EuqWel22mx6r5lv5kklzcbfL21oeG/CUfxB8RaH8RNRj8rzLP93pv+sjqKv7qmbw9+R6FNF9lk+T978vl0Q/66OvFPUNa1tY4oY6ueV/q/wB3/q6yloaRXKcL8YNUksPA8kdvHJ5lxcLXj/w5tW8UfEa+0t5PK0uzsfMuPK/vV7WD92nJHz2OjzYjmPVLr4X6XdWM3754oY4/3cUteY2t1dRWP2NLiSW187/V104Op7XU5K8fZ6G94d8B3njK1kkj8vy428v/AFleqeEfC/8Awjlj5fmfvJJPMkrnxNdR0OzA4e+ptSVVuv8AlpvjryT3zl/FGgw+I/J+2TXMUcf/ACyi8tfMrw/9obdYaX4d0O3s5INJs1/1v/LORq9PL5c1SJ52LieFwy1DNLX2cmfOmLJ5nmeY9XoYv9X+8/h8ysTYM/7Ne0fs56XDf+PJrj/ljZ2LSRxVlVV6dgPobVLWaXR5JEj82HyZP9VXgvxq87XobWT7V9j/ALP02aT/AKaSfvI1215GGpuMrnXOrc8t0XQY9Z+/NHFDH/rP+udexfD+60+W6m1C3kSWO3/dx/8AAa75Hl1Hc7qx8Rwy+d9sjeOPdH5cltV7xZ43k0HS7W38P61JLNJ/rJZI/Lkjry/ZPmNva/u7Hk/7yWaS4uJvtlxJJVzy67jz5Dvli/eeZ/y0r0Dw78NIde0WG81Ga5/efvI449v7xawxNRU42OnDU3Vlcuf8KvksNPmuEuo9Q8uOSTyvLr5r1SLxB4j8ZfaPsup6ffahN/ocXzL975dq1lTxaken9Xcalz7A8L6XNpeg6LocUkn+jwr/AKz/AFldp5vm/vK+Xxcuapc+kpw5KdiG68yKseS6aL/SPMrOlT5qgVJcpHDLNdeZ5VfNv7RHxVvNU1SbwnpciRabb/u7ry4/L8xq93A4Rwrcx5uJxKlGx5T4X1nVNB1DzNIup7O6j/5a237uvpi++BVx438N6XJ4z1q8i8SWccn+1HHXq4yqqMrHn4WHPK5zvhf9mn+xvG1reX+rebo9nJHcRyx/LJIy17ZNulrwcXX9qetThyF6TzLW18x6If8AlpImyWuGR0lfT7+TzvM8vyv+Wf72OSuq17Xo/h94Nm1zUY44ptvl28X/AC08xqqhFyl7MiTUYnwzrHii68Za1NeapeSXl9WloPjfUvCXlyWepf2f/q6+0pLkjY+YnU55HL6x4t1C6mmkuLhPvSSSS/8APSip5SeU+/v2hviX4q+GnhebXNI8UJ/rP+Pauf8AgPr03jz4fx6x4g8USS33/LSOW6rL2Z1Fr48fCpfGXw/k+x3Ul5HH+8jto5P3dxXlfgnw54y8L+E/L8NTXN55kcn2ixjs9vl/7NSc82a3g26k8OeKJLPVNN0yz1jyWkvJLny/3lcT480HXPAeqa94ws7yPybj93HLbf6v95WkFyAc34R+L81r4Xk0/TpNMs5Ldv8AWyx/vNtdd8KfiXa+PNU1bR/Gl9qEtjHt+yxafbyeTJ/s0jPlMH9oK1h8Oa9ptn4X0nWrOGT/AEyz8yRpI5F/3atfEb9odvFHwzs/Deo+HU0rVI447eS5lj/1lBsaF1pfiT4ffB+a3s7rRdV8P3i+Zb33+sk/eVxfwH+H2k+PNLmuNc8aR6Hb27f6Rpv3ftEa1qL7J03wp+Bmqa9r3iTVPBfix7OPS7zy/wDr4Wub+LWjeMJfFEkfiWS58Q2Ont+8+zfN9nWtbfu7lQfvWC6sNH8JQyeKPC+pQS2/2Vv9GuZP/HWrkdLi8M/Ea+kk1eOTSrqSSTy5bas7G9yjrWg/8I5qE1mkn2y1/wCWclZej2v2C++2f63zP+WVcZ0xNzzf31XLWXzZqmRuZfiKKawuv7Q8z99I3mV2Vj48misZJI/LihvF/eRS1yzRZ57rV+0uqSbI/KjqbRbpfJj83y6cIClM7LytJ8ZWsdvqOyS6rldU+H1rFNJ/Zd1J/wBcpa9Kx59zDjtWsPMjvIf+mclZviS1tbDyfs/mfvKQXG6pFDFa2P7t/O/56/8ALOvUPDugw+I/9X+/kj/55U5L3TppayPevhD8Pltdas47yTzZv9ZJHX2V4btfssf+r8qSvBnK9Q+2paU7HSRxVYpEBTvNoAfUU0vlUAUZNsvl1m3XagxMnUq5W6lrYyMuaL/WfvKy9R71AHP3WjQy/u/MrifEng3zfMkuPI8v/lnV0ZEWueT694XbS/7kUMcbfvZP9ZJXG3Wl/uY5P3f+rr2ISPPrqxh+XWXqkvm+XG6/9tPLroPPkczqkXmzSSeX++/6a1yt19/91QcNU0rW6kl0+aP/AFvy1mzeZF+7uPMoMyxp8S+ZHJ5nlSeYv7yu4mi+1Wsduk3myR/6vzKm5pE6zw7pcNr50ksn2Oxjj8y4uY/m8yuZ1S/j8UeIprhP3Vrbt/o8X/TNazqM0G61dSS+Xs/dVn6X5kuqQyeT/q5PMrIo1PEmqQ/6HJ5cn2i4b/ln/wA86x7q6kurXy7eR/M3VpJe8SczJL5s0n7vyq1PC8S3WqWcb/6uNq1ickjpPF2vSaXqjWaSeVDJH+8/d/8ALNq6L4X6XJFoMl5+8i+2TeXHJ/s0Vfisc1z1D4hfEa18G/D+HS9LjtrzzJGuIfM/5Z187av45j1Lw2un/Yf+Jl9qa4kvfMrOhQUZHQ5e6cVNLJLN5lMrvXvElmGJf3m+jy60A77wT4Nk/d6hcN+7j/eRx13UcredTscVSRDNF5skMdF1LHF5kj+ZRGdzK56RoPneDfBsdwkf/E41CaOT/np8tUfHHi268R3UdxeRxxeX/q44o/8AWV5Hsr1i41P3Zx/2qa1uo7i3uPKmjo81rq68y4/ezV1isenfCu60vS45Li8kg+3XFHxGv/t99ptvbzJeeXD+78r/AFnzVnKF6liqZ6d4dtfstjaxvN58lusccdTa9o1rrN9Y6g+/zrP/AFf7yvmud8x9ZFKcTzP4lfAf/hYPij+2P7ae08zbHcW0sf8Aq1X+7XqlrFHpei2Nnbx/ubeGO3/75p1qvtaZdClyyIZrqSX/AJafu46vWMXlTfaHk/fVxG5Yk8R6XFffZ31C1+1eX/z0rS8qT93H5dZVdDOlU9oY+qeHNL1ny/7Uh823jb/rn5e7/lpXyXY/Ev8A4Vz8UPElxZ6baar++ms45ZZGr2sv9/mRx46PJ7x2UP7SN14jmk0/+w7az+2f8tfM3VqeG/BuqeI/tX9nR20ske2T97JXcqP1Wnc8epL21Sx7Z4T8Jf2DpcNu9x+8/wBZcf8APPzK6C6ij+y+Z5lfM1ZOdSx9TQgqdO5QqKby4v8AnpFVlHnvjjxR/ZdrDJp3mfaPO8uOWWP93Xlvxuv7q6+D/hf7Z+9uLy8/56V6+Xw5KkTysVM8D/1sf+sSqd1L/cjkr6qTPBIfN8qSrEkq+X5n/POkbEP/AC0jjSrVrLNayeZb3UkXy/vPs0lKSvoBND4o1iXzJE1LUP3n/T1WpaxTeI/3j+Zeap5axx+bJurGNPljcx3PQrX4S6p+5t7iaOz0mPy7i4l8z95JWhdf8SaGTS9Os47OG3k/5Z/vPM3VjI573G+bN9lk/d/6to/3UX+s3VJN4c1aw8u8vLO7s4ZP+etRpzE+RYtYvK8uR4/31SR/8s/+e3l+ZUESLGl6N/bN19n/AHf7z/WV9DWOlx6XDH9nj8q1/d18/mFRuVj6LK6a5blyO1WWHy/+mf7ys2O1tYvM/dyV5vM4HucinqbFro1rpcn2j55PMj8upv3ksnmf8s6nk5tTbm5tCrJ/zz/2q4v4k/DRfihYx6fc61daV5c3mfu4f3cla0XyVDOpHmPnn4jfD7xN8FrGHUE8YSeXeTfZ4/snmLXlvyy/vH/56eZX22FSlHmPlMSnGVj2r4F/Bu6urqHxRq9j5ul/u5Lexlh/1lfSU0skvmfu/wDWf8spI/8AV18xmFR1K1j2cJDljcmtdGmv5vk8vyZP9XLJUMlrJYXXlv8A8fFedyHVzcw7QbW1ihj+2SfbLr/WeZL/AHmror7WV0HQY9Ueb7Ha+ctv/wBtGpSNR1j43m0bw3JrniWa2i0u3/eR+b80klfE/wAVvi/qnxB1SOTUZv8ARY5Jvsv+61e3ltBTl7Q8fGVnGJwP2+GKOTZRH/amvfu7a1/5aeXX0EVeVjxLcsjQ/wCFafZbiP8AtG+8395+8soqKqwvaM9s/Z50a1+Mni77Hq8zy29nD5kkeobv3lenfFr4QfDmLxlofhfw/fJp/iCTbJ5fmboZK4j1LHtXxG1SHwl4Js4/7cttK8tf3cen/N93+7XgfwH+I3iy60HxFrmrzJL4bj/eebL/AKy4mp394wmjpv8AhXPiCXxFD8QNR03SPs8lr5kf9oX3l+XHWP4yv9U8ZeE9Sj0vQ0lt5P3cnmybvM/ip294w5vdPE7Xx5oOg61eah4g+G8elWNx5flxeXXrn7N9r8SvDnhuO88NeH9PvPDuoTSXFn9pk8vy1qoP3rmhg+JP2jNY8G/G6z1DxZoqXl1p/nW8dlbfu/3LVg/ED4tXX7Q/iLRdDuNJfw9pNxdR/wCkyVXNzlFr/hWlr8FviZoel+JdaS88Pxs0kkUUn+r+b/nnTfi1oOm/HPxZDZ/DvRY/Js28v+0vL8uOSRqqPvRJ+A5vVNB+KH7OejrcW832O31BvsdxFHJu8ySuw8B/GTwr4c+H80niXzNV8QXEM3mR+Tuq4/ETUhzxPH/h/wCHtB+LWsX1neat/wAI9JH+8t44qq31q3hea80N7P8AtCbzv3ctQdNyrfaNfWEkdncWsln5n+r82ixlk8v/AFf/AC0rhsb05nrWi/C/w74j0Ga8TVo9Pmt418zzJP3cleSx399dXUlnZwyeZtk/e/6z7tOUDeLOy17w5Ja6X5n2iOW1k8uOT/erhf3lr+7ePyqwkrgV7rtUM11JFD8n7r5a2iiDLk1m6tf9IST95HWha+MmljX7RH++rYk1NP1m1ltfnuIPO/5aRS1g+KL+HXvsv2OHyptv7yqINrXvHljr2i+H9DfTbmC109l+2SeZ+8kr0LwP438N/wDCRSXFn5mn2P8Ax7yeZ/drSp79OxrSlyVLn2F8L7X+3tas7jyf9H8n93L/AM9K+gtFi8qH/rpXycZcsrH3UZc0bmxHUldBmR+ZSUFD/NqHzY6CSG6/ex1g6hdTReXUkGDqH7qGST/Z/eVyv2n3qgEpkn+r/wCudWQZM0VY91ar5ckb/wDLRaAOP17Ro/Ljk8nzf+ef7yvNdU8EfaoZpPO/1f8Aq67qUjz6qPK/ElhJYTSW95H++/56xVyN9F++/wBXXqw+E8eS94ozWEksMlc7dWsn2ry0qZHJOI21sF+y+Ynmed5n+r8uqt1Etrt/57Vlciw2xirrtH8z7V8knlUSl7xUUaWqazNLdfZ0kj8n/pnUmjyyfZby8f8A5Z1hf3jc5u+1SO6upP3klTaLF5XnSXH+skkq4gZ99fxyzf6PH+7q1pdrNqkkdvp0cks22jaVyZE2l+CNev8A7HcfYZ7OxuJmj+3eXXTafFpdr4ym+zx+VHb/ALu382vRhJc1zy6sLHK+NtUW/wDEkkdv+8/1cde1f2X/AGXoOi29nJ5vl2v+lR/882rGqyLHjfjK/wBS1nXr6z8ySWG3/d/6yuFki8qtb+6bGtovhW+1z7nlxR/89JK3vBvgX/hI7zUrW5vPsM1mvy0RYps2pPhvZ2HmW73U/nRt/rYqNB8GwxapHcXH7+1jrK5zcx6hfeDb610uO4t/Llj+Xy/L/wCWlZt1pd1pf/HxD5VEahjyWiVZJa3odGhitYftf+u3faP9XW9zG5ofb/Kqr4k16HVNFs7P7Gn2iOb95c/7NSRTRy8n/TKr1jF/qfM/5Zt+8q7G8jcvv9F/d/8APP8Ad1mw2v8ApUf3/O8ys7k0z6C8L2E2l6Dp/wBokklmkjWTy/8AlpXSWtr9qhk+/F5jf886+Qr+7K59bhqnNGxJdWvlQyfvH/1lZc0sMUc0j3EdnDH/AKyWoguaVjv5uWJ886f4jk+LXxa03T31KTSvDNm0n/LTy/MWvpjWr/8AsuxmuP3kXl+ZXpY2l7OVjipT59T570XbdTeZ5kct1Jdf89P9ZJX0tNL9q8nZ/wA8/wDlrJXm4uFomWCl71hslr5sPmS7/Jkj8uSvmnxF+yXqn277RZ+INPvPtF5J5n7to5I60wWI9lI3xdD2o7wP+zd4u8L3WpXFxHa6hNJD5cMUc3+rr3D4f+F28JaDHHeQpFfSSN5nlV24nGqpTt/X5HPhsM41LnUQ+ZLDRNF+5/7Z+XXgnslf5ZY/+mn/AFzqrded5NdBBwfi7w5/bOvaT9omk+wxzfvIq+Y/iN481DxHI2h/uP7H0e8k+wxR/wCsjWvo8qfU8PGP3jhqqTf6mOvc5jzLWKsMVTRy+VDJ/wAtf+edacpR79N8DPDus2P2jS45Pt0lnHJb+XN+7kk214HJYSWs0kfl/Y5I/wDWW0tcXtVKpYr2b9mOh/e/cj8ivTvgrYQ3V1/pNv5skc0f7z/nmq/errvaJz1EeseJLqzsI5JLiTyo5P8Anl/tfdrj7XybqvOOcmsbqawuvMs5PKjq1qmvaprPlx3knmwx/wCrpxMpEP8Any46P+WP+rqiD2L4S+HG0axk1B4/30n+rr0a12+X/rHr4zGT56x9rgYclMb9l96Psqxf8s4/+uXl1wcx6I6OKSX7kf8A20pv7yriBD/10qGbdLN5f+q8yj7QpfCfF/xy8bzeN/G11JbyeVptv5dvHF5n7v5f4q4OGX/thX6BhIr2dj5acrSuejeF/wBoLxt4StY9PTUv7Q0uP/lncw/6uuouv2r9elks5P7F0/y4/wB3ceZ+8+0VwYvDdQpT94+hvh38Q28S+BbHVrzR3024uJJPLjrUvv8AT/3lx5n2qOH/AJZ/6v5a8Gt7srntGhoPhfS5bX7Zq/mXlrJ+8j/5Z+Xtrj4de0Xxbpd14g8S2smleFbPzI7Pzf8AV3k1YwvORpJ2ifKfxk+OeqfF/wASf6PbxwabtWOO2i/1dcHpejahqk0cbyeV8tfWUo2Pm68rnonh34c2ulxx3kl5HefMsn2b/lp5i1011+9/1sP7uu+loeVU1IbrbLDDGnnxTRx/6uKiruZcxsfs82GreKNeurfQ9PT7dH+8+3XP+rjWtTxR8NPG0XjKzk1Gx/4SG6uLqPzJdG/eV5Z9RY9+8Uf8JBo02h6f4U8H22oTW7RxyW0kn7y3rxvXtL+InxB+K0fhPXJLXwLptx5nl23mR+XtqL+8YTRn/tIWGh6D4ds/D/hTx5qGuatbt5dxY/aGkjrF8L/EuPwl4Jh0fQryT/hIvl/dXP8Ay0aum3vHJy+6V/DejeMv2m9evtPvJrTSodPX95HJHXZX3hz4teF77Rfh34U8RfbLH7PJ+8ttsflx1tCn7tzQ5Px58AvFHwvvtN8aajdW3iqGO8WS4sa9C8WfEab45+F5tH8AeH5LOap5OUo8j8O/ALxR488Zalp/iuPUNP1KztfM8zzPMk3VoSX/AIi/Za+IEmn6dffbNL1CHy5I5I/9XUx92JPxh4y8OeNvjnpen+KEmSWxkkaPy/8AVx27LW58DbXRfDnijXvD/jz+zIr63j+0W/2n5quPxE81onnPxu8R6DL44s7jwv8AZIo7eHy/tOnx+X5klTTfBvVJfCMnjC31KO8vo45LySTzGkjk/wCmf/XSoNblrxJ43Xxbo8P2jw/dW19JCvmXP/LOOsGGWxtdQ/0ny/s8cn/LSP8A1m2suU3hEueE9B1Lx5r2pSadI+lab/zy/wBZHuauw8E/EbR/hpNdaHqmnveTRtJ/pMf/AKDWcpG8WcD44utU8ZX0mqW9i8VjcXTeXW1HFp8unx2+qQ3Msf8Aq/tMf+sjqIq5ocXr1r5UMlwkfn2vmeXH/u1zfmzRTeY9XFEEl1ayXX/LOoYdLhuoZI93+lf6zzY6ZJNNYQxWsP7yP7RUNj4cvr+b5Ibn/tlVEGh/wiVnf6fJJb3jxTR/8spK6j4Q6T4Rg+3SeMLq7g+X/R/KhZq0+HQiL5tT7M/Zp+L/AId8R3U3h+zkuYrqOTy7fzP+Wi19TaZF/wBNK+Xqw5a1j7bBy5qNzXpk0v7mtDoGzf6uOSq/mtQUEdN8ygkp3V01YeoS+bDJsqSDmdUupooZI/8AlnWPHVAS0slWQVfKjrH1S182HzEoAx/K83/7bXG6pF5V1NH5bx+ZTpSOeqjwPxtdfb76aP5/LkkrDtdBjupq+ih8J4kl7wf8IvNaxzfu4Iv+Wfmy1yesaMv9oSf8so/M/d+VUyIqRRm3Wl/uZJEqGTS1v45JPJ8yaOOue5yWKNja+VN8n7ry/wDnrVySVpf3f/ousZP3iooLW1b/AMeqS+upLCOSOpv7xRi/66tC6lkij8v/AJ6VvEDPjlk8mTfHXonwdsP+J19onb9zHCsf/XRmoqaRuTI9+1rzIrX7PeRvLa+X5ckVfIeteTLrU1wm+D95XPga7qxuRiYWNj4a2sd/4shj1H/VxzeZJ/wGvrTS7qOw0W61T7RB+8hmuK6qrPPsfJ9vokcH9qXjSfvJmVY7aKT/AJ6VuTaNp9h+7+xx11X90o0tB0tZZpK3NL0Gz8JaXdahZxxzyXFEWY1GUZvM1S+kuHjqxHF5U3/LT71ZXOPmPaIZf+Ec0GG4fzJYbdY/3UUlcf8A8J4ss1x9ojgn8zzP9bHWUUbzlaJTmsND1m1mkSPypqbN50X+jvXZc865Rvpf3MfmSVlyeZLVG8EVf3laml/uq3sXItTXVxf/AOkP/wBc6htbqGK6jkeRKPZk0zrrrx54i/1aak/l/wDPPy69C8B+I9Qv9BjuLzUPtkkjV8zjqXLG57GX1OaVjrP311H/ANM5P+eVeA/tNfapde0Hw/b6l5slx/q9N/2m+Vd1cmBXNWsevXlaJ0HhP9lqHw5r2k6hea15slm0cklt5f8AFXt11FDqkMkdxH5trI3+qrPE4n21ax0Yajy07nnvxK0vTdB8L3l5pdn5V95y+Z/zzjq18L9U1TVLW6vNUmn+w+ZH9nkkrKcvaROZQ9lWsd95scU3+s/fSfvPNqOb97JJ/wAtYa4Yx949DmJof3UlO/eSySb5PKpyg1oaRtHUnpk//stAGbJKsVUdQv5P3n7yugg858UfEv8A4QPR4fEF5YpqEclx9jjiik8v95/er5HurrzZrjf/AKy4mk8yvrMqp/u7nz2MfvHUfDn4fTeN9QvLNL620/7HD9okll/u/wCzXRTfBHTdLum/tHxJ5vmN5cflR16/IeRUqWPI9QtfsuqTW/mJL9nmkj82t618EeIL/T49Qt9Fnlt5F/dyRR/6yuf2h1n1J4RtZP7BsY/M/fR2sfmR1a17QYb+xk32KedcR+X5vlr5lfO+1cMRY9b2a9mfHf2DytQuP3cf7tpK9I8G2EmjWsdn88V1J5clfQVHaJ49RHVahYTS2sMdzv8A3bSU6G1h+yyfvP30i+XXMcY3ypLqT/V/uadJF5VOJlIP+Wn/ACzre0Xy7+S1j8tJfLkqiD6C0uXyrGzt3kTy41rQm/1f+sj/AHdfD4mPLWPucLLmpjf3cvmUf6r/AJafvI65eU7SHylp1XECPy6hm/5Zx+dR9oUvhPOdc/Zz8B+I/M/0W60q4k/1kmn15L4u/ZQ17S5vM8P30eoW8f8ArPtPlwyba9/C457Hj18PaNzgb74QeMrC+js7jw/deXI3lxyx19EaL8OdD0vw3Z6feaLaeZbwx+Zc+X5nmV3YvFfu7mVKh7x2Wg2t1fzWMiRwRaPb/wCri/5Zx13lr4IkltftFxqX2O1j/wBZJXiy9+NzuPIda+L+j+MviVpfhO38QW1npOn/ALy4vYv9XqDR/wDLOvFf2kvjnJ8S9em8P6H+68M2d5+7jj/5aV7NDCqMjzqtZqJ5/wCF9B+3ySR2ccf2rbXdaD4X+yyR/aLPzfL/AOete1GNjw6krmt9lWL935cfl+Z+7/5Z1Xm/5aebVx0OfcjvtthayXFxceVH/wAtJJKKm5nyn0J8B/BGl/C/wTJ408QeJLbQ5rj/AFltXD+JPHnxS+H2g61rGkXl3F4V1C4kjt777L+88tq4OX3bH1Z7p8PfiXN4X/Z9+2eIPLs/E0lrJ9n/AIpLiRvutJXx38QPh98RvEetabqGox6hqFxcN5kfl/N5m6SnJXkZz0PYLr/hIvhf4JvLiz+G+mafcafGvmX2oSedN5deN/EbxR4f8R+HYdYSaT/hOI/3kksX7uOug82MfeOX8B/EvxR4D0vWtQs765s7jUI/+Pny69Y+CPgj4qS6XN4w0jVoI/tkzXHm3P7ySSRqdveNJO8SO+1T4ifGTxddeC/EGpR2c2lwtcSSRx7Y5K6T4V6pdfsyapJZ+KP9M0fUIfMjvtP/AOWcy1X2rhz+7YwbH4v+MvGXijxFrnhfTZPsN5u/e3NQ/D/4l6DdWvijS/ibY+b4k3SeZLqH+s8vb/q1q4kGb8G/2gtH8EeDda0O802e8hjuJLiz/eV4/qmvXmva1fXFxHPP/aknlx+b/rI6ylLnjYuMbSue5eCfDkfwl0u6j8YWdtqGh6h+7j1KOPd9nkrz2S/h1nxZ/wAI34D1LU4rG8/d+V5nlxySVUvcjYKbvqejQ+PF8JeF5PC/iW1+x31nbyR/vP8AlpXkNr4j02/m+z3n7vzG/d1zTleRvSdol6S1+y3Vr/Zf2nzrho45Io5P3dxXafEL4N6bYR32sJqUln5e3/W/NJJJWZsUfBvxGutG8LyafcWf2OPzP9b/AM9K891TxbNf6xeRp5n2HzP9HijpWJ5huvf2bF9n+xzPL5i1g+b+78t61kXchtYm+1fJJ/10q5HYR6pdeZp37ry/9ZRTQirdRNLG37yDzI6774e6zr3je60nwvp8dtFJu/4+f9XJ5f8AFRT0lczmrnrH/CvtB+A/xU8H65ql1/aHhm8/4+PtP+s86u++IXxQ8G/Evw3Jofhfw/8AbPtDR+Z5ke3y664+5E56ZwPg34SyfCD4heF/tmpebqWoSfu4oq/RjS/+Qfb14WMp/vLn2GWVP3di5HS15fKeyM8qlqgIrqWPy6y/NoJKN1dVk3V/5VOIHK6pqnmyfweTVWGWmQaFrFJLWl/Zfmw1pY5yvNYVn6hFUWAyf7Ghuvv/ALqvK/Hm211j/Wf6uGStYK8ia/wnzjql1NqmqXEn+t8ySu48I+F4br928by+XXvRdonhx1kb3/CLwyxySPG8Vea+MvDk0XlyJH+5j/1lRGRvOBwf2CT95+8SXzKuWsX76OS48uL/AJ6eXWJwxp2Ca/htf9Ht/wDlp/yyrL/1X7vy/I/7Z1NgkiOaKG1/eRfupP8AnlXO6p5l1dSfu5PJqiBsdhJFJ88f7vb/AM9KdJ5ks3yf9tPNoAh8qT/nn5vmNXvHwltY4tFvpEjj8ySSO3/1f+rrDF/wQjrUPRLG/k8ny/8AyJXO+NvhpoPii1mke1k0++/5Z3NtH/6FXkUP3Op1VY80bHHzeCLXwlrUNvb7/OkhX95LTtH+IMnhzxxDo7+XeWMjf6V5v/LNa+hgueJ4Bz+sX+l3WvSR2cP+i7v9b/yzqrdS+b5mz/U11ymZ2HTeZ5keyrmnxXX7yNI/3NQVJmp+8+yx75Kqx0HHc1LXXr6X939skl/6Z1Rklki+55nmVMgO4mtf7L0WG3/5bXEPmSeb/rKz5pZpfL3/AL3y/wDlrRY5zHur/wD5ZpJ/10qvDL5tbxLiOtf9ZHWx5v7v/V10D+0Z+tXX9g6LJqF5J5X7vy4/96uB8E+HJvGWvSb5PK+9cSS0TaNaTtE9Y0vRmuo47NPMlkk/dxy17p4b8OR2trYxp+6jj/dyf9dFr5zGVEz3cvp8up0HleV5klcDD8G4f+Fnx+NLjVrq7k8z93bSQ14lGr7M9j2R3n2BYpvLST9zVr/VfcjrC50DbqL7V/yz/wCukXl1x/xCv/7G8JyfZ44/3klb0Pisc9fSicH4JiWXXtNt/Okih3f6qKRv3le3R7ZY5P3flTVviY2lY48JrG5N9qjlkpv+przZPl0PX5epJDL/AKv9z+72/vKhmupIoaZjLUo/5krD1TxHZ6DdR2dxJ5V1/wAs4/J8yuilDnkRKVomb4s+EGh+MvDvh/T9Q+1WdrZ+Zcfu5P8AWM1c7D+z74NsIZI/7N+2TeX/AK2S4auyGI9lGxhVoc2pl+KPh9o/gPT4f7Ltfsc1x/rJYpP3led69FJdahJJ8/7yTzI/3lfWYGftKZ81iYezqHieqWskWqXUf/TSvrL4Q3XleA7OP/npD/q/LrhxmkTrwq5pHRWMU327y/8AyF5dbkfmRTeXXz0mexTZwOtWGk6X42vrezsdPs77+x/tn+rj/wCelec6XYTaz/pjx+VX0NB/uzwa+lQ1vsH2q6+z/u/O213nw98EWOs/brzUYX+yxzeXZ/w/dqKs/dOG3vGp8TNL0vQfC9nZ2ccfmXk3meb/AMtPlry2T/lpWtJXicvLaRX8qT/bqaP/AFn/AC0rui7EF61v7qwuv9DvLnyZP3ckfmV9DaDdLLa+XeXUct9Gsfmf9NK+dzKlz6n0GXV1HQ1Jom/jok8yWvnz6gj8rzfuSUeU0UdQA6b/AJabI/8Av7VqOKO6tY/+e3l1hYcjH1SL7BWXJLNL9z/rn5VdRgQ3V1JFH5b/ALry/wB5WHN/yFIY/wDWx/u/3f8ArK6PsGco3PQPCNr9vuv3umpF5f8ArLnzNsccdeK/tNfH2O/8zwH4ak821/5fL2OSu3B0nWrcxwYufLGx8g6xr3+ss0t0/wCmlanhuwtdU8v955Ukf+sjr66TueNI9C8O+HPKh/tRLzypvOj/AHcdaXxG8bzaXY2Mml6THZ/8s5L3/WR0tjhvzSDwH4ytfGWlx6feRx2euR+Z9n/d/wCsrS16W10aOa4uJks/s/7vy/8AlpRzc8bEyjyyPHfGXi2bWfM/dvBD5n7uKinc7OQ+/v2kvDnhG1+Gv9oaH4P/ALcjjk/ealp/7vy/9quFvviXqn7S3gm60Ozhk0Ox0+GGPzfM3R3EleZz+9Y9g+fdB8R33g3XvtGr/adcutHuPL+wyyM0fy19JfAf9rSO/wDEmpap4w8jStJ+z/6PHbR10xV5GdfQ9A8XWv8Aw0t4N+0aRryWfhu4by5JP93/AJZtXxH4y+FWl+F/i1pOj2erQarbySR+ZL/yzjrQ82M/ePoD9orxNofhzwevgmK1jvtQuofLt7aOP/V1zvgP4q/ET4QeCY7N/Bfm6bp8clx5sv8AzzrW3vBF3icb4N+MnijS/iZN4s0jSX1yPVP3d1bRx/u/m/5Z/u6P2hvG/i74oeKLHS08Mz6H5f7z7NF81T9m4cvvWN74X/Eub9n3wneaP4w0O5ikuLj7Ra3Pl+dHcV1nwf8AhppPxQ0G+8SavYwT3VxcSeXJVxGeJ/tBeA/Dfw58UWen+H77+0LfbHJcRRSbvLkr6S+EOl+A/iN8L7G8SG18u3haO8tpZP3ke6lGHLKwpTtG55n4k+Pug6N8K5vCf/Icmj8yzt5P+ecf/PRqo/Dn4LWuveF9F8QWcn2PXPO8zzI/+We2pl78rBfkp3PNfihrN1qmvTf2pqUd5NZ+Zb+ZFXbeG7XwDr3w/jk1GFNOuvJb/Vx/vPMWuXlvI3i7RMWP4Qa9LYxyWc1tJDJ5nlxf6uTzFrF1q/1iX7LpeqXU8sen/u7eOX/Vx1B1Hpmi+KPDfhLS5JNR/wBM1Tyf3dt9nrxea10/xHJq15b/AOh6lb/vI7L/AGa0scvMQ6xarYeXJFJ/rK5m6/dTeZ5f/LSiRvcteVNdWPl+X+8rovAdhoP9qSf2pq0mh2vy+ZJ5fmeZWkEWdl4d+A8nxL8Ua1J4AvoLyxs1/d/2hJ5f2iub8SeHNa+F+vSRvNc6VqVu3meV/wAtI2rp9laNzj9pc+mvgjqngOWx1LVPHOpWniXVv9ZD+73Sfu/+mdeL69dX1/8AEzXPEngb7V4asf8Apl/q9v8A00qZe9EKZg6X431KLx5Y6hrOpSahJbzeZHL5n7uv1O8B+KI9Z8N6TeeX+7uLdZI68rGPqfUZWuh0nm0ebXh8x9CLVS67VQFXzVqjdS+VQSZc11WDql1/rNlOIHL3UvmzfPJU1j+9kpkHWWMUcUMdW66LHOMkiklqnNax+Z5lRYDndUlW18zfXzv8UNZmljk/efvJN3+rrWgryJr/AAnj+i2sl1qHmJJ/q9skde0eHbCS1hk+/L9o/wCWVerJ2icFKleRtSWscsfzxpWHqmgrfw+X5aRVyRkddSB5L4o8JeVfSbP3Xl/+hVjw+HJJbXy3/dSeZW55MnYydU0byv3nl1T/ALLW6/55yySL+7qrGUkY8lrJFaySXHl/6z/V037LH7VJgUdQiWKGON7eqPm0ASaX5cWqQ3FfTXw5sIYvC8OybzZvO8y4/wCmbVhi/wCCFLWodNdeXFDcXj/6mOPzK4eHx5D5037t/J3V5kF7Snc1xM+SVjyX4weLZtU8XSbJE8mz8v7PXP6DLDFql1cXl8/mfZ/Ljlr6WguWJ4oR+I9NsPL2fvfM/wCeX/LOnfYJL/zKuUAsd5oNr9lkhk/1v7utiOJtUuvLSoMJMjktZoofnjkqj/0zoOS5NHF++/1dXtFtfN1COTy/Njt2jkkjqZGh0WqS/ar77Q8f76T/AFfl1kzSxxXXl+Z5s1aHOZuqbvOqnH/rBVxLiX7X/WR10ug6DJrN15fmR+T/AMtJf+ea10D+0N+Knwq1TWdPs5LfUoItNs1b/RpP9ZJNVrwT4Nh0bQY438yCa4j8y4ljryqlZnbGnaJ6t8M/CU2l2Md5c7/tFxu/dy/8s467TypIoY9kfm18xiajZ9dhqajTuXLWXyv+W3/XSs21l+yxxx/P+7/561wR947SbzfNjpv/AC2/5Z+VVXMSbyv3deb/AB+1n/hHPCMOoXEf+rm/1X/PTdXXQ/jWOfF6UTW+HPhz7B4Xtdcv/wDj+1S3jk+zf8++6rXijVF0HS47jy0iuP8AVx/u6uU/aVrHJD93RuczpfxL1TVNU0+ze1SWSSTy/NtK9Mk/dQySeZH/ANNPNk2+XWWJp2qWNcJiHVp3CGLzbWS4t7i2l/56SRVH9v8A3f8Aq65zrjqRzeX/AKt5H8vzK4vxR4c+361DePNJJ/q7eOP/AHZK7MNLlkRVjaJ6NN5l1qEcfz+dJ+7/AHteT698ffBvhzWrrT9UmuvOs5pLeSOOxq6dD2srGFWvy07nlPxC+PvhnX9Lvrez026lk/5Zyyx15frXxB/5d7ex8r94skdz5lfWYSPsaZ81Vl7aodR4dlhlj+0fP9o+XzP3fmeZX0RoOqWt/a+X/qrr/nr/AM9K5sw0iXhanLIIfL/tRY/M83zK6axsPNhmjf8A5afu6+akz3IM87+KHg3TYr6PXLOOSS6jt/s//XNWrkZoodL8L2cfmT/bo5P3n/POTdXuUJfuzxMXpUL3gO/0eXXo/wC147mX923+qr6K0G1h/su1+zwxxW//ACz/AOWdVVj7pzW948n+Pl1H/b1jZxR/8e8P2ivK/NruwyvE4akrSCO1h/1ktaFra+VH5laydiA/1u6TzJJf3n/PP/V1qaDdahf69HZ291J/q18uuKuuenc3oScKlj6Cjtbr/V3EknnVa+y/9cq+OP0EdNFH5dQ/9NH8uoAbJRHdfu/MqLDkZOtSwy+XJ5n/ACz8uobG6tf9Y8lbGBTuvJ1S+8u3uJPJ3fvJK6TwvoMP+slkfyY1/wBbXR9gzjK55L+0Z+0PfeHJpPC/heS2i+0Wvl3Vz/rPLr471y/82b5JHnuP+PiS5k+b5q+ry+kqceY+fxU+aVjB/sm6/eSTR/8ATStrwjYSapqkf2eN/wB3+8r2I07nPI9u0HVLGKazt7iT7HH5kfmS13WpaTp7aHqVitrJc2d9J80dzXNPQ82/JI838B/CWOw1iHxAmpR3mm2c3+jxxzVzvxy86XxRJJ9stLyxk2+X9mpwjyysd8o80jzf7B+++eOSKiuj2ZfMfqF8ePM0v9mm+0vQ7G5077HZw/u4q+W/hT8fYfhp4Hj0OPRZNQ1iRWks7mvE5z1D3j4f3/wl+HPwlk1zV7zTNV1a4/eX38VzJN/d218r/FTwRrV/DqHijS/C8+leDZLhri3/AOmatXTEyI9UsNL+H3w5tfsetXWoSa4vmf6NdeXHb/3qbrXxB8D/APCBx6fp1nd/2t5f7v8AtD95HW5y8tpFjwH+z74i8b+DbXxxpGpR/aPM/dxyyfvK77/hpG+v/DU3gnVPDr/8JlGslvJJ5f7uriZSJv2c/EcPwHuptP8AHlnd6HY6h+8sb3y/Mj8xax4f2gtLtfjl9s1SGSXSZI/s/wDq/L+z0ubkDk5jc/aG+Jel+PNLj8J+FI5PEM0jeZJ+7rh/Dvi3x9+zdoPl3kf7u8X93bXP7zy5Fq/ilcI+7Gx1H7NPg21+IMmtapqkekajfSXH2j7FJ/rI61vi1+zJp8WvabH4Pkk0r7ZdeXdW3mfu6PjiRL3ZGL8bv2eND8G+B5PEGl3n9n31vHDHJYy/8tG/ikryHQfiX4q0bwTNocV1c2djuby5Y49v3qwkuUuM+aJ6t4N+AWl/EH4c6bqCakl5fXEnmXV7/wAtLfb/AA15LdfD7WrDXtS0e3kSWPT5P3d9FJ+7qJRuaRnY9AvvFHjDwbpcej6vZwReZD5kdz/rPlWuL1DQfFHhyTSdYi0mSW3uGWSP+LzK5pK8jWMrROo+I3xGtfFvh2Sz1Hw++n6xHtkji/55zVyfw9+DeqeMrW+1Szm/s+aP/Vxf89K6vZ3lcy9pyRsHw18Br431TUtPuJEivrOOSSS2/wCeka07Xvg3fWvjKPR38z7DJ/y0qow90kx/G3w5vvBFrY+ZHJH5jf6vzP7tSWsVj/Ys0l5ZvF5arH/1z3VUYe8b+1PRvgjLD/wjs2j2dn5urXFx9nj/AOekf91q1P2hvCXiLQdL0WTxXeR+Ib7UJG+x33mfvI41rpj/AAzkl/GuZPgnWfDfgjx5puoaj5ksP2X935fzeXW548+PHijXpPEXh/Q9Njs/DeoL/rfsPlyeTWcneIWtIy/2ffAfg/xv/aWh6pY3UupR+XcW8kf+pr6K8N/FWT4QfEaPw3qMj/8ACO6pD5lv/F9jmrkqU+enY9bDVVTqXPorwv4ytfFEMklnN5vl10FrdV8vL3T7iEvduTebUN1LVklWSWs2SJZakDF1T/Ra5XVL/wAqnEoxfNatLRf9bVWJOssavQxV1HPYc9VfKoKOL8XRTXVrJJZ/vfLj/eRV8y/FaX7VHHTofERX+Ewfh7oLS30dx/qvL/eV7JpcXm3Xl/u/MrerUMaUfdNT7LD5cnm1k31hJF5nlx1zR0OnlOZ1TS4b+aSN44642PQZrW+kj8v/AJZ/vJYq7KcjzalNsz7rwl9vmkke68qP/rnWXfaNa6XJNsj/AHP/AD1krSnI46kLRPP9U0uaXUPs9vJVWH915lu8P+r/AHclbU0cFRmPqksP7v8Ad+bWfdbYv+WknmUrE8xteEbD7f5dwmzzN0f+tkr6a8J+X/wjtvGkdeZjviiVhneRpX1rNf6DeaXb74pLiPy/M/5aeXXh/wC8/wBI2Sfu42/1tc2DDFHp03gPQ/FHg2xt7jTY/t22TzL2P93NHXgfjb4S33hmaZYryO5j/wDZa9ehV5qljz5fCc//AMI4trJ9oj8z93/y0/551c8N69df2xZ+XawSx/8ALP8A4DXpylbUwkrxsfQXh3wH/b2lyag91/Z8lxM0kdt9n/d7a2PAfheTRrq8+2Q+VNItfO1cSmelQwrlE2te8B6Xr1r9ouIf9X+8/d14zNFDa/8AHv8A6nzK6sLUvE4MZT9nUCH/AJ511nw90G+1TWJI0jj/AHaySf8AAlrucuWPMeZGPNKxa1jRrqwupPtFv9jmridQl/fRx/vKqhU9tqayh7KRD/qo66bwv4XuvEdrJJZ/8s5PLpxn7PUXJz6Fi68Jaho0f2i8huYPm8v/AK6VvfD2WPzr792//PSSqlU56Yo0uSoE1/da9NHJ5dt5O7y7eKOT/Wba6bR9L/4Re6jj1eOOL7Z+7s44pN3/AG0rwasj3qUT1SOL9zHsj/hqSOvFPoKZG9Q+VJ/B+9mrGxsHm+VNT6YCeZXnfxk+H2sfFCPQdPtLq2s7G3uPtF15n+s8ytMPO1a5z1ffiela1+9mjjTzJY44/wDnn/djrzf4qedLaxyJYyXkMcfl/wCrZfLrTDVLVDgxdP8A2exzvw1lk/4SiOT95+7X95FWt+05rP2D4XyR/vPM1C4ht69b2DliOY8rCVOXD2PmHwHr2taX4k02PS9W1CKaS8X91FJ/rK+5rqX/AFn7uOKtMzoKETuwNaVTQj/efu65Xxl4j+wa9Y75PKhj2yfu68rCR5qh6GKqKMTJ1r9ofwDFffvNWk/0f/WRxWP7yvnvxto03xL8ZeItc8P77nR5Jv3dzLX0WDoOnI8HE4lOJwN9pd1a6x/Z77PtHmeXWlN8OVtZo5JJo5/l/wBVFXrRXvHm+0Owsf3VrDbpH+5jj8uuitdZ1K1htdl1J+8k/wCWdZVyYM77wPK0s02/UHvPs8kf7v8A3q9O/tmG1tfMeTzfM/1ccVfKV6bjI9/DVEonj914jvvFHnR3kKRRxzSf6uSqs0Sxfu69egrRseJXnepcr/vJf+unl19FfC/xHdeKPBtvcXEflXVvI1v/ANdNtacrMvaHgvxC17+3vG2rSPH5X7xY/K/3a5nzVrtp6ROUktb+H/V/vP8ApnLXZaP4y0uw0+O3uNNT93/y1koK5TJ1jVF1nVLzULaH7H9sm8zyoq6z4S+HJtZ8UR3lxG/k2f8Aq/8AnpJJXnYmolE7sHTbqXPdPsrRff30JXyZ9sV7rtVf/np+88393XNKTWppotCP/W+XHVG+l/c10mfMc3dX8n2Xy/8AnpWXDfzRX0caf8e/mfvLmWT/AFdamMmbEPg2b7dHHZzR/wDLP975nlyUfG7x5D8GPCclm95bSeJLyNvsttbf6ytKFL2lQ5qjtE+D9QuppfMjvLjzbq4k+0XEsv7zzKLXw5NFcR3jt/o//LOvuYs+cqM6CG1jv90dxH5vmR11Gg2sNha+XpFn/rNsckf7xv3ldvP7pxyZ3Xhv4GeOvGXmXFnoc8Ucfl/8fP7uvYtL/ZV8Xap4Ture81a10/7Zt+0S/NNJGteXORrSLXhv9hm1sLWST/hJrq88xfLk+zeWtZ837CnhnzpJHutTjm3f6zzP9ZVcyLD/AIYK0+LzNniC5imoo5kHMZ/wz8W/Eb9pH+0tDfWks47OH/SPKtf9ZXJ+Mv2c/wDhSPxM8JyXF1JeaPJdfvJfL8vy64uQ9g7D9pq18Gy/8IvrHhTw79s0ezmj+3XcUfl+ZHW18ePj74P1n4azWekTQRQyWPl/2bLXTEyPjPQfhf4gv7XRbh7N4rHULiO3j83/AJabq+lvjJ+zdoP/AAiemx6HpNrp+sR2f2y6k8ytzlqStI4P4V/FXXNe0ux+H9nfR6H+7aOO5rQh+F/ib4I69N4w1ePT/EOmxxx/bPKk/ebWq4mUg+Onxz0H4q6XpPhvR7N4rGO6WT/rnWP8UP2btP8ABGg2PiBNau9Qt7hof3Usf+so5eYOflNq++DfiL4S6pY+MPB8kmq2PlxySWkv+sjhq98UPjxovjz4ayaXpGkz/bpI/wB5F5fmSRx/xVXwxuEfelY2vg/8JfDfi3wHZ6p4X1KTT9cs/Ljkkik/5aN/z0rzv4yaz4+0bxxDo6atPqGsaPJ9ojlto/70dHwRJj78jF8UfGnxxrOn6bJ4gsY5Y9PZfLlubfbHcV9If8UL8Qfgj9sSHT4tHjs/Mki/5aWcix1EVzlShyRPlfw38X9a+GnhuPS9Ivv3clw0leiaP8PvFX2X/hPNOmS8jk/0i883935lYRlcJRscf8bvihZ/FXXrG40PR5LPy4fL8r/no1e0eEfiXpel/D21/tzTZNKvo7P7PHZXMf8ArNsf+sjaiMbyCTtE8rsfiho/i34yabqGqaL/AMS2Nljk8r955ca/u1rvvjp4j0fwbdaT4g8KX1r5N5I3mReZ/rFWumDvG5nUXNKx4v4J8B+LrrxNHqmh3EGnzahDJcf67bXQSaD4y+F/izTdU8QSeb5jSfZ/M/eeZ/10qYy902MW+1nxl8UNej1x9JfVdN0+6/1dtHur3DxJ8afhzL4RvNDvNJudP1ySHy5NN+w1UZe8Ynifw10bVLDT9S8UaXcXOlaxpckcnmSV2nii/k+KHhPUvGHiXXo7y42+XZ23mbfLkrWP8MqXxXOD+AfxG0/4aePJNU8QWKa5Yxx/Y/8AV7vL/wCmlejfFvx5p/xa+KFnZ+A9W0/StNkh8uS58vyY65ou8TSorSPJ9a8Ja54S8RR2+l6kl5cfLJ5mn3X8Vdt8OfGWseHPiNNqnjC1k1C+ktf3nm1V+XQau9T1T4P/ABph0bxRq0dnDdRWMcyyV9geF/iDpfi218y3kSvnMTS5T73Ay9rRudR9p96huq5TqKslU7qX9zUgYeqSyfu64/VN3neXTiUU44mrWtbWSKSPZ/rK2sSddp8Vbnlfua2M7EkNrVW+i/d0EnmfxAuo7CxvJEk8qH/np/zzr5P8ZS+brVxH50cscn+rlp0PiIr/AAnXeDdLki0uOPy/N8uvUNLtY7D92n7rzKVVG9KPulryvNupP3lUb6KS1/56UpaGvKc3qFhNdSSXHyQRx1lzaNcS+Z+7/d1NORl7O5n/AGDzf9HeOT/v5/drJ17RvNj8xNnk/wDLSKuqDPOrwtE8p8SRQ6XD9olm8qTzP3dc3qFhpMvh2PULbXvNuriRpJLaWOvSpo+bmzB1jS4YoYdQ87/rpWPqH2W/8mO3k/0r955klFjDmOy+HsS6pJDp7yeRaxzR+Z/wKvpb5fMj2Sfu4468fHfFE3wbvIp+LPOi8O3WyPzZLj93J5v/ACzjrzm10uOw0Gb95HLJcVzYM0xR03wzi1Tyby487zbHzK4X43azN5flp/rP9ZH+8rqoe7iLHny+E8futUvvssdu7eVHGv7yvZP2f/h9HqlrJ4g1KNJYfmjtY469OrK1O5MVeVj6I0uJYrGONN8Ucf8Aq6tRxRxTSSJv/eV8jJNn1cLQiUdetVi0u6j8z7HJcQyR+b/zzrwuSwj+ywx28P2ny69vAq8T5rM3eoVfN/v1618AbWaLw7eaxcSSeZcSeZb/AO7XVjJcuF5jhw0eatY77xRrNnpeg3VxeRxyx+TJHH5v/LSRq+Z76X7VJ5n7uKuTKqjdO504yC5tCn5TS17V4H17RbXS7Gze4js7j/nlLXrVY3p3OKnLlqWKPxW8R/b5rXS7eb9ztjkkljk/1klZ/hfy9L0+HR7aGT7dqE37z95/q1rz4z5aZtL3qh6J4X8OXWl3XmXEcf8Aocfl29Q3Wl3Ws/EL7Q9j/o9nD5cfmV5VWR79KJ3ljawxfcjSh64j06Yyopv3v/PT71TY2E/5a1LH/rKgA/49Y/L/AOWdYPi7xbH4S0H+0PL8248zy7eOrpxtK5z1fciGj+I/7Z0GHVP9VD5fmfvP9ZXO+NvG9jqnhuaz0u+826/1ckddNKjaoeZi637uxwNrdXWg+A/FGufv4po4ZLe3l/1cm5q8F8SfEbxN4o0uG31fUn1C1jm8y3jlr6zCRU/ePGguWnYd8PfFreA/Fljrn2NNR+x19BaL+1B4b1S6tZLjTdT0r95/12rLGUHXid2FrKjUse5TRW8UMlxcfuo/9X+8rxXxxqn9qapqGoJbx+dI3+j+b/yzjWvGy2PNUJzKo4xPle6iaK6k8z/XSTSV6R8K7+T+y5rPyf3Mk3/oS+XX11KKcjxaqbic34utfsvjiG4T/UyeXJXYebHL9ynFe8HKQ/6ry/3fm+XWtDF5UcNc1ciDOytdL1LwbdahcXMPlRx/vJP3lFr8WtLih/0jz5JJJPM/eR/8s682dNTkddKo1EwbrWfKmm1DTv8AUyTSeXFWhr2qR2t1DbvHJZyRwxySfu/71bQVpWJnC+pkyXV9Fa3lxb/vfs6+ZJXUeA/ihdeF7WSz07T7Xy5P3kn2uunlRxWOf1qWbVNaury4/wBZcN5n7qmwxTU9okkN1a+b/wB9eXV61ij/ANX5nm/88/3lIrmPaNH1TQ5bW1ji1K1l+X/VV0Wi6Da2s3yQx18zjKjUT6TL6aepsfavK8v/AJ6SVJ5rf6yvIPoDzX4rePL7wvqljHp0lt50n/TOufsfjTfeXH9stf33yx3ElepSwaqU7njVMU1UsepfavKjj/1nnf8ALTzaybq6muvM37POryz0eYzfss0usWNmkb/6Zu8yT/lnHGtdFY+DbOWxk3w/bL63k/1kslakyZe8WS6T8PvDtx4g1S6ufvRxxxRx+Z5kzfdVa8R+Kvhfw3/wjd94w+In2q88VaxH5ljbW0jR/Z69HCe7UOWu7RPkOG6/tm+juLj/AFca+X5ccdeveA9B1bxHJHHb2Mkvy/63y/L/AHdfURZ87UZ7Z4N/Zah8ZapefbJrvQ7WSH955dereG/gjpfgi6huNL020iht5v3kf7ySSSjn9045M+hvBsrS2PmPJJFXUWtr5Ukm+T95Iv8A47XJOR00iG18OQxfu0/dQ0TaDD9q8zzP31RzM9D2Q3UNGh8mSSKOijmZl7M+B9L17WP2MviZqVvcWMeoW+oWv7uqPxCsPil8X/Dv/CzPEH7jQ4/9TZeZ+8jhqqb909Gx7p48+IPgG/8AgjeSWd9ayx6hDDb/AGGL/lnMy18C+PNB1TRrqx/te1k/dr5fmSR1vTOaSsfYGi+ErX4l/s5yXFveJLHZ2P7vy/8AlnNHXh+qfG7xR8S5LHwenkfapJvLjli/d+ZH/wA82ren8Rxzgdpffs3ab8PtFm8SW99d6Vrmnwreebc/6uNlrg/GX7Ri/EubSdL8Sx3On2P7uO+l0uT93J/tVUv3YR949s8RfCr4X+F/A91rCQ2v2eS18yzufMr5d+IXxa174g6PotnqN895b6evlxx1MtY2COkrnbeG/jJ4+8R+A4fD+kaL5vl/6HJqUW793G1WP2fdbh0v4oSeG/EFmkVxeK1v/pP/AD0Wr5w+zY9I+NGgyfDTR9W8aeGpLrStc86H7R9m/dwyR/8AXOvC7H4g+JIvG2i+KNRhu/t37uS48qP/AI+FqpayIjpE9q+N3xV8D/Eabw7pekTJLDeXC/aPMjrn/it+znqXw+0fVtU8Kef5f+sksov3n7utJR5xRlyGt+z78B/D/iPwHJrF5HHqEOoeZH/1zkrn9Q+JHiLQdS1j4Z+H9PglWOTy/N/55wtWJp9q5h/ssy6P4c+KF9H408jT/wBzNHH5kf7zzK6j9oLxbdfFXxF4d8P+Go/K8O+d5cdzcx+X5k1KOkQlrI7rUPgjffAfS7fxJ4ctfPvreP8A4mUckn7u4+WuT+MHhf4c+MrrwnqFvJBFdahJ5dxFp8n+s3VrF+7Yn4pXMf4mS33wCtdF0+3h821t5PMt5JKq/Erxb4s+PGgwyaH4bk+yx/6yXzPMolqEdC5+zf8AF/Q/h94R1bQ9Xjni1aO8/wBV5f8ArKo/Ez4fePL/AOIUPiy48Mx/ZY5o5I7a2/u0Q96nYJHfeLtek16HTbPwBpv+na5ZyWd9ptz+8kt6+VfEnhzWteupo7e1T/Q/9DuPL/vLVVHcVL3InpXwl8EaHf8Awz1rVPtlrF4is1b7Rptz/wAtIa9q+DfgP4N6N8L5PEGozWk/iKS1kjkttQuP3dTHSNhy1lc+fYdG0u1m1zxJ5cn9hx/8ePmf3mrqPg/8L9H+IPgPxB4gfxN/Z+pWc3lx20sn+rjVf9ZJWUdDS/ulX4cxLrOn6tJpen3Mv9n+X9ok/wBZ96vfPhzdXWl30kieZZ2scPlxx14OM1Pu8tf7k+otLv2urWGST/WeXH5lW64D0LFaSqMv+qoEYesfvf8AplXNz/62gCtWnYyyeZHQbHbaT/yzre8utjnJo6p33+r/ANZ5FAHjfxG1SGKOSS4kSL/ln/10r5p+yzS6xN+583y5qqIpxvE9Q0HS/K+5J+58uuw0+KOWpCES9JE0X/TX/npVOaw+1TVB1mbNYLFdf6uqN9o3775If3dVc5zn/wDVffqP7LDdfvPs8daw+IirD92cX4olh/4WB4d8N/Y9Pi+0fvJvNjj8vy2jryvxR4N0P4N+OYdL1e6/ty1ktVuJPs0fmf6z/lnHXv0l7p8JXd61zy/xtqmmy61qUekWc9to8knmWsUv3o60tJt9Jnt47iwjkikjh8u6jl/vVMYnHI6zwj/oF1Hb2/8Arri6Xy5P+edfQkMs32WO3eR57qP93JXlZmuTlOzAr3pDpP3Xl7/3X/PT/nnXmOtazY3Xk2enR/xN5klceFVzTGO2h0Gi+Ml8L2MdncR/u5P+eX/LP/ppXgfxevbXWfiNefZ5PNh8zy469OjTtUucMXc6Cx+JelxR/Y38L23kxx+X/q/Mrl7Xxbq1hqn2zTtSutP/AH3meXHJXqcvNoRH3NT7A8C6zJ4m8J6bqkt9BqF1ceZ5kltXSeVJ+8/d+R5lfHV4ctSR9PSnzxOf8eS2NroMn2ib+95cVeJ/88/Lr18HpTseDmE71rkmn2El1J8++WPbW9o+qal4c/d2dxJ/17f6yOuv2XNGx5UZXlcvax4o1jxbosdncR/ubeTzJPLriZv+2lbUKfKRKXNIk/d/6vzP/IlWvNjltY/3f7zzK3IOqur/AMOxeG4bPS5EvNSj/d/6uus+Eug/YPL1S4jn/wBY0cf/AE0rxcXLkp8p6mBTnW5j1KO6aKHy/k8mm2ssnnSRp/y0r54+sCH/AFMf7zypqmk/5Z/8taADzY/3lVZpVrI6Aj8uX7kdSR1AGP4s1T/hHPBuuap5P7uzt2kri/Cd1eeI/hLa6x4zm/1n7yOTzPL/AHf8MldtCH7s83FOxxdrrOpedH/Z19dxeZ/yzrWsbVvBvjKxvNUs/wB5t+0fva9vk92x8rOoYfjy/k8W/wBpW7yPFY3k3meXFXl+ofCqOWST7PJJFD/yz83/AJ516lD3DOMuXQhtfhLrV/ffZ9LjS8k/55VveDfgj4qi8WaT/aOgzx2Mc0clxJ+7k8uOtK9aMInbSjzSPqbxJL5Wg31x/wA89v72WvAfEl/q1/dabHZzW1nbxyeXJ+88ySTdXhZfDlKx2sjk/F3w5hlsf+JRZx/bvtHmSfvPLrkbr4c+JLWGOT/VR7fM8q2k/eV9HE82nVOutZbWK1hk1T91fSSfu/MpvmyfvP3fmzeZJW0tQOZ8UeI7rS7q1+z/ALrzF8ysP/hN9c8z5JvKojG0i4xtE0pPi14q+w/Z3uklh/1f7y1jre82TyY5P3fk+XXNXXKVy8h1EcU3/CLx3nyfZY5Fkki/56bq7L4yeHPsGtab+7k8mSzhkt5f+elc32iTjf8ATItF1bZN5XmQ/vIopPL/AHfmVm2Pmed8+ytA+wdNaxR3VaHyxeX+7qjkMmSo4/Oik/db4qkC1a2sms3X2N/M/eSR/wDbSvp7S4ltdPjt/Jjimj/d189mXxH0mVe/qOm/66UTXXlRyfu/NrxvZ3Po5v3T53+I2qR+I/Fk1x/yxt/M8uP/AJ5t/FWb4dtZrrXoY0hkl8xo/Mr66l7mHsfHyfPiLnvlrK11/wBcfL/1tOml+y18qfTlq1i/eRyeW/2qStjQbqSWaTfJJWcEVc4/+1LH4tfF6T98/wDwh/hP/TLiT/lnJNXyb8dvFs3xa+IUkel+XFpNnH5dv5fzfLXvZdDnrcx5WM9yNje+Dfwlurqa1k8uOLzJF/1sf7yvtLw34D0/wlpc2n2cKfZZP9Zc/wDLSvofhPlZT55HXaPF9lh/0eF5avX0Un7zf+9hrmnqaxLWl69NYWv2PzP9Z/q66bR7q4i1CGS4/eyeZ5f72szuidrUT0HUMooKufIn7VVrN/angXxo9jbSw6fff8e0lXPjJ+1BoPiP4c6lpfhqS50/XLhY447b7P8Au6yg/dO2x8l+JNB17QbGTS7/AE2fT7G3mhuJJZLf93JJ5flr+8r6E+PHxB8A6z8G7W41Ga11C+vLGOOzii/126uumc1VWPE/hT4D+I3iP4Z69H4Xup7PwzIrSeVJJ+7uJqw/h78NLXXvCPiTVNUup9PvrPd+9j/5d2Wt6fxHnzmY/jb40+IPHnhvR9D1yaO80u3VY7jyvlkkZf8AlpJX0V4R/Zf8B3Wg2MjxvqEN5D+71K2/1klVH98EvcPmX4jS3nhLVNW8D3l5cy6Xpd5J9j82T/lnX0t+zfpfw38V+B49H06O2vL6SbzLi21Dy/O8xqmOsrBLSNzH0e60X4D/ABa1Lwfq/wDyL+uSQ3Ecsfy+XJ/00rB/aki8LxSWtxZyWsWuR3EckdzF/wAtI6vkD7VjzmTRvip8S7G1/eXWuaPu/dxxXXmR17R+zz8V9L03Qbrwv4r3aVq2mt9n/wCJhb/6yGqjrImWkTxf4oS+HYviN/anhqG7n0P7R5n2m2j2xyTL95q9K8Rftcr8RvDcfhuz0l4tW1SP7HcXNEZ8pUYcxj6XL46/ZfvpJLOT+0ND1T93JF/yz8yrXwllk8G/FSTWPH9nJp9rri+Zb33l/wAVSH2bnZah8Rvhvqn7SWk75NPlsY18uTVJY/8Alo33aP2xPFtrpdr4T1DQ77T9Q+z3kkccVtJupS0iEdZGx4i8efFD4oeA7GTTvDtrFa3kPmRyxSV5X8L/ANl/UPHnhvVry81KPT76zupLPyo6cX71ifhjc5fXrCbXviZpvhvx5qHm3Fv5dn5kf7zzP4Vkr1zwbf8A/DPGvR6Hrn/Is3k0n2W5l/5d5K0jqEtDz+68B+Iv2gviVqmqaH+60Pzv3l9/q4469Sh+LWqfs8aLa+E/EtrbarNbxySWupRSR/vI/wCGOiHuaBI8r+Gd/wD2DrUnjxNWjlmvI7iTy/3nmW8jVD8EfiN4T8OaX4gk8aQ+fqVw0clvZeX+8kZqm9wj70T0rVP2QY/FHwv/AOEk0uaTT/EVxuvPsP3Y9teF/C+Lwrpfjyz/AOEos/tmhyf8fHm/8s6qWkrCjrG503xM0vw74y8Wahp/h/xJPp/hWzj+0eX/AKy0jqH4I/BvS/ih4ouPD9n4wfT7WNfMktpY/wB5JWUtB3909atbXwj8FpvHGh6HHqeoXV4y28n7v93b7ab4N8UfYL6OO4hk+yyV4OJ1Pusuf7k+ntB8W2uqWsf2f/Wba6L7V5tcB7Ng8yqt1QZGRfVyl1+9m8ygCpWjpctBsdxovl/u5K6SGWtjnLEcVUb7/VUAfP8A8ZPMurX7Gn977RHXmPhO18qSST935klVE3teJ6Np9r5X3PMresYmqTWnFGhN/q/Leq/2COL95/y0qCTPmi/eSSVDdRSS1NznMO60v/Wf88/L/d1zuoX9ro1reXF5v8u3/eSV0w+IdWX7s+Pde1nUviD42muLP/WeY32WKSTb8q123izw5dS+CdD8cXerJdwxzSW81lcyeXNH5f7vy1r6OkvdPzebvK55Xo9q3ijWPs7yJZ2+1riSX/nnGta1jFY2GlzR28cn+mfu/MreMSGd18Obqzv7GGO8tfNvvt0cnmS/881/d7a90tbD/Sv3sMdeDma5uU9DAr3pEPi6/wDsFj8kfm/NXh9ruutauNkf+r/1lYYFXM8wdqli5dRSReX+8/5Z15X4kik/4SK8kuZJP3bV68dNTzaTueqfBX4Sw+N9P1LWNXj8qx3Lb2dU5vg3fap4y1LQ/D80csNvt8ySWuX6xy1LHoxpc9O59FeA/BsPgjw3p+l28iSyR+ZJJ5ddZD+6r5+pPnqSPbpR5ImD4o8G2vi2GGO4uPKmjk8z/V15frXw01LRpP8AR4/Ntf3nl11YapbQ87GULyuanwL8Jf29feItU1GH/RY/9Hhtq6jxR8G9Pij8vTrq5s/3nmSeZXRUxXJKx51LD3jc5+x8LzWGl6h9z7defu4687vrX7LfXVvL/ro5PLr0cJW5zgqw5JDfN8r/AJaU+uw5zsfBvgO68R+ds/49a9ysdLt9G0u30+3j/dxxx/6yvmMdLmqcp9VltHljcmk/2JJPL/5afvKP+ecn/PT/AFdePc9Y3rW1hlhhk8vzfL8ysu+8uKb5P9TWgFH/AFv/AC0ouopP9Y8dZHQEMtLUAYXjzQbPxB4J1LT9Q8/y5Fj8z7NJtrwW+/aRsZfC8nhe38PvFpsa/Z45PM/hWvdy2HtdDxMc7GT4d+KHh/7dHb3klzZybv8Ax2vQPEniPT/Ft0uoafJ9rt5IY/Lkr6DkXNY+VqIxf+/fl11ngPwvDqnmXlzD5sMcklvSr+4a0o89SxJ4oi/4Q3VP+JdNHZyeX5n7v5ZI91Zel/tN6La/arfX45IrrzvL82OP93XnfV5V4ndGXJIuax8S9D8eQx6fpEiXljbySXklYMlqssnyV04aHKefiqt5EN1FJF5cbx+VN5fmVn/ZYbCb/Vp5lelE4YHmfjzS5rrXtPjT97+7/wCWX93zK1LrVLGK68u4kSzk/wBZJW0dTtMfVNLh8W3XmWc0f7v/AFlTWPw5hupI9+pSRf8APT93RKVpFylaITfDRfsvmfbv73+tjrQtfsug2sNnqMkcUkf7v97WdRc5PPzHTWsvm+DZJEh/c/8AHxH/AN9V7Z4ytYfFH2W8eF/sP9mx/Z5fveXXD9oo8Vmlm/sW83w/6P8ALb+b5f8AF96m2ujSSzf88v3laB9gLG6k+1SeVv8A3danm+bJVHIQ/vP+/kdR/wDPOSpA6bwHFNqnijTY7f8Ae/6R5kksv91a+gJrqOWaSvnsy+I+kyr3adw4rnfHF/8AYNH1DfNJB5a+Z+7krz6bue3N+6eBw2v2ry5Hj/d/8tK9m+F/hLR9L0f+0Hj/AH1x5n7r70dexiavJTsfP4Knz1Ls6ya1hi/496j+wfb5JN/mf88468I983rXRvN8uPzv7v73y6zfiZ4th8EaLY6XodrJqvirVJPs9nLHH5ckdFNE3PHfip4j0/4LeA/+ETto/N8QeILPy7zy/wB55m6T/lpXlPgf4c28v9m/Y5I/t3nfvJK+qyqHLHmPBzCrzSsfXHw98Gw+DdBvI/L8qSS68vzZP+Wddx/qrWOR5PK8uP8AeV6PxHhRjyyL11f3WjaXcSaXDBeTSL5nlSSf8tKh+HN1qXijw7/aGqWf2S6/5aRxVzbmsT0bS/CUMU0fmSebD5iyV1lraw/u/wB2lZndE0pKpzSx/wDPSg6hsO2Wby6KCbnyvqnxV0/9qX4hSfD/AEuHyvDv2fzJLmSP955i15j8UP2WtY+FWjw64mrWmueXeR/u5I/9WtRL3T1IrkPZvih8S/APij4L6tb/ANpQRX0dj5cdl92SOavmH4A/C/wn8S4fE0euwyS6pZ+XJZxxVvGPvHNX92Nj3b4F694fsPg3qVu99Hp+k6fcXH+tk8uSOOvj+xsNc8RzePJPCl15vh2zb7RJ/wBNF/hrbkPO2PQvgj+zT4V8R6DY6xrk0l5HeQySVY8US+NP2c9BvLNPGEkuh3nmfYY/+Wla/CT8cjzP4N+PNJi8ZSXHjT/iYR6x+7kvZNv7tq9M/aQ8OeFfhzH4f8SeFJI7TWJGj8uXT5P3fl1MfhsEtZXOL+H/AMPtc+N3i6bXNck8393+7l/56ba5/wCNHwq1jwl42tbPy7nULXUI/Ms6upDmiaRnY779mP4jf8Ibr154T8YXn9labJ5kln5v7uS3mqP9pbxl4d1m+sY/D9mmofZ45PMvbatOb93ymP2+Y6b9kvxb4d1nw7/wieryW0V99ok+xx3Mn7uSOuN8ea94N8OfG7TdU0PRUtbfS5I/tEUf/LRlb5qPs2K5feuaXxM+N198UPsMfh/w3dy+H9LvFuJK9m/4WD4F+I3gO+k1ySCK6s/3kmmy7o7uOiL5pXMrcmh5b+zz+z74f+IOqSeJPO+2aPHcTW8emyVR+Mnwb/t74wSeD/Cn2WL7PDJeSf8ATNqy/wCXdjX/AJeXO0+HvxVvv2bvDc3hvxXob3n2ePzLGSLzJPMri/CfxL+Jmg69J4g0PwzJqGm3kPmRxeW3lyRrU+QeZT0fVNP+L/xKmj8Vw22hyaxG3l/89Ldlo+IXwv1i68beG/CfiXxRc3nh+T/V/wAUke6tZahI7S+0vXv2X47HUNO1L+3PDck3l3Gl6hH5deSx69Z/H341Q/8ACS31tp9vJ5dnbyRR/u6JSCnC0rm98VvhBN8B9L+2JN9s0PUJvLkil/1kc1aGoeI/AfxS8BrqHiDSdQ8K3UcK29nq+n2u6O4kWrCWpk2v7Q/jz/hXq+A9O8j7LJ/of2mXd53k1D8B/gtqnjzxFq2h3kKRQ2/7uTWf+edKMbyuEZWOL8XRR/Bb40SbI/7Vh0u4jk+zS/6uSuy8bfFrwvf31j4w0jRZNPvtQ/d3ltF8slvMv3ZI6xi7GstTrtF+IOm+I/hroul28j/breRpLzzP+Wn+9TbW/ktYZK8evH3j7PL3+7sexfDm/k86PZ/qa9otdZjl+/J5U1ecfQzRamv/ACpah+3/AN+gwsZuoS1zdz3oCKKvm1qaL5ks3/LOoCx3GlxeVDHXRWsX7mtKgFyOsXXv9XJ/u/6ysogeC+PIvN1T5JH8zbWTpelx2s3yfvZpP+mdaGp10Nr5UPl+XVy1i/ff6ugsveVUM0X/AF0lokQVP+WVUpovKh/5Z1kRIy5oluvMr5x/aQ8ZTaXpcOjp/wAvjeZJ5f8Azzr0cLrI8fMJctGx4L4A8R2vhzxzpWqXmkx6haxzf8eUv+r+avWv2gvtWqeNodUuNJ/4p28m+0R2Onyf99V728bHwe0jhdU8Gw/2fZ+KrPS7nRfDNxdNb+bcyeYvmL83l1x+sSrFawxxSfu/m8urlD3QjI6TRb+6tfDt9ceZ++s5I5P3X+sr6M+HPiaHxH4Zs7q3k/1i/vIpZv30ci15+MXNTPQwUuWQ3x5fx6Xpckf/AC2uG/1tcHotrDf3UmzzP3dcuG93U5sZ70jF1qWOKSaOOOT923lyVwevSyapqk2z97NJ5dvH5Vdd76nNBWPrDwHoMnhfw7punp/y7w+XJ/10rS8E+EpPBtrfR+d5v2yb7R9pr5qUvaSPoaatTidINv7v/V1emsLr93J5dZl85DdWs1rHJIkn+rrBkl+1RyXH/LONa2JudZ4DsI/+EXs9lv5UcjNJ/d8zc1Xtf0b7fayR+Z5Xl/6us4xMpI42+0b7BHJcajJH+7h8z/WV4Ddf6fNJInl+ZI3/AC1r2sHoeNi3aQ26tfst1JH/ANNK1NLsGv7qG38uSfzJP9bXqXPP5rH0RoMvlWNvZp/yzjrVr4qrpUPtqWtOIzzf+mn7yoq5zctx/wCrj/5azR1DdRfaof8AWf6ug0iH+t/5Z+V8tEkX77546DQI7X99UOqXUOl6XqV4/wC9t7O3kuJPL/2acKfvGcnbU+W9Y/ab1DWfC+paXb6HBBJeQyR/a5JP+WbV4f8A8sfLr7nB0PYRPksTW9pIuWug6lLayXFva3N5D/y08uPdXslrdf2D4D8zzP8Aj3tfM8qKu2KtE4KnvaHnen/EvXtL8zfIl55i/vPMr0L4e/tI2Phexms9R0WT95Gv722kqa0PaU7G8Pclck1T4q6T4317UpEs3/0z/V21eMzWrWuof6XDJFNH/wAs5awgvZxFf3j2r4e6Mth4Rhkf/XXDeZHJXQfali/6a/8AXWTbRY8uWsg+3rL5cnl+bN5dYN9LHWpEEU/9bDJHcRxyw7fMrxnxlKv/AAkUn7v/AFirW0vhsd9Je9c3PhruimvN8fm/NHXpXyy/u0qbe6RV+Ihjv7WWTy5JoIvM/d/vZK4P4hSx38drIkiT+W0lTIdKPvXPZobDTfCVr4Tj1GSf7DeaPbySSxV7RJ5fijwHdXGl7JY44fL83/V+Wy15kviNDx+bVPN0/wCzvHHL/pn2jyv+mm3y66TS7Cz1mx8y4j/h/eeV/wAs63+yc1jgfFmlzeF/Ekdu/wDqdvmRy1Xhl/5aURHId+7l+/8A8s6jm/ezf88qI6GcVc6r4S6XHf8AjKGT7Z9k+xwySV7p5skUMdfPY74j6jK3y0yGa6rJ1CwhurGa3uP3tvcbo5PLrzD3DN0H4c6Ta/aI3+0xeX/q/Nk8yus82O1tY7NI/Kht/wDV+VW8qnOYUqfszH1TVJLCaOP/AFtWLXWYbWGOTy6wCx6JoMVr5M1w9rJF9nh/1vmeXH5n3q8f8G39rqmteLPiJqM3+g2fnR2cny/vFrpoUXKNzOdRUj5fvtZuvih4yvvEGqf6yRq+jv2c/hppuvf8TjV45Jbf/ln/AAx/LX11On7KifI4mXNI+jr6KH/Vvs8mqv8AZbX8PmPH+58ysDAsQxTS/u7iT/Vx101ru0uHy9OjSzhkrSJ0HWaXqkMWl2/2iSP7V/q5Kuafqn2qGSRI/KqbGlya61nyrH55P9IrHm1m68mT/V1VjfmKv2q68n5LiTzJJKK1sTzHyT5Wj/s0/Hi+1Dw1J/aHh3y/9V5n7y3/AOmdHxQ/alm+IMdjbv4Zu7O3juPtFv5v7vzI64I++fQSXMd5+zv8NNJ8W+Ede8SeJfD9pFHrlx/o8Vz83lx18n/GTw5qnwW+JWraP4Pm1Pybi18yrjP3jir+9Kxl/B/4XyfFXxJq1nqOpPp82nw/8g37v2iOt7wno2veEtY8deD9L0V9Rhkj8uT/AJ6W8dehzHn1NB3w5+KvxK8B6pJ4f07Tf+Eh8uFpLeOX93JHtqjr2jeNvGXxC0XXPGdjJ9h1S8jt47b/AJ57qPiI+CR7N+0F4N8E+A/hfNZ/ZbWK6kka3s4/l8zzK4H4f/s5/wBvfB+PxBb6k/8ApHmf6395HtVamPxWCOsbnA/CXxR488ERzahpFm8ujx7vtH7v93XtHxG+MngXxRH4L8UJHbXkdvNJHcRS/wDH3HW9OXNEJRscj+0t4t8I+I9B0m80OS11C4k/eXEv/LSuk/ZP0bR7XwbeXHmafqElxN+8srmHdJHRy/vOUn7HMcD+1N4N0H4feONFvNDs49PuryOSS6iiko+EvwM0f4yaDq2oedJZ3VnN+8l8z+991qPtWK5vdudF8L7XUv2afFkmh+KNmoaHrEfmR3Nt+88uub/aC8eeEb/VP+Kfktpbr/lpfW1ZyfJG4W5qlja+GvwR+IFr4N+2ad4su9F+2L5kdtbSeXWL8JbX4iXXxMk1jw3D/aF9pcn2e+8yT/Wf3o2peQeZsftLfEvxRqmg6bb6vpqaVJJ/y6V3XwH/AGpdDtfhrHofiDzIr7T/ADPs/l2+77RU/wDLywf8u7nzzr0t58c/jBJJpFimnySf+Q9tdh4k+DepWtjef8Jh4ong8RRx+ZZy3N1+5uI/7vmVrHUJHWeKPgt8RPHnwph1C88UPrlrHax3FnHJR8Jf2afCfi34e2eqXEl3/a0n7u4k/wCebf7NaSgHPaNzl/jlrPirRvDdj4L8Vxx6rJZzeXb333ZJI1+7R428R2ul/BfRdP0OOP7DeSNHeW1z/rreb/WfLSCOp574X+KEN14i0WPVNNj+y2+2S8k/5aSba7y6+KvjzRv+EiuPBf8AaEXg+8m8ySPy91KlO8bhKNji9FtfDvxG8ReX4g1Z/D0cdqvmX33vtFUdUi02XUPsb/ZdV+x/6u9tvl8yqlTsax1Ok0+6jlhjk8tIo/M8z/pnXWaPLJdapDH/ALvlxV5lePvH1+Xvoe8fDnS5POk3xx+XJJXpUP7q68z/AJaV87c+tqI1I7r9z5fmVXklrQ5LFW6uo5YawbqWgIoh8ytTR7r95JsqAsd9pfWOuitZfK8utKhmWv8AW1g+KJfKtZN8nlQ1lEDxnVIvtWoSU7S7Xyv3j1oal6TzKmtf3VBZoR1RupfKokQVZpfKm/7Z1XupfNhk83/XSVkRIzZvLihk2SV8O/HzxGuvfEbVvKkk8uNvs9vXo4HWR81m8uWNjgdF+yy3UP2yT/R45l8z93X0tovw20X45yahq0X2bw1p+j6K0kckX/LST/aWvehrKx8hU0kcz8PfjndfD74Z614L1HQdM8S6Xql15n2bUP8AlnJ/eWvGbr97fWsfl/u42q5T90IxOq0GK11T+2o08z7telfDO/j1m1m1DzP9Bs/9Dt7by/3cf/TSuerHmpl0pcsg8Xa9Z+MpLO4s7hLzy/3dxL/q5PM/6513nwL0uO1tb688z/Tv+edebL3adzSXvSOX/aC/svzIZPM/07yf3nlSfw/w14joP2q1k0m3TzPMuLiHy5f+ecnmferem707hax9nafL5v7y4k82SP8A1kvl112j2H2+P55P+2VfKxfLI+gtanEbJ4cklmjrW/1UMf8AzxrU5uUpzS+bXM+Lollj+x28kfmXG3zI/wDnpHWwrmxp/wAS/DdhJHo/nR2cluvl/wDTOPbWlDqi6pHJcW80d5/1ykrpjE5ZVDyfxR8QbXxH9s0Ozhklmkk8v91HWL4DtdL0uHULjXI4/wB3+78uX/WR7a7MNoeVUftJHO6XFHf6p5iWqfYfOaST/pnG1V5vLluptkL/AGXzK7eY55wse1fDOwaLwva3H/P5+8/1n+rjrsI6+SxOlQ+yw2tOJDNLHFR/y2/1dc5uF1FNLD5f/LGSSo7WWT95GlBpEuR/7cdO8qg0Ks3/AFzrl/GWgzeKNB1LQ0m+x/2hD5fmV1U37xx1ZWp3Phu+tZLW6urNJPNht28vzP8AdqrDti/d+XX3lKfPE+SlC0j2b4V2rReF45Hh8r7RdV5Lql/NdXV1++/cyNJXVJWiYU/eqWKPm/vvLp3+rrCMraG/xRueieB/Bt5a+IoZNRj/ALPmjVv3tVfHGl3WveLpNkP/ADzjklqaivE5ub3j1qP91pdnbp5csdvar/qqjkl83y/3lZWOOOsiHzfNhribHxvDql9JZpG/8X7yX/loy0x00Z/jjWbqwtYbizkki/d+XJHXl80rX80lxcSPeTf89a2l8VjvpL3bnZfDWLzdU1KP/notejeV5sMklv5fnR1VvdMKvxHk/jy1X/hKL6S3k/uyVT0uwur/AF6xs0jk8ySaOOOsZHbSj7tz6i+KGlzS+LtN0t4/+QfYwx11XgO11K60+6s/M/c7W+z/APAvu15kviOc8r1qKS1mkt7iOSL7skn+8tYf/CZL50n2O8ufvf62L93W/wBkyM+61STVLrzHkklrotB0uTVLqO3t5I/Ok/5ZyURIkWr6wksNQks3j8q4t5PLkjlq1/whGsXWnx3lvHJeQ7v9bRLQKSud58JfDl5YX2rXFza+VD5cccdeieb+5r57HfEfW4Ony0wm/e1XmtWl+5/y0krzD0y59gk8mP8A56VDdRfvvLpRXKVJ3MG6lvL/APd/v7yG3kby6uaPpd1f6pZ26QvL5klMysZv7U3xBm+H3gmTwfZ/apdY1SH/AJZw+X5a18d6XrOqfYZtLs77/iVyfvJI/wDno1fV5bRUqNzwsdUPUPhroM3iO60/T7P915n+sl/5519aeCbWx8G+G4dHt5LmWxt/9XF51epXf7k+ZlLmkaGqa9dS7pPnl8z/AFddlot1Ja6Xa7/3Unl+XJXAbF7T7WO1uoZErvpLCGWx+0f6+T/nrWkToMfyvKqSxljim8vy5Kqw7mtDa/8ALS48ys2by/MkjTzKofMU5pfKk+eitbE3PiX4Z/Dm1uvjxeeG/ihfSafNcf8APX/V3k1fVX7QXw08P/8ACm77S0sbaK+s4fL025itfMkj/wCudebE+llM+afBP7RnjL9n3QY/Der+E0ltbiHzLH7TXefs7y698S9e8TePPEsf/POzjiqzmru55r4N8W+F/Bvx++JmqajMln96SOrXw1+NPhO/1rxhJ9sj/tSRo5LH+0I/L8yu+MeanY8qULnF/B/4++F/DnjjWpPFFi8X2y4aT7b/AKySpvj98btB8R6pov8Awik3m/Y5v3d7LRzcgey94z9B/Z48TfGSxs9cvNefUYdQkaPy5ZGkmjkruv8AhlX49fDmxvvC+naLqd5od5t8vyv9XWPs/eudNNnTfBvwR4o8G6XeeC/GnhPUIvs7faLe9+y/+O+ZXkf/AAgel+KPj5qUdxpM+n6PJJ/qo7WRY5K3MvgKvxQ+FXhf4c+MtFuP9bY3knmXll5ldl8YNB8M+DfDel654f1RNP1K3/497nRpK1IOB+A/9l+PPitJceMLr+3JLjzPsv8AaEn/AC0r2zxF4Nm+A8MPiTwlD/oMn7vVLaWT9zcVjGVhyPmX4yfEvWPiD4u/tS8jttP+z+ZHHFFXpnwf+Dfg34jeB7O4t5p4tYt5v9I8v/WVMZ8xUvdjY6z4jfEHxl8L4bPR/OtJbG8Xy473y/JmjVam+DfhzxZ8NIYfEHhry/GP9uRxyXEVbx0M7HmfxM0bxR4j+K0OofETTbnStJuLjy6+kvHnwM8Jy/CvVv7L0XT9Kuo7WS8sZIv9Z5y1n9s1lL3T4x+Htr4ytdU1LXPDWm3OoTW7f6R5UfmV6p8SvjnpvxG+Gd9oer+GZNK8YW8i/vfJ/dx1UVaIpO8ib9mmLx54j8OzWeneMJItDt5JI/sUUn7yPzKo6h4D+J3wq8bR6P4U1q51C6uLdtQk8r/VyR/9NI/+elVFc0TKUryMG++F/jrx58TJrfxpNJZ6pJa+ZH+88yuD8UaDpd1fR6e//Evvo5pLe4lj/eR+YtEolwmdR8C/7HsNY1Lw3caan/CTXitZ2tzL+8jr1j4D2HiTS/itqXwv1SPzY/Lmjk8v/nnWsfhIlC5N4o0HR/hV8atQ0O3vrbSrG4jWS3i1S1jmhkZv+Wcn92vJ/j5Fa+EtY0n93axTeT5l5Fp8e2Pc1FR+6XS0kU/Af+leT/zxkaOvpzwn4I0u/wBLs7yWPyrqvDx3uxufeZV/Dsd1pegrYQ/JH5VaEkteEfRjYbqnfavrVGRXml/c/wCsqndUAZ/m1paZF/00oA7zT5fNhro7Gs5ESNeOVa43xldebaySJ+/jjqiInn/7vzqkh21RsE3/ADzqHzakgmhuvKmjqrJL5tTzFkf+/wCZTZKJEHL/ABA16Hwl4R1bVP8AW/Z18uOL/npX556p+91CSR/9X5klexgY294+NzWV6lhqxb7dvs+yLy/9ZJJXonwbstU8R6xqGj6XqX9nw/2bNeSebceTDcLH/wA9K9ePxHzkjH8O/D6SW1vtYeaP7LZyeX+6k3eZJ/s0Q2C2tjfXHl+bJcSeXH/urRsBsfD2WT7LfWdnJJFJcf8APOuX0XWdY8JSXn2OSSL7RHJb3EVYfZKNb4axebql1Ikc/wDo8PmSRR16RJ48s/Dl99neZ4rrb/rYq0jDnp2FJ3lco6Dqlr4y8Ua1JeSefDZ28kkkcn7yOTb92qfjzRpPC+g+E/ElnIkX7z93H5f7uP8Ai3Vyhb3j2r4Z+Lb7xloMd5eWP2O48z93/wA87iOvSLW/+yx/JGks1fLVNK0j6WCvTidNa3/mwx74/wB9/wAtPKjrm/FHjex8OeXHeeZ5lx/q4oo63hqcsnyFOx8W2N/a+Xb3nm3X7z93XD+Mte+wa9N+7/5df3fl/wCs3V1UqXvXOOpVvGx5/qnnX/nXlx5f/bKOum+HthJa6PJJHN5U1x5lvHFXp15qMbHmUoudS5N4TitfDmqal9s8j7RHVHS4v+Ej8XTSXH+r2+ZWWxty3kejeHdBsf47WCWORf3fmR1wvxCurGw8RSW+nRxxfZ/3clOg7SuKvrR5Tovg3LNLDqUjyf6yOOOP95Xp1rF/rPN/vf62SvDxzcK1z3cC06PKU5Ne0u11Bbe4vP323zI4/M/dyL/00oh1SGWbzE8uWHd5f7quKnTnym31pRka00X+s/1nl/6vzKbNFH+8/wBXWkpTidEJqegVHdfuoadi+Yq+b5v/AC0qjdeZFV04c2pzT7Hz78dPhpda94s0238NaTBF5kMn2iS2j2/vPM/irkfiZ8B7r4feG9N1h9atNQmk/wCPiK2/5Z19RhsUvdR4VWl1ObsfiNrFhosmlpJH5P8Aq45a5GGKS6/5Z17558VY2LrwRqVh+8fT7n/tl+8p3hfRpNU16xj8l/8AXf7vl1NWHKRz2ie7Wv8Aq47fy/3dY+sS/b9Qs9LSH/WXXmeb/u1xzlc4jW82PyY6h/5afPTsZQI/ml/eeXH5NcHD4SXRtak1z7Z5scf7zyvJralC8jWkmjDvtU/4TeGz0/S9PuZJPMby5aj0v4N69dfu/sv2PzP9X5tVVrJSPTpUvdHeKPCV18ObXTbxNST7Vcf88/8AlnXL/wDCR655f/ISuf3f/LPzKzjP2morWkGlyrda9a/bPL+zyTR/aPN/d19JeEfC/hW18eabHp1mks1xef6vzKwr6RKlqaXxgv7r/hbWrR/vIo47WO3jl/4DXolr4js9L8N6TqlxeJZ2txCsfmS/89PLrhp/CY1zxX4gfYb++k1Czm+2WNx+88yKuFkiji/5Z+VH5ldJzxJtLiWWaTZJWh+7imjkT/WUFHReDfDl14tur7ZMnmR/8tbmvePDejf2DotrbvN5s0f7uT95XBibyO3Ce7UucH4o+IOpaD4okt7eOC8hjbzJIpK6jwPr114j0WO8uP8AXeY1edXpcsbno0KvNWOij/dVajlki/eP+6j/AOeteSe0Ourrypo45P8AlpHWPqmqf2NHH/y1+WT955kflxyLRGk3qZyrJaEOi69Df2Md4n7r7ZI1eneDYrHzvMs5I4pI/wDWSf8ALSlKPvFRleJ4ra3/APxOPGHjzVIZLyG3b7PbyXMm6OONW+bbXy7dWtrrPiTUtQs4fsdveXTSR23/ACzjjr6rLY8+p4WO92R758IfDi2H37yOzkuNv/XPbXvXh2wurq1k2f6v5v8ASZf9XJtr1ap8xvK51FjoMNrJp8lxJ5vl11Frax3/AO8f97XOdJem0uGLyf3n/LSui/1trH/q6o1KvlebVrS7X7LfSSeZ5v8AzzkoLNTyqy5rCSKGSTzPNqZFmPJRWoHzD8bvi/4D+L8ljZ6Nayah4mjby7O58vy/3jV1Hwzv/iVpfxK8M6f48/e6HceZHH/0z+WvPifRSgd9+1x4X0/Wfhn/AKRZxy31vMv2OKOP955lfHt94o+LUuvWvw706STSrXWFjvJItPh/eRxtVnDUdzB1T9m7UtU8ZSaX9u/tCOP95NL/AMtNteR+MoodL17+y7P979j8yOu/DT5tDjjK59afs0/DTwjf+A/7U+x22q31xJ5d19p+by68r179njRfFHjK80vwpqXlWNu0n2qX/WR/N/dp8vMZ+1949+/YnsPEXg34yR/C/UYf3Nu39qR3NfqxDu/1dbfZuaQY2aJZfvxxy/8AXSOs268JeHb/APeXGi6fLN/16rWIfGcvr3wC+Hvij/kKeEdOn/7Z1wOsfsKfBfWYY438L/6uTzP9ZJWpBwutf8EyfhXf332zTptT0O4/56W1ZPjL/gnnfeI/Ddvodn8SLr7LG3mf6Xb+YzVjKI5Hnfh3/gl1qXhLWJLh9a0/xL5n+s/tC1p3iL9grxRoMc2qeD7P+zvEHmfu7nT7ry6mMOUqXvyscza/sZeNL/VPtnjmz1DxVXnN94I+K3wH8eatb+F/Cer3Wk3kf+h232WSSCOt5aBY4v4hfBb4kfEaHUtc8UTf2fcW8Mckdl/yzrB0v4g/FC/+Hs3g/TobvUIbeTy/M8vzJKz+2ayh7pufs5+N7P4c3194b8S6TJp99cfu/tP/ALK1cb+0la6PF8QJJND/AHvmQrHeVtJWic0XeR7lpfg3Q/C/w9s/FHg+OSzvo7P7Z+63fw/e8yvHdU/aM16/+I2m64mmxy/u47P7FF/zzq5LkiKMbyNj4gfH2S68eWusaX4dutOk0uPy/K1D/WV47r1/J438RatqGuL/AGfql55dxH5drtjrKUi4QPVvg3rOh/6ZcavJa6f4g8mSOSW5/d+Yv+zW9/whHj74S6XD8REvvsd9p8zXFvLc3W6SRa1j8JEZ3OPsZbX4+2vjTWPFGpf8VlJH9os/L/d+ZXkvxGsLq/0XTdUuLp7z935cn7zd5e2spv3S46SKvwv15rC+/wBZ5clfaXwR8Wtf6f8AZ3/10cdeRjveo3Pr8qq9D1DzfNqGaWvCPsCHzaI6oyIfMqndS/uaAKla1jQB2ejytFa10VrLWciJFrza5PxF/wAev+s83zJKoiJysm2KaSjzKo2I5P3s1UZpakgr+b5tPqeUssx1JdRSf8s99EiD53/aq16Ow0HRdLTf51xNJcSV8jzRebD/AMtJZK+hwith+Y+AzGV8RYtTS+VHHUOj+Z/alvIkyaf5jf6yu6PxHks9i8B6XHf6xDss38mRmj/dyVw99FNdX15G+/7PZ+ZRU0AtfD3zrXWJrxI5Iv3NSeMtGmv7WO4t/wDTLrzJPtH/AE0rH7JRqeDYrrRtBmj07/kJXnl2/lf8tPm+Wum+IXwH1awtYbyzk82SSH/SI5P+Wci1zVa/sdDeNO8bnK+A9BupdQj0d47nT4dUm+zySeT/AMs1rW8UazN8S7W38P6HpNz9u0+SSS4i/wBZ8q/LVGdvePYvg3ayWvheS8/5ZySLbx/9M1X71eiQ/uq+Wr6VpH0tBXpxIda8UTaDo82oeWkskf8Aq468x1SLWPGXl6xceXLcbfLj8qt6Gp5uMfKZenxXXhfRdS+2R+VceYscnlf8s/8AaqrY+I7Px5dRyW+rW0txH+7ktrn93J5a169L4bnjXvKx65Do2m6paxx3EKXkfl/u66LR7DTbC1jt7e3j8yNfMj/5aV49TEOcrHr0qHLqeO2ul3l14ymkeN5Y5Jmkk/3a9MjtV1S6+z/JB5f7ySvZqaHmQleR5nqmqSXWoSXCXVzFH/q4/wB833a53/W2vmf8tPMrtp0rRucNSreXKdFoPjfUPCXlyWdql5b/APPOu2/4Xda/6PHcabcxTSf8s/Mrhr4ZV5XOihi3TlynA+KNU/4SPVNWvPJkih3fu/8AdrJh86Ly9kkln5bf63zK7IU4cpj7Vyka0PiPUrX/AI99Wn8yNv8AVeZujkauo0v4l31rD5dxIl5/yz/651nicPCJvQxrjUt/X5Hs0cUkUcO9fK8xY5PLiqvfXUkXl7I/Nr5mx9VzHG+OPEcmjaPqEdnJHFfSL5cdcv4Ruta/d/bJLq8tZNtd/JyU7nm1Kv7yx0l9ayfavnkT/pn5dc78Xol1T4S3kfk+bcR+ZJWOGv7SKNav8O58f+VJFH5lHm+VNHIkdfenhSVjqNP+I2uWE0cn27z/AC/3kkkv/LRa774e683ii61TfawWf7tfLlqas+Y5KkbRNTS9UtfEd9Nb2837yOby5JZf3lUZtUsbXWNNt7O6S81KSby/Nj+aONa4+W5zGP428b3Xhy+jj06OOT7R/wA9P+WdYcfxV1L93vtbX/pp+7/1kda2OinSPpbR/CWjxWNnePD9s8yGO4/u/er5H8Xa9rH/AAk2tW9vfSfZ45pI/Lrkw1e8jtjRSPSvgjpdjFpd5qD2dtLfW837uSWP/V7o69Gm8yKaSTy08vzP9ZH/AMs6xxLtI7qXwnm/x43S+F9N+aT93dfvK8Tjrtw0bU7nFUVpEj179+yP4S/tTxdHrDyJFa6fNHUYvSJMdQ8caz5vxQ8TSPv8uPUpP3VehSaXY698EdPuLia5ih0+aT91F/q91cNP4TGuee/ZbWW18vy/31c7NKv7y3i8/wD9p+ZXSc8SS1ljih8vy/3lWrG6tbq6jjeby/8AnpLLHQUXr6KTw5qFrJZ3D+ZJ/wA860v+Fja5FfRyfaqqVLmIhV5dSrrGst4jvpLi4/1n/PKOvUPhna+VoNxJ9q82T7RJ/rI/9XXnY73aNz0MD71Y7qOKSKpoYmuvMt32eTJ/rP3lfMH1Z88+LNZuv+EivNl1dxSW7fZ/9ZJ5e2pPDuszXX+h3M3mxyTfvK96lSTp3PmatZqpY9W8O+EprXzNknm+YreX+8rtta+y/D7wPJ9svo5dY1Bfs9raR/8ALRpK82UfePbpO8TyX9pbWdP8JfCnwv4Hs5P9IkkjvLyvK/h74D/4SPWI43hk+zx7fMr6rLY8lO58/jqvPI+lvA+g2sUN1+7+2Wu7y7eKSOvVNLlm+yx/c+z/APLPyo66Kp4lPWNze8qSWOO48mtrRfL+y+X5flSVznSdJ9ghuoY/Np37uL7kdUajvKo/5Z/6NQWaH2qP7LHv/wBZH/rKdaxfb/M/dv5Pl1Mizn7qVYoZJPsf2OOOSitQPmu1/ZV/4VBdaH4k0uaTVZtLuI7i4iljqb46ftBWfxBh0nS/Clq/9rSM1x+9/dyblrC57p4/Y/EH4iWHxU8Fx/ESSeK1kuI5PLk/d/u/u1698bvGWi/CD4tWPizTtNk1CGPSZI9U+zSf8s/4aIT6HJV7nhsn7VWj3WveJtcuNJns5tQt/Ls/K/56V5v+z7YeD9e+JkcnjD7N9lvPOkt5LmTbDJNW9CVpXOPl5dDsPjJ4j034N/FCS38B6lc6fYyQ/wClR6fdeZHurQ/ZL+KvhnwlqmraXrkn7y8/eRyXP+rrWMuSVw5fdsfTH/BPXRr74jftBeMPHlz5f2WOH7Hb1+lnleVWkdAiLTqRQUUAFFABRWQD6bN+9/dvQUU7rRtNuo/LuLG2nh/651g3Xwv8H3X3/Dun/wDfutAOJ8XfsjfCfxlN9o1TwjZz3n8VzF+7krz3xF/wTi+DfiOTzP7N1C0/65X0lPnJMNP+CdXh3SdLvtP0PxhrWn2N5+7ktpK4Xw3/AMEybrwbr0mqad4o0zUP+whZ1zyVyjk/jJ/wTi8eeMr6PVNLvNM+3f8ALT95VXUv2I/GWpfD2z0XW/Df2zUrW1a3+12k0db09DOx5bo/7KHja10ext9c8B3P27S5pPL82P8AdyVyfxQv/ildaxNp+qaDqdn4fs5vM+wxWP7uStbmPL7xw+qaD/wkdjfXD6LqH9qR+X9niit/Lj2/9NNtea+MvC+paXa2Nvdx/wCsX/VeZurKpC51xlY53S9GurDUI5Ps9zF5f7z97HX0l8FfEd5oOqWcfmSS2txJH5leXXpNUT38skvbXPpD955fyR02TzK8G7PuaaQlH7ujmFqxklUZv9SaV+YmyZXtfM87/rnWxY/va0joa00b1jdSedHGldNDdeVWVRkyLU11XG6xKvk1Bz2Ofokl8qGtTUpw39N83zfM+agCCpYZaDUvWssdTf62GSOgzvbU+Jf2ltZj1T4mX1un+p0+FbPza8bupVi/eJX0VBWo2PzLGPmxEmHm/wCixx/P51TaD9ni1SxkuI/NtY7hfM8z/lotdJyn1p4Xlh8UX2teKLOzTSrWT/TI7aO3/wC2a189+JNUWwmvo9Ojjl+0TeXJLVSmYwVpFjwT50uvQ6W8nlSXDSfvPM/d11Vrfx6Nqkkd5s8yOby4/N3R1xRdipanbfBvS4brXtavLyFLzy4Y7OP935kkcjV7Br37ry/K/wCXdf3dfNZhLlrRPcwL/cyPKfGWqQxaDeXieXLNp9r9ojl/1fzNXhPg3xRNo39tSJJ/p2oW8lvHLF/tfer3qC/cnn1Nah9VfCGwmsPhr4fs7z/WeTJJ5X+9J5nmV1n/AH8/7818zW1qXR9HS0p2K81rJLa/6v8Ahb/WR1896f4ovLC6vJNOvPsf7yvSwa5tDyMwd5XMfxF48kitZo7j97fXH+rl/wB6ud1j4N+KNLtYdQs7H+0LG4/497vT5N3mV7d+WJ48j0v9muLxB/bmt/bJtR+w2dqtvHHJ/eb+75let/EC6m0vR5o7fzIr64k/56f6uvErLmxFz241OXD2OBhsNQ1m1kuHkjl+z/6v/np5lanjLxRdaD4d02TzP3nlySXlepFXPB9paNjn7XXtJ8R2skmh/vfl/wBI8393+8qhXecUviH/ALzy/MouvM/gjkluqz5eaVzCn7p3H2BbDwjHH/rbrUJKy/GUX2C602z8vyv9D8z/AIFWFDsbzjaJzY/5Z1a0u18rUIZHk82GOSOTy67iKekrnvGqfEvwn9luriz1LzfL2xx23/LSSvD/ABl8RpL++hkkvP7Pj8vzI68LDYZxlc96riOaJztrrMmqXUl4kjyx/wDPT71bV18Rm0vT4dP0OFJf+en8VepVhzHn3tI9K8L37ap4XhuLjZ/rG8z93TvEVr9q8L33m+XZ/u/+ufmV4MF++PblJexPi2bzIvOjl/5ZySU3za+1ieKR/wCqmr1jwvr2i+HPBvyTWkWqeXJJ9mqiJq5h6Xfro3ge+kS6j87UPM+0R1j+EdUtfC+qabqGqQyfYZI2+z3Pl1nYYeONZtfEd9DeWf8Aq44fLrm/tUfkyVUjSGkT6O0/9ofQbDwnZ29xDqF5fR2cNv8A6tY445FrDuvg3Z+LdavtU/tK5ikvG+0eV5fmferyZx9jK52x1jYh161b4QeF7640OF5ftE0fmSy1wuofGTxdqkMlul59jh/6ZQ+XWlKPMTUfJI5PWte1DXvL/tTUpNQhj/dx+ZVHymir0TkkHlTRTeZ+7l/66V9Vfs0yzWHhGTUEtZIo/tiyR+Z/q68jMZclGx00NalzJ+I2lxxfFbxZbp+6tftH2j/v9+8rS8L6pHpccmnvZxy2N5J/pEUnzRyVnQ/gxPPxmtQ5nyv3flpI/wDrKq6pazeZH+7/AHMn+rrrOQx/Lojiklm+SN5ambOg1NUv47rT4ZP+W0f7uufut0s3+srppaEx0Lmj3X7z7O/96vaPhLqkP2W62fafvLH5kteVjtaNjuy/TEXO+kull/5aVFXyMZWPrDntQ+HOg6zqH2y4j8q68v8AefZv+Wlea61YWul+JL630ub93bt5ccsclfQ4GfMfP46ny6HVeCfi1ovg3VLOPxB4iSzjuPM/eeW03zf89JNtdVdeMtJ+LXxK0mTS5I9c0PR7FpJLn/a/utTq4Z+2uXhsRanY+ffGWqap8S/iNfXDzP5P+rj/ALQ+by41/u7a94+FfhKPQfDtjHqMbxXH2qb/AFn/AC0jr3aWkTxsZK8j0jRbCOLVJI7eOT95/wAsoo69Y0vw5JFa28n/AEzj8uiRxUja82q8kv2X95+8qCzrPsv/ABJYbj93LVfzfK/56eXQdA2j/VQ+X5lTIs0IbWa/sftFvG/7yPzI66y1lk+yx/8APaOuOqzspL3TB1Sw+3zSRvvoqfaGvsz5h1r9qXxF8QdUm0P4d+G/7Q8xf3l7cx/u46+X/h7rN1L8atFk1GSCzkjvv3kUsf8Aq9rVvc7z279uy/8ADd1D4d330cV9H/20k21c+FPw0tfC/wAIZrjVIX1XVNUtfMvvMk/5Y/3a1pw/eWOSr/DueI/s+/Crw/4y1jWri803zbH7VJHHbS/vI41ruv2qvhz4X8L+A7OTTrG10/VrO6j+zxx/L8q12QhaNzj5+apY4P8AZV8EeH/ih4s1i412T+0L6zjXy7GSrnx48B6DF8Ro9H8L6bJL4gk/d3EdtJ+7jrSMOaNw5vesfcX/AATZ+FV18PvCevXmo3kd5cXl5X2rRLQIhUvm0ihadQAUUAFFZAFPoKCitQCio5SQplKKuUPoq9gCo5Iobr/WwpJSuVy+8Zd94K0HUf8Aj40exn/7Y1xOvfsyfC/xHJJJeeDdIlmkj8vzfLo5rilGx57qX/BPH4J6pD83hue2/wCuF5JWTJ/wTi+GcUkcmmtqGn+X/q/31RP342NsPXdKVy7H+xctp+7t/E8n/bSOse+/ZA19YZPs+rWNz+FeV9WPep5m/wCv+GMK6/Zb8eWEP+rgu/8ArnJXM33wM8ZaXDJv8L3c/wD5Erm+rnoU80T/AK/4Bg3XgjXrCPzLjQ9Qi/7daxbrS2sJvLeP/wAh1z+z5TshiWyrHYSSzf8ALOpobVfOrKWh6VOoaFrKtbn2n3rmqM2kH2rzawb6X/WUzKxj+V+88yqd95ksdalFHypoqd5sktAC/wDLWp45aDUtWverWsS/ZdFvLz/lnbwtJJ/1zWg56jtTufnP4o17+2dY1LUHjT7VcTeZ/d+9WH5qy+ZX00FaNj8xqu9STGyS+VHJI/8Ayz/551peHdLkv5o5Em/d1qZH0douqf2X4X1a48yTydPs1j/1n7ySvne6lhlmmuLePy/33mfvP9qplEm1pHXWOgx6NNpNx51tL5kiyU3x5a2Phzxl5lvffbPLbzKUqdiY6nWfAHxRqn/CcTWfmebpNwvmXn/LTy/9qvcvEl/NYaDqV5b+XFNbwyeXJLHXh4zD89aJ7GBf7mR8n698QZr+xtbOz/cfL+883/lpXXfBGwvvEfxAh8QXMKeXbq0nmeXtjjk/6Z16NReyonHT1qH1F/rf3lV/m8v/AKaV8rLXU+jjpoE3mSwyRp5f7xfLrzPXvhf/AGXYzXFvNHLHG37zzP3flrXVg6nJUscGMp3jc+ZfGV+1/ql1JHGnk/6uOvRPBvxz1awjs9LuLVLy1t1jjj/eeX5dfV+z5onz8jvv+FjeMotas/3eny2PmL+68vb+7/6ZyV3niiWx+IP2OPT7zzbiP/l2rzKtJRqXHGo507HO6x/xTkNvp6R/6uuD8ZRXXijS779559xt8uP95trspK5x1FaVij4DtW0bw7Jbv+9m8zzPLrajlWX955n+sj/dxVuZS+I1NQihsNLuLj95L5a10HgOwji8J2vjjXIf+JX5clx5f/LTy/8AV1z1J8kbm1ClznQaL4y8E/FDUI49LmeW6s4/Mjikj8vy643xd5l14iupP+mn7uoofxLG9eKUTB1iL/VyeX+7rc8N2um/2XJqmqXUHl280f2iP/nnXceftG5xf/CZabqkl1HbxyRSRzL5ckcn7uuF8L2GpfEbXtSjs/3s23935v8AyzrOLUY3O2MeaJ2Xwv8AhV4q0uS+uLjZp+k7W8yOT/lpU01hNpdrYyXEfleZ/q/3dKMuYwqO0j0r4e6pb2Hhe8jf/n4k8yX/AHq53xxLH4jm8zTvtF5bxs3+skkrjhR/fHVKu/YngN9F9l1C4t/M/wBW3lyf8BqHyli+4te/EQSVHDtqh2uWtLtZL/VLOz8nzZpJl8uOu6+N32Ww8ZQ6fZ/8etnp628lBB53NdRyx061tZLq6+zpG/7ypkabRN6H4fapLDHceWkXmf8APSSvpC117S9L0HSbO4vtM0qaOGOP/Wfu9y1y14+0jcKVW8rHmPxe+IOi6z4Tk0e31KO8mjkWT93H+7+WvEfN82GSP93RSjym9R80iP7L5X/POuo+H/2WXWPs9x+8hkhaukwkdR4u8OWv2Wx+zxx2fmSeXX1N4X8B/wDCG+G7Wzjm/fWdr/rPveZXzeay5o2OnCa6nJ/HSwtbrWND1izj+xzXFn9nuIv+eki1xefKtfkj8qumh/BiefidahR81YppJEm83zF/eRSR/wCrmqxqEsN1ot55sM/9pR/8e/l11nIcfdXX+rki8yX955damg6NeRXU14kcdY1GdAXV+sv7v5/Jq1r2l6X/AGD9s0u8jlj8yPzI/wDlp81EatiZaGXoOjNrN1HHbySSyf8ALOKL935leleCbCbS9QmkffFbx/8ALPzP9Y1YYrWNjuwelS532l3S3/l1qf66vkJRsfWHK698QbXwRr0Mdvcf6RJ/rP8Apn/10ryW+l+1XUkkSpF+8kr6HAw5T5rHVuepY89+IUvlXVrG/wDyzh8yvbPgPpcngj4V6trlxH5Ul5HJ5cv3flavWqy965z0o20OB+F+gx6zrUcdx5n7v95HXuE3iiHQbrzLyOSX935nlf7NdEdInk4mV5HqHwzv117xlpP2eT7HayWvmXFt5f7z5vux+ZXu2seI9L0GGG3vL6OK6kk+zx23+1RIKRn2t1HL5fmyR/eqG6lhtbr7Q+//AFdQWd14d8nWfDf+sT/tnVGaJbWGONP+WdB0B5X/AD0ohlXzpI/+WkdTIs6DwbLJF9sjeHyvMmk8v95W9/qpK8uqz1KS90huovNm/d0VFjW58f8A7Ed1JYaL4i0e8/dSfav9Hrxf9rjwla+CPiZ/aGh2L+TqH/Hx9mj/ANXdSV6tR3jYJ/xLkPxg/Zkh0v4Sx+KNO1LUNVvreGO8k+0/8+rVxuj/ABV+IXxL+x+D/DVx/Z9jHa+XJL/z0pwj7xhKfunJ/b/F3wg/tLT3juoJrj95Hcx/6v5f4q2NHi1z9pvxlHHea9H/AKOq/vLmu3ltoYR7nq3iT4D6b8G/Dsfijw1q0mlatp8kckl7JJ/rK83+EPxVXQfHmpax4g017yx1D939pij8yOOSqj7pn8R+uH7It1Y6p8G7HUNO3y2N5/q5Ja9pol8RUR1TUigooAKKACigB1FABRQUFPoJCigoKKyLiPooAKKACigAooICpaACqd1o2n3X/HxZQS/9s6mxfOc7ffCrwfqn/Hx4fsZf+2dc5qH7OfgTUf8AmFCOT/pm+2sJU7nZDGSgYdz+yx4RI/0Zr6zrHuv2To/J8vTtfMX/AF1t65p4bnO6lmjp/wBf8A525/Zb8QRSSfZ9StZIfeub1T9mbxrF9y0trz/tpXNLCs9aGZxW/wDX4HFTfA3xjY/8fGh3Ucf/AFz3VzeqeDdWtYfMvLG6i+7+7+yyVh9XPQjj4T6/19xzskUfnf8APL/ln+8johsLiX7/AJEX/bSub2DN4V4SI5LX7L+7eOqv2Xyv+WdKUGdEZotWMv8Afrjf2htek0H4V30af8vixx11UINSOTGTSw8kfDf2XzZI44/+2nm/886L7S/9Xsj82Svopw5T82uVfsE1h5dx8le5aJomk6J+znpd5utpfEHiTxB/vSRxr/C3/POqjK0SpL3joL6w02X4Z6hJcR+b9ouPMt7mKSvC5tG+32M1xbzR/ZY5qsrm94tXV/Nf3VnI/wC6ht2jt46m8cWHleTcW8ifu/3dOWpz/aOd0vWbrRtah1Szmkiurf8A1clfVHiKXWNe+EP/ABN9n9rXlr5n/PPy28uuDEx5pXOuk7HzLoOjL4o8Zafp/wBneWaSaP8A1f8Adr6a1TS9H8ER6DJp0kmn6Pb3X+rj/wBZIzVw4tmtCN+Y9Cmtfssckf8AzzqGTd/1yr5eTtI+h5balO6v/K/ef8tK4n4qeN7rQfCepXlv+4uPJ8uH9z/E1dmFV6xhiXamfKM0snlySP8A8tP3lH7yKGvtrJaHycly6np3w/ivJfDt5eXF5JLayTeXH5v/ACz217N8P9G/c3WqXEkcs25Y45f+edeXUdioPmOT166+1X0mz/Uxt5dZvzReZ/yy/d/u63pKxyyIdF0a60vR45LiG5+0SN5knmx+X5cldNeWC/2PY3j28n2q4/5a/wCsp1J+7YiUXylWbwRdeN9L1bT7Obypre1+0SSS/wB2sPxl8RrHxb8NdF8F+C5Lm58v/j8i8vy/MVaxvc6MN7pR+AcV54X16+vHhfT/AC7OT/WV1WvfEG81mSOPy4NPtbNv3kfl7pPmrojTCpO8Tm/iB8SNLi1S2t47N4rhvLj/AOmdeV2t/qWveLJrO8uv9XJJ/wBc/lrSJNCnaJ2mg+F7rzpo/L+2TeXTfgH4ytdBtfEGl3Fqk82obfL/AOeny1ZpKN6dj0a1+IOpXU0O/ZFH/rJJY/8AV1g+JPEf9vXUciR/uY1qonnyVivJ5l1/o6f8tP8AV1uaDpcnlt+8j8zd/q/MqomEvhPDfElrJa69N9zyZJJJKp+bWx7EPhDyo/8Ann/yz/1tSQxfu/3dWWeyeE/CWl6D8Eb7xZqMfm31xJ/o9z/rPL3fu/Lrx2TzP+en7ySuKhaVSRTXLG5Vm/5afu6vaL+61ix+55fmLH/2zauu9zM774jWsdr4dm/d/wClW80fl15TJ5ks3lvH+8/6a1zfauY0tI2HfZZrry7dP9dJV668G6lYWMlxeRx+XH/00/eVpGN4m17SK9ja/b9Qh2f6mSRa9MsfC9roN1Jqlv5kslvDVc1omctZEfg3XpPG/jzQdHuLP93eX0MdfYl9+987ZH+7kk8yP/rn/DXzeZO8rno4TseY/FTzvtWkyf6q3jVv/Hq8z/tnUJYbyO302S8mj/55/NXXQf7k8yrH94Gny3GqWsMnk/vP9XJH5nl/vK1tLl8r78ckv7z/AFv/AC0jrpOPY52G1/4qKO31GSSKHzK2tU1S88JSR29vH5vmfvPMljrE6uY5eS68rzLh/wDXf6zyqJtL82HzPLfyZK52+U2i7yNLw74N1a1m/tS3t/8ARf8AWfafMruo9Za1mj+0f6mT/V1x1HeR6VKlyxLml69DFqEcnmXMvmf8s69Ctb/+/HXBVjyno8x4jr100uoXn2yTz7rzP+Wn/LNax7rtXvUpfuz5epHlqXJrrRll8NyXD2NtLdXEnl+ZXYfFDzvDngfTdHT91byfu/s1VLWUUXDSJqfBvQW/4RG6uLePzbq4bzJKh8UXU0WveZ5McV1cQxxxxeZ/CteieZ9o9K0XVLy18RabcXmyK4uLePy5I/8Al3k2/LXQfao/7Us9Q1HfeXVvN+8l8vzJKqRPOehR6pD9lj+xzeb/AMtJPLqvqms3Hlx29/N5X2j95HFL/rK5zY6Dwjf6lFHJ/wA9LiFo45fM21k/DWXUrW11L+1L671CaSb/AJeakcVc9U0Xybq1rYtbqP7V5fl/vKzkz0aSNaa1/wCmlTQy+bXAemE0X+roqDU/M/4Z+CPHmvfFrTdLuJNT0+TyZLiSSL93+7r2zwv4Nm8G/CvxRceK9Wj1W+kvmt47mT/loq/dk/66V6F7ysZ1O5zP7UH7SOjy/D+Hw3oU1rqGsSR+XfV5L+y/4tsfhpfX0fijzNPt7yGOSzuZI5K9KEfeOSUfdND4yftQaDa61q1n4f0X+3PtFq0clzc/6uOvnfwj4c8YaDDZ+NND0278m3m8uO9jj/ionK1SxEf4dz1T4tfG7xF8S/Bui6PqkdppFj/y8f2fXv3wp8L+F9L8Bxx6HqWmS/L9nvPKulmkkaqpe+Z1PcP0i+COjR6D8M9Fs/L8r9z5ld3RL4iohRSKCpfNoAipY6AJaKAMbXvFuj+F4fM1TUrbT/M/1fmyUaD4t0fxHH5ml6paah/17SbqANmnUFBRQSPooKCisi4j6KACigAooAKKCAqWgAoqrC5QpsdRF3DmUh1RVpew42YUUpWHZolqGby5fvxpLUciFHniZ114W0XUo/Lu9KsZ/wDrrbrXPX3wW8D6ju3+G7T/ALZx1l7FG0K84nLan+y14H1T/lndW3/XK4rkr79i3Qf+YXrmoafWcsOj0I5jL+v+GOduv2Mr6Kb/AEPVtPkh8vy/KuY2rwj44/sHfEvxnp9na6WunSWsc3mfu7itYUEpFVca6lOS/r8j54179g34uad9/wAE315HH92WKaOuB1r9nPx1o00f9qeHdXs/+vuzr1lBVDwbnA33w5urWa8jfy7Py2/1cv8ArK6TxZ4DmtdU0Wzs/snk/Y4ZP+Jf/wAtK5JQtEmVT3juPiNaw2Hwz0WzT/nj5nleXXj+qWq2Fja2/l+VJIvmUir+8VY/MtZI7hNkslvH/o8X7yr2qRf2ppdrqlvH5Uf/AE1px1D7RyMdr/p3mV6pqHxpvte8L/2XqOm+bfRw+XHc20lTKPNG5vF2LnwV0aTwvoOreNLiTzbWzXy/K8zy/MrqNe8Rr480Hw74wf8A0PR9LuvtEltJJ5nzV5mLpnThZX5jttH8eaPr0cklvfWsvmSL/q5P71bF1+6/55+dXy9WnaR7lCftKdzNuovNmrw39oLxH5t1puhpNJF5a/aJI66MCr1jDGu1Mq/BH4aWfxBh1a41SP8A0ez2xx12Wvfstfav3eka0n/XPUK9ipiWqljyY0eenchh8Ea94csY7N9P+x/Z/wDlrJ/q5JK9S0u6k0vT9J0f/VXUn+rk8uqvzmPs+Q8z8SeZF4ivrd/3vl3VWI/Lir0Iqx5kj3TytLurWOS3hj/eR/vPMrP1Twlpesxx/aIfKjjj/wCWdeNOo+ax7cqC5TJ0XwbDa6LrVvb6l5X9oQyRxyyfvPLrxHw38G5rCGaS3j/1cknmX0sdddN3PJl7hw83jf7VNfWel7/tHkzR+bWL4N8RzXV9NHqN15s0n/PWvUiw5bxD4jWElrqmk3nl/wCsj/d/8Bqx4H+yxfF61+0Rx3lveSf6r/ejrOJvB2ie2ahdWfhLVNUvPMj86T/R47bzPL8zdXg/ijwnNYTTaxpcPkWvmNJJFHN/q6s5ozvoaXhnxlHe2Mdu/wC6k/1ddxpf72Hy3m/1f/PP/aqonPVVi1NFHFNJWtot011+7t/9d8tVE5JfCeK+OIltfGV5s/1NYv8AzzrY9iHwhHE3/TOrWl6XJf6hDb28PmzXEkcdWWfaWqfCrRfEfhHw74TvJLuzsdL2ySeV5a/Msf8Ay0rz34jfBHwn4ctbi8061upfMby4/wB5XysMU4VJHp4mko0bnmsfw50n7V5b+ZF+78yprrwRpcUMklnYx+d/108uvfpu5897U4/wnf3V14ih+0XEksfzf62rnxGijltbWT959qjaj7NzaOkrHI+HZVl16xk/6bf6yvQvEmlzX8N19nk/5Z1pSleJNSVpHC6X4X1TzoZHtbi08uZa9Q1jS5rq1+0PH+5/6ZVyVJWiaR1ked+DdZvvC/iSHXLPy/tGnySSQ19ueG9e/tnwPpusXkkf2i4s1uLjyq4MdTvG56GE/iWOH+Km3VPCMP7vypI28yP95XB+DdL1L7VJJbwyReZH/rZZP3dKh/BMqsf3he8WaX/Y11/aFnJ+5uFk+0Rx/wDLNlrj9L8b6fayfY31KDzP+ecv7uu046lKxh6h4t0m/wDMjS+k+3eZ+7jto66TVPFFn4jhjkebyrqPy4/LkrEfsyGaL7VH5iSebXqngOK1l8Nx2eox/wCr8ySSL/tpXHiXynXhqd5GhothHazTb4/Nt5P9XF93y6NeitdZ8vf/AMs/M+z/APPSOSvPveR6svdicvqnhK6tf+POT7Z/0yuf3cldJpevQ2Gnxyaj5kU0a/vP+mki1tVjzHNzGf4uv9D17wvdXHmQfbpNvl1wOn2v2qHzP+un7uvRpR/dni1Jc2p0HlSXX/CO6f53kQ3EyyebLWT8TP8AiaeOI7P5/wDVx1Uda0UXtE9I0vxbN4c8L2elxQ+RNGvl+ZF/yzrm9L8zRtU0nWHknvJrOb/Vf6z71eieZ9o9wvrW61nxJpv2PzPsvy3Ecv8AyzjkWu00XwbDLDJHqML+d/zz/wCWe2qkTyHUWtrDYWscdnZxxQxx+XH5Ue2OqetWH9qQ2f7tPtVvHJXObEOg6N5V1NeP5cU0i/u4vL/eR13Wi6DNf2NxeXH+p/d+X5kn7ySpNaSua1r5n/LLfL/1yroLWwaL948aVzSZ6tJGlHF5tSQxeVXKdZakoqDU+Pfjd+0tpfwb+KH2dNFj1W1t7OP7R9kk2+XXzn4X8Zax8ffitY+H9cme20PVJmuI7S2/1dd9jOR3n7TnwRsfDmvab4k8P6T5uk26r9utoo/9Wq/xVi/H6/8ABsvwphuNLvIPt1xJHJHYx3X7y3r1cM/dsck1apc8n0X9n3xJ4y+GcnjBPL+3Rt5lvYy/8tIVr6e+C/xV8I+I/h7HJeTWulalp8cn9qabL+7+Zfl8yNazlO8jLn5j438SRaX4y+LV1b280en6Peal5cckf/LOFq+qLr9kvQ7CHTdLSGT/AFkP+m+ZVUkTL3T9WPCNh/ZfhfSbP/nnarHWvWhoL5tY+seLdH0Hy/7Q1KCz8z/nrJWcIXkBq0UWsA6pqYEXm0lAH5hf8FDviWvi34lWeh6dfeba2a/vIo5K5X9ifwvfXXx8023t757OG3t/tFxFHXXHSIH6206vPNQorUgKfQSFCUFFioqyAKZQAU+gAooAloqgCipAKKACigAqKgAorUkKKAJaKgoiplWSFEn7379AGHqngjw7rP8Ax/8Ah3TLz/rrZxyVxd9+zJ8KdU/4+PAei+d/z0itdtTcnlOL8UfsKfC3xHHH/od9p/l/d+zXVeS+LP8AgmJ4b1ndJpvjK+0//rrZwyVrTnyEyhc4PXf+CXviC2sZo9L8Uadc/wDPPzYa851b/gnt8VtN0FrV7FNR/wCef2G8Vqr2pzeyPC/GH7KvxE8OX119q8E+JYof3fl/6D5lcTN8OdU0bybO8026s7r/AJ5XMckNSdMJWKN9d6pa6XNo/wA8VrJ/rLaX/ZrY8ReI7XVPhfpvh+z014tSt2WOSs5Uec2POZLC+tfL2eZ50k3mfu67zw38bvE3hyby3+y3lj/01/1lc9fC3N6VXkO+8N/tD6DL+71GxudOk8z/AFv+ujrzf45Sw3/xCmkt44/9SvmS15+GwjpVLnXia6qU7HQfCH4q6X8PvC95p95Y3Ms0lx5n2mL/AJZ17h/wtXw3deG5tYt76T7DZ+X5kv8AtVji8PzVOYxpVbxsbmj6pp+s6LHqFvJ9ssbz95HJLXif7TnxB1jw54s0nS9Lm+yfZ7X7Rcf7zUYWP7wuv/DMHw7dXWs+HYdUvPL+1XCtJ/q9tTX2vSRahY2dvH5v2iHzJJf9ZXvngHrHg3xba2Gg+XeSXMX2dfMkik/d0eDb/UvirfXmy8/s+3s5Fj8qL+61eLVpe9c9CNe8Ty34mfFLVPBviy+8K6PDPFcR/u7iWWPzJPm/u1l/D/8AaH1SwurzQ/Esjy2txbtHbySx/vI5P9qt6EbSuEoc9Ox5na7bX4oeW8nlQ3FxXO+JIv7G8ZalHa+ZF9nupq9KWsSYnrXxG1TT/Gnwl0vUrT97cW80P2j/AJ6R/LtauL8bWHmyeDdSt5P9KvrGPzJP+ebK22syaatGx12i+DdStZv7U+eXzPMk825+WtSGKO6+/DHLVw97Q4arPOfiN4Yj0u6/tS0/ceZ/yyrtPBt/JqmlwyP/AHf3kkvy/dp/aCt79M6SaKtLwnayXV1ebPLijjXzKZ5kjyn4qRLL4s+0W8flQ7fLjirlYZacT2qUfdCGVfM/66V1nw51nTfDni611DUY5LyOPd/31WtRXNj7k0vWV1SOO8eT/WQr/wBs91cn8QrCTWdHmjs45Jfs7eZXwtuWse7Je1onkuqeHLzQdPjuLyOP7L5lc3qF/wCbN5fyfvF/9Cr6qhNTPmZUnSOFuvBl14N0eHxQ99bS+ZceXHbR/wCsrY0v/io7GO4uIUl8yRvLrfk90zlM1v7LtfOt9lrH5cf+s/d1J5UkU1TzGfNc6LQfCWpXU3yWf7uNfMt5bmSvVPDujLYaDJb3EP8Ap0kbf9c/LavNr1Oc9fB4c83h/Zk0e/8A3aatd2fmf6uL/WeXXp0lh4f8EWun+H7zVvNvvsv+t8v+7XNUq+20PRjS5JXOP+1XXkySPHHL9o3f8sa5Hwv4jXS5pLe8jf7L5jeXLXVClyxscE5+8dlrFrHqmn/89YfL/wDQq8N+I3w08qP7ZbR/vP8AnnU01aRUp3OB8J2vlahJvrvPC/hKHxRfSWdxN5U3l+ZHH5nl+ZXXFc5zSKeof2x4X1SSNLr/AFdemeDfi/pctr5niDzIrquevQc6ZVNe8d9oOvaX4o/eaXeJL/z0jrn/AIjeZ9hs/wB55Um6vNp4Vqpc66lXlp2K/h261SLS9QuH8+W1jh8z97NVG+8R6fqlr9nePyr6OTzPKljrvp0rSPNqTuUYZV/jk/hrttHsPCcuiw7762s7ry/LkjluP9Y1a1I3ickdJG54iutH0bxR4Bjt5vN8xZo5Ps1ea32jX2qfF6aO4m/d7v3ctTQjaRtVkejaP4I/svw3NJ5f/L1/z0/eSVsaDpdjFYyf8S2OWH/WXEUkf+sk/wCedegeQemaPawxafYx/wCjS+Zb/wCtjr0rw74cupdPj/ffvPL8z91+8kkWuecjqpRudxpfg3zY7eS4/dVqWvg3S7W6jvPJ/wBKrjuenGkczJ8Ob6/8STahbzR6fa/6zypY67q1sPKtY7f/AFvlx1cmTTpWkVdLl8qaT93HFW5dWvmw1kegQ2sUkUPmeZVqGKg1JJpV8miuUD4J174Qaf8A8Kl8M/2vffab7WNSjj1S9k/1leufFDRvC/wv0fRdQt4dIs5tLkjkt4/3a+ZGtetYcjyP4yftQeHb/R5ND0uxe8mvP+Wvmfu468v1D9lX+y/C8niC41L7ZdSL9st4vL/1ddGGl71jCuranonw1/al8At4Tj/tH7V4eurP/R/Kks/3deE/D3wlo/xQ+NWrR3F15VjqnnXFn/yzkkpRjeRzcnKevfEb9lDwX4S8G6lqiSSRfY5I/Lua5P4B/GTxd4o8XeE/Bd5eR3ljHq1v5dz5f7zy666SJj75+00P7qOOP/pnHUtBoJ/z0r8h/wBqCXxN/wALq16PXNak8mzvv3cfmfw0UJXkB+mX7PfipvGXwb8L6o7ebNNZxx16VHRNWASioAXyq53x5r0fhfwbq2qSSeVDb28klAH4q+Mr9de8Ua1qD+Z5l5dTSSeZ/tV9vf8ABNPwHJ9l8ReKLmP/AFm2zt665aRA+8o6WvPNR1FakBRQSPooKCisgCigAooM7j6KDQKK1AKKyAKKACigCWoqACitSQooAKXzKCiOigkKKACisrk8wUebWnLzFRlcZT6nlAhkrJ1Tw9o+sx+Xqmj2N9DJ/wA/NvHJWpnyWPOfEX7LXwj8S7pLzwNpBmk/5a20Pl15D4u/4Jp/CvxH+8sJtT8PSU41OUq55H4k/wCCUN5/rNC8fR/9M4tQsa8n8Rf8E2/ilYQt5ej6ZqH/AE00+6rT2vMKN5Hmepfsa/E7Sb63+3+Ddajh3fN5FvXG+Nvhp4mv/EmpXlx4f1fT/wB55fly6ay1Ukt0TKTWhxd14SuopJrd7WP/AFf7yLzo5K9kk+EsPijw3oOn6dNaWeh/LJcXMv8ArLhv4vu15OOlyU+Y2w2srHsFrYQ6XDY2dn5cFjbr5ccXl15f+01YLdeB/tEsMct9JeR/6TFH+8rzMLL94ehX/hnmfhH+2otLjt7zyIvs8P7v/npJVqPWbWwvpJI7OOK+2/u4vM/hr6A8Ab4s8Rt/wrnVryXzIL6OSP7PXUfsv+NJPsOrXl43+s2/6quaqvduaUoXicb8QtUb/hpqO8vIfK+0SW8f+s/vR7aw/j9pH9jeP9P1JLXyoby3WT/tpHSgrRudsZcuhh/FCwutL1jw/qTw/vLizj/8drH1rS5Lrxdbyap+6/tCOO4/dSf3q6Y6xIQWt1deF7HxR4bvP9TcR/8AkRfmXbUOoWckXhTQ5l/1KzSRrJJ/erMq1pWPryO1aXwbJHcSRwXUcP2f/pn83/LSvAfFGtr4I1xdJ1G3eXUo4Y/M/wCedcOEq81SxzVaZyvjLxQus2sOlx2f+lblk8yuy8LxSWGj2dv88Um3955lel9o5qvuUzprr979+SSWnaXf2el6pH9om/eXkfl+V/vUzzJGH8RvBsfiO6/tDSJvtnlw+ZJbeW0f3fvSLXmutaDqWjRxyXkMkUclOJ61KfulCrP/AEzf/lp/yzrqtc6j7G+AMt9L8KdN+2eZ96SO3klj/hruvLr4TFrlrH02GX7ky9e0Fde0v7G8nlfvFk8zy/8AV1xt98PtLiupI3mefzF/dy+XXThK7iedjKSPK9atViupI/LSWOORqbp8v2W6j+z+RF/q46+k5/dPmZRJtUuo5bry/wDWzUWvhe+l8vZHJL5n7yufmNKcLnZaD4t8L6DY/wCn61axSW//ADy/efLXZaXrNrqmnw3mnTR3lvJXlzXKfS4ORTvvEc3hzWtD/dpFa3F1HHJ5n/LONqufHT4X+G/Hmi/2xeXl1Z65Gscdrcx/6vy64v4dSx1y96Nzwe60Hx54Xm8zS9ck1yGPzP3X/wBjXI3fijUIv9M8QWskckn7zzbavXoVeeVjxJw946LQfjna6XdQ2/2We803/lpLJ/rK7rWPM1mx+2Wc0EtvtjuI5f8Ae/5507WkTGNzx2b/AJHi82SR3f7vzJJPL21R8RWE2va9DZ2ck8V9/q/9X5cfzV2RXIZSO2svh9awR/Z9Rvp9QuI1rhfGVzoNhdSR6dJJL/yz/wBZXbUio0zGnU946j4X+A5pbWPxA/7rzFk8uuwvteuovJ0+8uvN8v8A1dcOi1K+PQvWPiOTS7HUtP8A9ba3kPl1kzWsMUn+u/fVO0jLluNkupIpvLeSrlrYfav9H/5Y/wDTWjlvEwlpIq2suoeI/FFjb6RJ5t1HN5dvc/6yu8h8Eat4c8ZWcd5J9smjm8v7T5lVCNpGFWR6lo9r9q8O3Uf2X99HM3nRyf8ALSNq6bS9Ltb/AMNxx3kafvJJI460OU7LQbC4l1S10/8A6Y/vJf8AVyfLXtHgfRrXS9Ljjt/9d/y0rz5yPXw0bnVeXUFc9z04kF1dfZbqPfR9vtfM/wBZVSZG0i1pcVrLH9oT/lpVqT91QaEPmVJQah83l0VygfJfwb8nxH8AbzxB4wuvM028+0f9NPs614j4N/Zu1j4jX0muf2tdXnhWO48u3/tCT95cQrXrcpvzG9oP7N3hGw8XeIND1SHU7zy1jksbnzPL+z1xvxu+IPxW8G2994P+TV7Wzs/Mj1mK33XPk/8ATSt6Rx1z1T9m2w0HxR8EbG8t9J0yW+j877RLFtaSP/rpXyL8ULqx8JfGS8k8L6k9nDZ3CyR3Pmf8e7f9M2rfm6HPf3rnYfGD48a18RpNN8NvIn2WTyftEunyfu7yvsz4A+A/Dv8AwsLwP9jsbT7dbw+Z5sXl100jOUT9Co6WsjQK/Lr/AIKKaDHYfHj7Ykn/AB+WNTS+ImR9hfsM3TS/s86DX0HWtX4iafwjqKxNAr5U/b++Ksng3wHDodu0f2rUK0ggPzVmtWuvM/eebNI37z/er9cv2S/h9H8OfgvoOn+W/mSQ+ZJW9V+6TE9jqauQ0CiluTIdTaYBUtABRQAUUAFFAD6KyKCmVViQp9HMAyirKCn0AFMoAfRQSMeigAooAKKCgooJCigB9M8qgAooAj8umyUAVaKsB9P82oAPm9qLqwtb/wD4+LWCX/rpH5lAHF+IvgZ8PfFs3mav4J0XUJP+ev2GOuVuv2S/hb/q7Pw3/ZX/AGD5PLrGa5yY6HG6x+xHosv/ACCPFGp6V/zz8yOOavHfGn/BPPxdqUnmQeLtO1q18zzPK1C18minDkKqa07Hj/ij9iH4weHJptmgx+Ibf/qH3FfM/jL4I+OvAfiibWPEHg/WtDsY5P3lzLZt5day1OCNKxz/AMTr37H4NvrP/W/aLiPy6q/s56o0WvX2lvJ/rP3nl/8APTbWcviOikrU7Fz4/edYePPDesJH5Ufkx/8AjrVn/EzxHH8RvFGi2enR+fY28f2eOT/lpJubzGkrCkdH2Q+PF1Jf2Okxva+R9jaSOuN8ReZFY+H9Q8z/AFldFN+6KJ6F8cvDkMui6L4ys5PN+2Qrb3VcD9g+1fCX7Y83/Hvq3l+X/vR1lGQ7e6eoeKPigt/4X0mPSI5Pt0cMMcnm1V+I3hebxla6PqlvGlnq32ePzP3lc1KHKc9SXLIy9L8EXX26O41GO2im/wCunl+ZW1dazY2E3zyebdbv9VHXpc6gcn8Q67QfBHijxlqkOj2dqmleZ/rLnUK9G8I/Crwb4Dj+0apNba5rEjeX5kn+rrzcTWCgR/G77VdaDod5p1i8v+sjkvrb/lmq/wDLOvm34qay2s/2Jb/bP3dvC0kn+81dmDlemXKny1DiY4vNjre8G+HJvFviTT9HSSOKa4m8vzJK7qr906OU+2PBvhyTwl4R0nQ3vPtk1nG0fm1pXUrRR+Z5fm/N5dfn1XWpc+tpQ/c2MHxR4t/sHRbzUPL83935cdtXl998Rrq6/wCPaPypvLkrvwdNy1PLx0lHQ43ULq4v5pJHqjJLH5nySV9KfNyVzsvh/LH/AMTKTy4/O8tfL82Ouumijl8zfJ5v+sjrhqwvI9KlK1Ox8f6hdLFqE0fl/wAUnmV9RfCnVPN+GumyPeJFHbrJ5klXVhzRN6VW1S5R+LV/a6Xa6LqHnRy/6dH5kf8AsrX0JY+I9L8UeF9D1jTv+JhY3Enlyeb/AKySPy/LavFr03GVz0KFW8jzv/hHNLl/0NI5LOGNmjt5Zf8AWeXXifxa8EfZdH1L94l5cW8n7uSroO0h143icv8AC/4X2OvRx6pqM3mw+Z5cljXsV1YRxWP2e3j8q1t4/wB3F/zz212e1PPseP6ppfleIo7yOT7ZD5P/ACz/AOWkdXtBtbWK6vNUuJn8yz2xxxeX/ejr06T904apy/jz4h/atU+z6RdfuY4/Lku/+ejVn/DX4fXXjfXo7NNlzJ50e6LzP3ldPxalRjyRP0C8ReDdN8JeEf3UPmx26xx2/wB3zK4vw78G9N8Ua9/aF5D/AKD/AMtP+mbV4cqnvGZ1EP7NOgyyfaPMubP5v3cfmbo6q61+yWst1DJb33lQ/wDLSsoSNLHnvjL9njUvBtjJcXGrWnk+XJ/yzryWPwlr1r5cn9rfvLz935XzV6Z50qnJI9G8L2F14X0Wx0ez+yeZZ3kdxcXPl/8Ajtdl4y8UR39rpslxD9jm/wBX5UX7zy2roPPqanZfD/Rrq1muLhLqOzhkhjk8v/ZrrtLtbXVNQjjeOO8hs5PMuP8AWL5dOcrRsa0o8x69o+gyXU0l59n/ANZH+7l/2a7DR4m0u1jt/LryKjPpaUeWNjetZfNh8zy/KqvdVkWcz4ytZpZrWRI/Nm3Vn2N//qftH7rzP9ZQRI6S11TT7CxhjvL6CKGT/VySVsebHQBV83za1NP2/wCseiRvEtfu5Y/MSisjQ/L/AOK3xk/tn/ig/CkPm6H9ok+zx20f7ySvbvDfxz0P4S/D3QdL8QeF9X0Oa3h8v/V/u5Jq9bmNOU8htf2h9UtfEmteJLTRf7VhuIWjt7aWOrHg3Xv7Z+HOteNNXm/4m2ualJH9mj/1fy/u63pHHXI/2gvhfpvwR0v/AISDwvqV3ocl5Mscltp8n7uSqPwl8EeBfG/wVh1DXP7Mlms/M/55/aY67OT95Y47+7c8Z0H4fXnxG+I19J4Us5NP8Ox3Hl/bv+WccdfXn7A3wW17w5+0BJqGqalHqFjHY1dLYHI/TuiszQK/O7/gplat/wAJdoNx/wA9LeppfETI+iv2Gf3XwD0WP9350fmV9D1rV+Imn8IUViaDq/Lb9tzxvJ4j+N11bpefubOPy/L/AOebV0U0B5L8EfBt18Qfi14Z8PpH+7uLjzJP91a/ZbQbCPS9Ks7NI/3MccdTVfukxNOisQuFeIftJftLWv7PFrpslxpMmqzXnmeXHHShqUzuPhD48uviX8P9J8SXmm/2VNqEfmR21dvTAdT6ACigAooAKfQAyisiiOaVYvvyRx/9dK8p8eftS/Df4feZHqniS2nuo/8AlysP30lbWJPMf+Hifw7+1SW/9m61/wBdPJr2T4a/H3wT8XYf+Ka1yC8uP+faT93NS5APQafQUPplAD6KACigkKZQAUUAFFBQU+gkZT6ACigBlFABUMlAFWirAfTqgCeOloAKSSlaxMtCHyqSjm5it9Arzb9o4rb/AAE8eSXH72GPQ7yiOpEtD8I/Hmsx+I7XRbe3kkl+bzJPNqS6tf8AhVXxkhji3/dX/Wf8tI5FrOXxDiraHYftGRfufD9x5f7uOaa3rzXxFoN58Ptc0fVLdfNt7iGO4h/ij/2o656Rf2T0b4rWH/CZeDZPEGnR+bY+StxJJ5n7yP8A66V5L5vm+CbWP/nzuv8A0KtYP3RRPojRbX/hNPgjb2Lqkn+jyR/6v/WSR/drxfwb4I1TxR4X1K3s7X/V3EPlySfu64oyNbe6d54D+Gml+F9Y8vV44/EMP2XzPLjk/d16da/C/wATeI/tV5Z6b5Wm+Z+7luf3cfzf3aylW5TCcOeRvWPwW0HRv9I13Vp9Q+z/AOstotvl1x/jLwRoOl+KLPXPD8f7zzvM8qL/AFfmVn7dzKnS9ieleE/AereLYf7c1G+/s+OT/n2+X941d94X+FXh3/hF7i3vP3vzSRySSSfvK5cSxUKSOb+Mlr5vwv8AL07zPOt7jy/N8z/ljJXyvdeDdL1n7L9sju4rry/3kkUlerl8r0ycT7tQwfFHhLT9G1Sxs7ea5lmvGrqPCPhK68EeLrXVEvLa8ht/+Wf+rr06r905+c+orW6+1afHJ5j+XJDRNdeVayebH5sccf7z/pnXw0tdT7GlP3bHnfijxbo914XvI7OR4pLj93HXmf8AqvLr6nB0+Wnc+RxVfnqWMuS682auH1Txva2F9cRpG8vl11mMVc6TwH8QdQutUmjSOCK3jhpvjDx54g0HydQ0u6js/MaSOSLy6uULyNou2h5P9qa/upLh4/3kkn7ytKGXyv8AVzSfd8v93JVxhzRKWmo61lupY4bd5Lm88xv3cVfY37PN1fH4V2NnLC8c1nJNHHHJXk46moxuehhNZFzXotUi8SSSPHbfYY4Vjjk/5aRt/wBNK5fxJoOoeZJqlvJH5cn+sjrxYO0j1qivEy9Pihih+SO2/wCmn7vy/Mq5/rfL3/8ALStzz+U838UWHla98kflW/mSeXTfsCy6DqVvZx/6dH/02r3KT908mqeVzeF5IrW8uP3cU0cle3fsZ+DbrWfHl1qCR/6DZwrXbU9yncqUuaJ9feOLD7VJpMdxH/q/O/e/9s6m8I3VrYahY6X8/nXjfvP+/dfNyXvGZ6pY2EcX3I0p2qfZbDT5Li8kjs7e3jkk8yX/AGauETosfOeqX914t8WXmqP/AMgO3by7PzY/L+WjVPDkOqafJG8MfkxzR3ElemfO1fekXtQ8OWNrDqGqWdnBFdf6yTyo4/MkaodB8nxH4RhkuI7Wzh87zJP+Wkm5fvLXQRudZJa2N/r3huTQ9ktj5c0f/PSvXPA/giSw8y41Ty5bjb/yz/1e2uOvK0rHpYKPMdddS+VaySf9M6o6X4jXVP3dvJ/rP9XXDNnsSlyysdxHF5sdV5IqRZj69ayfuazdF0b999oeH/V0ESKfjLwRNr2qRyW9qn2WNfLroNUuo/Dnh2O81S6SKG3j/eUAO0fVLXWYftCSebHJGslb37uKiRvEP+2lFZGh+eNr8EdD+Dfxq0nVLzVvMsZP3n/Xu1epfFrxv4Hljj0e41LT9QkvNskfm/vI69b/AJd2KO617QfC/g34c3Fx/ZttFpsdn/rY/Lr4t+D/AMKv+F0+F/FklnePp9rp6+XbySSeXH5n+srppM4q6ODmuvE3xu1/QfDd54oSW1t4fLt/tMn7vdXq3ij9mTSZbGS38P60+hxxwyR3X2mT93cV1mEvdD9l/wAR6b4DsfHnh/xBqXkR6fNHJHX1Z/wTx17TfiD428beINIhki02Pbb29XGXukyjepc+7KfWRoMr4J/4KbRR/bvB8lEPiJn8J6x/wT7n834G29ukn7mOavqGrxKvUMI/CFFcmxvEoa9f/YNHvrj/AJ5wtX4w/EzXv7e8ea1qHnebcXk0kn7r+7XbSJkfUn/BN34aNf61rXjC8jg/c+Zb29foTRXd5FRH/N7VLXOUFfAH/BRvWd/jLwzpf/POGrofEZyPtj4fxfZfAehxp/q47OGunrOStI0HUUwCigAooAKmoAK+ev24vG+reCPg8bzQ9SfTr6S4WP8AdUoq8gPz3/4X/wDFL4l6tpfgV/FGoSx3119jXyq/RT4G/sjeC/hFpcMj6bBqviD/AJaapcw7pK7aj9nGxnE7H4gfATwP8RrPytZ0Gx8z/lnexx7Zo6/N74y/DLXv2Z/ibu0a+kim+W803Uo/l8xawpP3gkfol+zn8X4fjT8MdN1z939u/wBXfRR/8s5q9UrOatIqIUUigp9ABRQAUUAMqSSgCCirAKfUAFFAD6KACigBlNmioApyU1KsCWioAKmoAKKACoaAGTRV5v8AtMf8m9/EX/sXr7+VOYH4GyfutU0X92ksccfmSR074qazqWs6pa6pcWP2OGNfs8dYRVhydpHefETVI/Efwb0PVEVPOt5reOTy5P8AV/u9taEnhz/hYvwWsfl83WLOH7Rb/u/7v3o65pzUYgtY2OB8E+N2sPCd94buIf8AQbz/AJaf8tKq+B/BF1rM02l3H7qG4/1dzTjNRDY9+8E+HJPBHhuHT/M82PzGk82Wum8UfZdB0uH7ZfR/bpPMk+zf71cXtDKR1GteLdF0bwvHJZ6fbfbvsvl+X5f7yvMf+Fl+JJfOj+3R/Z5JK5+W5pKqO1rXm1m1h/fTxfvP+e3/AC0WqOsazqF/5cdx/wAu9a392xNr6nrWi/FWx0HRbHR7iaOKaO1WSP8AdyeXJXUaP43tdU8yPy5IvLXzK5a6ube05I2KOqXU2qeHfE1vb2NzLax2/wBo82P/AGa8D0+WT7LHG8kkXmLXbg/hOfEowb7Qby68baPeeXH9lt18yStq6l/12/8Ae+Zu/wC2ld07GEdT3TwvFb3Wg2dxbySeXJHH5fmx1ektf3Pl/wDPT93/ANdK+b+0fWRf7mx826paxxapJJ5P/HvNJH5Uv+zVP7V5skcfmfvq+rpQ/dnyNWHvFGawuov+WdcnffDTxBdfbNUsNN83TfMaTzfMrWMblc3IO8L6XJ4ctb68vJI/3cfl+VWD4u8Rr4jtbeP/AJZxt+7rp+wTTXNK5z9r/rP+e8lWP9zzKg7Tc8O3UcWqabcf887xa+9rXbFrE2yP/lj5deFmHY7MDpK5zvxM+1Rap/o8zxQ/ZfL82ubvvEcf9gzfvI7zVI4/LkuY/wC9XjxPQ2lc4u11S48uT/lr/wBNZa1NP8z/AJeJPNkrXmOGvqcX420a6tZv9TH/AM9KLWJrCGz1D/VR3kPl17NKR5tWJn6p4XXWYZJLePyrf/VyfvK+qv2bfhfD4I8Bx3nk+Vdah5lx5skddNeV6diTuNeuobrWrPS7eF5b7zP+2ce6uu8O+DbGw16TUPL/AHkdr9nrzrGnKdha/uv+Wlcn8VP3vge+2UWCT908hsdG8qHzPLkih/1nl1pX0UcvmfbP3vy+XHXeeNNe6Zt1rzXWlyR+Z5UnmeXJL5fmR1Y8NxQxaDNb28dr5nnSR3EUv+r+b/pnQZFHRdUm0HxFY/Y7fyrq3uI/3sX+r8uvri6uvK/eSSVyVT0sErRPNb7xbNrN98kf2O1j/wBXRo8s1tfR3iR/uY5v9XXKdXN7x6ZpfiObzo5P+Wcn+so8ReKPsEPl28f7ySujkNjJ0u6uL+1jk+2ebDXcR+X5Mf8Aq/u1zl0gml+1VyvjLwv/AMJHqmmxvceVY2fmSXEfl/u7ipkdBveG9L/su1jjSH93t/d1o0hxE8pf45KKCj83fGXxVb4yePNN8NyRx2cdxcLH9pikr0Lxd+yho/8Awjclxp8zxa5bx+ZHe+ZXqeRR4z4d0vXvjTrWi+B7zXLn+zdP8ySS2rB8UWvi74GaLrngu4sbmz8P65eR/Z9S/wCeirWtJnNXR1nij9kbyvDseqeFNcf+1o1hvLXzZKzYf2oL6w8B3nh/V9F83xVI3lyXP3oZK7zkj75g+F/gFrF/4Xm1j7Vd6f4ukmmkt45Y/wDWbf71fdH/AASr0G60b4Q+ILy8tfImvNUmq4x90iM76n29T6yNQr4e/wCCllrH9h8J3H/PNmoh8RM/hL3/AATT1TzfA/ijS3/5Z3ld1+1B+19N+zx4o0nT/wCw31W1vI/9bXXVjeoYR+E534Z/8FDvC/xB8SaLoaaHqFnfXjeXJJJJ+7r67rGdKxvE4b46ayvhz4V+INQkk8ry4a/GHXrr99dXFvH5v7yTy/8AgVFEmR+vH7LPw+h+HPwb8P6ekPlTXEP2i4/3mr1+s6jvIqI6l82syhK/Nb9vTVPt/wAeLORP9db28NaUPiM5H318L9Zjv/COm/Z/9Xbwxx12tFVWkaDqbWYBRQAU6gAooAK+Ov8AgpFqn2X4f+H4/wDp6q6SvID5l/Yp+Gmi+N/jd5er/wCr0+P7Zb1+rn+qrau+aVjOI+vk7/goZ4Sh1T4e6Hrj/wCs0+88v/gMlc9J+8Ejyn/gnj4o/sbxt4i8NvN5sN5CtxHX6DR1rXVpFRJ6ZWJQUUAFFABTKAH0UAFFWA+ioAKKACigAooAKY9AFW6iqGGKrAPNqbzagCWigAooAKi8qgCWvMP2kv3X7PvxI/7F++/9F05Afg34NsI9e8eeHbO8heW3/wCWn/XOvaviv8PLO8+GurW+lQs01my3i1wSqWOmNPnkeV/D3S7zxb4D8SaHb27+TIsdxbyf7S17J8HPC+qeEvC8On3H/IS86S48qP8A5Z7q83Fz5YGtKleVjpP+FGaXqnnbNJtdKmuJvM8z/e+9WXqHgjwv4Xhkt9O1b7XfRtXGsQ5hUpWM/WPEeqapDDvhji+zyN+9i/1dbXijS1utB+2PIktrHJ5ccldFjzZGXpf26/8AMjS6/h8ySuN+3yReX+7/AHldsI3OaR2XwvlhuodS+2WaXkO6OPy5auePNL02KT7ZZ2bxeZJ+88uuS/vWO+mr07lf/hF/+Fg2tnqFx/ocln+7/wCmcka1oeF7+G61TTdP/wBV5k0cfmx+Z5lVUVzG3PKx7F4yih0H4Z30iTfvriZY/wDgLV8t6DLJL5dmkfmzSR1rg/hNMSjvI/hVq0V1/pEcf7z/AFf7yu4/4VLpMvmRvC8EO3/WxSbfMrOdUqlSudZa2q6Xp9vp/wC8+y28MccdFrKtr5f+9+8rzftHtRfu2PlP43WHii1+JWpWenWuofYbjbJD5Vr/AKyuL/4Vz8RJZo9mm6n/ANM696lX/dnj1Ye8aEnwR8ZXV15d5NbRTf8ATW4rpvG3xLk+H2iw+C7yx+2X0dv/AMfPnfu/mr0qU7nBOHMeU6p43vtUjm2RpBHJ/rK5n5ZZK6fsG0FyxuTR+ZRL5f7z/V+ZUGp23wr8Jf8ACW+LrHS7yR4rX/WXFzF/yzr6C1r4wzeA/ixD4avIZJbX9zbySedXhY9XqWOzC6Ruesa9L9vtfs8Uf+i+Z+882OvKb6w0/S5pLe3/AHXmTfvK8eJ6FTSNyjfaXHa+XIkMf7yq9r/zzuJP9X/q66eQ4Z6lXxRpceqQxyeZH9ojjrF+1WsvhG80+48yW6t4/wDR467aTOaqjj/BuqSS+Zpb/wDH1J/q5f8Anpu+Wv0Y8N2E2l+F9Jt32SyW9nHH5cf+zWk5X0OQy7G1k/tS81T5/wB3cVe/4S2bQdH+2Pvluri8/ef9M42osHOdFqHihfMjt7OSP7RIsckkVR+PLqGLw3J9omtYprj/AFcUn+ruG/550WCT904uxl8rT4/9X52395WbrF1a2skMf7ueOT/WV1nnTXumTaxebqElun72aOnf8eF1cfaZP3O6P91/yz/3qzucxoaPo2papJefaIYJdLt1WOPzP+Wkle+aXL5ul2cbyeb+5rCqevhlaJy/9jeVdSSJ/qa1LWwktZrOO4jk8uSSuU15feOysdGh0vT7zZNJL83mfva53VJWv/MjSujnNi5oOl30v7zzPsce6u0k/dVzl0ixDLRJ+9jqZHQO8pfL/wBZRH+9pDiOmi/c0UFH5o6p+zxrnw+0uPxZ/b0c91p91DJJF5fl1N4o+Pvj74g303g/SLy0vJpI/wB5Lp8delGXOamt8G9G1j4BfEzRdU8V+XFpviBZLP7TJ/yzkqj+3N8ULO60Wz8H6RJ/aPmTRyXEsdbUpWMqrPN/hn4t+L2jeE5NLs7PzdLt18zy9Qj8uSNa8LvvEc0viT+0Pt0ksnmfaP3v/PSuiUvdsefTfPqe9fEL9qXXtZ8N2Nv4f0n+z/ljkvL2LzG+7/dr9Jv+CethNF+zT4bvLmbzbrUPMvJJK6eaxNOJ9MUVBQ+vjD/gpRat/wAITodwkf8Aq7ip+0Bwf/BMXVG/trxtZ/bP9YsNcD/wUY8Rx6p8ZLWz8x/Js4a9D7RyHzX4X1STS9Uh1S3k8i4jaOTzP92v2g+DfjyP4jfDnQ/EH/LS4t/3lLEyvEqJyP7X2qQ6X8B9ekuJPKjk/d1+V/wv8ON4t+KnhPQ3h837RqEfmeVXPH4SpfEftlotrHYaXZ26R/6uOuV+I3xa8K/Cq1juPFGrR6V5n+rrGKvI3Pn3x5/wUd+HvhyT7PpC3fiWTy/+WVevfs3/AB90/wDaC8GzaxbQpZ3VvN5ckXmVU6XLEm56zXh3ij9kHwb48+IV54w8QTXeoTXG3/QvM/dx1EdCj17w34c0/wAL6XDp+lw+VbxrWp5tKWocoR0lRyBcXzakklWKiIC0sdVJALRTATy6+Ff+Cm0vm2vhOz8x/wDlpJTpfEB4z+wff+V+0Npu/f5clrNHX6lR1vXJiS14B+3B5f8Awou837P9dHWVL4iZfCfFf7I9/wD2X+0N4Z2TeV5nnR1+qn+q8yt6+sgpP3Q8yquoX8Ol2M15cSeVa26+ZJXFHQ0PmHxh/wAFCPAujX32PRLW68QzV9PaXf8A9qaXa3nl+V9oVZK3nTtEC9HLRWYB5tU/t9rFNHG9xH5kn+ri8yml1AuUebSAKKe4DfN8qpaz5WAUypuAU+qtYBlSR1YCUUAMqKgCLyo6bJQAtTUAFOoAKKAG15R+1NLHF+zf8SJP+Wf9g3VAH4p/DXwlqkXjKPXP3cVjZrXvH9qR/ZZJLePzfMX/AFUsdeJiZe8ejBG5pfhK1tbGzuNRktrO38nzJLa2j8miHxHpel/u9Is5Jbrd5n+s3V5EjspU7FO6+1eI9FmjuZPsclxJ+7ljrJh8EWul2scjyebN5n/LWiLMqquYevS2thoOoW7x+VWH4dv47r/Q/wB35dx+8k/ffvK7qZ4tVGlDayaXBdfZ5vNk8mT/AFkdee3UV1FNJv8A3s1dlI5j2T4S+DbP7LJefbPN/d/vI/L/AOWlbXjyKH/hF44/Mki8v95/0zkkrjn7tQ7qWtMyfCd1df2PNb2djJLNXQfC/RodGvprzVP3V9bt/o8UtVKV42MrcsrnWfH7VJvDnwvjk8v/AFjSSf8AXPy4d1fOPwv0aTVtL0m8SaTy9q3H+s/h8ys6EbROmpHnlc+orqVbq68yKOoZJZLq18tK5TssV/N/c+X5n/LSs+6uvNkkqDcjupZJdPks/Mf95JWL/wBfPmU6WhZzuqS/ZbrzK+e/2krXyvG1jJ/y0ks/Lkr3sH3PHqy948rj/df6urFrF/y0eT9zXtcpkO8r95/zympv+t+/HHVX92xB6t+zndSRfEaPZN5dr9lkkkr6cutG0vVL77ReaXbahN+7kjkubf8AeR181mFTlqHp4SN9TwG1+IOueHP2gZLPUb6T7DJefZ5LaWT935LV6hrHlxfarjy0l+9/31UKnfQv2lpXOF17VL7VNL+zywvFNJH/AN+5FqHwvfzRWv2e43+dHJRaaMOY6CG1bVIZpHmjirlda0a6/tTy3/5eP9X/ANc6unpIwkhvhfw5a3Xjbw/b3EPkf6ZH+7r780/97+7T915f7z91JXdKNzhvY4+OX7V/ofnfbI5JPtEclZ+oeZdXUn7xJbqOT93XPYyps6LQdL/sGGaS8h/ef8tJaq+Ipf8AhLb6G4uLNPLs/wDj18yP/V/71aEyIZPOuvMjSRPMk/d1g/b49U/4laQ+VfW8zfvZf733fMrY5pGhothD4c8L+Ynl/bpJPMkllqr4o0G81Sx028t4/K+0XHl+VL/rJKLj5WejTWt1FYx/Y4f33+rjtq7rT7CS10+Hf5f2quSqepRLWl6DDazSfaP3vmf6utbyl/dyf7Pl1znYaFrF5tH2CG1hk2R1MgJrWJpfLkq1N+6/eUjUbD/x4yVgzeI5JYf9XH5dOKOepqNhuvt8cm//AJZyVpaL9nitY4/Lrc3ibH2rzYfMornNj4h/aQ+Ktn430WHwX4T3+Ib68bzLj+z/APnmteL+G/C/iz9m7xlofizVNJ8218zy5JfM8z5ZP+WdelGPIWe5fFq18C/G6+8G2f8AwkifvJPtlvbRf66SNq+OfiNa2vwq+LUml3H2vVdH0+8juI47mT95treMbHFVZ7R4j+OfhO/+F815oc13Frkn+j/ZvL2ybq8l8E/ALUrX+zfEHijyLzQ5G/0yPzP3kddcoe9Y46b5Kdz66vvBGl6D4R+2WdnbadY3EPmSS23l+XJ+7r7k/Zz0a10b4K+F7ezj/c/Z45K1qRsRTmemU+oNwr5K/wCCikXm/C/Tf+u1T9oD57/4J16p9g+MF9p//PSxryH9oLxH/wAJH+0FrVx+81CP+0vL/dV6H2jkOb+JnhK68G+MtQt7yz/s/wC2L9sjtv8Alp5bV94/8E6fHn9s+CdW8N3Mn76zk8yO2qqsLxKiL/wUe16S1+HOk6PbXH768uq+Xf2J/DkniP8AaW8Oyf8ALPS7e4kkrkj8JUviP1W1rWYfDmi3mqXkn7u3j8yvyF/aQ+KuofF/4lTSRTSXnmTSR2dtFJVUleRueifG79lXTfg38B/CesbpJfFUjR/bq7b/AIJp+I7qw8ZeItD/ANVYyWv2it5+9EwuforSfLFD5j158tDc8L8Zftm/DfwlrV5p8mrfbLqz/wBZ5UfmeXXy7+0R+31r2qapHo/gORLO1j/1l7XXGlcz5zw+1l+N3i3wHq3jxPE3iW803S2X7RJ9u8uvYP2X/wBsjxlH8RtN0Pxhq39oeH7xvL/e/wDLOnyILn0t+1N+1zY/AzRfsOlyQXfiK4j/AHdfBvjzxH8ZNU8J2fjjxBrmrxaHqF15dv5VxJHURpGh9yfsE/GvVPiv8K5IdXbzb7R5vsdfU0dYSQD6KgAr4I/4KWX7edoNnTpfEB4H+xjfwxftGeD46/Wy1/1Nb1yYk9fKn/BQjWPK+ENrZ/8APa8rKl8RMvhPkH9mny/+F6eCf+md1JX6IfHz48aX8DPBMmsXH+k30n7u1sq3qayMqT90+I73/go18R7u+zZ2ei2NrG3+rjjr7q0X4g6f8WvgvN4gsP8AU6hYybo6UqVjpPyBhtYb/wAeQx3HmTx3F9HHJX7YeF7VbDw7ptvb/wCpjt446uu7RA2PLpa4wPI/2pLjUrD4GeJJNIun0+/j/wCWsVfJH/BP7w5fePPiZrXizW9U1DUI9Dh8uOO7uPM/eVrFfu7gfoslFZAMr5e/bw+MN58Pvh2uj6XDfRXmqN/x+233Y1pw1A+OfgH+2z4+8DeONPsfFWuT6h4Xa4X7VHc/vJIY6+1I/wBv/wCDv/Qau/8AwDkro5ACb/goJ8I4v+YtqEv/AFysZKzf+Hifwv8AO8v/AImf/XX7LS9mB0/wa/bN8B/G7xNJoelyXVjff6y1/tCPy1uK+iawmrARUUgCigAqGgAqCSgBKmoAKWOgDy2+/aU+Hth8Q77wTf8AiRLHxBZ/6yK5j2x16dBNHLHHIkiSwyf6uSOgCx5VeO/tafuv2bviN/000to6APzN8DxeHfC9jY/Y4f7VuJF8zzZI/M8uStTWotS166juLyGOKSvl8TL3j2qcRul+HI7Wb/TI/wB9H/q4vMrah/dfvEj8rzF/551yyOuLsUftS/u4/L8uGP8A791i6p4jtbWOSS4kTzo/+WcX+srKLOaSuc39q/4Si+kt44/tn2iPzP8AV1zM3hySw16PfH/q5PL/ANZXp0zyqqNqa682xk2R/wCs/wCWvl1R/sv7VJ5fl12UjzTa0H+0tLuo49OmeK4kk/1UdereKPAereI7G1jS8tJ/3K/aLauPF+7UO7Da0zsvA/w+k8EeB4bO4jSS68vzLqSvG/EV+sWqSfZpvN+b/WVjF3lYMWuSNzL+MmvTf8Kf1K31G8/feX5dvHH81cr8Db/7H8P7G3vIf3cfmfu5f3ddsFaJphJc8bn0Jpd/9v8AO/1n7v8A1f8Ayz/d1arzD0LEN1F/yzrJklj/AIKgsb5tEO6Ly5PJpx0LPNfjJdSWHge+vNL8zT7q3h/d/Zq+Rda1m61S+8y7uHvJP+eskm6vewf8O549WPvEP/bOOrVrFJL+7TzJfMr0faGQXVhNL+78m58mP95J+7kokiuov3j2tzFD5n+skjre/vWIPSP2bZY7r4jeX+8l/cyRyf7teqXX7SOg2GsX2n3mm33mWdxJHXj4yjz1DvhP2dO5e8RfDTS/G+sQ+ILiS6lupIYZI5f+ef8AEu6vHfi98QfEWl+KJNPt76SC1kh8z91/drLDPmqWJqK0bnA2Os6hLa3X/E2eKONf3f7yrXg3xH/ZfiyP7ZNPLY3DfZ5K9uooI4+Y+jNPlki0+OP5PJ2/8s46xfGX2j7DJcW80f2i3j/d+ZD/AOPV4G0jrkij8JfEf/CZfErwzqEn7qG3vP3kUf8Ay0219YWvjeO/sdWkSHyrWP8A0eOOL/WfNXdGVzyJuw21umi8vZ+68yNf3VbnhOwkv76a8/1v2iPy/wB7H/EtZWM4M6rXrBfMj2Tf8s/9VXK3UUcUP+rjplSGx+ZFN/x71zutRNYXVxJZzf6RJJ/rY62OaR6V4R0GOLRby3f975clXNa0v7ffaTH9s8r+z7yOTzfL8ys7nbym99v0/S5pLhIf33/LOtLw3rLXV15dxJ/rP9XWFU6KJvX10trJHG8n76T/AFdWrWKPyZJK5zsNi1ikijqSa1/d1MgG/avK/wCWdVb7VFihpGpl6fr0d/NcW9nvl+XzPMptro377zLiT93+8/d1tFHPua2l2Fja2slvbx/uY6k8pYqo3iSR+ZLRXObH51+E9Lj/AGff2jNN0e4vv7QsbxfL+0/u467r9sTxvo8ug6bpaXSXl9JdfvPs0kdel8Qpo8P0X4fePPAdrqXjy40270+TT445LOX/AFkfltVXS/gP/wALB0vXvEniu61Cz1zUJmksZPvR12wj7tjzpzPIbHwb4o0bxRJpdnpv9oTRyeZHc/djk217t8Wvj7Y6z4Dj0uz0W50rWPl+2W0sf7uP+8tbkyfOUfhXYa18Wpv7HfWtQ/4RG3hjj+wx/wDLPd/yzr9lvAelw6D4H0XT7f8A1Nvaxxx1p9ko6GiswCvlz/goRayS/BHzEj83y7iOgD4R/Z9+KFr8JfHkmqajNJ9lks2jjkrm/hzazePPjRpPmeZLNqmsR/8AXTy/Mr0eSxzn1B/wUS+Gn2XVPB/iiKOP95btb3EteX/sU+N/+ES+PGk75P3eoN9jkpUpXjYGemf8FMPEfm+NvDujpN/q4a53/gm/pH9pfGjVL7/lpp9nXO1aJR9SftzfEaTwR8Jfsdv/AKzUJljr4x/Yg+FX/Cxvjdb6heQxy6bof+mVpS/hknsH/BRzx5a3+saL4Pt5pPOs/wB9Vr/gmp4Nupb7xB4keRPs/wAtvRtEUT77qDUIvN0+8j/56QtXEdZ+JfxQ0uO18beIN8by2sd1N/6FXI6f+9vo4/Mki8yavSj/AAzlP2E+Dfwb0vRvgHZ+D3/49byx8u4rwHXv+Cc/hXwvpera5qnjLU/sturXFccanvG0o+6fJvwb+FTfGT43aT4fSa71DTfO8yS+uf3n7uOvqT/gol4t03QfBvhvwHp3l+TW8tZExLn/AATD0uaLQfGF5/y4yXUdfc9cNX4jQmopAJ5tfnT/AMFFtejuviVpOj+c/wC7t1q6RnI8Z/ZB8yX9pzwf+8f9351frtHV1TQnr4u/4KRap5Xh3wnZ/wDPSZqil8RnL4T5v/ZVtZJfj54X/wCmc1H7dPxLk+I3xkk0PTt8lvo/l2cdd5hSNj9qD9m7QfhB8L/BOoadHPFrkkcf26Xzv9ZX1Z+xPBN/wyxY+b+98z7ZWX2DrPzp0uX7B8SriS7uP7P8u6k/ey1+yFjr1noPg211DVLqPT7GO3j8ySWivqB4vqH7evwj0u+urN9anlkt5PL8y2ta9K+Evx48G/Gm1mk8L6t/aHl/6yOuXkC5l/tTbf8AhQnjD/r1r5r/AOCYt0v2HxlH/wAtPtUclaU/4ZP2j7rp/m1mURyVwvxm0m11n4ZeKLe8tY7mNtNmk/ex1MQPyt/ZR8B+H/GXx80nS/Femx61Y3nnR+XLX6HSfsM/BmUeX/wivkf9criSt6mgEcn7BXwjl8vZpN9F/wBc7ySvP/iF/wAE5dF1SS3k8KaxJpUf3potQ/eVn7Uz5BPhj/wT6k+HPxE0PxR/wlSTx6XN9o8iO3r7KrGpO4U1YKKo0CmUAFMoAKbQAUUAOooA/Ij9umK1v/2hvElx/rPLm8uSvrT/AIJp3WoS/DHXo7y+nuY47xfL82TzPLrrnTtRJufY1eB/t2XX2D9lfx9J/wA9LXy6881pn5y/D218rQdNk+T/AFddV5lfLYl/vD6Cl8JH5qxffqHULr+5vlmj/wCeVc1Rm5k6ppepXX/Hv+6/5507R/BHleXcXm+WaT/WUcxz+yNibRodGkutUSZ7P7RD+7li/wCWdcjp/gi+8Rx+Zb2/mw+Z+8krppTOGvC5J4ksIdLkj0tLP/lpH5fmR/xV2FrYWul+DY/tmn+f/wAtJP3f8VetSl+7PAqR5Kljm/COvSRa1HbpDbfarj93HXu2l/upJI3kkluo/wDnpXLiviPQwcPdLk11J+73yfu68D17Rli8eTeH7f8AdfaJl+z1hQ+InHfCcv8AHzwvdeHPCNjp9xN5s0ky+X5UnmVi+EZV/sfTd8n77y1/6Z/dr0fsGWC+E9S8I6pdSzR/vn8mSOSuu81pYf8AWeVXkS+I+hirxPJ7743a1a/Fq68DvY20dvJMsdvcy/6yvRP9VN9noqRsRT1HeV++j314r4y/aCk8Ea1daP8A2L9suo5P+WtaUKftJWMsTPkieb+Mv2h77xboM2j/ANi6fp/2j93JL+88yvK/N8qH93X0VCHs42PIkTQ6XfXU3+h2NzLDt/5Zx/3a+uvhzYLF4N0mS4022ivo4fLk821/fR1cp8sTE6SH/VyRpHbRW/8A1zj/ANXXD/tDRXUvwfvP+e1vfW95JXJSV6lxR9yR4j8FfFul+HPHH2zVL7+z4ZLVrfzfLb93WH4+fT3+IGuXlhIl5azXkkkfl/6uTdXdKN5XNz2z4e/FXwnpfw5t49U1LytW2+XJFXjPxQ8R2PiPWobizk83y18v+7+7rOlQ9nUuae0OJh/dSeZ5aSyVNNBJFGt40fkRzfvIf3f7uuwzPbvhr4jbWfDtnH/y0s/3cldlN/p9rJG9fN148uIudMnenYxfhna2ul+OLWNP3HlySSfu4/4q+nNB0v7VqlnbpH5XmTfvIq9Cmzyaq94q+PPtVhr11p+nR/afm8v/AK6fu/Mr1zwba3UWnx7/ACLOGOH95H5n7yOSpkyacbSKuoay1/dfZ7eT9zH/AKv/AKaVR+y/2pdQ29vv/efvP9X5lVEUneRyuly3WvQzWdnMkV19qht44/m/d7q6LxJoN5a+LI7jy44rfyY/9b/y0Wok7mPJ+7Oy0W6j+yybI/Kj3VNN/rqRtEz77/Spo/s0n+lR1vaXFdWFrJv3xf8ALSOomzWnEtaf50utWe+OS88ySu+/dxfu65T0zYsP+PWOpG/1clQBlyRR/wCrrzfXtebRrry7f97+8/eSS/7NWY1JXK/hO/a6tZLj54ppP3flx/u/uyV2l14ttbDzN8cn2qP/AJZVqZwmU9H8ZTXXl2/2eD943l1032r93/rKnY7IMda39FZ2Og/MHxx8PvGH2WP4oapDJqEN5J5knmWv/HvXE694I8RS6D/wllxZ3P8AYd55fl3Neh8JdRHsX7UHxphuvgr4Z0PQ7y5s9UvPJ+2Rfdkj8uqPhv8A4XBL8K49LSG0ljkh/c3v/Lau6EveseNOJvfs269ocXwzvo9cvNMivtLupPtUVz5fmVx9j4N1L9ozx5ea5d+ZpXhWOaSP/ro1bExfKdJo/wAEbr4VfFbwbJ4XvtQi+2apHZ3ltLJ/rI91frpYxeVaw/7tafZNi/RWYBXzh+3tttf2edWuP+ec0NAH5X6ht8n5/wDWV9FfsH+EpPFHxksbj93/AKHaySSV6M5WOc+1v2yPh9/wnnwB1yP7L5s2nr9sjr8ufh7r39g+JNN1jzH/ANHk/d+X/wAs64sNK8rCkdd+1J8Wofi/8Qo9cs/+PeOxjt69u/4JkxTf8LC8YXn/AEzhjrsqxtEsuf8ABSjxRNL4u8O6P8n7uGj9jf4g+H/gj8EfGHjTXLzzb6S6/d21Z0v4ZJ81/Ez4jap8VfGWpeJNQt/KuNQby7e0/wCedfqF+yL8NJPhf8G9Js7mOOK+vP8ATLj/AK6UVNIiie30ybb5Mm+OuM6z8Y/2grBtL+LXiS386T/j+mrkfhnpf2/4qeD43j/1mrW8f/kSvRj/AAzlP3E0+LyrGGPy/wCGvm39vT4jf8Ib8JY9LSaOK61SavPjH3jaUvdPkX9ifxvp/wAOfHHiTxJql1bWdj/Zv+sua8z8XeKNc/aM+ME0iQ+ffahdSfZ4v9muuOsiYn6qfs8/B61+C3w5sdHs4/30n+kXX/XRq9Ujrhq/EaC0UgIa/ML9vTVFl+N2tW/mf6u1Xy6ukZyOZ/YjsPtX7S3h3/pnDNcV+sUdXVNBa/Pz/gpFrzN428O6XE37m3s6il8RnL4T5v8Agr8QW+Gnii68Sf63+z7Py47b/npI1an7Mvhy6+L/AO0losmqfvZPtUmqXlegYUj2r/gph4t+3+KPD/huzk/487fzLivaP2AbXVpfgjNJeTPLpu7y7GOsf+XZ1n57/Eby7X4gatJcb/3d83mW3/LT5Wr079qr9qq6+Kug6b4b0iO7s/D+n2cf2j/ppJRU1A9k+A/7BFr4y+DceqeKLy6i1bULfzLGKP8Ad/Z68r/ZX8Q3XwU/auj0O8b9zeXUml3VZcxnc+9P2xL/AOwfs8+LP+mkfl183/8ABMW/h87xtZ/8tvMhoh/DK+0ffEdLWRQVleMrX7f4R1q38v8A1lnN/wCg1MQPyp/ZH/0D9pbQY7iH99HdSR+bFX6zR1vX0Anp/m1ycocxJ5lSVHLcLWK9PrYAooAZRQBFSeVQAtOoAKKAPxk/aG8Rr4y+MnjDUPM/c/2tcRx/8Bk219+f8E89Dj0v4EteJH5X9oahJJXp13aiYXPqKvmH/go9P9l/ZT8SH/npdWsdeMdUD4D0G6/4kNn9j/5d4Y7etj7fNdfu0h/cx/8APWvk8S/3h9BS+EddWv7uSui0+wtbWxh3xpFJ5Nc02bha2rSzfPHWpa2sks0dvXNzGmhoX1r+5+x+THLHJVfRdBh0uP7PZ+XZ+Z+8k82StaUzmqQueU+KPiN/bMN1p6RxxW/mR/8AXT5ao/arq6tfsf2q5+zx/vJK+npR/dnx9SfPiLE3w5v4dB8ZR6hceZ93/V/71e/TWq+d/q/3lcuK+I9DBz90m8rzbXy68x17/iiPHk15ceX9nuI/Mjl8z/V1hQ+InHfCeb/GT/ic+F7rWHk/0r7V9o/6Z/N+7rj/AIexNrOl/wDTa3b95L/0zr0fsGWC+E9Q0GXypP8Arn/y0rqobqT7DJGkMcv7uvIl8R9LSV4nL6p4N0nWfGVn4oeF4tWs/J/ef8s5PL/drXH6x+0FoPhzXtSs9Qku5bqOby/3ce6OummvamFT92dJ4D+L+g/EH7RHpskn263/AHnlS/u/MX/Zrzv4ofBHUvGXiK61SzvLaK1vK0g/Y1rHNKPtomTp/wAArG18v+0dQuZbqRl/5Z132l/Crwbpfl7NJ+2Sf89ZJP8AWV2+3vKx5kjov7LtYvLkSH7H+8jk/df+g1qeVJ53+sklmqZT5omJajtfNmjjr4v17XvEH27UtD1HVruW1juJPMtvO/d/LJXVhlfUUfekc/8A62apo/Lir0oxvG5uEm77LWfJF5X/AB8fuv8AppRKd9TOxDNdf6VJJWha38k9jJZtN5UMa/aF/iXdQaFrwj4juvDmpfbP9bbyL5ckdfQGi3Ud/pf2xPLl8v8A1n/xVeRjo8tS44yvobXw5iW68efJJ++2/vK+lPhn+98XSf8APHyaVNmNVe8dpr2jSXV9NG8f7uSSOPza6LS9LmtfDvlpIn2j/rnUSZXLaR5nDdQ6X/o7xpFHu+z+bXZfD2KGK6uNYS683/l38ut4nmxd5Fz4c+A7XRtUvrx5Ptkkl59ot/8ApnuqT4jbbXVId8iRWvktJ5tYRdzv5P3Zxug+N7XVNYk0vTryO8jjtftHmR/vI66SOWS6+5/rKs5YnXaDawxfaP3ccv3f3tbF9YSX/wC7T9xNXPUZ6VOJe0/Ro7Dy5P8AWyVc+3x+dHWRsbFrfw/6tJKy9U8UfZY5vs/ly/L5cnmVAHC33iNpZo4/9VJH/q/3lU5tLutUuo4/LerOG9zS0fQZNLhkj8zzf3klan9jQxXX2y4uP33l1qaQgE2s6bF9yz/eRyVDa+KJrrVLe3eFPsslTPQ3ps6S1looO08j+I2qWOvfBeST+0rWzsdQsY5LfzZP3fl15D4i+I3gO/8Ag/Jpaatbaf5mmx2/2HT66ef3hW908J+F/wAKrH4q32rXniWTU/sOnrDHYy1c0H4q/wDCkfFHibw34l+13MNn+80uXy/3nltXdTfLE8yfvyPn3/Sr/WtQ1D7DPFpeoeZceV5cnl16R8K/G/jr4D6pJHeaHqGoaHeL9ok03y/Mj/3qdjaUrn0V8G/irdfHj9pr4e2dnpP9n6Tp+7VP+enmNX6o12fZMyak82sCbC14J+2x+9/Zv8TUpBY/JP8AeeTHv8v/AFdfoJ/wTZ8GzRaXrniS4j/d3H7uGu6p8Jnb3j7S1DS49Z0vULN/9XcQtHJX4x/EDwl/wgfxC17w/wCX+50+6kj/AOA1lhtJFVUcHqkqy/vP9bDX3R/wS7itbXS/HF5/zzuFrsqv92Znh/7cXxGXxl8YJpNOvo9Q0u3j+z14LpcU2qTRxpD9pk/55x1lT0pilrGx9ifsg/sl694j8XR+LPFFrJp+h2ckclvFL/rLiv0CvvHnh3Qb5dLvNYtLS6/5ZxSybaylrI3ib1rfw3UfySRyVPXJUVpFH5FftkWEmjfHzxFH5byeYy3lcn+z7pcmvfHTwPZxeZ/x/RyebH/s/NXpx/hmFj9mo4vKhjj/ANmvzJ/4KHfEGPxH8VJNHS8/c6Xa1y0jWoeL/DX4VeMvjTqi6X4Zsbr7L+7jk1Dy/wB3X6Pfsy/seaD8B7GTULyT+1fE1wv7y5lqJFH0TRXPJXKJqKskb/y1r8kv2zPOuvjd4kk+f93dVtSM5G1+wDLJL+0tD/2DZq/VCOiqaDv9b/rK/K39tLxHHrvx41r95H5ln+7qqRzVfhseBzedFpcf7xP9Im/9Br6i/wCCeMVnoOseNvGmr3X2Ox0uzrp+yFI8D+MnjfVPjd8aNevLON5ZtQvPsdjbV+s3wL+H3/CtPhX4f8N/8tLOzj8z/eb71ZVZKEbHSfk38eLC6sPi14k+0Rx/8fTf8s65HwjoN1438ZaTo9vDJLdaheLHHFH/ALVaGJ+rniT9pjwT8DZLHw34rvNQivrexh8ySOzkavzH8cfFDRb/APaMm8aaXDc/2TJrX9oR1jHUD6s/ag/bS8G/Ev4Q3HhvQ7PV7y+vPL/1lrtjrxn9jf4+yfBa6164/wCER1DxH5n/ACy0utYQ90D6ok/4KMWsUPmS/CvxVHTrX/gpP4N/seS4u/Derxalu/48q5eU2Ppb4S/Emx+LXgPTfFGnQz2dreL/AKq5/wBZHW54o/5FrVv+vOb/ANBrPeQH5L/s53UkX7RGi7LzzZpNSr9eauvG5nDQKK5rFXHU+tLFDKfWdwCitQCigCKirAKKACszxLc/2Z4b1a8/597OaT/yHSA/EvxFLJdaheSXEccUnnSSR/8AAq/Xr9mnwt/whvwO8G6X/wAtPsMckn+9J+8rsxD/AHdjOJ6d5lfKP/BSz/k2vy/+emvWdedI0PgvwHqml+TJb+XHFfSf6z93XYf8tPMr5XGR9497BzvEtWul/arWtDyvNm/66V520jvjGxqaXYfZYY40rovN+yx/6ysiCGb/AJ6VzutazJpenyXieXLJ5dKmZ2PAdP0uSLUPLuZPP/fSV2F1t0bwn5iW/wDx+Tf8tP8AnnX2VL3qZ8ZOH7wx9L1SO1vrO48vzfLk8zypf3dfRFjrK3+l2Nx/qvtEMclcGMPQy9EcOvf6zzIf+ufl14/8Vrq41TxJ5f7z7sfl/u648M/3h2YyHNTPK/jV4yb/AIRuHS7fy/3kyx3kUVXvhn4I+3+F7PxBb30fkyRt/o3lyfeWSvXl7sTzMNoeiaXL+7jk/dy/LWxay+bJ/rP31eDVZ9PTlcuR3X2WT5/3UNfHvxqtZLD4oeJI7z91N53mf6z+GSPdXdgfelc5sZpGxvfs33+m2HxGkt7iRIo7ixkt/M/2q921TWbW18uR7yPyZJpPLrqq0HKVzzITtTsczr3jzwzYf8xrT5fMk8v93JXL61+0Podr5dvpFjdy/wDXWuunhzCUzm9Y/aH1S6vo5LSxgs/l/wBVJWPdfHjxxf8AmR/2tJZxyfu/3cdehTp2MTLm+KHjKLzI/wDhJtT/AO/lcv8AapvMmuH/ANdJ/wAta1uA39550knl+b5n/LWnfN/0zjpgNk8zzPL8usmSWPyY9n/XSSnI2If9ZVyP/rn5tQBYvpWl8m88vyvMkrsvhrr0fnLp+o/6z/lnL5lc+Jpe0iEXY9o+C9rdf8JZ8nlzw3n7uTzK+vvAdgthqkdv5nn+XC1eda0TOWsjttev49L0u8vLmT93bx07UPEdnpfheHVEmj/eKvl+X/z0aouaRdjxGOKaXWtS/tG48++km8z/AKZ/N/drtLXWWsPMt7f91JcR1rc8aGkj0rwT50Xhuxt3vPtnlx+XJJWL8WrCO/jjs3/48bzdHJWB6/8Ay7OZ8B+HNN0b7Zb2dn/yxWOSTy66T7B9luoZP+eclVJ3MbXkdposU0Vj5jx/8tK0NLl826kjf+7WB2x0L2sStYaXcSJ+9m/551g2trdX832j/VeZ+7oA1NUl8q18tJP+ef8Aqq5G6/1nmUBUZRm21reG7r/icfP/AK6SOtTI6z/W1DqH/HvJQdUTjdL8y/8AMqaGWbS7qOTyfN8uT/V0GFjeh8RzSyR77VIvMX95RVWL5j85ZPBHj7xH4ds/EHk6hqHh+3jaTyvtX+rjj+X7rV7J+zb8KvD/AMRvh/fapq9jbXl1JNJH/wBc6fL7x3290w/Afxk0HwHD4o8H3l4//Er1Ka3s7by/3ki/881rxfxF4c8RfEH4raTrHjCzudD0PULyOzjk8v8Ad+X/AAx13U3zRPI+GR9SeNvCVr4X+DevR2/l6fDp9m3/AH7q98M/FGh+Mvhn4X1RL6CC3jhjs5JbmRV8uaP5Wrt5TGMrh+yjf2fiP9tzXpNI8u8sbPR/3lfpNWn2ToH0VgUMevA/24Nv/DOfialID8l7qXyv3j/6vb5dfrd+xj4S/wCEX+APheP955klr5ld1T4TO3vHukdfmf8A8FDvBDeF/jBZ64kf7vXI65qTtIqqj5J1D91J/q6/Qr/gmLo3lfDPxZeeX/x+alW9V/uznPjX9oK1s7X4teMPsdrBp8cd5JX6Ufsq/CXwfoPwX8H3lv4f0/7VJZxySXPl+Z5klabUxR1lY90urqOwsbi4fZFb26tJX5F/tVfFCH4q/FbXtcSbyobOT7Hb+XJ/CtZR1kbxPqL/AIJx/DnWv+EdvvFmqX135d5+7s45JK+4awrq0ij8xv8AgoppbaN8aobjy444dQs64/8AYTtYbr9ozSY/+ecM1d8f4ZNj9XvN8qOT/pnHX41/Hi6j8UfGTxRqiTebDJcSeZXLSCofpV+xb4Xj8L/s5+E4/L8qSS18ySvdallCSSraxySP/q4/3klfNOm/tw+G5fjFceB9Ss/s1v8AaPs9vqVZRVyj6chl83955lS0iRtfkZ+2RLHF8fvE0fmf8tK2pGcjY/YF/dftLWP/AEzsZq/VaOWiqaFXXtUh0bR77ULj/V28LSV+KfxU17+1PGXiDWLj/XXF41VROar8VjN8RWv9jWtjHcQyWfmR/aI/3fl1qfD3QfH3i3S9a0PwdDqd5pdxJHJfRW3+rkrp+yFI+2P2N/2N9Q8Ea1/wlnjS18i6/wCXOxr7hriqy55WOk/Gr9rC6k/4Xd4kjf8Adf6VJH5Vdl+wL4Nh8ZftBabqFxH5sOjxzXEddbMT9OPEngPw34otfM1zR7TVfs6+ZH9pj8zy6/H3VLDSdU/aCurfTtJtv7D/ALYm8uy/1ce2sqWoH29+3VFZ6D+zXoNvaWMEXmTW9c9/wTQitf7A8Sfu0+3edWkJe4B9z/ZbW6j8t4YJf+ukdY918PvC9/HJHceH9Mlj/wCveOuPnNja0+wtdLtY7ezhjtLeP/VxxV4T+1x4j+IXg3wnY6x4Ih+2Rx+ZHqUXl+Z+7pQ1kB+Xvwp8b654N+KGi65Z6bJrlxb3kckdt5f+savri+/a+/aC1mHzNI8A/wBnw/8ATXTZq9CpFMz2OR1T9of9paKb5/7Qs/8Apn/ZNQ6p+3N8dvC9jJ/aNja/9dZNNZay9kRcxfhz+0t8dPjn8RtN8P2/ix4obxv3kWlxxx+XHX6fSX8PhfQftGqX3lQ2cP8ApFzL/s1z2Nz5L+IH/BSfwbo2sTaf4a0W78SyW7f6z/Vx1Rh/4Kd+E/t1rb3nhfU4K09mB9jaDr1r4j0Wx1Sz8z7LeQx3Ef8AutWpNLXOA2GXzafQAV5x8YPjd4R+COj/ANqeK9S+x+Z/qbaL/WXFUB4r8O/+CjHwv8b+Iv7HvPt3hz/nne6p+7jr6otb+G/tY7i3mSe1kXzI5YvmWSgCeuA+PWrNonwX8bagn+utdLmoA/H+OwbVPGWm6fbzR+Z9ojjkl/1nmbq/azw3Yf2XoOm2f+q+z26x10130M4mrXyF/wAFKL+Ow+EPhP7RHJ5f/CSR/wCr/wB2SuGRofnToNrHL4sjk8z93JN/rZf9qvXLG18qxjk8zza8LGR947cvneJk+CfFF1rOtXUflpHHHHJXoUdh5teDU0ke3SnznRWP+r8v/W/8s6NUl8r93WRRTk/e/wDXGqf7uX948aUqYWMfxdFp8XhvUry8tf3O3zJPL/1leJ3WszXWnxxvJ5tv5dfQ4OrzUz5nHQ9lUDRYpLrUI9n/AD0XzK96mih+y/Z/tH7yNarGF5eji/AfxL0/xl4i1bw/bx3P27T/ADPMki/1dwqtXZWul2evyXVv+7lurdv3lefJ+yqHZVlzUzxnxJ4X0Xx5a6t9o8vzre1m+z/Zv9Zbstcz8EfiXHo3gfWtHuLV7y6s28y1k/55yN/er24+/E8ilodR4Hull0fT98n77y/Mk/3q7SHy68qrTPfoO5zPxQ+JcPw5tdNke1e7+0eZ/q5K5PXvhLpvxavo/FFvqVzZyapaxyeX5f8Aq5K1wvuRuKr+8lY+b9QsPst9Nbv5nnW7SRyVV82T95skevpIxUo3PI5baDfKaWTy/wDW/wDLSneV5sMe+rpyMJRHSfuppI/MepoYvN2x/wCt8z/llW97EmtdeDdYsLWS4uNFu7OGOP8AeSyR1hzRSfu/+WX/AD0rmuB03w50aHxb4us9LuJJPJuGk/ex1N488GzeCPEkmlvI8v7vzI62A5/7VH9q8t4/31UZoof4LWnI2Gw2sf8A20qPyvK+/v8AM21AF61v1ltZLe/kkl8tWktYov8AV+Z/tUaXdR2t1DceXJ+7k8zy/MrWWkTOTsfTn7NN1H4jj1K82pF9j2yeXL/er6m+Essl1Nq1w/73zG/d3NeNNWiEdZHeeKIvN8O6lH5aS/ua8x0G6uvEcNrp/wDpf2W3h/1sXzRxsslcdwk7HReLvAc2s699ss5P3lvax+XH/u1JD4cm+y2dxcbPtFx+8uLaL5q2uc/srSO88Iy/8Su4jSOP93NUfi7S216OP/llJb/6uX/lnWZ1f8uzDhiksPJ2fvZJI18yuytdLj8yOT/W/u6xi7lU1eRuWsv2q18v/lpH+7qnNqn9l+Z9/wC0UzWWhR1TXrq6mkk/dyw+ZWppcvm2sdx5nleYtAGbfa9aywyW/wDy2rJ1C6WWgymyGHS7q/8ALjto61pPDl1pckMiXn+s/wBZ/wA9K1A2vC8Un+mb/wDlp+8jrpvsvm2skaUHVEzf+EXtfO8yq93o0MV1H5sn+s/d/vaCLBNpa39r8/8A2z/6Z0Vh7Qv2Z5b4N/sf4g/DnUrfTpLaW3vJLiOSX/nnur5j/Z5+Ktr8G4das7iGOWxkvJvM/wB5f3fmV335jaMbRPGfBPjzR7D9ojUtYvI/N0e8vJv+Pn955bNXsn7WnjeTwl4b0/w/pfkXkmqQ/vIpf3n7v+GSOvQpq0Tzakb1Lnld1/wtqL4exyeKP7Q1DwfJD5lxH5n7zy2o+Gf7N3jD4jeDZLy31aPStLuPM8uxk/1dxRyc2gRl71z6m/4JT+A9S8OeNviNcapYyaffW/k29fpPWktI2N4j6KRYV538fPAbfEv4S+IvDaTJHNcWsnly1kQfjLdaNNYahqmn6jH5V1p8jRyf9dFkr9qPgrYSWHwr8L2//POxhr0Kv8MyO2r5j/b++HMfi34Q/wBsJH++0eT7RXOB+V80sMs3zyf6LI1fqJ/wTr0b7B8A/tH7z/TLyatan8Mxt7x8I/tJRNa/GTxZ+7f/AI/JPMir9Rv2bb9b/wCBvg2RNnk/YYa1lG1Mr7R5b+2t+0FD8OfCc3h/SLz/AIqK8Wvzp+Hvw+1L40/ELTfD9nv8zULpvtEv/TOtIxtE0P2c8B+DbHwH4T0nQ9Oj8q3s4Y4/LrfrhA+Av+Cm2gx2GqeE9USP95JH5deU/sA/8nBQ/wDXu1dlOV6dij9NPGUv2DwbrVx/zzs5q/FXxFL5t9rV48yedJNJJJWVJmdQ/X79nf8AdfBXwfH5fleXYx16RWcviKPE/wBrL43ab8KvhnqUbyefq2qRtb2dlX5d/CH4Za58SPiBY6PZ75JLiaPzKqMbRA/aLwjoMPhfw7pul28jyx2duscfm1t1zgM+b3r8k/23PMi+PGvfu/8AlpHTogWv2Cf+TnNN/wCef2G4r9W61qSuB82ftzfF+18B/Cu80O3m/wCJtqn7vyv+Wnl1+ffwN+Et98c/ihpOl+XJJYxzLJfXNaU48tOwHqn7dmg2ujfFax0uz/dQx2MdvHbV7p/wTFihi+FfiT/ntJqX7ynLWJifaNfJH7XH7YerfA3xdY+H/DVnaXl1IvmXXm1y0omx+bPjjx5qnxB8UX3iDXPI+3ahdfaJI4/9XX1x/wAEybWSX4jeLJP+Wdvpsdd1QxPsj9p34qQ/Cr4T6teeZ/p13H9nt6/M39mnwldfEH4waLvhklsZLzzPMrKn7sQPsD/gpZ+6+HPhOz+T/j+rn/8AgmLtisfFFvU/8uwPvWnVkbDaoeIovN8N6tH/AM9LWb/0GkB+S/wB8nS/2nPCe9f3P9rSRyR1+t3lf9M0rpqmESzXNeOND03xH4T1jT9Rs4JbeSzm8yOSNa5jc/Nv9gHS7X/hpqb92nmWem3VdJ+3V+0JcePPGn/CudDun/smzb/TPsn/AC0mrbltK5nE2/2b/wBgb/hJbWHxB48+02djJ+8j0aL935ldT8aP+Cdlnf30d54AkttPt5P9ZY3NP2upofXXw58ON4I8B6Hod5eR3l1pdnHbyXP+7X5+/tZftWeIPiN48uvA/gO6ni02zm8v/iX/AOsvJqzp+9K5ByNj4y+LX7JHxG8NyeJdautRh1C3W4uNGlvvMr9TtF1m317RbHVLf/V3UMdxH/wKiuKJn+OPFtn4D8J6t4k1SRIrHT7driSvxz+LXjzWPj78QrzxBqMjyyXk3l6XZR/8s4f4auhpqEmesfHj9lXT/g3+znpOsapJJL4qvNSj8yP/AJZ7Wj/1dfUH/BOe81GX4E3lreM/l2esTR2tE3+7CJ9T1wH7Qvmf8KN8df8AYHuKwXxGh+Wv7N+gx+NP2kPCOmywxyw/bI5JI/8Arn+8r9ia68TK8gCvjL/gp1/yTPwPH/y0/t6vOnpqB+d91ul/5beVN/z0rpLXxbrF1D9j87zbeTy4/LrknK5xU6jhI6DwHqjaNr02n3lu/wBuvP8AV17BHFJF5fm187jIXkfVYSXumhp8XlSVwOhePpPFHizxRp6WscUOl3n2OOWL5vMrisdp2Xm+bUckq1lflNYuxx/xalktfh/qVw83mw28kcl5J5f7vbXh+n38N/Y/bLOSO8tfM8v91+7r6PLl7SmfK5hC1a55nr3jLVrDxlqFxpd1c6fDHN5f7qT+7XrHwz+PHibxbfL4fvNNTUNUuFk8u+i/1lenVj1Jpe4ejfAP4fR/DS+1qz1TVrW78QXk3+rjk/eSQx1rfCHwlq2g/Ebxdeav9lgutUb/AEX95Xi1VeR0+0PaNF8JaTr0k1m+kwSzSR/8sv3clfAtjayeF/GXijR/k/d3k1deDdjCvqdVoPii10a+tY7iRLOxk/eebXqWi69Df2PmW8kctXXp3OnCVLHnf7QXhe+8R6PpNxpdjJeXVvM3mRRV3Xw50v7L8P8Aw3b6jZ/6dZw/6rzP3lvWPNajyno+y/eXPnn4mfD7WrDXta1RNNf+x/Okkjl/2a5Pw3oLeLdatdLt5I4pLiT/AJa16lCspxPIqx5JHo2l/s8XUV1/pl8kX77/AJZf6yvPfHnhy18OeJLzR7eZ5bWPy/LllqqWIU6hlVjyROfk8yKrGlyrBqFrIjf8tF8vyq6ZHPLWNj7S1iWx8R+F9W0+4j/c3FnN/rPmkkk8v5d1fFs37393/wAs/wB3UUPhNZfETaXf3VhqH2i38yzuLf8AeebX1F8M7XS/iX4RtdY8SaKmoXFvM1vUYr3cPYvDRvULXij4LaT/AMIjeahpfh2OzuI42+xyW3zTV8i3UX2XzLd/9ZHXHgaqqROjEw5Sax0a61ST7PZ2b3k0n/LOOt74geEpPC82m75P9Zb/ALyvRjVTlY45xORj2/ao/K8ytjVLDzbW11C2jtoobzdH5cf/ACzkWuiIon0J+yLf2t1qHiaz8v8A1lj5nlV90eHbD+y9Fht/L8ry/wB55VeVjH7xMF7xqaxfrpeg3lw/73935fl/71Z/wp8JR6XYzXHlpF9o/wBXJHXnFWN7VLD7VdSfvvK8yOSOOuJ8I2E2l6L9j8vzZt00n7r/AGq6IhI6bw7/AKLDceXJ+5kbzJI61vt63UMlQUV/Dul/b/LvHkj/AHbfu666by/3e/8AdVjY1j8JR17WZLC18uz/AOWkf+srj/311dfaPOfzP+WkstVBESfvGt8sv/LSrmqX/wBqtfLj/wBTtrQk5WGKb7V5aRySyV1nh3Rv9KhkuYX87bWQHYXWjf6D/o8nleXXP+MrCa6tbH7PI8XlzeZJ5UlZxOiSHaDL/q5PMj8z/nlHWta+KF+1SW9xJbWf/LP95/rK22HC7MX4ha9/Y1jHcfbLmKP/AKZf89K4G++KGm2EcO/Uvtk3/bSSSsJVEepSw7mFr8c4ZYY7P+zdQlm3f63y/wB3RUcyNvqrPg/w38ePGnwq1rUrPTvLs/8AlneWUsfmR+ZXffsq/D6z+L914sj8QR/vLf8A0i3j+7H5jV7tCnzHkynaJzvwf/Zu0H4g+EdavNXkupdSjvprf91WH4Di0Xwb8fNJ0vV9WTULWP8Adx3mofu67LWicHNfU9i/a68eWPhLwnDoenX0cV9qH7uTyv3knk1zvwD/AGr9D0vw7pvhfxRpM9ndWf7u3k0+OOjm5KlgjH3bn2V/wT7v5PGWl+NvFH2WOKG81Jo46+wkoq6SsbxCikWFY/jK/wDsHhPWrj/nnbyVkQfibr1+t/441LUPM/4/LyST93838VftR8Odv/CB6Dsk/dx2cNehV/hmR0Vef/Hy1+1fCXxNsjkl/wBFaucD8W5rC68ySPyZJZpK/W79i3Rv7B/Z38Jx+X5U3k+ZJFWtT+GVb3j4d/bs8B3Xhz43aleP5ktjrCx3lvWh8Jf23NU+FXwh/wCEPt9J+2XFv/x533nVqpc9Mx+0eA614j174jeKJLy4mu9V8QXn+s8r95J81fpR+xb+zJH8IPC8OuavG/8AwkF5H5knm/6y3olO0TQ+oaK5QPlj9vD4aeIPiN4X8P2+h6a+of6R+88qvP8A9k/9jjx58Kviba+KNc+yR2MazR+V537yRaXNyaFH2l4osP7U8L6tZp/y8Wskdfiz4ysJtG8UatZ3mzzo7r7PJWlFmdQ/V79lXXl1n4D+F7i3k83/AEfy6P2gv2kfD/wC8LyXl5Il5q0n+psaJfEUflzr3ijxl+0j8UPtD/6Zql5N5ccX/POOv0g/Zb/ZasfgtayapqKxy65eVUpWiB9F0VzgFfk1+3N/oHx88Rb4/wDWeXJTogcb+yX4osfBv7RnhfVNUuPKtfmj8yT/AFcdfol8Xv2yPAfw08NzXFnq1r4h1by/3djp83mV08lwPivwn8NPiZ+2b48k8QapJ9j0OT/WXMv+rjjr9EPhD8G/D/wb8Nx6Podr/wBdLn/lpJRUny6AfDv/AAUO0a8sPi9Z6g+/7LcQr5dTf8E3/iNDoPjzxF4LvJn/AOJov2i3iojrExPvD4hfEbR/hp4XvNc1m6js4bda/HP4tfEGb4q+PNQ8SXEn7y8krSlE2ODuq+8P+CZP2XRvC/j7xJql1HFD9qjt6dQxPIf2qPjRdftCfFSPT9IjupdHs/3djH/z0r6+/Yt/Zpb4X6DH4k8QR+Vrl4v7u2/54rWU/diBy/8AwU6ik/4V/wCFJP8Alp9urm/+CXe6WHxpJ5lT/wAuwPvuisjYKqah/wAeN1H/AM9IZKQH5G/D3/QP2nNJjf8A1kfiav12j/e101TCJLWZr0Ukuj32z/n1auc3Pxp8G/FXUPgt8Rta1zS44/t3k3Vn+8/1ccklfQn/AATy+C1t488Ua1408Tw/2gbOT935v/LSau6orRujOJ+k3l0TRV5ZofL/AO3h8c5Phb8NW0nS7pINY1r935v/ADzjrwX9hz4d6L4c8O6x8XvF01rBptj/AKvzK6Ie7G5B5v4s8Qat+1/+0TG2nx/6DJcLb2Mf/PO1r9WtF0uPRtLs7NP9Tawx2/8A3zRX00FE+GP+Ck3xX8qPR/h9Z4lM3+mX0deffsM/CP8A4TL4gR+JLj/j30OTzGjq4aU7mUmdJ/wUe+IreKPG3hf4b6ZJ5s1n/pl1X15+zH8NP+FX/BPw/ocn/H95P2ib/ro1ZTf7s1ienfZfpXlv7S07aX8A/HUieZ539myf6upj8Rofn3/wTx0tr/8AaS8x4/3On2NxJX6n1dWV5AFfJn/BQzTY9U8O+Cbd9n/H9JXNX0p3A+JZvhzp9/N/o8n2OGs2P4czaXrVrJceXLa+Z5kdfN+3udP1RSkWPC9hdS/EqGN40/d/vJI5Pm/d17RN+6hrmxMryPUwkfdHf6qGT935UlYtj4c0/S7q+k05fsf9oXH2i48r/lo1cJ2mp5XlQ/6uuP8AiB8UNP8Ah9aw3F5HJLYyNJH5ltWlOnzmcnY8h+PHxQ0vXvhrb6XoepJqH2yT955v7uS321872t1JFN8kkkUlfY4Gj7GmfPYmXtJXGzRfapvn/wBZXt37Jdra3XxAvvtnkfbvsvl2cX/LSSSuqrH93cmPvHqHg3wrff8ADRPiDxRq8d1p9jHDJHY3sn+rk/5Z+TTvFEuqaz+0losdvDJFDpc0P7qX935i185JXkOx9MaPLJFfSfu/9ZHXyL8ZNGtdB/aW16N/+PHUIY7yP93/AHo6rDOw56mbqnwv0vxl4X1LS7f7XLq1nH5lnJ93zK4n4Ixa94X16bT7yPyrG8aOOSvQm7hQVj37RZfNuvL/AOmf/kOtKa1k875JP9Z/y1rxKkrS5T3vadTn/HFhHqngfXrP/VTfY28uSWvlH4ZxTS+PNN/cyf6795XbhW4xOHEx5pH0p9lupbq4j8z93J/00rzfx58IJPEfi6bULPVo7OG4/wBZ5v7ysMNNxqGWJjzRPD5tsU3/AD1j3eXXafCvw5p+s+PNN0+8h/d/vJP3cn92vppHlx1lY7r4ofEHWvAfjL+z7NbSWxkhjuP3teN/LL+8qKHwmkviJtH0uHWda0+zuJJIo7j/AFklfWXwz+HNr4I0e82alc3kOoMsnlf8841rzM1q8tOx2YNXqHaWu2Ly5P8Av3JXiPiT9mnS7rXptQttS/0e4kWSO2rxsJVdGJ6FWHOa1j4N0/wlaxx6XGkX7xv3nlr5m3/rpXJ/EzQY9Z8N3l59q/5af88/3fmba9ClVbrWPOnE+e5JZLqTzP8Av3WlYy+bY+X/AMs428yOvponFE9u/Y7/AHvxMurfy/IhuLfy5K/QrS5ZJYY68XGP3ioL3i1r2jf29o8ln9s+xzVveHbD7Baw26Sfu41rjKOL+KHiPUtBsfL0uHzb64mWtLwHa3UXg2P7Z5f27955n/Aq6Imcjndaivv+ENk2TeVcSND5csVdJqFh5UdQUangmXyrWbT/AC/K+zzeZH/utXUTbZY5Nn93/WVJrH4ThfN8qPy3/wCun72qc0tVTRySl7xJpd01rfeY8lzPH5fl/vZN37ytT7V9vh/1nlUGwfavsGqQxpH5Uf8Ay0llroIbqaK6+eR4qyA6CHxRH+8jf+7+8/eVyvijVF8v/SNn7z/Vy+ZWcTskjzvWvG8lhqkcaXkl5/07R1Vtb/4heKNQkkea20Ox/wCef2VZJKxqVbHtYTCqR2Fr4DutUtfL1S6k1CaSP95LJJ/rKuaP8OdL0H94kKQTV5UqjPpaWHUDU/4Ry186OTy/3lFT7c39ijxfwH8G9H1n4qfEa81TRbTULX7dH9nj/wCWcdeSya9D+yr4u8cXlxD/AGhY6pujt44v+WcnmfdavsKEuWR8BVjeJ80+F/j74m+H02taPpGz7DqEzSSeZHXnvii6XWfEUmoRx/vJP3lb7nnRVpHqXw98Ja98eL6HQ9LmtPtEa/aLi51CRv3cdYPjLwlefDT4hTaPqN9a3l1p80f+kxSfu/mrpkrhF2P2i/ZF8OWPhz4P2cenRxxWMle31VQun8I+ikWFR3Vqt1DJHcxxyxyf6yKWgg4P/hn34bxTeYng3SPO8z/n1ruoYltY47dI/Khjj8uOOKlEgmp3lUwOfm+H3hXzJJP+Ed0zzpP+nVa2rW1jtY/Lto44I/8AnlFQXE5f4jfCrwr8VbGOz8UaLBqscf8Aq/M/1kdeN61/wT2+EuvTeYmkz6f/ANe0lBB6Z8Of2ePAfwqtY4/D/h22imj/AOXmT5pK9HoJCigAp1BQs0S1+af7f3wMbwb8Qo/GGl2Nz/Yeqf8AH55f+rjmp0nYzsZPwL/bc/4UZ8G5PC/9j3Oq6p9qk+wyfdhjjrwvUL/xl+0j48kuLf7T4h1aT/V/8861uaH6Rfso/sl2fwW0eHWNcjTUPFUi/wCt8v8A1NfTNYkxCigJBX5Rft9RR3Xx41b93PF5fl1cHYDy/wCGf7PHjD40zeXoei3Xl7vL+0yR+XHHX3B8If8AgnZ4f8OXFrqHi+ZNamt28yOxj+WOjnKPr7S9GsdBsY7OwtUs7WP/AFcUVWaDY8Y/am/Z9tfj74J+zp+61yz/AHlnLX5Z6poPij4LePPnjufD3iLT5v3da0pWOeQfEz4q+OPjTfWsnivXJ9Qhj/494v8AVx1ofDn4N+JPHl9DZ2Gk3d3NJJ/yzj/d+XW3MZ8xwvjbwbfeDfF2paXceXLJZyf8svmr0j4G+A/id8RtFvvDfg+OeLS7yby7qX/Vx/8AbSrK5j9Bf2dP2LfD/wAIPL1jV/L17xF/z0lj/d29fSFcM53KPkz/AIKRWsl18IdFkSP/AFerV5f/AMEw7/8A4n3jaPzP+PxY5K1j/DA/QmnVkA2pP+WP/bOkyz8ftLlbRv2sNLj8mOW1j8UeXJJ/vTV+vn/PStKplEJKjki821kj/wBlqgo/DP4gWv2D4ha5b/Y/332ySOP93/ekr9Sv2HdB/sb4I28n/LS4uJK7Kr90g+ia5D4mfFDwz8JdBj1jxRqSaVYySeXHLJ/erhiWflf+2Z8brH4x/GT7Ro8z3fh+ztVj8yjwPpfxG/aC8I6b8P8Aw/pM9n4Vt7qSS4l8vy45P9qaSuu9omEtT9HP2c/2btB+AXhuOO3jSXWpI/8ASL2vXL6/jsLWS4f/AFccbSSf8Brkl78hn41+PPFsnxa+OnijXHk/d3F5J5f/AFzWTy4a+ltH/aB0f9kn4QyaHDZx6h8QLj95cRW0n7uOT+GSSvQ5DKKtI4/9jP4N+KPjX8VJPiR4juvtlvHcfaJr2X5vtE1fp3XDVd9DpiFfPH7c3iNvDn7OuvbP9dqDR2dRD4ijwv8A4JpfD/yde8ZeJH/1cax6fbyV96fZvarm/eAqyfuq+Wf26ovN0vwbI/8AyzuppK5MTrTkXT+I+OYZW/jj/eVJ/rZo/wB5XycXaVz2Ymb9q+y/EKxt7eSSzmj/AOPivTP+WVRI3pkOoSyRWsdZs0sn/PSsTqLkl15tr/q6+c/2tNUj+3eHdHSPzfla4krty+PPWPOxkuSmeAyVXm/1f+rr7aTueGOh/e/6uvbv2bfCV1/wsDSdcvLWeLS445vLufL/AHcklTVnyUyD079qaW61TR/Auh+Z/pV5qnmV7NdbfL024eOP/R4445JPLr5iquWJ0RqXkdJY3/lSRyJXgP7ZFrHpfjLwn4w+fybiz+zyeVHUYafLUKscDa+PNNimhvLObyppK53XpdSsP7Wt0mk/eK1xHJbR/vK9jlvqc17Rsea+Cfi1r2jaxZxvqT/ZZP8AWf8ATPdXvnxe+L914I/s240uxtryO8aSPzJawxEb1LnoYaXKbHwz8b3XjLwTHqj+XFcSXDW9XNasLOwm8uztY7Py/wB5J/vV5Uk4Sud0fhKP7yX95/00/wCelEkq/aoZP9VNHUSklIrk5j5T8ZaXDo3ijUrfy/Nt45mjjr6Q8D/CXQ9ButN1iz+1/aI4Y7iP95+7+avXxNXlo2PLoUbVLh8UPhBN8QdUs9Qs75LO4j8u3kilj/hWvnfxl4SuvBvii80O8m+2SW9a4GspRsXXpcsiPQdLkv7qORJPIuLdlk/e/wDLSvt7S7rzdLsY02edHDH5lcGax5uVm2B93QJP3U1Zeof8tPLj/wCuleFT0lc7amsbHLzS+V5m+P8A1leA/FrXr6LWpPDdxb/ZoY5lkj/3a93A/wAQ8mrH3TzeS1WtTwvo02vapHZ6d+9kr6A5T3L9mnS9QsPj9Y/bP3UMnmeZ5dff1r+6k8t68ev70g2NbylrYhuv3fl1yRjc0seV+JL/AFLXta/1kHl/LHHH/u12Gl68tpH/AKZ+6muLpY4/+Wcf+rraOhjEvXVrDdQ+W8f7nzPMjp11F+5/6Z1RQ2xuprC6uNn/AB6yVqaX9ql0uT935X75o/8AWVZNzldQl82aSPy/NmqjNuioOY1vCNr/AGz532j/AFcf+rkq1p9h5XnRp9pl8ug3pm9fWq38MNwnlxR+X5laWn+LdLtYP9Ikklht6xnodFCDqHm+veI4devvL0uOT943/LP/AFdQx+CNS1mTzNXknvJI5JP3Usn7vy68ivWUZH1+GwrUTsNB8EWOlxybI/8AlpXUWulr+7/d15/tj26FP2ZpQ+XU0NrUGhHNF+8/1dFYcxZ+fv8Awsv4ifs52uteINR0We8/tyOPy5bvdJ5bNXiuj2GqftGePPseua19jmvPMk/6Z199QjzSPz3Ez5Inpn7Pvwv0vw58VPFGh6vZ/wBoeINPXzLOWSOPy5IW/wCWlXvhf+z7oPxV8beMNU1Gx821jvvLj/ebZK9SFK540qlpGPo+vaD+zd8cvHGn6X/qZLXy4/Lk/dxyVuQ/AfS/FFreeIPGepSahdaxH9os7nS/9TRFXCUrH6bfsy+F28B/AvwnobzfbJLOzjjklr1OpqHXT+EKKRYUUEBRSiQJzUlMA82pI6C4i1NQQQ0UEhTaAHU2godUV9a2uqQyW9xDHeQyf6yOWPzI6iLsB4HrH7CnwZ1nXv7Ql8L+V/0yiuJPs1emfD/4LeDfhVa/Z/C+g2ulVpcDtampExCigJBXMa98MfCPiia6k1fw/Y30l0vl3EkkdK9gNDQfDml+EtLj0/RtPttPsbf/AFccVaXze1HKUJRWhsFc142+GPhP4jQ+X4j0O11X/rrHXPGVjnkc3oP7NPwz8OeZ9j8G6ZF5n/PWPdXcaXoNjo0Pl6fYwafD/wA8oo/LrbmDkPn3x5+wp4D+I3jbUvEF5NqEX2z95JFbV6x8Ifgj4V+COlzaf4XtZIobhvMkkkk3eZJV+0bJ5T0GisuW5R8tf8FEpVi+Cdjv8vzP7Sjr5v8A+CbOvR6X8YtS0Py/3l5ptdK/hgfpvRWQDadQUfjR4olh/wCGrvM8zzfL8VQ1+ykX+riq6pnEWljqCj8Yf2mtB/sH4+eLLd4/3MepNJHHX6nfs0xf8WH8GyPH/rNNjkq6svdIPUa5b4jfDnw/8VfDcnh/xLpqahpckiyeV/tLWUSz8jdU+H2j2vx+k8PpHJFo8evfZ44/9Z8qyV+w2g6DY+HNPjs9OtY7O1j/AOWcVb1HaJhHU1a8q/aI8ZWug/ATxtrlvdQeXDpsixyxyVzrSQz8Y7XVNQi+5cT+ZI37uvTvhD8CvF3xh8TWPkabdX32iSPzNQnj8uOOOvR5hSVpH7DeA/BGl/DnwtY6DpFrHbafZx1ufal8zy/Mj8ySvNeprEnr4i/4KYeK/K0Pwj4Zi/115cNdVUPjKPWf2FvCk3hL4A6K14vl3Wpbryvoypm/eAi8qvkX9uq6UzeF7P8A2ZJGrCrrTkXT+I+D/jp4ouvhzpem3GkeX9qkvJI5I7n95Unwr+ILfEHQbq8ex/s+a3m8uT/nnJXzkqdo3OyNU7aHwvDLqn9oW/8ArP8Alp+7rqrXzPssdccj1KZm6pft5nl/88/3dQwy1idRajl/6Z/ua+f/AI/fCrxR4t8UXmuadHbahb29v/yz+WSPbXbl8uSsedjI89M+dZv9d/zympvlSV9lF3PDDzfKtZJK+hPBPx98N6J8L/sdvdXMGuafprR28fl/8tqjEx5qZB5TD8VdcuvEmg6xrkn9q3GlyL/x819Af8Nh6Xqn2eOTQ7qzurj/AKabq4qtFTiKS5JHtWg/Evw/4jtf+JXq1tqF1b/u5Kwf2ltGm8efs+3UlhDJ9u0eZbyuCNHlqFe0Pjnw35l1pce+4/i/5Z102qRf2z4dvo7eaeOS3X935X+sr24RvTuc1SVpWPCfNkiuvL/1U3nLXv3g3Rpvjn4Xm0+8vHiuNHm+0eb5e7zPlrGrG8OY7Iy5S1a+I5PgPoMOnyQ/25HqE0kkf/LPy6bovx4j17XrO3vNNttPtZP3fm1xSo88bnTGr7p3kOqWctr9s+1WkVvH/rPNkrPuvFvh2w8uS81a18v/AKZ/NXBHBSnL+v8AM39vymba+EvBvjzVLzXJZP7Qh1D93H95fmp198eLXwlrUnhd9B/d6fJ9nk/ef6uuqrT542Ip1LansX7uXy7iOSSWGRfMj/6Z7q8x8ZfAy18Za9daw+tPFNcfvJI/LrxsLWcJWPQn78jmbX4aSfDn/SLeZ/3knlxyeX/Ete4aDfzfZbOS4/df8tJK78VPmpxZyUPdqWPE/F3jLxdo3xikk8y7n8P280fmfu9vmQtXrl9LH/x8JJ/rP9XWFSklG6D2t5WON1i/XS/MuLj915f+s8r958tfPfxK1nS/EesfaNLmklht90f2mX/WSV2YH+Ic1WfunCyS/wB+HzY67D4a39rpfijy7yTyo7iGS38yT/lnXvnKe8fCGJZfip4fk8z/AFk3l/6yvsL7e0WqWtvFJ+7kmrx6/uyHU0LGn+I4dZ8ealb/ACeXpcfl/afu/NWta+KPt/hOS8STyrqTzI/M/wCmlRSVzm9oc3a6XJ5flvJ5v/PST/npXUQ6XNLrVrI8f+j2cayRx/8ATSplobRL195lrdU6xik1SSSNKoomvopLCaGPzP3clc3feI2tdUm09I/30f8Ay0jkqzC4TeZUlrYSX80kcf8AyzoMzctf+JXCtvZ74vL/APIkdOk15dL/AHl5/wAetBvTMHVPi/Z/vLPSIf8AhIb7/V+V93y2qS18Oalr01xcXnlxRySfvIoq82vVsfVYHDpHoGg+HIbWGP8Adp+7ra+wLF+8SOvnqjc5H1VKyiOjtVq55VTyG17hVyOtTMhkiorDlLPn/wDaCsNH1n4N30b/AGW8hjt/9Fj8yvjHwHf6b4cuvCeqfY/3P763kvv93/nn/wBNK/SaXun5rXl7tjm/jJ8VbW/+K0nijwffeVrFnJH5d3XUaP4c8dfC/wAL6b8UP7en+z65/wAfEVp80lv5n/LRq1j70rnF8MbHl/gfw5/wtr4oXmn6jr1zZ6lefvI7u5/5aN/dr1q+/tr4Lap4b8D2fiCS58P6pMtv9muY/wDV+Y3l0UkFTU/ZLwjYLpfhfSbPy/8AV261u1UviN4BXzl+1N+1o37OetaLZp4d/tyHUKIw94yZ43/w84/6kGT/ALZ3VEf/AAUd1S/8v7H4H/7+3FerGhY5Pbh/w8E16Wb/AJFvyqozftzeKtVuo49P+zafDVeyRHtDe0v9q/Xr+1/4nGtR2cn+s+020dbH/DVUctjNGnib7ZdeX+7o9kg9sZOi/taa5Fa/6Zq3+lf8tP3daml/tX3kV1JH/bXm+Z/z1j8uj6uX7Y6ab9tfQ/8AV+dJ5n/TWNljrpNP/bI8L3Wl/wCkSSWd9XP7E09qa0f7X3gf7DHJJdfvqdpf7XPgO6vvs9xefZo/+ektZ+wL9qdp/wALz8G+Z/yHrWr1j8WvBuqbvsfiTTJfL/6aVj7IPamta+MtD1T/AI89WtZf+2lTR6zp8s3l/wBpQeZ/zz86j2RXMTTXUP7v99H+8ptjqlrfzTR280cs1vJ5cnl1hKmbxZdqxTMpBRQEQpPNoKI5KI6jmJJaKOcCGip5jo5gorTmIJqKnmIIaXymqwJahqwPNvj98EbX48eDY9DuL6fTpLeb7RHLHXk/wN/YXs/g38So/GEXiR7yaONo/K8ui5J9T06oAKi82OL95Vgfiz4ov1tf2jJrj/lj/wAJJ/6DdV+0lr/q46ubAloqAPx8/bYl+1ftDeKJK/Tb9m26hv8A4D+BZLeTzYZNHt61qx90D02ljrID8if2hrC6+FX7TWrTXC/ubfWI9Qj/AOmi+Z5lfrRot/HrOl2N4jfu7iFZI/8AgS1rU96JB8+/tnftGWPwe+H99pNpMk/irWIZLezir80fC/jLx9/wrnxR4ffz9Q8H3G37Z/FHHJ/eqYw5YkFz9nPWdL8JfGjwfeavD9s02O8jjk/4F+7r9qtL02x0aHy7OGCzj/6Zx0VZXLJ9Qv7bS7Nrq6ljit44/Mklkr8pv2lv2m/EHi343WfiTwpqz2eh6PIv2Hyv+Wnl/eaihHm1HJn6N/AL4qw/GT4V6H4mjaOS4uIdt1HH/wAs5q+Av2xvG7fFz9oKTS7O6/d6PJHo9r/10aT95UU42kTLWJ+lXgvw5D4S8J6Po8P+rsbWO3rerI2CvyU/4Kr+MbkfH/w3pdhfPZvp+jydKzm7RHH4j528N+CPEnxz0Ga8vPEDyyWd1+7+0/6uvUPg/wCDbrwb4T/s+8mj+0SXk0n7qvBxc/dsdlCmepQ+XFDHHHU3+5/rK8Y9sxdU/dTSfvK5/wAN+N7PxHrX2PzPKmj/AHcdOMecnn5Tso/9d88lYetSrYaXeXiRv+7hb91Sj8RrU+E8Z/Z90G1v/ButR6pY+bHeak3meZHXmPhf4bX3xB8XeJNP06SPT5tPaT93JHX1dKukfN1KDMvxJ8NPEnhLy5NR0m58uP8A5a/8s65f93L+8/2a9ilVU42OOrB81xldT4T8JTeI9LkvPtn2O4jk/d/u/wC7WXKZTnyRPQvhz4Sm8OX2pSXkf7m4/wBXJ/z0kr6E+Desw3/hvxlpd5ePFDJb+XXDE5ef95c+VbWwXS/tVu8f/LSTy/3lbml+d9uj2f6v/lp5kld0SpaxPOfiVpf9l695kWyKG8k+0RxxVysd1NF5n765i/65SbaI6HXCV4kzX95qUcMdxdT3Pl/89JvMrrvhza/ao7qN40/56RyyQ1QVNY2Od17dFr11v/1m7zKq2thJL5n2ezoCUvdse6fBHXrXQdFk0/VJJNP/AH0nlyyR/u4685+KksN18QtSkt7pLz7R5dx9pjk8z95XJGl+8uVGV4n0t4d+I3h3WY9Nt/7cjvNUkjX93Lu/dtXUebHL5mz/AFkcnl18li8O4VLnuUJXp2MHxxdXV/4Ttbf/AF8lvN5lc34o8R3Wl3UMmnSeVD+8/wCWddWGjfU56jvoYcPjLWNZ86OXy/8AV+ZJ5sdaVj4ysdGtZJNc1D7H/rPLr1JLnjynnxly6nG+LPjJoMtjdW9nG8txeQyRyV4DH5MVddCl7OnYiWtS5H80vl3Hlp5e7/lpUMn73zN9blHpHwD1RbD4maLG8kkX77/lnX3pY6pNf311b/vPMs445PNrlqxMap0HhHwl9g+1ahcSSSzahceZ5Vak1gtr/of/ACzt5vM8qsyInVeEYoZfOuK6SGKPzv8AlnXPV+I7qXwmXrVqv7yRP+WcdO0G1+ywySR/vZKuJhIy9UupLqP55vNjjasfyv8ASpP3f+sk/wBZQYSNb7BJLa+ZL+6/eUafK3mfZ/8AVVZnGNyrqHje1sI9Ut/MeL7P/wA9I/3dcjHLqHjeH7Pb+Z5O3y7i+u4648S+WJ7+X0XKVzuPBvgix0u1tdkPlSRx16Fp9h/0z/1dfP1Jc59zTNyGKneVXKbkfy+1OoLHQxVbqwIJKKgD8y9P/Zu17xH8IZPEnijXruKSO3aSOykk/dxxrXF33wlh8R+F/DOn2epfY/MtZLySSP8AeRyTLX6LS94/Ka8vesN+HNh4d0HXofB95ov9oaxqnmW/2mL5vM3fw/NXVfGD9oyPQfhzJ8L9I03ypLOH+y7y5rWXuRuL4pWD4Q/CrwDq3gO41T+0vK1j7DJJ9p+0fvreaOud+Deq6p8T/wBoz4c6Pq91JqElvrEflyVpSQbn7mQxR2sMdv8A8818upPLqZfEbwFr5A/bi+AXi74yap4buPDWk/2hHb7v3vmURn7xkz530X9hT4uSyf8AIJtIv+mtzeV3Gi/8E8fHn8d1pmn/APbSvRliLHJ7A7CH/gn3r11/x+eKNMs/+va3rorX/gn3D5MP2jxh/q18v93b1yfWh+yNKx/YF0u1m/5HDU4v+mcca1a/4YF8LxfvP+Es1qj60a/Vi1N+wf4Zl+/4o1eo/wDhgrwv+72eJtX/AHdafXCfq4f8MFeG5fM3+LNXqOP9gDw3FJ5ieKNXqfrIeyG/8O+/DsXmbPFmr1DffsC2t/8Af8aXf/bS1Wl9YL9kZMn7AGpRf8e/jK2/7a2Ncrqn/BPHxN+7+z+LNM/66/Yar2oeyOduv2Bfilpckdxp2uaRPcf89PtDQ1k6p+yr8frDzJEm826/56R6lUe1K5Tk9a+C37RFrDJvh8Qy/wDXO8r7C/YT8B614N+D8l54ljuotc1S6kuLiK5/1lOTLiz6RornFImpPNoCJH/raSgozL7xRo+l3X2e81K0s7r/AJ5yyRrWfN8RvC9r9/xFpkX/AG8LT5CSjJ8Z/A8Xl7/Fmk/vP+nqmyfGnwLFN5f/AAlGmf8AfytPZeQE3/C2vBv2X7R/wk2n+T/z08ynQ/F/wbLH8niTTJP+2lP2L7FcxJH8UPCcv3PEGn/9/Kmj+Inhv/Wf8JBY+T/12qOQsvQ+LdHlh+TVrWWH/rotWrXWdNupPLt761l/7aVHIQWvtEf/AD0Snf8ALHzKAHebUfm1YEnm0tZ3JIaXzaYB5rU4f8s6sD4n+LX/AAT5vPG/xM1jxR4f1yx0qO8vPtn2aSGvs6xia1tbe3f/AFkcccclTNgXaKoD84vj5+xp8SPid8aPFGraXa232G8uP3csk1fZ37OPw+1r4X/CHQ/DfiDy/t2nxtH+6k8z93WtWa5QPUaKyA+Z/wBrz9lpfjvo8OqaR5cHizT/APvm6WvnaH9o74zfs+/DWHwrf+C7vzrPdZ2us6hHu8ta0p+9GxB8r69qmvfFXxZJqmr3V3rOuXknl+ZJX6VfBv8AZOtfC/7P+taDeQp/wkHiKz/0yrqy5Y6EH5l+MvC+ofD7xFJpeqRvFcW837zzP7y1+sHw9/ae8F3/AMG/D/izWNcs9O8yxjkuIpZP3kbUShcs+Nf2pv2zdQ+MkknhvwnM+leFf+Wlz/y0vK+a/Ks7Wx+T/Vxr5fmV0048lO5EmfqH+wD4Q/4Rr4BWt08XlTatcSXlHjb9jDQfEfxMh8Yabff2VP8AbI9QuLb/AKaV5/PaRUdYn0pTKg2CvyB/bQ0GT4v/ALXnjaz86OD+x47W3jkrlru0Rx+I4f4c69oPw+0//hD7jXEs9cjmk86PzP3e6vWNLtYZf9I/1teDi4+9Y9SgzWj2/u/3lF1L9lryj0zJupY5YZI3/dSSVzdj8PmsNUs7zS5v+2cv7uojPkMeXnO08r9zJG/+sp00X7uPfHHLNVx+I6anwmb/AGNH5dvGlnHFJH/q/KrjfDvwl0HwRfX2sWdxJPdXjfN5tdsZtHJOKOs8pbry/tEfm/8AXSOvNfHnw08F6pN9se1k0qOTzLeS50v/AJZzVvSxTjKxhVw65bnnP/DMmpXU0kmnXiS2PmfuZLn/AFkldZ4R+DfibS9Bk32r+d9qb/ln/dr1PrB5FeheI77B9g8z935U3/PKT935dZ8d1JYTfaK6InicvUyfjJ4c1jwlrFrqDwx/ZdQhW4t/L/55tXO6XLJL5Nw/+rruibx1idB4k8Of294ds40hg8yz8zy5ZY9skkdeO69pcMXlyPH5XzeXJFFRLQmhK8TtNF+H2j3UNnI8f7mSHzP3clTTeHLXwlperXmnr5V1HDVB7W8rFfwnFa+I9P8AtlxGnnRr5flf89NtddNL+8j2f66P/VyxR7aAlL3rHM+PN0vh2bzP7y15r9lkitY5PLjqo9zek7xNzwnFfaD4k03UPsPm28d0sn7z/V19pWv2W/kmk06S2ltY28zzIvLk+9XhY6KlqexhJX0MvWovNtZo3/5aQzRyf7tUfAdra6z4D0e8fzJZo4Wt5PM/2a8eM/Z07nb7O9SxsSeF9Huv+XOvJf2jPBumxeDbG4SPyr63uv8Ann/yzrTDYjmrcpnVwyjTufNs0vmwyR+X/rGqr5XleXvjr6zfQ8eOuofN+7/fSfu6dfWE1rN5ksafvKyKO0+A9rHL8UPDcnlyf8hKOOOOvujwbL5uqXkaeZFNHdeXJbeX+88ta5asjGqe7WMX2X92kkksNYuvaWth/pH2iSf93+8rMiJveE/3ul+Z5ckXmV0XmxxQx/vK56vxHdS+Ew/El/HF/o/z/vP3lUft/m2vlpsq4mEirNF+5k2R07S7BopI5EkkoMJG18svl/71c/4uv4dLtb6RPLimjhby/wDrpVnTSjc8r+HvgPVPFGqQ6h4gvJNcm/6a/wCrjr6I8N+HLXS7WS3t40i8uvn8TWc4n3OX0FGNzprW18rzKuR/uq8u/KelTF/5ZUn+tqTcnpJov31BY6OiSrAb+8loqAPynm+NPxYtfsPgu8m/1n+h/vI/3ki7qh/ac8OXXw0vvC8cWrSeTJDJH9mi/dyRt/z0r9IjK8T8tq6yucH8JdU17S/FljqmkR+b4q8zzIb65/efZ67Dw78Ptc8R/HiG38UQ2nma5JJqEn/POStjE9e/aM+F/g2w+FdvqGkf2VpGueZ5cMdpcbZNQrrP2D/2c7WL4jeEfGVxJ5t9HDJceVVxj71xfZsfqjSc1idMBafQWMp9AEfl1JQAU+gBPKpaACigB1FABS+VQQN8ulrIyCitQJqhoAKKCgooA/K79uC1mn/aM1KO4kk/5Z+XH5leM6X4S1KW6kjeH/RZFk8uXzP7tenRmlE56krnUafoM11ax26Q237v/VyRXUfmV22lyw+HIZo7jTdMl8z/AJ6yf6uu32qPP5C1p/iixtfMs3jtP3n7yOWK6ra/tS1/1kkNrLdRr/yzuqXtEacpasb+xl1T7R9jSKGRfL8uO4/ebq6SxtViuoY7exj+z+Z+8/eLS5jblLWoRR2t1H9s0m5+w/8APSKasG6la6k/0Oz1CKPy/Mj8v/WUcw7HXaf4yjijj/4mWoRX3l/6v95Wl/wsa8sPLjt9au/Jk/1nm7m+as+UXMa2g/F/xJFa+XF4wee6/wCecvzeXW5a/tBeNLDy982n3n/PT93WcqFzXmOkh/aH8TWt1H9o0O0lj2/89NtdJY/tGaXL/wAfmm3VnJWMsLcftDYj/aH8DyzeXeak+nyf88rmOus0vxloOrSRx2etWMsn/PKK4WuOVFl05G3T45axnTZrzIPNpKrmYE1FWSFFABRUAFRXUUN/C1vcRxyxyf8ALKSgDmdP+Evg3S9Uj1Sz8N6fbX3/AD1ijrsKoDxP48fsq+Efjd5lxcx/2frn/P8AR1+e/wAZ/wBjXxh8FIZtQmhTVfDdv++k1K2+7HW1GpYzseGx6X5Xl75k/d16x8C/gP4q+KniLTY9O0V5dDjvP9Ilk/dx10ymuUix+vFra6f4K8Mw26LHp+m6bb/9s41WqvhLx/4b8b2v2jQ9YsdVh/6dpN1ec485udBR5VAB/wAtq/JP4lWEY/aC8deII5vMutU1iaP/AK515eOfunZhlc+Xb7wRrF/8VJI7zTbmKG41JfMl8v8Ad/6yvob4gfEb/hV/he1vPsP2zy7j7HHbeZ5cdefOPtDqpy9nGx3Gl3X9s6LpuqJG9n9st47iOKX/AFkatVP7Va3UPmedbf8AfzdXlexcqkmehzpHmf2+b/hYX8cUMjeX5lexf6qPy6zqxtoLDO46Hb5cf2j/AFdcnr3je10G+hjvN/7z95+7/u1VKAqs1CNjzv8A4TzVLDXrq406Z7OxuJvM/e/NXpml6pNf+XJ9h8r/AJ53P/LP5q9CdO0bnFhqnNoTf6ry5PM/1dZ+tXUPhfwv5iRxy/6R/rJKyp/Ea1A8D69a6zHdb5JPO3eZXTR3Xlfck/feZSlHlkF+eJ5P8VNUXS9Uh3xwedcR+ZHLaf8As1cvDYLqmlx6hb3UflybvMjk/wCWde7QfNTPm6tNykZ/xA8UR+N/CNnpf9pebNo8jR/vI/8AWRtXI6Pa6lFD5lvDJL/yzkrv5lAx5HEddRaxa6p/pk13FayfvP3VTePPDlrqmj2cnkyWf7zy5JK2vzanJflqFzRbVbCxhs0k/cxx07xFax3Wg3Vv537y4/1dUWYvhfQY/DlrcRuyXl1J+783y/8AVx1rSfvf3b1cYWiWN/56R+Ynl1h+PIpJdBk/efuY5Fkkqb+7YcfiuXPAcq3Xg24jeOPy47W4jre/Zl1ma1k8TW/k/wCshjuJJa4cZHmo2PQwb5a1z3TWLpotLmt/3f7yGuN8E699l8eat4T/AOXWOx+2W9fOUlzxke9LSR30nkxfvHkk8mSvBfjJ8X/m8ReG7yx82OSH7PHJHJtp5fFyqEYz3Y2PnuT975cdtHHTfN8qvrzxJM6zwP8AC++8UeXcXH/Ev03/AJ6/8tJK2PiNo0dhHp9nZwx+XH+7jkrk5rRCEeeRc+D/AISutG+JnhP99++/tK3r7e0Hda69JI8fmzedN5lcMiasD2DT5Y5Y49lOupf9ZJTJNjS/+PWqPii6W1tY43k/c1idEvhOP/fapdeX5zy/+O+XUPiTxlpvw+0eGTUZHlm8z93F/wAtK6DkudBa3S3UcNx8/kyKslEMU3+rST9zG37ulYyirnM+NvFEmg6LJ9juPNm3fvLGKP8AeVl+G/DmqeKJo7zV5vNkuP8All/zzjrixdRRjY+jy7DuWp7ZoulrYeX5UaV0EdfMH2VOmTebUkcvmw1BtEkoSg6CaSkoAljp3lLLVkBJRQB+ev7SVra6X4b8P+IE1KPT77S7r/Q/4vM3V80+LPGWvfHjxlHHeR/uY/8Anl/yz2/L51fotKF4n5fLWNwh8JeMvhLdab4gt4U/smT/AFlzF80f/bSvZNU+FXiz4l/C+6+IlxeXOn/2fazRxxxfL5irWxkd58B/gt8OfEfwrt7i4jg1Wa8WSO8kuZP3kbV6N/wTF0vULX4lfESz8ySXR9L8uO1q4y924vtWP0jpPLrE6YElFBYUUAFFAD6KACnUAFFABRQAVNQQFFZGQVDWoE1FAENFBRNUNAHk3jz9lrwH8S/F3/CSa5ZveX3y/wDLSnWv7KvwttfueD9PqoztEz5Lmxa/Af4e2H/Ht4R0j7v/AD61a/4U34D8v/kT9F8z/rxjp+1ZHIEnwb8B3Uflv4P0X/wBjqaH4S+CYvueF9Igh/6946ftGPlIZPgf4Bl/5lHTP+/NQf8ACjPAfl+X/wAI5aU/bM05UUr79nPwDqn7u40X93/zz8yof+GafA8UPl29rdxQ/wDLPy7iSj27J5TDuv2RvBcv7xLrWopP+ev26qsP7KFnYeZHZ+LNT8uRv9XcxxzVp7dmXIYOsfsl65LdfbLPxRaSzeX5cfm2MdYt1+zT42tbWTZJpGqyf9tIa6I4m4cpxuvfCD4kaXdQ3CeG57ySNf8Al0vvMrJutG8QaDayXl5Hq8U1w3lyW0lnXZGrc57GHp/jKG/mks9UvLS8j/563PyyVD9qtYvOjvNFu/3c3mW9zbf6yOnKKCEja0XxldaDDH/Z3jDUIvMbzPK+1Sfu67jQfjN8SP7Fk1TRta0/xVa27fvI5dtYVKSNOZl61/bX1SKGOO88PwXl9H/rIopttUfBX7cOrfEH44+GfB+l+G/s9jefu7wyVg8Og9ofYtFcR1hS+bQBJ5tLUAQ0UATUVYDqqahYWuqWslneQx3lvJ/rIpKzirBY89/4Zp+F/wBl8v8A4Q/TPveZ/q677Q9B03w5p8On6bZpp9rH92K2j205TfKTYvXllDqVrNb3CpLbzL5ckctfGfxA/YIvNG8Sf8JJ8JfEU/hm68zzPsXnN5dOnLlKPpH4IxeMrf4cabb+PFj/AOEgt/3ckkXzeZXo9ICteyfZLSaf/nmsklfktfX/APamsalef637ZeXFxJXj45+6ejg1c5f4ha9N4X8G6leJ+6vvljj/AN5qx/iV8L7rx54DsZHuvKureFbyT/pozV51OdjSpG8rHWaX4802w0Gz0f8AeRXH2WOOPzP+ea15Dp9/dWF1H9j3xSRx+XXo0KKlzM86piGjuPBtheazrEOqajG8trHJJ+8kr1SaWvCxMbVLHs4OVzy2++IOoS69NJbzfZrXd/qpP9ZXP+ItZvNZm8y4rrpQPJq13KVjL+Kn/Eh+EseoW919jvryaGvRPhDrOqeKPhzpOqajeebcSfu5P4fu10V3ajc6MMuSpY67zfK8uuV+K2l3WqaLH9jh82SPzJLj95XDT+I7ahyPwz8R6b4ch1K41S6Sz8v/AFcdHi79ozR4po/7DhutRkj/AOWlz+7jrrlHmkZ03yxPJde8R61431D7ZLY/vP8AV/u6ktfBusXU0MbySf8AXKOu2m+Smckad5HaaX8KprWOO3SGSK48z95Xp3h3Qf7L/wCJekNtL5lck67kb/V1M4f4jaDJa+JJrh5k/efvI4v+edYcksMui/2fcSJ/pH7vzZZP3e7+GvboS5qdz5uvT5ahz9rdSWs11bvHH5lu37yKr0m668vfXWYkPl0eV++/55Vcp2iWN1TVP7GsZrhIUvPL/wCWVcza+KG8W+dZ3EKQWscPmeX5n7v5awv71gj8Nw1DxbH4Suo49I+y3lrcR+ZJ+8krpvAd1a+HNUtbzQ7zyr68X95FFJWlWPNGx20vdlc+hrqL7Vp82/Z+8h/dy/8APOvF/hT/AGl4t+KEeuedbQf2Xut7j955fmRtXy+GXLGR9FV0kdddfHPwba3UlveTXf7uTy/+PX+Ja8J+NXjTQfHniSzvPD8lz53k/Z5JPL8nzNtelg6ChUODE1eeVjzv95/47+8r07R/C+m2ul2d5/rZpIfM/wBX/er1jy5M7y1l83S4ZH2ReX+7rmfHH/ILjkSPzfLmrkqQtEdCfLIk8By+V428L3jyf6vUrfzP+/lfel9oMOl315Hbx+R83/PSuGRtVkdlYyxy6fDsk83y/wB3Vj/nnTMTS0+683929Y/jiL93D+7rE6JfCYPhuWGL7VI8iQRx+X/rf3f7uvJfNXxl42tZLy1jvI7i8/dyx/8ALONa6DguevWN1dWscmn3H+pj/wBX/wBM65HWvihJ4chjuLyxnlsdv+kSf8+7L/yzrSxpSVzl/A8WsfEGb+2LzfZ2sfmfY7H/ANmr6O0HRlsNPj2R/wANfKYuo5SsfoGBgoU7nQWsXlVbrhPYgx/lVNDFUExG/wCuq9DFQdAeVUckXm0AH2X61PVkD/NooA/G/wCHusyeA9Uj/wCE/hu/stxH/ov2mPzo4/8AppXN32vQ3/xGhvPD/l6fHJJ9njl/56bv4mr9MqO8bH5Tbm1Pqi68JXml2Ok/DPVL7+1bXVLfzP8AnnN/ebbXJ3Xgjx5oOqX3w38N+PNQ+wx2fmfYfLVaqLJt7pxfwR+F9n4o8Ua14P1z9xq0fmSf6zb5kdfpF+wL8KrP4aeE/E32O+/tD7ZfUU9ImktZH1fT6xNwooLCigB9FABRQAU6gAqagApPKoAWigCGiggmpJKCBaKCRPKpaAIpKSgAooAKKAG0UAP8qkoAKKACljoAlooAhpZIvN+/+9qyjB1r4feH9Zhkj1HQ9PufMj8v97CtcDrX7LXgW/hkjtLW60rzP+gfcSR1XtCTy26/YUutG8yTw346vYv+meqRrNXmeufsZfFDSdUuNQ07/hHtQ8yGT/j2uJIa6/rCI5DxvXv2X/ito119suPCeoed/wA9NPk86vR/2HPhNr1p+0Fda5ruk6npP2PTZP3eoR1dWsnEx9n7x+jleHftna9qHhL9nrxNqGl3j6fffLHHJFXmr4jeR+cdj+0Z8TLCOOO38cav/wBM/MkrrNB/aW+LVhN+88fXPk/9c469OVPnOWUz1Dw7+0x8aorpd+safc/e2x6lbrW9/wANm/FqLyf+JLpknzVP1cz+sHRQ/t0+JLC1hk1fwSkX/LOT99XcaX+2vpOqff8ADeof6vzP3ci0Swtzb2502l/th/De/uobO41K60+6kXzPLu7evRvDvxV8I+KPMj0vxJp15NH/AMs/tEfmVxzoOJr7U6qGWOX94jebT656kSqYU6nKRdyamUwH1LQByvxM1SPRvh/4kvN3l/Z9NuJP/IdflLossP2Wx+zyf8sY68fHfZPTwXwlrxd4S03xboP2PUVklj3LcR+V/eWrXiiWO18B6tH5PlQxw/u4q8qLsdkoe6eKyXX2q1hk/wBVNGv7v93trLmiklj+TzPMkr3qCPlalS0j2LwHf3V/4X0/ZY+V5cP7z/pnW55Xm/62vmMS74iTPpKD/cnmuoWGoX91NceTJ5e6TzJY462vCejQ6pDeSXP/ABMI/M8v/V1vB3PLlG0ib4lfDSH4h+F49L+3WulfZ5lkj/drHHuWOuZ0vxv4Z+F/g3T9HfVrW8vrNZP3VtJ5nmSV3RhzRsb8xh3X7Tc37z+yNDSKbzP3csn+srz3xF4j8UePPJk1G+nlhj/1cf3fvUowsaSqXLVr8Krq6m+fzPJ/dyf6uumtfhz9gh8x40/1n+qkpAdlo/gizsIZJPL8qTb+78uOtiPS/K/0jzP9Irgqy55XO2lDlNrT7CT93+7Tzq2rWX7L/wBdK5j0Dm/F3hex8R6pNqDw+VNcQ/8ALP8A56LXhfxQ0vXrDxdY6fp8k9tayRx+XLJH5n7zdX0WEqpHg46hc5fS9eute8ZTSaj+68xmjklj+WOTy/lrsv3f/XX921exCXMeBONiGaL7L+7SnQf62P8A3q1sZylc5PWtUvNL8ZQ2/mSS2skiyeV/z0jauy17Rof7L1CS3h/feS0dEYhJnjM0UcXlyfJXQfDXy4vHmi/9NLqol8J30/iPsiaK4i/d/wCt8tf+/leN/AO/sbD4oeLNDuJpIo7j/V185hff5ke5VnySizyP4qaX/Y3jzWo/+WMl1JJHFLN5nytXDyS+b5knmV78TxpMbN/q69G8G6zJf+G7e3eTzZLf93HH5n8NL7RhPWJoX3/LO3fzKp61dXV/DHbvJ+7pyCmO8G/vb6z/AHkfnR3kf7qSv0curXypJI0/1Nu1eZVN5GpoMSxafHGknm/vGrc/11TEzHeasX/XasPxFqkl1DRIDhde0aSW6jkSNJfL/wCXaWT/AFn7uuk0HwHDo2qfaLP91Jt/7Zx1UTCx12qXUctjNG/7ib/WSf8ATOvB9UsJPHni7+z7ObyrGOZZLz/nnJSxMrUbHrZfTc6lz3Twj4cjtYY5K7Sxi8qvj7H6FD4TQjq1DF5tIRPTEoNh3lVYh/dUFC0scv8ArKAJPNps0v76gBvFFAH4x/FD4l2fjeTzEjk+w2cP7u0k/wCelb37O/gHw/4/utehutN/tDUrXTWvofN/hZa/R73lY/LbclO5a8UeCPiV8QbWP4gfv4obOT7Rb+XJ+8jjX/nnW18B/i/Z+HPF3izxh4ovpNQ1b7H+7il+aS4qosm3um9H4I8bfEGa6+LFndf2HrEnnSWdtHD/AKxa/Sr9inRtU0v9n3w7Jrkbxaxebri6/wB5mrXaIR1ke9R0tYm4UUFix06gB9MoAK53wn8RvD/je61K30PVra8m0+b7PdRRf8s5KAOlp1ABRQBNTqAG0UAFQ0EBU1BBDU1BIUUAQ0UAFL5tAEtQ0AFFABTaAHx0lABRQBNRQAUVZQVDWPKSTUVfKw5iGl7+Z5f7yqlrEL+8Hm15X+058L9W+M3wuvPC+kX0Gn3U1xHJ5stJfETI+RbH/gnP4ysJo5E8QaL53/XNvLo/4YF+I2l30Nxb6loOofvPM/e13RrcpzSgF1+x58UovM2aLosv7z/llffvKy4f2bvixoMM32zwnPqH/POK2vN1afWDL6uczrXw5+JEUN5b6p4P8Q/Ydsf+qt91cvp/ijxB4NtZLO8s7mzsbf8A1cWoabIsnl12Rq3J9mTXXiOHVJv9IurSXy4f3cvmf3qo2sVr9hkkuPLivo4/M+0x/wDLOq5VMNTU8G/Gnxd4X/d6d4w1DT7H/prJ5kdereF/2+vHmgzfY9UsdP8AEtv5n7uX/VyVy1KCLp1T27wn/wAFBPAt7tj8S2N34em3f9do6908G/GzwX8QZrePw/4k0/UJJI/Mjto5P3leVKB13O68yjzKk0EooA80/aQuo7H4G+OJJP8AV/2bJHX5p2sVva2sf2eSvHx32T08F8JrQ/vfM/5a077f5trJG8fmwyfu5I68WTsdkp+6eV+MtGmsJrX/AEFIobjd5cVcn5TS/u0jSvaoVD52vRtI9M+Gus2thpc1n9sSe4kVfM8uuqhia6mryatO9STPVoS/cnG698S/Dvwvhm0+8uo/tUe7y7avGbr9pvxBLNJHpdmmleY1erQwyZxVZWkeZ6pLqmqfvNRvJ5fLruNF8Efb/s/7v95J/wAtK6ZQ5JWMOYm0HS/sGvNp9xH5vzeXXrX9jQxWscaVxSlY6oq5ektYbC1juJPLih/56SyVxvxAv/tV1Dp9vJHLa+X+88r+81YnQTSeMpPh98OdP1C4s/tk0kyx/va9c0e6/tnS7W48vyvtEfmVwVYckbnZhpc47yv3f+rqSa6WKuY9Eybq/h/66eZ/00qvJrNrdeTI91p8sMf7uP8AeV6NDQ87FzuUdUi0OLS9W/d2ktjeWbR+bHt/d14PpevSX+lx3FvJ/wBdK9zCS5j5yurE2oa9p9rtjvLpLO4/1nlS1nx/EazitZI3t5PtFesc0YXOX17xQuqa9DqCWckXl7Y/++a6S6+KFvLa/Z003/2b70dZxkaSpnnt1F+88x5K0tBl+wa1pN5/y2juo5I/3n8W6ol8JvT+I+1JP9dJGkdfJfxM0vVPCXjiTVEj/s+G8mkkt/L/AOWirXzmB92pJHsYmPNGLOPklvte1DzP9J1C6/4E37utaPwlql1D/wAg27i8z/V/aY69+J40mE3w+1C1tZJLiaCpvh7qn/E0+z/89I2pfaI3idJdXUfmf6zyvLqGb/V/J/q/+WctOQUyraxL5km+PzfMr9HPBt1HdWNncJ/q7jSbe4rzKpvI3tPl/wBOkt/M/c/vPLrW07bUxMyTVP3UMkn/AH8rkdUv/K8z93RICbwPoMlh4Xm0+82Xkcl19ot/+ekcbf8APSu60eJYrWOOST/V1USLHmfxk1n7Bot5GkknmSSfZ7OP/nozVpfCnwRa+HPDtjH5jyzbf3kkv/PSuLGStGx9XllNR1PUtPijihrUta+fPqYfCXoYqkjrIRJU0O2g2JuKJJfNoKIKKACigCaigD8TNU8G2thrGk295J5Ulwsclx++/wBXur6C+C/7Ps32HXLj7d5WqSWskljc6fdeZ+7X/lm1fosNT8rqyMH4c/tBN4X+GvizwnqMf/LOSTS7mP8A1ke792y1pap+yrDF8K9J8UeH9euYr7+zftl5Fc7fLqoLmCT5S14D+PHlfAe80/UdFupZrONrez1K2j8yP5v+elfrF8F9Bbw58JfCenv/AMu+m29VzBE7uikdQUUAPooAKJP3UdK1yDxfxF+1L4fsJLqz8OWOp+Nb633RyRaXb/u6+Yf2Vf2jNF8EeJPiFqnijSdT0qx1TVGuPtv2GTy7f/pnNW0Y2IPYNQ+KH/CUftXeD/8AhH/E39oeG7zSWk8q2k3R19U05fCXEdRXNzAFFWWTUUAQ0UAFTUAQ1YoOWw2ig0IamoJIaKACm0AOooAKKAJqKACoaAJqKACirAhooAmoqACigCGigCaigAp1AFeorrS7W/j8u4s4JYf+msdWBxPiL4GeA/FEkkmo+E9Ilm/56fZY68x8SfsKfDfWfOk0+PU9Fkkj/wCYfdVUKlgPJfFH/BPHWrWOb/hGvFkF5H/yzj1SH95Xhfjb9lr4oeDYfMvPC8+of9NNL/eR12RxBxSpHjeqWs1rJJZ6jG+nzf8APK5/dyV9Tf8ABNXwQus/ErxF4q2/udLs/scP+9JU1pXibwVj9IKPKrgNh9FAHg/7ZfiCPw58A9cmf/lo1vHX55fb47qST7HH58P/ACzlrw8b8R34b4TStfOltf8AWeb5klO/4SjRdL1Sx0d7pItSvP8Aj3tv+eleLdnfsTa9u1Sxs/8AnjHJ/vVkw+DdNl1CG4t7GTzo5PMjrswjPPxOpwPijxl4X+GnijUtQfUoLy4k/wBZYx15n4o/al1LWZvs/h+OTSo5P9ZJ96vXhh3zXMI1P3djg/st1rPmaxeSeb5n/PWtjS9Bjitf+eX2ivS5bHJKdzWh0aH93vjk87/np5lXrXzLW6j+zzeR/wA9P3dc0kYROy0HwHff21Y3n2q1lh3eZXo3lQxRx/vE8mvOqr3j1qErHO/Ey6juvCMcdvJH/pEnl/3q5Pwj4Xh1S1urh7z/AKZx/u65uUJSvI0viV8PtQ8UeF7HT9Ljg/0ebzK9a0/7RFpdjZ3EaWc0cMPmRf8APP5a5670PRwcbE3lN/BHVW6/exxx/u4q5YxtqehzdDyv4qRTWutWclv+6/c/vPKrgfKk8yPZGnnSf6v/AHq9unE+Xr3da512i3Ukvl6W9uktrefu7iKP5f8AgS1Dr3wgs/BGg/bNOmubyaSZY7iy+9+7rtptRqGHK5RPD/GUXleIriNI3ijkrHrv+0KGgRxLLH/q6t1oVIX/AFsMn/PPbXeaD8JfFGs2On6xp2kpLayfvPN8yP8Ad1liaqoU7CoJzkfSV150tjDvj8q68tfM8r/V+ZtrwX46XVrqk0Oj28fm6lp9x5f/AAHbXzOD1qHp4n3YnnPgO6msPFFn+5eKOT93/wA8/vV7FNdSeTHH53/kSveirHz1Z3KN1+9tZI3m/wBZXL6L4Nh0u6uLx/8Aj4/eeXHVkxON17XryXUJI/M8qP8A1daHhO68rS/9IoO/7Ja0vVPNk+0eZJZ+XJ+7r9BPgXrP9s/DXwneeXJF+5+x/vZP3n7uvOqrqSdldS/Zdas5PMfy66y18zzo5KyNi1qEv2XT5o/L/wBZ/rK871iJYrqSS2hokBNY6za+F4ZJNXvLm8uJG8uOKKP/AFdc/r3xL0eKSSP7d+7k/dxxyfu6szicX4H1n/haHxQkuLeZ/sOjw+XHFL/z0/ir6Q0uL7L+8rycYrn2OXx5aZ0kdXrWvNPciWrbtVmucZFNLU0dBsS0kfmVqBN5XlUygoWOpayAdRTsB+E2ny6p4y17Tbd98smoTLbx+bJtr7C1jwbY6D8RvCfg/Q9WkivrxVt7i2tvMk8tWX5mr9Eoan5XVicf4i+CPg/wv8aJNP1zxBJFoccMlxeeZ/eaP/npXrH7OevWOqeF/FFnpF4954Ljm+zx2WqSVvBcplJ8xzf7O/w016w8UR2dnZ2t54B1DUv3ceoSeZJX66WMS2tjDH5fkeXH5dRymsSeikdQ+igAooAfXgn7RmvX2veKPCfw30u8ks5vEHmSXEscn+rhWrgrkHpmg+DdF+F/gOTT9ItY9PsbO3bzP3f+srxf9jGwh174a+JrzUbOOWHUNauvM/55yfNUynYg8l0/4I2vwR/bu8M/2HD5Hh/XLWS4hi/55yV941rL4S4j/wDVR+ZWPN4t0G1m8t9a0+ObzP8AVSXUcdY8gGxDLHdQ+YkiSw/89IqSgsKXzaAJPl96jkoASl82gBKl82gxIqXzaAEooJCigAooAmqGgAooAKKAJqKAIamoAKKsAqGgAqaoAKhoAbTqACigCaigBPKp9WA2isbWAdUU3+p8urjEJHK+M/hV4V+I1jJZ+JfD9pqsMn/PWP8AeVX+EPwg8P8Awb0CbR/Dlq9nYyTNcfvZN0lNyvEm1j0KikURUUAfKn/BQ3Xl0b4TeH4f+fzxBbx18a3V1D9l+0XEkfnbvL/55/erxMd8R34b4Tn/AAP8QZvGWseJNHfTYIv7Dk/5ZeZ5kir/ANM64X4gX+n3/wAQPCeuWd5BLpunzeXefvP+Pesvq5NSrY1PGXx98K2Gl3lvp/n65qUn7u38r/V14zqnxL8ZeI4Y/Kvn0Xy93/HtJ/6FJXXhMOjjq1bnlf2Vbr95cSfvJP3klWvKji8vZH5U0devBrluTFdDvNUlksPCNxIn+ukhjrndB8R6lpd1HGkn2yH/AJ5S1FSdiIwuevTRTVxvjK6m0vS/tEUnlTectZSRhE7z4fy31rY2N55zy3Ulq0laEPxG1CX/AI+JP30lefVXvHVCVg0vS/7Uvo/tkd35P+s82X/V/N/dq9rF1ofhLRda0e81aP7ReRzSW9tS5QjK8jm/2c9UurqHXtLeZ/3fk3Efm/vPLr2S11n/AEqS48x5f3n7yuavSPZw07HH/G6XWLXwbJrlnfT6fNZzRxxxW0nl/erqPCeqTa94N0W8uJJJZpLOOSTzZP8AWNXNKNqdzfm/eWJtU8JR6zHDvj/fRx/u6rx/D7R4vL/cyf8AfyohiC6mFTlcr2Pw0sdLtY7jzvMuPlk/65/3ttZvjLxHD4N0W8uNUs/tmkyQ+XcW0W2OSSNq6aFbnqGE6CpxPkO6/e3X/PWGPd/raK+k+0eBsHlL53meZJWpp+l3Ws30Nnp1v5txcSeXHFFWhUjpo/hV4s8mT7Rot3+83V9QfC/RrrS/hr4dt9Uj8q+2ySeVXzuYVXPQ9TCUeWRtXVhJ5f8Aof724k/d+V93zJGr558cRR2Hxe+0PHHLNcQ/6v8A1kcbVzZfrUFmHuxNLzY/3knlx/u2/wBb5dNutsXlx19FJWPlZSuZ8373zPKqrN+6uqRtE8h8dWH2XXryNZP3e5ZI/wDgVZcMscX/AC0koO/7J03heJrrzv3nleXX29+yr4jsZfhnNp73iS/2fqn/AG0/eLXPWX7u5J7h4u2/2X5nlpL5f/oNdJ4Xl821s/3Plfu/+WVcJsa2vf6uOT/pnJHXG6DEsv34/Nuo6JAZ/iL4fQy6hJqFnH+8vP3clTWvgPT/ALL5d5b215Dbx/6uWP8Ad1ZnE434V6Na6X4i1q4t7GOzh1BvMr2ixl/ef6uvBxNS599ho8tM3LX/AFMdX65TviXbWpppa5xkPlSVY8pqDYkh/e1ehirUBslQ/wCuoKI3p0N1JWQFrmitQPxp0vRrrWfBK64ln9jj0+6jj029jr07xd4X8UfCD4oeB/GFneJquqaxbr5fm/8APT/nm1foUF7p+Wmb8KfDmvePP2kI7f4i2r/aLzzLiSO5o+PEsPg3xxfaP4Xj8qG48uO+022qvs2JufRX7NPxVh+KvxM+HvhPS9NudPhs/wB5ceZ/yz8mOv00rWXwlRJafWJ0B5tFABR5VABXzf8AtLaNqng3xl4X+KGnQ/2hb6HN5d1ZR/6zyWq4aSIkeg698WtB8UfBTXPFGh6kl5YyabJJ+6+aSOue/Y30uTS/2ffDe/8A1lxG0klbqPLTMjm/jdF5X7VXwjvP+mc0dfS9Zy+GI6Z4B8U/hP8AEz4tfECazuPEH/CPfDmPb+60+T9/eUR/sKfC3939vsb7UJP+est5J5lHtOxXIcT4w+FXir9liGTxV8O9YvNV8K2f7y+8O6pM03lx19JfDn4g6X8UPBum+JNI/wCPG8Won7+pB1dJ5VQUQzSx+Y0fmR/u/wDWURyx3UPmJIksP/TOSna0S6bFopFhTaCAooICnUEhU1ACeVUclACVNQBDRQESWOloCQUUAQ0UATUVYBUNQAVNQAVFJQAlTUAFJ5VAC0UAOooAbTqACigB/lU+gCWigCKisgPhz/gp1YWfijwz4F8O3l99jjuL6S6r8zdU8eah8NNe/svRvEn9tabG0dxH+7/dySVl7K8hy+EwY/jJqGkeOL7XvDlumlR3n7y4i+9HJWLfS2cuqWt5/rftk3mSf89NzV0ypmJ1Ufhz7L5cdvC9bnlf6LNb3Gz95+7k/wCmi0R0MLnmcdrJ/wAJZ9nt/wDj3+2LHHXsnxo+HOg2vhe81zToZNPuLOSOOTy5P9ZuqPa2OinDmPHbrxbeX+lx6fcyf884/MrJ0u1jl1SHfIkHzf62T/lnVydyo/CezahayfYfL/1X/POWvJbrXr6WOSzebzYY2qZGFNWPQPhr4tkutFk2TSRSWa+XJH/0zar32q1uvMj+3Wv7uuWa6l2949e8SfZb/wCEM1n5MkXl6b+78yvkX7VJ5Mf3/OjopQtI6KfwnTaf4o8RapNDZ6XNJ9o/5Z/Zv3cklb1j4j+JXhyaSN5NT/65Sx+ZUYppSNIK52XgPxvdfEr7V4T8YQ+bb3C+ZHL80ckci17d4X0tdG0u10+0/d29uv7uOvn8XLmPVpQsbVEdrJ5flpv/AO/dch6o26iWW1+SuR1qwhltZLPUbFLy1uI28yOSOumh8Rz1fhPlHxdLoNh5mn2ekyaffW83+t+1eZ5lYMP+rjkevrqUeaJ8n5E37z+COtz4c3X2Dx5oN48bxRxzLHJW07KNivM+1pLppZLyN5Ln955kfm/6v5aLGKS1jjj/AHnkx/8APWTdXwlRWkfUUI+7cj1CKSW1/dSSRSbv9ZXzz42sF/4XdqX2yT/Vrb3EflybvLZo69PLv4h52YR/dmh5S+XH/wCiqd+8/g/5aLX09RnyRl3UX7z/AKaVxel+I7zWdem0u8t/3n/LP93/AHa5vtm1LSJg/ECJpbWG4l3yXUcnl1j6D4ck1S6WS4j8q1j/AOetayjc7YytE7KOK1sI/Lt4/Kt694/ZBupJdY8QaO//AB6yQ/aI4v8ApotcuJ1plw+E+sI7qS6tYZP+WNdR4Ni/dzf6yWGvKibm5rUvlWNcnp8vlXUn7v8Ac/NXVH4jCRg+OPEd9YX2iyaRqWn2flzNJcRahH+7kX/rpXjPxW+OeqeKL7SfCekWaWdjeXHl3kscn+sWumUbU7l0Fese4aDax2FrH+7rrtLl82Ty6+Ok7yufoNLQ6iP/AFYq9a96DYtfL70/95XOUPqxWpsSRxSVZoKE/wBdR5dAB5dH2D/lpQBPRXRck/IDwbpfja1/s2TVIfP0Pw3NHqH2b/pmteoaxqjfGT4weD/GGl6bHF4V0+aO3/4mFff017p+Xm1+0543vv8Ahami6X4Puv8AipNHs2kj/s/+9J/C1H7KPg1bC18ReNPFc32zXPOb7V9p/wBZb1H2rGFz1r/gnn4IXxb8avFHxMf+7Jb29foxWsvhN4ktRVidBJHUlABRQAVHdWsN1DJHcR+bDJSvaREj43/a4/Zu0/wl4B8UeNvBepXfhWT7K327TbKT/RLytL9m/wDaR0nwl4P8M+B/Gljd+Gr6O1jjsb27j8uHUFrrhLnpmR0Hx8uvK/aS+Ddwn72G4kmr6drOXwxHTE82lrDlNuY8q/aI+Kvh/wCF/wANdak1e8TzLy3kt7ex/wCWkkjVzv7FvhLVvCXwI0m31ePyppJprjyq0+GncwPeaXzf+/NQTc/O34jfEbxNF+014s0P4X3UetTa5ax28kkc3mfZ/wC81fZH7PvwvuvhB8ObHQ7y+fUNS/1l5LLJ5n75q1qK0SoM9JorI6AptBAUUEBRQSRfN7VLQA+OpaAE8qoqACpqAiFFASEjpaACoaACirAmoqACigAqGgAqagBY6WgBtOoAKKACigAptADqTzKAJI5asUAFRVkB+Xn/AAVi8R+b8VPAuj/8sbPTZryvzrkijl8yTyf30ldFPWQ5fCElR6Xf/Z7qO4TyJZLeatZMwPZo/wDSrWOTzE8ySPzJKhksGltZNk3lTSQ/8865paHLc8tsYrrwv4s0/UNRsZJY7e8+0Sf9NNtfQniTWdL+LXgPUrPSL61lvpIftEdjJ/rI5N1efU0PQhLlPm3WvDmqeHJvs+qafc2dx/zylqr5XlfvHheWORvLkrri7kx+EtWus3UX3JpJYfM/1X/LOus8XfDSz0HwjZ+JLe8klkuNv2i0/wB6rkVaxl+A9UWwvriP/VTSL5cf/TSsfWLqSw8Sah/yy8u6asqi/d3Jt7x23wp+IOqf8JJpuh6hfJLod432e4tpf9X81XPjJ8NNL8EaXZ6hpcl3J5l15f8ApP8Aq46yjK0jSn8I3wP8KtciutB8SW8lpeWu6OTy4q+mpLCO6mkk8v8AfSV4+OrNSPVoUrlyG1sbWTzLezSKby/L83y/3lSebDax/aP3kUf/AD1rx+bmPVjCxatdsv2f/lr5kf7urXlfuY/3f/LP/wBCqjQdHaxy/wDLOsfxlYSS+G76Sz8z7dZwtJbxf89JK6aHxHPV+E+b/hL4j0/xl4stbfxBpun6jfbZpPN8v93cf9dKwfj58O/+Fc+LPLt4f+JTqC/aLeX/AJZ/7tfVRnyRPk/+XljU+APhnQ/EuqXkevael9JaxrNDFLXcePPAeh+F/st5p1ikHmXHl+b/AM85Fry6+KalY7/Zfu7nafDnxHNr1rNHeSebdRyfvJPM3V30MXmyeX5deNXVpHrUJ/ubmPqF/Ha/8868f8caXb6p44vtUeSf7RJ5f/LT/V7a78u/iHn5hP8Adlf/AFv/AD0+7Vf/AJYxyV9HNnyxRk8yKT56x7XRLOLWLrUnb/SLysvtm0dInN6hf/ZfGUel3kaT2vmVtTRQ3X7xIfKmrWM7jlK0TP1TS5rCb7Pcfu5Ntdd+z34qtfBfxe0PUL+by7W6m+xyf9NPMrlq60zvh8J9/afYXFrp8lm//H1bySVraPLJYSSR/wDPSvKibmpqkv2qH5/+WdYPyxQyRp5ldUfiMJHh/wAdLDUovL1SWSSWP/V+VF/drx3wHFH4o+KEdvF5kX+irJH+8/1ci1rVnbD3N8Ir1j7B0v8A1Vv/ALtdLpcrRSV8dHWNz72Oh0EMv7mtK1l8393WhsWkqaGXza5yi9HVmtTYnjo8ugok8qn0AFLJQAlFaXJPyE8UfF/XNL0fxFp6aLJZ/wBqTSfZ9S/6da9Y+IWvWvhL9n3wnZ6RJH/amsWscdvHL/s/vGav0COh+W3OV/Zz8Ea14c+Mlx/wmGyzvpLGS4jvtQk8yt6+v7X40/GrWtP8P+JrvT7W4sWjvvLj/d3G35auxh/y8ufan/BPfwHq3gPwPrWl6vDH5dndNb29zF/y0jr64qJHXSCpPLpGxIlFABRQAVwvxW8V+KPBtjZ6xoehv4msY5P9O0+2/wBdt/56R0EHzv8AtVftD+DfHn7PurR6dq32PUpJo45NN1CPybuvZLXS/AfxB+EOi6f4gk0XVdLjsV/1si/u/wB3W3J+7ObmPjddLh8A/tefD3w3pfi7/hL/AA3HN/ocfmeZJp/mLX6TTbYo5JH/AOWdEvhNInzr4i/bh8I6Xql1peh6TrXiXUrdvL8rT7WvC/iF+2b8XNUjk/svwTd+ENNkb/j+ls2aStqdOKK5TvvgP8Kvhz8Qdeh8UeIPG0fxG8VR7ZPs2oSf8e7V9gQxeVDHGkccX/POKuar7xnscD8VPjt4R+Dem/bPEepJFNJ/q7KL95NJXz/JrPxc/av8y306GT4c+AZP3clzL8t3cLVxhyGZg/Af4QaP8HP21tS0PR5JJYY9F8z95X2/RVlc0iJ5tWag3K9fJXgPWdW+PH7WmpeINO1a7s/BfhNWs/Kik/d3l1RDTUyZ9b0VABUX2qH7V9n8yPzP+eXmfvKjluA+nVXN0AXzaPNoi7AJRTAKWSlzcuhQlFO/NoAUUoysWFFMgmooJCigAooAhooAmooAKKACigAqWgBlFABTaACoaALFPSgCxUVAH5Ef8FAb+PxH+1lfWr/6mxsbexr4z8RXUd1r2ofZ4/8Alt5f/XTbXRR0M5IozaXeWtjHqH2Gf7DJu/0ny90dZ9rEsV15fmeVH5lLnWxnzdT3LS7+HWbWSSzk82Hy4/3dQzf883rnlqcsdB32WH/WPCkn/XWOtD4a+F7O18bR6xbr9jkt4ZJP3f8Aq5JG+WuOvK0TrwkueUUeoapoNnr00keqWsd5ayf6yOSodH8B6Lo2l3lmmk232e8m8zyrn5v++a+cjjZQ/r/gH08qBxPiz4BeG9ZuppNLjn0++uP+ef8Aq65/xJr2gxfDnVvC6XiS3Gnw+X+9/vLXp4Ov7WVzy8TS5I2PAY5fKh8vy6b/AK3/AJafvK9Pl5pXOOUuWNj0b4c/Dm+1m1tfECXUfk295/qv92vXvipZr458E3Wn6NJa319HMt59mg/1ke2uGrO9TmOikrRsaHwssNU0b4f6bp95DJF9naT91XeWu2X/AJaR/u68OpL4mezTfLyotQ7ZYZI/+WdeM/HzxRr3hfVLG40jUrmzhuKnDPmlcMU/dseY6X8bvGVhND/xOvM8uSvsCxv5Psscn7vzpI1krqxNPkjoc+El7wSapJYQzXDyfubdfM8uOSvN/wDhbTXWn30dva/Y5rjd5fmyeZU4aPMLHVVTPEfDegw+A9Usdc1SbzbGP/Wf89Pmr1Lxdr0fjLRdJ1jS5IPENrpdx/pEX3pvLb/pnXvy0PJpv3j07w39lurWS4t5Lb95/wAtLarGqaDa+KIfs95HJL+8X91XzFVuNTmPapbco7S/BtjoMkkdvGnl/wDLSuJ/aMv9U0vwTJeaddSWfl3CyebHW0PerRCu+WmfM9r8UPGFhD/o/iK6lr0LwHr2peLbG8vNUmSWTy/Lj/5Z19ZGHKfP4lc0TWml/eeX/rahk2+TJ/y1rOckedGLIYYpLqPzEh/5af8APOob61urWGSTy5P3dRzc0R8tjm7qwhlk+2XFqksnl+X+8q1p+61uo5PL/wC/lXE05feKvii/+36pJIn+rk/5a1x/iKKaKOO4SN/3cn+t/wCedTKN9TtpO0bH6keDfFEfjLwn4b8UW7fNrlitxJ+5/wCWlb2qS/YI47xPM/dtXkctjoNKG6huvLk/5ZyVi6p5dhD5j/urXdXRTIPLfjBqlrf+G5I7O8f7dH5kkn2avCfgPL5vxMjj/wBRNJbt/wBs61ru9EvC/wAY+vLH975ddBbdq+TPv4m1Yyt53lvWtHKv+rqIjLNSwxUFl5KmjoLiX6mqzUlpvlUASeVUclADqK5yj82fCPxf8F3XhuOPxXYxy/2ffeXHbSR/6y1mrzP40eDVsPjxZ+H/AANH5tr5kN5ottLdeZH/AHq/SZaH5Nc9a+KnxV8G+PPAdnZ+MPtXg7xpo8ix3Ft/rJNrfemjra8caDoPg/4f6H8Qvhjb2tzHpciyXFzH/wAvlr/F5lbk+Z90fsd6pJ4j+COm+IHtX0qbWGa88qSvbqwkddIKsUjYEooAKKACigg+Yf2+vAeg6p8C77VH0m1/tKO4t/LvvJj8ytrwH+yh8L9Z8G6LeX/hmOS6uLOOST95W3P+7MuQ89+Mnwl8H/Dn46fCGTw1oemaH/p0kcnlR/vJK+xqJfCESjp/h7SdGmkksNLtbaSRvMkljjq5NEsv7t465byR0cp5b8RP2X/A/wAQZv7QTTf7B8QR/wCr1nRv3M0cled+G/id4q+CPiSHwT8S7qS+0m+k+z6L4r/56f7Mlbx945amh5Tdfs8fFbwD8Xb7xpeaXY/F+x/efY/td15ckdetQ/tVeMtBh8vXPgb4ntP+vDbJW8nzGZ4P4J/aq8Ky/taa54w1TTdV0qxk0v7H5cse6SOvpr/htf4PxWMlw/ij95H/AMu3lyeZRKFzSJ654N8ZaT8QfDtnrmhahHqGl3n+rliroawNzz748eMo/h98JfE2ueZ5X2e1by68/wD2J/Af/CG/A3Tby4/e6lrjf2hcUbU7mTPeadUAcN8avihp/wAG/h/q3ijUZP3NnH+7j/56SV8M+BdW+MHhLxJJ+0F4l0e71rQbj/Waf537y3tf+mcddMI3A/QLwX4t03xv4bsdc0iTzbG8hWSOqvxC8eaX8NPBupeJNXm8q1s42krHk/eWA+ffDP7ZevfEjRPM8H/C/V9avN3/AFztq7r4T/tKWfjXxZN4S8Q+H7rwZ4xX/lyvf+W1aSp2A9vorAAryj4/ftI+F/2fdLtbjXPMlmvP9XbRVcIe0qWKM/4D/tS+Efj751vpEkltq1v+8ksZa9C8U/EHw34Dg8zxLr2n6LH/AM9LmStKlP2c7DKXg34yeB/iNdSWfhvxZpmuXUf/ACztpP3ldhXO42KGTXS2v7y4kjghohullh8xJEnjpkE3m0lBIVNQBDRQAUUAFTUAFFADqKACn0AHlUygAooAbSfN70ALTqAJ/MqOgD8Kf22PEcevftTePLyKZ5YbfVPL/wDHY468FhsL7VNU/s9I/Nurj/lnXRHQJI+lPg3YX2l+DbPT9RhubOHzpLeTzf3dcD42/Z2k8661DSdQS5j86SSOy8uvB+sfvLHT7D93c8lksNe8JapHHJHdafN/rI4/9X5ldJpfxLmimj/tTzJYfLk8uvVjqcMqVjtPDt1J4otfMs9955f+s8qu8+EsX2rWLz93+58mvKxcrRLwkOStFHq01r/1zosYpLq6jt6+cilI+ulM8r/4X7pel+MrrT9R+1ad9nuGt/N8vzI9q182+KJY7rxdrV4k3m29xcSSRy/89FavocHh/ZRufP4mrzSsYsl1/wA8v3vmV6tp/wAAtQ1TQdP1Cz1a18y8jWTypa6Zz5I3MIw55WO08J2v/CtPBsel+I9WttPkkvmkt65X4fy/2D8bpPs8kl5pt400fmf6uO43VzSjenzHXFWlY+gprC1tf+PiT7HY+Z5kn7z93Xk/wlutQtfHnizQ9Rkfy42kuPK8zzPLkWSvHoQ9rTkzsqPlqRR6p5t9YWMlwkf2z5ZJI/8A7KvFdLv5P2grqTR7/wAvTpNPjkuLeSKSqy+neNzPFv3rFqb9lloo5pLPxB/q/wDlp5ddxN8Z9FtbWOxt5vMvtP8ALjaKu6X7+Jyc3spG9dfEvR7qO8jeO7i8xf3cn+9/eryOS68q18tJPNrrw1BRPNxVV1ijrUUl/oOpW9v/AKy4X93/ALy1tfs+6peeF/3fmeVJJdeZJH+7/eLW1XQUJe8dd8dvFmsfDnXtN8QeF5P+JT4gjaPypY/3dvNHVP4L/GTVPG+qXlnrkiS/u/3f2aPy64pYZTocx6tKr++5T26SXzfMt0/1cn/LT95HXz78btZvrrQdW0e4k/0fctxHXl4T3q0Tpxz5aZ4T4X0FvFviTTdH+2R2cd43l/aZf9XHXsGl/DnUPhzqkmhvfW0v2iSSvfq1+U8eK5onqnhf4X28tj5mo/aftVxJ+7/eL/q63v8AhWnh3yfn8yvnqmMZ6McIjhdY17RfC91JHcWckvzfZ/3X92uJ8ReKP7e8u3SOOKxjkk8v/npXtYSXPE8epGxX0GLS/wC2o/7Rj8+1qr4y0v8AsvXrq3SHyoZPLkr0InNze8YM1q11+7Ty/Ok/1dN8bWsNroMduknlQ3E3lyVvFXp3NYu0rH1p+w/43k8UfCvVvCdxN5upeG7zzI45f+fWSvate1S1/suzkS4/d+d5deZUjY9Aq6Xr11azR26fvYf+ecv+sjrS1TWfNtZo/wB5+8WsqZB438TIlsNHkkSOPzN3mV5L8JfJ0v4wWsnmeVDcbo6c3eiXhf4x9caX/q45K6Kxlr5c+/ibFrLJ5laEMXm1ERmpVigsuQxU7/VUFxLUcv7mrkdWak0dTUAHm1FQA/ylornKPzL16XwbF8WvE1nqMNp9h0fQW8uP/n4krkfhD8NNL8R/D+b4kJfXNnqml6p+8i/55wrX6PLWJ+Tmx+1d4o0vxRfeG7fS9Dgvo90cl1rfk/6v/pnXefHjRtc0vwHJb+C447Pw/qFv/wATbTa2LP0g+APhz/hEvg34P0eL/U2+m29d95tZyLiOqWqOgfRUAFFABT6AMTxd4I0Xx5o8ml+ILVNQsd3meVJ/z0WtTT7CHS9Phs7ePyLe3WOOOKgg8B/aC8Jaxr3xq+Fd5Z6Tc3ljZ3Ukl5c/886+hJf9bTuAtFZ8xVx1fOH7c2s+G4vhO2j6jsl8QXky/wBmxf8ALTzK0hGxnPU9w+H8V1a+CdBj1H/j+js4Y5P+um2ugh/551Qj5V+Ael2uvftNfGC8eGCXy5I7f97HXv2qfCDwPr3mf2p4T0ifzP8AWf6HHV1fiM4m94f8OaX4S0u30vSLFNPsbf8A1dtFV2sSj5Y/bqlk1nS/Bvge33+d4g1Ja+ltH0aHQdHsdPt4/wBzZwxx1cvhiBcmuo4qIbpbqGORJPNhk/5aR1NvdA+Sfj5LJ8af2jPB/wAM0k/4k+lsuqatHX1VdaLZy6DNo/k/6DJbyW/l/wCzW0/hsB87/sN3TWHg3xZ4Plk/5FvXLi3j/wCmcNc1+1JJc/GP44+B/hHbSPFY+Z/amreVVx0qXIPrHRdLsfDlrHZ2FnHZ2sf7uPyo9tfOf7blh/YPh3wv8RLON/7W8N6tDJ5sX/POuaPxDkfRmk6pHrOl2OoR+XLDcQxyVc8yofxFC18dft4fs0+Jvi/daT4g8L7NQ+xw+XJZeZWlJ2ZR8f8Aw/1TxZ+xl8Wo9Y8UeGbmzuJNNm8u08z93JX218B/2ff+Fg6ba/EH4sBPEfiDWP8ASLeyuf8AV2cNehWqrluZchvftAfs0+H28GzeJPA2m2vhXxdoa/bLO50+Py/M/wCmbV6B+zz8TV+Lvwp0HxJL/wAf1xD5d55X/PRflauJ+/TNjwf/AIKRapr2jeA/D/8AZ0k8WkyTNHeeXXx/+zN8ePGXgv4qeF7dPEGp6hpcl1HZyWMsm6OSuqg/3NiD9fo6o+KPFui+CLH+0Nc1K20q3/56XMm2uG15FFjRde0/XrGO80u+g1C3kXzI5baTzI6u0W6EhTafN0AKTzaXNYB9TUgCnUANooAdRQA+igBlFBQkdT0AMo8qgkKbNKtrHJJ/zzVpKAPwbhuv+Et+NXjzVPLkl/tDWLi8j8z/AJabpq838L+XdfFazt3jjlt/t0n/AG0206rvEz5v3h9VXV0vmSSJH5U1U5v+Wn7v/lnXyMviPo4njf7SXly2ui7P+Pj955leIyfuv+WkdfQUP4Z49f8AiH0F+y/FHa6PqV4/7qb7ZXukOg2thNJeWdmkUlx/y0jrwsb71a53YafLGxw/xotbrWfhzqX9nfafOt9sn7qvEfhX8WtesPGWm2730f2HUJoY7r+0K2oU4yp2KxM71LnrHiz4BeH/ABlr15qH2y50qaTd5nlfvI5N1eT69+z74k0uGSS3kjvI45P3flVVDE8kbMzqYfn1HeHf2fdS17Qftl55mn30kkkf2aSvbPCOg3Wg+F9N0u8jjlms4fL/AHVVXxHMXhqHszjf2jNGutU8N+HY7PSZJfLmkkk8uPdXWfCH/QPhfpO/Tf8ATo5JPM8yP95HtolU9rQ5QlT5a3Mc38atU1LS/A8l5p108X+kLHJ5f/LRWp3wX8ESNar40vNS/tCbWLPy5IvLp8vJheUvm561z1yPd+7k/wBVN/q68J+GfgjXPC/xauvtmmyRW/76OOX/AJZ+Y1ceEfso2HVhzSue+R7Yv3n/ADz3V8n+IoprD4yalefYf3cl15kflx/u66sMjhxMPdNr7f5v7zzP31R+ZXpXPK5R3+t/d12Xw/i8rVI45I4/J/65/vKVWVolwV9D1LxF8PrX4jeE5PC+oyeVJJ+8sbn/AJ97qvI/hr4Sj+CN9eax4o1KO2mkWSzkjj/5Z1xUJc9PlPUkdtN+0Z4DtZPs/nahL+7/AOef7uvL/HnijRfGUOrXFvfR/wCkR+Xbxf6utsNgnQqX/r8zLE1+eNjz34cxSeHPiBodxqlrJFbx3S/vZf8AV17V8TL/AO1ahpuqW95HLDHN5f7qT/WRrTxUbmEHc9082OWOOTy3i8yOOSOof33mf6uvlftn1dP4Txv43WCxa95fl/vvJjuI5f8AnpHXl/2pf+utfV4SSVGx8fi6LjWuTXUs1hdR/u5PMk/eR+bVW6v5tU1T7Zcfva9GKvE5Y+7Ip3V1HYeXI8nlVw/izxbdeKLqHZ+6jjjXy46mUzpjH3rnt37Hfjebwb8btNkSTyv7Yhjs5K+yPihYSaN4utbNJP8AQZGaOuSoipfCQ6DfyWuqR/u/9Hj8y3/6aV2E2lzeTHIkPmwyR1JMfhOZ8ZeA7q/sZNl0kU0kPl+VXluqeErHwlr2g6p5nm30d1/rZa4Zo9Ch/Eue5aX+6hjjroLD79fPVZe8fZxdzY07zK2LX97SidJcjqxHW0gNCOpKgomjqx9q8qg2Jo5VlqaOgCT93FR5q0AOooA/NHVPhB4P8b+HfGWoWcdz/aWj655cnlXX/LOT5ttU/iho11+zn8P9a8N6Rvl0PxZH+7jlk/eWclffx1iflJe/ZZ/4Rnxv8G/E2h3n+matH+8vLKST/WR/3lqr4Hv/ABt8ePsfg99Sji8K2d1Hb/bo/wDWSbZPuzVsWfrtotr9g0fTbP8A597dY6u1nItBT6o6CSGWlqAH0UAFPoAZUtBAV418ZPiD8RvBHiixk8L+Df8AhKvDf2X/AEiO2k/eeZUXA5X/AIal8Wf6v/hSvij7RR/wun40a9JJ/Y3wjjs49v7uXVLyuj2ZNwm8K/tHeMvL+2eJNB8HWMn+s+zQ7pq3vhz+yh4d8Ja9/wAJJ4gvtQ8a+JP+fnWZN3l/7q1nzWDc9xpZKoR8q/sby/b/AB58XtU/56a15dfVNXV+IziFTViUfKXxW/4n37cHw70t/wB7Y6fps155dfUn7v8Aef8APOrl8MQPj34leKPEX7UvxKvvh/4I1Z9D8I6Hu/tjWf8AnpJXRfsH+ILr/hV/iDw3qN5JqF94X1a60+SWSqt7oGX+yLE3jf4wfFrx1cb5f+Jl/ZdvJJX1pHu86rn8VgPln9luXyvjV8bo/wDln/a0NJ+zNDJ48+N3xQ+IF3sk8u8bR7OqlpqQfVFeIftpWq3/AOzT4w/6Zw+ZXNH4hyO2+Bd+2qfCHwbcP/y00u3ruPKqZfEULSeVRF2KPgH/AIKEaDHqnxu+G9n5fm/bJFs6++LG1+y2MNv/AM84/Lq3rEnmKPi7WbXQfCerahfzeVa29vJJJXgv7B8V1F8B47iSHyrW81K6uLf/AK5tJVx92mUY/wC398X4/Bvw1j8J2dj/AGjrniSZbeOKvB/hD+zxa/s+/tQeAdP1z/iY2/iDTfM/e/8ALO6raDtGxJ+j9fn9/wAFOotYv9a8Jx+ZPF4f8mT/AK5+dWVNXkUYP/BO34jala/FrUvC6Xkkuj3Fm0nleX+7jkr7O/aI+OFn8Avh7deILiH+0L7/AFdvbf8APSSi3v2JPK/2Vf2zf+FyahJ4b8UabHoviKSNrix/553kde0fEz40+EfhBpf2zxRq0en+Y3lxx/ekko5P3lgPI4/28PCsX7y48J+LYtJ/6CX9m/u69+8G+MtF8eeHbXXPD+pQarpd4vmRyxUVIWA6OisQCigCGpqACnUAFFADaKCgpY6AJ6KCQrkfi5rn/CM/Czxdq3/Prpdxcf8AfMdAH87mi69qXhzVI7yKa5tPM/eSRxSf3v3lbng26kuviFosn7/zJLr/AJZR/vKiTvEOT94fVU37qGOPzv8AV1Xmikihk3/9s5Iq+Vl8R78Txv8AaSlb7D4f3+XLHukrxu10vUtUtby8t7OSWO32x3Esf/LOvoKH8M8ev/EPVPhfu/4V7qX7zypP7Sj/AHsddta/EHUtGvpN8j3kP/TSvOq0uaVyIz5ZWO+0X4jaXqljJ/y530f+si/2a4P4lWGl6pJpN5FDa/brdv8AWx7a5IU5Q0KqzvqR6D431Swmjs7j/TLWST/lp/yzr1SS/j0vzLi4mjs/3kkfm1NejySsejhK/PTuQx38MX3JP3Mn/LSOnfavN8yseXmOyM7k37793s8yf7R/zzr5/wDi1r3jjw58QNW/su41OzsY9sn+p/d/6uunDL3+UyxL5Y8xN4J8ZXXxa1Cbw34jhtvs/wBnkk8yOOjVPiNqnw08Rf8ACL6dZ215pMc3l2cslv8AvPLavWqR5o8p50Jcsrn0l5qyw2/2eSq+qXS2v7x/71eD9qx6UZc0bnM614os4ppI7iaOzk/1kcclcb4y17Tb/R5LP7dBLJJ/q69PDI8zEz908vk/0D92/wC98z/ppUP2r/WSV03OPlNSxljlks/3kf7zy69u0vRoYo4Y/sNr527/AFnl/wCsrnxMrRJoK9Sx1V9/x6/aI4/K8v8AeeV/u1578fvCWqeI7GOSz8vztQWG8j/d7f3ir/q65aD5anKehI8bm+AXjqX95/YvmyeX5nmxyfu6b/wofxt/BZ23nRt+8ijkr31XU9TzasOWVjU8SaXNFpd1bp+6uI1jjrH+CN19q16azvJPNt5LfzI45f71TXjcqg7n1hpd15un2v8Aq4vlq15X7zzPM8qb/nrFXxH2z6+n8Jk+JNGtdZhj+0Q+bJG0fl1zP9l6ba+TssY4pI/3kddtCu1Gxw16KnK5wPxQ0aa616G8s45LzzLXy/Kj/wCWe2vJ9Q8Rw2upfYUb95J/rI5f+WdfT0ql4ngVaXLIp+MtL83S5LhP9d5i1wtr5lVKJnGfu3Nzw3dX0WqQ3lv+9kj/ANZX6aWOsr8afgrpOueSn/CQWe391F+88yRaiaKl8Jzdjf3VhqFr9ok+x2/k1654bv7W6tY/sckf2WsSY/CXr7S/+mkkFfNvx8tWsLHzPtHlTWc3meZ/q/vfw1jUiehQ7nrXg3VP7U0HTdQff+8hjkj/AN2u4tf+We//AFdfNVYe8fX0nc3IZf3Meyta1/1dZRO0teXVy1/e1tIC9D/qKhqCibzabJQbGlp/7qrtABUU0VABHRQB+PeixeLPBHwf1Dxhpd5H/Yfiy4ks7r/lpJGyyV0XxG1nxt8RtH8O+OLy1tv+EV0uaOz8zy/3fl/89PLr9APy89O/aC+C1r4c0GTxp4DjfQ/LtVt7iK2k2/aLWSqv7APhzXtB+Jmm6XqnlxabrC/bLP8A55yVdONief3T9cptv+rSnR1BuSPRVlhQlBBYoqABKfQWMp9ADqXzaAF+1NUdADqKAClm/wBXJ/u1ZEj5N/YP/ew/E6T/AJ6eIrivrKOiuZFHXtctfDOg32sajJ5VjZwyXE0v+ytYPwz+Jek/FXwnZ+JNDZ/sNwzRx+ZHtrO3u3A8D+NEsPgj9sL4a+JLySOCx1S1k0vzZK9O/am+KEnwl+DetaxZ+X/alxH9js/+ukldK15QKn7Kvwvj+FXwl0mzf97qmoeZqF9L/wAtJJK8a/Zrvfs+oftBXUK/u7XVLil9qTA7D9gWJf8AhQ/2xP8AWahqV5cSV9KSS+VDJI/+pjWlOX7wD4//AGadZ82x+PHjTy3/AHl9ceXL/wBc467L9gXS1sP2c9NvP+WmqXFxcSVVT3YyA+jq8D/bg1n+xv2afEkfmfvrzbZ1hED1D4N6NJ4c+FfhPS3/ANdZ6bDHXY1QBTaAPg79tvxRot18fvhPImrWnk294sd5++/1f7yvoLxd+198L/CUflp4mg1m+/58tL/fSVvOHumJ5VfWvxG/bFvrW3vNNufAvwvjbzLjzf8Aj71Cvq/w/wCHNP8ACWi6bo+lwpbWNnCsccUVROdjY+I4bX/hon9vS68z9/4f8Hw/6v8A5Z+ZXeftweZ4X8SfCHxp/wBAvxEsdx/1zkq/tAfV0f8Aqo64/wCM2g6T4o+F/iS31yxg1CxjsZpP3lYLSRR4r+wD4Q0+x+C8OvpptvBqV5dXEfm+X+8r1b9oL4I6X8ffBP8AYd5N9juLeTzLW9+95clVJ+8ZxXun51+B/hzq3wH/AGgrfS/EmuJLo/gO1m1jzIpPLj/1dfTX7N/wWvvjTqknxg+Jsf8AaE2oN5mk6NJ/q7eGtZP3Sj6+bS7UWv2NLOCO1k/dyReX+7r5c8LxN+zx+1P/AMInBJ5Xg3xtG1xptt/yzt7qsIdgPquOp6ACioAKKAHUUAFMkoAPKpaACnUAP82pPMoASvCP22PEH/CM/su/EC63fvGsfs9TIuB+Nug+F7XXprOz1SHzYf8AplJtk3NRrXwbuvDmvabqGnXk8sfneZJHJH/q65pVbl8vvHsFrfyS+XcP+6kqSbXl/wCef77/AJ6V4lSNzvpyscn8WvCU3jLw3DHafZvOt28zy/8AnpurmfgvoN1a3XiDQ9UsbmKOPy5I5K9ChWtGxzVYXPVJNGs4rWS3trPyo5P9ZH/z0auT8XeHNN0bS/M/eRTf6uuSn79S5lVZwce7zvtDxyeZt/3a0rG1j+1R2fmfuZGrumuSJ5/P7x2UngiP7V/o8n76Nqr/AByum1TwTdW/2N/Ok23Efl/8s9tcENZWPVprlpnlPwf8R6pa+ONFs/7Sf7LJN5cccv7yPdX0l/x6/wDPOWHzKeMTjqdGGnY1LW6p11dTX8f+rk/1Mkcfm/6va1ccVY2qxvE+H9UNxYeItS+zyPaTfamjk8r5fuyV9WfCHS7XXvhzpuoavDHqGqSTN+8uY932eNa9tSvE809Gjul+y/8ATaOqt9L9qtZLfzK8ap8R1x+E4HxR4IuvEd9b/Z7qOKHy/wDlrXM33wv1Swkjkea08uRv3flV1xqnFKHunUWvw0tbW1k3yJLdSeX+68v93tq9D8L9Lupo9kMcV1V8yMuU2NL8ERxSf8eMcUNu37vzK6D7B/y0krCq7ndSpe6WI5f+mf76SPy6PKkurX+z7yOP73mW8tcB02HR/wCr8t5I/wD0GvOfG0V9a69NJ5ccUMnl/wCqk/eV34SXLInF0+amcv5Wh3+gzW95Dc/2pcf6u5jkrH8B/CDxF4I8RWeqP/Z95YyRzW/m111Ktonk0oXke8aL+9j8x7jza1o/M87/ANF181LQ+qpsjktYbr/plXBzRSWt1JG+z7VHJ/1zjreiTVZRmuv33zyJLXz34y8B6xL8RJms4f8AlpHJJc17lCpY8yvC8Sj8UIr7wvHHpdx/rLy3jk8yvP8A/Vf+jK9O94nlxVjY8LyrFfSRps/efvI/95a+yP2QfHn9jeLr7w3cbJbfVF8z/rnMtZSn7xUtYnsnjy1/sHVJrd4Xs45P9XHL/q6wfNki8uTTprmK6j/1lp9qrOKOGRvf8LL8RRXVxHeeXPa7f+WnyyRtXhP7S3jya6hjt3/deXJJ5ddJpCp7x7N8AfEa+KPhX4buHhe0+VrevVIbrzfL2V8ni1+8Pv8ABu9GJuaX/ra6KGWuM9AsQy+b+7q98vtQBeh/1dElAE3lR0tBRPHV6GWg2CoqAJaKsD86fiZ4j0v/AIQnUvhnpf2SW68QatDHZ+X+78uOby5K5nxlFqXwb8G+KPg+8c+uWOufZ5NFl8z95H/ehr70/Lyj8br/AOK3wq+HMPhfVvFH2zR5PLjhuYq+pv2C9UsfiDD4XvPM+2X2j2vl+b/zzkpc9ieT3T73opm46irLF/1tTR0EC0VACx06gsdDFS0AMooAlooAKKACkupfKtbiT/nmslURI+Tf2BeY/iRH+7/5GKavrOnXMjzD9qDVP7B/Z/8AHF4kiRSfYZI6w/2N9L/sv9m3wX/00s47ii37m4B+1h8H5vi/8NZLfS9//CQaXJ9s02vlX43ftBab8X/hX4F0fXJP7P8AE2n69Zx6tptzWtHXlA+4PiF480v4afD++1y8kSK1t7f93+88uvDf2Mfh9eXXwb8Raxq//H94wuLi8/7ZyUfZkwD9gXWbWL4c614P/wBRq3h/WLiOSKu6/aq+L9r8L/hffW6Sefrmsf6HY20X+skkqqkP3gB8Cfg3/wAIb+znH4TuI/KvtSs5vtX/AF0krif2Gde+weCdW+G+ofutc8J30lvJbVPxxkB9PV8ffGDxEP2mvj74X+HHh93u/D3hy6+365fRf6vzKwiB9f2sUdrDHbp/yzXy6lqgCk82gD84f2uPhL4T0v8Aag8E29npscX9uTW/27/pp+8r7o8E/BjwH4B2/wBgeF9O07/pr5dbzk+UxO6ml/cyfu/N/wCmUdfKuvft6+DdBj8Safrum614a1zT/Ojhtpbfd9orGEfaGx4H+yP+0Z4V+FXh3xBrGqaLq+oeLvFGpSXEn9n2vmVtftcfHXXvir8IZFt/hf4j0rQ7O+huP7b1CtvtgfQ3wNl+Mnjex8O654j1rSLHw/JaxyeVp8fmSXC16Z8db/8Asv4N+NLj/nnps1YS0kUcD+xHFJF+zf4T/wCenltXuVKT94Ir3T8qf2ptGbxl+19faH5ckseqalY2clfqRoOlw6DpdrpdvH5VvZwx28cf+7Wkn7pJo18yftzTSeHLL4Z+K7f/AFmj+Jreph/EsB9NQ7ZfLkSrNIAoqACigAp1ABRQAU2gAp1ABT0oAfXxx/wVK8RyaN+zfa6en+s1TWLezqWXTPzN8L3Sy3Wix/8ATavUNQlkl/5Z+b5deTHU67e8Y8N1JF5kaf66qM115Xl7/wDXeXS5bivY1NLv/wDVyf8ALGSqvijxla+Eo7eS4k/cySR+Z5kbfu46VOnaVjSUrlXxJ4tjv/CNjqmlzJ5dxNXE6pqjazdeZ88UP/POuqhS5dTzKrKf7z95XZeA7CO/jkkuI/30f7zzKddc0TDk947z/lpHJ/zzjrg/iN8RtF1Tw3q2j+YkWrW9vJH+8kkk+9Xm4T3q1j2qi5aZ4HoN1NpetWtxbSeVJbsskclfV3hfxH/b1rdfaJE+0W8kflxR/wDPNq9bGUeenc4aU7GpNdSVtaPqn2WaOT/ZrwZKx6bneJk33gjRdU+2fadB0y8muP3kkksdcLN48uvAfxGsfAdnYwf2Hujt4/8AnpuauqlK8ThPZJLVopJN8lQzWsn/AGxrjqfEdcfhIfKmik8xKsfZWlqYmkoe6XIdB/feZUkdr9lquZnNyjY/3U3yf886JpfN8z/gNTJ3O6l8Ifu/Jo8qSL935cn+srE05RuoS/2NDDqDyR/Ybj93HL/tVa0+/tfJjj1GS286T/WRyVtB8siaj5qZ4TdbvtV5s8v93deZ+6r0ia6WX95W9fSJ42Gd5F7QdU82SS3fzPM/5Z/9M62JIv3km/8A6Z149XQ+hgyGS/WLy5P9VXJ6pfrdah5iR/uf+ulb0SKrOZ17VLewtZJHk/d1mw3U2qWsNw8nleYvmR+VJXpwVjhnO8Tzn40aDNceF7fUHk/fWd03+q+b5WryGHS769sbrUEhuryxt/8AWXMX+rjr2IO8Tz5Kw7R9v9sWcfmR/wCsr1DRfEcngjXrHXLPzPMs5o5JKylH3iY6xP0WtdetfiN4Dtfs8ltLfSQxyW//AFzb7teX+VN9qmjlkfzo/wDll/y0jjrSKOGRRvoppbWb7HH++j/5ZS15X448LyXX/PSW+jb95WplTXvHdfss3/8AanhvXLe2/wBTHff6yvoSxlkir5fFr94foGXu9GJ02i1vQ/6yvPPYNC27Va/56R0AXI6PNoAm8399T6Ch1Twy0GxJ5vm1J5lAEM0tFWB+Vevfs56xoMfijWLPUru81LwvqS/Yf+mkf3lqn8Rte1T9qD4gaLp/h+H+ytct9J8y68yT+7+8avuD8xO++IXxf0fxH4X0PwP4o0G6s9Yt9Uhj1zzf9X5P+r+1LX19+xH8B9D+F/i7xRqHh/7V9hvIYY/3km6OtKU+YyPsSOkpnWFPoAloqyAooMoj6fUHQJ5tHm0AHlV5LcftQfDnRvGF94X1TWn0PVLNv9VqEe3zKajzESOy0v4q+DdZhWSz8WaRP5n/AE9R10Vrq9jf/wDHvfQS/wDXKRar2QRkWamqOWQc5DSTbfJk8ylyiuYfh3wRoPg2S6k0PTYNP+2TfaLjyof9Y1btEpc0iT5+/bwv5ov2b9a8rf8AvJo469K+CNrHYfCHwfbp/q/7Nt60v+7sSdvXzt+0N+x54X+N11JrCSSeGvEn+r+3WH/LT/eWs41Jc1wOX0v9jLWPFGqaT/wsvx9feMdD0vy/s+m/6uGvqixihsLWG3t4Uitbdf3cUdaylJhE+fPiZ+zd4g/4WH/wnnw08UJ4a1y4/wCPy2l/49Liq3wv/ZLuovHkfjj4oeJP+E18TW//AB5x+X+7t6vmM+U+kJoq8G+Mv7N03ijxNH458B6v/wAIr46h/wCW/l+ZFeVnCXIVynIa14D/AGkviND/AGHrmuaD4c0mSPy7q90vd5le0fBX4GeH/gZ4bbT9Dj82aT95eXsv+suJKHVCET0Oig3GVHN+6/ePUx+IyPgf9prbqn7cXw5s0m83/UyeV5lfe0dbz+GwE1fEP/BRzxHDfx+EfAekWNtea5rl1RSXvXA+svhz8PtL+H3g3QdHs7GCL7HarH5vlx1l/Hjw43jL4L+MtHT/AFlxps3l1iByP7Fvi2PxH+zb4LkT/WWdn9jkj/651vftTX/2X9nfxxJ5n+rsZKX2jX7JT/ZVtfsH7O/geP8A6hsMlev0faA/O7VNBj1T/go5Dbv/AMs9S+2f98w1+iNVMyCvmb/godKsX7PP3vLk/tSzoh8QH0d4b/e+HdJ3/wCs+zw1p0gCipAKKACnUAFFABRQA+oqAHVNQAx6/O//AIKy+IoU074b6C/+suLq8vKyLj8R+fv9sx+DdQsbi4j821kr2z7VH+7uE2QW9xH5kfmf882rh5Dr5+aVzh/iFf3XhLS/7Qs40vPLk/eRyVzPhfx5a+LbX/R43g1SNfM8r/4mq5TC5a1S6kv7GPVLO482TasnlSf8891Wr66j8b+Db638v/To4fM/7aLWUXYnnPF7WLUvC81vJfx3MUe3/lr/AKuu8sdZ/wCEj0vzLSOSL/tpXdD3zmnqV4fEcP2r+z7ySOK4/wCetV9U8Uat4Suo9Q0u8kijk/d/upP3dElcjktK50nhv45wxeTHrFr++kaT/Sa4v4lXWkz61/bGlyefb6hGv7r/AJ5tWfs/3lzu9p+7scf5skX/AC0/1lb1j4y8QaNDJ9j1K7j8zy/+2m2uuSvE5vs2Oy0H9ozWIv3eqQwXlv5kf+zJHXvHgfxbb+MtBt9Qs98UP+rkjlk/5aV42JpG8ZcsrnUQy+V5f/LWuB+IHwgbxv480nWLPVra2kt/J86OWOT95tkrE05j2CSKPzrj95+5qOG1rkqI6okkNhNLJJs/1dalr5cVrHGkkkX/AE1rI6g/7afvKPll+/JHWcgHWsscU3/HvH50lU9asPK1CT95+7pmkSjHK3/PTzZo/wDWUf62H/pp5lBuU7qW116HUtH/AOXr93cWdeO+LNU+3zQ7JHlk/wBXJ/0zkWujCR/eHlYyX7sdDFJ/Y8kn+tm8z/ln/wAs46tWvje4lkht/Ljlj2xxx16cqVzxaFTlNy61m68LzQ3FvHH5O5o5Ipa7Lwvr03iOx+2eTHF+8rya9B8tz6ChUUpBfeXF5knyVxPjy6k0vQZLizk8qPzP3nl1GG0N67PC/t91qk0P2zy5Zvlr0LwjdSf2XHG/73y/M8uvZkeTSXvXOR17Xl8UeXZ6jG9nptw0cckUX+src1TS7WXRZNHt444ofJkj8qKt+YLc0jy//hA/7G0GO88yP+1LeaPzI/8AZZqteKLqS1tZN/8ArpJPLkpRqXkHsz60/Y38ULrPw5kt/wDlto/7uO5r3LxJ8PrPxvqH9sadq0mleII4fL83/lnJ/vVuefVXvHkOvazrHhLzLPxLotzZyR+ZHJqX+stLj/drD8UazY69o8cf7z+1JKDIP2ebqO18ZXmnpDHFYx2tfSFr+9mjr5/HQ94+1yp/uzoNL8uuihl/d148j2y1a+ZVyGWrLLHm0tQUSpVz/XUAOtYlqerLiJHTZKDUWigD83tP8R+KPAfhfTfFD6lJrlv4wvLfzPtMe37PtrrPiBa6P8Fv2jNL8cf2T/xTuqQ+XeXMcf8Ax7zV92fldzzf4reBbP45/tFaxY+F9Ug3Lbxs1ffH/BPuw161+GepR+IP+PjT76TT45P+ekcdaUo8oj6o82nUzrCigAqWrICigyiLHTqg6ASigB9YHiLwB4X8ZH/ieeH7HVZP+elza7mpqXKRI4O+/ZQ+FOqf63wfaRf9cqwZP2Lfh3+8+xya1pUf/PPT9SZav2oRiZf/AAxbDa+XHpfxO8Y6f8v/AD/VDN+yh8QLW1jj0v44eIYv+vmPdWn1iPYOQd/wqr9oLRv+PT4oafrX/YQs6h/tD9qHw/5e/RfCXiWFf+ec3l1OhndnqHwL8b+MviD4RkvPHPhf/hFdYjm8v7NXpNQ4cshjLyytb+1kt7yFLm3k/wBZFLUkcSxRxxpH5UcdZ+RJwPxq8L+MPFHh2O38GeIo/D2qRzeZ5vk+ZXktr4R/aYsI/LTxl4evP+utrWkZx5bgI9v+1Fp33JvCGq0+bxR+1BYf8yX4S1X/AK5X1bqUHuESj/wt/wDaMsP9Z8FdM1D/AK9tWq1/w0t8WtL8v+1PgPq/k/8ALT+z7qOSp5TPmD/htK6tf3mqfCfxjp//AD0/0WrVj+3h8M/M8vUo9a0X/r7say5Lk8512j/tc/B/W5Pk8daZF/18/u69G0vxboOs+XJYa1Y3nmL5kflXS0SpdzSEjY82m0G4V8p/8FCPiD4g8JfDXTdP0OSfT5tYmaOS5iqY/EZH53/BHxveWHx+8E+JLya71Xy9Sjt/3tftx5vm/vE/1Mlbz+KwHgf7c3xG1T4afAPUNQ0eTyr64mjs/Mr4P/Zs0HXvDn7Snw78SeOo57zTdc8z+z76W6+1eZWlJe7cD9cKzde1Sz0HRdQ1DVJEi023t2kuJJP+edcwHxj+wL8X9Bv/ABR8QvB9nfRxWMmrSahoscv7vzI69u/bSlki/Zl8af8APTyVqre8a/YOs/Z3iji+BfgnZJ+5/sm3r0as/tAfFdjpf/Gx+aR9/wDx4tcV9r1UzIK+Rv8AgoRqMevaX4B+H6NL9u1zWoaIfEB9aaX/AKLpdrb/APPOFY6npAL5tJUgLHUtABRQAUUAOooAKKACigBPMr8k/wDgrLrfn/Hzwnpvz+Tpei+dWRcfiPhvXvFF9r2gx6XefZPLs/8AVy+Xtkr2TwP8UNBuvBv2O8m/sq+jj8uP733fu1fIY8/LG5wsfxL8RRXU2n3l1/aGl/vLeSL/AGf+ekdXte8OQ/DnUNF8SaHJJLptxH/y1/ef73/fVTym1yvDf2uqQyXGnSSSx/8ALTy/3dN0vxlDo2vfPHc+TJH/ANs9tc0qdiuQ9Gkv4b+xks3+yarayeZJ/wAs2+7/AMtI68V1TVJvBvii+/s64trzS7hv9X5nmR7WrWHuHNuTWMtn4ytf9JhSKa3b955cn+sjrsPAfhyz8R6LqWh3lx/pW5fs/wDz0rSKuRUlaNzyXVrCTS9YvtPeT95bzfZ/++ao2ss3mSR0X6m1uh1ngm1s7rXo49R8v7LIrR/vKuX3hezi8cSaWlxbW1jJN+7l/wCWfl1vFXiL7Vi14i+EupaND/rk1Gb/AJ6xSV6h+z79s0u11bR7yxubT999ojl8uvPxJvGHPG561DLH53yR/wAXl1etdZ/0X/lnXmGnKbWn3/2/7nl/at1O/tT/AJ+I6wmjqiXrW6klh8yrn2qO6kk/d1zHUTR0fN71nIA83/VyPHRdf8tKZpEy5JfNqG62y/u3/wBd5lBuU4d0U0Nwn72S3avNfjdoMmg+LJNQTy/7D1z/AEiz/wCmcyr80ddGEl+8POxkP3Zyul+I5P7HurPy/K/5Z+b5dZ8MUf2q3r6COp8xblOsvtZW6jvLO48v+GT/AKaVrfDjWW0u+urP7L+5k/eRyVy14r2NzvoVHGRreKPFtnpccMaataSzSRyfaPK+by64vWviNpsul/Y7e1kljkh/2f3clclKlY7K9ZnN6L4DtfJs7h76T/np+6rqJvs8UnyRx/Zf+Wfl10SLpL3bnm+taDJ9qks0h/6aR103myeTHvj/AH23955VYcwW5ZEOtReb9+P9zXF+LLCS/tbj93JL5a+ZHRS1ka8x2H7IPi2PS/Ekmhv/AKy8kjr7u0G/hlsY4/LSK6t/3cleoedVXvHQafLHf6fcWdxHHLH/AKuSKT95HJHXB+OPgt4XuofM06zn8PX1x/rJNPupPLrO5xHm/hf4N/8ACJeModYt/E39q2vzfuvL/vf89K9usZfNj8t/9d5nl14+Ol7x9ZlT/dnTaX5n/POt5K8OR9IWoZauWsv7mOOrLJvN/feXU9QUFW46ADzam/11WXEWpqDUKKAPz+/aCv4/G9jD4D8H+XeeKtLvvtnlRVk/DXxHrHxk8E+PNL8fxv8A8Sfy/Mj/ANXJHX3sT8r+zY4/wH8NPFXw0+y/GDSJLTUNNkuv3dt5n7y4tZq/Uj9lu/bWfgrousPY/wBnzapuuPLrS94l/aPX6lpG4PXL/EL4l+F/hfov9qeKNWj0qx/56y04ayINDw34p0vxloNrrGh3yahpt4vmRyx1rebWs6fJoZXHebR5tYy+E1iWEopcwBRTLChKAH0UAOpnm0ALVigxIpJaSgAqWOgkjkpKACigApfNagAk/e1n6hoOl6pD5d5pdref9dbeOSrA4fWv2c/hjr37zUfBOkTzbfL/AHcO2vNdU/YF+F8snmaX/a/h+aP/AJaafeVpCo6YE3w1/Zf8RfCr4jWOsWfxM1fXNDjWTzNN1T95X0NWc584D65b4jfDnQfir4Xm8P8AiW1j1CxkoA+afD/7AGn6X4i0+Q+LrqfRbO4+0f2f9nWvr6GJYo44/wDlnH+7jom7gc74++HOg/FDwvdeH/Eln9s0u8jr58+Ff7AGh/DTx1pPiS58Talr0ej/ALzT7KWhTsWfU1cZ8avBN18QfhL4o8N2cnlX2oWLR29Ihn5J/Dn4N+PPDnx+8L6emk3dnq1nqUMknl/3Vk+Zq+qv2+f2jNe0a18QfDvw/YweT9jX+1LuWu6UlUZPMelfsC/Hez+I3wrtfB7w/Y/EHhe1jt7j/poterfHT43af8DPBsesXkMmoX1xN9jtbGOT/j4mrklT94v7J8d/BH43R/HD9vOz8SWekyaf5mjyWckdfoxnFXKPMI4H4qfG7wf8G9Bk1DxLq0EX/PO2/wCWklfOP7OvhfXv2h/jJdfGTxRZvp+h2f7vRbKSojHkA+zo4vKpayKCljoJJaKACigAooKCpaCQplBQ+o5KCRa/FD/gpBrK69+1l4q/552cdvp9BR8l6huik8t9nneZ+8qGOWP+OlLWVySSOWb+CtC617VPsv2P7dP9hj/5Z0wuSeA9bt/DniSxurvfLY/6uT+KP5qm+IUscviSb+zpLaWx8zzLeWKPbWP/AC7sTH+Jc5mGVovLkSR4oY6Lq1upZvMe3eKSq5Pdsa8w2OWTyfk/1nmV1Hh2/vr+6+2JqElnfW6/62Ks/tkSM3WtL1LzJry/m+0zXDf62s2GLyvMj8v/AK5yUS9yRUSxaxSSxySf62GSOui8OxNrN1J9o8yfy4/MrWOgHon/AAmWoSzQ/ubWXy41j/uyV3Gl+KIde0uO8t5JP+eckXmf6uvPxMbyHTj7o6HWWik/55f89Kufb5L/APdpNXn8p0x1N6HXvsvlyW8j+d5f+sik21sf2pDLa/8ATSqsVTJNF17yvM2VatfEcP26aS8k/c/8s64eU7rnYQ3Vrf8AmfZ5v+Wf7yKrHlRxfvEkqJo0D/nj+8qrNu8v975f+r/5ZR0h2K8kX+lf8B/1dVf3ktB0wRVrm/iFFNr3w9vrO4h82bT2+0Wvl04z5ZGVePPTPDY5fKtfLqx/ra96/unx8dJBdSyedJ5v72aT/lpXceJLBZfCOk6hZ+ZLb/6uSTzP+Wi1ruWee3V03nf6ySPzP9ZWbNL5X7xJE/d0gOq8G391/Zclu8kcsPmfu62Jpf30eyRK4JanrQ0iVZrqP95Gk1U/3kU3/TSsre6EoXIqwrr91Jcfu61paSKOH8Iy/YPEk2oaXH5UMflyR1+hXhHVP+Ej0Gx1S3j8qO8h8z97+88uSvQiziqo6jR9ehsL77PeSJFNJ/x7y1e8WbtZ0eTf+9t/Lk/1X96p+zY5D5b8ZS/YPEkf2OZ7P7HN5kkVfRXhfWf7UtbP/nt5ayV5+Of7s+hyiVqh6BYyr+7rcg/1VeAfVxLUMtWaDQnjq/QUOp6VlYCxRRY1uTR0eVWpZJ5VFAH5Y/AXWW0b4yTeOLyzSXwfeX01vJc/8+f92t7xZ4j8Ua98ZPH2h+ALz7XNrEjfavK2+XIu2vvYn5X9qxV0H43SfD74D6l4D1zw/dy+JLORrO1ilj2x1+tHwb0ttG+EvhOzf/XR6bD5lFN3iX9o7KOn1ZuPr88/+CnWl6xLr3g+8eN5fD/l/wCt/wCWfmVVDWRB5v8AsN3XizxH4s1bwnofxPuvCvl2fmWen+X9qjkr60h/aF8VfB7xtH4X+Li2ktjef8gnxNp8Plw3Feji7OpY5rnz74o/4Kd+IIvG3l6H4ZtYvD9vcfvPtM3+sr76+Gfjyz+KHgnRfFGnQvHY6parcR+ZWEqXunTE6jzfKj8x/wB1HXJ2Pxk8B6pqv9n2/jLRZb7d5f2b7ZH5lc3IB1lFQWFS0ATUUAFMoAfTqDEbRQA6igkKKACl8qgBKbQAAE9qftPpVALsPpTfLb0qGrgIUI7GkoSsAUVoAUVne4BRRKNigorQmRB5UMV19o8lPtH/AD08uvlX9rL9jzUPi5rDeLPCl5bQa5JD9nurHUP9XeR04y5SeUwf2J/2S/FXwW8Wal4o8UfZrOa4h+z/AGG2kr0j9tL4Lax8X/hzpcnhpfM1jQ7z+0I7L/npUyq+8X9k+V/Anwh1fxP8ctFuPhPouu/C++0+xkj1jUtZta9+vv2Z/jd4q/d6p8bp4If+mVr5dbSnyiNjwH+wf4L0HWIdU8S32oeNtYj/AHnmapX0pZ2sNhDHb2cMdtbx/wCrjirCU+YCWikUOooJCrFABRQA2igoKdQSFPoKCmUEiR1+Ef7UGs3Xjn43fEi4dv3P9uXElvQUfOeqWt9YeXJd6e9nTftCxWnyeR+8b95+7/eUo6xuSO/1vmbKvaPo02vX0dnp3+uk/dxx+Zt8xqZncNa0bVPDl81vq9jc2c1vVG1iW6uoY3j/AHckn7ysfIqPc9U174GfaLWP+zppPMk/1cdEejXUvgPULfV7X/ibWa+Xby/7tcnt/esdXIePzeXVyxv5LC6huLeTypq6ftnPI3NU8W/atLaz+yp5kn7z95XMw+Z50kf+q/d+ZRL35FRNbRZZJZpI6p/b5rDVPtGl3EkU0day0A94m8W6b/wgdrqmr6T/AGhDtj/d/L/rqPC9/wCHZbW4k0iTyvtCxyfZpf8AlnUVY3kOnL3TamiaoZt0v35K8qx00tTSj1maKP5JP30f+sk/56U6HWZrXyY/L/c7qkqmb0evR2s0kfyf6uquseLdL0u+/st7qP8AtK4/d/Zv+elY8qOq512j69HdWNr+8rY/tTyvvyVyVEdBqR3/ANqh8z/VVXutUk8zy6yNrHA6p8S76w8SX2+T/WXHlx+bHHXcQ3Xmx/PH++8ugzp1Akl/1kjx0211SGw1TzP3f3v3n/XNqcYc0jSc+WmeM+MtLXS/iZqGl+TBeRyTeZH5f+r8tq7S68OaXqkckj6fH9okj8ySSKOvav7p83KlaR5brEX2W+kt/L/1f7umw3915f2d7j9z5nmeX/00rpp6nKYuvX80UM0kcf2yaqvwr15vFGvXVncW8fmSQtJb/wDAaQHffYFtbqb93HF/z0qG6l/5ZpJ5VxJHJ+8/1nl1wR1PW2ieY6fdXX26PfJ5v7zy/wDrp/00r0TzZJfvyP8A9NK05fdCM7lfzVqrJF++j/1f7us46SKOFurVdL8XRyJH5sdwv+qi/wCWdfU37KPjJb/T9S8H3kieZHJ/aFrW8WZ1UeteLrCHWdLmjuJPK+x/vLiKvJfEn9saNffbPtmof9/P9XW/2rHlmh/wkehyw/6ZfW0U0kf7yKWu6+GevWOqQyf2XeJLbx/u45a58dT/AHZ6uWStUPXtB8yKPzLmSukjuo5fL2V8wfbxNCGX/lpTvtUktBoXof8AUipIZZKCixU0f7qlYCel83+/RYdy5HUfm0zclooA+Lrrw5pOvfBG6uEjeL+0NHjvJI4v9Z5y15j8F/hza6NfeHfihZyJZxxtNZ6pbfe/2fMr9DPymJN8VvsPxB/a68J6Hb6lHLD5dv5kv+s/2vLr9cLWKO1tYbf/AJ5wrUGxZqWgsK8L/a+8b2fhL4UzWdxpNr4h1jXG+x2Om3Me6ORqi1wkQ/ss/sq+GfgZ4XsdQ+wwXnjC4XzLzUvL/eUftueDYfEf7PurXH/LTR2j1C3ql71QykfJv7SX7KvgGw/Z9sfiZ4a36Vq15b2f7rzv3MjSV7R8Jf2bvjdo3w50PT4vi9H4f037PHJHZW1ju8ta3taVwiaHxE/Zz+LVh4F1a8074za9rWpR27SfYo7f/WV+Zuiy2ug6peXmrxveX0cMkf7z/lnN/tVtTxCUij72/Zl8eftJfEv4S6bqmh33h6TTY/8AQ7eXUPmmkr1bzf2rrD/ln4L1WnUa5hRRT8SftS/Eb4N2MeofEf4X+Vpsf7uTUtLvI66DwH+3r8KfHmvWOn2d9dWP2z935moWflx+ZUKl7TY0PpDzf7klLXNULMbxd4t0vwR4bvtc1e6SzsbNfMklkr5t0f8A4KHeB9Zvrr/im/EP9kxyeX/bMdr5kdawhcymfTWi6za+I9HtdU06aO8sbyHzLeWP/lotXoZazjG8iB9FMAp1Z2voAUVnH4gCpq1AaVB60uB6UALRQAUUAFIQD1GaAIpItoyOnpUVUA+l2n0NMBKKCgooAKKguIzyqfQEhnlU+gIhRQZSCigofHUtABTqB2Cig1H0PQQMooMgooAKbQBneJL9dG0HVNQf/l3s5pK/nvj15te1TUtQuI5PO1C6kvJPNj/efvJPMrGfwlxR1X7mXT5PNhSWP/pr+8q1qnw0sfEfh2SSKH7HffZ5JLeOOOuOMrSN4ngsNrdSyeWlv5fl/wCsj8v95RDdSWF1Hcf6r7PJHJXdF3icdvePqC1utN8ZaDHI8keq2skP7z93+8jkauVj+EtroN9HeWd08X2eT/Vy/N5kdebialqh3UqfunVf9NE8z/npTf3l19+T+L/dkrz4nVJHmfjb4fWP/IUj32cm7/SP3n7uSuB1rwRdRSf6H5csO3zPN8yvYhPnPKkcvD/q/wDV1NDdV0cpXMXNLumiuvM/1Ukf7yOSjVNVbxBdR3FxDHFJt/eeX+78yqv7pBoR6yt/4R/svzJIpre48yP/AJ51TtdUutGvo9QSbypP+mUlIo9u8B+N9P8AEel/6RHHZ30e2PyvL/1ldVHYRxf8s/KrzsT7srmsGaE1hDLH5ieXL/1zqH7L/wBM/wB3XKbcgSRR3X3/AO9XI+NvAd1r0mk6hp00cVxZt+882TbJH+8oNIo9I0eWa68z78tak0vm/wDLSSuaauddPQuaXu/eeX5cU0a/8tf3dNur9ovMk8z93JXPHQ35bGLdeHNLv77zLi3eLzGkkk8v5fvV1Ud/5U38Hnf6vzJaqU7kRSQahf8AmzR+bJHXlM3xGvLW+mt3s/8AQY5pI5P3db4aDkYV6iRpapLD4jj0XUP9RfW8cln5kla3ijxRD4X0GPWLmPzY9vlx/Zv+WlelFXPLj7srnmeoayuvTf2gkj/6RH5kdUfN8quk4ZfEN8qHy5I7j/VyLJ5nlVyfhOw1Lwl4ih1hPL/0fzP/AB6qCJ10fii6/tj7Y80n2Xd+8tov9XU2teMrXzJI7OPz65uSx181zlbWJf8AWf8ALTzP3dEOqXkV19o+2SS/8s5Kz3A3vDesyXXnW/7uXzP3klaUlcsjtpowdUsPtU3mVqeDfFs3gPxRpOuWfmf6HMskkUf/AC0j/wCedXTNKh9teKLWTx54N03xJoUMcsckP/bP5v8AlnXm80trr1j5bx+VNJ/yy/55yLXpU9alzwaqON8ReHLO6tf9Ih+2Qxt/qq7D4I39rpcN9ZpH5Xlt5kcdXi1fDyRWBdsRE+iNL/e2sf8Au1vWv+pr4Y/T6bNLzavQ/wCr/wBZUxNAhlq1HL/frUC1/wAsqdHVgWkqWgC7D+6okoNbkcktFQWfnX8WpfGWqap4d0/wX/x629r/AGp5VteeXJJD/wA85Kd4u/aH8L6z4T8caOk13p815Z+ZZ/u/L/ffxQyV+hn5TEo/sM+EtH8efGS1k1TTZPtW6G4029kj/wCedfsFUGw6OpqCwr5ZuvL+NP7Z/wBneP8AtDw/4Ds/+2f2qnBXCR9R15t+0t5MvwD8efaI/Nh/suapj7lQykfI/wATPFul+I/2c/gb4Xt9StLvVtQvrGOSyikr78sYvKtYY0/1caxx13zVo3BDpv3VeS/Fb9n34b+MtH1jUNc8H6ZeX32eby7ny9teZy2kUcH/AME94vK/Z9j/ANX/AMhK6r6e+X3repL3i4o8j/aq+Dd98bvg3qXhvSPL/tL/AFlv5knlxyV8A6Po3xa8L/D+++E958PZ5be8k/0eX7H+887zPM8zzq6cNVsB+m3wz0vUNG+Hvh3T9U/5CVvYwx3H/XTbXW1y1Czzz4/fDSb4tfC/WvDdnef2fcXC/u5a/LGbwH8XPhp4uj+GaQ3NnfXkcnl20XzR3kLV00JXMqh+hU2s6p+zJ+yPa3F3aveavo9jHH5VfEOj/tufEzS9YXWNU8YTyyfaP3emyWsf2Ty60pRvIg/VTw7rMevaDpuqJ/q7y1jkrRrjAK80+P3xnsfgV8Ob7xBefvbj/V2sX/PSSnBXqWA+Yvgv+3L421DzNc8Z+H/N8DyXUdn/AGlp8f8Ax5yV90xyrLDHIn+pkj8yujE0VSkBPRXIAUUAFFABRQAUUAHWq5HOKaAlSMDk8mn0gGugYe9Q1SGgplMY+ioLiFOoCQ2igIhSQxUGUhadQUFFAE1JHQa2H0UDCiggKKDIKbQAU6gDyb9rDxA3hD9mv4kawjeVNa6LceXX4Q2NrHYQx7JHrGfwm8UelQywy6XD+8/c7f8AlpXpWj2seqaX5lx5nlyQ/wCz5leNKVpFxPFfC/gjXvBvxMj1R4/tlv5kkclzbfN96sf43WENh42/0ez8qOS3juP3X/LTdXp0pXiRy+8bnwDurWW11DT/ADvKkkuvM8rzP7tereV+78t5K8zGK1Q7qT90bdWvm2Mlx/zz/wCWUVZ8Pl+T5f7ysImskZevWDXXhu62bPOjkjk/66V53DF/pUflw/vN0db0J8pxypHTeLPhppes/wCkW8cenX37uST/AJ515fr3w01zRpvL3x6hDIskkckVepzmPIcb5UkU3+kL+8jb/VS1NdSyf9/P3kdXf3TnG/6unfao/wDWeXVlFix1RtLuo7izk+x3G6vdPA/xB0/XtFjs9UmeLVo/+Wsv+rkrOrS543HBnoWl7vLjuE/5aLJ5cVF9a/vPM8yOvIO3mK8drH5fl/u56kmtfN/5Z0GsUFrFJa3VbH/LP/pj/wAtKytc32PPfEnjya11STy/+PfzP9X/ALNddHrP2ryZPL8rzK1lSscs8RYwb74jXFhrUlulnbS2P7v97Vrxd8QZNLurP7PD/osixyeZLJUxoXOOWJaM2++Ja3+l+Wn2mW6k8z97XMzSzSzR3n7zyZP+WtddKHIYe0dQ9A0H/ic+EfEmn/ZXl1iSx8y38v8A5Z7f+edeG+A7q+8ZahNob6lJFpckLSeXL+88vbWtJXNqvuxudRYxWsWn2v2fZLUd1u86tThl8Q3zY6qyVQRKcnmfwR1paX4N1K/8y48t/s//AC08qs6krHXTjcPFGgx6X5P2b/Uyfu/KkrDjsLqWaOP7O9csNQOm0XQZtG8y4vPL8yTzI/KjrU/d/wCsrmkejBFO6i/c/wAdYsPmfbvM8z99/wAs5aumFQ+hv2Y/i1Z+F/En/CP65J5VrJ+8s5PM/dxtXbfGjWbGw1i11jS44Ly1uJPLk8v/AJaV6VDXU8Wqjk5r+HWY/M+f/wBB+Wrng3VJLDWIY32fZd3l/wDXPdW9dXpyRjhXbERPobQbpfL8uursa+CP0+DL1TxxeVUxOgtQxfvKs1qBP5lSRy1YFrzamoAsQxVNHFJQO5HNFRUG5+Yfg2XxJ8Ofih4T1zV5JNV8I6f9os/tOn7v9Hho+K3wg0HWfCcfxM8KX3kabeXE0l99rk/1m6Sv0U/Lec+uP2O/hp/wgfjix0dLxNQ0u3X+1LHzf9Zb+Z/yzWvuqs5BEKsUjUhupfstrNJ/zzjkkr5z/Yntf7Z0vx14wf8A12ua9cU/sgfR0leP/taazHo37Ofja4eT/WWPl1jH4jKR8Z/Ez4D6Hr0n7P8ApdvHc6Hq2uWvl3l7bf6yPbH5lfSVr+zn8ZNL/d6d8cLqWx/556hY16MaiUQpo1rH9lXXtZk+0eNPix4h1z/lp9m0+T7LHXSfH7Xte+EvwVuP+EU8O3PiXy4fscn7z/Vw/wDPSsJ1Od3Lt7p8v/sg/th+A/hf8IbPw/4lj1eKaO8uP3kdj5kNfRlj+258I7/yfs/iB5ZLj93HH9hkp8vMUe7Wt1Hf2sNwn+pkXzI6tViWFFAD6+RJJV8R/wDBQ7y03/8AEn0OtIEH0t8QvBGl/EbwjfeG9Zj82xvK/HH4vfC+PwR8aNS8F6HeR6r5epRx2dFL4gkfoJ+zv8ffFGg+LrP4V/FPTU0XxF5PmaXfRf6u8jr6u82iWsrmQtfN37dXwb1r4tfCu1/sKPzb7R5muPs1RD+JcD4V+A9h4s8W+E9S+Heh6Ldf8VBq0cl5ex/6u3WOv100nTZNL0Wxs3/e/Z7eOP8A75rrxdT2jsZxL9FcZoYni7xv4e8AaUuqeJtc0/w/pzSpALvU7lLeIyN91dzkDJwePQE9Aa1ra5hvbaK4t5Unt5kEkcsTBkdSMhgRwQRzkUAS0UAFFABRQA1mCjJqOFcsWNMCaikAVWkGHNNAPVC30p3lD1pANZCvuKbQUFFBYUUGUQooOgdXzB+1v+3Ppv7LXjPwt4ebw+/iK41GI31+sdz5L21qXKIyZUhnZlkwCQP3eMjdkJuyuI97+HHxE0L4r+CNI8WeG7wX2janD50EuMMOSGRh2ZWBVh2IIrpKZnsSx0+gdx9FBoMooIkJzS0EBTaACigk+Vf+Clet/wBi/sm+JLX/AFc2pXFvp8dfkFaxSSzQ/wDPasWdNL4TrvKaK1+z+X5XmR1614Xlki0Gz/5ZRyLHJXkVdTWJg/ECKOLwTr1x/wA87eST95/er5dmv7q/8v7RN5vlr/z08yunDO0bGNV+9c3vBvhfVNZkk1TTtnk6fNH5nl/6yPdX0tDf29/DH9jk8392v+sj2yVy4tWNKEbEnmr9q8v5POkX/VeXWTdRfvpP3n7nzP8AnpXHF2Ou5n2N/by6hNHbyebdRt+8/wDiaNQi+36XHZvHH+7bzK2vzGEUTTS/ufnqP5opo5E/5Z12DjE53xJ4I0fxHdR3F5viuv8AnpHXiPjLQZPC+tTWbyfu/wDl3k/2a3pSMKkbnP8A/LP/AJ6+XRJFJF5e+Pyq6+W+pkTQxSRTRyfu4quebH9qhkeT/pp+6qooD2LwH8ZFtbqG31fy/J2+XHc+ZXqEOvLf+X9o8uLy68yvSvK5vSnaNi5DF+7/APRfl0Vzx0O6Oo7/AFUdZeo3V1Fa3kifupo4/M/1dZRV5BLSJ5zNf3Xi3VI/tEdtFceT/wAsqm8Zazqmg6Lp/wDZcn763Zf3f+srspo8WbLE0S38dnqFvGn+mLHcSeVVXXtUj1T7H9zzrdfLkiirflOcybWKSW6+eOvSPA+qWNrHa6e8n+leZJRORtF3O60G6+wapDIkf77zI68F17wRD8OfF19eeZJ5dvNNHJF/y0+ascNVtI9CvC8S18F9G/4SjQdWt7iSOKS3uv3fm/7Vb2ofC/XvtU0dnHHqEkcfmfu/lrWU7HHGg5HL3UUlhJ5bx0RxLLdW8byfud37yq3OfaVjvJIobCHy/sdt/wBso6qxyrLJ5dvJ/rP+ev8A47Xkz+I9elTtGxm6ppf9sx+XcTRxeXJJ/wBs5KbHYLpf/HnI/wC8j8uTyv8AlptqYlcnvDZKhm8zzv8AyJ5lalFPVLpbW1kk/wCWlYN1K0t15iUEyDUL+4i/eeX++j/eR19DfCvXtJ+IPgm8s3htLPxFHN5klt5n7uRf+mdd+GlY8+urxLWqaNdWvmSfY/8AV1V+y30UNneSfuo/Ojrrqz908ql/EPpDwjdf6Lbx/wCthj/5a121jL5VfESR+o0I3pm1DLVqOiB0jv8Alt8lX6CiWhKsCxVi170AXvNq1HLQASRUUAfnb8B/FFroPheG31zZ9h1i+kt/+vfzv+WLVizePLPQfAfxK+EdvZ+VfR6lJZ6P/F+7aSv0I/MeU+vP+CfsWrfYb7R/FdvJB4g8N262fm/8s/Lr7IrORogp9I1K19Yfb9PvLf8A56QyRx185/sM6pHYeCfE3g+X91qmh61cR3Ef/LSn9kD6Xr5k/biuv+Ej8O+F/hvZzf6d4o1SP/v3HWMfiMpGX8UNGWw/a0+Buhp+6tdPsZq+r61lpE1pofXN/FCXyvhz4o/7BtxUW5Y3Kt7p4j+wno2l6z+y/wCF/wC0dNtLzzGuP9bDG1e9WPgjwzpd19os/D+mWdx/z0jt1ro5uUk3afWRYU+gAr5A+BsUniP9ub4uap/yx0+zjs6uBB9dSf6mSR6/KPwHF/wnn7cUP7vzY/7euJJKdL4gkfaH7YXwqk8UfDmPxRocfleKvCcn2y1kr1D4I/Eu1+LXw10fxJb/ALqS4t/30X/PORaUdY3Mj0KOs3xXf/YPC+sXH/POzmkqYdwPB/2D7WOX4Ix6x5afbtQvriSSvpGpnpUsZxCnUzQ/M7/gsVqMh1X4XWAlcRLDqE7RBjtJLW6hsdM8MM+5rvP+CTXxa1Txb8OvFfgvVLqa8Tw3cW81g87lzHbzq48lcnhUaEkDt5h7dMtp2K6H3nRWpIUUAFFAEM45Bp8K7Yx+dPoA+ikAVHIMke9NAPA2gClpAIRkVCyle3FA0JRQaBRQZRCig6Ar8Z/+Cm2tNq37W2v25mEq6dYWNqqj/lmDAsu385SfxrOewmfXn/BJS+vbn9n/AMSQTOXs7fxHKtuD/CTbwM6j2yQfqx9a+5KqOxlPRBRVE3HUUHQFFBEgooICigBtFBJ8Cf8ABWzxV9l8F/D/AMO/637dqUl9J/1zjjr83Y/+PqOOX97WUjppfCbUN/HFdeZcRp5fzV694Xuob/QYf3flyf6uvHlqaxHa94c/4SPS7zS3k8qG4/dyV4D4y+BmueHLqT7HHHeWP/PSnSdpWN6tL3bm98F9LuovDviS4s5v+mf/AHzH81aHgn4taXqkkNu8klnqn+r/AOmflrXdOl7Q4YTscP8AELx5qmjePLy40PVJ/J8uOOSt7RfjJa6p5dvq/mW3/PS9i2+XuqZYZIXtSvoMsOs/GyNbZvNtdvmNXrF1YRxWMl480fkxtXJUp8hUahyMPxQ8Nxbo/t3+r/dyeba1tafr2l6zDJ9kvo5ZI/8AVxeZVmkZlPVLq4sPMuEs/wC0Jo4ZJPL/AOeklfPuveI5vFGqSXl5/wBc44/+edb0ok81zDr1rwb4c8M+I/Df2i8jeW6j/wBZFH+7+at68/Z07mQXXwv0+W1k+x3X+kf88q5HWvhz4g0uOHfa/bP+udTGoBjzWCyx+X/qq6Tw3481rwlN/o919sjjj8vyrn955dbVNY3LjG0rHuHw58Wt4y8LzXl5J/p0dx5ckddNH/ro/wDnpXjS0PSpajbr97+7qj+7/wDacnmx0qSvIKukTlfFFhZ6DfQyad/oc1xG3mRVzd1fyS3SyJJ9jmj/AOWf+srsgjwajNLw3dWP2W6s7zZF5fmf6r/lpurBhi/077P+8/dzeXXZYzPXvssMun3n+hxyySfvI/MjkrzfQYv+J9Ds8v8A13/oNZTgVSdz2i18y1kjkST/AFf7z/Wf8tK4H9pCwWwvrW4+1PP/AGxHb3En7uvJj7sj2akrxNLw3pej2F1NeWcKRfaPL/1UldF5skUkciTSRSUVZ2OjDRUjzv4gaXN/wkkl55f7uSOOuXk0vUIvMkSPypPM/dyRVvTq3PLqU7VrHfXUvmzeY/7rzP8A0Kofml8yR98vmf6yuWfxHpxdpWKf7zy/LT/npUPlSf8APP8A8iVMSOb3iGT/AK6VD/ra1JM3VP8Aj1m+0VzdrL9q8uN5P+Wa0EyNTyvNq1pfihfCU0d5pf7q4jatqUrHHNXifUng3xR/wsvwjJrGl77yO3j+z3FtJ/rPMre8Lyr9uks/MgiupIf3kcsfl/dq6s/dOOlS/eHWaPfyWt9HbyeZ53/LT95/rK77T7/zY6+dkj9Awk70zYjrQtZazgdpeSpvNoKLSU6aKrAIYqvebQBYq1HQAeb++ooA/MX4taN/wjnw98O+E7fy/O1C8jjjuf8AU/Z/Ljj2yNWfpfwv/wCEj+EPiaTV7G5i8faPcLceVczf6y1r9DlG5+Y8x+jH7DN/Y698KY9cs7OSzhuNtv8AZpf9ZHX0hWUjpiFPpAS18q/GT4aeKvg38VJvjB8N7H+3Ibz934i8O/8APaP/AJ6R1cHaQGp/w3X4F/sv59F8Q/25/q/7Gl02TzPMrP8Agj8PvEXxL+I03xk8eWv9n/8ALPQ9Gufm+xw1n8AHjP7UH7SOg6D+054P1zw1q1rqt9o8M1ncRf8APNpJK+/tFuvtWl2Nx5n+shjkrpl8JlF+8WvMrlfi1+6+FPjCT/qGyVzbmp5P+wXE0X7M3hf/AHrivoZK0n8RYVLQA+n1ADK+Tf2N/Lv/AIrfGbWP+Wn9reXW0PhkQfVl9L/oN1J/zzhkr8uf2Uol1n9sS0uE/wCWl1fXFVS+K5kz9SJrWG6hkt7iPzY5P9ZFXyT8B7qb4C/tIeLPhbdfutD1hm1DR/NrKIM+va4L48X8lh8FfGlwi/6vTZqmOkgON/Yn0v8Asv8AZq8Gxp/y0tWkr3eioAUUgPyx/wCCv995vxQ8BWuf9Vo0suP96cj/ANkrrP8AgjrabLf4r3hGd76XEp+guif5rWX2y+h+ke2krUgKKACigCOYZAHvUlABRQAUhGWB9KAFooAKQjNAFeRdjY7U3zaoolRWcZPAp/lD3qRXGtFgZHNMVi/QUGqldXJBF6mvwV/a717/AIST9p74nXm/eq69dWqtnOVhcwj8MRis57E3ufpL/wAErNK+wfsuyXG3H27Xru4z64SGPP8A5Dr7Ijqo7IGLRVEjqKCxtJHQQPptKMrEhRTAKKAPys/4Ks68br40+FdKG/7PpukE/mc18d6La/6VJJ/rfLj8ys38J1R+EmvovtU0f7uSX5l/1deqfD21+wWM3/LWTzvMk8yvGkdNJHUf62pv3ctrJb3H72GRfLkj8zy6w2idp4DfWusfBvWI7fTta83S9Um/d+ZGv7z+H95XA+OPCWpeEvE01nfx+R5n+kQyR17MH7p4VRckjBm2+Z/rI/3n/PSuo8SfD7UNG0G31R5IJbGRa35+WVzORh+F/Ft54S1pdUt40uZv+Wnm17d4u+Jel694Xmt/7NfUIbyFf737tqzkrlnhtr+6uv8AnlNJJ/y0rtPBujR+ZfXksMn2Wzjjk/dx7vLrmsaxdin448W6hdRwx2cdzp+l+Z5kcvzfvK4GTbF+7St46mRNHFDFNHW54b1668Jax+6/f2Mm2OSOT/V/NVS+ECvryXXhfxRJ+7ks/wB55ixRyeZ8te/aDqcOvaPb6onmeTcf8sq5qi5Ylx0Kt14N0fWY/s9xpsfmbo/3kd1/yzqjdfCDwva/vJJJ5f8AWf6uSuaLalc3kzS8L69peg2Mej+XJF++8yP/AJafe/vNXZfb/K8z79KouU2pS5o2Kcd/9vm/0ePzah1TzLW1muEj/wBXH5n+rpUo2CvUTPKbrWZpf9MvJv8AWVTj8UWMv7x5vKjr1KSPLlqb11dR/YYdn/LT/lrVE/6mOrOY1IfEd5FD9nST/ln/AM9Kh+1eVNHcJ/yzbzKiSuB6Na+N9NuoY/8AV2f/AD0q944+y+N/Btr9sh+2fY5vLkuZP9ZHHJ93bXFUiepCfvGPpd0trDHb+Z/q1/7+VvQ7Zf3nl+bXnTmetSfUmm/ex+XJH5vmVRutGhih/wBZWBUmYs/+qqnN/wBtKDAhm/dQ1Vhl82ST93HW9KIpSsU7rXrWKxk+/wCd/wA8qybHVJrr7RHcf67b5la8hzc5a161k+wySRx/u/MWuPjl8qb/ALaeXVQRhJmxH/sSeVJ5dc7deZLN/q5P3daE3O++CPxpvvhB4k8x4/N0u8/d3EdfUHijWdL8W3VrHp0yS33k+ZJ5f/LRa1j7xyVdImt4Xl+wahZ/vLr7V/yz/wCee1a9g0fzIof+un7yvFxWkj6zKJ82H5TatZfNq9DL/crzD6A0of3tW6sofDLVySgB3m+VDRD+9qwNaOlqgCipA/Kq6+JbePPiVpMmr2ceoeFdHVre4lij8z/daSu08XeN47+PxRpdvqSafrlnH9jjlk8v/TLWSv0OMrn5jyn6Mfsg6XJYfAHwzJcQxxXEkde0eZWUjpiSU+kA6l82le0gKP8AZdnLdfaHsYPtX/PXy/3lcD+0lr15oPwV8Yahp0jxX0dm372P/lnR8YH4w+IvBs1hJax3F5BqMN5D9sjltv8Aa/56f9NK/Wb9hnXtS179m3w7JqP+ut2a3rpl8JzRfvH0HXyZ+25+1VJ8KtLm8H6XpP8AaF9qEMlvcSyf6uOuaGp0jv8Agnj8WtF8W/Bu18HpJ5XiLQ/3l1FLX1olaT+Islpn+qoAfT6gCOb7kn/XOSvlX9hn97N8Urz/AJ6eIJK2h8MiD6d1j/kC6h/17zV+bH7Atr9q/aavpPk8y3t7qSqpfDcyZ+nFfN/7aXgO+l8O6P8AEjQI/wDioPB832j/AK6Q1lEJHsnwv+IOn/FXwHo/iTS5I5YbyH5v+mbfxR1zP7U10th+z744k/6cWqZaSAP2VYvK/Z2+Hv8A2DY5K9doqAOptID8mv8Agrksv/C9/CROPIPhqMLzzu+1XG7j6ba9i/4JB6eYvhr4/vtvyzavBAG9dkOf/an61kvjL6H6C0HpWpA2igAooAhlbMqD0NTUwCikAUUAFFABRQAVE1ujMGxjHp3oAlooAKKAEZgilmIVQMknoBX85njHXD4n8Xa3rDEltRvp7sk9cySM/wDWsqnQqJ+1X/BPnQYtA/ZE8ApHy91DcXkjY6tJcyt+g2j8K+iq0Wwj5t+Pn7fvwt+BT3OnNqJ8V+JocqdI0Vlk8px2mm+5Hg9RksP7tfnn8ef+Cj3xR+MDJaaJdP8AD3RUKv8AZtEuXFzIwOQXuRtbGeyBR6g1nKfRFpH6J/sG/H6//aC+AlnqeuStceJdIupNK1K4ZFQXDqFeOUAH+KORATgZdXwAMV9F1ondDClLAgAKFx6UzNiUqNtYHtQIWigApJKAPxN/bq1ZvEH7Xnja8+eW1j8mzjrx3R/9d5ifvZJP9Z/z0jqH8J1R+E7bw7YR3WtQ+bHJ9ljbzK76S1jim8tI44vM/wDIdeLI7aSL3/LaT/nnTv8AllWE9InSfP8A+0Rql1/wlljb+Z+7s4ftEf8A0z3VsaTat400PQ/EGpbI7jy5Ldo/J/dyV6NN+6eXOPNIbrHwR0m/kjks5o9PuPM8yT/WNHJ/0zq18ZNU+wfD/wCx/JFcedDU0588bilSPAfKk8yu41jy/wDhG5rj/VeWqx+VH/y0r0Yq5zHK/ZfNtftFvG/2qP8AeR+XXoXiTVP7B8L2On28kn2q8jjkuJf/AIr/AKZ1nYcnYvapf31h4Durd9Nklsbiz8uOWLa0cdeJwyyVNLURajlki+5JXYaLFZ6pax3Dx/6V5n+qk/1dVL4QD4qazJ4j/s3UPsaafD5P2eP955nmba1vhX45jsLeSxvN9zCqr5MXmeX92src8S5aEn/CW3kWsahrCf6mSRpI7aSTdH5dd54X16x8bw/6HG/26P8AeSW1EqVo3LkzH1jS7qK6kuHh/dyNXaaL4o02WGHZJHLNIyx+XXNbnJjLklY4W6ur7Rtam/1lnNHN/wA9Ktf8J5qktrNHcfZv3n/LSOPbW0Y2OGdRs5HUP3trJH5flfK1cL5X+iyV2UkbR1PVNH/e6XZ7JP3Pk1J/00/56f6ykcwQ/wDXSnfN7U4q4Ec0VbWl6zqEtjcael55VrJHH9oj/wB2spxLhP3jpLH97a2tx5kf/LOuitZf3fmV4U4H0VJ/u7liTzP/AB6oZovN8zfJ/rP+WtYFyZg3UXlTeXHMktZ91FHQQY+sXSxeZH/zzWuHutZ1CX/lt+7/AOeVepSicVWViaS6jl0+OTy/K/eeXJVW1v5rCSOS3krq5Dh5zaur/wD0X7PJ5cvmL/rJK5395/z0rjpoqTLUMsf7v93/ANM6r6p+6uvL/wCW0f7uSKgq4R6XJdRySfvP9X/rK6LRfGWpeHJo47eb/R4/+WsX+s+WtY+6bSpc8T2rwH+0FqWqa1ptvql1/wAtI4/9X/q91fUWl6pN9lj/AHnmzV4uO0ke/lEOX3TqrGX/AFda0deYfQGpY+ZFWj/yyqyiOnxy0ASeb5taFrVgadFUAsnmeTRUgfmn8Ofh9Z+DfGWreINO1JLzwzcXU2n3mm+X+7khauR0f4I6X481jxFeXGoPF9j1Ly5I/M/1drJX3/L7tj8u5veufsN8FdBj8JfCXwvo6fvYbezjjjrtqUjsiNjp1IB9FBYVWurWG/hkt7iOOWG4Xy5I5f8AVyLQB4DrH7BXwj1nWPtiaLPp/wD0yiuP3de7eF/C+l+DdBs9H0i1js7Gzj8uOKKrA1q+M/2vv2KNc+L/AIy/4SjwpdJLNcQrHeWNzJQBrfsY/sl+JvgPrGpa54ovraW+vLf7P9mtq+tqdwDzY6kkpAEdSUAcz488W6L4I8L3moa5qVtpVj5Mn7y5k8uvm3/gnvKt/wCA/GWoJIksN5r1xJHWtP4SD6oupf8ARbjf/qZIZK+B/wDgnvoK/wDC7viFeeX+50/dZ1nS+EiR+gtJdQw3+nyW95D9ptbhfLkjrM1ufHHwp1Sb9lb9oK++GeqGT/hCfEkzXmh3P/LO3kr1/wDbWuo4v2afGn7zyv8ARauUOYwOu/Z3i+wfA3wLb+X/AKvS7evSazl8QBRTA/GP/gp3r39sftZaza/aDMul6dZWYXORFmITFR6czE/VjX1//wAEk9Oltf2dvEN05IS68SzmNcdltrYE/nkfhWK+It7H27RWxAUUAIzBFLMQqgZJJwAK8o+F37VHww+MnijV/DvhTxVa6jrGmyMjWxBjNwq/ekgLACVBg/MmfXoQSrgemE7plP8AtCuS+Mnxp8J/AbwZJ4o8Y6g1hpgmW2j8qJpZJpWBKxoq8kkKx9AASSKp6AZfwO/aN8B/tD6JPqPgvWBePbEC6sLhDFdWxPTfGecHswypwQDkHHptSncArzG8/aV+G9h8WLf4bTeKLUeMZ5FhWwUM2JGRnEbOBtVsKPlJBy6gcnFF7AenV5B8eP2rfhx+zpBGvi7WSNUnjMtvo9hH595KvODsGAikggM5UEg88UN2Dc+EvHn/AAV48YX11Ing3wVo2kWeSFl1iWW8mI7NhGjVT7fNj1NYngL/AIKy/EvStdhbxXouh67ozyDz47S3e2uI0zz5bbyucZ4ZTn1FZc7L5T9Qvht8QNJ+KvgPQ/F2htK2k6vbLdW4nULIoPVXAJAYEEEAkZB5NdLWxB5f8cP2lfh9+zzp0Fz401xbO5uVLWunW6Ga7uAOpWNeQvbc2FzxnNfBvxD/AOCvXiS6vZo/A3gjTNOsgxWO416WS5ldezGOJo1Q+25x7ms5StsNK5yHhP8A4Kx/FbS9ZWbXdH8Pa7pjMPMtY7eS2kC9xHIHOD/vK1fp98Hfixonxw+HGjeNfDouF0nVEdo47tFSaNkkaN1dVJAIZGHBI75ojK+42rC/GbX/APhFfg/451rdsOnaHfXYb0KQOw/lX881TUHE/Xzwt+2L8Lf2Yf2a/hzo+pawut+JYfDli7aDoxWadJXgR2ErZ2RfM3O8hschTXxD+0J/wUG+Jnxz+1abZ3X/AAhnheXK/wBl6RIRLMnpNPwz+hC7VI6qaHLSyBLqfMPWvqX9nz/gnf8AEz43fZtS1K2PgjwvJhv7R1aIieZPWG34ZuMEFtikdGNQldlH6s/s9/s/+Gv2bvh9H4U8NG4niaZrq6vbwqZrqdgAXbaAAMKoAA4AHU5J9NroStoQFFMkKKAHDpT6DdBRQZSP58/it4jh8ZfFbx5rEckkv2zXLqT/AMiVX0G6Wwh8x45P+ef7usjrO48Gy/ar6aPzP9X5cnleXXeXV15vmbP+WdePLSR0Ug8ryvuR1ajlXzo4/wDltt/d1hJXOuOmhj6lomh+Io9ur2KX1v8A9NP3dZsel2OjafDZ2cPlQ29HPaQpQuN81Zf+Wfkf89K43x5o0N/NqH9qbJbf5biOKtKT/eXMK6vE8j17S4dLuo5LOTz7Xb/q/wDnnXM6pE37z/npHXtyPJizoPBOvWug6xDcXkaSx+W0cn7v+9Vr4ga9Dr2teZbyXPkxyeXHHc/3aV/eHy+9c7rQfFEMVjY2euRv9hjtfL/dR15r4k8JNoM0klvN/aFj5n7uSKuSjHlkVLUybHzpY5JP+WNdx8L5bPS7qS81SOSWxkXy/L/5Zyba64uxhY3viVoOk6X+8t/L/sm4h/0ePzPM8uT+9Xl9ra+VfR2/+qk+aSpibm94X/e2s2+PzfLb95bVVtdU1LwH4yj1DTmeKb/ln/yz8xWomwPpT7KuqafayfY/KjkXzPLkk/1deY3Wjala+ZHcRxywxyfu4o686lLlHKF4lPzY/M/1ckUn/TT93TvKjlr0Yu8TzIq0g+yr5n/TSpJLW1uv+PiOP/rr5e6oKKOl6pHLr19Z3EkcVjH/AKuuihsP7Q8z95bRfu5P3tzJ+7ran75Vjyu1166sJvL8ySWOus8L6zNrM00nl+VHb/6z93/rKg1lE2vNjq1p9/8AYPuRx/e/1tETAy7r4jXXhLxFJpdx5d5Y/wDXPy5I69U8J+I7XxPpcOoW/mQW8lebi4+6ezhWbX+q8y4/eVDdfuofMrgjobmTdbpar+VH/wBdauWsgl8J5r4slb+0Jv8AnnI3/LSse1sGv/8AtnXqRlanY8+SuNuopNLvpI7iPypo5Fra16w837LcWcf+sj8vyo6jnMeQw7qKS1k+z/8APOm/9s/3dAcpJHUeoRSRf8s5KUize0WWG/0//nv5cnl1VvrCSKb+Py/+elcsjsplrRbWaWGaR4/K8z/V+bX2x8FdZbWfCcdx51tLdSR/vJP9pf8AlnXJiVemevgXaseraXLH5P7yStj7V++rzIs+lNi1l821j/eVNDLTAteVS0AW4Yq2kqgH06gknjoquYD8l/CPxL0/4LeJPFnhe402TXPDuof6uPzP9XVP4A3/AIkl+Ik0lvb/APFP6xNHHdWMX+rkjaT5dv8Au193ze9Y/NeT3bn7faXYf2Xp9jb/APPOGOrtKRvElopAPooLHUUAL5VO8qrAKKAJo6hrO4Enl0taAPooA/P3/gopdapF8RvDceqWv9oeFfs/mR23/PSSuV/4Jp69rFh8Wte8Pp/yLt5atcSR/wDLPzq1p/CQe2f8FGPiXrngP4c6Lpeh3n9nza5NJHJc18w/sA+I9U8JfHyx0+zk+2abrEPl31Z0vhIkfq3U1ZjueVftGfAe1+PHgOTT32Ra5Z7rjTb3/nnNXxH8ZP2h9Y/4UHrXwn8eWtzF44s5IY/M8v8Ad3ENdFJ8xB9/fBmL7L8K/CP/AD0/su33V3Udc0viAWimB+A37U3itvGv7R3xI1c3a30Uuu3UUFwgwrwxyGKLHt5aIB9K/VP/AIJraR/Y/wCyL4VmK7W1C5vrth/28yRg/lGKxh8Rb2PqaitiAooAwvHmkz694H8RaZbf8fN7p1xbRc/xPEyj9TX89/gjxhqnw58aaP4k0mV7XVdJu47qFgSCGRs7T7HkEdwSKyn0Lif0C+EvF+m+LfB2keLLW5RNF1Cwj1KOeVgqpC8YkBYngYB5z0wa/Hv9vP8AarP7R3xKWy0Sd/8AhB9AZ4dNGNou5DxJckf7WAFB6KAcAswqqj0FE8a+Cfxj8QfAf4j6V4w8OTmO7s3AmtyxEd3ASPMgkHdWA/AgMOQDX70/DD4iaR8Wvh/oXi/QpTLper2q3MW7G6Mnho2x/EjBlI9VNTB9AkfPv7e/7Wy/s6+AV0bw/cx/8J9rsbLZAYY2MHR7pl9c5VAeC2TyEIr83P2KfBV/8Wv2sfBP2iWe8e11Ma9f3crl2Itz55Z2PJLSKiknqXpSd5JDWiP15/aa+OVn+zx8G9c8Y3CR3F5Cot9OtJDgXF2+RGh9hyzY52o2K/CLxp4z1r4h+KdS8R+ItQm1TWdRmM9zdTnLOx7DsABgBRwAAAABRN9Aidb4U8C+D7bwoviXxp4rFuk277F4b0MLPqV5tJUmRz+7tEJHDSbnIBIiYYJ87naN5pGiQxxFiURm3FRngE4Gfrisyj9yf2DPCN74K/ZN+H9jqAdLqe1lvzG+RsSeeSaMYI4+SRTj1Jr0P45/FvTPgZ8KvEPjXVAJYdMty0Ntu2m4nYhYogf9pyozzgZPauhaIz6n4L/Ev4k+IPi5421TxX4nvn1DV9QlMkjsTtQfwxoP4UUYAUdAK3PA/gTwrceHpfEfjPxdHo+nq7R22jaXGLrVb9lxnamQkEfbzZWHQ7VfBFc+71LOD1CS2lv7l7KGW2s2lYwQzSiV40ydqs4VQxAwCwUZ64HSv2h/4Jr+EL3wn+yh4ekvg8b6tdXOpxRSZBSJ32pwegZYw4xwQ4PerhuKWx1X7dev/wDCN/slfEm63bTLp6WY9/Pmjhx/5Er8Lac9wiFfRP7Pv7CfxO+P5tr+207/AIRrwvLhv7c1hGjSRPWGP78vsQAvYsKhK427H6afs+fsG/DH4BfZtQi0/wD4SnxTFhv7b1hFdo39YYvuRc9CMuP7xr6KYYNb25VoRe4gGTT1XaKoGOooEFAGaTdlcaV2Op9M3CuU+Ketr4V+GvirWP8Anz0u4m/8h0GMj+fzzZP3kjzefJJJ5n2n/erY0GWGLzP+elZHWd94HsPN1SOO4h82GSGT/W/N+8rsJv3sPl/8s/8A0ZXj1dJHRSK+oapHYTfwWfmN5ccdY9143sYr6O3fz4v+ektVGNxSq2qWNqHXlv4/Mt/tPk/9Nakm/exxyPG8vl/8tZa4pxtI74yuU5oqxfGUvleG5pE8vzpJPL/1e771aUn1MJq8TxvWtLm8mON4fPkjrh9e/wCJddeX/wA869+R4MWQ2MrXXlx/8tvMqxdReV+78usr+8a83u3Oi0v4l61pcMNv5lteWMa+X5ckddtY+F7P4jeE/MsP+JfdSSL+68zdH8tYSlyyKjqeezeHNU0HVJtPuI/9Kk/1ccX/AC0WvSPhfqljo2g/2Xq8dtF5kzSRxXNbydiDU17w5od1HJJZ/wChySRtJH9mk8yOSSvFfGVhNa6p9of/AJaLHVRLJtH0HWLqx/tzSN8scf8Ax8eX/wAs6uQ2sniO6td//Hx/yziij8yspsD6O0XS5rDR7O3vJLb7dHGv2jy/3laU1hD5Mf2i1SX/AK6R140pcp6UYJxPN/G1r5WvTbJvN8yNZPK/551zf/oyvVpO8Tw5K0g+1eV5e/8Ae+ZHU2nyw6p+8t5P9Fj8vzK2MThfEV1deHNY/wBHhTy7jdJHTpvG811YyRvGnnXH/LStqfuG9jnbX/XfJJXfeF9GvNGhuo7yNP8AWVASkb0lO81v4I6ImBz/AMVLBdU1fQ9Qi/5eLeO3/wCmcjL/AHa9W+Gujal4c8Lx6XqNn/Z91Z3DSf8AXRWrlxa909HCyOqklXyf9ZHL/wA9Kz4b+OX7kkkX/TP/AFleRLQ7xslc74i1ltGjhvP9VH5n7v8Ad/6yrjrIJfCcbHL/AGzqn7z/ALaVrQxQ2Ef2dJPN+at5StoccVczdU0uTVNY+2eZHFa+XH+6lq9Hax+THJ5cdYc5vyHN61LJdapN+8jlqbUNG8rS5Lj/AFvlx16Jz2M/yvKmj/d1Nr1r5sMMiRv5MclKRiXPCcTeTN9oj8qHzI5P3ta00UcsPzx1yyOymSfu7WGONP8Almtewfs0+LfKvtW0d5PK+b7ZHLLJWFVXpnfhXasfVGjyyeZ5fl/6yuktf9dXiRZ9aakMvlVYrUC5Yy+b+7qzQBZj8ur0MtUBej/e1Y8qgkjkloquUD8qfhr4X0mKHWPFFxdafc+G9W/d3n2mP/jz3f3Wrrv2Uf7Wi+JXh3wvdWsltpOoawuoWNzH80kix19xH4j80P2Cp9M6CWnebQA+m0FieVT6AH0UANkp1WAUVAEtPoAfTKAMfxJ4S0nxlpf9n65pNpqtj/zzuY/MrN8D/DTwn8PoZI/DWh2mleZJ/wAso6AD4jfDTwv8VfDraH4o0m21Wx3eZH5v/LOSuZ+F/wCzT8P/AIQahNqnhrRUs76T/lpLJ5lZESPTvl9qdWpkPryb41fs0+B/j19lk8TWMkWoW/8Aq76y/dz0AeoaDo1roOi2ul2f/HrZwxxx/wC6taNABWL428U2/gbwZr/iS7iee10fT7jUJYosb3SKNpGAz3IU0Afzq394+oX1zdSf6yeRpW+rEk/zr95P2UfCR8Hfs2fDfS3XZKuh21xKh6rJKglcfg0hFZU9ypHrFWK2ZIUUgI5ZNowOtfhb+2z8JW+Dv7SHizS4oTFpeoTnV9PwMKYJyX2r7I/mR/8AAKiotLlRKl/+1n43uv2edI+ENvdGx0Kyll8+7gkYT3cDMWW3c/8APNS7ZH8Q2jouDhfs6fArWP2ifirpXhDSd0MUp8+/vtuVs7VSPMlPvyFUd2ZRxnNY/Eytj1j9vz9lix/Zu+ImlzeGreePwbrdqGtBNIZDBcRgLNGWPJzlJBn++QOFrsP2F/25tK/Z08C+LPDHi2G9v9PAbUtEitV3E3JAV7ck/cV8IwbopDnksAa+GQt0fLXxb+KmvfGn4g6x4w8SXPn6nqMu8quRHBGOEijHZFXAA9snJJJ/TL/gll+z7J4F+HV/8R9ZtPK1fxOoi04SLh4tPU53e3muN3uscZHWiOruD0Rlf8FfdO1ef4Z+Ar23ydCt9WmjvAM8TvEPIJH+6s4z7j1r8sqU9wWwV93/ALGn7A2j+OIdN8bfErX9MGjMVntPDtlfxSSXI4I+0urEIp4/dj5jnkpjBIq7G3Y/VS1ubWZFW2lidAMKImBAHtivi7/grLp2sXn7O+jXFlltLtNfhk1BV6gGKVI2P+zvYD6stbS2IW5+RtFcxofaP7HP7B+n/F23svF/xA8R2Gn+FmIkg0eyv4mvLwdvMZWPkIfT7554Thq/WzSRp1rY21nppto7S3iWKGC2K7I0UYVVA6AAAAV0QVkZtnyd/wAFTte/sf8AZYltN23+1das7PHrjfN/7Rr8c6znuVHYASCCDgivafCf7aHxu8FrEmnfEnW5Y4iNseozC9UAdBicPx7dKhNrYo+ifhv/AMFbvHeiNHB408LaT4nthwbiwdrG5PufvofoFX619jfs8/t6fDX9obV10S0kuvDXiVwPK0zWdiG6PORA6sQ5GPuna3opAONozvoyGj6SAwB+WaWtNiQooAKVDg0nsOLsySiszcK+dv2/vFreD/2TvHTJN5VxeQrp8cv/AE0matDGR+Ll9azVnyRSRR1hI2PWPhLqkkv26N/3tvHH5kdd1DqnmzTRvHJF9nk8v/pnJ/1zryKmtQdPQ434lf6VDYyJJHXG2ugtqkc0nmf6ta9KlEmrVO08I69DLYx2aSf8e8damqao2jWNxqDx+bDb/vJI4q4qkbyOuMrHP+Hfi9ofi2aGP/kH3H7z/Rrn5q6SaWSLzJPLT/VrWMqPIVUq3PO/iZYWMVr9sST99cN/yyrxfxRLC+qfJJJL+7X95J/rJK9iEb0zzJL3jNsZfKuo/wB48Udd1a3VrFNZ/bLV9Qh2/vI6uHwjNb/hA/DuqXU0dncSafNG3meVc16F/wAK50uw0u1ks5Luzvv+Wkvmfu/l/irglPmlc7InlfxMlm0bxJDvvP7Quo18zzP+WdZt148vr/VI9Q1Ty7z935ckX3a7JQuYR0keleE9LsdZ0v7Z4fvn0+b/AJaRy1h+ItLW/wBLutL1SaOzms7ry/3fzVMdJDMvR7DVNB0u809Lx7PTdQ/1n/PSRVr0r4X6N+8/tjy0+zxr9jji/wCWnl1y137ptS+I9G/d/wCr8yTzI2qx/qv/AI15deZzHoxMnXvBFrqkn2yT/WSVxeqeCL61hkuEk82OPzP+uka/wyVvQlaR5uMpX1OF1jd/YMkn/TOpPA8Udr4XtY/+ejNJXr83vHkW9043x55d14ik/ef8s1qjY6Deapp80lnH5v2er3kbR0iWPDejXUXiKx+0Q/u/M/eV6Z5skUkkj7PMp2MKmpveMtBh0uHTZEk8qS4X95XM+V+8oMoh4ssLjWdFhk8z99Z3C3EleoSf8i7eXGnXnm3Udn5n72vPxMbndQfvHj//AAvO81TS5Le80+P/AK6xV1nw5+Jc3i3XpNLuIYLOH7L5kfl/L92uqdH93Y7oTO6uv9K8z93/AKyuF8bReboMf7uSWSNv3deNHSRvY53R9GvrWSO8f7N5e2tb/v3+7/1dEneQRRJH5cU3l1n+KL9YtLkt/wDlpJJRSh7xUvhOf0v/AI+vLrqo4vNjk82P/ln5db1/iMImbJo1xdXUn7z/ALaVeurCPy5Lf/tnXLzj9mSf884/+ecfl0TeXFVGlirNL+8rS8I+LbXwv8QNBuPM/wBBkmj+0S/e+Wqk+aJpTlyn3RoN0vkx3Fv/AKu4rtLXzP3clfPU1eVj6+EueNzUhl8ry6t1uaE8PmVehloiBYhirSjqgLUdWvtX1oJM+aXzZvkorLnKPzD8UfY/h98PZLd447zw3rCrcW8ltGv7uaT70dfQn7APhKxi8XeF7PzHubGO3m1SzuZK+/j8R+ZH6RUUzoHR/uqmoAfTqCwooAfRQAU3zasB1FQAUJQBYo82gAooAKKyIkFFamQ+nUAFFAE1eQ/tc6ffa1+zN8SbLTl3Xcuiz7VEgTKgZYZJA+6G+vSk9gR+EvhfQpvFPibSNFtv+PjUbyGzjwM/NI4Qfqa/ossNMh0yxtrO3UR29vGsUaD+FVAAH5Cop9SpFjyz6inrnHPWtSRaKQFO5kwxFfG3/BSn9nK8+Lvwzs/Fvh6xa88SeF97yQQrmS5sWGZFA6syEBwPTzMZJAokrxGtz8ldH0XUPEWqW2m6VY3Op6jcuI4LSziaWWVj0VUUEk+wFftf+wz+y/F+zf8ACiP+0oEPjTXAl1q8vBMPH7u2B9IwTn1dnOSMYxgtblSOu/aw+ANr+0f8GdW8Ks0cGrxkXuk3Ug4hu0B2ZPZWBZGPYOTjIFfhHrWjX3hzWL7StTtZLHUrGd7a5tphh4pUYqysPUEEUTXUInvX7E/7L93+0p8VIIb2GRPBmjsl1rVyMqHXOUt1I/ikII46KGPUAH9vrOzt9Os4LS1hjtrWCNYooYlCpGijCqoHAAAAAFVBaXFI4X48/BzSfj38K9d8E6u7W8GoRgw3UYy9tOhDRSgd8MBkcZGRnmvwu+L/AMEvGPwM8U3GheL9FudNmSR0gumjb7PdqDjzIZMYdT145GcEA5FKa6hE4WisSz3X9k74CeMPiv8AFXw1LpVn4l0jSYrxZX8T6PYllsWQ7g/mu8aLgjruLDnCuflP7UfFT4ZaR8X/AIb654L10SPpmrW32eSRCPMRgQySL23K6qw7ZUVvBaENn4XfHX9nrxn+z54uu9G8T6VcRWqzPHZ6ssLfZL5AeHjfocjBK53LnBArzOsWraFhXq/7PHwO8XfF/wCIGhQaFp3iGCx+2J5mv6NYGYaewOVl3s8aLtYA5MikYyMkAESuwP0Y/wCCqfh+QfsteH/9Jmuzpev2Zknn+aSUfZ549zkADcSwJOAMn3r4D/Yi8C6T8SP2oPBPh/XtLi1nRrl7p7qzuFzG6pazONw9AyqfwFaS+IlbH3L8X/8Agkz4N8TXj33gDxFdeDnclm068jN9a/RGLCRPxZ/wr538T/8ABKL4xaMztpd/4b8QRD7i297JDKfqskaqP++jTcOwlLueTeJf2Fvjv4U3m7+G+q3Kr/FpjRXuR7CF3P6VqfCP9ij45+IvGehTWngrVPDXlXkU41TWofskdrsYMJGWQbjjGcBWJ6YNRyu5V0ft+BgDnPvS10GYUUAFFACeZjin1kboZJXw3/wVm8WyaN8F/C+hp/zGNej8z/dhrUykfmHDL/y0eOStSSKGWGPf+6/65VzyNj0b4c+HPsFj/HLJJ5klaniKKSLyfs8n77c0lxH/AM8/7u6vI3qFbHnOsXTS/vLmT99RouvWujQ31u8cnnXG7y69KlI8+qO8ByyWv2zf/qZI/Lkq9qniOTzJrPUf9DhkjkjrK15HZKVjxnxF8OdU8ORzXm2S5sY5P3d3bV13wb8W6h/bjR6jJJPpsdv/AL1byXOTua199q1TQdauPn+w2cP2iSvI/EVhN/Z+m3n+tjkjb95SoTvTHJe8Yc3l12kct1/Zem3C7PMt/wDlp5lbU/hIPaI4tB8W6XZyXkltLdXH+s/56U618G/6VJb6RqUkUPl+ZJHcyeZHXDKPLG52RPL/AIoeHNYlupNQvI/skdvHHHJXnsd1+78t40+9XZGVzCWkjuPhfFdS6pN9j1b+z7iNv+/ldlJo0eqeBfEkl7b+frVvJ5lrc/8APPbUy0kM8303xReS6pY3GozPqEMf/PST95X1VHEv7v8AeeV8sf8Aq/8AV1w137ptR+Ilqe1uo7r94n+pj/eVwcp6MS95v7mP/ekrB8ZSrYaDdSfvP3n7usYStIWJ1p3PIbq1XVLXy/L83zK3LXwvDYeDYbiz/dR/8869y/vHz1vdPMfFHhe+ur6S8SPzYY63vh7YfZdBkuP3n7ySSOOuynrImWkTajqT95LJ/wBdK0sY7m5dRXWvafNcSzfubdfMrDtYpPsvmPHWZlEmjij8zy3hjl+0fu66LWvFtj4S8N6bZ3Fr/osnmW8nlSfvNtRVjc6qD944GT4D30U0mzVrbyf9ZH5sf7zbV7wT8Obrw5r0l59utpPs8flyW3k/8fEbR1yVMT0PShA766l/1flfuo/+esVZeoS+b5kflpL/AM9PMrzpaSOuxmzS1nzS/vqzi7yHFFq2/wC2dcv4k8v+1P8AWSeZ/wA8/wDnnXRSl7xEvhK9jpc3/Hx5NdVH/q6uv8RhEnpn+tmrh5TpuUZpfK/v/wCso83zf3b/APLStgsGqRR2ulzXDyfvo4Wk/eSV5zNrPm2vmXEPmyV1UqfNE56j5T76/Z98Zf8ACW/DXw/qHnTzyeT9nuPM/wCWbR17ha3UcsdfN1F7KtY+qwMuajc1P3fk+Yn+rq9a96o9EtQy+VJV6iIFqOrkdUBaqKgkKK5uUo/JLxJ4jtZfC/8AZfhrZeeFbe4aO6i8v/a8zzFkr70/4J4+CJtB17WpEk8/Q47OP7DL5m7y6/SI0rRPzGJ9xR1JWZ0j6lqywp0lAC06oAKfQAUUAFFABUkdAC0UAFPoAKKAG/L7U6giQ+iggdRQAU5VDA5GQeMGgk8H8K/sMfBrwh4/ufGFj4UVtXe/j1K2WWdzBYTo/mAwRggKN2Dg5A2gDA4r3ykklsF7hRTAKKAIZLYOSdxGaPs5/vfpTuBzXhn4WeEfBmq3ep6D4X0XRtQu3aS5u9P0+KCWZmOWLuqgtk88murpAFfNv7Q37BHw1/aI8RjxFqP9oeHvELALc3+jPGn2sAYBlR0YMwAwGGDjAJIAATVwTsetfBr4NeF/gP4EsvCfhOyNrp1uS8kshDTXMpxullbA3OcD0AAAAAAA7insAVna/wCHdJ8V6XNpmt6ZZ6xp0wxLZ39uk8Lj/aRgQfxFAHhPi7/gn98B/GBeSbwHbaZO3SXSLma02/REcJ+a1U0H/gnX8AdC2t/wgw1CUf8ALS/1K6lz9V8wL/47U8qHdn0Tpum2mjada2FjbRWdlaxLBBbwIESKNQAqqBwAAAAKs1Qinq+j2Gv6dPp+qWNtqVhOu2W1u4VlikHoysCCPrXhXi/9gn4EeMi73Pw+sdOmbpJpEstltPskTqn5qaTSe4XsZOg/8E5fgDoe1m8FPqUq/wDLS/1O6kz9VEgX9K+h/D/h/TfCmh2OjaPZQ6bpdjCtvbWlugWOKNRhVUemKEktgbuTalpdlrNo1rqFpBfWrMrNBcxLIhKsGUlSCMhgCPQgGvOvh3+zL8LvhP4luvEHhPwXp2i6zceZuu4g7sgc5dY9zERqem1AoA4AxxRYD0+imAUUAFFABRQAUUAL5eakrI3Wwyvy+/4K2a8118TPAOhpvk+w6XcahSqfCT9s+EdPltbqSST7YnmR/wDLKuoh8yKH/Wf9NP3sdc32S/tnrHh3y7C1/wBW9R32l/2z4u0nUH2RXVvD9nkkj+WSRa8qXxG0vhNabQdL1S1m0t4YP3jeZ/00rxfXtLhsNUurdP8AUxySRx11UFY4a8bSKscv2CbzEk8itL+wZtetY7x7x/Mkma38vy91dMiA8BytFqF59pj82O3X/VSf89FrQ/4RfT7C6muLO38qa8j/AHkf+rjrjv7xtBe9ctaDYLYQ3kbw/wDHx/rK5Px5YWul6p9nSP8Ad3lrHXdSkVJnlvjDw9Hpd1HcWEb/AGG4+75n/LNq0PBMSyzQ/aJJIo/O8v8A1f7uuv7Rn9k7y18JNa+KLjS3m+x3X/Lnc100P/CSaNJ5dxNbaha7v92SvOqRO+nIp69r0es2s2n+ILd/ssiyfvY/m8vb8y14XYxSapqEcafvf3n/AH83VtQ+EzqO8juJvC+sfD7/AImjyfY5I5PL/wCen3q9q0HS/sGl29ncR/bJvs/l3kcsnmeYzVz4mdy4RPN/+FAap/bEklnqUf2HzGkj/d17Va/aLCOO386S88v935tZ1KvPTsdMaFpHE/ECWSLWodkz/u4f+2kbVn6P4yurDy/+WsP/ADzrGFM4p1PZ1DutL+INjrM0dn/pMU3/ACz8yStSbbqn7u4/1dc9SHJI7oVeeJzMnw5s/O/10n/bPb5dTeJLCGW1s9PSP9zJ+7/5aVp7U5ZUPdOb8UeHI/Dl99nS8jvP3f8Ayyrn5pZP3f7yvaoO9M8eppUCP97D5f8A0zpK6pGRu/vIvCdxH/yzjk/5aVk+bH+8rMmxH9qXzvM/1VU/F3ma9pf2ezjnvLiSbzI4qqRpD+Jc9Q82SWxhkuI/33kx/wCtj21V/wCWMmyvHrs9+GsSndVnyVySNyGaL9zJsj/1kkdRzWHm/wDLT95/10qQKv2CT93H5nm02bRo5f3lx/rI6ACb/wBF1TkuobCHzHm8qOOOtIv2hMnYk0e//tmOO4t5P3dx/wB/N1UdL1611m6vrdI3ihj8uPzP+elL2PIRGRDql+1hqljbpH+7uFrUhtZIv+2n+s82qC5h+JIo/MhkePzYdslcno9guqaXqEjyeV5clehSl7pzXPpL9k/xvHa30nht5v8Aj48ySz/5Z19aaDdTS+ZI9fNY6H76LPqsulejY6a1uvNratZVlqInqFyOKtCP97UgaXlR075faqAb5lWI6kBslFTYD8ebzWfN8vWNI+1affXC/wCmW0ke2Ov0g/4JX2F1F8DdS1S43/vNSmjt6/UJaRPzGJ9o1NXnHSFP8qrLGVYoATzaI6gCTzaPNoASigB9FABUtABRQA+igAooAZT6CJD6KCB1FABTojwRQSSUUAFFABRQAUUAFFABSEgDJoAiS5Dy7R09amoAKKACigAooAKKACigAooAKKACigAooAKKAClVcn2pPRDSuySiszchmi82vxn/AOChGtx+L/2rvFkePM/seztdLpVPhI+2fK915lhdfu/L86OT93WtY3X2+18z/rp5kctc32S/tntXh3WV/wCEXh3xv+7j8urmvapDo2lzSJcJLJGv7v8A5515UviNpfCZNj48htbWTfG/2jy//IlcP/rZpJPLji8yvSpxsebUnzyD7B9q8zfvr0LQbpYtLjjSO2/6aR/886chmDr22w1Ty08yWSSPzP3kdU/EWqR2ugybP+PrzvL8yvPv7x1QXu3OXtfEeoWF15n2iOe1/wCeUsdU9ev5PEf7y4k/eeZXpUomMmc7rH+pks7iTyPtH/LKo/A+s+VdQ6W/keTJefvPNrr+0H2TpvFHiCPW76+s0kktL7T/APR7eT/ln81UdF8b6hpcn2O4/wBMjrKcS4SLnjLxuuqeF5rd9Nks/tEix+Z5lR6D4D+yxw64+pWv+r8yP93uj3VjU/dRLveR0nhGK68W6hHJq/7qxj/d2/lR/u69Qtdtr5caV40p8x6tOKJI/wB1Vjzf3Me+Tyv3lHw6HTKdpHn/AI8tb6XxFeXjw3P2fy465WaVfJ8x/wDU1302fO4tXqHVeCbDzfEUdx/qvs/7yvRJv3vmb/8AU+ZXJXlzSOqh7sQh/wCun+sqH7L5s0e+3/eW/wC8j83/AJ6VxanfKfunE+KL/wA3VJv+/cf7uuZvoq+iwjvTPmq+lQh/7aeVHTvN/wBXvjrukZEP7v8A7Z+ZTfN/5aVmVYrzXVR6ff8AleXI8knmR/vI6qQ4dzttB8b2/iOx+T97NG3+kVqRy+bXh12e9Q1iSSRRyx+Z+7/791kzRTRTfvY/N/6ZSVhI3K9Teb/q/wB5/FUgQ/ZV/wBW8dRzf89PLoAy5JfsvmXHl+b5ayV5L4u8R/29fR7JJIreOOu3DU7GFV2Oi8D+KLy1hhs/3cVvZq373zP71dJ4Nljv9Pk1DyY/tVx/rPKj8ut6nvHJGQ3xlYTRaPHcJvl+xzeZH+7/ANXWpY6zHFYreXH72O4/55/N5klcJpzHKyeMptU16SP/AEazt44f+efmfvFo8I2DS6DqFw//AC0kmj/75r06UPdM7lP4Z/Ea68G/Erw/rkkk8kNnMvmRR/8APOv0otZY5ZI40kj8uT95HJ/z03V4+OguaLPocqleNjqP9VHJWtY3XlRx/fry4n0JrQ3VakN0tSBN5tS1QFirMcq1IBNFRVWA/GHxx431TxbdfaHvJP8AQ4/Ljr9fP2BdBm0H9lnwnv8A9ZcedcV+n1Ze6fm0adj6Lp6V5xoWKd5tBYtFQBF5VOoAfTKAH0kdAE1CUAFS0AFLHQBLTKACigAooAfRQAfvKKACn5xQQSDPehiFzkgAd807GQtFIAooAKKACigAqrOcyGmgK7EqQRwRVqK7RxhvlP6U2NkwdWOAwJwGwD2PQ06pEIzBFJPAFMSZH6MM+hoCxJRQAUUAFFABRQAUUAFFABRQAUUAC8mpazbuaxVgplIsXzfKr+fn40eLZPFHxu8feIPtnmw3mtXX+t/urJ5a0pfCYnGw+XL5cf8Ay0qxa2s1rdSR+X+5/wCmtYT+EcfiO+0GWb7LYyedJ5fk/wDbOt7xJ5l14J1a3tJP3n2XzI5K83k949C/unm/g3xRNdXWm2+ryJLD/q66DVP9FupP3ccX/TKu88apHlkVYfM/efvKvQyzWv8Ay08r5vM/1lTUiEJDo7q88Za99o8v/VyeXJJHXXX2jQ38clv5f+ixyeZHH5n7vdXmU2ehFHj+qeXFqEkaXHm02OvWpHDtIm8qP/WPHHLN/wBNI653xJ4NvopvtlvD/rP9ZH92t+XmKi7HP2N15WqSSXH+urrIfsN/a/P+6kj/AHnm+Z5dFzQ6aP4X3Ws6LYyf2t/oMn7yOKSPzK7Dw78FtP0uTzNR1K51Xy/9XFF+7jrgxNW8jrwlK8TuJLWO6m/dfuvl/wCWVQ+V5Uccj/uv+WcleSe2H/PPzKm82SXy9kifu2oM7hJL5sPlvH5sf7uvM9e8Oappf+kPH/otxM3meV/yzrpoOx5Velc2vhzF/wAf0nmPFNHD/qpZK2NY8W2ujax9je1839z+88qtampxGppd+t/a29xb76uSfvf3nz158onp05HN+MooYtPj/d/6d/01rzuaWSWSvosGrU7HkYtctS4RyrTK6DjK11LVagBn+sorUuI61lh0GS4vE8yK3uP/AEZWlD480mWT5NS82ST/AJZ151SmelQdjvob+O6tbeSPy54/L/1X/PNqr3X+p/6Y/wDLSvNPXi/dKv7yKH/rm1N8qT/WeW/7vdH/AN9VkZkf7uKP/V+fDUPm+b+8/d/88/3tZAZ81rJdfvE/f+ZXg+qReVNJvk/5aNXr4Nc0Tjqs7jwH+90G83+X/F5nm1i+F/Ft5oPmW9rs/eXFdJzHffEbXpNL8Nx26bPtGoSfvPKk/hWuJmv9QsPBsMaR+VY3DeXJU8hnzGPo86pNJGn7rzF8uu4+HN00U11p6f8ALT95/wBs2+Vq3i/eNzz3/VX0ezzP9dX6Dfs4eMo/Efwr8LyPceZfWayafcfvv7v3Wrzccr0z2csdqx71DLHdRxyVqWP7q1jjevCkz6c0o60odv7uuL7RRdqz5tXcB0cv7mrFr/rqZsaFFb8pifkDdeDdL1n4Zx65FJJp+uedHZyRf8s7hW/9qV+1XwR8Lr4N+EvhPR08zy7Oxhj/AHtfolV+6fn0nY7zyqK5zMKmjoLJadUANpPl96AHeXTfKkoAfRQAU+gAqWgAooAKKAJfKjpaACigBJKWgAooAKdQQFFWQOiPBFSVBIUUAFFABRQBXmuQowhyfX0qoTk1SAKKZQA4ORwalFzIBjdkepU7vyqLWKtcVN0hyzZpslAx6XbqMH5qJLt+2BUcxnYet5/eX8RT0uUdgoBBPrVk3JqKBhRQAUUAFFABRQAUUAA4NFRI1i9Ap1SWcl8TPFEfg34f+KNceRIo9P02a4kkl/2Y6/nnhl+1Wsl48kcs1x+8k/3v9ZSl8JiNsbpbWT54/wBzXTWN1DLa1hP4Rx+I6rS/3trHJ/zz/wCmdXrq6WKxvLf/AJaXEfl/9815vP7x2fZPC7r91ayRpJ5vltJXsWnxR/2DpNn/AMtvs6/vfO/1m6u84prmkd1H4N0+K6jklhe8/wCnb/lnJWbrXgOa1tZJLON5YY/3f2avMqYg6aeHL2j6XHYWMeyOT7RJ/wAfEf8A6DU37yK1kkTf5nlyf6usYM6Io8lvrCSKby7jzIpv+WkVWrHS7WW1muH8yWvapHkT0kUbWwX/AFn/ACzr0q+tf7Z0GT7PNBc+ZD9nt/Mjq+fkJk7HgN94cutG/d+XJ9qjb95Wt4b0ubXrr7Onmf8AbSsuY6D1rwHo02g2Mn2y8kl8z/ll5f8Aq9td5DLXkVdZHuUPciEkUcUPzyfu/wDprTfNk86T5qyOoq/al+1Rx+Z5v2ipvK82g5bh+7i8zfvp0lhHf+XH5ifu/wB5WkHYmep43dXU3264k/1X7xq0I9LvNUtftnkvLD/q/Nrq3PFOw0GWbS7WPT7iT/rpFL/z0o0HVLq61i8t45I5I41/eVEom1ORsa9oMmvQwxp+9+z/APLOvNbrw5qlrdSb9Nk86RpK7MNUtoY11z6mXdbrWaSN4/30f/Aap/62vRPPCSof9+gDS0fS/t8ckn/PP93WL5sn/PTza1LiQzS+V9+qel/D5tU1CTfdWlnNu/d+VXPNnTB2PWrWL7L5NvF/yzjq15Xm14h7EX7pD+7/AOuXmf8ALWobrb/rErI0M3zKbdSxxWskn/POsgOH8YeN/Kt5LPTZvPk3fvLny/8AV15v5FxrN18i+bJXuYdckTz6rOw17Rrrw5oMcjzSeZJNHHJ/z0j+X7tcrN+6mk/57R1oZE2tapdazqEl5eSfvpP+mdddp9xJf+E49Nn2Rf6PJ5dXzGfKcHaxfZbqGT/arvPA9h5viKGTzP8Aj3qYv3jcwdQtZJfFEml/9PHl/va+vP2W7+xtft2h+YkUNvN9s8qscUr0z0MvlasfUlrfr5n+s/c/8s62If3skdfLSZ9gakfl1etfM86ub7RRpeb5VTebSuA//ljUsMtamxc8yir5zE/LHQfh9/bPxA8J6XZzfu7jUreO4sv+We3dX7aafax2FrDbpH5Xlxx199GXNE+Cqx5C95tFUZBToZaAJqKACioIHebT6CwooAfRQAVLQAUUAFM8399QBNR5tAB5tFABT6AHUUAFFABTaCJACQcipBKO4oMhRIp70u9f7w/OnYBDIo/iFMN1GO5P0FFgsRtef3V/E1C8rSfeOfanYBlFMA8qioNYhUtBY+mUESCigyClBwc0AWo5A6+/cU+gAooAQEHoc0tABRQAUUAFFABRQaQCig0Pnr9vbxl/whH7K/ja4/1v2yFdP/1m3/WV+IPlR2trZ26R/wCroOWRD83vW54b/exzf9dK56nwlHaaXtltfM/1vmVNdf6B5MnmJFJI3lx15H/Lw7pHlfiiw+y69qX7v/j4/eV3XwhivPFs1jeTNBB/Y7LHH+7/ANZtr0JLlpnN9o9o+1fappJE/vU6PzP3n7yvnviPYPNfin4g1TRLrR/7PkeD7VcN/wBc467SSujk905WUde0ax1m18u4jk87/VxyeZ5dcTdeZa3V5Z2cP7z/AKZ134aoeZXMXzf9Fkj8v95I3l+XLU2i69fWEclvbzf6LI3meXXbJXOc3rHx5NFdQ/bLOS8jj/56yV1Gn69pt/ayf2XHJFDu/eebH+8rCuv3Z24R/vC580s0m+Pza0rXzPLkj8uvFPdpoteb5vmf89N3meX5lUZrryv3lA5y5DgbrxbNa+KLzfJ/x7yNXWaD4tsZbWONJPKm/wCestd31XmieR7bmkb3lf6V5ieXLDRNKst1JZ+T5U3krJJH96T5qwhG8rHoSlamee6p4NmsJvtFvN5vlzf6RFJWtosUnl/6RD+8uK6Yux40lcx/EXlxa15dV9P1mTQftEiSSfvKJO5rY7yO/kuo/tHl/wCsWOSOOT5abNL+5k/56SVzRN7c1OxwPxAi8rWo4/M83/Ra5WSL/ln/AMs69yl8J4FVe8R/LF/3zRW8tQ5Te8Ny29rpdxHL+68zd+9/5Z1zM37qSq5jeKGyfvf+WlV/+Wfl/wDPOT93LWZZvaf48mitZLe53/av9XHJXTaLr0eqeZ+5kikt4/3nm14tePuno0pe8aUn/PT/AGap3V1XMekU5Il8n/VpWb4i0ubWdL+zpdeV81ASMe68OWel+HZrP93FdfvI/Nl/5abqy/Cfh+10O1juLiNJL64/56/8s66vrHu2OX2Z1F9o0Ovaf5d3/q/M/d1wPjzRltde+z2cdzL+58ytcNO0SaiuZvhfQbrWdYjjSH/VrXo2saNH9h8z9351vDVSq2kZc3unks11Ja3XmeWleseE7pf7Bj8qP99JJ/38ro57RMDlbq1aLx5NJefu4ZJFk/eV6J8OfFE3hLxtY6gl15X/AD0/4FUSleJ00Hapc+7rGVopI4/O82Ty1roobqvk5aSPuou+ppQyyVoQ39c0mUTf2gtXLW6ouOxajuvNm+SOpq0NS1HRVgfFP7PthpcXxu8H3moyR2djZ3HmSXMtfqda39rqkf2izuoLyH/plJ5lfaYaXNE+IxMeYfT67zzhlPoAfUNAE8dJUEEtTfu4qCw81aSgB9FAB5XlVLQAn/LWloAKTy6AJKKAGUUAPo82gA82nebQA+igAptBEgooMhlFWAyoqCgooJCigCWioNYhRQWPooIkMooMhPLqSgABweKkEzD0NBolcXzz6CkLk96BJWFR9p9qlDA96lPuEl1ELqO9IX9KG7Ao33EDke9SU12CUeqCimQFOoNYqyG0UFnwt/wVs8R+V8DfDeh+b+81TXFk/wCuiw1+WOqRL+7/AHaf+hfNQcsijDF9qk8t9/7v/WVYhia1mj2f6uOuep8JR6x4TsGutLjk8v8A1n7yuf8AihYeVpdneW8kcvl3UfmRV5H/AC8O6RzPjaw+y30eqfvPLuK0vg/q1vpdxcaTcXyWd5cTeZDXqRXPTOb7Z69DdSf9tv8AWVcjv/sv/LT/AFlfNfCewcH8UL+OX7LZpD5UnlySSeZJ/wCO11lrLDa6Xp9v5nlfuY/9bJurfn905ZFiPdLD5aeX5knmVxOl2s1rr0kfySzSRyV0YZHmVzjb7/Srq6/66SVDa17sVc5y1D5n/PSum8B2v/Ewvt/+r+y1yV1+7OjCP94d9DF5v3P+eix/6ypo/wDWRyf8sfM/1vmV4J9NBFz+9v8AMqHzVl+5I9BE4855rrXhy+sJpLj59QmuJJJJJfLrDktbqKaGN4/3kn/PWvboVeaJ4lSnySPZtFtY4tLt40/0ySNfLk8r955leE/GTxR/xXkkmlyXUUlvDDb+bHJ/y0WsKEb1rG9WVqZ1nw98eafqljJ/al9H/akc0kkn2n/WSLXeSX/3ZP8AljWsqdjnirnJ6xYSS30l59sSKGT/AK6eZUml6NDf6fHI8af6z/tpXFF3NbHRf8sfLj8vyY/3cdU/Nkim8v56yib25dDgda8W2viPXpNP8v7HJZyf62Sse6v4fJk2V7lL4Txaq94zZrryo6b/AGpD53zyJW8dRcpk6p/xOfMjt5P9XVq1uvsFr5dxH5v7vy/NquU0ijWhtZPJ8x4/9ZHUckX+rrMko6hatdR+Zb/v/wDpnHXUeA4pvsskjxv/ANtf9ZXFXj7prSl7x2E3/XSmzReVNHHXknvFP5fM/gqG6i8qaP8Ad0BIozRfufLqrdWHm2sf/XSuSz5rGXMa3lSeXH/00j/d+ZHTpLX7fHH/AKjzo2k/efvPu/7O2umlO0SrXM3RdLh0uPy7eH7HWlNLa2vmXFx/x6+X/q5a3j78jm5PdPB5rqO/upP3f+sm/d17JpdrDYWtnHbSfufJjk/e16FSNonGZuvaN9vvvM/5aRxr5dN0GWT93IknlX1v5cn/AHzXHGV4mtN21PuT4Z6y2s+EdFuEvI5bjyfLuP3n7yu8jupIvLjrwKukj7alK9O5qRy/8tKmjl82uGTOoveb5tWI5f7lFzWxetbrzZK0PtXtWtxl61lorcD4FvNNjV40P72cf6uST+Goh4j1nw7DHfaRrupaSq/8s7SbbX1VM+Xn8J6Ro/7Z3xX8NmOK31e31C1+95WpR+ZXpnw8/wCCltzrmqW1h4i8HxZl6yabNt/nivXonj1In1P4H+Mej+PIFaGxvrbd5n3/ACzXoEbf6yrqHISbqSkWTVLUyIIqlpFj6loAKKAJaKACigAooAKKACigB9MoAKfQA7zPaloAZRQAu6nUESG7qikoMiOmVYBRQA+igCWioNQooLCiggKKCAooJiFPoNR9MoLCn0AFOoAmorIW4KNyFh90Hv1pDWidzNR1H0UzUSSoKAPy/wD+CuuvmP4h/DHSvL/cW9lcXA+tfBVzcNeavCjdGaNaqn8Mjjq/Ebuo6LFbWUzp2q7aC3u/DdhePD+8f5TXnVyqR1XgO/m/s6aCVsJa/Kvl8VvXnl29rJJ88sP3fLkNeceucP8AEmyabwhdOZPuzQ14xqSB3s5Yv3b+XXVQ+E5KvxH0H8Pr+6fwbY3l7cPcyfvK65IGaa44T/WR9q8qt8R6EfhKmtaPFqv7uWKLzt0f7zbSWv72OOSL92du2si5EWsRh9H1Tyv3fkruWvNNQv5Gfy+22vRwh4lUyVXbn/p4+/71Yjr3zlLCHzOtaWh+IP7I1NjJbpNbtbqvl/71cVX4TSl8R60kjXNvEz87FjcU7Z/x6/vH/fN5Df7tfPn1EfhGoYraZdkf3fmqt9pbzbZOcSxsp5/u/NWJJO3zJ5/8dea+OPEFpYeIYbVrVwu1f9WcV34X4jgxJ2lt4ghXSdPaGF/JuPleORutfO3ji5Sfx1qsLR/JBN8lehhf4hhL4TGg3W7tOJXLqta+l+PPEHhyS0az1KQxRdIZPu13nKdp4f8AjVFePez3+k+Y8QynlyYxXbWviay16e3EVvLFPP8AfklVWry60EbRG+Mddu7bwnqkabPO8n/WYrxyw+IOvWmn74tTmeDzP9XIarDQ90iXxFHRtUkvfET3l1+9klk5rptQ1FtN043yRpKoj/1cld5nV+I5/wD4WJ5rtA2mwbGrmLy+NxqEkrRJlu1WIlS4ul8zypvLpw1G6tgyJcP81BR1XhO/mnsZtzfdbbVv+05UnjglPmJUSM/tEyTG2PmJXT6Trm2Wzi+zp5PmL/vfNWFQ1p/EdHJMfMkTtSTf6uvLPZplYXLx7sH7tcR4q1K8W90yBZvKRLjd+7/66U6X8QdT4TrfILTyPhPyo8lfIjn/AI6wq/EQT7uXf+/NTh/o37xKwiA6Pt5XOxd37zmub+JVwx8Nzf8ATNo2Wuyh8RnUPG3j+yFZE6ive9OilvNO01m8n/j1hb/V16dX4Tyytq7eX0rklLrN97+HbXAXE+tP2YtXj1/wBeo8Pkf2ZdbYvLr32dtx8yvGr/xpH3GB/glqyby60I65TtLUH7vd/tVchauaXxGxe0tvLmrQZtx31rEotC4aPpRWhJ//2Q=="}},"time_used":408,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":222,"receive":186,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/demo/index.html","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"subdocument","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.670Z","timestamp":1785126256670,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /demo/index.html HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: text/html\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: W/\"65211e70-20e7\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"jQuery","description":"jQuery is a JavaScript library which is a free, open-source software designed to simplify HTML DOM tree traversal and manipulation, as well as event handling, CSS animation, and Ajax.","website":"https://jquery.com","common_platform_enumeration":"cpe:2.3:a:jquery:jquery:*:*:*:*:*:*:*:*","icon":"jQuery.svg","categories":["JavaScript libraries"]},{"name":"Moment.js","description":"Moment.js is a free and open-source JavaScript library that removes the need to use the native JavaScript Date object directly.","website":"https://momentjs.com","common_platform_enumeration":"cpe:2.3:a:momentjs:moment:*:*:*:*:*:*:*:*","icon":"Moment.js.svg","categories":["JavaScript libraries"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":8423,"size_decoded":1865,"mime_type":"text/html","magic":"HTML document, ASCII text, with CRLF line terminators","md5":"100747b57318420b777fe8201917d8dd","sha1":"2cb2d7cc2418d6b67b747fb9fabc752339f66c2e","sha256":"88193be42490d1b29d3307443bc8ee381d298bcb4d0ff9d7a6de054413f97f07","sha512":"2a11632ab4504cdebb53d7b6f6fd98abf79a00582a8a8582b1c6dd4109e0913eef37105164757ac133b883f7f74c68634fdc845e1e15d8c3983dfc5bae759a71","ssdeep":"96:t0MZ033tjWyUQApc9pNwrGUOMup9uyXZ8RA1pcG0MJ0i:u3tWyz8+io8c","tlshash":"0f02b66184d2643a6633c1d1aa725f1aff908203eb4a5554b2ec2be74ffbc03d80b589","first_seen":"2026-07-27T03:36:45.17894Z","last_seen":"2026-07-27T04:25:12.627406Z","times_seen":2,"resource_available":false,"data":"PCFET0NUWVBFIGh0bWw+DQo8aHRtbD4NCiAgDQo8IS0tIE1pcnJvcmVkIGZyb20gdHJhZGVwcm9nbG9iYWxpbnZlc3RtZW50LmNvbS9kZW1vL2luZGV4Lmh0bWwgYnkgSFRUcmFjayBXZWJzaXRlIENvcGllci8zLnggW1hSJkNPJzIwMTRdLCBTdW4sIDEzIE1hciAyMDIyIDA4OjQ5OjQ3IEdNVCAtLT4NCg0KPCEtLSBNaXJyb3JlZCBmcm9tIHRyYWRlcHJvZ2xvYmFsaW52ZXN0bWVudC5jb20vZGVtby9pbmRleC5odG1sIGJ5IEhUVHJhY2sgV2Vic2l0ZSBDb3BpZXIvMy54IFtYUiZDTycyMDE0XSwgU3VuLCAwOSBPY3QgMjAyMiAxNToyNDowOSBHTVQgLS0+DQo8aGVhZD4NCiAgICA8IS0tIFN0YW5kYXJkIE1ldGEgLS0+DQogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiIC8+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlLGNocm9tZT0xIiAvPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIiAvPg0KICAgIDwhLS0gU2l0ZSBQcm9wZXJpdGllcyAtLT4NCiAgICA8dGl0bGU+PC90aXRsZT4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSJwbGF0LmNzcyIgLz4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSJyZXMuY3NzIiAvPg0KICAgIDxsaW5rDQogICAgICBocmVmPSIuLi9zdGFja3BhdGguYm9vdHN0cmFwY2RuLmNvbS9mb250LWF3ZXNvbWUvNC43LjAvY3NzL2ZvbnQtYXdlc29tZS5taW4uaHRtbCINCiAgICAgIHJlbD0ic3R5bGVzaGVldCINCiAgICAvPg0KICA8L2hlYWQ+DQogIDxib2R5Pg0KICAgIDxzdHlsZT48L3N0eWxlPg0KICAgIDxkaXYgY2xhc3M9ImJsb2NrLWNoYXJ0cyIgaWQ9ImNoYXJ0LWhvbGRlciI+DQogICAgICA8IS0tPGRpdiBjbGFzcz0iYmxvY2stY2hhcnRzICI+LS0+DQogICAgICA8ZGl2IGNsYXNzPSJvbmUtY2hhcnQiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJtaW5pLWNoYXJ0LXdyYXAiPg0KICAgICAgICAgIDxkaXYgY2xhc3M9ImRlYWwtZmluaXNoLXBvcHVwIj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRlYWwtZmluaXNoLXBvcHVwLXdpbiI+DQogICAgICAgICAgICAgIDxoMiBjbGFzcz0iZGZwLWhlYWQiPg0KICAgICAgICAgICAgICAgIENvbmdyYXR1bGF0aW9ucyEgWW91IHByZWRpY3RlZCB0aGUgbWFya2V0IGFuZCBlYXJuZWQgJDE5IQ0KICAgICAgICAgICAgICA8L2gyPg0KICAgICAgICAgICAgICA8cCBjbGFzcz0iZGZwLWJvZHkiPjwvcD4NCiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZGZwLWZvb3QiPg0KICAgICAgICAgICAgICAgIDxhIGNsYXNzPSJsaW5rX291dCIgdGFyZ2V0PSJfcGFyZW50IiBocmVmPSJpbmRleC5odG1sIj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxlZnQtZm9vdCI+PGkgY2xhc3M9ImZhIGZhLWFycm93LXVwIj48L2k+PC9kaXY+DQogICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyaWdodC1mb290Ij4NCiAgICAgICAgICAgICAgICAgICAgPHNwYW4+T3BlbiBhbiBhY2NvdW50PC9zcGFuPiwgYW5kIHN0YXJ0IHRyYWRpbmcgbm93IQ0KICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgIDxhIGNsYXNzPSJyZXN0YXJ0IiBpZD0icmVzdGFydCINCiAgICAgICAgICAgICAgICAgID48aSBjbGFzcz0iZmEgZmEtcmVmcmVzaCI+PC9pPjxzcGFuPk5ldyBmb3JlY2FzdDwvc3Bhbj48L2ENCiAgICAgICAgICAgICAgICA+DQogICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJkZWFsLWZpbmlzaC1wb3B1cC1sb3NlIj4NCiAgICAgICAgICAgICAgPGgyIGNsYXNzPSJkZnAtaGVhZCI+SW5jb3JyZWN0IGZvcmVjYXN0PC9oMj4NCiAgICAgICAgICAgICAgPHAgY2xhc3M9ImRmcC1ib2R5Ij48L3A+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICA8ZGl2IGNsYXNzPSJtaW5pLWNoYXJ0LWxlZ2VuZCI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJtYy10YWJsZSBsZy1vZ28iPg0KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtYy10YWJsZS10ZCBtYy1sb2dvLWVtcHR5Ij48L2Rpdj4NCiAgICAgICAgICAgICAgPGRpdg0KICAgICAgICAgICAgICAgIGNsYXNzPSJtYy10YWJsZS10ZCBtYy10YWJsZS10ZF9wcmljZSINCiAgICAgICAgICAgICAgICBkYXRhLXN0eWxlPSJ3aWR0aDogMzAlOyINCiAgICAgICAgICAgICAgPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1jLXRhYmxlLXRkLWxlZ2VuZCI+UHJpY2U8L2Rpdj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtYy10YWJsZS10ZC12YWx1ZSB0ZXh0LWdyZWVuIj4kMTU8L2Rpdj4NCiAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgIDxkaXYNCiAgICAgICAgICAgICAgICBjbGFzcz0ibWMtdGFibGUtdGQgbWMtdGFibGUtdGRfcHJvZml0Ig0KICAgICAgICAgICAgICAgIGRhdGEtc3R5bGU9IndpZHRoOiA0MCU7Ig0KICAgICAgICAgICAgICA+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWMtdGFibGUtdGQtbGVnZW5kIj5Qcm9maXQ8L2Rpdj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtYy10YWJsZS10ZC12YWx1ZSI+JDE5PC9kaXY+DQogICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICA8ZGl2DQogICAgICAgICAgICAgICAgY2xhc3M9Im1jLXRhYmxlLXRkIG1jLXRhYmxlLXRkX3JldmVudWUiDQogICAgICAgICAgICAgICAgZGF0YS1zdHlsZT0id2lkdGg6IDMwJTsiDQogICAgICAgICAgICAgID4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtYy10YWJsZS10ZC1sZWdlbmQiPlJldmVudWU8L2Rpdj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtYy10YWJsZS10ZC12YWx1ZSB0ZXh0LWdyZWVuIj45MCU8L2Rpdj4NCiAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICA8ZGl2IGNsYXNzPSJtaW5pLWNoYXJ0LWJ0bi1jb250Ij4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1jLWxvZ28gbWMtbG9nb19ldXJ1c2QiPg0KICAgICAgICAgICAgICA8Zm9ybT4NCiAgICAgICAgICAgICAgICA8ZGl2IGlkPSJyYWRpbyIgY2xhc3M9InVpLWJ1dHRvbnNldCI+DQogICAgICAgICAgICAgICAgICA8aW5wdXQNCiAgICAgICAgICAgICAgICAgICAgdHlwZT0icmFkaW8iDQogICAgICAgICAgICAgICAgICAgIGlkPSJyYWRpbzEiDQogICAgICAgICAgICAgICAgICAgIG5hbWU9InJhZGlvIg0KICAgICAgICAgICAgICAgICAgICB2YWx1ZT0iMCINCiAgICAgICAgICAgICAgICAgICAgY2xhc3M9InVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSINCiAgICAgICAgICAgICAgICAgIC8+PGxhYmVsDQogICAgICAgICAgICAgICAgICAgIGZvcj0icmFkaW8xIg0KICAgICAgICAgICAgICAgICAgICBzdHlsZT0id2lkdGg6IDE4MHB4OyINCiAgICAgICAgICAgICAgICAgICAgY2xhc3M9InVpLXN0YXRlLWFjdGl2ZSB1aS1idXR0b24gdWktd2lkZ2V0IHVpLXN0YXRlLWRlZmF1bHQgdWktYnV0dG9uLXRleHQtb25seSB1aS1jb3JuZXItbGVmdCINCiAgICAgICAgICAgICAgICAgICAgcm9sZT0iYnV0dG9uIg0KICAgICAgICAgICAgICAgICAgICBpZD0iQXBwbGUiDQogICAgICAgICAgICAgICAgICAgID48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQiPkFwcGxlPC9zcGFuPjwvbGFiZWwNCiAgICAgICAgICAgICAgICAgID4NCiAgICAgICAgICAgICAgICAgIDxpbnB1dA0KICAgICAgICAgICAgICAgICAgICB0eXBlPSJyYWRpbyINCiAgICAgICAgICAgICAgICAgICAgaWQ9InJhZGlvMiINCiAgICAgICAgICAgICAgICAgICAgbmFtZT0icmFkaW8iDQogICAgICAgICAgICAgICAgICAgIHZhbHVlPSIxIg0KICAgICAgICAgICAgICAgICAgICBjbGFzcz0idWktaGVscGVyLWhpZGRlbi1hY2Nlc3NpYmxlIg0KICAgICAgICAgICAgICAgICAgLz48bGFiZWwNCiAgICAgICAgICAgICAgICAgICAgZm9yPSJyYWRpbzIiDQogICAgICAgICAgICAgICAgICAgIHN0eWxlPSJ3aWR0aDogMTgwcHg7Ig0KICAgICAgICAgICAgICAgICAgICBjbGFzcz0idWktYnV0dG9uIHVpLXdpZGdldCB1aS1zdGF0ZS1kZWZhdWx0IHVpLWJ1dHRvbi10ZXh0LW9ubHkiDQogICAgICAgICAgICAgICAgICAgIHJvbGU9ImJ1dHRvbiINCiAgICAgICAgICAgICAgICAgICAgaWQ9IkdBWlBST00iDQogICAgICAgICAgICAgICAgICAgID48c3BhbiBjbGFzcz0idWktYnV0dG9uLXRleHQiPkdBWlBST008L3NwYW4+PC9sYWJlbA0KICAgICAgICAgICAgICAgICAgPg0KICAgICAgICAgICAgICAgICAgPGlucHV0DQogICAgICAgICAgICAgICAgICAgIHR5cGU9InJhZGlvIg0KICAgICAgICAgICAgICAgICAgICBpZD0icmFkaW8zIg0KICAgICAgICAgICAgICAgICAgICBuYW1lPSJyYWRpbyINCiAgICAgICAgICAgICAgICAgICAgdmFsdWU9IjIiDQogICAgICAgICAgICAgICAgICAgIGNsYXNzPSJ1aS1oZWxwZXItaGlkZGVuLWFjY2Vzc2libGUiDQogICAgICAgICAgICAgICAgICAvPg0KICAgICAgICAgICAgICAgICAgPGxhYmVsDQogICAgICAgICAgICAgICAgICAgIGZvcj0icmFkaW8zIg0KICAgICAgICAgICAgICAgICAgICBzdHlsZT0id2lkdGg6IDE4MHB4OyINCiAgICAgICAgICAgICAgICAgICAgY2xhc3M9InVpLWJ1dHRvbiB1aS13aWRnZXQgdWktc3RhdGUtZGVmYXVsdCB1aS1idXR0b24tdGV4dC1vbmx5IHVpLWNvcm5lci1yaWdodCINCiAgICAgICAgICAgICAgICAgICAgcm9sZT0iYnV0dG9uIg0KICAgICAgICAgICAgICAgICAgICBpZD0iRVVSVVNEIg0KICAgICAgICAgICAgICAgICAgICA+PHNwYW4gY2xhc3M9InVpLWJ1dHRvbi10ZXh0Ij5FVVIvVVNEPC9zcGFuPjwvbGFiZWwNCiAgICAgICAgICAgICAgICAgID4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgPC9mb3JtPg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJtYy1idG4gbWMtYnRuX2NhbGwiIGlkPSJidG5fY2FsbCI+DQogICAgICAgICAgICAgIDxpbWcgY2xhc3M9InN2Zy1pY28tY2FsbCIgc3JjPSJhcnJvdy1jYWxsLnN2ZyIgLz4NCiAgICAgICAgICAgICAgPHNwYW4+V2lsbCBnbzxiPnVwPC9iPjwvc3Bhbj4NCiAgICAgICAgICAgIDwvYnV0dG9uPg0KICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0ibWMtYnRuIG1jLWJ0bl9wdXQiIGlkPSJidG5fcHV0Ij4NCiAgICAgICAgICAgICAgPGltZyBjbGFzcz0ic3ZnLWljby1wdXQiIHNyYz0iYXJyb3ctcHV0LnN2ZyIgLz4NCiAgICAgICAgICAgICAgPHNwYW4+V2lsbCBnbzxiPmRvd248L2I+PC9zcGFuPg0KICAgICAgICAgICAgPC9idXR0b24+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ3YWl0LWRlYWwtZW5kIj4NCiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0id2RlLWxlZ2VuZCI+V2FpdCBmb3IgdHJhZGUgY2xvc2U6PC9kaXY+DQogICAgICAgICAgICAgIDxkaXYgY2xhc3M9IndkZS10aW1lci1jb250Ij4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjaGFydC10aW1lciI+DQogICAgICAgICAgICAgICAgICA8aT48aW1nIGNsYXNzPSJzdmctaWNvLWNhbGwiIHNyYz0iY2xvY2stc3Bpbm5lci5zdmciLz48L2kNCiAgICAgICAgICAgICAgICAgID48c3BhbiBjbGFzcz0iY2hhcnQtdGltZS1zZWxmIj4wMDowODwvc3Bhbj4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICA8ZGl2IGNsYXNzPSJtaW5pLWNoYXJ0LWNvbnQiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2hhcnQtcGFkZGluZyI+DQogICAgICAgICAgICAgIDxkaXYgaWQ9ImNoYXJ0MSIgY2xhc3M9ImNoYXJ0Ij4NCiAgICAgICAgICAgICAgICA8IS0tPGltZyB3aWR0aD0iNDkwIiBoZWlnaHQ9IjI1NCItLT4NCiAgICAgICAgICAgICAgICA8IS0tc3R5bGU9ImhlaWdodDogMjU0cHg7IHdpZHRoOiA0OTBweDt2ZXJ0aWNhbC1hbGlnbjogdG9wO21hcmdpbi1ib3R0b206IC0xMHB4OyItLT4NCiAgICAgICAgICAgICAgICA8IS0tc3JjPSJpbWFnZXMvcGxhdC10ZW1wbGF0ZS5wbmciPi0tPg0KICAgICAgICAgICAgICAgIDxkaXYNCiAgICAgICAgICAgICAgICAgIHdpZHRoPSI0OTAiDQogICAgICAgICAgICAgICAgICBoZWlnaHQ9IjI1NCINCiAgICAgICAgICAgICAgICAgIHN0eWxlPSJoZWlnaHQ6IDI1NHB4OyB3aWR0aDogNDkwcHg7dmVydGljYWwtYWxpZ246IHRvcDttYXJnaW4tYm90dG9tOiAtMTBweDsiDQogICAgICAgICAgICAgICAgICBpZD0iY2hhcnQtbSINCiAgICAgICAgICAgICAgICA+PC9kaXY+DQogICAgICAgICAgICAgICAgPCEtLTxjYW52YXMgd2lkdGg9IjUyNCIgaGVpZ2h0PSIyMjAiIHN0eWxlPSJwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDBweDsgdG9wOiAwcHg7IGhlaWdodDogMjIwcHg7IHdpZHRoOiA1MjRweDsiPjwvY2FudmFzPi0tPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNoYXJ0LXRpbWVyIj4NCiAgICAgICAgICAgICAgICAgIDxpPg0KICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPSJzdmctaWNvLWNhbGwiIHNyYz0iY2xvY2stc3Bpbm5lci5zdmciIC8+DQogICAgICAgICAgICAgICAgICA8L2k+DQogICAgICAgICAgICAgICAgICA8IS0tPHNwYW4gICAgY2xhc3M9ImNoYXJ0LXRpbWUtc2VsZiI+MDA6MDg8L3NwYW4+LS0+DQogICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgICAgPC9kaXY+DQogICAgICA8ZGl2DQogICAgICAgIGNsYXNzPSJkZWFsLWZpbmlzaC1wb3B1cCBtaW5pLWNoYXJ0LXdyYXAgZGVhbC1maW5pc2hlZCBkZWFsLWZpbmlzaGVkX3dpbiINCiAgICAgID4NCiAgICAgICAgPGRpdiBjbGFzcz0iZGVhbC1maW5pc2gtcG9wdXAtd2luIj4NCiAgICAgICAgICA8aDIgY2xhc3M9ImRmcC1oZWFkIj4NCiAgICAgICAgICAgIFlvdXIgdHJhZGluZyByZXN1bHQ6IDxzcGFuIGlkPSJ3aW5fYW10Ij48L3NwYW4+PGJyIC8+VHJ5IGFnYWluIQ0KICAgICAgICAgIDwvaDI+DQogICAgICAgICAgPHAgY2xhc3M9ImRmcC1ib2R5Ij48L3A+DQogICAgICAgICAgPGRpdiBjbGFzcz0iZGZwLWZvb3QiPg0KICAgICAgICAgICAgPGEgY2xhc3M9Imxpbmtfb3V0IiB0YXJnZXQ9Il9wYXJlbnQiIGhyZWY9ImluZGV4Lmh0bWwiPg0KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsZWZ0LWZvb3QiPjxpIGNsYXNzPSJmYSBmYS1hcnJvdy1sZWZ0Ij48L2k+PC9kaXY+DQogICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJpZ2h0LWZvb3QiPg0KICAgICAgICAgICAgICAgIDxzcGFuPkZ1bmQgQWNjb3VudCBOb3c8L3NwYW4+LCBTdGFydCBNYWtpbmcgcmVhbCBQcm9maXRzIQ0KICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICAgIDxhIGNsYXNzPSJyZXN0YXJ0IiBpZD0icmVzdGFydC1jaGFydCINCiAgICAgICAgICAgICAgPjxpIGNsYXNzPSJmYSBmYS1yZWZyZXNoIj48L2k+PHNwYW4+TmV3IGZvcmVjYXN0PC9zcGFuPjwvYQ0KICAgICAgICAgICAgPg0KICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICAgICAgPGRpdiBjbGFzcz0iZGVhbC1maW5pc2gtcG9wdXAtbG9zZSI+DQogICAgICAgICAgPGgyIGNsYXNzPSJkZnAtaGVhZCI+SW5jb3JyZWN0IGZvcmVjYXN0PC9oMj4NCiAgICAgICAgICA8cCBjbGFzcz0iZGZwLWJvZHkiPjwvcD4NCiAgICAgICAgPC9kaXY+DQogICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCg0KICAgIDxzY3JpcHQgc3JjPSJqcXVlcnkuanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+DQogICAgPHNjcmlwdCBzcmM9Im1vbWVudC5qcyI+PC9zY3JpcHQ+DQogICAgPHNjcmlwdCBzcmM9ImNoYXJ0LmpzIj48L3NjcmlwdD4NCiAgPC9ib2R5Pg0KDQo8IS0tIE1pcnJvcmVkIGZyb20gdHJhZGVwcm9nbG9iYWxpbnZlc3RtZW50LmNvbS9kZW1vL2luZGV4Lmh0bWwgYnkgSFRUcmFjayBXZWJzaXRlIENvcGllci8zLnggW1hSJkNPJzIwMTRdLCBTdW4sIDEzIE1hciAyMDIyIDA4OjQ5OjU4IEdNVCAtLT4NCg0KPCEtLSBNaXJyb3JlZCBmcm9tIHRyYWRlcHJvZ2xvYmFsaW52ZXN0bWVudC5jb20vZGVtby9pbmRleC5odG1sIGJ5IEhUVHJhY2sgV2Vic2l0ZSBDb3BpZXIvMy54IFtYUiZDTycyMDE0XSwgU3VuLCAwOSBPY3QgMjAyMiAxNToyNDoxNiBHTVQgLS0+DQo8L2h0bWw+DQo="}},"time_used":98,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":98,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/demo/clock-spinner.svg","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/demo/index.html","date":"2026-07-27T04:24:16.859Z","timestamp":1785126256859,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /demo/clock-spinner.svg HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/demo/index.html\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/svg+xml\r\ncontent-length: 834\r\nx-accel-version: 0.01\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"342-6071c9ab07c00\"\r\naccept-ranges: bytes\r\nx-powered-by: PleskLin\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":834,"size_decoded":1113,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"02013d000270a483ae3e4c9a7c703e68","sha1":"4873fb08e4b8f72f6333a6e3affb1c211f29c9c7","sha256":"84a3ea205c80e661a5ebc00f228dcc81a9cfb48247560cced898092d05720498","sha512":"44d331b4badc2ea1c0bb1116f88f88a9e97405ad7e943345c6ffacc3bbccf544c83350e10b7b6563a8682dcaf2b75a3b2d38d34a76495eea117fdbe555658824","ssdeep":"","tlshash":"c0018e7a0355469d7501df780764138d73b2c1e5786490d4f74f04a56f40eb7217af92","first_seen":"2024-08-19T13:41:51.332539Z","last_seen":"2026-07-27T05:39:36.85362Z","times_seen":11,"resource_available":false,"data":"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxOCIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDE4IDIwIj4KICA8ZGVmcz4KICAgIDxzdHlsZT4KICAgICAgLmNscy0xIHsKICAgICAgICBmaWxsOiAjN0Y5Q0E3OwogICAgICAgIGZpbGwtcnVsZTogZXZlbm9kZDsKICAgICAgfQogICAgPC9zdHlsZT4KICA8L2RlZnM+CiAgPHBhdGggY2xhc3M9ImNscy0xIiBkPSJNMTAuMTU5LDIuNlYxLjhoMC42NjhhMC41MjYsMC41MjYsMCwwLDAsLjUzMy0wLjUxN1YwLjUxOEEwLjUyNywwLjUyNywwLDAsMCwxMC44MjcsMEg2LjkwNmEwLjUyOCwwLjUyOCwwLDAsMC0uNTMzLjUxOFYxLjI4MWEwLjUyNywwLjUyNywwLDAsMCwuNTMzLjUxN0g3LjU3NFYyLjYzQTguODIzLDguODIzLDAsMCwwLS4wMDcsMTEuMjZhOC44NzMsOC44NzMsMCwwLDAsOSw4Ljc0LDguODc0LDguODc0LDAsMCwwLDktOC43NEE4LjgzMiw4LjgzMiwwLDAsMCwxMC4xNTksMi42Wk04Ljk5NCwxNy43MzdBNi41NzUsNi41NzUsMCwwLDEsMi4zMjUsMTEuMjYsNi41NzQsNi41NzQsMCwwLDEsOC45OTQsNC43ODRhNi41NzQsNi41NzQsMCwwLDEsNi42NjksNi40NzZBNi41NzQsNi41NzQsMCwwLDEsOC45OTQsMTcuNzM3Wk04LjkzNSw3LjIzYTAuODE4LDAuODE4LDAsMSwwLS44NDItMC44MTdBMC44MzEsMC44MzEsMCwwLDAsOC45MzUsNy4yM1ptNC4zNDUtLjI2OUw5Ljc4OCwxMC4zNTJhMS4yNDMsMS4yNDMsMCwwLDAtLjc5NC0wLjI4MywxLjE5MiwxLjE5MiwwLDEsMCwxLjIyOCwxLjE5MSwxLjE2NiwxLjE2NiwwLDAsMC0uMjkyLTAuNzdMMTMuNDIzLDcuMVoiLz4KPC9zdmc+"}},"time_used":354,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":354,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","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/99827.d3976dc0c5cfa2c2140e.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.360Z","timestamp":1785126257360,"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-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/99827.d3976dc0c5cfa2c2140e.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/crypto-mkt-screener/?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 04:24:17 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/\"69f98b71-15b86\"\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:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: fe244c7c4e6d4e406f73f0e8f0c8493d\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":88966,"size_decoded":33771,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (3072)","md5":"0af33a0629a4a15d05b8d21be003c0eb","sha1":"d61ed97048a72976c85785513a62b5e8590fb75a","sha256":"4dbdbd0c38d1d6468cbd0ec6b02411faaeffeddfc87c7b638be2e1263931cd14","sha512":"4350a5eab085a85477d149b1a91edb41a808bb070818e9d43e5e1147e4c71a0a5c3438616ab61efb6497365cb84e1f518343afd20431bb8612ba9f7a2165f814","ssdeep":"1536:wjugPsJO3KbxBvr1tBzoxvAgVIvrKfu2DNzmR5axsx5Eng/vc2JZu4+ej3aNOtHm:k0yKlvh/Z+839HMY74qBs","tlshash":"149309ddb2c5b06257e731b910af650ab237249d680d8440f139e8f6bc74b4aa13be7d","first_seen":"2026-05-05T10:36:04.846561Z","last_seen":"2026-07-27T07:07:14.00031Z","times_seen":2040,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s5OTgyN10sezE5OTgyNyhlKXt2YXIgdD13aW5kb3cuZG9jdW1lbnQsbj13aW5kb3cubmF2aWdhdG9yLHI9d2luZG93LmxvY2F0aW9uLGk9ZnVuY3Rpb24oKXt2YXIgZSxyLGksbyxhPWZ1bmN0aW9uKHQsbil7cmV0dXJuIG5ldyBhLmZuLmluaXQodCxuLGUpfSxzPXdpbmRvdy5qUXVlcnksbD13aW5kb3cuJCx1PS9eKD86W14jPF0qKDxbXHdcV10rPilbXj5dKiR8IyhbXHdcLV0qKSQpLyxjPS9eXHMrLyxmPS9ccyskLyxkPS9ePChcdyspXHMqXC8/Pig/OjxcL1wxPik/JC8scD0vXltcXSw6e31cc10qJC8saD0vXFwoPzpbIlxcXC9iZm5ydF18dVswLTlhLWZBLUZdezR9KS9nLG09LyJbXiJcXFxuXHJdKiJ8dHJ1ZXxmYWxzZXxudWxsfC0/XGQrKD86XC5cZCopPyg/OltlRV1bK1wtXT9cZCspPy9nLGc9Lyg/Ol58OnwsKSg/OlxzKlxbKSsvZyx2PS8od2Via2l0KVsgXC9dKFtcdy5dKykvLHk9LyhvcGVyYSkoPzouKnZlcnNpb24pP1sgXC9dKFtcdy5dKykvLGI9Lyhtc2llKSAoW1x3Ll0rKS8seD0vKG1vemlsbGEpKD86Lio/IHJ2OihbXHcuXSspKT8vLHc9Ly0oW2Etel18WzAtOV0pL2dpLFQ9L14tbXMtLyxOPWZ1bmN0aW9uKGUsdCl7cmV0dXJuKHQrIiIpLnRvVXBwZXJDYXNlKCl9LEM9bi51c2VyQWdlbnQsUz1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLGs9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSxFPUFycmF5LnByb3RvdHlwZS5wdXNoLEE9QXJyYXkucHJvdG90eXBlLnNsaWNlLEQ9U3RyaW5nLnByb3RvdHlwZS50cmltLEw9QXJyYXkucHJvdG90eXBlLmluZGV4T2YsRj17fTtmdW5jdGlvbiBqKCl7aWYoIWEuaXNSZWFkeSl7dHJ5e3QuZG9jdW1lbnRFbGVtZW50LmRvU2Nyb2xsKCJsZWZ0Iil9Y2F0Y2goZSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChqLDEpfWEucmVhZHkoKX19cmV0dXJuIGEuZm49YS5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOmEsaW5pdDpmdW5jdGlvbihlLG4scil7dmFyIGksbyxzLGw7aWYoIWUpcmV0dXJuIHRoaXM7aWYoZS5ub2RlVHlwZSlyZXR1cm4gdGhpcy5jb250ZXh0PXRoaXNbMF09ZSx0aGlzLmxlbmd0aD0xLHRoaXM7aWYoImJvZHkiPT09ZSYmIW4mJnQuYm9keSlyZXR1cm4gdGhpcy5jb250ZXh0PXQsdGhpc1swXT10LmJvZHksdGhpcy5zZWxlY3Rvcj1lLHRoaXMubGVuZ3RoPTEsdGhpcztpZigic3RyaW5nIj09dHlwZW9mIGUpe2lmKCEoaT0iPCI9PT1lLmNoYXJBdCgwKSYmIj4iPT09ZS5jaGFyQXQoZS5sZW5ndGgtMSkmJmUubGVuZ3RoPj0zP1tudWxsLGUsbnVsbF06dS5leGVjKGUpKXx8IWlbMV0mJm4pcmV0dXJuIW58fG4uanF1ZXJ5PyhufHxyKS5maW5kKGUpOnRoaXMuY29uc3RydWN0b3IobikuZmluZChlKTtpZihpWzFdKXJldHVybiBsPShuPW4gaW5zdGFuY2VvZiBhP25bMF06bik/bi5vd25lckRvY3VtZW50fHxuOnQsKHM9ZC5leGVjKGUpKT9hLmlzUGxhaW5PYmplY3Qobik/KGU9W3QuY3JlYXRlRWxlbWVudChzWzFdKV0sYS5mbi5hdHRyLmNhbGwoZSxuLCEwKSk6ZT1bbC5jcmVhdGVFbGVtZW50KHNbMV0pXTplPSgocz1hLmJ1aWxkRnJhZ21lbnQoW2lbMV1dLFtsXSkpLmNhY2hlYWJsZT9hLmNsb25lKHMuZnJhZ21lbnQpOnMuZnJhZ21lbnQpLmNoaWxkTm9kZXMsYS5tZXJnZSh0aGlzLGUpO2lmKChvPXQuZ2V0RWxlbWVudEJ5SWQoaVsyXSkpJiZvLnBhcmVudE5vZGUpe2lmKG8uaWQhPT1pWzJdKXJldHVybiByLmZpbmQoZSk7dGhpcy5sZW5ndGg9MSx0aGlzWzBdPW99cmV0dXJuIHRoaXMuY29udGV4dD10LHRoaXMuc2VsZWN0b3I9ZSx0aGlzfXJldHVybiBhLmlzRnVuY3Rpb24oZSk/ci5yZWFkeShlKToodm9pZCAwIT09ZS5zZWxlY3RvciYmKHRoaXMuc2VsZWN0b3I9ZS5zZWxlY3Rvcix0aGlzLmNvbnRleHQ9ZS5jb250ZXh0KSxhLm1ha2VBcnJheShlLHRoaXMpKX0sc2VsZWN0b3I6IiIsanF1ZXJ5OiIxLjcuMiIsbGVuZ3RoOjAsc2l6ZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLmxlbmd0aH0sdG9BcnJheTpmdW5jdGlvbigpe3JldHVybiBBLmNhbGwodGhpcywwKX0sZ2V0OmZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lP3RoaXMudG9BcnJheSgpOmU8MD90aGlzW3RoaXMubGVuZ3RoK2VdOnRoaXNbZV19LHB1c2hTdGFjazpmdW5jdGlvbihlLHQsbil7dmFyIHI9dGhpcy5jb25zdHJ1Y3RvcigpO3JldHVybiBhLmlzQXJyYXkoZSk/RS5hcHBseShyLGUpOmEubWVyZ2UocixlKSxyLnByZXZPYmplY3Q9dGhpcyxyLmNvbnRleHQ9dGhpcy5jb250ZXh0LCJmaW5kIj09PXQ/ci5zZWxlY3Rvcj10aGlzLnNlbGVjdG9yKyh0aGlzLnNlbGVjdG9yPyIgIjoiIikrbjp0JiYoci5zZWxlY3Rvcj10aGlzLnNlbGVjdG9yKyIuIit0KyIoIituKyIpIikscn0sZWFjaDpmdW5jdGlvbihlLHQpe3JldHVybiBhLmVhY2godGhpcyxlLHQpfSxyZWFkeTpmdW5jdGlvbihlKXtyZXR1cm4gYS5iaW5kUmVhZHkoKSxpLmFkZChlKSx0aGlzfSxlcTpmdW5jdGlvbihlKXtyZXR1cm4tMT09PShlPStlKT90aGlzLnNsaWNlKGUpOnRoaXMuc2xpY2UoZSxlKzEpfSxmaXJzdDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmVxKDApfSxsYXN0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZXEoLTEpfSxzbGljZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLnB1c2hTdGFjayhBLmFwcGx5KHRoaXMsYXJndW1lbnRzKSwic2xpY2UiLEEuY2FsbChhcmd1bWVudHMpLmpvaW4oIiwiKSl9LG1hcDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soYS5tYXAodGhpcywoZnVuY3Rpb24odCxuKXtyZXR1cm4gZS5jYWxsKHQsbix0KX0pKSl9LGVuZDpmdW5jdGlvbigpe3JldHVybiB0aGlzLnByZXZPYmplY3R8fHRoaXMuY29uc3RydWN0b3IobnVsbCl9LHB1c2g6RSxzb3J0OltdLnNvcnQsc3BsaWNlOltdLnNwbGljZX0sYS5mbi5pbml0LnByb3RvdHlwZT1hLmZuLGEuZXh0ZW5kPWEuZm4uZXh0ZW5kPWZ1bmN0aW9uKCl7dmFyIGUsdCxuLHIsaSxvLHM9YXJndW1lbnRzWzBdfHx7fSxsPTEsdT1hcmd1bWVudHMubGVuZ3RoLGM9ITEKO2ZvcigiYm9vbGVhbiI9PXR5cGVvZiBzJiYoYz1zLHM9YXJndW1lbnRzWzFdfHx7fSxsPTIpLCJvYmplY3QiPT10eXBlb2Ygc3x8YS5pc0Z1bmN0aW9uKHMpfHwocz17fSksdT09PWwmJihzPXRoaXMsLS1sKTtsPHU7bCsrKWlmKG51bGwhPShlPWFyZ3VtZW50c1tsXSkpZm9yKHQgaW4gZSluPXNbdF0scyE9PShyPWVbdF0pJiYoYyYmciYmKGEuaXNQbGFpbk9iamVjdChyKXx8KGk9YS5pc0FycmF5KHIpKSk/KGk/KGk9ITEsbz1uJiZhLmlzQXJyYXkobik/bjpbXSk6bz1uJiZhLmlzUGxhaW5PYmplY3Qobik/bjp7fSxzW3RdPWEuZXh0ZW5kKGMsbyxyKSk6dm9pZCAwIT09ciYmKHNbdF09cikpO3JldHVybiBzfSxhLmV4dGVuZCh7bm9Db25mbGljdDpmdW5jdGlvbihlKXtyZXR1cm4gd2luZG93LiQ9PT1hJiYod2luZG93LiQ9bCksZSYmd2luZG93LmpRdWVyeT09PWEmJih3aW5kb3cualF1ZXJ5PXMpLGF9LGlzUmVhZHk6ITEscmVhZHlXYWl0OjEsaG9sZFJlYWR5OmZ1bmN0aW9uKGUpe2U/YS5yZWFkeVdhaXQrKzphLnJlYWR5KCEwKX0scmVhZHk6ZnVuY3Rpb24oZSl7aWYoITA9PT1lJiYhIC0tYS5yZWFkeVdhaXR8fCEwIT09ZSYmIWEuaXNSZWFkeSl7aWYoIXQuYm9keSlyZXR1cm4gc2V0VGltZW91dChhLnJlYWR5LDEpO2lmKGEuaXNSZWFkeT0hMCwhMCE9PWUmJi0tYS5yZWFkeVdhaXQ+MClyZXR1cm47aS5maXJlV2l0aCh0LFthXSksYS5mbi50cmlnZ2VyJiZhKHQpLnRyaWdnZXIoInJlYWR5Iikub2ZmKCJyZWFkeSIpfX0sYmluZFJlYWR5OmZ1bmN0aW9uKCl7aWYoIWkpe2lmKGk9YS5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksImNvbXBsZXRlIj09PXQucmVhZHlTdGF0ZSlyZXR1cm4gc2V0VGltZW91dChhLnJlYWR5LDEpO2lmKHQuYWRkRXZlbnRMaXN0ZW5lcil0LmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLG8sITEpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixhLnJlYWR5LCExKTtlbHNlIGlmKHQuYXR0YWNoRXZlbnQpe3QuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsbyksd2luZG93LmF0dGFjaEV2ZW50KCJvbmxvYWQiLGEucmVhZHkpO3ZhciBlPSExO3RyeXtlPW51bGw9PXdpbmRvdy5mcmFtZUVsZW1lbnR9Y2F0Y2goZSl7fXQuZG9jdW1lbnRFbGVtZW50LmRvU2Nyb2xsJiZlJiZqKCl9fX0saXNGdW5jdGlvbjpmdW5jdGlvbihlKXtyZXR1cm4iZnVuY3Rpb24iPT09YS50eXBlKGUpfSxpc0FycmF5OkFycmF5LmlzQXJyYXl8fGZ1bmN0aW9uKGUpe3JldHVybiJhcnJheSI9PT1hLnR5cGUoZSl9LGlzV2luZG93OmZ1bmN0aW9uKGUpe3JldHVybiBudWxsIT1lJiZlPT1lLndpbmRvd30saXNOdW1lcmljOmZ1bmN0aW9uKGUpe3JldHVybiFpc05hTihwYXJzZUZsb2F0KGUpKSYmaXNGaW5pdGUoZSl9LHR5cGU6ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGw9PWU/U3RyaW5nKGUpOkZbUy5jYWxsKGUpXXx8Im9iamVjdCJ9LGlzUGxhaW5PYmplY3Q6ZnVuY3Rpb24oZSl7aWYoIWV8fCJvYmplY3QiIT09YS50eXBlKGUpfHxlLm5vZGVUeXBlfHxhLmlzV2luZG93KGUpKXJldHVybiExO3RyeXtpZihlLmNvbnN0cnVjdG9yJiYhay5jYWxsKGUsImNvbnN0cnVjdG9yIikmJiFrLmNhbGwoZS5jb25zdHJ1Y3Rvci5wcm90b3R5cGUsImlzUHJvdG90eXBlT2YiKSlyZXR1cm4hMX1jYXRjaChlKXtyZXR1cm4hMX12YXIgdDtmb3IodCBpbiBlKTtyZXR1cm4gdm9pZCAwPT09dHx8ay5jYWxsKGUsdCl9LGlzRW1wdHlPYmplY3Q6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0IGluIGUpcmV0dXJuITE7cmV0dXJuITB9LGVycm9yOmZ1bmN0aW9uKGUpe3Rocm93IG5ldyBFcnJvcihlKX0scGFyc2VKU09OOmZ1bmN0aW9uKGUpe3JldHVybiJzdHJpbmciPT10eXBlb2YgZSYmZT8oZT1hLnRyaW0oZSksd2luZG93LkpTT04mJndpbmRvdy5KU09OLnBhcnNlP3dpbmRvdy5KU09OLnBhcnNlKGUpOnAudGVzdChlLnJlcGxhY2UoaCwiQCIpLnJlcGxhY2UobSwiXSIpLnJlcGxhY2UoZywiIikpP25ldyBGdW5jdGlvbigicmV0dXJuICIrZSkoKTp2b2lkIGEuZXJyb3IoIkludmFsaWQgSlNPTjogIitlKSk6bnVsbH0scGFyc2VYTUw6ZnVuY3Rpb24oZSl7aWYoInN0cmluZyIhPXR5cGVvZiBlfHwhZSlyZXR1cm4gbnVsbDt2YXIgdDt0cnl7d2luZG93LkRPTVBhcnNlcj90PShuZXcgRE9NUGFyc2VyKS5wYXJzZUZyb21TdHJpbmcoZSwidGV4dC94bWwiKTooKHQ9bmV3IEFjdGl2ZVhPYmplY3QoIk1pY3Jvc29mdC5YTUxET00iKSkuYXN5bmM9ImZhbHNlIix0LmxvYWRYTUwoZSkpfWNhdGNoKGUpe3Q9dm9pZCAwfXJldHVybiB0JiZ0LmRvY3VtZW50RWxlbWVudCYmIXQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInBhcnNlcmVycm9yIikubGVuZ3RofHxhLmVycm9yKCJJbnZhbGlkIFhNTDogIitlKSx0fSxub29wOmZ1bmN0aW9uKCl7fSxnbG9iYWxFdmFsOmZ1bmN0aW9uKGUpe30sY2FtZWxDYXNlOmZ1bmN0aW9uKGUpe3JldHVybiBlLnJlcGxhY2UoVCwibXMtIikucmVwbGFjZSh3LE4pfSxub2RlTmFtZTpmdW5jdGlvbihlLHQpe3JldHVybiBlLm5vZGVOYW1lJiZlLm5vZGVOYW1lLnRvVXBwZXJDYXNlKCk9PT10LnRvVXBwZXJDYXNlKCl9LGVhY2g6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGk9MCxvPWUubGVuZ3RoLHM9dm9pZCAwPT09b3x8YS5pc0Z1bmN0aW9uKGUpO2lmKG4paWYocyl7Zm9yKHIgaW4gZSlpZighMT09PXQuYXBwbHkoZVtyXSxuKSlicmVha31lbHNlIGZvcig7aTxvJiYhMSE9PXQuYXBwbHkoZVtpKytdLG4pOyk7ZWxzZSBpZihzKXtmb3IociBpbiBlKWlmKCExPT09dC5jYWxsKGVbcl0scixlW3JdKSlicmVha31lbHNlIGZvcig7aTxvJiYhMSE9PXQuY2FsbChlW2ldLGksZVtpKytdKTspO3JldHVybiBlfSx0cmltOkQ/ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGw9PWU/IiI6RC5jYWxsKGUpfTpmdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09ZT8iIjplLnRvU3RyaW5nKCkucmVwbGFjZShjLCIiKS5yZXBsYWNlKGYsIiIpfSxtYWtlQXJyYXk6ZnVuY3Rpb24oZSx0KXt2YXIgbj10fHxbXTtpZihudWxsIT1lKXt2YXIgcj1hLnR5cGUoZSkKO251bGw9PWUubGVuZ3RofHwic3RyaW5nIj09PXJ8fCJmdW5jdGlvbiI9PT1yfHwicmVnZXhwIj09PXJ8fGEuaXNXaW5kb3coZSk/RS5jYWxsKG4sZSk6YS5tZXJnZShuLGUpfXJldHVybiBufSxpbkFycmF5OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcjtpZih0KXtpZihMKXJldHVybiBMLmNhbGwodCxlLG4pO2ZvcihyPXQubGVuZ3RoLG49bj9uPDA/TWF0aC5tYXgoMCxyK24pOm46MDtuPHI7bisrKWlmKG4gaW4gdCYmdFtuXT09PWUpcmV0dXJuIG59cmV0dXJuLTF9LG1lcmdlOmZ1bmN0aW9uKGUsdCl7dmFyIG49ZS5sZW5ndGgscj0wO2lmKCJudW1iZXIiPT10eXBlb2YgdC5sZW5ndGgpZm9yKHZhciBpPXQubGVuZ3RoO3I8aTtyKyspZVtuKytdPXRbcl07ZWxzZSBmb3IoO3ZvaWQgMCE9PXRbcl07KWVbbisrXT10W3IrK107cmV0dXJuIGUubGVuZ3RoPW4sZX0sZ3JlcDpmdW5jdGlvbihlLHQsbil7dmFyIHI9W107bj0hIW47Zm9yKHZhciBpPTAsbz1lLmxlbmd0aDtpPG87aSsrKW4hPT0hIXQoZVtpXSxpKSYmci5wdXNoKGVbaV0pO3JldHVybiByfSxtYXA6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbz1bXSxzPTAsbD1lLmxlbmd0aDtpZihlIGluc3RhbmNlb2YgYXx8dm9pZCAwIT09bCYmIm51bWJlciI9PXR5cGVvZiBsJiYobD4wJiZlWzBdJiZlW2wtMV18fDA9PT1sfHxhLmlzQXJyYXkoZSkpKWZvcig7czxsO3MrKyludWxsIT0ocj10KGVbc10scyxuKSkmJihvW28ubGVuZ3RoXT1yKTtlbHNlIGZvcihpIGluIGUpbnVsbCE9KHI9dChlW2ldLGksbikpJiYob1tvLmxlbmd0aF09cik7cmV0dXJuIG8uY29uY2F0LmFwcGx5KFtdLG8pfSxndWlkOjEscHJveHk6ZnVuY3Rpb24oZSx0KXtpZigic3RyaW5nIj09dHlwZW9mIHQpe3ZhciBuPWVbdF07dD1lLGU9bn1pZihhLmlzRnVuY3Rpb24oZSkpe3ZhciByPUEuY2FsbChhcmd1bWVudHMsMiksaT1mdW5jdGlvbigpe3JldHVybiBlLmFwcGx5KHQsci5jb25jYXQoQS5jYWxsKGFyZ3VtZW50cykpKX07cmV0dXJuIGkuZ3VpZD1lLmd1aWQ9ZS5ndWlkfHxpLmd1aWR8fGEuZ3VpZCsrLGl9fSxhY2Nlc3M6ZnVuY3Rpb24oZSx0LG4scixpLG8scyl7dmFyIGwsdT1udWxsPT1uLGM9MCxmPWUubGVuZ3RoO2lmKG4mJiJvYmplY3QiPT10eXBlb2Ygbil7Zm9yKGMgaW4gbilhLmFjY2VzcyhlLHQsYyxuW2NdLDEsbyxyKTtpPTF9ZWxzZSBpZih2b2lkIDAhPT1yKXtpZihsPXZvaWQgMD09PXMmJmEuaXNGdW5jdGlvbihyKSx1JiYobD8obD10LHQ9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBsLmNhbGwoYShlKSxuKX0pOih0LmNhbGwoZSxyKSx0PW51bGwpKSx0KWZvcig7YzxmO2MrKyl0KGVbY10sbixsP3IuY2FsbChlW2NdLGMsdChlW2NdLG4pKTpyLHMpO2k9MX1yZXR1cm4gaT9lOnU/dC5jYWxsKGUpOmY/dChlWzBdLG4pOm99LG5vdzpmdW5jdGlvbigpe3JldHVybihuZXcgRGF0ZSkuZ2V0VGltZSgpfSx1YU1hdGNoOmZ1bmN0aW9uKGUpe2U9ZS50b0xvd2VyQ2FzZSgpO3ZhciB0PXYuZXhlYyhlKXx8eS5leGVjKGUpfHxiLmV4ZWMoZSl8fGUuaW5kZXhPZigiY29tcGF0aWJsZSIpPDAmJnguZXhlYyhlKXx8W107cmV0dXJue2Jyb3dzZXI6dFsxXXx8IiIsdmVyc2lvbjp0WzJdfHwiMCJ9fSxzdWI6ZnVuY3Rpb24oKXtmdW5jdGlvbiBlKHQsbil7cmV0dXJuIG5ldyBlLmZuLmluaXQodCxuKX1hLmV4dGVuZCghMCxlLHRoaXMpLGUuc3VwZXJjbGFzcz10aGlzLGUuZm49ZS5wcm90b3R5cGU9dGhpcygpLGUuZm4uY29uc3RydWN0b3I9ZSxlLnN1Yj10aGlzLnN1YixlLmZuLmluaXQ9ZnVuY3Rpb24odCxyKXtyZXR1cm4gciYmciBpbnN0YW5jZW9mIGEmJiEociBpbnN0YW5jZW9mIGUpJiYocj1lKHIpKSxhLmZuLmluaXQuY2FsbCh0aGlzLHQscixuKX0sZS5mbi5pbml0LnByb3RvdHlwZT1lLmZuO3ZhciBuPWUodCk7cmV0dXJuIGV9LGJyb3dzZXI6e319KSxhLmVhY2goIkJvb2xlYW4gTnVtYmVyIFN0cmluZyBGdW5jdGlvbiBBcnJheSBEYXRlIFJlZ0V4cCBPYmplY3QiLnNwbGl0KCIgIiksKGZ1bmN0aW9uKGUsdCl7RlsiW29iamVjdCAiK3QrIl0iXT10LnRvTG93ZXJDYXNlKCl9KSksKHI9YS51YU1hdGNoKEMpKS5icm93c2VyJiYoYS5icm93c2VyW3IuYnJvd3Nlcl09ITAsYS5icm93c2VyLnZlcnNpb249ci52ZXJzaW9uKSxhLmJyb3dzZXIud2Via2l0JiYoYS5icm93c2VyLnNhZmFyaT0hMCksL1xTLy50ZXN0KCLCoCIpJiYoYz0vXltcc1x4QTBdKy8sZj0vW1xzXHhBMF0rJC8pLGU9YSh0KSx0LmFkZEV2ZW50TGlzdGVuZXI/bz1mdW5jdGlvbigpe3QucmVtb3ZlRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbywhMSksYS5yZWFkeSgpfTp0LmF0dGFjaEV2ZW50JiYobz1mdW5jdGlvbigpeyJjb21wbGV0ZSI9PT10LnJlYWR5U3RhdGUmJih0LmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLG8pLGEucmVhZHkoKSl9KSxhfSgpLG89e307aS5DYWxsYmFja3M9ZnVuY3Rpb24oZSl7ZT1lP29bZV18fGZ1bmN0aW9uKGUpe3ZhciB0LG4scj1vW2VdPXt9O2Zvcih0PTAsbj0oZT1lLnNwbGl0KC9ccysvKSkubGVuZ3RoO3Q8bjt0KyspcltlW3RdXT0hMDtyZXR1cm4gcn0oZSk6e307dmFyIHQsbixyLGEscyxsLHU9W10sYz1bXSxmPWZ1bmN0aW9uKHQpe3ZhciBuLHIsbyxhO2ZvcihuPTAscj10Lmxlbmd0aDtuPHI7bisrKW89dFtuXSwiYXJyYXkiPT09KGE9aS50eXBlKG8pKT9mKG8pOiJmdW5jdGlvbiI9PT1hJiYoZS51bmlxdWUmJnAuaGFzKG8pfHx1LnB1c2gobykpfSxkPWZ1bmN0aW9uKGksbyl7Zm9yKG89b3x8W10sdD0hZS5tZW1vcnl8fFtpLG9dLG49ITAscj0hMCxsPWF8fDAsYT0wLHM9dS5sZW5ndGg7dSYmbDxzO2wrKylpZighMT09PXVbbF0uYXBwbHkoaSxvKSYmZS5zdG9wT25GYWxzZSl7dD0hMDticmVha31yPSExLHUmJihlLm9uY2U/ITA9PT10P3AuZGlzYWJsZSgpOnU9W106YyYmYy5sZW5ndGgmJih0PWMuc2hpZnQoKSxwLmZpcmVXaXRoKHRbMF0sdFsxXSkpKX0scD17YWRkOmZ1bmN0aW9uKCl7aWYodSl7dmFyIGU9dS5sZW5ndGg7Zihhcmd1bWVudHMpLHI/cz11Lmxlbmd0aDp0JiYhMCE9PXQmJihhPWUsZCh0WzBdLHRbMV0pKX1yZXR1cm4gdGhpc30sCnJlbW92ZTpmdW5jdGlvbigpe2lmKHUpZm9yKHZhciB0PWFyZ3VtZW50cyxuPTAsaT10Lmxlbmd0aDtuPGk7bisrKWZvcih2YXIgbz0wO288dS5sZW5ndGgmJih0W25dIT09dVtvXXx8KHImJm88PXMmJihzLS0sbzw9bCYmbC0tKSx1LnNwbGljZShvLS0sMSksIWUudW5pcXVlKSk7bysrKTtyZXR1cm4gdGhpc30saGFzOmZ1bmN0aW9uKGUpe2lmKHUpZm9yKHZhciB0PTAsbj11Lmxlbmd0aDt0PG47dCsrKWlmKGU9PT11W3RdKXJldHVybiEwO3JldHVybiExfSxlbXB0eTpmdW5jdGlvbigpe3JldHVybiB1PVtdLHRoaXN9LGRpc2FibGU6ZnVuY3Rpb24oKXtyZXR1cm4gdT1jPXQ9dm9pZCAwLHRoaXN9LGRpc2FibGVkOmZ1bmN0aW9uKCl7cmV0dXJuIXV9LGxvY2s6ZnVuY3Rpb24oKXtyZXR1cm4gYz12b2lkIDAsdCYmITAhPT10fHxwLmRpc2FibGUoKSx0aGlzfSxsb2NrZWQ6ZnVuY3Rpb24oKXtyZXR1cm4hY30sZmlyZVdpdGg6ZnVuY3Rpb24obixpKXtyZXR1cm4gYyYmKHI/ZS5vbmNlfHxjLnB1c2goW24saV0pOmUub25jZSYmdHx8ZChuLGkpKSx0aGlzfSxmaXJlOmZ1bmN0aW9uKCl7cmV0dXJuIHAuZmlyZVdpdGgodGhpcyxhcmd1bWVudHMpLHRoaXN9LGZpcmVkOmZ1bmN0aW9uKCl7cmV0dXJuISFufX07cmV0dXJuIHB9O3ZhciBhPVtdLnNsaWNlO2kuZXh0ZW5kKHtEZWZlcnJlZDpmdW5jdGlvbihlKXt2YXIgdCxuPWkuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLHI9aS5DYWxsYmFja3MoIm9uY2UgbWVtb3J5Iiksbz1pLkNhbGxiYWNrcygibWVtb3J5IiksYT0icGVuZGluZyIscz17cmVzb2x2ZTpuLHJlamVjdDpyLG5vdGlmeTpvfSxsPXtkb25lOm4uYWRkLGZhaWw6ci5hZGQscHJvZ3Jlc3M6by5hZGQsc3RhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gYX0saXNSZXNvbHZlZDpuLmZpcmVkLGlzUmVqZWN0ZWQ6ci5maXJlZCx0aGVuOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdS5kb25lKGUpLmZhaWwodCkucHJvZ3Jlc3MobiksdGhpc30sYWx3YXlzOmZ1bmN0aW9uKCl7cmV0dXJuIHUuZG9uZS5hcHBseSh1LGFyZ3VtZW50cykuZmFpbC5hcHBseSh1LGFyZ3VtZW50cyksdGhpc30scGlwZTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGkuRGVmZXJyZWQoKGZ1bmN0aW9uKHIpe2kuZWFjaCh7ZG9uZTpbZSwicmVzb2x2ZSJdLGZhaWw6W3QsInJlamVjdCJdLHByb2dyZXNzOltuLCJub3RpZnkiXX0sKGZ1bmN0aW9uKGUsdCl7dmFyIG4sbz10WzBdLGE9dFsxXTtpLmlzRnVuY3Rpb24obyk/dVtlXSgoZnVuY3Rpb24oKXsobj1vLmFwcGx5KHRoaXMsYXJndW1lbnRzKSkmJmkuaXNGdW5jdGlvbihuLnByb21pc2UpP24ucHJvbWlzZSgpLnRoZW4oci5yZXNvbHZlLHIucmVqZWN0LHIubm90aWZ5KTpyW2ErIldpdGgiXSh0aGlzPT09dT9yOnRoaXMsW25dKX0pKTp1W2VdKHJbYV0pfSkpfSkpLnByb21pc2UoKX0scHJvbWlzZTpmdW5jdGlvbihlKXtpZihudWxsPT1lKWU9bDtlbHNlIGZvcih2YXIgdCBpbiBsKWVbdF09bFt0XTtyZXR1cm4gZX19LHU9bC5wcm9taXNlKHt9KTtmb3IodCBpbiBzKXVbdF09c1t0XS5maXJlLHVbdCsiV2l0aCJdPXNbdF0uZmlyZVdpdGg7cmV0dXJuIHUuZG9uZSgoZnVuY3Rpb24oKXthPSJyZXNvbHZlZCJ9KSxyLmRpc2FibGUsby5sb2NrKS5mYWlsKChmdW5jdGlvbigpe2E9InJlamVjdGVkIn0pLG4uZGlzYWJsZSxvLmxvY2spLGUmJmUuY2FsbCh1LHUpLHV9LHdoZW46ZnVuY3Rpb24oZSl7dmFyIHQ9YS5jYWxsKGFyZ3VtZW50cywwKSxuPTAscj10Lmxlbmd0aCxvPW5ldyBBcnJheShyKSxzPXIsbD1yPD0xJiZlJiZpLmlzRnVuY3Rpb24oZS5wcm9taXNlKT9lOmkuRGVmZXJyZWQoKSx1PWwucHJvbWlzZSgpO2Z1bmN0aW9uIGMoZSl7cmV0dXJuIGZ1bmN0aW9uKG4pe3RbZV09YXJndW1lbnRzLmxlbmd0aD4xP2EuY2FsbChhcmd1bWVudHMsMCk6biwtLXN8fGwucmVzb2x2ZVdpdGgobCx0KX19ZnVuY3Rpb24gZihlKXtyZXR1cm4gZnVuY3Rpb24odCl7b1tlXT1hcmd1bWVudHMubGVuZ3RoPjE/YS5jYWxsKGFyZ3VtZW50cywwKTp0LGwubm90aWZ5V2l0aCh1LG8pfX1pZihyPjEpe2Zvcig7bjxyO24rKyl0W25dJiZ0W25dLnByb21pc2UmJmkuaXNGdW5jdGlvbih0W25dLnByb21pc2UpP3Rbbl0ucHJvbWlzZSgpLnRoZW4oYyhuKSxsLnJlamVjdCxmKG4pKTotLXM7c3x8bC5yZXNvbHZlV2l0aChsLHQpfWVsc2UgbCE9PWUmJmwucmVzb2x2ZVdpdGgobCxyP1tlXTpbXSk7cmV0dXJuIHV9fSksaS5zdXBwb3J0PXtsZWFkaW5nV2hpdGVzcGFjZTohMCx0Ym9keTohMCxodG1sU2VyaWFsaXplOiEwLHN0eWxlOiEwLGhyZWZOb3JtYWxpemVkOiEwLG9wYWNpdHk6ITAsY3NzRmxvYXQ6ITAsY2hlY2tPbjohMCxvcHRTZWxlY3RlZDohMCxnZXRTZXRBdHRyaWJ1dGU6ITAsZW5jdHlwZTohMCxodG1sNUNsb25lOiEwLHN1Ym1pdEJ1YmJsZXM6ITAsY2hhbmdlQnViYmxlczohMCxmb2N1c2luQnViYmxlczohMSxkZWxldGVFeHBhbmRvOiEwLG5vQ2xvbmVFdmVudDohMCxpbmxpbmVCbG9ja05lZWRzTGF5b3V0OiExLHNocmlua1dyYXBCbG9ja3M6ITEscmVsaWFibGVNYXJnaW5SaWdodDohMCxwaXhlbE1hcmdpbjohMCxib3hNb2RlbDohMCxub0Nsb25lQ2hlY2tlZDohMCxvcHREaXNhYmxlZDohMCxyYWRpb1ZhbHVlOiEwLGNoZWNrQ2xvbmU6ITAsYXBwZW5kQ2hlY2tlZDohMCxhamF4OiEwLGNvcnM6ITAscmVsaWFibGVIaWRkZW5PZmZzZXRzOiEwLGRvZXNOb3RBZGRCb3JkZXI6ITAsZG9lc0FkZEJvcmRlckZvclRhYmxlQW5kQ2VsbHM6ITEsZml4ZWRQb3NpdGlvbjohMCxzdWJ0cmFjdHNCb3JkZXJGb3JPdmVyZmxvd05vdFZpc2libGU6ITEsZG9lc05vdEluY2x1ZGVNYXJnaW5JbkJvZHlPZmZzZXQ6ITB9O3ZhciBzPS9eKD86XHsuKlx9fFxbLipcXSkkLyxsPS8oW0EtWl0pL2c7ZnVuY3Rpb24gdShlLHQsbil7aWYodm9pZCAwPT09biYmMT09PWUubm9kZVR5cGUpe3ZhciByPSJkYXRhLSIrdC5yZXBsYWNlKGwsIi0kMSIpLnRvTG93ZXJDYXNlKCk7aWYoInN0cmluZyI9PXR5cGVvZihuPWUuZ2V0QXR0cmlidXRlKHIpKSl7dHJ5ewpuPSJ0cnVlIj09PW58fCJmYWxzZSIhPT1uJiYoIm51bGwiPT09bj9udWxsOmkuaXNOdW1lcmljKG4pPytuOnMudGVzdChuKT9pLnBhcnNlSlNPTihuKTpuKX1jYXRjaChlKXt9aS5kYXRhKGUsdCxuKX1lbHNlIG49dm9pZCAwfXJldHVybiBufWZ1bmN0aW9uIGMoZSl7Zm9yKHZhciB0IGluIGUpaWYoKCJkYXRhIiE9PXR8fCFpLmlzRW1wdHlPYmplY3QoZVt0XSkpJiYidG9KU09OIiE9PXQpcmV0dXJuITE7cmV0dXJuITB9ZnVuY3Rpb24gZihlLHQsbil7dmFyIHI9dCsiZGVmZXIiLG89dCsicXVldWUiLGE9dCsibWFyayIscz1pLl9kYXRhKGUscik7IXN8fCJxdWV1ZSIhPT1uJiZpLl9kYXRhKGUsbyl8fCJtYXJrIiE9PW4mJmkuX2RhdGEoZSxhKXx8c2V0VGltZW91dCgoZnVuY3Rpb24oKXtpLl9kYXRhKGUsbyl8fGkuX2RhdGEoZSxhKXx8KGkucmVtb3ZlRGF0YShlLHIsITApLHMuZmlyZSgpKX0pLDApfWkuZXh0ZW5kKHtjYWNoZTp7fSx1dWlkOjAsZXhwYW5kbzoialF1ZXJ5IisoaS5mbi5qcXVlcnkrTWF0aC5yYW5kb20oKSkucmVwbGFjZSgvXEQvZywiIiksbm9EYXRhOntlbWJlZDohMCxvYmplY3Q6ImNsc2lkOkQyN0NEQjZFLUFFNkQtMTFjZi05NkI4LTQ0NDU1MzU0MDAwMCIsYXBwbGV0OiEwfSxoYXNEYXRhOmZ1bmN0aW9uKGUpe3JldHVybiEhKGU9ZS5ub2RlVHlwZT9pLmNhY2hlW2VbaS5leHBhbmRvXV06ZVtpLmV4cGFuZG9dKSYmIWMoZSl9LGRhdGE6ZnVuY3Rpb24oZSx0LG4scil7aWYoaS5hY2NlcHREYXRhKGUpKXt2YXIgbyxhLHMsbD1pLmV4cGFuZG8sdT0ic3RyaW5nIj09dHlwZW9mIHQsYz1lLm5vZGVUeXBlLGY9Yz9pLmNhY2hlOmUsZD1jP2VbbF06ZVtsXSYmbCxwPSJldmVudHMiPT09dDtpZihkJiZmW2RdJiYocHx8cnx8ZltkXS5kYXRhKXx8IXV8fHZvaWQgMCE9PW4pcmV0dXJuIGR8fChjP2VbbF09ZD0rK2kudXVpZDpkPWwpLGZbZF18fChmW2RdPXt9LGN8fChmW2RdLnRvSlNPTj1pLm5vb3ApKSwib2JqZWN0IiE9dHlwZW9mIHQmJiJmdW5jdGlvbiIhPXR5cGVvZiB0fHwocj9mW2RdPWkuZXh0ZW5kKGZbZF0sdCk6ZltkXS5kYXRhPWkuZXh0ZW5kKGZbZF0uZGF0YSx0KSksbz1hPWZbZF0scnx8KGEuZGF0YXx8KGEuZGF0YT17fSksYT1hLmRhdGEpLHZvaWQgMCE9PW4mJihhW2kuY2FtZWxDYXNlKHQpXT1uKSxwJiYhYVt0XT9vLmV2ZW50czoodT9udWxsPT0ocz1hW3RdKSYmKHM9YVtpLmNhbWVsQ2FzZSh0KV0pOnM9YSxzKX19LHJlbW92ZURhdGE6ZnVuY3Rpb24oZSx0LG4pe2lmKGkuYWNjZXB0RGF0YShlKSl7dmFyIHIsbyxhLHM9aS5leHBhbmRvLGw9ZS5ub2RlVHlwZSx1PWw/aS5jYWNoZTplLGY9bD9lW3NdOnM7aWYodVtmXSl7aWYodCYmKHI9bj91W2ZdOnVbZl0uZGF0YSkpe2kuaXNBcnJheSh0KXx8KHQ9dCBpbiByfHwodD1pLmNhbWVsQ2FzZSh0KSlpbiByP1t0XTp0LnNwbGl0KCIgIikpO2ZvcihvPTAsYT10Lmxlbmd0aDtvPGE7bysrKWRlbGV0ZSByW3Rbb11dO2lmKCEobj9jOmkuaXNFbXB0eU9iamVjdCkocikpcmV0dXJufShufHwoZGVsZXRlIHVbZl0uZGF0YSxjKHVbZl0pKSkmJihpLnN1cHBvcnQuZGVsZXRlRXhwYW5kb3x8IXUuc2V0SW50ZXJ2YWw/ZGVsZXRlIHVbZl06dVtmXT1udWxsLGwmJihpLnN1cHBvcnQuZGVsZXRlRXhwYW5kbz9kZWxldGUgZVtzXTplLnJlbW92ZUF0dHJpYnV0ZT9lLnJlbW92ZUF0dHJpYnV0ZShzKTplW3NdPW51bGwpKX19fSxfZGF0YTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGkuZGF0YShlLHQsbiwhMCl9LGFjY2VwdERhdGE6ZnVuY3Rpb24oZSl7aWYoZS5ub2RlTmFtZSl7dmFyIHQ9aS5ub0RhdGFbZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpXTtpZih0KXJldHVybiEoITA9PT10fHxlLmdldEF0dHJpYnV0ZSgiY2xhc3NpZCIpIT09dCl9cmV0dXJuITB9fSksaS5mbi5leHRlbmQoe2RhdGE6ZnVuY3Rpb24oZSx0KXt2YXIgbixyLG8sYSxzLGw9dGhpc1swXSxjPTAsZj1udWxsO2lmKHZvaWQgMD09PWUpe2lmKHRoaXMubGVuZ3RoJiYoZj1pLmRhdGEobCksMT09PWwubm9kZVR5cGUmJiFpLl9kYXRhKGwsInBhcnNlZEF0dHJzIikpKXtmb3Iocz0obz1sLmF0dHJpYnV0ZXMpLmxlbmd0aDtjPHM7YysrKTA9PT0oYT1vW2NdLm5hbWUpLmluZGV4T2YoImRhdGEtIikmJihhPWkuY2FtZWxDYXNlKGEuc3Vic3RyaW5nKDUpKSx1KGwsYSxmW2FdKSk7aS5fZGF0YShsLCJwYXJzZWRBdHRycyIsITApfXJldHVybiBmfXJldHVybiJvYmplY3QiPT10eXBlb2YgZT90aGlzLmVhY2goKGZ1bmN0aW9uKCl7aS5kYXRhKHRoaXMsZSl9KSk6KChuPWUuc3BsaXQoIi4iLDIpKVsxXT1uWzFdPyIuIituWzFdOiIiLHI9blsxXSsiISIsaS5hY2Nlc3ModGhpcywoZnVuY3Rpb24odCl7aWYodm9pZCAwPT09dClyZXR1cm4gdm9pZCAwPT09KGY9dGhpcy50cmlnZ2VySGFuZGxlcigiZ2V0RGF0YSIrcixbblswXV0pKSYmbCYmKGY9aS5kYXRhKGwsZSksZj11KGwsZSxmKSksdm9pZCAwPT09ZiYmblsxXT90aGlzLmRhdGEoblswXSk6ZjtuWzFdPXQsdGhpcy5lYWNoKChmdW5jdGlvbigpe3ZhciBvPWkodGhpcyk7by50cmlnZ2VySGFuZGxlcigic2V0RGF0YSIrcixuKSxpLmRhdGEodGhpcyxlLHQpLG8udHJpZ2dlckhhbmRsZXIoImNoYW5nZURhdGEiK3Isbil9KSl9KSxudWxsLHQsYXJndW1lbnRzLmxlbmd0aD4xLG51bGwsITEpKX0scmVtb3ZlRGF0YTpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbigpe2kucmVtb3ZlRGF0YSh0aGlzLGUpfSkpfX0pLGkuZXh0ZW5kKHtfbWFyazpmdW5jdGlvbihlLHQpe2UmJih0PSh0fHwiZngiKSsibWFyayIsaS5fZGF0YShlLHQsKGkuX2RhdGEoZSx0KXx8MCkrMSkpfSxfdW5tYXJrOmZ1bmN0aW9uKGUsdCxuKXtpZighMCE9PWUmJihuPXQsdD1lLGU9ITEpLHQpe3ZhciByPShuPW58fCJmeCIpKyJtYXJrIixvPWU/MDooaS5fZGF0YSh0LHIpfHwxKS0xO28/aS5fZGF0YSh0LHIsbyk6KGkucmVtb3ZlRGF0YSh0LHIsITApLGYodCxuLCJtYXJrIikpfX0scXVldWU6ZnVuY3Rpb24oZSx0LG4pe3ZhciByO2lmKGUpcmV0dXJuIHQ9KHR8fCJmeCIpKyJxdWV1ZSIscj1pLl9kYXRhKGUsdCksCm4mJighcnx8aS5pc0FycmF5KG4pP3I9aS5fZGF0YShlLHQsaS5tYWtlQXJyYXkobikpOnIucHVzaChuKSkscnx8W119LGRlcXVldWU6ZnVuY3Rpb24oZSx0KXt0PXR8fCJmeCI7dmFyIG49aS5xdWV1ZShlLHQpLHI9bi5zaGlmdCgpLG89e307ImlucHJvZ3Jlc3MiPT09ciYmKHI9bi5zaGlmdCgpKSxyJiYoImZ4Ij09PXQmJm4udW5zaGlmdCgiaW5wcm9ncmVzcyIpLGkuX2RhdGEoZSx0KyIucnVuIixvKSxyLmNhbGwoZSwoZnVuY3Rpb24oKXtpLmRlcXVldWUoZSx0KX0pLG8pKSxuLmxlbmd0aHx8KGkucmVtb3ZlRGF0YShlLHQrInF1ZXVlICIrdCsiLnJ1biIsITApLGYoZSx0LCJxdWV1ZSIpKX19KSxpLmZuLmV4dGVuZCh7cXVldWU6ZnVuY3Rpb24oZSx0KXt2YXIgbj0yO3JldHVybiJzdHJpbmciIT10eXBlb2YgZSYmKHQ9ZSxlPSJmeCIsbi0tKSxhcmd1bWVudHMubGVuZ3RoPG4/aS5xdWV1ZSh0aGlzWzBdLGUpOnZvaWQgMD09PXQ/dGhpczp0aGlzLmVhY2goKGZ1bmN0aW9uKCl7dmFyIG49aS5xdWV1ZSh0aGlzLGUsdCk7ImZ4Ij09PWUmJiJpbnByb2dyZXNzIiE9PW5bMF0mJmkuZGVxdWV1ZSh0aGlzLGUpfSkpfSxkZXF1ZXVlOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmVhY2goKGZ1bmN0aW9uKCl7aS5kZXF1ZXVlKHRoaXMsZSl9KSl9LGRlbGF5OmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9aS5meCYmaS5meC5zcGVlZHNbZV18fGUsdD10fHwiZngiLHRoaXMucXVldWUodCwoZnVuY3Rpb24odCxuKXt2YXIgcj1zZXRUaW1lb3V0KHQsZSk7bi5zdG9wPWZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KHIpfX0pKX0sY2xlYXJRdWV1ZTpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5xdWV1ZShlfHwiZngiLFtdKX0scHJvbWlzZTpmdW5jdGlvbihlLHQpeyJzdHJpbmciIT10eXBlb2YgZSYmKHQ9ZSxlPXZvaWQgMCksZT1lfHwiZngiO3ZhciBuLHI9aS5EZWZlcnJlZCgpLG89dGhpcyxhPW8ubGVuZ3RoLHM9MSxsPWUrImRlZmVyIix1PWUrInF1ZXVlIixjPWUrIm1hcmsiO2Z1bmN0aW9uIGYoKXstLXN8fHIucmVzb2x2ZVdpdGgobyxbb10pfWZvcig7YS0tOykobj1pLmRhdGEob1thXSxsLHZvaWQgMCwhMCl8fChpLmRhdGEob1thXSx1LHZvaWQgMCwhMCl8fGkuZGF0YShvW2FdLGMsdm9pZCAwLCEwKSkmJmkuZGF0YShvW2FdLGwsaS5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksITApKSYmKHMrKyxuLmFkZChmKSk7cmV0dXJuIGYoKSxyLnByb21pc2UodCl9fSk7dmFyIGQscCxoLG09L1tcblx0XHJdL2csZz0vXHMrLyx2PS9cci9nLHk9L14oPzpidXR0b258aW5wdXQpJC9pLGI9L14oPzpidXR0b258aW5wdXR8b2JqZWN0fHNlbGVjdHx0ZXh0YXJlYSkkL2kseD0vXmEoPzpyZWEpPyQvaSx3PS9eKD86YXV0b2ZvY3VzfGF1dG9wbGF5fGFzeW5jfGNoZWNrZWR8Y29udHJvbHN8ZGVmZXJ8ZGlzYWJsZWR8aGlkZGVufGxvb3B8bXVsdGlwbGV8b3BlbnxyZWFkb25seXxyZXF1aXJlZHxzY29wZWR8c2VsZWN0ZWQpJC9pLFQ9aS5zdXBwb3J0LmdldFNldEF0dHJpYnV0ZTtpLmZuLmV4dGVuZCh7YXR0cjpmdW5jdGlvbihlLHQpe3JldHVybiBpLmFjY2Vzcyh0aGlzLGkuYXR0cixlLHQsYXJndW1lbnRzLmxlbmd0aD4xKX0scmVtb3ZlQXR0cjpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbigpe2kucmVtb3ZlQXR0cih0aGlzLGUpfSkpfSxwcm9wOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGkuYWNjZXNzKHRoaXMsaS5wcm9wLGUsdCxhcmd1bWVudHMubGVuZ3RoPjEpfSxyZW1vdmVQcm9wOmZ1bmN0aW9uKGUpe3JldHVybiBlPWkucHJvcEZpeFtlXXx8ZSx0aGlzLmVhY2goKGZ1bmN0aW9uKCl7dHJ5e3RoaXNbZV09dm9pZCAwLGRlbGV0ZSB0aGlzW2VdfWNhdGNoKGUpe319KSl9LGFkZENsYXNzOmZ1bmN0aW9uKGUpe3ZhciB0LG4scixvLGEscyxsO2lmKGkuaXNGdW5jdGlvbihlKSlyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbih0KXtpKHRoaXMpLmFkZENsYXNzKGUuY2FsbCh0aGlzLHQsdGhpcy5jbGFzc05hbWUpKX0pKTtpZihlJiYic3RyaW5nIj09dHlwZW9mIGUpZm9yKHQ9ZS5zcGxpdChnKSxuPTAscj10aGlzLmxlbmd0aDtuPHI7bisrKWlmKDE9PT0obz10aGlzW25dKS5ub2RlVHlwZSlpZihvLmNsYXNzTmFtZXx8MSE9PXQubGVuZ3RoKXtmb3IoYT0iICIrby5jbGFzc05hbWUrIiAiLHM9MCxsPXQubGVuZ3RoO3M8bDtzKyspfmEuaW5kZXhPZigiICIrdFtzXSsiICIpfHwoYSs9dFtzXSsiICIpO28uY2xhc3NOYW1lPWkudHJpbShhKX1lbHNlIG8uY2xhc3NOYW1lPWU7cmV0dXJuIHRoaXN9LHJlbW92ZUNsYXNzOmZ1bmN0aW9uKGUpe3ZhciB0LG4scixvLGEscyxsO2lmKGkuaXNGdW5jdGlvbihlKSlyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbih0KXtpKHRoaXMpLnJlbW92ZUNsYXNzKGUuY2FsbCh0aGlzLHQsdGhpcy5jbGFzc05hbWUpKX0pKTtpZihlJiYic3RyaW5nIj09dHlwZW9mIGV8fHZvaWQgMD09PWUpZm9yKHQ9KGV8fCIiKS5zcGxpdChnKSxuPTAscj10aGlzLmxlbmd0aDtuPHI7bisrKWlmKDE9PT0obz10aGlzW25dKS5ub2RlVHlwZSYmby5jbGFzc05hbWUpaWYoZSl7Zm9yKGE9KCIgIitvLmNsYXNzTmFtZSsiICIpLnJlcGxhY2UobSwiICIpLHM9MCxsPXQubGVuZ3RoO3M8bDtzKyspYT1hLnJlcGxhY2UoIiAiK3Rbc10rIiAiLCIgIik7by5jbGFzc05hbWU9aS50cmltKGEpfWVsc2Ugby5jbGFzc05hbWU9IiI7cmV0dXJuIHRoaXN9LHRvZ2dsZUNsYXNzOmZ1bmN0aW9uKGUsdCl7dmFyIG49dHlwZW9mIGUscj0iYm9vbGVhbiI9PXR5cGVvZiB0O3JldHVybiBpLmlzRnVuY3Rpb24oZSk/dGhpcy5lYWNoKChmdW5jdGlvbihuKXtpKHRoaXMpLnRvZ2dsZUNsYXNzKGUuY2FsbCh0aGlzLG4sdGhpcy5jbGFzc05hbWUsdCksdCl9KSk6dGhpcy5lYWNoKChmdW5jdGlvbigpe2lmKCJzdHJpbmciPT09bilmb3IodmFyIG8sYT0wLHM9aSh0aGlzKSxsPXQsdT1lLnNwbGl0KGcpO289dVthKytdOylsPXI/bDohcy5oYXNDbGFzcyhvKSwKc1tsPyJhZGRDbGFzcyI6InJlbW92ZUNsYXNzIl0obyk7ZWxzZSJ1bmRlZmluZWQiIT09biYmImJvb2xlYW4iIT09bnx8KHRoaXMuY2xhc3NOYW1lJiZpLl9kYXRhKHRoaXMsIl9fY2xhc3NOYW1lX18iLHRoaXMuY2xhc3NOYW1lKSx0aGlzLmNsYXNzTmFtZT10aGlzLmNsYXNzTmFtZXx8ITE9PT1lPyIiOmkuX2RhdGEodGhpcywiX19jbGFzc05hbWVfXyIpfHwiIil9KSl9LGhhc0NsYXNzOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0iICIrZSsiICIsbj0wLHI9dGhpcy5sZW5ndGg7bjxyO24rKylpZigxPT09dGhpc1tuXS5ub2RlVHlwZSYmKCIgIit0aGlzW25dLmNsYXNzTmFtZSsiICIpLnJlcGxhY2UobSwiICIpLmluZGV4T2YodCk+LTEpcmV0dXJuITA7cmV0dXJuITF9LHZhbDpmdW5jdGlvbihlKXt2YXIgdCxuLHIsbz10aGlzWzBdO3JldHVybiBhcmd1bWVudHMubGVuZ3RoPyhyPWkuaXNGdW5jdGlvbihlKSx0aGlzLmVhY2goKGZ1bmN0aW9uKG4pe3ZhciBvLGE9aSh0aGlzKTsxPT09dGhpcy5ub2RlVHlwZSYmKG51bGw9PShvPXI/ZS5jYWxsKHRoaXMsbixhLnZhbCgpKTplKT9vPSIiOiJudW1iZXIiPT10eXBlb2Ygbz9vKz0iIjppLmlzQXJyYXkobykmJihvPWkubWFwKG8sKGZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lPyIiOmUrIiJ9KSkpLCh0PWkudmFsSG9va3NbdGhpcy50eXBlXXx8aS52YWxIb29rc1t0aGlzLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCldKSYmInNldCJpbiB0JiZ2b2lkIDAhPT10LnNldCh0aGlzLG8sInZhbHVlIil8fCh0aGlzLnZhbHVlPW8pKX0pKSk6bz8odD1pLnZhbEhvb2tzW28udHlwZV18fGkudmFsSG9va3Nbby5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpXSkmJiJnZXQiaW4gdCYmdm9pZCAwIT09KG49dC5nZXQobywidmFsdWUiKSk/bjoic3RyaW5nIj09dHlwZW9mKG49by52YWx1ZSk/bi5yZXBsYWNlKHYsIiIpOm4/PyIiOnZvaWQgMH19KSxpLmV4dGVuZCh7dmFsSG9va3M6e29wdGlvbjp7Z2V0OmZ1bmN0aW9uKGUpe3ZhciB0PWUuYXR0cmlidXRlcy52YWx1ZTtyZXR1cm4hdHx8dC5zcGVjaWZpZWQ/ZS52YWx1ZTplLnRleHR9fSxzZWxlY3Q6e2dldDpmdW5jdGlvbihlKXt2YXIgdCxuLHIsbyxhPWUuc2VsZWN0ZWRJbmRleCxzPVtdLGw9ZS5vcHRpb25zLHU9InNlbGVjdC1vbmUiPT09ZS50eXBlO2lmKGE8MClyZXR1cm4gbnVsbDtmb3Iobj11P2E6MCxyPXU/YSsxOmwubGVuZ3RoO248cjtuKyspaWYoKG89bFtuXSkuc2VsZWN0ZWQmJihpLnN1cHBvcnQub3B0RGlzYWJsZWQ/IW8uZGlzYWJsZWQ6bnVsbD09PW8uZ2V0QXR0cmlidXRlKCJkaXNhYmxlZCIpKSYmKCFvLnBhcmVudE5vZGUuZGlzYWJsZWR8fCFpLm5vZGVOYW1lKG8ucGFyZW50Tm9kZSwib3B0Z3JvdXAiKSkpe2lmKHQ9aShvKS52YWwoKSx1KXJldHVybiB0O3MucHVzaCh0KX1yZXR1cm4gdSYmIXMubGVuZ3RoJiZsLmxlbmd0aD9pKGxbYV0pLnZhbCgpOnN9LHNldDpmdW5jdGlvbihlLHQpe3ZhciBuPWkubWFrZUFycmF5KHQpO3JldHVybiBpKGUpLmZpbmQoIm9wdGlvbiIpLmVhY2goKGZ1bmN0aW9uKCl7dGhpcy5zZWxlY3RlZD1pLmluQXJyYXkoaSh0aGlzKS52YWwoKSxuKT49MH0pKSxuLmxlbmd0aHx8KGUuc2VsZWN0ZWRJbmRleD0tMSksbn19fSxhdHRyRm46e3ZhbDohMCxjc3M6ITAsaHRtbDohMCx0ZXh0OiEwLGRhdGE6ITAsd2lkdGg6ITAsaGVpZ2h0OiEwLG9mZnNldDohMH0sYXR0cjpmdW5jdGlvbihlLHQsbixyKXt2YXIgbyxhLHMsbD1lLm5vZGVUeXBlO2lmKGUmJjMhPT1sJiY4IT09bCYmMiE9PWwpcmV0dXJuIHImJnQgaW4gaS5hdHRyRm4/aShlKVt0XShuKTp2b2lkIDA9PT1lLmdldEF0dHJpYnV0ZT9pLnByb3AoZSx0LG4pOigocz0xIT09bHx8IWkuaXNYTUxEb2MoZSkpJiYodD10LnRvTG93ZXJDYXNlKCksYT1pLmF0dHJIb29rc1t0XXx8KHcudGVzdCh0KT9wOmQpKSx2b2lkIDAhPT1uP251bGw9PT1uP3ZvaWQgaS5yZW1vdmVBdHRyKGUsdCk6YSYmInNldCJpbiBhJiZzJiZ2b2lkIDAhPT0obz1hLnNldChlLG4sdCkpP286KGUuc2V0QXR0cmlidXRlKHQsIiIrbiksbik6YSYmImdldCJpbiBhJiZzJiZudWxsIT09KG89YS5nZXQoZSx0KSk/bzpudWxsPT09KG89ZS5nZXRBdHRyaWJ1dGUodCkpP3ZvaWQgMDpvKX0scmVtb3ZlQXR0cjpmdW5jdGlvbihlLHQpe3ZhciBuLHIsbyxhLHMsbD0wO2lmKHQmJjE9PT1lLm5vZGVUeXBlKWZvcihhPShyPXQudG9Mb3dlckNhc2UoKS5zcGxpdChnKSkubGVuZ3RoO2w8YTtsKyspKG89cltsXSkmJihuPWkucHJvcEZpeFtvXXx8bywocz13LnRlc3QobykpfHxpLmF0dHIoZSxvLCIiKSxlLnJlbW92ZUF0dHJpYnV0ZShUP286bikscyYmbiBpbiBlJiYoZVtuXT0hMSkpfSxhdHRySG9va3M6e3R5cGU6e3NldDpmdW5jdGlvbihlLHQpe2lmKHkudGVzdChlLm5vZGVOYW1lKSYmZS5wYXJlbnROb2RlKWkuZXJyb3IoInR5cGUgcHJvcGVydHkgY2FuJ3QgYmUgY2hhbmdlZCIpO2Vsc2UgaWYoIWkuc3VwcG9ydC5yYWRpb1ZhbHVlJiYicmFkaW8iPT09dCYmaS5ub2RlTmFtZShlLCJpbnB1dCIpKXt2YXIgbj1lLnZhbHVlO3JldHVybiBlLnNldEF0dHJpYnV0ZSgidHlwZSIsdCksbiYmKGUudmFsdWU9biksdH19fSx2YWx1ZTp7Z2V0OmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGQmJmkubm9kZU5hbWUoZSwiYnV0dG9uIik/ZC5nZXQoZSx0KTp0IGluIGU/ZS52YWx1ZTpudWxsfSxzZXQ6ZnVuY3Rpb24oZSx0LG4pe2lmKGQmJmkubm9kZU5hbWUoZSwiYnV0dG9uIikpcmV0dXJuIGQuc2V0KGUsdCxuKTtlLnZhbHVlPXR9fX0scHJvcEZpeDp7dGFiaW5kZXg6InRhYkluZGV4IixyZWFkb25seToicmVhZE9ubHkiLGZvcjoiaHRtbEZvciIsY2xhc3M6ImNsYXNzTmFtZSIsbWF4bGVuZ3RoOiJtYXhMZW5ndGgiLGNlbGxzcGFjaW5nOiJjZWxsU3BhY2luZyIsY2VsbHBhZGRpbmc6ImNlbGxQYWRkaW5nIixyb3dzcGFuOiJyb3dTcGFuIixjb2xzcGFuOiJjb2xTcGFuIix1c2VtYXA6InVzZU1hcCIsZnJhbWVib3JkZXI6ImZyYW1lQm9yZGVyIixjb250ZW50ZWRpdGFibGU6ImNvbnRlbnRFZGl0YWJsZSJ9LHByb3A6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLG8sYT1lLm5vZGVUeXBlCjtpZihlJiYzIT09YSYmOCE9PWEmJjIhPT1hKXJldHVybigxIT09YXx8IWkuaXNYTUxEb2MoZSkpJiYodD1pLnByb3BGaXhbdF18fHQsbz1pLnByb3BIb29rc1t0XSksdm9pZCAwIT09bj9vJiYic2V0ImluIG8mJnZvaWQgMCE9PShyPW8uc2V0KGUsbix0KSk/cjplW3RdPW46byYmImdldCJpbiBvJiZudWxsIT09KHI9by5nZXQoZSx0KSk/cjplW3RdfSxwcm9wSG9va3M6e3RhYkluZGV4OntnZXQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5nZXRBdHRyaWJ1dGVOb2RlKCJ0YWJpbmRleCIpO3JldHVybiB0JiZ0LnNwZWNpZmllZD9wYXJzZUludCh0LnZhbHVlLDEwKTpiLnRlc3QoZS5ub2RlTmFtZSl8fHgudGVzdChlLm5vZGVOYW1lKSYmZS5ocmVmPzA6dm9pZCAwfX19fSksaS5hdHRySG9va3MudGFiaW5kZXg9aS5wcm9wSG9va3MudGFiSW5kZXgscD17Z2V0OmZ1bmN0aW9uKGUsdCl7dmFyIG4scj1pLnByb3AoZSx0KTtyZXR1cm4hMD09PXJ8fCJib29sZWFuIiE9dHlwZW9mIHImJihuPWUuZ2V0QXR0cmlidXRlTm9kZSh0KSkmJiExIT09bi5ub2RlVmFsdWU/dC50b0xvd2VyQ2FzZSgpOnZvaWQgMH0sc2V0OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcjtyZXR1cm4hMT09PXQ/aS5yZW1vdmVBdHRyKGUsbik6KChyPWkucHJvcEZpeFtuXXx8bilpbiBlJiYoZVtyXT0hMCksZS5zZXRBdHRyaWJ1dGUobixuLnRvTG93ZXJDYXNlKCkpKSxufX0sVHx8KGg9e25hbWU6ITAsaWQ6ITAsY29vcmRzOiEwfSxkPWkudmFsSG9va3MuYnV0dG9uPXtnZXQ6ZnVuY3Rpb24oZSx0KXt2YXIgbjtyZXR1cm4obj1lLmdldEF0dHJpYnV0ZU5vZGUodCkpJiYoaFt0XT8iIiE9PW4ubm9kZVZhbHVlOm4uc3BlY2lmaWVkKT9uLm5vZGVWYWx1ZTp2b2lkIDB9LHNldDpmdW5jdGlvbihlLG4scil7dmFyIGk9ZS5nZXRBdHRyaWJ1dGVOb2RlKHIpO3JldHVybiBpfHwoaT10LmNyZWF0ZUF0dHJpYnV0ZShyKSxlLnNldEF0dHJpYnV0ZU5vZGUoaSkpLGkubm9kZVZhbHVlPW4rIiJ9fSxpLmF0dHJIb29rcy50YWJpbmRleC5zZXQ9ZC5zZXQsaS5lYWNoKFsid2lkdGgiLCJoZWlnaHQiXSwoZnVuY3Rpb24oZSx0KXtpLmF0dHJIb29rc1t0XT1pLmV4dGVuZChpLmF0dHJIb29rc1t0XSx7c2V0OmZ1bmN0aW9uKGUsbil7aWYoIiI9PT1uKXJldHVybiBlLnNldEF0dHJpYnV0ZSh0LCJhdXRvIiksbn19KX0pKSxpLmF0dHJIb29rcy5jb250ZW50ZWRpdGFibGU9e2dldDpkLmdldCxzZXQ6ZnVuY3Rpb24oZSx0LG4peyIiPT09dCYmKHQ9ImZhbHNlIiksZC5zZXQoZSx0LG4pfX0pLGkuc3VwcG9ydC5ocmVmTm9ybWFsaXplZHx8aS5lYWNoKFsiaHJlZiIsInNyYyIsIndpZHRoIiwiaGVpZ2h0Il0sKGZ1bmN0aW9uKGUsdCl7aS5hdHRySG9va3NbdF09aS5leHRlbmQoaS5hdHRySG9va3NbdF0se2dldDpmdW5jdGlvbihlKXt2YXIgbj1lLmdldEF0dHJpYnV0ZSh0LDIpO3JldHVybiBudWxsPT09bj92b2lkIDA6bn19KX0pKSxpLnN1cHBvcnQuc3R5bGV8fChpLmF0dHJIb29rcy5zdHlsZT17Z2V0OmZ1bmN0aW9uKGUpe3JldHVybiBlLnN0eWxlLmNzc1RleHQudG9Mb3dlckNhc2UoKXx8dm9pZCAwfSxzZXQ6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZS5zdHlsZS5jc3NUZXh0PSIiK3R9fSksaS5zdXBwb3J0Lm9wdFNlbGVjdGVkfHwoaS5wcm9wSG9va3Muc2VsZWN0ZWQ9aS5leHRlbmQoaS5wcm9wSG9va3Muc2VsZWN0ZWQse2dldDpmdW5jdGlvbihlKXt2YXIgdD1lLnBhcmVudE5vZGU7cmV0dXJuIHQmJih0LnNlbGVjdGVkSW5kZXgsdC5wYXJlbnROb2RlJiZ0LnBhcmVudE5vZGUuc2VsZWN0ZWRJbmRleCksbnVsbH19KSksaS5zdXBwb3J0LmVuY3R5cGV8fChpLnByb3BGaXguZW5jdHlwZT0iZW5jb2RpbmciKSxpLnN1cHBvcnQuY2hlY2tPbnx8aS5lYWNoKFsicmFkaW8iLCJjaGVja2JveCJdLChmdW5jdGlvbigpe2kudmFsSG9va3NbdGhpc109e2dldDpmdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09PWUuZ2V0QXR0cmlidXRlKCJ2YWx1ZSIpPyJvbiI6ZS52YWx1ZX19fSkpLGkuZWFjaChbInJhZGlvIiwiY2hlY2tib3giXSwoZnVuY3Rpb24oKXtpLnZhbEhvb2tzW3RoaXNdPWkuZXh0ZW5kKGkudmFsSG9va3NbdGhpc10se3NldDpmdW5jdGlvbihlLHQpe2lmKGkuaXNBcnJheSh0KSlyZXR1cm4gZS5jaGVja2VkPWkuaW5BcnJheShpKGUpLnZhbCgpLHQpPj0wfX0pfSkpO3ZhciBOPS9eKD86dGV4dGFyZWF8aW5wdXR8c2VsZWN0KSQvaSxDPS9eKFteXC5dKik/KD86XC4oLispKT8kLyxTPS8oPzpefFxzKWhvdmVyKFwuXFMrKT9cYi8saz0vXmtleS8sRT0vXig/Om1vdXNlfGNvbnRleHRtZW51KXxjbGljay8sQT0vXig/OmZvY3VzaW5mb2N1c3xmb2N1c291dGJsdXIpJC8sRD0vXihcdyopKD86IyhbXHdcLV0rKSk/KD86XC4oW1x3XC1dKykpPyQvLEw9ZnVuY3Rpb24oZSl7dmFyIHQ9RC5leGVjKGUpO3JldHVybiB0JiYodFsxXT0odFsxXXx8IiIpLnRvTG93ZXJDYXNlKCksdFszXT10WzNdJiZuZXcgUmVnRXhwKCIoPzpefFxccykiK3RbM10rIig/Olxcc3wkKSIpKSx0fSxGPWZ1bmN0aW9uKGUpe3JldHVybiBpLmV2ZW50LnNwZWNpYWwuaG92ZXI/ZTplLnJlcGxhY2UoUywibW91c2VlbnRlciQxIG1vdXNlbGVhdmUkMSIpfTtmdW5jdGlvbiBqKCl7cmV0dXJuITF9ZnVuY3Rpb24gXygpe3JldHVybiEwfWkuZXZlbnQ9e2FkZDpmdW5jdGlvbihlLHQsbixyLG8pe3ZhciBhLHMsbCx1LGMsZixkLHAsaCxtLGc7aWYoMyE9PWUubm9kZVR5cGUmJjghPT1lLm5vZGVUeXBlJiZ0JiZuJiYoYT1pLl9kYXRhKGUpKSl7Zm9yKG4uaGFuZGxlciYmKG49KGg9bikuaGFuZGxlcixvPWguc2VsZWN0b3IpLG4uZ3VpZHx8KG4uZ3VpZD1pLmd1aWQrKyksKGw9YS5ldmVudHMpfHwoYS5ldmVudHM9bD17fSksKHM9YS5oYW5kbGUpfHwoYS5oYW5kbGU9cz1mdW5jdGlvbihlKXtyZXR1cm4gdm9pZCAwPT09aXx8ZSYmaS5ldmVudC50cmlnZ2VyZWQ9PT1lLnR5cGU/dm9pZCAwOmkuZXZlbnQuZGlzcGF0Y2guYXBwbHkocy5lbGVtLGFyZ3VtZW50cyl9LHMuZWxlbT1lKSx0PWkudHJpbShGKHQpKS5zcGxpdCgiICIpLHU9MDt1PHQubGVuZ3RoO3UrKylmPShjPUMuZXhlYyh0W3VdKXx8W10pWzFdLApkPShjWzJdfHwiIikuc3BsaXQoIi4iKS5zb3J0KCksZz1pLmV2ZW50LnNwZWNpYWxbZl18fHt9LGY9KG8/Zy5kZWxlZ2F0ZVR5cGU6Zy5iaW5kVHlwZSl8fGYsZz1pLmV2ZW50LnNwZWNpYWxbZl18fHt9LHA9aS5leHRlbmQoe3R5cGU6ZixvcmlnVHlwZTpjWzFdLGRhdGE6cixoYW5kbGVyOm4sZ3VpZDpuLmd1aWQsc2VsZWN0b3I6byxxdWljazpvJiZMKG8pLG5hbWVzcGFjZTpkLmpvaW4oIi4iKX0saCksKG09bFtmXSl8fCgobT1sW2ZdPVtdKS5kZWxlZ2F0ZUNvdW50PTAsZy5zZXR1cCYmITEhPT1nLnNldHVwLmNhbGwoZSxyLGQscyl8fChlLmFkZEV2ZW50TGlzdGVuZXI/ZS5hZGRFdmVudExpc3RlbmVyKGYscywhMSk6ZS5hdHRhY2hFdmVudCYmZS5hdHRhY2hFdmVudCgib24iK2YscykpKSxnLmFkZCYmKGcuYWRkLmNhbGwoZSxwKSxwLmhhbmRsZXIuZ3VpZHx8KHAuaGFuZGxlci5ndWlkPW4uZ3VpZCkpLG8/bS5zcGxpY2UobS5kZWxlZ2F0ZUNvdW50KyssMCxwKTptLnB1c2gocCksaS5ldmVudC5nbG9iYWxbZl09ITA7ZT1udWxsfX0sZ2xvYmFsOnt9LHJlbW92ZTpmdW5jdGlvbihlLHQsbixyLG8pe3ZhciBhLHMsbCx1LGMsZixkLHAsaCxtLGcsdix5PWkuaGFzRGF0YShlKSYmaS5fZGF0YShlKTtpZih5JiYocD15LmV2ZW50cykpe2Zvcih0PWkudHJpbShGKHR8fCIiKSkuc3BsaXQoIiAiKSxhPTA7YTx0Lmxlbmd0aDthKyspaWYobD11PShzPUMuZXhlYyh0W2FdKXx8W10pWzFdLGM9c1syXSxsKXtmb3IoaD1pLmV2ZW50LnNwZWNpYWxbbF18fHt9LGY9KGc9cFtsPShyP2guZGVsZWdhdGVUeXBlOmguYmluZFR5cGUpfHxsXXx8W10pLmxlbmd0aCxjPWM/bmV3IFJlZ0V4cCgiKF58XFwuKSIrYy5zcGxpdCgiLiIpLnNvcnQoKS5qb2luKCJcXC4oPzouKlxcLik/IikrIihcXC58JCkiKTpudWxsLGQ9MDtkPGcubGVuZ3RoO2QrKyl2PWdbZF0sIW8mJnUhPT12Lm9yaWdUeXBlfHxuJiZuLmd1aWQhPT12Lmd1aWR8fGMmJiFjLnRlc3Qodi5uYW1lc3BhY2UpfHxyJiZyIT09di5zZWxlY3RvciYmKCIqKiIhPT1yfHwhdi5zZWxlY3Rvcil8fChnLnNwbGljZShkLS0sMSksdi5zZWxlY3RvciYmZy5kZWxlZ2F0ZUNvdW50LS0saC5yZW1vdmUmJmgucmVtb3ZlLmNhbGwoZSx2KSk7MD09PWcubGVuZ3RoJiZmIT09Zy5sZW5ndGgmJihoLnRlYXJkb3duJiYhMSE9PWgudGVhcmRvd24uY2FsbChlLGMpfHxpLnJlbW92ZUV2ZW50KGUsbCx5LmhhbmRsZSksZGVsZXRlIHBbbF0pfWVsc2UgZm9yKGwgaW4gcClpLmV2ZW50LnJlbW92ZShlLGwrdFthXSxuLHIsITApO2kuaXNFbXB0eU9iamVjdChwKSYmKChtPXkuaGFuZGxlKSYmKG0uZWxlbT1udWxsKSxpLnJlbW92ZURhdGEoZSxbImV2ZW50cyIsImhhbmRsZSJdLCEwKSl9fSxjdXN0b21FdmVudDp7Z2V0RGF0YTohMCxzZXREYXRhOiEwLGNoYW5nZURhdGE6ITB9LHRyaWdnZXI6ZnVuY3Rpb24oZSx0LG4scil7aWYoIW58fDMhPT1uLm5vZGVUeXBlJiY4IT09bi5ub2RlVHlwZSl7dmFyIG8sYSxzLGwsdSxjLGYsZCxwLGgsbT1lLnR5cGV8fGUsZz1bXTtpZighQS50ZXN0KG0raS5ldmVudC50cmlnZ2VyZWQpJiYobS5pbmRleE9mKCIhIik+PTAmJihtPW0uc2xpY2UoMCwtMSksYT0hMCksbS5pbmRleE9mKCIuIik+PTAmJihnPW0uc3BsaXQoIi4iKSxtPWcuc2hpZnQoKSxnLnNvcnQoKSksbiYmIWkuZXZlbnQuY3VzdG9tRXZlbnRbbV18fGkuZXZlbnQuZ2xvYmFsW21dKSlpZigoZT0ib2JqZWN0Ij09dHlwZW9mIGU/ZVtpLmV4cGFuZG9dP2U6bmV3IGkuRXZlbnQobSxlKTpuZXcgaS5FdmVudChtKSkudHlwZT1tLGUuaXNUcmlnZ2VyPSEwLGUuZXhjbHVzaXZlPWEsZS5uYW1lc3BhY2U9Zy5qb2luKCIuIiksZS5uYW1lc3BhY2VfcmU9ZS5uYW1lc3BhY2U/bmV3IFJlZ0V4cCgiKF58XFwuKSIrZy5qb2luKCJcXC4oPzouKlxcLik/IikrIihcXC58JCkiKTpudWxsLGM9bS5pbmRleE9mKCI6Iik8MD8ib24iK206IiIsbil7aWYoZS5yZXN1bHQ9dm9pZCAwLGUudGFyZ2V0fHwoZS50YXJnZXQ9biksKHQ9bnVsbCE9dD9pLm1ha2VBcnJheSh0KTpbXSkudW5zaGlmdChlKSwhKGY9aS5ldmVudC5zcGVjaWFsW21dfHx7fSkudHJpZ2dlcnx8ITEhPT1mLnRyaWdnZXIuYXBwbHkobix0KSl7aWYocD1bW24sZi5iaW5kVHlwZXx8bV1dLCFyJiYhZi5ub0J1YmJsZSYmIWkuaXNXaW5kb3cobikpe2ZvcihoPWYuZGVsZWdhdGVUeXBlfHxtLGw9QS50ZXN0KGgrbSk/bjpuLnBhcmVudE5vZGUsdT1udWxsO2w7bD1sLnBhcmVudE5vZGUpcC5wdXNoKFtsLGhdKSx1PWw7dSYmdT09PW4ub3duZXJEb2N1bWVudCYmcC5wdXNoKFt1LmRlZmF1bHRWaWV3fHx1LnBhcmVudFdpbmRvd3x8d2luZG93LGhdKX1mb3Iocz0wO3M8cC5sZW5ndGgmJiFlLmlzUHJvcGFnYXRpb25TdG9wcGVkKCk7cysrKWw9cFtzXVswXSxlLnR5cGU9cFtzXVsxXSwoZD0oaS5fZGF0YShsLCJldmVudHMiKXx8e30pW2UudHlwZV0mJmkuX2RhdGEobCwiaGFuZGxlIikpJiZkLmFwcGx5KGwsdCksKGQ9YyYmbFtjXSkmJmkuYWNjZXB0RGF0YShsKSYmITE9PT1kLmFwcGx5KGwsdCkmJmUucHJldmVudERlZmF1bHQoKTtyZXR1cm4gZS50eXBlPW0scnx8ZS5pc0RlZmF1bHRQcmV2ZW50ZWQoKXx8Zi5fZGVmYXVsdCYmITEhPT1mLl9kZWZhdWx0LmFwcGx5KG4ub3duZXJEb2N1bWVudCx0KXx8ImNsaWNrIj09PW0mJmkubm9kZU5hbWUobiwiYSIpfHwhaS5hY2NlcHREYXRhKG4pfHxjJiZuW21dJiYoImZvY3VzIiE9PW0mJiJibHVyIiE9PW18fDAhPT1lLnRhcmdldC5vZmZzZXRXaWR0aCkmJiFpLmlzV2luZG93KG4pJiYoKHU9bltjXSkmJihuW2NdPW51bGwpLGkuZXZlbnQudHJpZ2dlcmVkPW0sblttXSgpLGkuZXZlbnQudHJpZ2dlcmVkPXZvaWQgMCx1JiYobltjXT11KSksZS5yZXN1bHR9fWVsc2UgZm9yKHMgaW4gbz1pLmNhY2hlKW9bc10uZXZlbnRzJiZvW3NdLmV2ZW50c1ttXSYmaS5ldmVudC50cmlnZ2VyKGUsdCxvW3NdLmhhbmRsZS5lbGVtLCEwKX19LGRpc3BhdGNoOmZ1bmN0aW9uKGUpe2U9aS5ldmVudC5maXgoZXx8d2luZG93LmV2ZW50KQo7dmFyIHQsbixyLG8sYSxzLGwsdSxjLGYsZD0oaS5fZGF0YSh0aGlzLCJldmVudHMiKXx8e30pW2UudHlwZV18fFtdLHA9ZC5kZWxlZ2F0ZUNvdW50LGg9W10uc2xpY2UuY2FsbChhcmd1bWVudHMsMCksbT0hZS5leGNsdXNpdmUmJiFlLm5hbWVzcGFjZSxnPWkuZXZlbnQuc3BlY2lhbFtlLnR5cGVdfHx7fSx2PVtdO2lmKGhbMF09ZSxlLmRlbGVnYXRlVGFyZ2V0PXRoaXMsIWcucHJlRGlzcGF0Y2h8fCExIT09Zy5wcmVEaXNwYXRjaC5jYWxsKHRoaXMsZSkpe2lmKHAmJighZS5idXR0b258fCJjbGljayIhPT1lLnR5cGUpKWZvcigobz1pKHRoaXMpKS5jb250ZXh0PXRoaXMub3duZXJEb2N1bWVudHx8dGhpcyxyPWUudGFyZ2V0O3IhPXRoaXM7cj1yLnBhcmVudE5vZGV8fHRoaXMpaWYoITAhPT1yLmRpc2FibGVkKXtmb3Iocz17fSx1PVtdLG9bMF09cix0PTA7dDxwO3QrKyl2b2lkIDA9PT1zW2Y9KGM9ZFt0XSkuc2VsZWN0b3JdJiYoc1tmXT1jLnF1aWNrPyh5PXIsYj1jLnF1aWNrLHg9dm9pZCAwLHg9eS5hdHRyaWJ1dGVzfHx7fSwoIWJbMV18fHkubm9kZU5hbWUudG9Mb3dlckNhc2UoKT09PWJbMV0pJiYoIWJbMl18fCh4LmlkfHx7fSkudmFsdWU9PT1iWzJdKSYmKCFiWzNdfHxiWzNdLnRlc3QoKHguY2xhc3N8fHt9KS52YWx1ZSkpKTpvLmlzKGYpKSxzW2ZdJiZ1LnB1c2goYyk7dS5sZW5ndGgmJnYucHVzaCh7ZWxlbTpyLG1hdGNoZXM6dX0pfXZhciB5LGIseDtmb3IoZC5sZW5ndGg+cCYmdi5wdXNoKHtlbGVtOnRoaXMsbWF0Y2hlczpkLnNsaWNlKHApfSksdD0wO3Q8di5sZW5ndGgmJiFlLmlzUHJvcGFnYXRpb25TdG9wcGVkKCk7dCsrKWZvcihsPXZbdF0sZS5jdXJyZW50VGFyZ2V0PWwuZWxlbSxuPTA7bjxsLm1hdGNoZXMubGVuZ3RoJiYhZS5pc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZCgpO24rKyljPWwubWF0Y2hlc1tuXSwobXx8IWUubmFtZXNwYWNlJiYhYy5uYW1lc3BhY2V8fGUubmFtZXNwYWNlX3JlJiZlLm5hbWVzcGFjZV9yZS50ZXN0KGMubmFtZXNwYWNlKSkmJihlLmRhdGE9Yy5kYXRhLGUuaGFuZGxlT2JqPWMsdm9pZCAwIT09KGE9KChpLmV2ZW50LnNwZWNpYWxbYy5vcmlnVHlwZV18fHt9KS5oYW5kbGV8fGMuaGFuZGxlcikuYXBwbHkobC5lbGVtLGgpKSYmKGUucmVzdWx0PWEsITE9PT1hJiYoZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCkpKSk7cmV0dXJuIGcucG9zdERpc3BhdGNoJiZnLnBvc3REaXNwYXRjaC5jYWxsKHRoaXMsZSksZS5yZXN1bHR9fSxwcm9wczoiYXR0ckNoYW5nZSBhdHRyTmFtZSByZWxhdGVkTm9kZSBzcmNFbGVtZW50IGFsdEtleSBidWJibGVzIGNhbmNlbGFibGUgY3RybEtleSBjdXJyZW50VGFyZ2V0IGV2ZW50UGhhc2UgbWV0YUtleSByZWxhdGVkVGFyZ2V0IHNoaWZ0S2V5IHRhcmdldCB0aW1lU3RhbXAgdmlldyB3aGljaCIuc3BsaXQoIiAiKSxmaXhIb29rczp7fSxrZXlIb29rczp7cHJvcHM6ImNoYXIgY2hhckNvZGUga2V5IGtleUNvZGUiLnNwbGl0KCIgIiksZmlsdGVyOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIG51bGw9PWUud2hpY2gmJihlLndoaWNoPW51bGwhPXQuY2hhckNvZGU/dC5jaGFyQ29kZTp0LmtleUNvZGUpLGV9fSxtb3VzZUhvb2tzOntwcm9wczoiYnV0dG9uIGJ1dHRvbnMgY2xpZW50WCBjbGllbnRZIGZyb21FbGVtZW50IG9mZnNldFggb2Zmc2V0WSBwYWdlWCBwYWdlWSBzY3JlZW5YIHNjcmVlblkgdG9FbGVtZW50Ii5zcGxpdCgiICIpLGZpbHRlcjpmdW5jdGlvbihlLG4pe3ZhciByLGksbyxhPW4uYnV0dG9uLHM9bi5mcm9tRWxlbWVudDtyZXR1cm4gbnVsbD09ZS5wYWdlWCYmbnVsbCE9bi5jbGllbnRYJiYoaT0ocj1lLnRhcmdldC5vd25lckRvY3VtZW50fHx0KS5kb2N1bWVudEVsZW1lbnQsbz1yLmJvZHksZS5wYWdlWD1uLmNsaWVudFgrKGkmJmkuc2Nyb2xsTGVmdHx8byYmby5zY3JvbGxMZWZ0fHwwKS0oaSYmaS5jbGllbnRMZWZ0fHxvJiZvLmNsaWVudExlZnR8fDApLGUucGFnZVk9bi5jbGllbnRZKyhpJiZpLnNjcm9sbFRvcHx8byYmby5zY3JvbGxUb3B8fDApLShpJiZpLmNsaWVudFRvcHx8byYmby5jbGllbnRUb3B8fDApKSwhZS5yZWxhdGVkVGFyZ2V0JiZzJiYoZS5yZWxhdGVkVGFyZ2V0PXM9PT1lLnRhcmdldD9uLnRvRWxlbWVudDpzKSxlLndoaWNofHx2b2lkIDA9PT1hfHwoZS53aGljaD0xJmE/MToyJmE/Mzo0JmE/MjowKSxlfX0sZml4OmZ1bmN0aW9uKGUpe2lmKGVbaS5leHBhbmRvXSlyZXR1cm4gZTt2YXIgbixyLG89ZSxhPWkuZXZlbnQuZml4SG9va3NbZS50eXBlXXx8e30scz1hLnByb3BzP3RoaXMucHJvcHMuY29uY2F0KGEucHJvcHMpOnRoaXMucHJvcHM7Zm9yKGU9aS5FdmVudChvKSxuPXMubGVuZ3RoO247KWVbcj1zWy0tbl1dPW9bcl07cmV0dXJuIGUudGFyZ2V0fHwoZS50YXJnZXQ9by5zcmNFbGVtZW50fHx0KSwzPT09ZS50YXJnZXQubm9kZVR5cGUmJihlLnRhcmdldD1lLnRhcmdldC5wYXJlbnROb2RlKSx2b2lkIDA9PT1lLm1ldGFLZXkmJihlLm1ldGFLZXk9ZS5jdHJsS2V5KSxhLmZpbHRlcj9hLmZpbHRlcihlLG8pOmV9LHNwZWNpYWw6e3JlYWR5OntzZXR1cDppLmJpbmRSZWFkeX0sbG9hZDp7bm9CdWJibGU6ITB9LGZvY3VzOntkZWxlZ2F0ZVR5cGU6ImZvY3VzaW4ifSxibHVyOntkZWxlZ2F0ZVR5cGU6ImZvY3Vzb3V0In0sYmVmb3JldW5sb2FkOntzZXR1cDpmdW5jdGlvbihlLHQsbil7aS5pc1dpbmRvdyh0aGlzKSYmKHRoaXMub25iZWZvcmV1bmxvYWQ9bil9LHRlYXJkb3duOmZ1bmN0aW9uKGUsdCl7dGhpcy5vbmJlZm9yZXVubG9hZD09PXQmJih0aGlzLm9uYmVmb3JldW5sb2FkPW51bGwpfX19LHNpbXVsYXRlOmZ1bmN0aW9uKGUsdCxuLHIpe3ZhciBvPWkuZXh0ZW5kKG5ldyBpLkV2ZW50LG4se3R5cGU6ZSxpc1NpbXVsYXRlZDohMCxvcmlnaW5hbEV2ZW50Ont9fSk7cj9pLmV2ZW50LnRyaWdnZXIobyxudWxsLHQpOmkuZXZlbnQuZGlzcGF0Y2guY2FsbCh0LG8pLG8uaXNEZWZhdWx0UHJldmVudGVkKCkmJm4ucHJldmVudERlZmF1bHQoKX19LGkuZXZlbnQuaGFuZGxlPWkuZXZlbnQuZGlzcGF0Y2gsCmkucmVtb3ZlRXZlbnQ9dC5yZW1vdmVFdmVudExpc3RlbmVyP2Z1bmN0aW9uKGUsdCxuKXtlLnJlbW92ZUV2ZW50TGlzdGVuZXImJmUucmVtb3ZlRXZlbnRMaXN0ZW5lcih0LG4sITEpfTpmdW5jdGlvbihlLHQsbil7ZS5kZXRhY2hFdmVudCYmZS5kZXRhY2hFdmVudCgib24iK3Qsbil9LGkuRXZlbnQ9ZnVuY3Rpb24oZSx0KXtpZighKHRoaXMgaW5zdGFuY2VvZiBpLkV2ZW50KSlyZXR1cm4gbmV3IGkuRXZlbnQoZSx0KTtlJiZlLnR5cGU/KHRoaXMub3JpZ2luYWxFdmVudD1lLHRoaXMudHlwZT1lLnR5cGUsdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQ9ZS5kZWZhdWx0UHJldmVudGVkfHwhMT09PWUucmV0dXJuVmFsdWV8fGUuZ2V0UHJldmVudERlZmF1bHQmJmUuZ2V0UHJldmVudERlZmF1bHQoKT9fOmopOnRoaXMudHlwZT1lLHQmJmkuZXh0ZW5kKHRoaXMsdCksdGhpcy50aW1lU3RhbXA9ZSYmZS50aW1lU3RhbXB8fGkubm93KCksdGhpc1tpLmV4cGFuZG9dPSEwfSxpLkV2ZW50LnByb3RvdHlwZT17cHJldmVudERlZmF1bHQ6ZnVuY3Rpb24oKXt0aGlzLmlzRGVmYXVsdFByZXZlbnRlZD1fO3ZhciBlPXRoaXMub3JpZ2luYWxFdmVudDtlJiYoZS5wcmV2ZW50RGVmYXVsdD9lLnByZXZlbnREZWZhdWx0KCk6ZS5yZXR1cm5WYWx1ZT0hMSl9LHN0b3BQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3RoaXMuaXNQcm9wYWdhdGlvblN0b3BwZWQ9Xzt2YXIgZT10aGlzLm9yaWdpbmFsRXZlbnQ7ZSYmKGUuc3RvcFByb3BhZ2F0aW9uJiZlLnN0b3BQcm9wYWdhdGlvbigpLGUuY2FuY2VsQnViYmxlPSEwKX0sc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uOmZ1bmN0aW9uKCl7dGhpcy5pc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZD1fLHRoaXMuc3RvcFByb3BhZ2F0aW9uKCl9LGlzRGVmYXVsdFByZXZlbnRlZDpqLGlzUHJvcGFnYXRpb25TdG9wcGVkOmosaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQ6an0saS5lYWNoKHttb3VzZWVudGVyOiJtb3VzZW92ZXIiLG1vdXNlbGVhdmU6Im1vdXNlb3V0In0sKGZ1bmN0aW9uKGUsdCl7aS5ldmVudC5zcGVjaWFsW2VdPXtkZWxlZ2F0ZVR5cGU6dCxiaW5kVHlwZTp0LGhhbmRsZTpmdW5jdGlvbihlKXt2YXIgbixyPWUucmVsYXRlZFRhcmdldCxvPWUuaGFuZGxlT2JqO28uc2VsZWN0b3I7cmV0dXJuIHImJihyPT09dGhpc3x8aS5jb250YWlucyh0aGlzLHIpKXx8KGUudHlwZT1vLm9yaWdUeXBlLG49by5oYW5kbGVyLmFwcGx5KHRoaXMsYXJndW1lbnRzKSxlLnR5cGU9dCksbn19fSkpLGkuc3VwcG9ydC5zdWJtaXRCdWJibGVzfHwoaS5ldmVudC5zcGVjaWFsLnN1Ym1pdD17c2V0dXA6ZnVuY3Rpb24oKXtpZihpLm5vZGVOYW1lKHRoaXMsImZvcm0iKSlyZXR1cm4hMTtpLmV2ZW50LmFkZCh0aGlzLCJjbGljay5fc3VibWl0IGtleXByZXNzLl9zdWJtaXQiLChmdW5jdGlvbihlKXt2YXIgdD1lLnRhcmdldCxuPWkubm9kZU5hbWUodCwiaW5wdXQiKXx8aS5ub2RlTmFtZSh0LCJidXR0b24iKT90LmZvcm06dm9pZCAwO24mJiFuLl9zdWJtaXRfYXR0YWNoZWQmJihpLmV2ZW50LmFkZChuLCJzdWJtaXQuX3N1Ym1pdCIsKGZ1bmN0aW9uKGUpe2UuX3N1Ym1pdF9idWJibGU9ITB9KSksbi5fc3VibWl0X2F0dGFjaGVkPSEwKX0pKX0scG9zdERpc3BhdGNoOmZ1bmN0aW9uKGUpe2UuX3N1Ym1pdF9idWJibGUmJihkZWxldGUgZS5fc3VibWl0X2J1YmJsZSx0aGlzLnBhcmVudE5vZGUmJiFlLmlzVHJpZ2dlciYmaS5ldmVudC5zaW11bGF0ZSgic3VibWl0Iix0aGlzLnBhcmVudE5vZGUsZSwhMCkpfSx0ZWFyZG93bjpmdW5jdGlvbigpe2lmKGkubm9kZU5hbWUodGhpcywiZm9ybSIpKXJldHVybiExO2kuZXZlbnQucmVtb3ZlKHRoaXMsIi5fc3VibWl0Iil9fSksaS5zdXBwb3J0LmNoYW5nZUJ1YmJsZXN8fChpLmV2ZW50LnNwZWNpYWwuY2hhbmdlPXtzZXR1cDpmdW5jdGlvbigpe2lmKE4udGVzdCh0aGlzLm5vZGVOYW1lKSlyZXR1cm4iY2hlY2tib3giIT09dGhpcy50eXBlJiYicmFkaW8iIT09dGhpcy50eXBlfHwoaS5ldmVudC5hZGQodGhpcywicHJvcGVydHljaGFuZ2UuX2NoYW5nZSIsKGZ1bmN0aW9uKGUpeyJjaGVja2VkIj09PWUub3JpZ2luYWxFdmVudC5wcm9wZXJ0eU5hbWUmJih0aGlzLl9qdXN0X2NoYW5nZWQ9ITApfSkpLGkuZXZlbnQuYWRkKHRoaXMsImNsaWNrLl9jaGFuZ2UiLChmdW5jdGlvbihlKXt0aGlzLl9qdXN0X2NoYW5nZWQmJiFlLmlzVHJpZ2dlciYmKHRoaXMuX2p1c3RfY2hhbmdlZD0hMSxpLmV2ZW50LnNpbXVsYXRlKCJjaGFuZ2UiLHRoaXMsZSwhMCkpfSkpKSwhMTtpLmV2ZW50LmFkZCh0aGlzLCJiZWZvcmVhY3RpdmF0ZS5fY2hhbmdlIiwoZnVuY3Rpb24oZSl7dmFyIHQ9ZS50YXJnZXQ7Ti50ZXN0KHQubm9kZU5hbWUpJiYhdC5fY2hhbmdlX2F0dGFjaGVkJiYoaS5ldmVudC5hZGQodCwiY2hhbmdlLl9jaGFuZ2UiLChmdW5jdGlvbihlKXshdGhpcy5wYXJlbnROb2RlfHxlLmlzU2ltdWxhdGVkfHxlLmlzVHJpZ2dlcnx8aS5ldmVudC5zaW11bGF0ZSgiY2hhbmdlIix0aGlzLnBhcmVudE5vZGUsZSwhMCl9KSksdC5fY2hhbmdlX2F0dGFjaGVkPSEwKX0pKX0saGFuZGxlOmZ1bmN0aW9uKGUpe3ZhciB0PWUudGFyZ2V0O2lmKHRoaXMhPT10fHxlLmlzU2ltdWxhdGVkfHxlLmlzVHJpZ2dlcnx8InJhZGlvIiE9PXQudHlwZSYmImNoZWNrYm94IiE9PXQudHlwZSlyZXR1cm4gZS5oYW5kbGVPYmouaGFuZGxlci5hcHBseSh0aGlzLGFyZ3VtZW50cyl9LHRlYXJkb3duOmZ1bmN0aW9uKCl7cmV0dXJuIGkuZXZlbnQucmVtb3ZlKHRoaXMsIi5fY2hhbmdlIiksTi50ZXN0KHRoaXMubm9kZU5hbWUpfX0pLGkuc3VwcG9ydC5mb2N1c2luQnViYmxlc3x8aS5lYWNoKHtmb2N1czoiZm9jdXNpbiIsYmx1cjoiZm9jdXNvdXQifSwoZnVuY3Rpb24oZSxuKXt2YXIgcj0wLG89ZnVuY3Rpb24oZSl7aS5ldmVudC5zaW11bGF0ZShuLGUudGFyZ2V0LGkuZXZlbnQuZml4KGUpLCEwKX07aS5ldmVudC5zcGVjaWFsW25dPXtzZXR1cDpmdW5jdGlvbigpezA9PXIrKyYmdC5hZGRFdmVudExpc3RlbmVyKGUsbywhMCl9LHRlYXJkb3duOmZ1bmN0aW9uKCl7CjA9PS0tciYmdC5yZW1vdmVFdmVudExpc3RlbmVyKGUsbywhMCl9fX0pKSxpLmZuLmV4dGVuZCh7b246ZnVuY3Rpb24oZSx0LG4scixvKXt2YXIgYSxzO2lmKCJvYmplY3QiPT10eXBlb2YgZSl7Zm9yKHMgaW4ic3RyaW5nIiE9dHlwZW9mIHQmJihuPW58fHQsdD12b2lkIDApLGUpdGhpcy5vbihzLHQsbixlW3NdLG8pO3JldHVybiB0aGlzfWlmKG51bGw9PW4mJm51bGw9PXI/KHI9dCxuPXQ9dm9pZCAwKTpudWxsPT1yJiYoInN0cmluZyI9PXR5cGVvZiB0PyhyPW4sbj12b2lkIDApOihyPW4sbj10LHQ9dm9pZCAwKSksITE9PT1yKXI9ajtlbHNlIGlmKCFyKXJldHVybiB0aGlzO3JldHVybiAxPT09byYmKGE9cixyPWZ1bmN0aW9uKGUpe3JldHVybiBpKCkub2ZmKGUpLGEuYXBwbHkodGhpcyxhcmd1bWVudHMpfSxyLmd1aWQ9YS5ndWlkfHwoYS5ndWlkPWkuZ3VpZCsrKSksdGhpcy5lYWNoKChmdW5jdGlvbigpe2kuZXZlbnQuYWRkKHRoaXMsZSxyLG4sdCl9KSl9LG9uZTpmdW5jdGlvbihlLHQsbixyKXtyZXR1cm4gdGhpcy5vbihlLHQsbixyLDEpfSxvZmY6ZnVuY3Rpb24oZSx0LG4pe2lmKGUmJmUucHJldmVudERlZmF1bHQmJmUuaGFuZGxlT2JqKXt2YXIgcj1lLmhhbmRsZU9iajtyZXR1cm4gaShlLmRlbGVnYXRlVGFyZ2V0KS5vZmYoci5uYW1lc3BhY2U/ci5vcmlnVHlwZSsiLiIrci5uYW1lc3BhY2U6ci5vcmlnVHlwZSxyLnNlbGVjdG9yLHIuaGFuZGxlciksdGhpc31pZigib2JqZWN0Ij09dHlwZW9mIGUpe2Zvcih2YXIgbyBpbiBlKXRoaXMub2ZmKG8sdCxlW29dKTtyZXR1cm4gdGhpc31yZXR1cm4hMSE9PXQmJiJmdW5jdGlvbiIhPXR5cGVvZiB0fHwobj10LHQ9dm9pZCAwKSwhMT09PW4mJihuPWopLHRoaXMuZWFjaCgoZnVuY3Rpb24oKXtpLmV2ZW50LnJlbW92ZSh0aGlzLGUsbix0KX0pKX0sYmluZDpmdW5jdGlvbihlLHQsbil7cmV0dXJuIHRoaXMub24oZSxudWxsLHQsbil9LHVuYmluZDpmdW5jdGlvbihlLHQpe3JldHVybiB0aGlzLm9mZihlLG51bGwsdCl9LGxpdmU6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBpKHRoaXMuY29udGV4dCkub24oZSx0aGlzLnNlbGVjdG9yLHQsbiksdGhpc30sZGllOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGkodGhpcy5jb250ZXh0KS5vZmYoZSx0aGlzLnNlbGVjdG9yfHwiKioiLHQpLHRoaXN9LGRlbGVnYXRlOmZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiB0aGlzLm9uKHQsZSxuLHIpfSx1bmRlbGVnYXRlOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gMT09YXJndW1lbnRzLmxlbmd0aD90aGlzLm9mZihlLCIqKiIpOnRoaXMub2ZmKHQsZSxuKX0sdHJpZ2dlcjpmdW5jdGlvbihlLHQpe3JldHVybiB0aGlzLmVhY2goKGZ1bmN0aW9uKCl7aS5ldmVudC50cmlnZ2VyKGUsdCx0aGlzKX0pKX0sdHJpZ2dlckhhbmRsZXI6ZnVuY3Rpb24oZSx0KXtpZih0aGlzWzBdKXJldHVybiBpLmV2ZW50LnRyaWdnZXIoZSx0LHRoaXNbMF0sITApfSx0b2dnbGU6ZnVuY3Rpb24oZSl7dmFyIHQ9YXJndW1lbnRzLG49ZS5ndWlkfHxpLmd1aWQrKyxyPTAsbz1mdW5jdGlvbihuKXt2YXIgbz0oaS5fZGF0YSh0aGlzLCJsYXN0VG9nZ2xlIitlLmd1aWQpfHwwKSVyO3JldHVybiBpLl9kYXRhKHRoaXMsImxhc3RUb2dnbGUiK2UuZ3VpZCxvKzEpLG4ucHJldmVudERlZmF1bHQoKSx0W29dLmFwcGx5KHRoaXMsYXJndW1lbnRzKXx8ITF9O2ZvcihvLmd1aWQ9bjtyPHQubGVuZ3RoOyl0W3IrK10uZ3VpZD1uO3JldHVybiB0aGlzLmNsaWNrKG8pfSxob3ZlcjpmdW5jdGlvbihlLHQpe3JldHVybiB0aGlzLm1vdXNlZW50ZXIoZSkubW91c2VsZWF2ZSh0fHxlKX19KSxpLmVhY2goImJsdXIgZm9jdXMgZm9jdXNpbiBmb2N1c291dCBsb2FkIHJlc2l6ZSBzY3JvbGwgdW5sb2FkIGNsaWNrIGRibGNsaWNrIG1vdXNlZG93biBtb3VzZXVwIG1vdXNlbW92ZSBtb3VzZW92ZXIgbW91c2VvdXQgbW91c2VlbnRlciBtb3VzZWxlYXZlIGNoYW5nZSBzZWxlY3Qgc3VibWl0IGtleWRvd24ga2V5cHJlc3Mga2V5dXAgZXJyb3IgY29udGV4dG1lbnUiLnNwbGl0KCIgIiksKGZ1bmN0aW9uKGUsdCl7aS5mblt0XT1mdW5jdGlvbihlLG4pe3JldHVybiBudWxsPT1uJiYobj1lLGU9bnVsbCksYXJndW1lbnRzLmxlbmd0aD4wP3RoaXMub24odCxudWxsLGUsbik6dGhpcy50cmlnZ2VyKHQpfSxpLmF0dHJGbiYmKGkuYXR0ckZuW3RdPSEwKSxrLnRlc3QodCkmJihpLmV2ZW50LmZpeEhvb2tzW3RdPWkuZXZlbnQua2V5SG9va3MpLEUudGVzdCh0KSYmKGkuZXZlbnQuZml4SG9va3NbdF09aS5ldmVudC5tb3VzZUhvb2tzKX0pKSxmdW5jdGlvbigpe3ZhciBlPS8oKD86XCgoPzpcKFteKCldK1wpfFteKCldKykrXCl8XFsoPzpcW1teXFtcXV0qXF18WyciXVteJyJdKlsnIl18W15cW1xdJyJdKykrXF18XFwufFteID4rfiwoXFtcXF0rKSt8Wz4rfl0pKFxzKixccyopPygoPzoufFxyfFxuKSopL2csbj0ic2l6Y2FjaGUiKyhNYXRoLnJhbmRvbSgpKyIiKS5yZXBsYWNlKCIuIiwiIikscj0wLG89T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZyxhPSExLHM9ITAsbD0vXFwvZyx1PS9cclxuL2csYz0vXFcvO1swLDBdLnNvcnQoKGZ1bmN0aW9uKCl7cmV0dXJuIHM9ITEsMH0pKTt2YXIgZj1mdW5jdGlvbihuLHIsaSxhKXtpPWl8fFtdO3ZhciBzPXI9cnx8dDtpZigxIT09ci5ub2RlVHlwZSYmOSE9PXIubm9kZVR5cGUpcmV0dXJuW107aWYoIW58fCJzdHJpbmciIT10eXBlb2YgbilyZXR1cm4gaTt2YXIgbCx1LGMsZCxtLGcsdix5LGI9ITAsdz1mLmlzWE1MKHIpLFQ9W10sQz1uO2Rve2lmKGUuZXhlYygiIiksKGw9ZS5leGVjKEMpKSYmKEM9bFszXSxULnB1c2gobFsxXSksbFsyXSkpe2Q9bFszXTticmVha319d2hpbGUobCk7aWYoVC5sZW5ndGg+MSYmaC5leGVjKG4pKWlmKDI9PT1ULmxlbmd0aCYmcC5yZWxhdGl2ZVtUWzBdXSl1PU4oVFswXStUWzFdLHIsYSk7ZWxzZSBmb3IodT1wLnJlbGF0aXZlW1RbMF1dP1tyXTpmKFQuc2hpZnQoKSxyKTtULmxlbmd0aDspbj1ULnNoaWZ0KCkscC5yZWxhdGl2ZVtuXSYmKG4rPVQuc2hpZnQoKSksCnU9TihuLHUsYSk7ZWxzZSBpZighYSYmVC5sZW5ndGg+MSYmOT09PXIubm9kZVR5cGUmJiF3JiZwLm1hdGNoLklELnRlc3QoVFswXSkmJiFwLm1hdGNoLklELnRlc3QoVFtULmxlbmd0aC0xXSkmJihyPShtPWYuZmluZChULnNoaWZ0KCkscix3KSkuZXhwcj9mLmZpbHRlcihtLmV4cHIsbS5zZXQpWzBdOm0uc2V0WzBdKSxyKWZvcih1PShtPWE/e2V4cHI6VC5wb3AoKSxzZXQ6eChhKX06Zi5maW5kKFQucG9wKCksMSE9PVQubGVuZ3RofHwifiIhPT1UWzBdJiYiKyIhPT1UWzBdfHwhci5wYXJlbnROb2RlP3I6ci5wYXJlbnROb2RlLHcpKS5leHByP2YuZmlsdGVyKG0uZXhwcixtLnNldCk6bS5zZXQsVC5sZW5ndGg+MD9jPXgodSk6Yj0hMTtULmxlbmd0aDspdj1nPVQucG9wKCkscC5yZWxhdGl2ZVtnXT92PVQucG9wKCk6Zz0iIixudWxsPT12JiYodj1yKSxwLnJlbGF0aXZlW2ddKGMsdix3KTtlbHNlIGM9VD1bXTtpZihjfHwoYz11KSxjfHxmLmVycm9yKGd8fG4pLCJbb2JqZWN0IEFycmF5XSI9PT1vLmNhbGwoYykpaWYoYilpZihyJiYxPT09ci5ub2RlVHlwZSlmb3IoeT0wO251bGwhPWNbeV07eSsrKWNbeV0mJighMD09PWNbeV18fDE9PT1jW3ldLm5vZGVUeXBlJiZmLmNvbnRhaW5zKHIsY1t5XSkpJiZpLnB1c2godVt5XSk7ZWxzZSBmb3IoeT0wO251bGwhPWNbeV07eSsrKWNbeV0mJjE9PT1jW3ldLm5vZGVUeXBlJiZpLnB1c2godVt5XSk7ZWxzZSBpLnB1c2guYXBwbHkoaSxjKTtlbHNlIHgoYyxpKTtyZXR1cm4gZCYmKGYoZCxzLGksYSksZi51bmlxdWVTb3J0KGkpKSxpfTtmLnVuaXF1ZVNvcnQ9ZnVuY3Rpb24oZSl7aWYodiYmKGE9cyxlLnNvcnQodiksYSkpZm9yKHZhciB0PTE7dDxlLmxlbmd0aDt0KyspZVt0XT09PWVbdC0xXSYmZS5zcGxpY2UodC0tLDEpO3JldHVybiBlfSxmLm1hdGNoZXM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZihlLG51bGwsbnVsbCx0KX0sZi5tYXRjaGVzU2VsZWN0b3I9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZih0LG51bGwsbnVsbCxbZV0pLmxlbmd0aD4wfSxmLmZpbmQ9ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbyxhLHMsdTtpZighZSlyZXR1cm5bXTtmb3IoaT0wLG89cC5vcmRlci5sZW5ndGg7aTxvO2krKylpZihzPXAub3JkZXJbaV0sKGE9cC5sZWZ0TWF0Y2hbc10uZXhlYyhlKSkmJih1PWFbMV0sYS5zcGxpY2UoMSwxKSwiXFwiIT09dS5zdWJzdHIodS5sZW5ndGgtMSkmJihhWzFdPShhWzFdfHwiIikucmVwbGFjZShsLCIiKSxudWxsIT0ocj1wLmZpbmRbc10oYSx0LG4pKSkpKXtlPWUucmVwbGFjZShwLm1hdGNoW3NdLCIiKTticmVha31yZXR1cm4gcnx8KHI9dm9pZCAwIT09dC5nZXRFbGVtZW50c0J5VGFnTmFtZT90LmdldEVsZW1lbnRzQnlUYWdOYW1lKCIqIik6W10pLHtzZXQ6cixleHByOmV9fSxmLmZpbHRlcj1mdW5jdGlvbihlLHQsbixyKXtmb3IodmFyIGksbyxhLHMsbCx1LGMsZCxoLG09ZSxnPVtdLHY9dCx5PXQmJnRbMF0mJmYuaXNYTUwodFswXSk7ZSYmdC5sZW5ndGg7KXtmb3IoYSBpbiBwLmZpbHRlcilpZihudWxsIT0oaT1wLmxlZnRNYXRjaFthXS5leGVjKGUpKSYmaVsyXSl7aWYodT1wLmZpbHRlclthXSxjPWlbMV0sbz0hMSxpLnNwbGljZSgxLDEpLCJcXCI9PT1jLnN1YnN0cihjLmxlbmd0aC0xKSljb250aW51ZTtpZih2PT09ZyYmKGc9W10pLHAucHJlRmlsdGVyW2FdKWlmKGk9cC5wcmVGaWx0ZXJbYV0oaSx2LG4sZyxyLHkpKXtpZighMD09PWkpY29udGludWV9ZWxzZSBvPXM9ITA7aWYoaSlmb3IoZD0wO251bGwhPShsPXZbZF0pO2QrKylsJiYoaD1yXihzPXUobCxpLGQsdikpLG4mJm51bGwhPXM/aD9vPSEwOnZbZF09ITE6aCYmKGcucHVzaChsKSxvPSEwKSk7aWYodm9pZCAwIT09cyl7aWYobnx8KHY9ZyksZT1lLnJlcGxhY2UocC5tYXRjaFthXSwiIiksIW8pcmV0dXJuW107YnJlYWt9fWlmKGU9PT1tKXtpZihudWxsIT1vKWJyZWFrO2YuZXJyb3IoZSl9bT1lfXJldHVybiB2fSxmLmVycm9yPWZ1bmN0aW9uKGUpe3Rocm93IG5ldyBFcnJvcigiU3ludGF4IGVycm9yLCB1bnJlY29nbml6ZWQgZXhwcmVzc2lvbjogIitlKX07dmFyIGQ9Zi5nZXRUZXh0PWZ1bmN0aW9uKGUpe3ZhciB0LG4scj1lLm5vZGVUeXBlLGk9IiI7aWYocil7aWYoMT09PXJ8fDk9PT1yfHwxMT09PXIpe2lmKCJzdHJpbmciPT10eXBlb2YgZS50ZXh0Q29udGVudClyZXR1cm4gZS50ZXh0Q29udGVudDtpZigic3RyaW5nIj09dHlwZW9mIGUuaW5uZXJUZXh0KXJldHVybiBlLmlubmVyVGV4dC5yZXBsYWNlKHUsIiIpO2ZvcihlPWUuZmlyc3RDaGlsZDtlO2U9ZS5uZXh0U2libGluZylpKz1kKGUpfWVsc2UgaWYoMz09PXJ8fDQ9PT1yKXJldHVybiBlLm5vZGVWYWx1ZX1lbHNlIGZvcih0PTA7bj1lW3RdO3QrKyk4IT09bi5ub2RlVHlwZSYmKGkrPWQobikpO3JldHVybiBpfSxwPWYuc2VsZWN0b3JzPXtvcmRlcjpbIklEIiwiTkFNRSIsIlRBRyJdLG1hdGNoOntJRDovIygoPzpbXHdcdTAwYzAtXHVGRkZGXC1dfFxcLikrKS8sQ0xBU1M6L1wuKCg/Oltcd1x1MDBjMC1cdUZGRkZcLV18XFwuKSspLyxOQU1FOi9cW25hbWU9WyciXSooKD86W1x3XHUwMGMwLVx1RkZGRlwtXXxcXC4pKylbJyJdKlxdLyxBVFRSOi9cW1xzKigoPzpbXHdcdTAwYzAtXHVGRkZGXC1dfFxcLikrKVxzKig/OihcUz89KVxzKig/OihbJyJdKSguKj8pXDN8KCM/KD86W1x3XHUwMGMwLVx1RkZGRlwtXXxcXC4pKil8KXwpXHMqXF0vLFRBRzovXigoPzpbXHdcdTAwYzAtXHVGRkZGXCpcLV18XFwuKSspLyxDSElMRDovOihvbmx5fG50aHxsYXN0fGZpcnN0KS1jaGlsZCg/OlwoXHMqKGV2ZW58b2RkfCg/OlsrXC1dP1xkK3woPzpbK1wtXT9cZCopP25ccyooPzpbK1wtXVxzKlxkKyk/KSlccypcKSk/LyxQT1M6LzoobnRofGVxfGd0fGx0fGZpcnN0fGxhc3R8ZXZlbnxvZGQpKD86XCgoXGQqKVwpKT8oPz1bXlwtXXwkKS8sUFNFVURPOi86KCg/Oltcd1x1MDBjMC1cdUZGRkZcLV18XFwuKSspKD86XCgoWyciXT8pKCg/OlwoW15cKV0rXCl8W15cKFwpXSopKylcMlwpKT8vfSxsZWZ0TWF0Y2g6e30sYXR0ck1hcDp7Y2xhc3M6ImNsYXNzTmFtZSIsZm9yOiJodG1sRm9yIn0sYXR0ckhhbmRsZTp7CmhyZWY6ZnVuY3Rpb24oZSl7cmV0dXJuIGUuZ2V0QXR0cmlidXRlKCJocmVmIil9LHR5cGU6ZnVuY3Rpb24oZSl7cmV0dXJuIGUuZ2V0QXR0cmlidXRlKCJ0eXBlIil9fSxyZWxhdGl2ZTp7IisiOmZ1bmN0aW9uKGUsdCl7dmFyIG49InN0cmluZyI9PXR5cGVvZiB0LHI9biYmIWMudGVzdCh0KSxpPW4mJiFyO3ImJih0PXQudG9Mb3dlckNhc2UoKSk7Zm9yKHZhciBvLGE9MCxzPWUubGVuZ3RoO2E8czthKyspaWYobz1lW2FdKXtmb3IoOyhvPW8ucHJldmlvdXNTaWJsaW5nKSYmMSE9PW8ubm9kZVR5cGU7KTtlW2FdPWl8fG8mJm8ubm9kZU5hbWUudG9Mb3dlckNhc2UoKT09PXQ/b3x8ITE6bz09PXR9aSYmZi5maWx0ZXIodCxlLCEwKX0sIj4iOmZ1bmN0aW9uKGUsdCl7dmFyIG4scj0ic3RyaW5nIj09dHlwZW9mIHQsaT0wLG89ZS5sZW5ndGg7aWYociYmIWMudGVzdCh0KSl7Zm9yKHQ9dC50b0xvd2VyQ2FzZSgpO2k8bztpKyspaWYobj1lW2ldKXt2YXIgYT1uLnBhcmVudE5vZGU7ZVtpXT1hLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk9PT10JiZhfX1lbHNle2Zvcig7aTxvO2krKykobj1lW2ldKSYmKGVbaV09cj9uLnBhcmVudE5vZGU6bi5wYXJlbnROb2RlPT09dCk7ciYmZi5maWx0ZXIodCxlLCEwKX19LCIiOmZ1bmN0aW9uKGUsdCxuKXt2YXIgaSxvPXIrKyxhPVQ7InN0cmluZyIhPXR5cGVvZiB0fHxjLnRlc3QodCl8fChpPXQ9dC50b0xvd2VyQ2FzZSgpLGE9dyksYSgicGFyZW50Tm9kZSIsdCxvLGUsaSxuKX0sIn4iOmZ1bmN0aW9uKGUsdCxuKXt2YXIgaSxvPXIrKyxhPVQ7InN0cmluZyIhPXR5cGVvZiB0fHxjLnRlc3QodCl8fChpPXQ9dC50b0xvd2VyQ2FzZSgpLGE9dyksYSgicHJldmlvdXNTaWJsaW5nIix0LG8sZSxpLG4pfX0sZmluZDp7SUQ6ZnVuY3Rpb24oZSx0LG4pe2lmKHZvaWQgMCE9PXQuZ2V0RWxlbWVudEJ5SWQmJiFuKXt2YXIgcj10LmdldEVsZW1lbnRCeUlkKGVbMV0pO3JldHVybiByJiZyLnBhcmVudE5vZGU/W3JdOltdfX0sTkFNRTpmdW5jdGlvbihlLHQpe2lmKHZvaWQgMCE9PXQuZ2V0RWxlbWVudHNCeU5hbWUpe2Zvcih2YXIgbj1bXSxyPXQuZ2V0RWxlbWVudHNCeU5hbWUoZVsxXSksaT0wLG89ci5sZW5ndGg7aTxvO2krKylyW2ldLmdldEF0dHJpYnV0ZSgibmFtZSIpPT09ZVsxXSYmbi5wdXNoKHJbaV0pO3JldHVybiAwPT09bi5sZW5ndGg/bnVsbDpufX0sVEFHOmZ1bmN0aW9uKGUsdCl7aWYodm9pZCAwIT09dC5nZXRFbGVtZW50c0J5VGFnTmFtZSlyZXR1cm4gdC5nZXRFbGVtZW50c0J5VGFnTmFtZShlWzFdKX19LHByZUZpbHRlcjp7Q0xBU1M6ZnVuY3Rpb24oZSx0LG4scixpLG8pe2lmKGU9IiAiK2VbMV0ucmVwbGFjZShsLCIiKSsiICIsbylyZXR1cm4gZTtmb3IodmFyIGEscz0wO251bGwhPShhPXRbc10pO3MrKylhJiYoaV4oYS5jbGFzc05hbWUmJigiICIrYS5jbGFzc05hbWUrIiAiKS5yZXBsYWNlKC9bXHRcblxyXS9nLCIgIikuaW5kZXhPZihlKT49MCk/bnx8ci5wdXNoKGEpOm4mJih0W3NdPSExKSk7cmV0dXJuITF9LElEOmZ1bmN0aW9uKGUpe3JldHVybiBlWzFdLnJlcGxhY2UobCwiIil9LFRBRzpmdW5jdGlvbihlLHQpe3JldHVybiBlWzFdLnJlcGxhY2UobCwiIikudG9Mb3dlckNhc2UoKX0sQ0hJTEQ6ZnVuY3Rpb24oZSl7aWYoIm50aCI9PT1lWzFdKXtlWzJdfHxmLmVycm9yKGVbMF0pLGVbMl09ZVsyXS5yZXBsYWNlKC9eXCt8XHMqL2csIiIpO3ZhciB0PS8oLT8pKFxkKikoPzpuKFsrXC1dP1xkKikpPy8uZXhlYygoImV2ZW4iPT09ZVsyXT8iMm4iOiJvZGQiPT09ZVsyXSYmIjJuKzEiKXx8IS9cRC8udGVzdChlWzJdKSYmIjBuKyIrZVsyXXx8ZVsyXSk7ZVsyXT10WzFdKyh0WzJdfHwxKS0wLGVbM109dFszXS0wfWVsc2UgZVsyXSYmZi5lcnJvcihlWzBdKTtyZXR1cm4gZVswXT1yKyssZX0sQVRUUjpmdW5jdGlvbihlLHQsbixyLGksbyl7dmFyIGE9ZVsxXT1lWzFdLnJlcGxhY2UobCwiIik7cmV0dXJuIW8mJnAuYXR0ck1hcFthXSYmKGVbMV09cC5hdHRyTWFwW2FdKSxlWzRdPShlWzRdfHxlWzVdfHwiIikucmVwbGFjZShsLCIiKSwifj0iPT09ZVsyXSYmKGVbNF09IiAiK2VbNF0rIiAiKSxlfSxQU0VVRE86ZnVuY3Rpb24odCxuLHIsaSxvKXtpZigibm90Ij09PXRbMV0pe2lmKCEoKGUuZXhlYyh0WzNdKXx8IiIpLmxlbmd0aD4xfHwvXlx3Ly50ZXN0KHRbM10pKSl7dmFyIGE9Zi5maWx0ZXIodFszXSxuLHIsITBebyk7cmV0dXJuIHJ8fGkucHVzaC5hcHBseShpLGEpLCExfXRbM109Zih0WzNdLG51bGwsbnVsbCxuKX1lbHNlIGlmKHAubWF0Y2guUE9TLnRlc3QodFswXSl8fHAubWF0Y2guQ0hJTEQudGVzdCh0WzBdKSlyZXR1cm4hMDtyZXR1cm4gdH0sUE9TOmZ1bmN0aW9uKGUpe3JldHVybiBlLnVuc2hpZnQoITApLGV9fSxmaWx0ZXJzOntlbmFibGVkOmZ1bmN0aW9uKGUpe3JldHVybiExPT09ZS5kaXNhYmxlZCYmImhpZGRlbiIhPT1lLnR5cGV9LGRpc2FibGVkOmZ1bmN0aW9uKGUpe3JldHVybiEwPT09ZS5kaXNhYmxlZH0sY2hlY2tlZDpmdW5jdGlvbihlKXtyZXR1cm4hMD09PWUuY2hlY2tlZH0sc2VsZWN0ZWQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGUucGFyZW50Tm9kZSYmZS5wYXJlbnROb2RlLnNlbGVjdGVkSW5kZXgsITA9PT1lLnNlbGVjdGVkfSxwYXJlbnQ6ZnVuY3Rpb24oZSl7cmV0dXJuISFlLmZpcnN0Q2hpbGR9LGVtcHR5OmZ1bmN0aW9uKGUpe3JldHVybiFlLmZpcnN0Q2hpbGR9LGhhczpmdW5jdGlvbihlLHQsbil7cmV0dXJuISFmKG5bM10sZSkubGVuZ3RofSxoZWFkZXI6ZnVuY3Rpb24oZSl7cmV0dXJuL2hcZC9pLnRlc3QoZS5ub2RlTmFtZSl9LHRleHQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5nZXRBdHRyaWJ1dGUoInR5cGUiKSxuPWUudHlwZTtyZXR1cm4iaW5wdXQiPT09ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpJiYidGV4dCI9PT1uJiYodD09PW58fG51bGw9PT10KX0scmFkaW86ZnVuY3Rpb24oZSl7cmV0dXJuImlucHV0Ij09PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSYmInJhZGlvIj09PWUudHlwZX0sY2hlY2tib3g6ZnVuY3Rpb24oZSl7cmV0dXJuImlucHV0Ij09PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSYmImNoZWNrYm94Ij09PWUudHlwZQp9LGZpbGU6ZnVuY3Rpb24oZSl7cmV0dXJuImlucHV0Ij09PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSYmImZpbGUiPT09ZS50eXBlfSxwYXNzd29yZDpmdW5jdGlvbihlKXtyZXR1cm4iaW5wdXQiPT09ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpJiYicGFzc3dvcmQiPT09ZS50eXBlfSxzdWJtaXQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpO3JldHVybigiaW5wdXQiPT09dHx8ImJ1dHRvbiI9PT10KSYmInN1Ym1pdCI9PT1lLnR5cGV9LGltYWdlOmZ1bmN0aW9uKGUpe3JldHVybiJpbnB1dCI9PT1lLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkmJiJpbWFnZSI9PT1lLnR5cGV9LHJlc2V0OmZ1bmN0aW9uKGUpe3ZhciB0PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKTtyZXR1cm4oImlucHV0Ij09PXR8fCJidXR0b24iPT09dCkmJiJyZXNldCI9PT1lLnR5cGV9LGJ1dHRvbjpmdW5jdGlvbihlKXt2YXIgdD1lLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuImlucHV0Ij09PXQmJiJidXR0b24iPT09ZS50eXBlfHwiYnV0dG9uIj09PXR9LGlucHV0OmZ1bmN0aW9uKGUpe3JldHVybi9pbnB1dHxzZWxlY3R8dGV4dGFyZWF8YnV0dG9uL2kudGVzdChlLm5vZGVOYW1lKX0sZm9jdXM6ZnVuY3Rpb24oZSl7cmV0dXJuIGU9PT1lLm93bmVyRG9jdW1lbnQuYWN0aXZlRWxlbWVudH19LHNldEZpbHRlcnM6e2ZpcnN0OmZ1bmN0aW9uKGUsdCl7cmV0dXJuIDA9PT10fSxsYXN0OmZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiB0PT09ci5sZW5ndGgtMX0sZXZlbjpmdW5jdGlvbihlLHQpe3JldHVybiB0JTI9PTB9LG9kZDpmdW5jdGlvbihlLHQpe3JldHVybiB0JTI9PTF9LGx0OmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdDxuWzNdLTB9LGd0OmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdD5uWzNdLTB9LG50aDpmdW5jdGlvbihlLHQsbil7cmV0dXJuIG5bM10tMD09PXR9LGVxOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gblszXS0wPT09dH19LGZpbHRlcjp7UFNFVURPOmZ1bmN0aW9uKGUsdCxuLHIpe3ZhciBpPXRbMV0sbz1wLmZpbHRlcnNbaV07aWYobylyZXR1cm4gbyhlLG4sdCxyKTtpZigiY29udGFpbnMiPT09aSlyZXR1cm4oZS50ZXh0Q29udGVudHx8ZS5pbm5lclRleHR8fGQoW2VdKXx8IiIpLmluZGV4T2YodFszXSk+PTA7aWYoIm5vdCI9PT1pKXtmb3IodmFyIGE9dFszXSxzPTAsbD1hLmxlbmd0aDtzPGw7cysrKWlmKGFbc109PT1lKXJldHVybiExO3JldHVybiEwfWYuZXJyb3IoaSl9LENISUxEOmZ1bmN0aW9uKGUsdCl7dmFyIHIsaSxvLGEscyxsLHU9dFsxXSxjPWU7c3dpdGNoKHUpe2Nhc2Uib25seSI6Y2FzZSJmaXJzdCI6Zm9yKDtjPWMucHJldmlvdXNTaWJsaW5nOylpZigxPT09Yy5ub2RlVHlwZSlyZXR1cm4hMTtpZigiZmlyc3QiPT09dSlyZXR1cm4hMDtjPWU7Y2FzZSJsYXN0Ijpmb3IoO2M9Yy5uZXh0U2libGluZzspaWYoMT09PWMubm9kZVR5cGUpcmV0dXJuITE7cmV0dXJuITA7Y2FzZSJudGgiOmlmKHI9dFsyXSxpPXRbM10sMT09PXImJjA9PT1pKXJldHVybiEwO2lmKG89dFswXSwoYT1lLnBhcmVudE5vZGUpJiYoYVtuXSE9PW98fCFlLm5vZGVJbmRleCkpe2ZvcihzPTAsYz1hLmZpcnN0Q2hpbGQ7YztjPWMubmV4dFNpYmxpbmcpMT09PWMubm9kZVR5cGUmJihjLm5vZGVJbmRleD0rK3MpO2Fbbl09b31yZXR1cm4gbD1lLm5vZGVJbmRleC1pLDA9PT1yPzA9PT1sOmwlcj09MCYmbC9yPj0wfX0sSUQ6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gMT09PWUubm9kZVR5cGUmJmUuZ2V0QXR0cmlidXRlKCJpZCIpPT09dH0sVEFHOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIioiPT09dCYmMT09PWUubm9kZVR5cGV8fCEhZS5ub2RlTmFtZSYmZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpPT09dH0sQ0xBU1M6ZnVuY3Rpb24oZSx0KXtyZXR1cm4oIiAiKyhlLmNsYXNzTmFtZXx8ZS5nZXRBdHRyaWJ1dGUoImNsYXNzIikpKyIgIikuaW5kZXhPZih0KT4tMX0sQVRUUjpmdW5jdGlvbihlLHQpe3ZhciBuPXRbMV0scj1mLmF0dHI/Zi5hdHRyKGUsbik6cC5hdHRySGFuZGxlW25dP3AuYXR0ckhhbmRsZVtuXShlKTpudWxsIT1lW25dP2Vbbl06ZS5nZXRBdHRyaWJ1dGUobiksaT1yKyIiLG89dFsyXSxhPXRbNF07cmV0dXJuIG51bGw9PXI/IiE9Ij09PW86IW8mJmYuYXR0cj9udWxsIT1yOiI9Ij09PW8/aT09PWE6Iio9Ij09PW8/aS5pbmRleE9mKGEpPj0wOiJ+PSI9PT1vPygiICIraSsiICIpLmluZGV4T2YoYSk+PTA6YT8iIT0iPT09bz9pIT09YToiXj0iPT09bz8wPT09aS5pbmRleE9mKGEpOiIkPSI9PT1vP2kuc3Vic3RyKGkubGVuZ3RoLWEubGVuZ3RoKT09PWE6Inw9Ij09PW8mJihpPT09YXx8aS5zdWJzdHIoMCxhLmxlbmd0aCsxKT09PWErIi0iKTppJiYhMSE9PXJ9LFBPUzpmdW5jdGlvbihlLHQsbixyKXt2YXIgaT10WzJdLG89cC5zZXRGaWx0ZXJzW2ldO2lmKG8pcmV0dXJuIG8oZSxuLHQscil9fX0saD1wLm1hdGNoLlBPUyxtPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIlxcIisodC0wKzEpfTtmb3IodmFyIGcgaW4gcC5tYXRjaClwLm1hdGNoW2ddPW5ldyBSZWdFeHAocC5tYXRjaFtnXS5zb3VyY2UrLyg/IVteXFtdKlxdKSg/IVteXChdKlwpKS8uc291cmNlKSxwLmxlZnRNYXRjaFtnXT1uZXcgUmVnRXhwKC8oXig/Oi58XHJ8XG4pKj8pLy5zb3VyY2UrcC5tYXRjaFtnXS5zb3VyY2UucmVwbGFjZSgvXFwoXGQrKS9nLG0pKTtwLm1hdGNoLmdsb2JhbFBPUz1oO3ZhciB2LHksYix4PWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSwwKSx0Pyh0LnB1c2guYXBwbHkodCxlKSx0KTplfTt0cnl7QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwodC5kb2N1bWVudEVsZW1lbnQuY2hpbGROb2RlcywwKVswXS5ub2RlVHlwZX1jYXRjaChlKXt4PWZ1bmN0aW9uKGUsdCl7dmFyIG49MCxyPXR8fFtdCjtpZigiW29iamVjdCBBcnJheV0iPT09by5jYWxsKGUpKUFycmF5LnByb3RvdHlwZS5wdXNoLmFwcGx5KHIsZSk7ZWxzZSBpZigibnVtYmVyIj09dHlwZW9mIGUubGVuZ3RoKWZvcih2YXIgaT1lLmxlbmd0aDtuPGk7bisrKXIucHVzaChlW25dKTtlbHNlIGZvcig7ZVtuXTtuKyspci5wdXNoKGVbbl0pO3JldHVybiByfX1mdW5jdGlvbiB3KGUsdCxyLGksbyxhKXtmb3IodmFyIHM9MCxsPWkubGVuZ3RoO3M8bDtzKyspe3ZhciB1PWlbc107aWYodSl7dmFyIGM9ITE7Zm9yKHU9dVtlXTt1Oyl7aWYodVtuXT09PXIpe2M9aVt1LnNpenNldF07YnJlYWt9aWYoMSE9PXUubm9kZVR5cGV8fGF8fCh1W25dPXIsdS5zaXpzZXQ9cyksdS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpPT09dCl7Yz11O2JyZWFrfXU9dVtlXX1pW3NdPWN9fX1mdW5jdGlvbiBUKGUsdCxyLGksbyxhKXtmb3IodmFyIHM9MCxsPWkubGVuZ3RoO3M8bDtzKyspe3ZhciB1PWlbc107aWYodSl7dmFyIGM9ITE7Zm9yKHU9dVtlXTt1Oyl7aWYodVtuXT09PXIpe2M9aVt1LnNpenNldF07YnJlYWt9aWYoMT09PXUubm9kZVR5cGUpaWYoYXx8KHVbbl09cix1LnNpenNldD1zKSwic3RyaW5nIiE9dHlwZW9mIHQpe2lmKHU9PT10KXtjPSEwO2JyZWFrfX1lbHNlIGlmKGYuZmlsdGVyKHQsW3VdKS5sZW5ndGg+MCl7Yz11O2JyZWFrfXU9dVtlXX1pW3NdPWN9fX10LmRvY3VtZW50RWxlbWVudC5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbj92PWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9PT10PyhhPSEwLDApOmUuY29tcGFyZURvY3VtZW50UG9zaXRpb24mJnQuY29tcGFyZURvY3VtZW50UG9zaXRpb24/NCZlLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKHQpPy0xOjE6ZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbj8tMToxfToodj1mdW5jdGlvbihlLHQpe2lmKGU9PT10KXJldHVybiBhPSEwLDA7aWYoZS5zb3VyY2VJbmRleCYmdC5zb3VyY2VJbmRleClyZXR1cm4gZS5zb3VyY2VJbmRleC10LnNvdXJjZUluZGV4O3ZhciBuLHIsaT1bXSxvPVtdLHM9ZS5wYXJlbnROb2RlLGw9dC5wYXJlbnROb2RlLHU9cztpZihzPT09bClyZXR1cm4geShlLHQpO2lmKCFzKXJldHVybi0xO2lmKCFsKXJldHVybiAxO2Zvcig7dTspaS51bnNoaWZ0KHUpLHU9dS5wYXJlbnROb2RlO2Zvcih1PWw7dTspby51bnNoaWZ0KHUpLHU9dS5wYXJlbnROb2RlO249aS5sZW5ndGgscj1vLmxlbmd0aDtmb3IodmFyIGM9MDtjPG4mJmM8cjtjKyspaWYoaVtjXSE9PW9bY10pcmV0dXJuIHkoaVtjXSxvW2NdKTtyZXR1cm4gYz09PW4/eShlLG9bY10sLTEpOnkoaVtjXSx0LDEpfSx5PWZ1bmN0aW9uKGUsdCxuKXtpZihlPT09dClyZXR1cm4gbjtmb3IodmFyIHI9ZS5uZXh0U2libGluZztyOyl7aWYocj09PXQpcmV0dXJuLTE7cj1yLm5leHRTaWJsaW5nfXJldHVybiAxfSksZnVuY3Rpb24oKXt2YXIgZT10LmNyZWF0ZUVsZW1lbnQoImRpdiIpLG49InNjcmlwdCIrKG5ldyBEYXRlKS5nZXRUaW1lKCkscj10LmRvY3VtZW50RWxlbWVudDtlLmlubmVySFRNTD0iPGEgbmFtZT0nIituKyInLz4iLHIuaW5zZXJ0QmVmb3JlKGUsci5maXJzdENoaWxkKSx0LmdldEVsZW1lbnRCeUlkKG4pJiYocC5maW5kLklEPWZ1bmN0aW9uKGUsdCxuKXtpZih2b2lkIDAhPT10LmdldEVsZW1lbnRCeUlkJiYhbil7dmFyIHI9dC5nZXRFbGVtZW50QnlJZChlWzFdKTtyZXR1cm4gcj9yLmlkPT09ZVsxXXx8dm9pZCAwIT09ci5nZXRBdHRyaWJ1dGVOb2RlJiZyLmdldEF0dHJpYnV0ZU5vZGUoImlkIikubm9kZVZhbHVlPT09ZVsxXT9bcl06dm9pZCAwOltdfX0scC5maWx0ZXIuSUQ9ZnVuY3Rpb24oZSx0KXt2YXIgbj12b2lkIDAhPT1lLmdldEF0dHJpYnV0ZU5vZGUmJmUuZ2V0QXR0cmlidXRlTm9kZSgiaWQiKTtyZXR1cm4gMT09PWUubm9kZVR5cGUmJm4mJm4ubm9kZVZhbHVlPT09dH0pLHIucmVtb3ZlQ2hpbGQoZSkscj1lPW51bGx9KCksKGI9dC5jcmVhdGVFbGVtZW50KCJkaXYiKSkuYXBwZW5kQ2hpbGQodC5jcmVhdGVDb21tZW50KCIiKSksYi5nZXRFbGVtZW50c0J5VGFnTmFtZSgiKiIpLmxlbmd0aD4wJiYocC5maW5kLlRBRz1mdW5jdGlvbihlLHQpe3ZhciBuPXQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoZVsxXSk7aWYoIioiPT09ZVsxXSl7Zm9yKHZhciByPVtdLGk9MDtuW2ldO2krKykxPT09bltpXS5ub2RlVHlwZSYmci5wdXNoKG5baV0pO249cn1yZXR1cm4gbn0pLGIuaW5uZXJIVE1MPSI8YSBocmVmPScjJz48L2E+IixiLmZpcnN0Q2hpbGQmJnZvaWQgMCE9PWIuZmlyc3RDaGlsZC5nZXRBdHRyaWJ1dGUmJiIjIiE9PWIuZmlyc3RDaGlsZC5nZXRBdHRyaWJ1dGUoImhyZWYiKSYmKHAuYXR0ckhhbmRsZS5ocmVmPWZ1bmN0aW9uKGUpe3JldHVybiBlLmdldEF0dHJpYnV0ZSgiaHJlZiIsMil9KSxiPW51bGwsdC5xdWVyeVNlbGVjdG9yQWxsJiZmdW5jdGlvbigpe3ZhciBlPWYsbj10LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2lmKG4uaW5uZXJIVE1MPSI8cCBjbGFzcz0nVEVTVCc+PC9wPiIsIW4ucXVlcnlTZWxlY3RvckFsbHx8MCE9PW4ucXVlcnlTZWxlY3RvckFsbCgiLlRFU1QiKS5sZW5ndGgpe2Zvcih2YXIgciBpbiBmPWZ1bmN0aW9uKG4scixpLG8pe2lmKHI9cnx8dCwhbyYmIWYuaXNYTUwocikpe3ZhciBhPS9eKFx3KyQpfF5cLihbXHdcLV0rJCl8XiMoW1x3XC1dKyQpLy5leGVjKG4pO2lmKGEmJigxPT09ci5ub2RlVHlwZXx8OT09PXIubm9kZVR5cGUpKXtpZihhWzFdKXJldHVybiB4KHIuZ2V0RWxlbWVudHNCeVRhZ05hbWUobiksaSk7aWYoYVsyXSYmcC5maW5kLkNMQVNTJiZyLmdldEVsZW1lbnRzQnlDbGFzc05hbWUpcmV0dXJuIHgoci5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKGFbMl0pLGkpfWlmKDk9PT1yLm5vZGVUeXBlKXtpZigiYm9keSI9PT1uJiZyLmJvZHkpcmV0dXJuIHgoW3IuYm9keV0saSk7aWYoYSYmYVszXSl7dmFyIHM9ci5nZXRFbGVtZW50QnlJZChhWzNdKTtpZighc3x8IXMucGFyZW50Tm9kZSlyZXR1cm4geChbXSxpKTtpZihzLmlkPT09YVszXSlyZXR1cm4geChbc10saSl9dHJ5e3JldHVybiB4KHIucXVlcnlTZWxlY3RvckFsbChuKSxpKX1jYXRjaChlKXt9Cn1lbHNlIGlmKDE9PT1yLm5vZGVUeXBlJiYib2JqZWN0IiE9PXIubm9kZU5hbWUudG9Mb3dlckNhc2UoKSl7dmFyIGw9cix1PXIuZ2V0QXR0cmlidXRlKCJpZCIpLGM9dXx8Il9fc2l6emxlX18iLGQ9ci5wYXJlbnROb2RlLGg9L15ccypbK35dLy50ZXN0KG4pO3U/Yz1jLnJlcGxhY2UoLycvZywiXFwkJiIpOnIuc2V0QXR0cmlidXRlKCJpZCIsYyksaCYmZCYmKHI9ci5wYXJlbnROb2RlKTt0cnl7aWYoIWh8fGQpcmV0dXJuIHgoci5xdWVyeVNlbGVjdG9yQWxsKCJbaWQ9JyIrYysiJ10gIituKSxpKX1jYXRjaChlKXt9ZmluYWxseXt1fHxsLnJlbW92ZUF0dHJpYnV0ZSgiaWQiKX19fXJldHVybiBlKG4scixpLG8pfSxlKWZbcl09ZVtyXTtuPW51bGx9fSgpLGZ1bmN0aW9uKCl7dmFyIGU9dC5kb2N1bWVudEVsZW1lbnQsbj1lLm1hdGNoZXNTZWxlY3Rvcnx8ZS5tb3pNYXRjaGVzU2VsZWN0b3J8fGUud2Via2l0TWF0Y2hlc1NlbGVjdG9yfHxlLm1zTWF0Y2hlc1NlbGVjdG9yO2lmKG4pe3ZhciByPSFuLmNhbGwodC5jcmVhdGVFbGVtZW50KCJkaXYiKSwiZGl2IiksaT0hMTt0cnl7bi5jYWxsKHQuZG9jdW1lbnRFbGVtZW50LCJbdGVzdCE9JyddOnNpenpsZSIpfWNhdGNoKGUpe2k9ITB9Zi5tYXRjaGVzU2VsZWN0b3I9ZnVuY3Rpb24oZSx0KXtpZih0PXQucmVwbGFjZSgvXD1ccyooW14nIlxdXSopXHMqXF0vZywiPSckMSddIiksIWYuaXNYTUwoZSkpdHJ5e2lmKGl8fCFwLm1hdGNoLlBTRVVETy50ZXN0KHQpJiYhLyE9Ly50ZXN0KHQpKXt2YXIgbz1uLmNhbGwoZSx0KTtpZihvfHwhcnx8ZS5kb2N1bWVudCYmMTEhPT1lLmRvY3VtZW50Lm5vZGVUeXBlKXJldHVybiBvfX1jYXRjaChlKXt9cmV0dXJuIGYodCxudWxsLG51bGwsW2VdKS5sZW5ndGg+MH19fSgpLGZ1bmN0aW9uKCl7dmFyIGU9dC5jcmVhdGVFbGVtZW50KCJkaXYiKTtlLmlubmVySFRNTD0iPGRpdiBjbGFzcz0ndGVzdCBlJz48L2Rpdj48ZGl2IGNsYXNzPSd0ZXN0Jz48L2Rpdj4iLGUuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSYmMCE9PWUuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgiZSIpLmxlbmd0aCYmKGUubGFzdENoaWxkLmNsYXNzTmFtZT0iZSIsMSE9PWUuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgiZSIpLmxlbmd0aCYmKHAub3JkZXIuc3BsaWNlKDEsMCwiQ0xBU1MiKSxwLmZpbmQuQ0xBU1M9ZnVuY3Rpb24oZSx0LG4pe2lmKHZvaWQgMCE9PXQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSYmIW4pcmV0dXJuIHQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShlWzFdKX0sZT1udWxsKSl9KCksdC5kb2N1bWVudEVsZW1lbnQuY29udGFpbnM/Zi5jb250YWlucz1mdW5jdGlvbihlLHQpe3JldHVybiBlIT09dCYmKCFlLmNvbnRhaW5zfHxlLmNvbnRhaW5zKHQpKX06dC5kb2N1bWVudEVsZW1lbnQuY29tcGFyZURvY3VtZW50UG9zaXRpb24/Zi5jb250YWlucz1mdW5jdGlvbihlLHQpe3JldHVybiEhKDE2JmUuY29tcGFyZURvY3VtZW50UG9zaXRpb24odCkpfTpmLmNvbnRhaW5zPWZ1bmN0aW9uKCl7cmV0dXJuITF9LGYuaXNYTUw9ZnVuY3Rpb24oZSl7dmFyIHQ9KGU/ZS5vd25lckRvY3VtZW50fHxlOjApLmRvY3VtZW50RWxlbWVudDtyZXR1cm4hIXQmJiJIVE1MIiE9PXQubm9kZU5hbWV9O3ZhciBOPWZ1bmN0aW9uKGUsdCxuKXtmb3IodmFyIHIsaT1bXSxvPSIiLGE9dC5ub2RlVHlwZT9bdF06dDtyPXAubWF0Y2guUFNFVURPLmV4ZWMoZSk7KW8rPXJbMF0sZT1lLnJlcGxhY2UocC5tYXRjaC5QU0VVRE8sIiIpO2U9cC5yZWxhdGl2ZVtlXT9lKyIqIjplO2Zvcih2YXIgcz0wLGw9YS5sZW5ndGg7czxsO3MrKylmKGUsYVtzXSxpLG4pO3JldHVybiBmLmZpbHRlcihvLGkpfTtmLmF0dHI9aS5hdHRyLGYuc2VsZWN0b3JzLmF0dHJNYXA9e30saS5maW5kPWYsaS5leHByPWYuc2VsZWN0b3JzLGkuZXhwclsiOiJdPWkuZXhwci5maWx0ZXJzLGkudW5pcXVlPWYudW5pcXVlU29ydCxpLnRleHQ9Zi5nZXRUZXh0LGkuaXNYTUxEb2M9Zi5pc1hNTCxpLmNvbnRhaW5zPWYuY29udGFpbnN9KCk7dmFyIE09L1VudGlsJC8sTz0vXig/OnBhcmVudHN8cHJldlVudGlsfHByZXZBbGwpLyxIPS8sLyxQPS9eLlteOiNcW1wuLF0qJC8scT1BcnJheS5wcm90b3R5cGUuc2xpY2UsQj1pLmV4cHIubWF0Y2guZ2xvYmFsUE9TLFc9e2NoaWxkcmVuOiEwLGNvbnRlbnRzOiEwLG5leHQ6ITAscHJldjohMH07ZnVuY3Rpb24gSShlKXtyZXR1cm4hZXx8IWUucGFyZW50Tm9kZXx8MTE9PT1lLnBhcmVudE5vZGUubm9kZVR5cGV9ZnVuY3Rpb24gJChlLHQsbil7aWYodD10fHwwLGkuaXNGdW5jdGlvbih0KSlyZXR1cm4gaS5ncmVwKGUsKGZ1bmN0aW9uKGUscil7cmV0dXJuISF0LmNhbGwoZSxyLGUpPT09bn0pKTtpZih0Lm5vZGVUeXBlKXJldHVybiBpLmdyZXAoZSwoZnVuY3Rpb24oZSxyKXtyZXR1cm4gZT09PXQ9PT1ufSkpO2lmKCJzdHJpbmciPT10eXBlb2YgdCl7dmFyIHI9aS5ncmVwKGUsKGZ1bmN0aW9uKGUpe3JldHVybiAxPT09ZS5ub2RlVHlwZX0pKTtpZihQLnRlc3QodCkpcmV0dXJuIGkuZmlsdGVyKHQsciwhbik7dD1pLmZpbHRlcih0LHIpfXJldHVybiBpLmdyZXAoZSwoZnVuY3Rpb24oZSxyKXtyZXR1cm4gaS5pbkFycmF5KGUsdCk+PTA9PT1ufSkpfWZ1bmN0aW9uIFIoZSl7dmFyIHQ9WC5zcGxpdCgifCIpLG49ZS5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7aWYobi5jcmVhdGVFbGVtZW50KWZvcig7dC5sZW5ndGg7KW4uY3JlYXRlRWxlbWVudCh0LnBvcCgpKTtyZXR1cm4gbn1pLmZuLmV4dGVuZCh7ZmluZDpmdW5jdGlvbihlKXt2YXIgdCxuLHI9dGhpcztpZigic3RyaW5nIiE9dHlwZW9mIGUpcmV0dXJuIGkoZSkuZmlsdGVyKChmdW5jdGlvbigpe2Zvcih0PTAsbj1yLmxlbmd0aDt0PG47dCsrKWlmKGkuY29udGFpbnMoclt0XSx0aGlzKSlyZXR1cm4hMH0pKTt2YXIgbyxhLHMsbD10aGlzLnB1c2hTdGFjaygiIiwiZmluZCIsZSk7Zm9yKHQ9MCxuPXRoaXMubGVuZ3RoO3Q8bjt0KyspaWYobz1sLmxlbmd0aCxpLmZpbmQoZSx0aGlzW3RdLGwpLHQ+MClmb3IoYT1vO2E8bC5sZW5ndGg7YSsrKWZvcihzPTA7czxvO3MrKylpZihsW3NdPT09bFthXSl7bC5zcGxpY2UoYS0tLDEpCjticmVha31yZXR1cm4gbH0saGFzOmZ1bmN0aW9uKGUpe3ZhciB0PWkoZSk7cmV0dXJuIHRoaXMuZmlsdGVyKChmdW5jdGlvbigpe2Zvcih2YXIgZT0wLG49dC5sZW5ndGg7ZTxuO2UrKylpZihpLmNvbnRhaW5zKHRoaXMsdFtlXSkpcmV0dXJuITB9KSl9LG5vdDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soJCh0aGlzLGUsITEpLCJub3QiLGUpfSxmaWx0ZXI6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMucHVzaFN0YWNrKCQodGhpcyxlLCEwKSwiZmlsdGVyIixlKX0saXM6ZnVuY3Rpb24oZSl7cmV0dXJuISFlJiYoInN0cmluZyI9PXR5cGVvZiBlP0IudGVzdChlKT9pKGUsdGhpcy5jb250ZXh0KS5pbmRleCh0aGlzWzBdKT49MDppLmZpbHRlcihlLHRoaXMpLmxlbmd0aD4wOnRoaXMuZmlsdGVyKGUpLmxlbmd0aD4wKX0sY2xvc2VzdDpmdW5jdGlvbihlLHQpe3ZhciBuLHIsbz1bXSxhPXRoaXNbMF07aWYoaS5pc0FycmF5KGUpKXtmb3IodmFyIHM9MTthJiZhLm93bmVyRG9jdW1lbnQmJmEhPT10Oyl7Zm9yKG49MDtuPGUubGVuZ3RoO24rKylpKGEpLmlzKGVbbl0pJiZvLnB1c2goe3NlbGVjdG9yOmVbbl0sZWxlbTphLGxldmVsOnN9KTthPWEucGFyZW50Tm9kZSxzKyt9cmV0dXJuIG99dmFyIGw9Qi50ZXN0KGUpfHwic3RyaW5nIiE9dHlwZW9mIGU/aShlLHR8fHRoaXMuY29udGV4dCk6MDtmb3Iobj0wLHI9dGhpcy5sZW5ndGg7bjxyO24rKylmb3IoYT10aGlzW25dO2E7KXtpZihsP2wuaW5kZXgoYSk+LTE6aS5maW5kLm1hdGNoZXNTZWxlY3RvcihhLGUpKXtvLnB1c2goYSk7YnJlYWt9aWYoIShhPWEucGFyZW50Tm9kZSl8fCFhLm93bmVyRG9jdW1lbnR8fGE9PT10fHwxMT09PWEubm9kZVR5cGUpYnJlYWt9cmV0dXJuIG89by5sZW5ndGg+MT9pLnVuaXF1ZShvKTpvLHRoaXMucHVzaFN0YWNrKG8sImNsb3Nlc3QiLGUpfSxpbmRleDpmdW5jdGlvbihlKXtyZXR1cm4gZT8ic3RyaW5nIj09dHlwZW9mIGU/aS5pbkFycmF5KHRoaXNbMF0saShlKSk6aS5pbkFycmF5KGUuanF1ZXJ5P2VbMF06ZSx0aGlzKTp0aGlzWzBdJiZ0aGlzWzBdLnBhcmVudE5vZGU/dGhpcy5wcmV2QWxsKCkubGVuZ3RoOi0xfSxhZGQ6ZnVuY3Rpb24oZSx0KXt2YXIgbj0ic3RyaW5nIj09dHlwZW9mIGU/aShlLHQpOmkubWFrZUFycmF5KGUmJmUubm9kZVR5cGU/W2VdOmUpLHI9aS5tZXJnZSh0aGlzLmdldCgpLG4pO3JldHVybiB0aGlzLnB1c2hTdGFjayhJKG5bMF0pfHxJKHJbMF0pP3I6aS51bmlxdWUocikpfSxhbmRTZWxmOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuYWRkKHRoaXMucHJldk9iamVjdCl9fSksaS5lYWNoKHtwYXJlbnQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5wYXJlbnROb2RlO3JldHVybiB0JiYxMSE9PXQubm9kZVR5cGU/dDpudWxsfSxwYXJlbnRzOmZ1bmN0aW9uKGUpe3JldHVybiBpLmRpcihlLCJwYXJlbnROb2RlIil9LHBhcmVudHNVbnRpbDpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGkuZGlyKGUsInBhcmVudE5vZGUiLG4pfSxuZXh0OmZ1bmN0aW9uKGUpe3JldHVybiBpLm50aChlLDIsIm5leHRTaWJsaW5nIil9LHByZXY6ZnVuY3Rpb24oZSl7cmV0dXJuIGkubnRoKGUsMiwicHJldmlvdXNTaWJsaW5nIil9LG5leHRBbGw6ZnVuY3Rpb24oZSl7cmV0dXJuIGkuZGlyKGUsIm5leHRTaWJsaW5nIil9LHByZXZBbGw6ZnVuY3Rpb24oZSl7cmV0dXJuIGkuZGlyKGUsInByZXZpb3VzU2libGluZyIpfSxuZXh0VW50aWw6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBpLmRpcihlLCJuZXh0U2libGluZyIsbil9LHByZXZVbnRpbDpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGkuZGlyKGUsInByZXZpb3VzU2libGluZyIsbil9LHNpYmxpbmdzOmZ1bmN0aW9uKGUpe3JldHVybiBpLnNpYmxpbmcoKGUucGFyZW50Tm9kZXx8e30pLmZpcnN0Q2hpbGQsZSl9LGNoaWxkcmVuOmZ1bmN0aW9uKGUpe3JldHVybiBpLnNpYmxpbmcoZS5maXJzdENoaWxkKX0sY29udGVudHM6ZnVuY3Rpb24oZSl7cmV0dXJuIGkubm9kZU5hbWUoZSwiaWZyYW1lIik/ZS5jb250ZW50RG9jdW1lbnR8fGUuY29udGVudFdpbmRvdy5kb2N1bWVudDppLm1ha2VBcnJheShlLmNoaWxkTm9kZXMpfX0sKGZ1bmN0aW9uKGUsdCl7aS5mbltlXT1mdW5jdGlvbihuLHIpe3ZhciBvPWkubWFwKHRoaXMsdCxuKTtyZXR1cm4gTS50ZXN0KGUpfHwocj1uKSxyJiYic3RyaW5nIj09dHlwZW9mIHImJihvPWkuZmlsdGVyKHIsbykpLG89dGhpcy5sZW5ndGg+MSYmIVdbZV0/aS51bmlxdWUobyk6bywodGhpcy5sZW5ndGg+MXx8SC50ZXN0KHIpKSYmTy50ZXN0KGUpJiYobz1vLnJldmVyc2UoKSksdGhpcy5wdXNoU3RhY2sobyxlLHEuY2FsbChhcmd1bWVudHMpLmpvaW4oIiwiKSl9fSkpLGkuZXh0ZW5kKHtmaWx0ZXI6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBuJiYoZT0iOm5vdCgiK2UrIikiKSwxPT09dC5sZW5ndGg/aS5maW5kLm1hdGNoZXNTZWxlY3Rvcih0WzBdLGUpP1t0WzBdXTpbXTppLmZpbmQubWF0Y2hlcyhlLHQpfSxkaXI6ZnVuY3Rpb24oZSx0LG4pe2Zvcih2YXIgcj1bXSxvPWVbdF07byYmOSE9PW8ubm9kZVR5cGUmJih2b2lkIDA9PT1ufHwxIT09by5ub2RlVHlwZXx8IWkobykuaXMobikpOykxPT09by5ub2RlVHlwZSYmci5wdXNoKG8pLG89b1t0XTtyZXR1cm4gcn0sbnRoOmZ1bmN0aW9uKGUsdCxuLHIpe3Q9dHx8MTtmb3IodmFyIGk9MDtlJiYoMSE9PWUubm9kZVR5cGV8fCsraSE9PXQpO2U9ZVtuXSk7cmV0dXJuIGV9LHNpYmxpbmc6ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49W107ZTtlPWUubmV4dFNpYmxpbmcpMT09PWUubm9kZVR5cGUmJmUhPT10JiZuLnB1c2goZSk7cmV0dXJuIG59fSkKO3ZhciBYPSJhYmJyfGFydGljbGV8YXNpZGV8YXVkaW98YmRpfGNhbnZhc3xkYXRhfGRhdGFsaXN0fGRldGFpbHN8ZmlnY2FwdGlvbnxmaWd1cmV8Zm9vdGVyfGhlYWRlcnxoZ3JvdXB8bWFya3xtZXRlcnxuYXZ8b3V0cHV0fHByb2dyZXNzfHNlY3Rpb258c3VtbWFyeXx0aW1lfHZpZGVvIix6PS8galF1ZXJ5XGQrPSIoPzpcZCt8bnVsbCkiL2csVj0vXlxzKy8sVT0vPCg/IWFyZWF8YnJ8Y29sfGVtYmVkfGhyfGltZ3xpbnB1dHxsaW5rfG1ldGF8cGFyYW0pKChbXHc6XSspW14+XSopXC8+L2dpLFk9LzwoW1x3Ol0rKS8sSj0vPHRib2R5L2ksRz0vPHwmIz9cdys7LyxLPS88KD86c2NyaXB0fHN0eWxlKS9pLFE9LzwoPzpzY3JpcHR8b2JqZWN0fGVtYmVkfG9wdGlvbnxzdHlsZSkvaSxaPW5ldyBSZWdFeHAoIjwoPzoiK1grIilbXFxzLz5dIiwiaSIpLGVlPS9jaGVja2VkXHMqKD86W149XXw9XHMqLmNoZWNrZWQuKS9pLHRlPS9cLyhqYXZhfGVjbWEpc2NyaXB0L2ksbmU9e29wdGlvbjpbMSwiPHNlbGVjdCBtdWx0aXBsZT0nbXVsdGlwbGUnPiIsIjwvc2VsZWN0PiJdLGxlZ2VuZDpbMSwiPGZpZWxkc2V0PiIsIjwvZmllbGRzZXQ+Il0sdGhlYWQ6WzEsIjx0YWJsZT4iLCI8L3RhYmxlPiJdLHRyOlsyLCI8dGFibGU+PHRib2R5PiIsIjwvdGJvZHk+PC90YWJsZT4iXSx0ZDpbMywiPHRhYmxlPjx0Ym9keT48dHI+IiwiPC90cj48L3Rib2R5PjwvdGFibGU+Il0sY29sOlsyLCI8dGFibGU+PHRib2R5PjwvdGJvZHk+PGNvbGdyb3VwPiIsIjwvY29sZ3JvdXA+PC90YWJsZT4iXSxhcmVhOlsxLCI8bWFwPiIsIjwvbWFwPiJdLF9kZWZhdWx0OlswLCIiLCIiXX0scmU9Uih0KTtmdW5jdGlvbiBpZShlLHQpe2lmKDE9PT10Lm5vZGVUeXBlJiZpLmhhc0RhdGEoZSkpe3ZhciBuLHIsbyxhPWkuX2RhdGEoZSkscz1pLl9kYXRhKHQsYSksbD1hLmV2ZW50cztpZihsKWZvcihuIGluIGRlbGV0ZSBzLmhhbmRsZSxzLmV2ZW50cz17fSxsKWZvcihyPTAsbz1sW25dLmxlbmd0aDtyPG87cisrKWkuZXZlbnQuYWRkKHQsbixsW25dW3JdKTtzLmRhdGEmJihzLmRhdGE9aS5leHRlbmQoe30scy5kYXRhKSl9fWZ1bmN0aW9uIG9lKGUsdCl7dmFyIG47MT09PXQubm9kZVR5cGUmJih0LmNsZWFyQXR0cmlidXRlcyYmdC5jbGVhckF0dHJpYnV0ZXMoKSx0Lm1lcmdlQXR0cmlidXRlcyYmdC5tZXJnZUF0dHJpYnV0ZXMoZSksIm9iamVjdCI9PT0obj10Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpP3Qub3V0ZXJIVE1MPWUub3V0ZXJIVE1MOiJpbnB1dCIhPT1ufHwiY2hlY2tib3giIT09ZS50eXBlJiYicmFkaW8iIT09ZS50eXBlPyJvcHRpb24iPT09bj90LnNlbGVjdGVkPWUuZGVmYXVsdFNlbGVjdGVkOiJpbnB1dCI9PT1ufHwidGV4dGFyZWEiPT09bj90LmRlZmF1bHRWYWx1ZT1lLmRlZmF1bHRWYWx1ZToic2NyaXB0Ij09PW4mJnQudGV4dCE9PWUudGV4dCYmKHQudGV4dD1lLnRleHQpOihlLmNoZWNrZWQmJih0LmRlZmF1bHRDaGVja2VkPXQuY2hlY2tlZD1lLmNoZWNrZWQpLHQudmFsdWUhPT1lLnZhbHVlJiYodC52YWx1ZT1lLnZhbHVlKSksdC5yZW1vdmVBdHRyaWJ1dGUoaS5leHBhbmRvKSx0LnJlbW92ZUF0dHJpYnV0ZSgiX3N1Ym1pdF9hdHRhY2hlZCIpLHQucmVtb3ZlQXR0cmlidXRlKCJfY2hhbmdlX2F0dGFjaGVkIikpfWZ1bmN0aW9uIGFlKGUpe3JldHVybiB2b2lkIDAhPT1lLmdldEVsZW1lbnRzQnlUYWdOYW1lP2UuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIioiKTp2b2lkIDAhPT1lLnF1ZXJ5U2VsZWN0b3JBbGw/ZS5xdWVyeVNlbGVjdG9yQWxsKCIqIik6W119ZnVuY3Rpb24gc2UoZSl7ImNoZWNrYm94IiE9PWUudHlwZSYmInJhZGlvIiE9PWUudHlwZXx8KGUuZGVmYXVsdENoZWNrZWQ9ZS5jaGVja2VkKX1mdW5jdGlvbiBsZShlKXt2YXIgdD0oZS5ub2RlTmFtZXx8IiIpLnRvTG93ZXJDYXNlKCk7ImlucHV0Ij09PXQ/c2UoZSk6InNjcmlwdCIhPT10JiZ2b2lkIDAhPT1lLmdldEVsZW1lbnRzQnlUYWdOYW1lJiZpLmdyZXAoZS5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaW5wdXQiKSxzZSl9bmUub3B0Z3JvdXA9bmUub3B0aW9uLG5lLnRib2R5PW5lLnRmb290PW5lLmNvbGdyb3VwPW5lLmNhcHRpb249bmUudGhlYWQsbmUudGg9bmUudGQsaS5zdXBwb3J0Lmh0bWxTZXJpYWxpemV8fChuZS5fZGVmYXVsdD1bMSwiZGl2PGRpdj4iLCI8L2Rpdj4iXSksaS5mbi5leHRlbmQoe3RleHQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGkuYWNjZXNzKHRoaXMsKGZ1bmN0aW9uKGUpe3JldHVybiB2b2lkIDA9PT1lP2kudGV4dCh0aGlzKTp0aGlzLmVtcHR5KCkuYXBwZW5kKCh0aGlzWzBdJiZ0aGlzWzBdLm93bmVyRG9jdW1lbnR8fHQpLmNyZWF0ZVRleHROb2RlKGUpKX0pLG51bGwsZSxhcmd1bWVudHMubGVuZ3RoKX0sd3JhcEFsbDpmdW5jdGlvbihlKXtpZihpLmlzRnVuY3Rpb24oZSkpcmV0dXJuIHRoaXMuZWFjaCgoZnVuY3Rpb24odCl7aSh0aGlzKS53cmFwQWxsKGUuY2FsbCh0aGlzLHQpKX0pKTtpZih0aGlzWzBdKXt2YXIgdD1pKGUsdGhpc1swXS5vd25lckRvY3VtZW50KS5lcSgwKS5jbG9uZSghMCk7dGhpc1swXS5wYXJlbnROb2RlJiZ0Lmluc2VydEJlZm9yZSh0aGlzWzBdKSx0Lm1hcCgoZnVuY3Rpb24oKXtmb3IodmFyIGU9dGhpcztlLmZpcnN0Q2hpbGQmJjE9PT1lLmZpcnN0Q2hpbGQubm9kZVR5cGU7KWU9ZS5maXJzdENoaWxkO3JldHVybiBlfSkpLmFwcGVuZCh0aGlzKX1yZXR1cm4gdGhpc30sd3JhcElubmVyOmZ1bmN0aW9uKGUpe3JldHVybiBpLmlzRnVuY3Rpb24oZSk/dGhpcy5lYWNoKChmdW5jdGlvbih0KXtpKHRoaXMpLndyYXBJbm5lcihlLmNhbGwodGhpcyx0KSl9KSk6dGhpcy5lYWNoKChmdW5jdGlvbigpe3ZhciB0PWkodGhpcyksbj10LmNvbnRlbnRzKCk7bi5sZW5ndGg/bi53cmFwQWxsKGUpOnQuYXBwZW5kKGUpfSkpfSx3cmFwOmZ1bmN0aW9uKGUpe3ZhciB0PWkuaXNGdW5jdGlvbihlKTtyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbihuKXtpKHRoaXMpLndyYXBBbGwodD9lLmNhbGwodGhpcyxuKTplKX0pKX0sdW53cmFwOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucGFyZW50KCkuZWFjaCgoZnVuY3Rpb24oKXsKaS5ub2RlTmFtZSh0aGlzLCJib2R5Iil8fGkodGhpcykucmVwbGFjZVdpdGgodGhpcy5jaGlsZE5vZGVzKX0pKS5lbmQoKX0sYXBwZW5kOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZG9tTWFuaXAoYXJndW1lbnRzLCEwLChmdW5jdGlvbihlKXsxPT09dGhpcy5ub2RlVHlwZSYmdGhpcy5hcHBlbmRDaGlsZChlKX0pKX0scHJlcGVuZDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmRvbU1hbmlwKGFyZ3VtZW50cywhMCwoZnVuY3Rpb24oZSl7MT09PXRoaXMubm9kZVR5cGUmJnRoaXMuaW5zZXJ0QmVmb3JlKGUsdGhpcy5maXJzdENoaWxkKX0pKX0sYmVmb3JlOmZ1bmN0aW9uKCl7aWYodGhpc1swXSYmdGhpc1swXS5wYXJlbnROb2RlKXJldHVybiB0aGlzLmRvbU1hbmlwKGFyZ3VtZW50cywhMSwoZnVuY3Rpb24oZSl7dGhpcy5wYXJlbnROb2RlLmluc2VydEJlZm9yZShlLHRoaXMpfSkpO2lmKGFyZ3VtZW50cy5sZW5ndGgpe3ZhciBlPWkuY2xlYW4oYXJndW1lbnRzKTtyZXR1cm4gZS5wdXNoLmFwcGx5KGUsdGhpcy50b0FycmF5KCkpLHRoaXMucHVzaFN0YWNrKGUsImJlZm9yZSIsYXJndW1lbnRzKX19LGFmdGVyOmZ1bmN0aW9uKCl7aWYodGhpc1swXSYmdGhpc1swXS5wYXJlbnROb2RlKXJldHVybiB0aGlzLmRvbU1hbmlwKGFyZ3VtZW50cywhMSwoZnVuY3Rpb24oZSl7dGhpcy5wYXJlbnROb2RlLmluc2VydEJlZm9yZShlLHRoaXMubmV4dFNpYmxpbmcpfSkpO2lmKGFyZ3VtZW50cy5sZW5ndGgpe3ZhciBlPXRoaXMucHVzaFN0YWNrKHRoaXMsImFmdGVyIixhcmd1bWVudHMpO3JldHVybiBlLnB1c2guYXBwbHkoZSxpLmNsZWFuKGFyZ3VtZW50cykpLGV9fSxyZW1vdmU6ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG4scj0wO251bGwhPShuPXRoaXNbcl0pO3IrKyllJiYhaS5maWx0ZXIoZSxbbl0pLmxlbmd0aHx8KHR8fDEhPT1uLm5vZGVUeXBlfHwoaS5jbGVhbkRhdGEobi5nZXRFbGVtZW50c0J5VGFnTmFtZSgiKiIpKSxpLmNsZWFuRGF0YShbbl0pKSxuLnBhcmVudE5vZGUmJm4ucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChuKSk7cmV0dXJuIHRoaXN9LGVtcHR5OmZ1bmN0aW9uKCl7Zm9yKHZhciBlLHQ9MDtudWxsIT0oZT10aGlzW3RdKTt0KyspZm9yKDE9PT1lLm5vZGVUeXBlJiZpLmNsZWFuRGF0YShlLmdldEVsZW1lbnRzQnlUYWdOYW1lKCIqIikpO2UuZmlyc3RDaGlsZDspZS5yZW1vdmVDaGlsZChlLmZpcnN0Q2hpbGQpO3JldHVybiB0aGlzfSxjbG9uZTpmdW5jdGlvbihlLHQpe3JldHVybiBlPWU/PyExLHQ9dD8/ZSx0aGlzLm1hcCgoZnVuY3Rpb24oKXtyZXR1cm4gaS5jbG9uZSh0aGlzLGUsdCl9KSl9LGh0bWw6ZnVuY3Rpb24oZSl7cmV0dXJuIGkuYWNjZXNzKHRoaXMsKGZ1bmN0aW9uKGUpe3ZhciB0PXRoaXNbMF18fHt9LG49MCxyPXRoaXMubGVuZ3RoO2lmKHZvaWQgMD09PWUpcmV0dXJuIDE9PT10Lm5vZGVUeXBlP3QuaW5uZXJIVE1MLnJlcGxhY2UoeiwiIik6bnVsbDtpZigic3RyaW5nIj09dHlwZW9mIGUmJiFLLnRlc3QoZSkmJihpLnN1cHBvcnQubGVhZGluZ1doaXRlc3BhY2V8fCFWLnRlc3QoZSkpJiYhbmVbKFkuZXhlYyhlKXx8WyIiLCIiXSlbMV0udG9Mb3dlckNhc2UoKV0pe2U9ZS5yZXBsYWNlKFUsIjwkMT48LyQyPiIpO3RyeXtmb3IoO248cjtuKyspMT09PSh0PXRoaXNbbl18fHt9KS5ub2RlVHlwZSYmKGkuY2xlYW5EYXRhKHQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIioiKSksdC5pbm5lckhUTUw9ZSk7dD0wfWNhdGNoKGUpe319dCYmdGhpcy5lbXB0eSgpLmFwcGVuZChlKX0pLG51bGwsZSxhcmd1bWVudHMubGVuZ3RoKX0scmVwbGFjZVdpdGg6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXNbMF0mJnRoaXNbMF0ucGFyZW50Tm9kZT9pLmlzRnVuY3Rpb24oZSk/dGhpcy5lYWNoKChmdW5jdGlvbih0KXt2YXIgbj1pKHRoaXMpLHI9bi5odG1sKCk7bi5yZXBsYWNlV2l0aChlLmNhbGwodGhpcyx0LHIpKX0pKTooInN0cmluZyIhPXR5cGVvZiBlJiYoZT1pKGUpLmRldGFjaCgpKSx0aGlzLmVhY2goKGZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5uZXh0U2libGluZyxuPXRoaXMucGFyZW50Tm9kZTtpKHRoaXMpLnJlbW92ZSgpLHQ/aSh0KS5iZWZvcmUoZSk6aShuKS5hcHBlbmQoZSl9KSkpOnRoaXMubGVuZ3RoP3RoaXMucHVzaFN0YWNrKGkoaS5pc0Z1bmN0aW9uKGUpP2UoKTplKSwicmVwbGFjZVdpdGgiLGUpOnRoaXN9LGRldGFjaDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5yZW1vdmUoZSwhMCl9LGRvbU1hbmlwOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixvLGEscyxsLHU9ZVswXSxjPVtdO2lmKCFpLnN1cHBvcnQuY2hlY2tDbG9uZSYmMz09PWFyZ3VtZW50cy5sZW5ndGgmJiJzdHJpbmciPT10eXBlb2YgdSYmZWUudGVzdCh1KSlyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbigpe2kodGhpcykuZG9tTWFuaXAoZSx0LG4sITApfSkpO2lmKGkuaXNGdW5jdGlvbih1KSlyZXR1cm4gdGhpcy5lYWNoKChmdW5jdGlvbihyKXt2YXIgbz1pKHRoaXMpO2VbMF09dS5jYWxsKHRoaXMscix0P28uaHRtbCgpOnZvaWQgMCksby5kb21NYW5pcChlLHQsbil9KSk7aWYodGhpc1swXSl7aWYocz11JiZ1LnBhcmVudE5vZGUsbz0xPT09KGE9KHI9aS5zdXBwb3J0LnBhcmVudE5vZGUmJnMmJjExPT09cy5ub2RlVHlwZSYmcy5jaGlsZE5vZGVzLmxlbmd0aD09PXRoaXMubGVuZ3RoP3tmcmFnbWVudDpzfTppLmJ1aWxkRnJhZ21lbnQoZSx0aGlzLGMpKS5mcmFnbWVudCkuY2hpbGROb2Rlcy5sZW5ndGg/YT1hLmZpcnN0Q2hpbGQ6YS5maXJzdENoaWxkKXt0PXQmJmkubm9kZU5hbWUobywidHIiKTtmb3IodmFyIGY9MCxkPXRoaXMubGVuZ3RoLHA9ZC0xO2Y8ZDtmKyspbi5jYWxsKHQ/KGw9dGhpc1tmXSxpLm5vZGVOYW1lKGwsInRhYmxlIik/bC5nZXRFbGVtZW50c0J5VGFnTmFtZSgidGJvZHkiKVswXXx8bC5hcHBlbmRDaGlsZChsLm93bmVyRG9jdW1lbnQuY3JlYXRlRWxlbWVudCgidGJvZHkiKSk6bCk6dGhpc1tmXSxyLmNhY2hlYWJsZXx8ZD4xJiZmPHA/aS5jbG9uZShhLCEwLCEwKTphKX1jLmxlbmd0aCYmaS5lYWNoKGMsKGZ1bmN0aW9uKGUsdCl7dC5wYXJlbnROb2RlJiZ0LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodCl9KSl9CnJldHVybiB0aGlzfX0pLGkuYnVpbGRGcmFnbWVudD1mdW5jdGlvbihlLG4scil7dmFyIG8sYSxzLGwsdT1lWzBdO3JldHVybiBuJiZuWzBdJiYobD1uWzBdLm93bmVyRG9jdW1lbnR8fG5bMF0pLGwuY3JlYXRlRG9jdW1lbnRGcmFnbWVudHx8KGw9dCksISgxPT09ZS5sZW5ndGgmJiJzdHJpbmciPT10eXBlb2YgdSYmdS5sZW5ndGg8NTEyJiZsPT09dCYmIjwiPT09dS5jaGFyQXQoMCkpfHxRLnRlc3QodSl8fCFpLnN1cHBvcnQuY2hlY2tDbG9uZSYmZWUudGVzdCh1KXx8IWkuc3VwcG9ydC5odG1sNUNsb25lJiZaLnRlc3QodSl8fChhPSEwLChzPWkuZnJhZ21lbnRzW3VdKSYmMSE9PXMmJihvPXMpKSxvfHwobz1sLmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSxpLmNsZWFuKGUsbCxvLHIpKSxhJiYoaS5mcmFnbWVudHNbdV09cz9vOjEpLHtmcmFnbWVudDpvLGNhY2hlYWJsZTphfX0saS5mcmFnbWVudHM9e30saS5lYWNoKHthcHBlbmRUbzoiYXBwZW5kIixwcmVwZW5kVG86InByZXBlbmQiLGluc2VydEJlZm9yZToiYmVmb3JlIixpbnNlcnRBZnRlcjoiYWZ0ZXIiLHJlcGxhY2VBbGw6InJlcGxhY2VXaXRoIn0sKGZ1bmN0aW9uKGUsdCl7aS5mbltlXT1mdW5jdGlvbihuKXt2YXIgcj1bXSxvPWkobiksYT0xPT09dGhpcy5sZW5ndGgmJnRoaXNbMF0ucGFyZW50Tm9kZTtpZihhJiYxMT09PWEubm9kZVR5cGUmJjE9PT1hLmNoaWxkTm9kZXMubGVuZ3RoJiYxPT09by5sZW5ndGgpcmV0dXJuIG9bdF0odGhpc1swXSksdGhpcztmb3IodmFyIHM9MCxsPW8ubGVuZ3RoO3M8bDtzKyspe3ZhciB1PShzPjA/dGhpcy5jbG9uZSghMCk6dGhpcykuZ2V0KCk7aShvW3NdKVt0XSh1KSxyPXIuY29uY2F0KHUpfXJldHVybiB0aGlzLnB1c2hTdGFjayhyLGUsby5zZWxlY3Rvcil9fSkpLGkuZXh0ZW5kKHtjbG9uZTpmdW5jdGlvbihlLG4scil7dmFyIG8sYSxzLGw9aS5zdXBwb3J0Lmh0bWw1Q2xvbmV8fGkuaXNYTUxEb2MoZSl8fCFaLnRlc3QoIjwiK2Uubm9kZU5hbWUrIj4iKT9lLmNsb25lTm9kZSghMCk6ZnVuY3Rpb24oZSl7dmFyIG49dC5jcmVhdGVFbGVtZW50KCJkaXYiKTtyZXR1cm4gcmUuYXBwZW5kQ2hpbGQobiksbi5pbm5lckhUTUw9ZS5vdXRlckhUTUwsbi5maXJzdENoaWxkfShlKTtpZighKGkuc3VwcG9ydC5ub0Nsb25lRXZlbnQmJmkuc3VwcG9ydC5ub0Nsb25lQ2hlY2tlZHx8MSE9PWUubm9kZVR5cGUmJjExIT09ZS5ub2RlVHlwZXx8aS5pc1hNTERvYyhlKSkpZm9yKG9lKGUsbCksbz1hZShlKSxhPWFlKGwpLHM9MDtvW3NdOysrcylhW3NdJiZvZShvW3NdLGFbc10pO2lmKG4mJihpZShlLGwpLHIpKWZvcihvPWFlKGUpLGE9YWUobCkscz0wO29bc107KytzKWllKG9bc10sYVtzXSk7cmV0dXJuIG89YT1udWxsLGx9LGNsZWFuOmZ1bmN0aW9uKGUsbixyLG8pe3ZhciBhLHMsbCx1PVtdO3ZvaWQgMD09PShuPW58fHQpLmNyZWF0ZUVsZW1lbnQmJihuPW4ub3duZXJEb2N1bWVudHx8blswXSYmblswXS5vd25lckRvY3VtZW50fHx0KTtmb3IodmFyIGMsZj0wO251bGwhPShjPWVbZl0pO2YrKylpZigibnVtYmVyIj09dHlwZW9mIGMmJihjKz0iIiksYyl7aWYoInN0cmluZyI9PXR5cGVvZiBjKWlmKEcudGVzdChjKSl7Yz1jLnJlcGxhY2UoVSwiPCQxPjwvJDI+Iik7dmFyIGQscD0oWS5leGVjKGMpfHxbIiIsIiJdKVsxXS50b0xvd2VyQ2FzZSgpLGg9bmVbcF18fG5lLl9kZWZhdWx0LG09aFswXSxnPW4uY3JlYXRlRWxlbWVudCgiZGl2Iiksdj1yZS5jaGlsZE5vZGVzO2ZvcihuPT09dD9yZS5hcHBlbmRDaGlsZChnKTpSKG4pLmFwcGVuZENoaWxkKGcpLGcuaW5uZXJIVE1MPWhbMV0rYytoWzJdO20tLTspZz1nLmxhc3RDaGlsZDtpZighaS5zdXBwb3J0LnRib2R5KXt2YXIgeT1KLnRlc3QoYyksYj0idGFibGUiIT09cHx8eT8iPHRhYmxlPiIhPT1oWzFdfHx5P1tdOmcuY2hpbGROb2RlczpnLmZpcnN0Q2hpbGQmJmcuZmlyc3RDaGlsZC5jaGlsZE5vZGVzO2ZvcihsPWIubGVuZ3RoLTE7bD49MDstLWwpaS5ub2RlTmFtZShiW2xdLCJ0Ym9keSIpJiYhYltsXS5jaGlsZE5vZGVzLmxlbmd0aCYmYltsXS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGJbbF0pfSFpLnN1cHBvcnQubGVhZGluZ1doaXRlc3BhY2UmJlYudGVzdChjKSYmZy5pbnNlcnRCZWZvcmUobi5jcmVhdGVUZXh0Tm9kZShWLmV4ZWMoYylbMF0pLGcuZmlyc3RDaGlsZCksYz1nLmNoaWxkTm9kZXMsZyYmKGcucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChnKSx2Lmxlbmd0aD4wJiYoZD12W3YubGVuZ3RoLTFdKSYmZC5wYXJlbnROb2RlJiZkLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoZCkpfWVsc2UgYz1uLmNyZWF0ZVRleHROb2RlKGMpO3ZhciB4O2lmKCFpLnN1cHBvcnQuYXBwZW5kQ2hlY2tlZClpZihjWzBdJiYibnVtYmVyIj09dHlwZW9mKHg9Yy5sZW5ndGgpKWZvcihsPTA7bDx4O2wrKylsZShjW2xdKTtlbHNlIGxlKGMpO2Mubm9kZVR5cGU/dS5wdXNoKGMpOnU9aS5tZXJnZSh1LGMpfWlmKHIpZm9yKGE9ZnVuY3Rpb24oZSl7cmV0dXJuIWUudHlwZXx8dGUudGVzdChlLnR5cGUpfSxmPTA7dVtmXTtmKyspaWYocz11W2ZdLG8mJmkubm9kZU5hbWUocywic2NyaXB0IikmJighcy50eXBlfHx0ZS50ZXN0KHMudHlwZSkpKW8ucHVzaChzLnBhcmVudE5vZGU/cy5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHMpOnMpO2Vsc2V7aWYoMT09PXMubm9kZVR5cGUpe3ZhciB3PWkuZ3JlcChzLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKSxhKTt1LnNwbGljZS5hcHBseSh1LFtmKzEsMF0uY29uY2F0KHcpKX1yLmFwcGVuZENoaWxkKHMpfXJldHVybiB1fSxjbGVhbkRhdGE6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0LG4scixvPWkuY2FjaGUsYT1pLmV2ZW50LnNwZWNpYWwscz1pLnN1cHBvcnQuZGVsZXRlRXhwYW5kbyxsPTA7bnVsbCE9KHI9ZVtsXSk7bCsrKWlmKCghci5ub2RlTmFtZXx8IWkubm9EYXRhW3Iubm9kZU5hbWUudG9Mb3dlckNhc2UoKV0pJiYobj1yW2kuZXhwYW5kb10pKXtpZigodD1vW25dKSYmdC5ldmVudHMpe2Zvcih2YXIgdSBpbiB0LmV2ZW50cylhW3VdP2kuZXZlbnQucmVtb3ZlKHIsdSk6aS5yZW1vdmVFdmVudChyLHUsdC5oYW5kbGUpCjt0LmhhbmRsZSYmKHQuaGFuZGxlLmVsZW09bnVsbCl9cz9kZWxldGUgcltpLmV4cGFuZG9dOnIucmVtb3ZlQXR0cmlidXRlJiZyLnJlbW92ZUF0dHJpYnV0ZShpLmV4cGFuZG8pLGRlbGV0ZSBvW25dfX19KTt2YXIgdWUsY2UsZmUsZGU9L2FscGhhXChbXildKlwpL2kscGU9L29wYWNpdHk9KFteKV0qKS8saGU9LyhbQS1aXXxebXMpL2csbWU9L15bXC0rXT8oPzpcZCpcLik/XGQrJC9pLGdlPS9eLT8oPzpcZCpcLik/XGQrKD8hcHgpW15cZFxzXSskL2ksdmU9L14oW1wtK10pPShbXC0rLlxkZV0rKS8seWU9L15tYXJnaW4vLGJlPXtwb3NpdGlvbjoiYWJzb2x1dGUiLHZpc2liaWxpdHk6ImhpZGRlbiIsZGlzcGxheToiYmxvY2sifSx4ZT1bIlRvcCIsIlJpZ2h0IiwiQm90dG9tIiwiTGVmdCJdO2Z1bmN0aW9uIHdlKGUsdCxuKXt2YXIgcj0id2lkdGgiPT09dD9lLm9mZnNldFdpZHRoOmUub2Zmc2V0SGVpZ2h0LG89IndpZHRoIj09PXQ/MTowO2lmKHI+MCl7aWYoImJvcmRlciIhPT1uKWZvcig7bzw0O28rPTIpbnx8KHItPXBhcnNlRmxvYXQoaS5jc3MoZSwicGFkZGluZyIreGVbb10pKXx8MCksIm1hcmdpbiI9PT1uP3IrPXBhcnNlRmxvYXQoaS5jc3MoZSxuK3hlW29dKSl8fDA6ci09cGFyc2VGbG9hdChpLmNzcyhlLCJib3JkZXIiK3hlW29dKyJXaWR0aCIpKXx8MDtyZXR1cm4gcisicHgifWlmKCgocj11ZShlLHQpKTwwfHxudWxsPT1yKSYmKHI9ZS5zdHlsZVt0XSksZ2UudGVzdChyKSlyZXR1cm4gcjtpZihyPXBhcnNlRmxvYXQocil8fDAsbilmb3IoO288NDtvKz0yKXIrPXBhcnNlRmxvYXQoaS5jc3MoZSwicGFkZGluZyIreGVbb10pKXx8MCwicGFkZGluZyIhPT1uJiYocis9cGFyc2VGbG9hdChpLmNzcyhlLCJib3JkZXIiK3hlW29dKyJXaWR0aCIpKXx8MCksIm1hcmdpbiI9PT1uJiYocis9cGFyc2VGbG9hdChpLmNzcyhlLG4reGVbb10pKXx8MCk7cmV0dXJuIHIrInB4In1pLmZuLmNzcz1mdW5jdGlvbihlLHQpe3JldHVybiBpLmFjY2Vzcyh0aGlzLChmdW5jdGlvbihlLHQsbil7cmV0dXJuIHZvaWQgMCE9PW4/aS5zdHlsZShlLHQsbik6aS5jc3MoZSx0KX0pLGUsdCxhcmd1bWVudHMubGVuZ3RoPjEpfSxpLmV4dGVuZCh7Y3NzSG9va3M6e29wYWNpdHk6e2dldDpmdW5jdGlvbihlLHQpe2lmKHQpe3ZhciBuPXVlKGUsIm9wYWNpdHkiKTtyZXR1cm4iIj09PW4/IjEiOm59cmV0dXJuIGUuc3R5bGUub3BhY2l0eX19fSxjc3NOdW1iZXI6e2ZpbGxPcGFjaXR5OiEwLGZvbnRXZWlnaHQ6ITAsbGluZUhlaWdodDohMCxvcGFjaXR5OiEwLG9ycGhhbnM6ITAsd2lkb3dzOiEwLHpJbmRleDohMCx6b29tOiEwfSxjc3NQcm9wczp7ZmxvYXQ6aS5zdXBwb3J0LmNzc0Zsb2F0PyJjc3NGbG9hdCI6InN0eWxlRmxvYXQifSxzdHlsZTpmdW5jdGlvbihlLHQsbixyKXtpZihlJiYzIT09ZS5ub2RlVHlwZSYmOCE9PWUubm9kZVR5cGUmJmUuc3R5bGUpe3ZhciBvLGEscz1pLmNhbWVsQ2FzZSh0KSxsPWUuc3R5bGUsdT1pLmNzc0hvb2tzW3NdO2lmKHQ9aS5jc3NQcm9wc1tzXXx8cyx2b2lkIDA9PT1uKXJldHVybiB1JiYiZ2V0ImluIHUmJnZvaWQgMCE9PShvPXUuZ2V0KGUsITEscikpP286bFt0XTtpZighKCJzdHJpbmciPT09KGE9dHlwZW9mIG4pJiYobz12ZS5leGVjKG4pKSYmKG49KyhvWzFdKzEpKitvWzJdK3BhcnNlRmxvYXQoaS5jc3MoZSx0KSksYT0ibnVtYmVyIiksbnVsbD09bnx8Im51bWJlciI9PT1hJiZpc05hTihuKXx8KCJudW1iZXIiIT09YXx8aS5jc3NOdW1iZXJbc118fChuKz0icHgiKSx1JiYic2V0ImluIHUmJnZvaWQgMD09PShuPXUuc2V0KGUsbikpKSkpdHJ5e2xbdF09bn1jYXRjaChlKXt9fX0sY3NzOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixvO3JldHVybiB0PWkuY2FtZWxDYXNlKHQpLG89aS5jc3NIb29rc1t0XSwiY3NzRmxvYXQiPT09KHQ9aS5jc3NQcm9wc1t0XXx8dCkmJih0PSJmbG9hdCIpLG8mJiJnZXQiaW4gbyYmdm9pZCAwIT09KHI9by5nZXQoZSwhMCxuKSk/cjp1ZT91ZShlLHQpOnZvaWQgMH0sc3dhcDpmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvPXt9O2ZvcihpIGluIHQpb1tpXT1lLnN0eWxlW2ldLGUuc3R5bGVbaV09dFtpXTtmb3IoaSBpbiByPW4uY2FsbChlKSx0KWUuc3R5bGVbaV09b1tpXTtyZXR1cm4gcn19KSxpLmN1ckNTUz1pLmNzcyx0LmRlZmF1bHRWaWV3JiZ0LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUmJihjZT1mdW5jdGlvbihlLHQpe3ZhciBuLHIsbyxhLHM9ZS5zdHlsZTtyZXR1cm4gdD10LnJlcGxhY2UoaGUsIi0kMSIpLnRvTG93ZXJDYXNlKCksKHI9ZS5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3KSYmKG89ci5nZXRDb21wdXRlZFN0eWxlKGUsbnVsbCkpJiYoIiIhPT0obj1vLmdldFByb3BlcnR5VmFsdWUodCkpfHxpLmNvbnRhaW5zKGUub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsZSl8fChuPWkuc3R5bGUoZSx0KSkpLCFpLnN1cHBvcnQucGl4ZWxNYXJnaW4mJm8mJnllLnRlc3QodCkmJmdlLnRlc3QobikmJihhPXMud2lkdGgscy53aWR0aD1uLG49by53aWR0aCxzLndpZHRoPWEpLG59KSx0LmRvY3VtZW50RWxlbWVudC5jdXJyZW50U3R5bGUmJihmZT1mdW5jdGlvbihlLHQpe3ZhciBuLHIsaSxvPWUuY3VycmVudFN0eWxlJiZlLmN1cnJlbnRTdHlsZVt0XSxhPWUuc3R5bGU7cmV0dXJuIG51bGw9PW8mJmEmJihpPWFbdF0pJiYobz1pKSxnZS50ZXN0KG8pJiYobj1hLmxlZnQsKHI9ZS5ydW50aW1lU3R5bGUmJmUucnVudGltZVN0eWxlLmxlZnQpJiYoZS5ydW50aW1lU3R5bGUubGVmdD1lLmN1cnJlbnRTdHlsZS5sZWZ0KSxhLmxlZnQ9ImZvbnRTaXplIj09PXQ/IjFlbSI6byxvPWEucGl4ZWxMZWZ0KyJweCIsYS5sZWZ0PW4sciYmKGUucnVudGltZVN0eWxlLmxlZnQ9cikpLCIiPT09bz8iYXV0byI6b30pLHVlPWNlfHxmZSxpLmVhY2goWyJoZWlnaHQiLCJ3aWR0aCJdLChmdW5jdGlvbihlLHQpe2kuY3NzSG9va3NbdF09e2dldDpmdW5jdGlvbihlLG4scil7aWYobilyZXR1cm4gMCE9PWUub2Zmc2V0V2lkdGg/d2UoZSx0LHIpOmkuc3dhcChlLGJlLChmdW5jdGlvbigpe3JldHVybiB3ZShlLHQscil9KSl9LHNldDpmdW5jdGlvbihlLHQpewpyZXR1cm4gbWUudGVzdCh0KT90KyJweCI6dH19fSkpLGkuc3VwcG9ydC5vcGFjaXR5fHwoaS5jc3NIb29rcy5vcGFjaXR5PXtnZXQ6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gcGUudGVzdCgodCYmZS5jdXJyZW50U3R5bGU/ZS5jdXJyZW50U3R5bGUuZmlsdGVyOmUuc3R5bGUuZmlsdGVyKXx8IiIpP3BhcnNlRmxvYXQoUmVnRXhwLiQxKS8xMDArIiI6dD8iMSI6IiJ9LHNldDpmdW5jdGlvbihlLHQpe3ZhciBuPWUuc3R5bGUscj1lLmN1cnJlbnRTdHlsZSxvPWkuaXNOdW1lcmljKHQpPyJhbHBoYShvcGFjaXR5PSIrMTAwKnQrIikiOiIiLGE9ciYmci5maWx0ZXJ8fG4uZmlsdGVyfHwiIjtuLnpvb209MSx0Pj0xJiYiIj09PWkudHJpbShhLnJlcGxhY2UoZGUsIiIpKSYmKG4ucmVtb3ZlQXR0cmlidXRlKCJmaWx0ZXIiKSxyJiYhci5maWx0ZXIpfHwobi5maWx0ZXI9ZGUudGVzdChhKT9hLnJlcGxhY2UoZGUsbyk6YSsiICIrbyl9fSksaSgoZnVuY3Rpb24oKXtpLnN1cHBvcnQucmVsaWFibGVNYXJnaW5SaWdodHx8KGkuY3NzSG9va3MubWFyZ2luUmlnaHQ9e2dldDpmdW5jdGlvbihlLHQpe3JldHVybiBpLnN3YXAoZSx7ZGlzcGxheToiaW5saW5lLWJsb2NrIn0sKGZ1bmN0aW9uKCl7cmV0dXJuIHQ/dWUoZSwibWFyZ2luLXJpZ2h0Iik6ZS5zdHlsZS5tYXJnaW5SaWdodH0pKX19KX0pKSxpLmV4cHImJmkuZXhwci5maWx0ZXJzJiYoaS5leHByLmZpbHRlcnMuaGlkZGVuPWZ1bmN0aW9uKGUpe3ZhciB0PWUub2Zmc2V0V2lkdGgsbj1lLm9mZnNldEhlaWdodDtyZXR1cm4gMD09PXQmJjA9PT1ufHwhaS5zdXBwb3J0LnJlbGlhYmxlSGlkZGVuT2Zmc2V0cyYmIm5vbmUiPT09KGUuc3R5bGUmJmUuc3R5bGUuZGlzcGxheXx8aS5jc3MoZSwiZGlzcGxheSIpKX0saS5leHByLmZpbHRlcnMudmlzaWJsZT1mdW5jdGlvbihlKXtyZXR1cm4haS5leHByLmZpbHRlcnMuaGlkZGVuKGUpfSksaS5lYWNoKHttYXJnaW46IiIscGFkZGluZzoiIixib3JkZXI6IldpZHRoIn0sKGZ1bmN0aW9uKGUsdCl7aS5jc3NIb29rc1tlK3RdPXtleHBhbmQ6ZnVuY3Rpb24obil7dmFyIHIsaT0ic3RyaW5nIj09dHlwZW9mIG4/bi5zcGxpdCgiICIpOltuXSxvPXt9O2ZvcihyPTA7cjw0O3IrKylvW2UreGVbcl0rdF09aVtyXXx8aVtyLTJdfHxpWzBdO3JldHVybiBvfX19KSk7dmFyIFRlLE5lLENlPS8lMjAvZyxTZT0vXFtcXSQvLGtlPS9ccj9cbi9nLEVlPS8jLiokLyxBZT0vXiguKj8pOlsgXHRdKihbXlxyXG5dKilccj8kL2dtLERlPS9eKD86Y29sb3J8ZGF0ZXxkYXRldGltZXxkYXRldGltZS1sb2NhbHxlbWFpbHxoaWRkZW58bW9udGh8bnVtYmVyfHBhc3N3b3JkfHJhbmdlfHNlYXJjaHx0ZWx8dGV4dHx0aW1lfHVybHx3ZWVrKSQvaSxMZT0vXig/OkdFVHxIRUFEKSQvLEZlPS9eXC9cLy8samU9L1w/LyxfZT0vPHNjcmlwdFxiW148XSooPzooPyE8XC9zY3JpcHQ+KTxbXjxdKikqPFwvc2NyaXB0Pi9naSxNZT0vXig/OnNlbGVjdHx0ZXh0YXJlYSkvaSxPZT0vXHMrLyxIZT0vKFs/Jl0pXz1bXiZdKi8sUGU9L14oW1x3XCtcLlwtXSs6KSg/OlwvXC8oW15cLz8jOl0qKSg/OjooXGQrKSk/KT8vLHFlPWkuZm4ubG9hZCxCZT17fSxXZT17fSxJZT1bIiovIl0rWyIqIl07dHJ5e1RlPXIuaHJlZn1jYXRjaChlKXsoVGU9dC5jcmVhdGVFbGVtZW50KCJhIikpLmhyZWY9IiIsVGU9VGUuaHJlZn1mdW5jdGlvbiAkZShlKXtyZXR1cm4gZnVuY3Rpb24odCxuKXtpZigic3RyaW5nIiE9dHlwZW9mIHQmJihuPXQsdD0iKiIpLGkuaXNGdW5jdGlvbihuKSlmb3IodmFyIHIsbyxhPXQudG9Mb3dlckNhc2UoKS5zcGxpdChPZSkscz0wLGw9YS5sZW5ndGg7czxsO3MrKylyPWFbc10sKG89L15cKy8udGVzdChyKSkmJihyPXIuc3Vic3RyKDEpfHwiKiIpLChlW3JdPWVbcl18fFtdKVtvPyJ1bnNoaWZ0IjoicHVzaCJdKG4pfX1mdW5jdGlvbiBSZShlLHQsbixyLGksbyl7KG89b3x8e30pW2k9aXx8dC5kYXRhVHlwZXNbMF1dPSEwO2Zvcih2YXIgYSxzPWVbaV0sbD0wLHU9cz9zLmxlbmd0aDowLGM9ZT09PUJlO2w8dSYmKGN8fCFhKTtsKyspInN0cmluZyI9PXR5cGVvZihhPXNbbF0odCxuLHIpKSYmKCFjfHxvW2FdP2E9dm9pZCAwOih0LmRhdGFUeXBlcy51bnNoaWZ0KGEpLGE9UmUoZSx0LG4scixhLG8pKSk7cmV0dXJuIWMmJmF8fG9bIioiXXx8KGE9UmUoZSx0LG4sciwiKiIsbykpLGF9ZnVuY3Rpb24gWGUoZSx0KXt2YXIgbixyLG89aS5hamF4U2V0dGluZ3MuZmxhdE9wdGlvbnN8fHt9O2ZvcihuIGluIHQpdm9pZCAwIT09dFtuXSYmKChvW25dP2U6cnx8KHI9e30pKVtuXT10W25dKTtyJiZpLmV4dGVuZCghMCxlLHIpfWZ1bmN0aW9uIHplKGUsdCxuLHIpe2lmKGkuaXNBcnJheSh0KSlpLmVhY2godCwoZnVuY3Rpb24odCxpKXtufHxTZS50ZXN0KGUpP3IoZSxpKTp6ZShlKyJbIisoIm9iamVjdCI9PXR5cGVvZiBpP3Q6IiIpKyJdIixpLG4scil9KSk7ZWxzZSBpZihufHwib2JqZWN0IiE9PWkudHlwZSh0KSlyKGUsdCk7ZWxzZSBmb3IodmFyIG8gaW4gdCl6ZShlKyJbIitvKyJdIix0W29dLG4scil9TmU9UGUuZXhlYyhUZS50b0xvd2VyQ2FzZSgpKXx8W10saS5mbi5leHRlbmQoe2xvYWQ6ZnVuY3Rpb24oZSx0LG4pe2lmKCJzdHJpbmciIT10eXBlb2YgZSYmcWUpcmV0dXJuIHFlLmFwcGx5KHRoaXMsYXJndW1lbnRzKTtpZighdGhpcy5sZW5ndGgpcmV0dXJuIHRoaXM7dmFyIHI9ZS5pbmRleE9mKCIgIik7aWYocj49MCl7dmFyIG89ZS5zbGljZShyLGUubGVuZ3RoKTtlPWUuc2xpY2UoMCxyKX12YXIgYT0iR0VUIjt0JiYoaS5pc0Z1bmN0aW9uKHQpPyhuPXQsdD12b2lkIDApOiJvYmplY3QiPT10eXBlb2YgdCYmKHQ9aS5wYXJhbSh0LGkuYWpheFNldHRpbmdzLnRyYWRpdGlvbmFsKSxhPSJQT1NUIikpO3ZhciBzPXRoaXM7cmV0dXJuIGkuYWpheCh7dXJsOmUsdHlwZTphLGRhdGFUeXBlOiJodG1sIixkYXRhOnQsY29tcGxldGU6ZnVuY3Rpb24oZSx0LHIpe3I9ZS5yZXNwb25zZVRleHQsZS5pc1Jlc29sdmVkKCkmJihlLmRvbmUoKGZ1bmN0aW9uKGUpe3I9ZX0pKSxzLmh0bWwobz9pKCI8ZGl2PiIpLmFwcGVuZChyLnJlcGxhY2UoX2UsIiIpKS5maW5kKG8pOnIpKSwKbiYmcy5lYWNoKG4sW3IsdCxlXSl9fSksdGhpc30sc2VyaWFsaXplOmZ1bmN0aW9uKCl7cmV0dXJuIGkucGFyYW0odGhpcy5zZXJpYWxpemVBcnJheSgpKX0sc2VyaWFsaXplQXJyYXk6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tYXAoKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZWxlbWVudHM/aS5tYWtlQXJyYXkodGhpcy5lbGVtZW50cyk6dGhpc30pKS5maWx0ZXIoKGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubmFtZSYmIXRoaXMuZGlzYWJsZWQmJih0aGlzLmNoZWNrZWR8fE1lLnRlc3QodGhpcy5ub2RlTmFtZSl8fERlLnRlc3QodGhpcy50eXBlKSl9KSkubWFwKChmdW5jdGlvbihlLHQpe3ZhciBuPWkodGhpcykudmFsKCk7cmV0dXJuIG51bGw9PW4/bnVsbDppLmlzQXJyYXkobik/aS5tYXAobiwoZnVuY3Rpb24oZSxuKXtyZXR1cm57bmFtZTp0Lm5hbWUsdmFsdWU6ZS5yZXBsYWNlKGtlLCJcclxuIil9fSkpOntuYW1lOnQubmFtZSx2YWx1ZTpuLnJlcGxhY2Uoa2UsIlxyXG4iKX19KSkuZ2V0KCl9fSksaS5lYWNoKCJhamF4U3RhcnQgYWpheFN0b3AgYWpheENvbXBsZXRlIGFqYXhFcnJvciBhamF4U3VjY2VzcyBhamF4U2VuZCIuc3BsaXQoIiAiKSwoZnVuY3Rpb24oZSx0KXtpLmZuW3RdPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLm9uKHQsZSl9fSkpLGkuZWFjaChbImdldCIsInBvc3QiXSwoZnVuY3Rpb24oZSx0KXtpW3RdPWZ1bmN0aW9uKGUsbixyLG8pe3JldHVybiBpLmlzRnVuY3Rpb24obikmJihvPW98fHIscj1uLG49dm9pZCAwKSxpLmFqYXgoe3R5cGU6dCx1cmw6ZSxkYXRhOm4sc3VjY2VzczpyLGRhdGFUeXBlOm99KX19KSksaS5leHRlbmQoe2dldFNjcmlwdDpmdW5jdGlvbihlLHQpe3JldHVybiBpLmdldChlLHZvaWQgMCx0LCJzY3JpcHQiKX0sZ2V0SlNPTjpmdW5jdGlvbihlLHQsbil7cmV0dXJuIGkuZ2V0KGUsdCxuLCJqc29uIil9LGFqYXhTZXR1cDpmdW5jdGlvbihlLHQpe3JldHVybiB0P1hlKGUsaS5hamF4U2V0dGluZ3MpOih0PWUsZT1pLmFqYXhTZXR0aW5ncyksWGUoZSx0KSxlfSxhamF4U2V0dGluZ3M6e3VybDpUZSxpc0xvY2FsOi9eKD86YWJvdXR8YXBwfGFwcFwtc3RvcmFnZXwuK1wtZXh0ZW5zaW9ufGZpbGV8cmVzfHdpZGdldCk6JC8udGVzdChOZVsxXSksZ2xvYmFsOiEwLHR5cGU6IkdFVCIsY29udGVudFR5cGU6ImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDsgY2hhcnNldD1VVEYtOCIscHJvY2Vzc0RhdGE6ITAsYXN5bmM6ITAsYWNjZXB0czp7eG1sOiJhcHBsaWNhdGlvbi94bWwsIHRleHQveG1sIixodG1sOiJ0ZXh0L2h0bWwiLHRleHQ6InRleHQvcGxhaW4iLGpzb246ImFwcGxpY2F0aW9uL2pzb24sIHRleHQvamF2YXNjcmlwdCIsIioiOkllfSxjb250ZW50czp7eG1sOi94bWwvLGh0bWw6L2h0bWwvLGpzb246L2pzb24vfSxyZXNwb25zZUZpZWxkczp7eG1sOiJyZXNwb25zZVhNTCIsdGV4dDoicmVzcG9uc2VUZXh0In0sY29udmVydGVyczp7IiogdGV4dCI6d2luZG93LlN0cmluZywidGV4dCBodG1sIjohMCwidGV4dCBqc29uIjppLnBhcnNlSlNPTiwidGV4dCB4bWwiOmkucGFyc2VYTUx9LGZsYXRPcHRpb25zOntjb250ZXh0OiEwLHVybDohMH19LGFqYXhQcmVmaWx0ZXI6JGUoQmUpLGFqYXhUcmFuc3BvcnQ6JGUoV2UpLGFqYXg6ZnVuY3Rpb24oZSx0KXsib2JqZWN0Ij09dHlwZW9mIGUmJih0PWUsZT12b2lkIDApLHQ9dHx8e307dmFyIG4scixvLGEscyxsLHUsYyxmPWkuYWpheFNldHVwKHt9LHQpLGQ9Zi5jb250ZXh0fHxmLHA9ZCE9PWYmJihkLm5vZGVUeXBlfHxkIGluc3RhbmNlb2YgaSk/aShkKTppLmV2ZW50LGg9aS5EZWZlcnJlZCgpLG09aS5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksZz1mLnN0YXR1c0NvZGV8fHt9LHY9e30seT17fSxiPTAseD17cmVhZHlTdGF0ZTowLHNldFJlcXVlc3RIZWFkZXI6ZnVuY3Rpb24oZSx0KXtpZighYil7dmFyIG49ZS50b0xvd2VyQ2FzZSgpO2U9eVtuXT15W25dfHxlLHZbZV09dH1yZXR1cm4gdGhpc30sZ2V0QWxsUmVzcG9uc2VIZWFkZXJzOmZ1bmN0aW9uKCl7cmV0dXJuIDI9PT1iP3I6bnVsbH0sZ2V0UmVzcG9uc2VIZWFkZXI6ZnVuY3Rpb24oZSl7dmFyIHQ7aWYoMj09PWIpe2lmKCFvKWZvcihvPXt9O3Q9QWUuZXhlYyhyKTspb1t0WzFdLnRvTG93ZXJDYXNlKCldPXRbMl07dD1vW2UudG9Mb3dlckNhc2UoKV19cmV0dXJuIHZvaWQgMD09PXQ/bnVsbDp0fSxvdmVycmlkZU1pbWVUeXBlOmZ1bmN0aW9uKGUpe3JldHVybiBifHwoZi5taW1lVHlwZT1lKSx0aGlzfSxhYm9ydDpmdW5jdGlvbihlKXtyZXR1cm4gZT1lfHwiYWJvcnQiLGEmJmEuYWJvcnQoZSksdygwLGUpLHRoaXN9fTtmdW5jdGlvbiB3KGUsdCxvLGwpe2lmKDIhPT1iKXtiPTIscyYmY2xlYXJUaW1lb3V0KHMpLGE9dm9pZCAwLHI9bHx8IiIseC5yZWFkeVN0YXRlPWU+MD80OjA7dmFyIGMsdix5LHcsVCxOPXQsQz1vP2Z1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYSxzPWUuY29udGVudHMsbD1lLmRhdGFUeXBlcyx1PWUucmVzcG9uc2VGaWVsZHM7Zm9yKGkgaW4gdSlpIGluIG4mJih0W3VbaV1dPW5baV0pO2Zvcig7IioiPT09bFswXTspbC5zaGlmdCgpLHZvaWQgMD09PXImJihyPWUubWltZVR5cGV8fHQuZ2V0UmVzcG9uc2VIZWFkZXIoImNvbnRlbnQtdHlwZSIpKTtpZihyKWZvcihpIGluIHMpaWYoc1tpXSYmc1tpXS50ZXN0KHIpKXtsLnVuc2hpZnQoaSk7YnJlYWt9aWYobFswXWluIG4pbz1sWzBdO2Vsc2V7Zm9yKGkgaW4gbil7aWYoIWxbMF18fGUuY29udmVydGVyc1tpKyIgIitsWzBdXSl7bz1pO2JyZWFrfWF8fChhPWkpfW89b3x8YX1pZihvKXJldHVybiBvIT09bFswXSYmbC51bnNoaWZ0KG8pLG5bb119KGYseCxvKTp2b2lkIDA7aWYoZT49MjAwJiZlPDMwMHx8MzA0PT09ZSlpZihmLmlmTW9kaWZpZWQmJigodz14LmdldFJlc3BvbnNlSGVhZGVyKCJMYXN0LU1vZGlmaWVkIikpJiYoaS5sYXN0TW9kaWZpZWRbbl09dyksKFQ9eC5nZXRSZXNwb25zZUhlYWRlcigiRXRhZyIpKSYmKGkuZXRhZ1tuXT1UKSksMzA0PT09ZSlOPSJub3Rtb2RpZmllZCIsYz0hMDtlbHNlIHRyeXt2PWZ1bmN0aW9uKGUsdCl7CmUuZGF0YUZpbHRlciYmKHQ9ZS5kYXRhRmlsdGVyKHQsZS5kYXRhVHlwZSkpO3ZhciBuLHIsbyxhLHMsbCx1LGMsZj1lLmRhdGFUeXBlcyxkPXt9LHA9Zi5sZW5ndGgsaD1mWzBdO2ZvcihuPTE7bjxwO24rKyl7aWYoMT09PW4pZm9yKHIgaW4gZS5jb252ZXJ0ZXJzKSJzdHJpbmciPT10eXBlb2YgciYmKGRbci50b0xvd2VyQ2FzZSgpXT1lLmNvbnZlcnRlcnNbcl0pO2lmKGE9aCwiKiI9PT0oaD1mW25dKSloPWE7ZWxzZSBpZigiKiIhPT1hJiZhIT09aCl7aWYoIShsPWRbcz1hKyIgIitoXXx8ZFsiKiAiK2hdKSlmb3IodSBpbiBjPXZvaWQgMCxkKWlmKCgobz11LnNwbGl0KCIgIikpWzBdPT09YXx8IioiPT09b1swXSkmJihjPWRbb1sxXSsiICIraF0pKXshMD09PSh1PWRbdV0pP2w9YzohMD09PWMmJihsPXUpO2JyZWFrfWx8fGN8fGkuZXJyb3IoIk5vIGNvbnZlcnNpb24gZnJvbSAiK3MucmVwbGFjZSgiICIsIiB0byAiKSksITAhPT1sJiYodD1sP2wodCk6Yyh1KHQpKSl9fXJldHVybiB0fShmLEMpLE49InN1Y2Nlc3MiLGM9ITB9Y2F0Y2goZSl7Tj0icGFyc2VyZXJyb3IiLHk9ZX1lbHNlIHk9TixOJiYhZXx8KE49ImVycm9yIixlPDAmJihlPTApKTt4LnN0YXR1cz1lLHguc3RhdHVzVGV4dD0iIisodHx8TiksYz9oLnJlc29sdmVXaXRoKGQsW3YsTix4XSk6aC5yZWplY3RXaXRoKGQsW3gsTix5XSkseC5zdGF0dXNDb2RlKGcpLGc9dm9pZCAwLHUmJnAudHJpZ2dlcigiYWpheCIrKGM/IlN1Y2Nlc3MiOiJFcnJvciIpLFt4LGYsYz92OnldKSxtLmZpcmVXaXRoKGQsW3gsTl0pLHUmJihwLnRyaWdnZXIoImFqYXhDb21wbGV0ZSIsW3gsZl0pLC0taS5hY3RpdmV8fGkuZXZlbnQudHJpZ2dlcigiYWpheFN0b3AiKSl9fWlmKGgucHJvbWlzZSh4KSx4LnN1Y2Nlc3M9eC5kb25lLHguZXJyb3I9eC5mYWlsLHguY29tcGxldGU9bS5hZGQseC5zdGF0dXNDb2RlPWZ1bmN0aW9uKGUpe3ZhciB0O2lmKGUpaWYoYjwyKWZvcih0IGluIGUpZ1t0XT1bZ1t0XSxlW3RdXTtlbHNlIHQ9ZVt4LnN0YXR1c10seC50aGVuKHQsdCk7cmV0dXJuIHRoaXN9LGYudXJsPSgoZXx8Zi51cmwpKyIiKS5yZXBsYWNlKEVlLCIiKS5yZXBsYWNlKEZlLE5lWzFdKyIvLyIpLGYuZGF0YVR5cGVzPWkudHJpbShmLmRhdGFUeXBlfHwiKiIpLnRvTG93ZXJDYXNlKCkuc3BsaXQoT2UpLG51bGw9PWYuY3Jvc3NEb21haW4mJihsPVBlLmV4ZWMoZi51cmwudG9Mb3dlckNhc2UoKSksZi5jcm9zc0RvbWFpbj0hKCFsfHxsWzFdPT1OZVsxXSYmbFsyXT09TmVbMl0mJihsWzNdfHwoImh0dHA6Ij09PWxbMV0/ODA6NDQzKSk9PShOZVszXXx8KCJodHRwOiI9PT1OZVsxXT84MDo0NDMpKSkpLGYuZGF0YSYmZi5wcm9jZXNzRGF0YSYmInN0cmluZyIhPXR5cGVvZiBmLmRhdGEmJihmLmRhdGE9aS5wYXJhbShmLmRhdGEsZi50cmFkaXRpb25hbCkpLFJlKEJlLGYsdCx4KSwyPT09YilyZXR1cm4hMTtpZih1PWYuZ2xvYmFsLGYudHlwZT1mLnR5cGUudG9VcHBlckNhc2UoKSxmLmhhc0NvbnRlbnQ9IUxlLnRlc3QoZi50eXBlKSx1JiYwPT1pLmFjdGl2ZSsrJiZpLmV2ZW50LnRyaWdnZXIoImFqYXhTdGFydCIpLCFmLmhhc0NvbnRlbnQmJihmLmRhdGEmJihmLnVybCs9KGplLnRlc3QoZi51cmwpPyImIjoiPyIpK2YuZGF0YSxkZWxldGUgZi5kYXRhKSxuPWYudXJsLCExPT09Zi5jYWNoZSkpe3ZhciBUPWkubm93KCksTj1mLnVybC5yZXBsYWNlKEhlLCIkMV89IitUKTtmLnVybD1OKyhOPT09Zi51cmw/KGplLnRlc3QoZi51cmwpPyImIjoiPyIpKyJfPSIrVDoiIil9Zm9yKGMgaW4oZi5kYXRhJiZmLmhhc0NvbnRlbnQmJiExIT09Zi5jb250ZW50VHlwZXx8dC5jb250ZW50VHlwZSkmJnguc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIixmLmNvbnRlbnRUeXBlKSxmLmlmTW9kaWZpZWQmJihuPW58fGYudXJsLGkubGFzdE1vZGlmaWVkW25dJiZ4LnNldFJlcXVlc3RIZWFkZXIoIklmLU1vZGlmaWVkLVNpbmNlIixpLmxhc3RNb2RpZmllZFtuXSksaS5ldGFnW25dJiZ4LnNldFJlcXVlc3RIZWFkZXIoIklmLU5vbmUtTWF0Y2giLGkuZXRhZ1tuXSkpLHguc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IixmLmRhdGFUeXBlc1swXSYmZi5hY2NlcHRzW2YuZGF0YVR5cGVzWzBdXT9mLmFjY2VwdHNbZi5kYXRhVHlwZXNbMF1dKygiKiIhPT1mLmRhdGFUeXBlc1swXT8iLCAiK0llKyI7IHE9MC4wMSI6IiIpOmYuYWNjZXB0c1siKiJdKSxmLmhlYWRlcnMpeC5zZXRSZXF1ZXN0SGVhZGVyKGMsZi5oZWFkZXJzW2NdKTtpZihmLmJlZm9yZVNlbmQmJighMT09PWYuYmVmb3JlU2VuZC5jYWxsKGQseCxmKXx8Mj09PWIpKXJldHVybiB4LmFib3J0KCksITE7Zm9yKGMgaW57c3VjY2VzczoxLGVycm9yOjEsY29tcGxldGU6MX0peFtjXShmW2NdKTtpZihhPVJlKFdlLGYsdCx4KSl7eC5yZWFkeVN0YXRlPTEsdSYmcC50cmlnZ2VyKCJhamF4U2VuZCIsW3gsZl0pLGYuYXN5bmMmJmYudGltZW91dD4wJiYocz1zZXRUaW1lb3V0KChmdW5jdGlvbigpe3guYWJvcnQoInRpbWVvdXQiKX0pLGYudGltZW91dCkpO3RyeXtiPTEsYS5zZW5kKHYsdyl9Y2F0Y2goZSl7aWYoIShiPDIpKXRocm93IGU7dygtMSxlKX19ZWxzZSB3KC0xLCJObyBUcmFuc3BvcnQiKTtyZXR1cm4geH0scGFyYW06ZnVuY3Rpb24oZSx0KXt2YXIgbj1bXSxyPWZ1bmN0aW9uKGUsdCl7dD1pLmlzRnVuY3Rpb24odCk/dCgpOnQsbltuLmxlbmd0aF09ZW5jb2RlVVJJQ29tcG9uZW50KGUpKyI9IitlbmNvZGVVUklDb21wb25lbnQodCl9O2lmKHZvaWQgMD09PXQmJih0PWkuYWpheFNldHRpbmdzLnRyYWRpdGlvbmFsKSxpLmlzQXJyYXkoZSl8fGUuanF1ZXJ5JiYhaS5pc1BsYWluT2JqZWN0KGUpKWkuZWFjaChlLChmdW5jdGlvbigpe3IodGhpcy5uYW1lLHRoaXMudmFsdWUpfSkpO2Vsc2UgZm9yKHZhciBvIGluIGUpemUobyxlW29dLHQscik7cmV0dXJuIG4uam9pbigiJiIpLnJlcGxhY2UoQ2UsIisiKX19KSxpLmV4dGVuZCh7YWN0aXZlOjAsbGFzdE1vZGlmaWVkOnt9LGV0YWc6e319KTt2YXIgVmUsVWUsWWU9ISF3aW5kb3cuQWN0aXZlWE9iamVjdCYmZnVuY3Rpb24oKXtmb3IodmFyIGUgaW4gVmUpVmVbZV0oMCwxKX0sSmU9MAo7ZnVuY3Rpb24gR2UoKXt0cnl7cmV0dXJuIG5ldyB3aW5kb3cuWE1MSHR0cFJlcXVlc3R9Y2F0Y2goZSl7fX1pLmFqYXhTZXR0aW5ncy54aHI9d2luZG93LkFjdGl2ZVhPYmplY3Q/ZnVuY3Rpb24oKXtyZXR1cm4hdGhpcy5pc0xvY2FsJiZHZSgpfHxmdW5jdGlvbigpe3RyeXtyZXR1cm4gbmV3IHdpbmRvdy5BY3RpdmVYT2JqZWN0KCJNaWNyb3NvZnQuWE1MSFRUUCIpfWNhdGNoKGUpe319KCl9OkdlLFVlPWkuYWpheFNldHRpbmdzLnhocigpLGkuZXh0ZW5kKGkuc3VwcG9ydCx7YWpheDohIVVlLGNvcnM6ISFVZSYmIndpdGhDcmVkZW50aWFscyJpbiBVZX0pLGkuc3VwcG9ydC5hamF4JiZpLmFqYXhUcmFuc3BvcnQoKGZ1bmN0aW9uKGUpe3ZhciB0O2lmKCFlLmNyb3NzRG9tYWlufHxpLnN1cHBvcnQuY29ycylyZXR1cm57c2VuZDpmdW5jdGlvbihuLHIpe3ZhciBvLGEscz1lLnhocigpO2lmKGUudXNlcm5hbWU/cy5vcGVuKGUudHlwZSxlLnVybCxlLmFzeW5jLGUudXNlcm5hbWUsZS5wYXNzd29yZCk6cy5vcGVuKGUudHlwZSxlLnVybCxlLmFzeW5jKSxlLnhockZpZWxkcylmb3IoYSBpbiBlLnhockZpZWxkcylzW2FdPWUueGhyRmllbGRzW2FdO2UubWltZVR5cGUmJnMub3ZlcnJpZGVNaW1lVHlwZSYmcy5vdmVycmlkZU1pbWVUeXBlKGUubWltZVR5cGUpLGUuY3Jvc3NEb21haW58fG5bIlgtUmVxdWVzdGVkLVdpdGgiXXx8KG5bIlgtUmVxdWVzdGVkLVdpdGgiXT0iWE1MSHR0cFJlcXVlc3QiKTt0cnl7Zm9yKGEgaW4gbilzLnNldFJlcXVlc3RIZWFkZXIoYSxuW2FdKX1jYXRjaChlKXt9cy5zZW5kKGUuaGFzQ29udGVudCYmZS5kYXRhfHxudWxsKSx0PWZ1bmN0aW9uKG4sYSl7dmFyIGwsdSxjLGYsZDt0cnl7aWYodCYmKGF8fDQ9PT1zLnJlYWR5U3RhdGUpKWlmKHQ9dm9pZCAwLG8mJihzLm9ucmVhZHlzdGF0ZWNoYW5nZT1pLm5vb3AsWWUmJmRlbGV0ZSBWZVtvXSksYSk0IT09cy5yZWFkeVN0YXRlJiZzLmFib3J0KCk7ZWxzZXtsPXMuc3RhdHVzLGM9cy5nZXRBbGxSZXNwb25zZUhlYWRlcnMoKSxmPXt9LChkPXMucmVzcG9uc2VYTUwpJiZkLmRvY3VtZW50RWxlbWVudCYmKGYueG1sPWQpO3RyeXtmLnRleHQ9cy5yZXNwb25zZVRleHR9Y2F0Y2gobil7fXRyeXt1PXMuc3RhdHVzVGV4dH1jYXRjaChlKXt1PSIifWx8fCFlLmlzTG9jYWx8fGUuY3Jvc3NEb21haW4/MTIyMz09PWwmJihsPTIwNCk6bD1mLnRleHQ/MjAwOjQwNH19Y2F0Y2goZSl7YXx8cigtMSxlKX1mJiZyKGwsdSxmLGMpfSxlLmFzeW5jJiY0IT09cy5yZWFkeVN0YXRlPyhvPSsrSmUsWWUmJihWZXx8KFZlPXt9LGkod2luZG93KS51bmxvYWQoWWUpKSxWZVtvXT10KSxzLm9ucmVhZHlzdGF0ZWNoYW5nZT10KTp0KCl9LGFib3J0OmZ1bmN0aW9uKCl7dCYmdCgwLDEpfX19KSk7dmFyIEtlLFFlLFplLGV0LHR0PXt9LG50PS9eKD86dG9nZ2xlfHNob3d8aGlkZSkkLyxydD0vXihbK1wtXT0pPyhbXGQrLlwtXSspKFthLXolXSopJC9pLGl0PVtbImhlaWdodCIsIm1hcmdpblRvcCIsIm1hcmdpbkJvdHRvbSIsInBhZGRpbmdUb3AiLCJwYWRkaW5nQm90dG9tIl0sWyJ3aWR0aCIsIm1hcmdpbkxlZnQiLCJtYXJnaW5SaWdodCIsInBhZGRpbmdMZWZ0IiwicGFkZGluZ1JpZ2h0Il0sWyJvcGFjaXR5Il1dO2Z1bmN0aW9uIG90KCl7cmV0dXJuIHNldFRpbWVvdXQoYXQsMCksZXQ9aS5ub3coKX1mdW5jdGlvbiBhdCgpe2V0PXZvaWQgMH1mdW5jdGlvbiBzdChlLHQpe3ZhciBuPXt9O3JldHVybiBpLmVhY2goaXQuY29uY2F0LmFwcGx5KFtdLGl0LnNsaWNlKDAsdCkpLChmdW5jdGlvbigpe25bdGhpc109ZX0pKSxufWZ1bmN0aW9uIGx0KGUpe2lmKCF0dFtlXSl7dmFyIG49dC5ib2R5LHI9aSgiPCIrZSsiPiIpLmFwcGVuZFRvKG4pLG89ci5jc3MoImRpc3BsYXkiKTtyLnJlbW92ZSgpLCJub25lIiE9PW8mJiIiIT09b3x8KEtlfHwoKEtlPXQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIikpLmZyYW1lQm9yZGVyPUtlLndpZHRoPUtlLmhlaWdodD0wKSxuLmFwcGVuZENoaWxkKEtlKSxRZSYmS2UuY3JlYXRlRWxlbWVudHx8KChRZT0oS2UuY29udGVudFdpbmRvd3x8S2UuY29udGVudERvY3VtZW50KS5kb2N1bWVudCkud3JpdGUoKGkuc3VwcG9ydC5ib3hNb2RlbD8iPCFkb2N0eXBlIGh0bWw+IjoiIikrIjxodG1sPjxib2R5PiIpLFFlLmNsb3NlKCkpLHI9UWUuY3JlYXRlRWxlbWVudChlKSxRZS5ib2R5LmFwcGVuZENoaWxkKHIpLG89aS5jc3MociwiZGlzcGxheSIpLG4ucmVtb3ZlQ2hpbGQoS2UpKSx0dFtlXT1vfXJldHVybiB0dFtlXX1pLmZuLmV4dGVuZCh7c2hvdzpmdW5jdGlvbihlLHQsbil7dmFyIHIsbztpZihlfHwwPT09ZSlyZXR1cm4gdGhpcy5hbmltYXRlKHN0KCJzaG93IiwzKSxlLHQsbik7Zm9yKHZhciBhPTAscz10aGlzLmxlbmd0aDthPHM7YSsrKShyPXRoaXNbYV0pLnN0eWxlJiYobz1yLnN0eWxlLmRpc3BsYXksaS5fZGF0YShyLCJvbGRkaXNwbGF5Iil8fCJub25lIiE9PW98fChvPXIuc3R5bGUuZGlzcGxheT0iIiksKCIiPT09byYmIm5vbmUiPT09aS5jc3MociwiZGlzcGxheSIpfHwhaS5jb250YWlucyhyLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LHIpKSYmaS5fZGF0YShyLCJvbGRkaXNwbGF5IixsdChyLm5vZGVOYW1lKSkpO2ZvcihhPTA7YTxzO2ErKykocj10aGlzW2FdKS5zdHlsZSYmKCIiIT09KG89ci5zdHlsZS5kaXNwbGF5KSYmIm5vbmUiIT09b3x8KHIuc3R5bGUuZGlzcGxheT1pLl9kYXRhKHIsIm9sZGRpc3BsYXkiKXx8IiIpKTtyZXR1cm4gdGhpc30saGlkZTpmdW5jdGlvbihlLHQsbil7aWYoZXx8MD09PWUpcmV0dXJuIHRoaXMuYW5pbWF0ZShzdCgiaGlkZSIsMyksZSx0LG4pO2Zvcih2YXIgcixvLGE9MCxzPXRoaXMubGVuZ3RoO2E8czthKyspKHI9dGhpc1thXSkuc3R5bGUmJigibm9uZSI9PT0obz1pLmNzcyhyLCJkaXNwbGF5IikpfHxpLl9kYXRhKHIsIm9sZGRpc3BsYXkiKXx8aS5fZGF0YShyLCJvbGRkaXNwbGF5IixvKSk7Zm9yKGE9MDthPHM7YSsrKXRoaXNbYV0uc3R5bGUmJih0aGlzW2FdLnN0eWxlLmRpc3BsYXk9Im5vbmUiKTtyZXR1cm4gdGhpc30sX3RvZ2dsZTppLmZuLnRvZ2dsZSwKdG9nZ2xlOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj0iYm9vbGVhbiI9PXR5cGVvZiBlO3JldHVybiBpLmlzRnVuY3Rpb24oZSkmJmkuaXNGdW5jdGlvbih0KT90aGlzLl90b2dnbGUuYXBwbHkodGhpcyxhcmd1bWVudHMpOm51bGw9PWV8fHI/dGhpcy5lYWNoKChmdW5jdGlvbigpe3ZhciB0PXI/ZTppKHRoaXMpLmlzKCI6aGlkZGVuIik7aSh0aGlzKVt0PyJzaG93IjoiaGlkZSJdKCl9KSk6dGhpcy5hbmltYXRlKHN0KCJ0b2dnbGUiLDMpLGUsdCxuKSx0aGlzfSxmYWRlVG86ZnVuY3Rpb24oZSx0LG4scil7cmV0dXJuIHRoaXMuZmlsdGVyKCI6aGlkZGVuIikuY3NzKCJvcGFjaXR5IiwwKS5zaG93KCkuZW5kKCkuYW5pbWF0ZSh7b3BhY2l0eTp0fSxlLG4scil9LGFuaW1hdGU6ZnVuY3Rpb24oZSx0LG4scil7dmFyIG89aS5zcGVlZCh0LG4scik7aWYoaS5pc0VtcHR5T2JqZWN0KGUpKXJldHVybiB0aGlzLmVhY2goby5jb21wbGV0ZSxbITFdKTtmdW5jdGlvbiBhKCl7ITE9PT1vLnF1ZXVlJiZpLl9tYXJrKHRoaXMpO3ZhciB0LG4scixhLHMsbCx1LGMsZixkLHAsaD1pLmV4dGVuZCh7fSxvKSxtPTE9PT10aGlzLm5vZGVUeXBlLGc9bSYmaSh0aGlzKS5pcygiOmhpZGRlbiIpO2ZvcihyIGluIGguYW5pbWF0ZWRQcm9wZXJ0aWVzPXt9LGUpaWYociE9PSh0PWkuY2FtZWxDYXNlKHIpKSYmKGVbdF09ZVtyXSxkZWxldGUgZVtyXSksKHM9aS5jc3NIb29rc1t0XSkmJiJleHBhbmQiaW4gcylmb3IociBpbiBsPXMuZXhwYW5kKGVbdF0pLGRlbGV0ZSBlW3RdLGwpciBpbiBlfHwoZVtyXT1sW3JdKTtmb3IodCBpbiBlKXtpZihuPWVbdF0saS5pc0FycmF5KG4pPyhoLmFuaW1hdGVkUHJvcGVydGllc1t0XT1uWzFdLG49ZVt0XT1uWzBdKTpoLmFuaW1hdGVkUHJvcGVydGllc1t0XT1oLnNwZWNpYWxFYXNpbmcmJmguc3BlY2lhbEVhc2luZ1t0XXx8aC5lYXNpbmd8fCJzd2luZyIsImhpZGUiPT09biYmZ3x8InNob3ciPT09biYmIWcpcmV0dXJuIGguY29tcGxldGUuY2FsbCh0aGlzKTshbXx8ImhlaWdodCIhPT10JiYid2lkdGgiIT09dHx8KGgub3ZlcmZsb3c9W3RoaXMuc3R5bGUub3ZlcmZsb3csdGhpcy5zdHlsZS5vdmVyZmxvd1gsdGhpcy5zdHlsZS5vdmVyZmxvd1ldLCJpbmxpbmUiPT09aS5jc3ModGhpcywiZGlzcGxheSIpJiYibm9uZSI9PT1pLmNzcyh0aGlzLCJmbG9hdCIpJiYoaS5zdXBwb3J0LmlubGluZUJsb2NrTmVlZHNMYXlvdXQmJiJpbmxpbmUiIT09bHQodGhpcy5ub2RlTmFtZSk/dGhpcy5zdHlsZS56b29tPTE6dGhpcy5zdHlsZS5kaXNwbGF5PSJpbmxpbmUtYmxvY2siKSl9Zm9yKHIgaW4gbnVsbCE9aC5vdmVyZmxvdyYmKHRoaXMuc3R5bGUub3ZlcmZsb3c9ImhpZGRlbiIpLGUpYT1uZXcgaS5meCh0aGlzLGgsciksbj1lW3JdLG50LnRlc3Qobik/KHA9aS5fZGF0YSh0aGlzLCJ0b2dnbGUiK3IpfHwoInRvZ2dsZSI9PT1uP2c/InNob3ciOiJoaWRlIjowKSk/KGkuX2RhdGEodGhpcywidG9nZ2xlIityLCJzaG93Ij09PXA/ImhpZGUiOiJzaG93IiksYVtwXSgpKTphW25dKCk6KHU9cnQuZXhlYyhuKSxjPWEuY3VyKCksdT8oZj1wYXJzZUZsb2F0KHVbMl0pLCJweCIhPT0oZD11WzNdfHwoaS5jc3NOdW1iZXJbcl0/IiI6InB4IikpJiYoaS5zdHlsZSh0aGlzLHIsKGZ8fDEpK2QpLGM9KGZ8fDEpL2EuY3VyKCkqYyxpLnN0eWxlKHRoaXMscixjK2QpKSx1WzFdJiYoZj0oIi09Ij09PXVbMV0/LTE6MSkqZitjKSxhLmN1c3RvbShjLGYsZCkpOmEuY3VzdG9tKGMsbiwiIikpO3JldHVybiEwfXJldHVybiBlPWkuZXh0ZW5kKHt9LGUpLCExPT09by5xdWV1ZT90aGlzLmVhY2goYSk6dGhpcy5xdWV1ZShvLnF1ZXVlLGEpfSxzdG9wOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4ic3RyaW5nIiE9dHlwZW9mIGUmJihuPXQsdD1lLGU9dm9pZCAwKSx0JiYhMSE9PWUmJnRoaXMucXVldWUoZXx8ImZ4IixbXSksdGhpcy5lYWNoKChmdW5jdGlvbigpe3ZhciB0LHI9ITEsbz1pLnRpbWVycyxhPWkuX2RhdGEodGhpcyk7ZnVuY3Rpb24gcyhlLHQscil7dmFyIG89dFtyXTtpLnJlbW92ZURhdGEoZSxyLCEwKSxvLnN0b3Aobil9aWYobnx8aS5fdW5tYXJrKCEwLHRoaXMpLG51bGw9PWUpZm9yKHQgaW4gYSlhW3RdJiZhW3RdLnN0b3AmJnQuaW5kZXhPZigiLnJ1biIpPT09dC5sZW5ndGgtNCYmcyh0aGlzLGEsdCk7ZWxzZSBhW3Q9ZSsiLnJ1biJdJiZhW3RdLnN0b3AmJnModGhpcyxhLHQpO2Zvcih0PW8ubGVuZ3RoO3QtLTspb1t0XS5lbGVtIT09dGhpc3x8bnVsbCE9ZSYmb1t0XS5xdWV1ZSE9PWV8fChuP29bdF0oITApOm9bdF0uc2F2ZVN0YXRlKCkscj0hMCxvLnNwbGljZSh0LDEpKTtuJiZyfHxpLmRlcXVldWUodGhpcyxlKX0pKX19KSxpLmVhY2goe3NsaWRlRG93bjpzdCgic2hvdyIsMSksc2xpZGVVcDpzdCgiaGlkZSIsMSksc2xpZGVUb2dnbGU6c3QoInRvZ2dsZSIsMSksZmFkZUluOntvcGFjaXR5OiJzaG93In0sZmFkZU91dDp7b3BhY2l0eToiaGlkZSJ9LGZhZGVUb2dnbGU6e29wYWNpdHk6InRvZ2dsZSJ9fSwoZnVuY3Rpb24oZSx0KXtpLmZuW2VdPWZ1bmN0aW9uKGUsbixyKXtyZXR1cm4gdGhpcy5hbmltYXRlKHQsZSxuLHIpfX0pKSxpLmV4dGVuZCh7c3BlZWQ6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPWUmJiJvYmplY3QiPT10eXBlb2YgZT9pLmV4dGVuZCh7fSxlKTp7Y29tcGxldGU6bnx8IW4mJnR8fGkuaXNGdW5jdGlvbihlKSYmZSxkdXJhdGlvbjplLGVhc2luZzpuJiZ0fHx0JiYhaS5pc0Z1bmN0aW9uKHQpJiZ0fTtyZXR1cm4gci5kdXJhdGlvbj1pLmZ4Lm9mZj8wOiJudW1iZXIiPT10eXBlb2Ygci5kdXJhdGlvbj9yLmR1cmF0aW9uOnIuZHVyYXRpb24gaW4gaS5meC5zcGVlZHM/aS5meC5zcGVlZHNbci5kdXJhdGlvbl06aS5meC5zcGVlZHMuX2RlZmF1bHQsbnVsbCE9ci5xdWV1ZSYmITAhPT1yLnF1ZXVlfHwoci5xdWV1ZT0iZngiKSxyLm9sZD1yLmNvbXBsZXRlLHIuY29tcGxldGU9ZnVuY3Rpb24oZSl7aS5pc0Z1bmN0aW9uKHIub2xkKSYmci5vbGQuY2FsbCh0aGlzKSxyLnF1ZXVlP2kuZGVxdWV1ZSh0aGlzLHIucXVldWUpOiExIT09ZSYmaS5fdW5tYXJrKHRoaXMpfSxyfSxlYXNpbmc6ewpsaW5lYXI6ZnVuY3Rpb24oZSl7cmV0dXJuIGV9LHN3aW5nOmZ1bmN0aW9uKGUpe3JldHVybi1NYXRoLmNvcyhlKk1hdGguUEkpLzIrLjV9fSx0aW1lcnM6W10sZng6ZnVuY3Rpb24oZSx0LG4pe3RoaXMub3B0aW9ucz10LHRoaXMuZWxlbT1lLHRoaXMucHJvcD1uLHQub3JpZz10Lm9yaWd8fHt9fX0pLGkuZngucHJvdG90eXBlPXt1cGRhdGU6ZnVuY3Rpb24oKXt0aGlzLm9wdGlvbnMuc3RlcCYmdGhpcy5vcHRpb25zLnN0ZXAuY2FsbCh0aGlzLmVsZW0sdGhpcy5ub3csdGhpcyksKGkuZnguc3RlcFt0aGlzLnByb3BdfHxpLmZ4LnN0ZXAuX2RlZmF1bHQpKHRoaXMpfSxjdXI6ZnVuY3Rpb24oKXtpZihudWxsIT10aGlzLmVsZW1bdGhpcy5wcm9wXSYmKCF0aGlzLmVsZW0uc3R5bGV8fG51bGw9PXRoaXMuZWxlbS5zdHlsZVt0aGlzLnByb3BdKSlyZXR1cm4gdGhpcy5lbGVtW3RoaXMucHJvcF07dmFyIGUsdD1pLmNzcyh0aGlzLmVsZW0sdGhpcy5wcm9wKTtyZXR1cm4gaXNOYU4oZT1wYXJzZUZsb2F0KHQpKT90JiYiYXV0byIhPT10P3Q6MDplfSxjdXN0b206ZnVuY3Rpb24oZSx0LG4pe3ZhciByPXRoaXMsbz1pLmZ4O2Z1bmN0aW9uIGEoZSl7cmV0dXJuIHIuc3RlcChlKX10aGlzLnN0YXJ0VGltZT1ldHx8b3QoKSx0aGlzLmVuZD10LHRoaXMubm93PXRoaXMuc3RhcnQ9ZSx0aGlzLnBvcz10aGlzLnN0YXRlPTAsdGhpcy51bml0PW58fHRoaXMudW5pdHx8KGkuY3NzTnVtYmVyW3RoaXMucHJvcF0/IiI6InB4IiksYS5xdWV1ZT10aGlzLm9wdGlvbnMucXVldWUsYS5lbGVtPXRoaXMuZWxlbSxhLnNhdmVTdGF0ZT1mdW5jdGlvbigpe3ZvaWQgMD09PWkuX2RhdGEoci5lbGVtLCJmeHNob3ciK3IucHJvcCkmJihyLm9wdGlvbnMuaGlkZT9pLl9kYXRhKHIuZWxlbSwiZnhzaG93IityLnByb3Asci5zdGFydCk6ci5vcHRpb25zLnNob3cmJmkuX2RhdGEoci5lbGVtLCJmeHNob3ciK3IucHJvcCxyLmVuZCkpfSxhKCkmJmkudGltZXJzLnB1c2goYSkmJiFaZSYmKFplPXNldEludGVydmFsKG8udGljayxvLmludGVydmFsKSl9LHNob3c6ZnVuY3Rpb24oKXt2YXIgZT1pLl9kYXRhKHRoaXMuZWxlbSwiZnhzaG93Iit0aGlzLnByb3ApO3RoaXMub3B0aW9ucy5vcmlnW3RoaXMucHJvcF09ZXx8aS5zdHlsZSh0aGlzLmVsZW0sdGhpcy5wcm9wKSx0aGlzLm9wdGlvbnMuc2hvdz0hMCx2b2lkIDAhPT1lP3RoaXMuY3VzdG9tKHRoaXMuY3VyKCksZSk6dGhpcy5jdXN0b20oIndpZHRoIj09PXRoaXMucHJvcHx8ImhlaWdodCI9PT10aGlzLnByb3A/MTowLHRoaXMuY3VyKCkpLGkodGhpcy5lbGVtKS5zaG93KCl9LGhpZGU6ZnVuY3Rpb24oKXt0aGlzLm9wdGlvbnMub3JpZ1t0aGlzLnByb3BdPWkuX2RhdGEodGhpcy5lbGVtLCJmeHNob3ciK3RoaXMucHJvcCl8fGkuc3R5bGUodGhpcy5lbGVtLHRoaXMucHJvcCksdGhpcy5vcHRpb25zLmhpZGU9ITAsdGhpcy5jdXN0b20odGhpcy5jdXIoKSwwKX0sc3RlcDpmdW5jdGlvbihlKXt2YXIgdCxuLHIsbz1ldHx8b3QoKSxhPSEwLHM9dGhpcy5lbGVtLGw9dGhpcy5vcHRpb25zO2lmKGV8fG8+PWwuZHVyYXRpb24rdGhpcy5zdGFydFRpbWUpe2Zvcih0IGluIHRoaXMubm93PXRoaXMuZW5kLHRoaXMucG9zPXRoaXMuc3RhdGU9MSx0aGlzLnVwZGF0ZSgpLGwuYW5pbWF0ZWRQcm9wZXJ0aWVzW3RoaXMucHJvcF09ITAsbC5hbmltYXRlZFByb3BlcnRpZXMpITAhPT1sLmFuaW1hdGVkUHJvcGVydGllc1t0XSYmKGE9ITEpO2lmKGEpe2lmKG51bGw9PWwub3ZlcmZsb3d8fGkuc3VwcG9ydC5zaHJpbmtXcmFwQmxvY2tzfHxpLmVhY2goWyIiLCJYIiwiWSJdLChmdW5jdGlvbihlLHQpe3Muc3R5bGVbIm92ZXJmbG93Iit0XT1sLm92ZXJmbG93W2VdfSkpLGwuaGlkZSYmaShzKS5oaWRlKCksbC5oaWRlfHxsLnNob3cpZm9yKHQgaW4gbC5hbmltYXRlZFByb3BlcnRpZXMpaS5zdHlsZShzLHQsbC5vcmlnW3RdKSxpLnJlbW92ZURhdGEocywiZnhzaG93Iit0LCEwKSxpLnJlbW92ZURhdGEocywidG9nZ2xlIit0LCEwKTsocj1sLmNvbXBsZXRlKSYmKGwuY29tcGxldGU9ITEsci5jYWxsKHMpKX1yZXR1cm4hMX1yZXR1cm4gbC5kdXJhdGlvbj09MS8wP3RoaXMubm93PW86KG49by10aGlzLnN0YXJ0VGltZSx0aGlzLnN0YXRlPW4vbC5kdXJhdGlvbix0aGlzLnBvcz1pLmVhc2luZ1tsLmFuaW1hdGVkUHJvcGVydGllc1t0aGlzLnByb3BdXSh0aGlzLnN0YXRlLG4sMCwxLGwuZHVyYXRpb24pLHRoaXMubm93PXRoaXMuc3RhcnQrKHRoaXMuZW5kLXRoaXMuc3RhcnQpKnRoaXMucG9zKSx0aGlzLnVwZGF0ZSgpLCEwfX0saS5leHRlbmQoaS5meCx7dGljazpmdW5jdGlvbigpe2Zvcih2YXIgZSx0PWkudGltZXJzLG49MDtuPHQubGVuZ3RoO24rKykoZT10W25dKSgpfHx0W25dIT09ZXx8dC5zcGxpY2Uobi0tLDEpO3QubGVuZ3RofHxpLmZ4LnN0b3AoKX0saW50ZXJ2YWw6MTMsc3RvcDpmdW5jdGlvbigpe2NsZWFySW50ZXJ2YWwoWmUpLFplPW51bGx9LHNwZWVkczp7c2xvdzo2MDAsZmFzdDoyMDAsX2RlZmF1bHQ6NDAwfSxzdGVwOntvcGFjaXR5OmZ1bmN0aW9uKGUpe2kuc3R5bGUoZS5lbGVtLCJvcGFjaXR5IixlLm5vdyl9LF9kZWZhdWx0OmZ1bmN0aW9uKGUpe2UuZWxlbS5zdHlsZSYmbnVsbCE9ZS5lbGVtLnN0eWxlW2UucHJvcF0/ZS5lbGVtLnN0eWxlW2UucHJvcF09ZS5ub3crZS51bml0OmUuZWxlbVtlLnByb3BdPWUubm93fX19KSxpLmVhY2goaXQuY29uY2F0LmFwcGx5KFtdLGl0KSwoZnVuY3Rpb24oZSx0KXt0LmluZGV4T2YoIm1hcmdpbiIpJiYoaS5meC5zdGVwW3RdPWZ1bmN0aW9uKGUpe2kuc3R5bGUoZS5lbGVtLHQsTWF0aC5tYXgoMCxlLm5vdykrZS51bml0KX0pfSkpLGkuZXhwciYmaS5leHByLmZpbHRlcnMmJihpLmV4cHIuZmlsdGVycy5hbmltYXRlZD1mdW5jdGlvbihlKXtyZXR1cm4gaS5ncmVwKGkudGltZXJzLChmdW5jdGlvbih0KXtyZXR1cm4gZT09PXQuZWxlbX0pKS5sZW5ndGh9KTt2YXIgdXQsY3Q9L150KD86YWJsZXxkfGgpJC9pLGZ0PS9eKD86Ym9keXxodG1sKSQvaTtmdW5jdGlvbiBkdChlKXsKcmV0dXJuIGkuaXNXaW5kb3coZSk/ZTo5PT09ZS5ub2RlVHlwZSYmKGUuZGVmYXVsdFZpZXd8fGUucGFyZW50V2luZG93KX11dD0iZ2V0Qm91bmRpbmdDbGllbnRSZWN0ImluIHQuZG9jdW1lbnRFbGVtZW50P2Z1bmN0aW9uKGUsdCxuLHIpe3RyeXtyPWUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCl9Y2F0Y2goZSl7fWlmKCFyfHwhaS5jb250YWlucyhuLGUpKXJldHVybiByP3t0b3A6ci50b3AsbGVmdDpyLmxlZnR9Ont0b3A6MCxsZWZ0OjB9O3ZhciBvPXQuYm9keSxhPWR0KHQpLHM9bi5jbGllbnRUb3B8fG8uY2xpZW50VG9wfHwwLGw9bi5jbGllbnRMZWZ0fHxvLmNsaWVudExlZnR8fDAsdT1hLnBhZ2VZT2Zmc2V0fHxpLnN1cHBvcnQuYm94TW9kZWwmJm4uc2Nyb2xsVG9wfHxvLnNjcm9sbFRvcCxjPWEucGFnZVhPZmZzZXR8fGkuc3VwcG9ydC5ib3hNb2RlbCYmbi5zY3JvbGxMZWZ0fHxvLnNjcm9sbExlZnQ7cmV0dXJue3RvcDpyLnRvcCt1LXMsbGVmdDpyLmxlZnQrYy1sfX06ZnVuY3Rpb24oZSx0LG4pe2Zvcih2YXIgcixvPWUub2Zmc2V0UGFyZW50LGE9dC5ib2R5LHM9dC5kZWZhdWx0VmlldyxsPXM/cy5nZXRDb21wdXRlZFN0eWxlKGUsbnVsbCk6ZS5jdXJyZW50U3R5bGUsdT1lLm9mZnNldFRvcCxjPWUub2Zmc2V0TGVmdDsoZT1lLnBhcmVudE5vZGUpJiZlIT09YSYmZSE9PW4mJighaS5zdXBwb3J0LmZpeGVkUG9zaXRpb258fCJmaXhlZCIhPT1sLnBvc2l0aW9uKTspcj1zP3MuZ2V0Q29tcHV0ZWRTdHlsZShlLG51bGwpOmUuY3VycmVudFN0eWxlLHUtPWUuc2Nyb2xsVG9wLGMtPWUuc2Nyb2xsTGVmdCxlPT09byYmKHUrPWUub2Zmc2V0VG9wLGMrPWUub2Zmc2V0TGVmdCwhaS5zdXBwb3J0LmRvZXNOb3RBZGRCb3JkZXJ8fGkuc3VwcG9ydC5kb2VzQWRkQm9yZGVyRm9yVGFibGVBbmRDZWxscyYmY3QudGVzdChlLm5vZGVOYW1lKXx8KHUrPXBhcnNlRmxvYXQoci5ib3JkZXJUb3BXaWR0aCl8fDAsYys9cGFyc2VGbG9hdChyLmJvcmRlckxlZnRXaWR0aCl8fDApLG89ZS5vZmZzZXRQYXJlbnQpLGkuc3VwcG9ydC5zdWJ0cmFjdHNCb3JkZXJGb3JPdmVyZmxvd05vdFZpc2libGUmJiJ2aXNpYmxlIiE9PXIub3ZlcmZsb3cmJih1Kz1wYXJzZUZsb2F0KHIuYm9yZGVyVG9wV2lkdGgpfHwwLGMrPXBhcnNlRmxvYXQoci5ib3JkZXJMZWZ0V2lkdGgpfHwwKSxsPXI7cmV0dXJuInJlbGF0aXZlIiE9PWwucG9zaXRpb24mJiJzdGF0aWMiIT09bC5wb3NpdGlvbnx8KHUrPWEub2Zmc2V0VG9wLGMrPWEub2Zmc2V0TGVmdCksaS5zdXBwb3J0LmZpeGVkUG9zaXRpb24mJiJmaXhlZCI9PT1sLnBvc2l0aW9uJiYodSs9TWF0aC5tYXgobi5zY3JvbGxUb3AsYS5zY3JvbGxUb3ApLGMrPU1hdGgubWF4KG4uc2Nyb2xsTGVmdCxhLnNjcm9sbExlZnQpKSx7dG9wOnUsbGVmdDpjfX0saS5mbi5vZmZzZXQ9ZnVuY3Rpb24oZSl7aWYoYXJndW1lbnRzLmxlbmd0aClyZXR1cm4gdm9pZCAwPT09ZT90aGlzOnRoaXMuZWFjaCgoZnVuY3Rpb24odCl7aS5vZmZzZXQuc2V0T2Zmc2V0KHRoaXMsZSx0KX0pKTt2YXIgdD10aGlzWzBdLG49dCYmdC5vd25lckRvY3VtZW50O3JldHVybiBuP3Q9PT1uLmJvZHk/aS5vZmZzZXQuYm9keU9mZnNldCh0KTp1dCh0LG4sbi5kb2N1bWVudEVsZW1lbnQpOm51bGx9LGkub2Zmc2V0PXtib2R5T2Zmc2V0OmZ1bmN0aW9uKGUpe3ZhciB0PWUub2Zmc2V0VG9wLG49ZS5vZmZzZXRMZWZ0O3JldHVybiBpLnN1cHBvcnQuZG9lc05vdEluY2x1ZGVNYXJnaW5JbkJvZHlPZmZzZXQmJih0Kz1wYXJzZUZsb2F0KGkuY3NzKGUsIm1hcmdpblRvcCIpKXx8MCxuKz1wYXJzZUZsb2F0KGkuY3NzKGUsIm1hcmdpbkxlZnQiKSl8fDApLHt0b3A6dCxsZWZ0Om59fSxzZXRPZmZzZXQ6ZnVuY3Rpb24oZSx0LG4pe3ZhciByPWkuY3NzKGUsInBvc2l0aW9uIik7InN0YXRpYyI9PT1yJiYoZS5zdHlsZS5wb3NpdGlvbj0icmVsYXRpdmUiKTt2YXIgbyxhLHM9aShlKSxsPXMub2Zmc2V0KCksdT1pLmNzcyhlLCJ0b3AiKSxjPWkuY3NzKGUsImxlZnQiKSxmPXt9LGQ9e307KCJhYnNvbHV0ZSI9PT1yfHwiZml4ZWQiPT09cikmJmkuaW5BcnJheSgiYXV0byIsW3UsY10pPi0xPyhvPShkPXMucG9zaXRpb24oKSkudG9wLGE9ZC5sZWZ0KToobz1wYXJzZUZsb2F0KHUpfHwwLGE9cGFyc2VGbG9hdChjKXx8MCksaS5pc0Z1bmN0aW9uKHQpJiYodD10LmNhbGwoZSxuLGwpKSxudWxsIT10LnRvcCYmKGYudG9wPXQudG9wLWwudG9wK28pLG51bGwhPXQubGVmdCYmKGYubGVmdD10LmxlZnQtbC5sZWZ0K2EpLCJ1c2luZyJpbiB0P3QudXNpbmcuY2FsbChlLGYpOnMuY3NzKGYpfX0saS5mbi5leHRlbmQoe3Bvc2l0aW9uOmZ1bmN0aW9uKCl7aWYoIXRoaXNbMF0pcmV0dXJuIG51bGw7dmFyIGU9dGhpc1swXSx0PXRoaXMub2Zmc2V0UGFyZW50KCksbj10aGlzLm9mZnNldCgpLHI9ZnQudGVzdCh0WzBdLm5vZGVOYW1lKT97dG9wOjAsbGVmdDowfTp0Lm9mZnNldCgpO3JldHVybiBuLnRvcC09cGFyc2VGbG9hdChpLmNzcyhlLCJtYXJnaW5Ub3AiKSl8fDAsbi5sZWZ0LT1wYXJzZUZsb2F0KGkuY3NzKGUsIm1hcmdpbkxlZnQiKSl8fDAsci50b3ArPXBhcnNlRmxvYXQoaS5jc3ModFswXSwiYm9yZGVyVG9wV2lkdGgiKSl8fDAsci5sZWZ0Kz1wYXJzZUZsb2F0KGkuY3NzKHRbMF0sImJvcmRlckxlZnRXaWR0aCIpKXx8MCx7dG9wOm4udG9wLXIudG9wLGxlZnQ6bi5sZWZ0LXIubGVmdH19LG9mZnNldFBhcmVudDpmdW5jdGlvbigpe3JldHVybiB0aGlzLm1hcCgoZnVuY3Rpb24oKXtmb3IodmFyIGU9dGhpcy5vZmZzZXRQYXJlbnR8fHQuYm9keTtlJiYhZnQudGVzdChlLm5vZGVOYW1lKSYmInN0YXRpYyI9PT1pLmNzcyhlLCJwb3NpdGlvbiIpOyllPWUub2Zmc2V0UGFyZW50O3JldHVybiBlfSkpfX0pLGkuZWFjaCh7c2Nyb2xsTGVmdDoicGFnZVhPZmZzZXQiLHNjcm9sbFRvcDoicGFnZVlPZmZzZXQifSwoZnVuY3Rpb24oZSx0KXt2YXIgbj0vWS8udGVzdCh0KTtpLmZuW2VdPWZ1bmN0aW9uKHIpe3JldHVybiBpLmFjY2Vzcyh0aGlzLChmdW5jdGlvbihlLHIsbyl7dmFyIGE9ZHQoZSkKO2lmKHZvaWQgMD09PW8pcmV0dXJuIGE/dCBpbiBhP2FbdF06aS5zdXBwb3J0LmJveE1vZGVsJiZhLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudFtyXXx8YS5kb2N1bWVudC5ib2R5W3JdOmVbcl07YT9hLnNjcm9sbFRvKG4/aShhKS5zY3JvbGxMZWZ0KCk6byxuP286aShhKS5zY3JvbGxUb3AoKSk6ZVtyXT1vfSksZSxyLGFyZ3VtZW50cy5sZW5ndGgsbnVsbCl9fSkpLGkuZWFjaCh7SGVpZ2h0OiJoZWlnaHQiLFdpZHRoOiJ3aWR0aCJ9LChmdW5jdGlvbihlLHQpe3ZhciBuPSJjbGllbnQiK2Uscj0ic2Nyb2xsIitlLG89Im9mZnNldCIrZTtpLmZuWyJpbm5lciIrZV09ZnVuY3Rpb24oKXt2YXIgZT10aGlzWzBdO3JldHVybiBlP2Uuc3R5bGU/cGFyc2VGbG9hdChpLmNzcyhlLHQsInBhZGRpbmciKSk6dGhpc1t0XSgpOm51bGx9LGkuZm5bIm91dGVyIitlXT1mdW5jdGlvbihlKXt2YXIgbj10aGlzWzBdO3JldHVybiBuP24uc3R5bGU/cGFyc2VGbG9hdChpLmNzcyhuLHQsZT8ibWFyZ2luIjoiYm9yZGVyIikpOnRoaXNbdF0oKTpudWxsfSxpLmZuW3RdPWZ1bmN0aW9uKGUpe3JldHVybiBpLmFjY2Vzcyh0aGlzLChmdW5jdGlvbihlLHQsYSl7dmFyIHMsbCx1LGM7cmV0dXJuIGkuaXNXaW5kb3coZSk/KGw9KHM9ZS5kb2N1bWVudCkuZG9jdW1lbnRFbGVtZW50W25dLGkuc3VwcG9ydC5ib3hNb2RlbCYmbHx8cy5ib2R5JiZzLmJvZHlbbl18fGwpOjk9PT1lLm5vZGVUeXBlPyhzPWUuZG9jdW1lbnRFbGVtZW50KVtuXT49c1tyXT9zW25dOk1hdGgubWF4KGUuYm9keVtyXSxzW3JdLGUuYm9keVtvXSxzW29dKTp2b2lkIDA9PT1hPyh1PWkuY3NzKGUsdCksYz1wYXJzZUZsb2F0KHUpLGkuaXNOdW1lcmljKGMpP2M6dSk6dm9pZCBpKGUpLmNzcyh0LGEpfSksdCxlLGFyZ3VtZW50cy5sZW5ndGgsbnVsbCl9fSkpLGUuZXhwb3J0cz13aW5kb3cualF1ZXJ5PXdpbmRvdy4kPWl9fV0pOw=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCXMR.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.522Z","timestamp":1785126258522,"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 /crypto/XTVCXMR.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 04:24:18 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: \"c51c9605fe7b8065c504f875cf0a2ba5\"\r\nlast-modified: Mon, 05 Aug 2024 13:38:57 GMT\r\ncdn-cachedat: 08/14/2025 09:12:29\r\nx-amz-id-2: YcmKXN3n4QDdT7C3e/wwqQvnL7JUAmInxJ/DZNpD9u0xlbwpJBVf58Y2/aOEOvkMgzGfHsQSaSs=\r\nx-amz-request-id: 3JF9SWM4DVAQGBWF\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: c51c9605fe7b8065c504f875cf0a2ba5\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: 903f4a26c6a417f403fda07251e78e94\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":324,"size_decoded":1159,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (324), with no line terminators","md5":"c51c9605fe7b8065c504f875cf0a2ba5","sha1":"2672a400329ede701c21886882702bf50b33f0d2","sha256":"ccc018a04983bb2b75e0d53086fb4fc210c92c1897d1908f6019ae0e12603e98","sha512":"dc6fb387acedc7a87ee1c671e375f32412395f8176a38cb1f6c7ecb71d5d2e984fa2f6844122355e540ef3c01c0bc8df41edeaf1c93999c318177e91ea7bd07e","ssdeep":"","tlshash":"dbe0787ab37c911c8c07d7e5936d30a5105614fd6dd502d5f49576353182adf5c51c44","first_seen":"2024-08-19T13:15:18.067673Z","last_seen":"2026-07-27T07:05:43.262972Z","times_seen":804,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTQuNzggMTAuNmE2IDYgMCAxIDAtMTEuNi0uMUg1VjUuODJsNCAzLjk0IDQtMy45NHY0LjY4aDEuNzh2LjFaIiBmaWxsPSIjRjI2NzIyIi8+PHBhdGggZD0iTTYuNSAxMlY5bDIuNDggMi41NUwxMS41IDl2M2gyLjdhNiA2IDAgMCAxLTEwLjQgMGgyLjdaIiBmaWxsPSIjNEQ0RDREIi8+PC9zdmc+"}},"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":"besttrader.live/admin/video/2822.mp4","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"media","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.804Z","timestamp":1785126256804,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /admin/video/2822.mp4 HTTP/1.1\r\nHost: besttrader.live\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: video/webm,video/ogg,video/*;q=0.9,application/ogg;q=0.7,audio/*;q=0.6,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nRange: bytes=0-\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://besttrader.live/\r\nSec-Fetch-Dest: video\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nAccept-Encoding: identity\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 206 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: video/mp4\r\ncontent-length: 1435888\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-15e8f0\"\r\nx-powered-by: PleskLin\r\ncontent-range: bytes 0-1435887/1435888\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"206","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":458752,"size_decoded":459024,"mime_type":"video/mp4","magic":"ISO Media, MP4 Base Media v1 [ISO 14496-12:2003]","md5":"15146d05320fc90f2471c6550bdc688a","sha1":"cc37ccafe933e1765cb5d243217881e315717e4c","sha256":"4bd452e5cea1e1c984588af9d8a8a90bf09c45b4c19017a211088b8b56147fb8","sha512":"0b7e838b4cacce7243c66dd80108a7577d4bb61ba37a3887e794b043e133cb0d1ccdf967b91e32d333b11efda3089e0b6d5f982410d190f6c386e8861c810274","ssdeep":"12288:0xwhSeVLSRkWYvYVps8SSJtCsuUxrXc+EsaM:E8SeVLS2VAVPSSvCFUxLFENM","tlshash":"69a4231abb551ecfefadd0ba40d7da005e619e0819bc9f9f49a4cf0d4a037aa5c0178d","first_seen":"2026-07-27T04:25:12.631699Z","last_seen":"2026-07-27T04:25:12.631699Z","times_seen":1,"resource_available":false,"data":"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"}},"time_used":108,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":98,"receive":10,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"kit-free.fontawesome.com/releases/latest/css/free.min.css","fqdn":"kit-free.fontawesome.com","domain":"fontawesome.com","tld":"com"},"ip":{"addr":"104.21.51.18","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.812Z","timestamp":1785126256812,"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":"kit-free.fontawesome.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Mon, 01 Jun 2026 14:46:23 GMT","end":"Sun, 30 Aug 2026 15:46:20 GMT"},"fingerprint":{"sha1":"ED:41:63:4D:D3:55:75:C7:86:AB:46:78:DE:8D:B1:50:DC:8B:E2:06","sha256":"16:BB:EF:67:BD:36:33:D7:63:EA:C7:FC:4A:B1:D3:EF:DF:FA:C4:86:DE:DD:76:0D:51:50:AE:7E:78:44:C1:E2"}}},"request":{"raw":"GET /releases/latest/css/free.min.css HTTP/1.1\r\nHost: kit-free.fontawesome.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://besttrader.live/\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\nx-amz-id-2: 5W8KPQhHCkS32217+gviKPYqY0CGjbh45KvIVp3BWmRaZaGn7FA5ZGZddGB+apUIcZQsfqr/bbo8IcFBsDf1BEUpYnHf36JT\r\nx-amz-request-id: 7PH5H2HAH3VE6Y7S\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\nlast-modified: Wed, 04 Aug 2021 21:22:50 GMT\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncache-control: max-age=1800\r\npriority: u=4,i=?0\r\ncontent-type: text/css\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=oVpbIPS61Dntdvh5O59g9AhM4tWpTtNQtJzF6mh0sybCCvz8DlLp57hR9NzNMJ8dfgHikBi1cTb9g22LqfSB38iIziqizUc3sdPXGx6vz4zvolorouQwVTZ5Vi3DOYHbIj7UgSMWOT%2FOvBs%3D\"}]}\r\nserver: cloudflare\r\nage: 1118\r\ncf-cache-status: HIT\r\ncontent-encoding: zstd\r\netag: W/\"a12ec7ebe75a4d59a5dd6b79e2ba2e16\"\r\ncf-ray: a218dfa11f462efa-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":"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":60312,"size_decoded":14541,"mime_type":"text/css","magic":"ASCII text, with very long lines (60130)","md5":"a12ec7ebe75a4d59a5dd6b79e2ba2e16","sha1":"28f5dcc595ee6d4163481ef64170180502c8629b","sha256":"fc5128dfdcdfa0c3a9967a6d2f19399d7bf1aaae6ad7571b96b03915a1f30dda","sha512":"28b9ea5f3f95807259c2745162424aceecac2556bc1ab9a3b33e4e15b54c6970a4df4a5892fe83c1155c82ca8d93aebb173be32f1a7f8b9d3ce038b2dd1e6ffe","ssdeep":"768:PUh31IPiyXNq4YxBowbgJlkwF//zMQyYJYX9Bf7VSz8:PU0PxXE4YXJgndFTfy9lQQ","tlshash":"5b430bb8e54d01c9b732c44bbf81b2bc61baf73de5910d95f00e691c2ad26a811c5f7a","first_seen":"2023-04-05T03:17:09Z","last_seen":"2026-07-27T07:01:09.07293Z","times_seen":23799,"resource_available":false,"data":"LyohCiAqIEZvbnQgQXdlc29tZSBGcmVlIDUuMTUuNCBieSBAZm9udGF3ZXNvbWUgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbQogKiBMaWNlbnNlIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb20vbGljZW5zZS9mcmVlIChJY29uczogQ0MgQlkgNC4wLCBGb250czogU0lMIE9GTCAxLjEsIENvZGU6IE1JVCBMaWNlbnNlKQogKi8uZmEsLmZhYiwuZmFkLC5mYWwsLmZhciwuZmFzey1tb3otb3N4LWZvbnQtc21vb3RoaW5nOmdyYXlzY2FsZTstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtdmFyaWFudDpub3JtYWw7dGV4dC1yZW5kZXJpbmc6YXV0bztsaW5lLWhlaWdodDoxfS5mYS1sZ3tmb250LXNpemU6MS4zMzMzM2VtO2xpbmUtaGVpZ2h0Oi43NWVtO3ZlcnRpY2FsLWFsaWduOi0uMDY2N2VtfS5mYS14c3tmb250LXNpemU6Ljc1ZW19LmZhLXNte2ZvbnQtc2l6ZTouODc1ZW19LmZhLTF4e2ZvbnQtc2l6ZToxZW19LmZhLTJ4e2ZvbnQtc2l6ZToyZW19LmZhLTN4e2ZvbnQtc2l6ZTozZW19LmZhLTR4e2ZvbnQtc2l6ZTo0ZW19LmZhLTV4e2ZvbnQtc2l6ZTo1ZW19LmZhLTZ4e2ZvbnQtc2l6ZTo2ZW19LmZhLTd4e2ZvbnQtc2l6ZTo3ZW19LmZhLTh4e2ZvbnQtc2l6ZTo4ZW19LmZhLTl4e2ZvbnQtc2l6ZTo5ZW19LmZhLTEweHtmb250LXNpemU6MTBlbX0uZmEtZnd7dGV4dC1hbGlnbjpjZW50ZXI7d2lkdGg6MS4yNWVtfS5mYS11bHtsaXN0LXN0eWxlLXR5cGU6bm9uZTttYXJnaW4tbGVmdDoyLjVlbTtwYWRkaW5nLWxlZnQ6MH0uZmEtdWw+bGl7cG9zaXRpb246cmVsYXRpdmV9LmZhLWxpe2xlZnQ6LTJlbTtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWFsaWduOmNlbnRlcjt3aWR0aDoyZW07bGluZS1oZWlnaHQ6aW5oZXJpdH0uZmEtYm9yZGVye2JvcmRlcjouMDhlbSBzb2xpZCAjZWVlO2JvcmRlci1yYWRpdXM6LjFlbTtwYWRkaW5nOi4yZW0gLjI1ZW0gLjE1ZW19LmZhLXB1bGwtbGVmdHtmbG9hdDpsZWZ0fS5mYS1wdWxsLXJpZ2h0e2Zsb2F0OnJpZ2h0fS5mYS5mYS1wdWxsLWxlZnQsLmZhYi5mYS1wdWxsLWxlZnQsLmZhbC5mYS1wdWxsLWxlZnQsLmZhci5mYS1wdWxsLWxlZnQsLmZhcy5mYS1wdWxsLWxlZnR7bWFyZ2luLXJpZ2h0Oi4zZW19LmZhLmZhLXB1bGwtcmlnaHQsLmZhYi5mYS1wdWxsLXJpZ2h0LC5mYWwuZmEtcHVsbC1yaWdodCwuZmFyLmZhLXB1bGwtcmlnaHQsLmZhcy5mYS1wdWxsLXJpZ2h0e21hcmdpbi1sZWZ0Oi4zZW19LmZhLXNwaW57LXdlYmtpdC1hbmltYXRpb246ZmEtc3BpbiAycyBsaW5lYXIgaW5maW5pdGU7YW5pbWF0aW9uOmZhLXNwaW4gMnMgbGluZWFyIGluZmluaXRlfS5mYS1wdWxzZXstd2Via2l0LWFuaW1hdGlvbjpmYS1zcGluIDFzIHN0ZXBzKDgpIGluZmluaXRlO2FuaW1hdGlvbjpmYS1zcGluIDFzIHN0ZXBzKDgpIGluZmluaXRlfUAtd2Via2l0LWtleWZyYW1lcyBmYS1zcGluezAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgwZGVnKTt0cmFuc2Zvcm06cm90YXRlKDBkZWcpfXRvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxdHVybik7dHJhbnNmb3JtOnJvdGF0ZSgxdHVybil9fUBrZXlmcmFtZXMgZmEtc3BpbnswJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKX10b3std2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMXR1cm4pO3RyYW5zZm9ybTpyb3RhdGUoMXR1cm4pfX0uZmEtcm90YXRlLTkwey1tcy1maWx0ZXI6InByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTEpIjstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoOTBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoOTBkZWcpfS5mYS1yb3RhdGUtMTgwey1tcy1maWx0ZXI6InByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTIpIjstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKTt0cmFuc2Zvcm06cm90YXRlKDE4MGRlZyl9LmZhLXJvdGF0ZS0yNzB7LW1zLWZpbHRlcjoicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MykiOy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgyNzBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMjcwZGVnKX0uZmEtZmxpcC1ob3Jpem9udGFsey1tcy1maWx0ZXI6InByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTAsIG1pcnJvcj0xKSI7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGVYKC0xKTt0cmFuc2Zvcm06c2NhbGVYKC0xKX0uZmEtZmxpcC12ZXJ0aWNhbHstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVkoLTEpO3RyYW5zZm9ybTpzY2FsZVkoLTEpfS5mYS1mbGlwLWJvdGgsLmZhLWZsaXAtaG9yaXpvbnRhbC5mYS1mbGlwLXZlcnRpY2FsLC5mYS1mbGlwLXZlcnRpY2Fsey1tcy1maWx0ZXI6InByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTIsIG1pcnJvcj0xKSJ9LmZhLWZsaXAtYm90aCwuZmEtZmxpcC1ob3Jpem9udGFsLmZhLWZsaXAtdmVydGljYWx7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoLTEpO3RyYW5zZm9ybTpzY2FsZSgtMSl9OnJvb3QgLmZhLWZsaXAtYm90aCw6cm9vdCAuZmEtZmxpcC1ob3Jpem9udGFsLDpyb290IC5mYS1mbGlwLXZlcnRpY2FsLDpyb290IC5mYS1yb3RhdGUtOTAsOnJvb3QgLmZhLXJvdGF0ZS0xODAsOnJvb3QgLmZhLXJvdGF0ZS0yNzB7LXdlYmtpdC1maWx0ZXI6bm9uZTtmaWx0ZXI6bm9uZX0uZmEtc3RhY2t7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjJlbTtsaW5lLWhlaWdodDoyZW07cG9zaXRpb246cmVsYXRpdmU7dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjIuNWVtfS5mYS1zdGFjay0xeCwuZmEtc3RhY2stMnh7bGVmdDowO3Bvc2l0aW9uOmFic29sdXRlO3RleHQtYWxpZ246Y2VudGVyO3dpZHRoOjEwMCV9LmZhLXN0YWNrLTF4e2xpbmUtaGVpZ2h0OmluaGVyaXR9LmZhLXN0YWNrLTJ4e2ZvbnQtc2l6ZToyZW19LmZhLWludmVyc2V7Y29sb3I6I2ZmZn0uZmEtNTAwcHg6YmVmb3Jle2NvbnRlbnQ6IlxmMjZlIn0uZmEtYWNjZXNzaWJsZS1pY29uOmJlZm9yZXtjb250ZW50OiJcZjM2OCJ9LmZhLWFjY3Vzb2Z0OmJlZm9yZXtjb250ZW50OiJcZjM2OSJ9LmZhLWFjcXVpc2l0aW9ucy1pbmNvcnBvcmF0ZWQ6YmVmb3Jle2NvbnRlbnQ6IlxmNmFmIn0uZmEtYWQ6YmVmb3Jle2NvbnRlbnQ6IlxmNjQxIn0uZmEtYWRkcmVzcy1ib29rOmJlZm9yZXtjb250ZW50OiJcZjJiOSJ9LmZhLWFkZHJlc3MtY2FyZDpiZWZvcmV7Y29udGVudDoiXGYyYmIifS5mYS1hZGp1c3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMDQyIn0uZmEtYWRuOmJlZm9yZXtjb250ZW50OiJcZjE3MCJ9LmZhLWFkdmVyc2FsOmJlZm9yZXtjb250ZW50OiJcZjM2YSJ9LmZhLWFmZmlsaWF0ZXRoZW1lOmJlZm9yZXtjb250ZW50OiJcZjM2YiJ9LmZhLWFpci1mcmVzaGVuZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNWQwIn0uZmEtYWlyYm5iOmJlZm9yZXtjb250ZW50OiJcZjgzNCJ9LmZhLWFsZ29saWE6YmVmb3Jle2NvbnRlbnQ6IlxmMzZjIn0uZmEtYWxpZ24tY2VudGVyOmJlZm9yZXtjb250ZW50OiJcZjAzNyJ9LmZhLWFsaWduLWp1c3RpZnk6YmVmb3Jle2NvbnRlbnQ6IlxmMDM5In0uZmEtYWxpZ24tbGVmdDpiZWZvcmV7Y29udGVudDoiXGYwMzYifS5mYS1hbGlnbi1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYwMzgifS5mYS1hbGlwYXk6YmVmb3Jle2NvbnRlbnQ6IlxmNjQyIn0uZmEtYWxsZXJnaWVzOmJlZm9yZXtjb250ZW50OiJcZjQ2MSJ9LmZhLWFtYXpvbjpiZWZvcmV7Y29udGVudDoiXGYyNzAifS5mYS1hbWF6b24tcGF5OmJlZm9yZXtjb250ZW50OiJcZjQyYyJ9LmZhLWFtYnVsYW5jZTpiZWZvcmV7Y29udGVudDoiXGYwZjkifS5mYS1hbWVyaWNhbi1zaWduLWxhbmd1YWdlLWludGVycHJldGluZzpiZWZvcmV7Y29udGVudDoiXGYyYTMifS5mYS1hbWlsaWE6YmVmb3Jle2NvbnRlbnQ6IlxmMzZkIn0uZmEtYW5jaG9yOmJlZm9yZXtjb250ZW50OiJcZjEzZCJ9LmZhLWFuZHJvaWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTdiIn0uZmEtYW5nZWxsaXN0OmJlZm9yZXtjb250ZW50OiJcZjIwOSJ9LmZhLWFuZ2xlLWRvdWJsZS1kb3duOmJlZm9yZXtjb250ZW50OiJcZjEwMyJ9LmZhLWFuZ2xlLWRvdWJsZS1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjEwMCJ9LmZhLWFuZ2xlLWRvdWJsZS1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYxMDEifS5mYS1hbmdsZS1kb3VibGUtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTAyIn0uZmEtYW5nbGUtZG93bjpiZWZvcmV7Y29udGVudDoiXGYxMDcifS5mYS1hbmdsZS1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjEwNCJ9LmZhLWFuZ2xlLXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjEwNSJ9LmZhLWFuZ2xlLXVwOmJlZm9yZXtjb250ZW50OiJcZjEwNiJ9LmZhLWFuZ3J5OmJlZm9yZXtjb250ZW50OiJcZjU1NiJ9LmZhLWFuZ3J5Y3JlYXRpdmU6YmVmb3Jle2NvbnRlbnQ6IlxmMzZlIn0uZmEtYW5ndWxhcjpiZWZvcmV7Y29udGVudDoiXGY0MjAifS5mYS1hbmtoOmJlZm9yZXtjb250ZW50OiJcZjY0NCJ9LmZhLWFwcC1zdG9yZTpiZWZvcmV7Y29udGVudDoiXGYzNmYifS5mYS1hcHAtc3RvcmUtaW9zOmJlZm9yZXtjb250ZW50OiJcZjM3MCJ9LmZhLWFwcGVyOmJlZm9yZXtjb250ZW50OiJcZjM3MSJ9LmZhLWFwcGxlOmJlZm9yZXtjb250ZW50OiJcZjE3OSJ9LmZhLWFwcGxlLWFsdDpiZWZvcmV7Y29udGVudDoiXGY1ZDEifS5mYS1hcHBsZS1wYXk6YmVmb3Jle2NvbnRlbnQ6IlxmNDE1In0uZmEtYXJjaGl2ZTpiZWZvcmV7Y29udGVudDoiXGYxODcifS5mYS1hcmNod2F5OmJlZm9yZXtjb250ZW50OiJcZjU1NyJ9LmZhLWFycm93LWFsdC1jaXJjbGUtZG93bjpiZWZvcmV7Y29udGVudDoiXGYzNTgifS5mYS1hcnJvdy1hbHQtY2lyY2xlLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzU5In0uZmEtYXJyb3ctYWx0LWNpcmNsZS1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYzNWEifS5mYS1hcnJvdy1hbHQtY2lyY2xlLXVwOmJlZm9yZXtjb250ZW50OiJcZjM1YiJ9LmZhLWFycm93LWNpcmNsZS1kb3duOmJlZm9yZXtjb250ZW50OiJcZjBhYiJ9LmZhLWFycm93LWNpcmNsZS1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjBhOCJ9LmZhLWFycm93LWNpcmNsZS1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYwYTkifS5mYS1hcnJvdy1jaXJjbGUtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMGFhIn0uZmEtYXJyb3ctZG93bjpiZWZvcmV7Y29udGVudDoiXGYwNjMifS5mYS1hcnJvdy1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjA2MCJ9LmZhLWFycm93LXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjA2MSJ9LmZhLWFycm93LXVwOmJlZm9yZXtjb250ZW50OiJcZjA2MiJ9LmZhLWFycm93cy1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGIyIn0uZmEtYXJyb3dzLWFsdC1oOmJlZm9yZXtjb250ZW50OiJcZjMzNyJ9LmZhLWFycm93cy1hbHQtdjpiZWZvcmV7Y29udGVudDoiXGYzMzgifS5mYS1hcnRzdGF0aW9uOmJlZm9yZXtjb250ZW50OiJcZjc3YSJ9LmZhLWFzc2lzdGl2ZS1saXN0ZW5pbmctc3lzdGVtczpiZWZvcmV7Y29udGVudDoiXGYyYTIifS5mYS1hc3RlcmlzazpiZWZvcmV7Y29udGVudDoiXGYwNjkifS5mYS1hc3ltbWV0cmlrOmJlZm9yZXtjb250ZW50OiJcZjM3MiJ9LmZhLWF0OmJlZm9yZXtjb250ZW50OiJcZjFmYSJ9LmZhLWF0bGFzOmJlZm9yZXtjb250ZW50OiJcZjU1OCJ9LmZhLWF0bGFzc2lhbjpiZWZvcmV7Y29udGVudDoiXGY3N2IifS5mYS1hdG9tOmJlZm9yZXtjb250ZW50OiJcZjVkMiJ9LmZhLWF1ZGlibGU6YmVmb3Jle2NvbnRlbnQ6IlxmMzczIn0uZmEtYXVkaW8tZGVzY3JpcHRpb246YmVmb3Jle2NvbnRlbnQ6IlxmMjllIn0uZmEtYXV0b3ByZWZpeGVyOmJlZm9yZXtjb250ZW50OiJcZjQxYyJ9LmZhLWF2aWFuZXg6YmVmb3Jle2NvbnRlbnQ6IlxmMzc0In0uZmEtYXZpYXRvOmJlZm9yZXtjb250ZW50OiJcZjQyMSJ9LmZhLWF3YXJkOmJlZm9yZXtjb250ZW50OiJcZjU1OSJ9LmZhLWF3czpiZWZvcmV7Y29udGVudDoiXGYzNzUifS5mYS1iYWJ5OmJlZm9yZXtjb250ZW50OiJcZjc3YyJ9LmZhLWJhYnktY2FycmlhZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmNzdkIn0uZmEtYmFja3NwYWNlOmJlZm9yZXtjb250ZW50OiJcZjU1YSJ9LmZhLWJhY2t3YXJkOmJlZm9yZXtjb250ZW50OiJcZjA0YSJ9LmZhLWJhY29uOmJlZm9yZXtjb250ZW50OiJcZjdlNSJ9LmZhLWJhY3RlcmlhOmJlZm9yZXtjb250ZW50OiJcZTA1OSJ9LmZhLWJhY3Rlcml1bTpiZWZvcmV7Y29udGVudDoiXGUwNWEifS5mYS1iYWhhaTpiZWZvcmV7Y29udGVudDoiXGY2NjYifS5mYS1iYWxhbmNlLXNjYWxlOmJlZm9yZXtjb250ZW50OiJcZjI0ZSJ9LmZhLWJhbGFuY2Utc2NhbGUtbGVmdDpiZWZvcmV7Y29udGVudDoiXGY1MTUifS5mYS1iYWxhbmNlLXNjYWxlLXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjUxNiJ9LmZhLWJhbjpiZWZvcmV7Y29udGVudDoiXGYwNWUifS5mYS1iYW5kLWFpZDpiZWZvcmV7Y29udGVudDoiXGY0NjIifS5mYS1iYW5kY2FtcDpiZWZvcmV7Y29udGVudDoiXGYyZDUifS5mYS1iYXJjb2RlOmJlZm9yZXtjb250ZW50OiJcZjAyYSJ9LmZhLWJhcnM6YmVmb3Jle2NvbnRlbnQ6IlxmMGM5In0uZmEtYmFzZWJhbGwtYmFsbDpiZWZvcmV7Y29udGVudDoiXGY0MzMifS5mYS1iYXNrZXRiYWxsLWJhbGw6YmVmb3Jle2NvbnRlbnQ6IlxmNDM0In0uZmEtYmF0aDpiZWZvcmV7Y29udGVudDoiXGYyY2QifS5mYS1iYXR0ZXJ5LWVtcHR5OmJlZm9yZXtjb250ZW50OiJcZjI0NCJ9LmZhLWJhdHRlcnktZnVsbDpiZWZvcmV7Y29udGVudDoiXGYyNDAifS5mYS1iYXR0ZXJ5LWhhbGY6YmVmb3Jle2NvbnRlbnQ6IlxmMjQyIn0uZmEtYmF0dGVyeS1xdWFydGVyOmJlZm9yZXtjb250ZW50OiJcZjI0MyJ9LmZhLWJhdHRlcnktdGhyZWUtcXVhcnRlcnM6YmVmb3Jle2NvbnRlbnQ6IlxmMjQxIn0uZmEtYmF0dGxlLW5ldDpiZWZvcmV7Y29udGVudDoiXGY4MzUifS5mYS1iZWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjM2In0uZmEtYmVlcjpiZWZvcmV7Y29udGVudDoiXGYwZmMifS5mYS1iZWhhbmNlOmJlZm9yZXtjb250ZW50OiJcZjFiNCJ9LmZhLWJlaGFuY2Utc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjFiNSJ9LmZhLWJlbGw6YmVmb3Jle2NvbnRlbnQ6IlxmMGYzIn0uZmEtYmVsbC1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGYxZjYifS5mYS1iZXppZXItY3VydmU6YmVmb3Jle2NvbnRlbnQ6IlxmNTViIn0uZmEtYmlibGU6YmVmb3Jle2NvbnRlbnQ6IlxmNjQ3In0uZmEtYmljeWNsZTpiZWZvcmV7Y29udGVudDoiXGYyMDYifS5mYS1iaWtpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmODRhIn0uZmEtYmltb2JqZWN0OmJlZm9yZXtjb250ZW50OiJcZjM3OCJ9LmZhLWJpbm9jdWxhcnM6YmVmb3Jle2NvbnRlbnQ6IlxmMWU1In0uZmEtYmlvaGF6YXJkOmJlZm9yZXtjb250ZW50OiJcZjc4MCJ9LmZhLWJpcnRoZGF5LWNha2U6YmVmb3Jle2NvbnRlbnQ6IlxmMWZkIn0uZmEtYml0YnVja2V0OmJlZm9yZXtjb250ZW50OiJcZjE3MSJ9LmZhLWJpdGNvaW46YmVmb3Jle2NvbnRlbnQ6IlxmMzc5In0uZmEtYml0eTpiZWZvcmV7Y29udGVudDoiXGYzN2EifS5mYS1ibGFjay10aWU6YmVmb3Jle2NvbnRlbnQ6IlxmMjdlIn0uZmEtYmxhY2tiZXJyeTpiZWZvcmV7Y29udGVudDoiXGYzN2IifS5mYS1ibGVuZGVyOmJlZm9yZXtjb250ZW50OiJcZjUxNyJ9LmZhLWJsZW5kZXItcGhvbmU6YmVmb3Jle2NvbnRlbnQ6IlxmNmI2In0uZmEtYmxpbmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjlkIn0uZmEtYmxvZzpiZWZvcmV7Y29udGVudDoiXGY3ODEifS5mYS1ibG9nZ2VyOmJlZm9yZXtjb250ZW50OiJcZjM3YyJ9LmZhLWJsb2dnZXItYjpiZWZvcmV7Y29udGVudDoiXGYzN2QifS5mYS1ibHVldG9vdGg6YmVmb3Jle2NvbnRlbnQ6IlxmMjkzIn0uZmEtYmx1ZXRvb3RoLWI6YmVmb3Jle2NvbnRlbnQ6IlxmMjk0In0uZmEtYm9sZDpiZWZvcmV7Y29udGVudDoiXGYwMzIifS5mYS1ib2x0OmJlZm9yZXtjb250ZW50OiJcZjBlNyJ9LmZhLWJvbWI6YmVmb3Jle2NvbnRlbnQ6IlxmMWUyIn0uZmEtYm9uZTpiZWZvcmV7Y29udGVudDoiXGY1ZDcifS5mYS1ib25nOmJlZm9yZXtjb250ZW50OiJcZjU1YyJ9LmZhLWJvb2s6YmVmb3Jle2NvbnRlbnQ6IlxmMDJkIn0uZmEtYm9vay1kZWFkOmJlZm9yZXtjb250ZW50OiJcZjZiNyJ9LmZhLWJvb2stbWVkaWNhbDpiZWZvcmV7Y29udGVudDoiXGY3ZTYifS5mYS1ib29rLW9wZW46YmVmb3Jle2NvbnRlbnQ6IlxmNTE4In0uZmEtYm9vay1yZWFkZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNWRhIn0uZmEtYm9va21hcms6YmVmb3Jle2NvbnRlbnQ6IlxmMDJlIn0uZmEtYm9vdHN0cmFwOmJlZm9yZXtjb250ZW50OiJcZjgzNiJ9LmZhLWJvcmRlci1hbGw6YmVmb3Jle2NvbnRlbnQ6IlxmODRjIn0uZmEtYm9yZGVyLW5vbmU6YmVmb3Jle2NvbnRlbnQ6IlxmODUwIn0uZmEtYm9yZGVyLXN0eWxlOmJlZm9yZXtjb250ZW50OiJcZjg1MyJ9LmZhLWJvd2xpbmctYmFsbDpiZWZvcmV7Y29udGVudDoiXGY0MzYifS5mYS1ib3g6YmVmb3Jle2NvbnRlbnQ6IlxmNDY2In0uZmEtYm94LW9wZW46YmVmb3Jle2NvbnRlbnQ6IlxmNDllIn0uZmEtYm94LXRpc3N1ZTpiZWZvcmV7Y29udGVudDoiXGUwNWIifS5mYS1ib3hlczpiZWZvcmV7Y29udGVudDoiXGY0NjgifS5mYS1icmFpbGxlOmJlZm9yZXtjb250ZW50OiJcZjJhMSJ9LmZhLWJyYWluOmJlZm9yZXtjb250ZW50OiJcZjVkYyJ9LmZhLWJyZWFkLXNsaWNlOmJlZm9yZXtjb250ZW50OiJcZjdlYyJ9LmZhLWJyaWVmY2FzZTpiZWZvcmV7Y29udGVudDoiXGYwYjEifS5mYS1icmllZmNhc2UtbWVkaWNhbDpiZWZvcmV7Y29udGVudDoiXGY0NjkifS5mYS1icm9hZGNhc3QtdG93ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNTE5In0uZmEtYnJvb206YmVmb3Jle2NvbnRlbnQ6IlxmNTFhIn0uZmEtYnJ1c2g6YmVmb3Jle2NvbnRlbnQ6IlxmNTVkIn0uZmEtYnRjOmJlZm9yZXtjb250ZW50OiJcZjE1YSJ9LmZhLWJ1ZmZlcjpiZWZvcmV7Y29udGVudDoiXGY4MzcifS5mYS1idWc6YmVmb3Jle2NvbnRlbnQ6IlxmMTg4In0uZmEtYnVpbGRpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmMWFkIn0uZmEtYnVsbGhvcm46YmVmb3Jle2NvbnRlbnQ6IlxmMGExIn0uZmEtYnVsbHNleWU6YmVmb3Jle2NvbnRlbnQ6IlxmMTQwIn0uZmEtYnVybjpiZWZvcmV7Y29udGVudDoiXGY0NmEifS5mYS1idXJvbW9iZWxleHBlcnRlOmJlZm9yZXtjb250ZW50OiJcZjM3ZiJ9LmZhLWJ1czpiZWZvcmV7Y29udGVudDoiXGYyMDcifS5mYS1idXMtYWx0OmJlZm9yZXtjb250ZW50OiJcZjU1ZSJ9LmZhLWJ1c2luZXNzLXRpbWU6YmVmb3Jle2NvbnRlbnQ6IlxmNjRhIn0uZmEtYnV5LW4tbGFyZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmOGE2In0uZmEtYnV5c2VsbGFkczpiZWZvcmV7Y29udGVudDoiXGYyMGQifS5mYS1jYWxjdWxhdG9yOmJlZm9yZXtjb250ZW50OiJcZjFlYyJ9LmZhLWNhbGVuZGFyOmJlZm9yZXtjb250ZW50OiJcZjEzMyJ9LmZhLWNhbGVuZGFyLWFsdDpiZWZvcmV7Y29udGVudDoiXGYwNzMifS5mYS1jYWxlbmRhci1jaGVjazpiZWZvcmV7Y29udGVudDoiXGYyNzQifS5mYS1jYWxlbmRhci1kYXk6YmVmb3Jle2NvbnRlbnQ6IlxmNzgzIn0uZmEtY2FsZW5kYXItbWludXM6YmVmb3Jle2NvbnRlbnQ6IlxmMjcyIn0uZmEtY2FsZW5kYXItcGx1czpiZWZvcmV7Y29udGVudDoiXGYyNzEifS5mYS1jYWxlbmRhci10aW1lczpiZWZvcmV7Y29udGVudDoiXGYyNzMifS5mYS1jYWxlbmRhci13ZWVrOmJlZm9yZXtjb250ZW50OiJcZjc4NCJ9LmZhLWNhbWVyYTpiZWZvcmV7Y29udGVudDoiXGYwMzAifS5mYS1jYW1lcmEtcmV0cm86YmVmb3Jle2NvbnRlbnQ6IlxmMDgzIn0uZmEtY2FtcGdyb3VuZDpiZWZvcmV7Y29udGVudDoiXGY2YmIifS5mYS1jYW5hZGlhbi1tYXBsZS1sZWFmOmJlZm9yZXtjb250ZW50OiJcZjc4NSJ9LmZhLWNhbmR5LWNhbmU6YmVmb3Jle2NvbnRlbnQ6IlxmNzg2In0uZmEtY2FubmFiaXM6YmVmb3Jle2NvbnRlbnQ6IlxmNTVmIn0uZmEtY2Fwc3VsZXM6YmVmb3Jle2NvbnRlbnQ6IlxmNDZiIn0uZmEtY2FyOmJlZm9yZXtjb250ZW50OiJcZjFiOSJ9LmZhLWNhci1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNWRlIn0uZmEtY2FyLWJhdHRlcnk6YmVmb3Jle2NvbnRlbnQ6IlxmNWRmIn0uZmEtY2FyLWNyYXNoOmJlZm9yZXtjb250ZW50OiJcZjVlMSJ9LmZhLWNhci1zaWRlOmJlZm9yZXtjb250ZW50OiJcZjVlNCJ9LmZhLWNhcmF2YW46YmVmb3Jle2NvbnRlbnQ6IlxmOGZmIn0uZmEtY2FyZXQtZG93bjpiZWZvcmV7Y29udGVudDoiXGYwZDcifS5mYS1jYXJldC1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjBkOSJ9LmZhLWNhcmV0LXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjBkYSJ9LmZhLWNhcmV0LXNxdWFyZS1kb3duOmJlZm9yZXtjb250ZW50OiJcZjE1MCJ9LmZhLWNhcmV0LXNxdWFyZS1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjE5MSJ9LmZhLWNhcmV0LXNxdWFyZS1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYxNTIifS5mYS1jYXJldC1zcXVhcmUtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTUxIn0uZmEtY2FyZXQtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMGQ4In0uZmEtY2Fycm90OmJlZm9yZXtjb250ZW50OiJcZjc4NyJ9LmZhLWNhcnQtYXJyb3ctZG93bjpiZWZvcmV7Y29udGVudDoiXGYyMTgifS5mYS1jYXJ0LXBsdXM6YmVmb3Jle2NvbnRlbnQ6IlxmMjE3In0uZmEtY2FzaC1yZWdpc3RlcjpiZWZvcmV7Y29udGVudDoiXGY3ODgifS5mYS1jYXQ6YmVmb3Jle2NvbnRlbnQ6IlxmNmJlIn0uZmEtY2MtYW1hem9uLXBheTpiZWZvcmV7Y29udGVudDoiXGY0MmQifS5mYS1jYy1hbWV4OmJlZm9yZXtjb250ZW50OiJcZjFmMyJ9LmZhLWNjLWFwcGxlLXBheTpiZWZvcmV7Y29udGVudDoiXGY0MTYifS5mYS1jYy1kaW5lcnMtY2x1YjpiZWZvcmV7Y29udGVudDoiXGYyNGMifS5mYS1jYy1kaXNjb3ZlcjpiZWZvcmV7Y29udGVudDoiXGYxZjIifS5mYS1jYy1qY2I6YmVmb3Jle2NvbnRlbnQ6IlxmMjRiIn0uZmEtY2MtbWFzdGVyY2FyZDpiZWZvcmV7Y29udGVudDoiXGYxZjEifS5mYS1jYy1wYXlwYWw6YmVmb3Jle2NvbnRlbnQ6IlxmMWY0In0uZmEtY2Mtc3RyaXBlOmJlZm9yZXtjb250ZW50OiJcZjFmNSJ9LmZhLWNjLXZpc2E6YmVmb3Jle2NvbnRlbnQ6IlxmMWYwIn0uZmEtY2VudGVyY29kZTpiZWZvcmV7Y29udGVudDoiXGYzODAifS5mYS1jZW50b3M6YmVmb3Jle2NvbnRlbnQ6IlxmNzg5In0uZmEtY2VydGlmaWNhdGU6YmVmb3Jle2NvbnRlbnQ6IlxmMGEzIn0uZmEtY2hhaXI6YmVmb3Jle2NvbnRlbnQ6IlxmNmMwIn0uZmEtY2hhbGtib2FyZDpiZWZvcmV7Y29udGVudDoiXGY1MWIifS5mYS1jaGFsa2JvYXJkLXRlYWNoZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNTFjIn0uZmEtY2hhcmdpbmctc3RhdGlvbjpiZWZvcmV7Y29udGVudDoiXGY1ZTcifS5mYS1jaGFydC1hcmVhOmJlZm9yZXtjb250ZW50OiJcZjFmZSJ9LmZhLWNoYXJ0LWJhcjpiZWZvcmV7Y29udGVudDoiXGYwODAifS5mYS1jaGFydC1saW5lOmJlZm9yZXtjb250ZW50OiJcZjIwMSJ9LmZhLWNoYXJ0LXBpZTpiZWZvcmV7Y29udGVudDoiXGYyMDAifS5mYS1jaGVjazpiZWZvcmV7Y29udGVudDoiXGYwMGMifS5mYS1jaGVjay1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMDU4In0uZmEtY2hlY2stZG91YmxlOmJlZm9yZXtjb250ZW50OiJcZjU2MCJ9LmZhLWNoZWNrLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYxNGEifS5mYS1jaGVlc2U6YmVmb3Jle2NvbnRlbnQ6IlxmN2VmIn0uZmEtY2hlc3M6YmVmb3Jle2NvbnRlbnQ6IlxmNDM5In0uZmEtY2hlc3MtYmlzaG9wOmJlZm9yZXtjb250ZW50OiJcZjQzYSJ9LmZhLWNoZXNzLWJvYXJkOmJlZm9yZXtjb250ZW50OiJcZjQzYyJ9LmZhLWNoZXNzLWtpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmNDNmIn0uZmEtY2hlc3Mta25pZ2h0OmJlZm9yZXtjb250ZW50OiJcZjQ0MSJ9LmZhLWNoZXNzLXBhd246YmVmb3Jle2NvbnRlbnQ6IlxmNDQzIn0uZmEtY2hlc3MtcXVlZW46YmVmb3Jle2NvbnRlbnQ6IlxmNDQ1In0uZmEtY2hlc3Mtcm9vazpiZWZvcmV7Y29udGVudDoiXGY0NDcifS5mYS1jaGV2cm9uLWNpcmNsZS1kb3duOmJlZm9yZXtjb250ZW50OiJcZjEzYSJ9LmZhLWNoZXZyb24tY2lyY2xlLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTM3In0uZmEtY2hldnJvbi1jaXJjbGUtcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTM4In0uZmEtY2hldnJvbi1jaXJjbGUtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTM5In0uZmEtY2hldnJvbi1kb3duOmJlZm9yZXtjb250ZW50OiJcZjA3OCJ9LmZhLWNoZXZyb24tbGVmdDpiZWZvcmV7Y29udGVudDoiXGYwNTMifS5mYS1jaGV2cm9uLXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjA1NCJ9LmZhLWNoZXZyb24tdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMDc3In0uZmEtY2hpbGQ6YmVmb3Jle2NvbnRlbnQ6IlxmMWFlIn0uZmEtY2hyb21lOmJlZm9yZXtjb250ZW50OiJcZjI2OCJ9LmZhLWNocm9tZWNhc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmODM4In0uZmEtY2h1cmNoOmJlZm9yZXtjb250ZW50OiJcZjUxZCJ9LmZhLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGYxMTEifS5mYS1jaXJjbGUtbm90Y2g6YmVmb3Jle2NvbnRlbnQ6IlxmMWNlIn0uZmEtY2l0eTpiZWZvcmV7Y29udGVudDoiXGY2NGYifS5mYS1jbGluaWMtbWVkaWNhbDpiZWZvcmV7Y29udGVudDoiXGY3ZjIifS5mYS1jbGlwYm9hcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzI4In0uZmEtY2xpcGJvYXJkLWNoZWNrOmJlZm9yZXtjb250ZW50OiJcZjQ2YyJ9LmZhLWNsaXBib2FyZC1saXN0OmJlZm9yZXtjb250ZW50OiJcZjQ2ZCJ9LmZhLWNsb2NrOmJlZm9yZXtjb250ZW50OiJcZjAxNyJ9LmZhLWNsb25lOmJlZm9yZXtjb250ZW50OiJcZjI0ZCJ9LmZhLWNsb3NlZC1jYXB0aW9uaW5nOmJlZm9yZXtjb250ZW50OiJcZjIwYSJ9LmZhLWNsb3VkOmJlZm9yZXtjb250ZW50OiJcZjBjMiJ9LmZhLWNsb3VkLWRvd25sb2FkLWFsdDpiZWZvcmV7Y29udGVudDoiXGYzODEifS5mYS1jbG91ZC1tZWF0YmFsbDpiZWZvcmV7Y29udGVudDoiXGY3M2IifS5mYS1jbG91ZC1tb29uOmJlZm9yZXtjb250ZW50OiJcZjZjMyJ9LmZhLWNsb3VkLW1vb24tcmFpbjpiZWZvcmV7Y29udGVudDoiXGY3M2MifS5mYS1jbG91ZC1yYWluOmJlZm9yZXtjb250ZW50OiJcZjczZCJ9LmZhLWNsb3VkLXNob3dlcnMtaGVhdnk6YmVmb3Jle2NvbnRlbnQ6IlxmNzQwIn0uZmEtY2xvdWQtc3VuOmJlZm9yZXtjb250ZW50OiJcZjZjNCJ9LmZhLWNsb3VkLXN1bi1yYWluOmJlZm9yZXtjb250ZW50OiJcZjc0MyJ9LmZhLWNsb3VkLXVwbG9hZC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzgyIn0uZmEtY2xvdWRmbGFyZTpiZWZvcmV7Y29udGVudDoiXGUwN2QifS5mYS1jbG91ZHNjYWxlOmJlZm9yZXtjb250ZW50OiJcZjM4MyJ9LmZhLWNsb3Vkc21pdGg6YmVmb3Jle2NvbnRlbnQ6IlxmMzg0In0uZmEtY2xvdWR2ZXJzaWZ5OmJlZm9yZXtjb250ZW50OiJcZjM4NSJ9LmZhLWNvY2t0YWlsOmJlZm9yZXtjb250ZW50OiJcZjU2MSJ9LmZhLWNvZGU6YmVmb3Jle2NvbnRlbnQ6IlxmMTIxIn0uZmEtY29kZS1icmFuY2g6YmVmb3Jle2NvbnRlbnQ6IlxmMTI2In0uZmEtY29kZXBlbjpiZWZvcmV7Y29udGVudDoiXGYxY2IifS5mYS1jb2RpZXBpZTpiZWZvcmV7Y29udGVudDoiXGYyODQifS5mYS1jb2ZmZWU6YmVmb3Jle2NvbnRlbnQ6IlxmMGY0In0uZmEtY29nOmJlZm9yZXtjb250ZW50OiJcZjAxMyJ9LmZhLWNvZ3M6YmVmb3Jle2NvbnRlbnQ6IlxmMDg1In0uZmEtY29pbnM6YmVmb3Jle2NvbnRlbnQ6IlxmNTFlIn0uZmEtY29sdW1uczpiZWZvcmV7Y29udGVudDoiXGYwZGIifS5mYS1jb21tZW50OmJlZm9yZXtjb250ZW50OiJcZjA3NSJ9LmZhLWNvbW1lbnQtYWx0OmJlZm9yZXtjb250ZW50OiJcZjI3YSJ9LmZhLWNvbW1lbnQtZG9sbGFyOmJlZm9yZXtjb250ZW50OiJcZjY1MSJ9LmZhLWNvbW1lbnQtZG90czpiZWZvcmV7Y29udGVudDoiXGY0YWQifS5mYS1jb21tZW50LW1lZGljYWw6YmVmb3Jle2NvbnRlbnQ6IlxmN2Y1In0uZmEtY29tbWVudC1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGY0YjMifS5mYS1jb21tZW50czpiZWZvcmV7Y29udGVudDoiXGYwODYifS5mYS1jb21tZW50cy1kb2xsYXI6YmVmb3Jle2NvbnRlbnQ6IlxmNjUzIn0uZmEtY29tcGFjdC1kaXNjOmJlZm9yZXtjb250ZW50OiJcZjUxZiJ9LmZhLWNvbXBhc3M6YmVmb3Jle2NvbnRlbnQ6IlxmMTRlIn0uZmEtY29tcHJlc3M6YmVmb3Jle2NvbnRlbnQ6IlxmMDY2In0uZmEtY29tcHJlc3MtYWx0OmJlZm9yZXtjb250ZW50OiJcZjQyMiJ9LmZhLWNvbXByZXNzLWFycm93cy1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNzhjIn0uZmEtY29uY2llcmdlLWJlbGw6YmVmb3Jle2NvbnRlbnQ6IlxmNTYyIn0uZmEtY29uZmx1ZW5jZTpiZWZvcmV7Y29udGVudDoiXGY3OGQifS5mYS1jb25uZWN0ZGV2ZWxvcDpiZWZvcmV7Y29udGVudDoiXGYyMGUifS5mYS1jb250YW86YmVmb3Jle2NvbnRlbnQ6IlxmMjZkIn0uZmEtY29va2llOmJlZm9yZXtjb250ZW50OiJcZjU2MyJ9LmZhLWNvb2tpZS1iaXRlOmJlZm9yZXtjb250ZW50OiJcZjU2NCJ9LmZhLWNvcHk6YmVmb3Jle2NvbnRlbnQ6IlxmMGM1In0uZmEtY29weXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjFmOSJ9LmZhLWNvdHRvbi1idXJlYXU6YmVmb3Jle2NvbnRlbnQ6IlxmODllIn0uZmEtY291Y2g6YmVmb3Jle2NvbnRlbnQ6IlxmNGI4In0uZmEtY3BhbmVsOmJlZm9yZXtjb250ZW50OiJcZjM4OCJ9LmZhLWNyZWF0aXZlLWNvbW1vbnM6YmVmb3Jle2NvbnRlbnQ6IlxmMjVlIn0uZmEtY3JlYXRpdmUtY29tbW9ucy1ieTpiZWZvcmV7Y29udGVudDoiXGY0ZTcifS5mYS1jcmVhdGl2ZS1jb21tb25zLW5jOmJlZm9yZXtjb250ZW50OiJcZjRlOCJ9LmZhLWNyZWF0aXZlLWNvbW1vbnMtbmMtZXU6YmVmb3Jle2NvbnRlbnQ6IlxmNGU5In0uZmEtY3JlYXRpdmUtY29tbW9ucy1uYy1qcDpiZWZvcmV7Y29udGVudDoiXGY0ZWEifS5mYS1jcmVhdGl2ZS1jb21tb25zLW5kOmJlZm9yZXtjb250ZW50OiJcZjRlYiJ9LmZhLWNyZWF0aXZlLWNvbW1vbnMtcGQ6YmVmb3Jle2NvbnRlbnQ6IlxmNGVjIn0uZmEtY3JlYXRpdmUtY29tbW9ucy1wZC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNGVkIn0uZmEtY3JlYXRpdmUtY29tbW9ucy1yZW1peDpiZWZvcmV7Y29udGVudDoiXGY0ZWUifS5mYS1jcmVhdGl2ZS1jb21tb25zLXNhOmJlZm9yZXtjb250ZW50OiJcZjRlZiJ9LmZhLWNyZWF0aXZlLWNvbW1vbnMtc2FtcGxpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmNGYwIn0uZmEtY3JlYXRpdmUtY29tbW9ucy1zYW1wbGluZy1wbHVzOmJlZm9yZXtjb250ZW50OiJcZjRmMSJ9LmZhLWNyZWF0aXZlLWNvbW1vbnMtc2hhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmNGYyIn0uZmEtY3JlYXRpdmUtY29tbW9ucy16ZXJvOmJlZm9yZXtjb250ZW50OiJcZjRmMyJ9LmZhLWNyZWRpdC1jYXJkOmJlZm9yZXtjb250ZW50OiJcZjA5ZCJ9LmZhLWNyaXRpY2FsLXJvbGU6YmVmb3Jle2NvbnRlbnQ6IlxmNmM5In0uZmEtY3JvcDpiZWZvcmV7Y29udGVudDoiXGYxMjUifS5mYS1jcm9wLWFsdDpiZWZvcmV7Y29udGVudDoiXGY1NjUifS5mYS1jcm9zczpiZWZvcmV7Y29udGVudDoiXGY2NTQifS5mYS1jcm9zc2hhaXJzOmJlZm9yZXtjb250ZW50OiJcZjA1YiJ9LmZhLWNyb3c6YmVmb3Jle2NvbnRlbnQ6IlxmNTIwIn0uZmEtY3Jvd246YmVmb3Jle2NvbnRlbnQ6IlxmNTIxIn0uZmEtY3J1dGNoOmJlZm9yZXtjb250ZW50OiJcZjdmNyJ9LmZhLWNzczM6YmVmb3Jle2NvbnRlbnQ6IlxmMTNjIn0uZmEtY3NzMy1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzhiIn0uZmEtY3ViZTpiZWZvcmV7Y29udGVudDoiXGYxYjIifS5mYS1jdWJlczpiZWZvcmV7Y29udGVudDoiXGYxYjMifS5mYS1jdXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGM0In0uZmEtY3V0dGxlZmlzaDpiZWZvcmV7Y29udGVudDoiXGYzOGMifS5mYS1kLWFuZC1kOmJlZm9yZXtjb250ZW50OiJcZjM4ZCJ9LmZhLWQtYW5kLWQtYmV5b25kOmJlZm9yZXtjb250ZW50OiJcZjZjYSJ9LmZhLWRhaWx5bW90aW9uOmJlZm9yZXtjb250ZW50OiJcZTA1MiJ9LmZhLWRhc2hjdWJlOmJlZm9yZXtjb250ZW50OiJcZjIxMCJ9LmZhLWRhdGFiYXNlOmJlZm9yZXtjb250ZW50OiJcZjFjMCJ9LmZhLWRlYWY6YmVmb3Jle2NvbnRlbnQ6IlxmMmE0In0uZmEtZGVlemVyOmJlZm9yZXtjb250ZW50OiJcZTA3NyJ9LmZhLWRlbGljaW91czpiZWZvcmV7Y29udGVudDoiXGYxYTUifS5mYS1kZW1vY3JhdDpiZWZvcmV7Y29udGVudDoiXGY3NDcifS5mYS1kZXBsb3lkb2c6YmVmb3Jle2NvbnRlbnQ6IlxmMzhlIn0uZmEtZGVza3BybzpiZWZvcmV7Y29udGVudDoiXGYzOGYifS5mYS1kZXNrdG9wOmJlZm9yZXtjb250ZW50OiJcZjEwOCJ9LmZhLWRldjpiZWZvcmV7Y29udGVudDoiXGY2Y2MifS5mYS1kZXZpYW50YXJ0OmJlZm9yZXtjb250ZW50OiJcZjFiZCJ9LmZhLWRoYXJtYWNoYWtyYTpiZWZvcmV7Y29udGVudDoiXGY2NTUifS5mYS1kaGw6YmVmb3Jle2NvbnRlbnQ6IlxmNzkwIn0uZmEtZGlhZ25vc2VzOmJlZm9yZXtjb250ZW50OiJcZjQ3MCJ9LmZhLWRpYXNwb3JhOmJlZm9yZXtjb250ZW50OiJcZjc5MSJ9LmZhLWRpY2U6YmVmb3Jle2NvbnRlbnQ6IlxmNTIyIn0uZmEtZGljZS1kMjA6YmVmb3Jle2NvbnRlbnQ6IlxmNmNmIn0uZmEtZGljZS1kNjpiZWZvcmV7Y29udGVudDoiXGY2ZDEifS5mYS1kaWNlLWZpdmU6YmVmb3Jle2NvbnRlbnQ6IlxmNTIzIn0uZmEtZGljZS1mb3VyOmJlZm9yZXtjb250ZW50OiJcZjUyNCJ9LmZhLWRpY2Utb25lOmJlZm9yZXtjb250ZW50OiJcZjUyNSJ9LmZhLWRpY2Utc2l4OmJlZm9yZXtjb250ZW50OiJcZjUyNiJ9LmZhLWRpY2UtdGhyZWU6YmVmb3Jle2NvbnRlbnQ6IlxmNTI3In0uZmEtZGljZS10d286YmVmb3Jle2NvbnRlbnQ6IlxmNTI4In0uZmEtZGlnZzpiZWZvcmV7Y29udGVudDoiXGYxYTYifS5mYS1kaWdpdGFsLW9jZWFuOmJlZm9yZXtjb250ZW50OiJcZjM5MSJ9LmZhLWRpZ2l0YWwtdGFjaG9ncmFwaDpiZWZvcmV7Y29udGVudDoiXGY1NjYifS5mYS1kaXJlY3Rpb25zOmJlZm9yZXtjb250ZW50OiJcZjVlYiJ9LmZhLWRpc2NvcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzkyIn0uZmEtZGlzY291cnNlOmJlZm9yZXtjb250ZW50OiJcZjM5MyJ9LmZhLWRpc2Vhc2U6YmVmb3Jle2NvbnRlbnQ6IlxmN2ZhIn0uZmEtZGl2aWRlOmJlZm9yZXtjb250ZW50OiJcZjUyOSJ9LmZhLWRpenp5OmJlZm9yZXtjb250ZW50OiJcZjU2NyJ9LmZhLWRuYTpiZWZvcmV7Y29udGVudDoiXGY0NzEifS5mYS1kb2NodWI6YmVmb3Jle2NvbnRlbnQ6IlxmMzk0In0uZmEtZG9ja2VyOmJlZm9yZXtjb250ZW50OiJcZjM5NSJ9LmZhLWRvZzpiZWZvcmV7Y29udGVudDoiXGY2ZDMifS5mYS1kb2xsYXItc2lnbjpiZWZvcmV7Y29udGVudDoiXGYxNTUifS5mYS1kb2xseTpiZWZvcmV7Y29udGVudDoiXGY0NzIifS5mYS1kb2xseS1mbGF0YmVkOmJlZm9yZXtjb250ZW50OiJcZjQ3NCJ9LmZhLWRvbmF0ZTpiZWZvcmV7Y29udGVudDoiXGY0YjkifS5mYS1kb29yLWNsb3NlZDpiZWZvcmV7Y29udGVudDoiXGY1MmEifS5mYS1kb29yLW9wZW46YmVmb3Jle2NvbnRlbnQ6IlxmNTJiIn0uZmEtZG90LWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGYxOTIifS5mYS1kb3ZlOmJlZm9yZXtjb250ZW50OiJcZjRiYSJ9LmZhLWRvd25sb2FkOmJlZm9yZXtjb250ZW50OiJcZjAxOSJ9LmZhLWRyYWZ0MmRpZ2l0YWw6YmVmb3Jle2NvbnRlbnQ6IlxmMzk2In0uZmEtZHJhZnRpbmctY29tcGFzczpiZWZvcmV7Y29udGVudDoiXGY1NjgifS5mYS1kcmFnb246YmVmb3Jle2NvbnRlbnQ6IlxmNmQ1In0uZmEtZHJhdy1wb2x5Z29uOmJlZm9yZXtjb250ZW50OiJcZjVlZSJ9LmZhLWRyaWJiYmxlOmJlZm9yZXtjb250ZW50OiJcZjE3ZCJ9LmZhLWRyaWJiYmxlLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYzOTcifS5mYS1kcm9wYm94OmJlZm9yZXtjb250ZW50OiJcZjE2YiJ9LmZhLWRydW06YmVmb3Jle2NvbnRlbnQ6IlxmNTY5In0uZmEtZHJ1bS1zdGVlbHBhbjpiZWZvcmV7Y29udGVudDoiXGY1NmEifS5mYS1kcnVtc3RpY2stYml0ZTpiZWZvcmV7Y29udGVudDoiXGY2ZDcifS5mYS1kcnVwYWw6YmVmb3Jle2NvbnRlbnQ6IlxmMWE5In0uZmEtZHVtYmJlbGw6YmVmb3Jle2NvbnRlbnQ6IlxmNDRiIn0uZmEtZHVtcHN0ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNzkzIn0uZmEtZHVtcHN0ZXItZmlyZTpiZWZvcmV7Y29udGVudDoiXGY3OTQifS5mYS1kdW5nZW9uOmJlZm9yZXtjb250ZW50OiJcZjZkOSJ9LmZhLWR5YWxvZzpiZWZvcmV7Y29udGVudDoiXGYzOTkifS5mYS1lYXJseWJpcmRzOmJlZm9yZXtjb250ZW50OiJcZjM5YSJ9LmZhLWViYXk6YmVmb3Jle2NvbnRlbnQ6IlxmNGY0In0uZmEtZWRnZTpiZWZvcmV7Y29udGVudDoiXGYyODIifS5mYS1lZGdlLWxlZ2FjeTpiZWZvcmV7Y29udGVudDoiXGUwNzgifS5mYS1lZGl0OmJlZm9yZXtjb250ZW50OiJcZjA0NCJ9LmZhLWVnZzpiZWZvcmV7Y29udGVudDoiXGY3ZmIifS5mYS1lamVjdDpiZWZvcmV7Y29udGVudDoiXGYwNTIifS5mYS1lbGVtZW50b3I6YmVmb3Jle2NvbnRlbnQ6IlxmNDMwIn0uZmEtZWxsaXBzaXMtaDpiZWZvcmV7Y29udGVudDoiXGYxNDEifS5mYS1lbGxpcHNpcy12OmJlZm9yZXtjb250ZW50OiJcZjE0MiJ9LmZhLWVsbG86YmVmb3Jle2NvbnRlbnQ6IlxmNWYxIn0uZmEtZW1iZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNDIzIn0uZmEtZW1waXJlOmJlZm9yZXtjb250ZW50OiJcZjFkMSJ9LmZhLWVudmVsb3BlOmJlZm9yZXtjb250ZW50OiJcZjBlMCJ9LmZhLWVudmVsb3BlLW9wZW46YmVmb3Jle2NvbnRlbnQ6IlxmMmI2In0uZmEtZW52ZWxvcGUtb3Blbi10ZXh0OmJlZm9yZXtjb250ZW50OiJcZjY1OCJ9LmZhLWVudmVsb3BlLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYxOTkifS5mYS1lbnZpcmE6YmVmb3Jle2NvbnRlbnQ6IlxmMjk5In0uZmEtZXF1YWxzOmJlZm9yZXtjb250ZW50OiJcZjUyYyJ9LmZhLWVyYXNlcjpiZWZvcmV7Y29udGVudDoiXGYxMmQifS5mYS1lcmxhbmc6YmVmb3Jle2NvbnRlbnQ6IlxmMzlkIn0uZmEtZXRoZXJldW06YmVmb3Jle2NvbnRlbnQ6IlxmNDJlIn0uZmEtZXRoZXJuZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmNzk2In0uZmEtZXRzeTpiZWZvcmV7Y29udGVudDoiXGYyZDcifS5mYS1ldXJvLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxmMTUzIn0uZmEtZXZlcm5vdGU6YmVmb3Jle2NvbnRlbnQ6IlxmODM5In0uZmEtZXhjaGFuZ2UtYWx0OmJlZm9yZXtjb250ZW50OiJcZjM2MiJ9LmZhLWV4Y2xhbWF0aW9uOmJlZm9yZXtjb250ZW50OiJcZjEyYSJ9LmZhLWV4Y2xhbWF0aW9uLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGYwNmEifS5mYS1leGNsYW1hdGlvbi10cmlhbmdsZTpiZWZvcmV7Y29udGVudDoiXGYwNzEifS5mYS1leHBhbmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDY1In0uZmEtZXhwYW5kLWFsdDpiZWZvcmV7Y29udGVudDoiXGY0MjQifS5mYS1leHBhbmQtYXJyb3dzLWFsdDpiZWZvcmV7Y29udGVudDoiXGYzMWUifS5mYS1leHBlZGl0ZWRzc2w6YmVmb3Jle2NvbnRlbnQ6IlxmMjNlIn0uZmEtZXh0ZXJuYWwtbGluay1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzVkIn0uZmEtZXh0ZXJuYWwtbGluay1zcXVhcmUtYWx0OmJlZm9yZXtjb250ZW50OiJcZjM2MCJ9LmZhLWV5ZTpiZWZvcmV7Y29udGVudDoiXGYwNmUifS5mYS1leWUtZHJvcHBlcjpiZWZvcmV7Y29udGVudDoiXGYxZmIifS5mYS1leWUtc2xhc2g6YmVmb3Jle2NvbnRlbnQ6IlxmMDcwIn0uZmEtZmFjZWJvb2s6YmVmb3Jle2NvbnRlbnQ6IlxmMDlhIn0uZmEtZmFjZWJvb2stZjpiZWZvcmV7Y29udGVudDoiXGYzOWUifS5mYS1mYWNlYm9vay1tZXNzZW5nZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMzlmIn0uZmEtZmFjZWJvb2stc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjA4MiJ9LmZhLWZhbjpiZWZvcmV7Y29udGVudDoiXGY4NjMifS5mYS1mYW50YXN5LWZsaWdodC1nYW1lczpiZWZvcmV7Y29udGVudDoiXGY2ZGMifS5mYS1mYXN0LWJhY2t3YXJkOmJlZm9yZXtjb250ZW50OiJcZjA0OSJ9LmZhLWZhc3QtZm9yd2FyZDpiZWZvcmV7Y29udGVudDoiXGYwNTAifS5mYS1mYXVjZXQ6YmVmb3Jle2NvbnRlbnQ6IlxlMDA1In0uZmEtZmF4OmJlZm9yZXtjb250ZW50OiJcZjFhYyJ9LmZhLWZlYXRoZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNTJkIn0uZmEtZmVhdGhlci1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTZiIn0uZmEtZmVkZXg6YmVmb3Jle2NvbnRlbnQ6IlxmNzk3In0uZmEtZmVkb3JhOmJlZm9yZXtjb250ZW50OiJcZjc5OCJ9LmZhLWZlbWFsZTpiZWZvcmV7Y29udGVudDoiXGYxODIifS5mYS1maWdodGVyLWpldDpiZWZvcmV7Y29udGVudDoiXGYwZmIifS5mYS1maWdtYTpiZWZvcmV7Y29udGVudDoiXGY3OTkifS5mYS1maWxlOmJlZm9yZXtjb250ZW50OiJcZjE1YiJ9LmZhLWZpbGUtYWx0OmJlZm9yZXtjb250ZW50OiJcZjE1YyJ9LmZhLWZpbGUtYXJjaGl2ZTpiZWZvcmV7Y29udGVudDoiXGYxYzYifS5mYS1maWxlLWF1ZGlvOmJlZm9yZXtjb250ZW50OiJcZjFjNyJ9LmZhLWZpbGUtY29kZTpiZWZvcmV7Y29udGVudDoiXGYxYzkifS5mYS1maWxlLWNvbnRyYWN0OmJlZm9yZXtjb250ZW50OiJcZjU2YyJ9LmZhLWZpbGUtY3N2OmJlZm9yZXtjb250ZW50OiJcZjZkZCJ9LmZhLWZpbGUtZG93bmxvYWQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTZkIn0uZmEtZmlsZS1leGNlbDpiZWZvcmV7Y29udGVudDoiXGYxYzMifS5mYS1maWxlLWV4cG9ydDpiZWZvcmV7Y29udGVudDoiXGY1NmUifS5mYS1maWxlLWltYWdlOmJlZm9yZXtjb250ZW50OiJcZjFjNSJ9LmZhLWZpbGUtaW1wb3J0OmJlZm9yZXtjb250ZW50OiJcZjU2ZiJ9LmZhLWZpbGUtaW52b2ljZTpiZWZvcmV7Y29udGVudDoiXGY1NzAifS5mYS1maWxlLWludm9pY2UtZG9sbGFyOmJlZm9yZXtjb250ZW50OiJcZjU3MSJ9LmZhLWZpbGUtbWVkaWNhbDpiZWZvcmV7Y29udGVudDoiXGY0NzcifS5mYS1maWxlLW1lZGljYWwtYWx0OmJlZm9yZXtjb250ZW50OiJcZjQ3OCJ9LmZhLWZpbGUtcGRmOmJlZm9yZXtjb250ZW50OiJcZjFjMSJ9LmZhLWZpbGUtcG93ZXJwb2ludDpiZWZvcmV7Y29udGVudDoiXGYxYzQifS5mYS1maWxlLXByZXNjcmlwdGlvbjpiZWZvcmV7Y29udGVudDoiXGY1NzIifS5mYS1maWxlLXNpZ25hdHVyZTpiZWZvcmV7Y29udGVudDoiXGY1NzMifS5mYS1maWxlLXVwbG9hZDpiZWZvcmV7Y29udGVudDoiXGY1NzQifS5mYS1maWxlLXZpZGVvOmJlZm9yZXtjb250ZW50OiJcZjFjOCJ9LmZhLWZpbGUtd29yZDpiZWZvcmV7Y29udGVudDoiXGYxYzIifS5mYS1maWxsOmJlZm9yZXtjb250ZW50OiJcZjU3NSJ9LmZhLWZpbGwtZHJpcDpiZWZvcmV7Y29udGVudDoiXGY1NzYifS5mYS1maWxtOmJlZm9yZXtjb250ZW50OiJcZjAwOCJ9LmZhLWZpbHRlcjpiZWZvcmV7Y29udGVudDoiXGYwYjAifS5mYS1maW5nZXJwcmludDpiZWZvcmV7Y29udGVudDoiXGY1NzcifS5mYS1maXJlOmJlZm9yZXtjb250ZW50OiJcZjA2ZCJ9LmZhLWZpcmUtYWx0OmJlZm9yZXtjb250ZW50OiJcZjdlNCJ9LmZhLWZpcmUtZXh0aW5ndWlzaGVyOmJlZm9yZXtjb250ZW50OiJcZjEzNCJ9LmZhLWZpcmVmb3g6YmVmb3Jle2NvbnRlbnQ6IlxmMjY5In0uZmEtZmlyZWZveC1icm93c2VyOmJlZm9yZXtjb250ZW50OiJcZTAwNyJ9LmZhLWZpcnN0LWFpZDpiZWZvcmV7Y29udGVudDoiXGY0NzkifS5mYS1maXJzdC1vcmRlcjpiZWZvcmV7Y29udGVudDoiXGYyYjAifS5mYS1maXJzdC1vcmRlci1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTBhIn0uZmEtZmlyc3RkcmFmdDpiZWZvcmV7Y29udGVudDoiXGYzYTEifS5mYS1maXNoOmJlZm9yZXtjb250ZW50OiJcZjU3OCJ9LmZhLWZpc3QtcmFpc2VkOmJlZm9yZXtjb250ZW50OiJcZjZkZSJ9LmZhLWZsYWc6YmVmb3Jle2NvbnRlbnQ6IlxmMDI0In0uZmEtZmxhZy1jaGVja2VyZWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTFlIn0uZmEtZmxhZy11c2E6YmVmb3Jle2NvbnRlbnQ6IlxmNzRkIn0uZmEtZmxhc2s6YmVmb3Jle2NvbnRlbnQ6IlxmMGMzIn0uZmEtZmxpY2tyOmJlZm9yZXtjb250ZW50OiJcZjE2ZSJ9LmZhLWZsaXBib2FyZDpiZWZvcmV7Y29udGVudDoiXGY0NGQifS5mYS1mbHVzaGVkOmJlZm9yZXtjb250ZW50OiJcZjU3OSJ9LmZhLWZseTpiZWZvcmV7Y29udGVudDoiXGY0MTcifS5mYS1mb2xkZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMDdiIn0uZmEtZm9sZGVyLW1pbnVzOmJlZm9yZXtjb250ZW50OiJcZjY1ZCJ9LmZhLWZvbGRlci1vcGVuOmJlZm9yZXtjb250ZW50OiJcZjA3YyJ9LmZhLWZvbGRlci1wbHVzOmJlZm9yZXtjb250ZW50OiJcZjY1ZSJ9LmZhLWZvbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDMxIn0uZmEtZm9udC1hd2Vzb21lOmJlZm9yZXtjb250ZW50OiJcZjJiNCJ9LmZhLWZvbnQtYXdlc29tZS1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzVjIn0uZmEtZm9udC1hd2Vzb21lLWZsYWc6YmVmb3Jle2NvbnRlbnQ6IlxmNDI1In0uZmEtZm9udC1hd2Vzb21lLWxvZ28tZnVsbDpiZWZvcmV7Y29udGVudDoiXGY0ZTYifS5mYS1mb250aWNvbnM6YmVmb3Jle2NvbnRlbnQ6IlxmMjgwIn0uZmEtZm9udGljb25zLWZpOmJlZm9yZXtjb250ZW50OiJcZjNhMiJ9LmZhLWZvb3RiYWxsLWJhbGw6YmVmb3Jle2NvbnRlbnQ6IlxmNDRlIn0uZmEtZm9ydC1hd2Vzb21lOmJlZm9yZXtjb250ZW50OiJcZjI4NiJ9LmZhLWZvcnQtYXdlc29tZS1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2EzIn0uZmEtZm9ydW1iZWU6YmVmb3Jle2NvbnRlbnQ6IlxmMjExIn0uZmEtZm9yd2FyZDpiZWZvcmV7Y29udGVudDoiXGYwNGUifS5mYS1mb3Vyc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjE4MCJ9LmZhLWZyZWUtY29kZS1jYW1wOmJlZm9yZXtjb250ZW50OiJcZjJjNSJ9LmZhLWZyZWVic2Q6YmVmb3Jle2NvbnRlbnQ6IlxmM2E0In0uZmEtZnJvZzpiZWZvcmV7Y29udGVudDoiXGY1MmUifS5mYS1mcm93bjpiZWZvcmV7Y29udGVudDoiXGYxMTkifS5mYS1mcm93bi1vcGVuOmJlZm9yZXtjb250ZW50OiJcZjU3YSJ9LmZhLWZ1bGNydW06YmVmb3Jle2NvbnRlbnQ6IlxmNTBiIn0uZmEtZnVubmVsLWRvbGxhcjpiZWZvcmV7Y29udGVudDoiXGY2NjIifS5mYS1mdXRib2w6YmVmb3Jle2NvbnRlbnQ6IlxmMWUzIn0uZmEtZ2FsYWN0aWMtcmVwdWJsaWM6YmVmb3Jle2NvbnRlbnQ6IlxmNTBjIn0uZmEtZ2FsYWN0aWMtc2VuYXRlOmJlZm9yZXtjb250ZW50OiJcZjUwZCJ9LmZhLWdhbWVwYWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTFiIn0uZmEtZ2FzLXB1bXA6YmVmb3Jle2NvbnRlbnQ6IlxmNTJmIn0uZmEtZ2F2ZWw6YmVmb3Jle2NvbnRlbnQ6IlxmMGUzIn0uZmEtZ2VtOmJlZm9yZXtjb250ZW50OiJcZjNhNSJ9LmZhLWdlbmRlcmxlc3M6YmVmb3Jle2NvbnRlbnQ6IlxmMjJkIn0uZmEtZ2V0LXBvY2tldDpiZWZvcmV7Y29udGVudDoiXGYyNjUifS5mYS1nZzpiZWZvcmV7Y29udGVudDoiXGYyNjAifS5mYS1nZy1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMjYxIn0uZmEtZ2hvc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmNmUyIn0uZmEtZ2lmdDpiZWZvcmV7Y29udGVudDoiXGYwNmIifS5mYS1naWZ0czpiZWZvcmV7Y29udGVudDoiXGY3OWMifS5mYS1naXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMWQzIn0uZmEtZ2l0LWFsdDpiZWZvcmV7Y29udGVudDoiXGY4NDEifS5mYS1naXQtc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjFkMiJ9LmZhLWdpdGh1YjpiZWZvcmV7Y29udGVudDoiXGYwOWIifS5mYS1naXRodWItYWx0OmJlZm9yZXtjb250ZW50OiJcZjExMyJ9LmZhLWdpdGh1Yi1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMDkyIn0uZmEtZ2l0a3Jha2VuOmJlZm9yZXtjb250ZW50OiJcZjNhNiJ9LmZhLWdpdGxhYjpiZWZvcmV7Y29udGVudDoiXGYyOTYifS5mYS1naXR0ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNDI2In0uZmEtZ2xhc3MtY2hlZXJzOmJlZm9yZXtjb250ZW50OiJcZjc5ZiJ9LmZhLWdsYXNzLW1hcnRpbmk6YmVmb3Jle2NvbnRlbnQ6IlxmMDAwIn0uZmEtZ2xhc3MtbWFydGluaS1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTdiIn0uZmEtZ2xhc3Mtd2hpc2tleTpiZWZvcmV7Y29udGVudDoiXGY3YTAifS5mYS1nbGFzc2VzOmJlZm9yZXtjb250ZW50OiJcZjUzMCJ9LmZhLWdsaWRlOmJlZm9yZXtjb250ZW50OiJcZjJhNSJ9LmZhLWdsaWRlLWc6YmVmb3Jle2NvbnRlbnQ6IlxmMmE2In0uZmEtZ2xvYmU6YmVmb3Jle2NvbnRlbnQ6IlxmMGFjIn0uZmEtZ2xvYmUtYWZyaWNhOmJlZm9yZXtjb250ZW50OiJcZjU3YyJ9LmZhLWdsb2JlLWFtZXJpY2FzOmJlZm9yZXtjb250ZW50OiJcZjU3ZCJ9LmZhLWdsb2JlLWFzaWE6YmVmb3Jle2NvbnRlbnQ6IlxmNTdlIn0uZmEtZ2xvYmUtZXVyb3BlOmJlZm9yZXtjb250ZW50OiJcZjdhMiJ9LmZhLWdvZm9yZTpiZWZvcmV7Y29udGVudDoiXGYzYTcifS5mYS1nb2xmLWJhbGw6YmVmb3Jle2NvbnRlbnQ6IlxmNDUwIn0uZmEtZ29vZHJlYWRzOmJlZm9yZXtjb250ZW50OiJcZjNhOCJ9LmZhLWdvb2RyZWFkcy1nOmJlZm9yZXtjb250ZW50OiJcZjNhOSJ9LmZhLWdvb2dsZTpiZWZvcmV7Y29udGVudDoiXGYxYTAifS5mYS1nb29nbGUtZHJpdmU6YmVmb3Jle2NvbnRlbnQ6IlxmM2FhIn0uZmEtZ29vZ2xlLXBheTpiZWZvcmV7Y29udGVudDoiXGUwNzkifS5mYS1nb29nbGUtcGxheTpiZWZvcmV7Y29udGVudDoiXGYzYWIifS5mYS1nb29nbGUtcGx1czpiZWZvcmV7Y29udGVudDoiXGYyYjMifS5mYS1nb29nbGUtcGx1cy1nOmJlZm9yZXtjb250ZW50OiJcZjBkNSJ9LmZhLWdvb2dsZS1wbHVzLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYwZDQifS5mYS1nb29nbGUtd2FsbGV0OmJlZm9yZXtjb250ZW50OiJcZjFlZSJ9LmZhLWdvcHVyYW06YmVmb3Jle2NvbnRlbnQ6IlxmNjY0In0uZmEtZ3JhZHVhdGlvbi1jYXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTlkIn0uZmEtZ3JhdGlwYXk6YmVmb3Jle2NvbnRlbnQ6IlxmMTg0In0uZmEtZ3JhdjpiZWZvcmV7Y29udGVudDoiXGYyZDYifS5mYS1ncmVhdGVyLXRoYW46YmVmb3Jle2NvbnRlbnQ6IlxmNTMxIn0uZmEtZ3JlYXRlci10aGFuLWVxdWFsOmJlZm9yZXtjb250ZW50OiJcZjUzMiJ9LmZhLWdyaW1hY2U6YmVmb3Jle2NvbnRlbnQ6IlxmNTdmIn0uZmEtZ3JpbjpiZWZvcmV7Y29udGVudDoiXGY1ODAifS5mYS1ncmluLWFsdDpiZWZvcmV7Y29udGVudDoiXGY1ODEifS5mYS1ncmluLWJlYW06YmVmb3Jle2NvbnRlbnQ6IlxmNTgyIn0uZmEtZ3Jpbi1iZWFtLXN3ZWF0OmJlZm9yZXtjb250ZW50OiJcZjU4MyJ9LmZhLWdyaW4taGVhcnRzOmJlZm9yZXtjb250ZW50OiJcZjU4NCJ9LmZhLWdyaW4tc3F1aW50OmJlZm9yZXtjb250ZW50OiJcZjU4NSJ9LmZhLWdyaW4tc3F1aW50LXRlYXJzOmJlZm9yZXtjb250ZW50OiJcZjU4NiJ9LmZhLWdyaW4tc3RhcnM6YmVmb3Jle2NvbnRlbnQ6IlxmNTg3In0uZmEtZ3Jpbi10ZWFyczpiZWZvcmV7Y29udGVudDoiXGY1ODgifS5mYS1ncmluLXRvbmd1ZTpiZWZvcmV7Y29udGVudDoiXGY1ODkifS5mYS1ncmluLXRvbmd1ZS1zcXVpbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmNThhIn0uZmEtZ3Jpbi10b25ndWUtd2luazpiZWZvcmV7Y29udGVudDoiXGY1OGIifS5mYS1ncmluLXdpbms6YmVmb3Jle2NvbnRlbnQ6IlxmNThjIn0uZmEtZ3JpcC1ob3Jpem9udGFsOmJlZm9yZXtjb250ZW50OiJcZjU4ZCJ9LmZhLWdyaXAtbGluZXM6YmVmb3Jle2NvbnRlbnQ6IlxmN2E0In0uZmEtZ3JpcC1saW5lcy12ZXJ0aWNhbDpiZWZvcmV7Y29udGVudDoiXGY3YTUifS5mYS1ncmlwLXZlcnRpY2FsOmJlZm9yZXtjb250ZW50OiJcZjU4ZSJ9LmZhLWdyaXBmaXJlOmJlZm9yZXtjb250ZW50OiJcZjNhYyJ9LmZhLWdydW50OmJlZm9yZXtjb250ZW50OiJcZjNhZCJ9LmZhLWd1aWxkZWQ6YmVmb3Jle2NvbnRlbnQ6IlxlMDdlIn0uZmEtZ3VpdGFyOmJlZm9yZXtjb250ZW50OiJcZjdhNiJ9LmZhLWd1bHA6YmVmb3Jle2NvbnRlbnQ6IlxmM2FlIn0uZmEtaC1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMGZkIn0uZmEtaGFja2VyLW5ld3M6YmVmb3Jle2NvbnRlbnQ6IlxmMWQ0In0uZmEtaGFja2VyLW5ld3Mtc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjNhZiJ9LmZhLWhhY2tlcnJhbms6YmVmb3Jle2NvbnRlbnQ6IlxmNWY3In0uZmEtaGFtYnVyZ2VyOmJlZm9yZXtjb250ZW50OiJcZjgwNSJ9LmZhLWhhbW1lcjpiZWZvcmV7Y29udGVudDoiXGY2ZTMifS5mYS1oYW1zYTpiZWZvcmV7Y29udGVudDoiXGY2NjUifS5mYS1oYW5kLWhvbGRpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmNGJkIn0uZmEtaGFuZC1ob2xkaW5nLWhlYXJ0OmJlZm9yZXtjb250ZW50OiJcZjRiZSJ9LmZhLWhhbmQtaG9sZGluZy1tZWRpY2FsOmJlZm9yZXtjb250ZW50OiJcZTA1YyJ9LmZhLWhhbmQtaG9sZGluZy11c2Q6YmVmb3Jle2NvbnRlbnQ6IlxmNGMwIn0uZmEtaGFuZC1ob2xkaW5nLXdhdGVyOmJlZm9yZXtjb250ZW50OiJcZjRjMSJ9LmZhLWhhbmQtbGl6YXJkOmJlZm9yZXtjb250ZW50OiJcZjI1OCJ9LmZhLWhhbmQtbWlkZGxlLWZpbmdlcjpiZWZvcmV7Y29udGVudDoiXGY4MDYifS5mYS1oYW5kLXBhcGVyOmJlZm9yZXtjb250ZW50OiJcZjI1NiJ9LmZhLWhhbmQtcGVhY2U6YmVmb3Jle2NvbnRlbnQ6IlxmMjViIn0uZmEtaGFuZC1wb2ludC1kb3duOmJlZm9yZXtjb250ZW50OiJcZjBhNyJ9LmZhLWhhbmQtcG9pbnQtbGVmdDpiZWZvcmV7Y29udGVudDoiXGYwYTUifS5mYS1oYW5kLXBvaW50LXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjBhNCJ9LmZhLWhhbmQtcG9pbnQtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMGE2In0uZmEtaGFuZC1wb2ludGVyOmJlZm9yZXtjb250ZW50OiJcZjI1YSJ9LmZhLWhhbmQtcm9jazpiZWZvcmV7Y29udGVudDoiXGYyNTUifS5mYS1oYW5kLXNjaXNzb3JzOmJlZm9yZXtjb250ZW50OiJcZjI1NyJ9LmZhLWhhbmQtc3BhcmtsZXM6YmVmb3Jle2NvbnRlbnQ6IlxlMDVkIn0uZmEtaGFuZC1zcG9jazpiZWZvcmV7Y29udGVudDoiXGYyNTkifS5mYS1oYW5kczpiZWZvcmV7Y29udGVudDoiXGY0YzIifS5mYS1oYW5kcy1oZWxwaW5nOmJlZm9yZXtjb250ZW50OiJcZjRjNCJ9LmZhLWhhbmRzLXdhc2g6YmVmb3Jle2NvbnRlbnQ6IlxlMDVlIn0uZmEtaGFuZHNoYWtlOmJlZm9yZXtjb250ZW50OiJcZjJiNSJ9LmZhLWhhbmRzaGFrZS1hbHQtc2xhc2g6YmVmb3Jle2NvbnRlbnQ6IlxlMDVmIn0uZmEtaGFuZHNoYWtlLXNsYXNoOmJlZm9yZXtjb250ZW50OiJcZTA2MCJ9LmZhLWhhbnVraWFoOmJlZm9yZXtjb250ZW50OiJcZjZlNiJ9LmZhLWhhcmQtaGF0OmJlZm9yZXtjb250ZW50OiJcZjgwNyJ9LmZhLWhhc2h0YWc6YmVmb3Jle2NvbnRlbnQ6IlxmMjkyIn0uZmEtaGF0LWNvd2JveTpiZWZvcmV7Y29udGVudDoiXGY4YzAifS5mYS1oYXQtY293Ym95LXNpZGU6YmVmb3Jle2NvbnRlbnQ6IlxmOGMxIn0uZmEtaGF0LXdpemFyZDpiZWZvcmV7Y29udGVudDoiXGY2ZTgifS5mYS1oZGQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGEwIn0uZmEtaGVhZC1zaWRlLWNvdWdoOmJlZm9yZXtjb250ZW50OiJcZTA2MSJ9LmZhLWhlYWQtc2lkZS1jb3VnaC1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGUwNjIifS5mYS1oZWFkLXNpZGUtbWFzazpiZWZvcmV7Y29udGVudDoiXGUwNjMifS5mYS1oZWFkLXNpZGUtdmlydXM6YmVmb3Jle2NvbnRlbnQ6IlxlMDY0In0uZmEtaGVhZGluZzpiZWZvcmV7Y29udGVudDoiXGYxZGMifS5mYS1oZWFkcGhvbmVzOmJlZm9yZXtjb250ZW50OiJcZjAyNSJ9LmZhLWhlYWRwaG9uZXMtYWx0OmJlZm9yZXtjb250ZW50OiJcZjU4ZiJ9LmZhLWhlYWRzZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTkwIn0uZmEtaGVhcnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDA0In0uZmEtaGVhcnQtYnJva2VuOmJlZm9yZXtjb250ZW50OiJcZjdhOSJ9LmZhLWhlYXJ0YmVhdDpiZWZvcmV7Y29udGVudDoiXGYyMWUifS5mYS1oZWxpY29wdGVyOmJlZm9yZXtjb250ZW50OiJcZjUzMyJ9LmZhLWhpZ2hsaWdodGVyOmJlZm9yZXtjb250ZW50OiJcZjU5MSJ9LmZhLWhpa2luZzpiZWZvcmV7Y29udGVudDoiXGY2ZWMifS5mYS1oaXBwbzpiZWZvcmV7Y29udGVudDoiXGY2ZWQifS5mYS1oaXBzOmJlZm9yZXtjb250ZW50OiJcZjQ1MiJ9LmZhLWhpcmUtYS1oZWxwZXI6YmVmb3Jle2NvbnRlbnQ6IlxmM2IwIn0uZmEtaGlzdG9yeTpiZWZvcmV7Y29udGVudDoiXGYxZGEifS5mYS1oaXZlOmJlZm9yZXtjb250ZW50OiJcZTA3ZiJ9LmZhLWhvY2tleS1wdWNrOmJlZm9yZXtjb250ZW50OiJcZjQ1MyJ9LmZhLWhvbGx5LWJlcnJ5OmJlZm9yZXtjb250ZW50OiJcZjdhYSJ9LmZhLWhvbWU6YmVmb3Jle2NvbnRlbnQ6IlxmMDE1In0uZmEtaG9vbGk6YmVmb3Jle2NvbnRlbnQ6IlxmNDI3In0uZmEtaG9ybmJpbGw6YmVmb3Jle2NvbnRlbnQ6IlxmNTkyIn0uZmEtaG9yc2U6YmVmb3Jle2NvbnRlbnQ6IlxmNmYwIn0uZmEtaG9yc2UtaGVhZDpiZWZvcmV7Y29udGVudDoiXGY3YWIifS5mYS1ob3NwaXRhbDpiZWZvcmV7Y29udGVudDoiXGYwZjgifS5mYS1ob3NwaXRhbC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNDdkIn0uZmEtaG9zcGl0YWwtc3ltYm9sOmJlZm9yZXtjb250ZW50OiJcZjQ3ZSJ9LmZhLWhvc3BpdGFsLXVzZXI6YmVmb3Jle2NvbnRlbnQ6IlxmODBkIn0uZmEtaG90LXR1YjpiZWZvcmV7Y29udGVudDoiXGY1OTMifS5mYS1ob3Rkb2c6YmVmb3Jle2NvbnRlbnQ6IlxmODBmIn0uZmEtaG90ZWw6YmVmb3Jle2NvbnRlbnQ6IlxmNTk0In0uZmEtaG90amFyOmJlZm9yZXtjb250ZW50OiJcZjNiMSJ9LmZhLWhvdXJnbGFzczpiZWZvcmV7Y29udGVudDoiXGYyNTQifS5mYS1ob3VyZ2xhc3MtZW5kOmJlZm9yZXtjb250ZW50OiJcZjI1MyJ9LmZhLWhvdXJnbGFzcy1oYWxmOmJlZm9yZXtjb250ZW50OiJcZjI1MiJ9LmZhLWhvdXJnbGFzcy1zdGFydDpiZWZvcmV7Y29udGVudDoiXGYyNTEifS5mYS1ob3VzZS1kYW1hZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmNmYxIn0uZmEtaG91c2UtdXNlcjpiZWZvcmV7Y29udGVudDoiXGUwNjUifS5mYS1ob3V6ejpiZWZvcmV7Y29udGVudDoiXGYyN2MifS5mYS1ocnl2bmlhOmJlZm9yZXtjb250ZW50OiJcZjZmMiJ9LmZhLWh0bWw1OmJlZm9yZXtjb250ZW50OiJcZjEzYiJ9LmZhLWh1YnNwb3Q6YmVmb3Jle2NvbnRlbnQ6IlxmM2IyIn0uZmEtaS1jdXJzb3I6YmVmb3Jle2NvbnRlbnQ6IlxmMjQ2In0uZmEtaWNlLWNyZWFtOmJlZm9yZXtjb250ZW50OiJcZjgxMCJ9LmZhLWljaWNsZXM6YmVmb3Jle2NvbnRlbnQ6IlxmN2FkIn0uZmEtaWNvbnM6YmVmb3Jle2NvbnRlbnQ6IlxmODZkIn0uZmEtaWQtYmFkZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmMmMxIn0uZmEtaWQtY2FyZDpiZWZvcmV7Y29udGVudDoiXGYyYzIifS5mYS1pZC1jYXJkLWFsdDpiZWZvcmV7Y29udGVudDoiXGY0N2YifS5mYS1pZGVhbDpiZWZvcmV7Y29udGVudDoiXGUwMTMifS5mYS1pZ2xvbzpiZWZvcmV7Y29udGVudDoiXGY3YWUifS5mYS1pbWFnZTpiZWZvcmV7Y29udGVudDoiXGYwM2UifS5mYS1pbWFnZXM6YmVmb3Jle2NvbnRlbnQ6IlxmMzAyIn0uZmEtaW1kYjpiZWZvcmV7Y29udGVudDoiXGYyZDgifS5mYS1pbmJveDpiZWZvcmV7Y29udGVudDoiXGYwMWMifS5mYS1pbmRlbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDNjIn0uZmEtaW5kdXN0cnk6YmVmb3Jle2NvbnRlbnQ6IlxmMjc1In0uZmEtaW5maW5pdHk6YmVmb3Jle2NvbnRlbnQ6IlxmNTM0In0uZmEtaW5mbzpiZWZvcmV7Y29udGVudDoiXGYxMjkifS5mYS1pbmZvLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGYwNWEifS5mYS1pbm5vc29mdDpiZWZvcmV7Y29udGVudDoiXGUwODAifS5mYS1pbnN0YWdyYW06YmVmb3Jle2NvbnRlbnQ6IlxmMTZkIn0uZmEtaW5zdGFncmFtLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGUwNTUifS5mYS1pbnN0YWxvZDpiZWZvcmV7Y29udGVudDoiXGUwODEifS5mYS1pbnRlcmNvbTpiZWZvcmV7Y29udGVudDoiXGY3YWYifS5mYS1pbnRlcm5ldC1leHBsb3JlcjpiZWZvcmV7Y29udGVudDoiXGYyNmIifS5mYS1pbnZpc2lvbjpiZWZvcmV7Y29udGVudDoiXGY3YjAifS5mYS1pb3hob3N0OmJlZm9yZXtjb250ZW50OiJcZjIwOCJ9LmZhLWl0YWxpYzpiZWZvcmV7Y29udGVudDoiXGYwMzMifS5mYS1pdGNoLWlvOmJlZm9yZXtjb250ZW50OiJcZjgzYSJ9LmZhLWl0dW5lczpiZWZvcmV7Y29udGVudDoiXGYzYjQifS5mYS1pdHVuZXMtbm90ZTpiZWZvcmV7Y29udGVudDoiXGYzYjUifS5mYS1qYXZhOmJlZm9yZXtjb250ZW50OiJcZjRlNCJ9LmZhLWplZGk6YmVmb3Jle2NvbnRlbnQ6IlxmNjY5In0uZmEtamVkaS1vcmRlcjpiZWZvcmV7Y29udGVudDoiXGY1MGUifS5mYS1qZW5raW5zOmJlZm9yZXtjb250ZW50OiJcZjNiNiJ9LmZhLWppcmE6YmVmb3Jle2NvbnRlbnQ6IlxmN2IxIn0uZmEtam9nZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2I3In0uZmEtam9pbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTk1In0uZmEtam9vbWxhOmJlZm9yZXtjb250ZW50OiJcZjFhYSJ9LmZhLWpvdXJuYWwtd2hpbGxzOmJlZm9yZXtjb250ZW50OiJcZjY2YSJ9LmZhLWpzOmJlZm9yZXtjb250ZW50OiJcZjNiOCJ9LmZhLWpzLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYzYjkifS5mYS1qc2ZpZGRsZTpiZWZvcmV7Y29udGVudDoiXGYxY2MifS5mYS1rYWFiYTpiZWZvcmV7Y29udGVudDoiXGY2NmIifS5mYS1rYWdnbGU6YmVmb3Jle2NvbnRlbnQ6IlxmNWZhIn0uZmEta2V5OmJlZm9yZXtjb250ZW50OiJcZjA4NCJ9LmZhLWtleWJhc2U6YmVmb3Jle2NvbnRlbnQ6IlxmNGY1In0uZmEta2V5Ym9hcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTFjIn0uZmEta2V5Y2RuOmJlZm9yZXtjb250ZW50OiJcZjNiYSJ9LmZhLWtoYW5kYTpiZWZvcmV7Y29udGVudDoiXGY2NmQifS5mYS1raWNrc3RhcnRlcjpiZWZvcmV7Y29udGVudDoiXGYzYmIifS5mYS1raWNrc3RhcnRlci1rOmJlZm9yZXtjb250ZW50OiJcZjNiYyJ9LmZhLWtpc3M6YmVmb3Jle2NvbnRlbnQ6IlxmNTk2In0uZmEta2lzcy1iZWFtOmJlZm9yZXtjb250ZW50OiJcZjU5NyJ9LmZhLWtpc3Mtd2luay1oZWFydDpiZWZvcmV7Y29udGVudDoiXGY1OTgifS5mYS1raXdpLWJpcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTM1In0uZmEta29ydnVlOmJlZm9yZXtjb250ZW50OiJcZjQyZiJ9LmZhLWxhbmRtYXJrOmJlZm9yZXtjb250ZW50OiJcZjY2ZiJ9LmZhLWxhbmd1YWdlOmJlZm9yZXtjb250ZW50OiJcZjFhYiJ9LmZhLWxhcHRvcDpiZWZvcmV7Y29udGVudDoiXGYxMDkifS5mYS1sYXB0b3AtY29kZTpiZWZvcmV7Y29udGVudDoiXGY1ZmMifS5mYS1sYXB0b3AtaG91c2U6YmVmb3Jle2NvbnRlbnQ6IlxlMDY2In0uZmEtbGFwdG9wLW1lZGljYWw6YmVmb3Jle2NvbnRlbnQ6IlxmODEyIn0uZmEtbGFyYXZlbDpiZWZvcmV7Y29udGVudDoiXGYzYmQifS5mYS1sYXN0Zm06YmVmb3Jle2NvbnRlbnQ6IlxmMjAyIn0uZmEtbGFzdGZtLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYyMDMifS5mYS1sYXVnaDpiZWZvcmV7Y29udGVudDoiXGY1OTkifS5mYS1sYXVnaC1iZWFtOmJlZm9yZXtjb250ZW50OiJcZjU5YSJ9LmZhLWxhdWdoLXNxdWludDpiZWZvcmV7Y29udGVudDoiXGY1OWIifS5mYS1sYXVnaC13aW5rOmJlZm9yZXtjb250ZW50OiJcZjU5YyJ9LmZhLWxheWVyLWdyb3VwOmJlZm9yZXtjb250ZW50OiJcZjVmZCJ9LmZhLWxlYWY6YmVmb3Jle2NvbnRlbnQ6IlxmMDZjIn0uZmEtbGVhbnB1YjpiZWZvcmV7Y29udGVudDoiXGYyMTIifS5mYS1sZW1vbjpiZWZvcmV7Y29udGVudDoiXGYwOTQifS5mYS1sZXNzOmJlZm9yZXtjb250ZW50OiJcZjQxZCJ9LmZhLWxlc3MtdGhhbjpiZWZvcmV7Y29udGVudDoiXGY1MzYifS5mYS1sZXNzLXRoYW4tZXF1YWw6YmVmb3Jle2NvbnRlbnQ6IlxmNTM3In0uZmEtbGV2ZWwtZG93bi1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2JlIn0uZmEtbGV2ZWwtdXAtYWx0OmJlZm9yZXtjb250ZW50OiJcZjNiZiJ9LmZhLWxpZmUtcmluZzpiZWZvcmV7Y29udGVudDoiXGYxY2QifS5mYS1saWdodGJ1bGI6YmVmb3Jle2NvbnRlbnQ6IlxmMGViIn0uZmEtbGluZTpiZWZvcmV7Y29udGVudDoiXGYzYzAifS5mYS1saW5rOmJlZm9yZXtjb250ZW50OiJcZjBjMSJ9LmZhLWxpbmtlZGluOmJlZm9yZXtjb250ZW50OiJcZjA4YyJ9LmZhLWxpbmtlZGluLWluOmJlZm9yZXtjb250ZW50OiJcZjBlMSJ9LmZhLWxpbm9kZTpiZWZvcmV7Y29udGVudDoiXGYyYjgifS5mYS1saW51eDpiZWZvcmV7Y29udGVudDoiXGYxN2MifS5mYS1saXJhLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxmMTk1In0uZmEtbGlzdDpiZWZvcmV7Y29udGVudDoiXGYwM2EifS5mYS1saXN0LWFsdDpiZWZvcmV7Y29udGVudDoiXGYwMjIifS5mYS1saXN0LW9sOmJlZm9yZXtjb250ZW50OiJcZjBjYiJ9LmZhLWxpc3QtdWw6YmVmb3Jle2NvbnRlbnQ6IlxmMGNhIn0uZmEtbG9jYXRpb24tYXJyb3c6YmVmb3Jle2NvbnRlbnQ6IlxmMTI0In0uZmEtbG9jazpiZWZvcmV7Y29udGVudDoiXGYwMjMifS5mYS1sb2NrLW9wZW46YmVmb3Jle2NvbnRlbnQ6IlxmM2MxIn0uZmEtbG9uZy1hcnJvdy1hbHQtZG93bjpiZWZvcmV7Y29udGVudDoiXGYzMDkifS5mYS1sb25nLWFycm93LWFsdC1sZWZ0OmJlZm9yZXtjb250ZW50OiJcZjMwYSJ9LmZhLWxvbmctYXJyb3ctYWx0LXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjMwYiJ9LmZhLWxvbmctYXJyb3ctYWx0LXVwOmJlZm9yZXtjb250ZW50OiJcZjMwYyJ9LmZhLWxvdy12aXNpb246YmVmb3Jle2NvbnRlbnQ6IlxmMmE4In0uZmEtbHVnZ2FnZS1jYXJ0OmJlZm9yZXtjb250ZW50OiJcZjU5ZCJ9LmZhLWx1bmdzOmJlZm9yZXtjb250ZW50OiJcZjYwNCJ9LmZhLWx1bmdzLXZpcnVzOmJlZm9yZXtjb250ZW50OiJcZTA2NyJ9LmZhLWx5ZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2MzIn0uZmEtbWFnZW50bzpiZWZvcmV7Y29udGVudDoiXGYzYzQifS5mYS1tYWdpYzpiZWZvcmV7Y29udGVudDoiXGYwZDAifS5mYS1tYWduZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDc2In0uZmEtbWFpbC1idWxrOmJlZm9yZXtjb250ZW50OiJcZjY3NCJ9LmZhLW1haWxjaGltcDpiZWZvcmV7Y29udGVudDoiXGY1OWUifS5mYS1tYWxlOmJlZm9yZXtjb250ZW50OiJcZjE4MyJ9LmZhLW1hbmRhbG9yaWFuOmJlZm9yZXtjb250ZW50OiJcZjUwZiJ9LmZhLW1hcDpiZWZvcmV7Y29udGVudDoiXGYyNzkifS5mYS1tYXAtbWFya2VkOmJlZm9yZXtjb250ZW50OiJcZjU5ZiJ9LmZhLW1hcC1tYXJrZWQtYWx0OmJlZm9yZXtjb250ZW50OiJcZjVhMCJ9LmZhLW1hcC1tYXJrZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMDQxIn0uZmEtbWFwLW1hcmtlci1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2M1In0uZmEtbWFwLXBpbjpiZWZvcmV7Y29udGVudDoiXGYyNzYifS5mYS1tYXAtc2lnbnM6YmVmb3Jle2NvbnRlbnQ6IlxmMjc3In0uZmEtbWFya2Rvd246YmVmb3Jle2NvbnRlbnQ6IlxmNjBmIn0uZmEtbWFya2VyOmJlZm9yZXtjb250ZW50OiJcZjVhMSJ9LmZhLW1hcnM6YmVmb3Jle2NvbnRlbnQ6IlxmMjIyIn0uZmEtbWFycy1kb3VibGU6YmVmb3Jle2NvbnRlbnQ6IlxmMjI3In0uZmEtbWFycy1zdHJva2U6YmVmb3Jle2NvbnRlbnQ6IlxmMjI5In0uZmEtbWFycy1zdHJva2UtaDpiZWZvcmV7Y29udGVudDoiXGYyMmIifS5mYS1tYXJzLXN0cm9rZS12OmJlZm9yZXtjb250ZW50OiJcZjIyYSJ9LmZhLW1hc2s6YmVmb3Jle2NvbnRlbnQ6IlxmNmZhIn0uZmEtbWFzdG9kb246YmVmb3Jle2NvbnRlbnQ6IlxmNGY2In0uZmEtbWF4Y2RuOmJlZm9yZXtjb250ZW50OiJcZjEzNiJ9LmZhLW1kYjpiZWZvcmV7Y29udGVudDoiXGY4Y2EifS5mYS1tZWRhbDpiZWZvcmV7Y29udGVudDoiXGY1YTIifS5mYS1tZWRhcHBzOmJlZm9yZXtjb250ZW50OiJcZjNjNiJ9LmZhLW1lZGl1bTpiZWZvcmV7Y29udGVudDoiXGYyM2EifS5mYS1tZWRpdW0tbTpiZWZvcmV7Y29udGVudDoiXGYzYzcifS5mYS1tZWRraXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGZhIn0uZmEtbWVkcnQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2M4In0uZmEtbWVldHVwOmJlZm9yZXtjb250ZW50OiJcZjJlMCJ9LmZhLW1lZ2Fwb3J0OmJlZm9yZXtjb250ZW50OiJcZjVhMyJ9LmZhLW1laDpiZWZvcmV7Y29udGVudDoiXGYxMWEifS5mYS1tZWgtYmxhbms6YmVmb3Jle2NvbnRlbnQ6IlxmNWE0In0uZmEtbWVoLXJvbGxpbmctZXllczpiZWZvcmV7Y29udGVudDoiXGY1YTUifS5mYS1tZW1vcnk6YmVmb3Jle2NvbnRlbnQ6IlxmNTM4In0uZmEtbWVuZGVsZXk6YmVmb3Jle2NvbnRlbnQ6IlxmN2IzIn0uZmEtbWVub3JhaDpiZWZvcmV7Y29udGVudDoiXGY2NzYifS5mYS1tZXJjdXJ5OmJlZm9yZXtjb250ZW50OiJcZjIyMyJ9LmZhLW1ldGVvcjpiZWZvcmV7Y29udGVudDoiXGY3NTMifS5mYS1taWNyb2Jsb2c6YmVmb3Jle2NvbnRlbnQ6IlxlMDFhIn0uZmEtbWljcm9jaGlwOmJlZm9yZXtjb250ZW50OiJcZjJkYiJ9LmZhLW1pY3JvcGhvbmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTMwIn0uZmEtbWljcm9waG9uZS1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2M5In0uZmEtbWljcm9waG9uZS1hbHQtc2xhc2g6YmVmb3Jle2NvbnRlbnQ6IlxmNTM5In0uZmEtbWljcm9waG9uZS1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGYxMzEifS5mYS1taWNyb3Njb3BlOmJlZm9yZXtjb250ZW50OiJcZjYxMCJ9LmZhLW1pY3Jvc29mdDpiZWZvcmV7Y29udGVudDoiXGYzY2EifS5mYS1taW51czpiZWZvcmV7Y29udGVudDoiXGYwNjgifS5mYS1taW51cy1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMDU2In0uZmEtbWludXMtc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjE0NiJ9LmZhLW1pdHRlbjpiZWZvcmV7Y29udGVudDoiXGY3YjUifS5mYS1taXg6YmVmb3Jle2NvbnRlbnQ6IlxmM2NiIn0uZmEtbWl4Y2xvdWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjg5In0uZmEtbWl4ZXI6YmVmb3Jle2NvbnRlbnQ6IlxlMDU2In0uZmEtbWl6dW5pOmJlZm9yZXtjb250ZW50OiJcZjNjYyJ9LmZhLW1vYmlsZTpiZWZvcmV7Y29udGVudDoiXGYxMGIifS5mYS1tb2JpbGUtYWx0OmJlZm9yZXtjb250ZW50OiJcZjNjZCJ9LmZhLW1vZHg6YmVmb3Jle2NvbnRlbnQ6IlxmMjg1In0uZmEtbW9uZXJvOmJlZm9yZXtjb250ZW50OiJcZjNkMCJ9LmZhLW1vbmV5LWJpbGw6YmVmb3Jle2NvbnRlbnQ6IlxmMGQ2In0uZmEtbW9uZXktYmlsbC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2QxIn0uZmEtbW9uZXktYmlsbC13YXZlOmJlZm9yZXtjb250ZW50OiJcZjUzYSJ9LmZhLW1vbmV5LWJpbGwtd2F2ZS1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTNiIn0uZmEtbW9uZXktY2hlY2s6YmVmb3Jle2NvbnRlbnQ6IlxmNTNjIn0uZmEtbW9uZXktY2hlY2stYWx0OmJlZm9yZXtjb250ZW50OiJcZjUzZCJ9LmZhLW1vbnVtZW50OmJlZm9yZXtjb250ZW50OiJcZjVhNiJ9LmZhLW1vb246YmVmb3Jle2NvbnRlbnQ6IlxmMTg2In0uZmEtbW9ydGFyLXBlc3RsZTpiZWZvcmV7Y29udGVudDoiXGY1YTcifS5mYS1tb3NxdWU6YmVmb3Jle2NvbnRlbnQ6IlxmNjc4In0uZmEtbW90b3JjeWNsZTpiZWZvcmV7Y29udGVudDoiXGYyMWMifS5mYS1tb3VudGFpbjpiZWZvcmV7Y29udGVudDoiXGY2ZmMifS5mYS1tb3VzZTpiZWZvcmV7Y29udGVudDoiXGY4Y2MifS5mYS1tb3VzZS1wb2ludGVyOmJlZm9yZXtjb250ZW50OiJcZjI0NSJ9LmZhLW11Zy1ob3Q6YmVmb3Jle2NvbnRlbnQ6IlxmN2I2In0uZmEtbXVzaWM6YmVmb3Jle2NvbnRlbnQ6IlxmMDAxIn0uZmEtbmFwc3RlcjpiZWZvcmV7Y29udGVudDoiXGYzZDIifS5mYS1uZW9zOmJlZm9yZXtjb250ZW50OiJcZjYxMiJ9LmZhLW5ldHdvcmstd2lyZWQ6YmVmb3Jle2NvbnRlbnQ6IlxmNmZmIn0uZmEtbmV1dGVyOmJlZm9yZXtjb250ZW50OiJcZjIyYyJ9LmZhLW5ld3NwYXBlcjpiZWZvcmV7Y29udGVudDoiXGYxZWEifS5mYS1uaW1ibHI6YmVmb3Jle2NvbnRlbnQ6IlxmNWE4In0uZmEtbm9kZTpiZWZvcmV7Y29udGVudDoiXGY0MTkifS5mYS1ub2RlLWpzOmJlZm9yZXtjb250ZW50OiJcZjNkMyJ9LmZhLW5vdC1lcXVhbDpiZWZvcmV7Y29udGVudDoiXGY1M2UifS5mYS1ub3Rlcy1tZWRpY2FsOmJlZm9yZXtjb250ZW50OiJcZjQ4MSJ9LmZhLW5wbTpiZWZvcmV7Y29udGVudDoiXGYzZDQifS5mYS1uczg6YmVmb3Jle2NvbnRlbnQ6IlxmM2Q1In0uZmEtbnV0cml0aW9uaXg6YmVmb3Jle2NvbnRlbnQ6IlxmM2Q2In0uZmEtb2JqZWN0LWdyb3VwOmJlZm9yZXtjb250ZW50OiJcZjI0NyJ9LmZhLW9iamVjdC11bmdyb3VwOmJlZm9yZXtjb250ZW50OiJcZjI0OCJ9LmZhLW9jdG9wdXMtZGVwbG95OmJlZm9yZXtjb250ZW50OiJcZTA4MiJ9LmZhLW9kbm9rbGFzc25pa2k6YmVmb3Jle2NvbnRlbnQ6IlxmMjYzIn0uZmEtb2Rub2tsYXNzbmlraS1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMjY0In0uZmEtb2lsLWNhbjpiZWZvcmV7Y29udGVudDoiXGY2MTMifS5mYS1vbGQtcmVwdWJsaWM6YmVmb3Jle2NvbnRlbnQ6IlxmNTEwIn0uZmEtb206YmVmb3Jle2NvbnRlbnQ6IlxmNjc5In0uZmEtb3BlbmNhcnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjNkIn0uZmEtb3BlbmlkOmJlZm9yZXtjb250ZW50OiJcZjE5YiJ9LmZhLW9wZXJhOmJlZm9yZXtjb250ZW50OiJcZjI2YSJ9LmZhLW9wdGluLW1vbnN0ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMjNjIn0uZmEtb3JjaWQ6YmVmb3Jle2NvbnRlbnQ6IlxmOGQyIn0uZmEtb3NpOmJlZm9yZXtjb250ZW50OiJcZjQxYSJ9LmZhLW90dGVyOmJlZm9yZXtjb250ZW50OiJcZjcwMCJ9LmZhLW91dGRlbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDNiIn0uZmEtcGFnZTQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2Q3In0uZmEtcGFnZWxpbmVzOmJlZm9yZXtjb250ZW50OiJcZjE4YyJ9LmZhLXBhZ2VyOmJlZm9yZXtjb250ZW50OiJcZjgxNSJ9LmZhLXBhaW50LWJydXNoOmJlZm9yZXtjb250ZW50OiJcZjFmYyJ9LmZhLXBhaW50LXJvbGxlcjpiZWZvcmV7Y29udGVudDoiXGY1YWEifS5mYS1wYWxldHRlOmJlZm9yZXtjb250ZW50OiJcZjUzZiJ9LmZhLXBhbGZlZDpiZWZvcmV7Y29udGVudDoiXGYzZDgifS5mYS1wYWxsZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmNDgyIn0uZmEtcGFwZXItcGxhbmU6YmVmb3Jle2NvbnRlbnQ6IlxmMWQ4In0uZmEtcGFwZXJjbGlwOmJlZm9yZXtjb250ZW50OiJcZjBjNiJ9LmZhLXBhcmFjaHV0ZS1ib3g6YmVmb3Jle2NvbnRlbnQ6IlxmNGNkIn0uZmEtcGFyYWdyYXBoOmJlZm9yZXtjb250ZW50OiJcZjFkZCJ9LmZhLXBhcmtpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmNTQwIn0uZmEtcGFzc3BvcnQ6YmVmb3Jle2NvbnRlbnQ6IlxmNWFiIn0uZmEtcGFzdGFmYXJpYW5pc206YmVmb3Jle2NvbnRlbnQ6IlxmNjdiIn0uZmEtcGFzdGU6YmVmb3Jle2NvbnRlbnQ6IlxmMGVhIn0uZmEtcGF0cmVvbjpiZWZvcmV7Y29udGVudDoiXGYzZDkifS5mYS1wYXVzZTpiZWZvcmV7Y29udGVudDoiXGYwNGMifS5mYS1wYXVzZS1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMjhiIn0uZmEtcGF3OmJlZm9yZXtjb250ZW50OiJcZjFiMCJ9LmZhLXBheXBhbDpiZWZvcmV7Y29udGVudDoiXGYxZWQifS5mYS1wZWFjZTpiZWZvcmV7Y29udGVudDoiXGY2N2MifS5mYS1wZW46YmVmb3Jle2NvbnRlbnQ6IlxmMzA0In0uZmEtcGVuLWFsdDpiZWZvcmV7Y29udGVudDoiXGYzMDUifS5mYS1wZW4tZmFuY3k6YmVmb3Jle2NvbnRlbnQ6IlxmNWFjIn0uZmEtcGVuLW5pYjpiZWZvcmV7Y29udGVudDoiXGY1YWQifS5mYS1wZW4tc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjE0YiJ9LmZhLXBlbmNpbC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzAzIn0uZmEtcGVuY2lsLXJ1bGVyOmJlZm9yZXtjb250ZW50OiJcZjVhZSJ9LmZhLXBlbm55LWFyY2FkZTpiZWZvcmV7Y29udGVudDoiXGY3MDQifS5mYS1wZW9wbGUtYXJyb3dzOmJlZm9yZXtjb250ZW50OiJcZTA2OCJ9LmZhLXBlb3BsZS1jYXJyeTpiZWZvcmV7Y29udGVudDoiXGY0Y2UifS5mYS1wZXBwZXItaG90OmJlZm9yZXtjb250ZW50OiJcZjgxNiJ9LmZhLXBlcmJ5dGU6YmVmb3Jle2NvbnRlbnQ6IlxlMDgzIn0uZmEtcGVyY2VudDpiZWZvcmV7Y29udGVudDoiXGYyOTUifS5mYS1wZXJjZW50YWdlOmJlZm9yZXtjb250ZW50OiJcZjU0MSJ9LmZhLXBlcmlzY29wZTpiZWZvcmV7Y29udGVudDoiXGYzZGEifS5mYS1wZXJzb24tYm9vdGg6YmVmb3Jle2NvbnRlbnQ6IlxmNzU2In0uZmEtcGhhYnJpY2F0b3I6YmVmb3Jle2NvbnRlbnQ6IlxmM2RiIn0uZmEtcGhvZW5peC1mcmFtZXdvcms6YmVmb3Jle2NvbnRlbnQ6IlxmM2RjIn0uZmEtcGhvZW5peC1zcXVhZHJvbjpiZWZvcmV7Y29udGVudDoiXGY1MTEifS5mYS1waG9uZTpiZWZvcmV7Y29udGVudDoiXGYwOTUifS5mYS1waG9uZS1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmODc5In0uZmEtcGhvbmUtc2xhc2g6YmVmb3Jle2NvbnRlbnQ6IlxmM2RkIn0uZmEtcGhvbmUtc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjA5OCJ9LmZhLXBob25lLXNxdWFyZS1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmODdiIn0uZmEtcGhvbmUtdm9sdW1lOmJlZm9yZXtjb250ZW50OiJcZjJhMCJ9LmZhLXBob3RvLXZpZGVvOmJlZm9yZXtjb250ZW50OiJcZjg3YyJ9LmZhLXBocDpiZWZvcmV7Y29udGVudDoiXGY0NTcifS5mYS1waWVkLXBpcGVyOmJlZm9yZXtjb250ZW50OiJcZjJhZSJ9LmZhLXBpZWQtcGlwZXItYWx0OmJlZm9yZXtjb250ZW50OiJcZjFhOCJ9LmZhLXBpZWQtcGlwZXItaGF0OmJlZm9yZXtjb250ZW50OiJcZjRlNSJ9LmZhLXBpZWQtcGlwZXItcHA6YmVmb3Jle2NvbnRlbnQ6IlxmMWE3In0uZmEtcGllZC1waXBlci1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxlMDFlIn0uZmEtcGlnZ3ktYmFuazpiZWZvcmV7Y29udGVudDoiXGY0ZDMifS5mYS1waWxsczpiZWZvcmV7Y29udGVudDoiXGY0ODQifS5mYS1waW50ZXJlc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMGQyIn0uZmEtcGludGVyZXN0LXA6YmVmb3Jle2NvbnRlbnQ6IlxmMjMxIn0uZmEtcGludGVyZXN0LXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYwZDMifS5mYS1waXp6YS1zbGljZTpiZWZvcmV7Y29udGVudDoiXGY4MTgifS5mYS1wbGFjZS1vZi13b3JzaGlwOmJlZm9yZXtjb250ZW50OiJcZjY3ZiJ9LmZhLXBsYW5lOmJlZm9yZXtjb250ZW50OiJcZjA3MiJ9LmZhLXBsYW5lLWFycml2YWw6YmVmb3Jle2NvbnRlbnQ6IlxmNWFmIn0uZmEtcGxhbmUtZGVwYXJ0dXJlOmJlZm9yZXtjb250ZW50OiJcZjViMCJ9LmZhLXBsYW5lLXNsYXNoOmJlZm9yZXtjb250ZW50OiJcZTA2OSJ9LmZhLXBsYXk6YmVmb3Jle2NvbnRlbnQ6IlxmMDRiIn0uZmEtcGxheS1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMTQ0In0uZmEtcGxheXN0YXRpb246YmVmb3Jle2NvbnRlbnQ6IlxmM2RmIn0uZmEtcGx1ZzpiZWZvcmV7Y29udGVudDoiXGYxZTYifS5mYS1wbHVzOmJlZm9yZXtjb250ZW50OiJcZjA2NyJ9LmZhLXBsdXMtY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZjA1NSJ9LmZhLXBsdXMtc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjBmZSJ9LmZhLXBvZGNhc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMmNlIn0uZmEtcG9sbDpiZWZvcmV7Y29udGVudDoiXGY2ODEifS5mYS1wb2xsLWg6YmVmb3Jle2NvbnRlbnQ6IlxmNjgyIn0uZmEtcG9vOmJlZm9yZXtjb250ZW50OiJcZjJmZSJ9LmZhLXBvby1zdG9ybTpiZWZvcmV7Y29udGVudDoiXGY3NWEifS5mYS1wb29wOmJlZm9yZXtjb250ZW50OiJcZjYxOSJ9LmZhLXBvcnRyYWl0OmJlZm9yZXtjb250ZW50OiJcZjNlMCJ9LmZhLXBvdW5kLXNpZ246YmVmb3Jle2NvbnRlbnQ6IlxmMTU0In0uZmEtcG93ZXItb2ZmOmJlZm9yZXtjb250ZW50OiJcZjAxMSJ9LmZhLXByYXk6YmVmb3Jle2NvbnRlbnQ6IlxmNjgzIn0uZmEtcHJheWluZy1oYW5kczpiZWZvcmV7Y29udGVudDoiXGY2ODQifS5mYS1wcmVzY3JpcHRpb246YmVmb3Jle2NvbnRlbnQ6IlxmNWIxIn0uZmEtcHJlc2NyaXB0aW9uLWJvdHRsZTpiZWZvcmV7Y29udGVudDoiXGY0ODUifS5mYS1wcmVzY3JpcHRpb24tYm90dGxlLWFsdDpiZWZvcmV7Y29udGVudDoiXGY0ODYifS5mYS1wcmludDpiZWZvcmV7Y29udGVudDoiXGYwMmYifS5mYS1wcm9jZWR1cmVzOmJlZm9yZXtjb250ZW50OiJcZjQ4NyJ9LmZhLXByb2R1Y3QtaHVudDpiZWZvcmV7Y29udGVudDoiXGYyODgifS5mYS1wcm9qZWN0LWRpYWdyYW06YmVmb3Jle2NvbnRlbnQ6IlxmNTQyIn0uZmEtcHVtcC1tZWRpY2FsOmJlZm9yZXtjb250ZW50OiJcZTA2YSJ9LmZhLXB1bXAtc29hcDpiZWZvcmV7Y29udGVudDoiXGUwNmIifS5mYS1wdXNoZWQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2UxIn0uZmEtcHV6emxlLXBpZWNlOmJlZm9yZXtjb250ZW50OiJcZjEyZSJ9LmZhLXB5dGhvbjpiZWZvcmV7Y29udGVudDoiXGYzZTIifS5mYS1xcTpiZWZvcmV7Y29udGVudDoiXGYxZDYifS5mYS1xcmNvZGU6YmVmb3Jle2NvbnRlbnQ6IlxmMDI5In0uZmEtcXVlc3Rpb246YmVmb3Jle2NvbnRlbnQ6IlxmMTI4In0uZmEtcXVlc3Rpb24tY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZjA1OSJ9LmZhLXF1aWRkaXRjaDpiZWZvcmV7Y29udGVudDoiXGY0NTgifS5mYS1xdWluc2NhcGU6YmVmb3Jle2NvbnRlbnQ6IlxmNDU5In0uZmEtcXVvcmE6YmVmb3Jle2NvbnRlbnQ6IlxmMmM0In0uZmEtcXVvdGUtbGVmdDpiZWZvcmV7Y29udGVudDoiXGYxMGQifS5mYS1xdW90ZS1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYxMGUifS5mYS1xdXJhbjpiZWZvcmV7Y29udGVudDoiXGY2ODcifS5mYS1yLXByb2plY3Q6YmVmb3Jle2NvbnRlbnQ6IlxmNGY3In0uZmEtcmFkaWF0aW9uOmJlZm9yZXtjb250ZW50OiJcZjdiOSJ9LmZhLXJhZGlhdGlvbi1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmN2JhIn0uZmEtcmFpbmJvdzpiZWZvcmV7Y29udGVudDoiXGY3NWIifS5mYS1yYW5kb206YmVmb3Jle2NvbnRlbnQ6IlxmMDc0In0uZmEtcmFzcGJlcnJ5LXBpOmJlZm9yZXtjb250ZW50OiJcZjdiYiJ9LmZhLXJhdmVscnk6YmVmb3Jle2NvbnRlbnQ6IlxmMmQ5In0uZmEtcmVhY3Q6YmVmb3Jle2NvbnRlbnQ6IlxmNDFiIn0uZmEtcmVhY3RldXJvcGU6YmVmb3Jle2NvbnRlbnQ6IlxmNzVkIn0uZmEtcmVhZG1lOmJlZm9yZXtjb250ZW50OiJcZjRkNSJ9LmZhLXJlYmVsOmJlZm9yZXtjb250ZW50OiJcZjFkMCJ9LmZhLXJlY2VpcHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNTQzIn0uZmEtcmVjb3JkLXZpbnlsOmJlZm9yZXtjb250ZW50OiJcZjhkOSJ9LmZhLXJlY3ljbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMWI4In0uZmEtcmVkLXJpdmVyOmJlZm9yZXtjb250ZW50OiJcZjNlMyJ9LmZhLXJlZGRpdDpiZWZvcmV7Y29udGVudDoiXGYxYTEifS5mYS1yZWRkaXQtYWxpZW46YmVmb3Jle2NvbnRlbnQ6IlxmMjgxIn0uZmEtcmVkZGl0LXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYxYTIifS5mYS1yZWRoYXQ6YmVmb3Jle2NvbnRlbnQ6IlxmN2JjIn0uZmEtcmVkbzpiZWZvcmV7Y29udGVudDoiXGYwMWUifS5mYS1yZWRvLWFsdDpiZWZvcmV7Y29udGVudDoiXGYyZjkifS5mYS1yZWdpc3RlcmVkOmJlZm9yZXtjb250ZW50OiJcZjI1ZCJ9LmZhLXJlbW92ZS1mb3JtYXQ6YmVmb3Jle2NvbnRlbnQ6IlxmODdkIn0uZmEtcmVucmVuOmJlZm9yZXtjb250ZW50OiJcZjE4YiJ9LmZhLXJlcGx5OmJlZm9yZXtjb250ZW50OiJcZjNlNSJ9LmZhLXJlcGx5LWFsbDpiZWZvcmV7Y29udGVudDoiXGYxMjIifS5mYS1yZXBseWQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2U2In0uZmEtcmVwdWJsaWNhbjpiZWZvcmV7Y29udGVudDoiXGY3NWUifS5mYS1yZXNlYXJjaGdhdGU6YmVmb3Jle2NvbnRlbnQ6IlxmNGY4In0uZmEtcmVzb2x2aW5nOmJlZm9yZXtjb250ZW50OiJcZjNlNyJ9LmZhLXJlc3Ryb29tOmJlZm9yZXtjb250ZW50OiJcZjdiZCJ9LmZhLXJldHdlZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDc5In0uZmEtcmV2OmJlZm9yZXtjb250ZW50OiJcZjViMiJ9LmZhLXJpYmJvbjpiZWZvcmV7Y29udGVudDoiXGY0ZDYifS5mYS1yaW5nOmJlZm9yZXtjb250ZW50OiJcZjcwYiJ9LmZhLXJvYWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDE4In0uZmEtcm9ib3Q6YmVmb3Jle2NvbnRlbnQ6IlxmNTQ0In0uZmEtcm9ja2V0OmJlZm9yZXtjb250ZW50OiJcZjEzNSJ9LmZhLXJvY2tldGNoYXQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2U4In0uZmEtcm9ja3JtczpiZWZvcmV7Y29udGVudDoiXGYzZTkifS5mYS1yb3V0ZTpiZWZvcmV7Y29udGVudDoiXGY0ZDcifS5mYS1yc3M6YmVmb3Jle2NvbnRlbnQ6IlxmMDllIn0uZmEtcnNzLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYxNDMifS5mYS1ydWJsZS1zaWduOmJlZm9yZXtjb250ZW50OiJcZjE1OCJ9LmZhLXJ1bGVyOmJlZm9yZXtjb250ZW50OiJcZjU0NSJ9LmZhLXJ1bGVyLWNvbWJpbmVkOmJlZm9yZXtjb250ZW50OiJcZjU0NiJ9LmZhLXJ1bGVyLWhvcml6b250YWw6YmVmb3Jle2NvbnRlbnQ6IlxmNTQ3In0uZmEtcnVsZXItdmVydGljYWw6YmVmb3Jle2NvbnRlbnQ6IlxmNTQ4In0uZmEtcnVubmluZzpiZWZvcmV7Y29udGVudDoiXGY3MGMifS5mYS1ydXBlZS1zaWduOmJlZm9yZXtjb250ZW50OiJcZjE1NiJ9LmZhLXJ1c3Q6YmVmb3Jle2NvbnRlbnQ6IlxlMDdhIn0uZmEtc2FkLWNyeTpiZWZvcmV7Y29udGVudDoiXGY1YjMifS5mYS1zYWQtdGVhcjpiZWZvcmV7Y29udGVudDoiXGY1YjQifS5mYS1zYWZhcmk6YmVmb3Jle2NvbnRlbnQ6IlxmMjY3In0uZmEtc2FsZXNmb3JjZTpiZWZvcmV7Y29udGVudDoiXGY4M2IifS5mYS1zYXNzOmJlZm9yZXtjb250ZW50OiJcZjQxZSJ9LmZhLXNhdGVsbGl0ZTpiZWZvcmV7Y29udGVudDoiXGY3YmYifS5mYS1zYXRlbGxpdGUtZGlzaDpiZWZvcmV7Y29udGVudDoiXGY3YzAifS5mYS1zYXZlOmJlZm9yZXtjb250ZW50OiJcZjBjNyJ9LmZhLXNjaGxpeDpiZWZvcmV7Y29udGVudDoiXGYzZWEifS5mYS1zY2hvb2w6YmVmb3Jle2NvbnRlbnQ6IlxmNTQ5In0uZmEtc2NyZXdkcml2ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNTRhIn0uZmEtc2NyaWJkOmJlZm9yZXtjb250ZW50OiJcZjI4YSJ9LmZhLXNjcm9sbDpiZWZvcmV7Y29udGVudDoiXGY3MGUifS5mYS1zZC1jYXJkOmJlZm9yZXtjb250ZW50OiJcZjdjMiJ9LmZhLXNlYXJjaDpiZWZvcmV7Y29udGVudDoiXGYwMDIifS5mYS1zZWFyY2gtZG9sbGFyOmJlZm9yZXtjb250ZW50OiJcZjY4OCJ9LmZhLXNlYXJjaC1sb2NhdGlvbjpiZWZvcmV7Y29udGVudDoiXGY2ODkifS5mYS1zZWFyY2gtbWludXM6YmVmb3Jle2NvbnRlbnQ6IlxmMDEwIn0uZmEtc2VhcmNoLXBsdXM6YmVmb3Jle2NvbnRlbnQ6IlxmMDBlIn0uZmEtc2VhcmNoZW5naW46YmVmb3Jle2NvbnRlbnQ6IlxmM2ViIn0uZmEtc2VlZGxpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmNGQ4In0uZmEtc2VsbGNhc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmMmRhIn0uZmEtc2VsbHN5OmJlZm9yZXtjb250ZW50OiJcZjIxMyJ9LmZhLXNlcnZlcjpiZWZvcmV7Y29udGVudDoiXGYyMzMifS5mYS1zZXJ2aWNlc3RhY2s6YmVmb3Jle2NvbnRlbnQ6IlxmM2VjIn0uZmEtc2hhcGVzOmJlZm9yZXtjb250ZW50OiJcZjYxZiJ9LmZhLXNoYXJlOmJlZm9yZXtjb250ZW50OiJcZjA2NCJ9LmZhLXNoYXJlLWFsdDpiZWZvcmV7Y29udGVudDoiXGYxZTAifS5mYS1zaGFyZS1hbHQtc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjFlMSJ9LmZhLXNoYXJlLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYxNGQifS5mYS1zaGVrZWwtc2lnbjpiZWZvcmV7Y29udGVudDoiXGYyMGIifS5mYS1zaGllbGQtYWx0OmJlZm9yZXtjb250ZW50OiJcZjNlZCJ9LmZhLXNoaWVsZC12aXJ1czpiZWZvcmV7Y29udGVudDoiXGUwNmMifS5mYS1zaGlwOmJlZm9yZXtjb250ZW50OiJcZjIxYSJ9LmZhLXNoaXBwaW5nLWZhc3Q6YmVmb3Jle2NvbnRlbnQ6IlxmNDhiIn0uZmEtc2hpcnRzaW5idWxrOmJlZm9yZXtjb250ZW50OiJcZjIxNCJ9LmZhLXNob2UtcHJpbnRzOmJlZm9yZXtjb250ZW50OiJcZjU0YiJ9LmZhLXNob3BpZnk6YmVmb3Jle2NvbnRlbnQ6IlxlMDU3In0uZmEtc2hvcHBpbmctYmFnOmJlZm9yZXtjb250ZW50OiJcZjI5MCJ9LmZhLXNob3BwaW5nLWJhc2tldDpiZWZvcmV7Y29udGVudDoiXGYyOTEifS5mYS1zaG9wcGluZy1jYXJ0OmJlZm9yZXtjb250ZW50OiJcZjA3YSJ9LmZhLXNob3B3YXJlOmJlZm9yZXtjb250ZW50OiJcZjViNSJ9LmZhLXNob3dlcjpiZWZvcmV7Y29udGVudDoiXGYyY2MifS5mYS1zaHV0dGxlLXZhbjpiZWZvcmV7Y29udGVudDoiXGY1YjYifS5mYS1zaWduOmJlZm9yZXtjb250ZW50OiJcZjRkOSJ9LmZhLXNpZ24taW4tYWx0OmJlZm9yZXtjb250ZW50OiJcZjJmNiJ9LmZhLXNpZ24tbGFuZ3VhZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmMmE3In0uZmEtc2lnbi1vdXQtYWx0OmJlZm9yZXtjb250ZW50OiJcZjJmNSJ9LmZhLXNpZ25hbDpiZWZvcmV7Y29udGVudDoiXGYwMTIifS5mYS1zaWduYXR1cmU6YmVmb3Jle2NvbnRlbnQ6IlxmNWI3In0uZmEtc2ltLWNhcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmN2M0In0uZmEtc2ltcGx5YnVpbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjE1In0uZmEtc2luazpiZWZvcmV7Y29udGVudDoiXGUwNmQifS5mYS1zaXN0cml4OmJlZm9yZXtjb250ZW50OiJcZjNlZSJ9LmZhLXNpdGVtYXA6YmVmb3Jle2NvbnRlbnQ6IlxmMGU4In0uZmEtc2l0aDpiZWZvcmV7Y29udGVudDoiXGY1MTIifS5mYS1za2F0aW5nOmJlZm9yZXtjb250ZW50OiJcZjdjNSJ9LmZhLXNrZXRjaDpiZWZvcmV7Y29udGVudDoiXGY3YzYifS5mYS1za2lpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmN2M5In0uZmEtc2tpaW5nLW5vcmRpYzpiZWZvcmV7Y29udGVudDoiXGY3Y2EifS5mYS1za3VsbDpiZWZvcmV7Y29udGVudDoiXGY1NGMifS5mYS1za3VsbC1jcm9zc2JvbmVzOmJlZm9yZXtjb250ZW50OiJcZjcxNCJ9LmZhLXNreWF0bGFzOmJlZm9yZXtjb250ZW50OiJcZjIxNiJ9LmZhLXNreXBlOmJlZm9yZXtjb250ZW50OiJcZjE3ZSJ9LmZhLXNsYWNrOmJlZm9yZXtjb250ZW50OiJcZjE5OCJ9LmZhLXNsYWNrLWhhc2g6YmVmb3Jle2NvbnRlbnQ6IlxmM2VmIn0uZmEtc2xhc2g6YmVmb3Jle2NvbnRlbnQ6IlxmNzE1In0uZmEtc2xlaWdoOmJlZm9yZXtjb250ZW50OiJcZjdjYyJ9LmZhLXNsaWRlcnMtaDpiZWZvcmV7Y29udGVudDoiXGYxZGUifS5mYS1zbGlkZXNoYXJlOmJlZm9yZXtjb250ZW50OiJcZjFlNyJ9LmZhLXNtaWxlOmJlZm9yZXtjb250ZW50OiJcZjExOCJ9LmZhLXNtaWxlLWJlYW06YmVmb3Jle2NvbnRlbnQ6IlxmNWI4In0uZmEtc21pbGUtd2luazpiZWZvcmV7Y29udGVudDoiXGY0ZGEifS5mYS1zbW9nOmJlZm9yZXtjb250ZW50OiJcZjc1ZiJ9LmZhLXNtb2tpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmNDhkIn0uZmEtc21va2luZy1iYW46YmVmb3Jle2NvbnRlbnQ6IlxmNTRkIn0uZmEtc21zOmJlZm9yZXtjb250ZW50OiJcZjdjZCJ9LmZhLXNuYXBjaGF0OmJlZm9yZXtjb250ZW50OiJcZjJhYiJ9LmZhLXNuYXBjaGF0LWdob3N0OmJlZm9yZXtjb250ZW50OiJcZjJhYyJ9LmZhLXNuYXBjaGF0LXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYyYWQifS5mYS1zbm93Ym9hcmRpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmN2NlIn0uZmEtc25vd2ZsYWtlOmJlZm9yZXtjb250ZW50OiJcZjJkYyJ9LmZhLXNub3dtYW46YmVmb3Jle2NvbnRlbnQ6IlxmN2QwIn0uZmEtc25vd3Bsb3c6YmVmb3Jle2NvbnRlbnQ6IlxmN2QyIn0uZmEtc29hcDpiZWZvcmV7Y29udGVudDoiXGUwNmUifS5mYS1zb2NrczpiZWZvcmV7Y29udGVudDoiXGY2OTYifS5mYS1zb2xhci1wYW5lbDpiZWZvcmV7Y29udGVudDoiXGY1YmEifS5mYS1zb3J0OmJlZm9yZXtjb250ZW50OiJcZjBkYyJ9LmZhLXNvcnQtYWxwaGEtZG93bjpiZWZvcmV7Y29udGVudDoiXGYxNWQifS5mYS1zb3J0LWFscGhhLWRvd24tYWx0OmJlZm9yZXtjb250ZW50OiJcZjg4MSJ9LmZhLXNvcnQtYWxwaGEtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTVlIn0uZmEtc29ydC1hbHBoYS11cC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmODgyIn0uZmEtc29ydC1hbW91bnQtZG93bjpiZWZvcmV7Y29udGVudDoiXGYxNjAifS5mYS1zb3J0LWFtb3VudC1kb3duLWFsdDpiZWZvcmV7Y29udGVudDoiXGY4ODQifS5mYS1zb3J0LWFtb3VudC11cDpiZWZvcmV7Y29udGVudDoiXGYxNjEifS5mYS1zb3J0LWFtb3VudC11cC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmODg1In0uZmEtc29ydC1kb3duOmJlZm9yZXtjb250ZW50OiJcZjBkZCJ9LmZhLXNvcnQtbnVtZXJpYy1kb3duOmJlZm9yZXtjb250ZW50OiJcZjE2MiJ9LmZhLXNvcnQtbnVtZXJpYy1kb3duLWFsdDpiZWZvcmV7Y29udGVudDoiXGY4ODYifS5mYS1zb3J0LW51bWVyaWMtdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTYzIn0uZmEtc29ydC1udW1lcmljLXVwLWFsdDpiZWZvcmV7Y29udGVudDoiXGY4ODcifS5mYS1zb3J0LXVwOmJlZm9yZXtjb250ZW50OiJcZjBkZSJ9LmZhLXNvdW5kY2xvdWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMWJlIn0uZmEtc291cmNldHJlZTpiZWZvcmV7Y29udGVudDoiXGY3ZDMifS5mYS1zcGE6YmVmb3Jle2NvbnRlbnQ6IlxmNWJiIn0uZmEtc3BhY2Utc2h1dHRsZTpiZWZvcmV7Y29udGVudDoiXGYxOTcifS5mYS1zcGVha2FwOmJlZm9yZXtjb250ZW50OiJcZjNmMyJ9LmZhLXNwZWFrZXItZGVjazpiZWZvcmV7Y29udGVudDoiXGY4M2MifS5mYS1zcGVsbC1jaGVjazpiZWZvcmV7Y29udGVudDoiXGY4OTEifS5mYS1zcGlkZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNzE3In0uZmEtc3Bpbm5lcjpiZWZvcmV7Y29udGVudDoiXGYxMTAifS5mYS1zcGxvdGNoOmJlZm9yZXtjb250ZW50OiJcZjViYyJ9LmZhLXNwb3RpZnk6YmVmb3Jle2NvbnRlbnQ6IlxmMWJjIn0uZmEtc3ByYXktY2FuOmJlZm9yZXtjb250ZW50OiJcZjViZCJ9LmZhLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYwYzgifS5mYS1zcXVhcmUtZnVsbDpiZWZvcmV7Y29udGVudDoiXGY0NWMifS5mYS1zcXVhcmUtcm9vdC1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNjk4In0uZmEtc3F1YXJlc3BhY2U6YmVmb3Jle2NvbnRlbnQ6IlxmNWJlIn0uZmEtc3RhY2stZXhjaGFuZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmMThkIn0uZmEtc3RhY2stb3ZlcmZsb3c6YmVmb3Jle2NvbnRlbnQ6IlxmMTZjIn0uZmEtc3RhY2twYXRoOmJlZm9yZXtjb250ZW50OiJcZjg0MiJ9LmZhLXN0YW1wOmJlZm9yZXtjb250ZW50OiJcZjViZiJ9LmZhLXN0YXI6YmVmb3Jle2NvbnRlbnQ6IlxmMDA1In0uZmEtc3Rhci1hbmQtY3Jlc2NlbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmNjk5In0uZmEtc3Rhci1oYWxmOmJlZm9yZXtjb250ZW50OiJcZjA4OSJ9LmZhLXN0YXItaGFsZi1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNWMwIn0uZmEtc3Rhci1vZi1kYXZpZDpiZWZvcmV7Y29udGVudDoiXGY2OWEifS5mYS1zdGFyLW9mLWxpZmU6YmVmb3Jle2NvbnRlbnQ6IlxmNjIxIn0uZmEtc3RheWxpbmtlZDpiZWZvcmV7Y29udGVudDoiXGYzZjUifS5mYS1zdGVhbTpiZWZvcmV7Y29udGVudDoiXGYxYjYifS5mYS1zdGVhbS1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMWI3In0uZmEtc3RlYW0tc3ltYm9sOmJlZm9yZXtjb250ZW50OiJcZjNmNiJ9LmZhLXN0ZXAtYmFja3dhcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDQ4In0uZmEtc3RlcC1mb3J3YXJkOmJlZm9yZXtjb250ZW50OiJcZjA1MSJ9LmZhLXN0ZXRob3Njb3BlOmJlZm9yZXtjb250ZW50OiJcZjBmMSJ9LmZhLXN0aWNrZXItbXVsZTpiZWZvcmV7Y29udGVudDoiXGYzZjcifS5mYS1zdGlja3ktbm90ZTpiZWZvcmV7Y29udGVudDoiXGYyNDkifS5mYS1zdG9wOmJlZm9yZXtjb250ZW50OiJcZjA0ZCJ9LmZhLXN0b3AtY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZjI4ZCJ9LmZhLXN0b3B3YXRjaDpiZWZvcmV7Y29udGVudDoiXGYyZjIifS5mYS1zdG9wd2F0Y2gtMjA6YmVmb3Jle2NvbnRlbnQ6IlxlMDZmIn0uZmEtc3RvcmU6YmVmb3Jle2NvbnRlbnQ6IlxmNTRlIn0uZmEtc3RvcmUtYWx0OmJlZm9yZXtjb250ZW50OiJcZjU0ZiJ9LmZhLXN0b3JlLWFsdC1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGUwNzAifS5mYS1zdG9yZS1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGUwNzEifS5mYS1zdHJhdmE6YmVmb3Jle2NvbnRlbnQ6IlxmNDI4In0uZmEtc3RyZWFtOmJlZm9yZXtjb250ZW50OiJcZjU1MCJ9LmZhLXN0cmVldC12aWV3OmJlZm9yZXtjb250ZW50OiJcZjIxZCJ9LmZhLXN0cmlrZXRocm91Z2g6YmVmb3Jle2NvbnRlbnQ6IlxmMGNjIn0uZmEtc3RyaXBlOmJlZm9yZXtjb250ZW50OiJcZjQyOSJ9LmZhLXN0cmlwZS1zOmJlZm9yZXtjb250ZW50OiJcZjQyYSJ9LmZhLXN0cm9vcHdhZmVsOmJlZm9yZXtjb250ZW50OiJcZjU1MSJ9LmZhLXN0dWRpb3ZpbmFyaTpiZWZvcmV7Y29udGVudDoiXGYzZjgifS5mYS1zdHVtYmxldXBvbjpiZWZvcmV7Y29udGVudDoiXGYxYTQifS5mYS1zdHVtYmxldXBvbi1jaXJjbGU6YmVmb3Jle2NvbnRlbnQ6IlxmMWEzIn0uZmEtc3Vic2NyaXB0OmJlZm9yZXtjb250ZW50OiJcZjEyYyJ9LmZhLXN1YndheTpiZWZvcmV7Y29udGVudDoiXGYyMzkifS5mYS1zdWl0Y2FzZTpiZWZvcmV7Y29udGVudDoiXGYwZjIifS5mYS1zdWl0Y2FzZS1yb2xsaW5nOmJlZm9yZXtjb250ZW50OiJcZjVjMSJ9LmZhLXN1bjpiZWZvcmV7Y29udGVudDoiXGYxODUifS5mYS1zdXBlcnBvd2VyczpiZWZvcmV7Y29udGVudDoiXGYyZGQifS5mYS1zdXBlcnNjcmlwdDpiZWZvcmV7Y29udGVudDoiXGYxMmIifS5mYS1zdXBwbGU6YmVmb3Jle2NvbnRlbnQ6IlxmM2Y5In0uZmEtc3VycHJpc2U6YmVmb3Jle2NvbnRlbnQ6IlxmNWMyIn0uZmEtc3VzZTpiZWZvcmV7Y29udGVudDoiXGY3ZDYifS5mYS1zd2F0Y2hib29rOmJlZm9yZXtjb250ZW50OiJcZjVjMyJ9LmZhLXN3aWZ0OmJlZm9yZXtjb250ZW50OiJcZjhlMSJ9LmZhLXN3aW1tZXI6YmVmb3Jle2NvbnRlbnQ6IlxmNWM0In0uZmEtc3dpbW1pbmctcG9vbDpiZWZvcmV7Y29udGVudDoiXGY1YzUifS5mYS1zeW1mb255OmJlZm9yZXtjb250ZW50OiJcZjgzZCJ9LmZhLXN5bmFnb2d1ZTpiZWZvcmV7Y29udGVudDoiXGY2OWIifS5mYS1zeW5jOmJlZm9yZXtjb250ZW50OiJcZjAyMSJ9LmZhLXN5bmMtYWx0OmJlZm9yZXtjb250ZW50OiJcZjJmMSJ9LmZhLXN5cmluZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmNDhlIn0uZmEtdGFibGU6YmVmb3Jle2NvbnRlbnQ6IlxmMGNlIn0uZmEtdGFibGUtdGVubmlzOmJlZm9yZXtjb250ZW50OiJcZjQ1ZCJ9LmZhLXRhYmxldDpiZWZvcmV7Y29udGVudDoiXGYxMGEifS5mYS10YWJsZXQtYWx0OmJlZm9yZXtjb250ZW50OiJcZjNmYSJ9LmZhLXRhYmxldHM6YmVmb3Jle2NvbnRlbnQ6IlxmNDkwIn0uZmEtdGFjaG9tZXRlci1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmM2ZkIn0uZmEtdGFnOmJlZm9yZXtjb250ZW50OiJcZjAyYiJ9LmZhLXRhZ3M6YmVmb3Jle2NvbnRlbnQ6IlxmMDJjIn0uZmEtdGFwZTpiZWZvcmV7Y29udGVudDoiXGY0ZGIifS5mYS10YXNrczpiZWZvcmV7Y29udGVudDoiXGYwYWUifS5mYS10YXhpOmJlZm9yZXtjb250ZW50OiJcZjFiYSJ9LmZhLXRlYW1zcGVhazpiZWZvcmV7Y29udGVudDoiXGY0ZjkifS5mYS10ZWV0aDpiZWZvcmV7Y29udGVudDoiXGY2MmUifS5mYS10ZWV0aC1vcGVuOmJlZm9yZXtjb250ZW50OiJcZjYyZiJ9LmZhLXRlbGVncmFtOmJlZm9yZXtjb250ZW50OiJcZjJjNiJ9LmZhLXRlbGVncmFtLXBsYW5lOmJlZm9yZXtjb250ZW50OiJcZjNmZSJ9LmZhLXRlbXBlcmF0dXJlLWhpZ2g6YmVmb3Jle2NvbnRlbnQ6IlxmNzY5In0uZmEtdGVtcGVyYXR1cmUtbG93OmJlZm9yZXtjb250ZW50OiJcZjc2YiJ9LmZhLXRlbmNlbnQtd2VpYm86YmVmb3Jle2NvbnRlbnQ6IlxmMWQ1In0uZmEtdGVuZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmN2Q3In0uZmEtdGVybWluYWw6YmVmb3Jle2NvbnRlbnQ6IlxmMTIwIn0uZmEtdGV4dC1oZWlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDM0In0uZmEtdGV4dC13aWR0aDpiZWZvcmV7Y29udGVudDoiXGYwMzUifS5mYS10aDpiZWZvcmV7Y29udGVudDoiXGYwMGEifS5mYS10aC1sYXJnZTpiZWZvcmV7Y29udGVudDoiXGYwMDkifS5mYS10aC1saXN0OmJlZm9yZXtjb250ZW50OiJcZjAwYiJ9LmZhLXRoZS1yZWQteWV0aTpiZWZvcmV7Y29udGVudDoiXGY2OWQifS5mYS10aGVhdGVyLW1hc2tzOmJlZm9yZXtjb250ZW50OiJcZjYzMCJ9LmZhLXRoZW1lY286YmVmb3Jle2NvbnRlbnQ6IlxmNWM2In0uZmEtdGhlbWVpc2xlOmJlZm9yZXtjb250ZW50OiJcZjJiMiJ9LmZhLXRoZXJtb21ldGVyOmJlZm9yZXtjb250ZW50OiJcZjQ5MSJ9LmZhLXRoZXJtb21ldGVyLWVtcHR5OmJlZm9yZXtjb250ZW50OiJcZjJjYiJ9LmZhLXRoZXJtb21ldGVyLWZ1bGw6YmVmb3Jle2NvbnRlbnQ6IlxmMmM3In0uZmEtdGhlcm1vbWV0ZXItaGFsZjpiZWZvcmV7Y29udGVudDoiXGYyYzkifS5mYS10aGVybW9tZXRlci1xdWFydGVyOmJlZm9yZXtjb250ZW50OiJcZjJjYSJ9LmZhLXRoZXJtb21ldGVyLXRocmVlLXF1YXJ0ZXJzOmJlZm9yZXtjb250ZW50OiJcZjJjOCJ9LmZhLXRoaW5rLXBlYWtzOmJlZm9yZXtjb250ZW50OiJcZjczMSJ9LmZhLXRodW1icy1kb3duOmJlZm9yZXtjb250ZW50OiJcZjE2NSJ9LmZhLXRodW1icy11cDpiZWZvcmV7Y29udGVudDoiXGYxNjQifS5mYS10aHVtYnRhY2s6YmVmb3Jle2NvbnRlbnQ6IlxmMDhkIn0uZmEtdGlja2V0LWFsdDpiZWZvcmV7Y29udGVudDoiXGYzZmYifS5mYS10aWt0b2s6YmVmb3Jle2NvbnRlbnQ6IlxlMDdiIn0uZmEtdGltZXM6YmVmb3Jle2NvbnRlbnQ6IlxmMDBkIn0uZmEtdGltZXMtY2lyY2xlOmJlZm9yZXtjb250ZW50OiJcZjA1NyJ9LmZhLXRpbnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDQzIn0uZmEtdGludC1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGY1YzcifS5mYS10aXJlZDpiZWZvcmV7Y29udGVudDoiXGY1YzgifS5mYS10b2dnbGUtb2ZmOmJlZm9yZXtjb250ZW50OiJcZjIwNCJ9LmZhLXRvZ2dsZS1vbjpiZWZvcmV7Y29udGVudDoiXGYyMDUifS5mYS10b2lsZXQ6YmVmb3Jle2NvbnRlbnQ6IlxmN2Q4In0uZmEtdG9pbGV0LXBhcGVyOmJlZm9yZXtjb250ZW50OiJcZjcxZSJ9LmZhLXRvaWxldC1wYXBlci1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGUwNzIifS5mYS10b29sYm94OmJlZm9yZXtjb250ZW50OiJcZjU1MiJ9LmZhLXRvb2xzOmJlZm9yZXtjb250ZW50OiJcZjdkOSJ9LmZhLXRvb3RoOmJlZm9yZXtjb250ZW50OiJcZjVjOSJ9LmZhLXRvcmFoOmJlZm9yZXtjb250ZW50OiJcZjZhMCJ9LmZhLXRvcmlpLWdhdGU6YmVmb3Jle2NvbnRlbnQ6IlxmNmExIn0uZmEtdHJhY3RvcjpiZWZvcmV7Y29udGVudDoiXGY3MjIifS5mYS10cmFkZS1mZWRlcmF0aW9uOmJlZm9yZXtjb250ZW50OiJcZjUxMyJ9LmZhLXRyYWRlbWFyazpiZWZvcmV7Y29udGVudDoiXGYyNWMifS5mYS10cmFmZmljLWxpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjYzNyJ9LmZhLXRyYWlsZXI6YmVmb3Jle2NvbnRlbnQ6IlxlMDQxIn0uZmEtdHJhaW46YmVmb3Jle2NvbnRlbnQ6IlxmMjM4In0uZmEtdHJhbTpiZWZvcmV7Y29udGVudDoiXGY3ZGEifS5mYS10cmFuc2dlbmRlcjpiZWZvcmV7Y29udGVudDoiXGYyMjQifS5mYS10cmFuc2dlbmRlci1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjI1In0uZmEtdHJhc2g6YmVmb3Jle2NvbnRlbnQ6IlxmMWY4In0uZmEtdHJhc2gtYWx0OmJlZm9yZXtjb250ZW50OiJcZjJlZCJ9LmZhLXRyYXNoLXJlc3RvcmU6YmVmb3Jle2NvbnRlbnQ6IlxmODI5In0uZmEtdHJhc2gtcmVzdG9yZS1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmODJhIn0uZmEtdHJlZTpiZWZvcmV7Y29udGVudDoiXGYxYmIifS5mYS10cmVsbG86YmVmb3Jle2NvbnRlbnQ6IlxmMTgxIn0uZmEtdHJvcGh5OmJlZm9yZXtjb250ZW50OiJcZjA5MSJ9LmZhLXRydWNrOmJlZm9yZXtjb250ZW50OiJcZjBkMSJ9LmZhLXRydWNrLWxvYWRpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmNGRlIn0uZmEtdHJ1Y2stbW9uc3RlcjpiZWZvcmV7Y29udGVudDoiXGY2M2IifS5mYS10cnVjay1tb3Zpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmNGRmIn0uZmEtdHJ1Y2stcGlja3VwOmJlZm9yZXtjb250ZW50OiJcZjYzYyJ9LmZhLXRzaGlydDpiZWZvcmV7Y29udGVudDoiXGY1NTMifS5mYS10dHk6YmVmb3Jle2NvbnRlbnQ6IlxmMWU0In0uZmEtdHVtYmxyOmJlZm9yZXtjb250ZW50OiJcZjE3MyJ9LmZhLXR1bWJsci1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTc0In0uZmEtdHY6YmVmb3Jle2NvbnRlbnQ6IlxmMjZjIn0uZmEtdHdpdGNoOmJlZm9yZXtjb250ZW50OiJcZjFlOCJ9LmZhLXR3aXR0ZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMDk5In0uZmEtdHdpdHRlci1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMDgxIn0uZmEtdHlwbzM6YmVmb3Jle2NvbnRlbnQ6IlxmNDJiIn0uZmEtdWJlcjpiZWZvcmV7Y29udGVudDoiXGY0MDIifS5mYS11YnVudHU6YmVmb3Jle2NvbnRlbnQ6IlxmN2RmIn0uZmEtdWlraXQ6YmVmb3Jle2NvbnRlbnQ6IlxmNDAzIn0uZmEtdW1icmFjbzpiZWZvcmV7Y29udGVudDoiXGY4ZTgifS5mYS11bWJyZWxsYTpiZWZvcmV7Y29udGVudDoiXGYwZTkifS5mYS11bWJyZWxsYS1iZWFjaDpiZWZvcmV7Y29udGVudDoiXGY1Y2EifS5mYS11bmNoYXJ0ZWQ6YmVmb3Jle2NvbnRlbnQ6IlxlMDg0In0uZmEtdW5kZXJsaW5lOmJlZm9yZXtjb250ZW50OiJcZjBjZCJ9LmZhLXVuZG86YmVmb3Jle2NvbnRlbnQ6IlxmMGUyIn0uZmEtdW5kby1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMmVhIn0uZmEtdW5pcmVnaXN0cnk6YmVmb3Jle2NvbnRlbnQ6IlxmNDA0In0uZmEtdW5pdHk6YmVmb3Jle2NvbnRlbnQ6IlxlMDQ5In0uZmEtdW5pdmVyc2FsLWFjY2VzczpiZWZvcmV7Y29udGVudDoiXGYyOWEifS5mYS11bml2ZXJzaXR5OmJlZm9yZXtjb250ZW50OiJcZjE5YyJ9LmZhLXVubGluazpiZWZvcmV7Y29udGVudDoiXGYxMjcifS5mYS11bmxvY2s6YmVmb3Jle2NvbnRlbnQ6IlxmMDljIn0uZmEtdW5sb2NrLWFsdDpiZWZvcmV7Y29udGVudDoiXGYxM2UifS5mYS11bnNwbGFzaDpiZWZvcmV7Y29udGVudDoiXGUwN2MifS5mYS11bnRhcHBkOmJlZm9yZXtjb250ZW50OiJcZjQwNSJ9LmZhLXVwbG9hZDpiZWZvcmV7Y29udGVudDoiXGYwOTMifS5mYS11cHM6YmVmb3Jle2NvbnRlbnQ6IlxmN2UwIn0uZmEtdXNiOmJlZm9yZXtjb250ZW50OiJcZjI4NyJ9LmZhLXVzZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMDA3In0uZmEtdXNlci1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNDA2In0uZmEtdXNlci1hbHQtc2xhc2g6YmVmb3Jle2NvbnRlbnQ6IlxmNGZhIn0uZmEtdXNlci1hc3Ryb25hdXQ6YmVmb3Jle2NvbnRlbnQ6IlxmNGZiIn0uZmEtdXNlci1jaGVjazpiZWZvcmV7Y29udGVudDoiXGY0ZmMifS5mYS11c2VyLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGYyYmQifS5mYS11c2VyLWNsb2NrOmJlZm9yZXtjb250ZW50OiJcZjRmZCJ9LmZhLXVzZXItY29nOmJlZm9yZXtjb250ZW50OiJcZjRmZSJ9LmZhLXVzZXItZWRpdDpiZWZvcmV7Y29udGVudDoiXGY0ZmYifS5mYS11c2VyLWZyaWVuZHM6YmVmb3Jle2NvbnRlbnQ6IlxmNTAwIn0uZmEtdXNlci1ncmFkdWF0ZTpiZWZvcmV7Y29udGVudDoiXGY1MDEifS5mYS11c2VyLWluanVyZWQ6YmVmb3Jle2NvbnRlbnQ6IlxmNzI4In0uZmEtdXNlci1sb2NrOmJlZm9yZXtjb250ZW50OiJcZjUwMiJ9LmZhLXVzZXItbWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGYwIn0uZmEtdXNlci1taW51czpiZWZvcmV7Y29udGVudDoiXGY1MDMifS5mYS11c2VyLW5pbmphOmJlZm9yZXtjb250ZW50OiJcZjUwNCJ9LmZhLXVzZXItbnVyc2U6YmVmb3Jle2NvbnRlbnQ6IlxmODJmIn0uZmEtdXNlci1wbHVzOmJlZm9yZXtjb250ZW50OiJcZjIzNCJ9LmZhLXVzZXItc2VjcmV0OmJlZm9yZXtjb250ZW50OiJcZjIxYiJ9LmZhLXVzZXItc2hpZWxkOmJlZm9yZXtjb250ZW50OiJcZjUwNSJ9LmZhLXVzZXItc2xhc2g6YmVmb3Jle2NvbnRlbnQ6IlxmNTA2In0uZmEtdXNlci10YWc6YmVmb3Jle2NvbnRlbnQ6IlxmNTA3In0uZmEtdXNlci10aWU6YmVmb3Jle2NvbnRlbnQ6IlxmNTA4In0uZmEtdXNlci10aW1lczpiZWZvcmV7Y29udGVudDoiXGYyMzUifS5mYS11c2VyczpiZWZvcmV7Y29udGVudDoiXGYwYzAifS5mYS11c2Vycy1jb2c6YmVmb3Jle2NvbnRlbnQ6IlxmNTA5In0uZmEtdXNlcnMtc2xhc2g6YmVmb3Jle2NvbnRlbnQ6IlxlMDczIn0uZmEtdXNwczpiZWZvcmV7Y29udGVudDoiXGY3ZTEifS5mYS11c3N1bm5haDpiZWZvcmV7Y29udGVudDoiXGY0MDcifS5mYS11dGVuc2lsLXNwb29uOmJlZm9yZXtjb250ZW50OiJcZjJlNSJ9LmZhLXV0ZW5zaWxzOmJlZm9yZXtjb250ZW50OiJcZjJlNyJ9LmZhLXZhYWRpbjpiZWZvcmV7Y29udGVudDoiXGY0MDgifS5mYS12ZWN0b3Itc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjVjYiJ9LmZhLXZlbnVzOmJlZm9yZXtjb250ZW50OiJcZjIyMSJ9LmZhLXZlbnVzLWRvdWJsZTpiZWZvcmV7Y29udGVudDoiXGYyMjYifS5mYS12ZW51cy1tYXJzOmJlZm9yZXtjb250ZW50OiJcZjIyOCJ9LmZhLXZlc3Q6YmVmb3Jle2NvbnRlbnQ6IlxlMDg1In0uZmEtdmVzdC1wYXRjaGVzOmJlZm9yZXtjb250ZW50OiJcZTA4NiJ9LmZhLXZpYWNvaW46YmVmb3Jle2NvbnRlbnQ6IlxmMjM3In0uZmEtdmlhZGVvOmJlZm9yZXtjb250ZW50OiJcZjJhOSJ9LmZhLXZpYWRlby1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMmFhIn0uZmEtdmlhbDpiZWZvcmV7Y29udGVudDoiXGY0OTIifS5mYS12aWFsczpiZWZvcmV7Y29udGVudDoiXGY0OTMifS5mYS12aWJlcjpiZWZvcmV7Y29udGVudDoiXGY0MDkifS5mYS12aWRlbzpiZWZvcmV7Y29udGVudDoiXGYwM2QifS5mYS12aWRlby1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGY0ZTIifS5mYS12aWhhcmE6YmVmb3Jle2NvbnRlbnQ6IlxmNmE3In0uZmEtdmltZW86YmVmb3Jle2NvbnRlbnQ6IlxmNDBhIn0uZmEtdmltZW8tc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjE5NCJ9LmZhLXZpbWVvLXY6YmVmb3Jle2NvbnRlbnQ6IlxmMjdkIn0uZmEtdmluZTpiZWZvcmV7Y29udGVudDoiXGYxY2EifS5mYS12aXJ1czpiZWZvcmV7Y29udGVudDoiXGUwNzQifS5mYS12aXJ1cy1zbGFzaDpiZWZvcmV7Y29udGVudDoiXGUwNzUifS5mYS12aXJ1c2VzOmJlZm9yZXtjb250ZW50OiJcZTA3NiJ9LmZhLXZrOmJlZm9yZXtjb250ZW50OiJcZjE4OSJ9LmZhLXZudjpiZWZvcmV7Y29udGVudDoiXGY0MGIifS5mYS12b2ljZW1haWw6YmVmb3Jle2NvbnRlbnQ6IlxmODk3In0uZmEtdm9sbGV5YmFsbC1iYWxsOmJlZm9yZXtjb250ZW50OiJcZjQ1ZiJ9LmZhLXZvbHVtZS1kb3duOmJlZm9yZXtjb250ZW50OiJcZjAyNyJ9LmZhLXZvbHVtZS1tdXRlOmJlZm9yZXtjb250ZW50OiJcZjZhOSJ9LmZhLXZvbHVtZS1vZmY6YmVmb3Jle2NvbnRlbnQ6IlxmMDI2In0uZmEtdm9sdW1lLXVwOmJlZm9yZXtjb250ZW50OiJcZjAyOCJ9LmZhLXZvdGUteWVhOmJlZm9yZXtjb250ZW50OiJcZjc3MiJ9LmZhLXZyLWNhcmRib2FyZDpiZWZvcmV7Y29udGVudDoiXGY3MjkifS5mYS12dWVqczpiZWZvcmV7Y29udGVudDoiXGY0MWYifS5mYS13YWxraW5nOmJlZm9yZXtjb250ZW50OiJcZjU1NCJ9LmZhLXdhbGxldDpiZWZvcmV7Y29udGVudDoiXGY1NTUifS5mYS13YXJlaG91c2U6YmVmb3Jle2NvbnRlbnQ6IlxmNDk0In0uZmEtd2F0Y2htYW4tbW9uaXRvcmluZzpiZWZvcmV7Y29udGVudDoiXGUwODcifS5mYS13YXRlcjpiZWZvcmV7Y29udGVudDoiXGY3NzMifS5mYS13YXZlLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGY4M2UifS5mYS13YXplOmJlZm9yZXtjb250ZW50OiJcZjgzZiJ9LmZhLXdlZWJseTpiZWZvcmV7Y29udGVudDoiXGY1Y2MifS5mYS13ZWlibzpiZWZvcmV7Y29udGVudDoiXGYxOGEifS5mYS13ZWlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNDk2In0uZmEtd2VpZ2h0LWhhbmdpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmNWNkIn0uZmEtd2VpeGluOmJlZm9yZXtjb250ZW50OiJcZjFkNyJ9LmZhLXdoYXRzYXBwOmJlZm9yZXtjb250ZW50OiJcZjIzMiJ9LmZhLXdoYXRzYXBwLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGY0MGMifS5mYS13aGVlbGNoYWlyOmJlZm9yZXtjb250ZW50OiJcZjE5MyJ9LmZhLXdobWNzOmJlZm9yZXtjb250ZW50OiJcZjQwZCJ9LmZhLXdpZmk6YmVmb3Jle2NvbnRlbnQ6IlxmMWViIn0uZmEtd2lraXBlZGlhLXc6YmVmb3Jle2NvbnRlbnQ6IlxmMjY2In0uZmEtd2luZDpiZWZvcmV7Y29udGVudDoiXGY3MmUifS5mYS13aW5kb3ctY2xvc2U6YmVmb3Jle2NvbnRlbnQ6IlxmNDEwIn0uZmEtd2luZG93LW1heGltaXplOmJlZm9yZXtjb250ZW50OiJcZjJkMCJ9LmZhLXdpbmRvdy1taW5pbWl6ZTpiZWZvcmV7Y29udGVudDoiXGYyZDEifS5mYS13aW5kb3ctcmVzdG9yZTpiZWZvcmV7Y29udGVudDoiXGYyZDIifS5mYS13aW5kb3dzOmJlZm9yZXtjb250ZW50OiJcZjE3YSJ9LmZhLXdpbmUtYm90dGxlOmJlZm9yZXtjb250ZW50OiJcZjcyZiJ9LmZhLXdpbmUtZ2xhc3M6YmVmb3Jle2NvbnRlbnQ6IlxmNGUzIn0uZmEtd2luZS1nbGFzcy1hbHQ6YmVmb3Jle2NvbnRlbnQ6IlxmNWNlIn0uZmEtd2l4OmJlZm9yZXtjb250ZW50OiJcZjVjZiJ9LmZhLXdpemFyZHMtb2YtdGhlLWNvYXN0OmJlZm9yZXtjb250ZW50OiJcZjczMCJ9LmZhLXdvZHU6YmVmb3Jle2NvbnRlbnQ6IlxlMDg4In0uZmEtd29sZi1wYWNrLWJhdHRhbGlvbjpiZWZvcmV7Y29udGVudDoiXGY1MTQifS5mYS13b24tc2lnbjpiZWZvcmV7Y29udGVudDoiXGYxNTkifS5mYS13b3JkcHJlc3M6YmVmb3Jle2NvbnRlbnQ6IlxmMTlhIn0uZmEtd29yZHByZXNzLXNpbXBsZTpiZWZvcmV7Y29udGVudDoiXGY0MTEifS5mYS13cGJlZ2lubmVyOmJlZm9yZXtjb250ZW50OiJcZjI5NyJ9LmZhLXdwZXhwbG9yZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMmRlIn0uZmEtd3Bmb3JtczpiZWZvcmV7Y29udGVudDoiXGYyOTgifS5mYS13cHJlc3NyOmJlZm9yZXtjb250ZW50OiJcZjNlNCJ9LmZhLXdyZW5jaDpiZWZvcmV7Y29udGVudDoiXGYwYWQifS5mYS14LXJheTpiZWZvcmV7Y29udGVudDoiXGY0OTcifS5mYS14Ym94OmJlZm9yZXtjb250ZW50OiJcZjQxMiJ9LmZhLXhpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmMTY4In0uZmEteGluZy1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTY5In0uZmEteS1jb21iaW5hdG9yOmJlZm9yZXtjb250ZW50OiJcZjIzYiJ9LmZhLXlhaG9vOmJlZm9yZXtjb250ZW50OiJcZjE5ZSJ9LmZhLXlhbW1lcjpiZWZvcmV7Y29udGVudDoiXGY4NDAifS5mYS15YW5kZXg6YmVmb3Jle2NvbnRlbnQ6IlxmNDEzIn0uZmEteWFuZGV4LWludGVybmF0aW9uYWw6YmVmb3Jle2NvbnRlbnQ6IlxmNDE0In0uZmEteWFybjpiZWZvcmV7Y29udGVudDoiXGY3ZTMifS5mYS15ZWxwOmJlZm9yZXtjb250ZW50OiJcZjFlOSJ9LmZhLXllbi1zaWduOmJlZm9yZXtjb250ZW50OiJcZjE1NyJ9LmZhLXlpbi15YW5nOmJlZm9yZXtjb250ZW50OiJcZjZhZCJ9LmZhLXlvYXN0OmJlZm9yZXtjb250ZW50OiJcZjJiMSJ9LmZhLXlvdXR1YmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTY3In0uZmEteW91dHViZS1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmNDMxIn0uZmEtemhpaHU6YmVmb3Jle2NvbnRlbnQ6IlxmNjNmIn0uc3Itb25seXtib3JkZXI6MDtjbGlwOnJlY3QoMCwwLDAsMCk7aGVpZ2h0OjFweDttYXJnaW46LTFweDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzowO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjFweH0uc3Itb25seS1mb2N1c2FibGU6YWN0aXZlLC5zci1vbmx5LWZvY3VzYWJsZTpmb2N1c3tjbGlwOmF1dG87aGVpZ2h0OmF1dG87bWFyZ2luOjA7b3ZlcmZsb3c6dmlzaWJsZTtwb3NpdGlvbjpzdGF0aWM7d2lkdGg6YXV0b31AZm9udC1mYWNle2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBCcmFuZHMiO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LWRpc3BsYXk6YmxvY2s7c3JjOnVybCguLi93ZWJmb250cy9mcmVlLWZhLWJyYW5kcy00MDAuZW90KTtzcmM6dXJsKC4uL3dlYmZvbnRzL2ZyZWUtZmEtYnJhbmRzLTQwMC5lb3Q/I2llZml4KSBmb3JtYXQoImVtYmVkZGVkLW9wZW50eXBlIiksdXJsKC4uL3dlYmZvbnRzL2ZyZWUtZmEtYnJhbmRzLTQwMC53b2ZmMikgZm9ybWF0KCJ3b2ZmMiIpLHVybCguLi93ZWJmb250cy9mcmVlLWZhLWJyYW5kcy00MDAud29mZikgZm9ybWF0KCJ3b2ZmIiksdXJsKC4uL3dlYmZvbnRzL2ZyZWUtZmEtYnJhbmRzLTQwMC50dGYpIGZvcm1hdCgidHJ1ZXR5cGUiKSx1cmwoLi4vd2ViZm9udHMvZnJlZS1mYS1icmFuZHMtNDAwLnN2ZyNmb250YXdlc29tZSkgZm9ybWF0KCJzdmciKX0uZmFie2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBCcmFuZHMifUBmb250LWZhY2V7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LWRpc3BsYXk6YmxvY2s7c3JjOnVybCguLi93ZWJmb250cy9mcmVlLWZhLXJlZ3VsYXItNDAwLmVvdCk7c3JjOnVybCguLi93ZWJmb250cy9mcmVlLWZhLXJlZ3VsYXItNDAwLmVvdD8jaWVmaXgpIGZvcm1hdCgiZW1iZWRkZWQtb3BlbnR5cGUiKSx1cmwoLi4vd2ViZm9udHMvZnJlZS1mYS1yZWd1bGFyLTQwMC53b2ZmMikgZm9ybWF0KCJ3b2ZmMiIpLHVybCguLi93ZWJmb250cy9mcmVlLWZhLXJlZ3VsYXItNDAwLndvZmYpIGZvcm1hdCgid29mZiIpLHVybCguLi93ZWJmb250cy9mcmVlLWZhLXJlZ3VsYXItNDAwLnR0ZikgZm9ybWF0KCJ0cnVldHlwZSIpLHVybCguLi93ZWJmb250cy9mcmVlLWZhLXJlZ3VsYXItNDAwLnN2ZyNmb250YXdlc29tZSkgZm9ybWF0KCJzdmciKX1AZm9udC1mYWNle2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBQcm8iO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtmb250LWRpc3BsYXk6YmxvY2s7c3JjOnVybCguLi93ZWJmb250cy9mcmVlLWZhLXJlZ3VsYXItNDAwLmVvdCk7c3JjOnVybCguLi93ZWJmb250cy9mcmVlLWZhLXJlZ3VsYXItNDAwLmVvdD8jaWVmaXgpIGZvcm1hdCgiZW1iZWRkZWQtb3BlbnR5cGUiKSx1cmwoLi4vd2ViZm9udHMvZnJlZS1mYS1yZWd1bGFyLTQwMC53b2ZmMikgZm9ybWF0KCJ3b2ZmMiIpLHVybCguLi93ZWJmb250cy9mcmVlLWZhLXJlZ3VsYXItNDAwLndvZmYpIGZvcm1hdCgid29mZiIpLHVybCguLi93ZWJmb250cy9mcmVlLWZhLXJlZ3VsYXItNDAwLnR0ZikgZm9ybWF0KCJ0cnVldHlwZSIpLHVybCguLi93ZWJmb250cy9mcmVlLWZhLXJlZ3VsYXItNDAwLnN2ZyNmb250YXdlc29tZSkgZm9ybWF0KCJzdmciKX0uZmFiLC5mYXJ7Zm9udC13ZWlnaHQ6NDAwfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjkwMDtmb250LWRpc3BsYXk6YmxvY2s7c3JjOnVybCguLi93ZWJmb250cy9mcmVlLWZhLXNvbGlkLTkwMC5lb3QpO3NyYzp1cmwoLi4vd2ViZm9udHMvZnJlZS1mYS1zb2xpZC05MDAuZW90PyNpZWZpeCkgZm9ybWF0KCJlbWJlZGRlZC1vcGVudHlwZSIpLHVybCguLi93ZWJmb250cy9mcmVlLWZhLXNvbGlkLTkwMC53b2ZmMikgZm9ybWF0KCJ3b2ZmMiIpLHVybCguLi93ZWJmb250cy9mcmVlLWZhLXNvbGlkLTkwMC53b2ZmKSBmb3JtYXQoIndvZmYiKSx1cmwoLi4vd2ViZm9udHMvZnJlZS1mYS1zb2xpZC05MDAudHRmKSBmb3JtYXQoInRydWV0eXBlIiksdXJsKC4uL3dlYmZvbnRzL2ZyZWUtZmEtc29saWQtOTAwLnN2ZyNmb250YXdlc29tZSkgZm9ybWF0KCJzdmciKX1AZm9udC1mYWNle2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBQcm8iO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjkwMDtmb250LWRpc3BsYXk6YmxvY2s7c3JjOnVybCguLi93ZWJmb250cy9mcmVlLWZhLXNvbGlkLTkwMC5lb3QpO3NyYzp1cmwoLi4vd2ViZm9udHMvZnJlZS1mYS1zb2xpZC05MDAuZW90PyNpZWZpeCkgZm9ybWF0KCJlbWJlZGRlZC1vcGVudHlwZSIpLHVybCguLi93ZWJmb250cy9mcmVlLWZhLXNvbGlkLTkwMC53b2ZmMikgZm9ybWF0KCJ3b2ZmMiIpLHVybCguLi93ZWJmb250cy9mcmVlLWZhLXNvbGlkLTkwMC53b2ZmKSBmb3JtYXQoIndvZmYiKSx1cmwoLi4vd2ViZm9udHMvZnJlZS1mYS1zb2xpZC05MDAudHRmKSBmb3JtYXQoInRydWV0eXBlIiksdXJsKC4uL3dlYmZvbnRzL2ZyZWUtZmEtc29saWQtOTAwLnN2ZyNmb250YXdlc29tZSkgZm9ybWF0KCJzdmciKX0uZmEsLmZhciwuZmFze2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIn0uZmEsLmZhc3tmb250LXdlaWdodDo5MDB9"}},"time_used":8,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":6,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/54681.a717110e6749f307ed6d.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.296Z","timestamp":1785126257296,"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-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/54681.a717110e6749f307ed6d.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/crypto-mkt-screener/?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 04:24:17 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/\"6a041685-15e\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Wed, 13 May 2026 06:13: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.52\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/13/2026 09:56:17\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: fae4c3fb3ca98910ac920f376e5abd44\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":350,"size_decoded":954,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (350), with no line terminators","md5":"f2e28dcef513e7329db6a3a69720bb48","sha1":"d2b0bc2f96723e3d74402c72a78a9a449405c692","sha256":"b2adba47f3ef9121bd8fb32842dcca6edcc4b9e36084de7724ef7244f6b03640","sha512":"97e9c6797a664f80308677fd34c5ddaafe0f74b206038c67761074bc9062d4439f8bd8aaae50193cd70d06f3baa8f30eb1fad236115eb4cda845f8dc922c1e2f","ssdeep":"","tlshash":"60e08cc3f0c6000444a341329c00b738fdaf98588b836ea4805e77304b166cf3b30dae","first_seen":"2026-05-13T13:23:52.95015Z","last_seen":"2026-07-27T07:07:13.998287Z","times_seen":1919,"resource_available":false,"data":"LmktaGlkZGVue2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LmktaW52aXNpYmxle3Zpc2liaWxpdHk6aGlkZGVuIWltcG9ydGFudH0uaS1hbGlnbl9sZWZ0e3RleHQtYWxpZ246c3RhcnQhaW1wb3J0YW50fS5pLWFsaWduX3JpZ2h0e3RleHQtYWxpZ246ZW5kIWltcG9ydGFudH0uaS1hbGlnbl9jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXIhaW1wb3J0YW50fS5pLWZsb2F0X2xlZnR7ZmxvYXQ6aW5saW5lLXN0YXJ0IWltcG9ydGFudH0uaS1mbG9hdF9yaWdodHtmbG9hdDppbmxpbmUtZW5kIWltcG9ydGFudH0uaS1mbG9hdF9ub25le2Zsb2F0Om5vbmUhaW1wb3J0YW50fS5pLW5vLWJyZWFre3doaXRlLXNwYWNlOm5vd3JhcH0="}},"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":"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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.082Z","timestamp":1785126258082,"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-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/ticker-tape/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: _sp_ses.6222=*; _sp_id.6222=.1785126258.1.1785126258..f046d173-2de7-466f-b43d-da020e6c1d25..5e0c746c-9d4f-48c1-a771-92d2f9f1761c.1785126257760.1\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 04:24:18 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: 64d31d30911fe20fd2c57ff62b893a2b\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-27T07:05:45.467506Z","times_seen":946,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s5NzUwOV0sezg2NDI3NChlKXtlLmV4cG9ydHM9eyJjc3MtdmFsdWUtY29weXJpZ2h0LXRyYW5zaXRpb24tcGFyYW1zLWhhbGYtdGltZSI6Ii4zcyAwcyBjdWJpYy1iZXppZXIoLjQsIC4wMSwgLjIyLCAxKSIsbGFiZWw6ImxhYmVsLWU5YzZkeWNWIixsb2dvV3JhcDoibG9nb1dyYXAtZTljNmR5Y1YiLHN2Z1RleHRXcmFwOiJzdmdUZXh0V3JhcC1lOWM2ZHljViIsbGFyZ2U6ImxhcmdlLWU5YzZkeWNWIn19LDcwNTc5MChlLHQsYyl7InVzZSBzdHJpY3QiO2MuZCh0LHtnZXRUcmFkaW5nVmlld0NvcHlyaWdodERhdGE6KCk9PmF9KTt2YXIgaT1jKDkzNzc0NCkscj1jKDg2NDI3NCksbD1jKDk1OTk5MiksaD1jKDIxMjk2MSk7ZnVuY3Rpb24gYShlLHQpe3JldHVybnsuLi57aWNvbjpsLHN2Z1RleHQ6aH0sdGhlbWU6cix1cmw6KDAsaS5nZXRMb2NhbGl6ZWRUdkhvc3RXaXRoVXRtKShlLHQpfX19LDkzNzc0NChlLHQsYyl7InVzZSBzdHJpY3QiO2MuZCh0LHtnZXRMb2NhbGl6ZWRUdkhvc3RXaXRoVXRtOigpPT5sfSk7dmFyIGk9YygzNjQxODgpLHI9Yyg2MDE1ODcpO2Z1bmN0aW9uIGwoZSx0KXtjb25zdCBjPSgwLGkuZ2V0VFZIb3N0RnJvbUxvY2FsZSkoZXx8ImVuIiksbD10PygwLHIuYnVpbGRVdG1RdWVyeVN0cmluZykodCk6IiI7cmV0dXJuYGh0dHBzOi8vJHtjfSR7bD8iPyIrbDoiIn1gfX0sMzE5ODcyKGUsdCxjKXsidXNlIHN0cmljdCI7Yy5kKHQse2dldExvY2FsaXplZERvbWFpbjooKT0+cn0pO2NvbnN0IGk9e2FyX0FFOiJhciIsZGVfREU6ImRlIixlbjoid3d3IixlczoiZXMiLGNhX0VTOiJlcyIsZmFfSVI6Ind3dyIsZnI6ImZyIixoZV9JTDoiaWwiLGlkOiJpZCIsaW46ImluIixpdDoiaXQiLGphOiJqcCIsa3I6ImtyIixtc19NWToibXkiLHBsOiJwbCIsYnI6ImJyIixydToicnUiLHN2X1NFOiJzZSIsdGhfVEg6InRoIix0cjoidHIiLHVrOiJ1ayIsdmlfVk46InZuIix6aF9DTjoiY24iLHpoX1RXOiJ0dyJ9O2Z1bmN0aW9uIHIoZSl7cmV0dXJuIGlbZV18fCJ3d3cifX0sMzY0MTg4KGUsdCxjKXsidXNlIHN0cmljdCI7Yy5kKHQse2dldFRWSG9zdEZyb21Mb2NhbGU6KCk9PnJ9KTt2YXIgaT1jKDMxOTg3Mik7ZnVuY3Rpb24gcihlKXtyZXR1cm4oMCxpLmdldExvY2FsaXplZERvbWFpbikoZSkrIi50cmFkaW5ndmlldy5jb20ifX0sOTU5OTkyKGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNyAxMCIgd2lkdGg9IjE3IiBoZWlnaHQ9IjEwIiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSIjMTMxNzIyIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEzLjQyIDkuMDRIOS40N2wzLjU2LTloMy45NGwtMy41NSA5Wk03IC4wNEgwdjNoNHY2aDN2LTlabTIuNSAzYTEuNSAxLjUgMCAxIDAgMC0zIDEuNSAxLjUgMCAwIDAgMCAzWiIvPjwvc3ZnPid9LDIxMjk2MShlKXsKZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDcxIDEzIiB3aWR0aD0iNzEiIGhlaWdodD0iMTMiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiMxMzE3MjIiIGQ9Ik01My4xIDJjMCAuNTctLjQ5IDEuMDMtMS4wOSAxLjAzLS41OCAwLTEuMDctLjQ2LTEuMDctMS4wMyAwLS41Ny41LTEuMDQgMS4wNy0xLjA0LjYgMCAxLjA4LjQ3IDEuMDggMS4wNFpNNTIuOSAxMGgtMS43NlYzLjY1aDEuNzZWMTBaTTI2LjQ3IDMuMDNjLjYgMCAxLjA4LS40NiAxLjA4LTEuMDMgMC0uNTctLjQ4LTEuMDMtMS4wOC0xLjAzLS41OCAwLTEuMDcuNDYtMS4wNyAxLjAzIDAgLjU3LjQ5IDEuMDMgMS4wNyAxLjAzWk0yNS41NyAxMGgxLjc0VjMuNWgtMS43NFYxMFpNNC4wNyAxMEgyLjMzVjIuNzRIMFYxaDYuNHYxLjc0SDQuMDZWMTBaTTguMTQgMTAgNi4zOSAxMFYzLjQ5aDEuNzV2MS4xYy4yLS41OC43Ny0xLjAyIDEuNDYtMS4wMmguMDJjLjE4IDAgLjM1IDAgLjU1LjA1djEuNjZhMi4zMyAyLjMzIDAgMCAwLS43Ni0uMTJjLS44IDAtMS4yNy41OC0xLjI3IDEuNTdWMTBaTTMwLjIyIDEwaC0xLjc1VjMuNWgxLjc1di41N2MuMzMtLjQ3Ljg5LS43IDEuNjktLjcgMS40OCAwIDIuMzcgMS4wNCAyLjM3IDIuNTlWMTBoLTEuNzRWNi40YzAtLjg2LS4zMy0xLjU1LTEuMDMtMS41NS0uNzggMC0xLjMuNTQtMS4zIDEuNjhWMTBaTTQ2Ljk1IDEwbDMuNi05aC0yLjAzTDQ2LjIgNy4yNyA0My41OCAxaC0yLjAzbDMuNjYgOWgxLjc0Wk02OC4yNSAxMGgtMS43bC0xLjE4LTMuNzVMNjQuMjEgMTBoLTEuN2wtMi4wOC02LjVoMS44M2wxLjE5IDQuMSAxLjI2LTQuMWgxLjMxbDEuMjggNC4xIDEuMTctNC4xaDEuODRMNjguMjUgMTBaIi8+PHBhdGggZmlsbD0iIzEzMTcyMiIgZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMy4zMiAxMC4wMmMuODggMCAxLjUtLjQ0IDEuNzktLjg1VjEwaDEuNzlWMy41SDE1LjF2LjdhMi4yIDIuMiAwIDAgMC0xLjgtLjg1Yy0xLjcgMC0zIDEuNTQtMyAzLjM0IDAgMS44IDEuMyAzLjMzIDMgMy4zM1ptLjM3LTEuNmMtLjk3IDAtMS42MS0uNzItMS42MS0xLjczcy42NC0xLjc0IDEuNi0xLjc0Yy45OCAwIDEuNjIuNzMgMS42MiAxLjc0IDAgMS0uNjQgMS43NC0xLjYxIDEuNzRaTTIyLjY2IDkuMTdjLS4zLjQtLjkuODUtMS43OS44NS0xLjcgMC0zLTEuNTMtMy0zLjMzczEuMy0zLjM0IDMtMy4zNGMuODggMCAxLjUuNDUgMS44Ljg2VjFoMS43NHY5aC0xLjc1di0uODNabS0zLjAzLTIuNDhjMCAxIC42NCAxLjc0IDEuNjEgMS43NC45NyAwIDEuNjEtLjczIDEuNjEtMS43NHMtLjY0LTEuNzQtMS42LTEuNzRjLS45OCAwLTEuNjIuNzMtMS42MiAxLjc0Wk0zOC40OCAxMi42OGMxLjk2IDAgMy40Mi0xIDMuNDItMy4zVjMuNWgtMS44di43MmEyLjEgMi4xIDAgMCAwLTEuNzgtLjg2Yy0xLjY4IDAtMy4wMiAxLjQzLTMuMDIgMy4yNCAwIDEuNzkgMS4zNCAzLjMgMy4wMiAzLjNhMi4yIDIuMiAwIDAgMCAxLjc4LS45M3YuNDRjMCAxLjAyLS42IDEuNzUtMS42NCAxLjc1LS43MiAwLTEuNDMtLjI0LTItLjhsLS45NSAxLjMxYy43Mi43IDEuODYgMS4wMiAyLjk3IDEuMDJabS4yLTQuNDZhMS42IDEuNiAwIDAgMS0xLjYyLTEuNjNjMC0uOTkuNzUtMS42NCAxLjYzLTEuNjQuODggMCAxLjYyLjY1IDEuNjIgMS42NGExLjYgMS42IDAgMCAxLTEuNjIgMS42M1pNNjAuMyA4LjU2QTMuNDcgMy40NyAwIDAgMSA1Ny4zNSAxMGMtMS45IDAtMy4zOS0xLjMxLTMuMzktMy4zMyAwLTEuOSAxLjQyLTMuMzQgMy4zNy0zLjM0IDEuNjcgMCAzLjE0IDEuMDYgMy4xNCAzLjE1di4wOWMwIC4xNSAwIC4zNS0uMDIuNTZoLTQuNzljLjEuODYuODYgMS4yOCAxLjcgMS4yOC44MSAwIDEuMzYtLjM2IDEuNjUtLjgxbDEuMy45N1ptLTMuMDQtMy44Yy0uNjUgMC0xLjM4LjM0LTEuNTQgMS4xMmgyLjk5Yy0uMTUtLjc3LS44LTEuMTEtMS40NS0xLjExWiIvPjwvc3ZnPid9fV0pOw=="}},"time_used":4,"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":"s3-symbol-logo.tradingview.com/crypto/XTVCXRP.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.475Z","timestamp":1785126258475,"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 /crypto/XTVCXRP.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 04:24:18 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: \"4cc138d1e09d2133eeca65966f3894f0\"\r\nlast-modified: Wed, 08 Sep 2021 09:01:05 GMT\r\ncdn-cachedat: 08/09/2025 14:29:13\r\nx-amz-id-2: gOapewVGKATL6xPko0x3ibGM2TR7P0oRsU/T2B12Ess0lbCW3xWnJ8PmelhxvoURGgfemeHjLec=\r\nx-amz-request-id: SV78YBJMGBYXM9S2\r\nx-amz-meta-hash: 4cc138d1e09d2133eeca65966f3894f0\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: b3394614a774b0179c1b385e9404fbba\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":661,"size_decoded":1327,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (661), with no line terminators","md5":"4cc138d1e09d2133eeca65966f3894f0","sha1":"cf40ee7fc2a18c2f6ae3c7522b6234ca45743623","sha256":"b2296bde0cbe8bc2cd069e06dcc26ebcd6cd3203dea044abf5a2fed0dc4ffbf6","sha512":"ba132f8034dc017c417c82c74747a3b419e760f9c18213fbb567e6558912f47108c01e8b6d4af1dd422daa51518095a660ddb2554a2b614d01ef8ed4c6039f9f","ssdeep":"","tlshash":"d301236dc738fd19fa45c65ced248849124770db875e01cbe3c0ae0b30b96c7580cd54","first_seen":"2023-05-02T00:43:59Z","last_seen":"2026-07-27T07:05:43.255969Z","times_seen":2223,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSJ1cmwoI3BhaW50MF9saW5lYXIpIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTEyLjUzMyA0aDEuNDQ4TDEwLjk3IDcuNjdjLS41MDcuNjE3LTEuMjMzLjk3Ni0xLjk3Ljk3Ni0uNzM3IDAtMS40NjMtLjM1OS0xLjk3LS45NzVMNC4wMTUgNGgxLjQ1Mkw3Ljc1IDYuODEyYy42Ny44MSAxLjgyOS44MSAyLjQ5OCAwTDEyLjUzMyA0em0tNy4wODYgOS45OTRINGwzLjAzLTMuNjZjLjUwOC0uNjE2IDEuMjM0LS45NzUgMS45NzItLjk3NXMxLjQ2NS4zNiAxLjk3My45NzZMMTQgMTRoLTEuNDQ3bC0yLjMtMi44Yy0uNjY5LS44MTItMS44MjgtLjgxMi0yLjQ5NyAwbC0yLjMwOSAyLjc5NHoiIGZpbGw9IiNmZmYiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9InBhaW50MF9saW5lYXIiIHgxPSIzLjM0OSIgeTE9IjMuMTIyIiB4Mj0iMjEuOTA0IiB5Mj0iMjQuNDM0IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iIzFBMUUyMSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzA2MDYwQSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjwvc3ZnPg=="}},"time_used":16,"timings":{"blocked":-1,"dns":1,"connect":2,"send":0,"wait":3,"receive":-1,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCUSDS2.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.503Z","timestamp":1785126258503,"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 /crypto/XTVCUSDS2.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 04:24:18 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: \"49a55fe9c430456d6d1623c58839afe3\"\r\nlast-modified: Mon, 11 Nov 2024 13:48:54 GMT\r\nx-amz-id-2: lFCrvAC8CbEQatk+Hu/jyCUm+9EUm1luvKL7S2ZKmGUSvV8sLOZMmOHBBwvOLONbvzR1vjdv0ws=\r\nx-amz-request-id: C0CBFY7RRYKMR4K7\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 49a55fe9c430456d6d1623c58839afe3\r\ncdn-proxyver: 1.43\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 03/15/2026 19:18:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 3bac642d79e69bd1b52f4d324b9b1aaf\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":1523,"size_decoded":1791,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1523), with no line terminators","md5":"49a55fe9c430456d6d1623c58839afe3","sha1":"8e7a7f9735d16bf83b88c164909684d625933139","sha256":"1ca1fbfdd30fc2885af13d9bbbb2d89e263a945211540090603a422c21e5dd78","sha512":"47f00196264755a7f2ff05283e2791f1dfe115d78a857200ddda40db8178fc2159056d8cd80a15dc370f8c8309f0af202c397eda071b2a7bed0f01f7707e9db2","ssdeep":"","tlshash":"52312074d148c66d8d47c66ddf7a80a0230f40a6f1db97e4a8fb87ac602f4d5de09074","first_seen":"2026-04-20T22:46:55.054045Z","last_seen":"2026-07-27T07:05:43.241749Z","times_seen":233,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMi4zMSAxMi43NWMuMzMtLjM3LjU0LS43Ni42My0xLjJhMi41MyAyLjUzIDAgMCAwLS42LTIuMjkgNS42IDUuNiAwIDAgMC0xLjktMS4yNWwtMS40LS42NGEyLjggMi44IDAgMCAxLS43OC0uNmMtLjI4LS4yOS0uMzYtLjYxLS4yNC0uOTYuMTgtLjUyLjU3LS44IDEuMTYtLjgzLjQ4LS4wMy45Ny4wOSAxLjQ1LjM2LjU4LjMyLjk0Ljc4IDEuMDggMS40LjAxLjA0LjA0LjA2LjA4LjA2aC45NWMuMDMgMCAuMDQtLjAyLjA0LS4wNWEyLjg3IDIuODcgMCAwIDAtMS41LTIuMTcgNC45NiA0Ljk2IDAgMCAwLTMuMDgtLjU0Yy0uNzIuMDgtMS4zNy4zMi0xLjk1LjcyQTIuNTUgMi41NSAwIDAgMCA1LjEgNi44MmMtLjAyLjQ4LjA1LjkuMjMgMS4yOC4xNC4zLjQuNi43NS45LjMyLjI4LjY3LjUgMS4wNC42Ny41LjIzIDEgLjQ2IDEuNTQuNjkuMzguMTcuNzMuMzcgMS4wMy42Mi4xOC4xNS4zLjMyLjM2LjUyLjA0LjE3LjA1LjM4LjAyLjYzLS4wMi4yNS0uMTcuNDctLjQ0LjY2LS4zMy4yMy0uODEuMy0xLjQ1LjE5YTIuNzIgMi43MiAwIDAgMS0xLjQtLjY2Yy0uNDEtLjM2LS42NS0uOC0uNzItMS4zMyAwLS4wMy0uMDItLjA0LS4wNS0uMDRoLS45NmMtLjAzIDAtLjA0LjAxLS4wNC4wMyAwIC40My4xMS44My4zMyAxLjIyLjI1LjQ2LjYuODMgMS4wNyAxLjEzYTQgNCAwIDAgMCAxLjUuNTdjMS4xNi4yIDIuMjYuMDkgMy4zLS4zNS40Mi0uMTkuOC0uNDYgMS4xMS0uOFpNNi45OCA2LjY5YTIuMDYgMi4wNiAwIDAgMSAuMzMtMS40MmMuMDQtLjA3LjAyLS4wOC0uMDYtLjA1LS4yOC4xMy0uNTIuMy0uNy41NC0uMi4yMy0uMzEuNS0uMzcuOC0uMTMuNjcuMDggMS4yNS42NSAxLjc0LjIyLjE5LjUuMzcuODQuNTUuMi4xLjUyLjI1LjkzLjQybC4yMS4xYy41LjIyLjkxLjQyIDEuMjMuNi4yNy4xNi41MS4zNi43MS42LjI1LjI4LjM4LjYuMzkuOTguMDEuMzUtLjA4LjctLjI5IDEuMDItLjAyLjAzLS4wMi4wNi0uMDIuMDggMCAuMDEgMCAuMDMuMDIuMDNoLjA0Yy41Mi0uMjYuODUtLjY5Ljk5LTEuMjcuMS0uNDEuMDYtLjc5LS4xMi0xLjEzYTIuNSAyLjUgMCAwIDAtMS0xYy0uNC0uMjQtLjgxLS40NC0xLjI2LS42Mi0uNTctLjIzLTEuMDMtLjQ0LTEuMzgtLjY0LS4yOS0uMTYtLjUzLS4zNS0uNzMtLjU2LS4yMy0uMjUtLjM3LS41LS40LS43N1oiIGZpbGw9IiNmZmYiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImEiIHgxPSI5IiB5MT0iMCIgeDI9IjkiIHkyPSIxOCIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiNGRjhENUEiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNGRkMzM0IiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4="}},"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.tradingview-widget.com/static/bundles/embed/94232.ab6731b698a8c2854a90.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.290Z","timestamp":1785126257290,"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-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/94232.ab6731b698a8c2854a90.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/crypto-mkt-screener/?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 04:24:17 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-740\"\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: 43ff4aedb8283d17c0dcb4c3c9572f84\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":1856,"size_decoded":1343,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (1856), with no line terminators","md5":"99c169cccd9c810bfd0d3e50e053d9dd","sha1":"f7c962c5226ce8518e23fcd82bbd02e44b3cd8ba","sha256":"ba11ca3b195a5ed5130a9fdfe05087f5b075dbec6ddff0fbc0ee82ef8a378a37","sha512":"02bba56d2baac91f2618fc15e25d5eb7e986a57c956cd280f3ff695e4d215d29c10a2730d07a71b393c7da7e62a644bc9d417c3aef3b60af475b9f6330a25d50","ssdeep":"","tlshash":"0331f104a050d9f5e212d7788e5dbb7820d13b22ca613da7fe53de0ed086be5e122f24","first_seen":"2026-07-16T20:48:56.389736Z","last_seen":"2026-07-27T07:05:43.344352Z","times_seen":249,"resource_available":false,"data":"LmxvYWRlci1NZ2Y4RUZ3S3tib3R0b206MDtmb250LXNpemU6MDtoZWlnaHQ6MTAwJTtpbnNldC1pbmxpbmUtZW5kOjA7aW5zZXQtaW5saW5lLXN0YXJ0OjA7bWFyZ2luOjAgYXV0bztvcGFjaXR5OjE7cG9zaXRpb246YWJzb2x1dGU7dGV4dC1hbGlnbjpjZW50ZXI7dG9wOjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4zNXMgZWFzZTt3aGl0ZS1zcGFjZTpub3dyYXB9LmxvYWRlci1NZ2Y4RUZ3Sy5zdGF0aWMtTWdmOEVGd0t7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpzdGF0aWN9LmxvYWRlci1NZ2Y4RUZ3SzphZnRlcntjb250ZW50OiIgIjtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MTAwJTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LmxvYWRlci1NZ2Y4RUZ3SyAuaXRlbS1NZ2Y4RUZ3S3tib3JkZXItcmFkaXVzOjEwMCU7ZGlzcGxheTppbmxpbmUtYmxvY2s7b3BhY2l0eToxO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTstLXVpLWxpYi1sb2FkZXItY29sb3ItZGVmYXVsdDpjdXJyZW50Q29sb3I7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS11aS1saWItbG9hZGVyLWNvbG9yLHZhcigtLXVpLWxpYi1sb2FkZXItY29sb3ItZGVmYXVsdCkpfUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpuby1wcmVmZXJlbmNlKXsubG9hZGVyLU1nZjhFRndLIC5pdGVtLU1nZjhFRndLOmZpcnN0LWNoaWxke2FuaW1hdGlvbjp0di1idXR0b24tbG9hZGVyLU1nZjhFRndLIDFzIGluZmluaXRlO2FuaW1hdGlvbi1kZWxheTouMXN9LmxvYWRlci1NZ2Y4RUZ3SyAuaXRlbS1NZ2Y4RUZ3SzpudGgtY2hpbGQoMil7YW5pbWF0aW9uOnR2LWJ1dHRvbi1sb2FkZXItTWdmOEVGd0sgMXMgaW5maW5pdGU7YW5pbWF0aW9uLWRlbGF5Oi4zc30ubG9hZGVyLU1nZjhFRndLIC5pdGVtLU1nZjhFRndLOm50aC1jaGlsZCgzKXthbmltYXRpb246dHYtYnV0dG9uLWxvYWRlci1NZ2Y4RUZ3SyAxcyBlYXNlIGluZmluaXRlO2FuaW1hdGlvbi1kZWxheTouNDVzfX0ubG9hZGVyLU1nZjhFRndLIC5pdGVtLU1nZjhFRndLLC5sb2FkZXItTWdmOEVGd0sgLml0ZW0tTWdmOEVGd0subWVkaXVtLU1nZjhFRndLe2hlaWdodDo2cHg7d2lkdGg6NnB4fS5sb2FkZXItTWdmOEVGd0sgLml0ZW0tTWdmOEVGd0subWVkaXVtLU1nZjhFRndLOm5vdCg6bGFzdC1jaGlsZCksLmxvYWRlci1NZ2Y4RUZ3SyAuaXRlbS1NZ2Y4RUZ3Szpub3QoOmxhc3QtY2hpbGQpe21hcmdpbi1pbmxpbmUtZW5kOjRweH0ubG9hZGVyLU1nZjhFRndLIC5pdGVtLU1nZjhFRndLLnNtYWxsLU1nZjhFRndLe2hlaWdodDo0cHg7d2lkdGg6NHB4fS5sb2FkZXItTWdmOEVGd0sgLml0ZW0tTWdmOEVGd0suc21hbGwtTWdmOEVGd0s6bm90KDpsYXN0LWNoaWxkKXttYXJnaW4taW5saW5lLWVuZDozcHh9LmxvYWRlci1NZ2Y4RUZ3SyAuaXRlbS1NZ2Y4RUZ3Sy5ibGFjay1NZ2Y4RUZ3S3stLXVpLWxpYi1sb2FkZXItY29sb3ItZGVmYXVsdDp2YXIoLS1jb2xvci1kZWZhdWx0LWdyYXkpfS5sb2FkZXItTWdmOEVGd0sgLml0ZW0tTWdmOEVGd0sud2hpdGUtTWdmOEVGd0t7LS11aS1saWItbG9hZGVyLWNvbG9yLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpfS5sb2FkZXItTWdmOEVGd0sgLml0ZW0tTWdmOEVGd0suZ3JheS1NZ2Y4RUZ3S3stLXVpLWxpYi1sb2FkZXItY29sb3ItZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKX0ubG9hZGVyLU1nZjhFRndLIC5pdGVtLU1nZjhFRndLLnByaW1hcnktTWdmOEVGd0t7LS11aS1saWItbG9hZGVyLWNvbG9yLWRlZmF1bHQ6dmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KX1Aa2V5ZnJhbWVzIHR2LWJ1dHRvbi1sb2FkZXItTWdmOEVGd0t7MCUsdG97b3BhY2l0eToxfTYwJXtvcGFjaXR5Oi40fTMwJXtvcGFjaXR5Oi4yfX0="}},"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.tradingview-widget.com/static/bundles/embed/35794.0a273bafc5de50a0d21d.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.294Z","timestamp":1785126257294,"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-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/35794.0a273bafc5de50a0d21d.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/crypto-mkt-screener/?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 04:24:17 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: \"6a608300-929\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Wed, 22 Jul 2026 08:44:48 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:21\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: d4ab35babcec8d7eb52933beaa7cb3bf\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":2345,"size_decoded":1476,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (2345), with no line terminators","md5":"070dbbdaf81468918cc345dc05f9a381","sha1":"2ab8968ccfc58991cdc8860741aecf9533393e0f","sha256":"8782990aacf2d956262c5608c1f9f9be2c54e5b100e7e1fd85521c2424944d72","sha512":"c162784e77aaebd46d2c606d8ec9f965be7c21092d5143c64badbc4cc2b380589455fd4eb60cdd25a9cff11dceab520faac1d1753d1b999596c4c462a0fa0e43","ssdeep":"","tlshash":"e7418bafa148d8b0fe116198b3dd638db6e5ec70a90a05cdb633b839cce17f15d50158","first_seen":"2026-07-22T16:00:00.426214Z","last_seen":"2026-07-27T07:05:43.295511Z","times_seen":184,"resource_available":false,"data":"LnNtYWxsLXRXRElDVGF5ey0tdWktbGliLXByaXZhdGUtc3dpdGNoVmlldy1zaXplOjN9Lm1lZGl1bS10V0RJQ1RheXstLXVpLWxpYi1wcml2YXRlLXN3aXRjaFZpZXctc2l6ZTo0fS5sYXJnZS10V0RJQ1RheXstLXVpLWxpYi1wcml2YXRlLXN3aXRjaFZpZXctc2l6ZTo1fS5zd2l0Y2hWaWV3LXRXRElDVGF5ey0tdWktbGliLXNpemUtZGVmOnZhcigtLXVpLWxpYi1pbi1zd2l0Y2hWaWV3LXNpemUsdmFyKC0tdWktbGliLXByaXZhdGUtc3dpdGNoVmlldy1zaXplLDQpKTstLXVpLWxpYi1zaXplLWRlZi1zbWFsbDpjYWxjKG1heCgwLCAxIC0gKHZhcigtLXVpLWxpYi1zaXplLWRlZikgLSAzKSAqICh2YXIoLS11aS1saWItc2l6ZS1kZWYpIC0gMykpKTstLXVpLWxpYi1zaXplLWRlZi1tZWRpdW06Y2FsYyhtYXgoMCwgMSAtICh2YXIoLS11aS1saWItc2l6ZS1kZWYpIC0gNCkgKiAodmFyKC0tdWktbGliLXNpemUtZGVmKSAtIDQpKSk7LS11aS1saWItc2l6ZS1kZWYtbGFyZ2U6Y2FsYyhtYXgoMCwgMSAtICh2YXIoLS11aS1saWItc2l6ZS1kZWYpIC0gNSkgKiAodmFyKC0tdWktbGliLXNpemUtZGVmKSAtIDUpKSk7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTstLXN3aXRjaC1oZWlnaHQ6Y2FsYyh2YXIoLS11aS1saWItc2l6ZS1kZWYtc21hbGwpKjIwcHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbWVkaXVtKSoyOHB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLWxhcmdlKSozNHB4KTtoZWlnaHQ6dmFyKC0tc3dpdGNoLWhlaWdodCk7LS1zd2l0Y2gtd2lkdGg6Y2FsYyh2YXIoLS11aS1saWItc2l6ZS1kZWYtc21hbGwpKjM4cHggKyB2YXIoLS11aS1saWItc2l6ZS1kZWYtbWVkaXVtKSo1NHB4ICsgdmFyKC0tdWktbGliLXNpemUtZGVmLWxhcmdlKSo2NHB4KTt3aWR0aDp2YXIoLS1zd2l0Y2gtd2lkdGgpOy0tc3dpdGNoLXBhZGRpbmc6Y2FsYyh2YXIoLS11aS1saWItc2l6ZS1kZWYtc21hbGwpKjNweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1tZWRpdW0pKjRweCArIHZhcigtLXVpLWxpYi1zaXplLWRlZi1sYXJnZSkqNXB4KTstLXN3aXRjaC10aHVtYjpjYWxjKHZhcigtLXN3aXRjaC1oZWlnaHQpIC0gdmFyKC0tc3dpdGNoLXBhZGRpbmcpKjIpOy0tZGVmYXVsdC1jb2xvcjp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwpOy0tc3dpdGNoLWNvbG9yOnZhcigtLXVpLWxpYi1zd2l0Y2hWaWV3LWNvbG9yLHZhcigtLWRlZmF1bHQtY29sb3IpKX0uc3dpdGNoVmlldy10V0RJQ1RheS5jaGVja2VkLXRXRElDVGF5ey0tZGVmYXVsdC1jb2xvcjp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtYm9sZCl9LmRpc2FibGVkLXRXRElDVGF5e29wYWNpdHk6LjV9LnRyYWNrLXRXRElDVGF5e2JhY2tncm91bmQtY29sb3I6dmFyKC0tc3dpdGNoLWNvbG9yKTtib3JkZXItY29sb3I6dmFyKC0tc3dpdGNoLWNvbG9yKTtib3JkZXItcmFkaXVzOjIwcHg7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDoxcHg7Ym94LXNpemluZzpib3JkZXItYm94O2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7aW5zZXQtaW5saW5lLXN0YXJ0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MTAwJX0udGh1bWItdFdESUNUYXl7YmFja2dyb3VuZDp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1xdWluYXJ5LWludmVyc2UpO2JvcmRlci1yYWRpdXM6NTAlO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OnZhcigtLXN3aXRjaC10aHVtYik7dHJhbnNmb3JtOnRyYW5zbGF0ZSh2YXIoLS1zd2l0Y2gtcGFkZGluZyksdmFyKC0tc3dpdGNoLXBhZGRpbmcpKTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4yNXM7dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm07dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1vdXQ7d2lkdGg6dmFyKC0tc3dpdGNoLXRodW1iKX0udGh1bWItdFdESUNUYXk6ZGlyKHJ0bCl7dHJhbnNmb3JtOnRyYW5zbGF0ZShjYWxjKHZhcigtLXN3aXRjaC1wYWRkaW5nKSotMSksdmFyKC0tc3dpdGNoLXBhZGRpbmcpKX0uY2hlY2tlZC10V0RJQ1RheSAudGh1bWItdFdESUNUYXl7dHJhbnNmb3JtOnRyYW5zbGF0ZShjYWxjKHZhcigtLXN3aXRjaC13aWR0aCkgLSB2YXIoLS1zd2l0Y2gtdGh1bWIpIC0gdmFyKC0tc3dpdGNoLXBhZGRpbmcpKSx2YXIoLS1zd2l0Y2gtcGFkZGluZykpfS5jaGVja2VkLXRXRElDVGF5IC50aHVtYi10V0RJQ1RheTpkaXIocnRsKXt0cmFuc2Zvcm06dHJhbnNsYXRlKGNhbGMoKHZhcigtLXN3aXRjaC13aWR0aCkgLSB2YXIoLS1zd2l0Y2gtdGh1bWIpIC0gdmFyKC0tc3dpdGNoLXBhZGRpbmcpKSotMSksdmFyKC0tc3dpdGNoLXBhZGRpbmcpKX0="}},"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/s/_/ytembeds/_/js/k=ytembeds.base.en_US._88TwyyHKHs.2021.O/am=AAAAgA/d=1/exm=base,root/ed=1/br=1/rs=AGKMywEu2TQUzdSF0AcsFBMUrFqyurKluw/m=r78Drb","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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/Gc2en3nHxA4","date":"2026-07-27T04:24:17.545Z","timestamp":1785126257545,"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/exm=base,root/ed=1/br=1/rs=AGKMywEu2TQUzdSF0AcsFBMUrFqyurKluw/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/Gc2en3nHxA4\r\nCookie: __Secure-YNID=20.YT=E5bZH_lP1NArLG48t6lRj9oeecW0xyEFe9u0ebWOb-g-_JffSEAYD96vgiz84ztWu4jL2Qub3iqTQ2XsVrmUelh8bL2Z51wNDSmop6dn1VykM86DS3aVeEn7QG8EY9Ml3wvuvcssa43xkqpG8yaId8urAjrXhYEfGQpbtjPMaEJoztxh0chYc1U5XnLeSKOglaDLkUb_VvEZq4QcOK6PKm2QcEJ7YaKMvNNnRY4v3GMNcZEy2NrRIXXQEQI5D8IEV_am0BM4s0b23dnIOVfMyNQVyW0u7xAK0Ni0sYaQe1TWl0KmDEjJm310XaYqlpGcnfGpZpknLRrb4GiekJ28gg; YSC=nYVVApPxeLY; __Secure-ROLLOUT_TOKEN=CL_qp-jW2sbDnwEQ_4Clw4HylQMY_4Clw4HylQM%3D; VISITOR_INFO1_LIVE=8BWjCSfd-OY; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgGA%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: 205847\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Fri, 24 Jul 2026 12:56:23 GMT\r\nexpires: Sat, 24 Jul 2027 12:56:23 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: 228474\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":698252,"size_decoded":206761,"mime_type":"text/javascript; charset=UTF-8","magic":"JavaScript source, ASCII text, with very long lines (2659)","md5":"b0ad8a0af02b0646525f5764557f74f7","sha1":"3b5ecd18dc5225ff5e062f1f355636ee87daa374","sha256":"41ca2ce29b6abecad6de552d13e73fb3b7628a958b5fbffeb8cc0f8b4495f4f9","sha512":"066d24883fd73c8304fc558fbfc404650cdba71f6f3973bf37273ddb405e563c181cd6767cb575ae3d20139bc047514916e3d227d9a4e17fdcd377a478b0556c","ssdeep":"12288:H0PeofempMe8l0tGc70LCSn4AqUlvdDJdGhxnYUjpjYtsxDT:Hjofemc+tD70LCSn4AqVnYU1YtsxDT","tlshash":"f0e47de07392f4b586426966e57f8003b17e5943f2044478e1fa9edc15fce48a2bbf29","first_seen":"2026-07-24T13:29:06.300454Z","last_seen":"2026-07-27T07:05:42.941279Z","times_seen":471,"resource_available":true,"data":"InVzZSBzdHJpY3QiO3RoaXMuZGVmYXVsdF9iYXNlPXRoaXMuZGVmYXVsdF9iYXNlfHx7fTsoZnVuY3Rpb24oXyl7dmFyIHdpbmRvdz10aGlzOwp0cnl7Cl8uQ3Q9Y2xhc3N7Y29uc3RydWN0b3IoYSxiKXt0aGlzLnNlcnZpY2VJZD1uZXcgXy5OcihhLGIpfXRvU3RyaW5nKCl7cmV0dXJuIHRoaXMuc2VydmljZUlkLnRvU3RyaW5nKCl9fTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5XZCgiaXVUNU9jIik7CgpfLlhkKCk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciB3dDtfLnZ0PWZ1bmN0aW9uKGEsYil7cmV0dXJuIGE9PWI/ITA6YSYmYj9hLndpZHRoPT1iLndpZHRoJiZhLmhlaWdodD09Yi5oZWlnaHQ6ITF9O18ueHQ9ZnVuY3Rpb24oYSxiKXtiLmhhc093blByb3BlcnR5KCJkaXNwbGF5TmFtZSIpfHwoYi5kaXNwbGF5TmFtZT1hLnRvU3RyaW5nKCkpO2Jbd3RdPWF9O3d0PVN5bWJvbCgiSWEiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5JZT1mdW5jdGlvbigpe3RoaXMuaWQ9ImIifTtfLkllLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmlkfTtfLkZ0PW5ldyBfLk5yKCJNcEp3WmMiLCJNcEp3WmMiKTt2YXIgR3Q7R3Q9bmV3IF8uSWU7Xy5IdD1jbGFzcyBleHRlbmRzIF8uSmV7Y29uc3RydWN0b3IoYSxiKXtzdXBlcihHdCxhKTt0aGlzLm5vZGU9YTt0aGlzLmtpbmQ9Yn19Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewovKgogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAKKi8KLyoKCiBDb3B5cmlnaHQgMjAxNyBHb29nbGUgTExDCiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlCiovCnZhciBBQSxCQSxEQSxXYWEsWGFhLE9BLFBBLCRhYSxhYmEsU0EsVEEsZGJhLGViYSxmYmEsZEIsZ2JhLGpiYSxrYmEsaEIsa0IsbEIsckIsc0IsdEIsdUIsdkIsd0IsbmJhLHBiYSxvYmEsRUIsc2JhLERCLEZCLEhCLHRiYSx1YmEsdmJhLFFCLFNCLFRCLHdiYSxhQyxZQixjQyxVQixlQyxoQyxpQyxrQyx5YmEsemJhLEFiYSxzQyx2QyxEYmEsekMsQ0MsRmJhLEdiYSxFYmEsVmFhLEtBLG9DO18ueUE9ZnVuY3Rpb24oYSl7aWYoYSBpbnN0YW5jZW9mIF8uZmIpcmV0dXJuIGEuajt0aHJvdyBFcnJvcigiaCIpO307Xy56QT1mdW5jdGlvbihhLGIpe2lmKGEubm9kZVR5cGU9PT0xJiYvXihzY3JpcHR8c3R5bGUpJC9pLnRlc3QoYS50YWdOYW1lKSl0aHJvdyBFcnJvcigiaCIpO2EuaW5uZXJIVE1MPV8ueUEoYil9O0FBPWZ1bmN0aW9uKGEsYil7dmFyIGM9e307Zm9yKGxldCBkIGluIGEpY1tkXT1iLmNhbGwodm9pZCAwLGFbZF0sZCxhKTtyZXR1cm4gY307Cl8uSXQ9ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigiTWEiKTt9O0JBPWZ1bmN0aW9uKGEpe2lmKCFhKXJldHVybiBudWxsO2E9Xy5YdChfLmVkKGEsMix2b2lkIDAsXy5EdikpO3JldHVybiBhPT09bnVsbHx8YT09PXZvaWQgMD9udWxsOl8uZ2IoYSl9O18uQ0E9ZnVuY3Rpb24oYT0zKXt2YXIgYj1fLlp0O2lmKCFiKXtzd2l0Y2goYSl7Y2FzZSAwOmE9RXJyb3IoIlJhIik7YnJlYWs7Y2FzZSAxOmE9RXJyb3IoIlVhIik7YnJlYWs7Y2FzZSAyOmE9RXJyb3IoIlZhIik7YnJlYWs7ZGVmYXVsdDphPUVycm9yKCJXYSIpfXRocm93IGE7fXJldHVybiBifTtEQT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9T2JqZWN0LmNyZWF0ZShWYWEpO2Quc291cmNlPWE7ZC5UZz1iO2MhPXZvaWQgMCYmKGQuZXF1YWw9Yyk7YT0oKT0+e18ucnUoZCk7Xy5wdShkKTtpZihkLnZhbHVlPT09Xy5Jdil0aHJvdyBkLmVycm9yO3JldHVybiBkLnZhbHVlfTthW18uWnVdPWQ7cmV0dXJuIGF9OwpfLkVBPWZ1bmN0aW9uKGEpe3ZhciBiPV8ua3UobnVsbCk7dHJ5e3JldHVybiBhKCl9ZmluYWxseXtfLmt1KGIpfX07V2FhPWZ1bmN0aW9uKGEpe2E9e1tfLkV1XTohMCxkZWJ1Z05hbWU6YX07IV8uWnR8fF8uQnUoYSk7cmV0dXJuIGF9O18uRkE9ZnVuY3Rpb24oYSl7cmV0dXJuIGEuZGVidWdOYW1lfHxhLm5hbWV8fCJbY29tcG9uZW50XSJ9O18uR0E9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPV8uRkEoYSk7Xy5NdT17bmFtZTpjP2Ake2R9ICgke2N9KWA6ZCxsajphLmNvbXBvbmVudFR5cGUhPT1fLkt2LHBhcmVudDpfLk11fTthPWIoKTtfLk11PV8uTXUucGFyZW50O3JldHVybiBhfTtfLkhBPWZ1bmN0aW9uKCl7dmFyIGE9Xy5NdTtyZXR1cm4gYT9hLmxqOiExfTtfLklBPWZ1bmN0aW9uKGEpe18uZ3YtLTtpZihhKWZvcihsZXQgYiBvZiBfLll2KWIuY2xlYXIoKTtlbHNlIF8uZ3Y+MHx8Xy5jdi5pc0ZsdXNoaW5nJiYhXy5LdS5SaXx8Xy5qdigpfTsKXy5KQT1mdW5jdGlvbihhLGIpe2I9e2NvbXBvbmVudFN0YWNrOl8uU3UoXy5QdSkscHI6Xy5RdT8uc2xpY2UoKT8/W10sZmg6MyxBbDpfLkx1KCksdGFnTmFtZTpifTtyZXR1cm5bYSxiXX07Xy5MQT1mdW5jdGlvbigpe2lmKHR5cGVvZiBLQT09PSJmdW5jdGlvbiIpdmFyIGE9S0E7ZWxzZSBpZih0eXBlb2YgS0E9PT0ib2JqZWN0IilhPUtBLmNvbnN0cnVjdG9yO2Vsc2UgdGhyb3cgRXJyb3Iodm9pZCAwKTtyZXR1cm4gXy5DYyhiPT5iIGluc3RhbmNlb2YgYSl9O1hhYT1mdW5jdGlvbigpe2lmKCFfLnU/LlN5bWJvbD8uZm9yKXJldHVybiBuZXcgV2Vha01hcDt2YXIgYT1TeW1ib2wuZm9yKCJnb29nbGUuZ29lbSIpLGI9Xy51W2FdO2lmKGIpcmV0dXJuIGI7Yj1uZXcgV2Vha01hcDtyZXR1cm4gXy51W2FdPWJ9OwpPQT1mdW5jdGlvbihhLGIpe3ZhciBjPWIudGFnTmFtZSxkPWEudGFnTmFtZTthPU1BLmhhcyhkKSYmIVlhYS5oYXMoZCk7KChiPU1BLmhhcyhjKSl8fGEpJiZhJiYhYiYmTkEuaGFzKGMudG9Mb3dlckNhc2UoKSkmJlByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9Pnt0aHJvdyBfLlV1KEVycm9yKCJJYmAiK2MrImAiK2QpLDIsYyk7fSl9O1BBPWZ1bmN0aW9uKCl7fTtfLlFBPWZ1bmN0aW9uKGEsYixjKXtpZihjPT1udWxsKWEucmVtb3ZlQXR0cmlidXRlKGIpO2Vsc2V7dmFyIGQ7KGQ9Yi5sYXN0SW5kZXhPZigieG1sOiIsMCk9PT0wPyJodHRwOi8vd3d3LnczLm9yZy9YTUwvMTk5OC9uYW1lc3BhY2UiOmIubGFzdEluZGV4T2YoInhsaW5rOiIsMCk9PT0wPyJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIjpudWxsKT9hLnNldEF0dHJpYnV0ZU5TKGQsYixjKTphLnNldEF0dHJpYnV0ZShiLGMpfX07CiRhYT1mdW5jdGlvbihhLGIsYyl7YT1hLnN0eWxlO2lmKHR5cGVvZiBjPT09InN0cmluZyIpYS5jc3NUZXh0PWM7ZWxzZXthLmNzc1RleHQ9IiI7Zm9yKGxldCBmIGluIGMpaWYoWmFhLmNhbGwoYyxmKSl7Yj1hO3ZhciBkPWYsZT1jW2ZdO2QuaW5kZXhPZigiLSIpPj0wP2Iuc2V0UHJvcGVydHkoZCxlKTpiW2RdPWV9fX07YWJhPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD10eXBlb2YgYztkPT09Im9iamVjdCJ8fGQ9PT0iZnVuY3Rpb24iP2FbYl09YzpfLlFBKGEsYixjKX07U0E9ZnVuY3Rpb24oKXt2YXIgYT1uZXcgUEE7YVtfLlJBLmRlZmF1bHRdPWFiYTthLnN0eWxlPSRhYTtyZXR1cm4gYX07VEE9ZnVuY3Rpb24oYSxiLGMsZCxlKXtyZXR1cm4gYj09YyYmZD09ZX07Xy5YQT1mdW5jdGlvbigpe2Zvcih2YXIgYT1fLlVBLGI9Xy5WQSgpO2IhPT1udWxsOyl7bGV0IGM9Yi5uZXh0U2libGluZzthLnJlbW92ZUNoaWxkKGIpO18uV0EuZGVsZXRlZC5wdXNoKGIpO2I9Y319OwpfLlZBPWZ1bmN0aW9uKCl7cmV0dXJuIF8uWUE/Xy5ZQS5uZXh0U2libGluZzpfLlVBLmZpcnN0Q2hpbGR9OwpkYmE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPV8uV0EsZT1fLlpBLGY9Xy4kQSxoPV8uYUIsaz1fLllBLGw9Xy5VQSxtPV8uYkI7Xy5aQT1hLm93bmVyRG9jdW1lbnQ7Xy5XQT1uZXcgYmJhKGEpO18uYkI9YjtfLmFCPVtdO18uWUE9bnVsbDtiPV8uVUE9YS5wYXJlbnROb2RlO3ZhciBuPWNiYS5jYWxsKGEpO2lmKChuPW4ubm9kZVR5cGU9PT0xMXx8bi5ub2RlVHlwZT09PTk/bi5hY3RpdmVFbGVtZW50Om51bGwpJiZhLmNvbnRhaW5zKG4pKXtmb3IoYT1bXTtuIT09YjspYS5wdXNoKG4pLG49bi5wYXJlbnROb2RlfHwoYj9uLmhvc3Q6bnVsbCk7Yj1hfWVsc2UgYj1bXTtfLiRBPWI7dHJ5e3JldHVybiBjKCl9ZmluYWxseXtjPV8uV0EsXy5jQiYmYy5kZWxldGVkLmxlbmd0aD4wJiYoMCxfLmNCKShjLmRlbGV0ZWQpLF8uWkE9ZSxfLldBPWQsXy5iQj1tLF8uYUI9aCxfLllBPWssXy5VQT1sLF8uJEE9Zn19OwplYmE9ZnVuY3Rpb24oYSxiPXt9KXt2YXIge21hdGNoZXM6Yz1UQX09YjtyZXR1cm4oZCxlLGYpPT5kYmEoZCxjLCgpPT5hKGQsZSxmKSl9O2ZiYT1mdW5jdGlvbihhKXthPVN0cmluZyhhKTtmb3IodmFyIGI9KGQsZSxmKT0+e3ZhciBoPU1hdGgubWluKGUubGVuZ3RoLWYsZC5sZW5ndGgpO2ZvcihsZXQgbD0wO2w8aDtsKyspe3ZhciBrPWVbZitsXTtpZihkW2xdIT09KCJBIjw9ayYmazw9IloiP2sudG9Mb3dlckNhc2UoKTprKSlyZXR1cm4hMX1yZXR1cm4hMH0sYz0wOyhjPWEuaW5kZXhPZigiPCIsYykpIT0tMTspe2lmKGIoIlx4M2Mvc2NyaXB0IixhLGMpfHxiKCJceDNjIS0tIixhLGMpKXJldHVybiJ6U295eiI7Yys9MX1yZXR1cm4gYX07CmRCPWZ1bmN0aW9uKGEpe2lmKGEuaXNDb25uZWN0ZWQhPT12b2lkIDApcmV0dXJuIGEuaXNDb25uZWN0ZWQ7dmFyIGI9YS5vd25lckRvY3VtZW50O2lmKCFiKXJldHVybiBhPT09ZG9jdW1lbnQ7aWYodHlwZW9mIGIuY29udGFpbnM9PT0iZnVuY3Rpb24iKXJldHVybiBiLmNvbnRhaW5zKGEpO2Zvcig7YTspe2lmKGE9PT1iKXJldHVybiEwO2E9YS5wYXJlbnROb2RlfXJldHVybiExfTtnYmE9ZnVuY3Rpb24oYSxiPSExKXt2YXIgYz1fLkNBKCksZD1fLk11O3JldHVybiBlPT57dmFyIGY9ITEsaD1lLmN1cnJlbnRUYXJnZXQ7aCYmKGY9IWRCKGgpfHxiJiZoW2VCXT09PSEwKTt2YXIgaz1jPy5pYSxsPWImJmgmJmhbZUJdPT09ITA7aWYoZnx8ayl7aWYoaCYmZEIoaCkmJihrfHxsKSl0aHJvdyBfLlV1KEVycm9yKCJrYyIpLDQpO31lbHNle3ZhciBtPSgpPT5hKGUpO3RyeXtfLlJ1KCgpPT5fLkVBKG0pLGQpfWNhdGNoKG4pe18ub3YobixjKX19fX07Cl8uZ0I9ZnVuY3Rpb24oYSxiLGMpe2lmKE9iamVjdC5oYXNPd25Qcm9wZXJ0eS5jYWxsKGZCLGEpJiYoYT1mQlthXSxPYmplY3QuaGFzT3duUHJvcGVydHkuY2FsbChhLGIpJiYoYT1hW2JdLGEgaW5zdGFuY2VvZiBBcnJheSkpKXtsZXQgZT1udWxsLGY9ITE7Zm9yKGxldCBoPTAsaz1hLmxlbmd0aDtoPGs7KytoKXtsZXQgbD1hW2hdO3ZhciBkPWwuaWI7aWYoIWQpcmV0dXJuIGwua2E7ZT09PW51bGwmJihlPXt9KTtkPU9iamVjdC5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsZCk/ZVtkXTplW2RdPWMoZCk7aWYoZD09PWwubmIpcmV0dXJuIGwua2E7ZD09bnVsbCYmKGY9ITApfWlmKGYpcmV0dXJuIG51bGx9Yj1oYmFbYl07cmV0dXJuIHR5cGVvZiBiPT09Im51bWJlciI/YjpudWxsfTsKamJhPWZ1bmN0aW9uKGEsYil7Yj1fLmdCKGEudG9Mb3dlckNhc2UoKSxiLCgpPT57dGhyb3cgXy5VdShFcnJvcigibWMiKSw0LGEudG9Mb3dlckNhc2UoKSk7fSk7cmV0dXJuIGI9PT1udWxsP251bGw6aWJhW2JdPz9udWxsfTtrYmE9ZnVuY3Rpb24oYSxiLGMpe2lmKGM9PT1udWxsfHxjPT09dm9pZCAwKXJldHVybiBjO2I9Yi50b0xvd2VyQ2FzZSgpO2E9amJhKGEsYik7cmV0dXJuIGE9PT1udWxsP2M6YShiLGMpfTtoQj1mdW5jdGlvbihhLGIpe3ZhciBjPVdhYShiKTtiPV8uJHQoYyk7dHJ5e2EoYyl9ZmluYWxseXtfLiR0KGIpfXJldHVybigpPT52b2lkIF8uQ3UoYyl9O18uaUI9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uQWEoYSk/Im5vZGVUeXBlImluIGE6ITF9O18uakI9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uaUIoYSkmJmEubm9kZVR5cGU9PT1Ob2RlLkVMRU1FTlRfTk9ERX07a0I9ZnVuY3Rpb24oKXtyZXR1cm4gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIiIpfTsKbEI9ZnVuY3Rpb24oYSl7YT1kb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShTdHJpbmcoYSkpO2EuX2lzU2lnbmFsVGV4dE5vZGU9ITA7cmV0dXJuIGF9O18ub0I9ZnVuY3Rpb24oYSl7cmV0dXJuIGEhPW51bGwmJmEuR2k9PT1fLm1CfHxhIGluc3RhbmNlb2YgXy5mYnx8bkIoYSl9O18ucEI9ZnVuY3Rpb24oYSl7dmFyIGI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7aWYobkIoYSkmJkJBKGEpKV8uekEoYixCQShhKSk7ZWxzZSBpZihhIGluc3RhbmNlb2YgXy5mYilfLnpBKGIsYSk7ZWxzZSBpZihhIT1udWxsJiZhLkdpPT09Xy5tQil7aWYoYS5HaSE9PV8ubUIpdGhyb3cgRXJyb3IoIk5hIik7YT1fLmdiKGEudG9TdHJpbmcoKSk7Xy56QShiLGEpfWZvcihsZXQgYyBvZiBiLmNoaWxkTm9kZXMpYy5faXNTYWZlT3JTYW5pdGl6ZWRIdG1sTm9kZT0hMDtyZXR1cm4gYn07Cl8ucUI9ZnVuY3Rpb24oYSl7YT10eXBlb2YgYTtyZXR1cm4gYT09PSJzdHJpbmcifHxhPT09Im51bWJlciJ8fGE9PT0iYm9vbGVhbiJ9O3JCPWZ1bmN0aW9uKGEpe3JldHVybiBhIGluc3RhbmNlb2YgXy5TYXx8Xy5YYShhKXx8ITF9O3NCPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5wYXJlbnRFbGVtZW50O2lmKCFjKXJldHVybiBiO18uakIoYikmJk9BKGMsYik7Yy5yZXBsYWNlQ2hpbGQoYixhKTtyZXR1cm4gYn07dEI9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hWzBdLnBhcmVudEVsZW1lbnQ7aWYoYylpZihhWzBdLnByZXZpb3VzU2libGluZ3x8YVthLmxlbmd0aC0xXS5uZXh0U2libGluZyl7Yy5pbnNlcnRCZWZvcmUoYixhWzBdKTtmb3IobGV0IGQ9YS5sZW5ndGgtMTtkPj0wO2QtLSljLnJlbW92ZUNoaWxkKGFbZF0pfWVsc2UgYy50ZXh0Q29udGVudD0iIixjLmFwcGVuZENoaWxkKGIpO3JldHVybiBifTsKdUI9ZnVuY3Rpb24oYSxiKXtpZihhWzBdLnBhcmVudEVsZW1lbnQpe3ZhciBjPWFbMF0ucGFyZW50RWxlbWVudDtsZXQgZj1iLmxlbmd0aCxoPWEubGVuZ3RoLGs9ZixsPTAsbT0wLG49YVtoLTFdLm5leHRTaWJsaW5nLHA9bnVsbDtmb3IoO2w8aHx8bTxrOylpZihhW2xdPT09YlttXSlsKyssbSsrO2Vsc2V7Zm9yKDthW2gtMV09PT1iW2stMV07KWgtLSxrLS07aWYoaD09PWwpZm9yKHZhciBkPWs8Zj9tP2JbbS0xXS5uZXh0U2libGluZzpiW2stbV06bjttPGs7KXt2YXIgZT1iW20rK107Xy5qQihlKSYmT0EoYyxlKTtjLmluc2VydEJlZm9yZShlLGQpfWVsc2UgaWYoaz09PW0pZm9yKDtsPGg7KWQ9YVtsXSxwJiZwLmhhcyhkKXx8Yy5yZW1vdmVDaGlsZChkKSxsKys7ZWxzZSBpZihhW2xdPT09YltrLTFdJiZiW21dPT09YVtoLTFdKWQ9YVstLWhdLm5leHRTaWJsaW5nLGMuaW5zZXJ0QmVmb3JlKGJbbSsrXSxhW2wrK10ubmV4dFNpYmxpbmcpLGMuaW5zZXJ0QmVmb3JlKGJbLS1rXSxkKSwKYVtoXT1iW2tdO2Vsc2V7aWYoIXApZm9yKHA9bmV3IE1hcCxkPW07ZDxrOylwLnNldChiW2RdLGQrKyk7ZD1wLmdldChhW2xdKTtpZihkPT1udWxsKWMucmVtb3ZlQ2hpbGQoYVtsXSksbCsrO2Vsc2UgaWYobTxkJiZkPGspe2U9bDtsZXQgcj0xLHQ7Zm9yKDsrK2U8aCYmZTxrOyl7dD1wLmdldChhW2VdKTtpZih0PT1udWxsfHx0IT09ZCtyKWJyZWFrO3IrK31pZihyPmQtbSlmb3IoZT1hW2xdO208ZDspYy5pbnNlcnRCZWZvcmUoYlttKytdLGUpO2Vsc2UgYy5yZXBsYWNlQ2hpbGQoYlttKytdLGFbbCsrXSl9ZWxzZSBsKyt9fX1yZXR1cm4gYn07dkI9ZnVuY3Rpb24oYSl7aWYoIUFycmF5LmlzQXJyYXkoYSkpcmV0dXJuIGE/LnBhcmVudEVsZW1lbnQ7Zm9yKGxldCBiIG9mIGEpaWYoYT12QihiKSlyZXR1cm4gYTtyZXR1cm4gbnVsbH07d0I9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLl9kaXNwb3NlRWZmZWN0czthLl9kaXNwb3NlRWZmZWN0cz1jPygpPT57YygpO2IoKX06Yn07Cl8uekI9ZnVuY3Rpb24oYSxiLGMpe2lmKHR5cGVvZiBjPT09ImJvb2xlYW4iJiZsYmEuaGFzKGIpKV8uUUEoYSxiLFN0cmluZyhjKSk7ZWxzZSBpZihjPT09ITEmJm1iYS5oYXMoYikpXy5RQShhLGIsbnVsbCk7ZWxzZSBpZihiIT09Imlkb21LZXkiJiZiIT09InNraXAiJiZiIT09InNraXBjaGlsZHJlbiImJmIhPT0iY2hpbGRyZW4iJiZiIT09ImVsIilpZihiLnN0YXJ0c1dpdGgoIm9uIikpe2lmKGJbMl0hPT0iOiIpdGhyb3cgXy5VdShFcnJvcigibGNgIitiKSw0LGEudGFnTmFtZSk7bGV0IGY9Yi5zbGljZSgzKTt2YXIgZD1fLkhBKCk7aWYoYz09PXZvaWQgMClkfHxmPT09ImpzYWN0aW9uInx8eEIuaW5jbHVkZXMoZil8fChhW2BvbiR7Zn1gXT1udWxsKTtlbHNlIGlmKGY9PT0ianNhY3Rpb24iKXtjPUFycmF5LmlzQXJyYXkoYyk/YzpbY107Zm9yKGxldCBoIG9mIGMpe2lmKHR5cGVvZiBoIT09Im9iamVjdCJ8fGg9PT1udWxsfHx0eXBlb2YgaC5xbiE9PSJmdW5jdGlvbiIpdGhyb3cgRXJyb3IoInNjYCIrCmIpO2gucW4oMCxhLGQ/Xy5ZdTooKT0+e30pfX1lbHNle2lmKHR5cGVvZiBjPT09ImZ1bmN0aW9uIil7ZHx8YVtlQl0hPT12b2lkIDB8fChhW2VCXT0hMSx3QihhLCgpPT57YVtlQl09ITB9KSk7dmFyIGU9Z2JhKGMsIWQpfWVsc2V7bmJhKGIsYyk7aWYoYy5xbil7Yy5xbigwLGEsZixkP18uWXU6KCk9Pnt9KTtyZXR1cm59ZT1jLlVwKDApfWlmKGQmJmFbYG9uJHtmfWBdPT09dm9pZCAwKWEuYWRkRXZlbnRMaXN0ZW5lcihmLGUpLF8uWXUoKCk9PnZvaWQgYS5yZW1vdmVFdmVudExpc3RlbmVyKGYsZSkpO2Vsc2UgaWYoZHx8IXhCLmluY2x1ZGVzKGYpKWFbYG9uJHtmfWBdPWV9fWVsc2V7aWYoYi5zdGFydHNXaXRoKCJkYXRhLSIpJiZ0eXBlb2YgYz09PSJzdHJpbmciKXRyeXtjPWZiYShjKX1jYXRjaChmKXtjPSJ6U295eiJ9dHlwZW9mIGMhPT0iZnVuY3Rpb24ifHxhLl9kaXNwb3NlRWZmZWN0cyE9bnVsbD8oKGQ9Yi5zdGFydHNXaXRoKCJwcm9wOiIpKSYmKGI9Yi5zbGljZSg1KSksYj09PQoic3R5bGUiP18uSEEoKT90eXBlb2YgYz09PSJvYmplY3QiJiZjIT09bnVsbD9vYmEoYSxjKTp5QihhLGIsYyk6eUIoYSxiLGMpOihfLkt1Lnl2JiYoZCYmcGJhKGEudGFnTmFtZSl8fChjPWtiYShhLnRhZ05hbWUsYixjKSkpLGQ/YVtiXT1jOnFiYShhLGIsYykpKTooYS5fc2lnbmFsUHJvcHN8fChhLl9zaWduYWxQcm9wcz1bXSksYS5fc2lnbmFsVmFsdWVzfHwoYS5fc2lnbmFsVmFsdWVzPVtdKSxhLl9zaWduYWxQcm9wcy5wdXNoKGIpKX19O18uQUI9ZnVuY3Rpb24oYSxiLHtsajpjfT17fSl7aWYoYj8uZWwpe2xldCBkPWIuZWw7ZC5tej8uKGEpO2EuX2Rpc3Bvc2VSZWZ8fChhLl9kaXNwb3NlUmVmPSgpPT57ZC51ej8uKCk7ZGVsZXRlIGEuX2Rpc3Bvc2VSZWZ9LGMmJl8uWXUoKCk9PnthLl9kaXNwb3NlUmVmPy4oKX0pKX19OwpuYmE9ZnVuY3Rpb24oYSxiKXtpZih0eXBlb2YgYiE9PSJvYmplY3QifHxiPT09bnVsbCl0aHJvdyBfLlV1KEVycm9yKCJxY2AiK2ErImAiK3R5cGVvZiBiKSw0KTtpZih0eXBlb2YgYi5VcCE9PSJmdW5jdGlvbiIpdGhyb3cgXy5VdShFcnJvcigicmNgIithKyJgIitPYmplY3Qua2V5cyhiKSksNCk7fTtwYmE9ZnVuY3Rpb24oYSl7cmV0dXJuIGEubGVuZ3RoPjAmJmEuaW5jbHVkZXMoIi0iKSYmIXJiYS5pbmNsdWRlcyhhLnRvTG93ZXJDYXNlKCkpfTsKb2JhPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy5adCxkPWFbQkJdLGU9YVtDQl07aWYoZSlmb3IodmFyIGYgb2Ygc2JhKGUsYikpREIoZCxmKSxFQihhLnN0eWxlLGYsbnVsbCk7ZT1uZXcgU2V0O2ZvcihsZXQgaCBpbiBiKXtpZighYi5oYXNPd25Qcm9wZXJ0eShoKSljb250aW51ZTtlLmFkZChoKTtsZXQgaz1iW2hdO2lmKHR5cGVvZiBrPT09ImZ1bmN0aW9uIiYmYyl7aWYoIWQpe2Q9bmV3IE1hcDtsZXQgbD1hW0JCXT1kO3dCKGEsKCk9Pntmb3IobGV0IG0gb2YgbC52YWx1ZXMoKSltKCk7bC5jbGVhcigpfSl9REIoZCxoKTtmPV8udXYoKCk9PntfLnR2KCgpPT57dmFyIGw9aygpO0VCKGEuc3R5bGUsaCxsKX0sIlFEekhKZSIpfSk7ZC5zZXQoaCxmKX1lbHNlIERCKGQsaCksRUIoYS5zdHlsZSxoLGspfWFbQ0JdPWV9OwpFQj1mdW5jdGlvbihhLGIsYyl7Yz09bnVsbHx8Yz09PSExP2Iuc3RhcnRzV2l0aCgiLS0iKXx8Yi5pbmNsdWRlcygiLSIpP2EucmVtb3ZlUHJvcGVydHkoYik6YVtiXT0iIjpiLnN0YXJ0c1dpdGgoIi0tIil8fGIuaW5jbHVkZXMoIi0iKT9hLnNldFByb3BlcnR5KGIsU3RyaW5nKGMpKTphW2JdPWN9O3NiYT1mdW5jdGlvbihhLGIpe3JldHVybiBmdW5jdGlvbiooKXtmb3IobGV0IGMgb2YgYSljIGluIGJ8fCh5aWVsZCBjKX0oKX07REI9ZnVuY3Rpb24oYSxiKXtpZihhKXt2YXIgYz1hLmdldChiKTtjJiYoYygpLGEuZGVsZXRlKGIpKX19O0ZCPWZ1bmN0aW9uKGEpe3JldHVybigwLF8ucXIpKGEpJiYiX193aXpfUnFNWU0iaW4gYX07Xy5HQj1mdW5jdGlvbihhKXtyZXR1cm4gRkIoYSk/YS5fX3dpel9ScU1ZTS5RZTphfTtIQj1mdW5jdGlvbihhLGIsLi4uYyl7Yj1iPz97fTtyZXR1cm57dHlwZTphLHByb3BzOmIsY2hpbGRyZW46YyxbXy5Mdl06ITB9fTtfLklCPWZ1bmN0aW9uKGEpe3JldHVybiBhLmNoaWxkcmVufTsKXy5MQj1mdW5jdGlvbihhKXt2YXIgYj1KQiE9PUhCO0pCPWE/Xy5LQjpIQjtyZXR1cm4gYn07dGJhPWZ1bmN0aW9uKCl7dmFyIGE9Xy5DQSgxKSxiPV8uY3UoYSxfLk1CKTtpZighXy5idShiKSlyZXR1cm4gYjthPV8uY3UoYSxfLk5CKTtpZighXy5idShhKSlyZXR1cm4gYS5udygpfTtfLlBCPWZ1bmN0aW9uKGEsYil7Yj09bnVsbCYmKGI9KF8uT0Iuc3Y/P2RvY3VtZW50KS5fX3dpemRpc3BhdGNoZXIuYUooKSk7Yi5nZXQoXy5GdCkuby5kaXNwYXRjaEV2ZW50KG5ldyBfLkh0KGEsXy5tQikpfTsKdWJhPWZ1bmN0aW9uKGEpe2lmKEFycmF5LmlzQXJyYXkoYSkpe2lmKGEubGVuZ3RoPjEpdGhyb3cgXy5VdShFcnJvcigidmNgIithLmxlbmd0aCsiYCIrYS5tYXAoUUIpLmpvaW4oIiwgIikpLDQsIlNDUklQVCIpO2E9YVswXX1pZihhPT1udWxsKXJldHVybiBudWxsO2lmKCEoYSBpbnN0YW5jZW9mIF8uamIpKXtpZih3aW5kb3c/LnRydXN0ZWRUeXBlcz8uaXNTY3JpcHQoYSkpdGhyb3cgRXJyb3IoInVjIik7aWYoU3RyaW5nKGEpLnRyaW0oKS5sZW5ndGg9PT0wKXJldHVybiBudWxsO3Rocm93IEVycm9yKCJ3Y2AiK1FCKGEpKTt9cmV0dXJuIGF9O3ZiYT1mdW5jdGlvbihhLGIpe2I9dWJhKGIpO2IhPT1udWxsJiZfLm5iKGEsYil9OwpfLlJCPWZ1bmN0aW9uKGEpe2lmKEFycmF5LmlzQXJyYXkoYSkpe2lmKGEubGVuZ3RoPjEpdGhyb3cgXy5VdShFcnJvcigieGNgIithLmxlbmd0aCsiYCIrYS5tYXAoUUIpLmpvaW4oIiwgIikpLDQsIlNUWUxFIik7YT1hWzBdfWlmKGE9PW51bGx8fFN0cmluZyhhKS50cmltKCkubGVuZ3RoPT09MClyZXR1cm4gbnVsbDt0aHJvdyBFcnJvcigieWNgIitRQihhKSk7fTtRQj1mdW5jdGlvbihhKXtyZXR1cm5gKCR7dHlwZW9mIGF9KSAke2EhPW51bGwmJnR5cGVvZiBhPT09Im9iamVjdCI/YS5jb25zdHJ1Y3Rvci5uYW1lOnR5cGVvZiBhfSAke2F9YH07U0I9ZnVuY3Rpb24oKXt9O1RCPWZ1bmN0aW9uKCl7cmV0dXJuIG51bGx9OwpfLlhCPWZ1bmN0aW9uKGEsYj17fSl7dmFyIGM9VUIoKSxkPSEwLGUsZj0hIV8uS3UuSnE7ZiYmKGU9dGJhKCkpO18udHYoKCk9Pnt2YXIgaD0hZCYmYi5XZSYmZixrPWg/dkIoY1swXSk6dm9pZCAwO2Q9ITE7Yi5XZSYmXy5ndisrO3ZhciBsPWNbMF0sbT1jLl9fd2l6X1JxTVlNLlFlLG49Xy5MQighMCk7dHJ5e2xldCB2O3RyeXt2PWEoKX1jYXRjaChGKXtfLm92KEYpLHY9a0IoKX1sZXQgej13YmEobCx2LGMpLEU9Xy5WQi52eSh6KT8/ejtBcnJheS5pc0FycmF5KEUpfHwoYy5fX3dpel9ScU1ZTS5RZT1bRV0pO2xldCBBPWMuX193aXpfUnFNWU0uUWU7aWYobSYmKCFBcnJheS5pc0FycmF5KG0pfHxtLmxlbmd0aCE9PTApKXt2YXIgcD1BcnJheS5pc0FycmF5KG0pP21bMF06bSxyPXBbXy5XQl0sdD1wLl9kaXNwb3NlRWZmZWN0cztwLl9kaXNwb3NlRWZmZWN0cz12b2lkIDA7cD1BcnJheS5pc0FycmF5KEEpP0FbMF06QTtwW18uV0JdPXI7cFtfLldCXSYmKHBbXy5XQl0uVXE9cD09PUE/CjE6QS5sZW5ndGgpO3AuX2Rpc3Bvc2VFZmZlY3RzPXR9Y1swXT1FO2IuV2UmJl8uSUEoITEpfWNhdGNoKHYpe3Rocm93IGIuV2UmJl8uSUEoITApLF8uVXUodiw0KTt9ZmluYWxseXtfLkxCKG4pfWgmJl8uUEIoayxlKX0sYi5kZWJ1Z05hbWUpO3JldHVybiBjfTsKd2JhPWZ1bmN0aW9uKGEsYixjKXtmb3IoO3R5cGVvZiBiPT09ImZ1bmN0aW9uIjspYj1iKCk7aWYoYj8uW18uTHZdKXRocm93IF8uVXUoRXJyb3IoInpjYCIrYi50eXBlPy5aYyksNCxiLnR5cGU/LlpjKTtpZihhPT1udWxsKXJldHVybiBiPT1udWxsP2tCKCk6Xy5xQihiKT9sQihiKTpyQihiKT9sQihiLnRvU3RyaW5nKCkpOl8uaUIoYik/YjpiLmxlbmd0aD09PTA/a0IoKTpZQihiLGMpO2lmKF8uaUIoYSkpe2lmKGI9PW51bGwpcmV0dXJuIHNCKGEsa0IoKSk7aWYoXy5xQihiKSlyZXR1cm4gYUMoYSxiKTtpZihyQihiKSlyZXR1cm4gYUMoYSxiLnRvU3RyaW5nKCkpO2lmKF8uaUIoYikpcmV0dXJuIHNCKGEsYik7aWYoYi5sZW5ndGg9PT0wKXJldHVybiBzQihhLGtCKCkpO2I9WUIoYixjKTt1QihbYV0sYy5fX3dpel9ScU1ZTS5RZSk7cmV0dXJuIGJ9YT1fLmJDKGEpO2lmKGI9PW51bGwpcmV0dXJuIHRCKGEsa0IoKSk7aWYoXy5xQihiKSlyZXR1cm4gdEIoYSxsQihiKSk7aWYockIoYikpcmV0dXJuIHRCKGEsCmxCKGIudG9TdHJpbmcoKSkpO2lmKF8uaUIoYikpcmV0dXJuIHVCKGEsW2JdKVswXTtpZihiLmxlbmd0aD09PTApcmV0dXJuIHRCKGEsa0IoKSk7Yj1ZQihiLGMpO3VCKGEsYy5fX3dpel9ScU1ZTS5RZSk7cmV0dXJuIGJ9O2FDPWZ1bmN0aW9uKGEsYil7YS5ub2RlVHlwZT09PU5vZGUuVEVYVF9OT0RFP2EudGV4dENvbnRlbnQhPT1TdHJpbmcoYikmJihhLnRleHRDb250ZW50PVN0cmluZyhiKSk6YT1zQihhLGxCKGIpKTtyZXR1cm4gYX07Xy5iQz1mdW5jdGlvbihhLGIsYz0hMSl7cmV0dXJuIGNDKGEsYj8/W10sYyl9O1lCPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy5iQyhhLHZvaWQgMCwhMCk7aWYoYy5sZW5ndGg9PT0wKXJldHVybiBrQigpO2IuX193aXpfUnFNWU0uUWU9YztyZXR1cm4gYX07CmNDPWZ1bmN0aW9uKGEsYj1bXSxjPSExLGQsZT0tMSl7aWYoYT09bnVsbClyZXR1cm4gYjtpZighQXJyYXkuaXNBcnJheShiKSYmXy5qQihiKSlzd2l0Y2goXy5qQihhKSYmT0EoYixhKSxiLnRhZ05hbWUpe2Nhc2UgIlNDUklQVCI6dmJhKGIsYSk7cmV0dXJuO2Nhc2UgIlNUWUxFIjppZihfLlJCKGEpIT09bnVsbCl0aHJvdyBFcnJvcigiaCIpO3JldHVybn1pZihBcnJheS5pc0FycmF5KGEpKXtmb3IodmFyIGY9MDtmPGEubGVuZ3RoO2YrKyljQyhhW2ZdLGIsYyxhLGYpO3JldHVybiBifWlmKGEgaW5zdGFuY2VvZiBfLmRDKXJldHVybiBmPWEub2MoKSxjQyhmLGIsYyxkLGUpO2lmKF8ucUIoYSkpcmV0dXJuIGE9bEIoYSksZCYmYyYmKGRbZV09YSksZUMoYixhKTtpZihfLm9CKGEpKXtjPV8ucEIoYSk7Zm9yKGM9Yy5maXJzdENoaWxkO2M7KWY9Yy5uZXh0U2libGluZyxlQyhiLGMpLGM9ZjtyZXR1cm4gYn1pZihyQihhKSlyZXR1cm4gYT1sQihhLnRvU3RyaW5nKCkpLGQmJmMmJihkW2VdPQphKSxlQyhiLGEpO2lmKF8uaUIoYSkpcmV0dXJuIGVDKGIsYSk7aWYodHlwZW9mIGE9PT0iZnVuY3Rpb24iKXtmPV8uWEIoKCk9Pnt2YXIgaz1hKCk7aWYoaz09bnVsbHx8Xy5xQihrKSlyZXR1cm4gaztpZihfLm9CKGspKXJldHVybiBrPV8ucEIoayksQXJyYXkuZnJvbShrLmNoaWxkTm9kZXMpO3Rocm93IF8uVXUoRXJyb3IoIkFiYCIrKF8uTXU/Lm5hbWU/PyJ1bmtub3duIikrImAiK3R5cGVvZiBrKSw0KTt9LHtkZWJ1Z05hbWU6InFtRjJuZSIsenA6YX0pWzBdO2lmKEFycmF5LmlzQXJyYXkoZikpe2Zvcih2YXIgaCBvZiBmKWVDKGIsaCk7cmV0dXJuIGJ9ZCYmYyYmKGRbZV09Zik7cmV0dXJuIGVDKGIsZil9aWYoYT8uW18uTHZdKXtkPWE7ZT1fLkxCKCEwKTtoPUpCO3RyeXtmPWgoZC50eXBlLGQucHJvcHMsLi4uZC5jaGlsZHJlbil9ZmluYWxseXtfLkxCKGUpfXJldHVybiBjQyhmLGIsYyl9dGhyb3cgXy5VdShFcnJvcigiQWMiKSw0KTt9OwpVQj1mdW5jdGlvbihhKXt2YXIgYj1PYmplY3QuYXNzaWduKFtdLHtfX3dpel9ScU1ZTTp7UWU6W119fSk7aWYoIWEpcmV0dXJuIGI7YlswXT1ZQihhLGIpO3JldHVybiBifTtlQz1mdW5jdGlvbihhLGIpe0FycmF5LmlzQXJyYXkoYSk/YS5wdXNoKGIpOmEuYXBwZW5kQ2hpbGQoYik7cmV0dXJuIGF9O18uZkM9ZnVuY3Rpb24oYSl7aWYoQXJyYXkuaXNBcnJheShhKSl7Zm9yKGxldCBiPTA7YjxhLmxlbmd0aDtiKyspYVtiXT1fLmZDKGFbYl0pO3JldHVybiBhfXJldHVybiBhIGluc3RhbmNlb2YgXy5kQz8oYT1hLm9jKCksXy5mQyhhKSk6YX07Cl8uZ0M9ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGU9Xy5GQShhKSxmPWw9PntkPWw7dmFyIG09Xy5MQighMCksbj1fLmt1KF8uenYpO3RyeXtjPV8uZkMoYShiKSl9ZmluYWxseXtfLmt1KG4pLF8uTEIobSl9IUFycmF5LmlzQXJyYXkoYykmJl8uRnUobCl9O2U9Xy5LdS5HcD9oQihmLGUpOl8udXYoZixfLkt1LnJpfHwhIV8uWnQpO2lmKCFiLmpuKXtmPV8uJHQoZCk7dHJ5e3JldHVybigwLF8udnYpKGEsYixjKSxjfWZpbmFsbHl7Xy4kdChmKX19IUZCKGMpJiZBcnJheS5pc0FycmF5KGMpJiYoYz1VQihjKSk7dmFyIGg9Xy5HQihjKTtmPUFycmF5LmlzQXJyYXkoaCk/aFswXTpoO3ZhciBrPSExO2lmKGYpe2xldCBsPWI/Lmlkb21LZXk/P2EsbT1oIT09ZjtmLl9kaXNwb3NlRWZmZWN0cz1lO2xldCBuPWZbXy5XQl18fHt9LHA9RkIoYyk/YzpuLnluO09iamVjdC5hc3NpZ24obix7a2V5OmwsVXE6bT9oLmxlbmd0aDoxLG93bmVyOmQsbEo6ISFmW18uV0JdLHluOnB9KTtmW18uV0JdPW59ZWxzZSBrPQohMDsoKCk9Pnt2YXIgbD1fLiR0KGQpO3RyeXsoMCxfLnZ2KShhLGIsaCl9ZmluYWxseXtfLiR0KGwpfX0pKCk7ayYmZSgpO3JldHVybiBjfTtoQz1mdW5jdGlvbihhLGIpe2lmKCFhLnYmJmIpe2Eudj0hMDt0cnl7YS5IZigpfWNhdGNoKGMpe18uS3UuaGFuZGxlRXJyb3I/LiguLi5fLkpBKGMsYS5qPy5aYykpfV8uYncuSGYoYSk7YS5lbD1udWxsO2IuX19pbnN0YW5jZSYmZGVsZXRlIGIuX19pbnN0YW5jZX19O18uakM9ZnVuY3Rpb24oYSxiLGM9ITEpe2EuX3NpZ25hbFByb3BzIT1udWxsJiZhLl9kaXNwb3NlRWZmZWN0cz09bnVsbCYmKGM/YS5fZGlzcG9zZUVmZmVjdHM9Xy51digoKT0+dm9pZCBpQyhhLGIpLF8uS3Uucml8fCEhXy5adCk6aUMoYSxiKSl9OwppQz1mdW5jdGlvbihhLGIpe18udHYoKCk9Pnt2YXIgYz1hLl9zaWduYWxQcm9wcyxkPWEuX3NpZ25hbFZhbHVlcztmb3IobGV0IGU9MDtlPGMubGVuZ3RoO2UrKyl7bGV0IGY9Y1tlXSxoPWJbZl0oKTtkW2VdIT09aCYmKGRbZV09aCxfLnpCKGEsZixoKSl9fSwiZTNZVmJiIil9O18ubEM9ZnVuY3Rpb24oYSxiLC4uLmMpe2I/PyhiPXt9KTtyZXR1cm4gXy5IQSgpfHxfLk11PT1udWxsP25ldyB4YmEoYSxiLGMpOmtDKGEsYixjKX07CmtDPWZ1bmN0aW9uKGEsYixjKXtpZihhPT09Xy5JQilyZXR1cm4gYztpZih0eXBlb2YgYT09PSJmdW5jdGlvbiIpcmV0dXJuIF8uTXUmJiFfLkhBKCkmJihiLmpuPSEwKSxfLkdBKGEsKCk9PntjLmxlbmd0aD4wJiYoYi5jaGlsZHJlbj1jLmxlbmd0aD09PTE/Y1swXTpjKTtpZihhLmNvbXBvbmVudFR5cGU9PT1fLkt2KXtsZXQgZTtoQigoKT0+e3ZhciBmPWI7aWYoYS5jb21wb25lbnRUeXBlIT09Xy5LdillPSExO2Vsc2V7Znx8KGY9e30pO3ZhciBoPW5ldyBfLm1DKGYsYSksaz1fLmt1KF8uenYpO3RyeXt2YXIgbD1oLm9jKGYpfWZpbmFsbHl7Xy5rdShrKX1sIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQ/KGwuX19pbnN0YW5jZT1oLGguZWw9bCxoLmo9YSxhLlpjPWwudGFnTmFtZS50b0xvd2VyQ2FzZSgpLF8uYncuR2YoaCksZT1sKTplPWx9fSxhLm5hbWUpO2lmKGUpcmV0dXJuIGV9cmV0dXJuIF8uZ0MoYSxiKX0sYi5kZWJ1Z0luc3RhbmNlKTt2YXIgZD15YmEoYSxiKTtmb3IobGV0IGUgaW4gYilfLnpCKGQsCmUsYltlXSk7Xy5qQyhkLGIpO18uYkMoYyxkKTtfLkFCKGQsYix7bGo6ITB9KTsoMCxfLnh2KShkLGIpO3JldHVybiBkfTt5YmE9ZnVuY3Rpb24oYSxiKXthPShOQS5oYXMoYS50b0xvd2VyQ2FzZSgpKT8wOk1BLmhhcyhhLnN0YXJ0c1dpdGgoInN2ZzoiKT9hLnJlcGxhY2UoInN2ZzoiLCIiKTphKSk/ZG9jdW1lbnQuY3JlYXRlRWxlbWVudE5TKCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsYS5zdGFydHNXaXRoKCJzdmc6Iik/YS5yZXBsYWNlKCJzdmc6IiwiIik6YSk6KDAsXy53dikoYSxiKXx8ZG9jdW1lbnQuY3JlYXRlRWxlbWVudChhKTthW18ubkNdPSEwO3JldHVybiBhfTsKXy5wQz1mdW5jdGlvbihhKXtpZihhKXthLl9kaXNwb3NlUmVmPy4oKTthLl9kaXNwb3NlRWZmZWN0cz8uKCk7aWYoYS5fX2luc3RhbmNlJiZhLl9faW5zdGFuY2UgaW5zdGFuY2VvZiBvQyl7dmFyIGI9YS5fX2luc3RhbmNlO2hDKGIsYSk7YiBpbnN0YW5jZW9mIF8ubUMmJmIuRCgpfWZvcihiPTA7YjxhLmNoaWxkTm9kZXMubGVuZ3RoO2IrKylfLnBDKGEuY2hpbGROb2Rlc1tiXSl9fTt6YmE9ZnVuY3Rpb24oYSl7cUMucHVzaChhKT09PTEmJnJlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+e3NldFRpbWVvdXQoKCk9Pnt2YXIgYj1bLi4ucUNdO3FDPVtdO2ZvcihsZXQgYyBvZiBiKXRyeXtmb3IoYj0wO2I8Yy5sZW5ndGg7YisrKV8ucEMoY1tiXSl9Y2F0Y2goZCl7Xy5LdS5oYW5kbGVFcnJvcj8uKC4uLl8uSkEoZCkpfX0pfSl9O18uSz1mdW5jdGlvbihhLGIsLi4uYyl7cmV0dXJuIEpCKGEsYiwuLi5jKX07Xy5yQz1mdW5jdGlvbihhKXt2YXIgYj1fLmt1KF8ueXYpO3RyeXthKCl9ZmluYWxseXtfLmt1KGIpfX07CkFiYT1mdW5jdGlvbihhKXtyZXR1cm4gYX07c0M9ZnVuY3Rpb24oYSxiLGM9IiIpe2Z1bmN0aW9uIGQoKXtyZXR1cm4gZSgpfXZhciBlPXR5cGVvZiBhPT09ImZ1bmN0aW9uIj9EQShhLEFiYSxiPy5lcXVhbHMpOkRBKGEuc291cmNlLGEuVGcsYj8uZXF1YWxzKTt2YXIgZj1lW18uWnVdO2YuZGVidWdOYW1lPV8uZXUoYj8uZGVidWdOYW1lLGMsIltsaW5rZWRTaWduYWxdIik7ZFtfLlp1XT1mO3JldHVybltkLGg9PntfLnJ1KGYpO18ueXUoZixoKTtmLlBiPSExO2Yucmo9Xy5tdX0saD0+e18ucnUoZik7aWYoZi52YWx1ZT09PV8uSXYpdGhyb3cgZi5lcnJvcjtfLmp1Py5MZSE9PSExfHxfLnd1KGYpO18ueXUoZixoKGYudmFsdWUpKTtmLlBiPSExO2Yucmo9Xy5tdX1dfTtfLnVDPWZ1bmN0aW9uKCl7dEN8fCh0Qz17T2M6ITEsVXk6MCxzdGFjazpbXSxzZXNzaW9uSWQ6IiIsZGg6dm9pZCAwLHByb2Nlc3NvcnM6W10sV2g6KCk9PiEwfSk7cmV0dXJuIHRDfTsKdkM9ZnVuY3Rpb24oKXt2YXIgYT1fLnVDKCk7cmV0dXJuIGEuc3RhY2tbYS5zdGFjay5sZW5ndGgtMV19O18ud0M9ZnVuY3Rpb24oYSl7dmFyIGI9Xy51QygpO3JldHVybiBiLk9jP2IuZGg/Yi5kaFthXTohMDohMX07RGJhPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gXy53QyhhKSYmXy51QygpLldoKGEsYixCYmEpP25ldyBDYmEoYSxiLGMpOnhDfTsKXy55Qz1mdW5jdGlvbihhLGIsYyl7aWYodHlwZW9mIGM9PT0iZnVuY3Rpb24iKXt2YXIgZD1jO2M9dm9pZCAwfXZhciBlPURiYShhLGIsYyk7aWYoYz8uZW5kVGltZSE9bnVsbClyZXR1cm4gZCYmXy5JcChFcnJvcigiRWMiKSksZTtlIT09eEMmJmM/LmFjdGl2ZSE9PSExJiZfLnVDKCkuc3RhY2sucHVzaChlKTtpZighZClyZXR1cm4gZTtpZihlPT09eEMpcmV0dXJuIGQoZSk7dHJ5e2xldCBmPWQoZSk7aWYoZiBpbnN0YW5jZW9mIFByb21pc2UpcmV0dXJuIGYudGhlbihoPT57ZS5lbmQoKTtyZXR1cm4gaH0saD0+e2UuZW5kKCJTUEFOX1NUQVRVU19FUlJPUiIpO3Rocm93IGg7fSk7ZS5lbmQoKTtyZXR1cm4gZn1jYXRjaChmKXt0aHJvdyBlLmVuZCgiU1BBTl9TVEFUVVNfRVJST1IiKSxmO319Owp6Qz1mdW5jdGlvbihhLGIsYyxkKXthIGluc3RhbmNlb2YgRWxlbWVudCYmKGMuZGVidWdOYW1lfHwoYy5kZWJ1Z05hbWU9YDwke2EudGFnTmFtZS50b0xvd2VyQ2FzZSgpfWArKGEudGFnTmFtZS5pbmNsdWRlcygiLSIpPyI+IjpgLiR7YS5jbGFzc05hbWV9PmApKSxfLngoInl0d2l6X2VuYWJsZV9kZWJ1Z19jb21wb25lbnRfcHJvcHMiKSYmKGEuZGVidWdQcm9wc3x8KGEuZGVidWdQcm9wcz1BQShiLGU9PigpPT5lKCkpKSxiLmRhdGE9PT12b2lkIDB8fCJkYXRhImluIGEmJiFhLmlzV2ViQ29tcG9uZW50V3JhcHBlcnx8T2JqZWN0LmRlZmluZVByb3BlcnR5KGEuZGVidWdQcm9wcywiZGF0YSIse2dldDooKT0+Xy5CdihiLmRhdGEpLHNldDplPT57ZD8uZGF0YT8uKGUpfSxlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMH0pKSl9OwpfLkFDPWZ1bmN0aW9uKGEsYil7aWYoYS5sZW5ndGg9PT0wJiYhYj8uaW5pdGlhbClyZXR1cm4gc0MoYSx7ZGVidWdOYW1lOmI/LmRlYnVnTmFtZX0sImgiKTt2YXIgW2MsZCxlXT1zQyh7c291cmNlOigpPT5hKCksVGc6KGYsaCk9Pmg/LnZhbHVlP2EoaC52YWx1ZSk6Yj8uaW5pdGlhbD9hKGIuaW5pdGlhbCk6Zn0se2RlYnVnTmFtZTpiPy5kZWJ1Z05hbWV9LCJpIik7cmV0dXJuW2MsZCxlXX07Cl8uTD1mdW5jdGlvbihhLGI9IiIpe3ZhciBjPWQ9Pl8ueUMoInl0Q29tcG9uZW50Iix7fSxlPT57dmFyIGY9QkM9e307aWYoYz8uaWRvbUNvbXBhdCYmZC5qbil7bGV0IFtrLGxdPUViYShkLHR5cGVvZiBjLmlkb21Db21wYXQ9PT0ib2JqZWN0Ij9jPy5pZG9tQ29tcGF0LmNhbGxiYWNrczp7fSk7dmFyIGg9Q0MoYSxkKTtmLkd6PWg7QkM9dm9pZCAwO3pDKGgsZCxjLGspO2UuRGUoe2RlYnVnTmFtZTpjLmRlYnVnTmFtZX0pO2U9Xy5HQihoKTtlPUFycmF5LmlzQXJyYXkoZSk/ZVswXTplO2VbXy5XQl18fChlW18uV0JdPXt9KTtlW18uV0JdLnFCPWw7Xy5DdihkLGgpO3JldHVybiBofWQ9QUEoZCxGYmEpO2g9Q0MoYSxkKTt6QyhoLGQsYyk7Zi5Hej1oO0JDPXZvaWQgMDtlLkRlKHtkZWJ1Z05hbWU6Yy5kZWJ1Z05hbWV9KTtfLkN2KGQsaCk7cmV0dXJuIGh9KTtjLmRlYnVnTmFtZT1iO3JldHVybiBjfTtDQz1mdW5jdGlvbihhLGIpe2E9YShiKTtyZXR1cm4gXy5mQyhhKX07CkZiYT1mdW5jdGlvbihhLGIpe3JldHVybiBiPT09ImNoaWxkcmVuInx8Yj09PSJyZWYifHx0eXBlb2YgYT09PSJmdW5jdGlvbiJ8fGE9PT12b2lkIDA/YTooKT0+YX07R2JhPWZ1bmN0aW9uKGEsYil7cmV0dXJuKCk9Pl8uQnYoYSk/P2J9O18uREM9ZnVuY3Rpb24oYSxiKXt2YXIgYz17Li4uYX07Zm9yKGxldCBkIGluIGIpYi5oYXNPd25Qcm9wZXJ0eShkKSYmKGNbZF09R2JhKGFbZF0sYltkXSkpO3JldHVybiBjfTsKRWJhPWZ1bmN0aW9uKGEsYil7dmFyIGM9e30sZD17fTtmb3IobGV0IGUgaW4gYSl7bGV0IGY9YVtlXTtpZihlIT09ImNoaWxkcmVuIiYmZSE9PSJyZWYiKWlmKHR5cGVvZiBmPT09ImZ1bmN0aW9uIilpZihlIGluIGJ8fGYubGVuZ3RoPjApZFtlXT1mLGFbZV09KC4uLmgpPT5kW2VdKC4uLmgpO2Vsc2V7aWYoZT09PSJkYXRhIil7bGV0IFtoLGtdPV8uQUMoZix7ZGVidWdOYW1lOmAke2V9OmN3aXNgfSk7YVtlXT1oO2NbZV09a319ZWxzZSBpZighKGFbZV09PT12b2lkIDAmJmUgaW4gYikpe2xldCBbaCxrXT1fLkooYVtlXSx7ZGVidWdOYW1lOmAke2V9OmN3aXNgfSwiVmJjZ0NkIik7YVtlXT1oO2NbZV09a319cmV0dXJuW2MsZnVuY3Rpb24oZSl7Zm9yKGxldCBmIGluIGUpe2xldCBoPWVbZl07ZiE9PSJjaGlsZHJlbiImJmYhPT0icmVmIiYmKHR5cGVvZiBoPT09ImZ1bmN0aW9uIj9mIGluIGI/ZFtmXT1oOmgubGVuZ3RoPjAmJihkW2ZdPWgsXy5JcChuZXcgXy5YaihIYmEsZikpKTpmIGluCmImJmg9PT12b2lkIDB8fChjW2ZdfHxfLkhwKG5ldyBfLlhqKEliYSxmKSksXy5yQygoKT0+e2NbZl0oaCl9KSkpfX1dfTsKVmFhPXsuLi5fLlh1LHZhbHVlOl8uR3YsUGI6ITAsZXJyb3I6bnVsbCxlcXVhbDpfLml1LGtpbmQ6ImxpbmtlZFNpZ25hbCIsWG0oYSl7cmV0dXJuIGEudmFsdWU9PT1fLkd2fHxhLnZhbHVlPT09Xy5Idn0sWW0oYSl7aWYoYS52YWx1ZT09PV8uSHYpdGhyb3cgRXJyb3IoImgiKTt2YXIgYj1hLnZhbHVlO2EudmFsdWU9Xy5Idjt2YXIgYz1fLnR1KGEpLGQ9ITE7dHJ5e2xldCBmPWEuc291cmNlKCksaD1iIT09Xy5HdiYmYiE9PV8uSXY7dmFyIGU9YS5UZyhmLGg/e3NvdXJjZTphLnNvdXJjZVZhbHVlLHZhbHVlOmJ9OnZvaWQgMCk7YS5zb3VyY2VWYWx1ZT1mO18ua3UobnVsbCk7ZD1oJiZlIT09Xy5JdiYmYS5lcXVhbChiLGUpfWNhdGNoKGYpe2U9Xy5JdixhLmVycm9yPWZ9ZmluYWxseXtfLmt1KGMpLGEmJl8udnUoYSl9ZD9hLnZhbHVlPWI6KGEudmFsdWU9ZSxhLnZlcnNpb24rKyl9fTtfLm1CPXt9O18uSXQucHJvdG90eXBlLmo9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5jb250ZW50fTsKXy5JdC5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5jb250ZW50fTtLQT1jbGFzcyBleHRlbmRzIF8uTXJ7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9fTtfLmRDPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5Dbz1udWxsfX07b0M9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5wcm9wcz1hO3RoaXMudj0hMX1HZigpe31KaSgpe31IZigpe31LaSgpe319O3RyeXtsZXQgYT13aW5kb3c/LnRvcD8/Xy51O2EuVTNiSEhmPz8oYS5VM2JISGY9MCk7YS5VM2JISGYrK31jYXRjaChhKXtfLnUuVTNiSEhmPz8oXy51LlUzYkhIZj0wKSxfLnUuVTNiSEhmKyt9O18uRkM9bmV3IFdlYWtNYXA7Xy5HQz1YYWEoKTt2YXIgbWJhPW5ldyBTZXQoImFsbG93ZnVsbHNjcmVlbiBhbGxvd3RyYW5zcGFyZW5jeSBhc3luYyBhdXRvZm9jdXMgYXV0b3BsYXkgY2hlY2tlZCBjb250cm9scyBkZWZhdWx0IGRlZmVyIGRpc2FibGVkIGRpc2FibGVyZW1vdGVwbGF5YmFjayBmb3Jtbm92YWxpZGF0ZSBoaWRkZW4gaW5lcnQgaXNtYXAgaXRlbXNjb3BlIGpzc2hhZG93IGpzc2xvdCBsb29wIG11bHRpcGxlIG11dGVkIG5vbW9kdWxlIG5vdmFsaWRhdGUgb3BlbiBwbGF5c2lubGluZSByZWFkb25seSByZXF1aXJlZCByZXZlcnNlZCBzY29wZWQgc2VhbWxlc3Mgc2VsZWN0ZWQgc29ydGFibGUgdHlwZW11c3RtYXRjaCIuc3BsaXQoIiAiKSksbGJhPW5ldyBTZXQoWyJjb250ZW50ZWRpdGFibGUiLCJkcmFnZ2FibGUiLCJzcGVsbGNoZWNrIl0pO3ZhciBNQT1uZXcgU2V0KCJhIGFsdEdseXBoIGFsdEdseXBoRGVmIGFsdEdseXBoSXRlbSBhbmltYXRlIGFuaW1hdGVDb2xvciBhbmltYXRlTW90aW9uIGFuaW1hdGVUcmFuc2Zvcm0gY2lyY2xlIGNsaXBQYXRoIGNvbG9yLXByb2ZpbGUgY3Vyc29yIGRlZnMgZGVzYyBlbGxpcHNlIGZlQmxlbmQgZmVDb2xvck1hdHJpeCBmZUNvbXBvbmVudFRyYW5zZmVyIGZlQ29tcG9zaXRlIGZlQ29udm9sdmVNYXRyaXggZmVEaWZmdXNlTGlnaHRpbmcgZmVEaXNwbGFjZW1lbnRNYXAgZmVEaXN0YW50TGlnaHQgZmVEcm9wU2hhZG93IGZlRmxvb2QgZmVGdW5jQSBmZUZ1bmNCIGZlRnVuY0cgZmVGdW5jUiBmZUdhdXNzaWFuQmx1ciBmZUltYWdlIGZlTWVyZ2UgZmVNZXJnZU5vZGUgZmVNb3JwaG9sb2d5IGZlT2Zmc2V0IGZlUG9pbnRMaWdodCBmZVNwZWN1bGFyTGlnaHRpbmcgZmVTcG90TGlnaHQgZmVUaWxlIGZlVHVyYnVsZW5jZSBmaWx0ZXIgZm9udCBmb250LWZhY2UgZm9udC1mYWNlLWZvcm1hdCBmb250LWZhY2UtbmFtZSBmb250LWZhY2Utc3JjIGZvbnQtZmFjZS11cmkgZm9yZWlnbk9iamVjdCBnIGdseXBoIGdseXBoUmVmIGhrZXJuIGltYWdlIGxpbmUgbGluZWFyR3JhZGllbnQgbWFya2VyIG1hc2sgbWV0YWRhdGEgbWlzc2luZy1nbHlwaCBtcGF0aCBwYXRoIHBhdHRlcm4gcG9seWdvbiBwb2x5bGluZSByYWRpYWxHcmFkaWVudCByZWN0IHNjcmlwdCBzZXQgc3RvcCBzdHlsZSBzdmcgc3dpdGNoIHN5bWJvbCB0ZXh0IHRleHRQYXRoIHRpdGxlIHRyZWYgdHNwYW4gdXNlIHZpZXcgdmtlcm4iLnNwbGl0KCIgIikpLApOQT1uZXcgU2V0KFsiYSIsImZvbnQiLCJzY3JpcHQiLCJzdHlsZSIsInRpdGxlIl0pLFlhYT1uZXcgU2V0KFsiZGVzYyIsImZvcmVpZ25PYmplY3QiLCJ0aXRsZSJdKTtfLlJBPXtkZWZhdWx0OiJfX2RlZmF1bHQifTt2YXIgWmFhPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7UEEucHJvdG90eXBlPU9iamVjdC5jcmVhdGUobnVsbCk7Xy5IQz1TQSgpO18uY0I9bnVsbDt2YXIgYmJhPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuY3JlYXRlZD1bXTt0aGlzLmRlbGV0ZWQ9W107dGhpcy5ub2RlPWF9fTt2YXIgY2JhPXR5cGVvZiBOb2RlIT09InVuZGVmaW5lZCImJk5vZGUucHJvdG90eXBlLmdldFJvb3ROb2RlfHxmdW5jdGlvbigpe2Zvcih2YXIgYT10aGlzLGI9YTthOyliPWEsYT1hLnBhcmVudE5vZGU7cmV0dXJuIGJ9O18uV0E9bnVsbDtfLllBPW51bGw7Xy5VQT1udWxsO18uWkE9bnVsbDtfLiRBPVtdO18uYkI9VEE7Xy5hQj1bXTtfLklDPWZ1bmN0aW9uKGEpe3JldHVybiBlYmEoKGIsYyxkKT0+e18uVUE9Xy5ZQT1iO18uWUE9bnVsbDtjKGQpO18uWEEoKTtfLllBPV8uVUE7Xy5VQT1fLlVBLnBhcmVudE5vZGU7cmV0dXJuIGJ9LGEpfSgpO18uSkM9bmV3IFBBO1JlZ0V4cC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkoInN0aWNreSIpO3ZhciBlQj1TeW1ib2woImpjIik7dmFyIGhiYT17YWxpZ246MSxhbHQ6MSwiYXJpYS1hY3RpdmVkZXNjZW5kYW50IjoxMCwiYXJpYS1hdG9taWMiOjEsImFyaWEtYXV0b2NvbXBsZXRlIjoxLCJhcmlhLWJ1c3kiOjEsImFyaWEtY2hlY2tlZCI6MSwiYXJpYS1jb250cm9scyI6MTAsImFyaWEtY3VycmVudCI6MSwiYXJpYS1kZXNjcmliZWRieSI6MTAsImFyaWEtZGlzYWJsZWQiOjEsImFyaWEtZHJvcGVmZmVjdCI6MSwiYXJpYS1leHBhbmRlZCI6MSwiYXJpYS1oYXNwb3B1cCI6MSwiYXJpYS1oaWRkZW4iOjEsImFyaWEtaW52YWxpZCI6MSwiYXJpYS1sYWJlbCI6MSwiYXJpYS1sYWJlbGxlZGJ5IjoxMCwiYXJpYS1sZXZlbCI6MSwiYXJpYS1saXZlIjoxLCJhcmlhLW11bHRpbGluZSI6MSwiYXJpYS1tdWx0aXNlbGVjdGFibGUiOjEsImFyaWEtb3JpZW50YXRpb24iOjEsImFyaWEtb3ducyI6MTAsImFyaWEtcG9zaW5zZXQiOjEsImFyaWEtcHJlc3NlZCI6MSwiYXJpYS1yZWFkb25seSI6MSwiYXJpYS1yZWxldmFudCI6MSwiYXJpYS1yZXF1aXJlZCI6MSwKImFyaWEtc2VsZWN0ZWQiOjEsImFyaWEtc2V0c2l6ZSI6MSwiYXJpYS1zb3J0IjoxLCJhcmlhLXZhbHVlbWF4IjoxLCJhcmlhLXZhbHVlbWluIjoxLCJhcmlhLXZhbHVlbm93IjoxLCJhcmlhLXZhbHVldGV4dCI6MSxhc3luYzo4LGF1dG9jYXBpdGFsaXplOjEsYXV0b2NvbXBsZXRlOjEsYXV0b2NvcnJlY3Q6MSxhdXRvZm9jdXM6MSxhdXRvcGxheToxLGJnY29sb3I6MSxib3JkZXI6MSxjZWxscGFkZGluZzoxLGNlbGxzcGFjaW5nOjEsY2hlY2tlZDoxLGNpdGU6MSwiY2xhc3MiOjEsY29sb3I6MSxjb2xzOjEsY29sc3BhbjoxLGNvbnRlbnRlZGl0YWJsZToxLGNvbnRyb2xzOjEsY29udHJvbHNsaXN0OjEsY29vcmRzOjEsY3Jvc3NvcmlnaW46MSxkYXRldGltZToxLGRpcjo4LGRpc2FibGVkOjEsZG93bmxvYWQ6MSxkcmFnZ2FibGU6MSxlbmN0eXBlOjEsZmFjZToxLCJmb3IiOjEwLGZvcm1lbmN0eXBlOjEsZnJhbWVib3JkZXI6MSxoZWlnaHQ6MSxoaWRkZW46MSxocmVmOjQsaHJlZmxhbmc6MSwKaWQ6MTAsaW5lcnQ6MSxpc21hcDoxLGl0ZW1pZDoxLGl0ZW1wcm9wOjEsaXRlbXJlZjoxLGl0ZW1zY29wZToxLGl0ZW10eXBlOjEsbGFiZWw6MSxsYW5nOjEsbGlzdDoxMCxsb2FkaW5nOjgsbG9vcDoxLG1heDoxLG1heGxlbmd0aDoxLG1lZGlhOjEsbWluOjEsbWlubGVuZ3RoOjEsbXVsdGlwbGU6MSxtdXRlZDoxLG5hbWU6MTAsbm9uY2U6MSxvcGVuOjEscGxhY2Vob2xkZXI6MSxwbGF5c2lubGluZToxLHBvc3RlcjoxLHByZWxvYWQ6MSxyZWw6MSxyZXF1aXJlZDoxLHJldmVyc2VkOjEscm9sZToxLHJvd3M6MSxyb3dzcGFuOjEsc2VsZWN0ZWQ6MSxzaGFwZToxLHNpemU6MSxzaXplczoxLHNsb3Q6MSxzcGFuOjEsc3BlbGxjaGVjazoxLHNyYzo0LHNyY3NldDoxMixzdGFydDoxLHN0ZXA6MSxzdHlsZTo1LHN1bW1hcnk6MSx0YWJpbmRleDoxLHRhcmdldDo4LHRpdGxlOjEsdHJhbnNsYXRlOjEsdHlwZToxLHVzZW1hcDoxLHZhbGlnbjoxLHZhbHVlOjEsd2lkdGg6MSx3cmFwOjF9LGZCPQp7YTp7aHJlZjpbe2thOjN9XX0sYXJlYTp7aHJlZjpbe2thOjN9XX0sYXVkaW86e3NyYzpbe2thOjN9XX0sYnV0dG9uOntmb3JtYWN0aW9uOlt7a2E6M31dLGZvcm1tZXRob2Q6W3trYToxfV19LGZvcm06e2FjdGlvbjpbe2thOjN9XSxtZXRob2Q6W3trYToxfV19LGlmcmFtZTp7c3JjZG9jOlt7a2E6Mn1dfSxpbWc6e3NyYzpbe2thOjN9XSxzcmNzZXQ6W3trYToxMX1dfSxpbnB1dDp7YWNjZXB0Olt7a2E6MX1dLGZvcm1hY3Rpb246W3trYTozfV0sZm9ybW1ldGhvZDpbe2thOjF9XSxwYXR0ZXJuOlt7a2E6MX1dLHJlYWRvbmx5Olt7a2E6MX1dLHNyYzpbe2thOjN9XX0sbGluazp7aHJlZjpbe2thOjMsaWI6InJlbCIsbmI6ImFsdGVybmF0ZSJ9LHtrYTozLGliOiJyZWwiLG5iOiJhdXRob3IifSx7a2E6MyxpYjoicmVsIixuYjoiYm9va21hcmsifSx7a2E6MyxpYjoicmVsIixuYjoiY2Fub25pY2FsIn0se2thOjMsaWI6InJlbCIsbmI6ImNpdGUifSx7a2E6MyxpYjoicmVsIixuYjoiaGVscCJ9LAp7a2E6MyxpYjoicmVsIixuYjoiaWNvbiJ9LHtrYTozLGliOiJyZWwiLG5iOiJsaWNlbnNlIn0se2thOjMsaWI6InJlbCIsbmI6Im5leHQifSx7a2E6MyxpYjoicmVsIixuYjoicHJlZmV0Y2gifSx7a2E6MyxpYjoicmVsIixuYjoiZG5zLXByZWZldGNoIn0se2thOjMsaWI6InJlbCIsbmI6InByZXJlbmRlciJ9LHtrYTozLGliOiJyZWwiLG5iOiJwcmVjb25uZWN0In0se2thOjMsaWI6InJlbCIsbmI6InByZWxvYWQifSx7a2E6MyxpYjoicmVsIixuYjoicHJldiJ9LHtrYTozLGliOiJyZWwiLG5iOiJzZWFyY2gifSx7a2E6MyxpYjoicmVsIixuYjoic3VicmVzb3VyY2UifV19LHNjcmlwdDp7ZGVmZXI6W3trYToxfV19LHNvdXJjZTp7c3JjOlt7a2E6M31dLHNyY3NldDpbe2thOjExfV19LHRleHRhcmVhOntyZWFkb25seTpbe2thOjF9XX0sdmlkZW86e3NyYzpbe2thOjN9XX19O3ZhciBKYmE9L14oPyFqYXZhc2NyaXB0OikoPzpbYS16MC05Ky4tXSs6fFteJjpcLz8jXSooPzpbXC8/I118JCkpL2ksaWJhPXtbMV06bnVsbCxbMl06KGEsYik9PmIgaW5zdGFuY2VvZiBfLmZiP18ueUEoYik6Xy5GcS50b1N0cmluZygpLFszXTooYSxiKT0+Xy5YYShiKT9fLllhKGIpOkpiYS50ZXN0KFN0cmluZyhiKSk/U3RyaW5nKGIpOl8uRnEudG9TdHJpbmcoKSxbNF06KGEsYik9PmIgaW5zdGFuY2VvZiBfLlNhP18uVWEoYik6Xy5GcS50b1N0cmluZygpLFs1XTooYSxiKT0+U3RyaW5nKGIpLFs3XTpudWxsLFs4XTpudWxsLFsxMF06bnVsbH07Xy5LYmE9U3ltYm9sKCJuYyIpO3ZhciBuQj1fLkxBKCk7dmFyIEtDPVNBKCkscWJhPUtDW18uUkEuZGVmYXVsdF0seUI9S0Muc3R5bGUseEI9WyJmb2N1c2luIiwiZm9jdXNvdXQiXSxCQj1TeW1ib2woIm9jIiksQ0I9U3ltYm9sKCJwYyIpLHJiYT0iYW5ub3RhdGlvbi14bWwgY29sb3ItcHJvZmlsZSBmb250LWZhY2UgZm9udC1mYWNlLXNyYyBmb250LWZhY2UtdXJpIGZvbnQtZmFjZS1mb3JtYXQgZm9udC1mYWNlLW5hbWUgbWlzc2luZy1nbHlwaCIuc3BsaXQoIiAiKTt2YXIgSkI7SkI9SEI7Xy5XQj1TeW1ib2woInRjIik7Xy5MYmE9Xy5kdSgiV2l6SW5qZWN0aW9uQ29udGV4dF9Nb2RlbFJvb3RFbGVtZW50Iik7Xy5NYmE9Xy5kdSgiV2l6SW5qZWN0aW9uQ29udGV4dF9SZW5kZXJlckRhdGEiKTtfLk5iYT1fLmR1KCJXaXpJbmplY3Rpb25Db250ZXh0X0luamVjdGluZ0NvbnN0cnVjdG9yIik7Xy5NQj1fLmR1KCJXaXpJbmplY3Rpb25Db250ZXh0X0FwcENvbnRleHQiKTtfLk5CPV8uZHUoIldpekluamVjdGlvbkNvbnRleHRfRGlzcGF0Y2hlciIpO18uTEM9Xy5kdSgiV2l6SW5qZWN0aW9uQ29udGV4dF9Sb290RWxlbWVudCIpO18uT2JhPV8uZHUoIldpekluamVjdGlvbkNvbnRleHRfQXN5bmNEZXBzIik7Xy5QYmE9Xy5kdSgiV2l6SW5qZWN0aW9uQ29udGV4dF9PYmplY3RDcmVhdGlvblRyYWNrZXIiKTtfLk9CPXt9O18uVkI9e01LOlNCLGNMOlNCLGxvZzpTQixSSjpUQix2eTpUQixmSjooYSxiKT0+e2IoKX19O18uTUM9bnVsbDtfLm1DPWNsYXNzIGV4dGVuZHMgb0N7Y29uc3RydWN0b3IoYSxiKXtzdXBlcihhKTt0aGlzLm89Yjt0aGlzLlpmPVtdO3RoaXMuQj0wO3RoaXMuRD1fLnV2KGM9Pnt0aGlzLnFsPWM7Xy5ZdSgoKT0+e2hDKHRoaXMsdGhpcy5lbCl9KX0sXy5LdS5yaXx8ISFfLlp0KX1vYyhhKXt2YXIgYj1fLk1DO18uTUM9dGhpczt0aGlzLkI9MDt2YXIgYz1fLmt1KF8uenYpLGQ9Xy4kdCh0aGlzLnFsKTt0cnl7cmV0dXJuIHRoaXMubyhhKX1maW5hbGx5e18uJHQoZCksXy5rdShjKSxfLk1DPWJ9fWdldCBjb21wb25lbnROYW1lKCl7cmV0dXJuIF8uRkEodGhpcy5vKX19O3ZhciB4YmE7Xy5uQz1TeW1ib2woIkNjIik7eGJhPWNsYXNzIGV4dGVuZHMgXy5kQ3tjb25zdHJ1Y3RvcihhLGIsYyl7c3VwZXIoKTt0aGlzLmtpbmQ9YTt0aGlzLnByb3BzPWI7dGhpcy5jaGlsZHJlbj1jfW9jKCl7dmFyIGE9a0ModGhpcy5raW5kLHRoaXMucHJvcHMsdGhpcy5jaGlsZHJlbik7aWYodGhpcy5DbyE9bnVsbClmb3IobGV0IGIgb2YgdGhpcy5DbylhPWIoYSk7cmV0dXJuIGF9fTt2YXIgcUM9W107Xy53dT1hPT57dGhyb3cgXy5VdShFcnJvcigiYmJgIithLmRlYnVnTmFtZSksNCk7fTsoZnVuY3Rpb24oKXt2YXIgYT1fLmNCO18uY0I9Yj0+e2E/LihiKTt6YmEoYil9fSkoKTt2YXIgQ2JhPWNsYXNze2NvbnN0cnVjdG9yKGEsYixjPXt9KXt2YXIgZD1fLnVDKCk7dGhpcy5uYW1lPWE7dGhpcy5pZD1kLlV5Kys7dGhpcy5zZXNzaW9uSWQ9ZC5zZXNzaW9uSWQ7dGhpcy5hdHRyaWJ1dGVzPWI7dGhpcy5zdGF0dXM9IlNQQU5fU1RBVFVTX1VOU0VUIjt0aGlzLnN0YXJ0VGltZT1jLnN0YXJ0VGltZT8/KDAsXy5lbCkoKTt0aGlzLmo9Yy5hY3RpdmU7aWYoYT12QygpKXRoaXMucGFyZW50SWQ9YS5pZCxhLmNoaWxkcmVufHwoYS5jaGlsZHJlbj1bXSksYS5jaGlsZHJlbi5wdXNoKHRoaXMpO2ZvcihsZXQgZSBvZiBkLnByb2Nlc3NvcnMpdHJ5e2UuR20/Lih0aGlzKX1jYXRjaChmKXtfLklwKGYpfWMuZW5kVGltZSE9bnVsbCYmKHRoaXMuaj0hMSx0aGlzLmVuZCgiU1BBTl9TVEFUVVNfT0siLGMuZW5kVGltZSkpfWVuZChhPSJTUEFOX1NUQVRVU19PSyIsYj0oMCxfLmVsKSgpKXt2YXIgYz1fLnVDKCk7dGhpcy5lbmRUaW1lPWI7dGhpcy5kdXJhdGlvbj10aGlzLmVuZFRpbWUtCnRoaXMuc3RhcnRUaW1lO3RoaXMuc3RhdHVzPWE7dGhpcy5qIT09ITEmJih2QygpPT09dGhpcz9jLnN0YWNrLnBvcCgpOl8uSXAoRXJyb3IoIkRjYCIrU3RyaW5nKHRoaXMubmFtZSkpKSk7Zm9yKGxldCBkIG9mIGMucHJvY2Vzc29ycyl0cnl7ZC5scj8uKHRoaXMpfWNhdGNoKGUpe18uSXAoZSl9fURlKGEpe09iamVjdC5hc3NpZ24odGhpcy5hdHRyaWJ1dGVzLGEpfX0seEM9e2VuZCgpe30sRGUoKXt9fSx0QyxCYmE9e1d6KCl7cmV0dXJuIF8udUMoKS5zdGFja1swXX19O3ZhciBCQz12b2lkIDA7dmFyIEliYT0iSURPTSBpbnRlcm9wIHNldHRlciB1bmRlZmluZWQuIEtleToiLEhiYT0iQ2FsbGJhY2sgZGV0ZWN0ZWQgdGhhdCB3YXMgbm90IHNldCBpbiB0aGUgaWRvbUNvbXBhdCBjYWxsYmFja3MgbWFwLiBLZXk6IjsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIFJiYSxRYmE7UmJhPWZ1bmN0aW9uKGEpe3ZhciBiPU9iamVjdC5jcmVhdGUoUWJhKTtiLlRnPWE7YT0oKT0+e18ucnUoYik7Xy5wdShiKTtpZihiLnZhbHVlPT09Xy5Jdil0aHJvdyBiLmVycm9yO3JldHVybiBiLnZhbHVlfTthW18uWnVdPWI7cmV0dXJuIGF9O18uTj1mdW5jdGlvbihhLGIsYz0iIil7dmFyIGQ9UmJhKGEpO2E9ZFtfLlp1XTthLmRlYnVnTmFtZT1fLmV1KGI/LmRlYnVnTmFtZSxjLCJbY29tcHV0ZWRdIik7Yj8uZXF1YWxzIT1udWxsJiYoYS5lcXVhbD1iLmVxdWFscyk7cmV0dXJuIGR9OwpRYmE9ey4uLl8uWHUsdmFsdWU6Xy5HdixQYjohMCxlcnJvcjpudWxsLGVxdWFsOl8uaXUsa2luZDoiY29tcHV0ZWQiLFhtKGEpe3JldHVybiBhLnZhbHVlPT09Xy5Hdnx8YS52YWx1ZT09PV8uSHZ9LFltKGEpe2lmKGEudmFsdWU9PT1fLkh2KXRocm93IEVycm9yKCJoIik7dmFyIGI9YS52YWx1ZTthLnZhbHVlPV8uSHY7dmFyIGM9Xy50dShhKSxkPSExO3RyeXt2YXIgZT1hLlRnKCk7Xy5rdShudWxsKTtkPWIhPT1fLkd2JiZiIT09Xy5JdiYmZSE9PV8uSXYmJmEuZXF1YWwoYixlKX1jYXRjaChmKXtlPV8uSXYsYS5lcnJvcj1mfWZpbmFsbHl7Xy5rdShjKSxhJiZfLnZ1KGEpfWQ/YS52YWx1ZT1iOihhLnZhbHVlPWUsYS52ZXJzaW9uKyspfX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBTYmE7Xy5OQz1mdW5jdGlvbihhLGIpe3JldHVybigpPT57dmFyIGM9YSgpO2lmKCFjKXtsZXQgZD1FcnJvcigiT2NgIitiKTtQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT57dGhyb3cgXy5VdShkLDIsYik7fSl9cmV0dXJuIGN9fTtfLk89ZnVuY3Rpb24oYSl7cmV0dXJuIFNiYShhKX07ClNiYT1mdW5jdGlvbihhKXtpZihhLkE9PT12b2lkIDApcmV0dXJuIGEuVz8uKCk7aWYodHlwZW9mIGEuQSE9PSJmdW5jdGlvbiIpe2xldCBlPWEudGhlbixmPWEuVyxoPWEuQTtyZXR1cm4gaD9lKGgpOmY/LigpfXZhciBiPWEuQSxjPV8uTigoKT0+ISFiKCksdm9pZCAwLCJCalFSUSIpLGQ9Xy5OQyhiLCJJZiIpO3JldHVybiBfLlhCKCgpPT57dmFyIGU9YygpLGY7Xy51digoKT0+e3ZhciBoPV8ua3UoXy56dik7dHJ5e2Y9Xy5mQyhlP2EudGhlbihkKTphLlc/LigpKX1maW5hbGx5e18ua3UoaCl9fSwhMCk7cmV0dXJuIGZ9LHtkZWJ1Z05hbWU6YS5kZWJ1Z0luc3RhbmNlPz8iUmxEdWRkIix6cDphLnRoZW4sV2U6ITB9KX07Xy5XQz1uZXcgTWFwO18uWEM9U3ltYm9sKCJOYyIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmtHPWZ1bmN0aW9uKGEpe3ZhciBiPV8uQ0EoMSk7aWYoKDAsXy5sdikoYikpdGhyb3cgRXJyb3IoImliIik7cmV0dXJuIF8uaHUoYSxiKX07Xy5tRz1mdW5jdGlvbigpe3JldHVybiBfLlp0P18ua0coXy5sRyk6dm9pZCAwfTtfLmZkYT1TeW1ib2woIiRjIik7Xy5nZGE9U3ltYm9sKCJhZCIpO18ubEc9Xy5ndSh7ZGVmYXVsdFZhbHVlOnZvaWQgMH0sInlEcDVPYyIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgaGNhO18ubkU9ZnVuY3Rpb24oYSxiKXthPV8ucHYoaGNhLGEsYik7Xy5mdihhKX07aGNhPXsuLi5fLiR2LGVmZmVjdFR5cGU6Xy5kdn07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8ub0g9ZnVuY3Rpb24oYSxiKXthPV8uJHQoYSk7dHJ5e18uRUEoYil9ZmluYWxseXtfLiR0KGEpfX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8ub0U9ZnVuY3Rpb24oKXtpZihfLkhBKCkpdGhyb3cgRXJyb3IoIkJjIik7cmV0dXJuIF8uTUN9O18ucEU9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5vRSgpO2lmKGI9PW51bGwpdGhyb3cgRXJyb3IoIlRjIik7dmFyIGM9Yi5CKys7Yi5aZnx8KGIuWmY9W10pO3ZhciBkPWIuWmY7ZFtjXXx8KGRbY109e2tleTphLGhvc3Q6Yn0pO2lmKGEhPT1kW2NdLmtleSl0aHJvdyBFcnJvcigiU2NgIisoYi5qP2Iuaj8ubmFtZTpiIGluc3RhbmNlb2YgXy5tQz9fLkZBKGIubyk6YDwke2IuZWwudGFnTmFtZS50b0xvd2VyQ2FzZSgpfT5gKSk7cmV0dXJuIGRbY119O18ucUU9ZnVuY3Rpb24oYSxiKXtyZXR1cm4hYXx8YS5sZW5ndGghPT1iPy5sZW5ndGh8fGEuc29tZSgoYyxkKT0+YyE9PWJbZF0pfTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIGljYSx0RSxqY2Esd0U7aWNhPWZ1bmN0aW9uKGEpe3ZhciBiPW51bGwsYyxkPXtDazpudWxsLGdldCB2YWx1ZSgpe2Qudkw/LigpO3JldHVybiBkLkNrfSx2bzohMSxrdTohMSxzZXQgdmFsdWUoZSl7ZC53TD8uKGUpO2QuQ2s9ZTtkLnZvPSEwfSxteihlKXtjJiZlIT09YyYmKGMuX2Rpc3Bvc2VSZWY9dm9pZCAwLGI/LigpKTtjPWU7Yj1hKGUpfHxudWxsfSx1eigpe2I/LigpO2I9ZC52YWx1ZT1udWxsfSxbXy5Ndl06ITB9O3JldHVybiBkfTtfLnNFPWZ1bmN0aW9uKGEpe3ZhciBiPVtdO2lmKF8uSEEoKSlyZXR1cm4gYSgpO3ZhciBjPV8ucEUoInVzZU1lbW9JbnRlcm5hbCIpO18ucUUoYy5tbCxiKSYmKGMubWw9YixjLnZhbHVlPWEoKSk7cmV0dXJuIGMudmFsdWV9O18udUU9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gdEUoYSwhMSxiKX07Xy52RT1mdW5jdGlvbihhLGIpe3JldHVybiB0RShhLCEwLGIpfTsKdEU9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBfLkhBKCk/d0UoYSxiLGMpOmpjYShhLGIsYyl9O2pjYT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIF8uc0UoKCk9PndFKGEsYixjKSl9O3dFPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1fLlp0LGU9aWNhKGY9PntlLnZhbHVlPWY7dmFyIGg9KCgpPT57dmFyIGs9Xy5rdShudWxsKTt0cnl7cmV0dXJuIGM/LihmKX1jYXRjaChsKXtfLm92KGwsZCl9ZmluYWxseXtfLmt1KGspfX0pKCk7cmV0dXJuKCk9PntoPy4oKX19KTtlLmp1PWE7ZS5sdT1iO2Uudko9IV8uSEEoKTtyZXR1cm4gZX07Xy5CRT1TeW1ib2woIldjIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8ubUY9e1ZiOiExLHN0YXRlOiJ2aXNpYmxlIn07Xy5uRj17VmI6ITEsc3RhdGU6ImhpZGRlbiJ9Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLnBIPWZ1bmN0aW9uKGEpe3ZhciBiPV8uQ0EoKTtyZXR1cm4gYz0+e3ZhciBkPWEub2JzZXJ2ZXI/P18ueSgpLnJlc29sdmUoXy5MeCksZT1jLmpmPz9jLGY9W107YS5lYiYmZi5wdXNoKGQub2JzZXJ2ZShjLCgpPT57Xy5vSChiLCgpPT57YS5OYighMCxjKX0pfSxhLmViKSk7YS5OYyYmZi5wdXNoKGQub2JzZXJ2ZShjLCgpPT57Xy5vSChiLCgpPT57YS5OYighMSxjKX0pfSxhLk5jKSk7YS5MaCYmYS5MaiYmZi5wdXNoKGQub2JzZXJ2ZShjLCgpPT57Xy5vSChiLCgpPT57YS5MaigpfSl9LGEuTGgpKTtlLnZpc2liaWxpdHlNb25pdG9yS2V5cz0oZS52aXNpYmlsaXR5TW9uaXRvcktleXM/P1tdKS5jb25jYXQoZil9fTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIFBEO18uUkQ9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5CKGEsXy5PRCk7aWYoYilyZXR1cm4gYjtpZigoYj1fLkIoYSxXYmEpKSYmYi5jb21tYW5kcylyZXR1cm4gUEQoYi5jb21tYW5kcyk7aWYoKGI9Xy5CKGEsWGJhKSkmJmIuY29tbWFuZHMpcmV0dXJuIFBEKGIuY29tbWFuZHMpO2lmKChhPV8uQihhLFliYSkpJiZhLmlkZW50aWZpZXImJmEuY29tbWFuZCYmKFFEfHwoUUQ9W10pLCFRRC5pbmNsdWRlcyhhLmlkZW50aWZpZXIpKSlyZXR1cm4gUUQucHVzaChhLmlkZW50aWZpZXIpLF8uQihhLmNvbW1hbmQsXy5PRCl9O1BEPWZ1bmN0aW9uKGEpe2lmKGEubGVuZ3RoIT09MCl7dmFyIGI9W107Zm9yKGxldCBjIG9mIGEpKGE9Xy5SRChjKSkmJmIucHVzaChhKTtyZXR1cm57Y29tbWFuZEV4ZWN1dG9yQ29tbWFuZDp7Y29tbWFuZHM6Yn19fX07Xy5TRD1uZXcgXy5JKCJjb21tYW5kRXhlY3V0b3JDb21tYW5kIik7Xy5PRD1uZXcgXy5JKCJpbm5lcnR1YmVDb21tYW5kIik7dmFyIFdiYT1uZXcgXy5JKCJwYXJhbGxlbENvbW1hbmQiKTt2YXIgWWJhPW5ldyBfLkkoInBlcmZvcm1PbmNlQ29tbWFuZCIpO3ZhciBYYmE9bmV3IF8uSSgic2VyaWFsQ29tbWFuZCIpO3ZhciBRRD12b2lkIDA7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uVEQ9bmV3IF8uSSgicmVlbFdhdGNoRW5kcG9pbnQiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5VRD1uZXcgXy5WcygiQ09NTUFORF9IQU5ETEVSX1RPS0VOIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uVkQ9bmV3IF8uSSgidXJsRW5kcG9pbnQiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIFpiYSxkY2EsJGJhLGVjYTtfLldEPWZ1bmN0aW9uKGEpe3RyeXtyZXR1cm4gYSgpfWNhdGNoKGIpe18uSXAoYil9fTtfLllEPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm57Zm9ybTp7Y3VycmVudERhdGE6Xy5YRD8ucmVzcG9uc2U/P3t9LHNvdXJjZURhdGE6YSxldmVudDpiPy5ldmVudCxjbGlja2VkVmlzdWFsRWxlbWVudDpiPy5jbGlja2VkVmlzdWFsRWxlbWVudCxpbXBsaWNpdEdlc3R1cmVUeXBlOmI/LmltcGxpY2l0R2VzdHVyZVR5cGUsYXV0b25hdjpiPy5hdXRvbmF2LEJkOmI/LkJkfSxtZDpjfX07Cl8uYkU9ZnVuY3Rpb24oYSl7dmFyIGI9YS5odixjPWEudXgsZD1hLmJoLGU9YS5JZCxmPWEucWQsaD1hLkFvLGs9YS5pbm5lcnR1YmVDb21tYW5kfHxfLlJEKGQpO2lmKGspe2E9e307dmFyIHtScTpsLGhyZWY6bX09Xy5aRChrKTtsJiZtPyhhLmhyZWY9bSxaYmEoYSxsLG0sYiksJGJhKGEsbCksZiYmKGEucWQ9ITApKTooYS5yb2xlPSJidXR0b24iLGEudGFiaW5kZXg9IjAiKTtfLkIoayxhY2EpJiYoYS5hcmlhSGFzUG9wdXA9ITApO2V8fChhLm9uY2xpY2s9bj0+e2wmJm18fG4ucHJldmVudERlZmF1bHQoKTtfLiREKGspO3ZhciBwPXsuLi5fLllEKGsse2V2ZW50Om59KSwuLi5ofTtuLnByZXZlbnREZWZhdWx0KCk7Xy5hRShrLHApO24uc3RvcFByb3BhZ2F0aW9uKCl9LGwmJm18fChhLm9ua2V5ZG93bj1uPT57aWYobi5rZXk9PT0iRW50ZXIifHxuLmtleT09PSIgIiluLnN0b3BQcm9wYWdhdGlvbigpLG4ucHJldmVudERlZmF1bHQoKSxuLmN1cnJlbnRUYXJnZXQuY2xpY2soKX0pKTsKcmV0dXJuey4uLmMsLi4uYX19fTtfLlpEPWZ1bmN0aW9uKGEpe2E9Xy5CKGEsXy5TRCk/LmNvbW1hbmRzfHxbYV07Zm9yKGxldCBiIG9mIGEpaWYoYT1fLkIoYj8uY29tbWFuZE1ldGFkYXRhLF8uencpPy51cmwsXy54KCJ3ZWJfcmVtb3ZlX3dlYl9uYXZpZ2F0aW9uX2VuZHBvaW50X2RhdGEiKXx8KGE9YXx8Xy5CKGIsYmNhKT8udXJsKSxhJiZhIT09Ii9zZXJ2aWNlX2FqYXgiKXtsZXQgYz1fLmJiKGEsY2NhKTtpZihjKXJldHVybiBhPV8uWWEoYykse1JxOmIsaHJlZjphfTtfLklwKG5ldyBfLlhqKCJBdHRyaWJ1dGVkU3RyaW5nIFVSTCBjb3VsZCBub3QgYmUgc2FuaXRpemVkIixhKSl9cmV0dXJue319OwpaYmE9ZnVuY3Rpb24oYSxiLGMsZCl7Yz0hXy5maihjKTtpZihfLkIoYixfLmNFKT8ubm9mb2xsb3d8fF8uQihiLF8uQXcpPy5ub2ZvbGxvd3x8Xy5CKGIsXy5WRCk/Lm5vZm9sbG93fHxfLkIoYixfLlREKT8ubm9mb2xsb3d8fGMpYS5yZWw9Im5vZm9sbG93IjthLnRhcmdldD1kY2EoYixkKX07ZGNhPWZ1bmN0aW9uKGEsYj0iIil7cmV0dXJuIF8uQihhLF8uVkQpPy50YXJnZXQ9PT0iVEFSR0VUX05FV19XSU5ET1ciPyJfYmxhbmsiOmJ9OyRiYT1mdW5jdGlvbihhLGIpe2IuY2xpY2tUcmFja2luZ1BhcmFtcyYmKGEucGFyYW1zPXtpdGN0OmIuY2xpY2tUcmFja2luZ1BhcmFtc30pO2Eub25wb2ludGVyZG93bj1jPT57ZWNhKGMsYil9O2EubnU9Yn07Cl8uJEQ9ZnVuY3Rpb24oYSl7KGEubG9nZ2luZ1VybHN8fFtdKS5mb3JFYWNoKGI9Pnt2YXIgYz1iLmJhc2VVcmw7Yi5hdHRyaWJ1dGlvblNyY01vZGU9PT0iQVRUUklCVVRJT05fU1JDX01PREVfWEhSX09QVElPTiI/KGM9ZG9jdW1lbnQuZmVhdHVyZVBvbGljeT8uYWxsb3dlZEZlYXR1cmVzKCkuaW5jbHVkZXMoImF0dHJpYnV0aW9uLXJlcG9ydGluZyIpP2MrIiZuaXM9NiI6YysiJm5pcz01IixfLmFuKGMsdm9pZCAwLHZvaWQgMCx2b2lkIDAsIiIsITAsITApKTpfLmFuKGMpfSl9O2VjYT1mdW5jdGlvbihhLGIpe3ZhciBjPWEuY3VycmVudFRhcmdldDthPV8uV0QoKCk9PmMuaHJlZik7Yj1iLmNsaWNrVHJhY2tpbmdQYXJhbXM/e2l0Y3Q6Yi5jbGlja1RyYWNraW5nUGFyYW1zfTp7fTthJiZfLnV6KGEsYiw4LCEwKX07Xy5kRT1mdW5jdGlvbihhLGIpeyhhPV8uUkQoYSkpJiZfLmFFKGEsYil9OwpfLmFFPWZ1bmN0aW9uKGEsYil7Xy5ZdChfLlVELGM9PntiP2MucmVzb2x2ZUNvbW1hbmQoYSxiKTpjLnJlc29sdmVDb21tYW5kKGEpfSl9O18uY0U9bmV3IF8uSSgiYnJvd3NlRW5kcG9pbnQiKTt2YXIgYmNhPW5ldyBfLkkoIndlYk5hdmlnYXRpb25FbmRwb2ludERhdGEiKTt2YXIgYWNhPW5ldyBfLkkoIm1vZGFsRW5kcG9pbnQiKTtfLmZjYT1uZXcgXy5JKCJ1c2VyRmVlZGJhY2tFbmRwb2ludCIpO18uZUU9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmRhdGE9W107dGhpcy5EZj1udWxsfXB1c2goYSl7dGhpcy5EZj90aGlzLkRmKGEpOnRoaXMuZGF0YS5wdXNoKGEpfX07Xy5YRD17fTtfLmZFPV8uSihfLlhELHZvaWQgMCwiVEhST08iKVswXTtfLkoobnVsbCx2b2lkIDAsImN4NFRJZCIpO18uSihudWxsLHZvaWQgMCwiUVhhT3VkIik7Xy5KKCIiLHZvaWQgMCwiRFJXTzljIik7Xy5KKF8ucXooKT8hMTohMCx2b2lkIDAsInZ5enlpZCIpO18uZ0U9bmV3IF8uZUU7dmFyIGNjYT1bXy5JcSxfLkpxLF8uS3EsXy5NcSxfLkxxLF8uR3EsXy5OcSxfLlBxXTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5xSD1mdW5jdGlvbihhKXtpZihhLmNvbXBvc2VkUGF0aClyZXR1cm4gYS5jb21wb3NlZFBhdGgoKTtpZighYS51byl7bGV0IGI9W10sYz1hLnRhcmdldDtmb3IoO2M7KWIucHVzaChjKSxjPWMucGFyZW50Tm9kZTtiLnB1c2god2luZG93KTthLnVvPWJ9cmV0dXJuIGEudW99O18uckg9ZnVuY3Rpb24oYSxiLGMpe2ZvcihsZXQgZCBvZiBhKXtpZihkPT09YilicmVhaztmb3IobGV0IGUgb2YgYylpZihkLnRhZ05hbWU9PT1lfHxkLnJvbGU9PT0iYnV0dG9uIiYmZT09PSJCVVRUT04iKXJldHVybiEwfXJldHVybiExfTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIEJkYSxDZGEsRGRhLHZILHdILEVkYTtCZGE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1iLm9ic2VydmVyPz9fLnkoKS5yZXNvbHZlKF8uTHgpO2lmKGEpe3ZhciBkPWEuamY/P2EsZT1bXTtiLmViJiZlLnB1c2goYy5vYnNlcnZlKGEsKCk9PntiLk5iKCEwLGEpfSxiLmViKSk7Yi5OYyYmZS5wdXNoKGMub2JzZXJ2ZShhLCgpPT57Yi5OYighMSxhKX0sYi5OYykpO2IuTGgmJmIuTGomJmUucHVzaChjLm9ic2VydmUoYSwoKT0+e2IuTGooKX0sYi5MaCkpO2QudmlzaWJpbGl0eU1vbml0b3JLZXlzPShkLnZpc2liaWxpdHlNb25pdG9yS2V5cz8/W10pLmNvbmNhdChlKX19O18udEg9ZnVuY3Rpb24oYSl7cmV0dXJuISFfLnNIKGEpfTtfLnVIPWZ1bmN0aW9uKGEsYixjLGQsZSl7cmV0dXJuIGY9Pnt2YXIgaD1fLm1HKCk7Xy5uRSgoKT0+e2lmKGYpe0NkYShmLGEoKSxlKTt2YXIgaz1EZGEoZixhKCksYixjLGQsaCk7Xy5ZdShrKX19LCJhalFZNiIpfX07CkNkYT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dkgoYiksZT13SChiKSxmPWQmJl8ubUYsaD1lJiZfLm5GOyhkfHxlKSYmQmRhKGEse05iOms9Pnt2YXIgbD1fLnkoKS5yZXNvbHZlKF8uVUQpO2smJmQ/KGwucmVzb2x2ZUNvbW1hbmQoZCx7Zm9ybTp7ZWxlbWVudDpjP2E6dm9pZCAwfSxtZDohMH0pLGQ9dkgoYikpOiFrJiZlJiYobC5yZXNvbHZlQ29tbWFuZChlLHtmb3JtOntlbGVtZW50OmM/YTp2b2lkIDB9LG1kOiEwfSksZT13SChiKSl9LGViOmYsTmM6aH0pfTsKRGRhPWZ1bmN0aW9uKGEsYixjLGQsZSxmKXt2YXIgaD1uZXcgTWFwO2lmKGI9Xy5zSChiKSlhPWQ/Lm9uVGFwPy52YWx1ZXx8YSxjPUVkYShiLGEsYz8ub25UYXAsZSxmKSxhLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixjKSxoLnNldCgiY2xpY2siLGMpLF8ueCgid2ViX2VuYWJsZV9hZGRpdGlvbmFsX2V2ZW50X2xpc3RlbmVyX2Zvcl90YXBfY29tbWFuZCIpJiYoYz1rPT57dmFyIGw9YS50YWdOYW1lO2w9PT0iQlVUVE9OInx8bD09PSJBInx8bD09PSJJTlBVVCJ8fGsua2V5IT09IkVudGVyIiYmay5rZXkhPT0iICJ8fGUmJl8uckgoXy5xSChrKSxhLGUpfHwoay5wcmV2ZW50RGVmYXVsdCgpLGEuY2xpY2soKSl9LGEuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsYyksaC5zZXQoImtleWRvd24iLGMpKTtyZXR1cm4oKT0+e2ZvcihsZXQgW2ssbF1vZiBoKWEucmVtb3ZlRXZlbnRMaXN0ZW5lcihrLGwpfX07Cl8uc0g9ZnVuY3Rpb24oYSl7cmV0dXJuKGE9Xy5CKGEsXy54SCk/Lm9uVGFwKSYmXy5SRChhKX07dkg9ZnVuY3Rpb24oYSl7cmV0dXJuKGE9Xy5CKGEsXy54SCk/Lm9uVmlzaWJsZSkmJl8uUkQoYSl9O3dIPWZ1bmN0aW9uKGEpe3JldHVybihhPV8uQihhLF8ueEgpPy5vbkhpZGRlbikmJl8uUkQoYSl9O18ueUg9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uUkQoXy5CKGEsXy54SCk/Lm9uSG92ZXJTdGFydCl9O18uekg9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uUkQoXy5CKGEsXy54SCk/Lm9uSG92ZXJFbmQpfTtFZGE9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj1rPT57Xy55KCkucmVzb2x2ZShfLlVEKS5yZXNvbHZlQ29tbWFuZChhLGspfSxoPWs9PntkJiZfLnJIKF8ucUgoayksYixkKXx8ZihrLnRhcmdldD97Zm9ybTp7ZWxlbWVudDprLnRhcmdldCxzb3VyY2VEYXRhOmEsbXV0YXRpb25Db250ZXh0OmV9fTp2b2lkIDApfTtjJiYoaD1rPT57YyhrLGYpfSk7cmV0dXJuIGh9O18ueEg9bmV3IF8uSSgiY29tbWFuZENvbnRleHQiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5qSD1uZXcgXy5WcygiS0VZX01BTkFHRVJfVE9LRU4iKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5QPWZ1bmN0aW9uKC4uLmEpe3ZhciBiPSEwO2ZvcihsZXQgYyBvZiBhKWlmKHR5cGVvZiBjIT09InN0cmluZyIpe2I9ITE7YnJlYWt9cmV0dXJuIGI/YS5qb2luKCIgIikudHJpbSgpfHx2b2lkIDA6KCk9Pnt2YXIgYz0iIjtmb3IobGV0IGQgb2YgYSlpZih0eXBlb2YgZD09PSJmdW5jdGlvbiImJihkPWQoKSksZClpZih0eXBlb2YgZD09PSJzdHJpbmciKWMrPSIgIitkO2Vsc2UgZm9yKGxldCBlIGluIGQpe2lmKCFkLmhhc093blByb3BlcnR5KGUpKWNvbnRpbnVlO2xldCBmPWRbZV07dHlwZW9mIGY9PT0iZnVuY3Rpb24iJiYoZj1mKCkpO2YmJihjKz0iICIrZSl9Yz1jLnRyaW0oKXx8dm9pZCAwO3JldHVybiBfLkJ2KGMpfX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBrSDtrSD1mdW5jdGlvbihhKXtyZXR1cm4oKT0+YSgpP2EoKTp2b2lkIDB9OwpfLm5IPV8uTChhPT57dmFyIGI9Xy51RSgiYSIsYS5yZWYpLGM9YS51Yz9hLnVjOl8uTigoKT0+Xy5iRSh7aW5uZXJ0dWJlQ29tbWFuZDpfLlJEKGEuY29tbWFuZD8uKCkpPz9hLmNvbW1hbmQ/LigpLElkOmEuSWQ/LigpLGh2OmEudGFyZ2V0Py4oKX0pfHx7fSx2b2lkIDAsIlRBdnowIik7cmV0dXJuIF8uSygiYSIse2VsOmIsaHJlZjooKT0+YygpLmhyZWYscmVsOigpPT5jKCkucmVsLGNsYXNzOigpPT5jKCkuY2xhc3NOYW1lPz9hLmNsYXNzTmFtZT8uKCksc3R5bGU6KCk9PntpZihhLnN0eWxlPy4oKSlyZXR1cm4gYS5zdHlsZSgpO2lmKGEuZGlzYWJsZWQ/LigpKXJldHVybiJwb2ludGVyLWV2ZW50czpub25lIn0sImFyaWEtaGFzcG9wdXAiOigpPT4hIWMoKS5hcmlhSGFzUG9wdXAsImZvcmNlLW5ldy1zdGF0ZSI6a0goKCk9PmMoKS5xZCksdGl0bGU6a0goKCk9PmMoKS50aXRsZT8/YS50aXRsZT8uKCkpLHJvbGU6a0goKCk9PmEucm9sZT8uKCl8fGMoKS5yb2xlKSx0YXJnZXQ6a0goKCk9PgpjKCkudGFyZ2V0KSxkaXI6a0goKCk9PmEuZGlyPy4oKXx8YygpLmRpciksdGFiaW5kZXg6KCk9PmMoKS50YWJpbmRleCE9PXZvaWQgMD9OdW1iZXIoYygpLnRhYmluZGV4KTphLnRhYkluZGV4Py4oKSwiYXJpYS1oaWRkZW4iOigpPT5jKCkuYXJpYUhpZGRlbj8/YS5hcmlhSGlkZGVuPy4oKSwiYXJpYS1sYWJlbCI6KCk9PmMoKS5hcmlhTGFiZWw/P2EuYXJpYUxhYmVsPy4oKSwiYXJpYS1jdXJyZW50IjphLmFyaWFDdXJyZW50LCJhcmlhLWRpc2FibGVkIjphLmRpc2FibGVkLCJhcmlhLWV4cGFuZGVkIjphLmFyaWFFeHBhbmRlZCwiYXJpYS1sYWJlbGxlZGJ5IjphLkhvLCJhcmlhLWRlc2NyaWJlZGJ5IjphLkhlLCJhcmlhLXNlbGVjdGVkIjphLmFyaWFTZWxlY3RlZCwidGFiLWlkZW50aWZpZXIiOmEudGFiSWRlbnRpZmllciwib246cG9pbnRlcmRvd24iOmZ1bmN0aW9uKGQpe2MoKS5vbnBvaW50ZXJkb3duPy4oZCl9LCJvbjpjbGljayI6ZnVuY3Rpb24oZCl7YygpLm9uY2xpY2s/LihkKTsKYS5vbkNsaWNrPy4oZCl9LCJvbjpmb2N1c2luIjphLmR6LCJvbjpmb2N1c291dCI6YS5leiwib246bW91c2VlbnRlciI6ZnVuY3Rpb24oZCl7YS5vbkhvdmVyPy4oZCk7YS5pej8uKGQpfSwib246bW91c2VsZWF2ZSI6ZnVuY3Rpb24oZCl7YS5qej8uKGQpfSwib246a2V5ZG93biI6ZnVuY3Rpb24oZCl7YygpLm9ua2V5ZG93bj8uKGQpfX0sYS5jaGlsZHJlbil9LCJ0Iik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uVkM9Xy5MKCh7Y29tbWFuZDphLHJlbmRlcmVyQ29udGV4dDpiLGNoaWxkcmVuOmMsY2xhc3NOYW1lOmQsWnY6ZSxzdHlsZTpmLG9uQ2xpY2s6aCxhcmlhQ3VycmVudDprLEhlOmwsYXJpYUhpZGRlbjptLGFyaWFMYWJlbDpuLEhvOnAsYXJpYVNlbGVjdGVkOnIsZGlzYWJsZWQ6dCxkaXI6dix0YWJJbmRleDp6LHRhcmdldDpFLHRpdGxlOkEsdG9nZ2xlYWJsZTpGLHRvZ2dsZWQ6Q30pPT57ZnVuY3Rpb24gRyhtYSl7dmFyIHRhPV8uc0goYj8uKCkpPz9hPy4oKTtpZih0YSl7bGV0IFQ9bWEudGFyZ2V0P3tmb3JtOntlbGVtZW50Om1hLnRhcmdldCxzb3VyY2VEYXRhOnRhLG11dGF0aW9uQ29udGV4dDpVfX06dm9pZCAwO18ueSgpLnJlc29sdmUoXy5VRCkucmVzb2x2ZUNvbW1hbmQodGEsVCl9aD8uKG1hKX1mdW5jdGlvbiBEKCl7b2EoUz8uWGUoKT8/ITEpfWZ1bmN0aW9uIEgoKXtvYSghMSl9ZnVuY3Rpb24gUigpe3ZhciBtYT1fLnlIKGI/LigpKTttYSYmXy55KCkucmVzb2x2ZShfLlVEKS5yZXNvbHZlQ29tbWFuZChtYSl9CmZ1bmN0aW9uIE0oKXt2YXIgbWE9Xy56SChiPy4oKSk7bWEmJl8ueSgpLnJlc29sdmUoXy5VRCkucmVzb2x2ZUNvbW1hbmQobWEpfXZhciBTPV8ueSgpLnJlc29sdmUoXy5JbihfLmpIKSksW1kscGFdPV8uSighMSx2b2lkIDAsIlROTEpFYyIpLG9hPXBhLFU9Xy5tRygpLGhhPSgpPT5GPy4oKT9DPy4oKTp2b2lkIDA7cmV0dXJuIF8uSyhfLk8se0E6ZnVuY3Rpb24oKXt2YXIgbWE9Xy5zSChiPy4oKSk/P2E/LigpLHRhO2lmKHRhPW1hKXtsZXQge1JxOlQsaHJlZjpiYX09Xy5aRChtYSk7dGE9ISghVHx8IWJhKX1yZXR1cm4gdGF9LHRoZW46KCk9Pl8uSyhfLm5ILHtjb21tYW5kOmEsc3R5bGU6ZixIZTpsLGFyaWFIaWRkZW46bSxhcmlhTGFiZWw6bixIbzpwLGFyaWFTZWxlY3RlZDpyLGRpc2FibGVkOnQsZGlyOnYsdGFiSW5kZXg6eix0YXJnZXQ6RSx0aXRsZTpBLG9uQ2xpY2s6aCxjbGFzc05hbWU6Xy5QKCJ5dEJ1dHRvbk9yQW5jaG9ySG9zdCIsInl0QnV0dG9uT3JBbmNob3JBbmNob3IiLApkLCgpPT5ZKCk/ZT8uKCk6IiIpLGR6OkQsZXo6SCxpejpSLGp6Ok0sYXJpYUN1cnJlbnQ6KCk9Pms/LigpPz9oYSgpfSxjKSxXOigpPT5fLksoImJ1dHRvbiIseyJvbjpjbGljayI6Rywib246Zm9jdXNpbiI6RCwib246Zm9jdXNvdXQiOkgsIm9uOm1vdXNlZW50ZXIiOlIsIm9uOm1vdXNlbGVhdmUiOk0sY2xhc3M6Xy5QKCJ5dEJ1dHRvbk9yQW5jaG9ySG9zdCIsInl0QnV0dG9uT3JBbmNob3JCdXR0b24iLGQsKCk9PlkoKT9lPy4oKToiIiksc3R5bGU6ZiwiYXJpYS1kZXNjcmliZWRieSI6bCwiYXJpYS1oaWRkZW4iOm0sImFyaWEtbGFiZWwiOm4sImFyaWEtbGFiZWxsZWRieSI6cCwiYXJpYS1wcmVzc2VkIjpoYSxkaXI6dixkaXNhYmxlZDp0LHRhYmluZGV4OigpPT56Py4oKT8/KChfLk9rfHxfLnJ6KCkpJiZfLngoIndlYl9lbmFibGVfc2FmYXJpX2J1dHRvbl90YWJpbmRleF9maXgiKT8wOnZvaWQgMCksdGl0bGU6QX0sYyl9KX0sInYiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5XZCgiWlFLeDEiKTsKCl8uWGQoKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5JRT1mdW5jdGlvbiguLi5hKXtyZXR1cm4oKT0+e3ZhciBiPSIiO2ZvcihsZXQgYyBvZiBhKXtsZXQgZD10eXBlb2YgYz09PSJmdW5jdGlvbiI/YygpOmM7aWYoZClmb3IobGV0IGUgaW4gZCl7bGV0IGY9ZFtlXTtmb3IoO3R5cGVvZiBmPT09ImZ1bmN0aW9uIjspZj1mKCk7ZiE9PXZvaWQgMCYmZiE9PW51bGwmJihiKz1gOyAke2V9OiAke2Z9YCl9fXJldHVybiBiLmxlbmd0aD4wP18uQnYoYi5zbGljZSgyKSk6Xy5CdigpfX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uckY9ZnVuY3Rpb24oLi4uYSl7cmV0dXJuIF8udkUoXy5CRSxiPT57dmFyIGM9YS5tYXAoZD0+ZD8uKGIpKTtyZXR1cm4oKT0+dm9pZCBjLmZvckVhY2goZD0+dm9pZCBkPy4oKSl9KX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uaEs9ZnVuY3Rpb24oKXtnS3x8KGdLPW5ldyBMZWEpO3JldHVybiBnS307dmFyIE1lYT1fLkwoYT0+e2Z1bmN0aW9uIGIoaGEpe2lmKGhhKXt2YXIgbWE9TS5nZXQoaGEpO21hJiYobWEuY2FuY2VsKCksTS5kZWxldGUoaGEpKTtmb3IobGV0IHRhIG9mIGhhLmdldEFuaW1hdGlvbnMoKSl0YS5jYW5jZWwoKX19ZnVuY3Rpb24gYyhoYSxtYSx0YSl7bWE9Xy5qZi5HYShtYSwzLHRhKTtTLnNldChoYSxtYSl9ZnVuY3Rpb24gZCgpe20oITEpO2lmKFIpe3ZhciBoYT1SO1I9bnVsbDt2YXIgbWE9RGF0ZS5ub3coKS1HO2MoaGEsKCk9PntTLmRlbGV0ZShoYSk7dmFyIHt3aWR0aDp0YSxoZWlnaHQ6VCxvcGFjaXR5OmJhfT13aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShoYSksYWE9TnVtYmVyLnBhcnNlRmxvYXQodGEpfHwwLE9hPU51bWJlci5wYXJzZUZsb2F0KFQpfHwwLEpiPU51bWJlci5wYXJzZUZsb2F0KGJhKXx8LjU7aGEuc3R5bGUud2lkdGg9YCR7YWF9cHhgO2hhLnN0eWxlLmhlaWdodD1gJHtPYX1weGA7aGEuc3R5bGUub3BhY2l0eT1gJHtKYn1gO2IoaGEpO2FhPQpVPzA6MkUzO2hhLnN0eWxlLnRyYW5zaXRpb249YG9wYWNpdHkgJHthYX1tcyBjdWJpYy1iZXppZXIoMC4yNSwgMSwgMC41LCAxKWA7aGEuc3R5bGUub3BhY2l0eT1oYS5vZmZzZXRXaWR0aD09PS0xPyIxIjoiMCI7YyhoYSwoKT0+e1MuZGVsZXRlKGhhKTtoYS5zdHlsZS5jc3NUZXh0PSIifSxhYSsxMDApfSxNYXRoLm1heCgwLDMwMC1tYSkpfX1mdW5jdGlvbiBlKCl7ZCgpO0M9bnVsbH12YXIge2NsYXNzTmFtZTpmLHN0eWxlOmh9PV8uREMoYSx7Y2xhc3NOYW1lOiIiLHN0eWxlOiJkZWZhdWx0In0pLFtrLGxdPV8uSighMSx2b2lkIDAsIktiVVRqZiIpLG09bCxbbixwXT1fLkoodm9pZCAwLHZvaWQgMCwiR2VGdkVmIiksW3IsdF09Xy5KKHZvaWQgMCx2b2lkIDAsImkzZmRWZSIpLFt2LHpdPV8uSih2b2lkIDAsdm9pZCAwLCJMZWRWNGIiKSxFPV8uckYoKSxBPV8uckYoKSxGPV8uckYoKSxDPW51bGwsRz0wLEQ9MCxIPSEwLFI9bnVsbCxNPW5ldyBNYXAsUz1uZXcgTWFwLFk9MCxwYT0KMCxvYT1udWxsLFU9d2luZG93Lm1hdGNoTWVkaWEoIihwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIikubWF0Y2hlcztfLll1KCgpPT57Zm9yKGxldCBoYSBvZiBTLnZhbHVlcygpKV8uamYuQWEoaGEpO1MuY2xlYXIoKTtiKEEudmFsdWUpO2IoRi52YWx1ZSk7b2EhPT1udWxsJiZfLmpmLkFhKG9hKX0pO3JldHVybiBfLksoInl0LWxpZ2h0LXRvdWNoLWZlZWRiYWNrLXNoYXBlIix7ZWw6RSxjbGFzczpfLlAoInl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3N0IixmLHt5dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlUHJlc3NlZDprLHl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXlEZWZhdWx0OigpPT5oKCk9PT0iZGVmYXVsdCIseXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheUludmVyc2U6KCk9PmgoKT09PSJpbnZlcnNlIn0pLCJvbjpwb2ludGVyZW50ZXIiOmZ1bmN0aW9uKCl7dmFyIGhhPUM/PyhDPUUudmFsdWU/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpPz8KbnVsbCk7aGEmJnooYCR7KGhhLmhlaWdodHx8MCkqMi41fXB4YCl9LCJvbjpwb2ludGVyZG93biI6ZnVuY3Rpb24oaGEpe3ZhciBtYT1EYXRlLm5vdygpO2lmKCEobWEtRDwxMDApKXtEPW1hO20oITApO3ZhciB0YT1DPz8oQz1FLnZhbHVlPy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKT8/bnVsbCk7aWYodGEpe3ZhciBUPWhhLmNsaWVudFgtdGEubGVmdDtoYT1oYS5jbGllbnRZLXRhLnRvcDt2YXIgYmE9TWF0aC5tYXgoKHRhLndpZHRofHwwKSoyLCh0YS5oZWlnaHR8fDApKjguNSksYWE9YmEvNDA4KjE0MDA7dGE9SD9BLnZhbHVlOkYudmFsdWU7SD0hSDtpZihSPXRhKXt0YS5zdHlsZS5jc3NUZXh0PSIiO2IodGEpO2xldCBPYT1TLmdldCh0YSk7T2EhPT12b2lkIDAmJihfLmpmLkFhKE9hKSxTLmRlbGV0ZSh0YSkpO3RhLnN0eWxlLmxlZnQ9YCR7VH1weGA7dGEuc3R5bGUudG9wPWAke2hhfXB4YDtVfHwoVD1uZXcgS2V5ZnJhbWVFZmZlY3QodGEsW3t3aWR0aDoiMHB4IixoZWlnaHQ6IjBweCIsCm9wYWNpdHk6IjAuMzA2In0se3dpZHRoOmAke2JhKi4yNX1weGAsaGVpZ2h0OmAke2JhKi4yNX1weGAsb3BhY2l0eToiMC43NzQiLG9mZnNldDouMjV9LHt3aWR0aDpgJHtiYSouNn1weGAsaGVpZ2h0OmAke2JhKi42fXB4YCxvcGFjaXR5OiIwLjgyOCIsb2Zmc2V0Oi42fSx7d2lkdGg6YCR7YmF9cHhgLGhlaWdodDpgJHtiYX1weGAsb3BhY2l0eToiMC45In1dLHtkdXJhdGlvbjphYSxmaWxsOiJmb3J3YXJkcyIsZWFzaW5nOiJjdWJpYy1iZXppZXIoMC4xNywgMC4xNywgMC4xLCAxKSJ9KSxUPW5ldyBBbmltYXRpb24oVCxkb2N1bWVudC50aW1lbGluZSksTS5zZXQodGEsVCksVC5wbGF5KCkpfUc9bWF9fX0sIm9uOnBvaW50ZXJ1cCI6ZCwib246cG9pbnRlcmxlYXZlIjplLCJvbjpwb2ludGVyY2FuY2VsIjplLCJvbjpwb2ludGVybW92ZSI6ZnVuY3Rpb24oaGEpe3ZhciBtYT1DPz8oQz1FLnZhbHVlPy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKT8/bnVsbCk7bWEmJihZPWhhLmNsaWVudFgtCm1hLmxlZnQscGE9aGEuY2xpZW50WS1tYS50b3AsaygpJiYoaGEuY2xpZW50WDxtYS5sZWZ0fHxoYS5jbGllbnRYPm1hLnJpZ2h0fHxoYS5jbGllbnRZPG1hLnRvcHx8aGEuY2xpZW50WT5tYS5ib3R0b20pP2QoKTpvYT09PW51bGwmJihvYT1fLmpmLkdhKCgpPT57b2E9bnVsbDtwKGAke1l9cHhgKTt0KGAke3BhfXB4YCl9LDMpKSl9LCJhcmlhLWhpZGRlbiI6InRydWUifSxfLksoImRpdiIse2NsYXNzOiJ5dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5In0pLF8uSygiZGl2Iix7Y2xhc3M6Inl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3ZlckxpZ2h0IixzdHlsZTpfLklFKHtsZWZ0Om4sdG9wOnIsd2lkdGg6dixoZWlnaHQ6dn0pfSksXy5LKCJkaXYiLHtlbDpBLGNsYXNzOiJ5dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlVG91Y2hMaWdodCJ9KSxfLksoImRpdiIse2VsOkYsY2xhc3M6Inl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVUb3VjaExpZ2h0In0pKX0sImFhIik7dmFyIExlYT1jbGFzcyBleHRlbmRzIF8uYWV7Y29uc3RydWN0b3IoKXtzdXBlcigpO3RoaXMuaj1uZXcgTWFwO3ZhciBbYSxiXT1fLkooW10sdm9pZCAwLCJJS2ZaQmQiKTt0aGlzLnY9Yjt0aGlzLm89Xy5OKCgpPT57dmFyIGM9YSgpO2ZvcihsZXQgZCBvZiBjKWQuUHk/LigpO3JldHVybiBjLm1hcChkPT5kLmVsZW1lbnQpfSx2b2lkIDAsIlpNUnR3ZCIpfWxhKCl7Z0s9bnVsbDtzdXBlci5sYSgpfX0sZ0s9bnVsbDtfLnlFPV8uTChhPT57dmFyIGI9Xy52RShfLkJFKSxbYyxkXT1fLkooe3g6MCx5OjAsb3BhY2l0eTowLHNpemU6MH0sdm9pZCAwLCJHd1hjRGQiKSxlPSgpPT57aWYoYS5jb25maWcoKT8uamspe3ZhciBoPWIudmFsdWU7aWYoaCl7dmFyIGs9Xy5oSygpLm87dmFyIGw9aygpO2lmKGwubGVuZ3RoKXtsZXQgdD1oLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO2s9dC5sZWZ0K3Qud2lkdGgvMjt2YXIgbT10LnRvcCt0LmhlaWdodC8yO2xldCB2PUluZmluaXR5O3ZhciBuPTAscD0wO2xldCB6PTk2O2ZvcihsZXQgRSBvZiBsKXtpZihFPT09aHx8IUUuaXNDb25uZWN0ZWR8fEUub2Zmc2V0UGFyZW50PT09bnVsbCljb250aW51ZTtsPUUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7aWYobC53aWR0aD09PTAmJmwuaGVpZ2h0PT09MCljb250aW51ZTtsZXQgQT1NYXRoLm1heChsLmxlZnQsTWF0aC5taW4oayxsLnJpZ2h0KSksRj1NYXRoLm1heChsLnRvcCxNYXRoLm1pbihtLGwuYm90dG9tKSk7dmFyIHI9CkEtTWF0aC5tYXgodC5sZWZ0LE1hdGgubWluKEEsdC5yaWdodCkpO2xldCBDPUYtTWF0aC5tYXgodC50b3AsTWF0aC5taW4oRix0LmJvdHRvbSkpO3I9cipyK0MqQztyPHYmJih2PXIsbj1BLHA9Rix6PU1hdGgubWF4KGwud2lkdGgsbC5oZWlnaHQpKX1oPU1hdGguc3FydCh2KTtkKGg8MTAwP3t4Om4tayx5OnAtbSxvcGFjaXR5OjEtaC8zMDAsc2l6ZTpNYXRoLm1heCg5Nix6KjIuNSl9Ont4OjAseTowLG9wYWNpdHk6MCxzaXplOjB9KX1lbHNlIGQoe3g6MCx5OjAsb3BhY2l0eTowLHNpemU6MH0pfX19O18ubkUoKCk9PntpZihhLmNvbmZpZygpPy5qayl7dmFyIGg9bmV3IF8uV3QoZSwxMDApLGs9KCk9PntoLnYoKX07d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsayk7cmV0dXJuKCk9Pnt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigicmVzaXplIixrKTtoLmRpc3Bvc2UoKX19fSwiclBZQzFkIik7Xy5uRSgoKT0+e2EuY29uZmlnKCk/LmprJiZlKCl9LCJRcDZQUmQiKTsKdmFyIGY9KCk9PmEuY29uZmlnKCk/LlZhIT09NSYmYS5jb25maWcoKT8uVmEhPT05JiZhLmNvbmZpZygpPy5WYSE9PTY7cmV0dXJuIF8uSyhfLk8se0E6KCk9PmEuY29uZmlnKCk/LlZhIT09MCYmIV8uZ3IsdGhlbjooKT0+Xy5LKCJ5dC1saWdodC1zaGFwZSIse2VsOmIsImFyaWEtaGlkZGVuIjoidHJ1ZSIsY2xhc3M6Xy5QKCJjb250cmliWXRMaWdodFNoYXBlSG9zdCIsYS5jbGFzc05hbWUse2NvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNSaW1MaWdodDooKT0+ITAsY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1JpbUxpZ2h0U29saWQ6KCk9PmEuY29uZmlnKCk/LlZhPT09MSxjb250cmliWXRMaWdodFNoYXBlU3RhdGljUmltTGlnaHRUb25hbDooKT0+YS5jb25maWcoKT8uVmE9PT0zLGNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNSaW1MaWdodFNvbGlkSW52ZXJzZTooKT0+YS5jb25maWcoKT8uVmE9PT0yLGNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNSaW1MaWdodFRvbmFsSW52ZXJzZTooKT0+CmEuY29uZmlnKCk/LlZhPT09NCxjb250cmliWXRMaWdodFNoYXBlU3RhdGljUmltTGlnaHRPdmVybGF5VG9uYWw6KCk9PmEuY29uZmlnKCk/LlZhPT09OCxjb250cmliWXRMaWdodFNoYXBlU3RhdGljUmltTGlnaHRPdmVybGF5U29saWQ6KCk9PmEuY29uZmlnKCk/LlZhPT09Nyxjb250cmliWXRMaWdodFNoYXBlU3RhdGljUmltTGlnaHRPdXRsaW5lOigpPT5hLmNvbmZpZygpPy5WYT09PTUsY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1JpbUxpZ2h0T3ZlcmxheU91dGxpbmU6KCk9PmEuY29uZmlnKCk/LlZhPT09OSxjb250cmliWXRMaWdodFNoYXBlU3RhdGljUmltTGlnaHRPdXRsaW5lSW52ZXJzZTooKT0+YS5jb25maWcoKT8uVmE9PT02fSksc3R5bGU6Xy5JRSh7Ii0teXQtbGlnaHQtcmltLWNvbG9yIjooKT0+YS5jb25maWcoKT8uZHYsIi0teXQtbGlnaHQtd2FzaC1vcGFjaXR5IjooKT0+YygpLm9wYWNpdHksIi0teXQtbGlnaHQtd2FzaC14IjooKT0+YCR7YygpLnh9cHhgLCItLXl0LWxpZ2h0LXdhc2gteSI6KCk9PgpgJHtjKCkueX1weGAsIi0teXQtbGlnaHQtd2FzaC1zaXplIjooKT0+YCR7YygpLnNpemV9cHhgfSl9LF8uSyhfLk8se0E6KCk9PmEuY29uZmlnKCk/LmprLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6ImNvbnRyaWJZdExpZ2h0U2hhcGVEeW5hbWljV2FzaExpZ2h0In0pfSksXy5LKF8uTyx7QTooKT0+YS5jb25maWcoKT8uQ0IsdGhlbjooKT0+Xy5LKE1lYSx7c3R5bGU6KCk9Pnt2YXIgaDthOntpZihoPWEuY29uZmlnKCk/LlZhKXN3aXRjaChoKXtjYXNlIDE6Y2FzZSA0Omg9ImRlZmF1bHQiO2JyZWFrIGE7Y2FzZSAyOmNhc2UgMzpjYXNlIDU6aD0iaW52ZXJzZSI7YnJlYWsgYX1oPXZvaWQgMH1yZXR1cm4gaH19KX0pLF8uSyhfLk8se0E6Zix0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOl8uUCgiY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1dhc2hMaWdodCIse2NvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNXYXNoTGlnaHRTYWZhcmk6KCk9Pl8uT2t8fF8uSWwsY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1dhc2hMaWdodFNvbGlkOigpPT4KYS5jb25maWcoKT8uVmE9PT0xLGNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNXYXNoTGlnaHRUb25hbDooKT0+YS5jb25maWcoKT8uVmE9PT0zLGNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNXYXNoTGlnaHRTb2xpZEludmVyc2U6KCk9PmEuY29uZmlnKCk/LlZhPT09Mixjb250cmliWXRMaWdodFNoYXBlU3RhdGljV2FzaExpZ2h0VG9uYWxJbnZlcnNlOigpPT5hLmNvbmZpZygpPy5WYT09PTQsY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1dhc2hMaWdodE92ZXJsYXlUb25hbDooKT0+YS5jb25maWcoKT8uVmE9PT04LGNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNXYXNoTGlnaHRPdmVybGF5U29saWQ6KCk9PmEuY29uZmlnKCk/LlZhPT09N30pLHN0eWxlOl8uSUUoe2JhY2tncm91bmQ6KCk9PmByYWRpYWwtZ3JhZGllbnQoJHthLmNvbmZpZygpPy5ldn0sIHRyYW5zcGFyZW50KWB9KX0pfSkpfSl9LCJkYSIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLldkKCJudlg0VmIiKTsKCl8uWGQoKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIGhHLGRkYSxjZGEsaUcsakc7Xy5mRz1mdW5jdGlvbihhLGIpe3JldHVybihBcnJheS5pc0FycmF5KGEpP2E6QXJyYXkuZnJvbShhKSkubWFwKGIpfTtfLmdHPWZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYS5wYSE9PSJmdW5jdGlvbiI/Xy5mRyhhLnBhLGEuY2hpbGRyZW4pOmEudGI9PT0iSU5ERVgiP2NkYShhKTpkZGEoYSl9O2hHPWZ1bmN0aW9uKGEpe2ZvcihsZXQgYiBvZiBhKWI/LigpfTsKZGRhPWZ1bmN0aW9uKGEpe3ZhciBiPWEudGI9PT12b2lkIDB8fGEudGI9PT0iUkVGRVJFTkNFIixjPWI/bj0+bjphLnRiLGQ9W10sZT1bXSxmPVtdLGg9W10saz1bXSxsPVtdLG09ITA7Xy5ZdSgoKT0+e2hHKGgpfSk7cmV0dXJuIF8uWEIoKCk9Pnt2YXIgbj1pRyhhKSxwPW4ubGVuZ3RoO2lmKHA9PT0wKXtpZihkLmxlbmd0aD09PTAmJiFtKXJldHVybiBmO2hHKGgpO2Q9bjtlPVtdO2ZvcihuPTA7bjxkLmxlbmd0aDtuKyspZS5wdXNoKGMoZFtuXSkpO2Y9W107aD1bXTtrPVtdO2w9W107YS5mYWxsYmFjayYmKGhbMF09akcoKCk9PntmWzBdPV8uZkMoYS5mYWxsYmFjaygpKX0pKTttPSExO3JldHVybiBmfXZhciByPW5ldyBlZGE7Zm9yKHZhciB0PWQubGVuZ3RoLTE7dD49MDt0LS0pci5wdXNoKGVbdF0sdCk7dD1BcnJheShwKTt2YXIgdj1BcnJheShwKSx6PUFycmF5KHApLEU9QXJyYXkocCksQT1BcnJheShiPzA6cCk7Zm9yKGxldCBGPTA7RjxwO0YrKyl7bGV0IEM9bltGXSxHPWMoQyksCkQ9ci5wb3AoRyk7RCE9bnVsbD8oeltGXT1mW0RdLHZbRl09ZVtEXSx0W0ZdPWhbRF0sRVtGXT1rW0RdLGJ8fChBW0ZdPWxbRF0pLF8uckMoKCk9PntFW0ZdKEYpO2lmKCFiKUFbRl0oQyl9KSxkZWxldGUgaFtEXSk6dFtGXT1qRygoKT0+e3ZhciBIPV8uSihGLHZvaWQgMCwiUExUMXMiKSxSPUhbMF07RVtGXT1IWzFdO3ZbRl09RztpZihiKXpbRl09Xy5mQyhhLmNoaWxkcmVuKEMsUikpO2Vsc2V7bGV0IE09Xy5KKEMsdm9pZCAwLCJiazhSSmQiKSxTPU1bMF07QVtGXT1NWzFdO3pbRl09Xy5mQyhhLmNoaWxkcmVuKFMsUikpfX0pfWhHKGgpO2Q9bjtlPXY7Zj16O2g9dDtrPUU7bD1BO209ITE7cmV0dXJuIHp9LHtkZWJ1Z05hbWU6YS5kZWJ1Z0luc3RhbmNlPz8ibnNUR0hkIix6cDphLnBhLFdlOiEwfSl9OwpjZGE9ZnVuY3Rpb24oYSl7dmFyIGI9W10sYz1bXSxkPVtdLGU9W10sZj0hMTtfLll1KCgpPT57aEcoZSl9KTtyZXR1cm4gXy5YQigoKT0+e3ZhciBoPWlHKGEpO2YmJmgubGVuZ3RoPjAmJihlLnBvcCgpKCksYi5wb3AoKSxmPSExKTt2YXIgaz1BcnJheShoLmxlbmd0aCk7Zm9yKGxldCBtPTA7bTxoLmxlbmd0aDttKyspe2lmKG08Yi5sZW5ndGgpe2JbbV0hPT1oW21dJiYoXy5yQygoKT0+dm9pZCBjW21dKGhbbV0pKSxiW21dPWhbbV0pO2tbbV09ZFttXTtjb250aW51ZX12YXIgbD1qRygoKT0+e2JbbV09aFttXTt2YXIgbj1fLkooaFttXSx2b2lkIDAsInVpQzBjYiIpLHA9blswXTtjW21dPW5bMV07a1ttXT1fLmZDKGEuY2hpbGRyZW4ocCxtKSl9KTtlW21dPWx9Zm9yKDtiLmxlbmd0aD5oLmxlbmd0aDspYi5wb3AoKSxlLnBvcCgpKCksYy5wb3AoKTtoLmxlbmd0aD09PTAmJiFmJiZhLmZhbGxiYWNrJiYobD1qRygoKT0+e2tbMF09Xy5mQyhhLmZhbGxiYWNrKCkpfSksZVswXT1sLGY9CiEwKTtyZXR1cm4gZD1rfSx7ZGVidWdOYW1lOmEuZGVidWdJbnN0YW5jZT8/Im5zVEdIZCIsV2U6ITB9KX07aUc9ZnVuY3Rpb24oYSl7YT1hLnBhKCk7cmV0dXJuIEFycmF5LmlzQXJyYXkoYSk/YTpBcnJheS5mcm9tKGEpfTtqRz1mdW5jdGlvbihhKXt2YXIgYj1fLkNBKCk7cmV0dXJuIF8udXYoYz0+e3ZhciBkPV8ua3UoXy56dik7dHJ5e2MucGFyZW50PWIsYShjKX1maW5hbGx5e18ua3UoZCl9fSwhMSl9O3ZhciBlZGE9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLm1hcD1uZXcgTWFwfXB1c2goYSxiKXt2YXIgYz10aGlzLm1hcDtpZihjLmhhcyhhKSl7dGhpcy5qfHwodGhpcy5qPW5ldyBNYXApO2lmKHRoaXMuaj8uaGFzKGIpKXRocm93IF8uVXUoRXJyb3IoIlpjYCIrYiksNCk7dGhpcy5qLnNldChiLGMuZ2V0KGEpKX1jLnNldChhLGIpfXBvcChhKXt2YXIgYj10aGlzLm1hcCxjPWIuZ2V0KGEpO2MhPT12b2lkIDAmJnRoaXMuaj8uaGFzKGMpPyhiLnNldChhLHRoaXMuai5nZXQoYykpLHRoaXMuai5kZWxldGUoYykpOmIuZGVsZXRlKGEpO3JldHVybiBjfX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBrY2EsbGNhLEZFLEdFO18uQ0U9ZnVuY3Rpb24oYSl7cmV0dXJuIGF9O18uREU9ZnVuY3Rpb24oYSl7cmV0dXJue2lzRGVmYXVsdDohMCxjaGlsZHJlbjphLmNoaWxkcmVufX07Xy5FRT1mdW5jdGlvbihhKXtyZXR1cm4ga2NhKGEpfTsKa2NhPWZ1bmN0aW9uKGEpe3ZhciBiPWxjYShhKSxjPV8uTigoKT0+e2E6e3ZhciBkPS0xO2ZvcihsZXQgZT0wO2U8Yi5sZW5ndGg7ZSsrKXtsZXQgZj1iW2VdO2Y/LltfLkx2XSYmKGY9RkUoZikpO2YgaW5zdGFuY2VvZiBfLmRDJiYoZj1HRShmKSk7aWYoZi5pc0RlZmF1bHQpZD09PS0xJiYoZD1lKTtlbHNlIGlmKF8uQnYoZi53aGVuKSl7ZD1lO2JyZWFrIGF9fX1yZXR1cm4gZH0sdm9pZCAwLCJNU1R4V2IiKTtyZXR1cm4gXy5YQigoKT0+e3ZhciBkPWMoKSxlO18udXYoKCk9Pnt2YXIgZj1fLmt1KF8uenYpO3RyeXtpZihkPT09LTEpZT1udWxsO2Vsc2V7dmFyIGg9YltkXTt2YXIgaz1oPy5bXy5Mdl0/RkUoaCk6aCBpbnN0YW5jZW9mIF8uZEM/R0UoaCk6aDt2YXIgbD1rPT09bnVsbD9udWxsOmsuaXNEZWZhdWx0P2suY2hpbGRyZW4oKTp0eXBlb2Ygay53aGVuPT09ImZ1bmN0aW9uIj9rLmNoaWxkcmVuKF8uTkMoay53aGVuLCJDYXNlIikpOmsuY2hpbGRyZW4oay53aGVuKTtlPV8uZkMobCl9fWZpbmFsbHl7Xy5rdShmKX19KTsKcmV0dXJuIGV9LHtkZWJ1Z05hbWU6YS5kZWJ1Z0luc3RhbmNlPz8idkkxcnRmIixXZTohMH0pfTtsY2E9ZnVuY3Rpb24oYSl7YT1hLmNoaWxkcmVuO3JldHVybiBBcnJheS5pc0FycmF5KGEpP2E6W2FdfTtGRT1mdW5jdGlvbihhKXtyZXR1cm4gYS50eXBlPT09Xy5ERT97aXNEZWZhdWx0OiEwLGNoaWxkcmVuOmEuY2hpbGRyZW5bMF19Ont3aGVuOmEucHJvcHMud2hlbixjaGlsZHJlbjphLmNoaWxkcmVuWzBdfX07R0U9ZnVuY3Rpb24oYSl7dmFyIGI9YS5wcm9wczthPWEuY2hpbGRyZW5bMF07cmV0dXJuIGIud2hlbj97d2hlbjpiLndoZW4sY2hpbGRyZW46YX06e2lzRGVmYXVsdDohMCxjaGlsZHJlbjphfX07Xy5DRS5kZWJ1Z05hbWU9InRiaE1jZiI7Xy5ERS5kZWJ1Z05hbWU9Inp5TUZ6YiI7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBEY2E7RGNhPWZ1bmN0aW9uKGEpe3N3aXRjaChhLlpxKXtjYXNlIF8uUXY6Xy5Vdi5zY2hlZHVsZShhKTticmVhaztkZWZhdWx0Ol8uZWIoYS5acSx2b2lkIDApfX07Xy5vRj1mdW5jdGlvbihhKXtpZihfLmp1PT09Xy5XdSlQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT57dGhyb3cgXy5VdShFcnJvcigieWIiKSwyKTt9KTtlbHNle2lmKCgwLF8ubHYpKF8uanUpKXRocm93IF8uVXUoRXJyb3IoInpiIiksNCk7dmFyIGI9Xy5adCxjPV8uTXU7RGNhKHtacTpfLlF2LHJ1bjooKT0+e2lmKGImJiFiLmlhKXt2YXIgZD1fLiR0KGIpO3RyeXtfLlJ1KCgpPT57dmFyIGU9YSgpO3R5cGVvZiBlPT09ImZ1bmN0aW9uIiYmXy5ZdShlKX0sYyl9Y2F0Y2goZSl7Xy5VdShlLDQpLF8ub3YoZSl9ZmluYWxseXtfLiR0KGQpfX19fSl9fTtfLktCPV8ubEM7Xy5xRj1TeW1ib2woIlhjIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBXSixWSjtfLlRKPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy5wRSgib25DaGFuZ2UiKSxkPV8ub0UoKTtfLnFFKGMubWwsYikmJihjLm1sPWIsYy5zcj1hLGQudWZ8fChkLnVmPVtdKSxkLnVmLnB1c2goYykpfTtfLlVKPWZ1bmN0aW9uKGEpe18uSEEoKT9fLm9GKCgpPT5fLkVBKGEpKTpfLlRKKCgpPT5fLkVBKGEpLFtdKX07V0o9ZnVuY3Rpb24oYSl7dmFyIGI9Wy4uLmFdO2EubGVuZ3RoPTA7Zm9yKGxldCBjIG9mIGIpaWYoVkooYyksYT1jLnNyLGMuc3I9bnVsbCxhPWE/LigpKWMucnI9YX07Vko9ZnVuY3Rpb24oYSl7dmFyIGI9YS5ycjthLnJyPW51bGw7Yj8uKCl9O18uZHcoe1NvKGEpe3ZhciBiPV8uJHQoYS5xbCk7dHJ5e2EudWY/Lmxlbmd0aCYmV0ooYS51Zil9ZmluYWxseXtfLiR0KGIpfX0sR2YoYSl7dmFyIGI9Xy4kdChhLnFsKTt0cnl7YS51Zj8ubGVuZ3RoJiZXSihhLnVmKX1maW5hbGx5e18uJHQoYil9fSxIZihhKXthLlpmPy5sZW5ndGgmJmEuWmYuZm9yRWFjaChWSil9fSk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uYUQ9bnVsbDsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIGhkYSxpZGEsa2RhLG1kYSxxRyxuZGEsc0csckcsdUcsd0csdkcseEcsdEcsb2RhLHBkYSxzZGEsQkcsdGRhLEFHLHJkYSxxZGEsamRhLGxkYTtoZGE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLmFELGQ9MDtfLmFEPXtzdTooKT0+e2QrKztfLnJDKCgpPT57YSghMSl9KX0sSHI6KCk9PnstLWQ9PT0wJiZfLnJDKCgpPT57YSghMCl9KX19O3RyeXtyZXR1cm4gYigpfWZpbmFsbHl7Xy5hRD1jfX07aWRhPWZ1bmN0aW9uKGEpe3ZhciBbYixjXT1fLkooITAsdm9pZCAwLCJiS3RPNmQiKTtyZXR1cm4gaGRhKGMsKCk9Pnt2YXIgZD1fLmZDKGEuY2hpbGRyZW4oKSk7cmV0dXJuIF8uSyhfLk8se0E6Yix0aGVuOigpPT5kLFc6YS5mYWxsYmFja30pfSl9OwpfLm5HPWZ1bmN0aW9uKHtjaGlsZHJlbjphLEVmOmIsY2FsbGJhY2tzOmN9KXt2YXIgZD1uZXcgTWFwO2I9Yj8/W107Zm9yKGxldCBlIG9mIGIpZC5zZXQoZS5pZC5DYi50b2tlbixlKTtjPWM/P1tdO2ZvcihsZXQgZSBvZiBjKWQuc2V0KGUuaWQuQ2IudG9rZW4sZSk7ZD1PYmplY3QuYXNzaWduKE9iamVjdC5jcmVhdGUoamRhKSx7ZGVidWdOYW1lOiJbY29udGV4dE93bmVyXSIsZW50cmllczpkfSk7Xy5CdShkKTtkPV8uJHQoZCk7dHJ5e2xldCBlPV8uZkMoYSk7cmV0dXJuIF8uSyhfLklCLG51bGwsZSl9ZmluYWxseXtfLiR0KGQpfX07Xy5vRz1mdW5jdGlvbihhLGIpe3JldHVybntbXy5nZGFdOiEwLGlkOmEsdmFsdWU6Yn19O2tkYT1mdW5jdGlvbih7U2c6YX0pe3JldHVybiBfLksoXy5JQixudWxsLGEoKSl9O18ucEc9ZnVuY3Rpb24oYSxiKXthPXsuLi5hLHBhcmVudDpfLm1HKCl9O3JldHVybiBfLksoXy5uRyx7RWY6W18ub0coXy5sRyxhKV19LF8uSyhrZGEse1NnOmJ9KSl9OwptZGE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gbmV3IGxkYShhLGIpfTtxRz1mdW5jdGlvbihhLGIpe3RoaXMubz17fTt0aGlzLmo9W107dGhpcy5BZT10aGlzLnNpemU9MDt2YXIgYz1hcmd1bWVudHMubGVuZ3RoO2lmKGM+MSl7aWYoYyUyKXRocm93IEVycm9yKCJiZCIpO2Zvcih2YXIgZD0wO2Q8YztkKz0yKXRoaXMuc2V0KGFyZ3VtZW50c1tkXSxhcmd1bWVudHNbZCsxXSl9ZWxzZSBpZihhKWlmKGEgaW5zdGFuY2VvZiBxRylmb3IoYz1hLnJkKCksZD0wO2Q8Yy5sZW5ndGg7ZCsrKXRoaXMuc2V0KGNbZF0sYS5nZXQoY1tkXSkpO2Vsc2UgZm9yKGQgaW4gYSl0aGlzLnNldChkLGFbZF0pfTtuZGE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYT09PWJ9OwpzRz1mdW5jdGlvbihhKXtpZihhLnNpemUhPWEuai5sZW5ndGgpe2Zvcih2YXIgYj0wLGM9MDtiPGEuai5sZW5ndGg7KXt2YXIgZD1hLmpbYl07ckcoYS5vLGQpJiYoYS5qW2MrK109ZCk7YisrfWEuai5sZW5ndGg9Y31pZihhLnNpemUhPWEuai5sZW5ndGgpe2I9e307Zm9yKGQ9Yz0wO2M8YS5qLmxlbmd0aDspe2xldCBlPWEualtjXTtyRyhiLGUpfHwoYS5qW2QrK109ZSxiW2VdPTEpO2MrK31hLmoubGVuZ3RoPWR9fTtyRz1mdW5jdGlvbihhLGIpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYSxiKX07dUc9ZnVuY3Rpb24oKXt0aGlzLm89bmV3IHFHO3RoaXMuaj1uZXcgdEcoIiIpO3RoaXMuai5uZXh0PXRoaXMuai5VYT10aGlzLmp9O3dHPWZ1bmN0aW9uKGEsYil7aWYoYj1hLm8uZ2V0KGIpKWIucmVtb3ZlKCksdkcoYSxiKTtyZXR1cm4gYn07CnZHPWZ1bmN0aW9uKGEsYil7Yi5uZXh0PWEuai5uZXh0O2IuVWE9YS5qO2Euai5uZXh0PWI7Zm9yKGIubmV4dC5VYT1iO2Euby5zaXplPjEwMDspYS5yZW1vdmVOb2RlKGEuai5VYSl9O3hHPWZ1bmN0aW9uKGEsYil7YS5qIT1iJiZhLnJlbW92ZU5vZGUoYik7cmV0dXJuIGIudmFsdWV9O3RHPWZ1bmN0aW9uKGEsYil7dGhpcy5rZXk9YTt0aGlzLnZhbHVlPWJ9O29kYT1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT15RztpZihhPT1udWxsfHwhYy5FZylyZXR1cm4gYjtlLmouZ2V0KGEpPT09dm9pZCAwJiZlLmouc2V0KGEsW2IsZD8/W10sITFdKTtjPWUuai5nZXQoYSk7aWYoIWMpcmV0dXJuIGI7dmFyIFtmLGgsa109YztpZihoPy5sZW5ndGgmJmQ/Lmxlbmd0aCYmZC5zb21lKChsLG0pPT5sIT09aFttXSkpcmV0dXJuIGUuai5yZW1vdmUoYSksYjtkPy5sZW5ndGgmJmUuai5zZXQoYSxbZixkLGtdKTtyZXR1cm4gaz9mOmJ9OwpfLnpHPWZ1bmN0aW9uKGEsYj17RWc6ITB9KXtyZXR1cm57TWc6ZnVuY3Rpb24oYyxkKXt2YXIgZT1fLk4oKCk9PmEoYygpKSx2b2lkIDAsIkdtcmJsYiIpLFtmLGhdPV8uQUMoKCk9Pnt2YXIgaz1jKCksbD1lKCksbT1kPy5tYXAobj0+bigpKT8/W107cmV0dXJuIG9kYShsLGssYixtKX0pO18ubkUoKCk9Pnt2YXIgaz1lKCk7ayE9bnVsbCYmKGs9eUcucmVnaXN0ZXIoayxbZixoXSwoKT0+ZD8ubWFwKGw9PmwoKSk/P1tdKSxfLll1KGspKX0sIlVtYWM2YyIpO3JldHVybltmLGZ1bmN0aW9uKGspe2goayk7dmFyIGw9ZSgpO2whPW51bGwmJnlHLnVwZGF0ZShsLCgpPT5rLGIpfV19LGdldERhdGE6ZnVuY3Rpb24oYyl7Yz1hKGMpO3JldHVybiB5Ry5nZXQoYyxiKX0sZ2s6ZnVuY3Rpb24oYyxkKXtjPWEoYyk7cmV0dXJuIHlHLnVwZGF0ZShjLGQsYil9fX07Cl8uVz1mdW5jdGlvbihhKXt2YXIge2RhdGE6YixtYXBwaW5nOmMsd3JhcHBlcjpkLHJLOmV9PXBkYShhKTtxZGEoYixjKTt2YXIgZj0oKT0+QUcoXy5CdihiKSksaD0oKT0+e3ZhciBrPUFHKF8uQnYoYikpLGw9W107Zm9yKGxldCBtIG9mIGspKGs9QkcobSkpJiZsLnB1c2goayk7cmV0dXJuIGx9O3JldHVybiBhLmRhdGE/Xy5LKGlkYSx7ZmFsbGJhY2s6ZX0sKCk9Pl8uSyhfLmdHLHtwYTpofSwoayxsKT0+e3ZhciBtPWQ/cD0+ZCgoKT0+Y1trXShwLGwpLG4sbCk6cD0+Y1trXShwLGwpO20uZGVidWdOYW1lfHwobS5kZWJ1Z05hbWU9U3RyaW5nKGspKTtpZighY1tTdHJpbmcoayldKXJldHVybiBkb2N1bWVudC5jcmVhdGVDb21tZW50KCIiKTttLmNvbXBvbmVudFR5cGUhPT1fLkt2JiZyZGEoU3RyaW5nKGspKTt2YXIgbj1zZGEoZixrLGwpO3JldHVybiBfLksobSx7ZGF0YTpufSl9KSk6Xy5LKF8uSUIsbnVsbCl9OwpwZGE9ZnVuY3Rpb24oYSl7dmFyIGI9YS50YXJnZXRJZHx8dGRhKGEuY2hpbGRyZW4pO2lmKCFhLmRhdGF8fCFiKXJldHVybnsuLi5hLG1hcHBpbmc6YS5jaGlsZHJlbn07dmFyIGM9YHN0YW1wZXItJHt1ZGErK31gLGQ9KCk9Pih0eXBlb2YgYS50YXJnZXRJZD09PSJmdW5jdGlvbiI/YS50YXJnZXRJZChjKTphLnRhcmdldElkKT8/YztbYl09dmRhKCgpPT57dmFyIGY9Wy4uLkFHKGEuZGF0YSgpKV07Zi50YXJnZXRJZD1kO3JldHVybiBmfSk7dmFyIGU9ey4uLihfLnkoKS5yZXNvbHZlKF8uSW4od2RhKSl8fHt9KS5BSywuLi5hLmNoaWxkcmVufTtpZihhLkpyKXtsZXQgZj1lLm5vdGlmaWNhdGlvblRleHRSZW5kZXJlcixoPWUubm90aWZpY2F0aW9uTXVsdGlBY3Rpb25SZW5kZXJlcjtmJiYoZS5ub3RpZmljYXRpb25UZXh0UmVuZGVyZXI9KHtkYXRhOmt9LGwpPT5hLkpyKGYoe2RhdGE6a30sbCkpKTtoJiYoZS5ub3RpZmljYXRpb25NdWx0aUFjdGlvblJlbmRlcmVyPSh7ZGF0YTprfSwKbCk9PmEuSnIoaCh7ZGF0YTprfSxsKSkpfXJldHVybnsuLi5hLGRhdGE6YixtYXBwaW5nOmUsd3JhcHBlcjooZixoLGspPT5fLnBHKHt0YXJnZXRJZDpkLFlLOmt9LGEud3JhcHBlcj8oKT0+YS53cmFwcGVyKGYsaCxrKTpmKX19O3NkYT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ7cmV0dXJuIF8uTigoKT0+e3ZhciBlPWEoKVtjKCldO2lmKGUpZD1lW2JdO2Vsc2UgcmV0dXJuIF8uSXAobmV3IF8uWGooYFN0YW1wZXIgZmFpbGVkIHRvIGZpbmQgJHtTdHJpbmcoYil9IGF0IGluZGV4ICR7YygpfSBvZiBkYXRhIGFycmF5IG9mIGxlbmd0aCAke2EoKS5sZW5ndGh9IChiLzM2NTY0MzM1OSkuIERpZCB5b3UgYWNjZXNzIGEgc2lnbmFsIGFmdGVyIGEgY29tcG9uZW50IGhhcyBiZWVuIGNsZWFuZWQgdXA/YCkpLGQ7cmV0dXJuIGVbYl19LHZvaWQgMCwic0VydGpkIil9OwpCRz1mdW5jdGlvbihhKXt2YXIgYj12b2lkIDA7Zm9yKGxldCBjIGluIGEpaWYoISghYSkuaGFzT3duUHJvcGVydHkoYykpe2I9YzticmVha31yZXR1cm4gYn07dGRhPWZ1bmN0aW9uKGEpe2ZvcihsZXQgYiBvZiBPYmplY3Qua2V5cyhhKSlpZih4ZGEuaW5jbHVkZXMoYil8fHlkYS5pbmNsdWRlcyhiKXx8emRhLmluY2x1ZGVzKGIpKXJldHVybiEwO3JldHVybiExfTtBRz1mdW5jdGlvbihhKXtyZXR1cm4gYT9BcnJheS5pc0FycmF5KGEpJiZhIGluc3RhbmNlb2YgQXJyYXk/YTpbYV06W119O3JkYT1mdW5jdGlvbihhKXtfLngoIndlYl9lbmFibGVfcmVuZGVyZXJfbG9nZ2VyIikmJl8ueSgpLnJlc29sdmUoXy5JbihfLkNHKSk/Lnd5KGEpfTsKcWRhPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy55KCkucmVzb2x2ZShfLkluKEFkYSkpO2MmJl8ubkUoKCk9Pnt2YXIgZD1BRyhfLkJ2KGEpKSxlPTAsZj0hMTtmb3IodmFyIGggb2YgZCl7ZD1CRyhoKTtpZighZHx8IWJbU3RyaW5nKGQpXSl7Zj0hMDticmVha31lKyt9aD1jLlZLO2Q9Yy5XSztlPjAmJiFmP2gubyhkKCkpOmguaihkKCkpfSwiRGhPVXhlIil9O2pkYT17UmgoYSl7aWYoXy5mdSBpbiBhfHxfLmZkYSBpbiBhKXtsZXQgYj10aGlzLmVudHJpZXMuZ2V0KGEuQ2IudG9rZW4pO2lmKGIhPT12b2lkIDApcmV0dXJuIGIudmFsdWV9cmV0dXJuIHRoaXMucGFyZW50P18uY3UodGhpcy5wYXJlbnQsYSk6Xy5hdX19OwpsZGE9Y2xhc3N7Y29uc3RydWN0b3IoYSxiKXt0aGlzLmo9YVtfLnUuU3ltYm9sLml0ZXJhdG9yXSgpO3RoaXMubz1ifVtTeW1ib2wuaXRlcmF0b3JdKCl7cmV0dXJuIHRoaXN9bmV4dCgpe3ZhciBhPXRoaXMuai5uZXh0KCk7cmV0dXJue3ZhbHVlOmEuZG9uZT92b2lkIDA6dGhpcy5vLmNhbGwodm9pZCAwLGEudmFsdWUpLGRvbmU6YS5kb25lfX19O18uZz1xRy5wcm90b3R5cGU7Xy5nLk1jPWZ1bmN0aW9uKCl7c0codGhpcyk7dmFyIGE9W107Zm9yKGxldCBiPTA7Yjx0aGlzLmoubGVuZ3RoO2IrKylhLnB1c2godGhpcy5vW3RoaXMualtiXV0pO3JldHVybiBhfTtfLmcucmQ9ZnVuY3Rpb24oKXtzRyh0aGlzKTtyZXR1cm4gdGhpcy5qLmNvbmNhdCgpfTtfLmcuaGFzPWZ1bmN0aW9uKGEpe3JldHVybiByRyh0aGlzLm8sYSl9O18uZy5lcXVhbHM9ZnVuY3Rpb24oYSxiKXtpZih0aGlzPT09YSlyZXR1cm4hMDtpZih0aGlzLnNpemUhPWEuc2l6ZSlyZXR1cm4hMTtiPWJ8fG5kYTtzRyh0aGlzKTt2YXIgYztmb3IobGV0IGQ9MDtjPXRoaXMualtkXTtkKyspaWYoIWIodGhpcy5nZXQoYyksYS5nZXQoYykpKXJldHVybiExO3JldHVybiEwfTtfLmcuaXNFbXB0eT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnNpemU9PTB9O18uZy5jbGVhcj1mdW5jdGlvbigpe3RoaXMubz17fTt0aGlzLkFlPXRoaXMuc2l6ZT10aGlzLmoubGVuZ3RoPTB9OwpfLmcucmVtb3ZlPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmRlbGV0ZShhKX07Xy5nLmRlbGV0ZT1mdW5jdGlvbihhKXtyZXR1cm4gckcodGhpcy5vLGEpPyhkZWxldGUgdGhpcy5vW2FdLC0tdGhpcy5zaXplLHRoaXMuQWUrKyx0aGlzLmoubGVuZ3RoPjIqdGhpcy5zaXplJiZzRyh0aGlzKSwhMCk6ITF9O18uZy5nZXQ9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gckcodGhpcy5vLGEpP3RoaXMub1thXTpifTtfLmcuc2V0PWZ1bmN0aW9uKGEsYil7ckcodGhpcy5vLGEpfHwodGhpcy5zaXplKz0xLHRoaXMuai5wdXNoKGEpLHRoaXMuQWUrKyk7dGhpcy5vW2FdPWJ9O18uZy5mb3JFYWNoPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcy5yZCgpO2ZvcihsZXQgZD0wO2Q8Yy5sZW5ndGg7ZCsrKXtsZXQgZT1jW2RdLGY9dGhpcy5nZXQoZSk7YS5jYWxsKGIsZixlLHRoaXMpfX07Xy5nLmNsb25lPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBxRyh0aGlzKX07Xy5nLmtleXM9ZnVuY3Rpb24oKXtyZXR1cm4gXy5zaCh0aGlzLmJkKCEwKSkuaigpfTsKXy5nLnZhbHVlcz1mdW5jdGlvbigpe3JldHVybiBfLnNoKHRoaXMuYmQoITEpKS5qKCl9O18uZy5lbnRyaWVzPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcztyZXR1cm4gbWRhKHRoaXMua2V5cygpLGZ1bmN0aW9uKGIpe3JldHVybltiLGEuZ2V0KGIpXX0pfTtfLmcuYmQ9ZnVuY3Rpb24oYSl7c0codGhpcyk7dmFyIGI9MCxjPXRoaXMuQWUsZD10aGlzLGU9bmV3IF8ub2g7ZS5uZXh0PWZ1bmN0aW9uKCl7aWYoYyE9ZC5BZSl0aHJvdyBFcnJvcigiY2QiKTtpZihiPj1kLmoubGVuZ3RoKXJldHVybiBfLmFzO3ZhciBmPWQualtiKytdO3JldHVybnt2YWx1ZTphP2Y6ZC5vW2ZdLGRvbmU6ITF9fTtyZXR1cm4gZX07Xy5nPXVHLnByb3RvdHlwZTtfLmcuZ2V0PWZ1bmN0aW9uKGEsYil7cmV0dXJuKGE9d0codGhpcyxhKSk/YS52YWx1ZTpifTtfLmcuc2V0PWZ1bmN0aW9uKGEsYil7dmFyIGM9d0codGhpcyxhKTtjP2MudmFsdWU9YjooYz1uZXcgdEcoYSxiKSx0aGlzLm8uc2V0KGEsYyksdkcodGhpcyxjKSl9O18uZy51ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLmoubmV4dC52YWx1ZX07Xy5nLnNoaWZ0PWZ1bmN0aW9uKCl7cmV0dXJuIHhHKHRoaXMsdGhpcy5qLm5leHQpfTtfLmcucG9wPWZ1bmN0aW9uKCl7cmV0dXJuIHhHKHRoaXMsdGhpcy5qLlVhKX07Xy5nLnJlbW92ZT1mdW5jdGlvbihhKXtyZXR1cm4oYT10aGlzLm8uZ2V0KGEpKT8odGhpcy5yZW1vdmVOb2RlKGEpLCEwKTohMX07Xy5nLnJlbW92ZU5vZGU9ZnVuY3Rpb24oYSl7YS5yZW1vdmUoKTt0aGlzLm8ucmVtb3ZlKGEua2V5KX07Xy5nLmlzRW1wdHk9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5vLmlzRW1wdHkoKX07Cl8uZy5yZD1mdW5jdGlvbigpe3JldHVybiB0aGlzLm1hcChmdW5jdGlvbihhLGIpe3JldHVybiBifSl9O18uZy5NYz1mdW5jdGlvbigpe3JldHVybiB0aGlzLm1hcChmdW5jdGlvbihhKXtyZXR1cm4gYX0pfTtfLmcuY29udGFpbnM9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuc29tZShmdW5jdGlvbihiKXtyZXR1cm4gYj09YX0pfTtfLmcuY2xlYXI9ZnVuY3Rpb24oKXtmb3IoO3RoaXMuby5zaXplPjA7KXRoaXMucmVtb3ZlTm9kZSh0aGlzLmouVWEpfTtfLmcuZm9yRWFjaD1mdW5jdGlvbihhLGIpe2ZvcihsZXQgYz10aGlzLmoubmV4dDtjIT10aGlzLmo7Yz1jLm5leHQpYS5jYWxsKGIsYy52YWx1ZSxjLmtleSx0aGlzKX07Xy5nLm1hcD1mdW5jdGlvbihhLGIpe3ZhciBjPVtdO2ZvcihsZXQgZD10aGlzLmoubmV4dDtkIT10aGlzLmo7ZD1kLm5leHQpYy5wdXNoKGEuY2FsbChiLGQudmFsdWUsZC5rZXksdGhpcykpO3JldHVybiBjfTsKXy5nLnNvbWU9ZnVuY3Rpb24oYSxiKXtmb3IobGV0IGM9dGhpcy5qLm5leHQ7YyE9dGhpcy5qO2M9Yy5uZXh0KWlmKGEuY2FsbChiLGMudmFsdWUsYy5rZXksdGhpcykpcmV0dXJuITA7cmV0dXJuITF9O18uZy5ldmVyeT1mdW5jdGlvbihhLGIpe2ZvcihsZXQgYz10aGlzLmoubmV4dDtjIT10aGlzLmo7Yz1jLm5leHQpaWYoIWEuY2FsbChiLGMudmFsdWUsYy5rZXksdGhpcykpcmV0dXJuITE7cmV0dXJuITB9O3RHLnByb3RvdHlwZS5yZW1vdmU9ZnVuY3Rpb24oKXt0aGlzLlVhLm5leHQ9dGhpcy5uZXh0O3RoaXMubmV4dC5VYT10aGlzLlVhO2RlbGV0ZSB0aGlzLlVhO2RlbGV0ZSB0aGlzLm5leHR9O3ZhciB5Rz1uZXcgY2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLm89bmV3IE1hcDt0aGlzLnY9bmV3IE1hcDt0aGlzLmo9bmV3IHVHfWdldChhLGIpe3ZhciBjPXRoaXMuby5nZXQoYSk7aWYoYylyZXR1cm4gY1swXSgpO2lmKGIuRWcmJmEhPW51bGwpcmV0dXJuIHRoaXMuai5nZXQoYSk/LlswXX11cGRhdGUoYSxiLGMpe3ZhciBkPXRoaXMuby5nZXQoYSk7aWYoZCl7bGV0IFtlLGZdPWQ7Yj1iKGUoKSk7ZihiKTtjLkVnJiZhIT1udWxsJiYoYz10aGlzLnYuZ2V0KGEpLHRoaXMuai5zZXQoYSxbYixjPy4oKT8/W10sITBdKSk7cmV0dXJuITB9aWYoYy5FZyYmYSE9bnVsbCYmKGM9dGhpcy5qLmdldChhKSkpe2xldCBbZSxmXT1jO2I9YihlKTt0aGlzLmouc2V0KGEsW2IsZiwhMF0pO3JldHVybiEwfXJldHVybiExfXJlZ2lzdGVyKGEsYixjKXtpZihhPT1udWxsKXJldHVybigpPT57fTt0aGlzLm8uc2V0KGEsYik7YyYmdGhpcy52LnNldChhLGMpO3JldHVybigpPT57dGhpcy5vLmdldChhKT09PQpiJiYodGhpcy5vLmRlbGV0ZShhKSx0aGlzLnYuZGVsZXRlKGEpKX19fTtfLkNHPW5ldyBfLlZzKCJSRU5ERVJFUl9MT0dHRVJfVE9LRU4iKTt2YXIgd2RhPW5ldyBfLlZzKCJSRU5ERVJFUl9TVEFNUEVSX09QVElPTlNfVE9LRU4iKTt2YXIgQWRhPW5ldyBfLlZzKCJSRU5ERVJFUl9TVEFNUEVSX1NVQ0NFU1NfU0xJX1RPS0VOIik7dmFyIHhkYT0iY29tcGFjdFJhZGlvUmVuZGVyZXIgY29tcGFjdFBsYXlsaXN0UmVuZGVyZXIgcGxheWxpc3RWaWRlb1JlbmRlcmVyIGNvbXBhY3RWaWRlb1JlbmRlcmVyIGZlZWROdWRnZVJlbmRlcmVyIGdyaWRWaWRlb1JlbmRlcmVyIHByaW1ldGltZVByb21vUmVuZGVyZXIgcmFkaW9SZW5kZXJlciBwcmltZXRpbWVQcm9tb1JlbmRlcmVyIHJlZWxJdGVtUmVuZGVyZXIgcmVlbFNoZWxmUmVuZGVyZXIgcmljaFNoZWxmUmVuZGVyZXIgc2VhcmNoSGlzdG9yeVF1ZXJ5UmVuZGVyZXIgc2hlbGZSZW5kZXJlciB2aWRlb1dpdGhDb250ZXh0UmVuZGVyZXIgdmlkZW9DYXJkUmVuZGVyZXIgc3RhdGVtZW50QmFubmVyUmVuZGVyZXIgbWluaUdhbWVDYXJkVmlld01vZGVsIHNob3J0c0xvY2t1cFZpZXdNb2RlbCBsb2NrdXBWaWV3TW9kZWwgZ3JpZFNoZWxmVmlld01vZGVsIi5zcGxpdCgiICIpLHpkYT1bIm5vdGlmaWNhdGlvblRleHRSZW5kZXJlciIsIm5vdGlmaWNhdGlvbk11bHRpQWN0aW9uUmVuZGVyZXIiXSwKeWRhPSJwcmltZXRpbWVQcm9tb1JlbmRlcmVyIHN0YXRlbWVudEJhbm5lclJlbmRlcmVyIGJyYW5kVmlkZW9TaGVsZlJlbmRlcmVyIGJyYW5kVmlkZW9TaW5nbGV0b25SZW5kZXJlciBmZWVkTnVkZ2VSZW5kZXJlciBwbGF5bGlzdFZpZGVvUmVuZGVyZXIiLnNwbGl0KCIgIikse01nOnZkYX09Xy56RyhhPT5fLkJ2KGE/LnRhcmdldElkKSk7dmFyIHVkYT0wO18uVy5kZWJ1Z05hbWU9IkVqSmJDZSI7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBWYmE7VmJhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5ldmVyeS5jYWxsKGEsYix2b2lkIDApfTtfLk5EPWZ1bmN0aW9uKGEpe2E9WyhhJjE2NzExNjgwKT4+PjE2LChhJjY1MjgwKT4+PjgsYSYyNTUsKGEmNDI3ODE5MDA4MCk+Pj4yNF07aWYoIVZiYShhLGI9PmI9PT0oYiYyNTUpKSl0aHJvdyBFcnJvcigiUmNgIithLmpvaW4oIiwiKSk7cmV0dXJuYHJnYmEoJHthWzBdfSwke2FbMV19LCR7YVsyXX0sJHsoYVszXS8yNTUpLnRvRml4ZWQoMyl9KWB9Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmtBPWZ1bmN0aW9uKHt0eXBlOmEscGF5bG9hZDpifSl7YT17dHlwZTphfTtiIT09dm9pZCAwJiYoYS5wYXlsb2FkPWIpO3JldHVybiBhfTsvKgoKIENvcHlyaWdodCAyMDE1LXByZXNlbnQgRGFuIEFicmFtb3YKIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNSVQKKi8KXy5sQT0oKT0+TWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyaW5nKDcpLnNwbGl0KCIiKS5qb2luKCIuIik7Xy5tQT1gQEByZWR1eC9JTklUJHtfLmxBKCl9YDtfLlJhYT1gQEByZWR1eC9SRVBMQUNFJHtfLmxBKCl9YDtfLm5BPXR5cGVvZiBTeW1ib2w9PT0iZnVuY3Rpb24iJiZTeW1ib2wub2JzZXJ2YWJsZXx8IkBAb2JzZXJ2YWJsZSI7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8ub0E9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBfLmtBKHt0eXBlOiJSRVBMQUNFX0VOVElUWSIscGF5bG9hZDp7eGw6YyxlbnRpdHlUeXBlOmEsa2V5OmJ9fSl9O18ucEE9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBfLmtBKHt0eXBlOiJVUERBVEVfRU5USVRZIixwYXlsb2FkOnt4bDpjLGVudGl0eVR5cGU6YSxrZXk6YixJeTp2b2lkIDB9fSl9O18ucUE9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBhW2JdP2FbYl1bY118fG51bGw6bnVsbH07KCgpPT57dmFyIGE9ZD0+bmV3IFVpbnQ4QXJyYXkoZCksYj1kPT57dmFyIGU9bmV3IFVpbnQ4QXJyYXkoZC5sZW5ndGgpO2ZvcihsZXQgZj0wO2Y8ZC5sZW5ndGg7ZisrKWVbZl09ZFtmXTtyZXR1cm4gZX0sYz1uZXcgVWludDhBcnJheShbMV0pO3JldHVybiBjLmxlbmd0aD09PTEmJmNbMF09PT0xP2E6Yn0pKCk7Xy5yQT1BcnJheSgxMDI0KTtfLnNBPXR5cGVvZiBUZXh0RGVjb2RlciE9PSJ1bmRlZmluZWQiP25ldyBUZXh0RGVjb2Rlcjp2b2lkIDA7Xy50QT10eXBlb2YgVGV4dEVuY29kZXIhPT0idW5kZWZpbmVkIj9uZXcgVGV4dEVuY29kZXI6dm9pZCAwO18udUE9e2FuaW1hdGlvbkVudGl0eTozMDIsYWNjb3VudExpbmtTdGF0dXNFbnRpdHk6MTIyLGFza1N0dWRpb0dlbmVyYXRlZERhdGFFbnRpdHk6NjMwLGJvb2xlYW5FbnRpdHk6MzA3LGFza1N0dWRpb0NvbnZlcnNhdGlvblN1bW1hcnlFbnRpdHk6NjM3LGJ1dHRvbkVudGl0eTozNTgsY2FwdGlvblRyYWNrOjIyNSxjaGFubmVsSGFuZGxlOjI3NSxjaGlwRW50aXR5OjQ5OCxjb21tZXJjZUFjcXVpc2l0aW9uQ2xpZW50UGF5bG9hZEVudGl0eToyNzYsY29tbWVyY2VDYXJ0TGlzdEVudGl0eToyMzYsY29tbWVyY2VUb2tlbkJhbGFuY2VFbnRpdHk6NTMyLGNvbXBvc2l0ZVNvdXJjZUVudGl0eTo1OTQsY29udGV4dE5vdGVGZWVkRW50aXR5UGF5bG9hZDo0ODMsY29udGV4dE5vdGVVc2VyUmF0aW5nRW50aXR5UGF5bG9hZDo1NzYsY29udGludWF0aW9uVG9rZW5FbnRpdHk6NDA2LGRvd25sb2FkUXVhbGl0eVBpY2tlckVudGl0eToyMDIsZG93bmxvYWRzUGFnZVJlZnJlc2hUb2tlbkVudGl0eToyOTksCmRvd25sb2Fkc1BhZ2VWaWV3Q29uZmlndXJhdGlvbkVudGl0eToyNjQsZG93bmxvYWRTdGF0dXNFbnRpdHk6MTQxLGRpc21pc3NTdGF0ZTo1NDAsc2Z2QXVkaW9JdGVtQ3VycmVudGx5UGxheWluZ0VudGl0eToxODYsZW1vamlGb3VudGFpbkRhdGFFbnRpdHk6MzkzLGVtb2ppQ3VzdG9taXphdGlvblNldEVudGl0eTo0OTYsZmFrZUNoYW5uZWw6MixmYWtlUGxheWxpc3Q6Mjc5LGZha2VQbGF5bGlzdEVudHJ5Q29sbGVjdGlvbjoyODAsZmFrZVZpZGVvOjE4MixmYWtlVmlkZW9EZXNjcmlwdGlvbjoyNzgsZmVhdHVyZWRQcm9kdWN0c0VudGl0eTozOTIsc2F2ZWRQcm9kdWN0c1N0YXRlRW50aXR5OjU5OCxmbG93U3RhdGVFbnRpdHk6MjUyLGljb25CYWRnZUVudGl0eToyMjksaW50ZXJzdGl0aWFsSW50ZXJhY3Rpb25TdGF0ZUVudGl0eTo0NDMsbGlrZUJ1dHRvbkFuaW1hdGlvbkVudGl0eTo1NjcsbGl2ZUNoYXRQb2xsU3RhdGVFbnRpdHk6MjE3LGxpdmVWaWV3ZXJMZWFkZXJib2FyZENoYXRFbnRyeVBvaW50U3RhdGVFbnRpdHk6NTYzLApsaXZlVmlld2VyTGVhZGVyYm9hcmRQb2ludHNFbnRpdHk6NTY0LGxpdmVSZWFjdGlvbnNEYXRhRW50aXR5OjUwMyxsb2dvRW50aXR5OjI0NSxtYWNyb01hcmtlckVudGl0eTozMjksbWFpbkRvd25sb2Fkc0xpYnJhcnlFbnRpdHk6MTU4LG1haW5Eb3dubG9hZHNMaXN0RW50aXR5OjE2NCxtYWluUGxheWxpc3REb3dubG9hZFN0YXRlRW50aXR5OjM3MyxtYWluUGxheWxpc3RFbnRpdHk6MzA2LG1haW5QbGF5bGlzdFZpZGVvRW50aXR5OjM2OCxtYWluVmlkZW9Eb3dubG9hZFN0YXRlRW50aXR5OjI2MixtYWluVmlkZW9FbnRpdHk6MjYxLG1hcmtlcnNFbmdhZ2VtZW50UGFuZWxTeW5jRW50aXR5OjE5NixtYXJrZXJzVmlzaWJpbGl0eU92ZXJyaWRlRW50aXR5OjMxMixtdXNpY0FsYnVtUmVsZWFzZURldGFpbDoxOCxtdXNpY0FsYnVtUmVsZWFzZURvd25sb2FkTWV0YWRhdGFFbnRpdHk6MjU5LG11c2ljQWxidW1SZWxlYXNlOjE3LG11c2ljQWxidW1SZWxlYXNlVXNlckRldGFpbDoxOSxtdXNpY0FydGlzdERldGFpbDoyMSwKbXVzaWNBcnRpc3Q6MjAsbXVzaWNBcnRpc3RVc2VyRGV0YWlsOjIyLG11c2ljRG93bmxvYWRzTGlicmFyeUVudGl0eToyNTcsbXVzaWNMaWJyYXJ5RWRpdDoxMjEsbXVzaWNMaWJyYXJ5U3RhdHVzRW50aXR5OjMxOCxtdXNpY1BsYXlsaXN0OjI0LG11c2ljUGxheWxpc3REb3dubG9hZE1ldGFkYXRhRW50aXR5OjI0OCxtdXNpY1NoYXJlOjEwMCxtdXNpY1RyYWNrRGV0YWlsOjI5LG11c2ljVHJhY2tEb3dubG9hZE1ldGFkYXRhRW50aXR5OjIzNCxtdXNpY1RyYWNrOjI4LG11c2ljVHJhY2tVc2VyRGV0YWlsOjMwLG9mZmxpbmVPcmNoZXN0cmF0aW9uQWN0aW9uV3JhcHBlckVudGl0eToxNjksb2ZmbGluZVZpZGVvUG9saWN5OjEzMCxvZmZsaW5lVmlkZW9TdHJlYW1zOjE5OCxvZmZsaW5lYWJpbGl0eUVudGl0eToyNDYsb3JjaGVzdHJhdGlvbldlYlNhbXBsaW5nRW50aXR5OjI0MixwYWdlSGVhZGVyRW50aXR5OjQ5NSxwYXJ0eUdhbWVQYW5lbEVudGl0eTo2MTgsc2xpZGVyR2FtZVBhbmVsRW50aXR5OjYzMywKcGRwU3RhdGVFbnRpdHk6NTI0LHBpbm5lZFByb2R1Y3RFbnRpdHk6MjczLHBsYXliYWNrRGF0YToxMTkscGxheWVyU3RhdGVFbnRpdHk6MzIzLHBsYXlsaXN0VGh1bWJuYWlsRWRpdHNFbnRpdHk6NTM5LHF1YW50aXR5SW5jcmVtZW50ZXJFbnRpdHk6MzU2LHJlZnJlc2g6MTQ4LHNhdmVUb1BsYXlsaXN0TGlzdEVudGl0eToyMzEsc2VsZWN0ZWRDaGlwSW5kZXhFbnRpdHlQYXlsb2FkOjQ3OSxzZWxlY3Rpb25WYWx1ZUxpc3RFbnRpdHk6NjM0LHNldHRpbmdFbnRpdHk6Mjk3LHN0cmluZ0VudGl0eTozODIsc3VnZ2VzdGVkRmVlZGJhY2tDaGlwU3RhdGVFbnRpdHk6NDg1LHRyYW5zZmVyOjEyMCx0cmVuZGluZ09mZmVyRW50aXR5OjQ2OSx1bnBsdWdnZWRTaWRlc2hlZXRIZWFkZXJTdGF0ZUVudGl0eTo2MzUsdmlkZW9Eb3dubG9hZENvbnRleHRFbnRpdHk6NDYxLHZpZGVvT3ZlcnZpZXdBc3luY0RhdGFFbnRpdHk6NTQ1LHZpZGVvUGxheWJhY2tQb3NpdGlvbkVudGl0eTo3Nix2b3RpbmdFbnRpdHk6NTYxLAp5dE1haW5DaGFubmVsRW50aXR5OjE1Mix5b3VjaGF0UGVuZGluZ1Jlc3BvbnNlRW50aXR5OjU1Myx5dE1haW5Eb3dubG9hZGVkVmlkZW9FbnRpdHk6MTU1LHl0TWFpblZpZGVvRW50aXR5OjE1MX07Xy52QT17fTtmb3IobGV0IFthLGJdb2YgT2JqZWN0LmVudHJpZXMoXy51QSkpe2xldCBjPWEsZD1iO2QmJihfLnZBW2RdPWMpfTsoKCk9Pnt2YXIgYT1kPT5uZXcgVWludDhBcnJheShkKSxiPWQ9Pnt2YXIgZT1uZXcgVWludDhBcnJheShkLmxlbmd0aCk7Zm9yKGxldCBmPTA7ZjxkLmxlbmd0aDtmKyspZVtmXT1kW2ZdO3JldHVybiBlfSxjPW5ldyBVaW50OEFycmF5KFsxXSk7cmV0dXJuIGMubGVuZ3RoPT09MSYmY1swXT09PTE/YTpifSkoKTtfLlNhYT1fLiRsKCJ5dC1pZGItcHJlZi1zdG9yYWdlIix7c2U6e3ByZWZzOntQZDoxfX0sc2hhcmVkOiExLHVwZ3JhZGUoYSxiKXtiKDEpJiZfLm9sKF8ua2woYSwicHJlZnMiLHtrZXlQYXRoOiJrZXkifSksImJ5RXhwaXJhdGlvbiIsImV4cGlyYXRpb25UaW1lc3RhbXBNcyIpfSx2ZXJzaW9uOjF9KTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIGpFO18uaUU9ZnVuY3Rpb24oYSxiKXthPVsoYSYxNjcxMTY4MCk+Pj4xNiwoYSY2NTI4MCk+Pj44LGEmMjU1XTtyZXR1cm5gcmdiYSgke2FbMF19LCAke2FbMV19LCAke2FbMl19LCAke2J9KWB9O18ua0U9ZnVuY3Rpb24oYSl7aWYoYS5zb3VyY2VzKWZvcihsZXQgYiBvZiBhLnNvdXJjZXMpaWYoYi5jbGllbnRSZXNvdXJjZT8uaW1hZ2VOYW1lfHxiLmN1c3RvbUltYWdlU291cmNlJiZfLkIoYi5jdXN0b21JbWFnZVNvdXJjZSxqRSk/LmNsaWVudFJlc291cmNlPy5pY29uKXJldHVybiBifTsKXy5sRT1mdW5jdGlvbihhKXtpZihhPy5jbGllbnRSZXNvdXJjZT8uaW1hZ2VOYW1lKXtsZXQgYj1hLmNsaWVudFJlc291cmNlPy5pbWFnZU5hbWU7YTp7c3dpdGNoKGIpe2Nhc2UgInl0X3ByZW1pdW1fd29yZG1hcmtfaGVhZGVyX2xpZ2h0IjpjYXNlICJ5dF9wcmVtaXVtX3dvcmRtYXJrX2hlYWRlcl9kYXJrIjphPSJZT1VUVUJFX1BSRU1JVU1fTE9HT19TSE9SVCI7YnJlYWsgYTtjYXNlICJ5dF93b3JkbWFya19oZWFkZXJfbGlnaHQiOmNhc2UgInl0X3dvcmRtYXJrX2hlYWRlcl9kYXJrIjphPSJMT0dPX1dJVEhfVEVYVCI7YnJlYWsgYX1hPXZvaWQgMH1yZXR1cm4gYXx8Z2NhLmdldChiKXx8Yn1pZihhPy5jdXN0b21JbWFnZVNvdXJjZSYmKGE9Xy5CKGEuY3VzdG9tSW1hZ2VTb3VyY2UsakUpPy5jbGllbnRSZXNvdXJjZT8uaWNvbikpcmV0dXJuIGF9O2pFPW5ldyBfLkkoInlvdXR1YmVJY29uU291cmNlIik7Xy5tRT13aW5kb3cuZGV2aWNlUGl4ZWxSYXRpb3x8MTt2YXIgZ2NhPW5ldyBNYXAoW1sieXRfb3V0bGluZV9iYWdfYmxhY2tfMjQiLCJiYWciXV0pOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLktEPWZ1bmN0aW9uKGEpe2lmKGE9YS5tYXRjaChVYmEpKXJldHVybntpY29uTmFtZTphWzJdLGh4OmFbMV0udG9VcHBlckNhc2UoKT09PSJGSUxMIixpY29uU2l6ZTpOdW1iZXIoYVszXSl9fTtfLkxEPW5ldyBfLlZzKCJJQ09OX1dJWl9DT01QT05FTlRfVE9LRU4iKTt2YXIgVWJhO1ViYT0vXllUSUNPTl8oZmlsbHxvdXRsaW5lKV8oW2EtekEtWjAtOV9dKylfcyhbMC05XSspJC9pOwpfLk1EPV8uTCgoe2ljb246YSxhY3RpdmU6YixjbGFzc05hbWU6YyxzdHlsZTpkLHlwOmUsaGM6Zixyb2xlOmgsR2U6ayxIYzpsLGFyaWFIaWRkZW46bSxhcmlhRXhwYW5kZWQ6bixhcmlhTGFiZWw6cCx0YWJpbmRleDpyLGlkOnQsc2l6ZTp2LGFnOnosWnA6RSxlcjpBLHRpdGxlOkZ9KT0+e3ZhciBDPV8uTigoKT0+e3ZhciBSPWE/LigpO2lmKFIpcmV0dXJuIF8uS0QoUil9LHZvaWQgMCwiTTBpNXZmIiksRz0oKT0+QygpPy5pY29uTmFtZT8/YT8uKCksRD0oKT0+dj8uKCk/P0MoKT8uaWNvblNpemUsSD0oKT0+Yj8uKCk/P0MoKT8uaHg7cmV0dXJuIF8uSyhfLk8se0E6YSx0aGVuOigpPT57dmFyIFI9Xy55KCkucmVzb2x2ZShfLkxEKTtyZXR1cm4gXy5LKFIse2ljb246Ryx5cDplLGhjOmYsR2U6ayxIYzpsLGFyaWFFeHBhbmRlZDpuLHRhYmluZGV4OnIsaWQ6dCxhY3RpdmU6SCxzaXplOkQscm9sZTpoLGNsYXNzTmFtZTpjLGFyaWFIaWRkZW46bSxhcmlhTGFiZWw6cCxzdHlsZTooKT0+CntpZighRCgpKXJldHVybiBkPy4oKTt2YXIgTT1gd2lkdGg6ICR7RCgpfXB4OyBoZWlnaHQ6ICR7RCgpfXB4O2A7cmV0dXJuIGQ/LigpP2Ake019ICR7ZCgpfWA6TX0sdGl0bGU6RixhZzp6LFpwOkUsZXI6QX0pfX0pfSwiaiIpO18uTUQuaWRvbUNvbXBhdD17Y2FsbGJhY2tzOntlcjohMH19Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgS0UsTEUsbWNhLG5jYSxORSxwY2EscWNhLHJjYSx1Y2Esd2NhLHZjYSxYRSx4Y2EseWNhLEFjYSx6Y2E7Xy5KRT1mdW5jdGlvbihhKXthJj0xNjc3NzIxNTt2YXIgYj1bKGEmMTY3MTE2ODApPj4xNiwoYSY2NTI4MCk+PjgsYSYyNTVdO2E9YlswXTt2YXIgYz1iWzFdO2I9YlsyXTthPU51bWJlcihhKTtjPU51bWJlcihjKTtiPU51bWJlcihiKTtpZihhIT0oYSYyNTUpfHxjIT0oYyYyNTUpfHxiIT0oYiYyNTUpKXRocm93IEVycm9yKCJRY2AiK2ErImAiK2MrImAiK2IpO2M9YTw8MTZ8Yzw8OHxiO3JldHVybiBhPDE2PyIjIisoMTY3NzcyMTZ8YykudG9TdHJpbmcoMTYpLnNsaWNlKDEpOiIjIitjLnRvU3RyaW5nKDE2KX07S0U9ZnVuY3Rpb24oYSl7cmV0dXJuIGEuc291cmNlcyE9PXZvaWQgMHx8YS5wcm9jZXNzb3IhPT12b2lkIDB9OwpMRT1mdW5jdGlvbihhKXt2YXIgYj1hLnRodW1ibmFpbHM7aWYoYil7YT17c291cmNlczpbXX07Zm9yKGxldCBjIG9mIGIpYj17fSxiLnVybD1jLnVybCxiLndpZHRoPWMud2lkdGgsYi5oZWlnaHQ9Yy5oZWlnaHQsYS5zb3VyY2VzLnB1c2goYik7cmV0dXJuIGF9fTttY2E9ZnVuY3Rpb24oYSxiLGMpe2M9Yz9bY106W107YS5vcGFjaXR5JiZjLnB1c2goYG9wYWNpdHk6ICR7YS5vcGFjaXR5fTtgKTtiJiZhLnBsYWNlaG9sZGVyQ29sb3I/KGE9Xy5ORChhLnBsYWNlaG9sZGVyQ29sb3IpLGMucHVzaChgYmFja2dyb3VuZC1jb2xvcjogJHthfTtgKSk6Yy5wdXNoKCJiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsiKTtyZXR1cm4gYy5qb2luKCIgIil9OwpuY2E9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj1bInl0Q29yZUltYWdlSG9zdCJdO2ImJmYucHVzaChiKTtjfHxmLnB1c2goInl0Q29yZUltYWdlRmlsbFBhcmVudEhlaWdodCIpO2R8fGYucHVzaCgieXRDb3JlSW1hZ2VGaWxsUGFyZW50V2lkdGgiKTtzd2l0Y2goYS5jb250ZW50TW9kZSl7Y2FzZSAiQ09OVEVOVF9NT0RFX1NDQUxFX0FTUEVDVF9GSVQiOmYucHVzaCgieXRDb3JlSW1hZ2VDb250ZW50TW9kZVNjYWxlQXNwZWN0Rml0Iik7YnJlYWs7Y2FzZSAiQ09OVEVOVF9NT0RFX1NDQUxFX0FTUEVDVF9GSUxMIjpmLnB1c2goInl0Q29yZUltYWdlQ29udGVudE1vZGVTY2FsZUFzcGVjdEZpbGwiKTticmVhaztjYXNlICJDT05URU5UX01PREVfQ0VOVEVSIjpmLnB1c2goInl0Q29yZUltYWdlQ29udGVudE1vZGVDZW50ZXIiKTticmVhaztkZWZhdWx0OmYucHVzaCgieXRDb3JlSW1hZ2VDb250ZW50TW9kZVNjYWxlVG9GaWxsIil9YS5mbGlwRm9yUnRsTGF5b3V0JiZmLnB1c2goInl0Q29yZUltYWdlRmxpcFJ0bCIpOwpzd2l0Y2goZSl7Y2FzZSAiVE9QX1NUQVJUIjpmLnB1c2goZG9jdW1lbnQuYm9keT8uZ2V0QXR0cmlidXRlKCJkaXIiKT09PSJydGwiPyJ5dENvcmVJbWFnZU9iamVjdFBvc2l0aW9uVG9wUmlnaHQiOiJ5dENvcmVJbWFnZU9iamVjdFBvc2l0aW9uVG9wTGVmdCIpfXJldHVybiBmLmpvaW4oIiAiKX07Xy5NRT1mdW5jdGlvbigpe3JldHVybiB3aW5kb3cubWF0Y2hNZWRpYSYmd2luZG93Lm1hdGNoTWVkaWEoIihvcmllbnRhdGlvbjogbGFuZHNjYXBlKSIpLm1hdGNoZXN9O05FPWZ1bmN0aW9uKGEpe3ZhciBiPXt9O2E9Xy5CKGEucHJvY2Vzc29yLG9jYSk7dmFyIGM9KGM9YT8uaW1hZ2VUaW50Py5jb2xvcik/Xy5ORChjKTp2b2lkIDA7YyYmKGIuY29sb3I9Yyk7aWYoYz1wY2EoYSkpYi5ueT1jO2lmKGE9cWNhKGEpKWIuTno9YTtyZXR1cm4gYn07CnBjYT1mdW5jdGlvbihhKXt2YXIgYj1hPy5saW5lYXJHcmFkaWVudDtpZihiJiZiPy5jb2xvcnMmJmI/LmNvbG9ycz8ubGVuZ3RoIT09MCl7dmFyIGM9Yi5jb2xvcnMubWFwKGU9Pl8uTkQoZSkpO2E9Yi5hbmdsZSE9PXZvaWQgMD9gJHtiLmFuZ2xlfWRlZywgYDoiIjt2YXIgZD1iLnBvc2l0aW9ucztpZighZHx8ZC5sZW5ndGghPT1jLmxlbmd0aClyZXR1cm5gbGluZWFyLWdyYWRpZW50KCR7YX0ke2Muam9pbigiLCAiKX0pYDtiPWMubWFwKChlLGYpPT5gJHtlfSAke2RbZl0qMTAwfSVgKTtyZXR1cm5gbGluZWFyLWdyYWRpZW50KCR7YX0ke2Iuam9pbigiLCAiKX0pYH19OwpxY2E9ZnVuY3Rpb24oYSl7aWYoKGE9YT8ucmFkaWFsR3JhZGllbnQpJiZhPy5jb2xvcnMmJmE/LmNvbG9ycz8ubGVuZ3RoIT09MCl7dmFyIGI9YS5jb2xvcnMubWFwKGs9Pl8uTkQoaykpLGM9YS5jZW50ZXJVbml0Pz8iRElNRU5TSU9OX1VOSVRfRlJBQ1RJT04iLGQ9Yz09PSJESU1FTlNJT05fVU5JVF9QT0lOVCI/InB4IjoiJSIsZT1jPT09IkRJTUVOU0lPTl9VTklUX0ZSQUNUSU9OIj8xMDA6MTtjPWAkeyhhLmNlbnRlclg/Py41KSplfSR7ZH1gO2Q9YCR7KGEuY2VudGVyWT8/LjUpKmV9JHtkfWA7dmFyIGY9YS5yYWRpdXM7ZT0iIjtlPWYhPT12b2lkIDA/YGNpcmNsZSAke2Z9cHhgOiJlbGxpcHNlIjt2YXIgaD1hLnBvc2l0aW9ucztpZighaHx8aC5sZW5ndGghPT1iLmxlbmd0aClyZXR1cm5gcmFkaWFsLWdyYWRpZW50KCR7ZX0gYXQgJHtjfSAke2R9LCAke2Iuam9pbigiLCAiKX0pYDthPWIubWFwKChrLGwpPT5gJHtrfSAke2hbbF0qMTAwfSVgKTtyZXR1cm5gcmFkaWFsLWdyYWRpZW50KCR7ZX0gYXQgJHtjfSAke2R9LCAke2Euam9pbigiLCAiKX0pYH19OwpfLk9FPWZ1bmN0aW9uKGEpe18uamYuR2EoKCk9Pnt0cnl7YSgpfWNhdGNoKGIpe18uT3QoYil9fSw4KX07cmNhPWZ1bmN0aW9uKGEpe3ZhciBiPSgxK2EubWFyZ2luKSooZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodHx8d2luZG93LmlubmVySGVpZ2h0KTthLmo9YS5qLmZpbHRlcihjPT57dmFyIGQ9Yy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTsoZD1iPmQudG9wJiYhIWQuaGVpZ2h0KSYmYS5CKGMpO3JldHVybiFkJiZjLnBhcmVudE5vZGV9KTthLnY9ITF9O18uUEU9ZnVuY3Rpb24oYSl7aWYoIm1hdGNoTWVkaWEiaW4gd2luZG93KXJldHVybiB3aW5kb3cubWF0Y2hNZWRpYShhLmxhbmRzY2FwZSsiLCIrYS5wb3J0cmFpdCkubWF0Y2hlc307Xy5URT1mdW5jdGlvbigpe2lmKFFFPT09dm9pZCAwKXtsZXQgYT1fLlBFKHNjYSk7UUU9YSE9PXZvaWQgMD9hOl8uUkU+PTkzMCYmU0U+PTU1MHx8Xy5SRT49NTUwJiZTRT49OTMwfXJldHVybiBRRX07CnVjYT1mdW5jdGlvbihhLGIpe2EuSm09Yjt0Y2Eub2JzZXJ2ZShhKX07CndjYT1mdW5jdGlvbihhLGIpe2Z1bmN0aW9uIGMoayl7dmFyIGw9TWF0aC5yb3VuZCgoMCxfLmVsKSgpLWQpO1VFPU1hdGgubWF4KDAsVUUtMSk7bD17ZHVyYXRpb25Mb2FkaW5nTXM6bCx3aWR0aFB4OmEubmF0dXJhbFdpZHRoLGhlaWdodFB4OmEubmF0dXJhbEhlaWdodCx2aWV3V2lkdGhQeDphLmNsaWVudFdpZHRoLHZpZXdIZWlnaHRQeDphLmNsaWVudEhlaWdodCxmaW5pc2hlZExvYWRpbmc6ITAsaXNMb2FkRXJyb3I6ayxsb2FkTnVtYmVyOmUsY29uY3VycmVudExvYWRzOlVFfTtiJiZiLmltYWdlQ2xhc3NpZmljYXRpb25UeXBlIT1udWxsJiYobC5pbWFnZUNsYXNzaWZpY2F0aW9uVHlwZT1iLmltYWdlQ2xhc3NpZmljYXRpb25UeXBlKTtpZighayl0cnl7bGV0IG09cGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5TmFtZShhLnNyYyk7aWYobSYmbS5sZW5ndGg+MCl7bGV0IG49bVttLmxlbmd0aC0xXTtuLnRyYW5zZmVyU2l6ZSYmKGwuZG93bmxvYWRlZEJ5dGVzPW4udHJhbnNmZXJTaXplKX19Y2F0Y2gobSl7fV8uRXAoInRodW1ibmFpbExvYWRlZCIsCmwpO2lmKGs9VkUuZ2V0KGEpKWEucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsay5vbkxvYWQpLGEucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGsub25FcnJvcik7VkUuZGVsZXRlKGEpfWlmKF8ueCgid2ViX2ltYWdlX2xvYWRfdGVsZW1ldHJ5Iikpe3ZjYShhKTtVRSsrO1dFKys7dmFyIGQ9KDAsXy5lbCkoKSxlPVdFLGY9KCk9PntjKCExKX0saD0oKT0+e2MoITApfTthLmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLGYpO2EuYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGgpO1ZFLnNldChhLHtvbkxvYWQ6ZixvbkVycm9yOmh9KX19O3ZjYT1mdW5jdGlvbihhKXt2YXIgYj1WRS5nZXQoYSk7YiYmKGEucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsYi5vbkxvYWQpLGEucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGIub25FcnJvciksVUU9TWF0aC5tYXgoMCxVRS0xKSxWRS5kZWxldGUoYSkpfTsKWEU9ZnVuY3Rpb24oYSxiLGMpe2ImJl8uVHQoYSxiKTtjJiZhLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCJpbWFnZS11bmxvYWRlZCIse2J1YmJsZXM6ITAsY29tcG9zZWQ6ITB9KSl9O3hjYT1mdW5jdGlvbihhLGIsYyxkLGU9ITApe2Z1bmN0aW9uIGYoKXt2YXIgaD1jKGIsYSk7aCYmYS5nZXRBdHRyaWJ1dGUoInNyYyIpIT09aCYmKGghPT1hLnNyYyYmKGEuc3JjPWgpLHdjYShhLGQpLGQmJlhFKGEsZC50aixkLkJtKSl9YS5yZW1vdmVBdHRyaWJ1dGUoInNyYyIpO2QmJlhFKGEsZC50aixkLkJtKTtiJiYoZT91Y2EoYSxmKTpmKCkpfTt5Y2E9ZnVuY3Rpb24oYSxiLGMpe2lmKCFiKXJldHVybiExO2I9YyhiLGEpO2M9YS5nZXRBdHRyaWJ1dGUoInNyYyIpO3JldHVybiBiJiZiPT09YyYmYS5jb21wbGV0ZX07CkFjYT1mdW5jdGlvbihhLGIsYz0hMSl7dmFyIGQ9S0UoYSk/ey4uLmF9OkxFKGEpO2lmKGQpe2QuY29udGVudE1vZGU9ZC5jb250ZW50TW9kZT8/Yi5jb250ZW50TW9kZTt2YXIgZT1iLm9uTG9hZDtiLm9uTG9hZD1sPT57dmFyIG09bC50YXJnZXQ7YyYmbS5uYXR1cmFsV2lkdGg9PT0xMjB8fF8uU3QobSwieXRDb3JlSW1hZ2VMb2FkZWQiKTtiLnNnJiZtLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCJpbWFnZS1sb2FkZWQiLHtidWJibGVzOiEwLGNvbXBvc2VkOiEwfSkpO2U/LihsKX07Yi5BYiYmYi5UYSYmKGIud2lkdGg9Yi5BYik7Yi5kYyYmYi5ZYSYmKGIuaGVpZ2h0PWIuZGMpO3ZhciBmPV8ua0UoZCksaD1mJiZfLmxFKGYpLGs9TkUoZCk7aWYoaCl7YT1mLmNsaWVudFJlc291cmNlPy5pbWFnZUNvbG9yP18uTkQoZi5jbGllbnRSZXNvdXJjZS5pbWFnZUNvbG9yKTp2b2lkIDA7aWYoaz1hfHxrLmNvbG9yKWIuc3R5bGU9Yi5zdHlsZT9iLnN0eWxlLmVuZHNXaXRoKCI7Iik/Yi5zdHlsZSsKYCBjb2xvcjogJHtrfTtgOmIuc3R5bGUrYDsgY29sb3I6ICR7a307YDpgY29sb3I6ICR7a307YDtyZXR1cm57dHlwZToiaWNvbiIsaWNvbk5hbWU6aCxjb25maWc6ey4uLmIsLi4uKGIuYWx0P3t9OnthcmlhSGlkZGVuOiJ0cnVlIn0pLGFyaWFMYWJlbDpiLmFsdCxyb2xlOiJpbWcifX19S0UoYSl8fChiLmFsdD1hLmFjY2Vzc2liaWxpdHkmJmEuYWNjZXNzaWJpbGl0eS5hY2Nlc3NpYmlsaXR5RGF0YSYmYS5hY2Nlc3NpYmlsaXR5LmFjY2Vzc2liaWxpdHlEYXRhLmxhYmVsfHxiLmFsdCxiLnN0eWxlPW1jYShhLGIuV3IsYi5zdHlsZSksYi5pc1ByZWxvYWRlZD0hIV8uQihhLHpjYSk/LmlzUHJlbG9hZGVkKTtiLmNsYXNzTmFtZT1uY2EoZCxiLmNsYXNzTmFtZSxiLllhLGIuVGEsYi5vYmplY3RQb3NpdGlvbik7Yi50aj0ieXRDb3JlSW1hZ2VMb2FkZWQiO3JldHVybnt0eXBlOiJpbWFnZSIsaW1hZ2U6ZCxjb25maWc6Yn19fTt6Y2E9bmV3IF8uSSgid2ViVGh1bWJuYWlsRGV0YWlsc0V4dGVuc2lvbkRhdGEiKTt2YXIgb2NhPW5ldyBfLkkoImJvcmRlckltYWdlUHJvY2Vzc29yIik7dmFyIENjYTtbXy5CY2EsQ2NhXT1fLkooXy5NRSgpLHZvaWQgMCwiTzNYMndkIik7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsKCk9PntDY2EoXy5NRSgpKX0pO18uZkY9Y2xhc3N7Y29uc3RydWN0b3IoYSxiKXt0aGlzLm1hcmdpbj1hO3RoaXMuQj1iO3RoaXMuaj1bXTt0aGlzLnY9ITE7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsKCk9Pnt0aGlzLm8oKX0pO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaGVuZCIsKCk9Pnt0aGlzLm8oKX0pO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJ1cGRhdGV1aSIsKCk9Pnt0aGlzLm8oKX0pO3ZhciBjPW5ldyBfLld0KCgwLF8uQ2EpKHRoaXMubyx0aGlzKSwxMDApO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLCgpPT57Yy52KCl9LCEwKTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIiwoMCxfLkNhKSh0aGlzLm8sdGhpcykpO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJzdGF0ZS1uYXZpZ2F0ZXN0YXJ0IiwoKT0+e3RoaXMuaj1bXX0pO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJzdGF0ZS1uYXZpZ2F0ZWVuZCIsKDAsXy5DYSkodGhpcy5vLHRoaXMpKX1vYnNlcnZlKGEpe3RoaXMuai5pbmNsdWRlcyhhKXx8CnRoaXMuai5wdXNoKGEpfXVub2JzZXJ2ZShhKXt0aGlzLmo9dGhpcy5qLmZpbHRlcihiPT5iIT09YSl9bygpe3RoaXMudnx8KF8uT0UoKCk9PntyY2EodGhpcyl9KSx0aGlzLnY9ITApfWRpc2Nvbm5lY3QoKXt0aGlzLmo9W119fTt2YXIgc2NhLFFFLFNFO3NjYT17bGFuZHNjYXBlOiIobWluLXdpZHRoOiA5MzFweCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSIscG9ydHJhaXQ6IihtaW4td2lkdGg6IDU1MHB4KSBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkifTtRRT12b2lkIDA7Xy5nRj12b2lkIDA7Xy5SRT13aW5kb3cuaW5uZXJXaWR0aDtTRT13aW5kb3cuaW5uZXJIZWlnaHQ7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsKCk9PntfLmdGPVFFPXZvaWQgMH0pO3ZhciB0Y2E9IkludGVyc2VjdGlvbk9ic2VydmVyImluIHdpbmRvdz9uZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoKGEsYik9PnthLmZpbHRlcihjPT5jLmludGVyc2VjdGlvblJlY3QuaGVpZ2h0PjApLmZvckVhY2goKHt0YXJnZXQ6Y30pPT57Yy5KbT8uKCk7Yi51bm9ic2VydmUoYyl9KX0se3Jvb3RNYXJnaW46IjEwJSIsdGhyZXNob2xkOi4wMX0pOl8uVEUoKT97b2JzZXJ2ZShhKXtfLmpmLkdhKCgpPT57dHJ5e2EuSm0/LigpfWNhdGNoKGIpe18uT3QoYil9fSw4KX0sdW5vYnNlcnZlKCl7fX06bmV3IF8uZkYoLjEsYT0+e18uamYuR2EoKCk9Pnt0cnl7YS5KbT8uKCl9Y2F0Y2goYil7Xy5PdChiKX19LDgpfSk7dmFyIFZFPW5ldyBXZWFrTWFwLFdFPTAsVUU9MDtfLmhGPV8uTChhPT57dmFyIGI9ITEsYz1fLnVFKCJpbWciLGQ9PntfLll1KCgpPT57Yj0hMDtkLm9ubG9hZD1udWxsfSl9KTtfLm5FKCgpPT57dmFyIGQ9YS5kYXRhPy4oKSxlPWEuR2w/LigpLlNnLGY9YS5jb25maWcoKSxoPWMudmFsdWU7aWYoaCl7dmFyIGs9KGwsbSk9PntpZighYilyZXR1cm4gZT9lKGwsbSk6bH07Xy54KCJ3ZWJfaW1hZ2VfZG9udF9yZWxvYWRfc2FtZV9zcmMiKSYmeWNhKGgsZCxrKT9fLngoIndlYl9pbWFnZV9kb250X3JlbG9hZF9zYW1lX3NyY19zaW11bGF0ZV9sb2FkIikmJmguZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoImxvYWQiLHtidWJibGVzOiExLGNhbmNlbGFibGU6ITEsZGV0YWlsOnttZXNzYWdlOiJTaW11bGF0aW5nIGxvYWQgZXZlbnQgZm9yIGFscmVhZHkgbG9hZGVkIGltYWdlIn19KSk6eGNhKGgsZHx8bnVsbCxrLGYsYS5sYXp5Py4oKSl9fSwiUmZFZ0JjIik7cmV0dXJuIF8uSygiaW1nIix7ZWw6YyxjbGFzczooKT0+YS5jb25maWcoKS5jbGFzc05hbWUsCmFsdDooKT0+YS5jb25maWcoKS5hbHQsImFyaWEtaGlkZGVuIjooKT0+YS5jb25maWcoKS5hcmlhSGlkZGVuLCJkYXRhLWRpc2FibGVkIjooKT0+YS5jb25maWcoKS5oYyxzdHlsZTooKT0+YS5jb25maWcoKS5zdHlsZSx3aWR0aDooKT0+YS5jb25maWcoKS53aWR0aCxoZWlnaHQ6KCk9PmEuY29uZmlnKCkuaGVpZ2h0LGRyYWdnYWJsZTooKT0+YS5jb25maWcoKS5kcmFnZ2FibGUsIm9uOmVycm9yIjpkPT5hLmNvbmZpZygpLm9uRXJyb3I/LihkKSwib246bG9hZCI6ZD0+YS5jb25maWcoKS5vbkxvYWQ/LihkKX0pfSwibCIpO18uaEYuaWRvbUNvbXBhdD0hMDt2YXIgaUY7Xy5qRj1fLkwoYT0+e3ZhciBbYixjXT1fLkooITEsdm9pZCAwLCJURmFFS2QiKSxkPSgpPT57dmFyIGY9YS5kYXRhKCk7cmV0dXJuIEtFKGYpP3suLi5mfTpMRShmKT8/e319LGU9KCk9PiFkKCkuc291cmNlcz8ubGVuZ3RofHxiKCk7cmV0dXJuIF8uSyhfLk8se0E6KCk9PntpZighXy54KCJ3ZWJfbGluZWFyX2dyYWRpZW50X2tpbGxzd2l0Y2giKSlyZXR1cm4gTkUoZCgpKS5ueXx8TkUoZCgpKS5Oen0sdGhlbjpmPT5fLksoImRpdiIse2NsYXNzOl8uUCgieXRDb3JlSW1hZ2VIb3N0IiwieXRDb3JlSW1hZ2VHcmFkaWVudENvbnRhaW5lciIse3l0Q29yZUltYWdlTG9hZGVkOmV9KX0sXy5LKCJkaXYiLHtjbGFzczoieXRDb3JlSW1hZ2VHcmFkaWVudCIsImFyaWEtaGlkZGVuIjoidHJ1ZSIsc3R5bGU6Xy5JRSh7YmFja2dyb3VuZDpmfSl9KSxfLksoaUYsey4uLmEsb25Mb2FkOmg9PntjKCEwKTthLm9uTG9hZD8uKGgpfX0pKSxXOigpPT5fLksoaUYsey4uLmF9KX0pfSwibSIpOwppRj1fLkwoYT0+e3ZhciBiPSgpPT5BY2EoYS5kYXRhKCkse2NvbnRlbnRNb2RlOmEuY29udGVudE1vZGU/LigpLHRqOmEudGo/LigpLGlzUHJlbG9hZGVkOmEuaXNQcmVsb2FkZWQ/LigpLHNnOmEuc2c/LigpLEJtOmEuQm0/LigpLHlyOmEueXI/LigpLFlhOmEuWWE/LigpLFRhOmEuVGE/LigpLG9iamVjdFBvc2l0aW9uOmEub2JqZWN0UG9zaXRpb24/LigpLEFiOmEuQWI/LigpLGRjOmEuZGM/LigpLFdyOmEuV3I/LigpLE5nOmEuTmc/LigpLGlzVG9nZ2xlZDphLmlzVG9nZ2xlZD8uKCksYWx0OmEuYWx0Py4oKSxjbGFzc05hbWU6YS5jbGFzc05hbWU/LigpLG9uRXJyb3I6YS5vbkVycm9yLG9uTG9hZDphLm9uTG9hZCxzdHlsZTphLnN0eWxlPy4oKSxjb2xvcjphLmNvbG9yPy4oKSx3aWR0aDphLndpZHRoPy4oKSxoZWlnaHQ6YS5oZWlnaHQ/LigpLGFyaWFIaWRkZW46YS5hcmlhSGlkZGVuPy4oKSxkcmFnZ2FibGU6YS5kcmFnZ2FibGU/LigpLGhjOmEuaGM/LigpLHNpemU6YS5zaXplPy4oKSwKaW1hZ2VDbGFzc2lmaWNhdGlvblR5cGU6YS5pbWFnZUNsYXNzaWZpY2F0aW9uVHlwZT8uKCl9LGEuVXc/LigpKTtyZXR1cm4gXy5LKF8uRUUsbnVsbCxfLksoXy5DRSx7d2hlbjooKT0+YigpPy50eXBlPT09ImltYWdlIn0sKCk9Pl8uSyhfLmhGLHtkYXRhOigpPT5iKCkuaW1hZ2UsR2w6e1NnOihjLGQpPT57dmFyIGU9YigpLmltYWdlLnNvdXJjZXM7dmFyIGY9YigpLmNvbmZpZy5pc1ByZWxvYWRlZCxoPWIoKS5jb25maWcuTmcsaz1iKCkuY29uZmlnLkFiLGw9YigpLmNvbmZpZy5kYyxtPWIoKS5jb25maWcueXI7aWYoIWV8fGUubGVuZ3RoPT09MHx8ZVswXS5jbGllbnRSZXNvdXJjZSllPW51bGw7ZWxzZSBpZihmJiZlWzBdLnVybCllPWVbMF0udXJsO2Vsc2V7aD09PXZvaWQgMCYmKGg9ITApO2Q9aD9fLm1FKihrfHxkPy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKT8ud2lkdGh8fDApOl8ubUUqKGx8fGQ/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpPy5oZWlnaHR8fDApO2I6aWYoZCl7aWYobSlmb3IobGV0IG4gb2YgZSlpZihmPQpuLnVybD8uaW5kZXhPZihtKSxmIT09dm9pZCAwJiZmPj0wKXtlPW47YnJlYWsgYn1mb3IobGV0IG4gb2YgZSlpZihuLndpZHRoJiZuLmhlaWdodCYmKGgmJm4ud2lkdGg+PWR8fCFoJiZuLmhlaWdodD49ZCkpe2U9bjticmVhayBifWZvcihtPWUubGVuZ3RoLTE7bT49MDttLS0paWYoaCYmZVttXS53aWR0aHx8IWgmJmVbbV0uaGVpZ2h0KXtlPWVbbV07YnJlYWsgYn1lPWVbMF19ZWxzZSBlPWUubGVuZ3RoPj0xP2VbZS5sZW5ndGgtMV06bnVsbDtlPWU/LnVybD9lLnVybDplPy5pbWFnZURhdGE/ZS5pbWFnZURhdGE6bnVsbH1yZXR1cm4gZXx8IiJ9fSxjb25maWc6KCk9Pnt2YXIgYz1iKCkuY29uZmlnO2ZvcihsZXQgZCBpbiBjKWNbZF09PT12b2lkIDAmJmRlbGV0ZSBjW2RdO3JldHVybiBjfSxsYXp5OmEuVGJ9KSksXy5LKF8uQ0Use3doZW46KCk9PmIoKT8udHlwZT09PSJpY29uIn0sKCk9Pl8uSyhfLk1ELHtpY29uOigpPT5iKCkuaWNvbk5hbWUscm9sZTooKT0+YigpLmNvbmZpZy5yb2xlLApjbGFzc05hbWU6KCk9PmIoKS5jb25maWcuY2xhc3NOYW1lLHN0eWxlOigpPT5iKCkuY29uZmlnLnN0eWxlLGFyaWFMYWJlbDooKT0+YigpLmNvbmZpZy5hcmlhTGFiZWwsYXJpYUhpZGRlbjooKT0+YigpLmNvbmZpZy5hcmlhSGlkZGVuLGhjOigpPT5iKCkuY29uZmlnLmhjLGFjdGl2ZTooKT0+YigpLmNvbmZpZy5pc1RvZ2dsZWQsc2l6ZTooKT0+YigpLmNvbmZpZy5zaXplfSkpKX0sIm4iKTtfLmpGLmlkb21Db21wYXQ9e2NhbGxiYWNrczp7Y2FsbGJhY2s6ITAsb25FcnJvcjohMCxvbkxvYWQ6ITB9fTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5OSj1uZXcgXy5JKCJzaWduYWxBY3Rpb24iKTtfLk9KPWNsYXNze2NvbnN0cnVjdG9yKGEsYj0hMSxjPW51bGwpe3RoaXMuYWN0aW9uTmFtZT1hO3RoaXMuaj1iO3RoaXMuYXJncz1jO3RoaXMucmV0dXJuVmFsdWU9W119fTtfLlBKPW5ldyBNYXA7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uaEU9bmV3IF8uSSgibGF5b3V0UHJvcGVydGllcyIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmtGPW5ldyBfLlZzKCJEQVJLX1RIRU1FX1RPS0VOIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8ubEY9bmV3IF8uVnMoIkFQUF9ESVJFQ1RJT05fVE9LRU4iKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy51Rj1mdW5jdGlvbihhLGIpe3ZhciBjPWI/LmluaXRpYWw7cmV0dXJuIF8uTigoKT0+e18uQnYoITApO3JldHVybiBjPWEoYyl9LHtlcXVhbHM6Yj8uaXNFcXVhbH0sInJTbEtzYyIpfTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIEVjYSxGY2EsdkYsR2NhLHlGLEJGLENGLEpjYSxMY2EsREYsRUYsTmNhLEhGLE9jYSxRY2EsSUYsUmNhLEpGLFNjYSxLRixMRixUY2EsTUYsVWNhLE5GLFZjYSxXY2EsSWNhLEhjYTsKRWNhPWZ1bmN0aW9uKGEpe3ZhciBiPXtzdGF0ZToiTk9ORSJ9LGM9e1JoOmQ9Pntzd2l0Y2goZC5DYi50b2tlbil7Y2FzZSBfLlBiYS5DYi50b2tlbjp2YXIgZT1iO2JyZWFrO2Nhc2UgXy5PYmEuQ2IudG9rZW46ZT1hLldIO2JyZWFrO2Nhc2UgXy5MQy5DYi50b2tlbjplPWEucm9vdEVsZW1lbnQ7YnJlYWs7Y2FzZSBfLkxiYS5DYi50b2tlbjplPWEuWUo7YnJlYWs7Y2FzZSBfLk1CLkNiLnRva2VuOmU9YS5GbzticmVhaztjYXNlIF8uTWJhLkNiLnRva2VuOmU9YS5yZW5kZXJlckRhdGE7YnJlYWs7Y2FzZSBfLk5iYS5DYi50b2tlbjplPWEub0o7YnJlYWs7Y2FzZSBfLk5CLkNiLnRva2VuOmU9YS5ydn1pZihlKWQ9ZTtlbHNlIGE6e2ZvcihlPWMucGFyZW50O2U7KXt2YXIgZj1lO2lmKGYuUmgpe2Q9Zi5SaChkKTticmVhayBhfWU9ZS5wYXJlbnR9ZT1kLkNiLnRva2VuO2Y9Xy5XQy5nZXQoZSk7ZiE9PXZvaWQgMD9kPWY6KGY9ZC5DYi5NeixkLkNiLktwPyhkPWQuQ2IuS3AoKSxlJiZmPT09CiJyb290IiYmXy5XQy5zZXQoZSxkKSk6ZD1fLmF1KX1yZXR1cm4gZH19O18uQnUoYyk7cmV0dXJuIGN9O0ZjYT1mdW5jdGlvbihhLGIpe3JldHVybiBhPT09Yn07dkY9ZnVuY3Rpb24oYSxiKXtpZihhPT09YilhPSEwO2Vsc2UgaWYoQXJyYXkuaXNBcnJheShhKSYmQXJyYXkuaXNBcnJheShiKSlhOmlmKF8ueWEoYSkmJl8ueWEoYikmJmEubGVuZ3RoPT1iLmxlbmd0aCl7dmFyIGM9YS5sZW5ndGgsZD12Rnx8RmNhO2ZvcihsZXQgZT0wO2U8YztlKyspaWYoIWQoYVtlXSxiW2VdKSl7YT0hMTticmVhayBhfWE9ITB9ZWxzZSBhPSExO2Vsc2UgaWYoXy5BYShhKSYmXy5BYShiKSlhOmlmKF8uRngoYSkubGVuZ3RoIT1fLkZ4KGIpLmxlbmd0aClhPSExO2Vsc2V7Zm9yKGMgaW4gYSlpZighdkYoYVtjXSxiW2NdKSl7YT0hMTticmVhayBhfWE9ITB9ZWxzZSBhPSExO3JldHVybiBhfTtfLndGPWZ1bmN0aW9uKGEsYixjKXtjPT09dm9pZCAwP2RlbGV0ZSBhW2IubmFtZV06YVtiLm5hbWVdPWN9OwpHY2E9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9ITE7YVtfLnFGXT9Qcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT57dGhyb3cgXy5VdShFcnJvcigiSGIiKSwyLGEudGFnTmFtZSk7fSk6Xy5adCYmZCE9PV8uWEM/UHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+e3Rocm93IF8uVXUoRXJyb3IoIkViIiksMixhLnRhZ05hbWUpO30pOihhLnRleHRDb250ZW50IT09IiImJmEudGV4dENvbnRlbnQhPT1udWxsfHxhLmNoaWxkRWxlbWVudENvdW50PjApJiZQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT57dGhyb3cgXy5VdShFcnJvcigiRmIiKSwyLGEudGFnTmFtZSk7fSk7dmFyIGY9Xy5SdSgoKT0+e3ZhciBoPV8ua3UoXy56diksaz0oKT0+e3ZhciBsPShfLk9CLnN2Pz9fLnZkKGEpKS5fX3dpemRpc3BhdGNoZXI7bD1FY2Eoe3Jvb3RFbGVtZW50Ont2YWx1ZTphfSxGbzpjfHxsPy5udz8uKCkscnY6bH0pO2w9Xy4kdChsKTt2YXIgbT1fLkxCKCEwKTtfLmd2Kys7dHJ5e18uYkMoYigpLGEpLApfLklBKCExKX1jYXRjaChuKXt0aHJvdyBfLklBKCEwKSxuO31maW5hbGx5e18uTEIobSksXy4kdChsKX19O3RyeXtyZXR1cm4gZD09PV8uWEM/Xy51dihrLCExKTpfLml3KGspfWNhdGNoKGwpe3Rocm93IF8uVXUobCw0KSxsO31maW5hbGx5e18ua3UoaCl9fSk7YVtfLnFGXT0hMDtyZXR1cm4oKT0+e2U/UHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+e3Rocm93IF8uVXUoRXJyb3IoIkdiIiksMixhLnRhZ05hbWUpO30pOihhLnRleHRDb250ZW50PSIiLGYoKSxlPSEwLGFbXy5xRl09ITEpfX07Xy54Rj1mdW5jdGlvbihhLGIsYyl7Yz8/KGM9e30pO3ZhciBkPWMuRm8sZT0hIV8uS3UuSnE7Yj1HY2EoYSxiLGQsYy5Jayk7ZSYmXy5QQihhLGQpO18uVkIubG9nKGEpO3JldHVybiBifTsKXy5BRj1mdW5jdGlvbihhKXt2YXIgYj17YW5kcm9pZEluY2x1ZGVGb250UGFkZGluZzohMX0sYz0wLGQ9W10sZT1bXSxmPVtdO2lmKGEuc2ltcGxlVGV4dClyZXR1cm4gYi5jb250ZW50PWEuc2ltcGxlVGV4dCxiO2lmKGEucnVucz09PXZvaWQgMClyZXR1cm4gYi5jb250ZW50PSIiLGI7Zm9yKGxldCBtIG9mIGEucnVucyl7dmFyIGg9bS50ZXh0O2E9aD8ubGVuZ3RoO2lmKGgmJmEpe2QucHVzaChoKTtpZihtLmJvbGR8fG0uaXRhbGljc3x8bS5zdHJpa2V0aHJvdWdofHxtLnVuZGVybGluZXx8bS50ZXh0Q29sb3IhPW51bGwmJm0udGV4dENvbG9yIT09MHx8bS5kZWVtcGhhc2l6ZSl7aD1lO3ZhciBrPWgucHVzaCxsPXtzdGFydEluZGV4OmMsbGVuZ3RoOmF9O20uYm9sZCYmKGwud2VpZ2h0TGFiZWw9IkZPTlRfV0VJR0hUX01FRElVTSIpO20uaXRhbGljcyYmKGwuaXRhbGljPSEwKTttLnN0cmlrZXRocm91Z2gmJihsLnN0cmlrZXRocm91Z2g9IkxJTkVfU1RZTEVfU0lOR0xFIik7bS51bmRlcmxpbmUmJgoobC51bmRlcmxpbmU9IkxJTkVfU1RZTEVfU0lOR0xFIik7bS50ZXh0Q29sb3IhPW51bGwmJm0udGV4dENvbG9yIT09MD9sLmZvbnRDb2xvcj1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuaGFzQXR0cmlidXRlKCJkYXJrIik/bS5kYXJrTW9kZVRleHRDb2xvcnx8bS50ZXh0Q29sb3I6bS50ZXh0Q29sb3I6bS5kZWVtcGhhc2l6ZSYmKGwuZm9udENvbG9yPWRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5oYXNBdHRyaWJ1dGUoImRhcmsiKT95RigiI2FhYSIpOnlGKCIjNjA2MDYwIikpO2suY2FsbChoLGwpfW0ubmF2aWdhdGlvbkVuZHBvaW50JiYoaD1mLGs9aC5wdXNoLGw9e3N0YXJ0SW5kZXg6YyxsZW5ndGg6YSxvblRhcDp7aW5uZXJ0dWJlQ29tbWFuZDptLm5hdmlnYXRpb25FbmRwb2ludH19LG0ubG9nZ2luZ0RpcmVjdGl2ZXMmJl8ud0YobCx6RixtLmxvZ2dpbmdEaXJlY3RpdmVzKSxrLmNhbGwoaCxsKSk7Yys9YX19Yi5jb250ZW50PWQuam9pbigiIik7Yi5zdHlsZVJ1bnM9ZS5sZW5ndGg/CmU6dm9pZCAwO2IuY29tbWFuZFJ1bnM9Zi5sZW5ndGg/Zjp2b2lkIDA7cmV0dXJuIGJ9O3lGPWZ1bmN0aW9uKGEpe3ZhciBiPXBhcnNlSW50O2lmKCFIY2EudGVzdChhKSl0aHJvdyBFcnJvcigiUGNgIithKTthLmxlbmd0aD09NCYmKGE9YS5yZXBsYWNlKEljYSwiIyQxJDEkMiQyJDMkMyIpKTtyZXR1cm4gYigiZmYiK2EudG9Mb3dlckNhc2UoKS5zdWJzdHJpbmcoMSksMTYpfTtCRj1mdW5jdGlvbihhKXtpZihhKXJldHVybiBPYmplY3QuZW50cmllcyhhKS5maWx0ZXIoKFssYl0pPT5iIT09dm9pZCAwJiZiIT09bnVsbCYmYiE9PSIiKS5tYXAoKFtiLGNdKT0+YCR7Yi5yZXBsYWNlKC8oW2EtekEtWl0pKD89W0EtWl0pL2csIiQxLSIpLnRvTG93ZXJDYXNlKCl9OiAke2N9O2ApLmpvaW4oIiIpfHx2b2lkIDB9OwpDRj1mdW5jdGlvbihhKXtpZighYT8udmFsdWV8fCFhPy51bml0KXJldHVybiIiO3N3aXRjaChhLnVuaXQpe2Nhc2UgIkRJTUVOU0lPTl9VTklUX0ZSQUNUSU9OIjp2YXIgYj0iJSI7YnJlYWs7ZGVmYXVsdDpiPSJweCJ9YT1hLnZhbHVlO2I9PT0iJSImJihhKj0xMDApO3JldHVybmAke2F9JHtifWB9O0pjYT1mdW5jdGlvbihhLGIpe3ZhciBjPXsuLi5ifTtmb3IobGV0IFtkLGVdb2YgbmV3IE1hcChbWyJvbnRvdWNoc3RhcnQiLGEub250b3VjaHN0YXJ0XSxbIm9udG91Y2hlbmQiLGEub250b3VjaGVuZF0sWyJvbnRvdWNobW92ZSIsYS5vbnRvdWNobW92ZV1dKSl7bGV0IGY9ZCxoPWU7YltmXT1rPT57Y1tmXT8uKGspO2goayl9fX07CkxjYT1mdW5jdGlvbihhLGIpe3ZhciBjPVsieXRBdHRyaWJ1dGVkU3RyaW5nTGluayJdO2I/LnVifHwoYj8uaXNPdmVybGF5P2MucHVzaCgieXRBdHRyaWJ1dGVkU3RyaW5nTGlua092ZXJsYXlDYWxsVG9BY3Rpb25Db2xvciIpOmMucHVzaCgieXRBdHRyaWJ1dGVkU3RyaW5nTGlua0NhbGxUb0FjdGlvbkNvbG9yIiksYj8uWGEmJmMucHVzaCgieXRBdHRyaWJ1dGVkU3RyaW5nTGlua0luaGVyaXRDb2xvciIpKTtjPXtjbGFzc05hbWU6Yy5qb2luKCIgIiksdGFiaW5kZXg6IjAifTt2YXIgZD1hLm9uVGFwfHxhLm9uTG9uZ1ByZXNzO2lmKCFkKXJldHVybiBjO3ZhciBlPWEub25UYXBPcHRpb25zPy5hY2Nlc3NpYmlsaXR5SW5mbz8uYWNjZXNzaWJpbGl0eUxhYmVsO2UmJihjLmFyaWFMYWJlbD1lKTtiPV8uYkUoe2JoOmQsdXg6YyxJZDohIWI/LklkLHFkOiEwfSk7YS5vbkxvbmdQcmVzcyYmKGQ9bmV3IEtjYSgoKT0+e3ZhciBmPV8uUkQoYS5vbkxvbmdQcmVzcyk7ZiYmXy55KCkucmVzb2x2ZShfLlVEKS5yZXNvbHZlQ29tbWFuZChmKX0pLApiJiZKY2EoZCxiKSk7cmV0dXJuIGJ8fGN9O0RGPWZ1bmN0aW9uKGEpe3ZhciBiPWE7YTw9MTY3NzcyMTUmJihiKz1wYXJzZUludCgiZmYwMDAwMDAiLDE2KSk7cmV0dXJuIF8uTkQoYil9O0VGPWZ1bmN0aW9uKHtpc0RhcmtUaGVtZTphLGV4dGVuc2lvbjpiLE9yOmN9KXt2YXIgZD12b2lkIDA7aWYoYj1iPy5jb2xvck1hcCl7YT1hPyJVU0VSX0lOVEVSRkFDRV9USEVNRV9EQVJLIjoiVVNFUl9JTlRFUkZBQ0VfVEhFTUVfTElHSFQiO2ZvcihsZXQgZSBvZiBiKWlmKGE9PT1lLmtleSl7ZD1lLnZhbHVlO2JyZWFrfX1kPT1udWxsJiZjJiYoZD1jKTtpZihkKXJldHVybiBERihkKX07Ck5jYT1mdW5jdGlvbihhLGI9ITEpe3ZhciBjPXt9O2lmKGEudGV4dERlY29yYXRvcil7dmFyIGQ9YS50ZXh0RGVjb3JhdG9yO3ZhciBlPXt9O3ZhciBmPV8uQihkLF8uRkYpLGg9Xy5CKGQsR0YpO2lmKGYpe2Q9T2JqZWN0O2g9ZC5hc3NpZ247bGV0IGs9e307KGI9RUYoe2V4dGVuc2lvbjpfLkIoZi5oaWdobGlnaHRUZXh0RGVjb3JhdG9yRXh0ZW5zaW9ucyxNY2EpLGlzRGFya1RoZW1lOmIsT3I6Zi5iYWNrZ3JvdW5kQ29sb3J9KSkmJihrWyJiYWNrZ3JvdW5kLWNvbG9yIl09Yik7Zi5iYWNrZ3JvdW5kQ29ybmVyUmFkaXVzIT09dm9pZCAwJiYoa1siYm9yZGVyLXJhZGl1cyJdPWAke2YuYmFja2dyb3VuZENvcm5lclJhZGl1c31weGApO2YubGVmdFBhZGRpbmchPT12b2lkIDAmJihrWyJwYWRkaW5nLWxlZnQiXT1gJHtmLmxlZnRQYWRkaW5nfXB4YCk7Zi5yaWdodFBhZGRpbmchPT12b2lkIDAmJihrWyJwYWRkaW5nLXJpZ2h0Il09YCR7Zi5yaWdodFBhZGRpbmd9cHhgKTtmLnRvcFBhZGRpbmchPT0Kdm9pZCAwJiYoa1sicGFkZGluZy10b3AiXT1gJHtmLnRvcFBhZGRpbmd9cHhgKTtmLmJvdHRvbVBhZGRpbmchPT12b2lkIDAmJihrWyJwYWRkaW5nLWJvdHRvbSJdPWAke2YuYm90dG9tUGFkZGluZ31weGApO2guY2FsbChkLGUsayl9ZWxzZSBoJiYoZj1PYmplY3QsZD1mLmFzc2lnbixiPWI/IiMyYmE2NDAiOiIjMTA3NTE2IixiPWguY29sb3I/REYoaC5jb2xvcik6YixkLmNhbGwoZixlLHtwYWRkaW5nOiIycHgiLCJib3JkZXItdG9wIjpgc29saWQgJHtifSAycHhgLCJib3JkZXItYm90dG9tIjpgc29saWQgJHtifSAycHhgLGJhY2tncm91bmQ6YGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICR7Yn0gM3B4LCByZ2JhKDAsIDAsIDAsIDApIDNweCksIGxpbmVhci1ncmFkaWVudCgzMTVkZWcsICR7Yn0gM3B4LCByZ2JhKDAsIDAsIDAsIDApIDNweClgfSkpO2U9T2JqZWN0LmtleXMoZSkubGVuZ3RoIT09MD9lOnZvaWQgMDtjLnN0eWxlPWU7YT1hLnRleHREZWNvcmF0b3I7ZT1bXTtiPV8uQihhLApHRik7Xy5CKGEsXy5GRik/ZS5wdXNoKCJ5dEF0dHJpYnV0ZWRTdHJpbmdIaWdobGlnaHRUZXh0RGVjb3JhdG9yIik6YiYmZS5wdXNoKCJ5dEF0dHJpYnV0ZWRTdHJpbmdCcmFja2V0VGV4dERlY29yYXRvciIpO2E9ZS5qb2luKCIgIik7Yy5jbGFzc05hbWU9YTtjLmRpcj0iYXV0byJ9cmV0dXJuIGN9O0hGPWZ1bmN0aW9uKHtjb25maWc6YSxpbWFnZTpiLGdqOmMsT2w6ZCxydW46ZSx0YWc6Zix0ZXh0TGVuZ3RoOmgsc3RhcnRJbmRleDprPTAsbGVuZ3RoOmx9KXtrPT09dm9pZCAwJiYoaz0wKTtlPXtydW46ZSxzdGFydEluZGV4Omssd2w6bCE9PXZvaWQgMD9rK2w6aCx0YWc6Zn07YiYmKGUuaW1hZ2U9Yik7YyYmKGUuZ2o9Yyk7ZCYmKGUuT2w9ZCk7YSYmKGUuY29uZmlnPWEpO3JldHVybiBlfTsKT2NhPWZ1bmN0aW9uKGEsYil7aWYoYS53ZWlnaHQpcmV0dXJuIGEud2VpZ2h0O3N3aXRjaChhLndlaWdodExhYmVsKXtjYXNlICJGT05UX1dFSUdIVF9USElOIjpyZXR1cm4gMTAwO2Nhc2UgIkZPTlRfV0VJR0hUX0VYVFJBX0xJR0hUIjpyZXR1cm4gMjAwO2Nhc2UgIkZPTlRfV0VJR0hUX0xJR0hUIjpyZXR1cm4gMzAwO2Nhc2UgIkZPTlRfV0VJR0hUX01FRElVTSI6cmV0dXJuIDUwMDtjYXNlICJGT05UX1dFSUdIVF9TRU1JX0JPTEQiOnJldHVybiA2MDA7Y2FzZSAiRk9OVF9XRUlHSFRfQk9MRCI6cmV0dXJuIGI/OTAwOjcwMDtjYXNlICJGT05UX1dFSUdIVF9FWFRSQV9CT0xEIjpyZXR1cm4gODAwO2Nhc2UgIkZPTlRfV0VJR0hUX0JMQUNLIjpyZXR1cm4gOTAwO2RlZmF1bHQ6cmV0dXJuIDQwMH19OwpRY2E9ZnVuY3Rpb24oYSxiPSExLGMpe2I9RUYoe2V4dGVuc2lvbjpfLkIoYS5zdHlsZVJ1bkV4dGVuc2lvbnMsUGNhKSxpc0RhcmtUaGVtZTpiLE9yOmEuZm9udENvbG9yfSk7dmFyIGQ9W107YiYmZC5wdXNoKCJ5dEF0dHJpYnV0ZWRTdHJpbmdMaW5rSW5oZXJpdENvbG9yIik7YS5pdGFsaWMmJmQucHVzaCgieXRBdHRyaWJ1dGVkU3RyaW5nSXRhbGljaXplZCIpO2EudW5kZXJsaW5lJiZhLnN0cmlrZXRocm91Z2g/ZC5wdXNoKCJ5dEF0dHJpYnV0ZWRTdHJpbmdVbmRlcmxpbmVTdHJpa2V0aHJvdWdoIixJRihhLnVuZGVybGluZSkpOmEudW5kZXJsaW5lP2QucHVzaCgieXRBdHRyaWJ1dGVkU3RyaW5nVW5kZXJsaW5lZCIsSUYoYS51bmRlcmxpbmUpKTphLnN0cmlrZXRocm91Z2gmJmQucHVzaCgieXRBdHRyaWJ1dGVkU3RyaW5nU3RyaWtldGhyb3VnaCIsSUYoYS5zdHJpa2V0aHJvdWdoKSk7aWYoYS5iYXNlbGluZU9mZnNldCl7YTpzd2l0Y2goYS5iYXNlbGluZU9mZnNldCl7Y2FzZSAiQkFTRUxJTkVfT0ZGU0VUX1NVQlNDUklQVCI6dmFyIGU9CiJ5dEF0dHJpYnV0ZWRTdHJpbmdCYXNlbGluZU9mZnNldFN1YnNjcmlwdCI7YnJlYWsgYTtjYXNlICJCQVNFTElORV9PRkZTRVRfU1VQRVJTQ1JJUFQiOmU9Inl0QXR0cmlidXRlZFN0cmluZ0Jhc2VsaW5lT2Zmc2V0U3VwZXJzY3JpcHQiO2JyZWFrIGE7ZGVmYXVsdDplPSJ5dEF0dHJpYnV0ZWRTdHJpbmdCYXNlbGluZU9mZnNldFVua25vd24ifWQucHVzaChlKX1kPWQuam9pbigiICIpO2U9e307aWYoYS53ZWlnaHR8fGEud2VpZ2h0TGFiZWwpZS5mb250V2VpZ2h0PU9jYShhLGM/LnFoKS50b1N0cmluZygpO2ImJihlLmNvbG9yPWIpO3JldHVybntjbGFzc05hbWU6ZCxzdHlsZTplfX07SUY9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgIkxJTkVfU1RZTEVfRE9UIjpyZXR1cm4ieXRBdHRyaWJ1dGVkU3RyaW5nTGluZVN0eWxlRG90IjtjYXNlICJMSU5FX1NUWUxFX05PTkUiOnJldHVybiJ5dEF0dHJpYnV0ZWRTdHJpbmdMaW5lU3R5bGVOb25lIjtkZWZhdWx0OnJldHVybiJ5dEF0dHJpYnV0ZWRTdHJpbmdMaW5lU3R5bGVTaW5nbGUifX07ClJjYT1mdW5jdGlvbihhKXtzd2l0Y2goYSl7Y2FzZSAiVEVYVF9BTElHTk1FTlRfTEVGVCI6cmV0dXJuInl0QXR0cmlidXRlZFN0cmluZ1RleHRBbGlnbm1lbnRMZWZ0IjtjYXNlICJURVhUX0FMSUdOTUVOVF9SSUdIVCI6cmV0dXJuInl0QXR0cmlidXRlZFN0cmluZ1RleHRBbGlnbm1lbnRSaWdodCI7Y2FzZSAiVEVYVF9BTElHTk1FTlRfQ0VOVEVSIjpyZXR1cm4ieXRBdHRyaWJ1dGVkU3RyaW5nVGV4dEFsaWdubWVudENlbnRlciI7Y2FzZSAiVEVYVF9BTElHTk1FTlRfSlVTVElGSUVEIjpyZXR1cm4ieXRBdHRyaWJ1dGVkU3RyaW5nVGV4dEFsaWdubWVudEp1c3RpZmllZCI7Y2FzZSAiVEVYVF9BTElHTk1FTlRfTEFZT1VUX1NUQVJUIjpyZXR1cm4ieXRBdHRyaWJ1dGVkU3RyaW5nVGV4dEFsaWdubWVudExheW91dFN0YXJ0IjtkZWZhdWx0OnJldHVybiJ5dEF0dHJpYnV0ZWRTdHJpbmdUZXh0QWxpZ25tZW50VW5rbm93biJ9fTsKSkY9ZnVuY3Rpb24oYSxiKXtyZXR1cm4hIWJ8fCEoYS5jb21tYW5kUnVucyYmYS5jb21tYW5kUnVucy5sZW5ndGghPT0wfHxhLnBhcmFncmFwaFN0eWxlUnVucyYmYS5wYXJhZ3JhcGhTdHlsZVJ1bnMubGVuZ3RoIT09MCl9O1NjYT1mdW5jdGlvbihhKXtyZXR1cm4gYj0+e3ZhciBjPWEucnVuOyhjLm9uVGFwIT09dm9pZCAwfHxjLm9uTG9uZ1ByZXNzIT09dm9pZCAwKSYmXy5CKGMsekYpJiZfLkp4KGIse2RhdGE6e2xvZ2dpbmdEaXJlY3RpdmVzOl8uQihjLHpGKX0sb2JzZXJ2ZXI6Xy55KCkucmVzb2x2ZShfLkx4KSxOYzpfLm5GLGViOl8ubUYsbGF5ZXI6Yi5sYXllcn0pfX07S0Y9ZnVuY3Rpb24oYSxiLGMsZCl7Zm9yKGxldCBlIG9mIGEubGMpe2lmKHR5cGVvZiBlPT09InN0cmluZyIpdGhyb3cgRXJyb3IoIlljIik7aWYoZS5zdGFydDw9YiYmYzw9ZS5lbmQpe0tGKGUsYixjLGQpO3JldHVybn19YS5sYy5wdXNoKHtkYXRhOmQsbGM6W10sc3RhcnQ6YixlbmQ6Y30pfTsKTEY9ZnVuY3Rpb24oYSxiKXtmb3IobGV0IGQ9Yi5sYy5sZW5ndGg7ZD49MDtkLS0pe2xldCBlPWIubGNbZF07dmFyIGM9Yi5sY1tkLTFdO2xldCBmPWQ9PT1iLmxjLmxlbmd0aD9iLmVuZDplLnN0YXJ0O2M9ZD09PTA/Yi5zdGFydDpjLmVuZDtmIT09YyYmYi5sYy5zcGxpY2UoZCwwLGEuc2xpY2UoYyxmKSk7ZSYmTEYoYSxlKX19O1RjYT1mdW5jdGlvbihhKXthLnNvcnQoKGIsYyk9PntpZihiLnN0YXJ0SW5kZXg8Yy5zdGFydEluZGV4KXJldHVybi0xO2lmKGMuc3RhcnRJbmRleDxiLnN0YXJ0SW5kZXgpcmV0dXJuIDE7Yj1iLndsLWIuc3RhcnRJbmRleDtjPWMud2wtYy5zdGFydEluZGV4O3JldHVybiBiPmM/LTE6Yz5iPzE6MH0pfTsKTUY9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYT09PWI/ITA6YT09PXZvaWQgMHx8Yj09PXZvaWQgMD8hMTpfLngoIndlYl9hdHRyaWJ1dGVkX3N0cmluZ19kZWVwX2VxdWFsX2J1Z2ZpeCIpP3ZGKGEsYik6YS5jb250ZW50PT09Yi5jb250ZW50JiZhLnN0eWxlUnVucz8ubGVuZ3RoPT09Yi5zdHlsZVJ1bnM/Lmxlbmd0aCYmYS5jb21tYW5kUnVucz8ubGVuZ3RoPT09Yi5jb21tYW5kUnVucz8ubGVuZ3RoJiZhLmF0dGFjaG1lbnRSdW5zPy5sZW5ndGg9PT1iLmF0dGFjaG1lbnRSdW5zPy5sZW5ndGgmJmEuZGVjb3JhdGlvblJ1bnM/Lmxlbmd0aD09PWIuZGVjb3JhdGlvblJ1bnM/Lmxlbmd0aH07VWNhPWZ1bmN0aW9uKHtsYzphfSl7cmV0dXJuIGEubWFwKE5GKX07Ck5GPWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBhPT09InN0cmluZyIpcmV0dXJuIGE7dmFyIGI9YS5kYXRhO2IuaW1hZ2UhPT12b2lkIDAmJmIuZ2ohPT12b2lkIDA/KGI9YS5kYXRhLk9sLGE9Xy5LKCJzcGFuIix7Y2xhc3M6Yj8uY2xhc3NOYW1lLHN0eWxlOkJGKGI/LnN0eWxlKSxkaXI6Yj8uZGlyLHJvbGU6Yj8ucm9sZSx0YWJpbmRleDpiPy50YWJpbmRleCE9PXZvaWQgMD9OdW1iZXIoYi50YWJpbmRleCk6dm9pZCAwLCJmb3JjZS1uZXctc3RhdGUiOmI/LnFkLCJvbjpjbGljayI6Yj8ub25jbGljaywib246dG91Y2hlbmQiOmI/Lm9udG91Y2hlbmQsIm9uOnRvdWNobW92ZSI6Yj8ub250b3VjaG1vdmUsIm9uOnRvdWNoc3RhcnQiOmI/Lm9udG91Y2hzdGFydH0sXy5LKF8uakYse2RhdGE6YS5kYXRhLmltYWdlLC4uLmEuZGF0YS5nan0pKSk6KGI9YS5kYXRhLmNvbmZpZyxhPV8uSyhhLmRhdGEudGFnLHtlbDpfLnJGKFNjYShhLmRhdGEpKSwicHJvcDpfZGF0YSI6Yj8ubnUsInByb3A6cGFyYW1zIjpiPy5wYXJhbXMsCmNsYXNzOmI/LmNsYXNzTmFtZSxzdHlsZTpCRihiPy5zdHlsZSksZGlyOmI/LmRpcixocmVmOmI/LmhyZWYscmVsOmI/LnJlbCxyb2xlOmI/LnJvbGUsdGFyZ2V0OmI/LnRhcmdldCx0aXRsZTpiPy50aXRsZSx0YWJpbmRleDpiPy50YWJpbmRleCE9PXZvaWQgMD9OdW1iZXIoYi50YWJpbmRleCk6dm9pZCAwLCJhcmlhLWhhc3BvcHVwIjpiPy5hcmlhSGFzUG9wdXAsImZvcmNlLW5ldy1zdGF0ZSI6Yj8ucWQsImFyaWEtaGlkZGVuIjpiPy5hcmlhSGlkZGVuLCJhcmlhLWV4cGFuZGVkIjpiPy5hcmlhRXhwYW5kZWQsImFyaWEtbGFiZWwiOmI/LmFyaWFMYWJlbCwib246Y2xpY2siOmI/Lm9uY2xpY2ssIm9uOnRvdWNoZW5kIjpiPy5vbnRvdWNoZW5kLCJvbjp0b3VjaG1vdmUiOmI/Lm9udG91Y2htb3ZlLCJvbjp0b3VjaHN0YXJ0IjpiPy5vbnRvdWNoc3RhcnQsIm9uOnBvaW50ZXJkb3duIjpiPy5vbnBvaW50ZXJkb3duLCJvbjprZXlkb3duIjpiPy5vbmtleWRvd259LGEubGMubWFwKE5GKSkpOwpyZXR1cm4gXy5mQyhhKX07VmNhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGE9PT1iPyEwOmE9PT12b2lkIDB8fGI9PT12b2lkIDA/ITE6YS5Daj09PWIuQ2omJmEudWI9PT1iLnViJiZhLm1hPT09Yi5tYSYmYS5oZWFkZXJSdW5zPT09Yi5oZWFkZXJSdW5zJiZhLmlzT3ZlcmxheT09PWIuaXNPdmVybGF5JiZhLlhhPT09Yi5YYSYmYS51c2VySW5wdXQ9PT1iLnVzZXJJbnB1dCYmYS5xaD09PWIucWh9O1djYT1mdW5jdGlvbihhKXtyZXR1cm4oKT0+KHthcmlhTGFiZWw6YS5hcmlhTGFiZWw/LigpLGNsYXNzTmFtZTphLmNsYXNzTmFtZT8uKCkseWM6YS55Yz8uKCksaXNPdmVybGF5OmEuaXNPdmVybGF5Py4oKSxYYTphLlhhPy4oKSxtYTphLm1hPy4oKSxDajphLkNqPy4oKSx1YjphLnViPy4oKSxyZzphLnJnPy4oKSxub1dyYXA6YS5ub1dyYXA/LigpLElkOmEuSWQ/LigpLHVzZXJJbnB1dDphLnVzZXJJbnB1dD8uKCksaGVhZGVyUnVuczphLmhlYWRlclJ1bnM/LigpLHFoOmEucWg/LigpfSl9OwpJY2E9LyMoLikoLikoLikvO0hjYT0vXiMoPzpbMC05YS1mXXszfSl7MSwyfSQvaTtfLlhjYT1uZXcgXy5JKCJlbW9qaSIpO3ZhciB6Rj1uZXcgXy5JKCJsb2dnaW5nRGlyZWN0aXZlcyIpO18uWWNhPW5ldyBfLkkoInVucGx1Z2dlZFN0cmluZ1J1bkltYWdlIik7dmFyIE1jYT1uZXcgXy5JKCJoaWdobGlnaHRUZXh0RGVjb3JhdG9yQ29sb3JNYXBFeHRlbnNpb24iKTt2YXIgUGNhPW5ldyBfLkkoInN0eWxlUnVuQ29sb3JNYXBFeHRlbnNpb24iKTt2YXIgWmNhPW5ldyBfLkkoImFjY2Vzc2liaWxpdHlQcm9wZXJ0aWVzIik7dmFyIEdGPW5ldyBfLkkoImJyYWNrZXRUZXh0RGVjb3JhdG9yIik7Xy5GRj1uZXcgXy5JKCJoaWdobGlnaHRUZXh0RGVjb3JhdG9yIik7dmFyICRjYT1uZXcgXy5JKCJpbWFnZVR5cGUiKTt2YXIgYWRhPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5EPTUwMDt0aGlzLmo9TmFOO3RoaXMudj10aGlzLm89ITE7dGhpcy5CPWE9Pnt2YXIgYj1uZXcgQ3VzdG9tRXZlbnQoIkxPTkdfUFJFU1MiKTthLmNoYW5nZWRUb3VjaGVzWzBdLnRhcmdldD8uZGlzcGF0Y2hFdmVudChiKX07dGhpcy5vbnRvdWNoc3RhcnQ9YT0+e3RoaXMuaj1fLnF4KF8uamYsKCk9Pnt0aGlzLkIoYSk7dGhpcy5vPSEwfSx0aGlzLkQpfTt0aGlzLm9udG91Y2htb3ZlPSgpPT57Xy5qZi5BYSh0aGlzLmopO3RoaXMuaj1OYU47dGhpcy5vPSExO3RoaXMudj0hMH07dGhpcy5vbnRvdWNoZW5kPWE9Pnt0aGlzLmomJiF0aGlzLm8mJiF0aGlzLnYmJmEuY2hhbmdlZFRvdWNoZXNbMF0udGFyZ2V0Py5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgiY2xpY2siKSk7Xy5qZi5BYSh0aGlzLmopO3RoaXMuaj1OYU47dGhpcy52PXRoaXMubz0hMX19fTt2YXIgS2NhPWNsYXNzIGV4dGVuZHMgYWRhe2NvbnN0cnVjdG9yKGEpe3N1cGVyKCk7dGhpcy5jYWxsYmFjaz1hO3RoaXMuQj1iPT57dGhpcy5jYWxsYmFjaz8uKGIpfX19O3ZhciBiZGE7YmRhPV8ueCgiYWxsb3dfbmVzdGVkX3JlbmRlcl9rcyIpP3ZvaWQgMDp7SWs6Xy5YQ307Cl8uVj1fLkwoYT0+e3ZhciBiPVdjYShhKSxjPWU9Pnt2YXIgZixoLGs9Xy5yRihwPT57Zj1lKCk7aD1fLnV2KCgpPT57Zm9yKHZhciByIG9mIG0oKSl7bGV0IHQ9TkYocik7dD10eXBlb2YgdD09PSJzdHJpbmciP2RvY3VtZW50LmNyZWF0ZVRleHROb2RlKHQpOnQ7aWYoISh0IGluc3RhbmNlb2YgTm9kZSkpe3I9bmV3IF8uWGooIlBhcnQgaXMgbm90IGEgbm9kZSIsdCx0eXBlb2YgdCk7Xy5HcChyKTticmVha31wLmFwcGVuZENoaWxkKHQpfX0pfSksbD1fLnVGKGIse2lzRXF1YWw6VmNhfSksbT0oKT0+e3ZhciBwPWUoKSxyPWwoKSx0PVtdLHY9cC5jb250ZW50Lmxlbmd0aCx6PV8ueSgpLnJlc29sdmUoXy5JbihfLmtGKSk/LigpO2lmKHAucGFyYWdyYXBoU3R5bGVSdW5zKWZvcihsZXQgTSBvZiBwLnBhcmFncmFwaFN0eWxlUnVucyl7dmFyIEU9dCxBPUUucHVzaDthOntpZighTS5saXN0R3JvdXA/Lmxpc3RJdGVtcyl7dmFyIEY9W107YnJlYWsgYX1GPVtdO2I6c3dpdGNoKE0ubGlzdEdyb3VwLmxpc3RUeXBlKXtjYXNlICJMSVNUX1RZUEVfQlVMTEVUIjp2YXIgQz0KInVsIjticmVhayBiO2RlZmF1bHQ6Qz0ic3BhbiJ9Ri5wdXNoKEhGKHtydW46TSx0ZXh0TGVuZ3RoOnYsdGFnOkMsY29uZmlnOntjbGFzc05hbWU6Inl0QXR0cmlidXRlZFN0cmluZ0xpc3RHcm91cCJ9LHN0YXJ0SW5kZXg6TS5zdGFydEluZGV4LGxlbmd0aDpNLmxlbmd0aH0pKTtmb3IobGV0IFMgb2YgTS5saXN0R3JvdXAubGlzdEl0ZW1zKXtiOnN3aXRjaChNLmxpc3RHcm91cC5saXN0VHlwZSl7Y2FzZSAiTElTVF9UWVBFX0JVTExFVCI6Qz0ibGkiO2JyZWFrIGI7ZGVmYXVsdDpDPSJzcGFuIn1GLnB1c2goSEYoe3J1bjpNLHRleHRMZW5ndGg6dix0YWc6QyxzdGFydEluZGV4OlMuc3RhcnRJbmRleCxsZW5ndGg6Uy5sZW5ndGh9KSl9fUEuY2FsbChFLC4uLkYpfWlmKHAuc3R5bGVSdW5zJiYhcj8uQ2opZm9yKHZhciBHIG9mIHAuc3R5bGVSdW5zKUU9UWNhKEcseixyKSx0LnB1c2goSEYoe3J1bjpHLHRleHRMZW5ndGg6dix0YWc6InNwYW4iLGNvbmZpZzpFLHN0YXJ0SW5kZXg6Ry5zdGFydEluZGV4LApsZW5ndGg6Ry5sZW5ndGh9KSk7aWYocC5kZWNvcmF0aW9uUnVucylmb3IodmFyIEQgb2YgcC5kZWNvcmF0aW9uUnVucylHPU5jYShELHopLEU9Xy5CKEQudGV4dERlY29yYXRvcixHRiksQT1fLkIoRC50ZXh0RGVjb3JhdG9yLEdGKSx0LnB1c2goSEYoe3J1bjpELHRleHRMZW5ndGg6dix0YWc6InNwYW4iLGNvbmZpZzpHLHN0YXJ0SW5kZXg6Xy5CKEQudGV4dERlY29yYXRvcixfLkZGKT8uc3RhcnRJbmRleHx8RT8uc3RhcnRJbmRleHx8MCxsZW5ndGg6Xy5CKEQudGV4dERlY29yYXRvcixfLkZGKT8ubGVuZ3RofHxBPy5sZW5ndGh8fDB9KSk7aWYocC5jb21tYW5kUnVucyYmIXI/Lm1hKWZvcih2YXIgSCBvZiBwLmNvbW1hbmRSdW5zKXo9TGNhKEgsciksdC5wdXNoKEhGKHtydW46SCx0ZXh0TGVuZ3RoOnYsdGFnOiJhIixjb25maWc6eixzdGFydEluZGV4Okguc3RhcnRJbmRleCxsZW5ndGg6SC5sZW5ndGh9KSk7aWYocC5hdHRhY2htZW50UnVucylmb3IobGV0IE0gb2YgcC5hdHRhY2htZW50UnVucyl7cD0Ke2NsYXNzTmFtZToieXRBdHRyaWJ1dGVkU3RyaW5nSW5saW5lQmxvY2tNb2QifTtNLmVsZW1lbnQ/LnByb3BlcnRpZXMmJihIPXt9LHo9Xy5CKE0uZWxlbWVudD8ucHJvcGVydGllcyxfLmhFKSx6Py5tYXJnaW4mJih6PXoubWFyZ2luLEQ9KEc9Xy53KCJIVE1MX0RJUiIpPT09InJ0bCJ8fGRvY3VtZW50LmJvZHkuZ2V0QXR0cmlidXRlKCJkaXIiKT09PSJydGwiKT96LmVuZHx8ei5yaWdodDp6LnN0YXJ0fHx6LmxlZnQsRz1HP3ouc3RhcnR8fHoubGVmdDp6LmVuZHx8ei5yaWdodCxEJiYoSFsibWFyZ2luLWxlZnQiXT1DRihEKSksRyYmKEhbIm1hcmdpbi1yaWdodCJdPUNGKEcpKSx6LnRvcCYmKEhbIm1hcmdpbi10b3AiXT1DRih6LnRvcCkpLHouYm90dG9tJiYoSFsibWFyZ2luLWJvdHRvbSJdPUNGKHouYm90dG9tKSkpLEg9T2JqZWN0LmtleXMoSCkubGVuZ3RoIT09MD9IOnZvaWQgMCxwLnN0eWxlPUgpO0g9e2FsdDoiIixZYTohMCxUYTohMH07ej1bInl0QXR0cmlidXRlZFN0cmluZ0ltYWdlRWxlbWVudCJdOwppZihNLmFsaWdubWVudCl7YTpzd2l0Y2goTS5hbGlnbm1lbnQpe2Nhc2UgIkFMSUdOTUVOVF9CQVNFTElORSI6RD0ieXRBdHRyaWJ1dGVkU3RyaW5nSW1hZ2VBbGlnbm1lbnRCYXNlbGluZSI7YnJlYWsgYTtjYXNlICJBTElHTk1FTlRfVkVSVElDQUxfQ0VOVEVSIjpEPSJ5dEF0dHJpYnV0ZWRTdHJpbmdJbWFnZUFsaWdubWVudFZlcnRpY2FsQ2VudGVyIjticmVhayBhO2RlZmF1bHQ6RD0ieXRBdHRyaWJ1dGVkU3RyaW5nSW1hZ2VBbGlnbm1lbnRCb3R0b20ifXoucHVzaChEKX1NLmVsZW1lbnQ/LnByb3BlcnRpZXMmJihEPXt9LEc9Xy5CKE0uZWxlbWVudC5wcm9wZXJ0aWVzLF8uaEUpLEc/LmhlaWdodCYmKEQuaGVpZ2h0PUNGKEcuaGVpZ2h0KSksRz8ud2lkdGgmJihELndpZHRoPUNGKEcud2lkdGgpKSxEPU9iamVjdC5rZXlzKEQpLmxlbmd0aCE9PTA/RDp2b2lkIDAsSC5zdHlsZT1CRihEKSxILmFsdD1fLkIoTS5lbGVtZW50LnByb3BlcnRpZXMsWmNhKT8ubGFiZWx8fCIiKTtILmNsYXNzTmFtZT0Kei5qb2luKCIgIik7ej1NLmVsZW1lbnQ/LnR5cGU/Xy5CKE0uZWxlbWVudC50eXBlLCRjYSk/LmltYWdlOnZvaWQgMDt0LnB1c2goSEYoe3J1bjpNLHRleHRMZW5ndGg6dix0YWc6ImltZyIsaW1hZ2U6eixnajpILE9sOnAsc3RhcnRJbmRleDpNLnN0YXJ0SW5kZXgsbGVuZ3RoOk0ubGVuZ3RoPz8wfSkpfWlmKHI/LmhlYWRlclJ1bnMpZm9yKHZhciBSIG9mIHIuaGVhZGVyUnVucylpZihSLmhlYWRlck1hcHBpbmcmJlsiQVRUUklCVVRFRF9TVFJJTkdfSEVBREVSX01BUFBJTkdfSEVBRElOR18xIiwiQVRUUklCVVRFRF9TVFJJTkdfSEVBREVSX01BUFBJTkdfSEVBRElOR18yIiwiQVRUUklCVVRFRF9TVFJJTkdfSEVBREVSX01BUFBJTkdfSEVBRElOR18zIl0uaW5jbHVkZXMoUi5oZWFkZXJNYXBwaW5nKSl7YTp7c3dpdGNoKFIuaGVhZGVyTWFwcGluZyl7Y2FzZSAiQVRUUklCVVRFRF9TVFJJTkdfSEVBREVSX01BUFBJTkdfSEVBRElOR18xIjpyPSJ5dEF0dHJpYnV0ZWRTdHJpbmdIZWFkaW5nMSI7CmJyZWFrIGE7Y2FzZSAiQVRUUklCVVRFRF9TVFJJTkdfSEVBREVSX01BUFBJTkdfSEVBRElOR18yIjpyPSJ5dEF0dHJpYnV0ZWRTdHJpbmdIZWFkaW5nMiI7YnJlYWsgYTtjYXNlICJBVFRSSUJVVEVEX1NUUklOR19IRUFERVJfTUFQUElOR19IRUFESU5HXzMiOnI9Inl0QXR0cmlidXRlZFN0cmluZ0hlYWRpbmczIjticmVhayBhfXI9dm9pZCAwfXQucHVzaChIRih7cnVuOlIsdGV4dExlbmd0aDp2LHRhZzoic3BhbiIsY29uZmlnOnI/e2NsYXNzTmFtZTpyfTp2b2lkIDAsc3RhcnRJbmRleDpSLnN0YXJ0SW5kZXgsbGVuZ3RoOlIubGVuZ3RofSkpfWlmKGwoKT8udXNlcklucHV0KWZvcihsZXQgTSBvZiB0KXtpZihNLnRhZz09PSJhInx8TS50YWc9PT0ibGkiKWNvbnRpbnVlO2xldCBTOyhTPU0pLmNvbmZpZ3x8KFMuY29uZmlnPXt9KTtNLnRhZz09PSJ1bCI/TS5jb25maWcuZGlyPV8ueSgpLnJlc29sdmUoXy5sRik6TS5jb25maWcuZGlyPSJhdXRvIn1pZihlKCkuY29udGVudCl7dj1lKCkuY29udGVudDsKVGNhKHQpO1I9e2RhdGE6bnVsbCxzdGFydDowLGVuZDp2Lmxlbmd0aCxsYzpbXX07Zm9yKGxldCBNIG9mIHQpS0YoUixNLnN0YXJ0SW5kZXgsTS53bCxNKTtMRih2LFIpO3Q9Ui5sY31lbHNlIHQ9W107cmV0dXJuIHR9LG49ITA7Xy5uRSgoKT0+e2UoKTtsKCk7aWYobiYmKG49ITEsTUYoZSgpLGYpKSlyZXR1cm47dmFyIHA9bSgpO1Byb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9Pnt2YXIgcj1rLnZhbHVlO3ImJihyLmlubmVyVGV4dD0iIixoPy4oKSxoPV8ueEYociwoKT0+Xy5LKFVjYSx7bGM6cH0pLGJkYSkpfSl9LCJ2Mlowb2UiKTtyZXR1cm4gXy5LKCJzcGFuIix7ZWw6ayxjbGFzczooKT0+e3ZhciBwO2lmKHA9ZSgpKXtwPWUoKTt2YXIgcj1iKCk7bGV0IHQ9W107dC5wdXNoKCJ5dEF0dHJpYnV0ZWRTdHJpbmdIb3N0Iik7cj8uY2xhc3NOYW1lJiZ0LnB1c2gocj8uY2xhc3NOYW1lKTtyPy55Yz90LnB1c2goInl0QXR0cmlidXRlZFN0cmluZ0VsbGlwc2lzVHJ1bmNhdGUiKTpyPy5ub1dyYXA/CnQucHVzaCgieXRBdHRyaWJ1dGVkU3RyaW5nV2hpdGVTcGFjZU5vV3JhcCIpOnI/LnJnfHx0LnB1c2goInl0QXR0cmlidXRlZFN0cmluZ1doaXRlU3BhY2VQcmVXcmFwIik7cj8uWGEmJnQucHVzaCgieXRBdHRyaWJ1dGVkU3RyaW5nTGlua0luaGVyaXRDb2xvciIpO3AuYWxpZ25tZW50JiZ0LnB1c2goUmNhKHAuYWxpZ25tZW50KSk7cC5saW5lQnJlYWtNb2RlJiZ0LnB1c2goInl0QXR0cmlidXRlZFN0cmluZ1dvcmRXcmFwcGluZyIpO3A9dC5qb2luKCIgIil9cmV0dXJuIHB9LHN0eWxlOmEuc3R5bGUsZGlyOigpPT5iKCkudXNlcklucHV0PyJhdXRvIjp2b2lkIDAsImFyaWEtbGFiZWwiOigpPT5KRihlKCksYigpLmFyaWFMYWJlbCk/YigpLmFyaWFMYWJlbDp2b2lkIDAscm9sZTooKT0+SkYoZSgpLGIoKS5hcmlhTGFiZWwpPyJ0ZXh0Ijp2b2lkIDB9KX0sZD1fLnVGKCgpPT57dmFyIGU9YS50ZXh0Py4oKTtpZihlKXJldHVybiBlPWU/LmNvbnRlbnQhPT12b2lkIDA/ZTpfLkFGKGUpLAplPy5jb250ZW50P2U6dm9pZCAwfSx7aXNFcXVhbDpNRn0pO3JldHVybiBhLll1P2MoZCk6Xy5LKF8uTyx7QTpkLHRoZW46Y30pfSwicSIpO18uVi5pZG9tQ29tcGF0PSEwOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgUUo7UUo9ZnVuY3Rpb24oYSxiKXtpZighYSlyZXR1cm4gbnVsbDthPU9iamVjdC5rZXlzKGEpO2ZvcihsZXQgYyBvZiBhKWlmKGE9Yy50b0xvd2VyQ2FzZSgpLGEuaW5kZXhPZihiLGEubGVuZ3RoLWIubGVuZ3RoKT4tMSlyZXR1cm4gYztyZXR1cm4gbnVsbH07Xy5SSj1mdW5jdGlvbihhKXt2YXIgYj1RSihhLCJhY3Rpb24iKXx8UUooYSwiY29tbWFuZCIpfHxRSihhLCJlbmRwb2ludCIpO2lmKCFiKXJldHVybiBudWxsO3t2YXIgYz0ieXQiK2I7bGV0IGQ9Xy5QSi5nZXQoYyk7ZD9jPWQ6KGI9YHl0LSR7Yi5yZXBsYWNlKC8oW0EtWl0pL2csIi0kMSIpLnRvTG93ZXJDYXNlKCl9YCxfLlBKLnNldChjLGIpLGM9Yil9Xy5CKGEsXy5OSikmJihjKz0iLSIrXy5CKGEsXy5OSikuc2lnbmFsLnRvTG93ZXJDYXNlKCkucmVwbGFjZSgvXy9nLCItIikpO3JldHVybiBjfTtfLlNKPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5qPW5ldyBNYXB9fTtfLndhKF8uU0opOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgRmRhLEdkYSxDSCxIZGEsREgsRUgsRkgsSWRhO0ZkYT1mdW5jdGlvbihhLGI9MCxjPS0xKXtpZighYS50b3RhbExlbmd0aHx8IWMpcmV0dXJuIG5ldyBEYXRhVmlldyhuZXcgQXJyYXlCdWZmZXIoMCkpO2M8MCYmKGM9YS50b3RhbExlbmd0aC1iKTthLmZvY3VzKGIpO2lmKCEoYi1hLnYrYzw9YS5qW2Eub10ubGVuZ3RoKSl7dmFyIGQ9YS5vLGU9YS52O2EuZm9jdXMoYitjLTEpO2U9bmV3IFVpbnQ4QXJyYXkoYS52K2EualthLm9dLmxlbmd0aC1lKTtsZXQgZj0wO2ZvcihsZXQgaD1kO2g8PWEubztoKyspZS5zZXQoYS5qW2hdLGYpLGYrPWEualtoXS5sZW5ndGg7YS5qLnNwbGljZShkLGEuby1kKzEsZSk7YS5vPTA7YS52PTA7YS5mb2N1cyhiKX1kPWEualthLm9dO3JldHVybiBuZXcgRGF0YVZpZXcoZC5idWZmZXIsZC5ieXRlT2Zmc2V0K2ItYS52LGMpfTsKR2RhPWZ1bmN0aW9uKGEsYj0wLGM9LTEpe2E9RmRhKGEsYixjKTtyZXR1cm4gbmV3IFVpbnQ4QXJyYXkoYS5idWZmZXIsYS5ieXRlT2Zmc2V0LGEuYnl0ZUxlbmd0aCl9O0NIPWZ1bmN0aW9uKGEsYil7YS5mb2N1cyhiKTtyZXR1cm4gYS5qW2Eub11bYi1hLnZdfTsKSGRhPWZ1bmN0aW9uKGEpe2lmKCFhLmxlbmd0aClyZXR1cm4iIjt0cnl7aWYoXy5zQSlyZXR1cm4gXy5zQS5kZWNvZGUoYSk7aWYodHlwZW9mIEZldGNoSW50ZXJuYWwhPT0idW5kZWZpbmVkIilyZXR1cm4gRmV0Y2hJbnRlcm5hbC5kZWNvZGVGcm9tVVRGOChhKX1jYXRjaHt9Zm9yKHZhciBiPTAsYz1bXSxkPWEubGVuZ3RoO2I8ZDspe2xldCBmPTA7Zm9yKDtmPDEwMjQmJmI8ZDspe3ZhciBlPWFbYisrXTtpZihlPDEyOCl7Xy5yQVtmKytdPWU7Y29udGludWV9aWYoZTwyMjQpZT0oZSYzMSk8PDZ8YVtiKytdJjYzO2Vsc2UgaWYoZTwyNDApZT0oZSYxNSk8PDEyfChhW2IrK10mNjMpPDw2fGFbYisrXSY2MztlbHNle2lmKGYrMT09PTEwMjQpey0tYjticmVha31lPShlJjcpPDwxOHwoYVtiKytdJjYzKTw8MTJ8KGFbYisrXSY2Myk8PDZ8YVtiKytdJjYzO2UtPTY1NTM2O18uckFbZisrXT01NTI5NnxlPj4xMDtlPTU2MzIwfGUmMTAyM31fLnJBW2YrK109ZX1lPVN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkoU3RyaW5nLApfLnJBKTtmPDEwMjQmJihlPWUuc3Vic3RyaW5nKDAsZikpO2MucHVzaChlKX1yZXR1cm4gYy5qb2luKCIiKX07REg9ZnVuY3Rpb24oYSl7dmFyIGI9Q0goYS5qLGEucG9zKTsrK2EucG9zO2lmKGI8MTI4KXJldHVybiBiO2Zvcih2YXIgYz1iJjEyNyxkPTE7Yj49MTI4OyliPUNIKGEuaixhLnBvcyksKythLnBvcyxkKj0xMjgsYys9KGImMTI3KSpkO3JldHVybiBjfTtFSD1mdW5jdGlvbihhLGIpe3ZhciBjPWEubztmb3IoYS5vPS0xO2EucG9zKzE8PWEuai50b3RhbExlbmd0aDspe2M8MCYmKGM9REgoYSkpO3ZhciBkPWM+PjM7bGV0IGU9YyY3O2lmKGQ9PT1iKXJldHVybiEwO2lmKGQ+Yil7YS5vPWM7YnJlYWt9Yz0tMTtzd2l0Y2goZSl7Y2FzZSAwOkRIKGEpO2JyZWFrO2Nhc2UgMTphLnBvcys9ODticmVhaztjYXNlIDI6ZD1ESChhKTthLnBvcys9ZDticmVhaztjYXNlIDU6YS5wb3MrPTR9fXJldHVybiExfTsKXy5HSD1mdW5jdGlvbihhKXthPW5ldyBJZGEobmV3IEZIKFtfLnVjKGRlY29kZVVSSUNvbXBvbmVudChhKSldKSk7aWYoRUgoYSwyKSl7dmFyIGI9REgoYSk7dmFyIGM9R2RhKGEuaixhLnBvcyxiKTthLnBvcys9YjtiPWN9ZWxzZSBiPXZvaWQgMDtiPWI/SGRhKGIpOnZvaWQgMDthPUVIKGEsNCk/REgoYSk6dm9pZCAwO2M9Xy52QVthXTtpZih0eXBlb2YgYz09PSJ1bmRlZmluZWQiKXRocm93IGE9bmV3IF8uWGooIkZhaWxlZCB0byByZWNvZ25pemUgZmllbGQgbnVtYmVyIix7bmFtZToiRW50aXR5S2V5SGVscGVyRXJyb3IiLFdJOmF9KSxfLkdwKGEpLGE7cmV0dXJue1JJOmEsZW50aXR5VHlwZTpjLGVudGl0eUlkOmJ9fTtfLkhIPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8ucUEoYS5lbnRpdGllcywicGxheWVyU3RhdGVFbnRpdHkiLGIpfTtfLklIPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8ucUEoYS5lbnRpdGllcywiYm9vbGVhbkVudGl0eSIsYil9OwpGSD1jbGFzc3tjb25zdHJ1Y3RvcihhPVtdKXt0aGlzLmo9W107dGhpcy50b3RhbExlbmd0aD10aGlzLnY9dGhpcy5vPTA7YS5mb3JFYWNoKGI9Pnt0aGlzLmFwcGVuZChiKX0pfWFwcGVuZChhKXt2YXIgYj10aGlzLmoubGVuZ3RoPT09MD8hMTooYj10aGlzLmpbdGhpcy5qLmxlbmd0aC0xXSkmJmIuYnVmZmVyPT09YS5idWZmZXImJmIuYnl0ZU9mZnNldCtiLmxlbmd0aD09PWEuYnl0ZU9mZnNldDtiPyhiPXRoaXMualt0aGlzLmoubGVuZ3RoLTFdLHRoaXMualt0aGlzLmoubGVuZ3RoLTFdPW5ldyBVaW50OEFycmF5KGIuYnVmZmVyLGIuYnl0ZU9mZnNldCxiLmxlbmd0aCthLmxlbmd0aCksdGhpcy52PXRoaXMubz0wKTp0aGlzLmoucHVzaChhKTt0aGlzLnRvdGFsTGVuZ3RoKz1hLmxlbmd0aH1zcGxpdChhKXt2YXIgYj1uZXcgRkgsYz1uZXcgRkg7Zm9yKGxldCBkIG9mIHRoaXMuailhPj1kLmxlbmd0aD8oYi5hcHBlbmQoZCksYS09ZC5sZW5ndGgpOmE/KGIuYXBwZW5kKG5ldyBVaW50OEFycmF5KGQuYnVmZmVyLApkLmJ5dGVPZmZzZXQsYSkpLGMuYXBwZW5kKG5ldyBVaW50OEFycmF5KGQuYnVmZmVyLGQuYnl0ZU9mZnNldCthLGQubGVuZ3RoLWEpKSxhPTApOmMuYXBwZW5kKGQpO3JldHVybntqSjpiLGJMOmN9fWlzRm9jdXNlZChhKXtyZXR1cm4gYT49dGhpcy52JiZhPHRoaXMudit0aGlzLmpbdGhpcy5vXS5sZW5ndGh9Zm9jdXMoYSl7aWYoIXRoaXMuaXNGb2N1c2VkKGEpKWZvcihhPHRoaXMudiYmKHRoaXMudj10aGlzLm89MCk7dGhpcy52K3RoaXMualt0aGlzLm9dLmxlbmd0aDw9YSYmdGhpcy5vPHRoaXMuai5sZW5ndGg7KXRoaXMudis9dGhpcy5qW3RoaXMub10ubGVuZ3RoLHRoaXMubys9MX19O0lkYT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLmo9YTt0aGlzLnBvcz0wO3RoaXMubz0tMX19Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgSmVhLGFLO0plYT1mdW5jdGlvbihhLGIpe3ZhciBjPVpKLGQ9Xy5qZi5HYSgoKT0+e2MuUyh7dGV4dDpiLnRleHQsbG9jYXRpb246JEosYW5jaG9yOmEsb2Zmc2V0OmIub2Zmc2V0LHN0eWxlOmIuc3R5bGUsaG90a2V5OmIuaG90a2V5fSk7Yy5vKCEwKX0sNCxiLmRlbGF5KTtjLmooZCl9O2FLPWZ1bmN0aW9uKCl7dmFyIGE9WkosYj1hLnYoKTtiJiYoXy5qZi5BYShiKSxhLmoodm9pZCAwKSk7YS5vKCExKX07Cl8uYks9ZnVuY3Rpb24oYSxiKXt2YXIgW2MsZF09Xy5BQygoKT0+YSgpPz9iPy4oKT8udGV4dCk7cmV0dXJuW2U9Pnt2YXIgZj1fLk4oKCk9Pih7bG9jYXRpb246ImJvdHRvbSIsb2Zmc2V0OjE2LGRlbGF5OjEsLi4uYj8uKCksdGV4dDpjKCk/PyIifSksdm9pZCAwLCJJSlUzOGQiKTtfLm5FKCgpPT57dmFyIGw9ZigpO18uRUEoKCk9PntfLmpmLkdhKCgpPT57Wkoubm90aWZ5KGUsbCl9LDQpfSl9LCJXbHNnWmMiKTt2YXIgaD0oKT0+e0plYShlLGYoKSl9LGs9KCk9PnthSygpfTtlLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZW50ZXIiLGgpO2UuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLGgpO2UuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsayk7ZS5hZGRFdmVudExpc3RlbmVyKCJibHVyIixrKTtlLmFkZEV2ZW50TGlzdGVuZXIoInRhcCIsayk7Xy5ZdSgoKT0+e2UucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2VlbnRlciIsaCk7ZS5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIiwKayk7ZS5yZW1vdmVFdmVudExpc3RlbmVyKCJmb2N1cyIsaCk7ZS5yZW1vdmVFdmVudExpc3RlbmVyKCJibHVyIixrKTtlLnJlbW92ZUV2ZW50TGlzdGVuZXIoInRhcCIsayk7YUsoKX0pfSxkXX07dmFyICRKPXtsZWZ0OiIwcHgiLHJpZ2h0OiJhdXRvIix0b3A6Ii0xMDBweCIsYm90dG9tOiJhdXRvIn07dmFyIFpKPW5ldyBjbGFzc3tjb25zdHJ1Y3Rvcigpe1t0aGlzLnN0YXRlLHRoaXMuU109Xy5KKHZvaWQgMCx2b2lkIDAsIkxma3hvZiIpO1t0aGlzLnNob3csdGhpcy5vXT1fLkooITEsdm9pZCAwLCJrMUZrb2UiKTtbdGhpcy52LHRoaXMual09Xy5KKHZvaWQgMCx2b2lkIDAsIlVsOE1JYyIpfW5vdGlmeShhLGIpe3RoaXMuc3RhdGUoKT8uYW5jaG9yPT09YSYmdGhpcy5TKHt0ZXh0OmIudGV4dCxsb2NhdGlvbjokSixhbmNob3I6YSxvZmZzZXQ6Yi5vZmZzZXQsc3R5bGU6Yi5zdHlsZSxob3RrZXk6Yi5ob3RrZXl9KX19Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLmNLPW5ldyBfLkkoInRvb2x0aXBWaWV3TW9kZWwiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5kSz1mdW5jdGlvbihhLGIpe18uYUUoYSx7Li4uYixQcDohMH0pfTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIFRiYTtUYmE9ZnVuY3Rpb24oYSxiKXt2YXIgW2MsZF09Xy5KKCExLHZvaWQgMCwibU55d3pjIiksZT0hMSxmLGg9az0+e2lmKGYpcmV0dXJuIF8uSyhmLHsuLi5rfSk7aWYoIWUpe2xldCBsPWEoKTtlPSEwO2lmKGwgaW5zdGFuY2VvZiBQcm9taXNlKXtsZXQgbT1fLmFEO20/LnN1KCk7bC50aGVuKG49PntmPW47ZCghMCk7bT8uSHIoKX0pLmNhdGNoKG49PnttPy5IcigpO2lmKGI/LmRlYnVnTmFtZSl7dmFyIHA9bmV3IF8uWGooImZhaWxlZCB0byBsb2FkIGNodW5rIixiLmRlYnVnTmFtZSxuPy50b1N0cmluZz8uKCkpO18uR3AocCl9ZWxzZSBfLkdwKG4pO3Rocm93IG47fSl9ZWxzZSByZXR1cm4gZj1sLF8uSyhmLHsuLi5rfSl9cmV0dXJuIF8uSyhfLk8se0E6Yyx0aGVuOigpPT5fLksoZix7Li4ua30pfSl9O18uYkQuc2V0KGgsYSk7cmV0dXJuIGh9O18uY0Q9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gVGJhKGEsYj97ZGVidWdOYW1lOmJ9OnZvaWQgMCl9O18uSkQ9bmV3IF8uVnMoIkNIVU5LX1JFR0lTVFJZX1RPS0VOIik7Xy5iRD1uZXcgV2Vha01hcDsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5lSz1uZXcgXy5WcygiTElHSFRfRUZGRUNUX1RPS0VOIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBLZWE7Xy5mSz1mdW5jdGlvbihhKXtpZihhKXt2YXIgYj0iIjtmb3IobGV0IGMgb2YgS2VhKWlmKGEuZW5kc1dpdGgoYykpe2I9YS5zbGljZSgwLC1jLmxlbmd0aCk7YnJlYWt9aWYoYiYmKGE9TnVtYmVyKGIpLCFpc05hTihhKSkpcmV0dXJuIGF9fTtLZWE9WyJyZW0iLCJweCIsIm1zIiwiJSIsInMiXTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIEtkYSxSSDtfLlFIPWZ1bmN0aW9uKGEpe3ZhciBiPV8uUEgoKTtyZXR1cm4gS2RhKGEsYil9O18uUEg9ZnVuY3Rpb24oKXt2YXIgYT1fLnkoKS5yZXNvbHZlKF8uSW4oUkgpKSxbYixjXT1fLkooYSx2b2lkIDAsInpMSVlSYyIpO2F8fF8uWXQoUkgsYyk7cmV0dXJuIGJ9O0tkYT1mdW5jdGlvbihhLGIpe3JldHVybiBfLk4oKCk9Pnt2YXIgYz1hKCk7cmV0dXJuIGM/YigpPy4oYyk6dm9pZCAwfSx2b2lkIDAsImVReGhtYiIpfTtSSD1uZXcgXy5WcygiU0VNQU5USUNfTEFZT1VUX1JFU09MVkVSX1RPS0VOIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uaUs9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJPdEtTSmUiKTtyZXR1cm4gXy5VQ307Xy5qSz1fLmNEKCgpPT5fLmlLKCksInRvdWNoRmVlZGJhY2tTaGFwZSIpO18uWXQoXy5KRCxhPT57YS5KKCJ0b3VjaEZlZWRiYWNrU2hhcGUiLCJPdEtTSmUiLF8uaUspfSk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBrSyxOZWEsbEssUGVhLG1LLFFlYSxSZWEsbksscEssVmVhLFdlYSxYZWEsWWVhO2tLPWZ1bmN0aW9uKGEpe3ZhciBiPVtdO2ZvcihsZXQgW2MsZF1vZiBhLmouZW50cmllcygpKWIucHVzaCh7ZWxlbWVudDpjLFB5OmR9KTthLnYoYil9O05lYT1mdW5jdGlvbihhLGIpe2Z1bmN0aW9uIGMoKXtkPTB9dmFyIGQ9MDtyZXR1cm4gZnVuY3Rpb24oZSl7ZHx8KGQ9Xy51LnNldFRpbWVvdXQoYyxiKSxhLmFwcGx5KHZvaWQgMCxhcmd1bWVudHMpKX19O2xLPWZ1bmN0aW9uKGEpe3JldHVybiFpc05hTihOdW1iZXIoYSkpJiYhL15bXHNceGEwXSokLy50ZXN0KGEpfTsKUGVhPWZ1bmN0aW9uKGEsYixjLGQsZSxmLGgpe2M9bmV3IEFuaW1hdGlvbihuZXcgS2V5ZnJhbWVFZmZlY3QoYSxbe3RyYW5zZm9ybToidHJhbnNsYXRlWSgwcHgpIn0se3RyYW5zZm9ybTpgdHJhbnNsYXRlWSgkeyhmP21LKGIsYyxkLGUpOmQ/LTE6MSkqaH1weClgfV0sT2VhKSxkb2N1bWVudC50aW1lbGluZSk7Yj8oYS5zdHlsZS5kaXNwbGF5PSIiLGMub25maW5pc2g9bnVsbCk6Yy5vbmZpbmlzaD0oKT0+e2Euc3R5bGUuZGlzcGxheT0ibm9uZSJ9O2MucGxheSgpO3JldHVybiBjfTttSz1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1OdW1iZXIoYSkrMTA7Yj9hPyhhPU51bWJlcihhKSxiPU51bWJlcihiKSxjPWM/YjxhP2U6ZSsxMDpiPGE/ZS0xMDplKTpjPWM/MzA6MDpjPWE9PT0iMCI/ZTpjP2UtMTA6ZSsxMDtyZXR1cm4gZC1jfTsKUWVhPWZ1bmN0aW9uKGEsYil7c3dpdGNoKGEpe2Nhc2UgIm1vbm8iOnN3aXRjaChiKXtjYXNlICJmaWxsZWQiOnJldHVybiAxO2Nhc2UgInRvbmFsIjpyZXR1cm4gMztjYXNlICJvdXRsaW5lIjpyZXR1cm4gNTtkZWZhdWx0OnJldHVybiAwfWNhc2UgIm1vbm8taW52ZXJzZSI6c3dpdGNoKGIpe2Nhc2UgImZpbGxlZCI6cmV0dXJuIDI7Y2FzZSAidG9uYWwiOnJldHVybiA0O2Nhc2UgIm91dGxpbmUiOnJldHVybiA2O2RlZmF1bHQ6cmV0dXJuIDB9ZGVmYXVsdDpyZXR1cm4gMH19OwpSZWE9ZnVuY3Rpb24oYSxiLGMsZCxlLGYsaCl7dmFyIHtkaXNhYmxlZDprLGljb25Qb3NpdGlvbjpsLHN0eWxlOm0sZm9jdXNlZDpuLHVzZU91dGxpbmVkSWNvbjpwLEFjOnJ9PW5LKGEpLHQ9KCk9PiEhQSgpJiZsKCk9PT0iaWNvbi1vbmx5Iix2PSgpPT4hIUEoKSYmbCgpPT09Imljb24tb25seS00MCIsej0oKT0+ISFBKCkmJmwoKT09PSJpY29uLXdpdGgtbGFiZWwiLEU9KCk9PihrKCk/ImRpc2FibGVkIjphKCkuc3RhdGUpPT09ImRpc2FibGVkInx8aygpLEE9KCk9PiEhYnx8ISFkPy4oKXx8ISFyPy4oKSxGPSgpPT5fLngoImFuaW1hdGVfaWNvbl9kaXNhYmxlZF9raWxsc3dpdGNoIik/aD8uKCk6aD8uKCkmJiFFKCksQz1fLlBIKCksRz0oKT0+Xy5vSyhhKCksITAsQyxhKCkuaWdub3JlSWNvblNpemVPdmVycmlkZSk7cmV0dXJue3R5cGU6KCk9Pm0oKT09PSJjYWxsLXRvLWFjdGlvbi1pbnZlcnNlIj8idGV4dCI6bSgpPT09Im92ZXJsYXktZGFyayImJmEoKS50eXBlIT09ImZpbGxlZCImJgphKCkudHlwZSE9PSJ0b25hbCI/InRvbmFsIjphKCkudHlwZSx0bjooKT0+KG4oKXx8Zj8uKCkpJiYhaygpLElsOigpPT4hIUEoKSYmbCgpPT09ImxlYWRpbmciLEtsOigpPT4hIUEoKSYmbCgpPT09InRyYWlsaW5nIixKbDooKT0+ISFBKCkmJiEoIWMmJiFlPy4oKSkmJmwoKT09PSJsZWFkaW5nLXRyYWlsaW5nIixFdzp0LEZ3OnYsR3c6eixpY29uQnV0dG9uOigpPT50KCl8fHYoKXx8eigpLGppOkUsdno6KCk9PiFhKCkuaWdub3JlSWNvblNpemVPdmVycmlkZSYmcEsoYSgpLEEoKSksbXg6Yj9iOigpPT5fLksoXy5FRSxudWxsLF8uSyhfLkNFLHt3aGVuOnJ9LCgpPT5fLksoImRpdiIse3N0eWxlOl8uSUUoe3dpZHRoOigpPT5gJHtHKCl9cHhgLGhlaWdodDooKT0+YCR7RygpfXB4YH0pLCJhcmlhLWhpZGRlbiI6InRydWUifSxfLksoXy5XLHtkYXRhOnJ9LHthbmltYXRlZEFzc2V0Vmlld01vZGVsOih7ZGF0YTpEfSk9Pl8uSyhfLnFLLHtkYXRhOkQsc246ITB9KX0pKSksXy5LKF8uREUsCm51bGwsKCk9Pl8uSyhfLk1ELHtpY29uOmQsWnA6KCk9PmEoKS5jdXN0b21Db2xvcnM/Lm1KLHNpemU6RyxhY3RpdmU6KCk9PmEoKS50b2dnbGVkJiYhcD8uKCksYWc6KCk9PnthKCl9LEdlOkZ9KSkpLGFBOmM/YzooKT0+Xy5LKF8uTUQse2ljb246ZSxzaXplOkcsYWN0aXZlOigpPT5hKCkudG9nZ2xlZCYmIXA/LigpLGFnOigpPT57YSgpfX0pfX07Cm5LPWZ1bmN0aW9uKGEpe3JldHVybntzaXplOigpPT5hKCkuc2l6ZSxzdHlsZTooKT0+YSgpLnN0eWxlLGZvY3VzZWQ6KCk9PmEoKS5mb2N1c2VkLGRpc2FibGVkOigpPT5hKCkuZGlzYWJsZWQsb25UYXA6Yj0+YSgpLm9uVGFwPy4oYiksb2k6KCk9PmEoKS5vaSx1YzooKT0+YSgpLnVjLGN1c3RvbUNvbG9yczooKT0+YSgpLmN1c3RvbUNvbG9ycyxzZWdtZW50ZWRQb3NpdGlvbjooKT0+YSgpLnNlZ21lbnRlZFBvc2l0aW9uLHRvZ2dsZWQ6KCk9PmEoKS50b2dnbGVkLHRvZ2dsZWFibGU6KCk9PmEoKS50b2dnbGVhYmxlLGFjY2Vzc2liaWxpdHlMYWJlbDooKT0+YSgpLmFjY2Vzc2liaWxpdHlMYWJlbCxIZTooKT0+YSgpLkhlLG9uVG9nZ2xlOmI9PmEoKS5vblRvZ2dsZT8uKGIpLGljb25Qb3NpdGlvbjooKT0+YSgpLmljb25Qb3NpdGlvbixvbmVPZmZDdXN0b21UZXh0V3JhcDooKT0+YSgpLm9uZU9mZkN1c3RvbVRleHRXcmFwLElmOigpPT5hKCkuSWYsQXA6KCk9PmEoKS5BcCx0b29sdGlwVGV4dDooKT0+CmEoKS50b29sdGlwVGV4dCxEbjooKT0+YSgpLkRuLGFyaWFIaWRkZW46KCk9PmEoKS5hcmlhSGlkZGVuLGFyaWFFeHBhbmRlZDooKT0+YSgpLmFyaWFFeHBhbmRlZCx0YWJJbmRleDooKT0+YSgpLnRhYkluZGV4LGJ1dHRvblRleHQ6KCk9PmEoKS5idXR0b25UZXh0LFdhOigpPT5hKCkuV2EsYWI6KCk9PmEoKS5hYixvbkNsaWNrUmF0ZUxpbWl0TXM6KCk9PmEoKS5vbkNsaWNrUmF0ZUxpbWl0TXMsb25Ib3ZlcjpiPT5hKCkub25Ib3Zlcj8uKGIpLG1pZGRsZWdyb3VuZEFzc2V0OigpPT5hKCkubWlkZGxlZ3JvdW5kQXNzZXQsQWM6KCk9PmEoKS5BYyxkaXNhYmxlTGlnaHRTaGFwZTooKT0+YSgpLmRpc2FibGVMaWdodFNoYXBlLHVzZU91dGxpbmVkSWNvbjooKT0+YSgpLnVzZU91dGxpbmVkSWNvbn19OwpwSz1mdW5jdGlvbihhLGIpe2I9KGEuaWNvblBvc2l0aW9uPT09Imljb24tb25seSJ8fGEuaWNvblBvc2l0aW9uPT09Imljb24tb25seS00MCJ8fGEuaWNvblBvc2l0aW9uPT09Imljb24td2l0aC1sYWJlbCIpJiZiO3JldHVybiFhLnNlZ21lbnRlZFBvc2l0aW9uJiZiJiZhLnNpemU9PT0iUyJ9OwpfLm9LPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWMoKTtpZihfLngoIndlYl9idXR0b25faWNvbl9zaXplX2V4cGVyaW1lbnQiKSl7YTp7Yz1fLmZLKGU/LihTZWEpKT8/MTI7dmFyIGY9Xy5mSyhlPy4oVGVhKSk/PzE4O2U9Xy5mSyhlPy4ockspKT8/MjQ7bGV0IGg9YS5pY29uUG9zaXRpb249PT0iaWNvbi1vbmx5IiYmIWEuc2VnbWVudGVkUG9zaXRpb258fGEuaWNvblBvc2l0aW9uPT09Imljb24tb25seS00MCJ8fGEuaWNvblBvc2l0aW9uPT09Imljb24td2l0aC1sYWJlbCI7c3dpdGNoKGEuc2l6ZSl7Y2FzZSAiWFMiOmE9YzticmVhayBhO2Nhc2UgIlMiOmE9IWQmJnBLKGEsYik/ZTpmO2JyZWFrIGE7Y2FzZSAiTSI6YT1oP2U6ZjticmVhayBhO2RlZmF1bHQ6YT1lfX1yZXR1cm4gYX1jPV8uZksoZT8uKFVlYSkpPz8xNjtmPV8uZksoZT8uKHJLKSk/PzI0O3N3aXRjaChhLnNpemUpe2Nhc2UgIlhTIjpyZXR1cm4gYztjYXNlICJTIjpyZXR1cm4hZCYmcEsoYSxiKT9mOmM7ZGVmYXVsdDpyZXR1cm4gZn19OwpWZWE9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgImZpbGxlZCI6cmV0dXJuInl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZCI7Y2FzZSAib3V0bGluZSI6cmV0dXJuInl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmUiO2Nhc2UgInRvbmFsIjpyZXR1cm4ieXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWwiO2RlZmF1bHQ6cmV0dXJuInl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHQifX07CldlYT1mdW5jdGlvbihhKXtzd2l0Y2goYSl7Y2FzZSAiY2FsbC10by1hY3Rpb24iOnJldHVybiJ5dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb24iO2Nhc2UgImNhbGwtdG8tYWN0aW9uLW92ZXJsYXkiOnJldHVybiJ5dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb25PdmVybGF5IjtjYXNlICJtb25vIjpyZXR1cm4ieXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ubyI7Y2FzZSAib3ZlcmxheSI6cmV0dXJuInl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkiO2Nhc2UgIm92ZXJsYXktZGFyayI6cmV0dXJuInl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXlEYXJrIjtjYXNlICJjYWxsLXRvLWFjdGlvbi1pbnZlcnNlIjpyZXR1cm4ieXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uSW52ZXJzZSI7Y2FzZSAibW9uby1pbnZlcnNlIjpyZXR1cm4ieXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UiO2Nhc2UgImJyYW5kLWdyYWRpZW50IjpyZXR1cm4ieXRTcGVjQnV0dG9uU2hhcGVOZXh0QnJhbmRHcmFkaWVudCI7CmNhc2UgImdlbi1haS1ncmFkaWVudCI6cmV0dXJuInl0U3BlY0J1dHRvblNoYXBlTmV4dEdlbkFpR3JhZGllbnQiO2Nhc2UgInJhaXNlZCI6cmV0dXJuInl0U3BlY0J1dHRvblNoYXBlTmV4dFJhaXNlZCI7ZGVmYXVsdDpyZXR1cm4ieXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ubyJ9fTtYZWE9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgIlhTIjpyZXR1cm4ieXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzIjtjYXNlICJTIjpyZXR1cm4ieXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMiO2Nhc2UgIkwiOnJldHVybiJ5dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTCI7Y2FzZSAiWEwiOnJldHVybiJ5dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwiO2RlZmF1bHQ6cmV0dXJuInl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNIn19OwpZZWE9ZnVuY3Rpb24oYSl7cmV0dXJuIGI9Pnt2YXIgYz1fLmhLKCk7Xy5uRSgoKT0+e2ImJihhKCk/Yy5qLnNldChiLHZvaWQgMCk6Yy5qLmRlbGV0ZShiKSxrSyhjKSl9LCJvR1FjaWMiKTtfLll1KCgpPT57Yy5qLmRlbGV0ZShiKTtrSyhjKX0pfX07Xy50Sz1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoIm5PNWRUZCIpO3JldHVybiBfLllKfTtfLnFLPV8uY0QoKCk9Pl8udEsoKSwiYW5pbWF0ZWRBc3NldFZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJhbmltYXRlZEFzc2V0Vmlld01vZGVsIiwibk81ZFRkIixfLnRLKX0pO3ZhciBPZWE9e2R1cmF0aW9uOjFFMyxlYXNpbmc6ImVhc2UiLGZpbGw6ImZvcndhcmRzIn0sdUs9Xy5MKGE9Pnt2YXIgYj1fLnVFKCJhbmltYXRlZC1yb2xsaW5nLWNoYXJhY3RlciIpLGM9dm9pZCAwLGQ9Xy5OKCgpPT5sSyhhLkpjPy4oKSl8fGxLKGEueGU/LigpKSx2b2lkIDAsInFTREQ5ZCIpLFtlLGZdPV8uSigwLHZvaWQgMCwiU0lnS0RkIik7Xy5vRigoKT0+e2lmKHdpbmRvdy5SZXNpemVPYnNlcnZlciYmXy54KCJ3ZWJfZml4X3JvbGxpbmdfbnVtYmVyc196b29tX3NhZmFyaSIpKXtsZXQgaD1uZXcgXy5XdCgoKT0+e3ZhciBsPU1hdGgucm91bmQoKGIudmFsdWUucXVlcnlTZWxlY3RvcigiZGl2Iik/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodD8/MCkqMTAwKS8xMDA7bCYmZihsKX0sNTAwKSxrPW5ldyBSZXNpemVPYnNlcnZlcigoKT0+e2gudigpfSk7ay5vYnNlcnZlKGIudmFsdWUpO18uWXUoKCk9PntrLmRpc2Nvbm5lY3QoKTtoLmRpc3Bvc2UoKX0pfX0pO18ubkUoKCk9Pgp7dmFyIGg9Xy54KCJ3ZWJfZml4X3JvbGxpbmdfbnVtYmVyc196b29tX3NhZmFyaSIpP2U6YS5CaDtpZihoKCkpe2M/LmNhbmNlbCgpO2lmKGQoKSl7dmFyIGs9YS54ZT8uKCk/TnVtYmVyKGEueGUoKSkrMTA6YS5FZCgpPzA6MzA7YS54Yj8uKCl8fChrLT1tSyhhLkpjPy4oKSxhLnhlPy4oKSxhLkVkKCksaykpfWVsc2UgaWYoaz1hLkVkKCk/MDoyLCFhLnhiPy4oKSl7dmFyIGw9YS5FZCgpPy0xOjE7ay09bH1iLnZhbHVlLnN0eWxlLm1hcmdpblRvcD1gLSR7aypoKCl9cHhgO2EueGI/LigpP2M9UGVhKGIudmFsdWUsYS5KYz8uKCksYS54ZT8uKCksYS5FZCgpLGssZCgpLGgoKSk6Yi52YWx1ZS5zdHlsZS5kaXNwbGF5PWEuSmM/LigpPyIiOiJub25lIn19LCJOSjRnQSIpO3JldHVybiBfLksoImFuaW1hdGVkLXJvbGxpbmctY2hhcmFjdGVyIix7ZWw6YixjbGFzczoiYW5pbWF0ZWRSb2xsaW5nQ2hhcmFjdGVySG9zdCJ9LF8uSyhfLk8se0E6ZCx0aGVuOigpPT5fLksoWmVhLG51bGwpLFc6KCk9PgpfLksoJGVhLHtKYzphLkpjfSl9KSl9LCJnYSIpO3VLLmlkb21Db21wYXQ9ITA7dmFyIFplYT1fLkwoKCk9Pnt2YXIgYT1bXTtmb3IobGV0IGI9MTtiPDMwO2IrKylhLnB1c2goXy5LKCJkaXYiLG51bGwsYiUxMCkpO3JldHVybiBfLksoXy5JQixudWxsLF8uSygiZGl2IixudWxsLCJcdTAwYTAiKSxhLF8uSygiZGl2IixudWxsLCJcdTAwYTAiKSl9LCJoYSIpLCRlYT1fLkwoKHtKYzphfSk9Pl8uSyhfLklCLG51bGwsXy5LKCJkaXYiLG51bGwsIlx1MDBhMCIpLF8uSyhfLk8se0E6KCk9PiFhPy4oKXx8L15bXHNceGEwXSokLy50ZXN0KGE/LigpKSx0aGVuOigpPT5fLksoImRpdiIsbnVsbCwiXHUwMGEwIiksVzooKT0+Xy5LKCJkaXYiLG51bGwsYSl9KSxfLksoImRpdiIsbnVsbCwiXHUwMGEwIikpLCJpYSIpO3ZhciB2Sz1fLkwoYT0+e3ZhciBiPXZvaWQgMCxjPXZvaWQgMDtfLm5FKCgpPT57Yj1hLlhiKCk7Yz1hLm51bWJlclZhbHVlPy4oKX0sInI3dHFRZCIpO3ZhciBkPV8uTigoKT0+e2lmKCFhLlhiKCkpcmV0dXJuW107dmFyIGU9YS5RcD8uKCl8fCFjfHwhYS5udW1iZXJWYWx1ZT8uKCl8fGM8YS5udW1iZXJWYWx1ZSgpLGY9YS5YYigpLGg9YS5naD8uKCk/YS5oZWlnaHRQeCgpKmEuZ2goKTphLmhlaWdodFB4KCksaz0hIWEueGI/LigpLGw9W10sbT0wLG49MCxwPShiP2IucmVwbGFjZSgvXEQvZywiIikubGVuZ3RoOjApLShmP2YucmVwbGFjZSgvXEQvZywiIikubGVuZ3RoOjApLHI9Yj9iLnNwbGl0KC8oXGQpLykuZmlsdGVyKEJvb2xlYW4pOltdO2ZvcihmPWYuc3BsaXQoLyhcZCkvKS5maWx0ZXIoQm9vbGVhbik7cDwwOyl7dmFyIHQ9ZltuXTtsLnB1c2goe0pjOnQsRWQ6ZSxCaDpoLHhiOmt9KTtuKys7bEsodCkmJnArK31mb3IoO208cDspdD1yW21dLGwucHVzaCh7eGU6dCxFZDplLApCaDpoLHhiOmt9KSxtKyssbEsodCl8fHArKztmb3IoO248Zi5sZW5ndGg7KXA9ZltuXSx0PXJbbV0sbEsocCk9PT1sSyh0KT8obisrLG0rKyk6bEsocCk/KG0rKyxwPXZvaWQgMCk6bEsodCkmJihuKyssdD12b2lkIDApLGwucHVzaCh7SmM6cCx4ZTp0LEVkOmUsQmg6aCx4YjprfSk7cmV0dXJuIGx9LHZvaWQgMCwid21uSFIiKTtyZXR1cm4gXy5LKCJ5dC1hbmltYXRlZC1yb2xsaW5nLW51bWJlciIse2NsYXNzOiJhbmltYXRlZFJvbGxpbmdOdW1iZXJIb3N0IixzdHlsZTooKT0+YS5YYigpP1tgaGVpZ2h0OiAke2EuZ2g/LigpP2EuaGVpZ2h0UHgoKSphLmdoKCk6YS5oZWlnaHRQeCgpfXB4O2AsYGxpbmUtaGVpZ2h0OiAke2EuaGVpZ2h0UHgoKX1weDtgXS5qb2luKCIgIik6IiIsZGlyOiJsdHIiLCJhcmlhLWhpZGRlbiI6InRydWUifSxfLksoXy5nRyx7cGE6ZCx0YjoiSU5ERVgifSxlPT5fLksodUsse0pjOigpPT5lKCkuSmMseGU6KCk9PmUoKS54ZSxCaDooKT0+ZSgpLkJoLEVkOigpPT4KZSgpLkVkLHhiOigpPT5lKCkueGJ9KSkpfSwia2EiKTt2Sy5pZG9tQ29tcGF0PSEwO3ZhciBhZmE9WyJtb25vIiwibW9uby1pbnZlcnNlIiwib3ZlcmxheSJdLGJmYT1bImZpbGxlZCJdO3ZhciB3Sz17Y3VwY2FrZToxLjUsZG9udXQ6MS42LGVjbGFpcjoyLGZyb3lvOjIuMixnaW5nZXJicmVhZDoyLjMsaG9uZXljb21iOjMsImljZSBjcmVhbSBzYW5kd2ljaCI6NCxqZWxseWJlYW46NC4xLGtpdGthdDo0LjQsbG9sbGlwb3A6NS4xLG1hcnNobWFsbG93OjYsbm91Z2F0OjcuMX0seEs7YTp7dmFyIHlLPV8uYmMoKTt5Sz15Sy50b0xvd2VyQ2FzZSgpO2lmKHlLLmluZGV4T2YoImFuZHJvaWQiKSE9LTEpe3ZhciB6Sz15Sy5tYXRjaCgvYW5kcm9pZFxzKihcZCsoXC5cZCspPylbXjt8KV0qWzspXS8pO2lmKHpLKXtsZXQgYT1wYXJzZUZsb2F0KHpLWzFdKTtpZihhPDEwMCl7eEs9YTticmVhayBhfX12YXIgQUs9eUsubWF0Y2goIigiK09iamVjdC5rZXlzKHdLKS5qb2luKCJ8IikrIikiKTt4Sz1BSz93S1tBS1swXV06MH1lbHNlIHhLPXZvaWQgMH1fLkJLPXhLPj0wO3ZhciBDSyxGSzt7dmFyIERLPV8uYmMoKTtsZXQgYT1ESy5tYXRjaCgvXCgoaVBhZHxpUGhvbmV8aVBvZCkoIFNpbXVsYXRvcik/Oy8pO2lmKCFhfHxhLmxlbmd0aDwyKUNLPXZvaWQgMDtlbHNle3ZhciBFSz1ESy5tYXRjaCgvXCgoaVBhZHxpUGhvbmV8aVBvZCkoIFNpbXVsYXRvcik/OyAoVTsgKT9DUFUgKGlQaG9uZSApP09TIChcZCtfXGQpW18gXS8pO0NLPUVLJiZFSy5sZW5ndGg9PT02P051bWJlcihFS1s1XS5yZXBsYWNlKCJfIiwiLiIpKTowfX1GSz1DSztfLkdLPUZLPj0wO3ZhciBVZWE9e3l0U3lzTWVhc3VyZW1lbnRSZWZlcmVuY2U6IllUX1NZU19NRUFTVVJFTUVOVF9SRUZFUkVOQ0VfSUNPTl9TSVpFX0NPTkRFTlNFRCJ9LHJLPXt5dFN5c01lYXN1cmVtZW50UmVmZXJlbmNlOiJZVF9TWVNfTUVBU1VSRU1FTlRfUkVGRVJFTkNFX0lDT05fU0laRV9DT01GT1JUQUJMRSJ9LFNlYT17eXRTeXNNZWFzdXJlbWVudFJlZmVyZW5jZToiWVRfU1lTX01FQVNVUkVNRU5UX1JFRkVSRU5DRV9JQ09OX1NJWkVfTUlOSSJ9LFRlYT17eXRTeXNNZWFzdXJlbWVudFJlZmVyZW5jZToiWVRfU1lTX01FQVNVUkVNRU5UX1JFRkVSRU5DRV9JQ09OX1NJWkVfQ09NUEFDVCJ9LGNmYT1fLkwoYT0+Xy5LKF8uTyx7QTphLnVjLHRoZW46Yj0+Xy5LKF8ubkgse3VjOmIsZGlzYWJsZWQ6YS5kaXNhYmxlZCxjbGFzc05hbWU6YS5jbGFzc05hbWUsc3R5bGU6YS5zdHlsZSx0aXRsZTphLnRpdGxlLGFyaWFMYWJlbDphLmFyaWFMYWJlbCxIZTphLkhlLGFyaWFDdXJyZW50OigpPT5hLnRvZ2dsZWFibGU/LigpJiYKYS50b2dnbGVkPy4oKSxhcmlhRXhwYW5kZWQ6YS5hcmlhRXhwYW5kZWQscmVmOmEucmVmLG9uSG92ZXI6YS5vbkhvdmVyfSxhLmNoaWxkcmVuKSxXOigpPT5fLksoImJ1dHRvbiIse2VsOl8uckYoYS5yZWYpLCJvbjpjbGljayI6YS5vbkNsaWNrLCJvbjptb3VzZWVudGVyIjphLm9uSG92ZXIsY2xhc3M6YS5jbGFzc05hbWUsdGl0bGU6YS50aXRsZSxzdHlsZTphLnN0eWxlLGRpc2FibGVkOmEuZGlzYWJsZWQsImFyaWEtcHJlc3NlZCI6KCk9PmEudG9nZ2xlYWJsZT8uKCk/ISFhLnRvZ2dsZWQ/LigpOnZvaWQgMCwiYXJpYS1sYWJlbCI6YS5hcmlhTGFiZWwsImFyaWEtZGVzY3JpYmVkYnkiOmEuSGUsImFyaWEtZGlzYWJsZWQiOmEuamksImFyaWEtaGlkZGVuIjphLmFyaWFIaWRkZW4sImFyaWEtZXhwYW5kZWQiOmEuYXJpYUV4cGFuZGVkLHRhYmluZGV4OigpPT5hLnRhYkluZGV4Py4oKT8/KChfLk9rfHxfLnJ6KCkpJiZfLngoIndlYl9lbmFibGVfc2FmYXJpX2J1dHRvbl90YWJpbmRleF9maXgiKT8KMDp2b2lkIDApfSxhLmNoaWxkcmVuKX0pLCJsYSIpLGRmYT1fLkwoKHtkYXRhOmEsSWw6YixKbDpjLEtsOmQsaWNvbkJ1dHRvbjplLGl4OmYsWno6aCxpY29uOmssc2Vjb25kYXJ5SWNvbjpsLFVBOm0sSnk6bixqaTpwLGRpc2FibGVMaWdodFNoYXBlOnJ9KT0+e3ZhciB0PV8ueSgpLnJlc29sdmUoXy5JbihfLmVLKSksdj1fLklFKHtjb2xvcjooKT0+YSgpLmN1c3RvbUNvbG9ycz8uaWNvbkNvbG9yfSk7cmV0dXJuIF8uSyhISyx7Y2xhc3NOYW1lOiIiLHN0eWxlOiJkaXNwbGF5OiBpbmhlcml0OyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciJ9LF8uSyhfLk8se2RlYnVnSW5zdGFuY2U6IlY0ejFVYyIsQTooKT0+ayYmKGIoKXx8YygpfHxlPy4oKSksdGhlbjooKT0+Xy5LKEhLLG51bGwsXy5LKCJkaXYiLHtjbGFzczpmLHN0eWxlOnYsImFyaWEtaGlkZGVuIjoidHJ1ZSJ9LGs/LigpKSl9KSxfLksoXy5PLHtkZWJ1Z0luc3RhbmNlOiJvazNidGIiLEE6KCk9PihhKCkuYnV0dG9uVGV4dHx8CmEoKS5hYnx8YSgpLldhKSYmIWU/LigpLHRoZW46KCk9Pl8uSyhISyxudWxsLF8uSyhJSyx7Y2xhc3NOYW1lOm0saWNvblBvc2l0aW9uOigpPT5hKCkuaWNvblBvc2l0aW9uLHRleHQ6KCk9PmEoKS5idXR0b25UZXh0LG9uZU9mZkN1c3RvbVRleHRXcmFwOigpPT5hKCkub25lT2ZmQ3VzdG9tVGV4dFdyYXAsV2E6KCk9PmEoKS5XYSxhYjooKT0+YSgpLmFifSkpfSksXy5LKF8uTyx7ZGVidWdJbnN0YW5jZToiRE81UnoiLEE6ZCx0aGVuOigpPT5fLksoSEssbnVsbCxfLksoImRpdiIse2NsYXNzOmYsc3R5bGU6dn0saz8uKCkpKX0pLF8uSyhfLk8se2RlYnVnSW5zdGFuY2U6ImJub2pTYyIsQTpjLHRoZW46KCk9Pl8uSyhISyxudWxsLF8uSygiZGl2Iix7Y2xhc3M6aCxzdHlsZTp2fSxsPy4oKSkpfSksXy5LKF8uTyx7ZGVidWdJbnN0YW5jZToiSE4za2FkIixBOigpPT4hYSgpLmRpc2FibGVkJiYhKHQ/LldvJiYhcD8uKCkpLHRoZW46KCk9Pl8uSyhfLmpLLHttb2RlbDooKT0+e3ZhciB6PQphKCk7cmV0dXJue2NvbG9yOnouc3R5bGU9PT0ib3ZlcmxheS1kYXJrIj80Onouc3R5bGU9PT0ib3ZlcmxheSI/ei50eXBlPT09ImZpbGxlZCI/NDozOnoudHlwZT09PSJmaWxsZWQifHx6LnN0eWxlPT09ImNhbGwtdG8tYWN0aW9uLWludmVyc2UifHx6LnN0eWxlPT09Im1vbm8taW52ZXJzZSI/MjoxfX19KX0pLF8uSyhfLlcse2RhdGE6KCk9PmEoKS5taWRkbGVncm91bmRBc3NldH0se2FuaW1hdGVkQXNzZXRWaWV3TW9kZWw6KHtkYXRhOnp9KT0+Xy5LKF8ucUsse2RhdGE6eixjbGFzc05hbWU6bixzbjohMH0pfSksXy5LKF8uTyx7QTooKT0+dD8uSXUmJiFwPy4oKSYmIXI/LigpLHRoZW46KCk9Pl8uSyhfLnlFLHtjb25maWc6KCk9Pnt2YXIgej1hKCksRT16LnN0eWxlLEE9ei50eXBlLEY9Xy55KCkucmVzb2x2ZShfLkluKF8uZUspKTtyZXR1cm57VmE6UWVhKEUsQSksams6Rj8uVm8mJkE9PT0idG9uYWwiLGV2OnouY3VzdG9tQ29sb3JzPy5iYWNrZ3JvdW5kQ29sb3IsZHY6ei5jdXN0b21Db2xvcnM/LmJvcmRlckNvbG9yLApDQjpGPy5Xb319fSl9KSl9LCJtYSIpLElLPV8uTChhPT57dmFyIGI9KCk9PmEuaWNvblBvc2l0aW9uPy4oKT09PSJpY29uLXdpdGgtbGFiZWwifHxhLm9uZU9mZkN1c3RvbVRleHRXcmFwPy4oKTtyZXR1cm4gXy5LKCJkaXYiLHtjbGFzczphLmNsYXNzTmFtZSwiYXJpYS1oaWRkZW4iOigpPT5hLmFyaWFIaWRkZW4/LigpJiYoISFhLmFiPy4oKXx8ISFhLldhPy4oKSl9LF8uSyhfLkVFLG51bGwsXy5LKF8uQ0Use3doZW46KCk9PmEuYWI/LigpfSwoKT0+Xy5LKHZLLHtYYjooKT0+YS5hYigpLlhiLG51bWJlclZhbHVlOigpPT5hLmFiKCkubnVtYmVyVmFsdWUsaGVpZ2h0UHg6KCk9PmEuYWIoKS5oZWlnaHRQeCxnaDooKT0+YS5hYigpLmdoLHhiOigpPT5hLmFiKCkueGIsUXA6KCk9PmEuYWIoKS5RcH0pKSxfLksoXy5DRSx7d2hlbjooKT0+YS5XYT8uKCl9LCgpPT5fLksoXy5WLHt0ZXh0OigpPT4oey4uLmEuV2EoKSxsaW5lQnJlYWtNb2RlOmIoKT8iTElORV9CUkVBS19NT0RFX0JZX1dPUkRfV1JBUFBJTkciOgphLldhKCkubGluZUJyZWFrTW9kZSxhbGlnbm1lbnQ6YigpPyJURVhUX0FMSUdOTUVOVF9DRU5URVIiOmEuV2EoKS5hbGlnbm1lbnR9KSx1YjohMCxub1dyYXA6KCk9PiFiKCl9KSksXy5LKF8uQ0Use3doZW46KCk9PmEuaWNvblBvc2l0aW9uPy4oKT09PSJpY29uLXdpdGgtbGFiZWwiJiZhLnRleHQ/LigpfSwoKT0+Xy5LKF8uVix7dGV4dDooKT0+KHtjb250ZW50OmEudGV4dCgpLGxpbmVCcmVha01vZGU6IkxJTkVfQlJFQUtfTU9ERV9CWV9XT1JEX1dSQVBQSU5HIixhbGlnbm1lbnQ6IlRFWFRfQUxJR05NRU5UX0NFTlRFUiJ9KSx1YjohMCxub1dyYXA6ITF9KSksXy5LKF8uREUsbnVsbCwoKT0+YS50ZXh0KSkpfSwibmEiKSxlZmE9Xy5MKGE9Pl8uSyhfLk8se2RlYnVnSW5zdGFuY2U6ImtNN1NnYyIsQTphLmhhc0xhYmVsLHRoZW46KCk9Pl8uSygibGFiZWwiLHtjbGFzczphLmNsYXNzTmFtZX0sYS5jaGlsZHJlbixhLnRleHRDb250ZW50Py4oKSksVzooKT0+YS5jaGlsZHJlbn0pLCJvYSIpLApISz1fLkwoYT0+YS5jaGlsZHJlbiwicGEiKTtfLkpLPV8uTCgoe2RhdGE6YSxpY29uOmIsaWNvbk5hbWU6YyxHZTpkLHNlY29uZGFyeUljb246ZSxRcjpmLFhJOmgsYXA6a30pPT57Xy5tRygpO3ZhciB7c2l6ZTpsLHN0eWxlOm0sZGlzYWJsZWQ6bixvblRhcDpwLG9pOnIsdWM6dCxjdXN0b21Db2xvcnM6dixzZWdtZW50ZWRQb3NpdGlvbjp6LHRvZ2dsZWQ6RSx0b2dnbGVhYmxlOkEsYWNjZXNzaWJpbGl0eUxhYmVsOkYsb25Ub2dnbGU6QyxpY29uUG9zaXRpb246RyxvbmVPZmZDdXN0b21UZXh0V3JhcDpELElmOkgsQXA6Uix0b29sdGlwVGV4dDpNLERuOlMsYXJpYUhpZGRlbjpZLGFyaWFFeHBhbmRlZDpwYSx0YWJJbmRleDpvYSxidXR0b25UZXh0OlUsV2E6aGEsYWI6bWEsb25DbGlja1JhdGVMaW1pdE1zOnRhLG9uSG92ZXI6VCxtaWRkbGVncm91bmRBc3NldDpiYSxkaXNhYmxlTGlnaHRTaGFwZTphYX09bksoYSkse3R5cGU6T2EsdG46SmIsSWw6emEsS2w6TGIsSmw6Y2MsRXc6bGMsRnc6VmIsR3c6dGQsaWNvbkJ1dHRvbjpCZSwKamk6YWQsdno6bnMsbXg6TWcsYUE6WkJ9PVJlYShhLGIsZSxjLGYsaCxkKSxbZmZhXT1fLmJLKE0sUyksTFQ9cmI9PntwPy4ocmIpO0EoKSYmQz8uKHJiKX0sTVQ9Xy5OKCgpPT50YT8uKCksdm9pZCAwLCJzaUt5d2IiKSxnZmE9Xy5OKCgpPT5NVCgpP05lYShMVCxNVCgpKTpMVCx2b2lkIDAsIndEVGNOIiksJEI9Xy55KCkucmVzb2x2ZShfLkluKF8uZUspKTtiPV8uTigoKT0+YmEoKXx8JEI/Lkl1LHZvaWQgMCwielVRUk9lIik7dmFyIGhmYT1ZZWEoKCk9Pnt2YXIgcmI9bSgpLGFpPU9hKCk7cmV0dXJuISFfLnkoKS5yZXNvbHZlKF8uSW4oXy5lSykpPy5WbyYmYWZhLmluY2x1ZGVzKHJiKSYmYmZhLmluY2x1ZGVzKGFpKX0pO3JldHVybiBfLksoZWZhLHtjbGFzc05hbWU6Xy5QKCJ5dFNwZWNCdXR0b25TaGFwZVdpdGhMYWJlbEhvc3QiLHt5dFNwZWNCdXR0b25TaGFwZVdpdGhMYWJlbElzT3ZlcmxheTooKT0+bSgpPT09Im92ZXJsYXkifHxtKCk9PT0ib3ZlcmxheS1kYXJrIn0pLGhhc0xhYmVsOnRkLAp0ZXh0Q29udGVudDooKT0+Xy5LKElLLHt0ZXh0OlUsY2xhc3NOYW1lOiJ5dFNwZWNCdXR0b25TaGFwZVdpdGhMYWJlbExhYmVsIixhcmlhSGlkZGVuOiEwLG9uZU9mZkN1c3RvbVRleHRXcmFwOkQsaWNvblBvc2l0aW9uOkcsV2E6aGEsYWI6bWF9KX0sXy5LKGNmYSx7dWM6dCxjbGFzc05hbWU6Xy5QKCJ5dFNwZWNCdXR0b25TaGFwZU5leHRIb3N0IiwoKT0+VmVhKE9hKCkpLCgpPT5hZCgpP3ZvaWQgMDpXZWEobSgpKSwoKT0+WGVhKGwoKSkse3l0U3BlY0J1dHRvblNoYXBlTmV4dERpc2FibGVkOmFkLHl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWQ6SmIseXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvblRyYWlsaW5nOkxiLHl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nOnphLHl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmc6Y2MseXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZ05vVGV4dDooKT0+Y2MoKSYmIShVKCl8fGhhKCkpLAp5dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uOigpPT5sYygpfHx0ZCgpLHl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25Pbmx5RGVmYXVsdDpWYix5dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dDpyLHl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZFN0YXJ0OigpPT56KCk9PT0ic3RhcnQiLHl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZDooKT0+eigpPT09ImVuZCIseXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcnJpZGVTbWFsbFNpemVJY29uOm5zLHl0U3BlY0J1dHRvblNoYXBlTmV4dE9uZU9mZkN1c3RvbVRleHRXcmFwQ29udGFpbmVyOkQseXRTcGVjQnV0dG9uU2hhcGVOZXh0RGlzYWJsZVRleHRFbGxpcHNpczpILHl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUJhY2tkcm9wRmlsdGVyRXhwZXJpbWVudDooKT0+e3ZhciByYjtpZihyYj0hUigpKSEocmI9Xy5HSyYmRks+PTE0KSYmKHJiPV8uQkspJiYocmI9Xy51Lm5hdmlnYXRvcj8uZGV2aWNlTWVtb3J5Pj0KOCkscmI9cmI/IV8ueCgid2ViX2Rpc2FibGVfYmFja2Ryb3BfZmlsdGVyIik6ITE7cmV0dXJuIHJifSx5dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2U6KCk9PiEhJEI/LldvJiYhYWQoKSx5dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VJY29uU2l6ZTooKT0+Xy54KCJ3ZWJfYnV0dG9uX2ljb25fc2l6ZV9leHBlcmltZW50IikseXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZzooKT0+Xy54KCJ3ZWJfYnV0dG9uX21haW5zdGFnZV9wYWRkaW5nIil9KSxzdHlsZTooKT0+e3ZhciByYj12KCk7aWYocmIpe3ZhciBhaT1yYi5jb2xvcjt2YXIgTlQ9cmIuYmFja2dyb3VuZENvbG9yO3JiPXJiLmJvcmRlckNvbG9yO3ZhciBwcz0iIjthaSYmKHBzKz1gY29sb3I6ICR7YWl9O2ApO05UJiYocHMrPWBiYWNrZ3JvdW5kLWNvbG9yOiAke05UfTtgKTtyYiYmKHBzKz1gYm9yZGVyLWNvbG9yOiAke3JifTtgKTthaT17c3R5bGU6cHN9fWVsc2UgYWk9Cnt9O3JldHVybiBhaS5zdHlsZX0sb25DbGljazpyYj0+e2dmYSgpKHJiKX0sb25Ib3ZlcjpyYj0+e1Q/LihyYil9LGRpc2FibGVkOm4sYXJpYUxhYmVsOkYsdG9nZ2xlYWJsZTpBLHRvZ2dsZWQ6RSx0aXRsZTooKT0+IWs/LigpJiZNKCk/TSgpOiIiLGppOmFkLGFyaWFIaWRkZW46WSxhcmlhRXhwYW5kZWQ6cGEsdGFiSW5kZXg6b2EscmVmOnJiPT57JEI/LlZvJiZoZmEocmIpO2s/LigpJiZmZmEocmIpfX0sXy5LKGRmYSx7ZGF0YTphLElsOnphLEpsOmNjLEtsOkxiLGljb25CdXR0b246QmUsaWNvbjpNZyxVQTpfLlAoInl0U3BlY0J1dHRvblNoYXBlTmV4dEJ1dHRvblRleHRDb250ZW50Iix7eXRTcGVjQnV0dG9uU2hhcGVOZXh0RWxldmF0ZWRDb250ZW50OmJ9KSxpeDpfLlAoInl0U3BlY0J1dHRvblNoYXBlTmV4dEljb24iLHt5dFNwZWNCdXR0b25TaGFwZU5leHRFbGV2YXRlZENvbnRlbnQ6Yn0pLFp6Ol8uUCgieXRTcGVjQnV0dG9uU2hhcGVOZXh0U2Vjb25kYXJ5SWNvbiIse3l0U3BlY0J1dHRvblNoYXBlTmV4dEVsZXZhdGVkQ29udGVudDpifSksCnNlY29uZGFyeUljb246WkIsSnk6Inl0U3BlY0J1dHRvblNoYXBlTmV4dE1pZGRsZWdyb3VuZEFzc2V0IixqaTphZCxkaXNhYmxlTGlnaHRTaGFwZTphYX0pKSl9LCJyYSIpO18uSksuaWRvbUNvbXBhdD17Y2FsbGJhY2tzOntpY29uOiEwLHNlY29uZGFyeUljb246ITB9fTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIExkYSxNZGEsTmRhLE9kYTtMZGE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLlZILlRlKCkuZ2V0U3RhdGUoKTtyZXR1cm4gYj9hKGMsLi4uYik6YShjKX07Xy5YSD1mdW5jdGlvbigpe2lmKFdIKXJldHVybiBXSDt2YXIgW2EsLGJdPV8uSigwLHZvaWQgMCwiTUIxSGIiKTtfLlZILlRlKCkuc3Vic2NyaWJlKCgpPT57TWRhKGIpfSk7cmV0dXJuIFdIPWF9O01kYT1mdW5jdGlvbihhKXtZSHx8KFlIPSEwLFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9PnthKGI9PmIrMSk7WUg9ITF9KSl9O18uWkg9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gXy5WSC5wdygpKGEsYil9O18uYkk9bmV3IF8uVnMoIlNUQVRFX1NUT1JFX1RPS0VOIik7TmRhPW5ldyBfLlZzKCJTRUxFQ1RfVE9LRU4iKTtPZGE9bmV3IF8uVnMoIkRJU1BBVENIX1RPS0VOIik7dmFyIFdILFlIO18uVkg9e3B3OigpPT5fLnkoKS5yZXNvbHZlKF8uSW4oTmRhKSk/P0xkYSxtdzooKT0+Xy55KCkucmVzb2x2ZShfLkluKE9kYSkpPz9fLlZILlRlKCkuZGlzcGF0Y2guYmluZChfLlZILlRlKCkpLFRlOigpPT5fLnkoKS5yZXNvbHZlKF8uYkkpfTtZSD0hMTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5jST1mdW5jdGlvbihhKXtyZXR1cm4gXy5OKCgpPT57Xy5YSCgpKCk7cmV0dXJuIF8uWkgoYSl9LHtkZWJ1Z05hbWU6ImQ4QjYyYyJ9LCJERVhraGQiKX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBpZmEsamZhLE9LLE5LLG5mYSxSSyxvZmEscGZhLFRLLHFmYSxyZmEsU0ssc2ZhLHRmYSx1ZmEsdmZhO2lmYT1mdW5jdGlvbihhLGIpe2IuZm9yRWFjaChjPT57dmFyIGQ9bnVsbDtjP2Q9Yy5hcHBseShudWxsLGEuYXJncyk6KGM9RXJyb3IoInJkIiksYy5wYXJhbXM9YS5hY3Rpb25OYW1lLF8uVWkoYykpO2EucmV0dXJuVmFsdWUucHVzaChkKX0pfTtqZmE9ZnVuY3Rpb24oYSxiLGMpe2IuZm9yRWFjaChkPT57dmFyIGU9Xy5SSihkKTtlJiYoZD1uZXcgXy5PSihlLCEwLFtkLGMsdm9pZCAwXSksKGU9YS5qLmdldChkLmFjdGlvbk5hbWUpKSYmaWZhKGQsZSksZC5qfHxkLnJldHVyblZhbHVlLmxlbmd0aCE9PTB8fChkPW5ldyBfLlhqKCJVbmhhbmRsZWQgYWN0aW9uIixkLmFjdGlvbk5hbWUpLF8uV2koZCkpKX0pfTtfLktLPWZ1bmN0aW9uKGEpe3JldHVybihhJjQyNzgxOTAwODApPj4+MjQ9PT0wP18uaUUoYSwiMSIpOl8uTkQoYSl9OwpfLk1LPWZ1bmN0aW9uKCl7TEt8fChMSz1uZXcga2ZhKTtyZXR1cm4gTEt9O09LPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1jLmFjdGlvbixlPWMuZWxlbWVudDtlJiZkJiYobGZhLmluY2x1ZGVzKGIpfHxfLncoIklOTkVSVFVCRV9DTElFTlRfTkFNRSIpPT09IldFQl9SRU1JWCJ8fGEuRCYmYS5ELkFKKGUpP05LKGEsYixjKTphLnYmJihhLm98fChhLm89bmV3IFdlYWtNYXApLGQ9YS52Lm9ic2VydmUoZSwoKT0+e05LKGEsYixjKTthLm8uZGVsZXRlKGUpfSx7VmI6ITAsc3RhdGU6InZpc2libGUifSksYS5vLnNldChlLGQpKSl9O18uUEs9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLkIuZ2V0KGIpO2lmKGMpe3ZhciBkPWEuai5nZXQoYyk7ZCYmKGRlbGV0ZSBkLmVsZW1lbnQsYS5qLnNldChjLGQpKTthLkIuZGVsZXRlKGIpO2EudiYmYS5vJiYoYz1hLm8uZ2V0KGIpKSYmKGEudi5yZihjKSxhLm8uZGVsZXRlKGIpKX19OwpfLlFLPWZ1bmN0aW9uKGEsYixjKXtfLlBLKGEsYyk7dmFyIGQ9YS5qLmdldChiKTtkfHwoZD17fSxhLmouc2V0KGIsZCkpO2QuZWxlbWVudD1jO2EuQi5zZXQoYyxiKTtPSyhhLGIsZCl9O05LPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1jLmFjdGlvbjsoYz1jLmVsZW1lbnQpJiZkJiYoamZhKGEuSyxbZF0sYyksYS5qLmRlbGV0ZShiKSxhLkIuZGVsZXRlKGMpLGEuWS5hZGQoYikpfTsKbmZhPWZ1bmN0aW9uKGEsYixjKXtpZihjJiZiKXN3aXRjaChjKXtjYXNlICJCVVRUT05fRU5USVRZX1NFTEVDVE9SX1RZUEVfUkVNT1ZFX0FEU19BRF9TVEFURSI6cmV0dXJuKGE9Xy5ISChhLGIpKT97aXNIaWRkZW46YS5hZHNTdGF0ZT09PSJBRFNfU1RBVEVfTk9ORSJ8fGEuYWRzU3RhdGU9PT0iQURTX1NUQVRFX1VOS05PV04ifTp7aXNIaWRkZW46ITB9O2Nhc2UgIkJVVFRPTl9FTlRJVFlfU0VMRUNUT1JfVFlQRV9DSEFUQk9UX1BFTkRJTkdfUkVTUE9OU0UiOnJldHVybntpc0hpZGRlbjohMSxpc0Rpc2FibGVkOiEhXy5xQShhLmVudGl0aWVzLCJ5b3VjaGF0UGVuZGluZ1Jlc3BvbnNlRW50aXR5IixiKT8uaXNQZW5kaW5nUmVzcG9uc2V9O2Nhc2UgIkJVVFRPTl9FTlRJVFlfU0VMRUNUT1JfVFlQRV9CT09MRUFOX0RJU0FCTEVEIjpyZXR1cm57aXNIaWRkZW46ITEsaXNEaXNhYmxlZDohIV8uSUgoYSxiKT8udmFsdWV9O2Nhc2UgIkJVVFRPTl9FTlRJVFlfU0VMRUNUT1JfVFlQRV9BU0tfU1RVRElPX0NPTlZFUlNBVElPTl9TVU1NQVJZIjpyZXR1cm4gYT0KXy5xQShhLmVudGl0aWVzLCJhc2tTdHVkaW9Db252ZXJzYXRpb25TdW1tYXJ5RW50aXR5IixiKT8uc3RhdGUsYT09PSJBU0tfU1RVRElPX0NPTlZFUlNBVElPTl9TVU1NQVJZX1NUQVRFX1BFTkRJTkciP3tpc0hpZGRlbjohMSxhcmlhRGlzYWJsZWQ6ITAsYXJpYUJ1c3k6ITAsYWNjZXNzaWJpbGl0eUxhYmVsOiJHZW5lcmF0aW5nIHN1bW1hcnkuLi4iLGljb25OYW1lOnZvaWQgMCxBYzptZmF9OmE9PT0iQVNLX1NUVURJT19DT05WRVJTQVRJT05fU1VNTUFSWV9TVEFURV9VTlJFQUQifHxhPT09IkFTS19TVFVESU9fQ09OVkVSU0FUSU9OX1NVTU1BUllfU1RBVEVfRkFJTEVEIj8oYT1hPT09IkFTS19TVFVESU9fQ09OVkVSU0FUSU9OX1NVTU1BUllfU1RBVEVfVU5SRUFEIix7aXNIaWRkZW46ITEsYXJpYURpc2FibGVkOiEwLGFjY2Vzc2liaWxpdHlMYWJlbDphPyJVbnJlYWQgc3VtbWFyeSI6IkZhaWxlZCB0byBnZW5lcmF0ZSBzdW1tYXJ5IixpY29uTmFtZToiWVRJQ09OX0ZJTExfRE9UX1MyNCIsCkFjOnZvaWQgMCwuLi4oYSYme2N1c3RvbUNvbG9yczp7Y29sb3I6InZhcigtLXl0LXNwZWMtY2FsbC10by1hY3Rpb24pIixpY29uQ29sb3I6InZhcigtLXl0LXNwZWMtY2FsbC10by1hY3Rpb24pIn19KX0pOntpc0hpZGRlbjohMH07Y2FzZSAiQlVUVE9OX0VOVElUWV9TRUxFQ1RPUl9UWVBFX0NPTU1FUkNFX1RPS0VOX0JBTEFOQ0UiOnJldHVybiBhPV8ucUEoYS5lbnRpdGllcywiY29tbWVyY2VUb2tlbkJhbGFuY2VFbnRpdHkiLGIpLGE/LnNlcnZlclRva2VuQmFsYW5jZSE9bnVsbD8oYT1OdW1iZXIoYS5zZXJ2ZXJUb2tlbkJhbGFuY2UpLGE9aXNOYU4oYSk/dm9pZCAwOlN0cmluZyhhLzFFNikse2lzSGlkZGVuOiExLFdhOmE/e2NvbnRlbnQ6YX06dm9pZCAwfSk6e2lzSGlkZGVuOiExfTtkZWZhdWx0OnJldHVybntpc0hpZGRlbjohMX19fTsKUks9ZnVuY3Rpb24oYSl7cmV0dXJue3RleHQ6YS50b29sdGlwVGV4dD8/IiIsbG9jYXRpb246b2ZhKGEucGxhY2VtZW50KSxzdHlsZTphLnN0eWxlLGhvdGtleTphLmhvdGtleX19O29mYT1mdW5jdGlvbihhKXtzd2l0Y2goYSl7Y2FzZSAiVE9PTFRJUF9WSUVXX01PREVMX1BMQUNFTUVOVF9CT1RUT00iOnJldHVybiJib3R0b20iO2Nhc2UgIlRPT0xUSVBfVklFV19NT0RFTF9QTEFDRU1FTlRfVE9QIjpyZXR1cm4idG9wIjtjYXNlICJUT09MVElQX1ZJRVdfTU9ERUxfUExBQ0VNRU5UX0xFRlQiOnJldHVybiJsZWZ0IjtjYXNlICJUT09MVElQX1ZJRVdfTU9ERUxfUExBQ0VNRU5UX1JJR0hUIjpyZXR1cm4icmlnaHQiO2RlZmF1bHQ6cmV0dXJuImJvdHRvbSJ9fTsKcGZhPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy5SRChhPy5vblRhcCksZD17fTtjJiYoZC5iSj0oKT0+U0soYSxjLGI/LnZhbHVlPy52aXN1YWxFbGVtZW50KSk7ZD1fLmJFKHtiaDphLm9uVGFwLHFkOiEwLEFvOmR9KTtyZXR1cm4gZD8uaHJlZj9kOnZvaWQgMH07VEs9ZnVuY3Rpb24oYSxiLGMsZCxlKXtjPXtyQzpjfTtfLmRLKGEse2Zvcm06e2N1cnJlbnREYXRhOmMsc291cmNlRGF0YTpjLGVsZW1lbnQ6YixldmVudDpkfSwuLi5lfSl9OwpxZmE9ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj12b2lkIDA7cmV0dXJuIGg9Pnt2YXIgaz1fLlJEKGM/YT8ub25EaXNhYmxlZFRhcDphPy5vblRhcCk7aWYoaylpZihmPWY/P2I/LnZhbHVlLF8ueCgid2ViX2J1dHRvbl92bV9jbGlja19jbGllbnRfdmVfa2lsbHN3aXRjaCIpKVRLKGssZixhLGgpO2Vsc2V7bGV0IGw9U0soYSxrLGY/LnZpc3VhbEVsZW1lbnQpO2lmKGUpe1RLKGssZSxhLGgse2NsaWNrZWRWaXN1YWxFbGVtZW50OmwsZm9ybTp7ZWxlbWVudDplfX0pO3JldHVybn1USyhrLGYsYSxoLHtjbGlja2VkVmlzdWFsRWxlbWVudDpsfSl9ZCYmZChoKX19O3JmYT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9dm9pZCAwO3JldHVybiBlPT57dmFyIGY9Xy5SRChhPy5vbkhvdmVyKTtmJiYoZD1kPz9iPy52YWx1ZSxjP1RLKGYsYyxhLGUse2Zvcm06e2VsZW1lbnQ6Y319KTpUSyhmLGQsYSxlKSl9fTsKU0s9ZnVuY3Rpb24oYSxiLGMpe2I9Yj8uY2xpY2tUcmFja2luZ1BhcmFtczthPWE/LmxvZ2dpbmdEaXJlY3RpdmVzPy5jbGllbnRWZVNwZWM/LnVpVHlwZTtpZihjJiZhJiYhYilyZXR1cm4gY307CnNmYT1mdW5jdGlvbihhKXtzd2l0Y2goYSl7Y2FzZSAiQlVUVE9OX1ZJRVdfTU9ERUxfU1RZTEVfQ1RBIjpyZXR1cm4iY2FsbC10by1hY3Rpb24iO2Nhc2UgIkJVVFRPTl9WSUVXX01PREVMX1NUWUxFX01PTk8iOmNhc2UgIkJVVFRPTl9WSUVXX01PREVMX1NUWUxFX0JSQU5EIjpyZXR1cm4ibW9ubyI7Y2FzZSAiQlVUVE9OX1ZJRVdfTU9ERUxfU1RZTEVfT1ZFUkxBWSI6cmV0dXJuIm92ZXJsYXkiO2Nhc2UgIkJVVFRPTl9WSUVXX01PREVMX1NUWUxFX09WRVJMQVlfREFSSyI6cmV0dXJuIm92ZXJsYXktZGFyayI7Y2FzZSAiQlVUVE9OX1ZJRVdfTU9ERUxfU1RZTEVfQlJBTkRfR1JBRElFTlQiOnJldHVybiJicmFuZC1ncmFkaWVudCI7Y2FzZSAiQlVUVE9OX1ZJRVdfTU9ERUxfU1RZTEVfQlJBTkRfQUkiOnJldHVybiJnZW4tYWktZ3JhZGllbnQiO2Nhc2UgIkJVVFRPTl9WSUVXX01PREVMX1NUWUxFX1JBSVNFRCI6cmV0dXJuInJhaXNlZCI7ZGVmYXVsdDpyZXR1cm4ibW9ubyJ9fTsKdGZhPWZ1bmN0aW9uKGEpe3N3aXRjaChhKXtjYXNlICJCVVRUT05fVklFV19NT0RFTF9UWVBFX0ZJTExFRCI6cmV0dXJuImZpbGxlZCI7Y2FzZSAiQlVUVE9OX1ZJRVdfTU9ERUxfVFlQRV9PVVRMSU5FIjpyZXR1cm4ib3V0bGluZSI7Y2FzZSAiQlVUVE9OX1ZJRVdfTU9ERUxfVFlQRV9URVhUIjpyZXR1cm4idGV4dCI7Y2FzZSAiQlVUVE9OX1ZJRVdfTU9ERUxfVFlQRV9UT05BTCI6cmV0dXJuInRvbmFsIjtkZWZhdWx0OnJldHVybiJ0ZXh0In19O3VmYT1mdW5jdGlvbihhKXtzd2l0Y2goYSl7Y2FzZSAiQlVUVE9OX1ZJRVdfTU9ERUxfU1RBVEVfQUNUSVZFIjpyZXR1cm4iYWN0aXZlIjtjYXNlICJCVVRUT05fVklFV19NT0RFTF9TVEFURV9JTkFDVElWRSI6cmV0dXJuImRpc2FibGVkIjtjYXNlICJCVVRUT05fVklFV19NT0RFTF9TVEFURV9ESVNBQkxFRCI6cmV0dXJuImRpc2FibGVkIjtkZWZhdWx0OnJldHVybiJhY3RpdmUifX07CnZmYT1mdW5jdGlvbihhKXtzd2l0Y2goYSl7Y2FzZSAiQlVUVE9OX1ZJRVdfTU9ERUxfU0laRV9YU01BTEwiOnJldHVybiJYUyI7Y2FzZSAiQlVUVE9OX1ZJRVdfTU9ERUxfU0laRV9DT01QQUNUIjpyZXR1cm4iUyI7Y2FzZSAiQlVUVE9OX1ZJRVdfTU9ERUxfU0laRV9ERUZBVUxUIjpyZXR1cm4iTSI7Y2FzZSAiQlVUVE9OX1ZJRVdfTU9ERUxfU0laRV9MQVJHRSI6cmV0dXJuIkwiO2Nhc2UgIkJVVFRPTl9WSUVXX01PREVMX1NJWkVfWExBUkdFIjpyZXR1cm4iWEwiO2RlZmF1bHQ6cmV0dXJuIk0ifX07dmFyIGxmYT1bImJyb3dzZS12aWRlby1tZW51LWJ1dHRvbiIsInVuaWZpZWQtdmVyaWZpZWQtYmFkZ2UiLCJ0b3BiYXItZ3VpZGUtbWVudSJdLGtmYT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuSz1fLlNKLmpjKCk7dGhpcy5qPW5ldyBNYXA7dGhpcy5CPW5ldyBXZWFrTWFwO3RoaXMuWT1uZXcgU2V0fWRpc3Bvc2UoKXt0aGlzLkQmJl8uY2YodGhpcy5ELCJ5dC12aXNpYmlsaXR5LW1vbml0b3ItcmVmcmVzaGVkIix0aGlzLkksITEsdGhpcyk7dGhpcy52JiZ0aGlzLnYuZGlzcG9zZSgpfUkoKXtmb3IobGV0IFthLGJdb2YgdGhpcy5qLmVudHJpZXMoKSlPSyh0aGlzLGEsYil9fSxMSzt2YXIgbWZhPXthbmltYXRlZEFzc2V0Vmlld01vZGVsOntnZW5lcmljQmVoYXZpb3I6e2F1dG9wbGF5OiEwLGxvb3A6ITB9LGxvdHRpZUFzc2V0Ont0aGVtZWRVcmw6e2xpZ2h0OiJodHRwczovL3d3dy5nc3RhdGljLmNvbS95b3V0dWJlL2ltZy9sb3R0aWUveW91Y2hhdF9hbmltYXRpb25zL3Byb2dyZXNzX2luZGljYXRvcl9zb2xvX3YxLmpzb24iLGRhcms6Imh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL3lvdXR1YmUvaW1nL2xvdHRpZS95b3VjaGF0X2FuaW1hdGlvbnMvcHJvZ3Jlc3NfaW5kaWNhdG9yX3NvbG9fdjEuanNvbiJ9fX19O3ZhciB3ZmE9WyJ5b3UtY2hhdC1lbnRyeXBvaW50LWJ1dHRvbiJdOwpfLkhEPV8uTCgoe2RhdGE6YSxjbGFzc05hbWU6YixzdHlsZTpjLGJ1dHRvbk92ZXJyaWRlczpkLGFiOmUsb25DbGljazpmLHRhcmdldDpofSk9Pnt2YXIgaz1fLnVFKCJidXR0b24tdmlldy1tb2RlbCIsRD0+e0QuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoInl0LXJlbmRlcmlkb20tZmluaXNoZWQiLHtidWJibGVzOiEwLGNhbmNlbGFibGU6ITEsY29tcG9zZWQ6ITB9KSk7dmFyIEg9YSgpLnRhcmdldElkO0gmJl8uUUsoXy5NSygpLEgsRCk7cmV0dXJuKCk9PntfLlBLKF8uTUsoKSxEKX19KSxsPV8uY0koRD0+bmZhKEQsYSgpPy5lbnRpdHlLZXksYSgpPy5idXR0b25FbnRpdHlTZWxlY3RvclR5cGUpKSxtPSgpPT5hKCk/LmVudGl0eUtleSYmYSgpPy5idXR0b25FbnRpdHlTZWxlY3RvclR5cGU/bCgpOnZvaWQgMCxuPSgpPT5fLngoIldlYkZFQWxsU3R1ZGlvQnlDaGFubmVsX193ZWJfYnV0dG9uX3ZpZXdfbW9kZWxfZW50aXR5X292ZXJyaWRlcyIpP20oKTp2b2lkIDAscD0KKCk9Pnt2YXIgRD1uKCk7aWYoRD8uaWNvbk5hbWUhPT12b2lkIDApcmV0dXJuIEQuaWNvbk5hbWU7aWYoRD8uQWM9PT12b2lkIDApcmV0dXJuIGEoKT8uaWNvbk5hbWV8fGEoKT8ueXRJY29ufSxyPV8ueSgpLnJlc29sdmUoXy5JbihfLmtGKSk/LigpLHQ9KCk9Pnt2YXIgRD1kPy4oKSxIPW0oKSxSPW4oKSxNPUQ7YSgpPy5idXR0b25FbnRpdHlTZWxlY3RvclR5cGUmJihNPXsuLi5ELGRpc2FibGVkOiEhSD8uaXNEaXNhYmxlZHx8ISFEPy5kaXNhYmxlZH0pO0Q9YSgpO3ZhciBTPU0sWT1lPy4oKSxwYT1SPy5hcmlhRGlzYWJsZWR8fEg/LmlzRGlzYWJsZWR8fFI/LmFyaWFCdXN5fHxNPy5kaXNhYmxlZD92b2lkIDA6ZjtNPWg/LigpO2lmKEQpe3ZhciBvYT10ZmEoRC50eXBlKTt2YXIgVT0hIUQudGl0bGV8fCEhRC50aXRsZUZvcm1hdHRlZDt2YXIgaGE9ISEoRC5pY29uTmFtZXx8RC5pY29uSW1hZ2V8fEQueXRJY29ufHxELmxlYWRpbmdBc3NldCk7VT1oYSYmIVU/Imljb24tb25seSI6CmhhP0QuaWNvblBvc2l0aW9uPT09IkJVVFRPTl9WSUVXX01PREVMX0lDT05fUE9TSVRJT05fQUJPVkUiPyJpY29uLXdpdGgtbGFiZWwiOkQuaWNvblRyYWlsaW5nfHxELmljb25Qb3NpdGlvbj09PSJCVVRUT05fVklFV19NT0RFTF9JQ09OX1BPU0lUSU9OX1RSQUlMSU5HIj8idHJhaWxpbmciOiJsZWFkaW5nIjp2b2lkIDA7VT09PSJpY29uLW9ubHktNDAiJiYob2E9InRleHQiKTtoYT1TPy5zdGF0ZT8/dWZhKEQuc3RhdGUpO3ZhciBtYT1TPy5kaXNhYmxlZD8/KEQuc3RhdGU9PT0iQlVUVE9OX1ZJRVdfTU9ERUxfU1RBVEVfRElTQUJMRUQifHxELnN0YXRlPT09IkJVVFRPTl9WSUVXX01PREVMX1NUQVRFX0lOQUNUSVZFIik7Xy54KCJ3ZWJfYnV0dG9uX3ZtX3JlZmFjdG9yX2Rpc2FibGVkIikmJihtYT1TPy5kaXNhYmxlZD8/aGE9PT0iZGlzYWJsZWQiKTtZPVkmJlkuWGImJiFpc05hTihOdW1iZXIoWS5udW1iZXJWYWx1ZSkpP1k6dm9pZCAwO3ZhciB0YT1ELnRpdGxlLFQ9RC50aXRsZUZvcm1hdHRlZCwKYmE9RC5hY2Nlc3NpYmlsaXR5VGV4dCxhYT1zZmEoRC5zdHlsZSksT2E9dmZhKEQuYnV0dG9uU2l6ZSk7cGE9cWZhKEQsayxtYSxwYSxNKTt2YXIgSmI9bWEmJiFELm9uRGlzYWJsZWRUYXAsemE9cGZhKEQsayksTGI9RC5jdXN0b21Gb250Q29sb3IsY2M9RC5jdXN0b21CYWNrZ3JvdW5kQ29sb3I7dmFyIGxjPUQuY3VzdG9tQm9yZGVyQ29sb3I7bGV0IHRkPUQuY3VzdG9tRGFya1RoZW1lRm9udENvbG9yLEJlPUQuY3VzdG9tRGFya1RoZW1lQmFja2dyb3VuZENvbG9yO3ZhciBWYj1ELmN1c3RvbURhcmtUaGVtZUJvcmRlckNvbG9yO0xiPXImJnRkP3RkOkxiO2NjPXImJkJlP0JlOmNjO2xjPXImJlZiP1ZiOmxjO2xjPXtjb2xvcjpMYj9fLk5EKExiKTp2b2lkIDAsYmFja2dyb3VuZENvbG9yOmNjP18uTkQoY2MpOnZvaWQgMCxib3JkZXJDb2xvcjpsYz9fLk5EKGxjKTp2b2lkIDB9O1ZiPV8uQihELnRvb2x0aXBEYXRhLF8uY0spO2NjPV8uQihELmRpc2FibGVkVG9vbHRpcERhdGEsXy5jSyk7CkQ9e2J1dHRvblRleHQ6dGEsV2E6VCxhYjpZLGFjY2Vzc2liaWxpdHlMYWJlbDpiYSxzdHlsZTphYSx0eXBlOm9hLHN0YXRlOmhhLHNpemU6T2EsaWNvblBvc2l0aW9uOlUsb25UYXA6cGEsZGlzYWJsZWQ6SmIsdWM6emEsY3VzdG9tQ29sb3JzOmxjLHRvb2x0aXBUZXh0OkQudG9vbHRpcCxEbjptYSYmY2M/UksoY2MpOlZiP1JLKFZiKTp2b2lkIDAsb25Ib3ZlcjpyZmEoRCxrLE0pLG1pZGRsZWdyb3VuZEFzc2V0OkQubWlkZGxlZ3JvdW5kQXNzZXQsQWM6RC5sZWFkaW5nQXNzZXQsLi4uU319ZWxzZSBEPXtzdHlsZToibW9ubyIsdHlwZToidGV4dCIsc3RhdGU6ImFjdGl2ZSIsc2l6ZToiTSJ9O0QuZm9jdXNlZD1GKCk7Uj8uYWNjZXNzaWJpbGl0eUxhYmVsIT09dm9pZCAwJiYoRC5hY2Nlc3NpYmlsaXR5TGFiZWw9Ui5hY2Nlc3NpYmlsaXR5TGFiZWwpO1I/LmN1c3RvbUNvbG9ycyE9PXZvaWQgMCYmKEQuY3VzdG9tQ29sb3JzPVIuY3VzdG9tQ29sb3JzKTtSPy5BYyE9PXZvaWQgMD8oRC5BYz0KUi5BYyxELmljb25Qb3NpdGlvbj0iaWNvbi1vbmx5Iik6Uj8uaWNvbk5hbWUhPT12b2lkIDAmJihELkFjPXZvaWQgMCxELmljb25Qb3NpdGlvbj0iaWNvbi1vbmx5Iik7SD8uV2EmJihELldhPUguV2EpO3JldHVybiBEfSx2PV8uUEgoKSx6PSgpPT57dmFyIEQ9dCgpO3JldHVybiBfLm9LKEQsISFwKCl8fCEhRC5BYyx2KX0sW0UsQV09Xy5KKCExLHZvaWQgMCwiUHBuTkEiKSxGPUU7Xy5uRSgoKT0+e3ZhciBEPV8uQihhKCk/Lm9uVmlzaWJsZSxfLk9EKTtEJiZfLmFFKEQse21kOiEwfSl9LCJlZmV1eSIpO3ZhciBDPSgpPT57dmFyIEQ9YSgpPy5pY29uSW1hZ2U7cmV0dXJuIEQ/e3NvdXJjZXM6W0RdfTp2b2lkIDB9LEc9SFRNTEVsZW1lbnQucHJvdG90eXBlLmhhc093blByb3BlcnR5KCJwb3BvdmVyIik7cmV0dXJuIF8uSygiYnV0dG9uLXZpZXctbW9kZWwiLHtlbDprLGNsYXNzOl8uUCgieXRTcGVjQnV0dG9uVmlld01vZGVsSG9zdCIsYiwoKT0+e3ZhciBEPWEoKT8udGFyZ2V0SWQ7CmlmKEQpcmV0dXJuIHdmYS5pbmNsdWRlcyhEKT9EOnZvaWQgMH0pLCJvbjpmb2N1c2luIjpmdW5jdGlvbigpe3ZhciBEPV8ueSgpLnJlc29sdmUoXy5JbihfLmpIKSk7RCYmQShELlhlKCkpfSwib246Zm9jdXNvdXQiOmZ1bmN0aW9uKCl7QSghMSl9LCJhcmlhLWRpc2FibGVkIjooKT0+bigpPy5hcmlhRGlzYWJsZWQ/InRydWUiOnZvaWQgMCwiYXJpYS1idXN5IjooKT0+bigpPy5hcmlhQnVzeT8idHJ1ZSI6dm9pZCAwfSxfLksoXy5PLHtBOigpPT4hKG0oKT8uaXNIaWRkZW4/PyExKSx0aGVuOigpPT5fLksoXy5PLHtBOkMsdGhlbjpEPT5fLksoXy5KSyx7ZGF0YTp0LGljb246KCk9Pl8uSyhfLmpGLHtkYXRhOkQsYWx0OiIiLEFiOnosZGM6eixUYTohMCxZYTohMH0pLGFwOkd9KSxXOigpPT5fLksoXy5KSyx7ZGF0YTp0LGljb25OYW1lOnAsR2U6KCk9PiEhYz8uKCk/LmFuaW1hdGVJY29uLGFwOkd9KX0pfSkpfSwidGEiKTtfLkhELmlkb21Db21wYXQ9e2NhbGxiYWNrczp7b25DbGljazohMH19Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLldkKCJEbHZGMWQiKTsKCl8uWGQoKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5ZQz1uZXcgXy5JKCJhY2Nlc3NpYmlsaXR5Q29udGV4dCIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLnNMPW5ldyBfLkkoImF2YXRhclZpZXdNb2RlbCIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLlFGPWZ1bmN0aW9uKGEpe2lmKGEpe3ZhciBiPV8ueSgpLnJlc29sdmUoXy5JbihfLmtGKSk/LigpLGM9YS5kYXJrVGhlbWVJbWFnZT8/YS5pbWFnZTtyZXR1cm4gYj9jOmEuaW1hZ2V9fTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5SRj1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoIlJhcTRjYiIpO3JldHVybiBfLklEfTtfLlNGPV8uY0QoKCk9Pl8uUkYoKSwiYXZhdGFyVmlld01vZGVsIik7Xy5ZdChfLkpELGE9PnthLkooImF2YXRhclZpZXdNb2RlbCIsIlJhcTRjYiIsXy5SRil9KTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy4kRj1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoIlB6VWRaYiIpO3JldHVybiBfLkVEfTtfLmFHPV8uY0QoKCk9Pl8uJEYoKSwiYmFkZ2VWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigiYmFkZ2VWaWV3TW9kZWwiLCJQelVkWmIiLF8uJEYpfSk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8udUw9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJXcWxjVmIiKTtyZXR1cm4gXy54RH07Xy52TD1fLmNEKCgpPT5fLnVMKCksImRlc2NyaXB0aW9uUHJldmlld1ZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJkZXNjcmlwdGlvblByZXZpZXdWaWV3TW9kZWwiLCJXcWxjVmIiLF8udUwpfSk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8ud0w9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJ1aGxMR2IiKTtyZXR1cm4gXy53RH07Xy54TD1fLmNEKCgpPT5fLndMKCksImZsZXhpYmxlQWN0aW9uc1ZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJmbGV4aWJsZUFjdGlvbnNWaWV3TW9kZWwiLCJ1aGxMR2IiLF8ud0wpfSk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8ueUw9ZnVuY3Rpb24oKXtpZighKCJtYXRjaE1lZGlhImluIHdpbmRvdykpcmV0dXJuIF8uV2koRXJyb3IoInRkIikpLCgpPT4wO3ZhciBhPXdpbmRvdy5tYXRjaE1lZGlhKCIobWF4LXdpZHRoOiA1MjcuOXB4KSIpLGI9d2luZG93Lm1hdGNoTWVkaWEoIihtaW4td2lkdGg6IDUyOHB4KSBhbmQgKG1heC13aWR0aDogODM5LjlweCkiKSxjPXdpbmRvdy5tYXRjaE1lZGlhKCIobWluLXdpZHRoOiA4NDBweCkgYW5kIChtYXgtd2lkdGg6IDEwMjMuOXB4KSIpLGQ9d2luZG93Lm1hdGNoTWVkaWEoIihtaW4td2lkdGg6IDEwMjRweCkiKSxbZSxmXT1fLkooYS5tYXRjaGVzLHZvaWQgMCwiVG1JS2NiIiksW2gsa109Xy5KKGIubWF0Y2hlcyx2b2lkIDAsIlowZlRLZCIpLFtsLG1dPV8uSihjLm1hdGNoZXMsdm9pZCAwLCJ3NHh5N2IiKSxbbixwXT1fLkooZC5tYXRjaGVzLHZvaWQgMCwiRHJiTkMiKSxyPUU9PntmKEUubWF0Y2hlcyl9LHQ9RT0+e2soRS5tYXRjaGVzKX0sdj1FPT57bShFLm1hdGNoZXMpfSwKej1FPT57cChFLm1hdGNoZXMpfTtfLlVKKCgpPT57YS5hZGRFdmVudExpc3RlbmVyPyhhLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsciksYi5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLHQpLGMuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIix2KSxkLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIseikpOmEuYWRkTGlzdGVuZXImJihhLmFkZExpc3RlbmVyKHIpLGIuYWRkTGlzdGVuZXIodCksYy5hZGRMaXN0ZW5lcih2KSxkLmFkZExpc3RlbmVyKHopKTtfLll1KCgpPT57YS5yZW1vdmVFdmVudExpc3RlbmVyPyhhLnJlbW92ZUV2ZW50TGlzdGVuZXIoImNoYW5nZSIsciksYi5yZW1vdmVFdmVudExpc3RlbmVyKCJjaGFuZ2UiLHQpLGMucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2hhbmdlIix2KSxkLnJlbW92ZUV2ZW50TGlzdGVuZXIoImNoYW5nZSIseikpOmEucmVtb3ZlTGlzdGVuZXImJihhLnJlbW92ZUxpc3RlbmVyKHIpLGIucmVtb3ZlTGlzdGVuZXIodCksYy5yZW1vdmVMaXN0ZW5lcih2KSwKZC5yZW1vdmVMaXN0ZW5lcih6KSl9KX0pO3JldHVybigpPT5lKCk/MTpoKCk/MjpsKCk/MzpuKCk/NDowfTtfLkFMPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1fLnkoKS5yZXNvbHZlKF8uSW4oekwpKSxbZSxmXT1fLkooZCx2b2lkIDAsInhHc1JRIik7ZHx8Xy5ZdCh6TCxmKTtyZXR1cm4gXy5OKCgpPT57dmFyIGg9YSgpO3JldHVybiBoJiZiKCk/ZSgpPy4oaCxiLGMpOnZvaWQgMH0sdm9pZCAwLCJic29zZGQiKX07dmFyIHpMPW5ldyBfLlZzKCJTRU1BTlRJQ19UWVBPR1JBUEhZX1JFU09MVkVSX1RPS0VOIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uVEg9ZnVuY3Rpb24oYSl7cmV0dXJuKCk9Pl8uQihhKCksXy5ZQyl9Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgQkw9ZnVuY3Rpb24oYSl7aWYoYSlyZXR1cm4gXy55KCkucmVzb2x2ZShfLkluKF8ua0YpKT8uKCk/YS5kYXJrVGhlbWU6YS5saWdodFRoZW1lfSxDTD1uZXcgXy5JKCJiYWRnZVZpZXdNb2RlbCIpO3ZhciBDZmE9bmV3IF8uVnMoIkNPTU1PTl9NQVJLX1ZJRVdfTU9ERUxfVE9LRU4iKTt2YXIgRGZhO18uREw9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJGcUhjR2UiKTtyZXR1cm4gXy50Rn07RGZhPV8uY0QoKCk9Pl8uREwoKSwic2VjdGlvbkhlYWRlckxheW91dCIpO18uWXQoXy5KRCxhPT57YS5KKCJzZWN0aW9uSGVhZGVyTGF5b3V0IiwiRnFIY0dlIixfLkRMKX0pO18udkQ9Xy5MKCh7Y2xhc3NOYW1lOmEsZGF0YTpiLGRpc2FibGVIb3Jpem9udGFsUGFkZGluZzpjLGRpc2FibGVWZXJ0aWNhbFBhZGRpbmc6ZCxUaTplLEtuOmYsaXNPdmVybGF5OmgsRXM6ayxnTDpsLGlKOm19KT0+e3ZhciBuPV8uVEgoKCk9PmIoKS5yZW5kZXJlckNvbnRleHQpLHA9Xy55TCgpLHI9Xy5BTCgoKT0+YigpLmhlYWRsaW5lVHlwb2dyYXBoeVRva2VuLHAse21heExpbmVzOjJ9KTtwPV8uQUwoKCk9PmIoKS5zdWJ0aXRsZVR5cG9ncmFwaHlUb2tlbixwKTt2YXIgdD1fLlFIKCgpPT5iKCkuaG9yaXpvbnRhbFBhZGRpbmcpLHY9Xy5RSCgoKT0+YigpLnRvcFBhZGRpbmcpLHo9Xy5RSCgoKT0+YigpLmJvdHRvbVBhZGRpbmcpO3JldHVybiBfLksoInl0LXNlY3Rpb24taGVhZGVyLXZpZXctbW9kZWwiLHtjbGFzczpfLlAoInl0U2VjdGlvbkhlYWRlclZpZXdNb2RlbEhvc3QiLGEpLHN0eWxlOl8uSUUoeyJiYWNrZ3JvdW5kLWNvbG9yIjooKT0+QkwoYigpLmJhY2tncm91bmRDb2xvcik/Cl8uTkQoQkwoYigpLmJhY2tncm91bmRDb2xvcikpOnZvaWQgMH0pfSxfLksoRGZhLHthcmlhTGFiZWw6KCk9Pm4oKT8ubGFiZWwsQXc6ITEsdGl0bGU6KCk9Pl8uSyhfLlYse3RleHQ6KCk9PmIoKS5oZWFkbGluZSxYYTohMH0pLGtoOiEwLHN1YmxhYmVsOigpPT5fLksoRWZhLHtkYXRhOmJ9KSxMdzooKT0+ISFiKCkuc3VibGFiZWx8fCEhYigpLmJvdHRvbUJhZGdlfHwhIWIoKS5ib3R0b21CYWRnZXMsc3VwZXJsYWJlbDooKT0+Xy5LKEZmYSx7ZGF0YTpifSksTXc6KCk9PiEhYigpLnN1cGVybGFiZWx8fCEhYigpLnRvcEJhZGdlLGxlYWRpbmdJbWFnZTooKT0+Xy5LKEdmYSx7bGVhZGluZ0FjY2Vzc29yeTooKT0+YigpLmxlYWRpbmdBY2Nlc3Nvcnl9KSxIdzooKT0+ISFiKCkubGVhZGluZ0FjY2Vzc29yeSx0cmFpbGluZ0FjdGlvbnM6KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0U2VjdGlvbkhlYWRlclZpZXdNb2RlbFRyYWlsaW5nQWN0aW9uc0NvbnRhaW5lciJ9LF8uSyhfLlcse2RhdGE6KCk9PgpiKCkudHJhaWxpbmdBY3Rpb25zfSx7ZmxleGlibGVBY3Rpb25zVmlld01vZGVsOl8ueEx9KSxfLksoXy5PLHtBOm0sdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRTZWN0aW9uSGVhZGVyVmlld01vZGVsQ2hldnJvbnNDb250YWluZXIifSxfLksoXy5nRyx7cGE6KCk9Pmw/LigpfHxbXX0sRT0+Xy5LKCJkaXYiLHtjbGFzczoieXRTZWN0aW9uSGVhZGVyVmlld01vZGVsQ2hldnJvbiJ9LEUpKSl9KSksTnc6KCk9Pm0/LigpfHwhIWIoKS50cmFpbGluZ0FjdGlvbnMsZGlzYWJsZUhvcml6b250YWxQYWRkaW5nOigpPT5jPy4oKXx8YigpLmRpc2FibGVIb3Jpem9udGFsUGFkZGluZyxkaXNhYmxlVmVydGljYWxQYWRkaW5nOigpPT5kPy4oKXx8YigpLmRpc2FibGVWZXJ0aWNhbFBhZGRpbmcsVGk6ZSxLbjpmLGlzT3ZlcmxheTpoLHJoOigpPT4hIV8uc0goYigpLnJlbmRlcmVyQ29udGV4dCksaG92ZXJFZmZlY3RFbmFibGVkOigpPT5iKCkuaG92ZXJFZmZlY3RFbmFibGVkLG9uQ2xpY2s6RT0+Cnt2YXIgQT1fLnNIKGIoKS5yZW5kZXJlckNvbnRleHQpO0EmJl8uYUUoQSx7Zm9ybTp7ZWxlbWVudDpFLnRhcmdldCxldmVudDpFfX0pfSxib3R0b21BY2Nlc3Nvcnk6KCk9Pl8uSyhfLlcse2RhdGE6KCk9PmIoKS5ib3R0b21BY2Nlc3Nvcnl9LHtkZXNjcmlwdGlvblByZXZpZXdWaWV3TW9kZWw6KHtkYXRhOkV9KT0+Xy5LKF8udkwse2RhdGE6RSxYYzohMH0pLGNvbW1vbk1hcmtWaWV3TW9kZWw6KHtkYXRhOkV9KT0+Xy5LKF8uSUIsbnVsbCxfLnkoKS5yZXNvbHZlKF8uSW4oQ2ZhKSk/Lih7ZGF0YTpFfSkpfSksenc6KCk9PiEhYigpLmJvdHRvbUFjY2Vzc29yeSxFczprLGhlYWRsaW5lVHlwb2dyYXBoeVRva2VuOnIsc3VidGl0bGVUeXBvZ3JhcGh5VG9rZW46cCxqcTp0LGZCOnYsSHU6en0pKX0sIndhIik7CnZhciBHZmE9Xy5MKCh7bGVhZGluZ0FjY2Vzc29yeTphfSk9Pl8uSyhfLklCLG51bGwsXy5LKF8uTyx7QTooKT0+YSgpLmltYWdlPz9fLlFGKGEoKS50aGVtZWRJbWFnZSksdGhlbjpiPT5fLksoXy5qRix7ZGF0YTpiLGFsdDoiIixUYTohMCxZYTohMH0pfSksXy5LKF8uTyx7QTooKT0+Xy5CKGEoKS5hdmF0YXIsXy5zTCksdGhlbjpiPT5fLksoXy5TRix7ZGF0YTpifSl9KSksInhhIiksRWZhPV8uTCgoe2RhdGE6YX0pPT5fLksoXy5JQixudWxsLF8uSygic3BhbiIse2NsYXNzOl8uUCh7eXRTZWN0aW9uSGVhZGVyVmlld01vZGVsQmFkZ2VXaXRoTGFiZWw6KCk9PighIWEoKS5ib3R0b21CYWRnZXN8fCEhYSgpLmJvdHRvbUJhZGdlKSYmISFhKCkuc3VibGFiZWx9KX0sXy5LKF8uTyx7QTooKT0+Xy5CKGEoKS5ib3R0b21CYWRnZSxDTCksdGhlbjpiPT5fLksoXy5hRyx7ZGF0YTpifSl9KSxfLksoXy5XLHtkYXRhOigpPT5hKCkuYm90dG9tQmFkZ2VzfSx7YmFkZ2VWaWV3TW9kZWw6KHtkYXRhOmJ9KT0+Cl8uSyhfLmFHLHtkYXRhOmIsY2xhc3M6Xy5QKCJ5dFNlY3Rpb25IZWFkZXJWaWV3TW9kZWxCYWRnZXMiKX0pfSkpLF8uSyhfLk8se0E6KCk9PmEoKS5zdWJsYWJlbCx0aGVuOmI9Pl8uSyhfLlYse3RleHQ6Yn0pfSkpLCJ5YSIpLEZmYT1fLkwoKHtkYXRhOmF9KT0+Xy5LKF8uSUIsbnVsbCxfLksoXy5PLHtBOigpPT5fLkIoYSgpLnRvcEJhZGdlLENMKSx0aGVuOmI9Pl8uSyhfLmFHLHtkYXRhOmIsY2xhc3M6Xy5QKHt5dFNlY3Rpb25IZWFkZXJWaWV3TW9kZWxCYWRnZVdpdGhMYWJlbDooKT0+ISFiKCkmJiEhYSgpLnN1cGVybGFiZWx9KX0pfSksXy5LKF8uTyx7QTooKT0+YSgpLnN1cGVybGFiZWwsdGhlbjpiPT5fLksoXy5WLHt0ZXh0OmJ9KX0pKSwiemEiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5XZCgiY3lDVmxkIik7CgpfLlhkKCk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBOSDtOSD1mdW5jdGlvbigpe307Xy5PSD1mdW5jdGlvbigpe3JldHVybiI6IisoSmRhLmorKykudG9TdHJpbmcoMzYpfTtfLndhKE5IKTtOSC5wcm90b3R5cGUuaj0wO3ZhciBKZGE9TkguamMoKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5GST1uZXcgXy5WcygiU1VCTUlUX0FQSV9TRVJWSUNFX1RPS0VOIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8ua0w9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJvc1R0eGUiKTtyZXR1cm4gXy5BRH07Xy5sTD1fLmNEKCgpPT5fLmtMKCksImJhc2ljQ29udGVudFZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJiYXNpY0NvbnRlbnRWaWV3TW9kZWwiLCJvc1R0eGUiLF8ua0wpfSk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uVEY9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJEbHZGMWQiKTtyZXR1cm4gXy5IRH07Xy5VRj1fLmNEKCgpPT5fLlRGKCksImJ1dHRvblZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJidXR0b25WaWV3TW9kZWwiLCJEbHZGMWQiLF8uVEYpfSk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8ubUw9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJGc29YemMiKTtyZXR1cm4gXy56RH07Xy5uTD1fLmNEKCgpPT5fLm1MKCksImNvbnRlbnRMaXN0SXRlbVZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJjb250ZW50TGlzdEl0ZW1WaWV3TW9kZWwiLCJGc29YemMiLF8ubUwpfSk7Xy5vTD1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoInBlMm9qYiIpO3JldHVybiBfLkNEfTtfLnBMPV8uY0QoKCk9Pl8ub0woKSwibGlzdEl0ZW1WaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigibGlzdEl0ZW1WaWV3TW9kZWwiLCJwZTJvamIiLF8ub0wpfSk7Xy5xTD1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoIlVBTTVtIik7cmV0dXJuIF8ueUR9O18uckw9Xy5jRCgoKT0+Xy5xTCgpLCJsb2NrdXBWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigibG9ja3VwVmlld01vZGVsIiwiVUFNNW0iLF8ucUwpfSk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uRkw9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJWT1VQOWQiKTtyZXR1cm4gXy51RH07Xy5HTD1fLmNEKCgpPT5fLkZMKCksImxpbmVhckxheW91dFZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJsaW5lYXJMYXlvdXRWaWV3TW9kZWwiLCJWT1VQOWQiLF8uRkwpfSk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBLSSxhZWEsJEksYUosYmVhO18uR0k9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYT09PWI/ITA6YT8uZm9ybUlkPT09Yj8uZm9ybUlkJiZhPy5maWVsZElkPT09Yj8uZmllbGRJZH07Xy5IST1mdW5jdGlvbihhKXtyZXR1cm4gRXJyb3IoIm5kYCIrYS5yZXBsYWNlKC9cblxzKi9nLCIgIikpfTtfLklJPWZ1bmN0aW9uKGEpe3JldHVybiBFcnJvcigib2RgIithLnJlcGxhY2UoL1xuXHMqL2csIiAiKSl9O18uSkk9ZnVuY3Rpb24oKXtyZXR1cm57bmo6ITEsZmI6ITAsemQ6ITEsaXNTdWJtaXR0aW5nOiExLGNzOjB9fTtLST1mdW5jdGlvbihhLGIpe3ZhciBjPSEwO2ZvcihsZXQgZCBvZiBPYmplY3Qua2V5cyhhKSl7aWYoZD09PSJmb3JtSWQiKWNvbnRpbnVlO2xldCBlPWFbZF07ZS5raW5kPT09MSYmKEtJKGUudmFsdWUsYil8fChjPSExKSl9YihhLmZvcm1JZCl8fChjPSExKTtyZXR1cm4gY307Cl8uTUk9ZnVuY3Rpb24oYSl7dmFyIGI9TEkuZ2V0KGEpO2lmKGIpcmV0dXJuIGI7Yj1hLnJlcGxhY2UoL18oW2EtekEtWjAtOV0pL2csKGMsZCk9PmQudG9VcHBlckNhc2UoKSk7TEkuc2V0KGEsYik7cmV0dXJuIGJ9O18uT0k9ZnVuY3Rpb24oKXtOST8uKGE9PmErMSl9O18uUkk9ZnVuY3Rpb24oYSl7UEk/UEkoKTooW1BJLCxOSV09Xy5KKDAsdm9pZCAwLCJWeFkwZmIiKSxQSSgpKTtyZXR1cm4gXy5RSS5nZXQoYSl9O18uU0k9ZnVuY3Rpb24oYSxiKXtpZihhKXt2YXIgYz1fLlJJKGEpO2lmKGMpe2lmKGImJmIhPT1jLlVpKXRocm93IF8uSUkoYEZvcm0gdHlwZSBtaXNtYXRjaCBmb3IgZm9ybUlkICR7YX06IHByb3ZpZGVkIGZvcm1UeXBlICIke2J9IiBkb2VzIG5vdCBtYXRjaCBzdG9yZWQgZm9ybVR5cGUgIiR7Yy5VaX0iLmApO3JldHVybiBjLmZvcm19fX07Cl8uVkk9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5SSShhKTtpZighYil0aHJvdyBfLlRJKGEpO2lmKGIuU3A9PT0wKXJldHVybiBiLmZvcm07Yj1iLnBnO2lmKCFiKXRocm93IF8uVUkoYSk7YT1fLlNJKGIuVnopO2lmKCFhKXRocm93IF8uSEkoYEZvcm1JZCAke2IuVnp9IG5vdCBmb3VuZC5gKTtyZXR1cm4gYX07YWVhPWZ1bmN0aW9uKGEpe3RyeXt2YXIgYj1fLlZJKGEpfWNhdGNoKGMpe3JldHVybiExfShhPUtJKGIsYz0+Xy5RSS5kZWxldGUoYykpKSYmXy5PSSgpO3JldHVybiBhfTtfLldJPWZ1bmN0aW9uKGEsYil7aWYoYj09PSJmb3JtSWQiKXRocm93IF8uSUkoIkZpZWxkIGlkIGNhbm5vdCBiZSBmb3JtSWQuIik7aWYoYT1fLlNJKGEpKXJldHVybiBiPV8uTUkoYiksYVtiXX07Xy5YST1mdW5jdGlvbihhKXtpZihhPV8uUkkoYSkpcmV0dXJuIGEuRGx9OwpfLlpJPWZ1bmN0aW9uKGEpe3ZhciBiPV8uTigoKT0+Xy5CdihhKT8/e30se2VxdWFsczpfLkdJfSwiTEROTGJkIiksYz1fLk4oKCk9Pnt2YXIge2Zvcm1JZDpkLGZpZWxkSWQ6ZX09YigpO2lmKGQmJmUpe3ZhciBmO2lmKGY9Xy5XSShkLGUpKXtpZighKCJmdW5jdGlvbiI9PXR5cGVvZiBfLllJJiZmIGluc3RhbmNlb2YgXy5ZSSkpdGhyb3cgXy5JSShgRmllbGQgJHtlfSBpbiBmb3JtICR7ZH0gaXMgbm90IGEgU2NhbGFyRmllbGQuYCk7fWVsc2UgZj12b2lkIDA7cmV0dXJuIGZ9fSx2b2lkIDAsIm84bzAwZCIpO3JldHVybigpPT5jKCl9OyRJPWZ1bmN0aW9uKGEsYil7dmFyIGM9KGM9Xy5SSShhKSk/Yy5Dbjp2b2lkIDA7aWYoIWMpdGhyb3cgXy5ISShgTWlzc2luZyB0b0Zvcm1EYXRhIGZ1bmN0aW9uIGZvciBGb3JtSWQgJHthfS5gKTtyZXR1cm4gYyhiKX07CmFKPWZ1bmN0aW9uKGEsYil7dmFyIGM9KGM9Xy5SSShhKSk/Yy5DbDp2b2lkIDA7aWYoIWMpdGhyb3cgXy5ISShgTWlzc2luZyBmb3JtRGF0YUV4dGVuc2lvbkZpZWxkIGZvciBGb3JtSWQgJHthfS5gKTtyZXR1cm57W2NdOmJ9fTsKYmVhPWFzeW5jIGZ1bmN0aW9uKGEpe3ZhciBiPV8uVkkoYSksYz1fLlhJKGEpO3ZhciBkPShkPV8uUkkoYSkpP2Quc3VibWl0Q29uZmlnOnZvaWQgMDt2YXIgZT1fLnkoKS5yZXNvbHZlKF8uSW4oXy5GSSkpLGY9Xy5SSShhKTtmJiYoZi5aZD17Li4uZi5aZCxpc1N1Ym1pdHRpbmc6ITB9LF8uT0koKSk7dHJ5e2lmKGQmJmUpe2xldCBrPSRJKGEsYik7dmFyIGg9YUooYSxrKTtsZXQgbD1hd2FpdCBlLmJpKGQuc3VibWl0SWQsaCx7c3VibWl0QWN0aW9uOiJTVUJNSVRfQUNUSU9OX1NVQk1JU1NJT04iLGFsbEZpZWxkczohMH0sZC5wYXJhbXMsZC5jbGlja1RyYWNraW5nUGFyYW1zKTtpZihsLnN1Ym1pdEVycm9yKXRocm93IGJKKGwuc3VibWl0RXJyb3IpO2F3YWl0IGM/LkhtPy4obCl9ZWxzZSBhd2FpdCBjPy5vblN1Ym1pdD8uKGIpfWNhdGNoKGspe3JldHVybiBrIGluc3RhbmNlb2YgRXJyb3I/UHJvbWlzZS5yZWplY3Qoayk6UHJvbWlzZS5yZWplY3QoYkooaykpfWZpbmFsbHl7aWYoYT0KXy5SSShhKSlhLlpkPXsuLi5hLlpkLGlzU3VibWl0dGluZzohMSxjczphLlpkLmNzKzF9LF8uT0koKX19O18uY0o9ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLk4oKCk9Pl8uQnYoYSk/PyIiLHZvaWQgMCwiR1JtcHIiKSxkPV8uTigoKT0+Xy5TSShjKCksYiksdm9pZCAwLCJwYlRlQmIiKSxlPV8uTigoKT0+e3ZhciBoPWMoKTtyZXR1cm4oaD1fLlJJKGgpKT9oLlpkOl8uSkkoKX0sdm9pZCAwLCJ1Y3Y2TGIiKSxmPV8uTigoKT0+e3ZhciBoPWQoKTtpZighaClyZXR1cm57Zm9ybURhdGE6dm9pZCAwLGV3OnZvaWQgMH07aD0kSShjKCksaCk7cmV0dXJue2Zvcm1EYXRhOmgsZXc6YUooYygpLGgpfX0sdm9pZCAwLCJoSDYxcWMiKTtyZXR1cm57Zm9ybTooKT0+ZCgpLGRhdGE6KCk9PmYoKSxzdGF0ZTooKT0+ZSgpLHN1Ym1pdDphc3luYygpPT57YXdhaXQgYmVhKGMoKSl9LGRpc3Bvc2U6KCk9PmFlYShjKCkpfX07Xy5kSj1TeW1ib2woImRkIik7dmFyIGJKO18uVEk9YT0+Xy5ISShgRm9ybSBzZXNzaW9uIGZvciBGb3JtSWQgJHthfSBub3QgZm91bmQuYCk7Xy5VST1hPT5fLkhJKGBOZXN0ZWQgZm9ybSBhY2Nlc3NvciBmb3IgRm9ybUlkICR7YX0gbm90IGZvdW5kLmApO2JKPWE9Pl8uSUkoYFVua25vd24gZXJyb3IgZHVyaW5nIGZvcm0gc3VibWlzc2lvbjogJHtKU09OLnN0cmluZ2lmeShhKX1gKTt2YXIgTEk9bmV3IE1hcDt2YXIgUEksTkk7Xy5RST1uZXcgTWFwOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgSGZhPWZ1bmN0aW9uKGEpe3N3aXRjaChhKXtjYXNlICJDQVJEX1NUWUxFX09VVExJTkUiOnJldHVybiJ5dENhcmRWaWV3TW9kZWxPdXRsaW5lIjtjYXNlICJDQVJEX1NUWUxFX1RPTkFMIjpyZXR1cm4ieXRDYXJkVmlld01vZGVsVG9uYWwiO2Nhc2UgIkNBUkRfU1RZTEVfSU5WRVJTRSI6cmV0dXJuInl0Q2FyZFZpZXdNb2RlbEludmVydGVkIjtkZWZhdWx0OnJldHVybiJ5dENhcmRWaWV3TW9kZWxSYWlzZWQifX07dmFyIEhMPW5ldyBfLkkoInNlY3Rpb25IZWFkZXJWaWV3TW9kZWwiKTt2YXIgSWZhO18uSUw9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJWYlhyVWUiKTtyZXR1cm4gXy5oSH07SWZhPV8uY0QoKCk9Pl8uSUwoKSwiY29udmVyc2F0aW9uVmlkZW9JZGVhQ2FyZFZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJjb252ZXJzYXRpb25WaWRlb0lkZWFDYXJkVmlld01vZGVsIiwiVmJYclVlIixfLklMKX0pO3ZhciBKZmE7Xy5KTD1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoInBFU2xEYiIpO3JldHVybiBfLmVGfTtKZmE9Xy5jRCgoKT0+Xy5KTCgpLCJ0aGVtZWRJbWFnZVZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJ0aGVtZWRJbWFnZVZpZXdNb2RlbCIsInBFU2xEYiIsXy5KTCl9KTt2YXIgS2ZhPW5ldyBfLlZzKCJBU0tfU1RVRElPX0NBUkRfVklFV19NT0RFTF9UT0tFTiIpO3ZhciBMZmE9bmV3IF8uVnMoIkFTS19TVFVESU9fVklERU9fRURJVF9QUkVWSUVXX1ZJRVdfTU9ERUxfVE9LRU4iKTt2YXIgTWZhPW5ldyBfLlZzKCJBVURJRU5DRV9PTkxJTkVfSEVBVE1BUF9WSUVXX01PREVMX1RPS0VOIik7dmFyIE5mYT1uZXcgXy5WcygiQ09NTUVOVFNfRElHRVNUX0NPTlRFTlRfVklFV19NT0RFTF9UT0tFTiIpO3ZhciBPZmE9bmV3IF8uVnMoIlBSSU1FVElNRV9PRkZFUklOR19JTl9SRVZJRVdfQ0FSRF9DT05URU5UX1ZJRVdfTU9ERUxfVE9LRU4iKTt2YXIgUGZhPW5ldyBfLlZzKCJZVENQX0ZVTk5FTF9WSUVXX01PREVMX1RPS0VOIik7dmFyIFFmYTtfLktMPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgicVZEZ0JkIik7cmV0dXJuIF8uZEZ9O1FmYT1fLmNEKCgpPT5fLktMKCksImNpbmVtYXRpY0NvbnRhaW5lclZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJjaW5lbWF0aWNDb250YWluZXJWaWV3TW9kZWwiLCJxVkRnQmQiLF8uS0wpfSk7dmFyIFJmYTtfLkxMPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgiaTZYb21lIik7cmV0dXJuIF8uUEZ9O1JmYT1fLmNEKCgpPT5fLkxMKCksInJhZGlvQnV0dG9uSXRlbVZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJyYWRpb0J1dHRvbkl0ZW1WaWV3TW9kZWwiLCJpNlhvbWUiLF8uTEwpfSk7dmFyIFNmYTtfLk1MPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgiYnpqMGpkIik7cmV0dXJuIF8udEx9O1NmYT1fLmNEKCgpPT5fLk1MKCksImlubGluZUV4cGFuZGVyVmlld01vZGVsIik7Xy5ZdChfLkpELGE9PnthLkooImlubGluZUV4cGFuZGVyVmlld01vZGVsIiwiYnpqMGpkIixfLk1MKX0pO3ZhciBUZmE7Xy5OTD1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoIkZpTkdPYyIpO3JldHVybiBfLmdIfTtUZmE9Xy5jRCgoKT0+Xy5OTCgpLCJkaXNtaXNzaWJsZUl0ZW0iKTtfLll0KF8uSkQsYT0+e2EuSigiZGlzbWlzc2libGVJdGVtIiwiRmlOR09jIixfLk5MKX0pO3ZhciBVZmE9bmV3IF8uVnMoIkNPTlRFTlRfU0VDVElPTl9WSUVXX01PREVMX1RPS0VOIik7dmFyIFZmYTtfLk9MPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgidVJJYUMiKTtyZXR1cm4gXy5CSH07VmZhPV8uY0QoKCk9Pl8uT0woKSwiY2hhbm5lbEF0dHJpYnV0aW9uVmlld01vZGVsIik7Xy5ZdChfLkpELGE9PnthLkooImNoYW5uZWxBdHRyaWJ1dGlvblZpZXdNb2RlbCIsInVSSWFDIixfLk9MKX0pO3ZhciBQTD1fLkwoYT0+e3ZhciBiPV8uUUgoKCk9PmEuZGF0YSgpLnRvcENvbnRlbnRQYWRkaW5nVG9rZW4pLGM9Xy5RSCgoKT0+YS5kYXRhKCkuYm9keUNvbnRlbnRQYWRkaW5nVmFsdWVzPy50b3BQYWRkaW5nVG9rZW58fGEuZGF0YSgpLmJvZHlDb250ZW50UGFkZGluZ1Rva2VuKSxkPV8uUUgoKCk9PmEuZGF0YSgpLmJvZHlDb250ZW50UGFkZGluZ1ZhbHVlcz8uYm90dG9tUGFkZGluZ1Rva2VufHxhLmRhdGEoKS5ib2R5Q29udGVudFBhZGRpbmdUb2tlbiksZT1fLlFIKCgpPT5hLmRhdGEoKS5ib2R5Q29udGVudFBhZGRpbmdWYWx1ZXM/Lmhvcml6b250YWxQYWRkaW5nVG9rZW58fGEuZGF0YSgpLmJvZHlDb250ZW50UGFkZGluZ1Rva2VuKSxmPSgpPT5hLmRhdGEoKS5iYWNrZ3JvdW5kLGg9KCk9PmEuZGF0YSgpLnRyYWlsaW5nQWN0aW9uTGF5b3V0PT09IkNBUkRfVFJBSUxJTkdfQUNUSU9OX0xBWU9VVF9PVkVSTEFZIixrPSgpPT5hLmRhdGEoKS50cmFpbGluZ0FjdGlvbkxheW91dD09PQoiQ0FSRF9UUkFJTElOR19BQ1RJT05fTEFZT1VUX0lOTElORV9DRU5URVIiLGw9Xy55KCkucmVzb2x2ZShfLkluKFVmYSkpLG09Xy55KCkucmVzb2x2ZShfLkluKEtmYSkpLG49Xy55KCkucmVzb2x2ZShfLkluKExmYSkpLHA9Xy55KCkucmVzb2x2ZShfLkluKE5mYSkpLHI9Xy55KCkucmVzb2x2ZShfLkluKE1mYSkpLHQ9Xy55KCkucmVzb2x2ZShfLkluKFBmYSkpLHY9Xy55KCkucmVzb2x2ZShfLkluKE9mYSkpLHo9KCk9PmEuZGF0YSgpLmNhcmRTdGF0ZT8uZW5hYmxlbWVudFN0YXRlPT09IkNBUkRfRU5BQkxFTUVOVF9TVEFURV9ESVNBQkxFRCIsRT0oKT0+IXooKSYmXy50SChhLmRhdGEoKS5yZW5kZXJlckNvbnRleHQpLEE9KCk9PntpZihhLmlzRXhwYW5kZWQ/LigpIT09dm9pZCAwKXJldHVybiBhLmlzRXhwYW5kZWQ/LigpO3N3aXRjaChhLmRhdGEoKS5jYXJkU3RhdGU/LmV4cGFuc2lvblN0YXRlKXtjYXNlICJDQVJEX0VYUEFOU0lPTl9TVEFURV9FWFBBTkRFRCI6cmV0dXJuITA7CmNhc2UgIkNBUkRfRVhQQU5TSU9OX1NUQVRFX0NPTExBUFNFRCI6cmV0dXJuITE7ZGVmYXVsdDpyZXR1cm4gYS5pc1NlbGVjdGVkPy4oKX19O3JldHVybiBfLksoInl0LWNhcmQtdmlldy1tb2RlbCIse2NsYXNzOl8uUCgieXRDYXJkVmlld01vZGVsSG9zdCIsYS5jbGFzc05hbWUpfSxfLksoVGZhLHtjb250ZW50SWQ6KCk9PmEuZGF0YSgpLmNvbnRlbnRJZH0sKCk9Pl8uSygiZGl2Iix7ZWw6Xy5yRihfLnVIKCgpPT5FKCk/YS5kYXRhKCkucmVuZGVyZXJDb250ZXh0OnZvaWQgMCx2b2lkIDAsdm9pZCAwLFsiQSIudG9TdHJpbmcoKSwiQlVUVE9OIi50b1N0cmluZygpLC4uLihfLngoIldlYkZFQWxsU3R1ZGlvQnlDaGFubmVsX19lbmFibGVfYW5hbHl0aWNzX2h1Yl93ZWIiKT9bIllULUxJU1QtSVRFTS1WSUVXLU1PREVMIl06W10pXSkpLGNsYXNzOl8uUCgieXRDYXJkVmlld01vZGVsQ2FyZFZpZXdNb2RlbElubmVyIix7eXRDYXJkVmlld01vZGVsQ2xpY2thYmxlOkV9LCgpPT5IZmEoYS5kYXRhKCkuY2FyZFN0eWxlKSwKe3l0Q2FyZFZpZXdNb2RlbENhcmRTZWxlY3RlZDooKT0+ISFhLmlzU2VsZWN0ZWQ/LigpfSwoKT0+e2lmKGEuaXNTZWxlY3RlZD8uKCk9PT12b2lkIDApe2E6e3N3aXRjaChhLmRhdGEoKS5jYXJkU3RhdGU/LnNlbGVjdGlvblN0YXRlKXtjYXNlICJDQVJEX1NFTEVDVElPTl9TVEFURV9TRUxFQ1RFRCI6dmFyIEY9Inl0Q2FyZFZpZXdNb2RlbFNlbGVjdGVkIjticmVhayBhfUY9dm9pZCAwfXJldHVybiBGfX0pLHJvbGU6KCk9PkUoKSYmIV8uQihhLmRhdGEoKS50b3BDb250ZW50LEhMKT8iYnV0dG9uIjp2b2lkIDAsImFyaWEtZGlzYWJsZWQiOnosdGFiaW5kZXg6KCk9PnooKT8tMTpFKCkmJiFfLkIoYS5kYXRhKCkudG9wQ29udGVudCxITCk/MDp2b2lkIDB9LF8uSyhfLlcse2RhdGE6Zix3cmFwcGVyOkY9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0Q2FyZFZpZXdNb2RlbEJhY2tncm91bmRXcmFwcGVyIn0sRigpKX0se2NpbmVtYXRpY0NvbnRhaW5lclZpZXdNb2RlbDpRZmEsdGhlbWVkSW1hZ2VWaWV3TW9kZWw6KHtkYXRhOkZ9KT0+Cl8uSyhKZmEse2RhdGE6RixjbGFzc05hbWU6Inl0Q2FyZFZpZXdNb2RlbEJhY2tncm91bmQifSl9KSxfLksoImRpdiIse2NsYXNzOiJ5dENhcmRWaWV3TW9kZWxDb250ZW50V3JhcHBlciJ9LF8uSyhfLk8se0E6KCk9PiFoKCksdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRDYXJkVmlld01vZGVsVG9wQ29udGVudENvbnRhaW5lciJ9LF8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJ5dENhcmRWaWV3TW9kZWxUb3BDb250ZW50Iix7eXRDYXJkVmlld01vZGVsVG9wQ29udGVudFBhZGRpbmc6KCk9PiFhLmRhdGEoKS5kaXNhYmxlVG9wQ29udGVudFBhZGRpbmcmJmEuZGF0YSgpLnRvcENvbnRlbnR9KSxzdHlsZTpfLklFKHtwYWRkaW5nOmJ9KX0sXy5LKF8uVyx7ZGF0YTooKT0+YS5kYXRhKCkudG9wQ29udGVudH0se2NvbnRlbnRMaXN0SXRlbVZpZXdNb2RlbDpfLm5MLGJhc2ljQ29udGVudFZpZXdNb2RlbDpfLmxMLGxpbmVhckxheW91dFZpZXdNb2RlbDpfLkdMLGxpc3RJdGVtVmlld01vZGVsOl8ucEwsCnNlY3Rpb25IZWFkZXJWaWV3TW9kZWw6Xy52RH0pKSxfLksoImRpdiIse2NsYXNzOl8uUCgieXRDYXJkVmlld01vZGVsSW5saW5lVHJhaWxpbmdBY3Rpb24iLHt5dENhcmRWaWV3TW9kZWxJbmxpbmVDZW50ZXJUcmFpbGluZ0FjdGlvbjprLHl0Q2FyZFZpZXdNb2RlbElubGluZVRyYWlsaW5nQWN0aW9uTWFyZ2luOigpPT5hLmRhdGEoKS50cmFpbGluZ0FjdGlvbn0pfSxfLksoXy5XLHtkYXRhOigpPT5hLmRhdGEoKS50cmFpbGluZ0FjdGlvbn0se2J1dHRvblZpZXdNb2RlbDpfLlVGfSkpKX0pLF8uSygiZGl2Iix7Y2xhc3M6Xy5QKHt5dENhcmRWaWV3TW9kZWxCb3R0b21Db250ZW50UGFkZGluZzooKT0+IWEuZGF0YSgpLmRpc2FibGVCb2R5Q29udGVudFBhZGRpbmcmJmEuZGF0YSgpLmJvZHlDb250ZW50fSksc3R5bGU6Xy5JRSh7InBhZGRpbmctdG9wIjpjLCJwYWRkaW5nLWJvdHRvbSI6ZCwicGFkZGluZy1sZWZ0IjplLCJwYWRkaW5nLXJpZ2h0IjplfSl9LF8uSyhfLlcse2RhdGE6KCk9PgphLmRhdGEoKS5ib2R5Q29udGVudH0se2Jhc2ljQ29udGVudFZpZXdNb2RlbDpfLmxMLGNoYW5uZWxBdHRyaWJ1dGlvblZpZXdNb2RlbDpWZmEsY29udGVudEluc3BpcmF0aW9uQ29udmVyc2F0aW9uVmlkZW9JZGVhQ2FyZFZpZXdNb2RlbDpJZmEsY29udGVudExpc3RJdGVtVmlld01vZGVsOl8ubkwsZGVzY3JpcHRpb25QcmV2aWV3Vmlld01vZGVsOl8udkwsaW5saW5lRXhwYW5kZXJWaWV3TW9kZWw6KHtkYXRhOkZ9KT0+Xy5LKFNmYSx7ZGF0YTpGLGlzU2VsZWN0ZWQ6QX0pLGxpbmVhckxheW91dFZpZXdNb2RlbDpfLkdMLGxpc3RJdGVtVmlld01vZGVsOl8ucEwsbG9ja3VwVmlld01vZGVsOih7ZGF0YTpGfSk9Pl8uSyhfLnJMLHtkYXRhOkYsd3E6ITB9KSwuLi4obSYme2Fza1N0dWRpb0NhcmRWaWV3TW9kZWw6bX0pLC4uLihuJiZ7YXNrU3R1ZGlvVmlkZW9FZGl0UHJldmlld1ZpZXdNb2RlbDpufSksLi4uKHImJnthdWRpZW5jZU9ubGluZUhlYXRtYXBWaWV3TW9kZWw6cn0pLC4uLihwJiYKe2NvbW1lbnRzRGlnZXN0Q29udGVudFZpZXdNb2RlbDpwfSksLi4uKGwmJntjb250ZW50U2VjdGlvblZpZXdNb2RlbDpsfSksLi4uKHYmJntwcmltZXRpbWVPZmZlcmluZ0luUmV2aWV3Q2FyZENvbnRlbnRWaWV3TW9kZWw6dn0pLC4uLih0JiZ7ZnVubmVsVmlld01vZGVsOnR9KX0pKSksXy5LKF8uTyx7QTooKT0+aCgpLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0Q2FyZFZpZXdNb2RlbE92ZXJsYXlUcmFpbGluZ0FjdGlvbiJ9LF8uSyhfLlcse2RhdGE6KCk9PmEuZGF0YSgpLnRyYWlsaW5nQWN0aW9ufSx7YnV0dG9uVmlld01vZGVsOl8uVUZ9KSl9KSxfLksoXy5PLHtBOnosdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRDYXJkVmlld01vZGVsRGlzYWJsZWRPdmVybGF5IiwiYXJpYS1oaWRkZW4iOiJ0cnVlIn0pfSkpKSl9LCJBYSIpO3ZhciBXZmE9WyJBIi50b1N0cmluZygpLCJCVVRUT04iLnRvU3RyaW5nKCldLFhmYT1fLkwoYT0+e2Z1bmN0aW9uIGIoSCl7ZSgpLmlzRGlzYWJsZWR8fChmP2YoSC50YXJnZXQsZSgpLGs/LigpKTpBKCFFKCkpKX1mdW5jdGlvbiBjKEgpe0gua2V5PT09IiAiJiYoSC5wcmV2ZW50RGVmYXVsdCgpLEgudGFyZ2V0LmNsaWNrKCkpfXZhciBkPV8ueCgiZW5hYmxlX25hdGl2ZV9pbnB1dF9zZWxlY3RhYmxlX2l0ZW0iKSxlPWEuZGF0YSxmPWEub25TZWxlY3RlZCxoPWEuU2gsaz1hLmdyb3VwTmFtZSxsPWEuY2xhc3NOYW1lLG09YS5yb2xlLG49InJhZGlvIitfLk9IKCkscD1fLlFIKCgpPT5lKCkudmVydGljYWxQYWRkaW5nVG9rZW4pLHI9Xy5RSCgoKT0+ZSgpLmhvcml6b250YWxQYWRkaW5nVG9rZW4pLHQ9KCk9PmUoKS5jb250ZW50LFt2LHpdPV8uSighMSx2b2lkIDAsIlVtN0ZnYyIpLEU9dixBPXosRj0oKT0+ISFlKCkuaXNEaXNhYmxlZCxDPSgpPT57aWYoaCE9PXZvaWQgMCl7bGV0IEg9CmgoKTtyZXR1cm4hKCFIfHxlKCkua2V5IT09SCl9cmV0dXJuIEUoKX0sRz0oKT0+aCE9PXZvaWQgMCYmZSgpLmJlaGF2aW9yPT09IlNFTEVDVEFCTEVfSVRFTV9CRUhBVklPUl9FWFBBTkRFRF9OT1RfU0VMRUNURUQiPyExOkMoKSxEPSgpPT57aWYoaCE9PXZvaWQgMCYmQygpKXN3aXRjaChlKCkuYmVoYXZpb3Ipe2Nhc2UgIlNFTEVDVEFCTEVfSVRFTV9CRUhBVklPUl9TRUxFQ1RFRF9OT1RfRVhQQU5ERUQiOnJldHVybiExO2Nhc2UgIlNFTEVDVEFCTEVfSVRFTV9CRUhBVklPUl9FWFBBTkRFRF9OT1RfU0VMRUNURUQiOnJldHVybiEwfX07cmV0dXJuIGQ/Xy5LKCJ5dC1zZWxlY3RhYmxlLWl0ZW0tdmlldy1tb2RlbCIse3N0eWxlOl8uSUUoeyJwYWRkaW5nLXRvcCI6cCwicGFkZGluZy1ib3R0b20iOnAsInBhZGRpbmctbGVmdCI6ciwicGFkZGluZy1yaWdodCI6cn0pLGNsYXNzOl8uUCgieXRTZWxlY3RhYmxlSXRlbVZpZXdNb2RlbEhvc3QiLGwsInl0U2VsZWN0YWJsZUl0ZW1WaWV3TW9kZWxDb250YWluZXIiLAoieXRTZWxlY3RhYmxlSXRlbVZpZXdNb2RlbE5hdGl2ZUNvbnRhaW5lciIse3l0U2VsZWN0YWJsZUl0ZW1WaWV3TW9kZWxEaXNhYmxlZDpGfSksInByb3A6Y2hlY2tlZCI6R30sXy5LKCJpbnB1dCIse2lkOm4sdHlwZToicmFkaW8iLG5hbWU6YS5ncm91cE5hbWUsInByb3A6Y2hlY2tlZCI6RyxkaXNhYmxlZDpGLCJvbjpjbGljayI6Yiwib246a2V5ZG93biI6YyxjbGFzczoieXRTZWxlY3RhYmxlSXRlbVZpZXdNb2RlbE5hdGl2ZVJhZGlvQnV0dG9uIn0pLF8uSygibGFiZWwiLHtmb3I6bixjbGFzczoieXRTZWxlY3RhYmxlSXRlbVZpZXdNb2RlbE5hdGl2ZUxhYmVsIiwib246a2V5ZG93biI6Y30sXy5LKF8uVyx7ZGF0YTp0fSx7Y2FyZFZpZXdNb2RlbDooe2RhdGE6SH0pPT5fLksoUEwse2RhdGE6SCxpc1NlbGVjdGVkOkcsaXNFeHBhbmRlZDpEfSl9KSkpOl8uSygieXQtc2VsZWN0YWJsZS1pdGVtLXZpZXctbW9kZWwiLHtzdHlsZTpfLklFKHsicGFkZGluZy10b3AiOnAsInBhZGRpbmctYm90dG9tIjpwLAoicGFkZGluZy1sZWZ0IjpyLCJwYWRkaW5nLXJpZ2h0IjpyfSksImFyaWEtY2hlY2tlZCI6RyxjbGFzczpfLlAoInl0U2VsZWN0YWJsZUl0ZW1WaWV3TW9kZWxIb3N0IixsLCJ5dFNlbGVjdGFibGVJdGVtVmlld01vZGVsQ29udGFpbmVyIix7eXRTZWxlY3RhYmxlSXRlbVZpZXdNb2RlbERpc2FibGVkOkZ9KSwib246Y2xpY2siOmZ1bmN0aW9uKEgpe2lmKCFlKCkuaXNEaXNhYmxlZCl7dmFyIFI9SC5jdXJyZW50VGFyZ2V0O2lmKF8ueCgid2ViX3NlbGVjdGFibGVfaXRlbV9jaGlsZF90YXBfa2lsbF9zd2l0Y2giKSlSPSExO2Vsc2V7dmFyIE09Xy5xSChIKTtSPV8uckgoTSxSLFdmYSl9Unx8KGY/ZihILmN1cnJlbnRUYXJnZXQsZSgpLGs/LigpKTpBKCFFKCkpKX19LCJwcm9wOmNoZWNrZWQiOkcscm9sZTptLCJhcmlhLWRpc2FibGVkIjpGLHRhYmluZGV4OjB9LF8uSyhfLlcse2RhdGE6dH0se2NhcmRWaWV3TW9kZWw6KHtkYXRhOkh9KT0+Xy5LKFBMLHtkYXRhOkgsaXNTZWxlY3RlZDpHLAppc0V4cGFuZGVkOkR9KX0pKX0sIkJhIik7Xy5FTD1fLkwoYT0+e2Z1bmN0aW9uIGIoeixFLEEpe3ZhciBGPWMoKS5mb3JtRmllbGRNZXRhZGF0YSYmbSgpIT09dm9pZCAwPzM6ZCgpPzI6MTtGPT09MSYmRS5rZXkhPW51bGwmJnQoRS5rZXkpO0Y9PT0zJiZFLmtleSE9bnVsbCYmbSgpPy51cGRhdGVWYWx1ZShFLmtleSk7ZT8uKHosRSxBKX12YXIge2RhdGE6YyxXYjpkLG9uU2VsZWN0ZWQ6ZSxTaDpmLGdyb3VwTmFtZTpoLGNsYXNzTmFtZTprLG5hOmx9PV8uREMoYSx7V2I6ITB9KSxtPV8uWkkoKCk9PmMoKS5mb3JtRmllbGRNZXRhZGF0YSksbj0oKT0+aD8uKCl8fGMoKS5rZXksW3Ascl09Xy5BQygoKT0+YygpLmRlZmF1bHRTZWxlY3RlZEtleSksdD1yLHY9KCk9PihjKCkuZm9ybUZpZWxkTWV0YWRhdGEmJm0oKSE9PXZvaWQgMD8zOmQoKT8yOjEpPT09Mz9tKCk/LnZhbHVlOmQoKT9mPy4oKTpwKCk7cmV0dXJuIF8uSygieXQtcmFkaW8tYnV0dG9uLWdyb3VwLXZpZXctbW9kZWwiLHtjbGFzczpfLlAoInl0UmFkaW9CdXR0b25Hcm91cFZpZXdNb2RlbEhvc3QiLAprKX0sXy5LKCJmaWVsZHNldCIse2NsYXNzOiJ5dFJhZGlvQnV0dG9uR3JvdXBWaWV3TW9kZWxGaWVsZHNldCIscm9sZToicmFkaW9ncm91cCIsImFyaWEtaW52YWxpZCI6KCk9PiEhbSgpPy5lcnJvcnM/LlswXSwiYXJpYS1kZXNjcmliZWRieSI6KCk9Pm0oKT8uZXJyb3JzPy5bMF0/YGVycm9yLSR7YygpLmtleX1gOnZvaWQgMH0sXy5LKF8uVyx7ZGF0YTooKT0+YygpLnJhZGlvQnV0dG9uc30se3JhZGlvQnV0dG9uSXRlbVZpZXdNb2RlbDooe2RhdGE6en0pPT5fLksoUmZhLHtkYXRhOnosb25TZWxlY3RlZDpiLFNoOnYsZ3JvdXBOYW1lOm4sbmE6bH0pLHNlbGVjdGFibGVJdGVtVmlld01vZGVsOih7ZGF0YTp6fSk9Pl8uSyhYZmEse2RhdGE6eixvblNlbGVjdGVkOmIsU2g6dixncm91cE5hbWU6bixyb2xlOiJyYWRpbyJ9KX0pKSxfLksoXy5PLHtBOigpPT5tKCk/LmVycm9ycz8uWzBdLHRoZW46ej0+Xy5LKCJkaXYiLHtpZDooKT0+YGVycm9yLSR7YygpLmtleX1gLGNsYXNzOiJ5dFJhZGlvQnV0dG9uR3JvdXBWaWV3TW9kZWxFcnJvciJ9LAooKT0+eigpLm1lc3NhZ2UpfSkpfSwiQ2EiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5XZCgiZDJMVHhiIik7CgpfLlhkKCk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uQUU9Xy5MKCh7bmFtZTphLG9uQ2hhbmdlOmIsb25DbGljazpjLGNoZWNrZWQ6ZCxZZTplLGhrOmYsWWk6aCxxajprLG5hOmwsVmM6bSxhcmlhTGFiZWw6bixjbGFzc05hbWU6cCxkaXNhYmxlZDpyLGhvcml6b250YWxQYWRkaW5nOnQsdmVydGljYWxQYWRkaW5nOnZ9KT0+e3ZhciB6PSJyYWRpbyIrXy5PSCgpLEU9Xy51RSgiaW5wdXQiKSxBPV8ueCgiZW5hYmxlX2lvc193ZWJ2aWV3X3JhZGlvX2J1dHRvbl9yZXNwb25zaXZlbmVzcyIpLFtGLENdPV8uSighMSx2b2lkIDAsImZMclg2ZCIpO3JldHVybiBfLksoInJhZGlvLXNoYXBlIix7Y2xhc3M6Xy5QKCJ5dFJhZGlvU2hhcGVIb3N0IixwKX0sXy5LKCJpbnB1dCIse2VsOkUsY2xhc3M6Xy5QKCJ5dFJhZGlvU2hhcGVJbnB1dCIse3l0UmFkaW9TaGFwZVRhcHBhYmxlOigpPT4oISFifHwhIWMpJiYhcj8uKCl9KSxpZDp6LCJwcm9wOmNoZWNrZWQiOmQsbmFtZTphLHR5cGU6InJhZGlvIixkaXNhYmxlZDpyLCJvbjpjaGFuZ2UiOmZ1bmN0aW9uKEcpe0UudmFsdWUuY2hlY2tlZD0KISFkPy4oKTtiPy4oRyk7Ry5zdG9wUHJvcGFnYXRpb24oKX0sIm9uOmNsaWNrIjpmdW5jdGlvbihHKXtjPy4oRyk7Ry5zdG9wUHJvcGFnYXRpb24oKX0sImFyaWEtbGFiZWwiOm4sIm9uOmZvY3VzaW4iOmZ1bmN0aW9uKCl7Xy55KCkucmVzb2x2ZShfLkluKF8uakgpKT8uWGUoKSYmQyghMCl9LCJvbjpmb2N1c291dCI6ZnVuY3Rpb24oKXtDKCExKX19KSxfLksoImxhYmVsIix7Y2xhc3M6Xy5QKCJ5dFJhZGlvU2hhcGVMYWJlbENvbnRhaW5lciIsayx7eXRSYWRpb1NoYXBlQ29tcGFjdDpsLHl0UmFkaW9TaGFwZUtleWJvYXJkRm9jdXNlZDpGLHl0UmFkaW9TaGFwZVRhcHBhYmxlOigpPT4oISFifHwhIWMpJiYhcj8uKCkseXRSYWRpb1NoYXBlRGlzYWJsZWQ6cn0pLGZvcjp6fSxfLksoXy5PLHtBOigpPT4haD8uKCksdGhlbjooKT0+Xy5LKFNILHtjaGVja2VkOmQsaGs6ZixnZzohMCxWYzptLERzOkF9KX0pLF8uSyhfLk8se0E6KCk9PiEhZSx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOl8uUCgieXRSYWRpb1NoYXBlTGFiZWwiLAp7eXRSYWRpb1NoYXBlRXZlbnRQYXNzdGhyb3VnaDpBfSksImFyaWEtaGlkZGVuIjooKT0+ISFuPy4oKSxzdHlsZTpfLklFKHsicGFkZGluZy1sZWZ0Ijp0LCJwYWRkaW5nLXJpZ2h0Ijp0LCJwYWRkaW5nLXRvcCI6diwicGFkZGluZy1ib3R0b20iOnZ9KX0sZT8uKCkpfSksXy5LKF8uTyx7QTpoLHRoZW46KCk9Pl8uSyhTSCx7Y2hlY2tlZDpkLGhrOmYsZ2c6ITEsVmM6bSxEczpBfSl9KSkpfSwidyIpO18uQUUuaWRvbUNvbXBhdD17Y2FsbGJhY2tzOntvbkNoYW5nZTohMCxvbkNsaWNrOiEwLFllOiEwfX07CnZhciBTSD1fLkwoKHtoazphLFZjOmIsRHM6Y30pPT57dmFyIGQ9Xy54KCJlbmFibGVfd2ViX2RlbGhpX2ljb25zIik/IkNJUkNMRV9GVUxMIjoiQ0lSQ0xFIjtyZXR1cm4gXy5LKCJkaXYiLHtjbGFzczpfLlAoInl0UmFkaW9TaGFwZVJhZGlvIixiLHt5dFJhZGlvU2hhcGVDaGVja0ljb246YSx5dFJhZGlvU2hhcGVSYWRpb0RlZmF1bHRTdHlsZTooKT0+IWI/LigpLHl0UmFkaW9TaGFwZUV2ZW50UGFzc3Rocm91Z2g6Y30pLCJhcmlhLWhpZGRlbiI6InRydWUifSxfLksoXy5NRCx7aWNvbjooKT0+YT8uKCk/IkNIRUNLIjoiQ0lSQ0xFIn0pLF8uSyhfLk1ELHtpY29uOigpPT5hPy4oKT8iQ0hFQ0siOmQsYWN0aXZlOigpPT4hYT8uKCl9KSl9LCJ4Iik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uV2QoInpDa0tCYyIpOwoKXy5YZCgpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLlZGPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgiYWNGdVZjIik7cmV0dXJuIF8uR0R9O18uV0Y9Xy5jRCgoKT0+Xy5WRigpLCJjb2xsZWN0aW9uVGh1bWJuYWlsVmlld01vZGVsIik7Xy5ZdChfLkpELGE9PnthLkooImNvbGxlY3Rpb25UaHVtYm5haWxWaWV3TW9kZWwiLCJhY0Z1VmMiLF8uVkYpfSk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uWUY9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJmOTB0Q2IiKTtyZXR1cm4gXy5GRH07Xy5aRj1fLmNEKCgpPT5fLllGKCksInRvZ2dsZUJ1dHRvblZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJ0b2dnbGVCdXR0b25WaWV3TW9kZWwiLCJmOTB0Q2IiLF8uWUYpfSk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uYkc9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJMVmlNTSIpO3JldHVybiBfLkREfTtfLmNHPV8uY0QoKCk9Pl8uYkcoKSwic3Vic2NyaWJlQnV0dG9uVmlld01vZGVsIik7Xy5ZdChfLkpELGE9PnthLkooInN1YnNjcmliZUJ1dHRvblZpZXdNb2RlbCIsIkxWaU1NIixfLmJHKX0pOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgZEc7Xy5lRz1mdW5jdGlvbihhKXt2YXIgYj1fLnkoKS5yZXNvbHZlKF8uSW4oZEcpKSxbYyxkXT1fLkooYix2b2lkIDAsIkhmRGRLIik7Ynx8Xy5ZdChkRyxkKTtyZXR1cm4gXy5OKCgpPT57dmFyIGU9YSgpO3JldHVybiBlP2MoKT8uKGUpOnZvaWQgMH0sdm9pZCAwLCJ2NzBFN2IiKX07ZEc9bmV3IF8uVnMoIlNFTUFOVElDX0NPTE9SX1JFU09MVkVSX1RPS0VOIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uaUg9bmV3IF8uVnMoIkhPUklaT05UQUxfQkFSX1ZJRVdfTU9ERUxfVE9LRU4iKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5MSD1hc3luYyBmdW5jdGlvbigpe2F3YWl0IF8ueSgpLnJlc29sdmUoXy5KSCk7cmV0dXJuIF8ueSgpLnJlc29sdmUoXy5LSCkoKX07Xy5NSD1mdW5jdGlvbigpe3JldHVybiBfLnkoKS5yZXNvbHZlKF8uS0gpKCl9O25ldyBfLmNzO18uSkg9bmV3IF8uVnMoIldBVENIX1BMQVlFUl9QUk9NSVNFX1RPS0VOIik7bmV3IF8uY3M7Xy5LSD1uZXcgXy5WcygiR0VUX1NIT1JUU19QTEFZRVJfRlVOQ1RJT05fVE9LRU4iKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5VSD1mdW5jdGlvbihhLGIpe3JldHVybiBjPT57dmFyIGQ9T2JqZWN0LmtleXMoYik7Xy5uRSgoKT0+e2lmKGE/LigpKXtmb3IobGV0IGUgb2YgZCljLmFkZEV2ZW50TGlzdGVuZXIoZSxiW2VdKTtfLll1KCgpPT57Zm9yKGxldCBlIG9mIGQpYy5yZW1vdmVFdmVudExpc3RlbmVyKGUsYltlXSl9KX19LCJiWFpHZmUiKX19Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgZEksUGRhLGZJLFFkYSxpSSxTZGE7ZEk9ZnVuY3Rpb24oYSl7aWYoYSlzd2l0Y2goYSl7Y2FzZSAiTElTVF9JVEVNX0lDT05fQUNDRVNTT1JZX1NJWkVfWFNNQUxMIjpyZXR1cm4gMTY7Y2FzZSAiTElTVF9JVEVNX0lDT05fQUNDRVNTT1JZX1NJWkVfU01BTEwiOnJldHVybiAxODtjYXNlICJMSVNUX0lURU1fSUNPTl9BQ0NFU1NPUllfU0laRV9TVEFOREFSRCI6cmV0dXJuIDI0O2Nhc2UgIkxJU1RfSVRFTV9JQ09OX0FDQ0VTU09SWV9TSVpFX0xBUkdFIjpyZXR1cm4gMzY7Y2FzZSAiTElTVF9JVEVNX0lDT05fQUNDRVNTT1JZX1NJWkVfWExBUkdFIjpyZXR1cm4gNDg7ZGVmYXVsdDpyZXR1cm4gMjR9fTsKUGRhPWZ1bmN0aW9uKGEsYil7aWYoIWE/LmVudGl0eVNlbGVjdG9yVHlwZXx8IWE/LmVudGl0eUtleSlyZXR1cm57fTtzd2l0Y2goYS5lbnRpdHlTZWxlY3RvclR5cGUpe2Nhc2UgIkxJU1RfSVRFTV9WSUVXX01PREVMX0VOVElUWV9TRUxFQ1RPUl9UWVBFX0NBUFRJT05fTEFOR1VBR0VfU0VMRUNUSU9OX1RFWFQiOnJldHVybiBhPV8uTUgoKT8uZ2V0T3B0aW9uKCJjYXB0aW9ucyIsInRyYWNrIiksYj10eXBlb2YgYT8udHJhbnNsYXRpb25MYW5ndWFnZT09PSJvYmplY3QiJiZhLnRyYW5zbGF0aW9uTGFuZ3VhZ2U/Lmxhbmd1YWdlTmFtZXx8YT8uZGlzcGxheU5hbWV8fCIiLHtkYXRhOnsuLi4oISFiJiZ7c2VsZWN0aW9uVGV4dDp7Y29udGVudDpifX0pLC4uLighIWImJntsZWFkaW5nSW1hZ2U6e3NvdXJjZXM6W3tjbGllbnRSZXNvdXJjZTp7aW1hZ2VOYW1lOiJDTE9TRURfQ0FQVElPTl9TRUxFQ1RFRCJ9fV19fSksaXNEaXNhYmxlZDp0eXBlb2YgYT09PSJ1bmRlZmluZWQifX07Y2FzZSAiTElTVF9JVEVNX1ZJRVdfTU9ERUxfRU5USVRZX1NFTEVDVE9SX1RZUEVfQVVESU9fVFJBQ0tfU0VMRUNUSU9OX1RFWFQiOnJldHVybiBhPQpfLk1IKCk/LmdldEF1ZGlvVHJhY2soKXx8dm9pZCAwLGI9YT8uZ2V0TGFuZ3VhZ2VJbmZvKCk/LmdldE5hbWUoKSx7ZGF0YTp7c2VsZWN0aW9uVGV4dDp7Y29udGVudDpifSwuLi4oYiYmIWE/LmdldExhbmd1YWdlSW5mbygpPy5nZXRJc0RlZmF1bHQoKSYme2xlYWRpbmdJbWFnZTp7c291cmNlczpbe2NsaWVudFJlc291cmNlOntpbWFnZU5hbWU6IlBFUlNPTl9SQURBUl9GSUxMRUQifX1dfX0pfX07Y2FzZSAiTElTVF9JVEVNX1ZJRVdfTU9ERUxfRU5USVRZX1NFTEVDVE9SX1RZUEVfUExBWUJBQ0tfU1BFRURfU0VMRUNUSU9OX1RFWFQiOnJldHVybiBhPV8ueCgid2ViX3Nob3J0c19wbGF5YmFja19yYXRlX3BpY2tlciIpLF8uZUlbImNvdW50ZXJmYWN0dWFscy53ZWJfc2hvcnRzX3BsYXliYWNrX3JhdGVfcGlja2VyIl09U3RyaW5nKGEpLGE/KGE9Xy5NSCgpPy5nZXRQbGF5YmFja1JhdGUoKSxiPV8uTUgoKT8uZ2V0QXZhaWxhYmxlUGxheWJhY2tSYXRlcygpLGE9e2RhdGE6e3NlbGVjdGlvblRleHQ6e2NvbnRlbnQ6YT09PQoxP18uYUEoIlBMQVlFUl9TUEVFRF9OT1JNQUwiLHZvaWQgMCwiTm9ybWFsIik6Xy5hQSgiUExBWUJBQ0tfU1BFRURfWCIse3NwZWVkX3JhdGVfcGxhY2Vob2xkZXI6YCR7YT8udG9GaXhlZCgyKX1gfSl9LGlzRGlzYWJsZWQ6IWI/Lmxlbmd0aH19KTphPXt9LGE7Y2FzZSAiTElTVF9JVEVNX1ZJRVdfTU9ERUxfRU5USVRZX1NFTEVDVE9SX1RZUEVfUkVNT1ZFX0FEU19BRF9TVEFURSI6cmV0dXJuIGE9YT8uZW50aXR5S2V5PyhhPV8uSEgoYixhLmVudGl0eUtleSkpP3tpc0hpZGRlbjphPy5hZHNTdGF0ZSE9PSJBRFNfU1RBVEVfUExBWUlORyJ9Ontpc0hpZGRlbjohMH06e30sYTtkZWZhdWx0OnJldHVybnt9fX07Zkk9ZnVuY3Rpb24oYSl7aWYoYSYmKGE9YS5zcGxpdCgiOiIpLGEubGVuZ3RoPjEpKXJldHVybiBhWzBdLmxlbmd0aD4wP2FbMF06dm9pZCAwfTtRZGE9ZnVuY3Rpb24oYSl7aWYoYSYmIWdJLmhhcyhhKSl7dmFyIGI9ZkkoYSk7YiYmZ0kuc2V0KGEsYil9fTsKaUk9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXsuLi5oSSgpfTtpZihiJiZjPT09IkxJU1RfSVRFTV9TRUxFQ1RJT05fU1RZTEVfUkFESU8iKXtsZXQgZT1mSShhKTtlJiZnSS5mb3JFYWNoKChmLGgpPT57Zj09PWUmJmghPT1hJiYoZFtoXT0hMSl9KX1kW2FdPWI7UmRhKGQpfTtTZGE9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBkPT57aWYoIWM/LigpKXt2YXIgZT1mPT57Xy5ySChfLnFIKGYpLGQsYil8fGEoZil9O2QuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGUpO3JldHVybigpPT57ZC5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsZSl9fX19O18uZUk9e307Xy5qST1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoIm1tMk4wYyIpO3JldHVybiBfLnpFfTtfLmtJPV8uY0QoKCk9Pl8uakkoKSwic3dpdGNoQnV0dG9uVmlld01vZGVsIik7Xy5ZdChfLkpELGE9PnthLkooInN3aXRjaEJ1dHRvblZpZXdNb2RlbCIsIm1tMk4wYyIsXy5qSSl9KTt2YXIgbUk7Xy5sST1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoImhiMFdtZiIpO3JldHVybiBfLlhGfTttST1fLmNEKCgpPT5fLmxJKCksImFjY291bnRMaW5rQnV0dG9uVmlld01vZGVsIik7Xy5ZdChfLkpELGE9PnthLkooImFjY291bnRMaW5rQnV0dG9uVmlld01vZGVsIiwiaGIwV21mIixfLmxJKX0pO3ZhciBUZGE7Xy5uST1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoImhOZWx2ZCIpO3JldHVybiBfLmFJfTtUZGE9Xy5jRCgoKT0+Xy5uSSgpLCJsaXN0SXRlbUxpa2VDb3VudFZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJsaXN0SXRlbUxpa2VDb3VudFZpZXdNb2RlbCIsImhOZWx2ZCIsXy5uSSl9KTt2YXIgVWRhO18ub0k9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJyNUNPSGYiKTtyZXR1cm4gXy4kSH07VWRhPV8uY0QoKCk9Pl8ub0koKSwibGlzdEl0ZW1WaWV3Q291bnRWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigibGlzdEl0ZW1WaWV3Q291bnRWaWV3TW9kZWwiLCJyNUNPSGYiLF8ub0kpfSk7dmFyIHBJPV8uTCgoe2RhdGE6YSxnZzpiLGNlOmMsaXNUb2dnbGVkOmQsRGc6ZSxuYTpmfSk9Pnt2YXIgaD0oKT0+YigpP2EoKS5sZWFkaW5nSW1hZ2U6YSgpLnRyYWlsaW5nSW1hZ2U/P18uUUYoYSgpLnRoZW1lZFRyYWlsaW5nSW1hZ2UpLGs9KCk9PnthOnt2YXIgcj1hKCkubGlzdEl0ZW1JY29uQWZ0ZXJTZWxlY3Rpb25UZXh0O2lmKCFjPy4oKSlzd2l0Y2gocil7Y2FzZSAiTElTVF9JVEVNX0lDT05fQUZURVJfU0VMRUNUSU9OX1RFWFRfRVhQQU5EX01PUkUiOnI9ImV4cGFuZF9tb3JlIjticmVhayBhO2Nhc2UgIkxJU1RfSVRFTV9JQ09OX0FGVEVSX1NFTEVDVElPTl9URVhUX05PTkUiOmJyZWFrO2RlZmF1bHQ6cj0iY2hldnJvbl9yaWdodCI7YnJlYWsgYX1yPXZvaWQgMH1yZXR1cm4gcn0sbD1fLlAoInl0TGlzdEl0ZW1WaWV3TW9kZWxJbWFnZUNvbnRhaW5lciIse3l0TGlzdEl0ZW1WaWV3TW9kZWxMZWFkaW5nOmIseXRMaXN0SXRlbVZpZXdNb2RlbFRyYWlsaW5nOigpPT4hYigpfSksCm09Xy5QKCJ5dExpc3RJdGVtVmlld01vZGVsQWNjZXNzb3J5IiwieXRMaXN0SXRlbVZpZXdNb2RlbEltYWdlIiksbj1fLlAoInl0TGlzdEl0ZW1WaWV3TW9kZWxBY2Nlc3NvcnkiLHt5dExpc3RJdGVtVmlld01vZGVsTGVhZGluZzpiLHl0TGlzdEl0ZW1WaWV3TW9kZWxUcmFpbGluZzooKT0+IWIoKX0pLHA9Xy5lRygoKT0+YigpP2EoKS5sZWFkaW5nSWNvbkNvbG9yVG9rZW46YSgpLnRyYWlsaW5nSWNvbkNvbG9yVG9rZW4pO3JldHVybiBfLksoXy5PLHtBOigpPT57dmFyIHI9YSgpLHQ9YigpO3JldHVybiEhKHQmJihyLmxlYWRpbmdJbWFnZXx8ci5sZWFkaW5nQWNjZXNzb3J5KXx8IXQmJihyLnRyYWlsaW5nSW1hZ2V8fHIudHJhaWxpbmdCdXR0b258fHIudHJhaWxpbmdCdXR0b25zfHxyLnRyYWlsaW5nQWNjZXNzb3JpZXNMaXN0fHxyLnNlbGVjdGlvblRleHR8fHIudGhlbWVkVHJhaWxpbmdJbWFnZXx8ci50cmFpbGluZ0ltYWdlQWNjZXNzb3J5VHlwZT09PSJMSVNUX0lURU1fSU1BR0VfQUNDRVNTT1JZX1RZUEVfTkVXX0NPTlRFTlRfSU5ESUNBVE9SInx8CnIudHJhaWxpbmdMYWJlbCkpfSx0aGVuOigpPT5fLksoXy5JQixudWxsLF8uSyhfLk8se0E6aCx0aGVuOnI9Pl8uSygiZGl2Iix7Y2xhc3M6bCwiYXJpYS1oaWRkZW4iOiJ0cnVlIn0sXy5LKF8uakYse2RhdGE6cixhbHQ6IiIsVGE6ITAsWWE6ITAsQWI6KCk9Pnt2YXIgdD0oYigpP2EoKS5sZWFkaW5nSW1hZ2VBY2Nlc3NvcnlUeXBlPT09IkxJU1RfSVRFTV9JTUFHRV9BQ0NFU1NPUllfVFlQRV9JQ09OIjphKCkudHJhaWxpbmdJbWFnZUFjY2Vzc29yeVR5cGU9PT0iTElTVF9JVEVNX0lNQUdFX0FDQ0VTU09SWV9UWVBFX0lDT04iKT9iKCk/ZEkoYSgpLmxlYWRpbmdJY29uQWNjZXNzb3J5U2l6ZSk6ZEkoYSgpLnRyYWlsaW5nSWNvbkFjY2Vzc29yeVNpemUpOnZvaWQgMDtyZXR1cm4gdH0sY2xhc3NOYW1lOm0saXNUb2dnbGVkOigpPT4hZT8uKCkmJmQ/LigpLHN0eWxlOl8uSUUoe2NvbG9yOnB9KX0pKX0pLF8uSyhfLk8se0E6KCk9PmIoKSYmYSgpLmxlYWRpbmdBY2Nlc3NvcnksdGhlbjooKT0+Cl8uSygiZGl2Iix7Y2xhc3M6bH0sXy5LKF8uVyx7ZGF0YTooKT0+YSgpLmxlYWRpbmdBY2Nlc3Nvcnl9LHthdmF0YXJWaWV3TW9kZWw6KHtkYXRhOnJ9KT0+Xy5LKF8uU0Yse2RhdGE6cixnZDptLE1rOigpPT5mPy4oKT97c2l6ZToiZXh0cmEtc21hbGwifTp7c2l6ZToibWVkaXVtIn19KSxjb2xsZWN0aW9uVGh1bWJuYWlsVmlld01vZGVsOih7ZGF0YTpyfSk9Pl8uSyhfLldGLHtkYXRhOnIsbWF4SGVpZ2h0OjM2LHdpZHRoOjU2LGNnOiEwfSl9KSl9KSxfLksoXy5PLHtBOigpPT4hYigpJiZhKCkudHJhaWxpbmdCdXR0b24sdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRMaXN0SXRlbVZpZXdNb2RlbEJ1dHRvbkNvbnRhaW5lciJ9LF8uSyhfLlcse2RhdGE6KCk9PmEoKS50cmFpbGluZ0J1dHRvbn0se2J1dHRvblZpZXdNb2RlbDooe2RhdGE6cn0pPT5fLksoXy5VRix7ZGF0YTpyLGNsYXNzTmFtZTpufSl9KSl9KSxfLksoXy5PLHtBOigpPT4hYigpJiZhKCkudHJhaWxpbmdCdXR0b25zPy5idXR0b25zLAp0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dExpc3RJdGVtVmlld01vZGVsQnV0dG9uQ29udGFpbmVyIn0sXy5LKF8uVyx7ZGF0YTooKT0+YSgpLnRyYWlsaW5nQnV0dG9ucz8uYnV0dG9uc30se2J1dHRvblZpZXdNb2RlbDooe2RhdGE6cn0pPT5fLksoXy5VRix7ZGF0YTpyLGNsYXNzTmFtZTpufSksYWNjb3VudExpbmtCdXR0b25WaWV3TW9kZWw6KHtkYXRhOnJ9KT0+Xy5LKG1JLHtkYXRhOnIsY2xhc3NOYW1lOm59KSxzd2l0Y2hCdXR0b25WaWV3TW9kZWw6KHtkYXRhOnJ9KT0+Xy5LKF8ua0kse2RhdGE6cixjbGFzc05hbWU6bn0pLHN1YnNjcmliZUJ1dHRvblZpZXdNb2RlbDooe2RhdGE6cn0pPT5fLksoXy5jRyx7ZGF0YTpyLGlzT3ZlcmxheTohMSxRZDohMSxjbGFzc05hbWU6bn0pLHRvZ2dsZUJ1dHRvblZpZXdNb2RlbDooe2RhdGE6cn0pPT5fLksoXy5aRix7ZGF0YTpyLGNsYXNzTmFtZTpufSl9KSl9KSxfLksoXy5PLHtBOigpPT4hYigpJiZhKCkudHJhaWxpbmdBY2Nlc3Nvcmllc0xpc3Q/LnRyYWlsaW5nQWNjZXNzb3JpZXMsCnRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0TGlzdEl0ZW1WaWV3TW9kZWxCdXR0b25Db250YWluZXIifSxfLksoXy5XLHtkYXRhOigpPT5hKCkudHJhaWxpbmdBY2Nlc3Nvcmllc0xpc3Q/LnRyYWlsaW5nQWNjZXNzb3JpZXN9LHtidXR0b25WaWV3TW9kZWw6KHtkYXRhOnJ9KT0+Xy5LKF8uVUYse2RhdGE6cixjbGFzc05hbWU6bn0pLGFjY291bnRMaW5rQnV0dG9uVmlld01vZGVsOih7ZGF0YTpyfSk9Pl8uSyhtSSx7ZGF0YTpyLGNsYXNzTmFtZTpufSksc3dpdGNoQnV0dG9uVmlld01vZGVsOih7ZGF0YTpyfSk9Pl8uSyhfLmtJLHtkYXRhOnIsY2xhc3NOYW1lOm59KSxzdWJzY3JpYmVCdXR0b25WaWV3TW9kZWw6KHtkYXRhOnJ9KT0+Xy5LKF8uY0cse2RhdGE6cixpc092ZXJsYXk6ITEsUWQ6ITEsY2xhc3NOYW1lOm59KSx0b2dnbGVCdXR0b25WaWV3TW9kZWw6KHtkYXRhOnJ9KT0+Xy5LKF8uWkYse2RhdGE6cixjbGFzc05hbWU6bn0pLGJhZGdlVmlld01vZGVsOih7ZGF0YTpyfSk9PgpfLksoXy5hRyx7ZGF0YTpyLGNsYXNzOm59KSxsaXN0SXRlbUxpa2VDb3VudFZpZXdNb2RlbDooe2RhdGE6cn0pPT5fLksoVGRhLHtkYXRhOnIsY2xhc3NOYW1lOm59KSxsaXN0SXRlbVZpZXdDb3VudFZpZXdNb2RlbDooe2RhdGE6cn0pPT5fLksoVWRhLHtkYXRhOnIsY2xhc3NOYW1lOm59KX0pKX0pLF8uSyhfLk8se0E6KCk9PiFiKCkmJiEhYSgpLnNlbGVjdGlvblRleHQsdGhlbjooKT0+Xy5LKF8uSUIsbnVsbCxfLksoXy5WLHt0ZXh0OigpPT5hKCkuc2VsZWN0aW9uVGV4dCxjbGFzc05hbWU6Xy5QKCJ5dExpc3RJdGVtVmlld01vZGVsU2VsZWN0aW9uVGV4dCIsInl0TGlzdEl0ZW1WaWV3TW9kZWxUcmFpbGluZ1NlbGVjdGlvblRleHQiKX0pLF8uSyhfLk8se0E6ayx0aGVuOnI9Pl8uSyhfLk1ELHtpY29uOnIsY2xhc3NOYW1lOiJ5dExpc3RJdGVtVmlld01vZGVsQ2hldnJvbkljb24iLGFyaWFIaWRkZW46ITAsc3R5bGU6Xy5JRSh7Y29sb3I6cH0pfSl9KSl9KSxfLksoXy5PLHtBOigpPT4KIWIoKSYmYSgpLnRyYWlsaW5nSW1hZ2VBY2Nlc3NvcnlUeXBlPT09IkxJU1RfSVRFTV9JTUFHRV9BQ0NFU1NPUllfVFlQRV9ORVdfQ09OVEVOVF9JTkRJQ0FUT1IiLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6bH0sXy5LKCJkaXYiLHtjbGFzczoieXRMaXN0SXRlbVZpZXdNb2RlbE5ld0NvbnRlbnRJbmRpY2F0b3IifSkpfSksXy5LKF8uTyx7QTooKT0+IWIoKSYmYSgpLnRyYWlsaW5nTGFiZWwsdGhlbjooKT0+Xy5LKF8uVix7dGV4dDooKT0+YSgpLnRyYWlsaW5nTGFiZWwsY2xhc3NOYW1lOl8uUCgieXRMaXN0SXRlbVZpZXdNb2RlbFRyYWlsaW5nTGFiZWwiLCJ5dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmciKX0pfSkpfSl9LCJ6Iik7dmFyIFZkYT1fLkwoKHtkYXRhOmF9KT0+e3ZhciBiPV8ueSgpLnJlc29sdmUoXy5JbihfLmlIKSk7cmV0dXJuIF8uSygiZGl2Iix7Y2xhc3M6Inl0TGlzdEl0ZW1WaWV3TW9kZWxCb3R0b21BY2Nlc3NvcnkifSxfLksoXy5XLHtkYXRhOigpPT5hKCkuYm90dG9tQWNjZXNzb3J5fSx7Li4uKGImJntob3Jpem9udGFsQmFyVmlld01vZGVsOmJ9KX0pKX0sIkEiKTt2YXIgcUk9Xy5MKGE9Pnt2YXIgYj1hLmRhdGEsYz1hLmNsYXNzTmFtZSxkPV8uZUcoKCk9PmIoKS5pc0Rpc2FibGVkJiZiKCkubGFiZWxEaXNhYmxlZENvbG9yVG9rZW4/YigpLmxhYmVsRGlzYWJsZWRDb2xvclRva2VuOmIoKS5sYWJlbFRleHRDb2xvclRva2VuKSxlPV8uZUcoKCk9PmIoKS5zdXBlckxhYmVsQ29sb3JUb2tlbik7cmV0dXJuIF8uSyhfLk8se0E6KCk9PmIoKS5zdXBlcmxhYmVsfHxiKCkudGl0bGV8fGIoKS5zdWJ0aXRsZXx8YigpLnN1YnRpdGxlQmFkZ2UsdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczpjfSxfLksoXy5PLHtBOigpPT5iKCkuc3VwZXJsYWJlbCx0aGVuOmY9Pl8uSyhfLlYse3RleHQ6ZixjbGFzc05hbWU6Inl0TGlzdEl0ZW1WaWV3TW9kZWxTdXBlcmxhYmVsIixzdHlsZTpfLklFKHtjb2xvcjplfSl9KX0pLF8uSyhfLk8se0E6KCk9PmIoKS50aXRsZSx0aGVuOmY9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0TGlzdEl0ZW1WaWV3TW9kZWxUaXRsZVdyYXBwZXIifSwKXy5LKF8uVix7dGV4dDpmLGNsYXNzTmFtZTpfLlAoInl0TGlzdEl0ZW1WaWV3TW9kZWxUaXRsZSIse3l0TGlzdEl0ZW1WaWV3TW9kZWxTaW5nbGVMaW5lVGl0bGU6KCk9PmIoKS50aXRsZU1heExpbmVzPT09MX0pLHN0eWxlOl8uSUUoe2NvbG9yOmR9KX0pKX0pLF8uSyhfLk8se0E6KCk9PmIoKS5zdWJ0aXRsZUJhZGdlfHxiKCkuc3VidGl0bGUsdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRMaXN0SXRlbVZpZXdNb2RlbFN1YnRpdGxlQ29udGFpbmVyIn0sXy5LKCJkaXYiLHtjbGFzczoieXRMaXN0SXRlbVZpZXdNb2RlbFN1YnRpdGxlQmFkZ2VXcmFwcGVyIn0sXy5LKF8uVyx7ZGF0YTooKT0+YigpLnN1YnRpdGxlQmFkZ2V9LHtiYWRnZVZpZXdNb2RlbDooe2RhdGE6Zn0pPT5fLksoXy5hRyx7ZGF0YTpmfSl9KSksXy5LKFdkYSx7ZGF0YTpiLHl3OigpPT4hIWIoKS5zdWJ0aXRsZUJhZGdlfSkpfSkpfSl9LCJCIiksV2RhPV8uTChhPT57dmFyIGI9Xy5lRygoKT0+YS5kYXRhKCkuc3ViTGFiZWxDb2xvclRva2VuKTsKcmV0dXJuIF8uSyhfLk8se0E6KCk9PmEuZGF0YSgpLnN1YnRpdGxlLHRoZW46Yz0+Xy5LKF8uVix7dGV4dDpjLGNsYXNzTmFtZTpfLlAoInl0TGlzdEl0ZW1WaWV3TW9kZWxTdWJ0aXRsZSIse3l0TGlzdEl0ZW1WaWV3TW9kZWxXaXRoQmFkZ2U6YS55d30pLHN0eWxlOl8uSUUoe2NvbG9yOmJ9KX0pfSl9LCJDIik7dmFyIFhkYT1fLkwoKHtkYXRhOmEsY2U6YixmdTpjLGlzVG9nZ2xlZDpkLGRpc2FibGVkOmUsWHg6ZixuYTpoLEJjOmssZGlzYWJsZUhvcml6b250YWxQYWRkaW5nOmwsaG9yaXpvbnRhbFBhZGRpbmc6bSxZeDpuLHVCOnAsb25UYXA6cixhcmlhTGFiZWw6dCxEZzp2fSk9Pnt2YXIgej0oKT0+ISFhKCkuaXNEaXNhYmxlZHx8ISFlPy4oKSxFPV8uZUcoKCk9PmEoKS50cmFpbGluZ0ljb25Db2xvclRva2VuKTtyZXR1cm4gXy5LKCJkaXYiLHtjbGFzczpfLlAoInl0TGlzdEl0ZW1WaWV3TW9kZWxMYXlvdXRXcmFwcGVyIix7eXRMaXN0SXRlbVZpZXdNb2RlbENvbnRhaW5lcjooKT0+IWY/LigpLHl0TGlzdEl0ZW1WaWV3TW9kZWxEaXNhYmxlZDp6LHl0TGlzdEl0ZW1WaWV3TW9kZWxIYXNTdWJ0aXRsZTooKT0+ISFhKCkuc3VidGl0bGUseXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3Q6aCx5dExpc3RJdGVtVmlld01vZGVsVGFwcGFibGU6bix5dExpc3RJdGVtVmlld01vZGVsQWN0aW9uVHlwb2dyYXBoeTpfLngoIndlYl9lbmFibGVfbGlzdF9pdGVtX2FjdGlvbl90eXBvZ3JhcGh5IiksCnl0TGlzdEl0ZW1WaWV3TW9kZWxJblBvcHVwOmsseXRMaXN0SXRlbVZpZXdNb2RlbERpc2FibGVIb3Jpem9udGFsUGFkZGluZzooKT0+bD8uKCkmJiFmPy4oKSx5dExpc3RJdGVtVmlld01vZGVsTm9UcmFpbGluZ1RleHQ6KCk9PiFhKCkuc2VsZWN0aW9uVGV4dCYmIWEoKS50cmFpbGluZ0xhYmVsfSwoKT0+e2E6e3N3aXRjaChhKCkubGF5b3V0UHJpb3JpdHkpe2Nhc2UgIkxJU1RfSVRFTV9MQVlPVVRfUFJJT1JJVFlfVFJBSUxJTkciOnZhciBBPSJ5dExpc3RJdGVtVmlld01vZGVsUHJpb3JpdGl6ZVRyYWlsaW5nIjticmVhayBhfUE9dm9pZCAwfXJldHVybiBBfSksc3R5bGU6Xy5JRSh7InBhZGRpbmctbGVmdCI6bSwicGFkZGluZy1yaWdodCI6bX0pfSxfLksoImRpdiIse2NsYXNzOiJ5dExpc3RJdGVtVmlld01vZGVsTWFpbkNvbnRhaW5lciJ9LF8uSyhwSSx7ZGF0YTphLGdnOiEwLGNlOmIsaXNUb2dnbGVkOmQsRGc6dixuYTpofSksXy5LKF8uTyx7QTpwLHRoZW46KCk9Pl8uSyhfLlZDLAp7Y29tbWFuZDooKT0+Xy5zSChhKCkucmVuZGVyZXJDb250ZXh0KSxvbkNsaWNrOnIsZGlzYWJsZWQ6eixjbGFzc05hbWU6Xy5QKCJ5dExpc3RJdGVtVmlld01vZGVsQnV0dG9uT3JBbmNob3IiLCJ5dExpc3RJdGVtVmlld01vZGVsVGV4dFdyYXBwZXIiKSx0b2dnbGVhYmxlOmQhPT12b2lkIDAsdG9nZ2xlZDpkLGFyaWFMYWJlbDp0fSxfLksocUkse2RhdGE6YX0pKSxXOigpPT5fLksocUkse2RhdGE6YSxjbGFzc05hbWU6Inl0TGlzdEl0ZW1WaWV3TW9kZWxUZXh0V3JhcHBlciJ9KX0pLF8uSyhfLk8se0E6KCk9PiEhYyx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmciLHN0eWxlOl8uSUUoe2NvbG9yOkV9KX0sYyYmXy5LKGMsbnVsbCkpLFc6KCk9Pl8uSyhwSSx7ZGF0YTphLGdnOiExLGNlOmIsaXNUb2dnbGVkOmQsRGc6dixuYTpofSl9KSksXy5LKF8uTyx7QTooKT0+YSgpLmJvdHRvbUFjY2Vzc29yeSx0aGVuOigpPT5fLksoVmRhLHtkYXRhOmF9KX0pKX0sCiJEIik7dmFyIFtoSSxSZGFdPV8uSih7fSx2b2lkIDAsInBkcmFGIiksZ0k9bmV3IE1hcDt2YXIgc0k9Xy5MKGE9Pnt2YXIge25hbWU6YixvbkNoYW5nZTpjLG9uQ2xpY2s6ZCxjaGVja2VkOmUsWWU6ZixZaTpoLHFqOmssbmE6bCxWYzptLGRpc2FibGVIb3Jpem9udGFsUGFkZGluZzpuLGhvcml6b250YWxQYWRkaW5nOnAsZGlzYWJsZWQ6cixhcmlhTGFiZWw6dH09Xy5EQyhhLHtjaGVja2VkOiExLGRpc2FibGVkOiExfSk7YT0iY2hlY2tib3giK18uT0goKTtyZXR1cm4gXy5LKCJjaGVja2JveC1zaGFwZSIsbnVsbCxfLksoImxhYmVsIix7Y2xhc3M6Xy5QKCJ5dENoZWNrYm94U2hhcGVIb3N0IixrLHt5dENoZWNrYm94U2hhcGVIb3N0Q29tcGFjdDpsLHl0Q2hlY2tib3hTaGFwZURpc2FibGVIb3Jpem9udGFsUGFkZGluZzpufSksc3R5bGU6Xy5JRSh7InBhZGRpbmctbGVmdCI6cCwicGFkZGluZy1yaWdodCI6cH0pfSxfLksoImlucHV0Iix7Y2xhc3M6Inl0Q2hlY2tib3hTaGFwZUlucHV0IixpZDphLGNoZWNrZWQ6ZSxuYW1lOmIsdHlwZToiY2hlY2tib3giLGRpc2FibGVkOnIsCiJhcmlhLWxhYmVsIjp0LCJwcm9wOmNoZWNrZWQiOmUsIm9uOmNoYW5nZSI6ZnVuY3Rpb24odil7Yz8uKHYpO3Yuc3RvcFByb3BhZ2F0aW9uKCl9LCJvbjpjbGljayI6ZnVuY3Rpb24odil7ZD8uKHYpO3Yuc3RvcFByb3BhZ2F0aW9uKCl9fSksXy5LKF8uTyx7QTooKT0+IWg/LigpLHRoZW46KCk9Pl8uSyhySSx7Z2c6ITAsVmM6bX0pfSksXy5LKF8uTyx7QTooKT0+ISFmLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0Q2hlY2tib3hTaGFwZUxhYmVsIn0sZj8uKCkpfSksXy5LKF8uTyx7QTpoLHRoZW46KCk9Pl8uSyhySSx7Z2c6ITEsVmM6bX0pfSkpKX0sIkUiKTtzSS5pZG9tQ29tcGF0PXtjYWxsYmFja3M6e29uQ2hhbmdlOiEwLG9uQ2xpY2s6ITAsWWU6ITB9fTsKdmFyIHJJPV8uTCgoe1ZjOmF9KT0+Xy5LKCJkaXYiLHtjbGFzczpfLlAoInl0Q2hlY2tib3hTaGFwZUNoZWNrYm94IixhLHt5dENoZWNrYm94U2hhcGVDaGVja2JveERlZmF1bHRTdHlsZTooKT0+IWE/LigpfSksImFyaWEtaGlkZGVuIjoidHJ1ZSJ9LF8uSyhfLk1ELHtpY29uOl8ueCgiZW5hYmxlX3dlYl9kZWxoaV9pY29ucyIpPyJzcXVhcmUiOiJCT1hfRU1QVFkifSksXy5LKF8uTUQse2ljb246Xy54KCJlbmFibGVfd2ViX2RlbGhpX2ljb25zIik/ImNoZWNrX3NxdWFyZSI6IkJPWF9DSEVDSyIsYWN0aXZlOiEwfSkpLCJGIik7dmFyIHRJPV8uTCgoe2RhdGE6YSxJYTpiLG5hOmMsb25UYXA6ZCx4czplLGNlOmYsZGlzYWJsZWQ6aCxCYzprLGRpc2FibGVIb3Jpem9udGFsUGFkZGluZzpsLGlzT3ZlcmxheTptLGlzVG9nZ2xlZDpuLGFyaWFMYWJlbDpwLGFyaWFQcmVzc2VkOnIsRGc6dCxicDp2fSk9PntmdW5jdGlvbiB6KGJhKXtiYS5zdG9wUHJvcGFnYXRpb24oKTt2YXIgYWE9YSgpLmVudGl0eUtleSxPYT1HKCkuaXNTZWxlY3RlZDtpZihhYSYmTSgpKXtpZihHKCkuc2VsZWN0aW9uU3R5bGU9PT0iTElTVF9JVEVNX1NFTEVDVElPTl9TVFlMRV9SQURJTyImJk9hKXJldHVybjtpSShhYSwhT2EsRygpLnNlbGVjdGlvblN0eWxlKX1kP2QoYmEpOihhYT1fLnNIKEcoKS5yZW5kZXJlckNvbnRleHQpLE9hPV8ueSgpLnJlc29sdmUoXy5VRCksYWEmJk9hJiZPYS5yZXNvbHZlQ29tbWFuZChhYSxiYS50YXJnZXQ/e2Zvcm06e2VsZW1lbnQ6YmEudGFyZ2V0LHNvdXJjZURhdGE6YWF9fTp2b2lkIDApKX12YXIgRT0hXy54KCJ3ZWJfZW5hYmxlX2tpbGxzd2l0Y2hfZm9yX3NlbGVjdGFibGVfbGlzdF9pdGVtX29uX3RhcF9maXgiKSwKQT0hXy54KCJ3ZWJfZW5hYmxlX2tpbGxzd2l0Y2hfZm9yX3NraXBfY2hpbGRfdGFncyIpLEY9Xy5RSCgoKT0+YSgpLmhvcml6b250YWxQYWRkaW5nVG9rZW4pLEM9KCk9Pmw/LigpfHxhKCkuZGlzYWJsZUhvcml6b250YWxQYWRkaW5nLEc9Xy5OKCgpPT57dmFyIGJhPWEoKSxhYT12KCksT2E9YSgpPy5lbnRpdHlTZWxlY3RvclR5cGU/ey4uLmJhLC4uLmFhLmRhdGF9OmJhO09hLnNlbGVjdGlvblN0eWxlPT09IkxJU1RfSVRFTV9TRUxFQ1RJT05fU1RZTEVfUkFESU8iJiZRZGEoT2EuZW50aXR5S2V5KTt2YXIgSmI9T2EuZW50aXR5S2V5O2JhPUpiP2hJKClbSmJdOnZvaWQgMDthYT0hIU9hLmlzU2VsZWN0ZWQ7dmFyIHphPWJhIT09dm9pZCAwP2JhOmFhO0piJiZPYS5zZWxlY3Rpb25TdHlsZT09PSJMSVNUX0lURU1fU0VMRUNUSU9OX1NUWUxFX1JBRElPIiYmYWEmJmJhPT09dm9pZCAwJiZxdWV1ZU1pY3JvdGFzaygoKT0+e2lJKEpiLCEwLE9hLnNlbGVjdGlvblN0eWxlKX0pO3JldHVybnsuLi5PYSwKaXNTZWxlY3RlZDp6YX19LHZvaWQgMCwidlJrbnkiKSxEPSgpPT4hIUcoKS5pc0Rpc2FibGVkfHwhIWg/LigpLEg9Xy5USCgoKT0+RygpLnJlbmRlcmVyQ29udGV4dCksUj0oKT0+cD8uKCl8fEgoKT8ubGFiZWwsTT0oKT0+ISghRygpLnNlbGVjdGlvblN0eWxlfHxHKCkuc2VsZWN0aW9uU3R5bGU9PT0iTElTVF9JVEVNX1NFTEVDVElPTl9TVFlMRV9VTlNQRUNJRklFRCIpLFM9KCk9PihfLnRIKEcoKS5yZW5kZXJlckNvbnRleHQpfHxkKSYmIU0oKSxZPSgpPT5fLnRIKEcoKS5yZW5kZXJlckNvbnRleHQpfHwhIWR8fE0oKSxwYT1fLlAoInl0TGlzdEl0ZW1WaWV3TW9kZWxDb250YWluZXIiLHt5dExpc3RJdGVtVmlld01vZGVsVGFwcGFibGU6WSx5dExpc3RJdGVtVmlld01vZGVsQWN0aW9uVHlwb2dyYXBoeTpfLngoIndlYl9lbmFibGVfbGlzdF9pdGVtX2FjdGlvbl90eXBvZ3JhcGh5IikseXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3Q6Yyx5dExpc3RJdGVtVmlld01vZGVsSW5Qb3B1cDprLAp5dExpc3RJdGVtVmlld01vZGVsRGlzYWJsZUhvcml6b250YWxQYWRkaW5nOigpPT5DPy4oKSYmTSgpfSksb2E9Xy5QKCJ5dExpc3RJdGVtVmlld01vZGVsSW1hZ2VDb250YWluZXIiLCgpPT5HKCkubGVhZGluZ0ltYWdlfHxHKCkubGVhZGluZ0FjY2Vzc29yeT8ieXRMaXN0SXRlbVZpZXdNb2RlbFRyYWlsaW5nIjoieXRMaXN0SXRlbVZpZXdNb2RlbExlYWRpbmciKSxbVSxoYV09Xy5KKCExLHZvaWQgMCwiY3VZNG1mIiksbWE9KCk9Pnt2YXIgYmE7aWYoYmE9Xy54KCJ3ZWJfYnV0dG9uX29yX2FuY2hvcl9saXN0X2l0ZW0iKSYmUz8uKCkpYmE9YSgpLGJhPSEoYmEudHJhaWxpbmdMYWJlbHx8YmEuc2VsZWN0aW9uVGV4dCk7cmV0dXJuIGJhfSx0YT0oKT0+Xy5LKFhkYSx7ZGF0YTpHLGNlOmYsZnU6ZSxpc1RvZ2dsZWQ6bixkaXNhYmxlZDpoLFh4Ok0sbmE6YyxCYzprLGRpc2FibGVIb3Jpem9udGFsUGFkZGluZzpDLGhvcml6b250YWxQYWRkaW5nOkYsWXg6Uyx1QjptYSxvblRhcDpkLGFyaWFMYWJlbDpSLApEZzp0fSksVD0oKT0+e2lmKGI/LigpKXtsZXQgYmE9RygpLnNlbGVjdGlvblN0eWxlO3JldHVybiBiYT09PSJMSVNUX0lURU1fU0VMRUNUSU9OX1NUWUxFX0NIRUNLQk9YIj8ibWVudWl0ZW1jaGVja2JveCI6YmE9PT0iTElTVF9JVEVNX1NFTEVDVElPTl9TVFlMRV9SQURJTyJ8fGJhPT09IkxJU1RfSVRFTV9TRUxFQ1RJT05fU1RZTEVfREVGQVVMVCI/Im1lbnVpdGVtcmFkaW8iOiJtZW51aXRlbSJ9cmV0dXJuImxpc3RpdGVtIn07cmV0dXJuIF8uSygieXQtbGlzdC1pdGVtLXZpZXctbW9kZWwiLHtlbDpfLnJGKF8udUgoKCk9PkQoKT92b2lkIDA6RygpLnJlbmRlcmVyQ29udGV4dCx2b2lkIDAsdm9pZCAwLF8ueCgid2ViX2J1dHRvbl9vcl9hbmNob3JfbGlzdF9pdGVtIik/WyJBIi50b1N0cmluZygpLCJCVVRUT04iLnRvU3RyaW5nKCldOltdKSxTZGEoZnVuY3Rpb24oYmEpe0QoKXx8RSYmTSgpfHwoTSgpP3ooYmEpOmQ/LihiYSkpfSxBP1siQSIudG9TdHJpbmcoKSwiQlVUVE9OIi50b1N0cmluZygpXToKW10sKCk9PiFZKCkpLF8uVUgoKCk9PlM/LigpLHtmb2N1c2luOmZ1bmN0aW9uKCl7Xy55KCkucmVzb2x2ZShfLkluKF8uakgpKT8uWGUoKSYmaGEoITApfSxmb2N1c291dDpmdW5jdGlvbigpe2hhKCExKX19KSksY2xhc3M6Xy5QKCJ5dExpc3RJdGVtVmlld01vZGVsSG9zdCIse3l0TGlzdEl0ZW1WaWV3TW9kZWxJc092ZXJsYXk6bSx5dExpc3RJdGVtVmlld01vZGVsS2V5Ym9hcmRGb2N1c2VkOlUseXRMaXN0SXRlbVZpZXdNb2RlbEhpZGRlbjooKT0+YSgpPy5lbnRpdHlTZWxlY3RvclR5cGU/digpLmlzSGlkZGVuOiExfSksImRhdGEtdGFyZ2V0LWlkIjooKT0+RygpLnRhcmdldElkLHJvbGU6VCx0YWJpbmRleDooKT0+e3ZhciBiYT1TKCk7WSgpO3ZhciBhYT1tYSgpLE9hPUQoKTtiYT0hYWEmJihfLngoIndlYl9lbmFibGVfa2lsbHN3aXRjaF90YWJpbmRleF9maXgiKT9kfHxiYTpiYSk/T2E/LTE6MDp2b2lkIDA7cmV0dXJuIGJhfSwib246a2V5ZG93biI6ZnVuY3Rpb24oYmEpe2lmKCFBfHwKIVsiQSIudG9TdHJpbmcoKSwiQlVUVE9OIi50b1N0cmluZygpXS5pbmNsdWRlcyhiYS50YXJnZXQudGFnTmFtZSkpaWYoYmEua2V5PT09IkVudGVyInx8TSgpJiZiYS5rZXk9PT0iICIpYmEucHJldmVudERlZmF1bHQoKSxEKCl8fChFJiZNKCk/eihiYSk6YmEuY3VycmVudFRhcmdldC5jbGljaygpKX0sImFyaWEtbGFiZWwiOlIsImFyaWEtY2hlY2tlZCI6KCk9Pnt2YXIgYmE9VCgpO3JldHVybiBiYT09PSJtZW51aXRlbWNoZWNrYm94Inx8YmE9PT0ibWVudWl0ZW1yYWRpbyI/RygpLmlzU2VsZWN0ZWQ6dm9pZCAwfSwiYXJpYS1wcmVzc2VkIjooKT0+Yj8uKCl8fE0oKT92b2lkIDA6cj8uKCl9LF8uSyhfLk8se0E6TSx0aGVuOigpPT5fLksoXy5FRSxudWxsLF8uSyhfLkNFLHt3aGVuOigpPT5HKCkuc2VsZWN0aW9uU3R5bGU9PT0iTElTVF9JVEVNX1NFTEVDVElPTl9TVFlMRV9DSEVDS0JPWCJ9LCgpPT5fLksoc0kse1llOnRhLG5hOmMsY2hlY2tlZDooKT0+ISFHKCkuaXNTZWxlY3RlZCwKWWk6KCk9PiEoIUcoKS5sZWFkaW5nSW1hZ2UmJiFHKCkubGVhZGluZ0FjY2Vzc29yeSkscWo6cGEsVmM6b2EsZGlzYWJsZUhvcml6b250YWxQYWRkaW5nOkMsaG9yaXpvbnRhbFBhZGRpbmc6RixvbkNsaWNrOkU/ejp2b2lkIDAsZGlzYWJsZWQ6RCxhcmlhTGFiZWw6Un0pKSxfLksoXy5DRSx7d2hlbjooKT0+RygpLnNlbGVjdGlvblN0eWxlPT09IkxJU1RfSVRFTV9TRUxFQ1RJT05fU1RZTEVfUkFESU8ifSwoKT0+Xy5LKF8uQUUse1llOnRhLG5hOmMsY2hlY2tlZDooKT0+ISFHKCkuaXNTZWxlY3RlZCxZaTooKT0+ISghRygpLmxlYWRpbmdJbWFnZSYmIUcoKS5sZWFkaW5nQWNjZXNzb3J5KSxxajpwYSxWYzpvYSxvbkNsaWNrOkU/ejp2b2lkIDAsZGlzYWJsZWQ6RCxhcmlhTGFiZWw6Un0pKSxfLksoXy5DRSx7d2hlbjooKT0+RygpLnNlbGVjdGlvblN0eWxlPT09IkxJU1RfSVRFTV9TRUxFQ1RJT05fU1RZTEVfREVGQVVMVCJ9LCgpPT5fLksoXy5BRSx7WWU6dGEsbmE6YyxjaGVja2VkOigpPT4KISFHKCkuaXNTZWxlY3RlZCxZaTooKT0+ISghRygpLmxlYWRpbmdJbWFnZSYmIUcoKS5sZWFkaW5nQWNjZXNzb3J5KSxxajpwYSxWYzpvYSxoazohMCxvbkNsaWNrOkU/ejp2b2lkIDAsZGlzYWJsZWQ6RCxhcmlhTGFiZWw6Un0pKSxfLksoXy5ERSxudWxsLHRhKSksVzp0YX0pKX0sIkciKSxZZGE9Xy5MKGE9Pnt2YXIgYj1fLmNJKGM9PlBkYShhLmRhdGEoKSxjKSk7cmV0dXJuIF8uSyh0SSx7Li4uYSxicDpifSl9LCJIIik7Xy5DRD1fLkwoYT0+Xy5LKF8uTyx7QTooKT0+ISFhLmRhdGEoKT8uZW50aXR5U2VsZWN0b3JUeXBlLHRoZW46KCk9Pl8uSyhZZGEsey4uLmF9KSxXOigpPT5fLksodEksey4uLmEsYnA6KCk9Pih7fSl9KX0pLCJJIik7Xy5DRC5pZG9tQ29tcGF0PXtjYWxsYmFja3M6e29uVGFwOiEwLHhzOiEwfX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uV2QoInBlMm9qYiIpOwoKXy5YZCgpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLlFMPWZ1bmN0aW9uKGEsYil7aWYoYSYmYilzd2l0Y2goYil7Y2FzZSAiU0VMRUNUSU9OX1RZUEVfQk9PTCI6cmV0dXJuIGEuYm9vbFZhbHVlO2Nhc2UgIlNFTEVDVElPTl9UWVBFX0lOVCI6cmV0dXJuIGEuaW50VmFsdWU7Y2FzZSAiU0VMRUNUSU9OX1RZUEVfU1RSSU5HIjpyZXR1cm4gYS5zdHJpbmdWYWx1ZTtjYXNlICJTRUxFQ1RJT05fVFlQRV9QUklWQUNZX1NUQVRVUyI6cmV0dXJuIGEucHJpdmFjeVN0YXR1c1ZhbHVlO2Nhc2UgIlNFTEVDVElPTl9UWVBFX1RJTUVfUElDS0VSX0ZPUk1BVCI6cmV0dXJuIGEudGltZVBpY2tlckZvcm1hdFZhbHVlO2Nhc2UgIlNFTEVDVElPTl9UWVBFX0VOR0FHRU1FTlRfUEVSTUlTU0lPTiI6cmV0dXJuIGEuZW5nYWdlbWVudFBlcm1pc3Npb25WYWx1ZX19Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLkNJPWZ1bmN0aW9uKGEpe18uVkgubXcoKShhKX07Xy5EST1mdW5jdGlvbihhLGIpe3ZhciBjPV8uWEgoKTtyZXR1cm4gXy5OKCgpPT57YygpO3JldHVybiBfLlpIKGEsW18uQnYoYil8fCIiXSl9LHtkZWJ1Z05hbWU6IkxVWnNsZiJ9LCJaMTA1dCIpfTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5STD1mdW5jdGlvbihhLGIpe3JldHVybiBfLnFBKGEuZW50aXRpZXMsImxpa2VTdGF0dXNFbnRpdHkiLGIpfTtfLlNMPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8ucUEoYS5lbnRpdGllcywibGlrZUNvdW50RW50aXR5IixiKX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBZZmE9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5OKCgpPT5fLkJ2KGEpPz97fSx7ZXF1YWxzOl8uR0l9LCJ6VFVaUWMiKSxjPV8uTigoKT0+e3ZhciB7Zm9ybUlkOmQsZmllbGRJZDplfT1iKCk7aWYoZCYmZSl7YTp7bGV0IGg9Xy5TSShkKTtpZihoKXt2YXIgZj1fLk1JKGUpO2lmKGY9aFtmXSl7aWYoISgiZnVuY3Rpb24iPT10eXBlb2YgXy5UTCYmZiBpbnN0YW5jZW9mIF8uVEwpKXRocm93IF8uSUkoYEZpZWxkICR7ZX0gaW4gZm9ybSAke2R9IGlzIG5vdCBhIFNjYWxhckxpc3RGaWVsZC5gKTticmVhayBhfX1mPXZvaWQgMH1yZXR1cm4gZn19LHZvaWQgMCwiRTBLU0ZkIik7cmV0dXJuKCk9PmMoKX0sWmZhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8ucUEoYS5lbnRpdGllcywic2VsZWN0aW9uVmFsdWVMaXN0RW50aXR5IixiKX0sJGZhPWZ1bmN0aW9uKGEsYil7Yi5pbmNsdWRlcyhhKT9iPWIuZmlsdGVyKGM9PmMhPT1hKTpiLnB1c2goYSk7cmV0dXJuWy4uLmJdfSxVTD1uZXcgXy5JKCJjaGVja2JveEl0ZW1WaWV3TW9kZWwiKTt2YXIgYWdhPV8uTChhPT57dmFyIHtkYXRhOmIsV2I6YyxzZWxlY3RlZDpkLG9uVGFwOmUsZ3JvdXBOYW1lOmYsY2xhc3NOYW1lOmgsbmE6ayxkaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmc6bCxMaTptfT1fLkRDKGEse1diOiExLHNlbGVjdGVkOiExLG5hOiExLGRpc2FibGVIb3Jpem9udGFsUGFkZGluZzohMSxMaTohMX0pLG49KCk9PmMoKT8yOmIoKS5mb3JtRmllbGRNZXRhZGF0YSYmIW0oKT8zOjE7Xy5VSigoKT0+e24oKT09PTImJmIoKS5kZWZhdWx0U2VsZWN0ZWQ/Xy5HcChFcnJvcigidWQiKSk6bigpPT09MSYmZCgpP18uR3AoRXJyb3IoInZkIikpOm4oKT09PTMmJmQoKSYmXy5HcChFcnJvcigid2QiKSl9KTt2YXIgcD1fLlpJKCgpPT5iKCkuZm9ybUZpZWxkTWV0YWRhdGEpLFtyLHRdPV8uQUMoKCk9PntpZihuKCk9PT0xKXJldHVybiBiKCkuZGVmYXVsdFNlbGVjdGVkfSk7cmV0dXJuIF8uSygieXQtY2hlY2tib3gtaXRlbS12aWV3LW1vZGVsIix7Y2xhc3M6Xy5QKCJ5dENoZWNrYm94SXRlbVZpZXdNb2RlbEhvc3QiLApoKX0sXy5LKF8uQ0Qse2RhdGE6KCk9Pnt2YXIgdj1iKCksej1uKCk9PT0zP3AoKT8udmFsdWV8fCExOm4oKT09PTE/cigpOmQoKTtyZXR1cm57dGl0bGU6di50ZXh0LHN1YnRpdGxlOnYuc3VidGV4dCxzdXBlcmxhYmVsOnYuc3VwZXJsYWJlbCxpc1NlbGVjdGVkOiEheixpc0Rpc2FibGVkOnYuaXNEaXNhYmxlZCxzZWxlY3Rpb25TdHlsZToiTElTVF9JVEVNX1NFTEVDVElPTl9TVFlMRV9DSEVDS0JPWCJ9fSxvblRhcDooKT0+e3ZhciB2PSEobigpPT09Mz9wKCk/LnZhbHVlOm4oKT09PTE/cigpOmQoKSk7bigpPT09Mz9wKCk/LnVwZGF0ZVZhbHVlKHYpOm4oKT09PTEmJnQodik7ZT8uKHYsYigpLGY/LigpKX0sbmE6ayxkaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmc6bH0pKX0sIkRhIik7Xy50RD1fLkwoKHtkYXRhOmEsV2I6YixkQTpjLGd6OmQsZ3JvdXBOYW1lOmUsZGlzYWJsZUhvcml6b250YWxQYWRkaW5nOmYsbmE6aH0pPT57dmFyIGs9Xy5ESShaZmEsKCk9PmEoKS5oaWRlSXRlbXNFbnRpdHlLZXkpLGw9KCk9PmI/LigpPzI6YSgpLmZvcm1GaWVsZE1ldGFkYXRhPzM6MSxtPSgpPT5lPy4oKXx8YSgpLmtleTtfLlVKKCgpPT57bCgpPT09MiYmYSgpLmRlZmF1bHRTZWxlY3RlZEtleXM/Xy5HcChFcnJvcigieGQiKSk6bCgpPT09MSYmYz8uKCk/Xy5HcChFcnJvcigieWQiKSk6bCgpPT09MyYmKGM/LigpIT09dm9pZCAwJiZfLkdwKEVycm9yKCJ6ZCIpKSxhKCkuZGVmYXVsdFNlbGVjdGVkS2V5cyYmXy5HcChFcnJvcigiQWQiKSkpfSk7dmFyIG49WWZhKCgpPT5hKCkuZm9ybUZpZWxkTWV0YWRhdGEpLFtwLHJdPV8uQUMoKCk9PntpZihsKCk9PT0xKXJldHVybiBhKCkuZGVmYXVsdFNlbGVjdGVkS2V5c30pLHQ9Xy5aSSgoKT0+KHtmb3JtSWQ6YSgpLnNlYXJjaFF1ZXJ5RmllbGRNZXRhZGF0YT8uZm9ybUlkfHwKIiIsZmllbGRJZDphKCkuc2VhcmNoUXVlcnlGaWVsZE1ldGFkYXRhPy5maWVsZElkfHwiIn0pKSx2PV8uTigoKT0+e3ZhciBFPWEoKS5jaGVja2JveGVzfHxbXSxBPWsoKTtpZihBPy52YWx1ZXMmJkEudmFsdWVzLmxlbmd0aD4wKXtsZXQgQz1BLnR5cGUsRz1uZXcgU2V0KEEudmFsdWVzLm1hcChEPT5fLlFMKEQsQykpLmZpbHRlcihEPT5EIT09dm9pZCAwKSk7RT1FLmZpbHRlcihEPT57RD1fLkIoRCxVTCk7aWYoIUQ/LnZhbHVlKXJldHVybiEwO0Q9Xy5RTChELnZhbHVlLEMpO3JldHVybiBEPT09dm9pZCAwfHwhRy5oYXMoRCl9KX12YXIgRj0odCgpPy52YWx1ZXx8IiIpLnRvTG93ZXJDYXNlKCk7cmV0dXJuIEY/RS5maWx0ZXIoQz0+e0M9Xy5CKEMsVUwpO3JldHVybiBDPy50ZXh0Py5jb250ZW50P0MudGV4dC5jb250ZW50LnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoRik6ITF9KTpFfSx2b2lkIDAsIlg2WTVNYyIpLHo9YXN5bmMoRSxBLEYpPT57RT1bXTtsKCk9PT0xJiZBLmtleT8oRT0KJGZhKEEua2V5LHAoKXx8W10pLHIoRSkpOmwoKT09PTMmJkEua2V5JiYoRT1uKCk/LnZhbHVlfHxbXSxFLmluY2x1ZGVzKEEua2V5KT8oRT1FLmluZGV4T2YoQS5rZXkpLEUhPT0tMSYmYXdhaXQgbigpPy5yZW1vdmUoRSkpOmF3YWl0IG4oKT8uYWRkKEEua2V5KSxFPW4oKT8udmFsdWV8fFtdKTtkPy4oQSxFLEYpfTtyZXR1cm4gXy5LKCJ5dC1jaGVja2JveC1ncm91cC12aWV3LW1vZGVsIix7Y2xhc3M6Xy5QKCJ5dENoZWNrYm94R3JvdXBWaWV3TW9kZWxIb3N0Iil9LF8uSygiZmllbGRzZXQiLHtjbGFzczpfLlAoInl0Q2hlY2tib3hHcm91cFZpZXdNb2RlbEZpZWxkc2V0Iil9LF8uSygiZGl2Iix7cm9sZToibGlzdCJ9LF8uSyhfLlcse2RhdGE6dn0se2NoZWNrYm94SXRlbVZpZXdNb2RlbDooe2RhdGE6RX0pPT5fLksoYWdhLHtkYXRhOkUsV2I6ITAsc2VsZWN0ZWQ6KCk9Pnt2YXIgQT1sKCk9PT0yP2M/LigpfHxbXTpsKCk9PT0zP24oKT8udmFsdWV8fFtdOnAoKXx8W10sRj1FKCkua2V5OwpyZXR1cm4gRj9BLmluY2x1ZGVzKEYpOiExfSxvblRhcDp6LGdyb3VwTmFtZTptLGRpc2FibGVIb3Jpem9udGFsUGFkZGluZzpmLG5hOmh9KX0pKSkpfSwiRWEiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5XZCgidkRjazFkIik7CgpfLlhkKCk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uSko9ZnVuY3Rpb24oYSxiKXtpZighYSYmIWIpcmV0dXJuIm1lZGl1bSI7YT1NYXRoLm1heChhfHwwLGJ8fDApO3JldHVybiBhPj0yNTY/ImxhcmdlIjphPj05Nj8ibWVkaXVtIjoic21hbGwifTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIEdlYT1mdW5jdGlvbihhKXtzd2l0Y2goYSl7Y2FzZSAyOnJldHVybiJ5dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVUb3VjaFJlc3BvbnNlSW52ZXJzZSI7Y2FzZSAzOnJldHVybiJ5dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVPdmVybGF5VG91Y2hSZXNwb25zZSI7Y2FzZSA0OnJldHVybiJ5dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVPdmVybGF5VG91Y2hSZXNwb25zZUludmVyc2UiO2RlZmF1bHQ6cmV0dXJuInl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRvdWNoUmVzcG9uc2UifX0sSGVhPWZ1bmN0aW9uKGEsYil7aWYoYilyZXR1cm4ieXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVGh1bWJuYWlsU2l6ZVNtYWxsIjtpZihhKXN3aXRjaChhKXtjYXNlICJsYXJnZSI6cmV0dXJuInl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRodW1ibmFpbFNpemVMYXJnZSI7Y2FzZSAibWVkaXVtIjpyZXR1cm4ieXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVGh1bWJuYWlsU2l6ZU1lZGl1bSI7ZGVmYXVsdDpyZXR1cm4ieXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVGh1bWJuYWlsU2l6ZVNtYWxsIn19LApJZWE9Y2xhc3N7Y29uc3RydWN0b3IoYSxiKXt0aGlzLmo9bmV3IEFuaW1hdGlvbihuZXcgS2V5ZnJhbWVFZmZlY3QoYSxbe29mZnNldDowLG9wYWNpdHk6LjEsZWFzaW5nOiJjdWJpYy1iZXppZXIoMC4wNSwgMC4wMCwgMC4wMCwgMS4wMCkifSx7b2Zmc2V0OjEsb3BhY2l0eTowfV0se2R1cmF0aW9uOjQwMH0pLGRvY3VtZW50LnRpbWVsaW5lKTt0aGlzLm89bmV3IEFuaW1hdGlvbihuZXcgS2V5ZnJhbWVFZmZlY3QoYixbe29mZnNldDowLG9wYWNpdHk6LjIsZWFzaW5nOiJjdWJpYy1iZXppZXIoMC4yMCwgMC4wMCwgMC42MCwgMS4wMCkifSx7b2Zmc2V0OjEsb3BhY2l0eTowfV0se2R1cmF0aW9uOjQwMH0pLGRvY3VtZW50LnRpbWVsaW5lKX1wbGF5KCl7dGhpcy5qLnBsYXk/LigpO3RoaXMuby5wbGF5Py4oKX1jYW5jZWwoKXt0aGlzLmouY2FuY2VsPy4oKTt0aGlzLm8uY2FuY2VsPy4oKX19O18uVUM9Xy5MKCh7bW9kZWw6YSxUbTpiLFZtOmMsVW06ZCxSYjplfSk9PntmdW5jdGlvbiBmKCl7digpO3IoITEpfWZ1bmN0aW9uIGgoKXt0Py5jYW5jZWwoKTtyKCEwKX12YXIgaz1fLnVFKCJ5dC10b3VjaC1mZWVkYmFjay1zaGFwZSIpLGw9Xy51RSgiZGl2IiksbT1fLnVFKCJkaXYiKSxbbixwXT1fLkFDKCgpPT5jPy4oKXx8ZD8uKCk/ITE6ISFiPy4oKXx8ITEpLHI9cCx0PXZvaWQgMCx2PSgpPT57IXQmJm0udmFsdWUmJmwudmFsdWUmJnR5cGVvZiBBbmltYXRpb249PT0iZnVuY3Rpb24iJiZ0eXBlb2YgS2V5ZnJhbWVFZmZlY3Q9PT0iZnVuY3Rpb24iJiYodD1uZXcgSWVhKG0udmFsdWUsbC52YWx1ZSkpO3Q/LnBsYXkoKX07Xy5uRSgoKT0+e2M/LigpJiZ2KCl9LCJDWTJTIik7Xy5uRSgoKT0+e2I/LigpJiZ0Py5jYW5jZWwoKX0sInZlcWY2YiIpO18ubkUoKCk9PntkPy4oKSYmdD8uY2FuY2VsKCl9LCJUVnJmQ2MiKTtfLll1KCgpPT57dCYmKHQ/LmNhbmNlbCgpLHQ9dm9pZCAwKX0pOwpyZXR1cm4gXy5LKCJ5dC10b3VjaC1mZWVkYmFjay1zaGFwZSIse2VsOmssY2xhc3M6Xy5QKCJ5dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVIb3N0IiwoKT0+R2VhKGEoKS5jb2xvciksKCk9PkhlYShhKCkudGh1bWJuYWlsU2l6ZSwhIWEoKS5pc0V4dGVuZGVkKSx7eXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRm9jdXNlZDooKT0+ISFhKCkuZm9jdXNlZCYmIWEoKS5kaXNhYmxlZCx5dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVDaXJjdWxhcjooKT0+ISFhKCkuY2lyY3VsYXIseXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRG93bjpuLHl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRyaWdnZXJFdmVudHM6KCk9PiEhYSgpLm1CLHl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUhvdmVyZWQ6KCk9PmU/LigpfSksc3R5bGU6Xy5JRSh7bWFyZ2luOigpPT5hKCkubWFyZ2luP2AtJHthKCkubWFyZ2lufXB4YDp2b2lkIDAsIm1hcmdpbi10b3AiOigpPT5hKCkueHA/YC0ke2EoKS54cH1weGA6dm9pZCAwfSksIm9uOm1vdXNlZG93biI6aCwKIm9uOm1vdXNldXAiOmYsIm9uOnBvaW50ZXJsZWF2ZSI6ZnVuY3Rpb24oKXt0Py5jYW5jZWwoKTtyKCExKX0sIm9uOnRvdWNoc3RhcnQiOmgsIm9uOnRvdWNoZW5kIjpmLCJhcmlhLWhpZGRlbiI6ITB9LF8uSyhfLk8se0E6KCk9PiEhYSgpLk5sLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUhvdmVyRWZmZWN0IixzdHlsZTpfLklFKHsiYm9yZGVyLXJhZGl1cyI6KCk9PmEoKS5ib3JkZXJSYWRpdXMsYmFja2dyb3VuZDooKT0+e3tsZXQgRT1hKCkuTmw7aWYoRSl7dmFyIHo9W107Zm9yKGxldCBBIG9mIEU/LmxpZ2h0aW5nVGVjaG5pcXVlc3x8W10pc3dpdGNoKEEpe2Nhc2UgMjp6LnB1c2goYGxpbmVhci1ncmFkaWVudCgxODBkZWcsICR7RT8ucGFsZXR0ZT8ua2V5TGlnaHR9LCAke0U/LnBhbGV0dGU/LmJhY2tncm91bmR9KWApfXoucHVzaChhKCkuTmw/LnBhbGV0dGU/LmJhY2tncm91bmQpO3o9ei5qb2luKCIsICIpfWVsc2Ugej12b2lkIDB9cmV0dXJuIHp9fSl9KX0pLApfLksoImRpdiIse2NsYXNzOiJ5dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVTdHJva2UiLHN0eWxlOl8uSUUoeyJib3JkZXItcmFkaXVzIjooKT0+YSgpLmJvcmRlclJhZGl1cywiYm9yZGVyLWNvbG9yIjooKT0+YSgpLnRzPy5wYWxldHRlPy5iYWNrZ3JvdW5kfSksZWw6bH0pLF8uSygiZGl2Iix7Y2xhc3M6Inl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUZpbGwiLHN0eWxlOl8uSUUoeyJib3JkZXItcmFkaXVzIjooKT0+YSgpLmJvcmRlclJhZGl1cywiYmFja2dyb3VuZC1jb2xvciI6KCk9PmEoKS50cz8ucGFsZXR0ZT8uYmFja2dyb3VuZH0pLGVsOm19KSl9LCJUIik7Xy5VQy5pZG9tQ29tcGF0PSEwOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLldkKCJPdEtTSmUiKTsKCl8uWGQoKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIE9hYSxQYWEsUWFhO09hYT1mdW5jdGlvbihhLGIpe3ZhciBjPXt9LGQ9T2JqZWN0LmtleXMoYSk7Zm9yKGxldCBlIG9mIGQpY1tlXT1iKGUsYVtlXSk7cmV0dXJuIGN9O1BhYT1mdW5jdGlvbihhLGIpe3JldHVybiB0eXBlb2YgYSE9PSJvYmplY3QifHxhPT09bnVsbD8hMTpPYmplY3Qua2V5cyhiKS5ldmVyeShjPT5jIGluIGEpfTtfLmlBPWZ1bmN0aW9uKGEpe3JldHVybiBPYmplY3QuZnJvbUVudHJpZXMoT2JqZWN0LmtleXMoYSkubWFwKGI9PltiLGJdKSl9O1FhYT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIE9hYShjLChkLGUpPT4oZiwuLi5oKT0+UGFhKGYsYSk/ZShmW2JdLC4uLmgpOmUoZiwuLi5oKSl9O18uakE9ZnVuY3Rpb24oYSl7cmV0dXJuKGIsYyk9PlFhYShhLGIsYyl9Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgVGFhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8ucUEoYSwicGxheWxpc3RMb29wU3RhdGVFbnRpdHkiLGIpPz92b2lkIDB9LFVhYT1mdW5jdGlvbihhLGIpe3JldHVybiBfLnFBKGEsInRvZ2dsZU1lbnVTZXJ2aWNlSXRlbUVudGl0eSIsYik/P3ZvaWQgMH0sd0E9Xy5pQSh7ZW50aXRpZXM6e319KTtfLnhBPV8uakEod0EpKHdBLmVudGl0aWVzLHtiQTpmdW5jdGlvbihhLGIpe3JldHVybihfLnFBKGEsInNmdkF1ZGlvSXRlbUN1cnJlbnRseVBsYXlpbmdFbnRpdHkiLGIpPz92b2lkIDApPy5zZnZBdWRpb0l0ZW1QbGF5YmFja1N0YXRlPz92b2lkIDB9LHRLOlRhYSxlQjpVYWF9KTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5aQz1uZXcgXy5JKCJsaXN0SXRlbVZpZXdNb2RlbCIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgdkk7Xy51ST1mdW5jdGlvbihhLGIpe2lmKF8udEE/LmVuY29kZUludG8pe2xldCB7cmVhZDpkLHdyaXR0ZW46ZX09Xy50QS5lbmNvZGVJbnRvKGEsYik7cmV0dXJuIGQ8YS5sZW5ndGg/YS5sZW5ndGgqNDplfXZhciBjPTA7Zm9yKGxldCBkPTA7ZDxhLmxlbmd0aDtkKyspe2xldCBlPWEuY2hhckNvZGVBdChkKTtlPDEyOD9iW2MrK109ZTooZTwyMDQ4P2JbYysrXT1lPj42fDE5MjooKGUmNjQ1MTIpPT09NTUyOTYmJmQrMTxhLmxlbmd0aCYmKGEuY2hhckNvZGVBdChkKzEpJjY0NTEyKT09PTU2MzIwPyhlPTY1NTM2KygoZSYxMDIzKTw8MTApKyhhLmNoYXJDb2RlQXQoKytkKSYxMDIzKSxiW2MrK109ZT4+MTh8MjQwLGJbYysrXT1lPj4xMiY2M3wxMjgpOmJbYysrXT1lPj4xMnwyMjQsYltjKytdPWU+PjYmNjN8MTI4KSxiW2MrK109ZSY2M3wxMjgpfXJldHVybiBjfTsKdkk9ZnVuY3Rpb24oYSxiLGMpe2lmKGImJmMmJmMuYnVmZmVyPT09Yi5leHBvcnRzLm1lbW9yeS5idWZmZXIpe2xldCBkPWIubWVtb3J5LnJlYWxsb2MoYy5ieXRlT2Zmc2V0LGEpO2lmKGQpcmV0dXJuIG5ldyBVaW50OEFycmF5KGIuZXhwb3J0cy5tZW1vcnkuYnVmZmVyLGQsYSl9YT1iP25ldyBVaW50OEFycmF5KGIuZXhwb3J0cy5tZW1vcnkuYnVmZmVyLGIubWVtb3J5Lm1hbGxvYyhhKSxhKTpuZXcgVWludDhBcnJheShhKTtjJiZhLnNldChjKTtyZXR1cm4gYX07Xy53ST1mdW5jdGlvbihhLGIpe2I9YS5wb3MrYjtpZighKGEuYnVmLmxlbmd0aD49Yikpe2Zvcih2YXIgYz1hLmJ1Zi5sZW5ndGgqMjtjPGI7KWMqPTI7YS5idWY9dkkoYyxhLndhc20sYS5idWYuc3ViYXJyYXkoMCxhLnBvcykpO2Eudmlldz1uZXcgRGF0YVZpZXcoYS5idWYuYnVmZmVyLGEuYnVmLmJ5dGVPZmZzZXQsYS5idWYuYnl0ZUxlbmd0aCl9fTsKXy54ST1mdW5jdGlvbihhLGIpe2lmKGI+MjY4NDM1NDU1KXtfLndJKGEsNCk7bGV0IGM9YiYxMDczNzQxODIzO2ZvcihsZXQgZD0wO2Q8NDtkKyspYS52aWV3LnNldFVpbnQ4KGEucG9zLGMmMTI3fDEyOCksYz4+Pj03LGEucG9zKz0xO2I9TWF0aC5mbG9vcihiLzI2ODQzNTQ1Nil9Zm9yKF8ud0koYSw0KTtiPjEyNzspYS52aWV3LnNldFVpbnQ4KGEucG9zLGImMTI3fDEyOCksYj4+Pj03LGEucG9zKz0xO2Eudmlldy5zZXRVaW50OChhLnBvcyxiKTthLnBvcys9MX07Cl8uekk9ZnVuY3Rpb24oYSxiKXt2YXIgYz1uZXcgXy55STtpZihfLnRBKWE9Xy50QS5lbmNvZGUoYSk7ZWxzZXt2YXIgZD1uZXcgVWludDhBcnJheShNYXRoLmNlaWwoYS5sZW5ndGgqMS4yKSksZT1fLnVJKGEsZCk7ZC5sZW5ndGg8ZSYmKGQ9bmV3IFVpbnQ4QXJyYXkoZSksZT1fLnVJKGEsZCkpO2QubGVuZ3RoPmUmJihkPWQuc3ViYXJyYXkoMCxlKSk7YT1kfWEhPT12b2lkIDAmJihfLnhJKGMsMTgpLGQ9YS5sZW5ndGgsXy54SShjLGQpLF8ud0koYyxkKSxjLmJ1Zi5zZXQoYSxjLnBvcyksYy5wb3MrPWQpO2E9Xy51QVtiXTtpZih0eXBlb2YgYT09PSJ1bmRlZmluZWQiKXRocm93IGI9bmV3IF8uWGooIkZhaWxlZCB0byByZWNvZ25pemUgZW50aXR5IHR5cGUiLHtuYW1lOiJFbnRpdHlLZXlIZWxwZXJFcnJvciIsZW50aXR5VHlwZTpifSksXy5HcChiKSxiO2EhPT12b2lkIDAmJihfLnhJKGMsMzIpLF8ueEkoYyxhKSk7Xy54SShjLDQwKTtfLnhJKGMsMSk7Yj1uZXcgVWludDhBcnJheShjLmJ1Zi5idWZmZXIsCmMuYnVmLmJ5dGVPZmZzZXQsYy5wb3MpO3JldHVybiBlbmNvZGVVUklDb21wb25lbnQoXy5zYyhiLDApKX07Xy55ST1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMud2FzbT12b2lkIDA7dGhpcy5wb3M9MDt0aGlzLmo9W107dGhpcy5idWY9dkkoNDA5Nik7dGhpcy52aWV3PW5ldyBEYXRhVmlldyh0aGlzLmJ1Zi5idWZmZXIsdGhpcy5idWYuYnl0ZU9mZnNldCx0aGlzLmJ1Zi5ieXRlTGVuZ3RoKX19O18uekkoIiIsImRvd25sb2Fkc1BhZ2VWaWV3Q29uZmlndXJhdGlvbkVudGl0eSIpO18uekkoIkRPV05MT0FEU19MSVNUX0VOVElUWV9JRF9NQU5VQUxfRE9XTkxPQURTIiwibWFpbkRvd25sb2Fkc0xpc3RFbnRpdHkiKTtfLnpJKCJET1dOTE9BRFNfTElTVF9FTlRJVFlfSURfU01BUlRfRE9XTkxPQURTIiwibWFpbkRvd25sb2Fkc0xpc3RFbnRpdHkiKTtfLnpJKCJET1dOTE9BRFNfTElTVF9FTlRJVFlfSURfU01BUlRfRE9XTkxPQURTIiwicmVmcmVzaCIpO18uekkoIlNNQVJUX0RPV05MT0FEU19FTkFCTEVEIiwic2V0dGluZ0VudGl0eSIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLkFJPW5ldyBfLkkoIm9mZmxpbmVQbGF5bGlzdEVuZHBvaW50Iik7Xy5CST1uZXcgXy5JKCJvZmZsaW5lVmlkZW9FbmRwb2ludCIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgWmRhO18uRUk9ZnVuY3Rpb24oYSxiLGMsZCxlKXthPWI/YS5zd2l0Y2hPZmZDb21tYW5kOmEuc3dpdGNoT25Db21tYW5kO2lmKGQmJmUpWmRhKGEsYyxlKTtlbHNlIF8uYkUoe2JoOmF9KT8ub25jbGljaz8uKGMpfTtaZGE9ZnVuY3Rpb24oYSxiLGMpe2E9Xy5iRSh7Ymg6YSxBbzp7RWk6e29uU3VjY2VzczooKT0+e2MoITEpfSxuejooKT0+e2MoITEpfX19fSk7YT8ub25jbGljayYmKGEub25jbGljayhiKSxjKCEwKSl9O18uJGRhPW5ldyBfLkkoInN3aXRjaEJ1dHRvblZpZXdNb2RlbCIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgZUo9ZnVuY3Rpb24oYSl7aWYoYSlyZXR1cm4gXy5CKGEsXy4kZGEpfTtfLmZKPV8uTCgoe2RhdGE6YSxvblRhcDpiLGtLOmMsbUs6ZCxkaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmc6ZSxMaTpmLG5hOmh9KT0+e2Z1bmN0aW9uIGsoRil7aWYoIUYub3Upe0Yub3U9ITA7dmFyIEM9ZUooQSgpKTshQ3x8Qy5pc0Rpc2FibGVkfHxhKCkuaWdub3JlVGFwVW50aWxDb21tYW5kQ29tcGxldGVzJiZ2KCl8fChiPy4oRiksXy5FSShDLEUoKSxGLGEoKS5pZ25vcmVUYXBVbnRpbENvbW1hbmRDb21wbGV0ZXMseiksKGEoKS5mb3JtRmllbGRNZXRhZGF0YSYmIWY/LigpPzM6MSk9PT0zP2woKT8udXBkYXRlVmFsdWUoIUUoKSk6cCghRSgpKSxjPy4oRSgpKSl9fXZhciBsPV8uWkkoKCk9PmEoKS5mb3JtRmllbGRNZXRhZGF0YSksW20sbl09Xy5BQygoKT0+ZUooQSgpKT8uc3dpdGNoZWRPbkJ5RGVmYXVsdHx8ITEpLHA9bixbcix0XT1fLkooITEsdm9pZCAwLCJPdmt1bGUiKSx2PXIsej10LEU9KCk9PihhKCkuZm9ybUZpZWxkTWV0YWRhdGEmJiFmPy4oKT8zOjEpPT09Mz9sKCk/LnZhbHVlfHwKITE6bSgpLEE9KCk9Pnt2YXIgRjtpZighKEY9YSgpLnN3aXRjaEJ1dHRvbikpe3ZhciBDPWEoKTtGPWQ/LigpO0M9e3N3aXRjaE9uQ29tbWFuZDpDLnN3aXRjaE9uQ29tbWFuZCxzd2l0Y2hPZmZDb21tYW5kOkMuc3dpdGNoT2ZmQ29tbWFuZCxzd2l0Y2hlZE9uQnlEZWZhdWx0OkMuc3dpdGNoZWRPbkJ5RGVmYXVsdCxpc0Rpc2FibGVkOkMuaXNEaXNhYmxlZCxhMTF5TGFiZWxTd2l0Y2hlZE9uOkMuYTExeUxhYmVsU3dpdGNoZWRPbixhMTF5TGFiZWxTd2l0Y2hlZE9mZjpDLmExMXlMYWJlbFN3aXRjaGVkT2ZmfTtGIT09dm9pZCAwJiYoQy5pc0Rpc2FibGVkPUYpO0Y9e3N3aXRjaEJ1dHRvblZpZXdNb2RlbDpDfX1DPWVKKEYpO2lmKCFDKXJldHVybiBGO3ZhciBHPWEoKS50aXRsZT8uY29udGVudDtyZXR1cm4gRz97c3dpdGNoQnV0dG9uVmlld01vZGVsOnsuLi5DLGExMXlMYWJlbFN3aXRjaGVkT246RyxhMTF5TGFiZWxTd2l0Y2hlZE9mZjpHfX06Rn07cmV0dXJuIF8uSygic3dpdGNoLWxpc3QtaXRlbS12aWV3LW1vZGVsIiwKe2NsYXNzOiJ5dFN3aXRjaExpc3RJdGVtVmlld01vZGVsSG9zdCIsIm9uOmNsaWNrIjprfSxfLksoXy5DRCx7ZGF0YTooKT0+KHt0aXRsZTphKCkudGl0bGUsc3VidGl0bGU6YSgpLmF0dHJpYnV0ZWRTdWJ0aXRsZSxsZWFkaW5nSW1hZ2U6YSgpLmxlYWRpbmdJbWFnZSxsZWFkaW5nQWNjZXNzb3J5OmEoKS5sZWFkaW5nQWNjZXNzb3J5LGlzRGlzYWJsZWQ6YSgpLmlzRGlzYWJsZWR9KSxpc1RvZ2dsZWQ6RSxEZzohMCxuYTpoLHhzOigpPT5fLksoXy5XLHtkYXRhOkF9LHtzd2l0Y2hCdXR0b25WaWV3TW9kZWw6KHtkYXRhOkZ9KT0+Xy5LKF8ua0kse2RhdGE6RixxcjpFLG9uVGFwOmt9KX0pLGRpc2FibGVIb3Jpem9udGFsUGFkZGluZzplfSkpfSwiSiIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgY2VhLGdKLGRlYSxoSixpSixlZWEsZmVhLGdlYSxoZWEsamVhLGtlYSxsZWEsbWVhLGpKLGtKLG1KLG5lYSxvZWEscGVhLHRlYSx1ZWEscUosckosc0osd2VhLHRKLGllYSx1SjtjZWE9ZnVuY3Rpb24oYSxiPTIpe18ueEkoYSwxMCk7YS5qLnB1c2goYS5wb3MpO2Euai5wdXNoKGIpO2EucG9zKz1ifTsKZ0o9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IF8ueUk7aWYoYSE9PXZvaWQgMCl7Y2VhKGIsTWF0aC5jZWlsKE1hdGgubG9nMihhLmxlbmd0aCo0KzIpLzcpKTtfLndJKGIsYS5sZW5ndGgqMS4yKTt2YXIgYz1fLnVJKGEsYi5idWYuc3ViYXJyYXkoYi5wb3MpKTtiLnBvcytjPmIuYnVmLmxlbmd0aCYmKF8ud0koYixjKSxjPV8udUkoYSxiLmJ1Zi5zdWJhcnJheShiLnBvcykpKTtiLnBvcys9YzthPWIuai5wb3AoKTtjPWIuai5wb3AoKTtsZXQgZD1iLnBvcy1jLWE7Zm9yKDthLS07KXtsZXQgZT1hPzEyODowO2Iudmlldy5zZXRVaW50OChjKyssZCYxMjd8ZSk7ZD4+PTd9fWI9bmV3IFVpbnQ4QXJyYXkoYi5idWYuYnVmZmVyLGIuYnVmLmJ5dGVPZmZzZXQsYi5wb3MpO3JldHVybihuZXcgVGV4dERlY29kZXIoInV0Zi04IikpLmRlY29kZShiKX07CmRlYT1mdW5jdGlvbihhLGIpe2lmKCFiKXJldHVybltdO2I9Xy56SShiLCJtYWluUGxheWxpc3RFbnRpdHkiKTt2YXIgYz1hLm1haW5QbGF5bGlzdEVudGl0eT8uW2JdO2I9W107aWYoIWM/LnZpZGVvcylyZXR1cm4gYjtmb3IobGV0IGQgb2YgYy52aWRlb3Mpe2M9YT8ubWFpblBsYXlsaXN0VmlkZW9FbnRpdHk/LltkXT8udmlkZW87aWYoIWMpY29udGludWU7KHtlbnRpdHlJZDpjfT1fLkdIKGMpKTtjJiZiLnB1c2goYyl9cmV0dXJuIGJ9O2hKPWZ1bmN0aW9uKGEpe3JldHVybiJkb3dubG9hZGVkTXVzaWNQbGF5bGlzdEVudGl0aWVzImluIGF9OwppSj1mdW5jdGlvbihhKXt2YXIgYj1hLm11c2ljUGxheWxpc3REb3dubG9hZE1ldGFkYXRhRW50aXR5LGM9W107aWYoIWIpcmV0dXJuIGM7Zm9yKGxldCBoIG9mIE9iamVjdC5rZXlzKGIpKXthOnt2YXIgZD1hLGU9Xy5HSChoKS5lbnRpdHlJZDtpZihlKXt2YXIgZj1fLnFBKGQsIm11c2ljUGxheWxpc3QiLF8uekkoZSwibXVzaWNQbGF5bGlzdCIpKTtkPV8ucUEoZCwibXVzaWNQbGF5bGlzdERvd25sb2FkTWV0YWRhdGFFbnRpdHkiLF8uekkoZSwibXVzaWNQbGF5bGlzdERvd25sb2FkTWV0YWRhdGFFbnRpdHkiKSk7aWYoZiYmZCl7Zj17bXVzaWNQbGF5bGlzdEVudGl0eTpmLG11c2ljUGxheWxpc3REb3dubG9hZFN0YXRlRW50aXR5OmR9O2JyZWFrIGF9fWY9dm9pZCAwfWQ9TnVtYmVyKGJbaF0/LmFkZGVkVGltZXN0YW1wTWlsbGlzKTtkPWlzTmFOKGQpPygwLF8uZWwpKCk6ZDtmIT09dm9pZCAwJiZjLnB1c2goe2Rvd25sb2FkZWRNdXNpY1BsYXlsaXN0RW50aXRpZXM6ZixhZGRlZFRpbWVzdGFtcE1pbGxpczpkfSl9cmV0dXJuIGN9OwplZWE9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IFNldDtmb3IobGV0IGMgb2YgYSlpZigibXVzaWNQbGF5bGlzdEVudGl0eSJpbiBjJiYibXVzaWNQbGF5bGlzdERvd25sb2FkU3RhdGVFbnRpdHkiaW4gYylmb3IobGV0IGQgb2YgYy5tdXNpY1BsYXlsaXN0RW50aXR5LnRyYWNrcyliLmFkZChkKTtyZXR1cm4gYn07CmZlYT1mdW5jdGlvbihhKXt2YXIgYj1hLm11c2ljVHJhY2tEb3dubG9hZE1ldGFkYXRhRW50aXR5LGM9W107aWYoIWIpcmV0dXJuW107Zm9yKGxldCBtIG9mIE9iamVjdC5rZXlzKGIpKXthOnt2YXIgZD1hLGU9Xy5HSChtKS5lbnRpdHlJZDtpZihlKXtiPV8ucUEoZCwibXVzaWNUcmFjayIsXy56SShlLCJtdXNpY1RyYWNrIikpO3ZhciBmPV8ucUEoZCwibXVzaWNBcnRpc3QiLF8uekkoZSwibXVzaWNBcnRpc3QiKSl8fHt9O2I6e3ZhciBoPWU7aWYoaCl7ZT1fLnFBKGQsInBsYXliYWNrRGF0YSIsXy56SShoLCJwbGF5YmFja0RhdGEiKSk/P251bGw7dmFyIGs9Xy5xQShkLCJ0cmFuc2ZlciIsXy56SShoLCJ0cmFuc2ZlciIpKT8/bnVsbCxsPV8ucUEoZCwib2ZmbGluZVZpZGVvU3RyZWFtcyIsXy56SShoLCJvZmZsaW5lVmlkZW9TdHJlYW1zIikpPz9udWxsO2Q9Xy5xQShkLCJvZmZsaW5lVmlkZW9Qb2xpY3kiLF8uekkoaCwib2ZmbGluZVZpZGVvUG9saWN5IikpPz9udWxsO2lmKGV8fAprfHxsfHxkKXtkPXtwbGF5YmFja0RhdGFFbnRpdHk6ZSx0cmFuc2ZlckVudGl0eTprLHN0cmVhbUVudGl0eTpsLHBvbGljeUVudGl0eTpkfTticmVhayBifX1kPXZvaWQgMH1pZihkJiZiJiZmKXtiPXttdXNpY1RyYWNrRW50aXR5OmIsbXVzaWNBcnRpc3RFbnRpdHk6ZiwuLi5kfTticmVhayBhfX1iPXZvaWQgMH1mPU51bWJlcihfLnFBKGEsIm11c2ljVHJhY2tEb3dubG9hZE1ldGFkYXRhRW50aXR5IixtKT8uYWRkZWRUaW1lc3RhbXBNaWxsaXMpO2Y9aXNOYU4oZik/KDAsXy5lbCkoKTpmO2IhPT12b2lkIDAmJmMucHVzaCh7ZG93bmxvYWRlZE11c2ljRW50aXRpZXM6YixhZGRlZFRpbWVzdGFtcE1pbGxpczpmfSl9cmV0dXJuIGN9OwpnZWE9ZnVuY3Rpb24oYSl7dmFyIGI9ZmVhKGEpLnNvcnQoKGMsZCk9PmQuYWRkZWRUaW1lc3RhbXBNaWxsaXMtYy5hZGRlZFRpbWVzdGFtcE1pbGxpcykubWFwKGM9PiJkb3dubG9hZGVkTXVzaWNFbnRpdGllcyJpbiBjP2MuZG93bmxvYWRlZE11c2ljRW50aXRpZXM6aEooYyk/Yy5kb3dubG9hZGVkTXVzaWNQbGF5bGlzdEVudGl0aWVzOnt9KTthPWlKKGEpLnNvcnQoKGMsZCk9PmQuYWRkZWRUaW1lc3RhbXBNaWxsaXMtYy5hZGRlZFRpbWVzdGFtcE1pbGxpcykubWFwKGM9PiJkb3dubG9hZGVkTXVzaWNFbnRpdGllcyJpbiBjP2MuZG93bmxvYWRlZE11c2ljRW50aXRpZXM6aEooYyk/Yy5kb3dubG9hZGVkTXVzaWNQbGF5bGlzdEVudGl0aWVzOnt9KTtyZXR1cm57ZG93bmxvYWRlZE11c2ljRW50aXRpZXM6Yixkb3dubG9hZGVkTXVzaWNQbGF5bGlzdEVudGl0aWVzOmF9fTsKaGVhPWZ1bmN0aW9uKGEsYil7dmFyIGM9bmV3IFNldCxkPWlKKGEpLm1hcChlPT5lLmRvd25sb2FkZWRNdXNpY1BsYXlsaXN0RW50aXRpZXMpO2Q9ZWVhKGQpO2ZvcihsZXQgZSBvZiBkKSh7ZW50aXR5SWQ6ZH09Xy5HSChlKSksZCYmYy5hZGQoZCk7KHtkb3dubG9hZGVkTXVzaWNFbnRpdGllczphfT1nZWEoYSkpO3JldHVybiBhLmZpbHRlcihlPT57aWYoZS5tdXNpY1RyYWNrRW50aXR5Py52aWRlb0lkKXtlPWUubXVzaWNUcmFja0VudGl0eTt2YXIgZjtpZihmPWI9PT0iUFBPTSI/ITA6IWMuaGFzKGUudmlkZW9JZCkpYjpzd2l0Y2goZT1lLm11c2ljVmlkZW9UeXBlLGIpe2Nhc2UgIlBQU0UiOmY9ZT09PSJNVVNJQ19WSURFT19UWVBFX1BPRENBU1RfRVBJU09ERSI7YnJlYWsgYjtkZWZhdWx0OmY9ZSE9PSJNVVNJQ19WSURFT19UWVBFX1BPRENBU1RfRVBJU09ERSJ9ZT1mfWVsc2UgZT0hMTtyZXR1cm4gZX0pLm1hcChlPT5lLm11c2ljVHJhY2tFbnRpdHk/LnZpZGVvSWQpfTsKamVhPWZ1bmN0aW9uKGEsYil7aWYoIWIpcmV0dXJuW107aWYoT2JqZWN0LnZhbHVlcyhpZWEpLmluY2x1ZGVzKGIpKXJldHVybiBoZWEoYSxiKTtiPV8uekkoYiwibXVzaWNQbGF5bGlzdCIpO2I9YS5tdXNpY1BsYXlsaXN0Py5bYl07YT1bXTtpZighYj8udHJhY2tzKXJldHVybiBhO2ZvcihsZXQgYyBvZiBiLnRyYWNrcykoe2VudGl0eUlkOmJ9PV8uR0goYykpLGImJmEucHVzaChiKTtyZXR1cm4gYX07CmtlYT1mdW5jdGlvbihhKXt2YXIgYj1uZXcgU2V0KGEpO2lmKGIuaGFzKCJUUkFOU0ZFUl9TVEFURV9GQUlMRUQiKSYmYi5zaXplPT09MSlyZXR1cm4iVFJBTlNGRVJfU1RBVEVfRkFJTEVEIjtiLmRlbGV0ZSgiVFJBTlNGRVJfU1RBVEVfRkFJTEVEIik7aWYoYi5oYXMoIlRSQU5TRkVSX1NUQVRFX1VOS05PV04iKSYmYi5zaXplPT09MSlyZXR1cm4iVFJBTlNGRVJfU1RBVEVfUFJFX1RSQU5TRkVSIjtiLmRlbGV0ZSgiVFJBTlNGRVJfU1RBVEVfVU5LTk9XTiIpO2lmKGIuaGFzKCJUUkFOU0ZFUl9TVEFURV9QUkVfVFJBTlNGRVIiKSYmYi5zaXplPT09MXx8Yi5zaXplPT09MClyZXR1cm4iVFJBTlNGRVJfU1RBVEVfUFJFX1RSQU5TRkVSIjthPWIuaGFzKCJUUkFOU0ZFUl9TVEFURV9UUkFOU0ZFUlJJTkciKTtiPWIuaGFzKCJUUkFOU0ZFUl9TVEFURV9UUkFOU0ZFUl9JTl9RVUVVRSIpO3JldHVybiBhfHxiPyJUUkFOU0ZFUl9TVEFURV9UUkFOU0ZFUlJJTkciOiJUUkFOU0ZFUl9TVEFURV9DT01QTEVURSJ9OwpsZWE9ZnVuY3Rpb24oYSxiKXtiPV8udygiSU5ORVJUVUJFX0NMSUVOVF9OQU1FIik9PT0iV0VCX1JFTUlYIj9qZWEoYSxiKTpkZWEoYSxiKTtpZighYi5sZW5ndGgpcmV0dXJuIlRSQU5TRkVSX1NUQVRFX1VOS05PV04iO2I9Yi5tYXAoYz0+e2M9Yz8oYz1fLnFBKGEsInRyYW5zZmVyIixfLnpJKGMsInRyYW5zZmVyIikpKT9jLnRyYW5zZmVyU3RhdGU/PyJUUkFOU0ZFUl9TVEFURV9VTktOT1dOIjoiVFJBTlNGRVJfU1RBVEVfVU5LTk9XTiI6IlRSQU5TRkVSX1NUQVRFX1VOS05PV04iO3JldHVybiBjfSk7cmV0dXJuIGtlYShiKX07bWVhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8ucUEoYS5lbnRpdGllcywiZG93bmxvYWRTdGF0dXNFbnRpdHkiLF8uekkoYiwiZG93bmxvYWRTdGF0dXNFbnRpdHkiKSk/LmRvd25sb2FkU3RhdGU9PT0iRE9XTkxPQURfU1RBVEVfVVNFUl9ERUxFVEVEIj8hMDohMX07ako9ZnVuY3Rpb24oKXtyZXR1cm4gdHlwZW9mIENTUyE9PSJ1bmRlZmluZWQiJiZDU1Muc3VwcG9ydHM/Ligic2VsZWN0b3IoOmhhcygqKSkiKX07CmtKPWZ1bmN0aW9uKGEpe3JldHVybiBhLnZpc2liaWxpdHkhPT0iaGlkZGVuIiYmYS5kaXNwbGF5IT09Im5vbmUifTttSj1mdW5jdGlvbihhKXtpZihqSigpfHxhLnRhZ05hbWUhPT0iREVUQUlMUyI/IWEubWF0Y2hlcyhsSik6YS5xdWVyeVNlbGVjdG9yKCJzdW1tYXJ5IikhPT1udWxsKXJldHVybi0xO2E9YS5nZXRBdHRyaWJ1dGUoInRhYmluZGV4Iil8fCIwIjtyZXR1cm4gTnVtYmVyKGEpfTtuZWE9ZnVuY3Rpb24oYSl7cmV0dXJuIGEuc29tZShiPT5tSihiKT4wKX07b2VhPWZ1bmN0aW9uKGEpe2lmKGEudGV4dENvbnRlbnR8fGEuYXJpYUxhYmVsKXJldHVybiEwO2lmKGEgaW5zdGFuY2VvZiBIVE1MSW5wdXRFbGVtZW50KXtpZighYS5sYWJlbHMpcmV0dXJuITE7Zm9yKGxldCBiIG9mIGEubGFiZWxzKWlmKGIudGV4dENvbnRlbnQpcmV0dXJuITB9cmV0dXJuITF9O3BlYT1mdW5jdGlvbihhKXtyZXR1cm4gYS5zb3J0KChiLGMpPT5tSihjKS1tSihiKSl9OwpfLm5KPWZ1bmN0aW9uKGEpe2E9QXJyYXkuZnJvbShhLnF1ZXJ5U2VsZWN0b3JBbGwobEopKS5maWx0ZXIoYj0+KGtKKGIuc3R5bGUpP2tKKHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGIpKTohMSkmJm9lYShiKSk7cmV0dXJuIG5lYShhKT9wZWEoYSk6YX07CnRlYT1mdW5jdGlvbihhLGIsYyl7aWYoYilyZXR1cm5bb0pdO3N3aXRjaChhKXtjYXNlICJUUkFOU0ZFUl9TVEFURV9UUkFOU0ZFUl9JTl9RVUVVRSI6Y2FzZSAiVFJBTlNGRVJfU1RBVEVfQ09NUExFVEUiOnJldHVybltwSl07Y2FzZSAiVFJBTlNGRVJfU1RBVEVfUFJFX1RSQU5TRkVSIjpjYXNlICJUUkFOU0ZFUl9TVEFURV9UUkFOU0ZFUlJJTkciOnJldHVybiBjP1twSl06W3FlYSxwSl07Y2FzZSAiVFJBTlNGRVJfU1RBVEVfUEFVU0VEX0JZX1VTRVIiOnJldHVybltyZWEscEpdO2Nhc2UgIlRSQU5TRkVSX1NUQVRFX0ZBSUxFRCI6Y2FzZSAiVFJBTlNGRVJfU1RBVEVfV0FJVElOR19GT1JfUExBWUVSX1JFU1BPTlNFX1JFRlJFU0giOnJldHVybltzZWEscEpdO2RlZmF1bHQ6cmV0dXJuW29KXX19Owp1ZWE9ZnVuY3Rpb24oYSxiLGMsZCl7cmV0dXJuIHRlYShhLGIsZCkubWFwKGU9Pnt2YXIgZj1lLnRleHQsaD1lLmljb25UeXBlLGs9ZS5paTtlPWUuS2g7Zj1mP3tjb250ZW50OmZ9OnZvaWQgMDtoPWgmJntzb3VyY2VzOlt7Y2xpZW50UmVzb3VyY2U6e2ltYWdlTmFtZTpofX1dfTt2YXIgbD1fLnFkKGMpO2lmKGwpe2xldCBtPV8uQihsLF8uQkkpLG49Xy5CKGwsXy5BSSk7bSYmaz9tLmFjdGlvbj1rOm4mJmUmJihuLmFjdGlvbj1lKX1yZXR1cm57dGl0bGU6ZixsZWFkaW5nSW1hZ2U6aCxyZW5kZXJlckNvbnRleHQ6bCYme2NvbW1hbmRDb250ZXh0OntvblRhcDp7aW5uZXJ0dWJlQ29tbWFuZDpsfX19fX0pfTtxSj1mdW5jdGlvbihhKXthPV8uc0goYS5yZW5kZXJlckNvbnRleHQpO3JldHVybiBfLkIoYSxfLkJJKT8udmlkZW9JZH07cko9ZnVuY3Rpb24oYSl7YT1fLnNIKGEucmVuZGVyZXJDb250ZXh0KTtyZXR1cm4gXy5CKGEsXy5BSSk/LnBsYXlsaXN0SWR9OwpzSj1mdW5jdGlvbihhKXthPV8uQihhLF8uWkMpO3JldHVybiEhYSYmXy50SChhLnJlbmRlcmVyQ29udGV4dCl9O3dlYT1mdW5jdGlvbihhKXtyZXR1cm4gYS5saXN0SXRlbXM/LnNvbWUoYj0+e2lmKHNKKGIpKXJldHVybiEwO2I9Xy5CKGIsdmVhKTtyZXR1cm4hIWImJihfLnRIKGIucmVuZGVyZXJDb250ZXh0KXx8c0ooYi5kZWZhdWx0TGlzdEl0ZW0pfHxzSihiLnRvZ2dsZWRMaXN0SXRlbSkpfSl9O3RKPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5sZW5ndGg7YVtiPT09LTE/Yy0xOihiLTErYyklY10/LmZvY3VzKCl9O2llYT17ZEM6IlBQQUQiLE9DOiJQUERQIixMRjoiUFBPTSIscUc6IlBQUkMiLHdHOiJQUFNFIix4RzoiUFBTViJ9O3VKPSJhW2hyZWZdIGFbdGFiaW5kZXhdIGFyZWFbaHJlZl0gaWZyYW1lIFt0YWJpbmRleF0gW2NvbnRlbnRFZGl0YWJsZV0gc3VtbWFyeSBpbnB1dDpub3QoW2Rpc2FibGVkXSkgc2VsZWN0Om5vdChbZGlzYWJsZWRdKSB0ZXh0YXJlYTpub3QoW2Rpc2FibGVkXSkgYnV0dG9uOm5vdChbZGlzYWJsZWRdKSBvYmplY3Q6bm90KFtkaXNhYmxlZF0pIi5zcGxpdCgiICIpOwpqSigpJiZ1Si5wdXNoKCJkZXRhaWxzOm5vdCg6aGFzKHN1bW1hcnkpKSIpO3ZhciBsSj11Si5qb2luKCIsIik7dmFyIHZlYT1uZXcgXy5JKCJ0b2dnbGVhYmxlTGlzdEl0ZW1WaWV3TW9kZWwiKTt2YXIgeGVhPV8uTChhPT57dmFyIHtkYXRhOmIsY2xhc3NOYW1lOmMsbmE6ZCxJYTplLEJjOmZ9PV8uREMoYSx7bmE6ITEsSWE6ITEsQmM6ITF9KSxoPV8uY0kobj0+e2E6e3ZhciBwPWIoKS5lbnRpdHlLZXkscj1iKCkuZW50aXR5U2VsZWN0b3JUeXBlO2lmKHIpc3dpdGNoKHIpe2Nhc2UgIlRPR0dMRUFCTEVfTElTVF9JVEVNX0VOVElUWV9TRUxFQ1RPUl9UWVBFX1RPR0dMRV9NRU5VX1NFUlZJQ0VfSVRFTV9FTlRJVFkiOmlmKCFwKWJyZWFrO249KG49Xy54QS5lQihuLHApKSYmbi5pc1RvZ2dsZWQhPT12b2lkIDA/e2lzVG9nZ2xlZDpuLmlzVG9nZ2xlZH06dm9pZCAwO2JyZWFrIGE7ZGVmYXVsdDpfLklwKG5ldyBfLlhqKCJFcnJvcjogZW50aXR5U2VsZWN0b3JUeXBlIGRlZmluZWQgYnV0IG5vdCBtYXRjaGVkIGluIHNlbGVjdG9yLiIsbixyKSl9bj12b2lkIDB9cmV0dXJuIG59KSxbayxsXT1fLkFDKCgpPT5oKCk/LmlzVG9nZ2xlZCE9PXZvaWQgMD9oKCk/LmlzVG9nZ2xlZDpiKCkuaW5pdGlhbFN0YXRlPy5pc1RvZ2dsZWQ/PwpiKCkuaW5pdGlhbElzVG9nZ2xlZD8/ITEpLG09KCk9Pnt2YXIgbj1rKCk/YigpLnRvZ2dsZWRMaXN0SXRlbTpiKCkuZGVmYXVsdExpc3RJdGVtO3JldHVybiBfLkIoXy5CKG4sXy5aQyk/LnJlbmRlcmVyQ29udGV4dCxfLllDKT8ubGFiZWx9O3JldHVybiBfLksoInRvZ2dsZWFibGUtbGlzdC1pdGVtLXZpZXctbW9kZWwiLHtlbDpfLnJGKF8udUgoKCk9PmIoKS5yZW5kZXJlckNvbnRleHQse29uVGFwOihuLHApPT57cCgpO2goKT8uaXNUb2dnbGVkIT09dm9pZCAwfHxsKCFrKCkpfX0pKSxjbGFzczpfLlAoInRvZ2dsZWFibGVMaXN0SXRlbVZpZXdNb2RlbEhvc3QiLGMpfSxfLksoXy5PLHtBOigpPT57aWYoaygpKXt2YXIgbj1iKCkudG9nZ2xlZExpc3RJdGVtO249Xy5CKG4sXy5aQyl9ZWxzZSBuPWIoKS5kZWZhdWx0TGlzdEl0ZW0sbj1fLkIobixfLlpDKTtyZXR1cm4gbn0sdGhlbjpuPT5fLksoXy5DRCx7ZGF0YTpuLGlzVG9nZ2xlZDprLG5hOmQsSWE6ZSxCYzpmLGFyaWFMYWJlbDptLAphcmlhUHJlc3NlZDprfSl9KSl9LCJLIik7dmFyIHllYT1fLmFBKCJET1dOTE9BRCIse30sIkRvd25sb2FkIiksemVhPV8uYUEoIkRFTEVURV9GUk9NX0RPV05MT0FEUyIse30sIkRlbGV0ZSBmcm9tIGRvd25sb2FkcyIpLEFlYT1fLmFBKCJSRVRSWSIse30sIlJldHJ5IiksQmVhPV8uYUEoIlBBVVNFX0RPV05MT0FESU5HIix7fSwiUGF1c2UgZG93bmxvYWRpbmciKSxDZWE9Xy5hQSgiUkVTVU1FX0RPV05MT0FEIix7fSwiUmVzdW1lIGRvd25sb2FkIiksb0o9e3RleHQ6eWVhLGljb25UeXBlOiJPRkZMSU5FX0RPV05MT0FEIixpaToiQUNUSU9OX0FERCIsS2g6IkFDVElPTl9BREQifSxwSj17dGV4dDp6ZWEsaWNvblR5cGU6IkRFTEVURSIsaWk6IkFDVElPTl9SRU1PVkUiLEtoOiJBQ1RJT05fUkVNT1ZFIn0sc2VhPXt0ZXh0OkFlYSxpY29uVHlwZToiT0ZGTElORV9ET1dOTE9BRCIsaWk6IkFDVElPTl9SRVRSWSIsS2g6IkFDVElPTl9SRU1PVkUifSxxZWE9e3RleHQ6QmVhLGljb25UeXBlOiJPRkZMSU5FX1BBVVNFIixpaToiQUNUSU9OX1BBVVNFIiwKS2g6IkFDVElPTl9QQVVTRSJ9LHJlYT17dGV4dDpDZWEsaWNvblR5cGU6Ik9GRkxJTkVfRE9XTkxPQUQiLGlpOiJBQ1RJT05fUkVTVU1FIixLaDoiQUNUSU9OX1JFU1VNRSJ9O18uTChhPT57dmFyIGI9Xy5jSShoPT57dmFyIGs9cUooYS5kYXRhKCkpLGw9ckooYS5kYXRhKCkpO2s/KGg9aC5lbnRpdGllcyxrPyhsPV8ucUEoaCwidHJhbnNmZXIiLF8uekkoaywidHJhbnNmZXIiKSkpP2s9bC50cmFuc2ZlclN0YXRlPz8iVFJBTlNGRVJfU1RBVEVfVU5LTk9XTiI6KGw9Xy5xQShoLCJvZmZsaW5lT3JjaGVzdHJhdGlvbkFjdGlvbldyYXBwZXJFbnRpdHkiLF8uekkoaywib2ZmbGluZU9yY2hlc3RyYXRpb25BY3Rpb25XcmFwcGVyRW50aXR5IikpLGs9Xy5xQShoLCJtYWluVmlkZW9FbnRpdHkiLF8uekkoaywibWFpblZpZGVvRW50aXR5IikpLGs9bHx8az8iVFJBTlNGRVJfU1RBVEVfVFJBTlNGRVJfSU5fUVVFVUUiOiJUUkFOU0ZFUl9TVEFURV9VTktOT1dOIik6az0iVFJBTlNGRVJfU1RBVEVfVU5LTk9XTiIpOms9bD9sZWEoaC5lbnRpdGllcyxsKToiVFJBTlNGRVJfU1RBVEVfVU5LTk9XTiI7cmV0dXJuIGt9KSxjPV8uREkobWVhLCgpPT5xSihhLmRhdGEoKSkpLApkPV8uY0koaD0+e3ZhciBrPXFKKGEuZGF0YSgpKSxsPXJKKGEuZGF0YSgpKTshayYmbD8oaz1oLmVudGl0aWVzLGw/KGw9Z0oobCksaz1fLnFBKGssIm9mZmxpbmVhYmlsaXR5RW50aXR5IixfLnpJKGwsIm9mZmxpbmVhYmlsaXR5RW50aXR5IikpPy5hZGRUb09mZmxpbmVCdXR0b25TdGF0ZT8/IkFERF9UT19PRkZMSU5FX0JVVFRPTl9TVEFURV9FTkFCTEVEIik6az0iQUREX1RPX09GRkxJTkVfQlVUVE9OX1NUQVRFX0RJU0FCTEVEIik6KGw9aC5lbnRpdGllcyxrPyhrPWdKKGspLGs9Xy5xQShsLCJvZmZsaW5lYWJpbGl0eUVudGl0eSIsXy56SShrLCJvZmZsaW5lYWJpbGl0eUVudGl0eSIpKT8uYWRkVG9PZmZsaW5lQnV0dG9uU3RhdGU/PyJBRERfVE9fT0ZGTElORV9CVVRUT05fU1RBVEVfRU5BQkxFRCIpOms9IkFERF9UT19PRkZMSU5FX0JVVFRPTl9TVEFURV9ESVNBQkxFRCIpO3JldHVybiBrfSksZT0oKT0+dWVhKGIoKSxjKCksXy5zSChhLmRhdGEoKS5yZW5kZXJlckNvbnRleHQpLAohIXJKKGEuZGF0YSgpKSksZj0oKT0+ZCgpIT09IkFERF9UT19PRkZMSU5FX0JVVFRPTl9TVEFURV9FTkFCTEVEIjtyZXR1cm4gXy5LKCJ5dC1kb3dubG9hZC1saXN0LWl0ZW0tdmlldy1tb2RlbCIse2NsYXNzOiJ5dERvd25sb2FkTGlzdEl0ZW1WaWV3TW9kZWxIb3N0IixoaWRkZW46Zn0sXy5LKF8uTyx7QTooKT0+IWYoKSx0aGVuOigpPT5fLksoXy5PLHtBOmUsdGhlbjpoPT5fLksoXy5nRyx7cGE6aH0saz0+Xy5LKF8uQ0Qse2RhdGE6ayxuYTphLm5hLElhOmEuSWEsQmM6YS5CYyxkaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmc6YS5kaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmd9KSl9KX0pKX0sIkwiKS5pZG9tQ29tcGF0PSEwO18uQkQ9Xy5MKCh7ZGF0YTphLG5hOmIsY2U6YyxCYzpkLGlzT3ZlcmxheTplLGRpc2FibGVIb3Jpem9udGFsUGFkZGluZzpmfSk9Pnt2YXIgaD0oKT0+d2VhKGEoKSkmJmQ/LigpO3JldHVybiBfLksoInl0LWxpc3Qtdmlldy1tb2RlbCIse2NsYXNzOl8uUCgieXRMaXN0Vmlld01vZGVsSG9zdCIse3l0TGlzdFZpZXdNb2RlbEhvc3RLYWlvc1NwYXROYXY6Xy5nciYmZG9jdW1lbnQuYm9keS5oYXNBdHRyaWJ1dGUoInNwYXRpYWwtbmF2aWdhdGlvbi1lbmFibGVkIikmJmRvY3VtZW50LmJvZHkuZ2V0QXR0cmlidXRlKCJzcGF0aWFsLW5hdmlnYXRpb24tZW5hYmxlZCIpPT09InRydWUifSkscm9sZTooKT0+aCgpPyJtZW51IjoibGlzdCIsc3R5bGU6Xy5JRSh7Im1heC1oZWlnaHQiOigpPT57dmFyIGs9YSgpPy52aXNpYmxlRWxlbWVudENvdW50O2lmKGspcmV0dXJuYCR7KGsrLjUpKjQwfXB4YH19KSwib246a2V5ZG93biI6ZnVuY3Rpb24oayl7aWYoZD8uKCkmJl8ueCgid2ViX2VuYWJsZV9hcnJvd19rZXlfbmF2aWdhdGlvbl9pbl9kcm9wZG93biIpKXt2YXIgbD0KXy5uSihrLmN1cnJlbnRUYXJnZXQpO2lmKGwubGVuZ3RoIT09MCl7dmFyIG09QXJyYXkucHJvdG90eXBlLmluZGV4T2YuY2FsbChsLGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQpO3N3aXRjaChrLmtleSl7Y2FzZSAiQXJyb3dEb3duIjprLnByZXZlbnREZWZhdWx0KCk7bFsobSsxKSVsLmxlbmd0aF0/LmZvY3VzKCk7YnJlYWs7Y2FzZSAiQXJyb3dVcCI6ay5wcmV2ZW50RGVmYXVsdCgpO3RKKGwsbSk7YnJlYWs7Y2FzZSAiVGFiIjprLnByZXZlbnREZWZhdWx0KCksay5zaGlmdEtleT90SihsLG0pOmxbKG0rMSklbC5sZW5ndGhdPy5mb2N1cygpfX19fX0sXy5LKF8uVyx7ZGF0YTooKT0+YSgpLmxpc3RJdGVtc30se2xpc3RJdGVtVmlld01vZGVsOih7ZGF0YTprfSk9Pl8uSyhfLkNELHtkYXRhOmssSWE6aCxuYTpiLGNlOmMsQmM6ZCxpc092ZXJsYXk6ZSxkaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmc6Zn0pLHRvZ2dsZWFibGVMaXN0SXRlbVZpZXdNb2RlbDooe2RhdGE6a30pPT5fLksoeGVhLAp7ZGF0YTprLElhOmgsbmE6YixCYzpkfSksZG93bmxvYWRMaXN0SXRlbVZpZXdNb2RlbDooKT0+Xy5LKF8uSUIsbnVsbCksc3dpdGNoTGlzdEl0ZW1WaWV3TW9kZWw6KCk9Pl8uSyhfLklCLG51bGwpfSkpfSwiTSIpO18uQkQuaWRvbUNvbXBhdD0hMDsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5XZCgiSHhqbGJiIik7CgpfLlhkKCk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uS0o9bmV3IF8uSSgiYnV0dG9uVmlld01vZGVsIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uc0Q9Xy5MKGE9PntmdW5jdGlvbiBiKG4pe3ZhciBwPWMoKTt2YXIgcj1kKCk7ciE9PXZvaWQgMD9wPXI6KHI9Xy5CKHAuc2Vjb25kYXJ5QnV0dG9uLF8uS0opLHA9Xy5CKHAucHJpbWFyeUJ1dHRvbixfLktKKT8uaXNGdWxsV2lkdGghPT0hMXx8ciYmcj8uaXNGdWxsV2lkdGghPT0hMT8xOjMpO3JldHVybiBuPT09cH12YXIge2RhdGE6Yyx0eXBlOmQsZGlzYWJsZVBhZGRpbmc6ZSxOaTpmLFhxOmh9PV8uREMoYSx7dHlwZTp2b2lkIDAsZGlzYWJsZVBhZGRpbmc6ITEsTmk6ITF9KSxrPSgpPT5jKCkuc3RhY2tpbmc9PT0iUEFORUxfRk9PVEVSX1NUQUNLSU5HX1ZFUlRJQ0FMIixsPSgpPT4oe2Rpc2FibGVkOmYoKSxzdGF0ZTpmKCk/ImRpc2FibGVkIjoiYWN0aXZlIn0pLG09KCk9PmMoKS5sZWFkaW5nTGFiZWx8fGMoKS50cmFpbGluZ0xhYmVsO3JldHVybiBfLksoInl0LXBhbmVsLWZvb3Rlci12aWV3LW1vZGVsIix7Y2xhc3M6Xy5QKCJ5dFBhbmVsRm9vdGVyVmlld01vZGVsSG9zdCIsCnt5dFBhbmVsRm9vdGVyVmlld01vZGVsSGlkZURpdmlkZXI6KCk9PmMoKS5zaG91bGRIaWRlRGl2aWRlcix5dFBhbmVsRm9vdGVyVmlld01vZGVsRGlzYWJsZVBhZGRpbmc6ZX0pfSxfLksoXy5PLHtBOm0sdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczpfLlAoInl0UGFuZWxGb290ZXJWaWV3TW9kZWxUZXh0Um93Iix7eXRQYW5lbEZvb3RlclZpZXdNb2RlbFJvd0JvdHRvbVBhZGRpbmc6KCk9Pnt2YXIgbj1jKCk7cmV0dXJuISghbi5sZWFkaW5nTGFiZWwmJiFuLnRyYWlsaW5nTGFiZWx8fCFuLnByaW1hcnlCdXR0b24mJiFuLnNlY29uZGFyeUJ1dHRvbil9fSl9LF8uSyhfLlYse3RleHQ6KCk9PmMoKS5sZWFkaW5nTGFiZWwsY2xhc3NOYW1lOl8uUCh7eXRQYW5lbEZvb3RlclZpZXdNb2RlbFRleHRQYWRkaW5nOm19KX0pLF8uSyhfLlYse3RleHQ6KCk9PmMoKS50cmFpbGluZ0xhYmVsfSkpfSksXy5LKF8uTyx7QTprLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0UGFuZWxGb290ZXJWaWV3TW9kZWxCdXR0b25TdGFjayJ9LApfLksoImRpdiIse2NsYXNzOl8uUCgieXRQYW5lbEZvb3RlclZpZXdNb2RlbFByaW1hcnlCdXR0b24iLHt5dFBhbmVsRm9vdGVyVmlld01vZGVsQnV0dG9uU3RhY2tUb3BCdXR0b246KCk9PmMoKS5zZWNvbmRhcnlCdXR0b259KX0sXy5LKF8uVyx7ZGF0YTooKT0+YygpLnByaW1hcnlCdXR0b259LHtidXR0b25WaWV3TW9kZWw6KHtkYXRhOm59KT0+Xy5LKF8uSEQse2RhdGE6bixidXR0b25PdmVycmlkZXM6bCxvbkNsaWNrOmh9KX0pKSxfLksoXy5XLHtkYXRhOigpPT5jKCkuc2Vjb25kYXJ5QnV0dG9ufSx7YnV0dG9uVmlld01vZGVsOl8uSER9KSl9KSxfLksoXy5PLHtBOigpPT4haygpLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJ5dFBhbmVsRm9vdGVyVmlld01vZGVsQnV0dG9uUm93Iix7eXRQYW5lbEZvb3RlclZpZXdNb2RlbEJ1dHRvblJvd1RyYWlsaW5nOigpPT5iKDMpfSl9LF8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJ5dFBhbmVsRm9vdGVyVmlld01vZGVsQnV0dG9uUm93TGVmdEJ1dHRvbiIsCnt5dFBhbmVsRm9vdGVyVmlld01vZGVsQnV0dG9uUm93RnVsbFdpZHRoOigpPT5iKDEpLHl0UGFuZWxGb290ZXJWaWV3TW9kZWxCdXR0b25Sb3dIaWRkZW46KCk9PiFjKCkuc2Vjb25kYXJ5QnV0dG9ufHxiKDApLHl0UGFuZWxGb290ZXJWaWV3TW9kZWxCdXR0b25Sb3dTaHJpbms6KCk9PmIoMil9KX0sXy5LKF8uVyx7ZGF0YTooKT0+YygpLnNlY29uZGFyeUJ1dHRvbn0se2J1dHRvblZpZXdNb2RlbDpfLkhEfSkpLF8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJ5dFBhbmVsRm9vdGVyVmlld01vZGVsUHJpbWFyeUJ1dHRvbiIse3l0UGFuZWxGb290ZXJWaWV3TW9kZWxCdXR0b25Sb3dGdWxsV2lkdGg6KCk9PmIoMCl8fGIoMSkseXRQYW5lbEZvb3RlclZpZXdNb2RlbEJ1dHRvblJvd0V4cGFuZDooKT0+YigyKX0pfSxfLksoXy5XLHtkYXRhOigpPT5jKCkucHJpbWFyeUJ1dHRvbn0se2J1dHRvblZpZXdNb2RlbDooe2RhdGE6bn0pPT5fLksoXy5IRCx7ZGF0YTpuLGJ1dHRvbk92ZXJyaWRlczpsLApvbkNsaWNrOmh9KX0pKSl9KSl9LCJGYSIpO18uc0QuaWRvbUNvbXBhdD0hMDsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5XZCgibFBXamtiIik7CgpfLlhkKCk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uZUw9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJqQmlzYWYiKTtyZXR1cm4gXy5UQ307Xy5mTD1fLmNEKCgpPT5fLmVMKCksImJhZGdlU2hhcGUiKTtfLll0KF8uSkQsYT0+e2EuSigiYmFkZ2VTaGFwZSIsImpCaXNhZiIsXy5lTCl9KTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIHlmYT1mdW5jdGlvbihhKXtzd2l0Y2goYSl7Y2FzZSAwOnJldHVybiJ5dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVOelJhdGluZ0dyZWVuQ2lyY2xlIjtjYXNlIDE6cmV0dXJuInl0QnJOekJhZGdlU2hhcGVCYWRnZVN0eWxlVHlwZU56UmF0aW5nWWVsbG93Q2lyY2xlIjtjYXNlIDI6cmV0dXJuInl0QnJOekJhZGdlU2hhcGVCYWRnZVN0eWxlVHlwZU56UmF0aW5nUmVkU3F1YXJlIjtjYXNlIDM6cmV0dXJuInl0QnJOekJhZGdlU2hhcGVCYWRnZVN0eWxlVHlwZUJyUmF0aW5nU21hbGxHcmVlblNxdWFyZSI7Y2FzZSA0OnJldHVybiJ5dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVCclJhdGluZ1NtYWxsQmx1ZVNxdWFyZSI7Y2FzZSA1OnJldHVybiJ5dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVCclJhdGluZ0xhcmdlQmx1ZVNxdWFyZSI7Y2FzZSA2OnJldHVybiJ5dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVCclJhdGluZ1NtYWxsWWVsbG93U3F1YXJlIjsKY2FzZSA3OnJldHVybiJ5dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVCclJhdGluZ0xhcmdlWWVsbG93U3F1YXJlIjtjYXNlIDg6cmV0dXJuInl0QnJOekJhZGdlU2hhcGVCYWRnZVN0eWxlVHlwZUJyUmF0aW5nU21hbGxPcmFuZ2VTcXVhcmUiO2Nhc2UgOTpyZXR1cm4ieXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlQnJSYXRpbmdMYXJnZU9yYW5nZVNxdWFyZSI7Y2FzZSAxMDpyZXR1cm4ieXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlQnJSYXRpbmdTbWFsbFJlZFNxdWFyZSI7Y2FzZSAxMTpyZXR1cm4ieXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlQnJSYXRpbmdMYXJnZVJlZFNxdWFyZSI7Y2FzZSAxMjpyZXR1cm4ieXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlQnJSYXRpbmdTbWFsbEJsYWNrU3F1YXJlIjtjYXNlIDEzOnJldHVybiJ5dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVCclJhdGluZ0xhcmdlQmxhY2tTcXVhcmUifX0semZhPWZ1bmN0aW9uKGEpe3N3aXRjaChhKXtjYXNlICJCQURHRV9DT01NRVJDRSI6Y2FzZSAiQkFER0VfTUVNQkVSU19PTkxZIjpyZXR1cm4gMTA7CmNhc2UgIkJBREdFX0RJU0NPVU5UIjpyZXR1cm4gODtjYXNlICJCQURHRV9TVEFUVVNfTkVXIjpyZXR1cm4gMTM7Y2FzZSAiQkFER0VfUFJFTUlVTSI6cmV0dXJuIDc7Y2FzZSAiQkFER0VfUFJPTU9URUQiOnJldHVybiA0O2Nhc2UgIkJBREdFX1BST01PVEVEX0lOVkVSVEVEIjpyZXR1cm4gNTtjYXNlICJCQURHRV9NRURJQSI6cmV0dXJuIDE7Y2FzZSAiQkFER0VfVElNRUxZIjpyZXR1cm4gNjtjYXNlICJCQURHRV9MSVZFX05PVyI6cmV0dXJuIDE5O2Nhc2UgIkJBREdFX1NUQVRVU19DT01QTEVURSI6cmV0dXJuIDE0O2Nhc2UgIkJBREdFX1NUQVRVU19XQVJOSU5HIjpyZXR1cm4gMTU7Y2FzZSAiQkFER0VfU1RBVFVTX0VSUk9SIjpyZXR1cm4gMTY7Y2FzZSAiQkFER0VfU1RBVFVTX0RFRkFVTFQiOnJldHVybiAxNztkZWZhdWx0OnJldHVybiAwfX0sQWZhPWZ1bmN0aW9uKGEpe3N3aXRjaChhKXtjYXNlICJCQURHRV9OWl9SQVRJTkdfR1JFRU5fQ0lSQ0xFIjpyZXR1cm4gMDtjYXNlICJCQURHRV9OWl9SQVRJTkdfWUVMTE9XX0NJUkNMRSI6cmV0dXJuIDE7CmNhc2UgIkJBREdFX05aX1JBVElOR19SRURfU1FVQVJFIjpyZXR1cm4gMjtjYXNlICJCQURHRV9CUl9SQVRJTkdfU01BTExfR1JFRU5fU1FVQVJFIjpyZXR1cm4gMztjYXNlICJCQURHRV9CUl9SQVRJTkdfU01BTExfQkxVRV9TUVVBUkUiOnJldHVybiA0O2Nhc2UgIkJBREdFX0JSX1JBVElOR19MQVJHRV9CTFVFX1NRVUFSRSI6cmV0dXJuIDU7Y2FzZSAiQkFER0VfQlJfUkFUSU5HX1NNQUxMX1lFTExPV19TUVVBUkUiOnJldHVybiA2O2Nhc2UgIkJBREdFX0JSX1JBVElOR19MQVJHRV9ZRUxMT1dfU1FVQVJFIjpyZXR1cm4gNztjYXNlICJCQURHRV9CUl9SQVRJTkdfU01BTExfT1JBTkdFX1NRVUFSRSI6cmV0dXJuIDg7Y2FzZSAiQkFER0VfQlJfUkFUSU5HX0xBUkdFX09SQU5HRV9TUVVBUkUiOnJldHVybiA5O2Nhc2UgIkJBREdFX0JSX1JBVElOR19TTUFMTF9SRURfU1FVQVJFIjpyZXR1cm4gMTA7Y2FzZSAiQkFER0VfQlJfUkFUSU5HX0xBUkdFX1JFRF9TUVVBUkUiOnJldHVybiAxMTsKY2FzZSAiQkFER0VfQlJfUkFUSU5HX1NNQUxMX0JMQUNLX1NRVUFSRSI6cmV0dXJuIDEyO2Nhc2UgIkJBREdFX0JSX1JBVElOR19MQVJHRV9CTEFDS19TUVVBUkUiOnJldHVybiAxM319O3ZhciBCZmE9Xy5MKCh7ZGF0YTphfSk9Pl8uSygiYnItbnotYmFkZ2Utc2hhcGUiLHtjbGFzczpfLlAoKCk9PnlmYShhKCkudWkpKSxyb2xlOigpPT5hKCkuYWNjZXNzaWJpbGl0eVRleHQ/ImltZyI6dm9pZCAwLCJhcmlhLWxhYmVsIjooKT0+YSgpLmFjY2Vzc2liaWxpdHlUZXh0fSwoKT0+YSgpPy50ZXh0KSwidWEiKTtfLkVEPV8uTChhPT57dmFyIGI9KCk9Pnt2YXIgYz1hLmRhdGEoKTtpZihjKXt2YXIgZD0hIWEuekw/LigpLGU9YS5vZz8uKCksZj1hLkRqPy4oKSxoPWEuZXA/LigpLGs9YS5xeD8uKCk7YTpzd2l0Y2goYy5iYWRnZVN0eWxlKXtjYXNlICJCQURHRV9PVkVSTEFZIjp2YXIgbD0hMDticmVhayBhO2RlZmF1bHQ6bD0hMX1jPXt0eXBlOmQ/MTg6emZhKGMuYmFkZ2VTdHlsZSksdWk6QWZhKGMuYmFkZ2VTdHlsZSksdGV4dDpjLmJhZGdlVGV4dCxpY29uOmMuaWNvbk5hbWUsaXNPdmVybGF5Omwsb2c6ZXx8Xy54KCJ3ZWJfbW9kZXJuX2JhZGdlX3ZpZXdfbW9kZWwiKSxhY2Nlc3NpYmlsaXR5VGV4dDpjLmFjY2Vzc2liaWxpdHlMYWJlbHx8Xy5CKGMucmVuZGVyZXJDb250ZXh0LF8uWUMpPy5sYWJlbCxEajpmLGVwOmgsb0E6ayxuczpfLkIoYy50b29sdGlwT25Ib3ZlcixfLmNLKT8udG9vbHRpcFRleHR9fWVsc2UgYz12b2lkIDA7cmV0dXJuIGN9O3JldHVybiBfLksoInl0LWJhZGdlLXZpZXctbW9kZWwiLAp7Y2xhc3M6Xy5QKCJ5dEJhZGdlVmlld01vZGVsSG9zdCIsYS5jbGFzcyl9LF8uSyhfLkVFLG51bGwsXy5LKF8uQ0Use3doZW46KCk9PiEhYigpPy51aX0sKCk9Pl8uSyhCZmEse2RhdGE6KCk9PmIoKX0pKSxfLksoXy5DRSx7d2hlbjooKT0+ISFiKCkmJiFiKCkudWl9LCgpPT5fLksoXy5mTCx7ZGF0YTooKT0+YigpfSkpKSl9LCJ2YSIpO18uRUQuaWRvbUNvbXBhdD0hMDsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5XZCgiUHpVZFpiIik7CgpfLlhkKCk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8udko9ZnVuY3Rpb24oYSxiLGMsZCl7ZHx8KGQ9e2J1YmJsZXM6ITAsY2FuY2VsYWJsZTohMSxjb21wb3NlZDohMH0pO2MhPT1udWxsJiZjIT09dm9pZCAwJiYoZC5kZXRhaWw9Yyk7dmFyIGU9bmV3IEN1c3RvbUV2ZW50KGIsZCk7Xy5FQSgoKT0+dm9pZCBhLmRpc3BhdGNoRXZlbnQoZSkpO3JldHVybiBlfTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5kTD1mdW5jdGlvbigpe307Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uckU9Xy5MKGE9Pnt2YXIge0ZJOmIsZkY6YyxwQzpkLGFzc2V0VHlwZTplLFFnOmYsa2g6aCx2azprLHprOmwsUHc6bSxxazpuLFVvOnAsYnV0dG9uU3R5bGU6cixFejp0LFByOnYsY29udGVudEFsaWdubWVudDp6LGlzRnVsbHNjcmVlbjpFLGtwOkEsd2lkdGg6RixtYXhIZWlnaHQ6Qyx1cTpHLG50OkQsc3E6SCxsdDpSfT1fLkRDKGEse1B3OjAsVW86MCxidXR0b25TdHlsZTowLGNvbnRlbnRBbGlnbm1lbnQ6MCxtYXhIZWlnaHQ6MCxpc0Z1bGxzY3JlZW46ITEsa3A6ITEsa2g6ITAsdXE6ITEsc3E6ITF9KTthPXQ/KCk9PnQoe2J1dHRvbk92ZXJyaWRlczooKT0+KHtzdHlsZTpyPy4oKT09PTE/ImNhbGwtdG8tYWN0aW9uIjoibW9ubyIsdHlwZToiZmlsbGVkIixzdGF0ZToiYWN0aXZlIixzaXplOiJNIn0pLGNsYXNzTmFtZTpfLlAoe3l0U3BlY0RpYWxvZ0xheW91dEJ1dHRvbjohMCx5dFNwZWNEaWFsb2dMYXlvdXREaWFsb2dCdXR0b25zSW5saW5lU3RyZXRjaGVkOigpPT5wPy4oKT09PQowfHxwPy4oKT09PTJ9KX0pOnZvaWQgMDt2YXIgTT12PygpPT52KHtidXR0b25PdmVycmlkZXM6e3N0eWxlOiJtb25vIix0eXBlOiJvdXRsaW5lIixzdGF0ZToiYWN0aXZlIixzaXplOiJNIn0sY2xhc3NOYW1lOl8uUCh7eXRTcGVjRGlhbG9nTGF5b3V0QnV0dG9uOiEwLHl0U3BlY0RpYWxvZ0xheW91dERpYWxvZ0J1dHRvbnNJbmxpbmVTdHJldGNoZWQ6KCk9PnA/LigpPT09MHx8cD8uKCk9PT0yfSl9KTp2b2lkIDAsUz0oKT0+KCEhZiYmaCgpfHwhIWt8fCEhbCkmJm0oKT09PTA7cmV0dXJuIF8uSygiZGlhbG9nLWxheW91dCIse2VsOl8uckYoYixfLmRMKSxjbGFzczpfLlAoe3l0U3BlY0RpYWxvZ0xheW91dEhvc3Q6ITAseXRTcGVjRGlhbG9nTGF5b3V0RnVsbHNjcmVlbjpFLHl0U3BlY0RpYWxvZ0xheW91dFJlc3BvbnNpdmU6KCk9PiFFKCkmJiFBKCkseXRTcGVjRGlhbG9nTGF5b3V0RXh0ZW5kZWRNYXhIZWlnaHQ6KCk9PkMoKT09PTEseXRTcGVjRGlhbG9nTGF5b3V0QXNzZXRJbnNldDooKT0+CmU/LigpPT09MX0pLHN0eWxlOigpPT5GPy4oKSE9PXZvaWQgMD9gd2lkdGg6ICR7RigpfXB4O2A6IiJ9LGM/Xy5LKCJkaXYiLHtjbGFzczpfLlAoe3l0U3BlY0RpYWxvZ0xheW91dEljb246ITAseXRTcGVjRGlhbG9nTGF5b3V0SWNvbkFib3ZlTWVkaWE6KCk9PiEhZCYmbSgpPT09MSx5dFNwZWNEaWFsb2dMYXlvdXRJY29uQ2VudGVyQWxpZ246KCk9PnooKT09PTF9KX0sXy5LKGMsbnVsbCkpOm51bGwsXy5LKF8uTyx7QTpHLHRoZW46KCk9PkQ/Xy5LKCJkaXYiLHtjbGFzczoieXRTcGVjRGlhbG9nTGF5b3V0RGlhbG9nSGVhZGVyQ29udGFpbmVyIn0sXy5LKEQsbnVsbCkpOm51bGwsVzooKT0+Xy5LKF8uSUIsbnVsbCxfLksoXy5PLHtBOlMsdGhlbjooKT0+Xy5LKFlQLHtjb250ZW50QWxpZ25tZW50Onosdms6ayx6azpsLFFnOmYsa2g6aCxUbDohIWR9KX0pLGQ/Xy5LKCJkaXYiLHtjbGFzczoieXRTcGVjRGlhbG9nTGF5b3V0QXNzZXQifSxfLksoZCx7Y2xhc3NOYW1lOiJ5dFNwZWNEaWFsb2dMYXlvdXRBc3NldEl0ZW0ifSkpOgpudWxsKX0pLF8uSygiZGl2Iix7Y2xhc3M6Xy5QKHt5dFNwZWNEaWFsb2dMYXlvdXRDb250YWluZXI6KCk9PiFBKCkseXRTcGVjRGlhbG9nTGF5b3V0Q2VudGVyQWxpZ246KCk9Pno/LigpPT09MSx5dFNwZWNEaWFsb2dMYXlvdXRUb3BQYWRkaW5nOigpPT4hUygpJiYhQSgpJiYhRygpJiYhKGYmJmgoKSYmIUQmJm0/LigpPT09MSl8fCEhZCYmbT8uKCk9PT0wfSl9LF8uSyhfLk8se0E6KCk9PmYmJmgoKSYmIUQmJm0/LigpPT09MSx0aGVuOigpPT5fLksoWVAse2NvbnRlbnRBbGlnbm1lbnQ6eix2azprLHprOmwsUWc6ZixraDpoLFRsOiExfSl9KSxuP18uSygiZGl2Iix7Y2xhc3M6Inl0U3BlY0RpYWxvZ0xheW91dENvbnRlbnQifSxfLksoImRpdiIse2NsYXNzOl8uUCh7eXRTcGVjRGlhbG9nTGF5b3V0Q29udGVudElubmVyOigpPT4hQSgpfSl9LF8uSyhuLG51bGwpKSk6bnVsbCxfLksoXy5PLHtBOkgsdGhlbjooKT0+Uj9fLksoImRpdiIse2NsYXNzOiJ5dFNwZWNEaWFsb2dMYXlvdXRGb290ZXJDb250YWluZXIifSwKXy5LKFIsbnVsbCkpOm51bGx9KSxhfHxNP18uSyhSaWEse2F3Ol8uUCh7eXRTcGVjRGlhbG9nTGF5b3V0Rm9vdGVyQ29udGFpbmVyOiEwLHl0U3BlY0RpYWxvZ0xheW91dEZvb3RlcjohMCx5dFNwZWNEaWFsb2dMYXlvdXREaWFsb2dCdXR0b25zU3RhY2tlZDooKT0+cD8uKCk9PT0yLHl0U3BlY0RpYWxvZ0xheW91dERpYWxvZ0J1dHRvbnNJbmxpbmVFbmQ6KCk9PnA/LigpPT09MX0pLFl0OmEsY3U6TX0pOm51bGwpKX0sIlBiIik7CnZhciBZUD1fLkwoYT0+e3ZhciB7Y29udGVudEFsaWdubWVudDpiLHZrOmMsUWc6ZCxraDplLHprOmYsVGw6aCxFdjprfT1fLkRDKGEse1RsOiExLEV2OiEwfSk7cmV0dXJuIF8uSygiZGl2Iix7Y2xhc3M6Xy5QKHt5dFNwZWNEaWFsb2dMYXlvdXREaWFsb2dIZWFkZXJDb250YWluZXI6ITAseXRTcGVjRGlhbG9nTGF5b3V0RGlhbG9nSGVhZGVyOiEwLHl0U3BlY0RpYWxvZ0xheW91dERpYWxvZ0hlYWRlckFib3ZlQXNzZXQ6aCx5dFNwZWNEaWFsb2dMYXlvdXRDZW50ZXJBbGlnbjooKT0+Yj8uKCk9PT0xJiZrKCl9KX0sXy5LKF8uTyx7QTooKT0+aygpLHRoZW46KCk9PmM/Xy5LKCJkaXYiLHtjbGFzczoieXRTcGVjRGlhbG9nTGF5b3V0TGVhZGluZ0FjdGlvbkhlYWRlciJ9LF8uSyhjLG51bGwpKTpudWxsfSksZD9fLksoXy5PLHtBOmUsdGhlbjooKT0+Xy5LKCJoMiIse2NsYXNzOiJ5dFNwZWNEaWFsb2dMYXlvdXRUaXRsZSJ9LF8uSyhkLG51bGwpKX0pOm51bGwsZj9fLksoImRpdiIsbnVsbCwKXy5LKGYsbnVsbCkpOm51bGwpfSwiUWIiKSxSaWE9Xy5MKCh7YXc6YSxZdDpiLGN1OmN9KT0+Xy5LKCJkaXYiLHtjbGFzczphfSxjP18uSyhjLG51bGwpOm51bGwsYj9fLksoYixudWxsKTpudWxsKSwiUmIiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5XZCgidmlVV1YiKTsKCl8uWGQoKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5iTT1uZXcgXy5WcygiTE9UVElFX0xPQURFUl9UT0tFTiIpO18uY009Xy5MKCh7ZGF0YTphLGNsYXNzTmFtZTpiLGFuaW1hdGlvbk5hbWU6YyxhbmltYXRpb25SZWY6ZCxHSTplfSk9Pnt2YXIgZj1fLnZFKCJsb3R0aWUtY29tcG9uZW50IiksaDtfLll1KCgpPT52b2lkIGg/LmRlc3Ryb3koKSk7dmFyIGs7Xy5uRSgoKT0+e3ZhciBsPV8uQnYoYyk7aWYobCE9PWspe2s9bDt2YXIgbT17YW5pbWF0aW9uTmFtZTpsLGFuaW1hdGlvblJlZjpfLkJ2KGQpLC4uLl8uQnYoYSl9O3RyeXtfLnkoKS5yZXNvbHZlKF8uYk0pKCkudGhlbihuPT57aD8uZGVzdHJveSgpO3ZhciBwPWU/LigpPy52YWx1ZT8/Zi52YWx1ZSxyPW0uYW5pbWF0aW9uUmVmLHQ9bS5saXN0ZW5lcnM7bj1uLmxvYWRBbmltYXRpb24oe2NvbnRhaW5lcjpwLHJlbmRlcmVyU2V0dGluZ3M6bS5yZW5kZXJlclNldHRpbmdzLC4uLm0uYW5pbWF0aW9uQ29uZmlnfSk7ciYmKHIubG90dGllRWw9bik7aWYodClmb3IobGV0IFt2LHpdb2YgT2JqZWN0LmVudHJpZXModCkpcj12LCh0PXopJiZuLmFkZEV2ZW50TGlzdGVuZXIociwKdCk7aD1ufSl9Y2F0Y2gobil7bD0iTG90dGllQ29tcG9uZW50IGVycm9yLiIsbi5tZXNzYWdlJiYobCs9YCBPcmlnaW5hbCBkZXNjcmlwdGlvbjogJHtuLm1lc3NhZ2V9YCksXy5jdyhuLGwpLF8uSXAobiksbS5saXN0ZW5lcnM/LmVycm9yJiZtLmxpc3RlbmVycy5lcnJvcihuKX19fSwieE9DazUiKTtyZXR1cm4gXy5LKF8uTyx7QTooKT0+IWU/LigpLHRoZW46KCk9Pl8uSygibG90dGllLWNvbXBvbmVudCIse2NsYXNzOl8uUCgieXRMb3R0aWVDb21wb25lbnRIb3N0IixiKSxlbDpmfSl9KX0sIkthIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBiZ2E7YmdhPWZ1bmN0aW9uKGEsYixjLGQpe2Z1bmN0aW9uIGUoaCxrKXtpZihiLnZhbHVlPT09ayYmIWIuY2FuY2VsbGVkKXtmb3IoO2EuZmlyc3RDaGlsZDspYS5yZW1vdmVDaGlsZChhLmZpcnN0Q2hpbGQpO2EuY2xhc3NMaXN0LmFkZCgieXRTcGVjSWNvblNoYXBlSG9zdCIpO2goYSxkKX19dmFyIGY9Xy55KCkucmVzb2x2ZShfLlhMKS5weShjKTt0eXBlb2YgZj09PSJmdW5jdGlvbiI/KGIudmFsdWU9bnVsbCxlKGYsbnVsbCkpOihiLnZhbHVlPWYsZi50aGVuKGg9PntlKGgsZil9KSl9O18uWEw9bmV3IF8uVnMoIklDT05fTUFOQUdFUl9UT0tFTiIpO18uWUw9Xy5MKGE9Pnt2YXIgYj17dmFsdWU6bnVsbCxjYW5jZWxsZWQ6ITF9O18uWXUoKCk9PntiLmNhbmNlbGxlZD0hMH0pO3ZhciBjPV8uTihhLmRhdGEse2VxdWFsczooZCxlKT0+ZC5pY29uTmFtZT09PWUuaWNvbk5hbWUmJmQuaWNvblN0eWxlPT09ZS5pY29uU3R5bGUmJmQuaWNvblNpemU9PT1lLmljb25TaXplJiZkLmx4PT09ZS5seCYmZC5reD09PWUua3h9LCJjazI0amIiKTtyZXR1cm4gXy5LKCJzcGFuIix7Y2xhc3M6Inl0LWljb24tc2hhcGUiLGVsOl8uckYoZD0+e18ubkUoKCk9Pnt2YXIgZT1hLm9wdGlvbnM/LigpLGY9YygpO2JnYShkLGIsZixlKX0sInY4NzhKZSIpfSl9KX0sIkhhIik7Xy5ZTC5pZG9tQ29tcGF0PSEwOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgRVA9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgMTg6Y2FzZSAxOTpjYXNlIDIwOnJldHVybiEwO2RlZmF1bHQ6cmV0dXJuITF9fSxHaWE9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgMzpyZXR1cm4ieXRCYWRnZVNoYXBlQWQiO2Nhc2UgMTpyZXR1cm4ieXRCYWRnZVNoYXBlTWVkaWEiO2Nhc2UgMjpyZXR1cm4ieXRCYWRnZVNoYXBlTWVkaWFPdmVybGF5IjtjYXNlIDQ6cmV0dXJuInl0QmFkZ2VTaGFwZVByb21vdGVkIjtjYXNlIDU6cmV0dXJuInl0QmFkZ2VTaGFwZVByb21vdGVkSW52ZXJ0ZWQiO2Nhc2UgNjpyZXR1cm4ieXRCYWRnZVNoYXBlVGltZWx5IjtjYXNlIDc6cmV0dXJuInl0QmFkZ2VTaGFwZVByZW1pdW0iO2Nhc2UgODpyZXR1cm4ieXRCYWRnZVNoYXBlU2FsZSI7Y2FzZSA5OnJldHVybiJ5dEJhZGdlU2hhcGVNZW1iZXJzaGlwIjtjYXNlIDEwOnJldHVybiJ5dEJhZGdlU2hhcGVDb21tZXJjZSI7Y2FzZSAxMjpyZXR1cm4ieXRCYWRnZVNoYXBlTGl2ZSI7Y2FzZSAxMzpyZXR1cm4ieXRCYWRnZVNoYXBlU3RhdHVzTmV3IjsKY2FzZSAxNDpyZXR1cm4ieXRCYWRnZVNoYXBlU3RhdHVzQ29tcGxldGUiO2Nhc2UgMTU6cmV0dXJuInl0QmFkZ2VTaGFwZVN0YXR1c1dhcm5pbmciO2Nhc2UgMTY6cmV0dXJuInl0QmFkZ2VTaGFwZVN0YXR1c0Vycm9yIjtjYXNlIDE3OnJldHVybiJ5dEJhZGdlU2hhcGVTdGF0dXNEZWZhdWx0IjtjYXNlIDE4OnJldHVybiBfLngoImVuYWJsZV9sb2NrdXBfcmVkZXNpZ24iKT8ieXRCYWRnZVNoYXBlVGh1bWJuYWlsRGVmYXVsdFJlZGVzaWduIjoieXRCYWRnZVNoYXBlVGh1bWJuYWlsRGVmYXVsdCI7Y2FzZSAxOTpyZXR1cm4ieXRCYWRnZVNoYXBlVGh1bWJuYWlsTGl2ZSI7Y2FzZSAyMDpyZXR1cm4ieXRCYWRnZVNoYXBlVGh1bWJuYWlsU3BlY2lhbCI7ZGVmYXVsdDpyZXR1cm4ieXRCYWRnZVNoYXBlRGVmYXVsdCJ9fTt2YXIgSGlhPW5ldyBTZXQoWyJPVVRMSU5FX0JBRyJdKTsKXy5UQz1fLkwoKHtkYXRhOmF9KT0+e3ZhciBiPSgpPT57dmFyIGQ9YSgpLmljb247aWYoZClhOntkPV8uS0QoZCk/Lmljb25OYW1lPz9kO2xldCBoPSJ5b3V0dWJlX2ZpbGwiO0hpYS5oYXMoZC50b1VwcGVyQ2FzZSgpKSYmKGg9InlvdXR1YmVfb3V0bGluZSIpO2xldCBrPWg9PT0ieW91dHViZV9maWxsIj8ieW91dHViZV9vdXRsaW5lIjoieW91dHViZV9maWxsIixsPV8ueSgpLnJlc29sdmUoXy5YTCk7dmFyIGU9WzEyLDI0XTtmb3IoZiBvZiBlKXtlPXtpY29uTmFtZTpkLGljb25TdHlsZTpoLGljb25TaXplOmZ9O2xldCBtPXtpY29uTmFtZTpkLGljb25TdHlsZTprLGljb25TaXplOmZ9O2lmKGwuaihlKSl7dmFyIGY9ZTticmVhayBhfWlmKGwuaihtKSl7Zj1tO2JyZWFrIGF9fWY9dm9pZCAwfWVsc2UgZj12b2lkIDA7cmV0dXJuIGZ9LFtjXT1fLmJLKCgpPT5hKCkubnMpO3JldHVybiBfLksoImJhZGdlLXNoYXBlIix7ZWw6Xy5yRihkPT57YyhkKX0pLGNsYXNzOl8uUCgieXRCYWRnZVNoYXBlSG9zdCIsCigpPT5HaWEoYSgpLnR5cGUpLHt5dEJhZGdlU2hhcGVPdmVybGF5OigpPT5hKCkuaXNPdmVybGF5LHl0QmFkZ2VTaGFwZUFkc0luY2x1ZGVEb3Q6KCk9PmEoKS5Cbyx5dEJhZGdlU2hhcGVUaHVtYm5haWxCYWRnZTooKT0+RVAoYSgpLnR5cGUpLHl0QmFkZ2VTaGFwZVRodW1ibmFpbEJhZGdlUmVkZXNpZ246KCk9Pl8ueCgiZW5hYmxlX2xvY2t1cF9yZWRlc2lnbiIpJiZFUChhKCkudHlwZSkseXRCYWRnZVNoYXBlU3RhdHVzQmFkZ2U6KCk9PnthOnN3aXRjaChhKCkudHlwZSl7Y2FzZSAxMzpjYXNlIDE0OmNhc2UgMTU6Y2FzZSAxNjpjYXNlIDE3OnZhciBkPSEwO2JyZWFrIGE7ZGVmYXVsdDpkPSExfXJldHVybiBkfSx5dEJhZGdlU2hhcGVOb1RleHQ6KCk9PiFhKCkudGV4dCx5dEJhZGdlU2hhcGVJc0VtcHR5OigpPT4hYSgpLnRleHQmJiFhKCkuaWNvbiYmIWEoKS5hbmltYXRpb24seXRCYWRnZVNoYXBlTW9kZXJuOigpPT5hKCkub2d8fF8ueCgid2ViX21vZGVybl9iYWRnZV9zaGFwZSIpLAp5dEJhZGdlU2hhcGVUeXBvZ3JhcGh5OigpPT57YTp7dmFyIGQ9YSgpO2lmKGQub0Epc3dpdGNoKGQudHlwZSl7Y2FzZSAwOmNhc2UgMTpjYXNlIDEwOmQ9ITA7YnJlYWsgYTtkZWZhdWx0OmQ9ITF9ZWxzZSBkPSExfXJldHVybiFkfSx5dEJhZGdlU2hhcGVNZWRpdW1Gb250QWRCYWRnZTooKT0+YSgpLkd5LHl0QmFkZ2VTaGFwZUxhcmdlRm9udEFkQmFkZ2U6KCk9PmEoKS5qeX0pLHN0eWxlOl8uSUUoeyJiYWNrZ3JvdW5kLWNvbG9yIjooKT0+YSgpLmN1c3RvbUNvbG9ycz8uYmFja2dyb3VuZENvbG9yfSkscm9sZTooKT0+YSgpLmFjY2Vzc2liaWxpdHlUZXh0PyJpbWciOnZvaWQgMCwiYXJpYS1sYWJlbCI6KCk9PmEoKS5hY2Nlc3NpYmlsaXR5VGV4dH0sXy5LKF8uTyx7QTooKT0+YSgpLmFuaW1hdGlvbix0aGVuOmQ9Pl8uSyhfLmNNLHtjbGFzc05hbWU6Inl0QmFkZ2VTaGFwZUljb24iLGRhdGE6ZCxhbmltYXRpb25OYW1lOigpPT5kKCkuYW5pbWF0aW9uQ29uZmlnLm5hbWV8fCIifSl9KSwKXy5LKF8uTyx7QTooKT0+YigpJiYhYSgpPy5hbmltYXRpb24sdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRCYWRnZVNoYXBlSWNvbiJ9LF8uSyhfLllMLHtkYXRhOigpPT5iKCl9KSl9KSxfLksoImRpdiIse2NsYXNzOl8uUCgieXRCYWRnZVNoYXBlVGV4dCIse3l0QmFkZ2VTaGFwZVRleHRDbGlwVGV4dE92ZXJmbG93OigpPT5hKCkuZXAseXRCYWRnZVNoYXBlVGV4dEhhc011bHRpcGxlQmFkZ2VzSW5Sb3c6KCk9PihhKCkuRGp8fDApPjF9KX0sKCk9PmEoKT8udGV4dCkpfSwieWIiKTtfLlRDLmlkb21Db21wYXQ9ITA7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uV2QoImpCaXNhZiIpOwoKXy5YZCgpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgQko7Xy53Sj1mdW5jdGlvbihhLGIsYyxkPTApeyhkPV8uaXEoZCkpJiZfLmZ4KGEuY2xpZW50LGQsYixjKX07Xy54Sj1mdW5jdGlvbihhLGIpe3ZhciBjPWIuZ2V0U2NyZWVuTGF5ZXImJmIuZ2V0U2NyZWVuTGF5ZXIoKTtiLnZpc3VhbEVsZW1lbnQ/Xy53SihhLGIudmlzdWFsRWxlbWVudCx2b2lkIDAsYyk6KF8uRHgoKSxiPV8uVmkoXy5CeCgpLmopLmJpbmQoXy5CeCgpKShiKSxhLkNmKGIsdm9pZCAwLGMpKX07Xy55Sj1mdW5jdGlvbihhLGIsYyl7Xy5WaShfLmZ4KSh2b2lkIDAsYSxiLGMsdm9pZCAwKX07Xy56Sj1mdW5jdGlvbihhLGI9MCl7KGI9Xy5pcShiKSkmJmEmJl8ueUooYixfLlV3KGEpKX07Xy5BSj1mdW5jdGlvbihhLGIsYyxkKXtfLmdFLnB1c2goe2NvbW1hbmQ6YSxzb3VyY2VEYXRhOmIsY29tbWFuZENvbnRleHQ6ZH0pO2MmJmEuY2xpY2tUcmFja2luZ1BhcmFtcyYmXy56SihhLmNsaWNrVHJhY2tpbmdQYXJhbXMpfTsKQko9ZnVuY3Rpb24oYSl7aWYoIWE/LnJ1bnMpcmV0dXJuITA7Zm9yKGxldCBiIG9mIGEucnVucylpZihiLmJyYWNrZXR8fGIuZXJyb3JVbmRlcmxpbmV8fGIuZGVlbXBoYXNpemV8fF8uQihiLF8uWGNhKXx8Xy5CKGIsXy5ZY2EpKXJldHVybiExO3JldHVybiEwfTtfLkNKPWZ1bmN0aW9uKGEpe3JldHVybiBhP2Euc2ltcGxlVGV4dD9hLnNpbXBsZVRleHQ6YS5ydW5zP2EucnVucy5tYXAoYj0+Yi50ZXh0KS5qb2luKCIiKToiIjoiIn07Xy5ESj1mdW5jdGlvbihhKXtpZihhKXJldHVybiBhLmxhYmVsP2EubGFiZWw6Xy5ESihhLmFjY2Vzc2liaWxpdHlEYXRhKX07Xy5EZWE9bmV3IF8uSSgieXBjT2ZmZXJzRW5kcG9pbnQiKTtfLkVlYT1uZXcgXy5JKCJ5cGNHZXRPZmZlcnNFbmRwb2ludCIpO2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0aGVtZS1tZXRhIik7ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFwcCIpO18uRmVhPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwbGF5ZXIiKTtfLkVKPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwbGF5ZXItY29udGFpbmVyLWlkIik7ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBsYXllci1jb250cm9sLWNvbnRhaW5lciIpO2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwbGF5ZXItZW5kc2NyZWVuLWNvbnRhaW5lciIpO2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwbGF5ZXItc2hvcnRzLWNvbnRhaW5lciIpO2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwbGF5ZXItY2luZW1hdGljcy1jb250YWluZXIiKTtkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZnVsbC1zY3JlZW4tY29udGVudC1pZCIpO18uRko9Xy5LeSgiaW5pdCIpO3ZhciBHSjsKR0o9Xy5MKCh7cnVuOmEsbWE6Yn0pPT57dmFyIGM9KCk9PmEoKS5uYXZpZ2F0aW9uRW5kcG9pbnQ7cmV0dXJuIF8uSyhfLkVFLG51bGwsXy5LKF8uQ0Use3doZW46KCk9PmEoKS5ib2xkfSwoKT0+e3ZhciBkPV8uTigoKT0+KHsuLi5hKCksYm9sZDp2b2lkIDB9KSx2b2lkIDAsIlNsWmw2Iik7cmV0dXJuIF8uSygic3Ryb25nIix7Y2xhc3M6ImZvcm1hdHRlZC1zdHJpbmctYm9sZCJ9LF8uSyhHSix7cnVuOmQsbWE6Yn0pKX0pLF8uSyhfLkNFLHt3aGVuOigpPT5hKCkuZGVlbXBoYXNpemV9LCgpPT57dmFyIGQ9Xy5OKCgpPT4oey4uLmEoKSxkZWVtcGhhc2l6ZTp2b2lkIDB9KSx2b2lkIDAsInlJeHdkZCIpO3JldHVybiBfLksoInNwYW4iLHtjbGFzczoiZm9ybWF0dGVkLXN0cmluZy1kZWVtcGhhc2l6ZSJ9LF8uSyhHSix7cnVuOmQsbWE6Yn0pKX0pLF8uSyhfLkNFLHt3aGVuOigpPT5hKCkuaXRhbGljc30sKCk9Pnt2YXIgZD1fLk4oKCk9Pih7Li4uYSgpLGl0YWxpY3M6dm9pZCAwfSksdm9pZCAwLAoiUU5YSEhiIik7cmV0dXJuIF8uSygiZW0iLG51bGwsXy5LKEdKLHtydW46ZCxtYTpifSkpfSksXy5LKF8uQ0Use3doZW46KCk9PmEoKS50ZXh0Q29sb3J9LCgpPT57dmFyIGQ9Xy5OKCgpPT4oey4uLmEoKSx0ZXh0Q29sb3I6dm9pZCAwfSksdm9pZCAwLCJ4SmVHM2IiKTtyZXR1cm4gXy5LKCJzcGFuIix7c3R5bGU6KCk9PmBjb2xvcjogJHtfLkpFKGEoKS50ZXh0Q29sb3IpfWB9LF8uSyhHSix7cnVuOmQsbWE6Yn0pKX0pLF8uSyhfLkNFLHt3aGVuOigpPT5hKCkuc3RyaWtldGhyb3VnaH0sKCk9Pnt2YXIgZD1fLk4oKCk9Pih7Li4uYSgpLHN0cmlrZXRocm91Z2g6dm9pZCAwfSksdm9pZCAwLCJYQ1I2aGQiKTtyZXR1cm4gXy5LKCJzIixudWxsLF8uSyhHSix7cnVuOmQsbWE6Yn0pKX0pLF8uSyhfLkNFLHt3aGVuOigpPT4hYSgpLm5hdmlnYXRpb25FbmRwb2ludHx8YigpfSwoKT0+Xy5LKF8uSUIsbnVsbCwoKT0+YSgpLnRleHQpKSxfLksoXy5ERSxudWxsLCgpPT5fLksoXy5uSCx7Y29tbWFuZDpjLAp0YWJJbmRleDowfSxfLksoXy5JQixudWxsLCgpPT5hKCkudGV4dCkpKSl9LCJOIik7Cl8uSUo9Xy5MKCh7ZGF0YTphLC4uLmJ9KT0+e3ZhciBjPSgpPT5iLm1hPy4oKSxkPSgpPT5iLnViPy4oKSxlPSgpPT5iLklkPy4oKSxmPSgpPT5iLnVzZXJJbnB1dD8uKCksaD0oKT0+Yi5YYT8uKCksaz0oKT0+Yi5yZz8uKCk/PyEwO3JldHVybiBfLksoXy5FRSxudWxsLF8uSyhfLkNFLHt3aGVuOigpPT4hKGE/LigpJiZPYmplY3Qua2V5cyhhKCkpLmxlbmd0aCl9LCgpPT5udWxsKSxfLksoXy5DRSx7d2hlbjooKT0+e3ZhciBsO2lmKGw9QkooYSgpKSlsPWEoKSxsPSEhKGw/LmNvbnRlbnQhPT12b2lkIDA/bDpfLkFGKGwpKS5jb250ZW50O3JldHVybiBsfX0sKCk9Pl8uSyhfLlYse3RleHQ6YSxhcmlhTGFiZWw6KCk9Pl8uREooYSgpLmFjY2Vzc2liaWxpdHk/LmFjY2Vzc2liaWxpdHlEYXRhKSxYYTpoLG1hOmMsdWI6ZCxyZzprLElkOmUsdXNlcklucHV0OmYsWXU6ITB9KSksXy5LKF8uQ0Use3doZW46KCk9PkJKKGEoKSl9LCgpPT5udWxsKSxfLksoXy5DRSx7d2hlbjooKT0+e3ZhciBsOwppZigobD1hPy4oKSYmT2JqZWN0LmtleXMoYSgpKS5sZW5ndGgpJiYhKGw9YSgpLmFjY2Vzc2liaWxpdHkpKWE6e2w9YSgpO2lmKGwucnVucylmb3IobGV0IG0gb2YgbC5ydW5zKWlmKG0ubmF2aWdhdGlvbkVuZHBvaW50KXtsPSExO2JyZWFrIGF9bD0hMH1yZXR1cm4gbCYmYSgpLnJ1bnMmJmEoKS5ydW5zLmxlbmd0aD4xfX0sKCk9Pl8uSygic3BhbiIseyJhcmlhLWxhYmVsIjooKT0+Xy5ESihhKCkuYWNjZXNzaWJpbGl0eT8uYWNjZXNzaWJpbGl0eURhdGEpLGNsYXNzOiJmb3JtYXR0ZWQtc3RyaW5nLXRleHQiLHJvbGU6InRleHQifSxfLksoSEose3NpbXBsZVRleHQ6KCk9PmEoKS5zaW1wbGVUZXh0LHJ1bnM6KCk9PmEoKS5ydW5zLG1hOmN9KSkpLF8uSyhfLkRFLG51bGwsKCk9Pl8uSyhISix7c2ltcGxlVGV4dDooKT0+YSgpLnNpbXBsZVRleHQscnVuczooKT0+YSgpLnJ1bnMsbWE6Y30pKSl9LCJPIik7Xy5JSi5pZG9tQ29tcGF0PSEwOwp2YXIgSEo9Xy5MKCh7c2ltcGxlVGV4dDphLHJ1bnM6YixtYTpjfSk9Pl8uSyhfLk8se0E6KCk9PmEmJmEoKSx0aGVuOmQ9PmQsVzooKT0+Xy5LKF8uTyx7QTooKT0+YiYmYigpLHRoZW46ZD0+Xy5LKF8uZ0cse3BhOmQsdGI6IklOREVYIn0sZT0+Xy5LKEdKLHtydW46ZSxtYTooKT0+ISFjPy4oKX0pKX0pfSksIlAiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5MSj1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoIlpRS3gxIik7cmV0dXJuIF8uVkN9O18uTUo9Xy5jRCgoKT0+Xy5MSigpLCJidXR0b25PckFuY2hvciIpO18uWXQoXy5KRCxhPT57YS5KKCJidXR0b25PckFuY2hvciIsIlpRS3gxIixfLkxKKX0pOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgWUs7WUs9YT0+Yj0+KCk9PmI/LigpIT09dm9pZCAwP1N0cmluZyhiKCkpK2E6dm9pZCAwO18uWks9WUsoInB4Iik7Xy54ZmE9WUsoIiUiKTtfLiRLPVlLKCJzIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uYUw9ZnVuY3Rpb24oLi4uYSl7dmFyIGI9W107Zm9yKGxldCBjIG9mIGEpaWYoYylpZih0eXBlb2YgYz09PSJzdHJpbmciKWIucHVzaChjKTtlbHNlIGZvcihsZXQgW2QsZV1vZiBPYmplY3QuZW50cmllcyhjKSlhPWQsZSYmYi5wdXNoKGEpO3JldHVybiBiLmpvaW4oIiAiKX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uYkw9bmV3IF8uVnMoIlBBTkVMX0NPTlRST0xMRVJfVE9LRU4iKTtfLmNMPW5ldyBfLlZzKCJTSEVFVF9DT05UUk9MTEVSX1RPS0VOIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uZ0w9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJyOUtNamIiKTtyZXR1cm4gXy4kQ307Xy5oTD1fLmNEKCgpPT5fLmdMKCksInVwc2VsbFZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJ1cHNlbGxWaWV3TW9kZWwiLCJyOUtNamIiLF8uZ0wpfSk7Xy5pTD1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoIlZjR1M4Iik7cmV0dXJuIF8uRUN9O18uakw9Xy5jRCgoKT0+Xy5pTCgpLCJtaW5pQXBwU2NvcmVDaGFsbGVuZ2VWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigibWluaUFwcFNjb3JlQ2hhbGxlbmdlVmlld01vZGVsIiwiVmNHUzgiLF8uaUwpfSk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uVkw9bmV3IF8uSSgiYnV0dG9uUmVuZGVyZXIiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5XTD1mdW5jdGlvbihhKXtyZXR1cm57cnVuczpbe3RleHQ6YX1dfX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uWkw9Xy5MKGE9Pnsoe3dyYXBwZXI6YX09Xy5EQyhhLHt3cmFwcGVyOiExfSkpO3JldHVybiBfLksoXy5PLHtBOmEsdGhlbjooKT0+Xy5LKCJ5dC1zcGlubmVyLXNoYXBlIix7Y2xhc3M6Inl0U3Bpbm5lclNoYXBlV3JhcHBlciJ9LF8uSygiZGl2Iix7Y2xhc3M6Inl0U3Bpbm5lclNoYXBlU3Bpbm5lciJ9KSksVzooKT0+Xy5LKCJ5dC1zcGlubmVyLXNoYXBlIix7Y2xhc3M6Inl0U3Bpbm5lclNoYXBlU3Bpbm5lciJ9KX0pfSwiSWEiKTtfLlpMLmlkb21Db21wYXQ9ITA7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uJEw9e0VvOiExLGxxOiExLHZwOiIiLHVwOiIiLHdyOiExLENxOiExfTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5hTT1mdW5jdGlvbihhKXtyZXR1cm4gYT09PTB8fGE9PT0xfTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKdmFyIGVNLGNnYSxkZ2EsZk0sZ00saU0sak0sZWdhLGdnYSxpZ2Esa2dhLG1nYSxvZ2EscE0scGdhLHFnYSxuTTtfLmRNPWZ1bmN0aW9uKGEpe2ZvcihsZXQgYiBpbiBhKXJldHVybiBifTtlTT1mdW5jdGlvbiguLi5hKXtyZXR1cm4gYS5sZW5ndGg9PT0wP2I9PmI6YS5sZW5ndGg9PT0xP2FbMF06YS5yZWR1Y2UoKGIsYyk9PiguLi5kKT0+YihjKC4uLmQpKSl9O2NnYT1mdW5jdGlvbigpe3ZhciBhPVtdO3JldHVybiBiPT4oYyxkKT0+e2M9YihjLGQpO3ZhciBlPSgpPT57dGhyb3cgRXJyb3IoIlFiIik7fSxmPXtnZXRTdGF0ZTpjLmdldFN0YXRlLGRpc3BhdGNoOihoLC4uLmspPT5lKGgsLi4uayl9O2Q9YS5tYXAoaD0+aChmKSk7ZT1lTSguLi5kKShjLmRpc3BhdGNoKTtyZXR1cm57Li4uYyxkaXNwYXRjaDplfX19OwpkZ2E9ZnVuY3Rpb24oYSl7T2JqZWN0LmtleXMoYSkuZm9yRWFjaChiPT57dmFyIGM9YVtiXTtpZih0eXBlb2YgYyh2b2lkIDAse3R5cGU6Xy5tQX0pPT09InVuZGVmaW5lZCIpdGhyb3cgRXJyb3IoIlJiYCIrYik7aWYodHlwZW9mIGModm9pZCAwLHt0eXBlOmBAQHJlZHV4L1BST0JFX1VOS05PV05fQUNUSU9OJHtfLmxBKCl9YH0pPT09InVuZGVmaW5lZCIpdGhyb3cgRXJyb3IoIlNiYCIrYisiYCIrXy5tQSk7fSl9OwpmTT1mdW5jdGlvbihhKXt2YXIgYj1PYmplY3Qua2V5cyhhKSxjPXt9O2ZvcihsZXQgZj0wO2Y8Yi5sZW5ndGg7ZisrKXtsZXQgaD1iW2ZdO3R5cGVvZiBhW2hdPT09ImZ1bmN0aW9uIiYmKGNbaF09YVtoXSl9dmFyIGQ9T2JqZWN0LmtleXMoYyk7dHJ5e2RnYShjKX1jYXRjaChmKXt2YXIgZT1mfXJldHVybiBmdW5jdGlvbihmPXt9LGgpe2lmKGUpdGhyb3cgZTt2YXIgaz0hMSxsPXt9O2ZvcihsZXQgbT0wO208ZC5sZW5ndGg7bSsrKXtsZXQgbj1kW21dLHA9ZltuXSxyPSgwLGNbbl0pKHAsaCk7aWYodHlwZW9mIHI9PT0idW5kZWZpbmVkIil0aHJvdyBmPWgmJmgudHlwZSxFcnJvcigiVGJgIisoZj9gIiR7U3RyaW5nKGYpfSJgOiIodW5rbm93biB0eXBlKSIpKyJgIituKTtsW25dPXI7az1rfHxyIT09cH1yZXR1cm4oaz1rfHxkLmxlbmd0aCE9PU9iamVjdC5rZXlzKGYpLmxlbmd0aCk/bDpmfX07CmdNPWZ1bmN0aW9uKGEsYixjKXtmdW5jdGlvbiBkKCl7aWYobil0aHJvdyBFcnJvcigiVWIiKTtyZXR1cm4ga31mdW5jdGlvbiBlKHIpe2lmKHR5cGVvZiByIT09ImZ1bmN0aW9uIil0aHJvdyBFcnJvcigiVmJgIit0eXBlb2Ygcik7aWYobil0aHJvdyBFcnJvcigiV2IiKTt2YXIgdD0hMDttPT09bCYmKG09bC5zbGljZSgpKTttLnB1c2gocik7cmV0dXJuIGZ1bmN0aW9uKCl7aWYodCl7aWYobil0aHJvdyBFcnJvcigiWGIiKTt0PSExO209PT1sJiYobT1sLnNsaWNlKCkpO3ZhciB2PW0uaW5kZXhPZihyKTttLnNwbGljZSh2LDEpO2w9bnVsbH19fWZ1bmN0aW9uIGYocil7aWYodHlwZW9mIHIhPT0ib2JqZWN0Inx8cj09PW51bGwpdmFyIHQ9ITE7ZWxzZXtmb3IodD1yO09iamVjdC5nZXRQcm90b3R5cGVPZih0KSE9PW51bGw7KXQ9T2JqZWN0LmdldFByb3RvdHlwZU9mKHQpO3Q9T2JqZWN0LmdldFByb3RvdHlwZU9mKHIpPT09dH1pZighdCl0aHJvdyBFcnJvcigiWWJgIit0eXBlb2Ygcik7CmlmKHR5cGVvZiByLnR5cGU9PT0idW5kZWZpbmVkIil0aHJvdyBFcnJvcigiWmIiKTtpZihuKXRocm93IEVycm9yKCIkYiIpO3RyeXtuPSEwLGs9aChrLHIpfWZpbmFsbHl7bj0hMX10PWw9bTtmb3IobGV0IHY9MDt2PHQubGVuZ3RoO3YrKykoMCx0W3ZdKSgpO3JldHVybiByfWlmKHR5cGVvZiBiPT09ImZ1bmN0aW9uIiYmdHlwZW9mIGM9PT0iZnVuY3Rpb24ifHx0eXBlb2YgYz09PSJmdW5jdGlvbiImJnR5cGVvZiBhcmd1bWVudHNbM109PT0iZnVuY3Rpb24iKXRocm93IEVycm9yKCJhYyIpO3R5cGVvZiBiPT09ImZ1bmN0aW9uIiYmdHlwZW9mIGM9PT0idW5kZWZpbmVkIiYmKGM9YixiPXZvaWQgMCk7aWYodHlwZW9mIGMhPT0idW5kZWZpbmVkIil7aWYodHlwZW9mIGMhPT0iZnVuY3Rpb24iKXRocm93IEVycm9yKCJiY2AiK3R5cGVvZiBjKTtyZXR1cm4gYyhnTSkoYSxiKX1pZih0eXBlb2YgYSE9PSJmdW5jdGlvbiIpdGhyb3cgRXJyb3IoImNjYCIrdHlwZW9mIGEpO3ZhciBoPWEsaz0KYixsPVtdLG09bCxuPSExO2Yoe3R5cGU6Xy5tQX0pO3ZhciBwPXtkaXNwYXRjaDpmLHN1YnNjcmliZTplLGdldFN0YXRlOmQscmVwbGFjZVJlZHVjZXI6ZnVuY3Rpb24ocil7aWYodHlwZW9mIHIhPT0iZnVuY3Rpb24iKXRocm93IEVycm9yKCJkY2AiK3R5cGVvZiByKTtoPXI7Zih7dHlwZTpfLlJhYX0pO3JldHVybiBwfSxbXy5uQV06ZnVuY3Rpb24oKXtyZXR1cm57c3Vic2NyaWJlKHIpe2Z1bmN0aW9uIHQoKXtyLm5leHQmJnIubmV4dChkKCkpfWlmKHR5cGVvZiByIT09Im9iamVjdCJ8fHI9PT1udWxsKXRocm93IG5ldyBUeXBlRXJyb3IoImVjYCIrdHlwZW9mIHIpO3QoKTtyZXR1cm57dW5zdWJzY3JpYmU6ZSh0KX19LFtfLm5BXSgpe3JldHVybiB0aGlzfX19fTtyZXR1cm4gcH07Cl8uaE09ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXsuLi5hfTtmb3IobGV0IGUgb2YgT2JqZWN0LmtleXMoYikpe2xldCBmPWFbZV0saD1iW2VdO2lmKGg9PT12b2lkIDApZGVsZXRlIGRbZV07ZWxzZSBpZihmPT09dm9pZCAwKWRbZV09aDtlbHNlIGlmKEFycmF5LmlzQXJyYXkoaCkmJkFycmF5LmlzQXJyYXkoZikpZFtlXT1jP1suLi5mLC4uLmhdOmg7ZWxzZSBpZighQXJyYXkuaXNBcnJheShoKSYmXy5BYShoKSYmIUFycmF5LmlzQXJyYXkoZikmJl8uQWEoZikpZFtlXT1fLmhNKGYsaCxjKTtlbHNlIGlmKHR5cGVvZiBoPT09dHlwZW9mIGYpZFtlXT1oO2Vsc2UgcmV0dXJuIGI9bmV3IF8uWGooIkF0dGVtcHRlZCB0byBtZXJnZSBmaWVsZHMgb2YgZGlmZmVyaW5nIHR5cGVzLiIse25hbWU6IkRlZXBNZXJnZUVycm9yIixrZXk6ZSxIajpmLHVwZGF0ZVZhbHVlOmh9KSxfLkdwKGIpLGF9cmV0dXJuIGR9OwppTT1mdW5jdGlvbihhLGIsYyxkKXtpZihkPT09dm9pZCAwKXtsZXQge1tjXTplLC4uLmZ9PWFbYl18fHt9O3JldHVybnsuLi5hLFtiXTpmfX1yZXR1cm57Li4uYSxbYl06ey4uLmFbYl0sW2NdOmR9fX07ak09ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj1hW2JdfHx7fSxoPWZbY107aWYoIWgmJiFfLngoIndlYl9lbmFibGVfZW50aXR5X3Vwc2VydF9vbl91cGRhdGUiKSlyZXR1cm4gYTtkPV8uaE0oaHx8e30sZCxlPT09IlJFUEVBVEVEX0ZJRUxEU19NRVJHRV9PUFRJT05fQVBQRU5EIik7cmV0dXJuey4uLmEsW2JdOnsuLi5mLFtjXTpkfX19OwplZ2E9ZnVuY3Rpb24oYT17fSxiKXtzd2l0Y2goYi50eXBlKXtjYXNlICJFTlRJVFlfTE9BREVEIjpyZXR1cm4gYi5wYXlsb2FkLnJlZHVjZSgoYyxkKT0+e3ZhciBlPWQub3B0aW9ucz8ucGVyc2lzdGVuY2VPcHRpb247aWYoZSYmZSE9PSJFTlRJVFlfUEVSU0lTVEVOQ0VfT1BUSU9OX1VOS05PV04iJiZlIT09IkVOVElUWV9QRVJTSVNURU5DRV9PUFRJT05fSU5NRU1PUllfQU5EX1BFUlNJU1QiKXJldHVybiBjO2lmKCFkLmVudGl0eUtleSlyZXR1cm4gXy5HcChFcnJvcigiZ2MiKSksYztpZihkLnR5cGU9PT0iRU5USVRZX01VVEFUSU9OX1RZUEVfUkVQTEFDRSIpe2lmKCFkLnBheWxvYWQpcmV0dXJuIGQ9bmV3IF8uWGooIlJFUExBQ0UgZW50aXR5IG11dGF0aW9uIGlzIG1pc3NpbmcgYSBwYXlsb2FkIix7ZW50aXR5S2V5OmQuZW50aXR5S2V5fSksXy5HcChkKSxjO3ZhciBmPV8uZE0oZC5wYXlsb2FkKTtyZXR1cm4gaU0oYyxmLGQuZW50aXR5S2V5LGQucGF5bG9hZFtmXSl9aWYoZC50eXBlPT09CiJFTlRJVFlfTVVUQVRJT05fVFlQRV9ERUxFVEUiKXthOntkPWQuZW50aXR5S2V5O3RyeXtsZXQgaD1fLkdIKGQpLmVudGl0eVR5cGU7Zj1pTShjLGgsZCk7YnJlYWsgYX1jYXRjaChoKXtpZihoIGluc3RhbmNlb2YgRXJyb3Ipe2Q9bmV3IF8uWGooIkZhaWxlZCB0byBkZXNlcmlhbGl6ZSBlbnRpdHkga2V5Iix7ZW50aXR5S2V5OmQsb3JpZ2luYWxNZXNzYWdlOmgubWVzc2FnZX0pO18uR3AoZCk7Zj1jO2JyZWFrIGF9dGhyb3cgaDt9Zj12b2lkIDB9cmV0dXJuIGZ9aWYoZC50eXBlPT09IkVOVElUWV9NVVRBVElPTl9UWVBFX1VQREFURSIpe2lmKCFkLnBheWxvYWQpcmV0dXJuIGQ9bmV3IF8uWGooIlVQREFURSBlbnRpdHkgbXV0YXRpb24gaXMgbWlzc2luZyBhIHBheWxvYWQiLHtlbnRpdHlLZXk6ZC5lbnRpdHlLZXl9KSxfLkdwKGQpLGM7Zj1fLmRNKGQucGF5bG9hZCk7cmV0dXJuIGpNKGMsZixkLmVudGl0eUtleSxkLnBheWxvYWRbZl0sZC5maWVsZE1hc2s/Lm1lcmdlT3B0aW9ucz8ucmVwZWF0ZWRGaWVsZHNNZXJnZU9wdGlvbil9cmV0dXJuIGN9LAphKTtjYXNlICJSRVBMQUNFX0VOVElUWSI6cmV0dXJuIGlNKGEsYi5wYXlsb2FkLmVudGl0eVR5cGUsYi5wYXlsb2FkLmtleSxiLnBheWxvYWQueGwpO2Nhc2UgIlJFUExBQ0VfRU5USVRJRVMiOnJldHVybiBPYmplY3Qua2V5cyhiLnBheWxvYWQpLnJlZHVjZSgoYyxkKT0+e3ZhciBlPWIucGF5bG9hZFtkXTtyZXR1cm4gT2JqZWN0LmtleXMoZSkucmVkdWNlKChmLGgpPT5pTShmLGQsaCxlW2hdKSxjKX0sYSk7Y2FzZSAiVVBEQVRFX0VOVElUWSI6cmV0dXJuIGpNKGEsYi5wYXlsb2FkLmVudGl0eVR5cGUsYi5wYXlsb2FkLmtleSxiLnBheWxvYWQueGwsYi5wYXlsb2FkLkl5KTtkZWZhdWx0OnJldHVybiBhfX07Cl8ubE09ZnVuY3Rpb24oKXtpZihfLmtNKXJldHVybiBfLmtNO2lmKHdpbmRvdy5sb3R0aWUpcmV0dXJuIF8ua009UHJvbWlzZS5yZXNvbHZlKHdpbmRvdy5sb3R0aWUpO3ZhciBhPV8uaHcoXy53KCJMT1RUSUVfVVJMIikpO3JldHVybiBhP18ua009bmV3IFByb21pc2UoKGIsYyk9Pnt2YXIgZD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtkLmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCgpPT57Yihsb3R0aWUpfSk7ZC5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsZT0+e3ZhciBmPSJMb3R0aWUgbGlicmFyeSBmYWlsZWQgdG8gbG9hZC4iO2U/ZS5tZXNzYWdlJiYoZis9YCBPcmlnaW5hbCBkZXNjcmlwdGlvbjogJHtlLm1lc3NhZ2V9YCxfLmN3KGUsZikpOmU9RXJyb3IoZik7Xy5JcChlKTtjKGUpfSk7ZC5zZXRBdHRyaWJ1dGUoImFzeW5jIiwiIik7Xy5vYihkLGEpO2RvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoZCl9KTpQcm9taXNlLnJlamVjdChFcnJvcigiQmQiKSl9OwpnZ2E9ZnVuY3Rpb24oYT1mZ2EsYil7c3dpdGNoKGIudHlwZSl7Y2FzZSAiU0VUX0lTX0JPVFRPTV9TSEVFVF9PUEVOX1NUQVRFIjpyZXR1cm57Li4uYSxqajpiLnBheWxvYWR9O2RlZmF1bHQ6cmV0dXJuIGF9fTtpZ2E9ZnVuY3Rpb24oYT1oZ2EsYil7c3dpdGNoKGIudHlwZSl7Y2FzZSAiU0VUX0NJTkVNQVRJQ19TRVRUSU5HX1NUQVRFIjpyZXR1cm57Li4uYSxpc0FsbG93ZWQ6Yi5wYXlsb2FkfTtkZWZhdWx0OnJldHVybiBhfX07CmtnYT1mdW5jdGlvbihhPWpnYSxiKXtzd2l0Y2goYi50eXBlKXtjYXNlICJTRVRfRVJST1JfTUVTU0FHRV9DUkVBVEVfUExBWUxJU1RfU1RBVEUiOnJldHVybnsuLi5hLGVycm9yTWVzc2FnZTpiLnBheWxvYWR9O2Nhc2UgIlNFVF9USVRMRV9DUkVBVEVfUExBWUxJU1RfU1RBVEUiOnJldHVybnsuLi5hLHRpdGxlOmIucGF5bG9hZH07Y2FzZSAiU0VUX1BSSVZBQ1lfQ1JFQVRFX1BMQVlMSVNUX1NUQVRFIjpyZXR1cm57Li4uYSxwcml2YWN5OmIucGF5bG9hZH07Y2FzZSAiU0VUX0lTX0RJU0FCTEVEX0NSRUFURV9QTEFZTElTVF9TVEFURSI6cmV0dXJuey4uLmEsaXNEaXNhYmxlZDpiLnBheWxvYWR9O2RlZmF1bHQ6cmV0dXJuIGF9fTttZ2E9ZnVuY3Rpb24oYT1sZ2EsYil7c3dpdGNoKGIudHlwZSl7Y2FzZSAiU0VUX0lTX0RSQVdFUl9MQVlPVVRfT1BFTl9TVEFURSI6cmV0dXJuey4uLmEsamo6Yi5wYXlsb2FkfTtkZWZhdWx0OnJldHVybiBhfX07Cm9nYT1mdW5jdGlvbihhPW5nYSxiKXtzd2l0Y2goYi50eXBlKXtjYXNlICJTRVRfSVNfRlVMTFNDUkVFTl9TVEFURSI6cmV0dXJuey4uLmEsaXNGdWxsc2NyZWVuOmIucGF5bG9hZH07Y2FzZSAiU0VUX05BVklHQVRJT05fQlVUVE9OIjp2YXIgYz17Li4uYS5uYXZpZ2F0aW9uQnV0dG9uc307Y1tiLnBheWxvYWQudGFyZ2V0SWRdPWIucGF5bG9hZC5idXR0b247cmV0dXJuey4uLmEsbmF2aWdhdGlvbkJ1dHRvbnM6Y307Y2FzZSAiU0VUX1RPUF9QQU5FTF9JRF9TVEFURSI6cmV0dXJuey4uLmEscXM6Yi5wYXlsb2FkfTtjYXNlICJTRVRfU0VDT05EQVJZX0hFQURFUiI6cmV0dXJuIGM9ey4uLmEuc2Vjb25kYXJ5SGVhZGVyfSxjW2IucGF5bG9hZC5wYW5lbElkXT1iLnBheWxvYWQuc2Vjb25kYXJ5SGVhZGVyLHsuLi5hLHNlY29uZGFyeUhlYWRlcjpjfTtkZWZhdWx0OnJldHVybiBhfX07Xy5vTT1mdW5jdGlvbigpe21NfHwobU09bmV3IG5NKTtyZXR1cm4gbU19OwpwTT1mdW5jdGlvbihhLGIpe2I9Yj8uQXN8fF8ueSgpLnJlc29sdmUoXy5JbihfLmtGKSk/LigpO3N3aXRjaChhKXtjYXNlICJMSUtFIjphPV8ub00oKS5nZXRTdGF0ZSgpO2E9KGE9Xy5xQShhLmVudGl0aWVzLCJsaWtlQnV0dG9uQW5pbWF0aW9uRW50aXR5IiwiRWh4c2FXdGxYMkoxZEhSdmJsOWhibWx0WVhScGIyNWZaVzUwYVhSNUlMY0VLQUUlM0QiKSkmJmEuYW5pbWF0aW9uTGlnaHRVcmwmJmEuYW5pbWF0aW9uRGFya1VybD97RWM6e2FuaW1hdGlvbkNvbmZpZzp7bmFtZTpiPyJjdXN0b21fYW5pbWF0ZWRfbGlrZV9pY29uX2RhcmsiOiJjdXN0b21fYW5pbWF0ZWRfbGlrZV9pY29uIixwYXRoOmI/YS5hbmltYXRpb25EYXJrVXJsOmEuYW5pbWF0aW9uTGlnaHRVcmwsbG9vcDohMSxhdXRvcGxheTohMSxyZW5kZXJlclNldHRpbmdzOnt2aWV3Qm94T25seTohMCxjbGFzc05hbWU6ImN1c3RvbS1hbmltYXRlZC1saWtlLWljb24ifX19LHRvdGFsRnJhbWVzOjEyMCx6aDohMH06dm9pZCAwOwppZihhKXJldHVybiBhO2I9YGFuaW1hdGVkX2xpa2VfaWNvbl8ke2I/ImRhcmsiOiJsaWdodCJ9X3Y1YDtyZXR1cm57RWM6e2FuaW1hdGlvbkNvbmZpZzp7bmFtZTpiLHBhdGg6YGh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL3lvdXR1YmUvaW1nL2xvdHRpZS9hbmltYXRlZF9saWtlX2ljb24vJHtifS5qc29uYCxsb29wOiExLGF1dG9wbGF5OiExLHJlbmRlcmVyU2V0dGluZ3M6e3ZpZXdCb3hPbmx5OiEwLGNsYXNzTmFtZToiYW5pbWF0ZWQtbGlrZS1pY29uIn19fSx0b3RhbEZyYW1lczoxMjAsemg6ITB9O2Nhc2UgIk5PVElGSUNBVElPTl9CRUxMIjpyZXR1cm57RWM6e2FuaW1hdGlvbkNvbmZpZzp7bmFtZTpiPyJub3RpZmljYXRpb25fYmVsbF9kYXJrIjoibm90aWZpY2F0aW9uX2JlbGxfbGlnaHQiLHBhdGg6YGh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL3lvdXR1YmUvaW1nL2xvdHRpZS9zdWJzY3JpYmVfYWN0aW9uL3N1YnNjcmliZV9hY3Rpb25fYmVsbF9pY29uXyR7Yj8iZGFyayI6ImxpZ2h0In1fdjQuanNvbmAsCmxvb3A6ITEsYXV0b3BsYXk6ITEscmVuZGVyZXJTZXR0aW5nczp7Y2xhc3NOYW1lOiJhbmltYXRlZC1zdWJzY3JpYmUtaWNvbiJ9fX0sdG90YWxGcmFtZXM6MTIwLHpoOiExfX19O3BnYT1mdW5jdGlvbihhLGIpe18uamYucGIoYXN5bmMoKT0+e3RyeXthd2FpdCBfLmxNKCk7bGV0IGM9YXdhaXQgKGF3YWl0IGZldGNoKGEpKS5qc29uKCk7cU0uc2V0KGEsYyk7cmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57YihjKX0pfWNhdGNoKGMpe18uSXAoYyl9fSl9O3FnYT1mdW5jdGlvbihhKXt2YXIgYj17YW5pbWF0aW9uQ29uZmlnOnt9LGxpc3RlbmVyczp7fX0sYz0oKT0+e2EoITApfTtiLmxpc3RlbmVycy5yST1jO2IubGlzdGVuZXJzLmVycm9yPWM7Yi5saXN0ZW5lcnMuc0k9KCk9PnthKCExKX07cmV0dXJuIGJ9OwpuTT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3ZhciBhPWZNKHtlbmdhZ2VtZW50UGFuZWw6b2dhLHRpOmdnYSxlSTppZ2EsRHA6bWdhLG1JOmtnYSxRSjpyZ2EsQks6c2dhLENLOnRnYSwuLi51Z2EsLi4udmdhfSksYj1lTShjZ2EoKSk7dGhpcy5zdG9yZT1nTShhLHZvaWQgMCxiKX1nZXRTdGF0ZSgpe3JldHVybiB0aGlzLnN0b3JlLmdldFN0YXRlKCl9ZGlzcGF0Y2goYSl7cmV0dXJuIHRoaXMuc3RvcmUuZGlzcGF0Y2goYSl9c3Vic2NyaWJlKGEpe3JldHVybiB0aGlzLnN0b3JlLnN1YnNjcmliZShhKX1yZXBsYWNlUmVkdWNlcihhKXtyZXR1cm4gdGhpcy5zdG9yZS5yZXBsYWNlUmVkdWNlcihhKX1bU3ltYm9sLm9ic2VydmFibGVdKCl7cmV0dXJuIHRoaXMuc3RvcmVbU3ltYm9sLm9ic2VydmFibGVdKCl9fTt2YXIgcU09bmV3IE1hcDt2YXIgd2dhPXtKcDpudWxsfTt2YXIgdWdhPXtUcjpmdW5jdGlvbihhPV8uJEwsYil7c3dpdGNoKGIudHlwZSl7Y2FzZSAiU0VUX1NIQVJFRF9BTklNQVRFRF9USFVNQk5BSUxfRU5BQkxFRCI6cmV0dXJuey4uLmEsRW86Yi5wYXlsb2FkfTtjYXNlICJTRVRfU0hBUkVEX0lOTElORV9QUkVWSUVXX0VOQUJMRUQiOnJldHVybnsuLi5hLGxxOmIucGF5bG9hZH07Y2FzZSAiU0VUX1NIQVJFRF9DVVJSRU5UX1BBR0VfVFlQRSI6cmV0dXJuey4uLmEsdnA6Yi5wYXlsb2FkfTtjYXNlICJTRVRfU0hBUkVEX0NVUlJFTlRfUEFHRV9TVUJfVFlQRSI6cmV0dXJuey4uLmEsdXA6Yi5wYXlsb2FkfTtjYXNlICJTRVRfU0hBUkVEX1BFUlNJU1RFTlRfUEFORUxfVklTSUJMRSI6cmV0dXJuey4uLmEsd3I6Yi5wYXlsb2FkfTtjYXNlICJTRVRfU0hBUkVEX0lTX1NFQVJDSEJPWF9ISURERU4iOnJldHVybnsuLi5hLENxOmIucGF5bG9hZH07ZGVmYXVsdDpyZXR1cm4gYX19LGExMXk6Zk0oe0pwOmZ1bmN0aW9uKGE9d2dhLkpwLGIpe3N3aXRjaChiLnR5cGUpe2Nhc2UgIlNFVF9FUEhFTUVSQUxfQUNUSU9OIjpyZXR1cm4gYi5wYXlsb2FkOwpkZWZhdWx0OnJldHVybiBhfX19KSxlbnRpdGllczpmdW5jdGlvbihhPXt9LGIpe3JldHVybiBlZ2EoYSxiKX19O3ZhciByTT17WGw6ITEsZm06ITEsam06ITEscGxheWVyU3RhdGU6LTEsaXNGdWxsc2NyZWVuOiExLG1qOiExLFpsOiExLGdtOiExLFRqOjIseGo6MH07dmFyIHhnYT1mTSh7WGw6ZnVuY3Rpb24oYT1yTS5YbCxiKXtzd2l0Y2goYi50eXBlKXtjYXNlICJTRVRfSVNfREVTS1RPUF9TTUFMTF9XSURUSCI6cmV0dXJuIGIucGF5bG9hZC5YbDtkZWZhdWx0OnJldHVybiBhfX0sZm06ZnVuY3Rpb24oYT1yTS5mbSxiKXtzd2l0Y2goYi50eXBlKXtjYXNlICJTRVRfSVNfU0hPUlRTX0FDVElWRSI6cmV0dXJuIGIucGF5bG9hZC5mbTtkZWZhdWx0OnJldHVybiBhfX0sam06ZnVuY3Rpb24oYT1yTS5qbSxiKXtzd2l0Y2goYi50eXBlKXtjYXNlICJTRVRfSVNfV0FUQ0hfV0hJTEVfTU9ERSI6cmV0dXJuIGIucGF5bG9hZC5qbTtkZWZhdWx0OnJldHVybiBhfX0scGxheWVyU3RhdGU6ZnVuY3Rpb24oYT1yTS5wbGF5ZXJTdGF0ZSxiKXtzd2l0Y2goYi50eXBlKXtjYXNlICJTRVRfUExBWUVSX1NUQVRFIjpyZXR1cm4gYi5wYXlsb2FkLnBsYXllclN0YXRlO2RlZmF1bHQ6cmV0dXJuIGF9fSxpc0Z1bGxzY3JlZW46ZnVuY3Rpb24oYT1yTS5pc0Z1bGxzY3JlZW4sCmIpe3N3aXRjaChiLnR5cGUpe2Nhc2UgIlNFVF9JU19GVUxMU0NSRUVOIjpyZXR1cm4gYi5wYXlsb2FkLmlzRnVsbHNjcmVlbjtkZWZhdWx0OnJldHVybiBhfX0sbWo6ZnVuY3Rpb24oYT1yTS5taixiKXtzd2l0Y2goYi50eXBlKXtjYXNlICJTRVRfSVNfU01BTExfU0NSRUVOX1NRVUVFWkVCQUNLIjpyZXR1cm4gYi5wYXlsb2FkLm1qO2RlZmF1bHQ6cmV0dXJuIGF9fSxnbTpmdW5jdGlvbihhPXJNLmdtLGIpe3N3aXRjaChiLnR5cGUpe2Nhc2UgIlNFVF9JU19TSE9SVFNfUElQX0FDVElWRSI6cmV0dXJuIGIucGF5bG9hZC5nbTtkZWZhdWx0OnJldHVybiBhfX0sWmw6ZnVuY3Rpb24oYT1yTS5abCxiKXtzd2l0Y2goYi50eXBlKXtjYXNlICJTRVRfSVNfUExBWUJBQ0tfU1RBUlRFRCI6cmV0dXJuIGIucGF5bG9hZC5abDtkZWZhdWx0OnJldHVybiBhfX0sVGo6ZnVuY3Rpb24oYT1yTS5UaixiKXtzd2l0Y2goYi50eXBlKXtjYXNlICJTRVRfU0hPUlRTX0xBWU9VVCI6cmV0dXJuIGIucGF5bG9hZC5UajsKZGVmYXVsdDpyZXR1cm4gYX19LHhqOmZ1bmN0aW9uKGE9ck0ueGosYil7c3dpdGNoKGIudHlwZSl7Y2FzZSAiU0VUX01FVEFQQU5FTF9TVFlMRSI6cmV0dXJuIGIucGF5bG9hZC54ajtkZWZhdWx0OnJldHVybiBhfX19KTt2YXIgZmdhPXtqajohMX07dmFyIGhnYT17aXNBbGxvd2VkOiExfTt2YXIgamdhPXtlcnJvck1lc3NhZ2U6IiIsdGl0bGU6IiIscHJpdmFjeToiIixpc0Rpc2FibGVkOiEwfTt2YXIgbGdhPXtqajohMX07dmFyIG5nYT17aXNGdWxsc2NyZWVuOiExLHFzOnZvaWQgMCxuYXZpZ2F0aW9uQnV0dG9uczp7fSxzZWNvbmRhcnlIZWFkZXI6e319O3ZhciB5Z2E9e3Jlc3BvbnNlOnZvaWQgMH07dmFyIHJnYT0oYT15Z2EsYik9Pntzd2l0Y2goYi50eXBlKXtjYXNlICJMT0NBVElPTl9DT0xMRUNUSU9OX1JFU1BPTlNFX0NIQU5HRSI6cmV0dXJuey4uLmEscmVzcG9uc2U6Yi5wYXlsb2FkfTtkZWZhdWx0OnJldHVybiBhfX07dmFyIHpnYT17bmV4dENvbW1hbmQ6dm9pZCAwLFR5OiExLGJ3OnZvaWQgMCxQeDohMX07dmFyIHNnYT0oYT16Z2EsYik9Pntzd2l0Y2goYi50eXBlKXtjYXNlICJSRVBPUlRfQ0hBTk5FTF9ORVhUX0RJU0FCTEVEX0NIQU5HRSI6cmV0dXJuey4uLmEsVHk6Yi5wYXlsb2FkfTtjYXNlICJSRVBPUlRfQ0hBTk5FTF9ORVhUX0NPTU1BTkRfQ0hBTkdFIjpyZXR1cm57Li4uYSxuZXh0Q29tbWFuZDpiLnBheWxvYWR9O2Nhc2UgIlJFUE9SVF9DSEFOTkVMX01PREFMX0ZPT1RFUl9SRU5ERVJFUl9TVUJNSVNTSU9OX0RBVEFfQ0hBTkdFIjpyZXR1cm57Li4uYSxidzpiLnBheWxvYWR9O2Nhc2UgIlJFUE9SVF9DSEFOTkVMX05FWFRfSU1QRVJTT05BVElPTl9WQUxJRElUWV9DSEFOR0UiOnJldHVybnsuLi5hLFB4OmIucGF5bG9hZH07ZGVmYXVsdDpyZXR1cm4gYX19O3ZhciBBZ2E9e1V6OnZvaWQgMCxUejp2b2lkIDB9O3ZhciB0Z2E9KGE9QWdhLGIpPT57c3dpdGNoKGIudHlwZSl7Y2FzZSAiUkVQT1JUX0ZPUk1fTU9EQUxfUkVOREVSRVJfREFUQV9DSEFOR0UiOnJldHVybnsuLi5hLFV6OmIucGF5bG9hZH07Y2FzZSAiUkVQT1JUX0RFVEFJTFNfRk9STV9SRU5ERVJFUl9EQVRBX0NIQU5HRSI6cmV0dXJuey4uLmEsVHo6Yi5wYXlsb2FkfTtkZWZhdWx0OnJldHVybiBhfX07dmFyIEJnYT17fTt2YXIgc009e3NoOiExLHdoOl8ueCgid2ViX3BsYXlsaXN0X3BhbmVsX2RlZmF1bHRfY29sbGFwc2VkIiksdmc6W10sWmk6ITF9O3ZhciBDZ2E9Zk0oe3NoOmZ1bmN0aW9uKGE9c00uc2gsYil7c3dpdGNoKGIudHlwZSl7Y2FzZSAiTUFJTl9BUFBfU0VUX0lTX0xJVkVfQ0hBVF9DT0xMQVBTRUQiOnJldHVybiBiLnBheWxvYWQ/Yi5wYXlsb2FkLnNoOmE7ZGVmYXVsdDpyZXR1cm4gYX19LHdoOmZ1bmN0aW9uKGE9c00ud2gsYil7c3dpdGNoKGIudHlwZSl7Y2FzZSAiTUFJTl9BUFBfU0VUX0lTX1BMQVlMSVNUX1BBTkVMX0NPTExBUFNFRCI6cmV0dXJuIGIucGF5bG9hZC53aDtkZWZhdWx0OnJldHVybiBhfX0sdmc6ZnVuY3Rpb24oYT1zTS52ZyxiKXtzd2l0Y2goYi50eXBlKXtjYXNlICJNQUlOX0FQUF9BRERfT1BFTl9FTkdBR0VNRU5UX1BBTkVMIjpyZXR1cm5bLi4uYSxiLnBheWxvYWQueHpdO2Nhc2UgIk1BSU5fQVBQX1JFTU9WRV9PUEVOX0VOR0FHRU1FTlRfUEFORUwiOnJldHVybiBhLmxlbmd0aD09PTA/YTphLmZpbHRlcihjPT5jIT09Yi5wYXlsb2FkLm9LKTtkZWZhdWx0OnJldHVybiBhfX0sWmk6ZnVuY3Rpb24oYT0Kc00uWmksYil7c3dpdGNoKGIudHlwZSl7Y2FzZSAiTUFJTl9BUFBfU0VUX0hBU19QTEFZTElTVCI6cmV0dXJuIGIucGF5bG9hZC5aaTtkZWZhdWx0OnJldHVybiBhfX19KTt2YXIgdmdhPXt4TDpmdW5jdGlvbihhPUJnYSxiKXtzd2l0Y2goYi50eXBlKXtjYXNlICJTRVRfVFJBTlNDUklQVElPTl9TVEFURSI6cmV0dXJuey4uLmEsakw6Yi5wYXlsb2FkfTtjYXNlICJTRVRfT1ZFUkxBWV9TVEFURSI6cmV0dXJuey4uLmEsb3ZlcmxheTpiLnBheWxvYWR9O2Nhc2UgIlJFU0VUX1ZPSUNFX1NFQVJDSF9TVEFURSI6cmV0dXJue307ZGVmYXVsdDpyZXR1cm4gYX19LHNob3J0czp4Z2EsQWQ6Q2dhfTt2YXIgbU09dm9pZCAwO21NPW5ldyBuTTtfLnRNPV8uTChhPT57dmFyIHthbmltYXRlZEljb25UeXBlOmIsYWN0aXZlOmMsSGM6ZCxhbmltYXRpb25SZWY6ZSxIQTpmLHNpemU6aH09Xy5EQyhhLHtIYzp2b2lkIDAsYW5pbWF0aW9uUmVmOnt9LHNpemU6MjR9KSxbayxsXT1fLkoodm9pZCAwLHZvaWQgMCwiVHZnbUNlIiksbT0oKT0+cE0oYigpLGQ/LigpKT8uRWMuYW5pbWF0aW9uQ29uZmlnLm5hbWU/PyIiLG49KCk9PntpZihwTShiKCksZD8uKCkpKXt2YXIge3BhdGg6QX09cE0oYigpLGQ/LigpKS5FYy5hbmltYXRpb25Db25maWc7cmV0dXJuIHFNLmdldChBKXx8aygpfX0sW3Ascl09Xy5KKCExLHZvaWQgMCwiamYyRHliIiksdD1xZ2Eociksdj0oKT0+cE0oYigpLGQ/LigpKT8uRWMuYW5pbWF0aW9uQ29uZmlnPy5yZW5kZXJlclNldHRpbmdzPy5jbGFzc05hbWU/PyIiLHo9dm9pZCAwLEU9dm9pZCAwO18ubkUoKCk9Pnt2YXIgQT1wTShiKCksZD8uKCkpLEY9bSgpLEM9bigpLEc9cCgpLEQ9YygpO2lmKEEmJihFIT09RiYmKEU9CkYsej1ELEY9ZSgpLHQuYW5pbWF0aW9uQ29uZmlnPUEuRWMuYW5pbWF0aW9uQ29uZmlnLHQuYW5pbWF0aW9uUmVmPUYsQyYmKHQuYW5pbWF0aW9uQ29uZmlnLmFuaW1hdGlvbkRhdGE9Qyx0LmFuaW1hdGlvbkNvbmZpZy5wYXRoPXZvaWQgMCksRj1BLkVjLmFuaW1hdGlvbkNvbmZpZy5wYXRoLCFxTS5nZXQoRikmJkEuemgmJkYmJnBnYShGLGwpKSwhKEd8fEEuemgmJiFDKSkpe2lmKEM9IWUoKS5sb3R0aWVFbClEPyhHPUEudG90YWxGcmFtZXMsdC5hbmltYXRpb25Db25maWcuaW5pdGlhbFNlZ21lbnQ9W0ctMSxHXSk6dC5hbmltYXRpb25Db25maWcuaW5pdGlhbFNlZ21lbnQ9dm9pZCAwO3o9PT1EfHxDfHwoQz1lKCksRD9DLmxvdHRpZUVsPy5wbGF5U2VnbWVudHMoWzAsQS50b3RhbEZyYW1lc10sITApOkMubG90dGllRWw/LnBsYXlTZWdtZW50cyhbMCwxXSwhMCkpO3o9RH19LCJYQjFHU2IiKTtyZXR1cm4gXy5LKCJhbmltYXRlZC1pY29uIix7Y2xhc3M6Inl0QW5pbWF0ZWRJY29uSG9zdCIsCiJkYXRhLXNpemUiOigpPT5oKCl9LF8uSyhfLk8se0E6KCk9PiEoIXBNKGIoKSxkPy4oKSk/LkVjLmFuaW1hdGlvbkNvbmZpZy5wYXRofHxwTShiKCksZD8uKCkpPy56aCYmIW4oKXx8cCgpKSx0aGVuOigpPT5fLksoXy5jTSx7ZGF0YTp0LGFuaW1hdGlvbk5hbWU6bSxjbGFzc05hbWU6dixhbmltYXRpb25SZWY6ZX0pLFc6Zn0pKX0sIk1hIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8udU09ZnVuY3Rpb24oYSl7cmV0dXJuIF8uc0UoKCk9Pih7dmFsdWU6YX0pKX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciB5TSx6TSxEZ2EsQU0sQk0sQ00sRE0sRU0sR00sRmdhLElNLEdnYSxMTSxIZ2EsTU0sUk0sU00sVE0sYk4sS2dhLGNOLGVOLExnYSxPZ2EsTmdhLE1nYSxoTixQZ2EsUmdhLGlOLGpOLGtOLFNnYSxUZ2EsbE4sVWdhLG1OLG5OLHBOLFZnYSxXZ2EsWGdhLHFOLGFoYSwkZ2Esck4sWmdhLFlnYSxkaGEsY2hhLHNOLGJoYSxmaGEsdk4sWCxBTixDTixnaGEsaWhhLGhoYSxqaGEsTU4sbGhhLG1oYSxRTixuaGEsb2hhLFROLHFoYSxhTyxyaGEsc2hhLHRoYSx1aGEsdmhhLHdoYSx4aGEsRWdhLEZNLEhNLGJPLHloYSxPTSxRTSxJZ2EsSmdhLHpoYSxBaGE7Xy52TT1mdW5jdGlvbihhKXt2YXIgYj1fLiR0KGEpO3JldHVybntbU3ltYm9sLmRpc3Bvc2VdKCl7Xy4kdChiKX19fTtfLnhNPWZ1bmN0aW9uKCl7aWYoXy5YeigpKXt2YXIgYT1fLkdoKGAke18uVmooKX06Onl0LW1hdy1wbGF5ZXJgKTtpZihhKXJldHVybiBuZXcgXy53TShhKX19Owp5TT1mdW5jdGlvbihhLGIpe2Zvcig7YS5sZW5ndGg+YjspYS5wb3AoKX07ek09ZnVuY3Rpb24oYSl7YT1BcnJheShhKTt5TShhLDApO3JldHVybiBhfTtEZ2E9ZnVuY3Rpb24oYSxiLGMsZCl7KGRbYl18fGRbXy5SQS5kZWZhdWx0XSkoYSxiLGMpfTtBTT1mdW5jdGlvbihhLGIsYyl7Yj1uZXcgRWdhKGIsYyk7cmV0dXJuIGEuX19pbmNyZW1lbnRhbERPTURhdGE9Yn07CkJNPWZ1bmN0aW9uKGEsYil7aWYoYS5fX2luY3JlbWVudGFsRE9NRGF0YSlyZXR1cm4gYS5fX2luY3JlbWVudGFsRE9NRGF0YTt2YXIgYz1hLm5vZGVUeXBlPT09MT9hLmxvY2FsTmFtZTphLm5vZGVOYW1lLGQ9YS5ub2RlVHlwZT09PTE/YS5nZXRBdHRyaWJ1dGUoImtleSIpOm51bGw7Yj1BTShhLGMsYS5ub2RlVHlwZT09PTE/ZHx8YjpudWxsKTtpZihhLm5vZGVUeXBlPT09MSYmKGM9YS5hdHRyaWJ1dGVzLGQ9Yy5sZW5ndGgpKXthPWIuanx8KGIuaj16TShkKjIpKTtmb3IobGV0IGU9MCxmPTA7ZTxkO2UrPTEsZis9Mil7bGV0IGg9Y1tlXSxrPWgudmFsdWU7YVtmXT1oLm5hbWU7YVtmKzFdPWt9fXJldHVybiBifTtDTT1mdW5jdGlvbigpe18uWUE9Xy5WQSgpfTsKRE09ZnVuY3Rpb24oYSxiKXtDTSgpO3ZhciBjO2E6e2lmKGM9Xy5ZQSl7ZG97aWYoYz09PW51bGwpYnJlYWs7dmFyIGQ9YyxlPWEsZj1iO2xldCBoPUJNKGQsZik7aWYoKDAsXy5iQikoZCxlLGgubyxmLGgua2V5KSlicmVhayBhfXdoaWxlKGImJihjPWMubmV4dFNpYmxpbmcpKX1jPW51bGx9Y3x8KGE9PT0iI3RleHQiPyhhPV8uWkEuY3JlYXRlVGV4dE5vZGUoIiIpLEFNKGEsIiN0ZXh0IixudWxsKSk6KGM9Xy5aQSxkPV8uVUEsdHlwZW9mIGE9PT0iZnVuY3Rpb24iP2M9bmV3IGE6Yz0oZD1hPT09InN2ZyI/Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIjphPT09Im1hdGgiPyJodHRwOi8vd3d3LnczLm9yZy8xOTk4L01hdGgvTWF0aE1MIjpkPT1udWxsfHxCTShkKS5vPT09ImZvcmVpZ25PYmplY3QiP251bGw6ZC5uYW1lc3BhY2VVUkkpP2MuY3JlYXRlRWxlbWVudE5TKGQsYSk6Yy5jcmVhdGVFbGVtZW50KGEpLEFNKGMsYSxiKSxhPWMpLF8uV0EuY3JlYXRlZC5wdXNoKGEpLGM9CmEpO2E9YztpZihhIT09Xy5ZQSl7aWYoXy4kQS5pbmRleE9mKGEpPj0wKWZvcihiPV8uVUEsYz1hLm5leHRTaWJsaW5nLGQ9Xy5ZQTtkIT09bnVsbCYmZCE9PWE7KWU9ZC5uZXh0U2libGluZyxiLmluc2VydEJlZm9yZShkLGMpLGQ9ZTtlbHNlIF8uVUEuaW5zZXJ0QmVmb3JlKGEsXy5ZQSk7Xy5ZQT1hfX07RU09ZnVuY3Rpb24oYSxiKXtETShhLGIpO18uVUE9Xy5ZQTtfLllBPW51bGw7cmV0dXJuIF8uVUF9O0dNPWZ1bmN0aW9uKGEsYixjLGQpe0ZNLnB1c2goRGdhKTtGTS5wdXNoKGEpO0ZNLnB1c2goYik7Rk0ucHVzaChjKTtGTS5wdXNoKGQpfTsKRmdhPWZ1bmN0aW9uKGE9Xy5IQyl7dmFyIGI9Xy5VQSxjPUJNKGIpLGQ9Xy5hQjtjPWMuanx8KGMuaj16TShkLmxlbmd0aCkpO2Zvcih2YXIgZT0hYy5sZW5ndGh8fCExLGY9MDtmPGQubGVuZ3RoO2YrPTIpe3ZhciBoPWRbZl07aWYoZSljW2ZdPWg7ZWxzZSBpZihjW2ZdIT09aClicmVhaztsZXQgbD1kW2YrMV07aWYoZXx8Y1tmKzFdIT09bCljW2YrMV09bCxHTShiLGgsbCxhKX1pZihmPGQubGVuZ3RofHxmPGMubGVuZ3RoKXtmb3IoZj1lPWY7ZjxjLmxlbmd0aDtmKz0yKV8uSkNbY1tmXV09Y1tmKzFdO2ZvcihmPWU7ZjxkLmxlbmd0aDtmKz0yKWU9ZFtmXSxoPWRbZisxXSxfLkpDW2VdIT09aCYmR00oYixlLGgsYSksY1tmXT1lLGNbZisxXT1oLGRlbGV0ZSBfLkpDW2VdO3lNKGMsZC5sZW5ndGgpO2Zvcih2YXIgayBpbiBfLkpDKUdNKGIsayx2b2lkIDAsYSksZGVsZXRlIF8uSkNba119YT1ITTtITT1iPUZNLmxlbmd0aDtmb3Ioaz1hO2s8YjtrKz01KSgwLEZNW2tdKShGTVtrKzFdLApGTVtrKzJdLEZNW2srM10sRk1bays0XSk7SE09YTt5TShGTSxhKTt5TShkLDApfTtJTT1mdW5jdGlvbihhLC4uLmIpe0RNKCIjdGV4dCIsbnVsbCk7Yj1fLllBO3ZhciBjPUJNKGIpO2lmKGMudGV4dCE9PWEpe2M9Yy50ZXh0PWE7Zm9yKGxldCBkPTE7ZDxhcmd1bWVudHMubGVuZ3RoO2QrPTEpYz0oMCxhcmd1bWVudHNbZF0pKGMpO2IuZGF0YSE9PWMmJihiLmRhdGE9Yyl9fTsKR2dhPWZ1bmN0aW9uKGEsYixjKXt2YXIgZCxlPVtdO2EuX2Rpc3Bvc2VFZmZlY3RzPV8udXYoKCk9PntfLnR2KCgpPT57dmFyIGY9YygpO2lmKGY9PT1udWxsfHxmPT09dm9pZCAwKWY9IiI7aWYoXy5xQihmKXx8Zj09PW51bGwpZD8/KGQ9ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIiIpKSxkLnBhcmVudE5vZGUhPT1hJiYoZC5faXNTaWduYWxUZXh0Tm9kZT0hMCxhLmluc2VydEJlZm9yZShkLGIpKSxkLnRleHRDb250ZW50PVN0cmluZyhmKTtlbHNlIGlmKF8ub0IoZikpe2xldCBoPWUubGVuZ3RoPjA/ZVtlLmxlbmd0aC0xXS5uZXh0U2libGluZzpiO2ZvcihsZXQgayBvZiBlKWEucmVtb3ZlQ2hpbGQoayk7Zj1fLnBCKGYpO2U9QXJyYXkuZnJvbShmLmNoaWxkTm9kZXMpO2ZvcihsZXQgayBvZiBlKWEuaW5zZXJ0QmVmb3JlKGssaCl9ZWxzZSB0aHJvdyBFcnJvcigiQWJgIisoXy5NdT8ubmFtZT8/InVua25vd24iKSsiYCIrdHlwZW9mIGYpO30sIlZ2RGdDIil9LF8uS3Uucml8fCEhXy5adCl9OwpfLktNPWZ1bmN0aW9uKGEpe2lmKCFfLkpNKXJldHVybiExO2ZvcihsZXQgYiBvZiBPYmplY3Qua2V5cyhfLkpNKSlpZihhLmhhc093blByb3BlcnR5KGIpKXJldHVybiEwO3JldHVybiExfTtMTT1mdW5jdGlvbihhKXtpZihhLmxlbmd0aCl7aWYoYS5sZW5ndGg9PT0xKXJldHVybiBhWzBdO3ZhciBiPXt9O18ud0YoYixfLlNELHtjb21tYW5kczphfSk7cmV0dXJuIGJ9fTtIZ2E9ZnVuY3Rpb24oYSl7dmFyIGI9QXJyYXkuaXNBcnJheShhLml0ZW1zKT9hLml0ZW1zOkFycmF5LmZyb20oYS5pdGVtcyk7cmV0dXJuIF8uZkcoYixhLmNoaWxkcmVuKX07TU09ZnVuY3Rpb24oYSl7YT1fLm5KKGEpO2EubGVuZ3RoPjAmJmFbMF0uZm9jdXMoKX07Xy5OTT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9ZT0+e2EucmVtb3ZlRXZlbnRMaXN0ZW5lcihiLGQpO3JldHVybiBjLmNhbGwoYSxlKX07YS5hZGRFdmVudExpc3RlbmVyKGIsZCx2b2lkIDApfTsKXy5QTT1mdW5jdGlvbihhKXtPTXx8KE9NPV8uQ2QoIkEiKSk7T00uaHJlZiE9PWEmJl8uTHkoT00sYSk7cmV0dXJuIE9NfTtSTT1mdW5jdGlvbihhKXtpZighYSlyZXR1cm4iIjtpZihRTVthXSlyZXR1cm4gUU1bYV07dmFyIGI9Xy5QTShhKS5wYXRobmFtZTtRTVthXT1iLnN0YXJ0c1dpdGgoIi8iKT9iOiIvIitiO3JldHVybiBRTVthXX07ClNNPWZ1bmN0aW9uKGEpe3JldHVybiBhPT09Ii8iPyJob21lIjphLnN0YXJ0c1dpdGgoIi9yZXN1bHRzIik/InNlYXJjaCI6YS5zdGFydHNXaXRoKCIvd2F0Y2giKT8id2F0Y2giOmEuc3RhcnRzV2l0aCgiL3Nob3J0cyIpPyJzaG9ydHMiOmEuc3RhcnRzV2l0aCgiL2hhc2h0YWciKT8iaGFzaHRhZyI6YS5zdGFydHNXaXRoKCIvY3JlYXRlX2NoYW5uZWwiKT8iY3JlYXRlX2NoYW5uZWwiOmEuc3RhcnRzV2l0aCgiL3Bvc3QvIik/InBvc3QiOmEuc3RhcnRzV2l0aCgiL0AiKXx8YS5zdGFydHNXaXRoKCIvdXNlci8iKXx8YS5zdGFydHNXaXRoKCIvY2hhbm5lbC8iKT8iY2hhbm5lbCI6YS5zdGFydHNXaXRoKCIvZXhwZXJpbWVudHMiKT8iZXhwZXJpbWVudHMiOmEuc3RhcnRzV2l0aCgiL3Nwb25zb3JfY2hhbm5lbCIpPyJzcG9uc29yc2hpcCI6YS5zdGFydHNXaXRoKCIvc2VsZWN0X3NpdGUiKT8ic2V0dGluZ3MiOmEuc3RhcnRzV2l0aCgiL2xvY2F0ZSIpPyJsb2NhdGUiOmEuc3RhcnRzV2l0aCgiL3JlZGVlbSIpPwoicmVkZWVtIjphLnN0YXJ0c1dpdGgoIi9tdXNpY3ByZW1pdW0iKXx8YS5zdGFydHNXaXRoKCIvcHJlbWl1bSIpfHxhLnN0YXJ0c1dpdGgoIi9yZWQiKT8icHJlbWl1bSI6YS5zdGFydHNXaXRoKCIvcGFpZF9tZW1iZXJzaGlwcyIpPyJwYWlkX21lbWJlcnNoaXBzIjphLnN0YXJ0c1dpdGgoIi9vb3BzIik/Im9vcHMiOmEuc3RhcnRzV2l0aCgiL2NsaXAiKT8iY2xpcCI6Xy5YRD8ucmVzcG9uc2U/LnBhZ2U9PT0iNDA0Ij8iNDA0IjphLnN0YXJ0c1dpdGgoIi9mZWVkL2hpc3RvcnkiKT8iaGlzdG9yeSI6YS5zdGFydHNXaXRoKCIvZmVlZC9saWJyYXJ5Iik/ImxpYnJhcnkiOmEuc3RhcnRzV2l0aCgiL2ZlZWQvc3Vic2NyaXB0aW9ucyIpPyJzdWJzY3JpcHRpb25zIjphLnN0YXJ0c1dpdGgoIi9mZWVkL3RyZW5kaW5nIik/InRyZW5kaW5nIjphLnN0YXJ0c1dpdGgoIi9mZWVkL25ld3NfZGVzdGluYXRpb24iKT8ibmV3cyI6YS5zdGFydHNXaXRoKCIvcGxheWxpc3QiKT8icGxheWxpc3QiOmEuc3RhcnRzV2l0aCgiL21pbm9yX21vbWVudCIpPwoibWlub3JfbW9tZW50IjphLnN0YXJ0c1dpdGgoIi9wbGF5YWJsZS8iKXx8YS5tYXRjaCgiXi9wbGF5YWJsZXMvKD8hc2F2ZWQpLiIpPyJtaW5pX2FwcCI6YS5zdGFydHNXaXRoKCIvcGxheWFibGVzIik/InBsYXlhYmxlcyI6YS5zdGFydHNXaXRoKCIvY3JlYXRlL2xpdmUvam9pbiIpPyJvcGVuX2luX2FwcCI6YS5zdGFydHNXaXRoKCIvZmVlZC9leHBsb3JlIik/ImV4cGxvcmUiOiJicm93c2UifTsKVE09ZnVuY3Rpb24oKXt2YXIgYT1fLlhEPy5yZXNwb25zZSxiPWE/LmVuZHBvaW50O2lmKCFiKXJldHVybiBhPy5wYWdlPT09IndhdGNoIj8id2F0Y2giOlNNKFJNKHdpbmRvdy5sb2NhdGlvbi5ocmVmKSk7YT1fLkIoYj8uY29tbWFuZE1ldGFkYXRhLF8uencpPy53ZWJQYWdlVHlwZTt2YXIgYz0hMTtpZihhJiYhSWdhLmluY2x1ZGVzKGEpKXN3aXRjaChhKXtjYXNlICJXRUJfUEFHRV9UWVBFX1NFQVJDSCI6cmV0dXJuInNlYXJjaCI7Y2FzZSAiV0VCX1BBR0VfVFlQRV9TSE9SVFMiOnJldHVybiJzaG9ydHMiO2Nhc2UgIldFQl9QQUdFX1RZUEVfQ0hBTk5FTCI6cmV0dXJuImNoYW5uZWwiO2Nhc2UgIldFQl9QQUdFX1RZUEVfU0VUVElOR1MiOnJldHVybiJzZXR0aW5ncyI7Y2FzZSAiV0VCX1BBR0VfVFlQRV9QTEFZTElTVCI6cmV0dXJuInBsYXlsaXN0IjtjYXNlICJXRUJfUEFHRV9UWVBFX09QRU5fSU5fQVBQIjpyZXR1cm4ib3Blbl9pbl9hcHAiO2Nhc2UgIldFQl9QQUdFX1RZUEVfTUlOSV9BUFAiOnJldHVybiJtaW5pX2FwcCI7CmNhc2UgIldFQl9QQUdFX1RZUEVfV0FUQ0giOnJldHVybiBfLkIoYj8uY29tbWFuZE1ldGFkYXRhLF8uencpPy51cmwmJlJNKF8uQihiLmNvbW1hbmRNZXRhZGF0YSxfLnp3KS51cmwpLnN0YXJ0c1dpdGgoIi9jbGlwIik/ImNsaXAiOiJ3YXRjaCI7Y2FzZSAiV0VCX1BBR0VfVFlQRV9CUk9XU0UiOnJldHVybihiPV8uQihiLF8uY0UpPy5icm93c2VJZCk/SmdhW2JdfHwiYnJvd3NlIjoiYnJvd3NlIjtkZWZhdWx0OmM9ITB9aWYoXy5CKGIsXy5FZWEpfHxfLkIoYixfLkRlYSkpcmV0dXJuInNwb25zb3JzaGlwIjt2YXIgZD1STSh3aW5kb3cubG9jYXRpb24uaHJlZik7aWYoZC5zdGFydHNXaXRoKCIvZXhwZXJpbWVudHMiKSlyZXR1cm4iZXhwZXJpbWVudHMiO2lmKGQuc3RhcnRzV2l0aCgiL2NyZWF0ZV9jaGFubmVsIikpcmV0dXJuImNyZWF0ZV9jaGFubmVsIjtpZihfLkIoYixfLlZEKSYmZC5zdGFydHNXaXRoKCIvc2hvcnRzIikpcmV0dXJuInNob3J0cyI7aWYoXy5CKGIsXy5WRCkmJgpkLnN0YXJ0c1dpdGgoIi93YXRjaCIpKXJldHVybiJ3YXRjaCI7YyYmKGI9bmV3IF8uWGooIlVuc3VwcG9ydGVkIG1XZWIgcGFnZSB0eXBlIix7cGF0aG5hbWU6ZCx3ZWJQYWdlVHlwZTphfSksXy5HcChiKSk7cmV0dXJuImJyb3dzZSJ9O18uVU09ZnVuY3Rpb24oYSl7YT8uaHJlZj9hPShhPWEuaHJlZik/U00oUk0oYT9hOndpbmRvdy5sb2NhdGlvbi5ocmVmKSk6VE0oKTphPWE/LnBhZ2VUeXBlO3JldHVybiBhfHxUTSgpfTtfLlZNPWZ1bmN0aW9uKGEpe3JldHVybiBfLlVNKGEpPT09IndhdGNoIn07Xy5XTT1mdW5jdGlvbigpe3JldHVybiBfLlVNKCk9PT0ic2hvcnRzIn07Xy5YTT1mdW5jdGlvbihhLGIpe3dpbmRvdy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudChhLHtkZXRhaWw6Yn0pKX07Cl8uWk09ZnVuY3Rpb24oKXtfLllNJiZfLkhwKG5ldyBfLlhqKGBVbmV4cGVjdGVkIGNhbGwgdG8gcmVxdWVzdEJhY2tOYXZpZ2F0aW9uLCBmcmFnbWVudDogJHt3aW5kb3cubG9jYXRpb24uaGFzaH1gKSk7Xy5GSj1uZXcgXy5CZihhPT57ZnVuY3Rpb24gYigpe3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJwb3BzdGF0ZSIsYik7d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoImhhc2hjaGFuZ2UiLGIpO2EoKX13aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicG9wc3RhdGUiLGIpO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJoYXNoY2hhbmdlIixiKX0pO18uTk0od2luZG93LCJwb3BzdGF0ZSIsKCk9PntzZXRUaW1lb3V0KCgpPT57fSl9KTtoaXN0b3J5LmJhY2soKTtyZXR1cm4gXy5GSn07Cl8uJE09ZnVuY3Rpb24oYSxiPSExKXtpZihfLllNKXt2YXIgYz13aW5kb3cubG9jYXRpb247YT1fLmRiKGAjJHthfWApO2EhPT12b2lkIDAmJmMucmVwbGFjZShhKX1lbHNlIHdpbmRvdy5sb2NhdGlvbi5oYXNoPWE7Ynx8Xy54KCJtd2ViX2VuYWJsZV9rZXRvX2NvbnRlbnQiKXx8Xy5YTSgidXBkYXRldWkiKX07Xy5hTj1mdW5jdGlvbihhKXtpZihhJiZhLnNpbXBsZVRleHQpcmV0dXJuIGEuc2ltcGxlVGV4dDt2YXIgYj0iIjtpZihhJiZhLnJ1bnMpZm9yKGxldCBjPTA7YzxhLnJ1bnMubGVuZ3RoO2MrKylhLnJ1bnNbY10udGV4dCYmKGIrPWEucnVuc1tjXS50ZXh0KTtyZXR1cm4gYn07Yk49ZnVuY3Rpb24oYSl7cmV0dXJuIF8ua0Eoe3R5cGU6IlNFVF9JU19CT1RUT01fU0hFRVRfT1BFTl9TVEFURSIscGF5bG9hZDphfSl9OwpLZ2E9ZnVuY3Rpb24oYSl7aWYoYSYmYS5mb2N1cylpZihhIT09ZG9jdW1lbnQuYWN0aXZlRWxlbWVudClhLmZvY3VzKCk7ZWxzZSByZXR1cm4gY04oYXN5bmMoKT0+e2RvY3VtZW50LmFjdGl2ZUVsZW1lbnQmJmRvY3VtZW50LmFjdGl2ZUVsZW1lbnQuYmx1cigpO3JldHVybiBjTigoKT0+e2EuZm9jdXMoKX0pfSl9O18uZE49ZnVuY3Rpb24oYSl7dmFyIGI9NTtzZXRUaW1lb3V0KGFzeW5jKCk9Pntmb3IodmFyIGM9ZG9jdW1lbnQuYWN0aXZlRWxlbWVudDsoZG9jdW1lbnQuYWN0aXZlRWxlbWVudD09PWN8fGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ9PT1kb2N1bWVudC5ib2R5KSYmYj49MCYmYTspe2F3YWl0IEtnYShhKTtpZihkb2N1bWVudC5hY3RpdmVFbGVtZW50PT09YSlicmVhazthPWEucGFyZW50RWxlbWVudDstLWJ9fSwxNSl9O2NOPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgUHJvbWlzZShiPT57cmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57YihhKCkpfSl9KX07CmVOPWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBhLmNoaWxkcmVuPT09ImZ1bmN0aW9uIilyZXR1cm4gYS5jaGlsZHJlbigpLG51bGw7Zm9yKGxldCBiIG9mIGEuY2hpbGRyZW4pYigpO3JldHVybiBudWxsfTtfLmZOPWZ1bmN0aW9uKGEsYil7Xy5SdSgoKT0+TGdhKGEsYikpfTtMZ2E9ZnVuY3Rpb24oYSxiKXt2YXIgYz1udWxsO18uZ3YrKzt0cnl7Yz0oMCxfLklDKShhLCgpPT57Xy5nTihiKX0pLF8uSUEoITEpfWNhdGNoKGQpe3Rocm93IF8uSUEoITApLGQ7fXJldHVybiBjPT09bnVsbD9hOmN9OwpfLmdOPWZ1bmN0aW9uKGEpe2lmKGEhPT12b2lkIDAmJmEhPT1udWxsKWlmKGEgaW5zdGFuY2VvZiBfLmRDKWZvcih2YXIgYj1fLlVBO18uVkEoKSE9bnVsbCYmXy5uQyBpbiBfLlZBKCkmJmIuY29udGFpbnMoXy5WQSgpKTspQ00oKTtlbHNlIGlmKEFycmF5LmlzQXJyYXkoYSkpZm9yKHZhciBjIG9mIGEpXy5nTihjKTtlbHNlIGlmKGEgaW5zdGFuY2VvZiBfLlNhKUlNKGEudG9TdHJpbmcoKSk7ZWxzZSBpZihfLmlCKGEpKXtpZihfLlZBKCkhPT1hKXRocm93IEVycm9yKCJEYmAiK2EudGFnTmFtZSsiYCIrKF8uTXU/Lm5hbWU/PyJ1bmtub3duIikpO0NNKCl9ZWxzZSBpZihjPWEsYyE9bnVsbCYmYy5HaT09PV8ubUJ8fGMgaW5zdGFuY2VvZiBfLmZifHxfLkxBKCkoYykpe2I9Xy5wQihhKTtiPUFycmF5LmZyb20oYi5jaGlsZE5vZGVzKTtmb3IodmFyIGQgb2YgYilfLlVBLmFwcGVuZENoaWxkKGQpLENNKCl9ZWxzZSBpZihfLlhhKGEpJiYoYT1hLnRvU3RyaW5nKCkpLGQ9dHlwZW9mIGEsCmQ9PT0iYm9vbGVhbiJ8fGQ9PT0ibnVtYmVyInx8ZD09PSJzdHJpbmciKUlNKGEpO2Vsc2UgaWYodHlwZW9mIGE9PT0iZnVuY3Rpb24iKWI9Xy5VQSwoZD1fLlZBKCkpJiYoZC5faXNTaWduYWxUZXh0Tm9kZXx8ZC5faXNTYWZlT3JTYW5pdGl6ZWRIdG1sTm9kZSl8fEdnYShiLGQsYSksQ00oKTtlbHNlIGlmKGEudHlwZT09PUhnYSlfLmdOKGEudHlwZShPYmplY3QuYXNzaWduKHt9LGEucHJvcHMse2NoaWxkcmVuOmEuY2hpbGRyZW5bMF19KSkpO2Vsc2V7aWYodHlwZW9mIGEudHlwZT09PSJzdHJpbmciKXthOnthLmNkfHxFTShhLnR5cGUsYS5wcm9wcy5pZG9tS2V5KTtjPV8uVUE7Zm9yKGIgaW4gYS5wcm9wcylpZihhLnByb3BzW2JdIT09Xy5LYmEpe2Q9YS5wcm9wc1tiXTtsZXQgZT1fLmFCO2UucHVzaChiKTtlLnB1c2goZCl9RmdhKF8uS3UuYXR0cmlidXRlcyk7Xy5qQyhjLGEucHJvcHMsITApO2lmKChhLnByb3BzLnNraXB8fGEucHJvcHMuc2tpcGNoaWxkcmVuKSYmXy5VQS5oYXNDaGlsZE5vZGVzKCkpXy5ZQT0KXy5VQS5sYXN0Q2hpbGQ7ZWxzZXtpZihhLnR5cGU9PT0ic3R5bGUiJiZfLlJCKGEuY2hpbGRyZW4pPT09bnVsbCl7Xy5ZQT1fLlVBLmxhc3RDaGlsZDtiPXZvaWQgMDticmVhayBhfV8uZ04oYS5jaGlsZHJlbil9Xy5YQSgpO18uWUE9Xy5VQTtfLlVBPV8uVUEucGFyZW50Tm9kZTthLmNkJiYoYS5jZD0hMSk7Xy5BQihjLGEucHJvcHMpO2I9Y31yZXR1cm4gYn1pZihhLnR5cGU9PT1fLklCKV8uZ04oYS5jaGlsZHJlbik7ZWxzZSBpZighTWdhKGEpKXtiPWE7dHJ5e05nYShiKX1jYXRjaChlKXtfLkt1LmhhbmRsZUVycm9yPy4oLi4uXy5KQShlLGIudHlwZT8uWmMpKX1iLmNkJiYoXy5YQSgpLF8uWUE9Xy5VQSxfLlVBPV8uVUEucGFyZW50Tm9kZSxiLmNkPSExKX19fTtPZ2E9ZnVuY3Rpb24oYSxiKXt2YXIgYzthLnByb3RvdHlwZT8ub2M9PT12b2lkIDA/Yz1uZXcgXy5tQyhiLGEpOmM9bmV3IGEoYik7Yy5qPWE7Yy53bz17bmV4dFN0YXRlOmMuc3RhdGUsTXg6ITF9O3JldHVybiBjfTsKTmdhPWZ1bmN0aW9uKGEpe3ZhciBiPWEudHlwZSxjPWIuWmM7aWYoYj09PWVOKWEucHJvcHMuY2hpbGRyZW49YS5jaGlsZHJlbixiKGEucHJvcHMpO2Vsc2V7YS5jaGlsZHJlbi5sZW5ndGg+MCYmKGEucHJvcHMuY2hpbGRyZW49YS5jaGlsZHJlbik7dmFyIGQ7KGQ9YS5wcm9wcykuaWRvbUtleXx8KGQuaWRvbUtleT1iKTt2YXIgZT0hMTtpZihjKXt2YXIgZj1FTShjLGEucHJvcHMuaWRvbUtleSk7YS5jZD0hMDt2YXIgaD1mLl9faW5zdGFuY2V9aHx8KGU9ITAsaD1PZ2EoYixhLnByb3BzKSxoLnByb3BzPW51bGwsZiYmKGYuX19pbnN0YW5jZT1oLGguZWw9ZikpOyh7bmV4dFN0YXRlOmN9PWgud28/P3tuZXh0U3RhdGU6aC5zdGF0ZSxNeDohMX0pO2gud289dm9pZCAwO2IubHcmJihjPWIubHcoYS5wcm9wcyxjKSk7dmFyIGs9aC5wcm9wcyxsPWguc3RhdGU7aC5wcm9wcz1hLnByb3BzO2guc3RhdGU9YztjPSgpPT57dmFyIG09aDtfLmJ3LlNvKG0pO3ZhciBuPW0ub2MobS5wcm9wcyk7Cm4/KG0ucHJvcHMuaWRvbUtleSYmKG4ucHJvcHMuaWRvbUtleT1tLnByb3BzLmlkb21LZXkpLG09bik6bT12b2lkIDA7aWYobj1tKW4uY2Q9YS5jZCxtPV8uZ04obiksYS5jZD1uLmNkLGIuWmN8fChtPyhiLlpjPW0udGFnTmFtZS50b0xvd2VyQ2FzZSgpLG0uX19pbnN0YW5jZT1oLGguZWw9bSk6aC5aZj8ubGVuZ3RoJiZfLkt1LmhhbmRsZUVycm9yPy4oLi4uXy5KQShFcnJvcigiQ2QiKSkpKTtlPyhoLkppKCksXy5idy5KaShoKSk6KGguS2koayxsKSxfLmJ3LktpKGgsayxhLnByb3BzKSk7aC5HZigpO18uYncuR2YoaCl9OyhkPWgubyk/Xy5HQShkLGMsaC5wcm9wcy5kZWJ1Z0luc3RhbmNlKTpjKCl9fTsKTWdhPWZ1bmN0aW9uKGEpe3ZhciBiPWEudHlwZTtpZihiLnByb3RvdHlwZT8ub2MhPT12b2lkIDB8fGI9PT1lTnx8Yi5jb21wb25lbnRUeXBlPT09Xy5LdilyZXR1cm4hMTthLnByb3BzLmNoaWxkcmVuPWEuY2hpbGRyZW4ubGVuZ3RoPjE/YS5jaGlsZHJlbjphLmNoaWxkcmVuWzBdO3ZhciBjPWEucHJvcHMuaWRvbUtleT8/YS50eXBlO2lmKF8uVkEoKSYmXy5WQSgpW18uV0JdPy5rZXk9PT1jKXtiPV8uVkEoKTtjPWJbXy5XQl07aWYoIWMpdGhyb3cgRXJyb3IoIkNiYCIrYi50YWdOYW1lKTtjLnFCPy4oYS5wcm9wcyk7UGdhKGMpO3JldHVybiEwfWlmKFFnYS5oYXMoYi5uYW1lKSl0aHJvdyBFcnJvcigiQmJgIitiLm5hbWUrImAiKyhfLk11Py5uYW1lPz8idW5rbm93biIpKTthLnByb3BzLmpuPSEwOyhiPV8uR0EoYS50eXBlLCgpPT5fLmdDKGEudHlwZSxhLnByb3BzKSxhLnByb3BzLmRlYnVnSW5zdGFuY2UpKSYmUmdhKGIpO3JldHVybiEwfTsKaE49ZnVuY3Rpb24oYSl7Zm9yKGxldCBiPTA7YjxfLmJDKGEpLmxlbmd0aDtiKyspQ00oKX07UGdhPWZ1bmN0aW9uKGEpe3ZhciBiPV8uVkEoKVtfLldCXT8ueW47aWYoYiloTihiKTtlbHNlIGZvcihsZXQgYz0wO2M8YS5VcTtjKyspKGI9Xy5WQSgpW18uV0JdPy55bik/aE4oYik6Q00oKX07UmdhPWZ1bmN0aW9uKGEpe2E9Xy5HQihhKTthPUFycmF5LmlzQXJyYXkoYSk/YTpbYV07Zm9yKGxldCBiIG9mIGEpXy5VQS5pbnNlcnRCZWZvcmUoYixfLlZBKCkpLENNKCl9O2lOPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGM9PnthJiZfLmRFKGEpO2ImJmIoYyl9fTtqTj1mdW5jdGlvbihhKXt2YXIgYj0yMTtpZighYSlyZXR1cm4gYjtiKz1hLmhlYWRlclRpdGxlPzI3OjA7Yis9YS5oZWFkZXJUaXRsZSYmYS5paD80OjA7cmV0dXJuIGIrPWEuaGVhZGVyVGl0bGUmJmEuaGVhZGVyU3VidGl0bGU/MTY6MH07CmtOPWZ1bmN0aW9uKGEpe3ZhciBiPTA7aWYoIWEpcmV0dXJuIGI7Yis9YS5VZnx8YS5WZj80ODowO2IrPWEuUGZ8fGEuTWY/MzA6MDtyZXR1cm4gYis9YS5VZnx8YS5WZnx8IWEuUGYmJiFhLk1mPzA6MTJ9OwpTZ2E9ZnVuY3Rpb24oYSx7a2V5OmIscGF5bG9hZDpjfSl7aWYoYj09PSJEcmFnIFN0YXJ0IilyZXR1cm57Li4uYSxDYzohMSxWZTpjLmNsaWVudFl9O2lmKGI9PT0iRHJhZyBNb3ZlIil7Yj1NYXRoLm1pbihjLlRwLGMuaHFbYy5IaV0rKGMuZnE/P2pOKGMuaGVhZGVyKSktKGMuTnA/P2tOKGMuZm9vdGVyKSkpO2xldCBkPU1hdGgubWF4KGMubXA/LTEqKGEuVmUtMjQpOjAsYy5jbGllbnRZLWEuVmUpO3JldHVybnsuLi5hLE9iOmQsRmM6TWF0aC5taW4oYixNYXRoLm1heCgwLChhLlBjP2I6Yy5xcCktZCkpfX1yZXR1cm4gYj09PSJTbmFwIFRvIEZ1bGwgU2NyZWVuIj97Li4uYSxDYzohMSxPYjowLFBjOiEwLEZjOmMubWF4SGVpZ2h0fTpiPT09IlNuYXAgVG8gTmV1dHJhbCBQb3NpdGlvbiI/ey4uLmEsQ2M6ITEsT2I6MCxQYzohMSxGYzpjLm1heEhlaWdodH06Yj09PSJDbG9zZSBTaGVldCI/ey4uLmEsQ2M6ITAsT2I6Yy5jbGllbnRIZWlnaHQsUGM6ITEsRmM6Yy5tYXhIZWlnaHR9OmF9OwpUZ2E9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IF8udGgsYz1hO3JldHVybntzdWJzY3JpYmUoZCl7Yi5zdWJzY3JpYmUoImNoYW5nZWQiLGQpfSxkaXNwYXRjaChkLGUpe2M9U2dhKGMse2tleTpkLHBheWxvYWQ6ZX0pO2IucHVibGlzaCgiY2hhbmdlZCIsYyl9fX07bE49ZnVuY3Rpb24oYSl7cmV0dXJuIGI9PntiLnN0b3BQcm9wYWdhdGlvbigpO3JldHVybiBhPy4oYil9fTtVZ2E9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgMDpyZXR1cm4ieXRTcGVjQm90dG9tU2hlZXRMYXlvdXRQcmltYXJ5QnV0dG9uRGVmYXVsdCI7Y2FzZSAxOnJldHVybiJ5dFNwZWNCb3R0b21TaGVldExheW91dFByaW1hcnlCdXR0b25UcmFpbGluZ1BhaXIiO2Nhc2UgMjpyZXR1cm4ieXRTcGVjQm90dG9tU2hlZXRMYXlvdXRQcmltYXJ5QnV0dG9uU3BsaXRQYWlyIjtjYXNlIDM6cmV0dXJuInl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0UHJpbWFyeUJ1dHRvblByaW1hcnlTcGxpdFBhaXIifX07bU49ZnVuY3Rpb24oKXtfLnkoKS5yZXNvbHZlKF8uY0wpLkplKCl9OwpuTj1mdW5jdGlvbihhKXtyZXR1cm57aGVhZGVyVGl0bGU6YS5oZWFkZXJUaXRsZT8uKCksaGVhZGVyU3VidGl0bGU6YS5oZWFkZXJTdWJ0aXRsZT8uKCksV2Y6YS5XZixOZjphLk5mLE9mOmEuT2YsUmU6YS5SZT8uKCksTWY6YS5NZj8uKCksUGY6YS5QZj8uKCksSGE6YS5IYT8uKCkscGY6YS5wZj8uKCksR2s6YS5Haz8uKCksR2g6YS5HaCxmb2N1c09uQ2xvc2U6YS5mb2N1c09uQ2xvc2U/LigpLGlzRGlzYWJsZWQ6YS5pc0Rpc2FibGVkPy4oKSxkaXNhYmxlZENvbW1hbmQ6YS5kaXNhYmxlZENvbW1hbmQ/LigpLFVlOmEuVWUsR2I6YS5HYixTZTphLlNlLGpoOmEuamgoKSxYaTphLlhpKCksaGg6YS5oaCgpLFVmOmEuVWYoKSxWZjphLlZmKCksaWg6YS5paCgpfX07cE49ZnVuY3Rpb24oYSl7b058fChvTj1fLnhNKCkpO29OPy5zZXQoInJlY2VudC1jdXN0b20tc3BlZWQiLFN0cmluZyhhKjEwMCkpfTtWZ2E9ZnVuY3Rpb24oYSl7YT1hLnRhcmdldC52YWx1ZUFzTnVtYmVyO18uTUgoKT8uc2V0UGxheWJhY2tSYXRlKGEpfTsKV2dhPWZ1bmN0aW9uKGEpe3BOKGEudGFyZ2V0LnZhbHVlQXNOdW1iZXIpfTtYZ2E9ZnVuY3Rpb24oYSl7Xy5NSCgpPy5zZXRQbGF5YmFja1JhdGUoYSk7cE4oYSl9O3FOPWZ1bmN0aW9uKGEpe2lmKCFhKXJldHVybnt9O3ZhciBiPWEuZm9yZWdyb3VuZFRpdGxlQ29sb3IsYz1hLmJhY2tncm91bmRDb2xvcjthPWEuYm9yZGVyQ29sb3I7dmFyIGQ9InRleHQiO2E/ZD0ib3V0bGluZSI6YyYmKGQ9ImZpbGxlZCIpO3JldHVybnt0eXBlOmQsY3VzdG9tQ29sb3JzOntjb2xvcjpiP18uTkQoYik6dm9pZCAwLGJhY2tncm91bmRDb2xvcjpjP18uTkQoYyk6dm9pZCAwLGJvcmRlckNvbG9yOmE/Xy5ORChhKTp2b2lkIDB9fX07CmFoYT1mdW5jdGlvbih7cmVuZGVyZXI6YSxJbTpiLHdBOmMsU2M6ZCxkdzplLFFmOmYsQmw6aCxpc1N1YnNjcmliZTprPSExLENKOmw9ITEsb0w6bT0hMX0pe3ZhciBuPVlnYShhKTtrJiYobi5zdHlsZT0ibW9ubyIsbi50eXBlPSJmaWxsZWQiKTtlPSFhLmljb258fCFlJiZhLnRleHQ/YS5pY29uP2EuaWNvblBvc2l0aW9uPT09IkJVVFRPTl9JQ09OX1BPU0lUSU9OX1RZUEVfUklHSFRfT0ZfVEVYVCI/InRyYWlsaW5nIjoibGVhZGluZyI6dm9pZCAwOmY/Imljb24tb25seSI6Imljb24tb25seS00MCI7ZT09PSJpY29uLW9ubHktNDAiJiYobi50eXBlPSJ0ZXh0Iik7bT17Li4uWmdhKGEsbSl9O2w9ISFhLmlzU2VsZWN0ZWR8fCFfLngoIndlYl9wcm9wYWdhdGVfaXNfcHJlc3NlZF9raWxsc3dpdGNoIikmJiEhbDtmPWEuaXNTZWxlY3RlZCE9PXZvaWQgMDtoPWg9PT12b2lkIDA/YS5pc0Rpc2FibGVkOmg7az1hLnRleHQ/Xy5BRihhLnRleHQpOnZvaWQgMDt2YXIgcD0ocD1hLmFjY2Vzc2liaWxpdHlEYXRhPy5hY2Nlc3NpYmlsaXR5RGF0YT8ubGFiZWx8fAphLmFjY2Vzc2liaWxpdHk/LmxhYmVsKT9wOl8uYU4oYS50ZXh0KTtiPSRnYShhLGIsYyk7Yz1yTihhKTtjPy5sZW5ndGg/KGM9Xy5iRSh7aW5uZXJ0dWJlQ29tbWFuZDpMTShjKSxxZDohMH0pLGM9Yz8uaHJlZj9jOnZvaWQgMCk6Yz12b2lkIDA7cmV0dXJuey4uLm4sLi4ubSxpY29uUG9zaXRpb246ZSwuLi5kLGZvY3VzZWQ6ITEsdG9nZ2xlZDpsLHRvZ2dsZWFibGU6ZixkaXNhYmxlZDpoLFdhOmssYWNjZXNzaWJpbGl0eUxhYmVsOnAsb25UYXA6Yix1YzpjLC4uLnFOKGEuY29sb3JEYXRhPy5iYXNpY0NvbG9yUGFsZXR0ZURhdGEpLG9uZU9mZkN1c3RvbVRleHRXcmFwOmEub25lT2ZmQ3VzdG9tVGV4dFdyYXB9fTskZ2E9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBkPT57dmFyIGU9ck4oYSk7YihlLGQpO2lmKCFjKWZvcihsZXQgZiBvZiBlKV8uZEsoZil9fTsKck49ZnVuY3Rpb24oYSl7dmFyIGI9W107YS5jb21tYW5kJiZiLnB1c2goYS5jb21tYW5kKTthLnNlcnZpY2VFbmRwb2ludCYmYi5wdXNoKGEuc2VydmljZUVuZHBvaW50KTthLm5hdmlnYXRpb25FbmRwb2ludCYmYi5wdXNoKGEubmF2aWdhdGlvbkVuZHBvaW50KTtyZXR1cm4gYn07WmdhPWZ1bmN0aW9uKGEsYil7aWYoYilzd2l0Y2goYS5zaXplKXtjYXNlICJTSVpFX1NNQUxMIjpyZXR1cm57c2l6ZToiUyJ9O2Nhc2UgIlNJWkVfTEFSR0UiOnJldHVybntzaXplOiJMIn07Y2FzZSAiU0laRV9YTEFSR0UiOnJldHVybntzaXplOiJYTCJ9O2Nhc2UgIlNJWkVfWFNNQUxMIjpyZXR1cm57c2l6ZToiWFMifTtkZWZhdWx0OnJldHVybntzaXplOiJNIn19c3dpdGNoKGEuc3R5bGUpe2Nhc2UgIlNUWUxFX0NPTVBBQ1RfR1JBWSI6cmV0dXJue3NpemU6IlMifTtkZWZhdWx0OnJldHVybntzaXplOiJNIn19fTsKWWdhPWZ1bmN0aW9uKGEpe3N3aXRjaChhLnN0eWxlKXtjYXNlICJTVFlMRV9WSVNJQkxZX0RJU0FCTEVEIjpyZXR1cm57c3R5bGU6ImNhbGwtdG8tYWN0aW9uIix0eXBlOiJ0ZXh0IixzdGF0ZToiZGlzYWJsZWQifTtjYXNlICJTVFlMRV9QUklNQVJZIjpjYXNlICJTVFlMRV9QQVlNRU5UIjpjYXNlICJTVFlMRV9DQUxMX1RPX0FDVElPTl9GSUxMRUQiOnJldHVybntzdHlsZToiY2FsbC10by1hY3Rpb24iLHR5cGU6ImZpbGxlZCIsc3RhdGU6ImFjdGl2ZSJ9O2Nhc2UgIlNUWUxFX0NBTExfVE9fQUNUSU9OX1RPTkFMIjpyZXR1cm57c3R5bGU6ImNhbGwtdG8tYWN0aW9uIix0eXBlOiJ0b25hbCIsc3RhdGU6ImFjdGl2ZSJ9O2Nhc2UgIlNUWUxFX09VVExJTkUiOmNhc2UgIlNUWUxFX1NVR0dFU1RJVkUiOmNhc2UgIlNUWUxFX1NVR0dFU1RFRF9BQ1RJT04iOnJldHVybntzdHlsZToiY2FsbC10by1hY3Rpb24iLHR5cGU6Im91dGxpbmUiLHN0YXRlOiJhY3RpdmUifTtjYXNlICJTVFlMRV9CTFVFX1RFWFQiOmNhc2UgIlNUWUxFX0FMRVJUX0lORk8iOnJldHVybntzdHlsZToiY2FsbC10by1hY3Rpb24iLAp0eXBlOiJ0ZXh0IixzdGF0ZToiYWN0aXZlIn07Y2FzZSAiU1RZTEVfT1ZFUkxBWSI6cmV0dXJue3N0eWxlOiJvdmVybGF5Iix0eXBlOiJmaWxsZWQiLHN0YXRlOiJhY3RpdmUifTtjYXNlICJTVFlMRV9XSElURV9XSVRIX0JPUkRFUiI6cmV0dXJue3N0eWxlOiJvdmVybGF5Iix0eXBlOiJvdXRsaW5lIixzdGF0ZToiYWN0aXZlIn07Y2FzZSAiU1RZTEVfTElHSFRfVEVYVCI6cmV0dXJue3N0eWxlOiJvdmVybGF5Iix0eXBlOiJ0ZXh0IixzdGF0ZToiYWN0aXZlIn07Y2FzZSAiU1RZTEVfTU9OT19GSUxMRURfT1ZFUkxBWSI6cmV0dXJue3N0eWxlOiJvdmVybGF5Iix0eXBlOiJmaWxsZWQiLHN0YXRlOiJhY3RpdmUifTtjYXNlICJTVFlMRV9NT05PX1RPTkFMX09WRVJMQVkiOmNhc2UgIlNUWUxFX0RBUktfT05fQkxBQ0siOnJldHVybntzdHlsZToib3ZlcmxheSIsdHlwZToidG9uYWwiLHN0YXRlOiJhY3RpdmUifTtjYXNlICJTVFlMRV9PVkVSTEFZX1BST1RFQ1RFRCI6cmV0dXJue3N0eWxlOiJvdmVybGF5LWRhcmsiLAp0eXBlOiJ0b25hbCIsc3RhdGU6ImFjdGl2ZSJ9O2Nhc2UgIlNUWUxFX01PTk9fRklMTEVEIjpjYXNlICJTVFlMRV9ERVNUUlVDVElWRSI6cmV0dXJue3N0eWxlOiJtb25vIix0eXBlOiJmaWxsZWQiLHN0YXRlOiJhY3RpdmUifTtjYXNlICJTVFlMRV9ERUZBVUxUIjpjYXNlICJTVFlMRV9DT01QQUNUX0dSQVkiOmNhc2UgIlNUWUxFX01PTk9fVE9OQUwiOnJldHVybntzdHlsZToibW9ubyIsdHlwZToidG9uYWwiLHN0YXRlOiJhY3RpdmUifTtjYXNlICJTVFlMRV9JTkFDVElWRV9PVVRMSU5FIjpjYXNlICJTVFlMRV9NT05PX09VVExJTkUiOnJldHVybntzdHlsZToibW9ubyIsdHlwZToib3V0bGluZSIsc3RhdGU6ImFjdGl2ZSJ9O2Nhc2UgIlNUWUxFX0JMVUVfVEVYVF9XSVRIX0lOVkVSU0VfVEhFTUUiOnJldHVybntzdHlsZToiY2FsbC10by1hY3Rpb24taW52ZXJzZSIsdHlwZToidGV4dCIsc3RhdGU6ImFjdGl2ZSJ9O2Nhc2UgIlNUWUxFX0JSQU5EX0dSQURJRU5UIjpyZXR1cm57c3R5bGU6ImJyYW5kLWdyYWRpZW50IiwKdHlwZToiZmlsbGVkIixzdGF0ZToiYWN0aXZlIn07Y2FzZSAiU1RZTEVfR0VORVJBVElWRV9HUkFESUVOVCI6cmV0dXJue3N0eWxlOiJnZW4tYWktZ3JhZGllbnQiLHR5cGU6ImZpbGxlZCIsc3RhdGU6ImFjdGl2ZSJ9O2RlZmF1bHQ6cmV0dXJue3N0eWxlOiJtb25vIix0eXBlOiJ0ZXh0IixzdGF0ZToiYWN0aXZlIn19fTsKZGhhPWZ1bmN0aW9uKHtyZW5kZXJlcjphLGVsZW1lbnQ6Yix0b2dnbGVkOmMsSW06ZCxSdTplLFNjOmYsZHc6aCxRZjprLEJsOmwsbkw6bSxhYjpufSl7dmFyIHA9YmhhKGEsYyk7aD0hYS5kZWZhdWx0SWNvbnx8IWgmJmEuZGVmYXVsdFRleHQ/YS5kZWZhdWx0SWNvbj8ibGVhZGluZyI6dm9pZCAwOms/Imljb24tb25seSI6Imljb24tb25seS00MCI7aD09PSJpY29uLW9ubHktNDAiJiYocC50eXBlPSJ0ZXh0Iik7YTpzd2l0Y2goYS5zdHlsZT8uc3R5bGVUeXBlKXtjYXNlICJTVFlMRV9DT01QQUNUX0dSQVkiOms9e3NpemU6IlMifTticmVhayBhO2RlZmF1bHQ6az17c2l6ZToiTSJ9fWs9ey4uLmt9O3ZhciByPShyPWMmJmEudG9nZ2xlZFRleHR8fGEuZGVmYXVsdFRleHQpP18uQUYocik6dm9pZCAwO20/KG09Xy5hTihjJiZhLnRvZ2dsZWRUZXh0fHxhLmRlZmF1bHRUZXh0KSkmJm4mJiFpc05hTihOdW1iZXIobi5udW1iZXJWYWx1ZSkpPyhuLlhiPW0sYyYmKG4ubnVtYmVyVmFsdWUrPQoxKSk6bj12b2lkIDA6bj12b2lkIDA7bT0obT0oYz9hLnRvZ2dsZWRBY2Nlc3NpYmlsaXR5RGF0YXx8YS50b2dnbGVkVGV4dD8uYWNjZXNzaWJpbGl0eTphLmFjY2Vzc2liaWxpdHlEYXRhfHxhLmRlZmF1bHRUZXh0Py5hY2Nlc3NpYmlsaXR5KT8uYWNjZXNzaWJpbGl0eURhdGE/LmxhYmVsfHxhLmFjY2Vzc2liaWxpdHk/LmxhYmVsKT9tOl8uYU4oYyYmYS50b2dnbGVkVGV4dHx8YS5kZWZhdWx0VGV4dCk7bD1sPT09dm9pZCAwP2EuaXNEaXNhYmxlZDpsO2I9Y2hhKGEsYyxkLGIsZSk7ZD1zTihhLGMpO2Q/Lmxlbmd0aD8oZD1fLmJFKHtpbm5lcnR1YmVDb21tYW5kOkxNKGQpLHFkOiEwfSksZD1kPy5ocmVmP2Q6dm9pZCAwKTpkPXZvaWQgMDtyZXR1cm57Li4ucCwuLi5rLGljb25Qb3NpdGlvbjpoLC4uLmYsZm9jdXNlZDohMSx0b2dnbGVkOiEhYyx0b2dnbGVhYmxlOiEwLFdhOnIsYWI6bixhY2Nlc3NpYmlsaXR5TGFiZWw6bSxkaXNhYmxlZDpsLG9uVGFwOmIsdWM6ZCwuLi5xTihhLmNvbG9yRGF0YT8uYmFzaWNDb2xvclBhbGV0dGVEYXRhKX19OwpjaGE9ZnVuY3Rpb24oYSxiLGMsZCxlPXt9KXtyZXR1cm4gZj0+e3ZhciBoPWEubG9nZ2luZ0RpcmVjdGl2ZXM/LmNsaWVudFZlU3BlYz8udWlUeXBlP18udXgoYS5sb2dnaW5nRGlyZWN0aXZlcy5jbGllbnRWZVNwZWMudWlUeXBlKTp2b2lkIDA7ZS5jbGlja2VkVmlzdWFsRWxlbWVudHx8KGUuY2xpY2tlZFZpc3VhbEVsZW1lbnQ9aCk7aD1zTihhLGIpO2MoaCxmKTtmb3IobGV0IG4gb2YgaCl7aD1uO3ZhciBrPWQsbD1mLG09ZTttLmZvcm0/bS5mb3JtLmV2ZW50PWw6bS5mb3JtPXtlbGVtZW50OmssZXZlbnQ6bH07Xy5kSyhoLG0pfX19OwpzTj1mdW5jdGlvbihhLGIpe3ZhciBjPVtdO2I/KGEudG9nZ2xlZENvbW1hbmQmJmMucHVzaChhLnRvZ2dsZWRDb21tYW5kKSxhLnRvZ2dsZWRTZXJ2aWNlRW5kcG9pbnQmJmMucHVzaChhLnRvZ2dsZWRTZXJ2aWNlRW5kcG9pbnQpKTooYS5kZWZhdWx0Q29tbWFuZCYmYy5wdXNoKGEuZGVmYXVsdENvbW1hbmQpLGEuZGVmYXVsdFNlcnZpY2VFbmRwb2ludCYmYy5wdXNoKGEuZGVmYXVsdFNlcnZpY2VFbmRwb2ludCksYS5kZWZhdWx0TmF2aWdhdGlvbkVuZHBvaW50JiZjLnB1c2goYS5kZWZhdWx0TmF2aWdhdGlvbkVuZHBvaW50KSk7cmV0dXJuIGN9OwpiaGE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLnRvZ2dsZWRTdHlsZXx8YS5zdHlsZTtzd2l0Y2goKGI/YzphLnN0eWxlKT8uc3R5bGVUeXBlKXtjYXNlICJTVFlMRV9WSVNJQkxZX0RJU0FCTEVEIjpyZXR1cm57c3R5bGU6ImNhbGwtdG8tYWN0aW9uIix0eXBlOiJ0ZXh0IixzdGF0ZToiZGlzYWJsZWQifTtjYXNlICJTVFlMRV9QUklNQVJZIjpjYXNlICJTVFlMRV9QQVlNRU5UIjpyZXR1cm57c3R5bGU6ImNhbGwtdG8tYWN0aW9uIix0eXBlOiJmaWxsZWQiLHN0YXRlOiJhY3RpdmUifTtjYXNlICJTVFlMRV9TVUdHRVNUSVZFIjpyZXR1cm57c3R5bGU6ImNhbGwtdG8tYWN0aW9uIix0eXBlOiJvdXRsaW5lIixzdGF0ZToiYWN0aXZlIn07Y2FzZSAiU1RZTEVfQkxVRV9URVhUIjpyZXR1cm57c3R5bGU6ImNhbGwtdG8tYWN0aW9uIix0eXBlOiJ0ZXh0IixzdGF0ZToiYWN0aXZlIn07Y2FzZSAiU1RZTEVfREVTVFJVQ1RJVkUiOmNhc2UgIlNUWUxFX01PTk9fRklMTEVEIjpyZXR1cm57c3R5bGU6Im1vbm8iLAp0eXBlOiJmaWxsZWQiLHN0YXRlOiJhY3RpdmUifTtjYXNlICJTVFlMRV9PVkVSTEFZIjpyZXR1cm57c3R5bGU6Im92ZXJsYXkiLHR5cGU6ImZpbGxlZCIsc3RhdGU6ImFjdGl2ZSJ9O2Nhc2UgIlNUWUxFX0xJR0hUX1RFWFQiOnJldHVybntzdHlsZToib3ZlcmxheSIsdHlwZToidGV4dCIsc3RhdGU6ImFjdGl2ZSJ9O2Nhc2UgIlNUWUxFX01PTk9fVE9OQUxfT1ZFUkxBWSI6cmV0dXJue3N0eWxlOiJvdmVybGF5Iix0eXBlOiJ0b25hbCIsc3RhdGU6ImFjdGl2ZSJ9O2Nhc2UgIlNUWUxFX0RFRkFVTFQiOmNhc2UgIlNUWUxFX0NPTVBBQ1RfR1JBWSI6cmV0dXJue3N0eWxlOiJtb25vIix0eXBlOiJ0b25hbCIsc3RhdGU6ImFjdGl2ZSJ9O2Nhc2UgIlNUWUxFX0lOQUNUSVZFX09VVExJTkUiOnJldHVybntzdHlsZToibW9ubyIsdHlwZToib3V0bGluZSIsc3RhdGU6ImFjdGl2ZSJ9O2RlZmF1bHQ6cmV0dXJue3N0eWxlOiJtb25vIix0eXBlOiJ0ZXh0IixzdGF0ZToiYWN0aXZlIn19fTsKXy50Tj1mdW5jdGlvbihhKXtyZXR1cm4gXy5LKF8uZ0cse3BhOigpPT5bYS5jb21wb25lbnQoKV19LGI9PmI/LigpKX07ZmhhPWZ1bmN0aW9uKGEsYixjKXtpZihjPT09bnVsbHx8Yz09PXZvaWQgMClyZXR1cm4gYzt2YXIgZD1fLmdCKGEudGFnTmFtZS50b0xvd2VyQ2FzZSgpLGIsKCk9Pnt0aHJvdyBFcnJvcigibWMiKTt9KTtpZihkPT09bnVsbClyZXR1cm4gYztkPWVoYVtkXTtpZihkLmhlPy4oYykpe2lmKGQuS2QpcmV0dXJuIGQuS2QoYyk7dGhyb3cgRXJyb3IoIkRkIik7fXJldHVybiBkLnBkP2QucGQoYS50YWdOYW1lLGIsU3RyaW5nKGMpKTpjfTtfLnVOPWZ1bmN0aW9uKGEpe3JldHVybiBhLmZvcmVncm91bmRUaXRsZUNvbG9yPT09IlRIRU1FX0FUVFJJQlVURV9URVhUX0RJU0FCTEVEInx8YS5mb3JlZ3JvdW5kSWNvbkNvbG9yPT09IlRIRU1FX0FUVFJJQlVURV9JQ09OX0RJU0FCTEVEIn07dk49ZnVuY3Rpb24oYSl7aWYoYSYmXy5LTShhKSlyZXR1cm4gYX07Clg9ZnVuY3Rpb24oYSxiKXsoYj1fLmFBKGEse30sYikpfHxfLldpKEVycm9yKCJFZGAiK2EpKTtyZXR1cm4gYn07Xy53Tj1mdW5jdGlvbihhKXtyZXR1cm57dXJsRW5kcG9pbnQ6e3VybDphfSxjb21tYW5kTWV0YWRhdGE6e3dlYkNvbW1hbmRNZXRhZGF0YTp7dXJsOmF9fX19O18ueE49ZnVuY3Rpb24oKXtyZXR1cm4gXy5vTSgpLmdldFN0YXRlKCkudGk/LmpqfTtfLnlOPWZ1bmN0aW9uKGEpe18ueSgpLnJlc29sdmUoXy5jTCkud2coe1FrOmF9KX07Xy56Tj1mdW5jdGlvbigpe18ueSgpLnJlc29sdmUoXy5jTCkuSmUoKX07Xy5CTj1mdW5jdGlvbihhLGIpe3ZhciBjPWE/LnBhcmVudEVsZW1lbnQ/LmNoaWxkcmVuO2lmKGMpZm9yKGxldCBkPTA7ZDxjLmxlbmd0aDtkKyspe2xldCBlPWNbZF07Y1tkXSE9PWEmJihiP2Uuc2V0QXR0cmlidXRlKCJpbmVydCIsInRydWUiKTplLnJlbW92ZUF0dHJpYnV0ZSgiaW5lcnQiKSxBTihlLGIpKX19OwpBTj1mdW5jdGlvbihhLGIpe2I/KGEuaGFzQXR0cmlidXRlKCJhcmlhLWhpZGRlbiIpJiZhLnNldEF0dHJpYnV0ZSgiZGF0YS1vbGQtYXJpYS1oaWRkZW4iLGEuZ2V0QXR0cmlidXRlKCJhcmlhLWhpZGRlbiIpKSxhLnNldEF0dHJpYnV0ZSgiYXJpYS1oaWRkZW4iLCJ0cnVlIikpOihhLmhhc0F0dHJpYnV0ZSgiZGF0YS1vbGQtYXJpYS1oaWRkZW4iKSYmKGEuc2V0QXR0cmlidXRlKCJhcmlhLWhpZGRlbiIsYS5nZXRBdHRyaWJ1dGUoImRhdGEtb2xkLWFyaWEtaGlkZGVuIikpLGEucmVtb3ZlQXR0cmlidXRlKCJkYXRhLW9sZC1hcmlhLWhpZGRlbiIpKSxhLnJlbW92ZUF0dHJpYnV0ZSgiYXJpYS1oaWRkZW4iKSl9O0NOPWZ1bmN0aW9uKGEpe3ZhciBiPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNwbGF5ZXItY29udGFpbmVyLWlkIik7YiYmQU4oYixhKX07CmdoYT1mdW5jdGlvbigpe3ZhciBhPWRvY3VtZW50O3JldHVybihhPWEuc2Nyb2xsaW5nRWxlbWVudD9hLnNjcm9sbGluZ0VsZW1lbnQ6Xy5jcnx8YS5jb21wYXRNb2RlIT0iQ1NTMUNvbXBhdCI/YS5ib2R5fHxhLmRvY3VtZW50RWxlbWVudDphLmRvY3VtZW50RWxlbWVudCkmJnR5cGVvZiBhLnNjcm9sbFRvcD09PSJudW1iZXIiP2Euc2Nyb2xsVG9wOnR5cGVvZiB3aW5kb3cucGFnZVlPZmZzZXQ9PT0ibnVtYmVyIj93aW5kb3cucGFnZVlPZmZzZXQ6MH07Cl8uSk49ZnVuY3Rpb24oYSxiPWRvY3VtZW50LmFjdGl2ZUVsZW1lbnQsYz0hMSl7YSE9PV8uRE5bXy5ETi5sZW5ndGgtMV0mJl8uRE4ucHVzaChhKTtiIT09ZG9jdW1lbnQuYm9keT9FTi5zZXQoYSxiKTpFTi5oYXMoYSl8fEVOLnNldChhLG51bGwpO2M/Xy5PRSgoKT0+e2hoYShhLGEucXVlcnlTZWxlY3RvcigiZGlhbG9nIikpfSk6Xy5PRSgoKT0+e2E/LnF1ZXJ5U2VsZWN0b3IoImRpYWxvZyIpPy5mb2N1cygpfSk7Xy5ETi5sZW5ndGg+MXx8KEZOPWdoYSgpLF8uQk4oYSwhMCksR04mJkhOJiZjYW5jZWxBbmltYXRpb25GcmFtZShHTiksSU49cmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57Xy54TigpfHwoZG9jdW1lbnQuYm9keS5zZXRBdHRyaWJ1dGUoIm1vZGFsLW9wZW4tYm9keSIsIiIpLGRvY3VtZW50LmJvZHkuc3R5bGUudG9wPWAtJHtGTn1weGAsd2luZG93LnNjcm9sbFRvKDAsLUZOKSxJTj1udWxsKX0pKX07CmloYT1mdW5jdGlvbihhKXtyZXR1cm4gQXJyYXkuZnJvbShhLnF1ZXJ5U2VsZWN0b3JBbGwoJ2EsaW5wdXQ6bm90KFtkaXNhYmxlZF0pLHNlbGVjdDpub3QoW2Rpc2FibGVkXSksYnV0dG9uOm5vdChbZGlzYWJsZWRdKTpub3QoLm1vZGFsLWhpZGRlbi1idXR0b24pLFt0YWJpbmRleD0iMCJdJykpLmZpbHRlcihiPT57aWYoYi50ZXh0Q29udGVudClyZXR1cm4hMDtpZihiIGluc3RhbmNlb2YgSFRNTElucHV0RWxlbWVudCl7aWYoIWIubGFiZWxzKXJldHVybiExO2ZvcihsZXQgYyBvZiBiLmxhYmVscylpZihjLnRleHRDb250ZW50KXJldHVybiEwfXJldHVybiExfSl9OwpoaGE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1paGEoYSksZD1jWzBdO2lmKCFkJiZiKWIuZm9jdXMoKTtlbHNle3ZhciBlPWNbYy5sZW5ndGgtMV07aWYoZCl7ZC5mb2N1cygpO2xldCBmPWg9PntoLmtleUNvZGU9PT0yNyYmKGEucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsZiksXy5LTihhKSk7aC5rZXlDb2RlIT09MzgmJmgua2V5Q29kZSE9PTQwJiZoLmtleUNvZGUhPT05fHxqaGEoZCxlKX07YS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixmKX19fTtqaGE9ZnVuY3Rpb24oYSxiKXtpZighTE4pe0xOPSEwO3ZhciBjPU1OKCk7YS5wYXJlbnROb2RlLmluc2VydEJlZm9yZShjLGEpO2MuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXNpbiIsKCk9PntiLmZvY3VzKCl9KTtjPU1OKCk7Yi5wYXJlbnROb2RlLmluc2VydEJlZm9yZShjLGIubmV4dFNpYmxpbmcpO2MuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXNpbiIsKCk9PnthLmZvY3VzKCl9KX19OwpNTj1mdW5jdGlvbigpe3ZhciBhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKTthLmNsYXNzTmFtZT0ibW9kYWwtaGlkZGVuLWJ1dHRvbiI7YS5zZXRBdHRyaWJ1dGUoInRhYmluZGV4IiwiLTEiKTthLnNldEF0dHJpYnV0ZSgiYXJpYS1oaWRkZW4iLCJ0cnVlIik7cmV0dXJuIGF9OwpfLktOPWZ1bmN0aW9uKGEpe3ZhciBiPUVOLmdldChhKTtFTi5kZWxldGUoYSk7aWYoa2hhKXtpZihfLkJOKGEsITEpLF8uV00oKSYmZG9jdW1lbnQucXVlcnlTZWxlY3RvcigieXRtLWVuZ2FnZW1lbnQtcGFuZWwiKSYmQ04oITApLF8ueGIoXy5ETixhKSxfLkROLmxlbmd0aCE9PTApe2ImJnJlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+e18uZE4oYil9KTtyZXR1cm59fWVsc2V7Xy54YihfLkROLGEpO2lmKF8uRE4ubGVuZ3RoIT09MCl7YiYmcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57Xy5kTihiKX0pO3JldHVybn1fLkJOKGEsITEpO18uV00oKSYmZG9jdW1lbnQucXVlcnlTZWxlY3RvcigieXRtLWVuZ2FnZW1lbnQtcGFuZWwiKSYmQ04oITApfUlOJiZITiYmY2FuY2VsQW5pbWF0aW9uRnJhbWUoSU4pO0dOPXJlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+e2RvY3VtZW50LmJvZHkucmVtb3ZlQXR0cmlidXRlKCJtb2RhbC1vcGVuLWJvZHkiKTtkb2N1bWVudC5ib2R5LnN0eWxlLnRvcD0KIiI7YiYmXy5kTihiKTtfLmZyP18uT0UoKCk9Pnt3aW5kb3cuc2Nyb2xsVG8oMCxGTil9KTp3aW5kb3cuc2Nyb2xsVG8oMCxGTik7R049bnVsbH0pfTtsaGE9ZnVuY3Rpb24oYSxiLGM9Xy5OTil7aWYoYSl7dmFyIGQ9Xy55KCkucmVzb2x2ZShfLkx4KTtkP18uSngoYSx7ZGF0YTpiLG9ic2VydmVyOmQsTmI6YyxOYzpfLm5GLGViOl8ubUYsbGF5ZXI6YS5sYXllcn0pOl8uSXAobmV3IF8uWGooIldhcm5pbmc6IG1vbml0b3JWaXNpYmlsaXR5IGNhbGxlZCB3aXRoIG51bGwgb2JzZXJ2ZXIiLGEudGFnTmFtZSxiPy5sb2dnaW5nRGlyZWN0aXZlcyxiPy50cmFja2luZ1BhcmFtcykpfWVsc2UgXy5JcChuZXcgXy5YaigiV2FybmluZzogbW9uaXRvclZpc2liaWxpdHkgY2FsbGVkIHdpdGggbnVsbCBlbGVtZW50IixiPy5sb2dnaW5nRGlyZWN0aXZlcyxiPy50cmFja2luZ1BhcmFtcyxiPy5yZW5kZXJlckNvbnRleHQpKX07Cm1oYT1mdW5jdGlvbihhLGIpe2EmJl8uT0UoKCk9PntsaGEoYSxiLF8uTk4pfSl9O1FOPWZ1bmN0aW9uKGEpe3JldHVybiBhPT09IlNIT1JUU19MSUtFIiYmXy54KCJlbmFibGVfc2hvcnRzX2hlYXJ0X2ljb25faW5fc2hvcnRzX3dhdGNoX3BhZ2UiKT8ic2hvcnRzX3RodW1ic191cCI6Xy54KCJlbmFibGVfd2ViX2RlbGhpX2ljb25zIikmJmEmJk9OW2FdP09OW2FdOmEmJlBOW2FdP1BOW2FdOmF9O25oYT1mdW5jdGlvbigpe2lmKFJOKXt2YXIgYT1fLnkoKS5yZXNvbHZlKF8uSW4oU04pKTtSTj0hMTthPy52KCl9fTtvaGE9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWJbYi5sZW5ndGgtMV0hPT0iJCI7Yz1maGEoYSxiLGMpO2Q/YVtiXT1jOihkPWM9PW51bGw/bnVsbDpTdHJpbmcoYyksXy5RQShhLGIuc2xpY2UoMCwtMSksZCkpfTsKVE49ZnVuY3Rpb24oYSl7aWYoYSl7dmFyIGI9YS5jb21wb25lbnQ7YiYmKGI/LmV2ZW50cz8ucHVibGlzaCgiRElTQ09OTkVDVEVEIiksYj8uZEs/LigpKTthLkxIPy5IZj8uKCk7Zm9yKGI9MDtiPGEuY2hpbGROb2Rlcy5sZW5ndGg7YisrKVROKGEuY2hpbGROb2Rlc1tiXSl9fTtfLlVOPWZ1bmN0aW9uKCl7cmV0dXJuIF8uRkoudGhlbigoKT0+e3dpbmRvdy5sb2NhdGlvbi5oYXNoPT09IiNtZW51IiYmKF8uWU0/Xy4kTSgiIik6Xy5aTSgpKTtyZXR1cm4gXy5GSn0pfTsKcWhhPWZ1bmN0aW9uKGEpe3ZhciBiPXtzdGFjazpbXSxlcnJvcjp2b2lkIDAsaGFzRXJyb3I6ITF9O3RyeXtpZihhLmlzRGlzYWJsZWQmJmEuZGlzYWJsZWRDb21tYW5kKV8uQUooYS5kaXNhYmxlZENvbW1hbmQsYSwhMSk7ZWxzZXtWTj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibWVudSIpO1ZOfHwoVk49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksVk4uaWQ9Im1lbnUiLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoVk4pKTt3aW5kb3cubG9jYXRpb24uaGFzaCE9PSIjbWVudSImJl8uJE0oIm1lbnUiKTtWTi5jbGFzc05hbWU9YS5pc0Z1bGxXaWR0aD8ibWVudS1jb250YWluZXIgbWVudS1mdWxsLXdpZHRoIjoibWVudS1jb250YWluZXIiO2EuY2xhc3NOYW1lJiYoVk4uY2xhc3NOYW1lKz0iICIrYS5jbGFzc05hbWUpOyJzY3JvbGxUbyJpbiBWTiYmVk4uc2Nyb2xsVG8oMCwwKTt2YXIgYz1hLkZBfHxfLm1HKCk7Xy5WeihiLF8udk0oYS5vd25lciYmIWEub3duZXIuaWE/CmEub3duZXI6bnVsbCkpO18ueCgibXdlYl9jM19tZW51X3NpZ25hbHNfcmVuZGVyIik/KHBoYShhKSxXTnx8KFdOPV8ueEYoVk4sKCk9Pl8uSyhfLklCLG51bGwsXy5LKFhOLHtEaDooKT0+WU4oKX0sXy5LKF8udE4se2NvbXBvbmVudDooKT0+e3ZhciBkPVlOKCk7aWYoZClyZXR1cm4oKT0+Xy5wRyhjfHx7fSwoKT0+Xy5LKF8udE4se2NvbXBvbmVudDooKT0+ZC5jb250ZW50fSkpfX0pKSxfLksoXy5aTix7bGFiZWw6Xy4kTi5DTE9TRSxvbmNsaWNrOl8uVU59KSkse0lrOl8uWEN9KSkpOihfLmZOKFZOLG51bGwpLF8uZk4oVk4sXy5LKF8uSUIsbnVsbCxfLksoWE4se0RoOmF9LGEuY29udGVudCgpKSxfLksoXy5aTix7bGFiZWw6Xy4kTi5DTE9TRSxvbmNsaWNrOl8uVU59KSkpKTthLnJuPT09dm9pZCAwJiYoYS5ybj0hMCk7Xy5KTihWTixhLmZvY3VzT25DbG9zZSxhLnJuKX19Y2F0Y2goZCl7Yi5lcnJvcj1kLGIuaGFzRXJyb3I9ITB9ZmluYWxseXtfLld6KGIpfX07CmFPPWZ1bmN0aW9uKCl7Vk4mJndpbmRvdy5sb2NhdGlvbi5oYXNoIT09IiNtZW51IiYmKF8uS04oVk4pLF8ueCgibXdlYl9jM19tZW51X3NpZ25hbHNfcmVuZGVyIik/KFdOPy4oKSxXTj12b2lkIDApOlROKFZOKSxWTi5pc0Nvbm5lY3RlZCYmZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChWTiksVk49bnVsbCl9O3JoYT0vJi9nO3NoYT0vPC9nO3RoYT0vPi9nO3VoYT0vIi9nO3ZoYT0vJy9nO3doYT0vXHgwMC9nO3hoYT0vW1x4MDAmPD4iJ10vO18ud009Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5qPW5ldyBfLnpoKGEpfXNldChhLGIsYyl7Yz1jIT09dm9pZCAwP0RhdGUubm93KCkrYzp2b2lkIDA7dGhpcy5qLnNldChhLGIsYyl9Z2V0KGEpe3JldHVybiB0aGlzLmouZ2V0KGEpfXJlbW92ZShhKXt0aGlzLmoucmVtb3ZlKGEpfX07RWdhPWNsYXNze2NvbnN0cnVjdG9yKGEsYil7dGhpcy5qPW51bGw7dGhpcy5vPWE7dGhpcy5rZXk9Yjt0aGlzLnRleHQ9dm9pZCAwfX07Rk09W107CkhNPTA7Yk89eyIqIjp7YXN5bmM6MSxkaXI6MCxsb2FkaW5nOjIsdGFyZ2V0OjN9fTt5aGE9W3thdXRvOiEwLGx0cjohMCxydGw6ITB9LHthc3luYzohMH0se2VhZ2VyOiEwLGxhenk6ITB9LHtfc2VsZjohMCxfYmxhbms6ITB9XTtPTT1udWxsO1FNPXt9O0lnYT0iV0VCX1BBR0VfVFlQRV9BQ0NPVU5UUyBXRUJfUEFHRV9UWVBFX1dFTENPTUUgV0VCX1BBR0VfVFlQRV9BQ0NPVU5UX1NFTEVDVE9SIFdFQl9QQUdFX1RZUEVfU0lHTl9JTl9JREVOVElGSUVSX0VOVFJZIFdFQl9QQUdFX1RZUEVfU0lHTl9JTl9QQVNTV09SRF9FTlRSWSBXRUJfUEFHRV9UWVBFX1NJR05fSU5fREVWSUNFX1BST01QVF9DSEFMTEVOR0UgV0VCX1BBR0VfVFlQRV9QUkVNSVVNX0xJVEVfVVBTRUxMIFdFQl9QQUdFX1RZUEVfVU5LTk9XTiIuc3BsaXQoIiAiKTsKSmdhPXtGRXdoYXRfdG9fd2F0Y2g6ImhvbWUiLEZFaGFzaHRhZzoiaGFzaHRhZyIsRkV0cmVuZGluZzoidHJlbmRpbmciLEZFaGlzdG9yeToiaGlzdG9yeSIsU1B1bmxpbWl0ZWQ6InByZW1pdW0iLEZFbWVtYmVyc2hpcHNfYW5kX3B1cmNoYXNlczoicGFpZF9tZW1iZXJzaGlwcyIsU1ByZWRlZW1fY29kZToicmVkZWVtIixTUHZlcmlmeV9sb2NhdGlvbjoibG9jYXRlIixTUG1pbm9yX21vbWVudDoibWlub3JfbW9tZW50IixGRW1pbmlfYXBwX2NvbnRhaW5lcjoibWluaV9hcHAiLEZFbmV3c19kZXN0aW5hdGlvbjoibmV3cyIsU1BvcGVuX2luX2FwcDoib3Blbl9pbl9hcHAiLEZFZXhwbG9yZToiZXhwbG9yZSIsRkVzdWJzY3JpcHRpb25zOiJzdWJzY3JpcHRpb25zIixGRXNmdl9hdWRpb19waXZvdDoic2Z2X2F1ZGlvX3Bpdm90IixGRXBsYXlsaXN0X2FnZ3JlZ2F0aW9uOiJwbGF5bGlzdF9hZ2dyZWdhdGlvbiJ9O18uWU09ITE7emhhPXthRDoieW91dHViZV9maWxsIixSRjoieW91dHViZV9vdXRsaW5lIn07CkFoYT17akY6IkxJS0UiLEVGOiJOT1RJRklDQVRJT05fQkVMTCJ9O18uS0I9Xy5sQzt2YXIgUWdhPW5ldyBTZXQoWyJGb3IiLCJJZiIsIk1hdGNoIiwiV2F0Y2giXSksY089e1tfLlJBLmRlZmF1bHRdOigpPT5fLnpCLHN0eWxlOigpPT5fLnpCfTtmb3IobGV0IGEgaW4gY08pXy5LdS5hdHRyaWJ1dGVzW2FdPWNPW2FdKF8uS3UuYXR0cmlidXRlc1thXSk7Xy5CaGE9bmV3IF8uSSgic2lnbkluRW5kcG9pbnQiKTtfLmRPPW5ldyBfLkkoImxpa2VFbmRwb2ludCIpO3ZhciBDaGE9bmV3IF8uSSgiaG9yaXpvbnRhbFNsaWRlclZpZXdNb2RlbCIpO3ZhciBEaGE9bmV3IF8uVnMoIlZJREVPX05PVElDRVNfVklFV19NT0RFTF9UT0tFTiIpO3ZhciBFaGE9Xy5MKGE9PntmdW5jdGlvbiBiKGspe3ZhciBsPWgoKS1hLnN0ZXBTaXplKCk7ZC52YWx1ZS52YWx1ZUFzTnVtYmVyPWw7ZC52YWx1ZS5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgiaW5wdXQiKSk7ZC52YWx1ZS5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgiY2hhbmdlIikpO2suc3RvcFByb3BhZ2F0aW9uKCl9ZnVuY3Rpb24gYyhrKXt2YXIgbD1oKCkrYS5zdGVwU2l6ZSgpO2QudmFsdWUudmFsdWVBc051bWJlcj1sO2QudmFsdWUuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoImlucHV0IikpO2QudmFsdWUuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoImNoYW5nZSIpKTtrLnN0b3BQcm9wYWdhdGlvbigpfXZhciBkPV8udUUoImlucHV0IiksW2UsZl09Xy5BQygoKT0+YS52YWx1ZSgpPz8wKSxoPWU7Xy5uRSgoKT0+e3ZhciBrPWQudmFsdWU7ay52YWx1ZUFzTnVtYmVyPWgoKTt2YXIgbD1oKCksbT1hLm1pblZhbHVlKCksbj1hLlJsKCk7ay5zdHlsZS5zZXRQcm9wZXJ0eSgiLS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudCIsCmAkeyhsLW0pL24qMTAwfSVgKX0sImpUNUNDZiIpO3JldHVybiBfLksoInNsaWRlci1zaGFwZSIse2NsYXNzOl8uUCgieXRTbGlkZXJTaGFwZUhvc3QiLHt5dFNsaWRlclNoYXBlVmVydGljYWw6KCk9PmEuaXNWZXJ0aWNhbCgpfSl9LF8uSyhfLk8se0E6YS5Vaix0aGVuOigpPT5fLksoImJ1dHRvbiIse2NsYXNzOiJ5dFNsaWRlclNoYXBlSG9zdEluY3JlbWVudEJ1dHRvbiIsImFyaWEtbGFiZWwiOmEuamwsZGlzYWJsZWQ6KCk9PmgoKT09PWEubWluVmFsdWUoKSwib246Y2xpY2siOmJ9LF8uSyhfLlVDLHttb2RlbDp7Y2lyY3VsYXI6ITB9fSksXy5LKCJkaXYiLHtjbGFzczoieXRTbGlkZXJTaGFwZUhvc3RJbmNyZW1lbnRCdXR0b25JY29uV3JhcHBlciJ9LF8uSyhfLk1ELHtpY29uOiJCQVJfSE9SSVpPTlRBTCIsY2xhc3NOYW1lOiJ5dFNsaWRlclNoYXBlSG9zdEluY3JlbWVudEJ1dHRvbkljb24ifSkpKX0pLF8uSygiaW5wdXQiLHtjbGFzczooKT0+YS5pc1ZlcnRpY2FsKCk/Inl0U2xpZGVyU2hhcGVWZXJ0aWNhbFNsaWRlciI6CiJ5dFNsaWRlclNoYXBlSG9zdFNsaWRlciIsdHlwZToicmFuZ2UiLGlkOiJzbGlkZXIiLGVsOmQsbWluOmEubWluVmFsdWUsbWF4OmEubWF4VmFsdWUsImFyaWEtbGFiZWwiOmEuYXJpYUxhYmVsLCJhcmlhLXZhbHVlbWluIjphLm1pblZhbHVlLCJhcmlhLXZhbHVlbWF4IjphLm1heFZhbHVlLCJhcmlhLXZhbHVlbm93IjpoLCJhcmlhLXZhbHVldGV4dCI6KCk9PlN0cmluZyhoKCkpLHZhbHVlOmgsc3RlcDphLnN0ZXBTaXplLCJvbjppbnB1dCI6ZnVuY3Rpb24oayl7YS5SYz8uKGspO2YoTnVtYmVyKGQudmFsdWU/LnZhbHVlPz8wKSk7ay5zdG9wUHJvcGFnYXRpb24oKX0sIm9uOmNoYW5nZSI6ZnVuY3Rpb24oayl7YS5vbkNoYW5nZT8uKGspO2suc3RvcFByb3BhZ2F0aW9uKCl9fSksXy5LKF8uTyx7QTphLlVqLHRoZW46KCk9Pl8uSygiYnV0dG9uIix7Y2xhc3M6Inl0U2xpZGVyU2hhcGVIb3N0SW5jcmVtZW50QnV0dG9uIiwiYXJpYS1sYWJlbCI6YS5QbCxkaXNhYmxlZDooKT0+aCgpPT09CmEubWF4VmFsdWUoKSwib246Y2xpY2siOmN9LF8uSyhfLlVDLHttb2RlbDp7Y2lyY3VsYXI6ITB9fSksXy5LKCJkaXYiLHtjbGFzczoieXRTbGlkZXJTaGFwZUhvc3RJbmNyZW1lbnRCdXR0b25JY29uV3JhcHBlciJ9LF8uSyhfLk1ELHtpY29uOiJBREQiLGNsYXNzTmFtZToieXRTbGlkZXJTaGFwZUhvc3RJbmNyZW1lbnRCdXR0b25JY29uIn0pKSl9KSl9LCJPYSIpO3ZhciBGaGE9Xy5MKGE9Pnt2YXIgYj0oKT0+e3ZhciBjO2lmKChjPWEuZGF0YSgpKSYmYy5tYXhWYWx1ZSYmYy5taW5WYWx1ZSYmYy5zdGVwQ291bnQpe3ZhciBkPWMudmFsdWVEZW5vbWluYXRvcj8/MSxlPShjLm1heFZhbHVlLWMubWluVmFsdWUpL2Q7Yz17dmFsdWU6KGMuaW5pdGlhbFZhbHVlPz9jLm1pblZhbHVlKS9kLGFyaWFMYWJlbDpfLkIoYy5yZW5kZXJlckNvbnRleHQsXy5ZQyk/LmxhYmVsPz8iIixtaW5WYWx1ZTpjLm1pblZhbHVlL2QsbWF4VmFsdWU6Yy5tYXhWYWx1ZS9kLFJsOmUsc3RlcFNpemU6ZS9jLnN0ZXBDb3VudCxvbkNoYW5nZTppTihjLm9uU2xpZGVyVmFsdWVTZXRDb21tYW5kLGEuWXkpLFJjOmlOKGMub25TbGlkZXJUb3VjaENvbW1hbmQsYS5meiksUGw6Xy5CKGMuaW5jcmVhc2VCdXR0b24sXy5LSik/LmFjY2Vzc2liaWxpdHlUZXh0Pz8iIixqbDpfLkIoYy5kZWNyZWFzZUJ1dHRvbixfLktKKT8uYWNjZXNzaWJpbGl0eVRleHQ/PyIiLGlzVmVydGljYWw6ITEsClVqOiEhXy5CKGMuaW5jcmVhc2VCdXR0b24sXy5LSikmJiEhXy5CKGMuZGVjcmVhc2VCdXR0b24sXy5LSil9fWVsc2UgYz17fTtyZXR1cm4gY307cmV0dXJuIF8uSygiZGl2Iix7Y2xhc3M6Inl0SG9yaXpvbnRhbFNsaWRlclZpZXdNb2RlbEhvc3QifSxfLksoRWhhLHt2YWx1ZTooKT0+YigpLnZhbHVlLGFyaWFMYWJlbDooKT0+YigpLmFyaWFMYWJlbCxtaW5WYWx1ZTooKT0+YigpLm1pblZhbHVlLG1heFZhbHVlOigpPT5iKCkubWF4VmFsdWUsc3RlcFNpemU6KCk9PmIoKS5zdGVwU2l6ZSxSbDooKT0+YigpLlJsLFBsOigpPT5iKCkuUGwsamw6KCk9PmIoKS5qbCxpc1ZlcnRpY2FsOigpPT5iKCkuaXNWZXJ0aWNhbCxvbkNoYW5nZTpjPT57YigpLm9uQ2hhbmdlKGMpfSxSYzpjPT57YigpLlJjKGMpfSxVajooKT0+YigpLlVqfSkpfSwiUGEiKTt2YXIgZU89Xy5MKCh7ZGF0YTphfSk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0UGFuZWxIZWFkZXJWaWV3TW9kZWxUaXRsZVdyYXBwZXIifSxfLksoXy5PLHtBOigpPT5hKCkudGl0bGUsdGhlbjpiPT5fLksoImgyIix7Y2xhc3M6Xy5QKCJ5dFBhbmVsSGVhZGVyVmlld01vZGVsVGl0bGVIZWFkZXIiLHt5dFBhbmVsSGVhZGVyVmlld01vZGVsVGl0bGVIZWFkZXJOb25JbnRlcmFjdGl2ZTohXy54KCJ3ZWJfcGFuZWxfaGVhZGVyX3RpdGxlX25vbl9pbnRlcmFjdGl2ZV9raWxsc3dpdGNoIil9KX0sXy5LKF8uVix7dGV4dDpiLGNsYXNzTmFtZToieXRQYW5lbEhlYWRlclZpZXdNb2RlbFRpdGxlIn0pKX0pLF8uSyhfLk8se0E6KCk9PmEoKS5zdWJ0aXRsZSx0aGVuOmI9Pl8uSyhfLlYse3RleHQ6YixjbGFzc05hbWU6Inl0UGFuZWxIZWFkZXJWaWV3TW9kZWxTdWJ0aXRsZSJ9KX0pKSwiUWEiKSxmTz1fLkwoKHtkYXRhOmF9KT0+e3ZhciBiPV8uVEgoKCk9PmEoKS5yZW5kZXJlckNvbnRleHQpO3JldHVybiBfLksoInl0LXBhbmVsLWhlYWRlci12aWV3LW1vZGVsIiwKe2NsYXNzOl8uUCgieXRQYW5lbEhlYWRlclZpZXdNb2RlbEhvc3QiLHt5dFBhbmVsSGVhZGVyVmlld01vZGVsSG9zdEhpZGVEaXZpZGVyOigpPT4hIWEoKS5zaG91bGRIaWRlRGl2aWRlcix5dFBhbmVsSGVhZGVyVmlld01vZGVsSG9zdENvbXBhY3Q6KCk9PiEhYSgpLnN1YnRpdGxlfSksImFyaWEtbGFiZWwiOigpPT5iKCk/LmxhYmVsfSxfLksoXy5PLHtBOigpPT5fLnRIKGEoKS5yZW5kZXJlckNvbnRleHQpLHRoZW46KCk9Pl8uSyhfLk1KLHtjbGFzc05hbWU6Inl0UGFuZWxIZWFkZXJWaWV3TW9kZWxCdXR0b25PckFuY2hvciIsY29tbWFuZDooKT0+Xy5zSChhKCkucmVuZGVyZXJDb250ZXh0KSxadjoieXRQYW5lbEhlYWRlclZpZXdNb2RlbEJ1dHRvbk9yQW5jaG9yRm9jdXNlZCJ9LF8uSyhlTyx7ZGF0YTphfSkpLFc6KCk9Pl8uSyhlTyx7ZGF0YTphfSl9KSxfLksoImRpdiIse2NsYXNzOiJ5dFBhbmVsSGVhZGVyVmlld01vZGVsVHJhaWxpbmdCdXR0b25zIn0sXy5LKF8uVyx7ZGF0YTooKT0+CmEoKS50cmFpbGluZ0J1dHRvbnN9LHtidXR0b25WaWV3TW9kZWw6KHtkYXRhOmN9KT0+Xy5LKF8uSEQse2RhdGE6YyxjbGFzc05hbWU6Inl0UGFuZWxIZWFkZXJWaWV3TW9kZWxCdXR0b24ifSl9KSkpfSwiUmEiKTtmTy5pZG9tQ29tcGF0PSEwO3ZhciBnTz1fLkwoYT0+Xy5LKCJkaXYiLHtjbGFzczpfLlAoInl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0SG9zdCIsInl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0Q29udGFpbmVyIiwieXRTcGVjQm90dG9tU2hlZXRMYXlvdXRNb2Rlcm4iKSxzdHlsZTooKT0+YS5DYygpP2B0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHthLk9iKCl9cHgpO3RyYW5zaXRpb246IDAuMnNgOiIifSxhLmhlYWRlcj8uKCksXy5LKCJkaXYiLHtpZDphLkhpLGNsYXNzOiJ5dFNwZWNCb3R0b21TaGVldExheW91dENvbnRlbnRXcmFwcGVyIixzdHlsZTpfLklFKHsibWF4LWhlaWdodCI6KDAsXy5aSykoYS5GYyl9KSwib246c2Nyb2xsIjpsTihhLmpyKSwib246dG91Y2htb3ZlIjpsTigpfSxfLksoImRpdiIse2VsOl8uckYoYS5ucCksY2xhc3M6Inl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0Qm90dG9tU2hlZXRDb250ZW50Iiwib246Y2xpY2siOmZ1bmN0aW9uKGIpe2EucGY/LigpP2Iuc3RvcFByb3BhZ2F0aW9uKCk6YS5ZcShiKX19LAphLmJvZHk/LigpKSksYS5mb290ZXI/LigpKSwiU2EiKTtnTy5pZG9tQ29tcGF0PXtjYWxsYmFja3M6e2pyOiEwLG5wOiEwLFlxOiEwfX07dmFyIGhPPV8uTChhPT57dmFyIHtsZWFkaW5nTGFiZWw6Yix0cmFpbGluZ0xhYmVsOmMsUmU6ZCxwcmltYXJ5QnV0dG9uOmUsSXc6ZixzZWNvbmRhcnlCdXR0b246aCxLdzprLE9wOmwsQ3c6bX09Xy5EQyhhLHtsZWFkaW5nTGFiZWw6dm9pZCAwLHRyYWlsaW5nTGFiZWw6dm9pZCAwLFJlOnZvaWQgMH0pLG49KCk9PmIoKXx8YygpfHxmKCl8fGsoKTtyZXR1cm4gXy5LKF8uTyx7QTptLHRoZW46KCk9Pl8uSyhfLklCLG51bGwsbD8uKCkpLFc6KCk9Pl8uSyhfLk8se0E6bix0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dFNwZWNCb3R0b21TaGVldExheW91dEZvb3RlcldyYXBwZXIifSxfLksoXy5PLHtBOigpPT5iKCl8fGMoKSx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOl8uUCgieXRTcGVjQm90dG9tU2hlZXRMYXlvdXRGb290ZXJMYWJlbFdyYXBwZXIiLHt5dFNwZWNCb3R0b21TaGVldExheW91dEZvb3RlckxhYmVsV3JhcHBlcldpdGhvdXRCdXR0b25zOigpPT4hZigpfSl9LF8uSyhfLk8sCntBOmIsdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRTcGVjQm90dG9tU2hlZXRMYXlvdXRMZWFkaW5nTGFiZWwifSxiKX0pLF8uSyhfLk8se0E6Yyx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dFNwZWNCb3R0b21TaGVldExheW91dFRyYWlsaW5nTGFiZWwifSxjKX0pKX0pLF8uSyhfLk8se0E6KCk9PmYoKXx8aygpLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJ5dFNwZWNCb3R0b21TaGVldExheW91dEZvb3RlckJ1dHRvbldyYXBwZXIiLHt5dFNwZWNCb3R0b21TaGVldExheW91dEZvb3RlckJ1dHRvbldyYXBwZXJMYW5kc2NhcGVCdXR0b25XcmFwcGVyOl8uQmNhfSl9LF8uSyhfLk8se0E6KCk9PmsoKSYmZCgpIT09MCx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOl8uUCgieXRTcGVjQm90dG9tU2hlZXRMYXlvdXRTZWNvbmRhcnlCdXR0b24iLHt5dFNwZWNCb3R0b21TaGVldExheW91dFNlY29uZGFyeUJ1dHRvblRyYWlsaW5nUGFpcjooKT0+ZCgpPT09MSYmaygpLAp5dFNwZWNCb3R0b21TaGVldExheW91dFNlY29uZGFyeUJ1dHRvblNwbGl0UGFpcjooKT0+ZCgpPT09MiYmaygpLHl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0U2Vjb25kYXJ5QnV0dG9uUHJpbWFyeVNwbGl0UGFpcjooKT0+ZCgpPT09MyYmZigpfSl9LGg/LigpKX0pLF8uSyhfLk8se0E6Zix0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOl8uUCgieXRTcGVjQm90dG9tU2hlZXRMYXlvdXRQcmltYXJ5QnV0dG9uIiwoKT0+VWdhKGQoKSkpfSxlPy4oKSl9KSl9KSl9KX0pfSwiVGEiKTtoTy5pZG9tQ29tcGF0PXtjYWxsYmFja3M6e3ByaW1hcnlCdXR0b246ITAsc2Vjb25kYXJ5QnV0dG9uOiEwLE9wOiEwfX07dmFyIGlPPV8uTChhPT57dmFyIHt0aXRsZTpiLHN1YnRpdGxlOmMsZ3E6ZCxEdzplLHhvOmYseHc6aCx3czprLHZzOmwsdXM6bSxRcTpuLE93OnAsaXNEcmFnZ2luZzpyfT1fLkRDKGEse3RpdGxlOnZvaWQgMCxzdWJ0aXRsZTp2b2lkIDB9KTtyZXR1cm4gXy5LKCJkaXYiLHtjbGFzczpfLlAoInl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0SGVhZGVyV3JhcHBlciIse3l0U3BlY0JvdHRvbVNoZWV0TGF5b3V0SGVhZGVyV3JhcHBlcklzRHJhZ2dpbmc6cn0pLGlkOnAsIm9uOnRvdWNoc3RhcnQiOmxOKGspLCJvbjp0b3VjaG1vdmUiOmxOKGwpLCJvbjp0b3VjaGVuZCI6bE4obSksIm9uOm1vdXNlZG93biI6bE4obil9LF8uSygiZGl2Iix7Y2xhc3M6Inl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0RHJhZ0xpbmUifSksXy5LKF8uTyx7QTplLHRoZW46KCk9Pl8uSyhfLklCLG51bGwsZD8uKCkpLFc6KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Xy5QKHt5dFNwZWNCb3R0b21TaGVldExheW91dEhlYWRlcjohMCwKeXRTcGVjQm90dG9tU2hlZXRMYXlvdXRIZWFkZXJXaXRoVGl0bGU6Yn0pfSxfLksoImRpdiIse2NsYXNzOiJ5dFNwZWNCb3R0b21TaGVldExheW91dFRpdGxlV3JhcHBlciJ9LF8uSyhfLk8se0E6Yix0aGVuOigpPT5fLksoXy5JQixudWxsLF8uSygiaDIiLHtjbGFzczoieXRTcGVjQm90dG9tU2hlZXRMYXlvdXRUaXRsZSJ9LGIpLF8uSyhfLk8se0E6Yyx0aGVuOigpPT5fLksoImgzIix7Y2xhc3M6Inl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0U3VidGl0bGUifSxjKX0pKX0pKSxfLksoXy5PLHtBOigpPT5iKCkmJmgoKSx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dFNwZWNCb3R0b21TaGVldExheW91dEFjdGlvbkhlYWRlciJ9LGY/LigpKX0pKX0pKX0sIlVhIik7aU8uaWRvbUNvbXBhdD17Y2FsbGJhY2tzOnt3czohMCx2czohMCx1czohMCxRcTohMCx4bzohMCxncTohMCxpc0RyYWdnaW5nOiEwfX07dmFyIGpPPV8uTChhPT57ZnVuY3Rpb24gYihhYSl7aWYoIVkmJnR5cGVvZiBNdXRhdGlvbk9ic2VydmVyIT09InVuZGVmaW5lZCIpe3ZhciBPYT17Y2hpbGRMaXN0OiEwfTsiTXV0YXRpb25PYnNlcnZlciJpbiB3aW5kb3cmJihZPW5ldyBNdXRhdGlvbk9ic2VydmVyKGMuYmluZCh2b2lkIDAsYWEpKSxZLm9ic2VydmUoYWEsT2EpKX19ZnVuY3Rpb24gYyhhYSl7dHlwZW9mIFkhPT0idW5kZWZpbmVkIiYmKHBhWyJjb250ZW50LXdyYXBwZXIiXT09PXZvaWQgMCYmKHBhWyJjb250ZW50LXdyYXBwZXIiXT1hYS5jaGlsZHJlblswXS5jbGllbnRIZWlnaHQpLEcocGFbImNvbnRlbnQtd3JhcHBlciJdKSwhKEMoKT5SKCkpJiZDKCk+MCYmTShDKCkpKX1mdW5jdGlvbiBkKCl7RSh3aW5kb3cuaW5uZXJIZWlnaHQpOyEoQygpPlIoKSkmJkMoKT4wJiZNKEMoKSk7b2EuUGNbMF0oKSYmQygpPlIoKT9VKCkuZGlzcGF0Y2goIlNuYXAgVG8gRnVsbCBTY3JlZW4iLHttYXhIZWlnaHQ6UygpfSk6VSgpLmRpc3BhdGNoKCJTbmFwIFRvIE5ldXRyYWwgUG9zaXRpb24iLAp7bWF4SGVpZ2h0OlIoKX0pfWZ1bmN0aW9uIGUoYWEpe2RvY3VtZW50LmJvZHkuc3R5bGUub3ZlcnNjcm9sbEJlaGF2aW9yPSJub25lIjthYS5wcmV2ZW50RGVmYXVsdCgpO1UoKS5kaXNwYXRjaCgiRHJhZyBTdGFydCIse2NsaWVudFk6YWEudG91Y2hlc1swXS5jbGllbnRZfSl9ZnVuY3Rpb24gZihhYSl7YWEucHJldmVudERlZmF1bHQoKTtVKCkuZGlzcGF0Y2goIkRyYWcgTW92ZSIse2NsaWVudFk6YWEudG91Y2hlc1swXS5jbGllbnRZLG1wOkMoKT5SKCksVHA6UygpLHFwOlIoKSxocTpwYSxIaToiY29udGVudC13cmFwcGVyIixoZWFkZXI6bk4oYSksZm9vdGVyOm5OKGEpLGZxOnBhWyJib3R0b20tc2hlZXQtaGVhZGVyIl0sTnA6cGFbImJvdHRvbS1zaGVldC1mb290ZXIiXX0pfWZ1bmN0aW9uIGgoYWEpe2FhLmJ1dHRvbj09PTAmJihhYS5wcmV2ZW50RGVmYXVsdCgpLHRhKCEwKSxVKCkuZGlzcGF0Y2goIkRyYWcgU3RhcnQiLHtjbGllbnRZOmFhLmNsaWVudFl9KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vtb3ZlIiwKVCksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNldXAiLGspKX1mdW5jdGlvbiBrKCl7dGEoITEpO3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLFQpO3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZXVwIixrKTttKCl9ZnVuY3Rpb24gbCgpe2RvY3VtZW50LmJvZHkuc3R5bGUub3ZlcnNjcm9sbEJlaGF2aW9yPSIiO20oKX1mdW5jdGlvbiBtKCl7b2EuUGNbMF0oKT9vYS5PYlswXSgpPj02MD9VKCkuZGlzcGF0Y2goIlNuYXAgVG8gTmV1dHJhbCBQb3NpdGlvbiIse21heEhlaWdodDpSKCl9KTpVKCkuZGlzcGF0Y2goIlNuYXAgVG8gRnVsbCBTY3JlZW4iLHttYXhIZWlnaHQ6UygpfSk6b2EuT2JbMF0oKT49NjA/bigpOm9hLk9iWzBdKCk8PS02MCYmQygpPlIoKT9VKCkuZGlzcGF0Y2goIlNuYXAgVG8gRnVsbCBTY3JlZW4iLHttYXhIZWlnaHQ6UygpfSk6VSgpLmRpc3BhdGNoKCJTbmFwIFRvIE5ldXRyYWwgUG9zaXRpb24iLHttYXhIZWlnaHQ6UigpfSl9CmZ1bmN0aW9uIG4oKXtVKCkuZGlzcGF0Y2goIkNsb3NlIFNoZWV0Iix7Y2xpZW50SGVpZ2h0OnooKSxtYXhIZWlnaHQ6MH0pO3NldFRpbWVvdXQoKCk9PnttTigpfSwyNTApfXZhciBwPV8udUUoImRpdiIpLHI9Xy51RSgiZGl2IiksW3Qsdl09Xy5KKHdpbmRvdy5pbm5lckhlaWdodCx2b2lkIDAsIkNtT3NVIiksej10LEU9dixbQSxGXT1fLkooMCx2b2lkIDAsInAwRmxoYiIpLEM9QSxHPUYsW0QsSF09Xy5BQygoKT0+e3ZhciBhYT1uTihhKTtyZXR1cm4uNip6KCktak4oYWEpLWtOKGFhKX0pLFI9RCxNPUgsUz0oKT0+e3ZhciBhYT1uTihhKSxPYT16KCksSmI9cGFbImJvdHRvbS1zaGVldC1oZWFkZXIiXSx6YT1wYVsiYm90dG9tLXNoZWV0LWZvb3RlciJdO3JldHVybiBPYS0oYWEuamgmJkpiIT09dm9pZCAwP0piOmpOKGFhKSktKGFhLmhoJiZ6YSE9PXZvaWQgMD96YTprTihhYSkpLTI0LTI0fSxZPW51bGwscGE9e30sb2E9e1ZlOl8uSigwLHZvaWQgMCwic3hkRVNkIiksT2I6Xy5KKDAsCnZvaWQgMCwiR1p6cWViIiksQ2M6Xy5KKCExLHZvaWQgMCwidkpCdXBjIiksUGM6Xy5KKCExLHZvaWQgMCwiWHlSRHAiKSxGYzpfLkFDKFIpfSxVPSgoKT0+e3ZhciBhYT1udWxsO3JldHVybigpPT57aWYoIWFhKXtsZXQgT2E9e1ZlOm9hLlZlWzBdKCksT2I6b2EuT2JbMF0oKSxDYzpvYS5DY1swXSgpLFBjOm9hLlBjWzBdKCksRmM6b2EuRmNbMF0oKX07YWE9VGdhKE9hKX1yZXR1cm4gYWF9fSkoKTtfLlVKKCgpPT57d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsZCk7VSgpLnN1YnNjcmliZShhYT0+e29hLlZlWzFdKGFhLlZlKTtvYS5PYlsxXShhYS5PYik7b2EuQ2NbMV0oYWEuQ2MpO29hLlBjWzFdKGFhLlBjKTtvYS5GY1sxXShhYS5GYyl9KTtyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9PntwLnZhbHVlJiYocGFbImJvdHRvbS1zaGVldC1oZWFkZXIiXT1wLnZhbHVlLmNsaWVudEhlaWdodCk7ci52YWx1ZSYmKHBhWyJib3R0b20tc2hlZXQtZm9vdGVyIl09ci52YWx1ZS5jbGllbnRIZWlnaHQpfSl9KTsKXy5ZdSgoKT0+e3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJyZXNpemUiLGQpO3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLFQpO3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZXVwIixrKTtZJiYoWS5kaXNjb25uZWN0KCksWT1udWxsKX0pO3ZhciBbaGEsbWFdPV8uSighMSx2b2lkIDAsIktzaVRZZSIpLHRhPW1hLFQ9YWE9PntVKCkuZGlzcGF0Y2goIkRyYWcgTW92ZSIse2NsaWVudFk6YWEuY2xpZW50WSxtcDpDKCk+UigpLFRwOlMoKSxxcDpSKCksaHE6cGEsSGk6ImNvbnRlbnQtd3JhcHBlciIsaGVhZGVyOm5OKGEpLGZvb3RlcjpuTihhKSxmcTpwYVsiYm90dG9tLXNoZWV0LWhlYWRlciJdLE5wOnBhWyJib3R0b20tc2hlZXQtZm9vdGVyIl19KX0sYmE9Xy5QKHsiYm90dG9tLXNoZWV0LWNvbnRlbnQtd2l0aG91dC1pY29uIjooKT0+IWEuSGE/LigpfSk7cmV0dXJuIF8uSygiYm90dG9tLXNoZWV0LWxheW91dCIsbnVsbCxfLksoZ08se0hpOiJjb250ZW50LXdyYXBwZXIiLApDYzooKT0+b2EuQ2NbMF0oKSxPYjooKT0+b2EuT2JbMF0oKSxGYzooKT0+b2EuRmNbMF0oKSxIYTphLkhhLHBmOmEucGYsanI6KCk9Pnt2YXIgYWE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJvdHRvbS1zaGVldC1oZWFkZXIiKSxPYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29udGVudC13cmFwcGVyIik7aWYoYWEmJk9hKXt2YXIgSmI9e3l0U3BlY0JvdHRvbVNoZWV0TGF5b3V0SGVhZGVyV3JhcHBlcjohMCx5dFNwZWNCb3R0b21TaGVldExheW91dEhlYWRlcldyYXBwZXJCb3R0b21Cb3JkZXI6ITB9O2FhLmNsYXNzTmFtZT1PYS5zY3JvbGxUb3A+MT9fLmFMKEpiKToieXRTcGVjQm90dG9tU2hlZXRMYXlvdXRIZWFkZXJXcmFwcGVyIn19LFlxOm1OLG5wOmFhPT57YihhYSk7cmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpPT57YyhhYSl9KX0saGVhZGVyOigpPT5fLksoImRpdiIse2VsOnB9LF8uSyhpTyx7aXNEcmFnZ2luZzpoYSx3czplLHZzOmYsdXM6bCxRcTpoLHRpdGxlOmEuaGVhZGVyVGl0bGUsCnN1YnRpdGxlOmEuaGVhZGVyU3VidGl0bGUsT3c6ImJvdHRvbS1zaGVldC1oZWFkZXIiLGdxOmEuVWUsRHc6YS5qaCx4bzphLldmLHh3OmEuaWh9KSksZm9vdGVyOigpPT5fLksoImRpdiIse2VsOnJ9LF8uSyhoTyx7UmU6YS5SZSxsZWFkaW5nTGFiZWw6YS5NZix0cmFpbGluZ0xhYmVsOmEuUGYscHJpbWFyeUJ1dHRvbjphLk5mLEl3OmEuVWYsc2Vjb25kYXJ5QnV0dG9uOmEuT2YsS3c6YS5WZixPcDphLlNlLEN3OmEuaGh9KSksYm9keTooKT0+Xy5LKF8uTyx7QTphLlhpLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6YmF9LGEuR2I/LigpKX0pfSkpfSwiVmEiKTtqTy5pZG9tQ29tcGF0PXtjYWxsYmFja3M6e1dmOiEwLFVlOiEwLEdiOiEwLFNlOiEwLE5mOiEwLE9mOiEwfX07Xy5MKGE9Pnt2YXIgYj1fLnkoKS5yZXNvbHZlKF8uY0wpO3JldHVybiBfLksoInl0LWNvbnRleHR1YWwtc2hlZXQtbGF5b3V0Iix7Y2xhc3M6Xy5QKCJ5dENvbnRleHR1YWxTaGVldExheW91dEhvc3QiLHt5dENvbnRleHR1YWxTaGVldExheW91dEFkZFBhZGRpbmc6YS5ydSx5dENvbnRleHR1YWxTaGVldExheW91dEhvc3RPbGRNaW5XaWR0aDooKT0+ISFhLmhhc0hlYWRlcj8uKCl8fCEhYS5Cdz8uKCl8fF8ueCgiZW5hYmxlX2NvbnRleHR1YWxfc2hlZXRfb2xkX21pbl93aWR0aF9raWxsc3dpdGNoIil9KSxlbDpfLnJGKF8uZEwpLCJvbjpjbGljayI6KCk9PnthPy52Sz8uKCl8fGIuSmUoKX19LF8uSyhfLk8se0E6KCk9PiEhYS5oZWFkZXIsdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRDb250ZXh0dWFsU2hlZXRMYXlvdXRIZWFkZXJDb250YWluZXIifSxhLmhlYWRlcigpKX0pLF8uSyhfLk8se0E6KCk9PiEhYS5jb250ZW50LHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0Q29udGV4dHVhbFNoZWV0TGF5b3V0Q29udGVudENvbnRhaW5lciJ9LAphLmNvbnRlbnQoKSl9KSxfLksoXy5PLHtBOigpPT4hIWEuZm9vdGVyLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0Q29udGV4dHVhbFNoZWV0TGF5b3V0Rm9vdGVyQ29udGFpbmVyIn0sYS5mb290ZXIoKSl9KSl9LCJXYSIpLmlkb21Db21wYXQ9e2NhbGxiYWNrczp7aGVhZGVyOiEwLGNvbnRlbnQ6ITAsZm9vdGVyOiEwLGhhc0hlYWRlcjohMCxnSjohMCxCdzohMCxydTohMH19O3ZhciBHaGE9Xy5MKCh7ZGF0YTphLGNsYXNzTmFtZTpiLG9uQ2xpY2s6Y30pPT5fLksoInl0dy12YXJpYWJsZS1zcGVlZC1jb250cm9sbGVyLXNwZWVkLWJ1dHRvbi12aWV3LW1vZGVsIix7Y2xhc3M6Xy5QKCJ5dHdWYXJpYWJsZVNwZWVkQ29udHJvbGxlclNwZWVkQnV0dG9uVmlld01vZGVsSG9zdCIsYil9LF8uSyhfLlcse2RhdGE6KCk9PmEoKS5wbGF5YmFja1NwZWVkQnV0dG9ufSx7YnV0dG9uVmlld01vZGVsOih7ZGF0YTpkfSk9Pl8uSyhfLkhELHtkYXRhOmQsb25DbGljazpjfSl9KSxfLksoXy5WLHtjbGFzc05hbWU6Inl0d1ZhcmlhYmxlU3BlZWRDb250cm9sbGVyU3BlZWRCdXR0b25WaWV3TW9kZWxTcGVlZExhYmVsIix0ZXh0OigpPT5hKCkuYnV0dG9uTGFiZWx9KSksIlhhIik7dmFyIG9OOwpfLmtPPV8uTCgoe2RhdGE6YSxwejpiPVZnYSxvejpjPVdnYSxxejpkPVhnYX0pPT57dmFyIFtlLGZdPV8uSigxMDAsdm9pZCAwLCJkME5LeWIiKSxbaCxrXT1fLkooITEsdm9pZCAwLCJYWHZna2IiKSxsPW09PntmKG0udGFyZ2V0LnZhbHVlQXNOdW1iZXIpO2I/LihtKX07Xy5uRSgoKT0+e2lmKGEoKS5zbGlkZXIpe3ZhciBtPV8uQihhKCkuc2xpZGVyLENoYSk7bSYmKG0uaW5pdGlhbFZhbHVlJiZtLnZhbHVlRGVub21pbmF0b3I/ZihtLmluaXRpYWxWYWx1ZS9tLnZhbHVlRGVub21pbmF0b3IpOmYoMCkpfX0sIlJ2SERyZiIpO3JldHVybiBfLksoInZhcmlhYmxlLXNwZWVkLWNvbnRyb2xsZXItdmlldy1tb2RlbCIse2NsYXNzOiJ5dHdWYXJpYWJsZVNwZWVkQ29udHJvbGxlclZpZXdNb2RlbEhvc3QifSxfLksoImRpdiIse2NsYXNzOiJ5dHdWYXJpYWJsZVNwZWVkQ29udHJvbGxlclZpZXdNb2RlbFNwZWVkSW5kaWNhdG9yQ29udGFpbmVyIn0sXy5LKF8uTyx7QTooKT0+ZSgpPjIsdGhlbjooKT0+Cl8uSygiZGl2Iix7Y2xhc3M6Inl0d1ZhcmlhYmxlU3BlZWRDb250cm9sbGVyVmlld01vZGVsUHJlbWl1bUJhZGdlIn0sXy5LKF8uVyx7ZGF0YTooKT0+YSgpLmJhZGdlfSx7YmFkZ2VWaWV3TW9kZWw6KHtkYXRhOm19KT0+Xy5LKF8uRUQse2RhdGE6bX0pfSkpfSksXy5LKCJkaXYiLHtjbGFzczoieXR3VmFyaWFibGVTcGVlZENvbnRyb2xsZXJWaWV3TW9kZWxQbGF5YmFja1NwZWVkRGlzcGxheSIsImFyaWEtbGl2ZSI6InBvbGl0ZSIsImFyaWEtYXRvbWljIjoidHJ1ZSIsImFyaWEtYnVzeSI6aH0sKCk9Pl8uYUEoIlBMQVlCQUNLX1NQRUVEX1giLHtzcGVlZF9yYXRlX3BsYWNlaG9sZGVyOmAke2UoKS50b0ZpeGVkKDIpfWB9KSkpLF8uSygiZGl2Iix7Y2xhc3M6Inl0d1ZhcmlhYmxlU3BlZWRDb250cm9sbGVyVmlld01vZGVsU2xpZGVyQ29udGFpbmVyIiwib246Zm9jdXNpbiI6ZnVuY3Rpb24obSl7bS50YXJnZXQudGFnTmFtZT09PSJJTlBVVCImJmsoITApfSwib246Zm9jdXNvdXQiOmZ1bmN0aW9uKG0pe20udGFyZ2V0LnRhZ05hbWU9PT0KIklOUFVUIiYmayghMSl9fSxfLksoXy5XLHtkYXRhOigpPT5hKCkuc2xpZGVyfSx7aG9yaXpvbnRhbFNsaWRlclZpZXdNb2RlbDooe2RhdGE6bX0pPT5fLksoRmhhLHtkYXRhOigpPT4oey4uLm0oKSxpbml0aWFsVmFsdWU6ZSgpKjEwMH0pLGZ6OmwsWXk6Y30pfSkpLF8uSygiZGl2Iix7Y2xhc3M6Inl0d1ZhcmlhYmxlU3BlZWRDb250cm9sbGVyVmlld01vZGVsQnV0dG9uQ29udGFpbmVyIn0sXy5LKF8uVyx7ZGF0YTooKT0+YSgpLnBsYXliYWNrU3BlZWRCdXR0b25zfSx7dmFyaWFibGVTcGVlZENvbnRyb2xsZXJTcGVlZEJ1dHRvblZpZXdNb2RlbDooe2RhdGE6bX0pPT5fLksoR2hhLHtkYXRhOm0sY2xhc3NOYW1lOiJ5dHdWYXJpYWJsZVNwZWVkQ29udHJvbGxlclZpZXdNb2RlbFBsYXliYWNrU3BlZWRCdXR0b24iLG9uQ2xpY2s6KCk9Pnt2YXIgbj1tKCk/LnBsYXliYWNrU3BlZWRCdXR0b25DZW50aVZhbHVlO24mJihmKG4vMTAwKSxkPy4obi8xMDApKX19KX0pKSl9LCJaYSIpO3ZhciBIaGE9bmV3IF8uVnMoIkNPTlRFTlRfRkVFREJBQ0tfVklFV19NT0RFTF9UT0tFTiIpO3ZhciBsTz1fLkwoKHtkYXRhOmF9KT0+e3ZhciBiPV8ueSgpLnJlc29sdmUoXy5VRCksYz1fLnBIKHtOYjooZixoKT0+e18ueCgic2hlZXRfZm9jdXNfZmlyc3Rfa2lsbHN3aXRjaCIpfHwhZnx8Xy56SChhPy4oKT8ucmVuZGVyZXJDb250ZXh0KXx8TU0oaCl9LGViOntWYjohMSxzdGF0ZToidmlzaWJsZSJ9fSksZD1fLnkoKS5yZXNvbHZlKF8uSW4oSGhhKSksZT1fLnkoKS5yZXNvbHZlKF8uSW4oRGhhKSk7cmV0dXJuIF8uSygieXQtc2hlZXQtdmlldy1tb2RlbCIseyJvbjptb3VzZWRvd24iOmZ1bmN0aW9uKGYpe18ueCgic2hlZXRfZm9jdXNfZmlyc3Rfa2lsbHN3aXRjaCIpJiZmLmN1cnJlbnRUYXJnZXQhPT1mLnRhcmdldCYmZi5wcmV2ZW50RGVmYXVsdCgpfSwib246Zm9jdXMiOmZ1bmN0aW9uKGYpe18ueCgic2hlZXRfZm9jdXNfZmlyc3Rfa2lsbHN3aXRjaCIpJiZNTShmLmN1cnJlbnRUYXJnZXQpfSwib246bW91c2VsZWF2ZSI6ZnVuY3Rpb24oKXt2YXIgZj1fLnpIKGE/LigpPy5yZW5kZXJlckNvbnRleHQpOwpmJiZiLnJlc29sdmVDb21tYW5kKGYpfSxjbGFzczpfLlAoInl0U2hlZXRWaWV3TW9kZWxIb3N0Iix7eXRTaGVldFZpZXdNb2RlbENvbnRleHR1YWw6ITEseXRTaGVldFZpZXdNb2RlbERpc2FibGVCYWNrZHJvcEZpbHRlcjohMX0pLGVsOl8uckYoYyksdGFiaW5kZXg6LTF9LF8uSyhfLk8se0E6YSx0aGVuOmY9Pl8uSyhqTyx7VWU6KCk9Pl8uSyhfLlcse2RhdGE6KCk9PmYoKS5oZWFkZXJ9LHtwYW5lbEhlYWRlclZpZXdNb2RlbDpmT30pLGpoOiEwLGloOiExLEdiOigpPT5fLksoXy5XLHtkYXRhOigpPT5mKCkuY29udGVudH0se2NoZWNrYm94R3JvdXBWaWV3TW9kZWw6KHtkYXRhOmh9KT0+Xy5LKF8udEQse2RhdGE6aCxXYjohMX0pLHJhZGlvQnV0dG9uR3JvdXBWaWV3TW9kZWw6KHtkYXRhOmh9KT0+Xy5LKF8uRUwse2RhdGE6aCxXYjohMX0pLGxpc3RWaWV3TW9kZWw6KHtkYXRhOmh9KT0+Xy5LKF8uQkQse2RhdGE6aCxCYzohMH0pLHZhcmlhYmxlU3BlZWRDb250cm9sbGVyVmlld01vZGVsOl8ua08sCmxpbmVhckxheW91dFZpZXdNb2RlbDpfLkdMLHVwc2VsbFZpZXdNb2RlbDpfLmhMLG1pbmlBcHBTY29yZUNoYWxsZW5nZVZpZXdNb2RlbDpfLmpMLC4uLihlJiZ7dmlkZW9Ob3RpY2VzVmlld01vZGVsOmV9KSwuLi4oZCYme2NvbnRlbnRGZWVkYmFja1ZpZXdNb2RlbDooe2RhdGE6aH0pPT5fLksoZCx7ZGF0YTpoLGNsYXNzTmFtZToieXRTaGVldFZpZXdNb2RlbFBhZGRlZENvbnRlbnQifSl9KX0pLFhpOiEwLFNlOigpPT5fLksoXy5XLHtkYXRhOigpPT5mKCkuZm9vdGVyfSx7cGFuZWxGb290ZXJWaWV3TW9kZWw6Xy5zRH0pLGhoOiEwLFVmOiExLFZmOiExLEhhOiEwfSl9KSl9LCIkYSIpO2xPLmlkb21Db21wYXQ9ITA7Xy5tTz1uZXcgXy5WcygiSUNPTl9TRVRfVE9LRU4iKTtfLm5PPW5ldyBfLlZzKCJJQ09OX1VSTF9QUk9WSURFUl9UT0tFTiIpO18ub089bmV3IF8uVnMoIklDT05fTUFQX0ZOX1RPS0VOIik7dmFyIFNOPWNsYXNze2NvbnN0cnVjdG9yKGEsYil7dGhpcy5qPWE7dGhpcy5vPWJ9digpe3ZhciBhPShfLngoImVuYWJsZV93ZWJfZGVsaGlfaWNvbnMiKT9JaGE6SmhhKT8/dGhpcy5vO2lmKGE/Lmxlbmd0aCl7bGV0IGI9W107YT0obmV3IFNldChhKSkudmFsdWVzKCk7Zm9yKGxldCBjIG9mIGEpZm9yKGxldCBkIG9mIE9iamVjdC52YWx1ZXMoemhhKSliLnB1c2goe2ljb25OYW1lOmMsaWNvblN0eWxlOmR9KTt0aGlzLmoueWEoYil9ZWxzZSBQcm9taXNlLnJlc29sdmUoKX19O1NOW18uTG5dPVtfLlhMLF8uSW4obmV3IF8uVnMoIlBSRUZFVENIX0lDT05TX1RPS0VOIikpXTt2YXIgS2hhPS9eKD8hamF2YXNjcmlwdDopKD86W2EtejAtOSsuLV0rOnxbXiY6XC8/I10qKD86W1wvPyNdfCQpKS9pLGVoYT17WzFdOntwZDpudWxsLGhlOm51bGwsS2Q6bnVsbH0sWzJdOntwZDpmdW5jdGlvbihhLGIsYyl7YT1jO3hoYS50ZXN0KGEpJiYoYS5pbmRleE9mKCImIikhPS0xJiYoYT1hLnJlcGxhY2UocmhhLCImYW1wOyIpKSxhLmluZGV4T2YoIjwiKSE9LTEmJihhPWEucmVwbGFjZShzaGEsIiZsdDsiKSksYS5pbmRleE9mKCI+IikhPS0xJiYoYT1hLnJlcGxhY2UodGhhLCImZ3Q7IikpLGEuaW5kZXhPZignIicpIT0tMSYmKGE9YS5yZXBsYWNlKHVoYSwiJnF1b3Q7IikpLGEuaW5kZXhPZigiJyIpIT0tMSYmKGE9YS5yZXBsYWNlKHZoYSwiJiMzOTsiKSksYS5pbmRleE9mKCJceDAwIikhPS0xJiYoYT1hLnJlcGxhY2Uod2hhLCImIzA7IikpKTtyZXR1cm4gYX0saGUoYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBfLmZifSxLZDphPT5fLnlBKGEpfSxbM106e3BkOmZ1bmN0aW9uKGEsCmIsYyl7cmV0dXJuIEtoYS50ZXN0KGMpP2M6Xy5GcS50b1N0cmluZygpfSxoZShhKXtyZXR1cm4gXy5YYShhKX0sS2Q6YT0+Xy5ZYShhKX0sWzRdOntwZDpmdW5jdGlvbigpe3JldHVybiBfLkZxLnRvU3RyaW5nKCl9LGhlKGEpe3JldHVybiBhIGluc3RhbmNlb2YgXy5TYX0sS2Q6YT0+Xy5VYShhKS50b1N0cmluZygpfSxbNV06e3BkOmZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gY30saGUoYSl7cmV0dXJuIHR5cGVvZiBhPT09InN0cmluZyJ9LEtkOmE9PmEudG9TdHJpbmcoKX0sWzddOntwZDpmdW5jdGlvbigpe3JldHVybiIgLyp6Q2xvc3VyZXoqLyAifSxoZShhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIF8uamJ9LEtkOmE9Pl8ubGIoYSl9LFs4XTp7cGQoYSxiLGMpe2M9U3RyaW5nKGMpLnRvTG93ZXJDYXNlKCk7YTp7bGV0IGQ9bnVsbDsoYT1iT1thXSkmJihkPWFbYl0pO2lmKHR5cGVvZiBkIT09Im51bWJlciImJigoYT1iT1siKiJdKSYmKGQ9YVtiXSksdHlwZW9mIGQhPT0ibnVtYmVyIikpe2I9CiExO2JyZWFrIGF9Yj0hMD09PXloYVtkXVtTdHJpbmcoYykudG9Mb3dlckNhc2UoKV19cmV0dXJuIGI/YzoiekNsb3N1cmV6In0saGU6bnVsbCxLZDpudWxsfSxbMTBdOntwZDpudWxsLGhlOm51bGwsS2Q6bnVsbH19O18ucE89Xy5MKCh7ZGF0YTphLHRnOmIsSGE6YyxpY29uOmQscHJvY2Vzc0FsbEVuZHBvaW50czplLHByZXZlbnREZWZhdWx0OmYsc3RvcFByb3BhZ2F0aW9uOmgsd0k6ayxjbGFzc05hbWU6bCxidXR0b25PdmVycmlkZXM6bSxRZjpuLGlzU3Vic2NyaWJlOnAsb2k6cixCbDp0fSk9Pnt2YXIgdj1fLm1HKCksej0oRixDKT0+e2Y/LigpJiZDLnByZXZlbnREZWZhdWx0KCk7aD8uKCkmJkMuc3RvcFByb3BhZ2F0aW9uKCk7aWYoIWs/LigpKXtGPWEoKTt2YXIgRz0hIWU/LigpO2lmKCFGLl9pc0J1c3kpe2ImJmIoKTt2YXIgRD0hRi5uYXZpZ2F0aW9uRW5kcG9pbnR8fCEhXy5CKEYubmF2aWdhdGlvbkVuZHBvaW50LF8uWXopfHwhIV8uQihGLm5hdmlnYXRpb25FbmRwb2ludCxfLlp6KTtHPyhGLnRyYWNraW5nUGFyYW1zJiZEJiZfLnpKKEYudHJhY2tpbmdQYXJhbXMpLEYuc2VydmljZUVuZHBvaW50JiZfLkFKKEYuc2VydmljZUVuZHBvaW50LEYsITEse2V2ZW50OkMsQmQ6dn0pLEYubmF2aWdhdGlvbkVuZHBvaW50JiYKXy5BSihGLm5hdmlnYXRpb25FbmRwb2ludCxGLCExLHtldmVudDpDLEJkOnZ9KSxGLmNvbW1hbmQmJl8uQUooRi5jb21tYW5kLEYsITEse2V2ZW50OkMsQmQ6dn0pKTooRz12TihGLnNlcnZpY2VFbmRwb2ludCl8fHZOKEYubmF2aWdhdGlvbkVuZHBvaW50KXx8dk4oRi5jb21tYW5kKSkmJl8uQUooRyxGLEQse2V2ZW50OkMsQmQ6dn0pfX19LEU9KCk9PntpZihjPy4oKSE9PSExKXJldHVybiBkPy4oKXx8YSgpLmljb24/Lmljb25UeXBlfSxBPV8uTigoKT0+KHsuLi5haGEoe3JlbmRlcmVyOmEoKSxJbTp6LHdBOiEwLFNjOm0/LigpLFZ5OiEwLFFmOm4/LigpLGlzU3Vic2NyaWJlOnA/LigpfHwhMSxCbDp0Py4oKX0pLG9pOnI/LigpfSksdm9pZCAwLCJQYzR0M2IiKTtyZXR1cm4gXy5LKCJ5dG0tYnV0dG9uLXJlbmRlcmVyIix7aGlkZGVuOigpPT4hYSgpLnRleHQmJiFfLkRKKGEoKS5hY2Nlc3NpYmlsaXR5RGF0YXx8YSgpLmFjY2Vzc2liaWxpdHkpLGNsYXNzOl8uUChsLCgpPT5FPy4oKT8KYGljb24tJHtFKCkudG9Mb3dlckNhc2UoKX1gOnZvaWQgMCx7ZGlzYWJsZWQ6KCk9PmEoKS50aGVtZWRCYXNpY0NvbG9yUGFsZXR0ZSYmXy51TihhKCkudGhlbWVkQmFzaWNDb2xvclBhbGV0dGUpfSl9LF8uSyhfLkpLLHtkYXRhOkEsaWNvbk5hbWU6RX0pKX0sImFiIik7Xy5wTy5pZG9tQ29tcGF0PXtjYWxsYmFja3M6e29uQnV0dG9uQ2xpY2tDYWxsYmFjazohMH19O18ucU89Xy5MKCh7ZGF0YTphLFFmOmIsc3R5bGU6YyxidXR0b25PdmVycmlkZXM6ZCxjbGFzc05hbWU6ZSxzdG9wUHJvcGFnYXRpb246ZixSazpoLEhjOmssc3o6bH0pPT57dmFyIFttLG5dPV8uQUMoYSkscD0oKT0+e3ZhciB0PW0oKTt2YXIgdj1jPy4oKT8uYW5pbWF0ZUljb249PT0idHJ1ZSIsej10LnRvZ2dsZWRJY29uJiZ0LnRvZ2dsZWRJY29uLmljb25UeXBlLEU9dC5kZWZhdWx0SWNvbiYmdC5kZWZhdWx0SWNvbi5pY29uVHlwZTt0PXY/RXx8bnVsbDp0LmlzVG9nZ2xlZCYmenx8RXx8bnVsbDt2PW0oKTtyZXR1cm4oYz8uKCk/LmFuaW1hdGVJY29uPT09InRydWUiP3Q6dD09PSJMSUtFIiYmdi5pc1RvZ2dsZWQ/IkxJS0VfRklMTEVEIjp0PT09IkRJU0xJS0UiJiZ2LmlzVG9nZ2xlZD8iRElTTElLRV9GSUxMRUQiOnQpPz92b2lkIDB9LHI9KHQsdik9PntoP2godCx2KTooZj8uKCkmJnYuc3RvcFByb3BhZ2F0aW9uKCksdD0hbSgpLmlzVG9nZ2xlZCxuKHsuLi5tKCksaXNUb2dnbGVkOnR9KSwKbD8uKHQpKX07cmV0dXJuIF8uSygieXRtLXRvZ2dsZS1idXR0b24tcmVuZGVyZXIiLHtjbGFzczplfSxfLksoXy5KSyx7ZGF0YTooKT0+e3ZhciB0PW0oKSx2PW0oKSx6PSEodi5pc1RvZ2dsZWQ/IXYudG9nZ2xlZFNlcnZpY2VFbmRwb2ludDohdi5kZWZhdWx0U2VydmljZUVuZHBvaW50KSxFPXY7di5kZWZhdWx0TmF2aWdhdGlvbkVuZHBvaW50JiYoRT17fSk7cmV0dXJuIGRoYSh7cmVuZGVyZXI6dCxJbTpyLFJ1Ol8uWUQoRSx7fSx6KSxTYzpkPy4oKSxWeTohMCx0b2dnbGVkOiEhbSgpLmlzVG9nZ2xlZCxRZjpiPy4oKX0pfSxpY29uOigpPT5fLksoXy5NRCx7aWNvbjpwLEdlOigpPT4hIWM/LigpPy5hbmltYXRlSWNvbixhY3RpdmU6KCk9Pm0oKS5pc1RvZ2dsZWQsSGM6a30pfSkpfSwiYmIiKTtfLnFPLmlkb21Db21wYXQ9e2NhbGxiYWNrczp7Ums6ITAsc3o6ITB9fTtfLiROPXtLQjpYKCJBQ0NPVU5UX0xBQkVMIiksTUI6WCgiQUNUX09OX1RISVNfQ09NTUVOVCIpLE5COlgoIkFERF9UT19EUk9QRE9XTl9MQUJFTCIpLE9COlgoIkFEX0JBREdFX0hJTlQiKSxQQjpYKCJBRF9CQURHRV9URVhUIiksY0M6WCgiQUxMX0NIQU5ORUxTX0xBQkVMIiksZUM6WCgiQU1CSUVOVF9NT0RFIiksZkM6WCgiQU1CSUVOVF9NT0RFX09GRiIpLGdDOlgoIkFNQklFTlRfTU9ERV9PTiIpLGhDOlgoIkFORFJPSURfREVQUkVDQVRJT05fTUVTU0FHRV9CT0RZIiksaUM6WCgiQU5EUk9JRF9ERVBSRUNBVElPTl9NRVNTQUdFX0hFQURFUiIpLGtDOlgoIkFQUF9VUFNFTExfU1VCVElUTEUiKSxsQzpYKCJBUFBfVVBTRUxMX1RJVExFIiksTnM6WCgiQVVESU9fVFJBQ0siLCJBdWRpbyBUcmFjayIpLG5rOlgoIkFVVE9OQVZfVE9HR0xFIiksbUM6WCgiQVVUT1BMQVlfSU5fVEVOX1NFQ09ORFMiKSxuQzpYKCJBVVRPUExBWV9QQVVTRUQiKSxvQzpYKCJBVVRPUExBWV9QTEFZX05PVyIpLApPczpYKCJBVVRPUExBWV9VUF9ORVhUX0lOIiksUHM6WCgiQVVUT19aT09NIiwiQXV0byB6b29tIiksQkFDSzpYKCJCQUNLIikscUM6WCgiQlJBTkRFRF9TSUdOX0lOX0RJQUxPR19ERVNDUklQVElPTiIsIkFjY2VzcyBhbGwgZmVhdHVyZXMgYW5kIGdldCBhIHNlYW1sZXNzIGV4cGVyaWVuY2UiKSxDQU5DRUw6WCgiQ0FOQ0VMIiksdUM6WCgiQ0hBTk5FTF9TV0lUQ0hFUl9MQUJFTCIpLENMT1NFOlgoIkNMT1NFIiwiY2xvc2UiKSxSczpYKCJDTE9TRURfQ0FQVElPTlNfRElTQUJMRUQiKSxTczpYKCJDTE9TRURfQ0FQVElPTlNfT0ZGIiksVHM6WCgiQ0xPU0VEX0NBUFRJT05TX09OIiksVXM6WCgiQ0xPU0VEX0NBUFRJT05TX09OX0xBTkdVQUdFIikseEM6WCgiQ0xPU0VfU0VBUkNIX0xBQkVMIikseUM6WCgiQ0xPU0VfU0VUVElOR1NfTEFCRUwiKSx6QzpYKCJDT01NRU5UX01PREFMX0NPTlRFTlQiKSxXczpYKCJDT05GSVJNX09LIiksQUM6WCgiQ09OTkVDVF9UT19USEVfSU5URVJORVQiKSwKWHM6WCgiQ09QSUVEX1RPX0NMSVBCT0FSRCIpLFlzOlgoIkNPUFkiKSxUbjpYKCJDT1BZX0RFQlVHX0lORk8iKSxaczpYKCJDT1BZX0VNQkVEX0NPREUiKSxDQzpYKCJDT1BZX0xJTktfTEFCRUwiKSxidDpYKCJDT1BZX1ZJREVPX1VSTCIpLGZ0OlgoIkNPUFlfVklERU9fVVJMX0FUX0NVUlJFTlRfVElNRSIpLERDOlgoIkNSRUFURV9DSEFOTkVMX1RJVExFIiksSUM6WCgiREVMRVRFX0ZST01fRE9XTkxPQURTIiksWG46WCgiRElBTE9HIiksRE9ORTpYKCJET05FIiksTkM6WCgiRE9XTkxPQUQiKSxrdDpYKCJGQUlMRURfQ09QWV9FUlJPUl9NRVNTQUdFIiksYkQ6WCgiRkxBR19DT05GSVJNIiksY0Q6WCgiRkxBR19DT05URU5UIiksZEQ6WCgiRkxBR19MQUJFTCIpLGVEOlgoIkZMQUdfVElUTEUiKSxmRDpYKCJGVUxMU0NSRUVOX0dFTkVSSUNfRVJST1IiKSxWRTpYKCJHSUZUUyIsIkdpZnRzIiksV0U6WCgiR09PR0xFX0NPTVBBTlkiKSxtdDpYKCJISURFX1BMQVlFUl9DT05UUk9MUyIsCiJIaWRlIHBsYXllciBjb250cm9scyIpLFlFOlgoIkhJREVfUExBWUxJU1RfVklERU9TIiksWkU6WCgiSElERV9TRUFSQ0hfRklMVEVSU19MQUJFTCIpLEhPTUU6WCgiSE9NRSIsIkhvbWUiKSxkRjpYKCJJTlZBTElEX1JFU1BPTlNFX1JFQ0VJVkVEIiksZ0Y6WCgiTEVBVkVfQV9DT01NRU5UX1RJVExFIiwiTGVhdmUgYSBjb21tZW50PyIpLGhGOlgoIkxJQlJBUlkiLCJMaWJyYXJ5Iiksa0Y6WCgiTElTVEVOSU5HIiksTE9BRElORzpYKCJMT0FESU5HIiksbEY6WCgiTE9OR19QUkVTU19NSUNfVE9fU1BFQUsiLCJMb25nIHByZXNzIG1pY19pY29uX3BsYWNlaG9sZGVyIHRvIHNwZWFrIiksdXQ6WCgiTE9PUCIpLG9GOlgoIk1FTlVfREVTS1RPUCIpLHBGOlgoIk1FTlVfRVhJVCIpLHFGOlgoIk1FTlVfRkVFREJBQ0siKSxyRjpYKCJNRU5VX0hFTFAiKSxzRjpYKCJNRU5VX0lNUFJFU1NVTSIpLHZ0OlgoIk1FTlVfUExBWUVSX1NFVFRJTkdTIiksdEY6WCgiTUVOVV9TRVRUSU5HUyIpLHVGOlgoIk1FTlVfU0lHTl9JTiIpLAp2RjpYKCJNRU5VX1RJVExFIiksd0Y6WCgiTUVOVV9ZT1VSX0RBVEEiKSxBRjpYKCJNT1JFX0lORk8iKSx3dDpYKCJNT1JFX09QVElPTlMiKSxibzpYKCJNT1JFX1ZJREVPUyIsIk1vcmUgdmlkZW9zIikseHQ6WCgiTU9SRV9WSURFT1NfQ0xPU0VfQlVUVE9OX0FSSUFfTEFCRUwiLCJIaWRlIG1vcmUgdmlkZW9zIiksenQ6WCgiTU9SRV9WSURFT1NfRlJPTV9DSEFOTkVMIiwiTW9yZSB2aWRlb3MgZnJvbSAkY2hhbm5lbF9uYW1lX3BsYWNlaG9sZGVyIiksZW86WCgiTU9SRV9WSURFT1NfTkVYVF9CVVRUT05fQVJJQV9MQUJFTCIsIk5leHQgdmlkZW9zIiksZm86WCgiTU9SRV9WSURFT1NfUFJFVklPVVNfQlVUVE9OX0FSSUFfTEFCRUwiLCJQcmV2aW91cyB2aWRlb3MiKSxBdDpYKCJNVVRFX1ZPTFVNRSIpLENGOlgoIk5FV19QTEFZTElTVCIpLERGOlgoIk5FWFRfVklERU8iKSxDdDpYKCJOT1RJRklDQVRJT05fRVJST1JfTUVTU0FHRSIpLEZGOlgoIk5PVF9GT1VORF9DVEEiKSxHRjpYKCJOT1RfRk9VTkRfTUVTU0FHRSIpLApIRjpYKCJOT1RfRk9VTkRfVElUTEUiKSxJRjpYKCJOT19ET1dOTE9BRFMiKSxKRjpYKCJOT19NSUNfSU5QVVQiKSxLRjpYKCJPRkZMSU5FX0NIRUNLX0NPTk5FQ1RJT04iKSxEdDpYKCJPT1BTX01FU1NBR0UiKSxNRjpYKCJPUEVOX0FQUCIpLE5GOlgoIk9QRU5fWU9VVFVCRSIpLE9GOlgoIk9QRU5fWU9VVFVCRV9BUFAiLCJPcGVuIFlvdVR1YmUgYXBwIiksUEFVU0U6WCgiUEFVU0UiKSxVRjpYKCJQTEFZIiksRXQ6WCgiUExBWUVSX0NBUFRJT04iKSxGdDpYKCJQTEFZRVJfQ0FQVElPTl9PRkYiKSxWRjpYKCJQTEFZRVJfQ0FQVElPTl9PTiIpLEd0OlgoIlBMQVlFUl9ET1VCTEVfU1BFRURfVVNFUl9FRFUiKSxXRjpYKCJQTEFZRVJfRE9VQkxFX1RBUF9UT19TRUVLIiksWEY6WCgiUExBWUVSX0RPVUJMRV9UQVBfVE9fU0hPV19PUl9ISURFX1BMQVlFUl9DT05UUk9MUyIpLEh0OlgoIlBMQVlFUl9FWElUX0ZVTExTQ1JFRU4iKSxJdDpYKCJQTEFZRVJfRkFTVEZPUldBUkRfU0VDT05EUyIpLApKdDpYKCJQTEFZRVJfRlVMTFNDUkVFTiIpLGxvOlgoIlBMQVlFUl9MSVZFX0xBQkVMIiksWUY6WCgiUExBWUVSX0xJVkVfTk9XIiksWkY6WCgiUExBWUVSX01JTklNSVpFIiksS3Q6WCgiUExBWUVSX05FWFQiKSxMdDpYKCJQTEFZRVJfUEFVU0UiKSxQZzpYKCJQTEFZRVJfUExBWSIpLE10OlgoIlBMQVlFUl9QUkVWSU9VUyIpLGFHOlgoIlBMQVlFUl9QUk9HUkVTU19CQVIiKSxOdDpYKCJQTEFZRVJfUVVBTElUWSIpLE90OlgoIlBMQVlFUl9RVUFMSVRZX0FVVE8iKSxQdDpYKCJQTEFZRVJfUkVQTEFZIiksUXQ6WCgiUExBWUVSX1JFV0lORF9TRUNPTkRTIiksbW86WCgiUExBWUVSX1NQRUVEIiksYkc6WCgiUExBWUVSX1NQRUVEVVBfVVNFUl9FRFUiKSxSdDpYKCJQTEFZRVJfU1BFRURfREVDUkVBU0UiKSxTdDpYKCJQTEFZRVJfU1BFRURfSU5DUkVBU0UiKSxubzpYKCJQTEFZRVJfU1BFRURfTk9STUFMIiksVHQ6WCgiUExBWUVSX1NQRUVEX1JFQ0VOVCIpLFV0OlgoIlBMQVlFUl9USU1FX0RVUkFUSU9OIiksClZ0OlgoIlBMQVlFUl9USU1FX0VMQVBTRUQiKSxjRzpYKCJQTEFZTElTVF9ERVNDUklQVElPTl9JTlZBTElEX0NIQVJBQ1RFUlMiKSxkRzpYKCJQTEFZTElTVF9NSVhfREVUQUlMRURfTE9OR19CWUxJTkUiKSxlRzpYKCJQTEFZTElTVF9OQU1FX0lOVkFMSURfQ0hBUkFDVEVSUyIpLGZHOlgoIlBMQVlMSVNUX05BTUVfTUlTU0lORyIpLGdHOlgoIlBMQVlMSVNUX05BTUVfVE9PX0xPTkciKSxoRzpYKCJQTEFZTElTVF9QQU5FTF9FTkRfT0ZfUExBWUxJU1QiKSxpRzpYKCJQTEFZTElTVF9QQU5FTF9ORVhUIiksakc6WCgiUExBWUxJU1RfUEFORUxfVU5MSVNURURfUExBWUxJU1QiKSxrRzpYKCJQTEFZTElTVF9URVhUX0lOUFVUX0NIQVJfQ09VTlQiKSxsRzpYKCJQTEFZX0FMTCIpLG1HOlgoIlBMRUFTRV9GSVhfRVJST1JTIiksWHQ6WCgiUFJFTUlVTV9CQURHRV9MQUJFTCIsIlByZW1pdW0iKSxuRzpYKCJQUkVWSU9VU19WSURFTyIpLG9HOlgoIlBSSVZBQ1lfUE9MSUNZIiksckc6WCgiUkVMT0FEIiksCnNHOlgoIlJFUVVJUkVEX0xBQkVMIikseUc6WCgiU0FWRV9QTEFZTElTVCIpLEFHOlgoIlNDUlVCX1NMSURFX1VTRVJfRURVIiksQ0c6WCgiU0VBUkNIIiwiU2VhcmNoIiksREc6WCgiU0VBUkNIX0FQUEVORF9MQUJFTCIpLEVHOlgoIlNFQVJDSF9DSEFOTkVMIiksRkc6WCgiU0VBUkNIX0NMRUFSX0xBQkVMIiksR0c6WCgiU0VBUkNIX0VOVElUWV9TVUdHRVNUSU9OX0FMQlVNX05PX0FSVElTVCIsIkFsYnVtIiksSEc6WCgiU0VBUkNIX0VOVElUWV9TVUdHRVNUSU9OX01PVklFIiwiTW92aWUiKSxJRzpYKCJTRUFSQ0hfRU5USVRZX1NVR0dFU1RJT05fU09OR19OT19BUlRJU1QiLCJTb25nIiksSkc6WCgiU0VBUkNIX0VOVElUWV9TVUdHRVNUSU9OX1RWX1NIT1ciLCJUViBTaG93IiksS0c6WCgiU0VBUkNIX0ZJTFRFUlNfTEFCRUwiKSxMRzpYKCJTRUFSQ0hfTEFCRUwiKSxNRzpYKCJTRUFSQ0hfUFBQX1BMQUNFSE9MREVSX1RFWFQiKSxORzpYKCJTRUVLX1NMSURFUiIpLE9HOlgoIlNFVFRJTkdTX0xBQkVMIiksClBHOlgoIlNFVFRJTkdTX01JQ19QRVJNSVNTSU9OIiksU0c6WCgiU0hPUlRTX1RBQl9MQUJFTCIsIlNob3J0cyIpLFRHOlgoIlNIT1dfTEVTUyIpLFVHOlgoIlNIT1dfTU9SRSIpLFp0OlgoIlNIT1dfUExBWUVSX0NPTlRST0xTIiwiU2hvdyBwbGF5ZXIgY29udHJvbHMiKSxWRzpYKCJTSE9XX1BMQVlMSVNUX1ZJREVPUyIpLFdHOlgoIlNIT1dfU0VBUkNIX0ZJTFRFUlNfTEFCRUwiKSxhdTpYKCJTSUdOX0lOX0xBQkVMIiksWkc6WCgiU0lHTl9JTl9PTl9XRUIiKSx5azpYKCJTVEFCTEVfVk9MVU1FIiksakg6WCgiU1RBQkxFX1ZPTFVNRV9PRkYiKSxrSDpYKCJTVEFCTEVfVk9MVU1FX09OIiksYnU6WCgiU1RBVFNfRk9SX05FUkRTIiksbEg6WCgiU1VHR0VTVElPTl9ESVNNSVNTRURfTEFCRUwiKSxtSDpYKCJTVUdHRVNUSU9OX0RJU01JU1NfTEFCRUwiKSxuSDpYKCJTVUdHRVNUSU9OX05FV19WSURFT1NfVEVYVCIpLG9IOlgoIlNVR0dFU1RJT05fVEhVTUJOQUlMX0FUVFJJQlVUSU9OX0xBQkVMIiwKIlZpZXcgaW1hZ2Ugc291cmNlIikscEg6WCgiU1VHR0VTVElPTl9USFVNQk5BSUxfTEFCRUwiKSxxSDpYKCJURVJNU19PRl9TRVJWSUNFIiksckg6WCgiVElNRVNUQU1QX01JTlVURVMiKSxzSDpYKCJUSU1FU1RBTVBfU0VDT05EUyIpLHRIOlgoIlRPR0dMRV9PRkYiKSx1SDpYKCJUT0dHTEVfT04iKSx2SDpYKCJUUkVORElORyIpLGR1OlgoIlRST1VCTEVTSE9PVF9QTEFZQkFDS19JU1NVRSIpLGV1OlgoIlRSWV9BR0FJTl9MQVRFUiIpLHdIOlgoIlRSWV9BR0FJTl9NSUNfUEVSTUlTU0lPTiIpLHhIOlgoIlRVUk5fT0ZGX0FVVE9QTEFZX0NPTkZJUk1fQlVUVE9OX1RJVExFIikseUg6WCgiVFVSTl9PRkZfQVVUT1BMQVlfRElBTE9HX0RFU0NSSVBUSU9OIiksekg6WCgiVFVSTl9PRkZfQVVUT1BMQVlfRElBTE9HX1RJVExFIiksZ3U6WCgiVU5NVVRFX1ZPTFVNRSIpLHNvOlgoIlZJREVPX0xJTktfTEFCRUwiKX07Xy5MaGE9T2JqZWN0LmZyZWV6ZT9PYmplY3QuZnJlZXplKE9iamVjdC5jcmVhdGUobnVsbCkpOnt9O18uTk49KCk9Pnt9O3dpbmRvdy5yZXF1ZXN0SWRsZUNhbGxiYWNrPy5iaW5kKHdpbmRvdyk7Xy5aTj1fLkwoYT0+e3ZhciB7bGFiZWw6YixvbmNsaWNrOmMsc2hvd1NwaW5uZXI6ZCx0aTplLGVuZ2FnZW1lbnRQYW5lbDpmLEt4OmgsRHA6ayxyZWxhdGl2ZTpsLG9wYWNpdHk6bX09Xy5EQyhhLHtzaG93U3Bpbm5lcjohMSxSSzohMSx0aTohMSxlbmdhZ2VtZW50UGFuZWw6ITEsRHA6ITEscmVsYXRpdmU6ITEsS3g6ITEsb3BhY2l0eTp2b2lkIDB9KTtyZXR1cm4gXy5LKCJ5dHctc2NyaW0iLHtjbGFzczpfLlAoInl0V2ViU2NyaW1Ib3N0IiwieXRXZWJTY3JpbUhvc3RNb2Rlcm5PdmVybGF5Iix7eXRXZWJTY3JpbUhvc3RCb3R0b21TaGVldDplLHl0V2ViU2NyaW1Ib3N0RW5nYWdlbWVudFBhbmVsOigpPT4hZSgpJiZmKCkseXRXZWJTY3JpbUhvc3REcmFnZ2FibGVFbmdhZ2VtZW50UGFuZWw6KCk9PiFlKCkmJmYoKSYmaCgpLHl0V2ViU2NyaW1Ib3N0RHJhd2VyTGF5b3V0OigpPT4hZSgpJiYhZigpJiZrKCkseXRXZWJTY3JpbUhvc3RSZWxhdGl2ZTpsfSksIm9uOmNsaWNrIjpjLCJvbjp0b3VjaG1vdmUiOmZ1bmN0aW9uKG4pe24ucHJldmVudERlZmF1bHQoKTsKbi5zdG9wUHJvcGFnYXRpb24oKX0sc3R5bGU6KCk9Pm0oKSE9PXZvaWQgMD9gYmFja2dyb3VuZDpyZ2JhKDAsIDAsIDAsICR7bSgpfSk7YDoiIn0sXy5LKF8uTyx7QTpkLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0V2ViU2NyaW1EaWFsb2dDb250YWluZXIifSxfLksoXy5aTCxudWxsKSl9KSxfLksoImJ1dHRvbiIse2NsYXNzOiJ5dFdlYlNjcmltSGlkZGVuQnV0dG9uIiwiYXJpYS1sYWJlbCI6Yn0pKX0sImNiIik7dmFyIEZOLEVOLElOLEdOLExOLEhOLGtoYTtGTj0wO0VOPW5ldyBNYXA7SU49bnVsbDtHTj1udWxsO0xOPSExO18uRE49W107SE49IV8ueCgiY2FuY2VsX21vZGFsX3BlbmRpbmdfYW5pbWF0aW9uc19raWxsc3dpdGNoIik7a2hhPSFfLngoInJlc2hvd19uZXN0ZWRfbW9kYWxfc2libGluZ3Nfa2lsbHN3aXRjaCIpO3ZhciByTzsKXy5zTz1fLkwoKHt0cTphfSk9PntmdW5jdGlvbiBiKEcpe2lmKChhKCkmJmRvY3VtZW50LmZ1bGxzY3JlZW5FbGVtZW50fHwhYSgpJiYhZG9jdW1lbnQuZnVsbHNjcmVlbkVsZW1lbnQpJiZHKXt2YXIgRD1HLlFrLEg9Ry52aWV3TW9kZWw7ay52YWx1ZT9GKEcpOkQ/LmlzRGlzYWJsZWQmJkQ/LmRpc2FibGVkQ29tbWFuZD8oQ04oITApLF8uQUooRC5kaXNhYmxlZENvbW1hbmQsaC52YWx1ZSwhMSkpOih3aW5kb3cubG9jYXRpb24uaGFzaCE9PSIjYm90dG9tLXNoZWV0IiYmXy4kTSgiYm90dG9tLXNoZWV0IiwhMCksay52YWx1ZT0hMCxkb2N1bWVudC5ib2R5LnNldEF0dHJpYnV0ZSgiYm90dG9tLXNoZWV0LW9wZW4iLCIiKSxfLm9NKCkuZGlzcGF0Y2goYk4oITApKSxyTz1fLm1HKCkscChEKSx2KEgpLENOKCEwKSxoLnZhbHVlfHxfLklwKEVycm9yKCJGZCIpKSxfLkpOKGgudmFsdWUsRD8uZm9jdXNPbkNsb3NlLCEwKSl9fWZ1bmN0aW9uIGMoKXtrLnZhbHVlJiYoay52YWx1ZT0hMSxkb2N1bWVudC5ib2R5LnJlbW92ZUF0dHJpYnV0ZSgiYm90dG9tLXNoZWV0LW9wZW4iKSwKbigpPy5HaD8uKCksck89dm9pZCAwLHAodm9pZCAwKSx2KHZvaWQgMCksQ04oITEpLF8uS04oaC52YWx1ZSksXy5vTSgpLmRpc3BhdGNoKGJOKCExKSkpfWZ1bmN0aW9uIGQoKXtrLnZhbHVlJiZ3aW5kb3cubG9jYXRpb24uaGFzaCE9PSIjYm90dG9tLXNoZWV0IiYmYygpfWFzeW5jIGZ1bmN0aW9uIGUoKXthd2FpdCBfLkZKO3dpbmRvdy5sb2NhdGlvbi5oYXNoPT09IiNib3R0b20tc2hlZXQiJiYoZG9jdW1lbnQuZnVsbHNjcmVlbkVsZW1lbnR8fF8uWU0/Xy4kTSgiIiwhMCk6YXdhaXQgXy5aTSgpLGQoKSk7QSgpJiYoYihBKCkpLEYodm9pZCAwKSl9ZnVuY3Rpb24gZihHKXtfLnpOKCk7Ry5zdG9wUHJvcGFnYXRpb24oKX12YXIgaD1fLnVFKCJib3R0b20tc2hlZXQtY29udGFpbmVyIiksaz1fLnVNKCExKSxbbCxtXT1fLkoodm9pZCAwLHZvaWQgMCwidld1WGtiIiksbj1sLHA9bSxbcix0XT1fLkoodm9pZCAwLHZvaWQgMCwiQmZSQUxiIiksdj10LFt6LEVdPV8uSih2b2lkIDAsdm9pZCAwLAoieTd0TmxjIiksQT16LEY9RSxDPSgpPT4hKCFuKCkmJiFyKCkpO18uVUooKCk9Pnt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiaGFzaGNoYW5nZSIsZCk7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInN0YXRlLW5hdmlnYXRlc3RhcnQiLGMpO18ueSgpLnJlc29sdmUoXy5jTCkuUHooe3dnOkc9PntHJiZiKHt2aWV3TW9kZWw6Ry52aWV3TW9kZWwsUWs6Ry5Ra30pfSxKZTphc3luYygpPT57YXdhaXQgZSgpfSxkbTphc3luYygpPT4hIV8ueE4oKSxYcDooKT0+aC52YWx1ZSxvdzpHPT5HfSxhKCkpO18uWXUoKCk9Pnt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigiaGFzaGNoYW5nZSIsZCk7d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInN0YXRlLW5hdmlnYXRlc3RhcnQiLGMpfSl9KTtyZXR1cm4gXy5LKCJib3R0b20tc2hlZXQtY29udGFpbmVyIix7ZWw6aCxyb2xlOiJkaWFsb2ciLGhpZGRlbjooKT0+IUMoKSwiYXJpYS1tb2RhbCI6ITAsImFyaWEtbGFiZWwiOigpPT5uKCk/LmhlYWRlclRpdGxlPwpuKCkuaGVhZGVyVGl0bGU6Xy4kTi5Ybn0sXy5LKF8uTyx7QTpDLHRoZW46KCk9Pl8uSyhfLklCLG51bGwsXy5LKF8uWk4se2xhYmVsOl8uJE4uQ0xPU0Usb25jbGljazpfLnpOLHRpOiEwfSksXy5LKF8uTyx7QTpyLHRoZW46Rz0+Xy5LKGxPLHtkYXRhOkd9KSxXOigpPT5fLksoXy5PLHtBOm4sdGhlbjpHPT5fLnBHKHJPfHx7fSwoKT0+Xy5LKGpPLHtIYTooKT0+RygpLkhhLHBmOigpPT5HKCkucGYsR2s6KCk9PkcoKS5HayxHaDooKT0+RygpLkdoLGZvY3VzT25DbG9zZTooKT0+RygpLmZvY3VzT25DbG9zZSxpc0Rpc2FibGVkOigpPT5HKCkuaXNEaXNhYmxlZCxkaXNhYmxlZENvbW1hbmQ6KCk9PkcoKS5kaXNhYmxlZENvbW1hbmQsVWU6KCk9Pl8uSyhfLnROLHtjb21wb25lbnQ6KCk9PkcoKS5VZX0pLGpoOigpPT4hIUcoKS5VZSxHYjooKT0+Xy5LKF8udE4se2NvbXBvbmVudDooKT0+RygpLkdifSksWGk6KCk9PiEhRygpLkdiLFNlOigpPT5fLksoXy50Tix7Y29tcG9uZW50OigpPT4KRygpLlNlfSksaGg6KCk9PiEhRygpLlNlLGhlYWRlclRpdGxlOigpPT5HKCkuaGVhZGVyVGl0bGUsaGVhZGVyU3VidGl0bGU6KCk9PkcoKS5oZWFkZXJTdWJ0aXRsZSxXZjooKT0+Xy5LKF8udE4se2NvbXBvbmVudDooKT0+RygpLldmfSksaWg6KCk9PiEhRygpLldmLE5mOigpPT5fLksoXy50Tix7Y29tcG9uZW50OigpPT5HKCkuTmZ9KSxVZjooKT0+ISFHKCkuTmYsT2Y6KCk9Pl8uSyhfLnROLHtjb21wb25lbnQ6KCk9PkcoKS5PZn0pLFZmOigpPT4hIUcoKS5PZixSZTooKT0+RygpLlJlLE1mOigpPT5HKCkuTWYsUGY6KCk9PkcoKS5QZn0pKX0pfSksXy5LKCJidXR0b24iLHtjbGFzczoiY2xvc2UtYnV0dG9uIiwiYXJpYS1sYWJlbCI6Xy4kTi5DTE9TRSwib246Y2xpY2siOmZ9KSl9KSl9LCJkYiIpO18uc08uaWRvbUNvbXBhdD0hMDtfLnRPPV8uTCgoe2FyaWFMYWJlbDphLFVIOmIsYXJpYVByZXNzZWQ6YyxhcmlhRXhwYW5kZWQ6ZCxhcmlhRGlzYWJsZWQ6ZSxjbGFzc05hbWU6Zixjb250ZW50OmgsYnE6ayxpZDpsLG5hbWU6bSxvbmNsaWNrOm4sb250b3VjaHN0YXJ0OnAsb250b3VjaG1vdmU6cixvbnRvdWNoZW5kOnQsYng6dn0pPT57dj1fLnVFKCJidXR0b24iLHYpO3JldHVybiBfLksoImJ1dHRvbiIse2lkOmwsY2xhc3M6Xy5QKCJpY29uLWJ1dHRvbiIsZiksZWw6diwiYXJpYS1sYWJlbCI6YSwiYXJpYS1sYWJlbGxlZGJ5IjpiLCJhcmlhLXByZXNzZWQiOmMsImFyaWEtZXhwYW5kZWQiOmQsImFyaWEtaGFzcG9wdXAiOmssImFyaWEtZGlzYWJsZWQiOmUsIm9uOmNsaWNrIjpuLCJvbjp0b3VjaHN0YXJ0IjpsTihwKSwib246dG91Y2htb3ZlIjpsTihyKSwib246dG91Y2hlbmQiOmxOKHQpfSxfLksoXy5PLHtBOigpPT4hIWgsdGhlbjooKT0+aD8uKCksVzooKT0+Xy5LKF8uTUQse2ljb246bX0pfSkpfSwiZWIiKTsKXy50Ty5pZG9tQ29tcGF0PXtjYWxsYmFja3M6e2NvbnRlbnQ6ITAsb25jbGljazohMCxvbnRvdWNoc3RhcnQ6ITAsb250b3VjaG1vdmU6ITAsb250b3VjaGVuZDohMCxieDohMH19O3ZhciBSTixQTixPTjtSTj0hMDsKUE49e0FWQVRBUl9DSVJDTEVfQkxVRToiQVZBVEFSX0xPR0dFRF9PVVQiLEJBQ0s6IkFSUk9XX0JBQ0siLEJMT0NLX1VTRVI6IkJMT0NLIixCUk9BRENBU1Q6InBvZGNhc3QiLENBUFRJT05TOiJDTE9TRURfQ0FQVElPTiIsQ0hFQ0tfQkxVRToiQ0hFQ0siLENIRUNLX0NJUkNMRV9GSUxMRUQ6IkNIRUNLX0NJUkNMRV9GSUxMRUQiLENIRUNLX0NJUkNMRV9USElDSzoiQ0hFQ0tfQ0lSQ0xFX09VVExJTkUiLENPVVJTRToibGlnaHRidWxiIixESVNMSUtFX0NPTU1FTlQ6IkRJU0xJS0UiLERJU0xJS0VfQ09NTUVOVF9GSUxMRUQ6IkRJU0xJS0VfRklMTEVEIixESVNMSUtFX1NFTEVDVEVEOiJESVNMSUtFX0ZJTExFRCIsRElTTUlTU0FMX0JMQUNLOiJESVNNSVNTQUwiLEVYUEFORF9NT1JFOiJFWFBBTkQiLEZBU0hJT05fTE9HTzoiZmFzaGlvbiIsR0FNSU5HOiJnYW1pbmciLEdBTUlOR19MT0dPOiJnYW1pbmciLEdFQVI6IlNFVFRJTkdTIixIRUxQOiJIRUxQX09VVExJTkUiLExJS0VfQ09NTUVOVDoiTElLRSIsCkxJS0VfQ09NTUVOVF9GSUxMRUQ6IkxJS0VfRklMTEVEIixMSUtFX1NFTEVDVEVEOiJMSUtFX0ZJTExFRCIsTElWRToiUkFEQVJfTElWRSIsTE9HTzoiWU9VVFVCRSIsTU9SRV9DSEVWUk9OOiJFWFBBTkQiLE1PUkVfVkVSVF9XSElURToiTU9SRV9WRVJUIixNVVNJQzoiYXVkaW8iLE1VU0lDX0ZJTExFRDoiYXVkaW9fZmlsbGVkIixORVdTOiJuZXdzIixPRkZJQ0lBTF9BUlRJU1RfQkFER0U6ImF1ZGlvIixQTEFZQUJMRVNfTE9HTzoidGljX3RhY190b2UiLFBMQVlFUl9ORVhUOiJTS0lQX05FWFRfRklMTEVEIixQTEFZRVJfUEFVU0U6IlBBVVNFX0ZJTExFRCIsUExBWUVSX1BMQVk6IlBMQVlfQVJST1dfRklMTEVEIixQTEFZRVJfUFJFVklPVVM6IlNLSVBfUFJFVklPVVNfRklMTEVEIixQTEFZRVJfUkVQTEFZOiJSRVBMQVkiLFBMQVlfQUxMOiJQTEFZX0FSUk9XX0ZJTExFRCIsUkVNT1ZFOiJESVNNSVNTQUwiLFNIT1JUU19ESVNMSUtFOiJzaG9ydHNfdGh1bWJzX2Rvd24iLFNIT1JUU19MSUtFOiJzaG9ydHNfdGh1bWJzX3VwIiwKU1BPTlNPUlNISVBfU1RBUjoiU1BPTlNPUlNISVBfU1RBUl9GSUxMRUQiLFRBQl9BQ0NPVU5UOiJBVkFUQVJfTE9HR0VEX09VVCIsVEFCX1RSRU5ESU5HOiJmaXJlIixUQUJfVFJFTkRJTkdfRklMTEVEOiJmaXJlX2ZpbGxlZCIsVFJFTkRJTkc6ImZpcmUiLFRST1BIWToidHJvcGh5IixWT0xVTUVfRE9XTl9PVVRMSU5FOiJWT0xVTUVfRE9XTiIsVk9MVU1FX1VQOiJWT0xVTUVfVVBfRklMTEVEIixWT0xVTUVfVVBfT1VUTElORToiVk9MVU1FX1VQIixZT1VUVUJFX0xPR086IkxPR09fV0lUSF9URVhUIixZT1VUVUJFX1BSRU1JVU1fTE9HTzoiWU9VVFVCRV9QUkVNSVVNX0xPR09fU0hPUlQiLFlPVVRVQkVfU0hPUlRTX0ZJTExfTk9fVFJJQU5HTEVfUkVEXzE2OiJ5b3V0dWJlX3Nob3J0c19ub190cmlhbmdsZV9maWxsZWQiLFlPVVRVQkVfU0hPUlRTX0ZJTExfTk9fVFJJQU5HTEVfV0hJVEVfMTY6InlvdXR1YmVfc2hvcnRzX25vX3RyaWFuZ2xlX2ZpbGxlZCJ9OwpPTj17TE9HTzoiTE9HTyIsUExBWUFCTEVTX0xPR086InBsYXlhYmxlcyIsU0hPUlRTX0RJU0xJS0U6InRodW1iX2Rvd24iLFNIT1JUU19MSUtFOiJ0aHVtYl91cCIsVEFCX1RSRU5ESU5HOiJ0cmVuZGluZyIsVEFCX1RSRU5ESU5HX0ZJTExFRDoidHJlbmRpbmdfZmlsbGVkIixUUkVORElORzoidHJlbmRpbmcifTsKXy51Tz1fLkwoKHtpY29uOmEsYWN0aXZlOmIsY2xhc3NOYW1lOmMsc3R5bGU6ZCx5cDplLGhjOmYscm9sZTpoLEdlOmssSGM6bCxhcmlhSGlkZGVuOm0sYXJpYUV4cGFuZGVkOm4sYXJpYUxhYmVsOnAsaWQ6cixhZzp0LHNpemU6dn0pPT57bmhhKCk7dmFyIHo9KCk9PlFOKGE/LigpKSxFPV8uTigoKT0+e2E6e3ZhciBGPVFOKGE/LigpKSxDPWI/LigpO3ZhciBHPXY/LigpO2lmKEYpe3ZhciBEPV8ueSgpLnJlc29sdmUoXy5YTCksSD1GLnRvTG93ZXJDYXNlKCk7Rj17aWNvbk5hbWU6SCxpY29uU3R5bGU6SC5lbmRzV2l0aCgiX2ZpbGxlZCIpfHxGLmVuZHNXaXRoKCJfb24iKXx8Qz8ieW91dHViZV9maWxsIjp2b2lkIDAsaWNvblNpemU6R307Qz1ELmooRik7IUMmJkcmJihGLmljb25TaXplPXZvaWQgMCxDPUQuaihGKSk7IUMmJkguZW5kc1dpdGgoIl9maWxsZWQiKSYmKEYuaWNvbk5hbWU9SC5zdWJzdHJpbmcoMCxILmxlbmd0aC03KSxDPUQuaihGKSk7Q3x8KEYuaWNvblN0eWxlPXZvaWQgMCwKQz1ELmooRikpO2lmKEMpe0c9RjticmVhayBhfV8uSXAobmV3IF8uWGooIkljb24gbm90IHN1cHBvcnRlZCIse2ljb25OYW1lOkYuaWNvbk5hbWV9KSl9Rz12b2lkIDB9cmV0dXJuIEd9LHZvaWQgMCwiTTZYa0diIiksQT0oKT0+KHtpY29uV2lkdGg6IjEwMCUiLGljb25IZWlnaHQ6IjEwMCUiLGFnOnQ/LigpfSk7cmV0dXJuIF8uSyhfLkVFLG51bGwsXy5LKF8uQ0Use3doZW46KCk9PlFOKGE/LigpKSYmaz8uKCkmJmI/LigpIT09dm9pZCAwJiZPYmplY3QudmFsdWVzKEFoYSkuaW5jbHVkZXMoUU4oYT8uKCkpfHwiIil9LCgpPT5fLksoXy50TSx7YW5pbWF0ZWRJY29uVHlwZTp6LGFjdGl2ZTooKT0+ISFiPy4oKSxIYzpsLHNpemU6dixIQTooKT0+Xy5LKF8udU8se2ljb246YSxhY3RpdmU6YixHZTohMX0pfSkpLF8uSyhfLkNFLHt3aGVuOigpPT5RTihhPy4oKSkmJkUoKX0sKCk9Pl8uSygiYzMtaWNvbiIse2NsYXNzOmMsc3R5bGU6ZCxyb2xlOmgsImRhdGEtc2VsZWN0ZWQiOmUsImRhdGEtZGlzYWJsZWQiOmYsCiJmaWxsLWljb24iOigpPT5iPy4oKT09PSEwLGlkOnIsImljb24tc3RhdGUtb3V0bGluZSI6KCk9PmI/LigpPT09ITE/IiI6dm9pZCAwLCJpY29uLXN0YXRlLWZpbGxlZCI6KCk9PmI/LigpPT09ITA/IiI6dm9pZCAwLCJhcmlhLWhpZGRlbiI6bSwiYXJpYS1leHBhbmRlZCI6biwiYXJpYS1sYWJlbCI6cH0sXy5LKF8uWUwse2RhdGE6KCk9PkUoKSxvcHRpb25zOkF9KSkpKX0sImZiIik7Xy51Ty5pZG9tQ29tcGF0PSEwO18uTCgoe25hbWU6YSxsYWJlbDpiLG9uY2xpY2s6YyxicTpkLHJvbGU6ZX0pPT5fLksoImRpdiIse2NsYXNzOiJpY29uLWJ1dHRvbiIscm9sZTplLCJhcmlhLWxhYmVsIjpiLCJhcmlhLWhhc3BvcHVwIjpkLCJvbjpjbGljayI6Y30sXy5LKF8udU8se2ljb246YX0pKSwiZ2IiKS5pZG9tQ29tcGF0PXtjYWxsYmFja3M6e29uY2xpY2s6ITB9fTsKdmFyIEpoYT0iYWxpZ25fbGVmdCBhcnJvd19sZWZ0IGZsYWcgaG9tZSBsb2dvX3dpdGhfdGV4dCBtZXNzYWdlX2J1YmJsZV9hbGVydCBtaWMgb3Blbl9uZXcgb3ZlcmZsb3dfaG9yaXpvbnRhbCBvdmVyZmxvd192ZXJ0aWNhbCBwbGF5X2NpcmNsZV9zaG9ydHMgc2VhcmNoIHNob3J0c19jb21tZW50IHNob3J0c19zaGFyZSBzaG9ydHNfdGh1bWJzX2Rvd24gc2hvcnRzX3RodW1ic191cCB3YXZlZm9ybSB4X21hcmsgeW91dHViZV9zaG9ydHMgeW91dHViZV9zaG9ydHNfYnJhbmRfMjQiLnNwbGl0KCIgIiksSWhhPSJhbGVydF9idWJibGUgYXJyb3dfbGVmdCBhcnJvd191cF9yaWdodCBmbGFnIGhvbWUgbG9nb193aXRoX3RleHQgbWljIG92ZXJmbG93X2hvcml6b250YWwgb3ZlcmZsb3dfdmVydGljYWwgcGxheV9jaXJjbGVfc2hvcnRzIHNlYXJjaCBzaGFyZSBzaG9ydHMgdGV4dF9hbGlnbl9sZWZ0IHRleHRfYnViYmxlIHRodW1iX2Rvd24gdGh1bWJfdXAgd2F2ZWZvcm0geCB5b3V0dWJlX3Nob3J0c19icmFuZF8yNCIuc3BsaXQoIiAiKTtfLnZPPV8uTChhPT57dmFyIHtpY29uVHlwZTpiLGxhYmVsOmMsYXJpYUxhYmVsOmQsYXJpYVByZXNzZWQ6ZSxkaXNhYmxlZDpmLG9uY2xpY2s6aCxzdHlsZTprLFZsOmwsTG06bSxPeDpuLGJhc2ljQ29sb3JQYWxldHRlRGF0YTpwLGRhdGE6cixhcmlhSGlkZGVuOnR9PV8uREMoYSx7aWNvblR5cGU6IiIsVmw6ITEsTG06IiIsT3g6ITEsYXJpYUhpZGRlbjohMX0pO18udUUoImRpdiIsdj0+e3I/LigpJiZtaGEodixyPy4oKSl9KTtyZXR1cm4gXy5LKCJkaXYiLHtjbGFzczpfLlAoImJ1dHRvbi13aXRoLWljb24gYnV0dG9uLXJlbmRlcmVyIGNvbXBhY3QiLG0pLHN0eWxlOigpPT57dmFyIHY7aWYodj1wPy4oKSl7dmFyIHo9IiIsRTtmb3IoRSBpbiB2KXtpZighdi5oYXNPd25Qcm9wZXJ0eShFKSljb250aW51ZTtsZXQgQT12W0VdLEY9RS5pbmNsdWRlcygiZm9yZWdyb3VuZCIpPyJjb2xvciI6U3RyaW5nKEUpLnJlcGxhY2UoLyhbQS1aXSkvZywiLSQxIikudG9Mb3dlckNhc2UoKTtBJiYKKHorPWAke0Z9OiR7Xy5ORChBKX07YCl9dj16fWVsc2Ugdj12b2lkIDA7cmV0dXJuIHY/LnRvU3RyaW5nKCl9LCJkYXRhLXN0eWxlIjooKT0+dHlwZW9mIGs/LigpPT09InN0cmluZyI/aygpOms/LigpPy5zdHlsZVR5cGUsImRhdGEtaWNvbi1vbmx5IjooKT0+IWM/LigpLCJpcy1idXN5IjpsLCJhcmlhLWJ1c3kiOmwsImFyaWEtaGlkZGVuIjp0fSxfLksoImJ1dHRvbiIse2NsYXNzOiJidXR0b24td2l0aC1pY29uLWJ1dHRvbiIsIm9uOmNsaWNrIjpmdW5jdGlvbih2KXtoPy4odik7di5zdG9wUHJvcGFnYXRpb24oKX0sZGlzYWJsZWQ6ZiwiYXJpYS1sYWJlbCI6KCk9PmQ/LigpfHwiIiwiYXJpYS1wcmVzc2VkIjooKT0+ZT8uKCk/P3ZvaWQgMH0sXy5LKCJkaXYiLHtjbGFzczoiYnV0dG9uLXdpdGgtaWNvbi1pbm5lciJ9LF8uSyhfLk8se0E6KCk9PiFuPy4oKSYmYigpLHRoZW46KCk9Pl8uSyhfLnVPLHtpY29uOmIsY2xhc3NOYW1lOiJidXR0b24tcmVuZGVyZXItaWNvbiJ9KX0pLF8uSygiZGl2IiwKe2NsYXNzOiJidXR0b24tcmVuZGVyZXItdGV4dCJ9LF8uSyhfLk8se0E6Yyx0aGVuOigpPT5fLksoXy5JSix7ZGF0YTpjfSl9KSksXy5LKF8uTyx7QTooKT0+bigpJiZiKCksdGhlbjooKT0+Xy5LKF8udU8se2ljb246YixjbGFzc05hbWU6ImJ1dHRvbi1yZW5kZXJlci1pY29uIn0pfSksXy5LKF8uTyx7QTpsLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6ImJ1dHRvbi13aXRoLWljb24tc3Bpbm5lciBzcGlubmVyIn0pfSkpKSl9LCJpYiIpO18uSENbXy5SQVsiZGVmYXVsdCJdXT1vaGE7KGZ1bmN0aW9uKCl7dmFyIGE9Xy5jQjtfLmNCPWI9PnthPy4oYik7Xy5PRSgoKT0+e2ZvcihsZXQgYz0wO2M8Yi5sZW5ndGg7YysrKVROKGJbY10pfSl9fSkoKTtfLndPPV8uTCgoe2NoaWxkcmVuOmEsb25jbGljazpiLHJvbGU6YyxIeTpkfSk9Pnt2YXIgZT1fLnVFKCJidXR0b24iKTtfLlVKKCgpPT57ZD8uKGUudmFsdWUpfSk7cmV0dXJuIF8uSygieXRtLW1lbnUtaXRlbSIsbnVsbCxfLksoImJ1dHRvbiIse2NsYXNzOiJtZW51LWl0ZW0tYnV0dG9uIixlbDplLCJvbjpjbGljayI6Yixyb2xlOmN9LGEpKX0sImpiIik7Xy53Ty5pZG9tQ29tcGF0PXtjYWxsYmFja3M6e29uY2xpY2s6ITAsSHk6ITB9fTtfLkwoKHt1cmw6YSxsSzpiLGNoaWxkcmVuOmN9KT0+Xy5LKCJ5dG0tbWVudS1pdGVtIixudWxsLF8uSygiYSIse2hyZWY6YSxjbGFzczoibWVudS1pdGVtLWJ1dHRvbiIsdGFyZ2V0OigpPT5iPy4oKT8iX2JsYW5rIjp2b2lkIDB9LGMpKSwia2IiKS5pZG9tQ29tcGF0PSEwOwpfLkwoKHtjb21tYW5kOmEsY2hpbGRyZW46Yn0pPT5fLksoInl0bS1tZW51LWl0ZW0iLG51bGwsXy5LKF8ubkgse2NvbW1hbmQ6KCk9PmEoKT8/dm9pZCAwLGNsYXNzTmFtZToibWVudS1pdGVtLWJ1dHRvbiJ9LGIpKSwibGIiKS5pZG9tQ29tcGF0PSEwO3ZhciBWTixXTixbWU4scGhhXT1fLkoobnVsbCx2b2lkIDAsIkdDS2c4ZSIpLHhPPV8uTCgoe0RoOmF9KT0+Xy5LKF8ud08sbnVsbCxfLksoImRpdiIse2NsYXNzOiJtZW51LWNhbmNlbC1idXR0b24ifSxfLksoXy5NRCx7aWNvbjooKT0+YSgpLlRkLGNsYXNzTmFtZToibWVudS1jYW5jZWwtaWNvbiJ9KSwoKT0+YSgpLmNhbmNlbEJ1dHRvbkxhYmVsKSksIm1iIiksWE49Xy5MKCh7RGg6YSxjaGlsZHJlbjpifSk9Pnt2YXIgYz1fLnVFKCJkaXYiLCgpPT57fSk7cmV0dXJuIF8uSygiZGl2Iix7ZWw6YyxjbGFzczpfLlAoIm1lbnUtY29udGVudCIseyJtZW51LWJvdHRvbSI6KCk9PmEoKS5ucSwibWVudS1zaG93LWljb25zIjooKT0+YSgpLkhhfHxhKCkubnF8fGEoKS5pc0Z1bGxXaWR0aCwicm91bmRlZC1jb250YWluZXIiOigpPT4hYSgpLmlzRnVsbFdpZHRofSksIm9uOmNsaWNrIjpmdW5jdGlvbigpe2EoKS5Td3x8YSgpLkVJfHxfLlVOKCl9LHJvbGU6KCk9PmEoKS5pc0Z1bGxXaWR0aD8Kdm9pZCAwOiJkaWFsb2ciLCJhcmlhLW1vZGFsIjooKT0+IWEoKS5pc0Z1bGxXaWR0aCwiYXJpYS1sYWJlbGxlZGJ5IjooKT0+YSgpLlZIfSxiLF8uSyhfLk8se0E6KCk9PiFhKCkuU3csdGhlbjooKT0+Xy5LKF8uTyx7QTooKT0+ISFhKCkubnEsdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoiYm90dG9tLW1lbnUtY2FuY2VsIn0sXy5LKHhPLHtEaDphfSkpLFc6KCk9Pl8uSyh4Tyx7RGg6YX0pfSl9KSl9LCJuYiIpO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJzdGF0ZS1jaGFuZ2UiLGFPKTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiaGFzaGNoYW5nZSIsYU8pO3ZhciB5Tzt5Tz1fLkwoYT0+e3ZhciBiPWEuY2hpbGRyZW4sYz1fLlp0fHx2b2lkIDAsZD1fLm1HKCk7cmV0dXJuIF8uSygieXRtLW1lbnUiLG51bGwsYih7b25DbGljazplPT57YS5zdG9wUHJvcGFnYXRpb24/LigpJiZlLnN0b3BQcm9wYWdhdGlvbigpO2EucHJldmVudERlZmF1bHQ/LigpJiZlLnByZXZlbnREZWZhdWx0KCk7cWhhKHtjb250ZW50OmEuY29udGVudCxjYW5jZWxCdXR0b25MYWJlbDphLmNhbmNlbEJ1dHRvbkxhYmVsPy4oKSxUZDphLlRkPy4oKSxjbGFzc05hbWU6YS5kZj8uKCksZm9jdXNPbkNsb3NlOmUuY3VycmVudFRhcmdldCxIYTphLkhhPy4oKSxpc0Rpc2FibGVkOmEuaXNEaXNhYmxlZD8uKCksZGlzYWJsZWRDb21tYW5kOmEuZGlzYWJsZWRDb21tYW5kPy4oKSxvd25lcjpjLEZBOmR9KX19KSl9LCJwYiIpOwpfLnpPPV8uTChhPT5fLksoeU8sey4uLmEsY29udGVudDphLmNoaWxkcmVufSwoe29uQ2xpY2s6Yn0pPT5fLksoXy5PLHtBOigpPT5hLmJ1dHRvbk92ZXJyaWRlcz8uKCksdGhlbjpjPT5fLksoXy5KSyx7ZGF0YTooKT0+KHtvblRhcDpiLGljb25Qb3NpdGlvbjoiaWNvbi1vbmx5IixzdHlsZToibW9ubyIsdHlwZToidGV4dCIsc2l6ZToiTSIsc3RhdGU6ImFjdGl2ZSIsYWNjZXNzaWJpbGl0eUxhYmVsOmEubGFiZWw/LigpLC4uLmMoKX0pLGljb25OYW1lOmEuaWNvblR5cGV9KSxXOigpPT5fLksoXy50Tyx7bmFtZTphLmljb25UeXBlLGFyaWFMYWJlbDphLmxhYmVsLGNsYXNzTmFtZTpfLlAoYS5GaCx7c21hbGw6YS5sYn0pLG9uY2xpY2s6YixicTohMH0pfSkpLCJxYiIpO18uek8uaWRvbUNvbXBhdD17Y2FsbGJhY2tzOntjaGlsZHJlbjohMH19OwpfLk1oYT1fLkwoYT0+Xy5LKHlPLHsuLi5hLGNvbnRlbnQ6YS5jaGlsZHJlbn0sKHtvbkNsaWNrOmJ9KT0+Xy5LKF8uTyx7QTooKT0+YS5idXR0b25PdmVycmlkZXM/LigpLHRoZW46Yz0+Xy5LKF8uSksse2RhdGE6KCk9Pih7b25UYXA6YixpY29uUG9zaXRpb246Imljb24td2l0aC1sYWJlbCIsc3R5bGU6Im1vbm8iLHR5cGU6InRleHQiLHNpemU6Ik0iLHN0YXRlOiJhY3RpdmUiLGFjY2Vzc2liaWxpdHlMYWJlbDphLmFyaWFMYWJlbD8uKCksV2E6YS5sYWJlbD8uKCk/Xy5BRihhLmxhYmVsKCkpOnZvaWQgMCwuLi5jKCl9KSxpY29uTmFtZTphLmljb25UeXBlfSksVzooKT0+Xy5LKF8udk8se2ljb25UeXBlOmEuaWNvblR5cGUsbGFiZWw6YS5sYWJlbCxhcmlhTGFiZWw6YS5hcmlhTGFiZWwsYXJpYVByZXNzZWQ6ITEsb25jbGljazpiLHN0eWxlOmEuc3R5bGUsVmw6YS5WbCxMbTphLmFJfSl9KSksInJiIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBPaGEsUGhhLEJPLFFoYSxSaGEsQ08sU2hhLEdPLEhPLFZoYSxVaGEsV2hhLFhoYSxZaGEsWmhhLGFpYSxQTyxiaWEsY2lhLGRpYSxlaWEsZmlhLGhpYSxnaWEsV08saWlhLFhPLGppYSxraWEsZVAsaFAsbFAsbWlhLG5pYSxrUCxqUCxOaGEsVGhhO09oYT1mdW5jdGlvbihhKXtmb3IobGV0IGIgb2YgT2JqZWN0LnZhbHVlcyhOaGEpKWlmKF8uaXEoYik9PT1hKXJldHVybiEwO3JldHVybiExfTsKUGhhPWZ1bmN0aW9uKGEsYixjLGQsZSxmLGgsayxsKXt2YXIgbT0oMCxfLkR3KSgpO2Y9bmV3IF8uVHcoe3ZlVHlwZTpiLHlvdXR1YmVEYXRhOmYsanNwYllvdXR1YmVEYXRhOnZvaWQgMH0pO2w9Xy5Xdyh7YXV0b21hdGVkTG9nRXZlbnRTb3VyY2U6bH0sbSk7ZSYmKGwuY3R0QXV0aEluZm89ZSk7ZT17Y3NuOm0scGFnZVZlOmYuZ2V0QXNKc29uKCl9O18ueCgiZXhwZWN0YXRpb25fbG9nZ2luZyIpJiZrJiZrLnNjcmVlbkNyZWF0ZWRMb2dnaW5nRXhwZWN0YXRpb25zJiYoZS5zY3JlZW5DcmVhdGVkTG9nZ2luZ0V4cGVjdGF0aW9ucz1rLnNjcmVlbkNyZWF0ZWRMb2dnaW5nRXhwZWN0YXRpb25zKTtjJiZjLnZpc3VhbEVsZW1lbnQ/KGUuaW1wbGljaXRHZXN0dXJlPXtwYXJlbnRDc246Yy5jbGllbnRTY3JlZW5Ob25jZSxnZXN0dXJlZFZlOmMudmlzdWFsRWxlbWVudC5nZXRBc0pzb24oKX0saCYmKGUuaW1wbGljaXRHZXN0dXJlLmdlc3R1cmVUeXBlPWgpKTpjJiZfLklwKG5ldyBfLlhqKCJuZXdTY3JlZW4oKSBwYXJlbnQgZWxlbWVudCBkb2VzIG5vdCBoYXZlIGEgVkUgLSByb290VmUiLApiKSk7ZCYmKGUuY2xvbmVDc249ZCk7YT9fLkNwKCJzY3JlZW5DcmVhdGVkIixlLGEsbCk6Xy5FcCgic2NyZWVuQ3JlYXRlZCIsZSxsKTtfLnNtKF8uQ3csbmV3IF8uQncobSkpO18uRXcuY2xlYXIoKTtfLkZ3LmNsZWFyKCk7Xy5Hdy5jbGVhcigpO3JldHVybiBtfTtfLkFPPWZ1bmN0aW9uKGEsYixjLGQsZSxmLGgpe18ud3goYSxiLGMsZSxoKX07Qk89ZnVuY3Rpb24oYSxiKXthLksuaGFzKGIpfHxhLksuc2V0KGIsW10pO3JldHVybiBhLksuZ2V0KGIpfTsKUWhhPWZ1bmN0aW9uKGEsYixjPTApe18uVmkoKCk9PntiLnRoZW4oZD0+e2Euai5oYXMoYykmJmEuQiYmYS5CKCk7dmFyIGU9Xy5pcShjKSxmPV8uVncoYyk7aWYoZSYmZil7dmFyIGg9e2F1dG9tYXRlZExvZ0V2ZW50U291cmNlOjN9O2Q/LnJlc3BvbnNlPy50cmFja2luZ1BhcmFtcyYmXy5ieChhLmNsaWVudCxlLGYsXy5VdyhkLnJlc3BvbnNlLnRyYWNraW5nUGFyYW1zKSwhMSxoKTtkPy5wbGF5ZXJSZXNwb25zZT8udHJhY2tpbmdQYXJhbXMmJl8uYngoYS5jbGllbnQsZSxmLF8uVXcoZC5wbGF5ZXJSZXNwb25zZS50cmFja2luZ1BhcmFtcyksITEsaCl9fSl9KSgpfTtSaGE9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPTA7YjxhLkQubGVuZ3RoO2IrKyl7dmFyIGM9YS5EW2JdO3RyeXtjKCl9Y2F0Y2goZCl7Xy5HcChkKX19YS5ELmxlbmd0aD0wO2ZvcihiPTA7YjxhLlUubGVuZ3RoO2IrKyl7Yz1hLlVbYl07dHJ5e2MoKX1jYXRjaChkKXtfLkdwKGQpfX19OwpDTz1mdW5jdGlvbihhLGIsYyxkPXt9KXt2YXIgZT12b2lkIDA7ZC5sYXllcnx8KGQubGF5ZXI9MCk7ZT1kLnBhcmVudExheWVyIT09dm9pZCAwP2QucGFyZW50TGF5ZXI6ZC5sYXllcjt2YXIgZj1fLmlxKGUpO2U9Xy5WdyhlKTt2YXIgaD1jfHxlLGs7aCYmKGQucGFyZW50Q3NuIT09dm9pZCAwP2s9e2NsaWVudFNjcmVlbk5vbmNlOmQucGFyZW50Q3NuLHZpc3VhbEVsZW1lbnQ6aH06ZiYmZiE9PSJVTkRFRklORURfQ1NOIiYmKGs9e2NsaWVudFNjcmVlbk5vbmNlOmYsdmlzdWFsRWxlbWVudDpofSkpO3ZhciBsLG09Xy53KCJFVkVOVF9JRCIpO2Y9PT0iVU5ERUZJTkVEX0NTTiImJm0mJihsPXtzZXJ2bGV0RGF0YTp7c2VyaWFsaXplZFNlcnZsZXRFdmVudElkOm19fSk7Xy54KCJjb21iaW5lX3ZlX2dyYWZ0cyIpJiZmJiZfLmt4KGEsZik7Xy54KCJub19jbGllbnRfdmVfYXR0YWNoX3VubGVzc19zaG93biIpJiZoJiZmJiZfLmN4KGgsZik7dHJ5e3ZhciBuPVBoYShhLmNsaWVudCxiLGssCmQudHAsZC5jdHRBdXRoSW5mbyxsLGQuaW1wbGljaXRHZXN0dXJlVHlwZSxkLmxvZ2dpbmdFeHBlY3RhdGlvbnMsZC5hdXRvbWF0ZWRMb2dFdmVudFNvdXJjZSl9Y2F0Y2gocil7Xy5jdyhyLHtHSzpiLHJvb3RWZTplLHFLOmMsbkk6ZixwSzprLHRwOmQudHB9KTtfLkdwKHIpO3JldHVybn1fLm1xKG4sYixkLmxheWVyLGQuY3R0QXV0aEluZm8pO2YmJmYhPT0iVU5ERUZJTkVEX0NTTiImJmUmJiFPaGEoZikmJihfLnZ4KGEuY2xpZW50LGYsZSwhMCksYS5vLmRlbGV0ZShmKSk7Yj1CTyhhLGQubGF5ZXJ8fDApO2IubGVuZ3RoPjAmJiFiW2IubGVuZ3RoLTFdLmNzbiYmKGJbYi5sZW5ndGgtMV0uY3NuPW58fCIiKTtfLnpxKHtjbGllbnRTY3JlZW5Ob25jZTpufSk7Xy5EeCgpO18uVmkoXy5CeCgpLkspLmJpbmQoXy5CeCgpKSgpO3ZhciBwPV8uVncoZC5sYXllcik7ZiYmZiE9PSJVTkRFRklORURfQ1NOIiYmcCYmXy54KCJtdXNpY193ZWJfbWFya19yb290X3Zpc2libGUiKSYmXy5WaShfLkFPKSh2b2lkIDAsCm4scCx2b2lkIDAsdm9pZCAwLHZvaWQgMCk7YS5qLmRlbGV0ZShkLmxheWVyfHwwKTthLkI9dm9pZCAwO2EuaGEuZ2V0KGQubGF5ZXIpPy5mb3JFYWNoKChyLHQpPT57cj9fLml4KGEsdCxyLGQubGF5ZXIpOnAmJl8uaXgoYSx0LHAsZC5sYXllcil9KTtSaGEoYSl9O1NoYT1mdW5jdGlvbihhLGIsYyxkPXt9KXthLmouYWRkKGQubGF5ZXJ8fDApO2EuQj0oKT0+e0NPKGEsYixjLGQpO3ZhciBlPV8uVncoZC5sYXllcik7aWYoZSl7bGV0IGY9Xy5pcShkLmxheWVyKTtmb3IobGV0IGggb2YgYS5ZKXtsZXQgaz1oWzBdLGw9aFsxXXx8ZTtmP18uangoYSxrLGwsZC5sYXllcixmKTpfLml4KGEsayxsLGQubGF5ZXIpfWZvcihsZXQgaCBvZiBhLk0pXy5teChhLGhbMF0saFsxXSl9fTtjfHxfLmlxKGQubGF5ZXIpfHxhLkIoKTtpZihkLmZsKWZvcihsZXQgZSBvZiBkLmZsKVFoYShhLGUsZC5sYXllcik7ZWxzZSBfLkdwKEVycm9yKCJOYiIpKX07Cl8uRE89ZnVuY3Rpb24oYSxiLGMsZD17fSl7Xy5WaSgoKT0+e1RoYS5pbmNsdWRlcyhiKXx8KF8uSXAobmV3IF8uWGooImNyZWF0ZUNsaWVudFNjcmVlbigpIGNhbGxlZCB3aXRoIGEgbm9uLXBhZ2UgVkUiLGIpKSxiPTgzNzY5KTtpZighZC5pc0hpc3RvcnlOYXZpZ2F0aW9uKXtsZXQgZT1kLmxheWVyfHwwO2EuZ2Euc2V0KGUsW10pO0JPKGEsZSkucHVzaCh7cm9vdFZlOmIsa2V5OmQua2V5fHwiIn0pfWEuWT1bXTthLk09W107ZC5mbD9TaGEoYSxiLGMsZCk6Q08oYSxiLGMsZCl9KSgpfTtfLkVPPWZ1bmN0aW9uKGEsYixjLGQpe2I9Xy5kYihiKTtyZXR1cm4gYiE9PXZvaWQgMD9hLm9wZW4oYixjLGQpOm51bGx9O18uRk89ZnVuY3Rpb24oYSxiLGMpe2M9YyE9bnVsbD8iPSIrZW5jb2RlVVJJQ29tcG9uZW50KFN0cmluZyhjKSk6IiI7cmV0dXJuIF8uU2IoYSxiK2MpfTtHTz1mdW5jdGlvbihhLGIpe3JldHVybiBfLlF5KF8uZWQoYSxiKSk/PyExfTsKSE89ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBfLld4KGEsYixfLnh3KGMpLCExKX07Xy5JTz1mdW5jdGlvbihhLGIpe3ZhciBjO18udWIoYSxkPT57Yz1iW2RdO3JldHVybiEhY30pO3JldHVybiBjfTtfLkpPPWZ1bmN0aW9uKGEsYixjPTApeyhjPV8uaXEoYykpJiZhJiZfLlZpKF8uQU8pKHZvaWQgMCxjLGEsdm9pZCAwLGIsdm9pZCAwKX07Xy5LTz1mdW5jdGlvbigpe3JldHVybiEhXy53KCJNV0VCX0ZJUkVGT1hfWVRfTEFVTkNIRVIiKX07Xy5MTz1mdW5jdGlvbigpe3JldHVybiBfLmtNP18ua006Xy5sTSgpfTtfLk1PPWZ1bmN0aW9uKGEsYj01LGMpe2lmKGIhPT0wKXt2YXIgZD10eXBlb2YgYT09PSJmdW5jdGlvbiI/YSgpOmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYSk7ZD9jPy5ybD9fLmROKGQpOmQuZm9jdXMoKTpzZXRUaW1lb3V0KCgpPT57Xy5NTyhhLGItMSxjKX0sNTAwKX19O1ZoYT1mdW5jdGlvbigpe3ZhciBhPVVoYSgpO3JldHVybiBITyhhLDcsITApfTsKVWhhPWZ1bmN0aW9uKCl7dmFyIGE9bmV3IE5PO2E9SE8oYSw1LCEwKTthPUhPKGEsMiwhMCk7YT1ITyhhLDQsITEpO2E9SE8oYSw4LCEwKTtyZXR1cm4gSE8oYSw5LCEwKX07V2hhPWZ1bmN0aW9uKCl7dmFyIGE9VmhhKCk7cmV0dXJuIEhPKGEsMTAsITApfTtYaGE9ZnVuY3Rpb24oKXt2YXIgYT1XaGEoKTtyZXR1cm4gSE8oYSwxMiwhMCl9O1loYT1mdW5jdGlvbigpe3ZhciBhPVhoYSgpO3JldHVybiBITyhhLDEzLCExKX07WmhhPWZ1bmN0aW9uKCl7dmFyIGE9WWhhKCk7cmV0dXJuIEhPKGEsMTQsITApfTthaWE9ZnVuY3Rpb24oYSl7cmV0dXJuICRoYS5zb21lKGI9PmIudGVzdChhKSl9OwpQTz1mdW5jdGlvbihhLGIpe3t2YXIgYz1hLmZvcm1Db250ZW50Py5sb2NhbGU7bGV0IGQ9Yz8uc3BsaXQoIi0iKVswXTtjPWMmJk9PLmluY2x1ZGVzKGMpP2M6ZCYmT08uaW5jbHVkZXMoZCk/ZDp2b2lkIDB9Yz0oYz8/ImVuIikucmVwbGFjZUFsbCgiLSIsIl8iKS50b0xvd2VyQ2FzZSgpO2E9YS5pbml0aWFsaXphdGlvbkRhdGE/LnVzZU5pZ2h0bHlSZWxlYXNlPyJuaWdodGx5IjoibGl2ZSI7cmV0dXJuIGI/LmdldEVuYWJsZUFsb2hhQmluYXJ5U3BsaXQ/LigpPygwLF8uWXgpYGh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL3VzZXJ2b2ljZS9mZWVkYmFjay9jbGllbnQvd2ViLyR7YX0vbWFpbl9saWdodF9iaW5hcnkuanNgOigwLF8uWXgpYGh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL3VzZXJ2b2ljZS9mZWVkYmFjay9jbGllbnQvd2ViLyR7YX0vbWFpbl9iaW5hcnlfXyR7Y30uanNgfTsKYmlhPWZ1bmN0aW9uKGEsYixjLGQpe2lmKFFPJiZSTz09PWIpcmV0dXJuIFFPO1JPPWI7dmFyIGU9UE8oYSxkKTtyZXR1cm4gUU89Yi5mZWVkYmFja1YyR2xvYmFsT2JqZWN0P1Byb21pc2UucmVzb2x2ZShiLmZlZWRiYWNrVjJHbG9iYWxPYmplY3QpOm5ldyBQcm9taXNlKChmLGgpPT57dmFyIGs9Xy5DZCgiU0NSSVBUIik7Xy5vYihrLGUpO2sub25sb2FkPSgpPT57Yi5mZWVkYmFja1YyR2xvYmFsT2JqZWN0P2YoYi5mZWVkYmFja1YyR2xvYmFsT2JqZWN0KTpoKEVycm9yKCJHZCIpKX07ay5vbmVycm9yPSgpPT57aChFcnJvcigiSGRgIitlLnRvU3RyaW5nKCkpKX07Yy5ib2R5LmFwcGVuZENoaWxkKGspfSl9OwpjaWE9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoU08mJlRPPT09YilyZXR1cm4gU087VE89Yjt2YXIgZT1QTyhhLGQpO3JldHVybiBTTz1iLmZlZWRiYWNrVjJHbG9iYWxPYmplY3Q/UHJvbWlzZS5yZXNvbHZlKGIuZmVlZGJhY2tWMkdsb2JhbE9iamVjdCk6bmV3IFByb21pc2UoKGYsaCk9Pnt2YXIgaz1fLkNkKCJTQ1JJUFQiKTtfLm9iKGssZSk7ay5vbmxvYWQ9KCk9PntiLmZlZWRiYWNrVjJHbG9iYWxPYmplY3Q/ZihiLmZlZWRiYWNrVjJHbG9iYWxPYmplY3QpOmgoRXJyb3IoIkdkIikpfTtrLm9uZXJyb3I9KCk9PntoKEVycm9yKCJIZGAiK2UudG9TdHJpbmcoKSkpfTtjLmJvZHkuYXBwZW5kQ2hpbGQoayl9KX07ZGlhPWFzeW5jIGZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPURhdGUubm93KCk7YT1hd2FpdCAoYXdhaXQgYmlhKGEsYyxkLGIpKS5pbml0aWFsaXplRmVlZGJhY2tDbGllbnRBc3luYyhhLGUsYik7YS5pbml0aWF0ZUFsb2hhKCk7cmV0dXJuIGF9OwplaWE9YXN5bmMgZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9RGF0ZS5ub3coKTthPWF3YWl0IChhd2FpdCBjaWEoYSxjLGQuZG9jdW1lbnQsYikpLmluaXRpYWxpemVGZWVkYmFja0NsaWVudEFzeW5jKGEsZSxiLGQpO2EuaW5pdGlhdGVBbG9oYSgpO3JldHVybiBhfTsKZmlhPWFzeW5jIGZ1bmN0aW9uKGEsYixjKXt2YXIgZD1jfHxfLnU7aWYoYj8uZ2V0RW5hYmxlQWxvaGFCaW5hcnlTcGxpdD8uKCkpe2lmKGQuaXNGb3JtT3BlbmVkKXRocm93IG5ldyBVTztkLmlzRm9ybU9wZW5lZD0hMDthLmNhbGxiYWNrcz1hLmNhbGxiYWNrc3x8e307bGV0IGU9YS5jYWxsYmFja3Mub25DbG9zZXx8KCgpPT57fSk7YS5jYWxsYmFja3Mub25DbG9zZT1mPT57ZC5pc0Zvcm1PcGVuZWQ9ITE7ZShmKX07dHJ5e3JldHVybiBlaWEoYSxiLGQsZCl9Y2F0Y2goZil7dGhyb3cgZC5pc0Zvcm1PcGVuZWQ9ITEsZjt9fWVsc2V7aWYoZC5pc0Zvcm1PcGVuZWQpdGhyb3cgbmV3IFVPO2QuaXNGb3JtT3BlbmVkPSEwO2EuY2FsbGJhY2tzPWEuY2FsbGJhY2tzfHx7fTtsZXQgZT1hLmNhbGxiYWNrcy5vbkNsb3NlfHwoKCk9Pnt9KTthLmNhbGxiYWNrcy5vbkNsb3NlPWY9PntkLmlzRm9ybU9wZW5lZD0hMTtlKGYpfTt0cnl7cmV0dXJuIGRpYShhLGIsZCxkLmRvY3VtZW50KX1jYXRjaChmKXt0aHJvdyBkLmlzRm9ybU9wZW5lZD0KITEsZjt9fX07aGlhPWFzeW5jIGZ1bmN0aW9uKGEsYil7cmV0dXJuIG5ldyBQcm9taXNlKChjLGQpPT57TnVtYmVyLmlzSW50ZWdlcihOdW1iZXIoYSkpJiZOdW1iZXIoYSk+MD8oZD1naWEoYj8/IiIpKyIvYWxvaGFfZm9ybV9wcm9wZXJ0aWVzP3Byb2R1Y3RJZD0iK2EsXy5seShkLGU9PntlPWUudGFyZ2V0O3ZhciBmPW51bGw7dHJ5e3ZhciBoPUpTT04saz1oLnN0cmluZ2lmeTtpZihlLnJhKXt2YXIgbD1lLnJhLnJlc3BvbnNlVGV4dDtsLmluZGV4T2YoIildfSdcbiIpPT0wJiYobD1sLnN1YnN0cmluZyg1KSk7dmFyIG09Xy5FdihsKX1lbHNlIG09dm9pZCAwO2Y9Xy5YeChWTyxrLmNhbGwoaCxtKSl9Y2F0Y2gobil7az1uZXcgVk8sbT1aaGEoKSxtPUhPKG0sMTUsITApLG09SE8obSwyMCwhMSksbT1ITyhtLDI1LCExKSxtPUhPKG0sMjYsITEpLGY9Xy5LdyhrLDEsbSl9YyhmKX0sIkdFVCIsIiIse30sMkUzLCEwKSk6ZChFcnJvcigiSWRgIithKSl9KX07CmdpYT1mdW5jdGlvbihhKXtyZXR1cm4gYWlhKGEpP2E6Imh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vdG9vbHMvZmVlZGJhY2sifTsKV089ZnVuY3Rpb24oYSxiLGMsZCl7YS50aW1lT2ZTdGFydENhbGw9KG5ldyBEYXRlKS5nZXRUaW1lKCk7dmFyIGU9Y3x8Xy51LGY9ZS5kb2N1bWVudCxoPWEubm9uY2V8fF8uaWIoZS5kb2N1bWVudCk7aCYmIWEubm9uY2UmJihhLm5vbmNlPWgpO2lmKGEuZmxvdz09ImhlbHAiKXt2YXIgaz1fLnNhKCJkb2N1bWVudC5sb2NhdGlvbi5ocmVmIixlKTshYS5oZWxwQ2VudGVyQ29udGV4dCYmayYmKGEuaGVscENlbnRlckNvbnRleHQ9ay5zdWJzdHJpbmcoMCwxMjAwKSk7az0hMDtpZihiJiZKU09OJiZKU09OLnN0cmluZ2lmeSl7bGV0IGw9SlNPTi5zdHJpbmdpZnkoYik7KGs9bC5sZW5ndGg8PTEyMDApJiYoYS5wc2RKc29uPWwpfWt8fChiPXtpbnZhbGlkUHNkOiEwfSl9Yj1bYSxiLGMsZF07ZS5HT09HTEVfRkVFREJBQ0tfU1RBUlRfQVJHVU1FTlRTPWI7Yz1hLmZlZWRiYWNrU2VydmVyVXJpfHwiLy93d3cuZ29vZ2xlLmNvbS90b29scy9mZWVkYmFjayI7aWYoZD1lLkdPT0dMRV9GRUVEQkFDS19TVEFSVClkLmFwcGx5KGUsCmIpO2Vsc2V7ZT1jKyIvbG9hZC5qcz8iO2ZvcihsZXQgbCBpbiBhKWI9YVtsXSxiPT1udWxsfHxfLkFhKGIpfHwoZSs9ZW5jb2RlVVJJQ29tcG9uZW50KGwpKyI9IitlbmNvZGVVUklDb21wb25lbnQoYikrIiYiKTthPV8ueGQoZikuY3JlYXRlRWxlbWVudCgiU0NSSVBUIik7aCYmYS5zZXRBdHRyaWJ1dGUoIm5vbmNlIixoKTtfLm9iKGEsXy5UYShlKSk7Zi5ib2R5LmFwcGVuZENoaWxkKGEpfX07CmlpYT1hc3luYyBmdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1hLmZsb3c9PT0ic3VibWl0IixmPSEhXy5kcixoPXR5cGVvZiB3aW5kb3chPT0idW5kZWZpbmVkIiYmISEod2luZG93Ll9fa2FybWFfX3x8d2luZG93Lmphc21pbmV8fHdpbmRvdy5tb2NoYXx8d2luZG93Lmplc3QpO2lmKGUmJmgpV08oYSxiLGMsZCk7ZWxzZXtoPShhd2FpdCBoaWEoYS5wcm9kdWN0SWQsYS5mZWVkYmFja1NlcnZlclVyaSkpPy52KCk7Zj0hZnx8aD8uZ2V0RW5hYmxlTXdlYigpO3ZhciBrPSFhLnRpbnlOb1BvaW50ZXJ8fGg/LmdldEVuYWJsZVRpbnlOb1BvaW50ZXIoKTtmPSFlJiYoIWh8fGguZ2V0QWxvaGFBdXRvR2FSb2xsb3V0KCkmJmYmJmspO2U9ZSYmaD8uZ2V0RW5hYmxlQWxvaGFIZWFkbGVzcygpJiZhLnJlcG9ydDtmfHxlP2F3YWl0IFhPKGEsYixjLGgsZCk6V08oYSxiLGMsZCl9fTsKWE89YXN5bmMgZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZj1jfHxfLnUsaD1hLnNlcnZlckVudmlyb25tZW50PT09IkRFViI7Yz1jfHxfLnU7Yz1hLm5vbmNlfHxfLmliKGMuZG9jdW1lbnQpO2g9e2ludGVncmF0aW9uS2V5czp7cHJvZHVjdElkOmEucHJvZHVjdElkLGZlZWRiYWNrQnVja2V0OmEuYnVja2V0LHRyaWdnZXJJZDphLnRyaWdnZXJJZCxtaWNyb2ZlZWRiYWNrU2NvcmU6YS5taWNyb2ZlZWRiYWNrU2NvcmV9LGNhbGxiYWNrczp7b25DbG9zZTphLmNhbGxiYWNrLG9uTG9hZDphLm9uTG9hZENhbGxiYWNrfSxmb3JtQ29udGVudDp7bG9jYWxlOmEubG9jYWxlLGRpc2FibGVTY3JlZW5zaG90OmEuZGlzYWJsZVNjcmVlbnNob3R0aW5nLHByb2R1Y3REaXNwbGF5TmFtZTp2b2lkIDAsYW5ub3VuY2VtZW50OnZvaWQgMCxpc3N1ZUNhdGVnb3JpZXM6dm9pZCAwLGluY2x1ZGVTZXZlcml0eVNlbGVjdGlvbjp2b2lkIDAsY3VzdG9tSW1hZ2VTcmM6dm9pZCAwLHRoYW5rWW91TWVzc2FnZTp2b2lkIDAsCnVzZXJFbWFpbDp2b2lkIDAsZGVmYXVsdEZvcm1JbnB1dFZhbHVlczp2b2lkIDAsZGVmYXVsdEZvcm1JbnB1dFZhbHVlc1N0cmluZzp2b2lkIDAsYWJ1c2VMaW5rOmEuYWJ1c2VMaW5rLGFkZGl0aW9uYWxEYXRhQ29uc2VudDphLmFkZGl0aW9uYWxEYXRhQ29uc2VudH0saW5pdGlhbGl6YXRpb25EYXRhOntpc0xvY2FsU2VydmVyOmgsbm9uY2U6Yyx1c2VOaWdodGx5UmVsZWFzZTpoLGZlZWRiYWNrSnNVcmw6dm9pZCAwLGZlZWRiYWNrQ3NzVXJsOnZvaWQgMCxmZWVkYmFja0pzVXJsU2VyaWFsaXplZDp2b2lkIDAsZmVlZGJhY2tDc3NVcmxTZXJpYWxpemVkOnZvaWQgMCxzdWJtaXNzaW9uU2VydmVyVXJpOmEuZmVlZGJhY2tTZXJ2ZXJVcmksY29sb3JTY2hlbWU6YS5jb2xvclNjaGVtZX0sZXh0cmFEYXRhOntwcm9kdWN0VmVyc2lvbjphLnByb2R1Y3RWZXJzaW9uLGF1dGhVc2VyOmEuYXV0aHVzZXIsY29uZmlndXJhdG9ySWQ6YS5jb25maWd1cmF0b3JJZCxjdXN0b21aSW5kZXg6YS5jdXN0b21aSW5kZXgsCnRpbnlOb1BvaW50ZXI6YS50aW55Tm9Qb2ludGVyLGFsbG93Tm9uTG9nZ2VkSW5GZWVkYmFjazphLmFsbG93Tm9uTG9nZ2VkSW5GZWVkYmFjayxlbmFibGVBbm9ueW1vdXNGZWVkYmFjazphLmVuYWJsZUFub255bW91c0ZlZWRiYWNrfX07YS5yZXBvcnQmJihoLmhlYWRsZXNzUmVwb3J0PWEucmVwb3J0KTtiJiYoYT1uZXcgTWFwKE9iamVjdC5lbnRyaWVzKGIpKSxoLmV4dHJhRGF0YS5wcm9kdWN0U3BlY2lmaWNEYXRhPWEpO2UmJihlPW5ldyBNYXAoT2JqZWN0LmVudHJpZXMoZSkpLGguZXh0cmFEYXRhLnByb2R1Y3RTcGVjaWZpY0JpbmFyeURhdGE9ZSk7YXdhaXQgZmlhKGgsZCxmKX07Cl8uWU89ZnVuY3Rpb24oYSxiLGMsZCl7dHJ5e2lmKGEuZmxvdz09PSJoZWxwIil7bGV0IGU9YS5oZWxwQ2VudGVyUGF0aC5yZXBsYWNlKC9eXC8vLCIiKTtfLkVPKGN8fHdpbmRvdyxgaHR0cHM6Ly9zdXBwb3J0Lmdvb2dsZS5jb20vJHtlfWApfWVsc2UgaWlhKGEsYixjLGQpLmNhdGNoKGU9PnshZXx8ZSBpbnN0YW5jZW9mIFVPfHxXTyhhLGIsYyxkKX0pfWNhdGNoKGUpe1hPKGEsYixjLG51bGwsZCkuY2F0Y2goZj0+eyFmfHxmIGluc3RhbmNlb2YgVU98fFdPKGEsYixjLGQpfSl9fTtfLlpPPWZ1bmN0aW9uKCl7dmFyIGE9Xy5JTyhbImZ1bGxzY3JlZW5FbGVtZW50Iiwid2Via2l0RnVsbHNjcmVlbkVsZW1lbnQiLCJtb3pGdWxsU2NyZWVuRWxlbWVudCIsIm1zRnVsbHNjcmVlbkVsZW1lbnQiXSxkb2N1bWVudCk7cmV0dXJuIGE/YTpudWxsfTsKXy4kTz1mdW5jdGlvbihhKXt2YXIgYj1hLmdldE9wdGlvbigiY2FwdGlvbnMiLCJ0cmFja2xpc3QiLHtpbmNsdWRlQXNyOiEwfSk/P1tdO3JldHVybiBiPWppYShiLGEpfTtfLmFQPWZ1bmN0aW9uKGEpe3JldHVybiBhLmdldE9wdGlvbigiY2FwdGlvbnMiLCJ0cmFuc2xhdGlvbkxhbmd1YWdlcyIse2luY2x1ZGVBc3I6ITB9KXx8W119O2ppYT1mdW5jdGlvbihhLGIpe2I9Xy5hUChiKTtpZighYj8ubGVuZ3RoKXJldHVybiBhO3ZhciBjPWIuZmlsdGVyKGQ9PmQpO2I9YS5maWx0ZXIoZD0+ZC5sYW5ndWFnZUNvZGU/LnN0YXJ0c1dpdGgoImVuIikpO2ZvcihsZXQgZCBvZiBjKWlmKGIubGVuZ3RoKXtjPWJbMF07bGV0IGU9ey4uLmN9O2MubGFuZ3VhZ2VDb2RlIT09ZC5sYW5ndWFnZUNvZGUmJihlLmRpc3BsYXlOYW1lPWAke2MubGFuZ3VhZ2VOYW1lfSA+PiAke2QubGFuZ3VhZ2VOYW1lfWAsZS50cmFuc2xhdGlvbkxhbmd1YWdlPWQsYS5wdXNoKGUpKX1yZXR1cm4gYX07CmtpYT1mdW5jdGlvbigpe18uTU8oJ1thcmlhLWxhYmVsPSJZb3VUdWJlIl0nLDUse3JsOiEwfSl9O2VQPWZ1bmN0aW9uKGEpe3ZhciBiPWJQO2ImJihhP2NQPV8ueEYoYiwoKT0+Xy5LKGRQLG51bGwsXy5LKF8udE4se2NvbXBvbmVudDpsaWF9KSkse0lrOl8uWEN9KTooY1A/LigpLGNQPW51bGwpKX07aFA9ZnVuY3Rpb24oKXtjUCYmKGNQKCksY1A9bnVsbCk7ZlAodm9pZCAwKTtnUCgib3V0Iik7YlAmJihiUC5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKGJQKSxiUD1udWxsKX07bFA9ZnVuY3Rpb24oKXtpUC5sZW5ndGgmJihnUCgib3V0Iiksc2V0VGltZW91dCgoKT0+e2lQLnNoaWZ0KCk7aVAubGVuZ3RoPjA/KGhQKCksalAoKSxrUCgpKTooZVAoKSxoUCgpKX0sMTk1KSl9O21pYT1mdW5jdGlvbigpe18uTk0od2luZG93LCJzdGF0ZS1uYXZpZ2F0ZWVuZCIsKCk9PntzZXRUaW1lb3V0KGtpYSwxRTMpfSl9OwpuaWE9ZnVuY3Rpb24oYSl7dmFyIGI9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiYzMtdG9hc3QiKTtpZihiKXtsZXQgYz1iLnF1ZXJ5U2VsZWN0b3IoImJ1dHRvbiIpO2MmJl8uTk0oYywiZm9jdXMiLCgpPT57Y2xlYXJUaW1lb3V0KG1QKTttUD1zZXRUaW1lb3V0KGxQLGEpO18uTk0oYywiYmx1ciIsKCk9PntfLk9FKF8ublApfSl9KX19O2tQPWZ1bmN0aW9uKCl7Z1AoImluIik7dmFyIHtjb250ZW50OmEsZHVyYXRpb25NczpifT1pUC5sZW5ndGg/aVBbMF06e307ZlAoYSk7Y1B8fGVQKGEpO21QPXNldFRpbWVvdXQoKCk9PntsUCgpfSwyMjUrKGJ8fDApKTtfLlVNKCk9PT0ibGlicmFyeSI/bWlhKCk6YiE9PXZvaWQgMCYmbmlhKGIpfTtqUD1mdW5jdGlvbigpe2JQfHwoYlA9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksYlAuaWQ9InRvYXN0cyIsKF8uWk8oKXx8ZG9jdW1lbnQuYm9keSkuYXBwZW5kQ2hpbGQoYlApLGVQKCkpfTsKXy5wUD1mdW5jdGlvbihhLGI9b1AsYz0hMSl7alAoKTtiPWJ8fG9QO2MmJmlQLmxlbmd0aD4wPyhjbGVhclRpbWVvdXQobVApLF8uT0UoKCk9PntpUFswXT17Y29udGVudDphLGR1cmF0aW9uTXM6Yn07a1AoKX0pKTooaVAucHVzaCh7Y29udGVudDphLGR1cmF0aW9uTXM6Yn0pLGlQLmxlbmd0aD09PTEmJl8uT0Uoa1ApKX07Xy5uUD1mdW5jdGlvbigpe2lQLmxlbmd0aD4wJiYoY2xlYXJUaW1lb3V0KG1QKSxsUCgpKX07Xy5xUD1mdW5jdGlvbihhKXtfLlhNKCJuYXZpZ2F0ZSIsYSl9O18uclA9ZnVuY3Rpb24oKXtyZXR1cm4gXy54KCJtd2ViX25ld19mdWxsc2NyZWVuIik/ISFfLlpPKCk6ISFfLlpPKCl8fHdpbmRvdy5sb2NhdGlvbi5oYXNoPT09IiNmYXV4ZnVsbHNjcmVlbiJ9OwpfLnNQPWZ1bmN0aW9uKGEpe2E9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYS50b1N0cmluZygpKTthLmZvY3VzKCk7YS5zZXRTZWxlY3Rpb25SYW5nZSgwLGEudmFsdWUubGVuZ3RoKTthPSExO3RyeXthPWRvY3VtZW50LmV4ZWNDb21tYW5kKCJjb3B5Iil9Y2F0Y2goYil7fV8ucFAoYT8oKT0+b2lhOigpPT5waWEpfTtfLnRQPWZ1bmN0aW9uKCl7cmV0dXJuISFfLncoIklEX1RPS0VOIil9O05oYT17SEM6MCx2QzoxLEJDOjIseUY6MyxYbjo0LERIOjUsQkY6NixRRzo3LHBHOjgsdUc6OSxURjoxMCxuRjoxMSwwOiJERUZBVUxUIiwxOiJDSEFUIiwyOiJDT05WRVJTQVRJT05TIiwzOiJNSU5JUExBWUVSIiw0OiJESUFMT0ciLDU6IlZPWiIsNjoiTVVTSUNfV0FUQ0hfVEFCUyIsNzoiU0hBUkUiLDg6IlBVU0hfTk9USUZJQ0FUSU9OUyIsOToiUklDSF9HUklEX1dBVENIIiwxMDoiUElDVFVSRV9JTl9QSUNUVVJFIiwxMToiTUVESUFfQ0xJRU5UIn07ClRoYT1bMzYxMSwyNzY4NiwyMjEwNTgsODUwMTMsMjM0NjIsMjQxMTg3LDE1NzU1Nyw0MjAxNiwyNjkyNiw1MTIzNiw3OTE0OCw1MDE2MCw3NzUwNCwzMTAyODEsMTUzNTg3LDg3OTA3LDE4NjMwLDE3NzAxOCwxNzcwMjMsNTQ0NDUsMzIxNjY2LDMyNjM1MywzMjYzNTQsODA5MzUsMTUyMTcyLDE4NDU1MywxMDU2NzUsMTUwNzIzLDM3NTIxLDE0NzI4NSw0Nzc4NiwyMzEyNTUsMjMxMjU0LDIzMTI1OCwyMzEyNTksOTgzNDksMjM3Mjk5LDE2ODI3MSwxNjg5NTQsMTY4Mjc3LDE2ODI3MywxNjgyNzAsMTIzNjk1LDI3MjAxOCwzMzg0OTcsMjI2OTg3LDIyNjk5MCwyMjY5ODgsNjgyNywyOTQzNCwyNTUwMTAsMTcxMzg4LDI0NDE4OSwyMzYyMDgsNzI4MiwxMjQ0NDgsMjk5OTAzLDI5OTg5NywyOTk5MDQsMjk5OTAxLDI5OTg5OSwyOTk5MDIsMjk5OTAwLDI5OTg5OCwxOTYwODgsMjUwODk3LDE5ODEwNCwzMjI3NiwxOTUxMTUsMTk1MTE0LDc2Mjc4LDIwMDYzNSwyMzA1OTQsMTQ3ODY4LDE0Nzg2OSwKMjc2MjQzLDkzOTExLDI3NDE4OCwyNzY2NTEsMzEzNjgwLDEwNjUzMSwyNTcyMzQsMjUyNTk4LDI1MjU5NywyNTI2MDAsMjUyNTk5LDI1MjU5NiwyMjUwMzEsMTc3ODQzLDI3MjU5LDI3MjYyLDI3MjYzLDIxNzU5LDI4MzY3MCwxNjA4NjYsMjA0MjQ5LDIyMjkwMCwyMDQyNTAsMTgwNjI2LDE3Nzk1OSwxNzc5NTcsMTgwNjI4LDIwNTcxNiwxOTc4NzgsMjczNzY2LDE3MTI0MywxNjA3ODksMTcxMjQ0LDE3MTI0MSwxNzEyNDUsMTcxMjQyLDIyNTU2MCwxODA2MjcsMTc3OTYwLDIzMTU4OSwxNzc5NTgsMTgwNjI5LDIwNTcxNywxOTc4NzksMTc3NTY1LDIxMjU3MywyMTA3MDksOTk0NDEyLDIzMDY4NCwyMjk4MDEsMjMwNjg1LDMzNDMxMCwzMzQzMTEsMzM0MzEyLDE5NzMzNywyMDkwMTAsMTk3MzM2LDE5NzMzOCwxOTg2MTgsMzAwODg0LDE3NTQ5MiwxOTgwNTIsMTk4MDUxLDE5Nzg1MiwxOTc5NzYsMzE3Mzc3LDE3NTQ5MywxNzU0OTQsMTc1NDk1LDE4OTI1NCwxNzU0OTYsMTc1NDk3LDM4NDA4LAoxNzU0OTgsMTc1NTAzLDE3NTUwNCwxNzU1MDUsMTc1NTA2LDE3NTUwNywxNzU1MDgsODA2MzcsNjg3MjcsMjA2OTMzLDIwNzk0NCwyMDY5MzQsMzAzMTIzLDIwNjkyOSwyMjE1NzUsNjg3MjgsMjIxNTc2LDgwMzUzLDgwMzU2LDMwODAzMywyNDkxMDcsMTgwNjM1LDc0NjEwLDQ1NzA3LDgzOTYyLDgzOTcwLDQ2NzEzLDE2NjU5MSw4OTcxMSw3NDYxMiwyMTM4MDksMTc5NjA3LDI0NTAwNiwxNTU3OTIsOTMyNjUsNzQ2MTEsMTMxMzgwLDEyODk3OSwxMzkzMTEsMTI4OTc4LDEzMTM5MSwxMDUzNTAsMTM5MzEyLDMzMzYzNywxMzQ4MDAsMTMxMzkyLDExMzUzMywyMjkyOTgsOTMyNTIsOTkzNTcsOTQ1MjEsMTE0MjUyLDExMzUzMiw5NDUyMiw5NDU4MywyMDIzNzEsODhFMywxMzk1ODAsOTMyNTMsOTMyNTQsOTQzODcsOTQzODgsOTMyNTUsOTc0MjQsNzI1MDIsMjE5ODY4LDIxMjk5MSwxMTAxMTEsNzYwMTksMTE3MDkyLDExNzA5Myw4OTQzMSwxOTE4MzEsMTEwNDY2LDIzMTM0Niw3NzI0MCwKNjA1MDgsMTg2MDkxLDE0ODEyMywxNDgxMjQsMTM3NDAxLDEzNzQwMiwxMzcwNDYsNzMzOTMsMjQ2Nzc2LDExMzUzNCwyNzYyMDAsOTIwOTgsMTMxMzgxLDg0NTE3LDgzNzU5LDMwOTU4MCwyMzA2NzYsMjQ5MTgzLDIzMDY3OSwyMzA2NzgsMjMwNjc3LDIzMDY4MSwyMzA2ODAsMTYyNzExLDIzNTIzNCwxNjI3MTIsODAzNTcsOTk0NDExLDI0MzMxNSwzMTM1MDYsMzIxOTY0LDg2MTEzLDcyNTk4LDE2ODQxMyw3MjczMywxMDczNDksMTI0Mjc1LDExODIwMywyMDA0MTAsMTMzMjc1LDE2MDE1NywxNTI1NjksMTU2NjUxLDEzMzI3NCwxNjAxNTksMTYwMTU4LDEzMzI3MiwxMzMyNzMsMTMzMjc2LDE0NDUwNywxNDMyNDcsMTc1OTk0LDE1NjY1MiwxNDMyNDgsMTQzMjQ5LDE0MzI1MCwxNDMyNTEsMTg5ODkyLDE4OTg5NCwxODk4OTMsMTU2NjUzLDIxNDIzNiwxNDQ0MDEsMTE3NDMxLDEzMzc5NywyMjUxMzcsMjczOTA1LDIyMjYxMiwyMjI2MTMsMTUzOTY0LDIwMTEzMywyMDExMzQsMjAxMTM1LAoyMDExMzYsMjAxMTM3LDEyODU3MiwyMDA0MTEsMjAwNDEyLDE5MDMzNywxMzM0MDUsMTE3NDI5LDExNzQzMCwxNzc5NTAsMTc0NzM0LDE3Nzk1MSwyMDExMzgsMjAxMTM5LDIwMTE0MCwyMDExNDEsMjAxMTQyLDExNzQzMiwxNzM5OTYsMTczOTk1LDE3NDk1MywxNzM5OTQsMTczOTk3LDEyMDA4MCwxMTcyNTksMTc4NTQ2LDI5Nzc1MiwxOTc4OTEsMTU2NjU1LDE1NjY1NCwxMjE2OTIsMjExNDE0LDIxMTQxMSwyMTE0MTIsMjExNDEzLDIxMTQwMywxODQ4NDYsMTg1OTkzLDMzNTA0OCwxNDU2NTYsMTU2NjU2LDE0NTY1NSwxNDU2NTMsMTQ1NjU0LDE0NTY1NywxMzI5NzIsMTMzMDUxLDEzMzY1OCwxMzI5NzEsMzM2NzI4LDk3NjE1LDE4MTI2MiwxOTA3NjIsMjUwMzQ0LDI1NDAyNywxNDMzNTksMTQzMzU2LDE0MzM2MSwxNDMzNTgsMTQzMzYwLDE0MzM1NywxNDIzMDMsMTQzMzUzLDI4MjE1OSwxNzI4NTksMTQzMzU0LDE0NDQ3OSwxNDMzNTUsMzE0MDIsMTgxNTkwLDEzMzYyNCwxNDY0NzcsCjEzMzYyMywxMzM2MjIsMTMzNjIxLDE5MjQxOCw4NDc3NCwzMDQ3NzYsMTk3OTkzLDI0MTQ2MCwxNjA4MDEsMTk3OTk1LDk1MTE3LDE3MjcyMSwxNTA0OTcsOTg5MzAsOTg5MzEsOTg5MzIsMzM4NTcwLDMzODQ3NCwzMzg0NzgsMzM4NDczLDE1MzMyMCwxNTMzMjEsNDMzNDcsMzA1MjY4LDI0OTI5NSwyMTAwMTYsMjEwMDE3LDI2MjY4NiwyMTE4NTEsMjExODUyLDMwNzIxOSwyMTE4NTMsMzI3ODEwLDEyOTg4OSwxOTc4ODgsMTk3ODg5LDE0OTEyMywyMjE5NTksMjIxNjI3LDIyMTk1OCw0NTQ3NCwxMDAzNTIsOTg0NDMsMTE3OTg1LDMzMzcwOCw3NDYxMywxNTU5MTEsNzQ2MTQsNjQ1MDIsMTM2MDMyLDc0NjE1LDc0NjE2LDEyMjIyNCw3NDYxNyw3NzgyMCw3NDYxOCwyNjI5ODgsMjYyOTg5LDIyNjk4MSw5MzI3OCw5MzI3NCw5MzI3NSw5MzI3NiwyMDA2ODgsMjAwNjg2LDIwMDY4NywxOTk4NDEsMjIxMTAsMjk0MzMsMTMzNzk4LDEzMjI5NSwyODEzMzIsMTIwNTQxLDIyMjExMiw4MjA0NywKMTEzNTUwLDc1ODM2LDc1ODM3LDMwMzg4MiwxOTI0MDksMjAzMjIxLDQyMzUyLDg0NTEyLDc2MDY1LDc1OTg5LDIwNTkxMSwyMDU5MTIsMjUyNjQ5LDIwNTkxMywyNTI2NTAsMjUyNjUxLDUxODc5LDE2NjIzLDMyNTk0LDI3MjQwLDMzODEwOSwyOTMzMjQsMzI2MzMsNzQ4NTgsMzA0MTUwLDI5NzA0NSwyNzUxOTgsMjcxODg0LDIyMjkzMiwyNzkxMTksMzEyNTgxLDI3MTg4NiwyMTM5MTUsMjc1MTk5LDMxMDc0OCwyMjUyMTYsMjUxMjQ0LDI1ODI1MSwyMTg2NzQsMjUxMjY2LDI1ODI1MCwyNTEyNjUsMzAxNjYyLDI1MTI0NSwyNzE4ODUsMzE1ODE4LDE1Njk5OSwzOTQ1LDE2OTg5LDQ1NTIwLDI1NDg4LDI1NDkyLDI1NDk0LDIzMjExMyw1NTc2MCwxNDA1NywxODQ1MSw1NzIwNCw1NzIwMywxNzg5NywxODE5OCwxNzg5OCwxNzkwOSw0Mzk4MCwyMjEwNTMsMTk1NTI5LDE4OTY2MCwzMDgwODgsMzA2NDQ4LDMwNjQ0NywzMDgwODcsMzA4MDg2LDQ2MjIwLDExNzIxLDE0Nzk5NCw0OTk1NCw5NjM2OSwKMzg1NCwyMTc2NDAsMTUxNjMzLDU2MjUxLDIwNTE5MiwyMTY3OTcsMTU5MTA4LDE4MTU2OCwyMzQ3ODksMjU2MjQsMTUyMDM2LDE2OTA2LDk5OTk5LDY4MTcyLDQ3OTczLDcyNzczLDI2OTcwLDI2OTcxLDk2ODA1LDE3NzUyLDI4MjE4MSwyNzg5MjYsNzMyMzMsMjA1OTIzLDEwOTUxMiwyMjI1NiwxNDExNSwyMjY5NiwyMzQ0MDksMjM0NDA4LDg5Mjc4LDg5Mjc3LDE5NTc0NSwxMDk1MTMsNDMyNzgsNDM0NTksNDM0NjQsODkyNzksNDM3MTcsNTU3NjQsMjIyNTUsMTQ3OTEyLDg5MjgxLDQwOTYzLDQzMjc3LDQzNDQyLDkxODI0LDI4Mzg5OCwxMjAxMzcsMTg2MzUwLDE4NjM1MSwyNTY2OTAsMjY0MzQ5LDI2NDM1MSwyNjQzNTAsMjY0MzUyLDIxMTAyNiwyNTA4OTYsOTYzNjcsMzY4NTAsNzI2OTQsMzc0MTQsMzY4NTEsMTI0ODYzLDEyMTM0Myw3MzQ5MSw1NDQ3MywxNjY4NjEsNDMzNzUsNDY2NzQsMzAyNjMxLDMzMTQ3MywyNDI1MjgsMTQzODE1LDEzOTA5NSwxNDQ0MDIsMTQ5OTY4LDE0OTk2OSwKMzI0NzMsNzI5MDEsNzI5MDYsNTA2MTIsNTA2MTMsNTA5NDIsODQ5MzgsODQ5NDMsODQ5MzksODQ5NDEsODQ5NDQsODQ5NDAsODQ5NDIsMzU1ODUsNTE5MjYsNzk5ODMsMTg5MjEsNTc4OTMsNDExODIsMTM1NzMyLDMzNDI0LDIyMjA3LDM2MjI5LDIyMjA2LDIyMjA1LDQ0NzYzLDMzNDI3LDY3NzkzLDIyMTgyLDM3MDkxLDM0NjUwLDUwNjE3LDIyMjg3LDI1MTQ0LDk3OTE3LDIyMDEyMiw2MjM5NywxNTA4NzEsMTUwODc0LDEyNTU5OCwxMzc5MzUsMzY5NjEsMTA4MDM1LDMyMzQ5MywyNzQyNiwyNzg1NywyNzg0NiwyNzg1NCw2OTY5Miw2MTQxMSwzOTI5OSwzODY5Niw2MjUyMCwzNjM4MiwxMDg3MDEsMTkyNjgyLDI3OTUzMSw1MDY2MywzNjM4NywxNDkwOCwzNzUzMywxMDU0NDMsNjE2MzUsNjIyNzQsMTYxNjcwLDEzMzgxOCwxODIxMTksNjU3MDIsNjU3MDMsNjU3MDEsMzIwNDY0LDc2MjU2LDI5ODE1NywyNjM4NDMsMzE1MjM0LDE5NjA3NSwxOTQ3NjgsMjUyMjAxLDE5NDc2OSwxOTE4ODUsCjI4MTQ4MCwyMzM2MzQsMjY1ODEwLDE5NDc3MCwyOTY5MzMsMTk1MzUwLDMyNzM4NSwzMjQ1ODYsMzAxNjA3LDE5NTM0OSwxOTQ3NzEsMjkzMDQxLDMwMTEyMSwyOTMwNDIsMjkzMDQzLDMwMTExNiwxNjYzODIsMzc2NzEsNDk5NTMsMjIwNjY5LDYwMDAwMSw2MDAwMDIsNkU1LDMzNTEzNCwyNDkyMjksMjEzNzc0LDIwNDU3MiwxOTEzODksMjcyMjU0LDI3MjI1MywyNTM4MzAsMjUzODMxLDI1MzgzMiwyNzIyNTIsMjUzODMzLDI1MzgzNCwyMDQ1NzQsMTkxMzkwLDE3OTU1NiwyMzg1OTYsMjEyNjYxLDE5MTM5MiwxOTc4MjYsMTkxMzkzLDIwNDU3MywzNjIxNiwyODIzNywyNDEyMTIsMjcyMDQ5LDE3MzcxOCwzOTU1MywxOTI1NDcsMjkyMjIsMzA0ODQ1LDI2MTA3LDI0MTIxMSwzODA1MCwyNjEwOCwyNzU4MTAsMTIwNzQ1LDI2MTA5LDI2MTEwLDY2ODgxLDI4MjM2LDE0NTg2LDI5NzY3MiwxNjA1OTgsNTc5MjksMjI2NzM2LDc0NzIzLDQ0MDk4LDE3MzY4OSw0NDA5OSwyMzUyOCw2MTY5OSwKMTM0MTA0LDEzNDEwMywxOTgzMTMsNTkxNDksMTgxMDEzLDI3ODMwNiwyODI0NzIsMjc3ODQ4LDE3MzE5MSwxNzMxOTIsMTczMTkzLDEwMTk1MSwxNzE1MDIsMTk2MDQzLDE5ODMwNSw5NzM0NiwxMTgwNTEsOTUxMDIsNjQ4ODIsMTE5NTA1LDYzNTk1LDI5NDExOSwyNTcyNjgsNjMzNDksMjgxMTI3LDI0MDU1Myw5NTEwMSw3NTI0MCwyNzAzOSw2ODgyMywyMTUzNyw4MzQ2NCw3NTcwNywyNTI5MDQsMTcwMjE1LDIyMzAzMyw4MzExMywxMDE5NTIsMTAxOTUzLDc5NjEwLDEyNTc1NSwyNDQwMiwyNDQwMCwzMjkyNSwxOTM0MDYsNTcxNzMsMTgzMzUxLDE1NjQyMSwxMjI1MDIsMTQ1MjY4LDEzODQ4MCw2NDQyMyw2NDQyNCwzMzk4NiwxMDA4MjgsMTI5MDg5LDI5OTU0MSwyMTQwOSwyODIyMTgsMjk5NTA2LDMzMzk1NiwyOTk1NDAsMjk5NTA3LDI5OTUwOSwyOTk1MzksMjk5NTA4LDI5OTUxMCwxODU2MTIsMjIyODI1LDMyMzMzMSwyNDUzNjYsMTM1MTU1LDEzNTE1NiwxMzUxNTcsMTM1MTU4LAoxNTgyMjUsMTM1MTU5LDEzNTE2MCwxNjc2NTEsMTM1MTYxLDEzNTE2MiwxMzUxNjMsMTU4MjI2LDE1ODIyNywxMzUxNjQsMTM1MTY1LDEzNTE2NiwxMTA3MCwxMTA3NCwxNzg4MCwyNzA1NjAsMzA3MDksMzA3MDcsMzA3MTEsMzA3MTAsMzA3MDgsMTg1MjEzLDE4NTI3MywxNDYxNDMsNjM2NDgsNjM2NDksMjIxMDU2LDI2NDQ5MCwyMTExODksMTExMDU5LDIxMTE4OCw1NzU0LDI2NDQ5MSwyMDQ0NSwyMzM0NzEsMTUxMzA4LDMxMzc1MCwxNTExNTIsMjI4MDY3LDEzMDk3NSwxMzA5NzYsMjQ3MjQ0LDI3MTYyMiwyNzE4MTMsMjYxMjEwLDIxMDgxNSwyOTUwNjksMjQ2MTI3LDMxNjg1OCwyNDUyNTYsMjQ0OTUwLDE5MTkyNSwxNjc2MzcsMjM0NTQ1LDE5NzE5NiwzMDI3MzUsMjE0Mjk1LDExMDM4NiwyMjEwNTQsMjczOTYwLDI4MjExMSwzMTIyOTAsMTEzNzQ2LDMyNTU5MywyNjg4ODYsNjY1NTcsMTgzMjE1LDE3MzEwLDI4NjMxLDIwMTkzNSwyMTU4OSwyNDIwMzYsMjM4MzUxLDE2NDgxNywKMTY4MDExLDE1NDk0Niw2ODAxMiwxNjI2MTcsNjA0ODAsMTg0NDMxLDEzODY2NCwyOTQwODksMjQ5ODI3LDE5NEUzLDE0MTEyMSwxNjQ1MDIsMzE1NzEsMTk1MDAyLDIwNjc5MywxNDE5NzgsMjMzOTg1LDI1MDg5NSwyNTQwNTIsMjU0MDUzLDI1NDA1NCwyNTQwNTEsMjU0MDUwLDI1NDA1NSwxNTAxMDUsMzA0MTY5LDE1MDEwNiwxNTAxMDcsMTUwMTA4LDc2OTgwLDQxNTc3LDQ1NDY5LDM4NjY5LDEzNzY4LDEzNzc3LDE0MTg0Miw2Mjk4NSwyMTMxOTAsNDcyNCwyMjMwNTIsNTkzNjksNDM5MjcsNDM5MjgsMTI5MjQsMTk3ODUzLDEwMDM1NSw1NjIxOSwyNzY2OSwyMDk5MjgsMTAzMzcsMjAzNjQ4LDIwMzY0OSw0Nzg5NiwzMjY5MzcsMTIyNjI5LDE4NjIwNCwyMjI4MjQsMjc1ODY5LDMxMjI5NSwyNzE2NzMsMjc0NjM3LDMxNzQ2MiwxMzk3MjMsMTM5NzIyLDEyMTI1OCwyNTM3ODksMjUzNzg3LDI1Mzc4NiwyNTM3ODgsMjUzNzkwLDEwNzU5OCwxMjc5OTEsOTY2MzksMTA3NTM2LDEzMDE2OSwKMjE2NTIyLDI5NjMxNiw5NjY2MSwxNDUxODgsMzIwNDI4LDIxMzkwNCwyNjkzNDIsOTY2NTgsMTE2NjQ2LDE1OTQyOCwxNjg2MTEsMTY4NjEyLDEyMTEyMiwyMTk4NjIsOTY2NjAsMjgyMjA4LDEyNzczOCwxMjcwODMsMTU1MjgxLDE2Mjk1OSwyMjA4ODYsMjI3MzU2LDI0ODAwNywxNjM1NjYsMzA3NjQ2LDE4NjY0MSwxNDc4NDIsMjczNjQ2LDI3MzY0NywyMTc5MzIsMTA0NDQzLDk2NjU5LDE0NzU5NSwxMDY0NDIsMjQ3MTYyLDIzMTQ5MywyMTM0MjcsMjk2ODEzLDI0NjU3NSwxODI0MjMsMTYyNzc2LDIyODkwOCwxMzQ4NDAsNjM2NjcsNjM2NjgsNjM2NjksMTMwNjg2LDMzNzE3MiwyNDgzODEsMTQ3MDM2LDIzOTA5NCwyNjI3NDMsMTg5ODEwLDIzOTA5NSw3ODMxNCwxNDc3OTksMzA1OTE5LDMwNTkyNCwyMzcxNDYsMTc0MDQ5LDE0ODY0OSw1NTc2MSwxMjcwOTgsMTM0ODQxLDk2MzY4LDY3Mzc0LDQ4OTkyLDE0NjE3NiwxNzYxMDUsMzIzMzIxLDMyMzMyMiwyMzMwMzUsNDk5NTYsMjY3NjQ1LAoyNzU3ODIsMTkwMTkwLDIyNTczOSwzMTk2MSwyNjM4OCwyMzgxMSw1RTQsMTI2MjUwLDk2MzcwLDIxMDU0OSwzMjk0OTAsNDczNTUsNDczNTYsMzc5MzUsNDU1MjEsMzMxNTM2LDMzMTUzNCwzMzE1MzUsMzMxNTMzLDIxNzYwLDgzNzY5LDQ5OTc3LDQ5OTc0LDkzNDk3LDkzNDk4LDM0MzI1LDE0MDc1OSwxMTU4MDMsMTIzNzA3LDEwMDA4MSwzNTMwOSwyMzc3MDYsNjgzMTQsMjU2MDIsMTAwMzM5LDE3MDg3MywxNDM1MTYsMjk5MjQ3LDE3ODkyMSwyNjg1NzQsMjU0ODg0LDI1ODIzMiw1OTAxOCwxODI0OCw1MDYyNSw5NzI5LDM3MTY4LDM3MTY5LDIxNjY3LDE2NzQ5LDE4NjM1LDM5MzA1LDE4MDQ2LDIyMTA1NywzMDE4OTcsMzAxOTAwLDI2OTk5MCw1Mzk2OSw4MjEzLDkzOTI2LDIyMTA1NSwyMTA1NDIsMjEyNTUyLDEwMjg1MiwxMTAwOTksMjI2NzgsNjkwNzYsMTM3NTc1LDEzOTIyNCwxMDA4NTYsMjM1NzcwLDE1NDQzMCwyMzU4NjEsMjA5NzU3LDE3NzM2LDM4MzIsMTQ3MTExLDU1NzU5LAo2NDAzMSwyMzQ3NDYsOTMwNDQsOTMwNDUsMjgxMzAyLDE3MDcwMSwxNzA3MDIsMTk0Nzk2LDM0Mzg4LDE2Nzg0MSwxNzA0MTksMTc2NTcsMTc2NTUsMzk1NzksMzk1NzgsMTcwNDEyLDc3NDQ4LDgxOTYsMTEzNTcsNjk4NzcsODE5NywxNjg1MDEsMTU2NTEyLDE2MTYxMywxNTY1MDksMjA4Mjc0LDE2MTYxMiwxNjE2MTQsMjY3NjkyLDI2Nzg1MSwyNjc1NzcsMjc5NzU1LDI2NzY5MywyNjc2OTQsMjY3NTc4LDI2MjgwMSwzMzQ0OTYsMzM1ODQ0LDI3MTIxOCwyNjYxMzEsMjY2MTMyLDI2Nzk3NywyNjc1NzksMjYyODAwLDI2Mjc5OSwyNjI4MDIsMjY3NTgwLDI2Mjc5OCwyNjc2OTUsMjY3NTgxLDI3MzIzMiw4MjAzOV07dmFyIE5PPWNsYXNzIGV4dGVuZHMgXy5Ncntjb25zdHJ1Y3RvcihhKXtzdXBlcihhKX1nZXRFbmFibGVTc0VuZ2luZSgpe3JldHVybiBHTyh0aGlzLDIpfWdldEVuYWJsZUF3cigpe3JldHVybiBHTyh0aGlzLDMpfWdldEFsb2hhQXV0b0dhUm9sbG91dCgpe3JldHVybiBHTyh0aGlzLDUpfWdldEVuYWJsZUNvbmZpZ3VyYXRvcigpe3JldHVybiBHTyh0aGlzLDYpfWdldEVuYWJsZU13ZWIoKXtyZXR1cm4gR08odGhpcyw3KX1nZXRFbmFibGVDdGxDb25zZW50Q2hlY2tib3goKXtyZXR1cm4gR08odGhpcyw4KX1nZXRFbmFibGVJZnJhbWUoKXtyZXR1cm4gR08odGhpcyw5KX1nZXRFbmFibGVTY3JlZW5zaG90TnVkZ2UoKXtyZXR1cm4gR08odGhpcywxMCl9Z2V0RW5hYmxlV2ViU3RhcnR1cENvbmZpZ0VuZHBvaW50KCl7cmV0dXJuIEdPKHRoaXMsMTEpfWdldEVuYWJsZUp1bmtOdWRnZSgpe3JldHVybiBHTyh0aGlzLDEyKX1nZXRFbmFibGVDb25maWd1cmF0b3JMb2NhbGUoKXtyZXR1cm4gR08odGhpcywKMTMpfWdldEVuYWJsZVRpbnlOb1BvaW50ZXIoKXtyZXR1cm4gR08odGhpcywxNCl9Z2V0RW5hYmxlU3VwcG9ydFNlc3Npb25Mb2dnaW5nKCl7cmV0dXJuIEdPKHRoaXMsMTUpfWdldEVuYWJsZUZpbGVVcGxvYWRGb3JTY3JlZW5zaG90KCl7cmV0dXJuIEdPKHRoaXMsMTYpfWdldEVuYWJsZURpcmVjdERlZmxlY3Rpb25Gb3JTaW5nbGVDYXRlZ29yeSgpe3JldHVybiBHTyh0aGlzLDE3KX1nZXRFbmFibGVJbWFnZVNhbml0aXphdGlvbigpe3JldHVybiBHTyh0aGlzLDE4KX1nZXRFbmFibGVBbG9oYUJpbmFyeVNwbGl0KCl7cmV0dXJuIEdPKHRoaXMsMTkpfWdldEVuYWJsZURiRmVlZGJhY2tJbnRlbnRzKCl7cmV0dXJuIEdPKHRoaXMsMjApfWdldEVuYWJsZU1hcmtNYW5kYXRvcnlGaWVsZHNXaXRoUmVxdWlyZWQoKXtyZXR1cm4gR08odGhpcywyMSl9Z2V0RW5hYmxlRmVlZGJhY2tDYXRlZ29yeUN1c3RvbVVpKCl7cmV0dXJuIEdPKHRoaXMsMjIpfWdldEVuYWJsZVJlYWx0aW1lQ3RsKCl7cmV0dXJuIEdPKHRoaXMsCjIzKX1nZXRFbmFibGVBbG9oYUhlYWRsZXNzKCl7cmV0dXJuIEdPKHRoaXMsMjQpfWdldFVwZGF0ZUZlZWRiYWNrQ29uZmlybWF0aW9uQ2xhcml0eSgpe3JldHVybiBHTyh0aGlzLDI1KX1nZXRFbmFibGVWaWV3RmVlZGJhY2tSZXBvcnRzTGluaygpe3JldHVybiBHTyh0aGlzLDI2KX19O3ZhciBWTz1jbGFzcyBleHRlbmRzIF8uTXJ7Y29uc3RydWN0b3IoYSl7c3VwZXIoYSl9digpe3JldHVybiBfLk54KHRoaXMsTk8sMSl9fTt2YXIgJGhhPVsvaHR0cHM6XC9cL3NhbmRib3hcLmdvb2dsZVwuY29tXC90b29sc1wvZmVlZGJhY2svLC9odHRwczpcL1wvZmVlZGJhY2stZnJvbnRlbmQtcXVhbFthLXowLTkuXSpcLmdvb2dsZVwuY29tXC9pbmFwcC8sL2h0dHBzOlwvXC9mZWVkYmFjay1mcm9udGVuZC1xdWFsW2EtejAtOS5dKlwuZ29vZ2xlXC5jb21cL3Rvb2xzXC9mZWVkYmFjay8sL2h0dHBzOlwvXC8uKlwuZ29vZ2xldXNlcmNvbnRlbnRcLmNvbVwvaW5hcHAvXTt2YXIgT089ImFmIGFtIGFyLUVHIGFyLUpPIGFyLU1BIGFyLVNBIGFyLVhCIGFyIGF6IGJlIGJnIGJuIGJzIGNhIGNzIGN5IGRhIGRlLUFUIGRlLUNIIGRlIGVsIGVuIGVuLUdCIGVuLUFVIGVuLUNBIGVuLUlFIGVuLUlOIGVuLU5aIGVuLVNHIGVuLVhBIGVuLVhDIGVuLVpBIGVzIGVzLTQxOSBlcy1BUiBlcy1CTyBlcy1DTCBlcy1DTyBlcy1DUiBlcy1ETyBlcy1FQyBlcy1HVCBlcy1ITiBlcy1NWCBlcy1OSSBlcy1QQSBlcy1QRSBlcy1QUiBlcy1QWSBlcy1TViBlcy1VUyBlcy1VWSBlcy1WRSBldCBldSBmYSBmaSBmaWwgZnItQ0EgZnItQ0ggZnIgZ2wgZ3N3IGd1IGhlIGhpIGhyIGh1IGh5IGlkIGluIGlzIGl0IGl3IGphIGthIGtrIGttIGtuIGtvIGt5IGxuIGxvIGx0IGx2IG1rIG1sIG1uIG1vIG1yIG1zIG15IG5iIG5lIG5sIG5vIHBhIHBsIHB0IHB0LUJSIHB0LVBUIHJvIHJ1IHNpIHNrIHNsIHNxIHNyLUxhdG4gc3Igc3Ygc3cgdGEgdGUgdGggdGwgdHIgdWsgdXIgdXogdmkgemggemgtQ04gemgtSEsgemgtVFcgenUiLnNwbGl0KCIgIik7dmFyIFVPPWNsYXNzIGV4dGVuZHMgRXJyb3J7Y29uc3RydWN0b3IoKXtzdXBlcigiRm9ybSBpcyBlaXRoZXIgbG9hZGluZyBvciBhbHJlYWR5IG9wZW5lZCIpO3RoaXMubmFtZT0iRHVwbGljYXRlRm9ybUVycm9yIn19LFFPLFNPLFJPLFRPO18ucmEoInVzZXJmZWVkYmFjay5Db2xvclNjaGVtZXMiLHtpRjoxLEdDOjJ9KTtfLnJhKCJ1c2VyZmVlZGJhY2suYXBpLnN0YXJ0RmVlZGJhY2siLF8uWU8pO18ucWlhPW5ldyBfLkkoIm5hdGl2ZUFwcERlZXBsaW5rRW5kcG9pbnQiKTtfLnJpYT1NYXRoLnJhbmRvbSgpO3ZhciBzaWE9bmV3IF8uVnMoIlNUQVRJQ19BUFBfUFJPUFNfVE9LRU4iKTtfLnZQPW5ldyBfLlZzKCJUT0FTVF9PUFRJT05TIik7dmFyIG9QPV8uc2ooIm13ZWJfYzNfdG9hc3RfZHVyYXRpb25fbXMiLDVFMyksYlAsY1A9bnVsbCxbd1AsZ1BdPV8uSigib3V0Iix2b2lkIDAsIldjWmNlZSIpLFtsaWEsZlBdPV8uSih2b2lkIDAsdm9pZCAwLCJYVnl4eGYiKSxpUD1bXSxtUCxkUD1fLkwoYT0+e3ZhciBiPV8ueSgpLnJlc29sdmUoXy5JbihfLnZQKSk7cmV0dXJuIF8uSygiYzMtdG9hc3QiLHtkaXI6d1Ascm9sZTooKT0+d1AoKT09PSJpbiI/ImFsZXJ0IjoiIixjbGFzczpfLlAoeyJodWctdG9hc3QiOiEhYj8uVnUsImludmVyc2UtdGhlbWUiOiEhYj8uQ3h9KX0sYS5jaGlsZHJlbil9LCJzYiIpO2RQLmlkb21Db21wYXQ9ITA7Xy50aWE9Xy51eCgzMDc5NTMpOyh7TWc6Xy51aWEsZ2s6Xy54UH09Xy56RyhhPT5hLmNoYW5uZWxJZCkpOyh7TWc6Xy52aWEsZ2s6Xy53aWF9PV8uekcoYT0+Xy5CKGEubm90aWZpY2F0aW9uUHJlZmVyZW5jZVRvZ2dsZUJ1dHRvbj8udG9nZ2xlQnV0dG9uUmVuZGVyZXI/LmRlZmF1bHRTZXJ2aWNlRW5kcG9pbnQsXy5CeSk/LnBhcmFtcykpO18ueVA9bmV3IF8uVnMoIkxBWUVSX1RPS0VOIik7Xy56UD1fLkwoKHtVbzphLHN0YXlPcGVuT25DbGljazpiLGlzUGVyc2lzdGVudDpjLGNoaWxkcmVuOmR9KT0+Xy5LKCJkaXYiLHtjbGFzczpfLlAoeyJkaWFsb2ctZmxleC1idXR0b24iOigpPT5hPy4oKSE9PTF9KSwib246Y2xpY2siOmZ1bmN0aW9uKCl7Yj8uKCl8fGM/LigpfHxfLnkoKS5yZXNvbHZlKF8ueVApLmxkKCl9LHRhYmluZGV4OigpPT4oYj8uKCl8fGM/LigpLHZvaWQgMCl9LGQpLCJ1YiIpO18uelAuaWRvbUNvbXBhdD0hMDtfLkFQPV8uTCgoe2NoaWxkcmVuOmF9KT0+e3ZhciBiPV8ueSgpLnJlc29sdmUoXy5JbihzaWEpKT8uVUk7cmV0dXJuIF8uSygiZGl2Iix7ImFyaWEtbGl2ZSI6InBvbGl0ZSIsdGFiaW5kZXg6Yj8wOnZvaWQgMH0sYSl9LCJ2YiIpO18uQVAuaWRvbUNvbXBhdD0hMDtfLnhpYT1fLnNqKCJtd2ViX2lvc19mdWxsc2NyZWVuX3BsYXliYWNrX3RyYW5zaXRpb25fZGVsYXlfbXMiKXx8NTAwO18ueWlhPV8uc2ooIm13ZWJfaW9zX2Z1bGxzY3JlZW5fc3lzdGVtX3BhdXNlX2VwaWxzb25fbXMiKXx8MzUwO3ZhciBvaWE9Xy4kTi5YcyxwaWE9Xy4kTi5rdDsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5hUT1mdW5jdGlvbihhLGIpe3JldHVybntvcGVuUG9wdXBBY3Rpb246e3BvcHVwVHlwZToiVE9BU1QiLHBvcHVwOntub3RpZmljYXRpb25BY3Rpb25SZW5kZXJlcjp7cmVzcG9uc2VUZXh0OmF9fSwuLi4oYiE9PXZvaWQgMD97ZHVyYXRpb25IaW50TXM6Yn06e30pfX19Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLnduYT1uZXcgXy5JKCJlbnRpdHlVcGRhdGVDb21tYW5kIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uTlc9bmV3IF8uSSgic2hvd1NoZWV0Q29tbWFuZCIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLnhuYT1uZXcgXy5JKCJsaXN0Vmlld01vZGVsIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uT1c9bmV3IF8uVnMoIlNDUkVFTl9NQU5BR0VSX1RPS0VOIik7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciB5bmE7Xy5QVz1mdW5jdGlvbihhKXtyZXR1cm4geW5hW2FdPz8iRVZFTlRfU1BBTl9UWVBFX1VOS05PV04ifTsKeW5hPXtjbGljazoiRVZFTlRfU1BBTl9UWVBFX0NMSUNLIixkYmxjbGljazoiRVZFTlRfU1BBTl9UWVBFX0RCTENMSUNLIixtb3VzZWRvd246IkVWRU5UX1NQQU5fVFlQRV9NT1VTRURPV04iLG1vdXNldXA6IkVWRU5UX1NQQU5fVFlQRV9NT1VTRVVQIixtb3VzZW92ZXI6IkVWRU5UX1NQQU5fVFlQRV9NT1VTRU9WRVIiLG1vdXNlb3V0OiJFVkVOVF9TUEFOX1RZUEVfTU9VU0VPVVQiLG1vdXNlZW50ZXI6IkVWRU5UX1NQQU5fVFlQRV9NT1VTRUVOVEVSIixtb3VzZWxlYXZlOiJFVkVOVF9TUEFOX1RZUEVfTU9VU0VMRUFWRSIsbW91c2Vtb3ZlOiJFVkVOVF9TUEFOX1RZUEVfTU9VU0VNT1ZFIixjb250ZXh0bWVudToiRVZFTlRfU1BBTl9UWVBFX0NPTlRFWFRNRU5VIixrZXlkb3duOiJFVkVOVF9TUEFOX1RZUEVfS0VZRE9XTiIsa2V5dXA6IkVWRU5UX1NQQU5fVFlQRV9LRVlVUCIsa2V5cHJlc3M6IkVWRU5UX1NQQU5fVFlQRV9LRVlQUkVTUyIsdG91Y2hzdGFydDoiRVZFTlRfU1BBTl9UWVBFX1RPVUNIU1RBUlQiLAp0b3VjaGVuZDoiRVZFTlRfU1BBTl9UWVBFX1RPVUNIRU5EIix0b3VjaG1vdmU6IkVWRU5UX1NQQU5fVFlQRV9UT1VDSE1PVkUiLHRvdWNoY2FuY2VsOiJFVkVOVF9TUEFOX1RZUEVfVE9VQ0hDQU5DRUwiLHBvaW50ZXJkb3duOiJFVkVOVF9TUEFOX1RZUEVfUE9JTlRFUkRPV04iLHBvaW50ZXJ1cDoiRVZFTlRfU1BBTl9UWVBFX1BPSU5URVJVUCIscG9pbnRlcm1vdmU6IkVWRU5UX1NQQU5fVFlQRV9QT0lOVEVSTU9WRSIscG9pbnRlcm92ZXI6IkVWRU5UX1NQQU5fVFlQRV9QT0lOVEVST1ZFUiIscG9pbnRlcm91dDoiRVZFTlRfU1BBTl9UWVBFX1BPSU5URVJPVVQiLHBvaW50ZXJlbnRlcjoiRVZFTlRfU1BBTl9UWVBFX1BPSU5URVJFTlRFUiIscG9pbnRlcmxlYXZlOiJFVkVOVF9TUEFOX1RZUEVfUE9JTlRFUkxFQVZFIixwb2ludGVyY2FuY2VsOiJFVkVOVF9TUEFOX1RZUEVfUE9JTlRFUkNBTkNFTCIsZ290cG9pbnRlcmNhcHR1cmU6IkVWRU5UX1NQQU5fVFlQRV9HT1RQT0lOVEVSQ0FQVFVSRSIsCmxvc3Rwb2ludGVyY2FwdHVyZToiRVZFTlRfU1BBTl9UWVBFX0xPU1RQT0lOVEVSQ0FQVFVSRSIsc3VibWl0OiJFVkVOVF9TUEFOX1RZUEVfU1VCTUlUIixjaGFuZ2U6IkVWRU5UX1NQQU5fVFlQRV9DSEFOR0UiLGlucHV0OiJFVkVOVF9TUEFOX1RZUEVfSU5QVVQiLGZvY3VzOiJFVkVOVF9TUEFOX1RZUEVfRk9DVVMiLGJsdXI6IkVWRU5UX1NQQU5fVFlQRV9CTFVSIixyZXNldDoiRVZFTlRfU1BBTl9UWVBFX1JFU0VUIixzZWxlY3Q6IkVWRU5UX1NQQU5fVFlQRV9TRUxFQ1QiLGludmFsaWQ6IkVWRU5UX1NQQU5fVFlQRV9JTlZBTElEIixsb2FkOiJFVkVOVF9TUEFOX1RZUEVfTE9BRCIsdW5sb2FkOiJFVkVOVF9TUEFOX1RZUEVfVU5MT0FEIixiZWZvcmV1bmxvYWQ6IkVWRU5UX1NQQU5fVFlQRV9CRUZPUkVVTkxPQUQiLGRvbWNvbnRlbnRsb2FkZWQ6IkVWRU5UX1NQQU5fVFlQRV9ET01DT05URU5UTE9BREVEIixyZXNpemU6IkVWRU5UX1NQQU5fVFlQRV9SRVNJWkUiLHNjcm9sbDoiRVZFTlRfU1BBTl9UWVBFX1NDUk9MTCIsCnBhZ2VzaG93OiJFVkVOVF9TUEFOX1RZUEVfUEFHRVNIT1ciLHBhZ2VoaWRlOiJFVkVOVF9TUEFOX1RZUEVfUEFHRUhJREUiLHBsYXk6IkVWRU5UX1NQQU5fVFlQRV9QTEFZIixwYXVzZToiRVZFTlRfU1BBTl9UWVBFX1BBVVNFIixwbGF5aW5nOiJFVkVOVF9TUEFOX1RZUEVfUExBWUlORyIsd2FpdGluZzoiRVZFTlRfU1BBTl9UWVBFX1dBSVRJTkciLHNlZWtpbmc6IkVWRU5UX1NQQU5fVFlQRV9TRUVLSU5HIixzZWVrZWQ6IkVWRU5UX1NQQU5fVFlQRV9TRUVLRUQiLGVuZGVkOiJFVkVOVF9TUEFOX1RZUEVfRU5ERUQiLHZvbHVtZWNoYW5nZToiRVZFTlRfU1BBTl9UWVBFX1ZPTFVNRUNIQU5HRSIsdGltZXVwZGF0ZToiRVZFTlRfU1BBTl9UWVBFX1RJTUVVUERBVEUiLHJhdGVjaGFuZ2U6IkVWRU5UX1NQQU5fVFlQRV9SQVRFQ0hBTkdFIixkcmFnc3RhcnQ6IkVWRU5UX1NQQU5fVFlQRV9EUkFHU1RBUlQiLGRyYWc6IkVWRU5UX1NQQU5fVFlQRV9EUkFHIixkcmFnZW5kOiJFVkVOVF9TUEFOX1RZUEVfRFJBR0VORCIsCmRyYWdlbnRlcjoiRVZFTlRfU1BBTl9UWVBFX0RSQUdFTlRFUiIsZHJhZ2xlYXZlOiJFVkVOVF9TUEFOX1RZUEVfRFJBR0xFQVZFIixkcmFnb3ZlcjoiRVZFTlRfU1BBTl9UWVBFX0RSQUdPVkVSIixkcm9wOiJFVkVOVF9TUEFOX1RZUEVfRFJPUCIsYW5pbWF0aW9uc3RhcnQ6IkVWRU5UX1NQQU5fVFlQRV9BTklNQVRJT05TVEFSVCIsYW5pbWF0aW9uZW5kOiJFVkVOVF9TUEFOX1RZUEVfQU5JTUFUSU9ORU5EIixhbmltYXRpb25pdGVyYXRpb246IkVWRU5UX1NQQU5fVFlQRV9BTklNQVRJT05JVEVSQVRJT04iLHRyYW5zaXRpb25ydW46IkVWRU5UX1NQQU5fVFlQRV9UUkFOU0lUSU9OUlVOIix0cmFuc2l0aW9uc3RhcnQ6IkVWRU5UX1NQQU5fVFlQRV9UUkFOU0lUSU9OU1RBUlQiLHRyYW5zaXRpb25lbmQ6IkVWRU5UX1NQQU5fVFlQRV9UUkFOU0lUSU9ORU5EIix0cmFuc2l0aW9uY2FuY2VsOiJFVkVOVF9TUEFOX1RZUEVfVFJBTlNJVElPTkNBTkNFTCJ9Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLlFXPW5ldyBfLkkoInNob3dFbmdhZ2VtZW50UGFuZWxFbmRwb2ludCIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewovKgoKTWF0aC51dWlkLmpzICh2MS40KQpodHRwOi8vd3d3LmJyb29mYS5jb20KbWFpbHRvOnJvYmVydEBicm9vZmEuY29tCkNvcHlyaWdodCAoYykgMjAxMCBSb2JlcnQgS2llZmZlcgpEdWFsIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgYW5kIEdQTCBsaWNlbnNlcy4KKi8KdmFyIHpuYSxSVyxBbmEsQm5hLENuYSxEbmEsRW5hLFRXLEZuYSxVVyxHbmEsSG5hLFZXLEluYSxKbmEsWFcsWVcsWlcsJFcsTG5hLE1uYSxiWCxoWCxObmEsT25hLFBuYSxqWCxrWCxSbmEsbVgsU25hLG9YLHBYLFVuYSxWbmEsblgsV25hLFRuYSxsWCxxWCxZbmEsYW9hLGJvYSxjb2EsZG9hLGVvYSxzWCxmb2EsZ29hLHRYLGhvYSx1WCx2WCxpb2Esa29hLHhYLGxvYSx5WCxub2Esb29hLHBvYSxxb2EsQlgscm9hLHNvYSxDWCx0b2EsdW9hLHZvYSx3b2EseG9hLHlvYSx6b2EsQW9hLEJvYSxDb2EsSFgsSVgsRm9hLG1vYSxLWCxIb2EsSlgsSW9hLEpvYSxLb2EsTVgsTG9hLE5YLE1vYSxOb2EsT29hLFBvYSxRb2EsUm9hLFNvYSxPWCxUb2EsUFgsUVgsVm9hLFVvYSxXb2EsWG9hLFlvYSxab2EsJG9hLFZYLFVYLFdYLCRYLFhYLFlYLFpYLGFZLGFwYSxicGEsY3BhLGJZLGVZLGRZLGRwYSxmWSxlcGEsZnBhLGdwYSxocGEsZ1ksanBhLGlwYSxscGEscHBhLGpZLHFwYSxrWSxsWSxuWSxtWSwKaVkscnBhLHNwYSx1cGEscFksd3BhLG9ZLHJZLHNZLHRZLHVZLHpwYSxBcGEsd1kseFkseVksQVksQ3BhLEJZLERwYSxEWSxFcGEsRlksSFksRnBhLElZLEpZLEhwYSxLWSxNWSxJcGEsSnBhLExwYSxNcGEsTnBhLFBwYSxScGEsVHBhLFVwYSxOWSxXcGEsVnBhLFBZLFNZLE9ZLFJZLFpwYSxZcGEsYnFhLGRxYSxlcWEsZnFhLGdxYSxXWSxocWEsaXFhLGpxYSxrcWEsbHFhLG1xYSxjcWEsVlksdHFhLG5xYSx6WCx1cWEsV1csRG9hLGNaLEtuYSx4cWEsZFosZVoseXFhLHpxYSxBcWEsQnFhLENxYSxEcWEsYVgsZlosZ1gsY1gsZFgsZVgsZlgsRXFhLGdaLGhaLEZxYSxpWixHcWEsSHFhLGlYLGpaLElxYSxRbmEsWG5hLEpxYSxabmEsJG5hLHJYLExxYSxqb2EsWFksa1osTXFhLHFZLEFYO3puYT1mdW5jdGlvbihhLGIpe2I9KDAsXy55ZykoYik7Yj1fLkVmKGIsYik7Yi52PSEwO18uSmYoYSxiKTtyZXR1cm4gYX07ClJXPWZ1bmN0aW9uKGEsYil7YT1hLndhdGNoRW5kcG9pbnRTdXBwb3J0ZWRBdXRob3JpemF0aW9uVG9rZW5Db25maWc/LnZpZGVvQXV0aG9yaXphdGlvblRva2VuPy5jcmVkZW50aWFsVHJhbnNmZXJUb2tlbnN8fFtdO2ZvcihsZXQgYz0wO2M8YS5sZW5ndGg7KytjKWlmKGFbY10uc2NvcGU9PT1iKXJldHVybiBhW2NdLnRva2VufHx2b2lkIDB9OwpBbmE9ZnVuY3Rpb24oYSxiLGM9e30pe18uVmkoKCk9Pnt2YXIgZD1fLkIoYj8uY29tbWFuZE1ldGFkYXRhLF8uencpPy5yb290VmV8fF8uQihiPy5jb21tYW5kTWV0YWRhdGEsXy5ueCk/LnNjcmVlblZpc3VhbEVsZW1lbnQ/LnVpVHlwZTtpZihkKXt2YXIgZT1fLkIoYj8uY29tbWFuZE1ldGFkYXRhLF8uZWFhKTtpZihlPy5wYXJlbnRUcmFja2luZ1BhcmFtcyl7dmFyIGY9Xy5VdyhlLnBhcmVudFRyYWNraW5nUGFyYW1zKTtpZihlLnBhcmVudENzbil2YXIgaD1lLnBhcmVudENzbn1lbHNlIGMuY2xpY2tlZFZpc3VhbEVsZW1lbnQ/Zj1jLmNsaWNrZWRWaXN1YWxFbGVtZW50OmIuY2xpY2tUcmFja2luZ1BhcmFtcyYmKGY9Xy5VdyhiLmNsaWNrVHJhY2tpbmdQYXJhbXMpKTthOntlPV8uQihiLF8uQXcpO3ZhciBrPV8uQihiLF8uZGFhKTtpZihlKXtpZihrPVJXKGUsIlZJREVPIikpe2U9e3Rva2VuOmssdmlkZW9JZDplLnZpZGVvSWR9O2JyZWFrIGF9fWVsc2UgaWYoayYmKGU9UlcoaywKIlBMQVlMSVNUIikpKXtlPXt0b2tlbjplLHBsYXlsaXN0SWQ6ay5wbGF5bGlzdElkfTticmVhayBhfWU9dm9pZCAwfWM9e2N0dEF1dGhJbmZvOmUscGFyZW50Q3NuOmgsLi4uY307Xy54KCJleHBlY3RhdGlvbl9sb2dnaW5nIikmJihjLmxvZ2dpbmdFeHBlY3RhdGlvbnM9Xy5CKGI/LmNvbW1hbmRNZXRhZGF0YSxfLm54KT8ubG9nZ2luZ0V4cGVjdGF0aW9uc3x8dm9pZCAwKTtfLkRPKGEsZCxmLGMpfWVsc2UgXy5JcChuZXcgXy5YaigiRXJyb3I6IFRyeWluZyB0byBjcmVhdGUgYSBuZXcgc2NyZWVuIHdpdGhvdXQgYSByb290VmVUeXBlIixiKSl9KSgpfTtCbmE9ZnVuY3Rpb24oYSxiKXthPWBTTElfTkFNRV9ZT1VUVUJFX0VNQkVEU19XRUJfRlVMTFNDUkVFTl9SRVFVRVNUX1NMSV8ke2F9YDtfLkV5LnJlZ2lzdGVyLmhhcyhhKT9iPV8uRXkucmVnaXN0ZXIuZ2V0KGEpOihiPWIoKSxfLkV5LnJlZ2lzdGVyLnNldChhLGIpKTtyZXR1cm4gYn07Q25hPWZ1bmN0aW9uKHtzZXJ2aWNlSWQ6YX0pe3JldHVybiBhLm99OwpEbmE9ZnVuY3Rpb24oKXt2YXIgYT1fLkd5LGI9W1NXXSxjPWIubWFwKGw9PkNuYShsKSksZD1iLm1hcChsPT5hLm1hcHBpbmdzLmdldChsLnRvU3RyaW5nKCkpKS5maWx0ZXIobD0+bCk7aWYoZC5sZW5ndGg9PT1iLmxlbmd0aClyZXR1cm4gXy5LeShkLm1hcCgobCxtKT0+Xy5ueShhLGwsYlttXSkpKTt2YXIgZT1fLlZkKCkuYWYoYyk7ZD1fLklmKGMubWFwKGw9PmVbbF0pKTt2YXIgZj1kb2N1bWVudC5oaWRkZW4saD0tMSxrPV8uc2ooImdldF9hc3luY190aW1lb3V0X21zIiwtMSk7az4tMSYmKGg9c2V0VGltZW91dCgoKT0+e18uSXAobmV3IF8uWGooIk1vZHVsZSB0aW1lb3V0LiIsYyxmLGRvY3VtZW50LmhpZGRlbikpfSxrKSk7cmV0dXJuIHpuYShkLnRoZW4oKCk9PmIubWFwKGw9Pl8ubnkoYSxhLm1hcHBpbmdzLmdldChsLnRvU3RyaW5nKCkpLGwpKSkuS2cobD0+e2ZvcihsZXQgbSBvZiBhLmopbShsKTt0aHJvdyBsO30pLCgpPT57Y2xlYXJUaW1lb3V0KGgpfSl9OwpFbmE9ZnVuY3Rpb24oKXtyZXR1cm4gRG5hKCkudGhlbihhPT5hWzBdKX07VFc9ZnVuY3Rpb24oYSxiKXthLkRmPWI7Zm9yKGxldCBjIG9mIGEuZGF0YSliKGMpO2EuZGF0YT1bXX07Rm5hPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aDw9Mj9BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhLGIpOkFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGEsYixjKX07VVc9ZnVuY3Rpb24oYSl7dmFyIGI9W107Zm9yKGxldCBkPTA7ZDxhcmd1bWVudHMubGVuZ3RoO2QrKyl7bGV0IGU9YXJndW1lbnRzW2RdO2lmKEFycmF5LmlzQXJyYXkoZSkpZm9yKGxldCBmPTA7ZjxlLmxlbmd0aDtmKz04MTkyKXt2YXIgYz1GbmEoZSxmLGYrODE5Mik7Yz1VVy5hcHBseShudWxsLGMpO2ZvcihsZXQgaD0wO2g8Yy5sZW5ndGg7aCsrKWIucHVzaChjW2hdKX1lbHNlIGIucHVzaChlKX1yZXR1cm4gYn07CkduYT1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IF8uQmYoZnVuY3Rpb24oYil7dmFyIGM9YS5sZW5ndGgsZD1bXTtpZihjKXt2YXIgZT1mdW5jdGlvbihoLGssbCl7Yy0tO2RbaF09az97ZnVsZmlsbGVkOiEwLHZhbHVlOmx9OntmdWxmaWxsZWQ6ITEscmVhc29uOmx9O2M9PTAmJmIoZCl9O2ZvcihsZXQgaD0wO2g8YS5sZW5ndGg7aCsrKXt2YXIgZj1hW2hdO18uSGYoZixfLkRhKGUsaCwhMCksXy5EYShlLGgsITEpKX19ZWxzZSBiKGQpfSl9O0huYT1mdW5jdGlvbihhKXt2YXIgYj1fLk16KCJMT0dHRURfSU4iLGZ1bmN0aW9uKGMpe2EuYXBwbHkodm9pZCAwLGFyZ3VtZW50cyk7Xy5OeihiKX0pfTtWVz1mdW5jdGlvbihhLGIpe3JldHVybigpPT57dmFyIGM9Xy55KCk7Yy5yZXNvbHZlKF8uSW4oYSkpfHxfLkp6KGMse2phOmEsUGE6YSxbXy5Mbl06Yn0pO3JldHVybiBjLnJlc29sdmUoYSl9fTsKSW5hPWZ1bmN0aW9uKGEpe2lmKFdXPT09dm9pZCAwKXRocm93IEVycm9yKCJzYiIpO2lmKFdXKWZvcihsZXQgW2IsY11vZiBXVylhKGIsYyk7Xy5Odi5hZGQoYSk7V1c9dm9pZCAwfTtKbmE9ZnVuY3Rpb24oYSl7c3dpdGNoKGEpe2Nhc2UgImNhbmFyeSI6cmV0dXJuIkNMSUVOVF9DQU5BUllfU1RBVEVfQ0FOQVJZIjtjYXNlICJjb250cm9sIjpyZXR1cm4iQ0xJRU5UX0NBTkFSWV9TVEFURV9DT05UUk9MIjtjYXNlICJub25lIjpyZXR1cm4iQ0xJRU5UX0NBTkFSWV9TVEFURV9OT05FIjtkZWZhdWx0OnJldHVybiJDTElFTlRfQ0FOQVJZX1NUQVRFX1VOS05PV04ifX07WFc9ZnVuY3Rpb24oYSxiPSIiKXt2YXIgYz1bXTtmb3IobGV0IGQgaW4gYSl7aWYoIWEuaGFzT3duUHJvcGVydHkoZCkpY29udGludWU7bGV0IGU9YiE9PSIiP2IrIi4iK2Q6ZDt0eXBlb2YgYVtkXT09PSJvYmplY3QiP2MucHVzaCguLi5YVyhhW2RdLGUpKTpjLnB1c2goW2UsYVtkXV0pfWMuc29ydCgpO3JldHVybiBjfTsKWVc9ZnVuY3Rpb24oYSl7dmFyIGI9W107Zm9yKGxldCBjIG9mIGEuZXZlbnRzLnZhbHVlcygpKWIucHVzaChjKTtyZXR1cm4gYn07Wlc9ZnVuY3Rpb24oYSl7Xy5GeT09bnVsbCYmKF8uRnk9bmV3IEtuYSk7dmFyIGI9Xy5GeTt2YXIgYz1iLnY7YS5kaW1lbnNpb25zPWEuZGltZW5zaW9uc3x8e307YS5kaW1lbnNpb25zLmNzbj1fLmlxKCl8fCIiO3ZhciBkPVhXKGEuZGltZW5zaW9ucykuam9pbigiOyIpO2EucmVjb3JkcyE9bnVsbCYmKGMuZXZlbnRzLmhhcyhkKT9jLmV2ZW50cy5nZXQoZCkucmVjb3Jkcz8ucHVzaCguLi5hLnJlY29yZHMpOmMuZXZlbnRzLnNldChkLGEpKTtiLmouZW5hYmxlZHx8Yi5qLnN0YXJ0KCk7Yi5vKys7Yi5vPj0xMDAmJmIuZmx1c2goKX07JFc9ZnVuY3Rpb24oYSl7YT1hLmtleXx8YS5pZDtpZighYSl0aHJvdyBFcnJvcigiZmMiKTtyZXR1cm4gYX07CkxuYT1mdW5jdGlvbigpe2lmKGFYKXJldHVybiBhWCgpO2FYPV8uJGwoIlBlcnNpc3RlbnRFbnRpdHlTdG9yZURiIix7c2U6e0VudGl0eVN0b3JlOntQZDoxfSxFbnRpdHlBc3NvY2lhdGlvblN0b3JlOntQZDoyfX0sc2hhcmVkOiExLHVwZ3JhZGUoYSxiKXtiKDEpJiZfLm9sKF8ua2woYSwiRW50aXR5U3RvcmUiLHtrZXlQYXRoOiJrZXkifSksImVudGl0eVR5cGUiLCJlbnRpdHlUeXBlIik7YigyKSYmKGE9Xy5rbChhLCJFbnRpdHlBc3NvY2lhdGlvblN0b3JlIix7a2V5UGF0aDpbInBhcmVudEVudGl0eUtleSIsImNoaWxkRW50aXR5S2V5Il19KSxfLm9sKGEsImJ5UGFyZW50RW50aXR5S2V5IiwicGFyZW50RW50aXR5S2V5IiksXy5vbChhLCJieUNoaWxkRW50aXR5S2V5IiwiY2hpbGRFbnRpdHlLZXkiKSl9LHZlcnNpb246M30pO3JldHVybiBhWCgpfTtNbmE9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uQ2woTG5hKCksYSl9OwpiWD1mdW5jdGlvbihhKXtyZXR1cm4gd2luZG93LkludDMyQXJyYXk/bmV3IEludDMyQXJyYXkoYSk6QXJyYXkoYSl9OwpoWD1mdW5jdGlvbihhKXt2YXIgYj1hLmtleSxjPWEuY291bnRlclswXV5iWzBdLGQ9YS5jb3VudGVyWzFdXmJbMV0sZT1hLmNvdW50ZXJbMl1eYlsyXSxmPWEuY291bnRlclszXV5iWzNdO2Zvcih2YXIgaD0zO2g+PTAmJiEoYS5jb3VudGVyW2hdPS1+YS5jb3VudGVyW2hdKTtoLS0pO2Zvcih2YXIgayxsLG09NDttPDQwOyloPWNYW2M+Pj4yNF1eZFhbZD4+MTYmMjU1XV5lWFtlPj44JjI1NV1eZlhbZiYyNTVdXmJbbSsrXSxrPWNYW2Q+Pj4yNF1eZFhbZT4+MTYmMjU1XV5lWFtmPj44JjI1NV1eZlhbYyYyNTVdXmJbbSsrXSxsPWNYW2U+Pj4yNF1eZFhbZj4+MTYmMjU1XV5lWFtjPj44JjI1NV1eZlhbZCYyNTVdXmJbbSsrXSxmPWNYW2Y+Pj4yNF1eZFhbYz4+MTYmMjU1XV5lWFtkPj44JjI1NV1eZlhbZSYyNTVdXmJbbSsrXSxjPWgsZD1rLGU9bDthPWEubztoPWJbNDBdO2FbMF09Z1hbYz4+PjI0XV5oPj4+MjQ7YVsxXT1nWFtkPj4xNiYyNTVdXmg+PjE2JjI1NTthWzJdPWdYW2U+PjgmCjI1NV1eaD4+OCYyNTU7YVszXT1nWFtmJjI1NV1eaCYyNTU7aD1iWzQxXTthWzRdPWdYW2Q+Pj4yNF1eaD4+PjI0O2FbNV09Z1hbZT4+MTYmMjU1XV5oPj4xNiYyNTU7YVs2XT1nWFtmPj44JjI1NV1eaD4+OCYyNTU7YVs3XT1nWFtjJjI1NV1eaCYyNTU7aD1iWzQyXTthWzhdPWdYW2U+Pj4yNF1eaD4+PjI0O2FbOV09Z1hbZj4+MTYmMjU1XV5oPj4xNiYyNTU7YVsxMF09Z1hbYz4+OCYyNTVdXmg+PjgmMjU1O2FbMTFdPWdYW2QmMjU1XV5oJjI1NTtoPWJbNDNdO2FbMTJdPWdYW2Y+Pj4yNF1eaD4+PjI0O2FbMTNdPWdYW2M+PjE2JjI1NV1eaD4+MTYmMjU1O2FbMTRdPWdYW2Q+PjgmMjU1XV5oPj44JjI1NTthWzE1XT1nWFtlJjI1NV1eaCYyNTV9OwpObmE9YXN5bmMgZnVuY3Rpb24oYSxiLGMpe2Euanx8KGEuaj1hd2FpdCBhLm8uaW1wb3J0S2V5KCJyYXciLGEudix7bmFtZToiQUVTLUNUUiJ9LCExLFsiZW5jcnlwdCJdKSk7YT1hd2FpdCBhLm8uZW5jcnlwdCh7bmFtZToiQUVTLUNUUiIsY291bnRlcjpjLGxlbmd0aDoxMjh9LGEuaixiKTtyZXR1cm4gbmV3IFVpbnQ4QXJyYXkoYSl9O09uYT1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIEVycm9yP25ldyBpWCgiVU5LTk9XTl9FTkNPREVfRVJST1IiLHtvcmlnaW5hbE1lc3NhZ2U6YS5tZXNzYWdlfSk6bmV3IGlYKCJVTktOT1dOX0VOQ09ERV9FUlJPUiIpfTtQbmE9ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBFcnJvcj9uZXcgaVgoIlVOS05PV05fREVDT0RFX0VSUk9SIix7b3JpZ2luYWxNZXNzYWdlOmEubWVzc2FnZX0pOm5ldyBpWCgiVU5LTk9XTl9ERUNPREVfRVJST1IiKX07CmpYPWZ1bmN0aW9uKGEsYil7YT1hIGluc3RhbmNlb2YgaVg/YTpiKGEpO18uR3AoYSk7dGhyb3cgYTt9O2tYPWZ1bmN0aW9uKGEpe2E9KG5ldyBUZXh0RW5jb2RlcikuZW5jb2RlKGEpLnN1YmFycmF5KDAsMTYpO3ZhciBiPW5ldyBVaW50OEFycmF5KDE2KTtiLnNldChhKTtyZXR1cm4gYn07Um5hPWZ1bmN0aW9uKGEpe3ZhciBiPVFuYVthXTtpZihiKXJldHVybiBiO18uSXAobmV3IF8uWGooIkVudGl0eSBtb2RlbCBub3QgZm91bmQuIix7ZW50aXR5VHlwZTphfSkpfTttWD1mdW5jdGlvbihhLGIpe3JldHVybiBsWChhLm8sYi52ZXJzaW9uKS5kZWNvZGUoYi5kYXRhLGIua2V5KX07U25hPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gYS5qLm9iamVjdFN0b3JlKCJFbnRpdHlTdG9yZSIpLmdldChiKS50aGVuKGQ9PntpZihkKXtpZihjJiZkLmVudGl0eVR5cGUhPT1jKXRocm93IEVycm9yKCJoYyIpO3JldHVybiBtWChhLGQpfX0pfTsKb1g9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPSRXKGIpO3JldHVybiBuWChhLGQpLnRoZW4oKCk9PlRuYShhLGIsYykpfTtwWD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YS52W2NdO2R8fChkPW5ldyBTZXQsYS52W2NdPWQpO2QuYWRkKGIpfTsKVW5hPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD0kVyhiKSxlPWxYKGEubywxKSxmPXsuLi5ifTtyZXR1cm4gYS5qLm9iamVjdFN0b3JlKCJFbnRpdHlTdG9yZSIpLmdldChkKS50aGVuKGg9PntpZihoKXtpZihoLmVudGl0eVR5cGUhPT1jKXRocm93IEVycm9yKCJoYyIpO2YuZW50aXR5TWV0YWRhdGF8fChoPW1YKGEsaCksZi5lbnRpdHlNZXRhZGF0YT1oLmVudGl0eU1ldGFkYXRhKX19KS50aGVuKCgpPT57dmFyIGg9e2tleTpkLGVudGl0eVR5cGU6YyxkYXRhOmUuZW5jb2RlKGYsZCksdmVyc2lvbjoxfTtyZXR1cm4gXy5Way5hbGwoW18ubGwoYS5qLm9iamVjdFN0b3JlKCJFbnRpdHlTdG9yZSIpLGgpLG9YKGEsZixjKV0pfSkudGhlbigoKT0+e3BYKGEsZCxjKTtyZXR1cm4gZH0pfTsKVm5hPWZ1bmN0aW9uKGEsYil7dmFyIGM9Xy5HSChiKS5lbnRpdHlUeXBlO3JldHVybiBfLlZrLmFsbChbYS5qLm9iamVjdFN0b3JlKCJFbnRpdHlTdG9yZSIpLmRlbGV0ZShiKSxuWChhLGIpXSkudGhlbigoKT0+e3BYKGEsYixjKX0pfTtuWD1mdW5jdGlvbihhLGIpe3JldHVybiBhLmoub2JqZWN0U3RvcmUoIkVudGl0eUFzc29jaWF0aW9uU3RvcmUiKS5pbmRleCgiYnlQYXJlbnRFbnRpdHlLZXkiKS5kZWxldGUoSURCS2V5UmFuZ2Uub25seShiKSl9OwpXbmE9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9bFgoYS5vLDEpO3JldHVybiBTbmEoYSxiLGQpLnRoZW4oZj0+e2lmKGZ8fF8ueCgid2ViX2VuYWJsZV9lbnRpdHlfdXBzZXJ0X29uX3VwZGF0ZSIpKXtmPV8uaE0oZnx8e30sYyk7dmFyIGg9e2tleTpiLGVudGl0eVR5cGU6ZCxkYXRhOmUuZW5jb2RlKGYsYiksdmVyc2lvbjoxfTtyZXR1cm4gXy5Way5hbGwoW18ubGwoYS5qLm9iamVjdFN0b3JlKCJFbnRpdHlTdG9yZSIpLGgpLG9YKGEsZixkKV0pfX0pLnRoZW4oKCk9PntwWChhLGIsZCk7cmV0dXJuIGJ9KX07ClRuYT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9JFcoYik7Yz1SbmEoYyk7aWYoIWMpcmV0dXJuIF8uVmsucmVzb2x2ZShbXSk7Yj1uZXcgYyhiKTthPWEuai5vYmplY3RTdG9yZSgiRW50aXR5QXNzb2NpYXRpb25TdG9yZSIpO2M9W107Zm9yKGxldCBlIG9mIGIubygpKWMucHVzaChfLmxsKGEse3BhcmVudEVudGl0eUtleTpkLGNoaWxkRW50aXR5S2V5OmV9KSk7cmV0dXJuIF8uVmsuYWxsKGMpLnRoZW4oZT0+ZS5tYXAoZj0+ZlsxXSkpfTtsWD1mdW5jdGlvbihhLGI9MCl7YT1hLmpbYl07aWYoIWEpdGhyb3cgYj1uZXcgaVgoIklOVkFMSURfRU5DT0RFUl9WRVJTSU9OIix7SXA6Yn0pLF8uR3AoYiksYjtyZXR1cm4gYX07cVg9ZnVuY3Rpb24oYSxiKXtmb3IobGV0IGMgb2YgYS5vYnNlcnZlcnMpYyhiKX07ClluYT1hc3luYyBmdW5jdGlvbihhLGIpe3ZhciBjPWF3YWl0IE1uYShhLnRva2VuKSxkO2M9YXdhaXQgXy5pbChjLFsiRW50aXR5U3RvcmUiLCJFbnRpdHlBc3NvY2lhdGlvblN0b3JlIl0sInJlYWR3cml0ZSIsZT0+e2Q9bmV3IFhuYShlLGEuaik7cmV0dXJuIGIoZCl9KTtpZihkKXtsZXQgZT1kLnY7T2JqZWN0LmtleXMoZSkubGVuZ3RoPjAmJihhLmNoYW5uZWwucG9zdE1lc3NhZ2UoZSkscVgoYSxlKSl9cmV0dXJuIGN9O2FvYT1hc3luYyBmdW5jdGlvbigpe3RyeXtsZXQgYj1hd2FpdCBfLlBsKCk7aWYoYiYmXy5XaigpJiZ0eXBlb2YgXy51LkJyb2FkY2FzdENoYW5uZWwhPT0idW5kZWZpbmVkIil7dmFyIGE9bmV3IFpuYTtyZXR1cm4gbmV3ICRuYShiLGEpfX1jYXRjaChiKXtiIGluc3RhbmNlb2YgRXJyb3ImJl8uR3AoYil9fTsKYm9hPWZ1bmN0aW9uKGEpe2E9YS5vcHRpb25zPy5wZXJzaXN0ZW5jZU9wdGlvbjtyZXR1cm4gYT09PSJFTlRJVFlfUEVSU0lTVEVOQ0VfT1BUSU9OX1BFUlNJU1QifHxhPT09IkVOVElUWV9QRVJTSVNURU5DRV9PUFRJT05fSU5NRU1PUllfQU5EX1BFUlNJU1QifTsKY29hPWFzeW5jIGZ1bmN0aW9uKGEpe3JYfHwoclg9YW9hKCkpO3ZhciBiPWF3YWl0IHJYO2ImJmF3YWl0IFluYShiLGM9Pnt2YXIgZD17fTtmb3IobGV0IGUgb2YgYSl7aWYoIWUuZW50aXR5S2V5fHwhYm9hKGUpKWNvbnRpbnVlO2xldCBmPV8uZE0oZS5wYXlsb2FkKSxoPXZvaWQgMDtlLnR5cGU9PT0iRU5USVRZX01VVEFUSU9OX1RZUEVfUkVQTEFDRSImJihoPSgpPT5VbmEoYyxlLnBheWxvYWRbZl0sZikpO2UudHlwZT09PSJFTlRJVFlfTVVUQVRJT05fVFlQRV9ERUxFVEUiJiYoaD0oKT0+Vm5hKGMsZS5lbnRpdHlLZXkpKTtlLnR5cGU9PT0iRU5USVRZX01VVEFUSU9OX1RZUEVfVVBEQVRFIiYmKGg9KCk9PlduYShjLGUuZW50aXR5S2V5LGUucGF5bG9hZFtmXSxmKSk7aCYmKGRbZS5lbnRpdHlLZXldPWRbZS5lbnRpdHlLZXldP2RbZS5lbnRpdHlLZXldLnRoZW4oaCk6aCgpKX1yZXR1cm4gXy5Way5hbGwoT2JqZWN0LnZhbHVlcyhkKSl9KX07CmRvYT1hc3luYyBmdW5jdGlvbihhLGIpeyEoYT1hLm11dGF0aW9ucyl8fGEubGVuZ3RoPD0wfHwoYiYmYi5kaXNwYXRjaChfLmtBKHt0eXBlOiJFTlRJVFlfTE9BREVEIixwYXlsb2FkOmF9KSksYXdhaXQgY29hKGEpLGEubGVuZ3RoPTApfTtlb2E9ZnVuY3Rpb24oYSl7dmFyIGI9Xy51QygpO2IuT2M9ITA7Yi5zZXNzaW9uSWQ9YS5zZXNzaW9uSWR8fCIiO2IuZGg9YS5kaDthLldoIT1udWxsJiYoYi5XaD1hLldoKX07c1g9ZnVuY3Rpb24oYSl7Xy51QygpLnByb2Nlc3NvcnMucHVzaChhKX07Zm9hPWZ1bmN0aW9uKCl7Xy5WcC5zdWJzY3JpYmUoImhhbmRsZUVycm9yIixhPT57dHJ5e2ZvcihsZXQgYiBpbiBfLmVJKXRyeXtsZXQgYz1fLmVJW2JdO3R5cGVvZiBfLmVJW2JdPT09ImZ1bmN0aW9uIiYmKGM9YygpKTthLnBhcmFtc1tiXT10eXBlb2YgXy5lSVtiXT09PSJvYmplY3QiP0pTT04uc3RyaW5naWZ5KGMpOlN0cmluZyhjKX1jYXRjaChjKXtfLklwKGMpfX1jYXRjaChiKXtfLklwKGIpfX0pfTsKZ29hPWZ1bmN0aW9uKCl7fTt0WD1mdW5jdGlvbihhLGIsYz0wKXsoYz1fLmlxKGMpKSYmYSYmXy55SihjLGEsYil9O2hvYT1mdW5jdGlvbihhKXtyZXR1cm4gVVcoT2JqZWN0LmtleXMoYSkubWFwKGI9PmI9PT0icGxheWxpc3RFZGl0RW5kcG9pbnQiP18uQihhLF8uQXopLmNsaWVudEFjdGlvbnN8fFtdOmFbYl0uYWN0aW9uc3x8YVtiXS5jbGllbnRBY3Rpb25zfHxbXSkpfTt1WD1mdW5jdGlvbihhKXthPV8uQihhPy5jb21tYW5kTWV0YWRhdGEsXy56dyk7cmV0dXJuIGE/LnVybD9hLnVybDpudWxsfTt2WD1mdW5jdGlvbihhLGIpe2ZvcihsZXQgYyBvZiBhKV8uQUooYyxiLCEwKX07CmlvYT1mdW5jdGlvbigpe18uSk09d1g7VFcoXy5nRSwoe2NvbW1hbmQ6YSxzb3VyY2VEYXRhOmIsY29tbWFuZENvbnRleHQ6Y30pPT57Xy55KCkucmVzb2x2ZShfLlVEKS5yZXNvbHZlQ29tbWFuZChhLF8uWUQoYixjKSl8fChhPW5ldyBfLlhqKCJDb21tYW5kIG5vdCBoYW5kbGVkIGJ5IENvbW1hbmRIYW5kbGVyIixPYmplY3Qua2V5cyhhKSxjKSxfLkdwKGEpKX0pfTtrb2E9ZnVuY3Rpb24oKXt2YXIgYT1fLlBFKGpvYSk7cmV0dXJuIGEhPT12b2lkIDA/YTpfLlJFPD0yOTl9O3hYPWZ1bmN0aW9uKCl7dmFyIGE9ZG9jdW1lbnQ7cmV0dXJuIF8udmIoWyJmdWxsc2NyZWVuY2hhbmdlIiwid2Via2l0ZnVsbHNjcmVlbmNoYW5nZSIsIm1vemZ1bGxzY3JlZW5jaGFuZ2UiLCJNU0Z1bGxzY3JlZW5DaGFuZ2UiXSxiPT5gb24ke2IudG9Mb3dlckNhc2UoKX1gaW4gYSl9Owpsb2E9ZnVuY3Rpb24oKXt2YXIgYT1kb2N1bWVudDtyZXR1cm4gXy52YihbImZ1bGxzY3JlZW5lcnJvciIsIndlYmtpdGZ1bGxzY3JlZW5lcnJvciIsIm1vemZ1bGxzY3JlZW5lcnJvciIsIk1TRnVsbHNjcmVlbkVycm9yIl0sYj0+YG9uJHtiLnRvTG93ZXJDYXNlKCl9YGluIGEpfTt5WD1mdW5jdGlvbihhLGIsYyl7Xy5yaWE8Xy5zaigid2ViX3NsaV9sb2dfd2FybmluZ19zYW1wbGVfc2l6ZV9yYXRlIiwuMDAxKSYmXy5JcChuZXcgXy5YaihgW1NMSV0gIiR7YX0iIGVycm9yYCx7c2xpTmFtZTphLGRpbWVuc2lvbnM6YixkZXRhaWxzOmN9KSl9Owpub2E9ZnVuY3Rpb24oKXtmdW5jdGlvbiBhKCl7Y3x8Xy5JcChuZXcgXy5YaigiRnVsbHNjcmVlbiBjaGFuZ2Ugc2xpIGNhbGxlZCBiZWZvcmUgc3RhcnQuIikpfXZhciBiPXpYLGM9ITEsZD17anc6bW9hfS5qdygiZnVsbHNjcmVlbl9yZXF1ZXN0IiksZT1sb2EoKXx8ImZ1bGxzY3JlZW5lcnJvciI7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoZSxmPT57YSgpO2QuemcoIkZBSUxVUkUiKTt5WCgiZnVsbHNjcmVlbiByZXF1ZXN0IixiKCkse2V2ZW50OmZ9KTtjPSExfSk7ZT14WCgpfHwiZnVsbHNjcmVlbmNoYW5nZSI7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoZSwoKT0+e2EoKTtkLnpnKCJTVUNDRVNTIik7Yz0hMX0pO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJmdWxsc2NyZWVucmVxdWVzdCIsKCk9PntjPSEwO2QuRHIoYigpKX0pfTsKb29hPWZ1bmN0aW9uKGEpe3ZhciBiPWEuZmFsbGJhY2tFbmRwb2ludCxjPWEudGltZW91dE1zO2lmKCFfLngoIm13ZWJfYzNfbml0cmF0ZV9jbGllbnRfb3Blbl9hcHBfZmFsbGJhY2tfa3MiKSYmYS51cmwpe3ZhciBkPV8uWmIoYS51cmwsImZlYXR1cmUiKXx8IiI7ZD1kLnN0YXJ0c1dpdGgoImUxNW1fIil8fGQuc3RhcnRzV2l0aCgiZTFkXyIpfHxkLnN0YXJ0c1dpdGgoImUzZF8iKTtfLmZyJiZkJiYhYiYmKGE9YS51cmwsYS5zdGFydHNXaXRoKCJ2bmQueW91dHViZTovLyIpP2E9YS5yZXBsYWNlKCJ2bmQueW91dHViZTovLyIsImh0dHBzOi8vIik6YS5zdGFydHNXaXRoKCJ5b3V0dWJlOi8vIikmJihhPWEucmVwbGFjZSgieW91dHViZTovLyIsImh0dHBzOi8vIikpLF8uWGIoYSwwLCJyZWRpcmVjdF9hcHBfc3RvcmVfaW9zIixhLnNlYXJjaChfLlliKSk+PTB8fChhPV8uRk8oYSwicmVkaXJlY3RfYXBwX3N0b3JlX2lvcyIsIjEiKSksYj1fLndOKGEpLCFjfHxjPD0wKSYmKGM9Xy5zaigibXdlYl9kZWVwX2xpbmtfZmFsbGJhY2tfdGltZW91dF9tcyIsCjNFMykpfXJldHVybntmYWxsYmFja0VuZHBvaW50OmIsdGltZW91dE1zOmN9fTtwb2E9ZnVuY3Rpb24oYSxiKXtfLngoIm13ZWJfYXBwX2J1dHRvbl9sb2dfa3MiKXx8dFgoXy50aWEpO2IuZXZlbnQ/LnN0b3BQcm9wYWdhdGlvbigpO2E9Xy5CKGEsXy5xaWEpO2E/LnVybCYmKHdpbmRvdy5sb2NhdGlvbj1hLnVybCk7dmFyIHtmYWxsYmFja0VuZHBvaW50OmMsdGltZW91dE1zOmR9PWE/b29hKGEpOntmYWxsYmFja0VuZHBvaW50OnZvaWQgMCx0aW1lb3V0TXM6dm9pZCAwfTtBWD09PXZvaWQgMCYmZCYmZD4wJiYoQVg9c2V0VGltZW91dCgoKT0+e0FYPXZvaWQgMDtjJiZfLkFKKGMsYi5zb3VyY2VEYXRhLCEwKX0sZCksXy5OTSh3aW5kb3csInZpc2liaWxpdHljaGFuZ2UiLCgpPT57QVgmJih3aW5kb3cuY2xlYXJUaW1lb3V0KEFYKSxBWD12b2lkIDApfSkpfTsKcW9hPWZ1bmN0aW9uKGEpe3ZhciBiPXhYKCk7YiYmd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoYiwoKT0+e3ZhciBjPSEhXy5aTygpO2N8fF8uTU8oIi55dHdQbGF5ZXJCb3R0b21Db250cm9sc0Z1bGxzY3JlZW5CdXR0b25XcmFwcGVyIC5mdWxsc2NyZWVuLWljb24gLmJ1dHRvbiIpO2Euc2V0RmF1eEZ1bGxzY3JlZW4oYyl9KX07Qlg9ZnVuY3Rpb24oYSl7dmFyIGI9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2dvb2dsZS1mZWVkYmFjayIpO2ImJihfLkJOKGIsYSksYSYmXy5NTygoKT0+Yi5xdWVyeVNlbGVjdG9yKCJpZnJhbWUiKT8uY29udGVudERvY3VtZW50Py5xdWVyeVNlbGVjdG9yKCIudXZGZWVkYmFja0Zvcm1mb3JtLWluaXRpYWwtZm9jdXMtZWxlbWVudCwgLnV2RmVlZGJhY2tSc2FkaWFsb2dkaWFsb2cgLnNjU2hhcmVkTWF0ZXJpYWxidXR0b25yb290IiksNSx7cmw6ITB9KSl9Owpyb2E9ZnVuY3Rpb24oKXt2YXIgYT1fLlhELnJlc3BvbnNlPy5yZXNwb25zZT8ucmVzcG9uc2VDb250ZXh0Py5zZXJ2aWNlVHJhY2tpbmdQYXJhbXM/LmZpbHRlcihjPT5jLnNlcnZpY2U9PT0iR0ZFRURCQUNLIilbMF0ucGFyYW1zPy5maWx0ZXIoYz0+Yy5rZXk9PT0iZSIpWzBdLGI9bmV3IFNldChfLncoIkZFWFBfRVhQRVJJTUVOVFMiLFtdKSk7KGE/LnZhbHVlPy5zcGxpdCgiLCIpfHxbXSkuZm9yRWFjaChjPT57Yi5hZGQoTnVtYmVyKGMpKX0pO3JldHVybiBBcnJheS5mcm9tKGIpLmpvaW4oIiwiKX07CnNvYT1mdW5jdGlvbigpe3JldHVybiBfLldEKCgpPT57dmFyIGE9Xy5YRC5yZXNwb25zZT8ucmVzcG9uc2U/LnJlc3BvbnNlQ29udGV4dD8uc2VydmljZVRyYWNraW5nUGFyYW1zPy5maWx0ZXIoYz0+Yy5zZXJ2aWNlPT09IkdGRUVEQkFDSyIpWzBdLnBhcmFtcz8uZmlsdGVyKGM9PmMua2V5PT09InByZW1pdW1fbWVtYmVyc2hpcCIpWzBdLGI9Xy5YRC5yZXNwb25zZT8ucGxheWVyUmVzcG9uc2U/LnJlc3BvbnNlQ29udGV4dD8uc2VydmljZVRyYWNraW5nUGFyYW1zPy5maWx0ZXIoYz0+Yy5zZXJ2aWNlPT09IkdGRUVEQkFDSyIpWzBdLnBhcmFtcz8uZmlsdGVyKGM9PmMua2V5PT09InByZW1pdW1fbWVtYmVyc2hpcCIpWzBdO3JldHVybiBhP2EudmFsdWU6Yj9iLnZhbHVlOm51bGx9KX07CkNYPWZ1bmN0aW9uKGEpeyhuZXcgXy5meShhLm9sZFVSTCkpLnY9PT0iI2ZlZWRiYWNrIiYmd2luZG93LmxvY2F0aW9uLmhhc2ghPT0iI2ZlZWRiYWNrIiYmKEJYKCExKSwoYT13aW5kb3cuR09PR0xFX0ZFRURCQUNLX0RFU1RST1lfRlVOQ1RJT04pJiZhKCkpfTt0b2E9ZnVuY3Rpb24oKXtfLkZKLnRoZW4oKCk9Pnt3aW5kb3cubG9jYXRpb24uaGFzaD09PSIjZmVlZGJhY2siJiYoXy5ZTT9fLiRNKCIiKTpfLlpNKCkpO3JldHVybiBfLkZKfSl9O3VvYT1mdW5jdGlvbigpe3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJoYXNoY2hhbmdlIixDWCk7dG9hKCk7QlgoITEpO18uRXAoInVzZXJGZWVkYmFja0V2ZW50Iix7fSl9O3ZvYT1mdW5jdGlvbigpe3JldHVybntwcm9kdWN0SWQ6Ijc3NTIyIixsb2NhbGU6Xy53KCJIVE1MX0xBTkciLCJlbiIpLGFsbG93Tm9uTG9nZ2VkSW5GZWVkYmFjazohMCxidWNrZXQ6IkMzIixjYWxsYmFjazp1b2Esb25Mb2FkQ2FsbGJhY2s6KCk9PntCWCghMCl9fX07CndvYT1mdW5jdGlvbihhKXt2YXIgYj12b2EoKSxjPXtjbGllbnRBcHBWZXJzaW9uOl8udygiQ0xJRU5UX0FQUF9WRVJTSU9OIiwiIiksZXhwZXJpbWVudHM6cm9hKCksbG9nZ2VkX2luOl8udFAoKSxEZXZpY2U6Xy5iYygpLHByZW1pdW1fbWVtYmVyc2hpcDpzb2EoKX07Xy5WTSgpfHxfLldNKCk7YSYmYS5mb3JFYWNoKGQ9PnsoZD1kLnVzZXJGZWVkYmFja0VuZHBvaW50UHJvZHVjdFNwZWNpZmljVmFsdWVEYXRhKSYmZC5rZXkmJihjW2Qua2V5XT1kLnZhbHVlKX0pO18uVU4oKS50aGVuKCgpPT57Xy4kTSgiZmVlZGJhY2siKTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiaGFzaGNoYW5nZSIsQ1gpO18uWU8oYixjKX0pfTt4b2E9ZnVuY3Rpb24oYSl7dmFyIGI9bmV3IERYO2IuYWJvcnQoYSk7cmV0dXJuIGIuc2lnbmFsfTsKeW9hPWZ1bmN0aW9uKCl7aWYodGhpcy5hYm9ydGVkKXRocm93IHRoaXMucmVhc29uPz9uZXcgRE9NRXhjZXB0aW9uKCJzaWduYWwgaXMgYWJvcnRlZCB3aXRob3V0IHJlYXNvbiIsIkFib3J0RXJyb3IiKTt9O3pvYT1mdW5jdGlvbihhKXt2YXIgYj1uZXcgRFg7Zm9yKGxldCBjIG9mIGEpaWYoYy5hYm9ydGVkKXtiLmFib3J0KGMucmVhc29uKTticmVha31lbHNlIEVYLnNldChiLnNpZ25hbCxiKSxGWC5hZGQoYyxiLnNpZ25hbCk7cmV0dXJuIGIuc2lnbmFsfTtBb2E9ZnVuY3Rpb24oKXtmb3IobGV0IGEgb2YgRlguZ2V0KHRoaXMpKUVYLmdldChhKS5hYm9ydCh0aGlzLnJlYXNvbil9O0JvYT1mdW5jdGlvbihhKXt2YXIgYj1uZXcgRFg7c2V0VGltZW91dCgoKT0+e2IuYWJvcnQobmV3IERPTUV4Y2VwdGlvbigic2lnbmFsIHRpbWVkIG91dCIsIlRpbWVvdXRFcnJvciIpKX0sYSk7cmV0dXJuIGIuc2lnbmFsfTsKQ29hPWZ1bmN0aW9uKCl7dmFyIGE9W10sYjt2YXIgYz1jfHxHWC5sZW5ndGg7Zm9yKGI9MDtiPDg7YisrKWFbYl09R1hbMHxNYXRoLnJhbmRvbSgpKmNdO3JldHVybiBhLmpvaW4oIiIpfTtIWD1mdW5jdGlvbihhKXtmb3IobGV0IFssYl1vZiBPYmplY3QuZW50cmllcyhEb2EpKXtsZXQgYz1iO2lmKGM9PT0iU0xJX1NUQVRVU18iK2EpcmV0dXJuIGN9cmV0dXJuIlNMSV9TVEFUVVNfVU5LTk9XTiJ9O0lYPWZ1bmN0aW9uKGEsYixjKXtiPUhYKGIpO1pXKHtkaW1lbnNpb25zOmMscmVjb3Jkczpbe25hbWU6YSxzdGF0ZToiU0xJX1NUQVRFX0VORCIsc3RhdHVzOmJ9XX0pfTtGb2E9ZnVuY3Rpb24oYSl7cmV0dXJuIEJuYShhLCgpPT5uZXcgRW9hKGEpKX07bW9hPWZ1bmN0aW9uKGEpe3JldHVybiBGb2EoYSl9O0tYPWZ1bmN0aW9uKGEsYil7SlgoYSxgJHtifSB3YXMgY2FsbGVkIGJ1dCBub3Qgc2V0YCl9O0hvYT1mdW5jdGlvbihhKXtyZXR1cm4gR29hLmluZGV4T2YoYSk+LTF9OwpKWD1mdW5jdGlvbihhLGIsYyl7Yz1jIT09dm9pZCAwP09iamVjdC5rZXlzKGEpLmZpbHRlcihjKTpPYmplY3Qua2V5cyhhKTthPW5ldyBfLlhqKGBbQ29tbWFuZCBIYW5kbGVyXSAke2J9YCx7ZmlsdGVyZWRDb21tYW5kTmFtZXM6YyxvcmlnaW5hbENvbW1hbmQ6YX0pO18uR3AoYSl9O0lvYT1mdW5jdGlvbihhLGIpe3ZhciBjPV8uQihhLF8uTkopO2lmKGMmJihjPWJbYy5zaWduYWxdKSlyZXR1cm4gYygpO2ZvcihsZXQgZCBvZiBPYmplY3Qua2V5cyhhKSlpZihiW2RdJiYoYT1iW2RdKSlyZXR1cm4gYSgpfTtKb2E9ZnVuY3Rpb24oYSxiLGM9ITEsZD0hMSxlPVtdKXtMWC5pbnN0YW5jZT1uZXcgTFgoYSxiLGMsZCxlKX07CktvYT1mdW5jdGlvbihhKXtpZighYS5EJiZfLndDKCJjb21tYW5kIikpe2xldCBiPWEucmVzb2x2ZUNvbW1hbmQ7YS5yZXNvbHZlQ29tbWFuZD1mdW5jdGlvbihjLGQpe2E6e2ZvcihlIGluIGMpaWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGMsZSkpe3ZhciBlPXtjb21tYW5kVHlwZTplfTticmVhayBhfWU9e319cmV0dXJuIF8ueUMoImNvbW1hbmQiLGUsYi5iaW5kKHRoaXMsYyxkKSl9O2EuRD0hMH19OwpNWD1mdW5jdGlvbihhLGIsYyl7IWM/Lm1kJiZhLmomJihiLmNsaWNrVHJhY2tpbmdQYXJhbXM/KGM9Yz8uZm9ybT8uZWxlbWVudCxhLmouY2xpY2tDb21tYW5kKGIsbnVsbCxjJiZjLmdldFNjcmVlbkxheWVyJiZjLmdldFNjcmVlbkxheWVyKCkpKTpiLmNsaWNrVHJhY2tpbmdQYXJhbXM/YS5qLmNsaWNrQ29tbWFuZChiKTohXy54KCJkaXNhYmxlX2NsaWNrZWRfdmlzdWFsX2VsZW1lbnRfaW5fY29tbWFuZF9oYW5kbGVyIikmJmM/LmNsaWNrZWRWaXN1YWxFbGVtZW50JiZfLndKKGEuaixjLmNsaWNrZWRWaXN1YWxFbGVtZW50KSl9OwpMb2E9ZnVuY3Rpb24oYSxiLGMpe2lmKCFhLkIpcmV0dXJue2hhbmRsZWQ6ITF9O3ZhciBkPUlvYShiLGEuQik7cmV0dXJuIGQ/KChhLksuc29tZShlPT4hIV8uQihiLGUpKXx8Yz8uUHB8fCFhLkkpJiZNWChhLGIsYykse2hhbmRsZWQ6ITAsWms6KGFzeW5jKCk9Pnthd2FpdCAoZCBpbnN0YW5jZW9mIFByb21pc2U/YXdhaXQgZDpkKS5yZXNvbHZlKGIsYyl9KSgpfSk6e2hhbmRsZWQ6ITF9fTsKTlg9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPU1vYShiKTtpZighYz8uVEspe2xldCBmPUxvYShhLGIsYyk7aWYoZi5oYW5kbGVkKXJldHVybiBmfWlmKGQpcmV0dXJuIE5vYShhLGIsYyk7aWYoIWEudilyZXR1cm4gSlgoYiwiVW5oYW5kbGVkIGNvbW1hbmQgYnkgYnVpbGRDb21tYW5kUGF5bG9hZCIpLHtoYW5kbGVkOiExfTt2YXIgZT1hLnYoYixjKTtjPy5FaSYmKGUuRWk9Yy5FaSk7aWYoZS50eXBlPT09MCl7aWYoIWEubmF2aWdhdGUpcmV0dXJuIEtYKGIsIm5hdmlnYXRlIikse2hhbmRsZWQ6ITF9O2lmKCFfLkIoZS5jb21tYW5kPy5jb21tYW5kTWV0YWRhdGEsXy56dyk/LnVybClyZXR1cm4gSlgoYiwiUGFnZSByZXF1ZXN0cyBuZWVkIHRvIHNwZWNpZnkgYSB1cmwiKSx7aGFuZGxlZDohMX07aWYoT29hKGEsZS5jb21tYW5kKSlyZXR1cm57aGFuZGxlZDohMX07Xy54KCJsb2dnaW5nX2F2b2lkX2Jsb2NraW5nX2R1cmluZ19uYXZpZ2F0aW9uIikmJl8uaW8oKS50cmFuc2l0aW9uKCJhcHBsaWNhdGlvbl9uYXZpZ2F0aW5nIik7CmI9YS5uYXZpZ2F0ZShlKXx8W107ZD1Qcm9taXNlLnJlc29sdmUoR25hKGIpLnRoZW4oKCk9PnthLm8uZGVsZXRlKGUuY29tbWFuZCl9KSk7YS5qJiYhYS5ZJiZBbmEoYS5qLGUuY29tbWFuZCx7Y2xpY2tlZFZpc3VhbEVsZW1lbnQ6Yz8uY2xpY2tlZFZpc3VhbEVsZW1lbnQsZmw6YixsYXllcjplLmxheWVyLGF1dG9tYXRlZExvZ0V2ZW50U291cmNlOjR9KTtyZXR1cm57aGFuZGxlZDohMCxaazpkfX1pZihlLnR5cGU9PT0xKXJldHVybiBLWChiLCJoYW5kbGVTZXJ2aWNlUmVxdWVzdCIpLHtoYW5kbGVkOiExfTtlLnR5cGU9PT0yJiZLWChiLCJzZW5kQWN0aW9uIik7cmV0dXJue2hhbmRsZWQ6ITF9fTtNb2E9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5CKGEsXy56eik/LnNpZ25hbD09PSJDTElFTlRfU0lHTkFMIjtyZXR1cm4hIV8uQihhLF8uU0QpfHxifTsKTm9hPWZ1bmN0aW9uKGEsYixjKXt2YXIgZCxlPV8uQihiLF8uU0QpO2U/ZD1lPy5jb21tYW5kc3x8W106Xy5CKGIsXy56eik/LnNpZ25hbD09PSJDTElFTlRfU0lHTkFMIiYmKGQ9Xy5CKGIsXy56eik/LmFjdGlvbnN8fFtdKTtpZihkKXsoZT1Qb2EoYSxkKSkmJk1YKGEsYixjKTtiPVtdO2ZvcihsZXQgZiBvZiBkKXRyeXtkPXsuLi5jfTtlJiYoZC5tZD0hMCk7bGV0IGg9TlgoYSxmLGQpO2guaGFuZGxlZCYmYi5wdXNoKGguWmspfWNhdGNoKGgpe2ggaW5zdGFuY2VvZiBFcnJvciYmXy5HcChoKX1yZXR1cm57aGFuZGxlZDohMCxaazpQcm9taXNlLmFsbFNldHRsZWQoYikudGhlbigoKT0+e30pfX1KWChiLCJDb3VsZCBub3QgaGFuZGxlIHRoZSBtZXRhIGNvbW1hbmQiKTtyZXR1cm57aGFuZGxlZDohMX19O09vYT1mdW5jdGlvbihhLGIpe2lmKGEuby5oYXMoYikpcmV0dXJuITA7YS5vLmFkZChiKTtyZXR1cm4hMX07ClBvYT1mdW5jdGlvbihhLGIpe3JldHVybiBiLmV2ZXJ5KGM9PmEuTS5zb21lKGQ9PiEhXy5CKGMsZCkpKX07UW9hPWZ1bmN0aW9uKGEsYil7YT1hLmdldEF2YWlsYWJsZUF1ZGlvVHJhY2tzKCk7aWYoYS5sZW5ndGgpcmV0dXJuIGE/LmZpbmQoYz0+Yz8uZ2V0TGFuZ3VhZ2VJbmZvKCk/LmdldElkKCk9PT1iKX07Um9hPWZ1bmN0aW9uKGEsYixjKXthPV8uJE8oYSk7aWYoYS5sZW5ndGgpcmV0dXJuIGM/YS5maW5kKGQ9PmQudHJhbnNsYXRpb25MYW5ndWFnZT9kLnRyYW5zbGF0aW9uTGFuZ3VhZ2UubGFuZ3VhZ2VDb2RlPT09YjohMSk6YT8uZmluZChkPT5kLmxhbmd1YWdlQ29kZT09PWIpfTsKU29hPWZ1bmN0aW9uKGEpe3ZhciBiPWEuZ2V0QXZhaWxhYmxlQXVkaW9UcmFja3MoKTtpZihiPy5sZW5ndGgpe3ZhciBjPWEuZ2V0QXVkaW9UcmFjaygpO2E9e2xpc3RJdGVtczpbLi4uYi5tYXAoZD0+KHtsaXN0SXRlbVZpZXdNb2RlbDp7dGl0bGU6e2NvbnRlbnQ6ZC5nZXRMYW5ndWFnZUluZm8oKS5nZXROYW1lKCl9LGlzU2VsZWN0ZWQ6ZC5nZXRMYW5ndWFnZUluZm8oKS5nZXRJZCgpPT09Yz8uZ2V0TGFuZ3VhZ2VJbmZvKCkuZ2V0SWQoKSxzZWxlY3Rpb25TdHlsZToiTElTVF9JVEVNX1NFTEVDVElPTl9TVFlMRV9ERUZBVUxUIixyZW5kZXJlckNvbnRleHQ6e2NvbW1hbmRDb250ZXh0OntvblRhcDp7aW5uZXJ0dWJlQ29tbWFuZDp7c2lnbmFsU2VydmljZUVuZHBvaW50OntzaWduYWw6IkNMSUVOVF9TSUdOQUwiLGFjdGlvbnM6W3thdWRpb1RyYWNrU2VsZWN0QWN0aW9uQ29tbWFuZDp7bGFuZ3VhZ2VDb2RlOmQuZ2V0TGFuZ3VhZ2VJbmZvKCkuZ2V0SWQoKX19XX19fX19fX0pKV0sCnZpc2libGVFbGVtZW50Q291bnQ6NX07cmV0dXJue3Nob3dTaGVldENvbW1hbmQ6e3BhbmVsTG9hZGluZ1N0cmF0ZWd5OntpbmxpbmVDb250ZW50OntzaGVldFZpZXdNb2RlbDp7aGVhZGVyOntwYW5lbEhlYWRlclZpZXdNb2RlbDp7dGl0bGU6e2NvbnRlbnQ6Xy5hQSgiQVVESU9fVFJBQ0siLHZvaWQgMCwiQXVkaW8gVHJhY2siKX19fSxjb250ZW50OntsaXN0Vmlld01vZGVsOmF9fX19fX19fTtPWD1mdW5jdGlvbihhKXtyZXR1cm4gYS5nZXRPcHRpb24oImNhcHRpb25zIiwidHJhY2tsaXN0Iix7aW5jbHVkZUFzcjohMH0pfTtUb2E9ZnVuY3Rpb24oYSl7dmFyIGI9T1goYSk7aWYoYj8ubGVuZ3RoKXJldHVybiBiO2EubG9hZE1vZHVsZSgiY2FwdGlvbnMiKTtyZXR1cm4gT1goYSl9OwpQWD1mdW5jdGlvbihhKXt2YXIgYj1hLmdldE9wdGlvbigiY2FwdGlvbnMiLCJ0cmFjayIpO2lmKGIpcmV0dXJuIGI7YS5sb2FkTW9kdWxlKCJjYXB0aW9ucyIpO3JldHVybiBhLmdldE9wdGlvbigiY2FwdGlvbnMiLCJ0cmFjayIpfTtRWD1mdW5jdGlvbihhLGIpe3JldHVybntwYW5lbEhlYWRlclZpZXdNb2RlbDp7dGl0bGU6e2NvbnRlbnQ6Xy5hQShhLHZvaWQgMCxiKX19fX07ClZvYT1mdW5jdGlvbihhKXt2YXIgYj1Ub2EoYSk7aWYoYj8ubGVuZ3RoKXt2YXIgYz1QWChhKTthPXtsaXN0SXRlbXM6W3tsaXN0SXRlbVZpZXdNb2RlbDp7dGl0bGU6e2NvbnRlbnQ6Xy5hQSgiUExBWUVSX0NBUFRJT05fT0ZGIix2b2lkIDAsIk9mZiIpfSxpc1NlbGVjdGVkOiFjPy5sYW5ndWFnZUNvZGUsc2VsZWN0aW9uU3R5bGU6IkxJU1RfSVRFTV9TRUxFQ1RJT05fU1RZTEVfREVGQVVMVCIscmVuZGVyZXJDb250ZXh0Ontjb21tYW5kQ29udGV4dDp7b25UYXA6e2lubmVydHViZUNvbW1hbmQ6e3NpZ25hbFNlcnZpY2VFbmRwb2ludDp7c2lnbmFsOiJDTElFTlRfU0lHTkFMIixhY3Rpb25zOlt7Y2FwdGlvbkxhbmd1YWdlU2VsZWN0QWN0aW9uQ29tbWFuZDp7bGFuZ3VhZ2VDb2RlOiIifX0se2hpZGVTaGVldENvbW1hbmQ6e319XX19fX19fX0sLi4uYi5tYXAoZD0+KHtsaXN0SXRlbVZpZXdNb2RlbDp7dGl0bGU6e2NvbnRlbnQ6ZC5kaXNwbGF5TmFtZX0saXNTZWxlY3RlZDpkLmRpc3BsYXlOYW1lPT09CmM/LmRpc3BsYXlOYW1lLHNlbGVjdGlvblN0eWxlOiJMSVNUX0lURU1fU0VMRUNUSU9OX1NUWUxFX0RFRkFVTFQiLHJlbmRlcmVyQ29udGV4dDp7Y29tbWFuZENvbnRleHQ6e29uVGFwOntpbm5lcnR1YmVDb21tYW5kOntzaWduYWxTZXJ2aWNlRW5kcG9pbnQ6e3NpZ25hbDoiQ0xJRU5UX1NJR05BTCIsYWN0aW9uczpbe2NhcHRpb25MYW5ndWFnZVNlbGVjdEFjdGlvbkNvbW1hbmQ6e2xhbmd1YWdlQ29kZTpkLmxhbmd1YWdlQ29kZX19LHtoaWRlU2hlZXRDb21tYW5kOnt9fV19fX19fX19KSkse2xpc3RJdGVtVmlld01vZGVsOnt0aXRsZTp7Y29udGVudDpfLmFBKCJBVVRPX1RSQU5TTEFURSIsdm9pZCAwLCJBdXRvLXRyYW5zbGF0ZSIpfSxpc1NlbGVjdGVkOiEhYy50cmFuc2xhdGlvbkxhbmd1YWdlLHNlbGVjdGlvblN0eWxlOiJMSVNUX0lURU1fU0VMRUNUSU9OX1NUWUxFX0RFRkFVTFQiLC4uLighIWMudHJhbnNsYXRpb25MYW5ndWFnZSYme3NlbGVjdGlvblRleHQ6e2NvbnRlbnQ6Yz8udHJhbnNsYXRpb25MYW5ndWFnZT8ubGFuZ3VhZ2VOYW1lfHwKIiJ9fSkscmVuZGVyZXJDb250ZXh0Ontjb21tYW5kQ29udGV4dDp7b25UYXA6e2lubmVydHViZUNvbW1hbmQ6e3NpZ25hbFNlcnZpY2VFbmRwb2ludDp7c2lnbmFsOiJDTElFTlRfU0lHTkFMIixhY3Rpb25zOltVb2EoYSldfX19fX19fV0sdmlzaWJsZUVsZW1lbnRDb3VudDo1fTtyZXR1cm57c2hvd1NoZWV0Q29tbWFuZDp7cGFuZWxMb2FkaW5nU3RyYXRlZ3k6e2lubGluZUNvbnRlbnQ6e3NoZWV0Vmlld01vZGVsOntoZWFkZXI6UVgoIlBMQVlFUl9DQVBUSU9OIiwiQ2FwdGlvbnMiKSxjb250ZW50OntsaXN0Vmlld01vZGVsOmF9fX19fX19fTsKVW9hPWZ1bmN0aW9uKGEpe3ZhciBiPV8uYVAoYSk7aWYoIWI/Lmxlbmd0aCl0aHJvdyBFcnJvcigiYmUiKTt2YXIgYz1QWChhKTthPXtsaXN0SXRlbXM6Wy4uLmIuZmlsdGVyKGQ9PiFkLmxhbmd1YWdlQ29kZT8uc3RhcnRzV2l0aCgiZW4iKSkubWFwKGQ9Pih7bGlzdEl0ZW1WaWV3TW9kZWw6e3RpdGxlOntjb250ZW50OmQubGFuZ3VhZ2VOYW1lfHwiIn0saXNTZWxlY3RlZDpkLmxhbmd1YWdlTmFtZT09PWM/LnRyYW5zbGF0aW9uTGFuZ3VhZ2U/Lmxhbmd1YWdlTmFtZSxzZWxlY3Rpb25TdHlsZToiTElTVF9JVEVNX1NFTEVDVElPTl9TVFlMRV9ERUZBVUxUIixyZW5kZXJlckNvbnRleHQ6e2NvbW1hbmRDb250ZXh0OntvblRhcDp7aW5uZXJ0dWJlQ29tbWFuZDp7c2lnbmFsU2VydmljZUVuZHBvaW50OntzaWduYWw6IkNMSUVOVF9TSUdOQUwiLGFjdGlvbnM6W3tjYXB0aW9uTGFuZ3VhZ2VTZWxlY3RBY3Rpb25Db21tYW5kOntsYW5ndWFnZUNvZGU6ZC5sYW5ndWFnZUNvZGUsaXNBdXRvVHJhbnNsYXRlZDohMH19LAp7aGlkZVNoZWV0Q29tbWFuZDp7fX1dfX19fX19fSkpXSx2aXNpYmxlRWxlbWVudENvdW50OjV9O3JldHVybntzaG93U2hlZXRDb21tYW5kOntwYW5lbExvYWRpbmdTdHJhdGVneTp7aW5saW5lQ29udGVudDp7c2hlZXRWaWV3TW9kZWw6e2hlYWRlcjpRWCgiQVVUT19UUkFOU0xBVEUiLCJBdXRvLXRyYW5zbGF0ZSIpLGNvbnRlbnQ6e2xpc3RWaWV3TW9kZWw6YX19fX19fX07V29hPWZ1bmN0aW9uKGEpe3ZhciBiPV8uVncoKTtpZihiKXt2YXIgYz17d2ViQ2xpZW50Q29tcG9uZW50c0RhdGE6e2NvbXBvbmVudHM6QXJyYXkuZnJvbShhLmlkcyxkPT4oe2lkOmR9KSl9fTthLmlkcy5jbGVhcigpO18uaHgoKS52aXN1YWxFbGVtZW50U3RhdGVDaGFuZ2VkKGIsYyl9fTsKWG9hPWZ1bmN0aW9uKGEpe3ZhciBiPXpYO2EuYWRkRXZlbnRMaXN0ZW5lcigib25TdGF0ZUNoYW5nZSIsYz0+e2lmKGEpe3ZhciBkPWEuZ2V0VmlkZW9EYXRhKCkudmlkZW9faWQ7ZCE9PVJYJiZjPT09MSYmKFJYPWQsU1gubyhiKCkpLFRYLm8oYigpKSl9fSk7YS5hZGRFdmVudExpc3RlbmVyKCJvbkVycm9yIixjPT57U1guaihiKCkpO3lYKCJwbGF5ZXIgZXJyb3IiLGIoKSx7ZXJyb3JDb2RlOmN9KX0pO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJwbGF5YmFjay11bnBsYXlhYmxlIixjPT57VFguaihiKCkpO3lYKCJwbGF5ZXIgdW5wbGF5YWJsZSIsYigpLHtyZWFzb246Yy5kZXRhaWw/LnJlYXNvbn0pfSl9O1lvYT1hc3luYyBmdW5jdGlvbihhLGIpe3ZhciBjPWEuai5nZXQoYik7aWYoYylyZXR1cm4gYy5wcm9taXNlO2M9bmV3IF8uY3M7YS5qLnNldChiLGMpO3JldHVybiBjLnByb21pc2V9Owpab2E9YXN5bmMgZnVuY3Rpb24oYSxiKXt2YXIgYz1hLk9tLmdldChiKTtyZXR1cm4gYz9jOllvYShhLGIpfTskb2E9YXN5bmMgZnVuY3Rpb24oYSxiKXtpZihhLnBhbmVsTG9hZGluZ1N0cmF0ZWd5Py5yZXF1ZXN0VGVtcGxhdGUpdHJ5e2xldCBjPWF3YWl0IGEuby5RaShiKTtpZihjKXJldHVybiBjLmNvbnRlbnQ7Xy5HcChFcnJvcigiY2UiKSl9Y2F0Y2goYyl7Xy5HcChjKX19O1ZYPWZ1bmN0aW9uKGEsYil7cmV0dXJuIFVYKGEpPy5vdyhiKT8/Yn07VVg9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uWk8oKSYmYS5NP2EuTTphLmNvbnRhaW5lcn07V1g9ZnVuY3Rpb24oYSl7YS5ZJiYoY2xlYXJUaW1lb3V0KGEuWSksYS5ZPXZvaWQgMCk7YS5CJiYoY2xlYXJUaW1lb3V0KGEuQiksYS5CPXZvaWQgMCl9OwokWD1hc3luYyBmdW5jdGlvbihhLGIsYyxkPWMpe3ZhciBlPXtzdGFjazpbXSxlcnJvcjp2b2lkIDAsaGFzRXJyb3I6ITF9O3RyeXtsZXQgZj1fLlp0LGg9YXdhaXQgYS5kbSgpO18uVnooZSxfLnZNKGYpKTtpZihoKWlmKGEubyl7aWYoYS5jdXJyZW50VGFyZ2V0PT09YylyZXR1cm47WFgoYSk7WVgoYSk7YXdhaXQgVVgoYSk/LkplKCl9ZWxzZSBpZighXy54KCJkZWxheV9zaGVldF9vcGVuX2tpbGxzd2l0Y2giKSl7aWYoXy54KCJ3ZWJfY2xvc2Vfc2hlZXRfaWZfc2FtZV90YXJnZXRfa2lsbHN3aXRjaCIpJiZjJiZhLmN1cnJlbnRUYXJnZXQ9PT1jKXtVWChhKT8uSmUoKTtyZXR1cm59YS52PXtkYXRhOmIsdGFyZ2V0OlZYKGEsYyl9O3JldHVybn1iLnZpZXdNb2RlbCYmKGI9e3ZpZXdNb2RlbDpiLnZpZXdNb2RlbCxVcjpiLlVyLGV4cGFuZFRvRnVsbFdpZHRoOmIuZXhwYW5kVG9GdWxsV2lkdGgsb3BlblRvU2lkZTpiLm9wZW5Ub1NpZGV9KTtVWChhKT8ud2coYixjLGQpO2EuY3VycmVudFRhcmdldD0KYzthLm8/KGEuSSgpLGEuY3VycmVudFRhcmdldD8uYWRkRXZlbnRMaXN0ZW5lcigibW91c2VlbnRlciIsYS5JKSxhLmN1cnJlbnRUYXJnZXQ/LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLGEuWiksWlgoYSkpOmEuRCYmWlgoYSl9Y2F0Y2goZil7ZS5lcnJvcj1mLGUuaGFzRXJyb3I9ITB9ZmluYWxseXtfLld6KGUpfX07WFg9ZnVuY3Rpb24oYSl7YS5jdXJyZW50VGFyZ2V0Py5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZWVudGVyIixhLkkpO2EuY3VycmVudFRhcmdldD8ucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsYS5aKX07WVg9ZnVuY3Rpb24oYSl7dmFyIGI9VVgoYSk/LlhwKCk7Yj8ucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2VlbnRlciIsYS5VKTtiPy5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIixhLkspfTsKWlg9ZnVuY3Rpb24oYSl7dmFyIGI9VVgoYSk/LlhwKCk7Yj8uYWRkRXZlbnRMaXN0ZW5lcigibW91c2VlbnRlciIsYS5VKTtiPy5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIixhLkspfTthWT1hc3luYyBmdW5jdGlvbihhKXtpZihhLm8pe2lmKGEuailyZXR1cm47WFgoYSk7WVgoYSl9ZWxzZSBhLkQmJihZWChhKSxhLksoKSk7YXdhaXQgVVgoYSk/LkplKCk7YS5jdXJyZW50VGFyZ2V0PXZvaWQgMDthLmo9ITE7YS5vPSExO2EuaGlkZURlbGF5TXM9MDthLnNob3dEZWxheU1zPTA7YS5EPSExO2EudiYmIV8ueCgiZGVsYXlfc2hlZXRfb3Blbl9raWxsc3dpdGNoIikmJihhd2FpdCBhLndnKGEudi5kYXRhLGEudi50YXJnZXQpLGEudj12b2lkIDApfTsKYXBhPWZ1bmN0aW9uKGEpe3ZhciBiPVtdLGM9MDtyZXR1cm57Y2xlYXI6ZnVuY3Rpb24oKXtjPWIubGVuZ3RoPTB9LHB1c2g6ZnVuY3Rpb24oZCl7YltjXT1kO2M9KGMrMSklYX0sWng6ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24qKCl7dmFyIGQ9Yi5sZW5ndGg7Zm9yKGxldCBlPTA7ZTxkO2UrKyl5aWVsZCBiWyhjK2UpJWRdfSgpfX19O2JwYT1mdW5jdGlvbihhKXthLnlsfHwoYS55bD1bXSk7dmFyIGI9YS55bC5tYXAoXy5QVyksYz1uZXcgU2V0KGIpLGQ9YXBhKGEuYnVmZmVyU2l6ZSk7cmV0dXJue2ZsdXNoOmZ1bmN0aW9uKCl7dmFyIGU9QXJyYXkuZnJvbShkLlp4KCkpO2QuY2xlYXIoKTtlPWUubWFwKGY9Pih7bmFtZTpmLm5hbWUsdGltZXN0YW1wOmYuc3RhcnRUaW1lLGF0dHJpYnV0ZXM6Zi5hdHRyaWJ1dGVzfSkpO3JldHVybiBKU09OLnN0cmluZ2lmeShlKX0sR20oZSl7ZS5uYW1lPT09ImV2ZW50IiYmYy5oYXMoZS5hdHRyaWJ1dGVzLnR5cGUpfHxkLnB1c2goZSl9fX07CmNwYT1mdW5jdGlvbihhKXt2YXIge2ZsdXNoOmIsR206Y309YnBhKGEpO3NYKHtHbTpjfSk7Xy5WcC5zdWJzY3JpYmUoImhhbmRsZUVycm9yIixkPT57dHJ5e2QucGFyYW1zLmJyZWFkY3J1bWJzPWIoKX1jYXRjaChlKXtfLkdwKGUsIldBUk5JTkciKX19KX07Ylk9ZnVuY3Rpb24oKXtfLlN6KCJ3ZWJfdHJhY2luZ19hY3Rpb24iKTtfLlR6KCJ3ZWJfdHJhY2luZ19hY3Rpb24iLHt9LHZvaWQgMCwiTEFURU5DWV9BQ1RJT05fV0VCX1RSQUNJTkciKX07ZVk9ZnVuY3Rpb24oKXtpZihjWSlyZXR1cm4id2ViX3RyYWNpbmdfYWN0aW9uIjtkWSgpO3NldEludGVydmFsKGRZLDZFNSk7Y1k9ITA7cmV0dXJuIndlYl90cmFjaW5nX2FjdGlvbiJ9O2RZPWZ1bmN0aW9uKCl7Xy5Teigid2ViX3RyYWNpbmdfYWN0aW9uIik7Xy5Ueigid2ViX3RyYWNpbmdfYWN0aW9uIix7fSx2b2lkIDAsIkxBVEVOQ1lfQUNUSU9OX1dFQl9UUkFDSU5HIil9OwpkcGE9ZnVuY3Rpb24oYSxiPWVZKCksYyl7cmV0dXJuKDAsXy5jdCkoYS5uYW1lLChhLmVuZFRpbWU/P2Euc3RhcnRUaW1lKS1hLnN0YXJ0VGltZSxhLnN0YXJ0VGltZSx7d2ViVHJhY2luZzp7W2EubmFtZV06YS5hdHRyaWJ1dGVzfX0sYyxiLHtzcGFuU3RhdHVzOmEuc3RhdHVzLHJvb3RTcGFuTm9uY2U6dm9pZCAwLHF1OnZvaWQgMH0pfTtmWT1mdW5jdGlvbihhLGIsYyxkKXtjPWRwYShhLGIsYyk7aWYoYS5jaGlsZHJlbilmb3IobGV0IGUgb2YgYS5jaGlsZHJlbilmWShlLGIsYyxkfHxjKX07CmVwYT1mdW5jdGlvbihhKXt2YXIgYj1nb2EuYmluZChudWxsLCJ5dC50ZWxlbWV0cnlfZXh0ZW5zaW9uIik7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLGM9PntjLmRhdGEmJnR5cGVvZiBjLmRhdGE9PT0ib2JqZWN0IiYmKGM9Yy5kYXRhLGMuZnJvbT09PSJleHRlbnNpb24iJiZjLmFwcD09PSJ5dC50ZWxlbWV0cnkiJiYoYigiUmVjZWl2ZWQgbWVzc2FnZSBmcm9tIGV4dGVuc2lvbiIsYyksYS5vbk1lc3NhZ2UoYykpKX0pO3JldHVybiBmdW5jdGlvbihjLGQpe2M9e2FwcDoieXQudGVsZW1ldHJ5Iixmcm9tOiJhcHAiLGtleTpjLHBheWxvYWQ6ZH07YigiU2VuZGluZyBtZXNzYWdlIHRvIGV4dGVuc2lvbiIsYyk7d2luZG93LnBvc3RNZXNzYWdlKGMsIioiKX19OwpmcGE9ZnVuY3Rpb24oKXt2YXIgYT1lcGEoe29uTWVzc2FnZSgpe319KSxiPVtdO3JldHVybntscihjKXtjLnBhcmVudElkPT1udWxsJiZiLnB1c2goYyk9PT0xJiZzZXRUaW1lb3V0KCgpPT57dmFyIGQ9Wy4uLmJdO2IubGVuZ3RoPTA7YSgic3BhbnNSZXBvcnRlZCIse3NwYW5zOmR9KX0sM0UzKX19fTtncGE9ZnVuY3Rpb24oKXt2YXIgYT13aW5kb3cuZmV0Y2g7d2luZG93LmZldGNoPSguLi5iKT0+e3ZhciBbYyxkPXt9XT1iLGU9Xy55QygiaHR0cEV2ZW50Iix7bWV0aG9kOmQubWV0aG9kfHwiR0VUIixwYXRoOmdZKGMpLHR5cGU6ImZldGNoIn0se2FjdGl2ZTohMX0pO3JldHVybiBhKC4uLmIpLnRoZW4oZj0+e2UuRGUoe3N0YXR1c0NvZGU6Zi5zdGF0dXMsc3RhdHVzVGV4dDpmLnN0YXR1c1RleHR9KTtlLmVuZCgpO3JldHVybiBmfSkuY2F0Y2goZj0+e2UuZW5kKCJTUEFOX1NUQVRVU19FUlJPUiIpO3Rocm93IGY7fSl9fTsKaHBhPWZ1bmN0aW9uKCl7dmFyIGE9WE1MSHR0cFJlcXVlc3QucHJvdG90eXBlLm9wZW4sYj1YTUxIdHRwUmVxdWVzdC5wcm90b3R5cGUuc2VuZDtYTUxIdHRwUmVxdWVzdC5wcm90b3R5cGUub3Blbj1mdW5jdGlvbihjLGQsZT0hMCxmLGgpe3RoaXMudj17bWV0aG9kOmMsdXJsOmQudG9TdHJpbmcoKX07dGhpcy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwoKT0+e3ZhciBrPXRoaXMuajtrPy5EZSh7c3RhdHVzQ29kZTp0aGlzLnN0YXR1cyxyZXNwb25zZUNvbnRlbnRMZW5ndGg6dGhpcy5yZXNwb25zZVRleHQubGVuZ3RofSk7az8uZW5kKCl9KTt0aGlzLmFkZEV2ZW50TGlzdGVuZXIoImVycm9yIiwoKT0+e3ZhciBrPXRoaXMuajtrPy5EZSh7c3RhdHVzQ29kZTp0aGlzLnN0YXR1cyxzdGF0dXNUZXh0OnRoaXMuc3RhdHVzVGV4dH0pO2s/LmVuZCgiU1BBTl9TVEFUVVNfRVJST1IiKX0pO3RoaXMuYWRkRXZlbnRMaXN0ZW5lcigiYWJvcnQiLCgpPT57dmFyIGs9dGhpcy5qO2s/LkRlKHtzdGF0dXNDb2RlOnRoaXMuc3RhdHVzLAphYm9ydGVkOiEwfSk7az8uZW5kKCl9KTthLmFwcGx5KHRoaXMsW2MsZCxlLGYsaF0pfTtYTUxIdHRwUmVxdWVzdC5wcm90b3R5cGUuc2VuZD1mdW5jdGlvbihjKXt2YXIge21ldGhvZDpkLHVybDplfT10aGlzLnZ8fHttZXRob2Q6Ik4vQSIsdXJsOiJOL0EifTt0aGlzLmo9Xy55QygiaHR0cEV2ZW50Iix7bWV0aG9kOmQscGF0aDpnWShlKSx0eXBlOiJ4aHIifSx7YWN0aXZlOiExfSk7Yi5hcHBseSh0aGlzLFtjXSl9fTtnWT1mdW5jdGlvbihhKXt0cnl7aWYoYSBpbnN0YW5jZW9mIFVSTClyZXR1cm4gYS5wYXRobmFtZTthIGluc3RhbmNlb2YgUmVxdWVzdCYmKGE9YS51cmwpO3JldHVybihuZXcgVVJMKGEsImh0dHBzOi8veW91dHViZS5jb20iKSkucGF0aG5hbWV9Y2F0Y2goYil7cmV0dXJuIjx1bmFibGUgdG8gcGFyc2UgcGF0aD4ifX07CmpwYT1mdW5jdGlvbigpe3dpbmRvdy5wZXJmb3JtYW5jZSYmd2luZG93LnBlcmZvcm1hbmNlLmdldEVudHJpZXNCeVR5cGUmJndpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwoKT0+e3RyeXtsZXQgYT13aW5kb3cucGVyZm9ybWFuY2UuZ2V0RW50cmllc0J5VHlwZSgibmF2aWdhdGlvbiIpO2lmKGEubGVuZ3RoPjApe2xldCBiPWFbMF0sYz13aW5kb3cucGVyZm9ybWFuY2UudGltZU9yaWdpbjtfLnlDKCJwYWdlTG9hZCIse25hdmlnYXRpb25UeXBlOmlwYShiLnR5cGUpLHVubG9hZEV2ZW50U3RhcnQ6TWF0aC5yb3VuZChiLnVubG9hZEV2ZW50U3RhcnQpLHVubG9hZEV2ZW50RW5kOk1hdGgucm91bmQoYi51bmxvYWRFdmVudEVuZCksZG9tSW50ZXJhY3RpdmU6TWF0aC5yb3VuZChiLmRvbUludGVyYWN0aXZlKSxkb21Db250ZW50TG9hZGVkRXZlbnRTdGFydDpNYXRoLnJvdW5kKGIuZG9tQ29udGVudExvYWRlZEV2ZW50U3RhcnQpLGRvbUNvbnRlbnRMb2FkZWRFdmVudEVuZDpNYXRoLnJvdW5kKGIuZG9tQ29udGVudExvYWRlZEV2ZW50RW5kKSwKZG9tQ29tcGxldGU6TWF0aC5yb3VuZChiLmRvbUNvbXBsZXRlKSxsb2FkRXZlbnRTdGFydDpNYXRoLnJvdW5kKGIubG9hZEV2ZW50U3RhcnQpLGxvYWRFdmVudEVuZDpNYXRoLnJvdW5kKGIubG9hZEV2ZW50RW5kKSxyZWRpcmVjdENvdW50OmIucmVkaXJlY3RDb3VudH0se2FjdGl2ZTohMSxzdGFydFRpbWU6YytiLnN0YXJ0VGltZSxlbmRUaW1lOmMrYi5sb2FkRXZlbnRFbmR9KX19Y2F0Y2goYSl7fX0pfTsKaXBhPWZ1bmN0aW9uKGEpe3N3aXRjaChhKXtjYXNlICJuYXZpZ2F0ZSI6cmV0dXJuIlBFUkZPUk1BTkNFX05BVklHQVRJT05fVElNSU5HX1RZUEVfTkFWSUdBVEUiO2Nhc2UgInJlbG9hZCI6cmV0dXJuIlBFUkZPUk1BTkNFX05BVklHQVRJT05fVElNSU5HX1RZUEVfUkVMT0FEIjtjYXNlICJiYWNrX2ZvcndhcmQiOnJldHVybiJQRVJGT1JNQU5DRV9OQVZJR0FUSU9OX1RJTUlOR19UWVBFX0JBQ0tfRk9SV0FSRCI7Y2FzZSAicHJlcmVuZGVyIjpyZXR1cm4iUEVSRk9STUFOQ0VfTkFWSUdBVElPTl9USU1JTkdfVFlQRV9QUkVSRU5ERVIiO2RlZmF1bHQ6cmV0dXJuIlBFUkZPUk1BTkNFX05BVklHQVRJT05fVElNSU5HX1RZUEVfVU5LTk9XTiJ9fTsKbHBhPWZ1bmN0aW9uKCl7SW5hKChhLGIpPT57dmFyIGM9bmV3IE1hcCxkLGU9ZVkoKTtmb3IobGV0IGggb2YgYS5zcGFucyl7aWYoaC5tYXJrZXIpY29udGludWU7dmFyIGY9Yi5nZXQoaC5pZCk/LmdldChfLk92KTtsZXQgaz1mP2twYVtmLnR5cGVdOnZvaWQgMDtpZighZnx8aC5kdXJhdGlvbk1zPT09dm9pZCAwfHxrPT09dm9pZCAwKXtoLnBhcmVudElkIT09dm9pZCAwJiYoZj1jLmdldChoLnBhcmVudElkKSxmIT09dm9pZCAwJiZjLnNldChoLmlkLGYpKTtjb250aW51ZX1sZXQgbD1hLm5LK2gueUssbT1oLnBhcmVudElkIT09dm9pZCAwP2MuZ2V0KGgucGFyZW50SWQpOnZvaWQgMCxuLHA7c3dpdGNoKGYudHlwZSl7Y2FzZSAiUmVuZGVyIjpjYXNlICJFZmZlY3QiOmNhc2UgIk9uSW5pdCI6Y2FzZSAiUmVuZGVyRWZmZWN0IjpwPWYubG9jYXRpb247YnJlYWs7Y2FzZSAiQ3JlYXRlUmVhY3RpdmVDb21wb25lbnQiOm49Zi5jb21wb25lbnROYW1lO2JyZWFrO2Nhc2UgIkNvbXB1dGVkIjpuPQpmLmhJO3A9Zi5sb2NhdGlvbjticmVhaztjYXNlICJTaWduYWxVcGRhdGUiOm49Zi5TS31pZihmPSgwLF8uY3QpKCJjb3dfc3BhbiIsaC5kdXJhdGlvbk1zLGwse3dlYlRyYWNpbmc6e2Nvd1NwYW46e3R5cGU6ayxuYW1lOm4sY29kZUxvY2F0aW9uOnB9fX0sbSxlLHtyb290U3Bhbk5vbmNlOmR9KSljLnNldChoLmlkLGYpLGQ9PT12b2lkIDAmJihkPWYpfX0pfTsKcHBhPWZ1bmN0aW9uKCl7dmFyIGE9aFkudmFsdWUsYj17fTtmb3IobGV0IGMgb2YgYS5IdiliW2NdPSEwO2VvYSh7c2Vzc2lvbklkOl8uRm4oKSxkaDpiLFdoKGMsZCxlKXtyZXR1cm4gbXBhP2M9PT0ic2hvcnRUb1Nob3J0Inx8ZT8uV3ooKT8ubmFtZT09PSJzaG9ydFRvU2hvcnQiOiEwfX0pO2ZvYSgpO18ud0MoInBhZ2VMb2FkIikmJmpwYSgpO18ud0MoImNvd1NwYW4iKSYmbHBhKCk7Xy53QygiaHR0cEV2ZW50IikmJihncGEoKSxocGEoKSk7YS5RdiYmc1gobnBhKTthLlJ2JiZzWChmcGEoKSk7YS5NcT4wJiZjcGEoe3lsOm9wYSxidWZmZXJTaXplOmEuTXF9KX07CmpZPWZ1bmN0aW9uKGEsYil7Yj09PXZvaWQgMHx8YS5nZXRBdHRyaWJ1dGUoInZpZXdCb3giKXx8YS5zZXRBdHRyaWJ1dGUoInZpZXdCb3giLGAwIDAgJHtifSAke2J9YCk7YS5zZXRBdHRyaWJ1dGUoImZvY3VzYWJsZSIsImZhbHNlIik7YS5zZXRBdHRyaWJ1dGUoImFyaWEtaGlkZGVuIiwidHJ1ZSIpO2I9Xy54KCJraWxsc3dpdGNoX3JlbW92ZV9pY29uX2ZpbGxfY29sb3IiKTthLmdldEF0dHJpYnV0ZSgiZmlsbCIpIT09ImN1cnJlbnRjb2xvciImJmEuZ2V0QXR0cmlidXRlKCJmaWxsIikhPT0iY3VycmVudENvbG9yInx8Ynx8YS5yZW1vdmVBdHRyaWJ1dGUoImZpbGwiKTt0cnl7YS5zdHlsZS5wb2ludGVyRXZlbnRzPSJub25lIixhLnN0eWxlLmRpc3BsYXk9ImluaGVyaXQiLGEuc3R5bGUud2lkdGg9IjEwMCUiLGEuc3R5bGUuaGVpZ2h0PSIxMDAlIn1jYXRjaChjKXtpWSh7ZXJyb3I6Yz8udG9TdHJpbmc/Yy50b1N0cmluZygpOiIifSk7dHJ5e2Euc3R5bGUuY3NzVGV4dD0icG9pbnRlci1ldmVudHM6IG5vbmU7IGRpc3BsYXk6IGluaGVyaXQ7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7In1jYXRjaChkKXtpWSh7ZXJyb3I6ZD8udG9TdHJpbmc/CmQudG9TdHJpbmcoKToiIn0pfX1yZXR1cm4gYX07CnFwYT1mdW5jdGlvbihhKXtpZihfLngoIndpbF9pY29uc19jYWNoZV9wdXJnZV9raWxsc3dpdGNoIikpcmV0dXJuITE7dHJ5e3ZhciBiPV8udS5sb2NhbFN0b3JhZ2V9Y2F0Y2goZSl7cmV0dXJuITF9aWYoIWJ8fCFhLkIpcmV0dXJuITE7dmFyIGM9ZT0+e3RyeXtiPy5zZXRJdGVtKCJ5dC1pY29ucy1sYXN0LXB1cmdlZCIsZS50b1N0cmluZygpKX1jYXRjaChmKXtpWSh7ZXJyb3I6Zj8udG9TdHJpbmc/Zi50b1N0cmluZygpOiIifSl9fSxkPU51bWJlcihiLmdldEl0ZW0oInl0LWljb25zLWxhc3QtcHVyZ2VkIikpO2lmKCFkKXJldHVybiBkPW5ldyBEYXRlLGQ9ZC5zZXREYXRlKGQuZ2V0RGF0ZSgpLU1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSo5MCsxKSksYyhkKSwhMTtpZihmdW5jdGlvbihlLGYpe2U9bmV3IERhdGUoZSk7Zj1uZXcgRGF0ZShmKTtyZXR1cm4gZi5nZXRNb250aCgpLWUuZ2V0TW9udGgoKSsxMiooZi5nZXRGdWxsWWVhcigpLWUuZ2V0RnVsbFllYXIoKSl9KGQsRGF0ZS5ub3coKSk8CjMpcmV0dXJuITE7dHJ5e3JldHVybiBfLnUuY2FjaGVzLmRlbGV0ZSgieXQtaWNvbnMiKS50aGVuKGU9PntlJiZjKERhdGUubm93KCkpO3JldHVybiBlfSkuY2F0Y2goKCk9PiExKS5maW5hbGx5KCgpPT57YS5LPSExfSl9Y2F0Y2goZSl7cmV0dXJuIGlZKHtlcnJvcjplPy50b1N0cmluZz9lLnRvU3RyaW5nKCk6IiJ9KSwhMX19OwprWT1hc3luYyBmdW5jdGlvbihhLGIpe3ZhciBjPWIudXJsO2lmKCFycGEoYykpdGhyb3cgRXJyb3IoImRlIik7cmV0dXJuIHNwYShhLGMpLnRoZW4oZD0+ZC5jbG9uZSgpLnRleHQoKSkudGhlbihkPT57dmFyIGU9Xy5nYihkKTtkPWIuc2l6ZTt2YXIgZj1fLkNkKCJESVYiKTtfLnpBKGYsZSk7aWYoZi5maXJzdEVsZW1lbnRDaGlsZCE9PXZvaWQgMCllPWYuZmlyc3RFbGVtZW50Q2hpbGQ7ZWxzZSBmb3IoZT1mLmZpcnN0Q2hpbGQ7ZSYmZS5ub2RlVHlwZSE9MTspZT1lLm5leHRTaWJsaW5nO2U9Xy5EZChlKTtkPWpZKGUsZCk7YS5EW2NdPWQuY2xvbmVOb2RlKCEwKTtkZWxldGUgYS5ZW2NdO3JldHVybiBkfSkuY2F0Y2goKCk9Pnt9KX07CmxZPWZ1bmN0aW9uKGEsYixjLGQpe3JldHVybihlLGYpPT57dmFyIGg9Xy5DZCgiRElWIiksaz17aWNvbldpZHRoOmAke2Iuc2l6ZX1weGAsaWNvbkhlaWdodDpgJHtiLnNpemV9cHhgLGp4OiJibG9jayIsLi4uZixpY29uQ29sb3I6Zj8uaWNvbkNvbG9yPz8iY3VycmVudGNvbG9yIn07Zj1rLmljb25Db2xvcjt2YXIgbD1rLmFnO2s9YHdpZHRoOiAke2suaWNvbldpZHRofTsgaGVpZ2h0OiAke2suaWNvbkhlaWdodH07IGRpc3BsYXk6ICR7ay5qeH07YDtsJiYoays9YCBmaWx0ZXI6ICR7bH07YCk7Yz09PTAmJihrKz1gIGZpbGw6ICR7Zn07YCk7Yz09PTEmJihsPWIudXJsLGsrPWAgLXdlYmtpdC1tYXNrOiB1cmwoJHtsfSkgbm8tcmVwZWF0IGNlbnRlciAvIGNvdmVyOyBtYXNrOiB1cmwoJHtsfSkgbm8tcmVwZWF0IGNlbnRlciAvIGNvdmVyOyBiYWNrZ3JvdW5kLWNvbG9yOiAke2Z9YCk7Yi52dSYmYS5Laz09PSJydGwiJiYoays9IiB0cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTsgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjsiKTsKaC5zZXRBdHRyaWJ1dGUoInN0eWxlIixrKTtjPT09MCYmZCYmaC5hcHBlbmRDaGlsZChkKTtlLmFwcGVuZENoaWxkKGgpfX07Cm5ZPWZ1bmN0aW9uKGEsYil7aWYoYil7YS5jb3VudGVyKz0xO2E9YF95dCR7YS5jb3VudGVyfWA7Yj1bYiwuLi5iLmdldEVsZW1lbnRzQnlUYWdOYW1lKCIqIildO2ZvcihsZXQgYyBvZiBiKWlmKGMudGFnTmFtZT09PSJzdHlsZSImJmMudGV4dENvbnRlbnQpYy50ZXh0Q29udGVudD1tWShjLnRleHRDb250ZW50LGEsITApO2Vsc2UgZm9yKGxldCBkIG9mIGMuYXR0cmlidXRlcyl7ZC5uYW1lPT09ImlkIiYmKGQudmFsdWUrPWEpO1sibWFzayIsImZpbGwiLCJjbGlwLXBhdGgiXS5pbmNsdWRlcyhkLm5hbWUpJiYoZC52YWx1ZT1tWShkLnZhbHVlLGEpKTtpZihkLm5hbWU9PT0ic3R5bGUiKXtiPWMuc3R5bGU7dHJ5e2IuY3NzVGV4dD1tWShiLmNzc1RleHQsYSwhMCl9Y2F0Y2goZSl7aVkoe2Vycm9yOmU/LnRvU3RyaW5nPy4oKXx8IiIsZWw6Yy5vdXRlckhUTUwsc3R5bGU6ISFiLGNzc1RleHQ6Yj8uY3NzVGV4dH0pfX1kLm5hbWU9PT0ieGxpbms6aHJlZiImJihkLnZhbHVlPWQudmFsdWUucmVwbGFjZSgvIyguKikvLApgIyQxJHthfWApKX19fTttWT1mdW5jdGlvbihhLGIsYz0hMSl7dmFyIGQ9L3VybFwoWyInXT8jKC4qPylbIiddP1wpLztjJiYoZD0vdXJsXChbIiddPyMoLio/KVsiJ10/XCkvZyk7cmV0dXJuIGEucmVwbGFjZShkLGB1cmwoIyQxJHtifSlgKX07aVk9ZnVuY3Rpb24oYSl7Xy5JcChuZXcgXy5YaigiRXJyb3IgaW4gSWNvbk1hbmFnZXIiLGEpKX07cnBhPWZ1bmN0aW9uKGEpe2ZvcihsZXQgYiBvZiB0cGEpaWYoYS5zdGFydHNXaXRoKGIpJiZhLmVuZHNXaXRoKCIuc3ZnIikpcmV0dXJuITA7cmV0dXJuITF9OwpzcGE9YXN5bmMgZnVuY3Rpb24oYSxiKXthLlFhJiZhd2FpdCB1cGEoYSk7dmFyIGM9YS5ZW2JdO2lmKCFjKXtsZXQgZD1hc3luYygpPT57dmFyIGU9YS5CP2EuWnx8YXdhaXQgYS5VOnZvaWQgMDtyZXR1cm4gYS5vYT9hLmdhKGIsZSkuY2F0Y2goYS5oYS5iaW5kKGEsYixlKSk6YS5oYShiLGUpLmNhdGNoKGEuZ2EuYmluZChhLGIsZSkpfTtjPWEuTWE/bmV3IFByb21pc2UoKGUsZik9PntfLllqKCgpPT57ZCgpLnRoZW4oZSkuY2F0Y2goZil9LDEwKX0pOmQoKTthLllbYl09Y31yZXR1cm4gYy5jYXRjaChkPT57ZGVsZXRlIGEuWVtiXTtpWSh7ZXJyb3I6ZD8udG9TdHJpbmc/ZC50b1N0cmluZygpOiIiLHVybDpifSk7dGhyb3cgZDt9KX07dXBhPWZ1bmN0aW9uKGEpe3ZhciBiPWEudj8ucHJvbWlzZTtifHwoYS52PW5ldyBfLmNzLGI9YS52LnByb21pc2UsXy51LnJlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+e2Eudj8ucmVzb2x2ZSgpO2Eudj1udWxsfSkpO3JldHVybiBifTsKcFk9YXN5bmMgZnVuY3Rpb24oYSxiKXtpZihhLkk8dnBhKXJldHVybiBhLkkrPTEsb1koYSxiKS5maW5hbGx5KCgpPT57LS1hLkk7aWYoT2JqZWN0LmtleXMoYS5vKS5sZW5ndGgpe2xldCBkPU9iamVjdC5rZXlzKGEubylbMF0sZT1hLm9bZF07ZGVsZXRlIGEub1tkXTtlLnJlc29sdmUocFkoYSxkKSl9fSk7dmFyIGM9bmV3IF8uY3M7YS5vW2JdPWM7cmV0dXJuIGMucHJvbWlzZX07d3BhPWFzeW5jIGZ1bmN0aW9uKGEsYixjLGQpe2QmJm5ldyBQcm9taXNlKGU9PntfLllqKGFzeW5jKCk9PnthLm9hJiZhd2FpdCBkLm1hdGNoKGIpLmNhdGNoKCgpPT57fSl8fGF3YWl0IGQucHV0KGIsYy5jbG9uZSgpKS5jYXRjaChmPT57aVkoe2Vycm9yOmY/LnRvU3RyaW5nP2YudG9TdHJpbmcoKToiIix1cmw6Yn0pfSk7ZSgpfSw1MCl9KX07Cm9ZPWFzeW5jIGZ1bmN0aW9uKGEsYixjPTIpe3JldHVybiBfLnUuZmV0Y2goYix7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixwcmlvcml0eToibG93In0pLnRoZW4oZD0+ZC5vaz9kOlByb21pc2UucmVqZWN0KEVycm9yKCJlZWAiK2Quc3RhdHVzKyJgIitkLnN0YXR1c1RleHQpKSkuY2F0Y2goZD0+e2lmKGM+MClyZXR1cm4gb1koYSxiLGMtMSk7dGhyb3cgZDt9KX07CnJZPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWFbYi5pY29uTmFtZV18fFtdO2E9dm9pZCAwO2ZvcihsZXQgaCBvZiBlKXthOnt2YXIgZj1iLmljb25TaXplO2U9Yi5pY29uU3R5bGU7Zj0hZnx8Zj09PWhbMl07bGV0IGs9cVlbaFswXV07aWYoZCYmZCE9PWhbMV18fCFmfHxlJiZlIT09ayl7ZT0hMTticmVhayBhfWlmKCFhKXtlPSEwO2JyZWFrIGF9ZT1xWVtoWzBdXTtlPSEhYi5pY29uU3R5bGV8fGU9PT0ieW91dHViZV9vdXRsaW5lIjtmPWEudmVyc2lvbjw9aFsxXTtlPSghIWIuaWNvblNpemV8fGhbMl09PT0yNCkmJmUmJmZ9ZSYmKGE9e25hbWU6Yi5pY29uTmFtZSxzdHlsZTpxWVtoWzBdXSxzaXplOmhbMl0sdmVyc2lvbjpoWzFdLHZ1OiEhaFszXSx1cmw6YyhiLmljb25OYW1lLGgpfSl9cmV0dXJuIGF9O3NZPWZ1bmN0aW9uKGEsYixjLGQ9ITEpe3JldHVybmAke2F9JHtxWVtjWzBdXX0ke2Q/Il9leHBlcmltZW50YWwiOiIifS8ke2J9L3Yke2NbMV19LyR7Y1syXX1weC5zdmdgfTsKdFk9ZnVuY3Rpb24oYSl7cmV0dXJuIF8udygiSU5ORVJUVUJFX0NMSUVOVF9OQU1FIikhPT0iV0VCX1JFTUlYIiYmXy53KCJJTk5FUlRVQkVfQ0xJRU5UX05BTUUiKSE9PSJXRUJfQ1JFQVRPUiI/ImJvb2ttYXJrIjphfTt1WT1mdW5jdGlvbihhLGIpe3JldHVybiBfLngoImVuYWJsZV93ZWJfZGVsaGlfaWNvbnMiKXx8Yj94cGFbYS50b1VwcGVyQ2FzZSgpXTp5cGFbYS50b1VwcGVyQ2FzZSgpXX07enBhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIHNZKCJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS8iLGEsYil9O0FwYT1mdW5jdGlvbihhLGIpe3JldHVybiBzWSgiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2kvIixhLGIsITApfTt3WT1mdW5jdGlvbigpe3ZZLmluc3RhbmNlfHwodlkuaW5zdGFuY2U9bmV3IHZZKTtyZXR1cm4gdlkuaW5zdGFuY2V9Owp4WT1mdW5jdGlvbihhLGIpe3JldHVybiBCcGEuaGFzKGIpfHxfLncoIklTX0hPTUVQQUdFX0NPTEQiKXx8Xy53KCJJU19SRVNVTFRTX1BBR0VfQ09MRCIpfHxfLncoIklTX1dBVENIX1BBR0VfQ09MRCIpP2Euc2lnbmFscy5pbmRleE9mKGIpPj0wOiEwfTt5WT1mdW5jdGlvbihhKXt2YXIgYj0hMTtyZXR1cm4oKT0+e2J8fChiPSEwLGEoKSl9fTtBWT1mdW5jdGlvbihhLGIsYyxkLGUpe2lmKHpZLmhhcyhkKSlfLkNrKCkuR2EoYixjLGUpO2Vsc2V7bGV0IGY9YS5qLmdldChkKTtmJiZfLkNrKCkuR2EoKCk9Pnt4WShhLGQpfHwoZi5oZz9fLkNrKCkuR2EoYixjKTpmLkJuLnB1c2goKCk9PntfLkNrKCkuR2EoYixjKX0pKX0sYyxlKX19O0NwYT1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT0oKT0+e2EuV20oYil9O2ZvcihsZXQgZiBvZiBkKWEuYWRkTGlzdGVuZXIoZixlKTthLmouc2V0KGIse3NpZ25hbHM6YyxWeDohMCxpc0luaXRpYWxpemVkOiExLGhnOiExLEJuOltdfSk7QlkoYSxiKX07CkJZPWZ1bmN0aW9uKGEsYil7aWYoIXhZKGEsYikpe3ZhciBjPWEuai5nZXQoYik7aWYoYyYmIWMuaGcpe3ZhciBkPSExLGU9MCxmPTA7Zm9yKGxldCBoIG9mIGMuc2lnbmFscyl7bGV0IGs9IXhZKGEsaCk7aWYoelkuaGFzKGgpKWQ9ITA7ZWxzZXtsZXQgbD1hLmouZ2V0KGgpO2w/ayYmIWwuaGcmJihmKyssYy5pc0luaXRpYWxpemVkfHxsLkJuLnB1c2goKCk9PntCWShhLGIpfSkpOmsmJmUrK319Yy5pc0luaXRpYWxpemVkPSEwO2MuVng/ZCYmKGMuaGc9ITApOmU9PT0wJiZmPT09MCYmKGMuaGc9ITApO2lmKGMuaGcpZm9yKGxldCBoIG9mIGMuQm4paCgpfX19OwpEcGE9ZnVuY3Rpb24oYSl7YT1hLm9wZW5Qb3B1cEFjdGlvbnx8YTt2YXIgYj1hLnBvcHVwVHlwZSxjPWEucG9wdXA7c3dpdGNoKGIpe2Nhc2UgIlRPQVNUIjpmb3IobGV0IGQgaW4gYyljLmhhc093blByb3BlcnR5KGQpJiZfLnBQKCgpPT5fLksoXy5XLHtkYXRhOigpPT5jfSx7bm90aWZpY2F0aW9uQWN0aW9uUmVuZGVyZXI6Q1l9KSxhLmR1cmF0aW9uSGludE1zLGEucmV1c2VQb3B1cCk7YnJlYWs7ZGVmYXVsdDp0aHJvdyBFcnJvcigiZmVgIitiKTt9fTsKRFk9ZnVuY3Rpb24oYSxiKXt2YXIgYz11WChhKTtpZihjKXt2YXIgZD12b2lkIDAsZT1fLkIoYT8uY29tbWFuZE1ldGFkYXRhLF8uencpO2UmJmUucm9vdFZlJiYoZD1lLnJvb3RWZSk7Xy5xUCh7aHJlZjpjLHBhcmFtczp7aXRjdDphLmNsaWNrVHJhY2tpbmdQYXJhbXMsYXV0b25hdjpiPy5hdXRvbmF2fSx0YXJnZXQ6Xy5LTygpJiZfLkIoYSxfLkJoYSk/Il9ibGFuayI6dm9pZCAwLGFrOmQsY2xpY2tlZFZpc3VhbEVsZW1lbnQ6Yi5jbGlja2VkVmlzdWFsRWxlbWVudCxpbXBsaWNpdEdlc3R1cmVUeXBlOmIuaW1wbGljaXRHZXN0dXJlVHlwZSxlbGVtZW50OmIuZXZlbnQ/LnRhcmdldCBpbnN0YW5jZW9mIEVsZW1lbnQ/Yi5ldmVudC50YXJnZXQ6dm9pZCAwLGVuZHBvaW50OmEscGFyZW50TGF5ZXI6Yi5wYXJlbnRMYXllcn0pfX07CkVwYT1mdW5jdGlvbihhLGIpe2lmKF8ueCgiZW1iZWRzX2VuYWJsZV9lbWMzZHNfcGZwIikpaWYoRVkpe3ZhciBjPV8uQihhLF8uQXcpLGQ9Yz8udmlkZW9JZCxlPWM/LnBsYXlsaXN0SWQ7ZHx8ZT8oYT17dmlkZW9faWQ6ZH0sYyYmKGEucGxheWVyX3BhcmFtcz1jLnBsYXllclBhcmFtcyksZT8oYS5saXN0PWUsRVkubG9hZFBsYXlsaXN0KGEpKTpFWS5sb2FkVmlkZW9CeVBsYXllclZhcnMoYSkpOihjPW5ldyBfLlhqKCJFbWMzZHMgV2F0Y2hFbmRwb2ludCBtYWxmb3JtZWQiLHtjb21tYW5kOkpTT04uc3RyaW5naWZ5KGEpfSksXy5HcChjKSxEWShhLGIpKX1lbHNlIGM9bmV3IF8uWGooIkVtYzNkcyBXYXRjaEVuZHBvaW50IHJlc29sdmVkIHdpdGhvdXQgcGxheWVyQXBpIix7Y29tbWFuZDpKU09OLnN0cmluZ2lmeShhKX0pLF8uR3AoYyksRFkoYSxiKTtlbHNlIERZKGEsYil9O0ZZPWZ1bmN0aW9uKGEpe3JldHVybntyZXNvbHZlOihiLGM9e30pPT57YShiLGMuZm9ybXx8e30pO3JldHVybiBQcm9taXNlLnJlc29sdmUoKX19fTsKSFk9ZnVuY3Rpb24oYSxiKXtHWS5wdXNoKHthY3Rpb246YSxjb250ZXh0OmJ9KX07RnBhPWZ1bmN0aW9uKCl7VFcoR1ksKHthY3Rpb246YSxjb250ZXh0OmJ9KT0+e18ueSgpLnJlc29sdmUoXy5VRCkucmVzb2x2ZUNvbW1hbmQoYSx7Zm9ybTpifSl8fEpYKGEsIkFjdGlvbiBub3QgaGFuZGxlZCBieSBDb21tYW5kSGFuZGxlciIsSG9hKX0pfTsKSVk9ZnVuY3Rpb24oYSxiLGMpe2ZvcihsZXQgZiBvZiBob2EoYSkpSFkoZixjKTthPWIuZGF0YT8uYWN0aW9ucz8/W107Zm9yKHZhciBkIG9mIGEpSFkoZCxjKTtkPWIuZGF0YT8uY29tbWFuZHM/P1tdO2Zvcih2YXIgZSBvZiBkKUhZKGUsYyk7KGU9Yi5kYXRhPy5jb21tYW5kKSYmSFkoZSxjKTt2WChiLmRhdGE/Lm9uUmVzcG9uc2VSZWNlaXZlZEFjdGlvbnM/P1tdLGMuc291cmNlRGF0YSk7dlgoYi5kYXRhPy5vblJlc3BvbnNlUmVjZWl2ZWRDb21tYW5kcz8/W10sYy5zb3VyY2VEYXRhKTt2WChiLmRhdGE/Lm9uUmVzcG9uc2VSZWNlaXZlZEVuZHBvaW50cz8/W10sYy5zb3VyY2VEYXRhKTsoYj1iLmRhdGE/LnVwZGF0ZUZsb3dDb21tYW5kKSYmSFkoYixjKX07CkpZPWFzeW5jIGZ1bmN0aW9uKGEsYj1fLkxoYSl7dmFyIGM9YjtfLkIoYSxfLkF5KXx8KGM9T2JqZWN0LmFzc2lnbih7Y3NuOl8uaXEoKXx8IiJ9LGIpKTtiPWF3YWl0IF8ueSgpLnJlc29sdmUoXy5IeSkoKTtpZihiLkp3KGEpKXJldHVybiBiLlFpKGEsYykudGhlbihkPT5kPy5kYXRhP2QuZGF0YTpkKS50aGVuKGQ9Pnt2YXIgZTsoZT1kPy5kYXRhPy50cmFja2luZ1BhcmFtcykmJl8ubHgoXy5oeCgpLGUpO3JldHVybntjb2RlOmQmJmQuZXJyb3I/IkVSUk9SIjoiU1VDQ0VTUyIsZGF0YTpkfX0pO3Rocm93IG5ldyBfLlhqKCJubyByZXF1ZXN0IGJ1aWxkZXIgZm91bmQiLGEpO307SHBhPWZ1bmN0aW9uKGEpe3JldHVybiBPYmplY3Qua2V5cyhhKS5zb21lKGI9PmIgaW4gR3BhKX07CktZPWZ1bmN0aW9uKGEpe3ZhciBiPWEuZGF0YT8uY29udGVudHM/LlswXTtpZighYnx8IUhwYShiKSlyZXR1cm4gYTtiPXtvcGVuUG9wdXBBY3Rpb246e3BvcHVwVHlwZToiRElBTE9HIixwb3B1cDpifX07YS5kYXRhLmFjdGlvbnN8fChhLmRhdGEuYWN0aW9ucz1bXSk7YS5kYXRhLmFjdGlvbnMucHVzaChiKTtyZXR1cm4gYX07Ck1ZPWZ1bmN0aW9uKGEsYixjKXtfLkIoYSxfLkF5KSYmYS5jbGlja1RyYWNraW5nUGFyYW1zJiYoTFk9Xy5VdyhhLmNsaWNrVHJhY2tpbmdQYXJhbXMpKTtyZXR1cm4gSlkoYSxjKS50aGVuKGQ9PntpZihfLkIoYSxfLkF5KT8ucmVxdWVzdD09PSJDT05USU5VQVRJT05fUkVRVUVTVF9UWVBFX1JFRUxfV0FUQ0hfU0VRVUVOQ0UiKXt2YXIgZT1kLmRhdGE7ZSYmIWUub25SZXNwb25zZVJlY2VpdmVkQWN0aW9ucyYmKGUuZW50cmllc3x8ZS5wcmV2RW50cmllcykmJihlLmVudHJpZXM/KGUub25SZXNwb25zZVJlY2VpdmVkQWN0aW9ucz1bXSxlLm9uUmVzcG9uc2VSZWNlaXZlZEFjdGlvbnMucHVzaCh7YXBwZW5kUmVlbFdhdGNoU2VxdWVuY2VDb250aW51YXRpb25FbnRyaWVzQWN0aW9uOntlbnRyaWVzOmUuZW50cmllcyxjb250aW51YXRpb25FbmRwb2ludDplLmNvbnRpbnVhdGlvbkVuZHBvaW50fX0pKTplLnByZXZFbnRyaWVzJiYoZS5vblJlc3BvbnNlUmVjZWl2ZWRBY3Rpb25zPVtdLAplLm9uUmVzcG9uc2VSZWNlaXZlZEFjdGlvbnMucHVzaCh7YXBwZW5kUmVlbFdhdGNoU2VxdWVuY2VDb250aW51YXRpb25FbnRyaWVzQWN0aW9uOntwcmV2RW50cmllczplLnByZXZFbnRyaWVzLHByZXZDb250aW51YXRpb25FbmRwb2ludDplLnByZXZDb250aW51YXRpb25FbmRwb2ludH19KSkpfWlmKF8uQihhLF8uVXopfHxfLkIoYSxfLmRPKSliLmN1cnJlbnREYXRhfHwoYi5jdXJyZW50RGF0YT1fLlhEPy5yZXNwb25zZT8/e30pLGIuc291cmNlRGF0YXx8KGIuc291cmNlRGF0YT1hKTtJWShhLEtZKGQpLGIpO18uQihhLF8uQXkpJiZkPy5kYXRhPy50cmFja2luZ1BhcmFtcyYmXy5seChfLmh4KCksZC5kYXRhLnRyYWNraW5nUGFyYW1zLExZKTtyZXR1cm4gZH0sZD0+e3ZhciBlPU9iamVjdC5rZXlzKGEpLmZpbHRlcihmPT5fLk1hKGYsIkVuZHBvaW50IikpWzBdO2UmJihlPWFbZV0sKGU9ZT8ub25GYWlsdXJlQWN0aW9uPz9lPy5vbkZhaWx1cmVDb21tYW5kKSYmSFkoZSxiKSk7dGhyb3cgZDsKfSl9O0lwYT1mdW5jdGlvbihhLGIpe18uQihhLF8uY0UpPy5uYXZpZ2F0aW9uVHlwZT09PSJCUk9XU0VfTkFWSUdBVElPTl9UWVBFX1NUQVlfT05fUEFHRSI/TVkoYSxiKTpEWShhLGIpfTtKcGE9ZnVuY3Rpb24oYSxiKXtpZihhPShfLkIoYSxfLlNEKXx8YSkuY29tbWFuZHMpZm9yKGxldCBjIG9mIGEpXy5LTShjKT9fLkFKKGMsYi5zb3VyY2VEYXRhLCEwLGIpOkhZKGMsYil9OwpMcGE9YXN5bmMgZnVuY3Rpb24oYSl7YT1fLkIoYSxLcGEpO2lmKGE/LnRleHQmJm5hdmlnYXRvci5jbGlwYm9hcmQpdHJ5e2lmKGF3YWl0IG5hdmlnYXRvci5jbGlwYm9hcmQud3JpdGVUZXh0KGEudGV4dCksYS5zdWNjZXNzQWN0aW9ucyYmYS5zdWNjZXNzQWN0aW9ucy5sZW5ndGghPT0wKWZvcihsZXQgYiBvZiBhLnN1Y2Nlc3NBY3Rpb25zKV8uQUooYix7fSwhMSl9Y2F0Y2goYil7aWYoYS5mYWlsdXJlQWN0aW9ucyYmYS5mYWlsdXJlQWN0aW9ucy5sZW5ndGghPT0wKWZvcihsZXQgYyBvZiBhLmZhaWx1cmVBY3Rpb25zKV8uQUooYyx7fSwhMSl9fTtNcGE9ZnVuY3Rpb24oYSl7KDAsXy53aWEpKHtub3RpZmljYXRpb25QcmVmZXJlbmNlVG9nZ2xlQnV0dG9uOnt0b2dnbGVCdXR0b25SZW5kZXJlcjphLnNvdXJjZURhdGF9fSxiPT4oey4uLmIsbm90aWZpY2F0aW9uUHJlZmVyZW5jZVRvZ2dsZUJ1dHRvbjp7dG9nZ2xlQnV0dG9uUmVuZGVyZXI6YS5zb3VyY2VEYXRhfX0pKX07Ck5wYT1mdW5jdGlvbihhLGIpe01ZKGEsYikudGhlbigoKT0+e01wYShiKX0pfTtQcGE9ZnVuY3Rpb24oYSl7Xy5xUCh7aHJlZjpfLkt6KGB0ZWw6JHtfLkIoYSxPcGEpLnBob25lTnVtYmVyfWAsW18uSHFdKS50b1N0cmluZygpLGVuZHBvaW50OmF9KX07UnBhPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gSlkoYSxjKS50aGVuKGQ9PntJWShhLEtZKGQpLGIpO3ZhciBlPV8uV0QoKCk9PmQuZGF0YS5yZWRpcmVjdEVuZHBvaW50KTtlJiZfLkFKKGUsZC5kYXRhLCExKX0sZD0+e18ucFAoKCk9PlFwYSk7dGhyb3cgZDt9KX07VHBhPWZ1bmN0aW9uKGEpe3ZhciBiPV8uQihhLFNwYSksYz1gc21zOiR7Yi5waG9uZU51bWJlcnMmJmIucGhvbmVOdW1iZXJzWzBdfWA7Yi5tZXNzYWdlVGV4dCYmKGMrPWA/JmJvZHk9JHtlbmNvZGVVUkkoYi5tZXNzYWdlVGV4dCl9YCk7Xy5xUCh7aHJlZjpfLkt6KGMsW18uT3FdKS50b1N0cmluZygpLGVuZHBvaW50OmF9KX07ClVwYT1mdW5jdGlvbigpe3JldHVybiB3aW5kb3cubG9jYXRpb24uaGFzaD09PSIjZGlhbG9nIn07Tlk9YXN5bmMgZnVuY3Rpb24oKXthd2FpdCBfLkZKO3JldHVybiBuZXcgUHJvbWlzZShhPT57dmFyIGI9Xy55KCkucmVzb2x2ZShfLkluKF8ueVApKTtiPy5ycSgpJiZiLmxkKCk7d2luZG93LmxvY2F0aW9uLmhhc2g9PT0iI2RpYWxvZyI/Xy5ZTT9zZXRUaW1lb3V0KCgpPT57Xy4kTSgiIik7YSgpfSwxMDApOl8uWk0oKS50aGVuKCgpPT57YSgpfSk6YSgpfSl9OwpXcGE9ZnVuY3Rpb24oYSxiLGMsZCl7VnBhKGMpO2M9T1koYSk7dmFyIGU9bmF2aWdhdG9yLGY9Xy5mciYmXy53KCJNV0VCX0lPU19OQVRJVkVfU0hBUkUiKSxoPXt1cmw6Y307aWYoKCFfLmZyfHxmKSYmZS5zaGFyZSYmYyYmZS5jYW5TaGFyZSYmZS5jYW5TaGFyZShoKSl7bGV0IGs9Xy5FeChfLmh4KCkse3ZlVHlwZTo5NzcwfSksbD17b3V0Ym91bmRBcHBEYXRhOntvdXRib3VuZEFwcDoiRElSRUNUX1NZU1RFTV9BQ1RJVklUWV9ESUFMT0cifSxzaGFyaW5nRGF0YTp7c2VyaWFsaXplZFNoYXJlRW50aXR5OmR9fTtfLkpPKGssbCw3KTtlLnNoYXJlKGgpLnRoZW4oKCk9Pnt0WChrLGwsNyl9KS5jYXRjaChtPT57bS5uYW1lIT09IkFib3J0RXJyb3IiJiYoXy5JcChuZXcgXy5YaigiU3lzdGVtIFNoYXJlIFBhbmVsIGZhaWxlZCB0byBvcGVuLiIpKSxQWShhLGIpKX0pfWVsc2UgUFkoYSxiKX07ClZwYT1mdW5jdGlvbihhKXtpZihhKXt2YXIgYj1fLmh4KCk7Xy5ETyhiLDIxNzYwLHZvaWQgMCx7bGF5ZXI6NyxwYXJlbnRMYXllcjowfSk7Xy5seChiLGEsdm9pZCAwLDcpfX07UFk9ZnVuY3Rpb24oYSxiKXt2YXIgYz1PWShhKTtfLmdyfHxfLlRFKCl8fF8uclAoKT9fLnkoKS5yZXNvbHZlKF8ueVApLm9wZW5EaWFsb2coe1VuOigpPT5fLksoWHBhLHtkYXRhOmF9KX0pOl8ueU4oe2hlYWRlclRpdGxlOiJTaGFyZSIsR2I6KCk9Pl8uSygiZGl2Iix7Y2xhc3M6ImJvdHRvbS1zaGVldC1zaGFyZS1pdGVtIn0sXy5LKF8uTyx7QTooKT0+Yyx0aGVuOmQ9Pl8uSyhRWSx7c2hvcnRVcmw6ZCx0cmFja2luZ1BhcmFtczpSWShhKX0pfSksU1koYSk/Lm1hcChkPT5kPy5zaGFyZVRhcmdldFJlbmRlcmVyP18uSyhUWSx7ZGF0YTpkLnNoYXJlVGFyZ2V0UmVuZGVyZXJ9KTpudWxsKSksSGE6ITEsZm9jdXNPbkNsb3NlOmI/LmV2ZW50Py50YXJnZXR9KX07ClNZPWZ1bmN0aW9uKGEpe2lmKGEuY29udGVudHMmJmEuY29udGVudHNbMF0pcmV0dXJuKGE9YS5jb250ZW50c1swXS50aGlyZFBhcnR5TmV0d29ya1NlY3Rpb24/LnNoYXJlVGFyZ2V0Q29udGFpbmVyPy50aGlyZFBhcnR5U2hhcmVUYXJnZXRTZWN0aW9uUmVuZGVyZXI/LnNoYXJlVGFyZ2V0cykmJmEubGVuZ3RoPjU/YS5zbGljZSgwLDUpOmF9O09ZPWZ1bmN0aW9uKGEpe3JldHVybiBhLmNvbnRlbnRzJiZhLmNvbnRlbnRzWzBdP18uQihhLmNvbnRlbnRzWzBdLnRoaXJkUGFydHlOZXR3b3JrU2VjdGlvbj8uY29weUxpbmtDb250YWluZXIsVVkpPy5zaG9ydFVybDoiIn07Ulk9ZnVuY3Rpb24oYSl7cmV0dXJuIF8uQihfLkIoYT8uY29udGVudHM/LlswXS50aGlyZFBhcnR5TmV0d29ya1NlY3Rpb24/LmNvcHlMaW5rQ29udGFpbmVyLFVZKT8uY29weUJ1dHRvbixfLlZMKT8udHJhY2tpbmdQYXJhbXN9OwpacGE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLkIoYSxfLlp6KT8uc2hhcmVQYW5lbFR5cGUsZD1fLkIoYSxfLlp6KT8uc2VyaWFsaXplZFNoYXJlRW50aXR5O01ZKGEsYikudGhlbihlPT57WXBhKGUsYixjLGQpfSl9O1lwYT1mdW5jdGlvbihhLGIsYyxkKXtpZihhLmNvZGU9PT0iU1VDQ0VTUyImJmEuZGF0YSlhPWEuZGF0YSxhLmNvbnRlbnRzJiZhLmNvbnRlbnRzLnVuaWZpZWRTaGFyZVBhbmVsUmVuZGVyZXImJmM9PT0iU0hBUkVfUEFORUxfVFlQRV9VTklGSUVEX1NIQVJFX1BBTkVMIiYmV3BhKGEuY29udGVudHMudW5pZmllZFNoYXJlUGFuZWxSZW5kZXJlcix7ZXZlbnQ6Yj8uZXZlbnR9LGEudHJhY2tpbmdQYXJhbXMsZCk7ZWxzZXtfLmdGPT09dm9pZCAwJiYoXy5nRj1rb2EoKSk7bGV0IGU9Xy5nRj8kcGE6YXFhO18ucFAoKCk9PmUpfX07YnFhPWZ1bmN0aW9uKGEpe2E9YS5wYW5lbElkZW50aWZpZXJ8fGEuaWRlbnRpZmllcj8udGFnO2lmKCFhKXRocm93IEVycm9yKCJnZSIpO3JldHVybiBhfTsKZHFhPWFzeW5jIGZ1bmN0aW9uKGEsYil7dmFyIGM9Xy5CKGEsXy5RVyk7aWYoYyl7dmFyIGQ9Xy5XRCgoKT0+Yj8uZXZlbnQ/LmN1cnJlbnRUYXJnZXR8fGI/LmVsZW1lbnQpLGU9YnFhKGMpO3ZhciBmPWM/Yy5nbG9iYWxDb25maWd1cmF0aW9uPy5pbml0aWFsU3RhdGV8fGMuZW5nYWdlbWVudFBhbmVsOnZvaWQgMDtpZihlKXtsZXQgaD1fLnkoKS5yZXNvbHZlKF8uYkwpLGs9YXdhaXQgXy55KCkucmVzb2x2ZShfLkh5KSgpO2F3YWl0IGNxYShoLHtpZGVudGlmaWVyOmUsSWo6Zix0YXJnZXQ6ZH0pO2MuZ2xvYmFsQ29uZmlndXJhdGlvbiYmKGE9YXdhaXQgay5RaShhKSxhd2FpdCBWWShoLHtpZGVudGlmaWVyOmUsSWo6YT8uY29udGVudCx0bjohMX0pKX19fTsKZXFhPWZ1bmN0aW9uKGEsYil7aWYoYT1fLkVPKHdpbmRvdyxhLCJsb2dpblBvcHVwIiwid2lkdGg9ODAwLGhlaWdodD02MDAscmVzaXphYmxlPXllcyxzY3JvbGxiYXJzPXllcyIpKUhuYSgoKT0+e2IoKX0pLGEubW92ZVRvKChzY3JlZW4ud2lkdGgtODAwKS8yLChzY3JlZW4uaGVpZ2h0LTYwMCkvMil9O2ZxYT1mdW5jdGlvbihhLGIpe18uS08oKT8oKGI9dVgoYSkpJiZfLkVPKHdpbmRvdyxiKSxhLmNsaWNrVHJhY2tpbmdQYXJhbXMmJl8uekooYS5jbGlja1RyYWNraW5nUGFyYW1zKSk6Xy53KCJJTk5FUlRVQkVfQ0xJRU5UX05BTUUiKT09PSJXRUJfRU1CRURERURfUExBWUVSIj8oYT11WChhKSkmJmVxYShhLCgpPT57d2luZG93LmxvY2F0aW9uLnJlbG9hZCgpfSk6RFkoYSxiKX07CmdxYT1mdW5jdGlvbihhKXtpZihhLnNvdXJjZURhdGEuc3Vic2NyaWJlQnV0dG9uUmVuZGVyZXI/LmNoYW5uZWxJZCkoMCxfLnhQKSh7Y2hhbm5lbElkOmEuc291cmNlRGF0YS5zdWJzY3JpYmVCdXR0b25SZW5kZXJlci5jaGFubmVsSWR9LGM9Pih7Li4uYyxzdWJzY3JpYmVkOiFhLnNvdXJjZURhdGEuc3Vic2NyaWJlQnV0dG9uUmVuZGVyZXIuc3Vic2NyaWJlZH0pKTtlbHNle3ZhciBiPV8uQihhLnNvdXJjZURhdGEuc2VydmljZUVuZHBvaW50LF8uRHkpO2ImJigwLF8ueFApKHtjaGFubmVsSWQ6Yi5jaGFubmVsSWRzPy5bMF19LGM9Pih7Li4uYyxzdWJzY3JpYmVkOiExfSkpfX07V1k9ZnVuY3Rpb24oYSxiLGMpe01ZKGEsYixjKS50aGVuKCgpPT57Z3FhKGIpfSl9OwpocWE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLkIoYSxfLlZEKSxkPWMudXJsO2M9Yy50YXJnZXQ9PT0iVEFSR0VUX05FV19XSU5ET1ciPyJfYmxhbmsiOiIiO3ZhciBlO2EuY2xpY2tUcmFja2luZ1BhcmFtcyYmKGU9e2l0Y3Q6YS5jbGlja1RyYWNraW5nUGFyYW1zfSk7dmFyIGY9Yj8uc291cmNlRGF0YT8ucGFyYW1zPy50aW1lc3RhbXA7ZiYmKGU9ey4uLmUsdGltZXN0YW1wOmZ9KTtfLnFQKHtocmVmOmQscGFyYW1zOmUsdGFyZ2V0OmMsZW5kcG9pbnQ6YSxhazpfLkIoYT8uY29tbWFuZE1ldGFkYXRhLF8uencpPy5yb290VmUsZWxlbWVudDpiLmV2ZW50Py50YXJnZXR9KX07aXFhPWZ1bmN0aW9uKGEpe3dvYShfLkIoYSxfLmZjYSk/LmFkZGl0aW9uYWxEYXRhcyl9OwpqcWE9ZnVuY3Rpb24oYSl7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm5hdmlnYXRlIixiPT57dmFyIGM9Yi5kZXRhaWw7Yy5wYXJhbXN8fChjLnBhcmFtcz17fSk7Yj1jLnBhcmFtczt2YXIgZD1iLml0Y3Q7ZCYmKF8uaHgoKS5DZihkKSxkZWxldGUgYi5pdGN0KTtiPWMuaHJlZjtpZighWFlbYl0pe2Q9ITE7aWYoYi5zdGFydHNXaXRoKCJodHRwIil8fGIuc3RhcnRzV2l0aCgiLy8iKSl7dmFyIGU9Yj9fLlBNKGIpLmhvc3RuYW1lfHx3aW5kb3cubG9jYXRpb24uaG9zdG5hbWU6IiIsZj13aW5kb3cubG9jYXRpb24uaG9zdG5hbWU7aWYoZD1lIT09ZillPWUuc3BsaXQoIi4iKS5zbGljZSgtMiksZj1mLnNwbGl0KCIuIikuc2xpY2UoLTIpLGUubGVuZ3RoJiZmLmxlbmd0aCYmKGQ9ZS5qb2luKCIuIikhPT1mLmpvaW4oIi4iKSl9WFlbYl09ZH1kPVhZW2JdO2lmKGQpXy5FTyh3aW5kb3csYik7ZWxzZXtkPWEuZ2V0V2ViUGxheWVyQ29udGV4dENvbmZpZygpO2E6e2lmKCFhLmdldFZpZGVvRGF0YSgpLmlzTGl2ZSl7aWYoKGY9CmMucGFyYW1zKSYmZi50aW1lc3RhbXApe2Y9Zi50aW1lc3RhbXA7YnJlYWsgYX1pZighXy54KCJlbWJlZHNfZW1jM2RzX2Fsd2F5c19jdXJ0aW1lX2tzIikmJihmPS9eaHR0cHM/OlwvXC93d3cueW91dHViZS5jb21cL3dhdGNoXD92PShbQS1aYS16MC05Xy1dezExfSkvLmV4ZWMoYy5ocmVmKT8uWzFdKSYmZj09PWEuZ2V0VmlkZW9EYXRhKCkudmlkZW9faWQmJihmPWEuZ2V0Q3VycmVudFRpbWUoKSxmPjApKXtmPU1hdGguZmxvb3IoZikudG9TdHJpbmcoKTticmVhayBhfX1mPXZvaWQgMH1lPShlPWMuZWxlbWVudCk/Xy5VeChlKT8/dm9pZCAwOnZvaWQgMDthOntpZihlKXt2YXIgaD1lLmdldEFzSnNvbigpO2U9aC52ZVR5cGU7aD1oLnRyYWNraW5nUGFyYW1zO2lmKGUpe2U9U3RyaW5nKGUpO2JyZWFrIGF9aWYoaCYmKGU9Xy5FbyhfLkNvKGgpLDIpKSl7ZT1lLnRvU3RyaW5nKCk7YnJlYWsgYX19ZT12b2lkIDB9ZXx8KE1hdGgucmFuZG9tKCk8Xy5zaigiZW1iZWRzX2xvZ193YXJuaW5nX3NhbXBsZV9zaXplX3JhdGUiLAouMDAxKSYmXy5JcChuZXcgXy5YaigiVXNpbmcgZmFsbGJhY2sgVkUgZm9yIGVsZW1lbnQ6ICIse3RhZ05hbWU6Yy5lbGVtZW50Py50YWdOYW1lLGNsYXNzTGlzdDpjLmVsZW1lbnQ/LmNsYXNzTGlzdC50b1N0cmluZygpLGRldGFpbDpjfSkpLGU9KDIxNDI4MykudG9TdHJpbmcoKSk7Yz17fTtkLndpZGdldFJlZmVycmVyJiYoYy5lbWJlZHNfd2lkZ2V0X3JlZmVycmVyPWQud2lkZ2V0UmVmZXJyZXIpO2QubG9hZGVyVXJsJiYoYy5lbWJlZHNfcmVmZXJyaW5nX2V1cmk9ZC5sb2FkZXJVcmwuc3Vic3RyaW5nKDAsMTI4KSk7ZC5pc0VtYmVkJiZkLmVtYmVkc0lmcmFtZU9yaWdpblBhcmFtJiYoYy5lbWJlZHNfcmVmZXJyaW5nX29yaWdpbj1kLmVtYmVkc0lmcmFtZU9yaWdpblBhcmFtKTtkLmlzRW1iZWQmJmQuZW1iZWRzRmVhdHVyZSYmKGMuZmVhdHVyZT1kLmVtYmVkc0ZlYXR1cmUpO2Q9ZTtiPShuZXcgVVJMKGIsImh0dHBzOi8vd3d3LnlvdXR1YmUuY29tIikpLnRvU3RyaW5nKCk7ZiYmCihiPV8uZWooYix7dGltZV9jb250aW51ZTpmfSkpO2lmKGQpe2lmKCFfLk1rKCJjb2JhbHQiKSl7Zj1bXTtlPTA7Zm9yKGg9MDtoPGQubGVuZ3RoO2grKyl7bGV0IGs9ZC5jaGFyQ29kZUF0KGgpO2s+MjU1JiYoZltlKytdPWsmMjU1LGs+Pj04KTtmW2UrK109a31kPV8uc2MoZiw0KX1iPV8uZWooYix7c291cmNlX3ZlX3BhdGg6ZH0pfWMmJihiPV8uZWooYixjKSk7Xy5FTyh3aW5kb3csYil9fSl9OwprcWE9ZnVuY3Rpb24oKXt2YXIgYT17fTthWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX2ZpbGwvY2xvc2VkX2NhcHRpb24vdjExLzI0cHguc3ZnIl09Xy5LKCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLGhlaWdodDoiMjQiLHZpZXdCb3g6IjAgMCAyNCAyNCIsd2lkdGg6IjI0In0sXy5LKCJwYXRoIix7ZDoiTTMuMDEgM0MzIDMgMyAzIDMuMDEgM0wzIDIxaDE4VjNIMy4wMXpNMTEgMTFIOS41di0uNWgtMnYzaDJWMTNIMTF2MWMwIC41NS0uNDUgMS0xIDFIN2MtLjU1IDAtMS0uNDUtMS0xdi00YzAtLjU1LjQ1LTEgMS0xaDNjLjU1IDAgMSAuNDUgMSAxdjF6bTcgMGgtMS41di0uNWgtMnYzaDJWMTNIMTh2MWMwIC41NS0uNDUgMS0xIDFoLTNjLS41NSAwLTEtLjQ1LTEtMXYtNGMwLS41NS40NS0xIDEtMWgzYy41NSAwIDEgLjQ1IDEgMXYxeiJ9KSk7YVsiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2kveW91dHViZV9maWxsX2V4cGVyaW1lbnRhbC9jbG9zZWRfY2FwdGlvbnMvdjMvMjRweC5zdmciXT0KXy5LKCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLGZpbGw6ImN1cnJlbnRDb2xvciIsaGVpZ2h0OiIyNCIsdmlld0JveDoiMCAwIDI0IDI0Iix3aWR0aDoiMjQifSxfLksoInBhdGgiLHtkOiJNMjEgM0gzYTIgMiAwIDAwLTIgMnYxNGEyIDIgMCAwMDIgMmgxOGEyIDIgMCAwMDItMlY1YTIgMiAwIDAwLTItMlpNOS4wMzggOC4wODljLjY5Ny4xNzggMS4yOTQuNjA2IDEuNzM3IDEuMTc2YTEgMSAwIDAxLTEuNTc4IDEuMjI4Yy0uMjEtLjI3LS40NDQtLjQxMy0uNjU0LS40NjdhLjg2Ljg2IDAgMDAtLjYzMi4wODVjLS4yMjIuMTE5LS40NTMuMzQyLS42MzEuNjg0QTIuNjQgMi42NCAwIDAwNyAxMmEyLjY0IDIuNjQgMCAwMC4yODEgMS4yMDVjLjE3Ny4zNDIuNDA4LjU2NS42My42ODRhLjg2Ljg2IDAgMDAuNjMyLjA4NWMuMjA5LS4wNTQuNDQ0LS4xOTcuNjU0LS40NjdhMSAxIDAgMDExLjU3OCAxLjIyOGMtLjQ0My41Ny0xLjA0Ljk5OC0xLjczNyAxLjE3NmEyLjg2IDIuODYgMCAwMS0yLjA2Ni0uMjU3Yy0uNjMxLS4zMzYtMS4xMzEtLjg4MS0xLjQ2Ni0xLjUyNkE0LjYgNC42IDAgMDE1IDEyYy0uMDA0LS43NC4xNy0xLjQ3LjUwNi0yLjEyOC4zMzYtLjY0NS44MzUtMS4xOSAxLjQ2Ni0xLjUyNmEyLjg2IDIuODYgMCAwMTIuMDY2LS4yNTdabTggMGMuNjk3LjE3OCAxLjI5NC42MDYgMS43MzcgMS4xNzZhMSAxIDAgMDEtMS41NzggMS4yMjhjLS4yMS0uMjctLjQ0NC0uNDEzLS42NTQtLjQ2N2EuODYuODYgMCAwMC0uNjMyLjA4NWMtLjIyMi4xMTktLjQ1My4zNDItLjYzMS42ODRBMi42NCAyLjY0IDAgMDAxNSAxMmEyLjY0IDIuNjQgMCAwMC4yODEgMS4yMDVjLjE3Ny4zNDIuNDA4LjU2NS42My42ODRhLjg2Ljg2IDAgMDAuNjMyLjA4NWMuMjA5LS4wNTQuNDQ0LS4xOTcuNjU0LS40NjdhMSAxIDAgMDExLjU3OCAxLjIyOGMtLjQ0My41Ny0xLjA0Ljk5OC0xLjczNyAxLjE3NmEyLjg2IDIuODYgMCAwMS0yLjA2Ni0uMjU3Yy0uNjMxLS4zMzYtMS4xMzEtLjg4MS0xLjQ2Ni0xLjUyNkE0LjYgNC42IDAgMDExMyAxMmMtLjAwNC0uNzQuMTctMS40Ny41MDYtMi4xMjguMzM2LS42NDUuODM1LTEuMTkgMS40NjYtMS41MjZhMi44NiAyLjg2IDAgMDEyLjA2Ni0uMjU3WiJ9KSk7CmFbImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pL3lvdXR1YmVfZmlsbC9wYXVzZS92OS8yNHB4LnN2ZyJdPV8uSygic3ZnIix7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIixoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCJ9LF8uSygicGF0aCIse2Q6Ik05IDE5SDdWNWgyWm04LTE0aC0ydjE0aDJaIn0pKTthWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX2ZpbGxfZXhwZXJpbWVudGFsL3BhdXNlL3Y5LzI0cHguc3ZnIl09Xy5LKCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLGZpbGw6ImN1cnJlbnRDb2xvciIsaGVpZ2h0OiIyNCIsdmlld0JveDoiMCAwIDI0IDI0Iix3aWR0aDoiMjQifSxfLksoInBhdGgiLHtkOiJNNi41IDNBMS41IDEuNSAwIDAwNSA0LjV2MTVBMS41IDEuNSAwIDAwNi41IDIxaDJhMS41IDEuNSAwIDAwMS41LTEuNXYtMTVBMS41IDEuNSAwIDAwOC41IDNoLTJabTkgMEExLjUgMS41IDAgMDAxNCA0LjV2MTVhMS41IDEuNSAwIDAwMS41IDEuNWgyYTEuNSAxLjUgMCAwMDEuNS0xLjV2LTE1QTEuNSAxLjUgMCAwMDE3LjUgM2gtMloifSkpOwphWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX2ZpbGwvcGxheV9hcnJvdy92Ny8yNHB4LnN2ZyJdPV8uSygic3ZnIix7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIixoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCJ9LF8uSygicGF0aCIse2Q6Im03IDQgMTIgOC0xMiA4VjR6In0pKTthWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX2ZpbGxfZXhwZXJpbWVudGFsL3BsYXkvdjQvMjRweC5zdmciXT1fLksoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsZmlsbDoiY3VycmVudENvbG9yIixoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCJ9LF8uSygicGF0aCIse2Q6Ik01IDQuNjIzVjE5LjM4YTEuNSAxLjUgMCAwMDIuMjYgMS4yOUwyMiAxMiA3LjI2IDMuMzNBMS41IDEuNSAwIDAwNSA0LjYyM1oifSkpO2FbImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pL3lvdXR1YmVfZmlsbC95b3V0dWJlX2xvZ29faWNvbi92Ni8yNHB4LnN2ZyJdPQpfLksoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsaGVpZ2h0OiIyNCIsdmlld0JveDoiMCAwIDI0IDI0Iix3aWR0aDoiMjQifSxfLksoInBhdGgiLHtkOiJNMjEuNTggNy4xOWEyLjUxIDIuNTEgMCAwMC0xLjc3LTEuNzdDMTguMjUgNSAxMiA1IDEyIDVzLTYuMjUgMC03LjgxLjQyYTIuNTEgMi41MSAwIDAwLTEuNzcgMS43N0EyNS44NyAyNS44NyAwIDAwMiAxMmEyNS44NyAyNS44NyAwIDAwLjQyIDQuODEgMi41MSAyLjUxIDAgMDAxLjc3IDEuNzdDNS43NSAxOSAxMiAxOSAxMiAxOXM2LjI1IDAgNy44MS0uNDJhMi41MSAyLjUxIDAgMDAxLjc3LTEuNzdBMjUuODcgMjUuODcgMCAwMDIyIDEyYTI1Ljg3IDI1Ljg3IDAgMDAtLjQyLTQuODF6TTEwIDE0LjY1di01LjNMMTUgMTJ6In0pKTthWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX2ZpbGxfZXhwZXJpbWVudGFsL3lvdXR1YmUvdjIvMjRweC5zdmciXT1fLksoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsCmZpbGw6ImN1cnJlbnRDb2xvciIsaGVpZ2h0OiIyNCIsdmlld0JveDoiMCAwIDI0IDI0Iix3aWR0aDoiMjQifSxfLksoInBhdGgiLHtkOiJNMTIgNXMtNi4yNDkgMC03LjgxLjQyYy0uODYuMjMtMS41NC45MS0xLjc3IDEuNzdDMiA4Ljc1IDIgMTIgMiAxMnMwIDMuMjUuNDIgNC44MWMuMjMuODYuOTEgMS41NCAxLjc3IDEuNzdDNS43NTEgMTkgMTIgMTkgMTIgMTlzNi4yNDkgMCA3LjgxLS40MmMuODYtLjIzIDEuNTQtLjkxIDEuNzctMS43N0MyMiAxNS4yNSAyMiAxMiAyMiAxMnMwLTMuMjUtLjQyLTQuODFjLS4yMy0uODYtLjkxLTEuNTQtMS43Ny0xLjc3QzE4LjI0OSA1IDEyIDUgMTIgNVptLTIgMTBWOWw1IDMtNSAzWiJ9KSk7YVsiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2kveW91dHViZV9vdXRsaW5lL2Fycm93X2NpcmNsZS92Ni8yNHB4LnN2ZyJdPV8uSygic3ZnIix7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiwiZW5hYmxlLWJhY2tncm91bmQiOiJuZXcgMCAwIDI0IDI0IiwKaGVpZ2h0OiIyNCIsdmlld0JveDoiMCAwIDI0IDI0Iix3aWR0aDoiMjQifSxfLksoInBhdGgiLHtkOiJNMjIgMTJjMCA1LjUxLTQuNDkgMTAtMTAgMTBTMiAxNy41MSAyIDEyaDFjMCA0Ljk2IDQuMDQgOSA5IDlzOS00LjA0IDktOS00LjA0LTktOS05QzguODEgMyA1LjkyIDQuNjQgNC4yOCA3LjM4Yy0uMTEuMTgtLjIyLjM3LS4zMS41NkwzLjk0IDhIOHYxSDEuOTZWM2gxdjQuNzRjLjA0LS4wOS4wNy0uMTcuMTEtLjI1LjExLS4yMi4yMy0uNDIuMzUtLjYzQzUuMjIgMy44NiA4LjUxIDIgMTIgMmM1LjUxIDAgMTAgNC40OSAxMCAxMHoifSkpO2FbImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pL3lvdXR1YmVfb3V0bGluZV9leHBlcmltZW50YWwvYXJyb3dfY291bnRlcmNsb2Nrd2lzZS92Mi8yNHB4LnN2ZyJdPV8uSygic3ZnIix7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIixmaWxsOiJjdXJyZW50Q29sb3IiLGhlaWdodDoiMjQiLHZpZXdCb3g6IjAgMCAyNCAyNCIsCndpZHRoOiIyNCJ9LF8uSygicGF0aCIse2Q6Ik0zIDJhMSAxIDAgMDAtMSAxdjZoNmExIDEgMCAwMDAtMkg1Ljc1N2E4IDggMCAxMS0xLjQ4NSA3LjA3IDEgMSAwIDEwLTEuOTMxLjUxNyAxMC4wMDIgMTAuMDAyIDAgMDAxOC4wOTMgMi43ODJBOS45OTkgOS45OTkgMCAwMDQgNlYzYTEgMSAwIDAwLTEtMVoifSkpO2FbImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pL3lvdXR1YmVfb3V0bGluZS9iZWxsL3YxMS8yNHB4LnN2ZyJdPV8uSygic3ZnIix7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiwiZW5hYmxlLWJhY2tncm91bmQiOiJuZXcgMCAwIDI0IDI0IixoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCJ9LF8uSygicGF0aCIse2Q6Ik0xMCAyMGg0YzAgMS4xLS45IDItMiAycy0yLS45LTItMnptMTAtMi42NVYxOUg0di0xLjY1bDItMS44OHYtNS4xNUM2IDcuNCA3LjU2IDUuMSAxMCA0LjM0di0uMzhjMC0xLjQyIDEuNDktMi41IDIuOTktMS43Ni42NS4zMiAxLjAxIDEuMDMgMS4wMSAxLjc2di4zOWMyLjQ0Ljc1IDQgMy4wNiA0IDUuOTh2NS4xNWwyIDEuODd6bS0xIC40Mi0yLTEuODh2LTUuNDdjMC0yLjQ3LTEuMTktNC4zNi0zLjEzLTUuMS0xLjI2LS41My0yLjY0LS41LTMuODQuMDNDOC4xNSA2LjExIDcgNy45OSA3IDEwLjQydjUuNDdsLTIgMS44OFYxOGgxNHYtLjIzeiJ9KSk7CmFbImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pL3lvdXR1YmVfb3V0bGluZV9leHBlcmltZW50YWwvYmVsbC92MTEvMjRweC5zdmciXT1fLksoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsZmlsbDoiY3VycmVudENvbG9yIixoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCJ9LF8uSygicGF0aCIse2Q6Ik0xNiAxOWE0IDQgMCAxMS04IDBINC43NjVDMy4yMSAxOSAyLjI1IDE3LjMwNCAzLjA1IDE1Ljk3bDEuODA2LTMuMDFBMSAxIDAgMDA1IDEyLjQ0NlY4YTcgNyAwIDAxMTQgMHY0LjQ0NmMwIC4xODEuMDUuMzYuMTQyLjUxNWwxLjgwNyAzLjAxYy44IDEuMzMzLS4xNjEgMy4wMjktMS43MTYgMy4wMjlIMTZaTTEyIDNhNSA1IDAgMDAtNSA1djQuNDQ2YTMgMyAwIDAxLS40MjggMS41NDNMNC43NjUgMTdoMTQuNDY4bC0xLjgwNS0zLjAxQTMgMyAwIDAxMTcgMTIuNDQ1VjhhNSA1IDAgMDAtNS01Wm0tMiAxNmEyIDIgMCAxMDQgMGgtNFoifSkpOwphWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX291dGxpbmUvY2xvY2svdjEwLzI0cHguc3ZnIl09Xy5LKCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLGhlaWdodDoiMjQiLHZpZXdCb3g6IjAgMCAyNCAyNCIsd2lkdGg6IjI0In0sXy5LKCJwYXRoIix7ZDoiTTE0Ljk3IDE2Ljk1IDEwIDEzLjg3VjdoMnY1Ljc2bDQuMDMgMi40OS0xLjA2IDEuN3pNMTIgM2MtNC45NiAwLTkgNC4wNC05IDlzNC4wNCA5IDkgOSA5LTQuMDQgOS05LTQuMDQtOS05LTltMC0xYzUuNTIgMCAxMCA0LjQ4IDEwIDEwcy00LjQ4IDEwLTEwIDEwUzIgMTcuNTIgMiAxMiA2LjQ4IDIgMTIgMnoifSkpO2FbImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pL3lvdXR1YmVfb3V0bGluZV9leHBlcmltZW50YWwvY2xvY2svdjEwLzI0cHguc3ZnIl09Xy5LKCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLGZpbGw6ImN1cnJlbnRDb2xvciIsCmhlaWdodDoiMjQiLHZpZXdCb3g6IjAgMCAyNCAyNCIsd2lkdGg6IjI0In0sXy5LKCJwYXRoIix7ZDoiTTEyIDFDNS45MjUgMSAxIDUuOTI1IDEgMTJzNC45MjUgMTEgMTEgMTEgMTEtNC45MjUgMTEtMTFTMTguMDc1IDEgMTIgMVptMCAyYTkgOSAwIDExMCAxOC4wMDFBOSA5IDAgMDExMiAzWm0wIDNhMSAxIDAgMDAtMSAxdjUuNTY1bC40ODUuMjkyIDMuMzMgMmExIDEgMCAwMDEuMDMtMS43MTRMMTMgMTEuNDM1VjdhMSAxIDAgMDAtMS0xWiJ9KSk7YVsiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2kveW91dHViZV9vdXRsaW5lL2Nsb3NlZF9jYXB0aW9uL3YxMS8yNHB4LnN2ZyJdPV8uSygic3ZnIix7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiwiZW5hYmxlLWJhY2tncm91bmQiOiJuZXcgMCAwIDI0IDI0IixoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCJ9LF8uSygicGF0aCIse2Q6Ik02IDE0di00YzAtLjU1LjQ1LTEgMS0xaDNjLjU1IDAgMSAuNDUgMSAxdjFIOS41di0uNWgtMnYzaDJWMTNIMTF2MWMwIC41NS0uNDUgMS0xIDFIN2MtLjU1IDAtMS0uNDUtMS0xem04IDFoM2MuNTUgMCAxLS40NSAxLTF2LTFoLTEuNXYuNWgtMnYtM2gydi41SDE4di0xYzAtLjU1LS40NS0xLTEtMWgtM2MtLjU1IDAtMSAuNDUtMSAxdjRjMCAuNTUuNDUgMSAxIDF6bTYtMTFINHYxNmgxNlY0bTEtMXYxOEgzVjMuMDFDMyAzIDMgMyAzLjAxIDNIMjF6In0pKTsKYVsiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2kveW91dHViZV9vdXRsaW5lX2V4cGVyaW1lbnRhbC9jbG9zZWRfY2FwdGlvbnMvdjMvMjRweC5zdmciXT1fLksoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsZmlsbDoiY3VycmVudENvbG9yIixoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCJ9LF8uSygicGF0aCIse2Q6Ik0yMSAzSDNhMiAyIDAgMDAtMiAydjE0YTIgMiAwIDAwMiAyaDE4YTIgMiAwIDAwMi0yVjVhMiAyIDAgMDAtMi0yWk0zIDE5VjVoMTh2MTRIM1pNNi45NzIgOC4zNDZjLS42MzEuMzM2LTEuMTMxLjg4MS0xLjQ2NiAxLjUyNkE0LjYgNC42IDAgMDA1IDEyYy0uMDA0Ljc0LjE3IDEuNDcuNTA2IDIuMTI4LjMzNi42NDUuODM1IDEuMTkxIDEuNDY2IDEuNTI2YTIuODYgMi44NiAwIDAwMi4wNjYuMjU3Yy42OTctLjE3OCAxLjI5NC0uNjA2IDEuNzM3LTEuMTc2YTEgMSAwIDAwLTEuNTc4LTEuMjI4Yy0uMjEuMjctLjQ0NC40MTMtLjY1NC40NjdhLjg2Ljg2IDAgMDEtLjYzMi0uMDg1Yy0uMjIyLS4xMTktLjQ1My0uMzQyLS42MzEtLjY4NEEyLjY0IDIuNjQgMCAwMTcgMTJhMi42IDIuNiAwIDAxLjI4MS0xLjIwNWMuMTc3LS4zNDIuNDA4LS41NjUuNjMtLjY4NGEuODYuODYgMCAwMS42MzItLjA4NWMuMjA5LjA1NC40NDQuMTk3LjY1NC40NjdhMSAxIDAgMDAxLjU3OC0xLjIyOGMtLjQ0My0uNTctMS4wNC0uOTk4LTEuNzM3LTEuMTc2YTIuODYgMi44NiAwIDAwLTIuMDY2LjI1N1ptOCAwYy0uNjMxLjMzNi0xLjEzMS44ODEtMS40NjYgMS41MjZBNC42IDQuNiAwIDAwMTMgMTJjLS4wMDQuNzQuMTcgMS40Ny41MDYgMi4xMjguMzM2LjY0NS44MzUgMS4xOTEgMS40NjYgMS41MjZhMi44NiAyLjg2IDAgMDAyLjA2Ni4yNTdjLjY5Ny0uMTc4IDEuMjk0LS42MDYgMS43MzctMS4xNzZhMSAxIDAgMDAtMS41NzgtMS4yMjhjLS4yMS4yNy0uNDQ0LjQxMy0uNjU0LjQ2N2EuODYuODYgMCAwMS0uNjMyLS4wODVjLS4yMjItLjExOS0uNDUzLS4zNDItLjYzMS0uNjg0QTIuNjQgMi42NCAwIDAxMTUgMTJhMi42IDIuNiAwIDAxLjI4MS0xLjIwNWMuMTc3LS4zNDIuNDA4LS41NjUuNjMtLjY4NGEuODYuODYgMCAwMS42MzItLjA4NWMuMjA5LjA1NC40NDQuMTk3LjY1NC40NjdhMSAxIDAgMDAxLjU3OC0xLjIyOGMtLjQ0My0uNTctMS4wNC0uOTk4LTEuNzM3LTEuMTc2YTIuODYgMi44NiAwIDAwLTIuMDY2LjI1N1oifSkpOwphWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX291dGxpbmUvZ2Vhci92MTAvMjRweC5zdmciXT1fLksoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsImVuYWJsZS1iYWNrZ3JvdW5kIjoibmV3IDAgMCAyNCAyNCIsaGVpZ2h0OiIyNCIsdmlld0JveDoiMCAwIDI0IDI0Iix3aWR0aDoiMjQifSxfLksoInBhdGgiLHtkOiJNMTIgOS41YzEuMzggMCAyLjUgMS4xMiAyLjUgMi41cy0xLjEyIDIuNS0yLjUgMi41LTIuNS0xLjEyLTIuNS0yLjUgMS4xMi0yLjUgMi41LTIuNW0wLTFjLTEuOTMgMC0zLjUgMS41Ny0zLjUgMy41czEuNTcgMy41IDMuNSAzLjUgMy41LTEuNTcgMy41LTMuNS0xLjU3LTMuNS0zLjUtMy41ek0xMy4yMiAzbC41NSAyLjIuMTMuNTEuNS4xOGMuNjEuMjMgMS4xOS41NiAxLjcyLjk4bC40LjMyLjUtLjE0IDIuMTctLjYyIDEuMjIgMi4xMS0xLjYzIDEuNTktLjM3LjM2LjA4LjUxYy4wNS4zMi4wOC42NC4wOC45OHMtLjAzLjY2LS4wOC45OGwtLjA4LjUxLjM3LjM2IDEuNjMgMS41OS0xLjIyIDIuMTEtMi4xNy0uNjItLjUtLjE0LS40LjMyYy0uNTMuNDMtMS4xMS43Ni0xLjcyLjk4bC0uNS4xOC0uMTMuNTEtLjU1IDIuMjRoLTIuNDRsLS41NS0yLjItLjEzLS41MS0uNS0uMThjLS42LS4yMy0xLjE4LS41Ni0xLjcyLS45OWwtLjQtLjMyLS41LjE0LTIuMTcuNjItMS4yMS0yLjEyIDEuNjMtMS41OS4zNy0uMzYtLjA4LS41MWMtLjA1LS4zMi0uMDgtLjY1LS4wOC0uOThzLjAzLS42Ni4wOC0uOThsLjA4LS41MS0uMzctLjM2TDMuNiA4LjU2bDEuMjItMi4xMSAyLjE3LjYyLjUuMTQuNC0uMzJjLjUzLS40NCAxLjExLS43NyAxLjcyLS45OWwuNS0uMTguMTMtLjUxLjU0LTIuMjFoMi40NE0xNCAyaC00bC0uNzQgMi45NmMtLjczLjI3LTEuNC42Ni0yIDEuMTRsLTIuOTItLjgzLTIgMy40NiAyLjE5IDIuMTNjLS4wNi4zNy0uMDkuNzUtLjA5IDEuMTRzLjAzLjc3LjA5IDEuMTRsLTIuMTkgMi4xMyAyIDMuNDYgMi45Mi0uODNjLjYuNDggMS4yNy44NyAyIDEuMTRMMTAgMjJoNGwuNzQtMi45NmMuNzMtLjI3IDEuNC0uNjYgMi0xLjE0bDIuOTIuODMgMi0zLjQ2LTIuMTktMi4xM2MuMDYtLjM3LjA5LS43NS4wOS0xLjE0cy0uMDMtLjc3LS4wOS0xLjE0bDIuMTktMi4xMy0yLTMuNDYtMi45Mi44M2MtLjYtLjQ4LTEuMjctLjg3LTItMS4xNEwxNCAyeiJ9KSk7CmFbImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pL3lvdXR1YmVfb3V0bGluZV9leHBlcmltZW50YWwvZ2Vhci92MTAvMjRweC5zdmciXT1fLksoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsZmlsbDoiY3VycmVudENvbG9yIixoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCJ9LF8uSygicGF0aCIse2Q6Ik0xMi44NDQgMWgtMS42ODdhMiAyIDAgMDAtMS45NjIgMS42MTYgMyAzIDAgMDEtMy45MiAyLjI2MyAyIDIgMCAwMC0yLjM4Ljg5MWwtLjg0MiAxLjQ2YTIgMiAwIDAwLjQxNyAyLjUwNyAzIDMgMCAwMTAgNC41MjUgMiAyIDAgMDAtLjQxNyAyLjUwN2wuODQzIDEuNDZhMiAyIDAgMDAyLjM4Ljg5MiAzLjAwMSAzLjAwMSAwIDAxMy45MTggMi4yNjNBMiAyIDAgMDAxMS4xNTcgMjNoMS42ODZhMiAyIDAgMDAxLjk2My0xLjYxNSAzLjAwMiAzLjAwMiAwIDAxMy45Mi0yLjI2MyAyIDIgMCAwMDIuMzgtLjg5MmwuODQyLTEuNDZhMiAyIDAgMDAtLjQxOC0yLjUwNyAzIDMgMCAwMTAtNC41MjYgMiAyIDAgMDAuNDE4LTIuNTA4bC0uODQzLTEuNDZhMiAyIDAgMDAtMi4zOC0uODkxIDMgMyAwIDAxLTMuOTE5LTIuMjYzQTIgMiAwIDAwMTIuODQ0IDFabS0xLjc2NyAyLjM0N2E2IDYgMCAwMC4wOC0uMzQ3aDEuNjg3YTQuOTggNC45OCAwIDAwMi40MDcgMy4zNyA0Ljk4IDQuOTggMCAwMDQuMTIyLjRsLjg0MyAxLjQ2QTQuOTggNC45OCAwIDAwMTguNSAxMmE0Ljk4IDQuOTggMCAwMDEuNzE2IDMuNzdsLS44NDMgMS40NmE0Ljk4IDQuOTggMCAwMC00LjEyMy40QTQuOTc5IDQuOTc5IDAgMDAxMi44NDMgMjFoLTEuNjg2YTQuOTggNC45OCAwIDAwLTIuNDA4LTMuMzcxIDQuOTk5IDQuOTk5IDAgMDAtNC4xMi0uMzk5bC0uODQ0LTEuNDZBNC45NzkgNC45NzkgMCAwMDUuNSAxMmE0Ljk4IDQuOTggMCAwMC0xLjcxNS0zLjc3bC44NDItMS40NTlhNC45OCA0Ljk4IDAgMDA0LjEyMy0uMzk5IDQuOTgxIDQuOTgxIDAgMDAyLjMyNy0zLjAyNVpNMTYgMTJhNCA0IDAgMTEtNy45OTkgMCA0IDQgMCAwMTggMFptLTQgMmEyIDIgMCAxMDAtNCAyIDIgMCAwMDAgNFoifSkpOwphWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX291dGxpbmUvbGluay92OC8yNHB4LnN2ZyJdPV8uSygic3ZnIix7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIixoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCJ9LF8uSygicGF0aCIse2Q6Ik0xNy43OCAxNmMyLjM1IDAgNC4yNi0yLjAyIDQuMjYtNC41UzIwLjEzIDcgMTcuNzggN0gxM3YxaDQuNzhjMS44IDAgMy4yNiAxLjU3IDMuMjYgMy41UzE5LjU4IDE1IDE3Ljc4IDE1SDEzdjFoNC43OHpNMTEgMTVINi4xOWMtMS44IDAtMy4yNi0xLjU3LTMuMjYtMy41UzQuMzkgOCA2LjE5IDhIMTFWN0g2LjE5Yy0yLjM1IDAtNC4yNiAyLjAyLTQuMjYgNC41UzMuODQgMTYgNi4xOSAxNkgxMXYtMXptNS00SDh2MWg4di0xeiJ9KSk7YVsiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2kveW91dHViZV9vdXRsaW5lX2V4cGVyaW1lbnRhbC9saW5rL3Y4LzI0cHguc3ZnIl09Xy5LKCJzdmciLAp7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIixmaWxsOiJjdXJyZW50Q29sb3IiLGhlaWdodDoiMjQiLHZpZXdCb3g6IjAgMCAyNCAyNCIsd2lkdGg6IjI0In0sXy5LKCJwYXRoIix7ZDoiTTkgMThjLjIyNiAwIC40NDgtLjAxMi42NjctLjAzN0E4LjAwMSA4LjAwMSAwIDAxOC4wNyAxNkg3YTQgNCAwIDExMC04aDJhNCA0IDAgMDE0IDQgMiAyIDAgMDAxLjY2OCAxLjk3M0E1Ljk5OSA1Ljk5OSAwIDAwOSA2SDdhNiA2IDAgMTAwIDEyaDJabTggMGE2IDYgMCAxMDAtMTJoLTJjLS4yMjUgMC0uNDQ4LjAxMi0uNjY3LjAzNkE4IDggMCAwMTE1LjkzIDhIMTdhNCA0IDAgMTEwIDhoLTJhNCA0IDAgMDEtNC00IDIgMiAwIDAwLTEuNjY4LTEuOTczQTYgNiAwIDAwMTUgMThoMloifSkpO2FbImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pL3lvdXR1YmVfb3V0bGluZS9zaGFyZS92MTIvMjRweC5zdmciXT1fLksoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsCmhlaWdodDoiMjQiLHZpZXdCb3g6IjAgMCAyNCAyNCIsd2lkdGg6IjI0In0sXy5LKCJwYXRoIix7ZDoiTTE1IDUuNjMgMjAuNjYgMTIgMTUgMTguMzdWMTRoLTFjLTMuOTYgMC03LjE0IDEtOS43NSAzLjA5IDEuODQtNC4wNyA1LjExLTYuNCA5Ljg5LTcuMWwuODYtLjEzVjUuNjNNMTQgM3Y2QzYuMjIgMTAuMTMgMy4xMSAxNS4zMyAyIDIxYzIuNzgtMy45NyA2LjQ0LTYgMTItNnY2bDgtOS04LTl6In0pKTthWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX291dGxpbmVfZXhwZXJpbWVudGFsL3NoYXJlL3YxMi8yNHB4LnN2ZyJdPV8uSygic3ZnIix7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIixmaWxsOiJjdXJyZW50Q29sb3IiLGhlaWdodDoiMjQiLHZpZXdCb3g6IjAgMCAyNCAyNCIsd2lkdGg6IjI0In0sXy5LKCJwYXRoIix7ZDoiTTEwIDMuMTU4VjcuNTFjLTUuNDI4LjIyMy04LjI3IDMuNzUtOC44NzUgMTEuMTk5LS4wNC40ODctLjA3Ljk3NS0uMDkgMS40NjRsLS4wMTQuMzk1Yy0uMDE0LjQ3My41NzguNjg0Ljg4LjMyLjMwMi0uMzY4LjYxLS43My45MjUtMS4wODZsLjI0NC0uMjczYzEuNzktMS45NjcgMy0yLjY3NyA0LjkzLTIuOTE3YTE4LjAxMSAxOC4wMTEgMCAwMTItLjExMnY0LjM0NmExIDEgMCAwMDEuNjQ2Ljc2M2w5LjgwNS04LjI5NyAxLjU1LTEuMzEtMS41NS0xLjMxLTkuODA1LTguMjk3QTEgMSAwIDAwMTAgMy4xNThabTIgNi4yN3YuMDAyLTQuMTE2bDcuOTA0IDYuNjg4TDEyIDE4LjY4OXYtNC4yMTJsLTIuMDIzLjAyNGMtMS45MzUuMDIyLTMuNTg3LjE3LTUuMTk3IDEuMDI0YTkgOSAwIDAwLTEuMzQ4Ljg5M2MuMzU1LTEuOTQ3LjkxNi0zLjM5IDEuNjMtNC40MjUgMS4wNjItMS41NDEgMi42MDctMi4zODUgNS4wMi0yLjQ4NUwxMiA5LjQyOFoifSkpOwphWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX291dGxpbmUvdm9sdW1lX29mZi92NC8yNHB4LnN2ZyJdPV8uSygic3ZnIix7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIixoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCJ9LF8uSygicGF0aCIse2Q6Im0zLjE1IDMuODUgNC4xNyA0LjE3TDYuMTYgOUgzdjZoMy4xNkwxMiAxOS45M3YtNy4yMmwyLjQ1IDIuNDVjLS4xNS4wNy0uMy4xMy0uNDUuMTh2MS4wNGMuNDMtLjEuODMtLjI3IDEuMi0uNDhsMS44MSAxLjgxYy0uODguNjItMS45IDEuMDQtMy4wMSAxLjJ2MS4wMWMxLjM5LS4xNyAyLjY2LS43MSAzLjczLTEuNDlsMi40MiAyLjQyLjcxLS43MS0xNy0xNy0uNzEuNzF6TTExIDExLjcxdjYuMDdMNi41MiAxNEg0di00aDIuNTJsMS41LTEuMjdMMTEgMTEuNzF6bS0uNjctNC45Mi0uNzEtLjcxTDEyIDQuMDd2NC4zOWwtMS0xVjYuMjJsLS42Ny41N3pNMTQgOC42NlY3LjYyYzIgLjQ2IDMuNSAyLjI0IDMuNSA0LjM4IDAgLjU4LS4xMyAxLjEzLS4zMyAxLjY0bC0uNzktLjc5Yy4wNy0uMjcuMTItLjU1LjEyLS44NSAwLTEuNTgtMS4wNi0yLjktMi41LTMuMzR6bTAtMy41OFY0LjA3YzMuOTUuNDkgNyAzLjg1IDcgNy45MyAwIDEuNTYtLjQ2IDMuMDEtMS4yMyA0LjI0bC0uNzMtLjczYy42MS0xLjAzLjk2LTIuMjMuOTYtMy41MSAwLTMuNTItMi42MS02LjQzLTYtNi45MnoifSkpOwphWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX291dGxpbmVfZXhwZXJpbWVudGFsL3ZvbHVtZV9tdXRlL3YyLzI0cHguc3ZnIl09Xy5LKCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLGZpbGw6ImN1cnJlbnRDb2xvciIsaGVpZ2h0OiIyNCIsdmlld0JveDoiMCAwIDI0IDI0Iix3aWR0aDoiMjQifSxfLksoInBhdGgiLHtkOiJNMTEuNDg1IDIuMTQzIDMuOTEzIDYuNjg3QTYgNiAwIDAwMSAxMS44MzJ2LjMzOGE2IDYgMCAwMDIuOTEzIDUuMTQ0bDcuNTcyIDQuNTQzQTEgMSAwIDAwMTMgMjFWM2ExLjAwMSAxLjAwMSAwIDAwLTEuNTE1LS44NTdaTTQuOTQyIDguNCAxMSA0Ljc2N3YxNC40NjZsLTYuMDU4LTMuNjM0QTQgNCAwIDAxMyAxMi4xNjl2LS4zMzhBNCA0IDAgMDE0Ljk0MiA4LjRabTE2LjM1MS0uMTA4TDE5IDEwLjU4NmwtMi4yOTMtMi4yOTNhMSAxIDAgMTAtMS40MTQgMS40MTRMMTcuNTg2IDEybC0yLjI5MyAyLjI5M2ExIDEgMCAxMDEuNDE0IDEuNDE0TDE5IDEzLjQxNGwyLjI5MyAyLjI5M2ExIDEgMCAxMDEuNDE0LTEuNDE0TDIwLjQxNCAxMmwyLjI5My0yLjI5NGExIDEgMCAxMC0xLjQxNC0xLjQxNFoifSkpOwphWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX291dGxpbmUvdm9sdW1lX29uL3YzLzI0cHguc3ZnIl09Xy5LKCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLGhlaWdodDoiMjQiLHZpZXdCb3g6IjAgMCAyNCAyNCIsd2lkdGg6IjI0In0sXy5LKCJwYXRoIix7ZDoiTTE3LjUgMTJjMCAyLjE0LTEuNSAzLjkyLTMuNSA0LjM4di0xLjA0YzEuNDQtLjQzIDIuNS0xLjc2IDIuNS0zLjM0IDAtMS41OC0xLjA2LTIuOS0yLjUtMy4zNFY3LjYyYzIgLjQ2IDMuNSAyLjI0IDMuNSA0LjM4ek0xMiA0LjA3djE1Ljg2TDYuMTYgMTVIM1Y5aDMuMTZMMTIgNC4wN3ptLTEgMi4xNUw2LjUyIDEwSDR2NGgyLjUyTDExIDE3Ljc4VjYuMjJ6TTIxIDEyYzAgNC4wOC0zLjA1IDcuNDQtNyA3Ljkzdi0xLjAxYzMuMzktLjQ5IDYtMy40IDYtNi45MnMtMi42MS02LjQzLTYtNi45MlY0LjA3YzMuOTUuNDkgNyAzLjg1IDcgNy45M3oifSkpO2FbImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pL3lvdXR1YmVfb3V0bGluZV9leHBlcmltZW50YWwvdm9sdW1lX21heC92Mi8yNHB4LnN2ZyJdPQpfLksoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsZmlsbDoiY3VycmVudENvbG9yIixoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCJ9LF8uSygicGF0aCIse2Q6Ik0xMS40ODUgMi4xNDMgMy45MTMgNi42ODdBNiA2IDAgMDAxIDExLjgzMnYuMzM4YTYgNiAwIDAwMi45MTMgNS4xNDRsNy41NzIgNC41NDNBMSAxIDAgMDAxMyAyMVYzYTEuMDAxIDEuMDAxIDAgMDAtMS41MTUtLjg1N1ptNi44OCAyLjA3OWExIDEgMCAwMC0uMDAxIDEuNDE0IDkgOSAwIDAxMCAxMi43MjggMSAxIDAgMDAxLjQxNCAxLjQxNCAxMSAxMSAwIDAwMC0xNS41NTYgMSAxIDAgMDAtMS40MTMgMFpNNC45NDEgOC40MDJsLjAwMS0uMDAyTDExIDQuNzY3djE0LjQ2NmwtNi4wNTgtMy42MzVBNCA0IDAgMDEzIDEyLjE2OHYtLjMzN2E0IDQgMCAwMTEuOTQxLTMuNDI5Wk0xNS41MzUgNy4wNWExIDEgMCAwMDAgMS40MTUgNSA1IDAgMDEwIDcuMDcgMSAxIDAgMDAxLjQxNSAxLjQxNSA2Ljk5OSA2Ljk5OSAwIDAwMC05LjkgMSAxIDAgMDAtMS40MTUgMFoifSkpOwphWyJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaS95b3V0dWJlX291dGxpbmUveF9tYXJrL3Y0LzI0cHguc3ZnIl09Xy5LKCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLCJlbmFibGUtYmFja2dyb3VuZCI6Im5ldyAwIDAgMjQgMjQiLGhlaWdodDoiMjQiLHZpZXdCb3g6IjAgMCAyNCAyNCIsd2lkdGg6IjI0In0sXy5LKCJwYXRoIix7ZDoibTEyLjcxIDEyIDguMTUgOC4xNS0uNzEuNzFMMTIgMTIuNzFsLTguMTUgOC4xNS0uNzEtLjcxTDExLjI5IDEyIDMuMTUgMy44NWwuNzEtLjcxTDEyIDExLjI5bDguMTUtOC4xNS43MS43MUwxMi43MSAxMnoifSkpO2FbImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9pL3lvdXR1YmVfb3V0bGluZV9leHBlcmltZW50YWwveC92MTEvMjRweC5zdmciXT1fLksoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsZmlsbDoiY3VycmVudENvbG9yIixoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLAp3aWR0aDoiMjQifSxfLksoInBhdGgiLHtkOiJNMTcuMjkzIDUuMjkzIDEyIDEwLjU4NiA2LjcwNyA1LjI5M2ExIDEgMCAxMC0xLjQxNCAxLjQxNEwxMC41ODYgMTJsLTUuMjkzIDUuMjkzYTEgMSAwIDAwMS40MTQgMS40MTRMMTIgMTMuNDE0bDUuMjkzIDUuMjkzYTEgMSAwIDAwMS40MTQtMS40MTRMMTMuNDE0IDEybDUuMjkzLTUuMjkzYTEgMSAwIDEwLTEuNDE0LTEuNDE0WiJ9KSk7YVsiaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20veW91dHViZS9pbWcvaWNvbnMvbXdlYi95b3V0dWJlX2ZpbGwvZXF1YWxpemVyL3YxLzI0cHguc3ZnIl09Xy5LKCJzdmciLHt3aWR0aDoiMTAwJSIsaGVpZ2h0OiIxMDAlIix2aWV3Qm94OiItNCAtNCAyNCAyNCIsdmVyc2lvbjoiMS4xIix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLCJ4bWxuczp4bGluayI6Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiLCJ4bWxuczp5dCI6Imh0dHA6Ly93d3cueW91dHViZS5jb20ifSxfLksoImciLAp7aWQ6Inl0bS1lcXVhbGl6ZXItaWNvbiIsZmlsbDoiI2ZmZiJ9LF8uSygicmVjdCIse2NsYXNzOiJ5dG0tZXF1YWxpemVyLWJhci1sZWZ0Iix4OiIxIix5OiI3Iix3aWR0aDoiNCIsaGVpZ2h0OiI5In0pLF8uSygicmVjdCIse2NsYXNzOiJ5dG0tZXF1YWxpemVyLWJhci1taWRkbGUiLHg6IjYiLHk6IjIiLHdpZHRoOiI0IixoZWlnaHQ6IjE0In0pLF8uSygicmVjdCIse2NsYXNzOiJ5dG0tZXF1YWxpemVyLWJhci1yaWdodCIseDoiMTEiLHk6IjQiLHdpZHRoOiI0IixoZWlnaHQ6IjEyIn0pKSk7YVsiaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20veW91dHViZS9pbWcvaWNvbnMvbXdlYi95b3V0dWJlX2ZpbGwvc2hvcnRzX3RleHRfbG9nby92Mi83MnB4LnN2ZyJdPV8uSygic3ZnIix7d2lkdGg6IjEwMCUiLGhlaWdodDoiMTAwJSIsdmlld0JveDoiMCAwIDcyIDI0IixmaWxsOiJub25lIix4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLCJ4bWxuczp4bGluayI6Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsifSwKXy5LKCJnIix7dHJhbnNmb3JtOiJ0cmFuc2xhdGUoMjQsIDIpIn0sXy5LKCJwYXRoIix7ZDoibS43MzIxNyAxMy43ODg2IDIuNTc3MzItLjA1MTVjLS4wNTE1NSAyLjMxOTUuMzYwODIgMy4wNDEyIDEuMzQwMjEgMy4wNDEyLjk1MzYxIDAgMS4zNDAyLS42MTg2IDEuMzQwMi0xLjg4MTQgMC0xLjg4MTUtLjk3OTM4LTIuODM1MS0yLjM3MTEzLTQuMDQ2NEMxLjQ3OTU5IDguOTk0NzkuNTUxNzU4IDcuOTYzODYuNTUxNzU4IDUuMjMxOWMwLTIuNjAzMDkgMS4xNTk3OTItNC4xNDk0OCA0LjE3NTI2Mi00LjE0OTQ4IDIuOTEyMzcgMCA0LjEyMzcxIDEuNzAxMDMgMy43MTEzMyA1LjIwNjE5bC0yLjU3NzMyLjE1NDYzYy4wNTE1NS0yLjM5NjktLjIwNjE4LTMuMjIxNjQtMS4yNjI4OC0zLjIyMTY0LS45NzkzOCAwLTEuMzE0NDQuNjQ0MzMtMS4zMTQ0NCAxLjgyOTg5IDAgMS43NzgzNS43NDc0MyAyLjMxOTU5IDIuMzQ1MzcgMy44NDAyMSAxLjk4NDUzIDEuODgxNCAzLjA5Mjc4IDIuOTg5NyAzLjA5Mjc4IDUuNTQxMiAwIDMuMjQ3NS0xLjI2Mjg5IDQuNDg0Ni00LjIwMTAzIDQuNDg0Ni0zLjA2NzAxLjAyNTctNC4zMDQxMjUtMS42MjM3LTMuNzg4NjYtNS4xMjg5Wk05LjY3NTU0Ljc0NzQwNWgyLjgzNTA2VjQuNTg3NjFjMCAxLjE1OTc5LS4wNTE2IDEuOTU4NzYtLjE1NDcgMi45MzgxNGguMDUxNmMuNTQxMi0xLjE1OTc5IDEuNDQzMy0xLjc1MjU3IDIuNjAzMS0xLjc1MjU3IDEuNzUyNiAwIDIuNSAxLjIzNzExIDIuNSAzLjM1MDUxdjkuNTM2MTFoLTIuODM1MVY5LjMyOTg4YzAtMS4wMzA5My0uMjU3Ny0xLjU0NjM5LS45MDItMS41NDYzOS0uNDg5NyAwLS45Mjc5LjI4MzUtMS4yMzcxLjc5ODk3VjE4LjY1OThIOS43MDEzMVYuNzQ3NDA1aC0uMDI1NzdaTTE4LjY3MDMgMTMuMjczMnYtMS44Mjk5YzAtNC4wNzIxNiAxLjE4NTYtNS42NDQzMyAzLjk5NDgtNS42NDQzMyAyLjgwOTMgMCAzLjg2NiAxLjYyMzcxIDMuODY2IDUuNjQ0MzN2MS44Mjk5YzAgMy45NjkxLTEuMDA1MiA1LjU5MjgtMy45NDMzIDUuNTkyOC0yLjk4OTcgMC0zLjkxNzUtMS42NzUzLTMuOTE3NS01LjU5MjhabTUgMS4wMzA5di0zLjk0MzNjMC0xLjcyNjc4LS4yNTc4LTIuNjAzMDctMS4wODI1LTIuNjAzMDctLjc5OSAwLTEuMDU2Ny44NzYyOS0xLjA1NjcgMi42MDMwN3YzLjk0MzNjMCAxLjgwNDEuMjU3NyAyLjYyODkgMS4wNTY3IDIuNjI4OS44MjQ3IDAgMS4wODI1LS44MjQ4IDEuMDgyNS0yLjYyODlaTTI3LjY2NTIgNi4wMzA4OWgyLjE5MDdsLjI1NzggMi43MzE5NmguMTAzYy4yODM2LTIuMDEwMzEgMS4yMTE0LTMuMDE1NDYgMi4zOTY5LTMuMDE1NDYuMTU0NyAwIC4zMDkzLjAyNTc3LjUxNTUuMDUxNTRsLS4xNTQ2IDMuMjczMmMtMS4xODU2LS4yNTc3My0yLjEzOTItLjA1MTU1LTIuNTc3My43MjE2NVYxOC42MzRoLTIuNzMyVjYuMDMwODlaTTM0LjgwNDQgMTUuNjcwMVY4LjI3MzJoLTEuMDMwOVY2LjA1NjdoMS4xNTk4bC4zNjA4LTMuNzM3MTFoMi4xMTM0VjYuMDU2N2gxLjkzM3YyLjIxNjVoLTEuODA0MXY2Ljk4NDVjMCAxLjE4NTYuMTU0NiAxLjQ0MzMuNjE4NSAxLjQ0MzMuNDEyNCAwIC43NzMyLS4wNTE1IDEuMTA4My0uMTgwNGwuMzYwOCAxLjgwNDFjLS44NTA1LjQxMjQtMS45MzMuNTQxMy0yLjYwMzEuNTQxMy0xLjgyOTktLjAyNTgtMi4yMTY1LS45Nzk0LTIuMjE2NS0zLjE5NTlaTTQwLjI2ODIgMTQuODE5NmwyLjM5NjktLjA1MTVjLS4xMjg5IDEuMzkxNy4zNjA4IDIuMTkwNyAxLjIxMTMgMi4xOTA3LjcyMTcgMCAxLjEzNDEtLjQ2MzkgMS4xMzQxLTEuMTA4MyAwLS44NzYzLS43OTktMS40NjktMi4xNjUtMi41LTEuNjIzNy0xLjIzNzEtMi42MDMxLTIuMTY0OS0yLjYwMzEtNC4yMDEgMC0yLjI0MjI3IDEuMTg1Ni0zLjMyNDc0IDMuNjM0LTMuMzI0NzQgMi42MDMxIDAgMy42MzQxIDEuMjg4NjYgMy40Mjc5IDQuMzU1NjRsLTIuMzk2OS4xMDMxYy0uMDI1OC0xLjkwNzE5LS4yODM1LTIuNDQ4NDMtMS4wODI1LTIuNDQ4NDMtLjc3MzIgMC0xLjEwODMuMzg2Ni0xLjEwODMgMS4wODI0NyAwIC45NzkzOC41NjcxIDEuNDQzMjYgMS40OTQ5IDIuMTEzMzYgMi4yMTY1IDEuNjQ5NSAzLjI0NzQgMi40NzQzIDMuMjQ3NCA0LjUzNjEgMCAyLjI2ODEtMS4yODg3IDMuNDAyMS0zLjczNzEgMy40MDIxLTIuNzgzNS0uMDI1OC0zLjgxNDQtMS41NDY0LTMuNDUzNi00LjE0OTVaIiwKZmlsbDoiI2ZmZiJ9KSksXy5LKCJnIix7dHJhbnNmb3JtOiJ0cmFuc2xhdGUoMCwgMCkifSxfLksoInBhdGgiLHtkOiJNMTguNDUgOC44NTFjMS45MDQtMS4wNjYgMi41NDEtMy40IDEuNDIyLTUuMjE0LTEuMTE5LTEuODE0LTMuNTctMi40Mi01LjQ3NS0xLjM1NUw1LjU1IDcuMjQ3Yy0xLjI5LjcyMi0yLjA0OSAyLjA2OS0xLjk2OCAzLjQ5MS4wODEgMS40MjMuOTg5IDIuNjgzIDIuMzUzIDMuMjY4bC45NDIuNDA0LTEuMzI3Ljc0MmMtMS45MDQgMS4wNjYtMi41NDEgMy40LTEuNDIyIDUuMjE0IDEuMTE5IDEuODE0IDMuNTcgMi40MjEgNS40NzUgMS4zNTVsOC44NDctNC45NjVjMS4yOS0uNzIyIDIuMDQ5LTIuMDY4IDEuOTY4LTMuNDktLjA4MS0xLjQyMy0uOTg5LTIuNjg0LTIuMzUzLTMuMjY5bC0uOTQyLS40MDMgMS4zMjctLjc0M1pNMTAgMTQuNTY3YS4yNS4yNSAwIDAwLjM3NC4yMTdsNC40NS0yLjU2N2EuMjUuMjUgMCAwMDAtLjQzM2wtNC40NS0yLjU2N2EuMjUuMjUgMCAwMC0uMzc0LjIxNnY1LjEzNFoiLAoiZmlsbC1ydWxlIjoiZXZlbm9kZCIsZmlsbDoiI2ZmZiJ9KSkpO2FbImh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL3lvdXR1YmUvaW1nL2ljb25zL213ZWIveW91dHViZV9maWxsL3dhdGVybWFyay92Mi8xMTBweC5zdmciXT1fLksoInN2ZyIse3dpZHRoOiIxMDAlIixoZWlnaHQ6IjEwMCUiLHZpZXdCb3g6IjAgMCAxMTAgMjYiLHZlcnNpb246IjEuMSIseG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiwieG1sbnM6eGxpbmsiOiJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiwieG1sbnM6eXQiOiJodHRwOi8vd3d3LnlvdXR1YmUuY29tIn0sXy5LKCJwYXRoIix7aWQ6Inl0cC1zdmctd2F0ZXJtYXJrIixkOiJNIDE2LjY4NzAwNiwwLjk5OTk4NTI0IEMgMTMuNTUxMDY5LDEuMDMyNzk3MiA3LjAyNDUxMTQsMS4xNjI0ODUyIDQuOTk5NTEyNiwxLjY4NzQ4NTIgYyAtMS40OTk5OTkxLDAuNCAtMi41OTk5OTg0LDEuNiAtMi45OTk5OTgyLDMgLTAuNjk5OTk5NSwyLjcgLTAuNjg3NDk5NSw4LjMxMjQ5OTggLTAuNjg3NDk5NSw4LjMxMjQ5OTggMCwwIC0wLjAxMjUsNS42MTI1IDAuNjg3NDk5NSw4LjMxMjUgMC4zOTk5OTk4LDEuNSAxLjU5OTk5OTEsMi42IDIuOTk5OTk4MiwzIDIuNjk5OTk4NCwwLjcgMTMuNDA2MjQyNCwwLjY4NzUgMTMuNDA2MjQyNCwwLjY4NzUgMCwwIDEwLjcwNjI0MywwLjAxMjUgMTMuNDA2MjQxLC0wLjY4NzUgMS41LC0wLjQgMi41OTk5OTksLTEuNiAyLjk5OTk5OSwtMyAwLjY5OTk5OSwtMi43IDAuNjg3NDk5LC04LjMxMjUgMC42ODc0OTksLTguMzEyNSAwLDAgMC4xMTI1LC01LjYxMjQ5OTggLTAuNjg3NDk5LC04LjMxMjQ5OTggLTAuNCwtMS41IC0xLjU5OTk5OSwtMi42IC0yLjk5OTk5OSwtMyBDIDI5LjExMTk5OCwwLjk4NzQ4NTI0IDE4LjQwNTc1NSwwLjk5OTk4NTI0IDE4LjQwNTc1NSwwLjk5OTk4NTI0IGMgMCwwIC0wLjY3MzQzNywtMC4wMTA5MzggLTEuNzE4NzQ5LDAgeiBtIDcyLjIxODcwNiwwLjkwNjI0OTk2IDAsMjEuMjgxMjQ5OCAyLjc4MTI0OCwwIDAuMzEyNSwtMS4zNzUgMC4wOTM3NSwwIGMgMC4zLDAuNSAwLjcxODc1LDAuODg3NSAxLjIxODc0OSwxLjE4NzUgMC41LDAuMyAxLjA4NzUsMC40MDYyNSAxLjY4NzQ5OSwwLjQwNjI1IDEuMSwwIDEuOTk5OTk5LC0wLjQ5Mzc1IDIuNDk5OTk5LC0xLjU5Mzc1IDAuNSwtMS4xIDAuODEyNDk5LC0yLjcwNjI1IDAuODEyNDk5LC00LjkwNjI1IGwgMCwtMi40MDYyNSBjIDAsLTEuNiAtMC4xMTI1LC0yLjkwNjI1IC0wLjMxMjQ5OSwtMy45MDYyNSAtMC4yLC0wLjg5OTk5OTkgLTAuNSwtMS41OTM3NDk5IC0xLC0yLjA5Mzc0OTkgLTAuNSwtMC40IC0xLjEwNjI0OSwtMC41OTM3NDk5IC0xLjkwNjI0OSwtMC41OTM3NDk5IC0wLjU5OTk5OSwwIC0xLjE4NzQ5OSwwLjE5OTk5OTkgLTEuNjg3NDk5LDAuNDk5OTk5OSAtMC40OTk5OTksMC4zIC0xLjAxODc0OSwwLjgwNjI1IC0xLjIxODc0OSwxLjQwNjI1IGwgMCwtNy45MDYyNDk5IC0zLjI4MTI0OCwwIHogbSAtNDkuOTk5OTcsMC43ODEyNSAzLjkwNjI0OCwxMy45MDYyNDk4IDAuMTg3NSw2LjcxODc1IDMuMzEyNDk4LDAgMCwtNi43MTg3NSAzLjg3NDk5NywtMTMuOTA2MjQ5OCAtMy4zNzQ5OTgsMCAtMS40MDYyNDksNi4zMTI0OTk5IGMgLTAuNCwxLjg5OTk5OTkgLTAuNzEyNDk5LDMuMTk5OTk5OSAtMC44MTI0OTksMy45OTk5OTk5IGwgLTAuMDkzNzUsMCBjIC0wLjIsLTEuMSAtMC41MTI1LC0yLjQgLTAuODEyNSwtMy45OTk5OTk5IGwgLTEuMzc0OTk5LC02LjMxMjQ5OTkgLTMuNDA2MjQ4LDAgeiBtIDI5LjU5MzczMiwwIDAsMi43MTg3NSAzLjQwNjI0OCwwIDAsMTcuOTA2MjQ5OCAzLjI4MTI0OCwwIDAsLTE3LjkwNjI0OTggMy40MDYyNDgsMCBjIDAsMCAwLjAwNjIsLTIuNzE4NzUgLTAuMDkzNzUsLTIuNzE4NzUgbCAtOS45OTk5OTQsMCB6IG0gLTUzLjQ5OTk2Nyw1LjEyNSA4LjkwNjI0NCw1LjE4NzQ5OTggLTguOTA2MjQ0LDUuMDkzNzUgMCwtMTAuMjgxMjQ5OCB6IG0gODkuNDA2MTkzLDAuMDkzNzUgYyAtMS43LDAgLTIuODkzNzUsMC41OTM3NDk5IC0zLjU5Mzc1LDEuNTkzNzQ5OSAtMC42OTk5OSwwLjk5OTk5OTkgLTAuOTk5OTk1LDIuNjA2MjQ5OSAtMC45OTk5OTUsNC45MDYyNDk5IGwgMCwyLjU5Mzc1IGMgMCwyLjIgMC4zMDAwMDUsMy45MDYyNSAwLjk5OTk5NSw0LjkwNjI1IDAuNywxLjEgMS44LDEuNTkzNzUgMy41LDEuNTkzNzUgMS40LDAgMi4zODc1LC0wLjMgMy4xODc1LC0xIDAuNywtMC43IDEuMDkzNzUsLTEuNjkzNzUgMS4wOTM3NSwtMy4wOTM3NSBsIDAsLTAuNSAtMi45MDYyNSwtMC4yMTg3NSBjIDAsMSAtMC4wODEyLDEuNiAtMC4yODEyNSwyIC0wLjEsMC40IC0wLjUsMC42MjUgLTEsMC42MjUgLTAuMywwIC0wLjYxMjUsLTAuMTEyNSAtMC44MTI1LC0wLjMxMjUgLTAuMiwtMC4zIC0wLjMwNjI1LC0wLjU5Mzc1IC0wLjQwNjI1LC0xLjA5Mzc1IC0wLjEsLTAuNSAtMC4wOTM3LC0xLjIxODc1IC0wLjA5MzcsLTIuMjE4NzUgbCAwLC0wLjc4MTI1IDUuNzE4NzUsLTAuMDkzNzUgMCwtMi42MjUgYyAwLC0xLjYgLTAuMTA2MjUsLTIuNzg3NSAtMC40MDYyNSwtMy42ODc1IC0wLjIsLTAuODk5OTk5OSAtMC43MTI1LC0xLjU5OTk5OTkgLTEuMzEyNSwtMS45OTk5OTk5IC0wLjcsLTAuNCAtMS40ODc1LC0wLjU5Mzc0OTkgLTIuNjg3NSwtMC41OTM3NDk5IHogbSAtNTAuNDk5OTY3LDAuMDkzNzUgYyAtMS4wOTk5OTksMCAtMi4wMTg3NDksMC4xODc0OTk5IC0yLjcxODc0OCwwLjY4NzQ5OTkgLTAuNywwLjQgLTEuMiwxLjEyNSAtMS40OTk5OTksMi4xMjQ5OTk5IC0wLjMsMSAtMC41LDIuMjc1IC0wLjUsMy44NzUgbCAwLDIuMjE4NzUgYyAwLDEuNSAwLjEwNjI1LDIuNzgxMjUgMC40MDYyNSwzLjc4MTI1IDAuMiwwLjkgMC43MDYyNDksMS42MjUgMS40MDYyNDksMi4xMjUgMC42OTk5OTksMC41IDEuNzEyNDk5LDAuNjgxMjUgMi44MTI0OTgsMC43ODEyNSAxLjE5OTk5OSwwIDIuMDgxMjQ5LC0wLjI4NzUgMi43ODEyNDksLTAuNjg3NSAwLjY5OTk5OSwtMC40IDEuMDk5OTk5LC0xLjA5Mzc1IDEuNDk5OTk5LC0yLjA5Mzc1IDAuMzk5OTk5LC0xIDAuNDk5OTk5LC0yLjMwNjI1IDAuNDk5OTk5LC0zLjkwNjI1IGwgMCwtMi4yMTg3NSBjIDAsLTEuNiAtMC4yLC0yLjg3NSAtMC40OTk5OTksLTMuODc1IC0wLjMsLTAuODk5OTk5OSAtMC44LC0xLjYyNDk5OTkgLTEuNDk5OTk5LC0yLjEyNDk5OTkgLTAuNywtMC41IC0xLjU4NzUsLTAuNjg3NDk5OSAtMi42ODc0OTksLTAuNjg3NDk5OSB6IG0gMTIuMTg3NDkzLDAuMDkzNzUgMCwxMS45MDYyNDk4IGMgLTAuMSwwLjMgLTAuMjkzNzUsMC40ODc1IC0wLjU5Mzc1LDAuNjg3NSAtMC4yLDAuMiAtMC41MTI1LDAuMzEyNSAtMC44MTI0OTksMC4zMTI1IC0wLjMsMCAtMC41ODc1LC0wLjEwNjI1IC0wLjY4NzUsLTAuNDA2MjUgLTAuMSwtMC4zIC0wLjE4NzUsLTAuNzA2MjUgLTAuMTg3NSwtMS40MDYyNSBsIDAsLTEwLjk5OTk5OTggLTMuNDA2MjQ4LDAgMCwxMS4yMTg3NDk4IGMgMCwxLjQgMC4xODc1LDIuMzkzNzUgMC42ODc1LDMuMDkzNzUgMC40OTk5OTksMC43IDEuMjE4NzQ5LDEgMi4yMTg3NDgsMSAxLjQsMCAyLjQ4NzQ5OSwtMC42OTM3NSAzLjE4NzQ5OSwtMi4wOTM3NSBsIDAuMDkzNzUsMCAwLjMxMjUsMS43ODEyNSAyLjU5Mzc0OSwwIDAsLTE0Ljk5OTk5OTggYyAwLDAgLTMuNDA2MjQ4LDAuMDA2MiAtMy40MDYyNDgsLTAuMDkzNzUgeiBtIDE3LjMxMjQ4OSwwIDAsMTEuOTA2MjQ5OCBjIC0wLjEsMC4zIC0wLjI5Mzc0OSwwLjQ4NzUgLTAuNTkzNzQ5LDAuNjg3NSAtMC4yLDAuMiAtMC41MTI1LDAuMzEyNSAtMC44MTI1LDAuMzEyNSAtMC4zLDAgLTAuNTg3NDk5LC0wLjEwNjI1IC0wLjY4NzQ5OSwtMC40MDYyNSAtMC4xLC0wLjMgLTAuMjE4NzUsLTAuNzA2MjUgLTAuMjE4NzUsLTEuNDA2MjUgbCAwLC0xMC45OTk5OTk4IC0zLjQwNjI0OCwwIDAsMTEuMjE4NzQ5OCBjIDAsMS40IDAuMjE4NzUsMi4zOTM3NSAwLjcxODc0OSwzLjA5Mzc1IDAuNSwwLjcgMS4xODc1LDEgMi4xODc0OTksMSAxLjM5OTk5OSwwIDIuNTE4NzQ5LC0wLjY5Mzc1IDMuMjE4NzQ4LC0yLjA5Mzc1IGwgMC4wOTM3NSwwIDAuMjgxMjUsMS43ODEyNSAyLjYyNDk5OCwwIDAsLTE0Ljk5OTk5OTggYyAwLDAgLTMuNDA2MjQ4LDAuMDA2MiAtMy40MDYyNDgsLTAuMDkzNzUgeiBtIDIwLjkwNjIzNSwyLjA5Mzc0OTggYyAwLjQsMCAwLjU4MTI1LDAuMTEyNSAwLjc4MTI1LDAuMzEyNSAwLjIsMC4zIDAuMzA2MjUsMC41OTM3NSAwLjQwNjI1LDEuMDkzNzUgMC4xLDAuNSAwLjA5MzcsMS4yMTg3NSAwLjA5MzcsMi4yMTg3NSBsIDAsMS4wOTM3NSAtMi41LDAgMCwtMS4wOTM3NSBjIDAsLTEgLTAuMDA2LC0xLjcxODc1IDAuMDkzNywtMi4yMTg3NSAwLC0wLjQgMC4xMTI1LC0wLjggMC4zMTI1LC0xIDAuMiwtMC4zIDAuNTEyNSwtMC40MDYyNSAwLjgxMjUsLTAuNDA2MjUgeiBtIC01MC40OTk5NjcsMC4xMjUgYyAwLjUsMCAwLjgsMC4xODc1IDEsMC42ODc1IDAuMTk5OTk5LDAuNSAwLjI4MTI0OSwxLjMwNjI1IDAuMjgxMjQ5LDIuNDA2MjUgbCAwLDQuNjg3NSBjIDAsMS4xIC0wLjA4MTI1LDEuOTA2MjUgLTAuMjgxMjQ5LDIuNDA2MjUgLTAuMiwwLjUgLTAuNSwwLjY4NzUgLTEsMC42ODc1IC0wLjUsMCAtMC43OTk5OTksLTAuMTg3NSAtMC45OTk5OTksLTAuNjg3NSAtMC4yLC0wLjUgLTAuMzEyNSwtMS4zMDYyNSAtMC4zMTI1LC0yLjQwNjI1IGwgMCwtNC42ODc1IGMgMCwtMS4xIDAuMTEyNSwtMS45MDYyNSAwLjMxMjUsLTIuNDA2MjUgMC4yLC0wLjUgMC40OTk5OTksLTAuNjg3NSAwLjk5OTk5OSwtMC42ODc1IHogbSAzOS42ODc0NzYsMC4wOTM3NSBjIDAuMywwIDAuNjEyNSwwLjEwNjI1IDAuODEyNSwwLjQwNjI1IDAuMiwwLjMgMC4yNzUsMC42NzUgMC4zNzUsMS4zNzUgMC4xLDAuNiAwLjEyNDk5OSwxLjUxODc1IDAuMTI0OTk5LDIuNzE4NzUgbCAwLjA5Mzc1LDEuOTA2MjUgYyAwLDEuMSAwLjAwNjIsMS45OTM3NSAtMC4wOTM3NSwyLjU5Mzc1IC0wLjEsMC42IC0wLjE5OTk5OSwxLjA4MTI1IC0wLjQ5OTk5OSwxLjI4MTI1IC0wLjIsMC4zIC0wLjUwNjI1LDAuNDA2MjUgLTAuOTA2MjUsMC40MDYyNSAtMC4zLDAgLTAuNTEyNDk5LC0wLjA4NzUgLTAuODEyNDk5LC0wLjE4NzUgLTAuMiwtMC4xIC0wLjM5Mzc1LC0wLjI5Mzc1IC0wLjU5Mzc1LC0wLjU5Mzc1IGwgMCwtOC41IGMgMC4xLC0wLjQgMC4yOTM3NSwtMC43IDAuNTkzNzUsLTEgMC4zLC0wLjMgMC42MDYyNDksLTAuNDA2MjUgMC45MDYyNDksLTAuNDA2MjUgeiIsCmNsYXNzOiJ5dHAtc3ZnLWZpbGwiLGZpbGw6IiNmZmYifSkpO2FbImh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL3lvdXR1YmUvaW1nL2ljb25zL213ZWIveW91dHViZV9maWxsL3lvdXR1YmVfc2hvcnRzX2JyYW5kXzI0L3YyLzI0cHguc3ZnIl09Xy5LKCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLHdpZHRoOiIyNCIsaGVpZ2h0OiIyNCIsdmlld0JveDoiMCAwIDI0IDI0In0sXy5LKCJwYXRoIix7ZDoibTE5LjQ1LDMuODhjMS4xMiwxLjgyLjQ4LDQuMTUtMS40Miw1LjIybC0xLjMyLjc0Ljk0LjQxYzEuMzYuNTgsMi4yNywxLjg1LDIuMzUsMy4yNy4wOCwxLjQzLS42OCwyLjc3LTEuOTcsMy40OWwtOCw0LjQ3Yy0xLjkxLDEuMDYtNC4zNS40Ni01LjQ4LTEuMzUtMS4xMi0xLjgyLS40OC00LjE1LDEuNDItNS4yMmwxLjMzLS43NC0uOTQtLjQxYy0xLjM2LS41OC0yLjI3LTEuODUtMi4zNS0zLjI3LS4wOC0xLjQzLjY4LTIuNzcsMS45Ny0zLjQ5bDgtNC40N2MxLjkxLTEuMDYsNC4zNS0uNDYsNS40OCwxLjM1WiIsCmZpbGw6IiNmMDMifSksXy5LKCJwYXRoIix7ZDoibTEwLDE1bDUtMy01LTN2NloiLGZpbGw6IiNmZmYifSkpO2FbImh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL3lvdXR1YmUvaW1nL2ljb25zL213ZWIveW91dHViZV9maWxsL3lvdXR1YmUvdjIvMjRweC5zdmciXT1fLksoInN2ZyIse3htbG5zOiJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIsdmlld0JveDoiMCAwIDY3IDYwIixmaWxsOiIifSxfLksoInBhdGgiLHtkOiJNNjMgMTQuODdhNy44ODUgNy44ODUgMCAwMC01LjU2LTUuNTZDNTIuNTQgOCAzMi44OCA4IDMyLjg4IDhTMTMuMjMgOCA4LjMyIDkuMzFjLTIuNy43Mi00LjgzIDIuODUtNS41NiA1LjU2QzEuNDUgMTkuNzcgMS40NSAzMCAxLjQ1IDMwczAgMTAuMjMgMS4zMSAxNS4xM2MuNzIgMi43IDIuODUgNC44MyA1LjU2IDUuNTZDMTMuMjMgNTIgMzIuODggNTIgMzIuODggNTJzMTkuNjYgMCAyNC41Ni0xLjMxYzIuNy0uNzIgNC44My0yLjg1IDUuNTYtNS41NkM2NC4zMSA0MC4yMyA2NC4zMSAzMCA2NC4zMSAzMHMwLTEwLjIzLTEuMzEtMTUuMTN6In0pLApfLksoInBhdGgiLHtmaWxsOiIjRkZGIixjbGFzczoibG9nby1hcnJvdyIsZDoiTTI2LjYgMzkuNDNMNDIuOTMgMzAgMjYuNiAyMC41N3oifSkpO2FbImh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL3lvdXR1YmUvaW1nL2ljb25zL213ZWIveW91dHViZV9vdXRsaW5lL2Z1bGxzY3JlZW5fZXhpdC92MS8yNHB4LnN2ZyJdPV8uSygic3ZnIix7eG1sbnM6Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiwiZW5hYmxlLWJhY2tncm91bmQiOiJuZXcgMCAwIDI0IDI0IixoZWlnaHQ6IjI0Iix2aWV3Qm94OiIwIDAgMjQgMjQiLHdpZHRoOiIyNCJ9LF8uSygicGF0aCIse2Q6Ik0xMCwxMEg2VjloM1Y2aDFWMTB6IE0xOCw5aC0zVjZoLTF2NGg0Vjl6IE0xNSwxNWgzdi0xaC00djRoMVYxNXogTTEwLDE0SDZ2MWgzdjNoMVYxNHoifSkpO2FbImh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL3lvdXR1YmUvaW1nL2ljb25zL213ZWIveW91dHViZV9vdXRsaW5lL2Z1bGxzY3JlZW4vdjEvMjRweC5zdmciXT0KXy5LKCJzdmciLHt4bWxuczoiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciLCJlbmFibGUtYmFja2dyb3VuZCI6Im5ldyAwIDAgMjQgMjQiLGhlaWdodDoiMjQiLHZpZXdCb3g6IjAgMCAyNCAyNCIsd2lkdGg6IjI0In0sXy5LKCJwYXRoIix7ZDoiTTcsMTFINlY2aDV2MUg3VjExeiBNMTgsNmgtNXYxaDR2NGgxVjZ6IE0xOCwxM2gtMXY0aC00djFoNVYxM3ogTTExLDE3SDd2LTRINnY1aDVWMTd6In0pKTtyZXR1cm4gYX07bHFhPWZ1bmN0aW9uKCl7cmV0dXJuIFByb21pc2UucmVzb2x2ZShFbmEoKSl9O21xYT1mdW5jdGlvbihhLGIpe3JldHVybiBzWSgiaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20veW91dHViZS9pbWcvaWNvbnMvbXdlYi8iLGEsYil9OwpjcWE9YXN5bmMgZnVuY3Rpb24oYSxiKXt2YXIgYz1iLmlkZW50aWZpZXIsZD1iLklqLGU9Yi5leHRyYXMsZj1iLnRhcmdldCxoPWIuUG07Yj1iLm5BO2QmJmF3YWl0IFZZKGEse2lkZW50aWZpZXI6YyxJajpkLHRuOiExLGV4dHJhczplLFBtOmh9KTthd2FpdCBhLmlzVmlzaWJsZShjKXx8KGE9YXdhaXQgWm9hKGEsYyksXy5YTSgiZW5nYWdlbWVudC1wYW5lbC1wdXNoIix7aWRlbnRpZmllcjpjLHd6OmEsTEo6ZixuQTpifSksYyYmXy5vTSgpLmRpc3BhdGNoKF8ua0Eoe3R5cGU6Ik1BSU5fQVBQX0FERF9PUEVOX0VOR0FHRU1FTlRfUEFORUwiLHBheWxvYWQ6e3h6OmN9fSkpKX07Vlk9YXN5bmMgZnVuY3Rpb24oYSxiKXt2YXIgYz1iLmlkZW50aWZpZXIsZD1iLklqO2I9Yi5QbTtjJiYoZCYmYS5PbS5zZXQoYyxkKSxfLlhNKCJlbmdhZ2VtZW50LXBhbmVsLXVwZGF0ZSIse2lkZW50aWZpZXI6Yyx3ejpkLFBtOmJ9KSl9Owp0cWE9ZnVuY3Rpb24oYSl7dmFyIGI9Xy55KCk7bnFhKCk7Xy5KeihiLHtqYTpfLkx4LE1iOm9xYX0pO18uSnooYix7amE6Xy5sRixNYjpfLncoIkhUTUxfRElSIik9PT0icnRsIj8icnRsIjoibHRyIn0pO18uSnooYix7amE6Xy5rRixNYjooKT0+ITB9KTtfLkp6KGIse2phOl8ubU8sUGE6WVl9KTtfLkp6KGIse2phOl8uWEwsUGE6Wll9KTtfLkp6KGIse2phOl8ub08sTWI6a3FhfSk7Xy5KeihiLHtqYTpfLkxELE1iOl8udU99KTtfLkp6KGIse2phOl8uY0wsUGE6cHFhfSk7Xy5KeihiLHtqYTpfLmJJLFdjOl8ub019KTtfLkp6KGIse2phOl8ueVAsTWI6bmV3IHFxYX0pO18uSnooYix7amE6Xy52UCxNYjp7VnU6ITAsQ3g6ITB9fSk7Xy5KeihiLHtqYTpfLkpILFdjOigpPT5Qcm9taXNlLnJlc29sdmUoYSl9KTtfLkp6KGIse2phOl8uS0gsV2M6KCk9PigpPT5hfSk7Xy5KeihiLHtqYTokWSxQYTphWn0pO18uSnooYix7amE6Xy5iTCxQYTpycWF9KTtfLkp6KGIse2phOl8uT1csV2M6Xy5oeH0pOwpfLkp6KGIse2phOl8uYk0sTWI6Xy5MT30pO2lmKF8ueCgid2ViX2VuYWJsZV9yZW5kZXJlcl9sb2dnZXIiKSl7bGV0IGM9bmV3IERYO18uTk0od2luZG93LCJuYXZpZ2F0ZSIsKCk9PntjLmFib3J0KCl9KTtfLkp6KGIse2phOl8uQ0csTWI6bmV3IHNxYShjLnNpZ25hbCl9KX19O25xYT1mdW5jdGlvbigpe3ZhciBhPV8ueSgpLGI9YS5yZXNvbHZlKF8uSXkpO18uR3kubWFwcGluZ3Muc2V0KFNXLnRvU3RyaW5nKCkse3R5cGU6Im1hcHBpbmciLHZhbHVlOmJ9KTtfLkp6KGEse2phOl8uSHksTWI6bHFhfSl9O3pYPWZ1bmN0aW9uKCl7dmFyIGE9e30sYj1fLlZ3KCk7YiYmKGEuZGVzdGluYXRpb25TY3JlZW49Yi5nZXRBc0pzb24oKS52ZVR5cGV8fHZvaWQgMCk7YS5uYXZUeXBlPSJTTElfTkFWX1RZUEVfQ09MRCI7YS5hY3Rpb25UeXBlPSJMQVRFTkNZX0FDVElPTl9FTUJFRCI7cmV0dXJue25hdmlnYXRpb246YX19Owp1cWE9ZnVuY3Rpb24oYSxiPXt9KXtyZXR1cm57dHlwZToyLGNvbW1hbmQ6YSxmb3JtOmIuZm9ybX19OwpfLmJaPWZ1bmN0aW9uKGEpe18uQXEoImVwX2luaXRfaWpzIik7dHFhKGEpO3ZhciBiPWRvY3VtZW50LmJvZHk7aWYoIWIpdGhyb3cgRXJyb3IoImllIik7Yj1uZXcgdnFhKHtyb290OmIscEo6Xy55KCl9KTtiLmluc3RhbGwod3FhKTtiLnRyYW5zaXRpb24oImluaXRpYWxpemVkIik7Xy5BcSgiZXBfaW5pdF9pamUiKTtfLngoImVtYmVkc190cmFjaW5nX2tzIil8fHBwYSgpO18uWU09ITA7KF8uTWsoImllbW9iaWxlIil8fF8uTWsoIndpbmRvd3MgcGhvbmUiKSYmXy5NaygiZWRnZSIpKSYmXy5NaygiOyB2aXJ0dWFsIil8fChYb2EoYSksbm9hKCkpO3FvYShhKTtFWT1hO2pxYShhKTthPSFfLngoIm13ZWJfY29tbWFuZF9oYW5kbGVyX3NjcmVlbl9tYW5hZ2VyX2tpbGxzd2l0Y2giKTtiPVtfLlFXLF8uVXosXy5DeV07Sm9hKF8ueCgibXdlYl9jb21tYW5kX2hhbmRsZXJfZGlzYWJsZV9idWlsZF9jb21tYW5kX3BheWxvYWRfc3R1YiIpP3VxYTp2b2lkIDAsYT9fLmh4KCk6dm9pZCAwLGEsCmEsYik7Xy5KeihfLnkoKSx7amE6Xy5VRCxNYjpMWC5pbnN0YW5jZX0pO2lvYSgpO0ZwYSgpfTtXVz1bXTtEb2E9e2dIOiJTTElfU1RBVFVTX1VOS05PV04iLGVIOiJTTElfU1RBVFVTX1NVQ0NFU1MiLGNIOiJTTElfU1RBVFVTX0ZBSUxVUkUiLGZIOiJTTElfU1RBVFVTX1RJTUVPVVQiLGFIOiJTTElfU1RBVFVTX0FCT1JURUQiLGJIOiJTTElfU1RBVFVTX0NBTkNFTExFRCIsZEg6IlNMSV9TVEFUVVNfUkVKRUNURUQifTtjWj1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuZXZlbnRzPW5ldyBNYXB9Y2xlYXIoKXt0aGlzLmV2ZW50cy5jbGVhcigpfX07CktuYT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuRD1uZXcgeHFhO3RoaXMudj1uZXcgY1o7dGhpcy5CPW5ldyBjWjt0aGlzLm89MDt0aGlzLmZsdXNoSW50ZXJ2YWw9M0U0O3RoaXMuaj1uZXcgXy5qeSh0aGlzLmZsdXNoSW50ZXJ2YWwpO3RoaXMuai5saXN0ZW4oInRpY2siLHRoaXMuZmx1c2gsITEsdGhpcyl9Zmx1c2goKXtpZih0aGlzLm8pe3ZhciBhPXtsb2dnZWRFdmVudHM6WVcodGhpcy52KSx1bmxvZ2dlZEV2ZW50czpZVyh0aGlzLkIpfTtpZihfLngoImV4cG9ydF9wbGF5ZXJfdmVyc2lvbl90b195dGNvbmZpZyIpKXt2YXIgYjsoYj1fLncoIlBMQVlFUl9DTElFTlRfVkVSU0lPTiIpKT8oYj1iLnNwbGl0KCItIilbMF0ucmVwbGFjZSgvXC4vZywiIiksYj1pc05hTihOdW1iZXIoYikpPyIwIjpiKTpiPSIiO3ZhciBjPV8udygiUExBWUVSX0NMSUVOVF9WRVJTSU9OIik7aWYoYyl7Yz1jLnNwbGl0KCItIik7bGV0IGQ9IiI7Yy5sZW5ndGg+MSYmKGQ9Y1tjLmxlbmd0aC0xXSk7Yz0KSm5hKGQuc3RhcnRzV2l0aCgiY2FuYXJ5X2V4cGVyaW1lbnQiKT8iY2FuYXJ5IjpkLnN0YXJ0c1dpdGgoImNhbmFyeV9jb250cm9sIik/ImNvbnRyb2wiOiJub25lIil9ZWxzZSBjPSJDTElFTlRfQ0FOQVJZX1NUQVRFX1VOS05PV04iO2EuZGltZW5zaW9ucz17cGxheWVyQ2xpZW50VmVyc2lvbjpiLHBsYXllckNhbmFyeVN0YXRlOmN9fXRoaXMuRC5mbHVzaChhKTt0aGlzLnYuY2xlYXIoKTt0aGlzLkIuY2xlYXIoKTt0aGlzLm89MDt0aGlzLmouZW5hYmxlZCYmdGhpcy5qLnN0b3AoKX19fTt4cWE9Y2xhc3N7Zmx1c2goYSxiKXtfLngoImVuYWJsZV9jbGllbnRfc2xpX2xvZ2dpbmciKSYmXy5FcCgic2xpRXZlbnRCYXRjaCIsYSx7c2VuZElzb2xhdGVkUGF5bG9hZDohIWJ9KX19O2RaPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMuaj1hfX07CmVaPWNsYXNzIGV4dGVuZHMgZFp7Z2V0IGVudGl0eU1ldGFkYXRhKCl7cmV0dXJuIHRoaXMuai5lbnRpdHlNZXRhZGF0YX1zZXQgZW50aXR5TWV0YWRhdGEoYSl7dGhpcy5qLmVudGl0eU1ldGFkYXRhPWF9fTt5cWE9Y2xhc3MgZXh0ZW5kcyBkWntvKCl7dmFyIGE9W107dGhpcy5qLnZpZGVvJiZhLnB1c2godGhpcy5qLnZpZGVvKTtyZXR1cm5bLi4uKG5ldyBTZXQoYSkpXX19O3pxYT1jbGFzcyBleHRlbmRzIGRae28oKXt2YXIgYT1bXTt0aGlzLmoudmlkZW8mJmEucHVzaCh0aGlzLmoudmlkZW8pO3RoaXMuai5wbGF5bGlzdCYmYS5wdXNoKHRoaXMuai5wbGF5bGlzdCk7dGhpcy5qLnZpZGVvSXRlbSYmYS5wdXNoKHRoaXMuai52aWRlb0l0ZW0pO3RoaXMuai5wbGF5bGlzdEl0ZW0mJmEucHVzaCh0aGlzLmoucGxheWxpc3RJdGVtKTtyZXR1cm5bLi4uKG5ldyBTZXQoYSkpXX19OwpBcWE9Y2xhc3MgZXh0ZW5kcyBkWntvKCl7dmFyIGE9W107dGhpcy5qLmxvY2FsSW1hZ2VFbnRpdGllcyYmYS5wdXNoKC4uLnRoaXMuai5sb2NhbEltYWdlRW50aXRpZXMpO3RoaXMuai52aWRlb0Rvd25sb2FkQ29udGV4dEVudGl0eSYmYS5wdXNoKHRoaXMuai52aWRlb0Rvd25sb2FkQ29udGV4dEVudGl0eSk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19fTtCcWE9Y2xhc3MgZXh0ZW5kcyBkWntvKCl7dmFyIGE9W107dGhpcy5qLnJlY29tbWVuZGVkVmlkZW9NZXRhZGF0YSYmYS5wdXNoKC4uLihuZXcgQXFhKHRoaXMuai5yZWNvbW1lbmRlZFZpZGVvTWV0YWRhdGEpKS5vKCkpO3JldHVyblsuLi4obmV3IFNldChhKSldfX07Q3FhPWNsYXNzIGV4dGVuZHMgZFp7bygpe3ZhciBhPVtdO3RoaXMuai5wbGF5YmFja1Bvc2l0aW9uJiZhLnB1c2godGhpcy5qLnBsYXliYWNrUG9zaXRpb24pO3JldHVyblsuLi4obmV3IFNldChhKSldfX07CkRxYT1jbGFzcyBleHRlbmRzIGRae28oKXt2YXIgYT1bXTt0aGlzLmouY3JlYXRvckVudGl0eSYmYS5wdXNoKHRoaXMuai5jcmVhdG9yRW50aXR5KTtyZXR1cm5bLi4uKG5ldyBTZXQoYSkpXX19O2ZaPSExOwpFcWE9Y2xhc3MgZXh0ZW5kcyBfLmFle2NvbnN0cnVjdG9yKGEpe3N1cGVyKCk7dGhpcy5jb3VudGVyPVswLDAsMCwwXTt0aGlzLm89bmV3IFVpbnQ4QXJyYXkoMTYpO3RoaXMuaj0xNjtpZighZlope3ZhciBiLGM9bmV3IFVpbnQ4QXJyYXkoMjU2KSxkPW5ldyBVaW50OEFycmF5KDI1Nik7dmFyIGU9MTtmb3IoYj0wO2I8MjU2O2IrKyljW2VdPWIsZFtiXT1lLGVePWU8PDFeKGU+PjcmJjI4Myk7Z1g9bmV3IFVpbnQ4QXJyYXkoMjU2KTtjWD1iWCgyNTYpO2RYPWJYKDI1Nik7ZVg9YlgoMjU2KTtmWD1iWCgyNTYpO2ZvcihsZXQgaD0wO2g8MjU2O2grKyl7ZT1oP2RbMjU1XmNbaF1dOjA7ZV49ZTw8MV5lPDwyXmU8PDNeZTw8NDtlPWUmMjU1XmU+Pj44Xjk5O2dYW2hdPWU7Yj1lPDwxXihlPj43JiYyODMpO3ZhciBmPWJeZTtjWFtoXT1iPDwyNHxlPDwxNnxlPDw4fGY7ZFhbaF09Zjw8MjR8Y1hbaF0+Pj44O2VYW2hdPWU8PDI0fGRYW2hdPj4+ODtmWFtoXT1lPDwyNHxlWFtoXT4+Pjh9Zlo9CiEwfWU9YlgoNDQpO2ZvcihjPTA7Yzw0O2MrKyllW2NdPWFbNCpjXTw8MjR8YVs0KmMrMV08PDE2fGFbNCpjKzJdPDw4fGFbNCpjKzNdO2ZvcihkPTE7Yzw0NDtjKyspYT1lW2MtMV0sYyU0fHwoYT0oZ1hbYT4+MTYmMjU1XV5kKTw8MjR8Z1hbYT4+OCYyNTVdPDwxNnxnWFthJjI1NV08PDh8Z1hbYT4+PjI0XSxkPWQ8PDFeKGQ+PjcmJjI4MykpLGVbY109ZVtjLTRdXmE7dGhpcy5rZXk9ZX1lbmNyeXB0KGEpe3ZhciBiPWEubGVuZ3RoO2E9bmV3IFVpbnQ4QXJyYXkoYS5idWZmZXIuc2xpY2UoYS5ieXRlT2Zmc2V0LGEuYnl0ZU9mZnNldCtiKSk7Zm9yKHZhciBjPXRoaXMubyxkPTA7ZDxiJiZ0aGlzLmo8MTY7KWFbZCsrXV49Y1t0aGlzLmorK107Zm9yKHZhciBlPWItKGItZCklMTY7ZDxlOyloWCh0aGlzKSxhW2QrK11ePWNbMF0sYVtkKytdXj1jWzFdLGFbZCsrXV49Y1syXSxhW2QrK11ePWNbM10sYVtkKytdXj1jWzRdLGFbZCsrXV49Y1s1XSxhW2QrK11ePWNbNl0sYVtkKytdXj1jWzddLAphW2QrK11ePWNbOF0sYVtkKytdXj1jWzldLGFbZCsrXV49Y1sxMF0sYVtkKytdXj1jWzExXSxhW2QrK11ePWNbMTJdLGFbZCsrXV49Y1sxM10sYVtkKytdXj1jWzE0XSxhW2QrK11ePWNbMTVdO2lmKGQ8Yilmb3IoaFgodGhpcyksdGhpcy5qPTA7ZDxiOylhW2QrK11ePWNbdGhpcy5qKytdO3JldHVybiBhfX07Z1o9ITE7RnFhPWNsYXNze2NvbnN0cnVjdG9yKGEsYil7dGhpcy52PWE7dGhpcy5vPWJ9YXN5bmMgZW5jcnlwdChhLGIpe3RyeXtyZXR1cm4gYXdhaXQgTm5hKHRoaXMsYSxiKX1jYXRjaChjKXt0aHJvdyBfLklwKGMpLGdaPSEwLGM7fX19OwppWj1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLm89YX1lbmNyeXB0KGEsYil7dGhpcy5qfHwodGhpcy5qPW5ldyBFcWEodGhpcy5vKSk7dmFyIGM9dGhpcy5qO2ZvcihsZXQgZD0wO2Q8NDtkKyspYy5jb3VudGVyW2RdPWJbZCo0XTw8MjR8YltkKjQrMV08PDE2fGJbZCo0KzJdPDw4fGJbZCo0KzNdO2Muaj0xNjtyZXR1cm4gdGhpcy5qLmVuY3J5cHQoYSl9ZGVjcnlwdChhLGIpe3JldHVybiB0aGlzLmVuY3J5cHQoYSxiKX19OwpHcWE9Y2xhc3N7Y29uc3RydWN0b3IoYSl7YTp7aWYoIWdaJiYhXy5KbCl7aWYoaFope3ZhciBiPWhaO2JyZWFrIGF9aFo9d2luZG93LmNyeXB0bz8uc3VidGxlO2lmKGhaPy5pbXBvcnRLZXkmJmhaPy5zaWduJiZoWj8uZW5jcnlwdCl7Yj1oWjticmVhayBhfWhaPXZvaWQgMH1iPXZvaWQgMH1iJiYodGhpcy5qPW5ldyBGcWEoYSxiKSk7dGhpcy5vPW5ldyBpWihhKX1hc3luYyBlbmNyeXB0KGEsYil7aWYodGhpcy5qKXRyeXtyZXR1cm4gYXdhaXQgdGhpcy5qLmVuY3J5cHQoYSxiKX1jYXRjaChjKXtfLklwKGMpLGdaPSEwLHRoaXMuaj12b2lkIDB9cmV0dXJuIHRoaXMuby5lbmNyeXB0KGEsYil9ZGVjcnlwdChhLGIpe3JldHVybiB0aGlzLmVuY3J5cHQoYSxiKX19OwpIcWE9e0lOVkFMSURfRU5DT0RFUl9WRVJTSU9OOiJJbnZhbGlkIGVuY29kZXIgdmVyc2lvbiIsS0VZX0NSRUFUSU9OX0ZBSUxFRDoiRmFpbGVkIHRvIGNyZWF0ZSBlbmNvZGVyIGtleSIsVU5LTk9XTl9ERUNPREVfRVJST1I6IkZhaWxlZCB0byBkZWNvZGUgUEVTIGRhdGEiLFVOS05PV05fRU5DT0RFX0VSUk9SOiJGYWlsZWQgdG8gZW5jb2RlIFBFUyBkYXRhIixXUk9OR19EQVRBX1RZUEU6IkVuY29kZXIgY2Fubm90IHByb2Nlc3MgdGhlIGRhdGEgdHlwZSJ9O2lYPWNsYXNzIGV4dGVuZHMgXy5Yantjb25zdHJ1Y3RvcihhLGI9e30pe3N1cGVyKEhxYVthXSx7bmFtZToiUEVTRW5jb2RlckVycm9yIix0eXBlOmEsLi4uYn0pO3RoaXMudHlwZT1hO3RoaXMubGV2ZWw9IldBUk5JTkciO09iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLGlYLnByb3RvdHlwZSl9fTsKalo9Y2xhc3N7ZW5jb2RlKGEsYil7dHJ5e3JldHVybiB0aGlzLnYoYSxiKX1jYXRjaChjKXtqWChjLE9uYSl9fWRlY29kZShhLGIpe3RyeXtyZXR1cm4gdGhpcy5vKGEsYil9Y2F0Y2goYyl7algoYyxQbmEpfX19O0lxYT1jbGFzcyBleHRlbmRzIGpae2NvbnN0cnVjdG9yKGEpe3N1cGVyKCk7dGhpcy5qPWF9dihhLGIpe2I9a1goYik7YT0obmV3IFRleHRFbmNvZGVyKS5lbmNvZGUoSlNPTi5zdHJpbmdpZnkoYSkpO3JldHVybiB0aGlzLmouZW5jcnlwdChhLGIpfW8oYSxiKXtpZighKGEgaW5zdGFuY2VvZiBVaW50OEFycmF5KSl0aHJvdyBuZXcgaVgoIldST05HX0RBVEFfVFlQRSIse0lwOjF9KTt2YXIgYz1uZXcgVGV4dERlY29kZXI7Yj1rWChiKTthPXRoaXMuai5kZWNyeXB0KGEsYik7cmV0dXJuIEpTT04ucGFyc2UoYy5kZWNvZGUoYSkpfX07ClFuYT17YW5pbWF0aW9uRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImFuaW1hdGlvbkVudGl0eSJ9fSxhY2NvdW50TGlua1N0YXR1c0VudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJhY2NvdW50TGlua1N0YXR1c0VudGl0eSJ9fSxhc2tTdHVkaW9HZW5lcmF0ZWREYXRhRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImFza1N0dWRpb0dlbmVyYXRlZERhdGFFbnRpdHkifX0sYm9vbGVhbkVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJib29sZWFuRW50aXR5In19LGJ1dHRvbkVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJidXR0b25FbnRpdHkifX0sY2FwdGlvblRyYWNrOmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImNhcHRpb25UcmFjayJ9fSwKY2hhbm5lbEhhbmRsZTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJjaGFubmVsSGFuZGxlIn19LGNoYXRMb2FkaW5nU3RhdGVFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4iY2hhdExvYWRpbmdTdGF0ZUVudGl0eSJ9fSxhc2tTdHVkaW9Db252ZXJzYXRpb25TdW1tYXJ5RW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImFza1N0dWRpb0NvbnZlcnNhdGlvblN1bW1hcnlFbnRpdHkifX0sY2hpcEVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJjaGlwRW50aXR5In19LGNvbW1lcmNlQWNxdWlzaXRpb25DbGllbnRQYXlsb2FkRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImNvbW1lcmNlQWNxdWlzaXRpb25DbGllbnRQYXlsb2FkRW50aXR5In19LApjb21tZXJjZUNhcnRMaXN0RW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImNvbW1lcmNlQ2FydExpc3RFbnRpdHkifX0sY29tbWVyY2VUb2tlbkJhbGFuY2VFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4iY29tbWVyY2VUb2tlbkJhbGFuY2VFbnRpdHkifX0sY29tcG9zaXRlU291cmNlRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImNvbXBvc2l0ZVNvdXJjZUVudGl0eSJ9fSxtdWx0aXZpZXdTdGFnaW5nRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3ZhciBhPVtdO3RoaXMuai5jb21wb3NpdGVTb3VyY2VLZXlzJiZhLnB1c2goLi4udGhpcy5qLmNvbXBvc2l0ZVNvdXJjZUtleXMpO3JldHVyblsuLi4obmV3IFNldChhKSldfWdldFR5cGVOYW1lKCl7cmV0dXJuIm11bHRpdmlld1N0YWdpbmdFbnRpdHkifX0sY29udGV4dE5vdGVGZWVkRW50aXR5UGF5bG9hZDpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJjb250ZXh0Tm90ZUZlZWRFbnRpdHlQYXlsb2FkIn19LApjb250ZXh0Tm90ZVVzZXJSYXRpbmdFbnRpdHlQYXlsb2FkOmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImNvbnRleHROb3RlVXNlclJhdGluZ0VudGl0eVBheWxvYWQifX0sY29udGludWF0aW9uVG9rZW5FbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4iY29udGludWF0aW9uVG9rZW5FbnRpdHkifX0sZG93bmxvYWRRdWFsaXR5UGlja2VyRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImRvd25sb2FkUXVhbGl0eVBpY2tlckVudGl0eSJ9fSxkb3dubG9hZHNQYWdlUmVmcmVzaFRva2VuRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImRvd25sb2Fkc1BhZ2VSZWZyZXNoVG9rZW5FbnRpdHkifX0sZG93bmxvYWRzUGFnZVZpZXdDb25maWd1cmF0aW9uRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImRvd25sb2Fkc1BhZ2VWaWV3Q29uZmlndXJhdGlvbkVudGl0eSJ9fSwKZG93bmxvYWRTdGF0dXNFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4iZG93bmxvYWRTdGF0dXNFbnRpdHkifX0sZGlzbWlzc1N0YXRlOmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImRpc21pc3NTdGF0ZSJ9fSxzZnZBdWRpb0l0ZW1DdXJyZW50bHlQbGF5aW5nRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuInNmdkF1ZGlvSXRlbUN1cnJlbnRseVBsYXlpbmdFbnRpdHkifX0sZW1vamlGb3VudGFpbkRhdGFFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4iZW1vamlGb3VudGFpbkRhdGFFbnRpdHkifX0sZW1vamlDdXN0b21pemF0aW9uU2V0RW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImVtb2ppQ3VzdG9taXphdGlvblNldEVudGl0eSJ9fSwKZmFrZUNoYW5uZWw6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9W107dGhpcy5qLmFsdGVybmF0ZUNoYW5uZWwmJmEucHVzaCh0aGlzLmouYWx0ZXJuYXRlQ2hhbm5lbCk7dGhpcy5qLmFsdGVybmF0ZUNoYW5uZWxMaXN0JiZhLnB1c2goLi4udGhpcy5qLmFsdGVybmF0ZUNoYW5uZWxMaXN0KTt0aGlzLmoub25lb2ZDaGFubmVsRW50aXR5JiZhLnB1c2godGhpcy5qLm9uZW9mQ2hhbm5lbEVudGl0eSk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4iZmFrZUNoYW5uZWwifX0sZmFrZVBsYXlsaXN0OmNsYXNzIGV4dGVuZHMgZVp7bygpe3ZhciBhPVtdO3RoaXMuai5lbnRyeUNvbGxlY3Rpb24mJmEucHVzaCh0aGlzLmouZW50cnlDb2xsZWN0aW9uKTtyZXR1cm5bLi4uKG5ldyBTZXQoYSkpXX1nZXRUeXBlTmFtZSgpe3JldHVybiJmYWtlUGxheWxpc3QifX0sZmFrZVBsYXlsaXN0RW50cnlDb2xsZWN0aW9uOmNsYXNzIGV4dGVuZHMgZVp7bygpe3ZhciBhPQpbXTt0aGlzLmoucGFyZW50UGxheWxpc3QmJmEucHVzaCh0aGlzLmoucGFyZW50UGxheWxpc3QpO2lmKHRoaXMuai5lbnRyaWVzKWZvcihsZXQgYiBvZiB0aGlzLmouZW50cmllcylhLnB1c2goLi4uKG5ldyB5cWEoYikpLm8oKSk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4iZmFrZVBsYXlsaXN0RW50cnlDb2xsZWN0aW9uIn19LGZha2VWaWRlbzpjbGFzcyBleHRlbmRzIGVae28oKXt2YXIgYT1bXTt0aGlzLmouZGVzY3JpcHRpb25FbnRpdHkmJmEucHVzaCh0aGlzLmouZGVzY3JpcHRpb25FbnRpdHkpO3RoaXMuai5jcmVhdG9ycyYmYS5wdXNoKC4uLnRoaXMuai5jcmVhdG9ycyk7dGhpcy5qLnRoZUJpZ2dlc3RGYW4mJmEucHVzaCh0aGlzLmoudGhlQmlnZ2VzdEZhbik7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4iZmFrZVZpZGVvIn19LGZha2VWaWRlb0Rlc2NyaXB0aW9uOmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImZha2VWaWRlb0Rlc2NyaXB0aW9uIn19LApmZWF0dXJlZFByb2R1Y3RzRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImZlYXR1cmVkUHJvZHVjdHNFbnRpdHkifX0sc2F2ZWRQcm9kdWN0c1N0YXRlRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuInNhdmVkUHJvZHVjdHNTdGF0ZUVudGl0eSJ9fSxmbG93U3RhdGVFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4iZmxvd1N0YXRlRW50aXR5In19LGljb25CYWRnZUVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJpY29uQmFkZ2VFbnRpdHkifX0saW50ZXJzdGl0aWFsSW50ZXJhY3Rpb25TdGF0ZUVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJpbnRlcnN0aXRpYWxJbnRlcmFjdGlvblN0YXRlRW50aXR5In19LGxpa2VCdXR0b25BbmltYXRpb25FbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibGlrZUJ1dHRvbkFuaW1hdGlvbkVudGl0eSJ9fSwKbGl2ZUNoYXRQb2xsU3RhdGVFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibGl2ZUNoYXRQb2xsU3RhdGVFbnRpdHkifX0sZGF0YUZyZXNobmVzc0VudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJkYXRhRnJlc2huZXNzRW50aXR5In19LGxpdmVWaWV3ZXJMZWFkZXJib2FyZENoYXRFbnRyeVBvaW50U3RhdGVFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibGl2ZVZpZXdlckxlYWRlcmJvYXJkQ2hhdEVudHJ5UG9pbnRTdGF0ZUVudGl0eSJ9fSxsaXZlVmlld2VyTGVhZGVyYm9hcmRQb2ludHNFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibGl2ZVZpZXdlckxlYWRlcmJvYXJkUG9pbnRzRW50aXR5In19LGxpdmVSZWFjdGlvbnNEYXRhRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImxpdmVSZWFjdGlvbnNEYXRhRW50aXR5In19LApsb2dvRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuImxvZ29FbnRpdHkifX0sbWFjcm9NYXJrZXJFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibWFjcm9NYXJrZXJFbnRpdHkifX0sbWFpbkRvd25sb2Fkc0xpYnJhcnlFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9W107dGhpcy5qLmRvd25sb2Fkc0xpc3QmJmEucHVzaCh0aGlzLmouZG93bmxvYWRzTGlzdCk7dGhpcy5qLnNtYXJ0RG93bmxvYWRzTGlzdCYmYS5wdXNoKHRoaXMuai5zbWFydERvd25sb2Fkc0xpc3QpO3RoaXMuai5yZWNvbW1lbmRlZERvd25sb2Fkc0xpc3QmJmEucHVzaCh0aGlzLmoucmVjb21tZW5kZWREb3dubG9hZHNMaXN0KTt0aGlzLmoucmVmcmVzaCYmYS5wdXNoKHRoaXMuai5yZWZyZXNoKTtyZXR1cm5bLi4uKG5ldyBTZXQoYSkpXX1nZXRUeXBlTmFtZSgpe3JldHVybiJtYWluRG93bmxvYWRzTGlicmFyeUVudGl0eSJ9fSwKbWFpbkRvd25sb2Fkc0xpc3RFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9W107dGhpcy5qLnJlZnJlc2gmJmEucHVzaCh0aGlzLmoucmVmcmVzaCk7aWYodGhpcy5qLmRvd25sb2Fkcylmb3IobGV0IGIgb2YgdGhpcy5qLmRvd25sb2FkcylhLnB1c2goLi4uKG5ldyB6cWEoYikpLm8oKSk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibWFpbkRvd25sb2Fkc0xpc3RFbnRpdHkifX0sbWFpblBsYXlsaXN0RG93bmxvYWRTdGF0ZUVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXt2YXIgYT1bXTt0aGlzLmoubG9jYWxJbWFnZUVudGl0aWVzJiZhLnB1c2goLi4udGhpcy5qLmxvY2FsSW1hZ2VFbnRpdGllcyk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibWFpblBsYXlsaXN0RG93bmxvYWRTdGF0ZUVudGl0eSJ9fSxtYWluUGxheWxpc3RFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9W107dGhpcy5qLmNoYW5uZWxPd25lciYmCmEucHVzaCh0aGlzLmouY2hhbm5lbE93bmVyKTt0aGlzLmoudmlkZW9zJiZhLnB1c2goLi4udGhpcy5qLnZpZGVvcyk7dGhpcy5qLmNvbGxhYm9yYXRvckNoYW5uZWxzJiZhLnB1c2goLi4udGhpcy5qLmNvbGxhYm9yYXRvckNoYW5uZWxzKTt0aGlzLmouZG93bmxvYWRTdGF0ZSYmYS5wdXNoKHRoaXMuai5kb3dubG9hZFN0YXRlKTt0aGlzLmoucmVmcmVzaCYmYS5wdXNoKHRoaXMuai5yZWZyZXNoKTtyZXR1cm5bLi4uKG5ldyBTZXQoYSkpXX1nZXRUeXBlTmFtZSgpe3JldHVybiJtYWluUGxheWxpc3RFbnRpdHkifX0sbWFpblBsYXlsaXN0VmlkZW9FbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9W107dGhpcy5qLnZpZGVvJiZhLnB1c2godGhpcy5qLnZpZGVvKTt0aGlzLmouY2hhbm5lbENvbnRyaWJ1dG9yJiZhLnB1c2godGhpcy5qLmNoYW5uZWxDb250cmlidXRvcik7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibWFpblBsYXlsaXN0VmlkZW9FbnRpdHkifX0sCm1haW5WaWRlb0Rvd25sb2FkU3RhdGVFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9W107dGhpcy5qLnBsYXliYWNrRGF0YSYmYS5wdXNoKHRoaXMuai5wbGF5YmFja0RhdGEpO3RoaXMuai5sb2NhbEltYWdlRW50aXRpZXMmJmEucHVzaCguLi50aGlzLmoubG9jYWxJbWFnZUVudGl0aWVzKTt0aGlzLmoudmlkZW9Eb3dubG9hZENvbnRleHRFbnRpdHkmJmEucHVzaCh0aGlzLmoudmlkZW9Eb3dubG9hZENvbnRleHRFbnRpdHkpO3JldHVyblsuLi4obmV3IFNldChhKSldfWdldFR5cGVOYW1lKCl7cmV0dXJuIm1haW5WaWRlb0Rvd25sb2FkU3RhdGVFbnRpdHkifX0sbWFpblZpZGVvRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3ZhciBhPVtdO3RoaXMuai5vd25lciYmYS5wdXNoKHRoaXMuai5vd25lcik7dGhpcy5qLmRvd25sb2FkU3RhdGUmJmEucHVzaCh0aGlzLmouZG93bmxvYWRTdGF0ZSk7dGhpcy5qLnVzZXJTdGF0ZSYmYS5wdXNoKC4uLihuZXcgQ3FhKHRoaXMuai51c2VyU3RhdGUpKS5vKCkpOwp0aGlzLmouYWRkaXRpb25hbE1ldGFkYXRhJiZhLnB1c2goLi4uKG5ldyBCcWEodGhpcy5qLmFkZGl0aW9uYWxNZXRhZGF0YSkpLm8oKSk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibWFpblZpZGVvRW50aXR5In19LG1hcmtlcnNFbmdhZ2VtZW50UGFuZWxTeW5jRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuIm1hcmtlcnNFbmdhZ2VtZW50UGFuZWxTeW5jRW50aXR5In19LG1hcmtlcnNWaXNpYmlsaXR5T3ZlcnJpZGVFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibWFya2Vyc1Zpc2liaWxpdHlPdmVycmlkZUVudGl0eSJ9fSxtdXNpY0FsYnVtUmVsZWFzZURldGFpbDpjbGFzcyBleHRlbmRzIGVae28oKXt2YXIgYT1bXTt0aGlzLmouYWxidW1SZWxlYXNlJiZhLnB1c2godGhpcy5qLmFsYnVtUmVsZWFzZSk7dGhpcy5qLnRyYWNrcyYmYS5wdXNoKC4uLnRoaXMuai50cmFja3MpOwpyZXR1cm5bLi4uKG5ldyBTZXQoYSkpXX1nZXRUeXBlTmFtZSgpe3JldHVybiJtdXNpY0FsYnVtUmVsZWFzZURldGFpbCJ9fSxtdXNpY0FsYnVtUmVsZWFzZURvd25sb2FkTWV0YWRhdGFFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9W107dGhpcy5qLnRyYWNrRG93bmxvYWRNZXRhZGF0YXMmJmEucHVzaCguLi50aGlzLmoudHJhY2tEb3dubG9hZE1ldGFkYXRhcyk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibXVzaWNBbGJ1bVJlbGVhc2VEb3dubG9hZE1ldGFkYXRhRW50aXR5In19LG11c2ljQWxidW1SZWxlYXNlOmNsYXNzIGV4dGVuZHMgZVp7bygpe3ZhciBhPVtdO3RoaXMuai5tdXNpY0xpYnJhcnlTdGF0dXNFbnRpdHkmJmEucHVzaCh0aGlzLmoubXVzaWNMaWJyYXJ5U3RhdHVzRW50aXR5KTt0aGlzLmoucHJpbWFyeUFydGlzdHMmJmEucHVzaCguLi50aGlzLmoucHJpbWFyeUFydGlzdHMpO3RoaXMuai5kZXRhaWxzJiZhLnB1c2godGhpcy5qLmRldGFpbHMpOwp0aGlzLmoudXNlckRldGFpbHMmJmEucHVzaCh0aGlzLmoudXNlckRldGFpbHMpO3RoaXMuai50cmFja3MmJmEucHVzaCguLi50aGlzLmoudHJhY2tzKTt0aGlzLmouc2hhcmUmJmEucHVzaCh0aGlzLmouc2hhcmUpO3RoaXMuai5kb3dubG9hZE1ldGFkYXRhJiZhLnB1c2godGhpcy5qLmRvd25sb2FkTWV0YWRhdGEpO3RoaXMuai5yZWZyZXNoJiZhLnB1c2godGhpcy5qLnJlZnJlc2gpO3JldHVyblsuLi4obmV3IFNldChhKSldfWdldFR5cGVOYW1lKCl7cmV0dXJuIm11c2ljQWxidW1SZWxlYXNlIn19LG11c2ljQWxidW1SZWxlYXNlVXNlckRldGFpbDpjbGFzcyBleHRlbmRzIGVae28oKXt2YXIgYT1bXTt0aGlzLmouYWxidW1SZWxlYXNlJiZhLnB1c2godGhpcy5qLmFsYnVtUmVsZWFzZSk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibXVzaWNBbGJ1bVJlbGVhc2VVc2VyRGV0YWlsIn19LG11c2ljQXJ0aXN0RGV0YWlsOmNsYXNzIGV4dGVuZHMgZVp7bygpe3ZhciBhPQpbXTt0aGlzLmoucGFyZW50QXJ0aXN0JiZhLnB1c2godGhpcy5qLnBhcmVudEFydGlzdCk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibXVzaWNBcnRpc3REZXRhaWwifX0sbXVzaWNBcnRpc3Q6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9W107dGhpcy5qLmRldGFpbHMmJmEucHVzaCh0aGlzLmouZGV0YWlscyk7dGhpcy5qLnVzZXJEZXRhaWxzJiZhLnB1c2godGhpcy5qLnVzZXJEZXRhaWxzKTtyZXR1cm5bLi4uKG5ldyBTZXQoYSkpXX1nZXRUeXBlTmFtZSgpe3JldHVybiJtdXNpY0FydGlzdCJ9fSxtdXNpY0FydGlzdFVzZXJEZXRhaWw6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9W107dGhpcy5qLnBhcmVudEFydGlzdCYmYS5wdXNoKHRoaXMuai5wYXJlbnRBcnRpc3QpO3JldHVyblsuLi4obmV3IFNldChhKSldfWdldFR5cGVOYW1lKCl7cmV0dXJuIm11c2ljQXJ0aXN0VXNlckRldGFpbCJ9fSxtdXNpY0Rvd25sb2Fkc0xpYnJhcnlFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9CltdO3RoaXMuai5kb3dubG9hZGVkVHJhY2tzJiZhLnB1c2goLi4udGhpcy5qLmRvd25sb2FkZWRUcmFja3MpO3RoaXMuai5zbWFydERvd25sb2FkZWRUcmFja3MmJmEucHVzaCguLi50aGlzLmouc21hcnREb3dubG9hZGVkVHJhY2tzKTt0aGlzLmouZG93bmxvYWRlZEVwaXNvZGVzJiZhLnB1c2goLi4udGhpcy5qLmRvd25sb2FkZWRFcGlzb2Rlcyk7dGhpcy5qLmRvd25sb2FkZWRBbGJ1bVJlbGVhc2VzJiZhLnB1c2goLi4udGhpcy5qLmRvd25sb2FkZWRBbGJ1bVJlbGVhc2VzKTt0aGlzLmouc21hcnREb3dubG9hZGVkQWxidW1SZWxlYXNlcyYmYS5wdXNoKC4uLnRoaXMuai5zbWFydERvd25sb2FkZWRBbGJ1bVJlbGVhc2VzKTt0aGlzLmouZG93bmxvYWRlZFBsYXlsaXN0cyYmYS5wdXNoKC4uLnRoaXMuai5kb3dubG9hZGVkUGxheWxpc3RzKTt0aGlzLmouc21hcnREb3dubG9hZGVkUGxheWxpc3RzJiZhLnB1c2goLi4udGhpcy5qLnNtYXJ0RG93bmxvYWRlZFBsYXlsaXN0cyk7dGhpcy5qLm1ldGFkYXRhT25seVRyYWNrcyYmCmEucHVzaCguLi50aGlzLmoubWV0YWRhdGFPbmx5VHJhY2tzKTtyZXR1cm5bLi4uKG5ldyBTZXQoYSkpXX1nZXRUeXBlTmFtZSgpe3JldHVybiJtdXNpY0Rvd25sb2Fkc0xpYnJhcnlFbnRpdHkifX0sbXVzaWNMaWJyYXJ5RWRpdDpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJtdXNpY0xpYnJhcnlFZGl0In19LG11c2ljTGlicmFyeVN0YXR1c0VudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJtdXNpY0xpYnJhcnlTdGF0dXNFbnRpdHkifX0sbXVzaWNQbGF5bGlzdDpjbGFzcyBleHRlbmRzIGVae28oKXt2YXIgYT1bXTt0aGlzLmoudHJhY2tzJiZhLnB1c2goLi4udGhpcy5qLnRyYWNrcyk7dGhpcy5qLnJlZnJlc2gmJmEucHVzaCh0aGlzLmoucmVmcmVzaCk7dGhpcy5qLm11c2ljTGlicmFyeVN0YXR1c0VudGl0eSYmYS5wdXNoKHRoaXMuai5tdXNpY0xpYnJhcnlTdGF0dXNFbnRpdHkpOwp0aGlzLmouZGV0YWlscyYmYS5wdXNoKHRoaXMuai5kZXRhaWxzKTt0aGlzLmouZG93bmxvYWRNZXRhZGF0YSYmYS5wdXNoKHRoaXMuai5kb3dubG9hZE1ldGFkYXRhKTt0aGlzLmouc2lkZWxvYWRNZXRhZGF0YSYmYS5wdXNoKHRoaXMuai5zaWRlbG9hZE1ldGFkYXRhKTt0aGlzLmoudXNlckRldGFpbHMmJmEucHVzaCh0aGlzLmoudXNlckRldGFpbHMpO3RoaXMuai5lbnRyeUNvbGxlY3Rpb24mJmEucHVzaCh0aGlzLmouZW50cnlDb2xsZWN0aW9uKTt0aGlzLmouc2hhcmUmJmEucHVzaCh0aGlzLmouc2hhcmUpO3RoaXMuai5wb2RjYXN0U2hvd0FkZGl0aW9uYWxNZXRhZGF0YSYmYS5wdXNoKC4uLihuZXcgRHFhKHRoaXMuai5wb2RjYXN0U2hvd0FkZGl0aW9uYWxNZXRhZGF0YSkpLm8oKSk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibXVzaWNQbGF5bGlzdCJ9fSxtdXNpY1BsYXlsaXN0RG93bmxvYWRNZXRhZGF0YUVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXt2YXIgYT0KW107dGhpcy5qLnRyYWNrRG93bmxvYWRNZXRhZGF0YXMmJmEucHVzaCguLi50aGlzLmoudHJhY2tEb3dubG9hZE1ldGFkYXRhcyk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibXVzaWNQbGF5bGlzdERvd25sb2FkTWV0YWRhdGFFbnRpdHkifX0sbXVzaWNTaGFyZTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJtdXNpY1NoYXJlIn19LG11c2ljVHJhY2tEZXRhaWw6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9W107dGhpcy5qLnBhcmVudFRyYWNrJiZhLnB1c2godGhpcy5qLnBhcmVudFRyYWNrKTtyZXR1cm5bLi4uKG5ldyBTZXQoYSkpXX1nZXRUeXBlTmFtZSgpe3JldHVybiJtdXNpY1RyYWNrRGV0YWlsIn19LG11c2ljVHJhY2tEb3dubG9hZE1ldGFkYXRhRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3ZhciBhPVtdO3RoaXMuai5wbGF5YmFja0RhdGEmJmEucHVzaCh0aGlzLmoucGxheWJhY2tEYXRhKTsKdGhpcy5qLmxvY2FsSW1hZ2VFbnRpdGllcyYmYS5wdXNoKC4uLnRoaXMuai5sb2NhbEltYWdlRW50aXRpZXMpO3RoaXMuai52aWRlb0Rvd25sb2FkQ29udGV4dEVudGl0eSYmYS5wdXNoKHRoaXMuai52aWRlb0Rvd25sb2FkQ29udGV4dEVudGl0eSk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibXVzaWNUcmFja0Rvd25sb2FkTWV0YWRhdGFFbnRpdHkifX0sbXVzaWNUcmFjazpjbGFzcyBleHRlbmRzIGVae28oKXt2YXIgYT1bXTt0aGlzLmoubXVzaWNMaWJyYXJ5U3RhdHVzRW50aXR5JiZhLnB1c2godGhpcy5qLm11c2ljTGlicmFyeVN0YXR1c0VudGl0eSk7dGhpcy5qLmFydGlzdHMmJmEucHVzaCguLi50aGlzLmouYXJ0aXN0cyk7dGhpcy5qLmF1ZGlvTW9kZVZlcnNpb24mJmEucHVzaCh0aGlzLmouYXVkaW9Nb2RlVmVyc2lvbik7dGhpcy5qLnZpZGVvTW9kZVZlcnNpb24mJmEucHVzaCh0aGlzLmoudmlkZW9Nb2RlVmVyc2lvbik7dGhpcy5qLnVzZXJEZXRhaWxzJiYKYS5wdXNoKHRoaXMuai51c2VyRGV0YWlscyk7dGhpcy5qLmRldGFpbHMmJmEucHVzaCh0aGlzLmouZGV0YWlscyk7dGhpcy5qLmFsYnVtUmVsZWFzZSYmYS5wdXNoKHRoaXMuai5hbGJ1bVJlbGVhc2UpO3RoaXMuai5zaGFyZSYmYS5wdXNoKHRoaXMuai5zaGFyZSk7dGhpcy5qLmxpYnJhcnlFZGl0JiZhLnB1c2godGhpcy5qLmxpYnJhcnlFZGl0KTt0aGlzLmouZG93bmxvYWRNZXRhZGF0YSYmYS5wdXNoKHRoaXMuai5kb3dubG9hZE1ldGFkYXRhKTt0aGlzLmoucGxheWJhY2tQb3NpdGlvbiYmYS5wdXNoKHRoaXMuai5wbGF5YmFja1Bvc2l0aW9uKTt0aGlzLmoubHlyaWNzJiZhLnB1c2godGhpcy5qLmx5cmljcyk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4ibXVzaWNUcmFjayJ9fSxtdXNpY1RyYWNrVXNlckRldGFpbDpjbGFzcyBleHRlbmRzIGVae28oKXt2YXIgYT1bXTt0aGlzLmoucGFyZW50VHJhY2smJmEucHVzaCh0aGlzLmoucGFyZW50VHJhY2spOwpyZXR1cm5bLi4uKG5ldyBTZXQoYSkpXX1nZXRUeXBlTmFtZSgpe3JldHVybiJtdXNpY1RyYWNrVXNlckRldGFpbCJ9fSxvZmZsaW5lT3JjaGVzdHJhdGlvbkFjdGlvbldyYXBwZXJFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4ib2ZmbGluZU9yY2hlc3RyYXRpb25BY3Rpb25XcmFwcGVyRW50aXR5In19LG9mZmxpbmVWaWRlb1BvbGljeTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJvZmZsaW5lVmlkZW9Qb2xpY3kifX0sb2ZmbGluZVZpZGVvU3RyZWFtczpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJvZmZsaW5lVmlkZW9TdHJlYW1zIn19LG9mZmxpbmVhYmlsaXR5RW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuIm9mZmxpbmVhYmlsaXR5RW50aXR5In19LG9yY2hlc3RyYXRpb25XZWJTYW1wbGluZ0VudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXt2YXIgYT0KW107dGhpcy5qLmZha2VDaGlsZHJlbiYmYS5wdXNoKC4uLnRoaXMuai5mYWtlQ2hpbGRyZW4pO3JldHVyblsuLi4obmV3IFNldChhKSldfWdldFR5cGVOYW1lKCl7cmV0dXJuIm9yY2hlc3RyYXRpb25XZWJTYW1wbGluZ0VudGl0eSJ9fSxwYWdlSGVhZGVyRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuInBhZ2VIZWFkZXJFbnRpdHkifX0scGFydHlHYW1lUGFuZWxFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4icGFydHlHYW1lUGFuZWxFbnRpdHkifX0sc2xpZGVyR2FtZVBhbmVsRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuInNsaWRlckdhbWVQYW5lbEVudGl0eSJ9fSxwZHBTdGF0ZUVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJwZHBTdGF0ZUVudGl0eSJ9fSxwaW5uZWRQcm9kdWN0RW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuInBpbm5lZFByb2R1Y3RFbnRpdHkifX0sCnBsYXliYWNrRGF0YTpjbGFzcyBleHRlbmRzIGVae28oKXt2YXIgYT1bXTt0aGlzLmoudHJhbnNmZXImJmEucHVzaCh0aGlzLmoudHJhbnNmZXIpO3RoaXMuai5hZHNQbGF5YmFja0RhdGEmJmEucHVzaCguLi50aGlzLmouYWRzUGxheWJhY2tEYXRhKTt0aGlzLmouZHJtTGljZW5zZSYmYS5wdXNoKHRoaXMuai5kcm1MaWNlbnNlKTt0aGlzLmoub2ZmbGluZVZpZGVvUG9saWN5JiZhLnB1c2godGhpcy5qLm9mZmxpbmVWaWRlb1BvbGljeSk7dGhpcy5qLnZpZGVvRG93bmxvYWRDb250ZXh0RW50aXR5JiZhLnB1c2godGhpcy5qLnZpZGVvRG93bmxvYWRDb250ZXh0RW50aXR5KTtyZXR1cm5bLi4uKG5ldyBTZXQoYSkpXX1nZXRUeXBlTmFtZSgpe3JldHVybiJwbGF5YmFja0RhdGEifX0scGxheWVyU3RhdGVFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4icGxheWVyU3RhdGVFbnRpdHkifX0scGxheWxpc3RUaHVtYm5haWxFZGl0c0VudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJwbGF5bGlzdFRodW1ibmFpbEVkaXRzRW50aXR5In19LApxdWFudGl0eUluY3JlbWVudGVyRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuInF1YW50aXR5SW5jcmVtZW50ZXJFbnRpdHkifX0scmVmcmVzaDpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJyZWZyZXNoIn19LHNhdmVUb1BsYXlsaXN0TGlzdEVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJzYXZlVG9QbGF5bGlzdExpc3RFbnRpdHkifX0sc2VsZWN0ZWRDaGlwSW5kZXhFbnRpdHlQYXlsb2FkOmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuInNlbGVjdGVkQ2hpcEluZGV4RW50aXR5UGF5bG9hZCJ9fSxzZWxlY3Rpb25WYWx1ZUxpc3RFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4ic2VsZWN0aW9uVmFsdWVMaXN0RW50aXR5In19LHNldHRpbmdFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4ic2V0dGluZ0VudGl0eSJ9fSwKc3RyaW5nRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuInN0cmluZ0VudGl0eSJ9fSxzdWdnZXN0ZWRGZWVkYmFja0NoaXBTdGF0ZUVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJzdWdnZXN0ZWRGZWVkYmFja0NoaXBTdGF0ZUVudGl0eSJ9fSx0cmFuc2ZlcjpjbGFzcyBleHRlbmRzIGVae28oKXt2YXIgYT1bXTt0aGlzLmoub2ZmbGluZVZpZGVvU3RyZWFtcyYmYS5wdXNoKC4uLnRoaXMuai5vZmZsaW5lVmlkZW9TdHJlYW1zKTt0aGlzLmouY2FwdGlvblRyYWNrJiZhLnB1c2goLi4udGhpcy5qLmNhcHRpb25UcmFjayk7cmV0dXJuWy4uLihuZXcgU2V0KGEpKV19Z2V0VHlwZU5hbWUoKXtyZXR1cm4idHJhbnNmZXIifX0sdHJlbmRpbmdPZmZlckVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJ0cmVuZGluZ09mZmVyRW50aXR5In19LAp1bnBsdWdnZWRTaWRlc2hlZXRIZWFkZXJTdGF0ZUVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJ1bnBsdWdnZWRTaWRlc2hlZXRIZWFkZXJTdGF0ZUVudGl0eSJ9fSx2aWRlb0Rvd25sb2FkQ29udGV4dEVudGl0eTpjbGFzcyBleHRlbmRzIGVae28oKXtyZXR1cm5bXX1nZXRUeXBlTmFtZSgpe3JldHVybiJ2aWRlb0Rvd25sb2FkQ29udGV4dEVudGl0eSJ9fSx2aWRlb092ZXJ2aWV3QXN5bmNEYXRhRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuInZpZGVvT3ZlcnZpZXdBc3luY0RhdGFFbnRpdHkifX0sdmlkZW9QbGF5YmFja1Bvc2l0aW9uRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3JldHVybltdfWdldFR5cGVOYW1lKCl7cmV0dXJuInZpZGVvUGxheWJhY2tQb3NpdGlvbkVudGl0eSJ9fSx2b3RpbmdFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4idm90aW5nRW50aXR5In19LAp5dE1haW5DaGFubmVsRW50aXR5OmNsYXNzIGV4dGVuZHMgZVp7bygpe3ZhciBhPVtdO3RoaXMuai51c2VyQ2hhbm5lbERldGFpbHMmJmEucHVzaCh0aGlzLmoudXNlckNoYW5uZWxEZXRhaWxzKTtyZXR1cm5bLi4uKG5ldyBTZXQoYSkpXX1nZXRUeXBlTmFtZSgpe3JldHVybiJ5dE1haW5DaGFubmVsRW50aXR5In19LHlvdWNoYXRQZW5kaW5nUmVzcG9uc2VFbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7cmV0dXJuW119Z2V0VHlwZU5hbWUoKXtyZXR1cm4ieW91Y2hhdFBlbmRpbmdSZXNwb25zZUVudGl0eSJ9fSx5dE1haW5Eb3dubG9hZGVkVmlkZW9FbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9W107dGhpcy5qLnZpZGVvJiZhLnB1c2godGhpcy5qLnZpZGVvKTt0aGlzLmoucGxheWJhY2tEYXRhJiZhLnB1c2godGhpcy5qLnBsYXliYWNrRGF0YSk7dGhpcy5qLm9mZmxpbmVWaWRlb1BvbGljeSYmYS5wdXNoKHRoaXMuai5vZmZsaW5lVmlkZW9Qb2xpY3kpO3JldHVyblsuLi4obmV3IFNldChhKSldfWdldFR5cGVOYW1lKCl7cmV0dXJuInl0TWFpbkRvd25sb2FkZWRWaWRlb0VudGl0eSJ9fSwKeXRNYWluVmlkZW9FbnRpdHk6Y2xhc3MgZXh0ZW5kcyBlWntvKCl7dmFyIGE9W107dGhpcy5qLmNoYW5uZWxPd25lciYmYS5wdXNoKHRoaXMuai5jaGFubmVsT3duZXIpO3RoaXMuai5wbGF5YmFja1Bvc2l0aW9uJiZhLnB1c2godGhpcy5qLnBsYXliYWNrUG9zaXRpb24pO3RoaXMuai5sb2NhbEltYWdlRW50aXRpZXMmJmEucHVzaCguLi50aGlzLmoubG9jYWxJbWFnZUVudGl0aWVzKTt0aGlzLmouZG93bmxvYWRTdGF0dXMmJmEucHVzaCh0aGlzLmouZG93bmxvYWRTdGF0dXMpO3JldHVyblsuLi4obmV3IFNldChhKSldfWdldFR5cGVOYW1lKCl7cmV0dXJuInl0TWFpblZpZGVvRW50aXR5In19fTtYbmE9Y2xhc3N7Y29uc3RydWN0b3IoYSxiKXt0aGlzLmo9YTt0aGlzLm89Yjt0aGlzLnY9e319fTsKSnFhPWNsYXNzIGV4dGVuZHMgalp7dihhKXtyZXR1cm4gYX1vKGEpe2lmKGEgaW5zdGFuY2VvZiBVaW50OEFycmF5KXRocm93IG5ldyBpWCgiV1JPTkdfREFUQV9UWVBFIix7SXA6MH0pO3JldHVybiBhfX07Wm5hPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5qPXt9O3RoaXMualswXT1uZXcgSnFhO2lmKCFfLngoImFlc19wZXNfZW5jb2Rlcl9raWxsc3dpdGNoIikpe3ZhciBhPXRoaXMuajt0cnl7bGV0IGQ9Xy5WaigpO3ZhciBiPWtYKGQpO3ZhciBjPW5ldyBJcWEobmV3IGlaKGIpLG5ldyBHcWEoYikpfWNhdGNoKGQpe3Rocm93IGE9ZCBpbnN0YW5jZW9mIEVycm9yP25ldyBpWCgiS0VZX0NSRUFUSU9OX0ZBSUxFRCIse29yaWdpbmFsTWVzc2FnZTpkLm1lc3NhZ2V9KTpuZXcgaVgoIktFWV9DUkVBVElPTl9GQUlMRUQiKSxfLkdwKGEpLGE7fWFbMV09Y319fTsKJG5hPWNsYXNzIGV4dGVuZHMgXy5hZXtjb25zdHJ1Y3RvcihhLGIpe3N1cGVyKCk7dGhpcy50b2tlbj1hO3RoaXMuaj1iO3RoaXMub2JzZXJ2ZXJzPVtdO2E9bmV3IF8udS5Ccm9hZGNhc3RDaGFubmVsKGBQRVJTSVNURU5UX0VOVElUWV9TVE9SRV9TWU5DOiR7Xy5WaigpfWApO2Eub25tZXNzYWdlPXRoaXMuby5iaW5kKHRoaXMpO3RoaXMuY2hhbm5lbD1hfW9ic2VydmUoYSl7dGhpcy5vYnNlcnZlcnMucHVzaChhKTtyZXR1cm4oKT0+e3ZhciBiPXRoaXMub2JzZXJ2ZXJzLmluZGV4T2YoYSk7Yj49MCYmdGhpcy5vYnNlcnZlcnMuc3BsaWNlKGIsMSl9fW8oYSl7cVgodGhpcyxhLmRhdGEpfWxhKCl7dGhpcy5jaGFubmVsLmNsb3NlKCl9fTsKTHFhPWNsYXNze2NvbnN0cnVjdG9yKCl7dmFyIGE9S3FhO3RoaXMub2JzZXJ2ZXJzPVtdO3RoaXMudmFsdWU9YX1zdWJzY3JpYmUoYSl7aWYoYS5laiE9bnVsbCl0aHJvdyBFcnJvcigiRmMiKTthLmVqPXRoaXMub2JzZXJ2ZXJzLmxlbmd0aDt0aGlzLm9ic2VydmVycy5wdXNoKGEpO3RyeXthKHRoaXMudmFsdWUpfWNhdGNoKGIpe31yZXR1cm4oKT0+e3ZhciBiPXRoaXMub2JzZXJ2ZXJzW3RoaXMub2JzZXJ2ZXJzLmxlbmd0aC0xXTt0aGlzLm9ic2VydmVyc1thLmVqXT1iO2IuZWo9YS5lajt0aGlzLm9ic2VydmVycy5wb3AoKX19dXBkYXRlKGEpe3RoaXMudmFsdWU9YSh0aGlzLnZhbHVlKTt0aGlzLm5vdGlmeSgpfXNldChhKXt0aGlzLnZhbHVlPWE7dGhpcy5ub3RpZnkoKX1ub3RpZnkoKXtmb3IobGV0IGEgb2YgdGhpcy5vYnNlcnZlcnMpdHJ5e2EodGhpcy52YWx1ZSl9Y2F0Y2goYil7fX19Owpqb2E9e2xhbmRzY2FwZToiKG1heC13aWR0aDogMjk5cHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkiLHBvcnRyYWl0OiIobWF4LXdpZHRoOiAyOTlweCkgYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIn07WFk9e307a1o9Y2xhc3N7Y29uc3RydWN0b3IoKXtpZih0aGlzLmNvbnN0cnVjdG9yPT09a1opdGhyb3cgbmV3IFR5cGVFcnJvcigic2QiKTt9ZGlzcG9zZSgpe31kaXNjb25uZWN0KCl7fW9ic2VydmUoYSxiLGMpe3JldHVybntlbGVtZW50OmEsb3B0aW9uOmN9fXJmKCl7fX07Ck1xYT1jbGFzcyBleHRlbmRzIGtae2NvbnN0cnVjdG9yKCl7c3VwZXIoKTt0aGlzLmlzQ29ubmVjdGVkPSEwO3RoaXMudj0hMTt0aGlzLm9ic2VydmVyPW5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcih0aGlzLkIuYmluZCh0aGlzKSx7cm9vdE1hcmdpbjoiLTAuMXB4In0pO3RoaXMubz1uZXcgTWFwO3RoaXMuaj1uZXcgTWFwfWRpc3Bvc2UoKXt0aGlzLmRpc2Nvbm5lY3QoKTt0aGlzLmouY2xlYXIoKX1kaXNjb25uZWN0KGE9ITEpe3RoaXMuaXNDb25uZWN0ZWQ9ITE7dGhpcy52PWE7dGhpcy5vYnNlcnZlci5kaXNjb25uZWN0KCk7Zm9yKGxldCBiIG9mIHRoaXMuby52YWx1ZXMoKSliLmRpc2Nvbm5lY3QoKX1CKGEpe2ZvcihsZXQgYyBvZiBhKXt2YXIgYj10aGlzLmouZ2V0KGMudGFyZ2V0KTtpZighYiljb250aW51ZTthPWMuaXNJbnRlcnNlY3Rpbmc7Zm9yKGxldCBbZCxlXW9mIGIpe2I9ZDtsZXQgZj1lO2ImJihiLnN0YXRlPT09InZpc2libGUiJiZhfHxiLnN0YXRlPT09ImhpZGRlbiImJgohYSkmJihmKGMudGFyZ2V0LGIuc3RhdGUpLGIuVmImJnRoaXMucmYoe2VsZW1lbnQ6Yy50YXJnZXQsb3B0aW9uOmJ9KSl9fX1EKGEpe2ZvcihsZXQgYiBvZiBhKWlmKChhPXRoaXMuai5nZXQoYi50YXJnZXQpKSYmYi5pc0ludGVyc2VjdGluZylmb3IobGV0IFtjLGRdb2YgYSl7YT1jO2xldCBlPWQ7YSYmYS5zdGF0ZT09PSJwcmVzY2FuIiYmKGUoYi50YXJnZXQsYS5zdGF0ZSksYS5WYiYmdGhpcy5yZih7ZWxlbWVudDpiLnRhcmdldCxvcHRpb246YX0pKX19b2JzZXJ2ZShhLGIsYyl7dmFyIGQ9KGQ9dGhpcy5qLmdldChhKSkmJmQuaGFzKGMpP3tlbGVtZW50OmEsb3B0aW9uOmN9OnZvaWQgMDtpZihkKXJldHVybiBkO2Q9e2VsZW1lbnQ6YSxvcHRpb246Y307dGhpcy5qLmhhcyhhKXx8dGhpcy5qLnNldChhLG5ldyBNYXApO3ZhciBlPXRoaXMuai5nZXQoYSk7ZSYmIWUuaGFzKGMpJiZlLnNldChjLGIpO3RoaXMudnx8KGMuc3RhdGU9PT0icHJlc2NhbiImJihiPTAsYS5oYXNBdHRyaWJ1dGUoInByZXNjYW4taGVpZ2h0IikmJgooYz1OdW1iZXIoYS5nZXRBdHRyaWJ1dGUoInByZXNjYW4taGVpZ2h0IikpLGlzTmFOKGMpfHwoYj1jKSksdGhpcy5vLmhhcyhiKT9iPXRoaXMuby5nZXQoYik6KGM9YC0wLjFweCAtMC4xcHggJHtifXB4IC0wLjFweGAsYz1uZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIodGhpcy5ELmJpbmQodGhpcykse3Jvb3RNYXJnaW46Y30pLHRoaXMuby5zZXQoYixjKSxiPWMpLGIub2JzZXJ2ZShhKSksdGhpcy5vYnNlcnZlci5vYnNlcnZlKGEpKTtyZXR1cm4gZH1yZihhKXt2YXIgYj10aGlzLmouZ2V0KGEuZWxlbWVudCk7aWYoYiYmYi5oYXMoYS5vcHRpb24pKXtiLmRlbGV0ZShhLm9wdGlvbik7aWYoYSYmYS5vcHRpb24uc3RhdGU9PT0icHJlc2NhbiIpZm9yKGxldCBjIG9mIHRoaXMuby52YWx1ZXMoKSljLnVub2JzZXJ2ZShhLmVsZW1lbnQpO2Iuc2l6ZT09PTAmJih0aGlzLmouZGVsZXRlKGEuZWxlbWVudCksdGhpcy5vYnNlcnZlci51bm9ic2VydmUoYS5lbGVtZW50KSl9fX07CnFZPVsieW91dHViZV9maWxsIiwieW91dHViZV9vdXRsaW5lIl07QVg9dm9pZCAwO3ZhciBOcWE9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy52YWx1ZT1hfWRlcmVmKCl7cmV0dXJuIHRoaXMudmFsdWV9fSxPcWE9dHlwZW9mIFdlYWtSZWY9PT0iZnVuY3Rpb24iP1dlYWtSZWY6TnFhO3ZhciBGWD1uZXcgY2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5qPWE7dGhpcy5tYXA9bmV3IFdlYWtNYXB9YWRkKGEsYil7dGhpcy5tYXAuaGFzKGEpfHwodGhpcy5qKGEpLHRoaXMubWFwLnNldChhLFtdKSk7dGhpcy5tYXAuZ2V0KGEpLnB1c2gobmV3IE9xYShiKSl9Z2V0KGEpe3ZhciBiPXRoaXM7cmV0dXJuIGZ1bmN0aW9uKigpe3ZhciBjPWIubWFwLmdldChhKTtpZihjKXt2YXIgZD0wO2ZvcihsZXQgZSBvZiBjKXtsZXQgZj1lLmRlcmVmKCk7ZiYmKGQrKyx5aWVsZCBmKX1pZigyKmQ8Yy5sZW5ndGgpe2Q9MDtmb3IobGV0IGUgb2YgYyllLmRlcmVmKCkmJihjW2QrK109ZSk7Yy5sZW5ndGg9ZH19fSgpfX0oYT0+e2EuYWRkRXZlbnRMaXN0ZW5lcigiYWJvcnQiLEFvYSx7b25jZTohMH0pfSksRVg9bmV3IFdlYWtNYXAsRFg9QWJvcnRDb250cm9sbGVyLGxaPUFib3J0U2lnbmFsO3R5cGVvZiBsWi5hYm9ydCE9PSJmdW5jdGlvbiImJihsWi5hYm9ydD14b2EpOwp0eXBlb2YgbFoucHJvdG90eXBlLnRocm93SWZBYm9ydGVkIT09ImZ1bmN0aW9uIiYmKGxaLnByb3RvdHlwZS50aHJvd0lmQWJvcnRlZD15b2EpO3R5cGVvZiBsWi5hbnkhPT0iZnVuY3Rpb24iJiYobFouYW55PXpvYSk7dHlwZW9mIGxaLnRpbWVvdXQhPT0iZnVuY3Rpb24iJiYobFoudGltZW91dD1Cb2EpO3ZhciBHWD0iMDEyMzQ1Njc4OUFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXoiLnNwbGl0KCIiKTt2YXIgVVk9bmV3IF8uSSgiY29weUxpbmtSZW5kZXJlciIpO3ZhciBQcWE9bmV3IF8uSSgiYXVkaW9UcmFja1NlbGVjdEFjdGlvbkNvbW1hbmQiKTt2YXIgUXFhPW5ldyBfLkkoImNhcHRpb25MYW5ndWFnZVNlbGVjdEFjdGlvbkNvbW1hbmQiKTt2YXIgUnFhPW5ldyBfLkkoInNob3dBdWRpb1RyYWNrUGlja2VyQWN0aW9uQ29tbWFuZCIpO3ZhciBTcWE9bmV3IF8uSSgic2hvd0NhcHRpb25MYW5ndWFnZVNlbGVjdEFjdGlvbkNvbW1hbmQiKTt2YXIgT3BhPW5ldyBfLkkoInBob25lRGlhbGVyRW5kcG9pbnQiKTt2YXIgU3BhPW5ldyBfLkkoInNlbmRTbXNFbmRwb2ludCIpO3ZhciBLcGE9bmV3IF8uSSgiY29weVRleHRFbmRwb2ludCIpO3ZhciBtWj1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLm5hbWU9YX1vKGE9e30pe0lYKHRoaXMubmFtZSwiU1VDQ0VTUyIsYSl9aihhPXt9KXtJWCh0aGlzLm5hbWUsIkZBSUxVUkUiLGEpfX0sRW9hPWNsYXNze2NvbnN0cnVjdG9yKGEpe3RoaXMubmFtZT0iU0xJX05BTUVfWU9VVFVCRV9FTUJFRFNfV0VCX0ZVTExTQ1JFRU5fUkVRVUVTVF9TTEkiO3RoaXMuc2xpSWQ9YTt0aGlzLnRpbWVvdXRNcz0zRTQ7dGhpcy5vPSIiO3RoaXMudj0tMTt0aGlzLmo9ITE7dGhpcy5kaW1lbnNpb25zPXt9fWdldElkKCl7cmV0dXJuIHRoaXMuc2xpSWR9RHIoYT17fSl7dGhpcy5qfHwodGhpcy5qPSEwLHRoaXMuZGltZW5zaW9ucz1hLHRoaXMubz1Db2EoKSxaVyh7ZGltZW5zaW9uczp0aGlzLmRpbWVuc2lvbnMscmVjb3Jkczpbe25hbWU6dGhpcy5uYW1lLHN0YXRlOiJTTElfU1RBVEVfU1RBUlQiLHNsaUlkOnRoaXMub31dfSksdGhpcy50aW1lb3V0TXM+MCYmKHRoaXMudj1zZXRUaW1lb3V0KCgpPT4Ke3RoaXMuemcoIlRJTUVPVVQiKX0sdGhpcy50aW1lb3V0TXMpKSl9emcoYSl7dGhpcy5qJiYodGhpcy50aW1lb3V0TXM+MCYmY2xlYXJUaW1lb3V0KHRoaXMudiksdGhpcy5qPSExLGE9e2RpbWVuc2lvbnM6dGhpcy5kaW1lbnNpb25zLHJlY29yZHM6W3tuYW1lOnRoaXMubmFtZSxzdGF0dXM6SFgoYSksc3RhdGU6IlNMSV9TVEFURV9FTkQiLHNsaUlkOnRoaXMub31dfSxfLkV5LnJlZ2lzdGVyLmRlbGV0ZShgJHt0aGlzLm5hbWV9XyR7dGhpcy5zbGlJZH1gKSxaVyhhKSl9fTt2YXIgU1g9bmV3IG1aKCJTTElfTkFNRV9ZT1VUVUJFX0VNQkVEU19XRUJfUExBWUVSX0VSUk9SX1NMSSIpLFRYPW5ldyBtWigiU0xJX05BTUVfWU9VVFVCRV9FTUJFRFNfV0VCX1BMQVlFUl9VTlBMQVlBQkxFX1NMSSIpO3ZhciBHb2E9WyJjbGlja1RyYWNraW5nUGFyYW1zIiwiY29tbWFuZE1ldGFkYXRhIiwibG9nZ2luZ1VybHMiLCJidWlsZENvbW1hbmRQYXlsb2FkIl07dmFyIExYPWNsYXNze2NvbnN0cnVjdG9yKGEsYixjPSExLGQ9ITEsZT1bXSl7dmFyIGY9d1g7dGhpcy52PWE7dGhpcy5uYXZpZ2F0ZT12b2lkIDA7dGhpcy5qPWI7dGhpcy5ZPWM7dGhpcy5JPWQ7dGhpcy5CPWY7dGhpcy5LPWU7dGhpcy5NPVtdO3RoaXMubz1uZXcgU2V0O3RoaXMuRD0hMTtLb2EodGhpcyl9cmVzb2x2ZUNvbW1hbmQoYSxiKXtyZXR1cm4gTlgodGhpcyxhLGIpLmhhbmRsZWR9fTt2YXIgblo9bmV3IF8uVnMoIkVOVElUWV9TVEFURV9UT0tFTiIpO3ZhciBvWj1jbGFzc3thc3luYyByZXNvbHZlKGEsYil7YXdhaXQgdGhpcy5yZXNvbHZlQ29tbWFuZChhLGIpfX07dmFyIHBaPWNsYXNzIGV4dGVuZHMgb1p7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLnN0b3JlPWF9YXN5bmMgcmVzb2x2ZUNvbW1hbmQoYSl7aWYoYT1fLkIoYSxfLnduYSk/LmVudGl0eUJhdGNoVXBkYXRlKWE9ey4uLmEsbXV0YXRpb25zOlsuLi4oYS5tdXRhdGlvbnN8fFtdKV19LGF3YWl0IGRvYShhLHRoaXMuc3RvcmUpfX07cFpbXy5Mbl09W25aXTt2YXIgJFk9bmV3IF8uVnMoIlBBTkVMX0xPQURJTkdfU1RSQVRFR1lfVE9LRU4iKTt2YXIgcVo9Y2xhc3MgZXh0ZW5kcyBvWntjb25zdHJ1Y3RvcihhLGIpe3N1cGVyKCk7dGhpcy5jb250cm9sbGVyPWE7dGhpcy5wYW5lbExvYWRpbmdTdHJhdGVneT1ifWFzeW5jIHJlc29sdmVDb21tYW5kKGEsYil7dmFyIGM9Xy5CKGEsXy5OVyk7aWYoYz8ucGFuZWxMb2FkaW5nU3RyYXRlZ3kpe3ZhciBkPVZYKHRoaXMuY29udHJvbGxlcixiPy5mb3JtPy5lbGVtZW50KSxlPWMuY29udGV4dHVhbFNoZWV0UHJlc2VudGF0aW9uQ29uZmlnPy5wb3NpdGlvbixmPWMuY29udGV4dHVhbFNoZWV0UHJlc2VudGF0aW9uQ29uZmlnPy5ob3ZlckNvbmZpZyxoPWMuY29udGV4dHVhbFNoZWV0UHJlc2VudGF0aW9uQ29uZmlnPy5leHBhbmRUb0Z1bGxXaWR0aCxrPWMuY29udGV4dHVhbFNoZWV0UHJlc2VudGF0aW9uQ29uZmlnPy5vcGVuVG9TaWRlO2F3YWl0IHRoaXMucGFuZWxMb2FkaW5nU3RyYXRlZ3kuZXhlY3V0ZSh7Y29tbWFuZDphLGRhdGE6Yy5wYW5lbExvYWRpbmdTdHJhdGVneSxnbjphc3luYyBsPT4Ke2lmKGwuc2hlZXRWaWV3TW9kZWwpe2lmKGYpe3ZhciBtPXRoaXMuY29udHJvbGxlcjttLm89ISFmLnByZXZlbnRDbG9zZVdoaWxlSG92ZXJlZDttLmhpZGVEZWxheU1zPWYuaGlkZURlbGF5TXM/PzA7bS5zaG93RGVsYXlNcz1mLnNob3dEZWxheU1zPz8wfWF3YWl0IHRoaXMuY29udHJvbGxlci53Zyh7dmlld01vZGVsOmwuc2hlZXRWaWV3TW9kZWwsVXI6ZSxleHBhbmRUb0Z1bGxXaWR0aDpoLG9wZW5Ub1NpZGU6a30sZCxiPy5mb3JtPy5lbGVtZW50KX19LGJ2OntsYXllcjowfX0pfX19O3FaW18uTG5dPVtfLmNMLCRZXTt2YXIgVHFhPWNsYXNzIGV4dGVuZHMgb1p7Y29uc3RydWN0b3IoKXtzdXBlcigpfWFzeW5jIHJlc29sdmVDb21tYW5kKGEpe3ZhciBiPV8uQihhLFBxYSk7YiYmKGE9YXdhaXQgXy5MSCgpKSYmYT8uaXNSZWFkeT8uKCkmJihiPVFvYShhLGI/Lmxhbmd1YWdlQ29kZSkpJiZhLnNldEF1ZGlvVHJhY2soYil9fTt2YXIgclo9Y2xhc3MgZXh0ZW5kcyBvWntjb25zdHJ1Y3RvcihhKXtzdXBlcigpO3RoaXMuaj1hfWFzeW5jIHJlc29sdmVDb21tYW5kKGEpe3ZhciBiPV8uQihhLFFxYSk7aWYoYiYmKGE9YXdhaXQgXy5MSCgpKSl7dmFyIGM9Yj8ubGFuZ3VhZ2VDb2RlO2I9Yj8uaXNBdXRvVHJhbnNsYXRlZDthLmdldFZpZGVvRGF0YSYmXy4kTyhhKS5sZW5ndGgmJigoYz1Sb2EoYSxjLGIpKT9hLnNldE9wdGlvbigiY2FwdGlvbnMiLCJ0cmFjayIsYyk6KGEuc2V0T3B0aW9uKCJjYXB0aW9ucyIsInN0aWNreUxvYWRpbmciLHt9KSxhLnNldE9wdGlvbigiY2FwdGlvbnMiLCJ0cmFjayIse30pKSk7YT1hLmlzU3VidGl0bGVzT24oKT9fLmFBKCJDQVBUSU9OX09OX1RPQVNUIix2b2lkIDAsIlN1YnRpdGxlcy9DQyB0dXJuZWQgb24iKTpfLmFBKCJDQVBUSU9OX09GRl9UT0FTVCIsdm9pZCAwLCJTdWJ0aXRsZXMvQ0MgdHVybmVkIG9mZiIpO3RoaXMuai5yZXNvbHZlQ29tbWFuZChfLmFRKF8uV0woYSksNUUzKSl9fX07CnJaW18uTG5dPVtfLlVEXTt2YXIgc1o9Y2xhc3MgZXh0ZW5kcyBvWntjb25zdHJ1Y3RvcihhKXtzdXBlcigpO3RoaXMuaj1hfWFzeW5jIHJlc29sdmVDb21tYW5kKGEsYil7Xy5CKGEsUnFhKSYmKGE9YXdhaXQgXy5MSCgpKSYmKGE9U29hKGEpKSYmdGhpcy5qLnJlc29sdmVDb21tYW5kKGEsYil9fTtzWltfLkxuXT1bXy5VRF07dmFyIHRaPWNsYXNzIGV4dGVuZHMgb1p7Y29uc3RydWN0b3IoYSl7c3VwZXIoKTt0aGlzLmo9YX1hc3luYyByZXNvbHZlQ29tbWFuZChhLGIpe18uQihhLFNxYSkmJihhPWF3YWl0IF8uTEgoKSkmJigoYT1Wb2EoYSkpP3RoaXMuai5yZXNvbHZlQ29tbWFuZChhLGIpOihiPV8uYUEoIkNMT1NFRF9DQVBUSU9OU19ESVNBQkxFRCIsdm9pZCAwLCJObyBjYXB0aW9ucyBhcmUgYXZhaWxhYmxlIGZvciB0aGlzIHZpZGVvIiksdGhpcy5qLnJlc29sdmVDb21tYW5kKF8uYVEoXy5XTChiKSkpKSl9fTt0WltfLkxuXT1bXy5VRF07dmFyIHNxYT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLnNpZ25hbD1hO3RoaXMuaj10aGlzLm8uYmluZCh0aGlzKTt0aGlzLmxvZ2dpbmdFbmFibGVkPSEwO3RoaXMuaWRzPW5ldyBTZXQ7YS5hZGRFdmVudExpc3RlbmVyKCJhYm9ydCIsdGhpcy5qKTt0aGlzLmpvYklkPV8uWWoodGhpcy5qLDFFNCl9d3koYSl7dGhpcy5sb2dnaW5nRW5hYmxlZCYmIXRoaXMuaWRzLmhhcyhhKSYmdGhpcy5pZHMuYWRkKGEpfW8oKXt0aGlzLmxvZ2dpbmdFbmFibGVkJiYodGhpcy5sb2dnaW5nRW5hYmxlZD0hMSxfLmpmLkFhKHRoaXMuam9iSWQpLHRoaXMuc2lnbmFsLnJlbW92ZUV2ZW50TGlzdGVuZXIoImFib3J0Iix0aGlzLmopLFdvYSh0aGlzKSl9fTt2YXIgUlg7dmFyIFVxYT1jbGFzc3tjb25zdHJ1Y3Rvcigpe3RoaXMuT209bmV3IE1hcDt0aGlzLmo9bmV3IE1hcH1PeihhLGIpe2lmKGEpe3RoaXMuT20uc2V0KGEsYik7dmFyIGM9dGhpcy5qLmdldChhKTtjJiYoYy5yZXNvbHZlKGIpLHRoaXMuai5kZWxldGUoYSkpfX19O3ZhciBhWj1jbGFzc3tjb25zdHJ1Y3RvcihhLGIpe3RoaXMubz1hO3RoaXMudj1ifWooKXtpZih0aGlzLnBhbmVsTG9hZGluZ1N0cmF0ZWd5JiZ0aGlzLnBhbmVsTG9hZGluZ1N0cmF0ZWd5LmlubGluZUNvbnRlbnQpcmV0dXJuIHRoaXMucGFuZWxMb2FkaW5nU3RyYXRlZ3kuaW5saW5lQ29udGVudH1hc3luYyBleGVjdXRlKGEpe3ZhciBiPWEuVEksYz1hLnBhcmVudFZlLGQ9YS5idixlPWEuZ24sZj1hLmNvbW1hbmQ7dGhpcy5wYW5lbExvYWRpbmdTdHJhdGVneT1hLmRhdGE7KGE9dGhpcy5wYW5lbExvYWRpbmdTdHJhdGVneT8uc2NyZWVuVmU/dGhpcy5wYW5lbExvYWRpbmdTdHJhdGVneT8uc2NyZWVuVmU6YikmJl8uRE8odGhpcy52LGEsYyxkKTsoYz10aGlzLmooKSkmJmF3YWl0IGUoYyk7dGhpcy5wYW5lbExvYWRpbmdTdHJhdGVneT8ucmVxdWVzdFRlbXBsYXRlJiYoZj1hd2FpdCAkb2EodGhpcyxmKSkmJmF3YWl0IGUoZil9fTthWltfLkxuXT1bXy5JeSxfLk9XXTt2YXIgcHFhPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5qPXRoaXMubz0hMTt0aGlzLnNob3dEZWxheU1zPXRoaXMuaGlkZURlbGF5TXM9MDt0aGlzLkQ9ITE7dGhpcy5JPSgpPT57dGhpcy5qPSEwfTt0aGlzLlo9KCk9Pnt0aGlzLmo9ITF9O3RoaXMuVT0oKT0+e3RoaXMuaj0hMH07dGhpcy5LPSgpPT57dGhpcy5qPSExfX1QeihhLGI9ITEpe2I/dGhpcy5NPWE6dGhpcy5jb250YWluZXI9YX1hc3luYyB3ZyhhLGIsYz1iKXtXWCh0aGlzKTt0aGlzLnNob3dEZWxheU1zP3RoaXMuWT1zZXRUaW1lb3V0KGFzeW5jKCk9Pnthd2FpdCAkWCh0aGlzLGEsYixjKX0sdGhpcy5zaG93RGVsYXlNcyk6YXdhaXQgJFgodGhpcyxhLGIsYyl9YXN5bmMgSmUoKXtXWCh0aGlzKTt0aGlzLmhpZGVEZWxheU1zP3RoaXMuQj1zZXRUaW1lb3V0KGFzeW5jKCk9Pnthd2FpdCBhWSh0aGlzKX0sdGhpcy5oaWRlRGVsYXlNcyk6YXdhaXQgYVkodGhpcyl9YXN5bmMgZG0oKXtyZXR1cm4gVVgodGhpcyk/LmRtKCk/PwohMX19O3ZhciBvcGE9WyJ0b3VjaG1vdmUiLCJzY3JvbGwiXTt2YXIgdVo9ITE7dmFyIGNZPSExO3ZhciBucGE9e2xyKGEpe2EucGFyZW50SWQ9PW51bGwmJih1Wnx8KGJZKCksc2V0SW50ZXJ2YWwoYlksNkU1KSx1Wj0hMCksZlkoYSwid2ViX3RyYWNpbmdfYWN0aW9uIikpfX07dmFyIGhZLEtxYT17aUw6Xy54KCJ3ZWJfdHJhY2luZ19hbGxfY29tcG9uZW50cyIpLFF2Ol8ueCgid2ViX3RyYWNpbmdfZXhwb3J0X3RvX2NzaSIpLEh2OmZ1bmN0aW9uKGEsYil7YT1fLnJqKGEsYik7cmV0dXJuIEFycmF5LmlzQXJyYXkoYSk/Xy5IdyhhLGM9PlN0cmluZyhjfHwiIikpOltTdHJpbmcoYXx8IiIpXX0oIndlYl90cmFjaW5nX2VuYWJsZWRfc3BhbnMiKSxSdjpfLngoIndlYl90cmFjaW5nX2V4cG9ydF90b19kZXZ0b29scyIpLE1xOl8uc2ooInRlbF9tYXhfYnJlYWRjcnVtYnMiLDApfTtoWT1uZXcgTHFhO3ZhciBrcGE9e1JlbmRlcjoiQ09XX1NQQU5fVFlQRV9SRU5ERVIiLE9uSW5pdDoiQ09XX1NQQU5fVFlQRV9PTl9JTklUIixFZmZlY3Q6IkNPV19TUEFOX1RZUEVfRUZGRUNUIixDb21wdXRlZDoiQ09XX1NQQU5fVFlQRV9DT01QVVRFRCIsU2lnbmFsVXBkYXRlOiJDT1dfU1BBTl9UWVBFX1NJR05BTF9VUERBVEUiLFJlbmRlckVmZmVjdDoiQ09XX1NQQU5fVFlQRV9SRU5ERVJfRUZGRUNUIixDcmVhdGVSZWFjdGl2ZUNvbXBvbmVudDoiQ09XX1NQQU5fVFlQRV9DT01QT05FTlRfUkVOREVSIn07dmFyIG1wYT1fLngoIndlYl9zaG9ydHNfZW5hYmxlX3RyYWNpbmciKTt2YXIgdHBhPVsiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbSIsImh0dHBzOi8vdHYueW91dHViZS5jb20iLCJodHRwczovL3d3dy5nc3RhdGljLmNvbSIsImh0dHBzOi8vd3d3LnlvdXR1YmUuY29tIl0sdnBhPV8uc2ooIndpbF9pY29uX21heF9jb25jdXJyZW50X2ZldGNoZXMiLEluZmluaXR5KSxaWT1jbGFzc3tjb25zdHJ1Y3RvcihhLGIsYyl7dGhpcy5GYT1hO3RoaXMuS2s9Yjt0aGlzLlk9e307dGhpcy5EPXt9O3RoaXMubz17fTt0aGlzLkk9dGhpcy5jb3VudGVyPTA7dGhpcy5CPSEhXy51LmNhY2hlczt0aGlzLlU9UHJvbWlzZS5yZXNvbHZlKHZvaWQgMCk7dGhpcy5aPXZvaWQgMDt0aGlzLnY9bnVsbDt0aGlzLk09Xy54KCJ3aWxfaWNvbl91c2VfbWFza19yZW5kZXJpbmciKT8xOjA7dGhpcy5vYT1fLngoIndpbF9pY29uX25ldHdvcmtfZmlyc3QiKTt0aGlzLk1hPV8ueCgid2lsX2ljb25fcmVuZGVyX3doZW5faWRsZSIpO3RoaXMuUWE9IV8ueCgid2lsX2ljb25fbG9hZF9pbW1lZGlhdGVseSIpOwp0aGlzLks9ITE7YT0oKT0+e3RoaXMuQiYmKHRoaXMuVT1fLnUuY2FjaGVzLm9wZW4oInl0LWljb25zIikudGhlbihkPT50aGlzLlo9ZCkuY2F0Y2goKCk9Pnt0aGlzLkI9ITF9KSl9O2M9Yz8uKCl8fHt9O2ZvcihsZXQgW2QsZV1vZiBPYmplY3QuZW50cmllcyhjKSljPWQsYj1fLmZDKGUpLGpZKGIpLHRoaXMuRFtjXT1iLmNsb25lTm9kZSghMCk7dGhpcy5LPXFwYSh0aGlzKTt0aGlzLksgaW5zdGFuY2VvZiBQcm9taXNlP3RoaXMuSy50aGVuKGEpOmEoKX1qKGEpe3JldHVybiEhdGhpcy5tZihhKX1hc3luYyB5YShhKXtpZihhLmxlbmd0aCl7dmFyIGI9W107Zm9yKGxldCBjIG9mIGEpKGE9dGhpcy5tZihjKSkmJiF0aGlzLkRbYS51cmxdJiZiLnB1c2goa1kodGhpcyxhKS50aGVuKCgpPT57fSkuY2F0Y2goKCk9Pnt9KSk7UHJvbWlzZS5hbGwoYil9fXB5KGEpe3ZhciBiPXRoaXMubWYoYSk7cmV0dXJuIGI/dGhpcy5NPT09MT9sWSh0aGlzLGIsdGhpcy5NKTooYT10aGlzLkRbYi51cmxdKT8KKGE9YS5jbG9uZU5vZGUoITApLG5ZKHRoaXMsYSksbFkodGhpcyxiLHRoaXMuTSxhKSk6a1kodGhpcyxiKS50aGVuKGM9Pnt2YXIgZD1jPzA6MTtuWSh0aGlzLGMpO3JldHVybiBsWSh0aGlzLGIsZCxjKX0pOihfLkhwKG5ldyBfLlhqKCJJY29uIG5vdCBmb3VuZCIse2ljb25TaGFwZTphfSkpLCgpPT57fSl9YXN5bmMgZ2EoYSxiKXtyZXR1cm4gcFkodGhpcyxhKS50aGVuKGM9Pnt3cGEodGhpcyxhLGMsYik7cmV0dXJuIGN9KX1hc3luYyBoYShhLGIpe3JldHVybiBiP2IubWF0Y2goYSkudGhlbihjPT5jJiZjLm9rP2M6UHJvbWlzZS5yZWplY3QoKSk6UHJvbWlzZS5yZWplY3QoKX1tZihhKXtyZXR1cm4gdGhpcy5GYS5tZihhKX19O1pZW18uTG5dPVtfLm1PLF8ubEYsXy5JbihfLm9PKV07dmFyIHlwYT17QUNDRVNTX1RJTUU6ImNsb2NrIixBQ0NPVU5UX0JPWDpfLncoIklOTkVSVFVCRV9DTElFTlRfTkFNRSIpPT09IldFQl9DUkVBVE9SIj8icGVyc29uX2JveCI6InBlcnNvbl9hY2NvdW50IixBQ0NPVU5UX0JPWF9DQUlSTzoicGVyc29uX2FjY291bnRfY2Fpcm8iLEFDQ09VTlRfQ0lSQ0xFOiJwZXJzb25fY2lyY2xlIixBQ0NPVU5UX0NJUkNMRV9DQUlSTzoicGVyc29uX2NpcmNsZV9jYWlybyIsQUNDT1VOVF9MSU5LRUQ6ImFjY291bnRfbGlua19zdWNjZXNzIixBQ0NPVU5UX1VOTElOS0VEOiJhY2NvdW50X2xpbmsiLEFERF9GUklFTkQ6InBlb3BsZSIsQUREX01PREVSQVRPUjoic2hpZWxkX2FkZCIsQUREX1RPX0xJQlJBUlk6ImJvb2ttYXJrIixBRERfVE9fUExBWUxJU1Q6ImFkZCIsQUREX1RPX1FVRVVFX1RBSUw6Imxpc3RfcXVldWUiLEFERF9UT19SRU1PVEVfUVVFVUU6Imxpc3RfbXVzaWMiLEFERF9UT19XQVRDSF9MQVRFUjoiY2xvY2siLEFERF9WSURFT19MSU5LOiJmaWxtX3N0cmlwX2FkZCIsCkFMRVJUX1dBUk5fUkVEOiJhbGVydF90cmlhbmdsZSIsQVJST1dfQkFDSzoiYXJyb3dfbGVmdCIsQVJST1dfRElBR09OQUxfVVBfUklHSFRfRklMTEVEOiJhcnJvd19kaWFnb25hbF91cF9yaWdodCIsQVJST1dfRFJPUF9ET1dOOiJjaGV2cm9uX2Rvd24iLEFSUk9XX0RST1BfVVA6ImNoZXZyb25fdXAiLEFSUk9XX0ZPUldBUkQ6ImFycm93X3JpZ2h0IixBUlRJU1Q6InBlcnNvbl9tdXNpYyIsQVVESU9UUkFDSzoiYXVkaW8iLEFVVE9fQVdFU09NRToic3BhcmtsZSIsQVZBVEFSX0FOT05ZTU9VUzoicGVyc29uX2NpcmNsZSIsQVZBVEFSX0xPR0dFRF9PVVQ6InBlcnNvbl9jaXJjbGUiLEJBQ0s6ImFycm93X2xlZnQiLEJBUl9DSEFSVDoiYmFyX2dyYXBoIixCTE9DSzoic2xhc2hfY2lyY2xlX2xlZnQiLEJMT0NLX1VTRVI6InNsYXNoX2NpcmNsZV9sZWZ0IixCT09LTUFSS19CT1JERVI6ImJvb2ttYXJrIixCUkVBS0lOR19ORVdTX0FMVF8xOiJhcnRpY2xlX2FsZXJ0IixCUk9BRENBU1RfQ0FJUk86InBvZGNhc3RfY2Fpcm8iLApCVUdfUkVQT1JUOiJidWciLENBTUVSQV9BTFQ6ImNhbWVyYSIsQ0FNUEFJR046Im1lZ2FwaG9uZSIsQ0FOQ0VMOiJ4X2NpcmNsZSIsQ0FQVElPTlM6ImNsb3NlZF9jYXB0aW9uIixDQVNUX09VVExJTkU6ImNocm9tZWNhc3QiLENIQU5ORUxfTk9USUZJQ0FUSU9OX1BSRUZFUkVOQ0VfT0ZGOiJiZWxsIixDSEFOTkVMX05PVElGSUNBVElPTl9QUkVGRVJFTkNFX09OOiJiZWxsX29uIixDSEFUOiJtZXNzYWdlX2J1YmJsZV9sZWZ0IixDSEFUX0JVQkJMRToibWVzc2FnZV9idWJibGVfZW1wdHkiLENIQVRfU1BBUks6InNwYXJrX21lc3NhZ2VfYnViYmxlX2xlZnQiLENIRUNLX0JPWF9PVVRMSU5FX0JMQU5LOiJib3hfZW1wdHkiLENIRUNLX0NJUkNMRV9PVVRMSU5FOiJjaGVja19jaXJjbGUiLENIRUNLX0NJUkNMRV9USElDSzoiY2hlY2tfY2lyY2xlIixDTEFSSUZZOiJhcnRpY2xlX2NsYXJpZnkiLENMT1NFRF9DQVBUSU9OX1NFTEVDVEVEOiJjbG9zZWRfY2FwdGlvbiIsQ0xPU0U6InhfbWFyayIsCkNMT1VEX1VQTE9BRDoiY2xvdWRfYXJyb3dfdXAiLENPTExBUFNFOiJjaGV2cm9uX3VwIixDT0xMQVBTRV9DQUlSTzoiY2hldnJvbl91cF9jYWlybyIsQ09MTEVDVElPTjoibGF5ZXJzIixDT0xPUl9MRU5TOiJwYWxldHRlIixDT01NRU5UOiJtZXNzYWdlX2J1YmJsZV9yaWdodCIsQ09OU0VOVF9TSElFTEQ6InBlcnNvbl9zaGllbGQiLENPTlRFTlRfQ1VUOiJzY2lzc29ycyIsQ09OVEVOVF9DVVRfQ0FJUk86InNjaXNzb3JzX2NhaXJvIixDT1VSU0U6Xy54KCJ3ZWJfZW5hYmxlX2NvdXJzZV9pY29uX3VwZGF0ZSIpPyJjcmVhdG9yX2FjYWRlbXkiOiJsaWdodGJ1bGIiLENPVVJTRV9DQUlSTzpfLngoIndlYl9lbmFibGVfY291cnNlX2ljb25fdXBkYXRlIik/ImNyZWF0b3JfYWNhZGVteV9jYWlybyI6ImxpZ2h0YnVsYl9jYWlybyIsQ1JFQVRJT05fTElWRToicmFkYXJfbGl2ZSIsQ1JFQVRJT05fUE9TVDoiYm94X3BlbmNpbCIsQ1JFQVRJT05fVVBMT0FEOiJteV92aWRlb3MiLENSRUFUSU9OX1VQTE9BRF9SRUQ6InVwbG9hZCIsCkNSRUFUT1JfTUVUQURBVEFfTU9ORVRJWkFUSU9OOiJkb2xsYXJfc2lnbiIsQ1JFQVRPUl9NRVRBREFUQV9NT05FVElaQVRJT05fT0ZGOiJkb2xsYXJfc2lnbl9vZmYiLENSRUFUT1JfU1RVRElPOiJ5b3V0dWJlX3N0dWRpbyIsREFTSEJPQVJEOiJncmlkX2FzeW1tZXRyaWNhbCIsREVMRVRFOiJ0cmFzaF9jYW4iLERFTEVURV9TV0VFUDoidHJhc2hfY2FuIixERVNLVE9QOiJsYXB0b3AiLERJU0xJS0U6InRodW1iX2Rvd24iLERJU0xJS0VfU0VMRUNURUQ6InRodW1iX2Rvd24iLERJU01JU1NBTDoieF9tYXJrIixESVNNSVNTX1FVRVVFOiJsaXN0X3JlbW92ZSIsRE9ORV9BTEw6ImNoZWNrX2RvdWJsZSIsRE9XTl9BUlJPVzoiYXJyb3dfZG93biIsRE9fTk9UX0RJU1RVUkI6InNsYXNoX2NpcmNsZV9sZWZ0IixEUkFGVDoicGFwZXJfY29ybmVyX2ZvbGRlZCIsRFJBR19IQU5ETEU6ImJhcnNfMiIsRURJVDoicGVuY2lsIixFTU9KSToiZmFjZV92ZXJ5X2hhcHB5IixFTU9KSV9GTEFHUzoiZmxhZyIsCkVNT0pJX09CSkVDVFM6ImxpZ2h0YnVsYiIsRU1PSklfUEVPUExFOiJmYWNlX3ZlcnlfaGFwcHkiLEVNT0pJX1JFQ0VOVDoiY2xvY2siLEVNUFRZX0hFQVJUOiJoZWFydCIsRU1QVFlfTElLRToidGh1bWJfdXAiLEVSUk9SX0JMQUNLOiJhbGVydF9jaXJjbGUiLEVSUk9SX09VVExJTkU6ImFsZXJ0X2NpcmNsZSIsRVhJVF9BUFA6ImFycm93X2luIixFWElUX1RPX0FQUDoiYXJyb3dfaW4iLEVYUEFORDoiY2hldnJvbl9kb3duIixFWFBBTkRfQUxMOiJjaGV2cm9uX2V4cGFuZCIsRVhQQU5EX0NBSVJPOiJjaGV2cm9uX2Rvd25fY2Fpcm8iLEVYUEFORF9MRVNTOiJjaGV2cm9uX3VwIixFWFBBTkRfTU9SRToiY2hldnJvbl9kb3duIixFWFBMT1JFOiJjb21wYXNzIixFWFBMT1JFX0RFU1RJTkFUSU9OOiJjb21wYXNzIixFWFRFUk5BTF9MSU5LOiJvcGVuX25ldyIsRkFCX1VQTE9BRDoidXBsb2FkIixGQUNFX0hBUFBZX09VVExJTkU6ImZhY2VfaGFwcHkiLEZBQ1RfQ0hFQ0s6ImFydGljbGVfY2hlY2siLApGQVNISU9OX0xPR086ImZhc2hpb24iLEZBU0hJT05fTE9HT19DQUlSTzoiZmFzaGlvbl9jYWlybyIsRkFWT1JJVEU6ImhlYXJ0IixGRUVEQkFDSzoibWVzc2FnZV9idWJibGVfYWxlcnQiLEZFRURCQUNLX0NBSVJPOiJtZXNzYWdlX2J1YmJsZV9hbGVydF9jYWlybyIsRklMTF9BUlJPV19TT0xJRF9ET1dOXzE2OiJhcnJvd19zb2xpZF9kb3duIixGSUxMX0FSUk9XX1NPTElEX1VQXzE2OiJhcnJvd19zb2xpZF91cCIsRklMTF9ET0xMQVJfU0lHTl9IRUFSVF8xMjoiZG9sbGFyX3NpZ25faGVhcnQiLEZJTFRFUjoibWVudV9maWx0ZXIiLEZJUlNUX1BBR0U6ImNoZXZyb25fZmlyc3QiLEZMQUc6ImZsYWciLEZVTExfSEVBUlQ6ImhlYXJ0IixHQU1FX0NPTlNPTEVfRFBBRDoiZ2FtZV9jb25zb2xlX2RwYWQiLEdBTUVfQ09OU09MRV9GQUNFX0JVVFRPTlM6ImdhbWVfY29uc29sZV9mYWNlX2J1dHRvbnMiLEdBTUlOR19MT0dPOiJnYW1pbmciLEdBTUlOR19MT0dPX0NBSVJPOiJnYW1pbmdfY2Fpcm8iLApHT19UT19QQUdFOiJhcnJvd19yaWdodCIsR1JPVVBTOiJwZW9wbGVfZ3JvdXAiLEhBUFBZOiJmYWNlX2hhcHB5IixIRUFMVEhfQU5EX1NBRkVUWToic2hpZWxkX3BsdXMiLEhFTFA6InF1ZXN0aW9uX2NpcmNsZSIsSEVMUF9DQUlSTzoicXVlc3Rpb25fY2lyY2xlX2NhaXJvIixIRUxQX09VVExJTkU6InF1ZXN0aW9uX2NpcmNsZSIsSElERToic2xhc2hfY2lyY2xlX2xlZnQiLElNQUdFOiJpbWFnZSIsSU5GSU5JVFlfSUNPTjoiaW5maW5pdHkiLElORk86ImluZm9fY2lyY2xlIixJTkZPX09VVExJTkU6ImluZm9fY2lyY2xlIixJTlNFUlRfQ0hBUlQ6ImJhcl9ncmFwaF9ib3hfdmVydGljYWwiLElOU0VSVF9DSEFSVF9PVVRMSU5FRDoiYmFyX2dyYXBoX2JveF92ZXJ0aWNhbCIsSU5TRVJUX1BIT1RPOiJpbWFnZSIsS0VFUDoicGluIixLRUVQX09GRjoicGluX29mZiIsS0VZQk9BUkQ6ImtleWJvYXJkIixLRVlCT0FSRF9BUlJPV19ET1dOOiJjaGV2cm9uX2Rvd24iLEtFWUJPQVJEX0FSUk9XX1VQOiJjaGV2cm9uX3VwIiwKS0lEU19CTE9DSzoic2xhc2hfY2lyY2xlX2xlZnQiLExBTkdVQUdFOiJnbG9iZSIsTEFTVF9QQUdFOiJjaGV2cm9uX2xhc3QiLExBVU5DSDoib3Blbl9uZXciLExFQVJOSU5HOiJsaWdodGJ1bGIiLExFQVJOSU5HX0NBSVJPOiJsaWdodGJ1bGJfY2Fpcm8iLExJQlJBUllfQUREOnRZKCJsaWJyYXJ5X2FkZCIpLExJQlJBUllfT1VUTElORToibGlicmFyeSIsTElCUkFSWV9SRU1PVkU6dFkoKSxMSUdIVEJVTEJfU1BBUktfT1VUTElORToibGlnaHRidWxiX3NwYXJrIixMSUtFU19QTEFZTElTVDoidGh1bWJfdXAiLExJS0VTX1BMQVlMSVNUX0NBSVJPOiJ0aHVtYl91cF9jYWlybyIsTElLRToidGh1bWJfdXAiLExJS0VfU0VMRUNURUQ6InRodW1iX3VwIixMSVZFOiJyYWRhcl9saXZlIixMSVZFX0NBSVJPOiJyYWRhcl9saXZlX2NhaXJvIixMSVZFX1VOTElTVEVEOiJsaW5rIixMT0NBVElPTl9PTjoibG9jYXRpb25fcG9pbnQiLExPQ0FUSU9OX1BJTjoibG9jYXRpb25fcG9pbnQiLExPT1A6ImFycm93X3JlcGVhdCIsCkxPT1BfQUNUSVZFOiJhcnJvd19yZXBlYXQiLExPT1BfT05FOiJhcnJvd19yZXBlYXRfMSIsTE9PUF9PTkVfQUNUSVZFOiJhcnJvd19yZXBlYXRfMSIsTUVIOiJmYWNlX21laCIsTUVNQkVSU19PTkxZX01PREVfT0ZGOiJtZXNzYWdlX2J1YmJsZV9sZWZ0IixNRU5VOiJiYXJzXzMiLE1FU1NBR0U6Im1lc3NhZ2VfYnViYmxlX2xlZnQiLE1JQ1JPUEhPTkVfT046Im1pYyIsTUlYOiJ5b3V0dWJlX21peCIsTU9ORVRJWkFUSU9OX09OOiJkb2xsYXJfc2lnbl9jaXJjbGUiLE1PTkVZX0ZJTEw6ImRvbGxhcl9zaWduX2NvbnRhaW5lciIsTU9ORVlfRklMTF9KUFk6Inllbl9zaWduX2NvbnRhaW5lciIsTU9ORVlfSEVBUlQ6ImRvbGxhcl9zaWduX2hlYXJ0IixNT1JFX0hPUklaOiJvdmVyZmxvd19ob3Jpem9udGFsIixNT1JFX1ZFUlQ6Im92ZXJmbG93X3ZlcnRpY2FsIixNVVNJQzoiYXVkaW8iLE1VU0lDX0NBSVJPOiJhdWRpb19jYWlybyIsTVVTSUNfTk9URV9TWU1CT0w6Im11c2ljIixNVVNJQ19TSFVGRkxFOiJhcnJvd19zaHVmZmxlIiwKTVlfQ0hBTk5FTDoicGVyc29uX2NpcmNsZSIsTVlfTE9DQVRJT046ImxvY2F0aW9uX3BvaW50IixORVdTX1NUT1JZOiJuZXdzIixORVhUOiJjaGV2cm9uX3JpZ2h0IixOT1RJRklDQVRJT05TOiJiZWxsIixOT1RJRklDQVRJT05TX0FDVElWRToiYmVsbF9vbiIsTk9USUZJQ0FUSU9OU19DQUlSTzoiYmVsbF9jYWlybyIsTk9USUZJQ0FUSU9OU19ET05FX0NIRUNLTUFSSzoiY2hlY2siLE5PVElGSUNBVElPTlNfSU5CT1g6ImJlbGwiLE5PVElGSUNBVElPTlNfTk9ORToiYmVsbCIsTk9USUZJQ0FUSU9OU19PRkY6ImJlbGxfb2ZmIixOT1RfSU5URVJFU1RFRDoic2xhc2hfY2lyY2xlX2xlZnQiLE9GRklDSUFMX0FSVElTVF9CQURHRToiYXVkaW8iLE9GRkxJTkVfQ0xPVUQ6ImNsb3VkX29mZiIsT0ZGTElORV9ET1dOTE9BRDoiZG93bmxvYWQiLE9GRkxJTkVfRE9XTkxPQURfQ0FJUk86ImRvd25sb2FkX2NhaXJvIixPRkZMSU5FX1BBVVNFOiJwYXVzZSIsT1BFTl9JTl9ORVc6Im9wZW5fbmV3IiwKT1VUTElORV9BREpVU1Q6ImFkanVzdCIsT1VUTElORV9BUlJPV19TT0xJRF9ET1dOXzE2OiJhcnJvd19zb2xpZF9kb3duIixPVVRMSU5FX0FSUk9XX1NPTElEX1VQXzE2OiJhcnJvd19zb2xpZF91cCIsT1VUTElORV9CQUc6ImJhZyIsT1VUTElORV9DTE9DS19IQUxGX0NJUkNMRToiY2xvY2tfaGFsZl9jaXJjbGUiLE9VVExJTkVfTU9CSUxFX0RPV05MT0FEOiJtb2JpbGVfZG93bmxvYWQiLE9VVExJTkVfT1ZFUkZMT1dfSE9SSVpPTlRBTF8zMjoib3ZlcmZsb3dfaG9yaXpvbnRhbCIsT1VUTElORV9PVkVSRkxPV19WRVJUSUNBTDoib3ZlcmZsb3dfdmVydGljYWwiLE9VVExJTkVfWU9VVFVCRV9JTVBST1ZFX1RWOiJ5b3V0dWJlX2ltcHJvdmVfdHYiLFBBSUQ6ImRvbGxhcl9zaWduIixQQVVTRV9PVVRMSU5FRDoicGF1c2UiLFBBWU1FTlQ6ImNyZWRpdF9jYXJkIixQRVJTT05fUkFEQVJfRklMTEVEOiJwZXJzb25fcmFkYXIiLFBIT05FX0RPV05MT0FEOiJtb2JpbGVfZG93bmxvYWQiLFBMQVlBQkxFU19MT0dPOiJ0aWNfdGFjX3RvZSIsClBMQVlBQkxFU19MT0dPX0NBSVJPOiJ0aWNfdGFjX3RvZV9jYWlybyIsUExBWUxJU1RTOiJsaXN0X3BsYXlfYXJyb3ciLFBMQVlMSVNUU19DQUlSTzoibGlzdF9wbGF5X2Fycm93X2NhaXJvIixQTEFZTElTVF9BREQ6dFkoImxpc3RfYWRkIiksUExBWUxJU1RfQUREX0NIRUNLOnRZKCJsaXN0X2NoZWNrIiksUExBWUxJU1RfUExBWToibGlzdF9wbGF5X2Fycm93IixQTEFZX0FMTDoicGxheV9hcnJvdyIsUExBWV9DSVJDTEU6InBsYXlfYXJyb3dfY2lyY2xlIixQTEFZX09VVExJTkVEOiJwbGF5X2Fycm93X2NpcmNsZSIsUFJJVkFDWV9JTkZPOiJzaGllbGQiLFBSSVZBQ1lfUFJJVkFURToibG9jayIsUFJJVkFDWV9QVUJMSUM6ImVhcnRoIixQUklWQUNZX1VOTElTVEVEOiJsaW5rIixQUk9NT1RFOiJtZWdhcGhvbmUiLFBVUkNIQVNFUzoicHJpY2VfdGFnIixQVVJDSEFTRV9TVVBFUl9DSEFUOiJzdXBlcl9jaGF0IixQVVJDSEFTRV9TVVBFUl9TVElDS0VSOiJzdXBlcl9zdGlja2VyIixRVUVTVElPTl9BTlNXRVI6Im1lc3NhZ2VfYnViYmxlX3F1ZXN0aW9uIiwKUVVFVUVfUExBWV9MQVNUOiJsaXN0X3F1ZXVlX2xhc3QiLFFVRVVFX1BMQVlfTkVYVDoibGlzdF9wbGF5X2Fycm93IixSRU1JWF9GSUxMRUQ6InlvdXR1YmVfc2hvcnRzX3JlbWl4IixSRU1PVkU6ImJhcl9jaXJjbGUiLFJFTU9WRV9DSVJDTEU6ImJhcl9jaXJjbGUiLFJFTU9WRV9DSVJDTEVfT1VUTElORToiYmFyX2NpcmNsZSIsUkVNT1ZFX0RPTkU6ImNoZWNrX2RvdWJsZV9vZmYiLFJFTU9WRV9GUk9NX0hJU1RPUlk6ImJhcl9jaXJjbGUiLFJFTU9WRV9GUk9NX1BMQVlMSVNUOiJiYXJfY2lyY2xlIixSRU1PVkVfTU9ERVJBVE9SOiJzaGllbGRfb2ZmIixSRVBMQVk6ImFycm93X2NpcmNsZSIsUkVQTEFZXzEwOiJza2lwX2JhY2tfMTAiLFJFUE9SVF9QUk9CTEVNOiJhbGVydF90cmlhbmdsZSIsU0FEOiJmYWNlX3NhZCIsU0FWRV9QTEFZTElTVDoiYm9va21hcmsiLFNDSEVEVUxFOiJjbG9jayIsU0NIT09MOiJjcmVhdG9yX2FjYWRlbXkiLFNDUkVFTl9GVUxMU0NSRUVOOiJzY3JlZW5fZnVsbCIsClNFQVJDSF9ISVNUT1JZOiJhcnJvd190aW1lIixTRUxMOiJwcmljZV90YWciLFNFVFRJTkdTOiJnZWFyIixTRVRUSU5HU19DQUlSTzoiZ2Vhcl9jYWlybyIsU0VUVElOR1NfTElHSFQ6ImdlYXIiLFNFVFRJTkdTX01BVEVSSUFMOiJnZWFyIixTSEFSRV9BUlJPVzoic2hhcmUiLFNISUVMRF9XSVRIX0FWQVRBUjoicGVyc29uX3NoaWVsZCIsU0hPUFBJTkdfQkFHOiJiYWciLFNIT1BQSU5HX0JBR19DQUlSTzoiYmFnX2NhaXJvIixTSE9QUElOR19DQVJUOiJjYXJ0IixTSE9SVFNfQ09NTUVOVDoieW91dHViZV9zaG9ydHNfbWVzc2FnZV9idWJibGVfcmlnaHQiLFNIT1JUU19ESVNMSUtFOiJ5b3V0dWJlX3Nob3J0c190aHVtYl9kb3duIixTSE9SVFNfTElLRToieW91dHViZV9zaG9ydHNfdGh1bWJfdXAiLFNIT1JUU19TSEFSRToieW91dHViZV9zaG9ydHNfc2hhcmUiLFNIVUZGTEU6ImFycm93X3NodWZmbGUiLFNMT1dfTU9ERV9PRkY6Im1lc3NhZ2VfYnViYmxlX2xlZnQiLFNPQ0lBTDoicGVvcGxlIiwKU09SVDoibWVudV9zb3J0IixTUEFSS19MSUdIVEJVTEJfT1VUTElORToic3BhcmtfbGlnaHRidWxiIixTUEVFRF8xWDoiMXgiLFNQRUVEXzFfUE9JTlRfMlg6IjFfcG9pbnRfMngiLFNQRUVEXzFfUE9JTlRfNVg6IjFfcG9pbnRfNXgiLFNQRUVEXzFfUE9JTlRfOFg6IjFfcG9pbnRfOHgiLFNQRUVEXzJYOiIyeCIsU1BFRURfUE9JTlRfMlg6InBvaW50XzJ4IixTUEVFRF9QT0lOVF84WDoicG9pbnRfOHgiLFNQT05TT1JTSElQX1NUQVI6InN0YXJfY2lyY2xlIixTVEFGRl9QSUNLOiJzcG90bGlnaHQiLFNUQVJUX0RWUjoiYWRkIixTVEFSX0JPUkRFUjoic3RhciIsU1RBUl9DSVJDTEVfUklCQk9OX09VVExJTkU6InN0YXJfY2lyY2xlX3JpYmJvbiIsU1RJQ0tFUl9FTU9USUNPTjoiZmFjZV9oYXBweSIsU1RPUF9EVlI6InN0b3AiLFNVQlNDUklCRToieW91dHViZV9sb2dvX2ljb24iLFNVQlNDUklCRV9QTFVTOiJhZGRfY2Fpcm8iLFNVQlNDUklQVElPTl9NQU5BR0VSOiJnZWFyIixTVVBFUlZJU09SX0FDQ09VTlQ6InBlb3BsZSIsClNVUEVSX0NIQVRfRk9SX0dPT0Q6ImhhbmRzX2hlYXJ0IixTV0FQX0hPUklaOiJhcnJvd19zd2FwX2hvcml6b250YWwiLFNXSVRDSF9BQ0NPVU5UUzoicGVyc29uX2FjY291bnQiLFRBQl9BQ0NPVU5UOiJwZXJzb24iLFRBQl9BQ1RJVklUWToiYmVsbCIsVEFCX0JPT0tNQVJLOiJib29rbWFyayIsVEFCX0VYUExPUkU6ImNvbXBhc3MiLFRBQl9IT01FOiJob21lIixUQUJfSE9NRV9DQUlSTzoiaG9tZV9jYWlybyIsVEFCX0lOQk9YOiJtYWlsIixUQUJfTElLRUQ6InRodW1iX3VwIixUQUJfTVVTSUNfUFJFTUlVTToieW91dHViZV9tdXNpYyIsVEFCX1NIT1JUUzoieW91dHViZV9zaG9ydHMiLFRBQl9TSE9SVFNfQ0FJUk86InlvdXR1YmVfc2hvcnRzX2NhaXJvIixUQUJfU1VCU0NSSVBUSU9OUzoic3Vic2NyaXB0aW9ucyIsVEFCX1NVQlNDUklQVElPTlNfQ0FJUk86InN1YnNjcmlwdGlvbnNfY2Fpcm8iLFRBQl9UUkVORElORzoiZmlyZSIsVElNRVI6InN0b3B3YXRjaCIsVFJBSUxFUjoieW91dHViZV9vcmlnaW5hbHMiLApUUkVORElORzoiZmlyZSIsVFJFTkRJTkdfQ0FJUk86ImZpcmVfY2Fpcm8iLFRSRU5ESU5HX0RPV046InJhdGluZ19kb3duIixUUkVORElOR19VUDoicmF0aW5nX3VwIixUUk9QSFk6InRyb3BoeSIsVFJPUEhZX0NFTEVCUkFUSU9OUzoiZmlyZXdvcmtzIixUVU5FOiJhZGp1c3QiLFVOQkxPQ0tfVVNFUjoiYmFyX2NpcmNsZSIsVU5MSU1JVEVEOiJ5b3V0dWJlX2xvZ29faWNvbiIsVU5QTFVHR0VEX0xJVkVfR1VJREU6InJhZGFyX2xpdmUiLFVOUExVR0dFRF9TUE9SVFM6ImV5ZV9vZmYiLFVQTE9BRFM6ImxpYnJhcnkiLFVQX0FSUk9XOiJhcnJvd191cCIsVkVSVElDQUxfQUxJR05fQk9UVE9NOiJkb3dubG9hZCIsVkVSWV9IQVBQWToiZmFjZV92ZXJ5X2hhcHB5IixWRVJZX1NBRDoiZmFjZV92ZXJ5X3NhZCIsVklERU9HQU1FX0FTU0VUOiJnYW1pbmciLFZJREVPUzoicGxheV9hcnJvd19jaXJjbGUiLFZJREVPX0NBTEw6InZpZGVvX2NhbWVyYV9hZGQiLFZJREVPX0xJQlJBUllfV0hJVEU6ImxpYnJhcnkiLApWSURFT19ZT1VUVUJFOiJ5b3V0dWJlX2xvZ29faWNvbiIsVklFV19MSVNUOiJsaXN0X3ZpZXciLFZJRVdfTElTVF9DQUlSTzoibGlzdF92aWV3X2NhaXJvIixWSVNJQklMSVRZOiJleWUiLFZJU0lCSUxJVFlfT0ZGOiJleWVfb2ZmIixWT0xVTUVfTVVURToidm9sdW1lX29mZiIsVk9MVU1FX1VQOiJ2b2x1bWVfb24iLFdBTExQQVBFUjoiaW1hZ2UiLFdBUk5JTkc6ImFsZXJ0X3RyaWFuZ2xlIixXQVRDSF9ISVNUT1JZOiJhcnJvd190aW1lIixXQVRDSF9ISVNUT1JZX0NBSVJPOiJhcnJvd190aW1lX2NhaXJvIixXQVRDSF9MQVRFUjoiY2xvY2siLFdBVENIX0xBVEVSX0NBSVJPOiJjbG9ja19jYWlybyIsV0FUQ0hfUkVMQVRFRF9NSVg6InlvdXR1YmVfbWl4IixXSEFUX1RPX1dBVENIOiJob21lIixZT1VUVUJFX0NSRUFURV9SRURfTE9HTzoieW91dHViZV9jcmVhdGVfbG9nbyIsWU9VVFVCRV9NVVNJQ19NT05PQ0hST01FOiJ5b3V0dWJlX211c2ljIixZT1VUVUJFX01VU0lDX01PTk9DSFJPTUVfQ0FJUk86InlvdXR1YmVfbXVzaWNfY2Fpcm8iLApZT1VUVUJFX1NIT1JUU19GSUxMX05PX1RSSUFOR0xFX1JFRF8xNjoieW91dHViZV9zaG9ydHNfbm9fdHJpYW5nbGUiLFlPVVRVQkVfU0hPUlRTX0ZJTExfTk9fVFJJQU5HTEVfV0hJVEVfMTY6InlvdXR1YmVfc2hvcnRzX25vX3RyaWFuZ2xlIixZT1VUVUJFX1NIT1JUU19PVVRMSU5FXzI0OiJ5b3V0dWJlX3Nob3J0cyIsWVRfT1VUTElORV9NVVNJQ18yNDoibXVzaWMifTt2YXIgeHBhPXtBQ0NFU1NfVElNRToiY2xvY2siLEFDQ09VTlRfQk9YOiJwZXJzb25fc3F1YXJlIixBQ0NPVU5UX0JPWF9DQUlSTzoicGVyc29uX3NxdWFyZSIsQUNDT1VOVF9DSVJDTEU6InBlcnNvbl9jaXJjbGUiLEFDQ09VTlRfQ0lSQ0xFX0NBSVJPOiJwZXJzb25fY2lyY2xlIixBQ0NPVU5UX0xJTktFRDoiYWNjb3VudF9saW5rIixBQ0NPVU5UX1VOTElOS0VEOiJhY2NvdW50X2xpbmsiLEFERF9DSVJDTEU6ImFkZF9jaXJjbGUiLEFERF9DSVJDTEVfT1VUTElORToiYWRkX2NpcmNsZSIsQUREX0ZSSUVORDoicGVyc29uX2NoaWxkIixBRERfTU9ERVJBVE9SOiJzaGllbGRfYWRkIixBRERfVE9fTElCUkFSWToiYm9va21hcmsiLEFERF9UT19QTEFZTElTVDoiYWRkIixBRERfVE9fUVVFVUVfVEFJTDoicXVldWUiLEFERF9UT19SRU1PVEVfUVVFVUU6InBsYXlsaXN0X2F1ZGlvIixBRERfVE9fV0FUQ0hfTEFURVI6ImNsb2NrIixBRERfVklERU9fTElOSzoiZmlsbV9zdHJpcF9hZGQiLEFETUlOX1BBTkVMX1NFVFRJTkdTOiJwZXJzb25fZ2VhciIsCkFMRVJUX1dBUk5fUkVEOiJhbGVydF90cmlhbmdsZSIsQUxJR05fTEVGVDoidGV4dF9hbGlnbl9sZWZ0IixBUlJPV1NfQUxFUlQ6ImFycm93X3NwbGl0X2FsZXJ0IixBUlJPV19CQUNLOiJhcnJvd19sZWZ0IixBUlJPV19DSVJDTEU6ImFycm93X2NvdW50ZXJjbG9ja3dpc2UiLEFSUk9XX0NJUkNMRV9QTEFZOiJyZXBsYXkiLEFSUk9XX0NJUkNMRV9SSUdIVDoiYXJyb3dfY2xvY2t3aXNlIixBUlJPV19ESUFHT05BTDoiYXJyb3dfdXBfbGVmdCIsQVJST1dfRElBR09OQUxfVVBfUklHSFQ6ImFycm93X3VwX3JpZ2h0IixBUlJPV19EUk9QX0RPV046InRyaWFuZ2xlX2Rvd24iLEFSUk9XX0RST1BfVVA6InRyaWFuZ2xlX3VwIixBUlJPV19GT1JXQVJEOiJhcnJvd19yaWdodCIsQVJST1dfUEFVU0U6InBhdXNlX2hpc3RvcnkiLEFSUk9XX1VORE86InVuZG8iLEFSVElDTEU6InRleHRfcGFnZSIsQVJUSUNMRV9BTEVSVDoidGV4dF9wYWdlX2FsZXJ0IixBUlRJQ0xFX0NIRUNLOiJ0ZXh0X3BhZ2VfY2hlY2siLApBUlRJQ0xFX0NMQVJJRlk6InRleHRfcGFnZV9pbmZvIixBUlRJU1Q6InBlcnNvbl9hdWRpbyIsQVVESU9UUkFDSzoiYXVkaW8iLEFVRElPX0JBREdFOiJhdWRpb19iYWRnZSIsQVVESU9fU1VSUk9VTkQ6InN1cnJvdW5kX3NvdW5kIixBVVRPX0FXRVNPTUU6InNwYXJrbGVzIixBVkFUQVJfQU5PTllNT1VTOiJwZXJzb25fY2lyY2xlIixBVkFUQVJfTE9HR0VEX09VVDoicGVyc29uX2NpcmNsZSIsQkFDSzoiYXJyb3dfbGVmdCIsQkFSX0NIQVJUOiJjaGFydF9iYXIiLEJBUl9DSVJDTEU6Im1pbnVzX2NpcmNsZSIsQkFSX0hPUklaT05UQUw6Im1pbnVzIixCTE9DSzoiY2lyY2xlX3NsYXNoIixCTE9DS19VU0VSOiJjaXJjbGVfc2xhc2giLEJPT0tNQVJLX0JPUkRFUjoiYm9va21hcmsiLEJPWF9PUEVOX0NIRUNLOiJxdWl6IixCT1hfUEVOQ0lMOiJzcXVhcmVfcGVuY2lsIixCT1hfU1RBQ0tfMzoic3F1YXJlM19zdGFjayIsQlJFQUtJTkdfTkVXU19BTFRfMToidGV4dF9wYWdlX2FsZXJ0IiwKQlJPQURDQVNUOiJwb2RjYXN0IixCUk9BRENBU1RfQ0FJUk86InBvZGNhc3QiLEJVR19SRVBPUlQ6ImJ1ZyIsQ0FNRVJBX0FMVDoiY2FtZXJhIixDQU1QQUlHTjoibWVnYXBob25lIixDQU5DRUw6InhfY2lyY2xlIixDQVBUSU9OUzoiY2xvc2VkX2NhcHRpb25zIixDQVNUX0lDT046ImNocm9tZWNhc3QiLENBU1RfT1VUTElORToiY2hyb21lY2FzdCIsQ0hBTk5FTF9OT1RJRklDQVRJT05fUFJFRkVSRU5DRV9PRkY6ImJlbGwiLENIQU5ORUxfTk9USUZJQ0FUSU9OX1BSRUZFUkVOQ0VfT046ImJlbGxfd2F2ZXMiLENIQVQ6InRleHRfYnViYmxlIixDSEFUX0JVQkJMRToiYnViYmxlIixDSEVDS19CT1g6ImNoZWNrX3NxdWFyZSIsQ0hFQ0tfQk9YX09VVExJTkVfQkxBTks6InNxdWFyZSIsQ0hFQ0tfQ0lSQ0xFX0ZJTExFRDoiY2hlY2tfY2lyY2xlIixDSEVDS19DSVJDTEVfT1VUTElORToiY2hlY2tfY2lyY2xlIixDSEVDS19DSVJDTEVfVEhJQ0s6ImNoZWNrX2NpcmNsZSIsQ0hFQ0tfRE9VQkxFOiJjaGVja19kb25lIiwKQ0hFQ0tfRE9VQkxFX09GRjoiY2hlY2tfZG9uZV9zbGFzaCIsQ0hFVlJPTl9MRUZUOiJjaGV2cm9uX2xlZnQiLENIRVZST05fUklHSFQ6ImNoZXZyb25fcmlnaHQiLENIRVZST05fUklHSFRfQ0FJUk86ImNoZXZyb25fcmlnaHQiLENJUkNMRVNfT1ZFUkxBUDoiYWNjb3VudF9saW5rIixDTEFQUEVSQk9BUkRfQ0FJUk86ImNsYXBwZXJib2FyZCIsQ0xBUklGWToidGV4dF9wYWdlX2luZm8iLENMT0NLX0FSUk9XUzoiY2xvY2tfc3BsaXQiLENMT0NLX0FSUk9XU19BTEVSVDoiY2xvY2tfc3BsaXRfYWxlcnQiLENMT1NFRF9DQVBUSU9OOiJjbG9zZWRfY2FwdGlvbnMiLENMT1NFRF9DQVBUSU9OX1NFTEVDVEVEOiJjbG9zZWRfY2FwdGlvbnMiLENMT1NFOiJ4IixDTE9VRF9VUExPQUQ6ImNsb3VkX2Fycm93X3VwIixDT0xMQVBTRToiY2hldnJvbl91cCIsQ09MTEFQU0VfQ0FJUk86ImNoZXZyb25fdXAiLENPTExFQ1RJT046InNxdWFyZTNkX3N0YWNrIixDT0xPUl9MRU5TOiJwYWludF9wYWxldHRlIiwKQ09NTUVOVDoidGV4dF9idWJibGUiLENPTlNFTlRfU0hJRUxEOiJwZXJzb25fc2hpZWxkIixDT05URU5UX0NVVDoic2Npc3NvcnMiLENPTlRFTlRfQ1VUX0NBSVJPOiJzY2lzc29ycyIsQ09VUlNFOiJncmFkdWF0aW9uX2NhcCIsQ09VUlNFX0NBSVJPOiJncmFkdWF0aW9uX2NhcCIsQ1JFQVRJT05fTElWRToibGl2ZSIsQ1JFQVRJT05fUE9TVDoic3F1YXJlX3BlbmNpbCIsQ1JFQVRJT05fVVBMT0FEOiJ2aWRlbyIsQ1JFQVRJT05fVVBMT0FEX1JFRDoidXBsb2FkIixDUkVBVE9SX0FDQURFTVk6ImdyYWR1YXRpb25fY2FwIixDUkVBVE9SX01FVEFEQVRBX01PTkVUSVpBVElPTjoiZG9sbGFyX3NpZ25fY2lyY2xlIixDUkVBVE9SX01FVEFEQVRBX01PTkVUSVpBVElPTl9PRkY6ImRvbGxhcl9zaWduX2NpcmNsZV9zbGFzaCIsQ1JFQVRPUl9TVFVESU86InlvdXR1YmVfc3R1ZGlvIixEQVJLX1RIRU1FOiJ0aGVtZSIsREVMRVRFOiJ0cmFzaF9jYW4iLERFTEVURV9TV0VFUDoidHJhc2hfY2FuIiwKREVTS1RPUDoibGFwdG9wIixESVNMSUtFOiJ0aHVtYl9kb3duIixESVNMSUtFX1NFTEVDVEVEOiJ0aHVtYl9kb3duIixESVNNSVNTQUw6IngiLERJU01JU1NfUVVFVUU6InBsYXlsaXN0X3giLERPR0ZPT0Q6InBhd3ByaW50IixET0xMQVJfU0lHTjoiZG9sbGFyX3NpZ25fY2lyY2xlIixET0xMQVJfU0lHTl9DSVJDTEU6ImRvbGxhcl9zaWduX2NpcmNsZSIsRE9MTEFSX1NJR05fQ09OVEFJTkVSOiJkb2xsYXJfc2lnbl9yZWN0YW5nbGUiLERPV05fQVJST1c6ImFycm93X2Rvd24iLERPX05PVF9ESVNUVVJCOiJjaXJjbGVfc2xhc2giLERSQUZUOiJkb2N1bWVudCIsRFJBR19IQU5ETEU6ImVxdWFsIixFQVJUSDoiZ2xvYmUiLEVESVQ6InBlbmNpbCIsRU1PSkk6ImZhY2VfdmVyeV9oYXBweSIsRU1PSklfRkxBR1M6ImZsYWciLEVNT0pJX09CSkVDVFM6ImxpZ2h0YnVsYiIsRU1PSklfUEVPUExFOiJmYWNlX3ZlcnlfaGFwcHkiLEVNT0pJX1JFQ0VOVDoiY2xvY2siLEVNUFRZX0hFQVJUOiJoZWFydCIsCkVNUFRZX0xJS0U6InRodW1iX3VwIixFUlJPUl9CTEFDSzoiYWxlcnRfY2lyY2xlIixFUlJPUl9PVVRMSU5FOiJhbGVydF9jaXJjbGUiLEVSUk9SX1dISVRFOiJhbGVydF9jaXJjbGUiLEVYSVRfQVBQOiJhcnJvd19pbiIsRVhJVF9UT19BUFA6ImFycm93X2luIixFWFBBTkQ6ImNoZXZyb25fZG93biIsRVhQQU5EX0FMTDoiY2hldnJvbl9leHBhbmQiLEVYUEFORF9DQUlSTzoiY2hldnJvbl9kb3duIixFWFBBTkRfTEVTUzoiY2hldnJvbl91cCIsRVhQQU5EX01PUkU6ImNoZXZyb25fZG93biIsRVhQTE9SRToiY29tcGFzcyIsRVhQTE9SRV9ERVNUSU5BVElPTjoiY29tcGFzcyIsRVhURVJOQUxfTElOSzoiYXJyb3dfdXBfcmlnaHQiLEVZRV9PRkY6ImV5ZV9zbGFzaCIsRkFCX1VQTE9BRDoidXBsb2FkIixGQUNFX0hBUFBZX09VVExJTkU6ImZhY2VfaGFwcHkiLEZBQ0VfTUVIOiJmYWNlX25ldXRyYWwiLEZBQ1RfQ0hFQ0s6InRleHRfcGFnZV9jaGVjayIsRkFTSElPTl9MT0dPOiJmYXNoaW9uIiwKRkFTSElPTl9MT0dPX0NBSVJPOiJmYXNoaW9uIixGQVZPUklURToidGh1bWJfdXAiLEZFRURCQUNLOiJhbGVydF9idWJibGUiLEZFRURCQUNLX0NBSVJPOiJhbGVydF9idWJibGUiLEZJTExfQVJST1dfU09MSURfRE9XTl8xNjoiYXJyb3dfc29saWRfZG93biIsRklMTF9BUlJPV19TT0xJRF9VUF8xNjoiYXJyb3dfc29saWRfdXAiLEZJTExfRE9MTEFSX1NJR05fSEVBUlRfMTI6ImRvbGxhcl9zaWduX2hlYXJ0IixGSVJTVF9QQUdFOiJjaGV2cm9uX2xlZnRfZW5kIixGTEFHX0NBSVJPOiJmbGFnIixGTEFTSF9PRkY6ImZsYXNoX3NsYXNoIixGTEFTSF9PTjoiZmxhc2giLEZVTExfSEVBUlQ6ImhlYXJ0IixHQU1JTkdfTE9HTzoiZ2FtaW5nIixHQU1JTkdfTE9HT19DQUlSTzoiZ2FtaW5nIixHT19UT19QQUdFOiJhcnJvd19yaWdodCIsR1JJRF9BU1lNTUVUUklDQUw6ImRhc2hib2FyZCIsR1JPVVBTOiJwZXJzb24zIixIQU5EX1NXSVBFX0xFRlQ6Imdlc3R1cmVfc3dpcGVfbGVmdCIsSEFORF9TV0lQRV9SSUdIVDoiZ2VzdHVyZV9zd2lwZV9yaWdodCIsCkhBUFBZOiJmYWNlX2hhcHB5IixIRUFMVEhfQU5EX1NBRkVUWToic2hpZWxkX2hlYWx0aCIsSEVBUlRfQk9YOiJoZWFydF9jdWJlIixIRUxQOiJoZWxwX2NpcmNsZSIsSEVMUF9DQUlSTzoiaGVscF9jaXJjbGUiLEhFTFBfT1VUTElORToiaGVscF9jaXJjbGUiLEhJREU6ImNpcmNsZV9zbGFzaCIsSU5DT0dOSVRPX0NBSVJPOiJpbmNvZ25pdG8iLElORklOSVRZX0lDT046ImluZmluaXR5IixJTkZPOiJpbmZvX2NpcmNsZSIsSU5GT19PVVRMSU5FOiJpbmZvX2NpcmNsZSIsSU5TRVJUX0NIQVJUOiJjaGFydF9iYXJfc3F1YXJlIixJTlNFUlRfQ0hBUlRfT1VUTElORUQ6ImNoYXJ0X2Jhcl9zcXVhcmUiLElOU0VSVF9QSE9UTzoiaW1hZ2UiLEtFRVA6InBpbiIsS0VFUF9PRkY6InBpbl9zbGFzaCIsS0VZQk9BUkQ6ImtleWJvYXJkIixLRVlCT0FSRF9BUlJPV19ET1dOOiJjaGV2cm9uX2Rvd24iLEtFWUJPQVJEX0FSUk9XX1VQOiJjaGV2cm9uX3VwIixLSURTX0JMT0NLOiJjaXJjbGVfc2xhc2giLApMQU5HVUFHRToiZ2xvYmUiLExBU1RfUEFHRToiY2hldnJvbl9yaWdodF9lbmQiLExBVU5DSDoiYXJyb3dfdXBfcmlnaHQiLExFQVJOSU5HOiJsaWdodGJ1bGIiLExFQVJOSU5HX0NBSVJPOiJsaWdodGJ1bGIiLExJQlJBUllfQUREOiJib29rbWFyayIsTElCUkFSWV9JTUFHRToiaW1hZ2Vfc3RhY2siLExJQlJBUllfTVVTSUM6ImF1ZGlvX3NxdWFyZV9zdGFjayIsTElCUkFSWV9PVVRMSU5FOiJwbGF5X3NxdWFyZV9zdGFjayIsTElCUkFSWV9SRU1PVkU6ImJvb2ttYXJrIixMSUJSQVJZX1NBVkVEOiJjaGVja19zcXVhcmVfc3RhY2siLExJS0VTX1BMQVlMSVNUOiJ0aHVtYl91cCIsTElLRVNfUExBWUxJU1RfQ0FJUk86InRodW1iX3VwIixMSUtFOiJ0aHVtYl91cCIsTElLRV9TRUxFQ1RFRDoidGh1bWJfdXAiLExJU1RfUVVFVUU6InF1ZXVlIixMSVZFX0NBSVJPOiJsaXZlIixMSVZFX1VOTElTVEVEOiJsaW5rIixMT0NBVElPTl9PTjoibG9jYXRpb25fcGluIixMT0NBVElPTl9QSU46ImxvY2F0aW9uX3BpbiIsCkxPQ0FUSU9OX1BPSU5UOiJsb2NhdGlvbl9waW4iLExPT1A6InJlcGVhdCIsTE9PUF9BQ1RJVkU6InJlcGVhdCIsTE9PUF9PTkU6InJlcGVhdDEiLExPT1BfT05FX0FDVElWRToicmVwZWF0MSIsTUVFVDoiZ29vZ2xlX21lZXQiLE1FSDoiZmFjZV9uZXV0cmFsIixNRU1CRVJTSElQUzoibWVtYmVyc2hpcHMiLE1FTUJFUlNfT05MWV9NT0RFX09GRjoidGV4dF9idWJibGUiLE1FTlVfRklMVEVSOiJmaWx0ZXIiLE1FU1NBR0U6InRleHRfYnViYmxlIixNRVNTQUdFX0JVQkJMRV9HRUFSOiJidWJibGVfZ2VhciIsTUVTU0FHRV9CVUJCTEVfTEVGVDoidGV4dF9idWJibGUiLE1FU1NBR0VfQlVCQkxFX0xFRlRfQk9PU1Q6ImJ1YmJsZV9zcGFya2xlcyIsTUVTU0FHRV9CVUJCTEVfT1ZFUkxBUDoiYnViYmxlX3N0YWNrIixNRVNTQUdFX0JVQkJMRV9RVUVTVElPTjoiaGVscF9idWJibGUiLE1JQ1JPUEhPTkVfT046Im1pYyIsTU9ORVRJWkFUSU9OX09OOiJkb2xsYXJfc2lnbl9jaXJjbGUiLE1PTkVZX0ZJTEw6ImRvbGxhcl9zaWduX3JlY3RhbmdsZSIsCk1PTkVZX0ZJTExfSlBZOiJ5ZW5fc2lnbl9yZWN0YW5nbGUiLE1PTkVZX0hBTkQ6ImRvbGxhcl9zaWduX2NpcmNsZV9oYW5kIixNT05FWV9IRUFSVDoiZG9sbGFyX3NpZ25faGVhcnQiLE1PT05fWjoic2xlZXBfdGltZXIiLE1PUkVfSE9SSVo6Im92ZXJmbG93X2hvcml6b250YWwiLE1PUkVfVkVSVDoib3ZlcmZsb3dfdmVydGljYWwiLE1VU0lDOiJhdWRpbyIsTVVTSUNfQ0FJUk86ImF1ZGlvIixNVVNJQ19FWFBMSUNJVF9CQURHRToiZXhwbGljaXQiLE1VU0lDX05FV19SRUxFQVNFOiJhdWRpb19iYWRnZSIsTVVTSUNfTk9URV9TWU1CT0w6ImF1ZGlvIixNVVNJQ19TQ0lTU09SUzoiYXVkaW9fc2Npc3NvcnMiLE1VU0lDX1NIVUZGTEU6InNodWZmbGUiLE1ZX0NIQU5ORUw6InBlcnNvbl9jaXJjbGUiLE1ZX0xPQ0FUSU9OOiJsb2NhdGlvbl9waW4iLE1ZX1ZJREVPUzoidmlkZW8iLE1ZX1ZJREVPU19DQUlSTzoidmlkZW8iLE5FV1NfQ0FJUk86Im5ld3MiLE5FV1NfU1RPUlk6Im5ld3MiLApORVhUOiJjaGV2cm9uX3JpZ2h0IixOT1RFX0FERDoiYnViYmxlX3BlbmNpbCIsTk9USUZJQ0FUSU9OUzoiYmVsbCIsTk9USUZJQ0FUSU9OU19BQ1RJVkU6ImJlbGxfd2F2ZXMiLE5PVElGSUNBVElPTlNfQ0FJUk86ImJlbGwiLE5PVElGSUNBVElPTlNfRE9ORV9DSEVDS01BUks6ImNoZWNrIixOT1RJRklDQVRJT05TX0lOQk9YOiJiZWxsIixOT1RJRklDQVRJT05TX05PTkU6ImJlbGwiLE5PVElGSUNBVElPTlNfT0ZGOiJiZWxsX3NsYXNoIixOT1RfSU5URVJFU1RFRDoiY2lyY2xlX3NsYXNoIixPRkZJQ0lBTF9BUlRJU1RfQkFER0U6ImF1ZGlvIixPRkZMSU5FX0NMT1VEOiJjbG91ZF9zbGFzaCIsT0ZGTElORV9ET1dOTE9BRDoiZG93bmxvYWQiLE9GRkxJTkVfRE9XTkxPQURfQ0FJUk86ImRvd25sb2FkIixPRkZMSU5FX1BBVVNFOiJwYXVzZSIsT1BFTl9JTl9ORVc6ImFycm93X3VwX3JpZ2h0IixPVVRMSU5FX0FESlVTVDoiYWRqdXN0IixPVVRMSU5FX0FSUk9XX1NPTElEX0RPV046ImFycm93X3NvbGlkX2Rvd24iLApPVVRMSU5FX0FSUk9XX1NPTElEX0RPV05fMTY6ImFycm93X3NvbGlkX2Rvd24iLE9VVExJTkVfQVJST1dfU09MSURfVVA6ImFycm93X3NvbGlkX3VwIixPVVRMSU5FX0FSUk9XX1NPTElEX1VQXzE2OiJhcnJvd19zb2xpZF91cCIsT1VUTElORV9CQUc6ImJhZyIsT1VUTElORV9DTE9DS19IQUxGX0NJUkNMRToiY2xvY2tfaGFsZl9kYXNoZWQiLE9VVExJTkVfTU9CSUxFX0RPV05MT0FEOiJtb2JpbGVfYXJyb3dfZG93biIsT1VUTElORV9PVkVSRkxPV19IT1JJWk9OVEFMXzMyOiJvdmVyZmxvd19ob3Jpem9udGFsIixPVVRMSU5FX09WRVJGTE9XX1ZFUlRJQ0FMOiJvdmVyZmxvd192ZXJ0aWNhbCIsT1VUTElORV9ZT1VUVUJFX0lNUFJPVkVfVFY6InN0YXJfdHYiLE9VVExJTkVfWU9VVFVCRV9TSE9SVFNfUExVUzoic2hvcnRzX2FkZCIsUEFJRDoiZG9sbGFyX3NpZ25fY2lyY2xlIixQQVVTRV9PVVRMSU5FRDoicGF1c2UiLFBBWU1FTlQ6ImNyZWRpdF9jYXJkIixQRU9QTEU6InBlcnNvbl9jaGlsZCIsClBFT1BMRV8yOiJwZXJzb24yX3JlY3RhbmdsZSIsUEVPUExFX0FMVDoicGVyc29uMiIsUEVPUExFX0dST1VQOiJwZXJzb24zIixQRU9QTEVfTk9URToiYnViYmxlX2FzdGVyaXNrIixQRVJTT05fMjoicGVyc29uMiIsUEVSU09OX0FDQ09VTlQ6InBlcnNvbl9zcXVhcmVfc3RhY2siLFBFUlNPTl9NSU5VUzoicGVyc29uX3giLFBFUlNPTl9NVVNJQzoicGVyc29uX2F1ZGlvIixQRVJTT05fUkFEQVI6InBlcnNvbl93YXZlcyIsUEVSU09OX1JBREFSX0ZJTExFRDoicGVyc29uX3dhdmVzIixQRVJTT05fU0VUVElORzoicGVyc29uX2dlYXIiLFBIT05FTElOSzoicXJfY29kZSIsUEhPTkU6InBob25lIixQSE9ORV9ET1dOTE9BRDoibW9iaWxlX2Fycm93X2Rvd24iLFBJQ1RVUkVfSU5fUElDVFVSRToicGljdHVyZV9pbl9waWN0dXJlIixQTEFZQUJMRVNfTE9HTzoicGxheWFibGVzIixQTEFZQUJMRVNfTE9HT19DQUlSTzoicGxheWFibGVzIixQTEFZTElTVFM6InBsYXlsaXN0IixQTEFZTElTVFNfQ0FJUk86InBsYXlsaXN0IiwKUExBWUxJU1RfQUREX0NIRUNLOiJib29rbWFyayIsUExBWV9BTEw6InBsYXkiLFBMQVlfQVJST1c6InBsYXkiLFBMQVlfQVJST1dfQ0lSQ0xFOiJwbGF5X2NpcmNsZSIsUExBWV9BUlJPV19IQUxGX0NJUkNMRToicGxheV9jaXJjbGVfaGFsZl9kYXNoZWQiLFBMQVlfQVJST1dfT1VUTElORUQ6InBsYXkiLFBMQVlfQ0lSQ0xFOiJwbGF5X2NpcmNsZSIsUExBWV9PVVRMSU5FRDoicGxheV9jaXJjbGUiLFBPRENBU1RfQUREOiJwb2RjYXN0X2FkZCIsUE9EQ0FTVF9DSEVDSzoicG9kY2FzdF9jaGVjayIsUFJJVkFDWV9JTkZPOiJzaGllbGRfeCIsUFJJVkFDWV9QUklWQVRFOiJsb2NrIixQUklWQUNZX1BVQkxJQzoiZ2xvYmUiLFBSSVZBQ1lfVU5MSVNURUQ6ImxpbmsiLFBST01PVEU6Im1lZ2FwaG9uZSIsUFVSQ0hBU0VTOiJwcmljZV90YWciLFBVUkNIQVNFX1NVUEVSX0NIQVQ6InN1cGVyX2NoYXQiLFBVUkNIQVNFX1NVUEVSX1NUSUNLRVI6InN1cGVyX3N0aWNrZXIiLFFVRVNUSU9OX0FOU1dFUjoiaGVscF9idWJibGUiLApRVUVTVElPTl9DSVJDTEU6ImhlbHBfY2lyY2xlIixRVUVVRV9QTEFZX0xBU1Q6InF1ZXVlX2xhc3QiLFFVRVVFX1BMQVlfTkVYVDoicXVldWVfbmV4dCIsUVVPVEFUSU9OX01BUks6InF1b3RlIixSQURBUl9MSVZFOiJsaXZlIixSRU1PVkU6Im1pbnVzX2NpcmNsZSIsUkVNT1ZFX0NJUkNMRToibWludXNfY2lyY2xlIixSRU1PVkVfQ0lSQ0xFX09VVExJTkU6Im1pbnVzX2NpcmNsZSIsUkVNT1ZFX0ZST01fSElTVE9SWToibWludXNfY2lyY2xlIixSRU1PVkVfRlJPTV9QTEFZTElTVDoibWludXNfY2lyY2xlIixSRU1PVkVfTU9ERVJBVE9SOiJzaGllbGRfc2xhc2giLFJFUExBWToiYXJyb3dfY291bnRlcmNsb2Nrd2lzZSIsUkVQTEFZXzEwOiJza2lwMTBfYmFjayIsUkVQTEFZX0FSUk9XOiJyZXBsYXkiLFJFUE9SVF9QUk9CTEVNOiJhbGVydF90cmlhbmdsZSIsUlNTX09GRjoicnNzX3NsYXNoIixTQUQ6ImZhY2Vfc2FkIixTQVZFX1BMQVlMSVNUOiJib29rbWFyayIsU0NIRURVTEU6ImNsb2NrIiwKU0NIT09MOiJncmFkdWF0aW9uX2NhcCIsU0NSRUVOX0RFRkFVTFQ6InBsYXllcl9kZWZhdWx0IixTQ1JFRU5fRlVMTFNDUkVFTjoicGxheWVyX2Z1bGxfZW50ZXIiLFNDUkVFTl9MSUdIVDoiYW1iaWVudF9tb2RlIixTQ1JFRU5fUk9UQVRJT046InJvdGF0ZV9wb3J0cmFpdCIsU0NSRUVOX1NXSVRDSDoicGxheWVyX3N3aXRjaCIsU0NSRUVOX1RIRUFUUkU6InBsYXllcl90aGVhdGVyIixTRUFSQ0hfQ0FJUk86InNlYXJjaCIsU0VBUkNIX0hJU1RPUlk6Imhpc3RvcnkiLFNFTEw6InByaWNlX3RhZyIsU0VUVElOR1M6ImdlYXIiLFNFVFRJTkdTX0NBSVJPOiJnZWFyIixTRVRUSU5HU19MSUdIVDoiZ2VhciIsU0VUVElOR1NfTUFURVJJQUw6ImdlYXIiLFNFVFRJTkdTX1JFTU9URToicmVtb3RlX3dhdmVzIixTSEFSRToic2hhcmUiLFNIQVJFX0FSUk9XOiJzaGFyZSIsU0hBUkVfQ0FJUk86InNoYXJlIixTSElFTEQ6InNoaWVsZF94IixTSElFTERfRU1QVFk6InNoaWVsZCIsU0hJRUxEX09GRjoic2hpZWxkX3NsYXNoIiwKU0hJRUxEX1dJVEhfQVZBVEFSOiJwZXJzb25fc2hpZWxkIixTSE9QUElOR19CQUc6ImJhZyIsU0hPUFBJTkdfQkFHX0NBSVJPOiJiYWciLFNIT1BQSU5HX0NBUlQ6ImNhcnQiLFNIT1JUU19DT01NRU5UOiJ0ZXh0X2J1YmJsZSIsU0hPUlRTX0RJU0xJS0U6InRodW1iX2Rvd24iLFNIT1JUU19MSUtFOiJ0aHVtYl91cCIsU0hPUlRTX1NIQVJFOiJzaGFyZSIsU0tJUF9GT1JXQVJEXzMwOiJza2lwMzBfZm9yd2FyZCIsU0xBU0hfQ0lSQ0xFX0xFRlQ6ImNpcmNsZV9zbGFzaCIsU0xBU0hfQ0lSQ0xFX1JJR0hUOiJjaXJjbGVfc2xhc2giLFNMT1dfTU9ERToiYnViYmxlX3Nsb3ciLFNMT1dfTU9ERV9PRkY6InRleHRfYnViYmxlIixTTE9XX01PVElPTl9WSURFTzoicGxheV9jaXJjbGVfaGFsZl9kYXNoZWQiLFNPQ0lBTDoicGVyc29uX2NoaWxkIixTUEFSS0xFOiJzcGFya2xlcyIsU1BBUktfSU1BR0U6ImltYWdlX3NwYXJrIixTUEFSS19MSUdIVEJVTEJfT1VUTElORToic3BhcmtfbGlnaHRidWxiIiwKU1BBUktfUEVOQ0lMOiJwZW5jaWxfc3BhcmsiLFNQQVJLX1JBREFSOiJzcGFya193YXZlcyIsU1BBUktfVklERU86InZpZGVvX3NwYXJrIixTUEVBS0VSX0dST1VQOiJzcGVha2VyX3N0YWNrIixTUEVBS0VSX09GRjoic3BlYWtlcl9zbGFzaCIsU1BFRURfMVg6Im4xeCIsU1BFRURfMV9QT0lOVF8yWDoibjFwb2ludDJ4IixTUEVFRF8xX1BPSU5UXzVYOiJuMXBvaW50NXgiLFNQRUVEXzFfUE9JTlRfOFg6Im4xcG9pbnQ4eCIsU1BFRURfMlg6Im4yeCIsU1BPTlNPUlNISVBfU1RBUjoic3Rhcl9jaXJjbGUiLFNQT1JUUzoiYmFza2V0YmFsbCIsU1BPVExJR0hUOiJzcG90bGlnaHQiLFNUQUZGX1BJQ0s6InNwb3RsaWdodCIsU1RBUlRfRFZSOiJhZGQiLFNUQVJfQk9SREVSOiJzdGFyIixTVEFSX0NJUkNMRV9SSUJCT046Im1lbWJlcnNoaXBzX2dpZnQiLFNUQVJfSEFMRjoic3Rhcl9mdWxsX2hhbGYiLFNUQVJfU0hPT1RJTkc6Imh5cGUiLFNUSUNLRVI6InN0aWNrZXIiLFNUSUNLRVJfRU1PVElDT046ImZhY2VfaGFwcHkiLApTVE9QX0RWUjoic3RvcCIsU1VCU0NSSUJFOiJ5b3V0dWJlIixTVUJTQ1JJQkVfUExVUzoiYWRkIixTVUJTQ1JJUFRJT05fTUFOQUdFUjoiZ2VhciIsU1VQRVJTVEFSOiJzdXBlcl9zdGFyIixTVVBFUlZJU09SX0FDQ09VTlQ6InBlcnNvbl9jaGlsZCIsU1VQRVJfQ0hBVF9GT1JfR09PRDoiaGFuZHNfaGVhcnQiLFNXQVBfSE9SSVo6ImFycm93X3N3YXBfaG9yaXpvbnRhbCIsU1dJVENIX0FDQ09VTlRTOiJwZXJzb25fc3F1YXJlX3N0YWNrIixUQUJfQUNDT1VOVDoicGVyc29uIixUQUJfQUNUSVZJVFk6ImJlbGwiLFRBQl9CT09LTUFSSzoiYm9va21hcmsiLFRBQl9FWFBMT1JFOiJjb21wYXNzIixUQUJfSE9NRToiaG9tZSIsVEFCX0hPTUVfQ0FJUk86ImhvbWUiLFRBQl9JTkJPWDoibWFpbCIsVEFCX0xJS0VEOiJ0aHVtYl91cCIsVEFCX01VU0lDX1BSRU1JVU06InlvdXR1YmVfbXVzaWMiLFRBQl9TSE9SVFM6InNob3J0cyIsVEFCX1NIT1JUU19DQUlSTzoic2hvcnRzIixUQUJfU1VCU0NSSVBUSU9OUzoic3Vic2NyaXB0aW9ucyIsClRBQl9TVUJTQ1JJUFRJT05TX0NBSVJPOiJzdWJzY3JpcHRpb25zIixUQUJfVFJFTkRJTkc6InRyZW5kaW5nIixUQVJHRVQ6InRhcmdldCIsVEFSR0VUX0FERDoidGFyZ2V0X2FkZCIsVEVNUExBVEVfQUREOiJ0ZW1wbGF0ZV9hZGQiLFRFWFQ6ImZvbnQiLFRJQ0tFVF9TVEFSOiJzdGFyX3RpY2tldCIsVElNRVI6InN0b3B3YXRjaCIsVFJFTkRJTkdfQ0FJUk86InRyZW5kaW5nIixUUkVORElOR19ET1dOOiJhcnJvd190cmVuZF9kb3duIixUUkVORElOR19VUDoiYXJyb3dfdHJlbmRfdXAiLFRST1BIWV9DQUlSTzoidHJvcGh5IixUUk9QSFlfQ0VMRUJSQVRJT05TOiJmaXJld29ya3MiLFRST1BIWV9TVEFSOiJzdGFyX3Ryb3BoeSIsVFVORToiYWRqdXN0IixUVl9PRkY6InR2X3NsYXNoIixVTkJMT0NLX1VTRVI6Im1pbnVzX2NpcmNsZSIsVU5GQVZPUklURToidGh1bWJfZG93biIsVU5MSU1JVEVEOiJ5b3V0dWJlIixVTlBMVUdHRURfTElWRV9HVUlERToibGl2ZSIsVU5QTFVHR0VEX1NQT1JUUzoiZXllX3NsYXNoIiwKVVBMT0FEUzoicGxheV9zcXVhcmVfc3RhY2siLFVQX0FSUk9XOiJhcnJvd191cCIsVkVSVElDQUxfQUxJR05fQk9UVE9NOiJjaGV2cm9uX2Rvd25fZW5kIixWRVJUSUNBTF9BTElHTl9UT1A6ImNoZXZyb25fdXBfZW5kIixWRVJZX0hBUFBZOiJmYWNlX3ZlcnlfaGFwcHkiLFZFUllfU0FEOiJmYWNlX3Zlcnlfc2FkIixWSURFT1M6InBsYXlfY2lyY2xlIixWSURFT19DQUxMOiJ2aWRlb19jYW1lcmFfYWRkIixWSURFT19MSUJSQVJZX1dISVRFOiJwbGF5X3NxdWFyZV9zdGFjayIsVklERU9fUVVBTElUWV80SzoibjRrIixWSURFT19RVUFMSVRZXzhLOiJuOGsiLFZJREVPX1lPVVRVQkU6InlvdXR1YmUiLFZJRVdfTElTVF9DQUlSTzoidmlld19saXN0IixWSUVXX01PRFVMRToidmlld19jb2x1bW4zX3JvdzIiLFZJU0lCSUxJVFk6ImV5ZSIsVklTSUJJTElUWV9PRkY6ImV5ZV9zbGFzaCIsVk9MVU1FX0RPV046InZvbHVtZV9taW4iLFZPTFVNRV9NVVRFOiJ2b2x1bWVfbXV0ZSIsVk9MVU1FX09GRjoidm9sdW1lX211dGUiLApWT0xVTUVfU1RBQkxFOiJzdGFibGVfdm9sdW1lIixWT0xVTUVfVVA6InZvbHVtZV9tYXgiLFdBTExQQVBFUjoiaW1hZ2UiLFdBUk5JTkc6ImFsZXJ0X3RyaWFuZ2xlIixXQVRDSF9ISVNUT1JZOiJoaXN0b3J5IixXQVRDSF9ISVNUT1JZX0NBSVJPOiJoaXN0b3J5IixXQVRDSF9MQVRFUjoiY2xvY2siLFdBVENIX0xBVEVSX0NBSVJPOiJjbG9jayIsV0FUQ0hfUkVMQVRFRF9NSVg6Im1peCIsV0hBVF9UT19XQVRDSDoiaG9tZSIsWU9VVFVCRV9DUkVBVEVfUkVEX0xPR086InlvdXR1YmVfY3JlYXRlX2xvZ28iLFlPVVRVQkVfTElOS0VEX1RWOiJ0dl9tb2JpbGUiLFlPVVRVQkVfTVVTSUNfTU9OT0NIUk9NRToieW91dHViZV9tdXNpYyIsWU9VVFVCRV9NVVNJQ19NT05PQ0hST01FX0NBSVJPOiJ5b3V0dWJlX211c2ljIixZT1VUVUJFX1NIT1JUU19BUlJPV19ET1dOOiJhcnJvd19kb3duIixZT1VUVUJFX1NIT1JUU19BUlJPV19VUDoiYXJyb3dfdXAiLFlPVVRVQkVfU0hPUlRTX0ZJTExfTk9fVFJJQU5HTEVfUkVEXzE2OiJzaG9ydHNfZW1wdHkiLApZT1VUVUJFX1NIT1JUU19GSUxMX05PX1RSSUFOR0xFX1dISVRFXzE2OiJzaG9ydHNfZW1wdHkiLFlPVVRVQkVfU0hPUlRTX09VVExJTkVfMjQ6InNob3J0cyIsWU9VVFVCRV9TSE9SVFNfT1VUTElORV9XSVRIX1RFWFRfMjQ6InNob3J0c190ZXh0X2xvZ28iLFlUX09VVExJTkVfTVVTSUNfMjQ6ImF1ZGlvIn07dmFyIFZxYT17MTU6W1sxLDMsMjRdXSwiMV9wb2ludF8yeCI6W1sxLDEsMjRdXSwiMV9wb2ludF81eCI6W1sxLDEsMjRdXSwiMV9wb2ludF84eCI6W1sxLDEsMjRdXSwiMXgiOltbMSwxLDI0XV0sIjJfcG9pbnRfNXgiOltbMSwxLDI0XV0sIjJkIjpbWzEsMSwyNF1dLCIyeCI6W1sxLDMsMjRdXSwiM2QiOltbMSwxLDI0XV0sIjN4IjpbWzEsMywyNF1dLCI0ZCI6W1sxLDEsMjRdXSwiNGsiOltbMCwzLDI0XSxbMSwzLDI0XV0sNjA6W1sxLDMsMjRdXSwiOGsiOltbMCwyLDI0XSxbMSwyLDI0XV0sYWNjZXNzaWJpbGl0eTpbWzEsNCwyNF1dLGFjY291bnRfbGluazpbWzEsOCwyNF1dLGFjY291bnRfbGlua19lcnJvcjpbWzEsNiwyNF1dLGFjY291bnRfbGlua19zb21lOltbMCw1LDI0XV0sYWNjb3VudF9saW5rX3N1Y2Nlc3M6W1swLDUsMjRdXSxhZGQ6W1sxLDksMTZdLFsxLDksMjRdXSxhZGRfY2Fpcm86W1swLDQsMTZdLFswLDQsMjRdLFsxLDQsMjRdXSxhZGRfY2lyY2xlOltbMSw2LDI0XSwKWzEsNiwzNl1dLGFkZF9oYWxmX2NpcmNsZTpbWzEsMiwyNF1dLGFkanVzdDpbWzAsOSwyNF0sWzEsOSwxOF0sWzEsOSwyNF1dLGFpcnBsYW5lOltbMCw1LDI0XSxbMSw1LDIwXSxbMSw1LDI0XV0sYWlycGxheTpbWzEsNiwxNl0sWzEsNiwyNF1dLGFpcnBsYXlfb2ZmOltbMSwxLDI0XV0sYWxidW06W1swLDgsMjRdLFsxLDgsMjRdXSxhbGVydF9jaXJjbGU6W1swLDExLDI0XSxbMSwxMSwxNl0sWzEsMTEsMjRdXSxhbGVydF90cmlhbmdsZTpbWzAsMTAsMTJdLFswLDEwLDI0XSxbMSwxMCwyNF1dLGFsaWduX2NlbnRlcjpbWzAsNiwyNF0sWzEsNiwyNF1dLGFsaWduX2xlZnQ6W1swLDYsMjRdLFsxLDYsMjRdXSxhbGlnbl9yaWdodDpbWzAsNiwyNF0sWzEsNiwyNF1dLGFycm93X2NhcHM6W1swLDIsMjRdLFsxLDIsMjRdXSxhcnJvd19jaXJjbGU6W1sxLDYsMjRdLFsxLDYsNDhdXSxhcnJvd19jaXJjbGVfZGFzaDpbWzEsMSwyNF1dLGFycm93X2NpcmNsZV9wbGF5OltbMSwxLDI0XSxbMSwxLAozNl0sWzEsMSw0OF1dLGFycm93X2NpcmNsZV9yaWdodDpbWzAsMywyNF0sWzEsMywxMl0sWzEsMywxNl0sWzEsMywxOF0sWzEsMywyNF1dLGFycm93X2RpYWdvbmFsOltbMSw1LDI0XV0sYXJyb3dfZGlhZ29uYWxfZG93bl9yaWdodDpbWzAsMSwxMl0sWzAsMSwxNl0sWzAsMSwxOF0sWzAsMSwyNF0sWzEsMSwxMl0sWzEsMSwxNl0sWzEsMSwxOF0sWzEsMSwyNF1dLGFycm93X2RpYWdvbmFsX3VwX3JpZ2h0OltbMCwxLDEyXSxbMCwxLDE2XSxbMCwxLDE4XSxbMCwxLDI0XSxbMSwxLDEyXSxbMSwxLDE2XSxbMSwxLDE4XSxbMSwxLDI0XV0sYXJyb3dfZG93bjpbWzAsMywyNF0sWzEsMywyNF1dLGFycm93X2Rvd25fY2lyY2xlOltbMCw0LDEyXSxbMCw0LDE2XSxbMCw0LDE4XSxbMCw0LDI0XV0sYXJyb3dfZmxpcDpbWzEsMTAsMTZdLFsxLDEwLDE4XSxbMSwxMCwyNF1dLGFycm93X2ZsaXBfZG9sbGFyX3NpZ246W1sxLDIsMjRdXSxhcnJvd19pbjpbWzAsOCwyNF0sWzEsOCwyNF1dLGFycm93X2xlZnQ6W1sxLAo4LDI0LCEwXV0sYXJyb3dfbGVmdF9jYWlybzpbWzEsMiwyNCwhMF1dLGFycm93X21lcmdlOltbMSwyLDI0XV0sYXJyb3dfb3V0OltbMCwyLDI0XV0sYXJyb3dfcGF1c2U6W1sxLDEsMjRdXSxhcnJvd19yZWRvOltbMSwxLDI0XV0sYXJyb3dfcmVtaXg6W1sxLDEsMjRdXSxhcnJvd19yZXBlYXQ6W1swLDUsMjRdLFsxLDUsMjRdXSxhcnJvd19yZXBlYXRfMTpbWzAsMywyNF0sWzEsMywyNF1dLGFycm93X3JpZ2h0OltbMSwzLDI0LCEwXV0sYXJyb3dfc2h1ZmZsZTpbWzAsNSwyNF0sWzEsNSwyNF1dLGFycm93X3NraXBfZm9yd2FyZDpbWzAsMSwyNF0sWzEsMSwyNF1dLGFycm93X3NvbGlkX2Rvd246W1swLDQsMTZdLFswLDQsMjRdLFsxLDQsMTZdLFsxLDQsMjRdXSxhcnJvd19zb2xpZF91cDpbWzAsNCwxNl0sWzAsNCwyNF0sWzEsNCwxNl0sWzEsNCwyNF1dLGFycm93X3NwbGl0OltbMCwzLDI0XSxbMSwzLDI0XV0sYXJyb3dfc3dhcF9ob3Jpem9udGFsOltbMCw1LDI0XSxbMSw1LDE4XSwKWzEsNSwyNF1dLGFycm93X3RpbWU6W1swLDgsMjRdLFsxLDgsMjRdXSxhcnJvd190aW1lX2NhaXJvOltbMCwyLDI0XSxbMSwyLDI0XV0sYXJyb3dfdGltZV9mb3J3YXJkOltbMSwxLDI0XV0sYXJyb3dfdW5kbzpbWzEsMSwyNF1dLGFycm93X3VwOltbMCwzLDI0XSxbMSwzLDI0XV0sYXJyb3dfdXBfY2lyY2xlOltbMCw0LDEyXSxbMCw0LDE2XSxbMCw0LDE4XSxbMCw0LDI0XV0sYXJyb3dzX2FsZXJ0OltbMSwxLDI0XV0sYXJ0aWNsZTpbWzEsMiwyNF1dLGFydGljbGVfYWxlcnQ6W1sxLDIsMjRdXSxhcnRpY2xlX2NoZWNrOltbMSwyLDI0XV0sYXJ0aWNsZV9jbGFyaWZ5OltbMSwyLDI0XV0sYXVkaW86W1swLDE0LDEyXSxbMCwxNCwxNl0sWzAsMTQsMThdLFswLDE0LDI0XSxbMSwxNCwxOF0sWzEsMTQsMjRdXSxhdWRpb19iYWRnZTpbWzAsMywxMl0sWzAsMywxNl0sWzAsMywyNF1dLGF1ZGlvX2NhaXJvOltbMCwyLDI0XSxbMSwyLDI0XV0sYXVkaW9fb2ZmOltbMSwyLDI0XV0sYXVkaW9fc3Vycm91bmQ6W1swLAoxLDI0XSxbMSwxLDI0XV0sYmFja2dyb3VuZDpbWzEsMSwyNF1dLGJhY2tzcGFjZTpbWzAsNSwyNF0sWzEsNSwyNF1dLGJhZzpbWzAsNywxMl0sWzAsNywxOF0sWzAsNywyNF0sWzEsNywxOF0sWzEsNywyNF1dLGJhZ19ib29rbWFyazpbWzEsMiwyNF1dLGJhZ19jYWlybzpbWzAsMiwyNF0sWzEsMiwyNF1dLGJhcl9jaXJjbGU6W1sxLDQsMjRdXSxiYXJfZ3JhcGg6W1swLDIsMjRdLFsxLDIsMjRdXSxiYXJfZ3JhcGhfYm94X3ZlcnRpY2FsOltbMCw2LDI0XSxbMSw2LDI0XV0sYmFyX2hvcml6b250YWw6W1sxLDIsMTZdLFsxLDIsMjRdXSxiYXJzXzI6W1sxLDksMTZdLFsxLDksMjRdXSxiYXJzXzM6W1swLDIsMjRdLFsxLDIsMjRdXSxiZWFrZXI6W1sxLDIsMjRdXSxiZWxsOltbMCwxMSwyNF0sWzEsMTEsMjRdXSxiZWxsX2NhaXJvOltbMCwzLDI0XSxbMSwzLDI0XV0sYmVsbF9vZmY6W1sxLDUsMjRdXSxiZWxsX29mZl9jYWlybzpbWzEsMiwyNF1dLGJlbGxfb246W1swLDcsMjRdXSxiZWxsX29uX2NhaXJvOltbMCwKMiwyNF1dLGJsdXI6W1sxLDIsMjRdXSxib29rOltbMSwzLDI0XV0sYm9va21hcms6W1swLDEwLDI0XSxbMSwxMCwyNF1dLGJvb2ttYXJrX2NhaXJvOltbMCwyLDI0XSxbMSwyLDI0XV0sYm94XzNkOltbMCwxLDI0XSxbMSwxLDI0XV0sYm94X2JhcjpbWzAsMywyNF1dLGJveF9jaGVjazpbWzAsNiwxOF0sWzAsNiwyNF0sWzAsNiwzNl0sWzEsNiwyNF1dLGJveF9jaGV2cm9uX3JpZ2h0OltbMSwzLDI0XV0sYm94X2Rhc2hlZF90cmlhbmdsZTpbWzEsMywyNF1dLGJveF9lbXB0eTpbWzEsNSwyNF1dLGJveF9vcGVuX2NoZWNrOltbMCw0LDI0XSxbMSw0LDE2XSxbMSw0LDI0XV0sYm94X3BlbmNpbDpbWzEsMywxNl0sWzEsMywyNF1dLGJveF9wbGFjZWhvbGRlcl9sZWZ0OltbMSwxLDI0XV0sYm94X3NlYXJjaDpbWzEsMSwyNF1dLGJveF9zdGFja18zOltbMCwxLDI0XSxbMSwxLDI0XV0sYm94ZXNfMjpbWzEsMywyNF1dLGJyaWVmY2FzZTpbWzEsMiwyNF1dLGJyaWVmY2FzZV9zbGFzaDpbWzAsCjMsMjRdXSxicmlnaHRuZXNzOltbMCwzLDI0XSxbMSwzLDI0XV0sYnJvYWRjYXN0OltbMCwzLDI0XSxbMSwzLDEyXSxbMSwzLDE2XSxbMSwzLDE4XSxbMSwzLDI0XSxbMSwzLDQ4XV0sYnVnOltbMCw0LDI0XSxbMSw0LDI0XV0sYnVzaW5lc3M6W1sxLDQsMjRdXSxjYWJsZTpbWzEsMiwyNF1dLGNhbGN1bGF0b3I6W1swLDMsMjRdLFsxLDMsMjRdXSxjYWxlbmRhcjpbWzAsNCwyNF0sWzEsNCwyNF1dLGNhbWVyYTpbWzAsMTAsMjRdLFsxLDEwLDI0XV0sY2FtZXJhX2F1ZGlvOltbMSw1LDI0XV0sY2FtZXJhX2VmZmVjdHM6W1sxLDQsMjRdXSxjYW1lcmFfZmxpcDpbWzEsNCwyNF1dLGNhbWVyYV9oYXNodGFnOltbMSw1LDI0XV0sY2FtZXJhX3N3aXRjaDpbWzAsMywyNF0sWzEsMywyNF1dLGNhcmQ6W1swLDMsMTJdLFswLDMsMTZdLFswLDMsMjRdXSxjYXJ0OltbMCw0LDI0XSxbMSw0LDI0XV0sY2FydF9zcGFyazpbWzEsMSwyNF1dLGNhdDpbWzAsMywyNF0sWzEsMywyNF1dLGNlbGVicmF0aW9uOltbMSwKMiwyNF1dLGNoZWNrOltbMCwxMywxMl0sWzAsMTMsMTZdLFswLDEzLDI0XSxbMSwxMywxNl0sWzEsMTMsMjRdXSxjaGVja19jaXJjbGU6W1swLDEwLDE4XSxbMCwxMCwyNF0sWzEsMTAsMjRdXSxjaGVja19kb3VibGU6W1sxLDEsMjRdXSxjaGVja19kb3VibGVfb2ZmOltbMSwxLDI0XV0sY2hldnJvbl9jb2xsYXBzZTpbWzEsMywyNF1dLGNoZXZyb25fZG93bjpbWzEsOSwxOF0sWzEsOSwyNF1dLGNoZXZyb25fZG93bl9jYWlybzpbWzEsMiwyNF1dLGNoZXZyb25fZG93bl9jaXJjbGU6W1swLDMsMjRdXSxjaGV2cm9uX2V4cGFuZDpbWzEsNSwyNF1dLGNoZXZyb25fZmlyc3Q6W1sxLDEsMjRdXSxjaGV2cm9uX2xhc3Q6W1sxLDEsMjRdXSxjaGV2cm9uX2xlZnQ6W1sxLDksMTYsITBdLFsxLDksMTgsITBdLFsxLDksMjQsITBdXSxjaGV2cm9uX2xlZnRfY2lyY2xlOltbMCwzLDI0XV0sY2hldnJvbl9sZWZ0X2lvczpbWzEsMywyNF1dLGNoZXZyb25fbGVmdF9pb3NfY2Fpcm86W1sxLDIsMjRdXSwKY2hldnJvbl9yaWdodDpbWzAsNywxNiwhMF0sWzAsNywxOCwhMF0sWzAsNywyNCwhMF0sWzEsNywxNiwhMF0sWzEsNywxOCwhMF0sWzEsNywyNCwhMF1dLGNoZXZyb25fcmlnaHRfY2Fpcm86W1sxLDIsMjRdXSxjaGV2cm9uX3JpZ2h0X2NpcmNsZTpbWzAsMywyNF1dLGNoZXZyb25fcmlnaHRfaW9zOltbMSwxLDI0XV0sY2hldnJvbl91cDpbWzEsOSwxNl0sWzEsOSwxOF0sWzEsOSwyNF1dLGNoZXZyb25fdXBfY2Fpcm86W1sxLDIsMjRdXSxjaGV2cm9uX3VwX2NpcmNsZTpbWzAsMywyNF1dLGNocm9tZWNhc3Q6W1swLDExLDI0XSxbMSwxMSwyNF1dLGNocm9tZWNhc3RfYW5pbWF0ZV9mcmFtZV8xOltbMSw1LDI0XV0sY2hyb21lY2FzdF9hbmltYXRlX2ZyYW1lXzI6W1sxLDUsMjRdXSxjaHJvbWVjYXN0X2FuaW1hdGVfZnJhbWVfMzpbWzEsNSwyNF1dLGNocm9tZWNhc3RfY2Fpcm86W1swLDIsMjRdLFsxLDIsMjRdXSxjaHJvbWVjYXN0X21vYmlsZTpbWzEsNCwyNF0sWzEsNCwzNl1dLGNocm9tZWNhc3Rfd2F2ZWZvcm06W1sxLAoyLDI0XV0sY2lyY2xlOltbMCw5LDI0XSxbMSw5LDI0XV0sY2lyY2xlX2Z1bGw6W1swLDMsMjRdXSxjaXJjbGVfaGFsZl9mdWxsOltbMSwxLDI0XV0sY2lyY2xlc182OltbMCwxLDI0XV0sY2lyY2xlc19vdmVybGFwOltbMCwxLDI0XSxbMSwxLDI0XV0sY2lyY2xlc19vdmVybGFwX2NoZWNrOltbMCwxLDE2XSxbMCwxLDI0XV0sY2xhcHBlcmJvYXJkOltbMCwzLDI0XSxbMSwzLDI0XV0sY2xhcHBlcmJvYXJkX2NhaXJvOltbMCwyLDI0XSxbMSwyLDI0XV0sY2xvY2s6W1swLDEwLDI0XSxbMSwxMCwxNl0sWzEsMTAsMjRdXSxjbG9ja19hcnJvd3M6W1sxLDEsMjRdXSxjbG9ja19hcnJvd3NfYWxlcnQ6W1sxLDEsMjRdXSxjbG9ja19jYWlybzpbWzAsMiwyNF0sWzEsMiwyNF1dLGNsb2NrX2hhbGZfY2lyY2xlOltbMCwxLDI0XSxbMSwxLDI0XV0sY2xvc2VkX2NhcHRpb246W1swLDExLDI0XSxbMSwxMSwyNF1dLGNsb3VkOltbMSwyLDI0XV0sY2xvdWRfYXJyb3dfZG93bjpbWzEsMywyNF1dLGNsb3VkX2Fycm93X3VwOltbMCwKNiwyNF0sWzEsNiwyNF1dLGNsb3VkX2NoZWNrOltbMCwzLDI0XSxbMSwzLDI0XV0sY2xvdWRfZWxsaXBzaXM6W1swLDMsMjRdLFsxLDMsMjRdXSxjbG91ZF9vZmY6W1sxLDIsMjRdXSxjb2RlOltbMSwyLDI0XV0sY29tcGFzczpbWzAsOSwyNF0sWzEsOSwyNF1dLGNvbXBhc3NfY2Fpcm86W1swLDEsMjRdLFsxLDEsMjRdXSxjb250cm9sbGVyOltbMCwyLDI0XSxbMSwyLDI0XV0sY29weTpbWzEsMywyNF1dLGNvcHlyaWdodDpbWzAsNCwyNF0sWzEsNCwyNF1dLGNyZWF0b3JfYWNhZGVteTpbWzAsMywxMl0sWzAsMywxNl0sWzAsMywyNF0sWzEsMywyNF1dLGNyZWF0b3JfYWNhZGVteV9jYWlybzpbWzAsMiwyNF0sWzEsMiwyNF1dLGNyZWRpdF9jYXJkOltbMSw0LDI0XV0sY3JvcDpbWzEsNCwxNl0sWzEsNCwyNF1dLGNyb3Bfcm90YXRlOltbMSwyLDI0XV0sY3Jvd246W1swLDUsMTZdLFswLDUsMjRdLFsxLDUsMTJdLFsxLDUsMTZdLFsxLDUsMjRdXSxjdWJlX3NwYXJrOltbMSwxLDI0XV0sCmN1cnZlX3M6W1swLDEsMjRdXSxkYXNoYm9hcmRfcGx1czpbWzEsMSwxNl0sWzEsMSwxOF0sWzEsMSwyMF0sWzEsMSwyNF1dLGRpZV8zOltbMCw1LDI0XSxbMSw1LDI0XV0sZGlyZWN0aW9uczpbWzEsMywyNF1dLGRvZ2Zvb2Q6W1sxLDEsMjRdXSxkb2xsYXJfc2lnbjpbWzAsNywyNF0sWzEsNywyNF1dLGRvbGxhcl9zaWduX2NpcmNsZTpbWzAsMTIsMTZdLFswLDEyLDI0XSxbMSwxMiwxNl0sWzEsMTIsMjRdXSxkb2xsYXJfc2lnbl9jaXJjbGVfcGF1c2U6W1sxLDIsMjRdXSxkb2xsYXJfc2lnbl9jaXJjbGVfcGx1czpbWzEsMSwyNF1dLGRvbGxhcl9zaWduX2NvbnRhaW5lcjpbWzEsNywyNF1dLGRvbGxhcl9zaWduX2hlYXJ0OltbMCwyNCwxMl0sWzAsMjQsMjRdLFsxLDI0LDE2XSxbMSwyNCwyNF1dLGRvbGxhcl9zaWduX29mZjpbWzEsMywyNF1dLGRvdDpbWzAsMiwxMl0sWzAsMiwyNF1dLGRvd25sb2FkOltbMCwxMSwyNF0sWzEsMTEsMTZdLFsxLDExLDI0XV0sZG93bmxvYWRfY2Fpcm86W1swLAoyLDI0XSxbMSwyLDI0XV0sZG93bmxvYWRlZDpbWzAsOCwyNF1dLGRvd25sb2FkaW5nOltbMSw1LDI0XV0sZG93bmxvYWRpbmdfMDpbWzEsNSwyNF1dLGRvd25sb2FkaW5nXzE6W1sxLDYsMjRdXSxkb3dubG9hZGluZ18yOltbMSw2LDI0XV0sZG93bmxvYWRpbmdfMzpbWzEsNiwyNF1dLGRvd25sb2FkaW5nXzQ6W1sxLDYsMjRdXSxkb3dubG9hZGluZ181OltbMSw3LDI0XV0sZG93bmxvYWRpbmdfNjpbWzEsNiwyNF1dLGRyaXZlX2FkZDpbWzEsMiwyNF1dLGVhcnRoOltbMCwxMiwyNF0sWzEsMTIsMTZdLFsxLDEyLDE4XSxbMSwxMiwyNF1dLGV4cGxpY2l0OltbMCw3LDE4XSxbMCw3LDI0XSxbMSw3LDI0XV0sZXllOltbMCw2LDI0XSxbMSw2LDI0XV0sZXllX29mZjpbWzEsNCwyNF1dLGV5ZWRyb3BwZXI6W1sxLDIsMjRdXSxmYWNlX2FkZDpbWzEsMSwyNF1dLGZhY2VfYXJyb3dzX2RpYWdvbmFsOltbMSwxLDI0XV0sZmFjZV9oYXBweTpbWzAsMTIsMjRdLFswLDEyLDM2XSxbMSwxMiwyNF0sClsxLDEyLDM2XV0sZmFjZV9pbWFnZTpbWzEsMiwyNF1dLGZhY2VfbWVoOltbMCwxMCwyNF0sWzAsMTAsMzZdLFsxLDEwLDI0XSxbMSwxMCwzNl1dLGZhY2VfbWVoXzI6W1swLDYsMjRdLFswLDYsMzZdLFsxLDYsMjRdLFsxLDYsMzZdXSxmYWNlX3BhaW50YnJ1c2g6W1sxLDIsMjRdXSxmYWNlX3NhZDpbWzAsMTIsMjRdLFswLDEyLDM2XSxbMSwxMiwyNF0sWzEsMTIsMzZdXSxmYWNlX3VuaGFwcHk6W1swLDEwLDI0XSxbMCwxMCwzNl0sWzEsMTAsMjRdLFsxLDEwLDM2XV0sZmFjZV91cHNldDpbWzAsMTAsMjRdLFswLDEwLDM2XSxbMSwxMCwyNF0sWzEsMTAsMzZdXSxmYWNlX3ZlcnlfaGFwcHk6W1swLDEyLDI0XSxbMCwxMiwzNl0sWzEsMTIsMjRdLFsxLDEyLDM2XV0sZmFjZV92ZXJ5X3NhZDpbWzAsMTAsMjRdLFswLDEwLDM2XSxbMSwxMCwyNF0sWzEsMTAsMzZdXSxmYXNoaW9uOltbMCw0LDI0XSxbMSw0LDI0XV0sZmFzaGlvbl9jYWlybzpbWzAsMiwyNF0sWzEsMiwyNF1dLGZhc3RfYmFjazpbWzAsCjMsMjRdLFsxLDMsMjRdXSxmYXN0X2ZvcndhcmQ6W1swLDUsMjRdXSxmaWxtX3N0cmlwOltbMCw3LDI0XSxbMSw3LDI0XV0sZmlsbV9zdHJpcF9hZGQ6W1sxLDIsMjRdXSxmaWx0ZXJfZmFjZTpbWzAsNSwyNF0sWzEsNSwyNF1dLGZpbHRlcl9waG90bzpbWzAsOCwyNF0sWzEsOCwyNF1dLGZpcmU6W1swLDEwLDEyXSxbMCwxMCwyNF0sWzEsMTAsMTZdLFsxLDEwLDI0XV0sZmlyZV9jYWlybzpbWzAsMiwyNF0sWzEsMiwyNF1dLGZpcmV3b3JrczpbWzEsMywyNF1dLGZsYWc6W1swLDEwLDI0XSxbMSwxMCwyNF1dLGZsYWdfY2Fpcm86W1swLDIsMjRdLFsxLDIsMjRdXSxmbGFzaF9hdXRvOltbMCwzLDI0XSxbMSwzLDI0XV0sZmxhc2hfY2lyY2xlOltbMCw1LDE4XSxbMCw1LDI0XSxbMSw1LDI0XV0sZmxhc2hfb2ZmOltbMCw1LDI0XSxbMSw1LDI0XV0sZmxhc2hfb246W1swLDUsMjRdLFsxLDUsMjRdXSxmbGlwX2hvcml6b250YWw6W1sxLDQsMjRdXSxmbGlwX2hvcml6b250YWxfZGFzaDpbWzEsCjEsMjRdXSxmbGlwX3ZlcnRpY2FsX2Rhc2g6W1sxLDEsMjRdXSxmb2xkZXI6W1swLDQsMTZdLFswLDQsMjRdLFsxLDQsMjRdXSxmb250X3NxdWFyZV9zcGFyazpbWzEsMSwxNl0sWzEsMSwyNF1dLGZvb3RiYWxsOltbMCw0LDI0XSxbMSw0LDI0XV0sZ2FtaW5nOltbMCwzLDI0XSxbMSwzLDI0XV0sZ2FtaW5nX2NhaXJvOltbMCwyLDI0XSxbMSwyLDI0XV0sZ2VhcjpbWzAsMTAsMjRdLFsxLDEwLDI0XV0sZ2Vhcl9jYWlybzpbWzAsMywyNF0sWzEsMywyNF1dLGdob3N0OltbMCw1LDI0XSxbMSw1LDI0XV0sZ2lmOltbMSwzLDI0XV0sZ2lmdDpbWzAsMywyNF0sWzEsMywyNF1dLGdsb2JlOltbMCw0LDI0XSxbMCw0LDM2XSxbMSw0LDI0XSxbMSw0LDM2XV0sZ2xvYmVfaW1hZ2U6W1swLDMsMjRdLFswLDMsMzZdLFsxLDMsMjRdLFsxLDMsMzZdXSxnbG93OltbMSwyLDI0XV0sZ29vZ2xlX2xlbnM6W1sxLDQsMjRdXSxncmVhdGVyX3RoYW5fMjA6W1sxLDIsMjRdXSxncmlkXzJ4MjpbWzEsMSwyNF1dLApncmlkXzNfYnlfMzpbWzAsMSwyNF0sWzEsMSwyNF1dLGdyaWRfYXN5bW1ldHJpY2FsOltbMCwxLDI0XSxbMSwxLDI0XV0saGFuZDpbWzEsMiwyNF1dLGhhbmRfbG9uZ19wcmVzczpbWzAsMywyNF0sWzEsMywyNF1dLGhhbmRfcGluY2hfaW46W1sxLDIsMjRdXSxoYW5kX3N3aXBlX2xlZnQ6W1sxLDEsMjRdXSxoYW5kX3N3aXBlX3JpZ2h0OltbMSwyLDI0XV0saGFuZF90YXA6W1swLDIsMjRdLFsxLDIsMjRdXSxoYW5kX3dhdmU6W1sxLDIsMjRdXSxoYW5kc19oZWFydDpbWzAsMywyNF0sWzEsMywyNF1dLGhhc2h0YWc6W1sxLDIsMTZdLFsxLDIsMThdLFsxLDIsMjBdLFsxLDIsMjRdXSxoZDpbWzAsOCwyNF0sWzEsOCwyNF1dLGhlYWRzZXQ6W1swLDgsMjRdLFsxLDgsMjRdXSxoZWFydDpbWzAsMTksMTNdLFswLDE5LDI0XSxbMSwxOSwxNl0sWzEsMTksMjRdXSxoZWFydF9ib3g6W1sxLDEsMjRdXSxoZWFydF9jaXJjbGU6W1sxLDIsMTZdLFsxLDIsMThdLFsxLDIsMjBdLFsxLDIsMjRdXSwKaGVhcnRfb2ZmOltbMSwyLDI0XV0saGllcmFyY2h5OltbMCw0LDI0XSxbMSw0LDI0XV0saGlnaGxpZ2h0czpbWzEsMiwyNF1dLGhvbWU6W1swLDEwLDI0XSxbMSwxMCwyNF1dLGhvbWVfY2Fpcm86W1swLDIsMjRdLFsxLDIsMjRdXSxob3VyZ2xhc3M6W1sxLDMsMTZdLFsxLDMsMjRdXSxpbWFnZTpbWzAsOCwyNF0sWzEsOCwyNF1dLGltYWdlX2FkZDpbWzEsNCwyNF1dLGltYWdlX3dhbGxwYXBlcjpbWzEsMSwyNF1dLGluY29nbml0bzpbWzAsOSwyNF0sWzEsOSwyNF1dLGluY29nbml0b19jYWlybzpbWzAsMiwyNF0sWzEsMiwyNF1dLGluZmluaXRlOltbMCwyLDI0XV0saW5maW5pdHk6W1sxLDIsMjRdXSxpbmZvX2NpcmNsZTpbWzEsMTEsMTZdLFsxLDExLDE4XSxbMSwxMSwyMF0sWzEsMTEsMjRdXSxpbmZvX2NpcmNsZV9zcGFyazpbWzEsMiwyNF1dLGpvdXJuZXk6W1sxLDIsMjRdXSxrZXk6W1sxLDUsMjRdXSxrZXlib2FyZDpbWzAsNCwyNF0sWzEsNCwyNF1dLGxhYmVsOltbMCw0LDI0XSwKWzEsNCwyNF1dLGxhcHRvcDpbWzEsMywyNF1dLGxhcHRvcF9tb2JpbGU6W1swLDQsMjRdLFsxLDQsMjRdXSxsYXllcnM6W1swLDEsMjRdLFsxLDEsMjRdXSxsZWFmOltbMSwyLDI0XV0sbGVuczpbWzEsMSwyNF1dLGxlc3NfdGhhbl80OltbMSwyLDI0XV0sbGlicmFyeTpbWzAsNywyNF0sWzEsNywyNF1dLGxpYnJhcnlfYWRkOltbMSw3LDE2XSxbMSw3LDI0XV0sbGlicmFyeV9pbWFnZTpbWzEsMSwyNF1dLGxpYnJhcnlfbXVzaWM6W1swLDMsMjRdLFsxLDMsMjRdXSxsaWJyYXJ5X3NhdmVkOltbMCw3LDI0XV0sbGlnaHRidWxiOltbMCw0LDEyXSxbMCw0LDI0XSxbMSw0LDI0XV0sbGlnaHRidWxiX2NhaXJvOltbMCwyLDI0XSxbMSwyLDI0XV0sbGlnaHRidWxiX3NwYXJrOltbMSwyLDI0XV0sbGluazpbWzEsOCwxOF0sWzEsOCwyNF1dLGxpbmtfb2ZmOltbMSwxLDI0XV0sbGlzdF9hZGQ6W1sxLDUsMjRdXSxsaXN0X2NoZWNrOltbMCwyLDI0XV0sbGlzdF9tdXNpYzpbWzEsMywyNF1dLGxpc3RfcGVuY2lsOltbMSwKNSwyNF1dLGxpc3RfcGxheV9hcnJvdzpbWzAsOCwyNF0sWzEsOCwxMl0sWzEsOCwyNF1dLGxpc3RfcGxheV9hcnJvd19jYWlybzpbWzAsMiwyNF0sWzEsMiwyNF1dLGxpc3RfcXVldWU6W1sxLDEsMjRdXSxsaXN0X3F1ZXVlX2xhc3Q6W1swLDMsMjRdLFsxLDMsMjRdXSxsaXN0X3F1ZXVlX25leHQ6W1sxLDEsMjRdXSxsaXN0X3JlbW92ZTpbWzEsMSwyNF1dLGxpc3RfdmlldzpbWzEsMiwyNF1dLGxpc3Rfdmlld19jYWlybzpbWzEsMiwyNF1dLGxpdmVfbW9iaWxlX2xhbmRzY2FwZV9vcmllbnRhdGlvbjpbWzEsMSwyNF1dLGxpdmVfcGhvdG86W1sxLDIsMjRdXSxsaXZlX3dhdmVzOltbMSwyLDE4XSxbMSwyLDI0XV0sbG9jYXRpb25fcG9pbnQ6W1swLDYsMTJdLFswLDYsMjRdLFsxLDYsMjRdXSxsb2NhdGlvbl9wb2ludF9vZmY6W1sxLDEsMjRdXSxsb2NrOltbMCwxMywxMl0sWzAsMTMsMjRdLFsxLDEzLDEyXSxbMSwxMywxNl0sWzEsMTMsMThdLFsxLDEzLDI0XV0sbG9ja19vcGVuOltbMSwKNCwyNF1dLG1hZ2ljX3dhbmQ6W1swLDMsMjRdLFsxLDMsMjRdXSxtYWlsOltbMCw5LDI0XSxbMSw5LDI0XV0sbWFwOltbMSwzLDI0XV0sbWF0aF9hZGQ6W1swLDMsMjRdXSxtYXRoX2FuZDpbWzAsMywyNF1dLG1hdGhfZGl2aWRlOltbMCwzLDI0XV0sbWF0aF9lcXVhbHM6W1swLDMsMjRdXSxtYXRoX2VxdWFsc19zbGFzaDpbWzEsMywyNF1dLG1hdGhfZ3JlYXRlcl90aGFuOltbMCwzLDI0XV0sbWF0aF9ncmVhdGVyX3RoYW5fb3JfZXF1YWw6W1sxLDEsMjRdXSxtYXRoX2xlc3NfdGhhbjpbWzAsMywyNF1dLG1hdGhfbGVzc190aGFuX29yX2VxdWFsOltbMSw0LDI0XV0sbWF0aF9tdWx0aXBseTpbWzAsMywyNF1dLG1hdGhfb3I6W1swLDMsMjRdXSxtYXRoX3BlcmNlbnQ6W1swLDMsMjRdXSxtYXRoX3N1YnRyYWN0OltbMCwzLDI0XV0sbWF4aW1pemVfY2Fpcm86W1sxLDEsMjRdXSxtZWRhbDpbWzEsMiwyNF1dLG1lZGFsX3N0YXI6W1sxLDIsMjRdXSxtZWV0OltbMSwxLDI0XV0sbWVnYXBob25lOltbMCwKNSwyNF0sWzEsNSwyNF1dLG1lbWJlcnNoaXBzOltbMCw5LDEyXSxbMCw5LDE2XSxbMCw5LDE4XSxbMCw5LDI0XSxbMSw5LDI0XV0sbWVudGlvbjpbWzEsNSwxNl0sWzEsNSwyNF1dLG1lbnVfZmlsdGVyOltbMCwxLDI0XSxbMSwxLDI0XV0sbWVudV9zb3J0OltbMSw0LDI0XV0sbWVzc2FnZV9idWJibGVfYWxlcnQ6W1swLDYsMjRdLFsxLDYsMjRdXSxtZXNzYWdlX2J1YmJsZV9hbGVydF9jYWlybzpbWzEsMiwyNF1dLG1lc3NhZ2VfYnViYmxlX2VtcHR5OltbMSwxLDI0XV0sbWVzc2FnZV9idWJibGVfZ2VhcjpbWzEsMSwyNF1dLG1lc3NhZ2VfYnViYmxlX2xlZnQ6W1swLDEsMjRdLFsxLDEsMjRdXSxtZXNzYWdlX2J1YmJsZV9sZWZ0X2Jvb3N0OltbMSwxLDI0XV0sbWVzc2FnZV9idWJibGVfbGVmdF9vZmY6W1sxLDEsMTZdLFsxLDEsMjRdXSxtZXNzYWdlX2J1YmJsZV9vdmVybGFwOltbMCw4LDI0XSxbMSw4LDI0XV0sbWVzc2FnZV9idWJibGVfcXVlc3Rpb246W1swLDIsMTZdLFswLDIsCjI0XSxbMSwyLDE2XSxbMSwyLDI0XV0sbWVzc2FnZV9idWJibGVfcmlnaHQ6W1swLDE0LDI0XSxbMCwxNCwzMl0sWzEsMTQsMTZdLFsxLDE0LDI0XV0sbWVzc2FnZV9idWJibGVfcmlnaHRfY2FwdGlvbjpbWzEsMSwyNF1dLG1pYzpbWzAsMTQsMjRdLFsxLDE0LDI0XV0sbWljX29mZjpbWzEsMiwyNF1dLG1pbmlwbGF5ZXJfZXhpdDpbWzEsMSwyNF1dLG1vYmlsZTpbWzAsNCwyNF0sWzEsNCwyNF1dLG1vYmlsZV9jaGVjazpbWzEsMiwyNF1dLG1vYmlsZV9kb3dubG9hZDpbWzEsMywyNF1dLG1vYmlsZV9sYW5kc2NhcGU6W1sxLDMsMjRdXSxtb2JpbGVfc2NyZWVuX2hvcml6b250YWw6W1sxLDEsMjRdXSxtb2JpbGVfc2NyZWVuX3ZlcnRpY2FsOltbMSwxLDI0XV0sbW9uZXlfaGFuZDpbWzEsMiwyNF1dLG1vbml0b3JfZGlzcGxheTpbWzAsNCwxNl0sWzAsNCwyNF0sWzEsNCwxNl0sWzEsNCwyNF1dLG1vbml0b3JfZGlzcGxheV9vZmY6W1sxLDEsMjRdXSxtb29uX3o6W1swLDEsMjRdLFsxLAoxLDI0XV0sbW90aW9uOltbMSwyLDI0XV0sbW92ZTpbWzEsNCwyNF1dLG11c2ljOltbMCw2LDI0XSxbMSw2LDE2XSxbMSw2LDE4XSxbMSw2LDI0XV0sbXVzaWNfb2ZmOltbMSwzLDI0XV0sbXVzaWNfc2Npc3NvcnM6W1sxLDMsMjRdXSxtdXNpY19zaGFwZTpbWzEsMywyNF1dLG11c2ljX3ZpZGVvOltbMSw0LDI0XV0sbXVzaWNfdmlkZW9fb2ZmOltbMSwxLDI0XV0sbXlfdmlkZW9zOltbMSw2LDI0XV0sbXlfdmlkZW9zX2NhaXJvOltbMSwyLDI0XV0sbmV3czpbWzAsMywyNF0sWzEsMywxMl0sWzEsMywyNF1dLG5ld3NfY2Fpcm86W1swLDIsMjRdLFsxLDIsMjRdXSxub2RlX2xlZnQ6W1sxLDIsMjRdXSxub2RlX3JpZ2h0OltbMSwyLDI0XV0sbm90ZTpbWzAsMSwxNl0sWzAsMSwyNF0sWzEsMSwxNl0sWzEsMSwyNF1dLG5vdGVfYWRkOltbMSwxLDE2XSxbMSwxLDI0XV0sbm90ZV9zcGFyazpbWzAsMiwxNl0sWzAsMiwyNF0sWzEsMiwxNl0sWzEsMiwyNF1dLG9kb21ldGVyOltbMCw0LDI0XSwKWzEsNCwyNF1dLG9wZW5fbmV3OltbMCw3LDI0XSxbMSw3LDEyXSxbMSw3LDI0XV0sb3ZlcmZsb3dfaG9yaXpvbnRhbDpbWzEsNiwyNF0sWzEsNiwzMl1dLG92ZXJmbG93X3ZlcnRpY2FsOltbMSwxMywyNF1dLG92ZXJmbG93X3ZlcnRpY2FsX2NhaXJvOltbMSwxLDI0XV0scGFpbnRfYnVja2V0OltbMSwzLDI0XV0scGFsZXR0ZTpbWzEsMSwyNF1dLHBhbmVsczpbWzAsMiwyNF0sWzEsMiwyNF1dLHBhcGVyX2Nvcm5lcl9mb2xkZWQ6W1swLDIsMjRdLFsxLDIsMjRdXSxwYXBlcl9vcGVuX2luX25ldzpbWzAsMSwyNF0sWzEsMSwyNF1dLHBhdXNlOltbMCw5LDI0XV0scGF1c2VfY2lyY2xlOltbMCwyLDEyXSxbMCwyLDE2XSxbMCwyLDI0XV0scGRmOltbMSwyLDI0XV0scGVuY2lsOltbMSwxMCwxNl0sWzEsMTAsMThdLFsxLDEwLDI0XV0scGVvcGxlOltbMCw2LDEyXSxbMCw2LDI0XSxbMSw2LDI0XV0scGVvcGxlXzI6W1swLDEsMjRdLFsxLDEsMjRdXSxwZW9wbGVfZ3JvdXA6W1swLDQsMjRdLApbMSw0LDE2XSxbMSw0LDI0XV0scGVvcGxlX25vdGU6W1swLDEsMThdLFswLDEsMjRdLFsxLDEsMjRdXSxwZXJzb246W1swLDcsMTJdLFswLDcsMTNdLFswLDcsMTZdLFswLDcsMjRdLFswLDcsNDhdLFsxLDcsMTNdLFsxLDcsMTZdLFsxLDcsMjRdXSxwZXJzb25fMjpbWzEsMSwyNF1dLHBlcnNvbl9hY2NvdW50OltbMSw2LDI0XV0scGVyc29uX2FjY291bnRfY2Fpcm86W1sxLDEsMjRdXSxwZXJzb25fYWRkOltbMSw3LDI0XV0scGVyc29uX2JveDpbWzEsNSwyNF1dLHBlcnNvbl9jaXJjbGU6W1swLDEwLDI0XSxbMSwxMCwyNF1dLHBlcnNvbl9jaXJjbGVfY2Fpcm86W1swLDIsMjRdLFsxLDIsMjRdXSxwZXJzb25fY2lyY2xlX3NsYXNoOltbMSwyLDI0XV0scGVyc29uX21pbnVzOltbMCwxLDI0XSxbMSwxLDI0XV0scGVyc29uX211c2ljOltbMCw0LDI0XSxbMSw0LDI0XV0scGVyc29uX3JhZGFyOltbMCw3LDEyXSxbMCw3LDI0XSxbMSw3LDE2XSxbMSw3LDE4XSxbMSw3LDI0XV0scGVyc29uX3NldHRpbmc6W1sxLAo2LDI0XV0scGVyc29uX3NoaWVsZDpbWzEsOCwyNF1dLHBlcnNvbl9zcXVhcmVfc3Bhcms6W1swLDEsMjRdLFsxLDEsMjRdXSxwZXJzb25fd2F2ZWZvcm06W1sxLDIsMjRdXSxwaG9uZTpbWzAsMywyNF0sWzEsMywyNF1dLHBpY3R1cmVfaW5fcGljdHVyZTpbWzAsMiwyNF0sWzEsMiwyNF1dLHBpY3R1cmVfaW5fcGljdHVyZV9jb21iaW5lOltbMSwxLDI0XV0scGluOltbMCw3LDEyXSxbMCw3LDI0XSxbMSw3LDE2XSxbMSw3LDI0XV0scGluX29mZjpbWzEsMSwyNF1dLHBsYXlfYXJyb3c6W1swLDcsMjRdLFsxLDcsMjRdXSxwbGF5X2Fycm93X2NpcmNsZTpbWzAsMiwyNF0sWzEsMiwyNF1dLHBsYXlfYXJyb3dfZGlzYWJsZWQ6W1swLDEsMTJdLFswLDEsMjRdXSxwbGF5X2Fycm93X2hhbGZfY2lyY2xlOltbMCw1LDI0XSxbMSw1LDI0XV0scG9kY2FzdDpbWzAsNiwyNF0sWzEsNiwxMl0sWzEsNiwxNl0sWzEsNiwxOF0sWzEsNiwyNF1dLHBvZGNhc3RfYWRkOltbMCwyLDI0XSxbMSwyLDI0XV0sCnBvZGNhc3RfY2Fpcm86W1swLDIsMjRdLFsxLDIsMjRdXSxwb2RjYXN0X2NoZWNrOltbMCwyLDI0XV0scG9pbnRfMng6W1sxLDEsMjRdXSxwb2ludF8zeDpbWzEsMywyNF1dLHBvaW50XzV4OltbMSwzLDI0XV0scG9pbnRfOHg6W1sxLDEsMjRdXSxwb2xsOltbMSwxMCwxNl0sWzEsMTAsMjRdLFsxLDEwLDQwXV0scG91bmQ6W1sxLDMsMjRdXSxwcmVzZW50YXRpb246W1sxLDMsMjRdXSxwcmVzZW50YXRpb25fcmVtb3ZlOltbMSwxLDI0XV0scHJpY2VfdGFnOltbMCw4LDEyXSxbMCw4LDI0XSxbMSw4LDI0XV0scHJpY2VfdGFnX2hlYXJ0OltbMSwyLDI0XV0scXJfY29kZTpbWzEsMywyNF1dLHF1ZXN0aW9uX2NpcmNsZTpbWzEsNSwyNF1dLHF1ZXN0aW9uX2NpcmNsZV9jYWlybzpbWzEsMiwyNF1dLHF1ZXN0aW9uX2hlYWQ6W1sxLDIsMjRdXSxxdW90YXRpb25fbWFyazpbWzAsMSwyNF0sWzEsMSwyNF1dLHF1b3RhdGlvbl9tYXJrX29mZjpbWzEsMSwyNF1dLHJhZGFyX2xpdmU6W1swLDcsMjRdLApbMSw3LDEyXSxbMSw3LDE2XSxbMSw3LDI0XV0scmFkYXJfbGl2ZV9jYWlybzpbWzAsMiwyNF0sWzEsMiwyNF1dLHJhdGluZ19kb3duOltbMSwxLDI0XV0scmF0aW5nX3VwOltbMSw3LDEyXSxbMSw3LDE2XSxbMSw3LDI0XV0scmVjb3JkOltbMCwyLDI0XV0scmVtaXg6W1sxLDIsMTZdLFsxLDIsMjRdXSxyZXBsYXlfYXJyb3c6W1sxLDEsMjRdXSxyb3RhdGVfOTA6W1sxLDEsMjRdXSxyb3RhdGVfOTBfY2xvY2t3aXNlOltbMSwyLDI0XV0scnNzOltbMSwyLDE2XSxbMSwyLDI0XV0scnNzX29mZjpbWzEsMSwxNl0sWzEsMSwyNF1dLHJ1Ynk6W1sxLDIsMTJdLFsxLDIsMTZdLFsxLDIsMThdLFsxLDIsMjRdXSxzYW1wbGVzOltbMCwyLDI0XSxbMSwyLDI0XV0sc2F0dXJhdGlvbjpbWzEsMiwyNF1dLHNjYWxlOltbMSw0LDI0XV0sc2Npc3NvcnM6W1swLDgsMTJdLFswLDgsMjRdLFsxLDgsMjRdXSxzY2lzc29yc19jYWlybzpbWzAsMiwyNF0sWzEsMiwyNF1dLHNjaXNzb3JzX2N1dDpbWzEsNCwKMTZdLFsxLDQsMThdLFsxLDQsMjRdXSxzY3JlZW5fZGVmYXVsdDpbWzAsMSwyNF0sWzAsMSw0OF0sWzEsMSwyNF0sWzEsMSw0OF1dLHNjcmVlbl9mdWxsOltbMSw3LDI0XV0sc2NyZWVuX2Z1bGxfY2Fpcm86W1sxLDEsMjRdXSxzY3JlZW5fZnVsbF9leGl0OltbMSw2LDI0XV0sc2NyZWVuX2Z1bGxfZXhpdF9jYWlybzpbWzEsMSwyNF1dLHNjcmVlbl9mdWxsc2NyZWVuOltbMCwxLDI0XSxbMCwxLDQ4XSxbMSwxLDI0XSxbMSwxLDQ4XV0sc2NyZWVuX2xpZ2h0OltbMSwxLDI0XV0sc2NyZWVuX21pbmlfcGxheWVyOltbMCwxLDI0XSxbMCwxLDQ4XSxbMSwxLDI0XSxbMSwxLDQ4XV0sc2NyZWVuX211bHRpX3ZpZXc6W1swLDMsMjRdLFsxLDMsMjRdXSxzY3JlZW5fcm90YXRpb246W1sxLDIsMThdLFsxLDIsMjRdXSxzY3JlZW5fc3dpdGNoOltbMCwxLDI0XSxbMSwxLDI0XV0sc2NyZWVuX3RoZWF0cmU6W1swLDEsMjRdLFswLDEsNDhdLFsxLDEsMjRdLFsxLDEsNDhdXSxzY3JlZW5fdmVydGljYWw6W1sxLAoxLDI0XV0sc2NyZWVuX3g6W1sxLDIsMjRdXSxzZDpbWzAsMywyNF0sWzEsMywyNF1dLHNlYXJjaDpbWzAsMTUsMjRdLFsxLDE1LDI0XV0sc2VhcmNoX2NhaXJvOltbMSwyLDI0XV0sc2VhcmNoX3N1cGVyc2NyaXB0OltbMSwxLDI0XV0sc2VuZDpbWzAsNywxOCwhMF0sWzAsNywyNCwhMF0sWzEsNywxOCwhMF0sWzEsNywyNCwhMF1dLHNldHRpbmdzX3JlbW90ZTpbWzEsMSwyNF1dLHNoYWRvd19oYXJkOltbMCwzLDI0XV0sc2hhZG93X3NvZnQ6W1swLDMsMjRdXSxzaGFwZXM6W1swLDMsMjRdLFsxLDMsMjRdXSxzaGFyZTpbWzAsMTIsMjQsITBdLFswLDEyLDMyLCEwXSxbMSwxMiwxNiwhMF0sWzEsMTIsMjQsITBdXSxzaGFyZV9jYWlybzpbWzEsMiwyNF1dLHNoYXJlX2lvczpbWzEsMiwyNF1dLHNoYXJlX2xpbms6W1swLDEsMjRdLFsxLDEsMjRdXSxzaGllbGQ6W1sxLDYsMjRdXSxzaGllbGRfYWRkOltbMSwyLDI0XV0sc2hpZWxkX2NoZWNrOltbMSwxLDI0XV0sc2hpZWxkX2VtcHR5OltbMCwKMSwxNl0sWzAsMSwxOF0sWzAsMSwyNF0sWzEsMSwxNl0sWzEsMSwxOF0sWzEsMSwyNF1dLHNoaWVsZF9vZmY6W1sxLDEsMjRdXSxzaGllbGRfb3ZlcmZsb3c6W1sxLDIsMjRdXSxzaGllbGRfcGx1czpbWzEsMSwyNF1dLHNoaWVsZF9zZWFyY2g6W1sxLDIsMjRdXSxzaG9ydHNfbGF5b3V0X2JvdHRvbTpbWzEsMSwyNF1dLHNob3J0c19sYXlvdXRfY2VudGVyZWRfc3F1YXJlOltbMSwxLDI0XV0sc2hvcnRzX2xheW91dF9mb3JlZ3JvdW5kOltbMSwxLDI0XV0sc2hvcnRzX2xheW91dF9sYW5kc2NhcGVfYm90dG9tOltbMSwxLDI0XV0sc2hvcnRzX2xheW91dF9sYW5kc2NhcGVfdG9wOltbMSwxLDI0XV0sc2hvcnRzX2xheW91dF9sZWZ0OltbMSwxLDI0XV0sc2hvcnRzX2xheW91dF9waXA6W1sxLDEsMjRdXSxzaG9ydHNfbGF5b3V0X3JpZ2h0OltbMSwxLDI0XV0sc2hvcnRzX2xheW91dF9zaW5nbGU6W1sxLDEsMjRdXSxzaG9ydHNfbGF5b3V0X3RvcDpbWzEsMSwyNF1dLHNraXBfYmFja18xMDpbWzAsCjEsMjRdXSxza2lwX2JhY2tfMTU6W1swLDEsMjRdXSxza2lwX2JhY2tfMjA6W1swLDEsMjRdXSxza2lwX2JhY2tfMzA6W1swLDEsMjRdXSxza2lwX2JhY2tfNTpbWzAsMSwyNF1dLHNraXBfYmFja182MDpbWzAsMSwyNF1dLHNraXBfZG93bjpbWzAsNiwyNF1dLHNraXBfZm9yd2FyZF8xMDpbWzAsMSwyNF1dLHNraXBfZm9yd2FyZF8xNTpbWzAsMSwyNF1dLHNraXBfZm9yd2FyZF8yMDpbWzAsMSwyNF1dLHNraXBfZm9yd2FyZF8zMDpbWzAsMSwyNF1dLHNraXBfZm9yd2FyZF81OltbMCwxLDI0XV0sc2tpcF9mb3J3YXJkXzYwOltbMCwxLDI0XV0sc2tpcF9uZXh0OltbMCw3LDI0XV0sc2tpcF9wcmV2aW91czpbWzAsNiwyNF1dLHNraXBfdXA6W1swLDYsMjRdXSxzbGFzaF9jaXJjbGVfbGVmdDpbWzEsNywyNF1dLHNsYXNoX2NpcmNsZV9yaWdodDpbWzEsMiwyNF1dLHNvY2Nlcl9iYWxsOltbMSwzLDI0XV0sc29jY2VyX2NhcmQ6W1swLDIsMTJdLFswLDIsMTZdLFswLDIsMjRdXSxzcGFjZWJhcjpbWzEsCjIsMjRdXSxzcGFyazpbWzAsMTEsMTJdLFswLDExLDE2XSxbMCwxMSwyNF0sWzEsMTEsMjRdXSxzcGFya19jaGF0OltbMSwxLDE2XSxbMSwxLDI0XV0sc3BhcmtfaW1hZ2U6W1sxLDIsMjRdXSxzcGFya19saWdodGJ1bGI6W1swLDMsMjRdLFsxLDMsMjRdXSxzcGFya19tZXNzYWdlX2J1YmJsZTpbWzEsNCwxNl0sWzEsNCwyNF1dLHNwYXJrX21lc3NhZ2VfYnViYmxlX2xlZnQ6W1sxLDEsMjRdXSxzcGFya19tdXNpYzpbWzEsMiwyNF1dLHNwYXJrX3BlbmNpbDpbWzEsMiwyNF1dLHNwYXJrX3JhZGFyOltbMCwxLDEyXSxbMCwxLDE2XSxbMCwxLDI0XSxbMSwxLDEyXSxbMSwxLDE2XSxbMSwxLDI0XV0sc3BhcmtfdGV4dDpbWzEsMSwyNF1dLHNwYXJrX3ZpZGVvOltbMSwyLDI0XV0sc3BhcmtsZTpbWzAsNCwyNF0sWzEsNCwyNF1dLHNwZWFrZXI6W1sxLDIsMjRdXSxzcGVha2VyX2dyb3VwOltbMSwxLDI0XV0sc3BlYWtlcl9ncm91cF9vZmY6W1sxLDEsMjRdXSxzcGVha2VyX2hlYWRzZXQ6W1sxLAoyLDI0XV0sc3BlYWtlcl9vZmY6W1sxLDEsMjRdXSxzcGxpdDpbWzEsNCwyNF1dLHNwb3J0czpbWzAsMSwyNF1dLHNwb3RsaWdodDpbWzAsMywyNF0sWzEsMywyNF1dLHN0YXI6W1swLDYsMTJdLFswLDYsMTZdLFswLDYsMjRdLFsxLDYsMTJdLFsxLDYsMTZdLFsxLDYsMjRdXSxzdGFyX2NpcmNsZTpbWzAsNiwxMl0sWzAsNiwxNl0sWzAsNiwxOF0sWzAsNiwyNF1dLHN0YXJfY2lyY2xlX3JpYmJvbjpbWzAsMSwxNl0sWzAsMSwyMF0sWzAsMSwyNF0sWzAsMSwzNl0sWzEsMSwxNl0sWzEsMSwyMF0sWzEsMSwyNF0sWzEsMSwzNl1dLHN0YXJfaGFsZjpbWzAsMywxMl0sWzAsMywxNl0sWzAsMywyNF1dLHN0YXJfc2hvb3Rpbmc6W1swLDMsMjRdLFsxLDMsMjRdXSxzdGF0aXN0aWNzX2dyYXBoOltbMSwyLDI0XV0sc3RpY2tlcjpbWzEsMywyNF1dLHN0b3A6W1swLDYsMjRdLFswLDYsMzZdXSxzdG9wd2F0Y2g6W1swLDUsMTZdLFswLDUsMjRdLFsxLDUsMTZdLFsxLDUsMjRdXSxzdG9wd2F0Y2hfMTA6W1swLAoxLDI0XV0sc3RvcHdhdGNoXzM6W1swLDEsMjRdXSxzdWJzY3JpcHRpb25zOltbMCwxMiwyNF0sWzEsMTIsMThdLFsxLDEyLDI0XV0sc3Vic2NyaXB0aW9uc19jYWlybzpbWzAsMiwyNF0sWzEsMiwyNF1dLHN1YnRpdGxlczpbWzAsNSwxMl0sWzAsNSwyNF0sWzEsNSwyNF1dLHN1cGVyX2NoYXQ6W1sxLDgsMThdLFsxLDgsMjRdXSxzdXBlcl9zdGlja2VyOltbMCw4LDE2XSxbMCw4LDI0XSxbMSw4LDE2XSxbMSw4LDI0XV0sc3VwZXJfc3RvcmU6W1sxLDMsMjRdXSxzdXBlcnN0YXI6W1sxLDEsMjRdXSx0YWJsZXQ6W1sxLDEsMjRdXSx0YXJnZXQ6W1swLDIsMjRdLFsxLDIsMTZdLFsxLDIsMjRdXSx0YXJnZXRfYWRkOltbMCwyLDI0XSxbMSwyLDE2XSxbMSwyLDI0XV0sdGVtcGxhdGVfYWRkOltbMSwzLDE2XSxbMSwzLDI0XV0sdGVtcGxhdGVfcGxheTpbWzAsMywyNF0sWzEsMywyNF1dLHRleHQ6W1swLDksMjRdLFsxLDksMTZdLFsxLDksMThdLFsxLDksMjRdXSx0ZXh0X2JlbGxfY2Fpcm86W1sxLAoxLDEyXSxbMSwxLDE2XSxbMSwxLDE4XSxbMSwxLDI0XV0sdGV4dF9ib2xkOltbMSwxLDI0XV0sdGV4dF9ib3g6W1sxLDUsMjRdXSx0ZXh0X2l0YWxpYzpbWzEsMSwyNF1dLHRleHRfb3V0bGluZTpbWzEsMiwyNF1dLHRleHRfcHJlc2V0OltbMSwxLDI0XV0sdGV4dF9zZXJpZjpbWzEsMSwyNF1dLHRleHRfc2hhZG93OltbMSwyLDI0XV0sdGV4dF9zdHJpa2V0aHJvdWdoOltbMSwxLDI0XV0sdGV4dF91bmRlcmxpbmU6W1sxLDEsMjRdXSx0aGVtZV9zd2l0Y2g6W1swLDEsMjRdLFsxLDEsMjRdXSx0aGVybW9tZXRlcjpbWzEsMiwyNF1dLHRodW1iX2Rvd246W1swLDI1LDE2XSxbMCwyNSwyNF0sWzAsMjUsMzZdLFsxLDI1LDE2XSxbMSwyNSwyNF0sWzEsMjUsMzZdXSx0aHVtYl91cDpbWzAsMjQsMTZdLFswLDI0LDI0XSxbMCwyNCwzNl0sWzEsMjQsMTZdLFsxLDI0LDI0XSxbMSwyNCwzNl1dLHRodW1iX3VwX2NhaXJvOltbMCwyLDI0XSxbMSwyLDI0XV0sdGh1bWJfdXBfZG93bjpbWzAsNCwKMjRdLFsxLDQsMjRdXSx0aWNfdGFjX3RvZTpbWzAsNCwxMl0sWzAsNCwyNF0sWzEsNCwxNl0sWzEsNCwyNF1dLHRpY190YWNfdG9lX2NhaXJvOltbMCwyLDI0XSxbMSwyLDI0XV0sdGlja2V0X3N0YXI6W1sxLDEsMjRdXSx0aWx0OltbMSw0LDI0XV0sdGltZV9zdGFtcF9wbHVzOltbMSwxLDI0XV0sdGltZWxpbmU6W1sxLDMsMjRdXSx0b29sYm94OltbMSw0LDI0XV0sdHJhbnNjcmlwdDpbWzEsMiwxNl0sWzEsMiwyNF1dLHRyYW5zY3JpcHRfc2VhcmNoOltbMSwxLDE2XSxbMSwxLDI0XV0sdHJhbnNpdGlvbjpbWzAsNSwyNF0sWzEsNSwyNF1dLHRyYW5zbGF0ZTpbWzEsNCwxNl0sWzEsNCwyNF1dLHRyYXNoX2NhbjpbWzEsMTAsMTZdLFsxLDEwLDE4XSxbMSwxMCwyNF1dLHRyaWFuZ2xlX2Rvd246W1sxLDgsMjRdXSx0cmlhbmdsZV90aHJlZV9sZWZ0OltbMCwxLDI0XV0sdHJpYW5nbGVfdGhyZWVfcmlnaHQ6W1swLDEsMjRdXSx0cm9waHk6W1swLDMsMjRdLFsxLDMsMjRdXSx0cm9waHlfY2Fpcm86W1swLAoyLDI0XSxbMSwyLDI0XV0sdHJvcGh5X3N0YXI6W1sxLDEsMjRdXSx0cnVjazpbWzAsNSwyNF0sWzEsNSwyNF1dLHR2OltbMCw4LDEyXSxbMCw4LDE2XSxbMCw4LDI0XSxbMSw4LDE2XSxbMSw4LDI0XV0sdHZfYXJyb3dfbGVmdDpbWzEsMiwyNF1dLHR2X2NpcmNsZTpbWzAsMywyNF0sWzEsMywyNF1dLHR2X2RvbGxhcl9zaWduOltbMCwxLDI0XSxbMSwxLDI0XV0sdHZfb2ZmOltbMSwyLDI0XV0sdHZfcXVldWU6W1sxLDQsMjRdXSx0dl9xdWV1ZV9jaGV2cm9uOltbMSwyLDI0XV0sdXBsb2FkOltbMSw1LDI0XV0sdXBsb2FkaW5nOltbMSwxLDI0XV0sdmFyaWFibGU6W1sxLDQsMjRdXSx2ZXJpZmllZF9jaXJjbGU6W1sxLDQsMjRdXSx2aWRlb19jYW1lcmE6W1swLDksMjRdLFsxLDksMjRdXSx2aWRlb19jYW1lcmFfYWRkOltbMSwyLDI0XV0sdmlkZW9fY2FtZXJhX29mZjpbWzEsMSwyNF1dLHZpZGVvX2xpbms6W1sxLDUsMTZdLFsxLDUsMjRdXSx2aWRlb19yZXZlcnNlOltbMSwxLDI0XV0sCnZpZGVvX3NwYXJrOltbMSwyLDI0XV0sdmlkZW9fc3RpdGNoOltbMSwyLDI0XV0sdmlkZW9fd2F2ZWZvcm06W1sxLDEsMjRdXSx2b2x1bWVfZG93bjpbWzAsMiwyNF0sWzEsMiwyNF1dLHZvbHVtZV9mYWRlOltbMSwyLDI0XV0sdm9sdW1lX29mZjpbWzAsNCwyNF0sWzEsNCwyNF1dLHZvbHVtZV9vbjpbWzAsMywyNF0sWzEsMywyNF1dLHZvbHVtZV9zdGFibGU6W1swLDEsMjRdLFsxLDEsMjRdXSx2cjpbWzAsNywyNF0sWzEsNywyNF1dLHdhdmVmb3JtOltbMSwzLDI0XV0sd2F2ZWZvcm1fbXVzaWM6W1swLDIsMThdLFswLDIsMjRdLFswLDIsNDhdXSx3YXZlZm9ybV9zcGFyazpbWzEsMiwyNF1dLHdyZW5jaDpbWzAsMywyNF0sWzEsMywyNF1dLHg6W1sxLDExLDE4XSxbMSwxMSwyNF1dLHhfY2Fpcm86W1sxLDEsMjRdXSx4X2NpcmNsZTpbWzAsOSwyNF0sWzEsOSwyNF1dLHhfbWFyazpbWzEsNCwyMF0sWzEsNCwyNF1dLHhfb2N0YWdvbjpbWzEsMywyNF1dLHllbl9zaWduX2NvbnRhaW5lcjpbWzAsCjIsMjRdLFsxLDIsMjRdXSx5b3V0dWJlX2ltcHJvdmVfdHY6W1sxLDEsMjRdXSx5b3V0dWJlX2tpZHM6W1swLDUsMjRdLFsxLDUsMjRdXSx5b3V0dWJlX2xhYnM6W1swLDEsMjRdXSx5b3V0dWJlX2xpbmtlZF90djpbWzEsNCwyNF1dLHlvdXR1YmVfbG9nb19pY29uOltbMCw2LDI0XSxbMSw2LDI0XV0seW91dHViZV9taXg6W1sxLDUsMTJdLFsxLDUsMTZdLFsxLDUsMjRdXSx5b3V0dWJlX211c2ljOltbMCw3LDI0XSxbMSw3LDI0XV0seW91dHViZV9tdXNpY19jYWlybzpbWzEsMiwyNF1dLHlvdXR1YmVfb3JpZ2luYWxzOltbMCw2LDI0XSxbMSw2LDI0XV0seW91dHViZV9zaG9ydHM6W1swLDExLDEyXSxbMCwxMSwyMF0sWzAsMTEsMjRdLFsxLDExLDIwXSxbMSwxMSwyNF1dLHlvdXR1YmVfc2hvcnRzX2Fycm93X2Rvd246W1sxLDEsMjRdXSx5b3V0dWJlX3Nob3J0c19hcnJvd19sZWZ0OltbMSwyLDI0XV0seW91dHViZV9zaG9ydHNfYXJyb3dfdXA6W1sxLDEsMjRdXSx5b3V0dWJlX3Nob3J0c19jYWlybzpbWzAsCjIsMjRdLFsxLDIsMjRdXSx5b3V0dWJlX3Nob3J0c19jYW1lcmE6W1sxLDMsMjRdXSx5b3V0dWJlX3Nob3J0c19jaGV2cm9uX2xlZnRfaW9zOltbMSwyLDI0XV0seW91dHViZV9zaG9ydHNfZ3JlZW5fc2NyZWVuOltbMCwxLDI0XSxbMSwxLDI0XV0seW91dHViZV9zaG9ydHNfaGVhcnQ6W1swLDIsMjRdLFswLDIsMzJdXSx5b3V0dWJlX3Nob3J0c19tZXNzYWdlX2J1YmJsZV9yaWdodDpbWzAsMiwyNF0sWzAsMiwzMl1dLHlvdXR1YmVfc2hvcnRzX25vX3RyaWFuZ2xlOltbMCw0LDE2XSxbMCw0LDI0XSxbMCw0LDMyXSxbMSw0LDE2XSxbMSw0LDI0XSxbMSw0LDMyXV0seW91dHViZV9zaG9ydHNfb3ZlcmZsb3dfdmVydGljYWw6W1sxLDIsMjRdXSx5b3V0dWJlX3Nob3J0c19wbHVzOltbMSw1LDE2XSxbMSw1LDI0XV0seW91dHViZV9zaG9ydHNfcmVtaXg6W1swLDIsMjRdLFswLDIsMzJdXSx5b3V0dWJlX3Nob3J0c19zZWFyY2g6W1sxLDMsMjRdXSx5b3V0dWJlX3Nob3J0c19zaGFyZTpbWzAsCjIsMjRdLFswLDIsMzJdXSx5b3V0dWJlX3Nob3J0c19zdGlja2VyOltbMSwxLDE4XSxbMSwxLDI0XV0seW91dHViZV9zaG9ydHNfdGh1bWJfZG93bjpbWzAsMiwyNF0sWzAsMiwzMl1dLHlvdXR1YmVfc2hvcnRzX3RodW1iX3VwOltbMCwyLDI0XSxbMCwyLDMyXV0seW91dHViZV9zaG9ydHNfd2F2ZWZvcm06W1sxLDIsMThdLFsxLDIsMjRdXSx5b3V0dWJlX3N0dWRpbzpbWzAsOCwyNF0sWzEsOCwyNF1dLHlvdXR1YmVfdHY6W1swLDgsMjRdLFsxLDgsMjRdXSx6b29tX2F1dG86W1swLDIsMjRdLFsxLDIsMjRdXX07dmFyIFdxYT17YWNjZXNzaWJpbGl0eTpbWzAsNCwyNF0sWzEsNCwyNF1dLGFjY291bnRfbGluazpbWzAsOCwyNF0sWzEsOCwyNF1dLGFjY291bnRfbGlua19lcnJvcjpbWzEsNiwyNF1dLGFkZDpbWzEsOSwxOF0sWzEsOSwyNF1dLGFkZF9jaXJjbGU6W1swLDYsMThdLFswLDYsMjRdLFsxLDYsMjRdLFsxLDYsMzZdXSxhZGRfc3F1YXJlX3N0YWNrOltbMSwxLDI0XV0sYWRkX3R2OltbMSwxLDI0XV0sYWRkX3R2X2NoZXZyb25fcmlnaHQ6W1sxLDEsMjRdXSxhZGp1c3Q6W1swLDksMjRdLFsxLDksMjRdXSxhaXJwbGFuZTpbWzAsNSwyNF0sWzAsNSw0OF0sWzEsNSwyNF1dLGFpcnBsYXk6W1sxLDYsMjRdXSxhaXJwbGF5X3NsYXNoOltbMSwxLDI0XV0sYWxidW06W1swLDgsMjRdLFsxLDgsMThdLFsxLDgsMjRdLFsxLDgsNDhdXSxhbGVydF9idWJibGU6W1sxLDIsMThdLFsxLDIsMjRdXSxhbGVydF9jaXJjbGU6W1swLDExLDI0XSxbMSwxMSwxMl0sWzEsMTEsMjRdLFsxLDExLDQ4XV0sYWxlcnRfb2N0YWdvbjpbWzAsCjIsMjRdLFsxLDIsMjRdXSxhbGVydF90cmlhbmdsZTpbWzAsMTAsMTJdLFswLDEwLDI0XSxbMCwxMCw0OF0sWzEsMTAsMjRdXSxhbWJpZW50X21vZGU6W1sxLDEsMjRdXSxhbXBlcnNhbmQ6W1sxLDEsMjRdXSxhcGk6W1swLDIsMjRdLFsxLDIsMjRdXSxhcmNoaXZlOltbMSwxLDI0XV0sYXJyb3dfYXJjX2ZvcndhcmQ6W1sxLDEsMjRdXSxhcnJvd19jbG9ja3dpc2U6W1sxLDEsMjRdXSxhcnJvd19jb3VudGVyY2xvY2t3aXNlOltbMSwyLDI0XSxbMSwyLDQ4XV0sYXJyb3dfY291bnRlcmNsb2Nrd2lzZV9kYXNoZWQ6W1sxLDEsMjRdXSxhcnJvd19kb3duOltbMSwzLDI0XV0sYXJyb3dfZG93bl9jaXJjbGU6W1swLDQsMjRdLFsxLDQsMjRdXSxhcnJvd19kb3duX2NpcmNsZV9zbGFzaDpbWzAsMSwyNF0sWzEsMSwyNF1dLGFycm93X2Rvd25fcmlnaHQ6W1sxLDEsMjRdXSxhcnJvd19mbGlwOltbMSwxMCwyNF1dLGFycm93X2luOltbMSw4LDE4XSxbMSw4LDI0XV0sYXJyb3dfbGVmdDpbWzEsOCwKMjQsITBdLFsxLDgsMzYsITBdXSxhcnJvd19tZXJnZTpbWzEsMiwyNF1dLGFycm93X291dDpbWzEsMiwyNF1dLGFycm93X3JpZ2h0OltbMSwzLDI0LCEwXV0sYXJyb3dfcmlnaHRfcmVjdGFuZ2xlOltbMCwyLDI0XSxbMSwyLDI0XV0sYXJyb3dfc29saWRfZG93bjpbWzAsNCwxOF0sWzAsNCwyNF0sWzEsNCwxOF0sWzEsNCwyNF1dLGFycm93X3NvbGlkX3VwOltbMCw0LDE4XSxbMCw0LDI0XSxbMSw0LDE4XSxbMSw0LDI0XV0sYXJyb3dfc3BsaXQ6W1sxLDMsMjRdXSxhcnJvd19zcGxpdF9hbGVydDpbWzEsMSwyNF1dLGFycm93X3N3YXBfaG9yaXpvbnRhbDpbWzEsNSwyNF1dLGFycm93X3RyZW5kX2Rvd246W1sxLDEsMjRdXSxhcnJvd190cmVuZF91cDpbWzEsMiwxMl0sWzEsMiwyNF1dLGFycm93X3R1cm5fZG93bl9yaWdodDpbWzEsMiwxOF0sWzEsMiwyNF1dLGFycm93X3VwOltbMSwzLDI0XV0sYXJyb3dfdXBfY2lyY2xlOltbMCw0LDI0XSxbMSw0LDI0XV0sYXJyb3dfdXBfbGVmdDpbWzEsCjEsMjRdXSxhcnJvd191cF9yZWN0YW5nbGVfcG9ydHJhaXQ6W1sxLDEsMjRdXSxhcnJvd191cF9yaWdodDpbWzEsMiwxOF0sWzEsMiwyNF0sWzEsMiwzNl1dLGFzcGVjdF9yYXRpb193MTZfaDk6W1sxLDEsMjRdXSxhc3BlY3RfcmF0aW9fdzlfaDE2OltbMSwxLDI0XV0sYXVkaW86W1swLDE0LDEyXSxbMCwxNCwxOF0sWzAsMTQsMjRdLFsxLDE0LDEyXSxbMSwxNCwxOF0sWzEsMTQsMjRdLFsxLDE0LDQ4XV0sYXVkaW9fYXJyb3dfZmxpcDpbWzAsMiwyNF0sWzEsMiwyNF1dLGF1ZGlvX2JhZGdlOltbMCwzLDI0XSxbMSwzLDI0XV0sYXVkaW9fc2Npc3NvcnM6W1sxLDEsMjRdXSxhdWRpb19zbGFzaDpbWzAsMiwyNF0sWzEsMiwyNF1dLGF1ZGlvX3NwYXJrOltbMSwxLDI0XV0sYXVkaW9fc3F1YXJlX3N0YWNrOltbMCwyLDI0XSxbMSwyLDI0XV0sYXVkaW9fc3RhZmY6W1swLDIsMjRdLFsxLDIsMjRdXSxiYWNrc3BhY2U6W1swLDUsMjRdLFsxLDUsMjRdXSxiYWc6W1swLDcsMjRdLFsxLDcsMjRdXSwKYmFnX2Jvb2ttYXJrOltbMSwyLDI0XV0sYmFza2V0YmFsbDpbWzAsMiwyNF0sWzEsMiwyNF1dLGJlYWtlcjpbWzEsMiwyNF1dLGJlZDpbWzAsMSwyNF0sWzAsMSw0OF0sWzEsMSwyNF0sWzEsMSw0OF1dLGJlbGw6W1swLDExLDI0XSxbMSwxMSwyNF1dLGJlbGxfc2xhc2g6W1sxLDEsMjRdXSxiZWxsX3dhdmVzOltbMCwyLDI0XSxbMSwyLDI0XV0sYmx1cjpbWzEsMiwyNF1dLGJvb2s6W1swLDMsMjRdLFsxLDMsMjRdXSxib29rX2F1ZGlvOltbMSwxLDI0XV0sYm9va21hcms6W1swLDEwLDE4XSxbMCwxMCwyNF0sWzEsMTAsMThdLFsxLDEwLDI0XV0sYnJpZWZjYXNlOltbMSwyLDI0XV0sYnJpZWZjYXNlX3NsYXNoOltbMCwzLDI0XSxbMSwzLDI0XV0sYnJpZ2h0bmVzczpbWzAsMywyNF0sWzEsMywyNF1dLGJyb3dzZXI6W1swLDIsMjRdLFsxLDIsMjRdXSxicm93c2VyX3NsYXNoOltbMSwxLDI0XV0sYnViYmxlOltbMSwxLDI0XV0sYnViYmxlX2FzdGVyaXNrOltbMCwyLDI0XSxbMSwyLDI0XV0sCmJ1YmJsZV9lbGxpcHNpczpbWzEsMSwyNF1dLGJ1YmJsZV9nZWFyOltbMSwxLDI0XV0sYnViYmxlX2xpc3Q6W1sxLDEsMjRdXSxidWJibGVfcGVuY2lsOltbMSwxLDI0XV0sYnViYmxlX3NsYXNoOltbMCwyLDI0XSxbMSwyLDI0XV0sYnViYmxlX3Nsb3c6W1swLDIsMjRdLFswLDIsNDhdLFsxLDIsMjRdLFsxLDIsNDhdXSxidWJibGVfc3Bhcms6W1sxLDEsMjRdXSxidWJibGVfc3BhcmtsZXM6W1sxLDEsMjRdXSxidWJibGVfc3RhY2s6W1swLDIsMjRdLFsxLDIsMjRdXSxidWc6W1swLDQsMThdLFswLDQsMjRdLFsxLDQsMjRdXSxidXNpbmVzczpbWzAsNCwyNF0sWzEsNCwyNF1dLGNhYmxlOltbMSwyLDI0XV0sY2FsY3VsYXRvcjpbWzAsMywyNF0sWzEsMywyNF1dLGNhbGVuZGFyOltbMCw0LDI0XSxbMSw0LDI0XV0sY2FsZW5kYXJfZXZlbnQ6W1swLDIsMjRdLFsxLDIsMjRdXSxjYWxlbmRhcl90b2RheTpbWzEsMSwyNF1dLGNhbWVyYTpbWzAsMTAsMjRdLFsxLDEwLDE4XSxbMSwxMCwyNF1dLApjYW1lcmFfYXVkaW86W1sxLDUsMjRdXSxjYW1lcmFfZmxpcDpbWzEsNCwyNF1dLGNhbWVyYV9oYXNodGFnOltbMSw1LDI0XV0sY2FtZXJhX3NwYXJrbGVzOltbMSwxLDI0XV0sY2FtZXJhX3N3aXRjaDpbWzAsMywyNF0sWzEsMywyNF1dLGNhcmQ6W1swLDMsMjRdXSxjYXJ0OltbMCw0LDI0XSxbMSw0LDI0XV0sY2FydF9hZGQ6W1sxLDEsMjRdXSxjYXJ0X3NwYXJrOltbMSwxLDI0XV0sY2F0OltbMCwzLDI0XSxbMSwzLDI0XV0sY2VsZWJyYXRpb246W1sxLDIsMjRdXSxjaGFydF9iYXI6W1sxLDIsMTJdLFsxLDIsMjRdXSxjaGFydF9iYXJfc2VhcmNoOltbMCwyLDI0XSxbMSwyLDI0XV0sY2hhcnRfYmFyX3NxdWFyZTpbWzAsMywyNF0sWzEsMywxOF0sWzEsMywyNF1dLGNoYXJ0X2xpbmU6W1sxLDEsMjRdXSxjaGFydF9waWU6W1swLDIsMjRdLFsxLDIsMjRdXSxjaGFydF9zY2F0dGVyX3Bsb3Q6W1sxLDEsMjRdXSxjaGVjazpbWzEsMTMsMTJdLFsxLDEzLDE4XSxbMSwxMywyNF0sWzEsMTMsCjM2XV0sY2hlY2tfY2lyY2xlOltbMCwxMCwyNF0sWzEsMTAsMjRdXSxjaGVja19kb25lOltbMSwxLDI0XV0sY2hlY2tfZG9uZV9zbGFzaDpbWzEsMSwyNF1dLGNoZWNrX3NoaWVsZDpbWzEsMSwyNF1dLGNoZWNrX3NxdWFyZTpbWzAsMiwyNF0sWzEsMiwyNF1dLGNoZWNrX3NxdWFyZV9zdGFjazpbWzAsMSwyNF1dLGNoZXZyb25fY29sbGFwc2U6W1sxLDMsMjRdXSxjaGV2cm9uX2Rvd246W1sxLDksMThdLFsxLDksMjRdXSxjaGV2cm9uX2Rvd25fY2lyY2xlOltbMCwzLDI0XSxbMSwzLDI0XV0sY2hldnJvbl9kb3duX2VuZDpbWzEsMSwyNF1dLGNoZXZyb25fZXhwYW5kOltbMSw1LDI0XV0sY2hldnJvbl9sZWZ0OltbMSw5LDI0LCEwXV0sY2hldnJvbl9sZWZ0X2NpcmNsZTpbWzAsMywyNF0sWzEsMywyNF1dLGNoZXZyb25fbGVmdF9lbmQ6W1sxLDEsMjRdXSxjaGV2cm9uX2xlZnRfaW9zOltbMSwzLDI0XV0sY2hldnJvbl9yaWdodDpbWzEsNywxOCwhMF0sWzEsNywyNCwhMF1dLGNoZXZyb25fcmlnaHRfY2lyY2xlOltbMCwKMywyNF0sWzEsMywyNF1dLGNoZXZyb25fcmlnaHRfZW5kOltbMSwxLDI0XV0sY2hldnJvbl9yaWdodF9zcXVhcmU6W1sxLDEsMjRdXSxjaGV2cm9uX3VwOltbMSw5LDEyXSxbMSw5LDI0XV0sY2hldnJvbl91cF9jaXJjbGU6W1swLDMsMjRdLFsxLDMsMjRdXSxjaGV2cm9uX3VwX2VuZDpbWzEsMSwyNF1dLGNocm9tZWNhc3Q6W1swLDExLDI0XSxbMSwxMSwxOF0sWzEsMTEsMjRdLFsxLDExLDM2XV0sY2hyb21lY2FzdF9tb2JpbGU6W1sxLDQsMjRdLFsxLDQsMzZdXSxjaHJvbWVjYXN0X3dhdmVmb3JtOltbMSwyLDI0XV0sY2lyY2xlOltbMCw5LDI0XSxbMSw5LDI0XV0sY2lyY2xlX2Z1bGw6W1swLDMsMjRdXSxjaXJjbGVfZnVsbF9oYWxmOltbMCwxLDI0XV0sY2lyY2xlX2hhbGZfZmlsbGVkOltbMSwxLDI0XV0sY2lyY2xlX3NsYXNoOltbMCw0LDI0XSxbMSw0LDE4XSxbMSw0LDI0XSxbMSw0LDQ4XV0sY2lyY2xlczY6W1sxLDEsMjRdXSxjbGFwcGVyYm9hcmQ6W1swLDMsMjRdLFsxLDMsCjI0XV0sY2xhcHBlcmJvYXJkX3NsYXNoOltbMSwxLDI0XV0sY2xhcHBlcmJvYXJkX3NwYXJrbGVzOltbMCwyLDI0XSxbMSwyLDI0XV0sY2xvY2s6W1swLDEwLDI0XSxbMCwxMCw0OF0sWzEsMTAsMjRdXSxjbG9ja19hcnJvd19jbG9ja3dpc2U6W1sxLDEsMjRdXSxjbG9ja19oYWxmX2Rhc2hlZDpbWzEsMSwyNF1dLGNsb2NrX3NwbGl0OltbMCwyLDI0XSxbMSwyLDI0XV0sY2xvY2tfc3BsaXRfYWxlcnQ6W1swLDIsMjRdLFsxLDIsMjRdXSxjbG9zZWRfY2FwdGlvbnM6W1swLDMsMjRdLFswLDMsNDhdLFsxLDMsMjRdLFsxLDMsNDhdXSxjbG91ZDpbWzEsMiwyNF1dLGNsb3VkX2Fycm93X2Rvd246W1sxLDMsMjRdXSxjbG91ZF9hcnJvd191cDpbWzAsNiwyNF0sWzEsNiwxOF0sWzEsNiwyNF1dLGNsb3VkX2NoZWNrOltbMCwzLDI0XSxbMSwzLDI0XV0sY2xvdWRfZWxsaXBzaXM6W1swLDMsMjRdLFsxLDMsMjRdXSxjbG91ZF9zbGFzaDpbWzEsMiwyNF0sWzEsMiw0OF1dLGNtc19hbGxvd2xpc3Q6W1swLAoyLDI0XSxbMSwyLDI0XV0sY29kZTpbWzEsMiwyNF1dLGNvbXBhcmU6W1sxLDIsMjRdXSxjb21wYXNzOltbMCw5LDI0XSxbMSw5LDI0XV0sY29weTpbWzEsMywyNF1dLGNvcHlfdG9fYWxsOltbMSwxLDI0XV0sY29weXJpZ2h0OltbMCw0LDI0XSxbMSw0LDI0XV0sY29weXJpZ2h0X3NlYXJjaDpbWzAsMiwyNF0sWzEsMiwyNF1dLGNvdmVyX2NsYWltOltbMSwxLDI0XV0sY3JlYXRpdmVfY29tbW9uczpbWzAsMiwyNF0sWzEsMiwyNF1dLGNyZWRpdF9jYXJkOltbMCw0LDI0XSxbMSw0LDI0XV0sY3JvcDpbWzEsNCwxOF0sWzEsNCwyNF1dLGNyb3Bfcm90YXRlOltbMSwyLDI0XV0sY3Jvc3NoYWlyOltbMSwxLDE4XSxbMSwxLDI0XV0sY3Jvd246W1swLDUsMThdLFswLDUsMjRdLFsxLDUsMjRdXSxjc3Y6W1swLDIsMjRdLFsxLDIsMjRdXSxjdWJlOltbMCwyLDI0XSxbMSwyLDI0XV0sY3ViZV9zcGFyazpbWzEsMSwyNF1dLGN1cnNvcl9jbGljazpbWzAsMiwyNF0sWzEsMiwyNF1dLGN1cnZlOltbMSwKMSwyNF1dLGN2cDpbWzAsMiwyNF0sWzEsMiwyNF1dLGRhbmNlX3NwYXJrOltbMCwxLDI0XV0sZGFzaGJvYXJkOltbMCwyLDI0XSxbMSwyLDI0XV0sZGFzaGJvYXJkX2FkZDpbWzEsMSwyNF1dLGRpZV9mYWNlMzpbWzAsMiwyNF0sWzEsMiwyNF1dLGRpcmVjdGlvbnM6W1sxLDMsMjRdXSxkaXNwbGF5OltbMCwyLDI0XSxbMSwyLDI0XV0sZGlzcGxheV9zbGFzaDpbWzEsMSwyNF1dLGRpdmlkZTpbWzEsMSwyNF1dLGRvY3VtZW50OltbMCwyLDI0XSxbMSwyLDI0XV0sZG9jdW1lbnRfYXJyb3dfdXBfcmlnaHQ6W1swLDIsMjRdLFsxLDIsMjRdXSxkb2xsYXJfc2lnbl9hcnJvd19mbGlwOltbMSwxLDI0XV0sZG9sbGFyX3NpZ25fY2lyY2xlOltbMCwxMiwyNF0sWzEsMTIsMTJdLFsxLDEyLDE4XSxbMSwxMiwyNF1dLGRvbGxhcl9zaWduX2NpcmNsZV9hZGQ6W1sxLDEsMjRdXSxkb2xsYXJfc2lnbl9jaXJjbGVfaGFuZDpbWzEsMSwyNF1dLGRvbGxhcl9zaWduX2NpcmNsZV9wYXVzZTpbWzEsMiwyNF1dLApkb2xsYXJfc2lnbl9jaXJjbGVfc2xhc2g6W1sxLDIsMTJdLFsxLDIsMjRdXSxkb2xsYXJfc2lnbl9oZWFydDpbWzAsMjQsMTJdLFswLDI0LDI0XSxbMSwyNCwxMl0sWzEsMjQsMjRdXSxkb2xsYXJfc2lnbl9yZWN0YW5nbGU6W1sxLDEsMjRdXSxkb2xsYXJfc2lnbl90djpbWzAsMiwyNF0sWzEsMiwyNF1dLGRvdDpbWzAsMiwxMl0sWzAsMiwyNF1dLGRvd25sb2FkOltbMSwxMSwxOF0sWzEsMTEsMjRdXSxkcGFkOltbMCwyLDI0XSxbMSwyLDI0XV0sZW1iZWQ6W1swLDIsMjRdLFsxLDIsMjRdXSxlcXVhbDpbWzEsMiwxOF0sWzEsMiwyNF1dLGVxdWFsX3NsYXNoOltbMSwxLDI0XV0sZXhwbGljaXQ6W1swLDcsMjRdLFsxLDcsMjRdXSxleWU6W1swLDYsMjRdLFsxLDYsMjRdXSxleWVfc2xhc2g6W1sxLDEsMjRdXSxleWVkcm9wcGVyOltbMSwyLDI0XV0sZXllZ2xhc3NlczpbWzEsMSwyNF1dLGZhY2VfYWRkOltbMSwxLDI0XV0sZmFjZV9oYXBweTpbWzAsMTIsMjRdLFswLDEyLDM2XSxbMCwKMTIsNDhdLFsxLDEyLDI0XSxbMSwxMiwzNl1dLGZhY2VfaW1hZ2U6W1sxLDIsMjRdXSxmYWNlX21laDpbWzAsMTAsMjRdLFsxLDEwLDI0XV0sZmFjZV9uZXV0cmFsOltbMCw0LDI0XSxbMCw0LDM2XSxbMSw0LDI0XSxbMSw0LDM2XV0sZmFjZV9wYWludGJydXNoOltbMSwyLDI0XV0sZmFjZV9zYWQ6W1swLDEyLDI0XSxbMCwxMiwzNl0sWzEsMTIsMjRdLFsxLDEyLDM2XV0sZmFjZV9zY2FsZTpbWzEsMSwyNF1dLGZhY2Vfc3BhcmtsZXM6W1swLDIsMjRdLFsxLDIsMjRdXSxmYWNlX3VuaGFwcHk6W1swLDEwLDI0XSxbMCwxMCwzNl0sWzEsMTAsMjRdLFsxLDEwLDM2XV0sZmFjZV91cHNldDpbWzAsMTAsMjRdLFsxLDEwLDI0XV0sZmFjZV92ZXJ5X2hhcHB5OltbMCwxMiwyNF0sWzAsMTIsMzZdLFsxLDEyLDI0XSxbMSwxMiwzNl1dLGZhY2VfdmVyeV9zYWQ6W1swLDEwLDI0XSxbMSwxMCwyNF1dLGZhc2hpb246W1swLDQsMjRdLFsxLDQsMjRdXSxmYXN0X2ZvcndhcmQ6W1swLDUsMjRdLFsxLAo1LDI0XV0sZmFzdF9yZXdpbmQ6W1swLDIsMjRdLFsxLDIsMjRdXSxmaWxtX3N0cmlwOltbMCw3LDI0XSxbMCw3LDQ4XSxbMSw3LDI0XV0sZmlsbV9zdHJpcF9hZGQ6W1sxLDIsMjRdXSxmaWxtX3N0cmlwX2F1ZGlvOltbMSwxLDI0XV0sZmlsdGVyOltbMSwxLDI0XV0sZmlsdGVyX2F1ZGlvOltbMSwxLDI0XV0sZmlsdGVyX3Bob3RvOltbMCw4LDI0XSxbMSw4LDI0XV0sZmlyZXdvcmtzOltbMSwzLDI0XV0sZmxhZzpbWzAsMTAsMjRdLFswLDEwLDQ4XSxbMSwxMCwxOF0sWzEsMTAsMjRdLFsxLDEwLDQ4XV0sZmxhc2g6W1swLDIsMjRdLFsxLDIsMjRdXSxmbGFzaF9hdXRvOltbMCwzLDI0XSxbMSwzLDI0XV0sZmxhc2hfY2lyY2xlOltbMCw1LDI0XSxbMSw1LDI0XV0sZmxhc2hfc2xhc2g6W1swLDIsMjRdLFsxLDIsMjRdXSxmbGlwX2hvcml6b250YWw6W1sxLDQsMjRdXSxmbGlwX2hvcml6b250YWxfaGFsZl9kYXNoZWQ6W1sxLDEsMjRdXSxmbGlwX3ZlcnRpY2FsX2hhbGZfZGFzaGVkOltbMSwKMSwyNF1dLGZvbGRlcjpbWzAsNCwyNF0sWzEsNCwyNF1dLGZvbnQ6W1sxLDEsMjRdXSxmb250X2JvbGQ6W1sxLDEsMjRdXSxmb250X2l0YWxpYzpbWzEsMSwyNF1dLGZvbnRfb3V0bGluZTpbWzEsMSwyNF1dLGZvbnRfcHJlc2VudDpbWzEsMSwyNF1dLGZvbnRfc2VyaWY6W1sxLDEsMjRdXSxmb250X3NoYWRvdzpbWzEsMSwyNF1dLGZvbnRfc3Bhcms6W1sxLDEsMjRdXSxmb250X3NxdWFyZTpbWzAsMiwyNF0sWzEsMiwyNF1dLGZvbnRfc3F1YXJlX3NwYXJrOltbMSwxLDE4XSxbMSwxLDI0XV0sZm9udF9zdHJpa2V0aHJvdWdoOltbMSwxLDI0XV0sZm9udF9zdHlsZTpbWzEsMiwxOF0sWzEsMiwyNF1dLGZvbnRfdW5kZXJsaW5lOltbMSwxLDI0XV0sZm9vdGJhbGw6W1swLDQsMjRdLFsxLDQsMjRdLFsxLDQsMzZdXSxnYW1lX2NvbnRyb2xsZXI6W1sxLDEsMjRdXSxnYW1pbmc6W1swLDMsMjRdLFsxLDMsMjRdXSxnZWFyOltbMCwxMCwyNF0sWzAsMTAsNDhdLFsxLDEwLDE4XSxbMSwxMCwyNF0sClsxLDEwLDQ4XV0sZ2VzdHVyZV9sb25nX3ByZXNzOltbMCwyLDI0XSxbMSwyLDI0XV0sZ2VzdHVyZV9waW5jaF9pbjpbWzEsMSwyNF1dLGdlc3R1cmVfc3dpcGVfbGVmdDpbWzEsMSwyNF1dLGdlc3R1cmVfc3dpcGVfcmlnaHQ6W1sxLDEsMjRdXSxnZXN0dXJlX3N3aXBlX3VwOltbMSwxLDI0XV0sZ2VzdHVyZV90YXA6W1swLDIsMjRdLFsxLDIsMjRdXSxnaG9zdDpbWzAsNSwyNF0sWzEsNSwyNF1dLGdpZjpbWzAsMywxOF0sWzAsMywyNF0sWzEsMywxOF0sWzEsMywyNF1dLGdpZnQ6W1swLDMsMjRdLFsxLDMsMjRdXSxnbG9iZTpbWzEsNCwyNF1dLGdsb2JlX2ltYWdlOltbMSwzLDI0XV0sZ2xvdzpbWzEsMiwyNF1dLGdvb2dsZTpbWzAsMSwyNF1dLGdvb2dsZV9ibG9nZ2VyOltbMCwxLDI0XV0sZ29vZ2xlX2RyaXZlX2FkZDpbWzEsMSwyNF1dLGdvb2dsZV9sZW5zOltbMSw0LDI0XV0sZ29vZ2xlX21lZXQ6W1swLDIsMjRdLFsxLDIsMjRdXSxnb29nbGVfcXVpY2tfc2hhcmU6W1sxLDEsMjRdXSwKZ3JhZHVhdGlvbl9jYXA6W1swLDMsMThdLFswLDMsMjRdLFsxLDMsMjRdXSxncmVhdGVyX3RoYW46W1sxLDEsMjRdXSxncmVhdGVyX3RoYW5fbjIwOltbMSwxLDI0XV0sZ3JlYXRlcl90aGFuX29yX2VxdWFsX3RvOltbMSwxLDI0XV0saGFuZDpbWzEsMiwyNF1dLGhhbmRfd2F2ZTpbWzEsMiwyNF1dLGhhbmRzX2NsYXA6W1sxLDEsMjRdXSxoYW5kc19oZWFydDpbWzAsMywyNF0sWzEsMywyNF1dLGhhc2h0YWc6W1sxLDIsMjRdXSxoZDpbWzAsOCwyNF0sWzEsOCwyNF1dLGhlYWRzZXQ6W1swLDgsMjRdLFsxLDgsMjRdXSxoZWFyaW5nOltbMCwyLDI0XSxbMSwyLDI0XV0saGVhcnQ6W1swLDE5LDI0XSxbMSwxOSwxOF0sWzEsMTksMjRdXSxoZWFydF9jaXJjbGU6W1sxLDIsMjRdXSxoZWFydF9jdWJlOltbMSwxLDI0XV0saGVhcnRfc2xhc2g6W1sxLDEsMjRdXSxoZWxwX2J1YmJsZTpbWzAsMiwyNF0sWzEsMiwyNF1dLGhlbHBfY2lyY2xlOltbMSwyLDE4XSxbMSwyLDI0XV0saGllcmFyY2h5OltbMCwKNCwyNF0sWzEsNCwyNF1dLGhpZ2hsaWdodHM6W1sxLDIsMjRdXSxoaXN0b3J5OltbMSwxLDI0XV0saG9tZTpbWzAsMTAsMjRdLFsxLDEwLDI0XV0saG91cmdsYXNzOltbMSwzLDE4XSxbMSwzLDI0XV0saHlwZTpbWzAsMiwyNF0sWzEsMiwyNF1dLGltYWdlOltbMCw4LDI0XSxbMSw4LDI0XV0saW1hZ2VfYWRkOltbMCw0LDI0XSxbMSw0LDI0XV0saW1hZ2VfZnJhbWU6W1sxLDEsMjRdXSxpbWFnZV9saXN0OltbMCwyLDI0XSxbMSwyLDI0XV0saW1hZ2VfbGlzdF9zbGFzaDpbWzEsMSwyNF1dLGltYWdlX3NwYXJrOltbMSwxLDI0XV0saW1hZ2Vfc3RhY2s6W1swLDIsMjRdLFsxLDIsMjRdXSxpbWFnZV92aWV3ZmluZGVyOltbMSwxLDI0XV0saW5jb2duaXRvOltbMCw5LDI0XSxbMSw5LDI0XV0saW5maW5pdHk6W1sxLDIsMjRdXSxpbmZvX2NpcmNsZTpbWzEsMTAsMThdLFsxLDEwLDI0XV0saW5mb19jaXJjbGVfc3Bhcms6W1sxLDEsMjRdXSxqZXdlbDpbWzEsMSwyNF1dLGpvdXJuZXk6W1sxLAoyLDI0XV0sa2V5OltbMSw1LDI0XV0sa2V5Ym9hcmQ6W1swLDQsMjRdLFsxLDQsMjRdXSxsYWJlbDpbWzAsNCwyNF0sWzEsNCwyNF1dLGxhYmVsX3NsYXNoOltbMCwyLDI0XSxbMSwyLDI0XV0sbGFwdG9wOltbMSwzLDI0XV0sbGFwdG9wX21vYmlsZTpbWzAsNCwyNF0sWzEsNCwyNF1dLGxheW91dF9ib3R0b206W1sxLDEsMjRdXSxsYXlvdXRfZm9yZWdyb3VuZDpbWzEsMSwyNF1dLGxheW91dF9mdWxsOltbMSwxLDI0XV0sbGF5b3V0X2xlZnQ6W1sxLDEsMjRdXSxsYXlvdXRfbWlkZGxlOltbMSwxLDI0XV0sbGF5b3V0X3BpY3R1cmVfaW5fcGljdHVyZTpbWzEsMSwyNF1dLGxheW91dF9yaWdodDpbWzEsMSwyNF1dLGxheW91dF90b3A6W1sxLDEsMjRdXSxsZWFmOltbMSwyLDI0XV0sbGVzc190aGFuOltbMSwxLDI0XV0sbGVzc190aGFuX240OltbMSwxLDI0XV0sbGVzc190aGFuX29yX2VxdWFsX3RvOltbMSwxLDI0XV0sbGljZW5zZTpbWzAsMiwyNF0sWzEsMiwyNF1dLGxpY2Vuc2VfYWxlcnQ6W1sxLAoxLDI0XV0sbGljZW5zZV9zZWFyY2g6W1sxLDEsMjRdXSxsaWNlbnNlX3NsYXNoOltbMSwxLDI0XV0sbGlnaHRidWxiOltbMCw0LDI0XSxbMSw0LDI0XV0sbGluazpbWzEsOCwxOF0sWzEsOCwyNF1dLGxpbmtfc2xhc2g6W1sxLDEsMjRdXSxsaXZlOltbMSwzLDEyXSxbMSwzLDI0XV0sbGl2ZV9waG90bzpbWzEsMiwyNF1dLGxpdmVfd2F2ZXM6W1sxLDIsMThdLFsxLDIsMjRdXSxsb2NhdGlvbl9waW46W1swLDIsMjRdLFsxLDIsMjRdXSxsb2NhdGlvbl9waW5fc2xhc2g6W1sxLDEsMjRdXSxsb2NrOltbMCwxMywxMl0sWzAsMTMsMjRdLFsxLDEzLDE4XSxbMSwxMywyNF0sWzEsMTMsNDhdXSxsb2NrX2Nsb2NrOltbMSwxLDI0XV0sbG9ja19uMjpbWzEsMSwyNF1dLGxvY2tfb3BlbjpbWzAsNCwyNF0sWzEsNCwyNF1dLG1hZ2ljX3dhbmQ6W1swLDMsMjRdLFsxLDMsMjRdXSxtYWlsOltbMCw5LDI0XSxbMSw5LDI0XV0sbWFwOltbMSwzLDI0XV0sbWVkYWw6W1sxLDIsMjRdXSxtZWRhbF9zdGFyOltbMSwKMiwyNF1dLG1lZ2FwaG9uZTpbWzAsNSwyNF0sWzEsNSwxMl0sWzEsNSwyNF1dLG1lbWJlcnNoaXBzOltbMCw5LDI0XSxbMCw5LDM2XSxbMSw5LDI0XV0sbWVtYmVyc2hpcHNfZ2lmdDpbWzEsMSwyNF1dLG1lbnRpb246W1sxLDUsMjRdXSxtZW51OltbMSwxLDI0XV0sbWljOltbMCwxNCwxOF0sWzAsMTQsMjRdLFswLDE0LDM2XSxbMCwxNCw0OF0sWzEsMTQsMThdLFsxLDE0LDI0XSxbMSwxNCw0OF1dLG1pY19zbGFzaDpbWzEsMiwyNF1dLG1pY19zcGFyazpbWzAsMSwxOF0sWzAsMSwyNF0sWzEsMSwxOF0sWzEsMSwyNF1dLG1pbnVzOltbMSwyLDE4XSxbMSwyLDI0XV0sbWludXNfY2lyY2xlOltbMCwzLDI0XSxbMSwzLDE4XSxbMSwzLDI0XV0sbWludXNfc3F1YXJlOltbMCwyLDI0XSxbMSwyLDI0XV0sbWl4OltbMCw0LDI0XSxbMSw0LDE4XSxbMSw0LDI0XV0sbW9iaWxlOltbMCw0LDI0XSxbMSw0LDI0XV0sbW9iaWxlX2Fycm93X2Rvd246W1sxLDEsMjRdXSxtb2JpbGVfYXJyb3dfaW46W1sxLAoxLDI0XV0sbW9iaWxlX2Fycm93X291dDpbWzEsMSwyNF1dLG1vYmlsZV9jaGVjazpbWzEsMiwyNF1dLG1vYmlsZV9sYW5kc2NhcGU6W1swLDMsMjRdLFsxLDMsMjRdXSxtb3Rpb246W1sxLDIsMjRdXSxtb3ZlOltbMSw0LDE4XSxbMSw0LDI0XV0sbXVzaWNfdmlkZW86W1swLDQsMjRdLFsxLDQsMjRdXSxtdXNpY192aWRlb19zbGFzaDpbWzEsMSwyNF1dLG4xNTpbWzEsMSwyNF1dLG4xcG9pbnQyeDpbWzEsMSwyNF1dLG4xcG9pbnQ1eDpbWzEsMSwyNF1dLG4xcG9pbnQ4eDpbWzEsMSwyNF1dLG4xeDpbWzEsMSwyNF1dLG4yZDpbWzEsMSwyNF1dLG4ycG9pbnQ1eDpbWzEsMSwyNF1dLG4yeDpbWzEsMSwyNF1dLG4zZDpbWzEsMSwyNF1dLG4zeDpbWzEsMSwyNF1dLG40ZDpbWzEsMSwyNF1dLG40azpbWzAsMSwyNF0sWzEsMSwyNF1dLG42MDpbWzEsMSwyNF1dLG44azpbWzAsMSwyNF0sWzEsMSwyNF1dLG5ld19yZWxlYXNlOltbMSwxLDI0XV0sbmV3czpbWzAsMywyNF0sWzEsMywyNF1dLG5ld3NfYWxlcnQ6W1swLAoxLDI0XV0sbm9kZV9sZWZ0OltbMSwyLDI0XV0sbm9kZV9yaWdodDpbWzEsMiwyNF1dLG5vdGU6W1swLDEsMThdLFswLDEsMjRdLFsxLDEsMThdLFsxLDEsMjRdXSxub3RlX3NwYXJrOltbMCwyLDE4XSxbMCwyLDI0XSxbMSwyLDE4XSxbMSwyLDI0XV0sb3Blbl9pbl9wYW5lbDpbWzEsMiwyNF1dLG9yaWdpbmFsczpbWzAsMSwyNF0sWzEsMSwyNF1dLG92ZXJmbG93X2hvcml6b250YWw6W1sxLDYsMjRdLFsxLDYsMzZdXSxvdmVyZmxvd192ZXJ0aWNhbDpbWzEsMTMsMThdLFsxLDEzLDI0XSxbMSwxMywzNl1dLHBhZ2Vfc2VhcmNoOltbMSwxLDI0XV0scGFpbnRfYnVja2V0OltbMSwzLDI0XV0scGFpbnRfcGFsZXR0ZTpbWzEsMSwyNF1dLHBhbmVsczpbWzAsMiwyNF0sWzEsMiwyNF1dLHBhdXNlOltbMCw5LDI0XSxbMCw5LDM2XSxbMCw5LDQ4XSxbMSw5LDI0XV0scGF1c2VfY2lyY2xlOltbMCwyLDI0XSxbMSwyLDI0XV0scGF1c2VfaGlzdG9yeTpbWzEsMSwyNF1dLHBhd3ByaW50OltbMCwKMiwyNF0sWzEsMiwyNF1dLHBkZjpbWzEsMiwyNF1dLHBlbmNpbDpbWzAsMTAsMjRdLFsxLDEwLDE4XSxbMSwxMCwyNF1dLHBlbmNpbF9zcGFyazpbWzEsMSwyNF1dLHBlcmNlbnQ6W1sxLDEsMjRdXSxwZXJzb246W1swLDcsMjRdLFsxLDcsMTJdLFsxLDcsMjRdXSxwZXJzb24yOltbMSwxLDI0XV0scGVyc29uMl9yZWN0YW5nbGU6W1swLDEsMjRdLFsxLDEsMjRdXSxwZXJzb24zOltbMCwyLDI0XSxbMSwyLDE4XSxbMSwyLDI0XV0scGVyc29uX2FkZDpbWzAsNywyNF0sWzEsNywxOF0sWzEsNywyNF1dLHBlcnNvbl9hdWRpbzpbWzAsMywyNF0sWzEsMywxOF0sWzEsMywyNF0sWzEsMyw0OF1dLHBlcnNvbl9iYWNrZ3JvdW5kX3NwYXJrOltbMSwxLDI0XV0scGVyc29uX2NoZWNrOltbMSwxLDI0XV0scGVyc29uX2NoaWxkOltbMCwyLDEyXSxbMCwyLDI0XSxbMSwyLDI0XV0scGVyc29uX2NpcmNsZTpbWzAsMTAsMjRdLFsxLDEwLDI0XSxbMSwxMCw0OF1dLHBlcnNvbl9jaXJjbGVfc2xhc2g6W1sxLAoyLDI0XV0scGVyc29uX2dlYXI6W1swLDIsMjRdLFsxLDIsMjRdXSxwZXJzb25fc2hpZWxkOltbMSw3LDI0XV0scGVyc29uX3NxdWFyZTpbWzAsMiwyNF0sWzEsMiwxOF0sWzEsMiwyNF1dLHBlcnNvbl9zcXVhcmVfc3Bhcms6W1swLDEsMjRdLFsxLDEsMjRdXSxwZXJzb25fc3F1YXJlX3N0YWNrOltbMCwyLDI0XSxbMSwyLDE4XSxbMSwyLDI0XV0scGVyc29uX3ZpZXdmaW5kZXI6W1swLDEsMjRdLFsxLDEsMjRdXSxwZXJzb25fd2F2ZWZvcm06W1sxLDIsMjRdXSxwZXJzb25fd2F2ZXM6W1swLDEsMjRdLFsxLDEsMjRdXSxwZXJzb25feDpbWzEsMSwyNF1dLHBob25lOltbMCwzLDI0XSxbMSwzLDEyXSxbMSwzLDI0XV0scGlhbm86W1sxLDEsMjRdXSxwaWN0dXJlX2luX3BpY3R1cmU6W1swLDIsMjRdLFsxLDIsMjRdXSxwaWN0dXJlX2luX3BpY3R1cmVfc3RhY2s6W1sxLDEsMjRdXSxwaW46W1swLDcsMjRdLFsxLDcsMThdLFsxLDcsMjRdXSxwaW5fc2xhc2g6W1swLDIsMjRdLFsxLDIsMThdLApbMSwyLDI0XV0scGxheTpbWzAsNCwxOF0sWzAsNCwyNF0sWzAsNCwzNl0sWzAsNCw0OF0sWzEsNCwyNF1dLHBsYXlfY2lyY2xlOltbMCwyLDI0XSxbMCwyLDQ4XSxbMSwyLDI0XV0scGxheV9jaXJjbGVfaGFsZl9kYXNoZWQ6W1sxLDEsMjRdXSxwbGF5X3BhdXNlOltbMCwxLDI0XSxbMSwxLDI0XV0scGxheV9zbGFzaDpbWzAsMSwyNF0sWzEsMSwyNF1dLHBsYXlfc3F1YXJlX2hhbGZfZGFzaGVkOltbMSwxLDI0XV0scGxheV9zcXVhcmVfc3RhY2s6W1swLDEsMjRdLFsxLDEsMjRdXSxwbGF5YWJsZXM6W1swLDIsMjRdLFsxLDIsMThdLFsxLDIsMjRdXSxwbGF5ZXJfZGVmYXVsdDpbWzAsMSwyNF0sWzEsMSwyNF1dLHBsYXllcl9mdWxsX2VudGVyOltbMSwxLDI0XV0scGxheWVyX2Z1bGxfZW50ZXJfYWx0OltbMSwxLDI0XV0scGxheWVyX2Z1bGxfZW50ZXJfcG9ydHJhaXQ6W1sxLDIsMjRdXSxwbGF5ZXJfZnVsbF9leGl0OltbMSwxLDI0XV0scGxheWVyX2Z1bGxfZXhpdF9hbHQ6W1sxLDEsCjI0XV0scGxheWVyX21pbmlfZW50ZXI6W1swLDEsMjRdLFsxLDEsMjRdXSxwbGF5ZXJfbWluaV9leGl0OltbMSwxLDI0XV0scGxheWVyX211bHRpdmlldzpbWzAsMSwyNF0sWzEsMSwyNF1dLHBsYXllcl9zd2l0Y2g6W1swLDEsMjRdLFsxLDEsMjRdXSxwbGF5ZXJfdGhlYXRlcjpbWzAsMSwyNF0sWzEsMSwyNF1dLHBsYXlsaXN0OltbMSw1LDEyXSxbMSw1LDE4XSxbMSw1LDI0XSxbMSw1LDQ4XV0scGxheWxpc3RfYWRkOltbMSwzLDE4XSxbMSwzLDI0XV0scGxheWxpc3RfYXVkaW86W1swLDMsMjRdLFsxLDMsMThdLFsxLDMsMjRdLFsxLDMsNDhdXSxwbGF5bGlzdF9hdWRpb19zbGFzaDpbWzEsMSwyNF1dLHBsYXlsaXN0X2NoZWNrOltbMSwxLDI0XV0scGxheWxpc3RfcGVuY2lsOltbMSwyLDI0XSxbMSwyLDQ4XV0scGxheWxpc3RfeDpbWzEsMywxOF0sWzEsMywyNF1dLHBvZGNhc3Q6W1swLDYsMTJdLFswLDYsMjRdLFsxLDYsMTJdLFsxLDYsMThdLFsxLDYsMjRdLFsxLDYsNDhdXSxwb2RjYXN0X2FkZDpbWzAsCjIsMjRdLFsxLDIsMjRdXSxwb2RjYXN0X2NoZWNrOltbMCwyLDI0XV0scG9pbnQyeDpbWzEsMSwyNF1dLHBvaW50M3g6W1sxLDEsMjRdXSxwb2ludDV4OltbMSwxLDI0XV0scG9pbnQ4eDpbWzEsMSwyNF1dLHBvbGw6W1sxLDEwLDE4XSxbMSwxMCwyNF0sWzEsMTAsMzZdXSxwb3N0OltbMCwyLDEyXSxbMCwyLDE4XSxbMCwyLDI0XSxbMSwyLDEyXSxbMSwyLDE4XSxbMSwyLDI0XV0scHJlbWl1bTpbWzAsMSwyNF0sWzEsMSwyNF1dLHByZXNlbnRhdGlvbjpbWzEsMywyNF1dLHByaWNlX3RhZzpbWzAsOCwyNF0sWzAsOCw0OF0sWzEsOCwyNF1dLHByaWNlX3RhZ19oZWFydDpbWzEsMiwyNF1dLHByaWNlX3RhZ19yZWN0YW5nbGU6W1sxLDEsMjRdXSxxcl9jb2RlOltbMSwzLDI0XV0scXJfY29kZV92aWV3ZmluZGVyOltbMSwxLDI0XV0scXVlc3Rpb25faGVhZDpbWzEsMiwyNF1dLHF1ZXVlOltbMSwxLDI0XV0scXVldWVfbGFzdDpbWzEsMSwyNF1dLHF1ZXVlX25leHQ6W1sxLDEsMjRdXSxxdWl6OltbMCwKMSwyNF0sWzEsMSwyNF1dLHF1b3RlOltbMCwxLDI0XSxbMSwxLDI0XV0scXVvdGVfc2xhc2g6W1swLDEsMjRdLFsxLDEsMjRdXSxyZWNvcmQ6W1swLDIsMjRdXSxyZWRvOltbMSwyLDE4XSxbMSwyLDI0XV0scmVtaXg6W1sxLDIsMjRdXSxyZW1peF9zcGFya2xlczpbWzEsMSwyNF1dLHJlbW90ZV93YXZlczpbWzEsMSwyNF1dLHJlcGVhdDpbWzAsMiwyNF0sWzEsMiwyNF1dLHJlcGVhdDE6W1swLDEsMjRdLFsxLDEsMjRdXSxyZXBsYXk6W1sxLDIsMjRdLFsxLDIsMzZdXSxyb3RhdGVfY2xvY2t3aXNlOltbMSwxLDI0XV0scm90YXRlX2NvdW50ZXJjbG9ja3dpc2U6W1sxLDEsMjRdXSxyb3RhdGVfbGFuZHNjYXBlOltbMSwyLDE4XSxbMSwyLDI0XV0scm90YXRlX3BvcnRyYWl0OltbMSwxLDI0XV0scnNzOltbMSwyLDI0XV0scnNzX3NsYXNoOltbMSwxLDI0XV0scnVieTpbWzEsMiwyNF1dLHNhbXBsZXM6W1swLDIsMjRdLFsxLDIsMjRdXSxzYXR1cmF0aW9uOltbMSwyLDI0XV0sc2NhbGU6W1sxLAo0LDI0XV0sc2Npc3NvcnM6W1swLDgsMjRdLFsxLDgsMThdLFsxLDgsMjRdXSxzY2lzc29yc19jdXQ6W1sxLDQsMjRdXSxzY3JpYmJsZTpbWzEsMSwyNF1dLHNkOltbMCwzLDI0XSxbMSwzLDI0XV0sc2VhcmNoOltbMCwxNSwyNF0sWzEsMTUsMThdLFsxLDE1LDI0XSxbMSwxNSw0OF1dLHNlYXJjaF9zaGllbGQ6W1swLDEsMjRdLFsxLDEsMjRdXSxzZWFyY2hfc3Bhcms6W1sxLDMsMThdLFsxLDMsMjRdXSxzZWVrX2ZvcndhcmQ6W1swLDEsMjRdXSxzZWVrX3Jld2luZDpbWzAsMSwyNF1dLHNlbmQ6W1swLDcsMTgsITBdLFswLDcsMjQsITBdLFsxLDcsMTgsITBdLFsxLDcsMjQsITBdXSxzaGFkb3c6W1sxLDEsMjRdXSxzaGFkb3dfaGFyZDpbWzAsMywyNF0sWzEsMywyNF1dLHNoYWRvd19zb2Z0OltbMCwzLDI0XSxbMSwzLDI0XV0sc2hhcGVzOltbMCwzLDI0XSxbMSwzLDI0XV0sc2hhcmU6W1swLDEyLDI0LCEwXSxbMSwxMiwxOCwhMF0sWzEsMTIsMjQsITBdXSxzaGFyZV9hbmRyb2lkOltbMCwKMiwyNF0sWzEsMiwyNF1dLHNoYXJlX2lvczpbWzEsMiwyNF1dLHNoYXJwZW46W1sxLDEsMjRdXSxzaGllbGQ6W1swLDYsMjRdLFsxLDYsMjRdXSxzaGllbGRfYWRkOltbMSwyLDI0XV0sc2hpZWxkX2hlYWx0aDpbWzEsMSwyNF1dLHNoaWVsZF9vdmVyZmxvdzpbWzEsMiwyNF1dLHNoaWVsZF9zbGFzaDpbWzEsMSwyNF1dLHNoaWVsZF94OltbMCwzLDI0XSxbMSwzLDE4XSxbMSwzLDI0XV0sc2hvcnRzOltbMCwzLDE4XSxbMCwzLDI0XSxbMSwzLDI0XV0sc2hvcnRzX2FkZDpbWzEsMSwxOF0sWzEsMSwyNF1dLHNob3J0c19lbXB0eTpbWzAsMywxOF0sWzAsMywyNF0sWzEsMywyNF1dLHNodWZmbGU6W1swLDQsMjRdLFsxLDQsMThdLFsxLDQsMjRdXSxza2lwMTBfYmFjazpbWzEsMiwyNF0sWzEsMiwzNl1dLHNraXAxMF9mb3J3YXJkOltbMSwxLDI0XV0sc2tpcDE1X2JhY2s6W1sxLDEsMjRdXSxza2lwMTVfZm9yd2FyZDpbWzEsMSwyNF1dLHNraXAyMF9iYWNrOltbMSwxLDI0XV0sc2tpcDIwX2ZvcndhcmQ6W1sxLAoxLDI0XV0sc2tpcDMwX2JhY2s6W1sxLDEsMjRdXSxza2lwMzBfZm9yd2FyZDpbWzEsMiwyNF0sWzEsMiwzNl1dLHNraXA1X2JhY2s6W1sxLDEsMjRdXSxza2lwNV9mb3J3YXJkOltbMSwxLDI0XV0sc2tpcDYwX2JhY2s6W1sxLDEsMjRdXSxza2lwNjBfZm9yd2FyZDpbWzEsMSwyNF1dLHNraXBfZG93bjpbWzAsNiwyNF0sWzEsNiwyNF1dLHNraXBfbmV4dDpbWzAsNywxMl0sWzAsNywyNF0sWzAsNywzNl0sWzEsNywyNF1dLHNraXBfcHJldmlvdXM6W1swLDYsMjRdLFswLDYsMzZdLFsxLDYsMjRdXSxza2lwX3VwOltbMCw2LDI0XSxbMSw2LDI0XV0sc2xhc2hfZm9yd2FyZDpbWzEsMSwyNF1dLHNsZWVwX3RpbWVyOltbMCwyLDI0XSxbMSwyLDI0XV0sc2xpcDpbWzEsMSwxOF0sWzEsMSwyNF1dLHNub3dmbGFrZTpbWzEsMSwyNF1dLHNvY2Nlcl9iYWxsOltbMSwzLDI0XV0sc29uYXI6W1sxLDEsMjRdXSxzb3J0OltbMSwzLDEyXSxbMSwzLDE4XSxbMSwzLDI0XV0sc3BhY2ViYXI6W1sxLDIsCjI0XV0sc3Bhcms6W1swLDExLDEyXSxbMCwxMSwyNF0sWzEsMTEsMjRdXSxzcGFya19idWJibGVfY2hhdDpbWzEsMSwyNF1dLHNwYXJrX2xpZ2h0YnVsYjpbWzAsMywyNF0sWzEsMywyNF1dLHNwYXJrX3NlYXJjaDpbWzEsMSwyNF1dLHNwYXJrX3dhdmVzOltbMCwyLDI0XSxbMSwyLDI0XV0sc3BhcmtsZXM6W1swLDIsMjRdLFsxLDIsMjRdXSxzcGVha2VyOltbMSwyLDI0XV0sc3BlYWtlcl9oZWFkc2V0OltbMSwyLDI0XV0sc3BlYWtlcl9zbGFzaDpbWzEsMSwyNF1dLHNwZWFrZXJfc3RhY2s6W1sxLDEsMjRdXSxzcGVha2VyX3N0YWNrX3NsYXNoOltbMSwxLDI0XV0sc3BlZWRvbWV0ZXI6W1swLDIsMjRdLFsxLDIsMjRdXSxzcGxpY2U6W1sxLDEsMjRdXSxzcGxpdDpbWzEsNCwyNF1dLHNwb3RsaWdodDpbWzAsMywyNF0sWzEsMywyNF1dLHNwcmVhZHNoZWV0OltbMSwxLDI0XV0sc3F1YXJlOltbMCwyLDI0XSxbMSwyLDI0XV0sc3F1YXJlM19zdGFjazpbWzAsMiwyNF0sWzEsMiwyNF1dLApzcXVhcmUzZF9zdGFjazpbWzAsMiwyNF0sWzEsMiwyNF1dLHNxdWFyZV9ncmlkMngyOltbMSwxLDI0XV0sc3F1YXJlX2dyaWQzeDM6W1swLDIsMjRdLFsxLDIsMjRdXSxzcXVhcmVfcGFpbnRicnVzaDpbWzEsMSwyNF1dLHNxdWFyZV9wZW5jaWw6W1swLDMsMjRdLFsxLDMsMThdLFsxLDMsMjRdXSxzdGFibGVfdm9sdW1lOltbMCwyLDI0XSxbMSwyLDI0XV0sc3RhcjpbWzAsNiwxMl0sWzAsNiwyNF0sWzEsNiwxMl0sWzEsNiwyNF1dLHN0YXJfY2lyY2xlOltbMCw2LDEyXSxbMCw2LDE4XSxbMCw2LDI0XSxbMCw2LDM2XSxbMSw2LDI0XV0sc3Rhcl9mdWxsX2hhbGY6W1swLDEsMTJdLFswLDEsMjRdXSxzdGFyX2hhbGZfZmlsbGVkOltbMSwyLDEyXSxbMSwyLDI0XV0sc3Rhcl90aWNrZXQ6W1swLDIsMjRdLFsxLDIsMjRdXSxzdGFyX3Ryb3BoeTpbWzEsMSwyNF1dLHN0YXJfdHY6W1sxLDEsMjRdXSxzdGlja2VyOltbMSwzLDE4XSxbMSwzLDI0XV0sc3RvcDpbWzAsNiwyNF0sWzAsNiwzNl0sClsxLDYsMjRdXSxzdG9wX2NpcmNsZTpbWzAsMiwyNF0sWzEsMiwyNF1dLHN0b3B3YXRjaDpbWzAsNSwyNF0sWzEsNSwyNF1dLHN0b3B3YXRjaDEwOltbMCwxLDI0XV0sc3RvcHdhdGNoMzpbWzAsMSwyNF1dLHN0b3JhZ2U6W1swLDIsMjRdLFsxLDIsMjRdXSxzdWJzY3JpcHRpb25zOltbMCwxMiwyNF0sWzEsMTIsMjRdLFsxLDEyLDQ4XV0sc3VidGl0bGVzOltbMCw1LDI0XSxbMCw1LDQ4XSxbMSw1LDI0XV0sc3VidGl0bGVzX2J1YmJsZTpbWzEsMSwyNF1dLHN1bTpbWzEsMSwyNF1dLHN1cGVyX2NoYXQ6W1swLDgsMjRdLFsxLDgsMjRdXSxzdXBlcl9zdGFyOltbMSwxLDI0XV0sc3VwZXJfc3RpY2tlcjpbWzAsOCwyNF0sWzEsOCwyNF1dLHN1cGVyX3N0b3JlOltbMCwzLDI0XSxbMSwzLDI0XV0sc3VwcG9ydF9hZ2VudDpbWzEsMSwyNF1dLHN1cnJvdW5kX3NvdW5kOltbMCwyLDI0XSxbMSwyLDI0XV0sdGFibGV0X2xhbmRzY2FwZTpbWzEsMSwyNF1dLHRhcmdldDpbWzEsMiwyNF1dLHRhcmdldF9hZGQ6W1sxLAoyLDI0XV0sdGVtcGxhdGVfYWRkOltbMSwzLDI0XV0sdGVtcGxhdGVfcGxheTpbWzAsMywyNF0sWzEsMywyNF1dLHRlbXBsYXRlX3BsYXlfc3Bhcms6W1sxLDEsMjRdXSx0ZXh0X2FsaWduX2NlbnRlcjpbWzAsMiwyNF0sWzEsMiwyNF1dLHRleHRfYWxpZ25fbGVmdDpbWzAsMiwyNF0sWzEsMiwyNF1dLHRleHRfYWxpZ25fcmlnaHQ6W1swLDIsMjRdLFsxLDIsMjRdXSx0ZXh0X2J1YmJsZTpbWzAsNCwyNF0sWzEsNCwxMl0sWzEsNCwxOF0sWzEsNCwyNF1dLHRleHRfcGFnZTpbWzAsMiwyNF0sWzEsMiwyNF1dLHRleHRfcGFnZV9hbGVydDpbWzEsMSwyNF1dLHRleHRfcGFnZV9jaGVjazpbWzEsMSwyNF1dLHRleHRfcGFnZV9pbmZvOltbMSwxLDI0XV0sdGV4dF9zcGFyazpbWzEsMSwyNF1dLHRleHR1cmU6W1sxLDEsMjRdXSx0aGVhdGVyOltbMSwxLDI0XV0sdGhlbWU6W1swLDIsMjRdLFsxLDIsMjRdXSx0aGVybW9tZXRlcjpbWzEsMiwyNF1dLHRodW1iX2Rvd246W1swLDI1LDE4XSxbMCwKMjUsMjRdLFswLDI1LDM2XSxbMCwyNSw0OF0sWzEsMjUsMThdLFsxLDI1LDI0XSxbMSwyNSwzNl0sWzEsMjUsNDhdXSx0aHVtYl91cDpbWzAsMjQsMTJdLFswLDI0LDE4XSxbMCwyNCwyNF0sWzAsMjQsMzZdLFswLDI0LDQ4XSxbMSwyNCwxMl0sWzEsMjQsMThdLFsxLDI0LDI0XSxbMSwyNCwzNl0sWzEsMjQsNDhdXSx0aHVtYl91cF9kb3duOltbMCw0LDI0XSxbMSw0LDI0XV0sdGlsdDpbWzEsNCwyNF1dLHRpbWVsaW5lOltbMSwzLDI0XV0sdGltZWxpbmVfc3Bhcms6W1sxLDEsMjRdXSx0aW1lc3RhbXBfYWRkOltbMSwxLDI0XV0sdG9vbGJveDpbWzAsNCwyNF0sWzEsNCwyNF1dLHRyYW5zY3JpcHQ6W1sxLDIsMjRdXSx0cmFuc2l0aW9uOltbMCw1LDI0XSxbMSw1LDI0XV0sdHJhbnNsYXRlOltbMSw0LDE4XSxbMSw0LDI0XV0sdHJhc2hfY2FuOltbMCwxMCwyNF0sWzEsMTAsMThdLFsxLDEwLDI0XV0sdHJlbmRpbmc6W1swLDIsMjRdLFsxLDIsMjRdXSx0cmlhbmdsZV9kb3duOltbMCw4LAoxOF0sWzAsOCwyNF0sWzEsOCwyNF1dLHRyaWFuZ2xlX3VwOltbMCwzLDE4XSxbMCwzLDI0XSxbMSwzLDI0XV0sdHJvcGh5OltbMCwzLDI0XSxbMSwzLDI0XV0sdHJ1Y2s6W1swLDUsMjRdLFsxLDUsMjRdXSx0djpbWzAsOCwyNF0sWzEsOCwyNF0sWzEsOCw0OF1dLHR2X2Fycm93X2xlZnQ6W1sxLDIsMjRdXSx0dl9jaXJjbGU6W1swLDMsMjRdLFsxLDMsMjRdXSx0dl9tb2JpbGU6W1sxLDIsMjRdLFsxLDIsMzZdXSx0dl9zbGFzaDpbWzEsMSwyNF1dLHVuYXJjaGl2ZTpbWzEsMSwyNF1dLHVuZG86W1sxLDIsMThdLFsxLDIsMjRdXSx1cGxvYWQ6W1sxLDUsMjRdXSx2YXJpYWJsZTpbWzEsNCwyNF1dLHZpZGVvOltbMCwzLDI0XSxbMSwzLDE4XSxbMSwzLDI0XV0sdmlkZW9fY2FtZXJhOltbMCw5LDI0XSxbMCw5LDQ4XSxbMSw5LDI0XSxbMSw5LDQ4XV0sdmlkZW9fY2FtZXJhX2FkZDpbWzEsMiwyNF1dLHZpZGVvX2NhbWVyYV9zbGFzaDpbWzEsMSwyNF1dLHZpZGVvX2xpbms6W1sxLDUsMThdLApbMSw1LDI0XV0sdmlkZW9fcG9ydHJhaXRfc3Bhcms6W1sxLDEsMjRdXSx2aWRlb19yZXZlcnNlOltbMSwxLDI0XV0sdmlkZW9fc2xhc2g6W1sxLDEsMTJdLFsxLDEsMThdLFsxLDEsMjRdLFsxLDEsMzZdLFsxLDEsNDhdXSx2aWRlb19zcGFyazpbWzEsMiwyNF1dLHZpZGVvX3N0YWNrX3NwYXJrOltbMSwxLDE4XSxbMSwxLDI0XV0sdmlkZW9fc3RpdGNoOltbMSwyLDI0XV0sdmlkZW9fd2F2ZWZvcm06W1sxLDEsMjRdXSx2aWV3X2NvbHVtbjI6W1sxLDEsMjRdXSx2aWV3X2NvbHVtbjM6W1swLDIsMjRdLFsxLDIsMjRdXSx2aWV3X2NvbHVtbjNfcm93MjpbWzAsMiwyNF0sWzEsMiwyNF1dLHZpZXdfY29tcGFjdDpbWzAsMiwyNF0sWzEsMiwyNF1dLHZpZXdfZmVlZDpbWzAsMiwyNF0sWzEsMiwyNF1dLHZpZXdfbGlzdDpbWzEsMSwyNF1dLHZpZXdfcm93MjpbWzAsMiwyNF0sWzEsMiwyNF1dLHZpZXdfdGltZWxpbmU6W1sxLDEsMjRdXSx2aWV3ZmluZGVyOltbMSwxLDEyXSxbMSwxLDE4XSwKWzEsMSwyNF1dLHZpZ25ldHRlOltbMSwxLDI0XV0sdm9sdW1lX2ZhZGU6W1sxLDIsMjRdXSx2b2x1bWVfbWF4OltbMCwyLDI0XSxbMSwyLDI0XV0sdm9sdW1lX21pbjpbWzAsMiwyNF0sWzEsMiwyNF1dLHZvbHVtZV9tdXRlOltbMCwyLDI0XSxbMSwyLDI0XV0sdnI6W1swLDcsMjRdLFsxLDcsMjRdXSx3YXRjaDpbWzEsMSwyNF1dLHdhdGVyOltbMSwxLDI0XV0sd2F2ZWZvcm06W1sxLDMsMjRdLFsxLDMsNDhdXSx3YXZlZm9ybV9zcGFyazpbWzEsMiwyNF1dLHdpZmlfdGV0aGVyaW5nOltbMSwxLDI0XV0sd3JlbmNoOltbMCwzLDE4XSxbMCwzLDI0XSxbMSwzLDE4XSxbMSwzLDI0XV0seDpbWzEsMTEsMThdLFsxLDExLDI0XSxbMSwxMSwzNl1dLHhfY2lyY2xlOltbMCw5LDI0XSxbMSw5LDE4XSxbMSw5LDI0XV0seF9vY3RhZ29uOltbMSwzLDEyXSxbMSwzLDI0XV0seF9yZWN0YW5nbGU6W1sxLDEsMjRdXSx5ZW5fc2lnbl9yZWN0YW5nbGU6W1swLDIsMjRdLFsxLDIsMjRdXSx5b3V0dWJlOltbMCwKMiwyNF0sWzEsMiwyNF1dLHlvdXR1YmVfa2lkczpbWzAsNSwyNF0sWzEsNSwyNF1dLHlvdXR1YmVfbGFiczpbWzAsMSwyNF1dLHlvdXR1YmVfbXVzaWM6W1swLDcsMjRdLFsxLDcsMjRdXSx5b3V0dWJlX3Nob3J0czpbWzAsMTEsMjRdLFsxLDExLDI0XV0seW91dHViZV9zdHVkaW86W1swLDgsMjRdLFsxLDgsMjRdXSx5b3V0dWJlX3R2OltbMCw4LDI0XSxbMSw4LDI0XV0sem9vbV9hdXRvOltbMSwyLDI0XV0sem9vbV9pbjpbWzAsMiwyNF0sWzEsMiwyNF1dLHpvb21fb3V0OltbMCwyLDI0XSxbMSwyLDI0XV19O3ZhciBYcWE9e1ZPTFVNRV9VUF9ERUxISV9QTEFZRVJfRklMTEVEOiJWT0xVTUVfTUFYIixWT0xVTUVfT0ZGX0RFTEhJX1BMQVlFUjoiVk9MVU1FX01VVEUiLFZPTFVNRV9ET1dOX0RFTEhJX1BMQVlFUl9GSUxMRUQ6IlZPTFVNRV9NSU4iLENMT1NFRF9DQVBUSU9OX0RFTEhJX1BMQVlFUjoiQ0FQVElPTlMiLENMT1NFRF9DQVBUSU9OX0RFTEhJX1BMQVlFUl9GSUxMRUQ6IkNBUFRJT05TIixTVUJUSVRMRVNfREVMSElfUExBWUVSOiJTVUJUSVRMRVMiLFNVQlRJVExFU19ERUxISV9QTEFZRVJfRklMTEVEOiJTVUJUSVRMRVMiLFBMQVlFUl9GVUxMX0VOVEVSX0FMVDoiUExBWUVSX0ZVTExfRU5URVJfQUxUIixQTEFZRVJfRlVMTF9FWElUX0FMVDoiUExBWUVSX0ZVTExfRVhJVF9BTFQiLFBBVVNFX0RFTEhJX1BMQVlFUl9GSUxMRUQ6IlBBVVNFIixQTEFZX0FSUk9XX0RFTEhJX1BMQVlFUl9GSUxMRUQ6IlBMQVlfQVJST1cifSx2Wj1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLmo9YX1tZihhLApiKXt2YXIgYz1YcWFbYS5pY29uTmFtZS50b1VwcGVyQ2FzZSgpXTtjJiYoYS5pY29uTmFtZT1jKTt2YXIgZD1hLmljb25OYW1lO2Q9ZC5yZXBsYWNlKC8tL2csIl8iKTthPXsuLi5hLGljb25OYW1lOnVZKGQsISFjKXx8ZC50b0xvd2VyQ2FzZSgpfTtyZXR1cm4gXy54KCJlbmFibGVfd2ViX2RlbGhpX2ljb25zIil8fGM/clkoV3FhLGEsdGhpcy5qPy5yd3x8QXBhLGIpOnJZKFZxYSxhLHRoaXMuaj8ucnd8fHpwYSxiKX19O3ZaW18uTG5dPVtfLkluKF8ubk8pXTt2YXIgQnBhPW5ldyBTZXQoWyJjaSIsImNyIiwiY2FybWwiXSksdlk9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnNpZ25hbHM9W107dGhpcy5qPW5ldyBNYXA7dGhpcy5CPW5ldyBTZXQ7dGhpcy5vPW5ldyBNYXA7dGhpcy52PW5ldyBNYXB9VnEoYSl7aWYoYS5sZW5ndGg+MSl7dmFyIGI9W107bGV0IGY9T2JqZWN0LmNyZWF0ZShudWxsKTtmb3IodmFyIGMgb2YgYSlmW2NdfHwoYi5wdXNoKGMpLGZbY109ITApO2E9Yn1pZihhLmxlbmd0aD09PTEpdmFyIGQ9YVswXTtlbHNle2M9YTtiPSIiO2Muc29ydCgpO2ZvcihlIG9mIGMpYis9ZSsifCI7dmFyIGU9YjtpZighdGhpcy5qLmdldChlKSl7Yz0wO2I9W107Zm9yKGQgb2YgYSljKysseFkodGhpcyxkKXx8Yi5wdXNoKGQpO2M+Yi5sZW5ndGg/dGhpcy5zaWduYWxzLnB1c2goZSk6Q3BhKHRoaXMsZSxhLGIpfWQ9ZX1yZXR1cm4gZH1IaChhLGIsYyxkLGUpe3hZKHRoaXMsYyk/Xy5DaygpLkdhKGEsYixkKTooZSYmKGE9eVkoYSksQVkodGhpcywKYSxiLGMsZSkpLGU9dGhpcy5vLmdldChjKSxlfHwodGhpcy5vLnNldChjLFtdKSxlPXRoaXMuby5nZXQoYykpLGUucHVzaCh7eGg6YSxwcmlvcml0eTpiLGRlbGF5OmR9KSl9YWRkTGlzdGVuZXIoYSxiLGMpe2MmJihiPXlZKGIpLEFZKHRoaXMsYiwwLGEsYykpO2M9dGhpcy52LmdldChhKTtjfHwodGhpcy52LnNldChhLFtdKSxjPXRoaXMudi5nZXQoYSkpO2MucHVzaChiKX1XbShhKXtpZigheFkodGhpcyxhKSl7dGhpcy5CLmFkZChhKTt2YXIgYj10aGlzLm8uZ2V0KGEpO2lmKGIpe2ZvcihsZXQgYyBvZiBiKV8uQ2soKS5HYShjLnhoLGMucHJpb3JpdHksYy5kZWxheSk7dGhpcy5vLmRlbGV0ZShhKX1pZihiPXRoaXMudi5nZXQoYSkpe2ZvcihsZXQgYyBvZiBiKWMoKTt0aGlzLnYuZGVsZXRlKGEpfXRoaXMuc2lnbmFscy5wdXNoKGEpO3RoaXMuQi5kZWxldGUoYSl9fX07dlkucHJvdG90eXBlLnByb2Nlc3NTaWduYWw9dlkucHJvdG90eXBlLldtOwp2WS5wcm90b3R5cGUucGFya09yU2NoZWR1bGVKb2I9dlkucHJvdG90eXBlLkhoO3ZZLnByb3RvdHlwZS5vbkFueT12WS5wcm90b3R5cGUuVnE7Xy5yYSgieXRzaWduYWxzLmdldEluc3RhbmNlIix3WSk7dlkucHJvdG90eXBlLm9uQW55PXZZLnByb3RvdHlwZS5WcTt2WS5wcm90b3R5cGUucGFya09yU2NoZWR1bGVKb2I9dlkucHJvdG90eXBlLkhoO3ZZLnByb3RvdHlwZS5wcm9jZXNzU2lnbmFsPXZZLnByb3RvdHlwZS5XbTt2YXIgelk9bmV3IFNldChbImVvcCIsImVvY3MiLCJkbCIsInBjbCJdKTt2YXIgdnFhPWNsYXNzIGV4dGVuZHMgXy5Xc3tjb25zdHJ1Y3RvcihhKXt2YXIgYj17fTtzdXBlcigidW5pbml0aWFsaXplZCIpO3RoaXMuZW52PWE7dGhpcy50cmFuc2l0aW9ucz1be2Zyb206InVuaW5pdGlhbGl6ZWQiLHRvOiJpbml0aWFsaXplZCIsYWN0aW9uOnRoaXMuaW5pdH0se2Zyb206ImluaXRpYWxpemVkIix0bzoicmVuZGVyaW5nIixhY3Rpb246dGhpcy5LfSx7ZnJvbToicmVuZGVyaW5nIix0bzoicmVuZGVyZWQiLGFjdGlvbjp0aGlzLkR9LHtmcm9tOiJyZW5kZXJlZCIsdG86ImFmdGVyLXJlbmRlci1kZWZlcnJlZCIsYWN0aW9uOnRoaXMub31dO2IuRmchPT12b2lkIDAmJih0aGlzLkIuRmc9Yi5GZyl9YXN5bmMgaW5pdChhKXt0aGlzLkIuRmc/YXdhaXQgYSh0aGlzLmVudik6YSh0aGlzLmVudik7dGhpcy5qJiZhd2FpdCB0aGlzLmouby5wcm9taXNlO3dZKCkuSGgoKCk9Pnt0aGlzLnRyYW5zaXRpb24oInJlbmRlcmluZyIpfSwxMCwiY2kiKX1hc3luYyBLKGEpe3RoaXMuQi5GZz8KYXdhaXQgYSh0aGlzLmVudik6YSh0aGlzLmVudik7dGhpcy5qJiZhd2FpdCB0aGlzLmouby5wcm9taXNlO3dZKCkuSGgoKCk9Pnt0aGlzLnRyYW5zaXRpb24oInJlbmRlcmVkIil9LDEwLCJjciIpfWFzeW5jIEQoYSl7dGhpcy5CLkZnP2F3YWl0IGEodGhpcy5lbnYpOmEodGhpcy5lbnYpO3RoaXMuaiYmYXdhaXQgdGhpcy5qLm8ucHJvbWlzZTt3WSgpLkhoKCgpPT57dGhpcy50cmFuc2l0aW9uKCJhZnRlci1yZW5kZXItZGVmZXJyZWQiKX0sMTAsImNhcm1sIil9YXN5bmMgbyhhKXthKHRoaXMuZW52KX19O3ZhciB3Wj0hMSx3cWE9e2luaXRpYWxpemVkOntwcmlvcml0eToxMCxjYWxsYmFjazpmdW5jdGlvbigpe3dafHwoXy5kdyh7R2Y6YT0+e2EuZWwmJl8udXkoYS5lbCxhLnByb3BzKX0sSGY6YT0+e18uc3koYS5lbCl9fSksd1o9ITApfX19O3ZhciBDWT1fLkwoKHtkYXRhOmF9KT0+e2Z1bmN0aW9uIGIoZil7Xy5uUCgpO2Yuc3RvcFByb3BhZ2F0aW9uKCl9dmFyIGM9Xy52RSgiZGl2IiksZD1fLngoIndlYl9yZW1vdmVfc25hY2tiYXJfYWN0aW9ucyIpO18uVUooKCk9Pnt9KTt2YXIgZT17YnV0dG9uT3ZlcnJpZGVzOntzdHlsZToiY2FsbC10by1hY3Rpb24taW52ZXJzZSJ9fTtyZXR1cm4gXy5LKCJ5dG0tbm90aWZpY2F0aW9uLWFjdGlvbi1yZW5kZXJlciIsbnVsbCxfLksoImRpdiIseyJhcmlhLWxpdmUiOl8uZnI/Im9mZiI6InBvbGl0ZSIsY2xhc3M6Im5vdGlmaWNhdGlvbi1hY3Rpb24tcmVzcG9uc2UtdGV4dCJ9LF8uSyhfLklKLHtkYXRhOigpPT5hKCkucmVzcG9uc2VUZXh0fSkpLF8uSyhfLk8se0E6KCk9PmEoKS5hY3Rpb25CdXR0b24mJiFkLHRoZW46KCk9Pl8uSygiZGl2Iix7ZWw6YyxjbGFzczoibm90aWZpY2F0aW9uLWFjdGlvbi1idXR0b24iLCJvbjpjbGljayI6Yn0sXy5LKF8uVyx7ZGF0YTooKT0+YSgpLmFjdGlvbkJ1dHRvbn0sCntidXR0b25SZW5kZXJlcjooe2RhdGE6Zn0pPT5fLksoXy5wTyx7ZGF0YTpmLC4uLmV9KSx0b2dnbGVCdXR0b25SZW5kZXJlcjooe2RhdGE6Zn0pPT5fLksoXy5xTyx7ZGF0YTpmLC4uLmV9KX0pKX0pKX0sImJmIik7Q1kuaWRvbUNvbXBhdD0hMDt2YXIgRVk7dmFyIEdZPW5ldyBfLmVFO3ZhciBHcGE9e2FkZFRvUGxheWxpc3RSZW5kZXJlcjohMH07dmFyIExZO3ZhciBRcGE9Xy4kTi5DdDt2YXIgVFk9Xy5MKCh7ZGF0YTphfSk9Pnt2YXIgYj1fLnVFKCJ5dG0tc2hhcmUtdGFyZ2V0LXJlbmRlcmVyIik7Xy5VSigoKT0+e2IudmFsdWUubGF5ZXI9N30pO3ZhciBjPSgpPT5fLkIoYSgpLm5hdmlnYXRpb25FbmRwb2ludCxfLlZEKT8udXJsLGQ9KCk9PnthKCk7cmV0dXJuITF9O3JldHVybiBfLksoInl0bS1zaGFyZS10YXJnZXQtcmVuZGVyZXIiLHtlbDpiLCJvbjpjbGljayI6ZnVuY3Rpb24oZSl7ZS5zdG9wUHJvcGFnYXRpb24oKTtpZihkKCkpe3ZhciBmPWMoKSxoPWEoKS5uYXZpZ2F0aW9uRW5kcG9pbnQ/LmNsaWNrVHJhY2tpbmdQYXJhbXM7Xy56SihoLDcpO25ldyBNb3pBY3Rpdml0eSh7bmFtZToibmV3IixkYXRhOnt0eXBlOiJ3ZWJzbXMvc21zIixib2R5OmZ9fSk7TlkoKTtlLnByZXZlbnREZWZhdWx0KCk7ZS5zdG9wUHJvcGFnYXRpb24oKX1lbHNlIE5ZKCl9fSxfLksoXy5PLHtBOmQsdGhlbjooKT0+Xy5LKCJhIix7aHJlZjpjLGNsYXNzOiJzaGFyZS10YXJnZXQtbGluayJ9LApfLksoXy5JSix7ZGF0YTooKT0+YSgpLnRpdGxlfSkpLFc6KCk9Pl8uSyhfLm5ILHtjbGFzc05hbWU6InNoYXJlLXRhcmdldC1saW5rIixjb21tYW5kOigpPT5hKCkubmF2aWdhdGlvbkVuZHBvaW50LHRhcmdldDoiX2JsYW5rIn0sXy5LKF8uSUose2RhdGE6KCk9PmEoKS50aXRsZX0pKX0pKX0sImNmIik7VFkuaWRvbUNvbXBhdD0hMDt2YXIgWXFhPV8uJE4uQ0FOQ0VMLFhwYT1fLkwoKHtkYXRhOmF9KT0+e2Z1bmN0aW9uIGIoZil7dmFyIGg9Xy55KCkucmVzb2x2ZShfLnlQKSxrPVJZKGEoKSk7Zi5wcmV2ZW50RGVmYXVsdCgpO2smJl8uekooayw3KTtfLnNQKGUpO2g/LmxkKCk7Xy56TigpO2Yuc3RvcFByb3BhZ2F0aW9uKCl9ZnVuY3Rpb24gYyhmKXtfLnkoKS5yZXNvbHZlKF8ueVApPy5sZCgpO18uek4oKTtmLnN0b3BQcm9wYWdhdGlvbigpfXZhciBkPSgpPT5PWShhKCkpLGU9InVuaWZpZWQtc2hhcmUtdXJsLWlucHV0IitfLk9IKCk7cmV0dXJuIF8uSyhfLnJFLHtRZzooKT0+Xy5LKF8uQVAsbnVsbCxfLksoXy5JSix7ZGF0YTooKT0+e3ZhciBmPWEoKS5oZWFkZXI/LnNoYXJlUGFuZWxIZWFkZXJSZW5kZXJlcj8udGl0bGU/LnNoYXJlUGFuZWxUaXRsZVYxNVJlbmRlcmVyPy50aXRsZTtyZXR1cm4gZj9mOntzaW1wbGVUZXh0OiJTaGFyZSJ9fX0pKSxxazooKT0+Xy5LKF8uSUIsbnVsbCxfLksoXy5PLHtBOigpPT4KITAsdGhlbjooKT0+Xy5LKCJpbnB1dCIse3ZhbHVlOmQsInNlbGVjdGlvbi1lbmQiOjAsY2xhc3M6InVuaWZpZWQtc2hhcmUtdXJsLWlucHV0IixpZDplLCJvbjpjbGljayI6YiwiYXJpYS1sYWJlbCI6KCk9PmAke18uJE4uc299ICR7T1koYSgpKX1gLHJlYWRvbmx5OiEwfSl9KSxfLksoXy5nRyx7cGE6KCk9PlNZKGEoKSl8fFtdfSxmPT5fLksoXy5PLHtBOigpPT5mLnNoYXJlVGFyZ2V0UmVuZGVyZXIsdGhlbjpoPT5fLksoVFkse2RhdGE6aH0pfSkpKSxQcjooKT0+Xy5LKF8uelAsbnVsbCxfLksoImJ1dHRvbiIse2NsYXNzOiJjb21wYWN0Iiwib246Y2xpY2siOmN9LFlxYSkpfSl9LCJkZiIpLFFZPV8uTCgoe3Nob3J0VXJsOmEsdHJhY2tpbmdQYXJhbXM6Yn0pPT57ZnVuY3Rpb24gYyhlKXt2YXIgZj1kLGg9Yj8uKCk7ZS5wcmV2ZW50RGVmYXVsdCgpO2gmJl8uekooaCw3KTtfLnNQKGYpO05ZKCk7Xy56TigpO2Uuc3RvcFByb3BhZ2F0aW9uKCl9dmFyIGQ9InVuaWZpZWQtc2hhcmUtdXJsLWlucHV0IisKXy5PSCgpO3JldHVybiBfLksoXy5PLHtBOigpPT4hMCx0aGVuOigpPT5fLksoImlucHV0Iix7Y2xhc3M6InVuaWZpZWQtc2hhcmUtdXJsLWlucHV0IixpZDpkLHZhbHVlOmEscmVhZG9ubHk6ITAsImFyaWEtbGFiZWwiOigpPT5gJHtfLiROLnNvfSAke2EoKX1gLCJvbjpjbGljayI6Yywic2VsZWN0aW9uLWVuZCI6MH0pfSl9LCJlZiIpO1FZLmlkb21Db21wYXQ9ITA7dmFyICRwYT1fLiROLkR0LGFxYT1fLiROLmV1O18ucmEoInl0LnB1YnN1Yi5wdWJsaXNoIixfLk96KTt2YXIgd1g9e2F1ZGlvVHJhY2tTZWxlY3RBY3Rpb25Db21tYW5kOlZXKFRxYSksYnJvd3NlRW5kcG9pbnQ6KCk9PkZZKElwYSksY2FwdGlvbkxhbmd1YWdlU2VsZWN0QWN0aW9uQ29tbWFuZDpWVyhyWiksY29tbWFuZEV4ZWN1dG9yQ29tbWFuZDooKT0+RlkoSnBhKSxjb3B5VGV4dEVuZHBvaW50OigpPT5GWShMcGEpLGVudGl0eVVwZGF0ZUNvbW1hbmQ6VlcocFosW25aXSksZmVlZGJhY2tFbmRwb2ludDooKT0+RlkoTVkpLG1vZGlmeUNoYW5uZWxOb3RpZmljYXRpb25QcmVmZXJlbmNlRW5kcG9pbnQ6KCk9PkZZKE5wYSksbmF0aXZlQXBwRGVlcGxpbmtFbmRwb2ludDooKT0+RlkocG9hKSxvcGVuUG9wdXBBY3Rpb246KCk9PkZZKERwYSkscGhvbmVEaWFsZXJFbmRwb2ludDooKT0+RlkoUHBhKSxwbGF5bGlzdEVkaXRFbmRwb2ludDooKT0+RlkoUnBhKSxzZW5kU21zRW5kcG9pbnQ6KCk9PkZZKFRwYSksc2hhcmVFbnRpdHlFbmRwb2ludDooKT0+RlkoWnBhKSxzaG93QXVkaW9UcmFja1BpY2tlckFjdGlvbkNvbW1hbmQ6Vlcoc1opLApzaG93Q2FwdGlvbkxhbmd1YWdlU2VsZWN0QWN0aW9uQ29tbWFuZDpWVyh0Wiksc2hvd0VuZ2FnZW1lbnRQYW5lbEVuZHBvaW50OigpPT5GWShkcWEpLHNob3dTaGVldENvbW1hbmQ6VlcocVosW18uY0wsJFldKSxzaWduSW5FbmRwb2ludDooKT0+RlkoZnFhKSxzdWJzY3JpYmVFbmRwb2ludDooKT0+RlkoV1kpLHVuZG9GZWVkYmFja0VuZHBvaW50OigpPT5GWShNWSksdW5zdWJzY3JpYmVFbmRwb2ludDooKT0+RlkoV1kpLHVybEVuZHBvaW50OigpPT5GWShocWEpLHVzZXJGZWVkYmFja0VuZHBvaW50OigpPT5GWShpcWEpLHdhdGNoRW5kcG9pbnQ6KCk9PkZZKEVwYSl9O3ZhciB4Wj1fLkwoKHtjaGlsZHJlbjphLEJxOmIsaXNGdWxsc2NyZWVuOmMsc3R5bGU6ZCxhcmlhTGFiZWw6ZX0pPT57dmFyIGY9Xy51RSgiZGlhbG9nIik7Xy5VSigoKT0+e3ZhciBoPSgpPT57fSxrPWYudmFsdWU7ay5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsaCwhMCk7Xy5ZdSgoKT0+e2sucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZm9jdXMiLGgsITApfSl9KTtyZXR1cm4gXy5LKCJkaWFsb2ciLHtlbDpmLGNsYXNzOl8uUCgiZGlhbG9nIiwibW9kZXJuLWRpYWxvZy1sYXlvdXQiLCJtb2Rlcm4tZGlhbG9nIix7c2Nyb2xsYWJsZTpiLCJkaWFsb2ctZnVsbHNjcmVlbiI6Yywicm91bmRlZC1jb250YWluZXIiOigpPT4hYz8uKCl9KSxyb2xlOiJkaWFsb2ciLCJhcmlhLW1vZGFsIjohMCxzdHlsZTpkLCJhcmlhLWxhYmVsIjplfSxhKX0sImZmIik7eFouaWRvbUNvbXBhdD0hMDt2YXIgWnFhPWNsYXNze307dmFyIHFxYT1jbGFzcyBleHRlbmRzIFpxYXtjb25zdHJ1Y3Rvcigpe3ZhciBhPXtZbDpVcGEsV2s6Tll9O3N1cGVyKCk7dGhpcy5vPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3RoaXMuby5pZD0iZ2xvYmFsLWxvYWRlciI7ZG9jdW1lbnQuYm9keS5pbnNlcnRCZWZvcmUodGhpcy5vLGRvY3VtZW50LmJvZHkuZmlyc3RDaGlsZCk7dGhpcy5ZbD1hPy5ZbDt0aGlzLldrPWE/LldrfXJxKCl7cmV0dXJuISF0aGlzLmp9YXN5bmMgb3BlbkRpYWxvZyhhKXt2YXIgYj17c3RhY2s6W10sZXJyb3I6dm9pZCAwLGhhc0Vycm9yOiExfTt0cnl7bGV0IGM9Xy5adHx8e307dGhpcy5ZbD8uKCkmJmF3YWl0IHRoaXMuV2s/LigpO3RoaXMucnEoKSYmdGhpcy5sZCgpO18uVnooYixfLnZNKGMpKTtsZXQgZD1hLlVuLGU9YS5CcSxmPWEuaXNGdWxsc2NyZWVuLGg9YS5uSixrPWEuaXNQZXJzaXN0ZW50LGw9YS5mb2N1c09uQ2xvc2UsbT1hLnJuLG49YS5mSyxwPWEuc3R5bGUscj1hLmFyaWFMYWJlbDsKdGhpcy5CPWE7dGhpcy52PXRoaXMubGQuYmluZCh0aGlzKTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigic3RhdGUtY2hhbmdlIix0aGlzLnYpO3RoaXMuaj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTt0aGlzLmouaWQ9ImRpYWxvZy1jb250YWluZXIiO3RoaXMuai5jbGFzc05hbWU9Xy5hTCgiZGlhbG9nLWNvbnRhaW5lciIse1siZGlhbG9nLWZ1bGxzY3JlZW4iXTpmfSk7KF8uWk8oKXx8ZG9jdW1lbnQuYm9keSkuYXBwZW5kQ2hpbGQodGhpcy5qKTtfLmZOKHRoaXMuaixfLksoXy5JQixudWxsLF8uSyh4Wix7QnE6ZSxpc0Z1bGxzY3JlZW46ZixzdHlsZTpwLGFyaWFMYWJlbDpyfSxfLksoZCxudWxsKSksXy5LKF8uWk4se2xhYmVsOiJkaWFsb2ciLG9uY2xpY2s6KCk9PntofHxrfHx0aGlzLmxkKCl9fSkpKTtfLkpOKHRoaXMuaixsLG0pO24/LigpfWNhdGNoKGMpe2IuZXJyb3I9YyxiLmhhc0Vycm9yPSEwfWZpbmFsbHl7Xy5XeihiKX19bGQoKXt0aGlzLmomJih0aGlzLkIuR2g/LigpLAp0aGlzLkI9dm9pZCAwLHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJzdGF0ZS1jaGFuZ2UiLHRoaXMudiksdGhpcy52PXZvaWQgMCxfLktOKHRoaXMuaiksXy5wQyh0aGlzLmopLHRoaXMuai5yZW1vdmUoKSx0aGlzLmo9dm9pZCAwKX1RdSgpe3RoaXMuby5maXJzdENoaWxkJiZ0aGlzLm8ucmVtb3ZlQ2hpbGQodGhpcy5vLmZpcnN0Q2hpbGQpfX07dmFyIFNXPW5ldyBfLkN0KCJJbm5lclR1YmVUcmFuc3BvcnQiLCJSdjNlM2QiKTtuZXcgXy5DdCgiUGFnZVJlcXVlc3QiLCJSdjNlM2QiKTt2YXIgJHFhPXthdXRvbmF2X29mZl90b2dnbGVfc3Bhbm5lcjpbWzAsMSwzNl1dLGF1dG9uYXZfb25fdG9nZ2xlX3NwYW5uZXI6W1swLDEsMzZdXSxhdXRvbmF2X3BsYXlfY2lyY2xlOltbMCwxLDIwXV0sYXV0b3BsYXk6W1swLDIsMjRdXSxjcmVhdG9yX3N0dWRpb19yZWRfbG9nbzpbWzAsMiwyNF1dLGVxdWFsaXplcjpbWzAsMSwyNF1dLGZ1bGxzY3JlZW46W1sxLDEsMjRdXSxmdWxsc2NyZWVuX2V4aXQ6W1sxLDEsMjRdXSxmdWxsc2NyZWVuX2ZwOltbMSwyLDI0XV0sZ29vZ2xlOltbMCwxLDI0XV0sZ29vZ2xlX2xvZ286W1swLDIsMjRdXSxpbmNvZ25pdG9fY2lyY2xlOltbMCwxLDI0XV0sa2lkc19yZWRfbG9nbzpbWzAsMiwyNF1dLGxvZ286W1swLDIsNjddXSxsb2dvX3dpdGhfdGV4dDpbWzAsMywyMF1dLGxvZ29fd2l0aF90ZXh0X21vbm9jaHJvbWU6W1swLDEsMjBdXSxtdXNpY19yZWRfbG9nbzpbWzAsMiwyNF1dLHBhdXNlX2NpcmNsZTpbWzAsMSwyNF1dLHBhdXNlX291dGxpbmVkOltbMCwKMSwyNF1dLHBpdm90X2xpYnJhcnk6W1swLDEsMjRdXSxwbGF5X2NpcmNsZV9zaG9ydHM6W1swLDIsMjRdXSxwbGF5ZXJfYXV0b3BsYXlfbmV4dDpbWzAsMiwyNF1dLHByZW1pdW06W1swLDIsMjRdXSxwcmVtaXVtX3N0YW5kYWxvbmU6W1swLDIsMjRdXSxwcmVtaXVtX3N0YW5kYWxvbmVfY2Fpcm86W1swLDEsMjRdXSxyaW5nb19sb2dvOltbMCwyLDI0XV0sc2NyZWVuX2xpZ2h0OltbMSwxLDI0XV0sInNob3J0cy1oZWFydCI6W1swLDEsMjRdLFsxLDEsMjRdXSwic2hvcnRzLWhlYXJ0LWdyYWRpZW50IjpbWzAsMSwyNF0sWzEsMSwyNF1dLHNob3J0c19jb21tZW50OltbMCwxLDMyXV0sc2hvcnRzX3NoYXJlOltbMCwxLDMyXV0sc2hvcnRzX3RleHRfbG9nbzpbWzAsMiw3Ml1dLHNob3J0c190aHVtYnNfZG93bjpbWzAsMSwzMl1dLHNob3J0c190aHVtYnNfdXA6W1swLDEsMzJdXSxzcGFyazpbWzAsMSwyNF0sWzEsMSwyNF1dLHNwYXJrX3NlYXJjaDpbWzAsMSwyNF1dLHN1YmRpcmVjdG9yeV9hcnJvd19yaWdodDpbWzEsCjEsMjRdXSx1bnBsdWdnZWRfcmVkX2xvZ286W1swLDIsMjRdXSx2aWRlb195b3V0dWJlOltbMCwxLDI0XV0sd2F0ZXJtYXJrOltbMCwyLDExMF1dLHlvdXR1YmU6W1swLDIsMjRdXSx5b3V0dWJlX2NyZWF0ZV9sb2dvOltbMCwxLDI0XV0seW91dHViZV9wcmVtaXVtX2xvZ29fc2hvcnQ6W1swLDIsMjBdXSx5b3V0dWJlX3ByZW1pdW1fbG9nb19zaG9ydF9tb25vY2hyb21lOltbMCwxLDIwXV0seW91dHViZV9zaG9ydHNfYnJhbmRfMjQ6W1swLDIsMjRdXSx5b3V0dWJlX3Nob3J0c19maWxsX25vX3RyaWFuZ2xlX3JlZF8xNjpbWzAsMSwxNl1dfTt2YXIgeVo9bmV3IE1hcChbWyJwbGF5X2NpcmNsZV9maWxsZWQiLCJhdXRvbmF2X3BsYXlfY2lyY2xlIl0sWyJzZWFyY2giLCJzZWFyY2hfY2Fpcm8iXSxbInRhYl9ob21lIiwiaG9tZV9jYWlybyJdLFsidGFiX3Nob3J0cyIsInlvdXR1YmVfc2hvcnRzX2NhaXJvIl0sWyJhY2NvdW50X2NpcmNsZSIsInBlcnNvbl9jaXJjbGVfY2Fpcm8iXSxbInByZW1pdW1fc3RhbmRhbG9uZSIsInByZW1pdW1fc3RhbmRhbG9uZV9jYWlybyJdXSksYXJhPW5ldyBTZXQoWyJhdWRpb19iYWRnZSIsInBhdXNlIiwicGxheV9hcnJvdyJdKSxZWT1jbGFzcyBleHRlbmRzIHZae2NvbnN0cnVjdG9yKGEpe3N1cGVyKGEpO3RoaXMubz1hfW1mKGEsYil7dmFyIGM9ey4uLmF9O2EuaWNvbk5hbWUudG9Mb3dlckNhc2UoKT09PSJzaG9ydHNfdGh1bWJzX3VwIiYmXy54KCJlbmFibGVfc2hvcnRzX2hlYXJ0X2ljb25faW5fc2hvcnRzX3dhdGNoX3BhZ2UiKSYmKGMuaWNvbk5hbWU9Xy54KCJ1c2Vfd2hpdGVfZmlsbGVkX2hlYXJ0X2ljb25faW5fc2hvcnRzX3dhdGNoX3BhZ2UiKT8KInNob3J0cy1oZWFydCI6InNob3J0cy1oZWFydC1ncmFkaWVudCIpO2FyYS5oYXMoYS5pY29uTmFtZSkmJihjLmljb25TdHlsZT0ieW91dHViZV9maWxsIik7eVouaGFzKGEuaWNvbk5hbWUpJiYhXy54KCJlbmFibGVfd2ViX2RlbGhpX2ljb25zIikmJihhLmljb25OYW1lPXlaLmdldChhLmljb25OYW1lKSk7YS5pY29uTmFtZT09PSJhY2NvdW50X2xpbmtlZCImJihjLmljb25OYW1lPSJjaXJjbGVzX292ZXJsYXBfY2hlY2siLGMuaWNvblN0eWxlPSJ5b3V0dWJlX2ZpbGwiKTthLmljb25OYW1lPT09ImFjY291bnRfdW5saW5rZWQiJiYoYy5pY29uTmFtZT0iY2lyY2xlc19vdmVybGFwIixjLmljb25TdHlsZT0ieW91dHViZV9vdXRsaW5lIik7Xy54KCJlbmFibGVfd2ViX2RlbGhpX2ljb25zIikmJihhLmljb25OYW1lPT09InBsYXlsaXN0X2FkZCImJihjLmljb25OYW1lPSJib29rbWFyayIpLGEuaWNvbk5hbWU9PT0iY2lyY2xlc19vdmVybGFwX2NoZWNrInx8Yy5pY29uTmFtZT09PSJjaXJjbGVzX292ZXJsYXBfY2hlY2siKSYmCihjLmljb25OYW1lPSJhY2NvdW50X2xpbmsiLGMuaWNvblN0eWxlPSJ5b3V0dWJlX2ZpbGwiKTthPShhPXVZKGMuaWNvbk5hbWUpKT97Li4uYyxpY29uTmFtZTphfTpjO2E9Xy54KCJlbmFibGVfd2ViX2RlbGhpX2ljb25zIikmJmEuaWNvbk5hbWU9PT0ieW91dHViZSI/dm9pZCAwOnJZKCRxYSxhLHRoaXMubz8uZUp8fG1xYSxiKTtyZXR1cm4gYT9hOnN1cGVyLm1mKGMsYil9fTtZWVtfLkxuXT1bXy5JbihfLm5PKV07dmFyIHJxYT1jbGFzcyBleHRlbmRzIFVxYXtpc1Zpc2libGUoYSl7dmFyIGI9UHJvbWlzZSxjPWIucmVzb2x2ZTt2YXIgZD1fLm9NKCkuZ2V0U3RhdGUoKS5lbmdhZ2VtZW50UGFuZWw/LnFzO3JldHVybiBjLmNhbGwoYixhPT09ZCl9fTt2YXIgYnJhPWNsYXNzIGV4dGVuZHMga1p7Y29uc3RydWN0b3IoKXtzdXBlcigpO3RoaXMub2JzZXJ2ZXI9bmV3IF8uZkYoMCxhPT57dGhpcy5sb2dWaXNpYmlsaXR5KGEpfSl9b2JzZXJ2ZShhLGIsYyl7Yy5WYnx8Yy5zdGF0ZSE9PSJ2aXNpYmxlInx8KGMuVmI9ITApO3ZhciBkPXtlbGVtZW50OmEsb3B0aW9uOmN9O2lmKCFjLlZifHxjLnN0YXRlIT09InZpc2libGUiKXJldHVybiBkO2lmKHR5cGVvZiBiIT09ImZ1bmN0aW9uIilyZXR1cm4gXy5XaShFcnJvcigiaGVgIit0eXBlb2YgYikpLGQ7YS5fX3Zpc2liaWxpdHlDYWxsYmFjaz1iO3RoaXMub2JzZXJ2ZXIub2JzZXJ2ZShhKTtyZXR1cm4gZH1sb2dWaXNpYmlsaXR5KGEpe2EuX192aXNpYmlsaXR5Q2FsbGJhY2smJnR5cGVvZiBhLl9fdmlzaWJpbGl0eUNhbGxiYWNrPT09ImZ1bmN0aW9uIiYmYS5fX3Zpc2liaWxpdHlDYWxsYmFjayhhLCJ2aXNpYmxlIil9cmYoYSl7ZGVsZXRlIGEuZWxlbWVudC5fX3Zpc2liaWxpdHlDYWxsYmFjazsKdGhpcy5vYnNlcnZlci51bm9ic2VydmUoYS5lbGVtZW50KX1kaXNwb3NlKCl7dGhpcy5vYnNlcnZlci5kaXNjb25uZWN0KCl9fTt2YXIgb3FhPSJJbnRlcnNlY3Rpb25PYnNlcnZlciJpbiB3aW5kb3c/bmV3IE1xYTpuZXcgYnJhO18udVA9Xy5iWjsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5XZCgibWVIOUViIik7CgpfLlhkKCk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uQlA9ZnVuY3Rpb24oYSxiPSExKXt2YXIgYyxkPSgpPT57dmFyIGU9Xy5MQighMCk7Xy5ndisrO3RyeXtjPV8uYkMoYSgpKSxfLklBKCExKX1jYXRjaChmKXt0aHJvdyBfLklBKCEwKSxfLlV1KGYsNCk7fWZpbmFsbHl7Xy5MQihlKX19O2I9Ynx8Xy5adD9fLnV2KGQsYik6Xy5pdyhkKTtyZXR1cm5bYyxiXX07Xy5LQj1fLmxDOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgemlhLEFpYSxCaWEsRWlhLENpYSxEaWEsRmlhO3ppYT1mdW5jdGlvbihhKXtyZXR1cm4gXy5BYShhKSYmYS5ub2RlVHlwZT09MT9hLmdldEF0dHJpYnV0ZSgianNuYW1lIik9PT0iY29GU3hlIjohMX07QWlhPWZ1bmN0aW9uKGEsYil7Yi5pZHx8KGIuaWQ9Im93IitfLmZ3KGIpKTthLnNldEF0dHJpYnV0ZSgianNvd25lciIsYi5pZCk7YS5fX293bmVyPWI7dmFyIGM9Xy5ndyhiLHppYSk7YyYmKF8uR0MuaGFzKGMpfHxfLkdDLnNldChjLFtdKSxfLkdDLmdldChjKS5wdXNoKGEpKTsoYz1fLkZDLmdldChiKSl8fF8uRkMuc2V0KGIsYz1bXSk7Yy5pbmNsdWRlcyhhKXx8Yy5wdXNoKGEpO2Iuc2V0QXR0cmlidXRlKCJfX0lTX09XTkVSIiwhMCl9O0JpYT1mdW5jdGlvbigpe3ZhciBhPV8uQ0EoMSk7YT1fLmN1KGEsXy5MQyk7aWYoIShfLmJ1KGEpfHxhW18uTXZdJiYhYS52bykpcmV0dXJuIGEudmFsdWV9OwpFaWE9ZnVuY3Rpb24oKXt2YXIgYT1fLkNBKDIpLGI9bmV3IFNldCxjPSgpPT57Yi5mb3JFYWNoKGQ9PnZvaWQgZCgpKTtiLmNsZWFyKCl9O18uWXUoYyk7cmV0dXJuWyhkLGUpPT57dmFyIGY9Xy4kdChhKTt0cnl7bGV0IGg9Q2lhKERpYShkKSxlKTtiLmFkZChoKTtyZXR1cm4oKT0+e2goKTtiLmRlbGV0ZShoKX19ZmluYWxseXtfLiR0KGYpfX0sY119O18uQ1A9ZnVuY3Rpb24oe2NoaWxkcmVuOmEscm9vdDpifSl7Xy5vRigoKT0+e3ZhciBbY109RWlhKCk7Yz1jKGIsYSk7Xy5ZdShjKX0pO3JldHVybiBkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiIil9O0NpYT1mdW5jdGlvbihhLGIpe3ZhciBjPUZpYShhKTsoYT1CaWEoKSkmJkFpYShjLGEpO3ZhciBbZCxlXT1fLkJQKGIsITApO2ZvcihsZXQgZiBvZiBkKWMuYXBwZW5kQ2hpbGQoZik7Xy5WQi5sb2coYyk7cmV0dXJuKCk9PntlKCk7Yy5wYXJlbnROb2RlPy5yZW1vdmVDaGlsZChjKX19OwpEaWE9ZnVuY3Rpb24oYSl7aWYodHlwZW9mIGE9PT0ic3RyaW5nIil7YT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKGEpO2lmKCEoMCxfLnByKShhKSl0aHJvdyBFcnJvcigicGBgIitTdHJpbmcoYSkpO3JldHVybiBhfWlmKF8uakIoYSkpcmV0dXJuIGE7aWYoIWEuQ2smJiFhLmx1KXt2YXIgYj1hLmp1O2I9RXJyb3IoIlVjYCIrKHR5cGVvZiBiPT09InN5bWJvbCI/Yi5kZXNjcmlwdGlvbjpiKSk7YS5rdT0hMDt0aHJvdyBiO31yZXR1cm4gYS52YWx1ZX07RmlhPWZ1bmN0aW9uKGEpe3ZhciBiPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUyhhLm5hbWVzcGFjZVVSSSxhLm5hbWVzcGFjZVVSST09PSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI/ImciOiJkaXYiKTtyZXR1cm4gYS5hcHBlbmRDaGlsZChiKX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uRFA9ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLkNBKCksZD1lPT57Xy5vSChjLCgpPT57YihlKX0pfTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihhLGQsdm9pZCAwKTtfLll1KCgpPT57d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoYSxkLHZvaWQgMCl9KX07Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBJaWEsSFAsRlAsR1AsS2lhLE1pYSxMaWEsTFA7SWlhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8ucUEoYS5lbnRpdGllcywic3RyaW5nRW50aXR5IixiKX07CkhQPWZ1bmN0aW9uKGEsYixjKXtpZihhKXt2YXIgZD1hLmxpa2VTdGF0dXM7cmV0dXJuIGI/e3N0eWxlOntzdHlsZVR5cGU6IlNUWUxFX1RFWFQifSx0b2dnbGVkU3R5bGU6e3N0eWxlVHlwZToiU1RZTEVfREVGQVVMVF9BQ1RJVkUifSxpc1RvZ2dsZWQ6ZD09PSJMSUtFIixpc0Rpc2FibGVkOiFhLmxpa2VzQWxsb3dlZCxkZWZhdWx0SWNvbjp7aWNvblR5cGU6Y30sZGVmYXVsdFRleHQ6ZD09PSJMSUtFIj9hLmxpa2VDb3VudFdpdGhVbmxpa2VUZXh0OmEubGlrZUNvdW50VGV4dCx0b2dnbGVkVGV4dDpkPT09IkxJS0UiP2EubGlrZUNvdW50VGV4dDphLmxpa2VDb3VudFdpdGhMaWtlVGV4dCxkZWZhdWx0TmF2aWdhdGlvbkVuZHBvaW50OkZQKGEsIkxJS0UiKSxkZWZhdWx0U2VydmljZUVuZHBvaW50OkdQKGEsIkxJS0UiKSx0b2dnbGVkU2VydmljZUVuZHBvaW50OkdQKGEsIklORElGRkVSRU5UIiksZGVmYXVsdFRvb2x0aXA6Xy5hTihhLmxpa2VDb3VudFRvb2x0aXBUZXh0KSx0b2dnbGVkVG9vbHRpcDpfLmFOKGEubGlrZUNvdW50VG9vbHRpcFRleHQpLAp0YXJnZXRJZDphLnRhcmdldElkfTp7c3R5bGU6e3N0eWxlVHlwZToiU1RZTEVfVEVYVCJ9LHRvZ2dsZWRTdHlsZTp7c3R5bGVUeXBlOiJTVFlMRV9ERUZBVUxUX0FDVElWRSJ9LGlzVG9nZ2xlZDpkPT09IkRJU0xJS0UiLGlzRGlzYWJsZWQ6IWEubGlrZXNBbGxvd2VkLGRlZmF1bHRJY29uOntpY29uVHlwZTpjfSxkZWZhdWx0VGV4dDpkPT09IkRJU0xJS0UiP2EuZGlzbGlrZUNvdW50V2l0aFVuZGlzbGlrZVRleHQ6YS5kaXNsaWtlQ291bnRUZXh0LHRvZ2dsZWRUZXh0OmQ9PT0iRElTTElLRSI/YS5kaXNsaWtlQ291bnRUZXh0OmEuZGlzbGlrZUNvdW50V2l0aERpc2xpa2VUZXh0LGRlZmF1bHROYXZpZ2F0aW9uRW5kcG9pbnQ6RlAoYSwiRElTTElLRSIpLGRlZmF1bHRTZXJ2aWNlRW5kcG9pbnQ6R1AoYSwiRElTTElLRSIpLHRvZ2dsZWRTZXJ2aWNlRW5kcG9pbnQ6R1AoYSwiSU5ESUZGRVJFTlQiKSxkZWZhdWx0VG9vbHRpcDpfLmFOKGEuZGlzbGlrZUNvdW50VG9vbHRpcFRleHQpLHRvZ2dsZWRUb29sdGlwOl8uYU4oYS5kaXNsaWtlQ291bnRUb29sdGlwVGV4dCl9fX07CkZQPWZ1bmN0aW9uKGEsYil7aWYoYj09PSJMSUtFIilyZXR1cm4gYS5saWtlQ29tbWFuZDtpZihiPT09IkRJU0xJS0UiKXJldHVybiBhLmRpc2xpa2VOYXZpZ2F0aW9uRW5kcG9pbnR9O0dQPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGEuc2VydmljZUVuZHBvaW50cz8uZmluZChjPT5fLkIoYyxfLmRPKT8uc3RhdHVzPT09Yil9O18uSVA9ZnVuY3Rpb24oYSl7cmV0dXJue2NvbnRlbnQ6YX19OwpfLkpQPWZ1bmN0aW9uKGEsYixjKXtiPWN8fChiPy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aD8/MCkqSmlhO2E9YS50aHVtYm5haWxzO2lmKCFhKXJldHVybiIiO2M9MDt2YXIgZD1OdW1iZXIuTUFYX1NBRkVfSU5URUdFUixlPTAsZj0tTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVI7Zm9yKGxldCBrPTA7azxhLmxlbmd0aDtrKyspe2xldCBsPWFba10ud2lkdGgtYjtsPj0wJiZsPD1kPyhjPWssZD1sKTpsPDAmJmw+ZiYmKGU9ayxmPWwpfXZhciBoPVtdO2EuZm9yRWFjaChrPT57aC5wdXNoKGsudXJsKX0pO3JldHVybiBkPDEwMHx8ZDwtZj9hW2NdLnVybDphW2VdLnVybH07S2lhPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgXy5CZihiPT57Xy5PRSgoKT0+e2IoYSl9KX0pfTtNaWE9ZnVuY3Rpb24oYSl7YT1hLm1hcChMaWEpO3JldHVybiBfLklmKGEpLnRoZW4oS2lhKX07CkxpYT1mdW5jdGlvbihhKXtyZXR1cm4gYS5jb21wbGV0ZT9fLkt5KCJsb2FkIik6bmV3IF8uQmYoYj0+e2Z1bmN0aW9uIGMoZCl7YS5yZW1vdmVFdmVudExpc3RlbmVyKCJsb2FkIixjKTthLnJlbW92ZUV2ZW50TGlzdGVuZXIoImVycm9yIixjKTtiKGQudHlwZSl9YS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixjKTthLmFkZEV2ZW50TGlzdGVuZXIoImVycm9yIixjKX0pfTtMUD1mdW5jdGlvbihhKXtLUHx8TWlhKFthXSkudGhlbigoKT0+e2lmKCFLUCl7dmFyIGI9KDAsXy5lbCkoKTtfLkFxKCJmdGwiLGIsdm9pZCAwKTtLUD0hMH19KX07Xy5NUD1uZXcgXy5JKCJzd2l0Y2hMaXN0SXRlbVZpZXdNb2RlbCIpO18uTlA9Xy5MKCgpPT57dmFyIGE9Xy53KCJQTEFZRVJfVkFSUyIpLGI9YS51c2VyX2Rpc3BsYXlfbmFtZSxjPWEudXNlcl9kaXNwbGF5X2ltYWdlLGQ9YS51c2VyX2Rpc3BsYXlfY2hhbm5lbF9oYW5kbGUsZT1kJiZfLklQKGQpLGY9KCk9Pl8uQih7bGlzdEl0ZW1WaWV3TW9kZWw6e3RpdGxlOl8uSVAoYiksbGVhZGluZ0FjY2Vzc29yeTp7YXZhdGFyVmlld01vZGVsOntpbWFnZTp7c291cmNlczpbe3VybDpjfV19fX0sc3VidGl0bGU6ZX19LF8uWkMpO3JldHVybiBfLksoImFjY291bnQtaW5mby1tZW51LWl0ZW0iLHtjbGFzczoiYWNjb3VudEluZm9Ib3N0In0sXy5LKF8uQ0Qse2RhdGE6ZixJYTohMCxvblRhcDooKT0+e2QmJl8uQUooXy53TihgQCR7ZH1gKSxmKCksITEpfX0pKX0sInpiIik7Xy5OUC5pZG9tQ29tcGF0PSEwO3ZhciB7TWc6TmlhfT1fLnpHKGE9PmEudGFyZ2V0Py52aWRlb0lkKTt2YXIgT1A9Xy5MKGE9Pnt2YXIge2RhdGE6YixidXR0b25PdmVycmlkZXM6Y309Xy5EQyhhLHtidXR0b25PdmVycmlkZXM6e319KSxbZCxlXT1OaWEoYiksZj0oKT0+SFAoZCgpLCEwLCJTSE9SVFNfTElLRSIpLGg9KCk9PkhQKGQoKSwhMSwiU0hPUlRTX0RJU0xJS0UiKSxrPShsLG0pPT57bS5zdG9wUHJvcGFnYXRpb24oKTtmb3IobGV0IG4gb2YgbCkobD1fLkIobixfLmRPKSkmJmQmJmUoey4uLmQoKSxsaWtlU3RhdHVzOmwuc3RhdHVzfSl9O3JldHVybiBfLksoInl0bS1saWtlLWJ1dHRvbi1yZW5kZXJlciIsbnVsbCxfLksoXy5PLHtBOigpPT5kKCkubGlrZVN0YXR1cyYmISFmKCkmJiEhaCgpLHRoZW46KCk9Pl8uSyhfLklCLG51bGwsXy5LKF8ucU8se2RhdGE6ZixidXR0b25PdmVycmlkZXM6KCk9Pih7dHlwZTpkKCkubGlrZVN0YXR1cz09PSJMSUtFIj8iZmlsbGVkIjoidG9uYWwiLC4uLmMoKX0pLFJrOmt9KSxfLksoXy5PLHtBOigpPT4hZCgpLmhpZGVEaXNsaWtlQnV0dG9uLHRoZW46KCk9PgpfLksoXy5xTyx7ZGF0YTpoLGJ1dHRvbk92ZXJyaWRlczooKT0+KHt0eXBlOmQoKS5saWtlU3RhdHVzPT09IkRJU0xJS0UiPyJmaWxsZWQiOiJ0b25hbCIsLi4uYygpfSksUms6a30pfSkpfSkpfSwiQWIiKTtPUC5pZG9tQ29tcGF0PSEwO3ZhciBQUD1fLkwoKHtkYXRhOmF9KT0+Xy5LKCJ5dG0tbWVudS1uYXZpZ2F0aW9uLWl0ZW0tcmVuZGVyZXIiLG51bGwsXy5LKF8ud08se29uY2xpY2s6Yj0+e3ZhciBjPWEoKTtfLnhOKCkmJl8uek4oKTtfLkFKKGMubmF2aWdhdGlvbkVuZHBvaW50LGMsITEpO18uQihjLm5hdmlnYXRpb25FbmRwb2ludD8uY29tbWFuZE1ldGFkYXRhLF8uencpPy5pZ25vcmVOYXZpZ2F0aW9ufHxiLnN0b3BQcm9wYWdhdGlvbigpfSxyb2xlOigpPT5hKCkubmF2aWdhdGlvbkVuZHBvaW50JiZfLkIoYSgpLm5hdmlnYXRpb25FbmRwb2ludCxfLlZEKT8ibGluayI6dm9pZCAwfSxfLksoXy5NRCx7aWNvbjooKT0+YSgpLmljb24/Lmljb25UeXBlfSksXy5LKF8uSUose2RhdGE6KCk9PmEoKS50ZXh0fSkpKSwiQmIiKTtQUC5pZG9tQ29tcGF0PSEwO3ZhciBRUD1fLkwoKHtkYXRhOmF9KT0+e3ZhciBiPV8ubUcoKTtyZXR1cm4gXy5LKCJ5dG0tbWVudS1zZXJ2aWNlLWl0ZW0tcmVuZGVyZXIiLG51bGwsXy5LKF8ud08se29uY2xpY2s6KCk9Pnt2YXIgYz1hKCksZD1jLnNlcnZpY2VFbmRwb2ludCxlPWMuY29tbWFuZDtkJiZfLkFKKGQsYywhMCx7QmQ6Yn0pO2UmJl8uQUooZSxjLCEwLHtCZDpifSl9fSxfLksoXy5PLHtBOigpPT5hKCkuaWNvbj8uaWNvblR5cGUsdGhlbjooKT0+Xy5LKF8uTUQse2ljb246KCk9PmEoKS5pY29uPy5pY29uVHlwZX0pfSksXy5LKF8uSUose2RhdGE6KCk9PmEoKS50ZXh0LG1hOiEwfSkpKX0sIkNiIik7UVAuaWRvbUNvbXBhdD0hMDt2YXIgUlA9Xy5MKCh7ZGF0YTphLEJkOmJ9KT0+e3ZhciBjPV8uREkoSWlhLCgpPT5hKCk/LnRvZ2dsZU1lbnVTZXJ2aWNlSXRlbUVudGl0eUtleXx8IiIpLGQ9KCk9PmEoKT8udG9nZ2xlTWVudVNlcnZpY2VJdGVtRW50aXR5S2V5PyEhYygpPy52YWx1ZTphKCk/LmlzVG9nZ2xlZCxlPSgpPT5jKCk/e3J1bnM6W3t0ZXh0OmMoKT8udmFsdWV8fCIifV19OmEoKT8udG9nZ2xlZFNlY29uZGFyeVRleHQ7cmV0dXJuIF8uSygieXRtLXRvZ2dsZS1tZW51LXNlcnZpY2UtaXRlbS1yZW5kZXJlciIsbnVsbCxfLksoXy53Tyx7b25jbGljazooKT0+e3ZhciBmPWEoKSxoPWI/LigpLGs9Zi5pc1RvZ2dsZWQ/Zi50b2dnbGVkU2VydmljZUVuZHBvaW50OmYuZGVmYXVsdFNlcnZpY2VFbmRwb2ludDtrJiYoXy5BSihrLGYsITAse0JkOmh9KSxmLnRvZ2dsZU1lbnVTZXJ2aWNlSXRlbUVudGl0eUtleXx8KGYuaXNUb2dnbGVkPSFmLmlzVG9nZ2xlZCkpfX0sXy5LKF8uTUQse2ljb246KCk9PmQoKT9hKCkudG9nZ2xlZEljb24/Lmljb25UeXBlPy50b1N0cmluZygpOgphKCkuZGVmYXVsdEljb24/Lmljb25UeXBlPy50b1N0cmluZygpLGFjdGl2ZTpkfSksXy5LKF8uSUose2RhdGE6KCk9PmQoKT9hKCkudG9nZ2xlZFRleHQ6YSgpLmRlZmF1bHRUZXh0fSksXy5LKF8uTyx7QTooKT0+YSgpLmRlZmF1bHRTZWNvbmRhcnlUZXh0fHxlKCksdGhlbjooKT0+Xy5LKF8uSUose2RhdGE6KCk9PmQoKT9lKCk6YSgpLmRlZmF1bHRTZWNvbmRhcnlUZXh0fSl9KSkpfSwiRGIiKTtSUC5pZG9tQ29tcGF0PSEwO3ZhciBPaWE7Cl8uU1A9Xy5MKCh7ZGF0YTphLGNsYXNzTmFtZTpiLFRkOmMsRWg6ZCxGaDplLGRmOmYsSGE6aCx1bjprLHN0b3BQcm9wYWdhdGlvbjpsLHByZXZlbnREZWZhdWx0Om0sbGI6bixidXR0b25PdmVycmlkZXM6cH0pPT5fLksoInl0bS1tZW51LXJlbmRlcmVyIix7Y2xhc3M6Yn0sXy5LKF8uVyx7ZGF0YTooKT0+YSgpLnRvcExldmVsQnV0dG9uc30se2J1dHRvblJlbmRlcmVyOl8ucE8sbWVudVNlcnZpY2VJdGVtUmVuZGVyZXI6UVAsdG9nZ2xlQnV0dG9uUmVuZGVyZXI6Xy5xTyx0b2dnbGVNZW51U2VydmljZUl0ZW1SZW5kZXJlcjpSUCxsaXN0SXRlbVZpZXdNb2RlbDooe2RhdGE6cn0pPT5fLksoXy5wTCx7ZGF0YTpyLElhOiEwfSksc3dpdGNoTGlzdEl0ZW1WaWV3TW9kZWw6KHtkYXRhOnJ9KT0+Xy5LKF8uZkose2RhdGE6cn0pLG1lbnVOYXZpZ2F0aW9uSXRlbVJlbmRlcmVyOlBQLGxpa2VCdXR0b25SZW5kZXJlcjpPUH0pLF8uSyhPaWEse2RhdGE6YSxUZDpjLEVoOmQsRmg6ZSxkZjpmLApIYTpoLHVuOmssc3RvcFByb3BhZ2F0aW9uOmwscHJldmVudERlZmF1bHQ6bSxsYjpuLGJ1dHRvbk92ZXJyaWRlczpwfSx7bWVudVNlcnZpY2VJdGVtUmVuZGVyZXI6UVAsbWVudU5hdmlnYXRpb25JdGVtUmVuZGVyZXI6UFAsdG9nZ2xlTWVudVNlcnZpY2VJdGVtUmVuZGVyZXI6UlAsbGlzdEl0ZW1WaWV3TW9kZWw6KHtkYXRhOnJ9KT0+Xy5LKF8ucEwse2RhdGE6cixJYTohMH0pLHN3aXRjaExpc3RJdGVtVmlld01vZGVsOih7ZGF0YTpyfSk9Pl8uSyhfLmZKLHtkYXRhOnJ9KSxsaWtlQnV0dG9uUmVuZGVyZXI6T1AsYnV0dG9uUmVuZGVyZXI6Xy5wTyxhY2NvdW50SW5mb01lbnVJdGVtOl8uTlB9KSksIkViIik7Xy5TUC5pZG9tQ29tcGF0PSEwOwpPaWE9Xy5MKCh7ZGF0YTphLGNoaWxkcmVuOmIsLi4uY30pPT5fLksoXy5FRSxudWxsLF8uSyhfLkNFLHt3aGVuOigpPT4oIWEoKS5pdGVtc3x8IWEoKS5pdGVtcy5sZW5ndGgpJiYhKGEoKS5pc0Rpc2FibGVkJiZhKCkuZGlzYWJsZWRDb21tYW5kKX0sKCk9Pm51bGwpLF8uSyhfLkNFLHt3aGVuOigpPT5jLnVuPy4oKX0sKCk9Pl8uSyhfLk1oYSx7aWNvblR5cGU6KCk9PmMuRWg/LigpPz8iTU9SRV9WRVJUIixsYWJlbDooKT0+Xy5XTChfLkRKKGEoKS5hY2Nlc3NpYmlsaXR5KT8/IiIpLGFyaWFMYWJlbDooKT0+Xy5ESihhKCkuYWNjZXNzaWJpbGl0eSl8fCIiLGNhbmNlbEJ1dHRvbkxhYmVsOl8uJE4uQ0FOQ0VMLFRkOigpPT5jLlRkPy4oKSxkZjooKT0+Yy5kZj8uKCksSGE6KCk9PmMuSGE/LigpLHN0b3BQcm9wYWdhdGlvbjooKT0+Yy5zdG9wUHJvcGFnYXRpb24/LigpLHByZXZlbnREZWZhdWx0OigpPT5jLnByZXZlbnREZWZhdWx0Py4oKSxidXR0b25PdmVycmlkZXM6KCk9PmMuYnV0dG9uT3ZlcnJpZGVzPy4oKSwKaXNEaXNhYmxlZDooKT0+YSgpLmlzRGlzYWJsZWQsZGlzYWJsZWRDb21tYW5kOigpPT5hKCkuZGlzYWJsZWRDb21tYW5kfSwoKT0+Xy5LKF8uVyx7ZGF0YTooKT0+YSgpLml0ZW1zfSxiKSkpLF8uSyhfLkRFLG51bGwsKCk9Pl8uSyhfLnpPLHtpY29uVHlwZTooKT0+Yy5FaD8uKCk/PyJNT1JFX1ZFUlQiLGxhYmVsOigpPT5fLkRKKGEoKS5hY2Nlc3NpYmlsaXR5KXx8IiIsY2FuY2VsQnV0dG9uTGFiZWw6Xy4kTi5DQU5DRUwsVGQ6KCk9PmMuVGQ/LigpLEZoOigpPT5jLkZoPy4oKSxkZjooKT0+Yy5kZj8uKCksSGE6KCk9PmMuSGE/LigpLHN0b3BQcm9wYWdhdGlvbjooKT0+Yy5zdG9wUHJvcGFnYXRpb24/LigpLHByZXZlbnREZWZhdWx0OigpPT5jLnByZXZlbnREZWZhdWx0Py4oKSxsYjooKT0+Yy5sYj8uKCksYnV0dG9uT3ZlcnJpZGVzOigpPT5jLmJ1dHRvbk92ZXJyaWRlcz8uKCksaXNEaXNhYmxlZDooKT0+YSgpLmlzRGlzYWJsZWQsZGlzYWJsZWRDb21tYW5kOigpPT5hKCkuZGlzYWJsZWRDb21tYW5kfSwKKCk9Pl8uSyhfLlcse2RhdGE6KCk9PmEoKS5pdGVtc30sYikpKSksIkZiIik7Xy5UUD1fLkwoYT0+Xy5LKF8uTyx7QTooKT0+YS5kYXRhKCkuaXRlbXM/Lmxlbmd0aHx8YS5kYXRhKCkuaXNEaXNhYmxlZCYmYS5kYXRhKCkuZGlzYWJsZWRDb21tYW5kLHRoZW46KCk9Pl8uSyhQaWEsey4uLmF9KX0pLCJHYiIpO18uVFAuaWRvbUNvbXBhdD0hMDsKdmFyIFBpYT1fLkwoYT0+e3ZhciB7ZGF0YTpiLGNsYXNzTmFtZTpjLEVoOmQsc2hvd0ljb246ZSxidXR0b25TaXplOmYsYnV0dG9uT3ZlcnJpZGVzOmh9PV8uREMoYSx7c2hvd0ljb246ITEsYnV0dG9uT3ZlcnJpZGVzOnt9LGJ1dHRvblNpemU6IkwiLEVoOiJNT1JFX1ZFUlQifSksaz1fLlp0O3JldHVybiBfLksoInl0bS1ib3R0b20tc2hlZXQtcmVuZGVyZXIiLHtjbGFzczpjfSxfLksoXy5KSyx7ZGF0YTooKT0+e3ZhciBsPXtHYjooKT0+Xy5LKCJkaXYiLHtjbGFzczoiYm90dG9tLXNoZWV0LW1lZGlhLW1lbnUtaXRlbSJ9LF8uSyhfLlcse2RhdGE6KCk9PmIoKS5pdGVtc30se21lbnVTZXJ2aWNlSXRlbVJlbmRlcmVyOlFQLG1lbnVOYXZpZ2F0aW9uSXRlbVJlbmRlcmVyOlBQLHRvZ2dsZU1lbnVTZXJ2aWNlSXRlbVJlbmRlcmVyOlJQLGxpc3RJdGVtVmlld01vZGVsOih7ZGF0YTptfSk9Pl8uSyhfLnBMLHtkYXRhOm0sSWE6ITB9KSxzd2l0Y2hMaXN0SXRlbVZpZXdNb2RlbDooe2RhdGE6bX0pPT4KXy5LKF8uZkose2RhdGE6bX0pLGxpa2VCdXR0b25SZW5kZXJlcjpPUCxidXR0b25SZW5kZXJlcjpfLnBPLGFjY291bnRJbmZvTWVudUl0ZW06Xy5OUH0pKSxIYTplKCksaXNEaXNhYmxlZDpiKCkuaXNEaXNhYmxlZCxkaXNhYmxlZENvbW1hbmQ6YigpLmRpc2FibGVkQ29tbWFuZH07cmV0dXJue3N0eWxlOiJtb25vIix0eXBlOiJ0ZXh0IixzdGF0ZToiYWN0aXZlIixzaXplOmYoKSxpY29uUG9zaXRpb246Imljb24tb25seSIsYWNjZXNzaWJpbGl0eUxhYmVsOl8uREooYigpPy5hY2Nlc3NpYmlsaXR5KXx8IiIsb25UYXA6bT0+e3ZhciBuPXtzdGFjazpbXSxlcnJvcjp2b2lkIDAsaGFzRXJyb3I6ITF9O3RyeXtfLnhKKF8uaHgoKSx7ZGF0YTpiKCl9KSxsLmZvY3VzT25DbG9zZT1tLmN1cnJlbnRUYXJnZXQsXy5XTSgpJiZtLnN0b3BQcm9wYWdhdGlvbigpLF8uVnoobixfLnZNKGspKSxfLnlOKGwpfWNhdGNoKHApe24uZXJyb3I9cCxuLmhhc0Vycm9yPSEwfWZpbmFsbHl7Xy5XeihuKX19LAouLi5oKCl9fSxpY29uTmFtZTooKT0+ZCgpfSkpfSwiSGIiKTt2YXIgSmlhPV8udS5kZXZpY2VQaXhlbFJhdGlvfHwyO3ZhciBLUD0hMTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigic3RhdGUtbmF2aWdhdGVlbmQiLCgpPT57S1A9ITF9KTsKXy5VUD1fLkwoYT0+e3ZhciB7dGh1bWJuYWlsRGV0YWlsczpiLGNsYXNzTmFtZTpjLGFsdDpkLGFyaWFMYWJlbDplLE1kOmYsVGI6aCxoYzprLGFyaWFIaWRkZW46bCxZYTptLFRhOm59PV8uREMoYSx7VGI6ITAsdGh1bWJuYWlsRGV0YWlsczp2b2lkIDAsY2xhc3NOYW1lOnZvaWQgMCxhbHQ6dm9pZCAwLGFyaWFMYWJlbDp2b2lkIDAsTWQ6dm9pZCAwLGhjOnZvaWQgMCxhcmlhSGlkZGVuOnZvaWQgMCxZYTp2b2lkIDAsVGE6dm9pZCAwfSkscD1fLnZFKCJpbWciKSxbcix0XT1fLkFDKGIpO18uVUooKCk9Pnt2YXIgdj17Li4uYigpfTt0KHYpfSk7Xy5uRSgoKT0+e2lmKHAudmFsdWUpe2xldCB2PXAudmFsdWU7TFAodik7bGV0IHo9YigpO3omJih2LnNyYz1fLkpQKHosdixmKCkpKX19LCJuN2tjNGMiKTtyZXR1cm4gXy5LKF8uTyx7QTooKT0+YigpJiYoZCgpfHxlKCl8fGMoKXx8aygpfHxsKCkpLHRoZW46KCk9Pl8uSyhfLmpGLHtkYXRhOigpPT5yKCksY2xhc3NOYW1lOmMsYWx0OigpPT4KZCgpfHxlKCl8fCIiLGNvbnRlbnRNb2RlOiJDT05URU5UX01PREVfU0NBTEVfQVNQRUNUX0ZJTEwiLGhjOmssYXJpYUhpZGRlbjpsLGNhbGxiYWNrOkxQLFRiOmgsWWE6bSxUYTpufSksVzooKT0+Xy5LKF8uTyx7QTpoLHRoZW46KCk9Pl8uSyhfLmhGLHtkYXRhOmIsY29uZmlnOigpPT4oe2NsYXNzTmFtZTpjKCksYWx0OmQoKXx8ZSgpfHwiIixoYzprKCksYXJpYUhpZGRlbjpsKCksWWE6bSgpLFRhOm4oKX0pLEdsOntTZzoodix6KT0+e0xQKHopO3JldHVybiB2P18uSlAodix6LGYoKSk6IiJ9fSxsYXp5OiEwfSksVzooKT0+Xy5LKCJpbWciLHtlbDpwLGFsdDpkLCJhcmlhLWxhYmVsIjplLGNsYXNzOmMsImRhdGEtZGlzYWJsZWQiOmssImFyaWEtaGlkZGVuIjpsfSl9KX0pfSwiS2IiKTtfLlVQLmlkb21Db21wYXQ9ITA7Xy5WUD1fLkwoYT0+Xy5LKCJ5dG0tdGh1bWJuYWlsLW92ZXJsYXktdGltZS1zdGF0dXMtcmVuZGVyZXIiLHtjbGFzczphLmNsYXNzTmFtZSwidGh1bWJuYWlsLXNpemUiOmEudGh1bWJuYWlsU2l6ZSwiZGF0YS1zdHlsZSI6KCk9PmEuZGF0YT8uKCkuc3R5bGUsImFyaWEtaGlkZGVuIjphLmFyaWFIaWRkZW4sImRhdGEtdHlwZSI6KCk9PmEuZGF0YT8uKCkudHlwZT8ucmVwbGFjZSgiVEhVTUJOQUlMX09WRVJMQVlfVElNRV9TVEFUVVNfVFlQRV8iLCIiKX0sXy5LKF8uVEMse2RhdGE6KCk9Pih7dHlwZTphLmRhdGEoKS5zdHlsZT09PSJMSVZFIj8xOToxOCx0ZXh0Ol8uQ0ooYS5kYXRhKCkudGV4dCksaWNvbjphLmRhdGEoKS5pY29uPy5pY29uVHlwZXx8YS5kYXRhKCkueXRJY29uLHFMOmEuZGF0YSgpLnN0eWxlPT09IlNIT1JUUyJ9KX0pKSwiTGIiKTt2YXIgUWlhO18uV1A9Xy5MKGE9Pnt2YXIge2RldGFpbHM6YixvdmVybGF5OmMsVGI6ZCxoajplLE1kOmZ9PV8uREMoYSx7ZGV0YWlsczp2b2lkIDAsVGI6ITAsaGo6ITF9KSxoPV8uUCgidmlkZW8tdGh1bWJuYWlsLWltZyIseyJjdXN0b20tdGh1bWJuYWlsIjplfSk7cmV0dXJuIF8uSyhfLklCLG51bGwsXy5LKCJkaXYiLHtjbGFzczpfLlAoInZpZGVvLXRodW1ibmFpbC1pbWciLCJ2aWRlby10aHVtYm5haWwtYmciKX0pLF8uSyhfLk8se0E6ZSx0aGVuOigpPT5fLksoUWlhLHtkZXRhaWxzOmIsY2xhc3NOYW1lOmgsVGI6ZCxNZDpmfSl9KSxfLksoXy5VUCx7dGh1bWJuYWlsRGV0YWlsczpiLGNsYXNzTmFtZTpoLFRiOmQsTWQ6ZixhbHQ6IiJ9KSxfLksoImRpdiIse2NsYXNzOiJ2aWRlby1wcmV2aWV3LXNoaW0ifSksYz8uKCkpfSwiTWIiKTsKUWlhPV8uTCgoe2RldGFpbHM6YSxjbGFzc05hbWU6YixUYjpjLE1kOmR9KT0+Xy5LKCJkaXYiLHtjbGFzczoiY3VzdG9tLXRodW1ibmFpbC1iYWNrZ3JvdW5kLWNvbnRhaW5lciIsc3R5bGU6KCk9PntpZihhPy4oKS5zYW1wbGVkVGh1bWJuYWlsQ29sb3Ipe3ZhciB7cmVkOmUsZ3JlZW46ZixibHVlOmh9PWEoKS5zYW1wbGVkVGh1bWJuYWlsQ29sb3I7cmV0dXJuYGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHtlfSwke2Z9LCR7aH0sMSk7YH19fSxfLksoXy5VUCx7dGh1bWJuYWlsRGV0YWlsczphLGNsYXNzTmFtZTpiLGFsdDoiIixNZDpkLFRiOmN9KSksIk5iIik7Xy5YUD1fLkwoYT0+e3ZhciB7dGh1bWJuYWlsRGV0YWlsczpiLG92ZXJsYXk6YyxNZDpkLGNsYXNzTmFtZTplLFRiOmYsaGo6aCxobTprfT1fLkRDKGEse1RiOiEwLGhqOiExLHRodW1ibmFpbERldGFpbHM6dm9pZCAwfSk7cmV0dXJuIF8uSygieXRtLWNvbXBhY3QtdGh1bWJuYWlsIix7Y2xhc3M6Xy5QKCJ2aWRlby10aHVtYm5haWwtY29udGFpbmVyLWNvbXBhY3QiLCJ2aWRlby10aHVtYm5haWwtY29udGFpbmVyLWNvbXBhY3Qtcm91bmRlZCIsZSx7Im9yaWdpbmFsLWFzcGVjdC1yYXRpbyI6KCk9PmIoKT8uaXNPcmlnaW5hbEFzcGVjdFJhdGlvLHN0YWNrZWQ6a30pfSxfLksoXy5XUCx7ZGV0YWlsczpiLG92ZXJsYXk6YyxNZDpkLFRiOmYsaGo6aH0pKX0sIk9iIik7Xy5YUC5pZG9tQ29tcGF0PXtjYWxsYmFja3M6e292ZXJsYXk6ITB9fTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5aUD1mdW5jdGlvbihhKXtyZXR1cm4gYS5zaG9ydHMuVGp9O18uJFA9ZnVuY3Rpb24oYSl7cmV0dXJuIGEuc2hvcnRzLnhqfTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5iUT1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoInBldnR2YyIpO3JldHVybiBfLnJEfTtfLmNRPV8uY0QoKCk9Pl8uYlEoKSwiZGlzbGlrZUJ1dHRvblZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJkaXNsaWtlQnV0dG9uVmlld01vZGVsIiwicGV2dHZjIixfLmJRKX0pO18uZFE9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJpemptUCIpO3JldHVybiBfLnFEfTtfLmVRPV8uY0QoKCk9Pl8uZFEoKSwibGlrZUJ1dHRvblZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJsaWtlQnV0dG9uVmlld01vZGVsIiwiaXpqbVAiLF8uZFEpfSk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uZlE9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJBVDhMVGUiKTtyZXR1cm4gXy5wRH07Xy5nUT1fLmNEKCgpPT5fLmZRKCksIm92ZXJsYXlQcm9kdWN0U3RpY2tlciIpO18uWXQoXy5KRCxhPT57YS5KKCJvdmVybGF5UHJvZHVjdFN0aWNrZXIiLCJBVDhMVGUiLF8uZlEpfSk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7CnZhciBTaWE7Xy5oUT1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoIlhlUlhCZCIpO3JldHVybiBfLmNGfTtTaWE9Xy5jRCgoKT0+Xy5oUSgpLCJyZWVsU291bmRNZXRhZGF0YVZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJyZWVsU291bmRNZXRhZGF0YVZpZXdNb2RlbCIsIlhlUlhCZCIsXy5oUSl9KTtfLmlRPV8uTCgoe2RhdGE6YSxjbGFzc05hbWU6Yn0pPT57dmFyIGM9Xy51RSgicGl2b3QtYnV0dG9uLXZpZXctbW9kZWwiKTtfLlVKKCgpPT57YSgpPy5iYWNrZ3JvdW5kQ29sb3ImJmMudmFsdWUuc2V0QXR0cmlidXRlKCJkYXRhLWJhY2tncm91bmQtY29sb3IiLFN0cmluZyhhKCkuYmFja2dyb3VuZENvbG9yKSl9KTtyZXR1cm4gXy5LKCJwaXZvdC1idXR0b24tdmlldy1tb2RlbCIse2VsOmMsY2xhc3M6Xy5QKCJ5dHdQaXZvdEJ1dHRvblZpZXdNb2RlbEhvc3QiLGIpfSxfLksoXy5uSCx7Y29tbWFuZDooKT0+e3ZhciBkPWEoKTtkPWQub25DbGlja0NvbW1hbmQ/Xy5SRChkLm9uQ2xpY2tDb21tYW5kKTpkLmNvbnRlbnREZXNjcmlwdGlvbj9fLmFRKF8uV0woZC5jb250ZW50RGVzY3JpcHRpb24pKTp2b2lkIDA7cmV0dXJuIGR9LGFyaWFMYWJlbDooKT0+YSgpLmNvbnRlbnREZXNjcmlwdGlvbn0sXy5LKF8uTyx7QTooKT0+YSgpLnRodW1ibmFpbCx0aGVuOmQ9Pl8uSyhfLmpGLHtkYXRhOmQsCmFsdDoiIixjbGFzc05hbWU6Inl0d1Bpdm90QnV0dG9uVmlld01vZGVsSG9zdEltYWdlIn0pLFc6KCk9Pl8uSyhfLk8se0E6KCk9PmEoKS5pY29uLHRoZW46ZD0+Xy5LKF8uTUQse2ljb246KCk9PmQoKS5pY29uVHlwZSxjbGFzc05hbWU6Inl0d1Bpdm90QnV0dG9uVmlld01vZGVsSG9zdEljb24ifSl9KX0pKSl9LCJTYiIpO18ualE9Xy5MKCh7ZGF0YTphLEFmOmJ9KT0+e3ZhciBjPSgpPT4ieXR3UmVlbEFjdGlvbkJhclZpZXdNb2RlbEhvc3RNb2JpbGVBY3Rpb25CdXR0b24iO3JldHVybiBfLksoInJlZWwtYWN0aW9uLWJhci12aWV3LW1vZGVsIix7Y2xhc3M6Xy5QKCJ5dHdSZWVsQWN0aW9uQmFyVmlld01vZGVsSG9zdCIse3l0d1JlZWxBY3Rpb25CYXJWaWV3TW9kZWxIb3N0TW9iaWxlOigpPT4hMCx5dHdSZWVsQWN0aW9uQmFyVmlld01vZGVsSG9zdERlc2t0b3A6KCk9PiExfSl9LF8uSyhfLlcse2RhdGE6KCk9PmEoKS5idXR0b25WaWV3TW9kZWxzfSx7YnV0dG9uVmlld01vZGVsOih7ZGF0YTpkfSk9Pl8uSyhfLlVGLHtjbGFzc05hbWU6YyxkYXRhOmQsYnV0dG9uT3ZlcnJpZGVzOmJ9KSxsaWtlQnV0dG9uVmlld01vZGVsOih7ZGF0YTpkfSk9Pl8uSyhfLmVRLHtjbGFzc05hbWU6YyxkYXRhOmQsQWY6Yn0pLGRpc2xpa2VCdXR0b25WaWV3TW9kZWw6KHtkYXRhOmR9KT0+Xy5LKF8uY1Ese2NsYXNzTmFtZTpjLApkYXRhOmQsQWY6Yn0pLHRvZ2dsZUJ1dHRvblZpZXdNb2RlbDooe2RhdGE6ZH0pPT5fLksoXy5aRix7Y2xhc3NOYW1lOmMsZGF0YTpkLHdpOmJ9KSxwaXZvdEJ1dHRvblZpZXdNb2RlbDooe2RhdGE6ZH0pPT5fLksoXy5pUSx7Y2xhc3NOYW1lOmMsZGF0YTpkfSl9KSl9LCJUYiIpO3ZhciBUaWE7Xy5rUT1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoInM2NDlqIik7cmV0dXJuIF8ubUh9O1RpYT1fLmNEKCgpPT5fLmtRKCksInBsYXllckRpc2Nsb3N1cmVWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigicGxheWVyRGlzY2xvc3VyZVZpZXdNb2RlbCIsInM2NDlqIixfLmtRKX0pO3ZhciBVaWE7Xy5sUT1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoInVTeGRuYiIpO3JldHVybiBfLmZIfTtVaWE9Xy5jRCgoKT0+Xy5sUSgpLCJyZWVsQ2Fyb3VzZWxWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigicmVlbENhcm91c2VsVmlld01vZGVsIiwidVN4ZG5iIixfLmxRKX0pO3ZhciBWaWE7Xy5tUT1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoIldmZjZCZCIpO3JldHVybiBfLmVIfTtWaWE9Xy5jRCgoKT0+Xy5tUSgpLCJyZWVsQ2hhbm5lbEJhclZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJyZWVsQ2hhbm5lbEJhclZpZXdNb2RlbCIsIldmZjZCZCIsXy5tUSl9KTt2YXIgV2lhO18ublE9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJVM216c2QiKTtyZXR1cm4gXy5sSH07V2lhPV8uY0QoKCk9Pl8ublEoKSwicmVlbE11bHRpRm9ybWF0TGlua1ZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJyZWVsTXVsdGlGb3JtYXRMaW5rVmlld01vZGVsIiwiVTNtenNkIixfLm5RKX0pO3ZhciBYaWE7Xy5vUT1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoInlQMEpCZCIpO3JldHVybiBfLmJGfTtYaWE9Xy5jRCgoKT0+Xy5vUSgpLCJzaG9ydHNEaXNjbG9zdXJlc1ZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJzaG9ydHNEaXNjbG9zdXJlc1ZpZXdNb2RlbCIsInlQMEpCZCIsXy5vUSl9KTt2YXIgWWlhO18ucFE9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJScWFKc2QiKTtyZXR1cm4gXy5YSn07WWlhPV8uY0QoKCk9Pl8ucFEoKSwic2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsIik7Xy5ZdChfLkpELGE9PnthLkooInNob3J0c1N1Z2dlc3RlZEFjdGlvblZpZXdNb2RlbCIsIlJxYUpzZCIsXy5wUSl9KTt2YXIgWmlhO18ucVE9YXN5bmMoKT0+e2F3YWl0ICgwLF8uZWgpKCJFM0hlYmMiKTtyZXR1cm4gXy5hRn07WmlhPV8uY0QoKCk9Pl8ucVEoKSwic2hvcnRzVmlkZW9UaXRsZVZpZXdNb2RlbCIpO18uWXQoXy5KRCxhPT57YS5KKCJzaG9ydHNWaWRlb1RpdGxlVmlld01vZGVsIiwiRTNIZWJjIixfLnFRKX0pO18uclE9Xy5MKCh7ZGF0YTphfSk9Pl8uSygieXQtcmVlbC1tZXRhcGFuZWwtdmlldy1tb2RlbCIse2NsYXNzOiJ5dFJlZWxNZXRhcGFuZWxWaWV3TW9kZWxIb3N0In0sXy5LKF8uVyx7ZGF0YTooKT0+YSgpLm1ldGFkYXRhSXRlbXN9LHtiYWRnZVZpZXdNb2RlbDooe2RhdGE6Yn0pPT5fLksoImRpdiIse2NsYXNzOiJ5dFJlZWxNZXRhcGFuZWxWaWV3TW9kZWxNZXRhcGFuZWxJdGVtIn0sXy5LKF8uYUcse2RhdGE6Yn0pKSxwbGF5ZXJEaXNjbG9zdXJlVmlld01vZGVsOih7ZGF0YTpifSk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0UmVlbE1ldGFwYW5lbFZpZXdNb2RlbE1ldGFwYW5lbEl0ZW0ifSxfLksoVGlhLHtkYXRhOmJ9KSkscHJvZHVjdFN0aWNrZXJWaWV3TW9kZWw6KHtkYXRhOmJ9KT0+Xy5LKCJkaXYiLHtjbGFzczoieXRSZWVsTWV0YXBhbmVsVmlld01vZGVsTWV0YXBhbmVsSXRlbSJ9LF8uSyhfLmdRLHtkYXRhOigpPT5iKCkuc3RpY2tlcn0pKSxyZWVsQ2Fyb3VzZWxWaWV3TW9kZWw6KHtkYXRhOmJ9KT0+Cl8uSygiZGl2Iix7Y2xhc3M6Inl0UmVlbE1ldGFwYW5lbFZpZXdNb2RlbE1ldGFwYW5lbEl0ZW0ifSxfLksoVWlhLHtkYXRhOmJ9KSkscmVlbENoYW5uZWxCYXJWaWV3TW9kZWw6KHtkYXRhOmJ9KT0+Xy5LKCJkaXYiLHtjbGFzczoieXRSZWVsTWV0YXBhbmVsVmlld01vZGVsTWV0YXBhbmVsSXRlbSJ9LF8uSyhWaWEse2RhdGE6Yn0pKSxyZWVsTXVsdGlGb3JtYXRMaW5rVmlld01vZGVsOih7ZGF0YTpifSk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0UmVlbE1ldGFwYW5lbFZpZXdNb2RlbE1ldGFwYW5lbEl0ZW0ifSxfLksoV2lhLHtkYXRhOmJ9KSkscmVlbFNvdW5kTWV0YWRhdGFWaWV3TW9kZWw6KHtkYXRhOmJ9KT0+Xy5LKCJkaXYiLHtjbGFzczoieXRSZWVsTWV0YXBhbmVsVmlld01vZGVsTWV0YXBhbmVsSXRlbSJ9LF8uSyhTaWEse2RhdGE6Yn0pKSxzaG9ydHNEaXNjbG9zdXJlc1ZpZXdNb2RlbDooe2RhdGE6Yn0pPT5fLksoImRpdiIse2NsYXNzOiJ5dFJlZWxNZXRhcGFuZWxWaWV3TW9kZWxNZXRhcGFuZWxJdGVtIn0sCl8uSyhYaWEse2RhdGE6Yn0pKSxzaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWw6KHtkYXRhOmJ9KT0+Xy5LKCJkaXYiLHtjbGFzczoieXRSZWVsTWV0YXBhbmVsVmlld01vZGVsTWV0YXBhbmVsSXRlbSJ9LF8uSyhZaWEse2RhdGE6Yn0pKSxzaG9ydHNWaWRlb1RpdGxlVmlld01vZGVsOih7ZGF0YTpifSk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0UmVlbE1ldGFwYW5lbFZpZXdNb2RlbE1ldGFwYW5lbEl0ZW0ifSxfLksoWmlhLHtkYXRhOmJ9KSksdG9nZ2xlQnV0dG9uVmlld01vZGVsOih7ZGF0YTpifSk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0UmVlbE1ldGFwYW5lbFZpZXdNb2RlbE1ldGFwYW5lbEl0ZW0ifSxfLksoXy5aRix7ZGF0YTpifSkpfSkpLCJVYiIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLnNRPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgiZktFOHFkIik7cmV0dXJuIF8ub0R9O18uJGlhPV8uY0QoKCk9Pl8uc1EoKSwiZGlhbG9nVmlld01vZGVsIik7Xy5ZdChfLkpELGE9PnthLkooImRpYWxvZ1ZpZXdNb2RlbCIsImZLRThxZCIsXy5zUSl9KTtfLnRRPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgiUlpla0oiKTtyZXR1cm4gXy5TQ307Xy5hamE9Xy5jRCgoKT0+Xy50USgpLCJzbWFydGltYXRpb25zIik7Xy5ZdChfLkpELGE9PnthLkooInNtYXJ0aW1hdGlvbnMiLCJSWmVrSiIsXy50USl9KTtfLnVRPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgic0RPVEdlIik7cmV0dXJuIF8ubkR9O18uYmphPV8uY0QoKCk9Pl8udVEoKSwicmVlbFBsYXllck92ZXJsYXlWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigicmVlbFBsYXllck92ZXJsYXlWaWV3TW9kZWwiLCJzRE9UR2UiLF8udVEpfSk7Xy52UT1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoImVjdVBBYyIpO3JldHVybiBfLm1EfTtfLmNqYT1fLmNEKCgpPT5fLnZRKCksInBsYXllck92ZXJsYXlJbnRlcmFjdGlvbiIpO18uWXQoXy5KRCxhPT57YS5KKCJwbGF5ZXJPdmVybGF5SW50ZXJhY3Rpb24iLCJlY3VQQWMiLF8udlEpfSk7Xy53UT1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoIkZRZElKZSIpO3JldHVybiBfLmxEfTtfLmRqYT1fLmNEKCgpPT5fLndRKCksInN0aWNrZXJzTGF5ZXIiKTtfLll0KF8uSkQsYT0+e2EuSigic3RpY2tlcnNMYXllciIsIkZRZElKZSIsXy53USl9KTtfLnhRPWFzeW5jKCk9Pnthd2FpdCAoMCxfLmVoKSgibjdlbzIiKTtyZXR1cm4gXy5rRH07Xy5lamE9Xy5jRCgoKT0+Xy54USgpLCJpbnRlcnN0aXRpYWxWaWV3TW9kZWwiKTtfLll0KF8uSkQsYT0+e2EuSigiaW50ZXJzdGl0aWFsVmlld01vZGVsIiwibjdlbzIiLF8ueFEpfSk7Xy55UT1hc3luYygpPT57YXdhaXQgKDAsXy5laCkoIk51aWx1ZSIpO3JldHVybiBfLmpEfTtfLmZqYT1fLmNEKCgpPT5fLnlRKCksInZpZGVvV2l0aENvbnRleHRSZW5kZXJlciIpO18uWXQoXy5KRCxhPT57YS5KKCJ2aWRlb1dpdGhDb250ZXh0UmVuZGVyZXIiLCJOdWlsdWUiLF8ueVEpfSk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp0cnl7Cl8uQVE9Xy5MKCh7T286YSxScDpiLGNoaWxkcmVuOmMsUG46ZCxkaXNhYmxlQW5pbWF0aW9uOmV9KT0+e3ZhciBmPSgpPT4hZT8uKCk7cmV0dXJuIF8uSygieXQtYW5pbWF0ZWQtYWN0aW9uIix7Y2xhc3M6Xy5QKCJ5dEFuaW1hdGVkQWN0aW9uSG9zdCIsZCl9LF8uSygiZGl2Iix7Y2xhc3M6Inl0QW5pbWF0ZWRBY3Rpb25Db250ZW50V2l0aEJhY2tncm91bmQifSxfLksoXy5PLHtBOmYsdGhlbjooKT0+Xy5LKHpRLHtQbjoieXRBbmltYXRlZEFjdGlvbkJhY2tncm91bmRDb250YWluZXIiLHl5OiJ5dEFuaW1hdGVkQWN0aW9uQmFja2dyb3VuZCIsRWM6KCk9Pih7YW5pbWF0aW9uUmVmOmE/LigpLGFuaW1hdGlvbkNvbmZpZzp7bmFtZToiYW5pbWF0ZWQtYWN0aW9ucy1iYWNrZ3JvdW5kIixhdXRvcGxheTohMSxsb29wOiExLHBhdGg6YGh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL3lvdXR1YmUvaW1nL2xvdHRpZS9zdWJzY3JpYmVfYWN0aW9uL3N1YnNjcmliZV9hY3Rpb25fY29udGFpbmVyXyR7Xy55KCkucmVzb2x2ZShfLkluKF8ua0YpKT8uKCk/PwohMT8iZGFyayI6ImxpZ2h0In1fdjUuanNvbmB9fSl9KX0pLGMpLF8uSyhfLk8se0E6Zix0aGVuOigpPT5fLksoelEse0VjOigpPT4oe2FuaW1hdGlvblJlZjpiPy4oKSxhbmltYXRpb25Db25maWc6e25hbWU6ImFuaW1hdGVkLWFjdGlvbnMtZm9yZWdyb3VuZCIsYXV0b3BsYXk6ITEsbG9vcDohMSxwYXRoOmBodHRwczovL3d3dy5nc3RhdGljLmNvbS95b3V0dWJlL2ltZy9sb3R0aWUvc3Vic2NyaWJlX2FjdGlvbi9zdWJzY3JpYmVfYWN0aW9uX3NwYXJrbGVzXyR7Xy55KCkucmVzb2x2ZShfLkluKF8ua0YpKT8uKCk/PyExPyJkYXJrIjoibGlnaHQifV92NC5qc29uYH19KX0pfSkpfSwiVmIiKTtfLkFRLmlkb21Db21wYXQ9ITA7CnZhciB6UT1fLkwoKHtQbjphLHl5OmIsRWM6Y30pPT5fLksoImRpdiIse2NsYXNzOl8uUCgieXRBbmltYXRlZEFjdGlvbkxvdHRpZSIsYSksImFyaWEtaGlkZGVuIjoidHJ1ZSJ9LF8uSyhfLmNNLHtjbGFzc05hbWU6YixkYXRhOmMsYW5pbWF0aW9uTmFtZTooKT0+YygpLmFuaW1hdGlvbkNvbmZpZy5uYW1lfSkpLCJXYiIpOwp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLkJRPWZ1bmN0aW9uKCl7cmV0dXJue2xvdHRpZUVsOnZvaWQgMH19Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewpfLkNRPWZ1bmN0aW9uKGEsYil7Xy5uRSgoKT0+e3ZhciBjPWEoKTtfLkVBKCgpPT52b2lkIGIoYykpfSwiY0tSOXNmIil9Owp9Y2F0Y2goZSl7Xy5fRHVtcEV4Y2VwdGlvbihlKX0KdHJ5ewp2YXIgZ2phLERRLEVRLEZRLGhqYSxpamEsamphLEdRLEhRLGtqYSxJUSxsamEsSlEsS1EsTFEsTVEsTlEsT1EsbWphLFBRLFFRLFJRLG5qYSxTUSxvamEsVFEsVVEscGphLFZRLFdRLFhRLFpRLHFqYSxyamEsJFEsYVIsc2phLHRqYSx1amEsYlIsY1IsdmphLHdqYSx4amEsaFIsZlIsbVIsblIsb1IscFIsZ1IsdFIsdVIsa1IsdlIsbFIsemphLEFqYSx6UixBUixCUixFamEsRFIsSFIsRmphLEdqYSxIamEsSWphLElSLEpSLEpqYSxMUixMamEsTWphLE1SLFFqYSxQamEsUmphLE9qYSxOUixOamEsUFIsT1IsVWphLFdqYSxSUixYamEsU1IsZFMsZVMsZlMsZ1MsZGthLGlrYSxpUyxra2EsalMsa1Msb2thLHBTLHFrYSxya2EscVMsc2thLHRrYSxyUyxzUyx0Uyx1Uyx3Uyx4Uyx2Uyx5Uyx6UyxBUyxCUyxFUyxGUyxDUyxHUyx6a2EsSlMsSFMsQ2thLExTLE1TLE5TLFBTLElTLEZrYSxTUyxHa2EsVVMsV1MsWFMsSGthLFlTLFpTLCRTLGNULGJULElrYSxkVCxKa2EsS2thLExrYSxNa2EsZ1QsCmZULGhULGtULGxULE5rYSxtVCxqVCxpVCxuVCxvVCxwVCxPa2EsclQsUGthLFFrYSx0VCxSa2EsdlQsU2thLFRrYSxzVCxVa2EsVmthLFdrYSxYa2EsWWthLHhULHVULHFULHdULHlULHpULEFULEJULENULERULCRrYSxFVCxIVCxJVCxGVCxjbGEsYmxhLEpULEtULE9ULFBULGVsYSxRVCxUVCxSVCxmbGEsaGxhLGdsYSxpbGEsV1QsWFQsamxhLFpULGtsYSxhVSxiVSxjVSxsbGEsaFUsbmxhLG9sYSxpVSxqVSxsVSxtVSxuVSxvVSxwVSxwbGEscVUscWxhLHJVLHJsYSxzVSx1VSxzbGEsdWxhLHdVLElVLHhVLEtVLEpVLHZsYSx3bGEseGxhLHpsYSxMVSx5bGEsT1UsTVUsQmxhLENsYSxEbGEsUFUsRWxhLEZsYSxHbGEsSGxhLElsYSxKbGEsS2xhLExsYSxNbGEsTmxhLFFVLFJVLFNVLFVVLFBsYSxYVSxZVSxRbGEsUmxhLFpVLFNsYSwkVSxVbGEsYVYsVGxhO2dqYT1mdW5jdGlvbigpe3JldHVybiEhXy5aTygpfTsKRFE9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBNYXRoLm1pbihNYXRoLm1heChhLGIpLGMpfTtFUT1mdW5jdGlvbihhLGIpe2lmKCFiKXJldHVybiBudWxsO3ZhciBjPWI/U3RyaW5nKGIpLnRvVXBwZXJDYXNlKCk6bnVsbDtyZXR1cm4gXy5ndyhhLGZ1bmN0aW9uKGQpe3JldHVybighY3x8ZC5ub2RlTmFtZT09YykmJiEwfSwhMCl9O0ZRPWZ1bmN0aW9uKGEsYixjLGQpe3RoaXMubGVmdD1hO3RoaXMudG9wPWI7dGhpcy53aWR0aD1jO3RoaXMuaGVpZ2h0PWR9O2hqYT1mdW5jdGlvbihhLGIpe2I/Xy5TdChhLCJ5dFBsYXllckNvbnRyb2xzQ29udGFpbmVyUmVuZGVyZWQiKTpfLlR0KGEsInl0UGxheWVyQ29udHJvbHNDb250YWluZXJSZW5kZXJlZCIpfTsKaWphPWZ1bmN0aW9uKCl7Xy5WaSgoKT0+e2lmKCFfLkJxKCJmdGwiKSl7dmFyIGE9Xy5wbygpO3JlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+e3NldFRpbWVvdXQoKCk9PnthIT09Xy5wbygpfHxfLkJxKCJmdGwiKXx8Xy5BcSgiZnRsIix2b2lkIDAsdm9pZCAwKX0sMCl9KX19KSgpfTtqamE9ZnVuY3Rpb24oKXtpZihfLlh6KCkpe3ZhciBhPV8uR2goInBmcC1tYXctcGxheWVyIik7aWYoYSlyZXR1cm4gbmV3IF8ud00oYSl9fTtHUT1mdW5jdGlvbihhKXtyZXR1cm4gXy5DbCgoMCxfLlNhYSkoKSxhKX07CkhRPWZ1bmN0aW9uKCl7aWYoXy54KCJlbmFibGVfYXV0b21vdGl2ZV9mb3JtX2ZhY3Rvcl9jaGVjayIpKXJldHVybiBfLncoIklOTkVSVFVCRV9DT05URVhUIix7fSkuY2xpZW50Py5jbGllbnRGb3JtRmFjdG9yPT09IkFVVE9NT1RJVkVfRk9STV9GQUNUT1IiO3ZhciBhPV8udygiSU5ORVJUVUJFX0NPTlRFWFQiLHt9KTtyZXR1cm4gYS5jbGllbnQ/Lm9zTmFtZSYmYS5jbGllbnQub3NOYW1lPT09IkFuZHJvaWQgQXV0b21vdGl2ZSJ9O2tqYT1mdW5jdGlvbihhLGIpe3JldHVybiBfLnFBKGEuZW50aXRpZXMsImRpc21pc3NTdGF0ZSIsYil9O0lRPWZ1bmN0aW9uKCl7cmV0dXJuIF8uVU0oKT09PSJoYXNodGFnIn07bGphPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8ucUEoYS5lbnRpdGllcywibG9nb0VudGl0eSIsYil9OwpKUT1mdW5jdGlvbigpe3JldHVybiBhPT57dmFyIGI9Xy5MQighMSk7dHJ5e2xldCBjPWEuY2hpbGRyZW47Xy5VQT9jP18uZ04oXy5LKF8uc08sYSxjKSk6Xy5nTihfLksoXy5zTyxhKSk6Xy5JcChuZXcgXy5Yaigia2V0b1RvQzMgY2FsbGVkIG91dHNpZGUgb2YgYSBwYXRjaCIse3RhZ05hbWU6Xy5zTy5aY30pKX1maW5hbGx5e18uTEIoYil9fX07CktRPWZ1bmN0aW9uKGEsYil7aWYoYS5yZXF1ZXN0RnVsbHNjcmVlbilhPWEucmVxdWVzdEZ1bGxzY3JlZW4oYik7ZWxzZSBpZihhLndlYmtpdFJlcXVlc3RGdWxsc2NyZWVuKWE9YS53ZWJraXRSZXF1ZXN0RnVsbHNjcmVlbigpO2Vsc2UgaWYoYS5tb3pSZXF1ZXN0RnVsbFNjcmVlbilhPWEubW96UmVxdWVzdEZ1bGxTY3JlZW4oKTtlbHNlIGlmKGEubXNSZXF1ZXN0RnVsbHNjcmVlbilhPWEubXNSZXF1ZXN0RnVsbHNjcmVlbigpO2Vsc2UgaWYoYS53ZWJraXRFbnRlckZ1bGxzY3JlZW4pYT1hLndlYmtpdEVudGVyRnVsbHNjcmVlbigpO2Vsc2UgcmV0dXJuIFByb21pc2UucmVqZWN0KEVycm9yKCJKZCIpKTtyZXR1cm4gYSBpbnN0YW5jZW9mIFByb21pc2U/YTpQcm9taXNlLnJlc29sdmUoKX07CkxRPWZ1bmN0aW9uKCl7cmV0dXJuISFfLklPKFsiZnVsbHNjcmVlbkVuYWJsZWQiLCJ3ZWJraXRGdWxsc2NyZWVuRW5hYmxlZCIsIm1vekZ1bGxTY3JlZW5FbmFibGVkIiwibXNGdWxsc2NyZWVuRW5hYmxlZCJdLGRvY3VtZW50KX07TVE9ZnVuY3Rpb24oYSl7dmFyIGI7TFEoKT9fLlpPKCk9PWEmJihiPWRvY3VtZW50KTpiPWE7aWYoYiYmKGE9Xy5JTyhbImV4aXRGdWxsc2NyZWVuIiwid2Via2l0RXhpdEZ1bGxzY3JlZW4iLCJtb3pDYW5jZWxGdWxsU2NyZWVuIiwibXNFeGl0RnVsbHNjcmVlbiJdLGIpKSl7YS5jYWxsKGIpaW5zdGFuY2VvZiBQcm9taXNlfHxQcm9taXNlLnJlc29sdmUoKTtyZXR1cm59UHJvbWlzZS5yZXNvbHZlKCl9O05RPWZ1bmN0aW9uKGEpe3JldHVybiBhLmdldE9wdGlvbigiY2FwdGlvbnMiLCJ0cmFjayIpfTtPUT1mdW5jdGlvbihhKXtyZXR1cm4oYT1OUShhKSk/ISFhLmRpc3BsYXlOYW1lOiExfTsKbWphPWZ1bmN0aW9uKGEpe3JldHVybiBfLnZiKGEsYj0+Yi5sYW5ndWFnZUNvZGU9PT0iZW4iKX07UFE9ZnVuY3Rpb24oYSl7aWYoIWEuZ2V0T3B0aW9ucygiY2FwdGlvbnMiKSlyZXR1cm4iIjthPV8uJE8oYSk7aWYoIWEubGVuZ3RoKXJldHVybiIiO3ZhciBiPW1qYShhKTtyZXR1cm4gYj9iLmRpc3BsYXlOYW1lfHwiIjphWzBdLmRpc3BsYXlOYW1lfHwiIn07ClFRPWZ1bmN0aW9uKGEsYixjKXtpZihPUShhKSlfLngoIm13ZWJfZW5hYmxlX3BsYXllcl9jYXB0aW9uc19wZXJzaXN0ZW5jZV9zdGF0ZV9tYWNoaW5lIik/YS5zZXRPcHRpb24oImNhcHRpb25zIiwic3RpY2t5TG9hZGluZyIse3VzZXJJbml0aWF0ZWQ6Y30pOmEuc2V0T3B0aW9uKCJjYXB0aW9ucyIsInN0aWNreUxvYWRpbmciLHt9KSxhLnNldE9wdGlvbigiY2FwdGlvbnMiLCJ0cmFjayIse30pO2Vsc2V7bGV0IGQ9Xy52YihfLiRPKGEpLGU9PmUuZGlzcGxheU5hbWU9PT1iKTthLnNldE9wdGlvbigiY2FwdGlvbnMiLCJ0cmFjayIsZCk7Xy54KCJtd2ViX2VuYWJsZV9wbGF5ZXJfY2FwdGlvbnNfcGVyc2lzdGVuY2Vfc3RhdGVfbWFjaGluZSIpJiZhLnNldE9wdGlvbigiY2FwdGlvbnMiLCJzdGlja3lMb2FkaW5nIix7dXNlckluaXRpYXRlZDpjfSl9fTtSUT1mdW5jdGlvbigpe3dpbmRvdy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgiZnVsbHNjcmVlbnJlcXVlc3QiKSl9OwpuamE9ZnVuY3Rpb24oYSl7dmFyIFtiXT0oMCxfLnVpYSkoYSksW2NdPSgwLF8udmlhKShhKTtyZXR1cm5bXy5OKCgpPT57dmFyIGQ9ey4uLmIoKX07ZC5ub3RpZmljYXRpb25QcmVmZXJlbmNlVG9nZ2xlQnV0dG9uJiYoZC5ub3RpZmljYXRpb25QcmVmZXJlbmNlVG9nZ2xlQnV0dG9uPXsuLi5jKCkubm90aWZpY2F0aW9uUHJlZmVyZW5jZVRvZ2dsZUJ1dHRvbn0pO3JldHVybiBkfSx2b2lkIDAsInV2Uzg3YiIpXX07U1E9ZnVuY3Rpb24oYSl7TVEoYXx8ZG9jdW1lbnQuYm9keSl9OwpvamE9ZnVuY3Rpb24oKXt2YXIgYT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJ2aWRlbyIpO2EmJihSUSgpLEtRKGEpLmNhdGNoKGI9PntpZihiPy5tZXNzYWdlPy5pbmNsdWRlcygiRnVsbHNjcmVlbiBpcyBub3Qgc3VwcG9ydGVkIil8fGI/Lm1lc3NhZ2U/LmluY2x1ZGVzKCJGdWxsc2NyZWVuIGVycm9yIil8fGI/Lm1lc3NhZ2U/LmluY2x1ZGVzKCJmdWxsc2NyZWVuIGVycm9yIikpXy5XaShiKTtlbHNlIHRocm93IGI7fSkpfTtUUT1mdW5jdGlvbihhLGIpe18uWk8oKT8oUlEoKSxTUShiKSk6TFEoKT8oUlEoKSxiPUtRKGJ8fGRvY3VtZW50LmJvZHkse25hdmlnYXRpb25VSToiaGlkZSJ9KSxhPy5kcyYmYj8uY2F0Y2goKCk9Pm51bGwpKTpvamEoKX07ClVRPWZ1bmN0aW9uKGEpe2lmKCFhKXJldHVybiAwO3ZhciBiPWEuZ2V0UHJlc2VudGluZ1BsYXllclR5cGUoKSxjPWEuZ2V0VmlkZW9EYXRhKCk7cmV0dXJuIGMmJmMuaXNMaXZlPyhhPWEuZ2V0UHJvZ3Jlc3NTdGF0ZShiKSxhLnNlZWthYmxlRW5kLWEuc2Vla2FibGVTdGFydCk6YS5nZXREdXJhdGlvbihiKX07cGphPWZ1bmN0aW9uKGEsYixjKXthfHxfLk9FKCgpPT57Yj8ucHJldmlvdXNWaWRlbyhjKX0pfTtWUT1mdW5jdGlvbihhKXt2YXIgYj1hLmdldFBsYXllclN0YXRlKCk7aWYoYj09PTIpcmV0dXJuITA7aWYoYiE9PTMpcmV0dXJuITE7YT1hLmdldFBsYXllclN0YXRlT2JqZWN0KCk7cmV0dXJuIWEuaXNCdWZmZXJpbmcmJiFhLmlzVW5zdGFydGVkJiYhYS5pc1BsYXlpbmcmJmEuaXNQYXVzZWR9OwpXUT1mdW5jdGlvbihhKXt2YXIgYj1hLmdldFBsYXllclN0YXRlKCk7aWYoYj09PTEpcmV0dXJuIGEucGF1c2VWaWRlbygpLCJQTEFZRVJfUEFVU0UiO2lmKGI9PT0tMSlhLnBsYXlWaWRlbygpO2Vsc2UgaWYoYj09PTJ8fFZRKGEpKXJldHVybiBhLnBsYXlWaWRlbygpLCJQTEFZRVJfUExBWSJ9O1hRPWZ1bmN0aW9uKGEpe2E9YSYmYS5nZXRQbGF5bGlzdEluZGV4JiZhLmdldFBsYXlsaXN0SW5kZXgoKT49MDtyZXR1cm4hIV8uWmIod2luZG93LmxvY2F0aW9uLmhyZWYsImxpc3QiKXx8ISFhfTtaUT1mdW5jdGlvbihhKXtZUT1hfTtxamE9ZnVuY3Rpb24oYSl7dmFyIGI9WVE7Yj8oYT1hLnRpbWVTdGFtcCxiPWIudGltZVN0YW1wLGI9aXNOYU4oYSl8fGlzTmFOKGIpPyExOk1hdGguYWJzKGEtYik8PV8ueWlhKTpiPSExO3JldHVybiBifTsKcmphPWZ1bmN0aW9uKGEpe3ZhciBiPWEudGFyZ2V0O2lmKGIpe3ZhciBjPSFiLnBhdXNlZDsocWphKGEpfHxjKSYmc2V0VGltZW91dCgoKT0+e2IucmVtb3ZlRXZlbnRMaXN0ZW5lcigicGF1c2UiLFpRKTtkb2N1bWVudC52aXNpYmlsaXR5U3RhdGU9PT0idmlzaWJsZSImJl8uVk0oKX0sXy54aWEpfX07JFE9ZnVuY3Rpb24oKXtfLngoIm13ZWJfbmV3X2Z1bGxzY3JlZW4iKT9TUShfLkVKKTpfLkVKJiYoTVEoXy5FSiksXy54KCJtd2ViX25ld19mdWxsc2NyZWVuX3Jlc2l6ZSIpfHxfLlhNKCJyZXNpemUiKSl9OwphUj1mdW5jdGlvbigpe3ZhciBhPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoInZpZGVvIik7YSYmKF8uZnImJl8ueCgibXdlYl9pb3NfZnVsbHNjcmVlbl9wbGF5YmFja190cmFuc2l0aW9uIikmJihhLmFkZEV2ZW50TGlzdGVuZXIoInBhdXNlIixaUSksXy5OTShhLCJ3ZWJraXRlbmRmdWxsc2NyZWVuIixyamEpKSxfLlhNKCJmdWxsc2NyZWVucmVxdWVzdCIpLEtRKGEpLmNhdGNoKGI9PntpZihiPy5tZXNzYWdlPy5pbmNsdWRlcygiRnVsbHNjcmVlbiBpcyBub3Qgc3VwcG9ydGVkIil8fGI/Lm1lc3NhZ2U/LmluY2x1ZGVzKCJGdWxsc2NyZWVuIGVycm9yIil8fGI/Lm1lc3NhZ2U/LmluY2x1ZGVzKCJmdWxsc2NyZWVuIGVycm9yIikpXy5XaShiKTtlbHNlIHRocm93IGI7fSkpfTtzamE9ZnVuY3Rpb24oKXt2YXIgYT13aW5kb3cuc2NyZWVuLm9yaWVudGF0aW9uO2lmKGE/LmxvY2smJiFfLk1FKCkmJiFfLlRFKCkpdHJ5e2EubG9jaygibGFuZHNjYXBlIikuY2F0Y2goKCk9Pnt9KX1jYXRjaChiKXt9fTsKdGphPWZ1bmN0aW9uKGEpe18uWE0oImZ1bGxzY3JlZW5yZXF1ZXN0Iik7dmFyIGI9S1EoXy5FSix7bmF2aWdhdGlvblVJOiJoaWRlIn0pO2F8fHNqYSgpO18ueCgibXdlYl9uZXdfZnVsbHNjcmVlbl9yZXNpemUiKXx8Xy5YTSgicmVzaXplIik7cmV0dXJuIGJ9Owp1amE9ZnVuY3Rpb24oYSl7ZG9jdW1lbnQuYm9keS5nZXRBdHRyaWJ1dGUoImZ1bGxzY3JlZW4tcmVqZWN0ZWQiKT09PSJ0cnVlIiYmZG9jdW1lbnQuYm9keS5yZW1vdmVBdHRyaWJ1dGUoImZ1bGxzY3JlZW4tcmVqZWN0ZWQiKTtpZihfLngoIm13ZWJfbmV3X2Z1bGxzY3JlZW4iKSlUUShhLF8uRUopO2Vsc2V7dmFyIGI9Xy5yUCgpLGM7Xy5mcj9jPWFSKCk6TFEoKT9iPyRRKCk6Yz10amEoYT8uekkpOl8ueCgibXdlYl9uYXRpdmVfY29udHJvbF9pbl9mYXV4X2Z1bGxzY3JlZW5fc2hhcmVkIik/Yz1hUigpOl8uWE0oInBsYXllci1mdWxsc2NyZWVuLXRvZ2dsZWQiLHtpc0N1cnJlbnRseUZ1bGxzY3JlZW46Yn0pO2M/LmNhdGNoKGQ9PntpZihkPy5tZXNzYWdlPy5pbmNsdWRlcygiRnVsbHNjcmVlbiBpcyBub3Qgc3VwcG9ydGVkIil8fGQ/Lm1lc3NhZ2U/LmluY2x1ZGVzKCJGdWxsc2NyZWVuIGVycm9yIil8fGQ/Lm1lc3NhZ2U/LmluY2x1ZGVzKCJmdWxsc2NyZWVuIGVycm9yIikpZG9jdW1lbnQuYm9keS5zZXRBdHRyaWJ1dGUoImZ1bGxzY3JlZW4tcmVqZWN0ZWQiLAoidHJ1ZSIpLF8uWE0oInBsYXllci1mdWxsc2NyZWVuLXRvZ2dsZWQiLHtpc0N1cnJlbnRseUZ1bGxzY3JlZW46Yn0pfSk7YT8uZHMmJmM/LmNhdGNoKCgpPT5udWxsKX19O2JSPWZ1bmN0aW9uKGEpe3JldHVybntsaXN0SXRlbVZpZXdNb2RlbDp7dGl0bGU6YS50aXRsZSxzZWxlY3Rpb25UZXh0OmEuc2VsZWN0aW9uVGV4dCxsZWFkaW5nSW1hZ2U6e3NvdXJjZXM6W3tjbGllbnRSZXNvdXJjZTp7aW1hZ2VOYW1lOmEuaWNvblR5cGV9fV19LGlzRGlzYWJsZWQ6YS5pc0Rpc2FibGVkLGlzU2VsZWN0ZWQ6YS5pc1NlbGVjdGVkLHNlbGVjdGlvblN0eWxlOmEuc2VsZWN0aW9uU3R5bGV9fX07CmNSPWZ1bmN0aW9uKGEpe3JldHVybntzd2l0Y2hMaXN0SXRlbVZpZXdNb2RlbDp7dGl0bGU6YS50aXRsZSxsZWFkaW5nSW1hZ2U6e3NvdXJjZXM6W3tjbGllbnRSZXNvdXJjZTp7aW1hZ2VOYW1lOmEuaWNvblR5cGV9fV19LHN3aXRjaGVkT25CeURlZmF1bHQ6YS5rbCxhMTF5TGFiZWxTd2l0Y2hlZE9uOmEuRWssYTExeUxhYmVsU3dpdGNoZWRPZmY6YS5Eayxpc0Rpc2FibGVkOmEuaXNEaXNhYmxlZH19fTt2amE9ZnVuY3Rpb24oYSl7cmV0dXJuIGEuc2hvcnRzLmlzRnVsbHNjcmVlbn07d2phPWZ1bmN0aW9uKGEpe3JldHVybiBhLnNob3J0cy5tan07CnhqYT1mdW5jdGlvbihhLGIpe3ZhciBjPWIubGVuZ3RoO3N3aXRjaChjKXtjYXNlIDA6cmV0dXJuIiI7Y2FzZSAxOnJldHVybiBTdHJpbmcoYlswXSk7Y2FzZSAyOnJldHVybiBhLkQucmVwbGFjZSgiezB9IixTdHJpbmcoYlswXSkpLnJlcGxhY2UoInsxfSIsU3RyaW5nKGJbMV0pKX12YXIgZD1hLkIucmVwbGFjZSgiezB9IixTdHJpbmcoYlswXSkpLnJlcGxhY2UoInsxfSIsU3RyaW5nKGJbMV0pKTtmb3IobGV0IGU9MjtlPGMtMTsrK2UpZD1hLnYucmVwbGFjZSgiezB9IixkKS5yZXBsYWNlKCJ7MX0iLFN0cmluZyhiW2VdKSk7cmV0dXJuIGEuby5yZXBsYWNlKCJ7MH0iLGQpLnJlcGxhY2UoInsxfSIsU3RyaW5nKGJbYy0xXSkpfTsKaFI9ZnVuY3Rpb24oKXt0aGlzLks9bnVsbDt0aGlzLlZkPXRoaXMuTWE9dGhpcy5RYT0hMTt0aGlzLlo9NDA7dGhpcy5vPTE7dGhpcy5oYT0wO3RoaXMuaj0zO3RoaXMueWE9dGhpcy5CPTA7dGhpcy5FYj0hMTt0aGlzLmdhPXRoaXMuTT0iIjt0aGlzLkQ9ZFIuYW87dGhpcy5VPSIiO3RoaXMudj0xO3RoaXMuWT0hMTt0aGlzLkk9W107dGhpcy5GYT10aGlzLmZjPSExO3RoaXMub2E9MDtpZihlUilmUih0aGlzKTtlbHNle3RoaXMuSz1udWxsO3ZhciBhPWRSLmd0O2xldCBlPVswXTt0aGlzLk09Z1IodGhpcyxhLGUpO3ZhciBiPWVbMF07bGV0IGY9LTEsaD0wO3ZhciBjPTAsZD0wO2xldCBrPS0xLGw9YS5sZW5ndGg7Zm9yKGxldCBtPSEwO2VbMF08bCYmbTtlWzBdKyspc3dpdGNoKGEuY2hhckF0KGVbMF0pKXtjYXNlICIjIjpjPjA/ZCsrOmgrKztrPj0wJiZmPDAmJmsrKzticmVhaztjYXNlICIwIjppZihkPjApdGhyb3cgRXJyb3IoIlZkYCIrYSk7YysrO2s+PTAmJmY8MCYmaysrO2JyZWFrOwpjYXNlICIsIjprPjAmJnRoaXMuSS5wdXNoKGspO2s9MDticmVhaztjYXNlICIuIjppZihmPj0wKXRocm93IEVycm9yKCJXZGAiK2EpO2Y9aCtjK2Q7YnJlYWs7Y2FzZSAiRSI6aWYodGhpcy5GYSl0aHJvdyBFcnJvcigiWGRgIithKTt0aGlzLkZhPSEwO3RoaXMueWE9MDtlWzBdKzE8bCYmYS5jaGFyQXQoZVswXSsxKT09IisiJiYoZVswXSsrLHRoaXMuRWI9ITApO2Zvcig7ZVswXSsxPGwmJmEuY2hhckF0KGVbMF0rMSk9PSIwIjspZVswXSsrLHRoaXMueWErKztpZihoK2M8MXx8dGhpcy55YTwxKXRocm93IEVycm9yKCJZZGAiK2EpO209ITE7YnJlYWs7ZGVmYXVsdDplWzBdLS0sbT0hMX1jPT0wJiZoPjAmJmY+PTAmJihjPWYsYz09MCYmYysrLGQ9aC1jLGg9Yy0xLGM9MSk7aWYoZjwwJiZkPjB8fGY+PTAmJihmPGh8fGY+aCtjKXx8az09MCl0aHJvdyBFcnJvcigiWmRgIithKTtkPWgrYytkO3RoaXMuaj1mPj0wP2QtZjowO2Y+PTAmJih0aGlzLkI9aCtjLWYsdGhpcy5CPDAmJih0aGlzLkI9CjApKTt0aGlzLm89KGY+PTA/ZjpkKS1oO3RoaXMuRmEmJih0aGlzLlo9aCt0aGlzLm8sdGhpcy5qPT0wJiZ0aGlzLm89PTAmJih0aGlzLm89MSkpO3RoaXMuSS5wdXNoKE1hdGgubWF4KDAsaykpO3RoaXMuZmM9Zj09MHx8Zj09ZDtiPWVbMF0tYjt0aGlzLmdhPWdSKHRoaXMsYSxlKTtlWzBdPGEubGVuZ3RoJiZhLmNoYXJBdChlWzBdKT09IjsiPyhlWzBdKyssdGhpcy52IT0xJiYodGhpcy5ZPSEwKSx0aGlzLkQ9Z1IodGhpcyxhLGUpLGVbMF0rPWIsdGhpcy5VPWdSKHRoaXMsYSxlKSk6KHRoaXMuRCs9dGhpcy5NLHRoaXMuVSs9dGhpcy5nYSl9fTsKZlI9ZnVuY3Rpb24oYSl7dmFyIGI9e25vdGF0aW9uOiJzdGFuZGFyZCIsbWluaW11bUludGVnZXJEaWdpdHM6TWF0aC5taW4oMjEsTWF0aC5tYXgoMSxhLm8pKX07YS5FYiYmKGIuc2lnbkRpc3BsYXk9ImFsd2F5cyIpO2EuUWE/KGIubWluaW11bVNpZ25pZmljYW50RGlnaXRzPTEsYi5tYXhpbXVtU2lnbmlmaWNhbnREaWdpdHM9TWF0aC5tYXgoMSxNYXRoLm1pbigyMSxhLmhhKSkpOmEuTWEmJihiLm1pbmltdW1GcmFjdGlvbkRpZ2l0cz1NYXRoLm1heCgwLGEuQiksYi5tYXhpbXVtRnJhY3Rpb25EaWdpdHM9TWF0aC5taW4oMjAsTWF0aC5tYXgoMCxhLmopKSk7Yi5zdHlsZT0iZGVjaW1hbCI7dHJ5e2xldCBjOyhjPSJlbi1VUyIucmVwbGFjZSgiXyIsIi0iKSkmJmMgaW4gaVImJihiLm51bWJlcmluZ1N5c3RlbT1pUltjXSk7YS5LPW5ldyBJbnRsLk51bWJlckZvcm1hdChjLGIpfWNhdGNoKGMpe3Rocm93IGEuSz1udWxsLEVycm9yKCJSZGAiK2MpO31qUj1hLlZkPWEuUWE9YS5NYT0hMX07Cm1SPWZ1bmN0aW9uKGEsYil7dmFyIGM9a1IoYixhLmopO2EuaGE+MCYmKGM9bFIoYyxhLmhhLGEuaikpO2M9TWF0aC5yb3VuZChjKTtpZihpc0Zpbml0ZShjKSl7dmFyIGQ9TWF0aC5mbG9vcihrUihjLC1hLmopKTtjPU1hdGguZmxvb3IoYy1rUihkLGEuaikpO2lmKGM8MHx8Yz49a1IoMSxhLmopKWQ9TWF0aC5yb3VuZChiKSxjPTB9ZWxzZSBkPWIsYz0wO3JldHVybntpbnRWYWx1ZTpkLGh3OmN9fTsKblI9ZnVuY3Rpb24oYSxiLGMsZCl7aWYoYS5CPmEuail0aHJvdyBFcnJvcigiU2QiKTtkfHwoZD1bXSk7Yj1tUihhLGIpO3ZhciBlPWIuaW50VmFsdWUsZj1iLmh3LGg9YS5CPjB8fGY+MHx8ITE7Yj1hLkI7aCYmKGI9YS5CKTtmb3IodmFyIGs9IiIsbD1lO2w+MUUyMDspaz0iMCIrayxsPU1hdGgucm91bmQoa1IobCwtMSkpO2s9bCtrO3ZhciBtPWRSLlZuO2w9ZFIuQmsuY29kZVBvaW50QXQoMCk7dmFyIG49ay5sZW5ndGgscD0wO2lmKGU+MHx8Yz4wKXtmb3IoZT1uO2U8YztlKyspZC5wdXNoKFN0cmluZy5mcm9tQ29kZVBvaW50KGwpKTtpZihhLkkubGVuZ3RoPj0yKWZvcihjPTE7YzxhLkkubGVuZ3RoO2MrKylwKz1hLklbY107Yz1uLXA7aWYoYz4wKXtlPWEuSTtwPW49MDt2YXIgcj1kUi5yayx0PWsubGVuZ3RoO2ZvcihsZXQgej0wO3o8dDt6KyspaWYoZC5wdXNoKFN0cmluZy5mcm9tQ29kZVBvaW50KGwrTnVtYmVyKGsuY2hhckF0KHopKSkpLHQtej4xKXt2YXIgdj1lW3BdO2lmKHo8CmMpe2xldCBFPWMtejsodj09PTF8fHY+MCYmRSV2PT09MSkmJmQucHVzaChyKX1lbHNlIHA8ZS5sZW5ndGgmJih6PT09Yz9wKz0xOnY9PT16LWMtbisxJiYoZC5wdXNoKHIpLG4rPXYscCs9MSkpfX1lbHNle2M9aztrPWEuSTtlPWRSLnJrO3Y9Yy5sZW5ndGg7cj1bXTtmb3Iobj1rLmxlbmd0aC0xO24+PTAmJnY+MDtuLS0pe3A9a1tuXTtmb3IodD0wO3Q8cCYmdi10LTE+PTA7dCsrKXIucHVzaChTdHJpbmcuZnJvbUNvZGVQb2ludChsK051bWJlcihjLmNoYXJBdCh2LXQtMSkpKSk7di09cDt2PjAmJnIucHVzaChlKX1kLnB1c2guYXBwbHkoZCxyLnJldmVyc2UoKSl9fWVsc2UgaHx8ZC5wdXNoKFN0cmluZy5mcm9tQ29kZVBvaW50KGwpKTsoYS5mY3x8aCkmJmQucHVzaChtKTtmPVN0cmluZyhmKTtoPWYuc3BsaXQoImUrIik7aC5sZW5ndGg9PTImJihmPVN0cmluZyhsUihwYXJzZUZsb2F0KGhbMF0pLGEuaGEsMSkpLGY9Zi5yZXBsYWNlKCIuIiwiIiksZis9IjAiLnJlcGVhdChwYXJzZUludChoWzFdLAoxMCktZi5sZW5ndGgrMSkpO2EuaisxPmYubGVuZ3RoJiYoZj0iMSIrIjAiLnJlcGVhdChhLmotZi5sZW5ndGgpK2YpO2ZvcihhPWYubGVuZ3RoO2YuY2hhckF0KGEtMSk9PSIwIiYmYT5iKzE7KWEtLTtmb3IoYj0xO2I8YTtiKyspZC5wdXNoKFN0cmluZy5mcm9tQ29kZVBvaW50KGwrTnVtYmVyKGYuY2hhckF0KGIpKSkpfTtvUj1mdW5jdGlvbihhLGIsYyl7Yy5wdXNoKGRSLlluKTtiPDA/KGI9LWIsYy5wdXNoKGRSLmFvKSk6YS5FYiYmYy5wdXNoKGRSLld0KTtiPSIiK2I7dmFyIGQ9ZFIuQms7Zm9yKGxldCBlPWIubGVuZ3RoO2U8YS55YTtlKyspYy5wdXNoKGQpO2E9ZC5jb2RlUG9pbnRBdCgwKS15amE7Zm9yKGQ9MDtkPGIubGVuZ3RoO2QrKyljLnB1c2goU3RyaW5nLmZyb21Db2RlUG9pbnQoYStiLmNvZGVQb2ludEF0KGQpKSl9OwpwUj1mdW5jdGlvbihhKXthPWEuY29kZVBvaW50QXQoMCk7aWYoNDg8PWEmJmE8NTgpcmV0dXJuIGEtNDg7dmFyIGI9ZFIuQmsuY29kZVBvaW50QXQoMCk7cmV0dXJuIGI8PWEmJmE8YisxMD9hLWI6LTF9OwpnUj1mdW5jdGlvbihhLGIsYyl7Zm9yKHZhciBkPSIiLGU9ITEsZj1iLmxlbmd0aDtjWzBdPGY7Y1swXSsrKXt2YXIgaD1iLmNoYXJBdChjWzBdKTtpZihoPT0iJyIpY1swXSsxPGYmJmIuY2hhckF0KGNbMF0rMSk9PSInIj8oY1swXSsrLGQrPSInIik6ZT0hZTtlbHNlIGlmKGUpZCs9aDtlbHNlIHN3aXRjaChoKXtjYXNlICIjIjpjYXNlICIwIjpjYXNlICIsIjpjYXNlICIuIjpjYXNlICI7IjpyZXR1cm4gZDtjYXNlICJcdTAwYTQiOmNbMF0rMTxmJiZiLmNoYXJBdChjWzBdKzEpPT0iXHUwMGE0Ij8oY1swXSsrLGQrPWRSLlduKTooaD1kUi5XbixkKz1oIGluIHFSP3FSW2hdWzFdOmgpO2JyZWFrO2Nhc2UgIiUiOmlmKCFhLlkmJmEudiE9MSl0aHJvdyBFcnJvcigiVGQiKTtpZihhLlkmJmEudiE9MTAwKXRocm93IEVycm9yKCJVZCIpO2Eudj0xMDA7YS5ZPSExO2QrPWRSLmpvO2JyZWFrO2Nhc2UgIlx1MjAzMCI6aWYoIWEuWSYmYS52IT0xKXRocm93IEVycm9yKCJUZCIpO2lmKGEuWSYmCmEudiE9MUUzKXRocm93IEVycm9yKCJVZCIpO2Eudj0xRTM7YS5ZPSExO2QrPWRSLmtvO2JyZWFrO2RlZmF1bHQ6ZCs9aH19cmV0dXJuIGR9O3RSPWZ1bmN0aW9uKGEsYil7YT1hLm9hPT0xP3JSLlNuOnJSLlZzO2E9PW51bGwmJihhPXJSLlNuKTtpZihiPDMpcmV0dXJuIHNSO2I9TWF0aC5taW4oMTQsYik7dmFyIGM9YVtrUigxLGIpXTtmb3IoLS1iOyFjJiZiPj0zOyljPWFba1IoMSxiKV0sYi0tO2lmKCFjKXJldHVybiBzUjtjPWMub3RoZXI7dmFyIGQ9YT0iIixlPWMuaW5kZXhPZigiOyIpO2U+PTAmJihjPWMuc3Vic3RyaW5nKDAsZSksZT1jLnN1YnN0cmluZyhlKzEpKSYmKGQ9LyhbXjBdKikoMCspKC4qKS8uZXhlYyhlKSxhPWRbMV0sZD1kWzNdKTtyZXR1cm4gYyYmYyE9IjAiPyhjPS8oW14wXSopKDArKSguKikvLmV4ZWMoYykpP3twbDpiKzEtKGNbMl0ubGVuZ3RoLTEpLHdtOmEseG06ZCxwcmVmaXg6Y1sxXSxzdWZmaXg6Y1szXX06c1I6c1J9Owp1Uj1mdW5jdGlvbihhKXtpZighaXNGaW5pdGUoYSkpcmV0dXJuIGE+MD9hOjA7Zm9yKHZhciBiPTA7KGEvPTEwKT49MTspYisrO3JldHVybiBifTtrUj1mdW5jdGlvbihhLGIpe2lmKCFhfHwhaXNGaW5pdGUoYSl8fGI9PTApcmV0dXJuIGE7YT1TdHJpbmcoYSkuc3BsaXQoImUiKTtyZXR1cm4gcGFyc2VGbG9hdChhWzBdKyJlIisocGFyc2VJbnQoYVsxXXx8MCwxMCkrYikpfTt2Uj1mdW5jdGlvbihhLGIpe3JldHVybiBhJiZpc0Zpbml0ZShhKT9rUihNYXRoLnJvdW5kKGtSKGEsYikpLC1iKTphfTtsUj1mdW5jdGlvbihhLGIsYyl7aWYoIWEpcmV0dXJuIGE7Yj1iLXVSKGEpLTE7cmV0dXJuIGI8LWM/dlIoYSwtYyk6dlIoYSxiKX07emphPWZ1bmN0aW9uKGEpe3JldHVybiBhJTEwPT0xJiZhJTEwMCE9MTE/Im9uZSI6YSUxMD09MiYmYSUxMDAhPTEyPyJ0d28iOmElMTA9PTMmJmElMTAwIT0xMz8iZmV3Ijoib3RoZXIifTsKQWphPWZ1bmN0aW9uKGEsYil7dmFyIGM9YXwwO2lmKHZvaWQgMD09PWIpe2I9TWF0aDt2YXIgZD1iLm1pbjtsZXQgZT1hKyIiLGY9ZS5pbmRleE9mKCIuIik7Yj1kLmNhbGwoYixmPT09LTE/MDplLmxlbmd0aC1mLTEsMyl9ZD1NYXRoLnBvdygxMCxiKTthPXtGQjpiLGY6KGEqZHwwKSVkfTtyZXR1cm4gYz09MSYmYS5GQj09MD8ib25lIjoib3RoZXIifTt6Uj1mdW5jdGlvbihhKXt0aGlzLnY9YTt0aGlzLm89dGhpcy5qPXRoaXMuRD1udWxsO2E9ZFI7dmFyIGI9clI7aWYod1IhPT1hfHx4UiE9PWIpd1I9YSx4Uj1iLHlSPW5ldyBoUjt0aGlzLks9eVJ9OwpBUj1mdW5jdGlvbihhLGIsYyxkLGUpe2ZvcihsZXQgcD0wO3A8Yi5sZW5ndGg7cCsrKXt2YXIgZj12b2lkIDA7c3dpdGNoKGJbcF0udHlwZSl7Y2FzZSA0OmUucHVzaChiW3BdLnZhbHVlKTticmVhaztjYXNlIDM6Zj1iW3BdLnZhbHVlO3ZhciBoPWEsaz1lLGw9Y1tmXTtsPT09dm9pZCAwP2sucHVzaCgiVW5kZWZpbmVkIHBhcmFtZXRlciAtICIrZik6KGguai5wdXNoKGwpLGsucHVzaChoLkIoaC5qKSkpO2JyZWFrO2Nhc2UgMjpmPWJbcF0udmFsdWU7aD1hO2s9YztsPWQ7dmFyIG09ZSxuPWYuc2k7a1tuXT09PXZvaWQgMD9tLnB1c2goIlVuZGVmaW5lZCBwYXJhbWV0ZXIgLSAiK24pOihuPWZba1tuXV0sbj09PXZvaWQgMCYmKG49Zi5vdGhlciksQVIoaCxuLGssbCxtKSk7YnJlYWs7Y2FzZSAwOmY9YltwXS52YWx1ZTtCUihhLGYsYyxDUixkLGUpO2JyZWFrO2Nhc2UgMTpmPWJbcF0udmFsdWUsQlIoYSxmLGMsQmphLGQsZSl9fX07CkJSPWZ1bmN0aW9uKGEsYixjLGQsZSxmKXt2YXIgaD1iLnNpLGs9Yi5HbyxsPStjW2hdO2lzTmFOKGwpP2YucHVzaCgiVW5kZWZpbmVkIG9yIGludmFsaWQgcGFyYW1ldGVyIC0gIitoKTooaz1sLWssaD1iW2NbaF1dLGg9PT12b2lkIDAmJihkPWQoTWF0aC5hYnMoaykpLGg9YltkXSxoPT09dm9pZCAwJiYoaD1iLm90aGVyKSksYj1bXSxBUihhLGgsYyxlLGIpLGM9Yi5qb2luKCIiKSxlP2YucHVzaChjKTooYT1hLksuZm9ybWF0KGspLGYucHVzaChjLnJlcGxhY2UoLyMvZyxhKSkpKX07RWphPWZ1bmN0aW9uKGEsYil7dmFyIGM9YS5ELGQ9YS5CLmJpbmQoYSk7Yj1iLnJlcGxhY2UoQ2phLGZ1bmN0aW9uKCl7Yy5wdXNoKCInIik7cmV0dXJuIGQoYyl9KTtyZXR1cm4gYj1iLnJlcGxhY2UoRGphLGZ1bmN0aW9uKGUsZil7Yy5wdXNoKGYpO3JldHVybiBkKGMpfSl9OwpEUj1mdW5jdGlvbihhKXt2YXIgYj0wLGM9W10sZD1bXSxlPS9be31dL2c7ZS5sYXN0SW5kZXg9MDtmb3IodmFyIGY7Zj1lLmV4ZWMoYSk7KXtsZXQgaD1mLmluZGV4O2ZbMF09PSJ9Ij8oYy5wb3AoKSxjLmxlbmd0aD09MCYmKGY9e3R5cGU6MX0sZi52YWx1ZT1hLnN1YnN0cmluZyhiLGgpLGQucHVzaChmKSxiPWgrMSkpOihjLmxlbmd0aD09MCYmKGI9YS5zdWJzdHJpbmcoYixoKSxiIT0iIiYmZC5wdXNoKHt0eXBlOjAsdmFsdWU6Yn0pLGI9aCsxKSxjLnB1c2goInsiKSl9YT1hLnN1YnN0cmluZyhiKTthIT0iIiYmZC5wdXNoKHt0eXBlOjAsdmFsdWU6YX0pO3JldHVybiBkfTsKSFI9ZnVuY3Rpb24oYSxiKXt2YXIgYz1bXTtiPURSKGIpO2ZvcihsZXQgZT0wO2U8Yi5sZW5ndGg7ZSsrKXtsZXQgZj17fTtpZigwPT1iW2VdLnR5cGUpZi50eXBlPTQsZi52YWx1ZT1iW2VdLnZhbHVlO2Vsc2UgaWYoMT09YltlXS50eXBlKXt2YXIgZD1iW2VdLnZhbHVlO3N3aXRjaChFUi50ZXN0KGQpPzA6RlIudGVzdChkKT8xOkdSLnRlc3QoZCk/MjovXlxzKlx3K1xzKi8udGVzdChkKT8zOjUpe2Nhc2UgMjpmLnR5cGU9MjtmLnZhbHVlPUZqYShhLGJbZV0udmFsdWUpO2JyZWFrO2Nhc2UgMDpmLnR5cGU9MDtmLnZhbHVlPUdqYShhLGJbZV0udmFsdWUpO2JyZWFrO2Nhc2UgMTpmLnR5cGU9MTtmLnZhbHVlPUhqYShhLGJbZV0udmFsdWUpO2JyZWFrO2Nhc2UgMzpmLnR5cGU9MyxmLnZhbHVlPWJbZV0udmFsdWV9fWMucHVzaChmKX1yZXR1cm4gY307CkZqYT1mdW5jdGlvbihhLGIpe3ZhciBjPSIiO2I9Yi5yZXBsYWNlKEdSLGZ1bmN0aW9uKGYsaCl7Yz1oO3JldHVybiIifSk7dmFyIGQ9e307ZC5zaT1jO2I9RFIoYik7Zm9yKHZhciBlPTA7ZTxiLmxlbmd0aDspe2xldCBmPWJbZV0udmFsdWU7ZSsrO2xldCBoOzE9PWJbZV0udHlwZSYmKGg9SFIoYSxiW2VdLnZhbHVlKSk7ZFtmLnJlcGxhY2UoL1xzL2csIiIpXT1oO2UrK31yZXR1cm4gZH07R2phPWZ1bmN0aW9uKGEsYil7dmFyIGM9IiIsZD0wO2I9Yi5yZXBsYWNlKEVSLGZ1bmN0aW9uKGgsayxsKXtjPWs7bCYmKGQ9cGFyc2VJbnQobCwxMCkpO3JldHVybiIifSk7dmFyIGU9e307ZS5zaT1jO2UuR289ZDtiPURSKGIpO2Zvcih2YXIgZj0wO2Y8Yi5sZW5ndGg7KXtsZXQgaD1iW2ZdLnZhbHVlO2YrKztsZXQgazsxPT1iW2ZdLnR5cGUmJihrPUhSKGEsYltmXS52YWx1ZSkpO2VbaC5yZXBsYWNlKC9ccyooPzo9KT8oXHcrKVxzKi8sIiQxIildPWs7ZisrfXJldHVybiBlfTsKSGphPWZ1bmN0aW9uKGEsYil7dmFyIGM9IiI7Yj1iLnJlcGxhY2UoRlIsZnVuY3Rpb24oZixoKXtjPWg7cmV0dXJuIiJ9KTt2YXIgZD17fTtkLnNpPWM7ZC5Hbz0wO2I9RFIoYik7Zm9yKHZhciBlPTA7ZTxiLmxlbmd0aDspe2xldCBmPWJbZV0udmFsdWU7ZSsrO2xldCBoOzE9PWJbZV0udHlwZSYmKGg9SFIoYSxiW2VdLnZhbHVlKSk7ZFtmLnJlcGxhY2UoL1xzKig/Oj0pPyhcdyspXHMqLywiJDEiKV09aDtlKyt9cmV0dXJuIGR9O0lqYT1mdW5jdGlvbihhLGIpe3N3aXRjaChiKXtkZWZhdWx0OmNhc2UgInllYXJzIjpyZXR1cm4gYS5qLllFQVI7Y2FzZSAibW9udGhzIjpyZXR1cm4gYS5qLk1PTlRIO2Nhc2UgIndlZWtzIjpyZXR1cm4gYS5qLldFRUs7Y2FzZSAiZGF5cyI6cmV0dXJuIGEuai5EQVk7Y2FzZSAiaG91cnMiOnJldHVybiBhLmouSE9VUjtjYXNlICJtaW51dGVzIjpyZXR1cm4gYS5qLk1JTlVURTtjYXNlICJzZWNvbmRzIjpyZXR1cm4gYS5qLlNFQ09ORH19OwpJUj1mdW5jdGlvbihhLGIsYyl7YT1JamEoYSxjKTtyZXR1cm4oYT1hLkxPTkchPXZvaWQgMD9hLkxPTkc6YS5OQVJST1chPXZvaWQgMD9hLk5BUlJPVzphLlNIT1JUKT8obmV3IHpSKCJ7RFVSQVRJT05fVkFMVUUscGx1cmFsLCIrYSsifSIpKS5mb3JtYXQoe0RVUkFUSU9OX1ZBTFVFOmJ9KToiIn07SlI9ZnVuY3Rpb24oKXtfLkh6KCk7cmV0dXJuIV8uQ3ooMTQxKSYmXy53KCJBVVRPTkFWX09GRl9CWV9ERUZBVUxUIik/ITE6IV8uQ3ooMTQwKX07SmphPWZ1bmN0aW9uKCl7aWYoIUtSKXt2YXIgYT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjcGxheWVyLnNrZWxldG9uIik7YSYmKF8uRGQoYSksS1I9ITApfX07TFI9ZnVuY3Rpb24oYSxiLGMsZD0hMSl7Yj1uZXcgS2phKGJ8fGEsY3x8YSk7cmV0dXJue3g6YS54K0xqYShiLGQpKi4yLHk6YS55K01qYShiLGQpKi4yfX07TGphPWZ1bmN0aW9uKGEsYj0hMSl7cmV0dXJuIGI/YS5qKi0xOmEuan07Ck1qYT1mdW5jdGlvbihhLGI9ITEpe3JldHVybiBiP2EubyotMTphLm99O01SPWZ1bmN0aW9uKGEpe2lmKCFhKXJldHVybiExO3ZhciBiPWEuZXJyb3JTY3JlZW4/LnBsYXllckxlZ2FjeURlc2t0b3BZcGNUcmFpbGVyUmVuZGVyZXI/P2EuZXJyb3JTY3JlZW4/LnlwY1RyYWlsZXJSZW5kZXJlcjtyZXR1cm4hKGEuc3RhdHVzIT09Ik9LIiYmYS5zdGF0dXMhPT0iTElWRV9TVFJFQU1fT0ZGTElORSIpfHwhIWJ9OwpRamE9ZnVuY3Rpb24oe3JlbmRlcmVyOmEsc3Vic2NyaWJlZDpiLGlzT3ZlcmxheTpjLHN0b3BQcm9wYWdhdGlvbjpkfSl7dmFyIGU9TmphKGEsYik7YyYmKGUuc3R5bGU9Im92ZXJsYXkiKTthOnN3aXRjaChhLnN0eWxlPy5zdHlsZVR5cGUpe2Nhc2UgIkNPTVBBQ1RfR1JBWSI6Y2FzZSAiQ09NUEFDVF9SRUQiOmM9e3NpemU6IlMifTticmVhayBhO2RlZmF1bHQ6Yz17c2l6ZToiTSJ9fWM9ey4uLmN9O3ZhciBmPU9qYShhLGIpO3ZhciBoPShoPWI/YS5zdWJzY3JpYmVkQnV0dG9uVGV4dDphLnVuc3Vic2NyaWJlZEJ1dHRvblRleHQpP18uQUYoaCk6dm9pZCAwO3JldHVybnsuLi5lLC4uLmMsZm9jdXNlZDohMSx0b2dnbGVkOmIsYWNjZXNzaWJpbGl0eUxhYmVsOmYsV2E6aCxvblRhcDpQamEoYSxiLGQpfX07ClBqYT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIGQ9Pnt2YXIgZT1SamEoYSxiKTtpZihlKXtsZXQgZj17c3Vic2NyaWJlQnV0dG9uUmVuZGVyZXI6YX07Xy5kSyhlLHtmb3JtOntjdXJyZW50RGF0YTpmLHNvdXJjZURhdGE6ZixldmVudDpkfX0pfWMmJmQuc3RvcFByb3BhZ2F0aW9uKCl9fTtSamE9ZnVuY3Rpb24oYSxiKXtpZihhLnNpZ25JbkVuZHBvaW50JiYhXy54KCJ3ZWJfc3Vic2NyaWJlX3NpZ25faW5fZW5kcG9pbnRfa2lsbHN3aXRjaCIpKXJldHVybiBhLnNpZ25JbkVuZHBvaW50O2lmKGIpe2lmKGEuc2VydmljZUVuZHBvaW50cylyZXR1cm4gYS5zZXJ2aWNlRW5kcG9pbnRzWzFdO2lmKGEub25VbnN1YnNjcmliZUVuZHBvaW50cylyZXR1cm4gYS5vblVuc3Vic2NyaWJlRW5kcG9pbnRzWzBdfWVsc2V7aWYoYS5zZXJ2aWNlRW5kcG9pbnRzKXJldHVybiBhLnNlcnZpY2VFbmRwb2ludHNbMF07aWYoYS5vblN1YnNjcmliZUVuZHBvaW50cylyZXR1cm4gYS5vblN1YnNjcmliZUVuZHBvaW50c1swXX19OwpPamE9ZnVuY3Rpb24oYSxiKXtiPWI/YS51bnN1YnNjcmliZUFjY2Vzc2liaWxpdHk/LmFjY2Vzc2liaWxpdHlEYXRhPy5sYWJlbDphLnN1YnNjcmliZUFjY2Vzc2liaWxpdHk/LmFjY2Vzc2liaWxpdHlEYXRhPy5sYWJlbDtyZXR1cm4gYS5sb25nU3Vic2NyaWJlckNvdW50VGV4dD9bYixfLmFOKGEubG9uZ1N1YnNjcmliZXJDb3VudFRleHQpXS5maWx0ZXIoYz0+Yykuam9pbigiICIpOmJ9O05SPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGJ8fGE/LmlzQ2hhbm5lbERlbGVnYXRlPyJkaXNhYmxlZCI6ImFjdGl2ZSJ9OwpOamE9ZnVuY3Rpb24oYSxiKXtzd2l0Y2goYS5zdHlsZT8uc3R5bGVUeXBlKXtjYXNlICJDT01QQUNUX0dSQVkiOnJldHVybntzdHlsZToibW9ubyIsdHlwZToidG9uYWwiLHN0YXRlOk5SKGEpfTtjYXNlICJNRURJVU1fR1JBWSI6cmV0dXJue3N0eWxlOiJtb25vIix0eXBlOiJ0b25hbCIsc3RhdGU6TlIoYSl9O2Nhc2UgIlZJU0lCTFlfRElTQUJMRUQiOnJldHVybntzdHlsZToibW9ubyIsdHlwZToidGV4dCIsc3RhdGU6TlIoYSwhMCl9O2Nhc2UgIk9WRVJMQVkiOnJldHVybiBiP3tzdHlsZToib3ZlcmxheSIsdHlwZToidG9uYWwiLHN0YXRlOk5SKGEpfTp7c3R5bGU6Im92ZXJsYXkiLHR5cGU6ImZpbGxlZCIsc3RhdGU6TlIoYSl9O2RlZmF1bHQ6cmV0dXJuIGI/e3N0eWxlOiJtb25vIix0eXBlOiJ0b25hbCIsc3RhdGU6TlIoYSl9OntzdHlsZToibW9ubyIsdHlwZToiZmlsbGVkIixzdGF0ZTpOUihhKX19fTsKUFI9ZnVuY3Rpb24oYSl7dmFyIGI9YS5ob3Vyc3x8MDt2YXIgYz1hLm1pbnV0ZXN8fDAsZD1hLnNlY29uZHN8fDA7Yj1kK2MqNjArYiozNjAwKyhhLmRheXN8fDApKjg2NDAwKyhhLndlZWtzfHwwKSo2MDQ4MDArKGEubW9udGhzfHwwKSoyNjI5ODAwKyhhLnllYXJzfHwwKSozMTU1NzYwMDtiPD0wP2I9e2hvdXJzOjAsbWludXRlczowLHNlY29uZHM6MH06KGE9YixiPU1hdGguZmxvb3IoYS8zNjAwKSxhJT0zNjAwLGM9TWF0aC5mbG9vcihhLzYwKSxkPU1hdGguZmxvb3IoYSU2MCksYj17aG91cnM6YixtaW51dGVzOmMsc2Vjb25kczpkfSk7dmFyIHtob3VyczplPTAsbWludXRlczpmPTAsc2Vjb25kczpoPTB9PWI7Yj1bXTtpZihlPjApe2M9T1IoKS5mb3JtYXQoe2hvdXJzOmV9KTtpZighImJlIGJnIGVzIGV0IGh1IGl0IGthIGx2IHBsIHB0LVBUIHNsIHNxIi5zcGxpdCgiICIpLmluY2x1ZGVzKFopfHxlPjk5OTkpe2E9Yy5yZXBsYWNlO2Q9ZS50b1N0cmluZygpO3ZhciBrPShuZXcgSW50bC5OdW1iZXJGb3JtYXQoImVuLXUtbnUtbGF0biIpKS5mb3JtYXQoZSk7CnZhciBsPVsiZnIiXTtsZXQgbT0iYXogYnMgY2EgZGEgZGUgZWwgZXMgZXUgZ2wgaHIgaWQgaXMgaXQga20gbG8gbWsgbmwgcHQtQlIgcm8gc2wgc3Igc3ItTGF0biB0ciB2aSIuc3BsaXQoIiAiKTtrPSJhZiBiZSBiZyBjcyBldCBmaSBmci1DQSBodSBoeSBrYSBrayBreSBsdCBsdiBubyBwbCBwdC1QVCBydSBzayBzcSBzdiB1ayB1eiIuc3BsaXQoIiAiKS5pbmNsdWRlcyhaKT9rLnJlcGxhY2UoIiwiLCJcdTAwYTAiKTpsLmluY2x1ZGVzKFopP2sucmVwbGFjZSgiLCIsIlx1MjAyZiIpOm0uaW5jbHVkZXMoWik/ay5yZXBsYWNlKCIsIiwiLiIpOms7Yz1hLmNhbGwoYyxkLGspO1o9PT0ia20iJiYoYz1jLnJlcGxhY2UoIi4iLCIsIikpfWIucHVzaChjKX1mPjAmJmIucHVzaChPUigpLmZvcm1hdCh7bWludXRlczpmfSkpOyhoPjB8fGU9PT0wJiZmPT09MCkmJmIucHVzaChPUigpLmZvcm1hdCh7c2Vjb25kczpofSkpO2M9ImJlIGd1IGphIGtrIGttIGtvIG1uIHJ1IHRyIHV6IHpoLUhLIHpoLVRXIi5zcGxpdCgiICIpOwphPVo9PSJhbSI/InswfVx1MTM2MyAiOlo9PSJmYSI/InswfVx1MDYwY1x1MjAwZiAiOlo9PSJteSI/InswfSAtICI6Wj09InRoIj8iezB9ICI6Wj09InVyIj8iezB9XHUwNjBjICI6Wj09ImFyInx8Wj09ImFyLVhCIj8iezB9IFx1MDY0OCI6Wj09ImphInx8Wj09InpoLUNOInx8Wj09InpoLUhLInx8Wj09InpoLVRXIj8iezB9XHUzMDAxIjoiezB9LCAiO2Q9Wj09ImFtIj8iXHUxMzYzICI6Wj09ImZhIj8iXHUwNjBjXHUyMDBmICI6Wj09Im15Ij8iIC0gIjpaPT0idGgiPyIgIjpaPT0idXIiPyJcdTA2MGMgIjpaPT0iYXIifHxaPT0iYXItWEIiPyIgXHUwNjQ4IjpaPT0iamEifHxaPT0iemgtQ04ifHxaPT0iemgtSEsifHxaPT0iemgtVFciPyJcdTMwMDEiOiIsICI7az1aPT0iYW0iPyIgXHUxMmE1XHUxMjkzIHswfSI6Wj09ImFzIj8iIFx1MDk4Nlx1MDlmMFx1MDljMSB7MH0iOlo9PSJheiI/IiB2XHUwMjU5IHswfSI6Wj09ImJuIj8iIFx1MDk4Zlx1MDlhY1x1MDk4MiB7MH0iOlo9PSJjcyI/CiIgYVx1MDBhMHswfSI6Wj09ImRlIj8iIHVuZCB7MH0iOlo9PSJlbCI/IiBcdTAzYmFcdTAzYjFcdTAzYjkgezB9IjpaPT0iZXUiPyIgZXRhIHswfSI6Wj09ImZhIj8iXHUwNjBjIFx1MDY0OCB7MH0iOlo9PSJmaWwiPyIsIGF0IHswfSI6Wj09Imd1Ij8iIFx1MGE4NVx1MGFhOFx1MGFjNyB7MH0iOlo9PSJoaSI/IiwgXHUwOTE0XHUwOTMwIHswfSI6Wj09Imh1Ij8iIFx1MDBlOXMgezB9IjpaPT0iaHkiPyIgXHUwNTg3IHswfSI6Wj09ImlkIj8iLCBkYW4gezB9IjpaPT0iaXciPyIgXHUwNWQ1LXswfSI6Wj09ImphIj8iXHUzMDAxezB9IjpaPT0ia2EiPyIgXHUxMGQzXHUxMGQwIHswfSI6Wj09ImttIj8iIFx1MTc5M1x1MTdiN1x1MTc4NCB7MH0iOlo9PSJrbiI/IiwgXHUwY2FlXHUwY2E0XHUwY2NkXHUwY2E0XHUwY2MxIHswfSI6Wj09ImtvIj8iIFx1YmMwZiB7MH0iOlo9PSJreSI/IiBcdTA0MzZcdTA0MzBcdTA0M2RcdTA0MzAgezB9IjpaPT0ibHQiPyIgaXIgezB9IjpaPT0ibHYiPwoiIHVuIHswfSI6Wj09Im1yIj8iIFx1MDkwNlx1MDkyM1x1MDkzZiB7MH0iOlo9PSJtcyI/IiBkYW4gezB9IjpaPT0ibXkiPyJcdTEwMTRcdTEwM2VcdTEwMDRcdTEwMzdcdTEwM2EgezB9IjpaPT0ibmUiPyIgXHUwOTMwIHswfSI6Wj09Im9yIj8iLCBcdTBiMTMgezB9IjpaPT0icGEiPyIgXHUwYTA1XHUwYTI0XHUwYTQ3IHswfSI6Wj09InJvIj8iIFx1MDIxOWkgezB9IjpaPT0ic2kiPyIsIFx1MGRjM1x1MGRjNCB7MH0iOlo9PSJzayI/IiBhIHswfSI6Wj09InNsIj8iIGluIHswfSI6Wj09InNxIj8iIGRoZSB7MH0iOlo9PSJzdiI/IiBvY2ggezB9IjpaPT0ic3ciPyIgbmEgezB9IjpaPT0idGEiPyIgXHUwYmFlXHUwYmIxXHUwYmNkXHUwYmIxXHUwYmMxXHUwYmFlXHUwYmNkIHswfSI6Wj09InRlIj8iIFx1MGMyZVx1MGMzMFx1MGMzZlx1MGMyZlx1MGM0MSB7MH0iOlo9PSJ0aCI/IiBcdTBlNDFcdTBlMjVcdTBlMzB7MH0iOlo9PSJ0ciI/IiB2ZSB7MH0iOlo9PSJ1ciI/Ilx1MDYwYyBcdTA2MjdcdTA2NDhcdTA2MzEgezB9IjoKWj09InV6Ij8iIHZhIHswfSI6Wj09InZpIj8iIHZcdTAwZTAgezB9IjpaPT0iemgtSEsiPyJcdTUzY2F7MH0iOlo9PSJ6dSI/IiwgbmUtezB9IjpaPT0iYWYifHxaPT0ibmwiPyIgZW4gezB9IjpaPT0iYXIifHxaPT0iYXItWEIiPyIgXHUwNjQ4ezB9IjpaPT0iYmUifHxaPT0idWsiPyIgXHUwNDU2IHswfSI6Wj09ImVuLUdCInx8Wj09ImVuLUlOIj8iIGFuZCB7MH0iOlo9PSJlbiJ8fFo9PSJlbi1YQSI/IiwgYW5kIHswfSI6Wj09ImV0Inx8Wj09ImZpIj8iIGphIHswfSI6Wj09ImZyInx8Wj09ImZyLUNBIj8iIGV0IHswfSI6Wj09InpoLUNOInx8Wj09InpoLVRXIj8iXHU1NDhjezB9IjpaPT0iZGEifHxaPT0iaXMifHxaPT0ibm8iPyIgb2cgezB9IjpaPT0iZXMifHxaPT0iZXMtNDE5Inx8Wj09ImVzLVVTIj8iIHkgezB9IjpaPT0iYmcifHxaPT0ibWsifHxaPT0icnUifHxaPT0ic3IiPyIgXHUwNDM4IHswfSI6Wj09ImdsInx8Wj09Iml0Inx8Wj09InB0LUJSInx8Wj09InB0LVBUIj8iIGUgezB9IjoKWj09ImtrInx8Wj09ImxvInx8Wj09Im1sInx8Wj09Im1uIj8iLCB7MH0iOiIgaSB7MH0iO2w9Wj09ImFtIj8iezB9IFx1MTJhNVx1MTI5MyB7MX0iOlo9PSJhcyI/InswfSBcdTA5ODZcdTA5ZjBcdTA5YzEgezF9IjpaPT0iYXoiPyJ7MH0gdlx1MDI1OSB7MX0iOlo9PSJibiI/InswfSBcdTA5OGZcdTA5YWNcdTA5ODIgezF9IjpaPT0iZGUiPyJ7MH0gdW5kIHsxfSI6Wj09ImVsIj8iezB9IFx1MDNiYVx1MDNiMVx1MDNiOSB7MX0iOlo9PSJldSI/InswfSBldGEgezF9IjpaPT0iZmEiPyJ7MH0gXHUwNjQ4IHsxfSI6Wj09ImZpbCI/InswfSBhdCB7MX0iOlo9PSJndSI/InswfSBcdTBhODVcdTBhYThcdTBhYzcgezF9IjpaPT0iaGkiPyJ7MH0gXHUwOTE0XHUwOTMwIHsxfSI6Wj09Imh1Ij8iezB9IFx1MDBlOXMgezF9IjpaPT0iaHkiPyJ7MH0gXHUwNTg3IHsxfSI6Wj09Iml3Ij8iezB9IFx1MDVkNS17MX0iOlo9PSJqYSI/InswfVx1MzAwMXsxfSI6Wj09ImthIj8iezB9IFx1MTBkM1x1MTBkMCB7MX0iOgpaPT0ia2siPyJ7MH0gXHUwNDM2XHUwNGQ5XHUwNDNkXHUwNDM1IHsxfSI6Wj09ImttIj8iezB9IFx1MTc5M1x1MTdiN1x1MTc4NFx1MjAwYnsxfSI6Wj09ImtuIj8iezB9IFx1MGNhZVx1MGNhNFx1MGNjZFx1MGNhNFx1MGNjMSB7MX0iOlo9PSJrbyI/InswfSBcdWJjMGYgezF9IjpaPT0ia3kiPyJ7MH0gXHUwNDM2XHUwNDMwXHUwNDNkXHUwNDMwIHsxfSI6Wj09ImxvIj8iezB9IFx1MGVjMVx1MGVhNVx1MGViMCB7MX0iOlo9PSJsdCI/InswfSBpciB7MX0iOlo9PSJsdiI/InswfSB1biB7MX0iOlo9PSJtciI/InswfSBcdTA5MDZcdTA5MjNcdTA5M2YgezF9IjpaPT0ibXkiPyJ7MH1cdTEwMTRcdTEwM2VcdTEwMDRcdTEwMzdcdTEwM2EgezF9IjpaPT0ibmUiPyJ7MH0gXHUwOTMwIHsxfSI6Wj09Im9yIj8iezB9IFx1MGIxMyB7MX0iOlo9PSJwYSI/InswfSBcdTBhMDVcdTBhMjRcdTBhNDcgezF9IjpaPT0icm8iPyJ7MH0gXHUwMjE5aSB7MX0iOlo9PSJzaSI/InswfSBcdTBkYzNcdTBkYzQgezF9IjoKWj09InNsIj8iezB9IGluIHsxfSI6Wj09InNxIj8iezB9IGRoZSB7MX0iOlo9PSJzdiI/InswfSBvY2ggezF9IjpaPT0ic3ciPyJ7MH0gbmEgezF9IjpaPT0idGEiPyJ7MH0gXHUwYmFlXHUwYmIxXHUwYmNkXHUwYmIxXHUwYmMxXHUwYmFlXHUwYmNkIHsxfSI6Wj09InRlIj8iezB9IFx1MGMyZVx1MGMzMFx1MGMzZlx1MGMyZlx1MGM0MSB7MX0iOlo9PSJ0aCI/InswfVx1MGU0MVx1MGUyNVx1MGUzMHsxfSI6Wj09InRyIj8iezB9IHZlIHsxfSI6Wj09InVyIj8iezB9IFx1MDYyN1x1MDY0OFx1MDYzMSB7MX0iOlo9PSJ1eiI/InswfSB2YSB7MX0iOlo9PSJ2aSI/InswfSB2XHUwMGUwIHsxfSI6Wj09InpoLUhLIj8iezB9XHU1M2NhezF9IjpaPT0ienUiPyJ7MH0gbmUtezF9IjpaPT0iYWYifHxaPT0ibmwiPyJ7MH0gZW4gezF9IjpaPT0iYXIifHxaPT0iYXItWEIiPyJ7MH0gXHUwNjQ4ezF9IjpaPT0iYmUifHxaPT0idWsiPyJ7MH0gXHUwNDU2IHsxfSI6Wj09ImNzInx8Wj09InNrIj8iezB9IGFcdTAwYTB7MX0iOgpaPT0iZXQifHxaPT0iZmkiPyJ7MH0gamEgezF9IjpaPT0iZnIifHxaPT0iZnItQ0EiPyJ7MH0gZXQgezF9IjpaPT0iaWQifHxaPT0ibXMiPyJ7MH0gZGFuIHsxfSI6Wj09Im1sInx8Wj09Im1uIj8iezB9LCB7MX0iOlo9PSJ6aC1DTiJ8fFo9PSJ6aC1UVyI/InswfVx1NTQ4Y3sxfSI6Wj09ImRhInx8Wj09ImlzInx8Wj09Im5vIj8iezB9IG9nIHsxfSI6Wj09ImVzInx8Wj09ImVzLTQxOSJ8fFo9PSJlcy1VUyI/InswfSB5IHsxfSI6Wj09ImJnInx8Wj09Im1rInx8Wj09InJ1Inx8Wj09InNyIj8iezB9IFx1MDQzOCB7MX0iOlo9PSJlbiJ8fFo9PSJlbi1HQiJ8fFo9PSJlbi1JTiJ8fFo9PSJlbi1YQSI/InswfSBhbmQgezF9IjpaPT0iZ2wifHxaPT0iaXQifHxaPT0icHQtQlIifHxaPT0icHQtUFQiPyJ7MH0gZSB7MX0iOiJ7MH0gaSB7MX0iO1o9PT0ic3EiPyhrPWsucmVwbGFjZSgiZGhlIiwiZSIpLGw9bC5yZXBsYWNlKCJkaGUiLCJlIikpOlo9PT0idGgiPyhkPWQucmVwbGFjZSgiezB9IiwKIiB7MH0iKSxsPWwucmVwbGFjZSgiezB9IiwiezB9ICIpLGw9bC5yZXBsYWNlKCJ7MX0iLCIgezF9IikpOlo9PT0ibmUiP2Q9IiwiOlo9PT0iemgtQ04iP2Q9IiI6Yy5pbmNsdWRlcyhaKSYmKGQ9IiAiKTtyZXR1cm4gYi5sZW5ndGg8Mj9iLmpvaW4oIiIpOiJhbSBhciBiZyBicyBjYSBjcyBkYSBlcyBlcy00MTkgZXMtVVMgZXUgZmEgZmkgZnItQ0EgZnIgZ2wgZ3UgaGkgaHIgaHUgaHkgaXMgaXQgbHQgbHYgbWsgbXkgbm8gbmwgcGwgcHQtQlIgcHQtUFQgcm8gc2kgc2wgc3Egc3ItTGF0biBzciBzdyB0aCB1ayIuc3BsaXQoIiAiKS5pbmNsdWRlcyhaKT9iLmxlbmd0aD09PTI/bC5yZXBsYWNlKCJ7MH0iLGJbMF0pLnJlcGxhY2UoInsxfSIsYlsxXSk6YS5yZXBsYWNlKCJ7MH0iLGJbMF0pK2Iuc2xpY2UoMSwtMSkuam9pbihkKStrLnJlcGxhY2UoInswfSIsYltiLmxlbmd0aC0xXSk6Yi5qb2luKGQpfTtPUj1mdW5jdGlvbigpe1FSfHwoQ1I9U2phLFFSPW5ldyBUamEpO3JldHVybiBRUn07ClVqYT1mdW5jdGlvbigpe0pRKCkoe3RxOiEwfSk7SlEoKSh7dHE6ITF9KX07V2phPWZ1bmN0aW9uKGEpe3ZhciBiPV8uV0QoKCk9PmEuZ2V0RGVidWdUZXh0KCEwKSk7YiYmXy55KCkucmVzb2x2ZShfLnlQKS5vcGVuRGlhbG9nKHtVbjooKT0+Xy5LKFZqYSx7ZnY6Yn0pfSl9O1JSPWZ1bmN0aW9uKGEsYil7aWYoYilhPWEuZ2V0VmlkZW9VcmwoKTtlbHNle2E9YS5nZXRQbGF5ZXJSZXNwb25zZSgpLnZpZGVvRGV0YWlscz8udmlkZW9JZDtpZighYSlyZXR1cm47YT1gaHR0cHM6Ly95b3V0dS5iZS8ke2F9YH1hJiZ3aW5kb3cubmF2aWdhdG9yPy5jbGlwYm9hcmQmJndpbmRvdy5uYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dChhKX07ClhqYT1mdW5jdGlvbihhLGIsYyxkKXtfLnlOKHtHYjooKT0+Xy5LKF8uSUIsbnVsbCxTUihhLGIpLF8uSyhfLk8se0E6KCk9PmQmJmMsdGhlbjooKT0+Xy5LKFRSLHtIOmEsdGE6Y30pfSksXy5LKFVSLHtIOmF9KSxfLksoVlIse0g6YX0pLF8uSyhXUix7SDphfSksXy5LKFlSLHtIOmF9KSxfLksoWlIse0g6YX0pLF8uSygkUix7SDphfSksXy5LKGFTLHtIOmF9KSxfLksoYlMse0g6YX0pKSxIYTohMH0pfTtTUj1mdW5jdGlvbihhLGIpe3JldHVybiBfLksoXy5PLHtBOigpPT5fLnRQKCksdGhlbjooKT0+Xy5LKF8uTlAsbnVsbCksVzooKT0+Xy5LKF8uTyx7QTooKT0+IWIsdGhlbjooKT0+Xy5LKGNTLHtIOmF9KX0pfSl9O2RTPWZ1bmN0aW9uKGEsYil7Xy55Tih7R2I6YixIYTohMH0pO2Euc3RvcFByb3BhZ2F0aW9uKCl9O2VTPWZ1bmN0aW9uKGEpe2E9YS5nZXRBdmFpbGFibGVQbGF5YmFja1JhdGVzKCk7cmV0dXJuIGFbYS5sZW5ndGgtMV0+Mn07ZlM9ZnVuY3Rpb24oYSl7cmV0dXJue2J1dHRvblZpZXdNb2RlbDp7YWNjZXNzaWJpbGl0eVRleHQ6YX19fTsKZ1M9ZnVuY3Rpb24oYSxiKXtiPWE9PT0xMDA/WWphOmE9PT1iP1pqYTp2b2lkIDA7cmV0dXJue3ZhcmlhYmxlU3BlZWRDb250cm9sbGVyU3BlZWRCdXR0b25WaWV3TW9kZWw6e3BsYXliYWNrU3BlZWRCdXR0b246e2J1dHRvblZpZXdNb2RlbDp7dGl0bGU6YCR7YS8xMDB9eGAsc3R5bGU6IkJVVFRPTl9WSUVXX01PREVMX1NUWUxFX01PTk8iLHR5cGU6IkJVVFRPTl9WSUVXX01PREVMX1RZUEVfVE9OQUwiLGJ1dHRvblNpemU6IkJVVFRPTl9WSUVXX01PREVMX1NJWkVfQ09NUEFDVCIsaWNvblRyYWlsaW5nOiEwfX0sYnV0dG9uTGFiZWw6e2NvbnRlbnQ6Yn0scGxheWJhY2tTcGVlZEJ1dHRvbkNlbnRpVmFsdWU6YX19fTsKZGthPWZ1bmN0aW9uKGEpe2lmKGE/LmlzUmVhZHk/LigpKXt2YXIgYj1hLmdldFBsYXliYWNrUmF0ZSgpO2lmKGIpe2hTfHwoaFM9Xy54TSgpKTt2YXIgYz1lUyhhKT8kamE6YWthO2lmKCFoUz8uZ2V0KCJyZWNlbnQtY3VzdG9tLXNwZWVkIil8fGIhPT0xKXJldHVybiBjLm1hcChlPT5nUyhlKSk7dmFyIGQ9TnVtYmVyKGhTLmdldCgicmVjZW50LWN1c3RvbS1zcGVlZCIpKTtpZihjLmluY2x1ZGVzKGQpKXJldHVybiBjLm1hcChlPT5nUyhlLGQpKTthPWVTKGEpP2JrYS5zbGljZSgpOmNrYS5zbGljZSgpO2EucHVzaChkKTthLnNvcnQoKGUsZik9PmUtZik7cmV0dXJuIGEubWFwKGU9PmdTKGUsZCkpfX19Owppa2E9ZnVuY3Rpb24oYSl7aWYoYT8uaXNSZWFkeT8uKCkpe3ZhciBiPWEuZ2V0UGxheWJhY2tSYXRlKCksYz1hLmdldEF2YWlsYWJsZVBsYXliYWNrUmF0ZXMoKTtpZihiJiZjKXt2YXIgZD1jW2MubGVuZ3RoLTFdKjEwMDtjPWNbMF0qMTAwO2I9e2hvcml6b250YWxTbGlkZXJWaWV3TW9kZWw6e21heFZhbHVlOmQsbWluVmFsdWU6Yyxpbml0aWFsVmFsdWU6YioxMDAsc3RlcENvdW50OihkLWMpLzUsdmFsdWVEZW5vbWluYXRvcjoxMDAsaW5jcmVhc2VCdXR0b246ZlMoZWthKSxkZWNyZWFzZUJ1dHRvbjpmUyhma2EpLHJlbmRlcmVyQ29udGV4dDp7YWNjZXNzaWJpbGl0eUNvbnRleHQ6e2xhYmVsOmdrYX19fX07YT1ka2EoYSk7cmV0dXJue3ZhcmlhYmxlU3BlZWRDb250cm9sbGVyVmlld01vZGVsOntzbGlkZXI6YixwbGF5YmFja1NwZWVkQnV0dG9uczphLGJhZGdlOntiYWRnZVZpZXdNb2RlbDp7YmFkZ2VUZXh0OiJQIixiYWRnZVN0eWxlOiJCQURHRV9QUkVNSVVNIixhY2Nlc3NpYmlsaXR5TGFiZWw6aGthfX19fX19fTsKaVM9ZnVuY3Rpb24oYSl7aFN8fChoUz1fLnhNKCkpO2hTJiZoUy5zZXQoInJlY2VudC1jdXN0b20tc3BlZWQiLFN0cmluZyhhKjEwMCkpfTtra2E9ZnVuY3Rpb24oYSl7dmFyIGI9aWthKGEpLGM9Xy5CKGIsamthKTtjJiZfLnlOKHtIYTohMCxwZjohMCxHYjooKT0+Xy5LKF8ua08se2RhdGE6YyxwejpkPT57YS5zZXRQbGF5YmFja1JhdGUoZC50YXJnZXQudmFsdWVBc051bWJlcil9LG96OmQ9PntpUyhkLnRhcmdldC52YWx1ZUFzTnVtYmVyKX0scXo6ZD0+e2Euc2V0UGxheWJhY2tSYXRlKGQpO2QhPT0xJiZpUyhkKTtfLnpOKCl9fSl9KX07alM9ZnVuY3Rpb24oYSl7cmV0dXJuKGE9bGthW2FdKT9gJHthfXBgOm1rYX07a1M9ZnVuY3Rpb24oYSxiKXt2YXIgYz1fLldEKCgpPT5hLmdldFBsYXliYWNrUXVhbGl0eSgpKSxkPV8uV0QoKCk9PmEuZ2V0UHJlZmVycmVkUXVhbGl0eSgpKSxlPWpTKGIpO2I9PT0iYXV0byImJmQ9PT0iYXV0byImJihlKz1gICgke2pTKGMpfSlgKTtyZXR1cm4gZX07Cm9rYT1mdW5jdGlvbihhKXtfLnlOKHtHYjooKT0+Xy5LKG5rYSx7SDphfSksSGE6ITB9KX07cFM9ZnVuY3Rpb24oYSxiLGMsZCxlKXtkUyhhLCgpPT5fLksoXy5JQixudWxsLF8uSyhsUyx7SDpifSksXy5LKG1TLHtIOmJ9KSxfLksocGthLHtIOmJ9KSxfLksoXy5PLHtBOigpPT5iLmdldEF2YWlsYWJsZUF1ZGlvVHJhY2tzKCk/Lmxlbmd0aCx0aGVuOigpPT5fLksoblMse0g6Yn0pfSksXy5LKG9TLHtIOmIsb2g6Yyx0YTpkLHRBOmV9KSkpfTtxa2E9ZnVuY3Rpb24oYSxiLGMpe2RTKGEsKCk9Pl8uSyhfLklCLG51bGwsU1IoYixjKSkpfTsKcmthPWZ1bmN0aW9uKGEpe18ublAoKTtpZihhLnhjKWlmKGEuY2FwdGlvbnNFbmFibGVkKXFTKF8uJE4uU3MpO2Vsc2V7dmFyIGI9YS5IO2lmKGIpe2lmKGE9UFEoYiksYj1OUShiKSliOntpZihiLnRyYW5zbGF0aW9uTGFuZ3VhZ2UmJihhPWIudHJhbnNsYXRpb25MYW5ndWFnZT9iLnRyYW5zbGF0aW9uTGFuZ3VhZ2U/Lmxhbmd1YWdlTmFtZXx8IiI6IiIpKWJyZWFrIGI7YT1iLmRpc3BsYXlOYW1lfX1lbHNlIGE9IiI7cVMoYT9fLiROLlVzLnJlcGxhY2UoImxhbmd1YWdlX3BsYWNlaG9sZGVyIixhKTpfLiROLlRzKX1lbHNlIHFTKF8uJE4uUnMpfTtxUz1mdW5jdGlvbihhKXtfLnBQKCgpPT5hKX07c2thPWZ1bmN0aW9uKGEsYil7dmFyIGM9clMoYSk7YT1hLmdldFdlYlBsYXllckNvbnRleHRDb25maWcoKTthPXsuLi5zUyhhKSxFZTohMH07cmV0dXJue3RhOmMsYmE6YSxUYzpkb2N1bWVudC5ib2R5LEdjOmJ9fTsKdGthPWZ1bmN0aW9uKGEsYil7dmFyIGM9amphKCksZD17Li4uclMoYSksU2o6Zj0+e3ZhciBoPSF0UygpLGs9YS5pc1JlYWR5Py4oKSYmISFhLmdldFdhdGNoTmV4dFJlc3BvbnNlKCk/LnBsYXllck92ZXJsYXlzPy5wbGF5ZXJPdmVybGF5UmVuZGVyZXI/LmF1dG9wbGF5O3BTKGYsYSxoLGQsayl9LGRlOigpPT57dmFyIGY9Yz8uZ2V0KCJhdXRvbmF2X2VuYWJsZWQiKTtyZXR1cm4gZj09PXZvaWQgMHx8Zj09PSJ0cnVlIn0sUmo6KGYsaCk9PntoJiZjPy5zZXQoImF1dG9uYXZfZW5hYmxlZCIsU3RyaW5nKGYpKX0sVWw6KCk9PmM/LmdldCgiYXV0b25hdl9lbmFibGVkIikhPT12b2lkIDB9LGU9YS5nZXRXZWJQbGF5ZXJDb250ZXh0Q29uZmlnKCk7ZT17Li4uc1MoZSksdnY6MzUwLHp2OiEwLE1sOjRFMyxoaWRlVmlkZW9JbmZvOmUuaGlkZUluZm99O3JldHVybnt0YTpkLGJhOmUsVGM6ZG9jdW1lbnQuYm9keSxHYzpifX07CnJTPWZ1bmN0aW9uKGEpe3ZhciBiPWEuZ2V0V2ViUGxheWVyQ29udGV4dENvbmZpZygpLGM9Z2phLGQ9VFEsZT1TUTtpZihiPy5lbWJlZHNIb3N0RmxhZ3M/LmFsbG93U2V0RmF1eEZ1bGxzY3JlZW4mJmI/LmV4dGVybmFsRnVsbHNjcmVlbil7bGV0IGY9bmV3IHVrYShhKTtjPSgpPT5mLmlzRnVsbHNjcmVlbigpO2Q9KCk9PntmLnRvZ2dsZUZ1bGxzY3JlZW4oKX07ZT0oKT0+e2YuZXhpdEZ1bGxzY3JlZW4oKX19cmV0dXJue1NqOmY9Pnt2YXIgaD0hdFMoKTthPy5nZXRTaXplKCk/LndpZHRoPDMyMD9xa2EoZixhLGgpOnBTKGYsYSxoKX0scUE6cmthLGlzRnVsbHNjcmVlbjpjLHRvZ2dsZUZ1bGxzY3JlZW46ZCxleGl0RnVsbHNjcmVlbjplLGRlOigpPT4hMSxSajooKT0+e30sVWw6KCk9PiExfX07CnNTPWZ1bmN0aW9uKGEpe3JldHVybntFZTohMCxNaTohMCxNbDpfLngoImVtYmVkc19lbmFibGVfZGVsYXlfY29udHJvbHNfaGlkZSIpPzRFMzp2b2lkIDAsaXE6YS5kaXNhYmxlRnVsbHNjcmVlbixuaDphLmNvbnRyb2xzVHlwZT09PTAsb2g6IXRTKCksaGlkZVZpZGVvSW5mbzphLmhpZGVJbmZvJiZhLmVtYmVkc0hvc3RGbGFncz8ub3B0T3V0QXBpRGVwcmVjYXRpb24sdWo6ITAsRHo6IV8ueCgiZW1iZWRzX2VtYzNkc19wcmVzZXJ2ZV9mdWxsc2NyZWVuX2tzIiksenI6ITAsckE6ITAsWmg6ITAsdm46ITAsWkE6IV8ueCgiZW1iZWRzX2VtYzNkc19mdGxfa3MiKSx2b2x1bWVDb250cm9sVHlwZTpfLngoImVtYmVkc19kZXNrdG9wX2VuYWJsZV92b2x1bWVfc2xpZGVyIikmJndpbmRvdy5tYXRjaE1lZGlhKCIoYW55LXBvaW50ZXI6IGZpbmUpIikubWF0Y2hlcz8idm9sdW1lLXNsaWRlciI6Im11dGUtYnV0dG9uIn19Owp0Uz1mdW5jdGlvbigpe3JldHVybiBfLnRQKCl8fF8ucXooKSYmIV8udygiUExBWUVSX1ZBUlMiKT8ucHJpdmVtYmVkJiYhKF8uZXImJl8uTWsoInZlcnNpb24vIikpJiYhXy5yeigpfTt1Uz1mdW5jdGlvbihhKXtyZXR1cm4gYS5wbGF5ZXJTdGF0ZT09PTB9O3dTPWZ1bmN0aW9uKGEpe3JldHVybiBhLnZpZGVvRHVyYXRpb24/dlMoYSk/RFEoYS5DYS9hLnZpZGVvRHVyYXRpb24sMCwxKTpEUSgoYS52YXx8MCkvYS52aWRlb0R1cmF0aW9uLDAsMSk6MH07eFM9ZnVuY3Rpb24oYSl7cmV0dXJuIGEudmlkZW9EdXJhdGlvbj9hLmlzRHJhZ2dpbmd8fHZTKGEpP0RRKGEuQ2EvYS52aWRlb0R1cmF0aW9uLDAsMSk6RFEoKGEudmF8fDApL2EudmlkZW9EdXJhdGlvbiwwLDEpOjB9O3ZTPWZ1bmN0aW9uKGEpe3JldHVybiBhLktiPjEmJmEuSmQhPT0wfTsKeVM9ZnVuY3Rpb24oYSl7cmV0dXJuKF8ueCgid2ViX2VuYWJsZV9kaWJzX2ltcGxlbWVudGF0aW9uIil8fF8ueCgibXdlYl9lbmFibGVfZGlic19pbXBsZW1lbnRhdGlvbiIpKSYmYS5IPy5nZXRWaWRlb0RhdGEoYS5wbGF5ZXJUeXBlKT8uaXNTZWVrYWJsZXx8YS5wbGF5ZXJUeXBlPT09MT8hMTphLmJhPy5aaD8hYS5IPy5nZXRQbGF5ZXJTdGF0ZU9iamVjdChhLnBsYXllclR5cGUpLmlzRG9tUGF1c2VkOiEwfTt6Uz1mdW5jdGlvbihhKXtyZXR1cm4gXy5CKGE/LmF1dG9uYXZUb2dnbGUsdmthKX07QVM9ZnVuY3Rpb24oYSl7cmV0dXJuIGE/LmNvbnRlbnRzPy5zaW5nbGVDb2x1bW5XYXRjaE5leHRSZXN1bHRzPy5hdXRvcGxheT8uYXV0b3BsYXl9O0JTPWZ1bmN0aW9uKGEpe3JldHVybiBhPy5wbGF5ZXJPdmVybGF5cz8ucGxheWVyT3ZlcmxheVJlbmRlcmVyPy5hdXRvcGxheT8ucGxheWVyT3ZlcmxheUF1dG9wbGF5UmVuZGVyZXJ9OwpFUz1mdW5jdGlvbihhKXtyZXR1cm4gXy5CKENTKGEpPy5wbGF5ZXJCYXIsRFMpfTtGUz1mdW5jdGlvbihhKXtyZXR1cm4gXy5CKGE/Lm1hcmtlcnNNYXA/LmZpbmQoYj0+Yi5rZXk9PT0iSEVBVFNFRUtFUiIpPy52YWx1ZT8uaGVhdG1hcCx3a2EpfTtDUz1mdW5jdGlvbihhKXtyZXR1cm4gXy5CKGE/LmRlY29yYXRlZFBsYXllckJhclJlbmRlcmVyLHhrYSl9O0dTPWZ1bmN0aW9uKGEpe3JldHVybiBfLkIoQ1MoYSk/LnBsYXloZWFkLHlrYSl9O3prYT1mdW5jdGlvbihhKXtyZXR1cm4hIWE/Lm1hcmtlcnNNYXA/LmZpbmQoYj0+WyJERVNDUklQVElPTl9DSEFQVEVSUyIsIkFVVE9fQ0hBUFRFUlMiXS5pbmNsdWRlcyhiLmtleSkpfTtKUz1mdW5jdGlvbihhLGIpe3JldHVybiBIUyhhLGIpfHxJUyhhKT8hMTohYS5pc0RyYWdnaW5nJiYhdlMoYSkmJiFhLnNiJiZhLkxmIT09Im9uIn07CkhTPWZ1bmN0aW9uKGEsYil7cmV0dXJuIWEuYXV0b25hdkVuYWJsZWR8fGEueGZ8fCFifHxhLnJjfHxhLmlzUGxheWxpc3QmJmI/LnNldHM/LlswXS5hdXRvcGxheVZpZGVvPyExOnVTKGEpfTtDa2E9ZnVuY3Rpb24oYSxiKXtiPWI/LmFjdGlvbkJhckJ1dHRvbnM7cmV0dXJuIF8uQihfLkIoYT8ucGxheWVyT3ZlcmxheXM/LnBsYXllck92ZXJsYXlSZW5kZXJlcj8uZnVsbHNjcmVlbkVuZ2FnZW1lbnQsQWthKT8uYWN0aW9uQmFyLEJrYSk/LmFjdGlvbkJhckJ1dHRvbnN8fGJ8fFtdfTtMUz1mdW5jdGlvbihhKXtyZXR1cm4gXy5CKF8uQihhPy5wbGF5ZXJPdmVybGF5cz8ucGxheWVyT3ZlcmxheVJlbmRlcmVyPy5mdWxsc2NyZWVuUXVpY2tBY3Rpb25zQmFyLEtTKT8uZnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50LERrYSl9OwpNUz1mdW5jdGlvbihhKXtyZXR1cm4gYT8ucGxheWVyT3ZlcmxheXM/LnBsYXllck92ZXJsYXlSZW5kZXJlcj8uZW5kU2NyZWVuPy53YXRjaE5leHRFbmRTY3JlZW5SZW5kZXJlcj8ucmVzdWx0c3x8W119O05TPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGE/YS52aWRlb0RldGFpbHM/LmVtYmVkZGVkUGxheWVyT3ZlcmxheVZpZGVvRGV0YWlsc1JlbmRlcmVyOl8uQihiPy52aWRlb0RldGFpbHMsRWthKX07UFM9ZnVuY3Rpb24oYSxiKXtiPV8uQihiPy5lbWJlZFByZXZpZXc/LnRodW1ibmFpbFByZXZpZXdSZW5kZXJlcj8uaW5mb1BhbmVsLE9TKTtyZXR1cm4gXy5CKGE/LmluZm9QYW5lbCxPUyl8fGJ9O0lTPWZ1bmN0aW9uKGEpe3JldHVybiBhLk5hPyEwOmEuSmYhPT0wfTsKRmthPWZ1bmN0aW9uKHtlbGVtZW50OmEsdmVUeXBlOmIsTEE6Yz1udWxsLGVsZW1lbnRJbmRleDpkPTAsY2xpZW50WW91VHViZURhdGE6ZX0pe3ZhciBmPV8uaXEoKTtmIT09UVMmJihSUy5jbGVhcigpLFFTPWYpO2lmKGEudmlzdWFsRWxlbWVudCYmUlMuaGFzKGEudmlzdWFsRWxlbWVudCkpcmV0dXJuIG51bGw7aWYoYyYmUlMuaGFzKGMpKXJldHVybiBhLnZpc3VhbEVsZW1lbnQ9YyxudWxsO2I9Xy5FeChfLmh4KCkse3ZlVHlwZTpiLGVsZW1lbnRJbmRleDpkLGNsaWVudFlvdVR1YmVEYXRhOmV9KTtpZighYilyZXR1cm4gbnVsbDthLnZpc3VhbEVsZW1lbnQ9YjtSUy5hZGQoYik7cmV0dXJuIGJ9OwpTUz1mdW5jdGlvbihhLGIsYz1udWxsLGQ9Xy5OTixlPW51bGwsZixoKXt2YXIgaz0oKT0+e2lmKGIpe2MgaW5zdGFuY2VvZiBGdW5jdGlvbiYmKGM9YygpKTt2YXIgbD1Ga2Eoe2VsZW1lbnQ6Yix2ZVR5cGU6YSxMQTpjLGNsaWVudFlvdVR1YmVEYXRhOmZ9KTtsJiYoXy5KeChiLHtkYXRhOmUsb2JzZXJ2ZXI6Xy55KCkucmVzb2x2ZShfLkx4KSxOYzpfLm5GLGViOl8ubUYsbGF5ZXI6Yi5sYXllcn0pLGQobCkpfX07aD9rKCk6Xy5PRSgoKT0+e2soKX0pfTtHa2E9ZnVuY3Rpb24oYSl7U1MoMTEyMzk0LGEsKCk9PlRTLGI9PntUUz1ifSl9OwpVUz1mdW5jdGlvbihhKXt2YXIgYj1UUyxjPV8uaXEoMCk7aWYoYyYmYil7dmFyIGQ9TWF0aC5yb3VuZChhLnZhKjFFMyk7YT1NYXRoLnJvdW5kKGEuQ2EqMUUzKTtkPjIqKjMxLTF8fGE+MioqMzEtMXx8Xy5WaShfLmV4KSh2b2lkIDAsYyxiLCJJTlRFUkFDVElPTl9MT0dHSU5HX0dFU1RVUkVfVFlQRV9HRU5FUklDX0NMSUNLIix7c2Vla0RhdGE6e3N0YXJ0TWVkaWFUaW1lTXM6U3RyaW5nKGQpLGVuZE1lZGlhVGltZU1zOlN0cmluZyhhKSxzZWVrU291cmNlOiJTRUVLX1NPVVJDRV9TTElERV9PTl9TQ1JVQkJFUl9CQVIifX0sdm9pZCAwKX19O1dTPWZ1bmN0aW9uKGEsYixjKXtTUyhiLGEsKCk9PlZTW2JdLGQ9PntWU1tiXT1kO18uSk8oZCl9LHZvaWQgMCx2b2lkIDAsYyl9O1hTPWZ1bmN0aW9uKGEpeyhhPVZTW2FdKSYmXy53SihfLmh4KCksYSl9O0hrYT1mdW5jdGlvbihhKXt2YXIgYj1fLlZ3KDApLGM9Xy5pcSgwKTtjJiZiJiZhJiZfLlZpKF8uYngpKHZvaWQgMCxjLGIsYSl9OwpZUz1mdW5jdGlvbihhKXt2YXIgYj1fLmlxKDApO2ImJmEmJl8ueUooYixhKX07WlM9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5pcSgwKTtiJiZhJiZfLlZpKF8uQU8pKHZvaWQgMCxiLGEsdm9pZCAwLHZvaWQgMCx2b2lkIDApfTskUz1mdW5jdGlvbihhLGIpe2lmKCFhLmJhPy5aaHx8IWEuSClyZXR1cm4hMTthPWEuSC5nZXRQbGF5ZXJTdGF0ZU9iamVjdCgpO3JldHVybiBhLmlzRXJyb3J8fGImJiFNUihiKT8hMTphLmlzQ3VlZHx8YS5pc0RvbVBhdXNlZH07Y1Q9ZnVuY3Rpb24oYSxiKXthVCYmIWI/LkljfHxhLnBsYXllclN0YXRlPT09Mnx8YS5wbGF5ZXJTdGF0ZT09PS0xfHx1UyhhKXx8YS5wbGF5ZXJTdGF0ZT09PTV8fChiPy5JYyYmYlQoKSxhVD1zZXRUaW1lb3V0KCgpPT57YS5TKHtlYTohMX0pfSxhLmJhPy5NbD8/MkUzKSl9O2JUPWZ1bmN0aW9uKCl7YVQmJihjbGVhclRpbWVvdXQoYVQpLGFUPXZvaWQgMCl9O0lrYT1mdW5jdGlvbihhKXthVD1hfTsKZFQ9ZnVuY3Rpb24oYSl7cmV0dXJue2lzTGl2ZTohMSxpc0xpdmVEdnJFbmFibGVkOiEwLGlzUGxheWxpc3Q6ITEscGxheWVyVHlwZToxLHlxOiExLHZpZGVvSWQ6dm9pZCAwLGNhcHRpb25zRW5hYmxlZDohMSx4YzohMSx2b2x1bWU6MCxyYzohMCxKZjowLFJ4OiExLHNiOiExLFdkOiExLE5hOiExLGlzRnVsbHNjcmVlbjohMSxLYjowLHloOjAsSmQ6MCx4ZjohMSxhdXRvbmF2RW5hYmxlZDohMSx6ZjohMSx5ZjowLFloOiExLGlzRHJhZ2dpbmc6ITEsQ2E6MCxRYzohMSxkajowLFFtOjAscGxheWVyU3RhdGU6YT8uZ2V0UGxheWVyU3RhdGUoKT8/LTEsdmlkZW9EdXJhdGlvbjowLHZhOjAsT246ITEsamU6dm9pZCAwLHBsYXliYWNrUmF0ZToxLGVhOiExLHliOiExLGdlOiExLExmOiJvZmYiLFpyOjAsTHA6MCxZdjowfX07SmthPWZ1bmN0aW9uKGEpe2FUJiZiVCgpO0lrYShzZXRUaW1lb3V0KCgpPT57YS5TKHtlYTohMSx5YjohMX0pfSwyRTMpKX07CktrYT1mdW5jdGlvbihhKXtyZXR1cm4oKT0+e3ZhciBiPWEoKSxjPWIuSD8uZ2V0UGxheWVyU3RhdGUoKTshY3x8Yz09PWIucGxheWVyU3RhdGV8fGMhPT0xJiZjIT09Mnx8KGMmJihjPT09Mj9iLmVhPyhiLlMoe3liOiExfSksYlQoKSk6Yi5TKHtlYTohMCx5YjohMX0pOmM9PT0xJiZiLmVhJiYhYi5pc0RyYWdnaW5nJiYoYi55Yj9Ka2EoYik6Yi5TKHtlYTohMSx5YjohMX0pKSksYi5TKHtwbGF5ZXJTdGF0ZTpjfSkpfX07TGthPWZ1bmN0aW9uKGEpe3JldHVybiBiPT57dmFyIGM9YSgpLGQ9Yy5ILGU9ZD8uZ2V0VmlkZW9EYXRhKCkudmlkZW9faWQ7ZSE9PWMudmlkZW9JZCYmYj8udHlwZT09PSJuZXdkYXRhIiYmKGI9ZD8uZ2V0RHVyYXRpb24oYj8ucGxheWVydHlwZSksYlQoKSxjLlMoe3ZpZGVvRHVyYXRpb246Yix2YTowLHZpZGVvSWQ6ZSxlYTohMSx5YjohMX0pKX19OwpNa2E9ZnVuY3Rpb24oYSl7cmV0dXJuIGI9Pnt2YXIgYz1hKCksZD1jLkg7aWYoZCl7dmFyIGU9ZC5nZXRQcmVzZW50aW5nUGxheWVyVHlwZSgpO18ueCgid2ViX3Nob3J0c191c2VfcHJvZ3Jlc3Nfc3RhdGVfZm9yX2dhcGxlc3MiKT8oZD1kLmdldFByb2dyZXNzU3RhdGUoZSksZD1kLnNlZWthYmxlRW5kLWQuc2Vla2FibGVTdGFydCk6ZD1kLmdldER1cmF0aW9uKGUpO2MuUyh7dmE6Yix2aWRlb0R1cmF0aW9uOmR9KX19fTtnVD1mdW5jdGlvbihhLGIpe2lmKCFhKXJldHVybltdO2E9YS5tYXJrZXJzTWFwPy5maW5kKGM9PlsiREVTQ1JJUFRJT05fQ0hBUFRFUlMiLCJBVVRPX0NIQVBURVJTIl0uaW5jbHVkZXMoYy5rZXkpKT8udmFsdWU/LmNoYXB0ZXJzfHxbXTsoYS5sZW5ndGg9PT0wPzA6Xy5CKGFbMF0sZVQpPy50aW1lUmFuZ2VTdGFydE1pbGxpcyE9PTApJiYhYj8ubngmJihhPVtmVCgpLC4uLmFdKTtyZXR1cm4gYX07ZlQ9ZnVuY3Rpb24oKXtyZXR1cm57Y2hhcHRlclJlbmRlcmVyOnt0aW1lUmFuZ2VTdGFydE1pbGxpczowfX19OwpoVD1mdW5jdGlvbihhKXtyZXR1cm4gYT9hLnRpbWVSYW5nZVN0YXJ0TWlsbGlzfHwwOjB9O2tUPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGdUKGIpLmZpbmQoKGMsZCxlKT0+aVQoalQoYSksZSxkKS5MZD09PSJhY3RpdmUiKX07bFQ9ZnVuY3Rpb24oYSxiKXtpZihhLmlzRHJhZ2dpbmcmJmIpcmV0dXJuIGE9TmthKGEsYiksYT09PS0xP2ZUKCk6Z1QoYilbYV19O05rYT1mdW5jdGlvbihhLGIpe3JldHVybiBhLmlzRHJhZ2dpbmcmJmI/Z1QoYix7bng6ITB9KS5maW5kSW5kZXgoKGMsZCxlKT0+aVQoalQoYSksZSxkKS5CZyk6LTF9O21UPWZ1bmN0aW9uKGEpe2E9Xy5CKGEsZVQpO2E/Lm9uQWN0aXZlQ29tbWFuZCYmXy5hRShhLm9uQWN0aXZlQ29tbWFuZCl9O2pUPWZ1bmN0aW9uKGEpe3JldHVybnsuLi5hLHZpZGVvRHVyYXRpb246YS52aWRlb0R1cmF0aW9uKjFFMyx2YTphLnZhKjFFMyxDYTphLkNhKjFFM319OwppVD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9aFQoXy5CKGJbY10sZVQpKTtiPWhUKF8uQihiW2MrMV0sZVQpKXx8YS52aWRlb0R1cmF0aW9uO2M9YS5pc0RyYWdnaW5nO3ZhciBlO2lmKGU9YS5pc0RyYWdnaW5nKWU9YS5DYSxlPWUhPT1udWxsJiZlPj1kJiZlPGI7dmFyIGY9YS52YTtyZXR1cm4gZiE9PW51bGwmJmY+PWQmJmY8Yj97TGQ6ImFjdGl2ZSIsYm06YyxCZzplfTphLnZhPGQ/e0xkOiJwZW5kaW5nIixibTpjLEJnOmV9OntMZDoic2VlbiIsYm06YyxCZzplfX07blQ9ZnVuY3Rpb24oYSxiLGMpe2lmKGlUKGEsYixjKS5MZCE9PSJhY3RpdmUiKXJldHVybiAwO3ZhciBkPWhUKF8uQihiW2NdLGVUKSk7cmV0dXJuKGEudmEtZCkvKChoVChfLkIoYltjKzFdLGVUKSl8fGEudmlkZW9EdXJhdGlvbiktZCl9O29UPWZ1bmN0aW9uKGEsYj0wKXtyZXR1cm4gYS5MZD09PSJzZWVuInx8Yj4wfTsKcFQ9ZnVuY3Rpb24oYSxiLGMpe2I9YS9iLlpyO2M9Z1QoYyk7aWYoIWMubGVuZ3RoKXJldHVybi1iKjcyO3ZhciBkPTA7Zm9yKGxldCBlIG9mIGMpaWYoaFQoXy5CKGUsZVQpKS8xRTM8YSlkKys7ZWxzZSBicmVhaztyZXR1cm4tKGIqNzIpLWQqNTZ9O09rYT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIGQ9Pnt2YXIgZT1iKCksZj1jKCk7YS5CKCk7ZC5zdG9wUHJvcGFnYXRpb24oKTtkPXFUKGEsZSxkLmNsaWVudFgpKmUudmlkZW9EdXJhdGlvbjtlLlMoe3ZhOmR9KTtlLnBsYXllclN0YXRlPT09Mnx8Zi5Gbj8uKCk7YS5ELnYoZCxlLDcpfX07clQ9ZnVuY3Rpb24oYSl7YT1hLnRvdWNoZXNbMF07cmV0dXJue3g6YS5jbGllbnRYLHk6YS5jbGllbnRZfX07UGthPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGM9Pnt2YXIgZD1yVChjKSxlPWIoKTthLnN0YXJ0UG9zaXRpb258fChhLnN0YXJ0UG9zaXRpb249ZCxhLkIoKSxhLmo9ZS5lYSxjLnN0b3BQcm9wYWdhdGlvbigpKX19OwpRa2E9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYz0+e3ZhciBkPXt4OmMuY2xpZW50WCx5OmMuY2xpZW50WX0sZT1iKCk7YS5zdGFydFBvc2l0aW9ufHwoYS5zdGFydFBvc2l0aW9uPWQsYS5CKCksYS5qPWUuZWEsYy5zdG9wUHJvcGFnYXRpb24oKSl9fTsKdFQ9ZnVuY3Rpb24oYSxiLGMsZCxlLGYpe2Euc3RhcnRQb3NpdGlvbiYmKGYmJmUuaWomJmEuc3RhcnRQb3NpdGlvbiYmIWEubyYmTWF0aC5hYnMoYy55LWEuc3RhcnRQb3NpdGlvbi55KT5NYXRoLmFicyhjLngtYS5zdGFydFBvc2l0aW9uLngpP3NUKGEsZCxlKTooYi5wcmV2ZW50RGVmYXVsdCgpLGIuc3RvcFByb3BhZ2F0aW9uKCksZC52aWRlb0R1cmF0aW9uJiYoYS5zdGFydFBvc2l0aW9uJiYhYS5vJiYoYS5vPU1hdGguYWJzKGMueC1hLnN0YXJ0UG9zaXRpb24ueCk+PTEpLGUuS2YmJihhLnN0YXJ0UG9zaXRpb24mJihhLnY9LShjLnktYS5zdGFydFBvc2l0aW9uLnkpPj02MCksIWEuc3RhcnRQb3NpdGlvbnx8Yy55Pj1hLnN0YXJ0UG9zaXRpb24ueXx8KGQuUyh7TGY6ImRyYWdnaW5nIixMcDpwVChkLkNhLGQsZS5SYSl9KSxhLlUoZC5DYSksYS5aKGEuc3RhcnRQb3NpdGlvbi55LGMueSxkKSkpLGEubyYmKGI9cVQoYSxkLGMueCksYS52JiYoZC5IPy5wYXVzZVZpZGVvKCksZC5TKHtMZjoib24iLApZdjpkLkNhLExwOnBUKGIqZC52aWRlb0R1cmF0aW9uLGQsZS5SYSl9KSksZS5LZiYmKCFlLktmfHxhLksoZCk8NjgpfHwoZC5pc0RyYWdnaW5nfHxkLnRhLmt6Py4oKSxkLlMoe0NhOmIqZC52aWRlb0R1cmF0aW9uLGVhOiEwLGlzRHJhZ2dpbmc6ITAseWI6YS5qfSkpLGUuWW8/LigpKSkpKX07UmthPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gZD0+e3ZhciBlPWIoKSxmPWMoKTt0VChhLGQsclQoZCksZSxmLCEwKTtpZihmLm9uVG91Y2hNb3ZlKWYub25Ub3VjaE1vdmUoZSl9fTt2VD1mdW5jdGlvbihhLGIsYyxkKXtpZihiLmJ1dHRvbnMhPT0xKXtpZihiLm1vdmVtZW50WHx8Yi5tb3ZlbWVudFkpYi5wcmV2ZW50RGVmYXVsdCgpLGIuc3RvcFByb3BhZ2F0aW9uKCksYT1xVChhLGMsYi5jbGllbnRYKSxjLlFjfHxjLnRhLmt6Py4oKSxjLlMoe1FjOiEwLGRqOmEqYy52aWRlb0R1cmF0aW9ufSl9ZWxzZSB1VChjKSx0VChhLGIse3g6Yi5jbGllbnRYLHk6Yi5jbGllbnRZfSxjLGQsITEpfTsKU2thPWZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gZD0+e3ZUKGEsZCxiKCksYygpKX19O1RrYT1mdW5jdGlvbihhKXtyZXR1cm4oKT0+e3ZhciBiPWEoKTt1VChiKX19O3NUPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPWMuS2YmJmIuTGYhPT0ib2ZmIjtiLmlzRHJhZ2dpbmd8fGU/KGQ9e2lzRHJhZ2dpbmc6ITEsdmE6Yi5DYSxlYTphLmp9LGMuS2YmJmIuTGYhPT0ib24iJiYoYS5NKCksZC5MZj0ib2ZmIiksVVMoYiksYi5TKGQpLGEuRC52KGIuQ2EsYiw3KSxjLkluJiZiLnJjJiZiLkg/LnVuTXV0ZSgpLHdUKGEpKTooXy54KCJtYXdwY190b3VjaF9lbmRfaGFuZGxlcl9idWdfZml4X2tpbGxzd2l0Y2giKT9iLlMoe2VhOiFiLmVhfSk6Yi5TKHtlYTohMH0pLGMuRm4/LigpLHdUKGEpLF8ueCgibWF3cGNfdG91Y2hfZW5kX2hhbmRsZXJfYnVnX2ZpeF9raWxsc3dpdGNoIil8fGQ/LnN0b3BQcm9wYWdhdGlvbigpKX07ClVrYT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIGQ9Pnt2YXIgZT1iKCksZj1jKCk7c1QoYSxlLGYsZCk7aWYoZi5vblRvdWNoRW5kKWYub25Ub3VjaEVuZChlKX19O1ZrYT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIGQ9Pnt2YXIgZT1iKCksZj1jKCk7c1QoYSxlLGYsZCk7aWYoZi5vblRvdWNoRW5kKWYub25Ub3VjaEVuZChlKX19O1drYT1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIGQ9PntzVChhLGIoKSxjKCksZCl9fTtYa2E9ZnVuY3Rpb24oYSl7cmV0dXJuIGI9PntiLmtleUNvZGU9PT0zOXx8Yi5rZXlDb2RlPT09Mzg/YSgpPy5IPy5zZWVrQnkoNSx2b2lkIDAsdm9pZCAwLDcyKTooYi5rZXlDb2RlPT09Mzd8fGIua2V5Q29kZT09PTQwKSYmYSgpPy5IPy5zZWVrQnkoLTUsdm9pZCAwLHZvaWQgMCw3MSl9fTtZa2E9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBkPT57IWMoKS5kaXNhYmxlU2NydWJiaW5nJiZhLnN0YXJ0UG9zaXRpb24mJnZUKGEsZCxiKCksYygpKX19Owp4VD1mdW5jdGlvbihhLGIsYyl7cmV0dXJuIGQ9PntpZighYygpLmRpc2FibGVTY3J1YmJpbmcpaWYoYS5zdGFydFBvc2l0aW9uKXt2YXIgZT1iKCksZj1jKCk7c1QoYSxiKCksYygpLGQpO2lmKGYub25Ub3VjaEVuZClmLm9uVG91Y2hFbmQoZSl9ZWxzZSBiKCkuUyh7aXNEcmFnZ2luZzohMX0pfX07dVQ9ZnVuY3Rpb24oYSl7YS5RYyYmYS5TKHtRYzohMSxkajowfSl9O3FUPWZ1bmN0aW9uKGEsYixjKXthPWEuSShiKTtyZXR1cm4gRFEoMCwoYy1hLmxlZnQpL2Eud2lkdGgsMSl9O3dUPWZ1bmN0aW9uKGEpe2Euc3RhcnRQb3NpdGlvbj1udWxsO2Eubz0hMTthLnY9ITE7YS5qPSExfTt5VD1mdW5jdGlvbihhKXtyZXR1cm4gYT9hLndpZHRoL2EuY29sdW1uczowfTt6VD1mdW5jdGlvbihhKXtyZXR1cm4gYT9hLmhlaWdodC9hLnJvd3M6MH07QVQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGEuUWM/YS5kajphLkNhfTsKQlQ9ZnVuY3Rpb24oYSxiKXthPWEuQ2EqMUUzO3JldHVybiBhPj1iLnZpc2libGVUaW1lUmFuZ2VTdGFydE1pbGxpcyYmYTw9Yi52aXNpYmxlVGltZVJhbmdlRW5kTWlsbGlzfTtDVD1mdW5jdGlvbihhKXtpZihhPT09dm9pZCAwfHxOdW1iZXIuaXNOYU4oYSkpcmV0dXJuIi0tOi0tIjt2YXIgYj1NYXRoLmFicyhNYXRoLmZsb29yKGEpKSxjPU1hdGguZmxvb3IoYi84NjQwMCksZD1NYXRoLmZsb29yKGIlODY0MDAvMzYwMCksZT1NYXRoLmZsb29yKGIlMzYwMC82MCk7Yj1NYXRoLmZsb29yKGIlNjApO3ZhciBmPSIiO2M+MCYmKGYrPWAke2N9OmAsZDwxMCYmKGYrPSIwIikpO2lmKGM+MHx8ZD4wKWYrPWAke2R9OmAsZTwxMCYmKGYrPSIwIik7Zis9YCR7ZX06YDtiPDEwJiYoZis9IjAiKTtmKz1iO3JldHVybiBhPj0wP2Y6YC0ke2Z9YH07CkRUPWZ1bmN0aW9uKGEsYil7cmV0dXJuKCk9Pnt2YXIgYz1BVChhKCkpO3ZhciBkPWIoKTt2YXIgZT1hKCkuSDtpZihlJiZlLmdldE51bWJlck9mU3Rvcnlib2FyZExldmVscygpIT09MCl7dmFyIGY9ZS5nZXRTdG9yeWJvYXJkRnJhbWVJbmRleChjLDEpO2YhPT0tMT9kPWUuZ2V0U3Rvcnlib2FyZEZyYW1lKGYsMSk6KGM9ZS5nZXRTdG9yeWJvYXJkRnJhbWVJbmRleChjLDApLGU9ZS5nZXRTdG9yeWJvYXJkRnJhbWUoYywwKSxkJiZlJiYoZS5oZWlnaHQqPTMsZS53aWR0aCo9MyksZD1lKX1lbHNlIGQ9bnVsbDtpZighZClyZXR1cm4gbnVsbDtiKCkmJihkLndpZHRoPTkwKmQuY29sdW1ucyxkLmhlaWdodD0xNjAqZC5yb3dzKTtyZXR1cm4gZH19Owoka2E9ZnVuY3Rpb24oYSxiLGMsZCl7cmV0dXJuIGEuTmF8fGEuaXNMaXZlP2Q6Yj4xP0VUKGQpOnNldFRpbWVvdXQoKCk9PntjKCk7bmF2aWdhdG9yPy52aWJyYXRlJiZuYXZpZ2F0b3IudmlicmF0ZShaa2EpfSxfLnNqKCJzcGVlZG1hc3Rlcl90b3VjaF9hY3RpdmF0aW9uX21zIiw1MDApKX07RVQ9ZnVuY3Rpb24oYSl7YSE9PXZvaWQgMCYmY2xlYXJUaW1lb3V0KGEpfTsKSFQ9ZnVuY3Rpb24oYSxiKXthLk5hfHxhLmlzTGl2ZXx8KGI+MSYmRlQoYSksZG9jdW1lbnQuYm9keS5jbGFzc0xpc3QuYWRkKCJwcmV2ZW50LWhpZ2hsaWdodHMiKSxHVD1zZXRUaW1lb3V0KCgpPT57YS5IPy5wbGF5VmlkZW8oKTtiVCgpO2EuUyh7c2I6ITAsZWE6ITB9KTt2YXIgYz1fLnNqKCJzcGVlZG1hc3Rlcl9wbGF5YmFja19yYXRlIiwyKSxkPWEuSDtkPy5zZXRQbGF5YmFja1JhdGU/LihjKTtfLngoIm13ZWJfbG9uZ19wcmVzc19zcGVlZHVwX3ZpYnJhdGlvbiIpJiZkPy5nZXRQbGF5YmFja1JhdGUoKT09PWMmJm5hdmlnYXRvcj8udmlicmF0ZSYmbmF2aWdhdG9yLnZpYnJhdGUoYWxhKX0sXy5zaigic3BlZWRtYXN0ZXJfdG91Y2hfYWN0aXZhdGlvbl9tcyIsNTAwKSkpfTsKSVQ9ZnVuY3Rpb24oYSxiLGMpe2Muc2ImJmEucHJldmVudERlZmF1bHQoKTthPWIubGs7Yj1iLk9kO01hdGguc3FydChhKmErYipiKT5fLnNqKCJzcGVlZG1hc3Rlcl9jYW5jZWxsYXRpb25fbW92ZW1lbnRfZHAiLDEwKSYmIWMuc2ImJkZUKGMpfTtGVD1mdW5jdGlvbihhKXtkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5yZW1vdmUoInByZXZlbnQtaGlnaGxpZ2h0cyIpO0dUJiZjbGVhclRpbWVvdXQoR1QpO2Euc2ImJihhLlMoe3NiOiExLGVhOnVTKGEpfSksYT1hLkgsdHlwZW9mIGE/LnNldFBsYXliYWNrUmF0ZT09PSJmdW5jdGlvbiI/YS5zZXRQbGF5YmFja1JhdGUoMSk6Xy5XaShFcnJvcigiJGQiKSkpfTsKY2xhPWZ1bmN0aW9uKGEsYixjKXtpZihiJiZhKXt2YXIgZD1hLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO2lmKGI9YmxhKGIsZC53aWR0aCxkLmhlaWdodCkpYz8uWkEmJihjPW5ldyBJbWFnZSxjLm9ubG9hZD0oKT0+e2lqYSgpfSxjLnNyYz1iLF8uSXooImZ0ciIpKSxhLnN0eWxlLmJhY2tncm91bmRJbWFnZT1gdXJsKCR7Yn0pYH19O2JsYT1mdW5jdGlvbihhLGIsYyl7aWYoKGE9YS50aHVtYm5haWxzKSYmYS5sZW5ndGghPT0wKXt2YXIgZD13aW5kb3cuZGV2aWNlUGl4ZWxSYXRpbz4xP3dpbmRvdy5kZXZpY2VQaXhlbFJhdGlvOjE7Yio9ZDtjKj1kO2lmKGI+NjQwfHxjPjQ4MClyZXR1cm4gYS5hdCgtMSkudXJsO2lmKGI+MzIwfHxjPjE4MCl7dmFyIGU7ZD1iPWM9dm9pZCAwO2ZvcihlIG9mIGEpIWQmJmUud2lkdGg+PTMyMD9kPWUudXJsOiFiJiZlLndpZHRoPj00ODA/Yj1lLnVybDohYyYmZS53aWR0aD49NjQwJiYoYz1lLnVybCk7aWYoZT1jfHxifHxkKXJldHVybiBlfXJldHVybiBhWzBdLnVybH19OwpKVD1mdW5jdGlvbihhKXsoYT1hPy5oZWFkZXI/LnBsYXlsaXN0SGVhZGVyUmVuZGVyZXIpPyhhPV8uQihhLmNpbmVtYXRpY0NvbnRhaW5lcixkbGEpPy5iYWNrZ3JvdW5kSW1hZ2VDb25maWc/LnRodW1ibmFpbD8udGh1bWJuYWlscyxhPWE/Lmxlbmd0aD9hW2EubGVuZ3RoLTFdLnVybDp2b2lkIDAsYT0hYSk6YT0hMTtyZXR1cm4gYX07S1Q9ZnVuY3Rpb24oYSl7YT1hfHxfLlhEPy5yZXNwb25zZT8ucmVzcG9uc2U7cmV0dXJuIGE/LmhlYWRlcj8ucGFnZUhlYWRlclJlbmRlcmVyfTtPVD1mdW5jdGlvbigpe3ZhciBhPV8uWEQ/LnJlc3BvbnNlPy5yZXNwb25zZTtyZXR1cm4hIUtUKCk/LnRpdGxlQW5pbWF0aW9ufHxKVChhKX07ClBUPWZ1bmN0aW9uKCl7dmFyIGE9Xy5YRD8ucmVzcG9uc2U/LnJlc3BvbnNlLGI9S1QoYSk7aWYoYilhPWIudG9wQmFyQW5pbWF0aW9uPyEwOiExO2Vsc2V7aWYoYj1YUSgpJiYhXy5WTSgpKWI9Xy5aYih3aW5kb3cubG9jYXRpb24uaHJlZiwibGlzdCIpLGI9IShiPy5zdGFydHNXaXRoKCJFTCIpfHxiPy5zdGFydHNXaXRoKCJTQyIpKTthPWImJiFKVChhKX1yZXR1cm4gYX07CmVsYT1mdW5jdGlvbigpe2lmKF8udygiTVdFQl9TVElDS1lfUExBWUVSIiwhMSkmJlFUKCkmJndpbmRvdy5sb2NhdGlvbi5oYXNoIT09IiNzZWFyY2hpbmciJiZfLlVNKCkhPT0ic2VhcmNoIil7dmFyIGE9d2luZG93LnNjcm9sbFksYjsoYj1fLlZNKCkpfHwoYj1fLlVNKCk9PT0iY2xpcCIpO2lmKGIpIV8uVEUoKSYmIUhRKCl8fChfLkZlYS5vZmZzZXRIZWlnaHQ+d2luZG93LmlubmVySGVpZ2h0Ki42P18uVHQoXy5FSiwic3RpY2t5LXBsYXllciIpOl8uU3QoXy5FSiwic3RpY2t5LXBsYXllciIpKSxSVCgiaW4iKSxTVD1hO2Vsc2V7Yj1TVD5hO3ZhciBjPWE+PTQ4LGQ9YTwxMjY7U1Q9YTtiPyhjP1JUKCJmaWxsZWQiKTpSVCgiaW4iKSxJUSgpJiZkP1RUKCJmaWx0ZXItY2hpcC1iYXItc3RhdGljIik6VFQoImZpbHRlci1jaGlwLWJhci1pbiIpKTpjP1BUKCl8fE9UKCk/UlQoImZpbGxlZCIpOihSVCgib3V0IiksSVEoKSYmZD9UVCgiZmlsdGVyLWNoaXAtYmFyLXN0YXRpYyIpOlRUKCJmaWx0ZXItY2hpcC1iYXItb3V0IikpOgooUlQoImluIiksSVEoKT9UVCgiZmlsdGVyLWNoaXAtYmFyLXN0YXRpYyIpOlRUKCJmaWx0ZXItY2hpcC1iYXItaW4iKSl9fXZhciBlO18uVk0oKSYmKGU9UVQoKSkhPW51bGwmJihhPWUuc2V0QXR0cmlidXRlLGI9Xy5NRSgpPzE6MjQsXy5ETi5sZW5ndGg+MCYmIV8ueE4oKT8oYz1OdW1iZXIoZG9jdW1lbnQuYm9keS5zdHlsZS50b3AucmVwbGFjZSgvKHB4KXwtL2csIiIpKSxiPSFpc05hTihjKSYmYzxiKTpiPVNUPGIsYS5jYWxsKGUsImFtYmllbnQtdG9wYmFyIixiLnRvU3RyaW5nKCkpKX07UVQ9ZnVuY3Rpb24oKXtyZXR1cm4gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImhlYWRlci1iYXIiLnRvU3RyaW5nKCkpfTsKVFQ9ZnVuY3Rpb24oYSl7dmFyIGI9Xy5VTSgpPT09ImhvbWUifHxJUSgpP2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWx0ZXItY2hpcC1iYXIiLnRvU3RyaW5nKCkpOm51bGw7YiYmKF8uVHQoYiwiZmlsdGVyLWNoaXAtYmFyLXN0YXRpYyIpLF8uVHQoYiwiZmlsdGVyLWNoaXAtYmFyLWluIiksXy5UdChiLCJmaWx0ZXItY2hpcC1iYXItb3V0IiksXy5TdChiLGEpKX07ClJUPWZ1bmN0aW9uKGEpe3ZhciBiPVFUKCk7aWYoYil7bGV0IGM9Xy5hTCh7WyJzdGlja3ktcGxheWVyIl06Xy53KCJNV0VCX1NUSUNLWV9QTEFZRVIiLCExKSxbImlzLWF1dG9tb3RpdmUiXTpIUSgpfSk7Xy5XTSgpP2M9Xy5hTChjLCJ0b3BiYXItdHJhbnNwYXJlbnQtYmFja2dyb3VuZCIsInNob3J0cy10b3BiYXIiKTpQVCgpP2M9Xy5hTChjLCJ0b3BiYXItdHJhbnNwYXJlbnQtYmFja2dyb3VuZCIpOk9UKCkmJihjPV8uYUwoYywidG9wYmFyLXRyYW5zcGFyZW50LXRpdGxlIikpO2IuY2xhc3NOYW1lPV8uYUwoYSxjKX19O2ZsYT1mdW5jdGlvbigpe3JldHVybiBVVH07aGxhPWZ1bmN0aW9uKGEsYil7YiYmKFZUPSEwKTthPVVUPWE7Yj1KUigpO2EhPT1iJiYoYj1fLkh6KCksXy5EeigxNDEsITApLF8uRHooMTQwLCFhKSxiLnNhdmUoKSk7Z2xhKCl9O2dsYT1mdW5jdGlvbigpe3NldFRpbWVvdXQoKCk9PntfLlhNKCJwbGF5ZXItYXV0b25hdi1wYXVzZSIse3BhdXNlZDohMX0pfSl9OwppbGE9ZnVuY3Rpb24oKXtyZXR1cm4gVlR9O1dUPWZ1bmN0aW9uKGEsYil7cmV0dXJuIF8uTUUoKT9iJiZhPy52aWRlb0R1cmF0aW9uPjMwOmImJiFhLmVhfTtYVD1mdW5jdGlvbihhLGIpe3JldHVybiBiJiZhLmVhJiYhXy5NRSgpfTtqbGE9YXN5bmMgZnVuY3Rpb24oYSxiKXtpZihiPWI/P2F3YWl0IF8uTEgoKSliLnVuTXV0ZSghMCksYi5zZXRWb2x1bWUoYSwhMCl9O1pUPWZ1bmN0aW9uKGEsYil7YSYmKGEudmFsdWU9YCR7Yn1gLGEuc3R5bGUuc2V0UHJvcGVydHkoIi0tZ3JhZGllbnQtcGVyY2VudCIsYCR7Yn0lYCkpfTtrbGE9ZnVuY3Rpb24oYSl7cmV0dXJuIF8ueCgicGxheWVyX2NvbnRyb2xzX3VzZV9wbGF5ZXJfYXBpX2NvbnRleHQiKT9fLmtHKCRUKTphfTthVT1mdW5jdGlvbihhKXtyZXR1cm5gaHR0cHM6Ly9tLnlvdXR1YmUuY29tL3N0YXRpYy9sb3R0aWUvJHthfS5qc29uYH07CmJVPWZ1bmN0aW9uKGEpe3N3aXRjaChhKXtjYXNlICJhbmltYXRlZF9saWtlX2ljb24iOnJldHVybntuYW1lOiJhbmltYXRlZF9saWtlX2ljb25fdjJfZGFyayIscGF0aDphVSgiYW5pbWF0ZWRfbGlrZV9pY29uX3YyX2RhcmsiKSxsb29wOiExLGF1dG9wbGF5OiExLHJlbmRlcmVyU2V0dGluZ3M6e3ZpZXdCb3hPbmx5OiEwLGNsYXNzTmFtZToiYW5pbWF0ZWQtbGlrZS1pY29uIn19O2Nhc2UgImxpa2VfMjQwZHBfYW5pbWF0aW9uX3YyIjpjYXNlICJsaWtlX3RhcF9mZWVkYmFja19zaG9ydHNfaGVhcnQiOmNhc2UgInBhdXNlXzk2ZHBfYW5pbWF0aW9uIjpjYXNlICJwbGF5Xzk2ZHBfYW5pbWF0aW9uIjpjYXNlICJzZWVrXzk2ZHBfYW5pbWF0aW9uIjpyZXR1cm57bmFtZTphLHBhdGg6YVUoYSksbG9vcDohMSxhdXRvcGxheTohMX07ZGVmYXVsdDpyZXR1cm57bmFtZToiIixwYXRoOiIifX19OwpjVT1mdW5jdGlvbihhKXtfLkxPKCkudGhlbihiPT57Yi5zdG9wKCJsaWtlXzI0MGRwX2FuaW1hdGlvbl92MiIpO2Iuc3RvcCgibGlrZV90YXBfZmVlZGJhY2tfc2hvcnRzX2hlYXJ0Iik7Yi5zdG9wKCJwbGF5Xzk2ZHBfYW5pbWF0aW9uIik7Yi5zdG9wKCJwYXVzZV85NmRwX2FuaW1hdGlvbiIpO2IucGxheShhKX0pfTsKbGxhPWZ1bmN0aW9uKGEpe3ZhciBiPV8uSHooKTtIUSgpfHxhLnF2fHxhLnN1cHByZXNzQWZ0ZXJDbG9zaW5nJiZOdW1iZXIoYi5nZXQoInN1cHByZXNzX2FwcF91cHNlbGwiKSkmJiFfLngoIm13ZWJfYXBwX3Vwc2VsbF9idXR0b24iKXx8KGRVfHwoZFU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksZG9jdW1lbnQuYm9keS5pbnNlcnRCZWZvcmUoZFUsZG9jdW1lbnQuYm9keS5maXJzdENoaWxkKSksXy5KTihkVSxudWxsLCEwKSxhIT09ZVUmJihmVT8uKCksZlU9Xy54RihkVSwoKT0+e18ub0YoKCk9PntfLk1PKCIuWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJIb3N0IC5ZdG1Cb3R0b21TaGVldE92ZXJsYXlSZW5kZXJlckNvbnRlbnRzIil9KTtyZXR1cm4gXy5LKF8uSUIsbnVsbCxfLksoImRpdiIse2NsYXNzOiJZdG1Cb3R0b21TaGVldE92ZXJsYXlSZW5kZXJlclNjcmltQ29udGFpbmVyIn0sXy5LKF8uWk4se2xhYmVsOl8uJE4uQ0xPU0V9KSksXy5LKCJkaXYiLHtjbGFzczoiWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJPdmVybGF5Q29udGFpbmVyIn0sCl8uSyhnVSx7ZGF0YTphfSkpKX0sImRkIikpLGVVPWEpfTtoVT1mdW5jdGlvbigpe3JldHVybntzdHlsZToib3ZlcmxheS1kYXJrIixpY29uUG9zaXRpb246Imljb24td2l0aC1sYWJlbCIsc2l6ZToiTCIsc2l6ZToiUyIsdHlwZToidGV4dCIsc3R5bGU6Im92ZXJsYXkifX07bmxhPWZ1bmN0aW9uKGEpe3ZhciBiPV8uQihhLnNob3BwaW5nVXBzZWxsLG1sYSk7YiYmUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+e2xsYShiKX0pfTtvbGE9ZnVuY3Rpb24oYSl7YT8ubG9nZ2luZ0RpcmVjdGl2ZXM/LnRyYWNraW5nUGFyYW1zJiZfLmx4KF8uaHgoKSxhLmxvZ2dpbmdEaXJlY3RpdmVzLnRyYWNraW5nUGFyYW1zKX07aVU9ZnVuY3Rpb24oYSl7cmV0dXJuIGF8fF8uVk0oKXx8Xy5VTSgpPT09ImhvbWUifTtqVT1mdW5jdGlvbihhLGIpe2lmKGIpe2lmKGEmJmIuZGFya1RoZW1lTG9nbz8uaWNvbj8uaWNvblR5cGUpcmV0dXJuIGIuZGFya1RoZW1lTG9nby5pY29uLmljb25UeXBlO2lmKGIubGlnaHRUaGVtZUxvZ28/Lmljb24/Lmljb25UeXBlKXJldHVybiBiLmxpZ2h0VGhlbWVMb2dvLmljb24uaWNvblR5cGV9fTsKbFU9ZnVuY3Rpb24oYSl7dmFyIGI9YS5IO2ImJihrVT0oYT1rVSk/KChiPU5RKGIpKT9iLmRpc3BsYXlOYW1lfHwiIjpudWxsKXx8YTpQUShiKSk7cmV0dXJuIGtVfTttVT1mdW5jdGlvbihhLGIpe3JldHVybiBhKCkucGxheWVyU3RhdGU9PT0wJiYhIWImJiFhKCkueGYmJmEoKS5hdXRvbmF2RW5hYmxlZH07blU9ZnVuY3Rpb24oYSxiKXtiPU1TKGIpO3JldHVybiBhKCkucGxheWVyU3RhdGU9PT0wJiZiLmxlbmd0aD4wfTtvVT1mdW5jdGlvbihhKXtyZXR1cm4gYS5IPy5pc1JlYWR5Py4oKSYmYS5IPy5pc0F0TGl2ZUhlYWQoKX07cFU9ZnVuY3Rpb24oKXtyZXR1cm4gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBsYXllci1jb250cm9sLW92ZXJsYXkiKX07cGxhPWZ1bmN0aW9uKGEpe2EhPT0tMSYmXy54KCJwbGF5ZXJfY29udHJvbHNfbG9nX2NyZWF0aW9uX2VuYWJsZWQiKSYmcFUoKSYmKF8uQXEoInBjdV9jcyIsYSksXy5BcSgicGN1X2NlIikpfTsKcVU9ZnVuY3Rpb24oYSl7aWYoIWF8fGEuZ2V0VmlkZW9EYXRhKXJldHVybiBhfTtxbGE9ZnVuY3Rpb24oYSxiKXtmb3IobGV0IGMgb2YgT2JqZWN0LmtleXMoYSkpaWYoYVtjXSE9PWJbY10pcmV0dXJuITE7cmV0dXJuITB9O3JVPWZ1bmN0aW9uKCl7cmV0dXJuIF8udygiTVdFQl9TVVBQT1JUU19ET1VCTEVfVEFQX1RPX1NFRUsiKX07cmxhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGE8Yi8zPy0xOmE+MipiLzM/MTowfTtzVT1mdW5jdGlvbihhLGIsYyl7clUoKSYmdlMoey4uLmMsSmQ6YixLYjphfSkmJigoYT1jLkgpJiZhLnNlZWtCeShNYXRoLnNpZ24oYikqMTAsdm9pZCAwLHZvaWQgMCw0KSxjLnBsYXllclN0YXRlPT09Mnx8Yy5IPy5wYXVzZVZpZGVvKCksYj09PS0xP1hTKDI4MjM5KTpYUygyODI0MCkpfTsKdVU9ZnVuY3Rpb24oYSxiKXtyVSgpJiYoY2xlYXJUaW1lb3V0KHRVKSx0VT1zZXRUaW1lb3V0KCgpPT57dmFyIGM9e0tiOjAsSmQ6MCx5aDowfTtpZih2UyhhKSl7dmFyIGQ9dVMoYSl8fGEuQ2E+PWEudmlkZW9EdXJhdGlvbjtjLmVhPWEucGxheWVyU3RhdGU9PT0yfHxhLnBsYXllclN0YXRlPT09M3x8ZDtjLnZhPWEuQ2E7Yy55Yj0hMTthLkg/LmlzUmVhZHk/LigpJiYoYS5ILnNlZWtUbyhhLkNhKSxkPXsuLi5hLC4uLmN9LChkLmlzTGl2ZXx8ZC52YTxkLnZpZGVvRHVyYXRpb24pJiZkLk9uJiZkLkg/LmdldFBsYXllclN0YXRlKCkhPT0xJiZkLkg/LnBsYXlWaWRlbygpKX1lbHNlIGEuS2I9PT0xJiZiPy4oKTthLlMoYyk7Y2xlYXJUaW1lb3V0KHRVKX0sYS5iYT8udnY/PzYwMCkpfTtzbGE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gclUoKSYmYiE9PTA/YS5KZCE9PWI/MTooMCxfLmVsKSgpLWEueWg+MzUwP2EuS2I6YS5LYisxOjB9Owp1bGE9YXN5bmMgZnVuY3Rpb24oKXt2YXIgYT1hd2FpdCB2VS5qYygpO2EmJihhPWF3YWl0IGEuZ2V0KCJhdXRvLXpvb20tZW5hYmxlZCIpLHRsYSh0eXBlb2YgYT09PSJib29sZWFuIj9hOiEwKSl9O3dVPWZ1bmN0aW9uKGEpe3ZhciBiPWEudG91Y2hlc1swXSxjPWEudG91Y2hlc1sxXTthPWIucGFnZVgtYy5wYWdlWDtiPWIucGFnZVktYy5wYWdlWTtyZXR1cm4gTWF0aC5zcXJ0KGEqYStiKmIpfTsKSVU9ZnVuY3Rpb24oYSxiKXt4VShhKSYmKGEuc3RvcFByb3BhZ2F0aW9uKCksYT15VS16VSxBVXx8KGE9MCksRlQoYiksXy54KCJ3ZWJfZW5hYmxlX3NtYXJ0X3pvb20iKSYmKEJVPTAsQ1UoKSYmRFUoITEpKSxiLmJhPy5NaXx8KGIuTmF8fGIuV2R8fGIuc2J8fF8uVEUoKXx8Xy5NRSgpJiYhYi5pc0Z1bGxzY3JlZW58fChiLmlzRnVsbHNjcmVlbiYmKGEqPS0xKSwoYTwtMTAwfHxNYXRoLmFicyhhKT4xMDAmJmIuaXNGdWxsc2NyZWVuKSYmYi50YS50b2dnbGVGdWxsc2NyZWVuKHtkczohMH0pLEVVJiZPYmplY3QuYXNzaWduKEVVLnN0eWxlLHt0cmFuc2Zvcm06InNjYWxlKDEpIix0cmFuc2l0aW9uOiIwLjJzIGVhc2UifSkpLGIuV2QmJigoYT1NYXRoLmFicyhiLkpmKT41MD8hYi5OYTpiLk5hKXx8Y1QoYiksYi5TKHtXZDohMSxOYTphLEpmOjB9KSkpLEZVPSgwLF8uZWwpKCkseVU9R1U9elU9SFU9MCxBVT0hMSl9Owp4VT1mdW5jdGlvbihhKXt2YXIgYj1bYS50YXJnZXQ/LmdldEF0dHJpYnV0ZSgiaWQiKSwuLi4oYS50YXJnZXQ/LmNsYXNzTGlzdHx8W10pXTtyZXR1cm4hISJwbGF5ZXItY29udHJvbC1vdmVybGF5IHBsYXllci1jb250cm9scy1taWRkbGUgcGxheWVyLWNvbnRyb2xzLWJvdHRvbSBmdWxsc2NyZWVuLWNvbnRyb2xzIHBsYXllci1jb250cm9scy1iYWNrZ3JvdW5kIHRvcC1mdWxsLXNjcmVlbi1jb250cm9scyIuc3BsaXQoIiAiKS5maW5kKGM9PmIuZmluZChkPT5kPT09YykpfTsKS1U9ZnVuY3Rpb24oYSxiKXtpZihiLk5hKUpVKGEpJiZiLlMoe05hOiExfSk7ZWxzZSBpZihiLnBsYXllclN0YXRlIT09LTEmJmIucGxheWVyU3RhdGUhPT01KWlmKEpVKGEpKXt2YXIgYz1XUShiLkgpO2IuUyh7ZWE6ITAseWI6ITAsamU6Y30pfWVsc2V7dmFyIGQ9cmxhKGEuY2xpZW50WCxiLlRjLm9mZnNldFdpZHRoKTtjPXNsYShiLGQpO3ZhciBlPWM+Yi5LYjtsZXQgZj1iLkNhO2UmJihmPWM8Mj9iLnZhOkRRKGIuQ2ErKGQ9PT0tMT8tMToxKSoxMCwwLGIudmlkZW9EdXJhdGlvbiksc1UoYyxkLGIpKTshYi5lYSYmYzw9MT9jVChiLHtJYzohMH0pOmJUKCk7YT1iLmJhPy56diYmYi5lYSYmIUpVKGEpO2Q9e2VhOnZsYSh7Li4uYixLYjpjfSl8fGEsWWg6ITEsSmQ6ZCxDYTpmLEtiOmMseWI6ITAseWg6KDAsXy5lbCkoKX07ZT91VSh7Li4uYixLYjpjLENhOmZ9LGE/KCk9PntpZihiLkg/LmlzUmVhZHk/LigpKXtsZXQgaD1XUShiLkgpO2IuUyh7amU6aH0pfX06dm9pZCAwKTphJiZiLkgmJgooZT1XUShiLkgpLGIuUyh7amU6ZX0pKTtjPT09MSYmKGQuT249Yi5wbGF5ZXJTdGF0ZT09PTF8fGIucGxheWVyU3RhdGU9PT0zKTtiLlMoZCl9fTtKVT1mdW5jdGlvbihhKXtyZXR1cm4hXy54KCJtd2ViX2lvc19kZXRlY3RfZmFrZV9jbGlja19raWxsc3dpdGNoIikmJl8uR0smJkZVPjAmJigwLF8uZWwpKCktRlU8MTAwPyExOnR5cGVvZiBQb2ludGVyRXZlbnQhPT0idW5kZWZpbmVkIiYmYSBpbnN0YW5jZW9mIFBvaW50ZXJFdmVudCYmYS5wb2ludGVyVHlwZT09PSJtb3VzZSJ9O3ZsYT1mdW5jdGlvbihhKXtyZXR1cm4gdVMoYSl8fGEucGxheWVyU3RhdGU9PT0zfHxhLktiPjE/ITA6IWEuZWF9O3dsYT1mdW5jdGlvbihhKXtyZXR1cm4oKT0+e3ZhciBiPWEoKSxjPXt2b2x1bWU6Yi5IPy5nZXRWb2x1bWUoKT8/MCxyYzohIWIuSD8uaXNNdXRlZCgpfTtiLlMoYyl9fTsKeGxhPWZ1bmN0aW9uKGEpe3JldHVybigpPT57dmFyIGI9YSgpLGM9Yi5IO2lmKGMpe3ZhciBkPXt4YzohIWMuZ2V0T3B0aW9ucygiY2FwdGlvbnMiKX07ZC54YyYmKGQuY2FwdGlvbnNFbmFibGVkPU9RKGMpKTtiLlMoZCl9fX07CnpsYT1mdW5jdGlvbihhKXtyZXR1cm4gYj0+e3ZhciBjPWEoKSxkPWMuSDtpZihkJiYhZC5pc0tleWJvYXJkRGlzYWJsZWQ/LigpJiYheWxhKGIudGFyZ2V0LGIpKXtzd2l0Y2goYi5jb2RlKXtjYXNlICJTcGFjZSI6Y2FzZSAiS2V5SyI6ZD1XUShkKTtjLlMoe2VhOiEwLGplOmR9KTticmVhaztjYXNlICJBcnJvd0xlZnQiOmNhc2UgIktleUoiOkxVKGMsLTEpO2JyZWFrO2Nhc2UgIkFycm93UmlnaHQiOmNhc2UgIktleUwiOkxVKGMsMSk7YnJlYWs7Y2FzZSAiS2V5TSI6Yy5yYz9kLnVuTXV0ZSgpOmQubXV0ZSgpO2MuUyh7ZWE6ITB9KTticmVhaztjYXNlICJLZXlGIjpSUSgpO2QudG9nZ2xlRnVsbHNjcmVlbigpO2MuUyh7ZWE6ITB9KTtiLnN0b3BQcm9wYWdhdGlvbigpO2JyZWFrO2Nhc2UgIktleUMiOmMueGMmJlFRKGQsbFUoYykpO2MuUyh7ZWE6ITB9KTticmVhaztkZWZhdWx0OnJldHVybn1iLnByZXZlbnREZWZhdWx0KCk7Yi5zdG9wUHJvcGFnYXRpb24oKX19fTsKTFU9ZnVuY3Rpb24oYSxiKXtpZihfLngoIm13ZWJfa2V5Ym9hcmRfc2Vla19vdmVybGF5X2tpbGxzd2l0Y2giKSlhLkg/LnNlZWtCeSgxMCooYj09PS0xPy0xOjEpKSxhLlMoe2VhOiEwfSk7ZWxzZXt2YXIgYz1hLktiLGQ9YS5KZCxlPSgwLF8uZWwpKCksZj1lLWEueWg7Yz1kIT09Ynx8Zj4zNTA/MjpjKzE7ZD1iPT09LTE/LTE6MTtkPWM9PT0yPyhhLnZhfHwwKStkKjEwOmEuQ2ErZCoxMDtkPURRKGQsMCxhLnZpZGVvRHVyYXRpb24pO2U9e2VhOiEwLFloOiExLEpkOmIsQ2E6ZCxLYjpjLHliOiEwLHloOmV9O2M9PT0yJiYoZS5Pbj1hLnBsYXllclN0YXRlPT09MXx8YS5wbGF5ZXJTdGF0ZT09PTMpO3NVKGMsYix7Li4uYSwuLi5lfSk7dVUoey4uLmEsLi4uZX0pO2EuUyhlKX19Owp5bGE9ZnVuY3Rpb24oYSxiKXtpZihiLmN0cmxLZXl8fGIuYWx0S2V5fHxiLm1ldGFLZXkpcmV0dXJuITA7dmFyIGM9YS50YWdOYW1lO3JldHVybiBjPT09IklOUFVUInx8Yz09PSJURVhUQVJFQSJ8fGM9PT0iU0VMRUNUInx8Yi5rZXk9PT0iVGFiInx8Yi5jb2RlPT09IlNwYWNlIiYmKGM9PT0iQlVUVE9OInx8Yz09PSJBInx8KGE9YS5nZXRBdHRyaWJ1dGUoInJvbGUiKSkmJihhPT09ImJ1dHRvbiJ8fGE9PT0ib3B0aW9uInx8YS5zdGFydHNXaXRoKCJtZW51aXRlbSIpKSk/ITA6ITF9OwpPVT1mdW5jdGlvbihhLGIpe3ZhciBjPXsuLi5hKCkscGxheWVyU3RhdGU6MH0sZD1BUyhiKCk/LndhdGNoTmV4dFJlc3BvbnNlKSxlPUJTKGIoKT8ud2F0Y2hOZXh0UmVzcG9uc2UpO0hTKGMsZCkmJihNVShhKSxjLlMoe3lmOiFlPy5jb3VudERvd25TZWNzfHxlLmNvdW50RG93blNlY3M8PTA/MTA6ZS5jb3VudERvd25TZWNzfSksYz13aW5kb3cuc2V0SW50ZXJ2YWwoKCk9Pnt2YXIgZj1hKCk7aWYoZi55ZiE9PTEpZi5TKHt5ZjpmLnlmLTF9KTtlbHNle01VKGEpO2Y9YigpPy53YXRjaE5leHRSZXNwb25zZTtmPUFTKGYpO2xldCBoPWY/LnNldHM/LlswXS5hdXRvcGxheVZpZGVvO2gmJl8uQUooaCxmLCExLHthdXRvbmF2OiIxIn0pfX0sMUUzKSxfLngoIm13ZWJfcGxheWVyX3VuaWZpY2F0aW9uX3N0YXRlX3JlZmFjdG9yX2tpbGxzd2l0Y2giKT9OVT1jOmEoKS5TKHtGazpjfSkpfTsKTVU9ZnVuY3Rpb24oYSl7IV8ueCgibXdlYl9wbGF5ZXJfdW5pZmljYXRpb25fc3RhdGVfcmVmYWN0b3Jfa2lsbHN3aXRjaCIpJiZhPyhhPWEoKSxhLkZrIT09dm9pZCAwJiYoY2xlYXJJbnRlcnZhbChhLkZrKSxhLlMoe0ZrOnZvaWQgMH0pKSk6TlUmJihjbGVhckludGVydmFsKE5VKSxOVT12b2lkIDApfTsKQmxhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGM9Pnt2YXIgZD1hKCksZT17eGY6ITF9O2UucGxheWVyU3RhdGU9YztkLkgmJlZRKGQuSCkmJihlLnBsYXllclN0YXRlPTIpO2M9PT0xJiYoZC5IPy5sb2FkTW9kdWxlKCJjYXB0aW9ucyIpLF8ueCgibXdlYl9iZXR0ZXJfY2FwdGlvbnNfcGxhY2VtZW50IikmJmQuSD8uc2V0U3VidGl0bGVzVGFyZ2V0Q29udGFpbmVySWQoImNhcHRpb25zLWdhbG9yZS1jb250YWluZXIiKSk7Yz09PTAmJihkLkg/LnVubG9hZE1vZHVsZSgiY2FwdGlvbnMiKSxfLngoIm13ZWJfYmV0dGVyX2NhcHRpb25zX3BsYWNlbWVudCIpJiZkLkg/LmNsZWFyU3VidGl0bGVzVGFyZ2V0Q29udGFpbmVySWQoKSk7aWYoZS5wbGF5ZXJTdGF0ZT09PS0xKWUuZWE9ITA7ZWxzZSBpZihlLnBsYXllclN0YXRlPT09NSllLmVhPSEwO2Vsc2UgaWYoZS5wbGF5ZXJTdGF0ZT09PTMpZS5lYT0hMCxiVCgpO2Vsc2UgaWYoZS5wbGF5ZXJTdGF0ZT09PTEpZC5zYnx8ZC55cXx8KGQueWI/CmNUKHsuLi5kLC4uLmV9KTplLmVhPSExKTtlbHNlIGlmKGUucGxheWVyU3RhdGU9PT0yKWJUKCk7ZWxzZSBpZihlLnBsYXllclN0YXRlPT09MCl7ZS5lYT0hMDtiVCgpO2M9YSgpO3ZhciBmPWIoKT8ud2F0Y2hOZXh0UmVzcG9uc2U7aWYoZj1fLkIoZj8uY29udGVudHM/LnNpbmdsZUNvbHVtbldhdGNoTmV4dFJlc3VsdHM/LmF1dG9wbGF5Py5hdXRvcGxheT8uYXV0b3BsYXlFeHBsaWNpdENob2ljZURpYWxvZ1JlbmRlcmVyLEFsYSkpZi5kaXNhYmxlQnV0dG9uU3R5bGVPdmVycmlkZXM9ITA7IWMudGEuVWwoKSYmZiYmKGMudGEuZXhpdEZ1bGxzY3JlZW4oKSxfLkFKKHtvcGVuUG9wdXBBY3Rpb246e3BvcHVwOntjb25maXJtRGlhbG9nUmVuZGVyZXI6Zn0scG9wdXBUeXBlOiJESUFMT0cifX0se30sITEpKTtkLmF1dG9uYXZFbmFibGVkJiYoT1UoYSxiKSxfLk1PKCIjcGxheWVyLWVuZHNjcmVlbiAueXR3UGxheWVyRW5kc2NyZWVuVG9wUGFuZWwgYnV0dG9uIiw1LHtybDohMH0pKX1kLlMoZSl9fTsKQ2xhPWZ1bmN0aW9uKGEpe1BVKCgpPT5hKSgpfTtEbGE9ZnVuY3Rpb24oYSl7cmV0dXJuKCk9Pnt2YXIgYj1hKCksYz1iLkg7YyYmVlEoYykmJmIuUyh7cGxheWVyU3RhdGU6Mn0pfX07ClBVPWZ1bmN0aW9uKGEpe3JldHVybiBiPT57dmFyIGM9YSgpO3ZhciBkPWMuSDt2YXIgZT1kPy5nZXRWaWRlb0RhdGEoKSxmPWU/LmlzTGl2ZXx8ITEsaD1lPy52aWRlb19pZDtlPWU/LmFsbG93TGl2ZUR2cj8/ITA7Zj17dmlkZW9EdXJhdGlvbjpVUShkfHx2b2lkIDApLGlzTGl2ZTpmLHZpZGVvSWQ6aCxpc0xpdmVEdnJFbmFibGVkOmV9O2YudmlkZW9JZCE9PWMudmlkZW9JZCYmKGY9ey4uLmRUKGQpLC4uLmZ9KTtiPy5wbGF5ZXJ0eXBlJiYoZi5wbGF5ZXJUeXBlPWIucGxheWVydHlwZSk7ZCYmKGYueGM9ISFkLmdldE9wdGlvbnMoImNhcHRpb25zIiksYj1mLGg9KGg9ZC5nZXRTdG9yeWJvYXJkTGV2ZWwoZC5nZXROdW1iZXJPZlN0b3J5Ym9hcmRMZXZlbHMoKS0xKT8uaW50ZXJ2YWxNcyk/aC8xRTM6dm9pZCAwLGIuWnI9aCxmLnhjJiYoZi5jYXB0aW9uc0VuYWJsZWQ9T1EoZCkpKTtmLnJjPSEhZD8uaXNNdXRlZCgpO2Q9ZjtkLmF1dG9uYXZFbmFibGVkPWMudGEuZGUoKTtkLmlzUGxheWxpc3Q9ClhRKCk7Yy5iYT8uTWwhPT12b2lkIDAmJihkLnliPSEwKTtkLmlzRnVsbHNjcmVlbj1jLmlzRnVsbHNjcmVlbjtkLnBsYXllclN0YXRlPT09MyYmKGQuZWE9ITApO2QucGxheWVyU3RhdGU9PT0tMSYmKGQuZWE9ITApO2I9Yy5HYzt5Uyh7Li4uYywuLi5kfSk/YiYmKGIuc3R5bGUuZGlzcGxheT0ibm9uZSIpOmImJihiLnN0eWxlLmRpc3BsYXk9IiIpO01VKGEpO2MuUyhkKX19OwpFbGE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYz0+e3ZhciBkPWEoKSxlPWIoKSxmPWQuSDtpZihmKXtkLnZpZGVvSWQ9PT12b2lkIDAmJkNsYShkKTtpZihlJiZjIT09dm9pZCAwKXt2YXIgaD17Li4uZCx2YTpjfTsoZT1FUyhlLnBsYXllck92ZXJsYXlSZW5kZXJlcikpJiYhaC5pc0RyYWdnaW5nJiYoaD1rVChoLGUpLG1UKGgpKX1oPWYuZ2V0UHJlc2VudGluZ1BsYXllclR5cGUoKTtjPXt2YTpjfHwwLFFtOmYuZ2V0VmlkZW9Mb2FkZWRGcmFjdGlvbigpLHBsYXllclR5cGU6aH07dVMoZCkmJihjLnZhPWQudmlkZW9EdXJhdGlvbik7ZC5pc0xpdmUmJihoPWYuZ2V0UHJvZ3Jlc3NTdGF0ZShoKSxjLnZhLT1oLnNlZWthYmxlU3RhcnQsYy52aWRlb0R1cmF0aW9uPVVRKGYpKTt5UyhkKSYmZGVsZXRlIGMudmE7Zj1jO3lTKHsuLi5kLC4uLmZ9KSYmKGM9ZC5HYykmJihjLnN0eWxlLmRpc3BsYXk9Im5vbmUiKTtkLlMoZil9fX07CkZsYT1mdW5jdGlvbihhKXtyZXR1cm4oKT0+e2EoKS5TKHtlYTohMSxyYzohMX0pfX07R2xhPWZ1bmN0aW9uKGEpe3JldHVybiBiPT57YSgpLlMoe2lzRnVsbHNjcmVlbjpiLmZ1bGxzY3JlZW4sTmE6ITF9KX19O0hsYT1mdW5jdGlvbihhKXtyZXR1cm4oKT0+e3ZhciBiPWEoKSxjPWIuSDtiLlMoe2lzRnVsbHNjcmVlbjpiLnRhLmlzRnVsbHNjcmVlbigpLGNhcHRpb25zRW5hYmxlZDpjP09RKGMpOmIuY2FwdGlvbnNFbmFibGVkfSl9fTtJbGE9ZnVuY3Rpb24oYSl7cmV0dXJuKCk9Pnt2YXIgYj1hKCk7Xy5WTSh7aHJlZjp3aW5kb3cubG9jYXRpb24uaHJlZn0pfHxiLlMoe2lzRnVsbHNjcmVlbjohMX0pfX07CkpsYT1mdW5jdGlvbihhKXtyZXR1cm4oKT0+e3ZhciBiPWEoKTtbOTAsMjcwXS5pbmNsdWRlcyhNYXRoLmFicyh3aW5kb3cub3JpZW50YXRpb24/d2luZG93Lm9yaWVudGF0aW9uOndpbmRvdy5zY3JlZW4/Lm9yaWVudGF0aW9uPy5hbmdsZT93aW5kb3cuc2NyZWVuLm9yaWVudGF0aW9uLmFuZ2xlOjApKT9kb2N1bWVudC5ib2R5LnNldEF0dHJpYnV0ZSgibGFuZHNjYXBlIiwidHJ1ZSIpOmRvY3VtZW50LmJvZHkucmVtb3ZlQXR0cmlidXRlKCJsYW5kc2NhcGUiKTtiLk5hJiZiLlMoe05hOiExfSl9fTtLbGE9ZnVuY3Rpb24oYSl7cmV0dXJuKCk9Pnt2YXIgYj1hKCk7Yi50YS5leGl0RnVsbHNjcmVlbigpO2IuUyh7aXNGdWxsc2NyZWVuOiExfSl9fTtMbGE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYz0+e3ZhciBkPWEoKTtjLmRldGFpbD8ucGF1c2VkPyhNVShhKSxkLnpmfHxkLlMoe3pmOiEwfSkpOih1UyhkKSYmT1UoYSxiKSxkLnpmJiZkLlMoe3pmOiExfSkpfX07Ck1sYT1mdW5jdGlvbihhKXtyZXR1cm4oKT0+e3ZhciBiPWEoKSxjPWIudGEuZGUoKTtjfHxNVShhKTtiLlMoe2F1dG9uYXZFbmFibGVkOmN9KX19O05sYT1mdW5jdGlvbihhKXtyZXR1cm4gYj0+e2EoKS5TKHtSeDohIWJ9KX19O1FVPWZ1bmN0aW9uKGEpe01VKGEucHJvcHMpO2EucHJvcHMoKS5TKHt4ZjohMH0pfTtSVT1mdW5jdGlvbihhKXt2YXIgYj1fLldEKCgpPT5hLnNldHNbMF0ucHJldmlvdXNCdXR0b25WaWRlbyksYz1fLldEKCgpPT5hLnNldHNbMF0ubmV4dEJ1dHRvblZpZGVvKTtyZXR1cm57VWE6YixuZXh0OmN9fTtTVT1mdW5jdGlvbihhLGIpe2I9YigpPy5ydW5zPy5bMF0ubmF2aWdhdGlvbkVuZHBvaW50O3ZhciBjPV8uQihiLF8uVkQpPy51cmw7YSgpLkg/LmlzRW1iZWRzU2hvcnRzTW9kZT8uKCkmJmMmJmMuaW5jbHVkZXMoIi93YXRjaD92PSIpJiYoXy5CKGIsXy5WRCkudXJsPWMucmVwbGFjZSgiL3dhdGNoP3Y9IiwiL3Nob3J0cy8iKSk7cmV0dXJuIGJ9OwpVVT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9IiIsZT0iIjtzd2l0Y2goYSl7Y2FzZSAtMTpjYXNlIDA6ZD1iPyJWT0xVTUVfT0ZGIjpjPyJWT0xVTUVfT0ZGX0RFTEhJX1BMQVlFUiI6IlZPTFVNRV9PRkZfRklMTEVEIjtlPU9sYTticmVhaztjYXNlIDE6ZD1iPyJWT0xVTUVfVVBfT1VUTElORSI6Yz8iVk9MVU1FX1VQX0RFTEhJX1BMQVlFUl9GSUxMRUQiOiJWT0xVTUVfVVBfRklMTEVEIjtlPVRVO2JyZWFrO2Nhc2UgMjpkPWI/IlZPTFVNRV9ET1dOX09VVExJTkUiOmM/IlZPTFVNRV9ET1dOX0RFTEhJX1BMQVlFUl9GSUxMRUQiOiJWT0xVTUVfRE9XTl9GSUxMRUQiO2U9VFU7YnJlYWs7ZGVmYXVsdDpfLmViKGEsdm9pZCAwKX1yZXR1cm57aWNvbk5hbWU6ZCxhcmlhTGFiZWw6ZX19OwpQbGE9ZnVuY3Rpb24oYSxiKXt0eXBlb2YgVlU9PT0ibnVtYmVyIiYmY2xlYXJUaW1lb3V0KFZVKTtWVT1zZXRUaW1lb3V0KCgpPT57YS5TKHtZaDohMX0pO1ZVPXZvaWQgMH0sXy5CKGIuZW5hYmxlZEVkdUNvbW1hbmQsV1UpPy5kdXJhdGlvbk1zfHw0RTMpfTtYVT1mdW5jdGlvbihhLGIsYyl7YS5TKHthdXRvbmF2RW5hYmxlZDpiLFloOmN9KTthLnRhLlJqKGIsYyl9O1lVPWZ1bmN0aW9uKGEpe3JldHVybiBfLklFKHtkaXNwbGF5OigpPT5hKCk/IiI6Im5vbmUifSl9O1FsYT1mdW5jdGlvbihhKXtpZihfLngoImVuYWJsZV9jdXN0b21fc2NydWJiZXJfdjIiKSYmYSlyZXR1cm57cGxheWhlYWRJbWFnZTphLnBsYXloZWFkSW1hZ2UscGxheWhlYWRSZXdpbmRJbWFnZTphLnBsYXloZWFkUmV3aW5kSW1hZ2UscGxheWhlYWRGYXN0Rm9yd2FyZEltYWdlOmEucGxheWhlYWRGYXN0Rm9yd2FyZEltYWdlfX07ClJsYT1mdW5jdGlvbihhKXthPWE/LmdldFBsYXllclN0YXRlT2JqZWN0Py4oKTtyZXR1cm4oYT8uaXNDdWVkfHxhPy5pc1Vuc3RhcnRlZCkmJiFhPy5pc0Vycm9yfTtaVT1mdW5jdGlvbihhKXthLmZvckVhY2goYj0+e2IoKX0pO2EubGVuZ3RoPTB9O1NsYT1mdW5jdGlvbihhKXt2YXIgYj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtiLmlkPSJwbGF5ZXItY29udHJvbHMiO2IuY2xhc3NMaXN0LmFkZCgieXRQbGF5ZXJDb250cm9sc0NvbnRhaW5lckhvc3QiKTt2YXIgW2MsZF09Xy5KKHt9LHZvaWQgMCwiYmpKSWxkIik7YS5hZGRFdmVudExpc3RlbmVyKCJvblZpZGVvRGF0YUNoYW5nZSIsKCk9PnskVShhLGIsYyxkKX0pO2EuYWRkRXZlbnRMaXN0ZW5lcigib25SZWFkeSIsKCk9PnskVShhLGIsYyxkKX0pO3JldHVybiBifTsKJFU9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9VGxhKGEpO2QoZSk7aGphKGIsIWEuZ2V0UGxheWVyU3RhdGVPYmplY3QoKT8uaXNFcnJvcnx8ISFhVihlKSk7Yi5oYXNDaGlsZE5vZGVzKCl8fF8ueEYoYiwoKT0+VWxhKGEsYixjKSwiJGUiKX07ClVsYT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9Xy5OKCgpPT5hVihjKCkpLHZvaWQgMCwiZFc1OGJkIiksZT1fLnVGKGs9PntpZighXy54KCJlbWJlZHNfZW5hYmxlX2VtYzNkc19wZnAiKSlyZXR1cm4hMTt2YXIgbD1jKCk7cmV0dXJuKGw9bC5qYj8uZW1iZWRkZWRQbGF5ZXJDb25maWc/LmVtYmVkZGVkUGxheWVyTW9kZT8/bC5wbGF5ZXJSZXNwb25zZT8ucGxheWVyQ29uZmlnPy5lbWJlZGRlZFBsYXllckNvbmZpZz8uZW1iZWRkZWRQbGF5ZXJNb2RlKT9sPT09IkVNQkVEREVEX1BMQVlFUl9NT0RFX1BGUCI6a30se2luaXRpYWw6ITF9KSxmPV8udUYoaz0+e2lmKCFfLngoImVtYmVkc19lbmFibGVfZW1jM2RzX3BmbCIpKXJldHVybiExO3ZhciBsPWMoKTtyZXR1cm4obD1sLmpiPy5lbWJlZGRlZFBsYXllckNvbmZpZz8uZW1iZWRkZWRQbGF5ZXJNb2RlPz9sLnBsYXllclJlc3BvbnNlPy5wbGF5ZXJDb25maWc/LmVtYmVkZGVkUGxheWVyQ29uZmlnPy5lbWJlZGRlZFBsYXllck1vZGUpPwpsPT09IkVNQkVEREVEX1BMQVlFUl9NT0RFX1BGTCI6a30se2luaXRpYWw6ITF9KSxoPV8uTigoKT0+e2lmKCFfLngoImVtYmVkc19lbmFibGVfc2hvcnRzIil8fF8ueCgiZW1iZWRzX2VuYWJsZV9zaG9ydHNfY291bnRlcmZhY3R1YWwiKSlyZXR1cm4hMTt2YXIgaz1jKCkuUGg/LmVuZHBvaW50O3JldHVybiEoIWt8fCFfLkIoayxfLlREKSl9LHZvaWQgMCwiV3FnSnJiIik7Xy5uRSgoKT0+e18ueCgiZW1iZWRzX2VuYWJsZV9zaG9ydHMiKSYmKF8ueCgiZW1iZWRzX2VuYWJsZV9zaG9ydHNfY291bnRlcmZhY3R1YWwiKXx8KGUoKXx8ZigpfHwhaCgpP2Euc2V0TG9vcFZpZGVvKCExKTphLnNldExvb3BWaWRlbyghMCkpKX0sIlpnVXdnZSIpO3JldHVybiBfLksoXy5FRSxudWxsLF8uSyhfLkNFLHt3aGVuOigpPT5kKCl9LCgpPT5fLksoYlYse2RhdGE6KCk9PmQoKX0pKSxfLksoXy5DRSx7d2hlbjplfSwoKT0+Xy5LKFZsYSx7SDphLGNvbnRleHQ6dGthKGEsYiksZGF0YTpjfSkpLF8uSyhfLkNFLAp7d2hlbjpmfSwoKT0+e3ZhciBrPXJTKGEpLGw9YS5nZXRXZWJQbGF5ZXJDb250ZXh0Q29uZmlnKCk7bD17Li4uc1MobCksWHc6ITAsWXc6ITB9O3JldHVybiBfLksoY1Yse2NvbnRleHQ6e3RhOmssYmE6bCxUYzpkb2N1bWVudC5ib2R5LEdjOmJ9LGRhdGE6Y30pfSksXy5LKF8uQ0Use3doZW46aH0sKCk9Pl8uSyhXbGEse3JlZWxJdGVtV2F0Y2hSZXNwb25zZTooKT0+YygpLnJlZWxJdGVtV2F0Y2hSZXNwb25zZSxqYjooKT0+YygpLmpiLFBoOigpPT5jKCkuUGgsSDooKT0+YSxjb250ZXh0OnNrYShhLGIpfSkpLF8uSyhfLkRFLG51bGwsKCk9Pnt2YXIgaz1yUyhhKSxsPXNTKGEuZ2V0V2ViUGxheWVyQ29udGV4dENvbmZpZygpKTtyZXR1cm4gXy5LKGNWLHtjb250ZXh0Ont0YTprLGJhOmwsVGM6ZG9jdW1lbnQuYm9keSxHYzpifSxkYXRhOmN9KX0pKX07CmFWPWZ1bmN0aW9uKGEpe3JldHVybiBhLmpiPy5wcmV2aWV3UGxheWFiaWxpdHlTdGF0dXM/LmVycm9yU2NyZWVuPy5wbGF5ZXJJbnRlcnN0aXRpYWxSZW5kZXJlcnx8YS5wbGF5ZXJSZXNwb25zZT8ucGxheWFiaWxpdHlTdGF0dXM/LmVycm9yU2NyZWVuPy5wbGF5ZXJJbnRlcnN0aXRpYWxSZW5kZXJlcn07VGxhPWZ1bmN0aW9uKGEpe3ZhciBiPWEuZ2V0UGxheWVyUmVzcG9uc2UoKSxjPWEuZ2V0V2F0Y2hOZXh0UmVzcG9uc2UoKSxkPWEuZ2V0UmVlbEl0ZW1XYXRjaFJlc3BvbnNlKCksZT1hLmdldEVtYmVkZGVkUGxheWVyUmVzcG9uc2UoKSxmPWEuZ2V0UmVzb2x2ZVVybFJlc3BvbnNlKCk7cmV0dXJue3BsYXllck92ZXJsYXlSZW5kZXJlcjpjPy5wbGF5ZXJPdmVybGF5cz8ucGxheWVyT3ZlcmxheVJlbmRlcmVyLHBsYXllclJlc3BvbnNlOmIsUGg6Zix3YXRjaE5leHRSZXNwb25zZTpjLHJlZWxJdGVtV2F0Y2hSZXNwb25zZTpkLGpiOmUsSDphfX07Cl8uZFY9ZnVuY3Rpb24oYSl7Xy5BcSgiZXBfaW5pdF9ycyIpO3ZhciBiPWRvY3VtZW50LmJvZHk7YT1TbGEoYSk7Yi5hcHBlbmRDaGlsZChhKTthPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2EuaWQ9ImJvdHRvbS1zaGVldC13cmFwcGVyIjsoMCxfLklDKShhLFVqYSk7Yi5hcHBlbmRDaGlsZChhKTtfLkFxKCJlcF9pbml0X3JlIil9O18uZz1GUS5wcm90b3R5cGU7Xy5nLmNsb25lPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBGUSh0aGlzLmxlZnQsdGhpcy50b3AsdGhpcy53aWR0aCx0aGlzLmhlaWdodCl9OwpfLmcuY29udGFpbnM9ZnVuY3Rpb24oYSl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIF8uZVYmJmEgaW5zdGFuY2VvZiBfLmVWP2EueD49dGhpcy5sZWZ0JiZhLng8PXRoaXMubGVmdCt0aGlzLndpZHRoJiZhLnk+PXRoaXMudG9wJiZhLnk8PXRoaXMudG9wK3RoaXMuaGVpZ2h0OnRoaXMubGVmdDw9YS5sZWZ0JiZ0aGlzLmxlZnQrdGhpcy53aWR0aD49YS5sZWZ0K2Eud2lkdGgmJnRoaXMudG9wPD1hLnRvcCYmdGhpcy50b3ArdGhpcy5oZWlnaHQ+PWEudG9wK2EuaGVpZ2h0fTtfLmcuZ2V0U2l6ZT1mdW5jdGlvbigpe3JldHVybiBuZXcgXy5uZCh0aGlzLndpZHRoLHRoaXMuaGVpZ2h0KX07Xy5nLmNlaWw9ZnVuY3Rpb24oKXt0aGlzLmxlZnQ9TWF0aC5jZWlsKHRoaXMubGVmdCk7dGhpcy50b3A9TWF0aC5jZWlsKHRoaXMudG9wKTt0aGlzLndpZHRoPU1hdGguY2VpbCh0aGlzLndpZHRoKTt0aGlzLmhlaWdodD1NYXRoLmNlaWwodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTsKXy5nLmZsb29yPWZ1bmN0aW9uKCl7dGhpcy5sZWZ0PU1hdGguZmxvb3IodGhpcy5sZWZ0KTt0aGlzLnRvcD1NYXRoLmZsb29yKHRoaXMudG9wKTt0aGlzLndpZHRoPU1hdGguZmxvb3IodGhpcy53aWR0aCk7dGhpcy5oZWlnaHQ9TWF0aC5mbG9vcih0aGlzLmhlaWdodCk7cmV0dXJuIHRoaXN9O18uZy5yb3VuZD1mdW5jdGlvbigpe3RoaXMubGVmdD1NYXRoLnJvdW5kKHRoaXMubGVmdCk7dGhpcy50b3A9TWF0aC5yb3VuZCh0aGlzLnRvcCk7dGhpcy53aWR0aD1NYXRoLnJvdW5kKHRoaXMud2lkdGgpO3RoaXMuaGVpZ2h0PU1hdGgucm91bmQodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTtfLmcudHJhbnNsYXRlPWZ1bmN0aW9uKGEsYil7ImZ1bmN0aW9uIj09dHlwZW9mIF8uZVYmJmEgaW5zdGFuY2VvZiBfLmVWPyh0aGlzLmxlZnQrPWEueCx0aGlzLnRvcCs9YS55KToodGhpcy5sZWZ0Kz1hLHR5cGVvZiBiPT09Im51bWJlciImJih0aGlzLnRvcCs9YikpO3JldHVybiB0aGlzfTsKXy5nLnNjYWxlPWZ1bmN0aW9uKGEsYil7Yj10eXBlb2YgYj09PSJudW1iZXIiP2I6YTt0aGlzLmxlZnQqPWE7dGhpcy53aWR0aCo9YTt0aGlzLnRvcCo9Yjt0aGlzLmhlaWdodCo9YjtyZXR1cm4gdGhpc307CnZhciB2VT1jbGFzc3tjb25zdHJ1Y3RvcihhKXt0aGlzLnRva2VuPWF9c3RhdGljIGFzeW5jIGpjKCl7cmV0dXJuIG5ldyBQcm9taXNlKGE9PntfLlBsKCkudGhlbihiPT57Yj8odlUuaW5zdGFuY2V8fCh2VS5pbnN0YW5jZT1uZXcgdlUoYikpLGEodlUuaW5zdGFuY2UpKTphKHZvaWQgMCl9KX0pfWFzeW5jIGdldChhKXtpZihhPWF3YWl0IChhd2FpdCBHUSh0aGlzLnRva2VuKSkuZ2V0KCJwcmVmcyIsYSkpe3ZhciBiPSgwLF8uZWwpKCk7cmV0dXJuIGEuZXhwaXJhdGlvblRpbWVzdGFtcE1zPD1iP3ZvaWQgMDphLnZhbHVlfX1hc3luYyBzZXQoYSxiLGM9MzE1MzZFMyl7dmFyIGQ9KDAsXy5lbCkoKTthPXtrZXk6YSx2YWx1ZTpiLGV4cGlyYXRpb25UaW1lc3RhbXBNczpkK2MqMUUzfTtiPWF3YWl0IEdRKHRoaXMudG9rZW4pO2F3YWl0IF8ubWwoYiwicHJlZnMiLGEpfWFzeW5jIHJlbW92ZShhKXthd2FpdCAoYXdhaXQgR1EodGhpcy50b2tlbikpLmRlbGV0ZSgicHJlZnMiLGEpfX0sWVE9Cm51bGwsZlY9e1NuOnsxRTM6e290aGVyOiIwSyJ9LDFFNDp7b3RoZXI6IjAwSyJ9LDFFNTp7b3RoZXI6IjAwMEsifSwxRTY6e290aGVyOiIwTSJ9LDFFNzp7b3RoZXI6IjAwTSJ9LDFFODp7b3RoZXI6IjAwME0ifSwxRTk6e290aGVyOiIwQiJ9LDFFMTA6e290aGVyOiIwMEIifSwxRTExOntvdGhlcjoiMDAwQiJ9LDFFMTI6e290aGVyOiIwVCJ9LDFFMTM6e290aGVyOiIwMFQifSwxRTE0OntvdGhlcjoiMDAwVCJ9fSxWczp7MUUzOntvdGhlcjoiMCB0aG91c2FuZCJ9LDFFNDp7b3RoZXI6IjAwIHRob3VzYW5kIn0sMUU1OntvdGhlcjoiMDAwIHRob3VzYW5kIn0sMUU2OntvdGhlcjoiMCBtaWxsaW9uIn0sMUU3OntvdGhlcjoiMDAgbWlsbGlvbiJ9LDFFODp7b3RoZXI6IjAwMCBtaWxsaW9uIn0sMUU5OntvdGhlcjoiMCBiaWxsaW9uIn0sMUUxMDp7b3RoZXI6IjAwIGJpbGxpb24ifSwxRTExOntvdGhlcjoiMDAwIGJpbGxpb24ifSwxRTEyOntvdGhlcjoiMCB0cmlsbGlvbiJ9LDFFMTM6e290aGVyOiIwMCB0cmlsbGlvbiJ9LAoxRTE0OntvdGhlcjoiMDAwIHRyaWxsaW9uIn19fSxyUj1mVjtyUj1mVjt2YXIgcVI9e0FFRDpbMiwiZGgiLCJcdTA2MmYuXHUwNjI1LiJdLEFMTDpbMCwiTGVrIiwiTGVrIl0sQVVEOlsyLCIkIiwiQVUkIl0sQkRUOlsyLCJcdTA5ZjMiLCJUayJdLEJHTjpbMiwibGV2IiwibGV2Il0sQlJMOlsyLCJSJCIsIlIkIl0sQ0FEOlsyLCIkIiwiQyQiXSxDREY6WzIsIkZyQ0QiLCJDREYiXSxDSEY6WzIsIkNIRiIsIkNIRiJdLENMUDpbMCwiJCIsIkNMJCJdLENOWTpbMiwiXHUwMGE1IiwiUk1CXHUwMGE1Il0sQ09QOlszMiwiJCIsIkNPTCQiXSxDUkM6WzAsIlx1MjBhMSIsIkNSXHUyMGExIl0sQ1pLOls1MCwiS1x1MDEwZCIsIktcdTAxMGQiXSxES0s6WzUwLCJrci4iLCJrci4iXSxET1A6WzIsIlJEJCIsIlJEJCJdLEVHUDpbMiwiXHUwMGEzIiwiTEUiXSxFVEI6WzIsIkJpcnIiLCJCaXJyIl0sRVVSOlsyLCJcdTIwYWMiLCJcdTIwYWMiXSxHQlA6WzIsIlx1MDBhMyIsIkdCXHUwMGEzIl0sSEtEOlsyLCIkIiwiSEskIl0sSFJLOlsyLCJrbiIsImtuIl0sSFVGOlszNCwKIkZ0IiwiRnQiXSxJRFI6WzAsIlJwIiwiUnAiXSxJTFM6WzM0LCJcdTIwYWEiLCJJTFx1MjBhYSJdLElOUjpbMiwiXHUyMGI5IiwiUnMiXSxJUlI6WzAsIlJpYWwiLCJJUlIiXSxJU0s6WzAsImtyIiwia3IiXSxKTUQ6WzIsIiQiLCJKQSQiXSxKUFk6WzAsIlx1MDBhNSIsIkpQXHUwMGE1Il0sS1JXOlswLCJcdTIwYTkiLCJLUlx1MjBhOSJdLExLUjpbMiwiUnMiLCJTTFJzIl0sTFRMOlsyLCJMdCIsIkx0Il0sTU5UOlswLCJcdTIwYWUiLCJNTlx1MjBhZSJdLE1WUjpbMiwiUmYiLCJNVlIiXSxNWE46WzIsIiQiLCJNZXgkIl0sTVlSOlsyLCJSTSIsIlJNIl0sTk9LOls1MCwia3IiLCJOT2tyIl0sUEFCOlsyLCJCLy4iLCJCLy4iXSxQRU46WzIsIlMvLiIsIlMvLiJdLFBIUDpbMiwiXHUyMGIxIiwiUEhQIl0sUEtSOlswLCJScyIsIlBLUnMuIl0sUExOOls1MCwielx1MDE0MiIsInpcdTAxNDIiXSxST046WzIsIlJPTiIsIlJPTiJdLFJTRDpbMCwiZGluIiwiUlNEIl0sUlVCOls1MCwiXHUyMGJkIiwKIlJVQiJdLFNBUjpbMiwiU0FSIiwiU0FSIl0sU0VLOls1MCwia3IiLCJrciJdLFNHRDpbMiwiJCIsIlMkIl0sVEhCOlsyLCJcdTBlM2YiLCJUSEIiXSxUUlk6WzIsIlx1MjBiYSIsIlRSWSJdLFRXRDpbMiwiJCIsIk5UJCJdLFRaUzpbMCwiVFNoIiwiVFNoIl0sVUFIOlsyLCJcdTA0MzNcdTA0NDBcdTA0M2QuIiwiVUFIIl0sVVNEOlsyLCIkIiwiVVMkIl0sVVlVOlsyLCIkIiwiJFUiXSxWTkQ6WzQ4LCJcdTIwYWIiLCJWTlx1MjBhYiJdLFlFUjpbMCwiUmlhbCIsIlJpYWwiXSxaQVI6WzIsIlIiLCJaQVIiXX07dmFyIGdWOwpnVj17REFZOntMT05HOiJvbmV7IyBkYXl9b3RoZXJ7IyBkYXlzfSIsU0hPUlQ6Im9uZXsjIGRheX1vdGhlcnsjIGRheXN9IixOQVJST1c6Im9uZXsjZH1vdGhlcnsjZH0ifSxIT1VSOntMT05HOiJvbmV7IyBob3VyfW90aGVyeyMgaG91cnN9IixTSE9SVDoib25leyMgaHJ9b3RoZXJ7IyBocn0iLE5BUlJPVzoib25leyNofW90aGVyeyNofSJ9LE1JTlVURTp7TE9ORzoib25leyMgbWludXRlfW90aGVyeyMgbWludXRlc30iLFNIT1JUOiJvbmV7IyBtaW59b3RoZXJ7IyBtaW59IixOQVJST1c6Im9uZXsjbX1vdGhlcnsjbX0ifSxNT05USDp7TE9ORzoib25leyMgbW9udGh9b3RoZXJ7IyBtb250aHN9IixTSE9SVDoib25leyMgbXRofW90aGVyeyMgbXRoc30iLE5BUlJPVzoib25leyNtfW90aGVyeyNtfSJ9LFNFQ09ORDp7TE9ORzoib25leyMgc2Vjb25kfW90aGVyeyMgc2Vjb25kc30iLFNIT1JUOiJvbmV7IyBzZWN9b3RoZXJ7IyBzZWN9IixOQVJST1c6Im9uZXsjc31vdGhlcnsjc30ifSxXRUVLOntMT05HOiJvbmV7IyB3ZWVrfW90aGVyeyMgd2Vla3N9IiwKU0hPUlQ6Im9uZXsjIHdrfW90aGVyeyMgd2tzfSIsTkFSUk9XOiJvbmV7I3d9b3RoZXJ7I3d9In0sWUVBUjp7TE9ORzoib25leyMgeWVhcn1vdGhlcnsjIHllYXJzfSIsU0hPUlQ6Im9uZXsjIHlyfW90aGVyeyMgeXJzfSIsTkFSUk9XOiJvbmV7I3l9b3RoZXJ7I3l9In19O3ZhciBoVj17Q2U6WyJ7MH0sIHsxfSIsInswfSwgezF9IiwiezB9LCB7MX0iXSxSbjpbInswfSBhbmQgezF9IiwiezB9ICYgezF9IiwiezB9LCB7MX0iXSxtazpbInswfSwgYW5kIHsxfSIsInswfSwgJiB7MX0iLCJ7MH0sIHsxfSJdLGlvOlsiezB9IG9yIHsxfSIsInswfSBvciB7MX0iLCJ7MH0gb3IgezF9Il0seGs6WyJ7MH0sIG9yIHsxfSIsInswfSwgb3IgezF9IiwiezB9LCBvciB7MX0iXSxybzpbInswfSwgezF9IiwiezB9LCB7MX0iLCJ7MH0gezF9Il0scW86WyJ7MH0sIHsxfSIsInswfSwgezF9IiwiezB9IHsxfSJdLEFrOlsiezB9LCB7MX0iLCJ7MH0sIHsxfSIsInswfSB7MX0iXX07CmhWPXtDZTpbInswfSwgezF9IiwiezB9LCB7MX0iLCJ7MH0sIHsxfSJdLFJuOlsiezB9IGFuZCB7MX0iLCJ7MH0gJiB7MX0iLCJ7MH0sIHsxfSJdLG1rOlsiezB9LCBhbmQgezF9IiwiezB9LCAmIHsxfSIsInswfSwgezF9Il0saW86WyJ7MH0gb3IgezF9IiwiezB9IG9yIHsxfSIsInswfSBvciB7MX0iXSx4azpbInswfSwgb3IgezF9IiwiezB9LCBvciB7MX0iLCJ7MH0sIG9yIHsxfSJdLHJvOlsiezB9LCB7MX0iLCJ7MH0sIHsxfSIsInswfSB7MX0iXSxxbzpbInswfSwgezF9IiwiezB9LCB7MX0iLCJ7MH0gezF9Il0sQWs6WyJ7MH0sIHsxfSIsInswfSwgezF9IiwiezB9IHsxfSJdfTt2YXIgWGxhPWNsYXNze2NvbnN0cnVjdG9yKCl7dmFyIGE9e3R5cGU6InVuaXQiLHN0eWxlOiJuYXJyb3cifTt0aGlzLkk9YSYmYS50eXBlP2EudHlwZToiY29uanVuY3Rpb24iO3RoaXMuSz1hJiZhLnN0eWxlP2Euc3R5bGU6ImxvbmciO3RoaXMuaj1oVjthPTA7c3dpdGNoKHRoaXMuSyl7Y2FzZSAic2hvcnQiOmE9MTticmVhaztjYXNlICJuYXJyb3ciOmE9Mn1zd2l0Y2godGhpcy5JKXtjYXNlICJjb25qdW5jdGlvbiI6dGhpcy5CPXRoaXMuai5DZVthXTt0aGlzLkQ9KHRoaXMuai5Sbnx8dGhpcy5qLm1rKVthXTt0aGlzLnY9KHRoaXMuai5qQ3x8dGhpcy5qLkNlKVthXTt0aGlzLm89dGhpcy5qLm1rW2FdO2JyZWFrO2Nhc2UgImRpc2p1bmN0aW9uIjp0aGlzLkI9KHRoaXMuai5RRnx8dGhpcy5qLkNlKVthXTt0aGlzLkQ9KHRoaXMuai5pb3x8dGhpcy5qLnhrKVthXTt0aGlzLnY9KHRoaXMuai5QRnx8dGhpcy5qLkNlKVthXTt0aGlzLm89dGhpcy5qLnhrW2FdO2JyZWFrO2Nhc2UgInVuaXQiOnRoaXMuQj0KKHRoaXMuai5yb3x8dGhpcy5qLkNlKVthXSx0aGlzLkQ9KHRoaXMuai5BSHx8dGhpcy5qLkFrKVthXSx0aGlzLnY9KHRoaXMuai5xb3x8dGhpcy5qLkNlKVthXSx0aGlzLm89dGhpcy5qLkFrW2FdfX1mb3JtYXQoYSl7cmV0dXJuIHhqYSh0aGlzLGEpfX07dmFyIGlSPXthcjoibGF0biIsImFyLUVHIjoiYXJhYiIsYm46ImJlbmciLGZhOiJhcmFiZXh0IixtcjoiZGV2YSIsbXk6Im15bXIiLG5lOiJkZXZhIn07dmFyIGlWPXtWbjoiLiIscms6IiwiLGpvOiIlIixCazoiMCIsV3Q6IisiLGFvOiItIixZbjoiRSIsa286Ilx1MjAzMCIsc2s6Ilx1MjIxZSIsQnQ6Ik5hTiIsZ3Q6IiMsIyMwLiMjIyIsekc6IiNFMCIsU0Y6IiMsIyMwJSIsRkM6Ilx1MDBhNCMsIyMwLjAwIixXbjoiVVNEIn0sZFI9aVY7ZFI9aVY7dmFyIGVSPUludGwuTnVtYmVyRm9ybWF0LnN1cHBvcnRlZExvY2FsZXNPZihbImVuLVVTIi5yZXBsYWNlKCJfIiwiLSIpXSkubGVuZ3RoPjAsalI9ITE7CmhSLnByb3RvdHlwZS5wYXJzZT1mdW5jdGlvbihhLGIpe2I9Ynx8WzBdO2lmKHRoaXMub2EhPT0wKXRocm93IEVycm9yKCJPZCIpO2E9YS5yZXBsYWNlKC8gfFx1MjAyZi9nLCJcdTAwYTAiKTt2YXIgYz1hLmluZGV4T2YodGhpcy5NLGJbMF0pPT1iWzBdLGQ9YS5pbmRleE9mKHRoaXMuRCxiWzBdKT09YlswXTtjJiZkJiYodGhpcy5NLmxlbmd0aD50aGlzLkQubGVuZ3RoP2Q9ITE6dGhpcy5NLmxlbmd0aDx0aGlzLkQubGVuZ3RoJiYoYz0hMSkpO2M/YlswXSs9dGhpcy5NLmxlbmd0aDpkJiYoYlswXSs9dGhpcy5ELmxlbmd0aCk7aWYoYS5pbmRleE9mKGRSLnNrLGJbMF0pPT1iWzBdKXtiWzBdKz1kUi5zay5sZW5ndGg7dmFyIGU9SW5maW5pdHl9ZWxzZXtlPWE7bGV0IGY9ITEsaD0hMSxrPSExLGw9LTEsbT0xLG49ZFIuVm4scD1kUi5yayxyPWRSLlluO2lmKHRoaXMub2EhPTApdGhyb3cgRXJyb3IoIlBkIik7cD1wLnJlcGxhY2UoL1x1MjAyZi9nLCJcdTAwYTAiKTtsZXQgdD0iIjtmb3IoO2JbMF08CmUubGVuZ3RoO2JbMF0rKyl7bGV0IHY9ZS5jaGFyQXQoYlswXSksej1wUih2KTtpZih6Pj0wJiZ6PD05KXQrPXosaz0hMDtlbHNlIGlmKHY9PW4uY2hhckF0KDApKXtpZihmfHxoKWJyZWFrO3QrPSIuIjtmPSEwfWVsc2UgaWYodj09cC5jaGFyQXQoMCkmJigiXHUwMGEwIiE9cC5jaGFyQXQoMCl8fGJbMF0rMTxlLmxlbmd0aCYmcFIoZS5jaGFyQXQoYlswXSsxKSk+PTApKXtpZihmfHxoKWJyZWFrfWVsc2UgaWYodj09ci5jaGFyQXQoMCkpe2lmKGgpYnJlYWs7dCs9IkUiO2g9ITA7bD1iWzBdfWVsc2UgaWYodj09IisifHx2PT0iLSIpe2lmKGsmJmwhPWJbMF0tMSlicmVhazt0Kz12fWVsc2UgaWYodGhpcy52PT0xJiZ2PT1kUi5qby5jaGFyQXQoMCkpe2lmKG0hPTEpYnJlYWs7bT0xMDA7aWYoayl7YlswXSsrO2JyZWFrfX1lbHNlIGlmKHRoaXMudj09MSYmdj09ZFIua28uY2hhckF0KDApKXtpZihtIT0xKWJyZWFrO209MUUzO2lmKGspe2JbMF0rKzticmVha319ZWxzZSBicmVha310aGlzLnYhPQoxJiYobT10aGlzLnYpO2U9cGFyc2VGbG9hdCh0KS9tfWlmKGMpe2lmKGEuaW5kZXhPZih0aGlzLmdhLGJbMF0pIT1iWzBdKXJldHVybiBOYU47YlswXSs9dGhpcy5nYS5sZW5ndGh9ZWxzZSBpZihkKXtpZihhLmluZGV4T2YodGhpcy5VLGJbMF0pIT1iWzBdKXJldHVybiBOYU47YlswXSs9dGhpcy5VLmxlbmd0aH1yZXR1cm4gZD8tZTplfTsKaFIucHJvdG90eXBlLmZvcm1hdD1mdW5jdGlvbihhKXtpZih0aGlzLkI+dGhpcy5qKXRocm93IEVycm9yKCJTZCIpO2lmKGVSJiZ0aGlzLkspeyh0aGlzLksuZm9ybWF0PT1udWxsfHx0aGlzLlFhfHx0aGlzLk1hfHx0aGlzLlZkfHxqUikmJmZSKHRoaXMpO2lmKE1hdGguYWJzKGEpPDEmJnRoaXMuaGE+dGhpcy5qKXt2YXIgYj1NYXRoLnBvdygxMCx0aGlzLmopO2E9TWF0aC5yb3VuZChNYXRoLmFicyhhKSpiKSpNYXRoLnNpZ24oYSkvYn10aGlzLksucmVzb2x2ZWRPcHRpb25zKCk7cmV0dXJuIHRoaXMuSy5mb3JtYXQoYSl9aWYoaXNOYU4oYSkpcmV0dXJuIGRSLkJ0O2I9W107dmFyIGM9YTtpZih0aGlzLm9hPT0wKWM9c1I7ZWxzZXtjPU1hdGguYWJzKGMpO3ZhciBkPXRSKHRoaXMsYzw9MT8wOnVSKGMpKS5wbDtjPXRSKHRoaXMsZCt1UihtUih0aGlzLGtSKGMsLWQpKS5pbnRWYWx1ZSkpfWE9a1IoYSwtYy5wbCk7KGQ9YTwwfHxhPT0wJiYxL2E8MCk/Yy53bT9iLnB1c2goYy53bSk6CihiLnB1c2goYy5wcmVmaXgpLGIucHVzaCh0aGlzLkQpKTooYi5wdXNoKGMucHJlZml4KSxiLnB1c2godGhpcy5NKSk7aWYoaXNGaW5pdGUoYSkpaWYoYSo9ZD8tMToxLGEqPXRoaXMudix0aGlzLkZhKXt2YXIgZT1hO2lmKGU9PTApblIodGhpcyxlLHRoaXMubyxiKSxvUih0aGlzLDAsYik7ZWxzZXt2YXIgZj1NYXRoLmZsb29yKE1hdGgubG9nKGUpL01hdGgubG9nKDEwKSsyRS0xNSk7ZT1rUihlLC1mKTt2YXIgaD10aGlzLm87dGhpcy5aPjEmJnRoaXMuWj50aGlzLm8/KGg9ZiV0aGlzLlosaDwwJiYoaD10aGlzLloraCksZT1rUihlLGgpLGYtPWgsaD0xKTp0aGlzLm88MT8oZisrLGU9a1IoZSwtMSkpOihmLT10aGlzLm8tMSxlPWtSKGUsdGhpcy5vLTEpKTtuUih0aGlzLGUsaCxiKTtvUih0aGlzLGYsYil9fWVsc2UgblIodGhpcyxhLHRoaXMubyxiKTtlbHNlIGIucHVzaChkUi5zayk7ZD9jLnhtP2IucHVzaChjLnhtKTooaXNGaW5pdGUoYSkmJmIucHVzaChjLnN1ZmZpeCksYi5wdXNoKHRoaXMuVSkpOgooaXNGaW5pdGUoYSkmJmIucHVzaChjLnN1ZmZpeCksYi5wdXNoKHRoaXMuZ2EpKTtyZXR1cm4gYi5qb2luKCIiKX07dmFyIHlqYT0iMCIuY29kZVBvaW50QXQoMCksc1I9e3BsOjAsd206IiIseG06IiIscHJlZml4OiIiLHN1ZmZpeDoiIn07dmFyIGpWLEJqYT1qVj1qVj16amE7dmFyIGtWLENSPWtWPWtWPUFqYTt2YXIgd1I9bnVsbCx4Uj1udWxsLHlSPW51bGwsRGphPVJlZ0V4cCgiJyhbe30jXS4qPyknIiwiZyIpLENqYT1SZWdFeHAoIicnIiwiZyIpO3pSLnByb3RvdHlwZS5mb3JtYXQ9ZnVuY3Rpb24oYSl7aWYodGhpcy52KXt0aGlzLkQ9W107dmFyIGI9RWphKHRoaXMsdGhpcy52KTt0aGlzLm89SFIodGhpcyxiKTt0aGlzLnY9bnVsbH1pZih0aGlzLm8mJnRoaXMuby5sZW5ndGghPTApZm9yKHRoaXMuaj1fLnliKHRoaXMuRCksYj1bXSxBUih0aGlzLHRoaXMubyxhLCExLGIpLGE9Yi5qb2luKCIiKTt0aGlzLmoubGVuZ3RoPjA7KWE9YS5yZXBsYWNlKHRoaXMuQih0aGlzLmopLFN0cmluZyh0aGlzLmoucG9wKCkpLnJlcGxhY2UoIiQiLCIkJCQkIikpO2Vsc2UgYT0iIjtyZXR1cm4gYX07dmFyIEVSPS9eXHMqKFx3KylccyosXHMqcGx1cmFsXHMqLCg/OlxzKm9mZnNldDooXGQrKSk/LyxGUj0vXlxzKihcdyspXHMqLFxzKnNlbGVjdG9yZGluYWxccyosLyxHUj0vXlxzKihcdyspXHMqLFxzKnNlbGVjdFxzKiwvOwp6Ui5wcm90b3R5cGUuQj1mdW5jdGlvbihhKXtyZXR1cm4iXHVmZGRmXyIrKGEubGVuZ3RoLTEpLnRvU3RyaW5nKDEwKSsiXyJ9O3ZhciBUamE9Y2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLmo9WWxhfHxnVn1mb3JtYXQoYSl7dmFyIGI9W10sYz1hLnllYXJzLGQ9YS5tb250aHMsZT1hLndlZWtzLGY9YS5kYXlzLGg9YS5ob3VycyxrPWEubWludXRlczthPWEuc2Vjb25kcztjIT1udWxsJiZiLnB1c2goSVIodGhpcyxjLCJ5ZWFycyIpKTtkIT1udWxsJiZiLnB1c2goSVIodGhpcyxkLCJtb250aHMiKSk7ZSE9bnVsbCYmYi5wdXNoKElSKHRoaXMsZSwid2Vla3MiKSk7ZiE9bnVsbCYmYi5wdXNoKElSKHRoaXMsZiwiZGF5cyIpKTtoIT1udWxsJiZiLnB1c2goSVIodGhpcyxoLCJob3VycyIpKTtrIT1udWxsJiZiLnB1c2goSVIodGhpcyxrLCJtaW51dGVzIikpO2EhPW51bGwmJmIucHVzaChJUih0aGlzLGEsInNlY29uZHMiKSk7cmV0dXJuKG5ldyBYbGEpLmZvcm1hdChiKX19Oy8qCgogTUlUIExpY2Vuc2UKCiBDb3B5cmlnaHQgKGMpIDIwMTcgQWxleGFuZGVyIFJlYXJkb24KCiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5CiBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwgdG8gZGVhbAogaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cwogdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbAogY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzCiBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgoKIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluCiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4KCiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sCiBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRQogU09GVFdBUkUKKi8KdmFyIFpsYT0oYSxiKT0+e2lmKGEubGVuZ3RoIT09Yi5sZW5ndGgpcmV0dXJuITE7Zm9yKGxldCBjPTA7YzxhLmxlbmd0aDsrK2MpaWYoYVtjXSE9PWJbY10pcmV0dXJuITE7cmV0dXJuITB9O3ZhciBsVj1uZXcgXy5JKCJ3YXRjaE9uWW91dHViZUJ1dHRvblZpZXdNb2RlbCIpO3ZhciBFa2E9bmV3IF8uSSgiZW1iZWRkZWRQbGF5ZXJPdmVybGF5VmlkZW9EZXRhaWxzUmVuZGVyZXIiKSxtVj1uZXcgXy5JKCJlbWJlZGRlZFBsYXllck92ZXJsYXlWaWRlb0RldGFpbHNDb2xsYXBzZWRSZW5kZXJlciIpLG5WPW5ldyBfLkkoImVtYmVkZGVkUGxheWVyT3ZlcmxheVZpZGVvRGV0YWlsc0V4cGFuZGVkUmVuZGVyZXIiKTt2YXIgT1M9bmV3IF8uSSgiZW1iZWRzSW5mb1BhbmVsUmVuZGVyZXIiKTt2YXIgJGxhPW5ldyBfLkkoIm1vYmlsZVRvcGJhclJlbmRlcmVyIik7dmFyIGFtYT1uZXcgXy5JKCJjYWxsVG9BY3Rpb25CdXR0b25WaWV3TW9kZWwiKTt2YXIgYm1hPW5ldyBfLkkoImludGVyc3RpdGlhbFZpZXdNb2RlbCIpO3ZhciBkbGE9bmV3IF8uSSgiY2luZW1hdGljQ29udGFpbmVyUmVuZGVyZXIiKTt2YXIgamthPW5ldyBfLkkoInZhcmlhYmxlU3BlZWRDb250cm9sbGVyVmlld01vZGVsIik7dmFyIERrYT1uZXcgXy5JKCJmdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWwiKTt2YXIgb1Y9bmV3IF8uSSgicGxheWVyTXV0ZWRBdXRvcGxheU92ZXJsYXlSZW5kZXJlciIpLHBWPW5ldyBfLkkoInBsYXllck11dGVkQXV0b3BsYXlFbmRTY3JlZW5SZW5kZXJlciIpO3ZhciBLUz1uZXcgXy5JKCJxdWlja0FjdGlvbnNWaWV3TW9kZWwiKTt2YXIgY21hPW5ldyBfLkkoInJlZWxQbGF5ZXJPdmVybGF5Vmlld01vZGVsIik7dmFyIEFsYT1uZXcgXy5JKCJjb25maXJtRGlhbG9nUmVuZGVyZXIiKTt2YXIgbWxhPW5ldyBfLkkoImJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyIik7dmFyIGRtYT1uZXcgXy5JKCJkaWFsb2dIZWFkZXJWaWV3TW9kZWwiKTt2YXIgZW1hPW5ldyBfLkkoImRpYWxvZ1ZpZXdNb2RlbCIpO3ZhciBXVT1uZXcgXy5JKCJwbGF5ZXJUb2FzdENvbW1hbmQiKTt2YXIgdmthPW5ldyBfLkkoImF1dG9wbGF5U3dpdGNoQnV0dG9uUmVuZGVyZXIiKTt2YXIgeGthPW5ldyBfLkkoImRlY29yYXRlZFBsYXllckJhclJlbmRlcmVyIiksRFM9bmV3IF8uSSgibXVsdGlNYXJrZXJzUGxheWVyQmFyUmVuZGVyZXIiKSxlVD1uZXcgXy5JKCJjaGFwdGVyUmVuZGVyZXIiKTt2YXIgeWthPW5ldyBfLkkoImRlY29yYXRlZFBsYXloZWFkUmVuZGVyZXIiKTt2YXIgQWthPW5ldyBfLkkoImZ1bGxzY3JlZW5FbmdhZ2VtZW50T3ZlcmxheVJlbmRlcmVyIiksQmthPW5ldyBfLkkoImZ1bGxzY3JlZW5FbmdhZ2VtZW50QWN0aW9uQmFyUmVuZGVyZXIiKSxmbWE9bmV3IF8uSSgiZnVsbHNjcmVlbkVuZ2FnZW1lbnRBY3Rpb25CYXJTYXZlQnV0dG9uUmVuZGVyZXIiKTt2YXIgZ21hPW5ldyBfLkkoImhlYXRNYXJrZXJSZW5kZXJlciIpO3ZhciB3a2E9bmV3IF8uSSgiaGVhdG1hcFJlbmRlcmVyIik7dmFyIHFWPW5ldyBfLkkoInRpbWVkTWFya2VyRGVjb3JhdGlvblJlbmRlcmVyIik7dmFyIGhtYT1bImVuLUNBIiwiZW4iLCJlcy1NWCIsImZyLUNBIl07dmFyIHJWO3JWPXticm93c2VFbmRwb2ludDp7YnJvd3NlSWQ6IkZFd2hhdF90b193YXRjaCJ9LGNvbW1hbmRNZXRhZGF0YTp7d2ViQ29tbWFuZE1ldGFkYXRhOnt1cmw6Ii8iLHJvb3RWZTozODU0LHdlYlBhZ2VUeXBlOiJXRUJfUEFHRV9UWVBFX0JST1dTRSJ9fX07dmFyIEtSPSExO3ZhciBLamE9Y2xhc3N7Y29uc3RydWN0b3IoYSxiKXt0aGlzLm89dGhpcy5qPTA7dGhpcy5qPWIueC1hLng7dGhpcy5vPWIueS1hLnl9fTt2YXIgJFQ9Xy5ndSh2b2lkIDAsIkJERXFKYiIpO3ZhciBzVj13aW5kb3csWj1zVi5HSHx8ImVuLVVTIixTamE9c1YuSEh8fENSLFlsYT1zVi5GSHx8Z1Y7dmFyIFFSO3ZhciB1a2E9Y2xhc3N7Y29uc3RydWN0b3IoYSl7dGhpcy5IPWF9dG9nZ2xlRnVsbHNjcmVlbigpe3RoaXMuSC50b2dnbGVGdWxsc2NyZWVuKCl9ZXhpdEZ1bGxzY3JlZW4oKXt0aGlzLmlzRnVsbHNjcmVlbigpJiZ0aGlzLnRvZ2dsZUZ1bGxzY3JlZW4oKX1pc0Z1bGxzY3JlZW4oKXtyZXR1cm4gdGhpcy5ILmlzRnVsbHNjcmVlbigpfX07dmFyIFRSPV8uTCgoe3RhOmF9KT0+Xy5LKF8uZkose2RhdGE6KCk9Pnt2YXIgYj1jUih7dGl0bGU6Xy5JUChfLiROLm5rKSxrbDphKCkuZGUoKSxpY29uVHlwZToiQVVUT1BMQVkiLEVrOl8uJE4ubmssRGs6Xy4kTi5ua30pO3JldHVybiBfLkIoYixfLk1QKX0sb25UYXA6ZnVuY3Rpb24oYil7dmFyIGM9IWEoKS5kZSgpO2EoKS5SaihjLCEwKTtiLnN0b3BQcm9wYWdhdGlvbigpO18uWE0oInBmcC1hdXRvbmF2LXVwZGF0ZSIse2F1dG9uYXZFbmFibGVkOmN9KX19KSwiWWIiKTtUUi5pZG9tQ29tcGF0PSEwO3ZhciBpbWE9Xy4kTi5hdSxjUz1fLkwoKCk9Pnt2YXIgYT0oKT0+Xy5CKGJSKHt0aXRsZTpfLklQKGltYSksaWNvblR5cGU6IlBFUlNPTl9DSVJDTEUifSksXy5aQyk7cmV0dXJuIF8uSyhfLkNELHtkYXRhOmEsSWE6ITAsb25UYXA6KCk9Pnt2YXIgYj1fLktPKCk/Xy5GTygiLy95b3V0dWJlLmNvbS9zaWduaW4iLCJuZXh0IiwiL3NpZ25pbj9hY3Rpb25fY2xvc2VfdGFiPXRydWUiKTpfLncoIklOTkVSVFVCRV9DTElFTlRfTkFNRSIpPT09IldFQl9FTUJFRERFRF9QTEFZRVIiP18uRk8oIi8veW91dHViZS5jb20vc2lnbmluIiwibmV4dCIsIi9wb3N0X2xvZ2luIik6Xy5GTygiLy95b3V0dWJlLmNvbS9zaWduaW4iLCJuZXh0Iixsb2NhdGlvbi5wYXRobmFtZStsb2NhdGlvbi5zZWFyY2gpO18uQUooe3NpZ25JbkVuZHBvaW50Ont9LGNvbW1hbmRNZXRhZGF0YTp7d2ViQ29tbWFuZE1ldGFkYXRhOnt1cmw6Yn19fSxhKCksITEpfX0pfSwiWmIiKTtjUy5pZG9tQ29tcGF0PSEwO3ZhciBqbWE9Xy4kTi5XcyxrbWE9Xy4kTi5ZcyxsbWE9Xy4kTi5UbixWamE9Xy5MKCh7ZnY6YX0pPT57dmFyIGI9ImNvcHktZGVidWctaW5mby10ZXh0YXJlYSIrXy5PSCgpO3JldHVybiBfLksoXy5yRSx7UWc6KCk9Pl8uSyhfLkFQLG51bGwsbG1hKSxxazooKT0+Xy5LKCJ0ZXh0YXJlYSIse2NsYXNzOiJjb3B5RGVidWdJbmZvUGxheWVyRGVidWdJbmZvIixpZDpifSxhKSxFejooKT0+Xy5LKF8uelAsbnVsbCxfLksoXy5KSyx7ZGF0YTp7YnV0dG9uVGV4dDpqbWEsc3R5bGU6Im1vbm8iLHR5cGU6InRleHQiLHN0YXRlOiJhY3RpdmUiLHNpemU6Ik0iLG9uVGFwOigpPT57Xy55KCkucmVzb2x2ZShfLnlQKS5sZCgpfX19KSksUHI6KCk9Pl8uSyhfLnpQLG51bGwsXy5LKF8uSksse2RhdGE6e2J1dHRvblRleHQ6a21hLHN0eWxlOiJtb25vIix0eXBlOiJ0ZXh0IixzdGF0ZToiYWN0aXZlIixzaXplOiJNIixvblRhcDooKT0+e18uc1AoYik7Xy55KCkucmVzb2x2ZShfLnlQKS5sZCgpfX19KSl9KX0sCiIkYiIpO3ZhciBtbWE9Xy4kTi5UbiwkUj1fLkwoKHtIOmF9KT0+Xy5LKF8uQ0Qse2RhdGE6KCk9Pl8uQihiUih7dGl0bGU6Xy5JUChtbWEpLGljb25UeXBlOiJCVUdfUkVQT1JUIn0pLF8uWkMpLElhOiEwLG9uVGFwOigpPT57V2phKGEoKSl9fSksImFjIik7JFIuaWRvbUNvbXBhdD0hMDt2YXIgbm1hPV8uJE4uWnMsWlI9Xy5MKCh7SDphfSk9Pl8uSyhfLkNELHtkYXRhOigpPT5fLkIoYlIoe3RpdGxlOl8uSVAobm1hKSxpY29uVHlwZToiQ09ERSJ9KSxfLlpDKSxJYTohMCxvblRhcDooKT0+e3ZhciBiPWEoKS5nZXRWaWRlb0VtYmVkQ29kZSgpO2ImJmImJndpbmRvdy5uYXZpZ2F0b3I/LmNsaXBib2FyZCYmd2luZG93Lm5hdmlnYXRvci5jbGlwYm9hcmQud3JpdGVUZXh0KGIpfX0pLCJiYyIpO1pSLmlkb21Db21wYXQ9ITA7dmFyIG9tYT1fLiROLmJ0LHBtYT1fLiROLmZ0LFdSPV8uTCgoe0g6YX0pPT5fLksoXy5DRCx7ZGF0YTooKT0+Xy5CKGJSKHt0aXRsZTpfLklQKG9tYSksaWNvblR5cGU6IkxJTksifSksXy5aQyksSWE6ITAsb25UYXA6KCk9PntSUihhKCksITEpfX0pLCJjYyIpO1dSLmlkb21Db21wYXQ9ITA7dmFyIFlSPV8uTCgoe0g6YX0pPT5fLksoXy5DRCx7ZGF0YTooKT0+Xy5CKGJSKHt0aXRsZTpfLklQKHBtYSksaWNvblR5cGU6IkxJTksifSksXy5aQyksSWE6ITAsb25UYXA6KCk9PntSUihhKCksITApfX0pLCJkYyIpO1lSLmlkb21Db21wYXQ9ITA7dmFyIHRWPV8uJE4udXQsVlI9Xy5MKCh7SDphfSk9Pl8uSyhfLmZKLHtkYXRhOigpPT57dmFyIGI9Y1Ioe3RpdGxlOl8uSVAodFYpLGtsOmEoKS5nZXRMb29wVmlkZW8oKSxFazp0VixEazp0VixpY29uVHlwZToiTE9PUCJ9KTtyZXR1cm4gXy5CKGIsXy5NUCl9LG9uVGFwOmI9PnthKCkuc2V0TG9vcFZpZGVvKCFhKCkuZ2V0TG9vcFZpZGVvKCkpO2Iuc3RvcFByb3BhZ2F0aW9uKCl9fSksImVjIik7VlIuaWRvbUNvbXBhdD0hMDt2YXIgVVI9Xy5MKCh7SDphfSk9Pl8uSygic3RhYmxlLXZvbHVtZS10b2dnbGUiLHtjbGFzczoic3RhYmxlVm9sdW1lVG9nZ2xlSG9zdCJ9LF8uSyhfLmZKLHtkYXRhOigpPT5fLkIoY1Ioe3RpdGxlOl8uSVAoXy4kTi55ayksa2w6YSgpLmhhc0RyY0F1ZGlvVHJhY2soKSYmYSgpLmdldERyY1VzZXJQcmVmZXJlbmNlKCk9PT0xLGljb25UeXBlOiJWT0xVTUVfU1RBQkxFIixFazpfLiROLnlrLERrOl8uJE4ueWssaXNEaXNhYmxlZDohYSgpLmhhc0RyY0F1ZGlvVHJhY2soKX0pLF8uTVApLG9uVGFwOmZ1bmN0aW9uKGIpe2EoKS5zZXREcmNVc2VyUHJlZmVyZW5jZShhKCkuaGFzRHJjQXVkaW9UcmFjaygpJiZhKCkuZ2V0RHJjVXNlclByZWZlcmVuY2UoKT09PTE/MDoxKTtiLnN0b3BQcm9wYWdhdGlvbigpfX0pKSwiZmMiKTtVUi5pZG9tQ29tcGF0PSEwO3ZhciBxbWE9Xy4kTi5idSxiUz1fLkwoKHtIOmF9KT0+e3ZhciBiPSgpPT5fLkIoYlIoe3RpdGxlOl8uSVAocW1hKSxpY29uVHlwZToiSU5GTyJ9KSxfLlpDKTtyZXR1cm4gXy5LKF8uTyx7QTooKT0+ISFhKCkuZ2V0VmlkZW9EYXRhLHRoZW46KCk9Pl8uSyhfLkNELHtkYXRhOmIsSWE6ITAsb25UYXA6KCk9Pnt2YXIgYz1hKCk7IWMuZ2V0VmlkZW9EYXRhfHwoYy5pc1ZpZGVvSW5mb1Zpc2libGUoKT9jLmhpZGVWaWRlb0luZm8oKTpjLnNob3dWaWRlb0luZm8oKSl9fSl9KX0sImdjIik7YlMuaWRvbUNvbXBhdD0hMDt2YXIgcm1hPV8uJE4uZHUsYVM9Xy5MKCh7SDphfSk9Pl8uSyhfLkNELHtkYXRhOigpPT5fLkIoYlIoe3RpdGxlOl8uSVAocm1hKSxpY29uVHlwZToiUVVFU1RJT05fQ0lSQ0xFIn0pLF8uWkMpLElhOiEwLG9uVGFwOigpPT57YSgpLnJlcG9ydFBsYXliYWNrSXNzdWUmJihhKCkucmVwb3J0UGxheWJhY2tJc3N1ZSgpLF8ucVAoe2hyZWY6Imh0dHBzOi8vc3VwcG9ydC5nb29nbGUuY29tL3lvdXR1YmUvP3A9cmVwb3J0X3BsYXliYWNrIn0pKX19KSwiaGMiKTthUy5pZG9tQ29tcGF0PSEwO3ZhciBzbWE9Xy4kTi53dCxvUz1fLkwoKHtIOmEsb2g6Yix0YTpjLHRBOmR9KT0+Xy5LKF8uQ0Qse2RhdGE6KCk9Pl8uQihiUih7dGl0bGU6Xy5JUChzbWEpLGljb25UeXBlOiJPVVRMSU5FX09WRVJGTE9XX0hPUklaT05UQUxfMzIifSksXy5aQyksSWE6ITAsb25UYXA6KCk9PntYamEoYSgpLGIoKSxjPy4oKSxkPy4oKSl9fSksImljIik7b1MuaWRvbUNvbXBhdD0hMDt2YXIgZ2thPV8uJE4ubW8sWWphPV8uJE4ubm8sWmphPV8uJE4uVHQsZmthPV8uJE4uUnQsZWthPV8uJE4uU3QsaGthPV8uJE4uWHQsYWthPVs1MCwxMDAsMTI1LDE1MCwxNzUsMjAwXSwkamE9WzEwMCwxMjUsMTUwLDE3NSwyMDAsMzAwXSxja2E9WzUwLDEwMCwxMjUsMTUwLDIwMF0sYmthPVsxMDAsMTI1LDE1MCwyMDAsMzAwXSxoUzt2YXIgdG1hPV8uJE4ubW8sdW1hPV8uJE4ubm8sbVM9Xy5MKCh7SDphfSk9Pnt2YXIgYj0oKT0+e3ZhciBkPWEoKT8uZ2V0UGxheWJhY2tSYXRlKCksZT1fLmFBKCJQTEFZQkFDS19TUEVFRF9YIix7c3BlZWRfcmF0ZV9wbGFjZWhvbGRlcjpgJHtkfWB9KTtyZXR1cm4gXy5CKGJSKHt0aXRsZTpfLklQKHRtYSksc2VsZWN0aW9uVGV4dDpfLklQKGQ9PT0xP3VtYTplKSxpY29uVHlwZToiUExBWV9BUlJPV19IQUxGX0NJUkNMRSJ9KSxfLlpDKX0sYz0oKT0+e2trYShhKCkpfTtyZXR1cm4gXy5LKF8uTyx7QTooKT0+ISFhKCk/LmdldFBsYXliYWNrUmF0ZSgpLHRoZW46KCk9Pl8uSyhfLkNELHtkYXRhOmIsSWE6ITAsb25UYXA6Y30pfSl9LCJqYyIpO21TLmlkb21Db21wYXQ9ITA7dmFyIHZtYT1fLiROLk5zLG5TPV8uTCgoKT0+Xy5LKF8uQ0Qse2RhdGE6KCk9Pl8uQih7bGlzdEl0ZW1WaWV3TW9kZWw6e3RpdGxlOl8uSVAodm1hKSxsaXN0SXRlbUljb25BZnRlclNlbGVjdGlvblRleHQ6IkxJU1RfSVRFTV9JQ09OX0FGVEVSX1NFTEVDVElPTl9URVhUX0RFRkFVTFQiLGxlYWRpbmdJbWFnZTp7c291cmNlczpbe2NsaWVudFJlc291cmNlOntpbWFnZU5hbWU6IlBFUlNPTl9SQURBUiJ9fV19LGVudGl0eUtleToiRWlvdmVXOTFkSFZpWlM5aGNIQXZjR3hoZVdWeVgyRjFaR2x2WDNSeVlXTnJYMlZ1ZEdsMGVWOXJaWGtnX2dJb0FRJTNEJTNEIixlbnRpdHlTZWxlY3RvclR5cGU6IkxJU1RfSVRFTV9WSUVXX01PREVMX0VOVElUWV9TRUxFQ1RPUl9UWVBFX0FVRElPX1RSQUNLX1NFTEVDVElPTl9URVhUIixyZW5kZXJlckNvbnRleHQ6e2NvbW1hbmRDb250ZXh0OntvblRhcDp7aW5uZXJ0dWJlQ29tbWFuZDp7Y29tbWFuZEV4ZWN1dG9yQ29tbWFuZDp7Y29tbWFuZHM6W3tzaG93QXVkaW9UcmFja1BpY2tlckFjdGlvbkNvbW1hbmQ6e319XX19fX19fX0sCl8uWkMpLElhOiEwfSksImtjIik7blMuaWRvbUNvbXBhdD0hMDt2YXIgd21hPV8uJE4uRXQseG1hPV8uJE4uRnQscGthPV8uTCgoe0g6YX0pPT5fLksoXy5DRCx7ZGF0YTooKT0+e3ZhciBiPWEoKT8uZ2V0T3B0aW9uKCJjYXB0aW9ucyIsInRyYWNrIiksYz10eXBlb2YgYj8udHJhbnNsYXRpb25MYW5ndWFnZT09PSJvYmplY3QiJiZiLnRyYW5zbGF0aW9uTGFuZ3VhZ2U/Lmxhbmd1YWdlTmFtZXx8Yj8uZGlzcGxheU5hbWV8fCIiO3JldHVybiBfLkIoe2xpc3RJdGVtVmlld01vZGVsOnt0aXRsZTpfLklQKHdtYSksbGlzdEl0ZW1JY29uQWZ0ZXJTZWxlY3Rpb25UZXh0OiJMSVNUX0lURU1fSUNPTl9BRlRFUl9TRUxFQ1RJT05fVEVYVF9ERUZBVUxUIixzZWxlY3Rpb25UZXh0Ontjb250ZW50OmM/Yzp4bWF9LGxlYWRpbmdJbWFnZTp7c291cmNlczpbe2NsaWVudFJlc291cmNlOntpbWFnZU5hbWU6Yz8iQ0xPU0VEX0NBUFRJT05fU0VMRUNURUQiOiJDTE9TRURfQ0FQVElPTiJ9fV19LGVudGl0eUtleToiRWk4dmVXOTFkSFZpWlM5aGNIQXZjR3hoZVdWeVgyTmhjSFJwYjI1ZmJHRnVaM1ZoWjJWZlpXNTBhWFI1WDJ0bGVTRC1BaWdCIiwKZW50aXR5U2VsZWN0b3JUeXBlOiJMSVNUX0lURU1fVklFV19NT0RFTF9FTlRJVFlfU0VMRUNUT1JfVFlQRV9DQVBUSU9OX0xBTkdVQUdFX1NFTEVDVElPTl9URVhUIixyZW5kZXJlckNvbnRleHQ6e2NvbW1hbmRDb250ZXh0OntvblRhcDp7aW5uZXJ0dWJlQ29tbWFuZDp7Y29tbWFuZEV4ZWN1dG9yQ29tbWFuZDp7Y29tbWFuZHM6W3tzaG93Q2FwdGlvbkxhbmd1YWdlU2VsZWN0QWN0aW9uQ29tbWFuZDp7fX1dfX19fX0saXNEaXNhYmxlZDp0eXBlb2YgYj09PSJ1bmRlZmluZWQifX0sXy5aQyl9LElhOiEwfSksImxjIik7dmFyIGxrYT17YXV0bzowLHRpbnk6MTQ0LGxpZ2h0OjE0NCxzbWFsbDoyNDAsbWVkaXVtOjM2MCxsYXJnZTo0ODAsaGQ3MjA6NzIwLGhkMTA4MDoxMDgwLGhkMTQ0MDoxNDQwLGhkMjE2MDoyMTYwLGhkMjg4MDoyODgwLGhpZ2hyZXM6NDMyMH07dmFyIHltYT1fLiROLk50LG1rYT1fLiROLk90LGxTPV8uTCgoe0g6YX0pPT5fLksoXy5DRCx7ZGF0YTooKT0+e3ZhciBiPWJSKHt0aXRsZTpfLklQKHltYSksc2VsZWN0aW9uVGV4dDpfLklQKGtTKGEoKSxhKCkuZ2V0UGxheWJhY2tRdWFsaXR5KCkpKSxpY29uVHlwZToiT1VUTElORV9BREpVU1QifSk7cmV0dXJuIF8uQihiLF8uWkMpfSxJYTohMCxvblRhcDooKT0+e2EoKS5nZXRBdmFpbGFibGVRdWFsaXR5TGV2ZWxzKCkmJm9rYShhKCkpfX0pLCJtYyIpO2xTLmlkb21Db21wYXQ9ITA7CnZhciBua2E9Xy5MKCh7SDphfSk9Pl8uSyhfLmdHLHtwYTooKT0+YSgpLmdldEF2YWlsYWJsZVF1YWxpdHlMZXZlbHMoKSx0YjoiSU5ERVgifSxiPT5fLksoXy5DRCx7ZGF0YTooKT0+e3ZhciBjPWIoKSxkPWEoKS5nZXRQcmVmZXJyZWRRdWFsaXR5KCk7Yz1iUih7dGl0bGU6Xy5JUChrUyhhKCksYykpLGljb25UeXBlOmM9PT1kPyJDSEVDSyI6dm9pZCAwfSk7cmV0dXJuIF8uQihjLF8uWkMpfSxJYTohMCxvblRhcDooKT0+e3ZhciBjPWIoKTthKCkuc2V0UGxheWJhY2tRdWFsaXR5UmFuZ2UoYyxjKX19KSksIm5jIik7dmFyIFJTPW5ldyBTZXQsUVM9bnVsbDt2YXIgVFM9bnVsbCxWUz17fTt2YXIgdVY9Xy5MKGE9Pnt2YXIgYj1fLnZFKCJidXR0b24iLGQ9PntkJiZXUyhkLDI4NTcyLCFfLngoImVtYmVkc19jdWVkX292ZXJsYXlfdmVfa3MiKSl9KSxjPSgpPT5hLkcoKS5IPy5pc0VtYmVkc1Nob3J0c01vZGU/LigpO3JldHVybiBfLksoImN1ZWQtb3ZlcmxheSIse2NsYXNzOl8uUCgieXRtQ3VlZE92ZXJsYXlIb3N0Iix7eXRtQ3VlZE92ZXJsYXlIaWRkZW46KCk9PiEkUyhhLkcoKSxhLnBsYXlhYmlsaXR5U3RhdHVzPy4oKSl9KSwib246Y2xpY2siOmZ1bmN0aW9uKGQpe2IudmFsdWUmJihYUygyODU3MiksYS5HKCkuYmE/LnVqJiZfLkRPKF8uaHgoKSwyNzI0MCxfLksudmlzdWFsRWxlbWVudCksYS5IPy4oKS5wbGF5VmlkZW8oKSk7ZC5zdG9wUHJvcGFnYXRpb24oKX19LF8uSyhfLk8se0E6KCk9PiFhLkcoKS5iYT8uaGlkZVZpZGVvSW5mbyYmIXVTKGEuRygpKSx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dG1DdWVkT3ZlcmxheUdyYWRpZW50In0pfSksXy5LKCJidXR0b24iLAp7Y2xhc3M6Xy5QKCJ5dG1DdWVkT3ZlcmxheVBsYXlCdXR0b24iLHt5dG1DdWVkT3ZlcmxheVNob3J0czpjfSksZWw6YiwiYXJpYS1sYWJlbCI6Xy4kTi5QZyx0aXRsZTpfLiROLlBnfSxfLksoXy5NRCx7aWNvbjooKT0+YygpPyJZT1VUVUJFX1NIT1JUU19CUkFORF8yNCI6IkxPR08iLGNsYXNzTmFtZToieXRtQ3VlZE92ZXJsYXlQbGF5QnV0dG9uSWNvbiJ9KSkpfSwib2MiKTt1Vi5pZG9tQ29tcGF0PSEwO3ZhciBhVDt2YXIgQW1hPV8uTCgoe0p6OmEsbXVsdGlNYXJrZXJzUGxheWVyQmFyUmVuZGVyZXI6Yixwcm9ncmVzc0JhcldpZHRoOmMscHJvZ3Jlc3NDb2xvcjpkfSk9Pnt2YXIgZT0oKT0+Z1QoYigpKSxmPSgpPT5qVChhKCkpLGg9KCk9PmMoKSooYSgpLnZhL2EoKS52aWRlb0R1cmF0aW9uKTtyZXR1cm4gXy5LKCJ5dC1jaGFwdGVyZWQtcHJvZ3Jlc3MtYmFyLWxpbmUiLHtjbGFzczoieXRDaGFwdGVyZWRQcm9ncmVzc0Jhckhvc3QifSxfLksoXy5nRyx7cGE6ZX0sKGssbCk9Pl8uSyh6bWEse055OmYsY2hhcHRlcnM6ZSxpbmRleDpsLEN6OmgscHJvZ3Jlc3NDb2xvcjpkLER1OigpPT57dmFyIG09alQoYSgpKSxuPWdUKGIoKSkscD1sKCkscj1oKCk7cmV0dXJuKG0udmEtaFQoXy5CKG5bcF0sZVQpKSkvbS52YSpyfX0pKSl9LCJwYyIpLHptYT1fLkwoKHtOeTphLGNoYXB0ZXJzOmIsaW5kZXg6YyxDejpkLER1OmUscHJvZ3Jlc3NDb2xvcjpmfSk9Pnt2YXIgaD1fLlAoInl0Q2hhcHRlcmVkUHJvZ3Jlc3NCYXJDaGFwdGVyZWRQbGF5ZXJCYXJDaGFwdGVyIiwKe3l0Q2hhcHRlcmVkUHJvZ3Jlc3NCYXJDaGFwdGVyZWRQbGF5ZXJCYXJDaGFwdGVySXNTY3J1YmJpbmc6KCk9PmsoKS5ibSx5dENoYXB0ZXJlZFByb2dyZXNzQmFySG92ZXJlZE1hY3JvTWFya2VyOigpPT5rKCkuQmcseXRDaGFwdGVyZWRQcm9ncmVzc0JhckNoYXB0ZXJlZFBsYXllckJhckNoYXB0ZXJTZWVuOigpPT5rKCkuTGQ9PT0ic2VlbiJ9KSxrPSgpPT5pVChhKCksYigpLGMoKSksbD0oKT0+e3ZhciBtPWY/LigpO3JldHVybiBtIT09dm9pZCAwP18uSkUobSk6dm9pZCAwfTtyZXR1cm4gXy5LKCJkaXYiLHtjbGFzczpoLHN0eWxlOl8uSUUoe3dpZHRoOigpPT57dmFyIG09YSgpLG49YigpLHA9YygpLHI9Xy5CKG5bcF0sZVQpO249Xy5CKG5bcCsxXSxlVCk7cmV0dXJuYCR7KG4/aFQobiktaFQocik6bS52aWRlb0R1cmF0aW9uLWhUKHIpKS9tLnZpZGVvRHVyYXRpb24qMTAwfSVgfSwiYmFja2dyb3VuZC1jb2xvciI6KCk9PnthOnt2YXIgbT1rKCk7c3dpdGNoKG0uTGQpe2Nhc2UgInBlbmRpbmciOm09Cm0uQmc/IndoaXRlIjoicmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KSI7YnJlYWsgYTtjYXNlICJhY3RpdmUiOm09bS5CZz8id2hpdGUiOiJyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzUpIjticmVhayBhO2RlZmF1bHQ6bT0iIn19cmV0dXJuYCR7bX1gfSwiYmFja2dyb3VuZC1zaXplIjooKT0+YCR7b1QoaygpKT9kKCk6IiJ9cHhgLCJiYWNrZ3JvdW5kLXBvc2l0aW9uLXgiOigpPT5gJHtvVChrKCkpP2UoKToiIn1weGAsYmFja2dyb3VuZDooKT0+aygpLkxkPT09InNlZW4iP2woKTp2b2lkIDB9KX0sXy5LKCJkaXYiLHtjbGFzczoieXRDaGFwdGVyZWRQcm9ncmVzc0JhckNoYXB0ZXJlZFBsYXllckJhckxvYWRlZCIsc3R5bGU6KCk9Pnt2YXIgbT1hKCksbj1iKCkscD1jKCk7aWYoaVQobSxuLHApLkxkPT09InNlZW4iKXZhciByPTA7ZWxzZSByPWhUKF8uQihuW3BdLGVUKSksbj1oVChfLkIobltwKzFdLGVUKSl8fG0udmlkZW9EdXJhdGlvbixtPW0udmlkZW9EdXJhdGlvbiptLlFtLHI9bjw9Cm0/MTpyPj1tPzA6KG0tcikvKG4tcik7cmV0dXJuYHdpZHRoOiAke3IqMTAwfSVgfX0pLF8uSygiZGl2Iix7Y2xhc3M6Inl0Q2hhcHRlcmVkUHJvZ3Jlc3NCYXJDaGFwdGVyZWRQbGF5ZXJCYXJGaWxsIixzdHlsZTpfLklFKHt3aWR0aDooKT0+YCR7blQoYSgpLGIoKSxjKCkpKjEwMH0lYCwiYmFja2dyb3VuZC1zaXplIjooKT0+YCR7b1QoaygpLG5UKGEoKSxiKCksYygpKSk/ZCgpOiIifXB4YCwiYmFja2dyb3VuZC1wb3NpdGlvbi14IjooKT0+YCR7b1QoaygpLG5UKGEoKSxiKCksYygpKSk/ZSgpOiIifXB4YCxiYWNrZ3JvdW5kOmx9KX0pKX0sInFjIik7dmFyIHZWPV8uTCgoe0xiOmEsY29uZmlnOmJ9KT0+e3ZhciBjPSgpPT57dmFyIGQ9KGIoKS5TaT8uTXU/PzApKjEwMCxlPShiKCkuU2k/Lkx1Pz8wKSoxMDAsZj1lLWQ7cmV0dXJuIGY+MCYmZjwxMD8oZj0oMTAtZikvMixkLWY+PTAmJmUrZjwxMDA/W2QtZixlK2ZdOmQtZjwwP1swLDEwXTpbOTAsMTAwXSk6W2QsZV19O3JldHVybiBfLksoInl0LWZvY3VzZWQtY2hhcHRlci1wcm9ncmVzcy1iYXItbGluZSIse2NsYXNzOiJ5dEZvY3VzZWRDaGFwdGVyUHJvZ3Jlc3NCYXJMaW5lSG9zdCJ9LF8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJ5dEZvY3VzZWRDaGFwdGVyUHJvZ3Jlc3NCYXJMaW5lUHJvZ3Jlc3NCYXJMaW5lIix7eXRGb2N1c2VkQ2hhcHRlclByb2dyZXNzQmFyTGluZVByb2dyZXNzQmFyTGluZVJvdW5kZWQ6KCk9PmIoKS5Yeix5dEZvY3VzZWRDaGFwdGVyUHJvZ3Jlc3NCYXJMaW5lUHJvZ3Jlc3NCYXJMaW5lQm90dG9tSW5zZXQ6KCk9PmIoKS5wb3NpdGlvbj09PTJ9KX0sXy5LKCJkaXYiLAp7Y2xhc3M6Inl0Rm9jdXNlZENoYXB0ZXJQcm9ncmVzc0JhckxpbmVQcm9ncmVzc0JhckJhY2tncm91bmQiLHN0eWxlOigpPT5gd2lkdGg6ICR7YygpWzFdLWMoKVswXX0lOyBsZWZ0OiAke2MoKVswXX0lYH0sXy5LKCJkaXYiLHtjbGFzczoieXRGb2N1c2VkQ2hhcHRlclByb2dyZXNzQmFyTGluZVByb2dyZXNzQmFyUGxheWVkIixzdHlsZTooKT0+e3ZhciBkPWIoKS5TaT8uTXU/PzAsZT1iKCkuU2k/Lkx1Pz8wLGY9d1MoYSgpKTtyZXR1cm5gd2lkdGg6ICR7ZjxkPzA6Zj5lfHxlPT09ZD8xMDA6KGYtZCkvKGUtZCkqMTAwfSU7YH19KSkpKX0sInJjIik7dlYuaWRvbUNvbXBhdD0hMDt2YXIgQm1hPSgoYSxiPVpsYSk9Pnt2YXIgYyxkPVtdLGUsZj0hMTtyZXR1cm4gZnVuY3Rpb24oLi4uaCl7aWYoZiYmYz09PXRoaXMmJmIoaCxkKSlyZXR1cm4gZTtlPWEuYXBwbHkodGhpcyxoKTtmPSEwO2M9dGhpcztkPWg7cmV0dXJuIGV9fSkoYT0+e3ZhciB7bWluSGVpZ2h0RHA6Yj0wLG1heEhlaWdodERwOmM9NjAsaGVhdE1hcmtlcnM6ZH09YSxlPTFFMy9kLmxlbmd0aDthPVtdO2EucHVzaCh7eDowLHk6MTAwfSk7Zm9yKHZhciBmPTA7ZjxkLmxlbmd0aDtmKyspe3ZhciBoPShmKy41KSplLGs9MTAwLURRKChfLkIoZFtmXSxnbWEpPy5oZWF0TWFya2VySW50ZW5zaXR5U2NvcmVOb3JtYWxpemVkfHwwKSoxMDAsYi8zMjEqMTAwLGMvMzIxKjEwMCk7ZiE9PTB8fGEucHVzaCh7eDowLHk6a30pO2EucHVzaCh7eDpoLHk6a30pO2Y9PT1kLmxlbmd0aC0xJiZhLnB1c2goe3g6MUUzLHk6a30pfWEucHVzaCh7eDoxRTMseToxMDB9KTtlPSIiO2ZvcihmPTA7ZjxhLmxlbmd0aDtmKyspe2g9CmFbZl07aWYoZj09PTApaD1gTSAke2gueC50b0ZpeGVkKDEpfSwke2gueS50b0ZpeGVkKDEpfWA7ZWxzZXtrPUxSKGFbZi0xXSxhW2YtMl0saCk7bGV0IGw9TFIoaCxhW2YtMV0sYVtmKzFdLCEwKTtoPWAgJHtgQyAke2sueC50b0ZpeGVkKDEpfSwke2sueS50b0ZpeGVkKDEpfSAke2wueC50b0ZpeGVkKDEpfSwke2wueS50b0ZpeGVkKDEpfSAke2gueC50b0ZpeGVkKDEpfSwke2gueS50b0ZpeGVkKDEpfWB9YH1lKz1ofXJldHVybiBlfSk7dmFyIENtYT1fLkwoKHtMYjphLGNvbmZpZzpiLGhpZ2hDb250cmFzdDpjfSk9PntjPV8uUCgieXRIZWF0U2Vla2VySG9zdCIse3l0SGVhdFNlZWtlckhpZ2hDb250cmFzdDpjfSk7cmV0dXJuIF8uSygieXQtcHJvZ3Jlc3MtYmFyLWhlYXRzZWVrZXIiLHtjbGFzczpjLHN0eWxlOigpPT5gaGVpZ2h0OiAzMjBweDsgZGlzcGxheTogJHthKCkuaXNEcmFnZ2luZyYmRlMoYigpLlJhKT8uaGVhdE1hcmtlcnM/ImJsb2NrIjoibm9uZSJ9YH0sXy5LKF8uTyx7QTooKT0+RlMoYigpLlJhKSx0aGVuOmQ9Pl8uSyhfLk8se0E6KCk9PmQoKS5oZWF0TWFya2Vycyx0aGVuOigpPT5fLksoInN2ZyIse3dpZHRoOiIxMDAlIixoZWlnaHQ6IjMyMHB4Iix2aWV3Qm94OiIwIDAgMTAwMCAxMDAiLHByZXNlcnZlQXNwZWN0UmF0aW86Im5vbmUifSxfLksoInBhdGgiLHtkOigpPT5CbWEoZCgpKX0pKSxkZWJ1Z0luc3RhbmNlOiJHamkwU2UifSksZGVidWdJbnN0YW5jZToiaVZUWHdmIn0pKX0sInNjIik7dmFyIHdWPV8uTCgoe0xiOmEsY29uZmlnOmJ9KT0+e3ZhciBjPV8uUCgieXRQcm9ncmVzc0JhckxpbmVQcm9ncmVzc0JhckxpbmUiLHt5dFByb2dyZXNzQmFyTGluZVByb2dyZXNzQmFyTGluZVJvdW5kZWQ6KCk9PmIoKS5Yeix5dFByb2dyZXNzQmFyTGluZVByb2dyZXNzQmFyTGluZUJvdHRvbUluc2V0OigpPT5iKCkucG9zaXRpb249PT0yfSk7cmV0dXJuIF8uSygieXQtcHJvZ3Jlc3MtYmFyLWxpbmUiLHtjbGFzczoieXRQcm9ncmVzc0JhckxpbmVIb3N0In0sXy5LKCJkaXYiLHtjbGFzczpjfSxfLksoImRpdiIse2NsYXNzOiJ5dFByb2dyZXNzQmFyTGluZVByb2dyZXNzQmFyQmFja2dyb3VuZCJ9KSxfLksoImRpdiIse2NsYXNzOiJ5dFByb2dyZXNzQmFyTGluZVByb2dyZXNzQmFyTG9hZGVkIixzdHlsZTooKT0+YHdpZHRoOiAke2EoKS5RbSoxMDB9JWB9KSxfLksoImRpdiIse2NsYXNzOiJ5dFByb2dyZXNzQmFyTGluZVByb2dyZXNzQmFySG92ZXJlZCIsc3R5bGU6KCk9Pnt2YXIgZD0KYSgpO3JldHVybmB3aWR0aDogJHsoZC52aWRlb0R1cmF0aW9uP0RRKGQuZGovZC52aWRlb0R1cmF0aW9uLDAsMSk6MCkqMTAwfSVgfX0pLF8uSygiZGl2Iix7Y2xhc3M6Inl0UHJvZ3Jlc3NCYXJMaW5lUHJvZ3Jlc3NCYXJQbGF5ZWQiLHN0eWxlOl8uSUUoe3dpZHRoOigpPT5gJHt3UyhhKCkpKjEwMH0lYCxiYWNrZ3JvdW5kOigpPT5iKCkucHJvZ3Jlc3NDb2xvciE9PXZvaWQgMD9fLkpFKGIoKS5wcm9ncmVzc0NvbG9yKTp2b2lkIDB9KX0pKSl9LCJ0YyIpO3dWLmlkb21Db21wYXQ9ITA7dmFyIHhWPV8uTCgoe0xiOmEsaGY6YixCeDpjLFd3OmR9KT0+e3ZhciBlPV8uUCgieXRQcm9ncmVzc0JhclBsYXloZWFkUHJvZ3Jlc3NCYXJQbGF5aGVhZERvdCIse3l0UHJvZ3Jlc3NCYXJQbGF5aGVhZFByb2dyZXNzQmFyUGxheWhlYWREb3RMYXJnZTooKT0+YSgpLmlzRHJhZ2dpbmcseXRQcm9ncmVzc0JhclBsYXloZWFkUHJvZ3Jlc3NCYXJQbGF5aGVhZERvdEhpZGU6KCk9PiFhKCkuaXNEcmFnZ2luZyYmZCgpfSk7cmV0dXJuIF8uSygieXQtcHJvZ3Jlc3MtYmFyLXBsYXloZWFkIix7Y2xhc3M6Inl0UHJvZ3Jlc3NCYXJQbGF5aGVhZEhvc3QiLHN0eWxlOl8uSUUoeyJtYXJnaW4tbGVmdCI6KCk9PmAke3hTKGEoKSkqMTAwfSVgLHRyYW5zZm9ybTooKT0+Yj8uKCk/LnBsYXloZWFkSW1hZ2U/YHRyYW5zbGF0ZVgoLSR7YygpP3hTKGEoKSkqMjA6MTB9cHgpYDpgdHJhbnNsYXRlWCgtJHtjKCk/eFMoYSgpKSoxMjo2fXB4KWB9KX0sXy5LKF8uTyx7QTooKT0+Yj8uKCk/LnBsYXloZWFkSW1hZ2UsCnRoZW46Zj0+Xy5LKCJkaXYiLHtjbGFzczpfLlAoInl0UHJvZ3Jlc3NCYXJQbGF5aGVhZFByb2dyZXNzQmFyUGxheWhlYWRDdXN0b20iLHt5dFByb2dyZXNzQmFyUGxheWhlYWRQcm9ncmVzc0JhclBsYXloZWFkQ3VzdG9tTGFyZ2U6KCk9PmEoKS5pc0RyYWdnaW5nLHl0UHJvZ3Jlc3NCYXJQbGF5aGVhZFByb2dyZXNzQmFyUGxheWhlYWRDdXN0b21IaWRlOigpPT4hYSgpLmlzRHJhZ2dpbmcmJmQoKX0pLHN0eWxlOl8uSUUoeyJ0cmFuc2Zvcm0tb3JpZ2luIjooKT0+YCR7YygpP3hTKGEoKSkqMjA6MTB9cHggY2VudGVyYH0pfSxfLksoXy5qRix7ZGF0YTpmLGFsdDoiIiwiYXJpYS1oaWRkZW4iOiJ0cnVlIixUYjohMX0pKSxXOigpPT5fLksoImRpdiIse2NsYXNzOmUsc3R5bGU6Xy5JRSh7InRyYW5zZm9ybS1vcmlnaW4iOigpPT5gJHtjKCk/eFMoYSgpKSoxMjo2fXB4IGNlbnRlcmB9KX0pfSkpfSwidWMiKTt4Vi5pZG9tQ29tcGF0PSEwO3ZhciBEbWE9Y2xhc3N7Y29uc3RydWN0b3IoYSxiLGMsZCxlLGYpe3RoaXMuST1hO3RoaXMuQj1iO3RoaXMuSz1jO3RoaXMuVT1kO3RoaXMuWj1lO3RoaXMuTT1mO3RoaXMuc3RhcnRQb3NpdGlvbj1udWxsO3RoaXMuaj10aGlzLnY9dGhpcy5vPSExO3RoaXMuRD1uZXcgXy5XdCh0aGlzLlksMTAwLHRoaXMpfVkoYSxiLGMpe2lmKGI9Yi5IKXtpZihiLmdldFZpZGVvRGF0YSgpPy5pc0xpdmUpe2xldCBkPXRoaXMuZ2V0UHJvZ3Jlc3NTdGF0ZShiKTthKz1kPy5zZWVrYWJsZVN0YXJ0fHwwfWIuc2Vla1RvKGEsdm9pZCAwLHZvaWQgMCx2b2lkIDAsYyl9fWdldFByb2dyZXNzU3RhdGUoYSl7dmFyIGI9YT8uZ2V0UHJlc2VudGluZ1BsYXllclR5cGUoKTtyZXR1cm4gYT8uZ2V0UHJvZ3Jlc3NTdGF0ZShiKX19O3ZhciBGbWE9Xy5MKCh7TGI6YSxjb25maWc6YixabTpjLFJhOmR9KT0+e3ZhciBlPURUKGEsKCk9PmIoKS5JYiksZj0oKT0+IWEoKS5RYyYmIWIoKS5JYixoPV8uUCgieXRQbGF5ZXJTdG9yeWJvYXJkSG9zdCIsInl0UGxheWVyU3Rvcnlib2FyZEhvc3RCaWdib2FyZCIse3l0UGxheWVyU3Rvcnlib2FyZEhvc3RNd2ViU2hvcnRzOigpPT5iKCkuSWImJiEwfSk7cmV0dXJuIF8uSygieXQtcGxheWVyLXN0b3J5Ym9hcmQiLG51bGwsXy5LKF8uTyx7QTooKT0+YSgpLmlzRHJhZ2dpbmd8fGEoKS5RYyx0aGVuOigpPT5fLksoXy5PLHtBOmUsdGhlbjooKT0+Xy5LKF8uTyx7QTpmLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6aCwiYXJpYS1oaWRkZW4iOiJ0cnVlIn0sXy5LKHlWLHtwcm9wczphLGNvbmZpZzpiLGVlOiEwLFJhOmR9KSksVzooKT0+Xy5LKEVtYSx7cHJvcHM6YSxmcmFtZTplLGNvbmZpZzpiLFptOmMsUmE6ZH0pfSl9KX0pKX0sInZjIiksR21hPV8uTCgoe0xiOmEsSWI6Yn0pPT4Ke3ZhciBjPURUKGEsYik7cmV0dXJuIF8uSygieXQtcGxheWVyLWJpZy1zdG9yeWJvYXJkIix7Y2xhc3M6Inl0UGxheWVyU3Rvcnlib2FyZEJpZ2JvYXJkV3JhcHBlciJ9LF8uSyhfLk8se0E6KCk9PmEoKS5pc0RyYWdnaW5nfHxhKCkuUWMsdGhlbjooKT0+Xy5LKF8uTyx7QTpjLHRoZW46KCk9Pl8uSyh6Vix7ZnJhbWU6Yyxwcm9wczphLGVlOiEwfSl9KX0pKX0sIndjIiksRW1hPV8uTCgoe3Byb3BzOmEsZnJhbWU6Yixjb25maWc6YyxabTpkLFJhOmV9KT0+e3ZhciBmPV8uUCgieXRQbGF5ZXJTdG9yeWJvYXJkSG9zdCIse3l0UGxheWVyU3Rvcnlib2FyZEhvc3RNd2ViU2hvcnRzOigpPT5jKCkuSWImJiEwLHl0UGxheWVyU3Rvcnlib2FyZEhvc3RJbmxpbmVQbGF5ZXI6KCk9PmMoKS54cSx5dFBsYXllclN0b3J5Ym9hcmRIb3N0RmFkZUluOigpPT5jKCkudXNlRmFkZUluQW5pbWF0aW9ufSksaD0oKT0+e2lmKCFfLngoImVuYWJsZV93ZWJfd2F0Y2hfbmV4dF9pbXBfY2xpZW50Iil8fCFjKCkueHEpcmV0dXJuIDE7CnZhciBrPWEoKS5IPy5nZXRTaXplKCk/LmhlaWdodD8/MDtyZXR1cm4gaz4wJiZrPDE2MD9rLzE2MDoxfTtyZXR1cm4gXy5LKCJkaXYiLHtjbGFzczpmLCJhcmlhLWhpZGRlbiI6InRydWUiLHN0eWxlOl8uSUUoKCk9Pnt2YXIgaz1hKCksbD15VChiKCkpKmgoKSxtPWQoKTtrPUFUKGspL2sudmlkZW9EdXJhdGlvbjt2YXIgbj1tKmsscD1sLzIrNjtsPW0tKGwvMis2KTtyZXR1cm57bGVmdDpgJHtuPD1wP3AvbSoxMDA6bj49bD9sL20qMTAwOmsqMTAwfSVgLCItLXN0b3J5Ym9hcmQtc2NhbGUiOmAke2goKX1gfX0pfSxfLksoXy5PLHtBOigpPT57dmFyIGs9YSgpO3JldHVybiEoYygpLkliJiZrLnZpZGVvRHVyYXRpb248MTUpfSx0aGVuOigpPT5fLksoelYse2ZyYW1lOmIscHJvcHM6YSxlZTohMSx6QTpofSl9KSxfLksoeVYse3Byb3BzOmEsY29uZmlnOmMsZWU6ITEsUmE6ZX0pKX0sInhjIikselY9Xy5MKCh7ZnJhbWU6YSxwcm9wczpiLGVlOmMsekE6ZH0pPT57dmFyIGU9KCk9PmIoKS5IPy5nZXRWaWRlb0NvbnRlbnRSZWN0KCk/Pwp7d2lkdGg6MCxoZWlnaHQ6MH0sZj1fLlAoe3l0UGxheWVyU3Rvcnlib2FyZEJpZ2JvYXJkSW1hZ2VXcmFwcGVyOmMseXRQbGF5ZXJTdG9yeWJvYXJkU3Rvcnlib2FyZEltYWdlV3JhcHBlcjooKT0+IWMoKX0pO3JldHVybiBfLksoImRpdiIse2NsYXNzOmYsc3R5bGU6Xy5JRSgoKT0+KHt3aWR0aDpgJHtjKCk/ZSgpLndpZHRoOnlUKGEoKSkqKGQ/LigpPz8xKX1weGAsaGVpZ2h0OmAke2MoKT9lKCkuaGVpZ2h0OnpUKGEoKSkqKGQ/LigpPz8xKX1weGB9KSl9LF8uSyhIbWEse2ZyYW1lOmEsUEE6KCk9PnlUKGEoKSksTkE6KCk9PnpUKGEoKSksT0E6KCk9Pnt2YXIgaD15VChhKCkpO3JldHVybiBoPjA/KGMoKT9lKCkud2lkdGg6eVQoYSgpKSooZD8uKCk/PzEpKS9oOjF9fSkpfSwieWMiKSxIbWE9Xy5MKCh7ZnJhbWU6YSxQQTpiLE5BOmMsT0E6ZH0pPT5fLksoImltZyIse3NyYzooKT0+YSgpPy51cmw/PyIiLGNsYXNzOiJ5dFBsYXllclN0b3J5Ym9hcmRTdG9yeWJvYXJkSW1hZ2UiLGFsdDoicHJldmlldy1pbWFnZSIsCnN0eWxlOl8uSUUoKCk9Pnt2YXIgZT1hKCk/P3tyb3c6MCxjb2x1bW46MCx3aWR0aDowLGhlaWdodDowfSxmPWIoKSxoPWMoKSxrPWQoKSx7bGVmdDpsLHRvcDptfT17bGVmdDotZS5jb2x1bW4qZiprLHRvcDotZS5yb3cqaCprfTtyZXR1cm57bGVmdDpgJHtsfXB4YCx0b3A6YCR7bX1weGAsd2lkdGg6YCR7ZS53aWR0aCprfXB4YCxoZWlnaHQ6YCR7ZS5oZWlnaHQqa31weGB9fSl9KSwiemMiKSx5Vj1fLkwoKHtwcm9wczphLGNvbmZpZzpiLGVlOmMsUmE6ZH0pPT57dmFyIGU9Xy5QKCJ5dFBsYXllclN0b3J5Ym9hcmRNZXRhZGF0YSIse3l0UGxheWVyU3Rvcnlib2FyZE1ldGFkYXRhQmlnYm9hcmQ6Y30pO3JldHVybiBfLksoImRpdiIse2NsYXNzOmV9LF8uSyhfLk8se0E6Yyx0aGVuOigpPT5fLksoXy5JQixudWxsLF8uSyhBVix7cHJvcHM6YSxjb25maWc6Yn0pLF8uSyhfLk8se0E6KCk9PnthOnt2YXIgZj1hKCk7dmFyIGg9YigpLGs9ZCgpO2lmKGg/LlJnJiZfLkIoaD8uUmcsZVQpPy50aXRsZSlmPQohMDtlbHNle2ZvcihsZXQgbCBvZiBGUyhrKT8uaGVhdE1hcmtlcnNEZWNvcmF0aW9ucz8/W10pe2Y9KGg9Xy5CKGwscVYpKSYmQlQoZixoKTticmVhayBhfWY9ITF9fXJldHVybiBmfSx0aGVuOigpPT5fLksoQlYse3Byb3BzOmEsY29uZmlnOmIsZWU6ITAsUmE6ZH0pfSkpLFc6KCk9Pl8uSyhfLklCLG51bGwsXy5LKEJWLHtwcm9wczphLGNvbmZpZzpiLGVlOiEwLFJhOmR9KSxfLksoQVYse3Byb3BzOmEsY29uZmlnOmJ9KSl9KSl9LCJBYyIpLEFWPV8uTCgoe3Byb3BzOmEsY29uZmlnOmJ9KT0+e3ZhciBjPV8uUCgieXRQbGF5ZXJTdG9yeWJvYXJkVGltZXN0YW1wIix7eXRQbGF5ZXJTdG9yeWJvYXJkVGltZXN0YW1wU2hvcnRzOigpPT5iKCkuSWIseXRQbGF5ZXJTdG9yeWJvYXJkVGltZXN0YW1wSXNIb3ZlcmluZzooKT0+YSgpLlFjfHxiKCkuSWImJiExfSk7cmV0dXJuIF8uSygiZGl2Iix7Y2xhc3M6Y30sXy5LKF8uSUIsbnVsbCwoKT0+Q1QoQVQoYSgpKSkpKX0sIkJjIiksQlY9Xy5MKCh7cHJvcHM6YSwKY29uZmlnOmIsZWU6YyxSYTpkfSk9PntjPV8uUCgieXRQbGF5ZXJTdG9yeWJvYXJkVGl0bGUiLHt5dFBsYXllclN0b3J5Ym9hcmRUaXRsZUJpZ2JvYXJkOmN9KTtyZXR1cm4gXy5LKCJkaXYiLHtjbGFzczpjfSxfLksoXy5PLHtBOigpPT4hYigpLkliLHRoZW46KCk9Pl8uSyhJbWEse3Byb3BzOmEsUmc6KCk9PmIoKS5SZyxSYTpkfSl9KSl9LCJDYyIpLEltYT1fLkwoKHtwcm9wczphLFJnOmIsUmE6Y30pPT5fLksoXy5JQixudWxsLF8uSyhfLmdHLHtwYTooKT0+e3ZhciBkPWMoKTtyZXR1cm4gRlMoZCk/LmhlYXRNYXJrZXJzRGVjb3JhdGlvbnM/P1tdfSx0YjoiSU5ERVgifSxkPT5fLksoXy5JQixudWxsLF8uSyhfLk8se0E6KCk9Pl8uQihkKCkscVYpJiZCVChhKCksXy5CKGQoKSxxVikpLHRoZW46KCk9Pl8uSyhKbWEse2NCOigpPT5fLkIoZCgpLHFWKX0pfSkpKSxfLksoXy5PLHtBOigpPT5iKCkmJl8uQihiKCksZVQpPy50aXRsZSx0aGVuOmQ9Pl8uSyhfLlYse3RleHQ6ZCxyZzohMH0pfSkpLAoiRGMiKSxKbWE9Xy5MKCh7Y0I6YX0pPT5fLksoXy5JQixudWxsLF8uSygiZGl2Iix7Y2xhc3M6Inl0UGxheWVyU3Rvcnlib2FyZFRpbWVkTWFya2VySWNvbldyYXBwZXIifSxfLksoXy5NRCx7aWNvbjooKT0+YSgpLmljb24sY2xhc3NOYW1lOiJ5dFBsYXllclN0b3J5Ym9hcmRUaW1lZE1hcmtlckljb24ifSkpLF8uSyhfLlYse3RleHQ6KCk9PmEoKS5sYWJlbCxyZzohMH0pKSwiRWMiKTt2YXIgQ1Y9Xy5MKCh7TGI6YSxoZjpiLGNvbmZpZzpjfSk9Pnt2YXIgZD1fLnVFKCJ5dC1wcm9ncmVzcy1iYXIiKSxlPV8udUUoImRpdiIpLGY9Xy51RSgiZGl2IiksW2gsa109Xy5KKHt3aWR0aDowLGxlZnQ6MH0sdm9pZCAwLCJkMWJzYmYiKSxsPSgpPT57Zi52YWx1ZSYmayhmLnZhbHVlLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpKX0sbT0oKT0+e2goKS53aWR0aDw9MCYmbCgpO3JldHVybiBoKCl9O18uRFAoInJlc2l6ZSIsbCk7dmFyIG49bmV3IERtYShtLCgpPT57fSwoKT0+MCwoKT0+e30sKCk9Pnt9LCgpPT57fSkscD0oKT0+YSgpLFtyLHRdPV8uSighMSx2b2lkIDAsImNWc1RLIik7Xy5EUCgibW91c2Vtb3ZlIixZa2EobixwLGMpKTtfLkRQKCJtb3VzZXVwIix4VChuLHAsYykpO3ZhciB2O18uVUooKCk9PntHa2EoZS52YWx1ZSk7dCghMSk7bCgpO3hUKG4scCxjKSgpO2MoKS5paiYmKHY9bmV3IFJlc2l6ZU9ic2VydmVyKGwpLHYub2JzZXJ2ZShmLnZhbHVlKSk7Xy5ZdSgoKT0+Cnt2Py5kaXNjb25uZWN0KCl9KX0pO3ZhciB6PV8uUCgieXRQbGF5ZXJQcm9ncmVzc0Jhckhvc3QiLCgpPT5jKCkuY2xhc3NOYW1lLHt5dFBsYXllclByb2dyZXNzQmFySG9zdFJlYWRPbmx5OigpPT5jKCkuZGlzYWJsZVNjcnViYmluZyx5dFBsYXllclByb2dyZXNzQmFySG9zdEhpZGRlbjooKT0+YygpLmtKJiYhcigpLHl0UGxheWVyUHJvZ3Jlc3NCYXJIb3N0TG93ZXJQbGF5ZXI6KCk9PmMoKS5wb3NpdGlvbj09PTAseXRQbGF5ZXJQcm9ncmVzc0Jhckhvc3RCb3R0b21FZGdlOigpPT5jKCkucG9zaXRpb249PT0xLHl0UGxheWVyUHJvZ3Jlc3NCYXJIb3N0Qm90dG9tSW5zZXQ6KCk9PmMoKS5wb3NpdGlvbj09PTIseXRQbGF5ZXJQcm9ncmVzc0Jhckhvc3RDdXN0b206KCk9PmMoKS5wb3NpdGlvbj09PTN9KSxFPV8uUCgieXRQbGF5ZXJQcm9ncmVzc0JhckJhY2tncm91bmQiLHt5dFBsYXllclByb2dyZXNzQmFyQmFja2dyb3VuZEhpZGU6KCk9PmMoKS5wb3NpdGlvbj09PTImJiFyKCkmJgohYSgpLmlzRHJhZ2dpbmd9KSxBPV8uUCgieXRQbGF5ZXJQcm9ncmVzc0JhckRyYWdDb250YWluZXIiLHt5dFBsYXllclByb2dyZXNzQmFyRHJhZ0NvbnRhaW5lckJvdHRvbUVkZ2U6KCk9PmMoKS5wb3NpdGlvbj09PTF9KSxGPV8uUCgieXRQbGF5ZXJQcm9ncmVzc0JhclByb2dyZXNzQmFyIix7eXRQbGF5ZXJQcm9ncmVzc0JhclByb2dyZXNzQmFySW5zZXQ6KCk9PmMoKS5wb3NpdGlvbj09PTIseXRQbGF5ZXJQcm9ncmVzc0JhclByb2dyZXNzQmFySW5zZXRNaW5pbWl6ZWQ6KCk9PmMoKS5wb3NpdGlvbj09PTImJiFyKCkmJiFhKCkuaXNEcmFnZ2luZ30pLEM9KCk9Pk1hdGguZmxvb3Iod1MoYSgpKSoxMDApO3JldHVybiBfLksoInl0LXByb2dyZXNzLWJhciIse2VsOmQsY2xhc3M6en0sXy5LKF8uTyx7QTooKT0+YygpLnBvc2l0aW9uPT09Mix0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOkV9KX0pLF8uSygiZGl2Iix7ZWw6ZSwib246Y2xpY2siOmZ1bmN0aW9uKEcpeyhjKCkuREl8fHR5cGVvZiBQb2ludGVyRXZlbnQhPT0KInVuZGVmaW5lZCImJkcgaW5zdGFuY2VvZiBQb2ludGVyRXZlbnQmJkcucG9pbnRlclR5cGU9PT0ibW91c2UiKSYmT2thKG4scCxjKShHKTtHLnN0b3BQcm9wYWdhdGlvbigpfSwib246dG91Y2hzdGFydCI6ZnVuY3Rpb24oRyl7UGthKG4scCkoRyk7Ry5zdG9wUHJvcGFnYXRpb24oKX0sIm9uOnRvdWNobW92ZSI6ZnVuY3Rpb24oRyl7UmthKG4scCxjKShHKTtHLnN0b3BQcm9wYWdhdGlvbigpfSwib246bW91c2VlbnRlciI6ZnVuY3Rpb24oKXt0KCEwKTtjKCkucG9zaXRpb249PT0yP3NldFRpbWVvdXQoKCk9PntsKCl9LDEwMCk6bCgpfSwib246bW91c2Vkb3duIjpmdW5jdGlvbihHKXtRa2EobixwKShHKTtHLnN0b3BQcm9wYWdhdGlvbigpfSwib246bW91c2VsZWF2ZSI6ZnVuY3Rpb24oKXt0KCExKTtUa2EocCkoKX0sIm9uOm1vdXNlbW92ZSI6ZnVuY3Rpb24oRyl7U2thKG4scCxjKShHKTtHLnN0b3BQcm9wYWdhdGlvbigpfSwib246bW91c2V1cCI6ZnVuY3Rpb24oRyl7VmthKG4sCnAsYykoRyk7cigpJiZhKCkuUyh7UWM6ITB9KTtHLnN0b3BQcm9wYWdhdGlvbigpfSwib246dG91Y2hlbmQiOmZ1bmN0aW9uKEcpe1VrYShuLHAsYykoRyk7Ry5zdG9wUHJvcGFnYXRpb24oKX0sIm9uOnRvdWNoY2FuY2VsIjpmdW5jdGlvbihHKXtXa2EobixwLGMpKEcpO0cuc3RvcFByb3BhZ2F0aW9uKCl9LCJvbjprZXlkb3duIjpmdW5jdGlvbihHKXtYa2EocCkoRyk7Ry5zdG9wUHJvcGFnYXRpb24oKX0sY2xhc3M6QSxyb2xlOiJzbGlkZXIiLCJhcmlhLXZhbHVlbm93IjpDLCJhcmlhLXZhbHVldGV4dCI6KCk9PmAke0MoKX0lYCwiYXJpYS12YWx1ZW1pbiI6KCk9PjAsImFyaWEtdmFsdWVtYXgiOigpPT4xMDAsZHJhZ2dhYmxlOiJmYWxzZSIsdGFiaW5kZXg6MCwiYXJpYS1sYWJlbCI6Xy5hQSgiU0VFS19TTElERVIiKX0sXy5LKCJkaXYiLHtlbDpmLGNsYXNzOkZ9LF8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJ5dFBsYXllclByb2dyZXNzQmFySGVhdHNlZWtlckNvbnRhaW5lciIse3l0UGxheWVyUHJvZ3Jlc3NCYXJIZWF0c2Vla2VyQ29udGFpbmVySW5zZXQ6KCk9PgpjKCkucG9zaXRpb249PT0yfSl9LF8uSyhDbWEse0xiOmEsY29uZmlnOmMsaGlnaENvbnRyYXN0OigpPT4hIWMoKS5paiYmYygpLnBvc2l0aW9uIT09Mn0pKSxfLksoXy5PLHtBOigpPT5jKCkuUmEmJnprYShjKCkuUmEpLHRoZW46KCk9Pl8uSyhBbWEse0p6OmEsbXVsdGlNYXJrZXJzUGxheWVyQmFyUmVuZGVyZXI6KCk9PmMoKS5SYSxwcm9ncmVzc0JhcldpZHRoOigpPT5oKCkud2lkdGgscHJvZ3Jlc3NDb2xvcjooKT0+YygpLnByb2dyZXNzQ29sb3J9KSxXOigpPT5fLksoXy5PLHtBOigpPT5jKCkuU2ksdGhlbjooKT0+Xy5LKHZWLHtMYjphLGNvbmZpZzpjfSksVzooKT0+Xy5LKHdWLHtMYjphLGNvbmZpZzpjfSl9KX0pLF8uSyh4Vix7TGI6YSxoZjooKT0+Xy54KCJlbmFibGVfY3VzdG9tX3NjcnViYmVyX3YyIik/YygpLmhmOmI/LigpLEJ4OigpPT5jKCkucG9zaXRpb24hPT0yLFd3OigpPT5jKCkueHI9PT0xJiYhcigpfHxjKCkueHI9PT0yfSkpKSxfLksoRm1hLHtMYjphLGNvbmZpZzooKT0+Cih7Umc6bFQoYSgpLGMoKS5SYSksZEo6KCk9Pm0oKS53aWR0aCxJYjohIWMoKS5JYix4cTohIWMoKS5paix1c2VGYWRlSW5BbmltYXRpb246ISFjKCkuaWp9KSxabTooKT0+aCgpLndpZHRoLFJhOigpPT5jKCkuUmF9KSl9LCJGYyIpO0NWLmlkb21Db21wYXQ9ITA7dmFyIERWPV8uTChhPT57dmFyIGI9KCk9Pnt2YXIgZD1hLnBsYXllck92ZXJsYXlSZW5kZXJlcj8uKCk7aWYoZClyZXR1cm4gelMoZCl9LGM9KCk9Pnt2YXIgZD1iKCk7aWYoZCl7dmFyIGU9YS5KbygpLmF1dG9uYXZFbmFibGVkO3JldHVybiBfLmFOKGU/Xy5CKGQuZW5hYmxlZEVkdUNvbW1hbmQsV1UpPy50ZXh0Ol8uQihkLmRpc2FibGVkRWR1Q29tbWFuZCxXVSk/LnRleHQpfX07cmV0dXJuIF8uSyhfLk8se0E6KCk9PmEuSm8oKS5ZaCYmISFiKCksdGhlbjooKT0+Xy5LKCJhdXRvbmF2LXRvb2x0aXAiLHtjbGFzczoieXR3QXV0b25hdlRvb2x0aXBIb3N0Iixyb2xlOiJhbGVydCJ9LF8uSygic3BhbiIseyJhcmlhLWxhYmVsIjpjLHJvbGU6InRleHQifSxjKSl9KX0sIkdjIik7RFYuaWRvbUNvbXBhdD0hMDt2YXIgRVY9Xy5MKGE9Pnt2YXIgYj1fLnZFKCJzcGVlZG1hc3Rlci10b29sdGlwIiksYz1fLk4oKCk9PmEuRygpLnNiLHZvaWQgMCwiRXNUUmxjIik7Xy5uRSgoKT0+e2lmKGMoKSYmYi52YWx1ZSl7bGV0IGQ9bnVsbDtTUygxNzMwNDAsYi52YWx1ZSxkLGU9PntkPWV9KX19LCJBdnBHSWYiKTtyZXR1cm4gXy5LKF8uTyx7QTpjLHRoZW46KCk9Pl8uSygic3BlZWRtYXN0ZXItdG9vbHRpcCIse2VsOmIsY2xhc3M6Inl0d1NwZWVkbWFzdGVyVG9vbHRpcEhvc3QifSxfLksoImRpdiIse2NsYXNzOiJ5dHdTcGVlZG1hc3RlclRvb2x0aXBMYWJlbCJ9LF8uJE4uR3QpLF8uSyhfLk1ELHtpY29uOiJGQVNUX0ZPUldBUkQiLGFjdGl2ZTohMCxjbGFzc05hbWU6Inl0d1NwZWVkbWFzdGVyVG9vbHRpcEljb24ifSkpfSl9LCJJYyIpO0VWLmlkb21Db21wYXQ9ITA7dmFyIEZWPV8uTChhPT5fLksoInBsYXllci11c2VyLWVkdS10b29sdGlwIix7Y2xhc3M6Inl0d1BsYXllclVzZXJFZHVUb29sdGlwSG9zdCJ9LF8uSyhEVix7Sm86YS5HLHBsYXllck92ZXJsYXlSZW5kZXJlcjphLnBsYXllck92ZXJsYXlSZW5kZXJlcn0pLF8uSygiZGl2Iix7Y2xhc3M6Inl0d1BsYXllclVzZXJFZHVUb29sdGlwVG9vbHRpcENvbnRhaW5lciJ9LF8uSygiZGl2Iix7Y2xhc3M6Inl0d1BsYXllclVzZXJFZHVUb29sdGlwVG9vbHRpcFdyYXBwZXIifSxfLksoRVYse0c6YS5HfSkpKSksIkpjIik7RlYuaWRvbUNvbXBhdD0hMDt2YXIgWmthPVswLDEsMjAsMjFdO3ZhciBhbGE9WzAsMSwyMCwyMV0sR1Q9dm9pZCAwO3ZhciBLbWE9Xy5MKCh7dWQ6YSxFcjpifSk9PntmdW5jdGlvbiBjKHApe3AudG91Y2hlcz8uWzBdJiYocD1wLnRvdWNoZXNbMF0sayh7eDpwLnBhZ2VYLHk6cC5wYWdlWX0pKX1mdW5jdGlvbiBkKHApe3ZhciByPWgoKTtpZighcnx8IXAudG91Y2hlcz8uWzBdKXJldHVybiBudWxsO3A9cC50b3VjaGVzWzBdO3JldHVybntsazpwLnBhZ2VYLXIueCxPZDpwLnBhZ2VZLXIueX19dmFyIFtlLGZdPV8uSihudWxsLHZvaWQgMCwiQWgzMGciKSxoPWUsaz1mLFtsLG1dPV8uSih2b2lkIDAsdm9pZCAwLCJRbzc2aGQiKTtfLll1KCgpPT57RlQoYSgpKTttKEVUKGwoKSkpfSk7dmFyIG49e0diOigpPT5fLksoImRpdiIsbnVsbCxfLksoXy5XLHtkYXRhOigpPT5iPy4oKT8ubWVudVJlbmRlcmVyPy5pdGVtc3x8W119LHtsaXN0SXRlbVZpZXdNb2RlbDooe2RhdGE6cH0pPT5fLksoXy5wTCx7ZGF0YTpwLElhOiEwfSksc3dpdGNoTGlzdEl0ZW1WaWV3TW9kZWw6Xy5mSn0pKSxIYTohMH07cmV0dXJuIF8uSygieXRtLXNob3J0cy1nZXN0dXJlLW92ZXJsYXktY29udHJvbHMiLAp7Y2xhc3M6Inl0bVNob3J0c0dlc3R1cmVPdmVybGF5Q29udHJvbHNHZXN0dXJlT3ZlcmxheSJ9LF8uSyhGVix7RzphfSksXy5LKCJkaXYiLHtjbGFzczoieXRtU2hvcnRzR2VzdHVyZU92ZXJsYXlDb250cm9sc0dlc3R1cmVDb250YWluZXIifSxfLksoImRpdiIse2NsYXNzOiJ5dG1TaG9ydHNHZXN0dXJlT3ZlcmxheUNvbnRyb2xzU3BlZWRtYXN0ZXJHZXN0dXJlQXJlYSIsIm9uOnRvdWNoc3RhcnQiOnA9PntjKHApO0hUKGEoKSxwLnRvdWNoZXMubGVuZ3RoKX0sIm9uOnRvdWNobW92ZSI6cD0+e3ZhciByPWQocCk7ciYmSVQocCxyLGEoKSl9LCJvbjp0b3VjaGVuZCI6KCk9PntGVChhKCkpO2sobnVsbCl9LCJvbjp0b3VjaGNhbmNlbCI6KCk9PntGVChhKCkpO2sobnVsbCl9fSksXy5LKCJkaXYiLHtjbGFzczoieXRtU2hvcnRzR2VzdHVyZU92ZXJsYXlDb250cm9sc01lbnVHZXN0dXJlQXJlYSIsIm9uOnRvdWNoc3RhcnQiOnA9PntjKHApO20oJGthKGEoKSxwLnRvdWNoZXMubGVuZ3RoLAooKT0+e18ueU4obil9LGwoKSkpfSwib246dG91Y2htb3ZlIjpwPT57dmFyIHI9ZChwKTtpZihyKXtwPWwoKTt2YXIgdD1yLmxrO3I9ci5PZDtwPU1hdGguc3FydCh0KnQrcipyKT5fLnNqKCJzcGVlZG1hc3Rlcl9jYW5jZWxsYXRpb25fbW92ZW1lbnRfZHAiLDEwKT9FVChwKTpwO20ocCl9fSwib246dG91Y2hlbmQiOigpPT57bShFVChsKCkpKTtrKG51bGwpfSwib246dG91Y2hjYW5jZWwiOigpPT57bShFVChsKCkpKTtrKG51bGwpfX0pLF8uSygiZGl2Iix7Y2xhc3M6Inl0bVNob3J0c0dlc3R1cmVPdmVybGF5Q29udHJvbHNTcGVlZG1hc3Rlckdlc3R1cmVBcmVhIiwib246dG91Y2hzdGFydCI6cD0+e2MocCk7SFQoYSgpLHAudG91Y2hlcy5sZW5ndGgpfSwib246dG91Y2htb3ZlIjpwPT57dmFyIHI9ZChwKTtyJiZJVChwLHIsYSgpKX0sIm9uOnRvdWNoZW5kIjooKT0+e0ZUKGEoKSk7ayhudWxsKX0sIm9uOnRvdWNoY2FuY2VsIjooKT0+e0ZUKGEoKSk7ayhudWxsKX19KSkpfSwiS2MiKTt2YXIgR1Y9Xy5MKGE9Pnt2YXIgYj1fLnVFKCJkaXYiKSxjPV8uTigoKT0+YS50aHVtYm5haWxEZXRhaWxzPy4oKSx2b2lkIDAsIkU4OFVHZCIpLGQ9Xy5OKCgpPT5hLkcoKS5iYSx2b2lkIDAsIlh0R0FtZSIpO18ubkUoKCk9PntjbGEoYi52YWx1ZSxjKCksZCgpKX0sInlBa2lpYyIpO3JldHVybiBfLksoInZpZGVvLWNvdmVyIix7Y2xhc3M6Xy5QKCJ5dG1WaWRlb0NvdmVySG9zdCIse2VuZGVkOigpPT51UyhhLkcoKSksaGlkZGVuOigpPT57dmFyIGU9YS5HKCk7cmV0dXJuISgkUyhlKXx8dVMoZSkpfX0pfSxfLksoImRpdiIse2NsYXNzOiJ5dG1WaWRlb0NvdmVyVGh1bWJuYWlsIixlbDpifSkpfSwiTWMiKTtHVi5pZG9tQ29tcGF0PSEwO25ldyBfLld0KGVsYSwyMDApO3ZhciBTVD0wO3ZhciBVVD1KUigpLFZUPSExO25ldyBfLkN0KCJwbGF5ZXJTZXR0aW5nc01lbnUiLCJOeGQzdWYiKTt2YXIgTG1hPV8uTCgoe2dmOmEsRXg6YixyZWVsUGxheWVyU2NydWJiZXJSZW5kZXJlcjpjfSk9Pnt2YXIgZD1fLlAoInl0TXdlYlNob3J0c1BsYXllckNvbnRyb2xzSG9zdCIse3l0TXdlYlNob3J0c1BsYXllckNvbnRyb2xzSG9zdElzU2NydWJiYWJsZU1vZGU6KCk9PlhUKGEoKSxiKCkpfSx7eXRNd2ViU2hvcnRzUGxheWVyQ29udHJvbHNIb3N0SGlkZVByb2dyZXNzQmFyOigpPT5XVChhKCksYigpKSYmYSgpLnZpZGVvRHVyYXRpb248PTMwfSk7cmV0dXJuIF8uSygiZGl2Iix7Y2xhc3M6ZH0sXy5LKENWLHtMYjphLGNvbmZpZzooKT0+e3ZhciBlPXtJYjohMCxwb3NpdGlvbjozLGRpc2FibGVTY3J1YmJpbmc6IVhUKGEoKSxiKCkpLEluOiExLHhyOlhUKGEoKSxiKCkpPzA6MSxvblRvdWNoTW92ZTooKT0+e2EoKS5nZXx8KGEoKS5TKHtnZTohMH0pLHdpbmRvdy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgidXBkYXRlLXNob3J0cy1vdmVybGF5LXZpc2liaWxpdHkiLHtidWJibGVzOiEwLApkZXRhaWw6e2dlOiEwfX0pKSl9LG9uVG91Y2hFbmQ6aD0+e1VTKGgpO2EoKS5TKHtnZTohMX0pO3dpbmRvdy5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgidXBkYXRlLXNob3J0cy1vdmVybGF5LXZpc2liaWxpdHkiLHtidWJibGVzOiEwLGRldGFpbDp7Z2U6ITF9fSkpfX0sZj1jPy4oKTtyZXR1cm4gZj8ucGxheWhlYWRJbWFnZT97Li4uZSxoZjp7cGxheWhlYWRJbWFnZTpmLnBsYXloZWFkSW1hZ2V9fTplfX0pKX0sIlFjIiksTW1hPV8uTCgoe0g6YSxjb250ZXh0OmIscmVlbFBsYXllclNjcnViYmVyUmVuZGVyZXI6YyxFcjpkfSk9Pnt2YXIgW2UsZl09Xy5KKCExLHZvaWQgMCwiUWNaU2dkIiksW2gsa109Xy5KKCExLHZvaWQgMCwiY250enJmIiksW2wsbV09Xy5KKCExLHZvaWQgMCwiU1RJYWViIiksW24scF09Xy5KKCExLHZvaWQgMCwiQ3dYZmJjIiksW3IsdF09Xy5KKDAsdm9pZCAwLCJzNUtMTWIiKSxbdix6XT1fLkooMCx2b2lkIDAsImdqbHFOYyIpLFtFLEFdPV8uSigwLAp2b2lkIDAsIkdVY2laZSIpLFtGLENdPV8uSigiIix2b2lkIDAsInhHSWU4IiksW0csRF09Xy5KKCExLHZvaWQgMCwiRnA1RDRiIiksSD1fLk4oKCk9Pnt2YXIgcGE9e2VhOmUoKSxnZTpoKCkseWI6bCgpLGlzRHJhZ2dpbmc6bigpLHZpZGVvRHVyYXRpb246digpLHZhOkUoKSx2aWRlb0lkOkYoKSxDYTpyKCksc2I6RygpfTtyZXR1cm57Li4uZFQoKSwuLi5wYSwuLi4oYj8uKCk/P3t9KSxTOm9hPT57b2EuZWEhPT12b2lkIDAmJmYob2EuZWEpO29hLmdlIT09dm9pZCAwJiZrKG9hLmdlKTtvYS55YiE9PXZvaWQgMCYmbShvYS55Yik7b2EuaXNEcmFnZ2luZyE9PXZvaWQgMCYmcChvYS5pc0RyYWdnaW5nKTtvYS5DYSE9PXZvaWQgMCYmdChvYS5DYSk7b2EudmlkZW9EdXJhdGlvbiE9PXZvaWQgMCYmeihvYS52aWRlb0R1cmF0aW9uKTtvYS52YSE9PXZvaWQgMCYmQShvYS52YSk7b2EudmlkZW9JZCE9PXZvaWQgMCYmQyhvYS52aWRlb0lkKTtvYS5zYiE9PXZvaWQgMCYmRChvYS5zYil9LHRhOntpc0Z1bGxzY3JlZW46Xy5yUCwKdG9nZ2xlRnVsbHNjcmVlbjp1amEsZXhpdEZ1bGxzY3JlZW46JFEsZGU6ZmxhLFJqOmhsYSxVbDppbGF9LEg6YSgpfX0sdm9pZCAwLCJVeWNNU2IiKSxSPU1rYShIKSxNPUxrYShIKSxTPUtrYShIKSxZPSgpPT57fTtfLm9GKCgpPT57dmFyIHBhPWEoKTtwYSYmKHBhLmFkZEV2ZW50TGlzdGVuZXIoIm9uVmlkZW9Qcm9ncmVzcyIsUikscGEuYWRkRXZlbnRMaXN0ZW5lcigib25WaWRlb0RhdGFDaGFuZ2UiLE0pLHBhLmFkZEV2ZW50TGlzdGVuZXIoIm9uU3RhdGVDaGFuZ2UiLFMpKX0pO18uWXUoKCk9Pnt2YXIgcGE9YSgpO3BhJiZwYT8uaXNSZWFkeT8uKCkmJihwYS5yZW1vdmVFdmVudExpc3RlbmVyKCJvblZpZGVvUHJvZ3Jlc3MiLFIpLHBhLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm9uVmlkZW9EYXRhQ2hhbmdlIixNKSxwYS5yZW1vdmVFdmVudExpc3RlbmVyKCJvblN0YXRlQ2hhbmdlIixTKSl9KTtyZXR1cm4gXy5LKCJ5dC1td2ViLXNob3J0cy1wbGF5ZXItY29udHJvbHMiLHtjbGFzczpfLlAoe1Byb2dyZXNzQmFyU2hvd2luZzooKT0+ClhUKEgoKSwhMCl9KX0sXy5LKF8uTyx7QTooKT0+SCgpLmJhPy5aaCx0aGVuOigpPT5fLksoXy5JQixudWxsLF8uSyhHVix7RzpILHRodW1ibmFpbERldGFpbHM6WX0pLF8uSyh1Vix7RzpILEg6YX0pKX0pLF8uSyhfLk8se0E6KCk9Pnt2YXIgcGE9SCgpO3JldHVybiBYVChwYSwhMCl8fFdUKHBhLCEwKX0sdGhlbjooKT0+Xy5LKExtYSx7Z2Y6SCxFeDooKT0+ITAscmVlbFBsYXllclNjcnViYmVyUmVuZGVyZXI6Y30pfSksXy5LKF8uTyx7QTooKT0+Xy54KCJtd2ViX3Nob3J0c19lbmFibGVfbG9uZ19wcmVzc19zcGVlZHVwIiksdGhlbjooKT0+Xy5LKF8uQ1Ase3Jvb3Q6IiNnZXN0dXJlLWxheWVyIn0sKCk9Pl8uSyhLbWEse3VkOkgsRXI6ZH0pKX0pKX0sIlNjIik7dmFyIEhWPV8uTChhPT57ZnVuY3Rpb24gYihVKXtVIT09MHx8cigpP1U+NTAmJihyKCl8fCFFKCkpPyh0KCExKSxBKCEwKSk6VTw9NTAmJihyKCl8fEUoKSkmJih0KCExKSxBKCExKSk6dCghMCl9YXN5bmMgZnVuY3Rpb24gYyhVLGhhKXsoVT1lKCk/P2F3YWl0IF8uTEgoKSkmJihoYT9VLnVuTXV0ZSghMCk6VS5tdXRlKCEwKSl9YXN5bmMgZnVuY3Rpb24gZChVKXt2YXIgaGE9ZSgpPz9hd2FpdCBfLkxIKCksbWE9NTA7aGEmJihtYT1oYS5nZXRWb2x1bWUoKSxoYS5pc011dGVkKCk/WlQoVSwwKTpaVChVLG1hKSk7RyhtYSl9dmFyIGU9a2xhKGEuSCksZj1fLnVFKCJ2b2x1bWUtY29udHJvbHMiKSxoPV8udUUoImJ1dHRvbiIpLGs9Xy52RSgiaW5wdXQiKSxbbCxtXT1fLkooITEsdm9pZCAwLCJzTWNMbGIiKSxbbixwXT1fLkooITEsdm9pZCAwLCJnb05wdiIpLHI9bix0PXAsW3Ysel09Xy5KKCEwLHZvaWQgMCwia0FUOTUiKSxFPXYsQT16LFtGLENdPV8uSig1MCx2b2lkIDAsInE1cUQyYyIpLApHPUMsRD1fLk4oKCk9Pnt2YXIgVT1yKCk7cmV0dXJuIF8ueCgid2ViX3Nob3J0c19rZXlib2FyZF9lbmFibGVfbXV0ZV9zaG9ydGN1dCIpP1U/Xy5hQSgiUExBWUVSX0xBQkVMX1VOTVVURSIsdm9pZCAwLCJVbm11dGUgKG0pIik6Xy5hQSgiUExBWUVSX0xBQkVMX01VVEUiLHZvaWQgMCwiTXV0ZSAobSkiKTpVP18uYUEoIlVOTVVURV9WT0xVTUUiLHZvaWQgMCwiVW5tdXRlIik6Xy5hQSgiTVVURV9WT0xVTUUiLHZvaWQgMCwiTXV0ZSIpfSx2b2lkIDAsImxSMXNHYyIpLEg9Xy5OKCgpPT57dmFyIFU9cigpLGhhPUUoKTtyZXR1cm57c291cmNlczpbe2NsaWVudFJlc291cmNlOntpbWFnZU5hbWU6VT8iVk9MVU1FX09GRl9GSUxMRUQiOmhhPyJWT0xVTUVfVVBfRklMTEVEIjoiVk9MVU1FX0RPV05fRklMTEVEIn19XX19LHZvaWQgMCwiU0lxa2VjIiksUj1fLk4oKCk9Pnt2YXIgVT1GKCk7cmV0dXJuIHIoKT9gJHtVfSUgdm9sdW1lIG11dGVkYDpgJHtVfSUgdm9sdW1lYH0sdm9pZCAwLCJUZkhQMGQiKSwKTT1fLk4oKCk9PmEub3JpZW50YXRpb24oKT09PSJ2ZXJ0aWNhbF9kb3duIix2b2lkIDAsIlo3RjN1YiIpLFM9Xy5OKCgpPT5NKCk/InZlcnRpY2FsIjoiaG9yaXpvbnRhbCIsdm9pZCAwLCJzVjJNcGIiKSxZPV8uTigoKT0+YS5Edj8uKCk/PyExLHZvaWQgMCwiem92VUxlIikscGE9Xy5OKCgpPT5hLkNwPy4oKT8/ITEsdm9pZCAwLCJwRVVocWUiKTtfLlVKKCgpPT57ZnVuY3Rpb24gVSgpe20oITApfWZ1bmN0aW9uIGhhKCl7bSghMSl9ayYmay52YWx1ZSYmKGsudmFsdWUuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLFUpLGsudmFsdWUuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXNvdXQiLGhhKSxkKGsudmFsdWUpLnRoZW4oKCk9PntiKE51bWJlcihrLnZhbHVlPy52YWx1ZT8/MCkpfSkpO2gmJmgudmFsdWUmJihXUyhoLnZhbHVlLDI4NjYyKSxoLnZhbHVlLmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIixVKSxoLnZhbHVlLmFkZEV2ZW50TGlzdGVuZXIoImZvY3Vzb3V0IixoYSkpO18uWXUoKCk9Pgp7az8udmFsdWU/LnJlbW92ZUV2ZW50TGlzdGVuZXIoImZvY3VzIixVKTtrPy52YWx1ZT8ucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZm9jdXNvdXQiLGhhKTtoPy52YWx1ZT8ucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZm9jdXMiLFUpO2g/LnZhbHVlPy5yZW1vdmVFdmVudExpc3RlbmVyKCJmb2N1c291dCIsaGEpfSl9KTt2YXIgb2E9VT0+e1U9VS5tdXRlZD8wOlUudm9sdW1lO0coVSk7YihVKTtrLnZhbHVlJiZaVChrLnZhbHVlLFUpfTtfLm5FKCgpPT57dmFyIFU9ZSgpO1UmJihVLmFkZEV2ZW50TGlzdGVuZXIoIm9uVm9sdW1lQ2hhbmdlIixvYSksXy5ZdSgoKT0+e1UucmVtb3ZlRXZlbnRMaXN0ZW5lcigib25Wb2x1bWVDaGFuZ2UiLG9hKX0pKX0sInhoM0daYyIpO3JldHVybiBfLksoInZvbHVtZS1jb250cm9scyIse2NsYXNzOl8uUCgieXRkVm9sdW1lQ29udHJvbHNIb3N0Iix7eXRkVm9sdW1lQ29udHJvbHNEaXNhYmxlU2xpZGVyOnBhfSxhLmNsYXNzTmFtZSksZWw6Zn0sXy5LKCJkaXYiLAp7Im9uOnBvaW50ZXJsZWF2ZSI6ZnVuY3Rpb24oKXttKCExKX0sY2xhc3M6Xy5QKCJ5dGRWb2x1bWVDb250cm9sc1ZvbHVtZUNvbnRyb2xzQ29udGFpbmVyIix7eXRkVm9sdW1lQ29udHJvbHNWb2x1bWVDb250cm9sc0NvbnRhaW5lclZlcnRpY2FsOk0seXRkVm9sdW1lQ29udHJvbHNWb2x1bWVDb250cm9sc0NvbnRhaW5lckV4cGFuZGVkOigpPT5sKCl9KX0sXy5LKF8uTyx7QTooKT0+IWEuYmo/LigpLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJ5dGRWb2x1bWVDb250cm9sc0JhY2tncm91bmRTY3JpbSIse3l0ZFZvbHVtZUNvbnRyb2xzQmFja2dyb3VuZFNjcmltRXhwYW5kZWQ6bCx5dGRWb2x1bWVDb250cm9sc0JhY2tncm91bmRTY3JpbUV4cGFuZGVkSG92ZXJTdGF0ZTooKT0+bCgpJiZZKCl9KX0pfSksXy5LKCJkaXYiLHtjbGFzczpfLlAoe3l0ZFZvbHVtZUNvbnRyb2xzTXV0ZUljb25CdXR0b25Db250YWluZXI6TX0pfSxfLksoImJ1dHRvbiIseyJhcmlhLWxhYmVsIjpELAp0aXRsZTpELGVsOmgsIm9uOmNsaWNrIjpmdW5jdGlvbihVKXtYUygyODY2Mik7ayYmay52YWx1ZSYmYyhrLnZhbHVlLHIoKSk7VS5zdG9wUHJvcGFnYXRpb24oKX0sIm9uOnBvaW50ZXJlbnRlciI6ZnVuY3Rpb24oKXttKCEwKX0sY2xhc3M6Inl0ZFZvbHVtZUNvbnRyb2xzTXV0ZUljb25CdXR0b24ifSxIP18uSyhfLmpGLHtkYXRhOkgsYWx0OkQsY2xhc3NOYW1lOiJ5dGRWb2x1bWVDb250cm9sc011dGVJY29uIn0pOm51bGwpKSxfLksoImRpdiIse2NsYXNzOl8uUCgieXRkVm9sdW1lQ29udHJvbHNTbGlkZXJDb250YWluZXIiLHt5dGRWb2x1bWVDb250cm9sc1NsaWRlckNvbnRhaW5lckV4cGFuZGVkOmwseXRkVm9sdW1lQ29udHJvbHNTbGlkZXJDb250YWluZXJWZXJ0aWNhbDpNLHl0ZFZvbHVtZUNvbnRyb2xzU2xpZGVyQ29udGFpbmVyVmVydGljYWxEb3duOk0seXRkVm9sdW1lQ29udHJvbHNTbGlkZXJDb250YWluZXJWZXJ0aWNhbEV4cGFuZGVkOigpPT5sKCkmJk0oKSx5dGRWb2x1bWVDb250cm9sc1NsaWRlckNvbnRhaW5lckRpc2FibGVTbGlkZXI6cGEsCnl0ZFZvbHVtZUNvbnRyb2xzU2xpZGVyQ29udGFpbmVyV2l0aFNjcmltOigpPT4hYS5iaj8uKCl9KSwib246Y2xpY2siOmZ1bmN0aW9uKFUpe1Uuc3RvcFByb3BhZ2F0aW9uKCl9fSxfLksoImlucHV0Iix7ZGlyOiJsdHIiLCJhcmlhLWxhYmVsIjpfLmFBKCJWT0xVTUUiKSx0aXRsZTpfLmFBKCJWT0xVTUUiKSxlbDprLCJvbjppbnB1dCI6ZnVuY3Rpb24oVSl7ayYmay52YWx1ZSYmamxhKE51bWJlcihrLnZhbHVlPy52YWx1ZT8/MCksZSgpKTtVLnN0b3BQcm9wYWdhdGlvbigpfSx0eXBlOiJyYW5nZSIsY2xhc3M6Inl0ZFZvbHVtZUNvbnRyb2xzTmF0aXZlU2xpZGVyIixpZDoidm9sdW1lLWlucHV0Iixyb2xlOiJzbGlkZXIiLCJhcmlhLXZhbHVlbm93IjpGLCJhcmlhLXZhbHVldGV4dCI6UiwiYXJpYS12YWx1ZW1pbiI6MCwiYXJpYS12YWx1ZW1heCI6MTAwLCJhcmlhLW9yaWVudGF0aW9uIjpTfSkpKSl9LCJVYyIpO3ZhciBObWE9Xy5MKGE9Pnt2YXIgYj0oKT0+e3ZhciBjPWEuRygpLGQ9Yy5IPy5nZXRTaXplPy4oKT8ud2lkdGg7cmV0dXJuKGMuYmE/LkVlfHxfLngoIm13ZWJfZW5hYmxlX3BvcnRyYWl0X2Z1bGxzY3JlZW5fYWN0aW9ucyIpKSYmISFkJiZkPDQyMH07cmV0dXJuIF8uSygieXRtLWZ1bGxzY3JlZW4tcmVsYXRlZC12aWRlb3MtZW50cnktcG9pbnQtdmlldy1tb2RlbCIse2NsYXNzOl8uUCgieXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsSG9zdCIse3l0bUZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludFZpZXdNb2RlbFRpdGxlSGlkZGVuOmJ9KX0sXy5LKCJidXR0b24iLHtjbGFzczpfLlAoInl0bUZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludFZpZXdNb2RlbEJ1dHRvbiIse3l0bUZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludFZpZXdNb2RlbFNpbmdsZVRodW1ibmFpbDpfLngoIm13ZWJfZW5hYmxlX3BvcnRyYWl0X2Z1bGxzY3JlZW5fYWN0aW9ucyIpfSksCiJvbjpjbGljayI6ZnVuY3Rpb24oYyl7YS5HKCkuUyh7TmE6ITB9KTtfLk1PKCIuZnVsbHNjcmVlbi1yZWNvbW1lbmRhdGlvbiAubWVkaWEtaXRlbS1pbmZvIGEiKTtiVCgpO2Muc3RvcFByb3BhZ2F0aW9uKCl9LCJhcmlhLWxhYmVsIjooKT0+YS5kYXRhKCkudGl0bGU/LmNvbnRlbnQ/PyIifSxfLksoXy5PLHtBOigpPT4hYigpLHRoZW46KCk9Pl8uSyhfLlYse3RleHQ6KCk9PmEuZGF0YSgpLnRpdGxlfSl9KSxfLksoXy5PLHtBOigpPT5hLmRhdGEoKS5pbWFnZUZyb250LHRoZW46Yz0+Xy5LKCJkaXYiLHtjbGFzczoieXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsVGh1bWJuYWlsU3RhY2sifSxfLksoXy5PLHtBOigpPT4hXy54KCJtd2ViX2VuYWJsZV9wb3J0cmFpdF9mdWxsc2NyZWVuX2FjdGlvbnMiKXx8ISFhLmRhdGEoKS5pbWFnZUJhY2ssdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczpfLlAoInl0bUZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludFZpZXdNb2RlbEZhZGVkVGh1bWJuYWlsIiwKInl0bUZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludFZpZXdNb2RlbFNtYWxsRmFkZWRUaHVtYm5haWwiKX0pfSksXy5LKF8uTyx7QTooKT0+IV8ueCgibXdlYl9lbmFibGVfcG9ydHJhaXRfZnVsbHNjcmVlbl9hY3Rpb25zIil8fCEhYS5kYXRhKCkuaW1hZ2VNaWRkbGUsdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczpfLlAoInl0bUZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludFZpZXdNb2RlbEZhZGVkVGh1bWJuYWlsIiwieXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsTGFyZ2VGYWRlZFRodW1ibmFpbCIpfSl9KSxfLksoImRpdiIse2NsYXNzOiJ5dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxUaHVtYm5haWxDb250YWluZXIifSxfLksoXy5qRix7ZGF0YTpjLGFsdDoiIixjbGFzc05hbWU6Inl0bUZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludFZpZXdNb2RlbFRodW1ibmFpbCIsYXJpYUhpZGRlbjohMCwKWWE6ITB9KSkpfSkpKX0sIlZjIik7dmFyIElWPV8uTCgoe2RhdGE6YSxjbGFzc05hbWU6YixidXR0b25PdmVycmlkZXM6Y30pPT5fLksoInl0bS1zbGltLW1ldGFkYXRhLWJ1dHRvbi1yZW5kZXJlciIse2NsYXNzOiJ5dG1TbGltTWV0YWRhdGFCdXR0b25SZW5kZXJlckhvc3QifSxfLksoXy5XLHtkYXRhOigpPT5hKCkuYnV0dG9ufSx7YnV0dG9uUmVuZGVyZXI6KHtkYXRhOmR9KT0+Xy5LKF8ucE8se2RhdGE6ZCxjbGFzc05hbWU6YixidXR0b25PdmVycmlkZXM6Y30pfSkpLCJXYyIpO0lWLmlkb21Db21wYXQ9ITA7dmFyIEpWPV8uTCgoe2RhdGE6YSxjbGFzc05hbWU6YixidXR0b25PdmVycmlkZXM6YyxIYzpkfSk9Pnt2YXIgZT1fLkRJKF8uUkwsKCk9PmEoKS5saWtlU3RhdHVzRW50aXR5S2V5fHwiIiksZj0oKT0+Xy50UCgpJiZhKCkuaXNMaWtlJiZhKCkuYnV0dG9uPy50b2dnbGVCdXR0b25SZW5kZXJlcj97c3R5bGU6Im1vbm8ifTpjPy4oKSxoPSgpPT5fLnRQKCkmJmEoKS5pc0xpa2UmJmEoKS5idXR0b24/LnRvZ2dsZUJ1dHRvblJlbmRlcmVyP3thbmltYXRlSWNvbjoidHJ1ZSJ9OnZvaWQgMDtyZXR1cm4gXy5LKCJ5dG0tc2xpbS1tZXRhZGF0YS10b2dnbGUtYnV0dG9uLXJlbmRlcmVyIix7Y2xhc3M6Yn0sXy5LKF8uTyx7QTooKT0+e3ZhciBrPWEoKS5idXR0b24/LnRvZ2dsZUJ1dHRvblJlbmRlcmVyO2lmKGsmJmEoKS5saWtlU3RhdHVzRW50aXR5S2V5KXtsZXQgbD1hKCkuaXNMaWtlP2UoKT8ubGlrZVN0YXR1cz09PSJMSUtFIjplKCk/Lmxpa2VTdGF0dXM9PT0iRElTTElLRSI7cmV0dXJuey4uLmssCmlzVG9nZ2xlZDpsfX1yZXR1cm4ga30sdGhlbjprPT5fLksoXy5xTyx7ZGF0YTprLHN0eWxlOmgsY2xhc3NOYW1lOmIsYnV0dG9uT3ZlcnJpZGVzOmYsSGM6ZH0pfSkpfSwiWGMiKTtKVi5pZG9tQ29tcGF0PSEwO3ZhciBLVj1fLkwoYT0+e2Z1bmN0aW9uIGIocil7dmFyIHQ9YygpO3QuYmE/LkR6fHxfLnRQKCl8fHQuaXNGdWxsc2NyZWVuJiZ0LnRhLnRvZ2dsZUZ1bGxzY3JlZW4oKTtyLnN0b3BQcm9wYWdhdGlvbigpfXZhciBjPWEuRyxkPSgpPT5hLkcoKS5IPy5nZXRTaXplPy4oKT8ud2lkdGgsZT1fLk4oKCk9PiEhYS5HKCkuSD8uaXNFbWJlZHNTaG9ydHNNb2RlPy4oKSx2b2lkIDAsIndzSERaIiksZj1fLlAoeyJwbGF5ZXItY29udHJvbHMtaGlkZSI6KCk9PiEoIUlTKGEuRygpKXx8YS5HKCkuYmE/LkVlJiYhYS5HKCkuTmEpfSksaD1hLndhdGNoTmV4dFJlc3BvbnNlLGs9YS50aHVtYm5haWxQcmV2aWV3UmVuZGVyZXIsbD1hLnBsYXllck11dGVkQXV0b3BsYXlPdmVybGF5UmVuZGVyZXIsbT0oKT0+e3ZhciByPUNrYShoPy4oKSxrPy4oKSk7cmV0dXJuIGUoKXx8YS5HKCkuYmE/Lm9oP3IuZmlsdGVyKHQ9Pl8uQih0LGZtYSk/ITE6Xy5CKHQsXy5WTCk/Lmljb24/Lmljb25UeXBlIT09IkFERF9UT19XQVRDSF9MQVRFUiIpOgpyfSxuPSgpPT57dmFyIHI9aD8uKCksdD1rPy4oKSx2PWw/LigpLHo9JFMoYS5HKCkpO3ZhciBFPWUoKTtpZih2KUU9dj8ueW91dHViZVdhdGVybWFyaztlbHNlIGlmKHQ9Xy5CKHQ/LnF1aWNrQWN0aW9uc0JhcixLUyk/LndhdGNoT25Zb3V0dWJlQnV0dG9uLHY9Xy5CKHI/LnBsYXllck92ZXJsYXlzPy5wbGF5ZXJPdmVybGF5UmVuZGVyZXI/LmZ1bGxzY3JlZW5RdWlja0FjdGlvbnNCYXIsS1MpPy53YXRjaE9uWW91dHViZUJ1dHRvbixyPV8uQih0fHx2LGxWKT8ud2F0Y2hPbll0TGFiZWxCdXR0b24sdD1fLkIodHx8dixsVik/Lnl0TG9nb09ubHlCdXR0b24seilFPXI7ZWxzZXtpZihFKXRyeXtsZXQgQT10LmJ1dHRvblZpZXdNb2RlbCxGPUEudGl0bGVGb3JtYXR0ZWQuYXR0YWNobWVudFJ1bnNbMF0uZWxlbWVudDtGLnR5cGUuaW1hZ2VUeXBlLmltYWdlLnNvdXJjZXNbMF0uY2xpZW50UmVzb3VyY2UuaW1hZ2VOYW1lPSJzaG9ydHNfdGV4dF9sb2dvIjtGLnByb3BlcnRpZXMubGF5b3V0UHJvcGVydGllcy5oZWlnaHQudmFsdWU9CjI0O0YucHJvcGVydGllcy5sYXlvdXRQcm9wZXJ0aWVzLndpZHRoLnZhbHVlPTcyO3o9QT8ub25UYXA/LmlubmVydHViZUNvbW1hbmQ/LnVybEVuZHBvaW50Py51cmw7aWYoRSYmeiYmei5pbmNsdWRlcygiL3dhdGNoP3Y9Iikpe2xldCBDPXoucmVwbGFjZSgiL3dhdGNoP3Y9IiwiL3Nob3J0cy8iKTtBLm9uVGFwLmlubmVydHViZUNvbW1hbmQudXJsRW5kcG9pbnQudXJsPUN9fWNhdGNoKEEpe31FPXR9cmV0dXJuIEV9LHA9e2NsYXNzTmFtZToiY2lyY2xlLWJ1dHRvbnMiLGJ1dHRvbk92ZXJyaWRlczp7c3R5bGU6Im92ZXJsYXkifX07cmV0dXJuIF8uSygicGxheWVyLWZ1bGxzY3JlZW4tYWN0aW9uLW1lbnUiLHtjbGFzczoieXR3UGxheWVyRnVsbHNjcmVlbkFjdGlvbk1lbnVIb3N0In0sXy5LKCJkaXYiLHtjbGFzczpmfSxfLksoImRpdiIse2NsYXNzOiJmdWxsc2NyZWVuLWFjdGlvbi1tZW51Iiwib246Y2xpY2siOmZ1bmN0aW9uKHIpe3ZhciB0PWMoKTtjVCh0LHtJYzohMH0pO3Iuc3RvcFByb3BhZ2F0aW9uKCk7CnIuc3RvcFByb3BhZ2F0aW9uKCl9fSxfLksoXy5PLHtBOigpPT4hKGEuRygpLmJhPy5oaWRlVmlkZW9JbmZvfHxhLkcoKS5iYT8uWXd8fGQoKSYmZCgpPDMyMCksdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczpfLlAoImFjdGlvbi1tZW51LWVuZ2FnZW1lbnQtYnV0dG9ucy13cmFwcGVyIiwibm8tbGFiZWwtZXhwIiksIm9uOmNsaWNrIjpifSxfLksoXy5XLHtkYXRhOm19LHtidXR0b25SZW5kZXJlcjooe2RhdGE6cn0pPT5fLksoXy5wTyx7ZGF0YTpyLC4uLnB9KSxzbGltTWV0YWRhdGFUb2dnbGVCdXR0b25SZW5kZXJlcjooe2RhdGE6cn0pPT5fLksoSlYse2RhdGE6cixjbGFzc05hbWU6Xy5QKHAuY2xhc3NOYW1lLHsibGlrZS1idXR0b24tbm8tbGFiZWwtZXhwIjooKT0+cigpLmlzTGlrZX0pLEhjOigpPT5yKCkuaXNMaWtlP3tBczohMH06dm9pZCAwLGJ1dHRvbk92ZXJyaWRlczooKT0+cigpLmlzTGlrZT92b2lkIDA6cC5idXR0b25PdmVycmlkZXN9KSxzbGltTWV0YWRhdGFCdXR0b25SZW5kZXJlcjooe2RhdGE6cn0pPT4KXy5LKElWLHtkYXRhOnIsLi4ucH0pLGZ1bGxzY3JlZW5FbmdhZ2VtZW50QWN0aW9uQmFyU2F2ZUJ1dHRvblJlbmRlcmVyOih7ZGF0YTpyfSk9Pl8uSyhJVix7ZGF0YTpyLC4uLnB9KSxidXR0b25WaWV3TW9kZWw6KHtkYXRhOnJ9KT0+Xy5LKF8uSEQse2RhdGE6cixjbGFzc05hbWU6Inl0d1BsYXllckZ1bGxzY3JlZW5BY3Rpb25NZW51Q2lyY2xlQnV0dG9ucyIsYnV0dG9uT3ZlcnJpZGVzOntpY29uUG9zaXRpb246Imljb24tb25seS00MCJ9fSksdG9nZ2xlQnV0dG9uUmVuZGVyZXI6KHtkYXRhOnJ9KT0+Xy5LKF8ucU8se2RhdGE6ciwuLi5wfSl9KSl9KSxfLksoImRpdiIse2NsYXNzOiJxdWljay1hY3Rpb25zLXdyYXBwZXIifSxfLksoXy5PLHtBOigpPT4hYS5HKCkuYmE/Llh3JiYhJFMoYS5HKCkpJiYhKGQoKSYmZCgpPDMyMCkmJiFlKCkmJkxTKGEud2F0Y2hOZXh0UmVzcG9uc2U/LigpKSx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJmdWxsc2NyZWVuLXdhdGNoLW5leHQtZW50cnlwb2ludC13cmFwcGVyIn0sCl8uSyhObWEse2RhdGE6KCk9PkxTKGEud2F0Y2hOZXh0UmVzcG9uc2U/LigpKSxHOmN9KSl9KSxfLksoXy5PLHtBOigpPT4kUyhhLkcoKSkmJihlKCl8fGQoKSYmZCgpPDMyMCk/ITE6ITAsdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoid2F0Y2gtb24teW91dHViZS1idXR0b24td3JhcHBlciJ9LF8uSyhfLlcse2RhdGE6bn0se2J1dHRvblZpZXdNb2RlbDooe2RhdGE6cn0pPT5fLksoXy5IRCx7ZGF0YTpyLGNsYXNzTmFtZToid2F0Y2gtb24teW91dHViZS1idXR0b24iLGJ1dHRvbk92ZXJyaWRlczooKT0+e3ZhciB0PXIoKTtyZXR1cm57c2l6ZToiTCIsZGlzYWJsZWQ6IV8uQihfLkIodD8ub25UYXAsXy5PRCksXy5WRCl9fX0pLGJ1dHRvblJlbmRlcmVyOl8ucE8sdG9nZ2xlQnV0dG9uUmVuZGVyZXI6Xy5xT30pKX0pKSkpKX0sIlljIik7S1YuaWRvbUNvbXBhdD0hMDt2YXIgTFY9Xy5MKGE9Pnt2YXIgYj0oKT0+e3ZhciBtPWEucGxheWVyTXV0ZWRBdXRvcGxheU92ZXJsYXlSZW5kZXJlcj8uKCk7cmV0dXJuIF8uQihtPy5lbmRTY3JlZW4scFYpPy5jb250aW51ZVdhdGNoaW5nfSxjPSgpPT57dmFyIG09YS5wbGF5ZXJNdXRlZEF1dG9wbGF5T3ZlcmxheVJlbmRlcmVyPy4oKTtyZXR1cm4gXy5CKG0/LmVuZFNjcmVlbixwVik/LmJyYW5kaW5nSWNvbn0sW2QsZV09Xy5KKCExLHZvaWQgMCwiRWVYWEJjIiksZixoPSgpPT57Y2xlYXJUaW1lb3V0KGYpO2UoITEpO2Y9c2V0VGltZW91dCgoKT0+e2UoITApfSw0RTMpfSxrPSgpPT57dmFyIG09YS5HKCkuSD8uZ2V0VmlkZW9EYXRhKCk/LnZpZGVvX2lkO20mJmEuRygpLkg/LmN1ZVZpZGVvQnlJZChtKX0sbD0oKT0+e3ZhciBtPV8uVXcoYS5wbGF5ZXJNdXRlZEF1dG9wbGF5T3ZlcmxheVJlbmRlcmVyPy4oKS50cmFja2luZ1BhcmFtcyk7bSYmXy5KTyhtKX07Xy5VSigoKT0+e2goKTthLkcoKS5IPy5hZGRFdmVudExpc3RlbmVyKCJvbk11dGVkQXV0b3BsYXlTdGFydHMiLApoKTthLkcoKS5IPy5hZGRFdmVudExpc3RlbmVyKCJvbkF1dG9wbGF5QmxvY2tlZCIsayk7YS5HKCkuSD8uYWRkRXZlbnRMaXN0ZW5lcigib25WaWRlb0RhdGFDaGFuZ2UiLGwpfSk7Xy5ZdSgoKT0+e2NsZWFyVGltZW91dChmKTthLkcoKS5IPy5yZW1vdmVFdmVudExpc3RlbmVyKCJvbk11dGVkQXV0b3BsYXlTdGFydHMiLGgpO2EuRygpLkg/LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm9uQXV0b3BsYXlCbG9ja2VkIixrKTthLkcoKS5IPy5yZW1vdmVFdmVudExpc3RlbmVyKCJvblZpZGVvRGF0YUNoYW5nZSIsbCl9KTtyZXR1cm4gXy5LKCJ5dG0tbXV0ZWQtYXV0b3BsYXktb3ZlcmxheSIse2NsYXNzOiJ5dG1NdXRlZEF1dG9wbGF5T3ZlcmxheUhvc3QiLCJvbjpjbGljayI6ZnVuY3Rpb24obSl7dmFyIG49YS5HPy4oKS5ILHA9bj8uZ2V0VmlkZW9EYXRhKCk/LnZpZGVvX2lkLHI9bj8uZ2V0Q3VycmVudFRpbWUoKTtwJiZyJiYobj8udW5NdXRlKCksbj8ubG9hZFZpZGVvQnlJZChwLHIpKTsKbS5zdG9wUHJvcGFnYXRpb24oKX19LF8uSyhfLk8se0E6KCk9PnVTKGEuRygpKSx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dG1NdXRlZEF1dG9wbGF5T3ZlcmxheUJhY2tncm91bmQifSxfLksoImRpdiIsbnVsbCxfLksoXy5XLHtkYXRhOmJ9LHtidXR0b25WaWV3TW9kZWw6Xy5IRH0pKSxfLksoImRpdiIse2NsYXNzOiJ5dG1NdXRlZEF1dG9wbGF5T3ZlcmxheUJyYW5kaW5nSWNvbiJ9LF8uSyhfLk8se0E6Yyx0aGVuOm09Pl8uSyhfLmpGLHtkYXRhOm0sYWx0OiJZb3VUdWJlIExvZ28ifSl9KSkpLFc6KCk9Pl8uSygiZGl2IixudWxsLF8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJ5dG1NdXRlZEF1dG9wbGF5T3ZlcmxheUFjdGlvbk1lbnUiLHt5dG1NdXRlZEF1dG9wbGF5T3ZlcmxheUhpZGVBY3Rpb25NZW51OmR9KX0sXy5LKEtWLHtHOmEuRyxwbGF5ZXJNdXRlZEF1dG9wbGF5T3ZlcmxheVJlbmRlcmVyOmEucGxheWVyTXV0ZWRBdXRvcGxheU92ZXJsYXlSZW5kZXJlcn0pKSxfLksoImRpdiIsCntjbGFzczoieXRtTXV0ZWRBdXRvcGxheU92ZXJsYXlFcXVhbGl6ZXIifSxfLksoXy5NRCx7aWNvbjoiZXF1YWxpemVyIn0pKSl9KSl9LCJaYyIpO0xWLmlkb21Db21wYXQ9ITA7dmFyIE9tYT1fLkwoKHtGeDphLGFuaW1hdGlvbjpifSk9Pnt2YXIgYz1fLnVFKCJkaXYiKSxbZCxlXT1fLkooITEsdm9pZCAwLCJ0aTAybyIpLGY9MCxoPV8ueCgibXdlYl9lbmFibGVfc2hvcnRzX2hlYXJ0X25ld19kb3VibGVfdGFwIik/Imxpa2VfdGFwX2ZlZWRiYWNrX3Nob3J0c19oZWFydCI6Imxpa2VfMjQwZHBfYW5pbWF0aW9uX3YyIjtfLm5FKCgpPT57ZSghMCk7Xy5qZi5BYShmKTtmPV8uWWooKCk9PntlKCExKX0sMkUzKTt2YXIgaz1iPy4oKT8ubmFtZTtpZihrPT09aCl7Y1UoaCk7az1iPy4oKT8ueDt2YXIgbD1iPy4oKT8ueTtsZXQgbT1jLnZhbHVlO20mJihrIT09dm9pZCAwJiZsIT09dm9pZCAwPyhtLnN0eWxlLnBvc2l0aW9uPSJhYnNvbHV0ZSIsbS5zdHlsZS5sZWZ0PWAke2t9cHhgLG0uc3R5bGUudG9wPWAke2x9cHhgLG0uc3R5bGUudHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTUwJSwgLTUwJSkiKToobS5zdHlsZS5wb3NpdGlvbj0iIixtLnN0eWxlLmxlZnQ9IiIsbS5zdHlsZS50b3A9CiIiLG0uc3R5bGUudHJhbnNmb3JtPSIiKSl9ZWxzZXtpZihsPWMudmFsdWUpbC5zdHlsZS5wb3NpdGlvbj0iIixsLnN0eWxlLmxlZnQ9IiIsbC5zdHlsZS50b3A9IiIsbC5zdHlsZS50cmFuc2Zvcm09IiI7az09PSJwbGF5Xzk2ZHBfYW5pbWF0aW9uIj9jVSgicGxheV85NmRwX2FuaW1hdGlvbiIpOms9PT0icGF1c2VfOTZkcF9hbmltYXRpb24iJiZjVSgicGF1c2VfOTZkcF9hbmltYXRpb24iKX19LCJFQ0pVZGQiKTtyZXR1cm4gXy5LKCJzaG9ydHMtdG91Y2gtZmVlZGJhY2siLHtjbGFzczpfLlAoInl0U2hvcnRzVG91Y2hGZWVkYmFja0hvc3QiLHt5dFNob3J0c1RvdWNoRmVlZGJhY2tIaWRkZW46KCk9PiFkKCl9KX0sXy5LKF8uTyx7QTphLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0U2hvcnRzVG91Y2hGZWVkYmFja1RvdWNoRmVlZGJhY2sifSxfLksoImRpdiIse2VsOmMsY2xhc3M6Inl0U2hvcnRzVG91Y2hGZWVkYmFja0xpa2VBbmltYXRpb25XcmFwcGVyIiwiYXJpYS1oaWRkZW4iOiJ0cnVlIn0sCl8uSyhfLmNNLHthbmltYXRpb25OYW1lOigpPT5oLGRhdGE6e2FuaW1hdGlvbkNvbmZpZzpiVShoKX0sY2xhc3NOYW1lOiJ5dFNob3J0c1RvdWNoRmVlZGJhY2tMaWtlQW5pbWF0aW9uIn0pKSl9KSxfLksoImRpdiIse2NsYXNzOiJ5dFNob3J0c1RvdWNoRmVlZGJhY2tUb3VjaEZlZWRiYWNrIn0sXy5LKF8uY00se2FuaW1hdGlvbk5hbWU6KCk9PiJwbGF5Xzk2ZHBfYW5pbWF0aW9uIixkYXRhOnthbmltYXRpb25Db25maWc6YlUoInBsYXlfOTZkcF9hbmltYXRpb24iKX0sY2xhc3NOYW1lOiJ5dFNob3J0c1RvdWNoRmVlZGJhY2tQbGF5UGF1c2VBbmltYXRpb24ifSkpLF8uSygiZGl2Iix7Y2xhc3M6Inl0U2hvcnRzVG91Y2hGZWVkYmFja1RvdWNoRmVlZGJhY2sifSxfLksoXy5jTSx7YW5pbWF0aW9uTmFtZTooKT0+InBhdXNlXzk2ZHBfYW5pbWF0aW9uIixkYXRhOnthbmltYXRpb25Db25maWc6YlUoInBhdXNlXzk2ZHBfYW5pbWF0aW9uIil9LGNsYXNzTmFtZToieXRTaG9ydHNUb3VjaEZlZWRiYWNrUGxheVBhdXNlQW5pbWF0aW9uIn0pKSl9LAoiYWQiKTt2YXIgZFU9dm9pZCAwLGVVPXZvaWQgMCxmVSxnVT1fLkwoKHtkYXRhOmF9KT0+e3ZhciBbYixjXT1fLkooMCx2b2lkIDAsIlZmdjU4IiksW2QsZV09Xy5KKDAsdm9pZCAwLCJnR0NOOWQiKSxbZixoXT1fLkooITEsdm9pZCAwLCJuU2FMaCIpO3JldHVybiBfLksoInl0bS1ib3R0b20tc2hlZXQtb3ZlcmxheS1yZW5kZXJlciIse2NsYXNzOiJZdG1Cb3R0b21TaGVldE92ZXJsYXlSZW5kZXJlckhvc3QifSxfLksoImRpdiIse2NsYXNzOiJZdG1Cb3R0b21TaGVldE92ZXJsYXlSZW5kZXJlckNvbnRhaW5lciIsc3R5bGU6KCk9Pnt2YXIgaz1iKCksbD1kKCksbT1mKCk7az1gdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCR7TWF0aC5tYXgoMCxNYXRoLnJvdW5kKGwtaykpfXB4KTtgO20mJihrKz0idHJhbnNpdGlvbjogMC4yczsiKTtyZXR1cm4ga30sIm9uOnRvdWNoc3RhcnQiOmZ1bmN0aW9uKGspe2RvY3VtZW50LmJvZHkuc3R5bGUub3ZlcnNjcm9sbEJlaGF2aW9yPSJub25lIjtjKGsudG91Y2hlc1swXS5jbGllbnRZKTsKay5zdG9wUHJvcGFnYXRpb24oKX0sIm9uOnRvdWNobW92ZSI6ZnVuY3Rpb24oayl7ZShrLnRvdWNoZXNbMF0uY2xpZW50WSk7ay5zdG9wUHJvcGFnYXRpb24oKX0sIm9uOnRvdWNoZW5kIjpmdW5jdGlvbihrKXtkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJzY3JvbGxCZWhhdmlvcj0iIjt3aW5kb3cuc2NyZWVuLmF2YWlsSGVpZ2h0LWQoKTw9MzAwPyhoKCEwKSxlKHdpbmRvdy5zY3JlZW4uYXZhaWxIZWlnaHQpLHNldFRpbWVvdXQoKCk9PntpZihkVSE9bnVsbCl7dmFyIGw9Xy5IeigpO2wuc2V0KCJzdXBwcmVzc19hcHBfdXBzZWxsIiwxKTtsLnNhdmUoKTtlVSYmKGVVLnF2PSEwLGVVPXZvaWQgMCk7Xy5LTihkVSk7ZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChkVSk7ZFU9dm9pZCAwO2ZVPy4oKTtmVT12b2lkIDA7Xy55KCkucmVzb2x2ZShfLnlQKS5RdSgpfX0sMjUwKSk6KGgoITApLGUoMCkpO2suc3RvcFByb3BhZ2F0aW9uKCl9fSxfLksoImRpdiIse2NsYXNzOiJZdG1Cb3R0b21TaGVldE92ZXJsYXlSZW5kZXJlckhlYWRlciIsCnN0eWxlOigpPT5hKCkuYmFja2dyb3VuZEltYWdlP2BiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJHthKCkuYmFja2dyb3VuZEltYWdlfSk7YDp2b2lkIDB9LF8uSygiZGl2Iix7Y2xhc3M6Ill0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyRHJhZ0hhbmRsZSJ9KSxfLksoXy5NRCx7aWNvbjooKT0+YSgpLmNlbnRyYWxJY29uPy5pY29uVHlwZSxjbGFzc05hbWU6Ill0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyQ2VudHJhbEljb24ifSksXy5LKF8uVyx7ZGF0YTooKT0+YSgpLmNsb3NlQnV0dG9ufSx7YnV0dG9uUmVuZGVyZXI6KHtkYXRhOmt9KT0+Xy5LKF8ucE8se2RhdGE6ayxjbGFzc05hbWU6Ill0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyQ2xvc2UiLHByZXZlbnREZWZhdWx0OiEwLFFmOiEwfSl9KSksXy5LKCJkaXYiLHtjbGFzczoiWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJDb250ZW50cyJ9LF8uSygiZGl2Iix7Y2xhc3M6Ill0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyVGl0bGUifSwKXy5LKF8uSUose2RhdGE6KCk9PmEoKS50aXRsZX0pKSxfLksoImRpdiIse2NsYXNzOiJZdG1Cb3R0b21TaGVldE92ZXJsYXlSZW5kZXJlclN1YnRpdGxlIn0sXy5LKF8uSUose2RhdGE6KCk9PmEoKS5zdWJ0aXRsZX0pKSxfLksoXy5XLHtkYXRhOigpPT5hKCkuYnV0dG9uc30se2J1dHRvblJlbmRlcmVyOl8ucE99KSkpKX0sImJkIik7Z1UuaWRvbUNvbXBhdD0hMDt2YXIgTVY9Xy5MKCh7ZGF0YTphLHN0b3BQcm9wYWdhdGlvbjpifSk9Pl8uSygieXRtLWZvcmNlZC1tdXRlLW1lc3NhZ2UtcmVuZGVyZXIiLG51bGwsXy5LKF8udk8se2ljb25UeXBlOl8ueCgiZW5hYmxlX3dlYl9kZWxoaV9pY29ucyIpPyJhdWRpb19zbGFzaCI6ImF1ZGlvX29mZiIsYXJpYUxhYmVsOigpPT5fLmFOKGEoKS5mb3JjZWRNdXRlTWVzc2FnZVRleHQpLG9uY2xpY2s6Yz0+e2I/LigpJiZjLnN0b3BQcm9wYWdhdGlvbigpO2M9YSgpO18uQihjLmhlbHBCdXR0b24sXy5WTCk/Lm5hdmlnYXRpb25FbmRwb2ludCYmXy5BSihfLkIoYy5oZWxwQnV0dG9uLF8uVkwpPy5uYXZpZ2F0aW9uRW5kcG9pbnQsYywhMCl9LExtOiJ5dG0tZm9yY2VkLW11dGUtbWVzc2FnZSJ9KSksImVkIik7TVYuaWRvbUNvbXBhdD0hMDt2YXIgTlY9Xy5MKCh7ZGF0YTphLGNsYXNzTmFtZTpiLEdKOmN9KT0+e3ZhciBkPV8ueSgpLnJlc29sdmUoXy5JbihfLmtGKSk/LigpO3JldHVybiBfLksoInl0bS1pbmZvLXBhbmVsLWNvbnRlbnQtcmVuZGVyZXIiLHtjbGFzczpfLlAoYiwieXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVySG9zdCIse3l0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlckhvc3RJc1dhdGNoSW5mb1BhbmVsOmMseXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVySG9zdENpbmVtYXRpY0JhY2tncm91bmQ6KCk9PmQmJmM/LigpfSksInl0bS1pbmZvLXBhbmVsLWNvbnRlbnQtdHJ1bmNhdGUtcGFyYWdyYXBocyI6KCk9PiEhYSgpLnRydW5jYXRlUGFyYWdyYXBoc3x8dm9pZCAwLCJ5dG0taW5mby1wYW5lbC1jb250ZW50LWhhcy1tZW51IjooKT0+ISFhKCkubWVudXx8dm9pZCAwLCJkYXRhLWJhY2tncm91bmQiOigpPT5hKCkuYmFja2dyb3VuZH0sXy5LKF8ubkgse2NvbW1hbmQ6KCk9PmEoKS5zb3VyY2VFbmRwb2ludCwKY2xhc3NOYW1lOiJ5dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJFbmRwb2ludCJ9LF8uSyhQbWEse2RhdGE6YX0pKSxfLksoXy5XLHtkYXRhOigpPT5hKCkubWVudX0se21lbnVSZW5kZXJlcjooe2RhdGE6ZX0pPT5fLksoXy5TUCx7ZGF0YTplLGNsYXNzTmFtZToieXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyTWVudSJ9KX0pKX0sImZkIiksUG1hPV8uTCgoe2RhdGE6YX0pPT5fLksoImRpdiIse2NsYXNzOiJ5dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJXcmFwcGVyIiwiZGF0YS1oYXMtaWNvbiI6KCk9PiEhYSgpLmljb259LF8uSyhfLk8se0E6KCk9PmEoKS5zb3VyY2VBdFRvcCYmYSgpLnNvdXJjZSx0aGVuOigpPT5fLksoT1Yse2RhdGE6YX0pfSksXy5LKF8uTyx7QTooKT0+YSgpLnRpdGxlLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlclRpdGxlQ29udGFpbmVyIn0sXy5LKF8uSUose2RhdGE6KCk9PmEoKS50aXRsZX0pLF8uSyhfLk1ELAp7aWNvbjooKT0+YSgpLmlubGluZUxpbmtJY29uPy5pY29uVHlwZSxjbGFzc05hbWU6Inl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlckxpbmtJY29uIn0pKX0pLF8uSygiZGl2Iix7Y2xhc3M6Inl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlckJvZHkifSxfLksoImRpdiIse2NsYXNzOiJ5dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJUZXh0In0sXy5LKF8uTyx7QTooKT0+IWEoKS5zb3VyY2VBdFRvcCYmYSgpLnNvdXJjZSx0aGVuOigpPT5fLksoT1Yse2RhdGE6YX0pfSksXy5LKF8uZ0cse3BhOigpPT5hKCkucGFyYWdyYXBoc3x8W119LChiLGMpPT5fLksoImRpdiIse2NsYXNzOiJ5dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJQYXJhZ3JhcGgifSxfLksoXy5JSix7ZGF0YTpifSksXy5LKF8uTyx7QTooKT0+YygpPT09YSgpLnBhcmFncmFwaHMubGVuZ3RoLTEmJmEoKS5pbmxpbmVTb3VyY2UsdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVySW5saW5lU291cmNlIn0sCl8uSygiZGl2Iix7Y2xhc3M6Inl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlcklubGluZVNvdXJjZVRleHQifSxfLksoXy5JSix7ZGF0YTooKT0+YSgpLmlubGluZVNvdXJjZX0pKSxfLksoXy5NRCx7aWNvbjooKT0+YSgpLmlubGluZUxpbmtJY29uPy5pY29uVHlwZSxjbGFzc05hbWU6Inl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlckxpbmtJY29uIn0pKX0pKSkpLF8uSyhfLk8se0E6KCk9PmEoKS5pY29uLHRoZW46Yj0+Xy5LKCJkaXYiLHtjbGFzczoieXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVySGVhZGVyUmlnaHRJdGVtcyJ9LF8uSyhfLk1ELHtpY29uOigpPT5iKCkuaWNvblR5cGUsY2xhc3NOYW1lOiJ5dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJIZWFkZXJJY29uIn0pLF8uSyhfLklKLHtkYXRhOigpPT5hKCkudGl0bGV9KSl9KSxfLksoXy5PLHtBOigpPT5hKCkudGh1bWJuYWlsLHRoZW46Yj0+Xy5LKF8uVVAse3RodW1ibmFpbERldGFpbHM6YixjbGFzc05hbWU6Inl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlclRodW1ibmFpbCIsCmFsdDoiIixZYTpfLngoImMzX3ByZXNlcnZlX2RpbWVuc2lvbnNfa3MiKT92b2lkIDA6ITAsVGE6Xy54KCJjM19wcmVzZXJ2ZV9kaW1lbnNpb25zX2tzIik/dm9pZCAwOiEwfSl9KSkpLCJnZCIpLE9WPV8uTCgoe2RhdGE6YX0pPT5fLksoImRpdiIse2NsYXNzOiJ5dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJNZXRhZGF0YSJ9LF8uSyhfLk8se0E6KCk9PmEoKS5zb3VyY2UsdGhlbjpiPT5fLksoXy5JSix7ZGF0YTpifSl9KSxfLksoXy5PLHtBOigpPT5hKCkucHVibGlzaGVkVGltZVRleHQsdGhlbjpiPT5fLksoImRpdiIse2NsYXNzOiJ5dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJQdWJsaXNoVGltZSJ9LCJcdTIwMjIgIixfLksoXy5JSix7ZGF0YTpifSkpfSkpLCJoZCIpO05WLmlkb21Db21wYXQ9ITA7dmFyIFBWPV8uTCgoe2RhdGE6YX0pPT5fLksoInl0bS1pbmZvLXBhbmVsLWNvbnRhaW5lci1yZW5kZXJlciIse2JhY2tncm91bmQ6KCk9PmEoKS5iYWNrZ3JvdW5kfSxfLksoXy5PLHtBOigpPT5hKCkudGl0bGUsdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRtLWluZm8tcGFuZWwtY29udGFpbmVyLWhlYWRlciJ9LF8uSygiZGl2Iix7Y2xhc3M6Inl0bS1pbmZvLXBhbmVsLWNvbnRhaW5lci1oZWFkZXItbGVmdC1pdGVtcyJ9LF8uSyhfLk1ELHtpY29uOigpPT5hKCkuaWNvbj8uaWNvblR5cGUsY2xhc3NOYW1lOiJ5dG0taW5mby1wYW5lbC1jb250YWluZXItaGVhZGVyLWljb24ifSksXy5LKF8uSUose2RhdGE6KCk9PmEoKS50aXRsZX0pKSxfLksoXy5XLHtkYXRhOigpPT5hKCkubWVudX0se21lbnVSZW5kZXJlcjooe2RhdGE6Yn0pPT5fLksoXy5TUCx7ZGF0YTpiLGNsYXNzTmFtZToieXRtLWluZm8tcGFuZWwtY29udGFpbmVyLWhlYWRlci1tZW51In0pfSkpfSksXy5LKF8uVyx7ZGF0YTooKT0+CmEoKS5jb250ZW50fSx7aW5mb1BhbmVsQ29udGVudFJlbmRlcmVyOk5WfSkpLCJpZCIpO1BWLmlkb21Db21wYXQ9ITA7dmFyIFJWPV8uTCgoe2RhdGE6YSxpc0FjdGl2ZTpiLEhKOmMsY2xhc3NOYW1lOmR9KT0+e3ZhciBlPV8uY0koXy5aUCksZj1fLmNJKHdqYSksaD1fLmNJKHZqYSksaztfLm5FKCgpPT57Yj8uKCkmJmEoKT8udHJhY2tpbmdQYXJhbXMmJmEoKS50cmFja2luZ1BhcmFtcyE9PWsmJl8uaXEoKSE9PWsmJihfLmx4KF8uaHgoKSxhKCkudHJhY2tpbmdQYXJhbXMpLGs9Xy5pcSgpKX0sIkxSZVNsYiIpO18uVUooKCk9PntubGEoYSgpKX0pO3JldHVybiBfLksoInl0bS1yZWVsLXBsYXllci1vdmVybGF5LXJlbmRlcmVyIix7Y2xhc3M6ZCwiZGF0YS1pcy1hY3RpdmUiOmJ8fHZvaWQgMCwiZGF0YS1oYXMtaW5mby1wYW5lbCI6KCk9Pnt2YXIgbD1hKCksbT1fLkIobC5wbGF5ZXJPdmVybGF5LGNtYSk7cmV0dXJuISFsLmluZm9QYW5lbHx8ISFtPy5pbmZvUGFuZWx8fHZvaWQgMH0sImV4dHJhY3Qtb3ZlcmxheSI6KCk9PmUoKT09PTF8fHZvaWQgMCwiZXh0cmFjdC1hY3Rpb24tYmFyIjooKT0+Xy5hTShlKCkpfHwKdm9pZCAwLCJzbWFsbGVyLXNjcmVlbi1zcXVlZXplYmFjayI6KCk9PmYoKXx8dm9pZCAwLCJpcy1mdWxsc2NyZWVuIjooKT0+aCgpfHx2b2lkIDAsImlzLXdlYiI6KCk9PmM/LigpfHx2b2lkIDB9LF8uSyhfLk8se0E6KCk9PmEoKS5wbGF5ZXJPdmVybGF5LHRoZW46bD0+Xy5LKF8uSUIsbnVsbCxfLksoXy5PLHtBOigpPT4hMCx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJyZWVsLXBsYXllci1vdmVybGF5LXRvcC1iYXIifSxfLksoUVYse2RhdGE6YX0pKX0pLF8uSyhfLlcse2RhdGE6bH0se3JlZWxQbGF5ZXJPdmVybGF5Vmlld01vZGVsOl8uYmphfSkpLFc6KCk9Pl8uSyhfLklCLG51bGwsXy5LKCJkaXYiLHtjbGFzczoicmVlbC1wbGF5ZXItb3ZlcmxheS1tYWluLWNvbnRlbnQifSxfLksoImRpdiIse2NsYXNzOiJyZWVsLXBsYXllci1vdmVybGF5LW1ldGFkYXRhIn0sXy5LKFFtYSx7ZGF0YTphfSkpLG51bGwsXy5LKFJtYSx7ZGF0YTphfSkpLF8uSyhTbWEse2RhdGE6YX0pKX0pLApfLksoVG1hLHtkYXRhOmF9KSl9LCJrZCIpO1JWLmlkb21Db21wYXQ9ITA7CnZhciBRbWE9Xy5MKCh7ZGF0YTphfSk9Pl8uSyhfLlcse2RhdGE6KCk9PmEoKS5tZXRhcGFuZWx9LHtyZWVsTWV0YXBhbmVsVmlld01vZGVsOl8uclF9KSwibGQiKSxTbWE9Xy5MKCh7ZGF0YTphfSk9Pl8uSygiZGl2Iix7Y2xhc3M6InJlZWwtcGxheWVyLW92ZXJsYXktaW5mby1wYW5lbCJ9LF8uSyhfLlcse2RhdGE6KCk9PmEoKS5pbmZvUGFuZWx9LHtpbmZvUGFuZWxDb250YWluZXJSZW5kZXJlcjpQVn0pKSwibWQiKSxSbWE9Xy5MKCh7ZGF0YTphfSk9Pl8uSygiZGl2Iix7Y2xhc3M6InJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9ucyJ9LF8uSyhRVix7ZGF0YTphfSksXy5LKFVtYSx7ZGF0YTphfSksXy5LKF8uVyx7ZGF0YTooKT0+YSgpLnBpdm90QnV0dG9ufSx7cGl2b3RCdXR0b25WaWV3TW9kZWw6Xy5pUX0pLF8uSyhfLlcse2RhdGE6KCk9PmEoKS5mb3JjZWRNdXRlTWVzc2FnZVJlbmRlcmVyfSx7Zm9yY2VkTXV0ZU1lc3NhZ2VSZW5kZXJlcjooe2RhdGE6Yn0pPT5fLksoTVYse2RhdGE6YiwKc3RvcFByb3BhZ2F0aW9uOiEwfSl9KSksIm5kIiksUVY9Xy5MKCh7ZGF0YTphfSk9Pl8uSyhfLk8se0E6KCk9PiFfLlRFKCksdGhlbjooKT0+Xy5LKF8uVyx7ZGF0YTooKT0+YSgpLm1lbnV9LHttZW51UmVuZGVyZXI6KHtkYXRhOmJ9KT0+Xy5LKF8uVFAse2RhdGE6YixzaG93SWNvbjohMCxidXR0b25PdmVycmlkZXM6aFUoKX0pfSksVzooKT0+Xy5LKF8uTyx7QTooKT0+Xy5URSgpLHRoZW46KCk9Pl8uSyhfLlcse2RhdGE6KCk9PmEoKS5tZW51fSx7bWVudVJlbmRlcmVyOih7ZGF0YTpifSk9Pl8uSyhfLlNQLHtkYXRhOmIsZGY6InJlZWwtcGxheWVyLW92ZXJsYXktb3ZlcmZsb3ctbWVudSIsSGE6ITEsdW46ITEsc3RvcFByb3BhZ2F0aW9uOiEwLGJ1dHRvbk92ZXJyaWRlczpoVSgpfSl9KX0pfSksInFkIiksVW1hPV8uTCgoe2RhdGE6YX0pPT5fLksoXy5XLHtkYXRhOigpPT5hKCkuYnV0dG9uQmFyfSx7cmVlbEFjdGlvbkJhclZpZXdNb2RlbDooe2RhdGE6Yn0pPT5fLksoXy5qUSx7ZGF0YTpiLApBZjp7aWNvblBvc2l0aW9uOiJpY29uLXdpdGgtbGFiZWwiLHNpemU6IlMiLHR5cGU6InRleHQiLHN0eWxlOiJvdmVybGF5In19KX0pLCJyZCIpLFRtYT1fLkwoKHtkYXRhOmF9KT0+Xy5LKCJkaXYiLHtjbGFzczoic3RpY2tlci1sYXllciJ9LF8uSyhfLk8se0E6KCk9PiEhYSgpLnZpZGVvSW50ZXJhY3Rpb25zJiZfLngoIm13ZWJfZW5hYmxlX3Nob3J0c19zdGlja2VycyIpLHRoZW46KCk9Pl8uSyhfLklCLG51bGwsXy5LKF8uZ0cse3BhOigpPT5hKCkudmlkZW9JbnRlcmFjdGlvbnM/LmludGVyYWN0aW9uc3x8W119LGI9Pl8uSyhfLmNqYSx7ZGF0YTpifSkpLF8uSyhfLlcse2RhdGE6KCk9PmEoKT8udmlkZW9JbnRlcmFjdGlvbnM/LmVsZW1lbnRzSW50ZXJhY3Rpb25zTGF5ZXJ9LHtzdGlja2Vyc0xheWVyUmVuZGVyZXI6Xy5kamF9KSl9KSksInNkIik7dmFyIFNWPV8uTCgoe2RhdGE6YSxZZjpiLGNqOmMsdkI6ZCxJcjplLGVoOmZ9KT0+e2Z1bmN0aW9uIGgocCl7bi5sb3R0aWVFbCYmbi5sb3R0aWVFbC5pc1BhdXNlZCYmbi5sb3R0aWVFbC5nb1RvQW5kUGxheSgwKTtwLnN0b3BQcm9wYWdhdGlvbigpfV8uVUooKCk9Pnt2YXIgcD1vbGEuYmluZCh2b2lkIDAsYSgpKTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigic3RhdGUtbmF2aWdhdGVlbmQiLHApO18uWXUoKCk9Pnt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigic3RhdGUtbmF2aWdhdGVlbmQiLHApfSl9KTt2YXIgaz0oKT0+e3ZhciBwPWEoKTtyZXR1cm4gZD8uKCk/cC5kYXJrVGhlbWVMb2dvPy5sb3R0aWVBbmltYXRpb24/LnVybDpwLmxpZ2h0VGhlbWVMb2dvPy5sb3R0aWVBbmltYXRpb24/LnVybH0sbD0oKT0+YSgpLmFjY2Vzc2liaWxpdHlEYXRhPy5hY2Nlc3NpYmlsaXR5RGF0YT8ubGFiZWx8fF8uYU4oYSgpLnRvb2x0aXBUZXh0KXx8IiIsbT0oKT0+ZD8uKCk/ImxvZ28tZW50aXR5LWxvdHRpZS1hbmltYXRpb24tZGFyayI6CiJsb2dvLWVudGl0eS1sb3R0aWUtYW5pbWF0aW9uLWxpZ2h0IixuPXt9O3JldHVybiBfLksoInl0bS1sb2dvLWVudGl0eSIse2NsYXNzOiJ5dG1Mb2dvRW50aXR5SG9zdCJ9LGU/LigpLF8uSyhfLk8se0E6KCk9PiFlJiZiPy4oKSE9PXZvaWQgMCYmYz8uKCkhPT12b2lkIDAmJmQ/LigpIT09dm9pZCAwLHRoZW46KCk9Pl8uSyhfLk8se0E6ayx0aGVuOigpPT5fLksoImRpdiIse2lkOmMsY2xhc3M6Inl0bUxvZ29FbnRpdHlDb250YWluZXIiLCJvbjpjbGljayI6aH0sXy5LKF8uY00se2NsYXNzTmFtZTpfLlAoYiwieXRtTG9nb0VudGl0eUxvZ28iKSxkYXRhOigpPT4oe2FuaW1hdGlvbkNvbmZpZzp7cGF0aDprKCksYXV0b3BsYXk6ITAsbG9vcDohMSxyZW5kZXJlclNldHRpbmdzOnt2aWV3Qm94T25seTohMH19LGxpc3RlbmVyczp7ZGF0YV9mYWlsZWQ6ZixlcnJvcjpmfX0pLGFuaW1hdGlvblJlZjpuLGFuaW1hdGlvbk5hbWU6bX0pKSxXOigpPT5fLksoVm1hLHtjbGFzc05hbWU6Inl0bUxvZ29FbnRpdHlDb250YWluZXIiLApZZjpiLGlkOigpPT5jPy4oKT8/IiIsREE6cD0+e3ZhciByPWEoKSx0PSEhZD8uKCk7cmV0dXJuIHQmJnIuZGFya1RoZW1lTG9nbz8udGh1bWJuYWlsP18uSlAoci5kYXJrVGhlbWVMb2dvLnRodW1ibmFpbCxwfHx2b2lkIDApOiF0JiZyLmxpZ2h0VGhlbWVMb2dvPy50aHVtYm5haWw/Xy5KUChyLmxpZ2h0VGhlbWVMb2dvLnRodW1ibmFpbCxwfHx2b2lkIDApOiIifSxhbHRUZXh0OmwsZWg6Zn0pfSl9KSl9LCJ0ZCIpO1NWLmlkb21Db21wYXQ9e2NhbGxiYWNrczp7SXI6ITAsZWg6ITB9fTsKdmFyIFZtYT1fLkwoKHtjbGFzc05hbWU6YSxZZjpiLGlkOmMsREE6ZCxhbHRUZXh0OmUsZWg6Zn0pPT57dmFyIGg9Xy51RSgiZGl2Iiksaz1fLnVFKCJpbWciKTtfLlVKKCgpPT57ay52YWx1ZS5zcmM9ZChoLnZhbHVlKX0pO3JldHVybiBfLksoImRpdiIse2NsYXNzOmEsZWw6aH0sXy5LKCJpbWciLHtlbDprLCJvbjplcnJvciI6ZnVuY3Rpb24obCl7Zj8uKCk7bC5zdG9wUHJvcGFnYXRpb24oKX0saWQ6YyxjbGFzczpfLlAoYiwieXRtTG9nb0VudGl0eUxvZ28iKSxhbHQ6ZX0pKX0sInVkIik7dmFyIFVWPV8uTCgoe3RvcGJhckxvZ29SZW5kZXJlcjphLFZqOmIsV2o6YyxYajpkLHVtOmUsaWNvbk92ZXJyaWRlOmYsaHo6aCxhazprfSk9PntmdW5jdGlvbiBsKCl7dCghMCl9dmFyIG09Xy5ESShsamEsKCk9PmE/LigpPy5vdmVycmlkZUVudGl0eUtleXx8Xy5WTSgpPyJFZ1owYjNCaVlYSWc5UUVvQVElM0QlM0QiOiIiKSxuPSgpPT5hPy4oKT8uaWNvbkltYWdlPy5pY29uVHlwZSxbcCxyXT1fLkooITEsdm9pZCAwLCJaYVBQbGIiKSx0PXIsdj1fLnkoKS5yZXNvbHZlKF8uSW4oXy5rRikpLHo9KF8uVk0oKXx8dj8uKCkpPz8hMSxFPW51bGwsQT1fLnVFKCJidXR0b24iKTtfLlVKKGZ1bmN0aW9uKCl7KG0/LigpPz92b2lkIDApfHxTUygxMjA4MSxBLnZhbHVlLEUsRj0+e0U9Rn0sbnVsbCl9KTtyZXR1cm4gXy5LKCJ5dG0taG9tZS1sb2dvIixudWxsLF8uSygiYnV0dG9uIix7ZWw6QSwiYXJpYS1sYWJlbCI6KCk9Pl8uQ0ooYT8uKCk/LnRvb2x0aXBUZXh0KT9fLkNKKGE/LigpPy50b29sdGlwVGV4dCk6CiJZb3VUdWJlIixyb2xlOiJsaW5rIixjbGFzczpfLlAoeyJsb2dvLWluLXBsYXllci1lbmRwb2ludCI6YywibW9iaWxlLXRvcGJhci1oZWFkZXItZW5kcG9pbnQiOigpPT4hYygpfSksa2V5OigpPT5tPy4oKT8/dm9pZCAwPyJ5b29kbGUiOiJsb2dvIiwib246Y2xpY2siOmZ1bmN0aW9uKEYpe3ZhciBDPWE/LigpPy5lbmRwb2ludD8/clYsRz1tPy4oKT8/dm9pZCAwLEQ9Ii8iO0c/KEM9Ry5vblRhcENvbW1hbmR8fEMsRD1fLkIoRy5vblRhcENvbW1hbmQ/LmNvbW1hbmRNZXRhZGF0YSxfLnp3KT8udXJsfHxEKTpEPV8uQihDPy5jb21tYW5kTWV0YWRhdGEsXy56dyk/LnVybHx8RDt2YXIgSD1rPy4oKT8/Mzg1NCxSPUYuY3VycmVudFRhcmdldDtHJiYoUi5kYXRhPUcpO2g/LihGKTtfLnFQKHtocmVmOkQsYWs6SCxlbGVtZW50OlIscHVzaFN0YXRlOiEwLGVuZHBvaW50OkN9KTtGLnN0b3BQcm9wYWdhdGlvbigpfX0sXy5LKF8uTyx7QTooKT0+IXAoKSYmKG0/LigpPz92b2lkIDApJiZpVShiKCkpJiYKalUoeixtPy4oKT8/dm9pZCAwKSx0aGVuOigpPT5fLksoU1Yse2RhdGE6KCk9Pm0/LigpPz92b2lkIDAsSXI6KCk9Pl8uSyhUVix7Vmo6YixXajpjLFhqOmQsWWY6Im1vYmlsZS10b3BiYXItbG9nbyIsY2o6ImhvbWUtaWNvbiIsdW06ZSxpY29uT3ZlcnJpZGU6ZixyczpufSksZWg6bH0pfSksXy5LKF8uTyx7QTooKT0+IXAoKSYmKG0/LigpPz92b2lkIDApJiZpVShiKCkpJiYhalUoeixtPy4oKT8/dm9pZCAwKSx0aGVuOigpPT5fLksoU1Yse2RhdGE6KCk9Pm0/LigpPz92b2lkIDAsWWY6Im1vYmlsZS10b3BiYXItbG9nbyIsY2o6ImhvbWUtaWNvbiIsdkI6eixlaDpsfSl9KSxfLksoXy5PLHtBOigpPT4hKCFwKCkmJihtPy4oKT8/dm9pZCAwKSYmaVUoYigpKSksdGhlbjooKT0+Xy5LKFRWLHtWajpiLFdqOmMsWGo6ZCxZZjoibW9iaWxlLXRvcGJhci1sb2dvIixjajoiaG9tZS1pY29uIix1bTplLGljb25PdmVycmlkZTpmLHJzOm59KX0pKSl9LCJ2ZCIpO1VWLmlkb21Db21wYXQ9e2NhbGxiYWNrczp7aHo6ITB9fTsKdmFyIFRWPV8uTCgoe1ZqOmEsV2o6YixYajpjLFlmOmQsY2o6ZSx1bTpmLGljb25PdmVycmlkZTpoLHJzOmt9KT0+e3ZhciBsPSgpPT5hKCk/aD8uKCl8fCJMT0dPX1dJVEhfVEVYVCI6Yz8uKCk/az8uKCk6IkxPR08iO3JldHVybiBfLksoXy5NRCx7aWNvbjooKT0+e3ZhciBtPWwoKTtmPy4oKSYmYT8uKCkmJihtKz0iX01PTk9DSFJPTUUiKTtyZXR1cm4gbX0sY2xhc3NOYW1lOl8uUCgoKT0+YigpPyJsb2dvLWluLXBsYXllciI6ZCgpLHsiZnVsbC1sb2dvIjphLCJmdWxsLWxvZ28tcmVkIjooKT0+YSgpJiZsKCk9PT0iWU9VVFVCRV9QUkVNSVVNX0xPR09fU0hPUlQiLCJzaG9ydHMtbG9nbyI6Yyxtb25vY2hyb21hdGljOmZ9KSxpZDplfSl9LCJ3ZCIpO3ZhciBXbWE9Xy5MKGE9Pl8uSyhfLklCLG51bGwsXy5LKE9tYSx7Rng6ITEsYW5pbWF0aW9uOmEuYW5pbWF0aW9ufSksXy5LKCJkaXYiLHtjbGFzczoieXRTaG9ydHNFbWJlZHNUb3BiYXJDb250YWluZXIifSxfLksoVVYse3RvcGJhckxvZ29SZW5kZXJlcjphLnh5LFZqOiExLFdqOiEwLFhqOiEwLGFrOjEzNDg0MH0pLF8uSyhfLk8se0E6YS5yZWVsSXRlbVdhdGNoUmVzcG9uc2UsdGhlbjooKT0+Xy5LKEhWLHtvcmllbnRhdGlvbjoidmVydGljYWxfZG93biIsSDphLkgsQ3A6ITAsY2xhc3NOYW1lOiJ5dFNob3J0c0VtYmVkc1ZvbHVtZUNvbnRyb2xzIixiajohMH0pfSkpLF8uSyhfLk8se0E6YS5vdmVybGF5LHRoZW46Yj0+Xy5LKFJWLHtkYXRhOigpPT57dmFyIGM9YigpO2lmKF8udFAoKSl7dmFyIGQ9Yy5tZW51Py5tZW51UmVuZGVyZXI7Yz1kPy5pdGVtcz97Li4uYyxtZW51OnsuLi5jLm1lbnUsbWVudVJlbmRlcmVyOnsuLi5kLGl0ZW1zOlt7YWNjb3VudEluZm9NZW51SXRlbTohMH0sCi4uLmQuaXRlbXNdfX19OmN9cmV0dXJuIGN9LGNsYXNzTmFtZToieXRTaG9ydHNFbWJlZHNSZWVsUGxheWVyT3ZlcmxheVJlbmRlcmVyIn0pfSksXy5LKE1tYSx7SDphLkgsY29udGV4dDphLmNvbnRleHR9KSksInhkIiksV2xhPV8uTChhPT57dmFyIHtIOmIscmVlbEl0ZW1XYXRjaFJlc3BvbnNlOmMsamI6ZCxQaDplLGNvbnRleHQ6Zn09Xy5EQyhhLHtIOnZvaWQgMCxyZWVsSXRlbVdhdGNoUmVzcG9uc2U6dm9pZCAwLGpiOnZvaWQgMCxQaDp2b2lkIDB9KSxbaCxrXT1fLkoodm9pZCAwLHZvaWQgMCwiQ1BTekllIiksW2wsbV09Xy5KKHZvaWQgMCx2b2lkIDAsIklJNEhDZCIpO18ub0YoKCk9Pnt2YXIgQT1iPy4oKTtBPy5pc1JlYWR5KCkmJm0oQS5nZXRQbGF5ZXJTdGF0ZSgpKX0pO3ZhciBuPUE9PntiPy4oKSYmbShBKX07Xy5uRSgoKT0+e3ZhciBBPWI/LigpO0EmJihBLmFkZEV2ZW50TGlzdGVuZXIoIm9uU3RhdGVDaGFuZ2UiLG4pLF8uWXUoKCk9PntBLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm9uU3RhdGVDaGFuZ2UiLApuKX0pKX0sIkM3RDU5ZCIpO18ubkUoKCk9Pnt2YXIgQT1jKCk7aWYoQSl7bGV0IEY9Xy55KCkucmVzb2x2ZShfLmJMKTtmb3IobGV0IEMgb2YgQS5lbmdhZ2VtZW50UGFuZWxzfHxbXSkoQT1DLmVuZ2FnZW1lbnRQYW5lbFNlY3Rpb25MaXN0UmVuZGVyZXIpJiZGLk96KEEuaWRlbnRpZmllcj8udGFnfHxBLnRhcmdldElkfHxBLnBhbmVsSWRlbnRpZmllcixDKX19LCJRZFNlVGIiKTtfLm5FKCgpPT57ZnVuY3Rpb24gQSgpe2lmKEMpe2xldCBHPUMuZ2V0T3B0aW9ucz8uKCJjYXB0aW9ucyIpO0cmJkcubGVuZ3RoPjAmJkM/LnVwZGF0ZVN1YnRpdGxlc1VzZXJTZXR0aW5ncz8uKHtmb250U2l6ZUluY3JlbWVudDoyfSwhMSl9fXZhciBGPWI/LigpO2lmKEYpe3ZhciBDPUY7QSgpO0MuYWRkRXZlbnRMaXN0ZW5lcigib25DYXB0aW9uc01vZHVsZUF2YWlsYWJsZSIsQSk7Xy5ZdSgoKT0+e0MucmVtb3ZlRXZlbnRMaXN0ZW5lcigib25DYXB0aW9uc01vZHVsZUF2YWlsYWJsZSIsQSl9KX19LCJsOFcxdmIiKTsKdmFyIHA9Xy5OKCgpPT5jKCk/Lm92ZXJsYXk/LnJlZWxQbGF5ZXJPdmVybGF5UmVuZGVyZXJ8fGQoKT8uZW1iZWRQcmV2aWV3Py5yZWVsUGxheWVyT3ZlcmxheVJlbmRlcmVyLHZvaWQgMCwiemVoWVliIikscj1fLk4oKCk9Pnt2YXIgQTsoQT1fLkIoYygpPy50b3BiYXIsJGxhKT8udG9wYmFyTG9nbz8udG9wYmFyTG9nb1JlbmRlcmVyKXx8KEE9ZSgpPy5lbmRwb2ludCxBPShBPShBJiZfLkIoQSxfLlREKSk/LnZpZGVvSWQpP2BodHRwczovL3d3dy55b3V0dWJlLmNvbS9zaG9ydHMvJHtBfWA6Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3Nob3J0cyIsQT17aWNvbkltYWdlOntpY29uVHlwZToiWU9VVFVCRV9TSE9SVFNfT1VUTElORV9XSVRIX1RFWFRfMjQifSx0b29sdGlwVGV4dDp7cnVuczpbe3RleHQ6IllvdVR1YmUgU2hvcnRzIn1dfSxlbmRwb2ludDp7Y29tbWFuZE1ldGFkYXRhOnt3ZWJDb21tYW5kTWV0YWRhdGE6e3VybDpBLHdlYlBhZ2VUeXBlOiJXRUJfUEFHRV9UWVBFX1NIT1JUUyIsCnJvb3RWZTozODMyfX0sdXJsRW5kcG9pbnQ6e3VybDpBLHRhcmdldDoiVEFSR0VUX05FV19XSU5ET1cifX19KTtyZXR1cm4gQX0sdm9pZCAwLCJOTjI3MmMiKTthPV8uTigoKT0+e2lmKGwoKT09PTUpe3ZhciBBPWUoKT8uZW5kcG9pbnQ7aWYoQSYmKEE9Xy5CKEEsXy5URCk/LnRodW1ibmFpbD8udGh1bWJuYWlscz8uWzBdPy51cmwpKXJldHVybiBfLklFKHsiYmFja2dyb3VuZC1zaXplIjoiY292ZXIiLCJiYWNrZ3JvdW5kLXBvc2l0aW9uIjoiY2VudGVyIiwiYmFja2dyb3VuZC1yZXBlYXQiOiJuby1yZXBlYXQiLCJiYWNrZ3JvdW5kLWltYWdlIjpgJHsibGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiYSgwLCAwLCAwLCAwLjQpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDE2MHB4KSxcbiAgICAgIGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC40KSAwJSwgcmdiYSgwLCAwLCAwLCAwKSA5NnB4KSJ9LCB1cmwoJHtBfSlgfSkoKX19LHZvaWQgMCwiaTE2RkRlIik7CnZhciB0PV8uTigoKT0+YigpPz92b2lkIDAsdm9pZCAwLCJVZll0RmYiKSx2PV8uTigoKT0+dCgpPy5pc011dGVkQnlFbWJlZHNNdXRlZEF1dG9wbGF5Py4oKSx2b2lkIDAsImxLY0FtZCIpLHo9Xy5OKCgpPT4oe3RhOmYoKS50YSxUYzpmKCkuVGMsR2M6ZigpLkdjLGJhOmYoKS5iYSxIOnQoKSxwbGF5ZXJTdGF0ZTpsKCk/Py0xLFM6KCk9Pnt9fSksdm9pZCAwLCJlNmxTaWUiKSxFPV8uTigoKT0+e3ZhciBBPXQoKT8uZ2V0UGxheWVyUmVzcG9uc2U/LigpO3JldHVybiBBP18uQihBPy5vdmVybGF5Py5wbGF5ZXJDb250cm9sc092ZXJsYXlSZW5kZXJlcj8ubXV0ZWRBdXRvcGxheSxvVik6dm9pZCAwfSx2b2lkIDAsIkRHVFNuZCIpO3JldHVybiBfLksoXy5uRyx7RWY6W18ub0coJFQsdCldfSxfLksoInNob3J0cy1lbWJlZHMiLHtjbGFzczoieXRTaG9ydHNFbWJlZHNIb3N0Iiwib246Y2xpY2siOmZ1bmN0aW9uKEEpe0Euc3RvcFByb3BhZ2F0aW9uKCk7aWYoIUVRKEEudGFyZ2V0LCJBIikmJgohRVEoQS50YXJnZXQsIkJVVFRPTiIpJiYoQT1iKCkpJiZBLmlzUmVhZHkoKSlpZihBLmlzTXV0ZWRCeUVtYmVkc011dGVkQXV0b3BsYXkoKSl7dmFyIEY9QS5nZXRWaWRlb0RhdGEoKT8udmlkZW9faWQsQz1BLmdldEN1cnJlbnRUaW1lKCk7RiYmKEEudW5NdXRlKCksQS5sb2FkVmlkZW9CeUlkKEYsQykpfWVsc2UgRj1BLmdldFBsYXllclN0YXRlKCk9PT0xLEM9QS5pc011dGVkQnlNdXRlZEF1dG9wbGF5KCksRiYmQz9BLnVuTXV0ZSgpOihGPUEuZ2V0UGxheWVyU3RhdGUoKT09PTEsQz1BLmlzTXV0ZWRCeU11dGVkQXV0b3BsYXkoKSxGJiYhQz8oQS5wYXVzZVZpZGVvKCksayh7bmFtZToicGF1c2VfOTZkcF9hbmltYXRpb24ifSkpOkZ8fChDJiZBLnVuTXV0ZSgpLEEucGxheVZpZGVvKCksayh7bmFtZToicGxheV85NmRwX2FuaW1hdGlvbiJ9KSkpfSxzdHlsZTphfSxfLksoXy5PLHtBOigpPT52KCksdGhlbjooKT0+Xy5LKExWLHtHOnoscGxheWVyTXV0ZWRBdXRvcGxheU92ZXJsYXlSZW5kZXJlcjpFfSksClc6KCk9Pl8uSyhXbWEse2FuaW1hdGlvbjpoLHh5OnIscmVlbEl0ZW1XYXRjaFJlc3BvbnNlOmMsSDp0LG92ZXJsYXk6cCxjb250ZXh0OmZ9KX0pKSl9LCJDZCIpO3ZhciBiVj1fLkwoKHtkYXRhOmF9KT0+e0pqYSgpO3JldHVybiBfLksoInl0LXBsYXllci1pbnRlcnN0aXRpYWwtcmVuZGVyZXIiLHtjbGFzczoicGxheWVySW50ZXJzdGl0aWFsUmVuZGVyZXJIb3N0Iixyb2xlOiJkaWFsb2ciLCJhcmlhLWxhYmVsIjooKT0+e3ZhciBiO2E6e2lmKGI9YSgpLmNvbnRlbnQpe3ZhciBjPV8uQihiLGJtYSk7aWYoYz8udGl0bGU/LmNvbnRlbnQpe2I9Yy50aXRsZS5jb250ZW50O2JyZWFrIGF9Yj1fLkIoYixlbWEpO2I9Yj8uaGVhZGVyJiZfLkIoYi5oZWFkZXIsZG1hKTtpZihiPy5oZWFkbGluZT8uY29udGVudCl7Yj1iLmhlYWRsaW5lLmNvbnRlbnQ7YnJlYWsgYX19Yj12b2lkIDB9cmV0dXJuIGJ9LHRhYmluZGV4Oi0xLGVsOl8uckYoYj0+dm9pZCBiPy5mb2N1cygpKX0sXy5LKCJkaXYiLHtjbGFzczoicGxheWVySW50ZXJzdGl0aWFsUmVuZGVyZXJTY3JpbSJ9LF8uSyhfLlcse2RhdGE6KCk9PmEoKS5jb250ZW50fSx7aW50ZXJzdGl0aWFsVmlld01vZGVsOl8uZWphLApkaWFsb2dWaWV3TW9kZWw6Xy4kaWF9KSkpfSwiRGQiKTtiVi5pZG9tQ29tcGF0PSEwO3ZhciBWVj1fLkwoKHtnZjphLEliOmJ9KT0+Xy5LKCJ5dC1iaWdib2FyZCIsbnVsbCxfLksoXy5PLHtBOigpPT5hKCkuaXNEcmFnZ2luZyx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dEJpZ2JvYXJkU3Rvcnlib2FyZEhvc3QifSxfLksoR21hLHtMYjphLEliOmJ9KSl9KSksIkVkIik7VlYuaWRvbUNvbXBhdD0hMDt2YXIgV1Y9Xy5MKGE9Pnt2YXIgYj1hLkc7YT1fLk4oKCk9PmIoKS5lYT9fLiROLm10Ol8uJE4uWnQsdm9pZCAwLCJ4aWR6dWQiKTtyZXR1cm4gXy5LKCJidXR0b24iLHsib246Y2xpY2siOmZ1bmN0aW9uKGMpe3ZhciBkPXtlYTohYigpLmVhLHlxOiEwfTtiKCkuUyhkKTtjLnN0b3BQcm9wYWdhdGlvbigpfSxpZDoicGxheWVyLWNvbnRyb2xzLWExMXktdG9nZ2xlIixjbGFzczoieXRtQTExeVN0eWxlc0hpZGRlbkJ1dHRvbiIsImFyaWEtbGFiZWwiOmF9KX0sIkZkIik7dmFyIFhWPV8uTChhPT57ZnVuY3Rpb24gYihoKXtYUyhhLkZkKCk9PT0tMT8xNDE5MDI6MTQxOTAzKTt2YXIgaz1jPy4oKSxsPWEuRmQoKTtrPy5zZWVrQnkobCoxMCx2b2lkIDAsdm9pZCAwLGw9PT0tMT84Mzo4Mik7aC5zdG9wUHJvcGFnYXRpb24oKX12YXIgYz1fLmtHKCRUKSxkPSgpPT5hLkZkKCk9PT0tMT9fLiROLlF0LnJlcGxhY2UoIiRzZWNvbmRzX3BsYWNlaG9sZGVyIiwoMTApLnRvU3RyaW5nKCkpOl8uJE4uSXQucmVwbGFjZSgiJHNlY29uZHNfcGxhY2Vob2xkZXIiLCgxMCkudG9TdHJpbmcoKSksZT1fLk4oKCk9Pnt2YXIgaD1hLkcoKTtyZXR1cm4gXy54KCJtd2ViX3BjX2xpdmVfZHZyX2tzIik/ITA6IShoLmlzTGl2ZSYmIWguaXNMaXZlRHZyRW5hYmxlZCl9LHZvaWQgMCwiS2FySUtjIiksZj1fLnVFKCJidXR0b24iLGg9PntXUyhoLGEuRmQoKT09PS0xPzE0MTkwMjoxNDE5MDMpfSk7cmV0dXJuIF8uSyhfLk8se0E6ZSx0aGVuOigpPT5fLksoImJ1dHRvbiIseyJhcmlhLWxhYmVsIjpkLApjbGFzczpfLlAoYS5jbGFzc05hbWUsInl0bUExMXlTdHlsZXNIaWRkZW5CdXR0b24iLCJwbGF5ZXItY29udHJvbC1zZWVrLWljb24tYTExeSIpLHN0eWxlOl8uSUUoe2xlZnQ6KCk9PmEuRmQoKT09PS0xPyIwIjoidW5zZXQiLHJpZ2h0OigpPT5hLkZkKCk9PT0xPyIwIjoidW5zZXQifSksZWw6Ziwib246Y2xpY2siOmJ9KX0pfSwiR2QiKTt2YXIgWVY9Xy5MKGE9Pnt2YXIge1VkOmIsb25jbGljazpjLC4uLmR9PWE7YT1fLnVFKCJkaXYiLGU9PntXUyhlLGIoKSl9KTtyZXR1cm4gXy5LKCJkaXYiLHtlbDphfSxfLksoXy50Tyx7Li4uZCxvbmNsaWNrOmU9PntYUyhiKCkpO2M/LihlKX19KSl9LCJIZCIpO3ZhciBaVj1fLkwoYT0+e3ZhciBiPV8ueCgiZW5hYmxlX3dlYl9kZWxoaV9pY29ucyIpPyJwbGF5ZXJfZnVsbF9lbnRlcl9hbHQiOiJGVUxMU0NSRUVOIixjPV8ueCgiZW5hYmxlX3dlYl9kZWxoaV9pY29ucyIpPyJwbGF5ZXJfZnVsbF9leGl0X2FsdCI6IkZVTExTQ1JFRU5fRVhJVCIsZD0oKT0+YS5HKCkuaXNGdWxsc2NyZWVuP2M6YjtyZXR1cm4gXy5LKFlWLHtuYW1lOmQsYXJpYUxhYmVsOigpPT5hLkcoKS5pc0Z1bGxzY3JlZW4/Xy4kTi5IdDpfLiROLkp0LGNvbnRlbnQ6KCk9Pl8uSygiZGl2Iix7Y2xhc3M6InBsYXllci1ib3R0b20tY29udHJvbHMtZnVsbHNjcmVlbi1pY29uLXZpc2libGUtYXJlYSJ9LF8uSyhfLk1ELHtpY29uOmR9KSksY2xhc3NOYW1lOiJmdWxsc2NyZWVuLWljb24iLFVkOjEzOTExNyxvbmNsaWNrOmU9PnthLkcoKS50YS50b2dnbGVGdWxsc2NyZWVuKCk7ZS5zdG9wUHJvcGFnYXRpb24oKX19KX0sIklkIik7dmFyICRWPV8uTChhPT57dmFyIGI9Xy5rRygkVCk7cmV0dXJuIF8uSyhZVix7bmFtZTooKT0+YS5HKCkucGxheWVyU3RhdGU9PT0xfHxhLnlzJiZhLkcoKS5wbGF5ZXJTdGF0ZT09PTM/IlBBVVNFX0ZJTExFRCI6IlBMQVlfQVJST1dfRklMTEVEIixhcmlhTGFiZWw6KCk9PmEuRygpLnBsYXllclN0YXRlPT09MXx8YS55cyYmYS5HKCkucGxheWVyU3RhdGU9PT0zP18uJE4uTHQ6Xy4kTi5QZyxjbGFzc05hbWU6InBsYXllci1jb250cm9sLXBsYXktcGF1c2UtaWNvbiIsVWQ6MzY4NDIsb25jbGljazpjPT57dmFyIGQ9YS5HKCksZT1iPy4oKTtlJiYoZT1XUShlKSxkLlMoe2plOmV9KSk7Yy5zdG9wUHJvcGFnYXRpb24oKX19KX0sIkpkIik7dmFyIGFXPV8uTChhPT57dmFyIGI9Xy5rRygkVCk7cmV0dXJuIF8uSyhZVix7bmFtZToiUExBWUVSX1JFUExBWSIsYXJpYUxhYmVsOl8uJE4uUHQsY2xhc3NOYW1lOiJlbmRzY3JlZW4tcmVwbGF5LWJ1dHRvbiIsVWQ6NTYzODYsb25jbGljazpjPT57dmFyIGQ9YS5HKCksZT1iPy4oKTtlJiYoZC5yYyYmZT8udW5NdXRlKCksZS5wbGF5VmlkZW8oKSk7Yy5zdG9wUHJvcGFnYXRpb24oKX19KX0sIktkIik7dmFyIGJXPV8uTChhPT5fLksoWVYse25hbWU6IkdFQVIiLGFyaWFMYWJlbDpfLiROLnZ0LGNsYXNzTmFtZTpfLlAoInBsYXllci1zZXR0aW5ncy1pY29uIixhLmNsYXNzTmFtZSksVWQ6Mjg2NjMsb25jbGljazpiPT57YS5HKCkudGEuU2ooYil9fSksIkxkIik7dmFyIGNXPV8uTChhPT57dmFyIHtLdTpiLG9uQ2xpY2s6YyxhcmlhTGFiZWw6ZCxhcmlhUHJlc3NlZDplLGlzT3ZlcmxheTpmfT1fLkRDKGEse2lzT3ZlcmxheTohMX0pO2E9Xy51RSgiYnV0dG9uIixoPT57V1MoaCwxMjcyOTkpfSk7cmV0dXJuIF8uSygieXRtLWNsb3NlZC1jYXB0aW9uaW5nLWJ1dHRvbiIse2NsYXNzOl8uUCgieXRtQ2xvc2VkQ2FwdGlvbmluZ0J1dHRvbkhvc3QiLHt5dG1DbG9zZWRDYXB0aW9uaW5nQnV0dG9uSWNvbkRpc2FibGVkT3ZlcmxheTooKT0+YigpPT09LTEmJmYoKSx5dG1DbG9zZWRDYXB0aW9uaW5nQnV0dG9uSWNvbkRpc2FibGVkOigpPT5iKCk9PT0tMSYmIWYoKX0pfSxfLksoImJ1dHRvbiIse2VsOmEsY2xhc3M6Inl0bUNsb3NlZENhcHRpb25pbmdCdXR0b25CdXR0b24iLHRpdGxlOmQsImFyaWEtbGFiZWwiOmQsImFyaWEtcHJlc3NlZCI6ZSwiYXJpYS1kaXNhYmxlZCI6KCk9PmIoKT09PS0xPyJ0cnVlIjp2b2lkIDAsIm9uOmNsaWNrIjpmdW5jdGlvbihoKXtYUygxMjcyOTkpOwpjPy4oaCk7aC5zdG9wUHJvcGFnYXRpb24oKX19LF8uSyhfLk1ELHtpY29uOigpPT57dmFyIGg9IiI7aWYoXy54KCJtd2ViX2xvY2FsaXplZF9jY19pY29uIikpe3ZhciBrPV8uSHooKS5nZXQoImhsIik7az0ha3x8aG1hLmluY2x1ZGVzKGspPyJDTE9TRURfQ0FQVElPTiI6IlNVQlRJVExFUyJ9ZWxzZSBrPSJDTE9TRURfQ0FQVElPTiI7dmFyIGw9YigpO3N3aXRjaChsKXtjYXNlIC0xOmNhc2UgMDpoPWs7YnJlYWs7Y2FzZSAxOmg9aysiX0ZJTExFRCI7YnJlYWs7ZGVmYXVsdDpfLmViKGwsdm9pZCAwKX1yZXR1cm4gaH0sY2xhc3NOYW1lOl8uUCh7eXRtQ2xvc2VkQ2FwdGlvbmluZ0J1dHRvbll0SWNvbk92ZXJsYXk6Zn0pfSkpKX0sIk1kIik7Y1cuaWRvbUNvbXBhdD17Y2FsbGJhY2tzOntvbkNsaWNrOiEwfX07dmFyIGtVPSIiO3ZhciBkVz1fLkwoYT0+e3ZhciBiPWEuZ2YsYz1hLnNMLGQ9YS5XcSxlPWEuY2xhc3NOYW1lLGY9YS5WcixoPXA9Pnt2YXIgcj1iKCksdD1jPy4oKSx2PWYoKTtyLnhjJiYodD9yLkg/LnRvZ2dsZVN1YnRpdGxlcyh2KToodD1yLkgpJiZRUSh0LGxVKHIpLHYpKTtfLngoIndlYl9kZWxldGVfc25hY2tiYXJzIil8fHIudGEucUE/LihyKTtkPy4ocCl9LGs9Xy5OKCgpPT57dmFyIHA9YigpLHI9LTE7cC54YyYmKHI9cC5jYXB0aW9uc0VuYWJsZWQ/MTowKTtyZXR1cm4gcn0sdm9pZCAwLCJITW8ycmMiKSxsPV8uTigoKT0+e3ZhciBwPWIoKTtyZXR1cm4gcC54Yz9fLmFBKHAuY2FwdGlvbnNFbmFibGVkPyJDTE9TRURfQ0FQVElPTlNfT04iOiJDTE9TRURfQ0FQVElPTlNfT0ZGIik6Xy5hQSgiQ0xPU0VEX0NBUFRJT05TX0RJU0FCTEVEIil9LHZvaWQgMCwiV1E1MVllIiksbT1fLk4oKCk9Pnt2YXIgcD1iKCk7cD1wLnhjP3AuY2FwdGlvbnNFbmFibGVkOnZvaWQgMDtyZXR1cm4gcH0sdm9pZCAwLAoiSTBMVHViIiksbj1fLk4oKCk9PmIoKS54Yyx2b2lkIDAsIkx2ZU9XZSIpO3JldHVybiBfLksoXy5PLHtBOigpPT5fLngoIm13ZWJfcGxheWVyX2hpZGVfdW5hdmFpbGFibGVfc3VidGl0bGVzX2J1dHRvbiIpP24oKTohMCx0aGVuOigpPT5fLksoInl0LWNsb3NlZC1jYXB0aW9ucy10b2dnbGUtYnV0dG9uIix7Y2xhc3M6ZX0sXy5LKGNXLHtLdTprLGFyaWFMYWJlbDpsLGFyaWFQcmVzc2VkOm0sb25DbGljazpoLGlzT3ZlcmxheTohMH0pKX0pfSwiTmQiKTt2YXIgZVc9Xy5MKCh7SUE6YSxkYXRhOmIsY2hpbGRyZW46Y30pPT57ZnVuY3Rpb24gZCgpe2E/LigpfHxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9PntmLnZhbHVlJiYoaC52YWx1ZS5zdHlsZS53aWR0aD1gJHtmLnZhbHVlLm9mZnNldFdpZHRofXB4YCl9KX12YXIgZT12b2lkIDAsZj1fLnVFKCJkaXYiKSxoPV8udUUoImRpdiIpLGs9Xy5CUSgpLGw9Xy5CUSgpO18ubkUoKCk9PntkKCk7IWUmJmIoKS5zdWJzY3JpYmVkJiYoay5sb3R0aWVFbD8uZ29Ub0FuZFBsYXkoMCksbC5sb3R0aWVFbD8uZ29Ub0FuZFBsYXkoMCkpO2U9ISFiKCkuc3Vic2NyaWJlZH0sIk1NMGpBZiIpO3JldHVybiBfLksoImRpdiIse2NsYXNzOiJ5dHdBbmltYXRlZFN1YnNjcmliZUJ1dHRvbkhvc3QifSxfLksoXy5BUSx7T286ayxScDpsfSxfLksoImRpdiIse2VsOmgsY2xhc3M6Xy5QKCJ5dHdBbmltYXRlZFN1YnNjcmliZUJ1dHRvbkNvbnRlbnRDb250YWluZXIiLHt5dHdBbmltYXRlZFN1YnNjcmliZUJ1dHRvblN0YXRpY1dpZHRoOmEsCnl0d0FuaW1hdGVkU3Vic2NyaWJlQnV0dG9uQ2FuQW5pbWF0ZTooKT0+YigpLnN1YnNjcmliZWR9KX0sXy5LKCJkaXYiLHtlbDpmLGNsYXNzOiJ5dHdBbmltYXRlZFN1YnNjcmliZUJ1dHRvbkZsZXhDb250YWluZXIifSxjKSkpKX0sIlBkIik7ZVcuaWRvbUNvbXBhdD0hMDt2YXIgZlc9Xy5MKCh7ZGF0YTphLGJ1dHRvbk92ZXJyaWRlczpifSk9Pnt2YXIgW2NdPW5qYShhKTtyZXR1cm4gXy5LKCJ5dG0tc3Vic2NyaWJlLWJ1dHRvbi1yZW5kZXJlciIse2NsYXNzOl8uUCh7ImlzLXN1YnNjcmliZWQiOigpPT5jKCkuc3Vic2NyaWJlZCwiaXMtbm90LXN1YnNjcmliZWQiOigpPT4hYygpLnN1YnNjcmliZWQsZGlzYWJsZWQ6KCk9Pnt2YXIgZDtpZihkPSEhYygpLnRoZW1lKXtkPSEhYygpLnN1YnNjcmliZWQ7dmFyIGU9YygpLnRoZW1lO2Q9ZD8hIWUuc3Vic2NyaWJlZENvbG9yUGFsZXR0ZSYmXy51TihlLnN1YnNjcmliZWRDb2xvclBhbGV0dGUpOiEhZS51bnN1YnNjcmliZWRDb2xvclBhbGV0dGUmJl8udU4oZS51bnN1YnNjcmliZWRDb2xvclBhbGV0dGUpfXJldHVybiBkfX0pfSxfLksoXy5hamEse3NldHRpbmdzOigpPT4oe3VuaXF1ZUlkOiJzdWJzY3JpYmUiLGZrOmMoKS50aW1lZEFuaW1hdGlvbkRhdGE/LmFuaW1hdGlvblRpbWluZ3x8W10sWGQ6KGMoKS50aW1lZEFuaW1hdGlvbkRhdGE/LmFuaW1hdGlvblRpbWluZ3x8CltdKS5sZW5ndGg+MCxlbmFibGVkOiFjKCkuc3Vic2NyaWJlZCYmKGMoKS50aW1lZEFuaW1hdGlvbkRhdGE/LmFuaW1hdGlvblRpbWluZ3x8W10pLmxlbmd0aD4wfSl9LF8uSyhYbWEse2RhdGE6YyxidXR0b25PdmVycmlkZXM6Yn0pKSl9LCJRZCIpO2ZXLmlkb21Db21wYXQ9ITA7CnZhciBYbWE9Xy5MKCh7ZGF0YTphLGJ1dHRvbk92ZXJyaWRlczpifSk9Pnt2YXIgYz0oKT0+ISghYSgpLnN1YnNjcmliZWR8fCFhKCkubm90aWZpY2F0aW9uUHJlZmVyZW5jZVRvZ2dsZUJ1dHRvbiksZD1fLk4oKCk9Pih7Li4uUWphKHtyZW5kZXJlcjphKCksc3Vic2NyaWJlZDohIWEoKS5zdWJzY3JpYmVkLGlzT3ZlcmxheTpfLldNKCk/ITA6ITEsc3RvcFByb3BhZ2F0aW9uOiEwfSksZGlzYWJsZWQ6IWEoKS5lbmFibGVkLC4uLihiPy4oKXx8e30pfSksdm9pZCAwLCJ5b0NkY2UiKTtyZXR1cm4gXy5LKCJkaXYiLHtjbGFzczoibW9kZXJuLXN1YnNjcmliZS1idXR0b24tY29udGFpbmVyIn0sXy5LKCJkaXYiLHtjbGFzczpfLlAoIm5vdGlmaWNhdGlvbi1iZWxsLWNvbnRhaW5lciIse2hpZGRlbjooKT0+IWMoKX0pfSxfLksoXy5XLHtkYXRhOigpPT5hKCkubm90aWZpY2F0aW9uUHJlZmVyZW5jZVRvZ2dsZUJ1dHRvbn0se3RvZ2dsZUJ1dHRvblJlbmRlcmVyOih7ZGF0YTplfSk9Pl8uSyhfLnFPLAp7ZGF0YTplLGJ1dHRvbk92ZXJyaWRlczp7c3R5bGU6Im92ZXJsYXkifSxjbGFzc05hbWU6Xy5QKCJub3RpZmljYXRpb24tYmVsbCIse2hpZGRlbjooKT0+IWMoKX0pfSl9KSksXy5LKCJkaXYiLHtjbGFzczpfLlAoIm1vZGVybi1zdWJzY3JpYmUtYnV0dG9uIix7IndpdGgtbm90aWZpY2F0aW9uLWJlbGwiOmN9KX0sXy5LKF8uTyx7QTooKT0+IV8uV00oKSx0aGVuOigpPT57dmFyIGU9Xy5VTSgpPT09ImNoYW5uZWwiO3JldHVybiBfLksoZVcse2RhdGE6YSxJQTplfSxfLksoXy5KSyx7ZGF0YTpkfSkpfSxXOigpPT5fLksoXy5KSyx7ZGF0YTpkfSl9KSxfLksoImRpdiIse2NsYXNzOiJzdWJzY3JpYmUtYnV0dG9uLWNvdW50In0sXy5LKF8uSUose2RhdGE6KCk9PmEoKS5zdWJzY3JpYmVyQ291bnRUZXh0fSkpKSl9LCJSZCIpO3ZhciBnVz1fLkwoKHtlbmRzY3JlZW5FbGVtZW50UmVuZGVyZXI6YSxpc0FjdGl2ZTpiLFhoOmN9KT0+e2Z1bmN0aW9uIGQoKXtfLkFKKGEoKS5lbmRwb2ludCxhKCksITApfXZhciBlPSgpPT5hKCkuc3R5bGU9PT0iQ0hBTk5FTCIsZj1fLlAoInl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRUaHVtYm5haWwiLHt5dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50Um91bmQ6ZX0pLGg9KCk9Pk51bWJlcihhKCkubGVmdCkrTnVtYmVyKGEoKS53aWR0aC8yKTwuNSxrPV8uUCgieXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXkiLHt5dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheVJpZ2h0OmgseXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlMZWZ0OigpPT4haCgpLHl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5UmlnaHRBY3RpdmU6KCk9PmIoKSYmaCgpLHl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5TGVmdEFjdGl2ZTooKT0+CmIoKSYmIWgoKX0pLGw9KCk9PmEoKS50aXRsZSxtPSgpPT5hKCkuaG92ZXJjYXJkQnV0dG9uLG49KCk9PmEoKS5tZXRhZGF0YSxwPSgpPT5hKCkuY2FsbFRvQWN0aW9uLHI9Xy5QKHt5dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheU1ldGFkYXRhV2Vic2l0ZTooKT0+IWUoKSx5dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheU1ldGFkYXRhQ2hhbm5lbDplfSk7Yz1fLlAoInl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRTY3JpbSIse3l0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRTY3JpbUNoYW5uZWw6ZSx5dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50U2NyaW1BY3RpdmU6Y30pO3ZhciB0PV8uUCgieXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudEhvc3QiLHt5dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50SG9zdEFjdGl2ZTpifSk7cmV0dXJuIF8uSygiZXhwYW5kaW5nLWVuZHNjcmVlbi1lbGVtZW50Iix7Y2xhc3M6dH0sXy5LKCJkaXYiLHtjbGFzczpjfSksCl8uSygiZGl2Iix7Y2xhc3M6a30sXy5LKCJkaXYiLHtjbGFzczoieXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlDb250ZW50In0sXy5LKF8uTyx7QTpsLHRoZW46KCk9Pl8uSyhfLlYse3RleHQ6bCxjbGFzc05hbWU6Inl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5VGl0bGUifSl9KSxfLksoXy5PLHtBOm0sdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlCdXR0b24ifSxfLksoXy5XLHtkYXRhOm19LHtzdWJzY3JpYmVCdXR0b25SZW5kZXJlcjpmV30pKX0pLF8uSyhfLk8se0E6bix0aGVuOigpPT5fLksoXy5WLHtjbGFzc05hbWU6cix0ZXh0Om59KX0pLF8uSyhfLk8se0E6KCk9PiFlKCkmJmEoKS5jYWxsVG9BY3Rpb24sdGhlbjooKT0+Xy5LKCJkaXYiLHsib246Y2xpY2siOmQsc3R5bGU6ImRpc3BsYXk6IGNvbnRlbnRzIn0sXy5LKF8uVix7Y2xhc3NOYW1lOiJ5dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUNhbGxUb0FjdGlvbiIsCnRleHQ6cH0pKX0pKSksXy5LKCJkaXYiLHsib246Y2xpY2siOmR9LF8uSyhfLlVQLHt0aHVtYm5haWxEZXRhaWxzOigpPT5hKCkuaW1hZ2UsY2xhc3NOYW1lOmZ9KSkpfSwiU2QiKTtnVy5pZG9tQ29tcGF0PSEwO3ZhciBoVz1fLkwoKHtlbmRzY3JlZW5FbGVtZW50UmVuZGVyZXI6YSxpc0FjdGl2ZTpiLFhoOmN9KT0+e3ZhciBkPSgpPT5hKCkudGl0bGUsZT0oKT0+YSgpLnRodW1ibmFpbE92ZXJsYXlzLGY9KCk9PmEoKS5wbGF5bGlzdExlbmd0aDtiPV8uUCgieXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudEhvc3QiLHt5dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50SG9zdEFjdGl2ZTpifSk7Yz1fLlAoInl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRTY3JpbSIse3l0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRTY3JpbUFjdGl2ZTpjfSk7cmV0dXJuIF8uSygidGh1bWJuYWlsLWVuZHNjcmVlbi1lbGVtZW50Iix7Y2xhc3M6Yiwib246Y2xpY2siOmZ1bmN0aW9uKCl7Xy5BSihhKCkuZW5kcG9pbnQsYSgpLCEwKX19LF8uSygiZGl2Iix7Y2xhc3M6Y30pLF8uSyhfLk8se0E6ZCx0aGVuOigpPT5fLksoImRpdiIse2NsYXNzOiJ5dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50VG9wT3ZlcmxheSJ9LApfLksoImRpdiIse2NsYXNzOiJ5dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50VG9wR3JhZGllbnQifSksXy5LKF8uVix7dGV4dDpkLGNsYXNzTmFtZToieXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFRodW1ibmFpbFRpdGxlIix1YjohMCxtYTohMH0pKX0pLF8uSyhfLlVQLHt0aHVtYm5haWxEZXRhaWxzOigpPT5hKCkuaW1hZ2UsY2xhc3NOYW1lOiJ5dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50VGh1bWJuYWlsIn0pLF8uSyhfLk8se0E6ZSx0aGVuOigpPT5fLksoXy5XLHtkYXRhOmV9LHt0aHVtYm5haWxPdmVybGF5VGltZVN0YXR1c1JlbmRlcmVyOih7ZGF0YTpofSk9Pl8uSyhfLlZQLHtkYXRhOmgsY2xhc3NOYW1lOiJ5dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50VGltZVN0YXR1cyJ9KX0pfSksXy5LKF8uTyx7QTpmLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRQbGF5bGlzdExlbmd0aE92ZXJsYXkifSxfLksoXy5NRCwKe2ljb246IlBMQVlMSVNUU19DQUlSTyIsY2xhc3NOYW1lOiJ5dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50UGxheWxpc3RJY29uIn0pLF8uSyhfLlYse3RleHQ6ZixjbGFzc05hbWU6Inl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRQbGF5bGlzdExlbmd0aCIsdWI6ITAsbm9XcmFwOiEwLG1hOiEwfSkpfSkpfSwiVGQiKTtoVy5pZG9tQ29tcGF0PSEwO3ZhciBpVz1bMzQ2LDQyNiw0NzAsNTA2LDU3MCw2NDAsODUzLDEyODAsMTkyMF0salc9WyJ5dG1DcmVhdG9yRW5kc2NyZWVuUm91bmRpbmdTbWFsbCIsInl0bUNyZWF0b3JFbmRzY3JlZW5Sb3VuZGluZ01lZGl1bSIsInl0bUNyZWF0b3JFbmRzY3JlZW5Sb3VuZGluZ0xhcmdlIl0sbFc9Xy5MKCh7ZW5kc2NyZWVuUmVuZGVyZXI6YSxHOmJ9KT0+e3ZhciBbYyxkXT1fLkoobmV3IEZRKDAsMCwwLDApLHZvaWQgMCwidXV1TUtjIiksW2UsZl09Xy5KKG5ldyBfLm5kKDAsMCksdm9pZCAwLCJweWFpamIiKSxbaCxrXT1fLkooIiIsdm9pZCAwLCJNSzNpQWYiKSxbbCxtXT1fLkooITEsdm9pZCAwLCJlTU9maWIiKSxuPV8uTigoKT0+YigpLkgsdm9pZCAwLCJwRjY4NGIiKSxwPV8uTigoKT0+Xy5VdyhhKCkudHJhY2tpbmdQYXJhbXMpLHZvaWQgMCwiamJvUEZmIikscj0oKT0+e3ZhciBBPW4oKT8uZ2V0VmlkZW9Db250ZW50UmVjdCgpO0EmJkEud2lkdGg+MCYmQS5oZWlnaHQ+MCYmZChuZXcgRlEoQS5sZWZ0LApBLnRvcCxBLndpZHRoLEEuaGVpZ2h0KSk7KEE9bigpPy5nZXRTaXplKCkpJiZBLndpZHRoPjAmJkEuaGVpZ2h0PjAmJmYobmV3IF8ubmQoQS53aWR0aCxBLmhlaWdodCkpfSx0PUE9PntBPT09Inl0bS1jZS1pbi1lbmRzY3JlZW4iJiYobSghMCksWlMocCgpKSl9LHY9QT0+e0E9PT0ieXRtLWNlLWluLWVuZHNjcmVlbiImJm0oITEpfTtfLlVKKCgpPT57cigpO0hrYShwKCkpO24oKT8uYWRkRXZlbnRMaXN0ZW5lcigib25DdWVSYW5nZUVudGVyIix0KTtuKCk/LmFkZEV2ZW50TGlzdGVuZXIoIm9uQ3VlUmFuZ2VFeGl0Iix2KTtuKCk/LmFkZEN1ZVJhbmdlKCJ5dG0tY2UtaW4tZW5kc2NyZWVuIixOdW1iZXIoYSgpLnN0YXJ0TXMpLzFFMyxOdW1iZXIoMHg3ZmZmZmZmZmZmZmZmKS8xRTMpO18uWXUoKCk9PntiKCkuSD8ucmVtb3ZlRXZlbnRMaXN0ZW5lcigib25DdWVSYW5nZUVudGVyIix0KTtiKCkuSD8ucmVtb3ZlRXZlbnRMaXN0ZW5lcigib25DdWVSYW5nZUVudGVyIix2KTtuKCk/LnJlbW92ZUN1ZVJhbmdlKCJ5dG0tY2UtaW4tZW5kc2NyZWVuIil9KX0pOwpfLkRQKCJyZXNpemUiLHIpO3ZhciB6PV8uUCgieXRtQ3JlYXRvckVuZHNjcmVlbkhvc3QiLCgpPT57dmFyIEE9YygpLndpZHRoLEY9MCxDPS0xO2ZvcihsZXQgRz0wO0c8aVcubGVuZ3RoO0crKyl7bGV0IEQ9TWF0aC5hYnMoQS1pV1tHXSk7aWYoQz09PS0xfHxGPj1EKUM9RyxGPUR9cmV0dXJuYHl0bUNyZWF0b3JFbmRzY3JlZW5TaXplJHtpV1tDXX1gfSx7eXRtQ3JlYXRvckVuZHNjcmVlbkluQ3VlUmFuZ2U6bH0pLEU9Xy5QKCJ5dG1DcmVhdG9yRW5kc2NyZWVuU2NyaW0iLHt5dG1DcmVhdG9yRW5kc2NyZWVuU2NyaW1WaXNpYmxlOigpPT5oKCl9KTtyZXR1cm4gXy5LKCJjcmVhdG9yLWVuZHNjcmVlbiIse2NsYXNzOnp9LF8uSygiZGl2Iix7Y2xhc3M6RSxzdHlsZTpfLklFKHt3aWR0aDooMCxfLlpLKSgoKT0+ZSgpLndpZHRoKSxoZWlnaHQ6KDAsXy5aSykoKCk9PmUoKS5oZWlnaHQpfSl9KSxfLksoXy5XLHtkYXRhOigpPT5hKCkuZWxlbWVudHN9LHtlbmRzY3JlZW5FbGVtZW50UmVuZGVyZXI6KHtkYXRhOkF9KT0+Cl8uSyhrVyx7ZGF0YTpBLEdCOmMsaXNBY3RpdmU6KCk9PmgoKT09PUEoKS5pZCxYaDooKT0+ISFoKCkmJmgoKSE9PUEoKS5pZCxlQTprLEg6bn0pfSkpfSwiVWQiKTtsVy5pZG9tQ29tcGF0PSEwOwp2YXIga1c9Xy5MKCh7ZGF0YTphLEdCOmIsaXNBY3RpdmU6YyxYaDpkLGVBOmUsSDpmfSk9Pnt2YXIgW2gsa109Xy5KKCExLHZvaWQgMCwiS1dZSkllIiksbD1fLk4oKCk9Pl8uVXcoYSgpLnRyYWNraW5nUGFyYW1zKSx2b2lkIDAsIlV4cHlVYiIpLG09dD0+e3Quc3Vic3RyaW5nKDE1KT09PWEoKS5pZCYmKGsoITApLFpTKGwoKSkpfSxuPXQ9Pnt0LnN1YnN0cmluZygxNSk9PT1hKCkuaWQmJmsoITEpfTtfLlVKKCgpPT57Zj8uKCkuYWRkRXZlbnRMaXN0ZW5lcigib25DdWVSYW5nZUVudGVyIixtKTtmPy4oKS5hZGRFdmVudExpc3RlbmVyKCJvbkN1ZVJhbmdlRXhpdCIsbik7dmFyIHQ9YHl0bS1jZS1lbGVtZW50LSR7YSgpLmlkfWA7Zj8uKCkuYWRkQ3VlUmFuZ2UodCxOdW1iZXIoYSgpLnN0YXJ0TXMpLzFFMyxOdW1iZXIoYSgpLmVuZE1zKS8xRTMpO18uWXUoKCk9PntmPy4oKS5yZW1vdmVFdmVudExpc3RlbmVyKCJvbkN1ZVJhbmdlRW50ZXIiLG0pO2Y/LigpLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm9uQ3VlUmFuZ2VFbnRlciIsCm4pO2Y/LigpLnJlbW92ZUN1ZVJhbmdlKHQpfSl9KTt2YXIgcD0oKT0+YigpLmNsb25lKCkuc2NhbGUoYSgpLndpZHRoLGEoKS53aWR0aCpiKCkuZ2V0U2l6ZSgpLmFzcGVjdFJhdGlvKCkvYSgpLmFzcGVjdFJhdGlvKS50cmFuc2xhdGUoYSgpLmxlZnQqYigpLndpZHRoLWIoKS5sZWZ0KihhKCkud2lkdGgtMSksYSgpLnRvcCpiKCkuaGVpZ2h0LWIoKS50b3AqKGEoKS53aWR0aCpiKCkuZ2V0U2l6ZSgpLmFzcGVjdFJhdGlvKCkvYSgpLmFzcGVjdFJhdGlvLTEpKSxyPV8uUCgieXRtQ3JlYXRvckVuZHNjcmVlbkVsZW1lbnQiLHt5dG1DcmVhdG9yRW5kc2NyZWVuRWxlbWVudFZpc2libGU6KCk9PmgoKX0sKCk9PnAoKS53aWR0aD4yNTZ8fHAoKS5oZWlnaHQ+MjU2P2pXWzJdOnAoKS53aWR0aD45Nnx8cCgpLmhlaWdodD45Nj9qV1sxXTpqV1swXSk7cmV0dXJuIF8uSygiZGl2Iix7Y2xhc3M6cixzdHlsZTpfLklFKHt3aWR0aDooMCxfLlpLKSgoKT0+cCgpLndpZHRoKSxoZWlnaHQ6KDAsXy5aSykoKCk9PgpwKCkuaGVpZ2h0KSx0b3A6KDAsXy5aSykoKCk9PnAoKS50b3ApLGxlZnQ6Xy55KCkucmVzb2x2ZShfLmxGKT09PSJsdHIiPygwLF8uWkspKCgpPT5wKCkubGVmdCk6ImF1dG8iLHJpZ2h0Ol8ueSgpLnJlc29sdmUoXy5sRik9PT0icnRsIj8oMCxfLlpLKSgoKT0+KGY/LigpLmdldFNpemUoKT8ud2lkdGg/PzApLXAoKS5sZWZ0LXAoKS53aWR0aCk6ImF1dG8ifSksIm9uOm1vdXNlb3ZlciI6ZnVuY3Rpb24odCl7ZShhKCkuaWQpO3Quc3RvcFByb3BhZ2F0aW9uKCl9LCJvbjptb3VzZW91dCI6ZnVuY3Rpb24odCl7ZSgiIik7dC5zdG9wUHJvcGFnYXRpb24oKX0sIm9uOmZvY3VzaW4iOmZ1bmN0aW9uKHQpe3NldFRpbWVvdXQoKCk9PntlKGEoKS5pZCl9LDApO3Quc3RvcFByb3BhZ2F0aW9uKCl9LCJvbjpmb2N1c291dCI6ZnVuY3Rpb24odCl7ZSgiIik7dC5zdG9wUHJvcGFnYXRpb24oKX0sIm9uOnRvdWNoc3RhcnQiOmZ1bmN0aW9uKHQpe2UoYSgpLmlkKTtZUyhsKCkpO3Quc3RvcFByb3BhZ2F0aW9uKCl9LAoib246Y2xpY2siOmZ1bmN0aW9uKHQpe1lTKGwoKSk7dC5zdG9wUHJvcGFnYXRpb24oKX19LF8uSyhfLkVFLG51bGwsXy5LKF8uQ0Use3doZW46KCk9PmEoKS5zdHlsZT09PSJWSURFTyJ8fGEoKS5zdHlsZT09PSJQTEFZTElTVCJ9LCgpPT5fLksoaFcse2VuZHNjcmVlbkVsZW1lbnRSZW5kZXJlcjphLGlzQWN0aXZlOmMsWGg6ZH0pKSxfLksoXy5DRSx7d2hlbjooKT0+YSgpLnN0eWxlPT09IkNIQU5ORUwifHxhKCkuc3R5bGU9PT0iV0VCU0lURSJ9LCgpPT5fLksoZ1cse2VuZHNjcmVlbkVsZW1lbnRSZW5kZXJlcjphLGlzQWN0aXZlOmMsWGg6ZH0pKSkpfSwiVmQiKTtrVy5pZG9tQ29tcGF0PSEwO3ZhciBZbWE9Xy5MKGE9PntmdW5jdGlvbiBiKHope3ZhciBFPWYoKT8ubmV4dEJ1dHRvbj8uYnV0dG9uUmVuZGVyZXI/Lm5hdmlnYXRpb25FbmRwb2ludCxBPWYoKT8udmlkZW9JZDtFJiYhej9fLnkoKS5yZXNvbHZlKF8uVUQpLnJlc29sdmVDb21tYW5kKEUpOkEmJmEuSCgpPy5sb2FkVmlkZW9CeVBsYXllclZhcnMoe3ZpZGVvSWQ6QSxhdXRvbmF2OnosYXV0b3BsYXk6en0pfWZ1bmN0aW9uIGMoeil7WFMoMTE1MTMwKTtiKCExKTt6LnN0b3BQcm9wYWdhdGlvbigpfXZhciBbZCxlXT1fLkooMCx2b2lkIDAsIlliRE1mYiIpLGY9Xy5OKCgpPT5CUyhhLndhdGNoTmV4dFJlc3BvbnNlPy4oKSksdm9pZCAwLCJIYUZLTWIiKSxoPWEuRyxrPV8uTigoKT0+aCgpLnlmLHZvaWQgMCwic1lnbnplIiksbD1fLk4oKCk9PmgoKS56Zix2b2lkIDAsImR5Q3ZLZiIpLG09Xy5OKCgpPT5tVShhLkcsZigpKSx2b2lkIDAsIkNaRm9NYiIpLG49Xy52RSgiYnV0dG9uIix6PT57eiYmV1MoeiwxMTUxMzApfSksCnA9Xy52RSgiZGl2Iix6PT57eiYmV1MoeiwxMTUxMjkpfSk7Xy5uRSgoKT0+e3ZhciB6PW0oKSxFPWwoKSxBPWsoKSxGPWEuSCgpLEM9ZigpO2lmKHope3o9Qz8uY291bnREb3duU2Vjc3x8MTA7dmFyIEc9eioxRTM7aWYoRSYmQT4wKWUoTWF0aC5tYXgoMCwoei1BKS96KSk7ZWxzZXt2YXIgRD0oMCxfLmVsKSgpLEg9KCk9Pnt2YXIgTT0oMCxfLmVsKSgpLUQ7TT1NYXRoLm1pbihNL0csMSk7ZShNKTtNPj0xPyh3aW5kb3cuY2FuY2VsQW5pbWF0aW9uRnJhbWUoUiksRj8uaXNSZWFkeT8uKCkmJmIoITApKTpSPXdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoSCl9O3ZhciBSPXdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoSCk7Xy5ZdSgoKT0+e3dpbmRvdy5jYW5jZWxBbmltYXRpb25GcmFtZShSKX0pfX1lbHNlIGUoMCl9LCJHU090d2IiKTt2YXIgcj0oKT0+e1hTKDExNTEyOSk7YS5HKCkuUyh7eGY6ITB9KX0sdD1fLk4oKCk9PmAkey0yMTEqKGQoKSsxKX1gLHZvaWQgMCwiVjVzbXdkIiksCnY9KCk9PmYoKT8uYmFja2dyb3VuZDtyZXR1cm4gXy5LKCJwZnAtYXV0b25hdiIse2NsYXNzOl8uUCgieXRQZnBBdXRvbmF2SG9zdCIsYS5jbGFzc05hbWUse3l0UGZwQXV0b25hdlZpc2libGU6bX0pLCJvbjpjbGljayI6ZnVuY3Rpb24oeil7ei5zdG9wUHJvcGFnYXRpb24oKX19LF8uSyhfLk8se0E6bSx0aGVuOigpPT5fLksoXy5JQixudWxsLF8uSyhHVix7RzphLkcsdGh1bWJuYWlsRGV0YWlsczp2fSksXy5LKCJkaXYiLHtjbGFzczoieXRQZnBBdXRvbmF2U2NyaW0ifSxfLksoImRpdiIse2NsYXNzOiJ5dFBmcEF1dG9uYXZIZWFkZXIifSxfLksoXy5WLHt0ZXh0OigpPT5mKCk/LnRpdGxlLG1hOiEwfSkpLF8uSygiZGl2Iix7Y2xhc3M6Inl0UGZwQXV0b25hdlRpdGxlIn0sXy5LKF8uVix7dGV4dDooKT0+ZigpPy52aWRlb1RpdGxlLG1hOiEwfSkpLF8uSygiZGl2Iix7Y2xhc3M6Inl0UGZwQXV0b25hdkJ5bGluZSJ9LF8uSyhfLlYse3RleHQ6KCk9PmYoKT8uYnlsaW5lLG1hOiEwfSkpLApfLksoImJ1dHRvbiIse2NsYXNzOiJ5dFBmcEF1dG9uYXZQbGF5QnV0dG9uIiwib246Y2xpY2siOmMsZWw6biwiYXJpYS1sYWJlbCI6KCk9PmYoKT8ubmV4dEJ1dHRvbj8uYnV0dG9uUmVuZGVyZXI/LmFjY2Vzc2liaWxpdHk/LmxhYmVsfSxfLksoInN2ZyIse2NsYXNzOiJ5dFBmcEF1dG9uYXZSaW5nIix2aWV3Qm94OiIwIDAgNzIgNzIifSxfLksoImNpcmNsZSIse2N4OiIzNiIsY3k6IjM2IixyOiIzMS41IixmaWxsOiJ3aGl0ZSIsImZpbGwtb3BhY2l0eSI6IjAuMyJ9KSxfLksoImNpcmNsZSIse2N4OiItMzYiLGN5OiIzNiIscjoiMzMuNSIsc3Ryb2tlOiJ3aGl0ZSIsInN0cm9rZS13aWR0aCI6IjQiLGZpbGw6Im5vbmUiLHRyYW5zZm9ybToicm90YXRlKC05MCkiLCJzdHJva2UtZGFzaGFycmF5IjoiMjExIixzdHlsZTpfLklFKHsic3Ryb2tlLWRhc2hvZmZzZXQiOnR9KX0pKSxfLksoXy5NRCx7aWNvbjoiUExBWUVSX1BMQVkiLGNsYXNzTmFtZToieXRQZnBBdXRvbmF2UGxheUljb24ifSkpLApfLksoXy5XLHtkYXRhOigpPT5mKCk/LmNhbmNlbEJ1dHRvbn0se2J1dHRvblJlbmRlcmVyOih7ZGF0YTp6fSk9Pl8uSygiZGl2Iix7ZWw6cCxjbGFzczoieXRQZnBBdXRvbmF2Q2FuY2VsQnV0dG9uIn0sXy5LKF8ucE8se2RhdGE6eix0ZzpyLHN0b3BQcm9wYWdhdGlvbjohMCxidXR0b25PdmVycmlkZXM6e3N0eWxlOiJvdmVybGF5In19KSl9KSkpfSkpfSwiWGQiKTt2YXIgbVc9Xy5MKGE9Pl8uSygicGZwLWVuZHNjcmVlbi12aWRlby1yZW5kZXJlciIse2NsYXNzOl8uUCgieXRQZnBFbmRzY3JlZW5WaWRlb1JlbmRlcmVySG9zdCIsYS5jbGFzc05hbWUpfSxfLksoXy5uSCx7Y29tbWFuZDooKT0+YS5kYXRhKCkubmF2aWdhdGlvbkVuZHBvaW50LGFyaWFMYWJlbDooKT0+Xy5hTihhLmRhdGEoKS50aXRsZSl9LF8uSyhfLlVQLHt0aHVtYm5haWxEZXRhaWxzOigpPT5hLmRhdGEoKS50aHVtYm5haWwsY2xhc3NOYW1lOiJ5dFBmcEVuZHNjcmVlblZpZGVvUmVuZGVyZXJUaHVtYm5haWwifSksXy5LKCJkaXYiLHtjbGFzczoieXRQZnBFbmRzY3JlZW5WaWRlb1JlbmRlcmVyT3ZlcmxheSJ9LF8uSygiZGl2Iix7Y2xhc3M6Inl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlck92ZXJsYXlUaXRsZUJ5bGluZSJ9LF8uSygiZGl2Iix7Y2xhc3M6Inl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlclRpdGxlIn0sXy5LKF8uVix7dGV4dDooKT0+YS5kYXRhKCkudGl0bGUsCm1hOiEwLHljOiEwfSkpLF8uSygiZGl2Iix7Y2xhc3M6Inl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlckJ5bGluZSJ9LF8uSyhfLlYse3RleHQ6KCk9PmEuZGF0YSgpLnNob3J0QnlsaW5lVGV4dCxtYTohMCx5YzohMH0pLF8uSyhfLk8se0E6KCk9PmEuZGF0YSgpLnNob3J0Vmlld0NvdW50VGV4dCx0aGVuOigpPT5fLksoXy5JQixudWxsLCIgXHUyMDIyICIsXy5LKF8uVix7dGV4dDooKT0+YS5kYXRhKCkuc2hvcnRWaWV3Q291bnRUZXh0LG1hOiEwfSkpfSkpKSxfLksoImRpdiIse2NsYXNzOiJ5dFBmcEVuZHNjcmVlblZpZGVvUmVuZGVyZXJEdXJhdGlvbiJ9LF8uSyhfLlYse3RleHQ6KCk9PmEuZGF0YSgpLmxlbmd0aFRleHQsbWE6ITB9KSkpKSksIllkIik7dmFyIFptYT1fLkwoYT0+e2Z1bmN0aW9uIGIoRCl7RC5zdG9wUHJvcGFnYXRpb24oKX1mdW5jdGlvbiBjKEQpe3QoITEpO0Quc3RvcFByb3BhZ2F0aW9uKCl9ZnVuY3Rpb24gZChEKXt0KCEwKTtEPy5zdG9wUHJvcGFnYXRpb24oKX1mdW5jdGlvbiBlKCl7RygpfWZ1bmN0aW9uIGYoRCl7dmFyIEg9Ri52YWx1ZTtIJiYoSC5zY3JvbGxUbyh7bGVmdDpILnNjcm9sbExlZnQtSC5jbGllbnRXaWR0aCouOCxiZWhhdmlvcjoic21vb3RoIn0pLEQuc3RvcFByb3BhZ2F0aW9uKCkpfWZ1bmN0aW9uIGgoRCl7dmFyIEg9Ri52YWx1ZTtIJiYoSC5zY3JvbGxUbyh7bGVmdDpILnNjcm9sbExlZnQrSC5jbGllbnRXaWR0aCouOCxiZWhhdmlvcjoic21vb3RoIn0pLEQuc3RvcFByb3BhZ2F0aW9uKCkpfXZhciBrPV8uTigoKT0+YS5VYygpLndhdGNoTmV4dFJlc3BvbnNlLHZvaWQgMCwiV1g2UkJlIiksbD1fLk4oKCk9Pk1TKGsoKSkuZmlsdGVyKEQ9PkQuZW5kU2NyZWVuVmlkZW9SZW5kZXJlciksdm9pZCAwLAoiVlZVZHJjIiksbT1fLk4oKCk9Pnt2YXIgRD1hLlVjKCkucGxheWVyUmVzcG9uc2U/LmVuZHNjcmVlbj8uZW5kc2NyZWVuUmVuZGVyZXI/LnN0YXJ0TXM7RD1EPytEOnZvaWQgMDtyZXR1cm4gYS5HKCkucGxheWVyU3RhdGU9PT0yJiZsPy4oKT8ubGVuZ3RoPjAmJighRHx8YS5HKCkudmEqMUUzPEQpfSx2b2lkIDAsInBRU1FLYiIpLG49Xy5OKCgpPT5hLlVjKCkucGxheWVyUmVzcG9uc2U/LnZpZGVvRGV0YWlscz8udmlkZW9JZCx2b2lkIDAsInlRYk4xZSIpLFtwLHJdPV8uQUMoKCk9PntuKCk7cmV0dXJuITF9KSx0PXIsW3Ysel09Xy5KKCExLHZvaWQgMCwicVFSNzNiIiksW0UsQV09Xy5KKCExLHZvaWQgMCwidmNhM0lkIiksRj1fLnZFKCJkaXYiKSxDPV8uTigoKT0+YS5VYygpLnBsYXllclJlc3BvbnNlPy52aWRlb0RldGFpbHM/LmF1dGhvcj8/IiIsdm9pZCAwLCJvSkUwc2QiKSxHPSgpPT57dmFyIEQ9Ri52YWx1ZTtEJiYoeihELnNjcm9sbExlZnQ+MSksQShELnNjcm9sbExlZnQ8CkQuc2Nyb2xsV2lkdGgtRC5jbGllbnRXaWR0aC0xKSl9O18ubkUoKCk9PntwKCk7bSgpJiZyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCk9PntHKCl9KX0sInRBMTE3ZCIpO3JldHVybiBfLksoInBmcC1tb3JlLXZpZGVvcyIse2NsYXNzOl8uUCgieXRQZnBNb3JlVmlkZW9zSG9zdCIsYS5jbGFzc05hbWUpfSxfLksoXy5PLHtBOigpPT5tKCkmJiFwKCksdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRQZnBNb3JlVmlkZW9zT3ZlcmxheSIsIm9uOmNsaWNrIjpifSxfLksoImRpdiIse2NsYXNzOiJ5dFBmcE1vcmVWaWRlb3NIZWFkZXIifSxfLksoImgzIix7Y2xhc3M6Inl0UGZwTW9yZVZpZGVvc1RpdGxlIn0sKCk9Pl8uJE4uenQucmVwbGFjZSgiJGNoYW5uZWxfbmFtZV9wbGFjZWhvbGRlciIsQygpKSksXy5LKCJidXR0b24iLHtjbGFzczoieXRQZnBNb3JlVmlkZW9zQ2xvc2VCdXR0b24iLCJvbjpjbGljayI6ZCwiYXJpYS1sYWJlbCI6Xy4kTi54dH0sXy5LKF8uTUQse2ljb246IkNMT1NFIiwKY2xhc3NOYW1lOiJ5dFBmcE1vcmVWaWRlb3NDbG9zZUljb24ifSkpKSxfLksoImRpdiIse2NsYXNzOiJ5dFBmcE1vcmVWaWRlb3NWaWRlb0xpc3RDb250YWluZXIifSxfLksoXy5PLHtBOnYsdGhlbjooKT0+Xy5LKCJidXR0b24iLHtjbGFzczoieXRQZnBNb3JlVmlkZW9zUGFkZGxlTGVmdCIsIm9uOmNsaWNrIjpmLCJhcmlhLWxhYmVsIjpfLiROLmZvfSxfLksoXy5NRCx7aWNvbjoiQ0hFVlJPTl9MRUZUIixjbGFzc05hbWU6Inl0UGZwTW9yZVZpZGVvc1BhZGRsZUljb24ifSkpfSksXy5LKCJkaXYiLHtjbGFzczoieXRQZnBNb3JlVmlkZW9zVmlkZW9MaXN0IixlbDpGLCJvbjpzY3JvbGwiOmV9LF8uSyhfLlcse2RhdGE6bCxIazohMH0se2VuZFNjcmVlblZpZGVvUmVuZGVyZXI6KHtkYXRhOkR9KT0+Xy5LKG1XLHtkYXRhOkQsY2xhc3NOYW1lOiJ5dFBmcE1vcmVWaWRlb3NWaWRlb0l0ZW0ifSl9KSksXy5LKF8uTyx7QTpFLHRoZW46KCk9Pl8uSygiYnV0dG9uIix7Y2xhc3M6Inl0UGZwTW9yZVZpZGVvc1BhZGRsZVJpZ2h0IiwKIm9uOmNsaWNrIjpoLCJhcmlhLWxhYmVsIjpfLiROLmVvfSxfLksoXy5NRCx7aWNvbjoiQ0hFVlJPTl9SSUdIVCIsY2xhc3NOYW1lOiJ5dFBmcE1vcmVWaWRlb3NQYWRkbGVJY29uIn0pKX0pKSl9KSxfLksoXy5PLHtBOigpPT5tKCkmJnAoKSx0aGVuOigpPT5fLksoImJ1dHRvbiIse2NsYXNzOiJ5dFBmcE1vcmVWaWRlb3NNb3JlVmlkZW9zQnV0dG9uIiwib246Y2xpY2siOmMsImFyaWEtbGFiZWwiOl8uJE4uYm99LF8uJE4uYm8pfSkpfSwiJGQiKTt2YXIgJG1hPV8uTChhPT5fLksoInBmcC1lbmRzY3JlZW4tcGxheWxpc3QtcmVuZGVyZXIiLHtjbGFzczpfLlAoInl0UGZwRW5kc2NyZWVuUGxheWxpc3RSZW5kZXJlckhvc3QiLGEuY2xhc3NOYW1lKX0sXy5LKF8ubkgse2NvbW1hbmQ6KCk9PmEuZGF0YSgpLm5hdmlnYXRpb25FbmRwb2ludCxhcmlhTGFiZWw6KCk9Pl8uYU4oYS5kYXRhKCkudGl0bGUpfSxfLksoXy5VUCx7dGh1bWJuYWlsRGV0YWlsczooKT0+YS5kYXRhKCkudGh1bWJuYWlsLGNsYXNzTmFtZToieXRQZnBFbmRzY3JlZW5QbGF5bGlzdFJlbmRlcmVyVGh1bWJuYWlsIn0pLF8uSygiZGl2Iix7Y2xhc3M6Inl0UGZwRW5kc2NyZWVuUGxheWxpc3RSZW5kZXJlck92ZXJsYXkifSxfLksoImRpdiIse2NsYXNzOiJ5dFBmcEVuZHNjcmVlblBsYXlsaXN0UmVuZGVyZXJPdmVybGF5VGl0bGUifSxfLksoImRpdiIse2NsYXNzOiJ5dFBmcEVuZHNjcmVlblBsYXlsaXN0UmVuZGVyZXJUaXRsZSJ9LF8uSyhfLlYse3RleHQ6KCk9PmEuZGF0YSgpLnRpdGxlLAptYTohMH0pKSkpLF8uSygiZGl2Iix7Y2xhc3M6Inl0UGZwRW5kc2NyZWVuUGxheWxpc3RSZW5kZXJlckJvdHRvbU92ZXJsYXkifSxfLksoXy5NRCx7aWNvbjoiUExBWUxJU1RTIixjbGFzc05hbWU6Inl0UGZwRW5kc2NyZWVuUGxheWxpc3RSZW5kZXJlckljb24ifSksXy5LKF8uVix7dGV4dDooKT0+YS5kYXRhKCkudmlkZW9Db3VudFRleHQseWM6ITB9KSkpKSwiYWUiKTt2YXIgYW5hPV8uTChhPT57ZnVuY3Rpb24gYihGKXtGLnN0b3BQcm9wYWdhdGlvbigpO0Y9eigpLmxlbmd0aDttKChsKCktcigpK0YqcigpKSVGKX1mdW5jdGlvbiBjKEYpe0Yuc3RvcFByb3BhZ2F0aW9uKCk7Rj16KCkubGVuZ3RoO20oKGwoKStyKCkpJUYpfXZhciBkPV8udkUoImRpdiIpLFtlLGZdPV8uSihbXSx2b2lkIDAsIkVyVVFJZSIpLFtoLGtdPV8uSigwLHZvaWQgMCwiV01lWW9kIiksbD1oLG09ayxbbixwXT1fLkooMCx2b2lkIDAsIk96UFNrZSIpLHI9bixbdCwsdl09Xy5KKDAsdm9pZCAwLCJsQ1RtcGUiKTtfLkRQKCJyZXNpemUiLCgpPT57dihGPT5GKzEpfSk7dmFyIHo9Xy5OKCgpPT5NUyhhLndhdGNoTmV4dFJlc3BvbnNlPy4oKSksdm9pZCAwLCJyeTJEVCIpLEU9Xy5OKCgpPT5uVShhLkcsYS53YXRjaE5leHRSZXNwb25zZT8uKCkpLHZvaWQgMCwiRmhVWnIiKSxBPV8uTigoKT0+cigpJiZ6KCkubGVuZ3RoPnIoKSx2b2lkIDAsIlV3RWM1YiIpO18ubkUoKCk9Pnt0KCk7CnZhciBGPXooKSxDPWwoKTtpZihFKCkmJmQudmFsdWUpaWYoRi5sZW5ndGgpe3ZhciBHPWQudmFsdWUsRD1HLmNsaWVudFdpZHRoO0c9Ry5jbGllbnRIZWlnaHQ7bGV0IFQ9Ri5sZW5ndGg7Zm9yKHZhciBIPTIsUj0yLE09TWF0aC5tYXgoRC85NiwyKSxTPU1hdGgubWF4KEcvNTQsMiksWT0oVC0xKSo0O1k+MCYmKEg8TXx8UjxTKTspe3ZhciBwYT1ILzIsb2E9Ui8yLFU9SDw9TS0yJiZZPj1vYSo0LGhhPVI8PVMtMiYmWT49cGEqNDtpZigocGErMSkvb2EqblcvKEQvRyk+RC9HLyhwYS8ob2ErMSkqblcpJiZoYSlZLT1wYSo0LFIrPTI7ZWxzZSBpZihVKVktPW9hKjQsSCs9MjtlbHNlIGlmKGhhKVktPXBhKjQsUis9MjtlbHNlIGJyZWFrfWxldCB7Y29sdW1uQ291bnQ6YmEsWXo6YWEsUno6T2F9PXtjb2x1bW5Db3VudDpILFl6OlIsUno6WX07SD0hMTtPYT49MTImJlQqNC1PYTw9NiYmKGFhPj00fHxiYT49NCkmJihIPSEwKTtSPWJhKjk2O009YWEqNTQ7Uz1NYXRoLm1pbihSL008RC9HPwpHL006RC9SLDIpO1I9TWF0aC5mbG9vcihNYXRoLm1pbihELFIqUykpO009TWF0aC5mbG9vcihNYXRoLm1pbihHLE0qUykpO2xldCB7U0E6SmIsUkE6emF9PXtTQTpSLFJBOk19O1I9SmIrNDtNPXphKzQ7Uz0wO1k9W107Zm9yKHBhPTA7cGE8YmE7cGErKylmb3Iob2E9MDtvYTxhYTtvYSsrKWlmKFU9MCxIJiZwYT49YmEtMiYmb2E+PWFhLTI/VT0xOm9hJTI9PT0wJiZwYSUyPT09MCYmKFU9MiksaGE9UyVULFUhPT0wKXtsZXQgTGI9TWF0aC5mbG9vcihNKm9hL2FhKSxjYz1NYXRoLmZsb29yKFIqcGEvYmEpO1kucHVzaCh7ZGF0YTpGWyhoYStDKSVUXSxsZWZ0OmNjKyhELUpiKS8yLHRvcDpMYisoRy16YSkvMix3aWR0aDpNYXRoLmZsb29yKFIqKHBhK1UpL2JhKS1jYy00LGhlaWdodDpNYXRoLmZsb29yKE0qKG9hK1UpL2FhKS1MYi00fSk7UysrfXZhciB7U3k6bWEsaW5kZXg6dGF9PXtTeTpZLGluZGV4OlN9O2YobWEpO3AodGEpfWVsc2UgZihbXSl9LCJ3ZVk0QiIpO3JldHVybiBfLksoInBmcC12aWRlby13YWxsLWVuZHNjcmVlbiIsCntjbGFzczpfLlAoInl0UGZwVmlkZW9XYWxsRW5kc2NyZWVuSG9zdCIsYS5jbGFzc05hbWUse3l0UGZwVmlkZW9XYWxsRW5kc2NyZWVuVmlzaWJsZTpFLHl0UGZwVmlkZW9XYWxsRW5kc2NyZWVuSXNPYnNjdXJlZDphLlV4fSksIm9uOmNsaWNrIjpmdW5jdGlvbihGKXtGLnN0b3BQcm9wYWdhdGlvbigpfX0sXy5LKF8uTyx7QTpFLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0UGZwVmlkZW9XYWxsRW5kc2NyZWVuVmlkZW9MaXN0Q29udGFpbmVyIn0sXy5LKF8uTyx7QSx0aGVuOigpPT5fLksoImJ1dHRvbiIse2NsYXNzOiJ5dFBmcFZpZGVvV2FsbEVuZHNjcmVlblBhZGRsZUxlZnQiLCJvbjpjbGljayI6YiwiYXJpYS1sYWJlbCI6Xy4kTi5mb30sXy5LKF8uTUQse2ljb246IkNIRVZST05fTEVGVCIsY2xhc3NOYW1lOiJ5dFBmcFZpZGVvV2FsbEVuZHNjcmVlblBhZGRsZUljb24ifSkpfSksXy5LKCJkaXYiLHtjbGFzczoieXRQZnBWaWRlb1dhbGxFbmRzY3JlZW5WaWRlb0xpc3QiLAplbDpkfSxfLksoXy5nRyx7cGE6ZX0sRj0+Xy5LKCJkaXYiLHtjbGFzczoieXRQZnBWaWRlb1dhbGxFbmRzY3JlZW5WaWRlb0l0ZW0iLHN0eWxlOl8uSUUoe3RvcDooMCxfLlpLKSgoKT0+Ri50b3ApLGxlZnQ6KDAsXy5aSykoKCk9PkYubGVmdCksd2lkdGg6KDAsXy5aSykoKCk9PkYud2lkdGgpLGhlaWdodDooMCxfLlpLKSgoKT0+Ri5oZWlnaHQpfSl9LF8uSyhfLlcse2RhdGE6KCk9PkYuZGF0YX0se2VuZFNjcmVlblZpZGVvUmVuZGVyZXI6bVcsZW5kU2NyZWVuUGxheWxpc3RSZW5kZXJlcjokbWF9KSkpKSxfLksoXy5PLHtBLHRoZW46KCk9Pl8uSygiYnV0dG9uIix7Y2xhc3M6Inl0UGZwVmlkZW9XYWxsRW5kc2NyZWVuUGFkZGxlUmlnaHQiLCJvbjpjbGljayI6YywiYXJpYS1sYWJlbCI6Xy4kTi5lb30sXy5LKF8uTUQse2ljb246IkNIRVZST05fUklHSFQiLGNsYXNzTmFtZToieXRQZnBWaWRlb1dhbGxFbmRzY3JlZW5QYWRkbGVJY29uIn0pKX0pKX0pKX0sImNlIiksblc9OTYvNTQ7dmFyIG9XPV8uTCgoe2plOmF9KT0+e3ZhciBiPV8uTigoKT0+YSgpLHZvaWQgMCwiRVRnZTdkIiksW2MsLGRdPV8uSigwLHZvaWQgMCwiWkNCSXMiKTtfLm5FKCgpPT57YigpJiZkKGU9PmUrMSl9LCJLc1gzcmYiKTtyZXR1cm4gXy5LKCJwbGF5ZXItYWN0aW9uLWluZGljYXRvciIse2NsYXNzOiJ5dFBsYXllckNvbnRyb2xzUGxheWVyQWN0aW9uSW5kaWNhdG9ySG9zdCJ9LF8uSyhfLmdHLHtwYTooKT0+YigpP1tjKCldOltdfSwoKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRQbGF5ZXJDb250cm9sc1BsYXllckFjdGlvbkluZGljYXRvckFjdGlvbiJ9LF8uSyhfLk1ELHtpY29uOmIsY2xhc3NOYW1lOiJ5dFBsYXllckNvbnRyb2xzUGxheWVyQWN0aW9uSW5kaWNhdG9ySWNvbiJ9KSkpKX0sImVlIik7b1cuaWRvbUNvbXBhdD0hMDt2YXIgcFc9Xy5MKCh7RzphLFNtOmIscGxheWVyT3ZlcmxheVJlbmRlcmVyOmMsVnc6ZCxjbGFzc05hbWU6ZX0pPT57dmFyIGY9KCk9Pl8uQihiPy4oKT8ucGxheWVyQmFyQWN0aW9uQnV0dG9uLF8uVkwpO3JldHVybiBfLksoInBsYXllci10aW1lLWRpc3BsYXkiLHtjbGFzczpfLlAoInl0d1BsYXllclRpbWVEaXNwbGF5SG9zdCIsZSl9LF8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJ5dHdQbGF5ZXJUaW1lRGlzcGxheVRpbWVDaHVua3MiLHt5dHdQbGF5ZXJUaW1lRGlzcGxheVBpbGw6KCk9PiFkPy4oKSx5dHdQbGF5ZXJUaW1lRGlzcGxheUxpdmVEb3Q6KCk9PmEoKS5pc0xpdmUseXR3UGxheWVyVGltZURpc3BsYXlMaXZlSGVhZDooKT0+b1UoYSgpKX0pLCJvbjpjbGljayI6ZnVuY3Rpb24oaCl7aWYoYSgpLmlzTGl2ZSYmIW9VKGEoKSkpe2EoKS5IPy5zZWVrVG8oSW5maW5pdHkpO3ZhciBrPVVRKGEoKS5IKTtrJiZhKCkuUyh7dmlkZW9EdXJhdGlvbjprfSl9aC5zdG9wUHJvcGFnYXRpb24oKX19LApfLksoImRpdiIse2RpcjoibHRyIn0sXy5LKGJuYSx7RzphLHBsYXllck92ZXJsYXlSZW5kZXJlcjpjfSksXy5LKF8uTyx7QTooKT0+IW9VKGEoKSksdGhlbjooKT0+Xy5LKGNuYSx7RzphfSl9KSkpLF8uSyhfLk8se0E6KCk9Pnt2YXIgaD1fLkIoYj8uKCk/LnBsYXllckJhcixEUyk/Xy5CKGtUKGEoKSxfLkIoYj8uKCk/LnBsYXllckJhcixEUykpLGVUKT8udGl0bGU6dm9pZCAwLGs9ZigpPy50ZXh0O3JldHVybiBoPz9rfSx0aGVuOmg9Pl8uSyhkbmEse3RpdGxlOmgsYnV0dG9uOmYsRzphfSl9KSl9LCJmZSIpLGJuYT1fLkwoKHtHOmEscGxheWVyT3ZlcmxheVJlbmRlcmVyOmJ9KT0+e3ZhciBjPSgpPT5hKCkuaXNMaXZlP18uJE4ubG86Q1QoYSgpLnZhKTtyZXR1cm4gXy5LKCJzcGFuIix7Y2xhc3M6Inl0d1BsYXllclRpbWVEaXNwbGF5VGltZUVsYXBzZWQifSxfLksoInNwYW4iLHsiYXJpYS1oaWRkZW4iOiJ0cnVlIn0sXy5LKF8uTyx7QTooKT0+Yj8uKCk/LmxpdmVJbmRpY2F0b3JUZXh0LAp0aGVuOmQ9Pl8uSyhfLlYse3RleHQ6ZH0pLFc6KCk9Pl8uSyhfLklCLG51bGwsYyl9KSksXy5LKCJzcGFuIix7Y2xhc3M6Inl0d1BsYXllclRpbWVEaXNwbGF5U2NyZWVuUmVhZGVyT25seSJ9LCgpPT57aWYoYSgpLmlzTGl2ZSlyZXR1cm4gXy4kTi5sbzt2YXIgZD1QUih7c2Vjb25kczphKCkudmF9KTtyZXR1cm5gJHtfLiROLlZ0fSAke2R9YH0pKX0sImdlIiksY25hPV8uTCgoe0c6YX0pPT57dmFyIGI9KCk9PntpZihvVShhKCkpKXZhciBjPTA7ZWxzZXtjPU1hdGg7dmFyIGQ9Yy5yb3VuZCxlPWEoKTtjPWQuY2FsbChjLGUuaXNEcmFnZ2luZz9lLkNhOmUudmEpLU1hdGgucm91bmQoVVEoYSgpLkgpKX1yZXR1cm4gY307cmV0dXJuIF8uSyhfLklCLG51bGwsXy5LKCJzcGFuIix7Y2xhc3M6Inl0d1BsYXllclRpbWVEaXNwbGF5VGltZVNlY29uZCJ9KSxfLksoInNwYW4iLHtjbGFzczoieXR3UGxheWVyVGltZURpc3BsYXlUaW1lRGVsaW1pdGVyIiwiYXJpYS1oaWRkZW4iOiJ0cnVlIn0sCiIvIiksXy5LKCJzcGFuIix7Y2xhc3M6Xy5QKCJ5dHdQbGF5ZXJUaW1lRGlzcGxheVRpbWVTZWNvbmQiLCJ5dHdQbGF5ZXJUaW1lRGlzcGxheVRpbWVEdXJhdGlvbiIpfSxfLksoInNwYW4iLHsiYXJpYS1oaWRkZW4iOiJ0cnVlIn0sKCk9PmEoKS5pc0xpdmU/Q1QoYigpKTpDVChhKCkudmlkZW9EdXJhdGlvbikpLF8uSygic3BhbiIse2NsYXNzOiJ5dHdQbGF5ZXJUaW1lRGlzcGxheVNjcmVlblJlYWRlck9ubHkifSwoKT0+e2lmKGEoKS5pc0xpdmUpcmV0dXJuIENUKGIoKSk7dmFyIGM9UFIoe3NlY29uZHM6YSgpLnZpZGVvRHVyYXRpb259KTtyZXR1cm5gJHtfLiROLlV0fSAke2N9YH0pKSl9LCJoZSIpLGRuYT1fLkwoKHt0aXRsZTphLGJ1dHRvbjpiLEc6Y30pPT57ZnVuY3Rpb24gZChmKXtiPy4oKT8uY29tbWFuZCYmKF8uQUooYigpLmNvbW1hbmQse30sITEpLGYuc3RvcFByb3BhZ2F0aW9uKCkpfXZhciBlPV8uTigoKT0+YygpLmJhPy5FZSx2b2lkIDAsImpnMk9NYyIpO3JldHVybiBfLksoXy5PLAp7QTpiLHRoZW46Zj0+Xy5LKCJkaXYiLHtjbGFzczoieXR3UGxheWVyVGltZURpc3BsYXlQbGF5ZXJCYXJBY3Rpb25Db250YWluZXIifSxfLksoImJ1dHRvbiIse2NsYXNzOl8uUCgieXR3UGxheWVyVGltZURpc3BsYXlQaWxsIiwieXR3UGxheWVyVGltZURpc3BsYXlQbGF5ZXJCYXJCdXR0b24iKSwib246Y2xpY2siOmQsImFyaWEtbGFiZWwiOigpPT5fLmFOKGYoKS50ZXh0KX0sXy5LKF8uVix7dGV4dDphLHljOiEwfSksXy5LKF8uTyx7QTooKT0+IShfLngoIm13ZWJfdXNlX29ubHlfY2hhcHRlcl90aXRsZV9pbl9mdWxsc2NyZWVuIikmJmMoKS5pc0Z1bGxzY3JlZW4pLHRoZW46KCk9Pl8uSyhfLk1ELHtpY29uOiJDSEVWUk9OX1JJR0hUX0NBSVJPIixjbGFzc05hbWU6Inl0d1BsYXllclRpbWVEaXNwbGF5Q2hldnJvbiJ9KX0pKSksVzooKT0+Xy5LKCJkaXYiLHtjbGFzczpfLlAoInl0d1BsYXllclRpbWVEaXNwbGF5Q2hhcHRlclRleHQiLHt5dHdQbGF5ZXJUaW1lRGlzcGxheUZ1bGxzY3JlZW5Db250cm9sc0Fsd2F5c09uOmV9KX0sCl8uSyhfLlYse3RleHQ6YSx5YzohMH0pKX0pfSwiaWUiKTt2YXIgcVc9Y2xhc3N7Y29uc3RydWN0b3IoYSxiLGMsZCl7dGhpcy5nbj1hO3RoaXMubGlzdGVuZXJzPVtdO3RoaXMuY29udGV4dD1iO3RoaXMubz1kO3RoaXMudj1xVSh0aGlzLlVjPy5IKTt0aGlzLkQ9dGhpcy5TLmJpbmQodGhpcyk7dGhpcy5zdGF0ZT17Li4uZFQoKSwuLi5jfTthPXRoaXMudWQoKTtbdGhpcy5CLHRoaXMual09Xy5KKGEsdm9pZCAwLCJwM053cSIpfVMoYSl7aWYoIXFsYShhLHRoaXMuc3RhdGUpKXt0aGlzLnN0YXRlPXsuLi50aGlzLnN0YXRlLC4uLmF9O2E9Xy54KCJwbGF5ZXJfY29udHJvbHNfbG9nX2NyZWF0aW9uX2VuYWJsZWQiKTt2YXIgYj0tMTthJiYhcFUoKSYmKGI9KDAsXy5lbCkoKSk7YSYmXy5BcSgicGN1X3MiKTt0aGlzLmomJnRoaXMuaih0aGlzLnVkKCkpO2EmJihfLkFxKCJwY3Vfc2UiKSxfLkFxKCJwY3VfcnMiKSk7dGhpcy5nbih0aGlzLnVkKCkpO2EmJihfLkFxKCJwY3VfcmUiKSxwbGEoYiksXy5qZi5HYSgoKT0+e18uQXEoInBjdV9hcCIpfSwKOCkpfX11ZCgpe3ZhciBhPXRoaXMubz9xVSh0aGlzLm8oKSk6cVUodGhpcy5VYz8uSCk7cmV0dXJuey4uLnRoaXMuc3RhdGUsUzp0aGlzLkQsSDphLHRhOnRoaXMuY29udGV4dC50YSxUYzp0aGlzLmNvbnRleHQuVGMsR2M6dGhpcy5jb250ZXh0LkdjLGJhOnRoaXMuY29udGV4dC5iYX19Z2V0RGF0YSgpe3JldHVybiB0aGlzLlVjfX07dmFyIHJXPV8uTChhPT57ZnVuY3Rpb24gYihZKXtNPUguYW5pbWF0ZShbe29mZnNldDowLGVhc2luZzoiY3ViaWMtYmV6aWVyKDAuMjAsIDAuMDAsIDAuNjAsIDEuMDApIixvcGFjaXR5Oll9LHtvZmZzZXQ6MSxvcGFjaXR5OjF9XSx7ZHVyYXRpb246MjAwLGZpbGw6ImZvcndhcmRzIn0pO00uYWRkRXZlbnRMaXN0ZW5lcigiZmluaXNoIiwoKT0+e009dm9pZCAwO2UoKTtGPSJsaW5nZXJpbmcifSl9ZnVuY3Rpb24gYyhZLHBhPSExLG9hPSExKXt2YXIgVT1bXTtVLnB1c2goe29mZnNldDowLHRyYW5zZm9ybTpgdHJhbnNsYXRlWCgke0M9PT0tMT8yMDotMjB9cHgpYCxvcGFjaXR5OnBhPyIwIjoiMSJ9KTtwYSYmVS5wdXNoKHtvZmZzZXQ6LjUsb3BhY2l0eToiMSJ9KTtVLnB1c2goe29mZnNldDoxLHRyYW5zZm9ybToidHJhbnNsYXRlWCgwKSIsb3BhY2l0eToiMSJ9KTtwYT1ZLmFuaW1hdGUoVSx7ZHVyYXRpb246NDAwLGVhc2luZzoiY3ViaWMtYmV6aWVyKDAuMDUsIDAuMDAsIDAuMDAsIDEuMDApIn0pOwpZPVkucXVlcnlTZWxlY3RvcigicGF0aCIpO1U9W107dmFyIGhhPXtvZmZzZXQ6MCxkOkM9PT0tMT8ncGF0aCgiTSAxOCA0IEwgMTggMTYgTCAxOCAyOCIpJzoncGF0aCgiTSA0IDQgTCA0IDE2IEwgNCAyOCIpJ307b2EmJihoYS5maWx0ZXI9ImRyb3Atc2hhZG93KDAgMCAwLjVweCByZ2JhKDAsIDAsIDAsIDAuOCkpIik7VS5wdXNoKGhhKTtvYSYmVS5wdXNoKHtvZmZzZXQ6LjgsZmlsdGVyOiJkcm9wLXNoYWRvdygwIDAgMC41cHggcmdiYSgwLCAwLCAwLCAwLjgpKSJ9KTtoYT17b2Zmc2V0OjEsZDpDPT09LTE/J3BhdGgoIk0gMTggNCBMIDYgMTYgTCAxOCAyOCIpJzoncGF0aCgiTSA0IDQgTCAxNiAxNiBMIDQgMjgiKSd9O29hJiYoaGEuZmlsdGVyPSJkcm9wLXNoYWRvdygwIDAgMC41cHggcmdiYSgwLCAwLCAwLCAwKSkiKTtVLnB1c2goaGEpO1kuYW5pbWF0ZShVLHtkdXJhdGlvbjozMzMsZWFzaW5nOiJjdWJpYy1iZXppZXIoMC4wNSwgMC4wMCwgMC4wMCwgMS4wMCkiLGZpbGw6ImZvcndhcmRzIn0pOwpyZXR1cm4gcGF9ZnVuY3Rpb24gZCgpe3ZhciBZPUgucXVlcnlTZWxlY3RvcigiLnl0d1BsYXllclNlZWtPdmVybGF5QXJyb3dQZXJzaXN0ZW50IikuY2xvbmVOb2RlKCEwKTtZLmNsYXNzTGlzdC5hZGQoInl0d1BsYXllclNlZWtPdmVybGF5QXJyb3dBZGRpdGlvbmFsIik7WS5jbGFzc0xpc3QucmVtb3ZlKCJ5dHdQbGF5ZXJTZWVrT3ZlcmxheUFycm93UGVyc2lzdGVudCIpO0guYXBwZW5kQ2hpbGQoWSk7YyhZLCEwLCEwKS5hZGRFdmVudExpc3RlbmVyKCJmaW5pc2giLCgpPT57WS5yZW1vdmUoKX0pfWZ1bmN0aW9uIGUoKXtjbGVhclRpbWVvdXQoUik7Uj1zZXRUaW1lb3V0KCgpPT57ZigpfSxfLnNqKCJ3ZWJfcGxheWVyX3NlZWtfb3ZlcmxheV9saW5nZXJfZHVyYXRpb24iLDMwMCkpfWZ1bmN0aW9uIGYoWT0xLHBhPSEwKXtNPUguYW5pbWF0ZShbe29mZnNldDowLG9wYWNpdHk6WX0se29mZnNldDoxLG9wYWNpdHk6MH1dLHtkdXJhdGlvbjoyMDAsZmlsbDoiZm9yd2FyZHMiLGVhc2luZzoiY3ViaWMtYmV6aWVyKDAuMjAsIDAuMDAsIDAuNjAsIDEuMDApIn0pOwpwYSYmKE0uYWRkRXZlbnRMaXN0ZW5lcigiZmluaXNoIiwoKT0+e1M/LigpO009dm9pZCAwO2soKTtBKCExKX0pLEY9ImZhZGluZy1vdXQiKX1mdW5jdGlvbiBoKCl7aWYoIU0pcmV0dXJuIDA7dmFyIFk9TnVtYmVyKGdldENvbXB1dGVkU3R5bGUoSCkub3BhY2l0eSk7TS5jYW5jZWwoKTtNPXZvaWQgMDtyZXR1cm4gWX1mdW5jdGlvbiBrKCl7Rj0iaGlkZGVuIjtIPUM9dm9pZCAwO2NsZWFyVGltZW91dChSKX12YXIgbD1fLk4oKCk9PmEuRygpLkpkLHZvaWQgMCwicGRsbVliIiksbT1fLk4oKCk9PmEuRygpLktiLHZvaWQgMCwiYVBTOUoiKSxuPV8uTigoKT0+YS5HKCkuSCx2b2lkIDAsInh2QnJsZiIpLFtwLHJdPV8uSigiIix2b2lkIDAsIlZKdWd6ZCIpLFt0LHZdPV8uSigiIix2b2lkIDAsIllTS1NPZCIpLFt6LEVdPV8uSighMSx2b2lkIDAsIk9zbWluYyIpLEE9RSxGPSJoaWRkZW4iLEMsRyxELEgsUj0wLE0sUztfLm5FKCgpPT57aWYoRWxlbWVudC5wcm90b3R5cGUuYW5pbWF0ZSl7dmFyIFk9CmwoKTtpZighKG0oKTw9MXx8WT09PTApKXtBKCEwKTtpZihDJiZZIT09Qyl7bGV0IHBhPTE7TSYmKHBhPWgoKSk7ZihwYSwhMSk7aygpfUM9WTtIPUM9PT0tMT9HOkQ7aWYoRyYmRClpZihZPW4oKSxZPVk/LmlzUmVhZHk/LigpP1kuZ2V0Q3VycmVudFRpbWUoKTowLFk9Qz09PS0xJiZZPD0xMD8xMDoobSgpLTEpKjEwLFk9YCR7Qz09PS0xPyJcdTIyMTIiOiIrIn0gJHtZfWAsQz09PS0xP3IoWSk6dihZKSxGPT09ImhpZGRlbiJ8fEY9PT0iZmFkaW5nLW91dCIpWT0wLEY9PT0iZmFkaW5nLW91dCImJihZPWgoKSxkKCkpLGIoWSksRiE9PSJmYWRpbmctb3V0IiYmYyhILnF1ZXJ5U2VsZWN0b3IoIi55dHdQbGF5ZXJTZWVrT3ZlcmxheUFycm93UGVyc2lzdGVudCIpKSxGPSJmYWRpbmctaW4iO2Vsc2UgaWYoRj09PSJmYWRpbmctaW4ifHxGPT09ImxpbmdlcmluZyIpSC5xdWVyeVNlbGVjdG9yKCIueXR3UGxheWVyU2Vla092ZXJsYXlEdXJhdGlvbiIpLmFuaW1hdGUoW3tvZmZzZXQ6MCxlYXNpbmc6ImN1YmljLWJlemllcigwLjIwLCAwLjAwLCAwLjYwLCAxLjAwKSIsCnRyYW5zZm9ybToic2NhbGUoMSkifSx7b2Zmc2V0Oi42NCxlYXNpbmc6ImN1YmljLWJlemllcigwLjIwLCAwLjAwLCAwLjYwLCAxLjAwKSIsdHJhbnNmb3JtOmBzY2FsZSgke18uc2ooIndlYl9wbGF5ZXJfc2Vla19vdmVybGF5X2R1cmF0aW9uX2J1bXBfc2NhbGUiKXx8Ljl9KWB9LHtvZmZzZXQ6MSx0cmFuc2Zvcm06InNjYWxlKDEpIn1dLHtkdXJhdGlvbjoxODR9KSxkKCksRj09PSJsaW5nZXJpbmciJiZlKCl9fX0sImh6bnlEIik7Xy5ZdSgoKT0+e2goKTtrKCl9KTtyZXR1cm4gXy5LKCJ5dHctcGxheWVyLXNlZWstb3ZlcmxheSIse2NsYXNzOiJ5dHdQbGF5ZXJTZWVrT3ZlcmxheUhvc3QiLHN0eWxlOl8uSUUoe2Rpc3BsYXk6KCk9PnooKT8iYmxvY2siOiJub25lIn0pfSxfLksoImRpdiIse2NsYXNzOl8uUCgieXR3UGxheWVyU2Vla092ZXJsYXlBbmltYXRpb24iLCJ5dHdQbGF5ZXJTZWVrT3ZlcmxheUFuaW1hdGlvbkJhY2siKSxlbDpfLnJGKFk9PntHPVl9KX0sXy5LKCJkaXYiLAp7Y2xhc3M6Xy5QKCJ5dHdQbGF5ZXJTZWVrT3ZlcmxheUFycm93IiwieXR3UGxheWVyU2Vla092ZXJsYXlBcnJvd1BlcnNpc3RlbnQiKX0sXy5LKCJzdmciLHt2aWV3Qm94OiIwIDAgMjIgMzIiLHdpZHRoOiIyMiIsaGVpZ2h0OiIyNCIsY2xhc3M6Inl0d1BsYXllclNlZWtPdmVybGF5QXJyb3dTdmcifSxfLksoInBhdGgiLHtjbGFzczoieXR3UGxheWVyU2Vla092ZXJsYXlBcnJvd1BhdGgiLGQ6Ik0gMTggNCBMIDYgMTYgTCAxOCAyOCIsc3Ryb2tlOiJ3aGl0ZSIsInN0cm9rZS13aWR0aCI6IjQiLCJzdHJva2UtbGluZWNhcCI6InJvdW5kIixmaWxsOiJub25lIn0pKSksXy5LKCJkaXYiLHtjbGFzczoieXR3UGxheWVyU2Vla092ZXJsYXlEdXJhdGlvbiJ9LHApKSxfLksoImRpdiIse2NsYXNzOl8uUCgieXR3UGxheWVyU2Vla092ZXJsYXlBbmltYXRpb24iLCJ5dHdQbGF5ZXJTZWVrT3ZlcmxheUFuaW1hdGlvbkZvcndhcmQiKSxlbDpfLnJGKFk9PntEPVl9KX0sXy5LKCJkaXYiLHtjbGFzczoieXR3UGxheWVyU2Vla092ZXJsYXlEdXJhdGlvbiJ9LAp0KSxfLksoImRpdiIse2NsYXNzOl8uUCgieXR3UGxheWVyU2Vla092ZXJsYXlBcnJvdyIsInl0d1BsYXllclNlZWtPdmVybGF5QXJyb3dQZXJzaXN0ZW50Iil9LF8uSygic3ZnIix7dmlld0JveDoiMCAwIDIyIDMyIix3aWR0aDoiMjIiLGhlaWdodDoiMjQiLGNsYXNzOiJ5dHdQbGF5ZXJTZWVrT3ZlcmxheUFycm93U3ZnIn0sXy5LKCJwYXRoIix7Y2xhc3M6Inl0d1BsYXllclNlZWtPdmVybGF5QXJyb3dQYXRoIixkOiJNIDQgNCBMIDE2IDE2IEwgNCAyOCIsc3Ryb2tlOiJ3aGl0ZSIsInN0cm9rZS13aWR0aCI6IjQiLCJzdHJva2UtbGluZWNhcCI6InJvdW5kIixmaWxsOiJub25lIn0pKSkpKX0sImtlIik7dmFyIHRVO3ZhciBbZW5hLHNXXT1fLkooITEsdm9pZCAwLCJHTlczUyIpLFtDVSxEVV09Xy5KKCExLHZvaWQgMCwiR0FFa0oiKSxbdFcsdGxhXT1fLkoodm9pZCAwLHZvaWQgMCwiT1ZQMWVlIik7dmFyIEJVPTA7dmFyIEVVPXZvaWQgMDt2YXIgelU9MCxIVT0wLEdVPTAseVU9MCxBVT0hMSxGVT0wO3ZhciBOVTt2YXIgdVc9W3tyZWdpc3RlcjphPT57dmFyIGI9d2xhKGEpO2EoKS5IPy5hZGRFdmVudExpc3RlbmVyKCJvblZvbHVtZUNoYW5nZSIsYik7cmV0dXJuKCk9Pnt9fX0se3JlZ2lzdGVyOmE9Pnt2YXIgYj14bGEoYSk7YT1hKCkuSDthPy5hZGRFdmVudExpc3RlbmVyKCJjYXB0aW9uc2NoYW5nZWQiLGIpO2E/LmFkZEV2ZW50TGlzdGVuZXIoImNhcHRpb25zc2V0dGluZ3NjaGFuZ2VkIixiKTthPy5hZGRFdmVudExpc3RlbmVyKCJvbkNhcHRpb25zVHJhY2tMaXN0Q2hhbmdlZCIsYik7cmV0dXJuKCk9Pnt9fX0se3JlZ2lzdGVyOihhLGIpPT57Yj1CbGEoYSxiKTthKCkuSD8uYWRkRXZlbnRMaXN0ZW5lcigib25TdGF0ZUNoYW5nZSIsYik7cmV0dXJuKCk9Pnt9fX0se3JlZ2lzdGVyOmE9Pnt2YXIgYj1EbGEoYSk7YSgpLkg/LmFkZEV2ZW50TGlzdGVuZXIoIlNFRUtfQ09NUExFVEUiLGIpO3JldHVybigpPT57fX19LHtyZWdpc3RlcjphPT57dmFyIGI9UFUoYSk7YSgpLkg/LmFkZEV2ZW50TGlzdGVuZXIoIm9uVmlkZW9EYXRhQ2hhbmdlIiwKYik7cmV0dXJuKCk9Pnt9fX0se3JlZ2lzdGVyOihhLGIpPT57Yj1FbGEoYSxiKTthKCk/Lkg/LmFkZEV2ZW50TGlzdGVuZXIoIm9uVmlkZW9Qcm9ncmVzcyIsYik7cmV0dXJuKCk9Pnt9fX0se3JlZ2lzdGVyOmE9Pnt2YXIgYj1GbGEoYSk7YSgpLkg/LmFkZEV2ZW50TGlzdGVuZXIoIm9uTXV0ZWRBdXRvcGxheUNoYW5nZSIsYik7cmV0dXJuKCk9Pnt9fX0se3JlZ2lzdGVyOmE9Pnt2YXIgYj1IbGEoYSk7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImhhc2hjaGFuZ2UiLGIpO3JldHVybigpPT57d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoImhhc2hjaGFuZ2UiLGIpfX19LHtyZWdpc3RlcjphPT57dmFyIGI9SWxhKGEpO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJwb3BzdGF0ZSIsYik7cmV0dXJuKCk9Pnt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9wc3RhdGUiLGIpfX19LHtyZWdpc3RlcjphPT57dmFyIGI9R2xhKGEpO2EoKS5IPy5hZGRFdmVudExpc3RlbmVyKCJvbkZ1bGxzY3JlZW5DaGFuZ2UiLApiKTtyZXR1cm4oKT0+e319fSx7cmVnaXN0ZXI6YT0+e3ZhciBiPUpsYShhKTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigib3JpZW50YXRpb25jaGFuZ2UiLGIpO3JldHVybigpPT57d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm9yaWVudGF0aW9uY2hhbmdlIixiKX19fSx7cmVnaXN0ZXI6YT0+e3ZhciBiPUtsYShhKTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiZnVsbHNjcmVlbmVycm9yIixiKTtyZXR1cm4oKT0+e3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJmdWxsc2NyZWVuZXJyb3IiLGIpfX19LHtyZWdpc3RlcjooYSxiKT0+e3ZhciBjPUxsYShhLGIpO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJwbGF5ZXItYXV0b25hdi1wYXVzZSIsYyk7cmV0dXJuKCk9Pnt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigicGxheWVyLWF1dG9uYXYtcGF1c2UiLGMpfX19LHtyZWdpc3RlcjphPT57dmFyIGI9TWxhKGEpO3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJhdXRvbmF2LXRvZ2dsZS1jbGljayIsCmIpO3JldHVybigpPT57d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoImF1dG9uYXYtdG9nZ2xlLWNsaWNrIixiKX19fSx7cmVnaXN0ZXI6YT0+e3ZhciBiPU5sYShhKTthKCkuSD8uYWRkRXZlbnRMaXN0ZW5lcigib25Mb29wUmFuZ2VDaGFuZ2UiLGIpO3JldHVybigpPT57fX19LHtyZWdpc3RlcjphPT57aWYoIV8ueCgiZW5hYmxlX213ZWJfa2V5Ym9hcmRfc2hvcnRjdXRzIikpcmV0dXJuKCk9Pnt9O3ZhciBiPXpsYShhKTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsYik7cmV0dXJuKCk9Pnt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsYil9fX1dO3ZhciBWbGE9Xy5MKGE9Pnt2YXIgYj1fLk4oKCk9PmEuSCgpLHZvaWQgMCwicThXc0tmIiksYz1fLk4oKCk9PmEuZGF0YSgpLHZvaWQgMCwiazZVZVYiKSxkPV8uTigoKT0+e3ZhciBDPWEuY29udGV4dCgpO3JldHVybiBuZXcgcVcoKCk9Pnt9LEMse2F1dG9uYXZFbmFibGVkOkMudGEuZGUoKSxlYTohMH0sYil9LHZvaWQgMCwiT0F4SUpiIiksZT1fLk4oKCk9PigwLGQoKS5CKSgpLHZvaWQgMCwiVXUxUmkiKSxmPV8uTigoKT0+e3ZhciBDPWUoKTtyZXR1cm4gXy54KCJtd2ViX3BjX2xpdmVfZHZyX2tzIik/ITE6Qy5pc0xpdmUmJiFDLmlzTGl2ZUR2ckVuYWJsZWR9LHZvaWQgMCwiY3RVZzNkIiksaD1fLk4oKCk9Pnt2YXIgQz1mKCk7cmV0dXJuIHJVKCkmJiFDfSx2b2lkIDAsIm5KZGswYyIpLGs9Xy5OKCgpPT5jKCkucGxheWVyUmVzcG9uc2U/LnBsYXlhYmlsaXR5U3RhdHVzfHxjKCkuamI/LnByZXZpZXdQbGF5YWJpbGl0eVN0YXR1cyx2b2lkIDAsIkJWWEM5IiksbD1fLk4oKCk9PgplKCkuYmE/LlpoJiYkUyhlKCksaygpKSx2b2lkIDAsIk1Idkh3ZiIpLG09Xy5OKCgpPT5uVShlLGMoKS53YXRjaE5leHRSZXNwb25zZSksdm9pZCAwLCJjdHhVcyIpLG49Xy5OKCgpPT5tVShlLEJTKGMoKS53YXRjaE5leHRSZXNwb25zZSkpLHZvaWQgMCwiR0xrQlUiKSxwPV8uTigoKT0+e3ZhciBDPWwoKSxHPW0oKSxEPW4oKSxIPWUoKS5wbGF5ZXJTdGF0ZTtyZXR1cm4gQz8hMDpHfHxEPyExOkg9PT0wfSx2b2lkIDAsIlhFRXZCIikscj1fLnZFKCJidXR0b24iLEM9PntDJiZXUyhDLDI4NTcyLCFfLngoImVtYmVkc19jdWVkX292ZXJsYXlfdmVfa3MiKSl9KSx0PV8uTigoKT0+e3ZhciBDPWMoKTtyZXR1cm4oQz1fLkIoTlMoQy53YXRjaE5leHRSZXNwb25zZT8ucGxheWVyT3ZlcmxheXM/LnBsYXllck92ZXJsYXlSZW5kZXJlcixDLmpiPy5lbWJlZFByZXZpZXc/LnRodW1ibmFpbFByZXZpZXdSZW5kZXJlcik/LmNvbGxhcHNlZFJlbmRlcmVyLG1WKT8udGl0bGUpP18uYU4oQyk6dm9pZCAwfSwKdm9pZCAwLCJnc0dXeSIpLHY9Xy51RihDPT57dmFyIEc9ZSgpLEQ9YygpLEg9dCgpO3JldHVybiBHLmJhPy5oaWRlVmlkZW9JbmZvPyExOkQud2F0Y2hOZXh0UmVzcG9uc2V8fEQuamI/SCE9PXZvaWQgMDpDfSx7aW5pdGlhbDohMH0pLHo9Xy5OKCgpPT5lKCkuZWEsdm9pZCAwLCJUUjlLR2QiKSxFPV8udUYoQz0+e3ZhciBHPWMoKTtyZXR1cm4oRy5wbGF5ZXJSZXNwb25zZT8ub3ZlcmxheT8ucGxheWVyQ29udHJvbHNPdmVybGF5UmVuZGVyZXJ8fEcuamI/LmVtYmVkUHJldmlldz8udGh1bWJuYWlsUHJldmlld1JlbmRlcmVyKT8uY29udHJvbEJnSHRtbD8/Q30se2luaXRpYWw6dm9pZCAwfSksQT1bXTtfLm5FKCgpPT57UHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+e0EuZm9yRWFjaChDPT52b2lkIEMoKSk7QS5sZW5ndGg9MDt1Vy5mb3JFYWNoKEM9PntBLnB1c2goQy5yZWdpc3RlcigoKT0+ZCgpLnVkKCksKCk9PmMoKSkpfSl9KX0sIlkycVk3YiIpO18ubkUoKCk9Pnt2YXIgQz1kKCksCkc9YygpO0MuVWM9Rzt2YXIgRD1DLnY9PT1HLkg7Qy52PXFVKEcuSCk7RHx8Qy5qJiZDLmooQy51ZCgpKX0sImExNzhSZCIpO3ZhciBGPUM9PntDPUMuZGV0YWlsLmF1dG9uYXZFbmFibGVkO3ZhciBHPXthdXRvbmF2RW5hYmxlZDpDfTtDJiYoRy54Zj0hMCk7ZSgpLlMoRyl9O18ub0YoKCk9Pnt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicGZwLWF1dG9uYXYtdXBkYXRlIixGKX0pO18uWXUoKCk9PntBLmZvckVhY2goQz0+dm9pZCBDKCkpO0EubGVuZ3RoPTA7d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInBmcC1hdXRvbmF2LXVwZGF0ZSIsRil9KTtyZXR1cm4gXy5LKF8ubkcse0VmOltfLm9HKCRULGIpXX0sXy5LKCJwZnAtY29udHJvbHMiLHtjbGFzczoieXRQZnBDb250cm9sc0hvc3QiLCJvbjpjb250ZXh0bWVudSI6ZnVuY3Rpb24oQyl7YS5jb250ZXh0KCkudGEuU2o/LihDKTtDLnByZXZlbnREZWZhdWx0KCl9fSxfLksoR1Yse0c6ZSx0aHVtYm5haWxEZXRhaWxzOigpPT57dmFyIEM9CmMoKTtyZXR1cm4gQy5qYj8uZW1iZWRQcmV2aWV3Py50aHVtYm5haWxQcmV2aWV3UmVuZGVyZXI/LmRlZmF1bHRUaHVtYm5haWx8fEMucGxheWVyUmVzcG9uc2U/LnZpZGVvRGV0YWlscz8udGh1bWJuYWlsfX0pLF8uSygiZGl2Iix7Y2xhc3M6Inl0UGZwQ29udHJvbHNDcmVhdG9yRW5kc2NyZWVuQ29udGFpbmVyIiwib246Y2xpY2siOmZ1bmN0aW9uKEMpe0Muc3RvcFByb3BhZ2F0aW9uKCl9fSxfLksoXy5PLHtBOigpPT5jKCkucGxheWVyUmVzcG9uc2U/LmVuZHNjcmVlbj8uZW5kc2NyZWVuUmVuZGVyZXIsdGhlbjooKT0+Xy5LKGxXLHtlbmRzY3JlZW5SZW5kZXJlcjooKT0+YygpLnBsYXllclJlc3BvbnNlPy5lbmRzY3JlZW4/LmVuZHNjcmVlblJlbmRlcmVyLEc6ZX0pfSkpLF8uSygiZGl2Iix7aWQ6InBsYXllci1jb250cm9sLW92ZXJsYXkiLGNsYXNzOl8uUCgieXRQZnBDb250cm9sc092ZXJsYXkiLHt5dFBmcENvbnRyb2xzRmFkZUluOnp9KSwib246Y2xpY2siOmZ1bmN0aW9uKEMpe3AoKT8KKFhTKDI4NTcyKSxlKCkuYmE/LnVqJiZfLkRPKF8uaHgoKSwyNzI0MCxDLmN1cnJlbnRUYXJnZXQudmlzdWFsRWxlbWVudCksYigpLnBsYXlWaWRlbygpKTpLVShDLGUoKSl9LCJvbjpwb2ludGVybW92ZSI6ZnVuY3Rpb24oQyl7Qy5wb2ludGVyVHlwZT09PSJtb3VzZSImJihlKCkuUyh7ZWE6ITB9KSxjVChlKCkse0ljOiEwfSkpfX0sXy5LKF8uTyx7QTp2LHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0UGZwQ29udHJvbHNHcmFkaWVudFRvcCJ9LF8uSyhfLk8se0E6dCx0aGVuOigpPT5fLksoImgyIix7Y2xhc3M6Inl0UGZwQ29udHJvbHNWaWRlb1RpdGxlIn0sdCl9KSl9KSxfLksob1cse2plOigpPT5lKCkuamV9KSxfLksoXy5PLHtBOnAsdGhlbjooKT0+Xy5LKCJidXR0b24iLHtjbGFzczoieXRQZnBDb250cm9sc0xhcmdlUGxheUJ1dHRvbiIsZWw6ciwiYXJpYS1sYWJlbCI6Xy4kTi5QZyx0aXRsZTpfLiROLlBnfSxfLksoInN2ZyIse2hlaWdodDoiMTAwJSIsdmVyc2lvbjoiMS4xIiwKdmlld0JveDoiMCAwIDYwIDYwIix3aWR0aDoiMTAwJSJ9LF8uSygicGF0aCIse2NsYXNzOiJ5dFBmcENvbnRyb2xzTGFyZ2VQbGF5QnV0dG9uSWNvbkJnIixkOiJNMzAsMEEzMCwzMCwwLDEsMCw2MCwzMCwzMCwzMCwwLDAsMCwzMCwwWiIsZmlsbDooKT0+RSgpPz8iIzFmMWYxZiJ9KSxfLksoInBhdGgiLHtkOiJNMjEsNDEuNjVWMThMNDMuNywyOS44NVoiLGZpbGw6IiNmZmYifSkpKX0pLF8uSyhabWEse0c6ZSxVYzpjfSksXy5LKGFuYSx7RzplLHdhdGNoTmV4dFJlc3BvbnNlOigpPT5jKCkud2F0Y2hOZXh0UmVzcG9uc2UsVXg6bixjbGFzc05hbWU6Inl0UGZwQ29udHJvbHNWaWRlb1dhbGxFbmRzY3JlZW4ifSksXy5LKFltYSx7SDpiLEc6ZSx3YXRjaE5leHRSZXNwb25zZTooKT0+YygpLndhdGNoTmV4dFJlc3BvbnNlLGNsYXNzTmFtZToieXRQZnBDb250cm9sc0F1dG9uYXYifSksXy5LKF8uTyx7QTooKT0+IWwoKSx0aGVuOigpPT5fLksoXy5JQixudWxsLF8uSyhXVix7RzplfSksCl8uSyhWVix7Z2Y6ZSxJYjohMX0pLF8uSyhYVix7RzplLEZkOi0xLGNsYXNzTmFtZToieXRQZnBDb250cm9sc0hpZGRlblNlZWtCdXR0b24ifSksXy5LKFhWLHtHOmUsRmQ6MSxjbGFzc05hbWU6Inl0UGZwQ29udHJvbHNIaWRkZW5TZWVrQnV0dG9uIn0pLF8uSyhfLk8se0E6aCx0aGVuOigpPT5fLksoclcse0c6ZX0pfSksXy5LKGZuYSx7SDpiLEc6ZSxVYzpjLEZ6OkUsZGlzYWJsZVNjcnViYmluZzpmfSkpfSkpKSl9LCJvZSIpLGZuYT1fLkwoKHtIOmEsRzpiLFVjOmMsRno6ZCxkaXNhYmxlU2NydWJiaW5nOmV9KT0+e2Z1bmN0aW9uIGYocil7ci5zdG9wUHJvcGFnYXRpb24oKX12YXIgaD1fLk4oKCk9PiFiKCkuYmE/Lm5oLHZvaWQgMCwicEZ0RFhiIiksaz1fLk4oKCk9PiFiKCkuYmE/LmlxLHZvaWQgMCwidjRYNXNlIiksbD1fLk4oKCk9PmMoKS5wbGF5ZXJPdmVybGF5UmVuZGVyZXIsdm9pZCAwLCJqTGhoV2MiKSxtPV8uTigoKT0+R1MobCgpKSx2b2lkIDAsInM2N3hTYiIpLG49Xy5OKCgpPT4KRVMobCgpKSx2b2lkIDAsInBDaWF1IikscD1fLk4oKCk9PiFiKCkuYmE/LnpyLHZvaWQgMCwic3Z1eEIiKTtyZXR1cm4gXy5LKF8uTyx7QTpoLHRoZW46KCk9Pl8uSyhfLklCLG51bGwsXy5LKCJkaXYiLHtjbGFzczoieXRQZnBDb250cm9sc1Byb2dyZXNzQmFyQ29udGFpbmVyIn0sXy5LKENWLHtMYjpiLGhmOm0sY29uZmlnOigpPT4oe3Bvc2l0aW9uOjEsS2Y6ITEsSW46cCgpLFJhOm4oKSxkaXNhYmxlU2NydWJiaW5nOmUoKSxZbzooKT0+e2JUKCl9LEZuOigpPT57Y1QoYigpLHtJYzohMH0pfX0pfSkpLF8uSygiZGl2Iix7Y2xhc3M6Inl0UGZwQ29udHJvbHNCb3R0b21CYXIiLHN0eWxlOl8uSUUoeyJiYWNrZ3JvdW5kLWNvbG9yIjpkfSksIm9uOmNsaWNrIjpmfSxfLksoImRpdiIse2NsYXNzOiJ5dFBmcENvbnRyb2xzTGVmdENvbnRyb2xzIn0sXy5LKF8uTyx7QTooKT0+YigpLnBsYXllclN0YXRlPT09MCx0aGVuOigpPT5fLksoYVcse0c6Yn0pLFc6KCk9Pl8uSygkVix7RzpiLHlzOiEwfSl9KSwKXy5LKEhWLHtvcmllbnRhdGlvbjoiaG9yaXpvbnRhbF9yaWdodCIsSDphLER2OiEwLENwOl8uQkt8fF8uR0ssYmo6ITAsY2xhc3NOYW1lOiJ5dFBmcENvbnRyb2xzVm9sdW1lQ29udHJvbHMifSksXy5LKHBXLHtHOmIscGxheWVyT3ZlcmxheVJlbmRlcmVyOmwsVnc6ITAsY2xhc3NOYW1lOiJ5dFBmcENvbnRyb2xzVGltZURpc3BsYXkifSkpLF8uSygiZGl2Iix7Y2xhc3M6Inl0UGZwQ29udHJvbHNSaWdodENvbnRyb2xzIn0sXy5LKGRXLHtnZjpiLFZyOiEwLGNsYXNzTmFtZToieXRQZnBDb250cm9sc0NhcHRpb25zQnV0dG9uIn0pLF8uSyhiVyx7RzpiLGNsYXNzTmFtZToieXRQZnBDb250cm9sc1NldHRpbmdzQnV0dG9uIn0pLF8uSyhfLk8se0E6ayx0aGVuOigpPT5fLksoWlYse0c6Yn0pfSkpKSl9KX0sInBlIik7dmFyIGduYT1fLkwoKHtkYXRhOmF9KT0+Xy5LKCJ5dC1lbWJlZHMtaW5mby1wYW5lbC1kZXRhaWxzLXZpZXctbW9kZWwiLHtjbGFzczoieXRFbWJlZHNJbmZvUGFuZWxEZXRhaWxzVmlld01vZGVsSG9zdCJ9LF8uSyhfLlYse2NsYXNzTmFtZToieXRFbWJlZHNJbmZvUGFuZWxEZXRhaWxzVmlld01vZGVsQm9keVRleHQiLHRleHQ6KCk9PmEoKS5ib2R5VGV4dH0pLF8uSyhfLmdHLHtwYTooKT0+YSgpLmN0YUJ1dHRvbnN8fFtdfSxiPT4oYj0oYj1fLkIoYixhbWEpKT9fLkIoe2xpc3RJdGVtVmlld01vZGVsOnt0aXRsZTp7Y29udGVudDpiLmJvZHlUZXh0Py5jb250ZW50fSxsZWFkaW5nSW1hZ2U6e3NvdXJjZXM6W3tjbGllbnRSZXNvdXJjZTp7aW1hZ2VOYW1lOmI/Lmljb24/Lmljb25UeXBlfX1dfSxyZW5kZXJlckNvbnRleHQ6e2NvbW1hbmRDb250ZXh0OntvblRhcDpiPy5vblRhcH19fX0sXy5aQyk6dm9pZCAwKT9fLksoXy5DRCx7ZGF0YTpifSk6bnVsbCkpLCJxZSIpO3ZhciBobmE9Xy5MKCh7ZGF0YTphLG9uQ2xpY2s6Yn0pPT5fLksoInl0LWVtYmVkcy1pbmZvLXBhbmVsLW92ZXJ2aWV3LXZpZXctbW9kZWwiLG51bGwsXy5LKCJidXR0b24iLHsib246Y2xpY2siOmIsY2xhc3M6Inl0bUVtYmVkc0luZm9QYW5lbFJlbmRlcmVyQnV0dG9uIn0sXy5LKF8uTyx7QTooKT0+YSgpLmhlYWRlckljb24/Lmljb25UeXBlLHRoZW46KCk9Pl8uSygic3BhbiIsbnVsbCxfLksoXy5NRCx7aWNvbjooKT0+YSgpLmhlYWRlckljb24/Lmljb25UeXBlfSkpfSksXy5LKCJkaXYiLHtjbGFzczoieXRtRW1iZWRzSW5mb1BhbmVsUmVuZGVyZXJUZXh0In0sXy5LKF8uVix7dGV4dDooKT0+YSgpLnRpdGxlfSksXy5LKF8uVix7dGV4dDooKT0+KHtjb250ZW50OmEoKS50aXRsZSYmYSgpLmJvZHlUZXh0PyIgXHUyMDIyICI6IiJ9KX0pLF8uSyhfLlYse3RleHQ6KCk9PmEoKS5ib2R5VGV4dH0pKSkpLCJyZSIpO3ZhciB2Vz1fLkwoKHtkYXRhOmEscHJvcHM6Yn0pPT57ZnVuY3Rpb24gYyhkKXt2YXIgZT1hKCkuaW5mb1BhbmVsRGV0YWlsc1ZpZXdNb2RlbDtpZihlKXt2YXIgZj17fTtlLnRpdGxlPy5jb250ZW50JiYoZi5oZWFkZXJUaXRsZT1lLnRpdGxlLmNvbnRlbnQpO18ueU4oey4uLmYsR2I6KCk9Pl8uSyhnbmEse2RhdGE6ZX0pLEhhOiEwfSl9ZC5zdG9wUHJvcGFnYXRpb24oKX1yZXR1cm4gXy5LKCJ5dG0tZW1iZWRzLWluZm8tcGFuZWwtcmVuZGVyZXIiLHtjbGFzczpfLlAoInl0bUVtYmVkc0luZm9QYW5lbFJlbmRlcmVySG9zdCIse3l0bUVtYmVkc0luZm9QYW5lbFJlbmRlcmVySG9zdEF1dG9oaWRlOigpPT5iKCkucGxheWVyU3RhdGU9PT0xLHl0bUVtYmVkc0luZm9QYW5lbFJlbmRlcmVySG9zdFRvcENvbnRyb2xzU3RhY2tlZEluUG9ydHJhaXQ6KCk9PiEkUyhiKCkpJiYhYigpLmJhPy5oaWRlVmlkZW9JbmZvJiYhYigpLmJhPy5uaH0pLHN0eWxlOl8uSUUoeyJhbmltYXRpb24tZGVsYXkiOigpPT4KYCR7YSgpLmR1cmF0aW9uTXN8fDFFNH1tc2B9KX0sXy5LKF8uTyx7QTooKT0+YSgpLmluZm9QYW5lbE92ZXJ2aWV3Vmlld01vZGVsLHRoZW46ZD0+Xy5LKGhuYSx7ZGF0YTpkLG9uQ2xpY2s6Y30pfSkpfSwic2UiKTt2Vy5pZG9tQ29tcGF0PSEwO3ZhciB3Vz1fLkwoKHtHOmF9KT0+e3ZhciBbYixjXT1fLkooImhpZGRlbiIsdm9pZCAwLCJTQmhiSGUiKSxkLGUsW2YsaF09Xy5KKCExLHZvaWQgMCwiSGc3eG5mIiksW2ssbF09Xy5KKCExLHZvaWQgMCwibktIbFplIik7Xy5VSigoKT0+e3RXKCk9PT12b2lkIDAmJnVsYSgpO2U9c2V0VGltZW91dCgoKT0+e3RXKCkmJm0oITApO2woITApfSwyRTMpfSk7Xy5ZdSgoKT0+e20oITEpO2NsZWFyVGltZW91dChlKTtjbGVhclRpbWVvdXQoZCl9KTtfLm5FKCgpPT57Q1UoKSYmZigpJiYobSghMSksc1coITApKTshdFcoKSYmZigpJiZtKCExKTt0VygpJiYhZW5hKCkmJiFmKCkmJmsoKSYmbSghMCl9LCJWQ0ZCSWIiKTt2YXIgbT1uPT57aChuKTthKCkuSD8uc2V0QXV0b2Nyb3BFbmFibGVkKG4pO2NsZWFyVGltZW91dChkKTtuPyhjKCJ2aXNpYmxlIiksZD1zZXRUaW1lb3V0KCgpPT57YygiIil9LDNFMykpOihjKCIiKSxkPXNldFRpbWVvdXQoKCk9PntjKCJoaWRkZW4iKX0sM0UzKSl9O3JldHVybiBfLksoImRpdiIsCntjbGFzczpfLlAoInl0QXV0b2Nyb3BCdXR0b25Ib3N0Iix7eXRBdXRvY3JvcEJ1dHRvblZpc2libGU6KCk9PmIoKT09PSJ2aXNpYmxlIix5dEF1dG9jcm9wQnV0dG9uSGlkZGVuOigpPT5iKCk9PT0iaGlkZGVuIn0pfSxfLksoXy5PLHtBOmYsdGhlbjooKT0+Xy5LKF8ucE8se2RhdGE6e3N0eWxlOiJTVFlMRV9MSUdIVF9URVhUIixzaXplOiJTSVpFX0RFRkFVTFQiLHRleHQ6e3J1bnM6W3t0ZXh0Ol8uJE4uUHN9XX19LGNsYXNzTmFtZToieXRBdXRvY3JvcEJ1dHRvbkF1dG9Dcm9wQnV0dG9uIixwcmV2ZW50RGVmYXVsdDohMCxzdG9wUHJvcGFnYXRpb246ITAsdGc6KCk9PnttKCFmKCkpO3NXKCFmKCkpfX0pLFc6KCk9Pl8uSyhfLnBPLHtkYXRhOntzdHlsZToiU1RZTEVfTElHSFRfVEVYVCIsc2l6ZToiU0laRV9ERUZBVUxUIix0ZXh0OntydW5zOlt7dGV4dDoiMTAwJSJ9XX19LGNsYXNzTmFtZToieXRBdXRvY3JvcEJ1dHRvbkF1dG9Dcm9wQnV0dG9uIixwcmV2ZW50RGVmYXVsdDohMCwKc3RvcFByb3BhZ2F0aW9uOiEwLHRnOigpPT57bSghZigpKTtzVyghZigpKX19KX0pKX0sInVlIik7d1cuaWRvbUNvbXBhdD0hMDt2YXIgeFc9Xy5MKCh7ZGF0YTphLEZlOmJ9KT0+Xy5LKCJ5dG0tZW5kc2NyZWVuLXZpZGVvLXJlbmRlcmVyIixudWxsLF8uSyhfLmZqYSx7ZGF0YTooKT0+KHt0aHVtYm5haWw6YSgpLnRodW1ibmFpbCx0aHVtYm5haWxPdmVybGF5czphKCkudGh1bWJuYWlsT3ZlcmxheXMsdmlkZW9JZDphKCkudmlkZW9JZCxsZW5ndGhUZXh0OmEoKS5sZW5ndGhUZXh0LHB1Ymxpc2hlZFRpbWVUZXh0OmEoKS5wdWJsaXNoZWRUaW1lVGV4dCxuYXZpZ2F0aW9uRW5kcG9pbnQ6YSgpLm5hdmlnYXRpb25FbmRwb2ludCxoZWFkbGluZTphKCkudGl0bGV9KSxGZTpifSkpLCJ2ZSIpO3hXLmlkb21Db21wYXQ9ITA7dmFyIHpXPV8uTCgoe3dhdGNoTmV4dFJlc3BvbnNlOmF9KT0+Xy5LKCJkaXYiLHtjbGFzczoieXRGdWxsc2NyZWVuVmlkZW9SZWNvbW1lbmRhdGlvbnNIb3N0IixpZG9tS2V5OiJmdWxsc2NyZWVuLXJlY29tbWVuZGF0aW9ucy13cmFwcGVyIn0sXy5LKF8uZ0cse3BhOigpPT5NUyhhPy4oKSl9LGI9Pl8uSyh5Vyx7dmlkZW86Yn0pKSksIndlIik7elcuaWRvbUNvbXBhdD0hMDt2YXIgeVc9Xy5MKCh7dmlkZW86YX0pPT5fLksoImRpdiIse2NsYXNzOiJ5dEZ1bGxzY3JlZW5WaWRlb1JlY29tbWVuZGF0aW9uc1JlY29tbWVuZGF0aW9uIn0sXy5LKF8uVyx7ZGF0YTphfSx7ZW5kU2NyZWVuVmlkZW9SZW5kZXJlcjooe2RhdGE6Yn0pPT5fLksoeFcse2RhdGE6YixGZTohMH0pfSkpLCJ4ZSIpO3lXLmlkb21Db21wYXQ9ITA7dmFyIEJXPV8uTChhPT5fLksoInBsYXllci1mdWxsc2NyZWVuLXRvcC1jb250cm9scyIse2NsYXNzOiJ5dHdQbGF5ZXJGdWxsc2NyZWVuVG9wQ29udHJvbHNIb3N0IixzdHlsZTpfLklFKHt2aXNpYmlsaXR5OigpPT5hLkcoKS5OYT8idmlzaWJsZSI6ImhpZGRlbiJ9KX0sXy5LKCJoMiIse2NsYXNzOiJ5dHdQbGF5ZXJGdWxsc2NyZWVuVG9wQ29udHJvbHNGdWxsc2NyZWVuQ29udHJvbHNWaWRlb1RpdGxlIn0sXy5LKF8uTyx7QTooKT0+YS53YXRjaE5leHRSZXNwb25zZT8uKCk/LnBsYXllck92ZXJsYXlzPy5wbGF5ZXJPdmVybGF5UmVuZGVyZXI/LnZpZGVvRGV0YWlscz8ucGxheWVyT3ZlcmxheVZpZGVvRGV0YWlsc1JlbmRlcmVyPy50aXRsZSx0aGVuOmI9Pl8uSyhfLlYse3RleHQ6Yn0pfSkpLF8uSyhBVyx7RzphLkd9KSksInllIik7QlcuaWRvbUNvbXBhdD0hMDsKdmFyIEFXPV8uTCgoe0c6YX0pPT5fLksoImRpdiIse2NsYXNzOiJ5dHdQbGF5ZXJGdWxsc2NyZWVuVG9wQ29udHJvbHNGdWxsc2NyZWVuQ2xvc2VCdXR0b25XcmFwcGVyIn0sXy5LKF8ucE8se2RhdGE6e3N0eWxlOiJTVFlMRV9MSUdIVF9URVhUIixzaXplOiJTSVpFX0RFRkFVTFQiLGljb246e2ljb25UeXBlOiJDTE9TRSJ9LGFjY2Vzc2liaWxpdHk6e2xhYmVsOiJDbG9zZSJ9LGFjY2Vzc2liaWxpdHlEYXRhOnthY2Nlc3NpYmlsaXR5RGF0YTp7bGFiZWw6IkNsb3NlIn19fSxwcmV2ZW50RGVmYXVsdDohMCxzdG9wUHJvcGFnYXRpb246ITAsdGc6KCk9PnthKCkuUyh7TmE6ITF9KTtfLk1PKCIuZnVsbHNjcmVlbi1tb3JlLXZpZGVvcy1lbmRwb2ludCIpO2NUKGEoKSl9fSkpLCJ6ZSIpO0FXLmlkb21Db21wYXQ9ITA7dmFyIENXPV8uTChhPT57dmFyIGI9KCk9PmEuRygpLmlzRnVsbHNjcmVlbnx8YS5HKCkuYmE/LkVlLGM9KCk9Pnt2YXIgZj1hLkcoKTtyZXR1cm4gXy5hTCgiZnVsbHNjcmVlbi1jb250cm9scyIse2V4cGFuZGVkOmYuTmEsInN0eWxlLXJlY29tbWVuZGF0aW9ucy1pbi1wb3J0cmFpdCI6Zi5iYT8uRWV8fF8ueCgibXdlYl9lbmFibGVfcG9ydHJhaXRfZnVsbHNjcmVlbl9hY3Rpb25zIil9KX0sZD0oKT0+e3ZhciBmPWEuRygpO3JldHVybmAKICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCR7Zi5KZn1weCk7CiAgICAgIHRyYW5zaXRpb246ICR7Zi5XZD8ibm9uZSI6InRyYW5zZm9ybSAwLjJzIGVhc2UsIGJvdHRvbSAwLjJzIGVhc2UifTsKICAgICAgdmlzaWJpbGl0eTogJHtmLkpmfHxmLk5hPyJ2aXNpYmxlIjoiaW5oZXJpdCJ9OwogICAgICBwb2ludGVyLWV2ZW50czogICR7Zi5OYT8iYWxsIjoibm9uZSJ9OwogICAgYH0sZT0oKT0+Xy54KCJ3ZWJfZW5hYmxlX3NtYXJ0X3pvb20iKSYmYS5hdXRvY3JvcENvbmZpZz8uKCk7cmV0dXJuIF8uSygicGxheWVyLWZ1bGxzY3JlZW4tY29udHJvbHMiLHtoaWRkZW46IWIsY2xhc3M6Inl0d1BsYXllckZ1bGxzY3JlZW5Db250cm9sc0hvc3QifSxfLksoXy5PLHtBOmIsdGhlbjooKT0+Xy5LKF8uSUIsbnVsbCxfLksoQlcse0c6YS5HLHdhdGNoTmV4dFJlc3BvbnNlOmEud2F0Y2hOZXh0UmVzcG9uc2V9KSxfLksoXy5PLHtBOmUsdGhlbjooKT0+Xy5LKHdXLHtHOmEuR30pfSksXy5LKEtWLHtHOmEuRyx3YXRjaE5leHRSZXNwb25zZTphLndhdGNoTmV4dFJlc3BvbnNlLHRodW1ibmFpbFByZXZpZXdSZW5kZXJlcjphLnRodW1ibmFpbFByZXZpZXdSZW5kZXJlcn0pLF8uSygiZGl2Iix7Y2xhc3M6YyxzdHlsZTpkfSxfLksoelcse3dhdGNoTmV4dFJlc3BvbnNlOmEud2F0Y2hOZXh0UmVzcG9uc2V9KSkpfSkpfSwiQWUiKTtDVy5pZG9tQ29tcGF0PSEwO3ZhciBEVz1fLkwoKHtkYXRhOmF9KT0+e3ZhciBiPV8udUUoInl0bS1wYWlkLWNvbnRlbnQtb3ZlcmxheS1yZW5kZXJlciIpO3JldHVybiBfLksoInl0bS1wYWlkLWNvbnRlbnQtb3ZlcmxheS1yZW5kZXJlciIse2NsYXNzOiJ5dG1QYWlkQ29udGVudE92ZXJsYXlIb3N0IixlbDpiLCJvbjphbmltYXRpb25lbmQiOmZ1bmN0aW9uKGMpe2IudmFsdWUuY2xhc3NMaXN0LmFkZCgieXRtUGFpZENvbnRlbnRPdmVybGF5SGlkZGVuIik7Yy5zdG9wUHJvcGFnYXRpb24oKX19LF8uSyhfLm5ILHtjb21tYW5kOigpPT5hKCkubmF2aWdhdGlvbkVuZHBvaW50LGNsYXNzTmFtZToieXRtUGFpZENvbnRlbnRPdmVybGF5TGluayJ9LF8uSyhfLk8se0E6KCk9PmEoKS5pY29uPy5pY29uVHlwZSx0aGVuOigpPT5fLksoInNwYW4iLG51bGwsXy5LKF8uTUQse2ljb246KCk9PmEoKS5pY29uPy5pY29uVHlwZX0pKX0pLF8uSygiZGl2Iix7Y2xhc3M6Inl0bVBhaWRDb250ZW50T3ZlcmxheVRleHQifSxfLksoXy5WLAp7dGV4dDooKT0+YSgpLnRleHR9KSksXy5LKF8uTyx7QTooKT0+YSgpLm5hdmlnYXRpb25FbmRwb2ludCx0aGVuOigpPT5fLksoXy5NRCx7aWNvbjoiQ0hFVlJPTl9SSUdIVCJ9KX0pKSl9LCJCZSIpO0RXLmlkb21Db21wYXQ9ITA7dmFyIEVXPV8uTChhPT57dmFyIGI9KCk9PmEuRygpLkg/LmdldFNpemU/LigpPy53aWR0aDtyZXR1cm4gXy5LKCJwbGF5ZXItYm90dG9tLWNvbnRyb2xzIix7Y2xhc3M6Xy5QKCJ5dHdQbGF5ZXJCb3R0b21Db250cm9sc0hvc3QiLHsiZGVsaGktcGxheWVyIjpfLngoIm13ZWJfd2F0Y2hfZGVsaGlfcGxheWVyIil9KX0sXy5LKCJkaXYiLHtjbGFzczoicGxheWVyLWNvbnRyb2xzLWJvdHRvbSBwbGF5ZXItY29udHJvbHMtYm90dG9tLWxlZnQifSxfLksoXy5PLHtBOigpPT4hKGIoKSYmYigpPDMyMCksdGhlbjooKT0+Xy5LKHBXLHtHOmEuRyxTbTphLlNtLHBsYXllck92ZXJsYXlSZW5kZXJlcjphLnBsYXllck92ZXJsYXlSZW5kZXJlcn0pfSkpLF8uSygiZGl2Iix7Y2xhc3M6Xy5QKCJwbGF5ZXItY29udHJvbHMtYm90dG9tIiwicGxheWVyLWNvbnRyb2xzLWJvdHRvbS1yaWdodCIpfSxfLksoXy5PLHtBOigpPT4hKGEuRygpLmJhPy5pcXx8YigpJiZiKCk8MjQwKSx0aGVuOigpPT5fLksoImRpdiIsCntjbGFzczoieXR3UGxheWVyQm90dG9tQ29udHJvbHNGdWxsc2NyZWVuQnV0dG9uV3JhcHBlciJ9LF8uSyhaVix7RzphLkd9KSl9KSkpfSwiQ2UiKTtFVy5pZG9tQ29tcGF0PSEwO3ZhciBGVz1fLkwoYT0+e3ZhciB7RzpiLHdhdGNoTmV4dFJlc3BvbnNlOmN9PV8uREMoYSx7d2F0Y2hOZXh0UmVzcG9uc2U6dm9pZCAwfSk7cmV0dXJuIF8uSyhfLk8se0E6KCk9PkhTKGIoKSxBUyhjKCkpKSx0aGVuOigpPT5fLksoInBsYXllci1lbmRzY3JlZW4iLHtjbGFzczoieXR3UGxheWVyRW5kc2NyZWVuSG9zdCJ9LF8uSygiZGl2Iix7Y2xhc3M6Inl0d1BsYXllckVuZHNjcmVlbkNvbnRhaW5lciJ9LF8uSygiZGl2Iix7aWQ6InBsYXllci1lbmRzY3JlZW4iLGNsYXNzOiJ5dHdQbGF5ZXJFbmRzY3JlZW5QbGF5ZXJFbmRzY3JlZW4iLCJkYXRhLWhhcy10aW1lci1jb3VudGRvd24iOiEwfSxfLksoaW5hLHtwcm9wczpiLHBsYXllck92ZXJsYXlBdXRvcGxheVJlbmRlcmVyOigpPT5CUyhjKCkpfSksXy5LKGpuYSx7cHJvcHM6YixwbGF5ZXJPdmVybGF5QXV0b3BsYXlSZW5kZXJlcjooKT0+QlMoYygpKX0pLF8uSyhrbmEse3Byb3BzOmIscGxheWVyT3ZlcmxheUF1dG9wbGF5UmVuZGVyZXI6KCk9PgpCUyhjKCkpfSkpKSl9KX0sIkRlIik7RlcuaWRvbUNvbXBhdD0hMDsKdmFyIGluYT1fLkwoYT0+Xy5LKCJkaXYiLHtjbGFzczoieXR3UGxheWVyRW5kc2NyZWVuVG9wUGFuZWwifSxfLksobG5hLHsuLi5hfSksXy5LKG1uYSx7Li4uYX0pKSwiRWUiKSxsbmE9Xy5MKGE9Pnt2YXIge3Byb3BzOmIscGxheWVyT3ZlcmxheUF1dG9wbGF5UmVuZGVyZXI6Y309Xy5EQyhhLHtwbGF5ZXJPdmVybGF5QXV0b3BsYXlSZW5kZXJlcjp2b2lkIDB9KSxbZCxlXT1fLiROLk9zLnNwbGl0KCJzZWNvbmRzX3BsYWNlaG9sZGVyIik7cmV0dXJuIF8uSygiZGl2Iix7Y2xhc3M6Inl0d1BsYXllckVuZHNjcmVlbkhlYWRlciIscm9sZToidGV4dCJ9LF8uSyhfLkVFLG51bGwsXy5LKF8uQ0Use3doZW46KCk9PmIoKS56ZiYmYygpfSwoKT0+Xy5LKF8uVix7dGV4dDooKT0+YygpPy5wYXVzZVRleHR9KSksXy5LKF8uREUsbnVsbCwoKT0+Xy5LKCJzcGFuIix7aWQ6InVwbmV4dC1pbi1tZXNzYWdlIn0sZCxfLksobm5hLHsuLi5hfSksZSkpKSl9LCJGZSIpLG5uYT1fLkwoYT0+e3ZhciBiPQphLnByb3BzO3JldHVybiBfLksoInNwYW4iLHtjbGFzczoieXR3UGxheWVyRW5kc2NyZWVuQ291bnRkb3duTnVtYmVyIiwiYXJpYS1oaWRkZW4iOiEwfSwoKT0+YigpLnlmKX0sIkdlIiksbW5hPV8uTChhPT57dmFyIHtwbGF5ZXJPdmVybGF5QXV0b3BsYXlSZW5kZXJlcjpifT1fLkRDKGEse3BsYXllck92ZXJsYXlBdXRvcGxheVJlbmRlcmVyOnZvaWQgMH0pO3JldHVybiBfLksoXy5PLHtBOigpPT5iKCk/LmNsb3NlQnV0dG9uLHRoZW46Yz0+Xy5LKF8uVyx7ZGF0YTpjfSx7dGh1bWJuYWlsT3ZlcmxheVRpbWVTdGF0dXNSZW5kZXJlcjooe2RhdGE6ZH0pPT5fLksoXy5WUCx7ZGF0YTpkfSksYnV0dG9uUmVuZGVyZXI6KHtkYXRhOmR9KT0+Xy5LKF8ucE8se2RhdGE6ZCx0ZzooKT0+e1FVKGEpfSxidXR0b25PdmVycmlkZXM6e3N0eWxlOiJvdmVybGF5In19KX0pfSl9LCJIZSIpLGpuYT1fLkwoYT0+e3ZhciB7cGxheWVyT3ZlcmxheUF1dG9wbGF5UmVuZGVyZXI6Yn09Xy5EQyhhLHtwbGF5ZXJPdmVybGF5QXV0b3BsYXlSZW5kZXJlcjp2b2lkIDB9KTsKcmV0dXJuIF8uSygiZGl2Iix7Y2xhc3M6Inl0d1BsYXllckVuZHNjcmVlbkNvdW50ZG93bkNvbnRhaW5lciJ9LF8uSyhfLm5ILHtjb21tYW5kOigpPT5iKCk/Lm5leHRCdXR0b24/LmJ1dHRvblJlbmRlcmVyPy5uYXZpZ2F0aW9uRW5kcG9pbnQsY2xhc3NOYW1lOiJ5dHdQbGF5ZXJFbmRzY3JlZW5DdWVkVmlkZW9Db250YWluZXIiLGFyaWFMYWJlbDooKT0+Xy5ESihiKCk/LnZpZGVvVGl0bGU/LmFjY2Vzc2liaWxpdHkpfSxfLksob25hLHsuLi5hfSksXy5LKHBuYSx7Li4uYX0pKSl9LCJJZSIpLG9uYT1fLkwoYT0+e3ZhciB7cGxheWVyT3ZlcmxheUF1dG9wbGF5UmVuZGVyZXI6Yn09Xy5EQyhhLHtwbGF5ZXJPdmVybGF5QXV0b3BsYXlSZW5kZXJlcjp2b2lkIDB9KTtyZXR1cm4gXy5LKCJkaXYiLHtjbGFzczoieXR3UGxheWVyRW5kc2NyZWVuQ3VlZFRodW1ibmFpbE92ZXJsYXkifSxfLksoXy5YUCx7dGh1bWJuYWlsRGV0YWlsczooKT0+YigpPy5iYWNrZ3JvdW5kLE1kOnZvaWQgMCxUYjohMSwKY2xhc3NOYW1lOiJ5dHdQbGF5ZXJFbmRzY3JlZW5UaHVtYm5haWxDb250YWluZXIifSksXy5LKF8uVyx7ZGF0YTooKT0+YigpPy50aHVtYm5haWxPdmVybGF5c30se3RodW1ibmFpbE92ZXJsYXlUaW1lU3RhdHVzUmVuZGVyZXI6KHtkYXRhOmN9KT0+Xy5LKF8uVlAse2RhdGE6YyxjbGFzc05hbWU6Inl0d1BsYXllckVuZHNjcmVlblRodW1ibmFpbE92ZXJsYXlzIixhcmlhSGlkZGVuOiEwfSl9KSl9LCJKZSIpLHBuYT1fLkwoYT0+e3ZhciB7cGxheWVyT3ZlcmxheUF1dG9wbGF5UmVuZGVyZXI6Yn09Xy5EQyhhLHtwbGF5ZXJPdmVybGF5QXV0b3BsYXlSZW5kZXJlcjp2b2lkIDB9KTtyZXR1cm4gXy5LKCJkaXYiLHtjbGFzczoieXR3UGxheWVyRW5kc2NyZWVuVmlkZW9JbmZvIiwiYXJpYS1oaWRkZW4iOiEwfSxfLksoImRpdiIse2NsYXNzOiJ5dHdQbGF5ZXJFbmRzY3JlZW5WaWRlb1RpdGxlIn0sXy5LKF8uVix7dGV4dDooKT0+YigpPy52aWRlb1RpdGxlfSkpLF8uSygiZGl2Iix7Y2xhc3M6Inl0d1BsYXllckVuZHNjcmVlblZpZGVvQXV0aG9yIn0sCl8uSyhfLlYse3RleHQ6KCk9PmIoKT8uYnlsaW5lLG1hOiEwfSkpKX0sIktlIiksa25hPV8uTChhPT57dmFyIHtwbGF5ZXJPdmVybGF5QXV0b3BsYXlSZW5kZXJlcjpifT1fLkRDKGEse3BsYXllck92ZXJsYXlBdXRvcGxheVJlbmRlcmVyOnZvaWQgMH0pLGM9e3N0eWxlOiJvdmVybGF5In07cmV0dXJuIF8uSygiZGl2Iix7Y2xhc3M6Inl0d1BsYXllckVuZHNjcmVlbkJ1dHRvbkNvbnRhaW5lciJ9LF8uSyhfLlcse2RhdGE6KCk9PmIoKT8uY2FuY2VsQnV0dG9ufSx7YnV0dG9uUmVuZGVyZXI6KHtkYXRhOmR9KT0+Xy5LKF8ucE8se2RhdGE6ZCxjbGFzc05hbWU6Inl0d1BsYXllckVuZHNjcmVlbkFjdGlvbkJ1dHRvbiIsdGc6KCk9PntRVShhKX0sYnV0dG9uT3ZlcnJpZGVzOmN9KX0pLF8uSyhfLlcse2RhdGE6KCk9PmIoKT8ubmV4dEJ1dHRvbn0se2J1dHRvblJlbmRlcmVyOih7ZGF0YTpkfSk9Pl8uSyhfLnBPLHtkYXRhOmQsY2xhc3NOYW1lOiJ5dHdQbGF5ZXJFbmRzY3JlZW5BY3Rpb25CdXR0b24iLApidXR0b25PdmVycmlkZXM6Y30pfSkpfSwiTGUiKTt2YXIgR1c9Xy5MKGE9Pnt2YXIgYj1fLmtHKCRUKSxjPV8uUCgieXR3UGxheWVyTWlkZGxlQ29udHJvbHNIb3N0IiwicGxheWVyLWNvbnRyb2xzLW1pZGRsZSIseyJwcmV2ZW50LWNvbnRyb2xzLWNvbGxpc2lvbiI6KCk9Pnt2YXIgaD1iPy4oKTtpZighaD8uaXNSZWFkeT8uKCkpcmV0dXJuITE7aD1oPy5nZXRTaXplKCk/LmhlaWdodDtoPSEhaCYmaDwyNzU7dmFyIGs9YS5HKCkuYmE/LnZvbHVtZUNvbnRyb2xUeXBlPT09InZvbHVtZS1zbGlkZXIiO3JldHVybiBofHxrfX0pLGQ9KCk9Pnt2YXIgaD1hLkcoKTtyZXR1cm4gaC5wbGF5ZXJTdGF0ZT09PTN8fGgucGxheWVyU3RhdGU9PT0tMX0sZT0oKT0+e3ZhciBoPWEuRygpO3ZhciBrPWI/LigpO1hRKGspfHwhaz8uaXNSZWFkeT8uKCk/az0hMTpoPy5iYT8udm4/az0hMDooaD1rLmdldFZpZGVvRGF0YSgpLGs9IWguaXNMaXN0ZWR8fGgueXBjUHJldmlld3x8aC5pc0xpdmV8fHR5cGVvZiBrLmdldExvb3BSYW5nZT09PSJmdW5jdGlvbiImJgprLmdldExvb3BSYW5nZSgpPyEwOiExKTtyZXR1cm4ha30sZj1fLlAoInBsYXllci1jb250cm9scy1taWRkbGUtY29yZS1idXR0b25zIix7InNjcmVlbnJlYWRlci1zYWZlLWhpZGUtbWlkZGxlLWJ1dHRvbnMiOmR9KTtyZXR1cm4gXy5LKCJwbGF5ZXItbWlkZGxlLWNvbnRyb2xzIix7Y2xhc3M6Y30sXy5LKF8uTyx7QTpkLHRoZW46KCk9Pl8uSyhxbmEsbnVsbCl9KSxfLksoImRpdiIse2NsYXNzOmZ9LF8uSyhfLk8se0E6ZSx0aGVuOigpPT5fLksocm5hLHtHOmEuRyx3YXRjaE5leHRSZXNwb25zZTphLndhdGNoTmV4dFJlc3BvbnNlfSl9KSxfLksoWFYse0ZkOi0xLEc6YS5HLGNsYXNzTmFtZToieXR3UGxheWVyTWlkZGxlQ29udHJvbHNBMTF5U2Vla0J1dHRvbiJ9KSxfLksoXy5PLHtBOigpPT57dmFyIGg9YS5HKCk7cmV0dXJuIXVTKGgpfSx0aGVuOigpPT5fLksoJFYse0c6YS5HfSksVzooKT0+Xy5LKGFXLHtHOmEuR30pfSksXy5LKFhWLHtGZDoxLEc6YS5HLGNsYXNzTmFtZToieXR3UGxheWVyTWlkZGxlQ29udHJvbHNBMTF5U2Vla0J1dHRvbiJ9KSwKXy5LKF8uTyx7QTplLHRoZW46KCk9Pl8uSyhzbmEse0c6YS5HLHdhdGNoTmV4dFJlc3BvbnNlOmEud2F0Y2hOZXh0UmVzcG9uc2V9KX0pKSl9LCJNZSIpO0dXLmlkb21Db21wYXQ9ITA7CnZhciBxbmE9Xy5MKCgpPT5fLksoImRpdiIse2NsYXNzOiJwbGF5ZXItY29udHJvbHMtc3Bpbm5lciJ9LF8uSygiZGl2Iix7Y2xhc3M6InNwaW5uZXIifSkpLCJOZSIpLHJuYT1fLkwoYT0+e3ZhciBiPV8ua0coJFQpLGM9KCk9PiFhLkcoKS5iYT8udm47cmV0dXJuIF8uSyhZVix7bmFtZToiUExBWUVSX1BSRVZJT1VTIixhcmlhTGFiZWw6Xy4kTi5NdCxhcmlhRGlzYWJsZWQ6YyxjbGFzc05hbWU6Xy5QKCJwbGF5ZXItbWlkZGxlLWNvbnRyb2xzLXByZXYtbmV4dC1idXR0b24iLHsiaWNvbi1kaXNhYmxlIjpjfSksVWQ6MzY4NDAsY29udGVudDooKT0+Xy5LKCJkaXYiLHtjbGFzczoicGxheWVyLW1pZGRsZS1jb250cm9scy1wcmV2LW5leHQtdmlzaWJsZS1hcmVhIn0sXy5LKF8uTUQse2ljb246IlBMQVlFUl9QUkVWSU9VUyJ9KSksb25jbGljazooKT0+e3ZhciBkPWEuRygpLGU9Yj8uKCk7ZC5yYyYmZT8udW5NdXRlKCk7dmFyIGY9YS53YXRjaE5leHRSZXNwb25zZT8uKCksaD1BUyhmKTsKaWYoWFEoZSkmJmYmJmgpe2lmKGQ9UlUoaCkuVWEpXy4kRChkKSxfLkFKKGQse30sITEpfWVsc2UgZj1hLkcoKS5iYT8udm4scGphKGMoKSxlLGYpLGQuYmE/LnVqJiZfLkRPKF8uaHgoKSwyNzI0MCl9fSl9LCJPZSIpLHNuYT1fLkwoYT0+e3ZhciBiPV8ua0coJFQpLGM9KCk9Pnt2YXIgZD1iPy4oKTtpZighZD8uaXNSZWFkeT8uKCkpcmV0dXJuITA7dmFyIGU9ZD8uZ2V0UGxheWxpc3QoKTtkPWQ/LmdldFBsYXlsaXN0SW5kZXgoKTt2YXIgZj0hMTtlJiZkIT09dm9pZCAwJiYoZj1kPj1lLmxlbmd0aC0xKTtyZXR1cm4gZn07cmV0dXJuIF8uSyhZVix7bmFtZToiUExBWUVSX05FWFQiLGFyaWFMYWJlbDpfLiROLkt0LGFyaWFEaXNhYmxlZDpjLFVkOjM2ODQxLGNvbnRlbnQ6KCk9Pl8uSygiZGl2Iix7Y2xhc3M6InBsYXllci1taWRkbGUtY29udHJvbHMtcHJldi1uZXh0LXZpc2libGUtYXJlYSJ9LF8uSyhfLk1ELHtpY29uOiJQTEFZRVJfTkVYVCJ9KSksY2xhc3NOYW1lOl8uUCgicGxheWVyLW1pZGRsZS1jb250cm9scy1wcmV2LW5leHQtYnV0dG9uIiwKeyJpY29uLWRpc2FibGUiOmN9KSxvbmNsaWNrOigpPT57dmFyIGQ9YS5HKCksZT1iPy4oKTtkLnJjJiZlPy51bk11dGUoKTt2YXIgZj1hLndhdGNoTmV4dFJlc3BvbnNlPy4oKSxoPUFTKGYpO2lmKFhRKGUpJiZmJiZoKXtpZihkPVJVKGgpLm5leHQpXy4kRChkKSxfLkFKKGQse30sITEpfWVsc2UgYygpfHwoZT8ubmV4dFZpZGVvKCksZC5iYT8udWomJl8uRE8oXy5oeCgpLDI3MjQwKSl9fSl9LCJQZSIpO3ZhciBIVz1fLkwoKHt2aWRlb0RldGFpbHM6YSxHOmJ9KT0+e2Z1bmN0aW9uIGMoVCl7QygpO1Quc3RvcFByb3BhZ2F0aW9uKCl9ZnVuY3Rpb24gZChUKXtHKCk7VC5zdG9wUHJvcGFnYXRpb24oKX1mdW5jdGlvbiBlKFQpe0MoKTtULnN0b3BQcm9wYWdhdGlvbigpfWZ1bmN0aW9uIGYoVCl7RT8udmFsdWU/LmNvbnRhaW5zKFQudGFyZ2V0KXx8RygpO1Quc3RvcFByb3BhZ2F0aW9uKCl9ZnVuY3Rpb24gaChUKXtULnByZXZlbnREZWZhdWx0KCk7WFMoMjM4NTEpO3ZhciBiYT1TVShiLEQpO2lmKGJhKXt2YXIgYWE9YigpPy5IPy5nZXRDdXJyZW50VGltZSgpO18uQUooYmEse3BhcmFtczp7dGltZXN0YW1wOmFhP01hdGguZmxvb3IoYWEpLnRvU3RyaW5nKCk6dm9pZCAwfX0sITEse2V2ZW50OlR9KX1ULnN0b3BQcm9wYWdhdGlvbigpfWZ1bmN0aW9uIGsoVCl7VShUKTtULnN0b3BQcm9wYWdhdGlvbigpfWZ1bmN0aW9uIGwoVCl7VC5wcmV2ZW50RGVmYXVsdCgpO3ooKXx8RigpJiZGKCk8MzIwPwpVKFQpOkMoKTtULnN0b3BQcm9wYWdhdGlvbigpfWZ1bmN0aW9uIG0oVCl7VC5wcmV2ZW50RGVmYXVsdCgpO0coMjUwMCk7VC5zdG9wUHJvcGFnYXRpb24oKX1mdW5jdGlvbiBuKFQpe0coMjUwMCk7VC5zdG9wUHJvcGFnYXRpb24oKX12YXIgW3Ascl09Xy5KKCExLHZvaWQgMCwiaVpNUW1mIiksW3Qsdl09Xy5KKCExLHZvaWQgMCwiQ2hoSDBiIiksej10LEU9Xy52RSgiZGl2IiksQSxGPSgpPT5iKCkuSD8uZ2V0U2l6ZT8uKCk/LndpZHRoLEM9KCk9PntGKCkmJkYoKTwzMjB8fChyKCEwKSxBJiZjbGVhclRpbWVvdXQoQSkseigpfHwoYlQoKSx2KCEwKSkpfSxHPShUPTUwMCk9PntGKCkmJkYoKTwzMjB8fChyKCExKSxBPXNldFRpbWVvdXQoKCk9PnshcCgpJiZ6KCkmJih2KCExKSxjVChiKCkse0ljOiEwfSkpfSxUKSl9LEQ9KCk9Pl8uQihhPy4oKS5jb2xsYXBzZWRSZW5kZXJlcixtVik/LnRpdGxlLEg9KCk9PmE/LigpLmNoYW5uZWxUaHVtYm5haWxFbmRwb2ludCxSPSgpPT5hPy4oKS5jaGFubmVsVGh1bWJuYWlsLApNPSgpPT5fLkIoYT8uKCkuZXhwYW5kZWRSZW5kZXJlcixuVik/LnRpdGxlPz8oXy54KCJlbWJlZHNfdmlkX2RldGFpbHNfZmFsbGJhY2tfY2hhbm5lbF9uYW1lX2tzIik/dm9pZCAwOl8uQihhPy4oKS5jb2xsYXBzZWRSZW5kZXJlcixtVik/LnN1YnRpdGxlKSxTPSgpPT5fLkIoYT8uKCkuZXhwYW5kZWRSZW5kZXJlcixuVik/LnN1YnRpdGxlLFk9KCk9Pl8uQihhPy4oKS5leHBhbmRlZFJlbmRlcmVyLG5WKT8uc3Vic2NyaWJlQnV0dG9uLHBhPV8uTigoKT0+Xy5CKFNVKGIsRCksXy5WRCk/LnVybCx2b2lkIDAsInlUSE5qIiksb2E9Xy5OKCgpPT5fLkIoYT8uKCkuY2hhbm5lbFRodW1ibmFpbEVuZHBvaW50LF8uVkQpPy51cmwsdm9pZCAwLCJwd2wzSWMiKSxVPVQ9PntULnByZXZlbnREZWZhdWx0KCk7aWYoYT8uKCkuY2hhbm5lbFRodW1ibmFpbEVuZHBvaW50JiZhPy4oKSl7dmFyIGJhPWE/LigpLmNoYW5uZWxUaHVtYm5haWxFbmRwb2ludDtYUygzNjkyNSk7Xy5BSihiYSx7fSwhMSwKe2V2ZW50OlR9KX19LGhhPV8uUCgieXRtVmlkZW9JbmZvVmlkZW9UaXRsZUNvbnRhaW5lciIse3l0bVZpZGVvSW5mb0xvZ29FbmFibGVkOigpPT4hIWE/LigpLmNoYW5uZWxUaHVtYm5haWx9KSxtYT1fLlAoInl0bVZpZGVvSW5mb092ZXJsYXkiLHt5dG1WaWRlb0luZm9FeHBhbmRlZDooKT0+eigpfSksdGE9KCk9PiEhXy5CKGE/LigpLmV4cGFuZGVkUmVuZGVyZXIsblYpPy5zdWJzY3JpYmVCdXR0b24mJiFiKCkuYmE/Lm9oO3JldHVybiBfLksoImVtYmVkZGVkLXBsYXllci12aWRlby1kZXRhaWxzIix7Y2xhc3M6Inl0bVZpZGVvSW5mb0hvc3QifSxfLksoImRpdiIse2NsYXNzOiJ5dG1WaWRlb0luZm9WaWRlb0RldGFpbHNDb250YWluZXIifSxfLksoImRpdiIse2NsYXNzOmhhfSxfLksoXy5PLHtBOkQsdGhlbjooKT0+Xy5LKF8uTyx7QTpwYSx0aGVuOigpPT5fLksoImEiLHsib246Y2xpY2siOmgsY2xhc3M6Inl0bVZpZGVvSW5mb1ZpZGVvVGl0bGUiLGVsOl8uckYoVD0+e1dTKFQsCjIzODUxKX0pLGhyZWY6cGF9LF8uSyhfLlYse3RleHQ6RCxjbGFzc05hbWU6Xy5QKCJ5dG1WaWRlb0luZm9MaW5rIiksdWI6ITAsbm9XcmFwOiEwLG1hOiEwfSkpLFc6KCk9Pl8uSygic3BhbiIse2NsYXNzOiJ5dG1WaWRlb0luZm9WaWRlb1RpdGxlIn0sXy5LKF8uVix7dGV4dDpELHViOiEwLG5vV3JhcDohMCxtYTohMH0pKX0pfSksXy5LKF8uTyx7QTpfLngoImVtYmVkc192aWRfZGV0YWlsc19mYWxsYmFja19jaGFubmVsX25hbWVfa3MiKT9IOk0sdGhlbjooKT0+Xy5LKF8uTyx7QTpvYSx0aGVuOigpPT5fLksoImEiLHsib246Y2xpY2siOmssY2xhc3M6Inl0bVZpZGVvSW5mb0NoYW5uZWxUaXRsZSIsaHJlZjpvYX0sXy5LKF8uVix7dGV4dDpNLGNsYXNzTmFtZTpfLlAoInl0bVZpZGVvSW5mb0xpbmsiKSx5YzohMCx1YjohMCxub1dyYXA6ITAsbWE6ITB9KSksVzooKT0+Xy5LKCJzcGFuIix7Y2xhc3M6Inl0bVZpZGVvSW5mb0NoYW5uZWxUaXRsZSJ9LF8uSyhfLlYse3RleHQ6TSx5YzohMCwKdWI6ITAsbm9XcmFwOiEwLG1hOiEwfSkpfSl9KSksXy5LKF8uTyx7QTpSLHRoZW46KCk9Pl8uSygiZGl2Iix7Y2xhc3M6Inl0bVZpZGVvSW5mb0NoYW5uZWxDb250YWluZXIiLGVsOkUsIm9uOmZvY3VzaW4iOmUsIm9uOmZvY3Vzb3V0IjpmLCJvbjptb3VzZW92ZXIiOmMsIm9uOm1vdXNlb3V0IjpkfSxfLksoImJ1dHRvbiIseyJvbjp0b3VjaHN0YXJ0IjpsLCJvbjp0b3VjaGVuZCI6bSwib246Y2xpY2siOmssY2xhc3M6Xy5QKCJ5dG1WaWRlb0luZm9MaW5rIiwieXRtVmlkZW9JbmZvQ2hhbm5lbEF2YXRhciIpLGVsOl8uckYoVD0+e1dTKFQsMzY5MjUpfSl9LF8uSyhfLlVQLHt0aHVtYm5haWxEZXRhaWxzOlIsY2xhc3NOYW1lOiJ5dG1WaWRlb0luZm9DaGFubmVsTG9nbyIsYWx0OiJ0aHVtYm5haWwtaW1hZ2UifSkpLF8uSygiZGl2Iix7Y2xhc3M6bWEsIm9uOnRvdWNoc3RhcnQiOkMsIm9uOnRvdWNoZW5kIjpufSxfLksoImRpdiIse2NsYXNzOiJ5dG1WaWRlb0luZm9DaGFubmVsSW5mbyIsCnJvbGU6InRleHQifSxfLksoXy5WLHt0ZXh0Ok0sY2xhc3NOYW1lOiJ5dG1WaWRlb0luZm9GbHlvdXRDaGFubmVsVGl0bGUiLHljOiEwLHViOiEwLG5vV3JhcDohMCxtYTohMH0pLF8uSyhfLlYse3RleHQ6UyxjbGFzc05hbWU6Inl0bVZpZGVvSW5mb0ZseW91dENoYW5uZWxTdWJ0aXRsZSIseWM6ITAsdWI6ITAsbm9XcmFwOiEwLG1hOiEwfSkpLF8uSyhfLk8se0E6dGEsdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczoieXRtVmlkZW9JbmZvU3Vic2NyaWJlQnV0dG9uIn0sXy5LKF8uVyx7ZGF0YTpZfSx7c3Vic2NyaWJlQnV0dG9uUmVuZGVyZXI6Zld9KSl9KSkpfSkpKX0sIlFlIik7SFcuaWRvbUNvbXBhdD0hMDt2YXIgVFU9Xy4kTi5BdCxPbGE9Xy4kTi5ndSx0bmE9Xy5MKCh7UXk6YSxvbkNsaWNrOmIsSm46YyxCczpkfSk9Pnt2YXIgZT1fLnVFKCJidXR0b24iLGg9PntXUyhoLDI4NjYyKX0pLGY9KCk9PlVVKGEoKSxjPy4oKSxkPy4oKSkuYXJpYUxhYmVsO3JldHVybiBfLksoInl0bS1tdXRlLWJ1dHRvbiIse2NsYXNzOiJ5dG1NdXRlQnV0dG9uSG9zdCJ9LF8uSygiYnV0dG9uIix7ZWw6ZSxjbGFzczoieXRtTXV0ZUJ1dHRvbkJ1dHRvbiIsdGl0bGU6ZiwiYXJpYS1sYWJlbCI6Ziwib246Y2xpY2siOmZ1bmN0aW9uKGgpe1hTKDI4NjYyKTtiPy4oaCk7aC5zdG9wUHJvcGFnYXRpb24oKX19LF8uSygic3BhbiIsbnVsbCxfLksoXy5NRCx7aWNvbjooKT0+VVUoYSgpLGM/LigpLGQ/LigpKS5pY29uTmFtZX0pKSkpfSwiUmUiKTt2YXIgSVc9Xy5MKCh7SEI6YSxXcTpiLEpuOmMsQnM6ZCxjbGFzc05hbWU6ZX0pPT5fLksoInl0LW11dGUtdG9nZ2xlLWJ1dHRvbiIse2NsYXNzOmV9LF8uSyh0bmEse1F5OigpPT57dmFyIGY9YSgpO3JldHVybiBmLnJjfHxmLnZvbHVtZT09PTA/MDpmLnZvbHVtZT41MD8xOjJ9LG9uQ2xpY2s6Zj0+e3ZhciBoPWEoKS5IO2gmJihoLmlzTXV0ZWQoKT9oLnVuTXV0ZSgpOmgubXV0ZSghMSkpO2I/LihmKX0sSm46KCk9PiEhYz8uKCksQnM6KCk9PiEhZD8uKCl9KSksIlNlIik7SVcuaWRvbUNvbXBhdD0hMDt2YXIgVlU7dmFyIHVuYT1fLkwoKHtlbmFibGVkOmEsYXJpYUxhYmVsOmIsb25DbGljazpjfSk9Pl8uSygiYnV0dG9uIix7ImFyaWEtbGFiZWwiOmIsImFyaWEtcHJlc3NlZCI6YSwib246Y2xpY2siOmZ1bmN0aW9uKGQpe2M/LihkKTtkLnN0b3BQcm9wYWdhdGlvbigpfSxjbGFzczoieXR3QXV0b25hdlRvZ2dsZUJ1dHRvbkhvc3QifSxfLksoXy5NRCx7aWNvbjooKT0+YSgpPyJBVVRPTkFWX09OX1RPR0dMRV9TUEFOTkVSIjoiQVVUT05BVl9PRkZfVE9HR0xFX1NQQU5ORVIiLGNsYXNzTmFtZTooKT0+YSgpPyJ5dHdBdXRvbmF2VG9nZ2xlQnV0dG9uU3Bhbm5lckljb25PbiI6Inl0d0F1dG9uYXZUb2dnbGVCdXR0b25TcGFubmVySWNvbk9mZiJ9KSxfLksoXy5NRCx7aWNvbjooKT0+YSgpPyJQTEFZX0NJUkNMRV9GSUxMRUQiOiJQQVVTRV9DSVJDTEVfRklMTEVEIixjbGFzc05hbWU6KCk9PmEoKT8ieXR3QXV0b25hdlRvZ2dsZUJ1dHRvblBsYXlJY29uIjoieXR3QXV0b25hdlRvZ2dsZUJ1dHRvblBhdXNlSWNvbiJ9KSksCiJUZSIpO3ZhciBKVz1fLkwoKHtHOmEsQ3U6Yn0pPT57Xy5DUShiLGU9PntlJiZlLmVuYWJsZWQhPT12b2lkIDAmJmUuZW5hYmxlZCE9PWEoKS5hdXRvbmF2RW5hYmxlZCYmWFUoYSgpLGUuZW5hYmxlZCwhMSl9KTt2YXIgYz1fLk4oKCk9PmEoKS5hdXRvbmF2RW5hYmxlZD9fLkRKKGIoKS5lbmFibGVkQWNjZXNzaWJpbGl0eURhdGEpOl8uREooYigpLmRpc2FibGVkQWNjZXNzaWJpbGl0eURhdGEpLHZvaWQgMCwiUTlndnpjIiksZD1fLk4oKCk9PmEoKS5hdXRvbmF2RW5hYmxlZCx2b2lkIDAsIklRQ1prZiIpO3JldHVybiBfLksoInBsYXllci1hdXRvbmF2LXRvZ2dsZSIse2NsYXNzOiJ5dHdQbGF5ZXJBdXRvbmF2VG9nZ2xlSG9zdCJ9LF8uSyh1bmEse2VuYWJsZWQ6ZCxhcmlhTGFiZWw6YyxvbkNsaWNrOmU9Pnt2YXIgZj1hKCksaD1mLmF1dG9uYXZFbmFibGVkO1hVKGYsIWYuYXV0b25hdkVuYWJsZWQsITApO3ZhciBrPWIoKTshaCYmay5vbkVuYWJsZWRDb21tYW5kP18uQUooay5vbkVuYWJsZWRDb21tYW5kLAprLCEwKTpoJiZrLm9uRGlzYWJsZWRDb21tYW5kJiZfLkFKKGsub25EaXNhYmxlZENvbW1hbmQsaywhMCk7UGxhKGYsYigpKTt1UyhmKXx8Y1QoZix7SWM6ITB9KTtlLnN0b3BQcm9wYWdhdGlvbigpfX0pKX0sIlVlIik7SlcuaWRvbUNvbXBhdD0hMDt2YXIgTFc9Xy5MKGE9Pnt2YXIgYj0oKT0+TlMoYS5wbGF5ZXJPdmVybGF5UmVuZGVyZXI/LigpLGEudGh1bWJuYWlsUHJldmlld1JlbmRlcmVyPy4oKSksYz0oKT0+YigpJiYhYS5HKCkuYmE/LmhpZGVWaWRlb0luZm87cmV0dXJuIF8uSygicGxheWVyLXRvcC1jb250cm9scyIse2NsYXNzOiJ5dHdQbGF5ZXJUb3BDb250cm9sc0hvc3QifSxfLksoImRpdiIse2NsYXNzOl8uUCgicGxheWVyLWNvbnRyb2xzLXRvcCIse3l0d1BsYXllclRvcENvbnRyb2xzQ29udGFpbmVyV2l0aEVtYmVkZGVkVmlkZW9EZXRhaWxzOmN9KSwib246Y2xpY2siOmZ1bmN0aW9uKGQpe2Quc3RvcFByb3BhZ2F0aW9uKCl9fSxfLksoXy5PLHtBOmMsdGhlbjooKT0+Xy5LKEhXLHt2aWRlb0RldGFpbHM6YixHOmEuR30pfSksXy5LKF8uTyx7QTooKT0+IWEuRygpLmJhPy5uaCYmISRTKGEuRygpKSx0aGVuOigpPT5fLksoXy5PLHtBOmMsdGhlbjooKT0+Xy5LKCJkaXYiLHtjbGFzczpfLlAoInl0d1BsYXllclRvcENvbnRyb2xzUGxheWVyQ29udHJvbHNUb3BSaWdodCIsCiJwbGF5ZXItY29udHJvbHMtdG9wLXJpZ2h0Iix7eXR3UGxheWVyVG9wQ29udHJvbHNDb250YWluZXJXaXRoRW1iZWRkZWRWaWRlb0RldGFpbHNQbGF5ZXJDb250cm9sc1RvcFJpZ2h0OmN9KX0sXy5LKEtXLHtHOmEuRyxwbGF5ZXJPdmVybGF5UmVuZGVyZXI6YS5wbGF5ZXJPdmVybGF5UmVuZGVyZXJ9KSksVzooKT0+Xy5LKEtXLHtHOmEuRyxwbGF5ZXJPdmVybGF5UmVuZGVyZXI6YS5wbGF5ZXJPdmVybGF5UmVuZGVyZXJ9KX0pfSkpKX0sIlZlIik7TFcuaWRvbUNvbXBhdD0hMDsKdmFyIHZuYT0oYSxiKT0+Xy5LKGRXLHtnZjphLFZyOiEwLFdxOmJ9KSxLVz1fLkwoKHtHOmEscGxheWVyT3ZlcmxheVJlbmRlcmVyOmJ9KT0+e3ZhciBjPSgpPT5hKCkuSDtyZXR1cm4gXy5LKF8uSUIsbnVsbCxfLksoXy5FRSxudWxsLF8uSyhfLkNFLHt3aGVuOigpPT5hKCkuYmE/LnZvbHVtZUNvbnRyb2xUeXBlPT09InZvbHVtZS1zbGlkZXIifSwoKT0+Xy5LKEhWLHtvcmllbnRhdGlvbjoidmVydGljYWxfZG93biIsYmo6ITAsSDpjfSkpLF8uSyhfLkNFLHt3aGVuOigpPT57dmFyIGQ9YSgpLkg/LmdldFNpemUoKSxlPWQ/LndpZHRoJiZkLndpZHRoPj0yNTA7ZD1kPy5oZWlnaHQmJmQuaGVpZ2h0Pj0yMDA7cmV0dXJuIGEoKS5iYT8udm9sdW1lQ29udHJvbFR5cGU9PT0ibXV0ZS1idXR0b24iJiZlJiZkfX0sKCk9Pl8uSyhJVyx7SEI6YSxKbjohMH0pKSxfLksoXy5ERSxudWxsLCgpPT5fLksoXy5JQixudWxsKSkpLF8uSyhfLk8se0E6KCk9PiEhelMoYj8uKCkpLHRoZW46KCk9Pl8uSyhKVywKe0c6YSxDdTooKT0+elMoYj8uKCkpfSl9KSx2bmEoYSxmdW5jdGlvbigpe2NUKGEoKSx7SWM6ITB9KX0pLF8uSyhfLk8se0E6KCk9Pnt2YXIgZD1hKCkuSD8uZ2V0U2l6ZSgpO2Q9ZD8ud2lkdGgmJmQud2lkdGg+PTMyMHx8IWEoKS5iYT8ub2g7cmV0dXJuISFhKCkudGEuU2omJmR9LHRoZW46KCk9Pl8uSyhiVyx7RzphfSl9KSl9LCJXZSIpO0tXLmlkb21Db21wYXQ9ITA7dmFyIE1XPV8uTChhPT57ZnVuY3Rpb24gYihUKXtULnBvaW50ZXJUeXBlPT09Im1vdXNlIiYmKGwoKS5TKHtlYTohMH0pLGNUKGwoKSx7SWM6ITB9KSl9ZnVuY3Rpb24gYyhUKXtLVShULGwoKSl9ZnVuY3Rpb24gZChUKXt2YXIgYmE9bCgpO2lmKHhVKFQpKXtULnN0b3BQcm9wYWdhdGlvbigpO3ZhciBhYT1ULnRvdWNoZXNbMF07SFU9YWEucGFnZVg7elU9YWEucGFnZVk7Xy54KCJ3ZWJfZW5hYmxlX3NtYXJ0X3pvb20iKSYmVC50b3VjaGVzLmxlbmd0aD09PTImJihCVT13VShUKSk7SFQoYmEsVC50b3VjaGVzLmxlbmd0aCk7YmEuYmE/Lk1pfHxiYS5OYXx8YmEuV2R8fGJhLnNifHxfLlRFKCl8fChFVT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibW92aWVfcGxheWVyIikpJiZPYmplY3QuYXNzaWduKEVVLnN0eWxlLHt0cmFuc2l0aW9uOiIiLHRyYW5zZm9ybU9yaWdpbjoiIn0pfX1mdW5jdGlvbiBlKFQpe3ZhciBiYT1sKCk7aWYoeFUoVCkpe1Quc3RvcFByb3BhZ2F0aW9uKCk7dmFyIGFhPQpULnRvdWNoZXNbMF07QVU9ITA7R1U9YWEucGFnZVg7eVU9YWEucGFnZVk7YWE9e2xrOkdVLUhVLE9kOnlVLXpVfTthYS5PZD09PTAmJmFhLmxrPT09MHx8Xy5NRSgpJiYhYmEuaXNGdWxsc2NyZWVufHxiYS5iYT8uTWl8fFQucHJldmVudERlZmF1bHQoKTtJVChULGFhLGJhKTtfLngoIndlYl9lbmFibGVfc21hcnRfem9vbSIpJiZULnRvdWNoZXMubGVuZ3RoPT09MiYmQlUhPT0wJiZNYXRoLmFicyh3VShUKS1CVSk+MTAmJkRVKCEwKTshYmEuYmE/Lk1pJiYoYmEuTmF8fGJhLldkfHxiYS5zYnx8Xy5URSgpfHxfLk1FKCkmJiFiYS5pc0Z1bGxzY3JlZW58fChiYS5TKHtlYTohMX0pLFQ9YWEuT2QsYmEuaXNGdWxsc2NyZWVuJiYoVCo9LTEpLCFiYS5pc0Z1bGxzY3JlZW4mJlQ+MCYmKFQ9MCksVDwtMTAwJiYoVD0tMTAwKSxiYS5pc0Z1bGxzY3JlZW4/RVUmJk9iamVjdC5hc3NpZ24oRVUuc3R5bGUse3RyYW5zZm9ybTpgc2NhbGUoJHsxLS4wNSpNYXRoLm1pbig0Kk1hdGguYWJzKFQvLTEwMCksCjEpfSkgdHJhbnNsYXRlWSgkey1UfXB4KWB9KTpFVSYmT2JqZWN0LmFzc2lnbihFVS5zdHlsZSx7dHJhbnNmb3JtOmBzY2FsZSgkezErLjI1Kk1hdGguYWJzKFQvLTEwMCl9KWAsdHJhbnNmb3JtT3JpZ2luOiJib3R0b20gY2VudGVyIn0pKSwhYmEuaXNGdWxsc2NyZWVufHxiYS5pc0RyYWdnaW5nfHxiYS5zYnx8IV8uTUUoKSYmIV8uVEUoKT8wOmJhLldkfHwoYmEuTmE/RFEoYWEuT2QsMCwyMTUpOkRRKGFhLk9kLC0yMTUsMCkpIT09MCkmJihiVCgpLGJhLlMoe1dkOiEwLGVhOiEwLEpmOmJhLk5hP0RRKGFhLk9kLDAsMjE1KTpEUShhYS5PZCwtMjE1LDApfSkpfX1mdW5jdGlvbiBmKFQpe0lVKFQsbCgpLG0oKSl9ZnVuY3Rpb24gaChUKXtJVShULGwoKSxtKCkpfWZ1bmN0aW9uIGsoVCl7VC5zdG9wUHJvcGFnYXRpb24oKX12YXIge0c6bCxkYXRhOm19PV8uREMoYSx7ZGF0YTp2b2lkIDB9KSxuPV8uTigoKT0+bCgpLkgsdm9pZCAwLCJaN0g5cmUiKTthPV8uTigoKT0+bCgpLmVhLHZvaWQgMCwKImRyaHE3ZCIpO3ZhciBwPV8uTigoKT0+bCgpLnNiLHZvaWQgMCwidnN0WUVlIikscj1fLk4oKCk9PmwoKS5iYT8uRWUsdm9pZCAwLCJMYkZ3SmIiKSx0PV8uTigoKT0+bCgpLktiPihfLngoIm13ZWJfcGxheWVyX3RhcHBpbmdfdGhyZXNob2xkX2tpbGxzd2l0Y2giKT84OjApLHZvaWQgMCwiZTRqcU1kIiksdj1fLk4oKCk9PmwoKS5KZCE9PTAsdm9pZCAwLCJwcWdENWUiKSx6PV8uTigoKT0+bCgpLmJhPy5aaCx2b2lkIDAsInRtUWRnIiksRT0oKT0+bSgpPy5wbGF5ZXJSZXNwb25zZT8ucGxheWFiaWxpdHlTdGF0dXMsQT1fLk4oKCk9PiRTKGwoKSxtKCk/LnBsYXllclJlc3BvbnNlPy5wbGF5YWJpbGl0eVN0YXR1cyksdm9pZCAwLCJYYTlxeGYiKSxGPV8uTigoKT0+IWwoKS5iYT8uenIsdm9pZCAwLCJtRk9sdCIpLEM9Xy5OKCgpPT57dmFyIFQ9bCgpO3JldHVybiBfLngoIm13ZWJfcGNfbGl2ZV9kdnJfa3MiKT8hMTpULmlzTGl2ZSYmIVQuaXNMaXZlRHZyRW5hYmxlZH0sdm9pZCAwLAoiRDFpNjciKSxHPV8uTigoKT0+e3ZhciBUPUMoKTtyZXR1cm4gclUoKSYmIVR9LHZvaWQgMCwidlF6aW1lIiksRD1fLk4oKCk9PnQoKSYmdigpLHZvaWQgMCwiQmVHcDciKSxIPV8uUCgibmV3LWNvbnRyb2xzIiwiYmlnYmFyIiwibWVkaXVtLW1vZGlmaWNhdGlvbiIsImFuaW1hdGlvbi1lbmFibGVkIiwiZW5hYmxlLWZ1bGxzY3JlZW4tY29udHJvbHMiLCJmcy13YXRjaC1zeXN0ZW0iLHtmYWRlaW46YSwiYmFja2dyb3VuZC1oaWRkZW4iOnAsImZ1bGxzY3JlZW4tY29udHJvbHMtYWx3YXlzLW9uIjpyLCJlbmFibGUtZnVsbHNjcmVlbi1jb250cm9scy1mb3ItcG9ydHJhaXQiOl8ueCgibXdlYl9lbmFibGVfcG9ydHJhaXRfZnVsbHNjcmVlbl9hY3Rpb25zIil9KSxSPSgpPT5tPy4oKT8ud2F0Y2hOZXh0UmVzcG9uc2UsTT0oKT0+bT8uKCk/LnBsYXllck92ZXJsYXlSZW5kZXJlcixTPSgpPT5tKCk/LmpiPy5lbWJlZFByZXZpZXc/LnRodW1ibmFpbFByZXZpZXdSZW5kZXJlcixZPSgpPT4KR1MobT8uKCk/LnBsYXllck92ZXJsYXlSZW5kZXJlcikscGE9KCk9Pm0oKT8uamI/LmVtYmVkUHJldmlldz8udGh1bWJuYWlsUHJldmlld1JlbmRlcmVyPy5kZWZhdWx0VGh1bWJuYWlsfHxtKCk/LnBsYXllclJlc3BvbnNlPy52aWRlb0RldGFpbHM/LnRodW1ibmFpbCxvYT0oKT0+bSgpPy5wbGF5ZXJSZXNwb25zZT8ucGxheWVyQ29uZmlnPy5hdXRvY3JvcENvbmZpZyxVPSgpPT5tKCk/LnBsYXllclJlc3BvbnNlPy5lbmRzY3JlZW4/LmVuZHNjcmVlblJlbmRlcmVyJiZuKCksaGE9KCk9Pnt2YXIgVDtpZihUPVBTKG0oKT8ucGxheWVyT3ZlcmxheVJlbmRlcmVyLG0oKT8uamIpKXtUPWwoKTt2YXIgYmE9bigpLGFhPVBTKG0oKT8ucGxheWVyT3ZlcmxheVJlbmRlcmVyLG0oKT8uamIpO2lmKGFhJiZhYS5pbmZvUGFuZWxPdmVydmlld1ZpZXdNb2RlbCYmKGFhLmluZm9QYW5lbE92ZXJ2aWV3Vmlld01vZGVsLnRpdGxlfHxhYS5pbmZvUGFuZWxPdmVydmlld1ZpZXdNb2RlbC5ib2R5VGV4dCkmJgpiYSYmYmEuZ2V0UGxheWVyU3RhdGVPYmplY3QmJmJhLmdldFBsYXllclNpemUmJiFfLkRJKGtqYSxhYS5pbmZvUGFuZWxPdmVydmlld1ZpZXdNb2RlbC5kaXNtaXNzU3RhdGVFbnRpdHlLZXkpKCk/LmlzRGlzbWlzc2VkKXthYT1iYS5nZXRQbGF5ZXJTdGF0ZU9iamVjdCgpPy5pc0Vycm9yO2lmKGFhPSF1UyhUKSYmIWFhKWFhPWJhLmdldFBsYXllclNpemUoKSxiYT1hYS53aWR0aDwzNjAsYWE9YWEuaGVpZ2h0PDMyMCxhYT0hKChULnBsYXllclN0YXRlPT09LTF8fFQucGxheWVyU3RhdGU9PT01KSYmYmEmJmFhKTtUPWFhfWVsc2UgVD0hMX1yZXR1cm4gVH0sbWE9KCk9Pnt2YXIgVD1tKCk/LnBsYXllclJlc3BvbnNlO3JldHVybiBfLkIoVD8ub3ZlcmxheT8ucGxheWVyQ29udHJvbHNPdmVybGF5UmVuZGVyZXI/Lm11dGVkQXV0b3BsYXksb1YpfSx0YT0oKT0+bSgpPy5IPy5pc011dGVkQnlFbWJlZHNNdXRlZEF1dG9wbGF5Py4oKTtyZXR1cm4gXy5LKCJ5dG0td2F0Y2gtcGxheWVyLWNvbnRyb2xzIiwKe2NsYXNzOiJ5dG1XYXRjaFBsYXllckNvbnRyb2xzSG9zdCJ9LF8uSyhfLk8se0E6KCk9Pnt2YXIgVD1sKCksYmE9bSgpPy5wbGF5ZXJSZXNwb25zZT8ucGxheWFiaWxpdHlTdGF0dXM7cmV0dXJuIF8ueCgibXdlYl9oaWRlX2NvbnRyb2xzX2Zvcl91bnBsYXlhYmxlX3ZpZGVvX2tzIil8fCFiYXx8TVIoYmEpfHxULmlzRnVsbHNjcmVlbj8oeVMoVCl8fFQucGxheWVyU3RhdGU9PT0tMXx8VC5wbGF5ZXJTdGF0ZT09PTV8fFQucmMmJiFULmJhPy5yQT8hMTp1UyhUKT8hMDpULnBsYXllclN0YXRlPT09MXx8VC5wbGF5ZXJTdGF0ZT09PTN8fFQucGxheWVyU3RhdGU9PT0yKXx8VC5yYyYmdVMoVCl8fCRTKFQsYmEpOiExfSx0aGVuOigpPT5fLksoXy5JQixudWxsLF8uSyhfLk8se0E6eix0aGVuOigpPT5fLksoXy5JQixudWxsLF8uSyhHVix7RzpsLHRodW1ibmFpbERldGFpbHM6cGF9KSxfLksodVYse0c6bCxIOm4scGxheWFiaWxpdHlTdGF0dXM6RX0pKX0pLF8uSyhfLk8se0E6aGEsdGhlbjooKT0+Cl8uSyh2Vyx7ZGF0YTooKT0+UFMobSgpPy5wbGF5ZXJPdmVybGF5UmVuZGVyZXIsbSgpPy5qYikscHJvcHM6bH0pfSksXy5LKF8uTyx7QTp0YSx0aGVuOigpPT5fLksoTFYse0c6bCxwbGF5ZXJNdXRlZEF1dG9wbGF5T3ZlcmxheVJlbmRlcmVyOm1hfSl9KSxfLksoXy5PLHtBOigpPT4hdGEoKSx0aGVuOigpPT5fLksoXy5JQixudWxsLF8uSyhXVix7RzpsfSksXy5LKF8uTyx7QTooKT0+Xy54KCJtd2ViX2JldHRlcl9jYXB0aW9uc19wbGFjZW1lbnQiKSx0aGVuOigpPT5fLksoImRpdiIse2lkOiJjYXB0aW9ucy1nYWxvcmUtY29udGFpbmVyIn0pfSksXy5LKCJkaXYiLHtpZDoicGxheWVyLWNvbnRyb2wtb3ZlcmxheSIsY2xhc3M6SCwib246Y2xpY2siOmMsIm9uOnBvaW50ZXJtb3ZlIjpiLCJvbjp0b3VjaHN0YXJ0IjpkLCJvbjp0b3VjaG1vdmUiOmUsIm9uOnRvdWNoZW5kIjpmLCJvbjp0b3VjaGNhbmNlbCI6aH0sXy5LKCJkaXYiLHtjbGFzczpfLlAoInBsYXllci1jb250cm9scy1jb250ZW50IiwKeyJwb2ludGVyLWV2ZW50cy1vZmYiOkR9KX0sXy5LKCJkaXYiLHtjbGFzczoicGxheWVyLWNvbnRyb2xzLWJhY2tncm91bmQtY29udGFpbmVyIn0sXy5LKCJkaXYiLHtjbGFzczpfLlAoInBsYXllci1jb250cm9scy1iYWNrZ3JvdW5kIix7ImZ1bGxzY3JlZW4tcmVjcy1leHBhbmRlZCI6KCk9PklTKGwoKSl9KSwib246dG91Y2hzdGFydCI6ZCwib246dG91Y2htb3ZlIjplLCJvbjp0b3VjaGVuZCI6Ziwib246dG91Y2hjYW5jZWwiOmh9KSxfLksoImRpdiIse2NsYXNzOiJ5dG1XYXRjaFBsYXllckNvbnRyb2xzQmFja2dyb3VuZEFjdGlvbkl0ZW1zIiwib246Y2xpY2siOmt9LF8uSyhfLk8se0E6KCk9Pnt2YXIgVDtpZihUPSFBKCkpVD1tKCk/LnBsYXllclJlc3BvbnNlPy5wYWlkQ29udGVudE92ZXJsYXk/LnBhaWRDb250ZW50T3ZlcmxheVJlbmRlcmVyO3JldHVybiBUfSx0aGVuOigpPT5fLksoRFcse2RhdGE6KCk9Pm0oKT8ucGxheWVyUmVzcG9uc2U/LnBhaWRDb250ZW50T3ZlcmxheT8ucGFpZENvbnRlbnRPdmVybGF5UmVuZGVyZXJ9KX0pLApfLksoXy5PLHtBOlUsdGhlbjooKT0+Xy5LKGxXLHtlbmRzY3JlZW5SZW5kZXJlcjooKT0+bSgpPy5wbGF5ZXJSZXNwb25zZT8uZW5kc2NyZWVuPy5lbmRzY3JlZW5SZW5kZXJlcixHOmx9KX0pKSksXy5LKF8uTyx7QTooKT0+IUEoKSx0aGVuOigpPT5fLksoXy5JQixudWxsLF8uSyhfLk8se0E6Ryx0aGVuOigpPT5fLksoclcse0c6bH0pfSksXy5LKEZWLHtHOmwscGxheWVyT3ZlcmxheVJlbmRlcmVyOk19KSxfLksoVlYse2dmOmwsSWI6ITF9KSl9KSxfLksoImRpdiIse3N0eWxlOllVKCgpPT5KUyhsKCksQVMobT8uKCk/LndhdGNoTmV4dFJlc3BvbnNlKSkpfSxfLksoTFcse0c6bCxwbGF5ZXJPdmVybGF5UmVuZGVyZXI6TSx0aHVtYm5haWxQcmV2aWV3UmVuZGVyZXI6U30pLF8uSyhfLk8se0E6KCk9PiFBKCksdGhlbjooKT0+Xy5LKEdXLHtHOmwsd2F0Y2hOZXh0UmVzcG9uc2U6Un0pfSkpLF8uSyhfLk8se0E6KCk9PiFBKCksdGhlbjooKT0+Xy5LKF8uSUIsbnVsbCxfLksoImRpdiIsCntzdHlsZTpZVSgoKT0+e3ZhciBUPWwoKSxiYT1BUyhtPy4oKT8ud2F0Y2hOZXh0UmVzcG9uc2UpO3JldHVybiBIUyhULGJhKXx8VC5iYT8ubmg/ITE6VC5pc0xpdmV8fEpTKFQpfSl9LF8uSyhFVyx7RzpsLFNtOigpPT5DUyhtPy4oKT8ucGxheWVyT3ZlcmxheVJlbmRlcmVyKSxwbGF5ZXJPdmVybGF5UmVuZGVyZXI6TX0pKSxfLksoImRpdiIse3N0eWxlOllVKCgpPT57dmFyIFQ9bCgpO3JldHVybiBULmJhPy5uaD8hMTohSVMoVCl9KX0sXy5LKENWLHtMYjpsLGhmOlksY29uZmlnOigpPT4oe2NsYXNzTmFtZToid2F0Y2gtcGFnZS1wcm9ncmVzcy1iYXIiLHBvc2l0aW9uOjAsSW46RigpLFJhOkVTKG0/LigpPy5wbGF5ZXJPdmVybGF5UmVuZGVyZXIpLEtmOiExLGRpc2FibGVTY3J1YmJpbmc6QygpLG9uVG91Y2hNb3ZlOigpPT57dmFyIFQ9bCgpLGJhPUVTKG0/LigpPy5wbGF5ZXJPdmVybGF5UmVuZGVyZXIpO2JhJiYoVD1sVChULGJhKSxtVChUKSl9LFlvOigpPT57YlQoKX0sRm46KCk9Pgp7Y1QobCgpLHtJYzohMH0pfSxwcm9ncmVzc0NvbG9yOl8ueCgiZW5hYmxlX2N1c3RvbV9zY3J1YmJlcl92MiIpP0NTKG0/LigpPy5wbGF5ZXJPdmVybGF5UmVuZGVyZXIpPy5wcm9ncmVzc0NvbG9yOnZvaWQgMCxoZjpRbGEoR1MobT8uKCk/LnBsYXllck92ZXJsYXlSZW5kZXJlcikpfSl9KSksXy5LKEZXLHtHOmwsd2F0Y2hOZXh0UmVzcG9uc2U6Un0pKX0pLF8uSyhDVyx7RzpsLHdhdGNoTmV4dFJlc3BvbnNlOlIsdGh1bWJuYWlsUHJldmlld1JlbmRlcmVyOlMsYXV0b2Nyb3BDb25maWc6b2F9KSkpKX0pKX0pKX0sIlhlIik7TVcuaWRvbUNvbXBhdD0hMDt2YXIgY1Y9Xy5MKGE9Pnt2YXIgYj1fLk4oKCk9PmEuZGF0YSgpLkgsdm9pZCAwLCJEdWZtTSIpLGM9Xy5OKCgpPT5uZXcgcVcoKCk9Pnt9LHt0YTphLmNvbnRleHQoKS50YSxUYzphLmNvbnRleHQoKS5UYyxHYzphLmNvbnRleHQoKS5HYyxiYTphLmNvbnRleHQoKS5iYX0se2F1dG9uYXZFbmFibGVkOmEuY29udGV4dCgpLnRhLmRlKCksZWE6UmxhKGIoKSl9LGIpLHZvaWQgMCwialB4OGRlIiksZD1bXTtfLm5FKCgpPT57YigpJiZQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT57WlUoZCk7dVcuZm9yRWFjaChlPT57ZC5wdXNoKGUucmVnaXN0ZXIoKCk9PmMoKS51ZCgpLCgpPT5hLmRhdGEoKSkpfSl9KX0sIkh1WU1KYiIpO18uWXUoKCk9PntNVSgoKT0+YygpLnVkKCkpO2JUKCk7YS5jb250ZXh0KCkudGEuZXhpdEZ1bGxzY3JlZW4/LigpO1pVKGQpfSk7cmV0dXJuIF8uSyhfLm5HLHtFZjpbXy5vRygkVCxiKV19LF8uSygieXRtLWN1c3RvbS1jb250cm9sIix7Y2xhc3M6Inl0bUN1c3RvbUNvbnRyb2xIb3N0In0sCl8uSyhNVyx7RzooKT0+KDAsYygpLkIpKCksZGF0YTphLmRhdGF9KSkpfSwiWmUiKTsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy56Wj1mdW5jdGlvbihhKXtfLmJaKGEpO18uZFYoYSl9O18uenk9Xy56WjsKfWNhdGNoKGUpe18uX0R1bXBFeGNlcHRpb24oZSl9CnRyeXsKXy5XZCgicjc4RHJiIik7CgpfLlhkKCk7Cn1jYXRjaChlKXtfLl9EdW1wRXhjZXB0aW9uKGUpfQp9KS5jYWxsKHRoaXMsdGhpcy5kZWZhdWx0X2Jhc2UpOwovLyBHb29nbGUgSW5jLgo="}},"time_used":14,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":12,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCWLDW.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.621Z","timestamp":1785126258621,"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 /crypto/XTVCWLDW.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 04:24:18 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: \"1333fe00dfcb791c6c6fa263ec3bc6ff\"\r\nlast-modified: Wed, 03 Apr 2024 06:13:44 GMT\r\ncdn-cachedat: 08/14/2025 09:16:49\r\nx-amz-id-2: ArvTT3UuO5Y3+IYKb5OjQU75L6OqUr0E/3n7tfMTl5FDLexYNsHmFSrId75HH4qooA8QRUoyLr4=\r\nx-amz-request-id: A0ZD13YRC5ECHP8M\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 1333fe00dfcb791c6c6fa263ec3bc6ff\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: c0ef464d77a8858087cc25b998e60abc\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":444,"size_decoded":1211,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (444), with no line terminators","md5":"1333fe00dfcb791c6c6fa263ec3bc6ff","sha1":"0f0761f9891f6493ad4db47aadbc8f54206b2d30","sha256":"976f89dd10b337119caabcfbd2eac1765d2862b4c581974a8b0cc5707c8f5fb1","sha512":"9cd5ab8b49ea3fd4920b49a1a928886f593bd9b025361a22687e76107b2b879b4b9ff8ceeff38463bac1a1f5ef0ba49c994171a09e00fc3f81249fee6cc84571","ssdeep":"","tlshash":"8bf0a3b75718d52ca80289fc7eb498d0d35d14b171c854e4bc5fc3712102552cc2bc80","first_seen":"2024-06-23T09:00:04Z","last_seen":"2026-07-27T07:05:43.413476Z","times_seen":794,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik05IDE0QTUgNSAwIDEgMCA5IDRhNSA1IDAgMCAwIDAgMTBabTMuNDYtM2MuMjctLjQ1LjQ0LS45Ni41LTEuNUg3LjVBMiAyIDAgMCAwIDkuNDQgMTFoMy4wMlptLS44MSAxSDkuNWEzIDMgMCAwIDEtMi45Ni0yLjVoLTEuNWE0IDQgMCAwIDAgNi42IDIuNVpNNy41IDguNWg1LjQ3YTMuOTggMy45OCAwIDAgMC0uNS0xLjVIOS40M0EyIDIgMCAwIDAgNy41IDguNVpNMTEuNjUgNkg5LjVhMyAzIDAgMCAwLTIuOTYgMi41aC0xLjVhNCA0IDAgMCAxIDYuNi0yLjVaIi8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCESPRES.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.712Z","timestamp":1785126258712,"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 /crypto/XTVCESPRES.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 04:24:18 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: \"0bb03e67fc31f069b4500c3a213843c8\"\r\nlast-modified: Mon, 09 Mar 2026 08:10:32 GMT\r\nx-amz-id-2: bQh44wRG12kUrFeXFnVscQHWcPcCxRt/lACd0o2B6Qggu+eE6kGK5+NChnZBwnutiPZVl9IbB3Mt0ghBdoUTZADTUODXigD0\r\nx-amz-request-id: JR7S29SEDZJBQKMN\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 0bb03e67fc31f069b4500c3a213843c8\r\ncdn-proxyver: 1.43\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 03/09/2026 08:38:10\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 70c7c8bfb3f7a1422280f3e4609dcafd\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":1363,"size_decoded":1632,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1363), with no line terminators","md5":"0bb03e67fc31f069b4500c3a213843c8","sha1":"36557313327fc33f57fa033c5b42f3192acb769f","sha256":"d777b71e241e0f0eebc6b890a3fae021564ae7752a28e3ec6ec06528570ddd5b","sha512":"6c63e5cc41e019e93a7edba2e758e61a5a531bbdc5b3e2ab97b036d0f18c769330dfc6678bbb5a565c8b07c7c575a51e81acd4ac1fbfe18ac566efc52bd60aab","ssdeep":"","tlshash":"502133e86408b91c4847be9ceb7fce95930e9049b19631e926eabbad500b5d5cd83130","first_seen":"2026-03-10T03:52:02.113679Z","last_seen":"2026-07-27T07:05:43.289901Z","times_seen":357,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNERTlFNjciIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJtOC42IDkuMzguMDEuMDJhMS44NyAxLjg3IDAgMCAwIDEuNDQgMS40di4wMmwtMS4zIDMuMTZWMTRoLS4wMmEuMDMuMDMgMCAwIDEtLjAyIDBsLS42NS0uMjYtLjAxLS4wMXYtLjAybDEuMzMtMy4xMXYtLjAyaC0uMDJsLS4wMy4wMWExMDYxLjAxIDEwNjEuMDEgMCAwIDEtMi44IDIuNzlMNiAxMi44MmwtLjAxLS4wMnYtLjAybDIuODYtMi43M3YtLjAyaC0uMDJsLTQgMS43MWEuMDMuMDMgMCAwIDEtLjA0LS4wMUw0LjQ3IDExdi0uMDRsLjAyLS4wMSA0LjA4LTEuNTdoLjAzWm0yLjE3IDEuNDQuMDEuMDJ2Mi44NGwtLjAxLjAyaC0uNjZsLS4wMi0uMDJ2LTIuODRsLjAyLS4wMmguNjZabS42OS0uMjUuOSAyLjE2di4wMmwtLjU3LjIzaC0uMDJsLS45MS0yLjE2di0uMDJsLjU3LS4yM2guMDNabS41Mi0uNDcgMS40IDEuMzd2LjAzbC0uNC4zOGgtLjAzbC0xLjQtMS4zN3YtLjAzbC40LS4zOGguMDNabTEuOTgtMS4zMi4wMi4wMS4wMS4wMi4wMS4zN3YuMDJoLS4wMWwtLjAxLjAxaC0uMDFsLTkuOTEuMjVhLjA0LjA0IDAgMCAxLS4wMyAwdi0uMDNMNCA4LjU3di0uMDJhLjA0LjA0IDAgMCAxIC4wMi0uMDJoLjAybDkuOTIuMjVaTTguNzMgNGguMDF2LjAybDEuMzEgMy4xNWEuMDIuMDIgMCAwIDEgMCAuMDIuMDIuMDIgMCAwIDEtLjAxLjAxIDEuODcgMS44NyAwIDAgMC0xLjQzIDEuNDFIOC42YS4wMy4wMyAwIDAgMS0uMDMgMEw0LjUgNy4wNmwtLjAxLS4wMWEuMDQuMDQgMCAwIDEgMC0uMDRsLjMyLS43NC4wMS0uMDFoLjAybDQgMS43MWguMDJ2LS4wMkw2IDUuMnYtLjA0bC41My0uNTMuMDEtLjAxaC4wM2ExMTA5LjM4IDExMDkuMzggMCAwIDEgMi44IDIuOGguMDFWNy40bC0xLjMzLTMuMXYtLjAzaC4wMUw4LjcxIDRhLjAzLjAzIDAgMCAxIC4wMiAwWm00Ljk2IDMuNDJoLjAybC4xOC40MXYuMDJsLS4wMi4wMi0xLjU3LjY3aC0uMDRsLS4yLS40N3YtLjAzbC4wMS0uMDEgMS42LS42MmguMDJabS0uNy0xLjMuMzkuMzh2LjAzbC0xLjQgMS4zN2gtLjAzbC0uNC0uMzlWNy41bDEuNC0xLjM4aC4wM1ptLS42NS0uODdjLjAyIDAgLjAyLjAxLjAyLjAzbC0uOSAyLjEzLS4wNC4wMi0uNTQtLjIzYS4wMi4wMiAwIDAgMS0uMDItLjAzbC45LTIuMTNjMC0uMDIuMDItLjAyLjA0LS4wMmwuNTQuMjNabS0xLjU3LS45NC4wMS4wMXYyLjg0bC0uMDEuMDJoLS42NmwtLjAyLS4wMlY0LjMybC4wMi0uMDFoLjY2WiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCGGRA.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.745Z","timestamp":1785126258745,"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 /crypto/XTVCGGRA.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 04:24:18 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: \"4fbc81b892a2f4c520707407a7cb03cd\"\r\nlast-modified: Mon, 05 Aug 2024 13:40:21 GMT\r\ncdn-cachedat: 08/14/2025 09:11:13\r\nx-amz-id-2: gqyr94CJDUu4+pmjvY6Kw6cI7+qSCtZyJKwg5WWFxncib6p+gXDQ8Vtn5umn5xcKFyr2623Ufms=\r\nx-amz-request-id: SZ12EW71X0MZ43GT\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 4fbc81b892a2f4c520707407a7cb03cd\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: 26f3a7b2f037681475b52feef31a4b62\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":1164,"size_decoded":1597,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1164), with no line terminators","md5":"4fbc81b892a2f4c520707407a7cb03cd","sha1":"da3c70bfea08921479b38948cc1f4847f7b71607","sha256":"e0e5cec321b547cdb81032ae8ffa3adfee253675ae433481b9ad2583353ddb3c","sha512":"3b1543fd6b09d89cec964ea5e9ebd050e4664fcc62118593e2bf33be54547eae068f3a325637789e94be3b458a3a7a2eec41df53dd308697209ebd0914d3cea4","ssdeep":"","tlshash":"7621dc29c44ce94e9147e55cd77b80a5230e40a6b15643b82defcbbda00e591dd02934","first_seen":"2024-09-19T19:57:02.86471Z","last_seen":"2026-07-27T07:05:43.26971Z","times_seen":297,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJtNi43NiAxMC4xNS0uNjEuMzJjLS4wMiAwLS4wMi4wMi0uMDEuMDNhMi45NCAyLjk0IDAgMCAwIDUuMDMtLjMuNjQuNjQgMCAwIDAgLjA2LS4zN2MtLjAyLS4xMy0uMS0uMjItLjI1LS4yOGExIDEgMCAwIDAtLjM2LS4wNWMtLjIyIDAtLjQ4LjA0LS43Ni4xMWE4LjQyIDguNDIgMCAwIDAtMS4zOC40MkwxMy45MiA3Yy4wNy0uMDQuMTMtLjAyLjE3LjA0di4wNGMwIC4wNCAwIC4wNi0uMDMuMDhsLS4zLjJjLS4yMy4xOS0uMzkuNDItLjQ3LjdhMi41NCAyLjU0IDAgMCAwLS4wNS43NCA0LjQyIDQuNDIgMCAwIDEtMS42MyAzLjYxYy0uNzUuNjItMS42MS45OC0yLjU4IDEuMDdhNC43MSA0LjcxIDAgMCAxLTQuNDUtMi4xNGMtLjAyLS4wMi0uMDQtLjAzLS4wNi0uMDJMMi4wMyAxMi42IDIgMTIuNmwuMDMtLjAzIDIuNDQtMS4zNi4wMS0uMDJhNC40IDQuNCAwIDAgMS0uNDItMy40MiA0LjUyIDQuNTIgMCAwIDEgMi44LTIuOTcgNC43NiA0Ljc2IDAgMCAxIDMuNzIuMTQgNC43IDQuNyAwIDAgMSAxLjMyLjg4bDEuMTUtLjc2Yy4xLS4wNy4yLS4wNC4yOC4xaC4wMWMuMDUuMTEuMDIuMi0uMS4yN2wtNC40OSAyLjVoLS4wMVY3LjlsMS42MS0xLjA3Yy4wMiAwIC4wMi0uMDIgMC0uMDNsLS4wMy0uMDItLjQ0LS4yN2EyLjkzIDIuOTMgMCAwIDAtNC4xNSAxLjk0Yy0uMTIuNjItLjA0IDEuMjMuMjcgMS44MS4wMS4wMy4wMy4wMy4wNS4wMmw4LjM2LTQuOWMuMS0uMDYuMTgtLjEuMjMtLjFhLjMyLjMyIDAgMCAxIC4zNi4zYzAgLjEtLjAyLjE3LS4wNy4yMmEzMzExLjk5IDMzMTEuOTkgMCAwIDAtOC4xNyA0LjM0WiIgZmlsbD0iI2ZmZiIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0iYSIgeDE9IjE4IiB5MT0iMCIgeDI9IjAiIHkyPSIxOCIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIG9mZnNldD0iLjI4IiBzdG9wLWNvbG9yPSIjMDEwMTAxIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjRTU3NTM2Ii8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCSTG.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.788Z","timestamp":1785126258788,"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 /crypto/XTVCSTG.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 04:24:18 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: \"c498c97ebeac87bcd1aa737d9d13eb49\"\r\nlast-modified: Tue, 04 Oct 2022 10:23:08 GMT\r\ncdn-cachedat: 08/09/2025 14:38:28\r\nx-amz-id-2: uPRFvPnjxk9e9QVxHpyZh6AxqwAk69wjWT6zrq4HvGD6o3BjSpwJjkmEj15Ij8m0Gos3wiYEdLc=\r\nx-amz-request-id: A9DQEZKN8QMYNRCG\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: c498c97ebeac87bcd1aa737d9d13eb49\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: 529f2ce9f611a58992c8ff7cac2161cc\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":1156,"size_decoded":1572,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1156), with no line terminators","md5":"c498c97ebeac87bcd1aa737d9d13eb49","sha1":"c92974c91ae79edacb1e79a83fb3e93e758ce00a","sha256":"b8f6c64403aea4719c469c8acf89ea21920e707fae95b7a20fa8220b17907914","sha512":"de0ca262c258afab6740ce66872ead0d89d752b4c3e8c1d37e55d6d4e17fadeb4cc0fdcfe8cb3eb43694f679b6ef2c175c0941f5db63e2c4d11a8918861ff00d","ssdeep":"","tlshash":"e6211137c85cd96d5483c478da72c463230e20fdf64b81986cdde7b960875c6d817c24","first_seen":"2026-01-21T03:15:42.312072Z","last_seen":"2026-07-27T05:33:43.609883Z","times_seen":22,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYXFjaHpjbW15KSIgZD0iTTAgMGgxOHYxOEgweiIvPjxwYXRoIGQ9Ik00LjA0IDguMjRjLjE0LS4yLjM0LS4zNi42LS40MmE1Ljc4IDUuNzggMCAwIDAgMi4wMi0xLjE4Yy4zMy0uMzQgMS0xLjY4IDEuMTctMi4wMmwuMDItLjA0Yy4wNS0uMTIuMTgtLjM5LjQ0LS41OGE1LjAzIDUuMDMgMCAwIDAtNC4yNSA0LjI0Wk00IDkuNDVBNS4wMyA1LjAzIDAgMCAwIDguNCAxNGExLjU1IDEuNTUgMCAwIDEtLjM2LS41MyA1LjA4IDUuMDggMCAwIDAtLjA1LS4xbC0uMDctLjE3Yy0uMi0uNDYtLjctMS42LTEuMjYtMi4wMi0uNjctLjUtMS4zNC0xLjAxLTEuODQtMS4xOC0uMzItLjEtLjYzLS4yNy0uODItLjU1Wk05LjY3IDE0QTUuMDMgNS4wMyAwIDAgMCAxNCA5LjRjLS4xNS4yLS4zNy4zNC0uNjUuNDMtLjUuMTctMS42OCAxLjAxLTIuMDEgMS4zNUE5LjUzIDkuNTMgMCAwIDAgMTAgMTMuMzZjLS4wOS4yNy0uMTcuNDgtLjMzLjYzWk0xMy45NyA4LjI4QTUuMDMgNS4wMyAwIDAgMCA5LjcgNGMuMjcuMi40LjQ2LjQ1LjU4bC4wMi4wNC4xMi4yOGMuMi40NS41MSAxLjIgMS4wNSAxLjc0LjUzLjU0IDEuMjguODYgMS43MyAxLjA1bC4yOC4xM2MuMTkuMS40NC4yNS42Mi40NloiIGZpbGw9IiM4RThFOEUiLz48cGF0aCBkPSJNOS4zOCA2LjI2YS4zNi4zNiAwIDAgMC0uNyAwIDMuNjIgMy42MiAwIDAgMS0yLjQyIDIuMzYuMzYuMzYgMCAwIDAgMCAuNyAzLjYyIDMuNjIgMCAwIDEgMi4zNiAyLjQyYy4xLjM0LjU4LjM1LjcgMGEzLjYyIDMuNjIgMCAwIDEgMi40Mi0yLjM2LjM2LjM2IDAgMCAwIDAtLjcgMy42MiAzLjYyIDAgMCAxLTIuMzYtMi40MloiIGZpbGw9IiNmZmYiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImFxY2h6Y21teSIgeDE9IjMuMzUiIHkxPSIzLjEyIiB4Mj0iMjEuOSIgeTI9IjI0LjQzIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iIzFBMUUyMSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzA2MDYwQSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjwvc3ZnPg=="}},"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":"besttrader.live/js/sweetalert.min.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.029Z","timestamp":1785126256029,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /js/sweetalert.min.js HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: W/\"65211e70-9f68\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":40808,"size_decoded":11630,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (40808), with no line terminators","md5":"f3b8ce97ff6ce324da6232da353adf40","sha1":"2a3daabc70232c6350ab48d32605dc4a6ac1f1fa","sha256":"2ac46ebee46d515be86deeba385b4e41f8cff160364b362c9a6e153df327c66b","sha512":"000d41ce9e50d0ad4a6a728a9af37fe1ddc844a565bfd3d883014fbe6df69cf3ba412f321f51ceecb6e0075a6088ec4fb5f7a0e73127d9b6bae0c51ca89c7a08","ssdeep":"384:/BLa4qL1li0jldLUuuRzdNU/CfFqLyX9ye1hAbj/i5Yy/kyyeu8pgUqaF2XSSHEj:ZLahUvdNU/CNqWX9ye1hWz8+B3c2Bkj","tlshash":"96031a96758470a643e398f191ef020ef2359523b84798d5b361e8e88ff4e8d50a7f1b","first_seen":"2023-03-07T01:03:31Z","last_seen":"2026-07-27T07:04:49.464391Z","times_seen":11583,"resource_available":true,"data":"IWZ1bmN0aW9uKHQsZSl7Im9iamVjdCI9PXR5cGVvZiBleHBvcnRzJiYib2JqZWN0Ij09dHlwZW9mIG1vZHVsZT9tb2R1bGUuZXhwb3J0cz1lKCk6ImZ1bmN0aW9uIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZD9kZWZpbmUoW10sZSk6Im9iamVjdCI9PXR5cGVvZiBleHBvcnRzP2V4cG9ydHMuc3dhbD1lKCk6dC5zd2FsPWUoKX0odGhpcyxmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbih0KXtmdW5jdGlvbiBlKG8pe2lmKG5bb10pcmV0dXJuIG5bb10uZXhwb3J0czt2YXIgcj1uW29dPXtpOm8sbDohMSxleHBvcnRzOnt9fTtyZXR1cm4gdFtvXS5jYWxsKHIuZXhwb3J0cyxyLHIuZXhwb3J0cyxlKSxyLmw9ITAsci5leHBvcnRzfXZhciBuPXt9O3JldHVybiBlLm09dCxlLmM9bixlLmQ9ZnVuY3Rpb24odCxuLG8pe2Uubyh0LG4pfHxPYmplY3QuZGVmaW5lUHJvcGVydHkodCxuLHtjb25maWd1cmFibGU6ITEsZW51bWVyYWJsZTohMCxnZXQ6b30pfSxlLm49ZnVuY3Rpb24odCl7dmFyIG49dCYmdC5fX2VzTW9kdWxlP2Z1bmN0aW9uKCl7cmV0dXJuIHQuZGVmYXVsdH06ZnVuY3Rpb24oKXtyZXR1cm4gdH07cmV0dXJuIGUuZChuLCJhIixuKSxufSxlLm89ZnVuY3Rpb24odCxlKXtyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQsZSl9LGUucD0iIixlKGUucz04KX0oW2Z1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBvPSJzd2FsLWJ1dHRvbiI7ZS5DTEFTU19OQU1FUz17TU9EQUw6InN3YWwtbW9kYWwiLE9WRVJMQVk6InN3YWwtb3ZlcmxheSIsU0hPV19NT0RBTDoic3dhbC1vdmVybGF5LS1zaG93LW1vZGFsIixNT0RBTF9USVRMRToic3dhbC10aXRsZSIsTU9EQUxfVEVYVDoic3dhbC10ZXh0IixJQ09OOiJzd2FsLWljb24iLElDT05fQ1VTVE9NOiJzd2FsLWljb24tLWN1c3RvbSIsQ09OVEVOVDoic3dhbC1jb250ZW50IixGT09URVI6InN3YWwtZm9vdGVyIixCVVRUT05fQ09OVEFJTkVSOiJzd2FsLWJ1dHRvbi1jb250YWluZXIiLEJVVFRPTjpvLENPTkZJUk1fQlVUVE9OOm8rIi0tY29uZmlybSIsQ0FOQ0VMX0JVVFRPTjpvKyItLWNhbmNlbCIsREFOR0VSX0JVVFRPTjpvKyItLWRhbmdlciIsQlVUVE9OX0xPQURJTkc6bysiLS1sb2FkaW5nIixCVVRUT05fTE9BREVSOm8rIl9fbG9hZGVyIn0sZS5kZWZhdWx0PWUuQ0xBU1NfTkFNRVN9LGZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLGUuZ2V0Tm9kZT1mdW5jdGlvbih0KXt2YXIgZT0iLiIrdDtyZXR1cm4gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihlKX0sZS5zdHJpbmdUb05vZGU9ZnVuY3Rpb24odCl7dmFyIGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7cmV0dXJuIGUuaW5uZXJIVE1MPXQudHJpbSgpLGUuZmlyc3RDaGlsZH0sZS5pbnNlcnRBZnRlcj1mdW5jdGlvbih0LGUpe3ZhciBuPWUubmV4dFNpYmxpbmc7ZS5wYXJlbnROb2RlLmluc2VydEJlZm9yZSh0LG4pfSxlLnJlbW92ZU5vZGU9ZnVuY3Rpb24odCl7dC5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKHQpfSxlLnRocm93RXJyPWZ1bmN0aW9uKHQpe3Rocm93IHQ9dC5yZXBsYWNlKC8gKyg/PSApL2csIiIpLCJTd2VldEFsZXJ0OiAiKyh0PXQudHJpbSgpKX0sZS5pc1BsYWluT2JqZWN0PWZ1bmN0aW9uKHQpe2lmKCJbb2JqZWN0IE9iamVjdF0iIT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpKXJldHVybiExO3ZhciBlPU9iamVjdC5nZXRQcm90b3R5cGVPZih0KTtyZXR1cm4gbnVsbD09PWV8fGU9PT1PYmplY3QucHJvdG90eXBlfSxlLm9yZGluYWxTdWZmaXhPZj1mdW5jdGlvbih0KXt2YXIgZT10JTEwLG49dCUxMDA7cmV0dXJuIDE9PT1lJiYxMSE9PW4/dCsic3QiOjI9PT1lJiYxMiE9PW4/dCsibmQiOjM9PT1lJiYxMyE9PW4/dCsicmQiOnQrInRoIn19LGZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbyh0KXtmb3IodmFyIG4gaW4gdCllLmhhc093blByb3BlcnR5KG4pfHwoZVtuXT10W25dKX1PYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksbyhuKDI1KSk7dmFyIHI9bigyNik7ZS5vdmVybGF5TWFya3VwPXIuZGVmYXVsdCxvKG4oMjcpKSxvKG4oMjgpKSxvKG4oMjkpKTt2YXIgaT1uKDApLGE9aS5kZWZhdWx0Lk1PREFMX1RJVExFLHM9aS5kZWZhdWx0Lk1PREFMX1RFWFQsYz1pLmRlZmF1bHQuSUNPTixsPWkuZGVmYXVsdC5GT09URVI7ZS5pY29uTWFya3VwPSdcbiAgPGRpdiBjbGFzcz0iJytjKyciPjwvZGl2PicsZS50aXRsZU1hcmt1cD0nXG4gIDxkaXYgY2xhc3M9IicrYSsnIj48L2Rpdj5cbicsZS50ZXh0TWFya3VwPSdcbiAgPGRpdiBjbGFzcz0iJytzKyciPjwvZGl2PicsZS5mb290ZXJNYXJrdXA9J1xuICA8ZGl2IGNsYXNzPSInK2wrJyI+PC9kaXY+XG4nfSxmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbz1uKDEpO2UuQ09ORklSTV9LRVk9ImNvbmZpcm0iLGUuQ0FOQ0VMX0tFWT0iY2FuY2VsIjt2YXIgcj17dmlzaWJsZTohMCx0ZXh0Om51bGwsdmFsdWU6bnVsbCxjbGFzc05hbWU6IiIsY2xvc2VNb2RhbDohMH0saT1PYmplY3QuYXNzaWduKHt9LHIse3Zpc2libGU6ITEsdGV4dDoiQ2FuY2VsIix2YWx1ZTpudWxsfSksYT1PYmplY3QuYXNzaWduKHt9LHIse3RleHQ6Ik9LIix2YWx1ZTohMH0pO2UuZGVmYXVsdEJ1dHRvbkxpc3Q9e2NhbmNlbDppLGNvbmZpcm06YX07dmFyIHM9ZnVuY3Rpb24odCl7c3dpdGNoKHQpe2Nhc2UgZS5DT05GSVJNX0tFWTpyZXR1cm4gYTtjYXNlIGUuQ0FOQ0VMX0tFWTpyZXR1cm4gaTtkZWZhdWx0OnZhciBuPXQuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkrdC5zbGljZSgxKTtyZXR1cm4gT2JqZWN0LmFzc2lnbih7fSxyLHt0ZXh0Om4sdmFsdWU6dH0pfX0sYz1mdW5jdGlvbih0LGUpe3ZhciBuPXModCk7cmV0dXJuITA9PT1lP09iamVjdC5hc3NpZ24oe30sbix7dmlzaWJsZTohMH0pOiJzdHJpbmciPT10eXBlb2YgZT9PYmplY3QuYXNzaWduKHt9LG4se3Zpc2libGU6ITAsdGV4dDplfSk6by5pc1BsYWluT2JqZWN0KGUpP09iamVjdC5hc3NpZ24oe3Zpc2libGU6ITB9LG4sZSk6T2JqZWN0LmFzc2lnbih7fSxuLHt2aXNpYmxlOiExfSl9LGw9ZnVuY3Rpb24odCl7Zm9yKHZhciBlPXt9LG49MCxvPU9iamVjdC5rZXlzKHQpO248by5sZW5ndGg7bisrKXt2YXIgcj1vW25dLGE9dFtyXSxzPWMocixhKTtlW3JdPXN9cmV0dXJuIGUuY2FuY2VsfHwoZS5jYW5jZWw9aSksZX0sdT1mdW5jdGlvbih0KXt2YXIgbj17fTtzd2l0Y2godC5sZW5ndGgpe2Nhc2UgMTpuW2UuQ0FOQ0VMX0tFWV09T2JqZWN0LmFzc2lnbih7fSxpLHt2aXNpYmxlOiExfSk7YnJlYWs7Y2FzZSAyOm5bZS5DQU5DRUxfS0VZXT1jKGUuQ0FOQ0VMX0tFWSx0WzBdKSxuW2UuQ09ORklSTV9LRVldPWMoZS5DT05GSVJNX0tFWSx0WzFdKTticmVhaztkZWZhdWx0Om8udGhyb3dFcnIoIkludmFsaWQgbnVtYmVyIG9mICdidXR0b25zJyBpbiBhcnJheSAoIit0Lmxlbmd0aCsiKS5cbiAgICAgIElmIHlvdSB3YW50IG1vcmUgdGhhbiAyIGJ1dHRvbnMsIHlvdSBuZWVkIHRvIHVzZSBhbiBvYmplY3QhIil9cmV0dXJuIG59O2UuZ2V0QnV0dG9uTGlzdE9wdHM9ZnVuY3Rpb24odCl7dmFyIG49ZS5kZWZhdWx0QnV0dG9uTGlzdDtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIHQ/bltlLkNPTkZJUk1fS0VZXT1jKGUuQ09ORklSTV9LRVksdCk6QXJyYXkuaXNBcnJheSh0KT9uPXUodCk6by5pc1BsYWluT2JqZWN0KHQpP249bCh0KTohMD09PXQ/bj11KFshMCwhMF0pOiExPT09dD9uPXUoWyExLCExXSk6dm9pZCAwPT09dCYmKG49ZS5kZWZhdWx0QnV0dG9uTGlzdCksbn19LGZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBvPW4oMSkscj1uKDIpLGk9bigwKSxhPWkuZGVmYXVsdC5NT0RBTCxzPWkuZGVmYXVsdC5PVkVSTEFZLGM9bigzMCksbD1uKDMxKSx1PW4oMzIpLGY9bigzMyk7ZS5pbmplY3RFbEludG9Nb2RhbD1mdW5jdGlvbih0KXt2YXIgZT1vLmdldE5vZGUoYSksbj1vLnN0cmluZ1RvTm9kZSh0KTtyZXR1cm4gZS5hcHBlbmRDaGlsZChuKSxufTt2YXIgZD1mdW5jdGlvbih0KXt0LmNsYXNzTmFtZT1hLHQudGV4dENvbnRlbnQ9IiJ9LHA9ZnVuY3Rpb24odCxlKXtkKHQpO3ZhciBuPWUuY2xhc3NOYW1lO24mJnQuY2xhc3NMaXN0LmFkZChuKX07ZS5pbml0TW9kYWxDb250ZW50PWZ1bmN0aW9uKHQpe3ZhciBlPW8uZ2V0Tm9kZShhKTtwKGUsdCksYy5kZWZhdWx0KHQuaWNvbiksbC5pbml0VGl0bGUodC50aXRsZSksbC5pbml0VGV4dCh0LnRleHQpLGYuZGVmYXVsdCh0LmNvbnRlbnQpLHUuZGVmYXVsdCh0LmJ1dHRvbnMsdC5kYW5nZXJNb2RlKX07dmFyIG09ZnVuY3Rpb24oKXt2YXIgdD1vLmdldE5vZGUocyksZT1vLnN0cmluZ1RvTm9kZShyLm1vZGFsTWFya3VwKTt0LmFwcGVuZENoaWxkKGUpfTtlLmRlZmF1bHQ9bX0sZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG89bigzKSxyPXtpc09wZW46ITEscHJvbWlzZTpudWxsLGFjdGlvbnM6e30sdGltZXI6bnVsbH0saT1PYmplY3QuYXNzaWduKHt9LHIpO2UucmVzZXRTdGF0ZT1mdW5jdGlvbigpe2k9T2JqZWN0LmFzc2lnbih7fSxyKX0sZS5zZXRBY3Rpb25WYWx1ZT1mdW5jdGlvbih0KXtpZigic3RyaW5nIj09dHlwZW9mIHQpcmV0dXJuIGEoby5DT05GSVJNX0tFWSx0KTtmb3IodmFyIGUgaW4gdClhKGUsdFtlXSl9O3ZhciBhPWZ1bmN0aW9uKHQsZSl7aS5hY3Rpb25zW3RdfHwoaS5hY3Rpb25zW3RdPXt9KSxPYmplY3QuYXNzaWduKGkuYWN0aW9uc1t0XSx7dmFsdWU6ZX0pfTtlLnNldEFjdGlvbk9wdGlvbnNGb3I9ZnVuY3Rpb24odCxlKXt2YXIgbj0odm9pZCAwPT09ZT97fTplKS5jbG9zZU1vZGFsLG89dm9pZCAwPT09bnx8bjtPYmplY3QuYXNzaWduKGkuYWN0aW9uc1t0XSx7Y2xvc2VNb2RhbDpvfSl9LGUuZGVmYXVsdD1pfSxmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbz1uKDEpLHI9bigzKSxpPW4oMCksYT1pLmRlZmF1bHQuT1ZFUkxBWSxzPWkuZGVmYXVsdC5TSE9XX01PREFMLGM9aS5kZWZhdWx0LkJVVFRPTixsPWkuZGVmYXVsdC5CVVRUT05fTE9BRElORyx1PW4oNSk7ZS5vcGVuTW9kYWw9ZnVuY3Rpb24oKXtvLmdldE5vZGUoYSkuY2xhc3NMaXN0LmFkZChzKSx1LmRlZmF1bHQuaXNPcGVuPSEwfTt2YXIgZj1mdW5jdGlvbigpe28uZ2V0Tm9kZShhKS5jbGFzc0xpc3QucmVtb3ZlKHMpLHUuZGVmYXVsdC5pc09wZW49ITF9O2Uub25BY3Rpb249ZnVuY3Rpb24odCl7dm9pZCAwPT09dCYmKHQ9ci5DQU5DRUxfS0VZKTt2YXIgZT11LmRlZmF1bHQuYWN0aW9uc1t0XSxuPWUudmFsdWU7aWYoITE9PT1lLmNsb3NlTW9kYWwpe3ZhciBpPWMrIi0tIit0O28uZ2V0Tm9kZShpKS5jbGFzc0xpc3QuYWRkKGwpfWVsc2UgZigpO3UuZGVmYXVsdC5wcm9taXNlLnJlc29sdmUobil9LGUuZ2V0U3RhdGU9ZnVuY3Rpb24oKXt2YXIgdD1PYmplY3QuYXNzaWduKHt9LHUuZGVmYXVsdCk7cmV0dXJuIGRlbGV0ZSB0LnByb21pc2UsZGVsZXRlIHQudGltZXIsdH0sZS5zdG9wTG9hZGluZz1mdW5jdGlvbigpe2Zvcih2YXIgdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuIitjKSxlPTA7ZTx0Lmxlbmd0aDtlKyspe3RbZV0uY2xhc3NMaXN0LnJlbW92ZShsKX19fSxmdW5jdGlvbih0LGUpe3ZhciBuO249ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30oKTt0cnl7bj1ufHxGdW5jdGlvbigicmV0dXJuIHRoaXMiKSgpfHwoMCxldmFsKSgidGhpcyIpfWNhdGNoKHQpeyJvYmplY3QiPT10eXBlb2Ygd2luZG93JiYobj13aW5kb3cpfXQuZXhwb3J0cz1ufSxmdW5jdGlvbih0LGUsbil7KGZ1bmN0aW9uKGUpe3QuZXhwb3J0cz1lLnN3ZWV0QWxlcnQ9big5KX0pLmNhbGwoZSxuKDcpKX0sZnVuY3Rpb24odCxlLG4peyhmdW5jdGlvbihlKXt0LmV4cG9ydHM9ZS5zd2FsPW4oMTApfSkuY2FsbChlLG4oNykpfSxmdW5jdGlvbih0LGUsbil7InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJm4oMTEpLG4oMTYpO3ZhciBvPW4oMjMpLmRlZmF1bHQ7dC5leHBvcnRzPW99LGZ1bmN0aW9uKHQsZSxuKXt2YXIgbz1uKDEyKTsic3RyaW5nIj09dHlwZW9mIG8mJihvPVtbdC5pLG8sIiJdXSk7dmFyIHI9e2luc2VydEF0OiJ0b3AifTtyLnRyYW5zZm9ybT12b2lkIDA7bigxNCkobyxyKTtvLmxvY2FscyYmKHQuZXhwb3J0cz1vLmxvY2Fscyl9LGZ1bmN0aW9uKHQsZSxuKXtlPXQuZXhwb3J0cz1uKDEzKSh2b2lkIDApLGUucHVzaChbdC5pLCcuc3dhbC1pY29uLS1lcnJvcntib3JkZXItY29sb3I6I2YyNzQ3NDstd2Via2l0LWFuaW1hdGlvbjphbmltYXRlRXJyb3JJY29uIC41czthbmltYXRpb246YW5pbWF0ZUVycm9ySWNvbiAuNXN9LnN3YWwtaWNvbi0tZXJyb3JfX3gtbWFya3twb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmJsb2NrOy13ZWJraXQtYW5pbWF0aW9uOmFuaW1hdGVYTWFyayAuNXM7YW5pbWF0aW9uOmFuaW1hdGVYTWFyayAuNXN9LnN3YWwtaWNvbi0tZXJyb3JfX2xpbmV7cG9zaXRpb246YWJzb2x1dGU7aGVpZ2h0OjVweDt3aWR0aDo0N3B4O2JhY2tncm91bmQtY29sb3I6I2YyNzQ3NDtkaXNwbGF5OmJsb2NrO3RvcDozN3B4O2JvcmRlci1yYWRpdXM6MnB4fS5zd2FsLWljb24tLWVycm9yX19saW5lLS1sZWZ0ey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyk7bGVmdDoxN3B4fS5zd2FsLWljb24tLWVycm9yX19saW5lLS1yaWdodHstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTQ1ZGVnKTt0cmFuc2Zvcm06cm90YXRlKC00NWRlZyk7cmlnaHQ6MTZweH1ALXdlYmtpdC1rZXlmcmFtZXMgYW5pbWF0ZUVycm9ySWNvbnswJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGVYKDEwMGRlZyk7dHJhbnNmb3JtOnJvdGF0ZVgoMTAwZGVnKTtvcGFjaXR5OjB9dG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlWCgwZGVnKTt0cmFuc2Zvcm06cm90YXRlWCgwZGVnKTtvcGFjaXR5OjF9fUBrZXlmcmFtZXMgYW5pbWF0ZUVycm9ySWNvbnswJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGVYKDEwMGRlZyk7dHJhbnNmb3JtOnJvdGF0ZVgoMTAwZGVnKTtvcGFjaXR5OjB9dG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlWCgwZGVnKTt0cmFuc2Zvcm06cm90YXRlWCgwZGVnKTtvcGFjaXR5OjF9fUAtd2Via2l0LWtleWZyYW1lcyBhbmltYXRlWE1hcmt7MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoLjQpO3RyYW5zZm9ybTpzY2FsZSguNCk7bWFyZ2luLXRvcDoyNnB4O29wYWNpdHk6MH01MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoLjQpO3RyYW5zZm9ybTpzY2FsZSguNCk7bWFyZ2luLXRvcDoyNnB4O29wYWNpdHk6MH04MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMS4xNSk7dHJhbnNmb3JtOnNjYWxlKDEuMTUpO21hcmdpbi10b3A6LTZweH10b3std2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSk7bWFyZ2luLXRvcDowO29wYWNpdHk6MX19QGtleWZyYW1lcyBhbmltYXRlWE1hcmt7MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoLjQpO3RyYW5zZm9ybTpzY2FsZSguNCk7bWFyZ2luLXRvcDoyNnB4O29wYWNpdHk6MH01MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoLjQpO3RyYW5zZm9ybTpzY2FsZSguNCk7bWFyZ2luLXRvcDoyNnB4O29wYWNpdHk6MH04MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMS4xNSk7dHJhbnNmb3JtOnNjYWxlKDEuMTUpO21hcmdpbi10b3A6LTZweH10b3std2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSk7bWFyZ2luLXRvcDowO29wYWNpdHk6MX19LnN3YWwtaWNvbi0td2FybmluZ3tib3JkZXItY29sb3I6I2Y4YmI4Njstd2Via2l0LWFuaW1hdGlvbjpwdWxzZVdhcm5pbmcgLjc1cyBpbmZpbml0ZSBhbHRlcm5hdGU7YW5pbWF0aW9uOnB1bHNlV2FybmluZyAuNzVzIGluZmluaXRlIGFsdGVybmF0ZX0uc3dhbC1pY29uLS13YXJuaW5nX19ib2R5e3dpZHRoOjVweDtoZWlnaHQ6NDdweDt0b3A6MTBweDtib3JkZXItcmFkaXVzOjJweDttYXJnaW4tbGVmdDotMnB4fS5zd2FsLWljb24tLXdhcm5pbmdfX2JvZHksLnN3YWwtaWNvbi0td2FybmluZ19fZG90e3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6NTAlO2JhY2tncm91bmQtY29sb3I6I2Y4YmI4Nn0uc3dhbC1pY29uLS13YXJuaW5nX19kb3R7d2lkdGg6N3B4O2hlaWdodDo3cHg7Ym9yZGVyLXJhZGl1czo1MCU7bWFyZ2luLWxlZnQ6LTRweDtib3R0b206LTExcHh9QC13ZWJraXQta2V5ZnJhbWVzIHB1bHNlV2FybmluZ3swJXtib3JkZXItY29sb3I6I2Y4ZDQ4Nn10b3tib3JkZXItY29sb3I6I2Y4YmI4Nn19QGtleWZyYW1lcyBwdWxzZVdhcm5pbmd7MCV7Ym9yZGVyLWNvbG9yOiNmOGQ0ODZ9dG97Ym9yZGVyLWNvbG9yOiNmOGJiODZ9fS5zd2FsLWljb24tLXN1Y2Nlc3N7Ym9yZGVyLWNvbG9yOiNhNWRjODZ9LnN3YWwtaWNvbi0tc3VjY2VzczphZnRlciwuc3dhbC1pY29uLS1zdWNjZXNzOmJlZm9yZXtjb250ZW50OiIiO2JvcmRlci1yYWRpdXM6NTAlO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjYwcHg7aGVpZ2h0OjEyMHB4O2JhY2tncm91bmQ6I2ZmZjstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoNDVkZWcpO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpfS5zd2FsLWljb24tLXN1Y2Nlc3M6YmVmb3Jle2JvcmRlci1yYWRpdXM6MTIwcHggMCAwIDEyMHB4O3RvcDotN3B4O2xlZnQ6LTMzcHg7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC00NWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtNDVkZWcpOy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjo2MHB4IDYwcHg7dHJhbnNmb3JtLW9yaWdpbjo2MHB4IDYwcHh9LnN3YWwtaWNvbi0tc3VjY2VzczphZnRlcntib3JkZXItcmFkaXVzOjAgMTIwcHggMTIwcHggMDt0b3A6LTExcHg7bGVmdDozMHB4Oy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgtNDVkZWcpO3RyYW5zZm9ybTpyb3RhdGUoLTQ1ZGVnKTstd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46MCA2MHB4O3RyYW5zZm9ybS1vcmlnaW46MCA2MHB4Oy13ZWJraXQtYW5pbWF0aW9uOnJvdGF0ZVBsYWNlaG9sZGVyIDQuMjVzIGVhc2UtaW47YW5pbWF0aW9uOnJvdGF0ZVBsYWNlaG9sZGVyIDQuMjVzIGVhc2UtaW59LnN3YWwtaWNvbi0tc3VjY2Vzc19fcmluZ3t3aWR0aDo4MHB4O2hlaWdodDo4MHB4O2JvcmRlcjo0cHggc29saWQgaHNsYSg5OCw1NSUsNjklLC4yKTtib3JkZXItcmFkaXVzOjUwJTtib3gtc2l6aW5nOmNvbnRlbnQtYm94O3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTRweDt0b3A6LTRweDt6LWluZGV4OjJ9LnN3YWwtaWNvbi0tc3VjY2Vzc19faGlkZS1jb3JuZXJze3dpZHRoOjVweDtoZWlnaHQ6OTBweDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7cGFkZGluZzoxcHg7cG9zaXRpb246YWJzb2x1dGU7bGVmdDoyOHB4O3RvcDo4cHg7ei1pbmRleDoxOy13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgtNDVkZWcpO3RyYW5zZm9ybTpyb3RhdGUoLTQ1ZGVnKX0uc3dhbC1pY29uLS1zdWNjZXNzX19saW5le2hlaWdodDo1cHg7YmFja2dyb3VuZC1jb2xvcjojYTVkYzg2O2Rpc3BsYXk6YmxvY2s7Ym9yZGVyLXJhZGl1czoycHg7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoyfS5zd2FsLWljb24tLXN1Y2Nlc3NfX2xpbmUtLXRpcHt3aWR0aDoyNXB4O2xlZnQ6MTRweDt0b3A6NDZweDstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoNDVkZWcpO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpOy13ZWJraXQtYW5pbWF0aW9uOmFuaW1hdGVTdWNjZXNzVGlwIC43NXM7YW5pbWF0aW9uOmFuaW1hdGVTdWNjZXNzVGlwIC43NXN9LnN3YWwtaWNvbi0tc3VjY2Vzc19fbGluZS0tbG9uZ3t3aWR0aDo0N3B4O3JpZ2h0OjhweDt0b3A6MzhweDstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTQ1ZGVnKTt0cmFuc2Zvcm06cm90YXRlKC00NWRlZyk7LXdlYmtpdC1hbmltYXRpb246YW5pbWF0ZVN1Y2Nlc3NMb25nIC43NXM7YW5pbWF0aW9uOmFuaW1hdGVTdWNjZXNzTG9uZyAuNzVzfUAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVQbGFjZWhvbGRlcnswJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTQ1ZGVnKTt0cmFuc2Zvcm06cm90YXRlKC00NWRlZyl9NSV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC00NWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtNDVkZWcpfTEyJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTQwNWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtNDA1ZGVnKX10b3std2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTQwNWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtNDA1ZGVnKX19QGtleWZyYW1lcyByb3RhdGVQbGFjZWhvbGRlcnswJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTQ1ZGVnKTt0cmFuc2Zvcm06cm90YXRlKC00NWRlZyl9NSV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKC00NWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtNDVkZWcpfTEyJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTQwNWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtNDA1ZGVnKX10b3std2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoLTQwNWRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgtNDA1ZGVnKX19QC13ZWJraXQta2V5ZnJhbWVzIGFuaW1hdGVTdWNjZXNzVGlwezAle3dpZHRoOjA7bGVmdDoxcHg7dG9wOjE5cHh9NTQle3dpZHRoOjA7bGVmdDoxcHg7dG9wOjE5cHh9NzAle3dpZHRoOjUwcHg7bGVmdDotOHB4O3RvcDozN3B4fTg0JXt3aWR0aDoxN3B4O2xlZnQ6MjFweDt0b3A6NDhweH10b3t3aWR0aDoyNXB4O2xlZnQ6MTRweDt0b3A6NDVweH19QGtleWZyYW1lcyBhbmltYXRlU3VjY2Vzc1RpcHswJXt3aWR0aDowO2xlZnQ6MXB4O3RvcDoxOXB4fTU0JXt3aWR0aDowO2xlZnQ6MXB4O3RvcDoxOXB4fTcwJXt3aWR0aDo1MHB4O2xlZnQ6LThweDt0b3A6MzdweH04NCV7d2lkdGg6MTdweDtsZWZ0OjIxcHg7dG9wOjQ4cHh9dG97d2lkdGg6MjVweDtsZWZ0OjE0cHg7dG9wOjQ1cHh9fUAtd2Via2l0LWtleWZyYW1lcyBhbmltYXRlU3VjY2Vzc0xvbmd7MCV7d2lkdGg6MDtyaWdodDo0NnB4O3RvcDo1NHB4fTY1JXt3aWR0aDowO3JpZ2h0OjQ2cHg7dG9wOjU0cHh9ODQle3dpZHRoOjU1cHg7cmlnaHQ6MDt0b3A6MzVweH10b3t3aWR0aDo0N3B4O3JpZ2h0OjhweDt0b3A6MzhweH19QGtleWZyYW1lcyBhbmltYXRlU3VjY2Vzc0xvbmd7MCV7d2lkdGg6MDtyaWdodDo0NnB4O3RvcDo1NHB4fTY1JXt3aWR0aDowO3JpZ2h0OjQ2cHg7dG9wOjU0cHh9ODQle3dpZHRoOjU1cHg7cmlnaHQ6MDt0b3A6MzVweH10b3t3aWR0aDo0N3B4O3JpZ2h0OjhweDt0b3A6MzhweH19LnN3YWwtaWNvbi0taW5mb3tib3JkZXItY29sb3I6I2M5ZGFlMX0uc3dhbC1pY29uLS1pbmZvOmJlZm9yZXt3aWR0aDo1cHg7aGVpZ2h0OjI5cHg7Ym90dG9tOjE3cHg7Ym9yZGVyLXJhZGl1czoycHg7bWFyZ2luLWxlZnQ6LTJweH0uc3dhbC1pY29uLS1pbmZvOmFmdGVyLC5zd2FsLWljb24tLWluZm86YmVmb3Jle2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7bGVmdDo1MCU7YmFja2dyb3VuZC1jb2xvcjojYzlkYWUxfS5zd2FsLWljb24tLWluZm86YWZ0ZXJ7d2lkdGg6N3B4O2hlaWdodDo3cHg7Ym9yZGVyLXJhZGl1czo1MCU7bWFyZ2luLWxlZnQ6LTNweDt0b3A6MTlweH0uc3dhbC1pY29ue3dpZHRoOjgwcHg7aGVpZ2h0OjgwcHg7Ym9yZGVyLXdpZHRoOjRweDtib3JkZXItc3R5bGU6c29saWQ7Ym9yZGVyLXJhZGl1czo1MCU7cGFkZGluZzowO3Bvc2l0aW9uOnJlbGF0aXZlO2JveC1zaXppbmc6Y29udGVudC1ib3g7bWFyZ2luOjIwcHggYXV0b30uc3dhbC1pY29uOmZpcnN0LWNoaWxke21hcmdpbi10b3A6MzJweH0uc3dhbC1pY29uLS1jdXN0b217d2lkdGg6YXV0bztoZWlnaHQ6YXV0bzttYXgtd2lkdGg6MTAwJTtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjB9LnN3YWwtaWNvbiBpbWd7bWF4LXdpZHRoOjEwMCU7bWF4LWhlaWdodDoxMDAlfS5zd2FsLXRpdGxle2NvbG9yOnJnYmEoMCwwLDAsLjY1KTtmb250LXdlaWdodDo2MDA7dGV4dC10cmFuc2Zvcm06bm9uZTtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6MTNweCAxNnB4O2ZvbnQtc2l6ZToyN3B4O2xpbmUtaGVpZ2h0Om5vcm1hbDt0ZXh0LWFsaWduOmNlbnRlcjttYXJnaW4tYm90dG9tOjB9LnN3YWwtdGl0bGU6Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDoyNnB4fS5zd2FsLXRpdGxlOm5vdCg6Zmlyc3QtY2hpbGQpe3BhZGRpbmctYm90dG9tOjB9LnN3YWwtdGl0bGU6bm90KDpsYXN0LWNoaWxkKXttYXJnaW4tYm90dG9tOjEzcHh9LnN3YWwtdGV4dHtmb250LXNpemU6MTZweDtwb3NpdGlvbjpyZWxhdGl2ZTtmbG9hdDpub25lO2xpbmUtaGVpZ2h0Om5vcm1hbDt2ZXJ0aWNhbC1hbGlnbjp0b3A7dGV4dC1hbGlnbjpsZWZ0O2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbjowO3BhZGRpbmc6MCAxMHB4O2ZvbnQtd2VpZ2h0OjQwMDtjb2xvcjpyZ2JhKDAsMCwwLC42NCk7bWF4LXdpZHRoOmNhbGMoMTAwJSAtIDIwcHgpO292ZXJmbG93LXdyYXA6YnJlYWstd29yZDtib3gtc2l6aW5nOmJvcmRlci1ib3h9LnN3YWwtdGV4dDpmaXJzdC1jaGlsZHttYXJnaW4tdG9wOjQ1cHh9LnN3YWwtdGV4dDpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206NDVweH0uc3dhbC1mb290ZXJ7dGV4dC1hbGlnbjpyaWdodDtwYWRkaW5nLXRvcDoxM3B4O21hcmdpbi10b3A6MTNweDtwYWRkaW5nOjEzcHggMTZweDtib3JkZXItcmFkaXVzOmluaGVyaXQ7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjB9LnN3YWwtYnV0dG9uLWNvbnRhaW5lcnttYXJnaW46NXB4O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlfS5zd2FsLWJ1dHRvbntiYWNrZ3JvdW5kLWNvbG9yOiM3Y2QxZjk7Y29sb3I6I2ZmZjtib3JkZXI6bm9uZTtib3gtc2hhZG93Om5vbmU7Ym9yZGVyLXJhZGl1czo1cHg7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZToxNHB4O3BhZGRpbmc6MTBweCAyNHB4O21hcmdpbjowO2N1cnNvcjpwb2ludGVyfS5zd2FsLWJ1dHRvbjpub3QoW2Rpc2FibGVkXSk6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojNzhjYmYyfS5zd2FsLWJ1dHRvbjphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjojNzBiY2UwfS5zd2FsLWJ1dHRvbjpmb2N1c3tvdXRsaW5lOm5vbmU7Ym94LXNoYWRvdzowIDAgMCAxcHggI2ZmZiwwIDAgMCAzcHggcmdiYSg0MywxMTQsMTY1LC4yOSl9LnN3YWwtYnV0dG9uW2Rpc2FibGVkXXtvcGFjaXR5Oi41O2N1cnNvcjpkZWZhdWx0fS5zd2FsLWJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcntib3JkZXI6MH0uc3dhbC1idXR0b24tLWNhbmNlbHtjb2xvcjojNTU1O2JhY2tncm91bmQtY29sb3I6I2VmZWZlZn0uc3dhbC1idXR0b24tLWNhbmNlbDpub3QoW2Rpc2FibGVkXSk6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZThlOGU4fS5zd2FsLWJ1dHRvbi0tY2FuY2VsOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiNkN2Q3ZDd9LnN3YWwtYnV0dG9uLS1jYW5jZWw6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAxcHggI2ZmZiwwIDAgMCAzcHggcmdiYSgxMTYsMTM2LDE1MCwuMjkpfS5zd2FsLWJ1dHRvbi0tZGFuZ2Vye2JhY2tncm91bmQtY29sb3I6I2U2NDk0Mn0uc3dhbC1idXR0b24tLWRhbmdlcjpub3QoW2Rpc2FibGVkXSk6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZGY0NzQwfS5zd2FsLWJ1dHRvbi0tZGFuZ2VyOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiNjZjQyM2J9LnN3YWwtYnV0dG9uLS1kYW5nZXI6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAxcHggI2ZmZiwwIDAgMCAzcHggcmdiYSgxNjUsNDMsNDMsLjI5KX0uc3dhbC1jb250ZW50e3BhZGRpbmc6MCAyMHB4O21hcmdpbi10b3A6MjBweDtmb250LXNpemU6bWVkaXVtfS5zd2FsLWNvbnRlbnQ6bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjIwcHh9LnN3YWwtY29udGVudF9faW5wdXQsLnN3YWwtY29udGVudF9fdGV4dGFyZWF7LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjpub25lO2ZvbnQtc2l6ZToxNHB4O2Rpc3BsYXk6YmxvY2s7Ym94LXNpemluZzpib3JkZXItYm94O3dpZHRoOjEwMCU7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLC4xNCk7cGFkZGluZzoxMHB4IDEzcHg7Ym9yZGVyLXJhZGl1czoycHg7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjJzfS5zd2FsLWNvbnRlbnRfX2lucHV0OmZvY3VzLC5zd2FsLWNvbnRlbnRfX3RleHRhcmVhOmZvY3Vze291dGxpbmU6bm9uZTtib3JkZXItY29sb3I6IzZkYjhmZn0uc3dhbC1jb250ZW50X190ZXh0YXJlYXtyZXNpemU6dmVydGljYWx9LnN3YWwtYnV0dG9uLS1sb2FkaW5ne2NvbG9yOnRyYW5zcGFyZW50fS5zd2FsLWJ1dHRvbi0tbG9hZGluZ34uc3dhbC1idXR0b25fX2xvYWRlcntvcGFjaXR5OjF9LnN3YWwtYnV0dG9uX19sb2FkZXJ7cG9zaXRpb246YWJzb2x1dGU7aGVpZ2h0OmF1dG87d2lkdGg6NDNweDt6LWluZGV4OjI7bGVmdDo1MCU7dG9wOjUwJTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTt0ZXh0LWFsaWduOmNlbnRlcjtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MH0uc3dhbC1idXR0b25fX2xvYWRlciBkaXZ7ZGlzcGxheTppbmxpbmUtYmxvY2s7ZmxvYXQ6bm9uZTt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZTt3aWR0aDo5cHg7aGVpZ2h0OjlweDtwYWRkaW5nOjA7Ym9yZGVyOm5vbmU7bWFyZ2luOjJweDtvcGFjaXR5Oi40O2JvcmRlci1yYWRpdXM6N3B4O2JhY2tncm91bmQtY29sb3I6aHNsYSgwLDAlLDEwMCUsLjkpO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMnM7LXdlYmtpdC1hbmltYXRpb246c3dhbC1sb2FkaW5nLWFuaW0gMXMgaW5maW5pdGU7YW5pbWF0aW9uOnN3YWwtbG9hZGluZy1hbmltIDFzIGluZmluaXRlfS5zd2FsLWJ1dHRvbl9fbG9hZGVyIGRpdjpudGgtY2hpbGQoM24rMil7LXdlYmtpdC1hbmltYXRpb24tZGVsYXk6LjE1czthbmltYXRpb24tZGVsYXk6LjE1c30uc3dhbC1idXR0b25fX2xvYWRlciBkaXY6bnRoLWNoaWxkKDNuKzMpey13ZWJraXQtYW5pbWF0aW9uLWRlbGF5Oi4zczthbmltYXRpb24tZGVsYXk6LjNzfUAtd2Via2l0LWtleWZyYW1lcyBzd2FsLWxvYWRpbmctYW5pbXswJXtvcGFjaXR5Oi40fTIwJXtvcGFjaXR5Oi40fTUwJXtvcGFjaXR5OjF9dG97b3BhY2l0eTouNH19QGtleWZyYW1lcyBzd2FsLWxvYWRpbmctYW5pbXswJXtvcGFjaXR5Oi40fTIwJXtvcGFjaXR5Oi40fTUwJXtvcGFjaXR5OjF9dG97b3BhY2l0eTouNH19LnN3YWwtb3ZlcmxheXtwb3NpdGlvbjpmaXhlZDt0b3A6MDtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDt0ZXh0LWFsaWduOmNlbnRlcjtmb250LXNpemU6MDtvdmVyZmxvdy15OmF1dG87YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC40KTt6LWluZGV4OjEwMDAwO3BvaW50ZXItZXZlbnRzOm5vbmU7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAuM3N9LnN3YWwtb3ZlcmxheTpiZWZvcmV7Y29udGVudDoiICI7ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246bWlkZGxlO2hlaWdodDoxMDAlfS5zd2FsLW92ZXJsYXktLXNob3ctbW9kYWx7b3BhY2l0eToxO3BvaW50ZXItZXZlbnRzOmF1dG99LnN3YWwtb3ZlcmxheS0tc2hvdy1tb2RhbCAuc3dhbC1tb2RhbHtvcGFjaXR5OjE7cG9pbnRlci1ldmVudHM6YXV0bztib3gtc2l6aW5nOmJvcmRlci1ib3g7LXdlYmtpdC1hbmltYXRpb246c2hvd1N3ZWV0QWxlcnQgLjNzO2FuaW1hdGlvbjpzaG93U3dlZXRBbGVydCAuM3M7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtfS5zd2FsLW1vZGFse3dpZHRoOjQ3OHB4O29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lO2JhY2tncm91bmQtY29sb3I6I2ZmZjt0ZXh0LWFsaWduOmNlbnRlcjtib3JkZXItcmFkaXVzOjVweDtwb3NpdGlvbjpzdGF0aWM7bWFyZ2luOjIwcHggYXV0bztkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpOy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjo1MCUgNTAlO3RyYW5zZm9ybS1vcmlnaW46NTAlIDUwJTt6LWluZGV4OjEwMDAxO3RyYW5zaXRpb246b3BhY2l0eSAuMnMsLXdlYmtpdC10cmFuc2Zvcm0gLjNzO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zcyxvcGFjaXR5IC4yczt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuM3Msb3BhY2l0eSAuMnMsLXdlYmtpdC10cmFuc2Zvcm0gLjNzfUBtZWRpYSAobWF4LXdpZHRoOjUwMHB4KXsuc3dhbC1tb2RhbHt3aWR0aDpjYWxjKDEwMCUgLSAyMHB4KX19QC13ZWJraXQta2V5ZnJhbWVzIHNob3dTd2VldEFsZXJ0ezAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zZm9ybTpzY2FsZSgxKX0xJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSguNSk7dHJhbnNmb3JtOnNjYWxlKC41KX00NSV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMS4wNSk7dHJhbnNmb3JtOnNjYWxlKDEuMDUpfTgwJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSguOTUpO3RyYW5zZm9ybTpzY2FsZSguOTUpfXRvey13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zZm9ybTpzY2FsZSgxKX19QGtleWZyYW1lcyBzaG93U3dlZXRBbGVydHswJXstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSl9MSV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoLjUpO3RyYW5zZm9ybTpzY2FsZSguNSl9NDUley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEuMDUpO3RyYW5zZm9ybTpzY2FsZSgxLjA1KX04MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoLjk1KTt0cmFuc2Zvcm06c2NhbGUoLjk1KX10b3std2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSl9fScsIiJdKX0sZnVuY3Rpb24odCxlKXtmdW5jdGlvbiBuKHQsZSl7dmFyIG49dFsxXXx8IiIscj10WzNdO2lmKCFyKXJldHVybiBuO2lmKGUmJiJmdW5jdGlvbiI9PXR5cGVvZiBidG9hKXt2YXIgaT1vKHIpO3JldHVybltuXS5jb25jYXQoci5zb3VyY2VzLm1hcChmdW5jdGlvbih0KXtyZXR1cm4iLyojIHNvdXJjZVVSTD0iK3Iuc291cmNlUm9vdCt0KyIgKi8ifSkpLmNvbmNhdChbaV0pLmpvaW4oIlxuIil9cmV0dXJuW25dLmpvaW4oIlxuIil9ZnVuY3Rpb24gbyh0KXtyZXR1cm4iLyojIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LCIrYnRvYSh1bmVzY2FwZShlbmNvZGVVUklDb21wb25lbnQoSlNPTi5zdHJpbmdpZnkodCkpKSkrIiAqLyJ9dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3ZhciBlPVtdO3JldHVybiBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubWFwKGZ1bmN0aW9uKGUpe3ZhciBvPW4oZSx0KTtyZXR1cm4gZVsyXT8iQG1lZGlhICIrZVsyXSsieyIrbysifSI6b30pLmpvaW4oIiIpfSxlLmk9ZnVuY3Rpb24odCxuKXsic3RyaW5nIj09dHlwZW9mIHQmJih0PVtbbnVsbCx0LCIiXV0pO2Zvcih2YXIgbz17fSxyPTA7cjx0aGlzLmxlbmd0aDtyKyspe3ZhciBpPXRoaXNbcl1bMF07Im51bWJlciI9PXR5cGVvZiBpJiYob1tpXT0hMCl9Zm9yKHI9MDtyPHQubGVuZ3RoO3IrKyl7dmFyIGE9dFtyXTsibnVtYmVyIj09dHlwZW9mIGFbMF0mJm9bYVswXV18fChuJiYhYVsyXT9hWzJdPW46biYmKGFbMl09IigiK2FbMl0rIikgYW5kICgiK24rIikiKSxlLnB1c2goYSkpfX0sZX19LGZ1bmN0aW9uKHQsZSxuKXtmdW5jdGlvbiBvKHQsZSl7Zm9yKHZhciBuPTA7bjx0Lmxlbmd0aDtuKyspe3ZhciBvPXRbbl0scj1tW28uaWRdO2lmKHIpe3IucmVmcysrO2Zvcih2YXIgaT0wO2k8ci5wYXJ0cy5sZW5ndGg7aSsrKXIucGFydHNbaV0oby5wYXJ0c1tpXSk7Zm9yKDtpPG8ucGFydHMubGVuZ3RoO2krKylyLnBhcnRzLnB1c2godShvLnBhcnRzW2ldLGUpKX1lbHNle2Zvcih2YXIgYT1bXSxpPTA7aTxvLnBhcnRzLmxlbmd0aDtpKyspYS5wdXNoKHUoby5wYXJ0c1tpXSxlKSk7bVtvLmlkXT17aWQ6by5pZCxyZWZzOjEscGFydHM6YX19fX1mdW5jdGlvbiByKHQsZSl7Zm9yKHZhciBuPVtdLG89e30scj0wO3I8dC5sZW5ndGg7cisrKXt2YXIgaT10W3JdLGE9ZS5iYXNlP2lbMF0rZS5iYXNlOmlbMF0scz1pWzFdLGM9aVsyXSxsPWlbM10sdT17Y3NzOnMsbWVkaWE6Yyxzb3VyY2VNYXA6bH07b1thXT9vW2FdLnBhcnRzLnB1c2godSk6bi5wdXNoKG9bYV09e2lkOmEscGFydHM6W3VdfSl9cmV0dXJuIG59ZnVuY3Rpb24gaSh0LGUpe3ZhciBuPXYodC5pbnNlcnRJbnRvKTtpZighbil0aHJvdyBuZXcgRXJyb3IoIkNvdWxkbid0IGZpbmQgYSBzdHlsZSB0YXJnZXQuIFRoaXMgcHJvYmFibHkgbWVhbnMgdGhhdCB0aGUgdmFsdWUgZm9yIHRoZSAnaW5zZXJ0SW50bycgcGFyYW1ldGVyIGlzIGludmFsaWQuIik7dmFyIG89d1t3Lmxlbmd0aC0xXTtpZigidG9wIj09PXQuaW5zZXJ0QXQpbz9vLm5leHRTaWJsaW5nP24uaW5zZXJ0QmVmb3JlKGUsby5uZXh0U2libGluZyk6bi5hcHBlbmRDaGlsZChlKTpuLmluc2VydEJlZm9yZShlLG4uZmlyc3RDaGlsZCksdy5wdXNoKGUpO2Vsc2V7aWYoImJvdHRvbSIhPT10Lmluc2VydEF0KXRocm93IG5ldyBFcnJvcigiSW52YWxpZCB2YWx1ZSBmb3IgcGFyYW1ldGVyICdpbnNlcnRBdCcuIE11c3QgYmUgJ3RvcCcgb3IgJ2JvdHRvbScuIik7bi5hcHBlbmRDaGlsZChlKX19ZnVuY3Rpb24gYSh0KXtpZihudWxsPT09dC5wYXJlbnROb2RlKXJldHVybiExO3QucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh0KTt2YXIgZT13LmluZGV4T2YodCk7ZT49MCYmdy5zcGxpY2UoZSwxKX1mdW5jdGlvbiBzKHQpe3ZhciBlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInN0eWxlIik7cmV0dXJuIHQuYXR0cnMudHlwZT0idGV4dC9jc3MiLGwoZSx0LmF0dHJzKSxpKHQsZSksZX1mdW5jdGlvbiBjKHQpe3ZhciBlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxpbmsiKTtyZXR1cm4gdC5hdHRycy50eXBlPSJ0ZXh0L2NzcyIsdC5hdHRycy5yZWw9InN0eWxlc2hlZXQiLGwoZSx0LmF0dHJzKSxpKHQsZSksZX1mdW5jdGlvbiBsKHQsZSl7T2JqZWN0LmtleXMoZSkuZm9yRWFjaChmdW5jdGlvbihuKXt0LnNldEF0dHJpYnV0ZShuLGVbbl0pfSl9ZnVuY3Rpb24gdSh0LGUpe3ZhciBuLG8scixpO2lmKGUudHJhbnNmb3JtJiZ0LmNzcyl7aWYoIShpPWUudHJhbnNmb3JtKHQuY3NzKSkpcmV0dXJuIGZ1bmN0aW9uKCl7fTt0LmNzcz1pfWlmKGUuc2luZ2xldG9uKXt2YXIgbD1oKys7bj1nfHwoZz1zKGUpKSxvPWYuYmluZChudWxsLG4sbCwhMSkscj1mLmJpbmQobnVsbCxuLGwsITApfWVsc2UgdC5zb3VyY2VNYXAmJiJmdW5jdGlvbiI9PXR5cGVvZiBVUkwmJiJmdW5jdGlvbiI9PXR5cGVvZiBVUkwuY3JlYXRlT2JqZWN0VVJMJiYiZnVuY3Rpb24iPT10eXBlb2YgVVJMLnJldm9rZU9iamVjdFVSTCYmImZ1bmN0aW9uIj09dHlwZW9mIEJsb2ImJiJmdW5jdGlvbiI9PXR5cGVvZiBidG9hPyhuPWMoZSksbz1wLmJpbmQobnVsbCxuLGUpLHI9ZnVuY3Rpb24oKXthKG4pLG4uaHJlZiYmVVJMLnJldm9rZU9iamVjdFVSTChuLmhyZWYpfSk6KG49cyhlKSxvPWQuYmluZChudWxsLG4pLHI9ZnVuY3Rpb24oKXthKG4pfSk7cmV0dXJuIG8odCksZnVuY3Rpb24oZSl7aWYoZSl7aWYoZS5jc3M9PT10LmNzcyYmZS5tZWRpYT09PXQubWVkaWEmJmUuc291cmNlTWFwPT09dC5zb3VyY2VNYXApcmV0dXJuO28odD1lKX1lbHNlIHIoKX19ZnVuY3Rpb24gZih0LGUsbixvKXt2YXIgcj1uPyIiOm8uY3NzO2lmKHQuc3R5bGVTaGVldCl0LnN0eWxlU2hlZXQuY3NzVGV4dD14KGUscik7ZWxzZXt2YXIgaT1kb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShyKSxhPXQuY2hpbGROb2RlczthW2VdJiZ0LnJlbW92ZUNoaWxkKGFbZV0pLGEubGVuZ3RoP3QuaW5zZXJ0QmVmb3JlKGksYVtlXSk6dC5hcHBlbmRDaGlsZChpKX19ZnVuY3Rpb24gZCh0LGUpe3ZhciBuPWUuY3NzLG89ZS5tZWRpYTtpZihvJiZ0LnNldEF0dHJpYnV0ZSgibWVkaWEiLG8pLHQuc3R5bGVTaGVldCl0LnN0eWxlU2hlZXQuY3NzVGV4dD1uO2Vsc2V7Zm9yKDt0LmZpcnN0Q2hpbGQ7KXQucmVtb3ZlQ2hpbGQodC5maXJzdENoaWxkKTt0LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKG4pKX19ZnVuY3Rpb24gcCh0LGUsbil7dmFyIG89bi5jc3Mscj1uLnNvdXJjZU1hcCxpPXZvaWQgMD09PWUuY29udmVydFRvQWJzb2x1dGVVcmxzJiZyOyhlLmNvbnZlcnRUb0Fic29sdXRlVXJsc3x8aSkmJihvPXkobykpLHImJihvKz0iXG4vKiMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LCIrYnRvYSh1bmVzY2FwZShlbmNvZGVVUklDb21wb25lbnQoSlNPTi5zdHJpbmdpZnkocikpKSkrIiAqLyIpO3ZhciBhPW5ldyBCbG9iKFtvXSx7dHlwZToidGV4dC9jc3MifSkscz10LmhyZWY7dC5ocmVmPVVSTC5jcmVhdGVPYmplY3RVUkwoYSkscyYmVVJMLnJldm9rZU9iamVjdFVSTChzKX12YXIgbT17fSxiPWZ1bmN0aW9uKHQpe3ZhciBlO3JldHVybiBmdW5jdGlvbigpe3JldHVybiB2b2lkIDA9PT1lJiYoZT10LmFwcGx5KHRoaXMsYXJndW1lbnRzKSksZX19KGZ1bmN0aW9uKCl7cmV0dXJuIHdpbmRvdyYmZG9jdW1lbnQmJmRvY3VtZW50LmFsbCYmIXdpbmRvdy5hdG9ifSksdj1mdW5jdGlvbih0KXt2YXIgZT17fTtyZXR1cm4gZnVuY3Rpb24obil7cmV0dXJuIHZvaWQgMD09PWVbbl0mJihlW25dPXQuY2FsbCh0aGlzLG4pKSxlW25dfX0oZnVuY3Rpb24odCl7cmV0dXJuIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IodCl9KSxnPW51bGwsaD0wLHc9W10seT1uKDE1KTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtpZigidW5kZWZpbmVkIiE9dHlwZW9mIERFQlVHJiZERUJVRyYmIm9iamVjdCIhPXR5cGVvZiBkb2N1bWVudCl0aHJvdyBuZXcgRXJyb3IoIlRoZSBzdHlsZS1sb2FkZXIgY2Fubm90IGJlIHVzZWQgaW4gYSBub24tYnJvd3NlciBlbnZpcm9ubWVudCIpO2U9ZXx8e30sZS5hdHRycz0ib2JqZWN0Ij09dHlwZW9mIGUuYXR0cnM/ZS5hdHRyczp7fSxlLnNpbmdsZXRvbnx8KGUuc2luZ2xldG9uPWIoKSksZS5pbnNlcnRJbnRvfHwoZS5pbnNlcnRJbnRvPSJoZWFkIiksZS5pbnNlcnRBdHx8KGUuaW5zZXJ0QXQ9ImJvdHRvbSIpO3ZhciBuPXIodCxlKTtyZXR1cm4gbyhuLGUpLGZ1bmN0aW9uKHQpe2Zvcih2YXIgaT1bXSxhPTA7YTxuLmxlbmd0aDthKyspe3ZhciBzPW5bYV0sYz1tW3MuaWRdO2MucmVmcy0tLGkucHVzaChjKX1pZih0KXtvKHIodCxlKSxlKX1mb3IodmFyIGE9MDthPGkubGVuZ3RoO2ErKyl7dmFyIGM9aVthXTtpZigwPT09Yy5yZWZzKXtmb3IodmFyIGw9MDtsPGMucGFydHMubGVuZ3RoO2wrKyljLnBhcnRzW2xdKCk7ZGVsZXRlIG1bYy5pZF19fX19O3ZhciB4PWZ1bmN0aW9uKCl7dmFyIHQ9W107cmV0dXJuIGZ1bmN0aW9uKGUsbil7cmV0dXJuIHRbZV09bix0LmZpbHRlcihCb29sZWFuKS5qb2luKCJcbiIpfX0oKX0sZnVuY3Rpb24odCxlKXt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7dmFyIGU9InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJndpbmRvdy5sb2NhdGlvbjtpZighZSl0aHJvdyBuZXcgRXJyb3IoImZpeFVybHMgcmVxdWlyZXMgd2luZG93LmxvY2F0aW9uIik7aWYoIXR8fCJzdHJpbmciIT10eXBlb2YgdClyZXR1cm4gdDt2YXIgbj1lLnByb3RvY29sKyIvLyIrZS5ob3N0LG89bitlLnBhdGhuYW1lLnJlcGxhY2UoL1wvW15cL10qJC8sIi8iKTtyZXR1cm4gdC5yZXBsYWNlKC91cmxccypcKCgoPzpbXikoXXxcKCg/OlteKShdK3xcKFteKShdKlwpKSpcKSkqKVwpL2dpLGZ1bmN0aW9uKHQsZSl7dmFyIHI9ZS50cmltKCkucmVwbGFjZSgvXiIoLiopIiQvLGZ1bmN0aW9uKHQsZSl7cmV0dXJuIGV9KS5yZXBsYWNlKC9eJyguKiknJC8sZnVuY3Rpb24odCxlKXtyZXR1cm4gZX0pO2lmKC9eKCN8ZGF0YTp8aHR0cDpcL1wvfGh0dHBzOlwvXC98ZmlsZTpcL1wvXC8pL2kudGVzdChyKSlyZXR1cm4gdDt2YXIgaTtyZXR1cm4gaT0wPT09ci5pbmRleE9mKCIvLyIpP3I6MD09PXIuaW5kZXhPZigiLyIpP24rcjpvK3IucmVwbGFjZSgvXlwuXC8vLCIiKSwidXJsKCIrSlNPTi5zdHJpbmdpZnkoaSkrIikifSl9fSxmdW5jdGlvbih0LGUsbil7dmFyIG89bigxNyk7InVuZGVmaW5lZCI9PXR5cGVvZiB3aW5kb3d8fHdpbmRvdy5Qcm9taXNlfHwod2luZG93LlByb21pc2U9byksbigyMSksU3RyaW5nLnByb3RvdHlwZS5pbmNsdWRlc3x8KFN0cmluZy5wcm90b3R5cGUuaW5jbHVkZXM9ZnVuY3Rpb24odCxlKXsidXNlIHN0cmljdCI7cmV0dXJuIm51bWJlciIhPXR5cGVvZiBlJiYoZT0wKSwhKGUrdC5sZW5ndGg+dGhpcy5sZW5ndGgpJiYtMSE9PXRoaXMuaW5kZXhPZih0LGUpfSksQXJyYXkucHJvdG90eXBlLmluY2x1ZGVzfHxPYmplY3QuZGVmaW5lUHJvcGVydHkoQXJyYXkucHJvdG90eXBlLCJpbmNsdWRlcyIse3ZhbHVlOmZ1bmN0aW9uKHQsZSl7aWYobnVsbD09dGhpcyl0aHJvdyBuZXcgVHlwZUVycm9yKCcidGhpcyIgaXMgbnVsbCBvciBub3QgZGVmaW5lZCcpO3ZhciBuPU9iamVjdCh0aGlzKSxvPW4ubGVuZ3RoPj4+MDtpZigwPT09bylyZXR1cm4hMTtmb3IodmFyIHI9MHxlLGk9TWF0aC5tYXgocj49MD9yOm8tTWF0aC5hYnMociksMCk7aTxvOyl7aWYoZnVuY3Rpb24odCxlKXtyZXR1cm4gdD09PWV8fCJudW1iZXIiPT10eXBlb2YgdCYmIm51bWJlciI9PXR5cGVvZiBlJiZpc05hTih0KSYmaXNOYU4oZSl9KG5baV0sdCkpcmV0dXJuITA7aSsrfXJldHVybiExfX0pLCJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiZmdW5jdGlvbih0KXt0LmZvckVhY2goZnVuY3Rpb24odCl7dC5oYXNPd25Qcm9wZXJ0eSgicmVtb3ZlIil8fE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJyZW1vdmUiLHtjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpmdW5jdGlvbigpe3RoaXMucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh0aGlzKX19KX0pfShbRWxlbWVudC5wcm90b3R5cGUsQ2hhcmFjdGVyRGF0YS5wcm90b3R5cGUsRG9jdW1lbnRUeXBlLnByb3RvdHlwZV0pfSxmdW5jdGlvbih0LGUsbil7KGZ1bmN0aW9uKGUpeyFmdW5jdGlvbihuKXtmdW5jdGlvbiBvKCl7fWZ1bmN0aW9uIHIodCxlKXtyZXR1cm4gZnVuY3Rpb24oKXt0LmFwcGx5KGUsYXJndW1lbnRzKX19ZnVuY3Rpb24gaSh0KXtpZigib2JqZWN0IiE9dHlwZW9mIHRoaXMpdGhyb3cgbmV3IFR5cGVFcnJvcigiUHJvbWlzZXMgbXVzdCBiZSBjb25zdHJ1Y3RlZCB2aWEgbmV3Iik7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIHQpdGhyb3cgbmV3IFR5cGVFcnJvcigibm90IGEgZnVuY3Rpb24iKTt0aGlzLl9zdGF0ZT0wLHRoaXMuX2hhbmRsZWQ9ITEsdGhpcy5fdmFsdWU9dm9pZCAwLHRoaXMuX2RlZmVycmVkcz1bXSxmKHQsdGhpcyl9ZnVuY3Rpb24gYSh0LGUpe2Zvcig7Mz09PXQuX3N0YXRlOyl0PXQuX3ZhbHVlO2lmKDA9PT10Ll9zdGF0ZSlyZXR1cm4gdm9pZCB0Ll9kZWZlcnJlZHMucHVzaChlKTt0Ll9oYW5kbGVkPSEwLGkuX2ltbWVkaWF0ZUZuKGZ1bmN0aW9uKCl7dmFyIG49MT09PXQuX3N0YXRlP2Uub25GdWxmaWxsZWQ6ZS5vblJlamVjdGVkO2lmKG51bGw9PT1uKXJldHVybiB2b2lkKDE9PT10Ll9zdGF0ZT9zOmMpKGUucHJvbWlzZSx0Ll92YWx1ZSk7dmFyIG87dHJ5e289bih0Ll92YWx1ZSl9Y2F0Y2godCl7cmV0dXJuIHZvaWQgYyhlLnByb21pc2UsdCl9cyhlLnByb21pc2Usbyl9KX1mdW5jdGlvbiBzKHQsZSl7dHJ5e2lmKGU9PT10KXRocm93IG5ldyBUeXBlRXJyb3IoIkEgcHJvbWlzZSBjYW5ub3QgYmUgcmVzb2x2ZWQgd2l0aCBpdHNlbGYuIik7aWYoZSYmKCJvYmplY3QiPT10eXBlb2YgZXx8ImZ1bmN0aW9uIj09dHlwZW9mIGUpKXt2YXIgbj1lLnRoZW47aWYoZSBpbnN0YW5jZW9mIGkpcmV0dXJuIHQuX3N0YXRlPTMsdC5fdmFsdWU9ZSx2b2lkIGwodCk7aWYoImZ1bmN0aW9uIj09dHlwZW9mIG4pcmV0dXJuIHZvaWQgZihyKG4sZSksdCl9dC5fc3RhdGU9MSx0Ll92YWx1ZT1lLGwodCl9Y2F0Y2goZSl7Yyh0LGUpfX1mdW5jdGlvbiBjKHQsZSl7dC5fc3RhdGU9Mix0Ll92YWx1ZT1lLGwodCl9ZnVuY3Rpb24gbCh0KXsyPT09dC5fc3RhdGUmJjA9PT10Ll9kZWZlcnJlZHMubGVuZ3RoJiZpLl9pbW1lZGlhdGVGbihmdW5jdGlvbigpe3QuX2hhbmRsZWR8fGkuX3VuaGFuZGxlZFJlamVjdGlvbkZuKHQuX3ZhbHVlKX0pO2Zvcih2YXIgZT0wLG49dC5fZGVmZXJyZWRzLmxlbmd0aDtlPG47ZSsrKWEodCx0Ll9kZWZlcnJlZHNbZV0pO3QuX2RlZmVycmVkcz1udWxsfWZ1bmN0aW9uIHUodCxlLG4pe3RoaXMub25GdWxmaWxsZWQ9ImZ1bmN0aW9uIj09dHlwZW9mIHQ/dDpudWxsLHRoaXMub25SZWplY3RlZD0iZnVuY3Rpb24iPT10eXBlb2YgZT9lOm51bGwsdGhpcy5wcm9taXNlPW59ZnVuY3Rpb24gZih0LGUpe3ZhciBuPSExO3RyeXt0KGZ1bmN0aW9uKHQpe258fChuPSEwLHMoZSx0KSl9LGZ1bmN0aW9uKHQpe258fChuPSEwLGMoZSx0KSl9KX1jYXRjaCh0KXtpZihuKXJldHVybjtuPSEwLGMoZSx0KX19dmFyIGQ9c2V0VGltZW91dDtpLnByb3RvdHlwZS5jYXRjaD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy50aGVuKG51bGwsdCl9LGkucHJvdG90eXBlLnRoZW49ZnVuY3Rpb24odCxlKXt2YXIgbj1uZXcgdGhpcy5jb25zdHJ1Y3RvcihvKTtyZXR1cm4gYSh0aGlzLG5ldyB1KHQsZSxuKSksbn0saS5hbGw9ZnVuY3Rpb24odCl7dmFyIGU9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwodCk7cmV0dXJuIG5ldyBpKGZ1bmN0aW9uKHQsbil7ZnVuY3Rpb24gbyhpLGEpe3RyeXtpZihhJiYoIm9iamVjdCI9PXR5cGVvZiBhfHwiZnVuY3Rpb24iPT10eXBlb2YgYSkpe3ZhciBzPWEudGhlbjtpZigiZnVuY3Rpb24iPT10eXBlb2YgcylyZXR1cm4gdm9pZCBzLmNhbGwoYSxmdW5jdGlvbih0KXtvKGksdCl9LG4pfWVbaV09YSwwPT0tLXImJnQoZSl9Y2F0Y2godCl7bih0KX19aWYoMD09PWUubGVuZ3RoKXJldHVybiB0KFtdKTtmb3IodmFyIHI9ZS5sZW5ndGgsaT0wO2k8ZS5sZW5ndGg7aSsrKW8oaSxlW2ldKX0pfSxpLnJlc29sdmU9ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJvYmplY3QiPT10eXBlb2YgdCYmdC5jb25zdHJ1Y3Rvcj09PWk/dDpuZXcgaShmdW5jdGlvbihlKXtlKHQpfSl9LGkucmVqZWN0PWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgaShmdW5jdGlvbihlLG4pe24odCl9KX0saS5yYWNlPWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgaShmdW5jdGlvbihlLG4pe2Zvcih2YXIgbz0wLHI9dC5sZW5ndGg7bzxyO28rKyl0W29dLnRoZW4oZSxuKX0pfSxpLl9pbW1lZGlhdGVGbj0iZnVuY3Rpb24iPT10eXBlb2YgZSYmZnVuY3Rpb24odCl7ZSh0KX18fGZ1bmN0aW9uKHQpe2QodCwwKX0saS5fdW5oYW5kbGVkUmVqZWN0aW9uRm49ZnVuY3Rpb24odCl7InVuZGVmaW5lZCIhPXR5cGVvZiBjb25zb2xlJiZjb25zb2xlJiZjb25zb2xlLndhcm4oIlBvc3NpYmxlIFVuaGFuZGxlZCBQcm9taXNlIFJlamVjdGlvbjoiLHQpfSxpLl9zZXRJbW1lZGlhdGVGbj1mdW5jdGlvbih0KXtpLl9pbW1lZGlhdGVGbj10fSxpLl9zZXRVbmhhbmRsZWRSZWplY3Rpb25Gbj1mdW5jdGlvbih0KXtpLl91bmhhbmRsZWRSZWplY3Rpb25Gbj10fSx2b2lkIDAhPT10JiZ0LmV4cG9ydHM/dC5leHBvcnRzPWk6bi5Qcm9taXNlfHwobi5Qcm9taXNlPWkpfSh0aGlzKX0pLmNhbGwoZSxuKDE4KS5zZXRJbW1lZGlhdGUpfSxmdW5jdGlvbih0LGUsbil7ZnVuY3Rpb24gbyh0LGUpe3RoaXMuX2lkPXQsdGhpcy5fY2xlYXJGbj1lfXZhciByPUZ1bmN0aW9uLnByb3RvdHlwZS5hcHBseTtlLnNldFRpbWVvdXQ9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IG8oci5jYWxsKHNldFRpbWVvdXQsd2luZG93LGFyZ3VtZW50cyksY2xlYXJUaW1lb3V0KX0sZS5zZXRJbnRlcnZhbD1mdW5jdGlvbigpe3JldHVybiBuZXcgbyhyLmNhbGwoc2V0SW50ZXJ2YWwsd2luZG93LGFyZ3VtZW50cyksY2xlYXJJbnRlcnZhbCl9LGUuY2xlYXJUaW1lb3V0PWUuY2xlYXJJbnRlcnZhbD1mdW5jdGlvbih0KXt0JiZ0LmNsb3NlKCl9LG8ucHJvdG90eXBlLnVucmVmPW8ucHJvdG90eXBlLnJlZj1mdW5jdGlvbigpe30sby5wcm90b3R5cGUuY2xvc2U9ZnVuY3Rpb24oKXt0aGlzLl9jbGVhckZuLmNhbGwod2luZG93LHRoaXMuX2lkKX0sZS5lbnJvbGw9ZnVuY3Rpb24odCxlKXtjbGVhclRpbWVvdXQodC5faWRsZVRpbWVvdXRJZCksdC5faWRsZVRpbWVvdXQ9ZX0sZS51bmVucm9sbD1mdW5jdGlvbih0KXtjbGVhclRpbWVvdXQodC5faWRsZVRpbWVvdXRJZCksdC5faWRsZVRpbWVvdXQ9LTF9LGUuX3VucmVmQWN0aXZlPWUuYWN0aXZlPWZ1bmN0aW9uKHQpe2NsZWFyVGltZW91dCh0Ll9pZGxlVGltZW91dElkKTt2YXIgZT10Ll9pZGxlVGltZW91dDtlPj0wJiYodC5faWRsZVRpbWVvdXRJZD1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dC5fb25UaW1lb3V0JiZ0Ll9vblRpbWVvdXQoKX0sZSkpfSxuKDE5KSxlLnNldEltbWVkaWF0ZT1zZXRJbW1lZGlhdGUsZS5jbGVhckltbWVkaWF0ZT1jbGVhckltbWVkaWF0ZX0sZnVuY3Rpb24odCxlLG4peyhmdW5jdGlvbih0LGUpeyFmdW5jdGlvbih0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBvKHQpeyJmdW5jdGlvbiIhPXR5cGVvZiB0JiYodD1uZXcgRnVuY3Rpb24oIiIrdCkpO2Zvcih2YXIgZT1uZXcgQXJyYXkoYXJndW1lbnRzLmxlbmd0aC0xKSxuPTA7bjxlLmxlbmd0aDtuKyspZVtuXT1hcmd1bWVudHNbbisxXTt2YXIgbz17Y2FsbGJhY2s6dCxhcmdzOmV9O3JldHVybiBsW2NdPW8scyhjKSxjKyt9ZnVuY3Rpb24gcih0KXtkZWxldGUgbFt0XX1mdW5jdGlvbiBpKHQpe3ZhciBlPXQuY2FsbGJhY2ssbz10LmFyZ3M7c3dpdGNoKG8ubGVuZ3RoKXtjYXNlIDA6ZSgpO2JyZWFrO2Nhc2UgMTplKG9bMF0pO2JyZWFrO2Nhc2UgMjplKG9bMF0sb1sxXSk7YnJlYWs7Y2FzZSAzOmUob1swXSxvWzFdLG9bMl0pO2JyZWFrO2RlZmF1bHQ6ZS5hcHBseShuLG8pfX1mdW5jdGlvbiBhKHQpe2lmKHUpc2V0VGltZW91dChhLDAsdCk7ZWxzZXt2YXIgZT1sW3RdO2lmKGUpe3U9ITA7dHJ5e2koZSl9ZmluYWxseXtyKHQpLHU9ITF9fX19aWYoIXQuc2V0SW1tZWRpYXRlKXt2YXIgcyxjPTEsbD17fSx1PSExLGY9dC5kb2N1bWVudCxkPU9iamVjdC5nZXRQcm90b3R5cGVPZiYmT2JqZWN0LmdldFByb3RvdHlwZU9mKHQpO2Q9ZCYmZC5zZXRUaW1lb3V0P2Q6dCwiW29iamVjdCBwcm9jZXNzXSI9PT17fS50b1N0cmluZy5jYWxsKHQucHJvY2Vzcyk/ZnVuY3Rpb24oKXtzPWZ1bmN0aW9uKHQpe2UubmV4dFRpY2soZnVuY3Rpb24oKXthKHQpfSl9fSgpOmZ1bmN0aW9uKCl7aWYodC5wb3N0TWVzc2FnZSYmIXQuaW1wb3J0U2NyaXB0cyl7dmFyIGU9ITAsbj10Lm9ubWVzc2FnZTtyZXR1cm4gdC5vbm1lc3NhZ2U9ZnVuY3Rpb24oKXtlPSExfSx0LnBvc3RNZXNzYWdlKCIiLCIqIiksdC5vbm1lc3NhZ2U9bixlfX0oKT9mdW5jdGlvbigpe3ZhciBlPSJzZXRJbW1lZGlhdGUkIitNYXRoLnJhbmRvbSgpKyIkIixuPWZ1bmN0aW9uKG4pe24uc291cmNlPT09dCYmInN0cmluZyI9PXR5cGVvZiBuLmRhdGEmJjA9PT1uLmRhdGEuaW5kZXhPZihlKSYmYSgrbi5kYXRhLnNsaWNlKGUubGVuZ3RoKSl9O3QuYWRkRXZlbnRMaXN0ZW5lcj90LmFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLG4sITEpOnQuYXR0YWNoRXZlbnQoIm9ubWVzc2FnZSIsbikscz1mdW5jdGlvbihuKXt0LnBvc3RNZXNzYWdlKGUrbiwiKiIpfX0oKTp0Lk1lc3NhZ2VDaGFubmVsP2Z1bmN0aW9uKCl7dmFyIHQ9bmV3IE1lc3NhZ2VDaGFubmVsO3QucG9ydDEub25tZXNzYWdlPWZ1bmN0aW9uKHQpe2EodC5kYXRhKX0scz1mdW5jdGlvbihlKXt0LnBvcnQyLnBvc3RNZXNzYWdlKGUpfX0oKTpmJiYib25yZWFkeXN0YXRlY2hhbmdlImluIGYuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik/ZnVuY3Rpb24oKXt2YXIgdD1mLmRvY3VtZW50RWxlbWVudDtzPWZ1bmN0aW9uKGUpe3ZhciBuPWYuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7bi5vbnJlYWR5c3RhdGVjaGFuZ2U9ZnVuY3Rpb24oKXthKGUpLG4ub25yZWFkeXN0YXRlY2hhbmdlPW51bGwsdC5yZW1vdmVDaGlsZChuKSxuPW51bGx9LHQuYXBwZW5kQ2hpbGQobil9fSgpOmZ1bmN0aW9uKCl7cz1mdW5jdGlvbih0KXtzZXRUaW1lb3V0KGEsMCx0KX19KCksZC5zZXRJbW1lZGlhdGU9byxkLmNsZWFySW1tZWRpYXRlPXJ9fSgidW5kZWZpbmVkIj09dHlwZW9mIHNlbGY/dm9pZCAwPT09dD90aGlzOnQ6c2VsZil9KS5jYWxsKGUsbig3KSxuKDIwKSl9LGZ1bmN0aW9uKHQsZSl7ZnVuY3Rpb24gbigpe3Rocm93IG5ldyBFcnJvcigic2V0VGltZW91dCBoYXMgbm90IGJlZW4gZGVmaW5lZCIpfWZ1bmN0aW9uIG8oKXt0aHJvdyBuZXcgRXJyb3IoImNsZWFyVGltZW91dCBoYXMgbm90IGJlZW4gZGVmaW5lZCIpfWZ1bmN0aW9uIHIodCl7aWYodT09PXNldFRpbWVvdXQpcmV0dXJuIHNldFRpbWVvdXQodCwwKTtpZigodT09PW58fCF1KSYmc2V0VGltZW91dClyZXR1cm4gdT1zZXRUaW1lb3V0LHNldFRpbWVvdXQodCwwKTt0cnl7cmV0dXJuIHUodCwwKX1jYXRjaChlKXt0cnl7cmV0dXJuIHUuY2FsbChudWxsLHQsMCl9Y2F0Y2goZSl7cmV0dXJuIHUuY2FsbCh0aGlzLHQsMCl9fX1mdW5jdGlvbiBpKHQpe2lmKGY9PT1jbGVhclRpbWVvdXQpcmV0dXJuIGNsZWFyVGltZW91dCh0KTtpZigoZj09PW98fCFmKSYmY2xlYXJUaW1lb3V0KXJldHVybiBmPWNsZWFyVGltZW91dCxjbGVhclRpbWVvdXQodCk7dHJ5e3JldHVybiBmKHQpfWNhdGNoKGUpe3RyeXtyZXR1cm4gZi5jYWxsKG51bGwsdCl9Y2F0Y2goZSl7cmV0dXJuIGYuY2FsbCh0aGlzLHQpfX19ZnVuY3Rpb24gYSgpe2ImJnAmJihiPSExLHAubGVuZ3RoP209cC5jb25jYXQobSk6dj0tMSxtLmxlbmd0aCYmcygpKX1mdW5jdGlvbiBzKCl7aWYoIWIpe3ZhciB0PXIoYSk7Yj0hMDtmb3IodmFyIGU9bS5sZW5ndGg7ZTspe2ZvcihwPW0sbT1bXTsrK3Y8ZTspcCYmcFt2XS5ydW4oKTt2PS0xLGU9bS5sZW5ndGh9cD1udWxsLGI9ITEsaSh0KX19ZnVuY3Rpb24gYyh0LGUpe3RoaXMuZnVuPXQsdGhpcy5hcnJheT1lfWZ1bmN0aW9uIGwoKXt9dmFyIHUsZixkPXQuZXhwb3J0cz17fTshZnVuY3Rpb24oKXt0cnl7dT0iZnVuY3Rpb24iPT10eXBlb2Ygc2V0VGltZW91dD9zZXRUaW1lb3V0Om59Y2F0Y2godCl7dT1ufXRyeXtmPSJmdW5jdGlvbiI9PXR5cGVvZiBjbGVhclRpbWVvdXQ/Y2xlYXJUaW1lb3V0Om99Y2F0Y2godCl7Zj1vfX0oKTt2YXIgcCxtPVtdLGI9ITEsdj0tMTtkLm5leHRUaWNrPWZ1bmN0aW9uKHQpe3ZhciBlPW5ldyBBcnJheShhcmd1bWVudHMubGVuZ3RoLTEpO2lmKGFyZ3VtZW50cy5sZW5ndGg+MSlmb3IodmFyIG49MTtuPGFyZ3VtZW50cy5sZW5ndGg7bisrKWVbbi0xXT1hcmd1bWVudHNbbl07bS5wdXNoKG5ldyBjKHQsZSkpLDEhPT1tLmxlbmd0aHx8Ynx8cihzKX0sYy5wcm90b3R5cGUucnVuPWZ1bmN0aW9uKCl7dGhpcy5mdW4uYXBwbHkobnVsbCx0aGlzLmFycmF5KX0sZC50aXRsZT0iYnJvd3NlciIsZC5icm93c2VyPSEwLGQuZW52PXt9LGQuYXJndj1bXSxkLnZlcnNpb249IiIsZC52ZXJzaW9ucz17fSxkLm9uPWwsZC5hZGRMaXN0ZW5lcj1sLGQub25jZT1sLGQub2ZmPWwsZC5yZW1vdmVMaXN0ZW5lcj1sLGQucmVtb3ZlQWxsTGlzdGVuZXJzPWwsZC5lbWl0PWwsZC5wcmVwZW5kTGlzdGVuZXI9bCxkLnByZXBlbmRPbmNlTGlzdGVuZXI9bCxkLmxpc3RlbmVycz1mdW5jdGlvbih0KXtyZXR1cm5bXX0sZC5iaW5kaW5nPWZ1bmN0aW9uKHQpe3Rocm93IG5ldyBFcnJvcigicHJvY2Vzcy5iaW5kaW5nIGlzIG5vdCBzdXBwb3J0ZWQiKX0sZC5jd2Q9ZnVuY3Rpb24oKXtyZXR1cm4iLyJ9LGQuY2hkaXI9ZnVuY3Rpb24odCl7dGhyb3cgbmV3IEVycm9yKCJwcm9jZXNzLmNoZGlyIGlzIG5vdCBzdXBwb3J0ZWQiKX0sZC51bWFzaz1mdW5jdGlvbigpe3JldHVybiAwfX0sZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjtuKDIyKS5wb2x5ZmlsbCgpfSxmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG8odCxlKXtpZih2b2lkIDA9PT10fHxudWxsPT09dCl0aHJvdyBuZXcgVHlwZUVycm9yKCJDYW5ub3QgY29udmVydCBmaXJzdCBhcmd1bWVudCB0byBvYmplY3QiKTtmb3IodmFyIG49T2JqZWN0KHQpLG89MTtvPGFyZ3VtZW50cy5sZW5ndGg7bysrKXt2YXIgcj1hcmd1bWVudHNbb107aWYodm9pZCAwIT09ciYmbnVsbCE9PXIpZm9yKHZhciBpPU9iamVjdC5rZXlzKE9iamVjdChyKSksYT0wLHM9aS5sZW5ndGg7YTxzO2ErKyl7dmFyIGM9aVthXSxsPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IocixjKTt2b2lkIDAhPT1sJiZsLmVudW1lcmFibGUmJihuW2NdPXJbY10pfX1yZXR1cm4gbn1mdW5jdGlvbiByKCl7T2JqZWN0LmFzc2lnbnx8T2JqZWN0LmRlZmluZVByb3BlcnR5KE9iamVjdCwiYXNzaWduIix7ZW51bWVyYWJsZTohMSxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6b30pfXQuZXhwb3J0cz17YXNzaWduOm8scG9seWZpbGw6cn19LGZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBvPW4oMjQpLHI9big2KSxpPW4oNSksYT1uKDM2KSxzPWZ1bmN0aW9uKCl7Zm9yKHZhciB0PVtdLGU9MDtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXRbZV09YXJndW1lbnRzW2VdO2lmKCJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93KXt2YXIgbj1hLmdldE9wdHMuYXBwbHkodm9pZCAwLHQpO3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbih0LGUpe2kuZGVmYXVsdC5wcm9taXNlPXtyZXNvbHZlOnQscmVqZWN0OmV9LG8uZGVmYXVsdChuKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ci5vcGVuTW9kYWwoKX0pfSl9fTtzLmNsb3NlPXIub25BY3Rpb24scy5nZXRTdGF0ZT1yLmdldFN0YXRlLHMuc2V0QWN0aW9uVmFsdWU9aS5zZXRBY3Rpb25WYWx1ZSxzLnN0b3BMb2FkaW5nPXIuc3RvcExvYWRpbmcscy5zZXREZWZhdWx0cz1hLnNldERlZmF1bHRzLGUuZGVmYXVsdD1zfSxmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbz1uKDEpLHI9bigwKSxpPXIuZGVmYXVsdC5NT0RBTCxhPW4oNCkscz1uKDM0KSxjPW4oMzUpLGw9bigxKTtlLmluaXQ9ZnVuY3Rpb24odCl7by5nZXROb2RlKGkpfHwoZG9jdW1lbnQuYm9keXx8bC50aHJvd0VycigiWW91IGNhbiBvbmx5IHVzZSBTd2VldEFsZXJ0IEFGVEVSIHRoZSBET00gaGFzIGxvYWRlZCEiKSxzLmRlZmF1bHQoKSxhLmRlZmF1bHQoKSksYS5pbml0TW9kYWxDb250ZW50KHQpLGMuZGVmYXVsdCh0KX0sZS5kZWZhdWx0PWUuaW5pdH0sZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG89bigwKSxyPW8uZGVmYXVsdC5NT0RBTDtlLm1vZGFsTWFya3VwPSdcbiAgPGRpdiBjbGFzcz0iJytyKyciIHJvbGU9ImRpYWxvZyIgYXJpYS1tb2RhbD0idHJ1ZSI+PC9kaXY+JyxlLmRlZmF1bHQ9ZS5tb2RhbE1hcmt1cH0sZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG89bigwKSxyPW8uZGVmYXVsdC5PVkVSTEFZLGk9JzxkaXYgXG4gICAgY2xhc3M9IicrcisnIlxuICAgIHRhYkluZGV4PSItMSI+XG4gIDwvZGl2Pic7ZS5kZWZhdWx0PWl9LGZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBvPW4oMCkscj1vLmRlZmF1bHQuSUNPTjtlLmVycm9ySWNvbk1hcmt1cD1mdW5jdGlvbigpe3ZhciB0PXIrIi0tZXJyb3IiLGU9dCsiX19saW5lIjtyZXR1cm4nXG4gICAgPGRpdiBjbGFzcz0iJyt0KydfX3gtbWFyayI+XG4gICAgICA8c3BhbiBjbGFzcz0iJytlKyIgIitlKyctLWxlZnQiPjwvc3Bhbj5cbiAgICAgIDxzcGFuIGNsYXNzPSInK2UrIiAiK2UrJy0tcmlnaHQiPjwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgJ30sZS53YXJuaW5nSWNvbk1hcmt1cD1mdW5jdGlvbigpe3ZhciB0PXIrIi0td2FybmluZyI7cmV0dXJuJ1xuICAgIDxzcGFuIGNsYXNzPSInK3QrJ19fYm9keSI+XG4gICAgICA8c3BhbiBjbGFzcz0iJyt0KydfX2RvdCI+PC9zcGFuPlxuICAgIDwvc3Bhbj5cbiAgJ30sZS5zdWNjZXNzSWNvbk1hcmt1cD1mdW5jdGlvbigpe3ZhciB0PXIrIi0tc3VjY2VzcyI7cmV0dXJuJ1xuICAgIDxzcGFuIGNsYXNzPSInK3QrIl9fbGluZSAiK3QrJ19fbGluZS0tbG9uZyI+PC9zcGFuPlxuICAgIDxzcGFuIGNsYXNzPSInK3QrIl9fbGluZSAiK3QrJ19fbGluZS0tdGlwIj48L3NwYW4+XG5cbiAgICA8ZGl2IGNsYXNzPSInK3QrJ19fcmluZyI+PC9kaXY+XG4gICAgPGRpdiBjbGFzcz0iJyt0KydfX2hpZGUtY29ybmVycyI+PC9kaXY+XG4gICd9fSxmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbz1uKDApLHI9by5kZWZhdWx0LkNPTlRFTlQ7ZS5jb250ZW50TWFya3VwPSdcbiAgPGRpdiBjbGFzcz0iJytyKyciPlxuXG4gIDwvZGl2PlxuJ30sZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG89bigwKSxyPW8uZGVmYXVsdC5CVVRUT05fQ09OVEFJTkVSLGk9by5kZWZhdWx0LkJVVFRPTixhPW8uZGVmYXVsdC5CVVRUT05fTE9BREVSO2UuYnV0dG9uTWFya3VwPSdcbiAgPGRpdiBjbGFzcz0iJytyKyciPlxuXG4gICAgPGJ1dHRvblxuICAgICAgY2xhc3M9IicraSsnIlxuICAgID48L2J1dHRvbj5cblxuICAgIDxkaXYgY2xhc3M9IicrYSsnIj5cbiAgICAgIDxkaXY+PC9kaXY+XG4gICAgICA8ZGl2PjwvZGl2PlxuICAgICAgPGRpdj48L2Rpdj5cbiAgICA8L2Rpdj5cblxuICA8L2Rpdj5cbid9LGZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBvPW4oNCkscj1uKDIpLGk9bigwKSxhPWkuZGVmYXVsdC5JQ09OLHM9aS5kZWZhdWx0LklDT05fQ1VTVE9NLGM9WyJlcnJvciIsIndhcm5pbmciLCJzdWNjZXNzIiwiaW5mbyJdLGw9e2Vycm9yOnIuZXJyb3JJY29uTWFya3VwKCksd2FybmluZzpyLndhcm5pbmdJY29uTWFya3VwKCksc3VjY2VzczpyLnN1Y2Nlc3NJY29uTWFya3VwKCl9LHU9ZnVuY3Rpb24odCxlKXt2YXIgbj1hKyItLSIrdDtlLmNsYXNzTGlzdC5hZGQobik7dmFyIG89bFt0XTtvJiYoZS5pbm5lckhUTUw9byl9LGY9ZnVuY3Rpb24odCxlKXtlLmNsYXNzTGlzdC5hZGQocyk7dmFyIG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaW1nIik7bi5zcmM9dCxlLmFwcGVuZENoaWxkKG4pfSxkPWZ1bmN0aW9uKHQpe2lmKHQpe3ZhciBlPW8uaW5qZWN0RWxJbnRvTW9kYWwoci5pY29uTWFya3VwKTtjLmluY2x1ZGVzKHQpP3UodCxlKTpmKHQsZSl9fTtlLmRlZmF1bHQ9ZH0sZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG89bigyKSxyPW4oNCksaT1mdW5jdGlvbih0KXtuYXZpZ2F0b3IudXNlckFnZW50LmluY2x1ZGVzKCJBcHBsZVdlYktpdCIpJiYodC5zdHlsZS5kaXNwbGF5PSJub25lIix0Lm9mZnNldEhlaWdodCx0LnN0eWxlLmRpc3BsYXk9IiIpfTtlLmluaXRUaXRsZT1mdW5jdGlvbih0KXtpZih0KXt2YXIgZT1yLmluamVjdEVsSW50b01vZGFsKG8udGl0bGVNYXJrdXApO2UudGV4dENvbnRlbnQ9dCxpKGUpfX0sZS5pbml0VGV4dD1mdW5jdGlvbih0KXtpZih0KXt2YXIgZT1kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7dC5zcGxpdCgiXG4iKS5mb3JFYWNoKGZ1bmN0aW9uKHQsbixvKXtlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHQpKSxuPG8ubGVuZ3RoLTEmJmUuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYnIiKSl9KTt2YXIgbj1yLmluamVjdEVsSW50b01vZGFsKG8udGV4dE1hcmt1cCk7bi5hcHBlbmRDaGlsZChlKSxpKG4pfX19LGZ1bmN0aW9uKHQsZSxuKXsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pO3ZhciBvPW4oMSkscj1uKDQpLGk9bigwKSxhPWkuZGVmYXVsdC5CVVRUT04scz1pLmRlZmF1bHQuREFOR0VSX0JVVFRPTixjPW4oMyksbD1uKDIpLHU9big2KSxmPW4oNSksZD1mdW5jdGlvbih0LGUsbil7dmFyIHI9ZS50ZXh0LGk9ZS52YWx1ZSxkPWUuY2xhc3NOYW1lLHA9ZS5jbG9zZU1vZGFsLG09by5zdHJpbmdUb05vZGUobC5idXR0b25NYXJrdXApLGI9bS5xdWVyeVNlbGVjdG9yKCIuIithKSx2PWErIi0tIit0O2lmKGIuY2xhc3NMaXN0LmFkZCh2KSxkKXsoQXJyYXkuaXNBcnJheShkKT9kOmQuc3BsaXQoIiAiKSkuZmlsdGVyKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmxlbmd0aD4wfSkuZm9yRWFjaChmdW5jdGlvbih0KXtiLmNsYXNzTGlzdC5hZGQodCl9KX1uJiZ0PT09Yy5DT05GSVJNX0tFWSYmYi5jbGFzc0xpc3QuYWRkKHMpLGIudGV4dENvbnRlbnQ9cjt2YXIgZz17fTtyZXR1cm4gZ1t0XT1pLGYuc2V0QWN0aW9uVmFsdWUoZyksZi5zZXRBY3Rpb25PcHRpb25zRm9yKHQse2Nsb3NlTW9kYWw6cH0pLGIuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7cmV0dXJuIHUub25BY3Rpb24odCl9KSxtfSxwPWZ1bmN0aW9uKHQsZSl7dmFyIG49ci5pbmplY3RFbEludG9Nb2RhbChsLmZvb3Rlck1hcmt1cCk7Zm9yKHZhciBvIGluIHQpe3ZhciBpPXRbb10sYT1kKG8saSxlKTtpLnZpc2libGUmJm4uYXBwZW5kQ2hpbGQoYSl9MD09PW4uY2hpbGRyZW4ubGVuZ3RoJiZuLnJlbW92ZSgpfTtlLmRlZmF1bHQ9cH0sZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG89bigzKSxyPW4oNCksaT1uKDIpLGE9big1KSxzPW4oNiksYz1uKDApLGw9Yy5kZWZhdWx0LkNPTlRFTlQsdT1mdW5jdGlvbih0KXt0LmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixmdW5jdGlvbih0KXt2YXIgZT10LnRhcmdldCxuPWUudmFsdWU7YS5zZXRBY3Rpb25WYWx1ZShuKX0pLHQuYWRkRXZlbnRMaXN0ZW5lcigia2V5dXAiLGZ1bmN0aW9uKHQpe2lmKCJFbnRlciI9PT10LmtleSlyZXR1cm4gcy5vbkFjdGlvbihvLkNPTkZJUk1fS0VZKX0pLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt0LmZvY3VzKCksYS5zZXRBY3Rpb25WYWx1ZSgiIil9LDApfSxmPWZ1bmN0aW9uKHQsZSxuKXt2YXIgbz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KGUpLHI9bCsiX18iK2U7by5jbGFzc0xpc3QuYWRkKHIpO2Zvcih2YXIgaSBpbiBuKXt2YXIgYT1uW2ldO29baV09YX0iaW5wdXQiPT09ZSYmdShvKSx0LmFwcGVuZENoaWxkKG8pfSxkPWZ1bmN0aW9uKHQpe2lmKHQpe3ZhciBlPXIuaW5qZWN0RWxJbnRvTW9kYWwoaS5jb250ZW50TWFya3VwKSxuPXQuZWxlbWVudCxvPXQuYXR0cmlidXRlczsic3RyaW5nIj09dHlwZW9mIG4/ZihlLG4sbyk6ZS5hcHBlbmRDaGlsZChuKX19O2UuZGVmYXVsdD1kfSxmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbz1uKDEpLHI9bigyKSxpPWZ1bmN0aW9uKCl7dmFyIHQ9by5zdHJpbmdUb05vZGUoci5vdmVybGF5TWFya3VwKTtkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHQpfTtlLmRlZmF1bHQ9aX0sZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG89big1KSxyPW4oNiksaT1uKDEpLGE9bigzKSxzPW4oMCksYz1zLmRlZmF1bHQuTU9EQUwsbD1zLmRlZmF1bHQuQlVUVE9OLHU9cy5kZWZhdWx0Lk9WRVJMQVksZj1mdW5jdGlvbih0KXt0LnByZXZlbnREZWZhdWx0KCksdigpfSxkPWZ1bmN0aW9uKHQpe3QucHJldmVudERlZmF1bHQoKSxnKCl9LHA9ZnVuY3Rpb24odCl7aWYoby5kZWZhdWx0LmlzT3Blbilzd2l0Y2godC5rZXkpe2Nhc2UiRXNjYXBlIjpyZXR1cm4gci5vbkFjdGlvbihhLkNBTkNFTF9LRVkpfX0sbT1mdW5jdGlvbih0KXtpZihvLmRlZmF1bHQuaXNPcGVuKXN3aXRjaCh0LmtleSl7Y2FzZSJUYWIiOnJldHVybiBmKHQpfX0sYj1mdW5jdGlvbih0KXtpZihvLmRlZmF1bHQuaXNPcGVuKXJldHVybiJUYWIiPT09dC5rZXkmJnQuc2hpZnRLZXk/ZCh0KTp2b2lkIDB9LHY9ZnVuY3Rpb24oKXt2YXIgdD1pLmdldE5vZGUobCk7dCYmKHQudGFiSW5kZXg9MCx0LmZvY3VzKCkpfSxnPWZ1bmN0aW9uKCl7dmFyIHQ9aS5nZXROb2RlKGMpLGU9dC5xdWVyeVNlbGVjdG9yQWxsKCIuIitsKSxuPWUubGVuZ3RoLTEsbz1lW25dO28mJm8uZm9jdXMoKX0saD1mdW5jdGlvbih0KXt0W3QubGVuZ3RoLTFdLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLG0pfSx3PWZ1bmN0aW9uKHQpe3RbMF0uYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsYil9LHk9ZnVuY3Rpb24oKXt2YXIgdD1pLmdldE5vZGUoYyksZT10LnF1ZXJ5U2VsZWN0b3JBbGwoIi4iK2wpO2UubGVuZ3RoJiYoaChlKSx3KGUpKX0seD1mdW5jdGlvbih0KXtpZihpLmdldE5vZGUodSk9PT10LnRhcmdldClyZXR1cm4gci5vbkFjdGlvbihhLkNBTkNFTF9LRVkpfSxfPWZ1bmN0aW9uKHQpe3ZhciBlPWkuZ2V0Tm9kZSh1KTtlLnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIix4KSx0JiZlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix4KX0saz1mdW5jdGlvbih0KXtvLmRlZmF1bHQudGltZXImJmNsZWFyVGltZW91dChvLmRlZmF1bHQudGltZXIpLHQmJihvLmRlZmF1bHQudGltZXI9d2luZG93LnNldFRpbWVvdXQoZnVuY3Rpb24oKXtyZXR1cm4gci5vbkFjdGlvbihhLkNBTkNFTF9LRVkpfSx0KSl9LE89ZnVuY3Rpb24odCl7dC5jbG9zZU9uRXNjP2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImtleXVwIixwKTpkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXl1cCIscCksdC5kYW5nZXJNb2RlP3YoKTpnKCkseSgpLF8odC5jbG9zZU9uQ2xpY2tPdXRzaWRlKSxrKHQudGltZXIpfTtlLmRlZmF1bHQ9T30sZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG89bigxKSxyPW4oMyksaT1uKDM3KSxhPW4oMzgpLHM9e3RpdGxlOm51bGwsdGV4dDpudWxsLGljb246bnVsbCxidXR0b25zOnIuZGVmYXVsdEJ1dHRvbkxpc3QsY29udGVudDpudWxsLGNsYXNzTmFtZTpudWxsLGNsb3NlT25DbGlja091dHNpZGU6ITAsY2xvc2VPbkVzYzohMCxkYW5nZXJNb2RlOiExLHRpbWVyOm51bGx9LGM9T2JqZWN0LmFzc2lnbih7fSxzKTtlLnNldERlZmF1bHRzPWZ1bmN0aW9uKHQpe2M9T2JqZWN0LmFzc2lnbih7fSxzLHQpfTt2YXIgbD1mdW5jdGlvbih0KXt2YXIgZT10JiZ0LmJ1dHRvbixuPXQmJnQuYnV0dG9ucztyZXR1cm4gdm9pZCAwIT09ZSYmdm9pZCAwIT09biYmby50aHJvd0VycigiQ2Fubm90IHNldCBib3RoICdidXR0b24nIGFuZCAnYnV0dG9ucycgb3B0aW9ucyEiKSx2b2lkIDAhPT1lP3tjb25maXJtOmV9Om59LHU9ZnVuY3Rpb24odCl7cmV0dXJuIG8ub3JkaW5hbFN1ZmZpeE9mKHQrMSl9LGY9ZnVuY3Rpb24odCxlKXtvLnRocm93RXJyKHUoZSkrIiBhcmd1bWVudCAoJyIrdCsiJykgaXMgaW52YWxpZCIpfSxkPWZ1bmN0aW9uKHQsZSl7dmFyIG49dCsxLHI9ZVtuXTtvLmlzUGxhaW5PYmplY3Qocil8fHZvaWQgMD09PXJ8fG8udGhyb3dFcnIoIkV4cGVjdGVkICIrdShuKSsiIGFyZ3VtZW50ICgnIityKyInKSB0byBiZSBhIHBsYWluIG9iamVjdCIpfSxwPWZ1bmN0aW9uKHQsZSl7dmFyIG49dCsxLHI9ZVtuXTt2b2lkIDAhPT1yJiZvLnRocm93RXJyKCJVbmV4cGVjdGVkICIrdShuKSsiIGFyZ3VtZW50ICgiK3IrIikiKX0sbT1mdW5jdGlvbih0LGUsbixyKXt2YXIgaT10eXBlb2YgZSxhPSJzdHJpbmciPT09aSxzPWUgaW5zdGFuY2VvZiBFbGVtZW50O2lmKGEpe2lmKDA9PT1uKXJldHVybnt0ZXh0OmV9O2lmKDE9PT1uKXJldHVybnt0ZXh0OmUsdGl0bGU6clswXX07aWYoMj09PW4pcmV0dXJuIGQobixyKSx7aWNvbjplfTtmKGUsbil9ZWxzZXtpZihzJiYwPT09bilyZXR1cm4gZChuLHIpLHtjb250ZW50OmV9O2lmKG8uaXNQbGFpbk9iamVjdChlKSlyZXR1cm4gcChuLHIpLGU7ZihlLG4pfX07ZS5nZXRPcHRzPWZ1bmN0aW9uKCl7Zm9yKHZhciB0PVtdLGU9MDtlPGFyZ3VtZW50cy5sZW5ndGg7ZSsrKXRbZV09YXJndW1lbnRzW2VdO3ZhciBuPXt9O3QuZm9yRWFjaChmdW5jdGlvbihlLG8pe3ZhciByPW0oMCxlLG8sdCk7T2JqZWN0LmFzc2lnbihuLHIpfSk7dmFyIG89bChuKTtuLmJ1dHRvbnM9ci5nZXRCdXR0b25MaXN0T3B0cyhvKSxkZWxldGUgbi5idXR0b24sbi5jb250ZW50PWkuZ2V0Q29udGVudE9wdHMobi5jb250ZW50KTt2YXIgdT1PYmplY3QuYXNzaWduKHt9LHMsYyxuKTtyZXR1cm4gT2JqZWN0LmtleXModSkuZm9yRWFjaChmdW5jdGlvbih0KXthLkRFUFJFQ0FURURfT1BUU1t0XSYmYS5sb2dEZXByZWNhdGlvbih0KX0pLHV9fSxmdW5jdGlvbih0LGUsbil7InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbz1uKDEpLHI9e2VsZW1lbnQ6ImlucHV0IixhdHRyaWJ1dGVzOntwbGFjZWhvbGRlcjoiIn19O2UuZ2V0Q29udGVudE9wdHM9ZnVuY3Rpb24odCl7dmFyIGU9e307cmV0dXJuIG8uaXNQbGFpbk9iamVjdCh0KT9PYmplY3QuYXNzaWduKGUsdCk6dCBpbnN0YW5jZW9mIEVsZW1lbnQ/e2VsZW1lbnQ6dH06ImlucHV0Ij09PXQ/cjpudWxsfX0sZnVuY3Rpb24odCxlLG4peyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksZS5sb2dEZXByZWNhdGlvbj1mdW5jdGlvbih0KXt2YXIgbj1lLkRFUFJFQ0FURURfT1BUU1t0XSxvPW4ub25seVJlbmFtZSxyPW4ucmVwbGFjZW1lbnQsaT1uLnN1Yk9wdGlvbixhPW4ubGluayxzPW8/InJlbmFtZWQiOiJkZXByZWNhdGVkIixjPSdTd2VldEFsZXJ0IHdhcm5pbmc6ICInK3QrJyIgb3B0aW9uIGhhcyBiZWVuICcrcysiLiI7aWYocil7Yys9IiBQbGVhc2UgdXNlIisoaT8nICInK2krJyIgaW4gJzoiICIpKyciJytyKyciIGluc3RlYWQuJ312YXIgbD0iaHR0cHM6Ly9zd2VldGFsZXJ0LmpzLm9yZyI7Yys9YT8iIE1vcmUgZGV0YWlsczogIitsK2E6IiBNb3JlIGRldGFpbHM6ICIrbCsiL2d1aWRlcy8jdXBncmFkaW5nLWZyb20tMXgiLGNvbnNvbGUud2FybihjKX0sZS5ERVBSRUNBVEVEX09QVFM9e3R5cGU6e3JlcGxhY2VtZW50OiJpY29uIixsaW5rOiIvZG9jcy8jaWNvbiJ9LGltYWdlVXJsOntyZXBsYWNlbWVudDoiaWNvbiIsbGluazoiL2RvY3MvI2ljb24ifSxjdXN0b21DbGFzczp7cmVwbGFjZW1lbnQ6ImNsYXNzTmFtZSIsb25seVJlbmFtZTohMCxsaW5rOiIvZG9jcy8jY2xhc3NuYW1lIn0saW1hZ2VTaXplOnt9LHNob3dDYW5jZWxCdXR0b246e3JlcGxhY2VtZW50OiJidXR0b25zIixsaW5rOiIvZG9jcy8jYnV0dG9ucyJ9LHNob3dDb25maXJtQnV0dG9uOntyZXBsYWNlbWVudDoiYnV0dG9uIixsaW5rOiIvZG9jcy8jYnV0dG9uIn0sY29uZmlybUJ1dHRvblRleHQ6e3JlcGxhY2VtZW50OiJidXR0b24iLGxpbms6Ii9kb2NzLyNidXR0b24ifSxjb25maXJtQnV0dG9uQ29sb3I6e30sY2FuY2VsQnV0dG9uVGV4dDp7cmVwbGFjZW1lbnQ6ImJ1dHRvbnMiLGxpbms6Ii9kb2NzLyNidXR0b25zIn0sY2xvc2VPbkNvbmZpcm06e3JlcGxhY2VtZW50OiJidXR0b24iLHN1Yk9wdGlvbjoiY2xvc2VNb2RhbCIsbGluazoiL2RvY3MvI2J1dHRvbiJ9LGNsb3NlT25DYW5jZWw6e3JlcGxhY2VtZW50OiJidXR0b25zIixzdWJPcHRpb246ImNsb3NlTW9kYWwiLGxpbms6Ii9kb2NzLyNidXR0b25zIn0sc2hvd0xvYWRlck9uQ29uZmlybTp7cmVwbGFjZW1lbnQ6ImJ1dHRvbnMifSxhbmltYXRpb246e30saW5wdXRUeXBlOntyZXBsYWNlbWVudDoiY29udGVudCIsbGluazoiL2RvY3MvI2NvbnRlbnQifSxpbnB1dFZhbHVlOntyZXBsYWNlbWVudDoiY29udGVudCIsbGluazoiL2RvY3MvI2NvbnRlbnQifSxpbnB1dFBsYWNlaG9sZGVyOntyZXBsYWNlbWVudDoiY29udGVudCIsbGluazoiL2RvY3MvI2NvbnRlbnQifSxodG1sOntyZXBsYWNlbWVudDoiY29udGVudCIsbGluazoiL2RvY3MvI2NvbnRlbnQifSxhbGxvd0VzY2FwZUtleTp7cmVwbGFjZW1lbnQ6ImNsb3NlT25Fc2MiLG9ubHlSZW5hbWU6ITAsbGluazoiL2RvY3MvI2Nsb3Nlb25lc2MifSxhbGxvd0NsaWNrT3V0c2lkZTp7cmVwbGFjZW1lbnQ6ImNsb3NlT25DbGlja091dHNpZGUiLG9ubHlSZW5hbWU6ITAsbGluazoiL2RvY3MvI2Nsb3Nlb25jbGlja291dHNpZGUifX19XSl9KTs="}},"time_used":100,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":100,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/js/custom_slick.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.057Z","timestamp":1785126256057,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /js/custom_slick.js HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: W/\"65211e70-9db\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":2523,"size_decoded":837,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with CRLF line terminators","md5":"48504d800ec15e00524974ec0eaa8478","sha1":"736af2fd9ff3ce0be9433e08561ad3b22ae04110","sha256":"a3dd8d3a7709bfd4636cc1d26b50ca5d6134091db7f191b04df9281774353856","sha512":"0980b7b3c638447ac941e0b7c8fa6cfc872b8e5a65e4f4c3f31ce9cdce3f86474e57a063498c81286d2fd3c90e57b60f25a9d994d2660b53e637de2967a208bf","ssdeep":"","tlshash":"1b51690a941251b74c3b62369f39b240cf5a6317414ac9a37efe47440f3421ab1e5eea","first_seen":"2023-03-13T03:45:08Z","last_seen":"2026-07-27T04:25:12.643189Z","times_seen":188,"resource_available":true,"data":"ICQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7DQogICAgICAgIC8vICQoJy5zaW5nbGUtaXRlbScpLnNsaWNrKHsNCiAgICAgICAgLy8gaW5maW5pdGU6IHRydWUsDQogICAgICAgIC8vIHNwZWVkOiA2MDAsDQogICAgICAgIC8vIHNsaWRlc1RvU2hvdzogMSwNCiAgICAgICAgLy8gYXV0b3BsYXk6IHRydWUsDQogICAgICAgIC8vIGFkYXB0aXZlSGVpZ2h0OiB0cnVlDQogICAgICAgIC8vIH0pOyANCg0KICAgICAgICAkKCcuc2luZ2xlLWl0ZW0nKS5zbGljayh7DQogICAgICAgICAgZG90czogdHJ1ZSwNCiAgICAgICAgICBpbmZpbml0ZTogdHJ1ZSwNCiAgICAgICAgICBzcGVlZDogNTAwLA0KICAgICAgICAgIGZhZGU6IHRydWUsDQogICAgICAgICAgYXV0b3BsYXk6IHRydWUsDQogICAgICAgICAgc2xpZGVzVG9TaG93OiAxLA0KICAgICAgICAgIGNzc0Vhc2U6ICdsaW5lYXInDQogICAgICAgIH0pOw0KICAgICAgICAgICAgICAgIC8vIGVuZCBmaXJzdCBzbGljaw0KDQogICAgICAgICAgICAgICAgLy8gbm93IHdlIHdpbGwgY3JlYXRlIGZvciB0aGUgbmF2IGJhciANCiAgICAgICAgICAgICQod2luZG93KS5vbignc2Nyb2xsJyxmdW5jdGlvbigpew0KICAgICAgICAgICAgICAvLyB2YXIgbmF2YmFyID0gJCgnLmNvbC1uYXYnKTsNCiAgICAgICAgICAgICAgaWYgKCQod2luZG93KS5zY3JvbGxUb3AoKSA+IDgwKSB7DQogICAgICAgICAgICAgICAgICAkKCcuY29sLWYtbmF2JykuYWRkQ2xhc3MoJ25hdi1iYWNrJyw0MDAwLCdlYXNlJyk7DQogICAgICAgICAgICAgIH1lbHNlew0KICAgICAgICAgICAgICAgICQoJy5jb2wtZi1uYXYnKS5yZW1vdmVDbGFzcygnbmF2LWJhY2snLDQwMDAsJ2Vhc2UnKTsNCiAgICAgICAgICAgICAgfQ0KICAgICAgICAgIH0pOw0KDQogICAgICAgICQoJy5jb2wtdGVzdC1jYXJkJykuc2xpY2soew0KICAgICAgICAgIHNsaWRlc1RvU2hvdzogMywNCiAgICAgICAgICBhdXRvcGxheTogdHJ1ZSwNCiAgICAgICAgICBhdXRvcGxheVNwZWVkOiAyMDAwLA0KICAgICAgICAgIGRvdHM6IHRydWUsDQogICAgICAgICAgLy8gdGhpcyBpcyB0byBtYWtlIHRoZSBzbGljayByZXNwb25zaXZlIA0KICAgICAgICAgIHJlc3BvbnNpdmU6IFt7DQogICAgICAgICAgICBicmVha3BvaW50OiA3NjgsDQogICAgICAgICAgICBzZXR0aW5nczogew0KICAgICAgICAgICAgICBzbGlkZXNUb1Nob3c6IDENCiAgICAgICAgICAgIH0NCiAgICAgICAgICB9XQ0KDQogICAgICAgIH0pOw0KICAgICAgICAvLyBlbmQgc2Vjb25kIHNsaWNrIGZvciB0aGUgdGVzdGltb255IHRleHQNCg0KICAgICAgICAkKCcuY29sLXRlc3QtdmlkZW8nKS5zbGljayh7DQogICAgICAgICAgc2xpZGVzVG9TaG93OiAzLA0KICAgICAgICAgIGF1dG9wbGF5OiB0cnVlLA0KICAgICAgICAgIGF1dG9wbGF5U3BlZWQ6IDIwMDAsDQogICAgICAgICAgZG90czogdHJ1ZSwNCiAgICAgICAgICAvLyB0aGlzIGlzIHRvIG1ha2UgdGhlIHNsaWNrIHJlc3BvbnNpdmUgDQogICAgICAgICAgcmVzcG9uc2l2ZTogW3sNCiAgICAgICAgICAgIGJyZWFrcG9pbnQ6IDc2OCwNCiAgICAgICAgICAgIHNldHRpbmdzOiB7DQogICAgICAgICAgICAgIHNsaWRlc1RvU2hvdzogMQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgIH1dDQoNCiAgICAgICAgfSk7DQoNCiAgICAgICAgJCgnLnByaWNlLXNsaWRlJykuc2xpY2soew0KICAgICAgICAgIHNsaWRlc1RvU2hvdzogNCwNCiAgICAgICAgICBhdXRvcGxheTogdHJ1ZSwNCiAgICAgICAgICBhdXRvcGxheVNwZWVkOiAyMDAwLA0KICAgICAgICAgIGRvdHM6IHRydWUsDQogICAgICAgICAgLy8gdGhpcyBpcyB0byBtYWtlIHRoZSBzbGljayByZXNwb25zaXZlIA0KICAgICAgICAgIHJlc3BvbnNpdmU6IFt7DQogICAgICAgICAgICBicmVha3BvaW50OiA3NjgsDQogICAgICAgICAgICBzZXR0aW5nczogew0KICAgICAgICAgICAgICBzbGlkZXNUb1Nob3c6IDENCiAgICAgICAgICAgIH0NCiAgICAgICAgICB9XQ0KDQogICAgICAgIH0pOw0KDQoNCiAgIA0KICAgICAgICAvLyBlbmQgc2Vjb25kIHNsaWNrIGZvciB0aGUgdGVzdGltb255IHRleHQNCg0KICAgICAgICAvLyBmb3IgdGhlIGJvb3RzdHJhcCB0b29sdGlwLmpzDQogICAgICAgICQoJ1tkYXRhLXRvZ2dsZT0idG9vbHRpcCJdJykudG9vbHRpcCgpOw0KDQogICAgICAgIA0KDQogICAgICAgICAvLyBzY3JvbGwgdXAgZm9yIGxpdmUgYml0Y29pbiBwcmljZXMNCiAgICAgICAgICAgJCgnLmxpdmUnKS5jeWNsZSh7DQogICAgICAgICAgICAgIGZ4OiAnc2Nyb2xsVXAnLA0KICAgICAgICAgICAgICByYW5kb206ICAxLA0KICAgICAgICAgICAgICBkZWxheTogIDkwMDAsDQogICAgICAgICAgICAgIGNsZWFydHlwZU5vQmc6IHRydWUsDQogICAgICAgICAgICAgIGNlbnRlcjogdHJ1ZSwNCiAgICAgICAgICAgICAgaGVpZ2h0OiAiZml0Ig0KDQogICAgICAgICAgICB9KTsNCiAgICAgICAgICAgLy8gZW5kIG9mIGxpdmUgcHJpY2UgYml0Y29pbiBjb3VudGVyDQogICAgICAgIA0KICAgIH0pOw0K"}},"time_used":347,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":347,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/images/wtp.png","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.080Z","timestamp":1785126256080,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/wtp.png HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/png\r\ncontent-length: 22374\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-5766\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":22374,"size_decoded":22624,"mime_type":"image/png","magic":"PNG image data, 100 x 100, 8-bit/color RGBA, non-interlaced","md5":"3cc526f8e0c72723e05eee8c5c19a7d7","sha1":"6fccf784a8fcf67dfeb6a3693d157968945693a4","sha256":"7b9b91ce3790aa1f789d7a529a1a678f288d90956913df197e58abe8ec05fde1","sha512":"732def09bff617dd1186a5531c07558b2ee45916469b65c186121472aeccc7643521bacd73b297f0a0795d47893cd8f3631aa3125ab3699812f2f82857eec9e9","ssdeep":"192:vS0tKg9E05TWk6AH+50oJodtPxuUXLfnpFLm169K0teanceB:1XE05J6AH+50oJoDPxXdFLj9HEf8","tlshash":"e5a27c29fcf070a9698db6341cc922459e3a4347ca826c84fecd48ea3f00f5a9e5b491","first_seen":"2024-12-27T07:10:16.995523Z","last_seen":"2026-07-27T04:25:12.643961Z","times_seen":8,"resource_available":false,"data":"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/GMzLdsAADo0aVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjYtYzEzOCA3OS4xNTk4MjQsIDIwMTYvMDkvMTQtMDE6MDk6MDEgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iCiAgICAgICAgICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iPgogICAgICAgICA8eG1wOkNyZWF0b3JUb29sPkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE3IChXaW5kb3dzKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAyMC0wNS0wOVQyMjo0NjowOSswMTowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TWV0YWRhdGFEYXRlPjIwMjAtMDUtMDlUMjI6NDY6MDkrMDE6MDA8L3htcDpNZXRhZGF0YURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDIwLTA1LTA5VDIyOjQ2OjA5KzAxOjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDo1MDMyNzdmYi1lOGQ5LTQ3NDUtOWRkNi00MWM0NjE0OTZkMzc8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDo3MDlhMTIyNi05MjNlLTExZWEtYWZlYi04ZjU3MTgwOWVlZWE8L3htcE1NOkRvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+eG1wLmRpZDo0ZjI1MjhjNy1iYjQ1LTE1NGYtOTYzYS0yNTUwNDkxZjVhMTY8L3htcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOkhpc3Rvcnk+CiAgICAgICAgICAgIDxyZGY6U2VxPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jcmVhdGVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6NGYyNTI4YzctYmI0NS0xNTRmLTk2M2EtMjU1MDQ5MWY1YTE2PC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDIwLTA1LTA5VDIyOjQ2OjA5KzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjUwMzI3N2ZiLWU4ZDktNDc0NS05ZGQ2LTQxYzQ2MTQ5NmQzNzwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAyMC0wNS0wOVQyMjo0NjowOSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgPC9yZGY6U2VxPgogICAgICAgICA8L3htcE1NOkhpc3Rvcnk+CiAgICAgICAgIDxkYzpmb3JtYXQ+aW1hZ2UvcG5nPC9kYzpmb3JtYXQ+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjMwMDAwMDAvMTAwMDA8L3RpZmY6WFJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOllSZXNvbHV0aW9uPjMwMDAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+MTwvZXhpZjpDb2xvclNwYWNlPgogICAgICAgICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+MTAwPC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjEwMDwvZXhpZjpQaXhlbFlEaW1lbnNpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIAo8P3hwYWNrZXQgZW5kPSJ3Ij8+oMcCegAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAASUUlEQVR42uydd3hUxfrHP5tKQkJIhRACSIshdAhVOpfQBAWpoiCiovwEC/4sj4JIUZSLCl7xXhREBekg0k3AUEIoUhJSaSEJSUDY9EDq3j/Owbtkz9ZzNrsI3+c5z5PMzHmnfPfMvPPOOzMqjUbDQ9gPnAACV3nZcxm9gBCtpyUQDPgCfmIdPIFSoBjIAwrFv7OAlGpPvr1WNHtqvkCInaE+MBToDXQXCTAFruLjYyRdKnAMOAzsAnLs7guxAzQHxgKjgQ6Ayop5tRSfyYAGOANsATYBFx5kQmoB44HngcdsVAYV0FF8FgJHgW+B9cAdWxTIwQZ5egJvAWnAahuSIYWeYpnSxDJ6/p0J8QbmiJX9FKhnx4pEPbGMacBcE8al+4oQFTBNHEzn1WTlFIAP8KGonU2rifaydgbtxX55paii3q/wE+twRFQ67jtCXIEl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"}},"time_used":417,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":326,"receive":91,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","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/69352.33011f244b92ea0b642c.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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.254Z","timestamp":1785126257254,"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-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/69352.33011f244b92ea0b642c.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/ticker-tape/?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 04:24:17 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-1251\"\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: 5abf3310cee013360507794ff66f7a45\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":4689,"size_decoded":2599,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3069)","md5":"5892ca5b3227e78df9d2ab92c3248724","sha1":"60544e547f80c21daf35460e9a75d3e817a58acd","sha256":"69236d01bc831a7a43ff776d09a39734ce30f2be4ecd83b55272b4c1d798c182","sha512":"1a6f2ba628e22166c5e1285ea8771085d4fb4bc18728dd29dcc612bfff921b3cde7047233fac48e47050cb6922013824b1166676d4d77219f87ed820d7333524","ssdeep":"48:fGoeBtt/RMHZr15WY7bq5+EGbplkGbDlZ6JGbHwa+EPyZT1k0SL6tGbdnRyeqg5v:RZ15FbqYtZ6UyEeT1hUAeJ4hZ72cYtOO","tlshash":"6ea165cd33c5f46523e2aad7a4bf510be13e198d601c6814b399e8e178579ce8132f78","first_seen":"2026-07-23T13:38:20.554349Z","last_seen":"2026-07-27T07:05:45.410878Z","times_seen":488,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s2OTM1Ml0sezkxNDQ4NyhlLHQpe3ZhciBuOyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0Ijt2YXIgcj17fS5oYXNPd25Qcm9wZXJ0eTtmdW5jdGlvbiBpKCl7Zm9yKHZhciBlPVtdLHQ9MDt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKXt2YXIgbj1hcmd1bWVudHNbdF07aWYobil7dmFyIHM9dHlwZW9mIG47aWYoInN0cmluZyI9PT1zfHwibnVtYmVyIj09PXMpZS5wdXNoKG4pO2Vsc2UgaWYoQXJyYXkuaXNBcnJheShuKSYmbi5sZW5ndGgpe3ZhciBvPWkuYXBwbHkobnVsbCxuKTtvJiZlLnB1c2gobyl9ZWxzZSBpZigib2JqZWN0Ij09PXMpZm9yKHZhciB1IGluIG4pci5jYWxsKG4sdSkmJm5bdV0mJmUucHVzaCh1KX19cmV0dXJuIGUuam9pbigiICIpfWUuZXhwb3J0cz8oaS5kZWZhdWx0PWksZS5leHBvcnRzPWkpOnZvaWQgMD09PShuPWZ1bmN0aW9uKCl7cmV0dXJuIGl9LmFwcGx5KHQsW10pKXx8KGUuZXhwb3J0cz1uKX0oKX0sODI5MTgwKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI9big2MDE4NDEpO2NvbnN0IGk9L3soXHcrKX0vZyxzPS97KFxkKyl9L2c7U3RyaW5nLnByb3RvdHlwZS5mb3JtYXQ9ZnVuY3Rpb24oLi4uZSl7Y29uc3QgdD0oMCxyLmlzT2JqZWN0KShlWzBdKSxuPXQ/aTpzLG89dD8odCxuKT0+e2NvbnN0IHI9ZVswXTtyZXR1cm4gdm9pZCAwIT09cltuXT9yW25dOnR9Oih0LG4pPT57Y29uc3Qgcj1wYXJzZUludChuLDEwKSxpPWVbcl07cmV0dXJuIHZvaWQgMCE9PWk/aTp0fTtyZXR1cm4gdGhpcy5yZXBsYWNlKG4sbyl9fSwzNjMyNjkoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7bW9iaWxldG91Y2g6KCk9Pmksc2V0Q2xhc3NlczooKT0+c30pO3ZhciByPW4oNzM4NDU4KTtjb25zdCBpPXIubW9iaWxldG91Y2g7ci50b3VjaDtmdW5jdGlvbiBzKCl7ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC5hZGQoci50b3VjaD8iZmVhdHVyZS10b3VjaCI6ImZlYXR1cmUtbm8tdG91Y2giLHIubW9iaWxldG91Y2g/ImZlYXR1cmUtbW9iaWxldG91Y2giOiJmZWF0dXJlLW5vLW1vYmlsZXRvdWNoIil9fSwxODUyNzEoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7dDooKT0+ci50fSk7big4MjkxODApO3ZhciByPW4oNzgzMjU0KX0sNTI3MzIzKGUsdCxuKXt2YXIgcjshZnVuY3Rpb24odCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGkoKXt9dmFyIHM9aS5wcm90b3R5cGUsbz10LkV2ZW50RW1pdHRlcjtmdW5jdGlvbiB1KGUsdCl7Zm9yKHZhciBuPWUubGVuZ3RoO24tLTspaWYoZVtuXS5saXN0ZW5lcj09PXQpcmV0dXJuIG47cmV0dXJuLTF9ZnVuY3Rpb24gYyhlKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gdGhpc1tlXS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fWZ1bmN0aW9uIGEoZSl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIGV8fGUgaW5zdGFuY2VvZiBSZWdFeHB8fCEoIWV8fCJvYmplY3QiIT10eXBlb2YgZSkmJmEoZS5saXN0ZW5lcil9cy5nZXRMaXN0ZW5lcnM9ZnVuY3Rpb24oZSl7dmFyIHQsbixyPXRoaXMuX2dldEV2ZW50cygpO2lmKGUgaW5zdGFuY2VvZiBSZWdFeHApZm9yKG4gaW4gdD17fSxyKXIuaGFzT3duUHJvcGVydHkobikmJmUudGVzdChuKSYmKHRbbl09cltuXSk7ZWxzZSB0PXJbZV18fChyW2VdPVtdKTtyZXR1cm4gdH0scy5mbGF0dGVuTGlzdGVuZXJzPWZ1bmN0aW9uKGUpe3ZhciB0LG49W107Zm9yKHQ9MDt0PGUubGVuZ3RoO3QrPTEpbi5wdXNoKGVbdF0ubGlzdGVuZXIpO3JldHVybiBufSxzLmdldExpc3RlbmVyc0FzT2JqZWN0PWZ1bmN0aW9uKGUpe3ZhciB0LG49dGhpcy5nZXRMaXN0ZW5lcnMoZSk7cmV0dXJuIG4gaW5zdGFuY2VvZiBBcnJheSYmKCh0PXt9KVtlXT1uKSx0fHxufSxzLmFkZExpc3RlbmVyPWZ1bmN0aW9uKGUsdCl7aWYoIWEodCkpdGhyb3cgbmV3IFR5cGVFcnJvcigibGlzdGVuZXIgbXVzdCBiZSBhIGZ1bmN0aW9uIik7dmFyIG4scj10aGlzLmdldExpc3RlbmVyc0FzT2JqZWN0KGUpLGk9Im9iamVjdCI9PXR5cGVvZiB0O2ZvcihuIGluIHIpci5oYXNPd25Qcm9wZXJ0eShuKSYmLTE9PT11KHJbbl0sdCkmJnJbbl0ucHVzaChpP3Q6e2xpc3RlbmVyOnQsb25jZTohMX0pO3JldHVybiB0aGlzfSxzLm9uPWMoImFkZExpc3RlbmVyIikscy5hZGRPbmNlTGlzdGVuZXI9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5hZGRMaXN0ZW5lcihlLHtsaXN0ZW5lcjp0LG9uY2U6ITB9KX0scy5vbmNlPWMoImFkZE9uY2VMaXN0ZW5lciIpLHMuZGVmaW5lRXZlbnQ9ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuZ2V0TGlzdGVuZXJzKGUpLHRoaXN9LHMuZGVmaW5lRXZlbnRzPWZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0wO3Q8ZS5sZW5ndGg7dCs9MSl0aGlzLmRlZmluZUV2ZW50KGVbdF0pO3JldHVybiB0aGlzfSxzLnJlbW92ZUxpc3RlbmVyPWZ1bmN0aW9uKGUsdCl7dmFyIG4scixpPXRoaXMuZ2V0TGlzdGVuZXJzQXNPYmplY3QoZSk7Zm9yKHIgaW4gaSlpLmhhc093blByb3BlcnR5KHIpJiYtMSE9PShuPXUoaVtyXSx0KSkmJmlbcl0uc3BsaWNlKG4sMSk7cmV0dXJuIHRoaXN9LHMub2ZmPWMoInJlbW92ZUxpc3RlbmVyIikscy5hZGRMaXN0ZW5lcnM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5tYW5pcHVsYXRlTGlzdGVuZXJzKCExLGUsdCl9LHMucmVtb3ZlTGlzdGVuZXJzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMubWFuaXB1bGF0ZUxpc3RlbmVycyghMCxlLHQpfSxzLm1hbmlwdWxhdGVMaXN0ZW5lcnM9ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGkscz1lP3RoaXMucmVtb3ZlTGlzdGVuZXI6dGhpcy5hZGRMaXN0ZW5lcixvPWU/dGhpcy5yZW1vdmVMaXN0ZW5lcnM6dGhpcy5hZGRMaXN0ZW5lcnM7aWYoIm9iamVjdCIhPXR5cGVvZiB0fHx0IGluc3RhbmNlb2YgUmVnRXhwKWZvcihyPW4ubGVuZ3RoO3ItLTspcy5jYWxsKHRoaXMsdCxuW3JdKTtlbHNlIGZvcihyIGluIHQpdC5oYXNPd25Qcm9wZXJ0eShyKSYmKGk9dFtyXSkmJigiZnVuY3Rpb24iPT10eXBlb2YgaT9zLmNhbGwodGhpcyxyLGkpOm8uY2FsbCh0aGlzLHIsaSkpCjtyZXR1cm4gdGhpc30scy5yZW1vdmVFdmVudD1mdW5jdGlvbihlKXt2YXIgdCxuPXR5cGVvZiBlLHI9dGhpcy5fZ2V0RXZlbnRzKCk7aWYoInN0cmluZyI9PT1uKWRlbGV0ZSByW2VdO2Vsc2UgaWYoZSBpbnN0YW5jZW9mIFJlZ0V4cClmb3IodCBpbiByKXIuaGFzT3duUHJvcGVydHkodCkmJmUudGVzdCh0KSYmZGVsZXRlIHJbdF07ZWxzZSBkZWxldGUgdGhpcy5fZXZlbnRzO3JldHVybiB0aGlzfSxzLnJlbW92ZUFsbExpc3RlbmVycz1jKCJyZW1vdmVFdmVudCIpLHMuZW1pdEV2ZW50PWZ1bmN0aW9uKGUsdCl7dmFyIG4scixpLHMsbz10aGlzLmdldExpc3RlbmVyc0FzT2JqZWN0KGUpO2ZvcihzIGluIG8paWYoby5oYXNPd25Qcm9wZXJ0eShzKSlmb3Iobj1vW3NdLnNsaWNlKDApLGk9MDtpPG4ubGVuZ3RoO2krKykhMD09PShyPW5baV0pLm9uY2UmJnRoaXMucmVtb3ZlTGlzdGVuZXIoZSxyLmxpc3RlbmVyKSxyLmxpc3RlbmVyLmFwcGx5KHRoaXMsdHx8W10pPT09dGhpcy5fZ2V0T25jZVJldHVyblZhbHVlKCkmJnRoaXMucmVtb3ZlTGlzdGVuZXIoZSxyLmxpc3RlbmVyKTtyZXR1cm4gdGhpc30scy50cmlnZ2VyPWMoImVtaXRFdmVudCIpLHMuZW1pdD1mdW5jdGlvbihlKXt2YXIgdD1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMSk7cmV0dXJuIHRoaXMuZW1pdEV2ZW50KGUsdCl9LHMuc2V0T25jZVJldHVyblZhbHVlPWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLl9vbmNlUmV0dXJuVmFsdWU9ZSx0aGlzfSxzLl9nZXRPbmNlUmV0dXJuVmFsdWU9ZnVuY3Rpb24oKXtyZXR1cm4hdGhpcy5oYXNPd25Qcm9wZXJ0eSgiX29uY2VSZXR1cm5WYWx1ZSIpfHx0aGlzLl9vbmNlUmV0dXJuVmFsdWV9LHMuX2dldEV2ZW50cz1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9ldmVudHN8fCh0aGlzLl9ldmVudHM9e30pfSxpLm5vQ29uZmxpY3Q9ZnVuY3Rpb24oKXtyZXR1cm4gdC5FdmVudEVtaXR0ZXI9byxpfSx2b2lkIDA9PT0ocj1mdW5jdGlvbigpe3JldHVybiBpfS5jYWxsKHQsbix0LGUpKXx8KGUuZXhwb3J0cz1yKX0odGhpc3x8e30pfSw4MTczNTAoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7ZGVmYXVsdDooKT0+c30pO3ZhciByPW4oMTc4NDk3KSxpPW4oMzYwNjIwKTtjb25zdCBzPWZ1bmN0aW9uKGUpe3JldHVybiEwPT09ZXx8ITE9PT1lfHwoMCxpLmRlZmF1bHQpKGUpJiYiW29iamVjdCBCb29sZWFuXSI9PSgwLHIuZGVmYXVsdCkoZSl9fSwyMDY2NzMoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7ZGVmYXVsdDooKT0+c30pO3ZhciByPW4oMTc4NDk3KSxpPW4oMzYwNjIwKTtjb25zdCBzPWZ1bmN0aW9uKGUpe3JldHVybiJudW1iZXIiPT10eXBlb2YgZXx8KDAsaS5kZWZhdWx0KShlKSYmIltvYmplY3QgTnVtYmVyXSI9PSgwLHIuZGVmYXVsdCkoZSl9fSwzMDQyMjEoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7ZGVmYXVsdDooKT0+b30pO3ZhciByPW4oMTc4NDk3KSxpPW4oMjk1NjM1KSxzPW4oMzYwNjIwKTtjb25zdCBvPWZ1bmN0aW9uKGUpe3JldHVybiJzdHJpbmciPT10eXBlb2YgZXx8ISgwLGkuZGVmYXVsdCkoZSkmJigwLHMuZGVmYXVsdCkoZSkmJiJbb2JqZWN0IFN0cmluZ10iPT0oMCxyLmRlZmF1bHQpKGUpfX19XSk7"}},"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.tradingview-widget.com/static/bundles/embed/7278.738759ef0ac33469253b.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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.269Z","timestamp":1785126257269,"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-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/7278.738759ef0ac33469253b.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/ticker-tape/?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 04:24:17 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-7592\"\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: 2f7ae9d992923743bdd4989af9fc1d51\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":30098,"size_decoded":10551,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (3072)","md5":"0b8a552598142ab8089cd94992779448","sha1":"87a17e3637b405af0a42d322fc032cfd1da668b2","sha256":"22e612835027b9e83688180a91ed31c88f1ccb25ae05dc6866015bd73cb709a8","sha512":"3117f337cfd3fac0235478fc1c3bed80263bf95c521e7d287c8d86eada785db4a298db00b8523d0c3f22c5bced964bb3c73d3b355fb4211325d32ddc24fdcb10","ssdeep":"768:FbBK1Dsf6MP7AAKZAlrHp4Czh1HBvJ+vmdv2cKWPUqz+1xKGDZwYzYAlFKVGjqtr:UsfDP7ADAzlRBvJ++dv2cKWPUqz+1xK9","tlshash":"52d2940ab26054a711db01db4077405bea3fa6e9a04185befa688cdd0b6ee4c3167b7d","first_seen":"2026-07-23T13:38:20.531806Z","last_seen":"2026-07-27T07:05:45.400233Z","times_seen":846,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s3Mjc4XSx7ODYwMDI1KHQpe3QuZXhwb3J0cz17cGFpcjoicGFpci14d0dzU1hSMCIseHhjZXB0aW9uYWxseXNtYWxsZG9ub3R1c2VicnYxMDIzOiJ4eGNlcHRpb25hbGx5c21hbGxkb25vdHVzZWJydjEwMjMteHdHc1NYUjAiLHh4eHhzbWFsbDoieHh4eHNtYWxsLXh3R3NTWFIwIix4eHhzbWFsbDoieHh4c21hbGwteHdHc1NYUjAiLHh4c21hbGw6Inh4c21hbGwteHdHc1NYUjAiLHhzbWFsbDoieHNtYWxsLXh3R3NTWFIwIixzbWFsbDoic21hbGwteHdHc1NYUjAiLG1lZGl1bToibWVkaXVtLXh3R3NTWFIwIixsYXJnZToibGFyZ2UteHdHc1NYUjAiLHhsYXJnZToieGxhcmdlLXh3R3NTWFIwIix4eGxhcmdlOiJ4eGxhcmdlLXh3R3NTWFIwIix4eHhsYXJnZToieHh4bGFyZ2UteHdHc1NYUjAiLGxvZ286ImxvZ28teHdHc1NYUjAiLHNrZWxldG9uOiJza2VsZXRvbi14d0dzU1hSMCIsZW1wdHk6ImVtcHR5LXh3R3NTWFIwIn19LDE0MDAxNyh0KXt0LmV4cG9ydHM9e2xvZ286ImxvZ28tVkNOS3ViV3EiLGhpZGRlbjoiaGlkZGVuLVZDTkt1YldxIix4eGNlcHRpb25hbGx5c21hbGxkb25vdHVzZWJydjEwMjM6Inh4Y2VwdGlvbmFsbHlzbWFsbGRvbm90dXNlYnJ2MTAyMy1WQ05LdWJXcSIseHh4c21hbGw6Inh4eHNtYWxsLVZDTkt1YldxIix4eHNtYWxsOiJ4eHNtYWxsLVZDTkt1YldxIix4c21hbGw6InhzbWFsbC1WQ05LdWJXcSIsc21hbGw6InNtYWxsLVZDTkt1YldxIixtZWRpdW06Im1lZGl1bS1WQ05LdWJXcSIsbGFyZ2U6ImxhcmdlLVZDTkt1YldxIix4bGFyZ2U6InhsYXJnZS1WQ05LdWJXcSIseHhsYXJnZToieHhsYXJnZS1WQ05LdWJXcSIseHh4bGFyZ2U6Inh4eGxhcmdlLVZDTkt1YldxIixza2VsZXRvbjoic2tlbGV0b24tVkNOS3ViV3EiLGxldHRlcjoibGV0dGVyLVZDTkt1YldxIn19LDk3NTI4NSh0KXt0LmV4cG9ydHM9e3dyYXBwZXI6IndyYXBwZXItaGN0MnlKdksiLGFuaW1hdGVkOiJhbmltYXRlZC1oY3QyeUp2SyIscHVsc2F0aW9uOiJwdWxzYXRpb24taGN0MnlKdksifX0sMjM1NzI0KHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse01vZGlmaWVyczooKT0+cixoYXNoRnJvbUV2ZW50OigpPT5sLGlzTWFjS2V5Ym9hcmQ6KCk9Pm4sbW9kaWZpZXJzRnJvbUV2ZW50OigpPT5hfSk7dmFyIGksbz1zKDczODQ1OCk7IWZ1bmN0aW9uKHQpe3RbdC5LZXlDb2RlPTI1NV09IktleUNvZGUiLHRbdC5Db250cm9sPTI1Nl09IkNvbnRyb2wiLHRbdC5BbHQ9NTEyXT0iQWx0Iix0W3QuU2hpZnQ9MTAyNF09IlNoaWZ0Iix0W3QuTWV0YT0yMDQ4XT0iTWV0YSJ9KGl8fChpPXt9KSk7Y29uc3Qgbj1vLmlzTWFjfHxvLmlzSU9TO3ZhciByO2Z1bmN0aW9uIGEodCl7bGV0IGU9MDtyZXR1cm4gdC5zaGlmdEtleSYmKGUrPTEwMjQpLHQuYWx0S2V5JiYoZSs9NTEyKSx0LmN0cmxLZXkmJihlKz0yNTYpLHQubWV0YUtleSYmKGUrPTIwNDgpLGV9ZnVuY3Rpb24gbCh0KXtyZXR1cm4gYSh0KXx0LmtleUNvZGV9IWZ1bmN0aW9uKHQpe3RbdC5Ob25lPTBdPSJOb25lIix0W3QuQWx0PTUxMl09IkFsdCIsdFt0LlNoaWZ0PTEwMjRdPSJTaGlmdCIsdFt0Lk1vZD1uPzIwNDg6MjU2XT0iTW9kIix0W3QuQ29udHJvbD0yNTZdPSJDb250cm9sIix0W3QuTWV0YT0yMDQ4XT0iTWV0YSJ9KHJ8fChyPXt9KSk7Y29uc3QgaD17OToi4oelIiwxMzoi4oa1IiwyNzoiRXNjIiw4Om4/IuKMqyI6IkJhY2tzcGFjZSIsMzI6IlNwYWNlIiwzNToiRW5kIiwzNjoiSG9tZSIsMzc6IuKGkCIsMzg6IuKGkSIsMzk6IuKGkiIsNDA6IuKGkyIsNDU6IklucyIsNDY6IkRlbCIsMTg4OiIsIiwxOTA6IkRvdCIsMTkxOiIvIn0sYz17OToiVGFiIiwxMzoiRW50ZXIiLDI3OiJFc2MiLDg6IkJhY2tzcGFjZSIsMzI6IlNwYWNlIiwzNToiRW5kIiwzNjoiSG9tZSIsMzc6IkFycm93TGVmdCIsMzg6IkFycm93VXAiLDM5OiJBcnJvd1JpZ2h0Iiw0MDoiQXJyb3dEb3duIiw0NToiSW5zIiw0NjoiRGVsIiwxODg6IiwiLDE5MDoiLiIsMTkxOiIvIn07Zm9yKGxldCB0PTE7dDw9MTY7dCsrKWhbdCsxMTFdPWBGJHt0fWAsY1t0KzExMV09YEYke3R9YH0sODM3ODIyKHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse2dldENpcmNsZUxvZ29BbnlIdG1sOigpPT5ufSk7dmFyIGk9cyg4ODQ3OTgpLG89cygxNTIxODIpO2Z1bmN0aW9uIG4odCl7Y29uc3R7bG9nb1VybHM6ZSwuLi5zfT10O3JldHVybiAxPT09ZS5sZW5ndGg/KDAsaS5nZXRDaXJjbGVMb2dvSHRtbCkoe2xvZ29Vcmw6ZVswXSwuLi5zfSk6Mj09PWUubGVuZ3RoPygwLG8uZ2V0Q2lyY2xlTG9nb1BhaXJIdG1sKSh7cHJpbWFyeUxvZ29Vcmw6ZVswXSxzZWNvbmRhcnlMb2dvVXJsOmVbMV0sLi4uc30pOigwLGkuZ2V0Q2lyY2xlTG9nb0h0bWwpKHtsb2dvVXJsOnZvaWQgMCwuLi5zfSl9fSwxNTIxODIodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7Z2V0Q2lyY2xlTG9nb1BhaXJIdG1sOigpPT5vfSk7dmFyIGk9cyg2Mjc4NDgpO2Z1bmN0aW9uIG8odCl7Y29uc3R7cHJpbWFyeUxvZ29Vcmw6ZSxzZWNvbmRhcnlMb2dvVXJsOnMsc2l6ZTpvLGNsYXNzTmFtZTpyfT10O3JldHVybmA8c3BhbiBjbGFzcz0iJHsoMCxpLmdldEJsb2NrU3R5bGVDbGFzc2VzKShvLHIpfSI+XG5cdFx0XHQke24oe2xvZ29Vcmw6cyxzaXplOm99KX1cblx0XHRcdCR7bih7bG9nb1VybDplLHNpemU6b30pfVxuXHRcdDwvc3Bhbj5gfWZ1bmN0aW9uIG4odCl7Y29uc3R7bG9nb1VybDplLHNpemU6c309dCxvPSgwLGkuZ2V0TG9nb1N0eWxlQ2xhc3NlcykocywyLEJvb2xlYW4oZSkpO3JldHVybiB2b2lkIDA9PT1lP2A8c3BhbiBjbGFzcz0iJHtvfSI+PC9zcGFuPmA6YDxpbWcgY2xhc3M9IiR7b30iIGNyb3Nzb3JpZ2luIHNyYz0iJHtlfSIgYWx0PSIiIC8+YH19LDYyNzg0OCh0LGUscyl7InVzZSBzdHJpY3QiO3MuZChlLHtnZXRCbG9ja1N0eWxlQ2xhc3NlczooKT0+bCxnZXRMb2dvU3R5bGVDbGFzc2VzOigpPT5ofSk7dmFyIGk9cyg5MTQ0ODcpLG89cy5uKGkpLG49cygxMzY0KSxyPXMoODYwMDI1KSxhPXMubihyKTtmdW5jdGlvbiBsKHQsZSl7CnJldHVybiBvKCkoYSgpLnBhaXIsYSgpW3RdLGUpfWZ1bmN0aW9uIGgodCxlPTIscz0hMCl7cmV0dXJuIG8oKShhKCkubG9nbyxhKClbdF0sYSgpLnNrZWxldG9uLG4uc2tlbGV0b25UaGVtZS53cmFwcGVyLCFzJiZhKCkuZW1wdHksMT09PWUmJm8oKShuLnNrZWxldG9uVGhlbWUuYW5pbWF0ZWQpKX19LDg4NDc5OCh0LGUscyl7InVzZSBzdHJpY3QiO3MuZChlLHtnZXRDaXJjbGVMb2dvSHRtbDooKT0+b30pO3ZhciBpPXMoNzk0MTg3KTtzKDE0MDAxNyk7ZnVuY3Rpb24gbyh0KXtjb25zdCBlPSgwLGkuZ2V0U3R5bGVDbGFzc2VzKSh0LnNpemUsMix0LmNsYXNzTmFtZSk7cmV0dXJuKDAsaS5pc0NpcmNsZUxvZ29XaXRoVXJsUHJvcHMpKHQpP2A8aW1nIGNsYXNzPSIke2V9IiBjcm9zc29yaWdpbiBzcmM9IiR7dC5sb2dvVXJsfSIgYWx0PSIiPmA6YDxzcGFuIGNsYXNzPSIke2V9Ij4ke3QucGxhY2Vob2xkZXJMZXR0ZXJ8fCIifTwvc3Bhbj5gfX0sNzk0MTg3KHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse2dldFN0eWxlQ2xhc3NlczooKT0+bCxpc0NpcmNsZUxvZ29XaXRoVXJsUHJvcHM6KCk9Pmh9KTt2YXIgaT1zKDkxNDQ4Nyksbz1zLm4oaSksbj1zKDEzNjQpLHI9cygxNDAwMTcpLGE9cy5uKHIpO2Z1bmN0aW9uIGwodCxlPTIscyl7cmV0dXJuIG8oKShhKCkubG9nbyxhKClbdF0scywwPT09ZXx8MT09PWU/bygpKG4uc2tlbGV0b25UaGVtZS53cmFwcGVyLGEoKS5za2VsZXRvbik6YSgpLmxldHRlciwxPT09ZSYmbi5za2VsZXRvblRoZW1lLmFuaW1hdGVkKX1mdW5jdGlvbiBoKHQpe3JldHVybiJsb2dvVXJsImluIHQmJm51bGwhPT10LmxvZ29VcmwmJnZvaWQgMCE9PXQubG9nb1VybCYmMCE9PXQubG9nb1VybC5sZW5ndGh9fSwxMzY0KHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse3NrZWxldG9uVGhlbWU6KCk9Pm99KTt2YXIgaT1zKDk3NTI4NSk7Y29uc3Qgbz1zLm4oaSkoKX0sMjE2MTEodCxlLHMpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKHQpe2lmKG51bGwhPXQmJiJib29sZWFuIiE9dHlwZW9mIHQmJiFpc05hTihOdW1iZXIodCkpKXJldHVybiBOdW1iZXIodCl9cy5kKGUse3RvTnVtYmVyT3JVbmRlZmluZWQ6KCk9Pml9KX0sNTE4NzUodCxlLHMpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKHQpe3QucHJldmVudERlZmF1bHQoKX1zLmQoZSx7cHJldmVudERlZmF1bHQ6KCk9PmkscHJldmVudERlZmF1bHRGb3JDb250ZXh0TWVudTooKT0+bn0pO2NvbnN0IG89WyJpbnB1dDpub3QoW3R5cGVdKSIsJ2lucHV0W3R5cGU9InRleHQiXScsJ2lucHV0W3R5cGU9ImVtYWlsIl0nLCdpbnB1dFt0eXBlPSJwYXNzd29yZCJdJywnaW5wdXRbdHlwZT0ic2VhcmNoIl0nLCdpbnB1dFt0eXBlPSJudW1iZXIiXScsJ2lucHV0W3R5cGU9InVybCJdJywidGV4dGFyZWEiLCJhW2hyZWZdIiwnKltjb250ZW50ZWRpdGFibGU9InRydWUiXScsIltkYXRhLWFsbG93LWNvbnRleHQtbWVudV0iXTtmdW5jdGlvbiBuKHQpe2NvbnN0IGU9dC50YXJnZXQ7ZSYmIWUuY2xvc2VzdChvLmpvaW4oIiwgIikpJiZ0LnByZXZlbnREZWZhdWx0KCl9fSwxMjUyMTgodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7UGVyY2VudGFnZUZvcm1hdHRlcjooKT0+bn0pO3ZhciBpPXMoMTE1MjkzKSxvPXMoNzU1NjI3KTtjbGFzcyBuIGV4dGVuZHMgby5QcmljZUZvcm1hdHRlcntjb25zdHJ1Y3Rvcih0PXt9KXt2b2lkIDAhPT10LmRlY2ltYWxQbGFjZXMmJih0LnByaWNlU2NhbGU9TWF0aC5wb3coMTAsdC5kZWNpbWFsUGxhY2VzKSksc3VwZXIodCksdGhpcy50eXBlPSJwZXJjZW50YWdlIn1zdGF0ZSgpe3JldHVybnsuLi5zdXBlci5zdGF0ZSgpLHBlcmNlbnQ6ITB9fXBhcnNlKHQsZSl7cmV0dXJuIHQ9dC5yZXBsYWNlKCIlIiwiIiksc3VwZXIucGFyc2UodCxlKX1mb3JtYXQodCxlPXt9KXtjb25zdHt1c2VSdGxGb3JtYXQ6cz0hMH09ZSxvPXN1cGVyLmZvcm1hdCh0LHsuLi5lLHVzZVJ0bEZvcm1hdDohMX0pKyIlIjtyZXR1cm4gcz8oMCxpLmZvcmNlTFRSU3RyKShvKTpvfXN0YXRpYyBzZXJpYWxpemUodCl7cmV0dXJuIHQuc3RhdGUoKX1zdGF0aWMgZGVzZXJpYWxpemUodCl7cmV0dXJuIG5ldyBuKHQpfX19LDk4NDM3Nih0LGUscyl7InVzZSBzdHJpY3QiO3MuZChlLHtQTEFDRV9IT0xERVI6KCk9PnIsVm9sdW1lRm9ybWF0dGVyOigpPT5ofSk7dmFyIGk9cyg3ODMyNTQpLG89cyg2MDE4NDEpLG49cygxMDcwNDUpO2NvbnN0IHI9Ii0tLSIsYT1be3ZhbHVlOjMsbGV0dGVyOiJLIn0se3ZhbHVlOjYsbGV0dGVyOiJNIn0se3ZhbHVlOjksbGV0dGVyOiJCIn0se3ZhbHVlOjEyLGxldHRlcjoiVCJ9XTtmdW5jdGlvbiBsKHQsZSl7Y29uc3Qgcz10LWU7cmV0dXJuIGEuZmluZCgodD0+dC52YWx1ZT49cykpPz9hW2EubGVuZ3RoLTFdfWNsYXNzIGh7Y29uc3RydWN0b3IodD17fSl7dGhpcy50eXBlPSJ2b2x1bWUiO2NvbnN0e3ByZWNpc2lvbjplPTAsbWluUHJlY2lzaW9uOnM9MCxkaW1lbnNpb25QcmVjaXNpb246aT0yLGRpbWVuc2lvbk1pblByZWNpc2lvbjpvPTAsc2lnbmlmaWNhbnREaWdpdHM6cj0zLGlnbm9yZUxvY2FsZU51bWJlckZvcm1hdDphLG5vRXhwb25lbnRpYWxGb3JtOmwscmVtb3ZlU3BhY2VCZWZvcmVEaW1lbnNpb246aH09dDt0aGlzLl9wcmVjaXNpb249ZSx0aGlzLl9mb3JtYXR0ZXI9bmV3IG4uTnVtZXJpY0Zvcm1hdHRlcih7aWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0OmEscHJlY2lzaW9uOnRoaXMuX3ByZWNpc2lvbixtaW5QcmVjaXNpb246cyxub0V4cG9uZW50aWFsRm9ybTpsfSksdGhpcy5fZGltZW5zaW9uUHJlY2lzaW9uPWksdGhpcy5fZGltZW5zaW9uRm9ybWF0dGVyPW5ldyBuLk51bWVyaWNGb3JtYXR0ZXIoe2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdDphLHByZWNpc2lvbjp0aGlzLl9kaW1lbnNpb25QcmVjaXNpb24sbWluUHJlY2lzaW9uOm8sbm9FeHBvbmVudGlhbEZvcm06bH0pLHRoaXMuX3NpZ25pZmljYW50RGlnaXRzPXIsdGhpcy5fZnJhY3Rpb25hbFZhbHVlcz12b2lkIDAhPT1lJiZlPjAsdGhpcy5fc3BhY2VCZWZvcmVEaW1lbnNpb249aD8iIjoi4oCvIix0aGlzLl9vcHRpb25zPXR9c3RhdGUoKXsKY29uc3R7aWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0OnQsLi4uZX09dGhpcy5fb3B0aW9ucztyZXR1cm4gZX1mb3JtYXQodCxlKXtpZighKDAsby5pc051bWJlcikodCkpcmV0dXJuIHI7aWYoTWF0aC5hYnModCk+PTFlMTAwKXJldHVybiBpLnQobnVsbCx7Y29udGV4dDoidm9sdW1lLWZvcm1hdHRlciJ9LHMoNTcwNjIpKTtsZXQgbj0iIjtNYXRoLmFicyh0KTwxJiYodD0rdC50b0ZpeGVkKHRoaXMuX3ByZWNpc2lvbikpLHQ8MD9uPSLiiJIiOnQ+MCYmZT8uc2lnblBvc2l0aXZlJiYobj0iKyIpLHQ9TWF0aC5hYnModCk7Y29uc3QgYT0hIShlPy5pZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ/P3RoaXMuX29wdGlvbnMuaWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0KTtsZXQgaCxjLG09TWF0aC5mbG9vcihNYXRoLmxvZzEwKHQpKSsxO2lmKG08PXRoaXMuX3NpZ25pZmljYW50RGlnaXRzJiYodD0rdC50b0ZpeGVkKHRoaXMuX3ByZWNpc2lvbiksbT1NYXRoLmZsb29yKE1hdGgubG9nMTAodCkpKzEpLG08PXRoaXMuX3NpZ25pZmljYW50RGlnaXRzKWg9dGhpcy5fZm9ybWF0TnVtYmVyKHQsYSx0aGlzLl9mb3JtYXR0ZXIpO2Vsc2V7bGV0IGU9bChtLHRoaXMuX3NpZ25pZmljYW50RGlnaXRzKTtjb25zdCBzPU1hdGgucG93KDEwLGUudmFsdWUpO3Q9Kyh0L3MpLnRvRml4ZWQodGhpcy5fZGltZW5zaW9uUHJlY2lzaW9uKSpzLGU9bChNYXRoLmZsb29yKE1hdGgubG9nMTAodCkpKzEsdGhpcy5fc2lnbmlmaWNhbnREaWdpdHMpLGg9dGhpcy5fZm9ybWF0TnVtYmVyKHQvTWF0aC5wb3coMTAsZS52YWx1ZSksYSx0aGlzLl9kaW1lbnNpb25Gb3JtYXR0ZXIpLGM9ZS5sZXR0ZXJ9cmV0dXJuIGM/YCR7bn0ke2h9JHt0aGlzLl9zcGFjZUJlZm9yZURpbWVuc2lvbn0ke2N9YDpgJHtufSR7aH1gfXBhcnNlKHQsZSl7aWYodD09PXIpcmV0dXJue2Vycm9yOiJub3QgYSBudW1iZXIiLHJlczohMSx2YWx1ZTpOYU59O2NvbnN0IHM9e0s6MWUzLE06MWU2LEI6MWU5LFQ6MWUxMn0saT0odD10LnJlcGxhY2UoIuKIkiIsIi0iKSkuc2xpY2UoLTEpO2lmKHMuaGFzT3duUHJvcGVydHkoaSkpe2NvbnN0IG49dGhpcy5fZm9ybWF0dGVyLnBhcnNlKHQuc2xpY2UoMCwtMSkudHJpbSgpLGUpLHI9bi5yZXM/bi52YWx1ZTpOYU47cmV0dXJuKDAsby5pc051bWJlcikocik/e3JlczohMCx2YWx1ZTpyKnNbaV19OntlcnJvcjoibm90IGEgbnVtYmVyIixyZXM6ITEsdmFsdWU6TmFOfX17Y29uc3Qgcz10aGlzLl9mb3JtYXR0ZXIucGFyc2UodC50cmltKCksZSk7bGV0IGk9cy5yZXM/cy52YWx1ZTpOYU47cmV0dXJuLTA9PT1pJiYoaT0wKSwoMCxvLmlzTnVtYmVyKShpKT97cmVzOiEwLHZhbHVlOml9OntlcnJvcjoibm90IGEgbnVtYmVyIixyZXM6ITEsdmFsdWU6TmFOfX19c3RhdGljIHNlcmlhbGl6ZSh0KXtyZXR1cm4gdC5zdGF0ZSgpfXN0YXRpYyBkZXNlcmlhbGl6ZSh0KXtyZXR1cm4gbmV3IGgodCl9X2Zvcm1hdE51bWJlcih0LGUscyl7aWYodGhpcy5fZnJhY3Rpb25hbFZhbHVlcyYmMCE9PXQpe2NvbnN0IGU9MTQtTWF0aC5jZWlsKE1hdGgubG9nMTAodCkpLHM9TWF0aC5wb3coMTAsZSk7dD1NYXRoLnJvdW5kKHQqcykvc31yZXR1cm4gcy5mb3JtYXQodCx7aWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0OmV9KX19fSw2NDE1OTModCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7ZGVjb2RlSFRNTEVudGl0aWVzOigpPT5sLGdldEZpcnN0U2VnbWVudE9yQ29kZVBvaW50U3RyaW5nOigpPT5jLGh0bWxFc2NhcGU6KCk9Pmh9KTtjb25zdCBpPS9bPCInJj5dL2csbz10PT5gJiMke3QuY2hhckNvZGVBdCgwKX07YCxuPXsiJmx0OyI6IjwiLCImZ3Q7IjoiPiIsIiZxdW90OyI6JyInLCImYXBvczsiOiInIiwiJmFtcDsiOiImIiwiJiM2MDsiOiI8IiwiJiM2MjsiOiI+IiwiJiMzNDsiOiciJywiJiMzOTsiOiInIiwiJiMwMzk7IjoiJyIsIiYjMzg7IjoiJiJ9LHI9T2JqZWN0LmFzc2lnbih7fSwuLi5PYmplY3QuZW50cmllcyhuKS5tYXAoKChbdCxlXSk9Pih7W2VdOnR9KSkpKSxhPW5ldyBSZWdFeHAoT2JqZWN0LmtleXMobikuam9pbigifCIpLCJnIik7bmV3IFJlZ0V4cChPYmplY3Qua2V5cyhyKS5qb2luKCJ8IiksImciKTtmdW5jdGlvbiBsKHQpe3JldHVybiB0LnJlcGxhY2UoYSwodD0+blt0XXx8dCkpfWZ1bmN0aW9uIGgodCl7cmV0dXJuIHQucmVwbGFjZShpLG8pfWZ1bmN0aW9uIGModCl7Y29uc3QgZT1JbnRsLlNlZ21lbnRlcjtpZihlKXtjb25zdCBzPW5ldyBlKHZvaWQgMCx7Z3JhbnVsYXJpdHk6ImdyYXBoZW1lIn0pLFt7c2VnbWVudDppfT17c2VnbWVudDpudWxsfV09cy5zZWdtZW50KHQpO3JldHVybiBpPy50b1VwcGVyQ2FzZSgpPz9udWxsfXtjb25zdCBlPXQuY29kZVBvaW50QXQoMCk7cmV0dXJuIGU/U3RyaW5nLmZyb21Db2RlUG9pbnQoZSkudG9VcHBlckNhc2UoKTpudWxsfX19LDM0NTE1MSh0LGUscyl7InVzZSBzdHJpY3QiO3MuZChlLHtob3RLZXlEZXNlcmlhbGl6ZTooKT0+b30pO3ZhciBpPXMoNjQxNTkzKTtmdW5jdGlvbiBvKHQpe3JldHVybiBKU09OLnBhcnNlKCgwLGkuZGVjb2RlSFRNTEVudGl0aWVzKSh0KSl9fSw5ODYyNzUodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7Z2V0TG9nb1VybHNIb29rOigpPT5yfSk7dmFyIGk9cyg2MDE4NDEpLG89cyg4NjIyMTMpO2NvbnN0IG49KDAsby5nZXRMb2dvVXJsUmVzb2x2ZXIpKCk7ZnVuY3Rpb24gcih0LGUpe2xldCBzPSExO3JldHVybihyLGEsbCk9PntpZighcyYmKHIubG9nb3x8bCkpe3M9ITA7Y29uc3QgYT1yLmxvZ28/ZnVuY3Rpb24odCxlPW8uTG9nb1NpemUuTWVkaXVtKXtyZXR1cm4oInBhaXIiPT09dC5zdHlsZT9bdC5sb2dvaWQsdC5sb2dvaWQyXTpbdC5sb2dvaWRdKS5tYXAoKHQ9Pm4uZ2V0U3ltYm9sTG9nb1VybCh0LGUpKSkuZmlsdGVyKGkubm90TnVsbCl9KHIubG9nbyxlKTpbXTt0KGEpfX19fSwyODQ0ODQodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7UXVvdGVUaWNrZXI6KCk9PmJ9KQo7dmFyIGk9cyg5NjQ0ODYpLG89cygyMjEwNjEpLG49cyg2MDE4NDEpLHI9cygxMjUyMTgpLGE9cyg4OTE3NzgpLGw9cyg3NTU2MjcpLGg9cyg5ODQzNzYpLGM9cyg1NjM5MTgpLG09cygzMDY5MCksdT1zKDUyODM5NiksZD1zKDExMzU2NyksXz1zKDE1OTUxMyksZz1zKDk3MzExOSkscD1zKDYwMjg3KSxmPXMoNzg2NzYwKSx4PXMoMTAxNzEyKTtjb25zdCB5PSgwLG8uZ2V0TG9nZ2VyKSgiUXVvdGVUaWNrZXIiKSxOPXthZGREZXNjcmlwdGlvblRpdGxlOiEwLGNoYW5nZURpcmVjdGlvbkRvd25DbGFzczoiZG93biIsY2hhbmdlRGlyZWN0aW9uVXBDbGFzczoidXAiLGNoYW5nZURpcmVjdGlvbk5ldXRyYWxDbGFzczoibmV1dHJhbCIsY2hhbmdlSW5CcmFja2V0czohMSxjaGFuZ2VQZXJjZW50SW5CcmFja2V0czohMSxsYXN0UHJpY2VUaW1lSW5CcmFja2V0czohMCxsYXN0UmVsZWFzZURhdGVUaW1lSW5CcmFja2V0czohMCxydGNUaW1lSW5CcmFja2V0czohMCxjbGllbnROYW1lOiJxdW90ZS10aWNrZXIiLGRvbnREeWVQcmljZTohMSxmYWxsaW5nQmc6bnVsbCxncm93aW5nQmc6bnVsbCxsYXN0RmFsbGluZ0NsYXNzOiJmYWxsaW5nIixsYXN0R3Jvd2luZ0NsYXNzOiJncm93aW5nIixxdW90ZVNlc3Npb246bnVsbCxzaWduTmVnYXRpdmU6ITAsc2lnblBvc2l0aXZlOiExLGN1c3RvbVByaWNlRm9ybWF0dGVyOm51bGwsY3VzdG9tVGltZUZvcm1hdHRlcjpudWxsLHNlc3Npb25TdGF0dXNDbGFzc1N1ZmZpeDoiLS1mb3ItdGlja2VyIixkYXRhTW9kZUNsYXNzU3VmZml4OiItLWZvci10aWNrZXIiLHNob3dJbnZhbGlkU3ltYm9sU3RhdHVzOiExLGluZGljYXRvcnNUb29sdGlwVHlwZToiY3VzdG9tIixsYXN0UHJpY2VMYXN0Q2hhclN1cDohMSxsYXN0UHJpY2VIaWdobGlnaHREaWZmT25seTohMSxpbml0ZWRIb29rOnZvaWQgMCxzZXRTdGF0ZUhvb2s6dm9pZCAwLHBlcm1pc3Npb25EZW5pZWRIb29rOnZvaWQgMCxub1N1Y2hTeW1ib2xIb29rOnZvaWQgMH0sQz0vW0tNQlRdLztmdW5jdGlvbiBiKHQsZSxzPXt9KXt0aGlzLmVuYWJsZWQ9ITAsdGhpcy5fc3ltYm9sPXQsdGhpcy5fc3ltYm9sT3JpZ2luYWw9bnVsbCx0aGlzLl9vcHRpb25zPSgwLGkuZGVlcEV4dGVuZCkoe30sTixzKSwhMSE9PXRoaXMuX29wdGlvbnMuc2lnbk5lZ2F0aXZlJiYhMCE9PXRoaXMuX29wdGlvbnMuc2lnbk5lZ2F0aXZlJiZkZWxldGUgdGhpcy5fb3B0aW9ucy5zaWduTmVnYXRpdmUscy5jdXN0b21QcmljZUZvcm1hdHRlciYmKHRoaXMuX2N1c3RvbVByaWNlRm9ybWF0dGVyPXMuY3VzdG9tUHJpY2VGb3JtYXR0ZXIpLHMuY3VzdG9tVGltZUZvcm1hdHRlciYmKHZvaWQgMCE9PXMuY3VzdG9tVGltZUZvcm1hdHRlci5sYXN0UHJpY2V8fHZvaWQgMCE9PXMuY3VzdG9tVGltZUZvcm1hdHRlci5ydGM/dGhpcy5fdGltZUZvcm1hdHRlcj1zLmN1c3RvbVRpbWVGb3JtYXR0ZXI6dGhpcy5fdGltZUZvcm1hdHRlcj17bGFzdFByaWNlOnMuY3VzdG9tUHJpY2VGb3JtYXR0ZXIscnRjOnMuY3VzdG9tUHJpY2VGb3JtYXR0ZXJ9KSx0aGlzLl9wZXJjZW50Rm9ybWF0dGVyPW5ldyByLlBlcmNlbnRhZ2VGb3JtYXR0ZXIsdGhpcy5fZGVmYXVsdFByaWNlRm9ybWF0dGVyPW5ldyBsLlByaWNlRm9ybWF0dGVyKHtwcmljZVNjYWxlOjEwMH0pLHRoaXMuX3ByaWNlRm9ybWF0dGVyPXRoaXMuX2N1c3RvbVByaWNlRm9ybWF0dGVyfHx0aGlzLl9kZWZhdWx0UHJpY2VGb3JtYXR0ZXIsdGhpcy5fdm9sdW1lRm9ybWF0dGVyPW5ldyBoLlZvbHVtZUZvcm1hdHRlcih7cHJlY2lzaW9uOjJ9KSx0aGlzLl9jYWNoZT17fSx0aGlzLl9sYXN0UHJpY2U9bnVsbCx0aGlzLl9sYXN0UHJpY2VGb3JtYXR0ZWQ9IiIsdGhpcy5fbGFzdE1pbk1vdmU9MCx0aGlzLl9lbGVtZW50cz17fSx0aGlzLl90ZXh0Tm9kZXM9e30sdGhpcy5fY2hhbmdlVm9sdW1lTGV0dGVyPXRoaXMuX2dldENoYW5nZVZvbHVtZUxldHRlckNhbGxiYWNrKCksdGhpcy5fc2V0RWxlbWVudHMoZSksdGhpcy5faGlnaGxpZ2h0ZXJzPXt9LHRoaXMuX2luaXRIaWdobGlnaHRlcnMoKSx0aGlzLl9vcHRpb25zLnNldFN0YXRlSG9vayYmdGhpcy5zZXRTdGF0ZUhvb2sodGhpcy5fb3B0aW9ucy5zZXRTdGF0ZUhvb2spLHRoaXMucXVvdGVTZXNzaW9uPXRoaXMuX29wdGlvbnMucXVvdGVTZXNzaW9ufHwoMCxfLmdldFF1b3RlU2Vzc2lvbkluc3RhbmNlKSgic2ltcGxlIiksdGhpcy5fcXVvdGVTZXNzaW9uRXZlbnRIYW5kbGVyPXRoaXMub25EYXRhLmJpbmQodGhpcyksdGhpcy5fY29ubmVjdFRpbWVvdXRJZD1zZXRUaW1lb3V0KHRoaXMuY29ubmVjdC5iaW5kKHRoaXMpLDApfWZ1bmN0aW9uIHYodCl7Y29uc3QgZT10LnNlYXJjaChDKSxzPWU+PTA/dC5zbGljZShlKToiIjtyZXR1cm5bZT4wP3Quc3Vic3RyaW5nKGUsMCk6MD09PWU/IiI6dCxzXX1mdW5jdGlvbiBTKHQsZSxzLGksbyl7dmFyIG4scj1udWxsO2Z1bmN0aW9uIGEoKXtpZihuJiYoY2xlYXJUaW1lb3V0KG4pLG49dm9pZCAwKSxzfHxlKWZvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXRbcl0uc3R5bGUuYmFja2dyb3VuZD0iIjtpZighc3x8IWUpZm9yKHI9MDtyPHQubGVuZ3RoO3IrKylpJiZ0W3JdLmNsYXNzTGlzdC5yZW1vdmUoaSksbyYmdFtyXS5jbGFzc0xpc3QucmVtb3ZlKG8pfXJldHVybntzaG93OmZ1bmN0aW9uKGwpe3ZhciBoPTA7aWYobCE9PXIpe2lmKG51bGwhPT1yJiZudWxsIT09bCYmKGg9bC1yKSxhKCksbj1zZXRUaW1lb3V0KGEsNzUwKSwwPGgpe2lmKGUpZm9yKHZhciBjPTA7Yzx0Lmxlbmd0aDtjKyspdFtjXS5zdHlsZS5iYWNrZ3JvdW5kPWU7ZWxzZSBpZihpKWZvcihjPTA7Yzx0Lmxlbmd0aDtjKyspdFtjXS5jbGFzc0xpc3QuYWRkKGkpfWVsc2UgaWYoaDwwKWlmKHMpZm9yKGM9MDtjPHQubGVuZ3RoO2MrKyl0W2NdLnN0eWxlLmJhY2tncm91bmQ9cztlbHNlIGlmKG8pZm9yKGM9MDtjPHQubGVuZ3RoO2MrKyl0W2NdLmNsYXNzTGlzdC5hZGQobyk7bnVsbCE9PWwmJihyPWwpfX0saGlkZTphfX1iLnByb3RvdHlwZS5fc2V0RWxlbWVudHM9ZnVuY3Rpb24odCl7dGhpcy5fY29udGFpbmVyPXQsCnRoaXMuX2VsZW1lbnRzLmNoYW5nZT10aGlzLl9maW5kRWxlbWVudHModCxbImpzLXN5bWJvbC1jaGFuZ2UiLCJzeW1ib2wtY2hhbmdlIl0pLHRoaXMuX2VsZW1lbnRzLmNoYW5nZURpcmVjdGlvbj10aGlzLl9maW5kRWxlbWVudHModCxbImpzLXN5bWJvbC1jaGFuZ2UtZGlyZWN0aW9uIiwic3ltYm9sLWNoYW5nZS1kaXJlY3Rpb24iXSksdGhpcy5fZWxlbWVudHMuZXh0SHJzQ2hhbmdlRGlyZWN0aW9uPXRoaXMuX2ZpbmRFbGVtZW50cyh0LFsianMtc3ltYm9sLWV4dC1ocnMtY2hhbmdlLWRpcmVjdGlvbiJdKSx0aGlzLl9lbGVtZW50cy5jaGFuZ2VQZXJjZW50PXRoaXMuX2ZpbmRFbGVtZW50cyh0LFsianMtc3ltYm9sLWNoYW5nZS1wdCIsInN5bWJvbC1jaGFuZ2UtcHQiXSksdGhpcy5fZWxlbWVudHMuZGVzY3JpcHRpb249dGhpcy5fZmluZEVsZW1lbnRzKHQsWyJqcy1zeW1ib2wtZGVzY3JpcHRpb24tbmFtZSIsInN5bWJvbC1kZXNjcmlwdGlvbi1uYW1lIl0pLHRoaXMuX2VsZW1lbnRzLmV4dEhyc0NoYW5nZT10aGlzLl9maW5kRWxlbWVudHModCwianMtc3ltYm9sLWV4dC1ocnMtY2hhbmdlIiksdGhpcy5fZWxlbWVudHMuZXh0SHJzQ2hhbmdlUGVyY2VudD10aGlzLl9maW5kRWxlbWVudHModCwianMtc3ltYm9sLWV4dC1ocnMtY2hhbmdlLXB0IiksdGhpcy5fZWxlbWVudHMuZXh0SHJzQ2xvc2U9dGhpcy5fZmluZEVsZW1lbnRzKHQsImpzLXN5bWJvbC1leHQtaHJzLWNsb3NlIiksdGhpcy5fZWxlbWVudHMubmlnaHRDaGFuZ2VEaXJlY3Rpb249dGhpcy5fZmluZEVsZW1lbnRzKHQsWyJqcy1zeW1ib2wtbmlnaHQtY2hhbmdlLWRpcmVjdGlvbiJdKSx0aGlzLl9lbGVtZW50cy5uaWdodENoYW5nZT10aGlzLl9maW5kRWxlbWVudHModCwianMtc3ltYm9sLW5pZ2h0LWNoYW5nZSIpLHRoaXMuX2VsZW1lbnRzLm5pZ2h0Q2hhbmdlUGVyY2VudD10aGlzLl9maW5kRWxlbWVudHModCwianMtc3ltYm9sLW5pZ2h0LWNoYW5nZS1wdCIpLHRoaXMuX2VsZW1lbnRzLm5pZ2h0Q2xvc2U9dGhpcy5fZmluZEVsZW1lbnRzKHQsImpzLXN5bWJvbC1uaWdodC1jbG9zZSIpLHRoaXMuX2VsZW1lbnRzLmluZHVzdHJ5PXRoaXMuX2ZpbmRFbGVtZW50cyh0LFsianMtc3ltYm9sLWluZHVzdHJ5Iiwic3ltYm9sLWluZHVzdHJ5Il0pLHRoaXMuX2VsZW1lbnRzLmxhc3Q9dGhpcy5fZmluZEVsZW1lbnRzKHQsWyJqcy1zeW1ib2wtbGFzdCIsInN5bWJvbC1sYXN0Il0pLHRoaXMuX2VsZW1lbnRzLnNlY3Rvcj10aGlzLl9maW5kRWxlbWVudHModCxbImpzLXN5bWJvbC1zZWN0b3IiLCJzeW1ib2wtc2VjdG9yIl0pLHRoaXMuX2VsZW1lbnRzLnNlc3Npb25TdGF0dXM9dGhpcy5fZmluZEVsZW1lbnRzKHQsImpzLXN5bWJvbC1zZXNzaW9uLXN0YXR1cyIpLHRoaXMuX2VsZW1lbnRzLnNob3J0TmFtZT10aGlzLl9maW5kRWxlbWVudHModCxbImpzLXN5bWJvbC1zaG9ydC1uYW1lIiwic3ltYm9sLXNob3J0LW5hbWUiXSksdGhpcy5fZWxlbWVudHMudXBkYXRlTW9kZT10aGlzLl9maW5kRWxlbWVudHModCwianMtZGF0YS1tb2RlIiksdGhpcy5fZWxlbWVudHMubGFzdFBlcmlvZD10aGlzLl9maW5kRWxlbWVudHModCwianMtc3ltYm9sLWxhc3QtcGVyaW9kIiksdGhpcy5fZWxlbWVudHMudXBkYXRlTW9kZS5mb3JFYWNoKCh0PT50LmNsYXNzTGlzdC5hZGQoImktaGlkZGVuIikpKSx0aGlzLl90ZXh0Tm9kZXMuY2hhbmdlPXRoaXMuX2dldE9yQ3JlYXRlVGV4dE5vZGVzKHRoaXMuX2VsZW1lbnRzLmNoYW5nZSksdGhpcy5fdGV4dE5vZGVzLmNoYW5nZVBlcmNlbnQ9dGhpcy5fZ2V0T3JDcmVhdGVUZXh0Tm9kZXModGhpcy5fZWxlbWVudHMuY2hhbmdlUGVyY2VudCksdGhpcy5fdGV4dE5vZGVzLmV4dEhyc0NoYW5nZT10aGlzLl9nZXRPckNyZWF0ZVRleHROb2Rlcyh0aGlzLl9lbGVtZW50cy5leHRIcnNDaGFuZ2UpLHRoaXMuX3RleHROb2Rlcy5leHRIcnNDaGFuZ2VQZXJjZW50PXRoaXMuX2dldE9yQ3JlYXRlVGV4dE5vZGVzKHRoaXMuX2VsZW1lbnRzLmV4dEhyc0NoYW5nZVBlcmNlbnQpLHRoaXMuX3RleHROb2Rlcy5leHRIcnNDbG9zZT10aGlzLl9nZXRPckNyZWF0ZVRleHROb2Rlcyh0aGlzLl9lbGVtZW50cy5leHRIcnNDbG9zZSksdGhpcy5fdGV4dE5vZGVzLm5pZ2h0Q2hhbmdlPXRoaXMuX2dldE9yQ3JlYXRlVGV4dE5vZGVzKHRoaXMuX2VsZW1lbnRzLm5pZ2h0Q2hhbmdlKSx0aGlzLl90ZXh0Tm9kZXMubmlnaHRDaGFuZ2VQZXJjZW50PXRoaXMuX2dldE9yQ3JlYXRlVGV4dE5vZGVzKHRoaXMuX2VsZW1lbnRzLm5pZ2h0Q2hhbmdlUGVyY2VudCksdGhpcy5fdGV4dE5vZGVzLm5pZ2h0Q2xvc2U9dGhpcy5fZ2V0T3JDcmVhdGVUZXh0Tm9kZXModGhpcy5fZWxlbWVudHMubmlnaHRDbG9zZSksdGhpcy5fdGV4dE5vZGVzLmxhc3Q9dGhpcy5fZ2V0T3JDcmVhdGVUZXh0Tm9kZXModGhpcy5fZWxlbWVudHMubGFzdCksdGhpcy5fdGV4dE5vZGVzLm9wZW49dGhpcy5fZmluZFRleHROb2Rlcyh0LCJqcy1zeW1ib2wtb3BlbiIpLHRoaXMuX3RleHROb2Rlcy5lcHM9dGhpcy5fZmluZFRleHROb2Rlcyh0LCJqcy1zeW1ib2wtZXBzIiksdGhpcy5fdGV4dE5vZGVzLm1hcmtldENhcD10aGlzLl9maW5kVGV4dE5vZGVzKHQsImpzLXN5bWJvbC1tYXJrZXQtY2FwIiksdGhpcy5fdGV4dE5vZGVzLnByZXZDbG9zZT10aGlzLl9maW5kVGV4dE5vZGVzKHQsImpzLXN5bWJvbC1wcmV2LWNsb3NlIiksdGhpcy5fdGV4dE5vZGVzLmRpdmlkZW5kcz10aGlzLl9maW5kVGV4dE5vZGVzKHQsImpzLXN5bWJvbC1kaXZpZGVuZHMiKSx0aGlzLl90ZXh0Tm9kZXMucHJpY2VFYXJuaW5ncz10aGlzLl9maW5kVGV4dE5vZGVzKHQsImpzLXN5bWJvbC1wZSIpLHRoaXMuX3RleHROb2Rlcy52b2x1bWU9dGhpcy5fZmluZFRleHROb2Rlcyh0LCJqcy1zeW1ib2wtdm9sdW1lIiksdGhpcy5fdGV4dE5vZGVzLmhpZ2g9dGhpcy5fZmluZFRleHROb2Rlcyh0LCJqcy1zeW1ib2wtaGlnaCIpLHRoaXMuX3RleHROb2Rlcy5sb3c9dGhpcy5fZmluZFRleHROb2Rlcyh0LCJqcy1zeW1ib2wtbG93IiksCnRoaXMuX3RleHROb2Rlcy5jdXJyZW5jeT10aGlzLl9maW5kVGV4dE5vZGVzKHQsImpzLXN5bWJvbC1jdXJyZW5jeSIpLHRoaXMuX3RleHROb2Rlcy5sYXN0UHJpY2VUaW1lPXRoaXMuX2ZpbmRUZXh0Tm9kZXModCwianMtc3ltYm9sLWxwLXRpbWUiKSx0aGlzLl90ZXh0Tm9kZXMubGFzdFJlbGVhc2VEYXRlPXRoaXMuX2ZpbmRUZXh0Tm9kZXModCwianMtc3ltYm9sLWxhc3QtcmVsZWFzZS1kYXRlIiksdGhpcy5fdGV4dE5vZGVzLnJ0Y1RpbWU9dGhpcy5fZmluZFRleHROb2Rlcyh0LCJqcy1zeW1ib2wtcnRjLXRpbWUiKSx0aGlzLl90ZXh0Tm9kZXMubnRjVGltZT10aGlzLl9maW5kVGV4dE5vZGVzKHQsImpzLXN5bWJvbC1udGMtdGltZSIpLHRoaXMuX2VsZW1lbnRzLmxhc3RIaWdobGlnaHQ9dGhpcy5fb3B0aW9ucy5sYXN0UHJpY2VIaWdobGlnaHREaWZmT25seT90aGlzLl9lbGVtZW50cy5sYXN0Lm1hcCgodD0+dGhpcy5fYXBwZW5kQW5kR2V0TmV3RWxlbWVudCh0LCJzcGFuIikpKTp0aGlzLl9lbGVtZW50cy5sYXN0LHRoaXMuX3RleHROb2Rlcy5sYXN0SGlnaGxpZ2h0PXRoaXMuX2dldE9yQ3JlYXRlVGV4dE5vZGVzKHRoaXMuX2VsZW1lbnRzLmxhc3RIaWdobGlnaHQpLHRoaXMuX2VsZW1lbnRzLmxhc3RTdXA9dGhpcy5fb3B0aW9ucy5sYXN0UHJpY2VMYXN0Q2hhclN1cD90aGlzLl9lbGVtZW50cy5sYXN0SGlnaGxpZ2h0Lm1hcCgodD0+dGhpcy5fYXBwZW5kQW5kR2V0TmV3RWxlbWVudCh0LCJzdXAiKSkpOltdLHRoaXMuX3RleHROb2Rlcy5sYXN0U3VwPXRoaXMuX2dldE9yQ3JlYXRlVGV4dE5vZGVzKHRoaXMuX2VsZW1lbnRzLmxhc3RTdXApfSxiLnByb3RvdHlwZS5fZmluZEVsZW1lbnRzPWZ1bmN0aW9uKHQsZSl7dmFyIHM9KDAsbi5pc0FycmF5KShlKT9lOltlXTtyZXR1cm4gQXJyYXkucHJvdG90eXBlLmNvbmNhdC5hcHBseShbXSxzLm1hcCgoZT0+QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwodC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKGUpKSkpKX0sYi5wcm90b3R5cGUuX2ZpbmRUZXh0Tm9kZXM9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdGhpcy5fZ2V0T3JDcmVhdGVUZXh0Tm9kZXModGhpcy5fZmluZEVsZW1lbnRzKHQsZSkpfSxiLnByb3RvdHlwZS5fZ2V0T3JDcmVhdGVUZXh0Tm9kZXM9ZnVuY3Rpb24odCl7cmV0dXJuIHQubWFwKCh0PT57dmFyIGU9dGhpcy5fZ2V0Rmlyc3RUZXh0Tm9kZSh0KTtyZXR1cm4gZXx8KGU9dC5vd25lckRvY3VtZW50LmNyZWF0ZVRleHROb2RlKCIiKSx0LmFwcGVuZENoaWxkKGUpKSxlfSkpfSxiLnByb3RvdHlwZS5fYXBwZW5kQW5kR2V0TmV3RWxlbWVudD1mdW5jdGlvbih0LGUpe2NvbnN0IHM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudChlKTtyZXR1cm4gdC5hcHBlbmRDaGlsZChzKSxzfSxiLnByb3RvdHlwZS5fZ2V0Rmlyc3RUZXh0Tm9kZT1mdW5jdGlvbih0KXtmb3IodmFyIGU9dC5jaGlsZE5vZGVzLHM9ZS5sZW5ndGgtMTtzPj0wO3MtLSlpZigzPT09ZS5pdGVtKHMpLm5vZGVUeXBlKXJldHVybiBlLml0ZW0ocyk7cmV0dXJuIG51bGx9LGIucHJvdG90eXBlLmNvbm5lY3Q9ZnVuY3Rpb24odCl7dGhpcy5fc3Vic2NyaWJlZHx8KHRoaXMuX3N1YnNjcmliZWRTeW1ib2w9dHx8dGhpcy5fc3ltYm9sLHRoaXMucXVvdGVTZXNzaW9uLnN1YnNjcmliZSh0aGlzLl9vcHRpb25zLmNsaWVudE5hbWUsdGhpcy5fc3Vic2NyaWJlZFN5bWJvbCx0aGlzLl9xdW90ZVNlc3Npb25FdmVudEhhbmRsZXIpLHRoaXMuX3N1YnNjcmliZWQ9ITApfSxiLnByb3RvdHlwZS5kaXNjb25uZWN0PWZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KHRoaXMuX2Nvbm5lY3RUaW1lb3V0SWQpLHRoaXMuX3N1YnNjcmliZWQmJih0aGlzLnF1b3RlU2Vzc2lvbi51bnN1YnNjcmliZSh0aGlzLl9vcHRpb25zLmNsaWVudE5hbWUsdGhpcy5fc3Vic2NyaWJlZFN5bWJvbCx0aGlzLl9xdW90ZVNlc3Npb25FdmVudEhhbmRsZXIpLHRoaXMuX3N1YnNjcmliZWQ9ITEpfSxiLnByb3RvdHlwZS5vbkRhdGE9ZnVuY3Rpb24odCxlKXt0aGlzLmVuYWJsZWQmJigib2siPT09dC5zdGF0dXM/dGhpcy5zdWNjZXNzRGF0YSh0LGUpOiJwZXJtaXNzaW9uX2RlbmllZCI9PT10LnN0YXR1cz90aGlzLm9uUGVybWlzc2lvbkRlbmllZCh0KToiZXJyb3IiPT09dC5zdGF0dXMmJnRoaXMuZXJyb3JEYXRhKHQpKX0sYi5wcm90b3R5cGUuc3VjY2Vzc0RhdGE9ZnVuY3Rpb24odCxlKXt0LnZhbHVlcyYmdGhpcy5zZXRTdGF0ZSh0LnZhbHVlcyx0LGUpfSxiLnByb3RvdHlwZS5vblBlcm1pc3Npb25EZW5pZWQ9ZnVuY3Rpb24odCl7KDAseC5pc1NmUXVvdGVEYXRhKSh0KXx8KDAsZi5pc01jeFF1b3RlRGF0YSkodCk/dGhpcy5fb3B0aW9ucy5wZXJtaXNzaW9uRGVuaWVkSG9vaz90aGlzLl9vcHRpb25zLnBlcm1pc3Npb25EZW5pZWRIb29rKHQsdGhpcy5fc3ltYm9sT3JpZ2luYWx8fHRoaXMuX3N5bWJvbCk6dGhpcy5lcnJvckRhdGEodCk6dGhpcy5kb3duZ3JhZGVEYXRhKHQpfSxiLnByb3RvdHlwZS5lcnJvckRhdGE9ZnVuY3Rpb24odCl7dGhpcy5fb3B0aW9ucy5zaG93SW52YWxpZFN5bWJvbFN0YXR1cyYmKHRoaXMuc2V0U2hvcnROYW1lKHRoaXMuX3N5bWJvbCksdGhpcy5fZWxlbWVudHMuc2Vzc2lvblN0YXR1cy5tYXAoKHQ9Pm5ldyBjLk1hcmtldFN0YXR1c0luZGljYXRvcih7Y2xhc3NTdWZmaXg6dGhpcy5fb3B0aW9ucy5zZXNzaW9uU3RhdHVzQ2xhc3NTdWZmaXgsZWw6dCxkYXRhOnt2YWx1ZXM6e2N1cnJlbnRfc2Vzc2lvbjoiaW52YWxpZCJ9fSx0b29sdGlwVHlwZTp0aGlzLl9vcHRpb25zLmluZGljYXRvcnNUb29sdGlwVHlwZX0pKSkpLHRoaXMuX29wdGlvbnMubm9TdWNoU3ltYm9sSG9vaz8odGhpcy5fc3ltYm9sT3JpZ2luYWwmJnRoaXMuc2V0U2hvcnROYW1lKHRoaXMuX3N5bWJvbE9yaWdpbmFsKSx0aGlzLl9vcHRpb25zLm5vU3VjaFN5bWJvbEhvb2suY2FsbCh0aGlzLHQsdGhpcy5fc3ltYm9sT3JpZ2luYWx8fHRoaXMuX3N5bWJvbCkpOnkubG9nV2FybigiTm8gZGF0YSBmb3I6ICIrdGhpcy5fc3ltYm9sKX0sYi5wcm90b3R5cGUuZG93bmdyYWRlRGF0YT1mdW5jdGlvbih0KXt7CmNvbnN0IGU9dCYmdC52YWx1ZXMmJnQudmFsdWVzLmFsdGVybmF0aXZlLHM9dGhpcy5fc3ltYm9sPT09ZTtpZighKGUmJi0xIT09ZS5pbmRleE9mKCI6IikpfHxzKXJldHVybiB2b2lkIHRoaXMuZXJyb3JEYXRhKHQpO3RoaXMuX3N5bWJvbE9yaWdpbmFsPXRoaXMuX3N5bWJvbCx0aGlzLl9zeW1ib2w9ZSx0aGlzLl9zdWJzY3JpYmVkPSExLHRoaXMuY29ubmVjdCgpfX0sYi5wcm90b3R5cGUuc2V0U3RhdGU9ZnVuY3Rpb24odCxlLGkpe2NvbnN0IG89aS52YWx1ZXM7dGhpcy5faXNWb2x1bWVGb3JtYXQ9InZvbHVtZSI9PT10LmZvcm1hdCxudWxsPT1vLnByaWNlc2NhbGUmJm51bGw9PW8ubWlubW92JiZudWxsPT1vLmZyYWN0aW9uYWwmJm51bGw9PW8ubWlubW92ZTJ8fCh0aGlzLl9wcmljZUZvcm1hdHRlcj10aGlzLl9jdXN0b21QcmljZUZvcm1hdHRlcnx8dGhpcy5faXNWb2x1bWVGb3JtYXQmJnRoaXMuX3ZvbHVtZUZvcm1hdHRlcnx8bmV3IGwuUHJpY2VGb3JtYXR0ZXIoe3ByaWNlU2NhbGU6dC5wcmljZXNjYWxlfHwxMDAsbWluTW92ZTp0Lm1pbm1vdnx8MSxmcmFjdGlvbmFsOnQuZnJhY3Rpb25hbCxtaW5Nb3ZlMjp0Lm1pbm1vdmUyfSkpO2NvbnN0IG49dGhpcy5fb3B0aW9ucyxyPXRoaXMuX3BlcmNlbnRGb3JtYXR0ZXIsYT10aGlzLl9wcmljZUZvcm1hdHRlcixfPXRoaXMuX2RlZmF1bHRQcmljZUZvcm1hdHRlcixmPXRoaXMuX3ZvbHVtZUZvcm1hdHRlcix4PSh0LGU9ITApPT5lP2AoJHt0fSlgOnQsTj12b2lkIDAhPT1uLnNpZ25Qb3NpdGl2ZUNoYW5nZT9uLnNpZ25Qb3NpdGl2ZUNoYW5nZTpuLnNpZ25Qb3NpdGl2ZSxDPXQ9PigwLGcucXVvdGVUaWNrZXJGb3JtYXRDaGFuZ2UpKHQsbyxuKSxiPXQ9Pntjb25zdCBlPXIuZm9ybWF0KHQse3NpZ25Qb3NpdGl2ZTpOLHNpZ25OZWdhdGl2ZTpuLnNpZ25OZWdhdGl2ZX0pO3JldHVybiB4KGUsbi5jaGFuZ2VQZXJjZW50SW5CcmFja2V0cyl9LHY9YS5mb3JtYXQuYmluZChhKSxTPV8uZm9ybWF0LmJpbmQoXyksUD1mLmZvcm1hdC5iaW5kKGYpLFQ9dD0+bnVsbD09dD9oLlBMQUNFX0hPTERFUjpTKHQpO24uZGlzYWJsZUNoYW5nZXx8KHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLmNoYW5nZSxvLmNoYW5nZSxDKSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5jaGFuZ2VQZXJjZW50LG8uY2hhbmdlX3BlcmNlbnQsYiksbnVsbCE9by5jaGFuZ2UmJihuLmRvbnREeWVQcmljZXx8dGhpcy5fc2V0Q2hhbmdlRm9udENvbG9yKFtdLmNvbmNhdCh0aGlzLl9lbGVtZW50cy5jaGFuZ2UsdGhpcy5fZWxlbWVudHMuY2hhbmdlUGVyY2VudCksby5jaGFuZ2Usbi5jaGFuZ2VVcEZvbnRDb2xvcixuLmNoYW5nZURvd25Gb250Q29sb3Isbi5jaGFuZ2VOZXV0cmFsRm9udENvbG9yKSx0aGlzLl9zZXRDaGFuZ2VEaXJlY3Rpb24odGhpcy5fZWxlbWVudHMuY2hhbmdlRGlyZWN0aW9uLG8uY2hhbmdlKSksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMuZXh0SHJzQ2hhbmdlLG8ucmNoLEMpLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLmV4dEhyc0NoYW5nZVBlcmNlbnQsby5yY2hwLGIpLG51bGwhPW8ucmNoJiYobi5kb250RHllUHJpY2V8fHRoaXMuX3NldENoYW5nZUZvbnRDb2xvcihbXS5jb25jYXQodGhpcy5fZWxlbWVudHMuZXh0SHJzQ2hhbmdlLHRoaXMuX2VsZW1lbnRzLmV4dEhyc0NoYW5nZVBlcmNlbnQpLG8ucmNoLG4uY2hhbmdlVXBGb250Q29sb3Isbi5jaGFuZ2VEb3duRm9udENvbG9yLG4uY2hhbmdlTmV1dHJhbEZvbnRDb2xvciksdGhpcy5fc2V0Q2hhbmdlRGlyZWN0aW9uKHRoaXMuX2VsZW1lbnRzLmV4dEhyc0NoYW5nZURpcmVjdGlvbixvLnJjaCkpLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLm5pZ2h0Q2hhbmdlLG8ubmNoLEMpLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLm5pZ2h0Q2hhbmdlUGVyY2VudCxvLm5jaHAsYiksbnVsbCE9by5uY2gmJihuLmRvbnREeWVQcmljZXx8dGhpcy5fc2V0Q2hhbmdlRm9udENvbG9yKFtdLmNvbmNhdCh0aGlzLl9lbGVtZW50cy5uaWdodENoYW5nZSx0aGlzLl9lbGVtZW50cy5uaWdodENoYW5nZVBlcmNlbnQpLG8ubmNoLG4uY2hhbmdlVXBGb250Q29sb3Isbi5jaGFuZ2VEb3duRm9udENvbG9yLG4uY2hhbmdlTmV1dHJhbEZvbnRDb2xvciksdGhpcy5fc2V0Q2hhbmdlRGlyZWN0aW9uKHRoaXMuX2VsZW1lbnRzLm5pZ2h0Q2hhbmdlRGlyZWN0aW9uLG8ubmNoKSkpLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLnByZXZDbG9zZSxvLnByZXZfY2xvc2VfcHJpY2UsdiksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMuZGl2aWRlbmRzLHQuZGl2aWRlbmRzX3lpZWxkLCh0PT5udWxsPT10P2guUExBQ0VfSE9MREVSOnIuZm9ybWF0KHQse3NpZ25Qb3NpdGl2ZTpuLnNpZ25Qb3NpdGl2ZSxzaWduTmVnYXRpdmU6bi5zaWduTmVnYXRpdmV9KSksITApO2xldCB3PSgwLHUuZ2V0VHJhbnNsYXRlZFN5bWJvbERlc2NyaXB0aW9uKShvKTtpZih3JiYodz10aGlzLl9wcmVwYXJlU3ltYm9sRGVzY3JpcHRpb24odyksdGhpcy5fc2V0VGV4dHNDb250ZW50KHRoaXMuX2VsZW1lbnRzLmRlc2NyaXB0aW9uLHcpLHRoaXMuX29wdGlvbnMuYWRkRGVzY3JpcHRpb25UaXRsZSkpZm9yKHZhciBGPTA7Rjx0aGlzLl9lbGVtZW50cy5kZXNjcmlwdGlvbi5sZW5ndGg7RisrKXRoaXMuX2VsZW1lbnRzLmRlc2NyaXB0aW9uW0ZdLnNldEF0dHJpYnV0ZSgidGl0bGUiLHcpO2lmKChudWxsIT1vLnNob3J0X25hbWV8fG51bGwhPW8uZXhjaGFuZ2UpJiZ0LnNob3J0X25hbWUpe3ZhciBEPXQuc2hvcnRfbmFtZTsiUVVBTkRMIj09PXQuZXhjaGFuZ2UmJnZvaWQgMCE9PXQuc2hvcnRfbmFtZS5zcGxpdCgiLyIpWzFdJiYoRD10LnNob3J0X25hbWUuc3BsaXQoIi8iKVsxXSsiLCAiK3Quc2hvcnRfbmFtZS5zcGxpdCgiLyIpWzBdKSx0aGlzLnNldFNob3J0TmFtZShEKX0KdFsicmVmZXJlbmNlLWxhc3QtcGVyaW9kIl0mJnRoaXMuX2VsZW1lbnRzLmxhc3RQZXJpb2QubGVuZ3RoJiZQcm9taXNlLmFsbChbcy5lKDIzNTY3KSxzLmUoNzM5NyldKS50aGVuKHMuYmluZChzLDIxNTU3OSkpLnRoZW4oKGU9Pnt0aGlzLl9zZXRUZXh0c0NvbnRlbnQodGhpcy5fZWxlbWVudHMubGFzdFBlcmlvZCxlLnBlcmlvZEZvcm1hdHRlcih0WyJyZWZlcmVuY2UtbGFzdC1wZXJpb2QiXSkpfSkpLHRoaXMuX2VsZW1lbnRzLmxhc3RQZXJpb2QubGVuZ3RoJiZ2b2lkIDA9PT10WyJyZWZlcmVuY2UtbGFzdC1wZXJpb2QiXSYmdGhpcy5fc2V0VGV4dHNDb250ZW50KHRoaXMuX2VsZW1lbnRzLmxhc3RQZXJpb2QsIuKAlCIpLHRoaXMuX3NldExhc3RWYWx1ZShvLmxhc3RfcHJpY2Usby5taW5tb3ZlMix2KSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5leHRIcnNDbG9zZSxvLnJ0Yyx2KSxvLnJ0YyYmdGhpcy5faGlnaGxpZ2h0ZXJzLmV4dEhyc0Nsb3NlLnNob3coby5ydGMpLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLm5pZ2h0Q2xvc2Usby5udGMsdiksby5udGMmJnRoaXMuX2hpZ2hsaWdodGVycy5uaWdodENsb3NlLnNob3coby5udGMpLG8uaW5kdXN0cnkmJnRoaXMuX3NldFRleHRzQ29udGVudCh0aGlzLl9lbGVtZW50cy5pbmR1c3RyeSx0LmluZHVzdHJ5LCh0PT50KSksby5zZWN0b3ImJnRoaXMuX3NldFRleHRzQ29udGVudCh0aGlzLl9lbGVtZW50cy5zZWN0b3IsdC5zZWN0b3IpLHRoaXMuX2VsZW1lbnRzLnNlc3Npb25TdGF0dXMmJm8uY3VycmVudF9zZXNzaW9uJiYodGhpcy5fc2Vzc2lvblN0YXR1c0luc3RhbmNlcz90aGlzLl9zZXNzaW9uU3RhdHVzSW5zdGFuY2VzLmZvckVhY2goKHQ9PnQuc2V0U3RhdHVzKG8uY3VycmVudF9zZXNzaW9uKSkpOnRoaXMuX3Nlc3Npb25TdGF0dXNJbnN0YW5jZXM9dGhpcy5fZWxlbWVudHMuc2Vzc2lvblN0YXR1cy5tYXAoKGU9Pm5ldyBjLk1hcmtldFN0YXR1c0luZGljYXRvcih7Y2xhc3NTdWZmaXg6dGhpcy5fb3B0aW9ucy5zZXNzaW9uU3RhdHVzQ2xhc3NTdWZmaXgsZWw6ZSxzaG9ydDohMCxkYXRhOnt2YWx1ZXM6b30scXVvdGVTZXNzaW9uOnRoaXMucXVvdGVTZXNzaW9uLHN5bWJvbDp0Lm9yaWdpbmFsX25hbWUsbWFudWFsVXBkYXRlOiEwLHRvb2x0aXBUeXBlOnRoaXMuX29wdGlvbnMuaW5kaWNhdG9yc1Rvb2x0aXBUeXBlLHNlc3Npb25TdGF0dXNJY29uOnRoaXMuX29wdGlvbnMuc2Vzc2lvblN0YXR1c0ljb259KSkpKSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5vcGVuLG8ub3Blbl9wcmljZSx2KSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5oaWdoLG8uaGlnaF9wcmljZSx2KSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5sb3csby5sb3dfcHJpY2UsdiksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMuZXBzLHQuZWFybmluZ3NfcGVyX3NoYXJlX2Jhc2ljX3R0bSxULCEwKSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5wcmljZUVhcm5pbmdzLHQucHJpY2VfZWFybmluZ3NfdHRtLFQsITApLHRoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLm1hcmtldENhcCx0Lm1hcmtldF9jYXBfYmFzaWMsUCwhMCksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMudm9sdW1lLHQudm9sdW1lLFAsITApO2NvbnN0IGs9KDAsZC5wcmVwYXJlQ3VycmVuY3lWYWx1ZSkobyk7aWYoayYmdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMuY3VycmVuY3ksayxwLnF1b3RlVGlja2VyRm9ybWF0Q3VycmVuY3ksITApLChvLmxwX3RpbWV8fHQubHBfdGltZSkmJnRoaXMuX3RleHROb2Rlcy5sYXN0UHJpY2VUaW1lLmxlbmd0aCYmKHRoaXMuX3RpbWVGb3JtYXR0ZXImJnRoaXMuX3RpbWVGb3JtYXR0ZXIubGFzdFByaWNlP3RoaXMuX3NldE5vZGVzVmFsdWUodGhpcy5fdGV4dE5vZGVzLmxhc3RQcmljZVRpbWUseCh0aGlzLl90aW1lRm9ybWF0dGVyLmxhc3RQcmljZSh0LmxwX3RpbWUsdC5jdXJyZW50X3Nlc3Npb24pLHRoaXMuX29wdGlvbnMubGFzdFByaWNlVGltZUluQnJhY2tldHMpKTp5LmxvZ0Vycm9yKCJsYXN0IHByaWNlIHRpbWUgZmllbGQgcmVxdWVzdGVkIHdpdGggbm8gZm9ybWF0dGVyIHByb3ZpZGVkIikpLChvLmxhc3RfcmVsZWFzZV9kYXRlfHx0Lmxhc3RfcmVsZWFzZV9kYXRlKSYmdGhpcy5fdGV4dE5vZGVzLmxhc3RSZWxlYXNlRGF0ZS5sZW5ndGgmJih0aGlzLl90aW1lRm9ybWF0dGVyJiZ0aGlzLl90aW1lRm9ybWF0dGVyLmxhc3RSZWxlYXNlRGF0ZT90aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5sYXN0UmVsZWFzZURhdGUseCh0aGlzLl90aW1lRm9ybWF0dGVyLmxhc3RSZWxlYXNlRGF0ZSh0Lmxhc3RfcmVsZWFzZV9kYXRlLHQuY3VycmVudF9zZXNzaW9uKSx0aGlzLl9vcHRpb25zLmxhc3RSZWxlYXNlRGF0ZVRpbWVJbkJyYWNrZXRzKSk6eS5sb2dFcnJvcigibGFzdFJlbGVhc2VEYXRlIHRpbWUgZmllbGQgcmVxdWVzdGVkIHdpdGggbm8gZm9ybWF0dGVyIHByb3ZpZGVkIikpLChvLnJ0Y190aW1lfHx0LnJ0Y190aW1lKSYmdGhpcy5fdGV4dE5vZGVzLnJ0Y1RpbWUubGVuZ3RoJiYodGhpcy5fdGltZUZvcm1hdHRlciYmdGhpcy5fdGltZUZvcm1hdHRlci5ydGM/dGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMucnRjVGltZSx4KHRoaXMuX3RpbWVGb3JtYXR0ZXIucnRjKHQucnRjX3RpbWUsdC5jdXJyZW50X3Nlc3Npb24pLHRoaXMuX29wdGlvbnMucnRjVGltZUluQnJhY2tldHMpKTp5LmxvZ0Vycm9yKCJydGMgdGltZSBmaWVsZCByZXF1ZXN0ZWQgd2l0aCBubyBmb3JtYXR0ZXIgcHJvdmlkZWQiKSksCihvLm50Y190aW1lfHx0Lm50Y190aW1lKSYmdGhpcy5fdGV4dE5vZGVzLm50Y1RpbWUubGVuZ3RoJiYodGhpcy5fdGltZUZvcm1hdHRlciYmdGhpcy5fdGltZUZvcm1hdHRlci5ydGM/dGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMubnRjVGltZSx4KHRoaXMuX3RpbWVGb3JtYXR0ZXIucnRjKHQubnRjX3RpbWUsdC5jdXJyZW50X3Nlc3Npb24pLHRoaXMuX29wdGlvbnMucnRjVGltZUluQnJhY2tldHMpKTp5LmxvZ0Vycm9yKCJudGMgdGltZSBmaWVsZCByZXF1ZXN0ZWQgd2l0aCBubyBmb3JtYXR0ZXIgcHJvdmlkZWQiKSksbnVsbCE9by5sYXN0X3ByaWNlKWZvcihGPTA7Rjx0aGlzLl9lbGVtZW50cy51cGRhdGVNb2RlLmxlbmd0aDtGKyspdGhpcy5fZWxlbWVudHMudXBkYXRlTW9kZVtGXS5jbGFzc0xpc3QucmVtb3ZlKCJpLWhpZGRlbiIpO3RoaXMuX2VsZW1lbnRzLnVwZGF0ZU1vZGUmJihvLnVwZGF0ZV9tb2RlfHxvLnVwZGF0ZV9tb2RlX3NlY29uZHMpJiYodGhpcy5fdXBkYXRlTW9kZUluc3RhbmNlcz90aGlzLl91cGRhdGVNb2RlSW5zdGFuY2VzLmZvckVhY2goKGU9PmUudXBkYXRlKHt2YWx1ZXM6dH0pKSk6dGhpcy5fdXBkYXRlTW9kZUluc3RhbmNlcz10aGlzLl9lbGVtZW50cy51cGRhdGVNb2RlLm1hcCgoZT0+bmV3IG0uRGF0YU1vZGVJbmRpY2F0b3Ioe2NsYXNzU3VmZml4OnRoaXMuX29wdGlvbnMuZGF0YU1vZGVDbGFzc1N1ZmZpeCxlbDplLGRhdGE6e3ZhbHVlczp0fSxtb2RlSW50ZXJ2YWw6dC51cGRhdGVfbW9kZV9zZWNvbmRzLHNob3J0OiEwLHRvb2x0aXBUeXBlOnRoaXMuX29wdGlvbnMuaW5kaWNhdG9yc1Rvb2x0aXBUeXBlfSkpKSksdGhpcy5fc2V0U3RhdGVIb29rJiZ0aGlzLl9zZXRTdGF0ZUhvb2soZS52YWx1ZXMsaS52YWx1ZXMsZS5jb21wbGV0ZSx0aGlzLmdldE9wdGlvbnMoKSksdGhpcy5fbGFzdFByaWNlP3RoaXMuX2hpZ2hsaWdodGVycy5sYXN0LnNob3codC5sYXN0X3ByaWNlKTpudWxsPT09dGhpcy5fbGFzdFByaWNlJiYodGhpcy5fY29udGFpbmVyLmNsYXNzTGlzdC5hZGQoInF1b3RlLXRpY2tlci1pbml0ZWQiKSwiZnVuY3Rpb24iPT10eXBlb2YgdGhpcy5fb3B0aW9ucy5pbml0ZWRIb29rJiZ0aGlzLl9vcHRpb25zLmluaXRlZEhvb2soImxhc3RfcHJpY2UiaW4gdCkpLHRoaXMuX2xhc3RQcmljZT10Lmxhc3RfcHJpY2V9LGIucHJvdG90eXBlLl9zZXROb2Rlc1ZhbHVlPWZ1bmN0aW9uKHQsZSxzLGkpe2lmKG51bGwhPWV8fGkpZm9yKHZhciBvPSJmdW5jdGlvbiI9PXR5cGVvZiBzP3MoZSk6ZSxuPTA7bjx0Lmxlbmd0aDtuKyspdFtuXS5ub2RlVmFsdWU9b30sYi5wcm90b3R5cGUuX3NldFRleHRzQ29udGVudD1mdW5jdGlvbih0LGUscyl7aWYodCYmdC5sZW5ndGgmJmUpZm9yKHZhciBpPSJmdW5jdGlvbiI9PXR5cGVvZiBzP3MoZSk6ZSxvPTA7bzx0Lmxlbmd0aDtvKyspdFtvXS50ZXh0Q29udGVudD1pfSxiLnByb3RvdHlwZS5fc2V0TGFzdFZhbHVlPWZ1bmN0aW9uKHQsZSxzKXtpZihudWxsPT10KXJldHVybjtjb25zdCBpPSJmdW5jdGlvbiI9PXR5cGVvZiBzP3ModCk6U3RyaW5nKHQpO2lmKGk9PT10aGlzLl9sYXN0UHJpY2VGb3JtYXR0ZWQpcmV0dXJuO2NvbnN0W28sbixyXT10aGlzLl9vcHRpb25zLmxhc3RQcmljZUhpZ2hsaWdodERpZmZPbmx5P3RoaXMuX2dldExhc3RWYWx1ZVN0cmluZ0RpZmYodGhpcy5fbGFzdFByaWNlRm9ybWF0dGVkLGkpOlsiIixpLCIiXSxhPW8sbD10aGlzLl9jYWxjdWxhdGVQaXBldHRlRGlnaXRzKGUpLFtoLGNdPXRoaXMuX29wdGlvbnMubGFzdFByaWNlTGFzdENoYXJTdXAmJmw/W24uc2xpY2UoMCwtbCksbi5zbGljZSgtbCldOltuLCIiXTt0aGlzLl9vcHRpb25zLmxhc3RQcmljZUhpZ2hsaWdodERpZmZPbmx5JiYodGhpcy5faXNWb2x1bWVGb3JtYXQmJnRoaXMuX2NoYW5nZVZvbHVtZUxldHRlci5jYWxsKHRoaXMsciksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMubGFzdCxhKSksdGhpcy5fc2V0Tm9kZXNWYWx1ZSh0aGlzLl90ZXh0Tm9kZXMubGFzdEhpZ2hsaWdodCxoKSx0aGlzLl9zZXROb2Rlc1ZhbHVlKHRoaXMuX3RleHROb2Rlcy5sYXN0U3VwLGMpLHRoaXMuX2xhc3RQcmljZUZvcm1hdHRlZD1pfSxiLnByb3RvdHlwZS5fZ2V0Q2hhbmdlVm9sdW1lTGV0dGVyQ2FsbGJhY2s9ZnVuY3Rpb24oKXtsZXQgdDtyZXR1cm4gZnVuY3Rpb24oZSl7ZSE9PXQmJih0PWUsdGhpcy5fZWxlbWVudHMubGFzdC5mb3JFYWNoKChlPT57MyE9PWUuY2hpbGROb2Rlcy5sZW5ndGg/ZS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSh0KSk6ZS5jaGlsZE5vZGVzWzJdLm5vZGVWYWx1ZT10fSkpKX19LGIucHJvdG90eXBlLl9nZXRMYXN0VmFsdWVTdHJpbmdEaWZmPWZ1bmN0aW9uKHQsZSl7aWYodD09PWUpe2NvbnN0W3Qsc109dihlKTtyZXR1cm5bdCwiIixzXX1sZXQgcz0wO2Zvcig7dFtzXT09PWVbc107KXMrKztjb25zdFtpLG9dPXYoZS5zbGljZShzKSk7cmV0dXJuW2Uuc2xpY2UoMCxzKSxpLG9dfSxiLnByb3RvdHlwZS5fY2FsY3VsYXRlUGlwZXR0ZURpZ2l0cz1mdW5jdGlvbih0KXtyZXR1cm4gdCYmdCE9PXRoaXMuX2xhc3RNaW5Nb3ZlJiYodGhpcy5fbGFzdE1pbk1vdmU9dCksdGhpcy5fbGFzdE1pbk1vdmU/KCIiK3RoaXMuX2xhc3RNaW5Nb3ZlKS5sZW5ndGgtMTowfSxiLnByb3RvdHlwZS5fc2V0Q2hhbmdlRm9udENvbG9yPWZ1bmN0aW9uKHQsZSxzLGksbyl7Zm9yKHZhciBuPWEuUHJpY2VDb2xvcmVyLmZvcm1hdFNpZ24oZSx7dXA6cyxkb3duOmksbmV1dHJhbDpvfSkscj0wO3I8dC5sZW5ndGg7cisrKXRbcl0uc3R5bGUuY29sb3I9bn0sYi5wcm90b3R5cGUuX3NldENoYW5nZURpcmVjdGlvbj1mdW5jdGlvbih0LGUpe2Zvcih2YXIgcz0wO3M8dC5sZW5ndGg7cysrKXt2YXIgaT10W3NdLmNsYXNzTGlzdDtpLnRvZ2dsZSh0aGlzLl9vcHRpb25zLmNoYW5nZURpcmVjdGlvblVwQ2xhc3MsZT4wKSxpLnRvZ2dsZSh0aGlzLl9vcHRpb25zLmNoYW5nZURpcmVjdGlvbkRvd25DbGFzcyxlPDApLGkudG9nZ2xlKHRoaXMuX29wdGlvbnMuY2hhbmdlRGlyZWN0aW9uTmV1dHJhbENsYXNzLDA9PT1lKX19LApiLnByb3RvdHlwZS5zZXRTaG9ydE5hbWU9ZnVuY3Rpb24odD0iIil7dGhpcy5fc2V0VGV4dHNDb250ZW50KHRoaXMuX2VsZW1lbnRzLnNob3J0TmFtZSx0KX0sYi5wcm90b3R5cGUuX3ByZXBhcmVTeW1ib2xEZXNjcmlwdGlvbj1mdW5jdGlvbih0KXt2YXIgZT10aGlzLl9nZXRDYWNoZSgic3ltYm9sLWRlc2NyaXB0aW9uOiIrdCk7cmV0dXJuIGV8fChlPXQsdGhpcy5fc2V0Q2FjaGUoInN5bWJvbC1kZXNjcmlwdGlvbjoiK3QsZSksZSl9LGIucHJvdG90eXBlLl9pbml0SGlnaGxpZ2h0ZXJzPWZ1bmN0aW9uKCl7dGhpcy5faGlnaGxpZ2h0ZXJzLmxhc3Q9bmV3IFModGhpcy5fZWxlbWVudHMubGFzdEhpZ2hsaWdodCx0aGlzLl9vcHRpb25zLmdyb3dpbmdCZyx0aGlzLl9vcHRpb25zLmZhbGxpbmdCZyx0aGlzLl9vcHRpb25zLmxhc3RHcm93aW5nQ2xhc3MsdGhpcy5fb3B0aW9ucy5sYXN0RmFsbGluZ0NsYXNzKSx0aGlzLl9oaWdobGlnaHRlcnMuZXh0SHJzQ2xvc2U9bmV3IFModGhpcy5fZWxlbWVudHMuZXh0SHJzQ2xvc2UsdGhpcy5fb3B0aW9ucy5ncm93aW5nQmcsdGhpcy5fb3B0aW9ucy5mYWxsaW5nQmcsdGhpcy5fb3B0aW9ucy5sYXN0R3Jvd2luZ0NsYXNzLHRoaXMuX29wdGlvbnMubGFzdEZhbGxpbmdDbGFzcyksdGhpcy5faGlnaGxpZ2h0ZXJzLm5pZ2h0Q2xvc2U9bmV3IFModGhpcy5fZWxlbWVudHMubmlnaHRDbG9zZSx0aGlzLl9vcHRpb25zLmdyb3dpbmdCZyx0aGlzLl9vcHRpb25zLmZhbGxpbmdCZyx0aGlzLl9vcHRpb25zLmxhc3RHcm93aW5nQ2xhc3MsdGhpcy5fb3B0aW9ucy5sYXN0RmFsbGluZ0NsYXNzKX0sYi5wcm90b3R5cGUuZGlzYWJsZT1mdW5jdGlvbigpe3RoaXMuZW5hYmxlZD0hMSx0aGlzLmRpc2Nvbm5lY3QoKX0sYi5wcm90b3R5cGUuZW5hYmxlPWZ1bmN0aW9uKCl7dGhpcy5lbmFibGVkPSEwLHRoaXMuY29ubmVjdCgpfSxiLnByb3RvdHlwZS5zZXRTdGF0ZUhvb2s9ZnVuY3Rpb24odCl7bnVsbD09PXQmJnRoaXMuX3NldFN0YXRlSG9vaz9kZWxldGUgdGhpcy5fc2V0U3RhdGVIb29rOiJmdW5jdGlvbiI9PXR5cGVvZiB0JiYodGhpcy5fc2V0U3RhdGVIb29rPXQpfSxiLnByb3RvdHlwZS5fc2V0Q2FjaGU9ZnVuY3Rpb24odCxlKXtudWxsPT1lP2RlbGV0ZSB0aGlzLl9jYWNoZVt0XTp0aGlzLl9jYWNoZVt0XT1lfSxiLnByb3RvdHlwZS5fZ2V0Q2FjaGU9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX2NhY2hlJiZ0aGlzLl9jYWNoZVt0XX0sYi5wcm90b3R5cGUuZ2V0T3B0aW9ucz1mdW5jdGlvbigpe3JldHVybiB0aGlzLl9vcHRpb25zfX0sMTEzNTY3KHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse3ByZXBhcmVDdXJyZW5jeVZhbHVlOigpPT5vfSk7dmFyIGk9cygxODUyNzEpO2Z1bmN0aW9uIG8odCl7bGV0IGU9W107Y29uc3Qgbz1mdW5jdGlvbih0KXtzd2l0Y2godCl7Y2FzZSJQQ1QiOmNhc2UiUENUUEFSIjpyZXR1cm4iJSI7Y2FzZSJQQ1RHRFAiOnJldHVybiBpLnQobnVsbCx7Y29udGV4dDoiX21heF9sZW5fOSJ9LHMoNTU4NDEyKSk7Y2FzZSJERUdDIjpyZXR1cm4i4oSDIjtkZWZhdWx0OnJldHVybiB0fX0odC5jdXJyZW5jeV9jb2RlfHx0LnZhbHVlX3VuaXRfaWR8fCIiKTtzd2l0Y2godC5tZWFzdXJlKXtjYXNlInByaWNlIjpjYXNlInVuaXQiOmU9W28sdC51bml0X2lkXTticmVhaztkZWZhdWx0OmU9W29dfXJldHVybiBlLmZpbHRlcihCb29sZWFuKS5qb2luKCLigIkv4oCJIil9fSw5MzExOTgodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7aGFuZGxlVFZMaW5rc0NsaWNrOigpPT5hfSk7dmFyIGk9cyg0MDAxODEpLG89cyg2MDE1ODcpLG49cyg3MzA2NDUpO2NvbnN0IHI9ImlnbHU6Y29tLnRyYWRpbmd2aWV3L3dpZGdldF90dl9saW5rX2NsaWNrL2pzb25zY2hlbWEvMS0wLTAiO2Z1bmN0aW9uIGEoKXtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKHQ9Pntjb25zdCBlPXQudGFyZ2V0LmNsb3Nlc3QoIjpsaW5rIik7ZT8uaG9zdG5hbWUmJigwLG4uaXNJbnRlcm5hbEhvc3QpKGUuaG9zdG5hbWUsInRyYWRpbmd2aWV3LmNvbSIpJiZhc3luYyBmdW5jdGlvbih0LGUpe2NvbnN0IHM9ZnVuY3Rpb24oKXtjb25zdCB0PXdpbmRvdy5pbml0RGF0YS5oYXNoU2V0dGluZ3M7aWYoT2JqZWN0LmtleXModCkubGVuZ3RoPjApcmV0dXJuKDAsby5maWx0ZXJVdG1JbmZvKSh0KTtjb25zdCBlPW5ldyBVUkxTZWFyY2hQYXJhbXMobG9jYXRpb24uaHJlZik7cmV0dXJue3V0bV9jYW1wYWlnbjplLmdldCgidXRtX2NhbXBhaWduIil8fHZvaWQgMCx1dG1fc291cmNlOmUuZ2V0KCJ1dG1fc291cmNlIil8fHZvaWQgMH19KCk7KGF3YWl0KDAsaS5nZXRUcmFja2VyKSgpKT8udHJhY2tTZWxmRGVzYyhyLHt3aWRnZXRfdHlwZTpoKHMpLGRvbWFpbjpsKHMpLGxpbms6dCx0YXJnZXRfdHlwZTplfSl9KGUuaHJlZixlLmRhdGFzZXQudGFyZ2V0VHlwZXx8bnVsbCl9KSl9ZnVuY3Rpb24gbCh0KXtjb25zdCBlPWxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucz8uWzBdfHxkb2N1bWVudC5yZWZlcnJlcjtyZXR1cm4gdC51dG1fc291cmNlfHxmdW5jdGlvbih0KXt0cnl7cmV0dXJuIG5ldyBVUkwodCkuaG9zdH1jYXRjaCh0KXtyZXR1cm4iIn19KGUpfWZ1bmN0aW9uIGgodCl7aWYodC51dG1fY2FtcGFpZ24pcmV0dXJuIHQudXRtX2NhbXBhaWduO2NvbnN0IGU9bG9jYXRpb24ucGF0aG5hbWU7cmV0dXJuIGUuaW5jbHVkZXMoImVtYmVkLXdpZGdldCIpP2Uuc3BsaXQoIi8iKVsyXTplfX0sMzg5Mjk4KHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse3RyYWNrV2lkZ2V0TG9hZE1ldGFJbmZvOigpPT5vfSk7dmFyIGk9cyg0MDAxODEpO2FzeW5jIGZ1bmN0aW9uIG8odCl7TWF0aC5yYW5kb20oKT4uMDA1fHwoYXdhaXQoMCxpLmdldFRyYWNrZXIpKCkpPy50cmFja1NlbGZEZXNjKCJpZ2x1OmNvbS50cmFkaW5ndmlldy93aWRnZXRfbG9hZF9tZXRhX2luZm8vanNvbnNjaGVtYS8xLTAtMCIsdCl9fX1dKTs="}},"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.tradingview-widget.com/static/bundles/embed/44031.2691fc2c3468293bfd16.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.316Z","timestamp":1785126257316,"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-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/44031.2691fc2c3468293bfd16.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/crypto-mkt-screener/?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 04:24:17 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: \"6a61b1ff-90\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:17:35 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:26\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: c8e830e43aa16f7c6bde8824c9ea9f8f\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":144,"size_decoded":886,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with no line terminators","md5":"669466b98876123099594e1a8ff0556e","sha1":"f7b7d85273ef4a6de745e7d1977d6eaeb4e25f41","sha256":"634134c6e0cfe9953231051ead0975df8ee84bfbd6df8222218fdea0f1b04497","sha512":"ecd87db6f1f0eb9c5d7b76d4b2a7f4dbff140856b0addb002e166951b7c534f59c42c8acf7638bb7b769ecbb39022454b989196dfe7b376e759e63163119856f","ssdeep":"","tlshash":"48c02b8871c0302aba0f312ac33cc55830301940ec001f6a992de4f288c0fda13e2f39","first_seen":"2026-07-23T14:00:31.42266Z","last_seen":"2026-07-27T07:05:43.247776Z","times_seen":180,"resource_available":false,"data":"LnNlcGFyYXRvci1LSHR5TVRZR3tiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWVsZW1lbnQtZGl2aWRlci1iYWNrZ3JvdW5kLHZhcigtLWNvbG9yLXBvcHVwLW1lbnUtc2VwYXJhdG9yKSk7aGVpZ2h0OjFweDttYXJnaW46NnB4IDB9"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCASTER2.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.613Z","timestamp":1785126258613,"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 /crypto/XTVCASTER2.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 04:24:18 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: \"7efc496524d95d55a9f3dcdca773faaf\"\r\nlast-modified: Fri, 03 Oct 2025 20:27:25 GMT\r\ncdn-cachedat: 10/03/2025 22:08:26\r\nx-amz-id-2: Y63Xs2GnjtDzfhyS6wMBYu6fZ5nG6+cq5Ur06PnX/sKKnfxF54oFGdPBAkXKs2uuChSZWTWmc0Q=\r\nx-amz-request-id: 6FYPBS0GH7DQQX6E\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 7efc496524d95d55a9f3dcdca773faaf\r\ncdn-proxyver: 1.37\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: e05f63dd48c0087539d65b0385a05543\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":873,"size_decoded":1461,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (873), with no line terminators","md5":"7efc496524d95d55a9f3dcdca773faaf","sha1":"4ed67541becbbd807173dfcdde27f65d706d98ea","sha256":"750fcc75521ce3b4c1fec04289bbad59e68c68d2c2276cbc8b7b5fdd710e69c8","sha512":"0dbcb07193085f6dea3f155ff94fcfaa112298985ec3c1c2822a720fd9ae083ce8a82171bcef78fee8cc1578840a043fa2d9c800adb79e898d3aa747ab648886","ssdeep":"","tlshash":"6e11c07efb1c585df417902dfa3144b0634e606df64643e4d95aab79a00a2d6ed06420","first_seen":"2025-11-05T09:41:32.924955Z","last_seen":"2026-07-27T07:05:43.311691Z","times_seen":623,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTMuODYgMTAuMWguMDFhNC45MSA0LjkxIDAgMCAxLTMuNDQgMy42OCA1LjA1IDUuMDUgMCAwIDEtMy4xMS0uMWwuMTgtLjgyYTMuMTMgMy4xMyAwIDAgMSAyLjUxLTIuN2MuMjItLjA1LjYtLjA3IDEuMTItLjA3aDIuNzNabS04LjgyIDBjLjIzIDAgLjQzIDAgLjU4LjA0LjQ0LjEuOC4zMyAxLjA4LjY5LjMuMzUuNDMuNzYuNDMgMS4yIDAgLjE2LS4wMy4zNS0uMDkuNThhNzAuNzUgNzAuNzUgMCAwIDAtLjIuOWgtLjAyYTUuMSA1LjEgMCAwIDEtMi43LTMuNDFsLjAxLS4wMWguOTFaTTguODkgNHYuMDJsLS42IDIuODFhMy4xMyAzLjEzIDAgMCAxLTIuNiAyLjcyYy0uMi4wNC0uNDcuMDYtLjgxLjA1YTY0LjE2IDY0LjE2IDAgMCAwLS44NC0uMDJBNC45OCA0Ljk4IDAgMCAxIDguODkgNFptLjU0LjAyYTQuOTggNC45OCAwIDAgMSA0LjUgNS41OGgtMy4yNWExLjk0IDEuOTQgMCAwIDEtMi4wMi0xLjg3YzAtLjE3LjAzLS40My4xMi0uOGE0OTkuNDUgNDk5LjQ1IDAgMCAwIC42NS0yLjlaIiBmaWxsPSIjRjdENEFDIi8+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJhIiB4MT0iMy4zNSIgeTE9IjMuMTIiIHgyPSIyMS45IiB5Mj0iMjQuNDMiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjMUExRTIxIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMDYwNjBBIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PC9zdmc+"}},"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.tradingview-widget.com/static/bundles/embed/en.57291.7208384210f7c33bcce4.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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.244Z","timestamp":1785126257244,"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-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.57291.7208384210f7c33bcce4.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/ticker-tape/?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 04:24:17 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-9d1\"\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:19:10\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 04a585d2a15481dddf601e192a1db924\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":2513,"size_decoded":1834,"mime_type":"application/javascript; charset=utf-8","magic":"Unicode text, UTF-8 text, with very long lines (2511), with no line terminators","md5":"df08a1dd70ffac4f28fcc3d7dbbe08a4","sha1":"7ccdbd9c3c329f4aa7c79c73e2bb3943ea45ebef","sha256":"db9d406f4660f93fca8338121e3f490d121c0d8c145adf7b5255109dd254fc22","sha512":"ddbd2ec7971bce16527fb401f1a3a6162efc2a827a9684ba05c3c7a2453eac89da95cba33f9f32fce00d8e36547421b0446718bda2cf81251f62240f8a342978","ssdeep":"","tlshash":"3d512127d020d5f22f73ca08b792edd675f072a111f2e8da7b4a6f65c25bc5018395b4","first_seen":"2026-07-23T13:38:20.437954Z","last_seen":"2026-07-27T07:05:45.343944Z","times_seen":764,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1sxNzg1OSwzNzg2NSw0MDI0MCw0NzAzMCw1NzE4NCw1NzI5MSw5NDM4OF0sezU1ODQxMihlKXtlLmV4cG9ydHM9WyIlIG9mIEdEUCJdfSw0Njg0NjAoZSl7ZS5leHBvcnRzPVsiJSBvZiBwYXIiXX0sNDQ1MDUoZSl7ZS5leHBvcnRzPVsiRGlzYy4geWllbGQsICUiXX0sODU5OTk0KGUpe2UuZXhwb3J0cz1bIkMiXX0sODkyMzYzKGUpe2UuZXhwb3J0cz1bIkQiXX0sMzk0NTAxKGUpe2UuZXhwb3J0cz1bIkQiXX0sNTcwOTM5KGUpe2UuZXhwb3J0cz1bIkUiXX0sMzk0OTIxKGUpe2UuZXhwb3J0cz1bIkYiXX0sODY2NDQoZSl7ZS5leHBvcnRzPVsiUiJdfSw3NTY0NTcoZSl7ZS5leHBvcnRzPVsiUiJdfSwyNTczMjYoZSl7ZS5leHBvcnRzPVsiUyJdfSw1NTIxNShlKXtlLmV4cG9ydHM9WyJEZWxpc3RlZCJdfSw2ODUxMDQoZSl7ZS5leHBvcnRzPVsiSG9saWRheSJdfSw2Mzg0MDUoZSl7ZS5leHBvcnRzPVsiSW52YWxpZCBzeW1ib2wiXX0sODk3NTkxKGUpe2UuZXhwb3J0cz1bIk92ZXJuaWdodCB2aWEgQk9BVFMiXX0sMjc0NDE1KGUpe2UuZXhwb3J0cz1bIkxvYWRpbmciXX0sNzAyNzg4KGUpe2UuZXhwb3J0cz1bIk1hcmtldCBvcGVuIl19LDkxNDU3MihlKXtlLmV4cG9ydHM9WyJNYXJrZXQgY2xvc2VkIl19LDg2NzQ1NShlKXtlLmV4cG9ydHM9WyJQb3N0LW1hcmtldCJdfSw5MTg4NDIoZSl7ZS5leHBvcnRzPVsiUHJlLW1hcmtldCJdfSwzODQ1OTcoZSl7ZS5leHBvcnRzPVsiQ0ZEIl19LDY1NTIzNShlKXtlLmV4cG9ydHM9WyJDcnlwdG8iXX0sMzUwMTQ2KGUpe2UuZXhwb3J0cz1bIkFsbCJdfSw3NjU0NDAoZSl7ZS5leHBvcnRzPVsiQm9uZHMiXX0sNTQ4MzIyKGUpe2UuZXhwb3J0cz1bIkVjb25vbXkiXX0sOTc5OTcoZSl7ZS5leHBvcnRzPVsiRm9yZXgiXX0sNTA1MDc5KGUpe2UuZXhwb3J0cz1bIkZ1dHVyZXMiXX0sNTY0OTE3KGUpe2UuZXhwb3J0cz1bIkZ1bmRzIl19LDkyNzQxMShlKXtlLmV4cG9ydHM9WyJJbmRpY2VzIl19LDc5NjAwKGUpe2UuZXhwb3J0cz1bIk9wdGlvbnMiXX0sNTU1NTEwKGUpe2UuZXhwb3J0cz1bIlN0b2NrcyJdfSw1NzA2MihlKXtlLmV4cG9ydHM9WyJOL0EiXX0sMTExOTc2KGUpe2UuZXhwb3J0cz1bIjEgeWVhciJdfSwzMjgwMzAoZSl7ZS5leHBvcnRzPVsiMyBtb250aHMiXX0sMTk0MTk0KGUpe2UuZXhwb3J0cz1bIkNvbm5lY3RpbmciXX0sODY4ODEwKGUpe2UuZXhwb3J0cz1bIkJpbGxlZCBldmVyeSBtb250aC4iXX0sOTEzOTU1KGUpe2UuZXhwb3J0cz1bIkJpbGxlZCBldmVyeSB5ZWFyLiJdfSwyMjk1MjUoZSl7ZS5leHBvcnRzPVsiRGVsYXllZCJdfSw2MDE3NjQoZSl7ZS5leHBvcnRzPVsiRW5kIG9mIERheSJdfSw5Njg4MTUoZSl7ZS5leHBvcnRzPVsiRnJhY3Rpb24gcGFydCBpcyBpbnZhbGlkLiJdfSwzMjgzMTMoZSl7ZS5leHBvcnRzPVsiSW5zdHJ1bWVudCBpcyBub3QgYWxsb3dlZCJdfSw1NjIzOTUoZSl7ZS5leHBvcnRzPVsiU25hcHNob3QiXX0sODUwMjk4KGUpe2UuZXhwb3J0cz1bIlNlY29uZCBmcmFjdGlvbiBwYXJ0IGlzIGludmFsaWQuIl19LDk5MjM2MihlKXtlLmV4cG9ydHM9WyJTdHVkaWVzIGxpbWl0IGV4Y2VlZGVkOiB7bnVtYmVyfSBzdHVkaWVzIHBlciBsYXlvdXQuXG5QbGVhc2UsIHJlbW92ZSBzb21lIHN0dWRpZXMuIl19LDYxNjE4KGUpe2UuZXhwb3J0cz1bIlByaWNlIGZvcm1hdCBpcyBpbnZhbGlkLiJdfSw4MTQ2MShlKXtlLmV4cG9ydHM9WyJRdW90ZXMgYXJlIGRlbGF5ZWQgYnkge251bWJlcn0gbWluIl19LDc5MDUyNChlKXtlLmV4cG9ydHM9WyJRdW90ZXMgYXJlIGRlbGF5ZWQgYnkge251bWJlcn0gbWluIGFuZCB1cGRhdGVkIGV2ZXJ5IDMwIHNlY29uZHMiXX0sODgzOTI4KGUpe2UuZXhwb3J0cz1bIlJlYWwtdGltZSJdfSw5NzcyNyhlKXtlLmV4cG9ydHM9WyJSZXBsYXkgTW9kZSJdfSw5MzcwMTcoZSl7ZS5leHBvcnRzPVsiV2FybmluZyJdfSw3ODg0NDQoZSl7ZS5leHBvcnRzPVsiVGhpcyBzeW1ib2wgaXMgb25seSBhdmFpbGFibGUgb24gVHJhZGluZ1ZpZXciXX0sNTE3ODU5KGUpe2UuZXhwb3J0cz1bIlZpc2l0IFRyYWRpbmdWaWV3IOKAlCBmaW5hbmNpYWwgY2hhcnRpbmcgcGxhdGZvcm0gYW5kIHRyYWRpbmcgY29tbXVuaXR5Il19LDcyMTExOChlKXtlLmV4cG9ydHM9WyJhbm51YWxseSJdfSw2NTM2OShlKXtlLmV4cG9ydHM9WyJiaWxsZWQgbW9udGhseSJdfSwyNjAxOTMoZSl7ZS5leHBvcnRzPVsiYmlsbGVkIGFubnVhbGx5Il19LDU1NjU2OChlKXtlLmV4cG9ydHM9WyJtb250aGx5Il19LDg2Mzg1MihlKXtlLmV4cG9ydHM9WyJ0aHJlZSBtb250aHMiXX0sODM1OChlKXtlLmV4cG9ydHM9WyJ0cmlhbCJdfSwxNTM3NjYoZSl7ZS5leHBvcnRzPVsie3Byb1BsYW5OYW1lfSBUcmlhbCJdfSwzMjM0ODUoZSl7ZS5leHBvcnRzPVsibW9udGgiLCJtb250aHMiXX0sNDQyNjY2KGUpe2UuZXhwb3J0cz1bInllYXIiLCJ5ZWFycyJdfX1dKTs="}},"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.tradingview-widget.com/static/bundles/embed/embed_ticker_tape_widget.965c90dc6d41319f132d.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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.288Z","timestamp":1785126257288,"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-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_ticker_tape_widget.965c90dc6d41319f132d.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/ticker-tape/?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 04:24:17 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-4e48\"\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: a51f7aeedd57ece2a506e6906d25ba3d\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":20040,"size_decoded":8357,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3067)","md5":"8194369d30f2aef481ad9b0e75ee118e","sha1":"37a70e62467216b914515bcbdac9df29330d6ae5","sha256":"44ece61da7dd37300e68e5b567453707c97eafcbaccfab2e1cf62f6b05966071","sha512":"4371d06b7b2b3c3742f8395c8c142405ef02bdfae5eb8f48ebb626a5ef89ccac5e87891a1a1806d59bd827f4c45bd0043bcb15e4858bc5264022119f93954367","ssdeep":"384:sN6NujCBUjpEQ4aa20p3kHYB022b2jfMwttlhp4XYzNn0+fo1r7K/A5akkVC8WGq:sMsjCBmEQ4aa26y22b2jfMwt1p4XYhDS","tlshash":"7492e9133394247b80ea44eb91fd4647b6224888f6828818b96ccdce276ddd935b7f7d","first_seen":"2026-07-23T13:38:20.453766Z","last_seen":"2026-07-27T07:05:45.397227Z","times_seen":479,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s0NzY3M10sezc1ODA1OShlKXtlLmV4cG9ydHM9eyJjc3MtdmFsdWUtdGlja2VyLWl0ZW0tdGFwZS1wYWRkaW5nIjoiMTZweCIsImNzcy12YWx1ZS10aWNrZXItaXRlbS10YXBlLWhlaWdodC1ub3JtYWwiOiI0NHB4IiwiY3NzLXZhbHVlLXRpY2tlci1pdGVtLXRhcGUtaGVpZ2h0LWNvbXBhY3QiOiI3MnB4IiwiY3NzLXZhbHVlLXRpY2tlci1pdGVtLXRhcGUtc2tlbGV0b24td2lkdGgtbm9ybWFsIjoiMzQ2cHgiLCJjc3MtdmFsdWUtdGlja2VyLWl0ZW0tdGFwZS1za2VsZXRvbi13aWR0aC1jb21wYWN0IjoiMTI1cHgifX0sMzE5MDk2KGUpe2UuZXhwb3J0cz17ImNzcy12YWx1ZS10aWNrZXItaXRlbS10YXBlLWhlaWdodC1ub3JtYWwiOiI0NHB4IiwiY3NzLXZhbHVlLXRpY2tlci1pdGVtLXRhcGUtaGVpZ2h0LWNvbXBhY3QiOiI3MnB4IiwiY3NzLXZhbHVlLXRpY2tlci1pdGVtLXRhcGUtc2tlbGV0b24td2lkdGgtbm9ybWFsIjoiMzQ2cHgiLCJjc3MtdmFsdWUtdGlja2VyLWl0ZW0tdGFwZS1za2VsZXRvbi13aWR0aC1jb21wYWN0IjoiMTI1cHgiLCJjc3MtdmFsdWUtdGlja2VyLWl0ZW0tdGFwZS1wYWRkaW5nIjoiMTZweCJ9fSwzOTkwOTIoZSl7ZS5leHBvcnRzPXsiY3NzLXZhbHVlLWNvcHlyaWdodC10cmFuc2l0aW9uLXBhcmFtcyI6Ii42cyAwcyBjdWJpYy1iZXppZXIoLjQsIC4wMSwgLjIyLCAxKSIsImNzcy12YWx1ZS1jb3B5cmlnaHQtdHJhbnNpdGlvbi1wYXJhbXMtaGFsZi10aW1lIjoiLjNzIDBzIGN1YmljLWJlemllciguNCwgLjAxLCAuMjIsIDEpIixsYWJlbDoibGFiZWwtZHpiZDdseVYiLGxvZ29XcmFwOiJsb2dvV3JhcC1kemJkN2x5ViIsZXhwYW5kZWRXaXRoVHJhbnNpdGlvbjoiZXhwYW5kZWRXaXRoVHJhbnNpdGlvbi1kemJkN2x5ViIsZXhwYW5kZWRCeUNsaWNrOiJleHBhbmRlZEJ5Q2xpY2stZHpiZDdseVYiLHN0YXJ0OiJzdGFydC1kemJkN2x5ViIsZW5kOiJlbmQtZHpiZDdseVYiLHNuYXA6InNuYXAtZHpiZDdseVYiLHRvcDoidG9wLWR6YmQ3bHlWIixib3R0b206ImJvdHRvbS1kemJkN2x5ViIsbGFyZ2U6ImxhcmdlLWR6YmQ3bHlWIixleHBhbmRlZDoiZXhwYW5kZWQtZHpiZDdseVYiLGxhYmVsX19saW5rOiJsYWJlbF9fbGluay1kemJkN2x5ViJ9fSw4NjcwNTEoZSl7ZS5leHBvcnRzPXt0aWNrZXJUYXBlOiJ0aWNrZXJUYXBlLU5fa3lwanQ5Iixub0F1dG9TY3JvbGw6Im5vQXV0b1Njcm9sbC1OX2t5cGp0OSIsdGFwZToidGFwZS1OX2t5cGp0OSIsaGVhZDoiaGVhZC1OX2t5cGp0OSIsdGFpbDoidGFpbC1OX2t5cGp0OSIsc2tlbGV0b246InNrZWxldG9uLU5fa3lwanQ5In19LDE1MDE1MChlLHQsaSl7InVzZSBzdHJpY3QiO2kuZCh0LHtndWlkOigpPT5uLHJhbmRvbUhhc2g6KCk9PmEscmFuZG9tSGFzaE46KCk9Pm99KTtjb25zdCBzPSIwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWiI7ZnVuY3Rpb24gbigpe3JldHVybiJ4eHh4eHh4eC14eHh4LTR4eHgteXh4eC14eHh4eHh4eHh4eHgiLnJlcGxhY2UoL1t4eV0vZywoZT0+e2NvbnN0IHQ9MTYqTWF0aC5yYW5kb20oKXwwO3JldHVybigieCI9PT1lP3Q6MyZ0fDgpLnRvU3RyaW5nKDE2KX0pKX1mdW5jdGlvbiBhKCl7cmV0dXJuIG8oMTIpfWZ1bmN0aW9uIG8oZSl7bGV0IHQ9IiI7Zm9yKGxldCBpPTA7aTxlOysraSl7Y29uc3QgZT1NYXRoLmZsb29yKDYyKk1hdGgucmFuZG9tKCkpO3QrPXNbZV19cmV0dXJuIHR9fSwxMzY5OTEoZSx0LGkpeyJ1c2Ugc3RyaWN0IjtpLmQodCx7Q29weXJpZ2h0UG9zaXRpb246KCk9PnMsY29weXJpZ2h0TGFiZWw6KCk9PmR9KTt2YXIgcyxuPWkoMTg1MjcxKSxhPWkoOTE0NDg3KSxvPWkubihhKSxyPWkoNjAxODQxKSxsPWkoMzg3MjMxKSxjPWkoMzk5MDkyKTtmdW5jdGlvbiBkKHtzdmdUZXh0OmUsaWNvbjp0LHRoZW1lOmEsdXJsOmQsbW9kZTpoLHZlcnRpY2FsUG9zaXRpb246bT1zLlZlcnRpY2FsLkJvdHRvbSxob3Jpem9udGFsUG9zaXRpb246cD1zLkhvcml6b250YWwuRW5kLHNuYXBUb0VkZ2U6dT0hMCxpc0V4cGFuZGVkOmc9ITEsY2xhc3NOYW1lOl99KXtsZXQgdjtzd2l0Y2goaCl7Y2FzZSJuZXciOmNhc2Uid2l0aF9ib3JkZXIiOmNhc2UibGFyZ2VfdHJhZGUiOnY9KDAsci5jbG9uZSkoYSk7YnJlYWs7ZGVmYXVsdDp2PSgwLGwubWVyZ2VUaGVtZXMpKCgwLHIuY2xvbmUpKGMpLGEpfWNvbnN0IHk9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO2xldCBiO2QmJihiPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKSxiLmNsYXNzTGlzdC5hZGQoLi4udi5sYWJlbF9fbGluay5zcGxpdCgvXHMvKSksYi5ocmVmPWQsYi50YXJnZXQ9Il9ibGFuayIsYi5yZWw9Im5vb3BlbmVyIG5vcmVmZXJyZXIiLGIuc2V0QXR0cmlidXRlKCJkYXRhLXRhcmdldC10eXBlIiwiY29weXJpZ2h0IiksYi5hcmlhTGFiZWw9bi50KG51bGwsdm9pZCAwLGkoNTE3ODU5KSkseS5hcHBlbmQoYikpLHkuY2xhc3NOYW1lPW8oKSh2LmxhYmVsLHA9PT1zLkhvcml6b250YWwuU3RhcnQmJnYuc3RhcnQscD09PXMuSG9yaXpvbnRhbC5FbmQmJnYuZW5kLG09PT1zLlZlcnRpY2FsLlRvcCYmdi50b3AsbT09PXMuVmVydGljYWwuQm90dG9tJiZ2LmJvdHRvbSx1JiYibGFyZ2VfdHJhZGUiIT09aCYmdi5zbmFwLCJsYXJnZV9vbGQiPT09aCYmdi5sYXJnZSwoZ3x8ImxhcmdlX3RyYWRlIj09PWgpJiZ2LmV4cGFuZGVkLF8sImpzLWNvcHlyaWdodC1sYWJlbCIpLHkuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCgoKT0+e2Z1bmN0aW9uIGUoKXt5LmNsYXNzTGlzdC5yZW1vdmUodi5leHBhbmRlZEJ5Q2xpY2spLHkucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsZSl9CnkuY2xhc3NMaXN0LmNvbnRhaW5zKHYuZXhwYW5kZWRXaXRoVHJhbnNpdGlvbil8fHkuY2xhc3NMaXN0LmNvbnRhaW5zKHYuZXhwYW5kZWQpfHwoeS5jbGFzc0xpc3QuY29udGFpbnModi5leHBhbmRlZEJ5Q2xpY2spP2R8fGUoKTooeS5jbGFzc0xpc3QuYWRkKHYuZXhwYW5kZWRCeUNsaWNrKSx5LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLGUpKSl9KSk7Y29uc3Qgaz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7ay5jbGFzc05hbWU9di5sb2dvV3JhcCxrLmlubmVySFRNTD10O2NvbnN0IGY9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO3JldHVybiBmLmNsYXNzTmFtZT12LnN2Z1RleHRXcmFwLGYuaW5uZXJIVE1MPWUseS5hcHBlbmQoayxmKSxbeSx2XX0hZnVuY3Rpb24oZSl7bGV0IHQsaTshZnVuY3Rpb24oZSl7ZVtlLkJvdHRvbT0wXT0iQm90dG9tIixlW2UuVG9wPTFdPSJUb3AifSh0PWUuVmVydGljYWx8fChlLlZlcnRpY2FsPXt9KSksZnVuY3Rpb24oZSl7ZVtlLlN0YXJ0PTBdPSJTdGFydCIsZVtlLkVuZD0xXT0iRW5kIn0oaT1lLkhvcml6b250YWx8fChlLkhvcml6b250YWw9e30pKX0oc3x8KHM9e30pKX0sNjUzODE3KGUsdCxpKXsidXNlIHN0cmljdCI7aS5kKHQse0NvcHlyaWdodFBvc2l0aW9uOigpPT5hLkNvcHlyaWdodFBvc2l0aW9uLGNyZWF0ZUNvcHlyaWdodExhYmVsOigpPT5yfSk7dmFyIHM9aSg5MTQ0ODcpLG49aS5uKHMpLGE9aSgxMzY5OTEpLG89aSg1Mjg4NjQpO2Z1bmN0aW9uIHIoe3NoZXJpZmZPcHRpb25zOmUsLi4udH0pe2NvbnN0W2ksc109KDAsYS5jb3B5cmlnaHRMYWJlbCkodCkscj1lJiZlLmluY2x1ZGVzKG8uS25vd25BY3Rpb24uRXhwYW5kKSxsPWUmJmUuaW5jbHVkZXMoby5Lbm93bkFjdGlvbi5MYXJnZVRyYWRlTG9nbyk7cmV0dXJuIGkuY2xhc3NOYW1lPW4oKShpLmNsYXNzTmFtZSwocnx8bCkmJnMuZXhwYW5kZWRXaXRoVHJhbnNpdGlvbiksaX19LDUyODg2NChlLHQsaSl7InVzZSBzdHJpY3QiO3ZhciBzO2kuZCh0LHtLbm93bkFjdGlvbjooKT0+cyx3aWRnZXRTaGVyaWZmQWN0aW9uczooKT0+bn0pLGZ1bmN0aW9uKGUpe2UuRXhwYW5kPSJleHBhbmQtbG9nbyIsZS5MYXJnZVRyYWRlTG9nbz0ibGFyZ2UtdHJhZGUtbG9nbyJ9KHN8fChzPXt9KSk7Y29uc3Qgbj1uZXcgU2V0KFtzLkV4cGFuZCxzLkxhcmdlVHJhZGVMb2dvXSl9LDExMjU0MihlLHQsaSl7InVzZSBzdHJpY3QiO2kuZCh0LHtnZXRDU1NQcm9wZXJ0eTooKT0+cixnZXRDU1NQcm9wZXJ0eU51bWVyaWNWYWx1ZTooKT0+bCxnZXRDb250ZW50V2lkdGg6KCk9PmEsZ2V0U2Nyb2xsYmFyV2lkdGg6KCk9PnMsbWF0Y2hNZWRpYU1pbk1heDooKT0+bixzZXRTdHlsZTooKT0+b30pO2NvbnN0IHM9KCgpPT57bGV0IGU7cmV0dXJuKCk9PntpZih2b2lkIDA9PT1lKXtjb25zdCB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLGk9dC5zdHlsZTtpLnZpc2liaWxpdHk9ImhpZGRlbiIsaS53aWR0aD0iMTAwcHgiLGkubXNPdmVyZmxvd1N0eWxlPSJzY3JvbGxiYXIiLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodCk7Y29uc3Qgcz10Lm9mZnNldFdpZHRoO3Quc3R5bGUub3ZlcmZsb3c9InNjcm9sbCI7Y29uc3Qgbj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtuLnN0eWxlLndpZHRoPSIxMDAlIix0LmFwcGVuZENoaWxkKG4pO2NvbnN0IGE9bi5vZmZzZXRXaWR0aDt0LnBhcmVudE5vZGU/LnJlbW92ZUNoaWxkKHQpLGU9cy1hfXJldHVybiBlfX0pKCk7ZnVuY3Rpb24gbihlLHQpe3JldHVybiB0PT09MS8wP3dpbmRvdy5tYXRjaE1lZGlhKGAobWluLXdpZHRoOiAke2V9cHgpYCk6d2luZG93Lm1hdGNoTWVkaWEoYChtaW4td2lkdGg6ICR7ZX1weCkgYW5kIChtYXgtd2lkdGg6ICR7dH1weClgKX1mdW5jdGlvbiBhKGUpe3JldHVybiBsKGUsIndpZHRoIiktbChlLCJwYWRkaW5nLWxlZnQiKS1sKGUsInBhZGRpbmctcmlnaHQiKX1mdW5jdGlvbiBvKGUsdCxpKXtudWxsIT09ZSYmZS5zdHlsZS5zZXRQcm9wZXJ0eSh0LGkpfWZ1bmN0aW9uIHIoZSx0KXtyZXR1cm4gZ2V0Q29tcHV0ZWRTdHlsZShlLG51bGwpLmdldFByb3BlcnR5VmFsdWUodCl9ZnVuY3Rpb24gbChlLHQpe3JldHVybiBwYXJzZUludChyKGUsdCkpfX0sMzE4OTc0KGUsdCxpKXsidXNlIHN0cmljdCI7aS5kKHQse0NoZWNrTW9iaWxlOigpPT5jLGlzRGVza3RvcEFwcDooKT0+cixpc01hYzooKT0+byxpc1N5bXBob255RW1iZWQ6KCk9Pmwsb25XaWRnZXQ6KCk9Pm4ub25XaWRnZXQsc3VwcG9ydFRvdWNoOigpPT5kfSk7dmFyIHM9aSg3Mzg0NTgpLG49aSgzNzcyMjYpO2NvbnN0IGE9d2luZG93LlRyYWRpbmdWaWV3PXdpbmRvdy5UcmFkaW5nVmlld3x8e307ZnVuY3Rpb24gbygpe3JldHVybiBzLmlzTWFjfWZ1bmN0aW9uIHIoKXtyZXR1cm4vVFZEZXNrdG9wL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KX1mdW5jdGlvbiBsKCl7cmV0dXJuIGEuaXNTeW1waG9ueXx8ITF9Y29uc3QgYz17QW5kcm9pZDooKT0+cy5pc0FuZHJvaWQsQmxhY2tCZXJyeTooKT0+cy5pc0JsYWNrQmVycnksaU9TOigpPT5zLmlzSU9TLE9wZXJhOigpPT5zLmlzT3BlcmFNaW5pLGlzSVBhZDooKT0+cy5pc0lQYWQsYW55OigpPT5zLmlzQW55TW9iaWxlfTtmdW5jdGlvbiBkKCl7cmV0dXJuIHMubW9iaWxldG91Y2h8fHMudG91Y2h8fHMuaXNBbnlNb2JpbGV9YS5pc01vYmlsZT1jLGEub25XaWRnZXQ9bi5vbldpZGdldDtzLmlzQ2hyb21lLHMuaXNGRixzLmlzRWRnZSxzLmlzU2FmYXJpfSw5NDY2NzEoZSx0LGkpeyJ1c2Ugc3RyaWN0IjtpKDc5NTM4MyksaSg3MjI1NzEpO3ZhciBzPWkoMTg1MjcxKSxuPWkoNTQ3ODUxKSxhPShpKDMxOTA5NiksaSg4NDU1MTApKSxvPWkoODM3ODIyKSxyPWkoOTg2Mjc1KSxsPWkoNDQzNTU3KSxjPWkoNjQxNTkzKSxkPWkoOTE0NDg3KSxoPWkubihkKTtjbGFzcyBtIGV4dGVuZHMgYS5UaWNrZXJJdGVtQWJzdHJhY3R7Y29uc3RydWN0b3IoZSx0LGkpe3N1cGVyKGUsdCxpKSx0aGlzLl9vcHRpb25zPWl8fHt9fXNldFdpZHRoKGUpe3RoaXMuX2VsLnN0eWxlLnNldFByb3BlcnR5KCJ3aWR0aCIsZSsicHgiKX0KZ2V0V2lkdGgoKXtpZighZG9jdW1lbnQuYm9keS5jb250YWlucyh0aGlzLl9lbCkpdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgZ2V0IHRpY2tlciBpdGVtIHdpZHRoLCBiZWNhdXNlIHRoZSBlbGVtZW50IGlzIG5vdCBhdHRhY2hlZCB0byBET00iKTtyZXR1cm4gdGhpcy5fZWwuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGh9cmVzZXRXaWR0aCgpe3RoaXMuX2VsLnN0eWxlLnJlbW92ZVByb3BlcnR5KCJ3aWR0aCIpfXRvZ2dsZUNvbXBhY3RNb2RlKGUpe3RoaXMuX2VsLmNsYXNzTGlzdC50b2dnbGUoYCR7dGhpcy5fZ2V0Q2xhc3MoKX0tLWNvbXBhY3RgLGUpfXRvZ2dsZVRyYW5zcGFyZW5jeShlKXt0aGlzLl9lbC5jbGFzc0xpc3QudG9nZ2xlKGAke3RoaXMuX2dldENsYXNzKCl9LS10cmFuc3BhcmVudGAsZSl9c2V0VmlldyhlLHQsaSl7dGhpcy5zZXRXaWR0aChlKSx0aGlzLnRvZ2dsZUNvbXBhY3RNb2RlKHQpLHRoaXMudG9nZ2xlVHJhbnNwYXJlbmN5KGkpfXN0YXRpYyBnZXRTa2VsZXRvbkVsZW1lbnQoZSx0KXtjb25zdCBpPWA8ZGl2IGNsYXNzPSIke2goKSgidHYtdGlja2VyLWl0ZW0tdGFwZSIsInR2LXRpY2tlci1pdGVtLXRhcGUtLXNrZWxldG9uIix7InR2LXRpY2tlci1pdGVtLXRhcGUtLWNvbXBhY3QiOmUsInR2LXRpY2tlci1pdGVtLXRhcGUtLXRyYW5zcGFyZW50Ijp0fSl9Ij48ZGl2IGNsYXNzPSJ0di10aWNrZXItaXRlbS10YXBlX19ib3JkZXItd3JhcHBlciI+PGRpdiBjbGFzcz0idHYtdGlja2VyLWl0ZW0tdGFwZV9faW5uZXItd3JhcHBlciI+PGRpdiBjbGFzcz0idHYtdGlja2VyLWl0ZW0tdGFwZV9fc2hvcnQtbmFtZS13cmFwcGVyIj48L2Rpdj48ZGl2IGNsYXNzPSJ0di10aWNrZXItaXRlbS10YXBlX19sYXN0LXdyYXBwZXIiPjwvZGl2PjxkaXYgY2xhc3M9InR2LXRpY2tlci1pdGVtLXRhcGVfX2NoYW5nZS13cmFwcGVyIj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj5gO3JldHVybigwLGwucGFyc2VIdG1sRWxlbWVudCkoaSl9X2dldENsYXNzKCl7cmV0dXJuInR2LXRpY2tlci1pdGVtLXRhcGUifV9nZXRWaWV3KCl7Y29uc3QgZT17Ym9yZGVyV3JhcHBlcjp0aGlzLl9nZXRFbGVtZW50Q2xhc3MoImJvcmRlci13cmFwcGVyIiksaW5uZXJXcmFwcGVyOnRoaXMuX2dldEVsZW1lbnRDbGFzcygiaW5uZXItd3JhcHBlciIpLHN5bWJvbDp0aGlzLl9nZXRFbGVtZW50Q2xhc3MoInN5bWJvbCIpLGljb25XcmFwcGVyOnRoaXMuX2dldEVsZW1lbnRDbGFzcygiaWNvbi13cmFwcGVyIiksc2hvcnROYW1lV3JhcHBlcjp0aGlzLl9nZXRFbGVtZW50Q2xhc3MoInNob3J0LW5hbWUtd3JhcHBlciIpLHNob3J0TmFtZTp0aGlzLl9nZXRFbGVtZW50Q2xhc3MoInNob3J0LW5hbWUiKSxsYXN0V3JhcHBlcjp0aGlzLl9nZXRFbGVtZW50Q2xhc3MoImxhc3Qtd3JhcHBlciIpLGxhc3Q6dGhpcy5fZ2V0RWxlbWVudENsYXNzKCJsYXN0IiksY2hhbmdlV3JhcHBlcjp0aGlzLl9nZXRFbGVtZW50Q2xhc3MoImNoYW5nZS13cmFwcGVyIiksY2hhbmdlQWJzOnRoaXMuX2dldEVsZW1lbnRDbGFzcygiY2hhbmdlLWFicyIpLGNoYW5nZVB0OnRoaXMuX2dldEVsZW1lbnRDbGFzcygiY2hhbmdlLXB0Iil9LHQ9dGhpcy5fc3ltYm9sRGF0YS50aXRsZXx8dGhpcy5fc3ltYm9sRGF0YS5kZXNjcmlwdGlvbixpPXRoaXMuX29wdGlvbnMuc2hvd1N5bWJvbExvZ287cmV0dXJuYDxkaXYgY2xhc3M9IiR7ZS5ib3JkZXJXcmFwcGVyfSI+PGRpdiBjbGFzcz0iJHtlLmlubmVyV3JhcHBlcn0iPjxkaXYgY2xhc3M9JHtlLnN5bWJvbH0+PGRpdiBjbGFzcz0iJHtlLmljb25XcmFwcGVyfSBqcy1oZWFkZXItaWNvbiI+XG5cdFx0XHRcdFx0XHRcdCR7aT8oMCxvLmdldENpcmNsZUxvZ29BbnlIdG1sKSh7bG9nb1VybHM6W10sc2l6ZTp0aGlzLl9vcHRpb25zLmlzQ29tcGFjdE1vZGU/Inh4eHNtYWxsIjoieHNtYWxsIixjbGFzc05hbWU6dGhpcy5fZ2V0RWxlbWVudENsYXNzKCJpY29uIil9KToiIn1cblx0XHRcdFx0XHRcdDwvZGl2PjxkaXYgY2xhc3M9IiR7ZS5zaG9ydE5hbWVXcmFwcGVyfSI+PHNwYW4gY2xhc3M9IiR7aCgpKGUuc2hvcnROYW1lLCF0JiYianMtc3ltYm9sLXNob3J0LW5hbWUiKX0iPiR7KDAsYy5odG1sRXNjYXBlKSh0fHwiIil9PC9zcGFuPjxzcGFuIGNsYXNzPSJqcy1zeW1ib2wtc2Vzc2lvbi1zdGF0dXMiPjwvc3Bhbj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSIke2UubGFzdFdyYXBwZXJ9Ij48c3BhbiBjbGFzcz0iJHtlLmxhc3R9IGpzLXN5bWJvbC1sYXN0Ij48L3NwYW4+PHNwYW4gY2xhc3M9ImpzLWRhdGEtbW9kZSI+PC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9IiR7ZS5jaGFuZ2VXcmFwcGVyfSBqcy1zeW1ib2wtY2hhbmdlLWRpcmVjdGlvbiI+PHNwYW4gY2xhc3M9IiR7ZS5jaGFuZ2VBYnN9IGpzLXN5bWJvbC1jaGFuZ2UiPjwvc3Bhbj4mbmJzcDxzcGFuIGNsYXNzPSIke2UuY2hhbmdlUHR9IGpzLXN5bWJvbC1jaGFuZ2UtcHQiPjwvc3Bhbj48L2Rpdj48L2Rpdj48L2Rpdj5gfV9nZXRUaWNrZXJPcHRpb25zKCl7cmV0dXJue2RvbnREeWVQcmljZTohMCxzaWduUG9zaXRpdmU6ITAsc2lnbk5lZ2F0aXZlOiEwLGNoYW5nZUluQnJhY2tldHM6ITEsY2hhbmdlUGVyY2VudEluQnJhY2tldHM6ITAsY2hhbmdlRGlyZWN0aW9uVXBDbGFzczpgJHt0aGlzLl9nZXRFbGVtZW50Q2xhc3MoImNoYW5nZS13cmFwcGVyIil9LS11cGAsY2hhbmdlRGlyZWN0aW9uRG93bkNsYXNzOmAke3RoaXMuX2dldEVsZW1lbnRDbGFzcygiY2hhbmdlLXdyYXBwZXIiKX0tLWRvd25gLGxhc3RHcm93aW5nQ2xhc3M6YCR7dGhpcy5fZ2V0RWxlbWVudENsYXNzKCJsYXN0Iil9LS1ncm93aW5nYCxsYXN0RmFsbGluZ0NsYXNzOmAke3RoaXMuX2dldEVsZW1lbnRDbGFzcygibGFzdCIpfS0tZmFsbGluZ2Asc2Vzc2lvblN0YXR1c0NsYXNzU3VmZml4OiItLWZvci10aWNrZXItdGFwZSIsZGF0YU1vZGVDbGFzc1N1ZmZpeDoiLS1mb3ItdGlja2VyLXRhcGUiLHNob3dJbnZhbGlkU3ltYm9sU3RhdHVzOiEwLGluZGljYXRvcnNUb29sdGlwVHlwZToiYnJvd3NlciIsc2V0U3RhdGVIb29rOnRoaXMuX29wdGlvbnMuc2hvd1N5bWJvbExvZ28/KDAsCnIuZ2V0TG9nb1VybHNIb29rKSgoZT0+e2NvbnN0IHQ9dGhpcy5fb3B0aW9ucy5pc0NvbXBhY3RNb2RlPyJ4eHhzbWFsbCI6InhzbWFsbCI7dGhpcy5fcmVuZGVyU3ltYm9sTG9nbyhlLHQpfSkpOnZvaWQgMH19fXZhciBwPWkoNTI3MzIzKSx1PWkubihwKSxnPWkoNzQ5NjQ4KTtjb25zdCBfPXtkZXNrdG9wOjEvMCxkZXNrdG9wSGQ6MTkxOSxwaG9uZTo3NjcsInBob25lLXZlcnRpY2FsIjo0NzksdGFibGV0OjEwMTl9O3ZhciB2PWkoMTEyNTQyKTtjbGFzcyB5IGV4dGVuZHModSgpKXtjb25zdHJ1Y3Rvcigpe3N1cGVyKCksdGhpcy53aWR0aD0wLHRoaXMuaGVpZ2h0PTAsdGhpcy5kZXZpY2U9bnVsbCx0aGlzLmJyZWFrcG9pbnRzPV8sdGhpcy5fY2hlY2tEZXZpY2UoKSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIix0aGlzLl9jaGVja0RldmljZSksT2JqZWN0LmVudHJpZXMoXykuc29ydCgoKFtlLHRdLFtpLHNdKT0+dC1zKSkuZm9yRWFjaCgoKFtlLHRdLGkscyk9PntsZXQgbjtpZigwIT09aSl7Y29uc3RbLGVdPXNbaS0xXTtuPWUrMX1lbHNlIG49MDtjb25zdCBhPSgwLHYubWF0Y2hNZWRpYU1pbk1heCkobix0KTthLm1hdGNoZXMmJnRoaXMuX3NldE5ld0RldmljZShlKSxhLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsKHQ9Pnt0Lm1hdGNoZXMmJih0aGlzLl9jaGVja0RldmljZSgpLHRoaXMuX3NldE5ld0RldmljZShlKSl9KSl9KSksKDAsZy53aGVuRG9jdW1lbnRSZWFkeSkodGhpcy5fY2hlY2tEZXZpY2UuYmluZCh0aGlzKSksdGhpcy5pc1Bob25lU2l6ZURldmljZS5iaW5kKHRoaXMpfWlzUGhvbmVTaXplRGV2aWNlKCl7cmV0dXJuInBob25lIj09PXRoaXMuZGV2aWNlfHwicGhvbmUtdmVydGljYWwiPT09dGhpcy5kZXZpY2V9X2NoZWNrRGV2aWNlKCl7dGhpcy53aWR0aD13aW5kb3cuaW5uZXJXaWR0aCx0aGlzLmhlaWdodD13aW5kb3cuaW5uZXJIZWlnaHR9X3NldE5ld0RldmljZShlKXtjb25zdCB0PXRoaXMuZGV2aWNlO3RoaXMuZGV2aWNlPWUsdGhpcy50cmlnZ2VyKCJjaGFuZ2VEZXZpY2UiLFtlLHRdKX19Y29uc3QgYj1uZXcgeTt2YXIgayxmLHcsRSxDPWkoMTUwMTUwKSx4PWkoOTY5MTY4KTshZnVuY3Rpb24oZSl7ZS5BZGFwdGl2ZT0iYWRhcHRpdmUiLGUuUmVndWxhcj0icmVndWxhciIsZS5Db21wYWN0PSJjb21wYWN0In0oa3x8KGs9e30pKSxmdW5jdGlvbihlKXtlLkFsbFN5bWJvbHM9ImFsbF9zeW1ib2xzIixlLk1hcmtldD0ibWFya2V0IixlLlN5bWJvbD0ic3ltYm9sIn0oZnx8KGY9e30pKSxmdW5jdGlvbihlKXtlLkNyeXB0b2N1cnJlbmNpZXM9ImNyeXB0byIsZS5DdXJyZW5jaWVzPSJmb3JleCIsZS5TdG9ja3M9InN0b2NrIixlLkluZGljZXM9ImluZGV4IixlLkZ1dHVyZXM9ImZ1dHVyZXMiLGUuQm9uZHM9ImNmZCJ9KHd8fCh3PXt9KSksZnVuY3Rpb24oZSl7ZS5IVE1MPSJodG1sIixlLlJlYWN0PSJyZWFjdCJ9KEV8fChFPXt9KSk7dmFyIFQ9aSgyMzIzNjQpLEw9aSg5NDgzODApO3ZhciBTOyFmdW5jdGlvbihlKXtlW2UuVGlja2VySXRlbUhlaWdodE5vcm1hbD00NF09IlRpY2tlckl0ZW1IZWlnaHROb3JtYWwiLGVbZS5UaWNrZXJJdGVtSGVpZ2h0Q29tcGFjdD03Ml09IlRpY2tlckl0ZW1IZWlnaHRDb21wYWN0In0oU3x8KFM9e30pKTtjb25zdCBXPV8ucGhvbmU7ZnVuY3Rpb24gTSgpe3JldHVybiB3aW5kb3cuaW5uZXJXaWR0aDw9V31mdW5jdGlvbiBJKGUpe3JldHVybiBlPzcyOjQ0fWNsYXNzIE4gZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3Rvcigpe3N1cGVyKCJDYW5jZWxUb2tlbiIpfX12YXIgVj1pKDc1ODA1OSksRD1pKDg2NzA1MSk7Y29uc3QgQT1zLnQobnVsbCx2b2lkIDAsaSg3ODg0NDQpKTt2YXIgejshZnVuY3Rpb24oZSl7ZS5BbmltYXRpb25OYW1lPSJ0aWNrZXItdGFwZS1zY3JvbGwiLGVbZS5MYXN0UmVzb2x2ZVRpbWVvdXQ9MmUzXT0iTGFzdFJlc29sdmVUaW1lb3V0IixlW2UuUmVzaXplRGVib3VuY2U9MzAwXT0iUmVzaXplRGVib3VuY2UifSh6fHwoej17fSkpO2NvbnN0IFA9cGFyc2VJbnQoVlsiY3NzLXZhbHVlLXRpY2tlci1pdGVtLXRhcGUtc2tlbGV0b24td2lkdGgtbm9ybWFsIl0pLCQ9cGFyc2VJbnQoVlsiY3NzLXZhbHVlLXRpY2tlci1pdGVtLXRhcGUtc2tlbGV0b24td2lkdGgtY29tcGFjdCJdKSxCPXBhcnNlSW50KFZbImNzcy12YWx1ZS10aWNrZXItaXRlbS10YXBlLXBhZGRpbmciXSk7ZnVuY3Rpb24gSChlKXtjb25zdCB0PWUuZ2V0RWxlbWVudCgpO2lmKHQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgianMtZXhjbGFtYXRpb25lZC1zeW1ib2wiKS5sZW5ndGgpcmV0dXJuO2NvbnN0IGk9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO2kuY2xhc3NMaXN0LmFkZCgidHYtdGlja2VyLWl0ZW0tdGFwZV9fc3ltYm9sLWV4Y2xhbWF0aW9uLW1hcmsiLCJqcy1leGNsYW1hdGlvbmVkLXN5bWJvbCIpLGkuc2V0QXR0cmlidXRlKCJ0aXRsZSIsQSk7Y29uc3Qgcz10LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoInR2LXRpY2tlci1pdGVtLXRhcGVfX3Nob3J0LW5hbWUtd3JhcHBlciIpLml0ZW0oMCk7cyYmcy5hcHBlbmRDaGlsZChpKX1mdW5jdGlvbiBSKGUpe2NvbnN0IHQ9bmV3IFByb21pc2UoKHQ9Pntjb25zdCBpPSgpPT50KCEwKTtlLm9uSW5pdC5zdWJzY3JpYmUobnVsbCwoZT0+e3ZhciB0O2U/aSgpOih0PTJlMyxuZXcgUHJvbWlzZSgoZT0+e3NldFRpbWVvdXQoZSx0KX0pKSkudGhlbihpKX0pLCEwKX0pKSxpPW5ldyBQcm9taXNlKCh0PT57ZS5vbkVycm9yLnN1YnNjcmliZShudWxsLCgoKT0+e0goZSksdCghMSl9KSwhMCl9KSk7cmV0dXJuIFByb21pc2UucmFjZShbdCxpXSl9dmFyIE89aSg3NTE1NTcpLGo9aSg2MDE1ODcpLEY9aSg0MDMzNzApO3ZhciBLLFUscT1pKDY3MzgyOSksWD1pKDIwMDY2Nik7ZnVuY3Rpb24gRyhlLHQsaSl7Y29uc3Qgcz17bmFtZTplLGZyYW1lRWxlbWVudElkOnQsZGF0YTppfTt3aW5kb3cucGFyZW50LnBvc3RNZXNzYWdlKHMsIioiKX0hZnVuY3Rpb24oZSl7bGV0IHQ7IWZ1bmN0aW9uKGUpe2UuU2V0U3ltYm9sPSJzZXQtc3ltYm9sIixlLlNldEludGVydmFsPSJzZXQtaW50ZXJ2YWwiCn0odD1lLk5hbWVzfHwoZS5OYW1lcz17fSkpfShLfHwoSz17fSkpLGZ1bmN0aW9uKGUpe2xldCB0OyFmdW5jdGlvbihlKXtlLlN5bWJvbENsaWNrPSJ0di13aWRnZXQtc3ltYm9sLWNsaWNrIixlLldpZGdldExvYWQ9InR2LXdpZGdldC1sb2FkIixlLldpZGdldFJlYWR5PSJ0di13aWRnZXQtcmVhZHkiLGUuUmVzaXplSWZyYW1lPSJ0di13aWRnZXQtcmVzaXplLWlmcmFtZSIsZS5Ob0RhdGE9InR2LXdpZGdldC1uby1kYXRhIn0odD1lLk5hbWVzfHwoZS5OYW1lcz17fSkpfShVfHwoVT17fSkpO2NvbnN0IEo9d2luZG93LmluaXREYXRhLmhhc2hTZXR0aW5nc3x8e30sUT0ic3RyaW5nIj09dHlwZW9mIEouZnJhbWVFbGVtZW50SWQ/Si5mcmFtZUVsZW1lbnRJZDpudWxsO3ZhciBZPWkoNjUzODE3KSxaPWkoMzg5Mjk4KTtjb25zdCBlZT1mdW5jdGlvbigpe2NvbnN0IGU9d2luZG93O3JldHVybnsuLi5lLmluaXREYXRhLndpZGdldERlZmF1bHRzLC4uLmUuaW5pdERhdGEuaGFzaFNldHRpbmdzLC4uLmUuaW5pdERhdGEucXVlcnlTZXR0aW5nc319KCksdGU9KDAsai5maWx0ZXJVdG1JbmZvKShlZSk7bGV0IGllPWVlLnN5bWJvbHM7QXJyYXkuaXNBcnJheShpZSkmJmllLmV2ZXJ5KHEudmFsaWRhdGVTeW1ib2xEYXRhKXx8KGNvbnNvbGUuZXJyb3IoIkludmFsaWQgc3ltYm9scyBkYXRhLCBmYWxsIGJhY2sgdG8gZGVmYXVsdHMiKSxpZT13aW5kb3cuaW5pdERhdGEuZGVmYXVsdFNldHRpbmdzLnN5bWJvbHMpO2NvbnN0IHNlPWVlLm5vTGlua3M7ZWUubm9MaW5rc3x8aWUuZm9yRWFjaCgoZnVuY3Rpb24oZSl7Y29uc3QgdD1lLnByb05hbWV8fGUuc2hvcnROYW1lO2UubGlua1BhZ2U9KDAsRi5tYWtlV2lkZ2V0U3ltYm9sTGluaykoe3N5bWJvbDp0LGN1c3RvbVVybDplZS5sYXJnZUNoYXJ0VXJsLHV0bUluZm86dGV9KX0pKTtjb25zdCBuZT1lZS5pc1RyYW5zcGFyZW50LGFlPWVlLnNob3dTeW1ib2xMb2dvLG9lPWVlLmRpc3BsYXlNb2RlLHJlPWVlLmNvbG9yVGhlbWU7cmUmJigwLFguc2V0VGhlbWUpKHJlKTt0cnl7KDAsWi50cmFja1dpZGdldExvYWRNZXRhSW5mbykoe3dpZGdldF9pZDoidGlja2VyLXRhcGUiLHN5bWJvbHM6SlNPTi5zdHJpbmdpZnkoZWUuc3ltYm9scy5tYXAoKGU9PmUucHJvTmFtZXx8IiIpKSksY3VzdG9tZXI6ZWUuY3VzdG9tZXJ9KX1jYXRjaHt9Y29uc3QgbGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI3dpZGdldC10aWNrZXItdGFwZS1jb250YWluZXIiKTsoMCxPLmNyZWF0ZUVtYmVkV2lkZ2V0V3JhcHBlcikobGUsInRpY2tlci10YXBlIix0ZSx7aXNXaGl0ZUxhYmVsOmVlLndoaXRlbGFiZWwsbG9jYWxlOmVlLmxvY2FsZSxjb3B5cmlnaHRPcHRpb25zOnt2ZXJ0aWNhbFBvc2l0aW9uOlkuQ29weXJpZ2h0UG9zaXRpb24uVmVydGljYWwuVG9wLG1vZGU6InNtYWxsX29sZCJ9fSk7Y29uc3QgY2U9bmV3IGNsYXNze2NvbnN0cnVjdG9yKGUpe3RoaXMuaGVpZ2h0PW5ldyBULldhdGNoZWRWYWx1ZSgwKSx0aGlzLm9uQWxsVGlja2Vyc0ZhdWx0eT1uZXcgTC5EZWxlZ2F0ZSx0aGlzLl9zdHlsZUVsZW1lbnQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3R5bGUiKSx0aGlzLl9jb250YWluZXJFbGVtZW50PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRoaXMuX3RhcGVFbGVtZW50PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRoaXMuX2hlYWRFbGVtZW50PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRoaXMuX3RhaWxFbGVtZW50PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRoaXMuX2hlYWRUaWNrZXJJdGVtcz1bXSx0aGlzLl90YWlsVGlja2VySXRlbXM9W10sdGhpcy5fdGlja2VySXRlbVdpZHRocz1bXSx0aGlzLl9pc0NvbXBhY3RNb2RlPW5ldyBULldhdGNoZWRWYWx1ZSx0aGlzLl90dXJuS2V5Ym9hcmRGb2N1c09uPWU9PntlLnRhcmdldC5tYXRjaGVzKCI6Zm9jdXMtdmlzaWJsZSIpJiYodGhpcy5fY29udGFpbmVyRWxlbWVudC5jbGFzc0xpc3QuYWRkKEQubm9BdXRvU2Nyb2xsKSx0aGlzLl9jb250YWluZXJFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImZvY3VzaW4iLHRoaXMuX3R1cm5LZXlib2FyZEZvY3VzT24pLHRoaXMuX2NvbnRhaW5lckVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXNvdXQiLHRoaXMuX3R1cm5LZXlib2FyZEZvY3VzT2ZmKSl9LHRoaXMuX3R1cm5LZXlib2FyZEZvY3VzT2ZmPWU9Pntjb25zdCB0PWUucmVsYXRlZFRhcmdldDtudWxsIT09dCYmdGhpcy5fY29udGFpbmVyRWxlbWVudC5jb250YWlucyh0KXx8KHRoaXMuX2NvbnRhaW5lckVsZW1lbnQuc2Nyb2xsTGVmdD0wLHRoaXMuX2NvbnRhaW5lckVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShELm5vQXV0b1Njcm9sbCksdGhpcy5fY29udGFpbmVyRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJmb2N1c291dCIsdGhpcy5fdHVybktleWJvYXJkRm9jdXNPZmYpLHRoaXMuX2NvbnRhaW5lckVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXNpbiIsdGhpcy5fdHVybktleWJvYXJkRm9jdXNPbikpfSx0aGlzLl9jYW5jZWxEZWJvdW5jZWRSZXNpemU9KCk9Pnt9LHRoaXMuX29uQ29tcGFjdE1vZGVDaGFuZ2VkPSgpPT57dGhpcy5fdXBkYXRlVGlja2VyVmlld3NBbmRTdHlsZXMoKX0sdGhpcy5fb25WaXNpYmlsaXR5U3RhdGVDaGFuZ2VkPSgpPT57InZpc2libGUiPT09ZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlJiZ0aGlzLl91cGRhdGVUaWNrZXJWaWV3c0FuZFN0eWxlcygpfSx0aGlzLl91cGRhdGVUaWNrZXJWaWV3c0FuZFN0eWxlcz0oKT0+e3RoaXMuX3VwZGF0ZVRpY2tlclZpZXdzKCksdGhpcy5fdXBkYXRlU3R5bGVzKCl9LHRoaXMuX29uRGV2aWNlQ2hhbmdlZD0oKT0+e3RoaXMuX2lzQ29tcGFjdE1vZGUuc2V0VmFsdWUoTSgpKX0sdGhpcy5fZW5zdXJlU3VmZmljaWVudFRhaWxXaWR0aD0oKT0+e2lmKDA9PT10aGlzLl9zeW1ib2xzLmxlbmd0aClyZXR1cm4KO2NvbnN0IGU9dGhpcy5fY29udGFpbmVyRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCx0PXRoaXMuX3RhaWxFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoLGk9dGhpcy5faGVhZFRpY2tlckl0ZW1zLmxlbmd0aDtsZXQgcz1lLXQ7Zm9yKGxldCBlPXRoaXMuX3RhaWxUaWNrZXJJdGVtcy5sZW5ndGglaTtzPjA7ZT0rK2UlaSl7Y29uc3QgdD10aGlzLl90aWNrZXJJdGVtV2lkdGhzW2VdO3MtPXQ7Y29uc3QgaT10aGlzLl9jcmVhdGVUaWNrZXJJdGVtVGFwZSh0aGlzLl9zeW1ib2xzW2VdKTt0aGlzLl90YWlsVGlja2VySXRlbXMucHVzaChpKSx0aGlzLl90YWlsRWxlbWVudC5hcHBlbmRDaGlsZChpLmdldEVsZW1lbnQoKSksaS5zZXRWaWV3KHQsdGhpcy5faXNDb21wYWN0TW9kZS52YWx1ZSgpLHRoaXMuX2lzVHJhbnNwYXJlbnQpfX0sdGhpcy5fdXBkYXRlSGVpZ2h0VmFsdWU9ZT0+e3RoaXMuaGVpZ2h0LnNldFZhbHVlKEkoZSkpfSx0aGlzLl9zeW1ib2xzPWUuc3ltYm9scyx0aGlzLl9zcGVlZD1lLnNwZWVkLHRoaXMuX2lzVHJhbnNwYXJlbnQ9ISFlLmlzVHJhbnNwYXJlbnQsdGhpcy5fZGlzcGxheU1vZGU9ZS5kaXNwbGF5TW9kZSx0aGlzLl9pc0VtYmVkV2lkZ2V0PSEhZS5pc0VtYmVkV2lkZ2V0LHRoaXMuX3Nob3dTeW1ib2xMb2dvPSEhZS5zaG93U3ltYm9sTG9nbyx0aGlzLl9ub0xpbmtzPSEhZS5ub0xpbmtzLHRoaXMuX2lzQ29tcGFjdE1vZGUuc2V0VmFsdWUodGhpcy5fZGlzcGxheU1vZGU9PT1rLkFkYXB0aXZlP00oKTp0aGlzLl9kaXNwbGF5TW9kZT09PWsuQ29tcGFjdCksdGhpcy5faXNDb21wYWN0TW9kZS5zdWJzY3JpYmUodGhpcy5fdXBkYXRlSGVpZ2h0VmFsdWUse2NhbGxXaXRoTGFzdDohMH0pLGUuY29udGFpbmVyLmFwcGVuZENoaWxkKHRoaXMuX2NvbnRhaW5lckVsZW1lbnQpLHRoaXMuX2NvbnRhaW5lckVsZW1lbnQuY2xhc3NMaXN0LmFkZChELnRpY2tlclRhcGUpLHRoaXMuX2NvbnRhaW5lckVsZW1lbnQuY2xhc3NMaXN0LnRvZ2dsZShELm5vQXV0b1Njcm9sbCwhdGhpcy5fc3BlZWQpLHRoaXMuX3NwZWVkJiZ0aGlzLl9jb250YWluZXJFbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzaW4iLHRoaXMuX3R1cm5LZXlib2FyZEZvY3VzT24pLHRoaXMuX3RhcGVFbGVtZW50LmNsYXNzTGlzdC5hZGQoRC50YXBlKSx0aGlzLl9oZWFkRWxlbWVudC5jbGFzc0xpc3QuYWRkKEQuaGVhZCksdGhpcy5fdGFpbEVsZW1lbnQuY2xhc3NMaXN0LmFkZChELnRhaWwpO2NvbnN0IHQ9ZnVuY3Rpb24oZSx0LGkpe2NvbnN0IHM9dD8kOlAsbj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtuLmNsYXNzTGlzdC5hZGQoRC5za2VsZXRvbik7Y29uc3QgYT1NYXRoLmNlaWwoZS9zKTtmb3IobGV0IGU9MDtlPGE7ZSsrKW4uYXBwZW5kQ2hpbGQobS5nZXRTa2VsZXRvbkVsZW1lbnQodCxpKSk7cmV0dXJuIG59KHRoaXMuX2NvbnRhaW5lckVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGgsdGhpcy5faXNDb21wYWN0TW9kZS52YWx1ZSgpLHRoaXMuX2lzVHJhbnNwYXJlbnQpO3RoaXMuX3RhcGVFbGVtZW50LmFwcGVuZENoaWxkKHQpO2NvbnN0IGk9W107Zm9yKGNvbnN0IGUgb2YgdGhpcy5fc3ltYm9scyl7Y29uc3QgdD10aGlzLl9jcmVhdGVUaWNrZXJJdGVtVGFwZShlKTt0LnRvZ2dsZVRyYW5zcGFyZW5jeSh0aGlzLl9pc1RyYW5zcGFyZW50KSx0aGlzLl9oZWFkVGlja2VySXRlbXMucHVzaCh0KSx0aGlzLl9oZWFkRWxlbWVudC5hcHBlbmRDaGlsZCh0LmdldEVsZW1lbnQoKSksaS5wdXNoKFIodCkpfXRoaXMuX2NvbnRhaW5lckVsZW1lbnQuYXBwZW5kQ2hpbGQodGhpcy5fc3R5bGVFbGVtZW50KSx0aGlzLl9jb250YWluZXJFbGVtZW50LmFwcGVuZENoaWxkKHRoaXMuX3RhcGVFbGVtZW50KSx0aGlzLl93YWl0Rm9yVGlja2Vyc0NhbmNlbGFibGU9ZnVuY3Rpb24oZSl7bGV0IHQ9ITE7cmV0dXJue3Byb21pc2U6bmV3IFByb21pc2UoKChpLHMpPT57ZS50aGVuKChlPT50P3MobmV3IE4pOmkoZSkpKSxlLmNhdGNoKChlPT5zKHQ/bmV3IE46ZSkpKX0pKSxjYW5jZWwoKXt0PSEwfX19KFByb21pc2UuYWxsKGkpKSx0aGlzLl93YWl0Rm9yVGlja2Vyc0NhbmNlbGFibGUucHJvbWlzZS50aGVuKChlPT57ZS5ldmVyeSgoZT0+IWUpKSYmdGhpcy5vbkFsbFRpY2tlcnNGYXVsdHkuZmlyZSgpLHRoaXMuX3RhcGVFbGVtZW50LnJlbW92ZUNoaWxkKHQpLHRoaXMuX3RhcGVFbGVtZW50LmFwcGVuZENoaWxkKHRoaXMuX2hlYWRFbGVtZW50KSx0aGlzLl90YXBlRWxlbWVudC5hcHBlbmRDaGlsZCh0aGlzLl90YWlsRWxlbWVudCksdGhpcy5faW5pdCgpfSksKGU9PntpZighKGUgaW5zdGFuY2VvZiBOKSl0aHJvdyBlfSkpfWRlc3Ryb3koKXt0aGlzLl9jb250YWluZXJFbGVtZW50LnJlbW92ZSgpLHRoaXMuX3dhaXRGb3JUaWNrZXJzQ2FuY2VsYWJsZS5jYW5jZWwoKSxiLm9mZigiY2hhbmdlRGV2aWNlIix0aGlzLl9vbkRldmljZUNoYW5nZWQpLHRoaXMuX2NhbmNlbERlYm91bmNlZFJlc2l6ZSgpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInZpc2liaWxpdHljaGFuZ2UiLHRoaXMuX29uVmlzaWJpbGl0eVN0YXRlQ2hhbmdlZCksdGhpcy5faGVhZFRpY2tlckl0ZW1zLmZvckVhY2goKGU9PntlLnN0b3AoKX0pKSx0aGlzLl90YWlsVGlja2VySXRlbXMuZm9yRWFjaCgoZT0+e2Uuc3RvcCgpfSkpfV9jcmVhdGVUaWNrZXJJdGVtVGFwZShlKXtjb25zdCB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQodGhpcy5fbm9MaW5rcz8ic3BhbiI6ImEiKTtyZXR1cm4gbmV3IG0oZSx0LHtpc0VtYmVkV2lkZ2V0OnRoaXMuX2lzRW1iZWRXaWRnZXQsc2hvd1N5bWJvbExvZ286dGhpcy5fc2hvd1N5bWJvbExvZ28saXNDb21wYWN0TW9kZTp0aGlzLl9pc0NvbXBhY3RNb2RlLnZhbHVlKCl9KX1faW5pdCgpe3RoaXMuX2lzQ29tcGFjdE1vZGUuc3Vic2NyaWJlKHRoaXMuX29uQ29tcGFjdE1vZGVDaGFuZ2VkLHtjYWxsV2l0aExhc3Q6ITB9KSx0aGlzLl9lbnN1cmVTdWZmaWNpZW50VGFpbFdpZHRoKCksCnRoaXMuX2Rpc3BsYXlNb2RlPT09ay5BZGFwdGl2ZSYmYi5vbigiY2hhbmdlRGV2aWNlIix0aGlzLl9vbkRldmljZUNoYW5nZWQpLHRoaXMuX2NhbmNlbERlYm91bmNlZFJlc2l6ZT1mdW5jdGlvbihlKXtjb25zdCB0PSgwLG4uZGVmYXVsdCkoZSwzMDApO3JldHVybiB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIix0KSwoKT0+e3QuY2FuY2VsKCksd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsdCl9fSh0aGlzLl9lbnN1cmVTdWZmaWNpZW50VGFpbFdpZHRoKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIix0aGlzLl9vblZpc2liaWxpdHlTdGF0ZUNoYW5nZWQpO2NvbnN0IGU9KDAsbi5kZWZhdWx0KSh0aGlzLl91cGRhdGVUaWNrZXJWaWV3c0FuZFN0eWxlcy5iaW5kKHRoaXMpLDApO3RoaXMuX3RhaWxUaWNrZXJJdGVtcy5mb3JFYWNoKCh0PT57dC5vbkluaXQuc3Vic2NyaWJlKG51bGwsZSwhMCksdC5vbkNvbXBsZXRlLnN1YnNjcmliZShudWxsLGUsITApLHQub25FcnJvci5zdWJzY3JpYmUobnVsbCwoKCk9PkgodCkpLCEwKX0pKX1fdXBkYXRlVGlja2VyVmlld3MoKXtjb25zdCBlPXRoaXMuX2hlYWRUaWNrZXJJdGVtcy5sZW5ndGg7dGhpcy5faGVhZFRpY2tlckl0ZW1zLmZvckVhY2goKChlLHQpPT57ZS5yZXNldFdpZHRoKCksZS50b2dnbGVDb21wYWN0TW9kZSh0aGlzLl9pc0NvbXBhY3RNb2RlLnZhbHVlKCkpO2NvbnN0IGk9ZS5nZXRXaWR0aCgpK0I7ZS5zZXRXaWR0aChpKSx0aGlzLl90aWNrZXJJdGVtV2lkdGhzW3RdPWl9KSksdGhpcy5fdGFpbFRpY2tlckl0ZW1zLmZvckVhY2goKCh0LGkpPT57dC50b2dnbGVDb21wYWN0TW9kZSh0aGlzLl9pc0NvbXBhY3RNb2RlLnZhbHVlKCkpLHQuc2V0V2lkdGgodGhpcy5fdGlja2VySXRlbVdpZHRoc1tpJWVdKX0pKX1fdXBkYXRlU3R5bGVzKCl7Y29uc3QgZT10aGlzLl9zdHlsZUVsZW1lbnQuc2hlZXQ7aWYoIWV8fCF0aGlzLl9zcGVlZClyZXR1cm47Y29uc3QgdD10aGlzLl9oZWFkRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCxpPSJ0aWNrZXItdGFwZS1zY3JvbGwiKyItLSIrKDAsQy5yYW5kb21IYXNoTikoNCk7Zm9yKDtlLmNzc1J1bGVzLmxlbmd0aD4wOyllLmRlbGV0ZVJ1bGUoMCk7Y29uc3Qgcz1bYEBrZXlmcmFtZXMgJHtpfSB7XG5cdFx0XHRcdGZyb20geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cblx0XHRcdFx0dG8geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHsoMCx4LmlzUnRsKSgpPyIiOiItIn0ke3R9cHgpOyB9XG5cdFx0XHR9YCxgLiR7RC50YXBlfSB7XG5cdFx0XHRcdGFuaW1hdGlvbi1kdXJhdGlvbjogJHt0L3RoaXMuX3NwZWVkfXM7XG5cdFx0XHRcdGFuaW1hdGlvbi1uYW1lOiAke2l9O1xuXHRcdFx0fWBdO2ZvcihsZXQgdD0wO3Q8cy5sZW5ndGg7dCsrKWUuaW5zZXJ0UnVsZShzW3RdLHQpfX0oe2NvbnRhaW5lcjpsZSxzeW1ib2xzOmllLGlzVHJhbnNwYXJlbnQ6bmUsc2hvd1N5bWJvbExvZ286YWUsZGlzcGxheU1vZGU6b2Usbm9MaW5rczpzZSxzcGVlZDo0MCxpc0VtYmVkV2lkZ2V0OiEwfSk7Y2UuaGVpZ2h0LnN1YnNjcmliZSgoZnVuY3Rpb24oZSl7bmV8fChlKz0yKTtHKFUuTmFtZXMuUmVzaXplSWZyYW1lLG51bGwse2hlaWdodDplfSl9KSx7Y2FsbFdpdGhMYXN0OiEwfSksY2Uub25BbGxUaWNrZXJzRmF1bHR5LnN1YnNjcmliZShudWxsLCgoKT0+e0coVS5OYW1lcy5Ob0RhdGEsUSx2b2lkIDApfSksITApfX0sZT0+e2UuTygwLFs1ODY2Nyw1NzI5MSw0NjkwNywzMjgxNiw0MzMyNSwzOTA1LDE1OTMyLDUxNTA4LDg0MDgsODAwOTcsMTMxNDgsNDkyNjUsODA3MDYsNjkzNTIsNjU4NjIsNTEwMzEsOTQ3MDgsMzU1Miw4MDU5NCw3OTIwNyw3Mjc4LDIwMDYxLDg3OTI2XSwoKCk9PntyZXR1cm4gdD05NDY2NzEsZShlLnM9dCk7dmFyIHR9KSk7ZS5PKCl9XSk7"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCSUI.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.570Z","timestamp":1785126258570,"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 /crypto/XTVCSUI.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 04:24:18 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: \"bd05bc21d53a5801fd4b15bb94a8e7db\"\r\nlast-modified: Thu, 18 May 2023 10:58:22 GMT\r\ncdn-cachedat: 08/09/2025 14:29:14\r\nx-amz-id-2: Ls919Ups7mPgN6qNaYW3hKNoYBTU+0u9r5zohGj/EMWNGHNFRglvYzJPf7ty9boTUmZPeOSf71s=\r\nx-amz-request-id: XRXFQR6YCG9B7SYD\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: bd05bc21d53a5801fd4b15bb94a8e7db\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: 5abfae8e3f646911e61cd3b6e639c22a\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":685,"size_decoded":1355,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (685), with no line terminators","md5":"bd05bc21d53a5801fd4b15bb94a8e7db","sha1":"1f0c5105ebde5c8f3a450250e6d25808fca08ac9","sha256":"5f3f35a3f651ffc38fa2a1504fdffd34475bad637eeee55c38ba0eae3effbfc4","sha512":"32100a9c7374cc441a7b464789433af7e80ed3e5f6acdd0b39e08ac6af8b82229236a2a65add7fae6107d26f7d9926a2039afb0d9951ba04afe37ca731ff76b7","ssdeep":"","tlshash":"a601c0569104d45c4a0787d8de1c56d1334f70fefbcb83caa577953651191c5eac2908","first_seen":"2023-05-18T21:44:29Z","last_seen":"2026-07-27T07:05:43.363409Z","times_seen":846,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTEuNCA3LjU5Yy40Mi41Ni42NyAxLjI3LjY3IDIuMDUgMCAuNzktLjI2IDEuNS0uNjkgMi4wN2wtLjAzLjA1LS4wMS0uMDYtLjAzLS4xNmMtLjIyLTEuMDEtLjkyLTEuODgtMi4wNy0yLjU4LS43Ny0uNDgtMS4yMi0xLjA1LTEuMzMtMS43YTIuODIgMi44MiAwIDAgMSAuNS0yLjA1bC40NC0uNThjLjA4LS4xLjIyLS4xLjMgMGwyLjI1IDIuOTZabS43LS41OUw5LjEyIDMuMDZhLjE0LjE0IDAgMCAwLS4yMiAwTDUuODkgN3YuMDFBNC40OCA0LjQ4IDAgMCAwIDUgOS43MUM1IDEyLjA3IDYuOCAxNCA5IDE0czQtMS45MiA0LTQuM2MwLTEuMDEtLjMzLTEuOTUtLjg4LTIuNjlMMTIuMSA3Wm0tNS41LjU3LjI4LS4zNXYuMDdsLjAzLjE1Yy4xNy45OC44IDEuOCAxLjgzIDIuNDMuOS41NSAxLjQyIDEuMTkgMS41NyAxLjg4LjA3LjMuMDguNTguMDUuODN2LjAxbC0uMDEuMDFjLS40MS4yMS0uODcuMzMtMS4zNS4zMy0xLjcgMC0zLjA3LTEuNDctMy4wNy0zLjMgMC0uNzcuMjYtMS40OS42OC0yLjA2WiIgZmlsbD0iIzRCQTJGRiIvPjwvc3ZnPg=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCXPL.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.668Z","timestamp":1785126258668,"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 /crypto/XTVCXPL.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 04:24:18 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: \"c5f2fca824295c360bb9fb575f2cf295\"\r\nlast-modified: Fri, 03 Oct 2025 20:27:22 GMT\r\ncdn-cachedat: 10/03/2025 21:08:05\r\nx-amz-id-2: DtvmAct1fIEUW8y6rLeNW03fI6CrLUTrbzd+ABF92ByfTF7P4JbJWWqbEuhPzfOPzKpQb0ca8jE=\r\nx-amz-request-id: BV9CN9G9ZJA5VT0N\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: c5f2fca824295c360bb9fb575f2cf295\r\ncdn-proxyver: 1.37\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 4ddbdcad7d05084e584d71aa3623a869\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":4793,"size_decoded":2891,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (4793), with no line terminators","md5":"c5f2fca824295c360bb9fb575f2cf295","sha1":"97f54ebd37d1f97090b25962c838202d44c7a651","sha256":"b17eceead9fb0b77c548ec9fd46a8c7406004062facf9e506d2fd75ed6ffe2f1","sha512":"45f5b17dd004869c435a04831064cc495a1102cebb8de9aebcb4e0b7fc98a6b5c0c6a97845084be9b7c9a6357e87f9c5be2f588117ae04cfea1498979effccce","ssdeep":"96:bhvktMLcqqWqq0GRFWAATF4FWwuGsYbFOiMLXhIqNa2UcTO:N8aVqNqhRFWAMuW1GsY9MLhImaIy","tlshash":"43a1cda92508f65c5883bb4ce77fee92930f4066b196b5e55afea3a8900f1d1dd43038","first_seen":"2025-10-06T03:50:37.139115Z","last_seen":"2026-07-27T07:05:43.415352Z","times_seen":691,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMxNjJGMjkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJtNi42NCAxMS42Ni4wMy4wMi44MyAxIC4wMi4wMWguMDJsLjA0LS4wMy4wMi0uMDEuMDIuMDEgMS4xIDEuMzJWMTRIOC43bC0uNDMtLjA0YS4xMy4xMyAwIDAgMS0uMS0uMDVsLS44NC0xLjAzdi0uMDNsLjA0LS4wM2EuMDQuMDQgMCAwIDAgLjAyLS4wM3YtLjAxbC0uMDEtLjAxLS45LTEuMXYtLjAxaC4xNVptLjYzLS4wOCAxLjA1IDEuMDR2LjAxaC4wNGwuMDQtLjA1aC4wMmwxLjM1IDEuMzR2LjAybC0uNDIuMDRhLjA0LjA0IDAgMCAxLS4wMyAwbC0xLjE0LTEuMTR2LS4wNGwuMDMtLjAzaC4wMXYtLjA2bC0xLjEtMS4wOXYtLjAxbC4xMi0uMDRoLjAxbC4wMi4wMVptLTEuMTcuMDVhLjEuMSAwIDAgMSAuMDYuMDRsLjYzLjk3LjAxLjAxYS4wMi4wMiAwIDAgMCAuMDIgMCAuMTYuMTYgMCAwIDEgLjA2LS4wNGguMDNsLjc3IDEuMnYuMDJhMi42NyAyLjY3IDAgMCAxLS41NC0uMTlsLS41My0uODN2LS4wM2wuMDUtLjAzLjAxLS4wMXYtLjAzbC0uNy0xLjA5di0uMDJoLjAxbC4xMi4wM1ptMS42Ny0uMjYgMS4zNSAxLjFhLjAzLjAzIDAgMCAwIC4wMyAwcy4wMi0uMDEuMDItLjAzbC4wMi0uMDFoLjA0YTU5OC4yMyA1OTguMjMgMCAwIDAgMS41IDEuMjVsLS4zMi4xMWEuMS4xIDAgMCAxLS4wNSAwIC4xMS4xMSAwIDAgMS0uMDUtLjAxbC0xLjMtMS4wN0w5IDEyLjd2LS4wNGwuMDMtLjA0di0uMDFhLjAzLjAzIDAgMCAwIDAtLjAybC0xLjQtMS4xNS4xMi0uMDdoLjAxWm0tMi4zOSAwIC4xOC4xMS40Ni44Ni4wMS4wMWguMDNsLjA1LS4wM2guMDN2LjAxbC42MiAxLjE1di4wMWgtLjAxbC0uNTItLjNhLjE1LjE1IDAgMCAxLS4wNi0uMDVsLS4zNC0uNjNhLjAzLjAzIDAgMCAxIDAtLjA0LjA2LjA2IDAgMCAxIC4wNC0uMDJoLjAydi0uMDJhLjA0LjA0IDAgMCAwIDAtLjAzIDMxMC4xIDMxMC4xIDAgMCAwLS41MS0xLjAyWm0yLjgtLjIzIDEuNiAxLjAyaC4wMWwuMDEtLjAxLjAyLS4wNC4wMS0uMDJoLjA1bDEuNzYgMS4xMnYuMDNsLS4zLjE3aC0uMDVMOS42OCAxMi40bC0uMDEtLjAydi0uMDFsLjAzLS4wNHYtLjAzYS4wNC4wNCAwIDAgMC0uMDEtLjAybC0xLjY0LTEuMDR2LS4wMmwuMDgtLjA3aC4wNFptLTMuMiAwIC4xNS4xLjAyLjAyLjE5LjU0di4wMWguMDFsLjAyLjAxLjA3LS4wMi4wMi4wMS4zOCAxLjFhNS45OCA1Ljk4IDAgMCAxLS41Ni0uNTQgNS42NyA1LjY3IDAgMCAxLS4xNS0uNDVsLjAxLS4wMWEuMi4yIDAgMCAwIC4wNi0uMDMuMDIuMDIgMCAwIDAgMC0uMDJsLS4yNC0uN3YtLjAxaC4wMVptMy42NC0uNDEgMS43Ni45MmguMDFhLjAzLjAzIDAgMCAwIC4wMiAwdi0uMDJhLjIuMiAwIDAgMSAuMDMtLjA1bC4wMi0uMDFoLjAybDEuOTQgMS4wMS4wMS4wMXYuMDJsLS4yNi4yM2gtLjAybC0xLjg1LS45Ni0uMDEtLjAxdi0uMDJsLjA0LS4wNXYtLjAybC0uMDItLjAxLTEuNzktLjk0LS4wMS0uMDFhLjAzLjAzIDAgMCAxIDAtLjAzbC4wNi0uMDVhLjA0LjA0IDAgMCAxIC4wNS0uMDFabS4yNy0uMzkgMS45OS43NWguMDJsLjAyLS4wMi4wMS0uMDUuMDItLjAxaC4wMmwyLjEyLjhoLjAxdi4wM2wtLjIuMjZoLS4wMmwtMi4wNC0uNzYtLjAyLS4wMXYtLjAzYy4wMy0uMDQuMDMtLjA3IDAtLjA4YTIwMTQuMjkgMjAxNC4yOSAwIDAgMC0yLjAzLS44bC4wNi0uMDYuMDItLjAyaC4wMlptLTQuNDIuMy4xNi4ydi4wMWEzLjgzIDMuODMgMCAwIDEgLjEuNEg0Ljg0bC4xOC44aC0uMDJhNC44NSA0Ljg1IDAgMCAxLS40NS0uNzRjLjA0IDAgLjA2LS4wMy4wNC0uMDhhMTkuNzMgMTkuNzMgMCAwIDEtLjEtLjU4Wm02Ljc0LS4xOWguMDJsLjAxLS4wMS4wMy0uMDYuMDEtLjAxaC4wMmwyLjI4LjU2LS4xMi4zM2gtLjAybC0yLjIzLS41NWEuMDMuMDMgMCAwIDEtLjAyLS4wMnYtLjAybC4wMS0uMDR2LS4wMmwtLjAxLS4wMmgtLjAxbC0yLjE1LS41NGEuMDMuMDMgMCAwIDEtLjAyLS4wMXYtLjAybC4wMy0uMDcuMDItLjAyaC4wM2wyLjEyLjUyWm0tNy4xOS0uNjNhMi40NyAyLjQ3IDAgMCAwIC4yNS41NnYuMzVoLS4wMWE1LjY3IDUuNjcgMCAwIDEtLjI0LS45MVptNy40Mi0uMDdoLjAydi0uMDJsLjAyLS4wNi4wMi0uMDJoLjAybDIuMzguMjktLjA5LjM1LTIuMzQtLjI4YS4wNC4wNCAwIDAgMS0uMDItLjAyVjkuOWgtLjAybC0uMDEtLjAxLTIuMjUtLjI4YS4wMy4wMyAwIDAgMS0uMDItLjAydi0uMDFsLjAyLS4wNy4wMi0uMDNoLjAybDIuMjMuMjdabTIuNTUtLjkyYTMuMiAzLjIgMCAwIDEgMCAuMzRoLTIuMzhsLS4wNC0uMDItLjAyLS4wM1Y5LjFoLS4wM2ExNC43MiAxNC43MiAwIDAgMS0uOC0uMDQgMTQ1My44OCAxNDUzLjg4IDAgMCAxLTEuNS0uMDIuMTcuMTcgMCAwIDEgMC0uMDl2LS4wMWguMDJhMTEwMy4yNSAxMTAzLjI1IDAgMCAxIDItLjAyIDEzLjE1IDEzLjE1IDAgMCAxIC4zMS0uMDRjMC0uMDIuMDEtLjAzLjAyLS4wM2wuMDQtLjAyIDIuMzctLjAxaC4wMVptLS4xNy0xLjEyLjEuMzVoLS4wMWwtMi40LjMtLjAxLS4wMS0uMDItLjAyLS4wMS0uMDYtLjAxLS4wMWgtLjAybC0yLjIzLjI2aC0uMDNsLS4wMS0uMDMtLjAyLS4wN1Y4LjRoLjAybDIuMjUtLjI5aC4wMWwuMDEtLjAxdi0uMDlsLjAyLS4wMWguMDFsMi4zNC0uM1ptLTkuNTUtLjU4di40OGMwIC4wMiAwIC4wNC0uMDIuMDYtLjEuMi0uMTkuMzgtLjI0LjU4SDRhNC44NiA0Ljg2IDAgMCAxIC4yNy0xLjEyWm05LjE5LS4zOXYuMDFsLjEyLjNhLjAyLjAyIDAgMCAxIDAgLjAxbC0uMDEuMDFoLS4wMWwtMi4yNi41N2gtLjAybC0uMDEtLjAyLS4wMi0uMDYtLjAyLS4wMWgtLjAxbC0yLjE1LjUzaC0uMDFsLS4wMi0uMDEtLjAzLS4wOXYtLjAyaC4wMXYtLjAxbDIuMTctLjU0aC4wMXYtLjAybC0uMDEtLjA3VjcuM2guMDJsMi4yMy0uNTZoLjAyWm0tLjU2LS44NC4yLjI2aC4wMXYuMDJsLS4wMS4wMS0yLjEzLjhoLS4wMmwtLjAxLS4wMS0uMDItLjA1di0uMDFoLS4wMlY2LjloLS4wMmwtMS45OC43NWEuMDQuMDQgMCAwIDEtLjA1LS4wMmwtLjA1LS4wNnYtLjAyYS4wMy4wMyAwIDAgMSAwLS4wMmwyLjAyLS43NmMuMDMgMCAuMDQtLjA0IDAtLjA4di0uMDJsLjAxLS4wMmguMDFsMi4wNC0uNzdoLjAyWk01IDUuOTVoLjAxbC0uMTcuOGEuMDIuMDIgMCAwIDEtLjAxLjAxSDQuOGMtLjAzLS4wMS0uMDUtLjAyLS4wNyAwLS4wMiAwLS4wMi4wMy0uMDMuMDdhMy44MiAzLjgyIDAgMCAxLS4wOC4zM2wtLjE3LjJoLS4wMWwuMTMtLjU5Yy4wMS0uMDQgMC0uMDctLjA0LS4wOGgtLjAxdi0uMDJBNC44NiA0Ljg2IDAgMCAxIDUgNS45NVptNy4xNy0uOC4yNy4yM3YuMDNsLTEuOTcgMS4wMmgtLjAzbC0uMDMtLjA3aC0uMDNsLTEuNzcuOTJoLS4wM2wtLjA3LS4wN0g4LjVhLjAyLjAyIDAgMCAxIDAtLjAzaC4wMWwxLjgtLjk1aC4wMlY2LjJsLS4wNC0uMDZ2LS4wMmwuMDEtLjAxIDEuODUtLjk2YS4wMi4wMiAwIDAgMSAuMDIgMFptLS44Ni0uNTcuMzMuMThoLjAxdi4wMkw5Ljg3IDUuOTNhLjAyLjAyIDAgMCAxLS4wMyAwbC0uMDQtLjA3aC0uMDJsLTEuNiAxLjAxaC0uMDJsLS4xLS4wNWgtLjAydi0uMDJsLjAxLS4wMSAxLjY2LTEuMDVWNS43bC0uMDQtLjA3di0uMDJsMS42My0xLjA0aC4wMVptLTUuNDcuNTEtLjM4IDEuMWgtLjAybC0uMDYtLjAxYS4wMy4wMyAwIDAgMC0uMDMgMGwtLjAxLjAyLS4xOS41M2MwIC4wMSAwIC4wMi0uMDIuMDNsLS4xNS4xaC0uMDF2LS4wMWwuMjQtLjd2LS4wM2EuMi4yIDAgMCAwLS4wNi0uMDNoLS4wMXYtLjAxYS4wMy4wMyAwIDAgMS0uMDEtLjAybC4xNS0uNDNhNS44NiA1Ljg2IDAgMCAxIC41Ni0uNTRabTQuNTgtLjg4LjMxLjFhLjAyLjAyIDAgMCAxIC4wMS4wMnYuMDFBNTg3LjI0IDU4Ny4yNCAwIDAgMCA5LjIgNS41OGgtLjAybC0uMDEtLjAyYS4xOC4xOCAwIDAgMC0uMDItLjAzbC0uMDItLjAxaC0uMDJsLTEuMzUgMS4xdi4wMWgtLjAxbC0uMTItLjA2IDEuNC0xLjE1di0uMDRMOSA1LjM0VjUuM2guMDFsMS4zLTEuMDhhLjEuMSAwIDAgMSAuMS0uMDFabS0zLjY2LjN2LjAxbC0uNjEgMS4xNWgtLjAzbC0uMDYtLjAyaC0uMDNsLS40Ni44NnYuMDFsLS4xOC4xaC0uMDFsLS4wMS0uMDFWNi42YTM0MS4yNiAzNDEuMjYgMCAwIDAgLjUzLTEuMDN2LS4wMmgtLjAzbC0uMDMtLjAydi0uMDRsLjMzLS42M2EuMTQuMTQgMCAwIDEgLjA2LS4wNmwuNTItLjNabTMtLjQ1aC4wMnYuMDJMOC40MyA1LjQySDguNGwtLjA0LS4wNHYtLjAxaC0uMDRMNy4yNyA2LjQyaC0uMDNsLS4xMi0uMDJhLjAxLjAxIDAgMCAxIDAtLjAxdi0uMDFsMS4xLTEuMWEuMDQuMDQgMCAwIDAgMC0uMDR2LS4wMWEuMTEuMTEgMCAwIDEtLjA0LS4wM3YtLjA0bDEuMTQtMS4xM0EuMDQuMDQgMCAwIDEgOS4zNiA0bC40LjA1Wm0tMi4wOC4xMi0uNzcgMS4yLS4wMS4wMWgtLjAyYS4xNi4xNiAwIDAgMS0uMDYtLjAzbC0uMDEtLjAxYS4wMi4wMiAwIDAgMC0uMDIgMGwtLjYzLjk4YS4xLjEgMCAwIDEtLjA1LjA0bC0uMTIuMDNoLS4wMWwtLjAxLS4wMXYtLjAxbC43LTEuMDlhLjAzLjAzIDAgMCAwIDAtLjAydi0uMDJsLS4wNS0uMDNINi42di0uMDNsLjU0LS44My4wMi0uMDNhMi42OSAyLjY5IDAgMCAxIC41MS0uMTVaTTguNzEgNGguMDF2LjAybC0xLjEgMS4zNEg3LjZsLS4wNy0uMDZoLS4wMWwtLjg3IDEuMDRoLS4xNnYtLjAxbC45Mi0xLjExVjUuMmwtLjA3LS4wNXYtLjAybC44OC0xLjA3LjQ5LS4wNloiIGZpbGw9IiNGRUZGRkYiLz48L3N2Zz4="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCSAHARA.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.747Z","timestamp":1785126258747,"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 /crypto/XTVCSAHARA.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 04:24:18 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: \"90819ce485a4b472b6bc1a2ae66602b6\"\r\nlast-modified: Tue, 22 Jul 2025 12:59:36 GMT\r\ncdn-cachedat: 08/09/2025 14:32:43\r\nx-amz-id-2: Y8qPbX0R0uXluvWbWOnWB/Hy8uqAuTF6EfxXEJxMQkg1Ng258kgDbvqRa9V/s4Lot6XQxjOjosM=\r\nx-amz-request-id: A2216HZ9M8E2H88P\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 90819ce485a4b472b6bc1a2ae66602b6\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: d9d9b7ded5845a2d02769e542aa5a19d\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":685,"size_decoded":1342,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (685), with no line terminators","md5":"90819ce485a4b472b6bc1a2ae66602b6","sha1":"a8c9d237b010d4a198031dd70a6e3dc0f8388edf","sha256":"1119a984f06aaa0a5a9b1ca7d7447649133031c95fd1f9550a9a1e3c740139a6","sha512":"6f4270cdd7f486d4e6f32cb1d738284648b4daa1e331417b079a14a471d048d7e7c63188f9f60c596438040078438042e6b9a841c8ff0e1d4cbc478cde4b7bb1","ssdeep":"","tlshash":"1a01946c5648e20c0543f99cca7459b1271fe4e9f28d4a66bccee6f0f1170d5ecc2964","first_seen":"2025-08-02T16:04:41.192928Z","last_seen":"2026-07-27T07:05:43.254843Z","times_seen":584,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGOEZGOTgiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNOC41NyA3LjAyYzAgMS43MiAwIDIuMDItLjAzIDJsLS43OS0xLjI3YTMwLjU1IDMwLjU1IDAgMCAwLTEuMzctMi4yYy0uMDMgMC0uNzEuMzYtLjczLjM4IDAgLjAxLjIxLjM3LjQ4LjhMNy4yIDguNDhsLjU3Ljk2cy0uODUtLjQ0LTEuODctMUw0LjAzIDcuNDJsLS4yLjM0LS4yMS4zNi4xOS4xMiAxLjg2IDEuMDIgMS42OC45LTIuMTguMDItMi4xNy4wMXYuOGgyLjIxbDIuMjEuMDEuNzgtLjczLjgtLjczYTQ1LjAyIDQ1LjAyIDAgMCAxIDEuNSAxLjM4bC4wOS4wOGgyLjJsMi4yMS0uMDF2LS44bC0yLjE3LS4wMS0yLjE4LS4wMSAxLjg3LTEuMDJhNDcuMTQgNDcuMTQgMCAwIDAgMS44Ni0xLjA0IDUuODMgNS44MyAwIDAgMC0uNDQtLjY2IDMwNS4yMyAzMDUuMjMgMCAwIDAtMy43MiAybDEuMDYtMS43NWExMjcgMTI3IDAgMCAwIDEuMDYtMS43NWMwLS4wMi0uNjQtLjQtLjY5LS40YTE0OS44IDE0OS44IDAgMCAwLTIuMiAzLjQ5Yy0uMDEgMC0uMDItLjkxLS4wMi0yLjAyVjVoLS44NnYyLjAyWiIgZmlsbD0iIzAwMDAwOCIvPjwvc3ZnPg=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCLUNA.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.751Z","timestamp":1785126258751,"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 /crypto/XTVCLUNA.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 04:24:18 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: \"793a70017812138fca226e2e8dda72c2\"\r\nlast-modified: Tue, 16 Aug 2022 08:48:34 GMT\r\ncdn-cachedat: 08/14/2025 09:13:04\r\nx-amz-id-2: zW+3qHn46LtHI5d3qWkml98O+a6LausdCEsW9vrrUmoBCGqHF0oa4/W2aiTjl0nBc25BmqJ/Rjo=\r\nx-amz-request-id: ZFABSSH03VF5FBA8\r\nx-amz-meta-hash: 793a70017812138fca226e2e8dda72c2\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: 6fc71a27b6bbb2588cd227bf14bd01ac\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":1111,"size_decoded":1489,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1111), with no line terminators","md5":"793a70017812138fca226e2e8dda72c2","sha1":"3f2a9e53ca590635c0bc0a0dd3d48c03ea702379","sha256":"5c3bb46f8b43be85a3952835723f636069b3366a15a1ecfc1480c38a211c35f4","sha512":"438ca4072640f058cbbe8962f6ae64c274c9e0941ec801a5832d89a3fbf9dba80ca8cb033052fbbb59e28153a762e53e22995e07a7459844a9291a3aef76d8b3","ssdeep":"","tlshash":"6621ad65d22cd46bd01acafede68a566231f81faf5c20358a0f1db2d20b94c7ad09e54","first_seen":"2024-02-21T19:27:11Z","last_seen":"2026-07-27T07:05:43.279085Z","times_seen":524,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48Y2lyY2xlIGN4PSI5LjAyIiBjeT0iOC45OCIgcj0iNS4wMiIgZmlsbD0iI0YyRTM3MyIvPjxwYXRoIGQ9Ik0xMC41OSAzYy0uMzcuNDktMS4xNi44LTEuNzMuOTdhNS4wMiA1LjAyIDAgMCAwLTQuOCA1LjhjLjQ1IDEuMzkgMS40IDIuMzMgMi42OCAyLjQgMS4zNS4wOCAyLjY2LS40IDMuMjgtMS44OS41LTEuMTkgMS4zNy0xLjU0IDEuNzQtMS42MUgxNC42bC0uNjUtLjVjLTEuMDQtLjktMi42NS0uOC0zLjA4LS40Mi0uNS40My0xLjA1LjUyLTEuMzEuNTUtMS42IDAtMS43NC0xLjIyLTEuNzQtMS41di0uMDRjMC0uMzItLjAxLTEuMjYgMS41LTEuNzYuNTYtLjIuOS0uNSAxLjEtLjg0LjMyLS40Ni4yNS0uOS4xNy0xLjE2WiIgZmlsbD0idXJsKCNhYnhzczVzZnkpIi8+PHBhdGggZD0iTTEzLjEyIDExLjg4YTUuMDEgNS4wMSAwIDAgMS05LjA0LTJjLjMuODkgMS4yIDIuMzIgMi45IDIuMjkgMS44Mi0uMDQgMi43My0xLjE4IDIuOTctMS44LjI1LS42NC44Ni0xLjQ3IDEuOC0xLjctLjM4LjI0LTEuMDguOS0xLjAxIDEuNy4wOC45Ny44NyAxLjYxIDIuMzggMS41WiIgZmlsbD0idXJsKCNiYnhzczVzZnkpIi8+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJhYnhzczVzZnkiIHgxPSI2LjI1IiB5MT0iNC40OCIgeDI9IjExLjI2IiB5Mj0iOS42OSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiNGNUM4NTkiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNERTM2MzMiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCBpZD0iYmJ4c3M1c2Z5IiB4MT0iNy4yNSIgeTE9IjEwLjkyIiB4Mj0iOS4wMyIgeTI9IjE0LjAzIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iI0YzQkU1NiIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI0UwNDQzNyIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjwvc3ZnPg=="}},"time_used":1,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":1,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCXLM.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.537Z","timestamp":1785126258537,"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 /crypto/XTVCXLM.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 04:24:18 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: \"ffd29c630a9fe999d01471d0ceac5c6b\"\r\nlast-modified: Wed, 08 Sep 2021 09:05:16 GMT\r\ncdn-cachedat: 08/09/2025 14:32:31\r\nx-amz-id-2: YZtg2P4+mRmydhllZ/I1E657M+T0SO+7a+IEpIZxOlvvbyhLIfs6UL5Rd5//FoqLQhaDI1Xth4k=\r\nx-amz-request-id: YBV2154XR2P9QRKM\r\nx-amz-meta-hash: ffd29c630a9fe999d01471d0ceac5c6b\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: bd0d1b72ff6526790f05f9fdb7c6bae8\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":1093,"size_decoded":1526,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1093), with no line terminators","md5":"ffd29c630a9fe999d01471d0ceac5c6b","sha1":"d9003f32f6087b9a46353f959602d3511294008b","sha256":"6dc51d2201247d8a17b12634ee5b4cf7d52ad336fa76c1376fc4eb855c851e02","sha512":"6606bcbbf43bd06edc879aacc5ff0fb80e44f05b3a534810293e898a4dbfe53e69b8b69a6c9ae2b55d2b456f6b766dce8a859ce4e16739b1fcd3cab66bb8fb8b","ssdeep":"","tlshash":"76110dea9265a44ce2efcd9dbf294411008a70b6b5f314d4e27cba1f885e2d99a00e20","first_seen":"2024-12-27T07:10:17.140585Z","last_seen":"2026-07-27T07:05:43.272216Z","times_seen":814,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSJ1cmwoI3BhaW50MF9saW5lYXIpIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTEyLjU4OSA1LjY3OGwtMS4yMDQuNjUyTDUuNTcgOS40ODFBMy44NjggMy44NjggMCAwMTYgNy4xNzFjLjMtLjU1Ny43MzMtMS4wMiAxLjI1My0xLjM0NWEzLjMwOCAzLjMwOCAwIDAxMS43MTUtLjUwNiAzLjMwMSAzLjMwMSAwIDAxMS43MjUuNDY4bC42OS0uMzc0LjEwMi0uMDU2YTQuMDE2IDQuMDE2IDAgMDAtNC40MDctLjM2N0E0LjM0NSA0LjM0NSAwIDAwNS4zOTIgNi42NWE0LjcxOCA0LjcxOCAwIDAwLS42MSAyLjY5NC44NjIuODYyIDAgMDEtLjA5Ny40NjMuNzkzLjc5MyAwIDAxLS4zMjEuMzI4TDQgMTAuMzMydi45MmwxLjA3LS41OC4zNDctLjE4OS4zNDEtLjE4NSA2LjEzLTMuMzIyLjY4OC0uMzczTDE0IDUuODN2LS45MmwtMS40MTEuNzY3ek0xNCA2Ljc1bC03Ljg5NCA0LjI3Ni0uNjg5LjM3NEw0IDEyLjE2OHYuOTE5bDEuNDA4LS43NjMgMS4yMDQtLjY1MiA1LjgyLTMuMTU2YTMuODY4IDMuODY4IDAgMDEtLjQzIDIuMzE2IDMuNTg3IDMuNTg3IDAgMDEtMS4yNTQgMS4zNDcgMy4zMDggMy4zMDggMCAwMS0xLjcxOC41MDQgMy4zMDIgMy4zMDIgMCAwMS0xLjcyNi0uNDdsLS4wNDMuMDIzLS43NDcuNDA1YTQuMDE3IDQuMDE3IDAgMDA0LjQwNi4zNjggNC4zNDUgNC4zNDUgMCAwMDEuNjg3LTEuNjU4IDQuNzE4IDQuNzE4IDAgMDAuNjExLTIuNjk2Ljg2My44NjMgMCAwMS4wOTctLjQ2My43OTMuNzkzIDAgMDEuMzIxLS4zMjhMMTQgNy42NjdWNi43NXoiIGZpbGw9IiNmZmYiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9InBhaW50MF9saW5lYXIiIHgxPSIzLjM0OSIgeTE9IjMuMTIyIiB4Mj0iMjEuOTA0IiB5Mj0iMjQuNDM0IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iIzFBMUUyMSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzA2MDYwQSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjwvc3ZnPg=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCUNI.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.588Z","timestamp":1785126258588,"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 /crypto/XTVCUNI.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=4, 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 04:24:18 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: \"b5448d7f7af0829d7786ee672461c611\"\r\nlast-modified: Wed, 08 Sep 2021 09:05:45 GMT\r\ncdn-cachedat: 08/14/2025 09:11:14\r\nx-amz-id-2: mApumOB6Uakt11sOW58tSH/TNhREmVvq0iKr2YsoobN5s79yDaUcThjWw6HaRYZAn3I8SVhi/S4=\r\nx-amz-request-id: WDJ5G88DVTM2WG8D\r\nx-amz-meta-hash: b5448d7f7af0829d7786ee672461c611\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: dfd24d7b0b8f54b84fc8c51a15619022\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":4992,"size_decoded":3270,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (4992), with no line terminators","md5":"b5448d7f7af0829d7786ee672461c611","sha1":"9127d8224c97636a82063d8231596e30f2565166","sha256":"d0c63ce8ea750b9574043065cc1552cb975ab6c8399bd650358ca0b742bb4e0b","sha512":"b1d2aa9ef6f495fe5c61ad4115a549e72804efdec7e50a7defb8696d327ec633fba92489c9f2b590449af39ef96aee565cdef4300db18c4b91c56073894c2068","ssdeep":"96:bai7S35NnrNKcGH+zEvyZZb2AD+EeVSB9v1REcaY:J2pNnxIvyZd2A1eVSB9NCe","tlshash":"25a1ffca21b0ab99e88de56d9baffdd0001a74dbb4f294c15bdb870c950e9c4ff18494","first_seen":"2025-01-22T20:25:04.72559Z","last_seen":"2026-07-27T07:05:43.357644Z","times_seen":813,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSJ1cmwoI3BhaW50MF9saW5lYXIpIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNNi40NTYgNi42NTZsLjAwMS4wMDFjLjA5LjA4MS4xNTcuMTQyLjIuMTg1bC4wMjUuMDI3YS4yNjIuMjYyIDAgMDEuMDE4LjAyMmMuMDkuMTI2LjA1Ni4yNC0uMDk3LjMyOC0uMDg1LjA1LS4yNi4xLS4zNDcuMS0uMSAwLS4xMzMtLjA0LS4xMzMtLjA0bC0uMDItLjAxOGMtLjA1LS4wNDItLjEwNi0uMDkyLS4zNjQtLjU2MWEyNjEuMjg2IDI2MS4yODYgMCAwMC0uNzYxLTEuMTk2Yy0uMDIyLS4wMi0uMDIyLS4wMi43MTkgMS4zMzMuMDk1LjIyNS4wNTQuMzM2LjAzMy4zOTJhLjExMi4xMTIgMCAwMC0uMDEuMDM0YzAgLjA4Mi0uMDIxLjEyNS0uMTIuMjM3LS4xNjQuMTg4LS4yMzguMzk4LS4yOTEuODM0LS4wNi40ODktLjIyNy44MzQtLjY5IDEuNDI1LS4yNzIuMzQ2LS4zMTcuNDA5LS4zODUuNTQ4YTEuMDQgMS4wNCAwIDAwLS4xMi40OTZjLS4wMS4yMzQuMDEuMzg2LjA4LjYxLjA2MS4xOTYuMTI2LjMyNS4yOS41ODQuMTQuMjI0LjIyMi4zOS4yMjIuNDU1IDAgLjA1Mi4wMS4wNTIuMjI5LjAwMS41MjQtLjEyLjk1LS4zMzMgMS4xODgtLjU5NC4xNDgtLjE2LjE4My0uMjUuMTg0LS40Ny4wMDEtLjE0NS0uMDA0LS4xNzYtLjA0Mi0uMjU5LS4wNjItLjEzNS0uMTc2LS4yNDgtLjQyNS0uNDIyLS4zMjgtLjIyOS0uNDY4LS40MTMtLjUwNi0uNjY2LS4wMzItLjIwOC4wMDUtLjM1NC4xODYtLjc0Mi4xODctLjQwMS4yMzQtLjU3Mi4yNjUtLjk3Ny4wMi0uMjYuMDQ5LS4zNjQuMTIyLS40NDcuMDc3LS4wODYuMTQ2LS4xMTUuMzM1LS4xNDIuMzEtLjA0My41MDctLjEyNS42NjktLjI3N2EuNi42IDAgMDAuMjA4LS40NTFsLjAwNy0uMTQ2LS4wNzktLjA5M0M2Ljc2MyA2LjQyOCA0LjAxNyA0IDQgNGExOS44NDYgMTkuODQ2IDAgMDAyLjQ1NiAyLjY1NnptLTEuNTkgNC40MTJhLjI2LjI2IDAgMDAtLjA3OC0uMzM5Yy0uMTAxLS4wNjktLjI2LS4wMzYtLjI2LjA1NGEuMDY1LjA2NSAwIDAwLjAwNi4wMjZsLjAwNC4wMDdjLjAwNC4wMDYuMDA5LjAxLjAxNS4wMTZsLjAxMy4wMS4wMTEuMDA2Yy4wNTYuMDMuMDYuMDYzLjAxNi4xMy0uMDQ1LjA3LS4wNDEuMTMuMDEuMTcxLjA4My4wNjcuMi4wMy4yNjItLjA4eiIgZmlsbD0iI0ZGMEE2RiIvPjxwYXRoIGQ9Ik02LjY5NyA0LjcxYy0uMDE2LS4wMDUtLjAwMy0uMDA4LjAzLS4wMTMuMTE0LS4wMTguMzg1LjAwNi41Ny4wNTIuNDM1LjEwNS44My4zNzUgMS4yNTIuODU1bC4xMTIuMTI4LjE2LS4wMjdhMy4zMTkgMy4zMTkgMCAwMTEuOTM4LjI0OWMuMTU4LjA3NC40MDguMjIzLjQzOS4yNjFhLjcxLjcxIDAgMDEuMDQuMTc0Yy4wNDMuMjkuMDIxLjUxLS4wNjUuNjc2YS41MTMuNTEzIDAgMDAtLjAzLjA2NGwtLjAwNS4wMThjLS4wMS4wMzctLjAwMy4wNjYuMDE3LjExNGEuMTg1LjE4NSAwIDAwLjE2NS4xMDdjLjE0MyAwIC4yOTctLjIzNi4zNjgtLjU2NGwuMDI5LS4xMy4wNTYuMDY0Yy4zMDcuMzU2LjU0OS44NDEuNTkgMS4xODdsLjAxLjA5LS4wNS0uMDgyYTEuMDA1IDEuMDA1IDAgMDAtLjI5My0uMzE0Yy0uMjA3LS4xNC0uNDI1LS4xODctMS4wMDMtLjIxOC0uNTIxLS4wMjgtLjgxNy0uMDc0LTEuMTEtLjE3MS0uNDk4LS4xNjYtLjc0OS0uMzg3LTEuMzQtMS4xOC0uMjY0LS4zNTMtLjQyNi0uNTQ4LS41ODctLjcwNC0uMzY4LS4zNTctLjcyOC0uNTQ0LTEuMTktLjYxN2ExLjA5NSAxLjA5NSAwIDAxLS4xMDMtLjAxOXoiIGZpbGw9IiNGRjBBNkYiLz48cGF0aCBkPSJNMTEuMzE1IDUuNTE1Yy4wMTQtLjIzNi4wNDUtLjM5Mi4xMDgtLjUzNGEuNTcuNTcgMCAwMS4wNTItLjEwMi4zNTkuMzU5IDAgMDEtLjAyNC4wOTIgMS4yMzggMS4yMzggMCAwMC0uMDIyLjU0N2MuMDQuMjc4LjA2My4zMTguMzUxLjYyLjEzNS4xNC4yOTMuMzE5LjM1LjM5NWwuMTAzLjEzOS0uMTAzLS4xYTQuNDM4IDQuNDM4IDAgMDAtLjQ4My0uMzkyLjEzNy4xMzcgMCAwMC0uMDM4LS4wMTZoLS4wMWMtLjAxLjAwMy0uMDE3LjAxLS4wMjguMDIxLS4wMjUuMDI1LS4wMy4wNjMtLjAzNC4yNC0uMDA1LjI3Ni0uMDQyLjQ1NC0uMTMuNjMtLjA0OS4wOTctLjA1Ni4wNzYtLjAxMy0uMDMyLjAzMy0uMDguMDM2LS4xMTYuMDM2LS4zODQgMC0uNTM3LS4wNjMtLjY2Ni0uNDMtLjg4OGEzLjczNSAzLjczNSAwIDAwLS4zNC0uMTggMS4yNTQgMS4yNTQgMCAwMS0uMTY1LS4wODJjLjAxLS4wMS4zNjcuMDk2LjUxMS4xNTIuMjE0LjA4NC4yNS4wOTUuMjc1LjA4NS4wMTgtLjAwNy4wMjYtLjA1OS4wMzQtLjIxem0tNC42NTEtLjQxMmMtLjAzNS40MTQuMTI1Ljk3LjM4MiAxLjMzMi4yLjI4LjUwOS40OTguNzM3LjUyLjE1LjAxMy4xOTUtLjAzNS4xMjctLjEzNmEyLjU2MyAyLjU2MyAwIDAxLS4yNC0uNDQ4IDUuMDI5IDUuMDI5IDAgMDEtLjA5Mi0uMzc2Yy0uMTA3LS41MTItLjIxMy0uNzEtLjQ1Ni0uODYyYTEuNDUxIDEuNDUxIDAgMDAtLjM5LS4xNDhsLS4wNTgtLjAxLS4wMS4xMjh6bTQuMzM5IDQuMDI2QzkuOCA4LjYzNCA5LjM3NyA4LjIwNSA5LjM3NyA3LjQ4YzAtLjEwNy4wMDMtLjE5NC4wMDctLjE5NGEuODcuODcgMCAwMS4xMDQuMDc4Yy4yNDQuMi41MTcuMjg1IDEuMjczLjM5OC40NDUuMDY3LjY5Ni4xMi45MjcuMTk4LjczNC4yNSAxLjE4OC43NTQgMS4yOTYgMS40NDEuMDMyLjIuMDE0LjU3NS0uMDM3Ljc3Mi0uMDQuMTU2LS4xNjQuNDM3LS4xOTYuNDQ4LS4wMDUuMDAyLS4wMDktLjAwNS0uMDEyLS4wMTlhLjMxOS4zMTkgMCAwMS0uMDA5LS4wNjEgMS4wMDMgMS4wMDMgMCAwMC0uMzU0LS42OThjLS4yNDQtLjIxNC0uNTcyLS4zODUtMS4zNzMtLjcxNHptLS45MDMtLjA1NWMuMDE4LjA1Mi4wNDQuMTY5LjA1OS4yNi4wOTYuNTg2LS4yMDUgMS4wNi0uNzkgMS4yNDNhMTAuMDQgMTAuMDQgMCAwMS0uMjk1LjA2NGwtLjEwOS4wMi0uMTQuMDI0Yy0uNDc4LjA4Mi0uNjkxLjE0LS45MDYuMjQ1LS4xNTIuMDc1LS4zMzcuMTg3LS4zMjUuMTk4LjAwMS4wMDIuMDA5IDAgLjAyLS4wMDJhLjUwNy41MDcgMCAwMC4wNTctLjAxN2MuMjctLjA5Ny41NzEtLjE0NyAxLjAyOS0uMTcxbC4yLS4wMTMuMDg3LS4wMDYuMDg3LS4wMDcuMDQtLjAwNC4wNDUtLjAwNWMuNDA4LS4wNTIuNjktLjE3OC45MS0uNDA3YTEuMDYgMS4wNiAwIDAwLjI1NC0uNDEyYy4wMzctLjEwNi4wNDItLjE0Ni4wNDMtLjMzMyAwLS4xOTItLjAwNS0uMjI3LS4wNDUtLjM0NGExLjA1NSAxLjA1NSAwIDAwLS4xOTQtLjM2bC0uMDU3LS4wNjYuMDMuMDkzeiIgZmlsbD0iI0ZGMEE2RiIvPjxwYXRoIGQ9Ik0xMC43MSAxMC4zMzVjLS4xNi0uMzUxLS4xOTYtLjY5LS4xMDktMS4wMDYuMDEtLjAzNC4wMjQtLjA2Mi4wMzQtLjA2MmEuNjI3LjYyNyAwIDAxLjA4NC4wNDZjLjA3My4wNTEuMjIuMTM3LjYxNC4zNTYuNDkxLjI3My43NzEuNDg1Ljk2Mi43MjcuMTY3LjIxMi4yNy40NTMuMzIuNzQ4LjAyOC4xNjYuMDExLjU2Ny0uMDMuNzM1LS4xMzMuNTMtLjQ0Ljk0NS0uODc3IDEuMTg4YTEuMTIyIDEuMTIyIDAgMDEtLjEyOC4wNjVjLS4wMDIgMC0uMDAyLS4wMDUuMDAxLS4wMTNsLjAwNS0uMDE3YTEuNDggMS40OCAwIDAxLjA0Ni0uMTA1Yy4xNDctLjMxNC4xNjQtLjYyLjA1Mi0uOTYtLjA2OC0uMjEtLjIwNy0uNDYzLS40ODctLjg5My0uMzI3LS41LS40MDctLjYzMy0uNDg3LS44MXpNNy43IDExLjQ4NmMtLjUwNy4wODQtMS4wNjIuMzU3LTEuNTA4Ljc0MmwtLjEzMy4xMTUuMTE2LjAxOWMuNjEuMDk3Ljc3NC4xODMgMS4xOTcuNjI4LjI0My4yNTYuMzI1LjMxMy41MjcuMzY2LjI5Ny4wNzcuNTg5LS4wNjUuNjktLjMzNWEuNjMuNjMgMCAwMC0uMDEzLS40MjFjLS4xMjMtLjIzOS0uNDc5LS4zMTYtLjY1LS4xNDEtLjE0NC4xNDYtLjEwMi4zNjUuMDc2LjQwMy4wNC4wMDkuMDQuMDA3LS4wMS0uMDE2LS4wNzktLjAzNi0uMTEyLS4wODYtLjExMy0uMTY2IDAtLjE4Ni4yMDgtLjI5MS40MDItLjIwMi4xNDMuMDY2LjIuMTUyLjIuMzAyYS4zNzEuMzcxIDAgMDEtLjQxOC4zNzcuNjA5LjYwOSAwIDAxLS4zNDUtLjE4NC40NzMuNDczIDAgMDEuMTU1LS43MjguNzIuNzIgMCAwMS43MDcuMDY2Yy4yNDkuMTY2LjM1NS4zMTkuNTcuODE5LjA3LjE2Mi4xNi4zNDYuMi40MDcuMjAzLjMxLjQ0Ni40NjMuNzQuNDYzYS44OC44OCAwIDAwLjQzNi0uMTA4Yy4xMTQtLjA1OC4yNzUtLjE2OS4yNjMtLjE4YS40MDQuNDA0IDAgMDAtLjEwNS4wMzNjLS4zMi4xMjctLjY0NS4xMTktLjgzNS0uMDIzLS4xMTktLjA4OS0uMjE1LS4yNjYtLjI2NC0uNDg4YTEwLjY2NCAxMC42NjQgMCAwMS0uMDYzLS4zNzZjLS4wNjUtLjQyOC0uMTI4LS42Mi0uMjc2LS44NDEtLjE1LS4yMjYtLjQ0LS40MTUtLjc2My0uNWEyLjMwNSAyLjMwNSAwIDAwLS43ODQtLjAzMXoiIGZpbGw9IiNGRjBBNkYiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik02Ljk5IDguMTc4YS41NTMuNTUzIDAgMDEuMzMtLjM2Ny42MzQuNjM0IDAgMDEuMzc0LjAzNmMuMTc0LjA5LjMuMjk2LjI3My40NDQtLjAzNC4xODEtLjMyMS4zMjYtLjY1Mi4zMjktLjE2OSAwLS4yMzEtLjAyMi0uMjk2LS4xMS0uMDQtLjA1NS0uMDU1LS4yMzEtLjAyOC0uMzMyem0uNjYtLjI2N2MuMDg2LjA1NC4xMDguMTM0LjA1Ny4yMDgtLjAzNS4wNTEtLjE0My4xLS4yMjMuMS0uMTIgMC0uMjUtLjA4Ny0uMjUtLjE2NiAwLS4xNi4yNS0uMjQ1LjQxNS0uMTQyeiIgZmlsbD0iI0ZGMEE2RiIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQwX2xpbmVhciIgeDE9IjIuMDM4IiB5MT0iOSIgeDI9IjE4IiB5Mj0iNC4zNjYiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjRkZGMEY2Ii8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjRkZCM0NGIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCMINA.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.713Z","timestamp":1785126258713,"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 /crypto/XTVCMINA.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 04:24:18 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: \"dd2c32797a3ed266b30a7456cbe598ff\"\r\nlast-modified: Mon, 25 Oct 2021 15:58:35 GMT\r\ncdn-cachedat: 08/09/2025 14:55:35\r\nx-amz-id-2: +K+x56Xg1iTVr8cC4GtivDsELU3+P/pd/qXknCErNuTCNSI4Uhh6tJfYEMCqk5GSIhmcUP/pqqY=\r\nx-amz-request-id: CYGTK1GGSMY6B3B0\r\nx-amz-meta-hash: dd2c32797a3ed266b30a7456cbe598ff\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: bc5f445b22ad315889e7375a615e829b\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":2431,"size_decoded":2116,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (2431), with no line terminators","md5":"dd2c32797a3ed266b30a7456cbe598ff","sha1":"8599d261533597533ad76160343fb7d23335b174","sha256":"6c473218388cfc24a58200731027b0d81e68065e3155504b31803dc9aff3d3ff","sha512":"358c51c3f3c9f323275d89a9127d2149d24c9e0f0703ba49b1c52703a1f69371f56a682f5adc409a6a831373769cf3a9c0c98018de6f1a97e72ce9c72c3dfa01","ssdeep":"","tlshash":"a34124dab760a7eed4ced96dcf31dde4506750ad61e242c66af68f1d140f9c2be00920","first_seen":"2024-02-25T12:29:27Z","last_seen":"2026-07-27T05:33:43.595202Z","times_seen":334,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSJ1cmwoI3BhaW50MF9saW5lYXJfMTUzMCkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48ZyBvcGFjaXR5PSIuOCIgZmlsbD0iI2ZmZiI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik05IDEzLjVjLjU2NC4wMjIuNzM1LS40ODIuODczLS45MzUuMDMzLS4xMS4wNjYtLjIxNC4xMDItLjMwNi42My0uMTkgMS4wNDYtLjczMyAxLjE1My0xLjU2bC43MDEtNC44NzNjLjMzLS4wNTMuODU0LjAxIDEuMTcxLjA5NlYxM2gxVjcuMjljMC0uODIyLS4zMjUtMS40MDMtMS0xLjY0NHYtLjM5MWMwLS40NTItLjMyNS0uNzU1LS43MzEtLjc1NS0uNDA2IDAtLjcyMy4yNTMtLjc5LjcxNGwtLjA1LjM2MmMtLjczNy4yMDgtMS4xMTcuODAzLTEuMjQzIDEuNzYzbC0uNTcgNC42N2MtLjIwMy4wMzgtLjQxLjA1NS0uNjE2LjA1YTIuODcyIDIuODcyIDAgMDEtLjYxNy0uMDVsLS41Ny00LjY3Yy0uMTI0LS45Ni0uNTA1LTEuNTU1LTEuMjQyLTEuNzYzbC0uMDUtLjM2MmMtLjA2Ny0uNDYtLjY4LS43MTQtMS4wODUtLjcxNC0uNDA2IDAtLjczMi4zMDMtLjczMi43NTV2LjM5QzQuMDMgNS44ODggNCA2LjQ3MiA0IDcuMjk0VjEzaDFWNS44OTlsLjAyLS4wMDRhMi44NSAyLjg1IDAgMDExLjE1LS4wN2wuNzAyIDQuODczYy4xMDcuODI4LjUyMyAxLjM3MSAxLjE1MyAxLjU2MS4wMzYuMDkxLjA2OS4xOTcuMTAyLjMwNi4xMzguNDUzLjMxLjk1Ny44NzMuOTM0em0wLTEuMDg4YTMuMTggMy4xOCAwIDAxLS41NTgtLjA0MWMuMDQ3LjM2LjEzMS43Ny41NTguODIzLjQyNy0uMDU0LjUxMS0uNDYyLjU1OC0uODIzYTMuMTggMy4xOCAwIDAxLS41NTguMDQxem0tNC4yOTYuMzI1SDQuMzFsLjAwMy01LjQ0NGMwLS42OTcuMDU0LTEuMDM0LjM5MS0xLjI0MXY2LjY4NnptMS44NjctNi44MTVjLjQ5My4xOC43NTkuNTQxLjg2NSAxLjM3bC41NDIgNC41NzNjLS41MzgtLjM4OC0uNjIxLS40ODYtLjcxMi0xLjE5M2wtLjY5NS00Ljc1em0tLjk3Ny0uNDE3YTIuMzkgMi4zOSAwIDAwLS41OTguMDU0di0uMzJjMC0uMzI2LjIyNS0uNDI5LjQ0LS40MjkuMTU4IDAgLjY4NS4wOC43MzUuNDI2bC4wMzkuMjgyYTYuODQ3IDYuODQ3IDAgMDAtLjU1OC0uMDExSDUuNTk0di0uMDAyek0xMyAxMi43MzhoLjY5VjcuMjkzYzAtLjY5Ny0uMzUzLTEuMDM0LS42OS0xLjI0MXY2LjY4NnptLTEuNTctNi44MTZjLS40OTQuMTgtLjc2LjU0MS0uODY3IDEuMzdsLS41NDEgNC41NzNjLjUzOC0uMzg4LjYyMS0uNDg2LjcxMi0xLjE5M2wuNjk1LTQuNzV6bTEuMjYtLjM0di0uMzE5YzAtLjMyNi0uMjA2LS40NTMtLjQyMS0uNDUzLS4xNTkgMC0uMzkuMDgtLjQ0LjQyNmwtLjAzOS4yODJjLjMxNS0uMDQuNTkzLS4wMS45LjA2NHoiLz48cGF0aCBkPSJNNy40MzYgNy4yOTNjLS4xMDYtLjgzLS4zNzItMS4xOTEtLjg2NS0xLjM3bC42OTUgNC43NWMuMDkuNzA2LjE3NC44MDQuNzEyIDEuMTkybC0uNTQyLTQuNTcyek00Ljk5NiA1LjU1OWEyLjM5IDIuMzkgMCAwMS41OTgtLjA1NHYuMDAySDUuNjUyYy4wOTMtLjAwMi40NS0uMDAzLjU1OC4wMTFsLS4wNC0uMjgyYy0uMDQ5LS4zNDUtLjU3Ni0uNDI2LS43MzQtLjQyNi0uMjE1IDAtLjQ0LjEwMy0uNDQuNDN2LjMxOXpNNC4zMSAxMi43MzhoLjM5NFY2LjA1MmMtLjMzNy4yMDctLjM5MS41NDQtLjM5MSAxLjI0bC0uMDAzIDUuNDQ2ek05IDEyLjQxMmEzLjE4IDMuMTggMCAwMS0uNTU4LS4wNDFjLjA0Ny4zNi4xMzEuNzcuNTU4LjgyMy40MjctLjA1NC41MTEtLjQ2Mi41NTgtLjgyM2EzLjE4IDMuMTggMCAwMS0uNTU4LjA0MXpNMTAuNTYzIDcuMjkzYy4xMDctLjgzLjM3My0xLjE5MS44NjYtMS4zN2wtLjY5NSA0Ljc1Yy0uMDkuNzA2LS4xNzQuODA0LS43MTIgMS4xOTJsLjU0MS00LjU3MnpNMTMuNjkgMTIuNzM4SDEzVjYuMDUyYy4zMzcuMjA3LjY5LjU0NC42OSAxLjI0djUuNDQ2ek0xMi42OSA1LjI2M3YuMzJhMi4zNzMgMi4zNzMgMCAwMC0uOS0uMDY1bC4wNC0uMjgyYy4wNDktLjM0NS4yOC0uNDI2LjQzOS0uNDI2LjIxNSAwIC40Mi4xMjcuNDIuNDUzeiIvPjwvZz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9InBhaW50MF9saW5lYXJfMTUzMCIgeDE9IjkiIHkxPSIwIiB4Mj0iOSIgeTI9IjE1LjY4MyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiNDOUNBQ0UiLz48c3RvcCBvZmZzZXQ9Ii40NjkiIHN0b3AtY29sb3I9IiNEQTZDM0UiLz48c3RvcCBvZmZzZXQ9Ii42NSIgc3RvcC1jb2xvcj0iI0NENTkzOCIvPjxzdG9wIG9mZnNldD0iLjk3OSIgc3RvcC1jb2xvcj0iIzk1NzlEQyIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjwvc3ZnPg=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCBNT.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.752Z","timestamp":1785126258752,"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 /crypto/XTVCBNT.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 04:24:18 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: \"b98019d4531857d0d9f550f0ca965818\"\r\nlast-modified: Wed, 08 Sep 2021 09:04:11 GMT\r\ncdn-cachedat: 08/14/2025 09:25:09\r\nx-amz-id-2: udxI9Mto6wj4Hw4frV4R3A7s0kHQD8pfaY+3917HO1QCPrQIx/BVnzP3Ld0yxWU67545OiMnr8w=\r\nx-amz-request-id: CCS33PVM135M5GJH\r\nx-amz-meta-hash: b98019d4531857d0d9f550f0ca965818\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: 6c5604b10782bb39d5a6029f02a3d793\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":592,"size_decoded":1262,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (592), with no line terminators","md5":"b98019d4531857d0d9f550f0ca965818","sha1":"72b56b3ffa39fcb11aef46bfa833111e367a056d","sha256":"e53f150ab06d4b7bd3a21dd5e88f5e057845e99cf9eb5849729e503cf77629bb","sha512":"6e131949b01e9fc6ef37032d24c619c99be3396fe2ac5e97ae953c7fef8195605e2d322dfab7ea397c1ef484d17b07bdb4ae9f9ddda58d856bd1e68b7bddb6ca","ssdeep":"","tlshash":"31f087d5da1b6c2de715c3b9f928c85d554f106b9f4d03d4d1d0ed3a64603c22c08655","first_seen":"2026-04-10T14:31:13.646587Z","last_seen":"2026-07-27T05:33:43.532526Z","times_seen":14,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSJ1cmwoI3BhaW50MF9saW5lYXIpIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTkuMDEyIDMuMTYzbC0yLjYxIDEuNTMgMi42MSAxLjUzIDIuNjU2LTEuNTMtMi42NTYtMS41M3ptLjQ2OSA4LjE1OXYzLjA2TDEzIDEyLjM2VjkuM2wtMy41MiAyLjAyek0xMiA1LjY1MnYzLjA2bC0yLjUyIDEuNTN2LTMuMDZMMTIgNS42NTF6bS02IDMuMDZsMi41MTYgMS41M3YtMy4wNkw2IDUuNjUxdjMuMDZ6bTAgNC4xNGwyLjUxNiAxLjUzdi0zLjA2Nkw2IDkuNzl2My4wNnoiIGZpbGw9IiNmZmYiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9InBhaW50MF9saW5lYXIiIHgxPSIzLjM0OSIgeTE9IjMuMTIyIiB4Mj0iMjEuOTA0IiB5Mj0iMjQuNDM0IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iIzFBMUUyMSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzA2MDYwQSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjwvc3ZnPg=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCORDER.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.811Z","timestamp":1785126258811,"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 /crypto/XTVCORDER.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 04:24:18 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: \"c93042c2db68576f99586f24433dd6b3\"\r\nlast-modified: Mon, 11 Nov 2024 13:46:04 GMT\r\nx-amz-id-2: kXfDPAEvsk9Y3zmXEIUVbN5j8dSQEDXmJ5qR3W6Mm6o/msWDevQ1H7QWca/7XpjEnQYablfux8U=\r\nx-amz-request-id: GGA1VPE9W93R90HN\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: c93042c2db68576f99586f24433dd6b3\r\ncdn-proxyver: 1.53\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/18/2026 12:52:44\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 7c016c8e586484390d2942d3a28bb403\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":1083,"size_decoded":1483,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1083), with no line terminators","md5":"c93042c2db68576f99586f24433dd6b3","sha1":"0b3023e2e4a947c818fa75ec21c3d4e615321a00","sha256":"c7b67fc8cea72e514da1ed143706aebaf3c32b1e2bb406a4af6df578996d9649","sha512":"22b329bf4338d58905cc078c0f0f043a236b849bd65b563e1759ccffb0f0426ffe35f4e92c861ff61f9fdfebb8a1bdd8e7964f178dc689ddc879ba39afda0ba4","ssdeep":"","tlshash":"cb11383e871cc7ecd447d6bc9b1210b153ce916ab4a583a8a8dec77ac00aca1dc03520","first_seen":"2025-10-01T01:34:40.566103Z","last_seen":"2026-07-27T07:05:43.274097Z","times_seen":96,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTMuNjMgMTAuNWEuMS4xIDAgMCAxIC4xLjEzIDUgNSAwIDAgMS05LjQ2IDAgLjEuMSAwIDAgMSAuMS0uMTNoMi41OGEuMS4xIDAgMCAxIC4wOC4wNCAyLjUgMi41IDAgMCAwIDMuOTQgMCAuMS4xIDAgMCAxIC4wOC0uMDRoMi41OFptLjI5LS41OGEuMS4xIDAgMCAxLS4xLjA4aC0yLjM4Yy0uMDcgMC0uMTItLjA3LS4xLS4xNGEyLjUgMi41IDAgMCAwIDAtMS43MmMtLjAyLS4wNy4wMy0uMTQuMS0uMTRoMi4zOGEuMS4xIDAgMCAxIC4xLjA4IDUuMDMgNS4wMyAwIDAgMSAwIDEuODRabS0uMi0yLjU1YS4xLjEgMCAwIDEtLjA5LjEzaC0yLjU4YS4xLjEgMCAwIDEtLjA4LS4wNCAyLjUgMi41IDAgMCAwLTMuOTQgMCAuMS4xIDAgMCAxLS4wOC4wNEg0LjM3YS4xLjEgMCAwIDEtLjEtLjEzYy4xNy0uNDguNC0uOTMuNy0xLjMzQS4xLjEgMCAwIDEgNS4wNSA2aDcuOWEuMS4xIDAgMCAxIC4wOC4wNGMuMy40LjUzLjg1LjcgMS4zM1pNMTIuNCA1LjMzYy4wNi4wNi4wMi4xNy0uMDcuMTdINS42N2MtLjEgMC0uMTQtLjEtLjA3LS4xN2E0Ljk4IDQuOTggMCAwIDEgNi44IDBaTTQuMTggOGEuMS4xIDAgMCAwLS4xLjA4IDUuMDMgNS4wMyAwIDAgMCAwIDEuODRjLjAxLjA1LjA1LjA4LjEuMDhoMi4zOGMuMDcgMCAuMTItLjA3LjEtLjE0YTIuNSAyLjUgMCAwIDEgMC0xLjcyYy4wMi0uMDctLjAzLS4xNC0uMS0uMTRINC4xOFoiIGZpbGw9IiNmZmYiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImEiIHgxPSI5IiB5MT0iMCIgeDI9IjkiIHkyPSIxOCIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiM4OTk3RjAiLz48c3RvcCBvZmZzZXQ9Ii41IiBzdG9wLWNvbG9yPSIjNDcxNDU2Ii8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMEEwMTE2Ii8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PC9zdmc+"}},"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":"scanner.tradingview.com/crypto/metainfo?api_key=widget_user_token\u0026label-product=screener-crypto_mkt-old","fqdn":"scanner.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"143.204.238.100","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"xhr","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.728Z","timestamp":1785126257728,"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.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Thu, 09 Oct 2025 00:00:00 GMT","end":"Fri, 06 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"02:47:4D:AC:A6:12:65:AD:C2:19:CD:7E:61:B8:BF:E1:D8:36:CF:00","sha256":"12:7C:86:50:31:B1:3E:03:76:8B:F1:84:D4:AD:BC:95:0E:C1:60:40:F5:CE:75:F0:11:AF:91:BC:55:C1:D7:36"}}},"request":{"raw":"POST /crypto/metainfo?api_key=widget_user_token\u0026label-product=screener-crypto_mkt-old HTTP/1.1\r\nHost: scanner.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/json, text/javascript, */*; q=0.01\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nContent-Type: application/x-www-form-urlencoded; charset=UTF-8\r\nContent-Length: 22\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: 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":22,"data":"{\"markets\":[\"crypto\"]}"}},"response":{"raw":"HTTP/2 200 \r\ncontent-type: application/json; charset=utf-8\r\ndate: Mon, 27 Jul 2026 04:24:17 GMT\r\nvary: Origin\r\ncontent-encoding: gzip\r\nx-perm-error: InvalidCredential\r\nserver: tv\r\nvia: 76.164.232.88:443, 1.1 038b416cc16744bbf679fb2b2447475e.cloudfront.net (CloudFront)\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\naccess-control-allow-origin: https://www.tradingview-widget.com\r\naccess-control-allow-headers: Referer,Accept\r\naccess-control-allow-methods: GET, POST\r\naccess-control-allow-credentials: true\r\naccess-control-max-age: 86400\r\nx-cache: Miss from cloudfront\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: LRaBmmLanITf0UvfUMjuWcJ_kNm4WQNTqpP0tNT5ttp_Cvci7zSKBw==\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"]},{"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":166741,"size_decoded":29469,"mime_type":"application/json; charset=utf-8","magic":"JSON text data","md5":"646848243c2bad19d5122884d5cd2829","sha1":"0a717984d36bf13c6da3d75b7aafe8ce1bfc6468","sha256":"bc7dca0abaf107b53cce0833fce734c6faf2b5b74536ab8ca9c2143f196660a0","sha512":"88061341ff802311b05f68f9afaf3c7fed1662ed81988b589a0655f75bd5651195cea1c873819a071f7a983a43d568d2b81aeeac944a991baace1b57d87dd261","ssdeep":"3072:IqbnUTqEf8hQZ99nJZ6GJkSI1alBg33JHb:IqbKq7QZ99nJZ6GJkSI1alBg33JHb","tlshash":"16f30ea9e98524be01736f5f20fb632837bc4903f3d21858e5570e4527da235b0a76be","first_seen":"2026-07-27T04:25:12.658299Z","last_seen":"2026-07-27T04:25:12.658299Z","times_seen":1,"resource_available":false,"data":"eyJmaW5hbmNpYWxfY3VycmVuY3kiOiJVU0QiLCJmaWVsZHMiOlt7Im4iOiJhbGxfdGltZV9oaWdoX2RheSIsInQiOiJ0aW1lIiwiciI6bnVsbH0seyJuIjoiZGV4X2J1eXNfMTVtIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImRleF9idXlfdm9sdW1lXzEyaCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImRleF90eHNfY291bnRfNGgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidHdpdHRlcl9wb3NpdGl2ZSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ0ZWxlZ3JhbV9wb3NpdGl2ZSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiIyNGhfdm9sX2NtYyIsInQiOiJmdW5kYW1lbnRhbF9wcmljZSIsInIiOm51bGx9LHsibiI6ImRleF9zZWxsc18xaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJkZXhfc2VsbF92b2x1bWVfMTJoIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZGV4X3RyYWRpbmdfdm9sdW1lXzE1bSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImRleF9jcmVhdGVkX3RpbWUiLCJ0IjoidGltZSIsInIiOm51bGx9LHsibiI6ImRleF9zZWxsc180aCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJkZXhfc2VsbGVyc180aCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJkZXhfc2VsbF92b2x1bWVfNGgiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJkZXhfdHJhZGluZ192b2x1bWVfMTJoIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZGV4X2J1eXNfNGgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZGV4X3R4c19jb3VudF91bmlxXzEyaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmdfYmFsYW5jZSIsInQiOiJmdW5kYW1lbnRhbF9wcmljZSIsInIiOm51bGx9LHsibiI6Im1pbm1vdmUyIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InR2bCIsInQiOiJmdW5kYW1lbnRhbF9wcmljZSIsInIiOm51bGx9LHsibiI6ImNyeXB0b19jb21tb25fY2F0ZWdvcmllcyIsInQiOiJzZXQiLCJyIjpbXX0seyJuIjoiZGV4X3NlbGxzXzE1bSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJkZXhfYnV5ZXJzXzRoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImRleF9idXlfdm9sdW1lXzE1bSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImRleF90cmFkaW5nX3ZvbHVtZV80aCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6InR3ZWV0cyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhbGxfdGltZV9vcGVuIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoidHhzX3ZvbHVtZSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJjcnlwdG9fYmxvY2tjaGFpbl9lY29zeXN0ZW1zIiwidCI6InNldCIsInIiOltdfSx7Im4iOiJpbl90aGVfbW9uZXlfYWRkcmVzc2VzX3BlcmNlbnRhZ2UiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6ImRleF9zZWxsc18yNGgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicnRjIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZGV4X2J1eWVyc18xMmgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoic29jaWFsZG9taW5hbmNlIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJ0eHNfY291bnQiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZ2l0aHViX2NvbW1pdHMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZGV4X2J1eWVyc18yNGgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZGV4X3NlbGxfdm9sdW1lXzE1bSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImRleF90eHNfY291bnRfMTJoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InNvY2lhbF92b2x1bWVfMjRoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImN1cnJlbnRfc2Vzc2lvbiIsInQiOiJ0ZXh0IiwiciI6WyJtYXJrZXQiXX0seyJuIjoiYWRkcmVzc2VzX25ldyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJkZXhfYnV5c18xMmgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZGV4X2J1eV92b2x1bWVfMWgiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJkZXhfdHJhZGluZ192b2x1bWVfMWgiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJzdWJzZXNzaW9ucyIsInQiOiJpbnRlcmZhY2UiLCJyIjpudWxsfSx7Im4iOiJjaXJjdWxhdGluZ19zdXBwbHkiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoib3V0X3RoZV9tb25leV9hZGRyZXNzZXNfcGVyY2VudGFnZSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiZGV4X3NlbGxlcnNfMjRoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImRleF90eHNfY291bnRfdW5pcV8xNW0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoibWFya2V0X2NhcCIsInQiOiJmdW5kYW1lbnRhbF9wcmljZSIsInIiOm51bGx9LHsibiI6InRlbGVncmFtX21lbWJlcnMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicHJvZml0X2FkZHJlc3Nlc19wZXJjZW50YWdlIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJkZXhfdHhzX2NvdW50XzE1bSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJkZXhfdG90YWxfbGlxdWlkaXR5IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImRleF9idXllcnNfMWgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZGV4X3NlbGxfdm9sdW1lXzFoIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZGFpbHktYmFyLnRpbWUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiY291bnRyeSIsInQiOiJ0ZXh0IiwiciI6W119LHsibiI6ImRleF90eHNfY291bnRfdW5pcV8yNGgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZGV4X3RyYWRpbmdfdm9sdW1lXzI0aCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImNvbnRyaWJ1dG9yc2NyZWF0ZWQiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicHJpY2VzY2FsZSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJjcnlwdG9fY29kZSIsInQiOiJ0ZXh0IiwiciI6WyJVU0RGIiwiTk1SIiwiVEhFVEEiLCJXQ1QiLCJBSU9aIiwiREVFUCIsIlBST1MiLCJVU0RTIiwiRyIsIlNUT1JKIiwiUEVOR1UiLCJJTkoiLCJSRSIsIlBVTkRJWCIsIldJTiIsIlBSTCIsIkJJTyIsIlNPUEgiLCJORVdUIiwiS0VSTkVMIiwiUk9OIiwiV0JUIiwiWE1SIiwiTU1UIiwiWFJQIiwiRklMIiwiWkVDIiwiQ09SRSIsIlJWTiIsIlNFTlQiLCJUUlVNUCIsIk1FR0EiLCJFUkEiLCJNTE4iLCJTS1IiLCJDVEMiLCJBTVAiLCJNT04iLCJaQU1BIiwiSU5JVCIsIlhZTyIsIk5FQVIiLCJDSElQIiwiT1JDQSIsIkVVUlEiLCJPTkRPIiwiTFVOQSIsIlJMQyIsIk9QRyIsIlNPTCIsIkxUQyIsIk1PT0RFTkciLCJJUllTIiwiVEFPIiwiR1VOIiwiRVNQIiwiRUxBIiwiQ09XIiwiU1BVUlMiLCJJQ1AiLCJRTlQiLCJCQVJEIiwiTU5UIiwiTU9OQSIsIkVER0UiLCJVU0QxIiwiT1BYIiwiWFBMIiwiT1JCUyIsIldCVEMiLCJDUk8iLCJDVkMiLCJTVEFCTEUiLCJYVFoiLCJET1QiLCJMSU5LIiwiR09NSU5JTkciLCJTR0IiLCJIVU1BIiwiWEFVVCIsIk1MSyIsIkRFTlQiLCJMVU5DIiwiQklDTyIsIjJaIiwiUE9MIiwiSFlQRSIsIkhZUEVSIiwiQUVSR08iLCJDQUtFIiwiT0FTIiwiU1RYIiwiVFJBQyIsIlBMVU1FIiwiREFTSCIsIkNDIiwiVVNEQyIsIkFWTlQiLCJCSUdUSU1FIiwiWk9SQSIsIk9DRUFOIiwiVVNUIiwiTEEiLCJCQUJZIiwiQUFWRSIsIk1BTkVLSSIsIlNISUIiLCJGTFVJRCIsIk1BU0siLCJVU0RRIiwiQUVSTyIsIkFTVEVSIiwiUkFZIiwiTUVUSVMiLCJFVEMiLCJFVUwiLCJNQU5BIiwiQkxVUiIsIkRSSUZUIiwiU1BLIiwiS1NNIiwiWUIiLCJMSU5FQSIsIktBSUEiLCJBREEiLCJTQyIsIlZJUlRVQUwiLCJFVEgiLCJDRkciLCJET0dFIiwiTlhQQyIsIkJHQiIsIlNBSEFSQSIsIk9SQUkiLCJTTFgiLCJLUkwiLCJVU0RUIiwiUkVOREVSIiwiUkVTT0xWIiwiS0FUIiwiS0xWIiwiUE9ORCIsIkNZQkVSIiwiR1JBTSIsIlZWViIsIlNBRkUiLCJYTE0iLCJQTksiLCJQQVhHIiwiQlRDIiwiQ0tCIiwiU1VJIiwiV0FMIiwiWERDIiwiQlJFViIsIkFQVCIsIlVTQVQiLCJXRVQiLCJOQ1QiLCJQRVBFIiwiQVhMIiwiTUFOVFJBIiwiQ1NQUiIsIlJBRCIsIkJOQiIsIlQiLCJMQVQiLCJCTlQiLCJBUksiLCJGRVQiLCJTUFgiLCJQRU5ETEUiLCJaS0MiLCJCT1JBIiwiV0xEIiwiQkNIIiwiQkxFTkQiLCJVTkkiLCJCSVJCIiwiU1RHIiwiSEFFREFMIiwiU1lSVVAiLCJIQkFSIiwiTEVPIiwiQVIiLCJBUkIiLCJLSVRFIiwiQUNTIiwiREVHRU4iLCJUUlgiLCJQUk9WRSIsIlRSVVNUIiwiV0xGSSIsIkFOSU1FIiwiQVZBWCIsIkpUTyIsIk9SREVSIiwiTllNIiwiVE9OIiwiTU9SUEhPIiwiUEVBUSIsIlBST00iLCJNSU5BIiwiUkxTIiwiQUtUIiwiQSJdfSx7Im4iOiJhbGxfdGltZV9oaWdoIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiYWxsX3RpbWVfbG93IiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoibWF4X3N1cHBseSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJjb250cmlidXRvcnNhY3RpdmUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidG90YWxfc2hhcmVzX291dHN0YW5kaW5nIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImRleF9idXlzXzI0aCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJpbnRlcmFjdGlvbnMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZnJhY3Rpb25hbCIsInQiOiJ0ZXh0IiwiciI6WyJmYWxzZSJdfSx7Im4iOiJhc2siLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiIyNGhfdm9sX2NoYW5nZV9jbWMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidGVsZWdyYW1fbmVnYXRpdmUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYmxvY2tjaGFpbi1pZCIsInQiOiJ0ZXh0IiwiciI6WyJwdWxzZWNoYWluIiwiZXRoZXJldW0iLCJmYW50b20iLCJzdWlfbmV0d29yayIsInRyb24yMCIsImdub3Npc19jaGFpbiIsInVuaWNoYWluIiwiYm5iX3NtYXJ0X2NoYWluX2JlcDIwIiwic29sYW5hIiwicG9seWdvbiIsImFyYml0cnVtIiwib3B0aW1pc20iLCJjcm9ub3MiLCJiYXNlIiwiYXZhbGFuY2hlX2NfY2hhaW4iLCJ0b24iLCJ6a3N5bmNfZXJhIiwicm9uaW4iXX0seyJuIjoic291cmNlLWxvZ29pZCIsInQiOiJ0ZXh0IiwiciI6WyJzb3VyY2UvQklUTUVYIiwic291cmNlL0JJVFZBVk8iLCJzb3VyY2UvR0FURSIsInNvdXJjZS9VTklTV0FQM0JTQyIsInNvdXJjZS9RVUlDS1NXQVAzUE9MWUdPTiIsInNvdXJjZS9HRU1JTkkiLCJzb3VyY2UvU1RPTkZJMiIsInNvdXJjZS9WRUxPRFJPTUUiLCJzb3VyY2UvVkVMT0RST01FU0xJUFNUUkVBTSIsInNvdXJjZS9SQU1TRVMyIiwic291cmNlL1NVU0hJU1dBUCIsInNvdXJjZS9CVFNFIiwic291cmNlL0RFRFVTVCIsInNvdXJjZS9LUkFLRU4iLCJzb3VyY2UvQklUVU5JWCIsInNvdXJjZS9VTklTV0FQM1BPTFlHT04iLCJzb3VyY2UvQkxBQ0tIT0xFMyIsInNvdXJjZS9VTklTV0FQNFVOSUNIQUlOIiwic291cmNlL0JJU1dBUCIsInNvdXJjZS9VTklTV0FQM09QVElNSVNNIiwic291cmNlL1VOSVNXQVA0UE9MWUdPTiIsInNvdXJjZS9VTklTV0FQNEJTQyIsInNvdXJjZS9UVVJCT1NGSU5BTkNFIiwic291cmNlL0JJVEtVQiIsInNvdXJjZS9IVFgiLCJzb3VyY2UvUEFOQ0FLRVNXQVAzQlNDIiwic291cmNlL0NPSU5KQVIiLCJzb3VyY2UvQUVST0RST01FU0xJUFNUUkVBTSIsInNvdXJjZS9SQVlESVVNIiwic291cmNlL1VOSVNXQVAzQkFTRSIsInNvdXJjZS9NRVRFT1JBRFlOIiwic291cmNlL1FVSUNLU1dBUCIsInNvdXJjZS9VTklTV0FQNEFWQUxBTkNIRSIsInNvdXJjZS9WVlNGSU5BTkNFIiwic291cmNlL01FWEMiLCJzb3VyY2UvQklUSFVNQiIsInNvdXJjZS9QSEVNRVgiLCJzb3VyY2UvWktTV0FQIiwic291cmNlL1BBTkNBS0VTV0FQM1pLU1lOQyIsInNvdXJjZS9LQVRBTkEzIiwic291cmNlL1dFRVgiLCJzb3VyY2UvREVSSUJJVCIsInNvdXJjZS9TUE9PS1lTV0FQIiwic291cmNlL1VOSVNXQVA0T1BUSU1JU00iLCJzb3VyY2UvQkFTRVNXQVAiLCJzb3VyY2UvQklURklORVgiLCJzb3VyY2UvU1RPTkZJIiwic291cmNlL0NFVFVTIiwic291cmNlL0JJVEZMWUVSIiwic291cmNlL0tDRVgiLCJzb3VyY2UvUkFZRElVTUNMTU0iLCJzb3VyY2UvQklUUlVFIiwic291cmNlL0NBTUVMT1QzQVJCSVRSVU0iLCJzb3VyY2UvVU5JU1dBUDNFVEgiLCJzb3VyY2UvQ09JTlciLCJzb3VyY2UvVU5JU1dBUEJBU0UiLCJzb3VyY2UvVU5JU1dBUDRCQVNFIiwic291cmNlL0JZQklUIiwic291cmNlL1BVTFNFWDIiLCJzb3VyY2UvREVMVEFJTiIsInNvdXJjZS9PS1giLCJzb3VyY2UvQ1VSVkUiLCJzb3VyY2UvTU1GSU5BTkNFIiwic291cmNlL1ZWUzMiLCJzb3VyY2UvWFRDT00iLCJzb3VyY2UvQ09JTlNXSVRDSCIsInNvdXJjZS9MQkFOSyIsInNvdXJjZS9VTklTV0FQNEVUSCIsInNvdXJjZS9QQU5DQUtFU1dBUDNBUkJJVFJVTSIsInNvdXJjZS9DQU1FTE9UIiwic291cmNlL1JBWURJVU1DUE1NIiwic291cmNlL0RFRVBDT0lOIiwic291cmNlL1BBTkNBS0VTV0FQM0VUSCIsInNvdXJjZS9CTFVFRklOIiwic291cmNlL0JJVEFaWkEiLCJzb3VyY2UvVFJBREVSSk9FIiwic291cmNlL0NPSU5CQVNFIiwic291cmNlL1BIQVJBT0giLCJzb3VyY2UvUElPTkVYIiwic291cmNlL1VOSVNXQVAzQVJCSVRSVU0iLCJzb3VyY2UvVkVMT0RST01FMiIsInNvdXJjZS9CSU5BTkNFVVMiLCJzb3VyY2UvQllERkkiLCJzb3VyY2UvQ09JTkVYIiwic291cmNlL1BBTkdPTElOIiwic291cmNlL0JJVFNUQU1QIiwic291cmNlL0JJTkFOQ0UiLCJzb3VyY2UvUFVMU0VYIiwic291cmNlL0NSWVBUT0NPTSIsInNvdXJjZS9QT0xPTklFWCIsInNvdXJjZS9VTklTV0FQM0FWQUxBTkNIRSIsInNvdXJjZS9CVENDIiwic291cmNlL0xGSjJET1QyIiwic291cmNlL0NVUlZFQVJCSVRSVU0iLCJzb3VyY2UvT1JDQSIsInNvdXJjZS9CTE9GSU4iLCJzb3VyY2UvQklOR1giLCJzb3VyY2UvUEFOQ0FLRVNXQVAiLCJzb3VyY2UvVE9PQklUIiwic291cmNlL1VOSVNXQVA0QVJCSVRSVU0iLCJzb3VyY2UvQklUU08iLCJzb3VyY2UvQklUTUFSVCIsInNvdXJjZS9LVUNPSU4iLCJzb3VyY2UvQUVST0RST01FIiwic291cmNlL1VQQklUIiwic291cmNlL0JJVEdFVCIsInNvdXJjZS9XT09ORVRXT1JLIiwic291cmNlL0hPTkVZU1dBUCIsInNvdXJjZS9LQVRBTkEiLCJzb3VyY2UvV0hJVEVCSVQiLCJzb3VyY2UvU1VTSElTV0FQUE9MWUdPTiIsInNvdXJjZS9TWU5DU1dBUDIiLCJzb3VyY2UvWk9PTUVYIiwic291cmNlL1VOSVNXQVAiLCJzb3VyY2UvUEFOQ0FLRVNXQVAzQkFTRSIsInNvdXJjZS9TWU5DU1dBUCIsInNvdXJjZS9NRVRFT1JBRExNTSIsInNvdXJjZS9TVU5TV0FQMiJdfSx7Im4iOiJhZGRyZXNzZXNfdG90YWwiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidHhzX3ZvbHVtZV91c2QiLCJ0IjoiZnVuZGFtZW50YWxfcHJpY2UiLCJyIjpudWxsfSx7Im4iOiJ0b3RhbF9hZGRyZXNzZXNfd2l0aF9iYWxhbmNlIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImRleF9idXllcnNfMTVtIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImRleF9zZWxsX3ZvbHVtZV8yNGgiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJkZXhfdHhzX2NvdW50XzI0aCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ0b3RhbF9zdXBwbHkiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidm9sdW1lLXR5cGUiLCJ0IjoidGV4dCIsInIiOlsicXVvdGUiLCJ0aWNrIiwiYmFzZSJdfSx7Im4iOiJjcnlwdG9fdG90YWxfcmFuayIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3RyYW5zYWN0aW9uX3VzZCIsInQiOiJmdW5kYW1lbnRhbF9wcmljZSIsInIiOm51bGx9LHsibiI6InBvc3RzYWN0aXZlIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InR3aXR0ZXJfbmVnYXRpdmUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYnJlYWtfZXZlbl9hZGRyZXNzZXNfcGVyY2VudGFnZSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoibG9zc2VzX2FkZHJlc3Nlc19wZXJjZW50YWdlIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJkZXhfc2VsbGVyc18xMmgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZGV4X3R4c19jb3VudF8xaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJkZXhfdHhzX2NvdW50X3VuaXFfNGgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicG9zdHNjcmVhdGVkIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InNlY3RvciIsInQiOiJ0ZXh0IiwiciI6WyJQb2xrYWRvdCIsIk51bWVyYWlyZSIsIkthaWEiLCJNaW5hIiwiUHVkZ3kgUGVuZ3VpbnMiLCJORUFSIFByb3RvY29sIiwiUGxhdE9OIiwiR3JhbSAocHJldi4gVG9uY29pbikiLCJNT04iLCJTdGFja3MiLCJYUlAiLCJCaW5hbmNlIENvaW4iLCJBcmsiLCJLdXNhbWEiLCJUZXRoZXIgVVNEdCIsIkZldGNoLmFpIiwiTUFOVFJBIiwiRGVudCIsIkFuaW1lIChhbmltZW9uYmFzZS5hcnQpIiwiQXB0b3MiLCJQZXBlIiwiVmF1bHRhIiwiU3RhYmxlIiwiVVNBVCIsIlJvbmluIiwiV0lOa0xpbmsiLCJBa2FzaCBOZXR3b3JrIiwiUGxhc21hIiwiUE9MIChleC1NQVRJQykiLCJXZW4gTGFtYm8gRmluYW5jaWFsIiwiTG9tYmFyZCIsIkF2YWxhbmNoZSIsIlRlcnJhIENsYXNzaWMiLCJFdGhlcmV1bSIsIk9wZW5HcmFkaWVudCIsIlBhbmNha2VTd2FwIiwiUEFYIEdvbGQiLCJCT1JBIiwiV29sZiBXb3JrcyBEQU8iLCJwZWFxIiwiSHVtaWRpZmkiLCJNZWdhRVRIIiwiVGV0aGVyIEdvbGQiLCJNQU5FS0kiLCJDZW50cmlmdWdlIiwiQmlvIFByb3RvY29sIiwiTEFUT0tFTiIsIlRPTiBUb2tlbiIsIkZpbGVjb2luIiwiUmF5ZGl1bSIsIkNhcmRhbm8iLCJSYXlscyIsIkRlZ2VuIiwiQml0Y29pbiBDYXNoIiwiVHJ1c3QgVGhlIFByb2Nlc3MiLCJPcmNhIiwiRXVsZXIiLCJLbGVyb3MiLCJTaWFjb2luIiwiSml0byIsIkxpdGVjb2luIiwiUmFkd29ya3MiLCJPcmlnaW5UcmFpbCIsIkJpdHRlbnNvciIsIkN5YmVyQ29ubmVjdCIsIkRyaWZ0IiwiU3VjY2luY3QiLCJQZW5kbGUiLCJNYXJsaW4iLCJRdWFudCIsIlNvbmdiaXJkIiwiWFlPIiwiTWFzayBOZXR3b3JrIiwiQ3JlZGl0Y29pbiIsIk1PTyBERU5HIChtb29kZW5nLnZpcCkiLCJSYXZlbmNvaW4iLCJOZXJ2b3MgTmV0d29yayIsIlB1bmRpIFhbbmV3XSIsIlBsdW1lIiwiSW5pdGlhIiwiV3JhcHBlZCBCaXRjb2luIiwiT3JhaWNoYWluIiwiSHlwZXJsaXF1aWQiLCJIeXBlckNoYWluWCIsIldoaXRlQklUIENvaW4iLCJQb2x5U3dhcm0iLCJQcm9zcGVyIiwiV29ybGQgTGliZXJ0eSBGaW5hbmNpYWwgVVNEIiwiQXZhbnRpcyIsIkFyd2VhdmUiLCJPcmJzIiwiR2/QnGluaW5nIiwiTWFwbGUgRmluYW5jZSIsIkJJQ09OT01ZIChCSUNPKSIsIkJpcmIiLCJUaHJlc2hvbGQiLCJIYWVkYWwgUHJvdG9jb2wiLCJTb3BoaWFWZXJzZSIsIlNvbHN0aWNlIiwiQmFuY29yIiwiR1VOWiIsIkFlcm9kcm9tZSBGaW5hbmNlIiwiTGluZWEiLCJVbmlzd2FwIiwiTllNIiwiU3RlbGxhciIsIk1hbnRsZSIsIkFDcnlwdG9TIiwiSGVkZXJhIiwiS2xldmVyIiwiVmlydHVhbHMgUHJvdG9jb2wiLCJFc3ByZXNzbyIsIlRoZSBQYXJhbGxlbCIsIkV0aGVyZXVtIENsYXNzaWMiLCJVTlVTIFNFRCBMRU8iLCJBc3RlciBVU0RGIiwiSW50ZXJuZXQgQ29tcHV0ZXIiLCJDYXNwZXIiLCJCYWJ5IiwiUXVhbnRveiBFVVJRIiwiTWlMLmsiLCJYaW5GaW4gTmV0d29yayIsIk9jZWFuIFByb3RvY29sIiwiVGhldGEgVG9rZW4iLCJGbHVlbnQiLCJJbmplY3RpdmUgUHJvdG9jb2wiLCJCaWcgVGltZSIsIkJpdGNvaW4iLCJCcmV2aXMiLCJNZXRpc0RBTyIsIk9uZG8iLCJBSU9aIE5ldHdvcmsiLCJUZXJyYVVTRCIsIktyeWxsIiwiQ2FsZGVyYSIsIllpZWxkQmFzaXMiLCJQcm9tIiwiU0hJQkEgSU5VIiwiU3BhcmsiLCJXYWxydXMiLCJEb3VibGVaZXJvIiwiRGVjZW50cmFsYW5kIiwiV2FsbGV0Q29ubmVjdCBUb2tlbiIsIlNhbG1vbmF0aW9uIiwiQW5kcmV3IFRhdGUncyBEb2ciLCJBeGVsYXIiLCJOZWFyS2F0IiwiVG90dGVuaGFtIEhvdHNwdXIgRmFuIFRva2VuIiwiUmUiLCJBc3RlciIsIkNoYWluTGluayIsIlRlem9zIiwiT2FzeXMiLCIjVFJVTVAiLCJEYXNoIiwiU2FoYXJhIEFJIiwiU3RvcmoiLCJPUFggRmluYW5jZSIsIlF1YW50b3ogVVNEUSIsIkNhbnRvbiIsIlNvbGFuYSIsIkFtcCIsIlpjYXNoIiwiQ29yZSIsIkh1bWEgRmluYW5jZSIsIkNyb25vcyIsIktlcm5lbERBTyIsIkJpdGdldCBUb2tlbiIsIlRST04iLCJUZXJyYSIsIlZlbmljZSBUb2tlbiIsIklyeXMiLCJTUFg2OTAwIiwiTW9tZW50dW0iLCJBUkIgUHJvdG9jb2wiLCJTYWFrdXJ1IFByb3RvY29sIiwiWmFtYSIsIlpPUkEiLCJVU0QuQUkiLCJEZWVwIEFJIiwiT3JkZXJseSIsIlNBRkUoQW5XYW5nKSIsIkNpdmljIiwiTmV3dG9uIFByb3RvY29sIiwiU3RhcmdhdGUgRmluYW5jZSIsIlJlbmRlciIsIlJlc29sdiIsIk1vcnBobyIsIkJvdW5kbGVzcyIsIkVsYXN0b3MiLCJNZWxvbiIsIk5FWFBBQ0UiLCJBYXZlIiwiQmx1ciIsIkNPVyIsIlNlbnRpZW50IiwiRG9nZWNvaW4iLCJVU0RTIiwiaUV4ZWMgUkxDIiwiVVNEQyIsIk1vbmVybyIsIktpdGUiLCJNb25hdmFsZSIsIkRlZmluaXRpdmUiLCJBZXJnbyIsIkZsdWlkIl19LHsibiI6ImxhcmdlX3R4X3ZvbHVtZV91c2QiLCJ0IjoiZnVuZGFtZW50YWxfcHJpY2UiLCJyIjpudWxsfSx7Im4iOiJwcm92aWRlci1pZCIsInQiOiJ0ZXh0IiwiciI6WyJibHVlZmluIiwiYml0YXp6YSIsImh0eCIsInB1bHNleCIsIm1ldGVvcmFkbG1tIiwicXVpY2tzd2FwMyIsInBhbmdvbGluIiwia2F0YW5hMyIsInBoYXJhb2giLCJjb2luYmFzZSIsImtyYWtlbiIsInJheWRpdW1jbG1tIiwiY29pbmV4Iiwib2t4IiwidmVsb2Ryb21lMiIsImNldHVzIiwicmFtc2VzMiIsImtjZXgiLCJwYW5jYWtlc3dhcCIsIm1leGMiLCJiaXRmaW5leCIsImRlbHRhaW4iLCJiaXR2YXZvIiwid2hpdGViaXQiLCJ3b29uZXR3b3JrIiwic3Bvb2t5c3dhcCIsInF1aWNrc3dhcCIsInZ2czMiLCJ0dmMiLCJjb2luc3dpdGNoIiwiYml0a3ViIiwiY3J5cHRvY29tIiwidW5pc3dhcDMiLCJyYXlkaXVtIiwiYml0cnVlIiwibWV0ZW9yYWR5biIsImJ5ZGZpIiwiem9vbWV4IiwiYWVyb2Ryb21lc2xpcHN0cmVhbSIsInBvbG9uaWV4IiwidnZzZmluYW5jZSIsImJ5Yml0IiwiZGVlcGNvaW4iLCJnZW1pbmkiLCJ2ZWxvZHJvbWVzbGlwc3RyZWFtIiwiYmluYW5jZSIsIndlZXgiLCJjb2luamFyIiwiYml0Zmx5ZXIiLCJnYXRlIiwiYml0bWV4Iiwib3JjYSIsIm1tZmluYW5jZSIsImRlZHVzdCIsImxiYW5rIiwidW5pc3dhcCIsInVuaXN3YXA0IiwiYml0aHVtYiIsImNhbWVsb3QzIiwicGFuY2FrZXN3YXAzIiwiYmxvZmluIiwia3Vjb2luIiwidG9vYml0Iiwic3luY3N3YXAiLCJiYXNlc3dhcCIsImJpdGdldCIsImJpdG1hcnQiLCJiaXR1bml4Iiwic3VzaGlzd2FwIiwicGlvbmV4IiwiY2FtZWxvdDIiLCJzdW5zd2FwIiwiemtzd2FwIiwieHRjb20iLCJyYXlkaXVtY3BtbSIsImN1cnZlIiwiYnRjYyIsInVwYml0Iiwic3RvbmZpIiwibGZqMmRvdDIiLCJ2ZWxvZHJvbWUiLCJwaGVtZXgiLCJiaXRzdGFtcCIsImthdGFuYSIsImFlcm9kcm9tZSIsImJpdHNvIiwic3luY3N3YXAyIiwiYmxhY2tob2xlMyIsInRyYWRlcmpvZSIsInR1cmJvc2ZpbmFuY2UiLCJjb2ludyIsImJpbmd4IiwiZGVyaWJpdCIsImhvbmV5c3dhcCIsImJ0c2UiLCJiaXN3YXAiXX0seyJuIjoiY3J5cHRvX2NhdGVnb3JpZXMiLCJ0Ijoic2V0IiwiciI6W119LHsibiI6ImF0X3RoZV9tb25leV9hZGRyZXNzZXNfcGVyY2VudGFnZSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiZGV4X3NlbGxzXzEyaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJkZXhfYnV5X3ZvbHVtZV8yNGgiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJtaW51dGUtYmFyLnRpbWUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiY3VycmVudF95aWVsZCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoibGFyZ2VfdHhfY291bnQiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiY2VudHJhbGl6YXRpb24iLCJ0IjoidGV4dCIsInIiOlsiY2V4IiwiZGV4Il19LHsibiI6ImRleF9zZWxsZXJzXzE1bSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJzZW50aW1lbnQiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6ImFkZHJlc3Nlc196ZXJvX2JhbGFuY2UiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZGV4X3RvdGFsX3N1cHBseSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJkZXhfc2VsbGVyc18xaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhbHRyYW5rIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InRvdGFsX3NoYXJlc19kaWx1dGVkIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImNyeXB0b19jb25zZW5zdXNfYWxnb3JpdGhtcyIsInQiOiJzZXQiLCJyIjpbXX0seyJuIjoiYWxsX3RpbWVfbG93X2RheSIsInQiOiJ0aW1lIiwiciI6bnVsbH0seyJuIjoiZGV4X3R4c19jb3VudF91bmlxXzFoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InVwZGF0ZS10aW1lIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Im1pbm1vdiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhY3RpdmVfYWRkcmVzc2VzX3JhdGlvIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJkZXhfYnV5c18xaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJkZXhfYnV5X3ZvbHVtZV80aCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImdhbGF4eXNjb3JlIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImJpZCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6InRvdGFsX3ZhbHVlX3RyYWRlZCIsInQiOiJmdW5kYW1lbnRhbF9wcmljZSIsInIiOm51bGx9LHsibiI6ImFkZHJlc3Nlc19hY3RpdmUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiY2lyY3VsYXRpbmdfdG9fbWF4X3N1cHBseV9yYXRpbyIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoibWFya2V0IiwidCI6InRleHQiLCJyIjpbImNyeXB0byJdfSx7Im4iOiJ0b3RhbF90b19tYXhfc3VwcGx5X3JhdGlvIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJjcnlwdG9hc3NldC1pbmZvLmlkIiwidCI6InRleHQiLCJyIjpbXX0seyJuIjoiMjRoX3ZvbF90b19tYXJrZXRfY2FwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Im1hcmtldF9jYXBfdG9fdHZsIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImlzX3ByaW1hcnkiLCJ0IjoiYm9vbCIsInIiOm51bGx9LHsibiI6InVwZGF0ZV90aW1lIiwidCI6InRpbWUiLCJyIjpudWxsfSx7Im4iOiJ0eXBlc3BlY3MiLCJ0Ijoic2V0IiwiciI6WyJjcnlwdG8iLCJwZXJwZXR1YWwiLCJkZWZpIiwidHYtY2FsY3VsYXRlZC1wYWlyIiwic3ludGhldGljIiwibGV2ZXJhZ2VkIl19LHsibiI6ImlzX2JsYWNrbGlzdGVkIiwidCI6ImJvb2wiLCJyIjpudWxsfSx7Im4iOiJkYXlzX3RvX21hdHVyaXR5IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImN1cnJlbmN5IiwidCI6InRleHQiLCJyIjpbIkNVQUgiLCJKRVdFTFJZIiwiQVVESVQiLCJDQ0MiLCJMVVNEIiwiSURSIiwiS0dTVCIsIlVOSSIsIkRQQyIsIlZOTyIsIkFNQUkiLCJNRVRGSSIsIlZJUlRVQUwiLCJCVEIiLCJTV0lUQ0giLCJTUFgiLCJCIiwiSE9XRFkiLCJYUlAiLCJQTE4iLCJIR1hEIiwiRkxPQ0siLCJCVVJOS0lORyIsIk1NIiwiSE9SU0VTIiwiU1VTREUiLCJKVE8iLCJNWE4iLCJXQlRDIiwiSklUT1NPTCIsIkNPU0EiLCJSWlVTRCIsIk5FWCIsIlVTRDEiLCJVU0RHIiwiQVJTIiwiVlUiLCJWIiwiWU5VU0RYIiwiRVZDIiwiVVNQQyIsIkZCWCIsIkRPTE8iLCJGSUwiLCJPRVRIIiwiVE9XRVIiLCJXQk5CIiwiVVNERiIsIlhCRyIsIktSVyIsIlNEUEVORExFIiwiQVVUT05PIiwiT1JDQSIsIlJBTExZIiwiVVNEVCIsIkFEUyIsIllGSSIsIkVVUkMiLCJHUk9LIiwiRVZBVVNEVCIsIkFSRU5BIiwiT1RXTyIsIlQiLCJKQUNLIiwiTVNPTCIsIjQwNDQ0NCIsIlBFUEUiLCJBNjhBQ0MiLCJBTk9NRSIsIlVTREUiLCJDT05WTyIsIlBBWEciLCJaT1JBIiwiR0FNRSIsIkNaSyIsIllDUlYiLCJXQ1JPIiwiQVVEIiwiQ1JWVVNEIiwiQ0RYUiIsIk1BTU8iLCJVU1AiLCJVU0QwIiwiRlJYRVRIIiwiUFVGRVRIIiwiSExYIiwiR05PIiwiU0RDUlYiLCJNT09OIiwiQVRNIiwiUkVVU0QiLCJNREMiLCJSRU5CVEMiLCJVU0QzIiwiTU9ORVkiLCJUWUNPT04iLCJXWERBSSIsIkZQSSIsIkhUWCIsIlRQVCIsIlhESyIsIkdSQU0iLCJTR0QiLCJXTUFUSUMiLCJQV0JMVCIsIlVQRVBFIiwiTElOSyIsIlBIWVNJUyIsIlVTRENFIiwiQUtCIiwiTVNVU0QiLCJUUkFDVE9SIiwiVExOR09MRCIsIkVVUlMiLCJTRFlCIiwiU1NEIiwiVSIsIlBPTCIsIkxBQlVCVSIsIjc3RkZGRiIsIkhCQVIiLCJHRU5JVVMiLCJGQSIsIlNGTCIsIllIIiwiUkdFIiwiVExLIiwiTVoiLCJCTkIiLCJCQiIsIkdST1ciLCJUQUtFT1ZFUiIsIktJTiIsIkZYTiIsIkRJTk8iLCJGSVNUIiwiUkxVU0QiLCJCQURHRVIiLCJNUEVORExFIiwiTUdDIiwiUFlVU0QiLCJGUlhVU0QiLCJLVUtVTUEiLCJUU1VTREUiLCJCQUxET1IiLCJVQUhHIiwiTU1TQyIsIkxFTVgiLCJGT09NIiwiT0xZIiwiT1RUTyIsIkVVU0QiLCJHRFRDIiwiU1VTRFoiLCJLSVRFIiwiRVRIIiwiU09MIiwiVE9OTkVMIiwiQVZVU0QiLCJXSUYiLCJPTU9NIiwiS1RBIiwiQ09JTkJBTksiLCJWRUxPIiwiV0xEIiwiQ1ZYQ1JWIiwiU1BZWCIsIkRBRyIsIkFVQlJBSSIsIlpJTU9NTyIsIlVTRFEiLCJYSU4iLCJHVVNEIiwiR0JQIiwiU0RPTEEiLCJPTFlOIiwiTFBaIiwiU1VQIiwiU0FWVVNEIiwiTUlNIiwiV0ZBSSIsIkNFVEVTIiwiU1BJTkUiLCJLQVQiLCJXRUVUSCIsIkJCVEMiLCJRUVFYIiwiSlVQU09MIiwiU0xFUkYiLCJGMzlGMTIiLCJIQUkiLCJYTE0iLCJBU0RJQyIsIlpLIiwiT0hNIiwiVVNEVEIiLCJVU0REIiwiTlRTRiIsIkVVUkkiLCJPREFJIiwiV0FWQVgiLCJHT0xEIiwiVVNEWiIsIk1DT0lOIiwiRVRGIiwiVFJZIiwiV0ZUTSIsIk1BVVNEQyIsIktDUyIsIkdMRFgiLCJVU0RBIiwiWFVTRCIsIkpPRSIsIlpJSyIsIlVTREJDIiwiQ0xFViIsIlZWViIsIkVUWiIsIlNTUyIsIlBFTkRMRSIsIlNUTElOSyIsIkRPR0UiLCJBRUQiLCJTVEEiLCJBQVZFIiwiUEFJIiwiT1AiLCJVU0ciLCJVU0QiLCJVU0RUMCIsIkdSRUVOIiwiQ0FLRSIsIkNPUCIsIkNCWFJQIiwiV1NURVRIIiwiVVNEQVQiLCJBUFhVU0QiLCJUUklQIiwiQkxPQ0siLCJCTlgiLCJVU0RTTSIsIlJBWSIsIk9QWFZFTE8iLCJETUFHSUMiLCJGSUREIiwiQ1JDTFgiLCJCSU8iLCJGRFVTRCIsIkJPTksiLCJJTlIiLCJQQlRDIiwiTUVOVEUiLCJUSEIiLCJEQUkiLCJPUFAiLCJUVVNEIiwiTEJSIiwiWVlMTSIsIlVTREFJIiwiRkNDIiwiSURMRSIsIk9VU0QiLCJQSEwiLCJaQVIiLCJBQUFBIiwiWFRDIiwiRlVMIiwiVEFJSkkiLCJTVCIsIkNIRiIsIk1OVCIsIkFEQU0iLCJFVVJPUCIsIkNPSU4iLCJTVE9ORSIsIkNST05VUyIsIkNBRCIsIlZWUyIsIlNFQVdBVEVSIiwiWkVDIiwiTElPTiIsIlNSRyIsIkIzIiwiQkU4NTExIiwiWEFVVCIsIjVGQzc0RCIsIkFFUk8iLCJCTEFDS1JPQ0siLCJCVERBTyIsIk9ORUJUQyIsIkhFTVBZIiwiSkVUIiwiV0VUSCIsIlRSWCIsIkJUQ0IiLCJVUFgiLCJCT1JHIiwiVUFIIiwiVVNYIiwiQVZBWCIsIlNMT1dGSVNIIiwiQlhBIiwiQ1JWMlBPT0wiLCJGTSIsIkZYQjIwMjYxMjMxIiwiRlRNIiwiU0hYIiwiQ0xFVkNWWCIsIlVTRFMiLCJBWExVU0RDIiwiUVVJQ0siLCJET0ciLCJTUEEiLCJLQUlUTyIsIlRVUiIsIk5SV0EiLCJPU0siLCJIVEMiLCJNWUJVQlUiLCJTVVNEQVQiLCJMVUZGWSIsIlRCVEMiLCJSRUkiLCJCTSIsIlVTREMiLCJNT1IiLCJTVVNEUyIsIkJJRCIsIkZYVVNEIiwiUkVUSCIsIkxUQyIsIkFEQSIsIlBJQU8iLCJKVVAiLCJDQTUxOEEiLCJMRE8iLCJDT1FBSSIsIlZVU0QiLCJBVVNEIiwiQlRSIiwiUEVUSCIsIkFYQiIsIk1PQiIsIldSVUIiLCJVVVNEIiwiU1RVU0RTIiwiQUxVU0QiLCJXQlQiLCJNRVRBRE9HRSIsIksyIiwiRVRIWCIsIkNFTyIsIkJUQyIsIkpQWSIsIlNRVUlEIiwiS1AzUiIsIlJJUEUiLCJNT1MiLCJMSVNUQSIsIktaVCIsIkdPTERYIiwiVFFRUVgiLCJSWiIsIkJPTUIiLCJDQkJUQyIsIlJVU0QiLCJKUFlDIiwiSkxQIiwiT1MiLCJCRVRIIiwiTUFSV0EiLCJBUkIiLCJET1QiLCJPRVRIQiIsIkRVU0QiLCJBUFlVU0QiLCJOT0FIIiwiQ09XIiwiU1RPTiIsIkdPTERHUiIsIlBSTyIsIkFMRVRIIiwiMUNPVyIsIkFMRCIsIlZPVyIsIlNDUlZVU0QiLCIwWDU0OEY5MyIsIkVVUiIsIkJSTCIsIkFTVEVSIiwiVEhCTSIsIlNVSSIsIlhWUyIsIk5QTCIsIkNEWFVTRCIsIkJVU0QiLCJPTUciLCJFREdFIiwiTUlNQVRJQyIsIlNFTlRJUyIsIkFGRiIsIlNLWSIsIkhCWCIsIkNSTyIsIkZSQVgiLCJCT05EIiwiQ0JFVEgiLCJUU0FUIiwiQUNQIiwiSFlQRSIsIldST04iLCJCVFQiLCJZWUIiLCJERVRIIiwiQ1ZDUlZVU0QiLCJSVyIsIjg4ODg4OCIsIkNST0lEIiwiWkVOIiwiUkFEIiwiVVNEVEUiLCJBSU9UIiwiUEVQUEEiLCJDVlgiLCJUUklCRSIsIkVJQ09JTiIsIldTSElCIl19LHsibiI6ImluZGV4ZXMiLCJ0IjoiaW50ZXJmYWNlIiwiciI6bnVsbH0seyJuIjoia2luZCIsInQiOiJ0ZXh0IiwiciI6WyJydCJdfSx7Im4iOiJhY3RpdmVfc3ltYm9sIiwidCI6ImJvb2wiLCJyIjpudWxsfSx7Im4iOiJraW5kLWRlbGF5IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Im1hcmtldF9jYXBfZGlsdXRlZF9jYWxjIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImZ1bGx5X2RpbHV0ZWRfdmFsdWUiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJiaWRfYXNrX3NwcmVhZF9wY3QiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6ImN1cnJlbmN5X2lkIiwidCI6InRleHQiLCJyIjpbIlhUVkNUU0FUIiwiWFRWQ1VTRFQwIiwiWFRWQ1dCVCIsIlhUVkNET1QiLCJYVFZDQ0JYUlAiLCJYVFZDQiIsIlhUVkNUQlRDMiIsIlhUVkNQSUFPIiwiWFRWQ1ZWUyIsIlhUVkNNT05FWUJFIiwiWFRWQ1JJUEUiLCJYVFZDWkVOIiwiWFRWQ01DT0lOMyIsIlhUVkNBREFNTCIsIlhUVkNBTEVUSEEiLCJYVFZDQlRUMiIsIlhUVkNYVVNEMiIsIlhUVkNBRFMiLCJYVFZDTFBaIiwiWFRWQ0dST1dWIiwiWFRWQ05UU0YiLCJYVFZDWFJQIiwiWFRWQ01PQklMIiwiWFRWQ0NSQ0xYIiwiWFRWQ0ZMT0NLIiwiWFRWQ0xUQyIsIlhUVkNVU0RTTSIsIlhUVkNKTFAiLCJYVFZDUkdFIiwiWFRWQ1BST1RPS0UiLCJYVFZDV0NSTyIsIlhUVkNDVlhDUlYiLCJYVFZDODg4ODg4IiwiWFRWQ1pJS0MiLCJYVFZDUVFRWCIsIlhUVkNFVVNERUwiLCJYVFZDTU9PTjYiLCJYVFZDQVZVU0QzIiwiWFRWQ0VWQVVTRFQiLCJYVFZDVVBFUEUzIiwiWFRWQ0tJTiIsIlhUVkNGWE5UIiwiWFRWQ1VTREJDIiwiWFRWQ1NVU0RTUyIsIlhUVkNLR1NUIiwiWFRWQ0hHWEQiLCJYVFZDQk5YQiIsIlpBUiIsIlhUVkNQRU5ETEUiLCJYVFZDV0ZUTSIsIkdCUCIsIlhUVkNBUFhVU0QiLCJYVFZDUEVQUEEzIiwiWFRWQ0hFTVBZIiwiWFRWQ1VTRFQiLCJYVFZDQ09TQSIsIlhUVkNET0dUIiwiWFRWQ1ZVViIsIlhUVkNGSUREIiwiWFRWQ0tJVEVQIiwiWFRWQ1VTREQiLCJYVFZDRlJYRVRIIiwiUExOIiwiWFRWQ0JBREdFUiIsIlhUVkNKRVRNIiwiWFRWQ1RPV0VSIiwiWFRWQ0NPVzIiLCJYVFZDQVRNNSIsIlhUVkNHT0xEWCIsIkNIRiIsIlhUVkNGRFVTRCIsIlhUVkNMQlJMTyIsIlhUVkNYTE0iLCJYVFZDWUgiLCJYVFZDWVlMTSIsIlhUVkNTV0lUQ0gyIiwiWFRWQ01TVVNETSIsIlhUVkNKQUNLUyIsIlhUVkNDRU9KIiwiWFRWQ1NRVUlEVCIsIlhUVkNBQVZFIiwiWFRWQ0FFUk9EIiwiWFRWQ1ZPVyIsIlhUVkNTVFVTRFMiLCJYVFZDV0VFVEgiLCJYVFZDU0RDUlYiLCJYVFZDS0NTIiwiWFRWQ0JUQkJFIiwiWFRWQ1NUT05GIiwiWFRWQ09TQlUiLCJYVFZDS0FUMiIsIlhUVkNTQ1JWVVNEIiwiWFRWQ1dST04iLCJYVFZDQlRDQiIsIlVBSCIsIlhUVkNLMiIsIlhUVkNERVRIRCIsIlhUVkNFVVJPUCIsIlhUVkNKSVRPU09MIiwiWFRWQ0FLQiIsIlRIQiIsIlhUVkNVU0RDIiwiSlBZIiwiWFRWQ01QRU5ETEUiLCJYVFZDRElOT0MiLCJYVFZDTlBMIiwiWFRWQ09EQUkiLCJYVFZDT0VUSEIiLCJYVFZDVVNER0ciLCJYVFZDRlJYVVNEIiwiWFRWQ1VTREFJMiIsIlhUVkNTQVZVU0RTIiwiWFRWQ1JFTkJUQzIiLCJYVFZDQVVCUkFJIiwiU0dEIiwiWFRWQzQwNDQ0NCIsIlhUVkNDTEVWIiwiWFRWQ05FWDQiLCJYVFZDTVpDIiwiWFRWQ09QUE9QVCIsIlhUVkNXQlRDIiwiWFRWQ0FQWVVTRCIsIlhUVkNCT05LIiwiWFRWQ09UVE9BIiwiWFRWQ0pPRSIsIlhUVkNUVVIiLCJYVFZDQVVUT05PIiwiWFRWQ0FMVVNEQUwiLCJYVFZDTU5UIiwiWFRWQ0E2OEFDQyIsIlhUVkMwWDU0OEY5MyIsIlhUVkNCTTMiLCJYVFZDVVNEUzIiLCJYVFZDQ1JWVVNEIiwiWFRWQ1NIWCIsIlVTRCIsIlhUVkNNR0NNRSIsIlhUVkNQSEwiLCJYVFZDVFJBQ1RPUiIsIlhUVkNQQlRDUFQiLCJYVFZDQ09JTjQiLCJYVFZDNUZDNzREIiwiWFRWQ1NMT1dGSVNIMiIsIlhUVkNaT1JBMiIsIlhUVkNGMzlGMTIiLCJYVFZDRURHRUQiLCJYVFZDQjMiLCJYVFZDVVNEWkEiLCJYVFZDRkFGVSIsIlhUVkNMRU1YTCIsIlhUVkNDRFhSIiwiWFRWQ0hCQVIiLCJYVFZDRlhCMjAyNjEyMzEiLCJYVFZDV0ZBSTIiLCJYVFZDUkVVU0RSIiwiWFRWQ0JPTkQyIiwiWFRWQ1VOSSIsIlhUVkNGQlhGSVIiLCJYVFZDQlRDIiwiWFRWQ1ZOTyIsIlhUVkNCVVJOS0lOR1QiLCJYVFZDQ09JTkJBTksiLCJYVFZDR0RUQyIsIlhUVkNBUkVOQVQiLCJYVFZDU0ZMIiwiWFRWQ1NPTCIsIlhUVkNPTFkyIiwiWFRWQ0dSRUVONCIsIlhUVkNUUklQMiIsIlhUVkNCTE9DSzQiLCJYVFZDTU1TQyIsIlhUVkNDQkJUQ0MiLCJYVFZDT0hNIiwiWFRWQ1VTREEyIiwiWFRWQ1ZPIiwiWFRWQ1dBVkFYIiwiWFRWQ1lGSSIsIlhUVkNBUkJJIiwiWFRWQ09VU0QiLCJYVFZDSlBZQ09JIiwiWFRWQ0RNQUdJQ0QiLCJYVFZDRlJBWFAiLCJYVFZDVVNERUUiLCJYVFZDQklPUFIiLCJYVFZDRkNDRiIsIlhUVkNTVVNERSIsIlhUVkNDUk8iLCJYVFZDVExOR09MRCIsIlhUVkNTS1kyIiwiWFRWQ0hPUlNFUyIsIlhUVkNXQk5CIiwiWFRWQ0xVU0RTVEFCIiwiWFRWQ01BUldBIiwiWFRWQ0JPUkciLCJYVFZDTUFVU0RDIiwiWFRWQzFDT1ciLCJYVFZDUFdCTFQiLCJYVFZDVVNYUyIsIlhUVkNVU0RBVCIsIlhUVkNDUk9OVVMiLCJYVFZDU1NEIiwiWFRWQ1NEWUIiLCJYVFZDQ0FLRSIsIlhUVkNGWFVTRCIsIlhUVkNCWEEyIiwiWFRWQ1NSR1QiLCJYVFZDRlRNMiIsIlhUVkNIQUlJIiwiWFRWQ0FEQSIsIlhUVkNVU0RDT0kiLCJYVFZDRFVTRDIiLCJLWlQiLCJYVFZDUEhZU0lTIiwiWFRWQ0FTRElDIiwiWFRWQ0xBQlVCVTExIiwiWFRWQ1pFQyIsIlhUVkNTUEEiLCJYVFZDRklTVCIsIlhUVkNTUElORSIsIlhUVkNNSU1BVElDIiwiWFRWQ0VUSFgiLCJYVFZDUkVJMiIsIlhUVkNIVFgiLCJYVFZDR1JPSzExIiwiWFRWQ1VQWDMiLCJDQUQiLCJYVFZDRVRIIiwiWFRWQ0ZJTCIsIlhUVkNDRFhVU0RDIiwiSURSIiwiWFRWQ1VTR1QiLCJYVFZDUkFMTFk0IiwiWFRWQ1RSWCIsIlhUVkNFVkNFIiwiWFRWQ1RBSUpJIiwiWFRWQ01FVEFET0dFMyIsIlhUVkNFVEg1IiwiWFRWQ1NVSSIsIlhUVkNUSEJNVCIsIlhUVkNPTkVCVEMiLCJYVFZDQ1ZYIiwiWFRWQ0VVUkkiLCJYVFZDWU5VU0RYIiwiWFRWQ1dNQVRJQyIsIlhUVkNNU09MIiwiWFRWQ0JCVENCSSIsIlhUVkNXU0hJQk4iLCJYVFZDWUNSViIsIlhUVkNVU0RUVEVUSCIsIlhUVkNIT1dEWSIsIlhUVkNVU0RRIiwiWFRWQ1RIUkUiLCJYVFZDVVNEVEUiLCJYVFZDVExLIiwiWFRWQ0dSQU0iLCJYVFZDQlRSQiIsIlhUVkNGUEkiLCJYVFZDQ1JPSUQiLCJYVFZDQUxEIiwiWFRWQ1NMRVJGIiwiWFRWQ09MWU4iLCJYVFZDU0VBV0FURVIiLCJYVFZDTElOSyIsIlhUVkNUUFQiLCJYVFZDV1NURVRIIiwiWFRWQ0pVUEkiLCJYVFZDVVNEMzIiLCJYVFZDS1RBIiwiWFRWQ1pLU1kiLCJUUlkiLCJYVFZDT0VUSCIsIlhUVkNWRUxPRCIsIlhUVkNGUkFYIiwiQ09QIiwiWFRWQ1BPTDIiLCJYVFZDTUVURkkiLCJYVFZDSURMRU0iLCJYVFZDV0xEVyIsIlhUVkNUU1VTREUyIiwiWFRWQ0NBNTE4QSIsIlhUVkNBQUFBMiIsIlhUVkNDUlYyUE9PTCIsIlhUVkNTRFBFTkRMRSIsIlhUVkNUWUNPT05CIiwiWFRWQ1NET0xBIiwiWFRWQ0RBR0MiLCJYVFZDQ0xFVkNWWCIsIlhUVkNCTkIiLCJYVFZDRk1NIiwiWFRWQ0NPUUFJIiwiWFRWQ1pJTU9NTzIiLCJYVFZDTk9BSDUiLCJYVFZDUkVOQlRDIiwiWFRWQ01BTU8iLCJYVFZDVlZWIiwiWFRWQ1NQWDYiLCJYVFZDUkFEMiIsIlhUVkNYREsiLCJYVFZDUEFYRyIsIlhUVkNTU1M0IiwiWFRWQ1ZVU0RWIiwiWFRWQ0VJQ09JTiIsIlhUVkNXSUYiLCJYVFZDWElOTSIsIlhUVkNBWEIiLCJYVFZDTVNVU0RNRVQiLCJYVFZDU1RBMyIsIlhUVkNVU0RGRiIsIlhUVkNGT09NIiwiWFRWQ0dBTUVCWSIsIlhUVkNPTU9NT00iLCJYVFZDTU1NNiIsIlhUVkNNWUJVQlUiLCJYVFZDTElPTkwiLCJYVFZDQ0NDMiIsIlhUVkNTVVNEWlMiLCJYVFZDTFVTRCIsIlhUVkNVU1BDIiwiWFRWQ0tQM1IiLCJYVFZDQkU4NTExIiwiWFRWQ0FMVVNEIiwiWFRWQ1dCVENXIiwiWFRWQ1hBVVQiLCJYVFZDVFVTRCIsIlhUVkNCQkJFIiwiWFRWQ0hCWCIsIlhUVkNNT1JQIiwiWFRWQ0dMRFhHIiwiWFRWQ0FEQU0yIiwiWFRWQ1NPTFciLCJYVFZDQlRDQkIiLCJYVFZDU1QzIiwiWFRWQ1BFVEhKIiwiWFRWQ1VTRENPSU42IiwiWFRWQ0FGRiIsIlhUVkNLQUlUTyIsIlhUVkNFVFoyIiwiWFRWQ0JBTERPUiIsIlhUVkNUQUtFT1ZFUiIsIlhUVkNPVFdPIiwiWFRWQ0hUQyIsIlhUVkNBVkFYIiwiWFRWQ0VURjQiLCJYVFZDWFRDIiwiWFRWQ0VVUkMiLCJYVFZDT1AiLCJYVFZDUlpVU0QiLCJYVFZDVCIsIlhUVkNBU1RFUjIiLCJBUlMiLCJJTlIiLCJYVFZDWEJHIiwiTVhOIiwiWFRWQ1BFUEUiLCJYVFZDR0VOSVVTIiwiWFRWQ0JFVEgiLCJYVFZDQ1VBSCIsIlhUVkNXWERBSSIsIlhUVkNNSU0iLCJYVFZDT1NLNCIsIlhUVkNBWExVU0RDIiwiWFRWQ1JBWSIsIkJSTCIsIlhUVkNVU0RUVEVUSEVSVSIsIlhUVkNVU1BZIiwiWFRWQ0RPR0UiLCJYVFZDUEFJUEgiLCJYVFZDUkxVU0QiLCJYVFZDSkVXRUxSWSIsIlhUVkNVU0RTTTIiLCJYVFZDRlVMIiwiWFRWQ1dSVUIiLCJYVFZDQklEQyIsIlhUVkNHT0xETCIsIlhUVkNVU0RUQiIsIlhUVkNTT0xBTiIsIlhUVkNSV0FDIiwiWFRWQ0NCRVRIIiwiWFRWQ0dOTyIsIlhUVkNBVlVTRDQiLCJYVFZDQ0VURVMiLCJYVFZDWFZTIiwiWFRWQ01EQzIiLCJYVFZDUFVGRVRIIiwiWFRWQ01TVVNETUUiLCJYVFZDT01PTU8iLCJYVFZDV0VUSCIsIlhUVkNVU0RDRSIsIlhUVkNWSVJUVUFMIiwiWFRWQ1JVU0RSQSIsIlhUVkNITFgiLCJFVVIiLCJYVFZDVVNEMEwiLCJYVFZDRFBDIiwiWFRWQ0FJT1QiLCJDWksiLCJYVFZDVFFRUVgiLCJYVFZDQk9NQkYiLCJYVFZDU1BZWCIsIlhUVkNBTk9NRSIsIlhUVkNOUldBMiIsIlhUVkNUT05ORUwiLCJYVFZDQVVESVRUIiwiWFRWQ1VBSEciLCJYVFZDT1JDQSIsIlhUVkNEQUkiLCJYVFZDU0VOVElTIiwiWFRWQ05PQUg0IiwiWFRWQ1VOSVRFRCIsIlhUVkNLVUtVTUFDVSIsIlhUVkNSRVRIUiIsIlhUVkNMVUZGWTIiLCJYVFZDQVVTREFHIiwiWFRWQ0dPTERHUiIsIlhUVkNBUFhVU0QyIiwiWFRWQ1RSSUJFIiwiWFRWQ1VTRDFXIiwiWFRWQ0NWQ1JWVVNEIiwiWFRWQ01FTlRFIiwiQUVEIiwiWFRWQ1BZVVNEIiwiWFRWQ0JUREFPIiwiWFRWQ0dPTEQxMCIsIlhUVkNSWiIsIlhUVkNBQ1BBIiwiS1JXIiwiWFRWQ0pUTyIsIlhUVkNDT05WTyIsIlhUVkNTVVNEQVQiLCJYVFZDT1BYVkVMTyIsIlhUVkNRVUlDS1MiLCJYVFZDTElTVEEiLCJYVFZDWVlCIiwiWFRWQ1NVUEVSRiIsIkFVRCIsIlhUVkNHVVNEIiwiWFRWQ01PUyIsIlhUVkNBTUFJMiIsIlhUVkNFVVJTIiwiWFRWQ0RPTE8iLCJYVFZDQlVTRCIsIlhUVkNUSEJNIiwiWFRWQ1VVU0RVIiwiWFRWQ0hZUEVIIiwiWFRWQ1NUTElOSyIsIlhUVkNKVVBTT0xKIiwiWFRWQ09NR08iLCJYVFZDQkxBQ0tST0NLNCIsIlhUVkM3N0ZGRkYiLCJYVFZDU1RPTkUyIiwiWFRWQ0xETyJdfSx7Im4iOiJsb3dfYWZ0ZXJfaGlnaF9hbGxfY2hhbmdlX2FicyIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImN1cnJlbmN5X2tpbmQiLCJ0IjoidGV4dCIsInIiOlsiZmlhdCIsImNyeXB0byJdfSx7Im4iOiJpc19zeW1ib2xfcHJpbWFyeV9saXN0aW5nIiwidCI6ImJvb2wiLCJyIjpudWxsfSx7Im4iOiJ2ZWxvY2l0eSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJsYXN0LXByaWNlLXVwZGF0ZS10aW1lLWludHJhZGF5IiwidCI6InRpbWUiLCJyIjpudWxsfSx7Im4iOiJzdWJtYXJrZXQiLCJ0IjoidGV4dCIsInIiOlsiIl19LHsibiI6Imxhc3QtcHJpY2UtdXBkYXRlLXRpbWUiLCJ0IjoidGltZSIsInIiOm51bGx9LHsibiI6IlBlcmYuQWxsX2FicyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJsb3dfYWZ0ZXJfaGlnaF9hbGxfY2hhbmdlIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJleGNoYW5nZSIsInQiOiJ0ZXh0IiwiciI6WyJVTklTV0FQM0FWQUxBTkNIRSIsIldFRVgiLCJVTklTV0FQQkFTRSIsIlNQT09LWVNXQVAiLCJCSVNXQVAiLCJCTFVFRklOIiwiTU1GSU5BTkNFIiwiVU5JU1dBUDNBUkJJVFJVTSIsIlNZTkNTV0FQIiwiUVVJQ0tTV0FQM1BPTFlHT04iLCJCWURGSSIsIlBBTkNBS0VTV0FQM0FSQklUUlVNIiwiTEJBTksiLCJQT0xPTklFWCIsIlBVTFNFWDIiLCJQSU9ORVgiLCJCTEFDS0hPTEUzIiwiTEZKMkRPVDIiLCJNRVhDIiwiU1VTSElTV0FQUE9MWUdPTiIsIlVOSVNXQVA0VU5JQ0hBSU4iLCJERUxUQUlOIiwiTUVURU9SQURZTiIsIlBBTkdPTElOIiwiVU5JU1dBUDRCU0MiLCJBRVJPRFJPTUUiLCJNRVRFT1JBRExNTSIsIlVOSVNXQVA0QkFTRSIsIkJJTkFOQ0VVUyIsIkJJVFNPIiwiWFRDT00iLCJLQ0VYIiwiVU5JU1dBUDNCU0MiLCJCSVRGSU5FWCIsIlNZTkNTV0FQMiIsIkJJTkFOQ0UiLCJVTklTV0FQIiwiQklUUlVFIiwiQ0FNRUxPVDNBUkJJVFJVTSIsIlpLU1dBUCIsIlVQQklUIiwiQ09JTkJBU0UiLCJCSVRGTFlFUiIsIlVOSVNXQVA0T1BUSU1JU00iLCJWVlMzIiwiSFRYIiwiUFVMU0VYIiwiQ09JTkpBUiIsIlNVTlNXQVAyIiwiS0FUQU5BMyIsIkFFUk9EUk9NRVNMSVBTVFJFQU0iLCJSQVlESVVNQ0xNTSIsIkJJVEhVTUIiLCJSQVlESVVNIiwiQlRDQyIsIkRFUklCSVQiLCJLQVRBTkEiLCJSQVlESVVNQ1BNTSIsIk9LWCIsIlNVU0hJU1dBUCIsIlZWU0ZJTkFOQ0UiLCJTVE9ORkkiLCJDRVRVUyIsIlBBTkNBS0VTV0FQIiwiQkxPRklOIiwiSE9ORVlTV0FQIiwiQlRTRSIsIlBBTkNBS0VTV0FQM0VUSCIsIlRSQURFUkpPRSIsIlFVSUNLU1dBUCIsIlVOSVNXQVA0UE9MWUdPTiIsIlZFTE9EUk9NRSIsIkdBVEUiLCJWRUxPRFJPTUVTTElQU1RSRUFNIiwiQkFTRVNXQVAiLCJCSVRVTklYIiwiVU5JU1dBUDNQT0xZR09OIiwiVU5JU1dBUDNFVEgiLCJTVE9ORkkyIiwiUkFNU0VTMiIsIldISVRFQklUIiwiQklUTUVYIiwiT1JDQSIsIkJZQklUIiwiQ1VSVkVBUkJJVFJVTSIsIkRFRFVTVCIsIlpPT01FWCIsIktVQ09JTiIsIlBBTkNBS0VTV0FQM0JTQyIsIkJJVE1BUlQiLCJCSU5HWCIsIlRPT0JJVCIsIkNPSU5FWCIsIlVOSVNXQVAzQkFTRSIsIkNBTUVMT1QiLCJVTklTV0FQNEVUSCIsIlVOSVNXQVA0QVJCSVRSVU0iLCJUVVJCT1NGSU5BTkNFIiwiVU5JU1dBUDRBVkFMQU5DSEUiLCJLUkFLRU4iLCJDT0lOU1dJVENIIiwiV09PTkVUV09SSyIsIkNVUlZFIiwiQklUVkFWTyIsIlBIQVJBT0giLCJCSVRLVUIiLCJERUVQQ09JTiIsIlVOSVNXQVAzT1BUSU1JU00iLCJQSEVNRVgiLCJWRUxPRFJPTUUyIiwiQklUQVpaQSIsIkJJVEdFVCIsIlBBTkNBS0VTV0FQM1pLU1lOQyIsIkNPSU5XIiwiUEFOQ0FLRVNXQVAzQkFTRSIsIkdFTUlOSSIsIkNSWVBUT0NPTSIsIkJJVFNUQU1QIl19LHsibiI6ImNvdXBvbiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJpc19zaGFyaWFoX2NvbXBsaWFudCIsInQiOiJib29sIiwiciI6bnVsbH0seyJuIjoibnZ0IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InN1YnR5cGUiLCJ0IjoidGV4dCIsInIiOlsiY3J5cHRvIiwicGVycGV0dWFsIl19LHsibiI6ImNyeXB0b2Fzc2V0LWluZm8uZGVzY3JpcHRpb24iLCJ0IjoidGV4dCIsInIiOltdfSx7Im4iOiJleHBpcmF0aW9uIiwidCI6InRpbWUiLCJyIjpudWxsfSx7Im4iOiJtYXR1cml0eV9kYXRlIiwidCI6InRpbWUteXl5eW1tZGQiLCJyIjpudWxsfSx7Im4iOiJiYXNlX2N1cnJlbmN5X2tpbmQiLCJ0IjoidGV4dCIsInIiOlsiY3J5cHRvIiwiZmlhdCJdfSx7Im4iOiJ0eXBlIiwidCI6InRleHQiLCJyIjpbInN3YXAiLCJzcG90IiwiZnV0dXJlcyJdfSx7Im4iOiJtYXJrZXRfY2FwX2NhbGMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGVyZi5BbGwiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoibG93IiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZ2FwX2Rvd258NjAiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6InByZV9jaGFuZ2V8MVciLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6ImdhcF9kb3dufDI0MCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoicG9zdG1hcmtldF9jaGFuZ2UiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6ImdhcF9kb3duIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJwcmVfY2hhbmdlX2Fic3w1IiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiY2hhbmdlfDMwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJnYXBfZG93bl9hYnN8MTUiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJpbmRpY2F0b3JzX2JhcnNfY291bnR8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiY2hhbmdlX2Zyb21fb3BlbnwxTSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiaW5kaWNhdG9yc19iYXJzX2NvdW50fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InZvbHVtZV9jaGFuZ2V8MjQwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWV8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfZnJvbV9vcGVufDMwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJoaWdofDEyMCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImJhcnNfY291bnR8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJnYXBfdXB8MzAiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6Imxhc3RfYmFyX3VwZGF0ZV90aW1lfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJvcGVufDEyMCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6InByZW1hcmtldF9nYXAiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6ImJhcnNfY291bnR8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InZvbHVtZV9jaGFuZ2VfYWJzfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidGltZXwxIiwidCI6InRpbWUiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2V8NjAiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6InBvc3RfY2hhbmdlfDUiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6InVwZGF0ZV9tb2RlIiwidCI6InRleHQiLCJyIjpbInN0cmVhbWluZyJdfSx7Im4iOiJjbG9zZXwxVyIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImdhcHwzMCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoicG9zdG1hcmtldF9jaGFuZ2VfYWJzIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZ2FwX2Rvd25fYWJzfDFXIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoib3BlbnwyNDAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJpbmRpY2F0b3JzX2JhcnNfY291bnR8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidGltZXwxNSIsInQiOiJ0aW1lIiwiciI6bnVsbH0seyJuIjoiZ2FwX3VwX2Fic3wyNDAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJjbG9zZXwxIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoicHJlX2NoYW5nZXwxIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJnYXB8MTIwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJvcGVufDE1IiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiaGlnaCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImNoYW5nZV9mcm9tX29wZW58MVciLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6ImdhcHwxTSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiYmFyc19jb3VudCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfY2hhbmdlX2Fic3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJwb3N0X2NoYW5nZXw2MCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiZ2FwX3VwX2Fic3wxNSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImNoYW5nZV9mcm9tX29wZW5fYWJzfDE1IiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoidm9sdW1lX2NoYW5nZXwxIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfY2hhbmdlfDE1IiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJnYXBfdXB8MjQwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJsYXN0X2Jhcl91cGRhdGVfdGltZXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJwcmVfY2hhbmdlIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWV8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZ2FwX3VwfDFNIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfYWJzfDMwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZ2FwX3VwX2Fic3wxMjAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJwcmVtYXJrZXRfY2hhbmdlX2FicyIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6Imxhc3RfYmFyX3VwZGF0ZV90aW1lfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZ2FwX2Rvd258NSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiY2hhbmdlX2Fic3wxMjAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJ1cGRhdGVfbW9kZXwxMjAiLCJ0IjoidGV4dCIsInIiOlsic3RyZWFtaW5nIl19LHsibiI6InZvbHVtZV9jaGFuZ2VfYWJzfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImJhcnNfY291bnR8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoib3BlbnwxTSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImJhcnNfY291bnR8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfZnJvbV9vcGVufDEyMCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiZ2FwX2Rvd258MTIwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJ1cGRhdGVfbW9kZXwyNDAiLCJ0IjoidGV4dCIsInIiOlsic3RyZWFtaW5nIl19LHsibiI6ImluZGljYXRvcnNfYmFyc19jb3VudHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InBvc3RfY2hhbmdlfDEyMCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiY2xvc2V8MTIwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiYmFyc19jb3VudHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfY2hhbmdlfDFXIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJsYXN0X2Jhcl91cGRhdGVfdGltZXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJoaWdofDEiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJ1cGRhdGVfbW9kZXwxIiwidCI6InRleHQiLCJyIjpbInN0cmVhbWluZyJdfSx7Im4iOiJ2b2x1bWVfY2hhbmdlfDMwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfYWJzIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiYmFyc19jb3VudHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJwb3N0X2NoYW5nZXwzMCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiY2hhbmdlfDUiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6Imxhc3RfYmFyX3VwZGF0ZV90aW1lIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InZvbHVtZXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJnYXBfdXBfYWJzfDFXIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiY2hhbmdlfDFNIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfY2hhbmdlIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJoaWdofDYwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiY2hhbmdlfDFXIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfZnJvbV9vcGVufDI0MCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiaGlnaHwyNDAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfY2hhbmdlfDEyMCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiZ2FwX2Rvd25fYWJzfDFNIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiY2hhbmdlfDI0MCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiZ2FwX2Rvd25fYWJzfDEiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJnYXBfdXB8MTIwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJnYXBfZG93bl9hYnN8MTIwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZ2FwX3VwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJ1cGRhdGVfbW9kZXwxVyIsInQiOiJ0ZXh0IiwiciI6WyJzdHJlYW1pbmciXX0seyJuIjoiY2hhbmdlX2Zyb21fb3Blbl9hYnN8MVciLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJnYXBfZG93bnwxTSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoibGFzdF9iYXJfdXBkYXRlX3RpbWV8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImdhcF91cF9hYnN8NSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImNoYW5nZV9mcm9tX29wZW58NSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiZ2FwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJnYXB8NjAiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6InZvbHVtZV9jaGFuZ2V8MU0iLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6ImNsb3NlfDUiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJwcmVfY2hhbmdlX2Fic3wxIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiY2hhbmdlX2Fic3wxVyIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6Imxhc3RfYmFyX3VwZGF0ZV90aW1lfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InRpbWV8MU0iLCJ0IjoidGltZSIsInIiOm51bGx9LHsibiI6InZvbHVtZV9jaGFuZ2VfYWJzfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJwcmVfY2hhbmdlX2Fic3wyNDAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJsYXN0X2Jhcl91cGRhdGVfdGltZXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Im9wZW58MSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImdhcF9kb3duX2Fic3wzMCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImNoYW5nZSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoicHJlX2NoYW5nZV9hYnMiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfZnJvbV9vcGVufDYwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJvcGVufDFXIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZ2FwfDUiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6InRpbWV8MzAiLCJ0IjoidGltZSIsInIiOm51bGx9LHsibiI6ImNoYW5nZV9mcm9tX29wZW5fYWJzfDEyMCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImdhcF9kb3dufDMwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJjbG9zZXwzMCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6InVwZGF0ZV9tb2RlfDFNIiwidCI6InRleHQiLCJyIjpbInN0cmVhbWluZyJdfSx7Im4iOiJwcmVfY2hhbmdlX2Fic3wxTSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImhpZ2h8NSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImdhcF91cHw1IiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJvcGVufDMwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoidXBkYXRlX21vZGV8MTUiLCJ0IjoidGV4dCIsInIiOlsic3RyZWFtaW5nIl19LHsibiI6Imxhc3RfYmFyX3VwZGF0ZV90aW1lfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImNsb3NlfDE1IiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoidm9sdW1lX2NoYW5nZV9hYnN8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJwb3N0X2NoYW5nZSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiaGlnaHwxNSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6Imxvd3wxIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZ2FwfDEiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6ImhpZ2h8MVciLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWV8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Imxvd3wxTSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImdhcF9kb3duX2Fic3w1IiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiY2hhbmdlX2Zyb21fb3BlbnwxIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJwcmVfY2hhbmdlfDE1IiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJnYXB8MVciLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6InByZV9jaGFuZ2V8MzAiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6ImdhcF91cF9hYnN8MzAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJ1cGRhdGVfbW9kZXw2MCIsInQiOiJ0ZXh0IiwiciI6WyJzdHJlYW1pbmciXX0seyJuIjoidGltZXw2MCIsInQiOiJ0aW1lIiwiciI6bnVsbH0seyJuIjoibG93fDE1IiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoicHJlX2NoYW5nZXw1IiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfZnJvbV9vcGVuIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfZnJvbV9vcGVuX2FicyIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6Imxvd3w2MCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6InZvbHVtZV9jaGFuZ2VfYWJzfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImluZGljYXRvcnNfYmFyc19jb3VudHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InZvbHVtZV9jaGFuZ2VfYWJzfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfZnJvbV9vcGVufDE1IiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfY2hhbmdlfDYwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJnYXBfdXBfYWJzfDYwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoibG93fDFXIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoicG9zdF9jaGFuZ2V8MU0iLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6ImNoYW5nZV9hYnN8MSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImdhcF9kb3duX2FicyIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImdhcF9kb3dufDE1IiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJnYXBfdXB8MTUiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6InBvc3RfY2hhbmdlfDFXIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJsb3d8MzAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJjbG9zZXw2MCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImdhcF91cF9hYnN8MU0iLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJvcGVufDUiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJ1cGRhdGVfbW9kZXw1IiwidCI6InRleHQiLCJyIjpbInN0cmVhbWluZyJdfSx7Im4iOiJwb3N0X2NoYW5nZXwxIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfZnJvbV9vcGVuX2Fic3wxIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoicHJlX2NoYW5nZV9hYnN8MTIwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoidm9sdW1lX2NoYW5nZV9hYnN8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidm9sdW1lfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImJhcnNfY291bnR8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZ2FwX2Rvd258MVciLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6InZvbHVtZV9jaGFuZ2VfYWJzIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImdhcF9kb3duX2Fic3w2MCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6InByZV9jaGFuZ2VfYWJzfDYwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoib3Blbnw2MCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImNsb3NlIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiaW5kaWNhdG9yc19iYXJzX2NvdW50fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InRpbWV8MVciLCJ0IjoidGltZSIsInIiOm51bGx9LHsibiI6ImdhcF91cF9hYnN8MSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6Imxvd3wxMjAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJjbG9zZXwxTSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6Imxvd3w1IiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiYmFyc19jb3VudHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ0aW1lfDEyMCIsInQiOiJ0aW1lIiwiciI6bnVsbH0seyJuIjoicHJlX2NoYW5nZXw2MCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoicHJlX2NoYW5nZV9hYnN8MVciLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJjbG9zZXwyNDAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJoaWdofDMwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoicG9zdF9jaGFuZ2V8MjQwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfZnJvbV9vcGVuX2Fic3wyNDAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfYWJzfDE1IiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiZ2FwX3VwfDFXIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfYWJzfDFNIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiYmFyc19jb3VudHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicHJlbWFya2V0X2NoYW5nZV9mcm9tX29wZW5fYWJzIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImdhcF91cHw2MCIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoiY2hhbmdlX2Fic3w2MCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImNoYW5nZXwxNSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoicHJlbWFya2V0X2NoYW5nZV9mcm9tX29wZW4iLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6Im9wZW4iLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJnYXB8MTUiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6InRpbWV8MjQwIiwidCI6InRpbWUiLCJyIjpudWxsfSx7Im4iOiJpbmRpY2F0b3JzX2JhcnNfY291bnR8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImNoYW5nZV9hYnN8MjQwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoicHJlX2NoYW5nZXwxMjAiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6InByZW1hcmtldF9jaGFuZ2UiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6InRpbWUiLCJ0IjoidGltZSIsInIiOm51bGx9LHsibiI6ImluZGljYXRvcnNfYmFyc19jb3VudCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJnYXBfZG93bl9hYnN8MjQwIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiY2hhbmdlX2Zyb21fb3Blbl9hYnN8NSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6ImNoYW5nZXwxIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2V8MTIwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJwb3N0X2NoYW5nZXwxNSIsInQiOiJwZXJjZW50IiwiciI6bnVsbH0seyJuIjoidm9sdW1lfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidm9sdW1lfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InZvbHVtZSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJnYXBfdXBfYWJzIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoicHJlX2NoYW5nZXwyNDAiLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6Imxvd3wyNDAiLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJ0aW1lfDUiLCJ0IjoidGltZSIsInIiOm51bGx9LHsibiI6InByZV9jaGFuZ2VfYWJzfDE1IiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiaGlnaHwxTSIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6InZvbHVtZXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJnYXB8MjQwIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJpbmRpY2F0b3JzX2JhcnNfY291bnR8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoibGFzdF9iYXJfdXBkYXRlX3RpbWV8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidm9sdW1lX2NoYW5nZV9hYnN8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiY2hhbmdlX2Fic3w1IiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoidm9sdW1lX2NoYW5nZXw1IiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfZnJvbV9vcGVuX2Fic3w2MCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6InVwZGF0ZV9tb2RlfDMwIiwidCI6InRleHQiLCJyIjpbInN0cmVhbWluZyJdfSx7Im4iOiJpbmRpY2F0b3JzX2JhcnNfY291bnR8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImdhcF91cHwxIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJwcmVfY2hhbmdlX2Fic3wzMCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6InByZV9jaGFuZ2V8MU0iLCJ0IjoicGVyY2VudCIsInIiOm51bGx9LHsibiI6InZvbHVtZXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiY2hhbmdlX2Zyb21fb3Blbl9hYnN8MU0iLCJ0IjoicHJpY2UiLCJyIjpudWxsfSx7Im4iOiJnYXBfZG93bnwxIiwidCI6InBlcmNlbnQiLCJyIjpudWxsfSx7Im4iOiJjaGFuZ2VfZnJvbV9vcGVuX2Fic3wzMCIsInQiOiJwcmljZSIsInIiOm51bGx9LHsibiI6InByaWNlX3NhbGVzX2Z3ZCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJwcmljZV9ib29rX2Z3ZCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJlbnRlcnByaXNlX3ZhbHVlX2ViaXRkYV9md2QiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiZW50ZXJwcmlzZV92YWx1ZV9lYml0X2Z3ZCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJlbnRlcnByaXNlX3ZhbHVlX3NhbGVzX2Z3ZCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJwcmljZV9lYXJuaW5nc19md2QiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF8xNF8xXzNbMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzR8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzMHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzE0XzFfM1sxXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMjB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVXBzaWRlVGFzdWtpR2FwLkJ1bGxpc2h8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaS5EcmFnb25mbHl8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjUwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRhcmtDbG91ZENvdmVyLkJlYXJpc2h8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVy5SfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkRlbWFyay5SMXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNl8zXzN8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTMwWzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfOXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUjF8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS184XzNfM3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJyZWxhdGl2ZV92b2x1bWVfMTBkX2NhbGN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExM3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV85fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBcm9vbi5VcCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkNMaW5lXzIwXzYwXzEyMF8zMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzIwWzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTl8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHJpU3Rhci5CZWFyaXNofDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5NaWRkbGV8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJST0N8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyNTB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvamkiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzlbMV18MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzF8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNoYWlraW5Nb25leUZsb3d8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzEwZF9jYWxjX3VzZHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjUwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkRvbmNoQ2gyMC5VcHBlcnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyWzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTU1fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiS2x0Q2hubC51cHBlcnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5iYXNpc3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzMwZF9jYWxjfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIxfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFyb29uLlVwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IktsdENobmwuYmFzaXN8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMTBbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0l8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQU9bMl18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzEwMHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5SM3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE1fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTIwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV85WzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuS2lja2luZy5CdWxsaXNofDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlZXQVB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzIwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTQwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvd25zaWRlVGFzdWtpR2FwLkJlYXJpc2h8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaVN0YXIuQnVsbGlzaHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIuYmFzaXN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5TMnwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTN8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUzF8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDF8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5NaWRkbGV8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSHVsbE1BOXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFJQIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IktsdENobmwubG93ZXJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuSWNoaW1va3V8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJM1sxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmxvd2VyXzUwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLlJTSS5LIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlMxfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTEwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEUiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRmFsbGluZ1RocmVlTWV0aG9kcy5CZWFyaXNofDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNDSTIwWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI2fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTIxfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE2MHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuU3RvY2guUlNJfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTM0fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfMTRfMV8zWzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQLlNBUnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5TM3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExM3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHdlZXplckJvdHRvbS5CdWxsaXNofDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5iYXNpc3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guUlNJLkt8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guUlNJLkt8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzJ8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlR3ZWV6ZXJUb3AuQmVhcmlzaHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIdWxsTUEyMDB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUzN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfYmFzZXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNDB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVldNQXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQkxpbmV8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzl8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlR3ZWV6ZXJCb3R0b20uQnVsbGlzaHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjF8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjUwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJWV01BfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Mb25nU2hhZG93LlVwcGVyIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTJ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTEwWzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJPQ3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k5fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlRyaVN0YXIuQmVhcmlzaHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuVU98MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTMwWzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE0NHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzhfM18zfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNDSTIwWzFdfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNoYWlraW5Nb25leUZsb3d8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TcGlubmluZ1RvcC5CbGFja3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTc1fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTMwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV85WzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE0MHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV85MGRfY2FsY191c2R8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuTWlkZGxlfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5SMXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDJfMjBfNjBfMTIwXzMwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkxvbmdTaGFkb3cuVXBwZXJ8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaUNyb3NzLkJlYXJpc2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLkh1bGxNQTl8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5EZW1hcmsuTWlkZGxlfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJN1sxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzVfM18zWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5EZW1hcmsuTWlkZGxlfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPWzJdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNDSTIwWzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTWFydWJvenUuV2hpdGV8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzMFsxXXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTQiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMzBkX2NhbGMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSHVsbE1BMjB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNFsxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMzBkX2NhbGN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTIwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIubG93ZXJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8zMGRfY2FsY3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTZ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJXLlIiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5CTGluZV8yMF82MF8xMjBfMzB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5SM3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfNTB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzMHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi51cHBlcnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS1sxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuU2hvb3RpbmdTdGFyfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE0NHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMV8yMF82MF8xMjBfMzB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNDB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEyMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjJ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLkh1bGxNQTl8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTl8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi51cHBlcnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TaG9vdGluZ1N0YXIiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvamlTdGFyLkJ1bGxpc2h8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuTWlkZGxlfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNzV8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzVfM18zWzFdfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTlbMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQXJvb24uVXB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzUwWzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLmxvd2VyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSVsxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLmxvd2VyfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTIwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21fMTR8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS18xNF8xXzNbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE1NXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5TM3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDQ0kyMHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzR8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfNl8zXzN8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTQwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV8yMFsxXXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTV8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVldBUHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTAwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzIwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNV8zXzNbMV18MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiS2x0Q2hubC5iYXNpcyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzVfM18zfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTIxfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InByaWNlXzUyX3dlZWtfaGlnaF9kYXRlIiwidCI6InRpbWUiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUGllcmNpbmcuQnVsbGlzaHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTM0fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMl8yMF82MF8xMjBfMzB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTV8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5WV01BfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElbMV18MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLkh1bGxNQTl8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDF8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJPQ3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzhfM18zfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTJ8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNFsxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNQUNELm1hY2R8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUjJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNTB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEzMHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTWFydWJvenUuQmxhY2t8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTR8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF84XzNfM1sxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlMzfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfOTBkX2NhbGNfdXNkfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0lbMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMzAwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUzN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWNvbW1lbmQuQWxsfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE4OXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi51cHBlciIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ0aW1lX2J1c2luZXNzX2RheSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMV8yMF82MF8xMjBfMzB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjV8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTIwMHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzAwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJEb25jaENoMjAuTG93ZXJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV82MGRfY2FsY191c2R8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIwMHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppU3Rhci5CZWFyaXNofDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLlZXTUEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BM3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi51cHBlcl81MHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlIyfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzEwZF9jYWxjX3VzZHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuTWlkZGxlIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkRvbmNoQ2gyMC5Mb3dlcnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzEwMFsxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuSHVsbE1BOXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfOF8zXzNbMV18NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfcXVvdGUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjBbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUjF8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EWzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuM0JsYWNrQ3Jvd3MiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRFsxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV85MGRfY2FsY3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIdWxsTUEyMDB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlIyfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5SMXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTZ8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUjN8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE0MHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE4fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTMwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESVsxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuTWlkZGxlIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IktsdENobmwubG93ZXJ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzIwWzFdfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV8xMDBbMV18MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlVwc2lkZVRhc3VraUdhcC5CdWxsaXNofDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV85fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE4fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLk1pZGRsZXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSVsxXXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI2fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTg5fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbV8xNFsxXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5SMnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkRvbmNoQ2gyMC5Mb3dlcnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1hcnVib3p1LkJsYWNrfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF8xNF8xXzN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EWzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlZXTUEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tWzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTMwMHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuQWJhbmRvbmVkQmFieS5CZWFyaXNofDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMzBbMV18MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BODl8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUC5TQVJ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tWzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuSHVsbE1BOXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE3IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfMTRfMV8zfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfMTRfMV8zWzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTl8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppU3Rhci5CdWxsaXNofDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTc1fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEyMHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIdWxsTUEyMDB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkFiYW5kb25lZEJhYnkuQmVhcmlzaHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuVldNQXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzR8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTUwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlMzfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTMwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE4fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guUlNJLkR8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BOCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5DTGluZXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfNTB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzlbMV18MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjFbMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF8xNF8xXzNbMV18NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuSHVsbE1BOXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfNTB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUzEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkxvbmdTaGFkb3cuVXBwZXJ8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNzV8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzhfM18zfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSHVsbE1BMjAwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS18xNF8xXzN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEwMHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLlJTSS5EfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTIwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTMwMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE1NXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k5WzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJVT3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiS2x0Q2hubC5iYXNpc3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF8xMDB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k0fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmxvd2VyXzUwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIwMHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE1NXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTUwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5PdGhlcnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRXZlbmluZ1N0YXJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMDB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkR8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUzF8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuTWlkZGxlfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzZfM18zfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTMwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIyIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTc1fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfMTRfMV8zWzFdIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFUUnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuQkJQb3dlcnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkV2ZW5pbmdEb2ppU3Rhci5CZWFyaXNofDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNV8zXzN8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzEwMHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWlDcm9zcy5CdWxsaXNoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTU1fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUmlzaW5nVGhyZWVNZXRob2RzLkJ1bGxpc2h8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BOXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMDB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfNjBkX2NhbGN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5NaWRkbGV8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlNwaW5uaW5nVG9wLkJsYWNrfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIzfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5VT3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV8xMDBbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTIxfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmxvd2VyXzUwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tXzE0IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTI2fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5LaWNraW5nLkJlYXJpc2h8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzUwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRW5ndWxmaW5nLkJ1bGxpc2h8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlMxfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE0fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzVfM18zIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlMxfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTd8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppU3Rhci5CZWFyaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Ud2VlemVyVG9wLkJlYXJpc2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzIwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfOF8zXzNbMV18MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEzfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNoYWlraW5Nb25leUZsb3d8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BOHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE3fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS181XzNfM3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TcGlubmluZ1RvcC5CbGFjayIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE2fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSHVsbE1BMjB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21bMV18MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaUNyb3NzLkJlYXJpc2h8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEzfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuV1J8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTUwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJPcGVuLkFsbC5DYWxjIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF85fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfMTRfMV8zfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF8yMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTW9ybmluZ0RvamlTdGFyLkJ1bGxpc2h8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE3fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzIwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMFsxXSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJEb25jaENoMjAuVXBwZXJ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTR8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5SMnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS1sxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzl8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzZfM18zIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzhfM18zfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlVPfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5VcHNpZGVUYXN1a2lHYXAuQnVsbGlzaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDQ0kyMHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV82MGRfY2FsY191c2R8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMzB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDQ0kyMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExNXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzZfM18zWzFdfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIuYmFzaXN8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTQ0fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNDB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzVfM18zWzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFUUnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkRlbWFyay5TMXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5VT3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFJQfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5NQXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BN3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjZ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMzBbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBT3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTR8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTQ0fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTI1MHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzZfM18zfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMzBkX2NhbGNfdXNkfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyNnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV81MFsxXXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMzAwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESVsxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFyYW1pLkJlYXJpc2h8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNjB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzR8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTZ8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJWzFdIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEzfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaVN0YXIuQmVhcmlzaHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJEb25jaENoMjAuVXBwZXJ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjBbMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzUwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5VT3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUzJ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIuYmFzaXNfNTB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLlJTSS5EfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV85WzFdfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF8yMHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InJlbGF0aXZlX3ZvbHVtZV9pbnRyYWRheV91c2R8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFyYW1pLkJlYXJpc2h8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBlcmYuM1kiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNjB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkludmVydGVkSGFtbWVyfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5VcHNpZGVUYXN1a2lHYXAuQnVsbGlzaHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQkxpbmVfMjBfNjBfMTIwXzMwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzMHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k5fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1BQ0Quc2lnbmFsfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb3duc2lkZVRhc3VraUdhcC5CZWFyaXNofDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzMFsxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE0MHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFJQfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIaWdoLjZNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkR8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaUNyb3NzLkJ1bGxpc2h8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTg5fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzIwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjV8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLktpY2tpbmcuQmVhcmlzaHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkxlYWQxfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTVbMV18NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE4OXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1vcm5pbmdEb2ppU3Rhci5CdWxsaXNofDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIwMHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWlDcm9zcy5CZWFyaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfMTRfMV8zfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5LaWNraW5nLkJlYXJpc2h8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjb21tZW5kLk90aGVyfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzWzFdIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTdbMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaUNyb3NzLkJlYXJpc2h8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIaWdoLkFsbC5DYWxjIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkNMaW5lfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfOXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNFsxXXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLkljaGltb2t1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlMxfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlZXQVB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBT1syXSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE3IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkhpZ2guM00iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTQ0fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzIwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTUFDRC5oaXN0fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTI1MHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV8xMDBbMV18MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWkuQnVsbGlzaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5sb3dlcnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLktpY2tpbmcuQnVsbGlzaHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUGllcmNpbmcuQnVsbGlzaHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIaWdoLjFNLkRhdGUiLCJ0IjoidGltZSIsInIiOm51bGx9LHsibiI6IlJTSTIxfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbmV5Rmxvd3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTN8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUC5TQVJ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmJhc2lzfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkRlbWFyay5SMXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaS5HcmF2ZXN0b25lfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMjBbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k1WzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjF8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNTB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjAwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5GYWxsaW5nVGhyZWVNZXRob2RzLkJlYXJpc2h8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNFsxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppLkdyYXZlc3RvbmV8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlIzfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTVbMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUjJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMDB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURSfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkRvbmNoQ2gyMC5Mb3dlcnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzZfM18zWzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTYwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIxfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV8yMFsxXSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMjBbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21fMTR8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5XUnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzVfM18zWzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTl8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BOXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuVU98MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Nb3JuaW5nRG9qaVN0YXIuQnVsbGlzaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuM1doaXRlU29sZGllcnN8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BM3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbV8xNHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Ud2VlemVyQm90dG9tLkJ1bGxpc2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTN8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTUwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFUUnwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb3duc2lkZVRhc3VraUdhcC5CZWFyaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Mb25nU2hhZG93Lkxvd2VyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppU3Rhci5CZWFyaXNofDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfMTRfMV8zWzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE0NHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21fMTR8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDFfMjBfNjBfMTIwXzMwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLk1pZGRsZXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzUwWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLjNXaGl0ZVNvbGRpZXJzfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTRbMV18MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUmlzaW5nV2luZG93LkJ1bGxpc2h8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlMzfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzl8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvamkuR3JhdmVzdG9uZSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5SMnwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTI2fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5TMnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvamlTdGFyLkJlYXJpc2h8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS184XzNfM3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQkxpbmV8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMTAwWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlMyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tWzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuS2lja2luZy5CdWxsaXNofDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMTAwWzFdIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TcGlubmluZ1RvcC5XaGl0ZXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5CTGluZV8yMF82MF8xMjBfMzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjAwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLk1pZGRsZXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTl8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMzQiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTR8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlMyfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5VTyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFyYW1pQ3Jvc3MuQnVsbGlzaHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQZXJmLjZNX2FicyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDaGFpa2luTW9uZXlGbG93fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJPQ3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5EZW1hcmsuTWlkZGxlfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzkwZF9jYWxjX3VzZHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzZfM18zfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzlbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTQ0fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzVfM18zfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF81XzNfM3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIudXBwZXJfNTB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjUwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlIxfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTl8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNFsxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkRlbWFyay5SMSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMTAwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5PdGhlcnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzhfM18zWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTg5fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5TM3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJWb2xhdGlsaXR5LkQiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMzBkX2NhbGNfdXNkfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TaG9vdGluZ1N0YXJ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMzAwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJWV0FQIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppU3Rhci5CZWFyaXNoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEzfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlIyfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTN8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tXzE0fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzEwMFsxXSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzZfM18zfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDFfMjBfNjBfMTIwXzMwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5SMnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEzfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS4zQmxhY2tDcm93c3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guUlNJLkt8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTd8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsY191c2R8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5NQXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV85WzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTYwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV8yMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUjJ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTZ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidm9sdW1lX2Jhc2V8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQLlNBUnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHdlZXplclRvcC5CZWFyaXNofDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlNwaW5uaW5nVG9wLldoaXRlfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTIiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTQ0fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTIiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzIwWzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTI2fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5SMnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMTAwWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTUwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuU3Bpbm5pbmdUb3AuQmxhY2t8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI1MHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5PdGhlcnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlRyaVN0YXIuQnVsbGlzaHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEzNHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUmlzaW5nV2luZG93LkJ1bGxpc2h8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEzMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BM3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBcm9vbi5VcHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8zMGRfY2FsY3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLk1pZGRsZXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfOXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTG93LkFsbC5EYXRlIiwidCI6InRpbWUiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMjB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzEwMHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5UcmlTdGFyLkJlYXJpc2h8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUjMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BM3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfMTAwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlMzfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzMwZF9jYWxjfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlMxfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS181XzNfM1sxXXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV81MFsxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJEb25jaENoMjAuTG93ZXJ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjBbMV18NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJVT3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuSWNoaW1va3V8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzl8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF8yMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBT1syXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTMwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTM0IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsY3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQkxpbmUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUzF8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNQUNELnNpZ25hbHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE1fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTc1fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLlJTSS5EfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEzIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTIwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5UcmlTdGFyLkJ1bGxpc2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUzIiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2hhaWtpbk1vbmV5Rmxvd3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTh8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5TMXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfYmFzZSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzMHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzMwZF9jYWxjX3VzZHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guUlNJLkt8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkFiYW5kb25lZEJhYnkuQmVhcmlzaHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTZ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BM3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlMyIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWkuQnVsbGlzaHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTJbMV18MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlRyaVN0YXIuQnVsbGlzaHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNFsxXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE3NXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5TM3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTW9ybmluZ1N0YXJ8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTUFDRC5tYWNkfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5SMXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHdlZXplclRvcC5CZWFyaXNofDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k1fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkhpZ2guNUQiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzVfM18zWzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTl8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLmJhc2lzfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5SM3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8zMGRfY2FsY191c2R8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGVyZi5ZIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTI1MHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5TMnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzhfM18zWzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Fbmd1bGZpbmcuQmVhcmlzaHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuSHVsbE1BOXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkxlYWQyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF8xMDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvaml8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLlJTSS5EfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLk1pZGRsZXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJWb2xhdGlsaXR5Lk0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5XUiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUGllcmNpbmcuQnVsbGlzaHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNQUNELnNpZ25hbHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfOSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzE0XzFfM3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTV8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWNvbW1lbmQuQWxsfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfMTRfMV8zfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV8yMHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMl8yMF82MF8xMjBfMzB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE2fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV85WzFdfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTG93LkFmdGVyLkhpZ2guQWxsIiwidCI6InByaWNlIiwiciI6bnVsbH0seyJuIjoiUmVjLlN0b2NoLlJTSXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkJMaW5lfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE1NXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1BQ0QubWFjZHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQVRSUHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWlDcm9zcy5CZWFyaXNofDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIzfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzJ8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InByaWNlXzUyX3dlZWtfbG93IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTI1fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQVRSUHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJST0N8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1vcm5pbmdEb2ppU3Rhci5CdWxsaXNofDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESVsxXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzZfM18zfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkRlbWFyay5SMXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjF8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVU98MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNTB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFyb29uLlVwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBVFJQIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI1fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BOHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNTB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuU3Bpbm5pbmdUb3AuV2hpdGV8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1hcnVib3p1LldoaXRlfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTIwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaVN0YXIuQmVhcmlzaHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuM0JsYWNrQ3Jvd3N8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuQkJQb3dlciIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuT25OZWNrLkJlYXJpc2h8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzYwZF9jYWxjfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE1MHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJwcmljZV81Ml93ZWVrX2hpZ2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUjF8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTQwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjV8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BM3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikxvdy42TSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzZfM18zWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Nb3JuaW5nRG9qaVN0YXIuQnVsbGlzaHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRGVtYXJrLk1pZGRsZXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlMxfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNDSTIwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TcGlubmluZ1RvcC5CbGFja3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTG9uZ1NoYWRvdy5VcHBlcnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE2MHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kxMHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfNTB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHdlZXplckJvdHRvbS5CdWxsaXNofDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmxvd2VyfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTl8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF81MHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuQkJQb3dlcnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5SMiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE5fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE0MHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMDB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTIxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTI2fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDJ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVldNQXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUzMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlNwaW5uaW5nVG9wLldoaXRlfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTN8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkV2ZW5pbmdTdGFyIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkNMaW5lfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDaGFpa2luTW9uZXlGbG93fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5NaWRkbGV8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFUUlB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLmxvd2VyfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV81MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLmxvd2VyfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTM0fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTQ0fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlNob290aW5nU3RhcnwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS4zQmxhY2tDcm93c3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfcXVvdGV8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTIwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5JbnZlcnRlZEhhbW1lcnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGVyZi4zTV9hYnMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjF8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEwMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzEwMFsxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0l8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQXJvb24uVXB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuS2lja2luZy5CZWFyaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTYiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF8xNF8xXzN8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5TM3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzhfM18zfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDFfMjBfNjBfMTIwXzMwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTEwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDJfMjBfNjBfMTIwXzMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTYwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5SaXNpbmdXaW5kb3cuQnVsbGlzaHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuM0JsYWNrQ3Jvd3N8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlMxfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQZXJmLjZNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkRvbmNoQ2gyMC5NaWRkbGV8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlVwc2lkZVRhc3VraUdhcC5CdWxsaXNofDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkxlYWQxXzIwXzYwXzEyMF8zMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMjBbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1BQ0QubWFjZCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE5fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfOF8zXzNbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlIxfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaS5HcmF2ZXN0b25lfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV85WzFdfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlIyfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESVsxXXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS18xNF8xXzN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5SMnwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfMTRfMV8zfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTUwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTM0fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTUwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTG93LjZNLkRhdGUiLCJ0IjoidGltZSIsInIiOm51bGx9LHsibiI6IlNNQTZ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUC5TQVJ8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppU3Rhci5CdWxsaXNofDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV81MFsxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS1sxXSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8zMGRfY2FsY191c2R8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfMTAwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTdbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuV1J8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLkJCUG93ZXJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuTWlkZGxlfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1BQ0Quc2lnbmFsfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNVsxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNQUNELnNpZ25hbHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvamkuRHJhZ29uZmx5fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkJMaW5lXzIwXzYwXzEyMF8zMHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5FdmVuaW5nU3RhcnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNDB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TaG9vdGluZ1N0YXJ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF82XzNfM1sxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEzMDB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkVuZ3VsZmluZy5CZWFyaXNofDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF81XzNfM1sxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzlbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUmlzaW5nVGhyZWVNZXRob2RzLkJ1bGxpc2h8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfOTBkX2NhbGN8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkxvbmdTaGFkb3cuTG93ZXJ8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5NYXJ1Ym96dS5CbGFja3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTUFDRC5oaXN0fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNTB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGVyZi41WV9hYnMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlVwc2lkZVRhc3VraUdhcC5CdWxsaXNofDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExNHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUjJ8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUjN8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVldNQXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJOVsxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkRlbWFyay5TMXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5NaWRkbGV8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHJpU3Rhci5CdWxsaXNofDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzEwMHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLlJTSS5EfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNTB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1vcm5pbmdTdGFyfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkRvbmNoQ2gyMC5NaWRkbGV8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkxvbmdTaGFkb3cuVXBwZXJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzVfM18zWzFdfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5EZW1hcmsuUjF8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfOXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuQkJQb3dlcnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzEwMFsxXXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5TMXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzl8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guUlNJLkR8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE4OXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppLkdyYXZlc3RvbmV8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQXJvb24uRG93bnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE3fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmxvd2VyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5CTGluZV8yMF82MF8xMjBfMzB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkFiYW5kb25lZEJhYnkuQmVhcmlzaHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTG9uZ1NoYWRvdy5Mb3dlcnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlIzfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLk1pZGRsZSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEzNHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzhfM18zWzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIdWxsTUE5fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTG9uZ1NoYWRvdy5Mb3dlciIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuT25OZWNrLkJlYXJpc2h8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFtbWVyIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV81MHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1hcnVib3p1LkJsYWNrfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlIzfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTUwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTEwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkRvbmNoQ2gyMC5NaWRkbGV8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BN3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlIzfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTI2fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmxvd2VyXzUwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE0IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTc1fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLk1pZGRsZXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS181XzNfM3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuU3Bpbm5pbmdUb3AuV2hpdGV8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYW5naW5nTWFufDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV8yMHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMTAwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkludmVydGVkSGFtbWVyfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzhfM18zWzFdIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5FdmVuaW5nU3Rhcnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJWV01BfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLnVwcGVyXzUwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzVfM18zfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNV8zXzN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkxlYWQyfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuM1doaXRlU29sZGllcnN8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzIwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFUUnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTIwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfMTRfMV8zfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPWzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfOXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLk1pZGRsZXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5TMnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG93bnNpZGVUYXN1a2lHYXAuQmVhcmlzaHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMDB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE1fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUzF8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTIwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIzfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV8yMFsxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjBbMV18MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5EZW1hcmsuUjF8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiS2x0Q2hubC5iYXNpc3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFyYW1pQ3Jvc3MuQnVsbGlzaHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfOXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfNTB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guUlNJLkR8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrREl8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWNvbW1lbmQuTUF8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkV2ZW5pbmdTdGFyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5BYmFuZG9uZWRCYWJ5LkJ1bGxpc2h8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNV8zXzN8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjUwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzEwZF9jYWxjX3VzZHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFtbWVyfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IjI0aF92b2xfcHJldnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppLkdyYXZlc3RvbmV8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2hhaWtpbk1vbmV5Rmxvd3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRXZlbmluZ0RvamlTdGFyLkJlYXJpc2h8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTYwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIdWxsTUEyMHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzUwWzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBlcmYuV19hYnMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNjB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTJ8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQkxpbmV8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJWzFdfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ0NJMjBbMV18MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ0NJMjB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuSWNoaW1va3V8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21fMTR8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlIyfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG93bnNpZGVUYXN1a2lHYXAuQmVhcmlzaHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuS2lja2luZy5CZWFyaXNofDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTl8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMzB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTAwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzE0XzFfM1sxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElbMV18MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTUwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLk1pZGRsZXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYW5naW5nTWFufDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmJhc2lzXzUwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTN8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMzB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLk1pZGRsZSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE3fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTd8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNDB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE0fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYW1tZXJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfNTBbMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlNwaW5uaW5nVG9wLldoaXRlfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUzF8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5TMnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIaWdoLkFsbC5EYXRlIiwidCI6InRpbWUiLCJyIjpudWxsfSx7Im4iOiJFTUEyMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k0IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE1MHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TcGlubmluZ1RvcC5CbGFja3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSHVsbE1BOXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyWzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLmxvd2VyIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppLkRyYWdvbmZseXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSW52ZXJ0ZWRIYW1tZXJ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlIzfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5GYWxsaW5nVGhyZWVNZXRob2RzLkJlYXJpc2h8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFyYW1pLkJlYXJpc2h8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzEwMFsxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRGFya0Nsb3VkQ292ZXIuQmVhcmlzaHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUzJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8xMGRfY2FsY191c2R8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTUFDRC5oaXN0fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmJhc2lzIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLk1pZGRsZXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5TMXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLkljaGltb2t1fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzEwMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfNTBbMV18MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF82XzNfM1sxXXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNzV8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTQwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfNjBkX2NhbGMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGVyZi5ZX2FicyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5TMnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfNTB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzUwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPWzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUzF8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkVuZ3VsZmluZy5CdWxsaXNofDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkt8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTU1fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjN8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzEwMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0l8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmxvd2VyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRhcmtDbG91ZENvdmVyLkJlYXJpc2h8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNQUNELnNpZ25hbCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJyZWxhdGl2ZV92b2x1bWVfMTBkX2NhbGNfdXNkfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTN8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfNjBkX2NhbGNfdXNkfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi51cHBlcnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzNHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkRlbWFyay5NaWRkbGV8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkxvbmdTaGFkb3cuVXBwZXJ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI2IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBcm9vbi5VcHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzl8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzUwWzFdfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMzB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTMwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5SMiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRXZlbmluZ1N0YXJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE1MHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5PdGhlcnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJyZWxhdGl2ZV92b2x1bWVfMTBkX2NhbGNfdXNkfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI1MHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzZfM18zfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExM3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExM3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaS5CdWxsaXNofDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBT3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExNXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzVfM18zfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV85WzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFyYW1pLkJ1bGxpc2h8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV8yMFsxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1BQ0QuaGlzdHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJyZWxhdGl2ZV92b2x1bWVfMTBkX2NhbGN8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfcXVvdGV8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BOSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE5fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE3fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5WV01BfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjb21tZW5kLk1BfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE1MHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESVsxXXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkhpZ2guNk0uRGF0ZSIsInQiOiJ0aW1lIiwiciI6bnVsbH0seyJuIjoiRU1BOHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiS2x0Q2hubC51cHBlciIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE4fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLkljaGltb2t1fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV81MHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzhfM18zWzFdfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbV8xNFsxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFyYW1pQ3Jvc3MuQmVhcmlzaHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfNTB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUzJ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV82MGRfY2FsY191c2R8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTG93LjNNLkRhdGUiLCJ0IjoidGltZSIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5SaXNpbmdXaW5kb3cuQnVsbGlzaHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyMXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQlBvd2VyfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYW5naW5nTWFufDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUjEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJN1sxXSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5sb3dlcnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE1NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjF8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzUwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTlbMV18MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUjF8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTAwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJPQ3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLlVwcGVyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi51cHBlcl81MHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBcm9vbi5Eb3dufDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5NaWRkbGV8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5XUnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJM1sxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMjB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzIwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE1MHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBT1syXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kxMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJVT3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzE0XzFfM1sxXXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BM3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE1MHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExNTB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMzB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjX3VzZHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppLkdyYXZlc3RvbmV8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE3fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5TM3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfNl8zXzN8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF81XzNfM1sxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi51cHBlcl81MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzE0XzFfMyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMV8yMF82MF8xMjBfMzB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzVfM18zfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQ0xpbmVfMjBfNjBfMTIwXzMwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJPQ3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzkwZF9jYWxjfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlRyaVN0YXIuQmVhcmlzaHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMVsxXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzVfM18zWzFdIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsY191c2R8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI1MHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb218MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhbmdpbmdNYW58MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE1fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLlZXTUF8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbmV5Rmxvd3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTIwMHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE0NHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb3duc2lkZVRhc3VraUdhcC5CZWFyaXNoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlMyfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIyfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrREl8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLlJTSS5LfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkV2ZW5pbmdEb2ppU3Rhci5CZWFyaXNofDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE1fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWlDcm9zcy5CdWxsaXNofDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFtbWVyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIxfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWkuQmVhcmlzaHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWNvbW1lbmQuQWxsfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTYwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJN1sxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5SMnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRmFsbGluZ1RocmVlTWV0aG9kcy5CZWFyaXNofDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNV8zXzNbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzYwZF9jYWxjfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkxlYWQyfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppU3Rhci5CdWxsaXNofDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InZvbHVtZV9xdW90ZXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjF8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTR8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlIxfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlMyfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlRyaVN0YXIuQnVsbGlzaHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMjBbMV18MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5NYXJ1Ym96dS5XaGl0ZXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5SM3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQZXJmLllURCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuT25OZWNrLkJlYXJpc2h8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUzN8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUjN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTR8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE0MHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuU3RvY2guUlNJIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESVsxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMl8yMF82MF8xMjBfMzB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURSfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjV8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Mb25nU2hhZG93Lkxvd2VyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkFiYW5kb25lZEJhYnkuQmVhcmlzaHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21fMTR8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJN3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIwMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFyYW1pQ3Jvc3MuQnVsbGlzaHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRmFsbGluZ1dpbmRvdy5CZWFyaXNofDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BN3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Fbmd1bGZpbmcuQnVsbGlzaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzhfM18zWzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlVPfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlIzfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLnVwcGVyXzUwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkFiYW5kb25lZEJhYnkuQmVhcmlzaHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BOXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TcGlubmluZ1RvcC5XaGl0ZXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTV8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJWV0FQfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiY2xvc2VfdXNkfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkZhbGxpbmdXaW5kb3cuQmVhcmlzaHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJXLlJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRmFsbGluZ1dpbmRvdy5CZWFyaXNofDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaS5EcmFnb25mbHl8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLktpY2tpbmcuQmVhcmlzaHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjF8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMTBbMV18MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkRvbmNoQ2gyMC5NaWRkbGV8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaS5EcmFnb25mbHl8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJWzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfNTB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlIzfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE0fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTUwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBlcmYuNURfYWJzIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYW1tZXJ8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5QaWVyY2luZy5CdWxsaXNofDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTU1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNl8zXzNbMV18NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5sb3dlcl81MHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsY3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBT1sxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEyfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Ud2VlemVyVG9wLkJlYXJpc2h8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5SU0kuS3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIdWxsTUEyMDB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TcGlubmluZ1RvcC5XaGl0ZXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzZfM18zWzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5FdmVuaW5nRG9qaVN0YXIuQmVhcmlzaHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k3fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG93bnNpZGVUYXN1a2lHYXAuQmVhcmlzaHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS1sxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBVFJ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTg5IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5JbnZlcnRlZEhhbW1lciIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5iYXNpc181MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNTB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5SaXNpbmdXaW5kb3cuQnVsbGlzaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuU2hvb3RpbmdTdGFyfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTN8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMTBkX2NhbGN8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaS5CZWFyaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTc1fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzN8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzEwMHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExM3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuSWNoaW1va3V8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTQ0fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE4OXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIdWxsTUE5fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS184XzNfM1sxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMjBbMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNjB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkVuZ3VsZmluZy5CZWFyaXNofDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJMb3cuQWxsLkNhbGMuRGF0ZSIsInQiOiJ0aW1lIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlIyfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyWzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTRbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTN8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVU98MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQlBvd2VyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlIxfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuV1J8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJN3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi51cHBlcnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUmlzaW5nVGhyZWVNZXRob2RzLkJ1bGxpc2h8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5FdmVuaW5nU3RhcnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5DTGluZXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRW5ndWxmaW5nLkJlYXJpc2h8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5sb3dlcnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE3NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuU3RvY2guUlNJfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5VT3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHdlZXplclRvcC5CZWFyaXNofDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTW9ybmluZ0RvamlTdGFyLkJ1bGxpc2h8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tWzFdIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlMyIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF81MHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfcXVvdGV8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGVyZi4xTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRmFsbGluZ1dpbmRvdy5CZWFyaXNofDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWkuQmVhcmlzaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjJ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSVsxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUzN8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2hhaWtpbk1vbmV5Rmxvd3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzEwZF9jYWxjfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIdWxsTUEyMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjFbMV18MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMzR8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIuYmFzaXNfNTB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzl8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaVN0YXIuQnVsbGlzaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuQWJhbmRvbmVkQmFieS5CdWxsaXNoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTd8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV85IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfOF8zXzNbMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLldSfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNVsxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuSWNoaW1va3V8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE0fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNjB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzUwWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTIxfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5UcmlTdGFyLkJ1bGxpc2h8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzEwMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzlbMV18NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMTAwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5UcmlTdGFyLkJ1bGxpc2h8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLkljaGltb2t1fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSW52ZXJ0ZWRIYW1tZXJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF81XzNfM3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5NYXJ1Ym96dS5XaGl0ZXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUzN8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5NaWRkbGV8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzUwWzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV81MHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF82XzNfM3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV85MGRfY2FsY3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBlcmYuM1lfYWJzIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNl8zXzN8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzl8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQZXJmLjFNX2FicyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMjB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBlcmYuMTBZIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEUnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIdWxsTUEyMHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuSHVsbE1BOSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5iYXNpc181MHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzMwZF9jYWxjX3VzZHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE3fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMV8yMF82MF8xMjBfMzB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzAwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TcGlubmluZ1RvcC5CbGFja3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k1fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUk9DfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5TM3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1vcm5pbmdTdGFyfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUC5TQVJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjFbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzZfM18zWzFdfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF84XzNfM1sxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5iYXNpc3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFJQfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfOF8zXzNbMV18NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfNTB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5JY2hpbW9rdXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNTB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BN3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfOSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE4OXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzVfM18zfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuS2lja2luZy5CZWFyaXNofDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE1MHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQkxpbmV8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUjF8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF84XzNfM3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUzN8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlBpZXJjaW5nLkJ1bGxpc2h8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESVsxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzNHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5NQXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfcXVvdGV8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDF8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkZhbGxpbmdXaW5kb3cuQmVhcmlzaHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWkuQmVhcmlzaHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTUwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzEwZF9jYWxjfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEyMHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkRvbmNoQ2gyMC5VcHBlcnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5TM3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfNTB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlJpc2luZ1dpbmRvdy5CdWxsaXNofDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE1MHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkJQb3dlciIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb25leUZsb3d8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYW1tZXJ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTQ0fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTIwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkRvbmNoQ2gyMC5VcHBlcnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb25leUZsb3d8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQVRSUHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tXzE0WzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESVsxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF81XzNfM1sxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV85MGRfY2FsY191c2R8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUjJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFyYW1pQ3Jvc3MuQmVhcmlzaHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNQUNELm1hY2R8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNTB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJWzFdIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlMzfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV8yMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJyZWxhdGl2ZV92b2x1bWVfMTBkX2NhbGNfdXNkfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkRvbmNoQ2gyMC5NaWRkbGV8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ0NJMjBbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuTWlkZGxlfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE0NHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDaGFpa2luTW9uZXlGbG93fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV8xMDBbMV18MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuTWlkZGxlfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ0NJMjB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvamkuR3JhdmVzdG9uZXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIxfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5NQXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzE0XzFfM3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTUFDRC5tYWNkfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5LaWNraW5nLkJlYXJpc2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE1fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMTAwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5SMnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5sb3dlcl81MHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzIwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLnVwcGVyfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDFfMjBfNjBfMTIwXzMwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRFsxXSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMjBbMV18NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfYmFzZXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQZXJmLjVZIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTU1fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5TMXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNV8zXzN8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkFiYW5kb25lZEJhYnkuQnVsbGlzaHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InZvbHVtZV9xdW90ZXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS182XzNfM3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLkxvd2VyfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5GYWxsaW5nV2luZG93LkJlYXJpc2h8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQ0xpbmVfMjBfNjBfMTIwXzMwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQU9bMV18MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5EZW1hcmsuUzF8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLlN0b2NoLlJTSXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5SMXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1BQ0Quc2lnbmFsfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5TdG9jaC5SU0l8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5EZW1hcmsuUzF8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS18xNF8xXzNbMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMlsxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV81MFsxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IjI0aF9jbG9zZV9wcmV2fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidm9sdW1lX2Jhc2V8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5EZW1hcmsuUjF8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBlcmYuWVREX2FicyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMjB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlMyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfNTB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLjNCbGFja0Nyb3dzfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTR8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzIwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjF8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzMwZF9jYWxjfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1BQ0QubWFjZHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNQUNELmhpc3R8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV85MGRfY2FsY3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExM3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfOF8zXzNbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5TMnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQlBvd2VyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE1MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyNnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNTB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF8xMDB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLk1pZGRsZXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPWzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmJhc2lzfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5SaXNpbmdUaHJlZU1ldGhvZHMuQnVsbGlzaHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEzMHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTUFDRC5zaWduYWx8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBT1sxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kxMFsxXXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRhcmtDbG91ZENvdmVyLkJlYXJpc2h8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidm9sdW1lX3F1b3RlfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5BYmFuZG9uZWRCYWJ5LkJ1bGxpc2h8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNTV8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNTB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTMwMHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzZfM18zfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIwMHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzE0XzFfMyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJmaXJzdF9iYXJfdGltZSIsInQiOiJ0aW1lIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfNjBkX2NhbGNfdXNkfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWlDcm9zcy5CdWxsaXNofDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzlbMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUjJ8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlMxfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQlBvd2VyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvamlTdGFyLkJlYXJpc2h8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTI2fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyWzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5SU0kuRCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExM3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQVRSfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfMTRfMV8zWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjF8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0lbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJWzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfNTB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRXZlbmluZ0RvamlTdGFyLkJlYXJpc2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQU9bMl18MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlIzfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTMwWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFUUlB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMVsxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrREl8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BODl8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF81MHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUzN8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzVfM18zWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNDSTIwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaS5EcmFnb25mbHl8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5DTGluZXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfNTBbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF81XzNfM1sxXXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyMDB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTG93LjNNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IjI0aF92b2x8NSIsInQiOiJmdW5kYW1lbnRhbF9wcmljZSIsInIiOm51bGx9LHsibiI6Ik1vbXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF8xNF8xXzN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNV8zXzNbMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMzBbMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkVuZ3VsZmluZy5CZWFyaXNofDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlVwc2lkZVRhc3VraUdhcC5CdWxsaXNofDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikxvdy41RCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBT1sxXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTV8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiIyNGhfdm9sX2NoYW5nZXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTIwMHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRmFsbGluZ1dpbmRvdy5CZWFyaXNofDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNoYWlraW5Nb25leUZsb3ciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUzMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTAwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5UcmlTdGFyLkJlYXJpc2h8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5TMXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUmlzaW5nV2luZG93LkJ1bGxpc2h8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuTWlkZGxlfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTgiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQ0xpbmUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjUwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE2fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNDSTIwWzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb3duc2lkZVRhc3VraUdhcC5CZWFyaXNofDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjZ8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlRyaVN0YXIuQmVhcmlzaHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE1NXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0lbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF8yMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTIwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfYmFzZXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBcm9vbi5Eb3dufDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfOF8zXzN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsY3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzAwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTR8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJWzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS4zV2hpdGVTb2xkaWVyc3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuS2lja2luZy5CZWFyaXNofDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPWzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1BQ0Quc2lnbmFsfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLnVwcGVyfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Ud2VlemVyQm90dG9tLkJ1bGxpc2h8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tXzE0WzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTl8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kxMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzhfM18zIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTIwMHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuQWJhbmRvbmVkQmFieS5CZWFyaXNoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Ud2VlemVyVG9wLkJlYXJpc2h8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BOXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5SU0kuS3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzF8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF82XzNfM3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMzBkX2NhbGNfdXNkfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5TM3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJwcmljZV81Ml93ZWVrX2xvd19kYXRlIiwidCI6InRpbWUiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHdlZXplclRvcC5CZWFyaXNofDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppU3Rhci5CZWFyaXNofDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkRlbWFyay5NaWRkbGUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9uZXlGbG93fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCUG93ZXJ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzUwWzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTZ8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTMwMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5EYXJrQ2xvdWRDb3Zlci5CZWFyaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppLkRyYWdvbmZseXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURSUHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIdWxsTUE5IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BOHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjFbMV18MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNnwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYW5naW5nTWFufDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTIxWzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJVTyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMjB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzEwMHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQXJvb24uRG93bnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTWFydWJvenUuQmxhY2t8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppU3Rhci5CZWFyaXNofDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUzF8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMFsxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJyZWxhdGl2ZV92b2x1bWVfMTBkX2NhbGN8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMlsxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE1NXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuQkJQb3dlcnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjF8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNl8zXzN8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjV8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIzfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTYwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVldBUHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzhfM18zWzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5TMyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5SMnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzEwMHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIudXBwZXJfNTB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMlsxXXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEyMHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEwMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTR8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ0NJMjBbMV18NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMl8yMF82MF8xMjBfMzB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNjB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5EYXJrQ2xvdWRDb3Zlci5CZWFyaXNofDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlMxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTJ8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJN1sxXXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkNMaW5lfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaS5CdWxsaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIyfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTM0fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfOF8zXzN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTR8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQZXJmLjVEIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTIwMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVy5SfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5SaXNpbmdXaW5kb3cuQnVsbGlzaHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV85WzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLmxvd2VyfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTG9uZ1NoYWRvdy5Mb3dlcnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuT25OZWNrLkJlYXJpc2h8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUmlzaW5nVGhyZWVNZXRob2RzLkJ1bGxpc2h8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmxvd2VyXzUwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWlDcm9zcy5CdWxsaXNofDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhbmdpbmdNYW58MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIzfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfOF8zXzNbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzEwMHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kxMHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuU3Bpbm5pbmdUb3AuV2hpdGUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzEwMFsxXXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmxvd2VyXzUwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTl8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURSfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlMzfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfMjB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5BbGx8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBcm9vbi5Eb3dufDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS181XzNfMyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElbMV18MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlMzfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNTB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMTBkX2NhbGN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUzJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjAwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMTBkX2NhbGN8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5TM3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNVsxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5DTGluZV8yMF82MF8xMjBfMzB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVy5SfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Mb25nU2hhZG93Lkxvd2VyfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1BQ0QubWFjZHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIxfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTIxWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSGlnaC5BbGwuQ2FsYy5EYXRlIiwidCI6InRpbWUiLCJyIjpudWxsfSx7Im4iOiJTTUExMjB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuTWlkZGxlfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE1MHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb218NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLk1pZGRsZXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzUwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTIwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5WV01BfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTIiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk9uTmVjay5CZWFyaXNofDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEUlB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTMwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzl8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTVbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNl8zXzNbMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTh8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1BQ0QubWFjZHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5TMnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkRvbmNoQ2gyMC5Mb3dlcnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTI1fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESVsxXXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5QaWVyY2luZy5CdWxsaXNofDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzZfM18zWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMlsxXSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzZfM18zWzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5TMnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BOXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfNTBbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWNvbW1lbmQuTUEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS184XzNfM3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUGllcmNpbmcuQnVsbGlzaHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFJQfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlAuU0FSfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEUnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1vcm5pbmdTdGFyfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5EYXJrQ2xvdWRDb3Zlci5CZWFyaXNofDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzUwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkZhbGxpbmdXaW5kb3cuQmVhcmlzaHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi51cHBlcnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQVRSUHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJVT3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5SaXNpbmdXaW5kb3cuQnVsbGlzaHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV85MGRfY2FsY3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBVFJQfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuM1doaXRlU29sZGllcnN8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkRlbWFyay5TMSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSW52ZXJ0ZWRIYW1tZXJ8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlJpc2luZ1RocmVlTWV0aG9kcy5CdWxsaXNofDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkVuZ3VsZmluZy5CdWxsaXNofDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb20iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaS5CdWxsaXNofDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTV8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzl8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BN3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE2fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuM1doaXRlU29sZGllcnN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJEb25jaENoMjAuVXBwZXIiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tXzE0WzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTM0fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5BYmFuZG9uZWRCYWJ5LkJ1bGxpc2h8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BOHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzE0XzFfM3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaS5CZWFyaXNofDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuT25OZWNrLkJlYXJpc2h8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUzEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS1sxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjJ8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDF8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfMTRfMV8zWzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJyZWxhdGl2ZV92b2x1bWVfMTBkX2NhbGNfdXNkfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUjF8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTUwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5FdmVuaW5nRG9qaVN0YXIuQmVhcmlzaHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV85MGRfY2FsY3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMTAwWzFdfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k3WzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EWzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESVsxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIxfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMTBkX2NhbGN8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfOF8zXzN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyNiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNQUNELmhpc3R8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQkxpbmV8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkNMaW5lfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5CTGluZXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE0MHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNjB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5XUnwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlIxfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBT3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k3fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE1MHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTV8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IjI0aF9jbG9zZV9jaGFuZ2VfYWJzfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIudXBwZXJfNTB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkludmVydGVkSGFtbWVyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuVU98NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTV8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTg5fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV8yMHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUjN8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUjF8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkVuZ3VsZmluZy5CZWFyaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI1MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMTAwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuT25OZWNrLkJlYXJpc2h8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSHVsbE1BOXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkRlbWFyay5TMXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBT3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyMXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkxlYWQyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvaml8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBlcmYuVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMDB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMTBkX2NhbGNfdXNkIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTc1fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYW5naW5nTWFuIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktbMV18MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV85fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlZXTUF8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTB8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5TMXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzYwZF9jYWxjX3VzZHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE4OXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5PdGhlcnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5GYWxsaW5nV2luZG93LkJlYXJpc2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzE0XzFfM1sxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuS2lja2luZy5CdWxsaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRGVtYXJrLk1pZGRsZXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjBbMV18MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTUFDRC5zaWduYWx8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUzJ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Nb3JuaW5nU3Rhcnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHdlZXplckJvdHRvbS5CdWxsaXNofDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNDSTIwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjF8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5EZW1hcmsuUzF8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRW5ndWxmaW5nLkJ1bGxpc2h8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQLlNBUiIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTWFydWJvenUuQmxhY2t8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlNob290aW5nU3RhcnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMFsxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzAwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlcuUnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuS2lja2luZy5CdWxsaXNofDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV85fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5GYWxsaW5nV2luZG93LkJlYXJpc2h8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMTAwWzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21bMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzWzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuS2lja2luZy5CdWxsaXNofDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlZXTUF8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMzR8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmJhc2lzfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppLkRyYWdvbmZseXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IktsdENobmwudXBwZXJ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS184XzNfM3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMTAwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF8xMDB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlMzfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k1WzFdfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidm9sdW1lX2Jhc2V8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE0NCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfNTBbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guUlNJLkt8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHdlZXplckJvdHRvbS5CdWxsaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfNjBkX2NhbGNfdXNkfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJOXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTEwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUjF8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV85WzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE1fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21fMTRbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTUwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzMwZF9jYWxjfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTIwWzFdfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfOTBkX2NhbGN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTlbMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTG93LjFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlMzfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQXJvb24uRG93bnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyMXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjV8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExNHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNzV8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k1fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYW1tZXJ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5WV01BfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5NYXJ1Ym96dS5XaGl0ZXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWNvbW1lbmQuQWxsfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEzfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNl8zXzNbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IjI0aF92b2xfY2hhbmdlX2Fic3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV8yMFsxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuTWlkZGxlfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfNV8zXzN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlIxfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMTB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS4zV2hpdGVTb2xkaWVyc3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfcXVvdGV8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMDB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSGlnaC4zTS5EYXRlIiwidCI6InRpbWUiLCJyIjpudWxsfSx7Im4iOiJNQUNELmhpc3QiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTdbMV18MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLlVPfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS182XzNfM3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV85MGRfY2FsY191c2R8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTc1fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5BbGwiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhbW1lcnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5CTGluZV8yMF82MF8xMjBfMzB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjX3VzZHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzEwZF9jYWxjX3VzZHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiIyNGhfY2xvc2VfY2hhbmdlfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNzV8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfMTRfMV8zfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkR8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF84XzNfM1sxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBcm9vbi5VcHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5TdG9jaC5SU0l8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1hcnVib3p1LkJsYWNrfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbVsxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5TMnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuM0JsYWNrQ3Jvd3N8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPWzJdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuVU98MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTAwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ikh1bGxNQTIwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQXJvb24uVXB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTG93LkFsbC5DYWxjIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE1fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUzJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzMHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5BYmFuZG9uZWRCYWJ5LkJ1bGxpc2h8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLnVwcGVyXzUwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzEwZF9jYWxjfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5CQlBvd2VyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkR8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE3fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTl8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTU1fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI1MHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidm9sdW1lX3F1b3RlfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiS2x0Q2hubC5sb3dlcnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Nb3JuaW5nRG9qaVN0YXIuQnVsbGlzaHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTUFDRC5oaXN0fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLkJCUG93ZXJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS182XzNfM1sxXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE2fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzN8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUzN8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTEwWzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BODl8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzAwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkxlYWQyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzE0XzFfM1sxXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIxfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE1NXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k0WzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTJ8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkxlYWQxfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzE0XzFfM3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkRlbWFyay5SMXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRGVtYXJrLk1pZGRsZXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNDSTIwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkJMaW5lXzIwXzYwXzEyMF8zMHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuQkJQb3dlcnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuT25OZWNrLkJlYXJpc2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVldBUHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE4fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5FdmVuaW5nRG9qaVN0YXIuQmVhcmlzaHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1hcnVib3p1LkJsYWNrIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE1fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyNXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJEb25jaENoMjAuTG93ZXJ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIubG93ZXJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFtbWVyfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVy5SfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE4fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV85WzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BOXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE4fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJPQ3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLlVwcGVyfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJyZWxhdGl2ZV92b2x1bWVfMTBkX2NhbGNfdXNkfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV81MHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuS2lja2luZy5CdWxsaXNofDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkZhbGxpbmdUaHJlZU1ldGhvZHMuQmVhcmlzaHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE1MHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF84XzNfMyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVXBzaWRlVGFzdWtpR2FwLkJ1bGxpc2h8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzEwMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFJQfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlIxfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlMyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE1NXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzE0XzFfM1sxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUzF8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5TMXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNQUNELm1hY2R8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEzMHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBcm9vbi5Eb3dufDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJWb2xhdGlsaXR5LlciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlMyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMTBkX2NhbGNfdXNkfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoidm9sdW1lX2Jhc2V8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvamkuRHJhZ29uZmx5IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlZXTUF8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21fMTR8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkZhbGxpbmdUaHJlZU1ldGhvZHMuQmVhcmlzaHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzIwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMl8yMF82MF8xMjBfMzB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTUFDRC5oaXN0fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InJlbGF0aXZlX3ZvbHVtZV9pbnRyYWRheXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfNl8zXzNbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUjN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzMwZF9jYWxjX3VzZHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTW9ybmluZ1N0YXIiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1hcnVib3p1LldoaXRlfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTg5fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzhfM18zfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlIxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlIzIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTh8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUjF8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRXZlbmluZ1N0YXJ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLlZXTUF8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Fbmd1bGZpbmcuQmVhcmlzaHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFyYW1pQ3Jvc3MuQmVhcmlzaHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTU1fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5BYmFuZG9uZWRCYWJ5LkJ1bGxpc2h8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUzF8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQU9bMl18MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMzAwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV8yMFsxXXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyMDB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI1fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5BYmFuZG9uZWRCYWJ5LkJ1bGxpc2h8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzIwWzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzYwZF9jYWxjX3VzZHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5NaWRkbGV8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5EZW1hcmsuUzF8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTdbMV18MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVy5SfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLlJTSS5EfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbV8xNFsxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5JbnZlcnRlZEhhbW1lcnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1hcnVib3p1LkJsYWNrfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFUUlB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzl8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlRyaVN0YXIuQmVhcmlzaHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlIxfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Ud2VlemVyQm90dG9tLkJ1bGxpc2h8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNDR8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzIwWzFdIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkRvbmNoQ2gyMC5VcHBlcnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuM1doaXRlU29sZGllcnMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQVRSfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV85MGRfY2FsY191c2QiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMzBkX2NhbGNfdXNkIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTIwMHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJIdWxsTUE5fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEzMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k5WzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BODl8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlVwc2lkZVRhc3VraUdhcC5CdWxsaXNofDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTIiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzUwWzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5DTGluZV8yMF82MF8xMjBfMzB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TaG9vdGluZ1N0YXJ8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHJpU3Rhci5CZWFyaXNoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlIyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlR3ZWV6ZXJUb3AuQmVhcmlzaHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaS5HcmF2ZXN0b25lfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfOVsxXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMjBbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TaG9vdGluZ1N0YXJ8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLjNCbGFja0Nyb3dzfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuTWlkZGxlfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1hcnVib3p1LkJsYWNrfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUzN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5SaXNpbmdUaHJlZU1ldGhvZHMuQnVsbGlzaHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuM1doaXRlU29sZGllcnN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Mb25nU2hhZG93Lkxvd2VyfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI2fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVy5SfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppU3Rhci5CdWxsaXNofDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlJpc2luZ1dpbmRvdy5CdWxsaXNofDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQlBvd2VyfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjBbMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMzBkX2NhbGN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IktsdENobmwudXBwZXJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1hcnVib3p1LldoaXRlfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJMb3cuMU0uRGF0ZSIsInQiOiJ0aW1lIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlNwaW5uaW5nVG9wLkJsYWNrfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE4OXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5BbGx8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWNvbW1lbmQuTUF8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF82XzNfM1sxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMTAwWzFdfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tXzE0fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTI1fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlAuU0FSfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkVuZ3VsZmluZy5CdWxsaXNofDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTI1fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaUNyb3NzLkJlYXJpc2h8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5NaWRkbGV8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFJ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF8xNF8xXzNbMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQ0xpbmVfMjBfNjBfMTIwXzMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5PdGhlciIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTWFydWJvenUuV2hpdGV8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InZvbHVtZV9iYXNlfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTAwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRGVtYXJrLk1pZGRsZXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzZfM18zfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzEwMHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kxMFsxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTG9uZ1NoYWRvdy5Mb3dlcnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlIyfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTQwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFyb29uLlVwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWC1ESV8xMDBbMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlBpZXJjaW5nLkJ1bGxpc2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNVsxXSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzVfM18zWzFdIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb3duc2lkZVRhc3VraUdhcC5CZWFyaXNofDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkxvbmdTaGFkb3cuTG93ZXJ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfNl8zXzNbMV18MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEzfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQXJvb24uRG93biIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJEb25jaENoMjAuTWlkZGxlfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb218MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5SMnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuU3Bpbm5pbmdUb3AuQmxhY2t8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBT1syXXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5EYXJrQ2xvdWRDb3Zlci5CZWFyaXNoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTg5fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMV8yMF82MF8xMjBfMzB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Nb3JuaW5nRG9qaVN0YXIuQnVsbGlzaHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfOXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHJpU3Rhci5CZWFyaXNofDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE3fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfNl8zXzN8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5SMnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi51cHBlcnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5TMnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUzJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzlbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfMTBkX2NhbGN8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfOTBkX2NhbGMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF81XzNfM1sxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TaG9vdGluZ1N0YXJ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTZ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIxfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVXBzaWRlVGFzdWtpR2FwLkJ1bGxpc2h8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS181XzNfM3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV82MGRfY2FsY3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVldBUHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuU3RvY2guUlNJfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuQWJhbmRvbmVkQmFieS5CZWFyaXNofDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlY29tbWVuZC5BbGx8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BN3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaS5HcmF2ZXN0b25lfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJEb25jaENoMjAuTWlkZGxlIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTNbMV18MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzYwZF9jYWxjfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Ud2VlemVyQm90dG9tLkJ1bGxpc2h8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRXZlbmluZ1N0YXJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlIzfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRGFya0Nsb3VkQ292ZXIuQmVhcmlzaHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5DTGluZV8yMF82MF8xMjBfMzB8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGVyZi4zTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExM3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k3fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIzfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUzN8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRFsxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5LaWNraW5nLkJ1bGxpc2h8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTMwMHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k5WzFdfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjb21tZW5kLk90aGVyfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLnVwcGVyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzlbMV18MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjF8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5TcGlubmluZ1RvcC5CbGFja3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kxMFsxXSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzNHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5TMnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Fbmd1bGZpbmcuQmVhcmlzaCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5SMXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLnVwcGVyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTW9ybmluZ0RvamlTdGFyLkJ1bGxpc2h8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ0NJMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkFiYW5kb25lZEJhYnkuQnVsbGlzaHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJMb3cuQWxsIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlVPfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRW5ndWxmaW5nLkJ1bGxpc2h8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFyYW1pQ3Jvc3MuQnVsbGlzaHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQZXJmLjEwWV9hYnMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNVsxXXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuQWJhbmRvbmVkQmFieS5CdWxsaXNofDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjAwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5FdmVuaW5nU3RhcnwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJN1sxXXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRFsxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuM0JsYWNrQ3Jvd3N8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNTV8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTIwMHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5UcmlTdGFyLkJ1bGxpc2h8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k3IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTl8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJlYy5WV01BfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzYwZF9jYWxjfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTEwMHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElbMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTAwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURSfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTMwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzlbMV18MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTV8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQ0xpbmVfMjBfNjBfMTIwXzMwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IktsdENobmwubG93ZXJ8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTIwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsY3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLmJhc2lzfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5SMXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5iYXNpc3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMTAwWzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuTWlkZGxlfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTV8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLk1pZGRsZXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5NaWRkbGV8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5SU0kuS3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyNXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMzAwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRGFya0Nsb3VkQ292ZXIuQmVhcmlzaHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaS5CdWxsaXNofDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTU1fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUmlzaW5nVGhyZWVNZXRob2RzLkJ1bGxpc2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUzN8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQ0xpbmV8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5EZW1hcmsuUzF8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfOF8zXzN8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDJfMjBfNjBfMTIwXzMwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbmV5Rmxvd3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMTAwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUjF8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzEwMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV85MGRfY2FsY191c2R8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMTAwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE0fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTWFydWJvenUuV2hpdGUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQVRSfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfMTRfMV8zfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMTBbMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5SM3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5iYXNpc181MHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMDB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfNl8zXzNbMV18MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLkJCUG93ZXJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5TMXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLktpY2tpbmcuQmVhcmlzaHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIyfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9uZXlGbG93IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE1fDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUjF8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkJQb3dlcnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvd25zaWRlVGFzdWtpR2FwLkJlYXJpc2h8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUzF8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTNbMV18MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBVFIiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMTB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlZXTUF8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuM1doaXRlU29sZGllcnN8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTEyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k0fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfOF8zXzN8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQkxpbmVfMjBfNjBfMTIwXzMwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlIzfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IktsdENobmwuYmFzaXN8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5GYWxsaW5nVGhyZWVNZXRob2RzLkJlYXJpc2giLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYXzIwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE0NHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k5fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTh8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUjMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURSUHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLnVwcGVyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYW1tZXJ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF84XzNfM3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrREl8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJM3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9tXzE0WzFdfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5CTGluZV8yMF82MF8xMjBfMzB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfMTRfMV8zfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlMyfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMjB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkNMaW5lXzIwXzYwXzEyMF8zMHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5TMXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5DTGluZXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzMFsxXSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8xMGRfY2FsY191c2R8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzUwWzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlMxfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5NaWRkbGV8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkJQb3dlcnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5TMXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMDB8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9uZXlGbG93fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkRfNV8zXzNbMV18MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkV2ZW5pbmdEb2ppU3Rhci5CZWFyaXNofDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BOXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuVldNQXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE2fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWkuQmVhcmlzaHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTl8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoicmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjX3VzZCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuU3RvY2guUlNJfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzUwWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTAwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV81MHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWNvbW1lbmQuQWxsfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTIwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmJhc2lzXzUwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNTB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlIzfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21bMV18MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzIwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Nb3JuaW5nU3RhcnwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlBpZXJjaW5nLkJ1bGxpc2h8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5TMXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyMHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE2fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJJY2hpbW9rdS5MZWFkMl8yMF82MF8xMjBfMzB8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDF8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkRlbWFyay5SMXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2FtYXJpbGxhLlIzfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiVy5SfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLkh1bGxNQTl8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUjN8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE1NXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTMiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1vcm5pbmdTdGFyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuUjIiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BODl8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkxvbmdTaGFkb3cuVXBwZXJ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlR3ZWV6ZXJCb3R0b20uQnVsbGlzaHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBVFJQfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNzV8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiS2x0Q2hubC5iYXNpc3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlMyfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWNvbW1lbmQuQWxsfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTYwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzYwZF9jYWxjfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF84XzNfM1sxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5iYXNpc181MHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQlBvd2VyfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE1MHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzUwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWkuQmVhcmlzaHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k0fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBT1sxXSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzMFsxXXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlMyfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzkwZF9jYWxjX3VzZHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRmFsbGluZ1RocmVlTWV0aG9kcy5CZWFyaXNofDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8xMGRfY2FsY191c2R8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUjN8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNDR8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuUjN8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjB8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE0NHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfMTRfMV8zWzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmxvd2VyIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppLkRyYWdvbmZseXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjb21tZW5kLk90aGVyfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTQwfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlIyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQkIuYmFzaXNfNTB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTMwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWNvbW1lbmQuT3RoZXJ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV82MGRfY2FsY3wxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzNHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQLlNBUnwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzZfM18zWzFdIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfOF8zXzNbMV18MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfNjBkX2NhbGNfdXNkIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTlbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF82XzNfMyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5TMnw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE3NXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhbmdpbmdNYW58NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k5WzFdfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWkuQnVsbGlzaHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRW5ndWxmaW5nLkJ1bGxpc2h8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRG9uY2hDaDIwLlVwcGVyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjV8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJ2b2x1bWVfYmFzZXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEzMDB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkxvbmdTaGFkb3cuVXBwZXJ8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzEwMHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5SMXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5TM3wyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS184XzNfM3w1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFPfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLmJhc2lzfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExNHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzVfM18zfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTE1fDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5TMXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUExMnw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkhpZ2guQWxsIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNDSTIwWzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLnVwcGVyXzUwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BODkiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkVuZ3VsZmluZy5CdWxsaXNofDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5JbnZlcnRlZEhhbW1lcnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJEb25jaENoMjAuTG93ZXJ8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFuZ2luZ01hbnwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBcm9vbi5Eb3dufDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJN3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBT1syXXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfMTAwWzFdfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWkuQnVsbGlzaHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTMwMHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjb21tZW5kLk1BfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Pbk5lY2suQmVhcmlzaHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJMjFbMV18MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkJMaW5lfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLjNCbGFja0Nyb3dzfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTQwfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlIyfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV8xMDB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTNbMV18MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkVuZ3VsZmluZy5CdWxsaXNofDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21bMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJM3wxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlZXQVB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkRvbmNoQ2gyMC5Mb3dlciIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuSGFyYW1pQ3Jvc3MuQnVsbGlzaHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLnVwcGVyfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlBpZXJjaW5nLkJ1bGxpc2h8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DbGFzc2ljLlIzfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BN3wzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE1fDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkJMaW5lfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE0NHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkxvbmdTaGFkb3cuVXBwZXJ8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5GYWxsaW5nVGhyZWVNZXRob2RzLkJlYXJpc2h8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1hcnVib3p1LldoaXRlfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF85fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5BYmFuZG9uZWRCYWJ5LkJlYXJpc2h8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkV2ZW5pbmdEb2ppU3Rhci5CZWFyaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlZXQVB8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BN3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExNTAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BOHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6InJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLnVwcGVyfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9uZXlGbG93fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTIxfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kzMHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8xMGRfY2FsY3wxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLldvb2RpZS5TMnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE5IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLkt8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUk9DIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTEwWzFdfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSHVsbE1BMjAwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiYXZlcmFnZV92b2x1bWVfOTBkX2NhbGN8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMjUwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlMzfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLlMxfDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5BYmFuZG9uZWRCYWJ5LkJlYXJpc2h8MjQwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IktsdENobmwudXBwZXJ8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRGVtYXJrLlIxfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTEwWzFdfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTI2fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRXZlbmluZ0RvamlTdGFyLkJlYXJpc2h8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE3NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5TMXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5sb3dlcnwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFJQfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJOVsxXXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5EZW1hcmsuTWlkZGxlfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkJCLmxvd2VyXzUwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSXwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUExMjB8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQVRSfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTYwfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDQ0kyMFsxXXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uRmlib25hY2NpLlIzfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhcmFtaUNyb3NzLkJlYXJpc2h8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5DYW1hcmlsbGEuUzJ8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLldSfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyMDB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV81MHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5IYXJhbWkuQnVsbGlzaHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV8zMGRfY2FsY3wxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuS2lja2luZy5CdWxsaXNoIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTYwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS3w2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5NaWRkbGV8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLlN0b2NoLlJTSXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYLURJXzIwfDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLktpY2tpbmcuQnVsbGlzaHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfMjBbMV18MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BNzV8NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlNwaW5uaW5nVG9wLldoaXRlfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF8yMHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTIxfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzYwZF9jYWxjfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUEyMXwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuRG9qaVN0YXIuQnVsbGlzaHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuUmlzaW5nVGhyZWVNZXRob2RzLkJ1bGxpc2h8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTMwMHw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTJ8NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1vcm5pbmdEb2ppU3Rhci5CdWxsaXNofDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5sb3dlcl81MHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuTG9uZ1NoYWRvdy5VcHBlcnwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFyb29uLkRvd258NSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgtRElfNTBbMV18NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiTW9uZXlGbG93fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNsYXNzaWMuUzIiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlR3ZWV6ZXJUb3AuQmVhcmlzaHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFhfOXwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5NaWRkbGV8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkljaGltb2t1LkNMaW5lXzIwXzYwXzEyMF8zMHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzVfM18zWzFdfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkZpYm9uYWNjaS5SM3wxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuTGVhZDJfMjBfNjBfMTIwXzMwfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUE5fDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb21fMTRbMV18MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJNFsxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHJpU3Rhci5CdWxsaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkhpZ2guMU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjZ8MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0kyMVsxXSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJQaXZvdC5NLkNhbWFyaWxsYS5TMXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTIwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uV29vZGllLk1pZGRsZXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURYK0RJXzEwMFsxXXwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUlNJOXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiSWNoaW1va3UuQkxpbmVfMjBfNjBfMTIwXzMwfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Eb2ppU3Rhci5CdWxsaXNofDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guS18xNF8xXzNbMV0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTAwfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU3RvY2guRF8xNF8xXzNbMV18MSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDYW5kbGUuVHJpU3Rhci5CZWFyaXNofDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJhdmVyYWdlX3ZvbHVtZV85MGRfY2FsY191c2R8MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQURSfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5LXzZfM18zWzFdfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IktsdENobmwuYmFzaXN8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjb21tZW5kLk1BfDEiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkZhbGxpbmdUaHJlZU1ldGhvZHMuQmVhcmlzaHwzMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTTUEyMHwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5Xb29kaWUuTWlkZGxlfDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJTdG9jaC5EXzVfM18zfDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV8yMFsxXXwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k1fDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5SaXNpbmdUaHJlZU1ldGhvZHMuQnVsbGlzaHwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Fbmd1bGZpbmcuQmVhcmlzaHwxVyIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJCQi5iYXNpc181MHw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJLbHRDaG5sLnVwcGVyfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWCtESV85fDE1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlBpdm90Lk0uQ2xhc3NpYy5SMXwxIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6ImF2ZXJhZ2Vfdm9sdW1lXzEwZF9jYWxjIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktfNl8zXzNbMV18MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkNhbmRsZS5Nb3JuaW5nU3RhcnwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNb218MTUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk1vcm5pbmdTdGFyfDI0MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSU0k1fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTMwMHwxTSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJNQUNELmhpc3R8MzAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkhhbmdpbmdNYW58NjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5EZW1hcmsuUzF8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUmVjLldSfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTkiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTIwfDFXIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTc1fDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJFTUE1fDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSVsxXXw2MCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJDQ0kyMFsxXXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLk9uTmVjay5CZWFyaXNofDMwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlN0b2NoLktbMV18MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMjUwfDFNIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTh8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvamlTdGFyLkJ1bGxpc2h8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6Ik1vbV8xNFsxXXw1IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkFEWF85fDUiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiUGl2b3QuTS5GaWJvbmFjY2kuTWlkZGxlfDYwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlJTSTNbMV18MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BNTB8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkRvaml8MVciLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLlRyaVN0YXIuQnVsbGlzaHwxNSIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJSZWMuSHVsbE1BOXwyNDAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiRU1BMTQ0IiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IkVNQTE1MHwxMjAiLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiU01BMTJ8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH0seyJuIjoiQ2FuZGxlLkVuZ3VsZmluZy5CZWFyaXNofDEyMCIsInQiOiJudW1iZXIiLCJyIjpudWxsfSx7Im4iOiJBRFgrRElfNTB8MTIwIiwidCI6Im51bWJlciIsInIiOm51bGx9LHsibiI6IlNNQTV8MU0iLCJ0IjoibnVtYmVyIiwiciI6bnVsbH1dfQ=="}},"time_used":146,"timings":{"blocked":0,"dns":0,"connect":10,"send":0,"wait":122,"receive":0,"ssl":15},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCHYPEH.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.491Z","timestamp":1785126258491,"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 /crypto/XTVCHYPEH.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 04:24:18 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: \"6ecfaa112faf6c74d8bc5a45ccc6502e\"\r\nlast-modified: Thu, 16 Jan 2025 13:46:58 GMT\r\ncdn-cachedat: 08/14/2025 09:12:29\r\nx-amz-id-2: suTxm7PxnyiM2t62JQDcxoHQjvk7u0xfyWXuB3byyGl7xMgErunqfawUIQo7g9HBZJ5hazeS5GQ=\r\nx-amz-request-id: NGBQRCV00GPDMY8Z\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 6ecfaa112faf6c74d8bc5a45ccc6502e\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: 9bd3cdf1275242190d00446d06419f62\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":435,"size_decoded":1219,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (435), with no line terminators","md5":"6ecfaa112faf6c74d8bc5a45ccc6502e","sha1":"7b36086ada63e66760ff5102f2502e186a5d7e39","sha256":"5c1f1e8d29ac5cafef4db2adac82633fbc254e9202037443da387a9de8ce02e8","sha512":"443c0766ef37fd4040e6694403af5120d05410c4f347762669f48555621a78a66468e61b870e59e86869e8df9f594f2f208d56166cff1a387d2b806e9e6fe277","ssdeep":"","tlshash":"89e055fea2a8c2082405a3d0dc6560ca375b50e0328e0bc3f1f6db606286ac7dcc2c18","first_seen":"2025-05-06T14:55:05.026067Z","last_seen":"2026-07-27T07:05:43.316862Z","times_seen":753,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMxODFCMUUiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTQgOWMwIDIuMi0uOTcgNC0yLjE2IDQtLjc1IDAtMS40MS0uODEtMS44LTEuODgtLjMtLjgxLS45NC0xLjMtMS43Ni0xLjMtLjggMC0xLjQuNzYtMS44MyAxLjQ4LS4yNi40My0uNi43LS45OC43QzQuNjYgMTIgNCAxMC41IDQgOXMuNjYtMyAxLjQ3LTNjLjM4IDAgLjczLjI4IDEgLjczLjQuNzEgMSAxLjU1IDEuNzggMS41NS44MiAwIDEuNDYtLjYgMS43My0xLjQyQzEwLjM1IDUuNjggMTEuMDQgNSAxMS44NCA1IDEzLjA0IDUgMTQgNi44IDE0IDlaIiBmaWxsPSIjOTZGQ0U0Ii8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCNMR.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.707Z","timestamp":1785126258707,"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 /crypto/XTVCNMR.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 04:24:18 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: \"e681560d63bbe11a33a5777480535091\"\r\nlast-modified: Mon, 19 Feb 2024 08:05:29 GMT\r\ncdn-cachedat: 08/09/2025 14:29:30\r\nx-amz-id-2: j/y+FRQyEP+V7ROBpmR9nIJYrKGA3Rv7dyHoSgbPxQ2np1j0OtLHh/kUXx5cU34TE36GONwz+kk=\r\nx-amz-request-id: 8R1EJ6K5Y2J4H7N3\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: e681560d63bbe11a33a5777480535091\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: 5df48b511b7d140fc8a813423e805384\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":1893,"size_decoded":1867,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1893), with no line terminators","md5":"e681560d63bbe11a33a5777480535091","sha1":"096487db7380a7fc080375f8d298f7bca53bc6fd","sha256":"3e83e69d6c0a96b042e33a5dc12e5a0266a5cd2a2ae224426cf1dbcecb413bf1","sha512":"8e8605b44cfdab18b54ee2ef6b97705a9293784a46e3c8cf8f53128815eb7a89e41d38ec69544fbb047a1e83068f0fd642a82766644cae2fe81deb484b60e7fd","ssdeep":"","tlshash":"e941d1c6b980e36e9d91c9adc7390490395f90cdb1fba1cd6df61be938590c9e202817","first_seen":"2026-01-20T23:38:48.444024Z","last_seen":"2026-07-27T07:05:43.278591Z","times_seen":454,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTQgMTEuMDJWNi45N2EuNDQuNDQgMCAwIDAtLjE3LS4zNUw5LjI1IDMuMDlhLjQuNCAwIDAgMC0uMzMtLjA4LjQ3LjQ3IDAgMCAwLS4xOS4xTDQuMTggNi42YS40Ny40NyAwIDAgMC0uMTguMzd2NC4wNWMwIC4xNC4wNy4yOC4xOC4zN2w0LjU1IDMuNWEuNC40IDAgMCAwIC41Mi4wMWw0LjU3LTMuNTFhLjQ0LjQ0IDAgMCAwIC4xOC0uMzgiIGZpbGw9IiMwNTA3MDgiLz48cGF0aCBkPSJNOC4zOCA0LjFjLjAyLS4wNS4xLS4xLjItLjFoLjljLjA1LjAyLjEuMDcuMTUuMXYuNTdoLS4yOWwtLjAzLS4wN3YtLjI3SDguN3YuMThoLS4zMnYtLjRaTTEwLjU2IDUuMDloLjMybC42MiAxLjA0di4zNWgtLjFsLS41Mi0uOXYxaC0uMzJ2LTEuNVpNNy40MyA5aC4zMWwuNjMuOTJ2LjMyaC0uMWwtLjUzLS43NXYuODRoLS4zTDcuNDIgOVpNNi40MyA1LjMzaC43di4zNGwtLjc1LjY2LS4yLS4yLjUtLjQ2aC0uMjV2LS4zNFpNOC4xMyA1LjA5bC40My42LjQ0LS42di4zOWwtLjQ0LjZjLS4xNC0uMi0uMy0uMzktLjQzLS41OXYtLjRaTTYuMDMgOS44NGwuNDcuNi40Ny0uNnYuMzlsLS40Ny42LS40Ny0uNTl2LS40Wk0xMS4xOSAxMS42N2wuNDcuNi40Ny0uNnYuNGwtLjQ4LjYtLjQ2LS42di0uNFpNOS40NyA2LjE3aC4zMXYxLjJsLS4xLjEzaC0uNzNjLS4wNC0uMDQtLjA4LS4wOC0uMS0uMTJ2LS41NWguM3YuMzRoLjMydi0xWk0xMi40NCA2LjY3aC42MmwuMzEgMWgtLjNMMTIuODIgN2gtLjE3bC0uMjIuNjdoLS4zMWwuMy0xWk02LjM0IDcuODNoLjYzbC4zMSAxaC0uMzFsLS4yMy0uNjZoLS4xN2wtLjIzLjY2aC0uM2wuMy0xWk05LjkzIDExLjMzaC42M2wuMzEgMWgtLjMxbC0uMjMtLjY2aC0uMTdsLS4yMy42NmgtLjNsLjMtMVpNOC42OSAxNEg5di42N2gtLjMxVjE0TTcuMDUgNy4wM2MuMjEtLjE2LjQzLS4zLjY1LS40NWguNDJjLS4yLjE2LS40My4zLS42NC40NWwuNjUuNDRoLS40NGMtLjIxLS4xNS0uNDMtLjI4LS42NC0uNDRaTTQuMzEgNy4zM2gxLjI1di4zNEw1IDhsLS4xNi0uMi4yMy0uMTNINC4zdi0uMzRaTTEwLjQgOC4wMWMwLS4wOC4wOC0uMTguMTQtLjE4aC41di4zNGgtLjMydi4zM2guOTR2LjMzaC0xLjEyYy0uMDcgMC0uMTMtLjA5LS4xMy0uMTdWOE00LjMxIDEwLjE4YzAtLjA5LjA4LS4xOC4xMy0uMThoLjV2LjMzaC0uMzJ2LjM0aC45NFYxMUg0LjQ0Yy0uMDYgMC0uMTMtLjEtLjEzLS4xOHYtLjY0TTguMzggOC4xOWgxLjAxYy4xNCAwIC4yMy4xLjIzLjJ2LjY3bC0uMTMuMTNIOXYtLjM0aC4zMXYtLjMzaC0uOTR2LS4zM1pNNy43NCAxMi40OGgxLjAyYy4xMyAwIC4yMy4xLjIzLjJ2LjY3bC0uMTMuMTNoLS41di0uMzNoLjMydi0uMzRoLS45NHYtLjMzWk0xMi41NyA4LjY3aC45NmMuMDguMDQuMTcuMTIuMTYuMlYxMGgtLjMxVjloLS42M3YuMzNoLS4zMVY4LjhsLjEzLS4xMlpNOS43NiA5LjY3aC45NmMuMDguMDQuMTcuMTIuMTUuMjFWMTFoLS4zdi0xaC0uNjN2LjMzaC0uMzFWOS44bC4xMy0uMTJaTTUuMjUgOC42N2guMzF2MWgtLjMxdi0xTTYuMTggMTEuOTVsLjc2LS42Mi4yLjIzLS40OS40aC43OHYuMzJINi4xOHYtLjMzWk04LjA2IDExLjMybC43Ny0uNjUuMi4yNC0uNS40MWguNzh2LjM1SDguMDZ2LS4zNVpNMTEuODEgMTAuNDlsLjc3LS42Ni4yLjI1LS41LjRoLjc4di4zNWgtMS4yNXYtLjM0Wk0xMC40OCAxMi41Yy4xLS4wOC40LjEuNC4xdi4wMnMtLjQ5LjIzLS43Mi4zOGguNHYuMzNoLS45NFYxM2wuODYtLjVaIiBmaWxsPSIjZmZmIi8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCEDGED.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.794Z","timestamp":1785126258794,"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 /crypto/XTVCEDGED.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 04:24:18 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: \"e2c31837d8333fd0bcad1fafaa0538cd\"\r\nlast-modified: Mon, 05 May 2025 20:06:58 GMT\r\nx-amz-id-2: VFS1GI+P5jj09hXQeZ3B7ZS8E9eAMi3k853w7FJTGrpP3xX3+v6B9uSgalSb+FUqY/M3HZOoLDA=\r\nx-amz-request-id: 8YFENSZ9F65TASYT\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: e2c31837d8333fd0bcad1fafaa0538cd\r\ncdn-proxyver: 1.57\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 06/20/2026 08:32:58\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 96ca585dac1d1696f39b46c293b9aea5\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":416,"size_decoded":1223,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (416), with no line terminators","md5":"e2c31837d8333fd0bcad1fafaa0538cd","sha1":"f0bb504b322105761349324c8ef62ba5230d9a65","sha256":"d90e39ecbab6ca06b303ba88a249943a5e310e884a104c731cafa9922e4aca62","sha512":"94863e3332b0e53a74eab34bb71dc46115295fe04e18169b418e9cac52c22c7679f92e86415d87c29878a61e1c05e42ffbec6c4b44441ea69d35f04cfd0135f6","ssdeep":"","tlshash":"9ae0a3bbd56c8c1ee50a93b8efa45455505910afd44003a6f5806b2e301c6c75c08964","first_seen":"2026-03-06T10:22:32.557917Z","last_seen":"2026-07-27T07:05:43.292319Z","times_seen":144,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTQgMTJINGw1LjAxLThMMTQgMTJabS02LjQtMmgyLjhMOSA3LjY3IDcuNiAxMFoiIGZpbGw9IiNmZmYiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImEiIHgxPSIzLjM1IiB5MT0iMy4xMiIgeDI9IjIxLjkiIHkyPSIyNC40MyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiMxQTFFMjEiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMwNjA2MEEiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCZKCB.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.814Z","timestamp":1785126258814,"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 /crypto/XTVCZKCB.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 04:24:18 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: \"0a7d3d35c6efdd4b823b38ce28111d92\"\r\nlast-modified: Fri, 03 Oct 2025 20:27:02 GMT\r\ncdn-cachedat: 10/05/2025 12:50:11\r\nx-amz-id-2: RNTnKHLYxCEtn8MI8UX4nrF46BUMwslmDAGH+EaW8voJiDSgnzy3QauEIuRwQoDrzVjNnWVqjFc=\r\nx-amz-request-id: NT209FEBZF687KSG\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 0a7d3d35c6efdd4b823b38ce28111d92\r\ncdn-proxyver: 1.37\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 50a010d98e48a6ec6c326cdaa2f85c3a\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":818,"size_decoded":1403,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (818), with no line terminators","md5":"0a7d3d35c6efdd4b823b38ce28111d92","sha1":"ad2a0695712cd4fd556dbb825c91eb0dfe47e728","sha256":"30c421f0ecf4e146d839ee94875498a9e065e9b1902e5744108a95f08bfb43c1","sha512":"8f6da015cb8aff31ce826eb065ec8441da5c4fd9c538f9e2f258b2af7495bbcde1761a89a944d5c4e509e2427f246a5d01d16f0de31dbab4d8fb547283ff4991","ssdeep":"","tlshash":"bc01abf9a208c15c5503d298db73d0a0338f249d735e02f5b9afcbf0b4676c8e852824","first_seen":"2026-07-10T06:59:52.66202Z","last_seen":"2026-07-27T07:05:43.383758Z","times_seen":105,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGQUY4RjMiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTEuOCA5aC0uODFhMiAyIDAgMCAxLS42LS4wNyAxLjQ4IDEuNDggMCAwIDEtLjg2LS44NSAyLjU1IDIuNTUgMCAwIDEtLjEzLS4zOSAzLjg0IDMuODQgMCAwIDAtLjU0LTEuMjljLS4zLS40MS0uNjUtLjYzLTEuMDUtLjY1LS40My0uMDMtLjc4LjE1LTEuMDYuNTMtLjIzLjMxLS4zOS43NC0uNDcgMS4yNmE3LjA1IDcuMDUgMCAwIDAtLjA3IDEuNDVsLjAxLjAxSDdjLjI0IDAgLjQzLjAxLjU2LjA1LjUyLjE3Ljg2LjU2IDEuMDIgMS4xOS4xNy42NS40IDEuMTUuNjggMS41LjMuMzYuNjUuNTMgMS4wNi41LjQ0LS4wMS44LS4yNiAxLjA2LS43My4yLS4zNy4zMy0uODQuMzktMS40QTkuMTQgOS4xNCAwIDAgMCAxMS44IDloMS45M2MuMi4wNi4yOC4yLjI2LjQ0YTMuOTIgMy45MiAwIDAgMS0uNiAxLjc4IDMuNzQgMy43NCAwIDAgMS0yLjE0IDEuNjFjLS44Ny4yNC0xLjcyLjIyLTIuNTQtLjA1YTMuNjYgMy42NiAwIDAgMS0yLjQzLTIuODQgNi41NyA2LjU3IDAgMCAxLS4xLS45M0w2LjE4IDlINC4yNmwtLjAzLS4wMWMtLjE3LS4wNy0uMjUtLjIxLS4yMy0uNDNhMy44MiAzLjgyIDAgMCAxIDMuMTktMy41IDQuMzggNC4zOCAwIDAgMSAyLjEuMTYgMy43IDMuNyAwIDAgMSAyLjE0IDEuOTRjLjI1LjU1LjM3IDEuMTYuMzYgMS44NFoiIGZpbGw9IiM0RTRFNEUiLz48L3N2Zz4="}},"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":"kit-free.fontawesome.com/releases/latest/css/free-v4-font-face.min.css","fqdn":"kit-free.fontawesome.com","domain":"fontawesome.com","tld":"com"},"ip":{"addr":"104.21.51.18","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.814Z","timestamp":1785126256814,"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":"kit-free.fontawesome.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Mon, 01 Jun 2026 14:46:23 GMT","end":"Sun, 30 Aug 2026 15:46:20 GMT"},"fingerprint":{"sha1":"ED:41:63:4D:D3:55:75:C7:86:AB:46:78:DE:8D:B1:50:DC:8B:E2:06","sha256":"16:BB:EF:67:BD:36:33:D7:63:EA:C7:FC:4A:B1:D3:EF:DF:FA:C4:86:DE:DD:76:0D:51:50:AE:7E:78:44:C1:E2"}}},"request":{"raw":"GET /releases/latest/css/free-v4-font-face.min.css HTTP/1.1\r\nHost: kit-free.fontawesome.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://besttrader.live/\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\nx-amz-id-2: ETEQ1yLJ5BfKCFajFcT2RokeuMsK3CQM2jcOOZzHUZIXvhwp1cYloper9SHarPSLhkk7OXKm0RuVRS8r1er5nBVyjBvBUlVONm0dMVBi2IU=\r\nx-amz-request-id: S5V56646ZG2QGTTY\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\nlast-modified: Wed, 04 Aug 2021 21:22:51 GMT\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncache-control: max-age=1800\r\npriority: u=4,i=?0\r\ncontent-type: text/css\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=UvfpxN2KHcBGbKmnnQkmRLLkXt70IQFpydUY30fooy1EYk4OZbtSvglRNXj1qe7KQxhjYL6k74IclFSvpfd9FSgDuu2Jqk%2BGOxWCeCWXUsLIZg1UKB8VrT4qLvxpJi4XIU2AsU5XvvrBe6A%3D\"}]}\r\nserver: cloudflare\r\nage: 351\r\ncf-cache-status: HIT\r\ncontent-encoding: zstd\r\netag: W/\"f2e0b2680d9b0bcb6e0039c4424e5a59\"\r\ncf-ray: a218dfa11f472efa-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":"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":2956,"size_decoded":1725,"mime_type":"text/css","magic":"ASCII text, with very long lines (2774)","md5":"f2e0b2680d9b0bcb6e0039c4424e5a59","sha1":"1ea995cea90b79f3ad16c318572313a671718645","sha256":"7f8b63bff49fba3c5bae30f4eb39f2fd6d088fbe9d7292bdf37b0ef4a1ec68d6","sha512":"df7c65b3df1a4f5ac7f697b1d6dcc264ecf3c177f9bd0375b5c52a4a124ac8cea4fde3429226875d3b39d1235623a0869230af25e6028c452c9e7e417a53fac3","ssdeep":"","tlshash":"1451aabd47d2022051920f3534e77100ea9ef06bba246eb2c629ca551cbd94b73caf1d","first_seen":"2023-04-06T02:45:40Z","last_seen":"2026-07-27T07:11:50.368392Z","times_seen":5905,"resource_available":false,"data":"LyohCiAqIEZvbnQgQXdlc29tZSBGcmVlIDUuMTUuNCBieSBAZm9udGF3ZXNvbWUgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbQogKiBMaWNlbnNlIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb20vbGljZW5zZS9mcmVlIChJY29uczogQ0MgQlkgNC4wLCBGb250czogU0lMIE9GTCAxLjEsIENvZGU6IE1JVCBMaWNlbnNlKQogKi9AZm9udC1mYWNle2ZvbnQtZmFtaWx5OiJGb250QXdlc29tZSI7Zm9udC1kaXNwbGF5OmJsb2NrO3NyYzp1cmwoLi4vd2ViZm9udHMvZnJlZS1mYS1zb2xpZC05MDAuZW90KTtzcmM6dXJsKC4uL3dlYmZvbnRzL2ZyZWUtZmEtc29saWQtOTAwLmVvdD8jaWVmaXgpIGZvcm1hdCgiZW1iZWRkZWQtb3BlbnR5cGUiKSx1cmwoLi4vd2ViZm9udHMvZnJlZS1mYS1zb2xpZC05MDAud29mZjIpIGZvcm1hdCgid29mZjIiKSx1cmwoLi4vd2ViZm9udHMvZnJlZS1mYS1zb2xpZC05MDAud29mZikgZm9ybWF0KCJ3b2ZmIiksdXJsKC4uL3dlYmZvbnRzL2ZyZWUtZmEtc29saWQtOTAwLnR0ZikgZm9ybWF0KCJ0cnVldHlwZSIpLHVybCguLi93ZWJmb250cy9mcmVlLWZhLXNvbGlkLTkwMC5zdmcjZm9udGF3ZXNvbWUpIGZvcm1hdCgic3ZnIil9QGZvbnQtZmFjZXtmb250LWZhbWlseToiRm9udEF3ZXNvbWUiO2ZvbnQtZGlzcGxheTpibG9jaztzcmM6dXJsKC4uL3dlYmZvbnRzL2ZyZWUtZmEtYnJhbmRzLTQwMC5lb3QpO3NyYzp1cmwoLi4vd2ViZm9udHMvZnJlZS1mYS1icmFuZHMtNDAwLmVvdD8jaWVmaXgpIGZvcm1hdCgiZW1iZWRkZWQtb3BlbnR5cGUiKSx1cmwoLi4vd2ViZm9udHMvZnJlZS1mYS1icmFuZHMtNDAwLndvZmYyKSBmb3JtYXQoIndvZmYyIiksdXJsKC4uL3dlYmZvbnRzL2ZyZWUtZmEtYnJhbmRzLTQwMC53b2ZmKSBmb3JtYXQoIndvZmYiKSx1cmwoLi4vd2ViZm9udHMvZnJlZS1mYS1icmFuZHMtNDAwLnR0ZikgZm9ybWF0KCJ0cnVldHlwZSIpLHVybCguLi93ZWJmb250cy9mcmVlLWZhLWJyYW5kcy00MDAuc3ZnI2ZvbnRhd2Vzb21lKSBmb3JtYXQoInN2ZyIpfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6IkZvbnRBd2Vzb21lIjtmb250LWRpc3BsYXk6YmxvY2s7c3JjOnVybCguLi93ZWJmb250cy9mcmVlLWZhLXJlZ3VsYXItNDAwLmVvdCk7c3JjOnVybCguLi93ZWJmb250cy9mcmVlLWZhLXJlZ3VsYXItNDAwLmVvdD8jaWVmaXgpIGZvcm1hdCgiZW1iZWRkZWQtb3BlbnR5cGUiKSx1cmwoLi4vd2ViZm9udHMvZnJlZS1mYS1yZWd1bGFyLTQwMC53b2ZmMikgZm9ybWF0KCJ3b2ZmMiIpLHVybCguLi93ZWJmb250cy9mcmVlLWZhLXJlZ3VsYXItNDAwLndvZmYpIGZvcm1hdCgid29mZiIpLHVybCguLi93ZWJmb250cy9mcmVlLWZhLXJlZ3VsYXItNDAwLnR0ZikgZm9ybWF0KCJ0cnVldHlwZSIpLHVybCguLi93ZWJmb250cy9mcmVlLWZhLXJlZ3VsYXItNDAwLnN2ZyNmb250YXdlc29tZSkgZm9ybWF0KCJzdmciKTt1bmljb2RlLXJhbmdlOlUrZjAwNC1mMDA1LFUrZjAwNyxVK2YwMTcsVStmMDIyLFUrZjAyNCxVK2YwMmUsVStmMDNlLFUrZjA0NCxVK2YwNTctZjA1OSxVK2YwNmUsVStmMDcwLFUrZjA3NSxVK2YwN2ItZjA3YyxVK2YwODAsVStmMDg2LFUrZjA4OSxVK2YwOTQsVStmMDlkLFUrZjBhMCxVK2YwYTQtZjBhNyxVK2YwYzUsVStmMGM3LWYwYzgsVStmMGUwLFUrZjBlYixVK2YwZjMsVStmMGY4LFUrZjBmZSxVK2YxMTEsVStmMTE4LWYxMWEsVStmMTFjLFUrZjEzMyxVK2YxNDQsVStmMTQ2LFUrZjE0YSxVK2YxNGQtZjE0ZSxVK2YxNTAtZjE1MixVK2YxNWItZjE1YyxVK2YxNjQtZjE2NSxVK2YxODUtZjE4NixVK2YxOTEtZjE5MixVK2YxYWQsVStmMWMxLWYxYzksVStmMWNkLFUrZjFkOCxVK2YxZTMsVStmMWVhLFUrZjFmNixVK2YxZjksVStmMjBhLFUrZjI0Ny1mMjQ5LFUrZjI0ZCxVK2YyNTQtZjI1YixVK2YyNWQsVStmMjcxLWYyNzQsVStmMjc5LFUrZjI4YixVK2YyOGQsVStmMmI1LWYyYjYsVStmMmI5LFUrZjJiYixVK2YyYmQsVStmMmMxLWYyYzIsVStmMmQwLFUrZjJkMixVK2YyZGMsVStmMmVkLFUrZjNhNSxVK2YzZDEsVStmNDEwfUBmb250LWZhY2V7Zm9udC1mYW1pbHk6IkZvbnRBd2Vzb21lIjtmb250LWRpc3BsYXk6YmxvY2s7c3JjOnVybCguLi93ZWJmb250cy9mcmVlLWZhLXY0ZGVwcmVjYXRpb25zLmVvdCk7c3JjOnVybCguLi93ZWJmb250cy9mcmVlLWZhLXY0ZGVwcmVjYXRpb25zLmVvdD8jaWVmaXgpIGZvcm1hdCgiZW1iZWRkZWQtb3BlbnR5cGUiKSx1cmwoLi4vd2ViZm9udHMvZnJlZS1mYS12NGRlcHJlY2F0aW9ucy53b2ZmMikgZm9ybWF0KCJ3b2ZmMiIpLHVybCguLi93ZWJmb250cy9mcmVlLWZhLXY0ZGVwcmVjYXRpb25zLndvZmYpIGZvcm1hdCgid29mZiIpLHVybCguLi93ZWJmb250cy9mcmVlLWZhLXY0ZGVwcmVjYXRpb25zLnR0ZikgZm9ybWF0KCJ0cnVldHlwZSIpLHVybCguLi93ZWJmb250cy9mcmVlLWZhLXY0ZGVwcmVjYXRpb25zLnN2ZyNmb250YXdlc29tZSkgZm9ybWF0KCJzdmciKTt1bmljb2RlLXJhbmdlOlUrZjAwMyxVK2YwMDYsVStmMDE0LFUrZjAxNixVK2YwMWEtZjAxYixVK2YwMWQsVStmMDQwLFUrZjA0NS1mMDQ3LFUrZjA1Yy1mMDVkLFUrZjA3ZC1mMDdlLFUrZjA4Ny1mMDg4LFUrZjA4YS1mMDhiLFUrZjA4ZSxVK2YwOTAsVStmMDk2LWYwOTcsVStmMGEyLFUrZjBlNC1mMGU2LFUrZjBlYy1mMGVlLFUrZjBmNS1mMGY3LFUrZjEwYyxVK2YxMTIsVStmMTE0LWYxMTUsVStmMTFkLFUrZjEyMyxVK2YxMzIsVStmMTQ1LFUrZjE0Ny1mMTQ5LFUrZjE0YyxVK2YxNjYsVStmMTZhLFUrZjE3MixVK2YxNzUtZjE3OCxVK2YxOGUsVStmMTkwLFUrZjE5NixVK2YxYjEsVStmMWQ5LFUrZjFkYixVK2YxZjcsVStmMjBjLFUrZjIxOSxVK2YyMzAsVStmMjRhLFUrZjI1MCxVK2YyNzgsVStmMjdiLFUrZjI4MyxVK2YyOGMsVStmMjhlLFUrZjI5Yi1mMjljLFUrZjJiNyxVK2YyYmEsVStmMmJjLFUrZjJiZSxVK2YyYzAsVStmMmMzLFUrZjJkMy1mMmQ0fQ=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCWBT.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.541Z","timestamp":1785126258541,"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 /crypto/XTVCWBT.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 04:24:18 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: \"72e2722e90b3825d3759c50b8e227a15\"\r\nlast-modified: Tue, 30 Aug 2022 06:26:30 GMT\r\ncdn-cachedat: 08/09/2025 14:55:34\r\nx-amz-id-2: 6QmbIGNmTj6W4BOYVDHeE6N+rLXqbmssdfEFe9zQ/yfgwni8aVz7+JPy0o/RtX+zt4p0D8UNcNE=\r\nx-amz-request-id: ZHQJ4T8G7WVEADBN\r\nx-amz-meta-hash: 72e2722e90b3825d3759c50b8e227a15\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: 67c45d3fc764c78261040f7e9454b21b\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":631,"size_decoded":1277,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (631), with no line terminators","md5":"72e2722e90b3825d3759c50b8e227a15","sha1":"43009ea0cebf6a3b143321709e188eb3a292434e","sha256":"9d1236e82acac1bf2620c9a46c211e7b3bb052db61719f4ada4a4f14c4afbe28","sha512":"dd4bdb4dc610f8538d1a64edb24a0efa785366b558f749db82b35305641fc02eb1e685fa31d1e7b065693aa91260f259495f24781cd24d235fda1a88ada5540e","ssdeep":"","tlshash":"6df04979e25c852fd81bcab8de588065635ed0f6b48811a4a89feb2820471dbdc06f94","first_seen":"2025-02-02T13:07:25.587876Z","last_seen":"2026-07-27T07:05:43.302556Z","times_seen":784,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNOSAxNEE1IDUgMCAxIDAgOSA0YTUgNSAwIDAgMCAwIDEwWiIgZmlsbD0idXJsKCNhd2J6djMyc2spIi8+PHBhdGggZD0iTTkuNDkgNy43YS42LjYgMCAwIDAtMS4wNS4xNGwtLjkxIDIuMjUtLjgtMS41YS42LjYgMCAwIDAtMS4wNy41N2wxLjQgMi42NWEuNi42IDAgMCAwIC41NC4zMmguMDNhLjYuNiAwIDAgMCAuNTMtLjM3bDEtMi40Ny43NyAxYS42LjYgMCAwIDAgMS4wNC0uMTRsMS44LTQuNDNhNSA1IDAgMCAwLS45Ni0uODZsLTEuNTYgMy44NS0uNzYtMVoiIGZpbGw9IiNGMEYzRkEiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImF3Ynp2MzJzayIgeDE9IjQuMDEiIHkxPSI5IiB4Mj0iMTQiIHkyPSI5IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iI0U5QzU3MCIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI0Y3QjgzOSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjwvc3ZnPg=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCSPKS.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.714Z","timestamp":1785126258714,"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 /crypto/XTVCSPKS.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 04:24:18 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: \"43b74492408edc56ae774b2c82022b3e\"\r\nlast-modified: Tue, 22 Jul 2025 12:59:22 GMT\r\ncdn-cachedat: 08/09/2025 14:32:49\r\nx-amz-id-2: hHGuc2ayxQIIBcly6Nf+2VSlNtPylf6ZsCZWn0V6y3nefGA7HkQYbKnpDVqGDvbKFbp9q4qv8Dg=\r\nx-amz-request-id: CFHQA7PTEPZNK3W2\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 43b74492408edc56ae774b2c82022b3e\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: 6ba9920e44f5758ded1b6d36776c9450\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":907,"size_decoded":1478,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (907), with no line terminators","md5":"43b74492408edc56ae774b2c82022b3e","sha1":"ae4929f141f7ef55c75ca331dd39056b8055e429","sha256":"c422d8d653ff4e24dc50c3105e8225d34d9c6d54f89c627d7d4a50a29e5e08f5","sha512":"47d4d396b6a163ff730cfad462524a66b99398a508e7e76aa3414683c35fd3bdcd353c6e5f23b5282972699c49bf2ed4308ff0d76b4d4075ff02d86388237b87","ssdeep":"","tlshash":"3d11dc29d60cd72d9587d3aecbbb81e0125c109bf0d906a8bef1ebdc501d1d2fc00924","first_seen":"2026-02-05T19:38:40.352559Z","last_seen":"2026-07-27T07:05:43.333201Z","times_seen":429,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJtMTAuNiAxMC0uMDMuMDF2LjAzYy40My44Ny44MiAxLjQgMS4xNSAyLjEuMDYuMTQuMDUuMjItLjA1LjI1LS4wOC4wMi0uMTcuMDEtLjI3LS4wNC0uMTctLjA5LS43OS0uMzctMS44Ni0uODZsLS4wMy4wMS0xLjc2IDMuNGMtLjA0LjA3LS4xMS4xMS0uMjEuMWEuMDYuMDYgMCAwIDEtLjA0LS4wMy4yOC4yOCAwIDAgMS0uMDYtLjE3di00LjIzYS4wNS4wNSAwIDAgMC0uMDMtLjA1Yy0uOC0uMzctMi4yMy0xLjI2LTQuMjgtMi4yLS4wOC0uMDQtLjEzLS4xLS4xMy0uMTggMC0uMDkuMDYtLjE0LjE3LS4xNEg3LjQzdi0uMDNjLS40MS0uODItLjgtMS4zNy0xLjE1LTIuMTItLjA1LS4xLS4wNC0uMTguMDItLjIyLjA2LS4wNS4xNC0uMDUuMjMgMGEyNjIuNzYgMjYyLjc2IDAgMCAxIDEuOTYuODhsMS43Ny0zLjQxYy4wMy0uMDguMS0uMS4yLS4xLjAyIDAgLjAzLjAxLjA0LjAzLjA0LjA1LjA2LjEuMDYuMTd2NC4yM2MwIC4wMi4wMS4wNC4wMy4wNS4wNS4wMiAxLjQ4Ljk0IDQuMzEgMi4yMi4wNS4wMy4wOC4wOC4xLjE2LjAyLjEtLjA1LjE0LS4yLjE0aC00LjJaIiBmaWxsPSJ1cmwoI2EpIi8+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJhIiB4MT0iMTQuMjgiIHkxPSI3LjI3IiB4Mj0iOSIgeTI9IjE1IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iI0Y3NEFCQSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI0ZCQTIzQyIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjwvc3ZnPg=="}},"time_used":1,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":1,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCSONGBIRD.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.789Z","timestamp":1785126258789,"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 /crypto/XTVCSONGBIRD.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 04:24:18 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: \"d8292f8bc0116ce4bf6a625d1c9e7ac3\"\r\nlast-modified: Fri, 12 Jan 2024 14:17:32 GMT\r\nx-amz-id-2: WFOqUpQkV/fp+OPRnKC1ftLcvIfNjSfdHSNNekbIrD6DSLUvKgaKUdAvuX57WtuHSzt5cPZgcO0=\r\nx-amz-request-id: 3GPWF94MYSNBQ738\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: d8292f8bc0116ce4bf6a625d1c9e7ac3\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/26/2026 14:32:30\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 1bc1922648f4c6ba485993e8e89a1d95\r\ncdn-cache: REVALIDATED\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":315,"size_decoded":1167,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (315), with no line terminators","md5":"d8292f8bc0116ce4bf6a625d1c9e7ac3","sha1":"8a30ae15ce856508618947bb8625cf56a36d716d","sha256":"e5bbcd6b26c519c3a1f8e4bd7002c24dcea4c52a08907a38a969f592889a5ebb","sha512":"d1cf4104ee93965cd68af3b72ae3dd80d86695d1bb6f502b47652a9a33aadc902fa29474b785c40722638920c2645a9b6e4883119fe48893104a67d195b73b39","ssdeep":"","tlshash":"70e0c0b8d35c840c5902c27486693081120da0e9705005f970282e9071801d7bc01d28","first_seen":"2026-07-01T10:25:41.73327Z","last_seen":"2026-07-27T05:33:43.703611Z","times_seen":6,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTQgNUg3LjI1QzYgNSA1IDUuOSA1IDdoNi43NUMxMyA3IDE0IDYuMSAxNCA1Wm0tMi4yNSAzaC00LjVDNiA4IDUgOC45IDUgMTBoNC41YzEuMjQgMCAyLjI1LS45IDIuMjUtMlpNNiAxM2ExIDEgMCAxIDAgMC0yIDEgMSAwIDAgMCAwIDJaIiBmaWxsPSIjRTYxQTU5Ii8+PC9zdmc+"}},"time_used":132,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":132,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:15.764Z","timestamp":1785126255764,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:15 GMT\r\ncontent-type: text/css\r\nlast-modified: Sat, 07 Oct 2023 09:01:37 GMT\r\netag: W/\"65211e71-2606e\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":155758,"size_decoded":20587,"mime_type":"text/css","magic":"ASCII text, with very long lines (65324)","md5":"a15c2ac3234aa8f6064ef9c1f7383c37","sha1":"6e10354828454898fda80f55f3decb347fd9ed21","sha256":"60b19e5da6a9234ff9220668a5ec1125c157a268513256188ee80f2d2c8d8d36","sha512":"b435cf71a9ae66c59677a3ac285c87ea702a87f32367fe5893cf13e68f9a31fca0a8d14f6a7d692f23c5027751ce63961ca4fe8d20f35a926ff24ae3eb1d4b30","ssdeep":"1536:b/xImT+IcCQYYDnDEBi83NcuSEk/ekX/uKiq3SYiLENM6HN26F:b/Riz7G3q3SYiLENM6HN26F","tlshash":"68e386a6f5a0312de4a7c61964d0bafe156f8145d7220bfbf8273b7447892c70a63e4c","first_seen":"2023-04-05T08:00:04Z","last_seen":"2026-07-27T06:59:18.310454Z","times_seen":43972,"resource_available":false,"data":"LyohCiAqIEJvb3RzdHJhcCB2NC4zLjEgKGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS8pCiAqIENvcHlyaWdodCAyMDExLTIwMTkgVGhlIEJvb3RzdHJhcCBBdXRob3JzCiAqIENvcHlyaWdodCAyMDExLTIwMTkgVHdpdHRlciwgSW5jLgogKiBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9ibG9iL21hc3Rlci9MSUNFTlNFKQogKi86cm9vdHstLWJsdWU6IzAwN2JmZjstLWluZGlnbzojNjYxMGYyOy0tcHVycGxlOiM2ZjQyYzE7LS1waW5rOiNlODNlOGM7LS1yZWQ6I2RjMzU0NTstLW9yYW5nZTojZmQ3ZTE0Oy0teWVsbG93OiNmZmMxMDc7LS1ncmVlbjojMjhhNzQ1Oy0tdGVhbDojMjBjOTk3Oy0tY3lhbjojMTdhMmI4Oy0td2hpdGU6I2ZmZjstLWdyYXk6IzZjNzU3ZDstLWdyYXktZGFyazojMzQzYTQwOy0tcHJpbWFyeTojMDA3YmZmOy0tc2Vjb25kYXJ5OiM2Yzc1N2Q7LS1zdWNjZXNzOiMyOGE3NDU7LS1pbmZvOiMxN2EyYjg7LS13YXJuaW5nOiNmZmMxMDc7LS1kYW5nZXI6I2RjMzU0NTstLWxpZ2h0OiNmOGY5ZmE7LS1kYXJrOiMzNDNhNDA7LS1icmVha3BvaW50LXhzOjA7LS1icmVha3BvaW50LXNtOjU3NnB4Oy0tYnJlYWtwb2ludC1tZDo3NjhweDstLWJyZWFrcG9pbnQtbGc6OTkycHg7LS1icmVha3BvaW50LXhsOjEyMDBweDstLWZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsIlNlZ29lIFVJIixSb2JvdG8sIkhlbHZldGljYSBOZXVlIixBcmlhbCwiTm90byBTYW5zIixzYW5zLXNlcmlmLCJBcHBsZSBDb2xvciBFbW9qaSIsIlNlZ29lIFVJIEVtb2ppIiwiU2Vnb2UgVUkgU3ltYm9sIiwiTm90byBDb2xvciBFbW9qaSI7LS1mb250LWZhbWlseS1tb25vc3BhY2U6U0ZNb25vLVJlZ3VsYXIsTWVubG8sTW9uYWNvLENvbnNvbGFzLCJMaWJlcmF0aW9uIE1vbm8iLCJDb3VyaWVyIE5ldyIsbW9ub3NwYWNlfSosOjphZnRlciw6OmJlZm9yZXtib3gtc2l6aW5nOmJvcmRlci1ib3h9aHRtbHtmb250LWZhbWlseTpzYW5zLXNlcmlmO2xpbmUtaGVpZ2h0OjEuMTU7LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OjEwMCU7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50fWFydGljbGUsYXNpZGUsZmlnY2FwdGlvbixmaWd1cmUsZm9vdGVyLGhlYWRlcixoZ3JvdXAsbWFpbixuYXYsc2VjdGlvbntkaXNwbGF5OmJsb2NrfWJvZHl7bWFyZ2luOjA7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsIlNlZ29lIFVJIixSb2JvdG8sIkhlbHZldGljYSBOZXVlIixBcmlhbCwiTm90byBTYW5zIixzYW5zLXNlcmlmLCJBcHBsZSBDb2xvciBFbW9qaSIsIlNlZ29lIFVJIEVtb2ppIiwiU2Vnb2UgVUkgU3ltYm9sIiwiTm90byBDb2xvciBFbW9qaSI7Zm9udC1zaXplOjFyZW07Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjEuNTtjb2xvcjojMjEyNTI5O3RleHQtYWxpZ246bGVmdDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9W3RhYmluZGV4PSItMSJdOmZvY3Vze291dGxpbmU6MCFpbXBvcnRhbnR9aHJ7Ym94LXNpemluZzpjb250ZW50LWJveDtoZWlnaHQ6MDtvdmVyZmxvdzp2aXNpYmxlfWgxLGgyLGgzLGg0LGg1LGg2e21hcmdpbi10b3A6MDttYXJnaW4tYm90dG9tOi41cmVtfXB7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206MXJlbX1hYmJyW2RhdGEtb3JpZ2luYWwtdGl0bGVdLGFiYnJbdGl0bGVde3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7LXdlYmtpdC10ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lIGRvdHRlZDt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lIGRvdHRlZDtjdXJzb3I6aGVscDtib3JkZXItYm90dG9tOjA7LXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6bm9uZTt0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6bm9uZX1hZGRyZXNze21hcmdpbi1ib3R0b206MXJlbTtmb250LXN0eWxlOm5vcm1hbDtsaW5lLWhlaWdodDppbmhlcml0fWRsLG9sLHVse21hcmdpbi10b3A6MDttYXJnaW4tYm90dG9tOjFyZW19b2wgb2wsb2wgdWwsdWwgb2wsdWwgdWx7bWFyZ2luLWJvdHRvbTowfWR0e2ZvbnQtd2VpZ2h0OjcwMH1kZHttYXJnaW4tYm90dG9tOi41cmVtO21hcmdpbi1sZWZ0OjB9YmxvY2txdW90ZXttYXJnaW46MCAwIDFyZW19YixzdHJvbmd7Zm9udC13ZWlnaHQ6Ym9sZGVyfXNtYWxse2ZvbnQtc2l6ZTo4MCV9c3ViLHN1cHtwb3NpdGlvbjpyZWxhdGl2ZTtmb250LXNpemU6NzUlO2xpbmUtaGVpZ2h0OjA7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9c3Vie2JvdHRvbTotLjI1ZW19c3Vwe3RvcDotLjVlbX1he2NvbG9yOiMwMDdiZmY7dGV4dC1kZWNvcmF0aW9uOm5vbmU7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH1hOmhvdmVye2NvbG9yOiMwMDU2YjM7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX1hOm5vdChbaHJlZl0pOm5vdChbdGFiaW5kZXhdKXtjb2xvcjppbmhlcml0O3RleHQtZGVjb3JhdGlvbjpub25lfWE6bm90KFtocmVmXSk6bm90KFt0YWJpbmRleF0pOmZvY3VzLGE6bm90KFtocmVmXSk6bm90KFt0YWJpbmRleF0pOmhvdmVye2NvbG9yOmluaGVyaXQ7dGV4dC1kZWNvcmF0aW9uOm5vbmV9YTpub3QoW2hyZWZdKTpub3QoW3RhYmluZGV4XSk6Zm9jdXN7b3V0bGluZTowfWNvZGUsa2JkLHByZSxzYW1we2ZvbnQtZmFtaWx5OlNGTW9uby1SZWd1bGFyLE1lbmxvLE1vbmFjbyxDb25zb2xhcywiTGliZXJhdGlvbiBNb25vIiwiQ291cmllciBOZXciLG1vbm9zcGFjZTtmb250LXNpemU6MWVtfXByZXttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbToxcmVtO292ZXJmbG93OmF1dG99ZmlndXJle21hcmdpbjowIDAgMXJlbX1pbWd7dmVydGljYWwtYWxpZ246bWlkZGxlO2JvcmRlci1zdHlsZTpub25lfXN2Z3tvdmVyZmxvdzpoaWRkZW47dmVydGljYWwtYWxpZ246bWlkZGxlfXRhYmxle2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZX1jYXB0aW9ue3BhZGRpbmctdG9wOi43NXJlbTtwYWRkaW5nLWJvdHRvbTouNzVyZW07Y29sb3I6IzZjNzU3ZDt0ZXh0LWFsaWduOmxlZnQ7Y2FwdGlvbi1zaWRlOmJvdHRvbX10aHt0ZXh0LWFsaWduOmluaGVyaXR9bGFiZWx7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWJvdHRvbTouNXJlbX1idXR0b257Ym9yZGVyLXJhZGl1czowfWJ1dHRvbjpmb2N1c3tvdXRsaW5lOjFweCBkb3R0ZWQ7b3V0bGluZTo1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3J9YnV0dG9uLGlucHV0LG9wdGdyb3VwLHNlbGVjdCx0ZXh0YXJlYXttYXJnaW46MDtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZTppbmhlcml0O2xpbmUtaGVpZ2h0OmluaGVyaXR9YnV0dG9uLGlucHV0e292ZXJmbG93OnZpc2libGV9YnV0dG9uLHNlbGVjdHt0ZXh0LXRyYW5zZm9ybTpub25lfXNlbGVjdHt3b3JkLXdyYXA6bm9ybWFsfVt0eXBlPWJ1dHRvbl0sW3R5cGU9cmVzZXRdLFt0eXBlPXN1Ym1pdF0sYnV0dG9uey13ZWJraXQtYXBwZWFyYW5jZTpidXR0b259W3R5cGU9YnV0dG9uXTpub3QoOmRpc2FibGVkKSxbdHlwZT1yZXNldF06bm90KDpkaXNhYmxlZCksW3R5cGU9c3VibWl0XTpub3QoOmRpc2FibGVkKSxidXR0b246bm90KDpkaXNhYmxlZCl7Y3Vyc29yOnBvaW50ZXJ9W3R5cGU9YnV0dG9uXTo6LW1vei1mb2N1cy1pbm5lcixbdHlwZT1yZXNldF06Oi1tb3otZm9jdXMtaW5uZXIsW3R5cGU9c3VibWl0XTo6LW1vei1mb2N1cy1pbm5lcixidXR0b246Oi1tb3otZm9jdXMtaW5uZXJ7cGFkZGluZzowO2JvcmRlci1zdHlsZTpub25lfWlucHV0W3R5cGU9Y2hlY2tib3hdLGlucHV0W3R5cGU9cmFkaW9de2JveC1zaXppbmc6Ym9yZGVyLWJveDtwYWRkaW5nOjB9aW5wdXRbdHlwZT1kYXRlXSxpbnB1dFt0eXBlPWRhdGV0aW1lLWxvY2FsXSxpbnB1dFt0eXBlPW1vbnRoXSxpbnB1dFt0eXBlPXRpbWVdey13ZWJraXQtYXBwZWFyYW5jZTpsaXN0Ym94fXRleHRhcmVhe292ZXJmbG93OmF1dG87cmVzaXplOnZlcnRpY2FsfWZpZWxkc2V0e21pbi13aWR0aDowO3BhZGRpbmc6MDttYXJnaW46MDtib3JkZXI6MH1sZWdlbmR7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO21heC13aWR0aDoxMDAlO3BhZGRpbmc6MDttYXJnaW4tYm90dG9tOi41cmVtO2ZvbnQtc2l6ZToxLjVyZW07bGluZS1oZWlnaHQ6aW5oZXJpdDtjb2xvcjppbmhlcml0O3doaXRlLXNwYWNlOm5vcm1hbH1wcm9ncmVzc3t2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX1bdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b257aGVpZ2h0OmF1dG99W3R5cGU9c2VhcmNoXXtvdXRsaW5lLW9mZnNldDotMnB4Oy13ZWJraXQtYXBwZWFyYW5jZTpub25lfVt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb257LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmV9Ojotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbntmb250OmluaGVyaXQ7LXdlYmtpdC1hcHBlYXJhbmNlOmJ1dHRvbn1vdXRwdXR7ZGlzcGxheTppbmxpbmUtYmxvY2t9c3VtbWFyeXtkaXNwbGF5Omxpc3QtaXRlbTtjdXJzb3I6cG9pbnRlcn10ZW1wbGF0ZXtkaXNwbGF5Om5vbmV9W2hpZGRlbl17ZGlzcGxheTpub25lIWltcG9ydGFudH0uaDEsLmgyLC5oMywuaDQsLmg1LC5oNixoMSxoMixoMyxoNCxoNSxoNnttYXJnaW4tYm90dG9tOi41cmVtO2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxLjJ9LmgxLGgxe2ZvbnQtc2l6ZToyLjVyZW19LmgyLGgye2ZvbnQtc2l6ZToycmVtfS5oMyxoM3tmb250LXNpemU6MS43NXJlbX0uaDQsaDR7Zm9udC1zaXplOjEuNXJlbX0uaDUsaDV7Zm9udC1zaXplOjEuMjVyZW19Lmg2LGg2e2ZvbnQtc2l6ZToxcmVtfS5sZWFke2ZvbnQtc2l6ZToxLjI1cmVtO2ZvbnQtd2VpZ2h0OjMwMH0uZGlzcGxheS0xe2ZvbnQtc2l6ZTo2cmVtO2ZvbnQtd2VpZ2h0OjMwMDtsaW5lLWhlaWdodDoxLjJ9LmRpc3BsYXktMntmb250LXNpemU6NS41cmVtO2ZvbnQtd2VpZ2h0OjMwMDtsaW5lLWhlaWdodDoxLjJ9LmRpc3BsYXktM3tmb250LXNpemU6NC41cmVtO2ZvbnQtd2VpZ2h0OjMwMDtsaW5lLWhlaWdodDoxLjJ9LmRpc3BsYXktNHtmb250LXNpemU6My41cmVtO2ZvbnQtd2VpZ2h0OjMwMDtsaW5lLWhlaWdodDoxLjJ9aHJ7bWFyZ2luLXRvcDoxcmVtO21hcmdpbi1ib3R0b206MXJlbTtib3JkZXI6MDtib3JkZXItdG9wOjFweCBzb2xpZCByZ2JhKDAsMCwwLC4xKX0uc21hbGwsc21hbGx7Zm9udC1zaXplOjgwJTtmb250LXdlaWdodDo0MDB9Lm1hcmssbWFya3twYWRkaW5nOi4yZW07YmFja2dyb3VuZC1jb2xvcjojZmNmOGUzfS5saXN0LXVuc3R5bGVke3BhZGRpbmctbGVmdDowO2xpc3Qtc3R5bGU6bm9uZX0ubGlzdC1pbmxpbmV7cGFkZGluZy1sZWZ0OjA7bGlzdC1zdHlsZTpub25lfS5saXN0LWlubGluZS1pdGVte2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5saXN0LWlubGluZS1pdGVtOm5vdCg6bGFzdC1jaGlsZCl7bWFyZ2luLXJpZ2h0Oi41cmVtfS5pbml0aWFsaXNte2ZvbnQtc2l6ZTo5MCU7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS5ibG9ja3F1b3Rle21hcmdpbi1ib3R0b206MXJlbTtmb250LXNpemU6MS4yNXJlbX0uYmxvY2txdW90ZS1mb290ZXJ7ZGlzcGxheTpibG9jaztmb250LXNpemU6ODAlO2NvbG9yOiM2Yzc1N2R9LmJsb2NrcXVvdGUtZm9vdGVyOjpiZWZvcmV7Y29udGVudDoiXDIwMTRcMDBBMCJ9LmltZy1mbHVpZHttYXgtd2lkdGg6MTAwJTtoZWlnaHQ6YXV0b30uaW1nLXRodW1ibmFpbHtwYWRkaW5nOi4yNXJlbTtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCAjZGVlMmU2O2JvcmRlci1yYWRpdXM6LjI1cmVtO21heC13aWR0aDoxMDAlO2hlaWdodDphdXRvfS5maWd1cmV7ZGlzcGxheTppbmxpbmUtYmxvY2t9LmZpZ3VyZS1pbWd7bWFyZ2luLWJvdHRvbTouNXJlbTtsaW5lLWhlaWdodDoxfS5maWd1cmUtY2FwdGlvbntmb250LXNpemU6OTAlO2NvbG9yOiM2Yzc1N2R9Y29kZXtmb250LXNpemU6ODcuNSU7Y29sb3I6I2U4M2U4Yzt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9YT5jb2Rle2NvbG9yOmluaGVyaXR9a2Jke3BhZGRpbmc6LjJyZW0gLjRyZW07Zm9udC1zaXplOjg3LjUlO2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMjEyNTI5O2JvcmRlci1yYWRpdXM6LjJyZW19a2JkIGtiZHtwYWRkaW5nOjA7Zm9udC1zaXplOjEwMCU7Zm9udC13ZWlnaHQ6NzAwfXByZXtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZTo4Ny41JTtjb2xvcjojMjEyNTI5fXByZSBjb2Rle2ZvbnQtc2l6ZTppbmhlcml0O2NvbG9yOmluaGVyaXQ7d29yZC1icmVhazpub3JtYWx9LnByZS1zY3JvbGxhYmxle21heC1oZWlnaHQ6MzQwcHg7b3ZlcmZsb3cteTpzY3JvbGx9LmNvbnRhaW5lcnt3aWR0aDoxMDAlO3BhZGRpbmctcmlnaHQ6MTVweDtwYWRkaW5nLWxlZnQ6MTVweDttYXJnaW4tcmlnaHQ6YXV0bzttYXJnaW4tbGVmdDphdXRvfUBtZWRpYSAobWluLXdpZHRoOjU3NnB4KXsuY29udGFpbmVye21heC13aWR0aDo1NDBweH19QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5jb250YWluZXJ7bWF4LXdpZHRoOjcyMHB4fX1AbWVkaWEgKG1pbi13aWR0aDo5OTJweCl7LmNvbnRhaW5lcnttYXgtd2lkdGg6OTYwcHh9fUBtZWRpYSAobWluLXdpZHRoOjEyMDBweCl7LmNvbnRhaW5lcnttYXgtd2lkdGg6MTE0MHB4fX0uY29udGFpbmVyLWZsdWlke3dpZHRoOjEwMCU7cGFkZGluZy1yaWdodDoxNXB4O3BhZGRpbmctbGVmdDoxNXB4O21hcmdpbi1yaWdodDphdXRvO21hcmdpbi1sZWZ0OmF1dG99LnJvd3tkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC13cmFwOndyYXA7ZmxleC13cmFwOndyYXA7bWFyZ2luLXJpZ2h0Oi0xNXB4O21hcmdpbi1sZWZ0Oi0xNXB4fS5uby1ndXR0ZXJze21hcmdpbi1yaWdodDowO21hcmdpbi1sZWZ0OjB9Lm5vLWd1dHRlcnM+LmNvbCwubm8tZ3V0dGVycz5bY2xhc3MqPWNvbC1de3BhZGRpbmctcmlnaHQ6MDtwYWRkaW5nLWxlZnQ6MH0uY29sLC5jb2wtMSwuY29sLTEwLC5jb2wtMTEsLmNvbC0xMiwuY29sLTIsLmNvbC0zLC5jb2wtNCwuY29sLTUsLmNvbC02LC5jb2wtNywuY29sLTgsLmNvbC05LC5jb2wtYXV0bywuY29sLWxnLC5jb2wtbGctMSwuY29sLWxnLTEwLC5jb2wtbGctMTEsLmNvbC1sZy0xMiwuY29sLWxnLTIsLmNvbC1sZy0zLC5jb2wtbGctNCwuY29sLWxnLTUsLmNvbC1sZy02LC5jb2wtbGctNywuY29sLWxnLTgsLmNvbC1sZy05LC5jb2wtbGctYXV0bywuY29sLW1kLC5jb2wtbWQtMSwuY29sLW1kLTEwLC5jb2wtbWQtMTEsLmNvbC1tZC0xMiwuY29sLW1kLTIsLmNvbC1tZC0zLC5jb2wtbWQtNCwuY29sLW1kLTUsLmNvbC1tZC02LC5jb2wtbWQtNywuY29sLW1kLTgsLmNvbC1tZC05LC5jb2wtbWQtYXV0bywuY29sLXNtLC5jb2wtc20tMSwuY29sLXNtLTEwLC5jb2wtc20tMTEsLmNvbC1zbS0xMiwuY29sLXNtLTIsLmNvbC1zbS0zLC5jb2wtc20tNCwuY29sLXNtLTUsLmNvbC1zbS02LC5jb2wtc20tNywuY29sLXNtLTgsLmNvbC1zbS05LC5jb2wtc20tYXV0bywuY29sLXhsLC5jb2wteGwtMSwuY29sLXhsLTEwLC5jb2wteGwtMTEsLmNvbC14bC0xMiwuY29sLXhsLTIsLmNvbC14bC0zLC5jb2wteGwtNCwuY29sLXhsLTUsLmNvbC14bC02LC5jb2wteGwtNywuY29sLXhsLTgsLmNvbC14bC05LC5jb2wteGwtYXV0b3twb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlO3BhZGRpbmctcmlnaHQ6MTVweDtwYWRkaW5nLWxlZnQ6MTVweH0uY29sey1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjA7ZmxleC1iYXNpczowOy1tcy1mbGV4LXBvc2l0aXZlOjE7ZmxleC1ncm93OjE7bWF4LXdpZHRoOjEwMCV9LmNvbC1hdXRvey1tcy1mbGV4OjAgMCBhdXRvO2ZsZXg6MCAwIGF1dG87d2lkdGg6YXV0bzttYXgtd2lkdGg6MTAwJX0uY29sLTF7LW1zLWZsZXg6MCAwIDguMzMzMzMzJTtmbGV4OjAgMCA4LjMzMzMzMyU7bWF4LXdpZHRoOjguMzMzMzMzJX0uY29sLTJ7LW1zLWZsZXg6MCAwIDE2LjY2NjY2NyU7ZmxleDowIDAgMTYuNjY2NjY3JTttYXgtd2lkdGg6MTYuNjY2NjY3JX0uY29sLTN7LW1zLWZsZXg6MCAwIDI1JTtmbGV4OjAgMCAyNSU7bWF4LXdpZHRoOjI1JX0uY29sLTR7LW1zLWZsZXg6MCAwIDMzLjMzMzMzMyU7ZmxleDowIDAgMzMuMzMzMzMzJTttYXgtd2lkdGg6MzMuMzMzMzMzJX0uY29sLTV7LW1zLWZsZXg6MCAwIDQxLjY2NjY2NyU7ZmxleDowIDAgNDEuNjY2NjY3JTttYXgtd2lkdGg6NDEuNjY2NjY3JX0uY29sLTZ7LW1zLWZsZXg6MCAwIDUwJTtmbGV4OjAgMCA1MCU7bWF4LXdpZHRoOjUwJX0uY29sLTd7LW1zLWZsZXg6MCAwIDU4LjMzMzMzMyU7ZmxleDowIDAgNTguMzMzMzMzJTttYXgtd2lkdGg6NTguMzMzMzMzJX0uY29sLTh7LW1zLWZsZXg6MCAwIDY2LjY2NjY2NyU7ZmxleDowIDAgNjYuNjY2NjY3JTttYXgtd2lkdGg6NjYuNjY2NjY3JX0uY29sLTl7LW1zLWZsZXg6MCAwIDc1JTtmbGV4OjAgMCA3NSU7bWF4LXdpZHRoOjc1JX0uY29sLTEwey1tcy1mbGV4OjAgMCA4My4zMzMzMzMlO2ZsZXg6MCAwIDgzLjMzMzMzMyU7bWF4LXdpZHRoOjgzLjMzMzMzMyV9LmNvbC0xMXstbXMtZmxleDowIDAgOTEuNjY2NjY3JTtmbGV4OjAgMCA5MS42NjY2NjclO21heC13aWR0aDo5MS42NjY2NjclfS5jb2wtMTJ7LW1zLWZsZXg6MCAwIDEwMCU7ZmxleDowIDAgMTAwJTttYXgtd2lkdGg6MTAwJX0ub3JkZXItZmlyc3R7LW1zLWZsZXgtb3JkZXI6LTE7b3JkZXI6LTF9Lm9yZGVyLWxhc3R7LW1zLWZsZXgtb3JkZXI6MTM7b3JkZXI6MTN9Lm9yZGVyLTB7LW1zLWZsZXgtb3JkZXI6MDtvcmRlcjowfS5vcmRlci0xey1tcy1mbGV4LW9yZGVyOjE7b3JkZXI6MX0ub3JkZXItMnstbXMtZmxleC1vcmRlcjoyO29yZGVyOjJ9Lm9yZGVyLTN7LW1zLWZsZXgtb3JkZXI6MztvcmRlcjozfS5vcmRlci00ey1tcy1mbGV4LW9yZGVyOjQ7b3JkZXI6NH0ub3JkZXItNXstbXMtZmxleC1vcmRlcjo1O29yZGVyOjV9Lm9yZGVyLTZ7LW1zLWZsZXgtb3JkZXI6NjtvcmRlcjo2fS5vcmRlci03ey1tcy1mbGV4LW9yZGVyOjc7b3JkZXI6N30ub3JkZXItOHstbXMtZmxleC1vcmRlcjo4O29yZGVyOjh9Lm9yZGVyLTl7LW1zLWZsZXgtb3JkZXI6OTtvcmRlcjo5fS5vcmRlci0xMHstbXMtZmxleC1vcmRlcjoxMDtvcmRlcjoxMH0ub3JkZXItMTF7LW1zLWZsZXgtb3JkZXI6MTE7b3JkZXI6MTF9Lm9yZGVyLTEyey1tcy1mbGV4LW9yZGVyOjEyO29yZGVyOjEyfS5vZmZzZXQtMXttYXJnaW4tbGVmdDo4LjMzMzMzMyV9Lm9mZnNldC0ye21hcmdpbi1sZWZ0OjE2LjY2NjY2NyV9Lm9mZnNldC0ze21hcmdpbi1sZWZ0OjI1JX0ub2Zmc2V0LTR7bWFyZ2luLWxlZnQ6MzMuMzMzMzMzJX0ub2Zmc2V0LTV7bWFyZ2luLWxlZnQ6NDEuNjY2NjY3JX0ub2Zmc2V0LTZ7bWFyZ2luLWxlZnQ6NTAlfS5vZmZzZXQtN3ttYXJnaW4tbGVmdDo1OC4zMzMzMzMlfS5vZmZzZXQtOHttYXJnaW4tbGVmdDo2Ni42NjY2NjclfS5vZmZzZXQtOXttYXJnaW4tbGVmdDo3NSV9Lm9mZnNldC0xMHttYXJnaW4tbGVmdDo4My4zMzMzMzMlfS5vZmZzZXQtMTF7bWFyZ2luLWxlZnQ6OTEuNjY2NjY3JX1AbWVkaWEgKG1pbi13aWR0aDo1NzZweCl7LmNvbC1zbXstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTowO2ZsZXgtYmFzaXM6MDstbXMtZmxleC1wb3NpdGl2ZToxO2ZsZXgtZ3JvdzoxO21heC13aWR0aDoxMDAlfS5jb2wtc20tYXV0b3stbXMtZmxleDowIDAgYXV0bztmbGV4OjAgMCBhdXRvO3dpZHRoOmF1dG87bWF4LXdpZHRoOjEwMCV9LmNvbC1zbS0xey1tcy1mbGV4OjAgMCA4LjMzMzMzMyU7ZmxleDowIDAgOC4zMzMzMzMlO21heC13aWR0aDo4LjMzMzMzMyV9LmNvbC1zbS0yey1tcy1mbGV4OjAgMCAxNi42NjY2NjclO2ZsZXg6MCAwIDE2LjY2NjY2NyU7bWF4LXdpZHRoOjE2LjY2NjY2NyV9LmNvbC1zbS0zey1tcy1mbGV4OjAgMCAyNSU7ZmxleDowIDAgMjUlO21heC13aWR0aDoyNSV9LmNvbC1zbS00ey1tcy1mbGV4OjAgMCAzMy4zMzMzMzMlO2ZsZXg6MCAwIDMzLjMzMzMzMyU7bWF4LXdpZHRoOjMzLjMzMzMzMyV9LmNvbC1zbS01ey1tcy1mbGV4OjAgMCA0MS42NjY2NjclO2ZsZXg6MCAwIDQxLjY2NjY2NyU7bWF4LXdpZHRoOjQxLjY2NjY2NyV9LmNvbC1zbS02ey1tcy1mbGV4OjAgMCA1MCU7ZmxleDowIDAgNTAlO21heC13aWR0aDo1MCV9LmNvbC1zbS03ey1tcy1mbGV4OjAgMCA1OC4zMzMzMzMlO2ZsZXg6MCAwIDU4LjMzMzMzMyU7bWF4LXdpZHRoOjU4LjMzMzMzMyV9LmNvbC1zbS04ey1tcy1mbGV4OjAgMCA2Ni42NjY2NjclO2ZsZXg6MCAwIDY2LjY2NjY2NyU7bWF4LXdpZHRoOjY2LjY2NjY2NyV9LmNvbC1zbS05ey1tcy1mbGV4OjAgMCA3NSU7ZmxleDowIDAgNzUlO21heC13aWR0aDo3NSV9LmNvbC1zbS0xMHstbXMtZmxleDowIDAgODMuMzMzMzMzJTtmbGV4OjAgMCA4My4zMzMzMzMlO21heC13aWR0aDo4My4zMzMzMzMlfS5jb2wtc20tMTF7LW1zLWZsZXg6MCAwIDkxLjY2NjY2NyU7ZmxleDowIDAgOTEuNjY2NjY3JTttYXgtd2lkdGg6OTEuNjY2NjY3JX0uY29sLXNtLTEyey1tcy1mbGV4OjAgMCAxMDAlO2ZsZXg6MCAwIDEwMCU7bWF4LXdpZHRoOjEwMCV9Lm9yZGVyLXNtLWZpcnN0ey1tcy1mbGV4LW9yZGVyOi0xO29yZGVyOi0xfS5vcmRlci1zbS1sYXN0ey1tcy1mbGV4LW9yZGVyOjEzO29yZGVyOjEzfS5vcmRlci1zbS0wey1tcy1mbGV4LW9yZGVyOjA7b3JkZXI6MH0ub3JkZXItc20tMXstbXMtZmxleC1vcmRlcjoxO29yZGVyOjF9Lm9yZGVyLXNtLTJ7LW1zLWZsZXgtb3JkZXI6MjtvcmRlcjoyfS5vcmRlci1zbS0zey1tcy1mbGV4LW9yZGVyOjM7b3JkZXI6M30ub3JkZXItc20tNHstbXMtZmxleC1vcmRlcjo0O29yZGVyOjR9Lm9yZGVyLXNtLTV7LW1zLWZsZXgtb3JkZXI6NTtvcmRlcjo1fS5vcmRlci1zbS02ey1tcy1mbGV4LW9yZGVyOjY7b3JkZXI6Nn0ub3JkZXItc20tN3stbXMtZmxleC1vcmRlcjo3O29yZGVyOjd9Lm9yZGVyLXNtLTh7LW1zLWZsZXgtb3JkZXI6ODtvcmRlcjo4fS5vcmRlci1zbS05ey1tcy1mbGV4LW9yZGVyOjk7b3JkZXI6OX0ub3JkZXItc20tMTB7LW1zLWZsZXgtb3JkZXI6MTA7b3JkZXI6MTB9Lm9yZGVyLXNtLTExey1tcy1mbGV4LW9yZGVyOjExO29yZGVyOjExfS5vcmRlci1zbS0xMnstbXMtZmxleC1vcmRlcjoxMjtvcmRlcjoxMn0ub2Zmc2V0LXNtLTB7bWFyZ2luLWxlZnQ6MH0ub2Zmc2V0LXNtLTF7bWFyZ2luLWxlZnQ6OC4zMzMzMzMlfS5vZmZzZXQtc20tMnttYXJnaW4tbGVmdDoxNi42NjY2NjclfS5vZmZzZXQtc20tM3ttYXJnaW4tbGVmdDoyNSV9Lm9mZnNldC1zbS00e21hcmdpbi1sZWZ0OjMzLjMzMzMzMyV9Lm9mZnNldC1zbS01e21hcmdpbi1sZWZ0OjQxLjY2NjY2NyV9Lm9mZnNldC1zbS02e21hcmdpbi1sZWZ0OjUwJX0ub2Zmc2V0LXNtLTd7bWFyZ2luLWxlZnQ6NTguMzMzMzMzJX0ub2Zmc2V0LXNtLTh7bWFyZ2luLWxlZnQ6NjYuNjY2NjY3JX0ub2Zmc2V0LXNtLTl7bWFyZ2luLWxlZnQ6NzUlfS5vZmZzZXQtc20tMTB7bWFyZ2luLWxlZnQ6ODMuMzMzMzMzJX0ub2Zmc2V0LXNtLTExe21hcmdpbi1sZWZ0OjkxLjY2NjY2NyV9fUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsuY29sLW1key1tcy1mbGV4LXByZWZlcnJlZC1zaXplOjA7ZmxleC1iYXNpczowOy1tcy1mbGV4LXBvc2l0aXZlOjE7ZmxleC1ncm93OjE7bWF4LXdpZHRoOjEwMCV9LmNvbC1tZC1hdXRvey1tcy1mbGV4OjAgMCBhdXRvO2ZsZXg6MCAwIGF1dG87d2lkdGg6YXV0bzttYXgtd2lkdGg6MTAwJX0uY29sLW1kLTF7LW1zLWZsZXg6MCAwIDguMzMzMzMzJTtmbGV4OjAgMCA4LjMzMzMzMyU7bWF4LXdpZHRoOjguMzMzMzMzJX0uY29sLW1kLTJ7LW1zLWZsZXg6MCAwIDE2LjY2NjY2NyU7ZmxleDowIDAgMTYuNjY2NjY3JTttYXgtd2lkdGg6MTYuNjY2NjY3JX0uY29sLW1kLTN7LW1zLWZsZXg6MCAwIDI1JTtmbGV4OjAgMCAyNSU7bWF4LXdpZHRoOjI1JX0uY29sLW1kLTR7LW1zLWZsZXg6MCAwIDMzLjMzMzMzMyU7ZmxleDowIDAgMzMuMzMzMzMzJTttYXgtd2lkdGg6MzMuMzMzMzMzJX0uY29sLW1kLTV7LW1zLWZsZXg6MCAwIDQxLjY2NjY2NyU7ZmxleDowIDAgNDEuNjY2NjY3JTttYXgtd2lkdGg6NDEuNjY2NjY3JX0uY29sLW1kLTZ7LW1zLWZsZXg6MCAwIDUwJTtmbGV4OjAgMCA1MCU7bWF4LXdpZHRoOjUwJX0uY29sLW1kLTd7LW1zLWZsZXg6MCAwIDU4LjMzMzMzMyU7ZmxleDowIDAgNTguMzMzMzMzJTttYXgtd2lkdGg6NTguMzMzMzMzJX0uY29sLW1kLTh7LW1zLWZsZXg6MCAwIDY2LjY2NjY2NyU7ZmxleDowIDAgNjYuNjY2NjY3JTttYXgtd2lkdGg6NjYuNjY2NjY3JX0uY29sLW1kLTl7LW1zLWZsZXg6MCAwIDc1JTtmbGV4OjAgMCA3NSU7bWF4LXdpZHRoOjc1JX0uY29sLW1kLTEwey1tcy1mbGV4OjAgMCA4My4zMzMzMzMlO2ZsZXg6MCAwIDgzLjMzMzMzMyU7bWF4LXdpZHRoOjgzLjMzMzMzMyV9LmNvbC1tZC0xMXstbXMtZmxleDowIDAgOTEuNjY2NjY3JTtmbGV4OjAgMCA5MS42NjY2NjclO21heC13aWR0aDo5MS42NjY2NjclfS5jb2wtbWQtMTJ7LW1zLWZsZXg6MCAwIDEwMCU7ZmxleDowIDAgMTAwJTttYXgtd2lkdGg6MTAwJX0ub3JkZXItbWQtZmlyc3R7LW1zLWZsZXgtb3JkZXI6LTE7b3JkZXI6LTF9Lm9yZGVyLW1kLWxhc3R7LW1zLWZsZXgtb3JkZXI6MTM7b3JkZXI6MTN9Lm9yZGVyLW1kLTB7LW1zLWZsZXgtb3JkZXI6MDtvcmRlcjowfS5vcmRlci1tZC0xey1tcy1mbGV4LW9yZGVyOjE7b3JkZXI6MX0ub3JkZXItbWQtMnstbXMtZmxleC1vcmRlcjoyO29yZGVyOjJ9Lm9yZGVyLW1kLTN7LW1zLWZsZXgtb3JkZXI6MztvcmRlcjozfS5vcmRlci1tZC00ey1tcy1mbGV4LW9yZGVyOjQ7b3JkZXI6NH0ub3JkZXItbWQtNXstbXMtZmxleC1vcmRlcjo1O29yZGVyOjV9Lm9yZGVyLW1kLTZ7LW1zLWZsZXgtb3JkZXI6NjtvcmRlcjo2fS5vcmRlci1tZC03ey1tcy1mbGV4LW9yZGVyOjc7b3JkZXI6N30ub3JkZXItbWQtOHstbXMtZmxleC1vcmRlcjo4O29yZGVyOjh9Lm9yZGVyLW1kLTl7LW1zLWZsZXgtb3JkZXI6OTtvcmRlcjo5fS5vcmRlci1tZC0xMHstbXMtZmxleC1vcmRlcjoxMDtvcmRlcjoxMH0ub3JkZXItbWQtMTF7LW1zLWZsZXgtb3JkZXI6MTE7b3JkZXI6MTF9Lm9yZGVyLW1kLTEyey1tcy1mbGV4LW9yZGVyOjEyO29yZGVyOjEyfS5vZmZzZXQtbWQtMHttYXJnaW4tbGVmdDowfS5vZmZzZXQtbWQtMXttYXJnaW4tbGVmdDo4LjMzMzMzMyV9Lm9mZnNldC1tZC0ye21hcmdpbi1sZWZ0OjE2LjY2NjY2NyV9Lm9mZnNldC1tZC0ze21hcmdpbi1sZWZ0OjI1JX0ub2Zmc2V0LW1kLTR7bWFyZ2luLWxlZnQ6MzMuMzMzMzMzJX0ub2Zmc2V0LW1kLTV7bWFyZ2luLWxlZnQ6NDEuNjY2NjY3JX0ub2Zmc2V0LW1kLTZ7bWFyZ2luLWxlZnQ6NTAlfS5vZmZzZXQtbWQtN3ttYXJnaW4tbGVmdDo1OC4zMzMzMzMlfS5vZmZzZXQtbWQtOHttYXJnaW4tbGVmdDo2Ni42NjY2NjclfS5vZmZzZXQtbWQtOXttYXJnaW4tbGVmdDo3NSV9Lm9mZnNldC1tZC0xMHttYXJnaW4tbGVmdDo4My4zMzMzMzMlfS5vZmZzZXQtbWQtMTF7bWFyZ2luLWxlZnQ6OTEuNjY2NjY3JX19QG1lZGlhIChtaW4td2lkdGg6OTkycHgpey5jb2wtbGd7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6MDtmbGV4LWJhc2lzOjA7LW1zLWZsZXgtcG9zaXRpdmU6MTtmbGV4LWdyb3c6MTttYXgtd2lkdGg6MTAwJX0uY29sLWxnLWF1dG97LW1zLWZsZXg6MCAwIGF1dG87ZmxleDowIDAgYXV0bzt3aWR0aDphdXRvO21heC13aWR0aDoxMDAlfS5jb2wtbGctMXstbXMtZmxleDowIDAgOC4zMzMzMzMlO2ZsZXg6MCAwIDguMzMzMzMzJTttYXgtd2lkdGg6OC4zMzMzMzMlfS5jb2wtbGctMnstbXMtZmxleDowIDAgMTYuNjY2NjY3JTtmbGV4OjAgMCAxNi42NjY2NjclO21heC13aWR0aDoxNi42NjY2NjclfS5jb2wtbGctM3stbXMtZmxleDowIDAgMjUlO2ZsZXg6MCAwIDI1JTttYXgtd2lkdGg6MjUlfS5jb2wtbGctNHstbXMtZmxleDowIDAgMzMuMzMzMzMzJTtmbGV4OjAgMCAzMy4zMzMzMzMlO21heC13aWR0aDozMy4zMzMzMzMlfS5jb2wtbGctNXstbXMtZmxleDowIDAgNDEuNjY2NjY3JTtmbGV4OjAgMCA0MS42NjY2NjclO21heC13aWR0aDo0MS42NjY2NjclfS5jb2wtbGctNnstbXMtZmxleDowIDAgNTAlO2ZsZXg6MCAwIDUwJTttYXgtd2lkdGg6NTAlfS5jb2wtbGctN3stbXMtZmxleDowIDAgNTguMzMzMzMzJTtmbGV4OjAgMCA1OC4zMzMzMzMlO21heC13aWR0aDo1OC4zMzMzMzMlfS5jb2wtbGctOHstbXMtZmxleDowIDAgNjYuNjY2NjY3JTtmbGV4OjAgMCA2Ni42NjY2NjclO21heC13aWR0aDo2Ni42NjY2NjclfS5jb2wtbGctOXstbXMtZmxleDowIDAgNzUlO2ZsZXg6MCAwIDc1JTttYXgtd2lkdGg6NzUlfS5jb2wtbGctMTB7LW1zLWZsZXg6MCAwIDgzLjMzMzMzMyU7ZmxleDowIDAgODMuMzMzMzMzJTttYXgtd2lkdGg6ODMuMzMzMzMzJX0uY29sLWxnLTExey1tcy1mbGV4OjAgMCA5MS42NjY2NjclO2ZsZXg6MCAwIDkxLjY2NjY2NyU7bWF4LXdpZHRoOjkxLjY2NjY2NyV9LmNvbC1sZy0xMnstbXMtZmxleDowIDAgMTAwJTtmbGV4OjAgMCAxMDAlO21heC13aWR0aDoxMDAlfS5vcmRlci1sZy1maXJzdHstbXMtZmxleC1vcmRlcjotMTtvcmRlcjotMX0ub3JkZXItbGctbGFzdHstbXMtZmxleC1vcmRlcjoxMztvcmRlcjoxM30ub3JkZXItbGctMHstbXMtZmxleC1vcmRlcjowO29yZGVyOjB9Lm9yZGVyLWxnLTF7LW1zLWZsZXgtb3JkZXI6MTtvcmRlcjoxfS5vcmRlci1sZy0yey1tcy1mbGV4LW9yZGVyOjI7b3JkZXI6Mn0ub3JkZXItbGctM3stbXMtZmxleC1vcmRlcjozO29yZGVyOjN9Lm9yZGVyLWxnLTR7LW1zLWZsZXgtb3JkZXI6NDtvcmRlcjo0fS5vcmRlci1sZy01ey1tcy1mbGV4LW9yZGVyOjU7b3JkZXI6NX0ub3JkZXItbGctNnstbXMtZmxleC1vcmRlcjo2O29yZGVyOjZ9Lm9yZGVyLWxnLTd7LW1zLWZsZXgtb3JkZXI6NztvcmRlcjo3fS5vcmRlci1sZy04ey1tcy1mbGV4LW9yZGVyOjg7b3JkZXI6OH0ub3JkZXItbGctOXstbXMtZmxleC1vcmRlcjo5O29yZGVyOjl9Lm9yZGVyLWxnLTEwey1tcy1mbGV4LW9yZGVyOjEwO29yZGVyOjEwfS5vcmRlci1sZy0xMXstbXMtZmxleC1vcmRlcjoxMTtvcmRlcjoxMX0ub3JkZXItbGctMTJ7LW1zLWZsZXgtb3JkZXI6MTI7b3JkZXI6MTJ9Lm9mZnNldC1sZy0we21hcmdpbi1sZWZ0OjB9Lm9mZnNldC1sZy0xe21hcmdpbi1sZWZ0OjguMzMzMzMzJX0ub2Zmc2V0LWxnLTJ7bWFyZ2luLWxlZnQ6MTYuNjY2NjY3JX0ub2Zmc2V0LWxnLTN7bWFyZ2luLWxlZnQ6MjUlfS5vZmZzZXQtbGctNHttYXJnaW4tbGVmdDozMy4zMzMzMzMlfS5vZmZzZXQtbGctNXttYXJnaW4tbGVmdDo0MS42NjY2NjclfS5vZmZzZXQtbGctNnttYXJnaW4tbGVmdDo1MCV9Lm9mZnNldC1sZy03e21hcmdpbi1sZWZ0OjU4LjMzMzMzMyV9Lm9mZnNldC1sZy04e21hcmdpbi1sZWZ0OjY2LjY2NjY2NyV9Lm9mZnNldC1sZy05e21hcmdpbi1sZWZ0Ojc1JX0ub2Zmc2V0LWxnLTEwe21hcmdpbi1sZWZ0OjgzLjMzMzMzMyV9Lm9mZnNldC1sZy0xMXttYXJnaW4tbGVmdDo5MS42NjY2NjclfX1AbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpey5jb2wteGx7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6MDtmbGV4LWJhc2lzOjA7LW1zLWZsZXgtcG9zaXRpdmU6MTtmbGV4LWdyb3c6MTttYXgtd2lkdGg6MTAwJX0uY29sLXhsLWF1dG97LW1zLWZsZXg6MCAwIGF1dG87ZmxleDowIDAgYXV0bzt3aWR0aDphdXRvO21heC13aWR0aDoxMDAlfS5jb2wteGwtMXstbXMtZmxleDowIDAgOC4zMzMzMzMlO2ZsZXg6MCAwIDguMzMzMzMzJTttYXgtd2lkdGg6OC4zMzMzMzMlfS5jb2wteGwtMnstbXMtZmxleDowIDAgMTYuNjY2NjY3JTtmbGV4OjAgMCAxNi42NjY2NjclO21heC13aWR0aDoxNi42NjY2NjclfS5jb2wteGwtM3stbXMtZmxleDowIDAgMjUlO2ZsZXg6MCAwIDI1JTttYXgtd2lkdGg6MjUlfS5jb2wteGwtNHstbXMtZmxleDowIDAgMzMuMzMzMzMzJTtmbGV4OjAgMCAzMy4zMzMzMzMlO21heC13aWR0aDozMy4zMzMzMzMlfS5jb2wteGwtNXstbXMtZmxleDowIDAgNDEuNjY2NjY3JTtmbGV4OjAgMCA0MS42NjY2NjclO21heC13aWR0aDo0MS42NjY2NjclfS5jb2wteGwtNnstbXMtZmxleDowIDAgNTAlO2ZsZXg6MCAwIDUwJTttYXgtd2lkdGg6NTAlfS5jb2wteGwtN3stbXMtZmxleDowIDAgNTguMzMzMzMzJTtmbGV4OjAgMCA1OC4zMzMzMzMlO21heC13aWR0aDo1OC4zMzMzMzMlfS5jb2wteGwtOHstbXMtZmxleDowIDAgNjYuNjY2NjY3JTtmbGV4OjAgMCA2Ni42NjY2NjclO21heC13aWR0aDo2Ni42NjY2NjclfS5jb2wteGwtOXstbXMtZmxleDowIDAgNzUlO2ZsZXg6MCAwIDc1JTttYXgtd2lkdGg6NzUlfS5jb2wteGwtMTB7LW1zLWZsZXg6MCAwIDgzLjMzMzMzMyU7ZmxleDowIDAgODMuMzMzMzMzJTttYXgtd2lkdGg6ODMuMzMzMzMzJX0uY29sLXhsLTExey1tcy1mbGV4OjAgMCA5MS42NjY2NjclO2ZsZXg6MCAwIDkxLjY2NjY2NyU7bWF4LXdpZHRoOjkxLjY2NjY2NyV9LmNvbC14bC0xMnstbXMtZmxleDowIDAgMTAwJTtmbGV4OjAgMCAxMDAlO21heC13aWR0aDoxMDAlfS5vcmRlci14bC1maXJzdHstbXMtZmxleC1vcmRlcjotMTtvcmRlcjotMX0ub3JkZXIteGwtbGFzdHstbXMtZmxleC1vcmRlcjoxMztvcmRlcjoxM30ub3JkZXIteGwtMHstbXMtZmxleC1vcmRlcjowO29yZGVyOjB9Lm9yZGVyLXhsLTF7LW1zLWZsZXgtb3JkZXI6MTtvcmRlcjoxfS5vcmRlci14bC0yey1tcy1mbGV4LW9yZGVyOjI7b3JkZXI6Mn0ub3JkZXIteGwtM3stbXMtZmxleC1vcmRlcjozO29yZGVyOjN9Lm9yZGVyLXhsLTR7LW1zLWZsZXgtb3JkZXI6NDtvcmRlcjo0fS5vcmRlci14bC01ey1tcy1mbGV4LW9yZGVyOjU7b3JkZXI6NX0ub3JkZXIteGwtNnstbXMtZmxleC1vcmRlcjo2O29yZGVyOjZ9Lm9yZGVyLXhsLTd7LW1zLWZsZXgtb3JkZXI6NztvcmRlcjo3fS5vcmRlci14bC04ey1tcy1mbGV4LW9yZGVyOjg7b3JkZXI6OH0ub3JkZXIteGwtOXstbXMtZmxleC1vcmRlcjo5O29yZGVyOjl9Lm9yZGVyLXhsLTEwey1tcy1mbGV4LW9yZGVyOjEwO29yZGVyOjEwfS5vcmRlci14bC0xMXstbXMtZmxleC1vcmRlcjoxMTtvcmRlcjoxMX0ub3JkZXIteGwtMTJ7LW1zLWZsZXgtb3JkZXI6MTI7b3JkZXI6MTJ9Lm9mZnNldC14bC0we21hcmdpbi1sZWZ0OjB9Lm9mZnNldC14bC0xe21hcmdpbi1sZWZ0OjguMzMzMzMzJX0ub2Zmc2V0LXhsLTJ7bWFyZ2luLWxlZnQ6MTYuNjY2NjY3JX0ub2Zmc2V0LXhsLTN7bWFyZ2luLWxlZnQ6MjUlfS5vZmZzZXQteGwtNHttYXJnaW4tbGVmdDozMy4zMzMzMzMlfS5vZmZzZXQteGwtNXttYXJnaW4tbGVmdDo0MS42NjY2NjclfS5vZmZzZXQteGwtNnttYXJnaW4tbGVmdDo1MCV9Lm9mZnNldC14bC03e21hcmdpbi1sZWZ0OjU4LjMzMzMzMyV9Lm9mZnNldC14bC04e21hcmdpbi1sZWZ0OjY2LjY2NjY2NyV9Lm9mZnNldC14bC05e21hcmdpbi1sZWZ0Ojc1JX0ub2Zmc2V0LXhsLTEwe21hcmdpbi1sZWZ0OjgzLjMzMzMzMyV9Lm9mZnNldC14bC0xMXttYXJnaW4tbGVmdDo5MS42NjY2NjclfX0udGFibGV7d2lkdGg6MTAwJTttYXJnaW4tYm90dG9tOjFyZW07Y29sb3I6IzIxMjUyOX0udGFibGUgdGQsLnRhYmxlIHRoe3BhZGRpbmc6Ljc1cmVtO3ZlcnRpY2FsLWFsaWduOnRvcDtib3JkZXItdG9wOjFweCBzb2xpZCAjZGVlMmU2fS50YWJsZSB0aGVhZCB0aHt2ZXJ0aWNhbC1hbGlnbjpib3R0b207Ym9yZGVyLWJvdHRvbToycHggc29saWQgI2RlZTJlNn0udGFibGUgdGJvZHkrdGJvZHl7Ym9yZGVyLXRvcDoycHggc29saWQgI2RlZTJlNn0udGFibGUtc20gdGQsLnRhYmxlLXNtIHRoe3BhZGRpbmc6LjNyZW19LnRhYmxlLWJvcmRlcmVke2JvcmRlcjoxcHggc29saWQgI2RlZTJlNn0udGFibGUtYm9yZGVyZWQgdGQsLnRhYmxlLWJvcmRlcmVkIHRoe2JvcmRlcjoxcHggc29saWQgI2RlZTJlNn0udGFibGUtYm9yZGVyZWQgdGhlYWQgdGQsLnRhYmxlLWJvcmRlcmVkIHRoZWFkIHRoe2JvcmRlci1ib3R0b20td2lkdGg6MnB4fS50YWJsZS1ib3JkZXJsZXNzIHRib2R5K3Rib2R5LC50YWJsZS1ib3JkZXJsZXNzIHRkLC50YWJsZS1ib3JkZXJsZXNzIHRoLC50YWJsZS1ib3JkZXJsZXNzIHRoZWFkIHRoe2JvcmRlcjowfS50YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCl7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4wNSl9LnRhYmxlLWhvdmVyIHRib2R5IHRyOmhvdmVye2NvbG9yOiMyMTI1Mjk7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4wNzUpfS50YWJsZS1wcmltYXJ5LC50YWJsZS1wcmltYXJ5PnRkLC50YWJsZS1wcmltYXJ5PnRoe2JhY2tncm91bmQtY29sb3I6I2I4ZGFmZn0udGFibGUtcHJpbWFyeSB0Ym9keSt0Ym9keSwudGFibGUtcHJpbWFyeSB0ZCwudGFibGUtcHJpbWFyeSB0aCwudGFibGUtcHJpbWFyeSB0aGVhZCB0aHtib3JkZXItY29sb3I6IzdhYmFmZn0udGFibGUtaG92ZXIgLnRhYmxlLXByaW1hcnk6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojOWZjZGZmfS50YWJsZS1ob3ZlciAudGFibGUtcHJpbWFyeTpob3Zlcj50ZCwudGFibGUtaG92ZXIgLnRhYmxlLXByaW1hcnk6aG92ZXI+dGh7YmFja2dyb3VuZC1jb2xvcjojOWZjZGZmfS50YWJsZS1zZWNvbmRhcnksLnRhYmxlLXNlY29uZGFyeT50ZCwudGFibGUtc2Vjb25kYXJ5PnRoe2JhY2tncm91bmQtY29sb3I6I2Q2ZDhkYn0udGFibGUtc2Vjb25kYXJ5IHRib2R5K3Rib2R5LC50YWJsZS1zZWNvbmRhcnkgdGQsLnRhYmxlLXNlY29uZGFyeSB0aCwudGFibGUtc2Vjb25kYXJ5IHRoZWFkIHRoe2JvcmRlci1jb2xvcjojYjNiN2JifS50YWJsZS1ob3ZlciAudGFibGUtc2Vjb25kYXJ5OmhvdmVye2JhY2tncm91bmQtY29sb3I6I2M4Y2JjZn0udGFibGUtaG92ZXIgLnRhYmxlLXNlY29uZGFyeTpob3Zlcj50ZCwudGFibGUtaG92ZXIgLnRhYmxlLXNlY29uZGFyeTpob3Zlcj50aHtiYWNrZ3JvdW5kLWNvbG9yOiNjOGNiY2Z9LnRhYmxlLXN1Y2Nlc3MsLnRhYmxlLXN1Y2Nlc3M+dGQsLnRhYmxlLXN1Y2Nlc3M+dGh7YmFja2dyb3VuZC1jb2xvcjojYzNlNmNifS50YWJsZS1zdWNjZXNzIHRib2R5K3Rib2R5LC50YWJsZS1zdWNjZXNzIHRkLC50YWJsZS1zdWNjZXNzIHRoLC50YWJsZS1zdWNjZXNzIHRoZWFkIHRoe2JvcmRlci1jb2xvcjojOGZkMTllfS50YWJsZS1ob3ZlciAudGFibGUtc3VjY2Vzczpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNiMWRmYmJ9LnRhYmxlLWhvdmVyIC50YWJsZS1zdWNjZXNzOmhvdmVyPnRkLC50YWJsZS1ob3ZlciAudGFibGUtc3VjY2Vzczpob3Zlcj50aHtiYWNrZ3JvdW5kLWNvbG9yOiNiMWRmYmJ9LnRhYmxlLWluZm8sLnRhYmxlLWluZm8+dGQsLnRhYmxlLWluZm8+dGh7YmFja2dyb3VuZC1jb2xvcjojYmVlNWVifS50YWJsZS1pbmZvIHRib2R5K3Rib2R5LC50YWJsZS1pbmZvIHRkLC50YWJsZS1pbmZvIHRoLC50YWJsZS1pbmZvIHRoZWFkIHRoe2JvcmRlci1jb2xvcjojODZjZmRhfS50YWJsZS1ob3ZlciAudGFibGUtaW5mbzpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNhYmRkZTV9LnRhYmxlLWhvdmVyIC50YWJsZS1pbmZvOmhvdmVyPnRkLC50YWJsZS1ob3ZlciAudGFibGUtaW5mbzpob3Zlcj50aHtiYWNrZ3JvdW5kLWNvbG9yOiNhYmRkZTV9LnRhYmxlLXdhcm5pbmcsLnRhYmxlLXdhcm5pbmc+dGQsLnRhYmxlLXdhcm5pbmc+dGh7YmFja2dyb3VuZC1jb2xvcjojZmZlZWJhfS50YWJsZS13YXJuaW5nIHRib2R5K3Rib2R5LC50YWJsZS13YXJuaW5nIHRkLC50YWJsZS13YXJuaW5nIHRoLC50YWJsZS13YXJuaW5nIHRoZWFkIHRoe2JvcmRlci1jb2xvcjojZmZkZjdlfS50YWJsZS1ob3ZlciAudGFibGUtd2FybmluZzpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmU4YTF9LnRhYmxlLWhvdmVyIC50YWJsZS13YXJuaW5nOmhvdmVyPnRkLC50YWJsZS1ob3ZlciAudGFibGUtd2FybmluZzpob3Zlcj50aHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmU4YTF9LnRhYmxlLWRhbmdlciwudGFibGUtZGFuZ2VyPnRkLC50YWJsZS1kYW5nZXI+dGh7YmFja2dyb3VuZC1jb2xvcjojZjVjNmNifS50YWJsZS1kYW5nZXIgdGJvZHkrdGJvZHksLnRhYmxlLWRhbmdlciB0ZCwudGFibGUtZGFuZ2VyIHRoLC50YWJsZS1kYW5nZXIgdGhlYWQgdGh7Ym9yZGVyLWNvbG9yOiNlZDk2OWV9LnRhYmxlLWhvdmVyIC50YWJsZS1kYW5nZXI6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZjFiMGI3fS50YWJsZS1ob3ZlciAudGFibGUtZGFuZ2VyOmhvdmVyPnRkLC50YWJsZS1ob3ZlciAudGFibGUtZGFuZ2VyOmhvdmVyPnRoe2JhY2tncm91bmQtY29sb3I6I2YxYjBiN30udGFibGUtbGlnaHQsLnRhYmxlLWxpZ2h0PnRkLC50YWJsZS1saWdodD50aHtiYWNrZ3JvdW5kLWNvbG9yOiNmZGZkZmV9LnRhYmxlLWxpZ2h0IHRib2R5K3Rib2R5LC50YWJsZS1saWdodCB0ZCwudGFibGUtbGlnaHQgdGgsLnRhYmxlLWxpZ2h0IHRoZWFkIHRoe2JvcmRlci1jb2xvcjojZmJmY2ZjfS50YWJsZS1ob3ZlciAudGFibGUtbGlnaHQ6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojZWNlY2Y2fS50YWJsZS1ob3ZlciAudGFibGUtbGlnaHQ6aG92ZXI+dGQsLnRhYmxlLWhvdmVyIC50YWJsZS1saWdodDpob3Zlcj50aHtiYWNrZ3JvdW5kLWNvbG9yOiNlY2VjZjZ9LnRhYmxlLWRhcmssLnRhYmxlLWRhcms+dGQsLnRhYmxlLWRhcms+dGh7YmFja2dyb3VuZC1jb2xvcjojYzZjOGNhfS50YWJsZS1kYXJrIHRib2R5K3Rib2R5LC50YWJsZS1kYXJrIHRkLC50YWJsZS1kYXJrIHRoLC50YWJsZS1kYXJrIHRoZWFkIHRoe2JvcmRlci1jb2xvcjojOTU5OTljfS50YWJsZS1ob3ZlciAudGFibGUtZGFyazpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNiOWJiYmV9LnRhYmxlLWhvdmVyIC50YWJsZS1kYXJrOmhvdmVyPnRkLC50YWJsZS1ob3ZlciAudGFibGUtZGFyazpob3Zlcj50aHtiYWNrZ3JvdW5kLWNvbG9yOiNiOWJiYmV9LnRhYmxlLWFjdGl2ZSwudGFibGUtYWN0aXZlPnRkLC50YWJsZS1hY3RpdmU+dGh7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC4wNzUpfS50YWJsZS1ob3ZlciAudGFibGUtYWN0aXZlOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMDc1KX0udGFibGUtaG92ZXIgLnRhYmxlLWFjdGl2ZTpob3Zlcj50ZCwudGFibGUtaG92ZXIgLnRhYmxlLWFjdGl2ZTpob3Zlcj50aHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjA3NSl9LnRhYmxlIC50aGVhZC1kYXJrIHRoe2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMzQzYTQwO2JvcmRlci1jb2xvcjojNDU0ZDU1fS50YWJsZSAudGhlYWQtbGlnaHQgdGh7Y29sb3I6IzQ5NTA1NztiYWNrZ3JvdW5kLWNvbG9yOiNlOWVjZWY7Ym9yZGVyLWNvbG9yOiNkZWUyZTZ9LnRhYmxlLWRhcmt7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMzNDNhNDB9LnRhYmxlLWRhcmsgdGQsLnRhYmxlLWRhcmsgdGgsLnRhYmxlLWRhcmsgdGhlYWQgdGh7Ym9yZGVyLWNvbG9yOiM0NTRkNTV9LnRhYmxlLWRhcmsudGFibGUtYm9yZGVyZWR7Ym9yZGVyOjB9LnRhYmxlLWRhcmsudGFibGUtc3RyaXBlZCB0Ym9keSB0cjpudGgtb2YtdHlwZShvZGQpe2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuMDUpfS50YWJsZS1kYXJrLnRhYmxlLWhvdmVyIHRib2R5IHRyOmhvdmVye2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC4wNzUpfUBtZWRpYSAobWF4LXdpZHRoOjU3NS45OHB4KXsudGFibGUtcmVzcG9uc2l2ZS1zbXtkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMCU7b3ZlcmZsb3cteDphdXRvOy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNofS50YWJsZS1yZXNwb25zaXZlLXNtPi50YWJsZS1ib3JkZXJlZHtib3JkZXI6MH19QG1lZGlhIChtYXgtd2lkdGg6NzY3Ljk4cHgpey50YWJsZS1yZXNwb25zaXZlLW1ke2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJTtvdmVyZmxvdy14OmF1dG87LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2h9LnRhYmxlLXJlc3BvbnNpdmUtbWQ+LnRhYmxlLWJvcmRlcmVke2JvcmRlcjowfX1AbWVkaWEgKG1heC13aWR0aDo5OTEuOThweCl7LnRhYmxlLXJlc3BvbnNpdmUtbGd7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO292ZXJmbG93LXg6YXV0bzstd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzp0b3VjaH0udGFibGUtcmVzcG9uc2l2ZS1sZz4udGFibGUtYm9yZGVyZWR7Ym9yZGVyOjB9fUBtZWRpYSAobWF4LXdpZHRoOjExOTkuOThweCl7LnRhYmxlLXJlc3BvbnNpdmUteGx7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO292ZXJmbG93LXg6YXV0bzstd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzp0b3VjaH0udGFibGUtcmVzcG9uc2l2ZS14bD4udGFibGUtYm9yZGVyZWR7Ym9yZGVyOjB9fS50YWJsZS1yZXNwb25zaXZle2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJTtvdmVyZmxvdy14OmF1dG87LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2h9LnRhYmxlLXJlc3BvbnNpdmU+LnRhYmxlLWJvcmRlcmVke2JvcmRlcjowfS5mb3JtLWNvbnRyb2x7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO2hlaWdodDpjYWxjKDEuNWVtICsgLjc1cmVtICsgMnB4KTtwYWRkaW5nOi4zNzVyZW0gLjc1cmVtO2ZvbnQtc2l6ZToxcmVtO2ZvbnQtd2VpZ2h0OjQwMDtsaW5lLWhlaWdodDoxLjU7Y29sb3I6IzQ5NTA1NztiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jbGlwOnBhZGRpbmctYm94O2JvcmRlcjoxcHggc29saWQgI2NlZDRkYTtib3JkZXItcmFkaXVzOi4yNXJlbTt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dH1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsuZm9ybS1jb250cm9se3RyYW5zaXRpb246bm9uZX19LmZvcm0tY29udHJvbDo6LW1zLWV4cGFuZHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjowfS5mb3JtLWNvbnRyb2w6Zm9jdXN7Y29sb3I6IzQ5NTA1NztiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyLWNvbG9yOiM4MGJkZmY7b3V0bGluZTowO2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgwLDEyMywyNTUsLjI1KX0uZm9ybS1jb250cm9sOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOiM2Yzc1N2Q7b3BhY2l0eToxfS5mb3JtLWNvbnRyb2w6Oi1tb3otcGxhY2Vob2xkZXJ7Y29sb3I6IzZjNzU3ZDtvcGFjaXR5OjF9LmZvcm0tY29udHJvbDotbXMtaW5wdXQtcGxhY2Vob2xkZXJ7Y29sb3I6IzZjNzU3ZDtvcGFjaXR5OjF9LmZvcm0tY29udHJvbDo6LW1zLWlucHV0LXBsYWNlaG9sZGVye2NvbG9yOiM2Yzc1N2Q7b3BhY2l0eToxfS5mb3JtLWNvbnRyb2w6OnBsYWNlaG9sZGVye2NvbG9yOiM2Yzc1N2Q7b3BhY2l0eToxfS5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQsLmZvcm0tY29udHJvbFtyZWFkb25seV17YmFja2dyb3VuZC1jb2xvcjojZTllY2VmO29wYWNpdHk6MX1zZWxlY3QuZm9ybS1jb250cm9sOmZvY3VzOjotbXMtdmFsdWV7Y29sb3I6IzQ5NTA1NztiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9LmZvcm0tY29udHJvbC1maWxlLC5mb3JtLWNvbnRyb2wtcmFuZ2V7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlfS5jb2wtZm9ybS1sYWJlbHtwYWRkaW5nLXRvcDpjYWxjKC4zNzVyZW0gKyAxcHgpO3BhZGRpbmctYm90dG9tOmNhbGMoLjM3NXJlbSArIDFweCk7bWFyZ2luLWJvdHRvbTowO2ZvbnQtc2l6ZTppbmhlcml0O2xpbmUtaGVpZ2h0OjEuNX0uY29sLWZvcm0tbGFiZWwtbGd7cGFkZGluZy10b3A6Y2FsYyguNXJlbSArIDFweCk7cGFkZGluZy1ib3R0b206Y2FsYyguNXJlbSArIDFweCk7Zm9udC1zaXplOjEuMjVyZW07bGluZS1oZWlnaHQ6MS41fS5jb2wtZm9ybS1sYWJlbC1zbXtwYWRkaW5nLXRvcDpjYWxjKC4yNXJlbSArIDFweCk7cGFkZGluZy1ib3R0b206Y2FsYyguMjVyZW0gKyAxcHgpO2ZvbnQtc2l6ZTouODc1cmVtO2xpbmUtaGVpZ2h0OjEuNX0uZm9ybS1jb250cm9sLXBsYWludGV4dHtkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMCU7cGFkZGluZy10b3A6LjM3NXJlbTtwYWRkaW5nLWJvdHRvbTouMzc1cmVtO21hcmdpbi1ib3R0b206MDtsaW5lLWhlaWdodDoxLjU7Y29sb3I6IzIxMjUyOTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjpzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItd2lkdGg6MXB4IDB9LmZvcm0tY29udHJvbC1wbGFpbnRleHQuZm9ybS1jb250cm9sLWxnLC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LmZvcm0tY29udHJvbC1zbXtwYWRkaW5nLXJpZ2h0OjA7cGFkZGluZy1sZWZ0OjB9LmZvcm0tY29udHJvbC1zbXtoZWlnaHQ6Y2FsYygxLjVlbSArIC41cmVtICsgMnB4KTtwYWRkaW5nOi4yNXJlbSAuNXJlbTtmb250LXNpemU6Ljg3NXJlbTtsaW5lLWhlaWdodDoxLjU7Ym9yZGVyLXJhZGl1czouMnJlbX0uZm9ybS1jb250cm9sLWxne2hlaWdodDpjYWxjKDEuNWVtICsgMXJlbSArIDJweCk7cGFkZGluZzouNXJlbSAxcmVtO2ZvbnQtc2l6ZToxLjI1cmVtO2xpbmUtaGVpZ2h0OjEuNTtib3JkZXItcmFkaXVzOi4zcmVtfXNlbGVjdC5mb3JtLWNvbnRyb2xbbXVsdGlwbGVdLHNlbGVjdC5mb3JtLWNvbnRyb2xbc2l6ZV17aGVpZ2h0OmF1dG99dGV4dGFyZWEuZm9ybS1jb250cm9se2hlaWdodDphdXRvfS5mb3JtLWdyb3Vwe21hcmdpbi1ib3R0b206MXJlbX0uZm9ybS10ZXh0e2Rpc3BsYXk6YmxvY2s7bWFyZ2luLXRvcDouMjVyZW19LmZvcm0tcm93e2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LXdyYXA6d3JhcDtmbGV4LXdyYXA6d3JhcDttYXJnaW4tcmlnaHQ6LTVweDttYXJnaW4tbGVmdDotNXB4fS5mb3JtLXJvdz4uY29sLC5mb3JtLXJvdz5bY2xhc3MqPWNvbC1de3BhZGRpbmctcmlnaHQ6NXB4O3BhZGRpbmctbGVmdDo1cHh9LmZvcm0tY2hlY2t7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpibG9jaztwYWRkaW5nLWxlZnQ6MS4yNXJlbX0uZm9ybS1jaGVjay1pbnB1dHtwb3NpdGlvbjphYnNvbHV0ZTttYXJnaW4tdG9wOi4zcmVtO21hcmdpbi1sZWZ0Oi0xLjI1cmVtfS5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVkfi5mb3JtLWNoZWNrLWxhYmVse2NvbG9yOiM2Yzc1N2R9LmZvcm0tY2hlY2stbGFiZWx7bWFyZ2luLWJvdHRvbTowfS5mb3JtLWNoZWNrLWlubGluZXtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveDtkaXNwbGF5OmlubGluZS1mbGV4Oy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7cGFkZGluZy1sZWZ0OjA7bWFyZ2luLXJpZ2h0Oi43NXJlbX0uZm9ybS1jaGVjay1pbmxpbmUgLmZvcm0tY2hlY2staW5wdXR7cG9zaXRpb246c3RhdGljO21hcmdpbi10b3A6MDttYXJnaW4tcmlnaHQ6LjMxMjVyZW07bWFyZ2luLWxlZnQ6MH0udmFsaWQtZmVlZGJhY2t7ZGlzcGxheTpub25lO3dpZHRoOjEwMCU7bWFyZ2luLXRvcDouMjVyZW07Zm9udC1zaXplOjgwJTtjb2xvcjojMjhhNzQ1fS52YWxpZC10b29sdGlwe3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxMDAlO3otaW5kZXg6NTtkaXNwbGF5Om5vbmU7bWF4LXdpZHRoOjEwMCU7cGFkZGluZzouMjVyZW0gLjVyZW07bWFyZ2luLXRvcDouMXJlbTtmb250LXNpemU6Ljg3NXJlbTtsaW5lLWhlaWdodDoxLjU7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoNDAsMTY3LDY5LC45KTtib3JkZXItcmFkaXVzOi4yNXJlbX0uZm9ybS1jb250cm9sLmlzLXZhbGlkLC53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWR7Ym9yZGVyLWNvbG9yOiMyOGE3NDU7cGFkZGluZy1yaWdodDpjYWxjKDEuNWVtICsgLjc1cmVtKTtiYWNrZ3JvdW5kLWltYWdlOnVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPSclMjMyOGE3NDUnIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzZSUzYy9zdmclM2UiKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXIgcmlnaHQgY2FsYyguMzc1ZW0gKyAuMTg3NXJlbSk7YmFja2dyb3VuZC1zaXplOmNhbGMoLjc1ZW0gKyAuMzc1cmVtKSBjYWxjKC43NWVtICsgLjM3NXJlbSl9LmZvcm0tY29udHJvbC5pcy12YWxpZDpmb2N1cywud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOnZhbGlkOmZvY3Vze2JvcmRlci1jb2xvcjojMjhhNzQ1O2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSg0MCwxNjcsNjksLjI1KX0uZm9ybS1jb250cm9sLmlzLXZhbGlkfi52YWxpZC1mZWVkYmFjaywuZm9ybS1jb250cm9sLmlzLXZhbGlkfi52YWxpZC10b29sdGlwLC53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWR+LnZhbGlkLWZlZWRiYWNrLC53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWR+LnZhbGlkLXRvb2x0aXB7ZGlzcGxheTpibG9ja30ud2FzLXZhbGlkYXRlZCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2w6dmFsaWQsdGV4dGFyZWEuZm9ybS1jb250cm9sLmlzLXZhbGlke3BhZGRpbmctcmlnaHQ6Y2FsYygxLjVlbSArIC43NXJlbSk7YmFja2dyb3VuZC1wb3NpdGlvbjp0b3AgY2FsYyguMzc1ZW0gKyAuMTg3NXJlbSkgcmlnaHQgY2FsYyguMzc1ZW0gKyAuMTg3NXJlbSl9LmN1c3RvbS1zZWxlY3QuaXMtdmFsaWQsLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1zZWxlY3Q6dmFsaWR7Ym9yZGVyLWNvbG9yOiMyOGE3NDU7cGFkZGluZy1yaWdodDpjYWxjKCgxZW0gKyAuNzVyZW0pICogMyAvIDQgKyAxLjc1cmVtKTtiYWNrZ3JvdW5kOnVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA0IDUnJTNlJTNjcGF0aCBmaWxsPSclMjMzNDNhNDAnIGQ9J00yIDBMMCAyaDR6bTAgNUwwIDNoNHonLyUzZSUzYy9zdmclM2UiKSBuby1yZXBlYXQgcmlnaHQgLjc1cmVtIGNlbnRlci84cHggMTBweCx1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZmlsbD0nJTIzMjhhNzQ1JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8lM2UlM2Mvc3ZnJTNlIikgI2ZmZiBuby1yZXBlYXQgY2VudGVyIHJpZ2h0IDEuNzVyZW0vY2FsYyguNzVlbSArIC4zNzVyZW0pIGNhbGMoLjc1ZW0gKyAuMzc1cmVtKX0uY3VzdG9tLXNlbGVjdC5pcy12YWxpZDpmb2N1cywud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXNlbGVjdDp2YWxpZDpmb2N1c3tib3JkZXItY29sb3I6IzI4YTc0NTtib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoNDAsMTY3LDY5LC4yNSl9LmN1c3RvbS1zZWxlY3QuaXMtdmFsaWR+LnZhbGlkLWZlZWRiYWNrLC5jdXN0b20tc2VsZWN0LmlzLXZhbGlkfi52YWxpZC10b29sdGlwLC53YXMtdmFsaWRhdGVkIC5jdXN0b20tc2VsZWN0OnZhbGlkfi52YWxpZC1mZWVkYmFjaywud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXNlbGVjdDp2YWxpZH4udmFsaWQtdG9vbHRpcHtkaXNwbGF5OmJsb2NrfS5mb3JtLWNvbnRyb2wtZmlsZS5pcy12YWxpZH4udmFsaWQtZmVlZGJhY2ssLmZvcm0tY29udHJvbC1maWxlLmlzLXZhbGlkfi52YWxpZC10b29sdGlwLC53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2wtZmlsZTp2YWxpZH4udmFsaWQtZmVlZGJhY2ssLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbC1maWxlOnZhbGlkfi52YWxpZC10b29sdGlwe2Rpc3BsYXk6YmxvY2t9LmZvcm0tY2hlY2staW5wdXQuaXMtdmFsaWR+LmZvcm0tY2hlY2stbGFiZWwsLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWR+LmZvcm0tY2hlY2stbGFiZWx7Y29sb3I6IzI4YTc0NX0uZm9ybS1jaGVjay1pbnB1dC5pcy12YWxpZH4udmFsaWQtZmVlZGJhY2ssLmZvcm0tY2hlY2staW5wdXQuaXMtdmFsaWR+LnZhbGlkLXRvb2x0aXAsLndhcy12YWxpZGF0ZWQgLmZvcm0tY2hlY2staW5wdXQ6dmFsaWR+LnZhbGlkLWZlZWRiYWNrLC53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OnZhbGlkfi52YWxpZC10b29sdGlwe2Rpc3BsYXk6YmxvY2t9LmN1c3RvbS1jb250cm9sLWlucHV0LmlzLXZhbGlkfi5jdXN0b20tY29udHJvbC1sYWJlbCwud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6dmFsaWR+LmN1c3RvbS1jb250cm9sLWxhYmVse2NvbG9yOiMyOGE3NDV9LmN1c3RvbS1jb250cm9sLWlucHV0LmlzLXZhbGlkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLC53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDp2YWxpZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZXtib3JkZXItY29sb3I6IzI4YTc0NX0uY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtdmFsaWR+LnZhbGlkLWZlZWRiYWNrLC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy12YWxpZH4udmFsaWQtdG9vbHRpcCwud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6dmFsaWR+LnZhbGlkLWZlZWRiYWNrLC53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDp2YWxpZH4udmFsaWQtdG9vbHRpcHtkaXNwbGF5OmJsb2NrfS5jdXN0b20tY29udHJvbC1pbnB1dC5pcy12YWxpZDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLC53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDp2YWxpZDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3Jle2JvcmRlci1jb2xvcjojMzRjZTU3O2JhY2tncm91bmQtY29sb3I6IzM0Y2U1N30uY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtdmFsaWQ6Zm9jdXN+LmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OnZhbGlkOmZvY3Vzfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3Jle2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSg0MCwxNjcsNjksLjI1KX0uY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtdmFsaWQ6Zm9jdXM6bm90KDpjaGVja2VkKX4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6dmFsaWQ6Zm9jdXM6bm90KDpjaGVja2VkKX4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZXtib3JkZXItY29sb3I6IzI4YTc0NX0uY3VzdG9tLWZpbGUtaW5wdXQuaXMtdmFsaWR+LmN1c3RvbS1maWxlLWxhYmVsLC53YXMtdmFsaWRhdGVkIC5jdXN0b20tZmlsZS1pbnB1dDp2YWxpZH4uY3VzdG9tLWZpbGUtbGFiZWx7Ym9yZGVyLWNvbG9yOiMyOGE3NDV9LmN1c3RvbS1maWxlLWlucHV0LmlzLXZhbGlkfi52YWxpZC1mZWVkYmFjaywuY3VzdG9tLWZpbGUtaW5wdXQuaXMtdmFsaWR+LnZhbGlkLXRvb2x0aXAsLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OnZhbGlkfi52YWxpZC1mZWVkYmFjaywud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWZpbGUtaW5wdXQ6dmFsaWR+LnZhbGlkLXRvb2x0aXB7ZGlzcGxheTpibG9ja30uY3VzdG9tLWZpbGUtaW5wdXQuaXMtdmFsaWQ6Zm9jdXN+LmN1c3RvbS1maWxlLWxhYmVsLC53YXMtdmFsaWRhdGVkIC5jdXN0b20tZmlsZS1pbnB1dDp2YWxpZDpmb2N1c34uY3VzdG9tLWZpbGUtbGFiZWx7Ym9yZGVyLWNvbG9yOiMyOGE3NDU7Ym94LXNoYWRvdzowIDAgMCAuMnJlbSByZ2JhKDQwLDE2Nyw2OSwuMjUpfS5pbnZhbGlkLWZlZWRiYWNre2Rpc3BsYXk6bm9uZTt3aWR0aDoxMDAlO21hcmdpbi10b3A6LjI1cmVtO2ZvbnQtc2l6ZTo4MCU7Y29sb3I6I2RjMzU0NX0uaW52YWxpZC10b29sdGlwe3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxMDAlO3otaW5kZXg6NTtkaXNwbGF5Om5vbmU7bWF4LXdpZHRoOjEwMCU7cGFkZGluZzouMjVyZW0gLjVyZW07bWFyZ2luLXRvcDouMXJlbTtmb250LXNpemU6Ljg3NXJlbTtsaW5lLWhlaWdodDoxLjU7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjIwLDUzLDY5LC45KTtib3JkZXItcmFkaXVzOi4yNXJlbX0uZm9ybS1jb250cm9sLmlzLWludmFsaWQsLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlke2JvcmRlci1jb2xvcjojZGMzNTQ1O3BhZGRpbmctcmlnaHQ6Y2FsYygxLjVlbSArIC43NXJlbSk7YmFja2dyb3VuZC1pbWFnZTp1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSclMjNkYzM1NDUnIHZpZXdCb3g9Jy0yIC0yIDcgNyclM2UlM2NwYXRoIHN0cm9rZT0nJTIzZGMzNTQ1JyBkPSdNMCAwbDMgM20wLTNMMCAzJy8lM2UlM2NjaXJjbGUgcj0nLjUnLyUzZSUzY2NpcmNsZSBjeD0nMycgcj0nLjUnLyUzZSUzY2NpcmNsZSBjeT0nMycgcj0nLjUnLyUzZSUzY2NpcmNsZSBjeD0nMycgY3k9JzMnIHI9Jy41Jy8lM2UlM2Mvc3ZnJTNFIik7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtcG9zaXRpb246Y2VudGVyIHJpZ2h0IGNhbGMoLjM3NWVtICsgLjE4NzVyZW0pO2JhY2tncm91bmQtc2l6ZTpjYWxjKC43NWVtICsgLjM3NXJlbSkgY2FsYyguNzVlbSArIC4zNzVyZW0pfS5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZDpmb2N1cywud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOmludmFsaWQ6Zm9jdXN7Ym9yZGVyLWNvbG9yOiNkYzM1NDU7Ym94LXNoYWRvdzowIDAgMCAuMnJlbSByZ2JhKDIyMCw1Myw2OSwuMjUpfS5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZH4uaW52YWxpZC1mZWVkYmFjaywuZm9ybS1jb250cm9sLmlzLWludmFsaWR+LmludmFsaWQtdG9vbHRpcCwud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOmludmFsaWR+LmludmFsaWQtZmVlZGJhY2ssLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkfi5pbnZhbGlkLXRvb2x0aXB7ZGlzcGxheTpibG9ja30ud2FzLXZhbGlkYXRlZCB0ZXh0YXJlYS5mb3JtLWNvbnRyb2w6aW52YWxpZCx0ZXh0YXJlYS5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZHtwYWRkaW5nLXJpZ2h0OmNhbGMoMS41ZW0gKyAuNzVyZW0pO2JhY2tncm91bmQtcG9zaXRpb246dG9wIGNhbGMoLjM3NWVtICsgLjE4NzVyZW0pIHJpZ2h0IGNhbGMoLjM3NWVtICsgLjE4NzVyZW0pfS5jdXN0b20tc2VsZWN0LmlzLWludmFsaWQsLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1zZWxlY3Q6aW52YWxpZHtib3JkZXItY29sb3I6I2RjMzU0NTtwYWRkaW5nLXJpZ2h0OmNhbGMoKDFlbSArIC43NXJlbSkgKiAzIC8gNCArIDEuNzVyZW0pO2JhY2tncm91bmQ6dXJsKCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNSclM2UlM2NwYXRoIGZpbGw9JyUyMzM0M2E0MCcgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvJTNlJTNjL3N2ZyUzZSIpIG5vLXJlcGVhdCByaWdodCAuNzVyZW0gY2VudGVyLzhweCAxMHB4LHVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyUyM2RjMzU0NScgdmlld0JveD0nLTIgLTIgNyA3JyUzZSUzY3BhdGggc3Ryb2tlPSclMjNkYzM1NDUnIGQ9J00wIDBsMyAzbTAtM0wwIDMnLyUzZSUzY2NpcmNsZSByPScuNScvJTNlJTNjY2lyY2xlIGN4PSczJyByPScuNScvJTNlJTNjY2lyY2xlIGN5PSczJyByPScuNScvJTNlJTNjY2lyY2xlIGN4PSczJyBjeT0nMycgcj0nLjUnLyUzZSUzYy9zdmclM0UiKSAjZmZmIG5vLXJlcGVhdCBjZW50ZXIgcmlnaHQgMS43NXJlbS9jYWxjKC43NWVtICsgLjM3NXJlbSkgY2FsYyguNzVlbSArIC4zNzVyZW0pfS5jdXN0b20tc2VsZWN0LmlzLWludmFsaWQ6Zm9jdXMsLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1zZWxlY3Q6aW52YWxpZDpmb2N1c3tib3JkZXItY29sb3I6I2RjMzU0NTtib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoMjIwLDUzLDY5LC4yNSl9LmN1c3RvbS1zZWxlY3QuaXMtaW52YWxpZH4uaW52YWxpZC1mZWVkYmFjaywuY3VzdG9tLXNlbGVjdC5pcy1pbnZhbGlkfi5pbnZhbGlkLXRvb2x0aXAsLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1zZWxlY3Q6aW52YWxpZH4uaW52YWxpZC1mZWVkYmFjaywud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXNlbGVjdDppbnZhbGlkfi5pbnZhbGlkLXRvb2x0aXB7ZGlzcGxheTpibG9ja30uZm9ybS1jb250cm9sLWZpbGUuaXMtaW52YWxpZH4uaW52YWxpZC1mZWVkYmFjaywuZm9ybS1jb250cm9sLWZpbGUuaXMtaW52YWxpZH4uaW52YWxpZC10b29sdGlwLC53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2wtZmlsZTppbnZhbGlkfi5pbnZhbGlkLWZlZWRiYWNrLC53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2wtZmlsZTppbnZhbGlkfi5pbnZhbGlkLXRvb2x0aXB7ZGlzcGxheTpibG9ja30uZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkfi5mb3JtLWNoZWNrLWxhYmVsLC53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWR+LmZvcm0tY2hlY2stbGFiZWx7Y29sb3I6I2RjMzU0NX0uZm9ybS1jaGVjay1pbnB1dC5pcy1pbnZhbGlkfi5pbnZhbGlkLWZlZWRiYWNrLC5mb3JtLWNoZWNrLWlucHV0LmlzLWludmFsaWR+LmludmFsaWQtdG9vbHRpcCwud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDppbnZhbGlkfi5pbnZhbGlkLWZlZWRiYWNrLC53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWR+LmludmFsaWQtdG9vbHRpcHtkaXNwbGF5OmJsb2NrfS5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkfi5jdXN0b20tY29udHJvbC1sYWJlbCwud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWx7Y29sb3I6I2RjMzU0NX0uY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtaW52YWxpZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZXtib3JkZXItY29sb3I6I2RjMzU0NX0uY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtaW52YWxpZH4uaW52YWxpZC1mZWVkYmFjaywuY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtaW52YWxpZH4uaW52YWxpZC10b29sdGlwLC53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDppbnZhbGlkfi5pbnZhbGlkLWZlZWRiYWNrLC53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDppbnZhbGlkfi5pbnZhbGlkLXRvb2x0aXB7ZGlzcGxheTpibG9ja30uY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtaW52YWxpZDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLC53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDppbnZhbGlkOmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmV7Ym9yZGVyLWNvbG9yOiNlNDYwNmQ7YmFja2dyb3VuZC1jb2xvcjojZTQ2MDZkfS5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkOmZvY3Vzfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLC53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDppbnZhbGlkOmZvY3Vzfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3Jle2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyMjAsNTMsNjksLjI1KX0uY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtaW52YWxpZDpmb2N1czpub3QoOmNoZWNrZWQpfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLC53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDppbnZhbGlkOmZvY3VzOm5vdCg6Y2hlY2tlZCl+LmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmV7Ym9yZGVyLWNvbG9yOiNkYzM1NDV9LmN1c3RvbS1maWxlLWlucHV0LmlzLWludmFsaWR+LmN1c3RvbS1maWxlLWxhYmVsLC53YXMtdmFsaWRhdGVkIC5jdXN0b20tZmlsZS1pbnB1dDppbnZhbGlkfi5jdXN0b20tZmlsZS1sYWJlbHtib3JkZXItY29sb3I6I2RjMzU0NX0uY3VzdG9tLWZpbGUtaW5wdXQuaXMtaW52YWxpZH4uaW52YWxpZC1mZWVkYmFjaywuY3VzdG9tLWZpbGUtaW5wdXQuaXMtaW52YWxpZH4uaW52YWxpZC10b29sdGlwLC53YXMtdmFsaWRhdGVkIC5jdXN0b20tZmlsZS1pbnB1dDppbnZhbGlkfi5pbnZhbGlkLWZlZWRiYWNrLC53YXMtdmFsaWRhdGVkIC5jdXN0b20tZmlsZS1pbnB1dDppbnZhbGlkfi5pbnZhbGlkLXRvb2x0aXB7ZGlzcGxheTpibG9ja30uY3VzdG9tLWZpbGUtaW5wdXQuaXMtaW52YWxpZDpmb2N1c34uY3VzdG9tLWZpbGUtbGFiZWwsLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OmludmFsaWQ6Zm9jdXN+LmN1c3RvbS1maWxlLWxhYmVse2JvcmRlci1jb2xvcjojZGMzNTQ1O2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyMjAsNTMsNjksLjI1KX0uZm9ybS1pbmxpbmV7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtZmxvdzpyb3cgd3JhcDtmbGV4LWZsb3c6cm93IHdyYXA7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0uZm9ybS1pbmxpbmUgLmZvcm0tY2hlY2t7d2lkdGg6MTAwJX1AbWVkaWEgKG1pbi13aWR0aDo1NzZweCl7LmZvcm0taW5saW5lIGxhYmVse2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjttYXJnaW4tYm90dG9tOjB9LmZvcm0taW5saW5lIC5mb3JtLWdyb3Vwe2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4OjAgMCBhdXRvO2ZsZXg6MCAwIGF1dG87LW1zLWZsZXgtZmxvdzpyb3cgd3JhcDtmbGV4LWZsb3c6cm93IHdyYXA7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjttYXJnaW4tYm90dG9tOjB9LmZvcm0taW5saW5lIC5mb3JtLWNvbnRyb2x7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6YXV0bzt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LmZvcm0taW5saW5lIC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0e2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5mb3JtLWlubGluZSAuY3VzdG9tLXNlbGVjdCwuZm9ybS1pbmxpbmUgLmlucHV0LWdyb3Vwe3dpZHRoOmF1dG99LmZvcm0taW5saW5lIC5mb3JtLWNoZWNre2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDphdXRvO3BhZGRpbmctbGVmdDowfS5mb3JtLWlubGluZSAuZm9ybS1jaGVjay1pbnB1dHtwb3NpdGlvbjpyZWxhdGl2ZTstbXMtZmxleC1uZWdhdGl2ZTowO2ZsZXgtc2hyaW5rOjA7bWFyZ2luLXRvcDowO21hcmdpbi1yaWdodDouMjVyZW07bWFyZ2luLWxlZnQ6MH0uZm9ybS1pbmxpbmUgLmN1c3RvbS1jb250cm9sey1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0uZm9ybS1pbmxpbmUgLmN1c3RvbS1jb250cm9sLWxhYmVse21hcmdpbi1ib3R0b206MH19LmJ0bntkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXdlaWdodDo0MDA7Y29sb3I6IzIxMjUyOTt0ZXh0LWFsaWduOmNlbnRlcjt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtwYWRkaW5nOi4zNzVyZW0gLjc1cmVtO2ZvbnQtc2l6ZToxcmVtO2xpbmUtaGVpZ2h0OjEuNTtib3JkZXItcmFkaXVzOi4yNXJlbTt0cmFuc2l0aW9uOmNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dH1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsuYnRue3RyYW5zaXRpb246bm9uZX19LmJ0bjpob3Zlcntjb2xvcjojMjEyNTI5O3RleHQtZGVjb3JhdGlvbjpub25lfS5idG4uZm9jdXMsLmJ0bjpmb2N1c3tvdXRsaW5lOjA7Ym94LXNoYWRvdzowIDAgMCAuMnJlbSByZ2JhKDAsMTIzLDI1NSwuMjUpfS5idG4uZGlzYWJsZWQsLmJ0bjpkaXNhYmxlZHtvcGFjaXR5Oi42NX1hLmJ0bi5kaXNhYmxlZCxmaWVsZHNldDpkaXNhYmxlZCBhLmJ0bntwb2ludGVyLWV2ZW50czpub25lfS5idG4tcHJpbWFyeXtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzAwN2JmZjtib3JkZXItY29sb3I6IzAwN2JmZn0uYnRuLXByaW1hcnk6aG92ZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMwMDY5ZDk7Ym9yZGVyLWNvbG9yOiMwMDYyY2N9LmJ0bi1wcmltYXJ5LmZvY3VzLC5idG4tcHJpbWFyeTpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoMzgsMTQzLDI1NSwuNSl9LmJ0bi1wcmltYXJ5LmRpc2FibGVkLC5idG4tcHJpbWFyeTpkaXNhYmxlZHtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzAwN2JmZjtib3JkZXItY29sb3I6IzAwN2JmZn0uYnRuLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLC5idG4tcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsLnNob3c+LmJ0bi1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZXtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzAwNjJjYztib3JkZXItY29sb3I6IzAwNWNiZn0uYnRuLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLC5idG4tcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsLnNob3c+LmJ0bi1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZTpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoMzgsMTQzLDI1NSwuNSl9LmJ0bi1zZWNvbmRhcnl7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiM2Yzc1N2Q7Ym9yZGVyLWNvbG9yOiM2Yzc1N2R9LmJ0bi1zZWNvbmRhcnk6aG92ZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiM1YTYyNjg7Ym9yZGVyLWNvbG9yOiM1NDViNjJ9LmJ0bi1zZWNvbmRhcnkuZm9jdXMsLmJ0bi1zZWNvbmRhcnk6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAuMnJlbSByZ2JhKDEzMCwxMzgsMTQ1LC41KX0uYnRuLXNlY29uZGFyeS5kaXNhYmxlZCwuYnRuLXNlY29uZGFyeTpkaXNhYmxlZHtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzZjNzU3ZDtib3JkZXItY29sb3I6IzZjNzU3ZH0uYnRuLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsLmJ0bi1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLC5zaG93Pi5idG4tc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZXtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzU0NWI2Mjtib3JkZXItY29sb3I6IzRlNTU1Yn0uYnRuLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsLmJ0bi1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLC5zaG93Pi5idG4tc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZTpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoMTMwLDEzOCwxNDUsLjUpfS5idG4tc3VjY2Vzc3tjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzI4YTc0NTtib3JkZXItY29sb3I6IzI4YTc0NX0uYnRuLXN1Y2Nlc3M6aG92ZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMyMTg4Mzg7Ym9yZGVyLWNvbG9yOiMxZTdlMzR9LmJ0bi1zdWNjZXNzLmZvY3VzLC5idG4tc3VjY2Vzczpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoNzIsMTgwLDk3LC41KX0uYnRuLXN1Y2Nlc3MuZGlzYWJsZWQsLmJ0bi1zdWNjZXNzOmRpc2FibGVke2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMjhhNzQ1O2JvcmRlci1jb2xvcjojMjhhNzQ1fS5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwuc2hvdz4uYnRuLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xle2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMWU3ZTM0O2JvcmRlci1jb2xvcjojMWM3NDMwfS5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywuc2hvdz4uYnRuLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSg3MiwxODAsOTcsLjUpfS5idG4taW5mb3tjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzE3YTJiODtib3JkZXItY29sb3I6IzE3YTJiOH0uYnRuLWluZm86aG92ZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMxMzg0OTY7Ym9yZGVyLWNvbG9yOiMxMTdhOGJ9LmJ0bi1pbmZvLmZvY3VzLC5idG4taW5mbzpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoNTgsMTc2LDE5NSwuNSl9LmJ0bi1pbmZvLmRpc2FibGVkLC5idG4taW5mbzpkaXNhYmxlZHtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzE3YTJiODtib3JkZXItY29sb3I6IzE3YTJiOH0uYnRuLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLC5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsLnNob3c+LmJ0bi1pbmZvLmRyb3Bkb3duLXRvZ2dsZXtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzExN2E4Yjtib3JkZXItY29sb3I6IzEwNzA3Zn0uYnRuLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLC5idG4taW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsLnNob3c+LmJ0bi1pbmZvLmRyb3Bkb3duLXRvZ2dsZTpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoNTgsMTc2LDE5NSwuNSl9LmJ0bi13YXJuaW5ne2NvbG9yOiMyMTI1Mjk7YmFja2dyb3VuZC1jb2xvcjojZmZjMTA3O2JvcmRlci1jb2xvcjojZmZjMTA3fS5idG4td2FybmluZzpob3Zlcntjb2xvcjojMjEyNTI5O2JhY2tncm91bmQtY29sb3I6I2UwYTgwMDtib3JkZXItY29sb3I6I2QzOWUwMH0uYnRuLXdhcm5pbmcuZm9jdXMsLmJ0bi13YXJuaW5nOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyMjIsMTcwLDEyLC41KX0uYnRuLXdhcm5pbmcuZGlzYWJsZWQsLmJ0bi13YXJuaW5nOmRpc2FibGVke2NvbG9yOiMyMTI1Mjk7YmFja2dyb3VuZC1jb2xvcjojZmZjMTA3O2JvcmRlci1jb2xvcjojZmZjMTA3fS5idG4td2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsLmJ0bi13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwuc2hvdz4uYnRuLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xle2NvbG9yOiMyMTI1Mjk7YmFja2dyb3VuZC1jb2xvcjojZDM5ZTAwO2JvcmRlci1jb2xvcjojYzY5NTAwfS5idG4td2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsLmJ0bi13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywuc2hvdz4uYnRuLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyMjIsMTcwLDEyLC41KX0uYnRuLWRhbmdlcntjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6I2RjMzU0NTtib3JkZXItY29sb3I6I2RjMzU0NX0uYnRuLWRhbmdlcjpob3Zlcntjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6I2M4MjMzMztib3JkZXItY29sb3I6I2JkMjEzMH0uYnRuLWRhbmdlci5mb2N1cywuYnRuLWRhbmdlcjpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoMjI1LDgzLDk3LC41KX0uYnRuLWRhbmdlci5kaXNhYmxlZCwuYnRuLWRhbmdlcjpkaXNhYmxlZHtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6I2RjMzU0NTtib3JkZXItY29sb3I6I2RjMzU0NX0uYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsLmJ0bi1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLC5zaG93Pi5idG4tZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZXtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6I2JkMjEzMDtib3JkZXItY29sb3I6I2IyMWYyZH0uYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsLmJ0bi1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLC5zaG93Pi5idG4tZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZTpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoMjI1LDgzLDk3LC41KX0uYnRuLWxpZ2h0e2NvbG9yOiMyMTI1Mjk7YmFja2dyb3VuZC1jb2xvcjojZjhmOWZhO2JvcmRlci1jb2xvcjojZjhmOWZhfS5idG4tbGlnaHQ6aG92ZXJ7Y29sb3I6IzIxMjUyOTtiYWNrZ3JvdW5kLWNvbG9yOiNlMmU2ZWE7Ym9yZGVyLWNvbG9yOiNkYWUwZTV9LmJ0bi1saWdodC5mb2N1cywuYnRuLWxpZ2h0OmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyMTYsMjE3LDIxOSwuNSl9LmJ0bi1saWdodC5kaXNhYmxlZCwuYnRuLWxpZ2h0OmRpc2FibGVke2NvbG9yOiMyMTI1Mjk7YmFja2dyb3VuZC1jb2xvcjojZjhmOWZhO2JvcmRlci1jb2xvcjojZjhmOWZhfS5idG4tbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLC5idG4tbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLC5zaG93Pi5idG4tbGlnaHQuZHJvcGRvd24tdG9nZ2xle2NvbG9yOiMyMTI1Mjk7YmFja2dyb3VuZC1jb2xvcjojZGFlMGU1O2JvcmRlci1jb2xvcjojZDNkOWRmfS5idG4tbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLC5idG4tbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLC5zaG93Pi5idG4tbGlnaHQuZHJvcGRvd24tdG9nZ2xlOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyMTYsMjE3LDIxOSwuNSl9LmJ0bi1kYXJre2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMzQzYTQwO2JvcmRlci1jb2xvcjojMzQzYTQwfS5idG4tZGFyazpob3Zlcntjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzIzMjcyYjtib3JkZXItY29sb3I6IzFkMjEyNH0uYnRuLWRhcmsuZm9jdXMsLmJ0bi1kYXJrOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSg4Miw4OCw5MywuNSl9LmJ0bi1kYXJrLmRpc2FibGVkLC5idG4tZGFyazpkaXNhYmxlZHtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzM0M2E0MDtib3JkZXItY29sb3I6IzM0M2E0MH0uYnRuLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLC5idG4tZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsLnNob3c+LmJ0bi1kYXJrLmRyb3Bkb3duLXRvZ2dsZXtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzFkMjEyNDtib3JkZXItY29sb3I6IzE3MWExZH0uYnRuLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLC5idG4tZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsLnNob3c+LmJ0bi1kYXJrLmRyb3Bkb3duLXRvZ2dsZTpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoODIsODgsOTMsLjUpfS5idG4tb3V0bGluZS1wcmltYXJ5e2NvbG9yOiMwMDdiZmY7Ym9yZGVyLWNvbG9yOiMwMDdiZmZ9LmJ0bi1vdXRsaW5lLXByaW1hcnk6aG92ZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMwMDdiZmY7Ym9yZGVyLWNvbG9yOiMwMDdiZmZ9LmJ0bi1vdXRsaW5lLXByaW1hcnkuZm9jdXMsLmJ0bi1vdXRsaW5lLXByaW1hcnk6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAuMnJlbSByZ2JhKDAsMTIzLDI1NSwuNSl9LmJ0bi1vdXRsaW5lLXByaW1hcnkuZGlzYWJsZWQsLmJ0bi1vdXRsaW5lLXByaW1hcnk6ZGlzYWJsZWR7Y29sb3I6IzAwN2JmZjtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS5idG4tb3V0bGluZS1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwuYnRuLW91dGxpbmUtcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsLnNob3c+LmJ0bi1vdXRsaW5lLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xle2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMDA3YmZmO2JvcmRlci1jb2xvcjojMDA3YmZmfS5idG4tb3V0bGluZS1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywuYnRuLW91dGxpbmUtcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsLnNob3c+LmJ0bi1vdXRsaW5lLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgwLDEyMywyNTUsLjUpfS5idG4tb3V0bGluZS1zZWNvbmRhcnl7Y29sb3I6IzZjNzU3ZDtib3JkZXItY29sb3I6IzZjNzU3ZH0uYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmhvdmVye2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojNmM3NTdkO2JvcmRlci1jb2xvcjojNmM3NTdkfS5idG4tb3V0bGluZS1zZWNvbmRhcnkuZm9jdXMsLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoMTA4LDExNywxMjUsLjUpfS5idG4tb3V0bGluZS1zZWNvbmRhcnkuZGlzYWJsZWQsLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpkaXNhYmxlZHtjb2xvcjojNmM3NTdkO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnR9LmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsLnNob3c+LmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGV7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiM2Yzc1N2Q7Ym9yZGVyLWNvbG9yOiM2Yzc1N2R9LmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsLnNob3c+LmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGU6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAuMnJlbSByZ2JhKDEwOCwxMTcsMTI1LC41KX0uYnRuLW91dGxpbmUtc3VjY2Vzc3tjb2xvcjojMjhhNzQ1O2JvcmRlci1jb2xvcjojMjhhNzQ1fS5idG4tb3V0bGluZS1zdWNjZXNzOmhvdmVye2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMjhhNzQ1O2JvcmRlci1jb2xvcjojMjhhNzQ1fS5idG4tb3V0bGluZS1zdWNjZXNzLmZvY3VzLC5idG4tb3V0bGluZS1zdWNjZXNzOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSg0MCwxNjcsNjksLjUpfS5idG4tb3V0bGluZS1zdWNjZXNzLmRpc2FibGVkLC5idG4tb3V0bGluZS1zdWNjZXNzOmRpc2FibGVke2NvbG9yOiMyOGE3NDU7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0uYnRuLW91dGxpbmUtc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLC5zaG93Pi5idG4tb3V0bGluZS1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZXtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzI4YTc0NTtib3JkZXItY29sb3I6IzI4YTc0NX0uYnRuLW91dGxpbmUtc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMsLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLC5zaG93Pi5idG4tb3V0bGluZS1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZTpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoNDAsMTY3LDY5LC41KX0uYnRuLW91dGxpbmUtaW5mb3tjb2xvcjojMTdhMmI4O2JvcmRlci1jb2xvcjojMTdhMmI4fS5idG4tb3V0bGluZS1pbmZvOmhvdmVye2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMTdhMmI4O2JvcmRlci1jb2xvcjojMTdhMmI4fS5idG4tb3V0bGluZS1pbmZvLmZvY3VzLC5idG4tb3V0bGluZS1pbmZvOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyMywxNjIsMTg0LC41KX0uYnRuLW91dGxpbmUtaW5mby5kaXNhYmxlZCwuYnRuLW91dGxpbmUtaW5mbzpkaXNhYmxlZHtjb2xvcjojMTdhMmI4O2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnR9LmJ0bi1vdXRsaW5lLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLC5idG4tb3V0bGluZS1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwuc2hvdz4uYnRuLW91dGxpbmUtaW5mby5kcm9wZG93bi10b2dnbGV7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMxN2EyYjg7Ym9yZGVyLWNvbG9yOiMxN2EyYjh9LmJ0bi1vdXRsaW5lLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLC5idG4tb3V0bGluZS1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cywuc2hvdz4uYnRuLW91dGxpbmUtaW5mby5kcm9wZG93bi10b2dnbGU6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAuMnJlbSByZ2JhKDIzLDE2MiwxODQsLjUpfS5idG4tb3V0bGluZS13YXJuaW5ne2NvbG9yOiNmZmMxMDc7Ym9yZGVyLWNvbG9yOiNmZmMxMDd9LmJ0bi1vdXRsaW5lLXdhcm5pbmc6aG92ZXJ7Y29sb3I6IzIxMjUyOTtiYWNrZ3JvdW5kLWNvbG9yOiNmZmMxMDc7Ym9yZGVyLWNvbG9yOiNmZmMxMDd9LmJ0bi1vdXRsaW5lLXdhcm5pbmcuZm9jdXMsLmJ0bi1vdXRsaW5lLXdhcm5pbmc6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAuMnJlbSByZ2JhKDI1NSwxOTMsNywuNSl9LmJ0bi1vdXRsaW5lLXdhcm5pbmcuZGlzYWJsZWQsLmJ0bi1vdXRsaW5lLXdhcm5pbmc6ZGlzYWJsZWR7Y29sb3I6I2ZmYzEwNztiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS5idG4tb3V0bGluZS13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwuYnRuLW91dGxpbmUtd2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsLnNob3c+LmJ0bi1vdXRsaW5lLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xle2NvbG9yOiMyMTI1Mjk7YmFja2dyb3VuZC1jb2xvcjojZmZjMTA3O2JvcmRlci1jb2xvcjojZmZjMTA3fS5idG4tb3V0bGluZS13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywuYnRuLW91dGxpbmUtd2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsLnNob3c+LmJ0bi1vdXRsaW5lLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyNTUsMTkzLDcsLjUpfS5idG4tb3V0bGluZS1kYW5nZXJ7Y29sb3I6I2RjMzU0NTtib3JkZXItY29sb3I6I2RjMzU0NX0uYnRuLW91dGxpbmUtZGFuZ2VyOmhvdmVye2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojZGMzNTQ1O2JvcmRlci1jb2xvcjojZGMzNTQ1fS5idG4tb3V0bGluZS1kYW5nZXIuZm9jdXMsLmJ0bi1vdXRsaW5lLWRhbmdlcjpmb2N1c3tib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoMjIwLDUzLDY5LC41KX0uYnRuLW91dGxpbmUtZGFuZ2VyLmRpc2FibGVkLC5idG4tb3V0bGluZS1kYW5nZXI6ZGlzYWJsZWR7Y29sb3I6I2RjMzU0NTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS5idG4tb3V0bGluZS1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLC5idG4tb3V0bGluZS1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLC5zaG93Pi5idG4tb3V0bGluZS1kYW5nZXIuZHJvcGRvd24tdG9nZ2xle2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojZGMzNTQ1O2JvcmRlci1jb2xvcjojZGMzNTQ1fS5idG4tb3V0bGluZS1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLC5idG4tb3V0bGluZS1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLC5zaG93Pi5idG4tb3V0bGluZS1kYW5nZXIuZHJvcGRvd24tdG9nZ2xlOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyMjAsNTMsNjksLjUpfS5idG4tb3V0bGluZS1saWdodHtjb2xvcjojZjhmOWZhO2JvcmRlci1jb2xvcjojZjhmOWZhfS5idG4tb3V0bGluZS1saWdodDpob3Zlcntjb2xvcjojMjEyNTI5O2JhY2tncm91bmQtY29sb3I6I2Y4ZjlmYTtib3JkZXItY29sb3I6I2Y4ZjlmYX0uYnRuLW91dGxpbmUtbGlnaHQuZm9jdXMsLmJ0bi1vdXRsaW5lLWxpZ2h0OmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyNDgsMjQ5LDI1MCwuNSl9LmJ0bi1vdXRsaW5lLWxpZ2h0LmRpc2FibGVkLC5idG4tb3V0bGluZS1saWdodDpkaXNhYmxlZHtjb2xvcjojZjhmOWZhO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnR9LmJ0bi1vdXRsaW5lLWxpZ2h0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwuYnRuLW91dGxpbmUtbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLC5zaG93Pi5idG4tb3V0bGluZS1saWdodC5kcm9wZG93bi10b2dnbGV7Y29sb3I6IzIxMjUyOTtiYWNrZ3JvdW5kLWNvbG9yOiNmOGY5ZmE7Ym9yZGVyLWNvbG9yOiNmOGY5ZmF9LmJ0bi1vdXRsaW5lLWxpZ2h0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywuYnRuLW91dGxpbmUtbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLC5zaG93Pi5idG4tb3V0bGluZS1saWdodC5kcm9wZG93bi10b2dnbGU6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAuMnJlbSByZ2JhKDI0OCwyNDksMjUwLC41KX0uYnRuLW91dGxpbmUtZGFya3tjb2xvcjojMzQzYTQwO2JvcmRlci1jb2xvcjojMzQzYTQwfS5idG4tb3V0bGluZS1kYXJrOmhvdmVye2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMzQzYTQwO2JvcmRlci1jb2xvcjojMzQzYTQwfS5idG4tb3V0bGluZS1kYXJrLmZvY3VzLC5idG4tb3V0bGluZS1kYXJrOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSg1Miw1OCw2NCwuNSl9LmJ0bi1vdXRsaW5lLWRhcmsuZGlzYWJsZWQsLmJ0bi1vdXRsaW5lLWRhcms6ZGlzYWJsZWR7Y29sb3I6IzM0M2E0MDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS5idG4tb3V0bGluZS1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwuYnRuLW91dGxpbmUtZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsLnNob3c+LmJ0bi1vdXRsaW5lLWRhcmsuZHJvcGRvd24tdG9nZ2xle2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMzQzYTQwO2JvcmRlci1jb2xvcjojMzQzYTQwfS5idG4tb3V0bGluZS1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cywuYnRuLW91dGxpbmUtZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMsLnNob3c+LmJ0bi1vdXRsaW5lLWRhcmsuZHJvcGRvd24tdG9nZ2xlOmZvY3Vze2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSg1Miw1OCw2NCwuNSl9LmJ0bi1saW5re2ZvbnQtd2VpZ2h0OjQwMDtjb2xvcjojMDA3YmZmO3RleHQtZGVjb3JhdGlvbjpub25lfS5idG4tbGluazpob3Zlcntjb2xvcjojMDA1NmIzO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9LmJ0bi1saW5rLmZvY3VzLC5idG4tbGluazpmb2N1c3t0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO2JveC1zaGFkb3c6bm9uZX0uYnRuLWxpbmsuZGlzYWJsZWQsLmJ0bi1saW5rOmRpc2FibGVke2NvbG9yOiM2Yzc1N2Q7cG9pbnRlci1ldmVudHM6bm9uZX0uYnRuLWdyb3VwLWxnPi5idG4sLmJ0bi1sZ3twYWRkaW5nOi41cmVtIDFyZW07Zm9udC1zaXplOjEuMjVyZW07bGluZS1oZWlnaHQ6MS41O2JvcmRlci1yYWRpdXM6LjNyZW19LmJ0bi1ncm91cC1zbT4uYnRuLC5idG4tc217cGFkZGluZzouMjVyZW0gLjVyZW07Zm9udC1zaXplOi44NzVyZW07bGluZS1oZWlnaHQ6MS41O2JvcmRlci1yYWRpdXM6LjJyZW19LmJ0bi1ibG9ja3tkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMCV9LmJ0bi1ibG9jaysuYnRuLWJsb2Nre21hcmdpbi10b3A6LjVyZW19aW5wdXRbdHlwZT1idXR0b25dLmJ0bi1ibG9jayxpbnB1dFt0eXBlPXJlc2V0XS5idG4tYmxvY2ssaW5wdXRbdHlwZT1zdWJtaXRdLmJ0bi1ibG9ja3t3aWR0aDoxMDAlfS5mYWRle3RyYW5zaXRpb246b3BhY2l0eSAuMTVzIGxpbmVhcn1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsuZmFkZXt0cmFuc2l0aW9uOm5vbmV9fS5mYWRlOm5vdCguc2hvdyl7b3BhY2l0eTowfS5jb2xsYXBzZTpub3QoLnNob3cpe2Rpc3BsYXk6bm9uZX0uY29sbGFwc2luZ3twb3NpdGlvbjpyZWxhdGl2ZTtoZWlnaHQ6MDtvdmVyZmxvdzpoaWRkZW47dHJhbnNpdGlvbjpoZWlnaHQgLjM1cyBlYXNlfUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5jb2xsYXBzaW5ne3RyYW5zaXRpb246bm9uZX19LmRyb3Bkb3duLC5kcm9wbGVmdCwuZHJvcHJpZ2h0LC5kcm9wdXB7cG9zaXRpb246cmVsYXRpdmV9LmRyb3Bkb3duLXRvZ2dsZXt3aGl0ZS1zcGFjZTpub3dyYXB9LmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWxlZnQ6LjI1NWVtO3ZlcnRpY2FsLWFsaWduOi4yNTVlbTtjb250ZW50OiIiO2JvcmRlci10b3A6LjNlbSBzb2xpZDtib3JkZXItcmlnaHQ6LjNlbSBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItYm90dG9tOjA7Ym9yZGVyLWxlZnQ6LjNlbSBzb2xpZCB0cmFuc3BhcmVudH0uZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlcnttYXJnaW4tbGVmdDowfS5kcm9wZG93bi1tZW51e3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxMDAlO2xlZnQ6MDt6LWluZGV4OjEwMDA7ZGlzcGxheTpub25lO2Zsb2F0OmxlZnQ7bWluLXdpZHRoOjEwcmVtO3BhZGRpbmc6LjVyZW0gMDttYXJnaW46LjEyNXJlbSAwIDA7Zm9udC1zaXplOjFyZW07Y29sb3I6IzIxMjUyOTt0ZXh0LWFsaWduOmxlZnQ7bGlzdC1zdHlsZTpub25lO2JhY2tncm91bmQtY29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNsaXA6cGFkZGluZy1ib3g7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLC4xNSk7Ym9yZGVyLXJhZGl1czouMjVyZW19LmRyb3Bkb3duLW1lbnUtbGVmdHtyaWdodDphdXRvO2xlZnQ6MH0uZHJvcGRvd24tbWVudS1yaWdodHtyaWdodDowO2xlZnQ6YXV0b31AbWVkaWEgKG1pbi13aWR0aDo1NzZweCl7LmRyb3Bkb3duLW1lbnUtc20tbGVmdHtyaWdodDphdXRvO2xlZnQ6MH0uZHJvcGRvd24tbWVudS1zbS1yaWdodHtyaWdodDowO2xlZnQ6YXV0b319QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5kcm9wZG93bi1tZW51LW1kLWxlZnR7cmlnaHQ6YXV0bztsZWZ0OjB9LmRyb3Bkb3duLW1lbnUtbWQtcmlnaHR7cmlnaHQ6MDtsZWZ0OmF1dG99fUBtZWRpYSAobWluLXdpZHRoOjk5MnB4KXsuZHJvcGRvd24tbWVudS1sZy1sZWZ0e3JpZ2h0OmF1dG87bGVmdDowfS5kcm9wZG93bi1tZW51LWxnLXJpZ2h0e3JpZ2h0OjA7bGVmdDphdXRvfX1AbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpey5kcm9wZG93bi1tZW51LXhsLWxlZnR7cmlnaHQ6YXV0bztsZWZ0OjB9LmRyb3Bkb3duLW1lbnUteGwtcmlnaHR7cmlnaHQ6MDtsZWZ0OmF1dG99fS5kcm9wdXAgLmRyb3Bkb3duLW1lbnV7dG9wOmF1dG87Ym90dG9tOjEwMCU7bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206LjEyNXJlbX0uZHJvcHVwIC5kcm9wZG93bi10b2dnbGU6OmFmdGVye2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi1sZWZ0Oi4yNTVlbTt2ZXJ0aWNhbC1hbGlnbjouMjU1ZW07Y29udGVudDoiIjtib3JkZXItdG9wOjA7Ym9yZGVyLXJpZ2h0Oi4zZW0gc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLWJvdHRvbTouM2VtIHNvbGlkO2JvcmRlci1sZWZ0Oi4zZW0gc29saWQgdHJhbnNwYXJlbnR9LmRyb3B1cCAuZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlcnttYXJnaW4tbGVmdDowfS5kcm9wcmlnaHQgLmRyb3Bkb3duLW1lbnV7dG9wOjA7cmlnaHQ6YXV0bztsZWZ0OjEwMCU7bWFyZ2luLXRvcDowO21hcmdpbi1sZWZ0Oi4xMjVyZW19LmRyb3ByaWdodCAuZHJvcGRvd24tdG9nZ2xlOjphZnRlcntkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW4tbGVmdDouMjU1ZW07dmVydGljYWwtYWxpZ246LjI1NWVtO2NvbnRlbnQ6IiI7Ym9yZGVyLXRvcDouM2VtIHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yaWdodDowO2JvcmRlci1ib3R0b206LjNlbSBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItbGVmdDouM2VtIHNvbGlkfS5kcm9wcmlnaHQgLmRyb3Bkb3duLXRvZ2dsZTplbXB0eTo6YWZ0ZXJ7bWFyZ2luLWxlZnQ6MH0uZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVye3ZlcnRpY2FsLWFsaWduOjB9LmRyb3BsZWZ0IC5kcm9wZG93bi1tZW51e3RvcDowO3JpZ2h0OjEwMCU7bGVmdDphdXRvO21hcmdpbi10b3A6MDttYXJnaW4tcmlnaHQ6LjEyNXJlbX0uZHJvcGxlZnQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWxlZnQ6LjI1NWVtO3ZlcnRpY2FsLWFsaWduOi4yNTVlbTtjb250ZW50OiIifS5kcm9wbGVmdCAuZHJvcGRvd24tdG9nZ2xlOjphZnRlcntkaXNwbGF5Om5vbmV9LmRyb3BsZWZ0IC5kcm9wZG93bi10b2dnbGU6OmJlZm9yZXtkaXNwbGF5OmlubGluZS1ibG9jazttYXJnaW4tcmlnaHQ6LjI1NWVtO3ZlcnRpY2FsLWFsaWduOi4yNTVlbTtjb250ZW50OiIiO2JvcmRlci10b3A6LjNlbSBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmlnaHQ6LjNlbSBzb2xpZDtib3JkZXItYm90dG9tOi4zZW0gc29saWQgdHJhbnNwYXJlbnR9LmRyb3BsZWZ0IC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVye21hcmdpbi1sZWZ0OjB9LmRyb3BsZWZ0IC5kcm9wZG93bi10b2dnbGU6OmJlZm9yZXt2ZXJ0aWNhbC1hbGlnbjowfS5kcm9wZG93bi1tZW51W3gtcGxhY2VtZW50Xj1ib3R0b21dLC5kcm9wZG93bi1tZW51W3gtcGxhY2VtZW50Xj1sZWZ0XSwuZHJvcGRvd24tbWVudVt4LXBsYWNlbWVudF49cmlnaHRdLC5kcm9wZG93bi1tZW51W3gtcGxhY2VtZW50Xj10b3Bde3JpZ2h0OmF1dG87Ym90dG9tOmF1dG99LmRyb3Bkb3duLWRpdmlkZXJ7aGVpZ2h0OjA7bWFyZ2luOi41cmVtIDA7b3ZlcmZsb3c6aGlkZGVuO2JvcmRlci10b3A6MXB4IHNvbGlkICNlOWVjZWZ9LmRyb3Bkb3duLWl0ZW17ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO3BhZGRpbmc6LjI1cmVtIDEuNXJlbTtjbGVhcjpib3RoO2ZvbnQtd2VpZ2h0OjQwMDtjb2xvcjojMjEyNTI5O3RleHQtYWxpZ246aW5oZXJpdDt3aGl0ZS1zcGFjZTpub3dyYXA7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXI6MH0uZHJvcGRvd24taXRlbTpmb2N1cywuZHJvcGRvd24taXRlbTpob3Zlcntjb2xvcjojMTYxODFiO3RleHQtZGVjb3JhdGlvbjpub25lO2JhY2tncm91bmQtY29sb3I6I2Y4ZjlmYX0uZHJvcGRvd24taXRlbS5hY3RpdmUsLmRyb3Bkb3duLWl0ZW06YWN0aXZle2NvbG9yOiNmZmY7dGV4dC1kZWNvcmF0aW9uOm5vbmU7YmFja2dyb3VuZC1jb2xvcjojMDA3YmZmfS5kcm9wZG93bi1pdGVtLmRpc2FibGVkLC5kcm9wZG93bi1pdGVtOmRpc2FibGVke2NvbG9yOiM2Yzc1N2Q7cG9pbnRlci1ldmVudHM6bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS5kcm9wZG93bi1tZW51LnNob3d7ZGlzcGxheTpibG9ja30uZHJvcGRvd24taGVhZGVye2Rpc3BsYXk6YmxvY2s7cGFkZGluZzouNXJlbSAxLjVyZW07bWFyZ2luLWJvdHRvbTowO2ZvbnQtc2l6ZTouODc1cmVtO2NvbG9yOiM2Yzc1N2Q7d2hpdGUtc3BhY2U6bm93cmFwfS5kcm9wZG93bi1pdGVtLXRleHR7ZGlzcGxheTpibG9jaztwYWRkaW5nOi4yNXJlbSAxLjVyZW07Y29sb3I6IzIxMjUyOX0uYnRuLWdyb3VwLC5idG4tZ3JvdXAtdmVydGljYWx7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTotbXMtaW5saW5lLWZsZXhib3g7ZGlzcGxheTppbmxpbmUtZmxleDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuLC5idG4tZ3JvdXA+LmJ0bntwb3NpdGlvbjpyZWxhdGl2ZTstbXMtZmxleDoxIDEgYXV0bztmbGV4OjEgMSBhdXRvfS5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bjpob3ZlciwuYnRuLWdyb3VwPi5idG46aG92ZXJ7ei1pbmRleDoxfS5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bi5hY3RpdmUsLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuOmFjdGl2ZSwuYnRuLWdyb3VwLXZlcnRpY2FsPi5idG46Zm9jdXMsLmJ0bi1ncm91cD4uYnRuLmFjdGl2ZSwuYnRuLWdyb3VwPi5idG46YWN0aXZlLC5idG4tZ3JvdXA+LmJ0bjpmb2N1c3t6LWluZGV4OjF9LmJ0bi10b29sYmFye2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LXdyYXA6d3JhcDtmbGV4LXdyYXA6d3JhcDstbXMtZmxleC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5idG4tdG9vbGJhciAuaW5wdXQtZ3JvdXB7d2lkdGg6YXV0b30uYnRuLWdyb3VwPi5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCksLmJ0bi1ncm91cD4uYnRuOm5vdCg6Zmlyc3QtY2hpbGQpe21hcmdpbi1sZWZ0Oi0xcHh9LmJ0bi1ncm91cD4uYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCk+LmJ0biwuYnRuLWdyb3VwPi5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSl7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowfS5idG4tZ3JvdXA+LmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKT4uYnRuLC5idG4tZ3JvdXA+LmJ0bjpub3QoOmZpcnN0LWNoaWxkKXtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowfS5kcm9wZG93bi10b2dnbGUtc3BsaXR7cGFkZGluZy1yaWdodDouNTYyNXJlbTtwYWRkaW5nLWxlZnQ6LjU2MjVyZW19LmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDo6YWZ0ZXIsLmRyb3ByaWdodCAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlciwuZHJvcHVwIC5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmFmdGVye21hcmdpbi1sZWZ0OjB9LmRyb3BsZWZ0IC5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmJlZm9yZXttYXJnaW4tcmlnaHQ6MH0uYnRuLWdyb3VwLXNtPi5idG4rLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwuYnRuLXNtKy5kcm9wZG93bi10b2dnbGUtc3BsaXR7cGFkZGluZy1yaWdodDouMzc1cmVtO3BhZGRpbmctbGVmdDouMzc1cmVtfS5idG4tZ3JvdXAtbGc+LmJ0bisuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LC5idG4tbGcrLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdHtwYWRkaW5nLXJpZ2h0Oi43NXJlbTtwYWRkaW5nLWxlZnQ6Ljc1cmVtfS5idG4tZ3JvdXAtdmVydGljYWx7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1zLWZsZXgtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5idG4tZ3JvdXAtdmVydGljYWw+LmJ0biwuYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tZ3JvdXB7d2lkdGg6MTAwJX0uYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCksLmJ0bi1ncm91cC12ZXJ0aWNhbD4uYnRuOm5vdCg6Zmlyc3QtY2hpbGQpe21hcmdpbi10b3A6LTFweH0uYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKT4uYnRuLC5idG4tZ3JvdXAtdmVydGljYWw+LmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKXtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MH0uYnRuLWdyb3VwLXZlcnRpY2FsPi5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk+LmJ0biwuYnRuLWdyb3VwLXZlcnRpY2FsPi5idG46bm90KDpmaXJzdC1jaGlsZCl7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjB9LmJ0bi1ncm91cC10b2dnbGU+LmJ0biwuYnRuLWdyb3VwLXRvZ2dsZT4uYnRuLWdyb3VwPi5idG57bWFyZ2luLWJvdHRvbTowfS5idG4tZ3JvdXAtdG9nZ2xlPi5idG4gaW5wdXRbdHlwZT1jaGVja2JveF0sLmJ0bi1ncm91cC10b2dnbGU+LmJ0biBpbnB1dFt0eXBlPXJhZGlvXSwuYnRuLWdyb3VwLXRvZ2dsZT4uYnRuLWdyb3VwPi5idG4gaW5wdXRbdHlwZT1jaGVja2JveF0sLmJ0bi1ncm91cC10b2dnbGU+LmJ0bi1ncm91cD4uYnRuIGlucHV0W3R5cGU9cmFkaW9de3Bvc2l0aW9uOmFic29sdXRlO2NsaXA6cmVjdCgwLDAsMCwwKTtwb2ludGVyLWV2ZW50czpub25lfS5pbnB1dC1ncm91cHtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC13cmFwOndyYXA7ZmxleC13cmFwOndyYXA7LW1zLWZsZXgtYWxpZ246c3RyZXRjaDthbGlnbi1pdGVtczpzdHJldGNoO3dpZHRoOjEwMCV9LmlucHV0LWdyb3VwPi5jdXN0b20tZmlsZSwuaW5wdXQtZ3JvdXA+LmN1c3RvbS1zZWxlY3QsLmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2wsLmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0e3Bvc2l0aW9uOnJlbGF0aXZlOy1tcy1mbGV4OjEgMSBhdXRvO2ZsZXg6MSAxIGF1dG87d2lkdGg6MSU7bWFyZ2luLWJvdHRvbTowfS5pbnB1dC1ncm91cD4uY3VzdG9tLWZpbGUrLmN1c3RvbS1maWxlLC5pbnB1dC1ncm91cD4uY3VzdG9tLWZpbGUrLmN1c3RvbS1zZWxlY3QsLmlucHV0LWdyb3VwPi5jdXN0b20tZmlsZSsuZm9ybS1jb250cm9sLC5pbnB1dC1ncm91cD4uY3VzdG9tLXNlbGVjdCsuY3VzdG9tLWZpbGUsLmlucHV0LWdyb3VwPi5jdXN0b20tc2VsZWN0Ky5jdXN0b20tc2VsZWN0LC5pbnB1dC1ncm91cD4uY3VzdG9tLXNlbGVjdCsuZm9ybS1jb250cm9sLC5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sKy5jdXN0b20tZmlsZSwuaW5wdXQtZ3JvdXA+LmZvcm0tY29udHJvbCsuY3VzdG9tLXNlbGVjdCwuaW5wdXQtZ3JvdXA+LmZvcm0tY29udHJvbCsuZm9ybS1jb250cm9sLC5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sLXBsYWludGV4dCsuY3VzdG9tLWZpbGUsLmlucHV0LWdyb3VwPi5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0Ky5jdXN0b20tc2VsZWN0LC5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sLXBsYWludGV4dCsuZm9ybS1jb250cm9se21hcmdpbi1sZWZ0Oi0xcHh9LmlucHV0LWdyb3VwPi5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXN+LmN1c3RvbS1maWxlLWxhYmVsLC5pbnB1dC1ncm91cD4uY3VzdG9tLXNlbGVjdDpmb2N1cywuaW5wdXQtZ3JvdXA+LmZvcm0tY29udHJvbDpmb2N1c3t6LWluZGV4OjN9LmlucHV0LWdyb3VwPi5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXN7ei1pbmRleDo0fS5pbnB1dC1ncm91cD4uY3VzdG9tLXNlbGVjdDpub3QoOmxhc3QtY2hpbGQpLC5pbnB1dC1ncm91cD4uZm9ybS1jb250cm9sOm5vdCg6bGFzdC1jaGlsZCl7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czowfS5pbnB1dC1ncm91cD4uY3VzdG9tLXNlbGVjdDpub3QoOmZpcnN0LWNoaWxkKSwuaW5wdXQtZ3JvdXA+LmZvcm0tY29udHJvbDpub3QoOmZpcnN0LWNoaWxkKXtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowfS5pbnB1dC1ncm91cD4uY3VzdG9tLWZpbGV7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0uaW5wdXQtZ3JvdXA+LmN1c3RvbS1maWxlOm5vdCg6bGFzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsLC5pbnB1dC1ncm91cD4uY3VzdG9tLWZpbGU6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVye2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6MH0uaW5wdXQtZ3JvdXA+LmN1c3RvbS1maWxlOm5vdCg6Zmlyc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbHtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjA7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowfS5pbnB1dC1ncm91cC1hcHBlbmQsLmlucHV0LWdyb3VwLXByZXBlbmR7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXh9LmlucHV0LWdyb3VwLWFwcGVuZCAuYnRuLC5pbnB1dC1ncm91cC1wcmVwZW5kIC5idG57cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyfS5pbnB1dC1ncm91cC1hcHBlbmQgLmJ0bjpmb2N1cywuaW5wdXQtZ3JvdXAtcHJlcGVuZCAuYnRuOmZvY3Vze3otaW5kZXg6M30uaW5wdXQtZ3JvdXAtYXBwZW5kIC5idG4rLmJ0biwuaW5wdXQtZ3JvdXAtYXBwZW5kIC5idG4rLmlucHV0LWdyb3VwLXRleHQsLmlucHV0LWdyb3VwLWFwcGVuZCAuaW5wdXQtZ3JvdXAtdGV4dCsuYnRuLC5pbnB1dC1ncm91cC1hcHBlbmQgLmlucHV0LWdyb3VwLXRleHQrLmlucHV0LWdyb3VwLXRleHQsLmlucHV0LWdyb3VwLXByZXBlbmQgLmJ0bisuYnRuLC5pbnB1dC1ncm91cC1wcmVwZW5kIC5idG4rLmlucHV0LWdyb3VwLXRleHQsLmlucHV0LWdyb3VwLXByZXBlbmQgLmlucHV0LWdyb3VwLXRleHQrLmJ0biwuaW5wdXQtZ3JvdXAtcHJlcGVuZCAuaW5wdXQtZ3JvdXAtdGV4dCsuaW5wdXQtZ3JvdXAtdGV4dHttYXJnaW4tbGVmdDotMXB4fS5pbnB1dC1ncm91cC1wcmVwZW5ke21hcmdpbi1yaWdodDotMXB4fS5pbnB1dC1ncm91cC1hcHBlbmR7bWFyZ2luLWxlZnQ6LTFweH0uaW5wdXQtZ3JvdXAtdGV4dHtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6LjM3NXJlbSAuNzVyZW07bWFyZ2luLWJvdHRvbTowO2ZvbnQtc2l6ZToxcmVtO2ZvbnQtd2VpZ2h0OjQwMDtsaW5lLWhlaWdodDoxLjU7Y29sb3I6IzQ5NTA1Nzt0ZXh0LWFsaWduOmNlbnRlcjt3aGl0ZS1zcGFjZTpub3dyYXA7YmFja2dyb3VuZC1jb2xvcjojZTllY2VmO2JvcmRlcjoxcHggc29saWQgI2NlZDRkYTtib3JkZXItcmFkaXVzOi4yNXJlbX0uaW5wdXQtZ3JvdXAtdGV4dCBpbnB1dFt0eXBlPWNoZWNrYm94XSwuaW5wdXQtZ3JvdXAtdGV4dCBpbnB1dFt0eXBlPXJhZGlvXXttYXJnaW4tdG9wOjB9LmlucHV0LWdyb3VwLWxnPi5jdXN0b20tc2VsZWN0LC5pbnB1dC1ncm91cC1sZz4uZm9ybS1jb250cm9sOm5vdCh0ZXh0YXJlYSl7aGVpZ2h0OmNhbGMoMS41ZW0gKyAxcmVtICsgMnB4KX0uaW5wdXQtZ3JvdXAtbGc+LmN1c3RvbS1zZWxlY3QsLmlucHV0LWdyb3VwLWxnPi5mb3JtLWNvbnRyb2wsLmlucHV0LWdyb3VwLWxnPi5pbnB1dC1ncm91cC1hcHBlbmQ+LmJ0biwuaW5wdXQtZ3JvdXAtbGc+LmlucHV0LWdyb3VwLWFwcGVuZD4uaW5wdXQtZ3JvdXAtdGV4dCwuaW5wdXQtZ3JvdXAtbGc+LmlucHV0LWdyb3VwLXByZXBlbmQ+LmJ0biwuaW5wdXQtZ3JvdXAtbGc+LmlucHV0LWdyb3VwLXByZXBlbmQ+LmlucHV0LWdyb3VwLXRleHR7cGFkZGluZzouNXJlbSAxcmVtO2ZvbnQtc2l6ZToxLjI1cmVtO2xpbmUtaGVpZ2h0OjEuNTtib3JkZXItcmFkaXVzOi4zcmVtfS5pbnB1dC1ncm91cC1zbT4uY3VzdG9tLXNlbGVjdCwuaW5wdXQtZ3JvdXAtc20+LmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpe2hlaWdodDpjYWxjKDEuNWVtICsgLjVyZW0gKyAycHgpfS5pbnB1dC1ncm91cC1zbT4uY3VzdG9tLXNlbGVjdCwuaW5wdXQtZ3JvdXAtc20+LmZvcm0tY29udHJvbCwuaW5wdXQtZ3JvdXAtc20+LmlucHV0LWdyb3VwLWFwcGVuZD4uYnRuLC5pbnB1dC1ncm91cC1zbT4uaW5wdXQtZ3JvdXAtYXBwZW5kPi5pbnB1dC1ncm91cC10ZXh0LC5pbnB1dC1ncm91cC1zbT4uaW5wdXQtZ3JvdXAtcHJlcGVuZD4uYnRuLC5pbnB1dC1ncm91cC1zbT4uaW5wdXQtZ3JvdXAtcHJlcGVuZD4uaW5wdXQtZ3JvdXAtdGV4dHtwYWRkaW5nOi4yNXJlbSAuNXJlbTtmb250LXNpemU6Ljg3NXJlbTtsaW5lLWhlaWdodDoxLjU7Ym9yZGVyLXJhZGl1czouMnJlbX0uaW5wdXQtZ3JvdXAtbGc+LmN1c3RvbS1zZWxlY3QsLmlucHV0LWdyb3VwLXNtPi5jdXN0b20tc2VsZWN0e3BhZGRpbmctcmlnaHQ6MS43NXJlbX0uaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkPi5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZD4uaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmxhc3QtY2hpbGQpLC5pbnB1dC1ncm91cD4uaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCk+LmJ0biwuaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpPi5pbnB1dC1ncm91cC10ZXh0LC5pbnB1dC1ncm91cD4uaW5wdXQtZ3JvdXAtcHJlcGVuZD4uYnRuLC5pbnB1dC1ncm91cD4uaW5wdXQtZ3JvdXAtcHJlcGVuZD4uaW5wdXQtZ3JvdXAtdGV4dHtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjB9LmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1hcHBlbmQ+LmJ0biwuaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLWFwcGVuZD4uaW5wdXQtZ3JvdXAtdGV4dCwuaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQ+LmJ0bjpub3QoOmZpcnN0LWNoaWxkKSwuaW5wdXQtZ3JvdXA+LmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQ+LmlucHV0LWdyb3VwLXRleHQ6bm90KDpmaXJzdC1jaGlsZCksLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpPi5idG4sLmlucHV0LWdyb3VwPi5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpPi5pbnB1dC1ncm91cC10ZXh0e2JvcmRlci10b3AtbGVmdC1yYWRpdXM6MDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjB9LmN1c3RvbS1jb250cm9se3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6YmxvY2s7bWluLWhlaWdodDoxLjVyZW07cGFkZGluZy1sZWZ0OjEuNXJlbX0uY3VzdG9tLWNvbnRyb2wtaW5saW5le2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94O2Rpc3BsYXk6aW5saW5lLWZsZXg7bWFyZ2luLXJpZ2h0OjFyZW19LmN1c3RvbS1jb250cm9sLWlucHV0e3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6LTE7b3BhY2l0eTowfS5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3Jle2NvbG9yOiNmZmY7Ym9yZGVyLWNvbG9yOiMwMDdiZmY7YmFja2dyb3VuZC1jb2xvcjojMDA3YmZmfS5jdXN0b20tY29udHJvbC1pbnB1dDpmb2N1c34uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZXtib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoMCwxMjMsMjU1LC4yNSl9LmN1c3RvbS1jb250cm9sLWlucHV0OmZvY3VzOm5vdCg6Y2hlY2tlZCl+LmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmV7Ym9yZGVyLWNvbG9yOiM4MGJkZmZ9LmN1c3RvbS1jb250cm9sLWlucHV0Om5vdCg6ZGlzYWJsZWQpOmFjdGl2ZX4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZXtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6I2IzZDdmZjtib3JkZXItY29sb3I6I2IzZDdmZn0uY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWR+LmN1c3RvbS1jb250cm9sLWxhYmVse2NvbG9yOiM2Yzc1N2R9LmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6I2U5ZWNlZn0uY3VzdG9tLWNvbnRyb2wtbGFiZWx7cG9zaXRpb246cmVsYXRpdmU7bWFyZ2luLWJvdHRvbTowO3ZlcnRpY2FsLWFsaWduOnRvcH0uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LjI1cmVtO2xlZnQ6LTEuNXJlbTtkaXNwbGF5OmJsb2NrO3dpZHRoOjFyZW07aGVpZ2h0OjFyZW07cG9pbnRlci1ldmVudHM6bm9uZTtjb250ZW50OiIiO2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6I2FkYjViZCBzb2xpZCAxcHh9LmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LjI1cmVtO2xlZnQ6LTEuNXJlbTtkaXNwbGF5OmJsb2NrO3dpZHRoOjFyZW07aGVpZ2h0OjFyZW07Y29udGVudDoiIjtiYWNrZ3JvdW5kOm5vLXJlcGVhdCA1MCUvNTAlIDUwJX0uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3Jle2JvcmRlci1yYWRpdXM6LjI1cmVtfS5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlcntiYWNrZ3JvdW5kLWltYWdlOnVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBmaWxsPSclMjNmZmYnIGQ9J002LjU2NC43NWwtMy41OSAzLjYxMi0xLjUzOC0xLjU1TDAgNC4yNiAyLjk3NCA3LjI1IDggMi4xOTN6Jy8lM2UlM2Mvc3ZnJTNlIil9LmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW5kZXRlcm1pbmF0ZX4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZXtib3JkZXItY29sb3I6IzAwN2JmZjtiYWNrZ3JvdW5kLWNvbG9yOiMwMDdiZmZ9LmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW5kZXRlcm1pbmF0ZX4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVye2JhY2tncm91bmQtaW1hZ2U6dXJsKCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNCclM2UlM2NwYXRoIHN0cm9rZT0nJTIzZmZmJyBkPSdNMCAyaDQnLyUzZSUzYy9zdmclM2UiKX0uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDEyMywyNTUsLjUpfS5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkOmluZGV0ZXJtaW5hdGV+LmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMTIzLDI1NSwuNSl9LmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZXtib3JkZXItcmFkaXVzOjUwJX0uY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2Vkfi5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXJ7YmFja2dyb3VuZC1pbWFnZTp1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnJTNlJTNjY2lyY2xlIHI9JzMnIGZpbGw9JyUyM2ZmZicvJTNlJTNjL3N2ZyUzZSIpfS5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkOmNoZWNrZWR+LmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMTIzLDI1NSwuNSl9LmN1c3RvbS1zd2l0Y2h7cGFkZGluZy1sZWZ0OjIuMjVyZW19LmN1c3RvbS1zd2l0Y2ggLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmV7bGVmdDotMi4yNXJlbTt3aWR0aDoxLjc1cmVtO3BvaW50ZXItZXZlbnRzOmFsbDtib3JkZXItcmFkaXVzOi41cmVtfS5jdXN0b20tc3dpdGNoIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXJ7dG9wOmNhbGMoLjI1cmVtICsgMnB4KTtsZWZ0OmNhbGMoLTIuMjVyZW0gKyAycHgpO3dpZHRoOmNhbGMoMXJlbSAtIDRweCk7aGVpZ2h0OmNhbGMoMXJlbSAtIDRweCk7YmFja2dyb3VuZC1jb2xvcjojYWRiNWJkO2JvcmRlci1yYWRpdXM6LjVyZW07dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0LC13ZWJraXQtdHJhbnNmb3JtIC4xNXMgZWFzZS1pbi1vdXQ7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjE1cyBlYXNlLWluLW91dCxiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0O3RyYW5zaXRpb246dHJhbnNmb3JtIC4xNXMgZWFzZS1pbi1vdXQsYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCwtd2Via2l0LXRyYW5zZm9ybSAuMTVzIGVhc2UtaW4tb3V0fUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5jdXN0b20tc3dpdGNoIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXJ7dHJhbnNpdGlvbjpub25lfX0uY3VzdG9tLXN3aXRjaCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVye2JhY2tncm91bmQtY29sb3I6I2ZmZjstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC43NXJlbSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLjc1cmVtKX0uY3VzdG9tLXN3aXRjaCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQ6Y2hlY2tlZH4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwxMjMsMjU1LC41KX0uY3VzdG9tLXNlbGVjdHtkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDoxMDAlO2hlaWdodDpjYWxjKDEuNWVtICsgLjc1cmVtICsgMnB4KTtwYWRkaW5nOi4zNzVyZW0gMS43NXJlbSAuMzc1cmVtIC43NXJlbTtmb250LXNpemU6MXJlbTtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MS41O2NvbG9yOiM0OTUwNTc7dmVydGljYWwtYWxpZ246bWlkZGxlO2JhY2tncm91bmQ6dXJsKCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDQgNSclM2UlM2NwYXRoIGZpbGw9JyUyMzM0M2E0MCcgZD0nTTIgMEwwIDJoNHptMCA1TDAgM2g0eicvJTNlJTNjL3N2ZyUzZSIpIG5vLXJlcGVhdCByaWdodCAuNzVyZW0gY2VudGVyLzhweCAxMHB4O2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNjZWQ0ZGE7Ym9yZGVyLXJhZGl1czouMjVyZW07LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7LW1vei1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lfS5jdXN0b20tc2VsZWN0OmZvY3Vze2JvcmRlci1jb2xvcjojODBiZGZmO291dGxpbmU6MDtib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoMCwxMjMsMjU1LC4yNSl9LmN1c3RvbS1zZWxlY3Q6Zm9jdXM6Oi1tcy12YWx1ZXtjb2xvcjojNDk1MDU3O2JhY2tncm91bmQtY29sb3I6I2ZmZn0uY3VzdG9tLXNlbGVjdFttdWx0aXBsZV0sLmN1c3RvbS1zZWxlY3Rbc2l6ZV06bm90KFtzaXplPSIxIl0pe2hlaWdodDphdXRvO3BhZGRpbmctcmlnaHQ6Ljc1cmVtO2JhY2tncm91bmQtaW1hZ2U6bm9uZX0uY3VzdG9tLXNlbGVjdDpkaXNhYmxlZHtjb2xvcjojNmM3NTdkO2JhY2tncm91bmQtY29sb3I6I2U5ZWNlZn0uY3VzdG9tLXNlbGVjdDo6LW1zLWV4cGFuZHtkaXNwbGF5Om5vbmV9LmN1c3RvbS1zZWxlY3Qtc217aGVpZ2h0OmNhbGMoMS41ZW0gKyAuNXJlbSArIDJweCk7cGFkZGluZy10b3A6LjI1cmVtO3BhZGRpbmctYm90dG9tOi4yNXJlbTtwYWRkaW5nLWxlZnQ6LjVyZW07Zm9udC1zaXplOi44NzVyZW19LmN1c3RvbS1zZWxlY3QtbGd7aGVpZ2h0OmNhbGMoMS41ZW0gKyAxcmVtICsgMnB4KTtwYWRkaW5nLXRvcDouNXJlbTtwYWRkaW5nLWJvdHRvbTouNXJlbTtwYWRkaW5nLWxlZnQ6MXJlbTtmb250LXNpemU6MS4yNXJlbX0uY3VzdG9tLWZpbGV7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MTAwJTtoZWlnaHQ6Y2FsYygxLjVlbSArIC43NXJlbSArIDJweCk7bWFyZ2luLWJvdHRvbTowfS5jdXN0b20tZmlsZS1pbnB1dHtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjI7d2lkdGg6MTAwJTtoZWlnaHQ6Y2FsYygxLjVlbSArIC43NXJlbSArIDJweCk7bWFyZ2luOjA7b3BhY2l0eTowfS5jdXN0b20tZmlsZS1pbnB1dDpmb2N1c34uY3VzdG9tLWZpbGUtbGFiZWx7Ym9yZGVyLWNvbG9yOiM4MGJkZmY7Ym94LXNoYWRvdzowIDAgMCAuMnJlbSByZ2JhKDAsMTIzLDI1NSwuMjUpfS5jdXN0b20tZmlsZS1pbnB1dDpkaXNhYmxlZH4uY3VzdG9tLWZpbGUtbGFiZWx7YmFja2dyb3VuZC1jb2xvcjojZTllY2VmfS5jdXN0b20tZmlsZS1pbnB1dDpsYW5nKGVuKX4uY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVye2NvbnRlbnQ6IkJyb3dzZSJ9LmN1c3RvbS1maWxlLWlucHV0fi5jdXN0b20tZmlsZS1sYWJlbFtkYXRhLWJyb3dzZV06OmFmdGVye2NvbnRlbnQ6YXR0cihkYXRhLWJyb3dzZSl9LmN1c3RvbS1maWxlLWxhYmVse3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7bGVmdDowO3otaW5kZXg6MTtoZWlnaHQ6Y2FsYygxLjVlbSArIC43NXJlbSArIDJweCk7cGFkZGluZzouMzc1cmVtIC43NXJlbTtmb250LXdlaWdodDo0MDA7bGluZS1oZWlnaHQ6MS41O2NvbG9yOiM0OTUwNTc7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlcjoxcHggc29saWQgI2NlZDRkYTtib3JkZXItcmFkaXVzOi4yNXJlbX0uY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7ei1pbmRleDozO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OmNhbGMoMS41ZW0gKyAuNzVyZW0pO3BhZGRpbmc6LjM3NXJlbSAuNzVyZW07bGluZS1oZWlnaHQ6MS41O2NvbG9yOiM0OTUwNTc7Y29udGVudDoiQnJvd3NlIjtiYWNrZ3JvdW5kLWNvbG9yOiNlOWVjZWY7Ym9yZGVyLWxlZnQ6aW5oZXJpdDtib3JkZXItcmFkaXVzOjAgLjI1cmVtIC4yNXJlbSAwfS5jdXN0b20tcmFuZ2V7d2lkdGg6MTAwJTtoZWlnaHQ6Y2FsYygxcmVtICsgLjRyZW0pO3BhZGRpbmc6MDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Oy13ZWJraXQtYXBwZWFyYW5jZTpub25lOy1tb3otYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZX0uY3VzdG9tLXJhbmdlOmZvY3Vze291dGxpbmU6MH0uY3VzdG9tLXJhbmdlOmZvY3VzOjotd2Via2l0LXNsaWRlci10aHVtYntib3gtc2hhZG93OjAgMCAwIDFweCAjZmZmLDAgMCAwIC4ycmVtIHJnYmEoMCwxMjMsMjU1LC4yNSl9LmN1c3RvbS1yYW5nZTpmb2N1czo6LW1vei1yYW5nZS10aHVtYntib3gtc2hhZG93OjAgMCAwIDFweCAjZmZmLDAgMCAwIC4ycmVtIHJnYmEoMCwxMjMsMjU1LC4yNSl9LmN1c3RvbS1yYW5nZTpmb2N1czo6LW1zLXRodW1ie2JveC1zaGFkb3c6MCAwIDAgMXB4ICNmZmYsMCAwIDAgLjJyZW0gcmdiYSgwLDEyMywyNTUsLjI1KX0uY3VzdG9tLXJhbmdlOjotbW96LWZvY3VzLW91dGVye2JvcmRlcjowfS5jdXN0b20tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXRodW1ie3dpZHRoOjFyZW07aGVpZ2h0OjFyZW07bWFyZ2luLXRvcDotLjI1cmVtO2JhY2tncm91bmQtY29sb3I6IzAwN2JmZjtib3JkZXI6MDtib3JkZXItcmFkaXVzOjFyZW07dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0Oy13ZWJraXQtYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZX1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsuY3VzdG9tLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYnt0cmFuc2l0aW9uOm5vbmV9fS5jdXN0b20tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXRodW1iOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiNiM2Q3ZmZ9LmN1c3RvbS1yYW5nZTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2t7d2lkdGg6MTAwJTtoZWlnaHQ6LjVyZW07Y29sb3I6dHJhbnNwYXJlbnQ7Y3Vyc29yOnBvaW50ZXI7YmFja2dyb3VuZC1jb2xvcjojZGVlMmU2O2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOjFyZW19LmN1c3RvbS1yYW5nZTo6LW1vei1yYW5nZS10aHVtYnt3aWR0aDoxcmVtO2hlaWdodDoxcmVtO2JhY2tncm91bmQtY29sb3I6IzAwN2JmZjtib3JkZXI6MDtib3JkZXItcmFkaXVzOjFyZW07dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0Oy1tb3otYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZX1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsuY3VzdG9tLXJhbmdlOjotbW96LXJhbmdlLXRodW1ie3RyYW5zaXRpb246bm9uZX19LmN1c3RvbS1yYW5nZTo6LW1vei1yYW5nZS10aHVtYjphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjojYjNkN2ZmfS5jdXN0b20tcmFuZ2U6Oi1tb3otcmFuZ2UtdHJhY2t7d2lkdGg6MTAwJTtoZWlnaHQ6LjVyZW07Y29sb3I6dHJhbnNwYXJlbnQ7Y3Vyc29yOnBvaW50ZXI7YmFja2dyb3VuZC1jb2xvcjojZGVlMmU2O2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOjFyZW19LmN1c3RvbS1yYW5nZTo6LW1zLXRodW1ie3dpZHRoOjFyZW07aGVpZ2h0OjFyZW07bWFyZ2luLXRvcDowO21hcmdpbi1yaWdodDouMnJlbTttYXJnaW4tbGVmdDouMnJlbTtiYWNrZ3JvdW5kLWNvbG9yOiMwMDdiZmY7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czoxcmVtO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dDthcHBlYXJhbmNlOm5vbmV9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmN1c3RvbS1yYW5nZTo6LW1zLXRodW1ie3RyYW5zaXRpb246bm9uZX19LmN1c3RvbS1yYW5nZTo6LW1zLXRodW1iOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiNiM2Q3ZmZ9LmN1c3RvbS1yYW5nZTo6LW1zLXRyYWNre3dpZHRoOjEwMCU7aGVpZ2h0Oi41cmVtO2NvbG9yOnRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlci13aWR0aDouNXJlbX0uY3VzdG9tLXJhbmdlOjotbXMtZmlsbC1sb3dlcntiYWNrZ3JvdW5kLWNvbG9yOiNkZWUyZTY7Ym9yZGVyLXJhZGl1czoxcmVtfS5jdXN0b20tcmFuZ2U6Oi1tcy1maWxsLXVwcGVye21hcmdpbi1yaWdodDoxNXB4O2JhY2tncm91bmQtY29sb3I6I2RlZTJlNjtib3JkZXItcmFkaXVzOjFyZW19LmN1c3RvbS1yYW5nZTpkaXNhYmxlZDo6LXdlYmtpdC1zbGlkZXItdGh1bWJ7YmFja2dyb3VuZC1jb2xvcjojYWRiNWJkfS5jdXN0b20tcmFuZ2U6ZGlzYWJsZWQ6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNre2N1cnNvcjpkZWZhdWx0fS5jdXN0b20tcmFuZ2U6ZGlzYWJsZWQ6Oi1tb3otcmFuZ2UtdGh1bWJ7YmFja2dyb3VuZC1jb2xvcjojYWRiNWJkfS5jdXN0b20tcmFuZ2U6ZGlzYWJsZWQ6Oi1tb3otcmFuZ2UtdHJhY2t7Y3Vyc29yOmRlZmF1bHR9LmN1c3RvbS1yYW5nZTpkaXNhYmxlZDo6LW1zLXRodW1ie2JhY2tncm91bmQtY29sb3I6I2FkYjViZH0uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwuY3VzdG9tLWZpbGUtbGFiZWwsLmN1c3RvbS1zZWxlY3R7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0fUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLC5jdXN0b20tZmlsZS1sYWJlbCwuY3VzdG9tLXNlbGVjdHt0cmFuc2l0aW9uOm5vbmV9fS5uYXZ7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtd3JhcDp3cmFwO2ZsZXgtd3JhcDp3cmFwO3BhZGRpbmctbGVmdDowO21hcmdpbi1ib3R0b206MDtsaXN0LXN0eWxlOm5vbmV9Lm5hdi1saW5re2Rpc3BsYXk6YmxvY2s7cGFkZGluZzouNXJlbSAxcmVtfS5uYXYtbGluazpmb2N1cywubmF2LWxpbms6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOm5vbmV9Lm5hdi1saW5rLmRpc2FibGVke2NvbG9yOiM2Yzc1N2Q7cG9pbnRlci1ldmVudHM6bm9uZTtjdXJzb3I6ZGVmYXVsdH0ubmF2LXRhYnN7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2RlZTJlNn0ubmF2LXRhYnMgLm5hdi1pdGVte21hcmdpbi1ib3R0b206LTFweH0ubmF2LXRhYnMgLm5hdi1saW5re2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czouMjVyZW07Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6LjI1cmVtfS5uYXYtdGFicyAubmF2LWxpbms6Zm9jdXMsLm5hdi10YWJzIC5uYXYtbGluazpob3Zlcntib3JkZXItY29sb3I6I2U5ZWNlZiAjZTllY2VmICNkZWUyZTZ9Lm5hdi10YWJzIC5uYXYtbGluay5kaXNhYmxlZHtjb2xvcjojNmM3NTdkO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fS5uYXYtdGFicyAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmssLm5hdi10YWJzIC5uYXYtbGluay5hY3RpdmV7Y29sb3I6IzQ5NTA1NztiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyLWNvbG9yOiNkZWUyZTYgI2RlZTJlNiAjZmZmfS5uYXYtdGFicyAuZHJvcGRvd24tbWVudXttYXJnaW4tdG9wOi0xcHg7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjB9Lm5hdi1waWxscyAubmF2LWxpbmt7Ym9yZGVyLXJhZGl1czouMjVyZW19Lm5hdi1waWxscyAubmF2LWxpbmsuYWN0aXZlLC5uYXYtcGlsbHMgLnNob3c+Lm5hdi1saW5re2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMDA3YmZmfS5uYXYtZmlsbCAubmF2LWl0ZW17LW1zLWZsZXg6MSAxIGF1dG87ZmxleDoxIDEgYXV0bzt0ZXh0LWFsaWduOmNlbnRlcn0ubmF2LWp1c3RpZmllZCAubmF2LWl0ZW17LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6MDtmbGV4LWJhc2lzOjA7LW1zLWZsZXgtcG9zaXRpdmU6MTtmbGV4LWdyb3c6MTt0ZXh0LWFsaWduOmNlbnRlcn0udGFiLWNvbnRlbnQ+LnRhYi1wYW5le2Rpc3BsYXk6bm9uZX0udGFiLWNvbnRlbnQ+LmFjdGl2ZXtkaXNwbGF5OmJsb2NrfS5uYXZiYXJ7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtd3JhcDp3cmFwO2ZsZXgtd3JhcDp3cmFwOy1tcy1mbGV4LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1zLWZsZXgtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO3BhZGRpbmc6LjVyZW0gMXJlbX0ubmF2YmFyPi5jb250YWluZXIsLm5hdmJhcj4uY29udGFpbmVyLWZsdWlke2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LXdyYXA6d3JhcDtmbGV4LXdyYXA6d3JhcDstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tcy1mbGV4LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0ubmF2YmFyLWJyYW5ke2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmctdG9wOi4zMTI1cmVtO3BhZGRpbmctYm90dG9tOi4zMTI1cmVtO21hcmdpbi1yaWdodDoxcmVtO2ZvbnQtc2l6ZToxLjI1cmVtO2xpbmUtaGVpZ2h0OmluaGVyaXQ7d2hpdGUtc3BhY2U6bm93cmFwfS5uYXZiYXItYnJhbmQ6Zm9jdXMsLm5hdmJhci1icmFuZDpob3Zlcnt0ZXh0LWRlY29yYXRpb246bm9uZX0ubmF2YmFyLW5hdntkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtwYWRkaW5nLWxlZnQ6MDttYXJnaW4tYm90dG9tOjA7bGlzdC1zdHlsZTpub25lfS5uYXZiYXItbmF2IC5uYXYtbGlua3twYWRkaW5nLXJpZ2h0OjA7cGFkZGluZy1sZWZ0OjB9Lm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnV7cG9zaXRpb246c3RhdGljO2Zsb2F0Om5vbmV9Lm5hdmJhci10ZXh0e2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmctdG9wOi41cmVtO3BhZGRpbmctYm90dG9tOi41cmVtfS5uYXZiYXItY29sbGFwc2V7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6MTAwJTtmbGV4LWJhc2lzOjEwMCU7LW1zLWZsZXgtcG9zaXRpdmU6MTtmbGV4LWdyb3c6MTstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS5uYXZiYXItdG9nZ2xlcntwYWRkaW5nOi4yNXJlbSAuNzVyZW07Zm9udC1zaXplOjEuMjVyZW07bGluZS1oZWlnaHQ6MTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czouMjVyZW19Lm5hdmJhci10b2dnbGVyOmZvY3VzLC5uYXZiYXItdG9nZ2xlcjpob3Zlcnt0ZXh0LWRlY29yYXRpb246bm9uZX0ubmF2YmFyLXRvZ2dsZXItaWNvbntkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDoxLjVlbTtoZWlnaHQ6MS41ZW07dmVydGljYWwtYWxpZ246bWlkZGxlO2NvbnRlbnQ6IiI7YmFja2dyb3VuZDpuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtiYWNrZ3JvdW5kLXNpemU6MTAwJSAxMDAlfUBtZWRpYSAobWF4LXdpZHRoOjU3NS45OHB4KXsubmF2YmFyLWV4cGFuZC1zbT4uY29udGFpbmVyLC5uYXZiYXItZXhwYW5kLXNtPi5jb250YWluZXItZmx1aWR7cGFkZGluZy1yaWdodDowO3BhZGRpbmctbGVmdDowfX1AbWVkaWEgKG1pbi13aWR0aDo1NzZweCl7Lm5hdmJhci1leHBhbmQtc217LW1zLWZsZXgtZmxvdzpyb3cgbm93cmFwO2ZsZXgtZmxvdzpyb3cgbm93cmFwOy1tcy1mbGV4LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9Lm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXZ7LW1zLWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3d9Lm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnV7cG9zaXRpb246YWJzb2x1dGV9Lm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYgLm5hdi1saW5re3BhZGRpbmctcmlnaHQ6LjVyZW07cGFkZGluZy1sZWZ0Oi41cmVtfS5uYXZiYXItZXhwYW5kLXNtPi5jb250YWluZXIsLm5hdmJhci1leHBhbmQtc20+LmNvbnRhaW5lci1mbHVpZHstbXMtZmxleC13cmFwOm5vd3JhcDtmbGV4LXdyYXA6bm93cmFwfS5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItY29sbGFwc2V7ZGlzcGxheTotbXMtZmxleGJveCFpbXBvcnRhbnQ7ZGlzcGxheTpmbGV4IWltcG9ydGFudDstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTphdXRvO2ZsZXgtYmFzaXM6YXV0b30ubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLXRvZ2dsZXJ7ZGlzcGxheTpub25lfX1AbWVkaWEgKG1heC13aWR0aDo3NjcuOThweCl7Lm5hdmJhci1leHBhbmQtbWQ+LmNvbnRhaW5lciwubmF2YmFyLWV4cGFuZC1tZD4uY29udGFpbmVyLWZsdWlke3BhZGRpbmctcmlnaHQ6MDtwYWRkaW5nLWxlZnQ6MH19QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5uYXZiYXItZXhwYW5kLW1key1tcy1mbGV4LWZsb3c6cm93IG5vd3JhcDtmbGV4LWZsb3c6cm93IG5vd3JhcDstbXMtZmxleC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItbmF2ey1tcy1mbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC1kaXJlY3Rpb246cm93fS5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51e3Bvc2l0aW9uOmFic29sdXRlfS5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItbmF2IC5uYXYtbGlua3twYWRkaW5nLXJpZ2h0Oi41cmVtO3BhZGRpbmctbGVmdDouNXJlbX0ubmF2YmFyLWV4cGFuZC1tZD4uY29udGFpbmVyLC5uYXZiYXItZXhwYW5kLW1kPi5jb250YWluZXItZmx1aWR7LW1zLWZsZXgtd3JhcDpub3dyYXA7ZmxleC13cmFwOm5vd3JhcH0ubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLWNvbGxhcHNle2Rpc3BsYXk6LW1zLWZsZXhib3ghaW1wb3J0YW50O2Rpc3BsYXk6ZmxleCFpbXBvcnRhbnQ7LW1zLWZsZXgtcHJlZmVycmVkLXNpemU6YXV0bztmbGV4LWJhc2lzOmF1dG99Lm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci10b2dnbGVye2Rpc3BsYXk6bm9uZX19QG1lZGlhIChtYXgtd2lkdGg6OTkxLjk4cHgpey5uYXZiYXItZXhwYW5kLWxnPi5jb250YWluZXIsLm5hdmJhci1leHBhbmQtbGc+LmNvbnRhaW5lci1mbHVpZHtwYWRkaW5nLXJpZ2h0OjA7cGFkZGluZy1sZWZ0OjB9fUBtZWRpYSAobWluLXdpZHRoOjk5MnB4KXsubmF2YmFyLWV4cGFuZC1sZ3stbXMtZmxleC1mbG93OnJvdyBub3dyYXA7ZmxleC1mbG93OnJvdyBub3dyYXA7LW1zLWZsZXgtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0ubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdnstbXMtZmxleC1kaXJlY3Rpb246cm93O2ZsZXgtZGlyZWN0aW9uOnJvd30ubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudXtwb3NpdGlvbjphYnNvbHV0ZX0ubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLW5hdiAubmF2LWxpbmt7cGFkZGluZy1yaWdodDouNXJlbTtwYWRkaW5nLWxlZnQ6LjVyZW19Lm5hdmJhci1leHBhbmQtbGc+LmNvbnRhaW5lciwubmF2YmFyLWV4cGFuZC1sZz4uY29udGFpbmVyLWZsdWlkey1tcy1mbGV4LXdyYXA6bm93cmFwO2ZsZXgtd3JhcDpub3dyYXB9Lm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1jb2xsYXBzZXtkaXNwbGF5Oi1tcy1mbGV4Ym94IWltcG9ydGFudDtkaXNwbGF5OmZsZXghaW1wb3J0YW50Oy1tcy1mbGV4LXByZWZlcnJlZC1zaXplOmF1dG87ZmxleC1iYXNpczphdXRvfS5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItdG9nZ2xlcntkaXNwbGF5Om5vbmV9fUBtZWRpYSAobWF4LXdpZHRoOjExOTkuOThweCl7Lm5hdmJhci1leHBhbmQteGw+LmNvbnRhaW5lciwubmF2YmFyLWV4cGFuZC14bD4uY29udGFpbmVyLWZsdWlke3BhZGRpbmctcmlnaHQ6MDtwYWRkaW5nLWxlZnQ6MH19QG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KXsubmF2YmFyLWV4cGFuZC14bHstbXMtZmxleC1mbG93OnJvdyBub3dyYXA7ZmxleC1mbG93OnJvdyBub3dyYXA7LW1zLWZsZXgtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0ubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdnstbXMtZmxleC1kaXJlY3Rpb246cm93O2ZsZXgtZGlyZWN0aW9uOnJvd30ubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudXtwb3NpdGlvbjphYnNvbHV0ZX0ubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdiAubmF2LWxpbmt7cGFkZGluZy1yaWdodDouNXJlbTtwYWRkaW5nLWxlZnQ6LjVyZW19Lm5hdmJhci1leHBhbmQteGw+LmNvbnRhaW5lciwubmF2YmFyLWV4cGFuZC14bD4uY29udGFpbmVyLWZsdWlkey1tcy1mbGV4LXdyYXA6bm93cmFwO2ZsZXgtd3JhcDpub3dyYXB9Lm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1jb2xsYXBzZXtkaXNwbGF5Oi1tcy1mbGV4Ym94IWltcG9ydGFudDtkaXNwbGF5OmZsZXghaW1wb3J0YW50Oy1tcy1mbGV4LXByZWZlcnJlZC1zaXplOmF1dG87ZmxleC1iYXNpczphdXRvfS5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItdG9nZ2xlcntkaXNwbGF5Om5vbmV9fS5uYXZiYXItZXhwYW5key1tcy1mbGV4LWZsb3c6cm93IG5vd3JhcDtmbGV4LWZsb3c6cm93IG5vd3JhcDstbXMtZmxleC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS5uYXZiYXItZXhwYW5kPi5jb250YWluZXIsLm5hdmJhci1leHBhbmQ+LmNvbnRhaW5lci1mbHVpZHtwYWRkaW5nLXJpZ2h0OjA7cGFkZGluZy1sZWZ0OjB9Lm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXZ7LW1zLWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3d9Lm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnV7cG9zaXRpb246YWJzb2x1dGV9Lm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYgLm5hdi1saW5re3BhZGRpbmctcmlnaHQ6LjVyZW07cGFkZGluZy1sZWZ0Oi41cmVtfS5uYXZiYXItZXhwYW5kPi5jb250YWluZXIsLm5hdmJhci1leHBhbmQ+LmNvbnRhaW5lci1mbHVpZHstbXMtZmxleC13cmFwOm5vd3JhcDtmbGV4LXdyYXA6bm93cmFwfS5uYXZiYXItZXhwYW5kIC5uYXZiYXItY29sbGFwc2V7ZGlzcGxheTotbXMtZmxleGJveCFpbXBvcnRhbnQ7ZGlzcGxheTpmbGV4IWltcG9ydGFudDstbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTphdXRvO2ZsZXgtYmFzaXM6YXV0b30ubmF2YmFyLWV4cGFuZCAubmF2YmFyLXRvZ2dsZXJ7ZGlzcGxheTpub25lfS5uYXZiYXItbGlnaHQgLm5hdmJhci1icmFuZHtjb2xvcjpyZ2JhKDAsMCwwLC45KX0ubmF2YmFyLWxpZ2h0IC5uYXZiYXItYnJhbmQ6Zm9jdXMsLm5hdmJhci1saWdodCAubmF2YmFyLWJyYW5kOmhvdmVye2NvbG9yOnJnYmEoMCwwLDAsLjkpfS5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5re2NvbG9yOnJnYmEoMCwwLDAsLjUpfS5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rOmZvY3VzLC5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rOmhvdmVye2NvbG9yOnJnYmEoMCwwLDAsLjcpfS5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLmRpc2FibGVke2NvbG9yOnJnYmEoMCwwLDAsLjMpfS5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLmFjdGl2ZT4ubmF2LWxpbmssLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbmsuYWN0aXZlLC5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLnNob3csLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAuc2hvdz4ubmF2LWxpbmt7Y29sb3I6cmdiYSgwLDAsMCwuOSl9Lm5hdmJhci1saWdodCAubmF2YmFyLXRvZ2dsZXJ7Y29sb3I6cmdiYSgwLDAsMCwuNSk7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsLjEpfS5uYXZiYXItbGlnaHQgLm5hdmJhci10b2dnbGVyLWljb257YmFja2dyb3VuZC1pbWFnZTp1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2Nzdmcgdmlld0JveD0nMCAwIDMwIDMwJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNlJTNjcGF0aCBzdHJva2U9J3JnYmEoMCwgMCwgMCwgMC41KScgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzZSUzYy9zdmclM2UiKX0ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dHtjb2xvcjpyZ2JhKDAsMCwwLC41KX0ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCBhe2NvbG9yOnJnYmEoMCwwLDAsLjkpfS5uYXZiYXItbGlnaHQgLm5hdmJhci10ZXh0IGE6Zm9jdXMsLm5hdmJhci1saWdodCAubmF2YmFyLXRleHQgYTpob3Zlcntjb2xvcjpyZ2JhKDAsMCwwLC45KX0ubmF2YmFyLWRhcmsgLm5hdmJhci1icmFuZHtjb2xvcjojZmZmfS5uYXZiYXItZGFyayAubmF2YmFyLWJyYW5kOmZvY3VzLC5uYXZiYXItZGFyayAubmF2YmFyLWJyYW5kOmhvdmVye2NvbG9yOiNmZmZ9Lm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGlua3tjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC41KX0ubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rOmZvY3VzLC5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbms6aG92ZXJ7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNzUpfS5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsuZGlzYWJsZWR7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuMjUpfS5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAuYWN0aXZlPi5uYXYtbGluaywubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rLmFjdGl2ZSwubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rLnNob3csLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5zaG93Pi5uYXYtbGlua3tjb2xvcjojZmZmfS5uYXZiYXItZGFyayAubmF2YmFyLXRvZ2dsZXJ7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNSk7Ym9yZGVyLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjEpfS5uYXZiYXItZGFyayAubmF2YmFyLXRvZ2dsZXItaWNvbntiYWNrZ3JvdW5kLWltYWdlOnVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB2aWV3Qm94PScwIDAgMzAgMzAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM2UlM2NwYXRoIHN0cm9rZT0ncmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpJyBzdHJva2Utd2lkdGg9JzInIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvJTNlJTNjL3N2ZyUzZSIpfS5uYXZiYXItZGFyayAubmF2YmFyLXRleHR7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNSl9Lm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCBhe2NvbG9yOiNmZmZ9Lm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCBhOmZvY3VzLC5uYXZiYXItZGFyayAubmF2YmFyLXRleHQgYTpob3Zlcntjb2xvcjojZmZmfS5jYXJke3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1uO21pbi13aWR0aDowO3dvcmQtd3JhcDpicmVhay13b3JkO2JhY2tncm91bmQtY29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNsaXA6Ym9yZGVyLWJveDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjEyNSk7Ym9yZGVyLXJhZGl1czouMjVyZW19LmNhcmQ+aHJ7bWFyZ2luLXJpZ2h0OjA7bWFyZ2luLWxlZnQ6MH0uY2FyZD4ubGlzdC1ncm91cDpmaXJzdC1jaGlsZCAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxke2JvcmRlci10b3AtbGVmdC1yYWRpdXM6LjI1cmVtO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOi4yNXJlbX0uY2FyZD4ubGlzdC1ncm91cDpsYXN0LWNoaWxkIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZHtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czouMjVyZW07Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czouMjVyZW19LmNhcmQtYm9keXstbXMtZmxleDoxIDEgYXV0bztmbGV4OjEgMSBhdXRvO3BhZGRpbmc6MS4yNXJlbX0uY2FyZC10aXRsZXttYXJnaW4tYm90dG9tOi43NXJlbX0uY2FyZC1zdWJ0aXRsZXttYXJnaW4tdG9wOi0uMzc1cmVtO21hcmdpbi1ib3R0b206MH0uY2FyZC10ZXh0Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5jYXJkLWxpbms6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOm5vbmV9LmNhcmQtbGluaysuY2FyZC1saW5re21hcmdpbi1sZWZ0OjEuMjVyZW19LmNhcmQtaGVhZGVye3BhZGRpbmc6Ljc1cmVtIDEuMjVyZW07bWFyZ2luLWJvdHRvbTowO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMDMpO2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjEyNSl9LmNhcmQtaGVhZGVyOmZpcnN0LWNoaWxke2JvcmRlci1yYWRpdXM6Y2FsYyguMjVyZW0gLSAxcHgpIGNhbGMoLjI1cmVtIC0gMXB4KSAwIDB9LmNhcmQtaGVhZGVyKy5saXN0LWdyb3VwIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGR7Ym9yZGVyLXRvcDowfS5jYXJkLWZvb3RlcntwYWRkaW5nOi43NXJlbSAxLjI1cmVtO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMDMpO2JvcmRlci10b3A6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjEyNSl9LmNhcmQtZm9vdGVyOmxhc3QtY2hpbGR7Ym9yZGVyLXJhZGl1czowIDAgY2FsYyguMjVyZW0gLSAxcHgpIGNhbGMoLjI1cmVtIC0gMXB4KX0uY2FyZC1oZWFkZXItdGFic3ttYXJnaW4tcmlnaHQ6LS42MjVyZW07bWFyZ2luLWJvdHRvbTotLjc1cmVtO21hcmdpbi1sZWZ0Oi0uNjI1cmVtO2JvcmRlci1ib3R0b206MH0uY2FyZC1oZWFkZXItcGlsbHN7bWFyZ2luLXJpZ2h0Oi0uNjI1cmVtO21hcmdpbi1sZWZ0Oi0uNjI1cmVtfS5jYXJkLWltZy1vdmVybGF5e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowO3BhZGRpbmc6MS4yNXJlbX0uY2FyZC1pbWd7d2lkdGg6MTAwJTtib3JkZXItcmFkaXVzOmNhbGMoLjI1cmVtIC0gMXB4KX0uY2FyZC1pbWctdG9we3dpZHRoOjEwMCU7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czpjYWxjKC4yNXJlbSAtIDFweCk7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6Y2FsYyguMjVyZW0gLSAxcHgpfS5jYXJkLWltZy1ib3R0b217d2lkdGg6MTAwJTtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czpjYWxjKC4yNXJlbSAtIDFweCk7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czpjYWxjKC4yNXJlbSAtIDFweCl9LmNhcmQtZGVja3tkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uY2FyZC1kZWNrIC5jYXJke21hcmdpbi1ib3R0b206MTVweH1AbWVkaWEgKG1pbi13aWR0aDo1NzZweCl7LmNhcmQtZGVja3stbXMtZmxleC1mbG93OnJvdyB3cmFwO2ZsZXgtZmxvdzpyb3cgd3JhcDttYXJnaW4tcmlnaHQ6LTE1cHg7bWFyZ2luLWxlZnQ6LTE1cHh9LmNhcmQtZGVjayAuY2FyZHtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleDoxIDAgMCU7ZmxleDoxIDAgMCU7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47bWFyZ2luLXJpZ2h0OjE1cHg7bWFyZ2luLWJvdHRvbTowO21hcmdpbi1sZWZ0OjE1cHh9fS5jYXJkLWdyb3Vwe2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5jYXJkLWdyb3VwPi5jYXJke21hcmdpbi1ib3R0b206MTVweH1AbWVkaWEgKG1pbi13aWR0aDo1NzZweCl7LmNhcmQtZ3JvdXB7LW1zLWZsZXgtZmxvdzpyb3cgd3JhcDtmbGV4LWZsb3c6cm93IHdyYXB9LmNhcmQtZ3JvdXA+LmNhcmR7LW1zLWZsZXg6MSAwIDAlO2ZsZXg6MSAwIDAlO21hcmdpbi1ib3R0b206MH0uY2FyZC1ncm91cD4uY2FyZCsuY2FyZHttYXJnaW4tbGVmdDowO2JvcmRlci1sZWZ0OjB9LmNhcmQtZ3JvdXA+LmNhcmQ6bm90KDpsYXN0LWNoaWxkKXtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czowO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjB9LmNhcmQtZ3JvdXA+LmNhcmQ6bm90KDpsYXN0LWNoaWxkKSAuY2FyZC1oZWFkZXIsLmNhcmQtZ3JvdXA+LmNhcmQ6bm90KDpsYXN0LWNoaWxkKSAuY2FyZC1pbWctdG9we2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjB9LmNhcmQtZ3JvdXA+LmNhcmQ6bm90KDpsYXN0LWNoaWxkKSAuY2FyZC1mb290ZXIsLmNhcmQtZ3JvdXA+LmNhcmQ6bm90KDpsYXN0LWNoaWxkKSAuY2FyZC1pbWctYm90dG9te2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjB9LmNhcmQtZ3JvdXA+LmNhcmQ6bm90KDpmaXJzdC1jaGlsZCl7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MH0uY2FyZC1ncm91cD4uY2FyZDpub3QoOmZpcnN0LWNoaWxkKSAuY2FyZC1oZWFkZXIsLmNhcmQtZ3JvdXA+LmNhcmQ6bm90KDpmaXJzdC1jaGlsZCkgLmNhcmQtaW1nLXRvcHtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjB9LmNhcmQtZ3JvdXA+LmNhcmQ6bm90KDpmaXJzdC1jaGlsZCkgLmNhcmQtZm9vdGVyLC5jYXJkLWdyb3VwPi5jYXJkOm5vdCg6Zmlyc3QtY2hpbGQpIC5jYXJkLWltZy1ib3R0b217Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czowfX0uY2FyZC1jb2x1bW5zIC5jYXJke21hcmdpbi1ib3R0b206Ljc1cmVtfUBtZWRpYSAobWluLXdpZHRoOjU3NnB4KXsuY2FyZC1jb2x1bW5zey13ZWJraXQtY29sdW1uLWNvdW50OjM7LW1vei1jb2x1bW4tY291bnQ6Mztjb2x1bW4tY291bnQ6Mzstd2Via2l0LWNvbHVtbi1nYXA6MS4yNXJlbTstbW96LWNvbHVtbi1nYXA6MS4yNXJlbTtjb2x1bW4tZ2FwOjEuMjVyZW07b3JwaGFuczoxO3dpZG93czoxfS5jYXJkLWNvbHVtbnMgLmNhcmR7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MTAwJX19LmFjY29yZGlvbj4uY2FyZHtvdmVyZmxvdzpoaWRkZW59LmFjY29yZGlvbj4uY2FyZDpub3QoOmZpcnN0LW9mLXR5cGUpIC5jYXJkLWhlYWRlcjpmaXJzdC1jaGlsZHtib3JkZXItcmFkaXVzOjB9LmFjY29yZGlvbj4uY2FyZDpub3QoOmZpcnN0LW9mLXR5cGUpOm5vdCg6bGFzdC1vZi10eXBlKXtib3JkZXItYm90dG9tOjA7Ym9yZGVyLXJhZGl1czowfS5hY2NvcmRpb24+LmNhcmQ6Zmlyc3Qtb2YtdHlwZXtib3JkZXItYm90dG9tOjA7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6MDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjB9LmFjY29yZGlvbj4uY2FyZDpsYXN0LW9mLXR5cGV7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czowO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjB9LmFjY29yZGlvbj4uY2FyZCAuY2FyZC1oZWFkZXJ7bWFyZ2luLWJvdHRvbTotMXB4fS5icmVhZGNydW1ie2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LXdyYXA6d3JhcDtmbGV4LXdyYXA6d3JhcDtwYWRkaW5nOi43NXJlbSAxcmVtO21hcmdpbi1ib3R0b206MXJlbTtsaXN0LXN0eWxlOm5vbmU7YmFja2dyb3VuZC1jb2xvcjojZTllY2VmO2JvcmRlci1yYWRpdXM6LjI1cmVtfS5icmVhZGNydW1iLWl0ZW0rLmJyZWFkY3J1bWItaXRlbXtwYWRkaW5nLWxlZnQ6LjVyZW19LmJyZWFkY3J1bWItaXRlbSsuYnJlYWRjcnVtYi1pdGVtOjpiZWZvcmV7ZGlzcGxheTppbmxpbmUtYmxvY2s7cGFkZGluZy1yaWdodDouNXJlbTtjb2xvcjojNmM3NTdkO2NvbnRlbnQ6Ii8ifS5icmVhZGNydW1iLWl0ZW0rLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3Jle3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9LmJyZWFkY3J1bWItaXRlbSsuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmV7dGV4dC1kZWNvcmF0aW9uOm5vbmV9LmJyZWFkY3J1bWItaXRlbS5hY3RpdmV7Y29sb3I6IzZjNzU3ZH0ucGFnaW5hdGlvbntkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDtwYWRkaW5nLWxlZnQ6MDtsaXN0LXN0eWxlOm5vbmU7Ym9yZGVyLXJhZGl1czouMjVyZW19LnBhZ2UtbGlua3twb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6LjVyZW0gLjc1cmVtO21hcmdpbi1sZWZ0Oi0xcHg7bGluZS1oZWlnaHQ6MS4yNTtjb2xvcjojMDA3YmZmO2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6MXB4IHNvbGlkICNkZWUyZTZ9LnBhZ2UtbGluazpob3Zlcnt6LWluZGV4OjI7Y29sb3I6IzAwNTZiMzt0ZXh0LWRlY29yYXRpb246bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOiNlOWVjZWY7Ym9yZGVyLWNvbG9yOiNkZWUyZTZ9LnBhZ2UtbGluazpmb2N1c3t6LWluZGV4OjI7b3V0bGluZTowO2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgwLDEyMywyNTUsLjI1KX0ucGFnZS1pdGVtOmZpcnN0LWNoaWxkIC5wYWdlLWxpbmt7bWFyZ2luLWxlZnQ6MDtib3JkZXItdG9wLWxlZnQtcmFkaXVzOi4yNXJlbTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOi4yNXJlbX0ucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGlua3tib3JkZXItdG9wLXJpZ2h0LXJhZGl1czouMjVyZW07Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6LjI1cmVtfS5wYWdlLWl0ZW0uYWN0aXZlIC5wYWdlLWxpbmt7ei1pbmRleDoxO2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMDA3YmZmO2JvcmRlci1jb2xvcjojMDA3YmZmfS5wYWdlLWl0ZW0uZGlzYWJsZWQgLnBhZ2UtbGlua3tjb2xvcjojNmM3NTdkO3BvaW50ZXItZXZlbnRzOm5vbmU7Y3Vyc29yOmF1dG87YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlci1jb2xvcjojZGVlMmU2fS5wYWdpbmF0aW9uLWxnIC5wYWdlLWxpbmt7cGFkZGluZzouNzVyZW0gMS41cmVtO2ZvbnQtc2l6ZToxLjI1cmVtO2xpbmUtaGVpZ2h0OjEuNX0ucGFnaW5hdGlvbi1sZyAucGFnZS1pdGVtOmZpcnN0LWNoaWxkIC5wYWdlLWxpbmt7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czouM3JlbTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOi4zcmVtfS5wYWdpbmF0aW9uLWxnIC5wYWdlLWl0ZW06bGFzdC1jaGlsZCAucGFnZS1saW5re2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOi4zcmVtO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOi4zcmVtfS5wYWdpbmF0aW9uLXNtIC5wYWdlLWxpbmt7cGFkZGluZzouMjVyZW0gLjVyZW07Zm9udC1zaXplOi44NzVyZW07bGluZS1oZWlnaHQ6MS41fS5wYWdpbmF0aW9uLXNtIC5wYWdlLWl0ZW06Zmlyc3QtY2hpbGQgLnBhZ2UtbGlua3tib3JkZXItdG9wLWxlZnQtcmFkaXVzOi4ycmVtO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6LjJyZW19LnBhZ2luYXRpb24tc20gLnBhZ2UtaXRlbTpsYXN0LWNoaWxkIC5wYWdlLWxpbmt7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6LjJyZW07Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6LjJyZW19LmJhZGdle2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmc6LjI1ZW0gLjRlbTtmb250LXNpemU6NzUlO2ZvbnQtd2VpZ2h0OjcwMDtsaW5lLWhlaWdodDoxO3RleHQtYWxpZ246Y2VudGVyO3doaXRlLXNwYWNlOm5vd3JhcDt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZTtib3JkZXItcmFkaXVzOi4yNXJlbTt0cmFuc2l0aW9uOmNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dH1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsuYmFkZ2V7dHJhbnNpdGlvbjpub25lfX1hLmJhZGdlOmZvY3VzLGEuYmFkZ2U6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOm5vbmV9LmJhZGdlOmVtcHR5e2Rpc3BsYXk6bm9uZX0uYnRuIC5iYWRnZXtwb3NpdGlvbjpyZWxhdGl2ZTt0b3A6LTFweH0uYmFkZ2UtcGlsbHtwYWRkaW5nLXJpZ2h0Oi42ZW07cGFkZGluZy1sZWZ0Oi42ZW07Ym9yZGVyLXJhZGl1czoxMHJlbX0uYmFkZ2UtcHJpbWFyeXtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzAwN2JmZn1hLmJhZGdlLXByaW1hcnk6Zm9jdXMsYS5iYWRnZS1wcmltYXJ5OmhvdmVye2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMDA2MmNjfWEuYmFkZ2UtcHJpbWFyeS5mb2N1cyxhLmJhZGdlLXByaW1hcnk6Zm9jdXN7b3V0bGluZTowO2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgwLDEyMywyNTUsLjUpfS5iYWRnZS1zZWNvbmRhcnl7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiM2Yzc1N2R9YS5iYWRnZS1zZWNvbmRhcnk6Zm9jdXMsYS5iYWRnZS1zZWNvbmRhcnk6aG92ZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiM1NDViNjJ9YS5iYWRnZS1zZWNvbmRhcnkuZm9jdXMsYS5iYWRnZS1zZWNvbmRhcnk6Zm9jdXN7b3V0bGluZTowO2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgxMDgsMTE3LDEyNSwuNSl9LmJhZGdlLXN1Y2Nlc3N7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMyOGE3NDV9YS5iYWRnZS1zdWNjZXNzOmZvY3VzLGEuYmFkZ2Utc3VjY2Vzczpob3Zlcntjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzFlN2UzNH1hLmJhZGdlLXN1Y2Nlc3MuZm9jdXMsYS5iYWRnZS1zdWNjZXNzOmZvY3Vze291dGxpbmU6MDtib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoNDAsMTY3LDY5LC41KX0uYmFkZ2UtaW5mb3tjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzE3YTJiOH1hLmJhZGdlLWluZm86Zm9jdXMsYS5iYWRnZS1pbmZvOmhvdmVye2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMTE3YThifWEuYmFkZ2UtaW5mby5mb2N1cyxhLmJhZGdlLWluZm86Zm9jdXN7b3V0bGluZTowO2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyMywxNjIsMTg0LC41KX0uYmFkZ2Utd2FybmluZ3tjb2xvcjojMjEyNTI5O2JhY2tncm91bmQtY29sb3I6I2ZmYzEwN31hLmJhZGdlLXdhcm5pbmc6Zm9jdXMsYS5iYWRnZS13YXJuaW5nOmhvdmVye2NvbG9yOiMyMTI1Mjk7YmFja2dyb3VuZC1jb2xvcjojZDM5ZTAwfWEuYmFkZ2Utd2FybmluZy5mb2N1cyxhLmJhZGdlLXdhcm5pbmc6Zm9jdXN7b3V0bGluZTowO2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyNTUsMTkzLDcsLjUpfS5iYWRnZS1kYW5nZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiNkYzM1NDV9YS5iYWRnZS1kYW5nZXI6Zm9jdXMsYS5iYWRnZS1kYW5nZXI6aG92ZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiNiZDIxMzB9YS5iYWRnZS1kYW5nZXIuZm9jdXMsYS5iYWRnZS1kYW5nZXI6Zm9jdXN7b3V0bGluZTowO2JveC1zaGFkb3c6MCAwIDAgLjJyZW0gcmdiYSgyMjAsNTMsNjksLjUpfS5iYWRnZS1saWdodHtjb2xvcjojMjEyNTI5O2JhY2tncm91bmQtY29sb3I6I2Y4ZjlmYX1hLmJhZGdlLWxpZ2h0OmZvY3VzLGEuYmFkZ2UtbGlnaHQ6aG92ZXJ7Y29sb3I6IzIxMjUyOTtiYWNrZ3JvdW5kLWNvbG9yOiNkYWUwZTV9YS5iYWRnZS1saWdodC5mb2N1cyxhLmJhZGdlLWxpZ2h0OmZvY3Vze291dGxpbmU6MDtib3gtc2hhZG93OjAgMCAwIC4ycmVtIHJnYmEoMjQ4LDI0OSwyNTAsLjUpfS5iYWRnZS1kYXJre2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMzQzYTQwfWEuYmFkZ2UtZGFyazpmb2N1cyxhLmJhZGdlLWRhcms6aG92ZXJ7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMxZDIxMjR9YS5iYWRnZS1kYXJrLmZvY3VzLGEuYmFkZ2UtZGFyazpmb2N1c3tvdXRsaW5lOjA7Ym94LXNoYWRvdzowIDAgMCAuMnJlbSByZ2JhKDUyLDU4LDY0LC41KX0uanVtYm90cm9ue3BhZGRpbmc6MnJlbSAxcmVtO21hcmdpbi1ib3R0b206MnJlbTtiYWNrZ3JvdW5kLWNvbG9yOiNlOWVjZWY7Ym9yZGVyLXJhZGl1czouM3JlbX1AbWVkaWEgKG1pbi13aWR0aDo1NzZweCl7Lmp1bWJvdHJvbntwYWRkaW5nOjRyZW0gMnJlbX19Lmp1bWJvdHJvbi1mbHVpZHtwYWRkaW5nLXJpZ2h0OjA7cGFkZGluZy1sZWZ0OjA7Ym9yZGVyLXJhZGl1czowfS5hbGVydHtwb3NpdGlvbjpyZWxhdGl2ZTtwYWRkaW5nOi43NXJlbSAxLjI1cmVtO21hcmdpbi1ib3R0b206MXJlbTtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6LjI1cmVtfS5hbGVydC1oZWFkaW5ne2NvbG9yOmluaGVyaXR9LmFsZXJ0LWxpbmt7Zm9udC13ZWlnaHQ6NzAwfS5hbGVydC1kaXNtaXNzaWJsZXtwYWRkaW5nLXJpZ2h0OjRyZW19LmFsZXJ0LWRpc21pc3NpYmxlIC5jbG9zZXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO3BhZGRpbmc6Ljc1cmVtIDEuMjVyZW07Y29sb3I6aW5oZXJpdH0uYWxlcnQtcHJpbWFyeXtjb2xvcjojMDA0MDg1O2JhY2tncm91bmQtY29sb3I6I2NjZTVmZjtib3JkZXItY29sb3I6I2I4ZGFmZn0uYWxlcnQtcHJpbWFyeSBocntib3JkZXItdG9wLWNvbG9yOiM5ZmNkZmZ9LmFsZXJ0LXByaW1hcnkgLmFsZXJ0LWxpbmt7Y29sb3I6IzAwMjc1Mn0uYWxlcnQtc2Vjb25kYXJ5e2NvbG9yOiMzODNkNDE7YmFja2dyb3VuZC1jb2xvcjojZTJlM2U1O2JvcmRlci1jb2xvcjojZDZkOGRifS5hbGVydC1zZWNvbmRhcnkgaHJ7Ym9yZGVyLXRvcC1jb2xvcjojYzhjYmNmfS5hbGVydC1zZWNvbmRhcnkgLmFsZXJ0LWxpbmt7Y29sb3I6IzIwMjMyNn0uYWxlcnQtc3VjY2Vzc3tjb2xvcjojMTU1NzI0O2JhY2tncm91bmQtY29sb3I6I2Q0ZWRkYTtib3JkZXItY29sb3I6I2MzZTZjYn0uYWxlcnQtc3VjY2VzcyBocntib3JkZXItdG9wLWNvbG9yOiNiMWRmYmJ9LmFsZXJ0LXN1Y2Nlc3MgLmFsZXJ0LWxpbmt7Y29sb3I6IzBiMmUxM30uYWxlcnQtaW5mb3tjb2xvcjojMGM1NDYwO2JhY2tncm91bmQtY29sb3I6I2QxZWNmMTtib3JkZXItY29sb3I6I2JlZTVlYn0uYWxlcnQtaW5mbyBocntib3JkZXItdG9wLWNvbG9yOiNhYmRkZTV9LmFsZXJ0LWluZm8gLmFsZXJ0LWxpbmt7Y29sb3I6IzA2MmMzM30uYWxlcnQtd2FybmluZ3tjb2xvcjojODU2NDA0O2JhY2tncm91bmQtY29sb3I6I2ZmZjNjZDtib3JkZXItY29sb3I6I2ZmZWViYX0uYWxlcnQtd2FybmluZyBocntib3JkZXItdG9wLWNvbG9yOiNmZmU4YTF9LmFsZXJ0LXdhcm5pbmcgLmFsZXJ0LWxpbmt7Y29sb3I6IzUzM2YwM30uYWxlcnQtZGFuZ2Vye2NvbG9yOiM3MjFjMjQ7YmFja2dyb3VuZC1jb2xvcjojZjhkN2RhO2JvcmRlci1jb2xvcjojZjVjNmNifS5hbGVydC1kYW5nZXIgaHJ7Ym9yZGVyLXRvcC1jb2xvcjojZjFiMGI3fS5hbGVydC1kYW5nZXIgLmFsZXJ0LWxpbmt7Y29sb3I6IzQ5MTIxN30uYWxlcnQtbGlnaHR7Y29sb3I6IzgxODE4MjtiYWNrZ3JvdW5kLWNvbG9yOiNmZWZlZmU7Ym9yZGVyLWNvbG9yOiNmZGZkZmV9LmFsZXJ0LWxpZ2h0IGhye2JvcmRlci10b3AtY29sb3I6I2VjZWNmNn0uYWxlcnQtbGlnaHQgLmFsZXJ0LWxpbmt7Y29sb3I6IzY4Njg2OH0uYWxlcnQtZGFya3tjb2xvcjojMWIxZTIxO2JhY2tncm91bmQtY29sb3I6I2Q2ZDhkOTtib3JkZXItY29sb3I6I2M2YzhjYX0uYWxlcnQtZGFyayBocntib3JkZXItdG9wLWNvbG9yOiNiOWJiYmV9LmFsZXJ0LWRhcmsgLmFsZXJ0LWxpbmt7Y29sb3I6IzA0MDUwNX1ALXdlYmtpdC1rZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXN7ZnJvbXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjFyZW0gMH10b3tiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgMH19QGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlc3tmcm9te2JhY2tncm91bmQtcG9zaXRpb246MXJlbSAwfXRve2JhY2tncm91bmQtcG9zaXRpb246MCAwfX0ucHJvZ3Jlc3N7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7aGVpZ2h0OjFyZW07b3ZlcmZsb3c6aGlkZGVuO2ZvbnQtc2l6ZTouNzVyZW07YmFja2dyb3VuZC1jb2xvcjojZTllY2VmO2JvcmRlci1yYWRpdXM6LjI1cmVtfS5wcm9ncmVzcy1iYXJ7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1zLWZsZXgtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjb2xvcjojZmZmO3RleHQtYWxpZ246Y2VudGVyO3doaXRlLXNwYWNlOm5vd3JhcDtiYWNrZ3JvdW5kLWNvbG9yOiMwMDdiZmY7dHJhbnNpdGlvbjp3aWR0aCAuNnMgZWFzZX1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsucHJvZ3Jlc3MtYmFye3RyYW5zaXRpb246bm9uZX19LnByb2dyZXNzLWJhci1zdHJpcGVke2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDQ1ZGVnLHJnYmEoMjU1LDI1NSwyNTUsLjE1KSAyNSUsdHJhbnNwYXJlbnQgMjUlLHRyYW5zcGFyZW50IDUwJSxyZ2JhKDI1NSwyNTUsMjU1LC4xNSkgNTAlLHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA3NSUsdHJhbnNwYXJlbnQgNzUlLHRyYW5zcGFyZW50KTtiYWNrZ3JvdW5kLXNpemU6MXJlbSAxcmVtfS5wcm9ncmVzcy1iYXItYW5pbWF0ZWR7LXdlYmtpdC1hbmltYXRpb246cHJvZ3Jlc3MtYmFyLXN0cmlwZXMgMXMgbGluZWFyIGluZmluaXRlO2FuaW1hdGlvbjpwcm9ncmVzcy1iYXItc3RyaXBlcyAxcyBsaW5lYXIgaW5maW5pdGV9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LnByb2dyZXNzLWJhci1hbmltYXRlZHstd2Via2l0LWFuaW1hdGlvbjpub25lO2FuaW1hdGlvbjpub25lfX0ubWVkaWF7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0ubWVkaWEtYm9keXstbXMtZmxleDoxO2ZsZXg6MX0ubGlzdC1ncm91cHtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtwYWRkaW5nLWxlZnQ6MDttYXJnaW4tYm90dG9tOjB9Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb257d2lkdGg6MTAwJTtjb2xvcjojNDk1MDU3O3RleHQtYWxpZ246aW5oZXJpdH0ubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cywubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3Zlcnt6LWluZGV4OjE7Y29sb3I6IzQ5NTA1Nzt0ZXh0LWRlY29yYXRpb246bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOiNmOGY5ZmF9Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246YWN0aXZle2NvbG9yOiMyMTI1Mjk7YmFja2dyb3VuZC1jb2xvcjojZTllY2VmfS5saXN0LWdyb3VwLWl0ZW17cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpibG9jaztwYWRkaW5nOi43NXJlbSAxLjI1cmVtO21hcmdpbi1ib3R0b206LTFweDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLC4xMjUpfS5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGR7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czouMjVyZW07Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6LjI1cmVtfS5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjA7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6LjI1cmVtO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6LjI1cmVtfS5saXN0LWdyb3VwLWl0ZW0uZGlzYWJsZWQsLmxpc3QtZ3JvdXAtaXRlbTpkaXNhYmxlZHtjb2xvcjojNmM3NTdkO3BvaW50ZXItZXZlbnRzOm5vbmU7YmFja2dyb3VuZC1jb2xvcjojZmZmfS5saXN0LWdyb3VwLWl0ZW0uYWN0aXZle3otaW5kZXg6Mjtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzAwN2JmZjtib3JkZXItY29sb3I6IzAwN2JmZn0ubGlzdC1ncm91cC1ob3Jpem9udGFsey1tcy1mbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC1kaXJlY3Rpb246cm93fS5saXN0LWdyb3VwLWhvcml6b250YWwgLmxpc3QtZ3JvdXAtaXRlbXttYXJnaW4tcmlnaHQ6LTFweDttYXJnaW4tYm90dG9tOjB9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxke2JvcmRlci10b3AtbGVmdC1yYWRpdXM6LjI1cmVtO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6LjI1cmVtO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjB9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGR7bWFyZ2luLXJpZ2h0OjA7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6LjI1cmVtO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOi4yNXJlbTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjB9QG1lZGlhIChtaW4td2lkdGg6NTc2cHgpey5saXN0LWdyb3VwLWhvcml6b250YWwtc217LW1zLWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3d9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1zbSAubGlzdC1ncm91cC1pdGVte21hcmdpbi1yaWdodDotMXB4O21hcmdpbi1ib3R0b206MH0ubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGR7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czouMjVyZW07Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czouMjVyZW07Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MH0ubGlzdC1ncm91cC1ob3Jpem9udGFsLXNtIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZHttYXJnaW4tcmlnaHQ6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czouMjVyZW07Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6LjI1cmVtO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MH19QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5saXN0LWdyb3VwLWhvcml6b250YWwtbWR7LW1zLWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3d9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1tZCAubGlzdC1ncm91cC1pdGVte21hcmdpbi1yaWdodDotMXB4O21hcmdpbi1ib3R0b206MH0ubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGR7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czouMjVyZW07Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czouMjVyZW07Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MH0ubGlzdC1ncm91cC1ob3Jpem9udGFsLW1kIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZHttYXJnaW4tcmlnaHQ6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czouMjVyZW07Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6LjI1cmVtO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MH19QG1lZGlhIChtaW4td2lkdGg6OTkycHgpey5saXN0LWdyb3VwLWhvcml6b250YWwtbGd7LW1zLWZsZXgtZGlyZWN0aW9uOnJvdztmbGV4LWRpcmVjdGlvbjpyb3d9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC1sZyAubGlzdC1ncm91cC1pdGVte21hcmdpbi1yaWdodDotMXB4O21hcmdpbi1ib3R0b206MH0ubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGR7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czouMjVyZW07Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czouMjVyZW07Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MH0ubGlzdC1ncm91cC1ob3Jpem9udGFsLWxnIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZHttYXJnaW4tcmlnaHQ6MDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czouMjVyZW07Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6LjI1cmVtO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6MH19QG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KXsubGlzdC1ncm91cC1ob3Jpem9udGFsLXhsey1tcy1mbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC1kaXJlY3Rpb246cm93fS5saXN0LWdyb3VwLWhvcml6b250YWwteGwgLmxpc3QtZ3JvdXAtaXRlbXttYXJnaW4tcmlnaHQ6LTFweDttYXJnaW4tYm90dG9tOjB9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxke2JvcmRlci10b3AtbGVmdC1yYWRpdXM6LjI1cmVtO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6LjI1cmVtO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOjB9Lmxpc3QtZ3JvdXAtaG9yaXpvbnRhbC14bCAubGlzdC1ncm91cC1pdGVtOmxhc3QtY2hpbGR7bWFyZ2luLXJpZ2h0OjA7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6LjI1cmVtO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOi4yNXJlbTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjB9fS5saXN0LWdyb3VwLWZsdXNoIC5saXN0LWdyb3VwLWl0ZW17Ym9yZGVyLXJpZ2h0OjA7Ym9yZGVyLWxlZnQ6MDtib3JkZXItcmFkaXVzOjB9Lmxpc3QtZ3JvdXAtZmx1c2ggLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206LTFweH0ubGlzdC1ncm91cC1mbHVzaDpmaXJzdC1jaGlsZCAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxke2JvcmRlci10b3A6MH0ubGlzdC1ncm91cC1mbHVzaDpsYXN0LWNoaWxkIC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjA7Ym9yZGVyLWJvdHRvbTowfS5saXN0LWdyb3VwLWl0ZW0tcHJpbWFyeXtjb2xvcjojMDA0MDg1O2JhY2tncm91bmQtY29sb3I6I2I4ZGFmZn0ubGlzdC1ncm91cC1pdGVtLXByaW1hcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cywubGlzdC1ncm91cC1pdGVtLXByaW1hcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3Zlcntjb2xvcjojMDA0MDg1O2JhY2tncm91bmQtY29sb3I6IzlmY2RmZn0ubGlzdC1ncm91cC1pdGVtLXByaW1hcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmV7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMwMDQwODU7Ym9yZGVyLWNvbG9yOiMwMDQwODV9Lmxpc3QtZ3JvdXAtaXRlbS1zZWNvbmRhcnl7Y29sb3I6IzM4M2Q0MTtiYWNrZ3JvdW5kLWNvbG9yOiNkNmQ4ZGJ9Lmxpc3QtZ3JvdXAtaXRlbS1zZWNvbmRhcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cywubGlzdC1ncm91cC1pdGVtLXNlY29uZGFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVye2NvbG9yOiMzODNkNDE7YmFja2dyb3VuZC1jb2xvcjojYzhjYmNmfS5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZle2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMzgzZDQxO2JvcmRlci1jb2xvcjojMzgzZDQxfS5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzc3tjb2xvcjojMTU1NzI0O2JhY2tncm91bmQtY29sb3I6I2MzZTZjYn0ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cywubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3Zlcntjb2xvcjojMTU1NzI0O2JhY2tncm91bmQtY29sb3I6I2IxZGZiYn0ubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmV7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMxNTU3MjQ7Ym9yZGVyLWNvbG9yOiMxNTU3MjR9Lmxpc3QtZ3JvdXAtaXRlbS1pbmZve2NvbG9yOiMwYzU0NjA7YmFja2dyb3VuZC1jb2xvcjojYmVlNWVifS5saXN0LWdyb3VwLWl0ZW0taW5mby5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzLC5saXN0LWdyb3VwLWl0ZW0taW5mby5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVye2NvbG9yOiMwYzU0NjA7YmFja2dyb3VuZC1jb2xvcjojYWJkZGU1fS5saXN0LWdyb3VwLWl0ZW0taW5mby5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZXtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzBjNTQ2MDtib3JkZXItY29sb3I6IzBjNTQ2MH0ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmd7Y29sb3I6Izg1NjQwNDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmVlYmF9Lmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMsLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXJ7Y29sb3I6Izg1NjQwNDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmU4YTF9Lmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZle2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojODU2NDA0O2JvcmRlci1jb2xvcjojODU2NDA0fS5saXN0LWdyb3VwLWl0ZW0tZGFuZ2Vye2NvbG9yOiM3MjFjMjQ7YmFja2dyb3VuZC1jb2xvcjojZjVjNmNifS5saXN0LWdyb3VwLWl0ZW0tZGFuZ2VyLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMsLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3Zlcntjb2xvcjojNzIxYzI0O2JhY2tncm91bmQtY29sb3I6I2YxYjBiN30ubGlzdC1ncm91cC1pdGVtLWRhbmdlci5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZXtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzcyMWMyNDtib3JkZXItY29sb3I6IzcyMWMyNH0ubGlzdC1ncm91cC1pdGVtLWxpZ2h0e2NvbG9yOiM4MTgxODI7YmFja2dyb3VuZC1jb2xvcjojZmRmZGZlfS5saXN0LWdyb3VwLWl0ZW0tbGlnaHQubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cywubGlzdC1ncm91cC1pdGVtLWxpZ2h0Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXJ7Y29sb3I6IzgxODE4MjtiYWNrZ3JvdW5kLWNvbG9yOiNlY2VjZjZ9Lmxpc3QtZ3JvdXAtaXRlbS1saWdodC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uLmFjdGl2ZXtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6IzgxODE4Mjtib3JkZXItY29sb3I6IzgxODE4Mn0ubGlzdC1ncm91cC1pdGVtLWRhcmt7Y29sb3I6IzFiMWUyMTtiYWNrZ3JvdW5kLWNvbG9yOiNjNmM4Y2F9Lmxpc3QtZ3JvdXAtaXRlbS1kYXJrLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMsLmxpc3QtZ3JvdXAtaXRlbS1kYXJrLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXJ7Y29sb3I6IzFiMWUyMTtiYWNrZ3JvdW5kLWNvbG9yOiNiOWJiYmV9Lmxpc3QtZ3JvdXAtaXRlbS1kYXJrLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZle2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMWIxZTIxO2JvcmRlci1jb2xvcjojMWIxZTIxfS5jbG9zZXtmbG9hdDpyaWdodDtmb250LXNpemU6MS41cmVtO2ZvbnQtd2VpZ2h0OjcwMDtsaW5lLWhlaWdodDoxO2NvbG9yOiMwMDA7dGV4dC1zaGFkb3c6MCAxcHggMCAjZmZmO29wYWNpdHk6LjV9LmNsb3NlOmhvdmVye2NvbG9yOiMwMDA7dGV4dC1kZWNvcmF0aW9uOm5vbmV9LmNsb3NlOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmZvY3VzLC5jbG9zZTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTpob3ZlcntvcGFjaXR5Oi43NX1idXR0b24uY2xvc2V7cGFkZGluZzowO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyOjA7LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7LW1vei1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lfWEuY2xvc2UuZGlzYWJsZWR7cG9pbnRlci1ldmVudHM6bm9uZX0udG9hc3R7bWF4LXdpZHRoOjM1MHB4O292ZXJmbG93OmhpZGRlbjtmb250LXNpemU6Ljg3NXJlbTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjg1KTtiYWNrZ3JvdW5kLWNsaXA6cGFkZGluZy1ib3g7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLC4xKTtib3gtc2hhZG93OjAgLjI1cmVtIC43NXJlbSByZ2JhKDAsMCwwLC4xKTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDEwcHgpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDEwcHgpO29wYWNpdHk6MDtib3JkZXItcmFkaXVzOi4yNXJlbX0udG9hc3Q6bm90KDpsYXN0LWNoaWxkKXttYXJnaW4tYm90dG9tOi43NXJlbX0udG9hc3Quc2hvd2luZ3tvcGFjaXR5OjF9LnRvYXN0LnNob3d7ZGlzcGxheTpibG9jaztvcGFjaXR5OjF9LnRvYXN0LmhpZGV7ZGlzcGxheTpub25lfS50b2FzdC1oZWFkZXJ7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtwYWRkaW5nOi4yNXJlbSAuNzVyZW07Y29sb3I6IzZjNzU3ZDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjg1KTtiYWNrZ3JvdW5kLWNsaXA6cGFkZGluZy1ib3g7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgwLDAsMCwuMDUpfS50b2FzdC1ib2R5e3BhZGRpbmc6Ljc1cmVtfS5tb2RhbC1vcGVue292ZXJmbG93OmhpZGRlbn0ubW9kYWwtb3BlbiAubW9kYWx7b3ZlcmZsb3cteDpoaWRkZW47b3ZlcmZsb3cteTphdXRvfS5tb2RhbHtwb3NpdGlvbjpmaXhlZDt0b3A6MDtsZWZ0OjA7ei1pbmRleDoxMDUwO2Rpc3BsYXk6bm9uZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO292ZXJmbG93OmhpZGRlbjtvdXRsaW5lOjB9Lm1vZGFsLWRpYWxvZ3twb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDphdXRvO21hcmdpbjouNXJlbTtwb2ludGVyLWV2ZW50czpub25lfS5tb2RhbC5mYWRlIC5tb2RhbC1kaWFsb2d7dHJhbnNpdGlvbjotd2Via2l0LXRyYW5zZm9ybSAuM3MgZWFzZS1vdXQ7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjNzIGVhc2Utb3V0O3RyYW5zaXRpb246dHJhbnNmb3JtIC4zcyBlYXNlLW91dCwtd2Via2l0LXRyYW5zZm9ybSAuM3MgZWFzZS1vdXQ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKDAsLTUwcHgpO3RyYW5zZm9ybTp0cmFuc2xhdGUoMCwtNTBweCl9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7Lm1vZGFsLmZhZGUgLm1vZGFsLWRpYWxvZ3t0cmFuc2l0aW9uOm5vbmV9fS5tb2RhbC5zaG93IC5tb2RhbC1kaWFsb2d7LXdlYmtpdC10cmFuc2Zvcm06bm9uZTt0cmFuc2Zvcm06bm9uZX0ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGV7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7bWF4LWhlaWdodDpjYWxjKDEwMCUgLSAxcmVtKX0ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWNvbnRlbnR7bWF4LWhlaWdodDpjYWxjKDEwMHZoIC0gMXJlbSk7b3ZlcmZsb3c6aGlkZGVufS5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtZm9vdGVyLC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtaGVhZGVyey1tcy1mbGV4LW5lZ2F0aXZlOjA7ZmxleC1zaHJpbms6MH0ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWJvZHl7b3ZlcmZsb3cteTphdXRvfS5tb2RhbC1kaWFsb2ctY2VudGVyZWR7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjttaW4taGVpZ2h0OmNhbGMoMTAwJSAtIDFyZW0pfS5tb2RhbC1kaWFsb2ctY2VudGVyZWQ6OmJlZm9yZXtkaXNwbGF5OmJsb2NrO2hlaWdodDpjYWxjKDEwMHZoIC0gMXJlbSk7Y29udGVudDoiIn0ubW9kYWwtZGlhbG9nLWNlbnRlcmVkLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxley1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tcy1mbGV4LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7aGVpZ2h0OjEwMCV9Lm1vZGFsLWRpYWxvZy1jZW50ZXJlZC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtY29udGVudHttYXgtaGVpZ2h0Om5vbmV9Lm1vZGFsLWRpYWxvZy1jZW50ZXJlZC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZTo6YmVmb3Jle2NvbnRlbnQ6bm9uZX0ubW9kYWwtY29udGVudHtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjt3aWR0aDoxMDAlO3BvaW50ZXItZXZlbnRzOmF1dG87YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY2xpcDpwYWRkaW5nLWJveDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjIpO2JvcmRlci1yYWRpdXM6LjNyZW07b3V0bGluZTowfS5tb2RhbC1iYWNrZHJvcHtwb3NpdGlvbjpmaXhlZDt0b3A6MDtsZWZ0OjA7ei1pbmRleDoxMDQwO3dpZHRoOjEwMHZ3O2hlaWdodDoxMDB2aDtiYWNrZ3JvdW5kLWNvbG9yOiMwMDB9Lm1vZGFsLWJhY2tkcm9wLmZhZGV7b3BhY2l0eTowfS5tb2RhbC1iYWNrZHJvcC5zaG93e29wYWNpdHk6LjV9Lm1vZGFsLWhlYWRlcntkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC1hbGlnbjpzdGFydDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0Oy1tcy1mbGV4LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtwYWRkaW5nOjFyZW0gMXJlbTtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZGVlMmU2O2JvcmRlci10b3AtbGVmdC1yYWRpdXM6LjNyZW07Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6LjNyZW19Lm1vZGFsLWhlYWRlciAuY2xvc2V7cGFkZGluZzoxcmVtIDFyZW07bWFyZ2luOi0xcmVtIC0xcmVtIC0xcmVtIGF1dG99Lm1vZGFsLXRpdGxle21hcmdpbi1ib3R0b206MDtsaW5lLWhlaWdodDoxLjV9Lm1vZGFsLWJvZHl7cG9zaXRpb246cmVsYXRpdmU7LW1zLWZsZXg6MSAxIGF1dG87ZmxleDoxIDEgYXV0bztwYWRkaW5nOjFyZW19Lm1vZGFsLWZvb3RlcntkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tcy1mbGV4LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDtwYWRkaW5nOjFyZW07Ym9yZGVyLXRvcDoxcHggc29saWQgI2RlZTJlNjtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czouM3JlbTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOi4zcmVtfS5tb2RhbC1mb290ZXI+Om5vdCg6Zmlyc3QtY2hpbGQpe21hcmdpbi1sZWZ0Oi4yNXJlbX0ubW9kYWwtZm9vdGVyPjpub3QoOmxhc3QtY2hpbGQpe21hcmdpbi1yaWdodDouMjVyZW19Lm1vZGFsLXNjcm9sbGJhci1tZWFzdXJle3Bvc2l0aW9uOmFic29sdXRlO3RvcDotOTk5OXB4O3dpZHRoOjUwcHg7aGVpZ2h0OjUwcHg7b3ZlcmZsb3c6c2Nyb2xsfUBtZWRpYSAobWluLXdpZHRoOjU3NnB4KXsubW9kYWwtZGlhbG9ne21heC13aWR0aDo1MDBweDttYXJnaW46MS43NXJlbSBhdXRvfS5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZXttYXgtaGVpZ2h0OmNhbGMoMTAwJSAtIDMuNXJlbSl9Lm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1jb250ZW50e21heC1oZWlnaHQ6Y2FsYygxMDB2aCAtIDMuNXJlbSl9Lm1vZGFsLWRpYWxvZy1jZW50ZXJlZHttaW4taGVpZ2h0OmNhbGMoMTAwJSAtIDMuNXJlbSl9Lm1vZGFsLWRpYWxvZy1jZW50ZXJlZDo6YmVmb3Jle2hlaWdodDpjYWxjKDEwMHZoIC0gMy41cmVtKX0ubW9kYWwtc217bWF4LXdpZHRoOjMwMHB4fX1AbWVkaWEgKG1pbi13aWR0aDo5OTJweCl7Lm1vZGFsLWxnLC5tb2RhbC14bHttYXgtd2lkdGg6ODAwcHh9fUBtZWRpYSAobWluLXdpZHRoOjEyMDBweCl7Lm1vZGFsLXhse21heC13aWR0aDoxMTQwcHh9fS50b29sdGlwe3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6MTA3MDtkaXNwbGF5OmJsb2NrO21hcmdpbjowO2ZvbnQtZmFtaWx5Oi1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LCJTZWdvZSBVSSIsUm9ib3RvLCJIZWx2ZXRpY2EgTmV1ZSIsQXJpYWwsIk5vdG8gU2FucyIsc2Fucy1zZXJpZiwiQXBwbGUgQ29sb3IgRW1vamkiLCJTZWdvZSBVSSBFbW9qaSIsIlNlZ29lIFVJIFN5bWJvbCIsIk5vdG8gQ29sb3IgRW1vamkiO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtsaW5lLWhlaWdodDoxLjU7dGV4dC1hbGlnbjpsZWZ0O3RleHQtYWxpZ246c3RhcnQ7dGV4dC1kZWNvcmF0aW9uOm5vbmU7dGV4dC1zaGFkb3c6bm9uZTt0ZXh0LXRyYW5zZm9ybTpub25lO2xldHRlci1zcGFjaW5nOm5vcm1hbDt3b3JkLWJyZWFrOm5vcm1hbDt3b3JkLXNwYWNpbmc6bm9ybWFsO3doaXRlLXNwYWNlOm5vcm1hbDtsaW5lLWJyZWFrOmF1dG87Zm9udC1zaXplOi44NzVyZW07d29yZC13cmFwOmJyZWFrLXdvcmQ7b3BhY2l0eTowfS50b29sdGlwLnNob3d7b3BhY2l0eTouOX0udG9vbHRpcCAuYXJyb3d7cG9zaXRpb246YWJzb2x1dGU7ZGlzcGxheTpibG9jazt3aWR0aDouOHJlbTtoZWlnaHQ6LjRyZW19LnRvb2x0aXAgLmFycm93OjpiZWZvcmV7cG9zaXRpb246YWJzb2x1dGU7Y29udGVudDoiIjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXN0eWxlOnNvbGlkfS5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePXRvcF0sLmJzLXRvb2x0aXAtdG9we3BhZGRpbmc6LjRyZW0gMH0uYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj10b3BdIC5hcnJvdywuYnMtdG9vbHRpcC10b3AgLmFycm93e2JvdHRvbTowfS5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePXRvcF0gLmFycm93OjpiZWZvcmUsLmJzLXRvb2x0aXAtdG9wIC5hcnJvdzo6YmVmb3Jle3RvcDowO2JvcmRlci13aWR0aDouNHJlbSAuNHJlbSAwO2JvcmRlci10b3AtY29sb3I6IzAwMH0uYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1yaWdodF0sLmJzLXRvb2x0aXAtcmlnaHR7cGFkZGluZzowIC40cmVtfS5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePXJpZ2h0XSAuYXJyb3csLmJzLXRvb2x0aXAtcmlnaHQgLmFycm93e2xlZnQ6MDt3aWR0aDouNHJlbTtoZWlnaHQ6LjhyZW19LmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49cmlnaHRdIC5hcnJvdzo6YmVmb3JlLC5icy10b29sdGlwLXJpZ2h0IC5hcnJvdzo6YmVmb3Jle3JpZ2h0OjA7Ym9yZGVyLXdpZHRoOi40cmVtIC40cmVtIC40cmVtIDA7Ym9yZGVyLXJpZ2h0LWNvbG9yOiMwMDB9LmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49Ym90dG9tXSwuYnMtdG9vbHRpcC1ib3R0b217cGFkZGluZzouNHJlbSAwfS5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePWJvdHRvbV0gLmFycm93LC5icy10b29sdGlwLWJvdHRvbSAuYXJyb3d7dG9wOjB9LmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49Ym90dG9tXSAuYXJyb3c6OmJlZm9yZSwuYnMtdG9vbHRpcC1ib3R0b20gLmFycm93OjpiZWZvcmV7Ym90dG9tOjA7Ym9yZGVyLXdpZHRoOjAgLjRyZW0gLjRyZW07Ym9yZGVyLWJvdHRvbS1jb2xvcjojMDAwfS5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePWxlZnRdLC5icy10b29sdGlwLWxlZnR7cGFkZGluZzowIC40cmVtfS5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePWxlZnRdIC5hcnJvdywuYnMtdG9vbHRpcC1sZWZ0IC5hcnJvd3tyaWdodDowO3dpZHRoOi40cmVtO2hlaWdodDouOHJlbX0uYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1sZWZ0XSAuYXJyb3c6OmJlZm9yZSwuYnMtdG9vbHRpcC1sZWZ0IC5hcnJvdzo6YmVmb3Jle2xlZnQ6MDtib3JkZXItd2lkdGg6LjRyZW0gMCAuNHJlbSAuNHJlbTtib3JkZXItbGVmdC1jb2xvcjojMDAwfS50b29sdGlwLWlubmVye21heC13aWR0aDoyMDBweDtwYWRkaW5nOi4yNXJlbSAuNXJlbTtjb2xvcjojZmZmO3RleHQtYWxpZ246Y2VudGVyO2JhY2tncm91bmQtY29sb3I6IzAwMDtib3JkZXItcmFkaXVzOi4yNXJlbX0ucG9wb3Zlcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7ei1pbmRleDoxMDYwO2Rpc3BsYXk6YmxvY2s7bWF4LXdpZHRoOjI3NnB4O2ZvbnQtZmFtaWx5Oi1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LCJTZWdvZSBVSSIsUm9ib3RvLCJIZWx2ZXRpY2EgTmV1ZSIsQXJpYWwsIk5vdG8gU2FucyIsc2Fucy1zZXJpZiwiQXBwbGUgQ29sb3IgRW1vamkiLCJTZWdvZSBVSSBFbW9qaSIsIlNlZ29lIFVJIFN5bWJvbCIsIk5vdG8gQ29sb3IgRW1vamkiO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjQwMDtsaW5lLWhlaWdodDoxLjU7dGV4dC1hbGlnbjpsZWZ0O3RleHQtYWxpZ246c3RhcnQ7dGV4dC1kZWNvcmF0aW9uOm5vbmU7dGV4dC1zaGFkb3c6bm9uZTt0ZXh0LXRyYW5zZm9ybTpub25lO2xldHRlci1zcGFjaW5nOm5vcm1hbDt3b3JkLWJyZWFrOm5vcm1hbDt3b3JkLXNwYWNpbmc6bm9ybWFsO3doaXRlLXNwYWNlOm5vcm1hbDtsaW5lLWJyZWFrOmF1dG87Zm9udC1zaXplOi44NzVyZW07d29yZC13cmFwOmJyZWFrLXdvcmQ7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY2xpcDpwYWRkaW5nLWJveDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsLjIpO2JvcmRlci1yYWRpdXM6LjNyZW19LnBvcG92ZXIgLmFycm93e3Bvc2l0aW9uOmFic29sdXRlO2Rpc3BsYXk6YmxvY2s7d2lkdGg6MXJlbTtoZWlnaHQ6LjVyZW07bWFyZ2luOjAgLjNyZW19LnBvcG92ZXIgLmFycm93OjphZnRlciwucG9wb3ZlciAuYXJyb3c6OmJlZm9yZXtwb3NpdGlvbjphYnNvbHV0ZTtkaXNwbGF5OmJsb2NrO2NvbnRlbnQ6IiI7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlci1zdHlsZTpzb2xpZH0uYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj10b3BdLC5icy1wb3BvdmVyLXRvcHttYXJnaW4tYm90dG9tOi41cmVtfS5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePXRvcF0+LmFycm93LC5icy1wb3BvdmVyLXRvcD4uYXJyb3d7Ym90dG9tOmNhbGMoKC41cmVtICsgMXB4KSAqIC0xKX0uYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj10b3BdPi5hcnJvdzo6YmVmb3JlLC5icy1wb3BvdmVyLXRvcD4uYXJyb3c6OmJlZm9yZXtib3R0b206MDtib3JkZXItd2lkdGg6LjVyZW0gLjVyZW0gMDtib3JkZXItdG9wLWNvbG9yOnJnYmEoMCwwLDAsLjI1KX0uYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj10b3BdPi5hcnJvdzo6YWZ0ZXIsLmJzLXBvcG92ZXItdG9wPi5hcnJvdzo6YWZ0ZXJ7Ym90dG9tOjFweDtib3JkZXItd2lkdGg6LjVyZW0gLjVyZW0gMDtib3JkZXItdG9wLWNvbG9yOiNmZmZ9LmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49cmlnaHRdLC5icy1wb3BvdmVyLXJpZ2h0e21hcmdpbi1sZWZ0Oi41cmVtfS5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePXJpZ2h0XT4uYXJyb3csLmJzLXBvcG92ZXItcmlnaHQ+LmFycm93e2xlZnQ6Y2FsYygoLjVyZW0gKyAxcHgpICogLTEpO3dpZHRoOi41cmVtO2hlaWdodDoxcmVtO21hcmdpbjouM3JlbSAwfS5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePXJpZ2h0XT4uYXJyb3c6OmJlZm9yZSwuYnMtcG9wb3Zlci1yaWdodD4uYXJyb3c6OmJlZm9yZXtsZWZ0OjA7Ym9yZGVyLXdpZHRoOi41cmVtIC41cmVtIC41cmVtIDA7Ym9yZGVyLXJpZ2h0LWNvbG9yOnJnYmEoMCwwLDAsLjI1KX0uYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1yaWdodF0+LmFycm93OjphZnRlciwuYnMtcG9wb3Zlci1yaWdodD4uYXJyb3c6OmFmdGVye2xlZnQ6MXB4O2JvcmRlci13aWR0aDouNXJlbSAuNXJlbSAuNXJlbSAwO2JvcmRlci1yaWdodC1jb2xvcjojZmZmfS5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWJvdHRvbV0sLmJzLXBvcG92ZXItYm90dG9te21hcmdpbi10b3A6LjVyZW19LmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49Ym90dG9tXT4uYXJyb3csLmJzLXBvcG92ZXItYm90dG9tPi5hcnJvd3t0b3A6Y2FsYygoLjVyZW0gKyAxcHgpICogLTEpfS5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWJvdHRvbV0+LmFycm93OjpiZWZvcmUsLmJzLXBvcG92ZXItYm90dG9tPi5hcnJvdzo6YmVmb3Jle3RvcDowO2JvcmRlci13aWR0aDowIC41cmVtIC41cmVtIC41cmVtO2JvcmRlci1ib3R0b20tY29sb3I6cmdiYSgwLDAsMCwuMjUpfS5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWJvdHRvbV0+LmFycm93OjphZnRlciwuYnMtcG9wb3Zlci1ib3R0b20+LmFycm93OjphZnRlcnt0b3A6MXB4O2JvcmRlci13aWR0aDowIC41cmVtIC41cmVtIC41cmVtO2JvcmRlci1ib3R0b20tY29sb3I6I2ZmZn0uYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1ib3R0b21dIC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlLC5icy1wb3BvdmVyLWJvdHRvbSAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjUwJTtkaXNwbGF5OmJsb2NrO3dpZHRoOjFyZW07bWFyZ2luLWxlZnQ6LS41cmVtO2NvbnRlbnQ6IiI7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2Y3ZjdmN30uYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1sZWZ0XSwuYnMtcG9wb3Zlci1sZWZ0e21hcmdpbi1yaWdodDouNXJlbX0uYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1sZWZ0XT4uYXJyb3csLmJzLXBvcG92ZXItbGVmdD4uYXJyb3d7cmlnaHQ6Y2FsYygoLjVyZW0gKyAxcHgpICogLTEpO3dpZHRoOi41cmVtO2hlaWdodDoxcmVtO21hcmdpbjouM3JlbSAwfS5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWxlZnRdPi5hcnJvdzo6YmVmb3JlLC5icy1wb3BvdmVyLWxlZnQ+LmFycm93OjpiZWZvcmV7cmlnaHQ6MDtib3JkZXItd2lkdGg6LjVyZW0gMCAuNXJlbSAuNXJlbTtib3JkZXItbGVmdC1jb2xvcjpyZ2JhKDAsMCwwLC4yNSl9LmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49bGVmdF0+LmFycm93OjphZnRlciwuYnMtcG9wb3Zlci1sZWZ0Pi5hcnJvdzo6YWZ0ZXJ7cmlnaHQ6MXB4O2JvcmRlci13aWR0aDouNXJlbSAwIC41cmVtIC41cmVtO2JvcmRlci1sZWZ0LWNvbG9yOiNmZmZ9LnBvcG92ZXItaGVhZGVye3BhZGRpbmc6LjVyZW0gLjc1cmVtO21hcmdpbi1ib3R0b206MDtmb250LXNpemU6MXJlbTtiYWNrZ3JvdW5kLWNvbG9yOiNmN2Y3Zjc7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2ViZWJlYjtib3JkZXItdG9wLWxlZnQtcmFkaXVzOmNhbGMoLjNyZW0gLSAxcHgpO2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOmNhbGMoLjNyZW0gLSAxcHgpfS5wb3BvdmVyLWhlYWRlcjplbXB0eXtkaXNwbGF5Om5vbmV9LnBvcG92ZXItYm9keXtwYWRkaW5nOi41cmVtIC43NXJlbTtjb2xvcjojMjEyNTI5fS5jYXJvdXNlbHtwb3NpdGlvbjpyZWxhdGl2ZX0uY2Fyb3VzZWwucG9pbnRlci1ldmVudHstbXMtdG91Y2gtYWN0aW9uOnBhbi15O3RvdWNoLWFjdGlvbjpwYW4teX0uY2Fyb3VzZWwtaW5uZXJ7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJTtvdmVyZmxvdzpoaWRkZW59LmNhcm91c2VsLWlubmVyOjphZnRlcntkaXNwbGF5OmJsb2NrO2NsZWFyOmJvdGg7Y29udGVudDoiIn0uY2Fyb3VzZWwtaXRlbXtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Om5vbmU7ZmxvYXQ6bGVmdDt3aWR0aDoxMDAlO21hcmdpbi1yaWdodDotMTAwJTstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO3RyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gLjZzIGVhc2UtaW4tb3V0O3RyYW5zaXRpb246dHJhbnNmb3JtIC42cyBlYXNlLWluLW91dDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuNnMgZWFzZS1pbi1vdXQsLXdlYmtpdC10cmFuc2Zvcm0gLjZzIGVhc2UtaW4tb3V0fUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5jYXJvdXNlbC1pdGVte3RyYW5zaXRpb246bm9uZX19LmNhcm91c2VsLWl0ZW0tbmV4dCwuY2Fyb3VzZWwtaXRlbS1wcmV2LC5jYXJvdXNlbC1pdGVtLmFjdGl2ZXtkaXNwbGF5OmJsb2NrfS5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodCwuY2Fyb3VzZWwtaXRlbS1uZXh0Om5vdCguY2Fyb3VzZWwtaXRlbS1sZWZ0KXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDEwMCUpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDEwMCUpfS5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0LC5jYXJvdXNlbC1pdGVtLXByZXY6bm90KC5jYXJvdXNlbC1pdGVtLXJpZ2h0KXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKC0xMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSl9LmNhcm91c2VsLWZhZGUgLmNhcm91c2VsLWl0ZW17b3BhY2l0eTowO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eTstd2Via2l0LXRyYW5zZm9ybTpub25lO3RyYW5zZm9ybTpub25lfS5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1sZWZ0LC5jYXJvdXNlbC1mYWRlIC5jYXJvdXNlbC1pdGVtLXByZXYuY2Fyb3VzZWwtaXRlbS1yaWdodCwuY2Fyb3VzZWwtZmFkZSAuY2Fyb3VzZWwtaXRlbS5hY3RpdmV7ei1pbmRleDoxO29wYWNpdHk6MX0uY2Fyb3VzZWwtZmFkZSAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tbGVmdCwuY2Fyb3VzZWwtZmFkZSAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tcmlnaHR7ei1pbmRleDowO29wYWNpdHk6MDt0cmFuc2l0aW9uOjBzIC42cyBvcGFjaXR5fUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5jYXJvdXNlbC1mYWRlIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1sZWZ0LC5jYXJvdXNlbC1mYWRlIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1yaWdodHt0cmFuc2l0aW9uOm5vbmV9fS5jYXJvdXNlbC1jb250cm9sLW5leHQsLmNhcm91c2VsLWNvbnRyb2wtcHJldntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDt6LWluZGV4OjE7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5OmZsZXg7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjE1JTtjb2xvcjojZmZmO3RleHQtYWxpZ246Y2VudGVyO29wYWNpdHk6LjU7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgZWFzZX1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsuY2Fyb3VzZWwtY29udHJvbC1uZXh0LC5jYXJvdXNlbC1jb250cm9sLXByZXZ7dHJhbnNpdGlvbjpub25lfX0uY2Fyb3VzZWwtY29udHJvbC1uZXh0OmZvY3VzLC5jYXJvdXNlbC1jb250cm9sLW5leHQ6aG92ZXIsLmNhcm91c2VsLWNvbnRyb2wtcHJldjpmb2N1cywuY2Fyb3VzZWwtY29udHJvbC1wcmV2OmhvdmVye2NvbG9yOiNmZmY7dGV4dC1kZWNvcmF0aW9uOm5vbmU7b3V0bGluZTowO29wYWNpdHk6Ljl9LmNhcm91c2VsLWNvbnRyb2wtcHJldntsZWZ0OjB9LmNhcm91c2VsLWNvbnRyb2wtbmV4dHtyaWdodDowfS5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiwuY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb257ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MjBweDtoZWlnaHQ6MjBweDtiYWNrZ3JvdW5kOm5vLXJlcGVhdCA1MCUvMTAwJSAxMDAlfS5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbntiYWNrZ3JvdW5kLWltYWdlOnVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyUyM2ZmZicgdmlld0JveD0nMCAwIDggOCclM2UlM2NwYXRoIGQ9J001LjI1IDBsLTQgNCA0IDQgMS41LTEuNS0yLjUtMi41IDIuNS0yLjUtMS41LTEuNXonLyUzZSUzYy9zdmclM2UiKX0uY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb257YmFja2dyb3VuZC1pbWFnZTp1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSclMjNmZmYnIHZpZXdCb3g9JzAgMCA4IDgnJTNlJTNjcGF0aCBkPSdNMi43NSAwbC0xLjUgMS41IDIuNSAyLjUtMi41IDIuNSAxLjUgMS41IDQtNC00LTR6Jy8lM2UlM2Mvc3ZnJTNlIil9LmNhcm91c2VsLWluZGljYXRvcnN7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjA7ei1pbmRleDoxNTtkaXNwbGF5Oi1tcy1mbGV4Ym94O2Rpc3BsYXk6ZmxleDstbXMtZmxleC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmctbGVmdDowO21hcmdpbi1yaWdodDoxNSU7bWFyZ2luLWxlZnQ6MTUlO2xpc3Qtc3R5bGU6bm9uZX0uY2Fyb3VzZWwtaW5kaWNhdG9ycyBsaXtib3gtc2l6aW5nOmNvbnRlbnQtYm94Oy1tcy1mbGV4OjAgMSBhdXRvO2ZsZXg6MCAxIGF1dG87d2lkdGg6MzBweDtoZWlnaHQ6M3B4O21hcmdpbi1yaWdodDozcHg7bWFyZ2luLWxlZnQ6M3B4O3RleHQtaW5kZW50Oi05OTlweDtjdXJzb3I6cG9pbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7YmFja2dyb3VuZC1jbGlwOnBhZGRpbmctYm94O2JvcmRlci10b3A6MTBweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItYm90dG9tOjEwcHggc29saWQgdHJhbnNwYXJlbnQ7b3BhY2l0eTouNTt0cmFuc2l0aW9uOm9wYWNpdHkgLjZzIGVhc2V9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LmNhcm91c2VsLWluZGljYXRvcnMgbGl7dHJhbnNpdGlvbjpub25lfX0uY2Fyb3VzZWwtaW5kaWNhdG9ycyAuYWN0aXZle29wYWNpdHk6MX0uY2Fyb3VzZWwtY2FwdGlvbntwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoxNSU7Ym90dG9tOjIwcHg7bGVmdDoxNSU7ei1pbmRleDoxMDtwYWRkaW5nLXRvcDoyMHB4O3BhZGRpbmctYm90dG9tOjIwcHg7Y29sb3I6I2ZmZjt0ZXh0LWFsaWduOmNlbnRlcn1ALXdlYmtpdC1rZXlmcmFtZXMgc3Bpbm5lci1ib3JkZXJ7dG97LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDM2MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpfX1Aa2V5ZnJhbWVzIHNwaW5uZXItYm9yZGVye3Rvey13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKX19LnNwaW5uZXItYm9yZGVye2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjJyZW07aGVpZ2h0OjJyZW07dmVydGljYWwtYWxpZ246dGV4dC1ib3R0b207Ym9yZGVyOi4yNWVtIHNvbGlkIGN1cnJlbnRDb2xvcjtib3JkZXItcmlnaHQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czo1MCU7LXdlYmtpdC1hbmltYXRpb246c3Bpbm5lci1ib3JkZXIgLjc1cyBsaW5lYXIgaW5maW5pdGU7YW5pbWF0aW9uOnNwaW5uZXItYm9yZGVyIC43NXMgbGluZWFyIGluZmluaXRlfS5zcGlubmVyLWJvcmRlci1zbXt3aWR0aDoxcmVtO2hlaWdodDoxcmVtO2JvcmRlci13aWR0aDouMmVtfUAtd2Via2l0LWtleWZyYW1lcyBzcGlubmVyLWdyb3d7MCV7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMCk7dHJhbnNmb3JtOnNjYWxlKDApfTUwJXtvcGFjaXR5OjF9fUBrZXlmcmFtZXMgc3Bpbm5lci1ncm93ezAley13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDApO3RyYW5zZm9ybTpzY2FsZSgwKX01MCV7b3BhY2l0eToxfX0uc3Bpbm5lci1ncm93e2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjJyZW07aGVpZ2h0OjJyZW07dmVydGljYWwtYWxpZ246dGV4dC1ib3R0b207YmFja2dyb3VuZC1jb2xvcjpjdXJyZW50Q29sb3I7Ym9yZGVyLXJhZGl1czo1MCU7b3BhY2l0eTowOy13ZWJraXQtYW5pbWF0aW9uOnNwaW5uZXItZ3JvdyAuNzVzIGxpbmVhciBpbmZpbml0ZTthbmltYXRpb246c3Bpbm5lci1ncm93IC43NXMgbGluZWFyIGluZmluaXRlfS5zcGlubmVyLWdyb3ctc217d2lkdGg6MXJlbTtoZWlnaHQ6MXJlbX0uYWxpZ24tYmFzZWxpbmV7dmVydGljYWwtYWxpZ246YmFzZWxpbmUhaW1wb3J0YW50fS5hbGlnbi10b3B7dmVydGljYWwtYWxpZ246dG9wIWltcG9ydGFudH0uYWxpZ24tbWlkZGxle3ZlcnRpY2FsLWFsaWduOm1pZGRsZSFpbXBvcnRhbnR9LmFsaWduLWJvdHRvbXt2ZXJ0aWNhbC1hbGlnbjpib3R0b20haW1wb3J0YW50fS5hbGlnbi10ZXh0LWJvdHRvbXt2ZXJ0aWNhbC1hbGlnbjp0ZXh0LWJvdHRvbSFpbXBvcnRhbnR9LmFsaWduLXRleHQtdG9we3ZlcnRpY2FsLWFsaWduOnRleHQtdG9wIWltcG9ydGFudH0uYmctcHJpbWFyeXtiYWNrZ3JvdW5kLWNvbG9yOiMwMDdiZmYhaW1wb3J0YW50fWEuYmctcHJpbWFyeTpmb2N1cyxhLmJnLXByaW1hcnk6aG92ZXIsYnV0dG9uLmJnLXByaW1hcnk6Zm9jdXMsYnV0dG9uLmJnLXByaW1hcnk6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojMDA2MmNjIWltcG9ydGFudH0uYmctc2Vjb25kYXJ5e2JhY2tncm91bmQtY29sb3I6IzZjNzU3ZCFpbXBvcnRhbnR9YS5iZy1zZWNvbmRhcnk6Zm9jdXMsYS5iZy1zZWNvbmRhcnk6aG92ZXIsYnV0dG9uLmJnLXNlY29uZGFyeTpmb2N1cyxidXR0b24uYmctc2Vjb25kYXJ5OmhvdmVye2JhY2tncm91bmQtY29sb3I6IzU0NWI2MiFpbXBvcnRhbnR9LmJnLXN1Y2Nlc3N7YmFja2dyb3VuZC1jb2xvcjojMjhhNzQ1IWltcG9ydGFudH1hLmJnLXN1Y2Nlc3M6Zm9jdXMsYS5iZy1zdWNjZXNzOmhvdmVyLGJ1dHRvbi5iZy1zdWNjZXNzOmZvY3VzLGJ1dHRvbi5iZy1zdWNjZXNzOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzFlN2UzNCFpbXBvcnRhbnR9LmJnLWluZm97YmFja2dyb3VuZC1jb2xvcjojMTdhMmI4IWltcG9ydGFudH1hLmJnLWluZm86Zm9jdXMsYS5iZy1pbmZvOmhvdmVyLGJ1dHRvbi5iZy1pbmZvOmZvY3VzLGJ1dHRvbi5iZy1pbmZvOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzExN2E4YiFpbXBvcnRhbnR9LmJnLXdhcm5pbmd7YmFja2dyb3VuZC1jb2xvcjojZmZjMTA3IWltcG9ydGFudH1hLmJnLXdhcm5pbmc6Zm9jdXMsYS5iZy13YXJuaW5nOmhvdmVyLGJ1dHRvbi5iZy13YXJuaW5nOmZvY3VzLGJ1dHRvbi5iZy13YXJuaW5nOmhvdmVye2JhY2tncm91bmQtY29sb3I6I2QzOWUwMCFpbXBvcnRhbnR9LmJnLWRhbmdlcntiYWNrZ3JvdW5kLWNvbG9yOiNkYzM1NDUhaW1wb3J0YW50fWEuYmctZGFuZ2VyOmZvY3VzLGEuYmctZGFuZ2VyOmhvdmVyLGJ1dHRvbi5iZy1kYW5nZXI6Zm9jdXMsYnV0dG9uLmJnLWRhbmdlcjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNiZDIxMzAhaW1wb3J0YW50fS5iZy1saWdodHtiYWNrZ3JvdW5kLWNvbG9yOiNmOGY5ZmEhaW1wb3J0YW50fWEuYmctbGlnaHQ6Zm9jdXMsYS5iZy1saWdodDpob3ZlcixidXR0b24uYmctbGlnaHQ6Zm9jdXMsYnV0dG9uLmJnLWxpZ2h0OmhvdmVye2JhY2tncm91bmQtY29sb3I6I2RhZTBlNSFpbXBvcnRhbnR9LmJnLWRhcmt7YmFja2dyb3VuZC1jb2xvcjojMzQzYTQwIWltcG9ydGFudH1hLmJnLWRhcms6Zm9jdXMsYS5iZy1kYXJrOmhvdmVyLGJ1dHRvbi5iZy1kYXJrOmZvY3VzLGJ1dHRvbi5iZy1kYXJrOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzFkMjEyNCFpbXBvcnRhbnR9LmJnLXdoaXRle2JhY2tncm91bmQtY29sb3I6I2ZmZiFpbXBvcnRhbnR9LmJnLXRyYW5zcGFyZW50e2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQhaW1wb3J0YW50fS5ib3JkZXJ7Ym9yZGVyOjFweCBzb2xpZCAjZGVlMmU2IWltcG9ydGFudH0uYm9yZGVyLXRvcHtib3JkZXItdG9wOjFweCBzb2xpZCAjZGVlMmU2IWltcG9ydGFudH0uYm9yZGVyLXJpZ2h0e2JvcmRlci1yaWdodDoxcHggc29saWQgI2RlZTJlNiFpbXBvcnRhbnR9LmJvcmRlci1ib3R0b217Ym9yZGVyLWJvdHRvbToxcHggc29saWQgI2RlZTJlNiFpbXBvcnRhbnR9LmJvcmRlci1sZWZ0e2JvcmRlci1sZWZ0OjFweCBzb2xpZCAjZGVlMmU2IWltcG9ydGFudH0uYm9yZGVyLTB7Ym9yZGVyOjAhaW1wb3J0YW50fS5ib3JkZXItdG9wLTB7Ym9yZGVyLXRvcDowIWltcG9ydGFudH0uYm9yZGVyLXJpZ2h0LTB7Ym9yZGVyLXJpZ2h0OjAhaW1wb3J0YW50fS5ib3JkZXItYm90dG9tLTB7Ym9yZGVyLWJvdHRvbTowIWltcG9ydGFudH0uYm9yZGVyLWxlZnQtMHtib3JkZXItbGVmdDowIWltcG9ydGFudH0uYm9yZGVyLXByaW1hcnl7Ym9yZGVyLWNvbG9yOiMwMDdiZmYhaW1wb3J0YW50fS5ib3JkZXItc2Vjb25kYXJ5e2JvcmRlci1jb2xvcjojNmM3NTdkIWltcG9ydGFudH0uYm9yZGVyLXN1Y2Nlc3N7Ym9yZGVyLWNvbG9yOiMyOGE3NDUhaW1wb3J0YW50fS5ib3JkZXItaW5mb3tib3JkZXItY29sb3I6IzE3YTJiOCFpbXBvcnRhbnR9LmJvcmRlci13YXJuaW5ne2JvcmRlci1jb2xvcjojZmZjMTA3IWltcG9ydGFudH0uYm9yZGVyLWRhbmdlcntib3JkZXItY29sb3I6I2RjMzU0NSFpbXBvcnRhbnR9LmJvcmRlci1saWdodHtib3JkZXItY29sb3I6I2Y4ZjlmYSFpbXBvcnRhbnR9LmJvcmRlci1kYXJre2JvcmRlci1jb2xvcjojMzQzYTQwIWltcG9ydGFudH0uYm9yZGVyLXdoaXRle2JvcmRlci1jb2xvcjojZmZmIWltcG9ydGFudH0ucm91bmRlZC1zbXtib3JkZXItcmFkaXVzOi4ycmVtIWltcG9ydGFudH0ucm91bmRlZHtib3JkZXItcmFkaXVzOi4yNXJlbSFpbXBvcnRhbnR9LnJvdW5kZWQtdG9we2JvcmRlci10b3AtbGVmdC1yYWRpdXM6LjI1cmVtIWltcG9ydGFudDtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czouMjVyZW0haW1wb3J0YW50fS5yb3VuZGVkLXJpZ2h0e2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOi4yNXJlbSFpbXBvcnRhbnQ7Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6LjI1cmVtIWltcG9ydGFudH0ucm91bmRlZC1ib3R0b217Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6LjI1cmVtIWltcG9ydGFudDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOi4yNXJlbSFpbXBvcnRhbnR9LnJvdW5kZWQtbGVmdHtib3JkZXItdG9wLWxlZnQtcmFkaXVzOi4yNXJlbSFpbXBvcnRhbnQ7Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czouMjVyZW0haW1wb3J0YW50fS5yb3VuZGVkLWxne2JvcmRlci1yYWRpdXM6LjNyZW0haW1wb3J0YW50fS5yb3VuZGVkLWNpcmNsZXtib3JkZXItcmFkaXVzOjUwJSFpbXBvcnRhbnR9LnJvdW5kZWQtcGlsbHtib3JkZXItcmFkaXVzOjUwcmVtIWltcG9ydGFudH0ucm91bmRlZC0we2JvcmRlci1yYWRpdXM6MCFpbXBvcnRhbnR9LmNsZWFyZml4OjphZnRlcntkaXNwbGF5OmJsb2NrO2NsZWFyOmJvdGg7Y29udGVudDoiIn0uZC1ub25le2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LmQtaW5saW5le2Rpc3BsYXk6aW5saW5lIWltcG9ydGFudH0uZC1pbmxpbmUtYmxvY2t7ZGlzcGxheTppbmxpbmUtYmxvY2shaW1wb3J0YW50fS5kLWJsb2Nre2Rpc3BsYXk6YmxvY2shaW1wb3J0YW50fS5kLXRhYmxle2Rpc3BsYXk6dGFibGUhaW1wb3J0YW50fS5kLXRhYmxlLXJvd3tkaXNwbGF5OnRhYmxlLXJvdyFpbXBvcnRhbnR9LmQtdGFibGUtY2VsbHtkaXNwbGF5OnRhYmxlLWNlbGwhaW1wb3J0YW50fS5kLWZsZXh7ZGlzcGxheTotbXMtZmxleGJveCFpbXBvcnRhbnQ7ZGlzcGxheTpmbGV4IWltcG9ydGFudH0uZC1pbmxpbmUtZmxleHtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveCFpbXBvcnRhbnQ7ZGlzcGxheTppbmxpbmUtZmxleCFpbXBvcnRhbnR9QG1lZGlhIChtaW4td2lkdGg6NTc2cHgpey5kLXNtLW5vbmV7ZGlzcGxheTpub25lIWltcG9ydGFudH0uZC1zbS1pbmxpbmV7ZGlzcGxheTppbmxpbmUhaW1wb3J0YW50fS5kLXNtLWlubGluZS1ibG9ja3tkaXNwbGF5OmlubGluZS1ibG9jayFpbXBvcnRhbnR9LmQtc20tYmxvY2t7ZGlzcGxheTpibG9jayFpbXBvcnRhbnR9LmQtc20tdGFibGV7ZGlzcGxheTp0YWJsZSFpbXBvcnRhbnR9LmQtc20tdGFibGUtcm93e2Rpc3BsYXk6dGFibGUtcm93IWltcG9ydGFudH0uZC1zbS10YWJsZS1jZWxse2Rpc3BsYXk6dGFibGUtY2VsbCFpbXBvcnRhbnR9LmQtc20tZmxleHtkaXNwbGF5Oi1tcy1mbGV4Ym94IWltcG9ydGFudDtkaXNwbGF5OmZsZXghaW1wb3J0YW50fS5kLXNtLWlubGluZS1mbGV4e2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94IWltcG9ydGFudDtkaXNwbGF5OmlubGluZS1mbGV4IWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6NzY4cHgpey5kLW1kLW5vbmV7ZGlzcGxheTpub25lIWltcG9ydGFudH0uZC1tZC1pbmxpbmV7ZGlzcGxheTppbmxpbmUhaW1wb3J0YW50fS5kLW1kLWlubGluZS1ibG9ja3tkaXNwbGF5OmlubGluZS1ibG9jayFpbXBvcnRhbnR9LmQtbWQtYmxvY2t7ZGlzcGxheTpibG9jayFpbXBvcnRhbnR9LmQtbWQtdGFibGV7ZGlzcGxheTp0YWJsZSFpbXBvcnRhbnR9LmQtbWQtdGFibGUtcm93e2Rpc3BsYXk6dGFibGUtcm93IWltcG9ydGFudH0uZC1tZC10YWJsZS1jZWxse2Rpc3BsYXk6dGFibGUtY2VsbCFpbXBvcnRhbnR9LmQtbWQtZmxleHtkaXNwbGF5Oi1tcy1mbGV4Ym94IWltcG9ydGFudDtkaXNwbGF5OmZsZXghaW1wb3J0YW50fS5kLW1kLWlubGluZS1mbGV4e2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94IWltcG9ydGFudDtkaXNwbGF5OmlubGluZS1mbGV4IWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6OTkycHgpey5kLWxnLW5vbmV7ZGlzcGxheTpub25lIWltcG9ydGFudH0uZC1sZy1pbmxpbmV7ZGlzcGxheTppbmxpbmUhaW1wb3J0YW50fS5kLWxnLWlubGluZS1ibG9ja3tkaXNwbGF5OmlubGluZS1ibG9jayFpbXBvcnRhbnR9LmQtbGctYmxvY2t7ZGlzcGxheTpibG9jayFpbXBvcnRhbnR9LmQtbGctdGFibGV7ZGlzcGxheTp0YWJsZSFpbXBvcnRhbnR9LmQtbGctdGFibGUtcm93e2Rpc3BsYXk6dGFibGUtcm93IWltcG9ydGFudH0uZC1sZy10YWJsZS1jZWxse2Rpc3BsYXk6dGFibGUtY2VsbCFpbXBvcnRhbnR9LmQtbGctZmxleHtkaXNwbGF5Oi1tcy1mbGV4Ym94IWltcG9ydGFudDtkaXNwbGF5OmZsZXghaW1wb3J0YW50fS5kLWxnLWlubGluZS1mbGV4e2Rpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94IWltcG9ydGFudDtkaXNwbGF5OmlubGluZS1mbGV4IWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KXsuZC14bC1ub25le2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LmQteGwtaW5saW5le2Rpc3BsYXk6aW5saW5lIWltcG9ydGFudH0uZC14bC1pbmxpbmUtYmxvY2t7ZGlzcGxheTppbmxpbmUtYmxvY2shaW1wb3J0YW50fS5kLXhsLWJsb2Nre2Rpc3BsYXk6YmxvY2shaW1wb3J0YW50fS5kLXhsLXRhYmxle2Rpc3BsYXk6dGFibGUhaW1wb3J0YW50fS5kLXhsLXRhYmxlLXJvd3tkaXNwbGF5OnRhYmxlLXJvdyFpbXBvcnRhbnR9LmQteGwtdGFibGUtY2VsbHtkaXNwbGF5OnRhYmxlLWNlbGwhaW1wb3J0YW50fS5kLXhsLWZsZXh7ZGlzcGxheTotbXMtZmxleGJveCFpbXBvcnRhbnQ7ZGlzcGxheTpmbGV4IWltcG9ydGFudH0uZC14bC1pbmxpbmUtZmxleHtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveCFpbXBvcnRhbnQ7ZGlzcGxheTppbmxpbmUtZmxleCFpbXBvcnRhbnR9fUBtZWRpYSBwcmludHsuZC1wcmludC1ub25le2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LmQtcHJpbnQtaW5saW5le2Rpc3BsYXk6aW5saW5lIWltcG9ydGFudH0uZC1wcmludC1pbmxpbmUtYmxvY2t7ZGlzcGxheTppbmxpbmUtYmxvY2shaW1wb3J0YW50fS5kLXByaW50LWJsb2Nre2Rpc3BsYXk6YmxvY2shaW1wb3J0YW50fS5kLXByaW50LXRhYmxle2Rpc3BsYXk6dGFibGUhaW1wb3J0YW50fS5kLXByaW50LXRhYmxlLXJvd3tkaXNwbGF5OnRhYmxlLXJvdyFpbXBvcnRhbnR9LmQtcHJpbnQtdGFibGUtY2VsbHtkaXNwbGF5OnRhYmxlLWNlbGwhaW1wb3J0YW50fS5kLXByaW50LWZsZXh7ZGlzcGxheTotbXMtZmxleGJveCFpbXBvcnRhbnQ7ZGlzcGxheTpmbGV4IWltcG9ydGFudH0uZC1wcmludC1pbmxpbmUtZmxleHtkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveCFpbXBvcnRhbnQ7ZGlzcGxheTppbmxpbmUtZmxleCFpbXBvcnRhbnR9fS5lbWJlZC1yZXNwb25zaXZle3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJTtwYWRkaW5nOjA7b3ZlcmZsb3c6aGlkZGVufS5lbWJlZC1yZXNwb25zaXZlOjpiZWZvcmV7ZGlzcGxheTpibG9jaztjb250ZW50OiIifS5lbWJlZC1yZXNwb25zaXZlIC5lbWJlZC1yZXNwb25zaXZlLWl0ZW0sLmVtYmVkLXJlc3BvbnNpdmUgZW1iZWQsLmVtYmVkLXJlc3BvbnNpdmUgaWZyYW1lLC5lbWJlZC1yZXNwb25zaXZlIG9iamVjdCwuZW1iZWQtcmVzcG9uc2l2ZSB2aWRlb3twb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtib3JkZXI6MH0uZW1iZWQtcmVzcG9uc2l2ZS0yMWJ5OTo6YmVmb3Jle3BhZGRpbmctdG9wOjQyLjg1NzE0MyV9LmVtYmVkLXJlc3BvbnNpdmUtMTZieTk6OmJlZm9yZXtwYWRkaW5nLXRvcDo1Ni4yNSV9LmVtYmVkLXJlc3BvbnNpdmUtNGJ5Mzo6YmVmb3Jle3BhZGRpbmctdG9wOjc1JX0uZW1iZWQtcmVzcG9uc2l2ZS0xYnkxOjpiZWZvcmV7cGFkZGluZy10b3A6MTAwJX0uZmxleC1yb3d7LW1zLWZsZXgtZGlyZWN0aW9uOnJvdyFpbXBvcnRhbnQ7ZmxleC1kaXJlY3Rpb246cm93IWltcG9ydGFudH0uZmxleC1jb2x1bW57LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbiFpbXBvcnRhbnQ7ZmxleC1kaXJlY3Rpb246Y29sdW1uIWltcG9ydGFudH0uZmxleC1yb3ctcmV2ZXJzZXstbXMtZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2UhaW1wb3J0YW50O2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlIWltcG9ydGFudH0uZmxleC1jb2x1bW4tcmV2ZXJzZXstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2UhaW1wb3J0YW50O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlIWltcG9ydGFudH0uZmxleC13cmFwey1tcy1mbGV4LXdyYXA6d3JhcCFpbXBvcnRhbnQ7ZmxleC13cmFwOndyYXAhaW1wb3J0YW50fS5mbGV4LW5vd3JhcHstbXMtZmxleC13cmFwOm5vd3JhcCFpbXBvcnRhbnQ7ZmxleC13cmFwOm5vd3JhcCFpbXBvcnRhbnR9LmZsZXgtd3JhcC1yZXZlcnNley1tcy1mbGV4LXdyYXA6d3JhcC1yZXZlcnNlIWltcG9ydGFudDtmbGV4LXdyYXA6d3JhcC1yZXZlcnNlIWltcG9ydGFudH0uZmxleC1maWxsey1tcy1mbGV4OjEgMSBhdXRvIWltcG9ydGFudDtmbGV4OjEgMSBhdXRvIWltcG9ydGFudH0uZmxleC1ncm93LTB7LW1zLWZsZXgtcG9zaXRpdmU6MCFpbXBvcnRhbnQ7ZmxleC1ncm93OjAhaW1wb3J0YW50fS5mbGV4LWdyb3ctMXstbXMtZmxleC1wb3NpdGl2ZToxIWltcG9ydGFudDtmbGV4LWdyb3c6MSFpbXBvcnRhbnR9LmZsZXgtc2hyaW5rLTB7LW1zLWZsZXgtbmVnYXRpdmU6MCFpbXBvcnRhbnQ7ZmxleC1zaHJpbms6MCFpbXBvcnRhbnR9LmZsZXgtc2hyaW5rLTF7LW1zLWZsZXgtbmVnYXRpdmU6MSFpbXBvcnRhbnQ7ZmxleC1zaHJpbms6MSFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC1zdGFydHstbXMtZmxleC1wYWNrOnN0YXJ0IWltcG9ydGFudDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydCFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC1lbmR7LW1zLWZsZXgtcGFjazplbmQhaW1wb3J0YW50O2p1c3RpZnktY29udGVudDpmbGV4LWVuZCFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC1jZW50ZXJ7LW1zLWZsZXgtcGFjazpjZW50ZXIhaW1wb3J0YW50O2p1c3RpZnktY29udGVudDpjZW50ZXIhaW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbnstbXMtZmxleC1wYWNrOmp1c3RpZnkhaW1wb3J0YW50O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LWFyb3VuZHstbXMtZmxleC1wYWNrOmRpc3RyaWJ1dGUhaW1wb3J0YW50O2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy1zdGFydHstbXMtZmxleC1hbGlnbjpzdGFydCFpbXBvcnRhbnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydCFpbXBvcnRhbnR9LmFsaWduLWl0ZW1zLWVuZHstbXMtZmxleC1hbGlnbjplbmQhaW1wb3J0YW50O2FsaWduLWl0ZW1zOmZsZXgtZW5kIWltcG9ydGFudH0uYWxpZ24taXRlbXMtY2VudGVyey1tcy1mbGV4LWFsaWduOmNlbnRlciFpbXBvcnRhbnQ7YWxpZ24taXRlbXM6Y2VudGVyIWltcG9ydGFudH0uYWxpZ24taXRlbXMtYmFzZWxpbmV7LW1zLWZsZXgtYWxpZ246YmFzZWxpbmUhaW1wb3J0YW50O2FsaWduLWl0ZW1zOmJhc2VsaW5lIWltcG9ydGFudH0uYWxpZ24taXRlbXMtc3RyZXRjaHstbXMtZmxleC1hbGlnbjpzdHJldGNoIWltcG9ydGFudDthbGlnbi1pdGVtczpzdHJldGNoIWltcG9ydGFudH0uYWxpZ24tY29udGVudC1zdGFydHstbXMtZmxleC1saW5lLXBhY2s6c3RhcnQhaW1wb3J0YW50O2FsaWduLWNvbnRlbnQ6ZmxleC1zdGFydCFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQtZW5key1tcy1mbGV4LWxpbmUtcGFjazplbmQhaW1wb3J0YW50O2FsaWduLWNvbnRlbnQ6ZmxleC1lbmQhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LWNlbnRlcnstbXMtZmxleC1saW5lLXBhY2s6Y2VudGVyIWltcG9ydGFudDthbGlnbi1jb250ZW50OmNlbnRlciFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQtYmV0d2VlbnstbXMtZmxleC1saW5lLXBhY2s6anVzdGlmeSFpbXBvcnRhbnQ7YWxpZ24tY29udGVudDpzcGFjZS1iZXR3ZWVuIWltcG9ydGFudH0uYWxpZ24tY29udGVudC1hcm91bmR7LW1zLWZsZXgtbGluZS1wYWNrOmRpc3RyaWJ1dGUhaW1wb3J0YW50O2FsaWduLWNvbnRlbnQ6c3BhY2UtYXJvdW5kIWltcG9ydGFudH0uYWxpZ24tY29udGVudC1zdHJldGNoey1tcy1mbGV4LWxpbmUtcGFjazpzdHJldGNoIWltcG9ydGFudDthbGlnbi1jb250ZW50OnN0cmV0Y2ghaW1wb3J0YW50fS5hbGlnbi1zZWxmLWF1dG97LW1zLWZsZXgtaXRlbS1hbGlnbjphdXRvIWltcG9ydGFudDthbGlnbi1zZWxmOmF1dG8haW1wb3J0YW50fS5hbGlnbi1zZWxmLXN0YXJ0ey1tcy1mbGV4LWl0ZW0tYWxpZ246c3RhcnQhaW1wb3J0YW50O2FsaWduLXNlbGY6ZmxleC1zdGFydCFpbXBvcnRhbnR9LmFsaWduLXNlbGYtZW5key1tcy1mbGV4LWl0ZW0tYWxpZ246ZW5kIWltcG9ydGFudDthbGlnbi1zZWxmOmZsZXgtZW5kIWltcG9ydGFudH0uYWxpZ24tc2VsZi1jZW50ZXJ7LW1zLWZsZXgtaXRlbS1hbGlnbjpjZW50ZXIhaW1wb3J0YW50O2FsaWduLXNlbGY6Y2VudGVyIWltcG9ydGFudH0uYWxpZ24tc2VsZi1iYXNlbGluZXstbXMtZmxleC1pdGVtLWFsaWduOmJhc2VsaW5lIWltcG9ydGFudDthbGlnbi1zZWxmOmJhc2VsaW5lIWltcG9ydGFudH0uYWxpZ24tc2VsZi1zdHJldGNoey1tcy1mbGV4LWl0ZW0tYWxpZ246c3RyZXRjaCFpbXBvcnRhbnQ7YWxpZ24tc2VsZjpzdHJldGNoIWltcG9ydGFudH1AbWVkaWEgKG1pbi13aWR0aDo1NzZweCl7LmZsZXgtc20tcm93ey1tcy1mbGV4LWRpcmVjdGlvbjpyb3chaW1wb3J0YW50O2ZsZXgtZGlyZWN0aW9uOnJvdyFpbXBvcnRhbnR9LmZsZXgtc20tY29sdW1uey1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW4haW1wb3J0YW50O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbiFpbXBvcnRhbnR9LmZsZXgtc20tcm93LXJldmVyc2V7LW1zLWZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlIWltcG9ydGFudDtmbGV4LWRpcmVjdGlvbjpyb3ctcmV2ZXJzZSFpbXBvcnRhbnR9LmZsZXgtc20tY29sdW1uLXJldmVyc2V7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlIWltcG9ydGFudDtmbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZSFpbXBvcnRhbnR9LmZsZXgtc20td3JhcHstbXMtZmxleC13cmFwOndyYXAhaW1wb3J0YW50O2ZsZXgtd3JhcDp3cmFwIWltcG9ydGFudH0uZmxleC1zbS1ub3dyYXB7LW1zLWZsZXgtd3JhcDpub3dyYXAhaW1wb3J0YW50O2ZsZXgtd3JhcDpub3dyYXAhaW1wb3J0YW50fS5mbGV4LXNtLXdyYXAtcmV2ZXJzZXstbXMtZmxleC13cmFwOndyYXAtcmV2ZXJzZSFpbXBvcnRhbnQ7ZmxleC13cmFwOndyYXAtcmV2ZXJzZSFpbXBvcnRhbnR9LmZsZXgtc20tZmlsbHstbXMtZmxleDoxIDEgYXV0byFpbXBvcnRhbnQ7ZmxleDoxIDEgYXV0byFpbXBvcnRhbnR9LmZsZXgtc20tZ3Jvdy0wey1tcy1mbGV4LXBvc2l0aXZlOjAhaW1wb3J0YW50O2ZsZXgtZ3JvdzowIWltcG9ydGFudH0uZmxleC1zbS1ncm93LTF7LW1zLWZsZXgtcG9zaXRpdmU6MSFpbXBvcnRhbnQ7ZmxleC1ncm93OjEhaW1wb3J0YW50fS5mbGV4LXNtLXNocmluay0wey1tcy1mbGV4LW5lZ2F0aXZlOjAhaW1wb3J0YW50O2ZsZXgtc2hyaW5rOjAhaW1wb3J0YW50fS5mbGV4LXNtLXNocmluay0xey1tcy1mbGV4LW5lZ2F0aXZlOjEhaW1wb3J0YW50O2ZsZXgtc2hyaW5rOjEhaW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQtc20tc3RhcnR7LW1zLWZsZXgtcGFjazpzdGFydCFpbXBvcnRhbnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQhaW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQtc20tZW5key1tcy1mbGV4LXBhY2s6ZW5kIWltcG9ydGFudDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQhaW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQtc20tY2VudGVyey1tcy1mbGV4LXBhY2s6Y2VudGVyIWltcG9ydGFudDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LXNtLWJldHdlZW57LW1zLWZsZXgtcGFjazpqdXN0aWZ5IWltcG9ydGFudDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbiFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC1zbS1hcm91bmR7LW1zLWZsZXgtcGFjazpkaXN0cmlidXRlIWltcG9ydGFudDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYXJvdW5kIWltcG9ydGFudH0uYWxpZ24taXRlbXMtc20tc3RhcnR7LW1zLWZsZXgtYWxpZ246c3RhcnQhaW1wb3J0YW50O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy1zbS1lbmR7LW1zLWZsZXgtYWxpZ246ZW5kIWltcG9ydGFudDthbGlnbi1pdGVtczpmbGV4LWVuZCFpbXBvcnRhbnR9LmFsaWduLWl0ZW1zLXNtLWNlbnRlcnstbXMtZmxleC1hbGlnbjpjZW50ZXIhaW1wb3J0YW50O2FsaWduLWl0ZW1zOmNlbnRlciFpbXBvcnRhbnR9LmFsaWduLWl0ZW1zLXNtLWJhc2VsaW5ley1tcy1mbGV4LWFsaWduOmJhc2VsaW5lIWltcG9ydGFudDthbGlnbi1pdGVtczpiYXNlbGluZSFpbXBvcnRhbnR9LmFsaWduLWl0ZW1zLXNtLXN0cmV0Y2h7LW1zLWZsZXgtYWxpZ246c3RyZXRjaCFpbXBvcnRhbnQ7YWxpZ24taXRlbXM6c3RyZXRjaCFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQtc20tc3RhcnR7LW1zLWZsZXgtbGluZS1wYWNrOnN0YXJ0IWltcG9ydGFudDthbGlnbi1jb250ZW50OmZsZXgtc3RhcnQhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LXNtLWVuZHstbXMtZmxleC1saW5lLXBhY2s6ZW5kIWltcG9ydGFudDthbGlnbi1jb250ZW50OmZsZXgtZW5kIWltcG9ydGFudH0uYWxpZ24tY29udGVudC1zbS1jZW50ZXJ7LW1zLWZsZXgtbGluZS1wYWNrOmNlbnRlciFpbXBvcnRhbnQ7YWxpZ24tY29udGVudDpjZW50ZXIhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LXNtLWJldHdlZW57LW1zLWZsZXgtbGluZS1wYWNrOmp1c3RpZnkhaW1wb3J0YW50O2FsaWduLWNvbnRlbnQ6c3BhY2UtYmV0d2VlbiFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQtc20tYXJvdW5key1tcy1mbGV4LWxpbmUtcGFjazpkaXN0cmlidXRlIWltcG9ydGFudDthbGlnbi1jb250ZW50OnNwYWNlLWFyb3VuZCFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQtc20tc3RyZXRjaHstbXMtZmxleC1saW5lLXBhY2s6c3RyZXRjaCFpbXBvcnRhbnQ7YWxpZ24tY29udGVudDpzdHJldGNoIWltcG9ydGFudH0uYWxpZ24tc2VsZi1zbS1hdXRvey1tcy1mbGV4LWl0ZW0tYWxpZ246YXV0byFpbXBvcnRhbnQ7YWxpZ24tc2VsZjphdXRvIWltcG9ydGFudH0uYWxpZ24tc2VsZi1zbS1zdGFydHstbXMtZmxleC1pdGVtLWFsaWduOnN0YXJ0IWltcG9ydGFudDthbGlnbi1zZWxmOmZsZXgtc3RhcnQhaW1wb3J0YW50fS5hbGlnbi1zZWxmLXNtLWVuZHstbXMtZmxleC1pdGVtLWFsaWduOmVuZCFpbXBvcnRhbnQ7YWxpZ24tc2VsZjpmbGV4LWVuZCFpbXBvcnRhbnR9LmFsaWduLXNlbGYtc20tY2VudGVyey1tcy1mbGV4LWl0ZW0tYWxpZ246Y2VudGVyIWltcG9ydGFudDthbGlnbi1zZWxmOmNlbnRlciFpbXBvcnRhbnR9LmFsaWduLXNlbGYtc20tYmFzZWxpbmV7LW1zLWZsZXgtaXRlbS1hbGlnbjpiYXNlbGluZSFpbXBvcnRhbnQ7YWxpZ24tc2VsZjpiYXNlbGluZSFpbXBvcnRhbnR9LmFsaWduLXNlbGYtc20tc3RyZXRjaHstbXMtZmxleC1pdGVtLWFsaWduOnN0cmV0Y2ghaW1wb3J0YW50O2FsaWduLXNlbGY6c3RyZXRjaCFpbXBvcnRhbnR9fUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsuZmxleC1tZC1yb3d7LW1zLWZsZXgtZGlyZWN0aW9uOnJvdyFpbXBvcnRhbnQ7ZmxleC1kaXJlY3Rpb246cm93IWltcG9ydGFudH0uZmxleC1tZC1jb2x1bW57LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbiFpbXBvcnRhbnQ7ZmxleC1kaXJlY3Rpb246Y29sdW1uIWltcG9ydGFudH0uZmxleC1tZC1yb3ctcmV2ZXJzZXstbXMtZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2UhaW1wb3J0YW50O2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlIWltcG9ydGFudH0uZmxleC1tZC1jb2x1bW4tcmV2ZXJzZXstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2UhaW1wb3J0YW50O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlIWltcG9ydGFudH0uZmxleC1tZC13cmFwey1tcy1mbGV4LXdyYXA6d3JhcCFpbXBvcnRhbnQ7ZmxleC13cmFwOndyYXAhaW1wb3J0YW50fS5mbGV4LW1kLW5vd3JhcHstbXMtZmxleC13cmFwOm5vd3JhcCFpbXBvcnRhbnQ7ZmxleC13cmFwOm5vd3JhcCFpbXBvcnRhbnR9LmZsZXgtbWQtd3JhcC1yZXZlcnNley1tcy1mbGV4LXdyYXA6d3JhcC1yZXZlcnNlIWltcG9ydGFudDtmbGV4LXdyYXA6d3JhcC1yZXZlcnNlIWltcG9ydGFudH0uZmxleC1tZC1maWxsey1tcy1mbGV4OjEgMSBhdXRvIWltcG9ydGFudDtmbGV4OjEgMSBhdXRvIWltcG9ydGFudH0uZmxleC1tZC1ncm93LTB7LW1zLWZsZXgtcG9zaXRpdmU6MCFpbXBvcnRhbnQ7ZmxleC1ncm93OjAhaW1wb3J0YW50fS5mbGV4LW1kLWdyb3ctMXstbXMtZmxleC1wb3NpdGl2ZToxIWltcG9ydGFudDtmbGV4LWdyb3c6MSFpbXBvcnRhbnR9LmZsZXgtbWQtc2hyaW5rLTB7LW1zLWZsZXgtbmVnYXRpdmU6MCFpbXBvcnRhbnQ7ZmxleC1zaHJpbms6MCFpbXBvcnRhbnR9LmZsZXgtbWQtc2hyaW5rLTF7LW1zLWZsZXgtbmVnYXRpdmU6MSFpbXBvcnRhbnQ7ZmxleC1zaHJpbms6MSFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC1tZC1zdGFydHstbXMtZmxleC1wYWNrOnN0YXJ0IWltcG9ydGFudDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydCFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC1tZC1lbmR7LW1zLWZsZXgtcGFjazplbmQhaW1wb3J0YW50O2p1c3RpZnktY29udGVudDpmbGV4LWVuZCFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC1tZC1jZW50ZXJ7LW1zLWZsZXgtcGFjazpjZW50ZXIhaW1wb3J0YW50O2p1c3RpZnktY29udGVudDpjZW50ZXIhaW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQtbWQtYmV0d2VlbnstbXMtZmxleC1wYWNrOmp1c3RpZnkhaW1wb3J0YW50O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LW1kLWFyb3VuZHstbXMtZmxleC1wYWNrOmRpc3RyaWJ1dGUhaW1wb3J0YW50O2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy1tZC1zdGFydHstbXMtZmxleC1hbGlnbjpzdGFydCFpbXBvcnRhbnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydCFpbXBvcnRhbnR9LmFsaWduLWl0ZW1zLW1kLWVuZHstbXMtZmxleC1hbGlnbjplbmQhaW1wb3J0YW50O2FsaWduLWl0ZW1zOmZsZXgtZW5kIWltcG9ydGFudH0uYWxpZ24taXRlbXMtbWQtY2VudGVyey1tcy1mbGV4LWFsaWduOmNlbnRlciFpbXBvcnRhbnQ7YWxpZ24taXRlbXM6Y2VudGVyIWltcG9ydGFudH0uYWxpZ24taXRlbXMtbWQtYmFzZWxpbmV7LW1zLWZsZXgtYWxpZ246YmFzZWxpbmUhaW1wb3J0YW50O2FsaWduLWl0ZW1zOmJhc2VsaW5lIWltcG9ydGFudH0uYWxpZ24taXRlbXMtbWQtc3RyZXRjaHstbXMtZmxleC1hbGlnbjpzdHJldGNoIWltcG9ydGFudDthbGlnbi1pdGVtczpzdHJldGNoIWltcG9ydGFudH0uYWxpZ24tY29udGVudC1tZC1zdGFydHstbXMtZmxleC1saW5lLXBhY2s6c3RhcnQhaW1wb3J0YW50O2FsaWduLWNvbnRlbnQ6ZmxleC1zdGFydCFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQtbWQtZW5key1tcy1mbGV4LWxpbmUtcGFjazplbmQhaW1wb3J0YW50O2FsaWduLWNvbnRlbnQ6ZmxleC1lbmQhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LW1kLWNlbnRlcnstbXMtZmxleC1saW5lLXBhY2s6Y2VudGVyIWltcG9ydGFudDthbGlnbi1jb250ZW50OmNlbnRlciFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQtbWQtYmV0d2VlbnstbXMtZmxleC1saW5lLXBhY2s6anVzdGlmeSFpbXBvcnRhbnQ7YWxpZ24tY29udGVudDpzcGFjZS1iZXR3ZWVuIWltcG9ydGFudH0uYWxpZ24tY29udGVudC1tZC1hcm91bmR7LW1zLWZsZXgtbGluZS1wYWNrOmRpc3RyaWJ1dGUhaW1wb3J0YW50O2FsaWduLWNvbnRlbnQ6c3BhY2UtYXJvdW5kIWltcG9ydGFudH0uYWxpZ24tY29udGVudC1tZC1zdHJldGNoey1tcy1mbGV4LWxpbmUtcGFjazpzdHJldGNoIWltcG9ydGFudDthbGlnbi1jb250ZW50OnN0cmV0Y2ghaW1wb3J0YW50fS5hbGlnbi1zZWxmLW1kLWF1dG97LW1zLWZsZXgtaXRlbS1hbGlnbjphdXRvIWltcG9ydGFudDthbGlnbi1zZWxmOmF1dG8haW1wb3J0YW50fS5hbGlnbi1zZWxmLW1kLXN0YXJ0ey1tcy1mbGV4LWl0ZW0tYWxpZ246c3RhcnQhaW1wb3J0YW50O2FsaWduLXNlbGY6ZmxleC1zdGFydCFpbXBvcnRhbnR9LmFsaWduLXNlbGYtbWQtZW5key1tcy1mbGV4LWl0ZW0tYWxpZ246ZW5kIWltcG9ydGFudDthbGlnbi1zZWxmOmZsZXgtZW5kIWltcG9ydGFudH0uYWxpZ24tc2VsZi1tZC1jZW50ZXJ7LW1zLWZsZXgtaXRlbS1hbGlnbjpjZW50ZXIhaW1wb3J0YW50O2FsaWduLXNlbGY6Y2VudGVyIWltcG9ydGFudH0uYWxpZ24tc2VsZi1tZC1iYXNlbGluZXstbXMtZmxleC1pdGVtLWFsaWduOmJhc2VsaW5lIWltcG9ydGFudDthbGlnbi1zZWxmOmJhc2VsaW5lIWltcG9ydGFudH0uYWxpZ24tc2VsZi1tZC1zdHJldGNoey1tcy1mbGV4LWl0ZW0tYWxpZ246c3RyZXRjaCFpbXBvcnRhbnQ7YWxpZ24tc2VsZjpzdHJldGNoIWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6OTkycHgpey5mbGV4LWxnLXJvd3stbXMtZmxleC1kaXJlY3Rpb246cm93IWltcG9ydGFudDtmbGV4LWRpcmVjdGlvbjpyb3chaW1wb3J0YW50fS5mbGV4LWxnLWNvbHVtbnstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uIWltcG9ydGFudDtmbGV4LWRpcmVjdGlvbjpjb2x1bW4haW1wb3J0YW50fS5mbGV4LWxnLXJvdy1yZXZlcnNley1tcy1mbGV4LWRpcmVjdGlvbjpyb3ctcmV2ZXJzZSFpbXBvcnRhbnQ7ZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2UhaW1wb3J0YW50fS5mbGV4LWxnLWNvbHVtbi1yZXZlcnNley1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZSFpbXBvcnRhbnQ7ZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2UhaW1wb3J0YW50fS5mbGV4LWxnLXdyYXB7LW1zLWZsZXgtd3JhcDp3cmFwIWltcG9ydGFudDtmbGV4LXdyYXA6d3JhcCFpbXBvcnRhbnR9LmZsZXgtbGctbm93cmFwey1tcy1mbGV4LXdyYXA6bm93cmFwIWltcG9ydGFudDtmbGV4LXdyYXA6bm93cmFwIWltcG9ydGFudH0uZmxleC1sZy13cmFwLXJldmVyc2V7LW1zLWZsZXgtd3JhcDp3cmFwLXJldmVyc2UhaW1wb3J0YW50O2ZsZXgtd3JhcDp3cmFwLXJldmVyc2UhaW1wb3J0YW50fS5mbGV4LWxnLWZpbGx7LW1zLWZsZXg6MSAxIGF1dG8haW1wb3J0YW50O2ZsZXg6MSAxIGF1dG8haW1wb3J0YW50fS5mbGV4LWxnLWdyb3ctMHstbXMtZmxleC1wb3NpdGl2ZTowIWltcG9ydGFudDtmbGV4LWdyb3c6MCFpbXBvcnRhbnR9LmZsZXgtbGctZ3Jvdy0xey1tcy1mbGV4LXBvc2l0aXZlOjEhaW1wb3J0YW50O2ZsZXgtZ3JvdzoxIWltcG9ydGFudH0uZmxleC1sZy1zaHJpbmstMHstbXMtZmxleC1uZWdhdGl2ZTowIWltcG9ydGFudDtmbGV4LXNocmluazowIWltcG9ydGFudH0uZmxleC1sZy1zaHJpbmstMXstbXMtZmxleC1uZWdhdGl2ZToxIWltcG9ydGFudDtmbGV4LXNocmluazoxIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LWxnLXN0YXJ0ey1tcy1mbGV4LXBhY2s6c3RhcnQhaW1wb3J0YW50O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0IWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LWxnLWVuZHstbXMtZmxleC1wYWNrOmVuZCFpbXBvcnRhbnQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LWxnLWNlbnRlcnstbXMtZmxleC1wYWNrOmNlbnRlciFpbXBvcnRhbnQ7anVzdGlmeS1jb250ZW50OmNlbnRlciFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC1sZy1iZXR3ZWVuey1tcy1mbGV4LXBhY2s6anVzdGlmeSFpbXBvcnRhbnQ7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW4haW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQtbGctYXJvdW5key1tcy1mbGV4LXBhY2s6ZGlzdHJpYnV0ZSFpbXBvcnRhbnQ7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZCFpbXBvcnRhbnR9LmFsaWduLWl0ZW1zLWxnLXN0YXJ0ey1tcy1mbGV4LWFsaWduOnN0YXJ0IWltcG9ydGFudDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0IWltcG9ydGFudH0uYWxpZ24taXRlbXMtbGctZW5key1tcy1mbGV4LWFsaWduOmVuZCFpbXBvcnRhbnQ7YWxpZ24taXRlbXM6ZmxleC1lbmQhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy1sZy1jZW50ZXJ7LW1zLWZsZXgtYWxpZ246Y2VudGVyIWltcG9ydGFudDthbGlnbi1pdGVtczpjZW50ZXIhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy1sZy1iYXNlbGluZXstbXMtZmxleC1hbGlnbjpiYXNlbGluZSFpbXBvcnRhbnQ7YWxpZ24taXRlbXM6YmFzZWxpbmUhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy1sZy1zdHJldGNoey1tcy1mbGV4LWFsaWduOnN0cmV0Y2ghaW1wb3J0YW50O2FsaWduLWl0ZW1zOnN0cmV0Y2ghaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LWxnLXN0YXJ0ey1tcy1mbGV4LWxpbmUtcGFjazpzdGFydCFpbXBvcnRhbnQ7YWxpZ24tY29udGVudDpmbGV4LXN0YXJ0IWltcG9ydGFudH0uYWxpZ24tY29udGVudC1sZy1lbmR7LW1zLWZsZXgtbGluZS1wYWNrOmVuZCFpbXBvcnRhbnQ7YWxpZ24tY29udGVudDpmbGV4LWVuZCFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQtbGctY2VudGVyey1tcy1mbGV4LWxpbmUtcGFjazpjZW50ZXIhaW1wb3J0YW50O2FsaWduLWNvbnRlbnQ6Y2VudGVyIWltcG9ydGFudH0uYWxpZ24tY29udGVudC1sZy1iZXR3ZWVuey1tcy1mbGV4LWxpbmUtcGFjazpqdXN0aWZ5IWltcG9ydGFudDthbGlnbi1jb250ZW50OnNwYWNlLWJldHdlZW4haW1wb3J0YW50fS5hbGlnbi1jb250ZW50LWxnLWFyb3VuZHstbXMtZmxleC1saW5lLXBhY2s6ZGlzdHJpYnV0ZSFpbXBvcnRhbnQ7YWxpZ24tY29udGVudDpzcGFjZS1hcm91bmQhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LWxnLXN0cmV0Y2h7LW1zLWZsZXgtbGluZS1wYWNrOnN0cmV0Y2ghaW1wb3J0YW50O2FsaWduLWNvbnRlbnQ6c3RyZXRjaCFpbXBvcnRhbnR9LmFsaWduLXNlbGYtbGctYXV0b3stbXMtZmxleC1pdGVtLWFsaWduOmF1dG8haW1wb3J0YW50O2FsaWduLXNlbGY6YXV0byFpbXBvcnRhbnR9LmFsaWduLXNlbGYtbGctc3RhcnR7LW1zLWZsZXgtaXRlbS1hbGlnbjpzdGFydCFpbXBvcnRhbnQ7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0IWltcG9ydGFudH0uYWxpZ24tc2VsZi1sZy1lbmR7LW1zLWZsZXgtaXRlbS1hbGlnbjplbmQhaW1wb3J0YW50O2FsaWduLXNlbGY6ZmxleC1lbmQhaW1wb3J0YW50fS5hbGlnbi1zZWxmLWxnLWNlbnRlcnstbXMtZmxleC1pdGVtLWFsaWduOmNlbnRlciFpbXBvcnRhbnQ7YWxpZ24tc2VsZjpjZW50ZXIhaW1wb3J0YW50fS5hbGlnbi1zZWxmLWxnLWJhc2VsaW5ley1tcy1mbGV4LWl0ZW0tYWxpZ246YmFzZWxpbmUhaW1wb3J0YW50O2FsaWduLXNlbGY6YmFzZWxpbmUhaW1wb3J0YW50fS5hbGlnbi1zZWxmLWxnLXN0cmV0Y2h7LW1zLWZsZXgtaXRlbS1hbGlnbjpzdHJldGNoIWltcG9ydGFudDthbGlnbi1zZWxmOnN0cmV0Y2ghaW1wb3J0YW50fX1AbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpey5mbGV4LXhsLXJvd3stbXMtZmxleC1kaXJlY3Rpb246cm93IWltcG9ydGFudDtmbGV4LWRpcmVjdGlvbjpyb3chaW1wb3J0YW50fS5mbGV4LXhsLWNvbHVtbnstbXMtZmxleC1kaXJlY3Rpb246Y29sdW1uIWltcG9ydGFudDtmbGV4LWRpcmVjdGlvbjpjb2x1bW4haW1wb3J0YW50fS5mbGV4LXhsLXJvdy1yZXZlcnNley1tcy1mbGV4LWRpcmVjdGlvbjpyb3ctcmV2ZXJzZSFpbXBvcnRhbnQ7ZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2UhaW1wb3J0YW50fS5mbGV4LXhsLWNvbHVtbi1yZXZlcnNley1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZSFpbXBvcnRhbnQ7ZmxleC1kaXJlY3Rpb246Y29sdW1uLXJldmVyc2UhaW1wb3J0YW50fS5mbGV4LXhsLXdyYXB7LW1zLWZsZXgtd3JhcDp3cmFwIWltcG9ydGFudDtmbGV4LXdyYXA6d3JhcCFpbXBvcnRhbnR9LmZsZXgteGwtbm93cmFwey1tcy1mbGV4LXdyYXA6bm93cmFwIWltcG9ydGFudDtmbGV4LXdyYXA6bm93cmFwIWltcG9ydGFudH0uZmxleC14bC13cmFwLXJldmVyc2V7LW1zLWZsZXgtd3JhcDp3cmFwLXJldmVyc2UhaW1wb3J0YW50O2ZsZXgtd3JhcDp3cmFwLXJldmVyc2UhaW1wb3J0YW50fS5mbGV4LXhsLWZpbGx7LW1zLWZsZXg6MSAxIGF1dG8haW1wb3J0YW50O2ZsZXg6MSAxIGF1dG8haW1wb3J0YW50fS5mbGV4LXhsLWdyb3ctMHstbXMtZmxleC1wb3NpdGl2ZTowIWltcG9ydGFudDtmbGV4LWdyb3c6MCFpbXBvcnRhbnR9LmZsZXgteGwtZ3Jvdy0xey1tcy1mbGV4LXBvc2l0aXZlOjEhaW1wb3J0YW50O2ZsZXgtZ3JvdzoxIWltcG9ydGFudH0uZmxleC14bC1zaHJpbmstMHstbXMtZmxleC1uZWdhdGl2ZTowIWltcG9ydGFudDtmbGV4LXNocmluazowIWltcG9ydGFudH0uZmxleC14bC1zaHJpbmstMXstbXMtZmxleC1uZWdhdGl2ZToxIWltcG9ydGFudDtmbGV4LXNocmluazoxIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LXhsLXN0YXJ0ey1tcy1mbGV4LXBhY2s6c3RhcnQhaW1wb3J0YW50O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0IWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LXhsLWVuZHstbXMtZmxleC1wYWNrOmVuZCFpbXBvcnRhbnQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kIWltcG9ydGFudH0uanVzdGlmeS1jb250ZW50LXhsLWNlbnRlcnstbXMtZmxleC1wYWNrOmNlbnRlciFpbXBvcnRhbnQ7anVzdGlmeS1jb250ZW50OmNlbnRlciFpbXBvcnRhbnR9Lmp1c3RpZnktY29udGVudC14bC1iZXR3ZWVuey1tcy1mbGV4LXBhY2s6anVzdGlmeSFpbXBvcnRhbnQ7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW4haW1wb3J0YW50fS5qdXN0aWZ5LWNvbnRlbnQteGwtYXJvdW5key1tcy1mbGV4LXBhY2s6ZGlzdHJpYnV0ZSFpbXBvcnRhbnQ7anVzdGlmeS1jb250ZW50OnNwYWNlLWFyb3VuZCFpbXBvcnRhbnR9LmFsaWduLWl0ZW1zLXhsLXN0YXJ0ey1tcy1mbGV4LWFsaWduOnN0YXJ0IWltcG9ydGFudDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0IWltcG9ydGFudH0uYWxpZ24taXRlbXMteGwtZW5key1tcy1mbGV4LWFsaWduOmVuZCFpbXBvcnRhbnQ7YWxpZ24taXRlbXM6ZmxleC1lbmQhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy14bC1jZW50ZXJ7LW1zLWZsZXgtYWxpZ246Y2VudGVyIWltcG9ydGFudDthbGlnbi1pdGVtczpjZW50ZXIhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy14bC1iYXNlbGluZXstbXMtZmxleC1hbGlnbjpiYXNlbGluZSFpbXBvcnRhbnQ7YWxpZ24taXRlbXM6YmFzZWxpbmUhaW1wb3J0YW50fS5hbGlnbi1pdGVtcy14bC1zdHJldGNoey1tcy1mbGV4LWFsaWduOnN0cmV0Y2ghaW1wb3J0YW50O2FsaWduLWl0ZW1zOnN0cmV0Y2ghaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LXhsLXN0YXJ0ey1tcy1mbGV4LWxpbmUtcGFjazpzdGFydCFpbXBvcnRhbnQ7YWxpZ24tY29udGVudDpmbGV4LXN0YXJ0IWltcG9ydGFudH0uYWxpZ24tY29udGVudC14bC1lbmR7LW1zLWZsZXgtbGluZS1wYWNrOmVuZCFpbXBvcnRhbnQ7YWxpZ24tY29udGVudDpmbGV4LWVuZCFpbXBvcnRhbnR9LmFsaWduLWNvbnRlbnQteGwtY2VudGVyey1tcy1mbGV4LWxpbmUtcGFjazpjZW50ZXIhaW1wb3J0YW50O2FsaWduLWNvbnRlbnQ6Y2VudGVyIWltcG9ydGFudH0uYWxpZ24tY29udGVudC14bC1iZXR3ZWVuey1tcy1mbGV4LWxpbmUtcGFjazpqdXN0aWZ5IWltcG9ydGFudDthbGlnbi1jb250ZW50OnNwYWNlLWJldHdlZW4haW1wb3J0YW50fS5hbGlnbi1jb250ZW50LXhsLWFyb3VuZHstbXMtZmxleC1saW5lLXBhY2s6ZGlzdHJpYnV0ZSFpbXBvcnRhbnQ7YWxpZ24tY29udGVudDpzcGFjZS1hcm91bmQhaW1wb3J0YW50fS5hbGlnbi1jb250ZW50LXhsLXN0cmV0Y2h7LW1zLWZsZXgtbGluZS1wYWNrOnN0cmV0Y2ghaW1wb3J0YW50O2FsaWduLWNvbnRlbnQ6c3RyZXRjaCFpbXBvcnRhbnR9LmFsaWduLXNlbGYteGwtYXV0b3stbXMtZmxleC1pdGVtLWFsaWduOmF1dG8haW1wb3J0YW50O2FsaWduLXNlbGY6YXV0byFpbXBvcnRhbnR9LmFsaWduLXNlbGYteGwtc3RhcnR7LW1zLWZsZXgtaXRlbS1hbGlnbjpzdGFydCFpbXBvcnRhbnQ7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0IWltcG9ydGFudH0uYWxpZ24tc2VsZi14bC1lbmR7LW1zLWZsZXgtaXRlbS1hbGlnbjplbmQhaW1wb3J0YW50O2FsaWduLXNlbGY6ZmxleC1lbmQhaW1wb3J0YW50fS5hbGlnbi1zZWxmLXhsLWNlbnRlcnstbXMtZmxleC1pdGVtLWFsaWduOmNlbnRlciFpbXBvcnRhbnQ7YWxpZ24tc2VsZjpjZW50ZXIhaW1wb3J0YW50fS5hbGlnbi1zZWxmLXhsLWJhc2VsaW5ley1tcy1mbGV4LWl0ZW0tYWxpZ246YmFzZWxpbmUhaW1wb3J0YW50O2FsaWduLXNlbGY6YmFzZWxpbmUhaW1wb3J0YW50fS5hbGlnbi1zZWxmLXhsLXN0cmV0Y2h7LW1zLWZsZXgtaXRlbS1hbGlnbjpzdHJldGNoIWltcG9ydGFudDthbGlnbi1zZWxmOnN0cmV0Y2ghaW1wb3J0YW50fX0uZmxvYXQtbGVmdHtmbG9hdDpsZWZ0IWltcG9ydGFudH0uZmxvYXQtcmlnaHR7ZmxvYXQ6cmlnaHQhaW1wb3J0YW50fS5mbG9hdC1ub25le2Zsb2F0Om5vbmUhaW1wb3J0YW50fUBtZWRpYSAobWluLXdpZHRoOjU3NnB4KXsuZmxvYXQtc20tbGVmdHtmbG9hdDpsZWZ0IWltcG9ydGFudH0uZmxvYXQtc20tcmlnaHR7ZmxvYXQ6cmlnaHQhaW1wb3J0YW50fS5mbG9hdC1zbS1ub25le2Zsb2F0Om5vbmUhaW1wb3J0YW50fX1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7LmZsb2F0LW1kLWxlZnR7ZmxvYXQ6bGVmdCFpbXBvcnRhbnR9LmZsb2F0LW1kLXJpZ2h0e2Zsb2F0OnJpZ2h0IWltcG9ydGFudH0uZmxvYXQtbWQtbm9uZXtmbG9hdDpub25lIWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6OTkycHgpey5mbG9hdC1sZy1sZWZ0e2Zsb2F0OmxlZnQhaW1wb3J0YW50fS5mbG9hdC1sZy1yaWdodHtmbG9hdDpyaWdodCFpbXBvcnRhbnR9LmZsb2F0LWxnLW5vbmV7ZmxvYXQ6bm9uZSFpbXBvcnRhbnR9fUBtZWRpYSAobWluLXdpZHRoOjEyMDBweCl7LmZsb2F0LXhsLWxlZnR7ZmxvYXQ6bGVmdCFpbXBvcnRhbnR9LmZsb2F0LXhsLXJpZ2h0e2Zsb2F0OnJpZ2h0IWltcG9ydGFudH0uZmxvYXQteGwtbm9uZXtmbG9hdDpub25lIWltcG9ydGFudH19Lm92ZXJmbG93LWF1dG97b3ZlcmZsb3c6YXV0byFpbXBvcnRhbnR9Lm92ZXJmbG93LWhpZGRlbntvdmVyZmxvdzpoaWRkZW4haW1wb3J0YW50fS5wb3NpdGlvbi1zdGF0aWN7cG9zaXRpb246c3RhdGljIWltcG9ydGFudH0ucG9zaXRpb24tcmVsYXRpdmV7cG9zaXRpb246cmVsYXRpdmUhaW1wb3J0YW50fS5wb3NpdGlvbi1hYnNvbHV0ZXtwb3NpdGlvbjphYnNvbHV0ZSFpbXBvcnRhbnR9LnBvc2l0aW9uLWZpeGVke3Bvc2l0aW9uOmZpeGVkIWltcG9ydGFudH0ucG9zaXRpb24tc3RpY2t5e3Bvc2l0aW9uOi13ZWJraXQtc3RpY2t5IWltcG9ydGFudDtwb3NpdGlvbjpzdGlja3khaW1wb3J0YW50fS5maXhlZC10b3B7cG9zaXRpb246Zml4ZWQ7dG9wOjA7cmlnaHQ6MDtsZWZ0OjA7ei1pbmRleDoxMDMwfS5maXhlZC1ib3R0b217cG9zaXRpb246Zml4ZWQ7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjA7ei1pbmRleDoxMDMwfUBzdXBwb3J0cyAoKHBvc2l0aW9uOi13ZWJraXQtc3RpY2t5KSBvciAocG9zaXRpb246c3RpY2t5KSl7LnN0aWNreS10b3B7cG9zaXRpb246LXdlYmtpdC1zdGlja3k7cG9zaXRpb246c3RpY2t5O3RvcDowO3otaW5kZXg6MTAyMH19LnNyLW9ubHl7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MXB4O2hlaWdodDoxcHg7cGFkZGluZzowO292ZXJmbG93OmhpZGRlbjtjbGlwOnJlY3QoMCwwLDAsMCk7d2hpdGUtc3BhY2U6bm93cmFwO2JvcmRlcjowfS5zci1vbmx5LWZvY3VzYWJsZTphY3RpdmUsLnNyLW9ubHktZm9jdXNhYmxlOmZvY3Vze3Bvc2l0aW9uOnN0YXRpYzt3aWR0aDphdXRvO2hlaWdodDphdXRvO292ZXJmbG93OnZpc2libGU7Y2xpcDphdXRvO3doaXRlLXNwYWNlOm5vcm1hbH0uc2hhZG93LXNte2JveC1zaGFkb3c6MCAuMTI1cmVtIC4yNXJlbSByZ2JhKDAsMCwwLC4wNzUpIWltcG9ydGFudH0uc2hhZG93e2JveC1zaGFkb3c6MCAuNXJlbSAxcmVtIHJnYmEoMCwwLDAsLjE1KSFpbXBvcnRhbnR9LnNoYWRvdy1sZ3tib3gtc2hhZG93OjAgMXJlbSAzcmVtIHJnYmEoMCwwLDAsLjE3NSkhaW1wb3J0YW50fS5zaGFkb3ctbm9uZXtib3gtc2hhZG93Om5vbmUhaW1wb3J0YW50fS53LTI1e3dpZHRoOjI1JSFpbXBvcnRhbnR9LnctNTB7d2lkdGg6NTAlIWltcG9ydGFudH0udy03NXt3aWR0aDo3NSUhaW1wb3J0YW50fS53LTEwMHt3aWR0aDoxMDAlIWltcG9ydGFudH0udy1hdXRve3dpZHRoOmF1dG8haW1wb3J0YW50fS5oLTI1e2hlaWdodDoyNSUhaW1wb3J0YW50fS5oLTUwe2hlaWdodDo1MCUhaW1wb3J0YW50fS5oLTc1e2hlaWdodDo3NSUhaW1wb3J0YW50fS5oLTEwMHtoZWlnaHQ6MTAwJSFpbXBvcnRhbnR9LmgtYXV0b3toZWlnaHQ6YXV0byFpbXBvcnRhbnR9Lm13LTEwMHttYXgtd2lkdGg6MTAwJSFpbXBvcnRhbnR9Lm1oLTEwMHttYXgtaGVpZ2h0OjEwMCUhaW1wb3J0YW50fS5taW4tdnctMTAwe21pbi13aWR0aDoxMDB2dyFpbXBvcnRhbnR9Lm1pbi12aC0xMDB7bWluLWhlaWdodDoxMDB2aCFpbXBvcnRhbnR9LnZ3LTEwMHt3aWR0aDoxMDB2dyFpbXBvcnRhbnR9LnZoLTEwMHtoZWlnaHQ6MTAwdmghaW1wb3J0YW50fS5zdHJldGNoZWQtbGluazo6YWZ0ZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjA7ei1pbmRleDoxO3BvaW50ZXItZXZlbnRzOmF1dG87Y29udGVudDoiIjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMCl9Lm0tMHttYXJnaW46MCFpbXBvcnRhbnR9Lm10LTAsLm15LTB7bWFyZ2luLXRvcDowIWltcG9ydGFudH0ubXItMCwubXgtMHttYXJnaW4tcmlnaHQ6MCFpbXBvcnRhbnR9Lm1iLTAsLm15LTB7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudH0ubWwtMCwubXgtMHttYXJnaW4tbGVmdDowIWltcG9ydGFudH0ubS0xe21hcmdpbjouMjVyZW0haW1wb3J0YW50fS5tdC0xLC5teS0xe21hcmdpbi10b3A6LjI1cmVtIWltcG9ydGFudH0ubXItMSwubXgtMXttYXJnaW4tcmlnaHQ6LjI1cmVtIWltcG9ydGFudH0ubWItMSwubXktMXttYXJnaW4tYm90dG9tOi4yNXJlbSFpbXBvcnRhbnR9Lm1sLTEsLm14LTF7bWFyZ2luLWxlZnQ6LjI1cmVtIWltcG9ydGFudH0ubS0ye21hcmdpbjouNXJlbSFpbXBvcnRhbnR9Lm10LTIsLm15LTJ7bWFyZ2luLXRvcDouNXJlbSFpbXBvcnRhbnR9Lm1yLTIsLm14LTJ7bWFyZ2luLXJpZ2h0Oi41cmVtIWltcG9ydGFudH0ubWItMiwubXktMnttYXJnaW4tYm90dG9tOi41cmVtIWltcG9ydGFudH0ubWwtMiwubXgtMnttYXJnaW4tbGVmdDouNXJlbSFpbXBvcnRhbnR9Lm0tM3ttYXJnaW46MXJlbSFpbXBvcnRhbnR9Lm10LTMsLm15LTN7bWFyZ2luLXRvcDoxcmVtIWltcG9ydGFudH0ubXItMywubXgtM3ttYXJnaW4tcmlnaHQ6MXJlbSFpbXBvcnRhbnR9Lm1iLTMsLm15LTN7bWFyZ2luLWJvdHRvbToxcmVtIWltcG9ydGFudH0ubWwtMywubXgtM3ttYXJnaW4tbGVmdDoxcmVtIWltcG9ydGFudH0ubS00e21hcmdpbjoxLjVyZW0haW1wb3J0YW50fS5tdC00LC5teS00e21hcmdpbi10b3A6MS41cmVtIWltcG9ydGFudH0ubXItNCwubXgtNHttYXJnaW4tcmlnaHQ6MS41cmVtIWltcG9ydGFudH0ubWItNCwubXktNHttYXJnaW4tYm90dG9tOjEuNXJlbSFpbXBvcnRhbnR9Lm1sLTQsLm14LTR7bWFyZ2luLWxlZnQ6MS41cmVtIWltcG9ydGFudH0ubS01e21hcmdpbjozcmVtIWltcG9ydGFudH0ubXQtNSwubXktNXttYXJnaW4tdG9wOjNyZW0haW1wb3J0YW50fS5tci01LC5teC01e21hcmdpbi1yaWdodDozcmVtIWltcG9ydGFudH0ubWItNSwubXktNXttYXJnaW4tYm90dG9tOjNyZW0haW1wb3J0YW50fS5tbC01LC5teC01e21hcmdpbi1sZWZ0OjNyZW0haW1wb3J0YW50fS5wLTB7cGFkZGluZzowIWltcG9ydGFudH0ucHQtMCwucHktMHtwYWRkaW5nLXRvcDowIWltcG9ydGFudH0ucHItMCwucHgtMHtwYWRkaW5nLXJpZ2h0OjAhaW1wb3J0YW50fS5wYi0wLC5weS0we3BhZGRpbmctYm90dG9tOjAhaW1wb3J0YW50fS5wbC0wLC5weC0we3BhZGRpbmctbGVmdDowIWltcG9ydGFudH0ucC0xe3BhZGRpbmc6LjI1cmVtIWltcG9ydGFudH0ucHQtMSwucHktMXtwYWRkaW5nLXRvcDouMjVyZW0haW1wb3J0YW50fS5wci0xLC5weC0xe3BhZGRpbmctcmlnaHQ6LjI1cmVtIWltcG9ydGFudH0ucGItMSwucHktMXtwYWRkaW5nLWJvdHRvbTouMjVyZW0haW1wb3J0YW50fS5wbC0xLC5weC0xe3BhZGRpbmctbGVmdDouMjVyZW0haW1wb3J0YW50fS5wLTJ7cGFkZGluZzouNXJlbSFpbXBvcnRhbnR9LnB0LTIsLnB5LTJ7cGFkZGluZy10b3A6LjVyZW0haW1wb3J0YW50fS5wci0yLC5weC0ye3BhZGRpbmctcmlnaHQ6LjVyZW0haW1wb3J0YW50fS5wYi0yLC5weS0ye3BhZGRpbmctYm90dG9tOi41cmVtIWltcG9ydGFudH0ucGwtMiwucHgtMntwYWRkaW5nLWxlZnQ6LjVyZW0haW1wb3J0YW50fS5wLTN7cGFkZGluZzoxcmVtIWltcG9ydGFudH0ucHQtMywucHktM3twYWRkaW5nLXRvcDoxcmVtIWltcG9ydGFudH0ucHItMywucHgtM3twYWRkaW5nLXJpZ2h0OjFyZW0haW1wb3J0YW50fS5wYi0zLC5weS0ze3BhZGRpbmctYm90dG9tOjFyZW0haW1wb3J0YW50fS5wbC0zLC5weC0ze3BhZGRpbmctbGVmdDoxcmVtIWltcG9ydGFudH0ucC00e3BhZGRpbmc6MS41cmVtIWltcG9ydGFudH0ucHQtNCwucHktNHtwYWRkaW5nLXRvcDoxLjVyZW0haW1wb3J0YW50fS5wci00LC5weC00e3BhZGRpbmctcmlnaHQ6MS41cmVtIWltcG9ydGFudH0ucGItNCwucHktNHtwYWRkaW5nLWJvdHRvbToxLjVyZW0haW1wb3J0YW50fS5wbC00LC5weC00e3BhZGRpbmctbGVmdDoxLjVyZW0haW1wb3J0YW50fS5wLTV7cGFkZGluZzozcmVtIWltcG9ydGFudH0ucHQtNSwucHktNXtwYWRkaW5nLXRvcDozcmVtIWltcG9ydGFudH0ucHItNSwucHgtNXtwYWRkaW5nLXJpZ2h0OjNyZW0haW1wb3J0YW50fS5wYi01LC5weS01e3BhZGRpbmctYm90dG9tOjNyZW0haW1wb3J0YW50fS5wbC01LC5weC01e3BhZGRpbmctbGVmdDozcmVtIWltcG9ydGFudH0ubS1uMXttYXJnaW46LS4yNXJlbSFpbXBvcnRhbnR9Lm10LW4xLC5teS1uMXttYXJnaW4tdG9wOi0uMjVyZW0haW1wb3J0YW50fS5tci1uMSwubXgtbjF7bWFyZ2luLXJpZ2h0Oi0uMjVyZW0haW1wb3J0YW50fS5tYi1uMSwubXktbjF7bWFyZ2luLWJvdHRvbTotLjI1cmVtIWltcG9ydGFudH0ubWwtbjEsLm14LW4xe21hcmdpbi1sZWZ0Oi0uMjVyZW0haW1wb3J0YW50fS5tLW4ye21hcmdpbjotLjVyZW0haW1wb3J0YW50fS5tdC1uMiwubXktbjJ7bWFyZ2luLXRvcDotLjVyZW0haW1wb3J0YW50fS5tci1uMiwubXgtbjJ7bWFyZ2luLXJpZ2h0Oi0uNXJlbSFpbXBvcnRhbnR9Lm1iLW4yLC5teS1uMnttYXJnaW4tYm90dG9tOi0uNXJlbSFpbXBvcnRhbnR9Lm1sLW4yLC5teC1uMnttYXJnaW4tbGVmdDotLjVyZW0haW1wb3J0YW50fS5tLW4ze21hcmdpbjotMXJlbSFpbXBvcnRhbnR9Lm10LW4zLC5teS1uM3ttYXJnaW4tdG9wOi0xcmVtIWltcG9ydGFudH0ubXItbjMsLm14LW4ze21hcmdpbi1yaWdodDotMXJlbSFpbXBvcnRhbnR9Lm1iLW4zLC5teS1uM3ttYXJnaW4tYm90dG9tOi0xcmVtIWltcG9ydGFudH0ubWwtbjMsLm14LW4ze21hcmdpbi1sZWZ0Oi0xcmVtIWltcG9ydGFudH0ubS1uNHttYXJnaW46LTEuNXJlbSFpbXBvcnRhbnR9Lm10LW40LC5teS1uNHttYXJnaW4tdG9wOi0xLjVyZW0haW1wb3J0YW50fS5tci1uNCwubXgtbjR7bWFyZ2luLXJpZ2h0Oi0xLjVyZW0haW1wb3J0YW50fS5tYi1uNCwubXktbjR7bWFyZ2luLWJvdHRvbTotMS41cmVtIWltcG9ydGFudH0ubWwtbjQsLm14LW40e21hcmdpbi1sZWZ0Oi0xLjVyZW0haW1wb3J0YW50fS5tLW41e21hcmdpbjotM3JlbSFpbXBvcnRhbnR9Lm10LW41LC5teS1uNXttYXJnaW4tdG9wOi0zcmVtIWltcG9ydGFudH0ubXItbjUsLm14LW41e21hcmdpbi1yaWdodDotM3JlbSFpbXBvcnRhbnR9Lm1iLW41LC5teS1uNXttYXJnaW4tYm90dG9tOi0zcmVtIWltcG9ydGFudH0ubWwtbjUsLm14LW41e21hcmdpbi1sZWZ0Oi0zcmVtIWltcG9ydGFudH0ubS1hdXRve21hcmdpbjphdXRvIWltcG9ydGFudH0ubXQtYXV0bywubXktYXV0b3ttYXJnaW4tdG9wOmF1dG8haW1wb3J0YW50fS5tci1hdXRvLC5teC1hdXRve21hcmdpbi1yaWdodDphdXRvIWltcG9ydGFudH0ubWItYXV0bywubXktYXV0b3ttYXJnaW4tYm90dG9tOmF1dG8haW1wb3J0YW50fS5tbC1hdXRvLC5teC1hdXRve21hcmdpbi1sZWZ0OmF1dG8haW1wb3J0YW50fUBtZWRpYSAobWluLXdpZHRoOjU3NnB4KXsubS1zbS0we21hcmdpbjowIWltcG9ydGFudH0ubXQtc20tMCwubXktc20tMHttYXJnaW4tdG9wOjAhaW1wb3J0YW50fS5tci1zbS0wLC5teC1zbS0we21hcmdpbi1yaWdodDowIWltcG9ydGFudH0ubWItc20tMCwubXktc20tMHttYXJnaW4tYm90dG9tOjAhaW1wb3J0YW50fS5tbC1zbS0wLC5teC1zbS0we21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50fS5tLXNtLTF7bWFyZ2luOi4yNXJlbSFpbXBvcnRhbnR9Lm10LXNtLTEsLm15LXNtLTF7bWFyZ2luLXRvcDouMjVyZW0haW1wb3J0YW50fS5tci1zbS0xLC5teC1zbS0xe21hcmdpbi1yaWdodDouMjVyZW0haW1wb3J0YW50fS5tYi1zbS0xLC5teS1zbS0xe21hcmdpbi1ib3R0b206LjI1cmVtIWltcG9ydGFudH0ubWwtc20tMSwubXgtc20tMXttYXJnaW4tbGVmdDouMjVyZW0haW1wb3J0YW50fS5tLXNtLTJ7bWFyZ2luOi41cmVtIWltcG9ydGFudH0ubXQtc20tMiwubXktc20tMnttYXJnaW4tdG9wOi41cmVtIWltcG9ydGFudH0ubXItc20tMiwubXgtc20tMnttYXJnaW4tcmlnaHQ6LjVyZW0haW1wb3J0YW50fS5tYi1zbS0yLC5teS1zbS0ye21hcmdpbi1ib3R0b206LjVyZW0haW1wb3J0YW50fS5tbC1zbS0yLC5teC1zbS0ye21hcmdpbi1sZWZ0Oi41cmVtIWltcG9ydGFudH0ubS1zbS0ze21hcmdpbjoxcmVtIWltcG9ydGFudH0ubXQtc20tMywubXktc20tM3ttYXJnaW4tdG9wOjFyZW0haW1wb3J0YW50fS5tci1zbS0zLC5teC1zbS0ze21hcmdpbi1yaWdodDoxcmVtIWltcG9ydGFudH0ubWItc20tMywubXktc20tM3ttYXJnaW4tYm90dG9tOjFyZW0haW1wb3J0YW50fS5tbC1zbS0zLC5teC1zbS0ze21hcmdpbi1sZWZ0OjFyZW0haW1wb3J0YW50fS5tLXNtLTR7bWFyZ2luOjEuNXJlbSFpbXBvcnRhbnR9Lm10LXNtLTQsLm15LXNtLTR7bWFyZ2luLXRvcDoxLjVyZW0haW1wb3J0YW50fS5tci1zbS00LC5teC1zbS00e21hcmdpbi1yaWdodDoxLjVyZW0haW1wb3J0YW50fS5tYi1zbS00LC5teS1zbS00e21hcmdpbi1ib3R0b206MS41cmVtIWltcG9ydGFudH0ubWwtc20tNCwubXgtc20tNHttYXJnaW4tbGVmdDoxLjVyZW0haW1wb3J0YW50fS5tLXNtLTV7bWFyZ2luOjNyZW0haW1wb3J0YW50fS5tdC1zbS01LC5teS1zbS01e21hcmdpbi10b3A6M3JlbSFpbXBvcnRhbnR9Lm1yLXNtLTUsLm14LXNtLTV7bWFyZ2luLXJpZ2h0OjNyZW0haW1wb3J0YW50fS5tYi1zbS01LC5teS1zbS01e21hcmdpbi1ib3R0b206M3JlbSFpbXBvcnRhbnR9Lm1sLXNtLTUsLm14LXNtLTV7bWFyZ2luLWxlZnQ6M3JlbSFpbXBvcnRhbnR9LnAtc20tMHtwYWRkaW5nOjAhaW1wb3J0YW50fS5wdC1zbS0wLC5weS1zbS0we3BhZGRpbmctdG9wOjAhaW1wb3J0YW50fS5wci1zbS0wLC5weC1zbS0we3BhZGRpbmctcmlnaHQ6MCFpbXBvcnRhbnR9LnBiLXNtLTAsLnB5LXNtLTB7cGFkZGluZy1ib3R0b206MCFpbXBvcnRhbnR9LnBsLXNtLTAsLnB4LXNtLTB7cGFkZGluZy1sZWZ0OjAhaW1wb3J0YW50fS5wLXNtLTF7cGFkZGluZzouMjVyZW0haW1wb3J0YW50fS5wdC1zbS0xLC5weS1zbS0xe3BhZGRpbmctdG9wOi4yNXJlbSFpbXBvcnRhbnR9LnByLXNtLTEsLnB4LXNtLTF7cGFkZGluZy1yaWdodDouMjVyZW0haW1wb3J0YW50fS5wYi1zbS0xLC5weS1zbS0xe3BhZGRpbmctYm90dG9tOi4yNXJlbSFpbXBvcnRhbnR9LnBsLXNtLTEsLnB4LXNtLTF7cGFkZGluZy1sZWZ0Oi4yNXJlbSFpbXBvcnRhbnR9LnAtc20tMntwYWRkaW5nOi41cmVtIWltcG9ydGFudH0ucHQtc20tMiwucHktc20tMntwYWRkaW5nLXRvcDouNXJlbSFpbXBvcnRhbnR9LnByLXNtLTIsLnB4LXNtLTJ7cGFkZGluZy1yaWdodDouNXJlbSFpbXBvcnRhbnR9LnBiLXNtLTIsLnB5LXNtLTJ7cGFkZGluZy1ib3R0b206LjVyZW0haW1wb3J0YW50fS5wbC1zbS0yLC5weC1zbS0ye3BhZGRpbmctbGVmdDouNXJlbSFpbXBvcnRhbnR9LnAtc20tM3twYWRkaW5nOjFyZW0haW1wb3J0YW50fS5wdC1zbS0zLC5weS1zbS0ze3BhZGRpbmctdG9wOjFyZW0haW1wb3J0YW50fS5wci1zbS0zLC5weC1zbS0ze3BhZGRpbmctcmlnaHQ6MXJlbSFpbXBvcnRhbnR9LnBiLXNtLTMsLnB5LXNtLTN7cGFkZGluZy1ib3R0b206MXJlbSFpbXBvcnRhbnR9LnBsLXNtLTMsLnB4LXNtLTN7cGFkZGluZy1sZWZ0OjFyZW0haW1wb3J0YW50fS5wLXNtLTR7cGFkZGluZzoxLjVyZW0haW1wb3J0YW50fS5wdC1zbS00LC5weS1zbS00e3BhZGRpbmctdG9wOjEuNXJlbSFpbXBvcnRhbnR9LnByLXNtLTQsLnB4LXNtLTR7cGFkZGluZy1yaWdodDoxLjVyZW0haW1wb3J0YW50fS5wYi1zbS00LC5weS1zbS00e3BhZGRpbmctYm90dG9tOjEuNXJlbSFpbXBvcnRhbnR9LnBsLXNtLTQsLnB4LXNtLTR7cGFkZGluZy1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9LnAtc20tNXtwYWRkaW5nOjNyZW0haW1wb3J0YW50fS5wdC1zbS01LC5weS1zbS01e3BhZGRpbmctdG9wOjNyZW0haW1wb3J0YW50fS5wci1zbS01LC5weC1zbS01e3BhZGRpbmctcmlnaHQ6M3JlbSFpbXBvcnRhbnR9LnBiLXNtLTUsLnB5LXNtLTV7cGFkZGluZy1ib3R0b206M3JlbSFpbXBvcnRhbnR9LnBsLXNtLTUsLnB4LXNtLTV7cGFkZGluZy1sZWZ0OjNyZW0haW1wb3J0YW50fS5tLXNtLW4xe21hcmdpbjotLjI1cmVtIWltcG9ydGFudH0ubXQtc20tbjEsLm15LXNtLW4xe21hcmdpbi10b3A6LS4yNXJlbSFpbXBvcnRhbnR9Lm1yLXNtLW4xLC5teC1zbS1uMXttYXJnaW4tcmlnaHQ6LS4yNXJlbSFpbXBvcnRhbnR9Lm1iLXNtLW4xLC5teS1zbS1uMXttYXJnaW4tYm90dG9tOi0uMjVyZW0haW1wb3J0YW50fS5tbC1zbS1uMSwubXgtc20tbjF7bWFyZ2luLWxlZnQ6LS4yNXJlbSFpbXBvcnRhbnR9Lm0tc20tbjJ7bWFyZ2luOi0uNXJlbSFpbXBvcnRhbnR9Lm10LXNtLW4yLC5teS1zbS1uMnttYXJnaW4tdG9wOi0uNXJlbSFpbXBvcnRhbnR9Lm1yLXNtLW4yLC5teC1zbS1uMnttYXJnaW4tcmlnaHQ6LS41cmVtIWltcG9ydGFudH0ubWItc20tbjIsLm15LXNtLW4ye21hcmdpbi1ib3R0b206LS41cmVtIWltcG9ydGFudH0ubWwtc20tbjIsLm14LXNtLW4ye21hcmdpbi1sZWZ0Oi0uNXJlbSFpbXBvcnRhbnR9Lm0tc20tbjN7bWFyZ2luOi0xcmVtIWltcG9ydGFudH0ubXQtc20tbjMsLm15LXNtLW4ze21hcmdpbi10b3A6LTFyZW0haW1wb3J0YW50fS5tci1zbS1uMywubXgtc20tbjN7bWFyZ2luLXJpZ2h0Oi0xcmVtIWltcG9ydGFudH0ubWItc20tbjMsLm15LXNtLW4ze21hcmdpbi1ib3R0b206LTFyZW0haW1wb3J0YW50fS5tbC1zbS1uMywubXgtc20tbjN7bWFyZ2luLWxlZnQ6LTFyZW0haW1wb3J0YW50fS5tLXNtLW40e21hcmdpbjotMS41cmVtIWltcG9ydGFudH0ubXQtc20tbjQsLm15LXNtLW40e21hcmdpbi10b3A6LTEuNXJlbSFpbXBvcnRhbnR9Lm1yLXNtLW40LC5teC1zbS1uNHttYXJnaW4tcmlnaHQ6LTEuNXJlbSFpbXBvcnRhbnR9Lm1iLXNtLW40LC5teS1zbS1uNHttYXJnaW4tYm90dG9tOi0xLjVyZW0haW1wb3J0YW50fS5tbC1zbS1uNCwubXgtc20tbjR7bWFyZ2luLWxlZnQ6LTEuNXJlbSFpbXBvcnRhbnR9Lm0tc20tbjV7bWFyZ2luOi0zcmVtIWltcG9ydGFudH0ubXQtc20tbjUsLm15LXNtLW41e21hcmdpbi10b3A6LTNyZW0haW1wb3J0YW50fS5tci1zbS1uNSwubXgtc20tbjV7bWFyZ2luLXJpZ2h0Oi0zcmVtIWltcG9ydGFudH0ubWItc20tbjUsLm15LXNtLW41e21hcmdpbi1ib3R0b206LTNyZW0haW1wb3J0YW50fS5tbC1zbS1uNSwubXgtc20tbjV7bWFyZ2luLWxlZnQ6LTNyZW0haW1wb3J0YW50fS5tLXNtLWF1dG97bWFyZ2luOmF1dG8haW1wb3J0YW50fS5tdC1zbS1hdXRvLC5teS1zbS1hdXRve21hcmdpbi10b3A6YXV0byFpbXBvcnRhbnR9Lm1yLXNtLWF1dG8sLm14LXNtLWF1dG97bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50fS5tYi1zbS1hdXRvLC5teS1zbS1hdXRve21hcmdpbi1ib3R0b206YXV0byFpbXBvcnRhbnR9Lm1sLXNtLWF1dG8sLm14LXNtLWF1dG97bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnR9fUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsubS1tZC0we21hcmdpbjowIWltcG9ydGFudH0ubXQtbWQtMCwubXktbWQtMHttYXJnaW4tdG9wOjAhaW1wb3J0YW50fS5tci1tZC0wLC5teC1tZC0we21hcmdpbi1yaWdodDowIWltcG9ydGFudH0ubWItbWQtMCwubXktbWQtMHttYXJnaW4tYm90dG9tOjAhaW1wb3J0YW50fS5tbC1tZC0wLC5teC1tZC0we21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50fS5tLW1kLTF7bWFyZ2luOi4yNXJlbSFpbXBvcnRhbnR9Lm10LW1kLTEsLm15LW1kLTF7bWFyZ2luLXRvcDouMjVyZW0haW1wb3J0YW50fS5tci1tZC0xLC5teC1tZC0xe21hcmdpbi1yaWdodDouMjVyZW0haW1wb3J0YW50fS5tYi1tZC0xLC5teS1tZC0xe21hcmdpbi1ib3R0b206LjI1cmVtIWltcG9ydGFudH0ubWwtbWQtMSwubXgtbWQtMXttYXJnaW4tbGVmdDouMjVyZW0haW1wb3J0YW50fS5tLW1kLTJ7bWFyZ2luOi41cmVtIWltcG9ydGFudH0ubXQtbWQtMiwubXktbWQtMnttYXJnaW4tdG9wOi41cmVtIWltcG9ydGFudH0ubXItbWQtMiwubXgtbWQtMnttYXJnaW4tcmlnaHQ6LjVyZW0haW1wb3J0YW50fS5tYi1tZC0yLC5teS1tZC0ye21hcmdpbi1ib3R0b206LjVyZW0haW1wb3J0YW50fS5tbC1tZC0yLC5teC1tZC0ye21hcmdpbi1sZWZ0Oi41cmVtIWltcG9ydGFudH0ubS1tZC0ze21hcmdpbjoxcmVtIWltcG9ydGFudH0ubXQtbWQtMywubXktbWQtM3ttYXJnaW4tdG9wOjFyZW0haW1wb3J0YW50fS5tci1tZC0zLC5teC1tZC0ze21hcmdpbi1yaWdodDoxcmVtIWltcG9ydGFudH0ubWItbWQtMywubXktbWQtM3ttYXJnaW4tYm90dG9tOjFyZW0haW1wb3J0YW50fS5tbC1tZC0zLC5teC1tZC0ze21hcmdpbi1sZWZ0OjFyZW0haW1wb3J0YW50fS5tLW1kLTR7bWFyZ2luOjEuNXJlbSFpbXBvcnRhbnR9Lm10LW1kLTQsLm15LW1kLTR7bWFyZ2luLXRvcDoxLjVyZW0haW1wb3J0YW50fS5tci1tZC00LC5teC1tZC00e21hcmdpbi1yaWdodDoxLjVyZW0haW1wb3J0YW50fS5tYi1tZC00LC5teS1tZC00e21hcmdpbi1ib3R0b206MS41cmVtIWltcG9ydGFudH0ubWwtbWQtNCwubXgtbWQtNHttYXJnaW4tbGVmdDoxLjVyZW0haW1wb3J0YW50fS5tLW1kLTV7bWFyZ2luOjNyZW0haW1wb3J0YW50fS5tdC1tZC01LC5teS1tZC01e21hcmdpbi10b3A6M3JlbSFpbXBvcnRhbnR9Lm1yLW1kLTUsLm14LW1kLTV7bWFyZ2luLXJpZ2h0OjNyZW0haW1wb3J0YW50fS5tYi1tZC01LC5teS1tZC01e21hcmdpbi1ib3R0b206M3JlbSFpbXBvcnRhbnR9Lm1sLW1kLTUsLm14LW1kLTV7bWFyZ2luLWxlZnQ6M3JlbSFpbXBvcnRhbnR9LnAtbWQtMHtwYWRkaW5nOjAhaW1wb3J0YW50fS5wdC1tZC0wLC5weS1tZC0we3BhZGRpbmctdG9wOjAhaW1wb3J0YW50fS5wci1tZC0wLC5weC1tZC0we3BhZGRpbmctcmlnaHQ6MCFpbXBvcnRhbnR9LnBiLW1kLTAsLnB5LW1kLTB7cGFkZGluZy1ib3R0b206MCFpbXBvcnRhbnR9LnBsLW1kLTAsLnB4LW1kLTB7cGFkZGluZy1sZWZ0OjAhaW1wb3J0YW50fS5wLW1kLTF7cGFkZGluZzouMjVyZW0haW1wb3J0YW50fS5wdC1tZC0xLC5weS1tZC0xe3BhZGRpbmctdG9wOi4yNXJlbSFpbXBvcnRhbnR9LnByLW1kLTEsLnB4LW1kLTF7cGFkZGluZy1yaWdodDouMjVyZW0haW1wb3J0YW50fS5wYi1tZC0xLC5weS1tZC0xe3BhZGRpbmctYm90dG9tOi4yNXJlbSFpbXBvcnRhbnR9LnBsLW1kLTEsLnB4LW1kLTF7cGFkZGluZy1sZWZ0Oi4yNXJlbSFpbXBvcnRhbnR9LnAtbWQtMntwYWRkaW5nOi41cmVtIWltcG9ydGFudH0ucHQtbWQtMiwucHktbWQtMntwYWRkaW5nLXRvcDouNXJlbSFpbXBvcnRhbnR9LnByLW1kLTIsLnB4LW1kLTJ7cGFkZGluZy1yaWdodDouNXJlbSFpbXBvcnRhbnR9LnBiLW1kLTIsLnB5LW1kLTJ7cGFkZGluZy1ib3R0b206LjVyZW0haW1wb3J0YW50fS5wbC1tZC0yLC5weC1tZC0ye3BhZGRpbmctbGVmdDouNXJlbSFpbXBvcnRhbnR9LnAtbWQtM3twYWRkaW5nOjFyZW0haW1wb3J0YW50fS5wdC1tZC0zLC5weS1tZC0ze3BhZGRpbmctdG9wOjFyZW0haW1wb3J0YW50fS5wci1tZC0zLC5weC1tZC0ze3BhZGRpbmctcmlnaHQ6MXJlbSFpbXBvcnRhbnR9LnBiLW1kLTMsLnB5LW1kLTN7cGFkZGluZy1ib3R0b206MXJlbSFpbXBvcnRhbnR9LnBsLW1kLTMsLnB4LW1kLTN7cGFkZGluZy1sZWZ0OjFyZW0haW1wb3J0YW50fS5wLW1kLTR7cGFkZGluZzoxLjVyZW0haW1wb3J0YW50fS5wdC1tZC00LC5weS1tZC00e3BhZGRpbmctdG9wOjEuNXJlbSFpbXBvcnRhbnR9LnByLW1kLTQsLnB4LW1kLTR7cGFkZGluZy1yaWdodDoxLjVyZW0haW1wb3J0YW50fS5wYi1tZC00LC5weS1tZC00e3BhZGRpbmctYm90dG9tOjEuNXJlbSFpbXBvcnRhbnR9LnBsLW1kLTQsLnB4LW1kLTR7cGFkZGluZy1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9LnAtbWQtNXtwYWRkaW5nOjNyZW0haW1wb3J0YW50fS5wdC1tZC01LC5weS1tZC01e3BhZGRpbmctdG9wOjNyZW0haW1wb3J0YW50fS5wci1tZC01LC5weC1tZC01e3BhZGRpbmctcmlnaHQ6M3JlbSFpbXBvcnRhbnR9LnBiLW1kLTUsLnB5LW1kLTV7cGFkZGluZy1ib3R0b206M3JlbSFpbXBvcnRhbnR9LnBsLW1kLTUsLnB4LW1kLTV7cGFkZGluZy1sZWZ0OjNyZW0haW1wb3J0YW50fS5tLW1kLW4xe21hcmdpbjotLjI1cmVtIWltcG9ydGFudH0ubXQtbWQtbjEsLm15LW1kLW4xe21hcmdpbi10b3A6LS4yNXJlbSFpbXBvcnRhbnR9Lm1yLW1kLW4xLC5teC1tZC1uMXttYXJnaW4tcmlnaHQ6LS4yNXJlbSFpbXBvcnRhbnR9Lm1iLW1kLW4xLC5teS1tZC1uMXttYXJnaW4tYm90dG9tOi0uMjVyZW0haW1wb3J0YW50fS5tbC1tZC1uMSwubXgtbWQtbjF7bWFyZ2luLWxlZnQ6LS4yNXJlbSFpbXBvcnRhbnR9Lm0tbWQtbjJ7bWFyZ2luOi0uNXJlbSFpbXBvcnRhbnR9Lm10LW1kLW4yLC5teS1tZC1uMnttYXJnaW4tdG9wOi0uNXJlbSFpbXBvcnRhbnR9Lm1yLW1kLW4yLC5teC1tZC1uMnttYXJnaW4tcmlnaHQ6LS41cmVtIWltcG9ydGFudH0ubWItbWQtbjIsLm15LW1kLW4ye21hcmdpbi1ib3R0b206LS41cmVtIWltcG9ydGFudH0ubWwtbWQtbjIsLm14LW1kLW4ye21hcmdpbi1sZWZ0Oi0uNXJlbSFpbXBvcnRhbnR9Lm0tbWQtbjN7bWFyZ2luOi0xcmVtIWltcG9ydGFudH0ubXQtbWQtbjMsLm15LW1kLW4ze21hcmdpbi10b3A6LTFyZW0haW1wb3J0YW50fS5tci1tZC1uMywubXgtbWQtbjN7bWFyZ2luLXJpZ2h0Oi0xcmVtIWltcG9ydGFudH0ubWItbWQtbjMsLm15LW1kLW4ze21hcmdpbi1ib3R0b206LTFyZW0haW1wb3J0YW50fS5tbC1tZC1uMywubXgtbWQtbjN7bWFyZ2luLWxlZnQ6LTFyZW0haW1wb3J0YW50fS5tLW1kLW40e21hcmdpbjotMS41cmVtIWltcG9ydGFudH0ubXQtbWQtbjQsLm15LW1kLW40e21hcmdpbi10b3A6LTEuNXJlbSFpbXBvcnRhbnR9Lm1yLW1kLW40LC5teC1tZC1uNHttYXJnaW4tcmlnaHQ6LTEuNXJlbSFpbXBvcnRhbnR9Lm1iLW1kLW40LC5teS1tZC1uNHttYXJnaW4tYm90dG9tOi0xLjVyZW0haW1wb3J0YW50fS5tbC1tZC1uNCwubXgtbWQtbjR7bWFyZ2luLWxlZnQ6LTEuNXJlbSFpbXBvcnRhbnR9Lm0tbWQtbjV7bWFyZ2luOi0zcmVtIWltcG9ydGFudH0ubXQtbWQtbjUsLm15LW1kLW41e21hcmdpbi10b3A6LTNyZW0haW1wb3J0YW50fS5tci1tZC1uNSwubXgtbWQtbjV7bWFyZ2luLXJpZ2h0Oi0zcmVtIWltcG9ydGFudH0ubWItbWQtbjUsLm15LW1kLW41e21hcmdpbi1ib3R0b206LTNyZW0haW1wb3J0YW50fS5tbC1tZC1uNSwubXgtbWQtbjV7bWFyZ2luLWxlZnQ6LTNyZW0haW1wb3J0YW50fS5tLW1kLWF1dG97bWFyZ2luOmF1dG8haW1wb3J0YW50fS5tdC1tZC1hdXRvLC5teS1tZC1hdXRve21hcmdpbi10b3A6YXV0byFpbXBvcnRhbnR9Lm1yLW1kLWF1dG8sLm14LW1kLWF1dG97bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50fS5tYi1tZC1hdXRvLC5teS1tZC1hdXRve21hcmdpbi1ib3R0b206YXV0byFpbXBvcnRhbnR9Lm1sLW1kLWF1dG8sLm14LW1kLWF1dG97bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnR9fUBtZWRpYSAobWluLXdpZHRoOjk5MnB4KXsubS1sZy0we21hcmdpbjowIWltcG9ydGFudH0ubXQtbGctMCwubXktbGctMHttYXJnaW4tdG9wOjAhaW1wb3J0YW50fS5tci1sZy0wLC5teC1sZy0we21hcmdpbi1yaWdodDowIWltcG9ydGFudH0ubWItbGctMCwubXktbGctMHttYXJnaW4tYm90dG9tOjAhaW1wb3J0YW50fS5tbC1sZy0wLC5teC1sZy0we21hcmdpbi1sZWZ0OjAhaW1wb3J0YW50fS5tLWxnLTF7bWFyZ2luOi4yNXJlbSFpbXBvcnRhbnR9Lm10LWxnLTEsLm15LWxnLTF7bWFyZ2luLXRvcDouMjVyZW0haW1wb3J0YW50fS5tci1sZy0xLC5teC1sZy0xe21hcmdpbi1yaWdodDouMjVyZW0haW1wb3J0YW50fS5tYi1sZy0xLC5teS1sZy0xe21hcmdpbi1ib3R0b206LjI1cmVtIWltcG9ydGFudH0ubWwtbGctMSwubXgtbGctMXttYXJnaW4tbGVmdDouMjVyZW0haW1wb3J0YW50fS5tLWxnLTJ7bWFyZ2luOi41cmVtIWltcG9ydGFudH0ubXQtbGctMiwubXktbGctMnttYXJnaW4tdG9wOi41cmVtIWltcG9ydGFudH0ubXItbGctMiwubXgtbGctMnttYXJnaW4tcmlnaHQ6LjVyZW0haW1wb3J0YW50fS5tYi1sZy0yLC5teS1sZy0ye21hcmdpbi1ib3R0b206LjVyZW0haW1wb3J0YW50fS5tbC1sZy0yLC5teC1sZy0ye21hcmdpbi1sZWZ0Oi41cmVtIWltcG9ydGFudH0ubS1sZy0ze21hcmdpbjoxcmVtIWltcG9ydGFudH0ubXQtbGctMywubXktbGctM3ttYXJnaW4tdG9wOjFyZW0haW1wb3J0YW50fS5tci1sZy0zLC5teC1sZy0ze21hcmdpbi1yaWdodDoxcmVtIWltcG9ydGFudH0ubWItbGctMywubXktbGctM3ttYXJnaW4tYm90dG9tOjFyZW0haW1wb3J0YW50fS5tbC1sZy0zLC5teC1sZy0ze21hcmdpbi1sZWZ0OjFyZW0haW1wb3J0YW50fS5tLWxnLTR7bWFyZ2luOjEuNXJlbSFpbXBvcnRhbnR9Lm10LWxnLTQsLm15LWxnLTR7bWFyZ2luLXRvcDoxLjVyZW0haW1wb3J0YW50fS5tci1sZy00LC5teC1sZy00e21hcmdpbi1yaWdodDoxLjVyZW0haW1wb3J0YW50fS5tYi1sZy00LC5teS1sZy00e21hcmdpbi1ib3R0b206MS41cmVtIWltcG9ydGFudH0ubWwtbGctNCwubXgtbGctNHttYXJnaW4tbGVmdDoxLjVyZW0haW1wb3J0YW50fS5tLWxnLTV7bWFyZ2luOjNyZW0haW1wb3J0YW50fS5tdC1sZy01LC5teS1sZy01e21hcmdpbi10b3A6M3JlbSFpbXBvcnRhbnR9Lm1yLWxnLTUsLm14LWxnLTV7bWFyZ2luLXJpZ2h0OjNyZW0haW1wb3J0YW50fS5tYi1sZy01LC5teS1sZy01e21hcmdpbi1ib3R0b206M3JlbSFpbXBvcnRhbnR9Lm1sLWxnLTUsLm14LWxnLTV7bWFyZ2luLWxlZnQ6M3JlbSFpbXBvcnRhbnR9LnAtbGctMHtwYWRkaW5nOjAhaW1wb3J0YW50fS5wdC1sZy0wLC5weS1sZy0we3BhZGRpbmctdG9wOjAhaW1wb3J0YW50fS5wci1sZy0wLC5weC1sZy0we3BhZGRpbmctcmlnaHQ6MCFpbXBvcnRhbnR9LnBiLWxnLTAsLnB5LWxnLTB7cGFkZGluZy1ib3R0b206MCFpbXBvcnRhbnR9LnBsLWxnLTAsLnB4LWxnLTB7cGFkZGluZy1sZWZ0OjAhaW1wb3J0YW50fS5wLWxnLTF7cGFkZGluZzouMjVyZW0haW1wb3J0YW50fS5wdC1sZy0xLC5weS1sZy0xe3BhZGRpbmctdG9wOi4yNXJlbSFpbXBvcnRhbnR9LnByLWxnLTEsLnB4LWxnLTF7cGFkZGluZy1yaWdodDouMjVyZW0haW1wb3J0YW50fS5wYi1sZy0xLC5weS1sZy0xe3BhZGRpbmctYm90dG9tOi4yNXJlbSFpbXBvcnRhbnR9LnBsLWxnLTEsLnB4LWxnLTF7cGFkZGluZy1sZWZ0Oi4yNXJlbSFpbXBvcnRhbnR9LnAtbGctMntwYWRkaW5nOi41cmVtIWltcG9ydGFudH0ucHQtbGctMiwucHktbGctMntwYWRkaW5nLXRvcDouNXJlbSFpbXBvcnRhbnR9LnByLWxnLTIsLnB4LWxnLTJ7cGFkZGluZy1yaWdodDouNXJlbSFpbXBvcnRhbnR9LnBiLWxnLTIsLnB5LWxnLTJ7cGFkZGluZy1ib3R0b206LjVyZW0haW1wb3J0YW50fS5wbC1sZy0yLC5weC1sZy0ye3BhZGRpbmctbGVmdDouNXJlbSFpbXBvcnRhbnR9LnAtbGctM3twYWRkaW5nOjFyZW0haW1wb3J0YW50fS5wdC1sZy0zLC5weS1sZy0ze3BhZGRpbmctdG9wOjFyZW0haW1wb3J0YW50fS5wci1sZy0zLC5weC1sZy0ze3BhZGRpbmctcmlnaHQ6MXJlbSFpbXBvcnRhbnR9LnBiLWxnLTMsLnB5LWxnLTN7cGFkZGluZy1ib3R0b206MXJlbSFpbXBvcnRhbnR9LnBsLWxnLTMsLnB4LWxnLTN7cGFkZGluZy1sZWZ0OjFyZW0haW1wb3J0YW50fS5wLWxnLTR7cGFkZGluZzoxLjVyZW0haW1wb3J0YW50fS5wdC1sZy00LC5weS1sZy00e3BhZGRpbmctdG9wOjEuNXJlbSFpbXBvcnRhbnR9LnByLWxnLTQsLnB4LWxnLTR7cGFkZGluZy1yaWdodDoxLjVyZW0haW1wb3J0YW50fS5wYi1sZy00LC5weS1sZy00e3BhZGRpbmctYm90dG9tOjEuNXJlbSFpbXBvcnRhbnR9LnBsLWxnLTQsLnB4LWxnLTR7cGFkZGluZy1sZWZ0OjEuNXJlbSFpbXBvcnRhbnR9LnAtbGctNXtwYWRkaW5nOjNyZW0haW1wb3J0YW50fS5wdC1sZy01LC5weS1sZy01e3BhZGRpbmctdG9wOjNyZW0haW1wb3J0YW50fS5wci1sZy01LC5weC1sZy01e3BhZGRpbmctcmlnaHQ6M3JlbSFpbXBvcnRhbnR9LnBiLWxnLTUsLnB5LWxnLTV7cGFkZGluZy1ib3R0b206M3JlbSFpbXBvcnRhbnR9LnBsLWxnLTUsLnB4LWxnLTV7cGFkZGluZy1sZWZ0OjNyZW0haW1wb3J0YW50fS5tLWxnLW4xe21hcmdpbjotLjI1cmVtIWltcG9ydGFudH0ubXQtbGctbjEsLm15LWxnLW4xe21hcmdpbi10b3A6LS4yNXJlbSFpbXBvcnRhbnR9Lm1yLWxnLW4xLC5teC1sZy1uMXttYXJnaW4tcmlnaHQ6LS4yNXJlbSFpbXBvcnRhbnR9Lm1iLWxnLW4xLC5teS1sZy1uMXttYXJnaW4tYm90dG9tOi0uMjVyZW0haW1wb3J0YW50fS5tbC1sZy1uMSwubXgtbGctbjF7bWFyZ2luLWxlZnQ6LS4yNXJlbSFpbXBvcnRhbnR9Lm0tbGctbjJ7bWFyZ2luOi0uNXJlbSFpbXBvcnRhbnR9Lm10LWxnLW4yLC5teS1sZy1uMnttYXJnaW4tdG9wOi0uNXJlbSFpbXBvcnRhbnR9Lm1yLWxnLW4yLC5teC1sZy1uMnttYXJnaW4tcmlnaHQ6LS41cmVtIWltcG9ydGFudH0ubWItbGctbjIsLm15LWxnLW4ye21hcmdpbi1ib3R0b206LS41cmVtIWltcG9ydGFudH0ubWwtbGctbjIsLm14LWxnLW4ye21hcmdpbi1sZWZ0Oi0uNXJlbSFpbXBvcnRhbnR9Lm0tbGctbjN7bWFyZ2luOi0xcmVtIWltcG9ydGFudH0ubXQtbGctbjMsLm15LWxnLW4ze21hcmdpbi10b3A6LTFyZW0haW1wb3J0YW50fS5tci1sZy1uMywubXgtbGctbjN7bWFyZ2luLXJpZ2h0Oi0xcmVtIWltcG9ydGFudH0ubWItbGctbjMsLm15LWxnLW4ze21hcmdpbi1ib3R0b206LTFyZW0haW1wb3J0YW50fS5tbC1sZy1uMywubXgtbGctbjN7bWFyZ2luLWxlZnQ6LTFyZW0haW1wb3J0YW50fS5tLWxnLW40e21hcmdpbjotMS41cmVtIWltcG9ydGFudH0ubXQtbGctbjQsLm15LWxnLW40e21hcmdpbi10b3A6LTEuNXJlbSFpbXBvcnRhbnR9Lm1yLWxnLW40LC5teC1sZy1uNHttYXJnaW4tcmlnaHQ6LTEuNXJlbSFpbXBvcnRhbnR9Lm1iLWxnLW40LC5teS1sZy1uNHttYXJnaW4tYm90dG9tOi0xLjVyZW0haW1wb3J0YW50fS5tbC1sZy1uNCwubXgtbGctbjR7bWFyZ2luLWxlZnQ6LTEuNXJlbSFpbXBvcnRhbnR9Lm0tbGctbjV7bWFyZ2luOi0zcmVtIWltcG9ydGFudH0ubXQtbGctbjUsLm15LWxnLW41e21hcmdpbi10b3A6LTNyZW0haW1wb3J0YW50fS5tci1sZy1uNSwubXgtbGctbjV7bWFyZ2luLXJpZ2h0Oi0zcmVtIWltcG9ydGFudH0ubWItbGctbjUsLm15LWxnLW41e21hcmdpbi1ib3R0b206LTNyZW0haW1wb3J0YW50fS5tbC1sZy1uNSwubXgtbGctbjV7bWFyZ2luLWxlZnQ6LTNyZW0haW1wb3J0YW50fS5tLWxnLWF1dG97bWFyZ2luOmF1dG8haW1wb3J0YW50fS5tdC1sZy1hdXRvLC5teS1sZy1hdXRve21hcmdpbi10b3A6YXV0byFpbXBvcnRhbnR9Lm1yLWxnLWF1dG8sLm14LWxnLWF1dG97bWFyZ2luLXJpZ2h0OmF1dG8haW1wb3J0YW50fS5tYi1sZy1hdXRvLC5teS1sZy1hdXRve21hcmdpbi1ib3R0b206YXV0byFpbXBvcnRhbnR9Lm1sLWxnLWF1dG8sLm14LWxnLWF1dG97bWFyZ2luLWxlZnQ6YXV0byFpbXBvcnRhbnR9fUBtZWRpYSAobWluLXdpZHRoOjEyMDBweCl7Lm0teGwtMHttYXJnaW46MCFpbXBvcnRhbnR9Lm10LXhsLTAsLm15LXhsLTB7bWFyZ2luLXRvcDowIWltcG9ydGFudH0ubXIteGwtMCwubXgteGwtMHttYXJnaW4tcmlnaHQ6MCFpbXBvcnRhbnR9Lm1iLXhsLTAsLm15LXhsLTB7bWFyZ2luLWJvdHRvbTowIWltcG9ydGFudH0ubWwteGwtMCwubXgteGwtMHttYXJnaW4tbGVmdDowIWltcG9ydGFudH0ubS14bC0xe21hcmdpbjouMjVyZW0haW1wb3J0YW50fS5tdC14bC0xLC5teS14bC0xe21hcmdpbi10b3A6LjI1cmVtIWltcG9ydGFudH0ubXIteGwtMSwubXgteGwtMXttYXJnaW4tcmlnaHQ6LjI1cmVtIWltcG9ydGFudH0ubWIteGwtMSwubXkteGwtMXttYXJnaW4tYm90dG9tOi4yNXJlbSFpbXBvcnRhbnR9Lm1sLXhsLTEsLm14LXhsLTF7bWFyZ2luLWxlZnQ6LjI1cmVtIWltcG9ydGFudH0ubS14bC0ye21hcmdpbjouNXJlbSFpbXBvcnRhbnR9Lm10LXhsLTIsLm15LXhsLTJ7bWFyZ2luLXRvcDouNXJlbSFpbXBvcnRhbnR9Lm1yLXhsLTIsLm14LXhsLTJ7bWFyZ2luLXJpZ2h0Oi41cmVtIWltcG9ydGFudH0ubWIteGwtMiwubXkteGwtMnttYXJnaW4tYm90dG9tOi41cmVtIWltcG9ydGFudH0ubWwteGwtMiwubXgteGwtMnttYXJnaW4tbGVmdDouNXJlbSFpbXBvcnRhbnR9Lm0teGwtM3ttYXJnaW46MXJlbSFpbXBvcnRhbnR9Lm10LXhsLTMsLm15LXhsLTN7bWFyZ2luLXRvcDoxcmVtIWltcG9ydGFudH0ubXIteGwtMywubXgteGwtM3ttYXJnaW4tcmlnaHQ6MXJlbSFpbXBvcnRhbnR9Lm1iLXhsLTMsLm15LXhsLTN7bWFyZ2luLWJvdHRvbToxcmVtIWltcG9ydGFudH0ubWwteGwtMywubXgteGwtM3ttYXJnaW4tbGVmdDoxcmVtIWltcG9ydGFudH0ubS14bC00e21hcmdpbjoxLjVyZW0haW1wb3J0YW50fS5tdC14bC00LC5teS14bC00e21hcmdpbi10b3A6MS41cmVtIWltcG9ydGFudH0ubXIteGwtNCwubXgteGwtNHttYXJnaW4tcmlnaHQ6MS41cmVtIWltcG9ydGFudH0ubWIteGwtNCwubXkteGwtNHttYXJnaW4tYm90dG9tOjEuNXJlbSFpbXBvcnRhbnR9Lm1sLXhsLTQsLm14LXhsLTR7bWFyZ2luLWxlZnQ6MS41cmVtIWltcG9ydGFudH0ubS14bC01e21hcmdpbjozcmVtIWltcG9ydGFudH0ubXQteGwtNSwubXkteGwtNXttYXJnaW4tdG9wOjNyZW0haW1wb3J0YW50fS5tci14bC01LC5teC14bC01e21hcmdpbi1yaWdodDozcmVtIWltcG9ydGFudH0ubWIteGwtNSwubXkteGwtNXttYXJnaW4tYm90dG9tOjNyZW0haW1wb3J0YW50fS5tbC14bC01LC5teC14bC01e21hcmdpbi1sZWZ0OjNyZW0haW1wb3J0YW50fS5wLXhsLTB7cGFkZGluZzowIWltcG9ydGFudH0ucHQteGwtMCwucHkteGwtMHtwYWRkaW5nLXRvcDowIWltcG9ydGFudH0ucHIteGwtMCwucHgteGwtMHtwYWRkaW5nLXJpZ2h0OjAhaW1wb3J0YW50fS5wYi14bC0wLC5weS14bC0we3BhZGRpbmctYm90dG9tOjAhaW1wb3J0YW50fS5wbC14bC0wLC5weC14bC0we3BhZGRpbmctbGVmdDowIWltcG9ydGFudH0ucC14bC0xe3BhZGRpbmc6LjI1cmVtIWltcG9ydGFudH0ucHQteGwtMSwucHkteGwtMXtwYWRkaW5nLXRvcDouMjVyZW0haW1wb3J0YW50fS5wci14bC0xLC5weC14bC0xe3BhZGRpbmctcmlnaHQ6LjI1cmVtIWltcG9ydGFudH0ucGIteGwtMSwucHkteGwtMXtwYWRkaW5nLWJvdHRvbTouMjVyZW0haW1wb3J0YW50fS5wbC14bC0xLC5weC14bC0xe3BhZGRpbmctbGVmdDouMjVyZW0haW1wb3J0YW50fS5wLXhsLTJ7cGFkZGluZzouNXJlbSFpbXBvcnRhbnR9LnB0LXhsLTIsLnB5LXhsLTJ7cGFkZGluZy10b3A6LjVyZW0haW1wb3J0YW50fS5wci14bC0yLC5weC14bC0ye3BhZGRpbmctcmlnaHQ6LjVyZW0haW1wb3J0YW50fS5wYi14bC0yLC5weS14bC0ye3BhZGRpbmctYm90dG9tOi41cmVtIWltcG9ydGFudH0ucGwteGwtMiwucHgteGwtMntwYWRkaW5nLWxlZnQ6LjVyZW0haW1wb3J0YW50fS5wLXhsLTN7cGFkZGluZzoxcmVtIWltcG9ydGFudH0ucHQteGwtMywucHkteGwtM3twYWRkaW5nLXRvcDoxcmVtIWltcG9ydGFudH0ucHIteGwtMywucHgteGwtM3twYWRkaW5nLXJpZ2h0OjFyZW0haW1wb3J0YW50fS5wYi14bC0zLC5weS14bC0ze3BhZGRpbmctYm90dG9tOjFyZW0haW1wb3J0YW50fS5wbC14bC0zLC5weC14bC0ze3BhZGRpbmctbGVmdDoxcmVtIWltcG9ydGFudH0ucC14bC00e3BhZGRpbmc6MS41cmVtIWltcG9ydGFudH0ucHQteGwtNCwucHkteGwtNHtwYWRkaW5nLXRvcDoxLjVyZW0haW1wb3J0YW50fS5wci14bC00LC5weC14bC00e3BhZGRpbmctcmlnaHQ6MS41cmVtIWltcG9ydGFudH0ucGIteGwtNCwucHkteGwtNHtwYWRkaW5nLWJvdHRvbToxLjVyZW0haW1wb3J0YW50fS5wbC14bC00LC5weC14bC00e3BhZGRpbmctbGVmdDoxLjVyZW0haW1wb3J0YW50fS5wLXhsLTV7cGFkZGluZzozcmVtIWltcG9ydGFudH0ucHQteGwtNSwucHkteGwtNXtwYWRkaW5nLXRvcDozcmVtIWltcG9ydGFudH0ucHIteGwtNSwucHgteGwtNXtwYWRkaW5nLXJpZ2h0OjNyZW0haW1wb3J0YW50fS5wYi14bC01LC5weS14bC01e3BhZGRpbmctYm90dG9tOjNyZW0haW1wb3J0YW50fS5wbC14bC01LC5weC14bC01e3BhZGRpbmctbGVmdDozcmVtIWltcG9ydGFudH0ubS14bC1uMXttYXJnaW46LS4yNXJlbSFpbXBvcnRhbnR9Lm10LXhsLW4xLC5teS14bC1uMXttYXJnaW4tdG9wOi0uMjVyZW0haW1wb3J0YW50fS5tci14bC1uMSwubXgteGwtbjF7bWFyZ2luLXJpZ2h0Oi0uMjVyZW0haW1wb3J0YW50fS5tYi14bC1uMSwubXkteGwtbjF7bWFyZ2luLWJvdHRvbTotLjI1cmVtIWltcG9ydGFudH0ubWwteGwtbjEsLm14LXhsLW4xe21hcmdpbi1sZWZ0Oi0uMjVyZW0haW1wb3J0YW50fS5tLXhsLW4ye21hcmdpbjotLjVyZW0haW1wb3J0YW50fS5tdC14bC1uMiwubXkteGwtbjJ7bWFyZ2luLXRvcDotLjVyZW0haW1wb3J0YW50fS5tci14bC1uMiwubXgteGwtbjJ7bWFyZ2luLXJpZ2h0Oi0uNXJlbSFpbXBvcnRhbnR9Lm1iLXhsLW4yLC5teS14bC1uMnttYXJnaW4tYm90dG9tOi0uNXJlbSFpbXBvcnRhbnR9Lm1sLXhsLW4yLC5teC14bC1uMnttYXJnaW4tbGVmdDotLjVyZW0haW1wb3J0YW50fS5tLXhsLW4ze21hcmdpbjotMXJlbSFpbXBvcnRhbnR9Lm10LXhsLW4zLC5teS14bC1uM3ttYXJnaW4tdG9wOi0xcmVtIWltcG9ydGFudH0ubXIteGwtbjMsLm14LXhsLW4ze21hcmdpbi1yaWdodDotMXJlbSFpbXBvcnRhbnR9Lm1iLXhsLW4zLC5teS14bC1uM3ttYXJnaW4tYm90dG9tOi0xcmVtIWltcG9ydGFudH0ubWwteGwtbjMsLm14LXhsLW4ze21hcmdpbi1sZWZ0Oi0xcmVtIWltcG9ydGFudH0ubS14bC1uNHttYXJnaW46LTEuNXJlbSFpbXBvcnRhbnR9Lm10LXhsLW40LC5teS14bC1uNHttYXJnaW4tdG9wOi0xLjVyZW0haW1wb3J0YW50fS5tci14bC1uNCwubXgteGwtbjR7bWFyZ2luLXJpZ2h0Oi0xLjVyZW0haW1wb3J0YW50fS5tYi14bC1uNCwubXkteGwtbjR7bWFyZ2luLWJvdHRvbTotMS41cmVtIWltcG9ydGFudH0ubWwteGwtbjQsLm14LXhsLW40e21hcmdpbi1sZWZ0Oi0xLjVyZW0haW1wb3J0YW50fS5tLXhsLW41e21hcmdpbjotM3JlbSFpbXBvcnRhbnR9Lm10LXhsLW41LC5teS14bC1uNXttYXJnaW4tdG9wOi0zcmVtIWltcG9ydGFudH0ubXIteGwtbjUsLm14LXhsLW41e21hcmdpbi1yaWdodDotM3JlbSFpbXBvcnRhbnR9Lm1iLXhsLW41LC5teS14bC1uNXttYXJnaW4tYm90dG9tOi0zcmVtIWltcG9ydGFudH0ubWwteGwtbjUsLm14LXhsLW41e21hcmdpbi1sZWZ0Oi0zcmVtIWltcG9ydGFudH0ubS14bC1hdXRve21hcmdpbjphdXRvIWltcG9ydGFudH0ubXQteGwtYXV0bywubXkteGwtYXV0b3ttYXJnaW4tdG9wOmF1dG8haW1wb3J0YW50fS5tci14bC1hdXRvLC5teC14bC1hdXRve21hcmdpbi1yaWdodDphdXRvIWltcG9ydGFudH0ubWIteGwtYXV0bywubXkteGwtYXV0b3ttYXJnaW4tYm90dG9tOmF1dG8haW1wb3J0YW50fS5tbC14bC1hdXRvLC5teC14bC1hdXRve21hcmdpbi1sZWZ0OmF1dG8haW1wb3J0YW50fX0udGV4dC1tb25vc3BhY2V7Zm9udC1mYW1pbHk6U0ZNb25vLVJlZ3VsYXIsTWVubG8sTW9uYWNvLENvbnNvbGFzLCJMaWJlcmF0aW9uIE1vbm8iLCJDb3VyaWVyIE5ldyIsbW9ub3NwYWNlIWltcG9ydGFudH0udGV4dC1qdXN0aWZ5e3RleHQtYWxpZ246anVzdGlmeSFpbXBvcnRhbnR9LnRleHQtd3JhcHt3aGl0ZS1zcGFjZTpub3JtYWwhaW1wb3J0YW50fS50ZXh0LW5vd3JhcHt3aGl0ZS1zcGFjZTpub3dyYXAhaW1wb3J0YW50fS50ZXh0LXRydW5jYXRle292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0udGV4dC1sZWZ0e3RleHQtYWxpZ246bGVmdCFpbXBvcnRhbnR9LnRleHQtcmlnaHR7dGV4dC1hbGlnbjpyaWdodCFpbXBvcnRhbnR9LnRleHQtY2VudGVye3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH1AbWVkaWEgKG1pbi13aWR0aDo1NzZweCl7LnRleHQtc20tbGVmdHt0ZXh0LWFsaWduOmxlZnQhaW1wb3J0YW50fS50ZXh0LXNtLXJpZ2h0e3RleHQtYWxpZ246cmlnaHQhaW1wb3J0YW50fS50ZXh0LXNtLWNlbnRlcnt0ZXh0LWFsaWduOmNlbnRlciFpbXBvcnRhbnR9fUBtZWRpYSAobWluLXdpZHRoOjc2OHB4KXsudGV4dC1tZC1sZWZ0e3RleHQtYWxpZ246bGVmdCFpbXBvcnRhbnR9LnRleHQtbWQtcmlnaHR7dGV4dC1hbGlnbjpyaWdodCFpbXBvcnRhbnR9LnRleHQtbWQtY2VudGVye3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH19QG1lZGlhIChtaW4td2lkdGg6OTkycHgpey50ZXh0LWxnLWxlZnR7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGV4dC1sZy1yaWdodHt0ZXh0LWFsaWduOnJpZ2h0IWltcG9ydGFudH0udGV4dC1sZy1jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXIhaW1wb3J0YW50fX1AbWVkaWEgKG1pbi13aWR0aDoxMjAwcHgpey50ZXh0LXhsLWxlZnR7dGV4dC1hbGlnbjpsZWZ0IWltcG9ydGFudH0udGV4dC14bC1yaWdodHt0ZXh0LWFsaWduOnJpZ2h0IWltcG9ydGFudH0udGV4dC14bC1jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXIhaW1wb3J0YW50fX0udGV4dC1sb3dlcmNhc2V7dGV4dC10cmFuc2Zvcm06bG93ZXJjYXNlIWltcG9ydGFudH0udGV4dC11cHBlcmNhc2V7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlIWltcG9ydGFudH0udGV4dC1jYXBpdGFsaXple3RleHQtdHJhbnNmb3JtOmNhcGl0YWxpemUhaW1wb3J0YW50fS5mb250LXdlaWdodC1saWdodHtmb250LXdlaWdodDozMDAhaW1wb3J0YW50fS5mb250LXdlaWdodC1saWdodGVye2ZvbnQtd2VpZ2h0OmxpZ2h0ZXIhaW1wb3J0YW50fS5mb250LXdlaWdodC1ub3JtYWx7Zm9udC13ZWlnaHQ6NDAwIWltcG9ydGFudH0uZm9udC13ZWlnaHQtYm9sZHtmb250LXdlaWdodDo3MDAhaW1wb3J0YW50fS5mb250LXdlaWdodC1ib2xkZXJ7Zm9udC13ZWlnaHQ6Ym9sZGVyIWltcG9ydGFudH0uZm9udC1pdGFsaWN7Zm9udC1zdHlsZTppdGFsaWMhaW1wb3J0YW50fS50ZXh0LXdoaXRle2NvbG9yOiNmZmYhaW1wb3J0YW50fS50ZXh0LXByaW1hcnl7Y29sb3I6IzAwN2JmZiFpbXBvcnRhbnR9YS50ZXh0LXByaW1hcnk6Zm9jdXMsYS50ZXh0LXByaW1hcnk6aG92ZXJ7Y29sb3I6IzAwNTZiMyFpbXBvcnRhbnR9LnRleHQtc2Vjb25kYXJ5e2NvbG9yOiM2Yzc1N2QhaW1wb3J0YW50fWEudGV4dC1zZWNvbmRhcnk6Zm9jdXMsYS50ZXh0LXNlY29uZGFyeTpob3Zlcntjb2xvcjojNDk0ZjU0IWltcG9ydGFudH0udGV4dC1zdWNjZXNze2NvbG9yOiMyOGE3NDUhaW1wb3J0YW50fWEudGV4dC1zdWNjZXNzOmZvY3VzLGEudGV4dC1zdWNjZXNzOmhvdmVye2NvbG9yOiMxOTY5MmMhaW1wb3J0YW50fS50ZXh0LWluZm97Y29sb3I6IzE3YTJiOCFpbXBvcnRhbnR9YS50ZXh0LWluZm86Zm9jdXMsYS50ZXh0LWluZm86aG92ZXJ7Y29sb3I6IzBmNjY3NCFpbXBvcnRhbnR9LnRleHQtd2FybmluZ3tjb2xvcjojZmZjMTA3IWltcG9ydGFudH1hLnRleHQtd2FybmluZzpmb2N1cyxhLnRleHQtd2FybmluZzpob3Zlcntjb2xvcjojYmE4YjAwIWltcG9ydGFudH0udGV4dC1kYW5nZXJ7Y29sb3I6I2RjMzU0NSFpbXBvcnRhbnR9YS50ZXh0LWRhbmdlcjpmb2N1cyxhLnRleHQtZGFuZ2VyOmhvdmVye2NvbG9yOiNhNzFkMmEhaW1wb3J0YW50fS50ZXh0LWxpZ2h0e2NvbG9yOiNmOGY5ZmEhaW1wb3J0YW50fWEudGV4dC1saWdodDpmb2N1cyxhLnRleHQtbGlnaHQ6aG92ZXJ7Y29sb3I6I2NiZDNkYSFpbXBvcnRhbnR9LnRleHQtZGFya3tjb2xvcjojMzQzYTQwIWltcG9ydGFudH1hLnRleHQtZGFyazpmb2N1cyxhLnRleHQtZGFyazpob3Zlcntjb2xvcjojMTIxNDE2IWltcG9ydGFudH0udGV4dC1ib2R5e2NvbG9yOiMyMTI1MjkhaW1wb3J0YW50fS50ZXh0LW11dGVke2NvbG9yOiM2Yzc1N2QhaW1wb3J0YW50fS50ZXh0LWJsYWNrLTUwe2NvbG9yOnJnYmEoMCwwLDAsLjUpIWltcG9ydGFudH0udGV4dC13aGl0ZS01MHtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC41KSFpbXBvcnRhbnR9LnRleHQtaGlkZXtmb250OjAvMCBhO2NvbG9yOnRyYW5zcGFyZW50O3RleHQtc2hhZG93Om5vbmU7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXI6MH0udGV4dC1kZWNvcmF0aW9uLW5vbmV7dGV4dC1kZWNvcmF0aW9uOm5vbmUhaW1wb3J0YW50fS50ZXh0LWJyZWFre3dvcmQtYnJlYWs6YnJlYWstd29yZCFpbXBvcnRhbnQ7b3ZlcmZsb3ctd3JhcDpicmVhay13b3JkIWltcG9ydGFudH0udGV4dC1yZXNldHtjb2xvcjppbmhlcml0IWltcG9ydGFudH0udmlzaWJsZXt2aXNpYmlsaXR5OnZpc2libGUhaW1wb3J0YW50fS5pbnZpc2libGV7dmlzaWJpbGl0eTpoaWRkZW4haW1wb3J0YW50fUBtZWRpYSBwcmludHsqLDo6YWZ0ZXIsOjpiZWZvcmV7dGV4dC1zaGFkb3c6bm9uZSFpbXBvcnRhbnQ7Ym94LXNoYWRvdzpub25lIWltcG9ydGFudH1hOm5vdCguYnRuKXt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfWFiYnJbdGl0bGVdOjphZnRlcntjb250ZW50OiIgKCIgYXR0cih0aXRsZSkgIikifXByZXt3aGl0ZS1zcGFjZTpwcmUtd3JhcCFpbXBvcnRhbnR9YmxvY2txdW90ZSxwcmV7Ym9yZGVyOjFweCBzb2xpZCAjYWRiNWJkO3BhZ2UtYnJlYWstaW5zaWRlOmF2b2lkfXRoZWFke2Rpc3BsYXk6dGFibGUtaGVhZGVyLWdyb3VwfWltZyx0cntwYWdlLWJyZWFrLWluc2lkZTphdm9pZH1oMixoMyxwe29ycGhhbnM6Mzt3aWRvd3M6M31oMixoM3twYWdlLWJyZWFrLWFmdGVyOmF2b2lkfUBwYWdle3NpemU6YTN9Ym9keXttaW4td2lkdGg6OTkycHghaW1wb3J0YW50fS5jb250YWluZXJ7bWluLXdpZHRoOjk5MnB4IWltcG9ydGFudH0ubmF2YmFye2Rpc3BsYXk6bm9uZX0uYmFkZ2V7Ym9yZGVyOjFweCBzb2xpZCAjMDAwfS50YWJsZXtib3JkZXItY29sbGFwc2U6Y29sbGFwc2UhaW1wb3J0YW50fS50YWJsZSB0ZCwudGFibGUgdGh7YmFja2dyb3VuZC1jb2xvcjojZmZmIWltcG9ydGFudH0udGFibGUtYm9yZGVyZWQgdGQsLnRhYmxlLWJvcmRlcmVkIHRoe2JvcmRlcjoxcHggc29saWQgI2RlZTJlNiFpbXBvcnRhbnR9LnRhYmxlLWRhcmt7Y29sb3I6aW5oZXJpdH0udGFibGUtZGFyayB0Ym9keSt0Ym9keSwudGFibGUtZGFyayB0ZCwudGFibGUtZGFyayB0aCwudGFibGUtZGFyayB0aGVhZCB0aHtib3JkZXItY29sb3I6I2RlZTJlNn0udGFibGUgLnRoZWFkLWRhcmsgdGh7Y29sb3I6aW5oZXJpdDtib3JkZXItY29sb3I6I2RlZTJlNn19Ci8qIyBzb3VyY2VNYXBwaW5nVVJMPWJvb3RzdHJhcC5taW4uY3NzLm1hcCAqLw=="}},"time_used":195,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":195,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.248Z","timestamp":1785126257248,"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-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/ticker-tape/?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 04:24:17 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: d7203a42610e3d446bf7a460483600e5\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-27T07:05:45.338148Z","times_seen":2378,"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":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.tradingview-widget.com/static/bundles/embed/9488.09f269f8b26b2b00a8b7.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.324Z","timestamp":1785126257324,"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-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/9488.09f269f8b26b2b00a8b7.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/crypto-mkt-screener/?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 04:24:17 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: \"6a6328d1-a1b\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:56:49 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:33:39\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 467e1eea6627cecaf3ea6077367dc59f\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":2587,"size_decoded":1535,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (2587), with no line terminators","md5":"275a3aff3912902e8be1e478039dcc68","sha1":"56cb8c5a6ac35dac135d312b22a8f19eccf84dfa","sha256":"cd8a39ef3cdfe7b217c84d018998f33c3ba27287b520ddc95b4bbe03fb4be654","sha512":"d16c152cd43b3b93c510d62f53460b1f78e47297b85227ab9f589b9d906cbf6ca86c7afa2bbc8e96298a5d1ce56229f488e750625a71241ab512eefff23b6ae7","ssdeep":"","tlshash":"92510298e5d0263a344b963e1359d5bd4274e493db42cfecf721652045c3bfb01b3628","first_seen":"2026-07-24T21:10:00.174224Z","last_seen":"2026-07-27T07:14:43.696883Z","times_seen":134,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAteDB2czp2YXIoLS1jb2xvci10di1ibHVlLTUwKTstLV8xLXgwdnM6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tXzIteDB2czp2YXIoLS1jb2xvci10di1ibHVlLTEwMCl9W2RhdGEtdGhlbWU9ZGFya117LS1fMC14MHZzOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tXzEteDB2czp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tXzIteDB2czp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApfS53cmFwLXl6ajdsdktue3Bvc2l0aW9uOnJlbGF0aXZlfS5saXN0LXl6ajdsdktue2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYmctcHJpbWFyeSk7cGFkZGluZzoxNXB4IDB9Lmxpc3QteXpqN2x2S24gLml0ZW0teXpqN2x2S257Y3Vyc29yOnBvaW50ZXI7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmctYmxvY2s6MTBweCAxMHB4O3BhZGRpbmctaW5saW5lOjE1cHggMzBweDtwb3NpdGlvbjpyZWxhdGl2ZTt0ZXh0LWFsaWduOnN0YXJ0O3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7dHJhbnNpdGlvbjpjb2xvciAuMzVzIGVhc2UsYmFja2dyb3VuZC1jb2xvciAuMzVzIGVhc2U7d2hpdGUtc3BhY2U6bm93cmFwfS5saXN0LXl6ajdsdktuIC5pdGVtLXl6ajdsdktuLnNlbGVjdGVkLXl6ajdsdktue2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzIteDB2cyk7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1yZWd1bGFyKTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5saXN0LXl6ajdsdktuIC5pdGVtLXl6ajdsdktuOmhvdmVyOm5vdCguc2VsZWN0ZWQteXpqN2x2S24pe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdHYtZHJvcGRvd24taXRlbS1ob3Zlci1iZyk7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1yZWd1bGFyKTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9fS5saXN0LXl6ajdsdktuIC5ibHVpc2hJdGVtLXl6ajdsdktue2N1cnNvcjpwb2ludGVyO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nLWJsb2NrOjEwcHggMTBweDtwYWRkaW5nLWlubGluZToxNXB4IDMwcHg7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpzdGFydDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3RyYW5zaXRpb246Y29sb3IgLjM1cyBlYXNlLGJhY2tncm91bmQtY29sb3IgLjM1cyBlYXNlO3doaXRlLXNwYWNlOm5vd3JhcH0ubGlzdC15emo3bHZLbiAuYmx1aXNoSXRlbS15emo3bHZLbi5zZWxlY3RlZC15emo3bHZLbntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8yLXgwdnMpO2NvbG9yOnZhcigtLWNvbG9yLXdoaXRlKTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5saXN0LXl6ajdsdktuIC5ibHVpc2hJdGVtLXl6ajdsdktuOmhvdmVyOm5vdCguc2VsZWN0ZWQteXpqN2x2S24pe2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzAteDB2cyk7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1yZWd1bGFyKTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9fS5saXN0LXl6ajdsdktuIC5ibHVpc2hJdGVtLXl6ajdsdktuLm5vUGFkZGluZy15emo3bHZLbntwYWRkaW5nOjB9Lmxpc3QtR05XNkJ2R297ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtvdmVyZmxvdzphdXRvfS5saXN0LUdOVzZCdkdvIC5pdGVtLUdOVzZCdkdve2Rpc3BsYXk6aW5saW5lLWZsZXg7ZmxleC1zaHJpbms6MH0uY29udGFpbmVyLUhUQkpvOWJhe292ZXJmbG93LXg6aGlkZGVuO292ZXJmbG93LXk6YXV0bzstd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzp0b3VjaDtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWJhY2tncm91bmQsdmFyKC0tY29sb3ItcG9wdXAtYmFja2dyb3VuZCkpO2JvcmRlci1yYWRpdXM6NnB4O2JveC1zaGFkb3c6MCAycHggNHB4IHZhcigtLWNvbG9yLXNoYWRvdy1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnkpO2JveC1zaXppbmc6Ym9yZGVyLWJveDtsaW5lLWhlaWdodDpub3JtYWx9LmNvbnRhaW5lci1IVEJKbzliYTo6LXdlYmtpdC1zY3JvbGxiYXJ7aGVpZ2h0OjVweDt3aWR0aDo1cHh9LmNvbnRhaW5lci1IVEJKbzliYTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7YmFja2dyb3VuZC1jbGlwOmNvbnRlbnQtYm94O2JhY2tncm91bmQtY29sb3I6dmFyKC0tdHYtY29sb3Itc2Nyb2xsYmFyLXRodW1iLWJhY2tncm91bmQsdmFyKC0tY29sb3Itc2Nyb2xsLWJnKSk7Ym9yZGVyOjFweCBzb2xpZCAjMDAwMDtib3JkZXItcmFkaXVzOjNweH0uY29udGFpbmVyLUhUQkpvOWJhOjotd2Via2l0LXNjcm9sbGJhci10cmFja3tiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Ym9yZGVyLXJhZGl1czozcHh9LmNvbnRhaW5lci1IVEJKbzliYTo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVye2Rpc3BsYXk6bm9uZX0uY29udGFpbmVyLUhUQkpvOWJhLnRvcC1IVEJKbzliYXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWJhY2tncm91bmQsdmFyKC0tY29sb3ItcG9wdXAtYmFja2dyb3VuZCkpO2JvcmRlci1yYWRpdXM6NnB4O2JveC1zaGFkb3c6MCAycHggNHB4IHZhcigtLWNvbG9yLXNoYWRvdy1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnkpfQ=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCFET.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.660Z","timestamp":1785126258660,"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 /crypto/XTVCFET.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 04:24:18 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: \"7d25c82dae74870560cba311e1f6b55d\"\r\nlast-modified: Mon, 05 Aug 2024 13:38:52 GMT\r\ncdn-cachedat: 08/14/2025 09:09:46\r\nx-amz-id-2: vzCsKcfTAd1RZqLG9kDren6vlh9Fwpq/QfmGa2QxyLd+zmWomy20ytyKdkjVZ1boagMtXF1EHyM=\r\nx-amz-request-id: QC4BBCEW8PWBMW5V\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 7d25c82dae74870560cba311e1f6b55d\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: e4ef1fa941e6b783dc356a661c929a97\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":812,"size_decoded":1286,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (812), with no line terminators","md5":"7d25c82dae74870560cba311e1f6b55d","sha1":"907218c851fe2c6ba31b52de568f8e2aba994913","sha256":"a06f21f5e2fdd35d3579e0056db4fb474d852d5f3201fd6a67d6b3bb4ba62ecf","sha512":"38136bdd0da24bc7271f86a00ad2acf67758844a962376b28eaf8f0b814ae14223f7175307fa3307fb5c567f2095da6d1611cd6d323e81c0a899e4c99dc63ab1","ssdeep":"","tlshash":"01014edca61ce475d512feeda955e162314e30e7456906f833503d26e750bdf3c01a68","first_seen":"2025-04-11T11:28:49.347776Z","last_seen":"2026-07-27T07:05:43.303564Z","times_seen":1327,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNNSA1aDJ2Mkg1VjVaIiBmaWxsPSIjRDlEOUQ5Ii8+PHBhdGggb3BhY2l0eT0iLjkiIGQ9Ik04IDVoMnYySDhWNVoiIGZpbGw9IiNEOUQ5RDkiLz48cGF0aCBvcGFjaXR5PSIuNyIgZD0iTTExIDVoMnYyaC0yVjVaIiBmaWxsPSIjRDlEOUQ5Ii8+PHBhdGggb3BhY2l0eT0iLjgiIGQ9Ik01IDExaDJ2Mkg1di0yWiIgZmlsbD0iI0Q5RDlEOSIvPjxwYXRoIGQ9Ik01IDhoMnYySDVWOFoiIGZpbGw9IiNEOUQ5RDkiLz48cGF0aCBvcGFjaXR5PSIuNyIgZD0iTTggOGgydjJIOFY4WiIgZmlsbD0iI0Q5RDlEOSIvPjxjaXJjbGUgb3BhY2l0eT0iLjciIGN4PSI5IiBjeT0iMTIiIHI9IjEiIGZpbGw9IiNEOUQ5RDkiLz48Y2lyY2xlIG9wYWNpdHk9Ii41IiBjeD0iMTIiIGN5PSIxMiIgcj0iMSIgZmlsbD0iI0Q5RDlEOSIvPjxjaXJjbGUgb3BhY2l0eT0iLjUiIGN4PSIxMiIgY3k9IjkiIHI9IjEiIGZpbGw9IiNEOUQ5RDkiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImEiIHgxPSIxOCIgeTE9IjUuMyIgeDI9IjUuNjUiIHkyPSIxNi40MyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiMyQzIyOTUiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMwMjBFM0UiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCBIGTIME.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.792Z","timestamp":1785126258792,"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 /crypto/XTVCBIGTIME.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 04:24:18 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: \"0d7164a8b15391e321ceee7c55bedf2b\"\r\nlast-modified: Thu, 11 Jun 2026 10:28:53 GMT\r\nx-amz-id-2: /iiaqDCQRoUxvx8THUq/IpXKmKzpL44tyZZReDWe7U7FfR53RBH5jQLUKu5tL1lRWmIFmejrMcueqFR7ugs3rR1k+1LHktbI\r\nx-amz-request-id: PDDNHQN06B2DQWDN\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 0d7164a8b15391e321ceee7c55bedf2b\r\nx-amz-version-id: ReBsMVTtnOL264Tvo2.ZfxZUwq_hTj.C\r\ncdn-proxyver: 1.55\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 06/11/2026 11:40:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 8a7bbc6f103ba1e861fcc31d824f7b8e\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":5000,"size_decoded":3119,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (5000), with no line terminators","md5":"0d7164a8b15391e321ceee7c55bedf2b","sha1":"f7f3507c1f08dd6d67c28093831d6fbfb98d2865","sha256":"bcd09ad4120ad05add6e3ac2bfef781515c8939a443ef5cd94076e87416db41d","sha512":"ed42df2ba2ab842aaede8112f39c5bcfa0b1846d691395475db048d6e3137aa1e48a0f598cfc07f822c8c93d8d473e0b3b2f053eefca907a7fcd1bc7a64ed495","ssdeep":"96:b0ZNeMrjObWkupcesOen5GZSBywoxoWUJpJZkT5y1:QZNRjbra7Oe5GaKZUPJ/","tlshash":"a8a169596248a76c1883e69dc3ab94f0234f406ab1ead5cc6dffd7eca00e590f942424","first_seen":"2026-05-09T04:52:18.767017Z","last_seen":"2026-07-27T07:05:43.383242Z","times_seen":201,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTUgOXYuMzdjLS4wMS4wOC0uMDUuMTMtLjEzLjE2bC0uNjYuMjNhLjEyLjEyIDAgMCAwLS4wOS4xYy0uMDQuMzUtLjEzLjY4LS4yNi45OC0uMDEuMDQgMCAuMDcuMDIuMWwuNDcuNTVjLjA1LjA2LjA2LjEyLjAyLjJsLS4zNC42Yy0uMDUuMDktLjEzLjEyLS4yMy4xbC0uNjgtLjEzYS4xLjEgMCAwIDAtLjA5LjAzIDYuMyA2LjMgMCAwIDEtLjc3Ljc2LjA3LjA3IDAgMCAwLS4wMi4wN2wuMTIuNzFjLjAxLjA4LS4wMi4xNC0uMDguMThsLS41NC4zMWMtLjEzLjA3LS4yMy4wNy0uMzIgMGE1LjMgNS4zIDAgMCAxLS41LS40My4wNy4wNyAwIDAgMC0uMDktLjAyYy0uMzIuMTItLjY3LjIyLTEuMDcuM2EuMDguMDggMCAwIDAtLjA2LjA1bC0uMjUuN2EuMDguMDggMCAwIDEtLjA3LjA2Yy0uMjUuMDItLjUyLjAzLS43OS4wMi0uMSAwLS4xOC0uMDctLjIyLS4ybC0uMTgtLjU3YS4xLjEgMCAwIDAtLjEtLjA3Yy0uMzUtLjA2LS43LS4xNS0xLjAzLS4yOGEuMDkuMDkgMCAwIDAtLjEuMDJjLS4xNC4xMy0uMy4yNi0uNDguNC0uMS4wOS0uMi4xLS4zMS4wNGwtLjUtLjI4Yy0uMTQtLjA3LS4xOS0uMTgtLjE2LS4zMmwuMTItLjU4YS4xLjEgMCAwIDAtLjAzLS4xIDYuMDUgNi4wNSAwIDAgMS0uNzgtLjc2LjEuMSAwIDAgMC0uMS0uMDRsLS42NS4xM2MtLjEuMDItLjE3LS4wMi0uMjItLjFsLS4zLS41M2EuMjkuMjkgMCAwIDEgLjAzLS4zNGwuNC0uNDZhLjA4LjA4IDAgMCAwIC4wMi0uMDljLS4xMi0uMjctLjItLjU1LS4yNS0uODVhLjM5LjM5IDAgMCAxIDAtLjE3YzAtLjAyLjAyLS4wMy4wNC0uMDRhLjQyLjQyIDAgMCAxIC4xOC0uMDVjLjI2LS4wMi41MS0uMDEuNzYgMCAuMDguMDEuMTIuMDUuMTQuMTJhNC4xIDQuMSAwIDAgMCAzLjQ0IDMuMTdBNC4xNSA0LjE1IDAgMCAwIDEzLjA3IDlhNC4xNSA0LjE1IDAgMCAwLTQuNzYtNC4wNSA0LjEgNC4xIDAgMCAwLTMuNDQgMy4xN2MtLjAyLjA3LS4wNi4xLS4xNC4xMS0uMjUuMDMtLjUuMDMtLjc2LjAxYS40Mi40MiAwIDAgMS0uMTgtLjA1LjA3LjA3IDAgMCAxLS4wNC0uMDQuMzkuMzkgMCAwIDEgMC0uMTdjLjA1LS4zLjEzLS41OC4yNS0uODVhLjA4LjA4IDAgMCAwLS4wMi0uMDlsLS40LS40NmEuMjkuMjkgMCAwIDEtLjA4LS4xNmMwLS4wNyAwLS4xMi4wNC0uMThsLjMxLS41M2MuMDUtLjA4LjEyLS4xMS4yMi0uMWwuNjUuMTNhLjEuMSAwIDAgMCAuMS0uMDNjLjI0LS4yOS41LS41NC43OC0uNzdhLjEuMSAwIDAgMCAuMDMtLjFsLS4xMi0uNThjLS4wMy0uMTQuMDItLjI1LjE1LS4zMmwuNS0uMjhjLjEyLS4wNS4yMi0uMDQuMzIuMDNsLjQ4LjQxYS4xLjEgMCAwIDAgLjEuMDJjLjM0LS4xMy42OC0uMjIgMS4wNC0uMjhhLjEuMSAwIDAgMCAuMDgtLjA3bC4xOS0uNTdjLjA0LS4xMy4xMS0uMi4yMi0uMi4yNyAwIC41MyAwIC43OS4wMi4wNCAwIC4wNi4wMy4wNy4wNmwuMjUuN2MwIC4wMy4wMy4wNS4wNi4wNi40LjA3Ljc1LjE3IDEuMDcuMjkuMDMgMCAuMDYgMCAuMDgtLjAyLjE2LS4xNS4zMy0uMy41LS40My4xLS4wNy4yLS4wNy4zMiAwbC41NC4zYy4wNy4wNS4xLjEuMDkuMTlsLS4xMy43YzAgLjA0IDAgLjA2LjAzLjA4LjI5LjI0LjU0LjUuNzcuNzZhLjEuMSAwIDAgMCAuMS4wM2wuNjctLjEzYy4xLS4wMi4xNy4wMS4yMi4xbC4zNS42Yy4wNC4wNy4wMy4xNC0uMDIuMmwtLjQ3LjU1Yy0uMDIuMDMtLjAzLjA2LS4wMi4xLjEzLjMuMjIuNjMuMjYuOTguMDEuMDUuMDQuMDkuMDkuMWwuNjYuMjNjLjA4LjAzLjEyLjA4LjEyLjE2TDE1IDlaIiBmaWxsPSIjOTY5Njk2Ii8+PHBhdGggZD0iTTEzLjk1IDkuNDRhLjEuMSAwIDAgMC0uMDkuMDZjLS4wNS4xMi0uMDguMjMtLjA5LjM0LS4wMS4xMi0uMDMuMjMtLjA2LjMzbC0uMi41N2EuNi42IDAgMCAwLS4wMS4zNSA0LjEyIDQuMTIgMCAwIDEgLjQ1LjV2LjA2Yy0uMDUuMTMtLjEuMjItLjE0LjI4LS4wMy4wNi0uMS4wOC0uMjEuMDdsLS40Ni0uMWMtLjE3LS4wNS0uMjkgMC0uMzcuMTFsLS4xLjE0Yy0uMi4yNC0uNDQuNDctLjc0LjctLjA2LjA1LS4wOC4xMy0uMDcuMjNsLjExLjYyYy4wMS4wNS0uMDIuMS0uMS4xNGwtLjI0LjEzYy0uMDQuMDItLjA3LjAyLS4xLS4wMWExLjU2IDEuNTYgMCAwIDAtLjU5LS40NmMtLjA2LS4wMy0uMTMtLjAyLS4yMS4wMi0uMzMuMTQtLjc0LjI1LTEuMi4zMmEuMTIuMTIgMCAwIDAtLjExLjA5bC0uMjIuNjNjLS4wMy4wNy0uMDguMS0uMTUuMDhhLjY0LjY0IDAgMCAwLS4yOCAwYy0uMDQuMDEtLjA3IDAtLjA4LS4wNGwtLjI0LS42OGEuMTEuMTEgMCAwIDAtLjEtLjA5IDQuMjYgNC4yNiAwIDAgMS0xLjIxLS4zMWMtLjEtLjA0LS4xNi0uMDUtLjIxLS4wM2EyLjA3IDIuMDcgMCAwIDAtLjYuNDljLS4wMy4wMi0uMDYuMDMtLjEgMGwtLjI3LS4xN2MtLjA2LS4wNC0uMDgtLjEtLjA1LS4xNy4wNy0uMjEuMTItLjQuMTItLjU1LjAxLS4xLS4wMy0uMTktLjEtLjI0YTIuMyAyLjMgMCAwIDEtLjM2LS4yOGMtLjIyLS4yMi0uNC0uNDItLjU1LS42YS4yMy4yMyAwIDAgMC0uMjMtLjA4bC0uNjMuMTNjLS4wMyAwLS4wNSAwLS4wNi0uMDNsLS4xNi0uMjZjLS4wNC0uMDYtLjA0LS4xMiAwLS4xNmwuMzctLjQ0Yy4xLS4xLjEtLjIzLjAzLS40bC0uMTktLjVjMC0uMDQtLjA1LS4xNy4wOS0uMTdoLjIyYy4wNyAwIC4xLjA3LjEyLjEzLjAzLjE1LjA2LjI2LjEuMzRsLjE0LjMzYy4wNS4xMy4xMy4yOS4yNy40OWwuMS4xN2E5LjgzIDkuODMgMCAwIDAgLjczLjgyYy4xOC4xNi4zNS4yOS41My40YTE2My4yIDE2My4yIDAgMCAxIC42MS4zNCA0LjczIDQuNzMgMCAwIDAgMy45Mi0uMWMuMy0uMTYuNi0uMzUuODktLjU4YTUuOSA1LjkgMCAwIDAgLjk0LTEuMTIgNC41NSA0LjU1IDAgMCAwIC41LTMuMzcgNC40NCA0LjQ0IDAgMCAwLTMuNi0zLjMgMy44MiAzLjgyIDAgMCAwLTEuNzguMDZsLS41NS4xNGMtLjQ0LjE0LS44My4zNS0xLjE4LjYyYTUuMyA1LjMgMCAwIDAtMS4xMiAxLjIxYy0uMS4xNi0uMi4zMy0uMjguNTMtLjEuMjMtLjE4LjUxLS4yNS43NSAwIDAgMCAuMDItLjAyLjAyaC0uNHYtLjAzYy4wNS0uMTkuMTMtLjQ3LjIzLS43M2EuMzMuMzMgMCAwIDAtLjA3LS4zNmwtLjM0LS4zOWMtLjA0LS4wNS0uMDQtLjEtLjAxLS4xNWwuMTMtLjI1LjA0LS4wMmMuMTEgMCAuMy4wMy41Ni4xLjA5LjAxLjE4LjAxLjI4IDAgLjAyIDAgLjA0IDAgLjA1LS4wMi4xOC0uMjQuMy0uNC4zNy0uNDYuMTgtLjE5LjM3LS4zNS41OC0uNS4wNi0uMDQuMDktLjEyLjA3LS4yMmE5LjUyIDkuNTIgMCAwIDEtLjEtLjY1YzAtLjAyLjAyLS4wNC4wNC0uMDZsLjI2LS4xNmMuMDMtLjAxLjA1LS4wMS4wNyAwYTEuNTEgMS41MSAwIDAgMSAuMjYuMmMuMTYuMTUuMjguMjUuMzkuMjcuMDQuMDEuMDkgMCAuMTYtLjAyLjMxLS4xNC42OS0uMjQgMS4xMi0uM2EuMzMuMzMgMCAwIDAgLjI3LS4xOGMuMDktLjE4LjE0LS4zNi4xNS0uNTQgMC0uMDMuMDEtLjA0LjAzLS4wNi4wNS0uMDMuMTMtLjA1LjI1LS4wNi4xIDAgLjE3LjAxLjI1LjAzLjAyIDAgLjAzLjAyLjA0LjA0bC4xNC41MmMuMDMuMTMuMS4yLjI1LjIzLjQ2LjEuODcuMjEgMS4yNS4zNC4wNy4wMy4xNiAwIC4yNy0uMS4wOS0uMDcuMTgtLjE2LjI5LS4yOC4wMS0uMDIuMDctLjA2LjE3LS4xMmEuMDQuMDQgMCAwIDEgLjA2IDBjLjA1LjA1LjEzLjA5LjIyLjEyLjAyIDAgLjA0LjAyLjA1LjA0LjA0LjA3LjA2LjE0LjA1LjIybC0uMS40N2MtLjAyLjEzLjAyLjI0LjEyLjMyLjMzLjI4LjYxLjU2Ljg0Ljg2LjAzLjAzLjA3LjA1LjEzLjA3aC4xNmwuNTgtLjEyYy4wNC0uMDEuMDcgMCAuMS4wNGwuMDIuMDNjLjA2LjEuMS4xNy4xMi4yMy4wMi4wOCAwIC4xNy0uMDcuMjVhNSA1IDAgMCAxLS4zMy4zNC4yLjIgMCAwIDAtLjA2LjJjLjA0LjE3LjA5LjM0LjE1LjVhNC45IDQuOSAwIDAgMSAuMTcuOC4yLjIgMCAwIDAgLjE1LjE3bC42My4yYy4wNC4wMi4wNi4wNC4wOC4wN3YuMWEuMzQuMzQgMCAwIDAgMCAuMjVjMCAuMDQgMCAuMDctLjA1LjA4LS4xMi4wMi0uMjQuMDYtLjM3LjExLS4wNi4wMy0uMTUuMDYtLjI4LjA4WiIgZmlsbD0iI0JDQkNCQyIvPjxwYXRoIGQ9Ik0xMi42NCA5YTMuNiAzLjYgMCAwIDEtMSAyLjUgMy42OCAzLjY4IDAgMCAxLTIuNDYgMS4xNiAzLjY4IDMuNjggMCAwIDEtMy43OS0yLjUxYy0uMDQtLjEyLS4wOC0uNDQuMTUtLjQ0aDEuOTJjLjA5IDAgLjIuMTMuMjUuMTkuMjYuMzMuNTcuNTIuOTQuNTcuNjYuMSAxLjE3LS4xMiAxLjU0LS42NS4xNi0uMjQuMjQtLjUuMjQtLjgyYTEuNDggMS40OCAwIDAgMC0xLjc4LTEuNDdjLS4zNy4wNS0uNjguMjQtLjk0LjU3YS40Ni40NiAwIDAgMS0uMS4xMWMtLjA0LjAyLS4wOS4wOC0uMTUuMDhINS41NGMtLjIzIDAtLjE5LS4zMi0uMTUtLjQ0LjMtLjg3Ljg1LTEuNTQgMS42NC0yLjAxYTMuNjggMy42OCAwIDAgMSAzLjUtLjE1IDMuNjggMy42OCAwIDAgMSAyLjEgMy4zWiIgZmlsbD0iIzk2OTY5NiIvPjxwYXRoIGQ9Ik0xMi4yNyA5YzAgLjM2LS4wNi43LS4xOCAxLjA1QTMuNDMgMy40MyAwIDAgMSAxMC4zNyAxMmMtLjI2LjEyLS41Ny4yMS0uOTEuMjdhMy4zMiAzLjMyIDAgMCAxLTMuNjYtMi4wN2MwLS4wMy4wMy0uMTMuMDYtLjEzaDEuNDdjLjA1IDAgLjEuMDguMTMuMTJsLjIuMmExLjg3IDEuODcgMCAwIDAgMi4xNC4yN2MuNDUtLjIzLjc2LS42Ljk0LTEuMTMuMDQtLjEzLjA2LS4zLjA2LS41MiAwLS4yMS0uMDItLjM4LS4wNi0uNWExLjg4IDEuODggMCAwIDAtMy4yNy0uNjhjLS4wMy4wMy0uMDguMTItLjE0LjEySDUuODdjLS4wNSAwLS4wNy0uMS0uMDYtLjE1YTMuMzIgMy4zMiAwIDAgMSAzLjY2LTIuMDUgMy4yOCAzLjI4IDAgMCAxIDEuNzEuODJjLjQ0LjQuNzQuODYuOTIgMS40LjExLjM1LjE3LjcuMTcgMS4wNVoiIGZpbGw9IiNCQ0JDQkMiLz48L3N2Zz4="}},"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":"besttrader.live/css/style.css","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:15.766Z","timestamp":1785126255766,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /css/style.css HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:15 GMT\r\ncontent-type: text/css\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: W/\"65211e70-678b\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":26507,"size_decoded":5937,"mime_type":"text/css","magic":"ASCII text, with CRLF line terminators","md5":"730af7f301f4889266d46bd0806b58b8","sha1":"fe05f5639cdf8f0f56040748c315bbcaf6c52a96","sha256":"4626e8b44c6a5f4883fc9aedff899bc75f4eea70e78ca82f5660a105eefd8d55","sha512":"9dc6453d1aef0bfcfc53cb9085cec059e0ba725a8a970a3fbdcd362ddeb2c4c749bd00ef1d787e6ffb57e30a0fe0790f351b78471096e18a73d9fd1cf79f435c","ssdeep":"384:6gBArjDmGIZ6ZT468388O3rRYBmiT8jSmlJfc4zK1mmdN:6gBuuGKkAs9bJfc4zBmdN","tlshash":"94c21399ea4111057137dff4bb735794eba940619b0303bebff430a4b286b598535ec8","first_seen":"2026-07-27T03:36:45.204482Z","last_seen":"2026-07-27T04:25:12.671472Z","times_seen":2,"resource_available":false,"data":"LypjcmVhdGluZyBjc3MgY3VzdG9tIGZvbnQgZm9yIHJhaXNvbm5lKi8NCkBmb250LWZhY2Ugew0KICBmb250LWZhbWlseTogInJhaXNvbm5lIjsNCiAgc3JjOiB1cmwoIi4uL3dlYmZvbnRzL3JhaXNvbm5lLWRlbWlib2xkLnR0ZiIpOw0KfQ0KQGZvbnQtZmFjZSB7DQogIGZvbnQtZmFtaWx5OiAiT3JiaXRyb24iOw0KICBzcmM6IHVybCgiLi4vd2ViZm9udHMvT3JiaXRyb24udHRmIik7DQp9DQpAZm9udC1mYWNlIHsNCiAgZm9udC1mYW1pbHk6ICJQcmVjaW91cyI7DQogIHNyYzogdXJsKCIuLi93ZWJmb250cy9QcmVjaW91cy50dGYiKTsNCn0NCkBpbXBvcnQgdXJsKGh0dHA6Ly9kYi5vbmxpbmV3ZWJmb250cy5jb20vYy8xNWE5MDc1ZGRmNGZmMTE1OGViMDNhYmJjODczYTNhND9mYW1pbHk9RnJhbmstTGlnaHQpOw0KDQppbWcgew0KICBtYXgtd2lkdGg6IDEwMCU7DQogIG1heC1oZWlnaHQ6IDEwMCU7DQp9DQoNCmJvZHkgew0KICBmb250LWZhbWlseTogRnJhbmstTGlnaHQ7DQogIGZvbnQtc2l6ZTogMC45ZW07DQogIHBhZGRpbmc6IDA7DQogIG1hcmdpbjogMDsNCiAgb3ZlcmZsb3cteDogaGlkZGVuOw0KICBiYWNrZ3JvdW5kOiAjMjIyOTQxOw0KICBjb2xvcjogI2ZmZjsNCn0NCmEgew0KICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDsNCiAgY29sb3I6ICNlZmVmZWY7DQogIHRyYW5zaXRpb246IDAuMnMgZWFzZS1pbi1vdXQ7DQp9DQphOmhvdmVyIHsNCiAgY29sb3I6ICM1MmFmZWU7DQp9DQoucC0yMCB7DQogIHBhZGRpbmc6IDIwcHg7DQp9DQoubS0yMCB7DQogIG1hcmdpbjogMjBweCAwOw0KfQ0KDQovKmNvbG9yKi8NCi5nb2xkIHsNCiAgY29sb3I6ICNlOWQxNmY7DQp9DQouYnRjd2RndCAuYnRjd2RndC1mb290ZXIgYS5sb2dvIHsNCiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50Ow0KfQ0KDQouY29sLWYtbmF2IHsNCiAgdHJhbnNpdGlvbjogMC41cyBlYXNlLWluLW91dDsNCiAgcG9zaXRpb246IGZpeGVkOw0KICB0b3A6IDA7DQogIHotaW5kZXg6IDEwOw0KfQ0KLm5hdi1iYWNrIHsNCiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjcpOw0KfQ0KDQovKlRyYWRlIHdpZGdlIHN0eWxpbmcgKi8NCi50cmFkaW5ndmlldy13aWRnZXQtY29weXJpZ2h0IHsNCiAgZGlzcGxheTogbm9uZTsNCn0NCg0KLypzdHlsaW5nIHRvIGRpc2FibGUgcGFkZGluZyBvbiB0aGUgY29udGFpbmVyLWZsdWlkKi8NCi5jb250YWluZXItZmx1aWQgew0KICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsNCiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50Ow0KfQ0KLyplbmQgKi8NCg0KLmNvbC1pY29uIHsNCiAgY29sb3I6ICM1MmFmZWU7DQogIGZvbnQtc2l6ZTogMWVtOw0KfQ0KDQovKnRoaXMgaXMgdGhlIHN0eWxpbmcgb2YgdGhlIG5hdmlnYXRpb24gb2YgdGhlIGRyb3AgZG93biovDQpAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHsNCiAgLmFuaW1hdGUgew0KICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4zczsNCiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC4zczsNCiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoOw0KICAgIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDsNCiAgfQ0KfQ0KDQpAa2V5ZnJhbWVzIHNsaWRlSW4gew0KICAwJSB7DQogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFyZW0pOw0KICAgIG9wYWNpdHk6IDA7DQogIH0NCiAgMTAwJSB7DQogICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDByZW0pOw0KICAgIG9wYWNpdHk6IDE7DQogIH0NCiAgMCUgew0KICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxcmVtKTsNCiAgICBvcGFjaXR5OiAwOw0KICB9DQp9DQoNCkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluIHsNCiAgMCUgew0KICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2Zvcm07DQogICAgLXdlYmtpdC1vcGFjaXR5OiAwOw0KICB9DQogIDEwMCUgew0KICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOw0KICAgIC13ZWJraXQtb3BhY2l0eTogMTsNCiAgfQ0KICAwJSB7DQogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMXJlbSk7DQogICAgLXdlYmtpdC1vcGFjaXR5OiAwOw0KICB9DQp9DQoNCi5zbGlkZUluIHsNCiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVJbjsNCiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW47DQp9DQoNCi8qIHN0eWxpbmcgb2YgdGhlIG5hdmlnYXRpb24gbWVudSAqLw0KI25hdkJhciB7DQogIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgei1pbmRleDogMTAwMDAwMDA7DQp9DQoubmF2YmFyLXRvZ2dsZXIgew0KICBkaXNwbGF5OiBub25lOw0KfQ0KLmZsb2F0LXJpZ2h0IHsNCiAgZmxvYXQ6IHJpZ2h0Ow0KfQ0KDQpuYXYgdWwgbGkgYSB7DQogIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7DQogIGZvbnQtd2VpZ2h0OiA2MDA7DQogIGZvbnQtZmFtaWx5OiByYWxld2F5Ow0KICBmb250LXNpemU6IDAuOGVtOw0KICB0ZXh0LWFsaWduOiBjZW50ZXI7DQp9DQpuYXYgdWwgbGkgYTpob3ZlciB7DQogIGNvbG9yOiAjNTJhZmVlICFpbXBvcnRhbnQ7DQp9DQoubmF2YmFyLXRvZ2dsZXIgew0KICBib3JkZXI6IG5vbmU7DQogIG91dGxpbmU6IG5vbmU7DQp9DQoNCi5kcm9wZG93bi1tZW51IHsNCiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDdweCAyMHB4IHJnYmEoODUsIDg1LCA4NSwgMC4xNik7IC8qIFNhZmFyaSAzLTQsIGlPUyA0LjAuMiAtIDQuMiwgQW5kcm9pZCAyLjMrICovDQogIC1tb3otYm94LXNoYWRvdzogMCA3cHggMjBweCByZ2JhKDg1LCA4NSwgODUsIDAuMTYpOyAvKiBGaXJlZm94IDMuNSAtIDMuNiAqLw0KICBib3gtc2hhZG93OiAwIDdweCAyMHB4IHJnYmEoODUsIDg1LCA4NSwgMC4xNik7IC8qIE9wZXJhIDEwLjUsIElFIDksIEZpcmVmb3ggNCssIENocm9tZSA2KywgaU9TIDUgKi8NCiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7DQp9DQouZHJvcGRvd24taXRlbTpob3ZlciB7DQogIGNvbG9yOiAjNTJhZmVlICFpbXBvcnRhbnQ7DQp9DQouZHJvcC1pY29uLWxlZnQgew0KICBkaXNwbGF5OiBub25lOw0KICB0cmFuc2l0aW9uOiAwLjJzIGVhc2UtaW4tb3V0Ow0KfQ0KDQovKi0tLS0tLS0tLS0tLS0tLS0tc3R5bGluZyBmb3IgdGhlIGJyYW5kLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KLmJyYW5kIHsNCiAgd2lkdGg6IDhlbTsNCiAgZmxvYXQ6IGxlZnQ7DQogIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgei1pbmRleDogMzsNCn0NCi8qICB0b3AgY29udGFjdCB1cyBudW1iZXIgPT09Ki8NCg0KLnRvcC1zaWdudXAsDQoudG9wLWxvZ2luIHsNCiAgcGFkZGluZzogMHB4IDI1cHg7DQogIGZvbnQtd2VpZ2h0OiA2MDA7DQogIGJvcmRlci1yYWRpdXM6IDVweDsNCiAgdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDsNCiAgZm9udC1zaXplOiAxNXB4Ow0KICBsaW5lLWhlaWdodDogMjsNCiAgbWFyZ2luOiAxMHB4IDFweDsNCn0NCi50b3Atc2lnbnVwOmhvdmVyIHsNCiAgYmFja2dyb3VuZDogIzAwMDsNCg0KICAvKmNvbG9yOiAjNTJhZmVlOyovDQp9DQoudG9wLWxvZ2luOmhvdmVyIHsNCiAgYm9yZGVyLWJvdHRvbTogc29saWQgMnB4ICM1MmFmZWU7DQogIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDsNCiAgY29sb3I6ICNmZmY7DQp9DQoudG9wLXNpZ251cCB7DQogIGNvbG9yOiAjZmZmOw0KICBiYWNrZ3JvdW5kOiAjNTJhZmVlOw0KfQ0KLnRvcC1sb2dpbiB7DQogIGNvbG9yOiAjZmZmOw0KfQ0KLnRvcC1jb250YWN0LXdyYXAgew0KICBwYWRkaW5nOiAxMHB4Ow0KfQ0KLyotLS0tLS0tLS0tLXRoaXMgc3R5bGluZyBpcyBmb3IgdGhlIHNlbGVjdCBsYW5ndWFnZSAqLw0KLmN1c3RvbS1zZWxlY3Qgew0KICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOSk7DQogIGNvbG9yOiAjNTJhZmVlOw0KICBib3JkZXItcmFkaXVzOiA1cHg7DQogIG1hcmdpbjogMTFweDsNCiAgZmxvYXQ6IHJpZ2h0Ow0KICBib3JkZXI6IDFweCBzb2xpZCAjNTJhZmVlOw0KICBwYWRkaW5nOiAwIDIwcHg7DQp9DQouY3VzdG9tLXNlbGVjdC1tIHsNCiAgZGlzcGxheTogbm9uZTsNCn0NCg0KLypzdHlsaW5nIGZvciB0aGUgc2xpZGVyICovDQoNCi5zaW5nbGUtaXRlbSB7DQogIGNvbG9yOiAjZmZmOw0KfQ0KLnNsaWRlci1saSBsaSB7DQogIGxpc3Qtc3R5bGU6IG5vbmU7DQp9DQoNCi5zbGlkZXItaW1nMSwNCi5zbGlkZXItaW1nMiwNCi5zbGlkZXItaW1nMyB7DQogIG92ZXJmbG93OiBoaWRkZW47DQogIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOw0KICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOw0KICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogY292ZXI7DQogIC1tb3otYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsNCiAgLW8tYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsNCiAgcGFkZGluZzogOGVtIDZlbTsNCiAgaGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50Ow0KfQ0KDQouc2xpZGVyLWltZzEgew0KICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoIi4uL2ltYWdlcy9zbGlkZXIvc2xpZGVyMS5qcGciKTsNCn0NCi5zbGlkZXItaW1nMiB7DQogIGJhY2tncm91bmQtaW1hZ2U6IHVybCgiLi4vaW1hZ2VzL3NsaWRlci9zbGlkZXIyLmpwZyIpOw0KfQ0KLnNsaWRlci1pbWczIHsNCiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCIuLi9pbWFnZXMvc2xpZGVyL3NsaWRlcjMuanBnIik7DQp9DQoNCi5zbGlkZS1oMSB7DQogIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgZm9udC1zaXplOiA0MHB4Ow0KICBwYWRkaW5nOiAxZW0gMDsNCn0NCi5zbGlkZXItaW1nMSBwLA0KLnNsaWRlci1pbWcyIHAsDQouc2xpZGVyLWltZzMgcCB7DQogIGZvbnQtc2l6ZTogMS42ZW07DQp9DQovKnRoaXMgaXMgdGhlIGRlc2lnbiBvZiB0aGUgcGxheSBidXR0b24gKi8NCi5wbGF5LWJ0biB7DQogIGJvcmRlci1yYWRpdXM6IDIwMHB4Ow0KICBib3JkZXI6IDFweCAjZmZmIHNvbGlkOw0KICB3aWR0aDogNDBweDsNCiAgcGFkZGluZzogMTBweDsNCiAgYmFja2dyb3VuZDogbm9uZTsNCn0NCi5sZWFybi1idGMgew0KICB3aWR0aDogMzAwcHg7DQogIHBhZGRpbmc6IDEwcHg7DQogIGNvbG9yOiAjZmZmOw0KICBjdXJzb3I6IHBvaW50ZXI7DQogIGZsb2F0OiBsZWZ0Ow0KICBtYXJnaW46IDVweCAwOw0KICBmb250LXdlaWdodDogNjAwOw0KfQ0KLmxlYXJuLWJ0YyBzcGFuIHsNCiAgbGluZS1oZWlnaHQ6IDM7DQogIHBhZGRpbmc6IDAgNXB4Ow0KfQ0KLmNyZWF0ZS1hY2Mgew0KICB3aWR0aDogMjAwcHg7DQogIHBhZGRpbmc6IDEwcHg7DQogIGhlaWdodDogNTBweDsNCiAgY29sb3I6ICNmZmY7DQogIGJvcmRlci1yYWRpdXM6IDVweDsNCiAgY3Vyc29yOiBwb2ludGVyOw0KICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0Ow0KICBwb3NpdGlvbjogcmVsYXRpdmU7DQogIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDsNCiAgZmxvYXQ6IGxlZnQ7DQogIG1hcmdpbjogNXB4Ow0KICBmb250LXdlaWdodDogNjAwOw0KfQ0KLmMtc2lnbi11cCB7DQogIGJhY2tncm91bmQ6ICM1MmFmZWU7DQp9DQouYy1zaWduLXVwOmhvdmVyIHsNCiAgYmFja2dyb3VuZDogIzE3OGNkYjsNCn0NCg0KLmMtc2lnbi1pbiB7DQogIGJhY2tncm91bmQ6ICMzZTQyNTA7DQp9DQouYy1zaWduLWluOmhvdmVyIHsNCiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7DQogIGJvcmRlcjogMnB4IHNvbGlkICMzZTQyNTA7DQp9DQoNCi5jcmVhdGUtYWNjIHAgew0KICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogIGZvbnQtc2l6ZTogMS4xZW07DQogIHBhZGRpbmc6IDVweCAyMHB4Ow0KfQ0KDQouYWJ0LXVzLXR4dCB7DQogIHBhZGRpbmc6IDEwZW0gM2VtOw0KICBjb2xvcjogI2ZmZjsNCiAgdGV4dC1hbGlnbjogY2VudGVyOw0KfQ0KDQovKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1zdHlsaW5nIGZvciB0aGUgaG93IGl0IHdvcmtzIHNlY3Rpb24gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLw0KLmhvdy1pdC13b3JrIHsNCiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjE1KTsNCiAgcGFkZGluZzogNTBweDsNCiAgYm9yZGVyLXJhZGl1czogMjBweDsNCiAgbWFyZ2luOiAwIDAgMjBweCAwOw0KfQ0KDQovKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1zdHlsaW5nIGZvciB0aGUgaG93IGl0IHdvcmtzIHNlY3Rpb24gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLw0KDQovKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1zdHlsaW5nIGZvciBmZWF0dXJlIGNhcmRzID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLw0KLmNhcmQtbGF5ZXIgew0KICAvKiBkaXNwbGF5OiBmbGV4OyAqLw0KICAvKiBwb3NpdGlvbjogcmVsYXRpdmU7ICovDQogIC8qIGhlaWdodDogMzYwcHg7ICovDQogIHBhZGRpbmc6IDI1cHg7DQogIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjsNCn0NCg0KLmNhcmQtbGF5ZXIgaW1nIHsNCiAgYm9yZGVyLXJhZGl1czogNnB4Ow0KICBvdmVyZmxvdzogaGlkZGVuOw0KfQ0KLmZ0LWNhcmQtMSwNCi5mdC1jYXJkLTIsDQouZnQtY2FyZC0zIHsNCiAgLyogYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJSAhaW1wb3J0YW50OyAqLw0KICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0ICFpbXBvcnRhbnQ7DQogIGhlaWdodDogMzgxcHg7DQogIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsNCiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluOw0KICAvKiBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgIWltcG9ydGFudDsgKi8NCn0NCg0KLmZ0LWNhcmQtMSB7DQogIC8qIGxlZnQ6IDcwcHg7ICovDQogIC8qIHdpZHRoOiAzMyU7ICovDQogIC8qIHBvc2l0aW9uOiByZWxhdGl2ZTsgKi8NCiAgLyogYmFja2dyb3VuZDogdXJsKCIuLi9pbWFnZXMvZmVhdHVyZXMtMS5wbmciKTsgKi8NCn0NCi5mdC1jYXJkLTIgew0KICAvKiBwb3NpdGlvbjogcmVsYXRpdmU7ICovDQogIC8qIHdpZHRoOiAzMyU7ICovDQogIC8qIGxlZnQ6IDQwcHg7ICovDQogIC8qIGJhY2tncm91bmQ6IHVybCgiLi4vaW1hZ2VzL2ZlYXR1cmVzLTIucG5nIik7ICovDQp9DQouZnQtY2FyZC0zIHsNCiAgLyogYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgKi8NCiAgLyogd2lkdGg6IDMzJTsgKi8NCiAgLyogcG9zaXRpb246IHJlbGF0aXZlOyAqLw0KICAvKiBiYWNrZ3JvdW5kOiB1cmwoIi4uL2ltYWdlcy9mZWF0dXJlcy0zLnBuZyIpOyAqLw0KfQ0KDQovKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1zdHlsaW5nIGZvciBmZWF0dXJlIGNhcmRzID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLw0KDQovKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PXN0eWxpbmcgZm9yIHRoZSBmZWF0dXJlIHNlY3Rpb24gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLw0KDQouZmVhdHVyZXMtbGlzdCBsaSB7DQogIGxpc3Qtc3R5bGU6IG5vbmU7DQp9DQoNCi5mZWF0dXJlcy1saXN0IGxpOjpiZWZvcmUgew0KICBjb250ZW50OiAiIjsNCiAgd2lkdGg6IDdweDsNCiAgbWluLXdpZHRoOiA3cHg7DQogIGhlaWdodDogN3B4Ow0KICBwb3NpdGlvbjogcmVsYXRpdmU7DQogIHRvcDogN3B4Ow0KICBtYXJnaW46IDAgMTBweCAxcHg7DQogIGJvcmRlci1yYWRpdXM6IDEwMCU7DQogIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudCgjM2ZhY2ZmIDUwJSwgIzI1OWVmYSAxMDAlKTsNCiAgYm94LXNoYWRvdzogMCAzcHggMTBweCAwICMwMDQ4YjU7DQogIGRpc3BsYXk6IGJsb2NrOw0KICBmbG9hdDogbGVmdDsNCn0NCi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09c3R5bGluZyBmb3IgdGhlIGZlYXR1cmUgc2VjdGlvbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovDQoNCi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PXN0eWxpbmcgb2YgdGhlIGZpcnN0IGNvbnRlbnQ9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi8NCi50cmFkZS1pbnN0ciB7DQogIHBhZGRpbmc6IDIwcHg7DQogIGJveC1zaGFkb3c6IDAgN3B4IDIwcHggcmdiYSg4NSwgODUsIDg1LCAwLjE2KTsNCiAgbWFyZ2luOiAxMHB4IDA7DQp9DQoudGFibGUgdGggew0KICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDsNCn0NCi50YWJsZSB0ZCB7DQogIGJvcmRlcjogMXB4IHNvbGlkICNmZmYgIWltcG9ydGFudDsNCn0NCi5tLTQtbmVnIHsNCiAgbWFyZ2luOiAtNHB4IDEwcHggMCAwOw0KfQ0KLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ZW5kIHN0eWxpbmcgb2YgdGhlIGZpcnN0IGNvbnRlbnQ9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi8NCg0KLypzdHlsaW5nIGZvciByZWFkIG1vcmUgaW4gdGhlIG1vZGFsICovDQouZW5nLXJlYWQtbW9yZSB7DQogIHdpZHRoOiAxNTBweDsNCiAgYm9yZGVyOiAycHggc29saWQgIzUyYWZlZTsNCiAgcGFkZGluZzogMTBweDsNCiAgbWFyZ2luOiAtMWVtIGF1dG8gMCBhdXRvOw0KICB0cmFuc2l0aW9uOiAwLjVzIGVhc2UtaW4tb3V0Ow0KICBjdXJzb3I6IHBvaW50ZXI7DQp9DQouZW5nLXJlYWQtbW9yZTpob3ZlciB7DQogIGJhY2tncm91bmQ6ICM1MmFmZWU7DQogIGJvcmRlci1yYWRpdXM6IDMwcHg7DQogIGNvbG9yOiAjZmZmOw0KfQ0KLyp0aGlzIGlzIHRoZSBzdHlpbmcgb2YgdGhlIHNlY29uZCBjb250ZW50dCovDQoNCi5iaWcgew0KICB3aWR0aDogNzBweDsNCiAgbWFyZ2luOiAwIGF1dG87DQp9DQovKnRoaXMgaXMgdGhlIHN0YXJ0IG9mIHRoZSBhYnQgc2VjdGlvbiovDQoNCi5hYnQtYm9keSA+IGRpdiBoMiB7DQogIHBhZGRpbmc6IDQwcHg7DQogIGZvbnQtd2VpZ2h0OiA5MDA7DQogIGZvbnQtc2l6ZTogM2VtOw0KICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogIGNvbG9yOiAjZmZmOw0KfQ0KDQoucC1jaGFydCB7DQogIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTsNCiAgYm9yZGVyLXJhZGl1czogMjBweDsNCiAgcGFkZGluZzogMzVweCAyMHB4Ow0KICBoZWlnaHQ6IDUwdmg7DQp9DQoucC10ZXh0IHsNCiAgcGFkZGluZzogMzJweCAwOw0KICBmb250LXNpemU6IDEuMmVtOw0KICBsaW5lLWhlaWdodDogMjsNCn0NCg0KLmFidC1ib2R5IHsNCiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9wcm9maXQtYmcuanBnKTsNCiAgcGFkZGluZzogMjBweDsNCiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOw0KICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOw0KfQ0KLmFidC1ib2R5OjpiZWZvcmUgew0KICBwb3NpdGlvbjogYWJzb2x1dGU7DQogIGNvbnRlbnQ6ICIiOw0KICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb24vdmlwLWJsYWNrLTMzLnBuZyk7DQogIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7DQogIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjsNCiAgZGlzcGxheTogYmxvY2s7DQogIG1hcmdpbi10b3A6IC0yMHB4Ow0KICByaWdodDogMDsNCiAgd2lkdGg6IDEwMHB4Ow0KICBoZWlnaHQ6IDEwMHB4Ow0KfQ0KDQovKnBsYW4gc3R5bGluZyBzdGFydHMgaGVyZSAqLw0KDQouY29sLXBsYW4taW5uZXIgew0KICB3aWR0aDogMTAwJTsNCiAgYmFja2dyb3VuZDogIzAxMTYzZDsNCiAgYm9yZGVyLXJhZGl1czogMjBweDsNCiAgb3ZlcmZsb3c6IGhpZGRlbjsNCn0NCi5jb2wtcGxhbi1oZWFkIHsNCiAgdGV4dC1hbGlnbjogY2VudGVyOw0KICBjb2xvcjogI2ZmZjsNCiAgYmFja2dyb3VuZDogIzUyYWZlZTsNCiAgcGFkZGluZy1ib3R0b206IDEwcHg7DQogIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgbWFyZ2luLWJvdHRvbTogMzBweDsNCn0NCi5jb2wtcGxhbi1pbm5lciBwIHsNCiAgZm9udC1zaXplOiAxLjFlbTsNCiAgY29sb3I6ICNmZmY7DQogIHRleHQtYWxpZ246IGNlbnRlcjsNCn0NCi5wbGFuLXRleHQ6OmFmdGVyIHsNCiAgY29udGVudDogIiI7DQogIGJhY2tncm91bmQ6ICNmZmY7DQogIGRpc3BsYXk6IGJsb2NrOw0KICBoZWlnaHQ6IDFweDsNCiAgd2lkdGg6IDI1MHB4Ow0KICBtYXJnaW46IDVweCBhdXRvOw0KfQ0KLmJsYWNrIHsNCiAgY29sb3I6ICMwMDA7DQp9DQouYXNoLWJnIHsNCiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjE1KTsNCn0NCi5saXRlLWFzaCB7DQogIGNvbG9yOiAjYTliNWNiOw0KfQ0KLmxpdGUtYXNoLWJnIHsNCiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwKTsNCn0NCi5ncmVlbiB7DQogIGNvbG9yOiAjNTJhZmVlOw0KfQ0KLmdyZWVuLWJnIHsNCiAgYmFja2dyb3VuZDogIzIxYWU4YzsNCn0NCi5sdC1ibHVlIHsNCiAgY29sb3I6ICM1MmFmZWU7DQp9DQoub3JhbmdlIHsNCiAgY29sb3I6ICM1MmFmZWU7DQp9DQoubWluLXByaWNlIHsNCiAgY29sb3I6ICNmZmY7DQogIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgcGFkZGluZzogMnB4IDEwcHg7DQp9DQoNCi8qc3R5bGluZyBmb3IgcmVhZCBtb3JlIGluIHRoZSBtb2RhbCAqLw0KLnBsYW4tc2lnbnVwIHsNCiAgd2lkdGg6IDE4MHB4Ow0KICBib3JkZXI6IDJweCBzb2xpZCAjNTJhZmVlOw0KICBwYWRkaW5nOiAxMHB4Ow0KICBtYXJnaW46IDAgYXV0byAxMHB4IGF1dG87DQogIHRyYW5zaXRpb246IDAuNXMgZWFzZS1pbi1vdXQ7DQogIGN1cnNvcjogcG9pbnRlcjsNCiAgY29sb3I6ICNmZmY7DQogIGJvcmRlci1yYWRpdXM6IDVweDsNCn0NCi5wbGFuLXNpZ251cDpob3ZlciB7DQogIGJvcmRlci1yYWRpdXM6IDA7DQogIGNvbG9yOiAjNTJhZmVlOw0KfQ0KDQovKi5hcnJvdy1kb3duew0KCXdpZHRoOiAwOw0KCWhlaWdodDogMDsNCglib3JkZXItbGVmdDogMTQ1cHggc29saWQgdHJhbnNwYXJlbnQ7DQoJYm9yZGVyLXJpZ2h0OiAxNDVweCBzb2xpZCB0cmFuc3BhcmVudDsNCglib3JkZXItdG9wOiA0MHB4IHNvbGlkICNmMDA7DQoJbWFyZ2luLXRvcDogLTEuMWVtOw0KfSovDQoNCi8qIHRoaXMgaXMgZm9yIHRoZSBlbWJlZGRlZCB2aWRlbyAqLw0KDQpkaXYuZGVza3RvcC13cmFwcGVyIHsNCiAgcG9zaXRpb246IHJlbGF0aXZlOw0KICBwYWRkaW5nLXRvcDogMjVweDsNCiAgcGFkZGluZy1ib3R0b206IDY3LjUlOw0KICBoZWlnaHQ6IDA7DQp9DQpkaXYuZGVza3RvcC13cmFwcGVyIGlmcmFtZSB7DQogIGJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvZGVza3RvcC5wbmcpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0Ow0KICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47DQogIHBhZGRpbmc6IDMuNCUgMTAuOCUgMTguNiU7IC8qIDExLjklIDE1LjUlIDE0LjglICovDQogIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgdG9wOiAwOw0KICBsZWZ0OiAwOw0KICB3aWR0aDogMTAwJTsNCiAgaGVpZ2h0OiAxMDAlOw0KfQ0KDQovKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PXN0eWxpbmcgZm9yIGJlc3QgT1BUSU9OPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovDQouYmVzdC1vcHRpb24gew0KICBoZWlnaHQ6IGF1dG87DQogIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvYi1vcHQuanBnKSBuby1yZXBlYXQ7DQogIGJhY2tncm91bmQtc2l6ZTogY292ZXI7DQogIGNvbG9yOiAjZmZmOw0KICBwYWRkaW5nOiAwIDAgMmVtIDA7DQp9DQouY29sLXRlc3RpbW9ueSB7DQogIGhlaWdodDogYXV0bzsNCiAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9zbGlkZXIvc2xpZGVyMS5qcGcpIGNlbnRlciBmaXhlZCBuby1yZXBlYXQ7DQogIGJhY2tncm91bmQtc2l6ZTogY292ZXI7DQogIHBhZGRpbmc6IDMwcHg7DQp9DQoNCi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09VGhpcyBpcyB0aGUgc3R5bGluZyBvZiB0aGUgcGF5bWVudCBtZXRob2QqLw0KLmNvbC1wYXktbWV0aCB7DQogIHBhZGRpbmc6IDIwcHg7DQp9DQouY29sLXBheS1tZXRoIGg1IHsNCiAgcGFkZGluZzogMzBweCAwIDAgMTBweDsNCiAgZm9udC13ZWlnaHQ6IDgwMDsNCiAgY29sb3I6ICNmZmY7DQogIGZvbnQtc2l6ZTogMi41ZW07DQp9DQoNCi5jb2wtcGF5LW1ldGggcCB7DQogIGZvbnQtc2l6ZTogMS4xZW07DQogIHBhZGRpbmc6IDEwcHg7DQp9DQovKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PXN0eWxpbmcgZm9yIGNvdW50LXVwLmpzPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8NCi5jb2wtY291bnQtdXAgew0KICB3aWR0aDogMTBlbTsNCiAgaGVpZ2h0OiAxMGVtOw0KICBib3JkZXI6IDJweCBzb2xpZCAjZmZmOw0KICBib3JkZXItcmFkaXVzOiA1MCU7DQogIG1hcmdpbjogNnB4IGF1dG87DQp9DQouY291bnQtdXAtaWNvbiB7DQogIGNvbG9yOiAjZmZmOw0KICBmb250LXNpemU6IDVlbTsNCiAgbWFyZ2luOiAwLjJlbSAwLjNlbTsNCn0NCi50LXUgew0KICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogIGZvbnQtc2l6ZTogMS4zZW07DQp9DQoudC1pIHsNCiAgbWFyZ2luOiAwLjJlbSAwLjVlbTsNCn0NCi8qIHRoaXMgaXMgZm9yIHRoZSBhY2NvdW50IGNvbXBhcmlzbXM9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovDQouYWJvdXQtbWFpbi10aXRsZSB7DQogIGNvbG9yOiAjZmZmOw0KICBsaW5lLWhlaWdodDogMTM7DQogIHRleHQtYWxpZ246IGNlbnRlcjsNCn0NCi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09c3R5bGluZyBmb3IgVFJBREUgT1BUSU9OPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovDQoudHJhZGUtb3B0aW9uIHsNCiAgYmFja2dyb3VuZDogI2NjY2NjYzsNCn0NCi50cmFkZS1vcHRpb24tMSwNCi50cmFkZS1vcHRpb24tMiB7DQogIGJvcmRlci1yYWRpdXM6IDElOw0KICBtYXJnaW46IDIwcHggYXV0bzsNCiAgY29sb3I6ICNmZmY7DQogIGZvbnQtc2l6ZTogMC44ZW07DQogIGhlaWdodDogNjB2aDsNCiAgb3ZlcmZsb3c6IGhpZGRlbjsNCn0NCi50cmFkZS1vcHRpb24tMSBoNCB7DQogIHBhZGRpbmc6IDIwcHg7DQp9DQoNCi50cmFkZS1vcHRpb24tMSB7DQogIGJhY2tncm91bmQ6ICM0ODYyNzE7DQp9DQoudHJhZGUtb3B0aW9uLTIgew0KICBiYWNrZ3JvdW5kOiAjNDg2MjcxOw0KfQ0KLnRyYWRlLW9wdGlvbi0xIGg1IHsNCiAgcGFkZGluZzogOHB4Ow0KfQ0KLnQtY29sb3ItMSB7DQogIGJhY2tncm91bmQ6ICMxZmIwNWM7DQp9DQouZ3JlZW4gew0KICBjb2xvcjogIzFmYjA1YzsNCn0NCg0KLmNvbnRlbnQgew0KICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7DQp9DQoNCi8qPT09PT09PT09PT09PVNMSUNLPT09PT09PT09PT09Ki8NCi5jb2wtdGVzdGltb255LWJnIHsNCiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHJnYmEoNCwgMzAsIDU1LCAwLjcpLCByZ2JhKDQsIDMwLCA1NSwgMC43KSksDQogICAgdXJsKC4uL2ltYWdlcy9zbGlkZXIvc2xpZGVyMy5qcGcpOw0KICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOw0KICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7DQogIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7DQogIHBhZGRpbmc6IDIwcHg7DQogIGNvbG9yOiAjZmZmOw0KfQ0KLmNvbC10ZXN0LWNhcmQgew0KICBwYWRkaW5nOiAzMHB4Ow0KICBtYXJnaW46IDAgYXV0bzsNCn0NCi5jb2wtdGVzdC1iZyB7DQogIHdpZHRoOiAzMCU7DQogIG1hcmdpbjogMjBweDsNCiAgcGFkZGluZzogMjBweDsNCiAgYm9yZGVyLXJhZGl1czogMTBweDsNCiAgY29sb3I6ICNhOWI1Y2I7DQogIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xNSk7DQogIG1pbi1oZWlnaHQ6IDE5MHB4ICFpbXBvcnRhbnQ7DQp9DQoNCi5tdW0gew0KICBtYXJnaW46IDAgMTVweDsNCn0NCi5jb2wtdGVzdC1iZyBoNSB7DQogIGZvbnQtZmFtaWx5OiBwcmVjaW91czsNCn0NCi8qdGhpcyBpcyB0byBjaGFuZ2UgdGhlIGNvbG9yIG9mIHRoZSBzbGljayBkb3RzICovDQouc2xpY2stZG90cyBsaSBidXR0b246YmVmb3JlIHsNCiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDsNCn0NCg0KLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Zm9vdGVyPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovDQoNCmZvb3RlciB7DQogIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xNSk7DQogIGJhY2tncm91bmQtc2l6ZTogY292ZXI7DQogIHBhZGRpbmc6IDEwcHg7DQogIGZvbnQtc2l6ZTogMS4yZW07DQogIGNvbG9yOiAjYTliNWNiOw0KfQ0KLmZvb3Rlci1saXN0IHsNCiAgcGFkZGluZzogMCA4MHB4Ow0KfQ0KDQouZm9vdGVyLWxvZ28gew0KICB3aWR0aDogMTUwcHg7DQp9DQpmb290ZXIgaHIgew0KICBiYWNrZ3JvdW5kOiAjM2MzYzNjOw0KfQ0KLmZvb3Rlci1saW5rIGEgew0KICBmb250LXNpemU6IDAuN2VtOw0KICBwYWRkaW5nOiAxMHB4Ow0KICB0ZXh0LWFsaWduOiBjZW50ZXI7DQp9DQouZm9vdGVyLWxpbmsgc3BhbiB7DQogIGZvbnQtc2l6ZTogMC43ZW07DQp9DQoubGFzdC13aWRnZXQgew0KICBwb3NpdGlvbjogc3RpY2t5Ow0KICB6LWluZGV4OiAxMDsNCiAgYm90dG9tOiAwOw0KfQ0KDQovKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PUNSWVBUTz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLw0KLnQtaDIgew0KICBmb250LXNpemU6IDRlbTsNCn0NCi5jb2wtY3J5cHRvIHsNCiAgcGFkZGluZzogNTBweDsNCn0NCi5jb2wtY3J5cHRvLWZvb3Qgew0KICBiYWNrZ3JvdW5kOiAjZDRkMmQyOw0KICBwYWRkaW5nOiAyMHB4Ow0KfQ0KDQouY3J5cHRvLWxpc3QgbGkgew0KICBsaXN0LXN0eWxlOiBub25lOw0KICBwYWRkaW5nOiAxMHB4Ow0KfQ0KLnBsYW4tc2lnbnVwLWNyeXB0byB7DQogIHdpZHRoOiAxNDBweDsNCiAgYm9yZGVyLXJhZGl1czogNDBweDsNCiAgYmFja2dyb3VuZDogIzUyYWZlZTsNCiAgcG9zaXRpb246IHJlbGF0aXZlOw0KICBwYWRkaW5nOiAxMnB4IDAgIWltcG9ydGFudDsNCiAgY29sb3I6ICNmZmY7DQogIG92ZXJmbG93OiBoaWRkZW47DQp9DQoNCi5wbGFuLXNpZ251cC1jcnlwdG86OmJlZm9yZSB7DQogIGNvbnRlbnQ6ICIiOw0KICBwb3NpdGlvbjogYWJzb2x1dGU7DQogIHRvcDogMDsNCiAgbGVmdDogLTEwMCU7DQogIHdpZHRoOiAxMDAlOw0KICBoZWlnaHQ6IDEwMCU7DQogIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgNCiAgICAxMjBkZWcsDQogICAgdHJhbnNwYXJlbnQsDQogICAgcmdiYSgyMjUsIDIyNSwgMjI1LCAwLjMpLA0KICAgIHRyYW5zcGFyZW50DQogICk7DQogIHRyYW5zaXRpb246IGFsbCA2NTBtczsNCn0NCi5wbGFuLXNpZ251cC1jcnlwdG86aG92ZXI6OmJlZm9yZSB7DQogIGxlZnQ6IDEwMCU7DQp9DQoudC1wIHsNCiAgZm9udC1zaXplOiAxLjFlbTsNCiAgbGluZS1oZWlnaHQ6IDIuMTsNCn0NCi5jcnlwdG8tcG5vIHsNCiAgZm9udC1zaXplOiAxLjFlbTsNCn0NCg0KLmNyeXB0by1jYXQgew0KICBwYWRkaW5nOiAzMHB4Ow0KfQ0KLmNyeXB0by1jYXQgPiBhID4gZGl2IHsNCiAgd2lkdGg6IDkwJTsNCiAgcGFkZGluZzogMTBweCAxNXB4Ow0KICBiYWNrZ3JvdW5kOiAjZWZlZmVmOw0KICBmb250LXNpemU6IDEuMWVtOw0KICBtYXJnaW46IDVweDsNCiAgY29sb3I6ICM0MDQwNDA7DQp9DQouY3J5cHRvLWNhdCA+IGEgPiBkaXY6aG92ZXIgew0KICBiYWNrZ3JvdW5kOiBpbmhlcml0Ow0KICBib3JkZXItbGVmdDogc29saWQgNHB4ICM1MmFmZWU7DQp9DQouY3VycmVudC1jcnlwdG8gew0KICB3aWR0aDogOTAlOw0KICBwYWRkaW5nOiA4cHggMTVweDsNCiAgYmFja2dyb3VuZDogIzUyYWZlZTsNCiAgZm9udC1zaXplOiAxLjFlbTsNCiAgbWFyZ2luOiA1cHg7DQogIGNvbG9yOiAjZmZmOw0KfQ0KLmNyeXB0by1mb3JtIHsNCiAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9iZW5lZml0cy5odG1sKTsNCiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsNCiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOw0KICBwYWRkaW5nOiAxMHB4Ow0KfQ0KLnBhZC01NSB7DQogIHBhZGRpbmc6IDU1cHg7DQp9DQovKi09PT09PT09PT09PT09PT09IHN0eWxpbmcgb2YgYWJvdXQgdXMgcGFnZSA9PT09PT09PT09PT09PT09PT09PT09PT09PT0qLw0KLmFidC1scCB7DQogIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvYWJvdXQvYmctYWJvdXQtaGVhZGVyLmpwZyk7DQogIGJhY2tncm91bmQtc2l6ZTogY292ZXI7DQogIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsNCiAgaGVpZ2h0OiA2MHZoOw0KfQ0KLmFidC1scCBoMSB7DQogIC8qIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7ICovDQogIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgcGFkZGluZzogNXB4Ow0KICBjb2xvcjogI2ZmZjsNCiAgbGluZS1oZWlnaHQ6IDEwOw0KfQ0KLmFidC1idWlsZGluZyB7DQogIHdpZHRoOiA0MDBweDsNCiAgYm9yZGVyLXJhZGl1czogMjBweDsNCiAgb3ZlcmZsb3c6IGhpZGRlbjsNCiAgbWFyZ2luLXRvcDogLTQwcHg7DQp9DQouYWJ0LXVzLXdyaXRlIHsNCiAgd2lkdGg6IDQwMHB4Ow0KfQ0KLmhlYWRpbmctYWJvdXQ6OmJlZm9yZSwNCi5vdXItdmFsdWU6OmJlZm9yZSB7DQogIGNvbnRlbnQ6ICIiOw0KDQogIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjsNCiAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47DQogIC1tb3otYmFja2dyb3VuZC1zaXplOiBjb250YWluOw0KICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0Ow0KICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlOw0KICB3aWR0aDogNTBweDsNCiAgaGVpZ2h0OiA1MHB4Ow0KICBmbG9hdDogbGVmdDsNCiAgcG9zaXRpb246IHJlbGF0aXZlOw0KICBtYXJnaW46IDAgMTBweDsNCn0NCi5hYnQtbnVtYmVyIHsNCiAgd2lkdGg6IDQwcHg7DQogIGZvbnQtc2l6ZTogMzJweDsNCiAgbWFyZ2luOiAwIDIwcHg7DQogIGZsb2F0OiBsZWZ0Ow0KICBsaW5lLWhlaWdodDogODBweDsNCn0NCi5hYnQtdXMtMiB7DQogIGxpbmUtaGVpZ2h0OiAxLjg1Ow0KICBsZXR0ZXItc3BhY2luZzogMC43cHg7DQp9DQouaGVhZGluZy1hYm91dDo6YmVmb3JlIHsNCiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCIuLi9pbWFnZXMvYWJvdXQvaWNvbnMvYWJvdXQuc3ZnIik7DQp9DQoub3VyLXZhbHVlOjpiZWZvcmUgew0KICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoIi4uL2ltYWdlcy9hYm91dC9pY29ucy92YWx1ZXMuc3ZnIik7DQp9DQoub3VyLXRlYW0tcDo6YWZ0ZXIgew0KICBjb250ZW50OiAiIjsNCiAgZGlzcGxheTogYmxvY2s7DQogIHdpZHRoOiA1MHB4Ow0KICBwYWRkaW5nOiAxLjVweDsNCiAgYmFja2dyb3VuZDogIzUyYWZlZTsNCiAgbWFyZ2luOiAyMHB4IGF1dG87DQp9DQouY2VydCB7DQogIHdpZHRoOiA1MHZ3Ow0KICBtYXJnaW46IDIwcHggYXV0bzsNCn0NCi5icmVhZGNydW1iIHsNCiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjE1KTsNCn0NCi5icmVhZGNydW1iLWl0ZW0gew0KICBjb2xvcjogI2E5YjVjYjsNCn0NCg0KLyo9PT09PT09PT09PT09PT09PT09PT09PXN0eWxpbmcgZm9yIHRoZSBGQVEgcGFnZT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLw0KLmNyb3NzLWJyb2RlciB7DQogIHdpZHRoOiAzMHB4Ow0KICBoZWlnaHQ6IDMwcHg7DQogIHBhZGRpbmc6IDIwcHg7DQogIGJvcmRlci1yYWRpdXM6IDEwMCU7DQogIGJvcmRlcjogIzUyYWZlZSBzb2xpZCAycHg7DQogIG92ZXJmbG93OiBoaWRkZW47DQogIGZsb2F0OiBsZWZ0Ow0KfQ0KLmNhcmQgew0KICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMTUpOw0KICBjb2xvcjogI2E5YjVjYjsNCn0NCi5jcm9zcyB7DQogIGJhY2tncm91bmQ6ICM1MmFmZWU7DQogIGhlaWdodDogMjBweDsNCiAgcG9zaXRpb246IHJlbGF0aXZlOw0KICB3aWR0aDogM3B4Ow0KICB0b3A6IC0xMHB4Ow0KfQ0KLmNyb3NzOjphZnRlciB7DQogIGNvbnRlbnQ6ICIiOw0KICBiYWNrZ3JvdW5kOiAjNTJhZmVlOw0KICBoZWlnaHQ6IDIuNXB4Ow0KICBsZWZ0OiAtOXB4Ow0KICBwb3NpdGlvbjogYWJzb2x1dGU7DQogIHRvcDogOHB4Ow0KICB3aWR0aDogMjBweDsNCn0NCg0KLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Y29udGFjdCB1cyA9PT09PT09PT09PT09PT09PT09PT09PT0qLw0KLmJnLWNvbnRhY3QtdXMsDQouYmctbWFya2V0IHsNCiAgaGVpZ2h0OiA0MHZoOw0KICBwb3NpdGlvbjogcmVsYXRpdmU7DQogIHotaW5kZXg6IDA7DQogIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsNCiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsNCiAgbWFyZ2luOiAwIDAgMTB2aCAwOw0KfQ0KLmJnLWNvbnRhY3QtdXMgew0KICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2JnLWNvbnRhY3QuanBnKTsNCn0NCi5iZy1tYXJrZXQgew0KICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3NsaWRlci9zbGlkZXIzLmpwZyk7DQp9DQouY29sLWNvbnRhY3Qtc2lkZSB7DQogIG1hcmdpbjogMjBweCAwIDAgMDsNCn0NCi5jb2wtY29udGFjdC1zaWRlLWkgew0KICBmb250LXNpemU6IDNlbTsNCiAgcGFkZGluZy10b3A6IDEwcHg7DQp9DQouY29sLWNvbnRhY3Qtc2lkZSBiIHsNCiAgcGFkZGluZy1sZWZ0OiA0NXB4Ow0KfQ0KLmNvbC1jb250YWN0LXNpZGUgcCB7DQogIHBhZGRpbmctbGVmdDogOTBweDsNCn0NCi5mbHlpbmctbWFuIHsNCiAgd2lkdGg6IDQwdmg7DQogIG1hcmdpbjogNTBweCAyMHB4Ow0KICBmbG9hdDogcmlnaHQ7DQp9DQoNCi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT1zdHlsaW5nIGZvciBzaWduLXVwIHNlY3Rpb24gaW4gdGhlIGFyZWEgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8NCg0KLnNpZ24tdXAtYmcgew0KICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQocmdiYSgwLCAwLCAwLCAwLjQpLCByZ2JhKDAsIDAsIDAsIDAuNCkpLA0KICAgIHVybCguLi9pbWFnZXMvdGVzdGltb255LmpwZyk7DQogIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsNCiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsNCiAgaGVpZ2h0OiBhdXRvOw0KfQ0KLm11bXUgew0KICBiYWNrZ3JvdW5kOiByZWQ7DQp9DQouYnRuLXN1Ym1pdCB7DQogIHdpZHRoOiAxMGVtOw0KICBiYWNrZ3JvdW5kOiAjNTJhZmVlOw0KICBib3JkZXI6IDAgc29saWQ7DQp9DQouY29sLWZvcm0gew0KICBtYXJnaW46IDJweCBhdXRvOw0KICBwYWRkaW5nOiAzMHB4Ow0KfQ0KLmZvcm0tbWFpbi1zZWMgew0KICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQocmdiYSgwLCAwLCAwLCAwLjcpLCByZ2JhKDAsIDAsIDAsIDAuNykpLA0KICAgIHVybCguLi9pbWFnZXMvOC5qcGcpOw0KICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7DQogIGJhY2tncm91bmQtc2l6ZTogY292ZXI7DQogIGJvcmRlci1yYWRpdXM6IDEwcHg7DQogIHBhZGRpbmc6IDNlbTsNCiAgYm94LXNoYWRvdzogMTBweCA1cHggNXB4IHJnYmEoMCwgMCwgMCwgMC44KTsNCn0NCi5zaWduLXVwLWNvbC10eHQgcCwNCmgzIHsNCiAgdGV4dC1hbGlnbjogbGVmdDsNCn0NCiNtZXNzYWdlIHsNCiAgd2lkdGg6IDEwMCU7DQogIG1hcmdpbjogMjBweCBhdXRvOw0KICBjb2xvcjogI2ZmZjsNCn0NCi5mb3JtLWFjdGlvbiB7DQogIHdpZHRoOiA4MCU7DQogIGhlaWdodDogMTB2aDsNCiAgbWFyZ2luOiAzcHggYXV0bzsNCiAgY29sb3I6ICNmZmY7DQp9DQouY2VuIHsNCiAgdGV4dC1hbGlnbjogY2VudGVyOw0KfQ0KLndoaXRlIHsNCiAgY29sb3I6ICNmZmY7DQp9DQoNCi5sYXN0LXNlY3Rpb24gew0KICBiYWNrZ3JvdW5kOiAjMDAwOw0KICBwYWRkaW5nOiAyZW07DQogIGNvbG9yOiAjZmZmOw0KfQ0KLnJhaXNlIHsNCiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsNCn0NCi5sc3Qtc2lnbnVwIHsNCiAgbWFyZ2luOiAwIGF1dG87DQogIHBhZGRpbmc6IDVweCAzcHggMCAwOw0KICB3aWR0aDogMTJlbTsNCiAgYm9yZGVyOiAxcHggc29saWQgIzUyYWZlZTsNCiAgY29sb3I6ICM1MmFmZWU7DQogIGJvcmRlci1yYWRpdXM6IDIwcHg7DQogIHRyYW5zaXRpb246IDAuNHMgZWFzZS1pbi1vdXQ7DQp9DQoubHN0LXNpZ251cCBoNiB7DQogIHRleHQtYWxpZ246IGNlbnRlcjsNCn0NCi5sc3Qtc2lnbnVwOmhvdmVyIHsNCiAgYmFja2dyb3VuZDogIzUyYWZlZTsNCiAgY29sb3I6ICNmZmY7DQp9DQouZGlzY2xpYW1lcnMgew0KICBmb250LXNpemU6IDAuN2VtOw0KICB0ZXh0LWFsaWduOiBjZW50ZXI7DQp9DQoNCi51cGxvYWQtaW1hZ2UtY29uIHsNCiAgYm9yZGVyLXJhZGl1czogMjBweDsNCiAgd2lkdGg6IDMwdmg7DQogIG1hcmdpbjogYXV0bzsNCn0NCi51cGxvYWQtaW1hZ2UtY29uIGltZyB7DQogIGJvcmRlci1yYWRpdXM6IDEwMCU7DQp9DQoNCi5kcm9wZG93bi1tZW51IHsNCiAgYmFja2dyb3VuZDogIzIxMjUyOSAhaW1wb3J0YW50IDsNCn0NCi5jbGVhci1maXggew0KICBjbGVhcjogYm90aDsNCiAgcGFkZGluZzogMnB4Ow0KfQ0KLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1zdHlsaW5nIG9mIHRoZSByZWdpc3RlciBwYWdlIG9mIHRoZSB3ZWJzaXRlID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovDQoucmVnaXN0ZXItYmcgew0KICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQocmdiYSgwLCAwLCAwLCAwLjQpLCByZ2JhKDAsIDAsIDAsIDAuNCkpLA0KICAgIHVybCguLi9pbWFnZXMvc2xpZGVyL3NsaWRlcjMuanBnKTsNCiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOw0KICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOw0KICBoZWlnaHQ6IGF1dG87DQogIHBhZGRpbmc6IDMwcHg7DQp9DQoucmVnLWZpcnN0LWNvbCB7DQogIHBhZGRpbmc6IDEzZW0gNWVtOw0KICBjb2xvcjogI2ZmZjsNCn0NCi5vcHRpb24tZHJvcCB7DQogIGhlaWdodDogMTAwdmggIWltcG9ydGFudDsNCiAgb3ZlcmZsb3cteTogc2Nyb2xsOw0KfQ0KLnJlZy1mb3JtIHsNCiAgcGFkZGluZzogMTBlbSA1ZW07DQogIGNvbG9yOiAjZmZmOw0KfQ0KLnJlZy1ib3ggew0KICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7DQogIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChyZ2JhKDAsIDAsIDAsIDAuNCksIHJnYmEoMCwgMCwgMCwgMC40KSksDQogICAgdXJsKC4uL2ltYWdlcy84LmpwZyk7DQogIGJvcmRlci1yYWRpdXM6IDIwcHg7DQogIHBhZGRpbmc6IDI1cHg7DQogIGJveC1zaGFkb3c6IDAgMTVweCAyNXB4IHJnYmEoMCwgMCwgMCwgMC41KTsNCiAgcG9zaXRpb246IHJlbGF0aXZlOw0KICB3aWR0aDogMTAwJTsNCn0NCi5pbnB1dC1ib3ggew0KICBsZXR0ZXItc3BhY2luZzogMXB4Ow0KICBib3JkZXI6IG5vbmU7DQogIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMWU5MGZmOw0KICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7DQogIHdpZHRoOiAxMDAlOw0KICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjc1cmVtICsgMnB4KTsNCiAgY29sb3I6ICNmZmY7DQogIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50Ow0KICBwYWRkaW5nOiAxMHB4IDA7DQogIHBvc2l0aW9uOiByZWxhdGl2ZTsNCn0NCi5pbnB1dC1ib3ggbGFiZWwgew0KICBwb3NpdGlvbjogYWJzb2x1dGU7DQp9DQoNCmxhYmVsIHsNCiAgbWFyZ2luLXRvcDogLTNlbTsNCiAgY29sb3I6ICNmZmY7DQogIGRpc3BsYXk6IGJsb2NrOw0KICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0Ow0KICBtYXJnaW4tdG9wOiAtMmVtOw0KICBwb2ludGVyLWV2ZW50czogbm9uZTsNCn0NCi5pbnB1dC1ib3g6Zm9jdXMgfiBsYWJlbCwNCi5pbnB1dC1ib3g6dmFsaWQgfiBsYWJlbCB7DQogIGZvbnQtc2l6ZTogMTJweDsNCiAgY29sb3I6ICM0Y2IxZmY7DQogIG1hcmdpbi10b3A6IC00ZW07DQp9DQoNCi5pbnB1dC13cmFwIHsNCiAgaGVpZ2h0OiA1MnB4Ow0KfQ0KDQovKiBUaGUgY29udGFpbmVyIG11c3QgYmUgcG9zaXRpb25lZCByZWxhdGl2ZTogKi8NCi5yZWctY3VzdG9tLXNlbGVjdCB7DQogIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgZm9udC1mYW1pbHk6IEFyaWFsOw0KfQ0KDQoucmVnLWN1c3RvbS1zZWxlY3Qgc2VsZWN0IHsNCiAgZGlzcGxheTogbm9uZTsgLypoaWRlIG9yaWdpbmFsIFNFTEVDVCBlbGVtZW50OiAqLw0KfQ0KDQouc2VsZWN0LXNlbGVjdGVkIHsNCiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsNCn0NCg0KLyogU3R5bGUgdGhlIGFycm93IGluc2lkZSB0aGUgc2VsZWN0IGVsZW1lbnQ6ICovDQouc2VsZWN0LXNlbGVjdGVkOmFmdGVyIHsNCiAgcG9zaXRpb246IGFic29sdXRlOw0KICBjb250ZW50OiAiIjsNCiAgdG9wOiAxNHB4Ow0KICByaWdodDogMTBweDsNCiAgd2lkdGg6IDA7DQogIGhlaWdodDogMDsNCiAgYm9yZGVyOiA2cHggc29saWQgdHJhbnNwYXJlbnQ7DQogIGJvcmRlci1jb2xvcjogIzFlOTBmZiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsNCn0NCg0KLyogUG9pbnQgdGhlIGFycm93IHVwd2FyZHMgd2hlbiB0aGUgc2VsZWN0IGJveCBpcyBvcGVuIChhY3RpdmUpOiAqLw0KLnNlbGVjdC1zZWxlY3RlZC5zZWxlY3QtYXJyb3ctYWN0aXZlOmFmdGVyIHsNCiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMWU5MGZmIHRyYW5zcGFyZW50Ow0KICB0b3A6IDdweDsNCn0NCg0KLyogc3R5bGUgdGhlIGl0ZW1zIChvcHRpb25zKSwgaW5jbHVkaW5nIHRoZSBzZWxlY3RlZCBpdGVtOiAqLw0KLnNlbGVjdC1pdGVtcyBkaXYsDQouc2VsZWN0LXNlbGVjdGVkIHsNCiAgY29sb3I6ICMxZTkwZmY7DQogIHBhZGRpbmc6IDhweCAxNnB4Ow0KICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsNCiAgYm9yZGVyLWNvbG9yOiAjMWU5MGZmOw0KICBjdXJzb3I6IHBvaW50ZXI7DQp9DQoNCi8qIFN0eWxlIGl0ZW1zIChvcHRpb25zKTogKi8NCi5zZWxlY3QtaXRlbXMgew0KICBwb3NpdGlvbjogYWJzb2x1dGU7DQogIGJhY2tncm91bmQtY29sb3I6ICNmZmY7DQogIHRvcDogMTAwJTsNCiAgbGVmdDogMDsNCiAgcmlnaHQ6IDA7DQogIHotaW5kZXg6IDk5Ow0KfQ0KDQovKiBIaWRlIHRoZSBpdGVtcyB3aGVuIHRoZSBzZWxlY3QgYm94IGlzIGNsb3NlZDogKi8NCi5zZWxlY3QtaGlkZSB7DQogIGRpc3BsYXk6IG5vbmU7DQp9DQoNCi5zZWxlY3QtaXRlbXMgZGl2OmhvdmVyLA0KLnNhbWUtYXMtc2VsZWN0ZWQgew0KICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7DQp9DQouc3NsIHsNCiAgbWFyZ2luLXRvcDogLTVweDsNCn0NCi5kaXNwbGF5LW5vbmUgew0KICBkaXNwbGF5OiBub25lOw0KfQ0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLS1zeXRsaW5nIGZvciB0aGUgdGFibGV0IHZpZXctLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQpAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NzZweCkgew0KICAudG9wLWNvbnRhY3Qgew0KICAgIGRpc3BsYXk6IG5vbmU7DQogIH0NCiAgLm1vYmlsZS1ub25lIHsNCiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7DQogIH0NCiAgLmJyYW5kIHsNCiAgICB3aWR0aDogOGVtOw0KICB9DQogIC5uYXZiYXItdG9nZ2xlciB7DQogICAgZGlzcGxheTogYmxvY2s7DQogICAgZmxvYXQ6IHJpZ2h0Ow0KICAgIG1hcmdpbjogOHB4Ow0KICB9DQogIC5kaXNwbGF5LW5vbmUtbW9iaWxlIHsNCiAgICBkaXNwbGF5OiBub25lOw0KICB9DQogIC5mdC1jYXJkLTIgew0KICAgIGxlZnQ6IDEwcHg7DQogICAgaGVpZ2h0OiAyNjBweDsNCiAgfQ0KDQogIC5mZWF0dXJlcy1saXN0IHsNCiAgICBwYWRkaW5nOiA1cHg7DQogIH0NCiAgLm5hdmJhci1leHBhbmQtbGcgew0KICAgIHdpZHRoOiAxMDAlOw0KICB9DQogIC50b3Atc2lnbnVwIHsNCiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50Ow0KICB9DQogIC5uYXYgew0KICAgIG1hcmdpbi10b3A6IC0xNXB4Ow0KICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTsNCiAgfQ0KICAudG9wLWNvbnRhY3Qtd3JhcCB7DQogICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpICFpbXBvcnRhbnQgOw0KICB9DQogIG5hdiB1bCBsaSBhIHsNCiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50Ow0KICAgIGZvbnQtd2VpZ2h0OiA2MDA7DQogICAgZm9udC1mYW1pbHk6IHJhbGV3YXk7DQogICAgZm9udC1zaXplOiAwLjhlbTsNCiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogIH0NCiAgLmRyb3Bkb3duLW1lbnUgew0KICAgIGJhY2tncm91bmQ6ICMzZTQyNTAgIWltcG9ydGFudCA7DQogIH0NCg0KICAuc2xpZGUtaDEgew0KICAgIHBhZGRpbmc6IDAuNWVtIDAgMCAwOw0KICAgIGZvbnQtc2l6ZTogMjVweDsNCiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7DQogIH0NCg0KICAuc2xpZGVyLWltZzEsDQogIC5zbGlkZXItaW1nMiwNCiAgLnNsaWRlci1pbWczIHsNCiAgICBwYWRkaW5nOiAxMGVtIDAuOWVtOw0KICB9DQogIC5ob3ctaXQtd29yayB7DQogICAgcGFkZGluZzogMTBweDsNCiAgfQ0KICAudG9wLWNvbnRhY3Qtd3JhcCB7DQogICAgcGFkZGluZzogMDsNCiAgfQ0KDQogIC5yYWlzZSB7DQogICAgdGV4dC1hbGlnbjogY2VudGVyOw0KICAgIGZvbnQtc2l6ZTogMS4xZW07DQogIH0NCg0KICAuZm9vdGVyLWxpbmsgew0KICAgIHBhZGRpbmc6IDIwcHggMDsNCiAgfQ0KICAuZm9vdGVyLWxpc3Qgew0KICAgIHBhZGRpbmc6IDA7DQogIH0NCiAgLnBsYW4td3JhcCB7DQogICAgcGFkZGluZzogMTBweCAxMHB4Ow0KICB9DQogIC5yZWctYm94IHsNCiAgICBwYWRkaW5nOiAxMHB4Ow0KICB9DQogIC5yZWctZm9ybSB7DQogICAgcGFkZGluZzogMGVtIDJlbTsNCiAgfQ0KDQogIC5yZWctZmlyc3QtY29sIHsNCiAgICBwYWRkaW5nOiAxMGVtIDJlbSA2ZW0gNGVtOw0KICB9DQogIC5mb290ZXItbG9nbyB7DQogICAgd2lkdGg6IDEzMnB4Ow0KICB9DQoNCiAgLyogPT09YWJvdXQ9PT0gKi8NCiAgLmFidC1idWlsZGluZywNCiAgLmFidC11cy13cml0ZSB7DQogICAgd2lkdGg6IDEwMCU7DQogIH0NCiAgLmFidC1udW1iZXIgew0KICAgIGZvbnQtc2l6ZTogMjBweDsNCiAgICB3aWR0aDogMTBweDsNCiAgICBtYXJnaW46IDAgMjNweCAwIDA7DQogIH0NCiAgLmNvbC1jcnlwdG8gew0KICAgIHBhZGRpbmc6IDFweDsNCiAgfQ0KICAuYmctbWFya2V0IHsNCiAgICBoZWlnaHQ6IDYwdmg7DQogIH0NCiAgLnQtaDIgew0KICAgIGZvbnQtc2l6ZTogM2VtOw0KICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50Ow0KICB9DQogIGgxIHsNCiAgICBmb250LXNpemU6IDJyZW07DQogIH0NCiAgLmZvcm0tbWFpbi1zZWMgew0KICAgIHBhZGRpbmc6IDNlbSA1cHg7DQogIH0NCn0NCg0KLyo9PT09PT09PT09PVJlc3BvbnNpdmVuZXNzPT09PT09PT09PT09PT09PT09PT09PT09Ki8NCi8qLy8gU21hbGwgZGV2aWNlcyAobGFuZHNjYXBlIHBob25lcywgNTc2cHggYW5kIHVwKSovDQpAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NzZweCkgew0KICBib2R5IHsNCiAgICBmb250LXNpemU6IDAuOWVtOw0KICB9DQoNCiAgLmFidC1pbWcgew0KICAgIGRpc3BsYXk6IG5vbmU7DQogIH0NCiAgLnBhZC01NSB7DQogICAgcGFkZGluZzogMDsNCiAgfQ0KICAudG9nZ2xlLWFidC1oIHsNCiAgICBtYXJnaW46IC0zOHB4IDUxcHg7DQogIH0NCiAgLmNyZWF0ZS1hY2Mgew0KICAgIG1hcmdpbjogMTBweCBhdXRvOw0KICAgIGZvbnQtc2l6ZTogMC45ZW07DQogICAgZmxvYXQ6IG5vbmU7DQogIH0NCg0KICAvKi0tLS0tLS0tLS0tLS1maXJzdCBjb2x1bW4gc3R5bGluZyAtLS0tLS0tLS0tLS0tLS0qLw0KICAuZmlyc3Qtcm93IGgxIHsNCiAgICBmb250LXNpemU6IDIwcHg7DQogIH0NCiAgLmZpcnN0LXJvdyBwIHsNCiAgICBmb250LXNpemU6IDAuOWVtOw0KICB9DQogIC5hYnQtYm9keTo6YmVmb3JlIHsNCiAgICBtYXJnaW4tdG9wOiAtMTVweDsNCiAgfQ0KDQogIC5hYnQtYm9keSA+IGRpdiBoMiB7DQogICAgZm9udC1zaXplOiAyMHB4Ow0KICAgIHBhZGRpbmc6IDEwcHg7DQogIH0NCiAgLmFidC10eHQgew0KICAgIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgfQ0KICAuYWJvdXQtbWFpbi10aXRsZSB7DQogICAgZm9udC1zaXplOiAyMnB4ICFpbXBvcnRhbnQ7DQogICAgbGluZS1oZWlnaHQ6IDEgIWltcG9ydGFudDsNCiAgICBwYWRkaW5nLXRvcDogMTY5cHggIWltcG9ydGFudDsNCiAgfQ0KICAuY2VydCB7DQogICAgd2lkdGg6IDEwMCU7DQogIH0NCg0KICAubmF2IHsNCiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7DQogIH0NCiAgLmNvbC1mLW5hdiB7DQogICAgcG9zaXRpb246IGFic29sdXRlOw0KICB9DQp9DQo="}},"time_used":101,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":101,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCLTC.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.555Z","timestamp":1785126258555,"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 /crypto/XTVCLTC.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 04:24:18 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: \"135fed0ba41e2cc6f0be38d91f6d4327\"\r\nlast-modified: Wed, 08 Sep 2021 09:03:49 GMT\r\ncdn-cachedat: 08/14/2025 09:10:19\r\nx-amz-id-2: gjnNM5jEWbkPCii2Bve+NeyujdRNWe9c7fB4uU3m1ocs6cj2jFwAVFaMlE2c5Yyr3hhf/1yU5uY=\r\nx-amz-request-id: AWCRPX2J7QMTMA7R\r\nx-amz-meta-hash: 135fed0ba41e2cc6f0be38d91f6d4327\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: 7c62e01efb5886b9d9ace7bad3262fda\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":291,"size_decoded":1108,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with no line terminators","md5":"135fed0ba41e2cc6f0be38d91f6d4327","sha1":"4cf7a4ad00909e8b92e5c9a428f71721481a78b0","sha256":"fea85b7101beb79844d8b4396a6df981f4757c150cdf3f61bc59453dd2f440ba","sha512":"284ed145b37532800719a469597d5b3162e4e8b765aa207835ea7358c3806f0256cc891e7095dab891eba9d33f777aabbd166901bee0da450d26edd199c1234a","ssdeep":"","tlshash":"91d07d6d7224a40dc301c3d4b378a8c10151b0d9d29542c4b1c4351926019e73c20248","first_seen":"2023-05-02T00:43:59Z","last_seen":"2026-07-27T07:05:43.317477Z","times_seen":1665,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjMzQ1RDlEIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTYuMTg4IDEwLjMwNmwtLjgwNC4zMTUuMzg4LTEuNTU5LjgxLS4zMjZMNy43NTIgNGgyLjg4NmwtLjg1NSAzLjQ4Ny43OTMtLjMyLS4zODMgMS41NDEtLjc5OC4zMjZMOC45MTcgMTFoNC4zNDJsLS40OSAySDUuNTI2bC42NjMtMi42OTR6IiBmaWxsPSIjZmZmIi8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCSHIB.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.564Z","timestamp":1785126258564,"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 /crypto/XTVCSHIB.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 04:24:18 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: \"d5762462ec94ba725384ebcacb6e4094\"\r\nlast-modified: Mon, 25 Oct 2021 15:58:03 GMT\r\ncdn-cachedat: 08/14/2025 09:11:15\r\nx-amz-id-2: GNyy8k/iDvGFw0g7ccNnpXENga5xEHx5/S3bC9RPUVGPasWFNqMHiMK6ycnJCjtYdPBX27FNR98=\r\nx-amz-request-id: KHE1XY8Q7WQVSANM\r\nx-amz-meta-hash: d5762462ec94ba725384ebcacb6e4094\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: 29951544cd0c2396b12458b7c34087fb\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":2867,"size_decoded":2276,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (2867), with no line terminators","md5":"d5762462ec94ba725384ebcacb6e4094","sha1":"f3261e8a848b2f4ab0083eff905b0570c75385b8","sha256":"9ca66545c5e1a4b2cda90adcc06a385e4098469e14a41a4b46b11ff052efa741","sha512":"f033927aa0ef4ade041a5d0db1c3a181045eb0b89dedcdd6fcf54551ff7410a599620fa18ccb71eea5a3596211e4e00d28a84dd4d632f6640f7c2b466b160808","ssdeep":"","tlshash":"875164c95370c3d49a8dc9aedf9dddd0541fb0e9b0ae81c816de4608e88faedfa04850","first_seen":"2024-07-06T12:38:17Z","last_seen":"2026-07-27T07:05:43.316321Z","times_seen":1573,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjRkMxRTFGIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTQuNjkyIDEwLjUzMWMwLS45MjUuNDU0LTIuMDI1LjY4MS0yLjQ2LS4zNDctMS4wOTctLjkxLTMuMzk1LS4zOS0zLjguNTItLjQwNyAxLjc3Ny45NDIgMi4zNCAxLjY2OC4yMy0uMTIzLjg4Mi0uMzY4IDEuNjUxLS4zNjhzMS40OTIuMjQ1IDEuNzU4LjM2OGMxLjUxNC0xLjcwNyAyLjE0OC0xLjgyNCAyLjI3NS0xLjY2OS41MzUuNjgxLS4wMjMgMi44MTgtLjM2OCAzLjgwMi4yMjMuMzYuNjY5IDEuMzU3LjY2OSAyLjQ2IDAgMS4zNzctMS45NjcgMy4zNTEtNC4zNDIgMy4zNTEtMi4zNzYgMC00LjI3NC0yLjE5Ni00LjI3NC0zLjM1MnoiIGZpbGw9IiNFQjlBMkUiLz48cGF0aCBkPSJNNy40MzcgOC40NTRjLS4yNzIuMDUtLjUyMy4wNTQtLjY5LjA0NWEuMTc1LjE3NSAwIDAxLS4xNy0uMTZjLS4wMjEtLjI4My4wODUtLjY2MS40MDQtLjY0Ni4zODIuMDE4LjU1LjMwMy42MDguNTM4LjAyNi4xMDUtLjA0OC4yMDMtLjE1Mi4yMjN6TTEwLjU3NCA4LjQ1NGMuMjcyLjA1LjUyMy4wNTQuNjkuMDQ1YS4xNzUuMTc1IDAgMDAuMTctLjE2Yy4wMjItLjI4My0uMDg1LS42NjEtLjQwNC0uNjQ2LS4zODIuMDE4LS41NS4zMDMtLjYwOC41MzgtLjAyNi4xMDUuMDQ3LjIwMy4xNTIuMjIzeiIgZmlsbD0iI0ZFRkZGNyIvPjxwYXRoIGQ9Ik04LjczMyAxMy44MjdjLTMuMjY4LS41MDItNC4wNTYtMi40MS00LjA0MS0zLjMwMiAxLjY4OS0uMTI2IDIuMjY4LjUzMyAyLjM0Ni44NzcuMDQ1LS41MjUuNDg1LTEuNTc1IDEuODgyLTEuNTc1IDEuMzk3IDAgMS44MzcgMS4wNSAxLjg4MiAxLjU3NWEyLjMwNyAyLjMwNyAwIDAxMi41NjItLjc2NWMtLjggMi42NzctMy40MiAzLjI0Mi00LjYzIDMuMTl6IiBmaWxsPSIjRUFFQUU4Ii8+PHBhdGggZD0iTTYuNTAyIDguODM4Yy0uMTY3LS4wNjYtLjE3LjA4OS0uMTUuMTc0di4xMzFhLjU4LjU4IDAgMDAuMzcuNTRjLjUwNy4xOTMgMS4zNjMuNDU4IDEuMjcuMTgtLjEyNC0uMzY3LTEuMjgxLS45NDItMS40OS0xLjAyNXpNMTEuNDYzIDguODM4Yy4xNjctLjA2Ni4xNy4wODkuMTUuMTc0di4xMzFhLjU4MS41ODEgMCAwMS0uMzcuNTRjLS41MDcuMTkzLTEuMzYzLjQ1OC0xLjI3LjE4LjEyNC0uMzY3IDEuMjgtLjk0MiAxLjQ5LTEuMDI1eiIgZmlsbD0iIzAwMCIvPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNy4zMjUgNS43M2E5IDkgMCAwMC0xLjE2Ny0xLjIxNWMtLjIzMy0uMTkzLS40NzEtLjM1Ny0uNjktLjQ0NC0uMjE3LS4wODctLjQ0Ni0uMTExLS42MjYuMDI4YS41OTMuNTkzIDAgMDAtLjE4OS4yOTJjLS4wMzguMTE4LS4wNi4yNTgtLjA2Ny40MS0uMDE2LjMwNC4wMTkuNjc2LjA4IDEuMDY0LjExOS43NTUuMzQzIDEuNTkuNTE5IDIuMTQ5LS4yNDEuNDctLjY4NSAxLjU1OS0uNjg1IDIuNDkgMCAuMzIuMTMyLjcuMzU2IDEuMDguMjI2LjM4My41NTEuNzc4Ljk1MiAxLjEzNS44LjcxMiAxLjkxNCAxLjI4MSAzLjE1OCAxLjI4MSAxLjI0IDAgMi4zNy0uNTEgMy4xODktMS4xOTUuODE1LS42ODIgMS4zNDUtMS41NTYgMS4zNDUtMi4zMDEgMC0xLjA5My0uNDI3LTIuMDgyLS42Ny0yLjQ5My4xNzYtLjUwMi4zOTYtMS4yNjguNTExLTEuOTk5LjA2LS4zNzkuMDkyLS43NTIuMDc0LTEuMDc4LS4wMTktLjMyMi0uMDg3LS42MTYtLjI0Ni0uODE2bC0uMDAyLS4wMDJjLS4wNy0uMDgzLS4xODQtLjEwMy0uMzA0LS4wODUtLjEyMy4wMi0uMjc4LjA4MS0uNDcuMTk4LS4zNzUuMjI4LS45MTMuNjgtMS42NiAxLjUwNmE0Ljk4NCA0Ljk4NCAwIDAwLTEuNzU5LS4zNDhjLS43MjUgMC0xLjM1MS4yMDYtMS42NDkuMzQyem0tMS45NC0xLjQ0M2MtLjE5LS4wNzYtLjMyLS4wNjgtLjQwNi0uMDAzYS4zNjYuMzY2IDAgMDAtLjExLjE4MWMtLjAzLjA5Mi0uMDQ5LjIwOS0uMDU2LjM0OS0uMDE0LjI4LjAxNy42MzMuMDc3IDEuMDE0LjEyLjc2LjM1IDEuNjEuNTI2IDIuMTZsLjAxNS4wNDgtLjAyMy4wNDRjLS4yMjguNDMyLS42OCAxLjUyLS42OCAyLjQyNCAwIC4yNjIuMTEuNTk4LjMyMy45Ni4yMTIuMzYuNTIyLjczNy45MDYgMS4wOC43Ny42ODUgMS44MzMgMS4yMjMgMy4wMDkgMS4yMjMgMS4xNzkgMCAyLjI2LS40ODUgMy4wNDUtMS4xNDIuNzktLjY2MiAxLjI2MS0xLjQ3NyAxLjI2MS0yLjEyMSAwLTEuMDgzLS40NDQtMi4wNjctLjY2My0yLjQxN2wtLjAzLS4wNDguMDItLjA1NGMuMTc0LS40OTEuNDAxLTEuMjcuNTE4LTIuMDEuMDU4LS4zNy4wODgtLjcyNS4wNy0xLjAyOC0uMDE3LS4zMDQtLjA4LS41MzYtLjE5My0uNjgtLjAwMy0uMDAyLS4wMjUtLjAxNy0uMDk2LS4wMDYtLjA4My4wMTMtLjIxLjA2LS4zODguMTY4LS4zNTcuMjE2LS44OTUuNjY2LTEuNjYzIDEuNTIzbC0uMDU1LjA2Mi0uMDc1LS4wMzRhNC43IDQuNyAwIDAwLTEuNzQzLS4zNmMtLjc2MyAwLTEuNDA5LjI0MS0xLjYyOC4zNTdsLS4wODMuMDQ0LS4wNTgtLjA3NWE4Ljg2OSA4Ljg2OSAwIDAwLTEuMTkxLTEuMjVjLS4yMjUtLjE4OC0uNDQyLS4zMzQtLjYzLS40MDl6IiBmaWxsPSIjMDAwIi8+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik05LjQyOCAxMC4zMzJoLS45MDZhLjIzLjIzIDAgMDAtLjIyOC4yMzN2LjQ1Yy4wMTQuMTUuMTUyLjQzNi41OS40NzV2LjQzSDh2LjMxMmgydi0uMzEyaC0uOTE1di0uNDNjLjQ0LS4wMzcuNTY1LS4zMjUuNTctLjQ3NXYtLjQ1YS4yMy4yMyAwIDAwLS4yMjctLjIzMnoiIGZpbGw9IiMwMDAiLz48L3N2Zz4="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCCYBERC.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.773Z","timestamp":1785126258773,"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 /crypto/XTVCCYBERC.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 04:24:18 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: \"57707695e9aed89c81554e750692387b\"\r\nlast-modified: Mon, 05 Aug 2024 13:40:32 GMT\r\ncdn-cachedat: 08/14/2025 09:16:28\r\nx-amz-id-2: bVOpXnMDzLs6WG2/tCy8bWRPecMU0TCMzDpSX6ixLEAnSUnCSN9TRc3KQaG9CzKPGJoV+aiy1OM=\r\nx-amz-request-id: VCBJXMKCW0SXC6WW\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 57707695e9aed89c81554e750692387b\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: 9588b7e0f7d08367be7412a1a544027f\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":330,"size_decoded":1109,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (330), with no line terminators","md5":"57707695e9aed89c81554e750692387b","sha1":"02fbc9d03f78861360776c450fc08f8e1a9f10a3","sha256":"22be898c7f49daf9c3864bf080e429dc78e2c8a69018380a9f8b617f3fe14533","sha512":"0a1c848c7664febb47ac4231c93fd5ba6135a646be2cef1c6d1eff6b7ab481a0a1e0bf61566a2c16b51117c660680931c732e4031baff217e1e3086e1542ecd0","ssdeep":"","tlshash":"7fe046e8b13cd918da0480fc001f31c220aa94cf638297a9b0506d36a0062eb3c80a34","first_seen":"2026-02-22T05:04:05.738322Z","last_seen":"2026-07-27T05:33:43.535225Z","times_seen":12,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48Y2lyY2xlIGN4PSI5IiBjeT0iOSIgcj0iNiIgZmlsbD0iI0I4RjdCMCIvPjxjaXJjbGUgY3g9IjkiIGN5PSI5IiByPSI1IiBmaWxsPSIjMEFEOTE2Ii8+PGNpcmNsZSBjeD0iOSIgY3k9IjkiIHI9IjMuNSIgZmlsbD0iIzBDOUIwMSIvPjxjaXJjbGUgY3g9IjkiIGN5PSI5IiByPSIyIiBmaWxsPSIjRjBGM0ZBIi8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCINIT.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.827Z","timestamp":1785126258827,"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 /crypto/XTVCINIT.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 04:24:18 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: \"3e70e35b26468b4b4ba0e30f6ac2b90e\"\r\nlast-modified: Mon, 05 May 2025 20:06:42 GMT\r\ncdn-cachedat: 08/14/2025 09:18:26\r\nx-amz-id-2: 9PeozQToC1/W+8FjoC227z7MQK/pU1wAL8ps8ydcWlc9VlSbSSXofqL1JXikm7LZLepHM+rUON8=\r\nx-amz-request-id: FAVPBHP3EHC7CGA4\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 3e70e35b26468b4b4ba0e30f6ac2b90e\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: 0729ca0a07147d899fc5e28d87e77b83\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":375,"size_decoded":1191,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (375), with no line terminators","md5":"3e70e35b26468b4b4ba0e30f6ac2b90e","sha1":"998a02de0056c7b482c9210409e74bf20a39ddee","sha256":"6f08e1e0c768320a7af54849cd318ba0d6cb9d8003a767de84bb1e7b041a6805","sha512":"df23637b69e3efa70023dacba8aa6626b8ecf7eb9743ecb92b1076686d7a1f064d1b5da6951b1f2cb37a343e03dd2cb6a487297b11c5609c14cf93df30028f5c","ssdeep":"","tlshash":"31e02b6f5318969cc717d2241aa4a5b0235fa099d58919d9b1591934704bb93981341d","first_seen":"2026-07-08T04:33:20.525286Z","last_seen":"2026-07-27T05:33:43.511752Z","times_seen":6,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMxODFCMUUiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNOSAxMi40OEEyLjMgMi4zIDAgMCAxIDcgMTR2LTIuMDJjLjU3LS4wOCAxLS41NyAxLTEuMTVWNy4xN2MwLS41OC0uNDMtMS4wNy0xLTEuMTZWNGMuOS4wNCAxLjY2LjY2IDIgMS41MkEyLjMgMi4zIDAgMCAxIDExIDR2Mi4wMWMtLjU3LjEtMSAuNTgtMSAxLjE2djMuNjZjMCAuNTguNDMgMS4wNyAxIDEuMTVWMTRhMi4zIDIuMyAwIDAgMS0yLTEuNTJaIiBmaWxsPSIjZmZmIi8+PC9zdmc+"}},"time_used":131,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":131,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"widget-v3.smartsuppcdn.com/assets/main-t6WxLABA.js","fqdn":"widget-v3.smartsuppcdn.com","domain":"smartsuppcdn.com","tld":"com"},"ip":{"addr":"185.76.9.11","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:20.267Z","timestamp":1785126260267,"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-t6WxLABA.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://besttrader.live\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 04:24:20 GMT\r\ncontent-type: application/javascript\r\naccess-control-allow-origin: *\r\ncache-control: max-age=31536000, public, immutable\r\netag: W/\"6a4cb803-3f99\"\r\nexpires: Wed, 07 Jul 2027 08:30:00 GMT\r\nlast-modified: Tue, 07 Jul 2026 08:25:39 GMT\r\nx-77-nzt: k4Dr9W7RwiW/It0ogaPtZhE/on3Wz9tJ9uz6FjcPByfcnx9LClZ3E/PNm0QACI3nfCZYV/U\r\nx-77-nzt-ray: e2f754201b235a1474dd666ab60b3a10\r\nx-77-cache: HIT\r\nx-77-age: 1713222\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":6837,"mime_type":"application/javascript","magic":"Java source, ASCII text, with very long lines (15873)","md5":"9253d4d9d6ea32e484f0be9a0320a7a7","sha1":"762fb8fdf15626507c1c26a66aa7fe399d39e803","sha256":"1fb0b8e426f707feea50785bc24016fe14a76fb763d5eca3bc9b1d265bf77fa2","sha512":"5a1592fc87a402c636315def22f3c60dd7eeda34701b08005a192ae060acbe7ed8ae8aa709cc1664c3d9489c641e1ada60e79c66f13073ab61e6ba5bd86f524d","ssdeep":"384:9rgi5RFMkSjJOE/0BW2rkZZ795P6zrnBOVmPCRkXQbpaIF2K:9EizlSjJOEiWYoR5P6nnBOVmycQbpaId","tlshash":"0272d7742700783f711f489e16ade546b232c29dd693892d9b6fec0976c5cc0a8b37b9","first_seen":"2026-07-07T11:50:17.711459Z","last_seen":"2026-07-27T07:05:43.365554Z","times_seen":1812,"resource_available":true,"data":"Y29uc3QgX192aXRlX19tYXBEZXBzPShpLG09X192aXRlX19tYXBEZXBzLGQ9KG0uZnx8KG0uZj1bd2luZG93LnBhcmVudC5zbWFydHN1cHAuZ2V0QXNzZXRVcmwoImFzc2V0cy9XaWRnZXRNZXNzZW5nZXItREQ3T3l5VDUuanMiKSx3aW5kb3cucGFyZW50LnNtYXJ0c3VwcC5nZXRBc3NldFVybCgiYXNzZXRzL3NoYXJlZC1DZ01DQWZvci5qcyIpLHdpbmRvdy5wYXJlbnQuc21hcnRzdXBwLmdldEFzc2V0VXJsKCJhc3NldHMvV2lkZ2V0TWVzc2VuZ2VySW5wdXQtQzBYSFB4ZXYuanMiKSx3aW5kb3cucGFyZW50LnNtYXJ0c3VwcC5nZXRBc3NldFVybCgiYXNzZXRzL1dpZGdldFBvcHVwLXFldXdrY0JuLmpzIildKSkpPT5pLm1hcChpPT5kW2ldKTsKaW1wb3J0e0EgYXMgZSxBaSBhcyB0LEFyIGFzIG4sQXQgYXMgcixCIGFzIGksQmkgYXMgYSxDIGFzIG8sQ2kgYXMgcyxEIGFzIGMsRGkgYXMgbCxFIGFzIHUsRWkgYXMgZCxHaSBhcyBmLEdyIGFzIHAsSGkgYXMgbSxIbiBhcyBoLEhyIGFzIGcsSSBhcyBfLElpIGFzIHYsSiBhcyB5LEppIGFzIGIsS2kgYXMgeCxLciBhcyBTLExpIGFzIEMsTSBhcyBlZSxOIGFzIHRlLE5pIGFzIHcsTyBhcyBuZSxPciBhcyByZSxQaSBhcyBpZSxQciBhcyBhZSxQdCBhcyBvZSxSIGFzIHNlLFMgYXMgY2UsU2kgYXMgbGUsVCBhcyB1ZSxUaSBhcyBULFVpIGFzIGRlLFVyIGFzIEUsVmkgYXMgRCxXaSBhcyBmZSxXbiBhcyBwZSxXdCBhcyBtZSxYaSBhcyBPLFhyIGFzIGssWHQgYXMgaGUsWSBhcyBnZSxZaSBhcyBBLFluIGFzIGosWXIgYXMgX2UsWmkgYXMgTSxaciBhcyB2ZSxfIGFzIHllLGEgYXMgYmUsYWEgYXMgTixiIGFzIHhlLGJpIGFzIFAsY2EgYXMgRixkIGFzIFNlLGRpIGFzIENlLGR0IGFzIHdlLGVhIGFzIFRlLGVpIGFzIEksZiBhcyBFZSxmaSBhcyBMLGggYXMgRGUsaGkgYXMgUixpIGFzIHosaWEgYXMgQixqIGFzIE9lLGppIGFzIFYsam4gYXMga2Usa2kgYXMgQWUsa3IgYXMgamUsbCBhcyBNZSxsYSBhcyBOZSxsaSBhcyBILG0gYXMgUGUsbWkgYXMgRmUsbiBhcyBJZSxuYSBhcyBMZSxvIGFzIFUsb2kgYXMgVyxvciBhcyBHLHBpIGFzIEsscSBhcyBSZSxxbiBhcyB6ZSxyIGFzIHEscyBhcyBCZSx0IGFzIFZlLHRhIGFzIEhlLHRpIGFzIEosdSBhcyBVZSx1aSBhcyBZLHcgYXMgWCx3aSBhcyBaLHggYXMgV2UseGkgYXMgR2UseSBhcyBLZSx5aSBhcyBxZX1mcm9tIi4vc2hhcmVkLUNnTUNBZm9yLmpzIjt2YXIgSmU9ZChgPGRpdj48IT48L2Rpdj5gKTtmdW5jdGlvbiBZZShlLHQpe04odCwhMCk7bGV0IG49eChudWxsKSxyPWAke1MoKS5TTUFSVFNVUFBfQVVUT0NSRUFURT09PSExP2cod2luZG93KS5pZDpgc21hcnRzdXBwYH0td2lkZ2V0LWNvbnRhaW5lcmA7aygoKT0+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+YWUoKCk9PmltcG9ydChgLi9XaWRnZXRNZXNzZW5nZXItREQ3T3l5VDUuanNgKSxfX3ZpdGVfX21hcERlcHMoWzAsMSwyXSksaW1wb3J0Lm1ldGEudXJsKSx2dD1lPT57dmFyIHQ9YnQoKSxuPWEodCkscj1hKG4pO3EoYShyKSx7c2l6ZTozMn0pLEYocik7dmFyIGk9bShyLDIpLG89YShpKTtxKG8se3NpemU6MzJ9KTt2YXIgcz1tKG8sMik7cShzLHtzaXplOjMyfSkscShtKHMsMikse3NpemU6MzJ9KSxGKGkpLEYobik7dmFyIGM9bShuLDIpLGw9YShjKTtxKGEobCkse3NpemU6NDR9KSxGKGwpO3ZhciB1PW0obCwyKSxkPWEodSk7eihkLHtoZWlnaHQ6MjAsd2lkdGg6MjcwfSkseihtKGQsMikse2hlaWdodDoyMCx3aWR0aDoxMjJ9KSxGKHUpLEYoYyk7dmFyIGY9bShjLDIpLHA9YShmKTtxKGEocCkse3NpemU6Mjh9KSxGKHApO3ZhciBoPW0ocCwyKTt6KGEoaCkse2hlaWdodDoxMTIsd2lkdGg6Mjk1LHJvdW5kZWRTdHlsZTpgcm91bmRlZC02YH0pLEYoaCksRihmKTt2YXIgZz1tKGYsMiksXz1hKGcpO3ooXyx7aGVpZ2h0OjMyLHdpZHRoOjI5NX0pO3ZhciB2PW0oXywyKTt6KHYse2hlaWdodDozMix3aWR0aDoxNDh9KSx6KG0odiwyKSx7aGVpZ2h0OjMyLHdpZHRoOjIyNH0pLEYoZyksRih0KSxaKGUsdCl9LHl0PShlLHQpPT57bGV0IG49KCk9PnQ/LigpLmVycm9yO3ZhciByPXh0KCksaT1tKGEociksMiksbz1hKGksITApO0YoaSksRihyKSx2KCgpPT5sZShvLG4oKSkpLFooZSxyKX0sYnQ9ZChgPGRpdiBjbGFzcz0iaC1mdWxsIHAtMiBiZy13aGl0ZSIgaWQ9IlRPRE8gdGVzdCI+PGRpdiBjbGFzcz0iZmxleCBqdXN0aWZ5LWJldHdlZW4iPjxkaXYgY2xhc3M9ImZsZXgiPjwhPjwvZGl2PiA8ZGl2IGNsYXNzPSJmbGV4IHNwYWNlLXgtMiI+PCE+IDwhPiA8IT48L2Rpdj48L2Rpdj4gPGRpdiBjbGFzcz0iZmxleCBtdC0yIj48ZGl2IGNsYXNzPSJmbGV4IG1sLTEgbXItMiI+PCE+PC9kaXY+IDxkaXYgY2xhc3M9ImZsZXgtYm90dG9tIHNwYWNlLXktMiI+PCE+IDwhPjwvZGl2PjwvZGl2PiA8ZGl2IGNsYXNzPSJmbGV4IGl0ZW1zLWJhc2VsaW5lIG10LTgiPjxkaXYgY2xhc3M9ImZsZXggbWwtMSBtci0yIj48IT48L2Rpdj4gPGRpdiBjbGFzcz0ic3BhY2UteS0yIj48IT48L2Rpdj48L2Rpdj4gPGRpdiBjbGFzcz0iZmxleCBmbGV4LWNvbCBpdGVtcy1lbmQgc3BhY2UteS01IG10LTggbXItMSI+PCE+IDwhPiA8IT48L2Rpdj48L2Rpdj5gKSx4dD1kKGA8ZGl2IGNsYXNzPSJoLWZ1bGwgcC00IGJnLXdoaXRlIHRleHQtcmVkLTUwMCI+PGRpdiBjbGFzcz0idGV4dC1sZyBmb250LWJvbGQiPkZhaWxlZCB0byBsb2FkIHdpZGdldDwvZGl2PiA8ZGl2IGNsYXNzPSJ0ZXh0LXhzIj4gPC9kaXY+PC9kaXY+YCk7ZnVuY3Rpb24gU3QoZSl7Z3QoZSx7Z2V0IGxvYWRlcigpe3JldHVybiBfdH0sZGVsYXk6MCxnZXQgZXJyb3IoKXtyZXR1cm4geXR9LGdldCBsb2FkaW5nKCl7cmV0dXJuIHZ0fX0pfXZhciBDdD1kKGA8ZGl2PjwhPjwvZGl2PmApO2Z1bmN0aW9uIHd0KGUsdCl7Tih0LCEwKTtsZXQgcj0oKT0+TShqZSxgJGlzRnVsbFNjcmVlbkVuYWJsZWRgLGwpLG89KCk9Pk0oUGUsYCRpc01lc3NlbmdlckZyYW1lRXhwYW5kZWRgLGwpLHM9KCk9Pk0obixgJGlzTW9iaWxlRGV2aWNlYCxsKSxjPSgpPT5NKGksYCRzaG91bGRSZW5kZXJNZXNzZW5nZXJGcmFtZWAsbCksW2wsZF09TygpLG09eCh2b2lkIDApLGc9YE1vYmlsZVdpZGdldE1lc3Nlbmdlck9wZW5gLF89KGUsdCk9PntpZighdyhtKSlyZXR1cm47bGV0e3dpZGdldEJsb2NraW5nT3B0aW9uczpufT1FLmdldE9wdGlvbnMoKSx7d2lkdGg6cixoZWlnaHQ6aX09dWUoZSx0KTt3KG0pLnN0eWxlLm1heEhlaWdodD1oKGkpP2k6dShpKSx3KG0pLnN0eWxlLndpZHRoPWgocik/cjp1KHIpLHcobSkuc3R5bGUuaGVpZ2h0PWV8fG4/LmhlYWRsZXNzTW9kZT9gMTAwJWA6YGNhbGMoMTAwJSAtIDQwcHgpYH07QygoKT0+e3cobSkmJl8ocigpLG8oKSl9KTtsZXQgeT14KCExKTtDKCgpPT57aWYocygpKXtpZihjKCkmJiF3KHkpKXtsZXQgZT1wKCkuY3JlYXRlRWxlbWVudChgc3R5bGVgKTtlLnRleHRDb250ZW50PWAqIHtvdmVyZmxvdzogaGlkZGVufWAsZS5jbGFzc05hbWU9ZyxwKCkuaGVhZC5hcHBlbmRDaGlsZChlKSxmKHksITApfWlmKCFjKCkmJncoeSkpe2xldCBlPXAoKS5oZWFkLmdldEVsZW1lbnRzQnlDbGFzc05hbWUoZyk7Zm9yKGxldCB0PTA7dDxlLmxlbmd0aDt0KyspcCgpLmhlYWQucmVtb3ZlQ2hpbGQoZVt0XSk7Zih5LCExKX19fSk7dmFyIGI9VCgpLFM9RChiKSxlZT1lPT57dmFyIHQ9Q3QoKTtIKHQsYGAse30se3RyYW5zaXRpb246YG1heC1oZWlnaHQgMjUwbXMgZWFzZS1pbi1vdXQsIHdpZHRoIDI1MG1zIGVhc2UtaW4tb3V0YCxvdmVyZmxvdzpgaGlkZGVuYH0pO3ZhciBuPWEodCk7e2xldCBlPUEoWCk7UShuLHtnZXQgY29tcG9uZW50KCl7cmV0dXJuIFN0fSxnZXQgaWQoKXtyZXR1cm4gRy53aWRnZXRNZXNzZW5nZXJGcmFtZX0sdGl0bGU6YFNtYXJ0c3VwcCB3aWRnZXQgbWVzc2VuZ2VyYCxnZXQgZnJhbWVTdHlsZSgpe3JldHVybiB3KGUpfX0pfUYodCksTCh0LChlLHQpPT54ZT8uKGUsdCksciksSih0LGU9PmYobSxlKSwoKT0+dyhtKSksdigoKT0+Vyh0LGBkYXRhLXRlc3RpZGAsRy53aWRnZXRNZXNzZW5nZXJGcmFtZSkpLEsoMSx0LCgpPT5VLCgpPT4oe3k6MjAsZHVyYXRpb246MjAwfSkpLEsoMix0LCgpPT5VLCgpPT4oe3k6MTAsZHVyYXRpb246MTUwfSkpLFooZSx0KX07UChTLGU9PntjKCkmJmUoZWUpfSksWihlLGIpLEIoKSxkKCl9dmFyIFR0PSgpPT5hZSgoKT0+aW1wb3J0KGAuL1dpZGdldFBvcHVwLXFldXdrY0JuLmpzYCksX192aXRlX19tYXBEZXBzKFszLDEsMl0pLGltcG9ydC5tZXRhLnVybCksRXQ9ZT0+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+e2koKSYmIWEoKSYmZSgpfSksZ2UoUygpKSxIZShuKSYmeShTKCkpLFllKHQse2NoaWxkcmVuOihlLHQpPT57dmFyIG49R3QoKSxyPUQobik7SXQocix7fSk7dmFyIGk9bShyLDIpO0F0KGkse30pO3ZhciBhPW0oaSwyKTtwdChhLHt9KTt2YXIgbz1tKGEsMik7d3Qobyx7fSksV3QobShvLDIpLHt9KSxaKGUsbil9LCQkc2xvdHM6e2RlZmF1bHQ6ITB9fSksQigpLHMoKX12YXIgcXQ9Zyh3aW5kb3cpO0UuaW5pdChxdC5vcHRpb25zKSxxdC5pbnN0YWxsQXBpKE1lKSxjLnNldFRoZW1lQ29sb3IocXQub3B0aW9ucyksUmUoKSxvZSgpLEdlKEt0LHt0YXJnZXQ6ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYGFwcGApfSk7ZXhwb3J0e010IGFzIG4sTHQgYXMgdH07Ci8vIyBzb3VyY2VNYXBwaW5nVVJMPW1haW4tdDZXeExBQkEuanMubWFw"}},"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":"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.153.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/Gc2en3nHxA4","date":"2026-07-27T04:24:16.899Z","timestamp":1785126256899,"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/Gc2en3nHxA4\r\nCookie: __Secure-YNID=20.YT=E5bZH_lP1NArLG48t6lRj9oeecW0xyEFe9u0ebWOb-g-_JffSEAYD96vgiz84ztWu4jL2Qub3iqTQ2XsVrmUelh8bL2Z51wNDSmop6dn1VykM86DS3aVeEn7QG8EY9Ml3wvuvcssa43xkqpG8yaId8urAjrXhYEfGQpbtjPMaEJoztxh0chYc1U5XnLeSKOglaDLkUb_VvEZq4QcOK6PKm2QcEJ7YaKMvNNnRY4v3GMNcZEy2NrRIXXQEQI5D8IEV_am0BM4s0b23dnIOVfMyNQVyW0u7xAK0Ni0sYaQe1TWl0KmDEjJm310XaYqlpGcnfGpZpknLRrb4GiekJ28gg; YSC=nYVVApPxeLY; __Secure-ROLLOUT_TOKEN=CL_qp-jW2sbDnwEQ_4Clw4HylQMY_4Clw4HylQM%3D; VISITOR_INFO1_LIVE=8BWjCSfd-OY; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgGA%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: 420720\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-27T07:05:42.939918Z","times_seen":1467,"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":84,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":34,"receive":50,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/87926.8ab9cfede16295107017.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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.273Z","timestamp":1785126257273,"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-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/87926.8ab9cfede16295107017.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/ticker-tape/?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 04:24:17 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-3547\"\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:17:49\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 77584341fc2cf3bf54a03c92c7908353\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":13639,"size_decoded":6439,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (3072)","md5":"5f5b2f579bfcf6854f67787677d11c94","sha1":"6de49cc606825ccf66acbceb2ba4d23d91f0ec4c","sha256":"38c41c9069ed7604e737e462760f16363aad09961b1091c66dfab594df263108","sha512":"3a309c43d694230393cf3d65bb8e48af52ff337f61f287f020e266764e5df3ad2531cd999bc8dbf42e74c27546fd871a68515a183ef1c35d24e0c0cb77549a6c","ssdeep":"384:KossZPZ8HYrU0jAWia49Aa4/WHA1E9y3ywtUPIsxmvxqlOwSCoBPy7:KossZPZEYrU0AWPXa4/WHH9WywtUgsSi","tlshash":"9752c9ea72c1357251da45a7613e7202a3394588f4898178b52cecdf172edcd73b2abc","first_seen":"2026-07-23T13:38:20.421953Z","last_seen":"2026-07-27T07:05:45.359656Z","times_seen":767,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbODc5MjZdLHs3MzIwNDAoZSx0LG8pe3ZhciBuO2Z1bmN0aW9uIHIoZSx0PXdpbmRvdyl7Y29uc3Qgbz0idGhlbWUtIitlLG49dC5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0O2Zvcihjb25zdCBlIG9mIEFycmF5LmZyb20obikpZS5zdGFydHNXaXRoKCJ0aGVtZS0iKSYmZSE9PW8mJm4ucmVtb3ZlKGUpO24uYWRkKG8pLHQuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmRhdGFzZXQudGhlbWU9ZX1vLmQodCx7YXBwbHlUaGVtZTooKT0+cn0pLGZ1bmN0aW9uKGUpe2UuVGhlbWVDbGFzc1ByZWZpeD0idGhlbWUtIn0obnx8KG49e30pKX0sMjAwNjY2KGUsdCxvKXtvLmQodCx7c2V0VGhlbWU6KCk9PnN9KTt2YXIgbj1vKDIzMjM2NCkscj1vKDczMjA0MCk7Y29uc3QgaT1uZXcgbi5XYXRjaGVkVmFsdWU7ZnVuY3Rpb24gcyhlKXtpLnNldFZhbHVlKGUpfWkuc3Vic2NyaWJlKChlPT57KDAsci5hcHBseVRoZW1lKShlLHdpbmRvdyl9KSl9LDg0NTUxMChlLHQsbyl7by5kKHQse1RpY2tlckl0ZW1BYnN0cmFjdDooKT0+YX0pO28oMjI2MzMxKTt2YXIgbj1vKDIyMTA2MSkscj1vKDI4NDQ4NCksaT1vKDY3MzgyOSkscz1vKDk0ODM4MCksbD1vKDk2OTE2OCksYz1vKDgzNzgyMik7Y29uc3QgdT0oMCxuLmdldExvZ2dlcikoIldpZGdldFRpY2tlciIpO2NsYXNzIGF7Y29uc3RydWN0b3IoZSx0LG8pe3RoaXMub25Jbml0PW5ldyBzLkRlbGVnYXRlLHRoaXMub25Db21wbGV0ZT1uZXcgcy5EZWxlZ2F0ZSx0aGlzLm9uRXJyb3I9bmV3IHMuRGVsZWdhdGUsdGhpcy5fcXVvdGVUaWNrZXJDb21wbGV0ZT1udWxsLHRoaXMuX2lzUnVubmluZz0hMSx0aGlzLl9wcmV2UXVvdGVTeW1ib2w9bnVsbCx0aGlzLl9lbD10fHxkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhIiksdGhpcy5fc3ltYm9sRGF0YT1lLHRoaXMuX29wdGlvbnM9b3x8e30sKDAsaS52YWxpZGF0ZVN5bWJvbERhdGEpKGUpPyh0aGlzLnJlbmRlcigpLHRoaXMuc3RhcnQoKSk6dS5sb2dFcnJvcigic3ltYm9sRGF0YSBpcyBub3QgdmFsaWQiKX1yZW5kZXIoKXt0aGlzLl9lbC5jbGFzc0xpc3QuYWRkKHRoaXMuX2dldENsYXNzKCkpLHRoaXMuX2VsLmlubmVySFRNTD10aGlzLl9nZXRWaWV3KCksdGhpcy5fc2V0VGl0bGUoKSx0aGlzLl9zZXRMaW5rKCl9c3RhcnQoKXt0aGlzLl9pc1J1bm5pbmd8fCh0aGlzLl9zdGFydFF1b3RlVGlja2VyKCksdGhpcy5faXNSdW5uaW5nPSEwKX1zdG9wKCl7dGhpcy5faXNSdW5uaW5nJiYodGhpcy5fc3RvcFF1b3RlVGlja2VyKCksdGhpcy5faXNSdW5uaW5nPSExKX1nZXRFbGVtZW50KCl7cmV0dXJuIHRoaXMuX2VsfWNoYW5nZVN5bWJvbChlKXtjb25zdCB0PWUuaW5jbHVkZXMoIjoiKT97cHJvTmFtZTplfTp7c2hvcnROYW1lOmV9O3RoaXMuX3ByZXZRdW90ZVN5bWJvbD10aGlzLl9nZXRTeW1ib2xOYW1lKCksdGhpcy5fc3ltYm9sRGF0YT10LHRoaXMuX3NldFRpdGxlKCksdGhpcy5fc2V0TGluaygpLHRoaXMuc3RvcCgpLHRoaXMuc3RhcnQoKX1xdW90ZVRpY2tlcigpe3JldHVybiB0aGlzLl9xdW90ZVRpY2tlcn1kaXNwbGF5UGxhY2Vob2xkZXJMZXR0ZXIoKXt0aGlzLl9yZW5kZXJTeW1ib2xMb2dvKFtdLCJ4eHhzbWFsbCIpfV9nZXRFbGVtZW50Q2xhc3MoZSl7cmV0dXJuIHRoaXMuX2dldENsYXNzKCkrIl9fIitlfV9nZXRTeW1ib2xOYW1lKCl7cmV0dXJuIHRoaXMuX3N5bWJvbERhdGEucHJvTmFtZXx8dGhpcy5fc3ltYm9sRGF0YS5zaG9ydE5hbWV9X3JlbmRlclN5bWJvbExvZ28oZSx0KXtjb25zdCBvPXRoaXMuX2VsLnF1ZXJ5U2VsZWN0b3IoIi5qcy1oZWFkZXItaWNvbiIpLG49MD09PWUubGVuZ3RoP3RoaXMuX2dldFBsYWNlaG9sZGVyTGV0dGVyKCk6dm9pZCAwO28mJnRoaXMuX3NldFN5bWJvbExvZ29IdG1sKG8sZSx0LG4pfV9nZXRQbGFjZWhvbGRlckxldHRlcigpe2NvbnN0IGU9dGhpcy5fc3ltYm9sRGF0YS5wcm9OYW1lLHQ9ZSYmZS5zcGxpdCgiOiIpWzFdO3JldHVybih0aGlzLl9zeW1ib2xEYXRhLnRpdGxlfHx0aGlzLl9zeW1ib2xEYXRhLmRlc2NyaXB0aW9ufHx0fHwiInx8IiAiKVswXX1fc2V0U3ltYm9sTG9nb0h0bWwoZSx0LG8sbil7aWYodC5sZW5ndGg+MHx8dm9pZCAwIT09bil7Y29uc3Qgcj0oMCxjLmdldENpcmNsZUxvZ29BbnlIdG1sKSh7bG9nb1VybHM6dCxzaXplOm8sY2xhc3NOYW1lOnRoaXMuX2dldEVsZW1lbnRDbGFzcygiaWNvbiIpLHBsYWNlaG9sZGVyTGV0dGVyOm59KTtlLmlubmVySFRNTD1yfWVsc2UgZS5pbm5lckhUTUw9IiJ9X3NldFRpdGxlKCl7Y29uc3QgZT10aGlzLl9nZXRFbFRpdGxlKCk7aWYoIWUpcmV0dXJuO2NvbnN0IHQ9dGhpcy5fc3ltYm9sRGF0YS50aXRsZXx8dGhpcy5fc3ltYm9sRGF0YS5kZXNjcmlwdGlvbnx8IiJ8fHRoaXMuX3N5bWJvbERhdGEuc2hvcnROYW1lfHx0aGlzLl9zeW1ib2xEYXRhLnByb05hbWV8fCIiLG89KDAsbC5kZXRlY3RBdXRvRGlyZWN0aW9uKSh0KTtvJiYoZS5kaXI9byksZS50ZXh0Q29udGVudD10fV9zZXRMaW5rKCl7aWYoISh0aGlzLl9lbCBpbnN0YW5jZW9mIEhUTUxBbmNob3JFbGVtZW50KSlyZXR1cm47Y29uc3QgZT10aGlzLl9zeW1ib2xEYXRhLmxpbmtQYWdlO2UmJih0aGlzLl9lbC5ocmVmPWUpLHRoaXMuX29wdGlvbnMuaXNFbWJlZFdpZGdldCYmKHRoaXMuX2VsLnRhcmdldD0iX2JsYW5rIix0aGlzLl9lbC5yZWw9ImV4dGVybmFsIG5vb3BlbmVyIil9X3N0YXJ0UXVvdGVUaWNrZXIoKXtpZighdGhpcy5fcXVvdGVUaWNrZXIpcmV0dXJuIHZvaWQgdGhpcy5fY3JlYXRlUXVvdGVUaWNrZXIoKTtjb25zdCBlPXRoaXMuX2dldFN5bWJvbE5hbWUoKTt0aGlzLl9wcmV2UXVvdGVTeW1ib2whPT1lPyh0aGlzLl9kZXN0cm95UXVvdGVUaWNrZXIoKSx0aGlzLl9jcmVhdGVRdW90ZVRpY2tlcigpKTp0aGlzLl9xdW90ZVRpY2tlci5lbmFibGUoKX1fc3RvcFF1b3RlVGlja2VyKCl7dGhpcy5fcXVvdGVUaWNrZXImJih0aGlzLl9xdW90ZVRpY2tlci5kaXNhYmxlKCksCnRoaXMuX3F1b3RlVGlja2VyQ29tcGxldGU9bnVsbCl9X2NyZWF0ZVF1b3RlVGlja2VyKCl7Y29uc3QgZT10aGlzLl9nZXRTeW1ib2xOYW1lKCksdD10aGlzLl9nZXRUaWNrZXJPcHRpb25zKCksbz10LmluaXRlZEhvb2ssbj10LnNldFN0YXRlSG9vazt0aGlzLl9xdW90ZVRpY2tlckNvbXBsZXRlPW51bGwsdGhpcy5fcXVvdGVUaWNrZXI9bmV3IHIuUXVvdGVUaWNrZXIoZSx0aGlzLl9lbCx7bm9TdWNoU3ltYm9sSG9vazooKT0+dGhpcy5vbkVycm9yLmZpcmUoIm5vX3N5bWJvbCIpLHBlcm1pc3Npb25EZW5pZWRIb29rOigpPT50aGlzLm9uRXJyb3IuZmlyZSgicGVybWlzc2lvbl9kZW5pZWQiKSwuLi50LGluaXRlZEhvb2s6KC4uLmUpPT57bz8uKC4uLmUpLHRoaXMub25Jbml0LmZpcmUoLi4uZSl9LHNldFN0YXRlSG9vazooZSx0LG8pPT57bj8uKGUsdCxvKSxvJiZudWxsPT09dGhpcy5fcXVvdGVUaWNrZXJDb21wbGV0ZSYmKHRoaXMuX3F1b3RlVGlja2VyQ29tcGxldGU9byx0aGlzLm9uQ29tcGxldGUuZmlyZSgpKX19KX1fZGVzdHJveVF1b3RlVGlja2VyKCl7dGhpcy5fc3RvcFF1b3RlVGlja2VyKCksZGVsZXRlIHRoaXMuX3F1b3RlVGlja2VyfV9nZXRFbFRpdGxlKCl7cmV0dXJuIHRoaXMuX2VsLnF1ZXJ5U2VsZWN0b3IoYC4ke3RoaXMuX2dldEVsZW1lbnRDbGFzcygidGl0bGUiKX1gKX19fSwxMTUyOTMoZSx0LG8pe28uZCh0LHtkZXRlY3RBdXRvRGlyZWN0aW9uOigpPT5oLGZvcmNlTFRSU3RyOigpPT5hLGlzUnRsOigpPT5pLHNldERvY3VtZW50RGlyR2V0dGVyOigpPT5yLHN0cmlwTFRSTWFya3M6KCk9PnV9KTtvKDMyMDQwMyk7bGV0IG49KCk9Pm51bGw7ZnVuY3Rpb24gcihlKXtuPWV9Y29uc3QgaT0oKT0+InJ0bCI9PT1mdW5jdGlvbigpe2NvbnN0IGU9bigpO2lmKG51bGw9PT1lKXRocm93IG5ldyBFcnJvcigiRG9jdW1lbnQgZGlyZWN0aW9uIGdldHRlciBpcyBub3Qgc2V0LCBjYWxsIHNldERvY3VtZW50RGlyR2V0dGVyIHRvIHNldCBpdCIpO3JldHVybiBlfSgpLHM9IuKAqiIsbD0i4oCsIixjPW5ldyBSZWdFeHAoIuKAjnzigI984oCqfOKAq3zigKwiLCJnIik7ZnVuY3Rpb24gdShlKXtyZXR1cm4iIiE9PWUmJmkoKSYmbnVsbCE9ZT9lLnJlcGxhY2UoYywiIik6ZX1mdW5jdGlvbiBhKGUpe3JldHVybiIiIT09ZSYmaSgpJiZudWxsIT1lP3MrZStsOmV9dmFyIG07IWZ1bmN0aW9uKGUpe2UuTFRSPSJsdHIiLGUuUlRMPSJydGwiLGUuVU5LTk9XTj0iIn0obXx8KG09e30pKTtjb25zdCBkPS9bXlx1MDAwMC1cdTAwNDBcdTAwNUItXHUwMDYwXHUwMDdCLVx1MDBCRlx1MDBEN1x1MDBGN1x1MDJCOS1cdTAyRkZcdTIwMDAtXHUyMDBFXHUyMDEwLVx1MjAyOVx1MjAyQ1x1MjAyRi1cdTJCRkZdLyxwPS9bXHUwNTkwLVx1MDdGRlx1MjAwRlx1MjAyQlx1MjAyRVx1RkIxRC1cdUZERkRcdUZFNzAtXHVGRUZDXS87ZnVuY3Rpb24gaChlKXtjb25zdCB0PWQuZXhlYyhlKTtyZXR1cm4gdD9wLnRlc3QodFswXSk/InJ0bCI6Imx0ciI6IiJ9fSw2MDE4NDEoZSx0LG8pe28uZCh0LHtjbG9uZTooKT0+cixpc0FycmF5OigpPT5zLGlzSW50ZWdlcjooKT0+bCxpc051bWJlcjooKT0+bixpc09iamVjdDooKT0+aSxub3ROdWxsOigpPT5jfSk7bmV3IFNldChbIl9fcHJvdG9fXyIsInByb3RvdHlwZSIsImNvbnN0cnVjdG9yIl0pO2Z1bmN0aW9uIG4oZSl7cmV0dXJuIm51bWJlciI9PXR5cGVvZiBlJiZpc0Zpbml0ZShlKX1mdW5jdGlvbiByKGUpe2lmKCFlfHwib2JqZWN0IiE9dHlwZW9mIGUpcmV0dXJuIGU7bGV0IHQ7dD1BcnJheS5pc0FycmF5KGUpP1tdOnt9O2Zvcihjb25zdCBvIGluIGUpaWYoZS5oYXNPd25Qcm9wZXJ0eShvKSl7Y29uc3Qgbj1lW29dO3Rbb109biYmIm9iamVjdCI9PXR5cGVvZiBuP3Iobik6bn1yZXR1cm4gdH1mdW5jdGlvbiBpKGUpe3JldHVybiJvYmplY3QiPT10eXBlb2YgZSYmbnVsbCE9PWV9Y29uc3Qgcz1BcnJheS5pc0FycmF5fHxmdW5jdGlvbihlKXtyZXR1cm4iW29iamVjdCBBcnJheV0iPT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpfTtmdW5jdGlvbiBsKGUpe3JldHVybiJudW1iZXIiPT10eXBlb2YgZSYmZSUxPT0wfWZ1bmN0aW9uIGMoZSl7cmV0dXJuIG51bGwhPT1lfU51bWJlci5pc05hTj1OdW1iZXIuaXNOYU58fGZ1bmN0aW9uKGUpe3JldHVybiBlIT1lfX0sMzQ0Nzg1KGUsdCxvKXtvLmQodCx7aGlkZTooKT0+dixzaG93T25FbGVtZW50OigpPT5wfSk7dmFyIG49bygzNjMyNjkpLHI9bygxMzg2MzgpLGk9byg3MjcwOSkscz1vKDY1ODk5NSksbD1vKDE2Nzg5NiksYz1vKDQ5MDM3OCk7bGV0IHU9ITEsYT1udWxsLG09bnVsbDtuLm1vYmlsZXRvdWNofHwoZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VvdmVyIixmLCEwKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsKGZ1bmN0aW9uKGUpe2NvbnN0IHQ9ZS50YXJnZXQ7aWYoISh0IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQmJnQuY2xvc2VzdCgnW2RhdGEtdG9vbHRpcC1zaG93LW9uLWZvY3VzPSJ0cnVlIl0nKSYmdC5tYXRjaGVzKCI6Zm9jdXMtdmlzaWJsZSIpKSlyZXR1cm47ZihlLCEwKX0pLHtjYXB0dXJlOiEwfSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiYWN0aXZlLWRlc2NlbmRhbnQtZm9jdXMiLChmdW5jdGlvbihlKXtlLnRhcmdldCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiZmKGUsITApfSkse2NhcHR1cmU6ITB9KSk7Y29uc3QgZD1uZXcgTXV0YXRpb25PYnNlcnZlcigoKCk9PntpZihhJiZhLm9wdGlvbnMudGFyZ2V0KXtsZXQgZTtlPSJpc0Nvbm5lY3RlZCJpbiBhLm9wdGlvbnMudGFyZ2V0P2Eub3B0aW9ucy50YXJnZXQuaXNDb25uZWN0ZWQ6ZG9jdW1lbnQuYm9keS5jb250YWlucyhhLm9wdGlvbnMudGFyZ2V0KSxlfHx2KCl9fSkpLHA9KGUsdD17fSk9Pntjb25zdHtjb250ZW50Om8sLi4ubn09Zyh0KSxyPWMuZ2V0RGF0YUZyb21UYXJnZXQoZSksaT1PYmplY3QuYXNzaWduKHIsbik7cmV0dXJuIm5vbmUiIT09by50eXBlJiYoaS5jb250ZW50PW8pLCEoIm5vbmUiPT09aS5jb250ZW50LnR5cGUmJiFpLmhvdGtleSkmJihpLnRhcmdldD1lLGgoaSksITApfSxoPWU9PnsKY29uc3QgdD1nKGUpLG89Yy5nZXRUb29sdGlwKHQpO2lmKGE9e29wdGlvbnM6dCxlbGVtZW50Om99LCgwLGwuc2V0VG9vbHRpcCkobyksKDAscy5jbGVhclNjaGVkdWxlKSgpLCF1KXJldHVybiBjLmhpZGVUb29sdGlwKG8pLHZvaWQoMCxzLnNjaGVkdWxlUmVuZGVyKSgoKCk9Pl8obykpLGZ1bmN0aW9uKGUpe3JldHVybiJudW1iZXIiIT10eXBlb2YgZS50b29sdGlwRGVsYXl8fGlzTmFOKGUudG9vbHRpcERlbGF5KT81MDA6ZS50b29sdGlwRGVsYXl9KHQpKTtjb25zdHt0b29sdGlwRGVib3VuY2U6bn09ZTsibnVtYmVyIiE9dHlwZW9mIG58fGlzTmFOKG4pP18obyk6KDAscy5zY2hlZHVsZVJlbmRlcikoKCgpPT5fKG8pKSxuKX07ZnVuY3Rpb24gZihlLHQpe2lmKCJzb3VyY2VDYXBhYmlsaXRpZXMiaW4gZSYmZS5zb3VyY2VDYXBhYmlsaXRpZXM/LmZpcmVzVG91Y2hFdmVudHMpcmV0dXJuO2NvbnN0IG89ZnVuY3Rpb24oZSx0LG8pe2NvbnN0IG49W107Zm9yKDtlJiZlIT09dDspZS5jbGFzc0xpc3QmJmUuY2xhc3NMaXN0LmNvbnRhaW5zKG8pJiZuLnB1c2goZSksZT1lLnBhcmVudEVsZW1lbnR8fGIoZS5wYXJlbnROb2RlKTtyZXR1cm4gbn0oZS50YXJnZXQsZS5jdXJyZW50VGFyZ2V0LCJhcHBseS1jb21tb24tdG9vbHRpcCIpO2Zvcihjb25zdCBuIG9mIG8pe2lmKGUgaW5zdGFuY2VvZiBNb3VzZUV2ZW50KWlmKCJidXR0b25zImluIGUpe2lmKDEmZS5idXR0b25zKWNvbnRpbnVlfWVsc2UgaWYoMT09PWUud2hpY2gpY29udGludWU7Y29uc3Qgbz0oKT0+cChuKTtpZihvKCkpe2NvbnN0IGU9ZT0+cihudWxsLCEwKSxyPShpLHM9ITEpPT57bi5yZW1vdmVFdmVudExpc3RlbmVyKCJjb21tb24tdG9vbHRpcC11cGRhdGUiLG8pLG4ucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsciksbi5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZWRvd24iLHIpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInNjcm9sbCIsZSx7Y2FwdHVyZTohMH0pLHQmJihuLnJlbW92ZUV2ZW50TGlzdGVuZXIoImJsdXIiLHIpLG4ucmVtb3ZlRXZlbnRMaXN0ZW5lcigiYWN0aXZlLWRlc2NlbmRhbnQtYmx1ciIscikpLG0mJihtLmRlc3Ryb3koKSxtPW51bGwpLHYocyl9O24uYWRkRXZlbnRMaXN0ZW5lcigiY29tbW9uLXRvb2x0aXAtdXBkYXRlIixvKSxuLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLHIpLG4uYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIixyKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLGUse2NhcHR1cmU6ITB9KSx0JiYobi5hZGRFdmVudExpc3RlbmVyKCJibHVyIixyKSxuLmFkZEV2ZW50TGlzdGVuZXIoImFjdGl2ZS1kZXNjZW5kYW50LWJsdXIiLHIpKSxudWxsPT09bSYmKG09KDAsaS5jcmVhdGVHcm91cCkoe2Rlc2M6IlRvb2x0aXAifSksbS5hZGQoe2Rlc2M6IkhpZGUiLGhvdGtleToyNyxoYW5kbGVyOnJ9KSk7YnJlYWt9fX1mdW5jdGlvbiB5KCl7KDAsbC5lbXB0eSkoKSx1PSExLGE9bnVsbH1jb25zdCB2PShlLHQpPT57aWYoKDAscy5jbGVhclNjaGVkdWxlKSgpLCgwLHIuZW5zdXJlTm90TnVsbCkoZCkuZGlzY29ubmVjdCgpLCFhKXJldHVybjtpZighZSYmIXUpcmV0dXJuO2NvbnN0e2VsZW1lbnQ6byxvcHRpb25zOm59PWEsaT0oKT0+e28ucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsaSksYy5oaWRlVG9vbHRpcChvKSxlP3koKTooMCxzLnNjaGVkdWxlUmVtb3ZlKSgoKCk9Pnt5KCl9KSwyNTApLHQ/LigpfTtuLnRvb2x0aXBIaWRlRGVsYXk/KDAscy5zY2hlZHVsZUhpZGUpKCgoKT0+e28ucXVlcnlTZWxlY3RvcigiOmhvdmVyIik/by5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIixpKTppKCl9KSxuLnRvb2x0aXBIaWRlRGVsYXkpOmkoKX07ZnVuY3Rpb24gXyhlKXtjb25zdHtvcHRpb25zOnR9PSgwLHIuZW5zdXJlTm90TnVsbCkoYSk7aWYoYy5zZXRTdHlsZShlLHQpLGMuc2hvd1Rvb2x0aXAoZSksKDAsci5lbnN1cmVOb3ROdWxsKShkKS5vYnNlcnZlKGRvY3VtZW50LHtjaGlsZExpc3Q6ITAsc3VidHJlZTohMH0pLHU9ITAsdC5mb3JjZUhpZGVPbk1vdmUpe2NvbnN0IGU9KCk9Pntkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLGUpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsZSksdigpfTtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLGUpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsZSl9fWZ1bmN0aW9uIGIoZSl7cmV0dXJuIGUmJihlLm5vZGVUeXBlPT09Tm9kZS5FTEVNRU5UX05PREU/ZTpudWxsKX1mdW5jdGlvbiBnKGUpe2lmKGZ1bmN0aW9uKGUpe3JldHVybiJjb250ZW50ImluIGV9KGUpKXJldHVybiBlO2NvbnN0e2lubmVyOnQsaHRtbDpvLHRleHQ6biwuLi5yfT1lO2xldCBpPXt0eXBlOiJub25lIn07cmV0dXJuIHQmJihpPXt0eXBlOiJlbGVtZW50IixkYXRhOnR9KSxuJiYoaT17dHlwZTpvPyJodG1sIjoidGV4dCIsZGF0YTpufSkse2NvbnRlbnQ6aSwuLi5yfX19LDIyNjMzMShlLHQsbyl7dmFyIG49bygzNDQ3ODUpO2Z1bmN0aW9uIHIoZSx0PSJ4Iil7bGV0IG89ITE7cmV0dXJuIngiIT09dCYmImJvdGgiIT09dHx8KG89b3x8ZS5vZmZzZXRXaWR0aDxlLnNjcm9sbFdpZHRoKSwieSIhPT10JiYiYm90aCIhPT10fHwobz1vfHxlLm9mZnNldEhlaWdodDxlLnNjcm9sbEhlaWdodCksb31mdW5jdGlvbiBpKGUsdD0ieCIpe2Zvcihjb25zdCBvIG9mIEFycmF5LmZyb20oZS5jaGlsZHJlbikpaWYobyBpbnN0YW5jZW9mIEhUTUxFbGVtZW50JiYocihvLHQpfHxpKG8sdCkpKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIHMoZSl7bGV0IHQ9IngiO3JldHVybiBlLm1hdGNoZXMoIi5hcHBseS1vdmVyZmxvdy10b29sdGlwLS1kaXJlY3Rpb25fYm90aCIpP3Q9ImJvdGgiOmUubWF0Y2hlcygiLmFwcGx5LW92ZXJmbG93LXRvb2x0aXAtLWRpcmVjdGlvbl95IikmJih0PSJ5IiksdH1mdW5jdGlvbiBsKGUpe2NvbnN0IHQ9ZS5nZXRBdHRyaWJ1dGUoImRhdGEtb3ZlcmZsb3ctdG9vbHRpcC1odG1sIik7aWYodClyZXR1cm57dHlwZToiaHRtbCIsCmRhdGE6dH07Y29uc3Qgbz1lLmdldEF0dHJpYnV0ZSgiZGF0YS1vdmVyZmxvdy10b29sdGlwLXRleHQiKTtpZihvKXJldHVybnt0eXBlOiJ0ZXh0IixkYXRhOm99O2lmKGUubWF0Y2hlcz8uKCIuYXBwbHktb3ZlcmZsb3ctdG9vbHRpcC0tYWxsb3ctdGV4dCIpKXtyZXR1cm57dHlwZToidGV4dCIsZGF0YTplLnRleHRDb250ZW50fHwiIn19Y29uc3Qgbj1BcnJheS5mcm9tKGUuY2hpbGROb2RlcykucmVkdWNlKCgoZSx0KT0+KHQubm9kZVR5cGU9PT1Ob2RlLlRFWFRfTk9ERSYmZS5wdXNoKHQudGV4dENvbnRlbnR8fCIiKSxlKSksW10pLmpvaW4oIiIpLnRyaW0oKTtyZXR1cm4gbj97dHlwZToidGV4dCIsZGF0YTpufTp7dHlwZToibm9uZSJ9fWZ1bmN0aW9uIGMoZSx0KXtsZXQgbz0hMTtjb25zdCBuPWUuY2hpbGRyZW47Zm9yKGxldCBlPTA7ZTxuLmxlbmd0aDtlKyspe2NvbnN0IGk9bltlXTtpZihpIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQmJnIoaSx0KSl7bz0hMDticmVha319cmV0dXJuIG99ZnVuY3Rpb24gdShlKXtjb25zdCB0PWUudGFyZ2V0O2lmKHQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCYmKHQubWF0Y2hlcygiLmFwcGx5LW92ZXJmbG93LXRvb2x0aXAtZm9jdXMiKXx8dC5xdWVyeVNlbGVjdG9yKCIuYXBwbHktb3ZlcmZsb3ctdG9vbHRpcC1mb2N1cyIpKSl7Y29uc3QgZT10Lm1hdGNoZXMoIi5hcHBseS1vdmVyZmxvdy10b29sdGlwIik/dDp0LnF1ZXJ5U2VsZWN0b3IoIi5hcHBseS1vdmVyZmxvdy10b29sdGlwIiksbz1zKGUpO2lmKGUubWF0Y2hlcygiLmFwcGx5LW92ZXJmbG93LXRvb2x0aXAtLWNoZWNrLWNoaWxkcmVuLXJlY3Vyc2l2ZWx5Iikpe2lmKCFpKGUsbykpcmV0dXJufWVsc2UgaWYoZS5tYXRjaGVzKCIuYXBwbHktb3ZlcmZsb3ctdG9vbHRpcC0tY2hlY2stY2hpbGRyZW4iKSl7aWYoIWMoZSxvKSlyZXR1cm59ZWxzZSBpZighcihlLG8pKXJldHVybjsoMCxuLnNob3dPbkVsZW1lbnQpKHQse2NvbnRlbnQ6bChlKX0pO2NvbnN0IHU9KCk9PnsoMCxuLmhpZGUpKCksdC5yZW1vdmVFdmVudExpc3RlbmVyKCJibHVyIix1KSx0LnJlbW92ZUV2ZW50TGlzdGVuZXIoImFjdGl2ZS1kZXNjZW5kYW50LWJsdXIiLHUpfTt0LmFkZEV2ZW50TGlzdGVuZXIoImJsdXIiLHUpLHQuYWRkRXZlbnRMaXN0ZW5lcigiYWN0aXZlLWRlc2NlbmRhbnQtYmx1ciIsdSl9fSgwLG8oNzQ5NjQ4KS53aGVuRG9jdW1lbnRSZWFkeSkoKCgpPT57ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VlbnRlciIsKGU9Pntjb25zdCB0PWUudGFyZ2V0O2lmKHQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCYmdC5tYXRjaGVzKCIuYXBwbHktb3ZlcmZsb3ctdG9vbHRpcCIpKXtjb25zdCBlPXModCk7aWYodC5tYXRjaGVzKCIuYXBwbHktb3ZlcmZsb3ctdG9vbHRpcC0tY2hlY2stY2hpbGRyZW4tcmVjdXJzaXZlbHkiKSl7aWYoIWkodCxlKSlyZXR1cm59ZWxzZSBpZih0Lm1hdGNoZXMoIi5hcHBseS1vdmVyZmxvdy10b29sdGlwLS1jaGVjay1jaGlsZHJlbiIpKXtpZighYyh0LGUpKXJldHVybn1lbHNlIGlmKCFyKHQsZSkpcmV0dXJuOygwLG4uc2hvd09uRWxlbWVudCkodCx7Y29udGVudDpsKHQpfSk7Y29uc3Qgbz0oKT0+eygwLG4uaGlkZSkoKSxbIm1vdXNlbGVhdmUiLCJtb3VzZWRvd24iXS5mb3JFYWNoKChlPT50LnJlbW92ZUV2ZW50TGlzdGVuZXIoZSxvKSkpfTtbIm1vdXNlbGVhdmUiLCJtb3VzZWRvd24iXS5mb3JFYWNoKChlPT50LmFkZEV2ZW50TGlzdGVuZXIoZSxvKSkpfX0pLCEwKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsdSwhMCksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiYWN0aXZlLWRlc2NlbmRhbnQtZm9jdXMiLHUsITApfSkpfSw2NzM4MjkoZSx0LG8pe2Z1bmN0aW9uIG4oZSl7cmV0dXJuIEJvb2xlYW4oZSkmJigic3RyaW5nIj09dHlwZW9mIGUucHJvTmFtZXx8InN0cmluZyI9PXR5cGVvZiBlLnNob3J0TmFtZSl9by5kKHQse3ZhbGlkYXRlU3ltYm9sRGF0YTooKT0+bn0pfSw4NTE0NTgoZSx0LG8pe28uZCh0LHtpc1NwcmVhZDooKT0+YSx0b2tlbml6ZTooKT0+Y30pO3ZhciBuLHI9byg5MDEwMjIpLGk9byg1NjkzOTgpOyFmdW5jdGlvbihlKXtlLlN5bWJvbD0ic3ltYm9sIixlLkluY29tcGxldGVTeW1ib2w9ImluY29tcGxldGVTeW1ib2wiLGUuTnVtYmVyPSJudW1iZXIiLGUuSW5jb21wbGV0ZU51bWJlcj0iaW5jb21wbGV0ZU51bWJlciIsZS5TZXBhcmF0b3JQcmVmaXg9InNlcGFyYXRvclByZWZpeCIsZS5PcGVuQnJhY2U9Im9wZW5CcmFjZSIsZS5DbG9zZUJyYWNlPSJjbG9zZUJyYWNlIixlLlBsdXM9InBsdXMiLGUuTWludXM9Im1pbnVzIixlLk11bHRpcGx5PSJtdWx0aXBseSIsZS5EaXZpZGU9ImRpdmlkZSIsZS5Qb3dlcj0icG93ZXIiLGUuV2hpdGVzcGFjZT0id2hpdGVzcGFjZSIsZS5VbnBhcnNlZD0idW5wYXJzZWQifShufHwobj17fSkpO2NvbnN0IHM9Lyg/OlteLStcLypeXHNdJ3xbYS16QS1aMC05X1x1MDM3MC1cdTFGRkZfXHUyRTgwLVx1RkZGRl0pKD86W14tK1wvKl5cc10nfFthLXpBLVowLTlfXHUwMDIwXHUwMzcwLVx1MUZGRl9cdTJFODAtXHVGRkZGXyF8Oi4mXSkqfCcuKz8nLyxsPShlPSgwLGkuaXNGZWF0dXJlRW5hYmxlZCkoImFsbG93X3RyYWlsaW5nX3doaXRlc3BhY2VfaW5fbnVtYmVyX3Rva2VuIikpPT4oe251bWJlcjplPy9cZCsoPzpcLlxkKnwoPyFbYS16QS1aMC05XyE6LiZdKSkoPzpccyooPz1ccyokKSk/fFwuXGQrKD86XHMqKD89XHMqJCkpPy86L1xkKyg/OlwuXGQqfCg/IVthLXpBLVowLTlfITouJl0pKXxcLlxkKy8saW5jb21wbGV0ZU51bWJlcjovXC4vLHN5bWJvbDpzLGluY29tcGxldGVTeW1ib2w6LydbXiddKi8sc2VwYXJhdG9yUHJlZml4OnIuU0VQQVJBVE9SX1BSRUZJWCxvcGVuQnJhY2U6IigiLGNsb3NlQnJhY2U6IikiLHBsdXM6IisiLG1pbnVzOiItIixtdWx0aXBseToiKiIsZGl2aWRlOiIvIixwb3dlcjoiXiIsd2hpdGVzcGFjZTovW1wwLVx4MjBcc10rLyx1bnBhcnNlZDpudWxsfSk7ZnVuY3Rpb24gYyhlLHQ9bCgpKXtpZighZSlyZXR1cm5bXTtjb25zdCBvPVtdLG49T2JqZWN0LmtleXModCk7bGV0IHIKO2NvbnN0IGk9KChlPWwoKSk9Pm5ldyBSZWdFeHAoT2JqZWN0LnZhbHVlcyhlKS5tYXAoKGU9PntyZXR1cm4gbnVsbD09PWU/IiI6YCgkeyJzdHJpbmciPT10eXBlb2YgZT8odD1lLHQucmVwbGFjZSgvW1xeJCgpW1xde30qKz98XFxdL2csIlxcJCYiKSk6ZS5zb3VyY2V9KWA7dmFyIHR9KSkuZmlsdGVyKChlPT4iIiE9PWUpKS5jb25jYXQoIi4iKS5qb2luKCJ8IiksImciKSkodCk7Zm9yKDtyPWkuZXhlYyhlKTspe2xldCBlPSExO2ZvcihsZXQgdD1uLmxlbmd0aDt0LS07KWlmKHJbdCsxXSl7blt0XSYmby5wdXNoKHt2YWx1ZTpyW3QrMV0sdHlwZTpuW3RdLHByZWNlZGVuY2U6MCxvZmZzZXQ6ci5pbmRleH0pLGU9ITA7YnJlYWt9ZXx8by5wdXNoKHt2YWx1ZTpyWzBdLHR5cGU6InVucGFyc2VkIixwcmVjZWRlbmNlOjAsb2Zmc2V0OnIuaW5kZXh9KX1yZXR1cm4gb31mdW5jdGlvbiB1KGUpe3JldHVybiJwbHVzIj09PWV8fCJtaW51cyI9PT1lfHwibXVsdGlwbHkiPT09ZXx8ImRpdmlkZSI9PT1lfHwicG93ZXIiPT09ZX1mdW5jdGlvbiBhKGUpe3JldHVybiBlLmxlbmd0aD4xJiZlLnNvbWUoKGU9PnUoZS50eXBlKSkpfX0sOTY5MTY4KGUsdCxvKXtvLmQodCx7ZGV0ZWN0QXV0b0RpcmVjdGlvbjooKT0+bi5kZXRlY3RBdXRvRGlyZWN0aW9uLGlzUnRsOigpPT5uLmlzUnRsfSk7byg2MTAyNjgpO3ZhciBuPW8oMTE1MjkzKX0sODExNDk5KGUsdCxvKXtmdW5jdGlvbiBuKGUpe3JldHVybiBlLnJlcGxhY2UoInt7c2hvcnROYW1lfX0iLCJ7dHZzeW1ib2x9IikucmVwbGFjZSgie3twcm9OYW1lfX0iLCJ7dHZwcm9zeW1ib2x9IikucmVwbGFjZSgie3tzeW1ib2x9fSIsInt0dnN5bWJvbH0iKS5yZXBsYWNlKCJ7e2V4Y2hhbmdlfX0iLCJ7dHZleGNoYW5nZX0iKX1vLmQodCx7cmVwbGFjZU9sZFBsYWNlaG9sZGVyczooKT0+bn0pfSw0MDMzNzAoZSx0LG8pe28uZCh0LHttYWtlV2lkZ2V0U3ltYm9sTGluazooKT0+c30pO3ZhciBuPW8oODExNDk5KSxyPW8oOTExMzI3KSxpPW8oODUxNDU4KTtmdW5jdGlvbiBzKGUpe2NvbnN0e2N1c3RvbVVybDp0LHV0bUluZm86byxwYXRoOnMsdHlwZXNwZWNzOmx9PWU7bGV0IGMsdSxhPWUuc3ltYm9sO2NvbnN0IG09KDAsaS50b2tlbml6ZSkoYSk7cmV0dXJuKDAsaS5pc1NwcmVhZCkobSkmJihhPW0uZmluZCgoZT0+InN5bWJvbCI9PT1lLnR5cGUpKT8udmFsdWV8fGEpLGEuaW5jbHVkZXMoIjoiKT9bdSxjXT1hLnNwbGl0KCI6Iik6Yz1hLHQ/KDAsci5tYWtlVGVtcGxhdGVTeW1ib2xVcmwpKCgwLG4ucmVwbGFjZU9sZFBsYWNlaG9sZGVycykodCkse3Byb05hbWU6YX0pOigwLHIubWFrZVN5bWJvbFBhZ2VVcmwpKHtzaG9ydE5hbWU6YyxleGNoYW5nZTp1LHR5cGVzcGVjczpsfSxvLHZvaWQgMCxzKX19fV0pOw=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCUSD1W.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.553Z","timestamp":1785126258553,"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 /crypto/XTVCUSD1W.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 04:24:18 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: \"303138491098ac806588b7bb6d3b0580\"\r\nlast-modified: Mon, 05 May 2025 20:06:42 GMT\r\ncdn-cachedat: 08/14/2025 09:11:13\r\nx-amz-id-2: VCNF73+j37KFH+aTyN2Bb1PDnHeKWWMKgyYIPVJ0VZTzCvJ+6AW6RYi1LcVG44Y38G2YQT4Vhj0=\r\nx-amz-request-id: DXKT9XS45YQ4FRP9\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 303138491098ac806588b7bb6d3b0580\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: e7a23b8d33a8e8056727d91760d6eb03\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":4330,"size_decoded":2935,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (4330), with no line terminators","md5":"303138491098ac806588b7bb6d3b0580","sha1":"728928f7133a7c6fdf29aacc8682014e8e348e4a","sha256":"348162029bfd1a3ff8f20d9c969926fba0a18fc162d2b13b1901a0baa7813e6b","sha512":"c8ba6850dcd4162ac56e831e7c15121a1f1cfbe6c21224b92fa461979659fc71b5a215bf2fc510ed3e6733e6b123736389a581f27168c831617aded18f06c6f3","ssdeep":"96:bu0fMNmofjzUolUqzIAecZTIt7tFJ9bw5r:b0NmwnRlUqzIAaNtH9bg","tlshash":"6a91e164504ce65e5c83e79cdbaf9471234e50e9b1da92e839eee3b8a00f6d5fc63410","first_seen":"2025-09-03T16:43:44.990007Z","last_seen":"2026-07-27T07:05:43.278077Z","times_seen":725,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNOS4zMSAzQTUuOTcgNS45NyAwIDAgMSAxNSA4LjZ2LjhhNS45OCA1Ljk4IDAgMCAxLTEuODggMy45NkE1LjkzIDUuOTMgMCAwIDEgOS4zNiAxNWgtLjc0QTYuMDIgNi4wMiAwIDAgMSAzIDkuMzF2LS41NEE1Ljk2IDUuOTYgMCAwIDEgOC42NyAzaC42NFoiIGZpbGw9IiNFQUFDMDgiLz48cGF0aCBkPSJtOS45MiAzLjY3LjM3LjQ3Yy0uNDMtLjEtLjg3LS4xNi0xLjMtLjJhMS4zNCAxLjM0IDAgMCAxLS40OC0uMzIgNS43IDUuNyAwIDAgMSAxLjQuMDVaIiBmaWxsPSIjQUE4MjFDIi8+PHBhdGggZD0iTTguNSAzLjYyYy4xNC4xNC4zLjI1LjQ4LjMyLS41Ny4wOC0xLjA2LjEzLTEuNjcuMzNsLS4yLS4yOGEuMDIuMDIgMCAwIDEgMC0uMDNjLjQ1LS4xOS45MS0uMyAxLjQtLjM0WiIgZmlsbD0iI0NCOTcxMiIvPjxwYXRoIGQ9Ik0xNC4zNyA4LjQzYy0uMTctLjEtLjMxLS4yLS40NC0uMzNhLjUuNSAwIDAgMC0uMDEtLjE3IDQuNDYgNC40NiAwIDAgMC0uMjUtLjhsLS4xNS0uMzVhNS4xIDUuMSAwIDAgMC0zLjIyLTIuNjRsLS4zOC0uNDdhNS40IDUuNCAwIDAgMSA0LjQ1IDQuNzZaIiBmaWxsPSIjOEU3MDI1Ii8+PHBhdGggZD0iTTguOTggMy45NGE1LjEgNS4xIDAgMCAxIDQuNTMgMi44NGwtLjQ0LjA2Yy0uMDUgMC0uMS4wMy0uMTMuMDdhLjIxLjIxIDAgMCAwLS4wNi4xMnYuMDFhLjE0LjE0IDAgMCAwIC4wOS4xNWguMDZsLjY0LS4wNmMuMS4yNi4xOS41My4yNS44YS41LjUgMCAwIDEgMCAuMTdsLS4wMS4wNy0yLjEzLjM4YS43Ny43NyAwIDAgMS0uNi0uMDhsLTEuMjEtLjY2YTEuODMgMS44MyAwIDAgMC0uNC0uMTZWNS44OGMwLS4xOC0uMDctLjMtLjItLjM0bC0uNDguMmMtLjAyIDAtLjExLS4wMi0uMTQgMC0uMDIgMC0uMDYuMTItLjA4LjE0LjE4LjY4LjIgMS4xMi4xOCA0LjYtLjMxLjIzLS44LjUzLS44OS42MmEyNjEuNDQgMjYxLjQ0IDAgMCAxLS43NS42OCAzLjcgMy43IDAgMCAxLS45Ni43NmMtLjE5LjA2LS4zOC4xNC0uNTguMjItLjE3LS4xMy0uMzMtLjMtLjQ3LS41bDEuMzktMS4yMmEuMTMuMTMgMCAwIDAgLjAzLS4xNmwtLjAyLS4wM2EuMTQuMTQgMCAwIDAtLjIxLS4wNGwtMS40IDEuMi0uNDktLjc3Yy4xMy0uMTIuMzItLjIuNC0uMzVhLjE1LjE1IDAgMCAwLS4wNi0uMmMtLjAzLS4wMi0uMDgtLjAyLS4xMy4wMWwtLjM1LjJjLS4xMi0uMjYtLjItLjUzLS4yNi0uODEuMS0uMDQuMjMtLjEuMzctLjE4YTMyMDIuMDIgMzIwMi4wMiAwIDAgMSAxLjgtMS4wMy4wMy4wMyAwIDAgMC0uMDQtLjA1Yy0uMSAwLS4yIDAtLjMtLjAzbC0xLjktLjM3YS4zMy4zMyAwIDAgMSAwLS4xNGwuMTMtLjYyYy4wNi0uMjguMi0uNjIuNDMtMS4wM0E1LjAzIDUuMDMgMCAwIDEgNy4zIDQuMjdjLjYtLjIgMS4xLS4yNSAxLjY3LS4zM1oiIGZpbGw9IiNDQTg0MDQiLz48cGF0aCBkPSJtMTMuNTIgNi43OC4xNS4zNS0uNjQuMDZhLjE1LjE1IDAgMCAxLS4xMi0uMDQuMTQuMTQgMCAwIDEtLjA0LS4xdi0uMDJjLjAxLS4wNC4wMy0uMDkuMDctLjEyYS4yMy4yMyAwIDAgMSAuMTMtLjA3bC40NS0uMDZaTTEzLjkgOC4xN2MuMTUuMy4xMy43NC4xMiAxLjA3bC0uMDEuMTJhNy43MSA3LjcxIDAgMCAwLTEuODkuMDYuNzMuNzMgMCAwIDAtLjItLjE3bC0yLjM1LTEuM3YtLjNjLjE0LjA0LjI3LjEuNC4xNmwxLjIxLjY2Yy4yMS4xMS4zNS4xMy42LjA4bDIuMTMtLjM4WiIgZmlsbD0iI0I3NzIwNiIvPjxwYXRoIGQ9Im0xMi4xMiA5LjQyLjEuMjJjMCAuMDIuMDIuMDQuMDQuMDYuMTIuMTEuMjguMjYuMzQuNDJhMS4xNiAxLjE2IDAgMCAxIC4wNi42bC0uMDEuMDFhLjAzLjAzIDAgMCAxLS4wMyAwYy0uMi0uMTktLjM1LS4zNy0uNTQtLjQtLjE3LS4wNC0uNC0uMDctLjY4LS4wOWEzLjIxIDMuMjEgMCAwIDEtLjg3LS4yIDIuODQgMi44NCAwIDAgMC0uOTYuMDVWNy45NmMuOTUuNSAxLjczLjk0IDIuMzYgMS4zLjA2LjAzLjEzLjA5LjIuMTZaIiBmaWxsPSIjQ0E4NDA0Ii8+PHBhdGggZD0iTTQuMDIgOC4yOWEuMzMuMzMgMCAwIDAgMCAuMTRjLS4wNC4zLS4wNi41Mi0uMDUuNjRsLjA2LjYyLS40Mi0uMjVhNC45NSA0Ljk1IDAgMCAxIC4xLTEuMzggMSAxIDAgMCAxIC4zMS4yM1oiIGZpbGw9IiNFRUM3NUYiLz48cGF0aCBkPSJtMTQuMzcgOC40My4wMSAxLS4zNi0uMTljLjAxLS4zMy4wMy0uNzctLjExLTEuMDdsLjAyLS4wN2MuMTMuMTMuMjcuMjQuNDQuMzNaIiBmaWxsPSIjQUE4MjFDIi8+PHBhdGggZD0ibTQuMSAxMC4wOS0uMDctLjQtLjA2LS42MmMwLS4xMiAwLS4zMy4wNS0uNjRsMS45LjM3YTEuNSAxLjUgMCAwIDAgLjMzLjA0LjAzLjAzIDAgMCAxIDAgLjA1TDQuNDcgOS45MWMtLjE0LjA4LS4yNy4xNC0uMzcuMThaIiBmaWxsPSIjQjc3MjA2Ii8+PHBhdGggZD0iTTE0LjM4IDkuNDJhNC42NSA0LjY1IDAgMCAxLS41MiAxLjg2aC0uMDJsLS4zLS4xNWMuMjctLjU2LjQyLTEuMTUuNDctMS43N3YtLjEybC4zNy4xOFoiIGZpbGw9IiNDQjk3MTIiLz48cGF0aCBkPSJNMTQgOS4zNmMtLjA0LjYyLS4yIDEuMi0uNDUgMS43N2wtLjI3LjQ4Yy0uOS0uMS0xLjU1LS4xMy0yLjYtLjE2LS4zNC0uMDEtLjctLjEyLTEuMS0uMzFsLS4wMS0xLjA1YTIuODQgMi44NCAwIDAgMSAxLjAzLS4wNGMuMzMuMTIuNi4xOC44LjIuMjguMDEuNS4wNC42OC4wNy4yLjA0LjM1LjIyLjU0LjRsLjAxLjAyYS4wMy4wMyAwIDAgMCAuMDQtLjAzYy4wMy0uMjEgMC0uNDEtLjA3LS42LS4wNi0uMTUtLjIyLS4zLS4zNC0uNDFhLjIuMiAwIDAgMS0uMDQtLjA2bC0uMS0uMjJjLjYyLS4xIDEuMjUtLjExIDEuODktLjA2WiIgZmlsbD0iI0FGNkEwNiIvPjxwYXRoIGQ9Im00LjAzIDkuNy4wNy4zOWMuMDYuMjguMTQuNTUuMjYuODFsLjE0LjM0LjQ4Ljc3LjIyLjI2YTUuMDUgNS4wNSAwIDAgMCAyLjY0IDEuNjJsLjIuNDNBNS40IDUuNCAwIDAgMSAzLjYgOS40NGwuNDMuMjVaIiBmaWxsPSIjRjBENjhGIi8+PHBhdGggZD0iTTguNzQgMTAuNXYxLjM3Yy0uMDEuMDEtLjAyLjAyLS4wMS4wMy4wOC4xMy4xOS4xOC4zNS4xOGguNDFhLjA3LjA3IDAgMCAwIC4wNy0uMDdsLjAxLS44N2MuNC4yLjc4LjMgMS4xMS4zIDEuMDUuMDQgMS43LjA3IDIuNi4xN2E0Ljk4IDQuOTggMCAwIDEtNS40NCAyLjI4Yy0uOC0uMi0xLjUyLS41Ny0yLjE3LTEuMTNsLjU4LS4yMi4zNi0uMjJjLjIzLS4xNi40Ny0uNC42LS41NGwuMy0uMjYuNDUtLjQyYy4xLS4xLjQ3LS4zOC43OC0uNloiIGZpbGw9IiNBNzYzMDciLz48cGF0aCBkPSJtNC41IDExLjI0LS4xNC0uMzQuMzUtLjJjLjA1LS4wMy4xLS4wMy4xMyAwYS4xNS4xNSAwIDAgMSAuMDYuMmMtLjA4LjE0LS4yNy4yMi0uNC4zNFpNNS4yIDEyLjI3IDQuOTggMTJsMS40LTEuMmEuMTQuMTQgMCAwIDEgLjIyLjA0bC4wMi4wM2EuMTMuMTMgMCAwIDEtLjAzLjE2TDUuMiAxMi4yN1oiIGZpbGw9IiNBRjZBMDYiLz48cGF0aCBkPSJtOS42IDEzLjk4LjE2LjMyYS4wMi4wMiAwIDAgMSAwIC4wMi4wMi4wMiAwIDAgMS0uMDIuMDJjLS41Ni4xLTEuMTIuMDktMS43LS4wMmwtLjItLjQzYy42LjEzIDEuMTguMTYgMS43NS4wOVoiIGZpbGw9IiNFRUM3NUYiLz48cGF0aCBkPSJNMTAgMTIuMWMwIC4wMi0uMDIuMDQtLjA0LjA1YTEzNi41OCAxMzYuNTggMCAwIDAtLjczLjAyYy0uMi4wMS0uNDEtLjA4LS41LS4yaC45N2EuMDQuMDQgMCAwIDAgLjAzIDB2LS4wMWwuMDEtLjAxVjUuNDhjLjE3LjA1LjI2LjE2LjI2LjM0djYuMjhaTTguNzkgNi44N2MtLjM4LjIxLS44LjM2LTEuMjUuNDVhLjU2LjU2IDAgMCAxLS41MS0uMTcgMy4wMyAzLjAzIDAgMCAwIDEuNzMtLjYxaC4wMWwuMDIuMDF2LjMxWiIgZmlsbD0iIzg1NDkwRSIvPjxwYXRoIGQ9Ik05Ljc2IDUuNDd2Ni40OGwtLjAxLjAySDguNzJWNi42YzAtLjAyLS4wMiAwLS4wNC4wMS0uNDUuMzMtMS4wNS41Ni0xLjY4LjU1VjYuNWMwLS4wMSAwLS4wMy4wMi0uMDRhMy45IDMuOSAwIDAgMCAxLjgxLS45Mi4yNS4yNSAwIDAgMSAuMDktLjA1LjMuMyAwIDAgMSAuMS0uMDJoLjc0WiIgZmlsbD0idXJsKCNhKSIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0iYSIgeDE9IjguMzciIHkxPSI1LjQ3IiB4Mj0iOC4zNyIgeTI9IjExLjk4IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iI0ZFRjZDMCIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI0ZEREI0QyIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjwvc3ZnPg=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCPENDLEPENDLE.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.666Z","timestamp":1785126258666,"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 /crypto/XTVCPENDLEPENDLE.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 04:24:18 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: \"4818f279e2cf6b9939f9c7c336c9d077\"\r\nlast-modified: Fri, 24 Dec 2021 14:02:31 GMT\r\ncdn-cachedat: 08/14/2025 09:11:14\r\nx-amz-id-2: YX35GYI76djnx/b9W6efyzQ1hZrQO4P+SFg7clduoeQqzbhLI5smaBFyCQ+JWSrAn//uUoj99kY=\r\nx-amz-request-id: H05CVXNMTZK90EB4\r\nx-amz-meta-hash: 4818f279e2cf6b9939f9c7c336c9d077\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: 7d551c69d1c498ecf89d6c7aaf4769c5\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":445,"size_decoded":1174,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (445), with no line terminators","md5":"4818f279e2cf6b9939f9c7c336c9d077","sha1":"b47daac177dc6be94031d2e0ec5bbc01a3b47665","sha256":"8a3caa44b43cc7164b7185b15d71de744f3ecd98ed127812b7cf1ad988a1c45e","sha512":"0e21955690e7cbfd9d0366e84f3f20e6f9b6d92b6d4e26d8d9fd30908c083c1fca9dc622c9213577ec9c7234e9ac0cfc26859dbb7446d4ea6779d07b905ff7d3","ssdeep":"","tlshash":"a9f0a3d9b31c56188c4642f8955ef1e1505e11daad5509bdf083993533533cbb493e94","first_seen":"2023-09-03T15:04:52Z","last_seen":"2026-07-27T07:05:43.410694Z","times_seen":809,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjE4IiBoZWlnaHQ9IjE4IiB2aWV3Qm94PSIwIDAgMTggMTgiPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48ZWxsaXBzZSBjeD0iOS4zIiBjeT0iOC4wNiIgcng9IjQuNSIgcnk9IjQuNDYiIGZpbGw9IiNEQ0RCREIiLz48ZWxsaXBzZSBjeD0iNy4xMyIgY3k9IjEyLjM3IiByeD0iMi4zMyIgcnk9IjIuMzEiIGZpbGw9IiMxRTQ0ODAiLz48cGF0aCBkPSJNNS42MSAxMC42MmEyLjMzIDIuMzMgMCAwIDEgMy44NCAxLjlIOS4zYTQuNSA0LjUgMCAwIDEtMy42OS0xLjl6IiBmaWxsPSIjMTUyRTUxIi8+PHBhdGggZD0iTTcuMjggNC4wN3Y2LjYzaC0uNjJWNC40NWMuMi0uMTQuNC0uMjcuNjItLjM4eiIgZmlsbD0iIzE1MkU1MSIvPjwvc3ZnPg=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCRVN.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.708Z","timestamp":1785126258708,"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 /crypto/XTVCRVN.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 04:24:18 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: \"9df2c44999cb951e1f815907327cf09e\"\r\nlast-modified: Wed, 08 Sep 2021 09:03:22 GMT\r\ncdn-cachedat: 08/09/2025 14:31:45\r\nx-amz-id-2: bzUakP/7lvEcztCjhDN6y6XFxSdcq0dW1o3S9q22H+vXYucVd8Hp/39uT5E1oc7BNNPBIBoOliw=\r\nx-amz-request-id: 76Z34SWC3RM5C8BR\r\nx-amz-meta-hash: 9df2c44999cb951e1f815907327cf09e\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: 1a04bfa211e9c1ab3a561d14aa0301bf\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":807,"size_decoded":1370,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (807), with no line terminators","md5":"9df2c44999cb951e1f815907327cf09e","sha1":"56143a45b490f42fd31f682db31fa7f25d8bba27","sha256":"10703afa0032e5a3cb66e3db0e511155cff2a7c2fd8d520416de57c5cf664184","sha512":"0b26fe4af34a5e6a7fb518f0aeaf97cdf083ec470af12b6094fd42e94b44fbb517c6c1f2b30a7103267da607d3a83da0294d9ff3dbd00ad49a6534e7480c985c","ssdeep":"","tlshash":"0a0146da4766118498c78d79aeb45f652027a0ec926fd5d5f080a80c24576cffc21a18","first_seen":"2023-05-02T00:44:00Z","last_seen":"2026-07-27T05:33:43.418704Z","times_seen":154,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjMUUyMjJEIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTguNjUxIDEyLjczNWwtMy4xNSAyLjI2NyAyLjAwMy05LjIwOCAxLjE0NyA2Ljk0MXptLjA2OC0uMDE3bDEuOTEyLjAyMy0zLjA1NC02LjkyIDEuMTQyIDYuODk3em0yLjA5OC0uMTU3bDEuNDY4LTUuNDQ1LS41NTctLjY3NS0uOTExIDYuMTJ6bS0uNzA5LTguNTRMNy42OSA1LjY1NGwzLjUzMy0xLjE0Mi0xLjExNC0uNDl6bS0uMzA0IDBsLTEuNTAyLjA1Ny0uMjI1LjYxOSAxLjcyNy0uNjc1eiIgZmlsbD0iIzNENEZDNSIvPjxwYXRoIGQ9Ik03LjYxNiA1Ljc2bDMuMTA1IDYuOTQ3Ljk0NS02LjM3OS00LjA1LS41Njh6TTguMDc3IDQuNzdsMS45MTMtLjc0OC0yLjM3NCAxLjU5Ny40NjEtLjg0OXpNOC4zMjUgMy45ODNsLjQ4NC0uNTI0IDEuMTAyLjQ4NC0xLjU4Ni4wNHpNOC44ODIgMy4zOThsLjc2LS4zNS45NjcgMS4xMDktMS43MjctLjc2ek05LjY5MiAyLjk5OGguODFsLjQ1LjQ5LTEuMjYtLjQ5ek0xMC43ODMgNC4yM2wuMTkxLS41OC4xOTcuNzY2LS4zODgtLjE4NnoiIGZpbGw9IiNERjVENDQiLz48cGF0aCBkPSJNNy43NTEgNS42OThsMy44Ny41MjktLjM4Mi0xLjYzMUw3Ljc1IDUuNjk4ek0xMS4yNzggNC40NWwtLjI0Ny0uOTA2IDEuNzM4LjUxMi0xLjQ5LjM5M3pNMTAuOTE4IDMuNmwtLjIxNC41OC0uOS0xLjA2NCAxLjExNC40ODR6IiBmaWxsPSIjRTk5NzQ5Ii8+PC9zdmc+"}},"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":"kit-free.fontawesome.com/releases/latest/webfonts/free-fa-solid-900.woff2","fqdn":"kit-free.fontawesome.com","domain":"fontawesome.com","tld":"com"},"ip":{"addr":"104.21.51.18","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.873Z","timestamp":1785126256873,"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":"kit-free.fontawesome.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Mon, 01 Jun 2026 14:46:23 GMT","end":"Sun, 30 Aug 2026 15:46:20 GMT"},"fingerprint":{"sha1":"ED:41:63:4D:D3:55:75:C7:86:AB:46:78:DE:8D:B1:50:DC:8B:E2:06","sha256":"16:BB:EF:67:BD:36:33:D7:63:EA:C7:FC:4A:B1:D3:EF:DF:FA:C4:86:DE:DD:76:0D:51:50:AE:7E:78:44:C1:E2"}}},"request":{"raw":"GET /releases/latest/webfonts/free-fa-solid-900.woff2 HTTP/1.1\r\nHost: kit-free.fontawesome.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://besttrader.live\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://kit-free.fontawesome.com/releases/latest/css/free.min.css\r\nSec-Fetch-Dest: font\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/3 200 \r\nx-amz-id-2: MjoHu+aL2LttEpOVl3Y5FGomruRk0GjmjowYQMTAUCQyWsVawJ2XBdxnAv146HtICme8iYuvfNSRgFg2Opcr7K1Gqgq8UE+H\r\nx-amz-request-id: 7NXCNS3ET6XFSSX2\r\ndate: Mon, 27 Jul 2026 04:24:17 GMT\r\naccess-control-allow-origin: *\r\naccess-control-allow-methods: GET\r\naccess-control-max-age: 3000\r\nvary: Origin, Access-Control-Request-Headers, Access-Control-Request-Method\r\nlast-modified: Wed, 04 Aug 2021 21:26:53 GMT\r\netag: \"a9fd1225fb2cd32320e2b931dca01089\"\r\ncache-control: max-age=1800\r\naccept-ranges: bytes\r\ncontent-type: font/woff2\r\nserver-timing: cfExtPri\r\nserver: cloudflare\r\ncf-cache-status: REVALIDATED\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=ILJ0OH2O8LxTHPYYmjhJ3UwoMY5Q%2BNx%2BaX2Rbn0HFXnvBYoYB4WsNsYKmq7UxLrcez6pyiXYhXxDdsfJJ9I5ggYdfyilGW%2F%2BXwMQ4AnnUUcceZZ5T%2BUaPYxcQqPCjuJhQpHL3AgGJ%2FvkgWw%3D\"}]}\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\npriority: u=3,i=?0\r\ncf-ray: a218dfa17f4a2efa-OSL\r\nalt-svc: h3=\":443\"; ma=86400\r\ncontent-length: 78168\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Amazon Web Services","description":"Amazon Web Services (AWS) is a comprehensive cloud services platform offering compute power, database storage, content delivery and other functionality.","website":"https://aws.amazon.com/","common_platform_enumeration":"","icon":"Amazon Web Services.svg","categories":["PaaS"]},{"name":"Cloudflare","description":"Cloudflare is a web-infrastructure and website-security company, providing content-delivery-network services, DDoS mitigation, Internet security, and distributed domain-name-server services.","website":"https://www.cloudflare.com","common_platform_enumeration":"","icon":"CloudFlare.svg","categories":["CDN"]}],"data":{"size":78168,"size_decoded":79224,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 78168, version 331.-31196","md5":"a9fd1225fb2cd32320e2b931dca01089","sha1":"44ec5c6a868b4ce62350d9f040ed8e18f7a1d128","sha256":"c5dd43f53f3af822cbf17b1fb75f46192cdbd51724f277acf6cf0dacb3fd57e7","sha512":"58f45066d5738b1ef1f431eb9fc911fc9e6f61f60538f1577cd2ebe651bd8e7b87124dae36c4e66fb303fd249eba333bf41d316774201948cad056bb0e4b4f2e","ssdeep":"1536:F9ht+In45PAr81N7kP5kBLz+1Lo3hJLld77YO6R5K0l:F7kISPSDxkBsk3hJllB66k","tlshash":"817302c1226449cad42c3765c83456c3106dbab1769bd32d208e2514f3e679eff9c97e","first_seen":"2023-04-05T23:11:06Z","last_seen":"2026-07-27T06:17:20.666505Z","times_seen":14189,"resource_available":false,"data":"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"}},"time_used":275,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":270,"receive":5,"ssl":0},"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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.367Z","timestamp":1785126257367,"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-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/crypto-mkt-screener/?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 04:24:17 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: faaff9ade931d4ffb13af102f9c1f979\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-27T07:05:45.4484Z","times_seen":1029,"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":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":"s3-symbol-logo.tradingview.com/crypto/XTVCLEO.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.506Z","timestamp":1785126258506,"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 /crypto/XTVCLEO.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 04:24:18 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: \"ac76fbe5151b4b9d78563f050b53be77\"\r\nlast-modified: Wed, 08 Sep 2021 09:03:40 GMT\r\ncdn-cachedat: 08/09/2025 14:33:50\r\nx-amz-id-2: AlXyTMUCId0ojVNA8sd+zggjjTqtwe8QDZ8bzn+FHgyP/SZlZhDw63lrNPWFl1/ijfrAPzbimYY=\r\nx-amz-request-id: NA3MHVDCC4NWZCCJ\r\nx-amz-meta-hash: ac76fbe5151b4b9d78563f050b53be77\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: 997a85acfe81840444916b898de820be\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":1137,"size_decoded":1490,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1137), with no line terminators","md5":"ac76fbe5151b4b9d78563f050b53be77","sha1":"6d3d98c95dd4179f3edb770e37625a3b19703a02","sha256":"7ad3174dbdfdf96d4e0ca4fd5766195e76fab417b1e74c9188524b9fb5aad9cd","sha512":"42f209e68d1d2106a8d94d4dc68df066790a746eea1b4c359bfc3f64fc2ef80215cbacab207621285e48f846a4eb49d9a3af61384d154626f4fc81657215c6c7","ssdeep":"","tlshash":"ae21f1e1971c967bda0fc3bcad988062600e64fa69c643d8a4c49b1915291df1d05f50","first_seen":"2025-04-11T11:28:49.1745Z","last_seen":"2026-07-27T07:05:43.269195Z","times_seen":785,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSJ1cmwoI3BhaW50MF9saW5lYXIpIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTYuOTY3IDQuMjgxbDIuMTkgMS4yNDItLjQ5My44Ny0xLjY2Ny0uOTQ1TDUgNi43MTh2MS4yNDRINFY2LjE2OWwyLjk2Ny0xLjg4OHpNNiAxMC45NzdoMXYxLjgxbDEuNTEyLjk5OC4zODYtLjIzOC43MzIuNzM4LTEuMTQ4LjY3OUw2IDEzLjMyNHYtMi4zNDd6IiBmaWxsPSIjMDAwIi8+PHBhdGggZD0iTTguODcgMi45NjhMMTIgNC45NDdWOC40MmwtMiAuODU2VjhoMVY1LjQ5OEw4Ljg4NCA0LjE2bC0uNTcuMzgtLjg3OS0uNTU3TDguODcgMi45Njh6IiBmaWxsPSIjMDAwIi8+PHBhdGggZD0iTTEyLjk5NiA1LjYyTDE0IDYuNDd2My4xNmwtMS44MyAxLjE4NS0uNTQzLS44NEwxMyA5LjA4OFY2LjkzM2wtLjY1LS41NS42NDYtLjc2M3pNNS45ODQgOEg4djEuMjg3bC0xLjc1NC0uNjIzTDUgOS41NjV2MS42MzNsLjU5LjU4Mi0uNzAxLjcxMkw0IDExLjYxNnYtMi4yM0w1Ljk4NCA4eiIgZmlsbD0iIzAwMCIvPjxwYXRoIGQ9Ik05LjUgMTIuMDI3di0xLjc4aC0xdjIuMTk4bDEuODQgMS44MTIgMy42NjMtMi4xMDhWMTFoLTF2LjU3TDEwLjUgMTMuMDEybC0xLS45ODR6IiBmaWxsPSIjMDAwIi8+PHBhdGggZD0iTTEwLjk4NyAxMEg3LjAxMmwyLjAzOCAxLjMxNkwxMC45ODcgMTB6IiBmaWxsPSIjMDAwIi8+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJwYWludDBfbGluZWFyIiB4MT0iOSIgeTE9IjAiIHgyPSI5IiB5Mj0iMTguMDA1IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iI0Y2RTkzRCIvPjxzdG9wIG9mZnNldD0iLjEzIiBzdG9wLWNvbG9yPSIjRjhFMzMwIi8+PHN0b3Agb2Zmc2V0PSIuMzUiIHN0b3AtY29sb3I9IiNGN0M3MzAiLz48c3RvcCBvZmZzZXQ9Ii42NCIgc3RvcC1jb2xvcj0iI0Y1OUMyRSIvPjxzdG9wIG9mZnNldD0iLjk4IiBzdG9wLWNvbG9yPSIjRUI1RTJDIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjRUI1QzJDIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCLINEA.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.711Z","timestamp":1785126258711,"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 /crypto/XTVCLINEA.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 04:24:18 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: \"7de1846972e176ca73ec3ab937f28d45\"\r\nlast-modified: Fri, 03 Oct 2025 20:27:27 GMT\r\ncdn-cachedat: 10/05/2025 12:43:39\r\nx-amz-id-2: SaRm/IbqnZWeJA/tdCfDVxdRfS93c7s2VtoWrlIeAOZ0vM5SlpQvd1WYwcTWOiSEkUJCvhSyLLY=\r\nx-amz-request-id: S7Z95S8PE1AG35J3\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 7de1846972e176ca73ec3ab937f28d45\r\ncdn-proxyver: 1.37\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 52c8bbca2dfff541191d23d699f62ab6\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":264,"size_decoded":1119,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with no line terminators","md5":"7de1846972e176ca73ec3ab937f28d45","sha1":"fc1faf9975f958312cae713823ef011d8abac82e","sha256":"82a04f2059e8a2e3e9e0cd349e24a29ea042595f55b01b8eb3f8c9171ed262c4","sha512":"8bb158c9fb399d427384252a38406e91d4d3912a073dea92e70739ae94419a826f0e70bbabc1a6f4d7295ed5a95afe1c81176e43294e4b7fd1412153ea17bb8b","ssdeep":"","tlshash":"c5d02b7ef72cc90c7103c66895e558d1508be0d1a09a14f8b46a59b171916af6c46d58","first_seen":"2025-10-06T03:50:37.095731Z","last_seen":"2026-07-27T07:05:43.350308Z","times_seen":685,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMxOTAwNjYiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNNi40IDExLjY3SDEyVjEzSDVWNmgxLjR2NS42N1ptNS4zNS03LjE3YTEuMjUgMS4yNSAwIDEgMSAwIDIuNSAxLjI1IDEuMjUgMCAwIDEgMC0yLjVaIiBmaWxsPSIjNjFERkZGIi8+PC9zdmc+"}},"time_used":1,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":1,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%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://besttrader.live/","date":"2026-07-27T04:24:17.000Z","timestamp":1785126257000,"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-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/ticker-tape/?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://besttrader.live/\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 04:24:17 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 04:24:03 GMT\r\ncontent-security-policy: object-src 'none'; default-src 'self' https: data: blob: wss: 'unsafe-inline'; base-uri '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-JL56kB103BxwCkcSWUw6/Q=='\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 04:22:51\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 53f8e5ba44e128a67fcd83845e303dc7\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"]},{"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"]}],"data":{"size":52009,"size_decoded":17382,"mime_type":"text/html; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (17728)","md5":"90660a0ffbce04a39389a8b0093228a1","sha1":"483882b5507eaa4630957976548972d97feb6230","sha256":"0627192e57cd76aee746903061707cc1e67dcc27fb336a8e47a1bc71df4f1787","sha512":"96b1a0bfc7885064da055d16bca20b4f062125d6e9ba313d0edc944f0aaed7dc9e2277c2ae2534b03875df86b7a205ae1495b8b8b0d56619a07d3a4bc07f04f4","ssdeep":"1536:D38RteetNzfMO53tCDNogd73CWn+66ceuvRMI:D38RteetNzfMO53tCDNl+We4MI","tlshash":"a133e75388198b05dad64b057c33b203f92903a8955268947aacd8dc159ffc3f1a7bfe","first_seen":"2026-07-27T04:23:40.00995Z","last_seen":"2026-07-27T04:25:15.231154Z","times_seen":7,"resource_available":false,"data":"Cgo8IURPQ1RZUEUgaHRtbD4KPGh0bWwgbGFuZz0iZW4iIGRpcj0ibHRyIj4KPGhlYWQ+Cgk8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEsIG1pbmltdW0tc2NhbGU9MSwgbWF4aW11bS1zY2FsZT0xIj4KCTx0aXRsZT5UaWNrZXIgVGFwZSBXaWRnZXQ8L3RpdGxlPgoKCTxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly9zMy1zeW1ib2wtbG9nby50cmFkaW5ndmlldy5jb20vIiBjcm9zc29yaWdpbj4KCgk8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzk5NTI3LjE1YzVjMjVkMjdhNTZhMGRmNzcyLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzM5MDcwLjU1Y2JjN2ExZGE5NjNiMzgyOWIzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgoJPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC80NjkwNy5jNWFmOGFhN2I1MDgyYjE4NzVhNS5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8zMjgxNi4zNTVkNzViMjFhZTRiNTM0YTg0OS5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC80MzMyNS4yNTZmYTVhNTIxM2I5Y2I3MGY1Yy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8zOTA1LjY4MmU4OWVmMmRjNGM3MDQyM2M2LmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzE1OTMyLjJhNzBkMzk3YzM0ZjJlOWRlOTRmLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzUxNTA4Ljc2NzIxOTI4M2M2NWY0ZDRjYTZlLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzg0MDguZGU1MzQ2NjNlMDUyMDc1YmExMmYuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvODAwOTcuMGEzY2ZkYzI4MDI4Nzk1MjJhZWMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+Cgo8c2NyaXB0IG5vbmNlPSJKTDU2a0IxMDNCeHdDa2NTV1V3Ni9RPT0iPgoJd2luZG93LmxvY2FsZSA9ICdlbic7Cgl3aW5kb3cubGFuZ3VhZ2UgPSAnZW4nOwo8L3NjcmlwdD4KCTxzY3JpcHQgbm9uY2U9IkpMNTZrQjEwM0J4d0NrY1NXVXc2L1E9PSI+dmFyIGVudmlyb25tZW50ID0gImJhdHRsZSI7PC9zY3JpcHQ+CgoJPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC9ydW50aW1lLWVtYmVkX3RpY2tlcl90YXBlX3dpZGdldC45NjJmNzc3YzIzYjY2MGQ4MzBhNS5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvZW4uNTg2NjcuZDE1ZmM0YjVjNjMxYmI1ZWNlOGQuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkL2VuLjU3MjkxLjcyMDgzODQyMTBmN2MzM2JjY2U0LmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8xMzE0OC4zMmNjMDFkYzAxNzUxYjkxNjgyYy5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNDkyNjUuYzIwOGVmODM3OWUwNzNmOTRkMTYuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzgwNzA2LmE1OTEzYWE2YWQ2MmQ5ZGJmMDMxLmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC82OTM1Mi4zMzAxMWYyNDRiOTJlYTBiNjQyYy5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNjU4NjIuOTU3NjQ3NTJjMDlmM2YxOGY4OTAuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzUxMDMxLjUzNWYyN2I3NzZmMzk0YzdlNDNhLmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC85NDcwOC43M2QyYmNhMzcyMDdjNjdhNDFmNC5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMzU1Mi40YzU1MzUxODNiN2EwMzMwYTg5ZC5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvODA1OTQuZTg3NDQ0ZTI2ZjllMTI1NDUyMzEuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzc5MjA3LjZhNjJmYzgwM2QzZDA3ODk4OTM2LmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC83Mjc4LjczODc1OWVmMGFjMzM0NjkyNTNiLmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8yMDA2MS44NzE1YTQ1MjUxNGQ0NWQ1ZGQzYi5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvODc5MjYuOGFiOWNmZWRlMTYyOTUxMDcwMTcuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkL2VtYmVkX3RpY2tlcl90YXBlX3dpZGdldC45NjVjOTBkYzZkNDEzMTlmMTMyZC5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+PHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvcnVudGltZS1lbWJlZF90aWNrZXJfdGFwZV93aWRnZXQuOTYyZjc3N2MyM2I2NjBkODMwYTUuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC9lbi41ODY2Ny5kMTVmYzRiNWM2MzFiYjVlY2U4ZC5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkL2VuLjU3MjkxLjcyMDgzODQyMTBmN2MzM2JjY2U0LmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMTMxNDguMzJjYzAxZGMwMTc1MWI5MTY4MmMuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC80OTI2NS5jMjA4ZWY4Mzc5ZTA3M2Y5NGQxNi5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzgwNzA2LmE1OTEzYWE2YWQ2MmQ5ZGJmMDMxLmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNjkzNTIuMzMwMTFmMjQ0YjkyZWEwYjY0MmMuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC82NTg2Mi45NTc2NDc1MmMwOWYzZjE4Zjg5MC5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzUxMDMxLjUzNWYyN2I3NzZmMzk0YzdlNDNhLmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvOTQ3MDguNzNkMmJjYTM3MjA3YzY3YTQxZjQuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8zNTUyLjRjNTUzNTE4M2I3YTAzMzBhODlkLmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvODA1OTQuZTg3NDQ0ZTI2ZjllMTI1NDUyMzEuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC83OTIwNy42YTYyZmM4MDNkM2QwNzg5ODkzNi5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzcyNzguNzM4NzU5ZWYwYWMzMzQ2OTI1M2IuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8yMDA2MS44NzE1YTQ1MjUxNGQ0NWQ1ZGQzYi5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzg3OTI2LjhhYjljZmVkZTE2Mjk1MTA3MDE3LmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvZW1iZWRfdGlja2VyX3RhcGVfd2lkZ2V0Ljk2NWM5MGRjNmQ0MTMxOWYxMzJkLmpzIiBkZWZlcj48L3NjcmlwdD4KCgk8c2NyaXB0IG5vbmNlPSJKTDU2a0IxMDNCeHdDa2NTV1V3Ni9RPT0iPndpbmRvdy5mZWF0dXJlVG9nZ2xlU3RhdGUgPSB7InNob3dfZmVhdHVyZWRfaXBvIjoxLjAsImJsYWNrX2ZyaWRheV9wb3B1cCI6MS4wLCJibGFja19mcmlkYXlfbWFpbnBhZ2UiOjEuMCwiYmxhY2tfZnJpZGF5X2V4dGVuZF9saW1pdGF0aW9uIjoxLjAsImVuYWJsZV90cmFkaW5nX3JlcGxheV9mb3JfcG9pbnRfaW5kZXhlcyI6MS4wLCJpbmNyZWFzZV9tZXRhaW5mb192ZXJzaW9uIjowLjMsImNoYXJ0X2F1dG9zYXZlXzVtaW4iOjEuMCwiY2hhcnRfYXV0b3NhdmVfMzBtaW4iOjEuMCwicGVyZm9ybWFuY2VfdGVzdF9tb2RlIjoxLjAsImNoZWNrX2F1dGhfdG9rZW5fZXhwaXJhdGlvbl9vbl9ldmVyeV9yZXF1ZXN0IjoxLjAsImNoYXJ0X3N0b3JhZ2VfaGliZXJuYXRpb25fZGVsYXlfNjBtaW4iOjEuMCwic3VwcG9ydF9wZXJzaXN0ZW50X2xvZ3MiOjEuMCwibmV3X3N0b3JhZ2Vfc3Vic2NyaXB0aW9uX3VybCI6MS4wLCJyZW1vdmVfYW5jaG9yZWRfdGV4dCI6MS4wLCJlbmFibGVfc3RlcF9ieV9zdGVwX2hpbnRzX2Zvcl9kcmF3aW5ncyI6MS4wLCJwdXNoc3RyZWFtX2Jhc2ljX3RlbGVtZXRyeSI6MS4wLCJhbGxvd19icmFja2V0c19wcm9maXRfbG9zcyI6MS4wLCJlbmFibGVfdHJhZGVkX2NvbnRleHRfbGlua2luZyI6MS4wLCJvcmRlcl9jb250ZXh0X3ZhbGlkYXRpb25faW5faW5zdGFudF9tb2RlIjoxLjAsImFsZXJ0cy1vbi1mdW5kYW1lbnRhbC1tZXRyaWNzIjoxLjAsImFsZXJ0cy1ub3RpZmljYXRpb24tc2NoZWR1bGUiOjEuMCwiYWxlcnRzLXdhdGNobGlzdC1leHRlbmRlZC1ob3VycyI6MS4wLCJlbmFibGVfc3ltYm9sX2NoYW5nZV9yZXN0cmljdGlvbl9vbl93aWRnZXRzIjoxLjAsImVuYWJsZV9hc3hfc3ltYm9sX3Jlc3RyaWN0aW9uIjoxLjAsInN5bXBob255X2FsbG93X25vbl9wYXJ0aXRpb25lZF9jb29raWVfb25fb2xkX3N5bXBob255IjoxLjAsInN5bXBob255X25vdGlmaWNhdGlvbl9iYWRnZXMiOjEuMCwic3ltcGhvbnlfdXNlX2Fka19mb3JfdXBncmFkZV9yZXF1ZXN0IjoxLjAsInN5bXBob255X2VuYWJsZV90aW1lb3V0X3RyYWNraW5nIjoxLjAsInN5bXBob255X2VuYWJsZV90aW1lb3V0X3NvZnRfbGltaXQiOjEuMCwic3ltcGhvbnlfZW5hYmxlX3RpbWVvdXRfaGFyZF9saW1pdCI6MS4wLCJ0ZWxlZ3JhbV9taW5pX2FwcF9yZWR1Y2Vfc25hcHNob3RfcXVhbGl0eSI6MS4wLCJuZXdzX3N5bWJvbF9vdmVydmlld19rZXlfZmFjdHMiOjEuMCwidGltZW91dF9kamFuZ29fZGIiOjAuMTUsInRpbWVvdXRfZGphbmdvX3VzZXJzZXR0aW5nc19kYiI6MC4xNSwidGltZW91dF9kamFuZ29fY2hhcnRzX2RiIjowLjI1LCJ0aW1lb3V0X2RqYW5nb19zeW1ib2xzX2xpc3RzX2RiIjowLjI1LCJ0aW1lb3V0X2RqYW5nb19taW5kc19kYiI6MC4wNSwidGltZW91dF9kamFuZ29fbG9nZ2luZ19kYiI6MC4yNSwiZGlzYWJsZV9zZXJ2aWNlc19tb25pdG9yX21ldHJpY3MiOjEuMCwiZW5hYmxlX3NpZ25pbl9yZWNhcHRjaGEiOjEuMCwiZW5hYmxlX2lkZWFfc3BhbWRldGVjdG9ybWwiOjEuMCwiZW5hYmxlX2lkZWFfc3BhbWRldGVjdG9ybWxfY29tbWVudHMiOjEuMCwiZW5hYmxlX3NwYW1kZXRlY3Rvcm1sX2NoYXQiOjEuMCwiZW5hYmxlX21pbmRzX3NwYW1kZXRlY3Rvcm1sIjoxLjAsImJhY2tlbmQtY29ubmVjdGlvbnMtaW4tdG9rZW4iOjEuMCwib25lX2Nvbm5lY3Rpb25fd2l0aF9leGNoYW5nZXMiOjEuMCwibW9iaWxlLWFkcy1pb3MiOjEuMCwibW9iaWxlLWFkcy1hbmRyb2lkIjoxLjAsImdvb2dsZS1vbmUtdGFwLXNpZ25pbiI6MS4wLCJicmFpbnRyZWUtZ29wcm8taW4tb3JkZXItZGlhbG9nIjoxLjAsImJyYWludHJlZS1hcHBsZS1wYXkiOjEuMCwiYnJhaW50cmVlLWdvb2dsZS1wYXkiOjEuMCwiYnJhaW50cmVlLWFwcGxlLXBheS1mcm9tLWlvcy1hcHAiOjEuMCwiYnJhaW50cmVlLWFwcGxlLXBheS10cmlhbCI6MS4wLCJ0cmlwbGVhLXBheW1lbnRzIjoxLjAsImJyYWludHJlZS1nb29nbGUtcGF5LXRyaWFsIjoxLjAsImJyYWludHJlZS1vbmUtdXNkLXZlcmlmaWNhdGlvbiI6MS4wLCJicmFpbnRyZWUtM2RzLWVuYWJsZWQiOjEuMCwiYnJhaW50cmVlLTNkcy1zdGF0dXMtY2hlY2siOjEuMCwiYnJhaW50cmVlLWFkZGl0aW9uYWwtY2FyZC1jaGVja3MtZm9yLXRyaWFsIjoxLjAsImJyYWludHJlZS1pbnN0YW50LXNldHRsZW1lbnQiOjEuMCwiYnJhaW50cmVlX3JlY3VycmluZ19iaWxsaW5nX3NjaGVkdWxlcl9zdWJzY3JpcHRpb24iOjEuMCwiY2hlY2tvdXRfbWFudWFsX2NhcHR1cmVfcmVxdWlyZWQiOjEuMCwiY2hlY2tvdXQtc3Vic2NyaXB0aW9ucyI6MS4wLCJjaGVja291dF9hZGRpdGlvbmFsX2NhcmRfY2hlY2tzX2Zvcl90cmlhbCI6MS4wLCJjaGVja291dF9mYWlsX29uX2R1cGxpY2F0ZV9wYXltZW50X21ldGhvZHNfZm9yX3RyaWFsIjoxLjAsImNoZWNrb3V0X2ZhaWxfb25fYmFubmVkX2NvdW50cmllc19mb3JfdHJpYWwiOjEuMCwiY2hlY2tvdXRfZmFpbF9vbl9iYW5uZWRfYmFua19mb3JfdHJpYWwiOjEuMCwiY2hlY2tvdXRfZmFpbF9vbl9iYW5uZWRfYmFua19mb3JfcHJlbWl1bV90cmlhbCI6MS4wLCJjaGVja291dF9mYWlsX29uX2Nsb3NlX3RvX2V4cGlyYXRpb25fY2FyZF90cmlhbCI6MS4wLCJjaGVja291dF9mYWlsX29uX3ByZXBhaWRfY2FyZF90cmlhbCI6MS4wLCJyZXZvbHV0X2FkZGl0aW9uYWxfY2FyZF9jaGVja3NfZm9yX3RyaWFsIjoxLjAsInJldm9sdXRfZmFpbF9vbl9kdXBsaWNhdGVfcGF5bWVudF9tZXRob2RzX2Zvcl90cmlhbCI6MS4wLCJyZXZvbHV0X2ZhaWxfb25fYmFubmVkX2NvdW50cmllc19mb3JfdHJpYWwiOjEuMCwicmV2b2x1dF9mYWlsX29uX2Jhbm5lZF9iYW5rX2Zvcl90cmlhbCI6MS4wLCJyZXZvbHV0X2ZhaWxfb25fYmFubmVkX2JhbmtfZm9yX3ByZW1pdW1fdHJpYWwiOjEuMCwicmV2b2x1dF9mYWlsX29uX2Nsb3NlX3RvX2V4cGlyYXRpb25fY2FyZF90cmlhbCI6MS4wLCJyZXZvbHV0X2ZhaWxfb25fcHJlcGFpZF9jYXJkX3RyaWFsIjoxLjAsInJldm9sdXRfZmFpbF9vbl9jb21tZXJjaWFsX2NhcmRfdHJpYWwiOjEuMCwiZW5hYmxlX3BheW1lbnRzXzNkc19vcHRpbWl6YXRpb24iOjEuMCwiY291bnRyeV9vZl9pc3N1YW5jZV92c19iaWxsaW5nX2NvdW50cnkiOjEuMCwiY2hlY2tvdXRfc2hvd19pbnN0ZWFkX29mX2JyYWludHJlZSI6MS4wLCJjaGVja291dC0zZHMiOjEuMCwiY2hlY2tvdXQtcGF5cGFsIjoxLjAsImNoZWNrb3V0X2luY2x1ZGVfYWNjb3VudF9ob2xkZXIiOjEuMCwiY2hlY2tvdXQtcGF5cGFsLXRyaWFsIjoxLjAsImFubnVhbF90b19tb250aGx5X2Rvd25ncmFkZV9hdHRlbXB0IjoxLjAsInJhem9ycGF5X3RyaWFsXzEwX2luciI6MS4wLCJyYXpvcnBheS1jYXJkLW9yZGVyLXRva2VuLXNlY3Rpb24iOjEuMCwicmF6b3JwYXktY2FyZC1zdWJzY3JpcHRpb25zIjoxLjAsInJhem9ycGF5LXVwaS1zdWJzY3JpcHRpb25zIjoxLjAsInJhem9ycGF5LXMzLWludm9pY2UtdXBsb2FkIjoxLjAsInJhem9ycGF5X2luY2x1ZGVfZGF0ZV9vZl9iaXJ0aCI6MS4wLCJkbG9jYWwtcGF5bWVudHMiOjEuMCwicmV2b2x1dC1wYXktcGF5bWVudHMiOjEuMCwicmV2b2x1dC1jYXJkLXBheW1lbnRzIjowLjUsImRsb2NhbC1waXgtYXV0b21hdGljbyI6MS4wLCJicmFpbnRyZWVfdHJhbnNhY3Rpb25fc291cmNlIjoxLjAsInZlcnRleC10YXgiOjEuMCwidmVydGV4LXRheC1maXgiOjEuMCwicmVjZWlwdF9pbl9lbWFpbHMiOjEuMCwiYWR3b3Jkcy1hbmFseXRpY3MiOjEuMCwiY20zNjAtYW5hbHl0aWNzIjoxLjAsImRpc2FibGVfbW9iaWxlX3Vwc2VsbF9pb3MiOjEuMCwiZGlzYWJsZV9tb2JpbGVfdXBzZWxsX2FuZHJvaWQiOjEuMCwicmVxdWlyZWRfYWdyZWVtZW50X2Zvcl9ydCI6MS4wLCJjaGVja19tYXJrZXRfZGF0YV9saW1pdHMiOjEuMCwiZm9yY2VfdG9fY29tcGxldGVfZGF0YSI6MS4wLCJmb3JjZV90b191cGdyYWRlX3RvX2V4cGVydCI6MS4wLCJzZW5kX3RyYWRldmFuX2ludm9pY2UiOjEuMCwic2hvd19wZXBlX2FuaW1hdGlvbiI6MS4wLCJzZW5kX25leHRfcGF5bWVudF9pbmZvX3JlY2VpcHQiOjEuMCwic3VwcG9ydF9vdmVybmlnaHRfc2Vzc2lvbiI6MS4wLCJzY3JlZW5lci1hbGVydHMtcmVhZC1vbmx5IjoxLjAsInNjcmVlbmVyX2JvbmRfcmVzdHJpY3Rpb25fYnlfYXV0aF9lbmFibGVkIjoxLjAsInNjcmVlbmVyX3N0b2NrX2FpX2ZpbHRlcnNfZW5hYmxlZCI6MS4wLCJzY3JlZW5lcl9pc19hbGxvd2VkX3RvX2NyZWF0ZV9lbmFibGVkIjoxLjAsInNjcmVlbmVyX2JvbmRfcmF0aW5nX2NvbHVtbnNfcmVzdHJpY3Rpb25fYnlfYXV0aF9lbmFibGVkIjoxLjAsInNjcmVlbmVyX2JvbmRfc29ydGluZ19yZXN0cmljdGlvbl9ieV9hdXRoX2VuYWJsZWQiOjEuMCwic2NyZWVuZXJfYm9uZF9ncm91cF9ieV9pc2luX3Jlc3RyaWN0aW9uX2J5X2F1dGhfZW5hYmxlZCI6MS4wLCJzY3JlZW5lcl9ib25kX3N5bWJvbF9zZWFyY2hfcmVzdHJpY3Rpb25fYnlfYXV0aF9lbmFibGVkIjoxLjAsInNjcmVlbmVyX2JvbmRfcmVnaXN0cmF0aW9uX2Jhbm5lcl9yZXN0cmljdGlvbl9ieV9hdXRoX2VuYWJsZWQiOjEuMCwic2VzX3RyYWNraW5nIjoxLjAsInNlbmRfZmluYW5jaWFsX25vdGlmaWNhdGlvbnMiOjEuMCwic3BhcmtfdHJhbnNsYXRpb25zIjoxLjAsInNwYXJrX2NhdGVnb3J5X3RyYW5zbGF0aW9ucyI6MS4wLCJzcGFya190YWdzX3RyYW5zbGF0aW9ucyI6MS4wLCJwcm9fcGxhbl9pbml0aWFsX3JlZnVuZHNfZGlzYWJsZWQiOjEuMCwicHJldmlvdXNfbW9ub3Byb2R1Y3RfcHVyY2hhc2VzX3JlZnVuZHNfZW5hYmxlZCI6MS4wLCJlbmFibGVfaWRlYXNfcmVjb21tZW5kYXRpb25zIjoxLjAsImVuYWJsZV9pZGVhc19yZWNvbW1lbmRhdGlvbnNfZmVlZCI6MS4wLCJmYWlsX29uX2R1cGxpY2F0ZV9wYXltZW50X21ldGhvZHNfZm9yX3RyaWFsIjoxLjAsImV0aG9jYV9hbGVydF9ub3RpZmljYXRpb25fd2ViaG9vayI6MS4wLCJoaWRlX3N1c3BpY2lvdXNfdXNlcnNfaWRlYXMiOjEuMCwiZGlzYWJsZV9wdWJsaXNoX3N0cmF0ZWd5X3JhbmdlX2Jhc2VkX2NoYXJ0IjoxLjAsInJlc3RyaWN0X3NpbXVsdGFuZW91c19yZXF1ZXN0cyI6MS4wLCJsb2dpbl9mcm9tX25ld19kZXZpY2VfZW1haWwiOjEuMCwic3NyX3dvcmtlcl9ub3dhaXQiOjEuMCwiYnJva2VyX0ExQ0FQSVRBTCI6MS4wLCJicm9rZXJfQUNUSVZUUkFERVMiOjEuMCwiYnJva2VyX0FMQ0hFTVlNQVJLRVRTIjoxLjAsImJyb2tlcl9BTElDRUJMVUUiOjEuMCwiaGlkZV9BTE9SX29uX2lvcyI6MS4wLCJoaWRlX0FMT1Jfb25fYW5kcm9pZCI6MS4wLCJoaWRlX0FMT1Jfb25fbW9iaWxlX3dlYiI6MS4wLCJhbG9yLWJyb2tlcnMtc2lkZS1tYWludGVuYW5jZSI6MS4wLCJicm9rZXJfQUxQQUNBIjoxLjAsImJyb2tlcl9BTFJBTVoiOjEuMCwiYnJva2VyX0FNUCI6MS4wLCJicm9rZXJfQU5HRUxPTkUiOjEuMCwiYnJva2VyX0FWQV9GVVRVUkVTIjoxLjAsIkFWQV9GVVRVUkVTX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwiYnJva2VyX0IyUFJJTUUiOjEuMCwiYnJva2VyX0JBSkFKIjoxLjAsImJyb2tlcl9CRVlPTkQiOjEuMCwiYnJva2VyX0JJTkFOQ0UiOjEuMCwiZW5hYmxlX2JpbmFuY2VhcGlzX2Jhc2VfdXJsIjoxLjAsImJyb2tlcl9CSU5HQk9OIjoxLjAsImJyb2tlcl9CSVRBWlpBIjoxLjAsImJyb2tlcl9CSVRHRVQiOjEuMCwiYnJva2VyX0JJVE1FWCI6MS4wLCJicm9rZXJfQklUU1RBTVAiOjEuMCwiYnJva2VyX0JMQUNLQlVMTCI6MS4wLCJicm9rZXJfQkxVRUJFUlJZTUFSS0VUUyI6MS4wLCJicm9rZXJfQlRDQyI6MS4wLCJicm9rZXJfQllCSVQiOjEuMCwiYnJva2VyX0NBUElUQUxDT00iOjEuMCwiYnJva2VyX0NBUFRSQURFUiI6MS4wLCJDQVBUUkFERVJfc2VwYXJhdGVfaW50ZWdyYXRpb25fbWlncmF0aW9uX3dhcm5pbmciOjEuMCwiYnJva2VyX0NGSSI6MS4wLCJicm9rZXJfQ0dTSSI6MS4wLCJicm9rZXJfQ0lUWUlOREVYIjoxLjAsImNpdHlpbmRleF9zcHJlYWRiZXR0aW5nIjoxLjAsIkNMRUFSU1RSRUVUX2JldGEiOjEuMCwiYnJva2VyX0NNQ01BUktFVFMiOjEuMCwiYnJva2VyX0NPQlJBVFJBRElORyI6MS4wLCJicm9rZXJfQ09JTkJBU0UiOjEuMCwiY29pbmJhc2VfcmVxdWVzdF9zZXJ2ZXJfbG9nZ2VyIjoxLjAsImNvaW5iYXNlX2NhbmNlbF9wb3NpdGlvbl9icmFja2V0cyI6MS4wLCJicm9rZXJfQ09JTkpBUiI6MS4wLCJDT0lOSkFSX2JldGEiOjEuMCwiYnJva2VyX0NPSU5TV0lUQ0giOjEuMCwiYnJva2VyX0NPSU5XIjoxLjAsImJyb2tlcl9DT0xNRVgiOjEuMCwiaGlkZV9DUUdfb25faW9zIjoxLjAsImhpZGVfQ1FHX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9DUUdfb25fbW9iaWxlX3dlYiI6MS4wLCJjcWctcmVhbHRpbWUtYmFuZHdpZHRoLWxpbWl0IjoxLjAsImJyb2tlcl9DUllQVE9DT00iOjEuMCwiaGlkZV9DVVJSRU5DWUNPTV9vbl9pb3MiOjEuMCwiaGlkZV9DVVJSRU5DWUNPTV9vbl9hbmRyb2lkIjoxLjAsImhpZGVfQ1VSUkVOQ1lDT01fb25fbW9iaWxlX3dlYiI6MS4wLCJicm9rZXJfQ1hNIjoxLjAsImJyb2tlcl9EQU9MIjoxLjAsImJyb2tlcl9EQVJXSU5FWCI6MS4wLCJEQVJXSU5FWF9iZXRhIjoxLjAsImJyb2tlcl9ERUxUQSI6MS4wLCJicm9rZXJfREVSQVlBSCI6MS4wLCJicm9rZXJfREVSSVYiOjEuMCwiYnJva2VyX0RIQU4iOjEuMCwiYnJva2VyX0ROU0UiOjEuMCwiYnJva2VyX0RPUk1BTiI6MS4wLCJoaWRlX0RVTU1ZX29uX2lvcyI6MS4wLCJoaWRlX0RVTU1ZX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9EVU1NWV9vbl9tb2JpbGVfd2ViIjoxLjAsImJyb2tlcl9FQVNZTUFSS0VUUyI6MS4wLCJicm9rZXJfRUNPVkFMT1JFUyI6MS4wLCJicm9rZXJfRURHRUNMRUFSIjoxLjAsImVkZ2VjbGVhcl9vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsImJyb2tlcl9FSUdIVENBUCI6MS4wLCJicm9rZXJfRVJSQU5URSI6MS4wLCJicm9rZXJfRVNBRlgiOjEuMCwiRklERUxJVFlfYmV0YSI6MS4wLCJGSURFTElUWV91c19yZWxlYXNlIjowLjI1LCJmaWRlbGl0eV9zZWN1cml0eV90b2tlbiI6MS4wLCJicm9rZXJfRk9SRVhDT00iOjEuMCwiZm9yZXhjb21fc2Vzc2lvbl92MiI6MS4wLCJicm9rZXJfRlBNQVJLRVRTIjoxLjAsImhpZGVfRlRYX29uX2lvcyI6MS4wLCJoaWRlX0ZUWF9vbl9hbmRyb2lkIjoxLjAsImhpZGVfRlRYX29uX21vYmlsZV93ZWIiOjEuMCwiZnR4X3JlcXVlc3Rfc2VydmVyX2xvZ2dlciI6MS4wLCJicm9rZXJfRlVTSU9OTUFSS0VUUyI6MS4wLCJmeGNtX3NlcnZlcl9sb2dnZXIiOjEuMCwiYnJva2VyX0ZYQ00iOjEuMCwiaGlkZV9GWE9QRU5fb25faW9zIjoxLjAsImhpZGVfRlhPUEVOX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9GWE9QRU5fb25fbW9iaWxlX3dlYiI6MS4wLCJicm9rZXJfRlhQUk8iOjEuMCwiYnJva2VyX0ZYVEYiOjEuMCwiYnJva2VyX0ZZRVJTIjoxLjAsImJyb2tlcl9HQVRFIjoxLjAsImJyb2tlcl9HQkVCUk9LRVJTIjoxLjAsImdlbWluaS1icm9rZXJzLXNpZGUtbWFpbnRlbmFuY2UiOjEuMCwiYnJva2VyX0dFTklBTElOVkVTVElNRU5UT1MiOjEuMCwiaGlkZV9HTE9CQUxQUklNRV9vbl9pb3MiOjEuMCwiaGlkZV9HTE9CQUxQUklNRV9vbl9hbmRyb2lkIjoxLjAsImhpZGVfR0xPQkFMUFJJTUVfb25fbW9iaWxlX3dlYiI6MS4wLCJnbG9iYWxwcmltZS1icm9rZXJzLXNpZGUtbWFpbnRlbmFuY2UiOjEuMCwiYnJva2VyX0dPTUFSS0VUUyI6MS4wLCJicm9rZXJfR09UUkFERSI6MS4wLCJnb3RyYWRlX2VuYWJsZV9zdHJlYW1pbmdfZW5kcG9pbnRzIjoxLjAsImJyb2tlcl9IRVJFTllBIjoxLjAsImhpZGVfSFRYX29uX2lvcyI6MS4wLCJoaWRlX0hUWF9vbl9hbmRyb2lkIjoxLjAsImhpZGVfSFRYX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX0lCS1IiOjEuMCwiY2hlY2tfaWJrcl9zaWRlX21haW50ZW5hbmNlIjoxLjAsImlia3JfcmVxdWVzdF9zZXJ2ZXJfbG9nZ2VyIjoxLjAsImlia3JfcGFyYWxsZWxfcHJvdmlkZXJfaW5pdGlhbGl6YXRpb24iOjEuMCwiaWJrcl93c19hY2NvdW50X3N1bW1hcnkiOjEuMCwiaWJrcl93c19zZXJ2ZXJfbG9nZ2VyIjoxLjAsImlia3Jfc3Vic2NyaWJlX3RvX29yZGVyX3VwZGF0ZXNfZmlyc3QiOjEuMCwiaWJrcl93c19hY2NvdW50X2xlZGdlciI6MS4wLCJicm9rZXJfSUJST0tFUiI6MS4wLCJicm9rZXJfSUNNQVJLRVRTIjoxLjAsImJyb2tlcl9JQ01BUktFVFNfQVNJQyI6MS4wLCJicm9rZXJfSUNNQVJLRVRTX0VVIjoxLjAsImJyb2tlcl9JRyI6MS4wLCJicm9rZXJfSU5EU1RPQ0tTIjoxLjAsImJyb2tlcl9JTkZPWUFUSVJJTSI6MS4wLCJicm9rZXJfSU5OT1ZFU1RYIjoxLjAsImJyb2tlcl9JTlRFUkFDVElWRUlMIjoxLjAsImJyb2tlcl9JTlZFU1RSQURFIjoxLjAsIklOVkVTVFJBREVfYmV0YSI6MS4wLCJicm9rZXJfSVJPTkJFQU0iOjEuMCwiaGlkZV9JUk9OQkVBTV9DUUdfb25faW9zIjoxLjAsImhpZGVfSVJPTkJFQU1fQ1FHX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9JUk9OQkVBTV9DUUdfb25fbW9iaWxlX3dlYiI6MS4wLCJicm9rZXJfS0lXT09NIjoxLjAsImtpd29vbV91c2Vfc2VwYXJhdGVfc3RyZWFtaW5nX3VybCI6MS4wLCJicm9rZXJfS09UQUsiOjEuMCwiaGlkZV9LT1RBS19vbl9pb3MiOjEuMCwiaGlkZV9LT1RBS19vbl9hbmRyb2lkIjoxLjAsImhpZGVfS09UQUtfb25fbW9iaWxlX3dlYiI6MS4wLCJicm9rZXJfS1JBS0VOIjoxLjAsImhpZGVfS1JBS0VOX29uX2lvcyI6MS4wLCJoaWRlX0tSQUtFTl9vbl9hbmRyb2lkIjoxLjAsIktSQUtFTl9iZXRhIjoxLjAsImtyYWtlbl9yZXF1ZXN0X3NlcnZlcl9sb2dnZXIiOjEuMCwiYnJva2VyX0tTRUNVUklUSUVTIjoxLjAsImJyb2tlcl9MSUJFUkFUT1IiOjEuMCwiYnJva2VyX01FWEMiOjEuMCwiYnJva2VyX01FWEVNIjoxLjAsImJyb2tlcl9NSURBUyI6MS4wLCJoaWRlX01PQ0tCUk9LRVJfb25faW9zIjoxLjAsImhpZGVfTU9DS0JST0tFUl9vbl9hbmRyb2lkIjoxLjAsImhpZGVfTU9DS0JST0tFUl9vbl9tb2JpbGVfd2ViIjoxLjAsImhpZGVfTU9DS0JST0tFUl9JTVBMSUNJVF9vbl9pb3MiOjEuMCwiaGlkZV9NT0NLQlJPS0VSX0lNUExJQ0lUX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9NT0NLQlJPS0VSX0lNUExJQ0lUX29uX21vYmlsZV93ZWIiOjEuMCwiaGlkZV9NT0NLQlJPS0VSX0NPREVfb25faW9zIjoxLjAsImhpZGVfTU9DS0JST0tFUl9DT0RFX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9NT0NLQlJPS0VSX0NPREVfb25fbW9iaWxlX3dlYiI6MS4wLCJicm9rZXJfTU9PTU9PIjoxLjAsImJyb2tlcl9NT1RJTEFMT1NXQUwiOjEuMCwiYnJva2VyX05JTkpBVFJBREVSIjoxLjAsImJyb2tlcl9PQU5EQSI6MS4wLCJvYW5kYV9zZXJ2ZXJfbG9nZ2luZyI6MS4wLCJvYW5kYV9vYXV0aF9tdWx0aXBsZXhpbmciOjEuMCwiYnJva2VyX09LWCI6MS4wLCJicm9rZXJfT1BPRklOQU5DRSI6MS4wLCJicm9rZXJfT1BUSU1VUyI6MS4wLCJicm9rZXJfT1NNQU5MSSI6MS4wLCJicm9rZXJfT1NNQU5MSUZYIjoxLjAsInBhcGVyX2ZvcmNlX2Nvbm5lY3RfcHVzaHN0cmVhbSI6MS4wLCJwYXBlcl9zdWJhY2NvdW50X2N1c3RvbV9jdXJyZW5jeSI6MS4wLCJwYXBlcl9vdXRzaWRlX3J0aCI6MS4wLCJicm9rZXJfUEFZVE0iOjEuMCwiYnJva2VyX1BFUFBFUlNUT05FIjoxLjAsImJyb2tlcl9QSEVNRVgiOjEuMCwiYnJva2VyX1BISUxMSVBDQVBJVEFMX1RSIjoxLjAsImJyb2tlcl9QSElMTElQTk9WQSI6MS4wLCJicm9rZXJfUExVUzUwMCI6MS4wLCJwbHVzNTAwX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwiUExVUzUwMFVTX2JldGEiOjEuMCwiYnJva2VyX1BVUlBMRVRSQURJTkciOjEuMCwiYnJva2VyX1FVRVNUUkFERSI6MS4wLCJicm9rZXJfUkFWQUJVUlNBVElMIjoxLjAsIlJBVkFCVVJTQVRJTF9iZXRhIjoxLjAsImJyb2tlcl9SSVlBRENBUElUQUwiOjEuMCwiYnJva2VyX1JPQk9NQVJLRVRTIjoxLjAsImJyb2tlcl9SRVBMQVlCUk9LRVIiOjEuMCwiYnJva2VyX1NBTVVFTCI6MS4wLCJicm9rZXJfU0FYT0JBTksiOjEuMCwiYnJva2VyX1NIQVJFTUFSS0VUIjoxLjAsImJyb2tlcl9TS0lMTElORyI6MS4wLCJicm9rZXJfU1BSRUFERVgiOjEuMCwiYnJva2VyX1NXSVNTUVVPVEUiOjEuMCwiYnJva2VyX1NUT05FWCI6MS4wLCJicm9rZXJfVEFTVFlGWCI6MS4wLCJicm9rZXJfVEFTVFlUUkFERSI6MS4wLCJicm9rZXJfVEhJTktNQVJLRVRTIjoxLjAsInRoaW5rbWFya2V0c19hY2NvdW50X2RhdGFfc3RyZWFtaW5nIjoxLjAsImJyb2tlcl9USUNLTUlMTCI6MS4wLCJoaWRlX1RJR0VSX29uX2lvcyI6MS4wLCJoaWRlX1RJR0VSX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9USUdFUl9vbl9tb2JpbGVfd2ViIjoxLjAsImJyb2tlcl9UUkFERU5BVElPTiI6MS4wLCJicm9rZXJfVFJBREVTVEFUSU9OIjoxLjAsInRyYWRlc3RhdGlvbl9yZXF1ZXN0X3NlcnZlcl9sb2dnZXIiOjEuMCwidHJhZGVzdGF0aW9uX2FjY291bnRfZGF0YV9zdHJlYW1pbmciOjEuMCwidHJhZGVzdGF0aW9uX3N0cmVhbWluZ19zZXJ2ZXJfbG9nZ2luZyI6MS4wLCJicm9rZXJfVFJBREVaRVJPIjoxLjAsImJyb2tlcl9UUkFESUVSIjoxLjAsImJyb2tlcl9UUkFESUVSX0ZVVFVSRVMiOjEuMCwidHJhZGllcl9mdXR1cmVzX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwiYnJva2VyX1RSQURPVkFURSI6MS4wLCJoaWRlX1RSQURVX29uX2lvcyI6MS4wLCJoaWRlX1RSQURVX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9UUkFEVV9vbl9tb2JpbGVfd2ViIjoxLjAsInRyYWR1X3NwcmVhZF9iZXQiOjEuMCwiYnJva2VyX1RSSVZFIjoxLjAsImJyb2tlcl9WQU5UQUdFIjoxLjAsImJyb2tlcl9WRUxPQ0lUWSI6MS4wLCJicm9rZXJfV0VCVUxMIjoxLjAsImJyb2tlcl9XRUJVTExKQVBBTiI6MS4wLCJicm9rZXJfV0VCVUxMUEFZIjoxLjAsImJyb2tlcl9XRUJVTExVSyI6MS4wLCJicm9rZXJfV0hJVEVCSVQiOjEuMCwiYnJva2VyX1dIU0VMRklOVkVTVCI6MS4wLCJicm9rZXJfV0hTRUxGSU5WRVNUX0ZVVFVSRVMiOjEuMCwiV0hTRUxGSU5WRVNUX0ZVVFVSRVNfb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJicm9rZXJfWENVQkUiOjEuMCwiYnJva2VyX1lMRyI6MS4wLCJicm9rZXJfaWRfc2Vzc2lvbiI6MS4wLCJkaXNhbGxvd19jb25jdXJyZW50X3Nlc3Npb25zIjoxLjAsInVzZV9jb2RlX2Zsb3dfdjJfcHJvdmlkZXIiOjEuMCwidXNlX2NvZGVfZmxvd192Ml9wcm92aWRlcl9mb3JfdW50ZXN0ZWRfYnJva2VycyI6MS4wLCJtb2JpbGVfdHJhZGluZ193ZWIiOjEuMCwibW9iaWxlX3RyYWRpbmdfaW9zIjoxLjAsIm1vYmlsZV90cmFkaW5nX2FuZHJvaWQiOjEuMCwiY29udGludW91c19mcm9udF9jb250cmFjdF90cmFkaW5nIjoxLjAsInRyYWRpbmdfcmVxdWVzdF9zZXJ2ZXJfbG9nZ2VyIjoxLjAsInJlc3RfcmVxdWVzdF9zZXJ2ZXJfbG9nZ2VyIjoxLjAsIm9hdXRoMl9jb2RlX2Zsb3dfcHJvdmlkZXJfc2VydmVyX2xvZ2dlciI6MS4wLCJyZXN0X29hdXRoMl9jb2RlX2Zsb3dfbXVsdGlwbGV4aW5nIjoxLjAsInJlc3RfbG9nb3V0X29uXzQyOSI6MS4wLCJyZXZpZXdfcG9wdXBfb25fY2hhcnQiOjEuMCwic2hvd19jb25jdXJyZW50X2Nvbm5lY3Rpb25fd2FybmluZyI6MS4wLCJlbmFibGVfdHJhZGluZ19zZXJ2ZXJfbG9nZ2VyIjoxLjAsIm9yZGVyX3ByZXNldHMiOjEuMCwib3JkZXJfdGlja2V0X3Jlc2l6YWJsZV9kcmF3ZXJfb24iOjEuMCwicmVzdF91c2VfYXN5bmNfbWFwcGVyIjoxLjAsInBhcGVyX2NvbXBldGl0aW9uX2Jhbm5lcl9zaG93X3BybyI6MS4wLCJwYXBlcl9jb21wZXRpdGlvbl9zdGFydGVkX2RpYWxvZyI6MS4wLCJwYXBlcl9jb21wZXRpdGlvbl9zdGFydGVkX2RpYWxvZ19zaG93X3BybyI6MS4wLCJwYXBlcl9jb21wZXRpdGlvbl9sZWFkZXJib2FyZCI6MS4wLCJwYXBlcl9jb21wZXRpdGlvbl9wcmV2aW91c19jb21wZXRpdGlvbnMiOjEuMCwiYW1wX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwiYmx1ZWxpbmVfb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJkb3JtYW5fb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJpcm9uYmVhbV9vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsIm9wdGltdXNfb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJzdG9uZXhfb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJ5bGdfb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJ0cmFkaW5nX2dlbmVyYWxfZXZlbnRzX2dhX3RyYWNraW5nIjoxLjAsInJlcGxheV9yZXN1bHRfc2hhcmluZyI6MS4wLCJyZXBsYXlfdHJhZGluZ19icmFja2V0cyI6MS4wLCJoaWRlX2FsbF9icm9rZXJzX2J1dHRvbl9pbl9pb3NfYXBwIjoxLjAsImZvcmNlX21heF9hbGxvd2VkX3B1bGxpbmdfaW50ZXJ2YWxzIjoxLjAsInBhcGVyX2RlbGF5X3RyYWRpbmciOjEuMCwiZW5hYmxlX2ZpcnN0X3RvdWNoX2lzX3NlbGVjdGlvbiI6MS4wLCJjbGVhcl9wcm9qZWN0X29yZGVyX29uX29yZGVyX3RpY2tldF9jbG9zZSI6MS4wLCJlbmFibGVfbmV3X2JlaGF2aW9yX29mX2NvbmZpcm1fYnV0dG9uc19vbl9tb2JpbGUiOjEuMCwicmVuZXdfdG9rZW5fcHJlZW1wdGlvbl8zMCI6MS4wLCJkb19ub3Rfb3Blbl9vdF9mcm9tX3BsdXNfYnV0dG9uIjoxLjAsImJyb2tlcl9zaWRlX3Byb21vdGlvbiI6MS4wLCJlbmFibGVfbmV3X3RyYWRpbmdfbWVudV9zdHJ1Y3R1cmUiOjEuMCwicXVpY2tfdHJhZGluZ19wYW5lbCI6MS4wLCJwYXBlcl9vcmRlcl9jb25maXJtYXRpb25fZGlhbG9nIjoxLjAsInBhcGVyX211bHRpcGxlX2xldmVsc19lbmFibGVkIjoxLjAsInBhcGVyX21hcmdpbl9jb250cm9sIjoxLjAsImVuYWJsZV9zZWdtZW50YXRpb25fcGFwZXJfdHJhZGluZyI6MS4wLCJlbmFibGVfY2hhcnRfYWRhcHRpdmVfdHBzbF9idXR0b25zX29uX21vYmlsZSI6MS4wLCJlbmFibGVfbWFya2V0X3Byb2plY3Rfb3JkZXIiOjEuMCwiZW5hYmxlX3N5bWJvbHNfcG9wdWxhcml0eV9zaG93aW5nIjoxLjAsImVuYWJsZV90cmFuc2xhdGlvbnNfczNfdXBsb2FkIjoxLjAsImV0Zl9mdW5kX2Zsb3dzX29ubHlfZGF5c19yZXNvbHV0aW9ucyI6MS4wLCJkaXNhYmxlX3Nub3dwbG93X3BsYXRmb3JtX2V2ZW50cyI6MS4wLCJub3RpZnlfaWRlYV9tb2RzX2Fib3V0X2ZpcnN0X3B1YmxpY2F0aW9uIjoxLjAsImVuYWJsZV93YWZfdHJhY2tpbmciOjEuMCwibmV3X2Vycm9yc19mbG93IjoxLjAsInF1b3RlLXRva2VuLWZpbHRlci1vd24tc2NyaXB0cy1ieS1hY2Nlc3MiOjEuMCwia2VlcF9pbmRpY2F0b3JzX3NlYXJjaF9zdGF0ZSI6MS4wLCJrZWVwX2luZGljYXRvcnNfdGFiX3Njcm9sbF9zdGF0ZSI6MS4wLCJjb25maWd1cmFibGVfc2VhcmNoX2FuZF9maWx0cmF0aW9uIjoxLjAsInBpbmVfZWRpdG9yX3dyYXBfb25fbGluZV9zcGxpdCI6MS4wLCJzeW1ib2xfc2VhcmNoX2NvdW50cnlfc291cmNlcyI6MS4wLCJ3YXRjaGxpc3RzX2RpYWxvZ19zY3JvbGxfdG9fYWN0aXZlIjoxLjAsImJvdHRvbV9wYW5lbF90cmFja19ldmVudHMiOjEuMCwic25vd3Bsb3dfYmVhY29uX2ZlYXR1cmUiOjEuMCwic2hvd19kYXRhX3Byb2JsZW1zX2luX2hlbHBfY2VudGVyIjoxLjAsImVuYWJsZV9hcHBsZV9kZXZpY2VfY2hlY2siOjEuMCwiZW5hYmxlX2FwcGxlX2ludHJvX29mZmVyX3NpZ25hdHVyZSI6MS4wLCJlbmFibGVfYXBwbGVfcHJvbW9fb2ZmZXJfc2lnbmF0dXJlX3YyIjoxLjAsImVuYWJsZV9hcHBsZV9wcm9tb19zaWduYXR1cmUiOjEuMCwiZW5hYmxlX3B1c2hfbm90aWZpY2F0aW9uc19hbmRyb2lkIjoxLjAsImVuYWJsZV9wdXNoX25vdGlmaWNhdGlvbnNfaW9zIjoxLjAsImVuYWJsZV9tYW50aWNvcmVfY2x1c3RlciI6MS4wLCJlbmFibGVfcHVzaHN0cmVhbV9hdXRoIjoxLjAsImVuYWJsZV9lbnZveV9wcm94eSI6MS4wLCJlbmFibGVfZW52b3lfcHJveHlfcGFwZXJ0cmFkaW5nIjoxLjAsImVuYWJsZV9lbnZveV9wcm94eV9zY3JlZW5lciI6MS4wLCJvcHRpb25zX3JlZHVjZV9wb2xsaW5nX2ludGVydmFsIjoxLjAsIm9wdGlvbnNfYnVpbGRlcl9ncm91cF9hY3Rpb25zIjoxLjAsIm9wdGlvbnNfY2hhaW5fc2lnbWFfZmlsdGVyIjoxLjAsIm9wdGlvbnNfYnJva2VyX3N0cmF0ZWdpZXMiOjEuMCwic2hvd190b2FzdF9hYm91dF91bnJlYWRfbWVzc2FnZSI6MS4wLCJlbmFibGVfcGFydG5lcl9wYXlvdXQiOjEuMCwiZW5hYmxlX2VtYWlsX2NoYW5nZV9sb2dnaW5nIjoxLjAsImVuYWJsZV9lbWFpbF9vbl9wYXJ0bmVyX3N0YXR1c19jaGFuZ2UiOjEuMCwiZW5hYmxlX3BhcnRuZXJfcHJvZ3JhbV9hcHBseSI6MS4wLCJlbmFibGVfcGFydG5lcl9wcm9ncmFtIjoxLjAsImNvbXByZXNzX2NhY2hlX2RhdGEiOjEuMCwibmV3c19lbmFibGVfc3RyZWFtaW5nIjoxLjAsIm5ld3Nfc2NyZWVuZXJfcGFnZV9jbGllbnQiOjEuMCwiZW5hYmxlX2RlY2xhcmF0aW9uX3BvcHVwX29uX2xvYWQiOjEuMCwic2hvd19kYXRhX2JvbmRzX2ZyZWVfdXNlcnMiOjEuMCwiZW5hYmxlX21vZGVybl9yZW5kZXJfbW9kZSI6MS4wLCJlbmFibGVfcHJvZl9wb3B1cF9mcmVlIjoxLjAsImlvc19hcHBfbmV3c19hbmRfbWluZHMiOjEuMCwiZG9fbm90X2Rpc2Nsb3NlX3Bob25lX29jY3VwYW5jeSI6MS4wLCJlbmFibGVfcmVkaXJlY3RfdG9fd2lkZ2V0X2RvY3VtZW50YXRpb25fb2ZfYW55X2xvY2FsaXphdGlvbiI6MS4wLCJuZXdzX2VuYWJsZV9zdHJlYW1pbmdfaGliZXJuYXRpb24iOjEuMCwibmV3c19zdHJlYW1pbmdfaGliZXJuYXRpb25fZGVsYXlfMTBtaW4iOjEuMCwicGFzc19yZWNvdmVyeV9zZWFyY2hfaGlkZV9pbmZvIjoxLjAsIm5ld3NfZW5hYmxlX3N0cmVhbWluZ19vbl9zY3JlZW5lciI6MS4wLCJlbmFibGVfZm9yY2VkX2VtYWlsX2NvbmZpcm1hdGlvbiI6MS4wLCJzaG93X2dpZnRfYnV0dG9uIjoxLjAsImFkZHJlc3NfdmFsaWRhdGlvbl9lbmFibGVkIjoxLjAsImRpc2FibGVfdW52ZXJpZmllZF9hZGRyZXNzIjoxLjAsImdlbmVyYXRlX2ludm9pY2VfbnVtYmVyX2J5X2NvdW50cnkiOjEuMCwic2hvd19mYXZvcml0ZV9sYXlvdXRzIjoxLjAsImVuYWJsZV9zb2NpYWxfYXV0aF9jb25maXJtYXRpb24iOjEuMCwiZW5hYmxlX2FkX2Jsb2NrX2RldGVjdCI6MS4wLCJ0dmRfbmV3X3RhYl9saW5raW5nIjoxLjAsInR2ZF90aW1lX2FuZF9kYXRlX3JhbmdlX2xpbmtpbmciOjEuMCwidXNlX2Jyb3dzZXJfc2Vzc2lvbl9zdG9yYWdlIjoxLjAsInVzZV9kZXNrdG9wX3Nlc3Npb25fc3RvcmFnZSI6MS4wLCJ3cm9uZ19hY2NvdW50X2RpYWxvZ19wcmltYXJ5X3N3aXRjaCI6MS4wLCJlbmFibGVfbGluZ3VhX2xhbmdfY2hlY2siOjEuMCwiZ2V0X3NhdmVkX2FjdGl2ZV9saXN0X2JlZm9yZV9nZXR0aW5nX2FsbF9saXN0cyI6MS4wLCJ3YXRjaGxpc3RfYWRkX3NvdXJjZV9wYXJhbSI6MS4wLCJzaG93X3JlZmVycmFsX25vdGlmaWNhdGlvbl9kaWFsb2ciOjEuMCwic2V0X25ld19ibGFja19jb2xvciI6MS4wLCJuZXdzX3VzZV9uZXdzX21lZGlhdG9yIjoxLjAsImFsbG93X3RyYWlsaW5nX3doaXRlc3BhY2VfaW5fbnVtYmVyX3Rva2VuIjoxLjAsInJlc3RyaWN0X3B3bmVkX3Bhc3N3b3JkX3NldCI6MS4wLCJub3RpZl9zZXR0aW5nc19lbmFibGVfbmV3X3N0b3JlIjoxLjAsIm5vdGlmX3NldHRpbmdzX2Rpc2FibGVfb2xkX3N0b3JlX3dyaXRlIjoxLjAsIm5vdGlmX3NldHRpbmdzX2Rpc2FibGVfb2xkX3N0b3JlX3JlYWQiOjEuMCwiY2hlY2tvdXQtZW5hYmxlLXJpc2tzZGsiOjEuMCwiY2hlY2tvdXQtZW5hYmxlLXJpc2tzZGstZm9yLWluaXRpYWwtcHVyY2hhc2UiOjEuMCwiZW5hYmxlX21ldGFkZWZlbmRlcl9jaGVja19mb3JfYWdyZWVtZW50IjoxLjAsInNob3dfZG93bmxvYWRfeWllbGRfY3VydmVzX2RhdGEiOjEuMCwibW92ZV9rZXlfdGVub3JzX3RvX3NldHRpbmdzIjoxLjAsInNob3dfeWllbGRfY3VydmVzX21hcCI6MS4wLCJkaXNhYmxlX3dpZGdldGJhcl9pbl9hcHBzIjoxLjAsImhpZGVfcHVibGljYXRpb25zX29mX2Jhbm5lZF91c2VycyI6MS4wLCJlbmFibGVfc3VtbWFyeV91cGRhdGVzX2Zyb21fY2hhcnRfc2Vzc2lvbiI6MS4wLCJzaG93X25ld3NfZmxvd190b29sX3JpZ2h0X2JhciI6MS4wLCJlbmFibGVfY2hhcnRfc2F2aW5nX3N0YXRzIjoxLjAsImVuYWJsZV9zYXZpbmdfc2FtZV9jaGFydF9yYXRlX2xpbWl0IjoxLjAsIm5ld3NfYWxlcnRzX2VuYWJsZWQiOjEuMCwibmV3c19tdWx0aXBsZV9hbGVydHNfZW5hYmxlZCI6MS4wLCJyZWZ1bmRfdW52b2lkYWJsZV9jb3Vwb25zX2VuYWJsZWQiOjEuMCwiZW5hYmxlX3Nub3dwbG93X2VtYWlsX3RyYWNraW5nIjoxLjAsIm5ld3NfZW5hYmxlX3NlbnRpbWVudCI6MS4wLCJ1c2VfaW5fc3ltYm9sX3NlYXJjaF9vcHRpb25zX21jeF9leGNoYW5nZSI6MS4wLCJlbmFibGVfdXNlcnNldHRpbmdzX3N5bWJvbHNfcGVyX3Jvd19zb2Z0X2xpbWl0IjowLjEsImZvcmJpZF9sb2dpbl93aXRoX3B3bmVkX3Bhc3N3b3JkcyI6MS4wLCJkZWJ1Z19nZXRfdGVzdF9iYXJzX2RhdGEiOjEuMCwibmV3c191c2VfbWVkaWF0b3Jfc3RvcnkiOjEuMCwibmV3c19mbG93X3JlY29uZmlndXJlX2ZpbHRlcnMiOjEuMCwiYmxhY2tfZnJpZGF5X2VuYWJsZV9za2lwX3RvX3BheW1lbnQiOjEuMCwiaGlkZV90cmFkaW5nX2J1dHRvbl9vbl9ib3R0b21fcGFuZWxfYW5kX3JlcGxheV90YWIiOjEuMCwiaGlkZV90cmFkZV9idXR0b25faGludF9pbl9oZWFkZXJfdG9vbGJhciI6MS4wLCJoaWRlX3NlZV9vbl9zdXBlcl9jaGFydHNfYnV0dG9uIjoxLjAsImhpZGVfc3ltYm9sX3BhZ2VfY2hhcnRfdHlwZV9zd2l0Y2hlciI6MS4wLCJkaXNhYmxlX2NoYXRfc3BhbV9wcm90ZWN0aW9uX2Zvcl9wcmVtaXVtX3VzZXJzIjoxLjAsImRpc2FibGVfcHVibGljX3BpbmVfc2NyaXB0X3B1Ymxpc2hfbGltaXRzIjoxLjAsIm1ha2VfdHJhZGluZ19wYW5lbF9jb250ZXh0dWFsX3RhYiI6MS4wLCJyZWNvbm5lY3RfZ2Fpbl9zZXNzaW9uX29uX2xzX2Vycm9yIjoxLjAsImNoZWNrb3V0LWZsb3ctcGF5bWVudHMiOjEuMCwiZm9yY2VfdG9fY29tcGxldGVfa3ljIjoxLjAsImluZGlhX2V4Y2x1ZGVfYnJhaW50cmVlX3RhYiI6MS4wLCJtYWNyb19tYXBzX2hpZGVfdG9vbHRpcF9jaGFydF9idXR0b24iOjEuMCwiZm9yY2Vfa3ljX2Zvcl9ub25wcm9fcHVyY2hhc2VfYnlfY29tbWVyY2lhbCI6MS4wLCJzaG93X3NwbGl0X3BhbmVsX2Z1bGxzY3JlZW5fYnV0dG9uIjoxLjAsInNob3dfc3BsaXRfcGFuZWxfbW92ZV9idXR0b25fdG9fdGl0bGUiOjEuMCwib3JkZXJfcHJlc2V0c19jcnVkX3N0b3JhZ2UiOjEuMCwib3JkZXJfcHJlc2V0c19yZW1vdmVfZnJvbV90dl9zZXR0aW5ncyI6MS4wLCJjaGVja291dC1mbG93LXRyaWFsIjoxLjAsImNoZWNrb3V0LWZsb3ctZ29vZ2xlcGF5IjoxLjAsImNoZWNrb3V0LWZsb3ctYXBwbGVwYXkiOjEuMCwiY2hlY2tvdXQtZmxvdy1wYXlwYWwiOjEuMCwiZm9yYmlkX3NpZ251cF93aXRoX2Zha2VfZ21haWxfZG9tYWlucyI6MS4wLCJzaG93X2ltcG9ydF9mcm9tX3BhcGVyX3RyYWRpbmdfYnV0dG9uIjoxLjAsInN5bWJvbF9zZWFyY2hfZ3JvdXBpbmciOjEuMCwiY2hlY2tvdXQtZmxvdy1nb29nbGVwYXktdHJpYWwiOjEuMCwiY2hlY2tvdXQtZmxvdy1hcHBsZXBheS10cmlhbCI6MS4wLCJjaGVja291dC1mbG93LXBheXBhbC10cmlhbCI6MS4wLCJ2b2lkX25vdF9mb3VuZF9ja29fcGF5bWVudF9pbl9hcHByb3ZlZF93ZWJob29rIjoxLjAsInNob3dfcGFuZWxfY29sbGFwc2VfYnV0dG9uIjoxLjAsImRlbGF5X3N0YXR1c19vbl9sYXN0X2JhciI6MC4zfTsKd2luZG93LmluaXREYXRhID0ge307CgkJd2luZG93LlMzX0xPR09fU0VSVklDRV9CQVNFX1VSTCA9ICJodHRwczovL3MzLXN5bWJvbC1sb2dvLnRyYWRpbmd2aWV3LmNvbS8iOwoKd2luZG93LmluaXREYXRhID0geyJ3aWRnZXREZWZhdWx0cyI6eyJpc1RyYW5zcGFyZW50IjpmYWxzZSwiZGlzcGxheU1vZGUiOiJhZGFwdGl2ZSIsInNob3dTeW1ib2xMb2dvIjpmYWxzZSwic3ltYm9scyI6W3sicHJvTmFtZSI6IkZPUkVYQ09NOlNQWFVTRCIsInRpdGxlIjoiUyZQIDUwMCBJbmRleCJ9LHsicHJvTmFtZSI6IkZPUkVYQ09NOk5TWFVTRCIsInRpdGxlIjoiVVMgMTAwIENhc2ggQ0ZEIn0seyJwcm9OYW1lIjoiRlhfSURDOkVVUlVTRCIsInRpdGxlIjoiRVVSIHRvIFVTRCJ9LHsicHJvTmFtZSI6IkJJVFNUQU1QOkJUQ1VTRCIsInRpdGxlIjoiQml0Y29pbiJ9LHsicHJvTmFtZSI6IkJJVFNUQU1QOkVUSFVTRCIsInRpdGxlIjoiRXRoZXJldW0ifV0sImNvbG9yVGhlbWUiOiJsaWdodCIsImxvY2FsZSI6ImVuIn19OwoJCXdpbmRvdy5pbml0RGF0YS5jdXJyZW50TG9jYWxlSW5mbyA9IHsibGFuZ3VhZ2UiOiJlbiIsImxhbmd1YWdlX25hbWUiOiJFbmdsaXNoIiwiZmxhZyI6InVzIiwiZ2VvaXBfY29kZSI6InVzIiwiaXNvIjoiZW4iLCJpc29fNjM5XzMiOiJlbmciLCJnbG9iYWxfbmFtZSI6IkVuZ2xpc2giLCJpc19vbmx5X3JlY29tbWVuZGVkX3R3X2F1dG9yZXBvc3QiOnRydWV9OwoJCXdpbmRvdy5pbml0RGF0YS5zZXR0aW5ncyA9IHsnUzNfTE9HT19TRVJWSUNFX0JBU0VfVVJMJzogJ2h0dHBzOi8vczMtc3ltYm9sLWxvZ28udHJhZGluZ3ZpZXcuY29tLycsICdTM19ORVdTX0lNQUdFX1NFUlZJQ0VfQkFTRV9VUkwnOiAnaHR0cHM6Ly9zMy50cmFkaW5ndmlldy5jb20vbmV3cy8nLCAnV0VCUEFDS19TVEFUSUNfUEFUSCc6ICdodHRwczovL3N0YXRpYy50cmFkaW5ndmlldy5jb20vc3RhdGljL2J1bmRsZXMvJywgJ1RSQURJTkdfVVJMUyc6IHsnZnJlZSc6ICdodHRwczovL3BhcGVydHJhZGluZy1mcmVlLnRyYWRpbmd2aWV3LmNvbScsICdwcm8nOiAnaHR0cHM6Ly9wYXBlcnRyYWRpbmcudHJhZGluZ3ZpZXcuY29tJ30sICdDT05URVNUU19VUkwnOiAnL3BhcGVyLXRyYWRpbmcnLCAnQ1JVRF9TVE9SQUdFX1VSTCc6ICdodHRwczovL2NydWQtc3RvcmFnZS50cmFkaW5ndmlldy5jb20nfTs8L3NjcmlwdD4KCgk8c2NyaXB0IG5vbmNlPSJKTDU2a0IxMDNCeHdDa2NTV1V3Ni9RPT0iPgoJCSgoKT0+eyJ1c2Ugc3RyaWN0Ijtjb25zdCBlPXt3aGl0ZWxhYmVsOiEwLHBlcm1pc3Npb25PdmVycmlkZXM6ITAsbGlua0NhcHR1cmluZ0FsbG93ZWQ6ITAsc3ltYm9sX3NlYXJjaF9kZWZhdWx0X2V4Y2hhbmdlOiEwLHN5bWJvbF9zZWFyY2hfYWxsb3dlZF9leGNoYW5nZXM6ITB9O2NvbnN0IHQ9d2luZG93O3QuaW5pdERhdGE9dC5pbml0RGF0YXx8e307Y29uc3QgYT0vXCsvZyxuPS88XC8/W14+XSsoPnwkKS9nLHM9ZT0+ZGVjb2RlVVJJQ29tcG9uZW50KGUucmVwbGFjZShhLCIgIikpLnJlcGxhY2UobiwiIiksbz10LmxvY2F0aW9uLnNlYXJjaC5zdWJzdHJpbmcoMSksYz0vKFteJj1dKyk9PyhbXiZdKikvZyxpPXt9O2xldCBsLHI9Yy5leGVjKG8pO2Zvcig7bnVsbCE9PXI7KWlbcyhyWzFdKV09cyhyWzJdKSxyPWMuZXhlYyhvKTt0cnl7bD1KU09OLnBhcnNlKGRlY29kZVVSSUNvbXBvbmVudCh0LmxvY2F0aW9uLmhhc2guc3Vic3RyaW5nKDEpKSksIm9iamVjdCI9PXR5cGVvZiBsJiZudWxsIT09bHx8KGw9e30pfWNhdGNoKGUpe2w9e319dmFyIGg7dC5pbml0RGF0YS5xdWVyeVNldHRpbmdzPWksdC5pbml0RGF0YS5oYXNoU2V0dGluZ3M9KGg9bCxPYmplY3Qua2V5cyhoKS5mb3JFYWNoKCh0PT57ZVt0XSYmZGVsZXRlIGhbdF19KSksaCl9KSgpOwoJPC9zY3JpcHQ+CgoJPHNjcmlwdCBub25jZT0iSkw1NmtCMTAzQnh3Q2tjU1dVdzYvUT09Ij53aW5kb3cuU1NfSE9TVCA9ICJzeW1ib2wtc2VhcmNoLnRyYWRpbmd2aWV3LmNvbSI7CgkJd2luZG93LldJREdFVF9TSEVSSUZGX0hPU1QgPSAiaHR0cHM6Ly93aWRnZXQtc2hlcmlmZi50cmFkaW5ndmlldy13aWRnZXQuY29tIjsKCQl3aW5kb3cuaXNfYXV0aGVudGljYXRlZCA9IGZhbHNlOwoKCgkJd2luZG93LmxvY2FsZV9kb21haW5zID0geyJlbiI6Ind3dy50cmFkaW5ndmlldy5jb20iLCJhcl9BRSI6ImFyLnRyYWRpbmd2aWV3LmNvbSIsImJyIjoiYnIudHJhZGluZ3ZpZXcuY29tIiwiZGVfREUiOiJkZS50cmFkaW5ndmlldy5jb20iLCJlcyI6ImVzLnRyYWRpbmd2aWV3LmNvbSIsImZyIjoiZnIudHJhZGluZ3ZpZXcuY29tIiwiaGVfSUwiOiJpbC50cmFkaW5ndmlldy5jb20iLCJpZCI6ImlkLnRyYWRpbmd2aWV3LmNvbSIsImluIjoiaW4udHJhZGluZ3ZpZXcuY29tIiwiaXQiOiJpdC50cmFkaW5ndmlldy5jb20iLCJqYSI6ImpwLnRyYWRpbmd2aWV3LmNvbSIsImtyIjoia3IudHJhZGluZ3ZpZXcuY29tIiwibXNfTVkiOiJteS50cmFkaW5ndmlldy5jb20iLCJwbCI6InBsLnRyYWRpbmd2aWV3LmNvbSIsInJ1IjoicnUudHJhZGluZ3ZpZXcuY29tIiwidGhfVEgiOiJ0aC50cmFkaW5ndmlldy5jb20iLCJ0ciI6InRyLnRyYWRpbmd2aWV3LmNvbSIsInZpX1ZOIjoidm4udHJhZGluZ3ZpZXcuY29tIiwiemhfQ04iOiJjbi50cmFkaW5ndmlldy5jb20iLCJ6aF9UVyI6InR3LnRyYWRpbmd2aWV3LmNvbSIsImNhX0VTIjoiZXMudHJhZGluZ3ZpZXcuY29tIn07CgoJCQl3aW5kb3cuX19pbml0aWFsRW5hYmxlZEZlYXR1cmVzZXRzID0gd2luZG93Ll9faW5pdGlhbEVuYWJsZWRGZWF0dXJlc2V0cyB8fCBbXTsKCQkJCXdpbmRvdy5fX2luaXRpYWxFbmFibGVkRmVhdHVyZXNldHMucHVzaCgnd2lkZ2V0Jyk7CgoJCXdpbmRvdy5UcmFkaW5nVmlldyA9IHdpbmRvdy5UcmFkaW5nVmlldyB8fCB7fTsKPC9zY3JpcHQ+CgoJPHNjcmlwdCBub25jZT0iSkw1NmtCMTAzQnh3Q2tjU1dVdzYvUT09Ij52YXIgZW52aXJvbm1lbnQgPSAiYmF0dGxlIjsKCQl3aW5kb3cuQlVJTERfVElNRSA9ICIyMDI2LTA3LTI0VDExOjQwOjA4IjsKCQl3aW5kb3cuV0VCU09DS0VUX0hPU1QgPSAid2lkZ2V0ZGF0YS50cmFkaW5ndmlldy5jb20iOwoJCXdpbmRvdy5XRUJTT0NLRVRfSE9TVF9GT1JfUkVDT05ORUNUID0gIndpZGdldGRhdGEtYmFja3VwLnRyYWRpbmd2aWV3LmNvbSI7CgkJd2luZG93LnVzZXIgPSB7J3VzZXJuYW1lJzogJ0d1ZXN0JywgJ2ZvbGxvd2luZyc6ICcwJywgJ2ZvbGxvd2Vycyc6ICcwJywgJ2lnbm9yZV9saXN0Jzoge30sICdkb19ub3RfdHJhY2snOiB0cnVlfTs8L3NjcmlwdD4KCTxzY3JpcHQgbm9uY2U9IkpMNTZrQjEwM0J4d0NrY1NXVXc2L1E9PSI+bGV0IHBhcmFtcyA9IHt9OwoJCQljb25zdCBodHRwUmVnID0gbmV3IFJlZ0V4cCgnXmh0dHAocyk/Oi8vJyk7CgoJCQl0cnkgewoJCQkJcGFyYW1zID0gSlNPTi5wYXJzZShkZWNvZGVVUklDb21wb25lbnQobG9jYXRpb24uaGFzaC5zdWJzdHJpbmcoMSkpKTsKCQkJfSBjYXRjaCAoZSkgewoJCQkJcGFyYW1zID0ge307CgkJCX0KCgkJCXdpbmRvdy5XRUJTT0NLRVRfUEFSQU1TX0FOQUxZVElDUyA9IHsKCQkJCSd3c19hbmNlc3Rvcl9vcmlnaW4nOiB3aW5kb3cubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zICYmIHdpbmRvdy5sb2NhdGlvbi5hbmNlc3Rvck9yaWdpbnMubGVuZ3RoID8gd2luZG93LmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2luc1t3aW5kb3cubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zLmxlbmd0aCAtIDFdLnJlcGxhY2UoaHR0cFJlZywgJycpIDogbnVsbCwKCQkJCSd3c19wYWdlX3VyaSc6IHBhcmFtc1sncGFnZS11cmknXSwKCQkJfTsoKCk9PnsidXNlIHN0cmljdCI7ZnVuY3Rpb24gZShlLHQ9ITEpe2NvbnN0e3NlYXJjaFBhcmFtczpufT1uZXcgVVJMKFN0cmluZyhsb2NhdGlvbikpO2xldCBzPSJ0cnVlIj09PW4uZ2V0KCJtb2JpbGVhcHBfbmV3Iiksbz0idHJ1ZSI9PT1uLmdldCgibW9iaWxlYXBwIik7aWYoIXQpe2NvbnN0IGU9ZnVuY3Rpb24oZSl7Y29uc3QgdD1lKyI9IixuPWRvY3VtZW50LmNvb2tpZS5zcGxpdCgiOyIpO2ZvcihsZXQgZT0wO2U8bi5sZW5ndGg7ZSsrKXtsZXQgcz1uW2VdO2Zvcig7IiAiPT09cy5jaGFyQXQoMCk7KXM9cy5zdWJzdHJpbmcoMSxzLmxlbmd0aCk7aWYoMD09PXMuaW5kZXhPZih0KSlyZXR1cm4gcy5zdWJzdHJpbmcodC5sZW5ndGgscy5sZW5ndGgpfXJldHVybiBudWxsfSgidHZfYXBwIil8fCIiO3N8fD1bImFuZHJvaWQiLCJhbmRyb2lkX25wcyJdLmluY2x1ZGVzKGUpLG98fD0iaW9zIj09PWV9cmV0dXJuISgibmV3IiE9PWUmJiJhbnkiIT09ZXx8IXMpfHwhKCJuZXciPT09ZXx8IW8pfWNvbnN0IHQ9InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJiJ1bmRlZmluZWQiIT10eXBlb2YgbmF2aWdhdG9yLG49dCYmIm9udG91Y2hzdGFydCJpbiB3aW5kb3cscz0odCYmbiYmd2luZG93LHQmJihufHxuYXZpZ2F0b3IubWF4VG91Y2hQb2ludHMpLHQmJndpbmRvdy5jaHJvbWUmJndpbmRvdy5jaHJvbWUucnVudGltZSx0JiZ3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpLmluZGV4T2YoImZpcmVmb3giKSx0JiYvXHNFZGdlXC9cZFxkXGIvLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCksdCYmQm9vbGVhbihuYXZpZ2F0b3IudmVuZG9yKSYmbmF2aWdhdG9yLnZlbmRvci5pbmRleE9mKCJBcHBsZSIpPi0xJiYtMT09PW5hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZigiQ3JpT1MiKSYmbmF2aWdhdG9yLnVzZXJBZ2VudC5pbmRleE9mKCJGeGlPUyIpLHQmJi9tYWMvaS50ZXN0KG5hdmlnYXRvci5wbGF0Zm9ybSksdCYmL1dpbjMyfFdpbjY0L2kudGVzdChuYXZpZ2F0b3IucGxhdGZvcm0pLHQmJi9MaW51eC9pLnRlc3QobmF2aWdhdG9yLnBsYXRmb3JtKSx0JiYvQW5kcm9pZC9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCkpLG89dCYmL0JsYWNrQmVycnkvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLGk9dCYmL2lQaG9uZXxpUGFkfGlQb2QvLnRlc3QobmF2aWdhdG9yLnBsYXRmb3JtKSxyPXQmJi9PcGVyYSBNaW5pL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSxjPXQmJigiTWFjSW50ZWwiPT09bmF2aWdhdG9yLnBsYXRmb3JtJiZuYXZpZ2F0b3IubWF4VG91Y2hQb2ludHM+MXx8L2lQYWQvLnRlc3QobmF2aWdhdG9yLnBsYXRmb3JtKSksYT1zfHxvfHxpfHxyO2NvbnN0IF89bmV3IE1hcDtmdW5jdGlvbiBkKCl7Y29uc3QgZT13aW5kb3cubG9jYXRpb24ucGF0aG5hbWUsdD13aW5kb3cubG9jYXRpb24uaG9zdCxuPWAke3R9JHtlfWA7cmV0dXJuIF8uaGFzKG4pfHxfLnNldChuLGZ1bmN0aW9uKGUsdCl7Y29uc3Qgbj1bIl53aWRnZXQtZG9jcyJdO2Zvcihjb25zdCBlIG9mIG4paWYobmV3IFJlZ0V4cChlKS50ZXN0KHQpKXJldHVybiEwO2NvbnN0IHM9WyJed2lkZ2V0ZW1iZWQvPyQiLCJeY21ld2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL3dpZGdldGVtYmVkLz8kIiwiXihbMC05YS16QS1aLV0rKS93aWRnZXRzdGF0aWMvPyQiLCJeKFswLTlhLXpBLVotXSspPy8/bWVkaXVtd2lkZ2V0ZW1iZWQvPyQiLCJedHdpdHRlci1jaGFydC8/JCIsIl50ZWxlZ3JhbS9jaGFydC8/JCIsIl5lbWJlZC8oWzAtOWEtekEtWl17OH0pLz8kIiwiXndpZGdldHBvcHVwLz8kIiwiXmV4dGVuc2lvbi8/JCIsIl5pZGVhLXBvcHVwLz8kIiwiXmhvdGxpc3Rzd2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL2hvdGxpc3Rzd2lkZ2V0ZW1iZWQvPyQiLCJebWFya2V0b3ZlcnZpZXd3aWRnZXRlbWJlZC8/JCIsIl4oWzAtOWEtekEtWi1dKykvbWFya2V0b3ZlcnZpZXd3aWRnZXRlbWJlZC8/JCIsIl5ldmVudHN3aWRnZXRlbWJlZC8/JCIsIl50aWNrZXJzd2lkZ2V0ZW1iZWQvPyQiLCJeZm9yZXhjcm9zc3JhdGVzd2lkZ2V0ZW1iZWQvPyQiLCJeZm9yZXhoZWF0bWFwd2lkZ2V0ZW1iZWQvPyQiLCJebWFya2V0cXVvdGVzd2lkZ2V0ZW1iZWQvPyQiLCJec2NyZWVuZXJ3aWRnZXQvPyQiLCJeY3J5cHRvbWt0c2NyZWVuZXJ3aWRnZXQvPyQiLCJeKFswLTlhLXpBLVotXSspL2NyeXB0b21rdHNjcmVlbmVyd2lkZ2V0Lz8kIiwiXihbMC05YS16QS1aLV0rKS9tYXJrZXRxdW90ZXN3aWRnZXRlbWJlZC8/JCIsIl50ZWNobmljYWwtYW5hbHlzaXMtd2lkZ2V0LWVtYmVkLyQiLCJec2luZ2xlcXVvdGV3aWRnZXRlbWJlZC8/JCIsIl4oWzAtOWEtekEtWi1dKykvc2luZ2xlcXVvdGV3aWRnZXRlbWJlZC8/JCIsIl5lbWJlZC13aWRnZXQvKFswLTlhLXpBLVotXSspLygoWzAtOWEtekEtWi1dKykvKT8kIiwiXndpZGdldC1kb2NzLyhbMC05YS16QS1aLV0rKS8oWzAtOWEtekEtWi0vXSspPyQiXSxvPWUucmVwbGFjZSgvXlwvLywiIik7bGV0IGk7Zm9yKGxldCBlPXMubGVuZ3RoLTE7ZT49MDtlLS0paWYoaT1uZXcgUmVnRXhwKHNbZV0pLGkudGVzdChvKSlyZXR1cm4hMDtyZXR1cm4hMX0oZSx0KSksXy5nZXQobik/PyExfWNvbnN0IGg9d2luZG93LlRyYWRpbmdWaWV3PXdpbmRvdy5UcmFkaW5nVmlld3x8e307Y29uc3QgbD17QW5kcm9pZDooKT0+cyxCbGFja0JlcnJ5OigpPT5vLGlPUzooKT0+aSxPcGVyYTooKT0+cixpc0lQYWQ6KCk9PmMsYW55OigpPT5hfTtoLmlzTW9iaWxlPWwsaC5vbldpZGdldD1kO2NvbnN0IHU9KCk9Pnt9LGc9In5tfiI7Y2xhc3MgbXtjb25zdHJ1Y3RvcihlLHQ9e30pe3RoaXMuc2Vzc2lvbmlkPW51bGwsdGhpcy5jb25uZWN0ZWQ9ITEsdGhpcy5fdGltZW91dD1udWxsLHRoaXMuX2Jhc2U9ZSx0aGlzLl9vcHRpb25zPXt0aW1lb3V0OnQudGltZW91dHx8MmU0LGNvbm5lY3Rpb25UeXBlOnQuY29ubmVjdGlvblR5cGUsYXBpS2V5OnQuYXBpS2V5fX1jb25uZWN0KCl7dGhpcy5fc29ja2V0PW5ldyBXZWJTb2NrZXQodGhpcy5fcHJlcGFyZVVybCgpKSwKdGhpcy5fc29ja2V0Lm9ubWVzc2FnZT1lPT57aWYoInN0cmluZyIhPXR5cGVvZiBlLmRhdGEpdGhyb3cgbmV3IFR5cGVFcnJvcihgVGhlIFdlYlNvY2tldCBtZXNzYWdlIHNob3VsZCBiZSBhIHN0cmluZy4gUmVjaWV2ZWQgJHtPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZS5kYXRhKX1gKTt0aGlzLl9vbkRhdGEoZS5kYXRhKX0sdGhpcy5fc29ja2V0Lm9uY2xvc2U9dGhpcy5fb25DbG9zZS5iaW5kKHRoaXMpLHRoaXMuX3NvY2tldC5vbmVycm9yPXRoaXMuX29uRXJyb3IuYmluZCh0aGlzKX1zZW5kKGUpe3RoaXMuX3NvY2tldCYmdGhpcy5fc29ja2V0LnNlbmQodGhpcy5fZW5jb2RlKGUpKX1kaXNjb25uZWN0KCl7dGhpcy5fY2xlYXJJZGxlVGltZW91dCgpLHRoaXMuX3NvY2tldCYmKHRoaXMuX3NvY2tldC5vbm1lc3NhZ2U9dSx0aGlzLl9zb2NrZXQub25jbG9zZT11LHRoaXMuX3NvY2tldC5vbmVycm9yPXUsdGhpcy5fc29ja2V0LmNsb3NlKCkpfV9jbGVhcklkbGVUaW1lb3V0KCl7bnVsbCE9PXRoaXMuX3RpbWVvdXQmJihjbGVhclRpbWVvdXQodGhpcy5fdGltZW91dCksdGhpcy5fdGltZW91dD1udWxsKX1fZW5jb2RlKGUpe2xldCB0LG49IiI7Y29uc3Qgcz1BcnJheS5pc0FycmF5KGUpP2U6W2VdLG89cy5sZW5ndGg7Zm9yKGxldCBlPTA7ZTxvO2UrKyl0PW51bGw9PT1zW2VdfHx2b2lkIDA9PT1zW2VdPyIiOm0uX3N0cmluZ2lmeShzW2VdKSxuKz1nK3QubGVuZ3RoK2crdDtyZXR1cm4gbn1fZGVjb2RlKGUpe2NvbnN0IHQ9W107bGV0IG4scztkb3tpZihlLnN1YnN0cmluZygwLDMpIT09ZylyZXR1cm4gdDtuPSIiLHM9IiI7Y29uc3Qgbz0oZT1lLnN1YnN0cmluZygzKSkubGVuZ3RoO2ZvcihsZXQgdD0wO3Q8bzt0Kyspe2lmKHM9TnVtYmVyKGUuc3Vic3RyaW5nKHQsdCsxKSksTnVtYmVyKGUuc3Vic3RyaW5nKHQsdCsxKSkhPT1zKXtlPWUuc3Vic3RyaW5nKG4ubGVuZ3RoKzMpLG49TnVtYmVyKG4pO2JyZWFrfW4rPXN9dC5wdXNoKGUuc3Vic3RyaW5nKDAsbikpLGU9ZS5zdWJzdHJpbmcobil9d2hpbGUoIiIhPT1lKTtyZXR1cm4gdH1fb25EYXRhKGUpe3RoaXMuX3NldFRpbWVvdXQoKTtjb25zdCB0PXRoaXMuX2RlY29kZShlKSxuPXQubGVuZ3RoO2ZvcihsZXQgZT0wO2U8bjtlKyspdGhpcy5fb25NZXNzYWdlKHRbZV0pfV9zZXRUaW1lb3V0KCl7dGhpcy5fY2xlYXJJZGxlVGltZW91dCgpLHRoaXMuX3RpbWVvdXQ9c2V0VGltZW91dCh0aGlzLl9vblRpbWVvdXQuYmluZCh0aGlzKSx0aGlzLl9vcHRpb25zLnRpbWVvdXQpfV9vblRpbWVvdXQoKXt0aGlzLmRpc2Nvbm5lY3QoKSx0aGlzLl9vbkRpc2Nvbm5lY3Qoe2NvZGU6NGUzLHJlYXNvbjoic29ja2V0LmlvIHRpbWVvdXQiLHdhc0NsZWFuOiExfSl9X29uTWVzc2FnZShlKXt0aGlzLnNlc3Npb25pZD90aGlzLl9jaGVja0lmSGVhcnRiZWF0KGUpP3RoaXMuX29uSGVhcnRiZWF0KGUuc2xpY2UoMykpOnRoaXMuX2NoZWNrSWZKc29uKGUpP3RoaXMuX2Jhc2Uub25NZXNzYWdlKEpTT04ucGFyc2UoZS5zbGljZSgzKSkpOnRoaXMuX2Jhc2Uub25NZXNzYWdlKGUpOih0aGlzLnNlc3Npb25pZD1lLHRoaXMuX29uQ29ubmVjdCgpKX1fY2hlY2tJZkhlYXJ0YmVhdChlKXtyZXR1cm4gdGhpcy5fY2hlY2tNZXNzYWdlVHlwZShlLCJoIil9X2NoZWNrSWZKc29uKGUpe3JldHVybiB0aGlzLl9jaGVja01lc3NhZ2VUeXBlKGUsImoiKX1fY2hlY2tNZXNzYWdlVHlwZShlLHQpe3JldHVybiBlLnN1YnN0cmluZygwLDMpPT09In4iK3QrIn4ifV9vbkhlYXJ0YmVhdChlKXt0aGlzLnNlbmQoIn5ofiIrZSl9X29uQ29ubmVjdCgpe3RoaXMuY29ubmVjdGVkPSEwLHRoaXMuX2Jhc2Uub25Db25uZWN0KCl9X29uRGlzY29ubmVjdChlKXt0aGlzLl9jbGVhcigpLHRoaXMuX2Jhc2Uub25EaXNjb25uZWN0KGUpLHRoaXMuc2Vzc2lvbmlkPW51bGx9X2NsZWFyKCl7dGhpcy5jb25uZWN0ZWQ9ITF9X3ByZXBhcmVVcmwoKXtjb25zdCB0PWsodGhpcy5fYmFzZS5ob3N0KTtpZih0LnBhdGhuYW1lKz0ic29ja2V0LmlvL3dlYnNvY2tldCIsdC5wcm90b2NvbD0id3NzOiIsdC5zZWFyY2hQYXJhbXMuYXBwZW5kKCJmcm9tIix3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUuc2xpY2UoMSw1MCkpLHQuc2VhcmNoUGFyYW1zLmFwcGVuZCgiZGF0ZSIsd2luZG93LkJVSUxEX1RJTUV8fCIiKSxlKCJhbnkiKSYmdC5zZWFyY2hQYXJhbXMuYXBwZW5kKCJjbGllbnQiLCJtb2JpbGUiKSx0aGlzLl9vcHRpb25zLmNvbm5lY3Rpb25UeXBlJiZ0LnNlYXJjaFBhcmFtcy5hcHBlbmQoInR5cGUiLHRoaXMuX29wdGlvbnMuY29ubmVjdGlvblR5cGUpLHdpbmRvdy5XRUJTT0NLRVRfUEFSQU1TX0FOQUxZVElDUyl7Y29uc3R7d3NfcGFnZV91cmk6ZSx3c19hbmNlc3Rvcl9vcmlnaW46bn09d2luZG93LldFQlNPQ0tFVF9QQVJBTVNfQU5BTFlUSUNTO2UmJnQuc2VhcmNoUGFyYW1zLmFwcGVuZCgicGFnZS11cmkiLGUpLG4mJnQuc2VhcmNoUGFyYW1zLmFwcGVuZCgiYW5jZXN0b3Itb3JpZ2luIixuKX1jb25zdCBuPXdpbmRvdy5sb2NhdGlvbi5zZWFyY2guaW5jbHVkZXMoIndpZGdldF90b2tlbiIpfHx3aW5kb3cubG9jYXRpb24uaGFzaC5pbmNsdWRlcygid2lkZ2V0X3Rva2VuIik7cmV0dXJuIGQoKXx8bnx8dC5zZWFyY2hQYXJhbXMuYXBwZW5kKCJhdXRoIiwic2Vzc2lvbmlkIiksdm9pZCAwIT09dGhpcy5fb3B0aW9ucy5hcGlLZXkmJnQuc2VhcmNoUGFyYW1zLmFwcGVuZCgiYXBpX2tleSIsdGhpcy5fb3B0aW9ucy5hcGlLZXkpLHQuaHJlZn1fb25DbG9zZShlKXt0aGlzLl9jbGVhcklkbGVUaW1lb3V0KCksdGhpcy5fb25EaXNjb25uZWN0KGUpfV9vbkVycm9yKGUpe3RoaXMuX2NsZWFySWRsZVRpbWVvdXQoKSx0aGlzLl9jbGVhcigpLHRoaXMuX2Jhc2UuZW1pdCgiZXJyb3IiLFtlXSksdGhpcy5zZXNzaW9uaWQ9bnVsbH1zdGF0aWMgX3N0cmluZ2lmeShlKXtyZXR1cm4iW29iamVjdCBPYmplY3RdIj09PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKT8ifmp+IitKU09OLnN0cmluZ2lmeShlKTpTdHJpbmcoZSl9fWNsYXNzIHd7Y29uc3RydWN0b3IoZSx0KXt0aGlzLmhvc3Q9ZSwKdGhpcy5fY29ubmVjdGluZz0hMSx0aGlzLl9ldmVudHM9e30sdGhpcy50cmFuc3BvcnQ9dGhpcy5fZ2V0VHJhbnNwb3J0KHQpfWlzQ29ubmVjdGVkKCl7cmV0dXJuISF0aGlzLnRyYW5zcG9ydCYmdGhpcy50cmFuc3BvcnQuY29ubmVjdGVkfWlzQ29ubmVjdGluZygpe3JldHVybiB0aGlzLl9jb25uZWN0aW5nfWNvbm5lY3QoKXt0aGlzLmlzQ29ubmVjdGVkKCl8fCh0aGlzLl9jb25uZWN0aW5nJiZ0aGlzLmRpc2Nvbm5lY3QoKSx0aGlzLl9jb25uZWN0aW5nPSEwLHRoaXMudHJhbnNwb3J0LmNvbm5lY3QoKSl9c2VuZChlKXt0aGlzLnRyYW5zcG9ydCYmdGhpcy50cmFuc3BvcnQuY29ubmVjdGVkJiZ0aGlzLnRyYW5zcG9ydC5zZW5kKGUpfWRpc2Nvbm5lY3QoKXt0aGlzLnRyYW5zcG9ydCYmdGhpcy50cmFuc3BvcnQuZGlzY29ubmVjdCgpfW9uKGUsdCl7ZSBpbiB0aGlzLl9ldmVudHN8fCh0aGlzLl9ldmVudHNbZV09W10pLHRoaXMuX2V2ZW50c1tlXS5wdXNoKHQpfW9mZkFsbCgpe3RoaXMuX2V2ZW50cz17fX1vbk1lc3NhZ2UoZSl7dGhpcy5lbWl0KCJtZXNzYWdlIixbZV0pfWVtaXQoZSx0PVtdKXtpZihlIGluIHRoaXMuX2V2ZW50cyl7Y29uc3Qgbj10aGlzLl9ldmVudHNbZV0uY29uY2F0KCkscz1uLmxlbmd0aDtmb3IobGV0IGU9MDtlPHM7ZSsrKW5bZV0uYXBwbHkodGhpcyx0KX19b25Db25uZWN0KCl7dGhpcy5jbGVhcigpLHRoaXMuZW1pdCgiY29ubmVjdCIpfW9uRGlzY29ubmVjdChlKXt0aGlzLmVtaXQoImRpc2Nvbm5lY3QiLFtlXSl9Y2xlYXIoKXt0aGlzLl9jb25uZWN0aW5nPSExfV9nZXRUcmFuc3BvcnQoZSl7cmV0dXJuIG5ldyBtKHRoaXMsZSl9fWZ1bmN0aW9uIGsoZSl7Y29uc3QgdD0tMSE9PWUuaW5kZXhPZigiLyIpP25ldyBVUkwoZSk6bmV3IFVSTCgid3NzOi8vIitlKTtpZigid3NzOiIhPT10LnByb3RvY29sJiYiaHR0cHM6IiE9PXQucHJvdG9jb2wpdGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIHdlYnNvY2tldCBiYXNlICIrZSk7cmV0dXJuIHQucGF0aG5hbWUuZW5kc1dpdGgoIi8iKXx8KHQucGF0aG5hbWUrPSIvIiksdC5zZWFyY2g9IiIsdC51c2VybmFtZT0iIix0LnBhc3N3b3JkPSIiLHR9dmFyIHAsYjshZnVuY3Rpb24oZSl7ZVtlLk5vcm1hbD0zMDBdPSJOb3JtYWwiLGVbZS5BZnRlckNsb3NlRXZlbnQ9NWUzXT0iQWZ0ZXJDbG9zZUV2ZW50In0ocHx8KHA9e30pKSxmdW5jdGlvbihlKXtlW2UuSW5mbz0wXT0iSW5mbyIsZVtlLk5vcm1hbD0xXT0iTm9ybWFsIixlW2UuRGVidWc9Ml09IkRlYnVnIixlW2UuRXJyb3I9M109IkVycm9yIn0oYnx8KGI9e30pKTtjb25zdCBmPSJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiZOdW1iZXIod2luZG93LlRFTEVNRVRSWV9XU19FUlJPUl9MT0dTX1RIUkVTSE9MRCl8fDA7dmFyIHk7IWZ1bmN0aW9uKGUpe2VbZS5QaW5nSW50ZXJ2YWw9MWU0XT0iUGluZ0ludGVydmFsIixlW2UuTWF4UGluZ3NDb3VudD0xMF09Ik1heFBpbmdzQ291bnQiLGVbZS5NYXhSZWRpcmVjdHM9MjBdPSJNYXhSZWRpcmVjdHMiLGVbZS5NYXhSZWNvbm5lY3RzPTIwXT0iTWF4UmVjb25uZWN0cyJ9KHl8fCh5PXt9KSk7Y2xhc3MgVHtjb25zdHJ1Y3RvcihlLHQ9e30pe3RoaXMuX3F1ZXVlU3RhY2s9W10sdGhpcy5fbG9nc1F1ZXVlPVtdLHRoaXMuX3RlbGVtZXRyeU9iamVjdHNRdWV1ZT1bXSx0aGlzLl9yZWNvbm5lY3RDb3VudD0wLHRoaXMuX3JlZGlyZWN0Q291bnQ9MCx0aGlzLl9lcnJvcnNDb3VudD0wLHRoaXMuX2Vycm9yc0luZm9TZW50PSExLHRoaXMuX2Nvbm5lY3Rpb25TdGFydD1udWxsLHRoaXMuX2Nvbm5lY3Rpb25Fc3RhYmxpc2hlZD1udWxsLHRoaXMuX3JlY29ubmVjdFRpbWVvdXQ9bnVsbCx0aGlzLl9vbmxpbmVDYW5jZWxsYXRpb25Ub2tlbj1udWxsLHRoaXMuX2lzQ29ubmVjdGlvbkZvcmJpZGRlbj0hMSx0aGlzLl9pbml0aWFsSG9zdD10LmluaXRpYWxIb3N0fHxudWxsLHRoaXMuX3N1Z2dlc3RlZEhvc3Q9ZSx0aGlzLl9wcm9Ib3N0PXQucHJvSG9zdCx0aGlzLl9yZWNvbm5lY3RIb3N0PXQucmVjb25uZWN0SG9zdCx0aGlzLl9ub1JlY29ubmVjdEFmdGVyVGltZW91dD0hMD09PXQubm9SZWNvbm5lY3RBZnRlclRpbWVvdXQsdGhpcy5fZGF0YVJlcXVlc3RUaW1lb3V0PXQuZGF0YVJlcXVlc3RUaW1lb3V0LHRoaXMuX2Nvbm5lY3Rpb25UeXBlPXQuY29ubmVjdGlvblR5cGUsdGhpcy5fYXBpS2V5PXQuYXBpS2V5LHRoaXMuX2RvQ29ubmVjdCgpLHQucGluZ1JlcXVpcmVkJiYtMT09PXdpbmRvdy5sb2NhdGlvbi5zZWFyY2guaW5kZXhPZigibm9waW5nIikmJnRoaXMuX3N0YXJ0UGluZygpfWNvbm5lY3QoKXt0aGlzLl90cnlDb25uZWN0KCl9cmVzZXRDb3VudGVycygpe3RoaXMuX3JlY29ubmVjdENvdW50PTAsdGhpcy5fcmVkaXJlY3RDb3VudD0wfXNldExvZ2dlcihlLHQpe3RoaXMuX2xvZ2dlcj1lLHRoaXMuX2dldExvZ0hpc3Rvcnk9dCx0aGlzLl9mbHVzaExvZ3MoKX1zZXRUZWxlbWV0cnkoZSl7dGhpcy5fdGVsZW1ldHJ5PWUsdGhpcy5fdGVsZW1ldHJ5LnJlcG9ydFNlbnQuc3Vic2NyaWJlKHRoaXMsdGhpcy5fb25UZWxlbWV0cnlTZW50KSx0aGlzLl9mbHVzaFRlbGVtZXRyeSgpfW9uUmVjb25uZWN0KGUpe3RoaXMuX29uUmVjb25uZWN0PWV9aXNDb25uZWN0ZWQoKXtyZXR1cm4hIXRoaXMuX3NvY2tldCYmdGhpcy5fc29ja2V0LmlzQ29ubmVjdGVkKCl9aXNDb25uZWN0aW5nKCl7cmV0dXJuISF0aGlzLl9zb2NrZXQmJnRoaXMuX3NvY2tldC5pc0Nvbm5lY3RpbmcoKX1vbihlLHQpe3JldHVybiEhdGhpcy5fc29ja2V0JiYoImNvbm5lY3QiPT09ZSYmdGhpcy5fc29ja2V0LmlzQ29ubmVjdGVkKCk/dCgpOiJkaXNjb25uZWN0Ij09PWU/dGhpcy5fZGlzY29ubmVjdENhbGxiYWNrcy5wdXNoKHQpOnRoaXMuX3NvY2tldC5vbihlLHQpLCEwKX1nZXRTZXNzaW9uSWQoKXtyZXR1cm4gdGhpcy5fc29ja2V0JiZ0aGlzLl9zb2NrZXQudHJhbnNwb3J0P3RoaXMuX3NvY2tldC50cmFuc3BvcnQuc2Vzc2lvbmlkOm51bGx9c2VuZChlKXtyZXR1cm4gdGhpcy5pc0Nvbm5lY3RlZCgpPyh0aGlzLl9zb2NrZXQuc2VuZChlKSwhMCk6KHRoaXMuX3F1ZXVlTWVzc2FnZShlKSwhMSl9CmdldENvbm5lY3Rpb25Fc3RhYmxpc2hlZCgpe3JldHVybiB0aGlzLl9jb25uZWN0aW9uRXN0YWJsaXNoZWR9Z2V0SG9zdCgpe2NvbnN0IGU9dGhpcy5fdHJ5R2V0UHJvSG9zdCgpO3JldHVybiBudWxsIT09ZT9lOnRoaXMuX3JlY29ubmVjdEhvc3QmJnRoaXMuX3JlY29ubmVjdENvdW50PjM/dGhpcy5fcmVjb25uZWN0SG9zdDp0aGlzLl9zdWdnZXN0ZWRIb3N0fWdldFJlY29ubmVjdENvdW50KCl7cmV0dXJuIHRoaXMuX3JlY29ubmVjdENvdW50fWdldFJlZGlyZWN0Q291bnQoKXtyZXR1cm4gdGhpcy5fcmVkaXJlY3RDb3VudH1nZXRDb25uZWN0aW9uU3RhcnQoKXtyZXR1cm4gdGhpcy5fY29ubmVjdGlvblN0YXJ0fWRpc2Nvbm5lY3QoKXt0aGlzLl9jbGVhclJlY29ubmVjdFRpbWVvdXQoKSwodGhpcy5pc0Nvbm5lY3RlZCgpfHx0aGlzLmlzQ29ubmVjdGluZygpKSYmKHRoaXMuX3Byb3BhZ2F0ZURpc2Nvbm5lY3QoKSx0aGlzLl9kaXNjb25uZWN0Q2FsbGJhY2tzPVtdLHRoaXMuX2Nsb3NlU29ja2V0KCkpfWZvcmJpZENvbm5lY3Rpb24oKXt0aGlzLl9pc0Nvbm5lY3Rpb25Gb3JiaWRkZW49ITAsdGhpcy5kaXNjb25uZWN0KCl9YWxsb3dDb25uZWN0aW9uKCl7dGhpcy5faXNDb25uZWN0aW9uRm9yYmlkZGVuPSExLHRoaXMuY29ubmVjdCgpfWlzTWF4UmVkaXJlY3RzKCl7cmV0dXJuIHRoaXMuX3JlZGlyZWN0Q291bnQ+PTIwfWlzTWF4UmVjb25uZWN0cygpe3JldHVybiB0aGlzLl9yZWNvbm5lY3RDb3VudD49MjB9Z2V0UGluZ0luZm8oKXtyZXR1cm4gdGhpcy5fcGluZ0luZm98fG51bGx9Z2V0QXBpS2V5KCl7cmV0dXJuIHRoaXMuX2FwaUtleX1fdHJ5R2V0UHJvSG9zdCgpe3JldHVybiB3aW5kb3cuVHJhZGluZ1ZpZXcmJndpbmRvdy5UcmFkaW5nVmlldy5vbkNoYXJ0UGFnZSYmImJhdHRsZSI9PT13aW5kb3cuZW52aXJvbm1lbnQmJiF0aGlzLl9yZWRpcmVjdENvdW50JiYtMT09PXdpbmRvdy5sb2NhdGlvbi5ocmVmLmluZGV4T2YoIndzX2hvc3QiKT90aGlzLl9pbml0aWFsSG9zdD90aGlzLl9pbml0aWFsSG9zdDp2b2lkIDAhPT13aW5kb3cudXNlciYmd2luZG93LnVzZXIucHJvX3BsYW4/dGhpcy5fcHJvSG9zdHx8dGhpcy5fc3VnZ2VzdGVkSG9zdDpudWxsOm51bGx9X3F1ZXVlTWVzc2FnZShlKXswPT09dGhpcy5fcXVldWVTdGFjay5sZW5ndGgmJnRoaXMuX2xvZ01lc3NhZ2UoMCwiU29ja2V0IGlzIG5vdCBjb25uZWN0ZWQuIFF1ZXVlZCBhIG1lc3NhZ2UiKSx0aGlzLl9xdWV1ZVN0YWNrLnB1c2goZSl9X3Byb2Nlc3NNZXNzYWdlUXVldWUoKXswIT09dGhpcy5fcXVldWVTdGFjay5sZW5ndGgmJih0aGlzLl9sb2dNZXNzYWdlKDAsIlByb2Nlc3NpbmcgcXVldWVkIG1lc3NhZ2VzIiksdGhpcy5fcXVldWVTdGFjay5mb3JFYWNoKHRoaXMuc2VuZC5iaW5kKHRoaXMpKSx0aGlzLl9sb2dNZXNzYWdlKDAsIlByb2Nlc3NlZCAiK3RoaXMuX3F1ZXVlU3RhY2subGVuZ3RoKyIgbWVzc2FnZXMiKSx0aGlzLl9xdWV1ZVN0YWNrPVtdKX1fb25EaXNjb25uZWN0KGUpe3RoaXMuX25vUmVjb25uZWN0QWZ0ZXJUaW1lb3V0fHxudWxsIT09dGhpcy5fcmVjb25uZWN0VGltZW91dHx8KHRoaXMuX3JlY29ubmVjdFRpbWVvdXQ9c2V0VGltZW91dCh0aGlzLl90cnlSZWNvbm5lY3QuYmluZCh0aGlzKSw1ZTMpKSx0aGlzLl9jbGVhck9ubGluZUNhbmNlbGxhdGlvblRva2VuKCk7bGV0IHQ9ImRpc2Nvbm5lY3Qgc2Vzc2lvbjoiK3RoaXMuZ2V0U2Vzc2lvbklkKCk7ZSYmKHQrPSIsIGNvZGU6IitlLmNvZGUrIiwgcmVhc29uOiIrZS5yZWFzb24sMTAwNT09PWUuY29kZSYmdGhpcy5fc2VuZFRlbGVtZXRyeSgid2Vic29ja2V0X2NvZGVfMTAwNSIpKSx0aGlzLl9sb2dNZXNzYWdlKDAsdCksdGhpcy5fcHJvcGFnYXRlRGlzY29ubmVjdChlKSx0aGlzLl9jbG9zZVNvY2tldCgpLHRoaXMuX3F1ZXVlU3RhY2s9W119X2Nsb3NlU29ja2V0KCl7bnVsbCE9PXRoaXMuX3NvY2tldCYmKHRoaXMuX3NvY2tldC5vZmZBbGwoKSx0aGlzLl9zb2NrZXQuZGlzY29ubmVjdCgpLHRoaXMuX3NvY2tldD1udWxsKX1fbG9nTWVzc2FnZShlLHQpe2NvbnN0IG49e21ldGhvZDplLG1lc3NhZ2U6dH07dGhpcy5fbG9nZ2VyP3RoaXMuX2ZsdXNoTG9nTWVzc2FnZShuKToobi5tZXNzYWdlPWBbJHsobmV3IERhdGUpLnRvSVNPU3RyaW5nKCl9XSAke24ubWVzc2FnZX1gLHRoaXMuX2xvZ3NRdWV1ZS5wdXNoKG4pKX1fZmx1c2hMb2dNZXNzYWdlKGUpe3N3aXRjaChlLm1ldGhvZCl7Y2FzZSAyOnRoaXMuX2xvZ2dlci5sb2dEZWJ1ZyhlLm1lc3NhZ2UpO2JyZWFrO2Nhc2UgMzp0aGlzLl9sb2dnZXIubG9nRXJyb3IoZS5tZXNzYWdlKTticmVhaztjYXNlIDA6dGhpcy5fbG9nZ2VyLmxvZ0luZm8oZS5tZXNzYWdlKTticmVhaztjYXNlIDE6dGhpcy5fbG9nZ2VyLmxvZ05vcm1hbChlLm1lc3NhZ2UpfX1fZmx1c2hMb2dzKCl7dGhpcy5fZmx1c2hMb2dNZXNzYWdlKHttZXRob2Q6MSxtZXNzYWdlOiJtZXNzYWdlcyBmcm9tIHF1ZXVlLiBTdGFydC4ifSksdGhpcy5fbG9nc1F1ZXVlLmZvckVhY2goKGU9Pnt0aGlzLl9mbHVzaExvZ01lc3NhZ2UoZSl9KSksdGhpcy5fZmx1c2hMb2dNZXNzYWdlKHttZXRob2Q6MSxtZXNzYWdlOiJtZXNzYWdlcyBmcm9tIHF1ZXVlLiBFbmQuIn0pLHRoaXMuX2xvZ3NRdWV1ZT1bXX1fc2VuZFRlbGVtZXRyeShlLHQpe2NvbnN0IG49e2V2ZW50OmUscGFyYW1zOnR9O3RoaXMuX3RlbGVtZXRyeT90aGlzLl9mbHVzaFRlbGVtZXRyeU9iamVjdChuKTp0aGlzLl90ZWxlbWV0cnlPYmplY3RzUXVldWUucHVzaChuKX1fZmx1c2hUZWxlbWV0cnlPYmplY3QoZSl7dGhpcy5fdGVsZW1ldHJ5LnNlbmRDaGFydFJlcG9ydChlLmV2ZW50LGUucGFyYW1zLCExKX1fZmx1c2hUZWxlbWV0cnkoKXt0aGlzLl90ZWxlbWV0cnlPYmplY3RzUXVldWUuZm9yRWFjaCgoZT0+e3RoaXMuX2ZsdXNoVGVsZW1ldHJ5T2JqZWN0KGUpfSkpLHRoaXMuX3RlbGVtZXRyeU9iamVjdHNRdWV1ZT1bXX1fZG9Db25uZWN0KCl7CnRoaXMuX3NvY2tldCYmKHRoaXMuX3NvY2tldC5pc0Nvbm5lY3RlZCgpfHx0aGlzLl9zb2NrZXQuaXNDb25uZWN0aW5nKCkpfHwodGhpcy5fY2xlYXJPbmxpbmVDYW5jZWxsYXRpb25Ub2tlbigpLHRoaXMuX2hvc3Q9dGhpcy5nZXRIb3N0KCksdGhpcy5fc29ja2V0PW5ldyB3KHRoaXMuX2hvc3Qse3RpbWVvdXQ6dGhpcy5fZGF0YVJlcXVlc3RUaW1lb3V0LGNvbm5lY3Rpb25UeXBlOnRoaXMuX2Nvbm5lY3Rpb25UeXBlLGFwaUtleTp0aGlzLl9hcGlLZXl9KSx0aGlzLl9sb2dNZXNzYWdlKDAsIkNvbm5lY3RpbmcgdG8gIit0aGlzLl9ob3N0KSx0aGlzLl9iaW5kRXZlbnRzKCksdGhpcy5fZGlzY29ubmVjdENhbGxiYWNrcz1bXSx0aGlzLl9jb25uZWN0aW9uU3RhcnQ9cGVyZm9ybWFuY2Uubm93KCksdGhpcy5fY29ubmVjdGlvbkVzdGFibGlzaGVkPW51bGwsdGhpcy5fc29ja2V0LmNvbm5lY3QoKSxwZXJmb3JtYW5jZS5tYXJrKCJTV1NDIix7ZGV0YWlsOiJTdGFydCBXZWJTb2NrZXQgY29ubmVjdGlvbiJ9KSx0aGlzLl9zb2NrZXQub24oImNvbm5lY3QiLCgoKT0+e3BlcmZvcm1hbmNlLm1hcmsoIkVXU0MiLHtkZXRhaWw6IkVuZCBXZWJTb2NrZXQgY29ubmVjdGlvbiJ9KSxwZXJmb3JtYW5jZS5tZWFzdXJlKCJXZWJTb2NrZXQgY29ubmVjdGlvbiBkZWxheSIsIlNXU0MiLCJFV1NDIil9KSkpfV9wcm9wYWdhdGVEaXNjb25uZWN0KGUpe2NvbnN0IHQ9dGhpcy5fZGlzY29ubmVjdENhbGxiYWNrcy5sZW5ndGg7Zm9yKGxldCBuPTA7bjx0O24rKyl0aGlzLl9kaXNjb25uZWN0Q2FsbGJhY2tzW25dKGV8fHt9KX1fYmluZEV2ZW50cygpe3RoaXMuX3NvY2tldCYmKHRoaXMuX3NvY2tldC5vbigiY29ubmVjdCIsKCgpPT57Y29uc3QgZT10aGlzLmdldFNlc3Npb25JZCgpO2lmKCJzdHJpbmciPT10eXBlb2YgZSl7Y29uc3QgdD1KU09OLnBhcnNlKGUpO2lmKHQucmVkaXJlY3QpcmV0dXJuIHRoaXMuX3JlZGlyZWN0Q291bnQrPTEsdGhpcy5fc3VnZ2VzdGVkSG9zdD10LnJlZGlyZWN0LHRoaXMuaXNNYXhSZWRpcmVjdHMoKSYmdGhpcy5fc2VuZFRlbGVtZXRyeSgicmVkaXJlY3RfYmFpbG91dCIpLHZvaWQgdGhpcy5fcmVkaXJlY3QoKX10aGlzLl9jb25uZWN0aW9uRXN0YWJsaXNoZWQ9cGVyZm9ybWFuY2Uubm93KCksdGhpcy5fcHJvY2Vzc01lc3NhZ2VRdWV1ZSgpLHRoaXMuX2xvZ01lc3NhZ2UoMCwiY29ubmVjdCBzZXNzaW9uOiIrZSl9KSksdGhpcy5fc29ja2V0Lm9uKCJkaXNjb25uZWN0Iix0aGlzLl9vbkRpc2Nvbm5lY3QuYmluZCh0aGlzKSksdGhpcy5fc29ja2V0Lm9uKCJjbG9zZSIsdGhpcy5fb25EaXNjb25uZWN0LmJpbmQodGhpcykpLHRoaXMuX3NvY2tldC5vbigiZXJyb3IiLChlPT57dGhpcy5fbG9nTWVzc2FnZSgwLG5ldyBEYXRlKyIgc2Vzc2lvbjoiK3RoaXMuZ2V0U2Vzc2lvbklkKCkrIiB3ZWJzb2NrZXQgZXJyb3I6IitKU09OLnN0cmluZ2lmeShlKSksdGhpcy5fc2VuZFRlbGVtZXRyeSgid2Vic29ja2V0X2Vycm9yIiksdGhpcy5fZXJyb3JzQ291bnQrKywhdGhpcy5fZXJyb3JzSW5mb1NlbnQmJnRoaXMuX2Vycm9yc0NvdW50Pj1mJiYodm9pZCAwIT09dGhpcy5fbGFzdENvbm5lY3RDYWxsU3RhY2smJih0aGlzLl9zZW5kVGVsZW1ldHJ5KCJ3ZWJzb2NrZXRfZXJyb3JfY29ubmVjdF9zdGFjayIse3RleHQ6dGhpcy5fbGFzdENvbm5lY3RDYWxsU3RhY2t9KSxkZWxldGUgdGhpcy5fbGFzdENvbm5lY3RDYWxsU3RhY2spLHZvaWQgMCE9PXRoaXMuX2dldExvZ0hpc3RvcnkmJnRoaXMuX3NlbmRUZWxlbWV0cnkoIndlYnNvY2tldF9lcnJvcl9sb2ciLHt0ZXh0OnRoaXMuX2dldExvZ0hpc3RvcnkoNTApLmpvaW4oIlxuIil9KSx0aGlzLl9lcnJvcnNJbmZvU2VudD0hMCl9KSkpfV9yZWRpcmVjdCgpe3RoaXMuZGlzY29ubmVjdCgpLHRoaXMuX3JlY29ubmVjdFdoZW5PbmxpbmUoKX1fdHJ5UmVjb25uZWN0KCl7dGhpcy5fdHJ5Q29ubmVjdCgpJiYodGhpcy5fcmVjb25uZWN0Q291bnQrPTEpfV90cnlDb25uZWN0KCl7cmV0dXJuIXRoaXMuX2lzQ29ubmVjdGlvbkZvcmJpZGRlbiYmKHRoaXMuX2NsZWFyUmVjb25uZWN0VGltZW91dCgpLHRoaXMuX2xhc3RDb25uZWN0Q2FsbFN0YWNrPW5ldyBFcnJvcihgV2ViU29ja2V0IGNvbm5lY3Qgc3RhY2suIElzIGNvbm5lY3RlZDogJHt0aGlzLmlzQ29ubmVjdGVkKCl9LmApLnN0YWNrfHwiIiwhdGhpcy5pc0Nvbm5lY3RlZCgpJiYodGhpcy5kaXNjb25uZWN0KCksdGhpcy5fcmVjb25uZWN0V2hlbk9ubGluZSgpLCEwKSl9X2NsZWFyT25saW5lQ2FuY2VsbGF0aW9uVG9rZW4oKXt0aGlzLl9vbmxpbmVDYW5jZWxsYXRpb25Ub2tlbiYmKHRoaXMuX29ubGluZUNhbmNlbGxhdGlvblRva2VuKCksdGhpcy5fb25saW5lQ2FuY2VsbGF0aW9uVG9rZW49bnVsbCl9X2NsZWFyUmVjb25uZWN0VGltZW91dCgpe251bGwhPT10aGlzLl9yZWNvbm5lY3RUaW1lb3V0JiYoY2xlYXJUaW1lb3V0KHRoaXMuX3JlY29ubmVjdFRpbWVvdXQpLHRoaXMuX3JlY29ubmVjdFRpbWVvdXQ9bnVsbCl9X3JlY29ubmVjdFdoZW5PbmxpbmUoKXtpZihuYXZpZ2F0b3Iub25MaW5lKXJldHVybiB0aGlzLl9sb2dNZXNzYWdlKDAsIk5ldHdvcmsgc3RhdHVzOiBvbmxpbmUgLSB0cnlpbmcgdG8gY29ubmVjdCIpLHRoaXMuX2RvQ29ubmVjdCgpLHZvaWQodGhpcy5fb25SZWNvbm5lY3QmJnRoaXMuX29uUmVjb25uZWN0KCkpO3RoaXMuX2xvZ01lc3NhZ2UoMCwiTmV0d29yayBzdGF0dXM6IG9mZmxpbmUgLSB3YWl0IHVudGlsIG9ubGluZSIpLHRoaXMuX29ubGluZUNhbmNlbGxhdGlvblRva2VuPWZ1bmN0aW9uKGUpe2xldCB0PWU7Y29uc3Qgbj0oKT0+e3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJvbmxpbmUiLG4pLHQmJnQoKX07cmV0dXJuIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJvbmxpbmUiLG4pLCgpPT57dD1udWxsfX0oKCgpPT57dGhpcy5fbG9nTWVzc2FnZSgwLCJOZXR3b3JrIHN0YXR1cyBjaGFuZ2VkIHRvIG9ubGluZSAtIHRyeWluZyB0byBjb25uZWN0IiksdGhpcy5fZG9Db25uZWN0KCksdGhpcy5fb25SZWNvbm5lY3QmJnRoaXMuX29uUmVjb25uZWN0KCl9KSl9Cl9vblRlbGVtZXRyeVNlbnQoZSl7IndlYnNvY2tldF9lcnJvciJpbiBlJiYodGhpcy5fZXJyb3JzQ291bnQ9MCx0aGlzLl9lcnJvcnNJbmZvU2VudD0hMSl9X3N0YXJ0UGluZygpe2lmKHRoaXMuX3BpbmdJbnRlcnZhbElkKXJldHVybjtjb25zdCBlPWsodGhpcy5nZXRIb3N0KCkpO2UucGF0aG5hbWUrPSJwaW5nIixlLnByb3RvY29sPSJodHRwczoiO2xldCB0PTAsbj0wO2NvbnN0IHM9ZT0+e3RoaXMuX3BpbmdJbmZvPXRoaXMuX3BpbmdJbmZvfHx7bWF4OjAsbWluOjEvMCxhdmc6MH07Y29uc3Qgcz0obmV3IERhdGUpLmdldFRpbWUoKS1lO3M+dGhpcy5fcGluZ0luZm8ubWF4JiYodGhpcy5fcGluZ0luZm8ubWF4PXMpLHM8dGhpcy5fcGluZ0luZm8ubWluJiYodGhpcy5fcGluZ0luZm8ubWluPXMpLHQrPXMsbisrLHRoaXMuX3BpbmdJbmZvLmF2Zz10L24sbj49MTAmJnRoaXMuX3BpbmdJbnRlcnZhbElkJiYoY2xlYXJJbnRlcnZhbCh0aGlzLl9waW5nSW50ZXJ2YWxJZCksZGVsZXRlIHRoaXMuX3BpbmdJbnRlcnZhbElkKX07dGhpcy5fcGluZ0ludGVydmFsSWQ9c2V0SW50ZXJ2YWwoKCgpPT57Y29uc3QgdD0obmV3IERhdGUpLmdldFRpbWUoKSxuPW5ldyBYTUxIdHRwUmVxdWVzdDtuLm9wZW4oIkdFVCIsZSwhMCksbi5zZW5kKCksbi5vbnJlYWR5c3RhdGVjaGFuZ2U9KCk9PntuLnJlYWR5U3RhdGU9PT1YTUxIdHRwUmVxdWVzdC5ET05FJiYyMDA9PT1uLnN0YXR1cyYmcyh0KX19KSwxZTQpfX0KY29uc3QgQz0id2lkZ2V0X3VzZXJfdG9rZW4tIix2PUpTT04ucGFyc2UoJ3siYWR4Ijoid2lkZ2V0X3VzZXJfdG9rZW4tYWR4IiwiYWR4RCI6IndpZGdldF91c2VyX3Rva2VuLWFkeEQiLCJhZ2VuY2lhbGJtY29tYnIiOiJ3aWRnZXRfdXNlcl90b2tlbi1hZ2VuY2lhbGJtY29tYnIiLCJhbGphemlyYWNhcGl0YWxEIjoid2lkZ2V0X3VzZXJfdG9rZW4tYWxqYXppcmFjYXBpdGFsRCIsImFsamF6aXJhY2FwaXRhbFJUIjoid2lkZ2V0X3VzZXJfdG9rZW4tYWxqYXppcmFjYXBpdGFsUlQiLCJhbHJhamhpY2FwaXRhbGNvbUQiOiJ3aWRnZXRfdXNlcl90b2tlbi1hbHJhamhpY2FwaXRhbGNvbUQiLCJhbHJhamhpY2FwaXRhbGNvbVJUIjoid2lkZ2V0X3VzZXJfdG9rZW4tYWxyYWpoaWNhcGl0YWxjb21SVCIsImFtYml0byI6IndpZGdldF91c2VyX3Rva2VuLWFtYml0byIsImFyZW5heHRybyI6IndpZGdldF91c2VyX3Rva2VuLWFyZW5heHRybyIsImFydGVjaGVjb20iOiJ3aWRnZXRfdXNlcl90b2tlbi1BcnRlY2hlRCIsImF0bGNhcGl0YWwiOiJ3aWRnZXRfdXNlcl90b2tlbi1hdGxjYXBpdGFsIiwiYmFua2lyb3NydSI6IndpZGdldF91c2VyX3Rva2VuLWJhbmtpcm9zcnUiLCJiYnZhY2giOiJ3aWRnZXRfdXNlcl90b2tlbi1iYnZhY2giLCJiZWVrc2dyb3VwIjoid2lkZ2V0X3VzZXJfdG9rZW4tYmVla3Nncm91cCIsImJlbHVnYWdyb3VwcnUiOiJ3aWRnZXRfdXNlcl90b2tlbi1iZWx1Z2Fncm91cHJ1IiwiYml2YWNvbSI6IndpZGdldF91c2VyX3Rva2VuLWJpdmFjb20iLCJibHVlZmllbGQiOiJ3aWRnZXRfdXNlcl90b2tlbi1ibHVlZmllbGQiLCJibHVlbGluZWZ1dHVyZXMiOiJ3aWRnZXRfdXNlcl90b2tlbi1ibHVlbGluZWZ1dHVyZXMiLCJib3Zlc3BhIjoid2lkZ2V0X3VzZXJfdG9rZW4tYm1mYm92ZXNwYWNvbWJyIiwiYnZicm8iOiJ3aWRnZXRfdXNlcl90b2tlbi1idmJybyIsImJ5dGV0cmF2ZWwiOiJ3aWRnZXRfdXNlcl90b2tlbi1ieXRldHJhdmVsIiwiY2JvZWNhbmFkYSI6IndpZGdldF91c2VyX3Rva2VuLWNib2VjYW5hZGEiLCJjaGFtcGlvbm5hdGJvdXJzZSI6IndpZGdldF91c2VyX3Rva2VuLWNoYW1waW9ubmF0Ym91cnNlIiwiY2luY29kaWFzIjoid2lkZ2V0X3VzZXJfdG9rZW4tY2luY29kaWFzIiwiY2VvY2FEIjoid2lkZ2V0X3VzZXJfdG9rZW4tY2VvY2FEIiwiY2VvY2FSVCI6IndpZGdldF91c2VyX3Rva2VuLWNlb2NhUlQiLCJjbWNtYXJrZXRzIjoid2lkZ2V0X3VzZXJfdG9rZW4tY21jbWFya2V0cyIsImNvcGVlcyI6IndpZGdldF91c2VyX3Rva2VuLWNvcGVlcyIsImNzZWxrIjoid2lkZ2V0X3VzZXJfdG9rZW4tY3NlbGsiLCJkYWlseWZ4Ijoid2lkZ2V0X3VzZXJfdG9rZW4tZGFpbHlmeCIsImRlZXBzZWFyY2giOiJ3aWRnZXRfdXNlcl90b2tlbi1kZWVwc2VhcmNoIiwiZGVyYXlhaGNvbSI6IndpZGdldF91c2VyX3Rva2VuLWRlcmF5YWhjb20iLCJkZm1hZUQiOiJ3aWRnZXRfdXNlcl90b2tlbi1kZm1hZUQiLCJkZm1hZVJUIjoid2lkZ2V0X3VzZXJfdG9rZW4tZGZtYWVSVCIsImRpbmFyc2FEIjoid2lkZ2V0X3VzZXJfdG9rZW4tZGluYXJzYUQiLCJkaW5hcnNhUlQiOiJ3aWRnZXRfdXNlcl90b2tlbi1kaW5hcnNhUlQiLCJkb2xhcmhveSI6IndpZGdldF91c2VyX3Rva2VuLWRvbGFyaG95IiwiZWFzeW52ZXN0Y29tYnIiOiJ3aWRnZXRfdXNlcl90b2tlbi1lYXN5bnZlc3Rjb21iciIsImVkYWlseSI6IndpZGdldF91c2VyX3Rva2VuLWVkYWlseSIsImVsZXNwYW5vbGNvbSI6IndpZGdldF91c2VyX3Rva2VuLWVsZXNwYW5vbGNvbSIsImVsb2JyZXJvZXMiOiJ3aWRnZXRfdXNlcl90b2tlbi1lbG9icmVyb2VzIiwiZWxuYWNpb25hbEQiOiJ3aWRnZXRfdXNlcl90b2tlbi1FbE5hY2lvbmFsRCIsImVscGFpc2ZpbmFuY2llcm8iOiJ3aWRnZXRfdXNlcl90b2tlbi1lbHBhaXNmaW5hbmNpZXJvIiwiZWxwZXJpb2RpY29kZWxhZW5lcmdpYSI6IndpZGdldF91c2VyX3Rva2VuLWVscGVyaW9kaWNvZGVsYWVuZXJnaWEiLCJldXF1ZXJvaW52ZXN0aXIiOiJ3aWRnZXRfdXNlcl90b2tlbi1ldXF1ZXJvaW52ZXN0aXJjb20iLCJldXJleCI6IndpZGdldF91c2VyX3Rva2VuLWV1cmV4IiwiZXVyb2ZpbnMiOiJ3aWRnZXRfdXNlcl90b2tlbi1ldXJvZmlucyIsImVwZSI6IndpZGdldF91c2VyX3Rva2VuLWVwZSIsImV1cm9wYXByZXNzZXMiOiJ3aWRnZXRfdXNlcl90b2tlbi1ldXJvcGFwcmVzc2VzIiwiZmluYW56YXNEIjoid2lkZ2V0X3VzZXJfdG9rZW4tRmluYW56YXNEIiwiZm9yYmVzY29tYnIiOiJ3aWRnZXRfdXNlcl90b2tlbi1mb3JiZXNjb21iciIsImdlbmlhbGludmVzdGltZW50b3MiOiJ3aWRnZXRfdXNlcl90b2tlbi1nZW5pYWxpbnZlc3RpbWVudG9zIiwiaGVhbHRoaXRhbGlhIjoid2lkZ2V0X3VzZXJfdG9rZW4taGVhbHRoaXRhbGlhIiwiaGVnbmFybm8iOiJ3aWRnZXRfdXNlcl90b2tlbi1oZWduYXJubyIsImhpcG90ZWNhcmlvY29tYXIiOiJ3aWRnZXRfdXNlcl90b2tlbi1oaXBvdGVjYXJpb2NvbWFyIiwiaWdjb20iOiJ3aWRnZXRfdXNlcl90b2tlbi1pZ2NvbSIsImludmVzdGVnYXRlY291ayI6IndpZGdldF91c2VyX3Rva2VuLWludmVzdGVnYXRlY291ayIsImludmVzdG9wZWRpYSI6IndpZGdldF91c2VyX3Rva2VuLWludmVzdG9wZWRpYSIsImludGVncmFseWF0aXJpbSI6IndpZGdldF91c2VyX3Rva2VuLWludGVncmFseWF0aXJpbSIsIml2c2dyb3VwIjoid2lkZ2V0X3VzZXJfdG9rZW4taXZzZ3JvdXAiLCJqc2Vjb3phIjoid2lkZ2V0X3VzZXJfdG9rZW4tanNlY296YSIsImJvZXJzZW56ZWl0dW5nIjoid2lkZ2V0X3VzZXJfdG9rZW4tYm9lcnNlbnplaXR1bmciLCJsYWluZm9ybWFjaW9uY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tbGFpbmZvcm1hY2lvbmNvbSIsIm1hcmNvcG9sb2NvbWJyIjoid2lkZ2V0X3VzZXJfdG9rZW4tbWFyY29wb2xvY29tYnIiLCJtZXJjYWRvZmluYW5jaWVyb2NvbSI6IndpZGdldF91c2VyX3Rva2VuLW1lcmNhZG9maW5hbmNpZXJvY29tIiwibW9leCI6IndpZGdldF91c2VyX3Rva2VuLW1vZXgiLCJtb25leXRpbWVzY29tYnIiOiJ3aWRnZXRfdXNlcl90b2tlbi1tb25leXRpbWVzY29tYnIiLCJtb25pdG9yZG9tZXJjYWRvRCI6IndpZGdldF91c2VyX3Rva2VuLW1vbml0b3Jkb21lcmNhZG9EIiwibXluZXRjb20iOiJ3aWRnZXRfdXNlcl90b2tlbi1teW5ldGNvbSIsIm5lZ29jaW9zIjoid2lkZ2V0X3VzZXJfdG9rZW4tbmVnb2Npb3MiLCJOR1giOiJ3aWRnZXRfdXNlcl90b2tlbi1OR1giLCJOb3RpY2lhc2Fncmljb2xhRCI6IndpZGdldF91c2VyX3Rva2VuLW5vdGljaWFzYWdyaWNvbGFEIiwibm9tbW9tYSI6IndpZGdldF91c2VyX3Rva2VuLW5vbW1vbWEiLCJuc2Vjb2tyIjoid2lkZ2V0X3VzZXJfdG9rZW4tbnNlY29rciIsIm9rZGlhcmlvIjoid2lkZ2V0X3VzZXJfdG9rZW4tb2tkaWFyaW8iLCJwYW5hZnJpY2FucmVzb3VyY2VzY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tcGFuYWZyaWNhbnJlc291cmNlc2NvbSIsInBzZSI6IndpZGdldF91c2VyX3Rva2VuLXBzZSIsInBvZGVyMzYwIjoid2lkZ2V0X3VzZXJfdG9rZW4tcG9kZXIzNjAiLCJwc2VEIjoid2lkZ2V0X3VzZXJfdG9rZW4tcHNlRCIsInJpeWFkaGNhcGl0YWxEIjoid2lkZ2V0X3VzZXJfdG9rZW4tcml5YWRoY2FwaXRhbEQiLCJyaXlhZGhjYXBpdGFsUlQiOiJ3aWRnZXRfdXNlcl90b2tlbi1yaXlhZGhjYXBpdGFsUlQiLCJxZWNvbXFhIjoid2lkZ2V0X3VzZXJfdG9rZW4tcWVjb21xYSIsInNhbW9sZXQiOiJ3aWRnZXRfdXNlcl90b2tlbi1zYW1vbGV0Iiwic2VlaW5nbWFjaGluZXNjb20iOiJ3aWRnZXRfdXNlcl90b2tlbi1zZWVpbmdtYWNoaW5lc2NvbSIsInNldWRpbmhlaXJvIjoid2lkZ2V0X3VzZXJfdG9rZW4tc2V1ZGluaGVpcm8iLCJzb2Z0d2FyZWFnIjoid2lkZ2V0X3VzZXJfdG9rZW4tc29mdHdhcmVhZyIsInNvZ2VjbGFpciI6IndpZGdldF91c2VyX3Rva2VuLXNvZ2VjbGFpciIsInNnY29tcGFueWl0Ijoid2lkZ2V0X3VzZXJfdG9rZW4tc2djb21wYW55aXQiLCJzaGFyZWp1bmN0aW9uIjoid2lkZ2V0X3VzZXJfdG9rZW4tc2hhcmVqdW5jdGlvbiIsInNtYXJ0bGFiLWN1c3RvbSI6IndpZGdldF91c2VyX3Rva2VuLXNtYXJ0bGFiIiwic21hcnRsYWIiOiJ3aWRnZXRfdXNlcl90b2tlbi1zbWFydGxhYiIsInNwYWNlbW9uZXljb21iciI6IndpZGdldF91c2VyX3Rva2VuLXNwYWNlbW9uZXljb21iciIsInN0b25leHdkZyI6IndpZGdldF91c2VyX3Rva2VuLXN0b25leMKjLSF3d3cuc3RvbmV4LmNvbSIsInN0b3hpbyI6IndpZGdldF91c2VyX3Rva2VuLXN0b3hpbyIsInN0b25leCI6IndpZGdldF91c2VyX3Rva2VuLXN0b25leCIsInRvcm9pbnZlc3RpbWVudG9zY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tdG9yb2ludmVzdGltZW50b3Njb20iLCJ0aGVjc2Vjb20iOiJ3aWRnZXRfdXNlcl90b2tlbi10aGVjc2Vjb20iLCJ0cmFkZXJzY2x1YmJyYXNpbCI6IndpZGdldF91c2VyX3Rva2VuLXRyYWRlcnNjbHViYnJhc2lsIiwidHJhZGVyc2NsdWJicmFzaWxEIjoid2lkZ2V0X3VzZXJfdG9rZW4tdHJhZGVyc2NsdWJicmFzaWxEIiwidHJhZGluZ3ZpZXciOiJ3aWRnZXRfdXNlcl90b2tlbi10cmFkaW5ndmlldyIsInh0b29scyI6IndpZGdldF91c2VyX3Rva2VuLXh0b29scyIsInR3aXR0ZXIiOiJ3aWRnZXRfdXNlcl90b2tlbi10d2l0dGVyIiwidmVsb2NpdHljb21wb3NpdGVzY29tIjoid2lkZ2V0X3VzZXJfdG9rZW4tdmVsb2NpdHljb21wb3NpdGVzY29tIiwidm9jZXNhYWJyaWxjb21iciI6IndpZGdldF91c2VyX3Rva2VuLXZvY2VzYWFicmlsY29tYnIiLCJ3ZWFsdGhzaW1wbGUiOiJ3aWRnZXRfdXNlcl90b2tlbi13ZWFsdGhzaW1wbGXCoy0hbXkud2VhbHRoc2ltcGxlLmNvbSIsIndvcmxkY2hlc3Njb20iOiJ3aWRnZXRfdXNlcl90b2tlbi13b3JsZGNoZXNzY29tIiwieENydHlKa3NwIjoid2lkZ2V0X3VzZXJfdG9rZW4teENydHlKa3NwIiwieHBpY29tYnIiOiJ3aWRnZXRfdXNlcl90b2tlbi14cGljb21iciJ9Jylbd2luZG93LlRyYWRpbmdWaWV3JiZ3aW5kb3cuVHJhZGluZ1ZpZXcud2lkZ2V0Q3VzdG9tZXJ8fCIiXXx8IiIsUz12LnN0YXJ0c1dpdGgoQyk/di5zdWJzdHJpbmcoMTgpOiJ0cmFkaW5ndmlldyIKO3dpbmRvdy5XU0JhY2tlbmRDb25uZWN0aW9uPW5ldyBUKHdpbmRvdy5XRUJTT0NLRVRfSE9TVCx7cGluZ1JlcXVpcmVkOndpbmRvdy5XU19IT1NUX1BJTkdfUkVRVUlSRUQscHJvSG9zdDp3aW5kb3cuV0VCU09DS0VUX1BST19IT1NULHJlY29ubmVjdEhvc3Q6d2luZG93LldFQlNPQ0tFVF9IT1NUX0ZPUl9SRUNPTk5FQ1QsaW5pdGlhbEhvc3Q6d2luZG93LldFQlNPQ0tFVF9JTklUSUFMX0hPU1QsY29ubmVjdGlvblR5cGU6d2luZG93LldFQlNPQ0tFVF9DT05ORUNUSU9OX1RZUEUsYXBpS2V5OlN9KSx3aW5kb3cuV1NCYWNrZW5kQ29ubmVjdGlvbkN0b3I9VH0pKCk7Cgk8L3NjcmlwdD4KPC9oZWFkPgo8Ym9keT4KCTxzY3JpcHQgbm9uY2U9IkpMNTZrQjEwM0J4d0NrY1NXVXc2L1E9PSI+CgkJKCgpPT57InVzZSBzdHJpY3QiO2NvbnN0IHQ9MTAxOTt2YXIgZSxzLG8sYSxkOyFmdW5jdGlvbih0KXt0LkFkYXB0aXZlPSJhZGFwdGl2ZSIsdC5SZWd1bGFyPSJyZWd1bGFyIix0LkNvbXBhY3Q9ImNvbXBhY3QifShlfHwoZT17fSkpLGZ1bmN0aW9uKHQpe3QuQWxsU3ltYm9scz0iYWxsX3N5bWJvbHMiLHQuTWFya2V0PSJtYXJrZXQiLHQuU3ltYm9sPSJzeW1ib2wifShzfHwocz17fSkpLGZ1bmN0aW9uKHQpe3QuQ3J5cHRvY3VycmVuY2llcz0iY3J5cHRvIix0LkN1cnJlbmNpZXM9ImZvcmV4Iix0LlN0b2Nrcz0ic3RvY2siLHQuSW5kaWNlcz0iaW5kZXgiLHQuRnV0dXJlcz0iZnV0dXJlcyIsdC5Cb25kcz0iY2ZkIn0ob3x8KG89e30pKSxmdW5jdGlvbih0KXt0LkhUTUw9Imh0bWwiLHQuUmVhY3Q9InJlYWN0In0oYXx8KGE9e30pKSxmdW5jdGlvbih0KXt0LlRoZW1lQ2xhc3NQcmVmaXg9InRoZW1lLSJ9KGR8fChkPXt9KSk7Y29uc3QgYz13aW5kb3c7Yy5pbml0RGF0YT1jLmluaXREYXRhfHx7fTtsZXQgaT1jLmluaXREYXRhLmhhc2hTZXR0aW5ncztpZihjLmluaXREYXRhLndpZGdldERlZmF1bHRzJiYoaT17Li4uYy5pbml0RGF0YS53aWRnZXREZWZhdWx0cywuLi5pfSksdm9pZCAwIT09aSl7aWYodm9pZCAwIT09aS5jb2xvclRoZW1lJiZmdW5jdGlvbih0LGU9d2luZG93KXtjb25zdCBzPSJ0aGVtZS0iK3Qsbz1lLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc0xpc3Q7Zm9yKGNvbnN0IHQgb2YgQXJyYXkuZnJvbShvKSl0LnN0YXJ0c1dpdGgoInRoZW1lLSIpJiZ0IT09cyYmby5yZW1vdmUodCk7by5hZGQocyksZS5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuZGF0YXNldC50aGVtZT10fShpLmNvbG9yVGhlbWUpLChpLmlzVHJhbnNwYXJlbnR8fGkudHJhbnNwYXJlbmN5KSYmZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC5hZGQoImlzLXRyYW5zcGFyZW50Iiksdm9pZCAwIT09aS5kaXNwbGF5TW9kZSYmZnVuY3Rpb24ocyxvKXtpZihvPT09ZS5BZGFwdGl2ZSl7Y29uc3QgZT13aW5kb3cubWF0Y2hNZWRpYShgKG1heC13aWR0aDogJHt0fXB4KWApLG89KCk9PntzLmNsYXNzTGlzdC50b2dnbGUoInR2LWRpc3BsYXktbW9kZS1yZWd1bGFyIiwhZS5tYXRjaGVzKSxzLmNsYXNzTGlzdC50b2dnbGUoInR2LWRpc3BsYXktbW9kZS1jb21wYWN0IixlLm1hdGNoZXMpfTtvKCksZS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLG8pfWVsc2Ugcy5jbGFzc0xpc3QudG9nZ2xlKCJ0di1kaXNwbGF5LW1vZGUtcmVndWxhciIsbz09PWUuUmVndWxhcikscy5jbGFzc0xpc3QudG9nZ2xlKCJ0di1kaXNwbGF5LW1vZGUtY29tcGFjdCIsbz09PWUuQ29tcGFjdCl9KGRvY3VtZW50LmJvZHksaS5kaXNwbGF5TW9kZSksaS5ib2R5Q2xhc3Nlcylmb3IoY29uc3QgdCBvZiBpLmJvZHlDbGFzc2VzKWRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZCh0KTtpLmJvZHlfY2xhc3MmJmRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmFkZChpLmJvZHlfY2xhc3MpLGkuYm9keUlkJiYoZG9jdW1lbnQuYm9keS5pZD1pLmJvZHlJZCl9fSkoKTsKCTwvc2NyaXB0PgoKCTxkaXYgaWQ9IndpZGdldC10aWNrZXItdGFwZS1jb250YWluZXIiPjwvZGl2PgoKPHNjcmlwdCBub25jZT0iSkw1NmtCMTAzQnh3Q2tjU1dVdzYvUT09Ij4KCXdpbmRvdy5pbml0RGF0YSA9IHdpbmRvdy5pbml0RGF0YSB8fCB7fTsKCgl3aW5kb3cuaW5pdERhdGEuc25vd3Bsb3dTZXR0aW5ncyA9IHsKCQljb2xsZWN0b3JJZDogJ3R2X2NmJywKCQl1cmw6ICdzbm93cGxvdy1waXhlbC50cmFkaW5ndmlldy5jb20nLAoJCXBhcmFtczogewoJCQlhcHBJZDogJ3RyYWRpbmd2aWV3JywKCQkJcG9zdFBhdGg6ICcvY29tLnRyYWRpbmd2aWV3L3RyYWNrJywKCQl9LAoJCWVuYWJsZWQ6IHRydWUsCgl9Cjwvc2NyaXB0PjwvYm9keT4KPC9odG1sPg=="}},"time_used":64,"timings":{"blocked":0,"dns":42,"connect":13,"send":0,"wait":2,"receive":-1,"ssl":7},"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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.223Z","timestamp":1785126257223,"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-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/ticker-tape/?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 04:24:17 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: e16ff8b0cc906030775c334d21ea73cc\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-27T07:05:45.395722Z","times_seen":4374,"resource_available":false,"data":"LmxhYmVsLWR6YmQ3bHlWe2JvcmRlci1yYWRpdXM6MTJweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6dmFyKC0tY29sb3Itd2hpdGUpO2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MjRweDttYXgtd2lkdGg6MjhweDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzowIDZweDtwb3NpdGlvbjphYnNvbHV0ZTt0cmFuc2l0aW9uOm1heC13aWR0aCAuNnMgY3ViaWMtYmV6aWVyKC40LC4wMSwuMjIsMSkgMHMsYmFja2dyb3VuZCAuM3MgY3ViaWMtYmV6aWVyKC40LC4wMSwuMjIsMSkgMHM7ei1pbmRleDozfS5sYWJlbC1kemJkN2x5ViAubG9nb1dyYXAtZHpiZDdseVZ7cGFkZGluZy1pbmxpbmUtZW5kOjVweH0ubGFiZWwtZHpiZDdseVYuZXhwYW5kZWRCeUNsaWNrLWR6YmQ3bHlWLC5sYWJlbC1kemJkN2x5Vi5leHBhbmRlZFdpdGhUcmFuc2l0aW9uLWR6YmQ3bHlWe21heC13aWR0aDoxMDVweH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmxhYmVsLWR6YmQ3bHlWOmhvdmVye21heC13aWR0aDoxMDVweH19LmxhYmVsLWR6YmQ3bHlWOm5vdChhKXtjdXJzb3I6ZGVmYXVsdH0ubGFiZWwtZHpiZDdseVY6Zm9jdXN7b3V0bGluZTphdXRvO291dGxpbmUtY29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApO291dGxpbmUtb2Zmc2V0Oi0ycHg7b3V0bGluZS13aWR0aDoycHh9LmxhYmVsLWR6YmQ3bHlWLnN0YXJ0LWR6YmQ3bHlWe2luc2V0LWlubGluZS1zdGFydDo4cHh9LmxhYmVsLWR6YmQ3bHlWLmVuZC1kemJkN2x5ViwubGFiZWwtZHpiZDdseVYuc3RhcnQtZHpiZDdseVZ7Ym94LXNoYWRvdzowIDJweCA0cHggMCB2YXIoLS1jb2xvci1vdGhlci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5KX0ubGFiZWwtZHpiZDdseVYuZW5kLWR6YmQ3bHlWe2luc2V0LWlubGluZS1lbmQ6OHB4fS5sYWJlbC1kemJkN2x5Vi5zbmFwLWR6YmQ3bHlWLnN0YXJ0LWR6YmQ3bHlWe2JvcmRlci1yYWRpdXM6MDtib3JkZXItZW5kLWVuZC1yYWRpdXM6MTJweDtib3JkZXItc3RhcnQtZW5kLXJhZGl1czoxMnB4O2luc2V0LWlubGluZS1zdGFydDowfS5sYWJlbC1kemJkN2x5Vi5zbmFwLWR6YmQ3bHlWLmVuZC1kemJkN2x5Vntib3JkZXItcmFkaXVzOjA7Ym9yZGVyLWVuZC1zdGFydC1yYWRpdXM6MTJweDtib3JkZXItc3RhcnQtc3RhcnQtcmFkaXVzOjEycHg7aW5zZXQtaW5saW5lLWVuZDowfS5sYWJlbC1kemJkN2x5Vi50b3AtZHpiZDdseVZ7dG9wOjhweH1AbWVkaWEgKG1heC1oZWlnaHQ6NTBweCl7LmxhYmVsLWR6YmQ3bHlWLnRvcC1kemJkN2x5Vnt0b3A6YXV0bzt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpfX0ubGFiZWwtZHpiZDdseVYuYm90dG9tLWR6YmQ3bHlWe2JvdHRvbTo4cHh9LmxhYmVsLWR6YmQ3bHlWLmxhcmdlLWR6YmQ3bHlWe2JvcmRlcjoxcHggc29saWQgdmFyKC0tY29sb3ItY29sZC1ncmF5LTUwKTtib3JkZXItcmFkaXVzOjE3cHg7aGVpZ2h0OjM0cHg7bWF4LXdpZHRoOjM0cHg7cGFkZGluZzowIDZweH0ubGFiZWwtZHpiZDdseVYubGFyZ2UtZHpiZDdseVYgLmxvZ29XcmFwLWR6YmQ3bHlWe3BhZGRpbmctaW5saW5lLWVuZDo1cHh9LmxhYmVsLWR6YmQ3bHlWLmxhcmdlLWR6YmQ3bHlWLmVuZC1kemJkN2x5ViwubGFiZWwtZHpiZDdseVYubGFyZ2UtZHpiZDdseVYuc3RhcnQtZHpiZDdseVZ7Ym94LXNoYWRvdzpub25lfS5sYWJlbC1kemJkN2x5Vi5sYXJnZS1kemJkN2x5Vi5zbmFwLWR6YmQ3bHlWLnN0YXJ0LWR6YmQ3bHlWe2JvcmRlci1yYWRpdXM6MCAxN3B4IDE3cHggMH0ubGFiZWwtZHpiZDdseVYubGFyZ2UtZHpiZDdseVYuc25hcC1kemJkN2x5Vi5zdGFydC1kemJkN2x5VjpkaXIocnRsKXtib3JkZXItcmFkaXVzOjE3cHggMCAwIDE3cHh9LmxhYmVsLWR6YmQ3bHlWLmxhcmdlLWR6YmQ3bHlWLnNuYXAtZHpiZDdseVYuZW5kLWR6YmQ3bHlWe2JvcmRlci1yYWRpdXM6MTdweCAwIDAgMTdweH0ubGFiZWwtZHpiZDdseVYubGFyZ2UtZHpiZDdseVYuc25hcC1kemJkN2x5Vi5lbmQtZHpiZDdseVY6ZGlyKHJ0bCl7Ym9yZGVyLXJhZGl1czowIDE3cHggMTdweCAwfS5sYWJlbC1kemJkN2x5Vi5sYXJnZS1kemJkN2x5Vi5leHBhbmRlZEJ5Q2xpY2stZHpiZDdseVYsLmxhYmVsLWR6YmQ3bHlWLmxhcmdlLWR6YmQ3bHlWLmV4cGFuZGVkV2l0aFRyYW5zaXRpb24tZHpiZDdseVZ7bWF4LXdpZHRoOjExMXB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsubGFiZWwtZHpiZDdseVYubGFyZ2UtZHpiZDdseVY6aG92ZXJ7bWF4LXdpZHRoOjExMXB4fX0ubGFiZWwtZHpiZDdseVYuZXhwYW5kZWQtZHpiZDdseVZ7bWF4LXdpZHRoOm5vbmU7dHJhbnNpdGlvbjpub25lfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsubGFiZWwtZHpiZDdseVYuZXhwYW5kZWQtZHpiZDdseVY6aG92ZXJ7bWF4LXdpZHRoOm5vbmV9fS5sYWJlbF9fbGluay1kemJkN2x5Vntib3JkZXItcmFkaXVzOmluaGVyaXQ7aGVpZ2h0OjEwMCU7aW5zZXQtaW5saW5lLXN0YXJ0OjA7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxMDAlfS5sYWJlbC1kemJkN2x5Vi5leHBhbmRlZC1kemJkN2x5ViAubGFiZWxfX2xpbmstZHpiZDdseVYsLmxhYmVsLWR6YmQ3bHlWLmV4cGFuZGVkQnlDbGljay1kemJkN2x5ViAubGFiZWxfX2xpbmstZHpiZDdseVYsLmxhYmVsLWR6YmQ3bHlWLmV4cGFuZGVkV2l0aFRyYW5zaXRpb24tZHpiZDdseVYgLmxhYmVsX19saW5rLWR6YmQ3bHlWe3BvaW50ZXItZXZlbnRzOmF1dG99QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5sYWJlbC1kemJkN2x5Vjpob3ZlciAubGFiZWxfX2xpbmstZHpiZDdseVZ7cG9pbnRlci1ldmVudHM6YXV0b319"}},"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":"besttrader.live/admin/video/2822.mp4","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"","port":0,"asn":0,"as":"","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"media","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:17.550Z","timestamp":1785126257550,"http_version":"","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /admin/video/2822.mp4 HTTP/1.1\r\nHost: besttrader.live\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: video/webm,video/ogg,video/*;q=0.9,application/ogg;q=0.7,audio/*;q=0.6,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nRange: bytes=163840-\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://besttrader.live/\r\nSec-Fetch-Dest: video\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nAccept-Encoding: identity\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-27T07:04:52.530819Z","times_seen":17558191,"resource_available":true,"data":""}},"time_used":0,"timings":{"blocked":-1,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCPEAQ.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.722Z","timestamp":1785126258722,"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 /crypto/XTVCPEAQ.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 04:24:18 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: \"c8acc6c48a2b6e4034db144f8682f529\"\r\nlast-modified: Thu, 16 Jan 2025 13:49:37 GMT\r\ncdn-cachedat: 08/09/2025 14:33:35\r\nx-amz-id-2: fwzvdUDtmUEqYYVS/n7ihqhBoVaY4VAJpJXLINrnK7TAj1q3wPzkjyyjPia/CeakemmGVtS9+A8=\r\nx-amz-request-id: EE8EDVX3ZB1CQC2T\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: c8acc6c48a2b6e4034db144f8682f529\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: 16d0ba3dc7acf12d07ac93de9622c926\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":888,"size_decoded":1432,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (888), with no line terminators","md5":"c8acc6c48a2b6e4034db144f8682f529","sha1":"6ebd32f1f9cef421e8c0ffdddd014a742756eace","sha256":"be4ef4ec757f04df4e1a9313130df15d710985d0a2b7d2262b2a9836fe26f198","sha512":"280461c9371afbb9dc149ea3b7530ff882e9bab0756e526c76ff3375215b8f5f8fc6b36a162df51d26d4b4746302e373c58bbe08f9e92484190b8b8be11075c0","ssdeep":"","tlshash":"771144b6a184c67c1883c289cf5590b0174f60f5f16f4ae869c7c3b4e40b9d5fd09e58","first_seen":"2026-07-08T04:32:42.639707Z","last_seen":"2026-07-27T07:05:43.36278Z","times_seen":116,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTAuMjEgMTEuMzVjLjI2LjMuOTMuNjUgMS45NC42NUMxMy44MSAxMiAxNSAxMC42MyAxNSA4Ljk1QTIuODcgMi44NyAwIDAgMCAxMi4xNSA2Yy0xLjIgMC0yLjI2LjY5LTMgMS44LS4zNy41NS0uNjIuOTctLjc3IDEuMjEtLjEyLjItLjI0LjQtLjM3LjU4LS42LjktMS4zOCAxLjM1LTIuMTYgMS4zNWExLjgyIDEuODIgMCAwIDEtMS44Mi0xLjg5YzAtMS4xLjcyLTIuMDYgMS44Mi0yLjA2LjI1IDAgLjQ5LjA1LjY4LjEuMS4wNC4xNS4xOC4wOS4yOGwtMS4yIDEuOTRhLjE5LjE5IDAgMCAwLS4wMi4xYzAgLjEuMDcuMTguMTguMThoLjc4Yy4wOCAwIC4xNi0uMDQuMi0uMTFMNy44NCA3LjNjLjEyLS4yLjEtLjQ3LS4wNS0uNjUtLjI2LS4zLS45My0uNjUtMS45NC0uNjVDNC4xOSA2IDMgNy4zNyAzIDkuMDVBMi44NyAyLjg3IDAgMCAwIDUuODUgMTJjMS4yIDAgMi4yNi0uNjkgMy0xLjguMzctLjU1LjYyLS45Ny43Ny0xLjIxLjEyLS4yLjI0LS40LjM3LS41OC42LS45IDEuMzgtMS4zNSAyLjE2LTEuMzUgMS4wNCAwIDEuODIuODIgMS44MiAxLjg5IDAgMS4xLS43MiAyLjA2LTEuODIgMi4wNi0uMjUgMC0uNDktLjA1LS42OC0uMS0uMS0uMDQtLjE1LS4xOC0uMDktLjI4bDEuMi0xLjk0YS4xOS4xOSAwIDAgMCAuMDItLjFjMC0uMS0uMDctLjE4LS4xOC0uMThoLS43OGEuMjUuMjUgMCAwIDAtLjIuMTFsLTEuMjggMi4xOGMtLjEyLjItLjEuNDcuMDUuNjVaIiBmaWxsPSIjNjQ2QUYyIi8+PC9zdmc+"}},"time_used":1,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":1,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCRON.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.737Z","timestamp":1785126258737,"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 /crypto/XTVCRON.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 04:24:18 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: \"8ddfd653018066d0c26e7f3a09d0da1a\"\r\nlast-modified: Tue, 07 May 2024 15:59:55 GMT\r\ncdn-cachedat: 08/09/2025 14:31:45\r\nx-amz-id-2: rqQ7ESf7DVtmUmCCe187r+ZZ7xOE1qsK9jRLHYlMsLJkU3htOYa5W6Hfyo2T6B2zOP9//2f5L60=\r\nx-amz-request-id: N8CW225YM80PCYGS\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 8ddfd653018066d0c26e7f3a09d0da1a\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: 31f740e7b405b15e46e2bcda567fa751\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":696,"size_decoded":1362,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (696), with no line terminators","md5":"8ddfd653018066d0c26e7f3a09d0da1a","sha1":"1261564c20dd8d4e577070b4d1315a9522cf4f6d","sha256":"e9399c45d0442675832c0fa4793c1b02cc666dedb7adbd2d28d635cd07adbbdf","sha512":"22df8180c989c6604fb66b5ec156df597cdd6f41001aafc45594c360d5df8e9a79fcc77f60f3acb76345c203dd80679c8833838948a4c4b49023b6d69a2cbdf6","ssdeep":"","tlshash":"1d01c0ad67a89b3c548353b8cb30209033cd2044b09e9ae4a9c5b7b5700ba91e95540c","first_seen":"2025-04-11T11:28:49.352465Z","last_seen":"2026-07-27T07:05:43.358999Z","times_seen":787,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik01IDExLjc4VjQuNzRjMC0uNDEuMzQtLjc0Ljc2LS43NGg2LjQ4Yy40MiAwIC43Ni4zMy43Ni43NHY3LjA0YzAgLjIyLS4xLjQ0LS4yOS41OGwtMy4yNCAyLjQ4YS43Ny43NyAwIDAgMS0uOTMgMGwtMy4yNS0yLjQ4YS43My43MyAwIDAgMS0uMjktLjU4Wm0zLTIuNTZ2My42N2MwIC4xLS4xMS4xNC0uMTkuMDlMNi4xIDExLjYzYS4yMi4yMiAwIDAgMS0uMDktLjE4VjUuNzlBLjguOCAwIDAgMSA2Ljg0IDVoNC4zNGEuOC44IDAgMCAxIC44My43OVY3LjhjMCAuNTYtLjU3Ljc2LS44NS44LjU3IDAgLjguNS44NS43NHYyLjFjMCAuMDctLjAzLjEzLS4wOS4xOGwtMS43MiAxLjM0Yy0uMDguMDYtLjIgMC0uMi0uMDlWOS44NEEuODYuODYgMCAwIDAgOS4xNiA5aC0uOTJjLS4xMyAwLS4yNC4xLS4yNC4yMlpNOCA2LjF2MS44YzAgLjA2LjA2LjEuMTIuMWgxLjE0Yy40IDAgLjc0LS4yNy43NC0uNlY2LjFjMC0uMDYtLjA2LS4xLS4xMi0uMUg4LjEyYy0uMDYgMC0uMTIuMDQtLjEyLjFaIiBmaWxsPSIjMTI3M0VBIi8+PC9zdmc+"}},"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":"besttrader.live/images/favicon.png","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:17.514Z","timestamp":1785126257514,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/favicon.png HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:17 GMT\r\ncontent-type: image/png\r\ncontent-length: 3072\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-c00\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":3072,"size_decoded":3320,"mime_type":"image/png","magic":"PNG image data, 64 x 75, 8-bit/color RGBA, non-interlaced","md5":"f34dc83b0bc9a01e96759f76154fe124","sha1":"386158b4cc799de3bb5ba7f9ff0011765aaca4f1","sha256":"8372f97b5dc76e005a858a87106aa65d4c289b51d5338fd0ab454b9f29dcd004","sha512":"5122c856ea5f6084b235ee8e6a35a17cf62f571389028b4d5f8f64bfc5b563076a5e7ce7e7a5a32656756ab58e7c698d173fcf0a0e2d40de0d1e84e243e3461f","ssdeep":"","tlshash":"d2514ca5c412fb828edd8cbc378576e2ba3c059c2c919b1d9f8052b2c4130c89b98a16","first_seen":"2026-07-27T03:36:45.260859Z","last_seen":"2026-07-27T04:25:12.705275Z","times_seen":2,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAEAAAABLCAYAAADAroEdAAAAAXNSR0IArs4c6QAAAARzQklUCAgICHwIZIgAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA7DAAAOwwHHb6hkAAAAIXRFWHRDcmVhdGlvbiBUaW1lADIwMjI6MTA6MTAgMTE6NTY6MzOLTOivAAALWElEQVR4Xu2bC5AUxRnHu3tmZ293b/ce3BHgDgIEjwsoSkVFjSRYuRge8pBQMUhCgTGYVIJGKwQiFS+gFbAUDShwgMGYSBkOeajcwT1SCBggSCRqlVEBHxVNRa6i4HHv3el8X0/P7Ozs+167oj9qtr+vu+fx/eebme6Zg3yBA8+v7r1Gmp8LmCwtVKIelebngggBfHf/uoNQSnz3rjwlqy56IgSgCtOwVAgdFVh+/1dE5UWO4xKgskQx1NOByoc+le5FSzjiRUvzcgOuc1RVMXhYIA9Ul7CJosz9ZNniv8ieFxVWBnh9dIVNDsCWDYQ+M+DhKj7gkSf+JqsuGqwofXcvPclU7QpxxkUWQAYokAEqljIrrOzAPspTZxfNXSBX/8xiE2AZCOC6wgySwMLAxtIIOnxJRNlQdoXYqKYFU8/IzX1msC4BTtg7+Ag0NTGVsRQSbRKnDYuWo5wurW7kQ3c08mHPNpwg1dXiiZLtWJFody0Z7XZ73jTOKiwi9fESCJ9l46wrMjtceHM06kUbLAx8kJRSbuoibML0Y+/OmHyt3FVWYTuVhPiXVnIrWDMo03b60haXiCmWwqygLQGYXQyjTSf6u2e8OWXkhhuCctcZAw4pjCEABmY/49IXARsZ4BTCvF9QhqffCJLhlmU2CFvWY4ZE+FgycrKzU590eurUfh934KFYWAI4AjRsDNwuiM0W/cCHyKygjMAcfnQ2oEgoiNnPOCL9P1BOfn3StNfR60vE7uzAEFhmgQzKDFD4snTapm8XQAQfDsyocwgQ4cdZD3zOQx+fvH76AHmIvQpsPhLO6VnYLVi4ILIUhcMWRyh9tBORpFlg9YHMsMEYK7zyaA2/6lgNv/L43h/I6l4h5mHlVa62ZYEsE9nmJQFbi3kmU8mGWP0SrEeo/vbfr5wx2jji7hOVAcj5FctgF/y0sSc7dt9mO/tZbuSZtHBuFnHWJelDCSu79h97+YR/PjdbVnWLWLuJoPDB9fLGiPcCeeOLNUbABbaW6nUdeVYdPtrWOra2OOvBgzV4dPxMGJikD2wmNYrXbBlF3NopK9iISwAXEKKHgYR9+zZkm7WdONuA5aXLp8NveqS9gsngP+w8AJOmSZYYsUaBqQSCi7OfM4usdaQv+thsm3/4shngpU5anRMx5NmGe0CCNfEDSzEQURdvG7jYt2PvZ/hwc/zz4UtnzZeHlRRYte8Yvrv+FCTGKHOgY4wMwwOfsI8HbtgYiN1nIIDVJtrtgkjbIcihS1PPgpQ79gYjd+4cqOT4DikKHS0O1nHg6OMRoQBGPdaFbdEmfUMUGGbLbRC0RZ2wzx4cO/NLYCUFu2eU8vqaKlVhd4ggYwhi2Wa91cfp29ch5MUxSbJg04kiGPUNTtypv6msZIN8njODrhk3PCowXJLdD2zitOe2eY8Nu6VNbjmajSfmwZzjHugaiXbb7Yc7tz4xUboZw33bIrj4CRmzYLquuBgzgnMI4Lwf2ATgXN98cOysO8TGEgBdw5g77di6OaI+U5jHg7j83tYx8yq8VsBRgtgFMOoPfHUm/CYGVonBwsXF0sooHSQ4XJqkq7nV+2rV8+SNpxtkWlvaGCQNNTYxBcjR+Fkyb3FAuplj69b3pWXR2dzmObnheeklIEVBLAFcC3+8TpoCb7563nvXkpB0MwbXPOXSjOCVx1+AGUDQSANnsMKnfxR2EiwBOCc3StOCwkTcv+Q33L9sZYes6nc6q9a+xTw+6UVycuM+Gu9MfxRsT3oDRCwBYEARd+AANxct777VvOD+R3j+qsfuk9X9hurPJ0ouXJF4l3MAIkCW2u4HUpA3Lv1ep2ElxpYB/Jw0EwKjrRUD1mzixeue5EXrn26U1X1G8aNPXqEG8oUIWOKLFzuhzqBiJoF4AkAJj8C7jZrk2CSl70kjZRil3xq0pZoPfnI3H7Ktlpdsb5wjm3oNJS9w0gzeLJnbI1vD2K+Eg2Nu/r00kxJeb86PCt0B5X9oUpcmPnxQDUsNfHz5ATbUCxvb0RZ12IZ93cY6kCJivA7SwvO4ntC2+e/OnPmR2EeaDN1V38GDTAu1tZBQSzMJtcLSckHaUMKCXP2Lm4yzD/s8OLYH02Fz4NFrAkApJihgm3WM8Lf/NXly0nd5ZfvqeChIibW0t4uAg3YhZHn1nVPEttOZBZr0vwByxBbOErhmqX4g9FHLZHdJzkTC1UYMOBiE69suAC6dQSGAjmdfZsGwCSUd+V8udB8el37wCBxCGJ2TH0qzX1EovcE9JLeDUaVRUThxe0JEdYeCqouTiMWtwj2ggCj4VJBloLRA627wSNSKmAX9nQFWG5Y2317X3sZC55pcStDMhrZWMmI8ue7IuBk9+qs22EUkHc2fqNLMKry+kFIysp2MKG8jl1zWQson6Kd6GjwSJQDZsSPU/j7NkV7WQim9pOLUHv7tM3scs6L0iBYA2f9YR+v6RynXSYusyWq+884efuN7u34u3bSIugfEwrds5V5V06Zl8h4Q7oPr2PpjKfYB+wK7dtjN4KVOWp3xlVWhpyiUzQLAw5PXDpsjrFSAVbtP8YanfwZCrIPAWbYIgCX231syG36Tk1KnVBlc3XC9QvluhdEiI4DMCaATMqu2ZPZz8tDiAl37lpEv1H0fJk3PhA828uD7SgAklSxI2qEvKG+oeUBlbLkIMiI44+BNP1ZdOgJwnX9aM/S7eYYXG9k184x/qaYBAqjoTQGQZFmQsDFj3HprQX5pyX/L5lyvwf21bwSoevlO+F0T1YhzgWz8LqDl5ujjF1WwdAXQuX6wtnTOJOlGERGouUOusfLOqqq3RGWGsYtg57olU4ii0qQCIIkuA1glGsbVN8niLPguAMTLxiMP7SOHV9WS1qYLXbKqW8QUAPHq6nnPXUu2STdrObH5kOvFB2qllz6WANrC27dI0wIuuFvxu4B0MwbzeFtx+C3yPQ4HVu4jH776YfyvwXGwtghRVkgzisC9Kzl+F8itfLhIVvUrii/wOzU3QFR/gCjeXMK0HNBCka1h3tz9mueVPx033pRKQoQk/K8+lgAwv86XZlxcKmsqXP0YH/DwxrWyql9gfn+ZkptHjAVEwMUPts8vXpHjZMy8n398+uNcrsNAWLKvZPZcacYknAEpfhgRUHYnfhgZuGEbH7hp+3JZ22do/oL5KgSsggCitNlCCCFIAC4Vn3iN1/jb1L/X2C6q9D+MIIzRB8wPI0OeaeiTb4giWDP4RLatRDjXk/61ecQjxnzmivm+mONjKV+CdOOlKKd6U0hRxn8wveJDsYNugP8FRw/phAeDhIe6ZAlL0LRlib6oN9on/qQ8pcmQLQN6H5gFFru5/sGovfW8rLaOj96Py/5fyuakjNhV95SicqJqlKg5LqJ6fXCG4WYobojGmbbuDfiq3LR9/pDO6EK5mYT0aQaI0RnsQYzWZJ1zOkyo3g7rrHrtG1NX4r5NLqmtOwGPpq9xneL3Cvx8D7M7apTCxhL8UMiREUFy1U1aSmcfiew07/ZSt5v9uz8FiJzoQCl9+Ndx4bzqFkGagUPQOvp2Aew2KHX515tJTWlqwSNRHTELskEA0RajDsf7cLJJywXaFOpgRYqLNPkCuj83L+jBtnRfisIqkWTLTDARLo2TgiK9eODQLlo0pGsgXPLie3m6wSNRAiDtmx6PWZ/N7B+efvBIvEC5/DByXPpZC1z2et3IWd3O2oRnunXtgxOaH7ofrloSNVHKBmCgM/2vo2ZFTwrSID3lKtcGCj3sfKZvgjoP3nJo7OxqeVQ9Ij0BHBQ/vu2nitu1oT8E4IzvPzJuxhS5616jRwLEY9D22mK3xpYzyr5JFL1UoazICjKJAITp78F69S9PmJbS3/l9wRf0BEL+D+e3OQFOkKKjAAAAAElFTkSuQmCC"}},"time_used":102,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":102,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCCRO.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.579Z","timestamp":1785126258579,"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 /crypto/XTVCCRO.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 04:24:18 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: \"d5a2a1547a9298739a4a570dcbe7c507\"\r\nlast-modified: Mon, 05 Aug 2024 13:39:58 GMT\r\ncdn-cachedat: 08/09/2025 14:30:24\r\nx-amz-id-2: UZz4xdb53Y06CpTOUrwqfPlQYVxoPVZNi8JN9N3d6TFyG1pR+o7ERzbaDeAV78AW0DLskYPJREA=\r\nx-amz-request-id: K1EK9C584884Q9S5\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: d5a2a1547a9298739a4a570dcbe7c507\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: b6215cf734b5ad4bc7e19d5fb2de6173\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":368,"size_decoded":1193,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (368), with no line terminators","md5":"d5a2a1547a9298739a4a570dcbe7c507","sha1":"90f5f1880c4c3307737edd39833f4350ac7a0f0a","sha256":"4a659c44e877e0c68ef33ea19142210321857468089d6a04e69f049006fbc377","sha512":"d88825a8a1421672ffddd21309d248e21c5c9d4392fb3313620d8e1b680c21f37d6beaef928fea277fc7068ac7e6ab858087437883dbaed4043036c99491f29e","ssdeep":"","tlshash":"d6e0ca749155f90d6c0ed37ebb3510f390957187500c16e5b0f76b2028c15d7bc5de24","first_seen":"2024-09-20T21:40:27.566508Z","last_seen":"2026-07-27T07:05:43.277149Z","times_seen":804,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMwNTEyMjEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Im05IDMgNSAzdjZsLTUgMy01LTNWNmw1LTNabTAgMS42OCAzLjUgMi4xNnY0LjMyTDkgMTMuMzJsLTMuNS0yLjE2VjYuODRMOSA0LjY4Wk05IDZsMi41IDEuNS0xLjA3LjY0di4wMkw5IDcuM2wtMS40My44NXYxLjY4TDkgMTAuN2wxLjQzLS44NXYuMDJsMS4wNy42NEw5IDEybC0yLjUtMS41di0zTDkgNloiIGZpbGw9IiNmZmYiLz48L3N2Zz4="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCERAC.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.836Z","timestamp":1785126258836,"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 /crypto/XTVCERAC.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 04:24:18 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: \"4b73cd85d1915f9a865ecadaa62e33da\"\r\nlast-modified: Fri, 22 Aug 2025 12:09:28 GMT\r\ncdn-cachedat: 08/22/2025 15:15:16\r\nx-amz-id-2: ecWQG91MGfSh3V0zR15pRsydrAPOLjRhQPakeG/fkFotRqRZWgjKVxHoSwanweZILNyi3muidHo=\r\nx-amz-request-id: DVN5KF8W3JFJS6WT\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 4b73cd85d1915f9a865ecadaa62e33da\r\ncdn-proxyver: 1.34\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 704deed4b52bd2c412bc9e7a6920c539\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":325,"size_decoded":1155,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (325), with no line terminators","md5":"4b73cd85d1915f9a865ecadaa62e33da","sha1":"b06f04242210f49b105d5d1f9443d8cec1789b87","sha256":"bb79dbc284e6cff6c0df52e05228292c7a572c31800c86b2572d942d1b20d8db","sha512":"8087d9f4f7af569d716db3e23cf236da70be9063215907a7ab7434491cc480101e6f321baf47486146a8309a5f851c9a8124c5b9fdc87f5357e8165f15393f68","ssdeep":"","tlshash":"73e0786a5718c54cc00396ec456940ed374e68d1354d06d5a4c54735e1075defcd3d44","first_seen":"2026-07-21T06:11:38.069381Z","last_seen":"2026-07-27T05:33:43.604337Z","times_seen":8,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGQzRGMDAiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTAuNzEgNmMuNDYgMCAuODguMjQgMS4xLjYxYTIzLjg4IDIzLjg4IDAgMCAwIDIuOTMgMy43NmMuNTkuNjUuMSAxLjYzLS43OSAxLjYzaC05LjljLS45IDAtMS4zOC0uOTgtLjgtMS42M2EyMy44OCAyMy44OCAwIDAgMCAyLjkzLTMuNzZBMS4zIDEuMyAwIDAgMSA3LjMgNmgzLjQyWiIvPjwvc3ZnPg=="}},"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":"wss","addr":"wss://websocket-visitors.smartsupp.com/socket/?EIO=3\u0026transport=websocket","fqdn":"websocket-visitors.smartsupp.com","domain":"smartsupp.com","tld":"com"},"ip":{"addr":"3.122.197.123","port":443,"asn":16509,"as":"AMAZON-02","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"websocket","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:23.770Z","timestamp":1785126263770,"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://besttrader.live\r\nSec-WebSocket-Extensions: permessage-deflate\r\nSec-WebSocket-Key: YJx2uI0AgeM4P/iBN/5CJA==\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 04:24:24 GMT\r\nConnection: upgrade\r\nUpgrade: websocket\r\nSec-WebSocket-Accept: QdbN2rTlEd9hOspmfyGDduKU9+o=\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-27T07:04:52.530819Z","times_seen":17558191,"resource_available":true,"data":""}},"time_used":435,"timings":{"blocked":0,"dns":90,"connect":113,"send":0,"wait":202,"receive":0,"ssl":30},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/images/step1.png","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.087Z","timestamp":1785126256087,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/step1.png HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/png\r\ncontent-length: 2324\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-914\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":2324,"size_decoded":2572,"mime_type":"image/png","magic":"PNG image data, 80 x 78, 8-bit/color RGBA, non-interlaced","md5":"767c5af113600b29022bc1ffb5b6e691","sha1":"8ec9ffab940c4784a3fe0521d3a6256d5ec2b826","sha256":"bbe051765831febc1afee6bb83855fe74e1e0146a45eff0e10fdf7be38fabe4c","sha512":"1604dbf3cb64647cd34b564a7639519c93953257c69d529fa60a4d135b836dd371ad73fe119268ba2558a2bc090d9c358904c47c8d8d83074f66091b3b19f536","ssdeep":"","tlshash":"7141080cfa501e01149ada022cd0a1b7a42e89d1cb84ea3c78cbc2070e701f86cb799f","first_seen":"2025-08-09T17:53:17.858687Z","last_seen":"2026-07-27T04:25:12.709922Z","times_seen":11,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAFAAAABOCAYAAAC3zZFGAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyNpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChNYWNpbnRvc2gpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkMxQUZGRDE0QjQ4MjExRTVCRjIwRjA1QTAxMTBFQTg5IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkMxQUZGRDE1QjQ4MjExRTVCRjIwRjA1QTAxMTBFQTg5Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QzFBRkZEMTJCNDgyMTFFNUJGMjBGMDVBMDExMEVBODkiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QzFBRkZEMTNCNDgyMTFFNUJGMjBGMDVBMDExMEVBODkiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4USsSRAAAFh0lEQVR42uxcWWwVVRg+t8EG20YIoQYqlBeWFoJhCaEJIIsmsgiRJ3wwuCAJCQEC4QF9NATlQZtUIaABHoTIHgyLYtG0gDaVpLgEgiyBthqqRZBEQCVx/P7Of+M4mXtnzrkzc8/MPV/y5d7OzFnm6/nP/5/tZizLEhJ4DGwCnwcHiGTiH7Ab/ALcDn5TSGYZCQHLwZPgLJEe0MtvBt/g79Iok3h2e8rE62tA4AbwzahbIBXylkgvyKzHgZeiaIGLwE0i3SAd1kRhwpPAj7mp5zODJPEJ8JTHe8wJ24SHgW386dePJA0jwBuuaw/ZUYYiYAXYAk4J2BEn1QMX/C5lOTLZHVC8koeXgOQwFhtp1Ez4RfAjhViqZE3YKeAM9k4yHek9sMr0gUKMBA8peKEbpg+0JwU+AasV0n9u+kDL2oXPlxXSPgBHgz+VugkvUazA2gSLF6oJP6rQ8pYLe3am5NFPwtteB5vB9/i7QR4BM0Ya9ZGIQQQm7Oe9SrbVFtoCb4PTPK4vBHtZ7GKQyp6vs4BH+HM9ONvj/ofg4CI2DCp7m64mTHibRWwHzxsnIo8D4JfgB2B/j/sUJ94q4ntR2SviGsrJDmnS4kRCGcqpmLCJEU0caAQ0gbRpgfoH0s8lJZCeo2kgvdUE0iaQLhp6TSBtAmljwgZGQBNIl2wgvZi9cDGC6BbwqQB1rxT2lhZaF98CXo3TC1MMSGdFXgVrwI2uNL+AjxchdFkN7o2zUFUBG8A6RyDd35XmJjgkxvc4z62+M24TVhWwm013j7C3xbnT0Fh4h1DbsCSLfWwJ93N0UfTPngVOZpOlTebZ3Ri0y+JnNl86sdTKjcKKWkDdnQh1KyuFvWmqRjIt7ffZyf3ir1EIqDPIMbwOrhPye37c+IPH/O+Af5aCgBOFfaZlTMj5fs+e+lKaBZzHExyVEeV/h51Uaxr7QJqP/FQoHJKRxH0uqz2OQHo+hxRhB8ltrnLIqx6OQTwCHT46Klwnt6KakaYQpjaCl2h0DUOpz/M7+E1mR2f+6DTB02CH414HX6viPrTVJ69qDt3+083yhshDwlTwJbAOfOCRpscKH7fARxxlrA6Qph0sB4eCS8GBYAXYwqzga0v5mXJO44fXsvVQFbALHA6ezpFmAdgdsoA7HPlXgbcDpHmGBerkvzu53kOZw1z3BnEaP/Sw+MoCyqYJm2sDil7JluJEsyOfZte9VzhNEKyiPJIaxlwAxwZ4rpadzznX2HwEX+9yXOsBp3pcz4Vvqd9M4oTq+IDiZZ0cDc0msAO6wI7jL2YHX2vkZ7o4TRBM6AvaNTBHWa7xMa0T3L8VWg7lccynrJVJbIENPveX8XRaoaA8lvs8My2JAtYHeHE/WAGnrPzyqk+igMM1qkttEgX0O588PmSHlbcuaVzWPJRjfC4LyuNgGidUfwMHBXguyIySyqzT/yZTktgCuzWqS1cSBbyo04iojCNyryGQrvhKo7qcJQGvedygfX81mgrYrEk9qI88SQJ+5nHzWWGvl1oasY7rdlkU+KuTIVrCdRLwXWEvMOsO568pbQk42M/noTOKabNoys5IE5dZ+uOcY6DfD7zi8/yP4DiFSYQnOW0+/ACWZecDs4rS9oj3ReEL0lGC1jaym9pp4ep4kfo+OuLbt37iDGN28jxbI4cKDzUUcKPj+wmuc9xoEo7Fp4zkzyDrBlpqPMMtM5awRdireH+nRUBCNb/Y6IjL+Q6cCd51XkzDZEIvv1iUB36+5n7vrvtGWmZjaEFoOrgrAodBjpU2D9zJNRuTtumsudzRjwphzL1K2Cey8k5niRSCtn28IOxNlg2Sadv4H7Bf2D/QLUpRQCdG8dB0Bg8HaUlgIN/7XdjTY7T37zQPa6/JZP6vAAMAR5hdCYhzrXwAAAAASUVORK5CYII="}},"time_used":337,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":317,"receive":20,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCRNDR.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.635Z","timestamp":1785126258635,"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 /crypto/XTVCRNDR.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 04:24:18 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: \"b15cd3a31491ba71670cad9a2088fe5e\"\r\nlast-modified: Tue, 22 Nov 2022 13:38:20 GMT\r\ncdn-cachedat: 08/09/2025 14:29:14\r\nx-amz-id-2: eYWXvK/npjiuyjUcE4zNOwqwZ3FXOPkQbRxwYp8XIFj2NqKaLBsoOyV968MgIW77yN4J06SF9Sc=\r\nx-amz-request-id: 3J5Y88VVQV67CWPB\r\nx-amz-meta-hash: b15cd3a31491ba71670cad9a2088fe5e\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: ed760f568a395200d31056dede46ddd7\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":545,"size_decoded":1245,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (545), with no line terminators","md5":"b15cd3a31491ba71670cad9a2088fe5e","sha1":"7741476906c8d178b63164d5c5e11d037cf1f118","sha256":"f9c02db12797ec81c1a312bd1688cdd75d58f76048164537087fee2c6c4c3915","sha512":"181dd2c411ad84c5d5d2ac0987ad18901443cfca28da774939f98231247bc840c0539a3178711bec4be35b9494e311a5335e742d67f842c4ee1514836f2d793b","ssdeep":"","tlshash":"4ff08b6ad71da45ed507d29cea70d862138c40fbb18682f4a89d9f7e20250d7ce67874","first_seen":"2023-05-02T00:44:00Z","last_seen":"2026-07-27T07:05:43.364081Z","times_seen":834,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYWF2eG9rYXVuKSIgZD0iTTAgMGgxOHYxOEgweiIvPjxwYXRoIGQ9Ik01LjY3IDYuNWEuODMuODMgMCAwIDEtLjQzLS4xMkE0LjU4IDQuNTggMCAxIDAgOSA0LjQyVjRhNSA1IDAgMSAxLTQuMDYgMi4wOC44My44MyAwIDEgMSAuNzIuNDJabTAtLjQyYS40Mi40MiAwIDEgMCAwLS44My40Mi40MiAwIDAgMCAwIC44M1pNOSAxMmEzIDMgMCAxIDAgMC02IDMgMyAwIDAgMCAwIDZaIiBmaWxsPSIjZmZmIi8+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJhYXZ4b2thdW4iIHgxPSI5IiB5MT0iMCIgeDI9IjkiIHkyPSIxOCIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiNFOTIxMjEiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiM5QzA0MDMiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4="}},"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":"s3.tradingview.com/external-embedding/embed-widget-ticker-tape.js","fqdn":"s3.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"194.242.11.186","port":443,"asn":34989,"as":"ServeTheWorld AS","country":"Norway","country_code":"NO"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.050Z","timestamp":1785126256050,"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-ticker-tape.js HTTP/1.1\r\nHost: s3.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: */*\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://besttrader.live/\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 04:24:16 GMT\r\ncontent-type: text/javascript\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1837468\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 3000\r\ncache-control: public, max-age=300\r\ncontent-encoding: zstd\r\netag: \"2671d4a92091986b7abd2e1e685669ca\"\r\nlast-modified: Fri, 24 Jul 2026 10:29:29 GMT\r\nx-amz-id-2: MmO7S7qvpk7e7uAwyKi1zjeKKbKi5IBRI9Fnw08J6tdMbbVvXvrURHIxu7TxhDm94C2BFQDD1p8=\r\nx-amz-request-id: 6FDA3NKBBMZWPGT3\r\nx-amz-server-side-encryption: AES256\r\nx-amz-version-id: wQVqs5hr7RnUyN2oXxLylh_AKdOK0U2U\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncontent-security-policy: default-src 'none'\r\ncdn-cachedat: 07/24/2026 10:30:10\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 3452f179092dd316e3e10556cb95bf69\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":13608,"size_decoded":6236,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (3458)","md5":"2671d4a92091986b7abd2e1e685669ca","sha1":"b59db96af3dd1593356058703fc7af3cd7269919","sha256":"986cfef49d6a6ccd5cb1f1cbf562e8341ed581936885830831a2f4c3dc2b5901","sha512":"c07159fc500c72469ba6dfb7ccf5afdbaf476906fb039e5bfc7ab2c95e79b0067a47e6e02ad44915b9ba426273dc39996ffb1899c029253b56e4b02f7d419883","ssdeep":"384:gf6uCWoofYkFdjhUjrb26n0q6Or26ZMViZMEmkfknYH:uD5Unb26nD6Or26ZkFE9fknE","tlshash":"8e52d8a9b660ecbd51d945dbe07a2321b6193944b203aca4b9ecd4c510fdccca131f7e","first_seen":"2026-07-20T13:42:57.5385Z","last_seen":"2026-07-27T07:05:45.416589Z","times_seen":1089,"resource_available":true,"data":"KCgpPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHQodCxlKXtpZihudWxsPT09dCl0aHJvdyBuZXcgRXJyb3IoYCR7ZT8/IlZhbHVlIn0gaXMgbnVsbGApO3JldHVybiB0fWNvbnN0IGU9eyJjb2xvci1jb2xkLWdyYXktMzAwIjoiI0IyQjVCRSIsImNvbG9yLWJyYW5kIjoiIzI5NjJGRiIsImNvbG9yLWJyYW5kLWhvdmVyIjoiIzFFNTNFNSIsImNvbG9yLWJyYW5kLWFjdGl2ZSI6IiMxODQ4Q0MifQo7Y29uc3QgaT1KU09OLnBhcnNlKCd7ImNyeXB0by1ta3Qtc2NyZWVuZXIiOnsid2lkdGgiOjEwMDAsImhlaWdodCI6NDkwLCJkZWZhdWx0Q29sdW1uIjoib3ZlcnZpZXciLCJtYXJrZXQiOiJjcnlwdG8iLCJzY3JlZW5lcl90eXBlIjoiY3J5cHRvX21rdCIsImRpc3BsYXlDdXJyZW5jeSI6IlVTRCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwiZXZlbnRzIjp7IndpZHRoIjo1MTAsImhlaWdodCI6NjAwLCJpc1RyYW5zcGFyZW50IjpmYWxzZSwiaGlkZUltcG9ydGFuY2VJbmRpY2F0b3IiOmZhbHNlLCJhdXRvc2l6ZSI6ZmFsc2V9LCJmb3JleC1jcm9zcy1yYXRlcyI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImN1cnJlbmNpZXMiOlsiRVVSIiwiVVNEIiwiSlBZIiwiR0JQIiwiQ0hGIiwiQVVEIiwiQ0FEIiwiTlpEIl0sImZyYW1lRWxlbWVudElkIjpudWxsLCJhdXRvc2l6ZSI6ZmFsc2V9LCJmb3JleC1oZWF0LW1hcCI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImN1cnJlbmNpZXMiOlsiRVVSIiwiVVNEIiwiSlBZIiwiR0JQIiwiQ0hGIiwiQVVEIiwiQ0FEIiwiTlpEIiwiQ05ZIl0sImZyYW1lRWxlbWVudElkIjpudWxsLCJhdXRvc2l6ZSI6ZmFsc2V9LCJob3RsaXN0cyI6eyJ3aWR0aCI6NDAwLCJoZWlnaHQiOjYwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImRhdGVSYW5nZSI6IjEyTSIsInNob3dTeW1ib2xMb2dvIjpmYWxzZX0sIm1hcmtldC1vdmVydmlldyI6eyJ3aWR0aCI6NDAwLCJoZWlnaHQiOjY1MCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImRhdGVSYW5nZSI6IjEyTSIsInNob3dTeW1ib2xMb2dvIjp0cnVlfSwibWFya2V0LXF1b3RlcyI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQ1MCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsInNob3dTeW1ib2xMb2dvIjpmYWxzZX0sIm1pbmktc3ltYm9sLW92ZXJ2aWV3Ijp7IndpZHRoIjozNTAsImhlaWdodCI6MjIwLCJzeW1ib2wiOiJGWDpFVVJVU0QiLCJkYXRlUmFuZ2UiOiIxMk0iLCJpc1RyYW5zcGFyZW50IjpmYWxzZSwiYXV0b3NpemUiOmZhbHNlLCJsYXJnZUNoYXJ0VXJsIjoiIn0sInN5bWJvbC1vdmVydmlldyI6eyJ3aWR0aCI6MTAwMCwiaGVpZ2h0Ijo1MDAsInN5bWJvbHMiOltbIkFwcGxlIiwiQUFQTHwxRCJdLFsiR29vZ2xlIiwiR09PR0x8MUQiXSxbIk1pY3Jvc29mdCIsIk1TRlR8MUQiXV0sImF1dG9zaXplIjpmYWxzZSwiY2hhcnRPbmx5IjpmYWxzZSwiaGlkZURhdGVSYW5nZXMiOmZhbHNlLCJoaWRlTWFya2V0U3RhdHVzIjpmYWxzZSwiaGlkZVN5bWJvbExvZ28iOmZhbHNlLCJzY2FsZVBvc2l0aW9uIjoicmlnaHQiLCJzY2FsZU1vZGUiOiJOb3JtYWwiLCJmb250RmFtaWx5IjoiLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBUcmVidWNoZXQgTVMsIFJvYm90bywgVWJ1bnR1LCBzYW5zLXNlcmlmIiwiZm9udFNpemUiOiIxMCIsIm5vVGltZVNjYWxlIjpmYWxzZSwiY2hhcnRUeXBlIjoiYXJlYSIsInZhbHVlc1RyYWNraW5nIjoiMCIsImNoYW5nZU1vZGUiOiJwcmljZS1hbmQtcGVyY2VudCJ9LCJhZHZhbmNlZC1jaGFydCI6eyJib2R5SWQiOiJ3aWRnZXQtY29udGFpbmVyIiwiYm9keUNsYXNzZXMiOlsiY2hhcnQtcGFnZSIsInVuc2VsZWN0YWJsZSIsIm9uLXdpZGdldCJdfSwic2NyZWVuZXIiOnsid2lkdGgiOjExMDAsImhlaWdodCI6NTIzLCJkZWZhdWx0Q29sdW1uIjoib3ZlcnZpZXciLCJkZWZhdWx0U2NyZWVuIjoiZ2VuZXJhbCIsIm1hcmtldCI6ImZvcmV4Iiwic2hvd1Rvb2xiYXIiOnRydWUsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwic2luZ2xlLXF1b3RlIjp7IndpZHRoIjozNTAsInN5bWJvbCI6IkZYOkVVUlVTRCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwic3ltYm9sLXByb2ZpbGUiOnsid2lkdGgiOjQ4MCwiaGVpZ2h0Ijo2NTAsInN5bWJvbCI6Ik5BU0RBUTpBQVBMIiwiaXNUcmFuc3BhcmVudCI6ZmFsc2V9LCJzeW1ib2wtaW5mbyI6eyJ3aWR0aCI6MTAwMCwic3ltYm9sIjoiTkFTREFROkFBUEwiLCJpc1RyYW5zcGFyZW50IjpmYWxzZX0sInRlY2huaWNhbC1hbmFseXNpcyI6eyJpbnRlcnZhbCI6IjFtIiwid2lkdGgiOjQyNSwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImhlaWdodCI6NDUwLCJzeW1ib2wiOiJOQVNEQVE6QUFQTCIsInNob3dJbnRlcnZhbFRhYnMiOnRydWUsImRpc3BsYXlNb2RlIjoic2luZ2xlIn0sInRpY2tlci10YXBlIjp7ImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6ImFkYXB0aXZlIiwic2hvd1N5bWJvbExvZ28iOmZhbHNlfSwidGlja2VycyI6eyJpc1RyYW5zcGFyZW50IjpmYWxzZSwic2hvd1N5bWJvbExvZ28iOmZhbHNlfSwiZmluYW5jaWFscyI6eyJ3aWR0aCI6NDgwLCJoZWlnaHQiOjgzMCwiYXV0b3NpemUiOmZhbHNlLCJzeW1ib2wiOiJOQVNEQVE6QUFQTCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6InJlZ3VsYXIiLCJsYXJnZUNoYXJ0VXJsIjoiIn0sInRpbWVsaW5lIjp7IndpZHRoIjo0ODAsImhlaWdodCI6ODMwLCJhdXRvc2l6ZSI6ZmFsc2UsImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6InJlZ3VsYXIiLCJmZWVkTW9kZSI6ImFsbF9zeW1ib2xzIn0sInN0b2NrLWhlYXRtYXAiOnsid2lkdGgiOjUwMCwiaGVpZ2h0Ijo1MDAsImF1dG9zaXplIjp0cnVlLCJkYXRhU291cmNlIjoiU1BYNTAwIiwiZXhjaGFuZ2VzIjpbXSwiZ3JvdXBpbmciOiJzZWN0b3IiLCJibG9ja1NpemUiOiJtYXJrZXRfY2FwX2Jhc2ljIiwiYmxvY2tDb2xvciI6ImNoYW5nZSIsImhhc1RvcEJhciI6ZmFsc2UsImlzRGF0YVNldEVuYWJsZWQiOmZhbHNlLCJpc1pvb21FbmFibGVkIjp0cnVlLCJoYXNTeW1ib2xUb29sdGlwIjp0cnVlLCJzeW1ib2xVcmwiOiIiLCJpc01vbm9TaXplIjpmYWxzZX0sImNyeXB0by1jb2lucy1oZWF0bWFwIjp7IndpZHRoIjo1MDAsImhlaWdodCI6NTAwLCJhdXRvc2l6ZSI6dHJ1ZSwiZGF0YVNvdXJjZSI6IkNyeXB0byIsImJsb2NrU2l6ZSI6Im1hcmtldF9jYXBfY2FsYyIsImJsb2NrQ29sb3IiOiIyNGhfY2xvc2VfY2hhbmdlfDUiLCJoYXNUb3BCYXIiOmZhbHNlLCJpc0RhdGFTZXRFbmFibGVkIjpmYWxzZSwiaXNab29tRW5hYmxlZCI6dHJ1ZSwiaGFzU3ltYm9sVG9vbHRpcCI6dHJ1ZSwic3ltYm9sVXJsIjoiIiwiaXNNb25vU2l6ZSI6ZmFsc2V9LCJldGYtaGVhdG1hcCI6eyJ3aWR0aCI6NTAwLCJoZWlnaHQiOjUwMCwiYXV0b3NpemUiOnRydWUsImRhdGFTb3VyY2UiOiJBbGxVU0V0ZiIsImJsb2NrU2l6ZSI6InZvbHVtZSIsImJsb2NrQ29sb3IiOiJjaGFuZ2UiLCJncm91cGluZyI6ImFzc2V0X2NsYXNzIiwiaGFzVG9wQmFyIjpmYWxzZSwiaXNEYXRhU2V0RW5hYmxlZCI6ZmFsc2UsImlzWm9vbUVuYWJsZWQiOnRydWUsImhhc1N5bWJvbFRvb2x0aXAiOnRydWUsInN5bWJvbFVybCI6IiIsImlzTW9ub1NpemUiOmZhbHNlfX0nKQo7dmFyIHIsczshZnVuY3Rpb24odCl7bGV0IGU7IWZ1bmN0aW9uKHQpe3QuU2V0U3ltYm9sPSJzZXQtc3ltYm9sIix0LlNldEludGVydmFsPSJzZXQtaW50ZXJ2YWwifShlPXQuTmFtZXN8fCh0Lk5hbWVzPXt9KSl9KHJ8fChyPXt9KSksZnVuY3Rpb24odCl7bGV0IGU7IWZ1bmN0aW9uKHQpe3QuU3ltYm9sQ2xpY2s9InR2LXdpZGdldC1zeW1ib2wtY2xpY2siLHQuV2lkZ2V0TG9hZD0idHYtd2lkZ2V0LWxvYWQiLHQuV2lkZ2V0UmVhZHk9InR2LXdpZGdldC1yZWFkeSIsdC5SZXNpemVJZnJhbWU9InR2LXdpZGdldC1yZXNpemUtaWZyYW1lIix0Lk5vRGF0YT0idHYtd2lkZ2V0LW5vLWRhdGEifShlPXQuTmFtZXN8fCh0Lk5hbWVzPXt9KSl9KHN8fChzPXt9KSk7Y29uc3Qgbj0iX19GQUlMX18iLG89Il9fTkhUVFBfXyIsYT1uZXcgUmVnRXhwKCJeaHR0cChzKT86KC8vKT8iKTtmdW5jdGlvbiBsKHQ9bG9jYXRpb24uaHJlZil7Y29uc3QgZT1mdW5jdGlvbih0KXt0cnl7Y29uc3QgZT1uZXcgVVJMKHQpO3JldHVybiBhLnRlc3QoZS5wcm90b2NvbCk/bnVsbDpvfWNhdGNoKHQpe3JldHVybiBufX0odCk7cmV0dXJuIGV8fHQucmVwbGFjZShhLCIiKX1jb25zdCBjPXt3aWRnZXRIb3N0OiJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tIixlbnY6IkJBVFRMRSJ9O2NvbnN0IGg9WyJsb2NhbGUiLCJzeW1ib2wiLCJtYXJrZXQiXTtjbGFzcyBke2NvbnN0cnVjdG9yKHQpe3RoaXMuX2NvcHlyaWdodENvbnRhaW5lcj1udWxsO2NvbnN0IGU9dD8/dGhpcy5fZ2V0U2NyaXB0SW5mbygpO2UmJnRoaXMuX3JlcGxhY2VTY3JpcHQoZSl9aGFzQ29weXJpZ2h0KCl7cmV0dXJuISF0aGlzLl9jb3B5cmlnaHRDb250YWluZXJ9Z2V0IHdpZGdldElkKCl7dGhyb3cgbmV3IEVycm9yKCJNZXRob2QgbXVzdCBiZSBvdmVycmlkZGVuIil9d2lkZ2V0VXRtTmFtZSgpe3JldHVybiB0aGlzLndpZGdldElkfWdldCBkZWZhdWx0U2V0dGluZ3MoKXtyZXR1cm4gaVt0aGlzLndpZGdldElkXX1nZXQgcHJvcGVydGllc1RvV29ya1dpdGgoKXtyZXR1cm5bXX1nZXQgdXNlUGFyYW1zRm9yQ29ubmVjdFNvY2tldCgpe3JldHVybiExfWdldCB1c2VTbm93cGxvd1BhZ2VWaWV3KCl7cmV0dXJuITF9dXNlUXVlcnlTdHJpbmdQYXJhbWV0ZXJzKHQpe3JldHVybnt9fWZpbHRlclJhd1NldHRpbmdzKHQpe2NvbnN0IGU9e30saT17Li4udCwuLi50aGlzLnVzZVF1ZXJ5U3RyaW5nUGFyYW1ldGVycyh0KX0scj1PYmplY3Qua2V5cyhpKSxzPW5ldyBTZXQodGhpcy5wcm9wZXJ0aWVzVG9Xb3JrV2l0aCk7cmV0dXJuIHIuZm9yRWFjaCgodD0+e3MuaGFzKHQpJiYoZVt0XT1pW3RdKX0pKSxlfWdldCBzaG91bGRMaXN0ZW5Ub0lmcmFtZVJlc2l6ZSgpe3JldHVybiEwfWdldCBwcm9wZXJ0aWVzVG9Ta2lwSW5IYXNoKCl7cmV0dXJuWyJjdXN0b21lciIsImxvY2FsZSJdfWdldCBwcm9wZXJ0aWVzVG9BZGRUb0dldFBhcmFtcygpe3JldHVyblsibG9jYWxlIl19c2hvdWxkQWRkQ29weXJpZ2h0U3R5bGVzKCl7cmV0dXJuITB9X2RlZmF1bHRXaWR0aCgpe31fZGVmYXVsdEhlaWdodCgpe31fZ2V0U2NyaXB0SW5mbygpe2NvbnN0IHQ9ZG9jdW1lbnQuY3VycmVudFNjcmlwdDtpZighdHx8IXQuc3JjKXJldHVybiBjb25zb2xlLmVycm9yKCJDb3VsZCBub3Qgc2VsZi1yZXBsYWNlIHRoZSBzY3JpcHQsIHdpZGdldCBlbWJlZGRpbmcgaGFzIGJlZW4gYWJvcnRlZCIpLG51bGw7cmV0dXJue3NjcmlwdFVSTDpmdW5jdGlvbih0KXtjb25zdCBlPW5ldyBVUkwodCxkb2N1bWVudC5iYXNlVVJJKTtyZXR1cm57aG9zdDplLmhvc3QscGF0aG5hbWU6ZS5wYXRobmFtZSxocmVmOmUuaHJlZixwcm90b2NvbDplLnByb3RvY29sfX0odC5zcmMpLHNjcmlwdEVsZW1lbnQ6dCxpZDp0LmlkLHJhd1NldHRpbmdzOnRoaXMuX3NjcmlwdENvbnRlbnRUb0pTT04odCksb3ZlcnJpZGVIb3N0OnQuZ2V0QXR0cmlidXRlKCJvdmVycmlkZS1ob3N0Iil9fV9yZXBsYWNlU2NyaXB0KGkpe2NvbnN0e3NjcmlwdFVSTDpyLHNjcmlwdEVsZW1lbnQ6bixyYXdTZXR0aW5nczpvLGlkOmEsb3ZlcnJpZGVIb3N0Omx9PWksaD1sfHxmdW5jdGlvbih0LGU9Yyl7aWYoIkJBVFRMRSI9PT1lLmVudil7aWYod2luZG93LldJREdFVF9IT1NUKXJldHVybiB3aW5kb3cuV0lER0VUX0hPU1Q7aWYodC5ob3N0Lm1hdGNoKC9cLlx3c3RcdypcLlx3diQvaSkpcmV0dXJuYGh0dHBzOi8vJHsoaT10Lmhvc3Qscj0zLGkuc3BsaXQoIi4iKS5zbGljZSgtcikuam9pbigiLiIpKS5yZXBsYWNlKC9eYmV0YTAoPz1cLnhzdGFnaW5nXC50diQpL2ksImJldGEwLXhzdGFnaW5nIikucmVwbGFjZSgvXC4oXHcpdiQvaSwoKHQsZSk9PmAtd2lkZ2V0LiR7ZX12YCkpfWB9dmFyIGkscjtyZXR1cm4gZS53aWRnZXRIb3N0fShyKSxkPW4ucGFyZW50Tm9kZTtvJiYidGltZWxpbmUiPT09dGhpcy53aWRnZXRVdG1OYW1lKCkmJihvLmxvY2FsZT0iZW4iKTtjb25zdCBnPW4ubm9uY2V8fG4uZ2V0QXR0cmlidXRlKCJub25jZSIpLHU9ZnVuY3Rpb24odCl7aWYobnVsbD09PXQpcmV0dXJuIG51bGw7Y29uc3QgZT10LnF1ZXJ5U2VsZWN0b3IoIiN0cmFkaW5ndmlldy1jb3B5cmlnaHQiKSxpPXQucXVlcnlTZWxlY3RvcigiI3RyYWRpbmd2aWV3LXF1b3RlcyIpLHI9ZXx8aTtyZXR1cm4gciYmdC5yZW1vdmVDaGlsZChyKSxyfShkKSxtPWQucXVlcnlTZWxlY3RvcigiLnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQiKTt0aGlzLl9jb3B5cmlnaHRDb250YWluZXI9dXx8bTtjb25zdCBwPWQuY2xhc3NMaXN0LmNvbnRhaW5zKCJ0cmFkaW5ndmlldy13aWRnZXQtY29udGFpbmVyIik7dGhpcy5pZnJhbWVDb250YWluZXI9ZCYmcD9kOmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLG8mJih0aGlzLnNldHRpbmdzPXRoaXMuZmlsdGVyUmF3U2V0dGluZ3MobykpLG8mJnRoaXMuX3ZhbGlkYXRlU2V0dGluZ3MoKXx8KGNvbnNvbGUuZXJyb3IoIkludmFsaWQgc2V0dGluZ3MgcHJvdmlkZWQsIGZhbGwgYmFjayB0byBkZWZhdWx0cyIpLHRoaXMuc2V0dGluZ3M9dGhpcy5maWx0ZXJSYXdTZXR0aW5ncyh0aGlzLmRlZmF1bHRTZXR0aW5ncykpCjtjb25zdCBmPSIzMnB4Iix7d2lkdGg6dyxoZWlnaHQ6eX09dGhpcy5zZXR0aW5ncyxiPXZvaWQgMD09PXk/dm9pZCAwOmAke3l9JHtOdW1iZXIuaXNJbnRlZ2VyKHkpPyJweCI6IiJ9YCxTPXZvaWQgMD09PXc/dm9pZCAwOmAke3d9JHtOdW1iZXIuaXNJbnRlZ2VyKHcpPyJweCI6IiJ9YDtpZih2b2lkIDAhPT1TJiYodGhpcy5pZnJhbWVDb250YWluZXIuc3R5bGUud2lkdGg9Uyksdm9pZCAwIT09YiYmKHRoaXMuaWZyYW1lQ29udGFpbmVyLnN0eWxlLmhlaWdodD1iKSx0aGlzLnNob3VsZEFkZENvcHlyaWdodFN0eWxlcygpKXtjb25zdCB0PWZ1bmN0aW9uKCl7Y29uc3QgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpO3JldHVybiB0LmlubmVySFRNTD1gXG5cdC50cmFkaW5ndmlldy13aWRnZXQtY29weXJpZ2h0IHtcblx0XHRmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcblx0XHRsaW5lLWhlaWdodDogMzJweCAhaW1wb3J0YW50O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuXHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcblx0XHQvKiBAbWl4aW4gc2YtcHJvLWRpc3BsYXktZm9udDsgKi9cblx0XHRmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAnVHJlYnVjaGV0IE1TJywgUm9ib3RvLCBVYnVudHUsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1jb2xkLWdyYXktMzAwIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQgYSB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0Y29sb3I6ICR7ZVsiY29sb3ItY29sZC1ncmF5LTMwMCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQgYTp2aXNpdGVkIHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1jb2xkLWdyYXktMzAwIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCBhOmhvdmVyIC5ibHVlLXRleHQge1xuXHRcdGNvbG9yOiAke2VbImNvbG9yLWJyYW5kLWhvdmVyIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCBhOmFjdGl2ZSAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZC1hY3RpdmUiXX0gIWltcG9ydGFudDtcblx0fVxuXG5cdC50cmFkaW5ndmlldy13aWRnZXQtY29weXJpZ2h0IGE6dmlzaXRlZCAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cdGAsdH0oKTtnJiZ0LnNldEF0dHJpYnV0ZSgibm9uY2UiLGcpLHRoaXMuaWZyYW1lQ29udGFpbmVyLmFwcGVuZENoaWxkKHQpfWNvbnN0IHY9dGhpcy5oYXNDb3B5cmlnaHQoKT9gY2FsYygxMDAlIC0gJHtmfSlgOiIxMDAlIixDPWxvY2F0aW9uLmhvc3RuYW1lLFQ9bT8id2lkZ2V0X25ldyI6IndpZGdldCIsXz10aGlzLndpZGdldFV0bU5hbWUoKTt0aGlzLnNldHRpbmdzLnV0bV9zb3VyY2U9Qyx0aGlzLnNldHRpbmdzLnV0bV9tZWRpdW09VCx0aGlzLnNldHRpbmdzLnV0bV9jYW1wYWlnbj1fLHRoaXMuX3VwZGF0ZUNvcHlyaWdodEhyZWZQYXJhbXMoQyxULF8pO2NvbnN0IGs9dGhpcy5zZXR0aW5ncy5pZnJhbWVUaXRsZXx8YCR7dGhpcy53aWRnZXRJZC5yZXBsYWNlKCItIiwiICIpfSBUcmFkaW5nVmlldyB3aWRnZXRgLEE9dGhpcy5zZXR0aW5ncy5pZnJhbWVMYW5nfHwiZW4iO3RoaXMuaWZyYW1lPXRoaXMuX2NyZWF0ZUlmcmFtZSh2LGgsYSxrLEEpLHRoaXMuX2FkZENTUEVycm9yTGlzdGVuZXIoaCksZyYmdGhpcy5pZnJhbWUuc2V0QXR0cmlidXRlKCJub25jZSIsZyk7Y29uc3QgST10aGlzLmlmcmFtZUNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCIudHJhZGluZ3ZpZXctd2lkZ2V0LWNvbnRhaW5lcl9fd2lkZ2V0Iik7aWYoST8odChJLnBhcmVudEVsZW1lbnQpLnJlcGxhY2VDaGlsZCh0aGlzLmlmcmFtZSxJKSxuPy5yZW1vdmUoKSk6cD8odGhpcy5pZnJhbWVDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5pZnJhbWUpLG4/LnJlbW92ZSgpKToodGhpcy5pZnJhbWVDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5pZnJhbWUpLGQucmVwbGFjZUNoaWxkKHRoaXMuaWZyYW1lQ29udGFpbmVyLHQobikpKSx0aGlzLnNob3VsZExpc3RlblRvSWZyYW1lUmVzaXplJiZmdW5jdGlvbih0LGUsaSl7Y29uc3Qgcj1lLmNvbnRlbnRXaW5kb3c7aWYoIXIpcmV0dXJuIGNvbnNvbGUuZXJyb3IoIkNhbm5vdCBsaXN0ZW4gdG8gdGhlIGV2ZW50IGZyb20gdGhlIHByb3ZpZGVkIGlmcmFtZSwgY29udGVudFdpbmRvdyBpcyBub3QgYXZhaWxhYmxlIiksKCk9Pnt9O2Z1bmN0aW9uIHMoZSl7ZS5zb3VyY2UmJmUuc291cmNlPT09ciYmZS5kYXRhJiZlLmRhdGEubmFtZSYmZS5kYXRhLm5hbWU9PT10JiZpKGUuZGF0YS5kYXRhKX13aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIscywhMSl9KHMuTmFtZXMuUmVzaXplSWZyYW1lLHRoaXMuaWZyYW1lLCh0PT57dC53aWR0aCYmKHRoaXMuaWZyYW1lLnN0eWxlLndpZHRoPXQud2lkdGgrInB4Iix0aGlzLmlmcmFtZUNvbnRhaW5lci5zdHlsZS53aWR0aD10LndpZHRoKyJweCIpLHRoaXMuaWZyYW1lLnN0eWxlLmhlaWdodD10LmhlaWdodCsicHgiLHRoaXMuaWZyYW1lQ29udGFpbmVyLnN0eWxlLmhlaWdodD10LmhlaWdodCsodGhpcy5oYXNDb3B5cmlnaHQoKT8zMjowKSsicHgifSkpLHUpe2NvbnN0IHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dC5zdHlsZS5oZWlnaHQ9Zix0LnN0eWxlLmxpbmVIZWlnaHQ9Zix2b2lkIDAhPT1TJiYodC5zdHlsZS53aWR0aD1TKSx0LnN0eWxlLnRleHRBbGlnbj0iY2VudGVyIix0LnN0eWxlLnZlcnRpY2FsQWxpZ249Im1pZGRsZSIsdC5pbm5lckhUTUw9dS5pbm5lckhUTUwsCnRoaXMuaWZyYW1lQ29udGFpbmVyLmFwcGVuZENoaWxkKHQpfX1faWZyYW1lU3JjQmFzZSh0KXtsZXQgZT1gJHt0fS9lbWJlZC13aWRnZXQvJHt0aGlzLndpZGdldElkfS9gO3JldHVybiB0aGlzLnNldHRpbmdzLmN1c3RvbWVyJiYtMSE9PXRoaXMucHJvcGVydGllc1RvU2tpcEluSGFzaC5pbmRleE9mKCJjdXN0b21lciIpJiYoZSs9YCR7dGhpcy5zZXR0aW5ncy5jdXN0b21lcn0vYCksZX1fdmFsaWRhdGVTZXR0aW5ncygpe2NvbnN0IHQ9KHQsZSk9PntpZih2b2lkIDA9PT10KXJldHVybiBlO2NvbnN0IGk9U3RyaW5nKHQpO3JldHVybi9eXGQrJC8udGVzdChpKT9wYXJzZUludChpKTovXihcZCslfGF1dG8pJC8udGVzdChpKT9pOm51bGx9LGU9dCh0aGlzLnNldHRpbmdzLndpZHRoLHRoaXMuX2RlZmF1bHRXaWR0aCgpKSxpPXQodGhpcy5zZXR0aW5ncy5oZWlnaHQsdGhpcy5fZGVmYXVsdEhlaWdodCgpKTtyZXR1cm4gbnVsbCE9PWUmJm51bGwhPT1pJiYodGhpcy5zZXR0aW5ncy53aWR0aD1lLHRoaXMuc2V0dGluZ3MuaGVpZ2h0PWksITApfV9zZXRTZXR0aW5nc1F1ZXJ5U3RyaW5nKHQpe2NvbnN0IGU9dGhpcy5wcm9wZXJ0aWVzVG9BZGRUb0dldFBhcmFtcy5maWx0ZXIoKHQ9Pi0xIT09aC5pbmRleE9mKHQpKSksaT1mdW5jdGlvbih0LGUpe2NvbnN0IGk9T2JqZWN0LmNyZWF0ZShPYmplY3QuZ2V0UHJvdG90eXBlT2YodCkpO2Zvcihjb25zdCByIG9mIGUpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQscikmJihpW3JdPXRbcl0pO3JldHVybiBpfSh0aGlzLnNldHRpbmdzLGUpO2Zvcihjb25zdFtlLHJdb2YgT2JqZWN0LmVudHJpZXMoaSkpdC5zZWFyY2hQYXJhbXMuYXBwZW5kKGUscil9X3NldEhhc2hTdHJpbmcodCxlKXtjb25zdCBpPXt9O2UmJihpLmZyYW1lRWxlbWVudElkPWUpLE9iamVjdC5rZXlzKHRoaXMuc2V0dGluZ3MpLmZvckVhY2goKHQ9PnstMT09PXRoaXMucHJvcGVydGllc1RvU2tpcEluSGFzaC5pbmRleE9mKHQpJiYoaVt0XT10aGlzLnNldHRpbmdzW3RdKX0pKSwodGhpcy51c2VQYXJhbXNGb3JDb25uZWN0U29ja2V0fHx0aGlzLnVzZVNub3dwbG93UGFnZVZpZXcpJiYoaVsicGFnZS11cmkiXT1sKCkpO09iamVjdC5rZXlzKGkpLmxlbmd0aD4wJiYodC5oYXNoPWVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShpKSkpfV9zY3JpcHRDb250ZW50VG9KU09OKHQpe2NvbnN0IGU9dC5pbm5lckhUTUwudHJpbSgpO3RyeXtyZXR1cm4gSlNPTi5wYXJzZShlKX1jYXRjaCh0KXtyZXR1cm4gY29uc29sZS5lcnJvcihgV2lkZ2V0IHNldHRpbmdzIHBhcnNlIGVycm9yOiAke3R9YCksbnVsbH19X2NyZWF0ZUlmcmFtZSh0LGUsaSxyLHMpe2NvbnN0IG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7aSYmKG4uaWQ9aSksdGhpcy5zZXR0aW5ncy5lbmFibGVTY3JvbGxpbmd8fG4uc2V0QXR0cmlidXRlKCJzY3JvbGxpbmciLCJubyIpLG4uc2V0QXR0cmlidXRlKCJhbGxvd3RyYW5zcGFyZW5jeSIsInRydWUiKSxuLnNldEF0dHJpYnV0ZSgiZnJhbWVib3JkZXIiLCIwIiksbi5zdHlsZS51c2VyU2VsZWN0PSJub25lIixuLnN0eWxlLmJveFNpemluZz0iYm9yZGVyLWJveCIsbi5zdHlsZS5kaXNwbGF5PSJibG9jayIsbi5zdHlsZS5oZWlnaHQ9dCxuLnN0eWxlLndpZHRoPSIxMDAlIjtjb25zdCBvPW5ldyBVUkwodGhpcy5faWZyYW1lU3JjQmFzZShlKSk7cmV0dXJuIHRoaXMuX3NldFNldHRpbmdzUXVlcnlTdHJpbmcobyksdGhpcy5fc2V0SGFzaFN0cmluZyhvLGkpLG4uc2V0QXR0cmlidXRlKCJzcmMiLG8udG9TdHJpbmcoKSksbi50aXRsZT1yLG4ubGFuZz1zLG59X2FkZENTUEVycm9yTGlzdGVuZXIodCl7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigic2VjdXJpdHlwb2xpY3l2aW9sYXRpb24iLChlPT57ZS5ibG9ja2VkVVJJLmluY2x1ZGVzKHQpJiYodGhpcy5fdHJ5Rml4Q1NQSXNzdWVXaXRoRmFsbGJhY2sodCksY29uc29sZS53YXJuKCJQbGVhc2UgdXBkYXRlIHlvdXIgQ1NQIHJ1bGVzIHRvIGFsbG93IHRoZSB0cmFkaW5ndmlldy13aWRnZXQuY29tIG9yaWdpbiBmb3IgZnJhbWUtc3JjLiIpKX0pKX1fdHJ5Rml4Q1NQSXNzdWVXaXRoRmFsbGJhY2sodCl7Y29uc3QgZT10aGlzLmlmcmFtZS5nZXRBdHRyaWJ1dGUoInNyYyIpO2lmKGUpe2NvbnN0IGk9bmV3IFVSTChlLnJlcGxhY2UodCwiaHR0cHM6Ly9zLnRyYWRpbmd2aWV3LmNvbSIpKTt0aGlzLmlmcmFtZS5zZXRBdHRyaWJ1dGUoInNyYyIsaS5ocmVmKX19X3VwZGF0ZUNvcHlyaWdodEhyZWZQYXJhbXModCxlLGkpe2lmKHRoaXMuX2NvcHlyaWdodENvbnRhaW5lcil7Y29uc3Qgcj10aGlzLl9jb3B5cmlnaHRDb250YWluZXIucXVlcnlTZWxlY3RvckFsbCgiYSIpO3ImJnIuZm9yRWFjaCgocj0+e2NvbnN0IHM9ci5nZXRBdHRyaWJ1dGUoImhyZWYiKTtpZihzKXRyeXtjb25zdCBuPW5ldyBVUkwocyk7bi5zZWFyY2hQYXJhbXMuc2V0KCJ1dG1fc291cmNlIix0KSxuLnNlYXJjaFBhcmFtcy5zZXQoInV0bV9tZWRpdW0iLGUpLG4uc2VhcmNoUGFyYW1zLnNldCgidXRtX2NhbXBhaWduIixpKSxyLnNldEF0dHJpYnV0ZSgiaHJlZiIsbi50b1N0cmluZygpKX1jYXRjaCh0KXtjb25zb2xlLmxvZyhgQ2Fubm90IHVwZGF0ZSBsaW5rIFVUTSBwYXJhbXMsIGhyZWY9IiR7c30iYCl9fSkpfX19Y29uc3QgZz03Njc7dmFyIHUsbSxwLGYsdzshZnVuY3Rpb24odCl7dC5BZGFwdGl2ZT0iYWRhcHRpdmUiLHQuUmVndWxhcj0icmVndWxhciIsdC5Db21wYWN0PSJjb21wYWN0In0odXx8KHU9e30pKSxmdW5jdGlvbih0KXt0LkFsbFN5bWJvbHM9ImFsbF9zeW1ib2xzIix0Lk1hcmtldD0ibWFya2V0Iix0LlN5bWJvbD0ic3ltYm9sIn0obXx8KG09e30pKSxmdW5jdGlvbih0KXt0LkNyeXB0b2N1cnJlbmNpZXM9ImNyeXB0byIsdC5DdXJyZW5jaWVzPSJmb3JleCIsdC5TdG9ja3M9InN0b2NrIix0LkluZGljZXM9ImluZGV4Iix0LkZ1dHVyZXM9ImZ1dHVyZXMiLHQuQm9uZHM9ImNmZCJ9KHB8fChwPXt9KSksZnVuY3Rpb24odCl7dC5IVE1MPSJodG1sIix0LlJlYWN0PSJyZWFjdCJ9KGZ8fChmPXt9KSksZnVuY3Rpb24odCl7CnRbdC5UaWNrZXJJdGVtSGVpZ2h0Tm9ybWFsPTQ0XT0iVGlja2VySXRlbUhlaWdodE5vcm1hbCIsdFt0LlRpY2tlckl0ZW1IZWlnaHRDb21wYWN0PTcyXT0iVGlja2VySXRlbUhlaWdodENvbXBhY3QifSh3fHwodz17fSkpO2NvbnN0IHk9ZztuZXcgY2xhc3MgZXh0ZW5kcyBke2dldCB3aWRnZXRJZCgpe3JldHVybiJ0aWNrZXItdGFwZSJ9Z2V0IHVzZVBhcmFtc0ZvckNvbm5lY3RTb2NrZXQoKXtyZXR1cm4hMH1maWx0ZXJSYXdTZXR0aW5ncyh0KXt2b2lkIDAhPT10LnRoZW1lJiYodC5jb2xvclRoZW1lPXQudGhlbWUpO2NvbnN0IGU9c3VwZXIuZmlsdGVyUmF3U2V0dGluZ3ModCk7bGV0IGk7ZS53aWR0aD0iMTAwJSI7dHJ5e2k9dGhpcy5pZnJhbWVDb250YWluZXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGh9ZmluYWxseXtlLmhlaWdodD1mdW5jdGlvbih0LGUsaSxyKXtsZXQgcz0obj10PT09dS5BZGFwdGl2ZSYmcj9yPD15OnQ9PT11LkNvbXBhY3Qsbj83Mjo0NCk7dmFyIG47cmV0dXJuIGV8fChzKz0yKSxpJiYocys9MzIpLHN9KHQuZGlzcGxheU1vZGUsdC5pc1RyYW5zcGFyZW50LHRoaXMuaGFzQ29weXJpZ2h0KCksaSl9cmV0dXJuIGV9Z2V0IHByb3BlcnRpZXNUb1dvcmtXaXRoKCl7cmV0dXJuWyJzeW1ib2xzIiwibG9jYWxlIiwic2hvd1N5bWJvbExvZ28iLCJjb2xvclRoZW1lIiwiaXNUcmFuc3BhcmVudCIsImxhcmdlQ2hhcnRVcmwiLCJkaXNwbGF5TW9kZSIsImN1c3RvbWVyIl19fX0pKCk7"}},"time_used":272,"timings":{"blocked":-1,"dns":49,"connect":4,"send":0,"wait":2,"receive":-1,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCTRX.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.487Z","timestamp":1785126258487,"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 /crypto/XTVCTRX.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 04:24:18 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: \"806b2da490c65d461e525da3c0eb3b66\"\r\nlast-modified: Wed, 08 Sep 2021 09:05:10 GMT\r\ncdn-cachedat: 08/09/2025 14:33:50\r\nx-amz-id-2: n69AJKfQjDZJ5Fo6mPHkxgqHnP59lbTGLkHe3LV2VRt14V86jzQYmL2k4Xn0BWVt9i6sWrfxHTo=\r\nx-amz-request-id: TMBJSCPE67EBH9XG\r\nx-amz-meta-hash: 806b2da490c65d461e525da3c0eb3b66\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: 185953e38a757c41a99ab33c85326ffb\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":1608,"size_decoded":1757,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1608), with no line terminators","md5":"806b2da490c65d461e525da3c0eb3b66","sha1":"57d04d774c1613940e63a7bf2ac31110061d76df","sha256":"13d28acd98e700a0e8b5a266597123caf8757f6baa6f90706476667a410c6b21","sha512":"f08ddf490b6dc1bf63d9854040791c383588be8ccc515dd13c29a353bef437810559edd5cbfea38c12fcbef5e1aedafca4df621e8e4dbb56e8de01a777a97e26","ssdeep":"","tlshash":"8b31ceca12347a4d25ce946dfb6ddee4d00ab0deb1a592c9714f6314da0edc6fb44424","first_seen":"2023-06-14T21:27:12Z","last_seen":"2026-07-27T07:05:43.341084Z","times_seen":1497,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjQzQzNDJCIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggb3BhY2l0eT0iLjEyIiBkPSJNMTMuNDkxIDcuMjdsLTEuMjc1LS45MDktLjAyNi0uMDJhLjU3LjU3IDAgMDAtLjE2OC0uMDkybC0uMDA1LS4wMDUtMy40MjQtLjg0Mi0zLjA1Ny0uNzU1LS4wNzYtLjAyYS43ODEuNzgxIDAgMDAtLjMxMi0uMDQxLjIxNC4yMTQgMCAwMC0uMDg2LjAzbC0uMDMuMDI2YS4zNTIuMzUyIDAgMDAtLjA4My4xMjdsLS4wMDUuMDJ2LjExM2wuMDA1LjAxNSAxLjk0IDUuNDggMS41IDQuMjJjLjAzLjA5Ny4xMTcuMTU4LjIyNC4xNjloLjAyNmEuMjY0LjI2NCAwIDAwLjIzNC0uMTMzbDEuODY4LTIuNzYgMS4zNjItMi4wMjEuNTYyLS44MjcuOTMzLTEuMzc3LjAyLS4wMjZ2LS4wM2MuMDExLS4wODIuMDExLS4yNTYtLjEyNy0uMzQ4di4wMDV6bS0yLjE4NCAxLjAwNWwtMS4zMzcuNzA5Ljc4Ni0uODU3IDEuMDA1LTEuMDkyLjAwNi0uMDEuMTAyLS4xMTMuMDgxLS4wODFjLjMuMjA4LjU5Ny40MTkuODkzLjYzMi0uNTE0LjI2Ny0xLjAyNi41MzgtMS41MzYuODEyem0tMS4xMzMtLjEyM0w5LjE0IDkuMjhhNjY4LjY2OSA2NjguNjY5IDAgMDAtMi4wMi0yLjQ3NWwtLjkxLTEuMTAyLS4yMDMtLjI1NS0uMTMzLS4xNTguODIyLjIwNC43My4xNzggNC4xMDcgMS4wMS0xLjM1NyAxLjQ4di0uMDF6bS0xLjE4OCA0LjY3bC4wODEtLjc2Ni4wNjEtLjYxMy4xMDMtLjk3di0uMDVjLjAyNS0uMjEuMDUtLjQyNC4wNi0uNjM4YS43MDQuNzA0IDAgMDEuMDg4LS4wNGwuMTAyLS4wNTIgMS42NDMtLjg2NyAxLjY1My0uODczYy0uNTAyLjczOS0xLjAwMiAxLjQ3OS0xLjUgMi4yMkw5Ljk5IDEyLjA3Yy0uMTY5LjI1NS0uMzQ3LjUxLS41MS43NjUtLjE5NC4yNy0uMzg4LjU2Mi0uNTc3Ljg0Mi4wMjMtLjI4Ni4wNS0uNTcyLjA4Mi0uODU3ek01LjcgNS44NTVsLS4wOTItLjI2TDcuNTEgNy45MThsLjk3IDEuMTg4Yy4wNjYuMDcyLjEyNy4xNTQuMTg4LjIzLjA4Mi4wOTcuMTU4LjE5OS4yNS4yOTZsLS4wODEuNzM1LS4wNTEuNTA1LS4wMzEuMzIxLS4wNTEuNDc1LS4wMDUuMDItLjE0OCAxLjQ0NC0uMDYxLjU5Ny0uMDM2LS4xMDJhMTAuNjggMTAuNjggMCAwMS0uMTAyLS4yOTZsLS4yNTUtLjcxNEw1LjcgNS44NTd6IiBmaWxsPSIjZmZmIi8+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNNC42MjkgNC4xNjVhLjUuNSAwIDAxLjQ5LS4xNWw3LjA2MyAxLjcyN2EuNS41IDAgMDEuMTc1LjA4MWwxLjQzNyAxLjA0N2EuNS41IDAgMDEuMTE5LjY4NmwtNC45NDQgNy4yMjZhLjUuNSAwIDAxLS44ODQtLjExNGwtMy41NTYtMTBhLjUuNSAwIDAxLjEtLjUwM3pNNi4zNyA2Ljg2MmwxLjkzMiA1LjQzLjMxNy0yLjgxNEw2LjM3IDYuODYyem0zLjIzNiAyLjc5bC0uMzI4IDIuOTA3IDIuNzc0LTQuMDU0LTIuNDQ2IDEuMTQ3em0yLjkxNi0yLjQ3MmwtMS4yMDcuNTY2LjgxLS44NTUuMzk3LjI5em0tMS40MTMtLjY3MUw2LjM5NSA1LjM1NiA5LjE1OCA4LjU3bDEuOTUtMi4wNjJ6IiBmaWxsPSIjZmZmIi8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCMEGAE.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.717Z","timestamp":1785126258717,"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 /crypto/XTVCMEGAE.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 04:24:18 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: \"fd62f71edfd9a86d77f16dcefc72e3ec\"\r\nlast-modified: Mon, 16 Mar 2026 08:03:53 GMT\r\nx-amz-id-2: yGKh3bBC5oJOnIAJ6R3Q73fJs+aEIGJ71/x+f9eaOzpPUoZcUO/R3FSLlvGtZoGxWeKFeqeAU+4=\r\nx-amz-request-id: DVTJV7BWK8752M3K\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: fd62f71edfd9a86d77f16dcefc72e3ec\r\ncdn-proxyver: 1.50\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 04/12/2026 17:56:21\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: ed2249f20af23b5b519f9fa5fcef71e1\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":548,"size_decoded":1268,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (548), with no line terminators","md5":"fd62f71edfd9a86d77f16dcefc72e3ec","sha1":"bf01785f8812b5ce1396bcf7d513b1ebbf305792","sha256":"27c539925d1ea7b9919f7c3d9dc0b0c7304bfc86419ed64cafecd14fdfb7fe23","sha512":"171ed8f605c218405aea34ca19c1a7bae851f588cdbd4527ada96f51b205287007cd2b9b6325132598778c178627b50be24f317a34b6e2ce1635c940f1a67fab","ssdeep":"","tlshash":"28f040bb287ea12d9003c6b9a71b1822630d80d6b3a881b52c8f67b46023086d843618","first_seen":"2026-05-01T06:28:07.49868Z","last_seen":"2026-07-27T07:05:43.335169Z","times_seen":225,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNERkQ5RDkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNOSAzYTYgNiAwIDEgMSAwIDEyQTYgNiAwIDAgMSA5IDNabTAgMS4wNmE0Ljk0IDQuOTQgMCAxIDAgMCA5Ljg4IDQuOTQgNC45NCAwIDAgMCAwLTkuODhaTTcuNSAxMWEuNS41IDAgMSAxIDAgMSAuNS41IDAgMCAxIDAtMVptMyAwYS41LjUgMCAxIDEgMCAxIC41LjUgMCAwIDEgMC0xWk03LjcyIDZ2LjAxTDkuMDMgOWguMDJMMTAuMjcgNiAxMC4zIDZoMS43bC4wMS4wMXY0Ljk1aC0uMDFjLS4zNS0uMi0uNTgtLjM1LS45OC0uNDdIMTFWNy4zbC0uMDItLjAxaC0uMDFsLTEuNDMgMi45My0uMDEuMDFIOS41YTcuMyA3LjMgMCAwIDAtMS4wMyAwTDcuMDIgNy4zMyA3IDcuM0g3djMuMTlsLS4wMy4wMWMtLjM5LjEzLS42LjI5LS45NS40OUg2VjZoMS43MloiIGZpbGw9IiMzMDJDMkQiLz48L3N2Zz4="}},"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":"besttrader.live/css/style_preloader.css","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.017Z","timestamp":1785126256017,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /css/style_preloader.css HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: text/css\r\nx-accel-version: 0.01\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: W/\"30a-6071c9ab07c00\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":778,"size_decoded":492,"mime_type":"text/css","magic":"ASCII text, with CRLF line terminators","md5":"7a2eda5c00b024c755815d1839cf0281","sha1":"3d62ab7c4984386047586c4e7ff92e56df88da0e","sha256":"d2d9f29cb8e0eab7722d7fdeb45edf8a8b85c244e1b09916828185780c8bd0b1","sha512":"f677dd1d41d67e20c143374861035209845ad39614051ac0a4a08955e153bfa523b3baedd8e7986dc4ae56d31512ed1a1fac72fb134c4c950361c70bd6826cea","ssdeep":"","tlshash":"09018e701eb5b08dd206ead999b03b391e7c70517f6b4015b1c63a1f82c325910b74d5","first_seen":"2025-11-02T04:03:37.858093Z","last_seen":"2026-07-27T04:25:12.716213Z","times_seen":3,"resource_available":false,"data":"DQoucHJlbG9hZGVyew0KCXBvc2l0aW9uOiBmaXhlZDsNCgl0b3A6IDA7IA0KCWxlZnQ6IDA7IAkNCgl3aWR0aDogMTAwJTsNCgloZWlnaHQ6IDEwMCU7DQoJdHJhbnNpdGlvbjogMXM7IA0KCXotaW5kZXg6IDEwMDAwMDAwOw0KDQp9DQoucHJlbG9hZGVyOjpiZWZvcmV7DQoJY29udGVudDogJyc7DQoJcG9zaXRpb246IGFic29sdXRlOw0KCWxlZnQ6IDA7DQoJd2lkdGg6IDUwJTsNCgloZWlnaHQ6IDEwMCU7DQoJYmFja2dyb3VuZDogI2ZmZiFpbXBvcnRhbnQ7DQoJdHJhbnNpdGlvbjogMXM7IA0KfQ0KDQoucHJlbG9hZGVyOjphZnRlcnsNCgljb250ZW50OiAnJzsNCglwb3NpdGlvbjogYWJzb2x1dGU7DQoJcmlnaHQ6IDA7DQoJd2lkdGg6IDUwJTsNCgloZWlnaHQ6IDEwMCU7DQoJYmFja2dyb3VuZDogI2ZmZiFpbXBvcnRhbnQ7DQoJdHJhbnNpdGlvbjogMXM7IA0KDQp9DQoucHJlbG9hZGVyLmNvbXBsZXRlOjpiZWZvcmV7DQoJbGVmdDogLTUwJTsNCn0NCi5wcmVsb2FkZXIuY29tcGxldGU6YWZ0ZXJ7DQoJcmlnaHQ6IC01MCU7DQp9DQoubG9hZGVyew0KCXdpZHRoOiAxMDAlOyANCgloZWlnaHQ6IGF1dG87IA0KCW92ZXJmbG93OiBoaWRkZW47DQoJcG9zaXRpb246IGFic29sdXRlOw0KCXotaW5kZXg6IDEwMDAwOw0KDQp9DQoubG9hZGVyIGltZ3sNCgl3aWR0aDogMTUwcHg7DQp9DQoucHJlbG9hZGVyLmNvbXBsZXRlew0KCW9wYWNpdHk6IDA7DQoJdmlzaWJpbGl0eTogaGlkZGVuOw0KCXBvaW50ZXItZXZlbnRzOiBub25lOw0KCXBhZGRpbmctdG9wOiAxMGVtOw0KfQ=="}},"time_used":98,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":98,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/15634.9ff500f40c3ec2496a9d.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.301Z","timestamp":1785126257301,"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-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/15634.9ff500f40c3ec2496a9d.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/crypto-mkt-screener/?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 04:24:17 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: \"6a608300-7a6\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Wed, 22 Jul 2026 08:44:48 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:21\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 2f78573beb0aaf88418789eca61125c4\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":1958,"size_decoded":1433,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (1958), with no line terminators","md5":"1fe59f1cabe116d4c360e360391910cf","sha1":"6005a9d280a7661b640624f5309d0059e00f57a4","sha256":"4cac2a96f86db5b5ea7cc505de00925b8dff9a9b88157d33fa0832d728ab2d06","sha512":"4ce34a33edf60063dc9b5a69446b4f0f5b1870f1fa2980b7306e02ea292d73a9f2773611581f28e96d6bbf7d8c35367b6e71c21cc38b5073b921728dc3ced4b9","ssdeep":"","tlshash":"ef41545553f6b277e6b3453c6eaeb6944fb4403fab31168cb990e13847ef5500344d40","first_seen":"2026-07-22T16:00:00.46556Z","last_seen":"2026-07-27T07:05:43.385099Z","times_seen":183,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtdzFiMzp2YXIoLS1jb2xvci1taW50eS1ncmVlbi1hNjAwKTstLV8xLXcxYjM6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMzAwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLXcxYjM6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLV8xLXcxYjM6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNzAwKX0uc3dpdGNoZXItbDNEdEtMc0x7ZGlzcGxheTppbmxpbmUtYmxvY2s7ZmxleDowIDAgYXV0bztwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7ei1pbmRleDowOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudH0uaW5wdXQtbDNEdEtMc0x7Y3Vyc29yOmRlZmF1bHQ7aGVpZ2h0OjEwMCU7aW5zZXQtaW5saW5lLXN0YXJ0OjA7b3BhY2l0eTowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3dpZHRoOjEwMCU7ei1pbmRleDoxfS5pbnB1dC1sM0R0S0xzTDpjaGVja2VkLC5pbnB1dC1sM0R0S0xzTDpkaXNhYmxlZCwuaW5wdXQtbDNEdEtMc0w6Zm9jdXN7Ym9yZGVyOjA7b3V0bGluZTowfS5pbnB1dC1sM0R0S0xzTDpmb2N1cysudGh1bWJXcmFwcGVyLWwzRHRLTHNMOmFmdGVye2Rpc3BsYXk6YmxvY2t9LmlucHV0LWwzRHRLTHNMOmZvY3VzLXZpc2libGUrLnRodW1iV3JhcHBlci1sM0R0S0xzTDphZnRlcntkaXNwbGF5OmJsb2NrfS5pbnB1dC1sM0R0S0xzTDpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpKy50aHVtYldyYXBwZXItbDNEdEtMc0w6YWZ0ZXJ7ZGlzcGxheTpub25lfS50aHVtYldyYXBwZXItbDNEdEtMc0x7ZGlzcGxheTpibG9jaztoZWlnaHQ6Zml0LWNvbnRlbnQ7b3V0bGluZTpub25lO292ZXJmbG93OnZpc2libGU7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6Zml0LWNvbnRlbnR9LnRodW1iV3JhcHBlci1sM0R0S0xzTDpmb2N1c3tvdXRsaW5lOm5vbmV9LnRodW1iV3JhcHBlci1sM0R0S0xzTDpmb2N1cy12aXNpYmxle291dGxpbmU6bm9uZX0udGh1bWJXcmFwcGVyLWwzRHRLTHNMOmFmdGVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1mb2N1cy1vdXRsaW5lLWNvbG9yLWJsdWUpO2JvcmRlci1yYWRpdXM6MjRweDtib3JkZXItc3R5bGU6c29saWQ7Ym9yZGVyLXdpZHRoOjJweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29udGVudDoiIjtkaXNwbGF5Om5vbmU7aGVpZ2h0OmNhbGMoMTAwJSArIDhweCk7aW5zZXQtaW5saW5lLXN0YXJ0Oi00cHg7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTRweDt3aWR0aDpjYWxjKDEwMCUgKyA4cHgpO3otaW5kZXg6MX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmlucHV0LWwzRHRLTHNMOm5vdCguZGlzYWJsZWQtbDNEdEtMc0wpOmhvdmVyKy50aHVtYldyYXBwZXItbDNEdEtMc0x7LS11aS1saWItc3dpdGNoVmlldy1jb2xvcjp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC10ZXJ0aWFyeS1uZXV0cmFsKX19LmlucHV0LWwzRHRLTHNMOm5vdCguZGlzYWJsZWQtbDNEdEtMc0wpOmFjdGl2ZSsudGh1bWJXcmFwcGVyLWwzRHRLTHNMey0tdWktbGliLXN3aXRjaFZpZXctY29sb3I6dmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtbm9ybWFsKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmlucHV0LWwzRHRLTHNMOm5vdCguZGlzYWJsZWQtbDNEdEtMc0wpLmNoZWNrZWQtbDNEdEtMc0w6aG92ZXIrLnRodW1iV3JhcHBlci1sM0R0S0xzTHstLXVpLWxpYi1zd2l0Y2hWaWV3LWNvbG9yOnZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1ib2xkKX19LmlucHV0LWwzRHRLTHNMOm5vdCguZGlzYWJsZWQtbDNEdEtMc0wpLmNoZWNrZWQtbDNEdEtMc0w6YWN0aXZlKy50aHVtYldyYXBwZXItbDNEdEtMc0x7LS11aS1saWItc3dpdGNoVmlldy1jb2xvcjp2YXIoLS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtbWVkaXVtKX0="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCMNT.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.620Z","timestamp":1785126258620,"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 /crypto/XTVCMNT.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 04:24:18 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: \"7f5ca6acdfaf464ed426b5e6a0b4f9fd\"\r\nlast-modified: Mon, 25 Dec 2023 14:01:36 GMT\r\ncdn-cachedat: 08/09/2025 14:36:05\r\nx-amz-id-2: 3q2t+VUvhwAI7z3U00CZuE+dJIN++WpkcJtnPwkv2QPXLgezxEpEG3Z/WNHe6/Ngc+eTkS5bEgU=\r\nx-amz-request-id: JH7AH4PV1EADVJBB\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 7f5ca6acdfaf464ed426b5e6a0b4f9fd\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: 114bbc82049d8a167ab82e19f97578c0\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":1991,"size_decoded":2011,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1991), with no line terminators","md5":"7f5ca6acdfaf464ed426b5e6a0b4f9fd","sha1":"c7703b78308541189d0db0d4a8a7273b5ae6030c","sha256":"700e0d4f31c7a667e165bba008307a34c456f9cd1eb9a9ab013ec93efd7565c8","sha512":"6e1c99a637d48e256e63e7d3fab6e20432ee1ba5c2ef1b15d471b391a9e29d5380df3ac50d53003d114fa2642573754968f60f0f6805b42222e9a0b776a5e428","ssdeep":"","tlshash":"454100aa9154e72ea487c54cef7240b2234f40dbf1df82d9eadfc76da8498c6f105518","first_seen":"2024-08-19T17:46:07.083667Z","last_seen":"2026-07-27T07:05:43.293343Z","times_seen":727,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYWhvbmhjZGJmKSIgZD0iTTAgMGgxOHYxOEgweiIvPjxwYXRoIGQ9Im05LjUyIDUuNzEuMjUtMS42NUE1LjA1IDUuMDUgMCAwIDAgOSA0djMuMzhjLjE0IDAgLjI4LjAxLjQyLjA1bC40NC0xLjY1YTMuMzIgMy4zMiAwIDAgMC0uMzQtLjA3Wk04LjE5IDcuNmwtLjg0LTEuNDQtLjMuMTgtMS0xLjM3Yy4yMi0uMTYuNDQtLjMuNjctLjQxbC43NyAxLjQ5Yy4xNS0uMDguMzEtLjE1LjQ4LS4ybC0uNTItMS42YTUgNSAwIDAgMSAuNzYtLjE4bC4yNyAxLjY4LS4zNC4wNy40NCAxLjYyYy0uMTQuMDQtLjI3LjEtLjQuMTZabS0zLjY1LS44NiAxLjUyLjc4Yy0uMDguMTUtLjE1LjMxLS4yLjQ3bC0xLjYyLS41MmMuMDgtLjI1LjE4LS41LjMtLjczWm03LjMxLjYxLTEuNDQuODVjLjA3LjEyLjEyLjI1LjE2LjM5bDEuNjItLjQ0LjA3LjM0IDEuNjgtLjI3Yy0uMDQtLjI2LS4xLS41Mi0uMTktLjc2bC0xLjU5LjUyYTMuMzMgMy4zMyAwIDAgMC0uMi0uNDlsMS41LS43NmE1LjAyIDUuMDIgMCAwIDAtLjQyLS42N2wtMS4zNyAxIC4xOC4zWm0tMS4zMS0zLjFhNSA1IDAgMCAxIC43Mi4zbC0uNzcgMS41MmEzLjMgMy4zIDAgMCAwLS40OC0uMmwuNTMtMS42MlptLjEyIDEuODhMOS44IDcuNTljLjEyLjA3LjI0LjE2LjM0LjI2bDIuMzgtMi40YTUuMDUgNS4wNSAwIDAgMC0uNi0uNWwtLjk4IDEuMzUtLjMtLjE4Wk03LjU5IDguMTlsLTEuNDctLjg1LjE5LS4zLTEuMzYtLjk3Yy4xNS0uMjIuMzMtLjQyLjUxLS42bDIuMzkgMi4zOGMtLjEuMS0uMTkuMjItLjI2LjM0Wm0tMS44LS4wNSAxLjY0LjQ0Yy0uMDQuMTQtLjA1LjI4LS4wNS40Mkg0YzAtLjI2LjAyLS41Mi4wNi0uNzhsMS42NS4yNi4wOC0uMzRabTYuMTUgMi4zNSAxLjUyLjc4Yy4xMi0uMjQuMjItLjQ4LjMtLjczbC0xLjYyLS41MmMtLjA1LjE2LS4xMi4zMi0uMi40N1ptLTIuMTMtLjA4Ljg0IDEuNDQuMy0uMTggMSAxLjM3Yy0uMjIuMTYtLjQ0LjMtLjY3LjQxbC0uNzctMS40OWMtLjE1LjA4LS4zMS4xNS0uNDguMmwuNTIgMS42YTUgNSAwIDAgMS0uNzYuMThsLS4yNy0xLjY4LjM0LS4wNy0uNDQtMS42MmMuMTQtLjA0LjI3LS4xLjQtLjE2Wm0tMy42Ni4yNSAxLjQ0LS44NWExLjYxIDEuNjEgMCAwIDEtLjE2LS4zOWwtMS42MS40NGEzLjI5IDMuMjkgMCAwIDEtLjA4LS4zNGwtMS42OC4yN2E1IDUgMCAwIDAgLjE5Ljc3bDEuNTktLjUzYy4wNS4xNy4xMi4zMy4yLjQ5bC0xLjUuNzZjLjEzLjIzLjI3LjQ2LjQyLjY3bDEuMzctMWEzLjMgMy4zIDAgMCAxLS4xOC0uM1ptMS4zMSAzLjFhNSA1IDAgMCAxLS43Mi0uM2wuNzctMS41MmMuMTUuMDguMzEuMTUuNDguMmwtLjUzIDEuNjJabS0uMTItMS44OC44NS0xLjQ3YTEuNjMgMS42MyAwIDAgMS0uMzQtLjI2bC0yLjM4IDIuNGMuMTkuMTguMzkuMzUuNi41bC45OC0xLjM1LjMuMThabTMuMDctMi4wNyAxLjQ3Ljg1LS4xOS4zIDEuMzYuOTdjLS4xNS4yMi0uMzMuNDItLjUxLjZsLTIuMzktMi4zOGMuMS0uMS4xOS0uMjIuMjYtLjM0Wm0tMS44My43Ni0uNDMgMS42NS4zMy4wNy0uMjUgMS42NWMuMjUuMDQuNTEuMDYuNzcuMDZ2LTMuMzhjLS4xNCAwLS4yOC0uMDEtLjQyLS4wNVptMS45OS0xLjE1Yy4wNC0uMTQuMDUtLjI4LjA1LS40MkgxNGMwIC4yNi0uMDIuNTItLjA2Ljc4bC0xLjY1LS4yNi0uMDguMzQtMS42NC0uNDRaIiBmaWxsPSIjZmZmIi8+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJhaG9uaGNkYmYiIHgxPSIzLjM1IiB5MT0iMy4xMiIgeDI9IjIxLjkiIHkyPSIyNC40MyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiMxQTFFMjEiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMwNjA2MEEiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4="}},"time_used":1,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":1,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCRAD.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.823Z","timestamp":1785126258823,"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 /crypto/XTVCRAD.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 04:24:18 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: \"c6341c55496985e1895530cf813c030b\"\r\nlast-modified: Fri, 05 Nov 2021 11:07:33 GMT\r\nx-amz-id-2: 5gfc1oJmo2CB51tVXV+cccdQR9RNnvoC66hPjuPXUHLZwMO71+XV0Hio93Nq5vmidUkCn/YQTh167RsaM0+y7NljJmzsuWambR/3xV3n38c=\r\nx-amz-request-id: RJRT8KGW3KKGCG00\r\nx-amz-meta-hash: c6341c55496985e1895530cf813c030b\r\ncdn-proxyver: 1.57\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 06/20/2026 22:40:15\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 85b3c107eceecc809d7964137c9a59d5\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":492,"size_decoded":1242,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (492), with no line terminators","md5":"c6341c55496985e1895530cf813c030b","sha1":"b3a6ca9e31246e0d1dee513fa3547283548dc901","sha256":"08f29c27022c538c16252bd6c8b57fb156fb8e39d9969e28d81290e7a07a0ae7","sha512":"df14dfc4ee2c4ee58fbc772e5672468296b269ddbb074527c15efef75a931420e349bb2a018a14eda191f47ea03c83bc4c84f0dac9e6fcd16c34d0e44de31261","ssdeep":"","tlshash":"6cf05945e228d10c3c468349ceb6cd61218b74ca66aa10daa1e35324300dacffc00c1c","first_seen":"2026-06-18T08:26:17.080754Z","last_seen":"2026-07-27T07:05:43.265868Z","times_seen":90,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjE4IiBoZWlnaHQ9IjE4Ij48cGF0aCBmaWxsPSIjNTQ1NUZGIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTUuMyA5LjA4QTE0LjIgMTQuMiAwIDAwNCA3LjYyYTQuMDIgNC4wMiAwIDAxNC44MyAyLjZjLjA0LS40My4zNi0xLjc4IDEuMzItMy43OC45Ni0yIDIuNjMtMi40NiAzLjM1LTIuNDRhOC4wNCA4LjA0IDAgMDEtLjg2IDMuMjNjLS42Ljk2LTIuMSAxLjA1LTIuNzQuOTktLjE4LjQxLS40OCAxLjQzLS42NiAyLjE0LS4yMi44OS4yIDIuNTEuMjIgMi45OS4wMi40OC0uMjkuNjMtLjczLjY1LS40NC4wMi0uNjYtLjMtLjY2LS42NSAwLS4zNi4zNi0yLjE5LjI3LTMuMTMtLjA2LS43NS0uNDktMS4xNy0uNjktMS4yOC0uMi4yNi0uNy43OC0xLjEzLjc0LS41NC0uMDYtLjg4LS4xLTEuMjItLjZ6IiBmaWxsPSIjNTJERDRFIi8+PC9zdmc+"}},"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.tradingview-widget.com/static/bundles/embed/32632.596e5348a1538a18fd4e.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.299Z","timestamp":1785126257299,"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-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/32632.596e5348a1538a18fd4e.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/crypto-mkt-screener/?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 04:24:17 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-4fc\"\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:20\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: c973816c7b27f0b7a65a7d4884cb2d8e\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":1276,"size_decoded":1216,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (1276), with no line terminators","md5":"4dbd9186e797320373da6c5f9843030c","sha1":"23410205367378f1c6436025ba87050084b119a4","sha256":"7efe9b338dd4970e4b6ee84a711c1bb6cc65dad73322597e03c040abdb1fa38a","sha512":"a66b0365c81f21e82e8d510923718ce9c71b8aab5c59688e1d32283b9203b9d4b79e04b000fd34cc03234913be0c316407e1d1b9b4c6360478f73081d15595ef","ssdeep":"","tlshash":"3321dfe1e790187af8a38916a788de867158fa036713fd49f7daa80e4481d78113c34d","first_seen":"2026-07-16T13:40:49.72467Z","last_seen":"2026-07-27T07:07:14.012202Z","times_seen":839,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtdWdzMTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLXVnczE6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCl9LnR2LXNwaW5uZXJ7YW5pbWF0aW9uOnR2LXNwaW5uZXJfX2NvbnRhaW5lci1yb3RhdGUtajRKbHJZVkggLjlzIGxpbmVhciBpbmZpbml0ZTtib3JkZXItaW5saW5lLWVuZC1jb2xvcjp2YXIoLS1fMC11Z3MxKTtib3JkZXI6MCBzb2xpZCB2YXIoLS10di1zcGlubmVyLWNvbG9yLHZhcigtLWNvbG9yLWJyYW5kKSk7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1fMC11Z3MxKTtib3JkZXItcmFkaXVzOjUwJTtkaXNwbGF5Om5vbmU7bWFyZ2luOjAgYXV0bztwb3NpdGlvbjphYnNvbHV0ZX0udHYtc3Bpbm5lci0tc2hvd257ZGlzcGxheTpibG9ja30udHYtc3Bpbm5lci0tc2l6ZV94eHNtYWxse2JvcmRlci13aWR0aDoycHg7aGVpZ2h0OjEwcHg7aW5zZXQtaW5saW5lLXN0YXJ0OmNhbGMoNTAlIC0gN3B4KTt0b3A6Y2FsYyg1MCUgLSA3cHgpO3dpZHRoOjEwcHh9LnR2LXNwaW5uZXItLXNpemVfeHNtYWxse2JvcmRlci13aWR0aDoycHg7aGVpZ2h0OjE0cHg7aW5zZXQtaW5saW5lLXN0YXJ0OmNhbGMoNTAlIC0gOXB4KTt0b3A6Y2FsYyg1MCUgLSA5cHgpO3dpZHRoOjE0cHh9LnR2LXNwaW5uZXItLXNpemVfc21hbGx7Ym9yZGVyLXdpZHRoOjJweDtoZWlnaHQ6MjBweDtpbnNldC1pbmxpbmUtc3RhcnQ6Y2FsYyg1MCUgLSAxMnB4KTt0b3A6Y2FsYyg1MCUgLSAxMnB4KTt3aWR0aDoyMHB4fS50di1zcGlubmVyLS1zaXplX21lZGl1bXtib3JkZXItd2lkdGg6M3B4O2hlaWdodDoyOHB4O2luc2V0LWlubGluZS1zdGFydDpjYWxjKDUwJSAtIDE3cHgpO3RvcDpjYWxjKDUwJSAtIDE3cHgpO3dpZHRoOjI4cHh9LnR2LXNwaW5uZXItLXNpemVfbGFyZ2V7Ym9yZGVyLXdpZHRoOjRweDtoZWlnaHQ6NTZweDtpbnNldC1pbmxpbmUtc3RhcnQ6Y2FsYyg1MCUgLSAzMnB4KTt0b3A6Y2FsYyg1MCUgLSAzMnB4KTt3aWR0aDo1NnB4fS50di1zcGlubmVyOmRpcihydGwpe2FuaW1hdGlvbjp0di1zcGlubmVyX19jb250YWluZXItcm90YXRlLXJ0bC1qNEpscllWSCAuOXMgbGluZWFyIGluZmluaXRlfUBrZXlmcmFtZXMgdHYtc3Bpbm5lcl9fY29udGFpbmVyLXJvdGF0ZS1qNEpscllWSHt0b3t0cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19QGtleWZyYW1lcyB0di1zcGlubmVyX19jb250YWluZXItcm90YXRlLXJ0bC1qNEpscllWSHt0b3t0cmFuc2Zvcm06cm90YXRlKC0xdHVybil9fQ=="}},"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.tradingview-widget.com/static/bundles/embed/30200.71da076fb0197e4d5953.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.337Z","timestamp":1785126257337,"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-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/30200.71da076fb0197e4d5953.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/crypto-mkt-screener/?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 04:24:17 GMT\r\ncontent-type: text/css; charset=utf-8\r\ncontent-length: 86\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: \"69f98b73-56\"\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: 7383ae0357ebb408f0ad5a8ff3aced6f\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":86,"size_decoded":870,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with no line terminators","md5":"b02278d29b4e6fb9286fa4e3d93d2ce5","sha1":"0e3940c360032f59c0eb14248728f6b6d0c99cae","sha256":"6373ee883ff860f1955a9c73438e96ed35056eacf0fadb1c6ae58a57e31a5e34","sha512":"cf3ba4d72f48389a359a141bea634d0369e9ba9b4e796f108b6c71cd23e57123b60f7b390b1edba4debfc2e84ebd9bc8cefa9ab0ef5f5d70274f73ef0be4ac8c","ssdeep":"","tlshash":"ada012d2b4410450000501481120733bcab721c426940d0804c0bf2203464a19c78150","first_seen":"2026-01-13T13:30:16.848169Z","last_seen":"2026-07-27T07:05:43.412501Z","times_seen":1850,"resource_available":false,"data":"LmpzLWhpZGRlbntkaXNwbGF5Om5vbmUhaW1wb3J0YW50fS5qcy1uby1wb2ludGVyLWV2ZW50c3twb2ludGVyLWV2ZW50czpub25lIWltcG9ydGFudH0="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCBNB.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.458Z","timestamp":1785126258458,"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 /crypto/XTVCBNB.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 04:24:18 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: \"2d7bcb1e6c2f721679a5f7b4408f3e49\"\r\nlast-modified: Fri, 12 Jan 2024 14:17:27 GMT\r\ncdn-cachedat: 08/09/2025 14:29:16\r\nx-amz-id-2: Md7a4JXRlYjdn2rzeXa/TfGjU4+rNYAMUqHNFYolkDmybKd/IC8Mb0WnhN+avDMeP8IuPf/PYqo=\r\nx-amz-request-id: XRX1HHFK3CVABMZX\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 2d7bcb1e6c2f721679a5f7b4408f3e49\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: 87978677819ba79c6b68314598a27de3\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":914,"size_decoded":1469,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (914), with no line terminators","md5":"2d7bcb1e6c2f721679a5f7b4408f3e49","sha1":"a23b4ae42639ec5cabbf87440bc693a6fccb568c","sha256":"cce3fa1600b656dfe422f8b318ef6e2815bda2a3d4288e84ea93485d4a079a1d","sha512":"5daa92213d37c38665d99ca6878e83bd9e103ca2777f6812d8729dd3f8723e5b9fbb92182c1164882ec556e385343e238dbc7797b8084a73fa6f766c581f23a9","ssdeep":"","tlshash":"2511d0e6cba42e1cc986c31dee1d801ee22910cd714d12dcb5aae625a150acf3c04b18","first_seen":"2024-02-21T19:27:11Z","last_seen":"2026-07-27T07:05:43.290414Z","times_seen":1428,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYW4wb2NzeXo0KSIgZD0iTTAgMGgxOHYxOEgweiIvPjxwYXRoIGQ9Ik01LjkzIDQuODQgOSAzbDMuMDcgMS44NC0xLjEzLjY4TDkgNC4zNiA3LjA2IDUuNTJsLTEuMTMtLjY4Wm02LjE0IDIuMzItMS4xMy0uNjhMOSA3LjY0IDcuMDYgNi40OGwtMS4xMy42OFY4LjVsMS45NCAxLjE2VjEybDEuMTMuNjggMS4xMy0uNjhWOS42N2wxLjk0LTEuMTZWNy4xNlptMCAzLjY3VjkuNDdsLTEuMTMuNjh2MS4zNmwxLjEzLS42OFptLjguNDgtMS45NCAxLjE2djEuMzZMMTQgMTEuOTlWOC4zMmwtMS4xMy42N3YyLjMyWk0xMS43NCA2bDEuMTMuNjh2MS4zNUwxNCA3LjM2VjZsLTEuMTMtLjY4LTEuMTMuNjhabS0zLjg3IDYuOTZ2MS4zNkw5IDE1bDEuMTMtLjY4di0xLjM2TDkgMTMuNjRsLTEuMTMtLjY4Wm0tMS45NC0yLjEzIDEuMTMuNjh2LTEuMzZsLTEuMTMtLjY4djEuMzZaTTcuODcgNiA5IDYuNjggMTAuMTMgNiA5IDUuMzIgNy44NyA2Wm0tMi43NC42OEw2LjI2IDZsLTEuMTMtLjY4TDQgNnYxLjM2bDEuMTMuNjdWNi42OFptMCAyLjMxTDQgOC4zMnYzLjY3bDMuMDcgMS44NHYtMS4zNmwtMS45NC0xLjE2VjlaIiBmaWxsPSIjRjBCOTBCIi8+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJhbjBvY3N5ejQiIHgxPSIzLjM1IiB5MT0iMy4xMiIgeDI9IjIxLjkiIHkyPSIyNC40MyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiMxQTFFMjEiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMwNjA2MEEiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4="}},"time_used":47,"timings":{"blocked":-1,"dns":23,"connect":2,"send":0,"wait":4,"receive":-1,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCADA.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.539Z","timestamp":1785126258539,"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 /crypto/XTVCADA.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 04:24:18 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: \"3d079b14dd7819cb9de76e6b6d0fea4c\"\r\nlast-modified: Wed, 08 Sep 2021 09:04:18 GMT\r\ncdn-cachedat: 08/09/2025 14:29:16\r\nx-amz-id-2: ydi1TBgKf7DGSTWKTOtoJYT0bQOlQcgLCki7hTySz2WuLQhw9jx47Cwa6y1AqV5rv8pkET2Ki5c=\r\nx-amz-request-id: 5G89ZKJKK8VXYCHC\r\nx-amz-meta-hash: 3d079b14dd7819cb9de76e6b6d0fea4c\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: 5a6993476fae228b8040c55304251c93\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":3300,"size_decoded":2486,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (3300), with no line terminators","md5":"3d079b14dd7819cb9de76e6b6d0fea4c","sha1":"bb8e90f8f29a3115a7110f554a2172b0c5fdbdcc","sha256":"22ff3ab33babf27caf52e98fe0a5eccf57eacc76dfaa6363d22016c6e0b4505b","sha512":"1c449639864aede8d7013c38d827e788e302fcdd5b03ba72f58852225303a8a888a4c18b8d2983aff53ebb2fdc17cabcb4f58ec90d858625422d40511e6e9897","ssdeep":"","tlshash":"066134896150934adcc8e45edb72e9e4509670daa5b3e8c69fef8b08790fc54ff24068","first_seen":"2023-12-28T22:14:59Z","last_seen":"2026-07-27T07:05:43.305096Z","times_seen":1745,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjMjQ2REQzIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTguODYyIDMuODg4Yy4yNTItLjEyOC41NjMuMTY1LjQyNi40MTItLjA3NC4xOTYtLjM2OS4yNDgtLjUyNi4wOTgtLjE1OC0uMTQ0LS4xMDYtLjQzMi4xMDUtLjUxNWwtLjAwNS4wMDV6bS0yLjcxMS4yODRjLjE1OC0uMDYyLjM0Ny4wNzIuMzMxLjIzMS4wMTYuMTc1LS4yMDUuMzEtLjM2My4yMjItLjIwNS0uMDc3LS4xNzktLjQwMi4wMzItLjQ1M3ptNS41NTguNDU4Yy0uMjQyLS4wMy0uMjc5LS4zOTEtLjA1My0uNDYzLjE4NS0uMDgzLjM0OC4wNzIuMzc0LjIzNi0uMDM3LjE0LS4xNTguMjY4LS4zMjEuMjI3em0tNC45NDIuNjQ5Yy4yNTgtLjE1NS42Mi4wNzcuNTc5LjM2LS4wMS4yOTQtLjQwNi40NjQtLjYzMi4yNjgtLjIyMS0uMTU0LS4xODQtLjUxLjA1My0uNjI4em0zLjkxLjE3Yy4xMTYtLjI4My41OC0uMjk0LjcxMS0uMDIuMTI2LjIxNS0uMDMyLjQ4My0uMjYzLjU1NS0uMy4wNTItLjU5LS4yNTctLjQ0OC0uNTM1em0tMi4xNDIuNTE1YzAtLjI0Mi4yMzItLjQyMy40NzQtLjQzOC4xNTguMDMuMzMxLjA5OC40LjI1Mi4xMjYuMjExLjAxNi41MDUtLjIxNi42MDgtLjEwNS4wNTEtLjIzMS4wMy0uMzQ3LjAyNi0uMTc0LS4wODMtLjMyMS0uMjQ4LS4zMS0uNDQzdi0uMDA1em0tNC4wMzIuMzZjLjIzMi0uMTM5LjU0OC4xMTMuNDU4LjM2LS4wNDcuMjA3LS4zNDIuMjk0LS41MS4xNi0uMTgtLjEyOS0uMTUzLS40MzIuMDUyLS41MnptOC42NjQgMGMuMi0uMTU0LjUyNi4wMi41LjI1OC4wMTYuMjIxLS4yNjMuMzktLjQ2My4yNzgtLjIxNi0uMDk4LS4yNDItLjQxMi0uMDM3LS41MzZ6bS0zLjQ5NS40MzhhLjgwNi44MDYgMCAwMS41MDUuMDAyYy4xNjQuMDU1LjMwNC4xNjEuNC4zMDIuMjQyLjM0LjExNi44NjUtLjI2OCAxLjA2LS4zOTUuMjM3LS45NzQuMDM2LTEuMTIxLS4zODYtLjE2OS0uMzguMDc0LS44Ni40ODQtLjk3OHptLTEuOTIxLjAzNmMuMzYzLS4xNjUuODUzLS4wMjYgMS4wMjYuMzMuMjEuMzUuMDQ4LjgzNC0uMzIgMS4wMTQtLjM3LjIwNi0uODk2LjA1MS0xLjA3LS4zMjUtLjIwNS0uMzYtLjAyNi0uODU0LjM2NC0xLjAyem0tMS45MjYuNjMzYy4wMjYtLjIyNi4yNDctLjM3LjQ3My0uMzg2YS41MDQuNTA0IDAgMDEuNDUzLjQzOGMtLjAxNi4yMzEtLjIuNDYzLS40NTMuNDYzLS4yODQuMDItLjUyNi0uMjUyLS40NzMtLjUxNXptNS42ODQtLjM0Yy4yOS0uMTU0LjY4NC4wNzguNjc0LjM5Mi4wMi4zNC0uNDIxLjU3Ni0uNzA2LjM4LS4zLS4xNjQtLjI3OS0uNjI3LjAzMi0uNzcyem0tNC41NDIgMS4xOWEuODA2LjgwNiAwIDAxLjUwNC4wMzRjLjE2LjA2NS4yOTMuMTguMzguMzI2YS43MzIuNzMyIDAgMDEtLjE3NC45MzhjLS4zNTguMzI0LTEuMDIuMTktMS4yMS0uMjQ4LS4yMjEtLjQwMS4wNDItLjk0Mi41LTEuMDV6bTMuNjQ3IDBjLjMyNy0uMDkzLjcxLjAzLjg4NC4zMTQuMjM3LjMzLjEyMi44MjQtLjIyIDEuMDMtLjM2OS4yNDctLjkyNy4xMTgtMS4xMjctLjI2OC0uMjQyLS4zOTYgMC0uOTU4LjQ2My0xLjA4MXYuMDA1em0tNS44MTYuMzY1Yy4yOS0uMTAzLjYxLjIwNi40OTUuNDg1LS4wNzQuMjUyLS40NDIuMzQ1LS42MzIuMTU0LS4yMjYtLjE3LS4xNDItLjU2MS4xMzctLjYzOXptNy44OC40MDdhLjQyNy40MjcgMCAwMS4xMTItLjMxLjQ0Ni40NDYgMCAwMS4zMDMtLjE0M2MuMTk1LjAzMS4zOS4xODYuMzc0LjM5Ny4wMjEuMjczLS4zMjYuNDYzLS41NjguMzMtLjExNi0uMDUyLS4xNzQtLjE2Ni0uMjIxLS4yNzR6bS05LjMxMS0uMjY3Yy4xNzgtLjA3My4zOTQuMDcyLjM1Mi4yNTctLjAxLjIxMS0uMzMxLjI5My0uNDUyLjExOC0uMTA2LS4xMjMtLjA0My0uMzA5LjEwNS0uMzc1aC0uMDA1em0xMS4wMjYgMGMuMTI3LS4wODguMzIxLS4wMzEuMzY5LjEwOC4wODQuMTU0LS4wNjkuMzYtLjI0Mi4zMzQtLjI0OC4wMjEtLjMzMi0uMzQtLjEyNy0uNDQ4di4wMDZ6TTcuOTE0IDkuNzk1Yy40NTgtLjExMy45NTMuMjU3Ljk1OC43MS4wMjYuNDY0LS40NTguODc2LS45MzIuNzY4YS43NzguNzc4IDAgMDEtLjQ1OC0uMjYyLjc0Ny43NDcgMCAwMS0uMTc4LS40OWMwLS4zMzUuMjYzLS42NTQuNjEtLjcyMXYtLjAwNXptMS44MjEgMGMuNDY5LS4xMjQuOTc0LjI1Mi45NjkuNzIuMDI2LjQ0OS0uNDQ4Ljg0NS0uOTEuNzUyLS40MzItLjA1MS0uNzU0LS41MS0uNjMyLS45MTZhLjc3OC43NzggMCAwMS41NzMtLjU1NnptLTMuNTE2LjI4M2MuMzI3LS4wNTEuNjMyLjI5My40OTUuNTg3LS4wOTUuMzE0LS41NjguNDAyLS43NzkuMTQ0LS4yNDctLjI0Ny0uMDYzLS43LjI4NC0uNzMxem01LjM0OC4wMTZjLjI4NC0uMTE5LjY0Mi4xMjMuNjE2LjQyMi4wMTUuMzMtLjQyMS41NjEtLjcwNi4zNjUtLjMxNS0uMTc1LS4yNjMtLjY4NS4wOS0uNzg3em0xLjQ5IDEuNDQxYy0uMTExLS4yMDYuMDk0LS40NzMuMzI2LS40MzcuMTE2IDAgLjIuMDg3LjI3NC4xNjQuMDE1LjExOS4wNDIuMjU4LS4wNjQuMzU2LS4xNDIuMTctLjQ1OC4xMTgtLjUzNy0uMDgzem0tOC41NTktLjM4Yy4yMTYtLjE0LjUyNi4wNzEuNDguMzEzLS4wMjcuMjIyLS4zMTEuMzQ1LS40OTYuMjIyLS4yLS4xMTQtLjE5NC0uNDMzLjAxNi0uNTM2em00LjMxLjQ1OGMuMjg1LS4xMjQuNjQ4LjExOC42MjIuNDE3LjAyMS4zMzQtLjQyNi41NjYtLjcwNS4zNjUtLjMxNi0uMTctLjI2NC0uNjguMDg0LS43ODJ6bS0yIC40NDdjLjI0OC0uMTIzLjU3NS4wODguNTQ4LjM1LjAxLjIxNy0uMjEuNDAyLS40MjYuMzY2LS4xODQgMC0uMzA1LS4xNi0uMzYzLS4zMDkgMC0uMTY1LjA3My0uMzQ1LjI0Ny0uNDEybC0uMDA1LjAwNXptNC4wNTQgMGMuMjQ3LS4xNDkuNi4wNjcuNTc5LjM0NS4wMDUuMy0uMzk1LjQ4NS0uNjMyLjI5NGEuMzc1LjM3NSAwIDAxLjA1My0uNjMzdi0uMDA2em0uNyAxLjY3NGMtLjExLS4xNTQuMDItLjM1NS4yLS4zOTEuMTQ3LjAzLjMuMTM0LjI2My4yOTMtLjAxNi4yMjItLjM0OC4yODktLjQ2My4xMDN2LS4wMDV6bS01LjU4NS0uMTM5Yy4wNDItLjEyOS4xNDgtLjI1Ny4zMDUtLjIyMS4yMzIuMDE1LjMuMzUuMS40NTMtLjE4NC4xMTMtLjM4OS0uMDQ3LS40MDUtLjIzMnptMi42OTUuMTVjLjA0Mi0uMTkxLjMtLjI4NC40NjgtLjE4LjEwNi4wNDYuMTQzLjE2NC4xNjkuMjY3bC0uMDQyLjE1NGMtLjA2OS4wODMtLjE1OC4xNi0uMjY5LjE1NS0uMjE1LjAyNi0uNDEtLjIwNi0uMzI2LS4zOTd6IiBmaWxsPSIjZmZmIi8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCSENTIE.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.689Z","timestamp":1785126258689,"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 /crypto/XTVCSENTIE.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 04:24:18 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: \"cbe309d32a53fbd2e4afed556756c1f0\"\r\nlast-modified: Mon, 09 Mar 2026 08:10:19 GMT\r\nx-amz-id-2: HGbpKp1R7otPYspHCslcBoahjlZzB0Jge+CHD3U1KKqamx9QAO1hP8912vipGGPmEh2e5iU/9IA=\r\nx-amz-request-id: XB27285PV9CF954P\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: cbe309d32a53fbd2e4afed556756c1f0\r\ncdn-proxyver: 1.43\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 03/09/2026 08:30:52\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 7086763624b76334dd2b1500a580e09b\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":1545,"size_decoded":1578,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1545), with no line terminators","md5":"cbe309d32a53fbd2e4afed556756c1f0","sha1":"180428527c4ce1b77a1b312ac22ef677e7199242","sha256":"99b74154edc3f3b6708bc0f27e252e556a3a9a9a4e06f9109c2e31b02f8d4107","sha512":"1ab8f2b978a629aaa49a48547b056e5fec3a2dbf319d322fad991f85e92c949333f4fbc263b00d4a8dffa34355274aad08d7f1b1220cb760abc1196384170e13","ssdeep":"","tlshash":"6a315823540c910c2893614dcbb391f2638d507e717fd6d96eddebba608a8b8fa66434","first_seen":"2026-03-10T03:52:02.064589Z","last_seen":"2026-07-27T07:05:43.362136Z","times_seen":375,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGRDY4OEUiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNNS43MSAxMGMuMi4wMS4zLjExLjI5LjMxdjEuMjNjMCAuMTMuMDUuMjQuMTQuMzIuMDguMDkuMTkuMTQuMzIuMTRoMS4yMmMuMiAwIC4zLjA4LjMuMjcuMDIuMjQuMDIuNzIuMDIgMS40NiAwIC4wOC0uMDMuMTQtLjA4LjE5YS4yNi4yNiAwIDAgMS0uMTguMDdINi4yOWMtLjIgMC0uMjgtLjEtLjI4LS4zTDYgMTIuNDZhLjQ1LjQ1IDAgMCAwLS40Ni0uNDVINC4zMmMtLjIgMC0uMy0uMS0uMy0uMjhDNCAxMS40OSA0IDExIDQgMTAuMjdhLjI2LjI2IDAgMCAxIC4yNi0uMjZoMS40NVptOC4wMyAwYy4wNyAwIC4xNC4wMy4xOC4wOC4wNS4wNS4wOC4xMi4wOC4ybC0uMDEgMS40NWMwIC4xOS0uMTEuMjgtLjMxLjI4aC0xLjIyYS40NS40NSAwIDAgMC0uNDYuNDV2MS4yM2MwIC4yLS4xLjMtLjI5LjNoLTEuNDVhLjI2LjI2IDAgMCAxLS4xOC0uMDcuMjYuMjYgMCAwIDEtLjA4LS4xOWwuMDEtMS40NmMwLS4xOS4xMS0uMjguMzEtLjI4aDEuMjJhLjQ1LjQ1IDAgMCAwIC40Ni0uNDV2LTEuMjJjMC0uMi4xLS4zLjI5LS4zMWgxLjQ1Wk04LjcyIDdjLjE4LjAxLjI4LjEyLjI4LjMydjEuMjJhLjQ1LjQ1IDAgMCAwIC40Ni40NmgxLjIyYy4yIDAgLjMuMDkuMzEuMjd2MS40NmMwIC4wOC0uMDIuMTQtLjA3LjE5YS4yNi4yNiAwIDAgMS0uMTguMDdIOS4yOGMtLjE4IDAtLjI4LS4xLS4yOC0uM1Y5LjQ2YS40NS40NSAwIDAgMC0uMTMtLjMyLjQ1LjQ1IDAgMCAwLS4zMy0uMTRINy4zMmMtLjIgMC0uMy0uMDgtLjMxLS4yN1Y3LjI3QS4yNi4yNiAwIDAgMSA3LjI1IDdoMS40NlptLS45OC0zYy4wNyAwIC4xNC4wMy4xOC4wOC4wNS4wNS4wOC4xMS4wOC4xOWwtLjAxIDEuNDZjMCAuMTktLjExLjI3LS4zMS4yN0g2LjQ2YS40NS40NSAwIDAgMC0uMzMuMTQuNDUuNDUgMCAwIDAtLjEzLjMydjEuMjJjMCAuMi0uMS4zLS4yOS4zMUg0LjI2YS4yNi4yNiAwIDAgMS0uMTgtLjA3LjI2LjI2IDAgMCAxLS4wOC0uMmwuMDEtMS40NWMwLS4xOS4xMS0uMjcuMzEtLjI3aDEuMjJjLjEzIDAgLjI0LS4wNS4zMy0uMTQuMDgtLjA4LjEzLS4xOS4xMy0uMzJWNC4zMWMwLS4yLjEtLjMuMjktLjNoMS40NVptMy45NyAwYy4yLjAxLjMuMTEuMjkuMzF2MS4yM2EuNDUuNDUgMCAwIDAgLjQ2LjQ1aDEuMjJjLjIgMCAuMy4xLjMuMjguMDIuMjQuMDIuNzIuMDIgMS40NiAwIC4wNy0uMDMuMTQtLjA4LjE5YS4yNi4yNiAwIDAgMS0uMTguMDcgMzkgMzkgMCAwIDEtMS40NSAwYy0uMiAwLS4zLS4xLS4yOS0uM1Y2LjQ1YS40NS40NSAwIDAgMC0uMTMtLjMyLjQ1LjQ1IDAgMCAwLS4zMy0uMTRoLTEuMjJjLS4yIDAtLjMtLjA4LS4zLS4yN0EzOC4zIDM4LjMgMCAwIDEgMTAgNC4yN2MwLS4wNy4wMy0uMTQuMDgtLjE5YS4yNS4yNSAwIDAgMSAuMTgtLjA3aDEuNDVaIiBmaWxsPSIjZmZmIi8+PC9zdmc+"}},"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":"besttrader.live/slick/slick.css","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.033Z","timestamp":1785126256033,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /slick/slick.css HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: text/css\r\nlast-modified: Sat, 07 Oct 2023 09:01:37 GMT\r\netag: W/\"65211e71-6f0\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":1776,"size_decoded":711,"mime_type":"text/css","magic":"ASCII text","md5":"f38b2db10e01b1572732a3191d538707","sha1":"a94a059b3178b4adec09e3281ace2819a30095a4","sha256":"de1e399b07289f3b0a8d35142e363e128124a1185770e214e25e58030dad48e5","sha512":"c11e283612c11dfeec9a3cb42b8a2acdd5ae99dfabe7ffba40efef0dd6bbe8c5b98ae8383d3eeff3a168124c922097eddd703401ee9ac6122f1ebab09bbf7737","ssdeep":"","tlshash":"c931294845b389468416808d5fd7ca6d2bfff0130829e199ba8d1306cfce7d8a9c26b2","first_seen":"2023-04-05T08:37:21Z","last_seen":"2026-07-27T07:03:33.541323Z","times_seen":72328,"resource_available":false,"data":"LyogU2xpZGVyICovCi5zbGljay1zbGlkZXIKewogICAgcG9zaXRpb246IHJlbGF0aXZlOwoKICAgIGRpc3BsYXk6IGJsb2NrOwogICAgYm94LXNpemluZzogYm9yZGVyLWJveDsKCiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOwogICAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTsKICAgICAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7CiAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lOwoKICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTsKICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTsKICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15OwogICAgICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7CiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50Owp9Cgouc2xpY2stbGlzdAp7CiAgICBwb3NpdGlvbjogcmVsYXRpdmU7CgogICAgZGlzcGxheTogYmxvY2s7CiAgICBvdmVyZmxvdzogaGlkZGVuOwoKICAgIG1hcmdpbjogMDsKICAgIHBhZGRpbmc6IDA7Cn0KLnNsaWNrLWxpc3Q6Zm9jdXMKewogICAgb3V0bGluZTogbm9uZTsKfQouc2xpY2stbGlzdC5kcmFnZ2luZwp7CiAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICBjdXJzb3I6IGhhbmQ7Cn0KCi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLAouc2xpY2stc2xpZGVyIC5zbGljay1saXN0CnsKICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsKfQoKLnNsaWNrLXRyYWNrCnsKICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsKICAgIHRvcDogMDsKICAgIGxlZnQ6IDA7CgogICAgZGlzcGxheTogYmxvY2s7CiAgICBtYXJnaW4tbGVmdDogYXV0bzsKICAgIG1hcmdpbi1yaWdodDogYXV0bzsKfQouc2xpY2stdHJhY2s6YmVmb3JlLAouc2xpY2stdHJhY2s6YWZ0ZXIKewogICAgZGlzcGxheTogdGFibGU7CgogICAgY29udGVudDogJyc7Cn0KLnNsaWNrLXRyYWNrOmFmdGVyCnsKICAgIGNsZWFyOiBib3RoOwp9Ci5zbGljay1sb2FkaW5nIC5zbGljay10cmFjawp7CiAgICB2aXNpYmlsaXR5OiBoaWRkZW47Cn0KCi5zbGljay1zbGlkZQp7CiAgICBkaXNwbGF5OiBub25lOwogICAgZmxvYXQ6IGxlZnQ7CgogICAgaGVpZ2h0OiAxMDAlOwogICAgbWluLWhlaWdodDogMXB4Owp9CltkaXI9J3J0bCddIC5zbGljay1zbGlkZQp7CiAgICBmbG9hdDogcmlnaHQ7Cn0KLnNsaWNrLXNsaWRlIGltZwp7CiAgICBkaXNwbGF5OiBibG9jazsKfQouc2xpY2stc2xpZGUuc2xpY2stbG9hZGluZyBpbWcKewogICAgZGlzcGxheTogbm9uZTsKfQouc2xpY2stc2xpZGUuZHJhZ2dpbmcgaW1nCnsKICAgIHBvaW50ZXItZXZlbnRzOiBub25lOwp9Ci5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGUKewogICAgZGlzcGxheTogYmxvY2s7Cn0KLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlCnsKICAgIHZpc2liaWxpdHk6IGhpZGRlbjsKfQouc2xpY2stdmVydGljYWwgLnNsaWNrLXNsaWRlCnsKICAgIGRpc3BsYXk6IGJsb2NrOwoKICAgIGhlaWdodDogYXV0bzsKCiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsKfQouc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHsKICAgIGRpc3BsYXk6IG5vbmU7Cn0K"}},"time_used":113,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":113,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","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/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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.203Z","timestamp":1785126257203,"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-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/ticker-tape/?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 04:24:17 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: 0d9fdd6f28a59e9dfa7341c3addc8cde\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-27T07:05:45.419725Z","times_seen":1391,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtQUVROTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLUFFUTk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCl9LndyYXBwZXItaGN0MnlKdkt7Y29sb3I6dmFyKC0tXzAtQUVROSl9LmFuaW1hdGVkLWhjdDJ5SnZLe2FuaW1hdGlvbjoxcyBlYXNlLWluLW91dCAwcyBpbmZpbml0ZSBhbHRlcm5hdGUgbm9uZSBydW5uaW5nO2FuaW1hdGlvbi1uYW1lOnB1bHNhdGlvbi1oY3QyeUp2S31Aa2V5ZnJhbWVzIHB1bHNhdGlvbi1oY3QyeUp2S3swJXtvcGFjaXR5OjF9dG97b3BhY2l0eTouNH19W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtX19ycTp2YXIoLS1jb2xvci13aGl0ZSk7LS1fMS1fX3JxOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApfVtkYXRhLXRoZW1lPWRhcmtdey0tXzAtX19ycTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjAwKTstLV8xLV9fcnE6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCl9LmxvZ28tVkNOS3ViV3F7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1yYWRpdXM6NTAlO2Rpc3BsYXk6aW5saW5lLWZsZXg7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ubG9nby1WQ05LdWJXcTpub3QoaW1nKXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8xLV9fcnEpfS5oaWRkZW4tVkNOS3ViV3F7b3BhY2l0eTowO3Bvc2l0aW9uOmFic29sdXRlfS54eGNlcHRpb25hbGx5c21hbGxkb25vdHVzZWJydjEwMjMtVkNOS3ViV3F7Zm9udC1zaXplOjEwcHg7aGVpZ2h0OjEycHg7bGluZS1oZWlnaHQ6MTBweDttaW4td2lkdGg6MTJweDt3aWR0aDoxMnB4fS54eHhzbWFsbC1WQ05LdWJXcXtmb250LXNpemU6MTFweDtoZWlnaHQ6MThweDtsaW5lLWhlaWdodDoxNnB4O21pbi13aWR0aDoxOHB4O3dpZHRoOjE4cHh9Lnh4c21hbGwtVkNOS3ViV3F7Zm9udC1zaXplOjExcHg7aGVpZ2h0OjIwcHg7bGluZS1oZWlnaHQ6MTZweDttaW4td2lkdGg6MjBweDt3aWR0aDoyMHB4fS54c21hbGwtVkNOS3ViV3F7Zm9udC1zaXplOjExcHg7aGVpZ2h0OjI0cHg7bGluZS1oZWlnaHQ6MTZweDttaW4td2lkdGg6MjRweDt3aWR0aDoyNHB4fS5zbWFsbC1WQ05LdWJXcXtmb250LXNpemU6MTRweDtoZWlnaHQ6MjhweDtsaW5lLWhlaWdodDoxNnB4O21pbi13aWR0aDoyOHB4O3dpZHRoOjI4cHh9Lm1lZGl1bS1WQ05LdWJXcXtmb250LXNpemU6MTZweDtoZWlnaHQ6MzZweDtsaW5lLWhlaWdodDoxNnB4O21pbi13aWR0aDozNnB4O3dpZHRoOjM2cHh9LmxhcmdlLVZDTkt1Yldxe2ZvbnQtc2l6ZToyNHB4O2hlaWdodDo0OHB4O2xpbmUtaGVpZ2h0OjMycHg7bWluLXdpZHRoOjQ4cHg7d2lkdGg6NDhweH0ueGxhcmdlLVZDTkt1Yldxe2ZvbnQtc2l6ZTo0MHB4O2hlaWdodDo1NnB4O2xpbmUtaGVpZ2h0OjQwcHg7bWluLXdpZHRoOjU2cHg7d2lkdGg6NTZweH0ueHhsYXJnZS1WQ05LdWJXcXtmb250LXNpemU6ODBweDtoZWlnaHQ6MTEycHg7bGluZS1oZWlnaHQ6ODBweDttaW4td2lkdGg6MTEycHg7d2lkdGg6MTEycHh9Lnh4eGxhcmdlLVZDTkt1Yldxe2ZvbnQtc2l6ZToxNjBweDtoZWlnaHQ6MTY4cHg7bGluZS1oZWlnaHQ6MTYwcHg7bWluLXdpZHRoOjE2OHB4O3dpZHRoOjE2OHB4fS5za2VsZXRvbi1WQ05LdWJXcXtiYWNrZ3JvdW5kLWNvbG9yOmN1cnJlbnRDb2xvcn0ubGV0dGVyLVZDTkt1Yldxe2NvbG9yOnZhcigtLV8wLV9fcnEpO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjcwMH0="}},"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":"www.tradingview-widget.com/static/bundles/embed/en.46024.97176aa48fe9d9a0d127.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.345Z","timestamp":1785126257345,"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-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.46024.97176aa48fe9d9a0d127.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/crypto-mkt-screener/?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 04:24:17 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: \"6a632876-1c38c\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 24 Jul 2026 08:55:18 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:53:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 91bd6ed5be74c6f2511e5265e4af7a65\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":115596,"size_decoded":32391,"mime_type":"application/javascript; charset=utf-8","magic":"Unicode text, UTF-8 text, with very long lines (3072)","md5":"07d126f5f997c2ed316e3742d5b45af1","sha1":"826dfb648f32acec5e5699cc15a08026e137e6a3","sha256":"fb0cd50a605d7edce14affef79a6dfae9404ba2f7d7818008345363e9e26a988","sha512":"c7114acc89392a1469487feb62b74be0cd3a585a3b5d7a4bb38f30575f557f59860a020911d77ff07f283945810bbfe3bd8586e314442a21ea0c2e1e3625bfc6","ssdeep":"3072:WFM91hHo+AyVKC+wNBsx4A5b0jp4mMGOlyIhVh4dt//9:WFM91hHo+Ay/NNBM4A5bsp4mMGOlVp4d","tlshash":"69b3fe03c901d0ea9fb2d6063ba5dcc878f0774541f0e6c27b998f29c5a3da6593a778","first_seen":"2026-07-25T03:24:57.378453Z","last_seen":"2026-07-27T07:14:43.802839Z","times_seen":133,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1sxNzg1OSwyMDg2NiwyNDkyOSw0MDI0MCw0NjAyNCw1MjMyNCw1NzE4NCw1ODY2Nyw5NDM4OF0sezE2MDU2MihlKXtlLmV4cG9ydHM9WyJDTUYiXX0sNjE3MzQwKGUpe2UuZXhwb3J0cz1bIkNvbHVtbnMiXX0sMTE4NDkxKGUpe2UuZXhwb3J0cz1bIkNhbmRsZXMiXX0sNzk2MDkzKGUpe2UuZXhwb3J0cz1bIkFyZWEiXX0sOTQxNjI5KGUpe2UuZXhwb3J0cz1bIkJhcnMiXX0sNTI1MzMxKGUpe2UuZXhwb3J0cz1bIkJhc2VsaW5lIl19LDQxMzQzKGUpe2UuZXhwb3J0cz1bIkthZ2kiXX0sOTY3ODQxKGUpe2UuZXhwb3J0cz1bIkhMQyBhcmVhIl19LDY4MzAwKGUpe2UuZXhwb3J0cz1bIkhMQyBiYXJzIl19LDMzMTgyNChlKXtlLmV4cG9ydHM9WyJIb2xsb3cgY2FuZGxlcyJdfSw4MzU1NDMoZSl7ZS5leHBvcnRzPVsiSGVpa2luIEFzaGkiXX0sOTUyODEwKGUpe2UuZXhwb3J0cz1bIkhpZ2gtbG93Il19LDIxMDQ5OShlKXtlLmV4cG9ydHM9WyJMaW5lIl19LDE4NjE0NyhlKXtlLmV4cG9ydHM9WyJMaW5lIHdpdGggbWFya2VycyJdfSwzMDc0MzYoZSl7ZS5leHBvcnRzPVsiTGluZSBicmVhayJdfSw2ODc5NTEoZSl7ZS5leHBvcnRzPVsiU2Vzc2lvbiB2b2x1bWUgcHJvZmlsZSJdfSw5MTYxNDgoZSl7ZS5leHBvcnRzPVsiU3RlcCBsaW5lIl19LDg2NzAyMShlKXtlLmV4cG9ydHM9WyJQb2ludCAmIGZpZ3VyZSJdfSwxODgzNTIoZSl7ZS5leHBvcnRzPVsiUmFuZ2UiXX0sNDYxNzM4KGUpe2UuZXhwb3J0cz1bIlJlbmtvIl19LDExNzk4NChlKXtlLmV4cG9ydHM9WyJUaW1lIHByaWNlIG9wcG9ydHVuaXR5Il19LDg5MjM3NShlKXtlLmV4cG9ydHM9WyJWb2x1bWUgY2FuZGxlcyJdfSwyMDEwNzMoZSl7ZS5leHBvcnRzPVsiVm9sdW1lIGZvb3RwcmludCJdfSw2NDE1OTgoZSl7ZS5leHBvcnRzPVsiUHJpY2VzIl19LDc1NDYoZSl7ZS5leHBvcnRzPVsiWWllbGQiXX0sNzUxMDMzKGUpe2UuZXhwb3J0cz1bIllpZWxkcyJdfSw5NDk3MDQoZSl7ZS5leHBvcnRzPVsiTUZJIl19LDI3NDg3NChlKXtlLmV4cG9ydHM9WyItREkiXX0sODE5MDQyKGUpe2UuZXhwb3J0cz1bIitESSJdfSwzNjIwMDQoZSl7ZS5leHBvcnRzPVsiQWxsIGl0ZW1zIl19LDMzMzM1KGUpe2UuZXhwb3J0cz1bIk5vdGhpbmcgc2VsZWN0ZWQiXX0sNzU0OTI1KGUpe2UuZXhwb3J0cz1bIlBhdHRlcm4iXX0sNjgzNjI3KGUpe2UuZXhwb3J0cz1bIlNvbWV0aGluZyB3ZW50IHdyb25nIl19LDg1OTk5NChlKXtlLmV4cG9ydHM9WyJDIl19LDg5MjM2MyhlKXtlLmV4cG9ydHM9WyJEIl19LDM5NDUwMShlKXtlLmV4cG9ydHM9WyJEIl19LDU3MDkzOShlKXtlLmV4cG9ydHM9WyJFIl19LDM5NDkyMShlKXtlLmV4cG9ydHM9WyJGIl19LDg2NjQ0KGUpe2UuZXhwb3J0cz1bIlIiXX0sNzU2NDU3KGUpe2UuZXhwb3J0cz1bIlIiXX0sMjU3MzI2KGUpe2UuZXhwb3J0cz1bIlMiXX0sMTg1NDk5KGUpe2UuZXhwb3J0cz1bIkFsbCBQYWlycyJdfSwyMTc3ODgoZSl7ZS5leHBvcnRzPVsiTiJdfSw0MTM1MzcoZSl7ZS5leHBvcnRzPVsiQiJdfSw5OTE2OTcoZSl7ZS5leHBvcnRzPVsiUyJdfSwxOTE0MzIoZSl7ZS5leHBvcnRzPVsiRCJdfSw4ODkxMChlKXtlLmV4cG9ydHM9WyJNIl19LDMyMzU3MChlKXtlLmV4cG9ydHM9WyJXIl19LDI0MDczKGUpe2UuZXhwb3J0cz1bImgiXX0sNjE4NChlKXtlLmV4cG9ydHM9WyJtIl19LDIwNTkoZSl7ZS5leHBvcnRzPVsiTWFyZ2lucyJdfSw1NjU5NjIoZSl7ZS5leHBvcnRzPVsiQnV5Il19LDQ1OTQ2MyhlKXtlLmV4cG9ydHM9WyJOZXV0cmFsIl19LDI1NzY0MyhlKXtlLmV4cG9ydHM9WyJTZWxsIl19LDQ4OTg2OShlKXtlLmV4cG9ydHM9WyJTdHJvbmcgQnV5Il19LDY5MTU0MyhlKXtlLmV4cG9ydHM9WyJTdHJvbmcgU2VsbCJdfSw3MzQ3NTAoZSl7ZS5leHBvcnRzPVsiTWF5Il19LDI0ODc4NShlKXtlLmV4cG9ydHM9WyJCdWxsIEJlYXIgUG93ZXIiXX0sOTMwMDk4KGUpe2UuZXhwb3J0cz1bIkRvamkiXX0sNzYzMjI2KGUpe2UuZXhwb3J0cz1bIlNwaW5uaW5nIFRvcCBCbGFjayJdfSwzMzM5MTQoZSl7ZS5leHBvcnRzPVsiU3Bpbm5pbmcgVG9wIFdoaXRlIl19LDQ3NzQ3NShlKXtlLmV4cG9ydHM9WyJUZWNobmljYWxzIl19LDU5NjE2OChlKXtlLmV4cG9ydHM9WyJWb2wiXX0sODY4NDE5KGUpe2UuZXhwb3J0cz1bIlZvbHVtZSBXZWlnaHRlZCBBdmVyYWdlIFByaWNlIl19LDU3MDYyKGUpe2UuZXhwb3J0cz1bIk4vQSJdfSw1MzkyMzgoZSl7ZS5leHBvcnRzPVsiJVIiXX0sMTYxNTgzKGUpe2UuZXhwb3J0cz1bIjEtTW9udGggSGlnaCJdfSwyMDA5MjAoZSl7ZS5leHBvcnRzPVsiMS1Nb250aCBMb3ciXX0sMTgxMjI4KGUpe2UuZXhwb3J0cz1bIjEtWSBCZXRhIl19LDE4NjcyNihlKXtlLmV4cG9ydHM9WyIxLVllYXIgQmV0YSJdfSwxMTE5NzYoZSl7ZS5leHBvcnRzPVsiMSB5ZWFyIl19LDgxODAwMihlKXtlLmV4cG9ydHM9WyIxIHllYXIgcHJpY2UgdGFyZ2V0Il19LDE3MzI0MChlKXtlLmV4cG9ydHM9WyIxNW0iXX0sODMyNzMzKGUpe2UuZXhwb3J0cz1bIjFNIl19LDQ5MjEzNShlKXtlLmV4cG9ydHM9WyIxVyJdfSw0MTU3NTEoZSl7ZS5leHBvcnRzPVsiMW0iXX0sMjg5NDY0KGUpe2UuZXhwb3J0cz1bIjFoIl19LDk5MDc3KGUpe2UuZXhwb3J0cz1bIjMtTW9udGggSGlnaCJdfSw4ODY5MTgoZSl7ZS5leHBvcnRzPVsiMy1Nb250aCBMb3ciXX0sNzc5MDgzKGUpe2UuZXhwb3J0cz1bIjMtTW9udGggUGVyZiJdfSw2NjQyNDIoZSl7ZS5leHBvcnRzPVsiMy1Nb250aCBQZXJmb3JtYW5jZSJdfSwzMjgwMzAoZSl7ZS5leHBvcnRzPVsiMyBtb250aHMiXX0sNTUyNzQzKGUpe2UuZXhwb3J0cz1bIjRoIl19LDE5MzI1OShlKXtlLmV4cG9ydHM9WyI1MiBXZWVrIEhpZ2giXX0sNjY5MzA4KGUpe2UuZXhwb3J0cz1bIjUyIFdlZWsgTG93Il19LDQ5MDU3NyhlKXtlLmV4cG9ydHM9WyI1WSBQZXJmIl19LDkzNTgxOShlKXtlLmV4cG9ydHM9WyI1WSBQZXJmb3JtYW5jZSJdfSw4MDE0ODAoZSl7ZS5leHBvcnRzPVsiNW0iXX0sCjk3ODc2MChlKXtlLmV4cG9ydHM9WyI2LU1vbnRoIEhpZ2giXX0sNjAzNTA5KGUpe2UuZXhwb3J0cz1bIjYtTW9udGggTG93Il19LDc2ODc4NihlKXtlLmV4cG9ydHM9WyI2LU1vbnRoIFBlcmYiXX0sOTYwNjYzKGUpe2UuZXhwb3J0cz1bIjYtTW9udGggUGVyZm9ybWFuY2UiXX0sNzUzMTYoZSl7ZS5leHBvcnRzPVsiQ0NJMjAiXX0sNzk2ODkxKGUpe2UuZXhwb3J0cz1bIkNFRiJdfSw0NDM2MjcoZSl7ZS5leHBvcnRzPVsiQ291bnRyeSJdfSwyMjU3MDYoZSl7ZS5leHBvcnRzPVsiQ291cG9uIl19LDgyNTE3OChlKXtlLmV4cG9ydHM9WyJDb3VyaWVyIFNlcnZpY2VzIl19LDY4Mzc0MChlKXtlLmV4cG9ydHM9WyJDb2FsIl19LDMxMDQoZSl7ZS5leHBvcnRzPVsiQ29hbCBNaW5pbmcgU3VwcG9ydCJdfSw4MzU4OTQoZSl7ZS5leHBvcnRzPVsiQ29hbCBXaG9sZXNhbGUiXX0sMzI1NzMyKGUpe2UuZXhwb3J0cz1bIkNvY29zIChLZWVsaW5nKSBJc2xhbmRzIl19LDMyNzA4NChlKXtlLmV4cG9ydHM9WyJDb2ZmZWUgJiBUZWEiXX0sMzU1MDIoZSl7ZS5leHBvcnRzPVsiQ29mZmVlLCBUZWEgJiBDb2NvYSBGYXJtaW5nIl19LDU0NTgoZSl7ZS5leHBvcnRzPVsiQ29pbiJdfSw2MjM4MDkoZSl7ZS5leHBvcnRzPVsiQ29rZSBDb2FsIE1pbmluZyJdfSwxMzU4NjcoZSl7ZS5leHBvcnRzPVsiQ29sb21iaWEiXX0sNDkyNjc5KGUpe2UuZXhwb3J0cz1bIkNvbG9yaW5nIEFnZW50Il19LDcxODY3MyhlKXtlLmV4cG9ydHM9WyJDb2xsZWN0aXZlIEludmVzdG1lbnQgRnVuZCBPcGVyYXRvcnMiXX0sMzMyNjA5KGUpe2UuZXhwb3J0cz1bIkNvbHVtbiBzZXRzIl19LDU3OTA2NShlKXtlLmV4cG9ydHM9WyJDb2x1bW4gc2V0dXAiXX0sNDg0MTM2KGUpe2UuZXhwb3J0cz1bIkNvbW9yb3MiXX0sNjE3NDI3KGUpe2UuZXhwb3J0cz1bIkNvbW1vZGl0eSBDaGFubmVsIEluZGV4ICgyMCkiXX0sMTUyOTEzKGUpe2UuZXhwb3J0cz1bIkNvbW1vZGl0eSBDaGVtaWNhbHMiXX0sMTU4MDg1KGUpe2UuZXhwb3J0cz1bIkNvbW1vZGl0eSBDaGVtaWNhbHMgV2hvbGVzYWxlIl19LDk4MTI4MyhlKXtlLmV4cG9ydHM9WyJDb21tb24gU3RvY2siXX0sNDE1NjkoZSl7ZS5leHBvcnRzPVsiQ29tbWVyY2lhbCBBaXJjcmFmdCBNYW51ZmFjdHVyaW5nIl19LDM2NzU4MyhlKXtlLmV4cG9ydHM9WyJDb21tZXJjaWFsIEJhbmtzIl19LDg4OTIzOChlKXtlLmV4cG9ydHM9WyJDb21tZXJjaWFsIEJ1aWxkaW5ncyJdfSw4MDI1MTkoZSl7ZS5leHBvcnRzPVsiQ29tbWVyY2lhbCBEb2N1bWVudCBNYW5hZ2VtZW50Il19LDY5MjUxNihlKXtlLmV4cG9ydHM9WyJDb21tZXJjaWFsIEVxdWlwbWVudCBSZW50YWwiXX0sNTc5ODM1KGUpe2UuZXhwb3J0cz1bIkNvbW1lcmNpYWwgRmlzaGluZyJdfSw1MzUwNyhlKXtlLmV4cG9ydHM9WyJDb21tZXJjaWFsIEZvb2QgU2VydmljZXMiXX0sNjQ5NTEwKGUpe2UuZXhwb3J0cz1bIkNvbW1lcmNpYWwgTGVhc2luZyJdfSw0NTg5NzkoZSl7ZS5leHBvcnRzPVsiQ29tbWVyY2lhbCBMb2FucyJdfSw1MjUxNjMoZSl7ZS5leHBvcnRzPVsiQ29tbWVyY2lhbCBOdXJzZXJpZXMiXX0sOTU3OTM1KGUpe2UuZXhwb3J0cz1bIkNvbW1lcmNpYWwgUHJpbnRpbmcvRm9ybXMiXX0sNzY2NDAyKGUpe2UuZXhwb3J0cz1bIkNvbW1lcmNpYWwgUHJpbnRpbmcgU2VydmljZXMiXX0sNTQ3MjMyKGUpe2UuZXhwb3J0cz1bIkNvbW1lcmNpYWwgUkVJVHMiXX0sNDM3NzAxKGUpe2UuZXhwb3J0cz1bIkNvbW1lcmNpYWwgU2VydmljZXMiXX0sNTA1MjA5KGUpe2UuZXhwb3J0cz1bIkNvbW11dGVyIEZlcnJ5Il19LDM1NjY2MShlKXtlLmV4cG9ydHM9WyJDb21tdXRpbmcgU2VydmljZXMiXX0sNjg3NTIoZSl7ZS5leHBvcnRzPVsiQ29tbXVuaWNhdGlvbiAmIFNhdGVsbGl0ZSBFcXVpcG1lbnQiXX0sODU4MTgoZSl7ZS5leHBvcnRzPVsiQ29tbXVuaWNhdGlvbnMiXX0sODg1Njg4KGUpe2UuZXhwb3J0cz1bIkNvbW11bmljYXRpb25zICYgTmV0d29ya2luZyJdfSwyMjUwMjgoZSl7ZS5leHBvcnRzPVsiQ29tcHV0ZXIgJiBFbGVjdHJvbmljcyBSZXRhaWxlcnMiXX0sNjE3MjYzKGUpe2UuZXhwb3J0cz1bIkNvbXB1dGVyIENvbW11bmljYXRpb25zIl19LDY2NTQyMihlKXtlLmV4cG9ydHM9WyJDb21wdXRlciBIYXJkd2FyZSJdfSw0MTI2NjUoZSl7ZS5leHBvcnRzPVsiQ29tcHV0ZXIgSGFyZHdhcmUgJiBTb2Z0d2FyZSBSZXRhaWxlcnMiXX0sMjgyMjE3KGUpe2UuZXhwb3J0cz1bIkNvbXB1dGVyIEhhcmR3YXJlIENvbXBvbmVudCBBc3NlbWJseSJdfSwzOTQ5NChlKXtlLmV4cG9ydHM9WyJDb21wdXRlciBQZXJpcGhlcmFscyJdfSw3MjU4MzAoZSl7ZS5leHBvcnRzPVsiQ29tcHV0ZXIgUHJvY2Vzc2luZyBIYXJkd2FyZSJdfSw1NzA3NChlKXtlLmV4cG9ydHM9WyJDb21wdXRlciBQcm9ncmFtbWluZyJdfSw4OTY0NShlKXtlLmV4cG9ydHM9WyJDb21wdXRlciBUcmFpbmluZyJdfSw5NjQ4NTgoZSl7ZS5leHBvcnRzPVsiQ29uZ28iXX0sMjcxNTU4KGUpe2UuZXhwb3J0cz1bIkNvbmdvICh0aGUgRGVtb2NyYXRpYyBSZXB1YmxpYyBvZiB0aGUpIl19LDcyMTMzMyhlKXtlLmV4cG9ydHM9WyJDb25nbG9tZXJhdGVzIl19LDEzMDgzMyhlKXtlLmV4cG9ydHM9WyJDb25mZXJlbmNpbmcgVG9vbHMgJiBTeXN0ZW1zIl19LDE5NDE5NChlKXtlLmV4cG9ydHM9WyJDb25uZWN0aW5nIl19LDgzNTk0NyhlKXtlLmV4cG9ydHM9WyJDb25zdHJ1Y3Rpb24gJiBFbmdpbmVlcmluZyJdfSw2NjI4MTQoZSl7ZS5leHBvcnRzPVsiQ29uc3RydWN0aW9uIE1hY2hpbmVyeSJdfSwxNzg1OTQoZSl7ZS5leHBvcnRzPVsiQ29uc3RydWN0aW9uIE1hdGVyaWFsIFByb2Nlc3NpbmciXX0sOTk2NyhlKXtlLmV4cG9ydHM9WyJDb25zdHJ1Y3Rpb24gTWF0ZXJpYWwgV2hvbGVzYWxlIl19LDUwMTQ4MihlKXtlLmV4cG9ydHM9WyJDb25zdHJ1Y3Rpb24gTWF0ZXJpYWxzIl19LDI3NzQ1NChlKXtlLmV4cG9ydHM9WyJDb25zdHJ1Y3Rpb24gU3VwcGxpZXMiXX0sODI0MjczKGUpe2UuZXhwb3J0cz1bIkNvbnN0cnVjdGlvbiBTdXBwbGllcyAmIEZpeHR1cmVzIl19LDEyNjgzOShlKXsKZS5leHBvcnRzPVsiQ29uc3RydWN0aW9uIFN1cHBsaWVzICYgRml4dHVyZXMgV2hvbGVzYWxlIl19LDM5NzkwOChlKXtlLmV4cG9ydHM9WyJDb25zdW1lciBDcmVkaXQgQ2FyZHMgU2VydmljZXMiXX0sOTU5MjUyKGUpe2UuZXhwb3J0cz1bIkNvbnN1bWVyIEN5Y2xpY2FsIl19LDU0NTM5NShlKXtlLmV4cG9ydHM9WyJDb25zdW1lciBDeWNsaWNhbHMiXX0sNzkwNzE2KGUpe2UuZXhwb3J0cz1bIkNvbnN1bWVyIEdvb2RzIFJlbnRhbCJdfSw3MzE5ODMoZSl7ZS5leHBvcnRzPVsiQ29uc3VtZXIgRG9jdW1lbnQgTWFuYWdlbWVudCJdfSw3NTQ4NDMoZSl7ZS5leHBvcnRzPVsiQ29uc3VtZXIgRHVyYWJsZXMiXX0sNTU1MDg4KGUpe2UuZXhwb3J0cz1bIkNvbnN1bWVyIEVsZWN0cm9uaWNzIFJldGFpbGVycyJdfSwyMjg0KGUpe2UuZXhwb3J0cz1bIkNvbnN1bWVyIEVsZWN0cm9uaWNzL0FwcGxpYW5jZXMiXX0sOTI0MzkzKGUpe2UuZXhwb3J0cz1bIkNvbnN1bWVyIEVsZWN0cm9uaWMgV2hvbGVzYWxlIl19LDM5NDY2NihlKXtlLmV4cG9ydHM9WyJDb25zdW1lciBMZWFzaW5nIl19LDMxOTM5MyhlKXtlLmV4cG9ydHM9WyJDb25zdW1lciBMZW5kaW5nIl19LDgzMTg4MihlKXtlLmV4cG9ydHM9WyJDb25zdW1lciBOb24tQ3ljbGljYWxzIl19LDU1NjQ3NShlKXtlLmV4cG9ydHM9WyJDb25zdW1lciBOb24tRHVyYWJsZXMiXX0sMTUyODA4KGUpe2UuZXhwb3J0cz1bIkNvbnN1bWVyIFNlcnZpY2VzIl19LDg0NzM5OChlKXtlLmV4cG9ydHM9WyJDb25zdW1lciBTdW5kcmllcyJdfSwxNjkyOTEoZSl7ZS5leHBvcnRzPVsiQ29uc3VtZXIgUHVibGlzaGluZyJdfSwzMjI1MjkoZSl7ZS5leHBvcnRzPVsiQ29uc3VtZXIgUmVwYWlyIFNlcnZpY2VzIl19LDI2NDkoZSl7ZS5leHBvcnRzPVsiQ29uc3VtZXIvTm9uLUN5Y2xpY2FsIl19LDM2OTQzNihlKXtlLmV4cG9ydHM9WyJDb250YWluZXIgJiBQYWNrYWdpbmcgTWF0ZXJpYWwgV2hvbGVzYWxlIl19LDQ4NTM0OShlKXtlLmV4cG9ydHM9WyJDb250YWluZXJzL1BhY2thZ2luZyJdfSw2OTc5MzQoZSl7ZS5leHBvcnRzPVsiQ29udGVudCAmIFNpdGUgTWFuYWdlbWVudCBTZXJ2aWNlcyJdfSwyOTY1MjUoZSl7ZS5leHBvcnRzPVsiQ29udHJhY3QgRHJpbGxpbmciXX0sNzIzMjgyKGUpe2UuZXhwb3J0cz1bIkNvb2tpZSwgQ3JhY2tlciAmIFBhc3RhIE1hbnVmYWN0dXJpbmciXX0sNzA4ODU5KGUpe2UuZXhwb3J0cz1bIkNvb2sgSXNsYW5kcyJdfSwyMjI3NTkoZSl7ZS5leHBvcnRzPVsiQ29wcGVyIE9yZSAgTWluaW5nIl19LDIyNDQwNihlKXtlLmV4cG9ydHM9WyJDb3B5cmlnaHQgTWFuYWdlbWVudCJdfSwyNzIyMzkoZSl7ZS5leHBvcnRzPVsiQ29ycG9yYXRlIEFjY291bnRpbmcgU2VydmljZXMiXX0sMzUwNzQzKGUpe2UuZXhwb3J0cz1bIkNvcnBvcmF0ZSBGaW5hbmNpYWwgU2VydmljZXMiXX0sNzQzNzc4KGUpe2UuZXhwb3J0cz1bIkNvc21ldGljcyAmIFBlcmZ1bWVzIl19LDI2ODg0NChlKXtlLmV4cG9ydHM9WyJDb3N0YSBSaWNhIl19LDkxNTcwNShlKXtlLmV4cG9ydHM9WyJDYXRhbG9nL1NwZWNpYWx0eSBEaXN0cmlidXRpb24iXX0sNjQxMDI2KGUpe2UuZXhwb3J0cz1bIkNheW1hbiBJc2xhbmRzIl19LDkxMjgyNihlKXtlLmV4cG9ydHM9WyJDYWJsZSBTZXJ2aWNlIFByb3ZpZGVycyJdfSwzMTI4ODcoZSl7ZS5leHBvcnRzPVsiQ2FibGUvU2F0ZWxsaXRlIFRWIl19LDYwMTA5NyhlKXtlLmV4cG9ydHM9WyJDYWJvIFZlcmRlIl19LDMyOTgzMChlKXtlLmV4cG9ydHM9WyJDYWZlcyJdfSw5NjQ4MzQoZSl7ZS5leHBvcnRzPVsiQ2FsbCBDZW50ZXIgU2VydmljZXMiXX0sNTU1NDg5KGUpe2UuZXhwb3J0cz1bIkNhbWJvZGlhIl19LDk3NzAyOChlKXtlLmV4cG9ydHM9WyJDYW1lcm9vbiJdfSwxNTE4OShlKXtlLmV4cG9ydHM9WyJDYW5hZGEiXX0sNTM1MTMyKGUpe2UuZXhwb3J0cz1bIkNhcEV4ICh7cGVyaW9kfSkiXX0sMTQ5NTAzKGUpe2UuZXhwb3J0cz1bIkNhcGl0YWwiXX0sOTg2NTg5KGUpe2UuZXhwb3J0cz1bIkNhcGl0YWwgR29vZHMiXX0sNTQ4MzUyKGUpe2UuZXhwb3J0cz1bIkNhcGl0YWwgTG9uZyBUZXJtIl19LDI3NTEyMShlKXtlLmV4cG9ydHM9WyJDYXJib24gQ2FwdHVyZSAmIFN0b3JhZ2UiXX0sMzMwNTczKGUpe2UuZXhwb3J0cz1bIkNhcmJvbmF0ZWQgU29mdCBEcmlua3MiXX0sMzkxNzYoZSl7ZS5leHBvcnRzPVsiQ2FycGV0cyAmIEN1cnRhaW5zIl19LDQ3NjgzNyhlKXtlLmV4cG9ydHM9WyJDYXNoICYgRXF1aXZhbGVudHMgKEZZKSJdfSw3NjUwMTcoZSl7ZS5leHBvcnRzPVsiQ2FzaCAmIEVxdWl2YWxlbnRzIChNUlEpIl19LDI1NDk0NyhlKXtlLmV4cG9ydHM9WyJDYXNoIGFuZCBzaG9ydCB0ZXJtIGludmVzdG1lbnRzIChGWSkiXX0sNzg4ODM4KGUpe2UuZXhwb3J0cz1bIkNhc2ggYW5kIHNob3J0IHRlcm0gaW52ZXN0bWVudHMgKE1SUSkiXX0sOTE1MTU0KGUpe2UuZXhwb3J0cz1bIkNhc2ggb24gaGFuZCAoRlkpIl19LDI0NzM2MChlKXtlLmV4cG9ydHM9WyJDYXNoIG9uIGhhbmQgKE1SUSkiXX0sNjA2MjA3KGUpe2UuZXhwb3J0cz1bIkNhc2lub3MiXX0sODU3MzQ1KGUpe2UuZXhwb3J0cz1bIkNhc2lub3MvR2FtaW5nIl19LDY1ODI1NihlKXtlLmV4cG9ydHM9WyJDYXNpbm9zICYgR2FtaW5nIl19LDkxMDQ2OChlKXtlLmV4cG9ydHM9WyJDYXN1YWx0eSBJbnN1cmFuY2UiXX0sMTQzNTE4KGUpe2UuZXhwb3J0cz1bIkNlbGx1bGFyIEZpYmVyIl19LDkwODQ1NihlKXtlLmV4cG9ydHM9WyJDZW1lbnQgJiBDb25jcmV0ZSBNYW51ZmFjdHVyaW5nIl19LDc3NDc4KGUpe2UuZXhwb3J0cz1bIkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpYyJdfSw0ODM1NShlKXtlLmV4cG9ydHM9WyJDaGFkIl19LDI1ODE0MyhlKXtlLmV4cG9ydHM9WyJDaGFpa2luIE1vbmV5IEZsb3cgKDIwKSJdfSw2NzM0ODcoZSl7ZS5leHBvcnRzPVsiQ2hhbmdlIl19LDk2OTQ3MihlKXtlLmV4cG9ydHM9WyJDaGFuZ2UgJSJdfSw2ODEwNDMoZSl7ZS5leHBvcnRzPVsiQ2hhbmdlIGZpbHRlciJdfSwzODI3NTEoZSl7ZS5leHBvcnRzPVsiQ2hhbmdlIGZyb20gT3BlbiJdfSw5MzYwMzQoZSl7CmUuZXhwb3J0cz1bIkNoYW5nZSBmcm9tIE9wZW4gJSJdfSw2NTcxMTQoZSl7ZS5leHBvcnRzPVsiQ2hhbmdlIHtyZXNvbHV0aW9ufSJdfSw3OTA5NDkoZSl7ZS5leHBvcnRzPVsiQ2hhbmdlIHtyZXNvbHV0aW9ufSwgJSJdfSw1OTU0NDEoZSl7ZS5leHBvcnRzPVsiQ2hhcnRlciAmIFByaXZhdGUgQWlyIFNlcnZpY2VzIl19LDgxODQ5NihlKXtlLmV4cG9ydHM9WyJDaGFydGVyIEJ1cyBTZXJ2aWNlcyJdfSwyNDAxOTEoZSl7ZS5leHBvcnRzPVsiQ2hlbWljYWxzOiBBZ3JpY3VsdHVyYWwiXX0sMjMzNzIoZSl7ZS5leHBvcnRzPVsiQ2hlbWljYWxzOiBNYWpvciBEaXZlcnNpZmllZCJdfSw5NjMwNTUoZSl7ZS5leHBvcnRzPVsiQ2hlbWljYWxzOiBTcGVjaWFsdHkiXX0sMjA1ODM0KGUpe2UuZXhwb3J0cz1bIkNoZyJdfSwyMTA4MTUoZSl7ZS5leHBvcnRzPVsiQ2hnICUiXX0sNjMzNDU0KGUpe2UuZXhwb3J0cz1bIkNoZyBmcm9tIE9wZW4iXX0sODUzODk1KGUpe2UuZXhwb3J0cz1bIkNoZyBmcm9tIE9wZW4gJSJdfSw0NDE1MjYoZSl7ZS5leHBvcnRzPVsiQ2hpbGQgQ2FyZSAmIEZhbWlseSBTZXJ2aWNlcyJdfSw3Mzg0MzIoZSl7ZS5leHBvcnRzPVsiQ2hpbGRyZW4gJiBJbmZhbnRzIENsb3RoaW5nIl19LDc4Njg1OChlKXtlLmV4cG9ydHM9WyJDaGlsZHJlbiAmIEluZmFudHMgQ2xvdGhpbmcgUmV0YWlsZXJzIl19LDkwNDMzOChlKXtlLmV4cG9ydHM9WyJDaGlsZSJdfSwzOTA2NTIoZSl7ZS5leHBvcnRzPVsiQ2huZyA0VyJdfSwyMzY3OTgoZSl7ZS5leHBvcnRzPVsiQ2huZyA1MlciXX0sNTI3NDI4KGUpe2UuZXhwb3J0cz1bIkNobmcgMVciXX0sMTQ4OTA5KGUpe2UuZXhwb3J0cz1bIkNob2NvbGF0ZSAmIENvbmZlY3Rpb25lcnkiXX0sMzk0MDM5KGUpe2UuZXhwb3J0cz1bIkNob3NlbiBtYXJrZXRzIGNvdW50Il19LDk1NjQ2NChlKXtlLmV4cG9ydHM9WyJDaHJpc3RtYXMgSXNsYW5kIl19LDU3NDg5NShlKXtlLmV4cG9ydHM9WyJDaXZpbCBFbmdpbmVlcnMgJiBBcmNoaXRlY3RzIl19LDI0MzY4NyhlKXtlLmV4cG9ydHM9WyJDaWdhcnMgJiBDaWdhcmV0dGUgTWFudWZhY3R1cmluZyJdfSwxNjUxOTgoZSl7ZS5leHBvcnRzPVsiQ2xlYW5pbmcgU2VydmljZXMiXX0sMjA0NDM3KGUpe2UuZXhwb3J0cz1bIkNsZWFyaW5nLCBTZXR0bGVtZW50ICYgQ3VzdG9kaWFsIFNlcnZpY2UiXX0sODIwODY2KGUpe2UuZXhwb3J0cz1bIkNsb3NlIl19LDY4OTg0KGUpe2UuZXhwb3J0cz1bIkNsb3NlZCBFbmQgRnVuZHMiXX0sNjM2MDAxKGUpe2UuZXhwb3J0cz1bIkNsb3NlZC1lbmQgZnVuZCJdfSw2OTc1MzQoZSl7ZS5leHBvcnRzPVsiQ2xvdWQgQ29tcHV0aW5nIFNlcnZpY2VzIl19LDM1OTUzMChlKXtlLmV4cG9ydHM9WyJDcnVpc2UgTGluZXMiXX0sMjg0MDA0KGUpe2UuZXhwb3J0cz1bIkNyeXB0b2N1cnJlbmNpZXMiXX0sNTA5OTgyKGUpe2UuZXhwb3J0cz1bIkNyYWZ0ICYgTWljcm8gQnJld2VycyJdfSw0NzQ3MjgoZSl7ZS5leHBvcnRzPVsiQ3JlZGl0IFVuaW9ucyJdfSw0MDc0KGUpe2UuZXhwb3J0cz1bIkNyb2F0aWEiXX0sOTU0ODM5KGUpe2UuZXhwb3J0cz1bIkNyb3NzZXMiXX0sNTYzNjY2KGUpe2UuZXhwb3J0cz1bIkNyb3NzZXMgRG93biJdfSwxNjc2MTMoZSl7ZS5leHBvcnRzPVsiQ3Jvc3NlcyBVcCJdfSw5NjU4ODMoZSl7ZS5leHBvcnRzPVsiQ3V0bGVyeSAmIEZsYXR3YXJlIl19LDc2OTE0MChlKXtlLmV4cG9ydHM9WyJDdWJhIl19LDU4OTQxNyhlKXtlLmV4cG9ydHM9WyJDdXJhY2FvIl19LDk0NTE3MShlKXtlLmV4cG9ydHM9WyJDdXJhw6dhbyJdfSwzODczNTIoZSl7ZS5leHBvcnRzPVsiQ3VycmVuY3kgb2YgdGhlIGxvY2FsIG1hcmtldCJdfSw0NDkwNjAoZSl7ZS5leHBvcnRzPVsiQ3VycmVudCB0cmFkaW5nIGRheSJdfSw4ODQxMjMoZSl7ZS5leHBvcnRzPVsiQ3VycmVudCBBc3NldHMiXX0sMjQzNTA3KGUpe2UuZXhwb3J0cz1bIkN1cnJlbnQgUmF0aW8iXX0sNDYwMTM5KGUpe2UuZXhwb3J0cz1bIkN1cnJlbnQgUmF0aW8gKE1SUSkiXX0sNDk5MjY1KGUpe2UuZXhwb3J0cz1bIkN1cnJlbnQgcmF0aW8gKHtwZXJpb2R9KSJdfSw2MzQ3MzcoZSl7ZS5leHBvcnRzPVsiQ3lwcnVzIl19LDEyOTgwOChlKXtlLmV4cG9ydHM9WyJDemVjaCBSZXB1YmxpYyJdfSwyNjE5OTAoZSl7ZS5leHBvcnRzPVsiQ3plY2hpYSJdfSw0OTg3NjIoZSl7ZS5leHBvcnRzPVsiQ8O0dGUgZCdJdm9pcmUiXX0sNzk5NTUzKGUpe2UuZXhwb3J0cz1bIkFPIl19LDE1MDQ3NChlKXtlLmV4cG9ydHM9WyJBRFIiXX0sODAzMDI0KGUpe2UuZXhwb3J0cz1bIkFEWCJdfSw5NjAwNjkoZSl7ZS5leHBvcnRzPVsiQVRSIl19LDQxOTUzKGUpe2UuZXhwb3J0cz1bIkFtdXNlbWVudCBQYXJrcyBhbmQgWm9vcyJdfSw3ODEwODgoZSl7ZS5leHBvcnRzPVsiQW1idWxhbmNlICYgRW1lcmdlbmN5IFNlcnZpY2VzIl19LDEwNDU1MyhlKXtlLmV4cG9ydHM9WyJBbWVyaWNhbiBTYW1vYSJdfSw5OTE0NjQoZSl7ZS5leHBvcnRzPVsiQW1lcmljYXMiXX0sMjk3NTcwKGUpe2UuZXhwb3J0cz1bIkFudGFyY3RpY2EiXX0sNzQ1ODkoZSl7ZS5leHBvcnRzPVsiQW50aWd1YSBhbmQgQmFyYnVkYSJdfSwzODAzNTAoZSl7ZS5leHBvcnRzPVsiQW50aXF1ZSBEZWFsZXJzIl19LDkyMTg0NyhlKXtlLmV4cG9ydHM9WyJBbnkiXX0sOTY1MjEzKGUpe2UuZXhwb3J0cz1bIkFuZG9ycmEiXX0sNzc3MjAoZSl7ZS5leHBvcnRzPVsiQW5nb2xhIl19LDg1NDkwMihlKXtlLmV4cG9ydHM9WyJBbmd1aWxsYSJdfSw0NzM4MzQoZSl7ZS5leHBvcnRzPVsiQW5pbWFsIEJyZWVkaW5nIl19LDY2MDY4NChlKXtlLmV4cG9ydHM9WyJBbmltYWwgRmVlZCJdfSw1NDM4NjYoZSl7ZS5leHBvcnRzPVsiQW5pbWFsIFNsYXVnaHRlcmluZyAmIFByb2Nlc3NpbmciXX0sODMxNzgxKGUpe2UuZXhwb3J0cz1bIkFubnVhbCBSZXYiXX0sMTU2OTY5KGUpe2UuZXhwb3J0cz1bIkFiYW5kb25lZCBCYWJ5IEJlYXJpc2giXX0sNzY0MTM2KGUpe2UuZXhwb3J0cz1bIkFiYW5kb25lZCBCYWJ5IEJ1bGxpc2giXX0sOTg2NTA1KGUpe2UuZXhwb3J0cz1bIkFib3ZlIl19LDY4NzQ3OShlKXsKZS5leHBvcnRzPVsiQWJvdmUgb3IgRXF1YWwiXX0sMjM5MDI3KGUpe2UuZXhwb3J0cz1bIkFjY2Vzc29yaWVzIl19LDYwMzI5MihlKXtlLmV4cG9ydHM9WyJBY2NvdW50aW5nICYgVGF4IFByZXBhcmF0aW9uIl19LDE4NzA3NShlKXtlLmV4cG9ydHM9WyJBZHVsdCBFbnRlcnRhaW5tZW50IFByb2R1Y3Rpb24gJiBCcm9hZGNhc3RpbmciXX0sMjkwNzg0KGUpe2UuZXhwb3J0cz1bIkFkdWx0IFByb2R1Y3RzIFJldGFpbGVycyJdfSw3MDk5MyhlKXtlLmV4cG9ydHM9WyJBZHZhbmNlZCBFbGVjdHJvbmljIEVxdWlwbWVudCJdfSw2Mjk2NDAoZSl7ZS5leHBvcnRzPVsiQWR2YW5jZWQgTWVkaWNhbCBFcXVpcG1lbnQgJiBUZWNobm9sb2d5Il19LDI5NDAzMyhlKXtlLmV4cG9ydHM9WyJBZHZhbmNlZCBNZWRpY2FsIEVxdWlwbWVudCBXaG9sZXNhbGUiXX0sNTgwMzQwKGUpe2UuZXhwb3J0cz1bIkFkdmFuY2VkIFBvbHltZXIiXX0sMzc1ODc2KGUpe2UuZXhwb3J0cz1bIkFkdmVudHVyZSBTcG9ydHMgRmFjaWxpdGllcyAmIFNraSBSZXNvcnRzIl19LDI2ODM2OShlKXtlLmV4cG9ydHM9WyJBZHZlcnRpc2luZyAmIE1hcmtldGluZyJdfSwxMjY4NjkoZSl7ZS5leHBvcnRzPVsiQWR2ZXJ0aXNpbmcgQWdlbmN5Il19LDI4NTY3NyhlKXtlLmV4cG9ydHM9WyJBZHZlcnRpc2luZy9NYXJrZXRpbmcgU2VydmljZXMiXX0sMjM5MDc3KGUpe2UuZXhwb3J0cz1bIkFkZCBub3RlIGZvciB7c3ltYm9sfSJdfSw4MTU3MTIoZSl7ZS5leHBvcnRzPVsiQWRkIGFsbCBzZWxlY3RlZCB0byB3YXRjaGxpc3QiXX0sNzIwNTQ2KGUpe2UuZXhwb3J0cz1bIkFkZCBhbGwgc2VsZWN0ZWQgdG8gY29tcGFyZSJdfSw5OTUyOShlKXtlLmV4cG9ydHM9WyJBZGQgdG8gZmF2b3JpdGVzIl19LDU2MDQ3MChlKXtlLmV4cG9ydHM9WyJBZGQge3N5bWJvbH0gdG8gY29tcGFyZSJdfSwyMjQwNTYoZSl7ZS5leHBvcnRzPVsiQWRkIHtzeW1ib2xOYW1lfSB0byB3YXRjaGxpc3QiXX0sOTE4MzEwKGUpe2UuZXhwb3J0cz1bIkFkaGVzaXZlIl19LDEwMzQ4NihlKXtlLmV4cG9ydHM9WyJBZGp1c3QgZmlsdGVycyJdfSwxMzA5NjkoZSl7ZS5leHBvcnRzPVsiQWVyb3NwYWNlICYgRGVmZW5zZSJdfSw1NzI5NjIoZSl7ZS5leHBvcnRzPVsiQWZ0ZXIgQ2xvc2UiXX0sNTMyMDI4KGUpe2UuZXhwb3J0cz1bIkFmdGVyIGhvdXJzIGdhaW5lcnMiXX0sOTkzMTAxKGUpe2UuZXhwb3J0cz1bIkFmZ2hhbmlzdGFuIl19LDY1MDM0NChlKXtlLmV4cG9ydHM9WyJBZnJpY2EiXX0sNDgyMTAxKGUpe2UuZXhwb3J0cz1bIkFncmljdWx0dXJhbCBNYWNoaW5lcnkiXX0sNjg1MTUwKGUpe2UuZXhwb3J0cz1bIkFncmljdWx0dXJhbCBCaW90ZWNobm9sb2d5Il19LDM5MTY3MihlKXtlLmV4cG9ydHM9WyJBZ3JpY3VsdHVyYWwgQ2hlbWljYWxzIl19LDM2Mjg3OChlKXtlLmV4cG9ydHM9WyJBZ3JpY3VsdHVyYWwgQ2hlbWljYWxzIFdob2xlc2FsZSJdfSw2MDI2ODAoZSl7ZS5leHBvcnRzPVsiQWdyaWN1bHR1cmFsIENvbW1vZGl0aWVzL01pbGxpbmciXX0sODg3MzkyKGUpe2UuZXhwb3J0cz1bIkFncmljdWx0dXJlIFN1cHBvcnQgU2VydmljZXMiXX0sMjA4OTY0KGUpe2UuZXhwb3J0cz1bIkFpciAmIEdhcyBDb21wcmVzc29ycyJdfSw3MDQ4NDYoZSl7ZS5leHBvcnRzPVsiQWlyIEZyZWlnaHQiXX0sODA3MDQyKGUpe2UuZXhwb3J0cz1bIkFpciBGcmVpZ2h0ICYgQ291cmllciBTZXJ2aWNlcyJdfSw5NjQ4MTAoZSl7ZS5leHBvcnRzPVsiQWlyIEZyZWlnaHQgJiBMb2dpc3RpY3MiXX0sNzkwNDkzKGUpe2UuZXhwb3J0cz1bIkFpciBGcmVpZ2h0L0NvdXJpZXJzIl19LDU2ODMzNihlKXtlLmV4cG9ydHM9WyJBaXIgRnJlaWdodC9EZWxpdmVyeSBTZXJ2aWNlcyJdfSw2NDgwOTEoZSl7ZS5leHBvcnRzPVsiQWlyY3JhZnQgRXF1aXBtZW50IFdob2xlc2FsZSJdfSw3MDIxNzEoZSl7ZS5leHBvcnRzPVsiQWlyY3JhZnQgUGFydHMgTWFudWZhY3R1cmluZyJdfSw2MDgyNzYoZSl7ZS5leHBvcnRzPVsiQWlybGluZSBDYXRlcmluZyBTZXJ2aWNlcyJdfSwzNTA0MDMoZSl7ZS5leHBvcnRzPVsiQWlybGluZXMiXX0sNzg2NDcwKGUpe2UuZXhwb3J0cz1bIkFpcnBvcnQgT3BlcmF0b3JzIl19LDMwMjMwMyhlKXtlLmV4cG9ydHM9WyJBaXJwb3J0IFNlcnZpY2VzIl19LDcxNDUwMChlKXtlLmV4cG9ydHM9WyJBbHRlcm5hdGl2ZSBNZWRpY2luZSJdfSwyMTAwODEoZSl7ZS5leHBvcnRzPVsiQWx0ZXJuYXRpdmUgTWVkaWNpbmUgRmFjaWxpdGllcyJdfSwxOTU3NDUoZSl7ZS5leHBvcnRzPVsiQWx0ZXJuYXRpdmUgUG93ZXIgR2VuZXJhdGlvbiJdfSw2Njc5OTMoZSl7ZS5leHBvcnRzPVsiQWx1bWludW0iXX0sMjA3NzcxKGUpe2UuZXhwb3J0cz1bIkFsdW1pbnVtIFJvbGxpbmciXX0sMjgwMDI1KGUpe2UuZXhwb3J0cz1bIkFsYmFuaWEiXX0sMjk2MTgxKGUpe2UuZXhwb3J0cz1bIkFsZ2VyaWEiXX0sMjMzNjkwKGUpe2UuZXhwb3J0cz1bIkFsbCJdfSw5NjIwMTYoZSl7ZS5leHBvcnRzPVsiQWxsIE90aGVyIEZvb2QgTWFudWZhY3R1cmluZyJdfSw5MzA1NzgoZSl7ZS5leHBvcnRzPVsiQWxsIFRpbWUgSGlnaCJdfSwyNTM0NzEoZSl7ZS5leHBvcnRzPVsiQWxsIFRpbWUgTG93Il19LDgxNTQoZSl7ZS5leHBvcnRzPVsiQWxsIFRpbWUgUGVyZiJdfSw0ODYzMDIoZSl7ZS5leHBvcnRzPVsiQWxsIFRpbWUgUGVyZm9ybWFuY2UiXX0sMzIyOTg2KGUpe2UuZXhwb3J0cz1bIkFsbCBhYm91dCBuZXcgc2NyZWVuZXIiXX0sMjQxMzE3KGUpe2UuZXhwb3J0cz1bIkFsbC10aW1lIGhpZ2giXX0sNjI1NDg4KGUpe2UuZXhwb3J0cz1bIkFsbC10aW1lIGxvdyJdfSw1MjY3MzQoZSl7ZS5leHBvcnRzPVsiQXBwYXJlbC9Gb290d2VhciJdfSw5MDI5ODQoZSl7ZS5leHBvcnRzPVsiQXBwYXJlbC9Gb290d2VhciBSZXRhaWwiXX0sMjQxNzg3KGUpe2UuZXhwb3J0cz1bIkFwcGFyZWwgJiBBY2Nlc3NvcmllcyJdfSwzOTU3MjUoZSl7ZS5leHBvcnRzPVsiQXBwYXJlbCAmIEFjY2Vzc29yaWVzIFJldGFpbGVycyJdfSw5MjgwOShlKXtlLmV4cG9ydHM9WyJBcHBhcmVsIFdob2xlc2FsZSJdfSwzMDI0NDcoZSl7CmUuZXhwb3J0cz1bIkFwcGxpYW5jZSAmIEhvdXNld2FyZSBXaG9sZXNhbGUiXX0sMTE4NDAoZSl7ZS5leHBvcnRzPVsiQXBwbGlhbmNlcywgVG9vbHMgJiBIb3VzZXdhcmVzIl19LDg0MjE1NChlKXtlLmV4cG9ydHM9WyJBcHBsaWNhdGlvbiBTb2Z0d2FyZSJdfSwxNTc1MzgoZSl7ZS5leHBvcnRzPVsiQXBwbGllZCBmaWx0ZXJzIGNvdW50Il19LDUyNjc4NShlKXtlLmV4cG9ydHM9WyJBcHIiXX0sNTgxMjYwKGUpe2UuZXhwb3J0cz1bIkFxdWFjdWx0dXJlIl19LDExNDc1NihlKXtlLmV4cG9ydHM9WyJBcnViYSJdfSw4NTc1ODcoZSl7ZS5leHBvcnRzPVsiQXJnZW50aW5hIl19LDc3OTk1MihlKXtlLmV4cG9ydHM9WyJBcm1lbmlhIl19LDg4NjQ2NShlKXtlLmV4cG9ydHM9WyJBcm1zICYgQW1tdW5pdGlvbnMgTWFudWZhY3R1cmluZyJdfSw3NjU3NjUoZSl7ZS5leHBvcnRzPVsiQXJvb24gRG93biJdfSwyMTM3MDMoZSl7ZS5leHBvcnRzPVsiQXJvb24gRG93biAoMTQpIl19LDE1ODM5NihlKXtlLmV4cG9ydHM9WyJBcm9vbiBVcCJdfSw0NzM4NShlKXtlLmV4cG9ydHM9WyJBcm9vbiBVcCAoMTQpIl19LDY4OTE4MihlKXtlLmV4cG9ydHM9WyJBc2lhIl19LDc2NDE3MShlKXtlLmV4cG9ydHM9WyJBc2lhIC8gUGFjaWZpYyJdfSw2NzI3MTAoZSl7ZS5leHBvcnRzPVsiQXNrIl19LDc0ODI5MChlKXtlLmV4cG9ydHM9WyJBc3NldCB0dXJub3ZlciAoe3BlcmlvZH0pIl19LDY2Mzg2MChlKXtlLmV4cG9ydHM9WyJBc3NldHMiXX0sNDY1MjIyKGUpe2UuZXhwb3J0cz1bIkF1dG9tYXRpYyBWZW5kaW5nIE1hY2hpbmVzIl19LDI5ODY2MihlKXtlLmV4cG9ydHM9WyJBdXRvbW9iaWxlcyAmIE11bHRpIFV0aWxpdHkgVmVoaWNsZXMiXX0sMzY5NjQ2KGUpe2UuZXhwb3J0cz1bIkF1dG9tb3RpdmUgQWNjZXNzb3JpZXMiXX0sNTQzMTU3KGUpe2UuZXhwb3J0cz1bIkF1dG9tb3RpdmUgQWZ0ZXJtYXJrZXQiXX0sMTc1NzQ0KGUpe2UuZXhwb3J0cz1bIkF1dG9tb3RpdmUgQmF0dGVyaWVzIl19LDM4NTU5MShlKXtlLmV4cG9ydHM9WyJBdXRvbW90aXZlIEJvZHkgUGFydHMiXX0sOTU3MDg5KGUpe2UuZXhwb3J0cz1bIkF1dG9tb3RpdmUgUGFydHMgJiBBY2Nlc3NvcmllcyBSZXRhaWxlcnMiXX0sMTU3MjU0KGUpe2UuZXhwb3J0cz1bIkF1dG9tb3RpdmUgU3lzdGVtcyJdfSwxMjU2NjIoZSl7ZS5leHBvcnRzPVsiQXV0byAmIFRydWNrIE1hbnVmYWN0dXJlcnMiXX0sODc1NTc5KGUpe2UuZXhwb3J0cz1bIkF1dG8gJiBUcnVjayBQYXJ0cyBXaG9sZXNhbGUiXX0sODc4NzIzKGUpe2UuZXhwb3J0cz1bIkF1dG8gJiBUcnVjayBXaG9sZXNhbGUiXX0sOTU4MjM1KGUpe2UuZXhwb3J0cz1bIkF1dG8gQ2xlYW5pbmcgUHJvZHVjdHMiXX0sMzcwMTIoZSl7ZS5leHBvcnRzPVsiQXV0byBQYXJ0czogT0VNIl19LDg5ODk4NyhlKXtlLmV4cG9ydHM9WyJBdXRvIFJlZnJlc2giXX0sOTk2OTcyKGUpe2UuZXhwb3J0cz1bIkF1dG8gVmVoaWNsZXMsIFBhcnRzICYgU2VydmljZSBSZXRhaWxlcnMiXX0sNjYxOTgzKGUpe2UuZXhwb3J0cz1bIkF1dG8sIFRydWNrICYgTW90b3JjeWNsZSBQYXJ0cyJdfSw5Mzc2MihlKXtlLmV4cG9ydHM9WyJBdWciXX0sMjc5MjMzKGUpe2UuZXhwb3J0cz1bIkF1c3RyYWxpYSJdfSwyMzgyNzgoZSl7ZS5leHBvcnRzPVsiQXVzdHJpYSJdfSw4MTMwNzcoZSl7ZS5leHBvcnRzPVsiQXZhaWwgQ29pbnMiXX0sODM1OTYxKGUpe2UuZXhwb3J0cz1bIkF2YWlsYWJsZSBDb2lucyJdfSwzMjMzOTIoZSl7ZS5leHBvcnRzPVsiQXZlcmFnZSBEYXkgUmFuZ2UgKDE0KSJdfSw1NzgxOTgoZSl7ZS5leHBvcnRzPVsiQXZlcmFnZSBEaXJlY3Rpb25hbCBJbmRleCAoMTQpIl19LDMxNTQ2MihlKXtlLmV4cG9ydHM9WyJBdmVyYWdlIFRydWUgUmFuZ2UgKDE0KSJdfSwyOTc5MzAoZSl7ZS5leHBvcnRzPVsiQXZlcmFnZSBWb2x1bWUgKDEwIGRheSkiXX0sNTY2NDM0KGUpe2UuZXhwb3J0cz1bIkF2ZXJhZ2UgVm9sdW1lICgzMCBkYXkpIl19LDk3NzA2MihlKXtlLmV4cG9ydHM9WyJBdmVyYWdlIFZvbHVtZSAoNjAgZGF5KSJdfSw1NzI1ODQoZSl7ZS5leHBvcnRzPVsiQXZlcmFnZSBWb2x1bWUgKDkwIGRheSkiXX0sMjUyNzc4KGUpe2UuZXhwb3J0cz1bIkF2ZyBWb2wgKDEwKSJdfSw0OTU2MzIoZSl7ZS5leHBvcnRzPVsiQXZnIFZvbCAoMzApIl19LDI2OTE4MShlKXtlLmV4cG9ydHM9WyJBdmcgVm9sICg2MCkiXX0sNzk3NjA0KGUpe2UuZXhwb3J0cz1bIkF2ZyBWb2wgKDkwKSJdfSwzNDQ1NTIoZSl7ZS5leHBvcnRzPVsiQXdlc29tZSBPc2NpbGxhdG9yIl19LDQ2ODE3KGUpe2UuZXhwb3J0cz1bIkF6ZXJiYWlqYW4iXX0sNDMwNTMwKGUpe2UuZXhwb3J0cz1bIkJCIExvdyJdfSw5MTM5OTIoZSl7ZS5leHBvcnRzPVsiQkIgVXAiXX0sOTQ5ODI1KGUpe2UuZXhwb3J0cz1bIkJCUG93ZXIiXX0sNDI1Mzc4KGUpe2UuZXhwb3J0cz1bIkJvdHN3YW5hIl19LDE5NjcwMChlKXtlLmV4cG9ydHM9WyJCb3R0bGVkIFdhdGVyICYgSWNlIl19LDczMDc2MyhlKXtlLmV4cG9ydHM9WyJCb3V2ZXQgSXNsYW5kIl19LDkzMTMwNChlKXtlLmV4cG9ydHM9WyJCb2xpdmlhIl19LDE5NjY5MShlKXtlLmV4cG9ydHM9WyJCb2xsaW5nZXIgTG93ZXIgQmFuZCAoMjApIl19LDk5NTYzMShlKXtlLmV4cG9ydHM9WyJCb2xsaW5nZXIgVXBwZXIgQmFuZCAoMjApIl19LDU1NzIzNShlKXtlLmV4cG9ydHM9WyJCb25haXJlLCBTaW50IEV1c3RhdGl1cyBhbmQgU2FiYSJdfSw5NzYzNDYoZSl7ZS5leHBvcnRzPVsiQm9vayAmIE1hZ2F6aW5lIFJldGFpbGVycyJdfSwyNDUzMTcoZSl7ZS5leHBvcnRzPVsiQm9vayB2YWx1ZSBwZXIgc2hhcmUgKHtwZXJpb2R9KSJdfSw0NDYyNDcoZSl7ZS5leHBvcnRzPVsiQm9vayBQcmludGluZyBTZXJ2aWNlcyJdfSw3NTAxODIoZSl7ZS5leHBvcnRzPVsiQm9vayBQdWJsaXNoaW5nIl19LDk3MDY5MShlKXtlLmV4cG9ydHM9WyJCb3NuaWEgYW5kIEhlcnplZ292aW5hIl19LDUzNTkwOChlKXtlLmV4cG9ydHM9WyJCYXRocm9vbSBGaXh0dXJlcyJdfSw2ODg1NTIoZSl7CmUuZXhwb3J0cz1bIkJhdHRlcmllcyAmIFVuaW50ZXJydXB0aWJsZSBQb3dlciBzdXBwbGllcyJdfSw0OTgyODgoZSl7ZS5leHBvcnRzPVsiQmF1eGl0ZSBNaW5pbmciXX0sNTA4NTQ5KGUpe2UuZXhwb3J0cz1bIkJhYnkgRm9vZCJdfSwzMzUyNTkoZSl7ZS5leHBvcnRzPVsiQmFoYW1hcyJdfSw1Nzg2NjUoZSl7ZS5leHBvcnRzPVsiQmFocmFpbiJdfSw5NDQxNTUoZSl7ZS5leHBvcnRzPVsiQmFsYW5jZSBTaGVldCJdfSw2ODg5NjkoZSl7ZS5leHBvcnRzPVsiQmFsbCAmIFJvbGxlciBCZWFyaW5ncyJdfSw0NTIwMTUoZSl7ZS5leHBvcnRzPVsiQmFuZ2xhZGVzaCJdfSw0OTc4MzcoZSl7ZS5leHBvcnRzPVsiQmFua3MiXX0sODI0NTk1KGUpe2UuZXhwb3J0cz1bIkJhbnF1ZXQgSGFsbHMgJiBDYXRlcmluZyJdfSw4MjkzODcoZSl7ZS5leHBvcnRzPVsiQmFyYmFkb3MiXX0sNzE2MTEoZSl7ZS5leHBvcnRzPVsiQmFzaWMgRVBTIChGWSkiXX0sMTAzNzkxKGUpe2UuZXhwb3J0cz1bIkJhc2ljIEVQUyAoVFRNKSJdfSw0MDExNjgoZSl7ZS5leHBvcnRzPVsiQmFzaWMgTWF0ZXJpYWxzIl19LDMwMzU3NShlKXtlLmV4cG9ydHM9WyJCZXRhIDVZIl19LDg5NzAwNyhlKXtlLmV4cG9ydHM9WyJCZXRhIC0gMyBZZWFyIl19LDEyODc5MShlKXtlLmV4cG9ydHM9WyJCZXRhIC0gNSBZZWFyIl19LDg2NzA0MChlKXtlLmV4cG9ydHM9WyJCZXRhIDNZIl19LDM2NTY2MChlKXtlLmV4cG9ydHM9WyJCZXR3ZWVuIl19LDc5Mjg2NihlKXtlLmV4cG9ydHM9WyJCZXZlcmFnZXMgKFByb2R1Y3Rpb24vRGlzdHJpYnV0aW9uKSJdfSw2NTc0NzEoZSl7ZS5leHBvcnRzPVsiQmV2ZXJhZ2VzOiBBbGNvaG9saWMiXX0sODkzODg1KGUpe2UuZXhwb3J0cz1bIkJldmVyYWdlczogTm9uLUFsY29ob2xpYyJdfSw0NjI4OTYoZSl7ZS5leHBvcnRzPVsiQmVhcmlzaCBFbmd1bGZpbmciXX0sNDUwOTA3KGUpe2UuZXhwb3J0cz1bIkJlYXJpc2ggSGFyYW1pIl19LDI3MzE0MihlKXtlLmV4cG9ydHM9WyJCZWF1dHkgU3VwcGx5IFNob3AiXX0sNTAxMTYoZSl7ZS5leHBvcnRzPVsiQmVlZiAmIFZlYWwgRmFybWluZyJdfSw5NDk2MzYoZSl7ZS5leHBvcnRzPVsiQmVlciwgV2luZSAmIExpcXVvciBTdG9yZXMiXX0sNzAwNTA4KGUpe2UuZXhwb3J0cz1bIkJlZm9yZSBPcGVuIl19LDUyMzU1MihlKXtlLmV4cG9ydHM9WyJCZWxhcnVzIl19LDgzMzI0KGUpe2UuZXhwb3J0cz1bIkJlbGdpdW0iXX0sNzg3NzAxKGUpe2UuZXhwb3J0cz1bIkJlbGl6ZSJdfSwxNzc1MDYoZSl7ZS5leHBvcnRzPVsiQmVsb3ciXX0sMjA0ODA0KGUpe2UuZXhwb3J0cz1bIkJlbG93IG9yIEVxdWFsIl19LDU4ODg0OChlKXtlLmV4cG9ydHM9WyJCZW5pbiJdfSwzMTQ3MzcoZSl7ZS5leHBvcnRzPVsiQmVybXVkYSJdfSwyODQ0NDIoZSl7ZS5leHBvcnRzPVsiQmh1dGFuIl19LDg5NDczOChlKXtlLmV4cG9ydHM9WyJCaWN5Y2xlIE1hbnVmYWN0dXJpbmciXX0sNDI5NTA4KGUpe2UuZXhwb3J0cz1bIkJpZCJdfSw4Njg4MTAoZSl7ZS5leHBvcnRzPVsiQmlsbGVkIGV2ZXJ5IG1vbnRoLiJdfSw5MTM5NTUoZSl7ZS5leHBvcnRzPVsiQmlsbGVkIGV2ZXJ5IHllYXIuIl19LDUzMjMxNihlKXtlLmV4cG9ydHM9WyJCaW8gTWVkaWNhbCBEZXZpY2VzIl19LDYzNTE1NyhlKXtlLmV4cG9ydHM9WyJCaW8gRGlhZ25vc3RpY3MgJiBUZXN0aW5nIl19LDY0ODI0OShlKXtlLmV4cG9ydHM9WyJCaW8gVGhlcmFwZXV0aWMgRHJ1Z3MiXX0sNzk2MjYoZSl7ZS5leHBvcnRzPVsiQmlvZGllc2VsIl19LDU1NzIzOShlKXtlLmV4cG9ydHM9WyJCaW9tYXNzICYgQmlvZ2FzIEZ1ZWxzIl19LDYzNzQwOShlKXtlLmV4cG9ydHM9WyJCaW9tZXRyaWMgUHJvZHVjdHMiXX0sMzQ1NzUzKGUpe2UuZXhwb3J0cz1bIkJpb3BoYXJtYWNldXRpY2FscyJdfSwxNzk0MTMoZSl7ZS5leHBvcnRzPVsiQmlvdGVjaG5vbG9neSJdfSw4OTIxNDMoZSl7ZS5leHBvcnRzPVsiQmlvdGVjaG5vbG9neSAmIE1lZGljYWwgUmVzZWFyY2giXX0sOTA0NzU3KGUpe2UuZXhwb3J0cz1bIkJpcnRoIENvbnRyb2wgUHJvZHVjdHMiXX0sMzkxOTA2KGUpe2UuZXhwb3J0cz1bIkJydW5laSJdfSw4MjEzOTkoZSl7ZS5leHBvcnRzPVsiQnJhbmRpbmcgJiBOYW1pbmciXX0sNjEyOTY3KGUpe2UuZXhwb3J0cz1bIkJyYXppbCJdfSw3ODkxODAoZSl7ZS5leHBvcnRzPVsiQnJlYWQgJiBCYWtlcnkgUHJvZHVjdCBNYW51ZmFjdHVyaW5nIl19LDI0MzA0MihlKXtlLmV4cG9ydHM9WyJCcmVha2Zhc3QgQ2VyZWFsIE1hbnVmYWN0dXJpbmciXX0sNDgwNDEzKGUpe2UuZXhwb3J0cz1bIkJyZXdlcnMiXX0sNzQ0MjQ2KGUpe2UuZXhwb3J0cz1bIkJyaXRpc2ggSW5kaWFuIE9jZWFuIFRlcnJpdG9yeSJdfSw2NTMzNDAoZSl7ZS5leHBvcnRzPVsiQnJpdGlzaCBWaXJnaW4gSXNsYW5kcyJdfSw4MTg2MTYoZSl7ZS5leHBvcnRzPVsiQnJvYWRjYXN0aW5nIl19LDk1MTk2MyhlKXtlLmV4cG9ydHM9WyJCcm9hZGNhc3RpbmcgRXF1aXBtZW50Il19LDYyODQ4MShlKXtlLmV4cG9ydHM9WyJCcm9rZXJhZ2UgU2VydmljZXMiXX0sNjU1MDc3KGUpe2UuZXhwb3J0cz1bIkJyb29tcywgQnJ1c2hlcyAmIER1c3RwYW5zIl19LDE2MTcxNyhlKXtlLmV4cG9ydHM9WyJCdWlsZGVyIE1lcmNoYW50cyJdfSwzODY3MTkoZSl7ZS5leHBvcnRzPVsiQnVpbGRpbmcgQ29udHJhY3RvcnMiXX0sMjU3MjM0KGUpe2UuZXhwb3J0cz1bIkJ1aWxkaW5nIFByb2R1Y3RzIl19LDcxNDAzMShlKXtlLmV4cG9ydHM9WyJCdWxnYXJpYSJdfSwzMzk1MjcoZSl7ZS5leHBvcnRzPVsiQnVsbGlzaCBFbmd1bGZpbmciXX0sNDYzODk2KGUpe2UuZXhwb3J0cz1bIkJ1bGxpc2ggSGFyYW1pIl19LDE5ODI5NyhlKXtlLmV4cG9ydHM9WyJCdXJraW5hIEZhc28iXX0sNzU4MjIoZSl7ZS5leHBvcnRzPVsiQnVydW5kaSJdfSwzNzI2NDcoZSl7ZS5leHBvcnRzPVsiQnVzaW5lc3MgU2VydmljZXMiXX0sOTczNShlKXtlLmV4cG9ydHM9WyJCdXNpbmVzcyBTdXBwb3J0IFNlcnZpY2VzIl19LDg3MDI5OShlKXtlLmV4cG9ydHM9WyJCdXNpbmVzcyBTdXBwb3J0IFN1cHBsaWVzIl19LDc4MzMxOChlKXsKZS5leHBvcnRzPVsiR292ZXJubWVudCJdfSw1NjUyOTQoZSl7ZS5leHBvcnRzPVsiR29sZCJdfSw2ODM1KGUpe2UuZXhwb3J0cz1bIkdvbGQgTWluaW5nIl19LDY5ODMyNShlKXtlLmV4cG9ydHM9WyJHb2xmIENvdXJzZXMiXX0sNzczOTI2KGUpe2UuZXhwb3J0cz1bIkdvb2R3aWxsIl19LDM2NzY5MChlKXtlLmV4cG9ydHM9WyJHYWJvbiJdfSw3MDg3ODUoZSl7ZS5leHBvcnRzPVsiR2FtYmlhIl19LDIyMDE1NihlKXtlLmV4cG9ydHM9WyJHYW1ibGluZyAmIEdhbWluZyBNYWNoaW5lIE1hbnVmYWN0dXJlcnMiXX0sNTg0ODQxKGUpe2UuZXhwb3J0cz1bIkdhbWVzLCBUb3lzICYgQ2hpbGRyZW4gVmVoaWNsZXMiXX0sNDg1OTM1KGUpe2UuZXhwb3J0cz1bIkdhbWluZyBNYWNoaW5lIE9wZXJhdG9ycyJdfSw5MzAwNjkoZSl7ZS5leHBvcnRzPVsiR2FwICUiXX0sMjM3OTk2KGUpe2UuZXhwb3J0cz1bIkdhcyBEaXN0cmlidXRvcnMiXX0sNTI1MTExKGUpe2UuZXhwb3J0cz1bIkdhcyBEcmlsbGluZyAtIE9uc2hvcmUiXX0sNjY3MzE2KGUpe2UuZXhwb3J0cz1bIkdhc29saW5lIHN0YXRpb25zIl19LDU2MzUzMChlKXtlLmV4cG9ydHM9WyJHZXQgcmVhZHkgdG8gc3dpdGNoIHRvIHRoZSBuZXcgU3RvY2sgU2NyZWVuZXIiXX0sOTEwODIxKGUpe2UuZXhwb3J0cz1bIkdlbmVyYWwiXX0sODU1MTc3KGUpe2UuZXhwb3J0cz1bIkdlbmVyYWwgRWR1Y2F0aW9uIFNlcnZpY2VzIl19LDI0MTk5NShlKXtlLmV4cG9ydHM9WyJHZW5lcmFsIEdvdmVybm1lbnQiXX0sMzQ2MTQ2KGUpe2UuZXhwb3J0cz1bIkdlbmVyaWMgUGhhcm1hY2V1dGljYWxzIl19LDgyNDEyMyhlKXtlLmV4cG9ydHM9WyJHZW9waHlzaWNhbCBTdXJ2ZXlpbmcgJiBNYXBwaW5nIFNlcnZpY2VzIl19LDc5NTk1MShlKXtlLmV4cG9ydHM9WyJHZW9yZ2lhIl19LDQ2NjY5OChlKXtlLmV4cG9ydHM9WyJHZXJtYW55Il19LDQ5ODY3OShlKXtlLmV4cG9ydHM9WyJHaGFuYSJdfSw3NzEwMTcoZSl7ZS5leHBvcnRzPVsiR2licmFsdGFyIl19LDE1MzI0MShlKXtlLmV4cG9ydHM9WyJHaWZ0LCBOb3ZlbHR5ICYgU291dmVuaXIgU3RvcmVzIl19LDIzNjIyMShlKXtlLmV4cG9ydHM9WyJHbGFzcyBDb250YWluZXJzICYgUGFja2FnaW5nIl19LDYwOTQ2MShlKXtlLmV4cG9ydHM9WyJHbGFzc2VzLCBTcGVjdGFjbGVzICYgQ29udGFjdCBsZW5zZXMiXX0sNjA1Njc0KGUpe2UuZXhwb3J0cz1bIkdsb2JhbCBjdXJyZW5jeSJdfSw3NTAyNzcoZSl7ZS5leHBvcnRzPVsiR3JhaW4gKENyb3ApIFByb2R1Y3Rpb24iXX0sMTIzNzM2KGUpe2UuZXhwb3J0cz1bIkdyYXZlc3RvbmUgRG9qaSJdfSwzMTgzOTkoZSl7ZS5leHBvcnRzPVsiR3JlZW5sYW5kIl19LDc5MzI4OShlKXtlLmV4cG9ydHM9WyJHcmVlY2UiXX0sOTMyMDg2KGUpe2UuZXhwb3J0cz1bIkdyZW5hZGEiXX0sMzc4Mzk5KGUpe2UuZXhwb3J0cz1bIkdyb3NzIE1hcmdpbiJdfSw5MDA5NDUoZSl7ZS5leHBvcnRzPVsiR3Jvc3MgTWFyZ2luIChGWSkiXX0sNjYxODkzKGUpe2UuZXhwb3J0cz1bIkdyb3NzIE1hcmdpbiAoVFRNKSJdfSwzNTYxMjUoZSl7ZS5leHBvcnRzPVsiR3Jvc3MgUHJvZml0IChBbm51YWwgWW9ZIEdyb3d0aCkiXX0sODcwMjYyKGUpe2UuZXhwb3J0cz1bIkdyb3NzIFByb2ZpdCAoRlkpIl19LDQyNjY1MihlKXtlLmV4cG9ydHM9WyJHcm9zcyBQcm9maXQgKE1SUSkiXX0sMTkxNTc0KGUpe2UuZXhwb3J0cz1bIkdyb3NzIFByb2ZpdCAoUXVhcnRlcmx5IFFvUSBHcm93dGgpIl19LDEwNzkwNChlKXtlLmV4cG9ydHM9WyJHcm9zcyBQcm9maXQgKFF1YXJ0ZXJseSBZb1kgR3Jvd3RoKSJdfSw3NjEzMDUoZSl7ZS5leHBvcnRzPVsiR3Jvc3MgUHJvZml0IChUVE0gWW9ZIEdyb3d0aCkiXX0sOTY2NTA1KGUpe2UuZXhwb3J0cz1bIkdyb3NzIG1hcmdpbiAoe3BlcmlvZH0pIl19LDM5NzYwMihlKXtlLmV4cG9ydHM9WyJHcm9zcyBwcm9maXQgKHtwZXJpb2R9KSJdfSwzMjkyOTEoZSl7ZS5leHBvcnRzPVsiR3JvdW5kIEZyZWlnaHQgJiBMb2dpc3RpY3MiXX0sODYyOTQ5KGUpe2UuZXhwb3J0cz1bIkdyb3VwIl19LDc5MDY1NihlKXtlLmV4cG9ydHM9WyJHcm91cHMiXX0sMjQyMTE2KGUpe2UuZXhwb3J0cz1bIkd1eWFuYSJdfSwxNjQ4NzcoZSl7ZS5leHBvcnRzPVsiR3VhZGVsb3VwZSJdfSw1NDQzMjUoZSl7ZS5leHBvcnRzPVsiR3VhbSJdfSw4Nzc0ODcoZSl7ZS5leHBvcnRzPVsiR3VhdGVtYWxhIl19LDQwODkxNihlKXtlLmV4cG9ydHM9WyJHdWVybnNleSJdfSw1ODQzMyhlKXtlLmV4cG9ydHM9WyJHdWlkZWQgVG91ciBPcGVyYXRvcnMiXX0sNDM2NDU1KGUpe2UuZXhwb3J0cz1bIkd1aW5lYSJdfSwzMDgyMjkoZSl7ZS5leHBvcnRzPVsiR3VpbmVhLUJpc3NhdSJdfSw3MTc3ODEoZSl7ZS5leHBvcnRzPVsiR3ltcywgRml0bmVzcyBhbmQgU3BhIENlbnRlcnMiXX0sMjM3MjQxKGUpe2UuZXhwb3J0cz1bIkRFQlQvRVFVSVRZIl19LDI4Nzk5OChlKXtlLmV4cG9ydHM9WyJEUiJdfSw5ODUyNTkoZSl7ZS5leHBvcnRzPVsiRG8geW91IHJlYWxseSB3YW50IHRvIGRlbGV0ZSBDb2x1bW4gU2V0ICd7bmFtZX0nID8iXX0sMjc3MDExKGUpe2UuZXhwb3J0cz1bIkRvIHlvdSByZWFsbHkgd2FudCB0byBkZWxldGUgU2NyZWVuICd7bmFtZX0nID8iXX0sODMyNTYyKGUpe2UuZXhwb3J0cz1bIkRvY3RvcidzIE9mZmljZSJdfSw1MjQ1NyhlKXtlLmV4cG9ydHM9WyJEb2xscyAmIFN0dWZmZWQgVG95cyJdfSwxOTQzMjYoZSl7ZS5leHBvcnRzPVsiRG9taW5pY2EiXX0sODE4NjA0KGUpe2UuZXhwb3J0cz1bIkRvbWluaWNhbiBSZXB1YmxpYyJdfSwzNTE5NjMoZSl7ZS5leHBvcnRzPVsiRG9uY2hDaDIwIExvdyJdfSw2MTc0NjgoZSl7ZS5leHBvcnRzPVsiRG9uY2hDaDIwIFVwIl19LDYwODY1NihlKXtlLmV4cG9ydHM9WyJEb25jaGlhbiBDaGFubmVscyBMb3dlciBCYW5kICgyMCkiXX0sMzc4MDI0KGUpe2UuZXhwb3J0cz1bIkRvbmNoaWFuIENoYW5uZWxzIFVwcGVyIEJhbmQgKDIwKSJdfSwxODIxNDMoZSl7ZS5leHBvcnRzPVsiRG9vcnMgJiBXaW5kb3cgRnJhbWVzIl19LDg4NDc4MChlKXsKZS5leHBvcnRzPVsiRGF0YSBQcm9jZXNzaW5nIFNlcnZpY2VzIl19LDUwNzcyOShlKXtlLmV4cG9ydHM9WyJEYXRlIl19LDc4OTAxNShlKXtlLmV4cG9ydHM9WyJEYWlyeSBQcm9kdWN0cyJdfSw0OTUyMTAoZSl7ZS5leHBvcnRzPVsiRGVidCJdfSwyNTk2NShlKXtlLmV4cG9ydHM9WyJEZWJ0L0VxIl19LDMxNTA5MihlKXtlLmV4cG9ydHM9WyJEZWJ0L0VxdWl0eSwgTVJRIl19LDU0NzM2MihlKXtlLmV4cG9ydHM9WyJEZWJ0IHRvIEFzc2V0cyJdfSwzMDY5NjYoZSl7ZS5leHBvcnRzPVsiRGVidCB0byBFcXVpdHkgUmF0aW8gKE1SUSkiXX0sNzY5MDM2KGUpe2UuZXhwb3J0cz1bIkRlYyJdfSw4MjQ0MDMoZSl7ZS5leHBvcnRzPVsiRGVlcCBTZWEgRnJlaWdodCJdfSwyMjk1MjUoZSl7ZS5leHBvcnRzPVsiRGVsYXllZCJdfSw0MzE0NDEoZSl7ZS5leHBvcnRzPVsiRGVsZXRlIl19LDg1MjUwMShlKXtlLmV4cG9ydHM9WyJEZW5tYXJrIl19LDQzNjk3MChlKXtlLmV4cG9ydHM9WyJEZXBhcnRtZW50L1NwZWNpYWx0eSBSZXRhaWwgU3RvcmVzIl19LDQxNTEwNShlKXtlLmV4cG9ydHM9WyJEZXBhcnRtZW50IFN0b3JlcyJdfSw3MTQ3NDUoZSl7ZS5leHBvcnRzPVsiRGVwb3NpdGFyeSBSZWNlaXB0Il19LDM5Nzk4NyhlKXtlLmV4cG9ydHM9WyJEZXNjcmlwdGlvbiJdfSw5OTQwMjUoZSl7ZS5leHBvcnRzPVsiRGVzY3JpcHRpdmUiXX0sNzAyMjA2KGUpe2UuZXhwb3J0cz1bIkRlc2lnbiBTZXJ2aWNlcyJdfSwxODgzNjIoZSl7ZS5leHBvcnRzPVsiRGl2IFBhaWQiXX0sOTIyNzE0KGUpe2UuZXhwb3J0cz1bIkRpdiBQcmVmIl19LDQzODgxMChlKXtlLmV4cG9ydHM9WyJEaXYgWWllbGQgRldEIl19LDExNTMwNChlKXtlLmV4cG9ydHM9WyJEaXYgcGVyIFNoYXJlIChGWSkiXX0sMTExODI5KGUpe2UuZXhwb3J0cz1bIkRpdiBwZXIgU2hhcmUgKE1SUSkiXX0sODgyOTE5KGUpe2UuZXhwb3J0cz1bIkRpdmVyc2lmaWVkIENoZW1pY2FscyJdfSw2NjkxODUoZSl7ZS5leHBvcnRzPVsiRGl2ZXJzaWZpZWQgSW52ZXN0bWVudCBTZXJ2aWNlcyJdfSwzNjAwNihlKXtlLmV4cG9ydHM9WyJEaXZlcnNpZmllZCBSRUlUcyJdfSw5MDM3MzEoZSl7ZS5leHBvcnRzPVsiRGl2ZXJzaWZpZWQgVHJhZGluZyAmIERpc3RyaWJ1dGluZyJdfSw5NzY2MDcoZSl7ZS5leHBvcnRzPVsiRGl2aWRlbmQgWWllbGQgRm9yd2FyZCJdfSw0NTc1MDUoZSl7ZS5leHBvcnRzPVsiRGl2aWRlbmQgcGF5b3V0IHJhdGlvICh7cGVyaW9kfSkiXX0sNjU5MjY3KGUpe2UuZXhwb3J0cz1bIkRpdmlkZW5kcyJdfSw1NTAyMTYoZSl7ZS5leHBvcnRzPVsiRGl2aWRlbmRzIFBhaWQgKEZZKSJdfSw0OTMyMDAoZSl7ZS5leHBvcnRzPVsiRGl2aWRlbmRzIFByZWZlcnJlZCJdfSwyNzQ3MjkoZSl7ZS5leHBvcnRzPVsiRGl2aWRlbmRzIHBlciBTaGFyZSAoRlkpIl19LDI5MjIyMChlKXtlLmV4cG9ydHM9WyJEaXZpZGVuZHMgcGVyIFNoYXJlIChNUlEpIl19LDU1Nzk0MShlKXtlLmV4cG9ydHM9WyJEaXZpZGVuZHMgcGVyIHNoYXJlIChBbm51YWwgWW9ZIEdyb3d0aCkiXX0sNTc4NTcxKGUpe2UuZXhwb3J0cz1bIkRpYWdub3N0aWMgJiBUZXN0aW5nIFN1YnN0YW5jZXMiXX0sMTg4MTIxKGUpe2UuZXhwb3J0cz1bIkRpYWdub3N0aWMgJiBUZXN0aW5nIFN1YnN0YW5jZXMgTWFudWZhY3R1cmVycyJdfSw5NTIwODkoZSl7ZS5leHBvcnRzPVsiRGlhbW9uZCBNaW5pbmciXX0sMTM3Mzc3KGUpe2UuZXhwb3J0cz1bIkRpZ2l0YWwgTWVkaWEgQWdlbmNpZXMiXX0sNDM2NDgwKGUpe2UuZXhwb3J0cz1bIkRpZ2l0YWwgUHVibGlzaGluZyJdfSwyNTE0OTYoZSl7ZS5leHBvcnRzPVsiRGlyZWN0IE1hcmtldGluZyJdfSw4NjUwMzEoZSl7ZS5leHBvcnRzPVsiRGlyZWN0b3J5IFB1Ymxpc2hpbmciXX0sNTE4MTE3KGUpe2UuZXhwb3J0cz1bIkRpc2NvdW50IFN0b3JlcyJdfSw2MzcxODQoZSl7ZS5leHBvcnRzPVsiRGlzY291bnQgU3RvcmVzIHdpdGggZ3JvY2VyaWVzIl19LDc5NTEyNChlKXtlLmV4cG9ydHM9WyJEaXNjb3VudCBTdG9yZXMgd2l0aG91dCBncm9jZXJpZXMiXX0sMjk5ODI0KGUpe2UuZXhwb3J0cz1bIkRpc3BsYXkgU2NyZWVucyJdfSwxMzAyMChlKXtlLmV4cG9ydHM9WyJEaXN0aWxsZXJpZXMiXX0sNTU4MDk1KGUpe2UuZXhwb3J0cz1bIkRpc3RpbGxlcnMgJiBXaW5lcmllcyJdfSwxNzEzNDIoZSl7ZS5leHBvcnRzPVsiRGlzdHJpYnV0aW9uIFNlcnZpY2VzIl19LDUwNzc5OChlKXtlLmV4cG9ydHM9WyJEamlib3V0aSJdfSw4OTY3NzIoZSl7ZS5leHBvcnRzPVsiRHJ1Z3N0b3JlIENoYWlucyJdfSw1NjEwNjAoZSl7ZS5leHBvcnRzPVsiRHJ1ZyBEZWxpdmVyeSBTeXN0ZW1zIl19LDU1OTIwNihlKXtlLmV4cG9ydHM9WyJEcnVnIFJldGFpbGVycyJdfSwzNzU0NChlKXtlLmV4cG9ydHM9WyJEcmFnb25mbHkgRG9qaSJdfSw0NzAxMDUoZSl7ZS5leHBvcnRzPVsiRS1jb21tZXJjZSAmIEF1Y3Rpb24gU2VydmljZXMiXX0sMTA3OTA1KGUpe2UuZXhwb3J0cz1bIkVNQTEwIl19LDY0OTY0NChlKXtlLmV4cG9ydHM9WyJFTUExMDAiXX0sMTQzNjMoZSl7ZS5leHBvcnRzPVsiRU1BMjAiXX0sNjA1NDM4KGUpe2UuZXhwb3J0cz1bIkVNQTIwMCJdfSw5NTQ4NTkoZSl7ZS5leHBvcnRzPVsiRU1BMzAiXX0sNTExODQ0KGUpe2UuZXhwb3J0cz1bIkVNQTUiXX0sNTM4MDE4KGUpe2UuZXhwb3J0cz1bIkVNQTUwIl19LDY3NzgxMyhlKXtlLmV4cG9ydHM9WyJFTVBMT1lFRVMiXX0sNjk5NyhlKXtlLmV4cG9ydHM9WyJFQklUREEiXX0sOTg2MjkyKGUpe2UuZXhwb3J0cz1bIkVCSVREQSAoQW5udWFsIFlvWSBHcm93dGgpIl19LDc0NjIzKGUpe2UuZXhwb3J0cz1bIkVCSVREQSAoUXVhcnRlcmx5IFFvUSBHcm93dGgpIl19LDUzOTcwNShlKXtlLmV4cG9ydHM9WyJFQklUREEgKFF1YXJ0ZXJseSBZb1kgR3Jvd3RoKSJdfSw4MzQ2NjgoZSl7ZS5leHBvcnRzPVsiRUJJVERBIChUVE0gWW9ZIEdyb3d0aCkiXX0sNTQwOTkoZSl7ZS5leHBvcnRzPVsiRUJJVERBIChUVE0pIl19LDMyNzE0OShlKXtlLmV4cG9ydHM9WyJFUFMgKEZZKSJdfSwyNTU4NTcoZSl7ZS5leHBvcnRzPVsiRVBTIChUVE0pIl19LAo5MzEwOTMoZSl7ZS5leHBvcnRzPVsiRVBTIERpbHV0ZWQgKE1SUSkiXX0sNTI4OTcyKGUpe2UuZXhwb3J0cz1bIkVQUyBEaWx1dGVkIChBbm51YWwgWW9ZIEdyb3d0aCkiXX0sMTEyMjc4KGUpe2UuZXhwb3J0cz1bIkVQUyBEaWx1dGVkIChGWSkiXX0sOTY2MjU2KGUpe2UuZXhwb3J0cz1bIkVQUyBEaWx1dGVkIChRdWFydGVybHkgUW9RIEdyb3d0aCkiXX0sODIyNzgyKGUpe2UuZXhwb3J0cz1bIkVQUyBEaWx1dGVkIChRdWFydGVybHkgWW9ZIEdyb3d0aCkiXX0sNDA2ODYzKGUpe2UuZXhwb3J0cz1bIkVQUyBEaWx1dGVkIChUVE0gWW9ZIEdyb3d0aCkiXX0sOTg2NTE2KGUpe2UuZXhwb3J0cz1bIkVQUyBEaWx1dGVkIChUVE0pIl19LDc4OTE1NShlKXtlLmV4cG9ydHM9WyJFUFMgRXN0aW1hdGUiXX0sMjA1NTQ4KGUpe2UuZXhwb3J0cz1bIkVQUyBGb3JlY2FzdCJdfSw4MDI1OTAoZSl7ZS5leHBvcnRzPVsiRVBTIEZvcmVjYXN0IChNUlEpIl19LDcyODU0NShlKXtlLmV4cG9ydHM9WyJFUFMgZGlsdXRlZCAoe3BlcmlvZH0pIl19LDMwMDI3NShlKXtlLmV4cG9ydHM9WyJFVEMiXX0sNjk0MDcyKGUpe2UuZXhwb3J0cz1bIkVURiJdfSw5NzIyNDAoZSl7ZS5leHBvcnRzPVsiRVROIl19LDI2MzIzMChlKXtlLmV4cG9ydHM9WyJFViJdfSw3NzY0NjQoZSl7ZS5leHBvcnRzPVsiRVYvRUJJVERBIl19LDQ4NTc5MChlKXtlLmV4cG9ydHM9WyJFbXBsb3ltZW50IFNlcnZpY2VzIl19LDI0OTk3OChlKXtlLmV4cG9ydHM9WyJFbnRlciBhIG5ldyBjb2x1bW4gc2V0IG5hbWU6Il19LDg5MDk5KGUpe2UuZXhwb3J0cz1bIkVudGVyIGEgbmV3IHNjcmVlbiBuYW1lOiJdfSw0NTgwMTEoZSl7ZS5leHBvcnRzPVsiRW50ZXJ0YWlubWVudCBQcm9kdWN0aW9uIl19LDIxODc2NyhlKXtlLmV4cG9ydHM9WyJFbnRlcnRhaW5tZW50IFByb2R1Y3Rpb24gRXF1aXBtZW50ICYgU2VydmljZXMiXX0sNjczMTYxKGUpe2UuZXhwb3J0cz1bIkVudGVycHJpc2UgdmFsdWUiXX0sNjc0NDgxKGUpe2UuZXhwb3J0cz1bIkVudGVycHJpc2UgU29mdHdhcmUiXX0sMTExMTI1KGUpe2UuZXhwb3J0cz1bIkVudGVycHJpc2UgVmFsdWUvRUJJVERBIChUVE0pIl19LDUzMTI4OChlKXtlLmV4cG9ydHM9WyJFbnRlcnByaXNlIFZhbHVlIChNUlEpIl19LDkxNTEyNChlKXtlLmV4cG9ydHM9WyJFbnRpcmUgd29ybGQiXX0sMjA1MjA5KGUpe2UuZXhwb3J0cz1bIkVudmlyb25tZW50YWwgQmlvdGVjaG5vbG9neSJdfSw1ODA2NzIoZSl7ZS5leHBvcnRzPVsiRW52aXJvbm1lbnRhbCBDb25zdWx0YW5jeSBTZXJ2aWNlcyJdfSwzMDcwMTcoZSl7ZS5leHBvcnRzPVsiRW52aXJvbm1lbnRhbCBTZXJ2aWNlcyJdfSw2OTAwOTAoZSl7ZS5leHBvcnRzPVsiRW52aXJvbm1lbnRhbCBTZXJ2aWNlcyAmIEVxdWlwbWVudCJdfSw2MDE3NjQoZSl7ZS5leHBvcnRzPVsiRW5kIG9mIERheSJdfSw4MjU1NDIoZSl7ZS5leHBvcnRzPVsiRW5lcmd5Il19LDU2MDM4OShlKXtlLmV4cG9ydHM9WyJFbmVyZ3kgTWluZXJhbHMiXX0sMzY3NzYwKGUpe2UuZXhwb3J0cz1bIkVuZXJneSBEcmlua3MiXX0sMjk3MzA0KGUpe2UuZXhwb3J0cz1bIkVuZ2luZSAmIFBvd2VydHJhaW4gU3lzdGVtcyJdfSwyMjMyNjIoZSl7ZS5leHBvcnRzPVsiRW5naW5lZXJpbmcgJiBDb25zdHJ1Y3Rpb24iXX0sMTM0MDU5KGUpe2UuZXhwb3J0cz1bIkVhcm5pbmdzIHRoaXMgd2VlayJdfSw0MTMzOTcoZSl7ZS5leHBvcnRzPVsiRWN1YWRvciJdfSwyNDMwODIoZSl7ZS5leHBvcnRzPVsiRWR1Y2F0aW9uICYgVHJhaW5pbmcgSW5mb3JtYXRpb24gUHJvdmlkZXJzIl19LDE0NDI2MChlKXtlLmV4cG9ydHM9WyJFZHVjYXRpb25hbCBTZXJ2aWNlcyJdfSwzMzc0MzcoZSl7ZS5leHBvcnRzPVsiRWd5cHQiXX0sODgwODcyKGUpe2UuZXhwb3J0cz1bIkVsIFNhbHZhZG9yIl19LDI3NDc4MihlKXtlLmV4cG9ydHM9WyJFbGVjdHJpYyBDb25zdHJ1Y3Rpb24iXX0sNzg3MTcwKGUpe2UuZXhwb3J0cz1bIkVsZWN0cmljIEVxdWlwbWVudCBXaG9sZXNhbGUiXX0sODExODcwKGUpe2UuZXhwb3J0cz1bIkVsZWN0cmljIFV0aWxpdGllcyJdfSwzNDY3MTEoZSl7ZS5leHBvcnRzPVsiRWxlY3RyaWMgVXRpbGl0aWVzOiBDZW50cmFsIl19LDk5OTAxNChlKXtlLmV4cG9ydHM9WyJFbGVjdHJpY2FsIChBbHRlcm5hdGl2ZSkgVmVoaWNsZXMiXX0sNDYxMjI3KGUpe2UuZXhwb3J0cz1bIkVsZWN0cmljYWwgQ29tcG9uZW50cyAmIEVxdWlwbWVudCJdfSw0MTY1MzcoZSl7ZS5leHBvcnRzPVsiRWxlY3RyaWNhbCBNZWFzdXJpbmcgJiBUZXN0aW5nIEluc3RydW1lbnRzIl19LDYxNDQ0MChlKXtlLmV4cG9ydHM9WyJFbGVjdHJpY2FsIFByb2R1Y3RzIl19LDMyMTQ2NShlKXtlLmV4cG9ydHM9WyJFbGVjdHJvbiBUdWJlcyAmIEluc3VsYXRvcnMiXX0sMTAyMjQ3KGUpe2UuZXhwb3J0cz1bIkVsZWN0cm9uaWNzIERpc3RyaWJ1dG9ycyJdfSw5NzcwMDkoZSl7ZS5leHBvcnRzPVsiRWxlY3Ryb25pY3MvQXBwbGlhbmNlIFN0b3JlcyJdfSwyNjAwMzcoZSl7ZS5leHBvcnRzPVsiRWxlY3Ryb25pY3MvQXBwbGlhbmNlcyJdfSwzNjg1NjAoZSl7ZS5leHBvcnRzPVsiRWxlY3Ryb25pYyBDb21wb25lbnQiXX0sNDQ5NDE5KGUpe2UuZXhwb3J0cz1bIkVsZWN0cm9uaWMgQ29tcG9uZW50cyJdfSwxNTQwNDcoZSl7ZS5leHBvcnRzPVsiRWxlY3Ryb25pYyBFcXVpcG1lbnQgJiBQYXJ0cyJdfSwzOTYzMTYoZSl7ZS5leHBvcnRzPVsiRWxlY3Ryb25pYyBFcXVpcG1lbnQvSW5zdHJ1bWVudHMiXX0sNzczMTQ0KGUpe2UuZXhwb3J0cz1bIkVsZWN0cm9uaWMgRXF1aXBtZW50cyAmIFBhcnRzIl19LDg5NDczNyhlKXtlLmV4cG9ydHM9WyJFbGVjdHJvbmljIFByb2R1Y3Rpb24gRXF1aXBtZW50Il19LDY1NDMyKGUpe2UuZXhwb3J0cz1bIkVsZWN0cm9uaWMgUmVwYWlyIFNlcnZpY2VzIl19LDc1OTYxNShlKXtlLmV4cG9ydHM9WyJFbGVjdHJvbmljIFRlY2hub2xvZ3kiXX0sOTIyNDU5KGUpe2UuZXhwb3J0cz1bIkVsZXZhdG9yICYgQ29udmV5aW5nIEVxdWlwbWVudCJdfSw4NzM0MDMoZSl7ZS5leHBvcnRzPVsiRXBveHkiXX0sMzQwMjM5KGUpe2UuZXhwb3J0cz1bIkVxdWFsIl0KfSw3NDY1MjQoZSl7ZS5leHBvcnRzPVsiRXF1YXRvcmlhbCBHdWluZWEiXX0sNzMwODczKGUpe2UuZXhwb3J0cz1bIkVyaXRyZWEiXX0sOTQxMjAoZSl7ZS5leHBvcnRzPVsiRXN0b25pYSJdfSw4OTgzMDMoZSl7ZS5leHBvcnRzPVsiRXN3YXRpbmkiXX0sNDUwNjIzKGUpe2UuZXhwb3J0cz1bIkV0aGFub2wgRnVlbHMiXX0sMzMxOTEoZSl7ZS5leHBvcnRzPVsiRXRoaW9waWEiXX0sOTUyMzY3KGUpe2UuZXhwb3J0cz1bIkV1cm9wZSJdfSw1MzUxNDYoZSl7ZS5leHBvcnRzPVsiRXVyb3BlYW4gVW5pb24iXX0sMzQ5NjcwKGUpe2UuZXhwb3J0cz1bIkV2ZW5pbmcgU3RhciJdfSw3MjE0NDEoZSl7ZS5leHBvcnRzPVsiRXh0ZW5kZWQgSG91cnMiXX0sODI2NjA3KGUpe2UuZXhwb3J0cz1bIkV4Y2hhbmdlIl19LDU0ODc1MyhlKXtlLmV4cG9ydHM9WyJFeGNoYW5nZSBUcmFkZWQgRnVuZCJdfSwyMjI1MzIoZSl7ZS5leHBvcnRzPVsiRXhjaGFuZ2UgVHJhZGVkIEZ1bmRzIl19LDYxMTExOChlKXtlLmV4cG9ydHM9WyJFeGNoYW5nZSB0eXBlIl19LDI5OTMxNihlKXtlLmV4cG9ydHM9WyJFeGVjdXRpdmUgU2VhcmNoIFNlcnZpY2VzIl19LDkxOTE3NyhlKXtlLmV4cG9ydHM9WyJFeGhpYml0aW9uICYgQ29uZmVyZW5jZSBTZXJ2aWNlcyJdfSw1ODA4MzIoZSl7ZS5leHBvcnRzPVsiRXhvdGljIl19LDM2NTU4OShlKXtlLmV4cG9ydHM9WyJFeHBpcmF0aW9uIl19LDYzNDUwNihlKXtlLmV4cG9ydHM9WyJFeHBvbmVudGlhbCBNb3ZpbmcgQXZlcmFnZSAoe251bWJlcn0pIl19LDM5MTI1MShlKXtlLmV4cG9ydHM9WyJFeHBsb3NpdmVzIl19LDIxNDI3OShlKXtlLmV4cG9ydHM9WyJGRCBNa3QgQ2FwIl19LDI5ODU3NihlKXtlLmV4cG9ydHM9WyJGUSJdfSwyODc5MTgoZSl7ZS5leHBvcnRzPVsiRlkiXX0sNjMyODQ3KGUpe2UuZXhwb3J0cz1bIkZvb2QgRGlzdHJpYnV0b3JzIl19LDQwMzk0MyhlKXtlLmV4cG9ydHM9WyJGb29kIEluZ3JlZGllbnRzIl19LDUxNDM4NyhlKXtlLmV4cG9ydHM9WyJGb29kIE1hcmtldHMiXX0sMTQ2MDQzKGUpe2UuZXhwb3J0cz1bIkZvb2QgUHJvY2Vzc2luZyJdfSwyMzE0MzQoZSl7ZS5leHBvcnRzPVsiRm9vZCBSZXRhaWwiXX0sODYzNjYxKGUpe2UuZXhwb3J0cz1bIkZvb2QgUmV0YWlsICYgRGlzdHJpYnV0aW9uIl19LDk3NjgyMihlKXtlLmV4cG9ydHM9WyJGb29kIFdob2xlc2FsZSJdfSwyNTc3MDkoZSl7ZS5leHBvcnRzPVsiRm9vZDogTWFqb3IgRGl2ZXJzaWZpZWQiXX0sNDI0Njg1KGUpe2UuZXhwb3J0cz1bIkZvb2Q6IE1lYXQvRmlzaC9EYWlyeSJdfSw5MzE4ODMoZSl7ZS5leHBvcnRzPVsiRm9vZDogU3BlY2lhbHR5L0NhbmR5Il19LDY5ODA1NyhlKXtlLmV4cG9ydHM9WyJGb290d2VhciJdfSw5MTUwMzcoZSl7ZS5leHBvcnRzPVsiRm9vdHdlYXIgUmV0YWlsZXJzIl19LDk3MzI5NShlKXtlLmV4cG9ydHM9WyJGb290d2VhciBXaG9sZXNhbGUiXX0sODA4MDA4KGUpe2UuZXhwb3J0cz1bIkZvcmVzdCAmIFdvb2QgUHJvZHVjdHMiXX0sNDY0MjM5KGUpe2UuZXhwb3J0cz1bIkZvcmVzdCBOdXJzZXJpZXMgJiBHYXRoZXJpbmcgb2YgRm9yZXN0IFByb2R1Y3RzIl19LDM0NDY1MyhlKXtlLmV4cG9ydHM9WyJGb3Jlc3QgUHJvZHVjdHMiXX0sODMxODc1KGUpe2UuZXhwb3J0cz1bIkZvcmVzdCBTdXBwb3J0ICYgU2VydmljZXMiXX0sMjU1MDkzKGUpe2UuZXhwb3J0cz1bIkZvcmV4Il19LDI0OTgyKGUpe2UuZXhwb3J0cz1bIkZvc3NpbCBGdWVsIEVsZWN0cmljIFV0aWxpdGllcyJdfSwxOTM3MTEoZSl7ZS5leHBvcnRzPVsiRm9zc2lsIEZ1ZWwgSVBQcyJdfSwyNjA2MDUoZSl7ZS5leHBvcnRzPVsiRmF2b3JpdGUgc2V0cyJdfSw1ODA2NTgoZSl7ZS5leHBvcnRzPVsiRmFicmljIER5ZWluZyAmIEZpbmlzaGluZyJdfSw3NTI0MzAoZSl7ZS5leHBvcnRzPVsiRmFjdG9yaW5nIl19LDk5MzQ3NShlKXtlLmV4cG9ydHM9WyJGYWxrbGFuZCBJc2xhbmRzIl19LDYwNzcyMyhlKXtlLmV4cG9ydHM9WyJGYWxrbGFuZCBJc2xhbmRzIChNYWx2aW5hcykiXX0sNDI4OTc4KGUpe2UuZXhwb3J0cz1bIkZhbGxpbmcgcGFpcnMiXX0sNDUyNDg3KGUpe2UuZXhwb3J0cz1bIkZhcm9lIElzbGFuZHMiXX0sNzQ1NTE2KGUpe2UuZXhwb3J0cz1bIkZhc2hpb24gRXlld2VhciJdfSw2MTczNDEoZSl7ZS5leHBvcnRzPVsiRmViIl19LDYzNjA2NChlKXtlLmV4cG9ydHM9WyJGZXJ0aWxpemVyIl19LDIxNDg1KGUpe2UuZXhwb3J0cz1bIkZpYmVyIE9wdGljIENhYmxlIE1hbnVmYWN0dXJpbmciXX0sMTUyNDA5KGUpe2UuZXhwb3J0cz1bIkZpamkiXX0sMTQxNzI3KGUpe2UuZXhwb3J0cz1bIkZpbHRlcnMiXX0sNDYyMTkzKGUpe2UuZXhwb3J0cz1bIkZpbmFuY2UiXX0sOTkyMjk2KGUpe2UuZXhwb3J0cz1bIkZpbmFuY2UvUmVudGFsL0xlYXNpbmciXX0sNjY1OTA1KGUpe2UuZXhwb3J0cz1bIkZpbmFuY2U6IENvbnN1bWVyIFNlcnZpY2VzIl19LDc2OTg3NChlKXtlLmV4cG9ydHM9WyJGaW5hbmNpbmcgY2FzaCBmbG93ICh7cGVyaW9kfSkiXX0sMTI4NDc5KGUpe2UuZXhwb3J0cz1bIkZpbmFuY2lhbCJdfSw5MjA2NDIoZSl7ZS5leHBvcnRzPVsiRmluYW5jaWFsICYgQ29tbW9kaXR5IE1hcmtldCBPcGVyYXRvcnMiXX0sNTAwMjQ3KGUpe2UuZXhwb3J0cz1bIkZpbmFuY2lhbCBDb25nbG9tZXJhdGVzIl19LDYxNDQzMyhlKXtlLmV4cG9ydHM9WyJGaW5hbmNpYWwgSW5mb3JtYXRpb24gUHJvdmlkZXJzIl19LDkzNzI2NChlKXtlLmV4cG9ydHM9WyJGaW5hbmNpYWwgUHVibGlzaGluZy9TZXJ2aWNlcyJdfSw0NDM0OTYoZSl7ZS5leHBvcnRzPVsiRmluYW5jaWFsIFRlY2hub2xvZ3kgJiBJbmZyYXN0cnVjdHVyZSJdfSwzNjkzMjUoZSl7ZS5leHBvcnRzPVsiRmluYW5jaWFscyJdfSw2MTMxNChlKXtlLmV4cG9ydHM9WyJGaW5hbmNpYWxzIGN1cnJlbmN5Il19LDM0MTI0NChlKXtlLmV4cG9ydHM9WyJGaW5hbmNpYWxzIGluIl19LDk3NjQ1NChlKXtlLmV4cG9ydHM9WyJGaW5sYW5kIl19LDMxNDUyMShlKXtlLmV4cG9ydHM9WyJGaXNjYWwgeWVhciBlbmQiXX0sMzAxNjk1KGUpe2UuZXhwb3J0cz1bIkZpc2hpbmcgJiBGYXJtaW5nIl19LAoyMTYxODkoZSl7ZS5leHBvcnRzPVsiRmlzaGluZyAmIEZhcm1pbmcgV2hvbGVzYWxlIl19LDQ3NTIyNShlKXtlLmV4cG9ydHM9WyJGbHVpZCBQb3dlciBDeWxpbmRlciAmIEFjdHVhdG9ycyJdfSw3MjMwODgoZSl7ZS5leHBvcnRzPVsiRmxvYXQiXX0sNDg1NDI5KGUpe2UuZXhwb3J0cz1bIkZsb29yIENvdmVyaW5nIFJldGFpbGVycyJdfSw4MTg2MjgoZSl7ZS5leHBvcnRzPVsiRmxvb3JpbmcgJiBJbnRlcmlvciBUaWxlIE1hbnVmYWN0dXJlcnMiXX0sMzg5NDg3KGUpe2UuZXhwb3J0cz1bIkZsb3Jpc3RzIl19LDM5ODIzNyhlKXtlLmV4cG9ydHM9WyJGbG91ciBNaWxsaW5nIl19LDkxNjYyKGUpe2UuZXhwb3J0cz1bIkZydWl0ICYgVmVnZXRhYmxlIFByb2Nlc3NpbmciXX0sNzc0MjE2KGUpe2UuZXhwb3J0cz1bIkZydWl0IERyaW5rcyJdfSw5Njg4MTUoZSl7ZS5leHBvcnRzPVsiRnJhY3Rpb24gcGFydCBpcyBpbnZhbGlkLiJdfSwxMzYyMzgoZSl7ZS5leHBvcnRzPVsiRnJhbmNlIl19LDE0NDYzKGUpe2UuZXhwb3J0cz1bIkZyZWUgQ2FzaCBGbG93Il19LDYwNzU2MChlKXtlLmV4cG9ydHM9WyJGcmVlIENhc2ggRmxvdyAoQW5udWFsIFlvWSBHcm93dGgpIl19LDM0NDM2KGUpe2UuZXhwb3J0cz1bIkZyZWUgQ2FzaCBGbG93IChRdWFydGVybHkgUW9RIEdyb3d0aCkiXX0sMjY1MDYoZSl7ZS5leHBvcnRzPVsiRnJlZSBDYXNoIEZsb3cgKFF1YXJ0ZXJseSBZb1kgR3Jvd3RoKSJdfSw3ODU3MShlKXtlLmV4cG9ydHM9WyJGcmVlIENhc2ggRmxvdyAoVFRNIFlvWSBHcm93dGgpIl19LDE2NzY4OChlKXtlLmV4cG9ydHM9WyJGcmVlIENhc2ggRmxvdyAoVFRNKSJdfSw1MzExNzMoZSl7ZS5leHBvcnRzPVsiRnJlZSBDYXNoIEZsb3cgTWFyZ2luIChGWSkiXX0sOTI0NTUzKGUpe2UuZXhwb3J0cz1bIkZyZWUgQ2FzaCBGbG93IE1hcmdpbiAoVFRNKSJdfSw2MjI1NTkoZSl7ZS5leHBvcnRzPVsiRnJlZSBjYXNoIGZsb3cgKHtwZXJpb2R9KSJdfSw5NjkyMzcoZSl7ZS5leHBvcnRzPVsiRnJlaWdodCBMb2dpc3RpY3MiXX0sMzQyNzA2KGUpe2UuZXhwb3J0cz1bIkZyZWlnaHQgVHJ1Y2tpbmciXX0sOTc2MDc5KGUpe2UuZXhwb3J0cz1bIkZyZW5jaCBHdWlhbmEiXX0sODYzODI1KGUpe2UuZXhwb3J0cz1bIkZyZW5jaCBQb2x5bmVzaWEiXX0sMzI4NjA3KGUpe2UuZXhwb3J0cz1bIkZyZW5jaCBTb3V0aGVybiBUZXJyaXRvcmllcyJdfSw3ODI5NjQoZSl7ZS5leHBvcnRzPVsiRnJvemVuIEZvb2QgTWFudWZhY3R1cmluZyJdfSw5NDM5MDMoZSl7ZS5leHBvcnRzPVsiRnV0dXJlcyJdfSw2ODczMzIoZSl7ZS5leHBvcnRzPVsiRnVsbHkgRGlsdXRlZCBNYXJrZXQgQ2FwIl19LDg4MTkxOShlKXtlLmV4cG9ydHM9WyJGdW5lcmFsIFNlcnZpY2VzIl19LDI2NjY3MShlKXtlLmV4cG9ydHM9WyJGdXJuaXR1cmUiXX0sODM4NShlKXtlLmV4cG9ydHM9WyJGdXJuaXR1cmUgUmV0YWlsZXJzIl19LDk3ODU2MShlKXtlLmV4cG9ydHM9WyJHMjAiXX0sNTgxNjc5KGUpe2UuZXhwb3J0cz1bIktuaXR3ZWFyIl19LDY3Njg2KGUpe2UuZXhwb3J0cz1bIktvc292byJdfSwyNzc1NjAoZSl7ZS5leHBvcnRzPVsiS2F6YWtoc3RhbiJdfSw2Nzk1NDYoZSl7ZS5leHBvcnRzPVsiS2VsdG5lciBDaGFubmVscyBMb3dlciBCYW5kICgyMCkiXX0sMzA1ODg1KGUpe2UuZXhwb3J0cz1bIktlbHRuZXIgQ2hhbm5lbHMgVXBwZXIgQmFuZCAoMjApIl19LDgxNDk2NihlKXtlLmV4cG9ydHM9WyJLZW55YSJdfSw0NTcyNDIoZSl7ZS5leHBvcnRzPVsiS2l0Y2hlbiBBcHBsaWFuY2VzIl19LDQyMjYxOShlKXtlLmV4cG9ydHM9WyJLaXRjaGVuIENhYmluZXRzIl19LDQ1NzY5NChlKXtlLmV4cG9ydHM9WyJLaWNraW5nIEJlYXJpc2giXX0sNjE4NDkyKGUpe2UuZXhwb3J0cz1bIktpY2tpbmcgQnVsbGlzaCJdfSw0NDYyOTMoZSl7ZS5leHBvcnRzPVsiS2lyaWJhdGkiXX0sMjU3NzYwKGUpe2UuZXhwb3J0cz1bIktsdENoMjAgTG93Il19LDI0MDcxNShlKXtlLmV4cG9ydHM9WyJLbHRDaDIwIFVwIl19LDM5NTEzMChlKXtlLmV4cG9ydHM9WyJLdXdhaXQiXX0sNDU4NjYwKGUpe2UuZXhwb3J0cz1bIkt5cmd5enN0YW4iXX0sODgzNjIwKGUpe2UuZXhwb3J0cz1bIkhvdGVscyAmIE1vdGVscyJdfSwxNjQyNzcoZSl7ZS5leHBvcnRzPVsiSG90ZWxzL1Jlc29ydHMvQ3J1aXNlIGxpbmVzIl19LDM5OTc5MShlKXtlLmV4cG9ydHM9WyJIb3RlbHMsIE1vdGVscyAmIENydWlzZSBMaW5lcyJdfSw3MTg2MDcoZSl7ZS5leHBvcnRzPVsiSG91c2Vob2xkIEFwcGxpYW5jZXMiXX0sMjc1NDk4KGUpe2UuZXhwb3J0cz1bIkhvdXNlaG9sZCBFbGVjdHJvbmljcyJdfSw2OTkyODkoZSl7ZS5leHBvcnRzPVsiSG91c2Vob2xkIFByb2R1Y3RzIl19LDI5MzcwNyhlKXtlLmV4cG9ydHM9WyJIb3VzZWhvbGQvUGVyc29uYWwgQ2FyZSJdfSw3MzA0OTYoZSl7ZS5leHBvcnRzPVsiSG9sZGluZyBDb21wYW5pZXMiXX0sMTI3NDkoZSl7ZS5leHBvcnRzPVsiSG9seSBTZWUiXX0sNjc0MTA1KGUpe2UuZXhwb3J0cz1bIkhvbWUgQXVkaW8iXX0sMjY1NDIoZSl7ZS5leHBvcnRzPVsiSG9tZSBEZWNvciBSZXRhaWxlcnMiXX0sNzk3ODYoZSl7ZS5leHBvcnRzPVsiSG9tZSBGdXJuaXNoaW5ncyJdfSwyOTEyMDMoZSl7ZS5leHBvcnRzPVsiSG9tZSBGdXJuaXNoaW5ncyBSZXRhaWxlcnMiXX0sNDYxNDUyKGUpe2UuZXhwb3J0cz1bIkhvbWUgRnVybmlzaGluZ3MgV2hvbGVzYWxlIl19LDI5Njc4MShlKXtlLmV4cG9ydHM9WyJIb21lIEhlYWx0aGNhcmUgU2VydmljZXMiXX0sMTE2Mjg3KGUpe2UuZXhwb3J0cz1bIkhvbWUgSW1wcm92ZW1lbnQgQ2hhaW5zIl19LDY2MTE0NyhlKXtlLmV4cG9ydHM9WyJIb21lIEltcHJvdmVtZW50IFByb2R1Y3RzICYgU2VydmljZXMgUmV0YWlsZXJzIl19LDg1MjcyNChlKXtlLmV4cG9ydHM9WyJIb21lYnVpbGRpbmciXX0sMjAyODE2KGUpe2UuZXhwb3J0cz1bIkhvbmR1cmFzIl19LDQ2Mzc3OShlKXtlLmV4cG9ydHM9WyJIb25nIEtvbmcsIENoaW5hIl19LDU0NTkyNShlKXtlLmV4cG9ydHM9WyJIb3JzZSAmIERvZyBSYWNlIFRyYWNrcyJdfSwxMjQ0MDIoZSl7CmUuZXhwb3J0cz1bIkhvc2llcnkgJiBTb2NrIl19LDM4MDk0NChlKXtlLmV4cG9ydHM9WyJIb3NwaXRhbC9OdXJzaW5nIE1hbmFnZW1lbnQiXX0sNTQ5MTM3KGUpe2UuZXhwb3J0cz1bIkhvc3BpdGFsaXR5IFJFSVRzIl19LDc3MjU0OChlKXtlLmV4cG9ydHM9WyJIb3NwaXRhbHMsIENsaW5pY3MgJiBQcmltYXJ5IENhcmUgU2VydmljZXMiXX0sMTM2OTQ2KGUpe2UuZXhwb3J0cz1bIkhhaXIgQWNjZXNzb3JpZXMiXX0sODk0NzA5KGUpe2UuZXhwb3J0cz1bIkhhaXRpIl19LDgyODY0MShlKXtlLmV4cG9ydHM9WyJIYWxhbCBBbmltYWwgU2xhdWdodGVyaW5nICYgUHJvY2Vzc2luZyJdfSw4NjU5MDcoZSl7ZS5leHBvcnRzPVsiSGFtbWVyIl19LDM0ODMzMChlKXtlLmV4cG9ydHM9WyJIYW5naW5nIE1hbiJdfSw0NjY0NzkoZSl7ZS5leHBvcnRzPVsiSGFuZGJhZ3MgJiBMdWdnYWdlIl19LDE0NDAxKGUpe2UuZXhwb3J0cz1bIkhhbmRiYWdzICYgTHVnZ2FnZSBSZXRhaWxlcnMiXX0sMTAwOTU2KGUpe2UuZXhwb3J0cz1bIkhlYWx0aCBGb29kIFN0b3JlcyJdfSwzNTAwOTAoZSl7ZS5leHBvcnRzPVsiSGVhbHRoIEluc3VyYW5jZSJdfSw2MjA2MDEoZSl7ZS5leHBvcnRzPVsiSGVhbHRoIFNlcnZpY2VzIl19LDQxODQ1NyhlKXtlLmV4cG9ydHM9WyJIZWFsdGggVGVjaG5vbG9neSJdfSw4MDY4NjcoZSl7ZS5leHBvcnRzPVsiSGVhbHRoY2FyZSJdfSw2OTMxODUoZSl7ZS5leHBvcnRzPVsiSGVhbHRoY2FyZSBGYWNpbGl0aWVzICYgU2VydmljZXMiXX0sMTY4NzI4KGUpe2UuZXhwb3J0cz1bIkhlYWx0aGNhcmUgUkVJVHMiXX0sMjM2MTIzKGUpe2UuZXhwb3J0cz1bIkhlYXJkIElzbGFuZCBhbmQgTWNEb25hbGQgSXNsYW5kcyJdfSw1Mzk5MjIoZSl7ZS5leHBvcnRzPVsiSGVhdGluZywgVmVudGlsYXRpb24gJiBBaXIgQ29uZGl0aW9uaW5nIFN5c3RlbXMiXX0sMjYyOTgzKGUpe2UuZXhwb3J0cz1bIkhlYXZ5IEJ1c2VzICYgQ29hY2hlcyJdfSw0NTgxMjcoZSl7ZS5leHBvcnRzPVsiSGVhdnkgRWxlY3RyaWNhbCBFcXVpcG1lbnQiXX0sMjUwNTIoZSl7ZS5leHBvcnRzPVsiSGVhdnkgTW90b3JzICYgR2VuZXJhdG9ycyJdfSwzODE2MDQoZSl7ZS5leHBvcnRzPVsiSGVhdnkgTWFjaGluZXJ5ICYgVmVoaWNsZXMiXX0sNTE4MDQ0KGUpe2UuZXhwb3J0cz1bIkhlYXZ5IE1hY2hpbmVyeSAmIFZlaGljbGVzIFdob2xlc2FsZSJdfSw5OTgwNjcoZSl7ZS5leHBvcnRzPVsiSGVhdnkgVHJ1Y2tzIl19LDg5ODMzNihlKXtlLmV4cG9ydHM9WyJIZWRnZSBGdW5kcyJdfSwxMjI3NjQoZSl7ZS5leHBvcnRzPVsiSGlkZSBjdXJyZW5jeSJdfSw3MjEwMDEoZSl7ZS5leHBvcnRzPVsiSGlkZSBkZXNjcmlwdGlvbiJdfSw3NTcyMzEoZSl7ZS5leHBvcnRzPVsiSGlkZSByYXRpbmciXX0sOTI2ODI1KGUpe2UuZXhwb3J0cz1bIkhpZGUgc3ltYm9sIHR5cGUiXX0sODQ1NTYzKGUpe2UuZXhwb3J0cz1bIkhpZ2giXX0sODg1OTMoZSl7ZS5leHBvcnRzPVsiSGlnaC1kaXZpZGVuZCJdfSw5MDAzNzUoZSl7ZS5leHBvcnRzPVsiSGlnaCA1MlciXX0sNDczNzYyKGUpe2UuZXhwb3J0cz1bIkhpZ2h3YXkgJiBCcmlkZ2UgQ29uc3RydWN0aW9uIl19LDc3Mjg4NihlKXtlLmV4cG9ydHM9WyJIaWdod2F5IE9wZXJhdG9ycyJdfSw1MTM3NzYoZSl7ZS5leHBvcnRzPVsiSGlnaHdheXMgJiBSYWlsIFRyYWNrcyJdfSw3NjA3MTkoZSl7ZS5leHBvcnRzPVsiSHVsbCBNb3ZpbmcgQXZlcmFnZSAoOSkiXX0sNzM5MjAzKGUpe2UuZXhwb3J0cz1bIkh1bGxNQTkiXX0sNTk1OTk2KGUpe2UuZXhwb3J0cz1bIkh1bWFuIFJlc291cmNlcyBDb25zdWx0aW5nIFNlcnZpY2VzIl19LDY2MTM2NihlKXtlLmV4cG9ydHM9WyJIdW5nYXJ5Il19LDM0NzI0OShlKXtlLmV4cG9ydHM9WyJIeWRyb2dlbiBGdWVsIl19LDg4NzgzNyhlKXtlLmV4cG9ydHM9WyJIeWRyb3Bvd2VyIEVxdWlwbWVudCJdfSw1NzQ1NDMoZSl7ZS5leHBvcnRzPVsiSVQgU2VydmljZXMgJiBDb25zdWx0aW5nIl19LDcxNTEwNyhlKXtlLmV4cG9ydHM9WyJJbnRlZ3JhdGVkICBNaW5pbmciXX0sODg2ZTMoZSl7ZS5leHBvcnRzPVsiSW50ZWdyYXRlZCBDaXJjdWl0cyJdfSw0MTQ4NzMoZSl7ZS5leHBvcnRzPVsiSW50ZWdyYXRlZCBMb2dpc3RpY3MgT3BlcmF0b3JzIl19LDI2MjA0NShlKXtlLmV4cG9ydHM9WyJJbnRlZ3JhdGVkIE9pbCJdfSw5OTkxMzEoZSl7ZS5leHBvcnRzPVsiSW50ZWdyYXRlZCBPaWwgJiBHYXMiXX0sNzQ1NTkwKGUpe2UuZXhwb3J0cz1bIkludGVncmF0ZWQgVGVsZWNvbW11bmljYXRpb25zIFNlcnZpY2VzIl19LDU5ODA4MyhlKXtlLmV4cG9ydHM9WyJJbnRlci1kZWFsZXIgQnJva2VyIl19LDI2NzcyMihlKXtlLmV4cG9ydHM9WyJJbnRlcmlvciBEZXNpZ24gU2VydmljZXMiXX0sODI3NDU2KGUpe2UuZXhwb3J0cz1bIkludGVybmF0aW9uYWwgVHJhZGUgRmluYW5jaW5nIl19LDgyMDQ2NChlKXtlLmV4cG9ydHM9WyJJbnRlcm5ldCAmIE1haWwgT3JkZXIgRGVwYXJ0bWVudCBTdG9yZXMiXX0sNzcxMjkyKGUpe2UuZXhwb3J0cz1bIkludGVybmV0ICYgTWFpbCBPcmRlciBEaXNjb3VudCBTdG9yZXMiXX0sMzA2OChlKXtlLmV4cG9ydHM9WyJJbnRlcm5ldCBHYW1pbmciXX0sNDYzNTIzKGUpe2UuZXhwb3J0cz1bIkludGVybmV0IFNvZnR3YXJlL1NlcnZpY2VzIl19LDc5Nzk5NyhlKXtlLmV4cG9ydHM9WyJJbnRlcm5ldCBTZWN1cml0eSAmIFRyYW5zYWN0aW9ucyBTZXJ2aWNlcyJdfSw5MDU1OTMoZSl7ZS5leHBvcnRzPVsiSW50ZXJuZXQgU2VydmljZSBQcm92aWRlcnMiXX0sNjc0NzI5KGUpe2UuZXhwb3J0cz1bIkludGVybmV0IFNlcnZpY2VzIl19LDI3NTAxMihlKXtlLmV4cG9ydHM9WyJJbnRlcm5ldCBSZXRhaWwiXX0sMjcyMTYxKGUpe2UuZXhwb3J0cz1bIkludmVydGVkIEhhbW1lciJdfSw2Mzg0OTgoZSl7ZS5leHBvcnRzPVsiSW52ZXN0aW5nIGNhc2ggZmxvdyAoe3BlcmlvZH0pIl19LDk4NjkxNChlKXtlLmV4cG9ydHM9WyJJbnZlc3RtZW50IEJhbmtlcnMvQnJva2Vycy9TZXJ2aWNlIl19LDQ3NTE3NChlKXtlLmV4cG9ydHM9WyJJbnZlc3RtZW50IEJhbmtpbmciXX0sOTEyNjU4KGUpewplLmV4cG9ydHM9WyJJbnZlc3RtZW50IEJhbmtpbmcgJiBCcm9rZXJhZ2UgU2VydmljZXMiXX0sOTczNzI0KGUpe2UuZXhwb3J0cz1bIkludmVzdG1lbnQgQmFua3MvQnJva2VycyJdfSw0MDkyNzIoZSl7ZS5leHBvcnRzPVsiSW52ZXN0bWVudCBNYW5hZ2VtZW50Il19LDU5MTk2MihlKXtlLmV4cG9ydHM9WyJJbnZlc3RtZW50IE1hbmFnZW1lbnQgJiBGdW5kIE9wZXJhdG9ycyJdfSwzNzkwNjUoZSl7ZS5leHBvcnRzPVsiSW52ZXN0bWVudCBNYW5hZ2VycyJdfSw3NTYxMzYoZSl7ZS5leHBvcnRzPVsiSW52ZXN0bWVudCBTdXBwb3J0IFRvb2xzIl19LDc4NDMzMihlKXtlLmV4cG9ydHM9WyJJbnZlc3RtZW50IFRydXN0cyJdfSwyOTU5NzIoZSl7ZS5leHBvcnRzPVsiSW52ZXN0bWVudCBUcnVzdHMvTXV0dWFsIEZ1bmRzIl19LDE4MjQzNyhlKXtlLmV4cG9ydHM9WyJJbmNvbWUiXX0sODQ3NTQ0KGUpe2UuZXhwb3J0cz1bIkluY29tZSBTdGF0ZW1lbnQiXX0sMTcyMjk1KGUpe2UuZXhwb3J0cz1bIkluZGVwZW5kZW50IFBvd2VyIFByb2R1Y2VycyJdfSwxMjI5MDAoZSl7ZS5leHBvcnRzPVsiSW5kZXgiXX0sMzcyNTIwKGUpe2UuZXhwb3J0cz1bIkluZGlhIl19LDgwMjk3NShlKXtlLmV4cG9ydHM9WyJJbmRvbmVzaWEiXX0sMTk1ODc4KGUpe2UuZXhwb3J0cz1bIkluZHVzdHJpYWwgIFJlYWwgRXN0YXRlIERldmVsb3BtZW50Il19LDY1MDEwMyhlKXtlLmV4cG9ydHM9WyJJbmR1c3RyaWFsIEJpb3RlY2hub2xvZ3kgQ2hlbWljYWxzIl19LDk0ODMxMChlKXtlLmV4cG9ydHM9WyJJbmR1c3RyaWFsIENvbmdsb21lcmF0ZXMiXX0sODE3OTUxKGUpe2UuZXhwb3J0cz1bIkluZHVzdHJpYWwgQ2xvdGhpbmcgJiBVbmlmb3JtcyJdfSw2NjI2NjgoZSl7ZS5leHBvcnRzPVsiSW5kdXN0cmlhbCBFbGVjdHJpY2FsIFN3aXRjaGdlYXIiXX0sMjI2NjcwKGUpe2UuZXhwb3J0cz1bIkluZHVzdHJpYWwgR2FzIl19LDQ5NDU4OChlKXtlLmV4cG9ydHM9WyJJbmR1c3RyaWFsIE1hY2hpbmVyeSJdfSw2NTczNzEoZSl7ZS5leHBvcnRzPVsiSW5kdXN0cmlhbCBNYWNoaW5lcnkgJiBFcXVpcG1lbnQiXX0sNzY2Nzc3KGUpe2UuZXhwb3J0cz1bIkluZHVzdHJpYWwgTWFjaGluZXJ5ICYgRXF1aXBtZW50IFdob2xlc2FsZSJdfSwyNzYyNDcoZSl7ZS5leHBvcnRzPVsiSW5kdXN0cmlhbCBNb3VsZHMiXX0sNjQxNjkoZSl7ZS5leHBvcnRzPVsiSW5kdXN0cmlhbCBQYXJ0cyAmIENvbXBvbmVudHMiXX0sNTE3MjY0KGUpe2UuZXhwb3J0cz1bIkluZHVzdHJpYWwgUGxhbnQiXX0sMzIyMDgyKGUpe2UuZXhwb3J0cz1bIkluZHVzdHJpYWwgUHJvY2VzcyBGdXJuYWNlICYgT3ZlbnMiXX0sMTA4MzYxKGUpe2UuZXhwb3J0cz1bIkluZHVzdHJpYWwgUkVJVHMiXX0sNzM1NzIzKGUpe2UuZXhwb3J0cz1bIkluZHVzdHJpYWwgUnViYmVyIFByb2R1Y3RzIl19LDk5OTU2MChlKXtlLmV4cG9ydHM9WyJJbmR1c3RyaWFsIFNlcnZpY2VzIl19LDIxNDM5NihlKXtlLmV4cG9ydHM9WyJJbmR1c3RyaWFsIFNwZWNpYWx0aWVzIl19LDI0OTI0OShlKXtlLmV4cG9ydHM9WyJJbmR1c3RyaWFsIFZhbHZlIE1hbnVmYWN0dXJpbmciXX0sOTc4NTcyKGUpe2UuZXhwb3J0cz1bIkluZHVzdHJpYWxzIl19LDkwNTgzNShlKXtlLmV4cG9ydHM9WyJJbmR1c3RyaWVzIl19LDg3NzYxKGUpe2UuZXhwb3J0cz1bIkluZHVzdHJ5Il19LDg5OTA4MChlKXtlLmV4cG9ydHM9WyJJbmZvcm1hdGlvbiBUZWNobm9sb2d5IFNlcnZpY2VzIl19LDQyMDg0KGUpe2UuZXhwb3J0cz1bIklubGFuZCBXYXRlciBGcmVpZ2h0Il19LDQwMzQ3NChlKXtlLmV4cG9ydHM9WyJJbnB1dCBEZXZpY2VzIl19LDcwOTQ5NyhlKXtlLmV4cG9ydHM9WyJJbnN0cnVtZW50IGN1cnJlbmN5Il19LDMyODMxMyhlKXtlLmV4cG9ydHM9WyJJbnN0cnVtZW50IGlzIG5vdCBhbGxvd2VkIl19LDQ2NzU1MihlKXtlLmV4cG9ydHM9WyJJbnN1cmFuY2UgLSBBdXRvbW9iaWxlIl19LDg3MTE1NihlKXtlLmV4cG9ydHM9WyJJbnN1cmFuY2UgQnJva2VycyJdfSw2NjQ2NzAoZSl7ZS5leHBvcnRzPVsiSW5zdXJhbmNlIEJyb2tlcnMvU2VydmljZXMiXX0sNDQwMTg4KGUpe2UuZXhwb3J0cz1bIkljZWxhbmQiXX0sNzAyOTQ2KGUpe2UuZXhwb3J0cz1bIkljaGltb2t1IENvbnZlcnNpb24iXX0sOTI2NChlKXtlLmV4cG9ydHM9WyJJY2hpbW9rdSBDb252ZXJzaW9uIExpbmUgKDksIDI2LCA1MiwgMjYpIl19LDc1MjkzNChlKXtlLmV4cG9ydHM9WyJJY2hpbW9rdSBCYXNlIl19LDQ5MDcyOChlKXtlLmV4cG9ydHM9WyJJY2hpbW9rdSBCYXNlIExpbmUgKDksIDI2LCA1MiwgMjYpIl19LDMxMDE3NyhlKXtlLmV4cG9ydHM9WyJJY2hpbW9rdSBMZWFkaW5nIFNwYW4gQSJdfSwyOTczMTAoZSl7ZS5leHBvcnRzPVsiSWNoaW1va3UgTGVhZGluZyBTcGFuIEEgKDksIDI2LCA1MiwgMjYpIl19LDgzOTU4MShlKXtlLmV4cG9ydHM9WyJJY2hpbW9rdSBMZWFkaW5nIFNwYW4gQiJdfSw3MDY1NjIoZSl7ZS5leHBvcnRzPVsiSWNoaW1va3UgTGVhZGluZyBTcGFuIEIgKDksIDI2LCA1MiwgMjYpIl19LDM3MTc0NihlKXtlLmV4cG9ydHM9WyJJcmFxIl19LDcxMTUyNyhlKXtlLmV4cG9ydHM9WyJJcmVsYW5kIl19LDcwOTc5NChlKXtlLmV4cG9ydHM9WyJJcm9uIE9yZSBNaW5pbmciXX0sMjYzNDIxKGUpe2UuZXhwb3J0cz1bIklyb24sIFN0ZWVsIE1pbGxzICYgRm91bmRyaWVzIl19LDIwNzgyNShlKXtlLmV4cG9ydHM9WyJJc2xlIG9mIE1hbiJdfSw4MDMzNTQoZSl7ZS5leHBvcnRzPVsiSXNyYWVsIl19LDg5ODE2MyhlKXtlLmV4cG9ydHM9WyJJdGFseSJdfSw3MjQ5MTIoZSl7ZS5leHBvcnRzPVsiSeKAmW0gbm90IHJlYWR5Il19LDU4MzAwOShlKXtlLmV4cG9ydHM9WyJKb3JkYW4iXX0sMTYzNShlKXtlLmV4cG9ydHM9WyJKYW1haWNhIl19LDY1NzM3NChlKXtlLmV4cG9ydHM9WyJKYW4iXX0sMjAwMDY4KGUpe2UuZXhwb3J0cz1bIkphcGFuIl19LDY2MDI5NChlKXtlLmV4cG9ydHM9WyJKZXdlbHJ5Il19LDQ1NDk4MyhlKXtlLmV4cG9ydHM9WyJKZXdlbHJ5ICYgV2F0Y2ggUmV0YWlsZXJzIl19LDE2MTg0MChlKXtlLmV4cG9ydHM9WyJKZWFucyJdfSwKMTE4NTk4KGUpe2UuZXhwb3J0cz1bIkplcnNleSJdfSw2Njk2OTEoZSl7ZS5leHBvcnRzPVsiSnV2ZW5pbGUgRnVybml0dXJlIl19LDE4Mzk1OShlKXtlLmV4cG9ydHM9WyJKdWwiXX0sODc3NDUoZSl7ZS5leHBvcnRzPVsiSnVuIl19LDI4NTI5MyhlKXtlLmV4cG9ydHM9WyJPbWFuIl19LDI0MDIyKGUpe2UuZXhwb3J0cz1bIk9ubGluZSBKb2IgcG9ydGFscyJdfSw3MjgzMzcoZSl7ZS5leHBvcnRzPVsiT2N0Il19LDEyODc0KGUpe2UuZXhwb3J0cz1bIk9mZmljZSBFcXVpcG1lbnQiXX0sODQ5MTE4KGUpe2UuZXhwb3J0cz1bIk9mZmljZSBFcXVpcG1lbnQvU3VwcGxpZXMiXX0sNDI0ODYxKGUpe2UuZXhwb3J0cz1bIk9mZmljZSBFcXVpcG1lbnQgJiBTdXBwbGllcyBSZW50YWwiXX0sMTM3NTI1KGUpe2UuZXhwb3J0cz1bIk9mZmljZSBFcXVpcG1lbnQgV2hvbGVzYWxlIl19LDc5Nzc0OChlKXtlLmV4cG9ydHM9WyJPZmZpY2UgRnVybml0dXJlIl19LDkyNzcxMihlKXtlLmV4cG9ydHM9WyJPZmZpY2UgUkVJVHMiXX0sNDMzOTExKGUpe2UuZXhwb3J0cz1bIk9mZmljZSBSZWFsIEVzdGF0ZSBEZXZlbG9wbWVudCJdfSw3MDYzNDkoZSl7ZS5leHBvcnRzPVsiT2ZmaWNlIFJlYWwgRXN0YXRlIFNlcnZpY2VzIl19LDg1NjMyKGUpe2UuZXhwb3J0cz1bIk9mZmljZSBTdXBwbGllcyJdfSw5NDAxMTUoZSl7ZS5leHBvcnRzPVsiT2ZmaWNlIFN1cHBsaWVzICYgU3RhdGlvbmVyeSBTdG9yZXMiXX0sMzc5NTA3KGUpe2UuZXhwb3J0cz1bIk9mZmljZSBTdXBwbGllcyBXaG9sZXNhbGUiXX0sMjkwMzcwKGUpe2UuZXhwb3J0cz1bIk9mZmljZSBUZWNobm9sb2d5IEVxdWlwbWVudCJdfSw2NDc0MzkoZSl7ZS5leHBvcnRzPVsiT2lsICYgR2FzIERyaWxsaW5nIl19LDE5NDQ1MChlKXtlLmV4cG9ydHM9WyJPaWwgJiBHYXMgRXhwbG9yYXRpb24gYW5kIFByb2R1Y3Rpb24iXX0sMjgzODg1KGUpe2UuZXhwb3J0cz1bIk9pbCAmIEdhcyBQaXBlbGluZXMiXX0sMzkxNyhlKXtlLmV4cG9ydHM9WyJPaWwgJiBHYXMgUHJvZHVjdGlvbiJdfSw1MDMzMTcoZSl7ZS5leHBvcnRzPVsiT2lsICYgR2FzIFJlZmluaW5nIGFuZCBNYXJrZXRpbmciXX0sOTIyNDkzKGUpe2UuZXhwb3J0cz1bIk9pbCAmIEdhcyBTdG9yYWdlIl19LDg5NjgxOShlKXtlLmV4cG9ydHM9WyJPaWwgJiBHYXMgVHJhbnNwb3J0YXRpb24gU2VydmljZXMiXX0sMjk4MDUwKGUpe2UuZXhwb3J0cz1bIk9pbCBEcmlsbGluZyAtIE9uc2hvcmUiXX0sMTc5NDk3KGUpe2UuZXhwb3J0cz1bIk9pbCBEcmlsbGluZyAtIE9mZnNob3JlIl19LDg1NzkxOChlKXtlLmV4cG9ydHM9WyJPaWwgRXhwbG9yYXRpb24gJiBQcm9kdWN0aW9uIC0gT2Zmc2hvcmUiXX0sNzM3MjMwKGUpe2UuZXhwb3J0cz1bIk9pbCBFeHBsb3JhdGlvbiAmIFByb2R1Y3Rpb24gLSBPbnNob3JlIl19LDEyODg3OShlKXtlLmV4cG9ydHM9WyJPaWwgUGlwZWxpbmUiXX0sNzkyMDMyKGUpe2UuZXhwb3J0cz1bIk9pbCBSZWZpbmluZy9NYXJrZXRpbmciXX0sNjY5MTU2KGUpe2UuZXhwb3J0cz1bIk9pbCBSZWxhdGVkIC0gU3VydmV5aW5nICYgTWFwcGluZyBTZXJ2aWNlcyJdfSw1NjE2MTUoZSl7ZS5leHBvcnRzPVsiT2lsIFJlbGF0ZWQgRXF1aXBtZW50Il19LDU3MzE2NyhlKXtlLmV4cG9ydHM9WyJPaWwgUmVsYXRlZCBTZXJ2aWNlcyJdfSwyMjA1MyhlKXtlLmV4cG9ydHM9WyJPaWwgUmVsYXRlZCBTZXJ2aWNlcyBhbmQgRXF1aXBtZW50Il19LDg4NTU0NihlKXtlLmV4cG9ydHM9WyJPaWxmaWVsZCBTZXJ2aWNlcy9FcXVpcG1lbnQiXX0sMjA4MDc4KGUpe2UuZXhwb3J0cz1bIk9rIl19LDc2ODQwMShlKXtlLmV4cG9ydHM9WyJPcHRpY2FsIEdvb2RzIFN0b3JlcyJdfSw5Nzc4MShlKXtlLmV4cG9ydHM9WyJPcGVuIl19LDkzNjEzNShlKXtlLmV4cG9ydHM9WyJPcGVuIHtzeW1ib2x9IENoYXJ0Li4uIl19LDcwNjQwMChlKXtlLmV4cG9ydHM9WyJPcGVuIHtzeW1ib2x9IFBhZ2UuLi4iXX0sMzIxMDI5KGUpe2UuZXhwb3J0cz1bIk9wZW4gUHJpY2UiXX0sMzMyOTkoZSl7ZS5leHBvcnRzPVsiT3BlcmF0aW5nIE1hcmdpbiJdfSw0MzUwNzAoZSl7ZS5leHBvcnRzPVsiT3BlcmF0aW5nIE1hcmdpbiAoRlkpIl19LDgwMDQzMyhlKXtlLmV4cG9ydHM9WyJPcGVyYXRpbmcgTWFyZ2luIChUVE0pIl19LDQ3MjY2OShlKXtlLmV4cG9ydHM9WyJPcGVyYXRpbmcgbWFyZ2luICh7cGVyaW9kfSkiXX0sMzU3Nzc0KGUpe2UuZXhwb3J0cz1bIk9wZXJhdGluZyBjYXNoIGZsb3cgKHtwZXJpb2R9KSJdfSw4NTAyMTEoZSl7ZS5leHBvcnRzPVsiT3BlcmF0aW5nIGluY29tZSAoe3BlcmlvZH0pIl19LDgxMzIxOChlKXtlLmV4cG9ydHM9WyJPcmdhbmljICYgRWNvbG9naWNhbGx5IFByb2R1Y2VkIEZhYnJpYyJdfSwzMDE3MzEoZSl7ZS5leHBvcnRzPVsiT3JnYW5pYyBGZXJ0aWxpemVyIl19LDM1OTE1MChlKXtlLmV4cG9ydHM9WyJPc2NpbGxhdG9ycyJdfSw1NDA0NDAoZSl7ZS5leHBvcnRzPVsiT3NjaWxsYXRvcnMgUmF0aW5nIl19LDQ2MzgwKGUpe2UuZXhwb3J0cz1bIk90aGVyIENvbnN1bWVyIFNlcnZpY2VzIl19LDkwNzc1MChlKXtlLmV4cG9ydHM9WyJPdGhlciBDb25zdW1lciBTcGVjaWFsdGllcyJdfSwxMDU4NzEoZSl7ZS5leHBvcnRzPVsiT3RoZXIgTWV0YWxzL01pbmVyYWxzIl19LDM2Njc4OShlKXtlLmV4cG9ydHM9WyJPdGhlciBTcGVjaWFsdHkgUmV0YWlsZXJzIl19LDUxMTU4NihlKXtlLmV4cG9ydHM9WyJPdGhlciBUcmFuc3BvcnRhdGlvbiJdfSw0MzA3OTgoZSl7ZS5leHBvcnRzPVsiT3V0ZG9vciBBZHZlcnRpc2luZyJdfSwyNzc5NDIoZSl7ZS5leHBvcnRzPVsiT3V0c291cmNpbmcgJiBTdGFmZmluZyBTZXJ2aWNlcyJdfSwxNzI1NDMoZSl7ZS5leHBvcnRzPVsiT3V0c2lkZSJdfSwzNzY1MzIoZSl7ZS5leHBvcnRzPVsiT3V0cGVyZm9ybWluZyBTTUE1MCJdfSwyMjI1OTcoZSl7ZS5leHBvcnRzPVsiT3ZlcmJvdWdodCJdfSw4MTEyMDMoZSl7ZS5leHBvcnRzPVsiT3ZlcnNvbGQiXX0sNTY4MzQ2KGUpe2UuZXhwb3J0cz1bIk92ZXJ2aWV3Il19LDg2MzkxNihlKXsKZS5leHBvcnRzPVsiTE5HIFRyYW5zcG9ydGF0aW9uICYgU3RvcmFnZSJdfSw3Mzg0MDcoZSl7ZS5leHBvcnRzPVsiTG90dGVyeSBPcGVyYXRvcnMiXX0sODg4Njc4KGUpe2UuZXhwb3J0cz1bIkxvdyJdfSw5NjI2NTQoZSl7ZS5leHBvcnRzPVsiTG93IDUyVyJdfSw0NDM0MyhlKXtlLmV4cG9ydHM9WyJMb2NhbCBBZ2VuY2llcyJdfSwyOTkxNzUoZSl7ZS5leHBvcnRzPVsiTG9jb21vdGl2ZSBFbmdpbmVzICYgUm9sbGluZyBTdG9jayJdfSw5ODAyNDYoZSl7ZS5leHBvcnRzPVsiTG9nZ2luZyAmIFNhd21pbGxzIl19LDc0ODAxNChlKXtlLmV4cG9ydHM9WyJMb25nIExvd2VyIFNoYWRvdyJdfSw4MTA4MTcoZSl7ZS5leHBvcnRzPVsiTG9uZyBVcHBlciBTaGFkb3ciXX0sMTYwODIoZSl7ZS5leHBvcnRzPVsiTG9va3MgbGlrZSB5b3UgYXJlIHRyeWluZyB0byBzZXQgdXAgYSBzY3JlZW5lciBhbGVydCB3aXRoIG5vIHNhdmVkIGZpbHRlcnMuIFBsZWFzZSBzZWxlY3QgeW91ciBwcmVmZXJyZWQgZmlsdGVyICYgc2F2ZSB5b3VyIHNjcmVlbiB0byBjcmVhdGUgYW4gYWxlcnQuIl19LDI4Mjc3MyhlKXtlLmV4cG9ydHM9WyJMYXR2aWEiXX0sNDcxOTgxKGUpe2UuZXhwb3J0cz1bIkxhdW5kcnkgU3VwcGxpZXMiXX0sNDU2NTM3KGUpe2UuZXhwb3J0cz1bIkxhbmQgRGl2aXNpb24gJiBTdWJkaXZpc2lvbiJdfSw1OTExODAoZSl7ZS5leHBvcnRzPVsiTGFvcyJdfSw1NTIyNzMoZSl7ZS5leHBvcnRzPVsiTGFwdG9wICYgRGVza3RvcCBDb21wdXRlcnMiXX0sNjA5NjY2KGUpe2UuZXhwb3J0cz1bIkxhc2VyIEVxdWlwbWVudCJdfSwyODUzMzMoZSl7ZS5leHBvcnRzPVsiTGFzdCBZZWFyIFJldmVudWUgKEZZKSJdfSw5NTA4MDIoZSl7ZS5leHBvcnRzPVsiTGFzdCBmaXNjYWwgcGVyaW9kIl19LDUzMDQ0NChlKXtlLmV4cG9ydHM9WyJMYXN0IGZpc2NhbCBwZXJpb2QgZW5kIGRhdGUiXX0sNzkyMjYwKGUpe2UuZXhwb3J0cz1bIkxhc3QgcGF5bWVudCBhbW91bnQiXX0sNTY0MDg5KGUpe2UuZXhwb3J0cz1bIkxhc3QgcGF5bWVudCBkYXRlIl19LDI5MjAzOChlKXtlLmV4cG9ydHM9WyJMZXTigJlzIGRvIHRoaXMiXX0sNDU4ODg4KGUpe2UuZXhwb3J0cz1bIkxlYWQgT3JlIE1pbmluZyJdfSw5MDgwNDMoZSl7ZS5leHBvcnRzPVsiTGVhdGhlciBHb29kcyJdfSw5NDU2MTMoZSl7ZS5leHBvcnRzPVsiTGViYW5vbiJdfSw4NjYxNzYoZSl7ZS5leHBvcnRzPVsiTGVnYWwgU2VydmljZXMiXX0sNzUyMjYoZSl7ZS5leHBvcnRzPVsiTGVpc3VyZSAmIFJlY3JlYXRpb24iXX0sNjE0MzMwKGUpe2UuZXhwb3J0cz1bIkxlaXN1cmUgUHJvZHVjdHMgV2hvbGVzYWxlIl19LDY1MzM5NShlKXtlLmV4cG9ydHM9WyJMZXNvdGhvIl19LDg5MjEwMChlKXtlLmV4cG9ydHM9WyJMaXRodWFuaWEiXX0sMTk0MDkxKGUpe2UuZXhwb3J0cz1bIkxpYWJpbGl0aWVzIChNUlEpIl19LDgyOTY1NihlKXtlLmV4cG9ydHM9WyJMaWFiaWxpdGllcyAoRlkpIl19LDY2MjEoZSl7ZS5leHBvcnRzPVsiTGliZXJpYSJdfSw1NTUzNTIoZSl7ZS5leHBvcnRzPVsiTGlieWEiXX0sMzg2NjY3KGUpe2UuZXhwb3J0cz1bIkxpZWNodGVuc3RlaW4iXX0sNjQzMzY1KGUpe2UuZXhwb3J0cz1bIkxpZmUvSGVhbHRoIEluc3VyYW5jZSJdfSw0ODc2NjAoZSl7ZS5leHBvcnRzPVsiTGlmZSAmIEhlYWx0aCBJbnN1cmFuY2UiXX0sNDkzMjY4KGUpe2UuZXhwb3J0cz1bIkxpZmUgJiBIZWFsdGggUmVpbnN1cmFuY2UiXX0sOTk0MTkyKGUpe2UuZXhwb3J0cz1bIkxpZmUgSW5zdXJhbmNlIl19LDcyODY0OShlKXtlLmV4cG9ydHM9WyJMaWdodCBUcnVja3MiXX0sMTkxNjMwKGUpe2UuZXhwb3J0cz1bIkxpZ2h0aW5nIEVxdWlwbWVudCJdfSw0NzkwOTEoZSl7ZS5leHBvcnRzPVsiTGlnaHRpbmcgRml4dHVyZXMiXX0sNjg0OTAxKGUpe2UuZXhwb3J0cz1bIkxpbmdlcmllIl19LDk3NTQ0NyhlKXtlLmV4cG9ydHM9WyJMdXhlbWJvdXJnIl19LDY3NTEwKGUpe2UuZXhwb3J0cz1bIkx1eHVyeSBBY2Nlc3NvcmllcyJdfSw0MDkzNTcoZSl7ZS5leHBvcnRzPVsiTHV4dXJ5IENhciBEZWFsZXJzIl19LDQyNTMwMShlKXtlLmV4cG9ydHM9WyJNT00iXX0sOTQwOTQzKGUpe2UuZXhwb3J0cz1bIk1BQ0QgTGV2ZWwiXX0sMjQ3NTYwKGUpe2UuZXhwb3J0cz1bIk1BQ0QgTGV2ZWwgKDEyLCAyNikiXX0sMzI3OTExKGUpe2UuZXhwb3J0cz1bIk1BQ0QgU2lnbmFsIl19LDk1MDY2MihlKXtlLmV4cG9ydHM9WyJNQUNEIFNpZ25hbCAoMTIsIDI2KSJdfSw1MTgwNDEoZSl7ZS5leHBvcnRzPVsiTUYiXX0sMzIwMDU4KGUpe2UuZXhwb3J0cz1bIk1vdG9yIFZlaGljbGVzIl19LDQ4MDA0NShlKXtlLmV4cG9ydHM9WyJNb3RvcmN5Y2xlIERlYWxlcnMiXX0sOTIyNjIoZSl7ZS5leHBvcnRzPVsiTW90b3JjeWNsZSBQYXJ0cyAmIEFjY2Vzc29yaWVzIl19LDU0MjY4KGUpe2UuZXhwb3J0cz1bIk1vdG9yY3ljbGVzICYgU2Nvb3RlcnMiXX0sMjAwNDUyKGUpe2UuZXhwb3J0cz1bIk1vdmluZyBBdmVyYWdlcyBSYXRpbmciXX0sNTg1ODQ1KGUpe2UuZXhwb3J0cz1bIk1vdmllIFRoZWF0ZXJzICYgTW92aWUgUHJvZHVjdHMiXX0sMTkyOTMxKGUpe2UuZXhwb3J0cz1bIk1vdmllLCBUViBQcm9kdWN0aW9uICYgRGlzdHJpYnV0aW9uIl19LDM3MDEwKGUpe2UuZXhwb3J0cz1bIk1vdmllcy9FbnRlcnRhaW5tZW50Il19LDEwMDAyNihlKXtlLmV4cG9ydHM9WyJNb3phbWJpcXVlIl19LDY4MjU1NyhlKXtlLmV4cG9ydHM9WyJNb2JpbGUgQXBwbGljYXRpb24gU29mdHdhcmUiXX0sNjI1NDUzKGUpe2UuZXhwb3J0cz1bIk1vYmlsZSBQaG9uZSBSZXRhaWxlcnMiXX0sNzUwMDMzKGUpe2UuZXhwb3J0cz1bIk1vYmlsZSBTeXN0ZW0gU29mdHdhcmUiXX0sMzIxMzM2KGUpe2UuZXhwb3J0cz1bIk1vbGRvdmEiXX0sNTMxNTAyKGUpe2UuZXhwb3J0cz1bIk1vbWVudHVtICgxMCkiXX0sMjA4OTA0KGUpe2UuZXhwb3J0cz1bIk1vbmFjbyJdfSw5MTM3MDkoZSl7ZS5leHBvcnRzPVsiTW9uZ29saWEiXX0sMTc4MDk2KGUpe2UuZXhwb3J0cz1bIk1vbmV5IEZsb3cgKDE0KSJdfSw3MzkzNjUoZSl7ZS5leHBvcnRzPVsiTW9udGVuZWdybyJdfSwKNDY3OTgyKGUpe2UuZXhwb3J0cz1bIk1vbnRobHkgUGVyZiJdfSw4MjI4NzUoZSl7ZS5leHBvcnRzPVsiTW9udGhseSBQZXJmb3JtYW5jZSJdfSwzMzMyNjIoZSl7ZS5leHBvcnRzPVsiTW9udHNlcnJhdCJdfSw3MjE0MzMoZSl7ZS5leHBvcnRzPVsiTW9yb2NjbyJdfSw3MTQ0NjMoZSl7ZS5leHBvcnRzPVsiTW9ybmluZyBTdGFyIl19LDQ5ODE1NChlKXtlLmV4cG9ydHM9WyJNb3J0Z2FnZSBSRUlUcyJdfSw2NTY2MDMoZSl7ZS5leHBvcnRzPVsiTW9zdCB2b2xhdGlsZSJdfSw1NTQxNTEoZSl7ZS5leHBvcnRzPVsiTW9zdCBjYXBpdGFsaXplZCJdfSwyNzc5ODQoZSl7ZS5leHBvcnRzPVsiTWF0dXJpdHkgRGF0ZSJdfSw2Njc5OTYoZSl7ZS5leHBvcnRzPVsiTWF1cml0YW5pYSJdfSwxNTAwNTQoZSl7ZS5leHBvcnRzPVsiTWF1cml0aXVzIl19LDQ4MzE0OShlKXtlLmV4cG9ydHM9WyJNYXlvdHRlIl19LDMwNzA2MihlKXtlLmV4cG9ydHM9WyJNYWNhbyJdfSw1MzIyNjkoZSl7ZS5leHBvcnRzPVsiTWFjYXUsIENoaW5hIl19LDQ1OTEwOChlKXtlLmV4cG9ydHM9WyJNYWNlZG9uaWEiXX0sNzQ1MDAzKGUpe2UuZXhwb3J0cz1bIk1hY2hpbmUgVG9vbHMiXX0sNjYwMTg4KGUpe2UuZXhwb3J0cz1bIk1hZGFnYXNjYXIiXX0sMTI3NjMzKGUpe2UuZXhwb3J0cz1bIk1hZ2F6aW5lIFB1Ymxpc2hpbmciXX0sNjAyNTE5KGUpe2UuZXhwb3J0cz1bIk1haW5sYW5kIENoaW5hIl19LDk4MDc4NihlKXtlLmV4cG9ydHM9WyJNYWludGVuYW5jZSAmIFJlcGFpciBTZXJ2aWNlcyJdfSw0NDc3NTMoZSl7ZS5leHBvcnRzPVsiTWFqb3IiXX0sMTQzNzc0KGUpe2UuZXhwb3J0cz1bIk1ham9yIEJhbmtzIl19LDkxNzU3OChlKXtlLmV4cG9ydHM9WyJNYWpvciBQaGFybWFjZXV0aWNhbHMiXX0sMjczMTAzKGUpe2UuZXhwb3J0cz1bIk1ham9yIFRlbGVjb21tdW5pY2F0aW9ucyJdfSwyNDU5NDgoZSl7ZS5leHBvcnRzPVsiTWFsYXdpIl19LDYyNzk2NyhlKXtlLmV4cG9ydHM9WyJNYWxheXNpYSJdfSwzMzE2MTUoZSl7ZS5leHBvcnRzPVsiTWFsZGl2ZXMiXX0sNjIzNDY1KGUpe2UuZXhwb3J0cz1bIk1hbGkiXX0sODQyMzEyKGUpe2UuZXhwb3J0cz1bIk1hbHQgcHJvZHVjZXJzIl19LDU2MzIzNyhlKXtlLmV4cG9ydHM9WyJNYWx0YSJdfSw4MTE0ODMoZSl7ZS5leHBvcnRzPVsiTWFuYWdlZCBIZWFsdGggQ2FyZSJdfSw1MjkzNDcoZSl7ZS5leHBvcnRzPVsiTWFuYWdlZCBIZWFsdGggY2FyZSJdfSwxMjIxMDIoZSl7ZS5leHBvcnRzPVsiTWFuYWdlbWVudCBDb25zdWx0aW5nIFNlcnZpY2VzIl19LDk5ODYxNihlKXtlLmV4cG9ydHM9WyJNYW51YWwgUmVmcmVzaCJdfSwxMDMzMDUoZSl7ZS5leHBvcnRzPVsiTWFyIl19LDI3ODYxNChlKXtlLmV4cG9ydHM9WyJNYXJrZXQgQ2FwaXRhbGl6YXRpb24iXX0sODQxNzYxKGUpe2UuZXhwb3J0cz1bIk1hcmtldCBSZXNlYXJjaCJdfSw5MzkxMzYoZSl7ZS5leHBvcnRzPVsiTWFya2V0IGN1cnJlbmN5Il19LDg5NzM5MyhlKXtlLmV4cG9ydHM9WyJNYXJrZXRpbmcgQ29uc3VsdGluZyBTZXJ2aWNlcyJdfSw1NTMxNjQoZSl7ZS5leHBvcnRzPVsiTWFya2V0cyJdfSwyMzcxNTIoZSl7ZS5leHBvcnRzPVsiTWFyaW5hcyJdfSwyMzU5OTQoZSl7ZS5leHBvcnRzPVsiTWFyaW5lIENhcmdvIEhhbmRsaW5nIFNlcnZpY2VzIl19LDY5MDM4OChlKXtlLmV4cG9ydHM9WyJNYXJpbmUgRnJlaWdodCAmIExvZ2lzdGljcyJdfSw3NjQwOTkoZSl7ZS5leHBvcnRzPVsiTWFyaW5lIExvZ2lzdGljcyJdfSw2OTQ4NDkoZSl7ZS5leHBvcnRzPVsiTWFyaW5lIFBhc3NlbmdlciBUcmFuc3BvcnRhdGlvbiJdfSw1MTE0NTIoZSl7ZS5leHBvcnRzPVsiTWFyaW5lIFBvcnQgU2VydmljZXMiXX0sODA3NTYxKGUpe2UuZXhwb3J0cz1bIk1hcmluZSBTaGlwcGluZyJdfSw0Nzc4NDMoZSl7ZS5leHBvcnRzPVsiTWFyc2hhbGwgSXNsYW5kcyJdfSwxMzUxNTIoZSl7ZS5leHBvcnRzPVsiTWFydGluaXF1ZSJdfSw1MzU3ODMoZSl7ZS5leHBvcnRzPVsiTWFydWJvenUgQmxhY2siXX0sOTUyNTY1KGUpe2UuZXhwb3J0cz1bIk1hcnVib3p1IFdoaXRlIl19LDEwOTM3MihlKXtlLmV4cG9ydHM9WyJNZXRhbCBDb250YWluZXJzICYgUGFja2FnaW5nIl19LDUzNjc5NShlKXtlLmV4cG9ydHM9WyJNZXRhbCBGYWJyaWNhdGlvbiJdfSw1NTk3NjAoZSl7ZS5leHBvcnRzPVsiTWV0YWwgTWVyY2hhbnQgV2hvbGVzYWxlcnMiXX0sMjI5NTQwKGUpe2UuZXhwb3J0cz1bIk1ldGFsIFNlcnZpY2UgQ2VudGVycyJdfSw5NjI0MjcoZSl7ZS5leHBvcnRzPVsiTWV0YWxsaWMgUm9sbGluZyAmIERyYXdpbmcgUHJvZHVjdHMiXX0sODY1NzAwKGUpe2UuZXhwb3J0cz1bIk1leGljbyJdfSw1OTgyNDcoZSl7ZS5leHBvcnRzPVsiTWV4aWNvIGFuZCBTb3V0aCBBbWVyaWNhIl19LDI1MjIwMyhlKXtlLmV4cG9ydHM9WyJNZWRpYSBDb25nbG9tZXJhdGVzIl19LDI2NjAyMChlKXtlLmV4cG9ydHM9WyJNZWRpYSBCdXlpbmcgQWdlbmN5Il19LDU5OTE1MChlKXtlLmV4cG9ydHM9WyJNZWRpY2FsL051cnNpbmcgU2VydmljZXMiXX0sNDMyNjYyKGUpe2UuZXhwb3J0cz1bIk1lZGljYWwgJiBEaWFnbm9zdGljIExhYm9yYXRvcmllcyJdfSw4NzA1NTkoZSl7ZS5leHBvcnRzPVsiTWVkaWNhbCBEZXZpY2VzICYgSW1wbGFudHMiXX0sNjU5OTcxKGUpe2UuZXhwb3J0cz1bIk1lZGljYWwgRGlhZ25vc3RpYyAmIFRlc3RpbmcgRXF1aXBtZW50Il19LDUwNzg1KGUpe2UuZXhwb3J0cz1bIk1lZGljYWwgRGlzdHJpYnV0b3JzIl19LDc5MjIwMChlKXtlLmV4cG9ydHM9WyJNZWRpY2FsIEVxdWlwbWVudCJdfSw1MzI4NTcoZSl7ZS5leHBvcnRzPVsiTWVkaWNhbCBFcXVpcG1lbnQgV2hvbGVzYWxlIl19LDcyMjU1NihlKXtlLmV4cG9ydHM9WyJNZWRpY2FsIEVxdWlwbWVudCwgU3VwcGxpZXMgJiBEaXN0cmlidXRpb24iXX0sNzcxNDU3KGUpe2UuZXhwb3J0cz1bIk1lZGljYWwgSW1hZ2luZyBTeXN0ZW1zIl19LDQ2Njc0OChlKXtlLmV4cG9ydHM9WyJNZWRpY2FsIE1vbml0b3JpbmcgU3lzdGVtcyJdfSw3Nzc3OChlKXtlLmV4cG9ydHM9WyJNZWRpY2FsIFByb3N0aGV0aWNzIl19LAo0MzMyNjQoZSl7ZS5leHBvcnRzPVsiTWVkaWNhbCBTb2Z0d2FyZSAmIFRlY2hub2xvZ3kgU2VydmljZXMiXX0sMzc2MzE2KGUpe2UuZXhwb3J0cz1bIk1lZGljYWwgU3BlY2lhbHRpZXMiXX0sMjYwNDMyKGUpe2UuZXhwb3J0cz1bIk1lZGljYWwgU3VwcGxpZXMiXX0sNjAzODMoZSl7ZS5leHBvcnRzPVsiTWVtb3J5IENoaXBzIChSQU0pIl19LDc5NjEwKGUpe2UuZXhwb3J0cz1bIk1lbidzIENsb3RoaW5nIl19LDk5NjY0OShlKXtlLmV4cG9ydHM9WyJNZW4ncyBBcHBhcmVsIFJldGFpbGVycyJdfSw3OTYwODIoZSl7ZS5leHBvcnRzPVsiTWVuJ3MgRm9vdHdlYXIiXX0sNzA2NjYoZSl7ZS5leHBvcnRzPVsiTWVyY2hhbnQgQmFua3MiXX0sNjA2MjY2KGUpe2UuZXhwb3J0cz1bIk1pY3JvZmluYW5jaW5nIl19LDI5MTA5OChlKXtlLmV4cG9ydHM9WyJNaWNyb25lc2lhIChGZWRlcmF0ZWQgU3RhdGVzIG9mKSJdfSw2ODU3NTEoZSl7ZS5leHBvcnRzPVsiTWlkZGxlIEVhc3QiXX0sNjAzMDY1KGUpe2UuZXhwb3J0cz1bIk1pZGRsZSBFYXN0IC8gQWZyaWNhIl19LDgzODMzMChlKXtlLmV4cG9ydHM9WyJNaW5pbmcgTWFjaGluZXJ5ICYgRXF1aXBtZW50IE1hbnVmYWN0dXJpbmciXX0sNDA0ODU2KGUpe2UuZXhwb3J0cz1bIk1pbmluZyBTdXBwb3J0IEFjdGl2aXRpZXMiXX0sODE2ODQ1KGUpe2UuZXhwb3J0cz1bIk1pbmluZyBTdXBwb3J0IFNlcnZpY2VzICYgRXF1aXBtZW50Il19LDIwNjk4MyhlKXtlLmV4cG9ydHM9WyJNaW5vciJdfSwxNTcwMjMoZSl7ZS5leHBvcnRzPVsiTWlzY2VsbGFuZW91cyJdfSwxMzI5ODQoZSl7ZS5leHBvcnRzPVsiTWlzY2VsbGFuZW91cyBDb21tZXJjaWFsIFNlcnZpY2VzIl19LDk0NzcxNChlKXtlLmV4cG9ydHM9WyJNaXNjZWxsYW5lb3VzIE1hbnVmYWN0dXJpbmciXX0sMjY1NjIoZSl7ZS5leHBvcnRzPVsiTWt0IENhcCJdfSwxMDAwMyhlKXtlLmV4cG9ydHM9WyJNdXR1YWwgRnVuZHMiXX0sOTQwOTg2KGUpe2UuZXhwb3J0cz1bIk11dHVhbCBmdW5kIl19LDkxMzU2MShlKXtlLmV4cG9ydHM9WyJNdWx0aS1MaW5lIEluc3VyYW5jZSJdfSw2NzY1MTgoZSl7ZS5leHBvcnRzPVsiTXVsdGlsaW5lIEluc3VyYW5jZSAmIEJyb2tlcnMiXX0sMTczMDczKGUpe2UuZXhwb3J0cz1bIk11bHRpbGluZSBVdGlsaXRpZXMiXX0sNDQ3NjUxKGUpe2UuZXhwb3J0cz1bIk11bmljaXBhbGl0eSJdfSwyNDQ1NDUoZSl7ZS5leHBvcnRzPVsiTXVzZXVtcyAmIEhpc3RvcmljIFBsYWNlcyJdfSw2MjczNDAoZSl7ZS5leHBvcnRzPVsiTXVzaWMsIE11c2ljIFZpZGVvIFByb2R1Y3Rpb24gJiBEaXN0cmlidXRpb24iXX0sOTA4NzY5KGUpe2UuZXhwb3J0cz1bIk11c2ljYWwgSW5zdHJ1bWVudCBSZXRhaWxlcnMiXX0sNzE2NjY5KGUpe2UuZXhwb3J0cz1bIk11c2ljYWwgSW5zdHJ1bWVudHMiXX0sMjM5NDMoZSl7ZS5leHBvcnRzPVsiTXlhbm1hciJdfSwyMjgyOTEoZSl7ZS5leHBvcnRzPVsiTm8gbWF0Y2hlcyJdfSw0MTc3NyhlKXtlLmV4cG9ydHM9WyJObyBzeW1ib2xzIG1hdGNoIHlvdXIgY3JpdGVyaWEiXX0sMzQ5ODg5KGUpe2UuZXhwb3J0cz1bIk5vdCBFcXVhbCJdfSw1NjE2MDAoZSl7ZS5leHBvcnRzPVsiTm90aWZpY2F0aW9uIl19LDY0NjU0NShlKXtlLmV4cG9ydHM9WyJOb3YiXX0sOTg3NzE1KGUpe2UuZXhwb3J0cz1bIk5vbi1BbGNvaG9saWMgQmV2ZXJhZ2VzIl19LDU5MjUzOChlKXtlLmV4cG9ydHM9WyJOb24tRW5lcmd5IE1pbmVyYWxzIl19LDU0MjIzNShlKXtlLmV4cG9ydHM9WyJOb24tUGFwZXIgQ29udGFpbmVycyAmIFBhY2thZ2luZyJdfSw5ODk5NDAoZSl7ZS5leHBvcnRzPVsiTm9uLWZlcnJvdXMgTWV0YWwgTWluaW5nIl19LDgxOTU2NihlKXtlLmV4cG9ydHM9WyJOb24tZmVycm91cyBNZXRhbCBQcm9jZXNzaW5nIl19LDk2NzQxMihlKXtlLmV4cG9ydHM9WyJOb3Jmb2xrIElzbGFuZCJdfSw4NDU1MjMoZSl7ZS5leHBvcnRzPVsiTm9yd2F5Il19LDY4OTcxNihlKXtlLmV4cG9ydHM9WyJOb3J0aCBBbWVyaWNhIl19LDcyOTc4MihlKXtlLmV4cG9ydHM9WyJOb3J0aCBNYWNlZG9uaWEiXX0sNjEyNTU3KGUpe2UuZXhwb3J0cz1bIk5vcnRoZXJuIE1hcmlhbmEgSXNsYW5kcyJdfSw5NTY0NjIoZSl7ZS5leHBvcnRzPVsiTmF0aW9uYWwgQWdlbmN5Il19LDIzMTMzNChlKXtlLmV4cG9ydHM9WyJOYXRpb25hbCBBZ2VuY2llcyJdfSwyMjgyMTEoZSl7ZS5leHBvcnRzPVsiTmF0dXJhbCBGYWJyaWNzIl19LDEwNTUzMihlKXtlLmV4cG9ydHM9WyJOYXR1cmFsIEdhcyBEaXN0cmlidXRpb24iXX0sNjUzMDMwKGUpe2UuZXhwb3J0cz1bIk5hdHVyYWwgR2FzIEV4cGxvcmF0aW9uICYgUHJvZHVjdGlvbiAtIE9uc2hvcmUiXX0sMjM3MzQ5KGUpe2UuZXhwb3J0cz1bIk5hdHVyYWwgR2FzIEV4cGxvcmF0aW9uICYgUHJvZHVjdGlvbiAtIE9mZnNob3JlIl19LDEyNDk5OChlKXtlLmV4cG9ydHM9WyJOYXR1cmFsIEdhcyBQaXBlbGluZSJdfSwyNTg3ODUoZSl7ZS5leHBvcnRzPVsiTmF0dXJhbCBHYXMgVXRpbGl0aWVzIl19LDQ3MzQzNyhlKXtlLmV4cG9ydHM9WyJOYXVydSJdfSw3MzQ5OTMoZSl7ZS5leHBvcnRzPVsiTmFtZSJdfSw1NzA2MTgoZSl7ZS5leHBvcnRzPVsiTmFtaWJpYSJdfSwxNzgxMTQoZSl7ZS5leHBvcnRzPVsiTmV0IE1hcmdpbiJdfSw5NDA3MTEoZSl7ZS5leHBvcnRzPVsiTmV0IE1hcmdpbiAoRlkpIl19LDE3NTE0MChlKXtlLmV4cG9ydHM9WyJOZXQgTWFyZ2luIChUVE0pIl19LDg0NTQ5NihlKXtlLmV4cG9ydHM9WyJOZXQgRGVidCJdfSw1MjY2OTgoZSl7ZS5leHBvcnRzPVsiTmV0IERlYnQgKE1SUSkiXX0sOTgzNjcxKGUpe2UuZXhwb3J0cz1bIk5ldCBJbmNvbWUgKEFubnVhbCBZb1kgR3Jvd3RoKSJdfSwxMzE2MzMoZSl7ZS5leHBvcnRzPVsiTmV0IEluY29tZSAoRlkpIl19LDE0ODU3MChlKXtlLmV4cG9ydHM9WyJOZXQgSW5jb21lIChRdWFydGVybHkgUW9RIEdyb3d0aCkiXX0sODUzMzQ2KGUpe2UuZXhwb3J0cz1bIk5ldCBJbmNvbWUgKFF1YXJ0ZXJseSBZb1kgR3Jvd3RoKSJdfSw3ODkwNyhlKXtlLmV4cG9ydHM9WyJOZXQgSW5jb21lIChUVE0gWW9ZIEdyb3d0aCkiXX0sCjg5MDU0OChlKXtlLmV4cG9ydHM9WyJOZXQgbWFyZ2luICh7cGVyaW9kfSkiXX0sNTEwNzI2KGUpe2UuZXhwb3J0cz1bIk5ldCBpbmNvbWUgKHtwZXJpb2R9KSJdfSwyMzc1ODUoZSl7ZS5leHBvcnRzPVsiTmV0IGluY29tZSBwZXIgZW1wbG95ZWUgKHtwZXJpb2R9KSJdfSw2MTY4NjIoZSl7ZS5leHBvcnRzPVsiTmV0aGVybGFuZHMiXX0sMzYzMDgzKGUpe2UuZXhwb3J0cz1bIk5ldHdvcmsgRXF1aXBtZW50Il19LDQ1NzE5NShlKXtlLmV4cG9ydHM9WyJOZXcgNTItd2VlayBoaWdoIl19LDgzODY5MChlKXtlLmV4cG9ydHM9WyJOZXcgNTItd2VlayBsb3ciXX0sMjQ5NTg4KGUpe2UuZXhwb3J0cz1bIk5ldyBDYWxlZG9uaWEiXX0sMjI5NTU2KGUpe2UuZXhwb3J0cz1bIk5ldyBDYXIgRGVhbGVycyJdfSwzMDU0MDYoZSl7ZS5leHBvcnRzPVsiTmV3IEhpZ2giXX0sNTM4MjU0KGUpe2UuZXhwb3J0cz1bIk5ldyBMb3ciXX0sNDIxNihlKXtlLmV4cG9ydHM9WyJOZXcgWmVhbGFuZCJdfSw3NTk4NDEoZSl7ZS5leHBvcnRzPVsiTmV3IG1vbnRobHkgaGlnaCJdfSw5OTY1NzIoZSl7ZS5leHBvcnRzPVsiTmV3IG1vbnRobHkgbG93Il19LDE1OTkxMChlKXtlLmV4cG9ydHM9WyJOZXcge3RpdGxlfSJdfSwyMjEzNzEoZSl7ZS5leHBvcnRzPVsiTmV3c3BhcGVyICYgTWFnYXppbmUgUHJpbnRpbmcgU2VydmljZXMiXX0sMTg2NyhlKXtlLmV4cG9ydHM9WyJOZXdzcGFwZXIgUHVibGlzaGluZyJdfSw4MTk0NzMoZSl7ZS5leHBvcnRzPVsiTmV3c3ByaW50IE1pbGxzIl19LDM1MjI4NShlKXtlLmV4cG9ydHM9WyJOZXdzIEFnZW5jaWVzIl19LDU2MTE2MShlKXtlLmV4cG9ydHM9WyJOZXh0IDUgRGF5cyJdfSw0ODU0NTQoZSl7ZS5leHBvcnRzPVsiTmV4dCBXZWVrIl19LDk0MjUwNChlKXtlLmV4cG9ydHM9WyJOZXh0IHBheW1lbnQgYW1vdW50Il19LDc1MDA1MyhlKXtlLmV4cG9ydHM9WyJOZXh0IHBheW1lbnQgZGF0ZSJdfSwxNzQzMDkoZSl7ZS5leHBvcnRzPVsiTmVnYXRpdmUgRGlyZWN0aW9uYWwgSW5kaWNhdG9yICgxNCkiXX0sNDcxMjg4KGUpe2UuZXhwb3J0cz1bIk5lcGFsIl19LDkwNzQ3MChlKXtlLmV4cG9ydHM9WyJOaXVlIl19LDYyMzQ0MChlKXtlLmV4cG9ydHM9WyJOaWNhcmFndWEiXX0sNjA2ODU0KGUpe2UuZXhwb3J0cz1bIk5pY2tlbCBPcmUgTWluaW5nIl19LDU5MjE4OShlKXtlLmV4cG9ydHM9WyJOaWdlciJdfSw4NDk4NjgoZSl7ZS5leHBvcnRzPVsiTmlnZXJpYSJdfSw0NDI0MTMoZSl7ZS5leHBvcnRzPVsiTnVjbGVhciBJUFBzIl19LDY0NDg1NihlKXtlLmV4cG9ydHM9WyJOdWNsZWFyIFV0aWxpdGllcyJdfSwxNjQwNDIoZSl7ZS5leHBvcnRzPVsiTnVtYmVyIG9mIEVtcGxveWVlcyJdfSw1Nzk0MDMoZSl7ZS5leHBvcnRzPVsiTnVtYmVyIG9mIFNoYXJlaG9sZGVycyJdfSw3MDY2NzEoZSl7ZS5leHBvcnRzPVsiTnVyc2VyeSAmIEdhcmRlbiBDZW50ZXJzIl19LDEzNDA4NShlKXtlLmV4cG9ydHM9WyJTTUExMCJdfSwzMjg3ODQoZSl7ZS5leHBvcnRzPVsiU01BMTAwIl19LDM5ODAzOShlKXtlLmV4cG9ydHM9WyJTTUEyMCJdfSw2ODA3NChlKXtlLmV4cG9ydHM9WyJTTUEyMDAiXX0sNDU3NTQzKGUpe2UuZXhwb3J0cz1bIlNNQTMwIl19LDY1OTU2MChlKXtlLmV4cG9ydHM9WyJTTUE1Il19LDU1NjQ4NihlKXtlLmV4cG9ydHM9WyJTTUE1MCJdfSwxMTQwOTkoZSl7ZS5leHBvcnRzPVsiU0FSIl19LDkzMDc1NChlKXtlLmV4cG9ydHM9WyJTRyZBIFJhdGlvIChGWSkiXX0sMjQyNTMzKGUpe2UuZXhwb3J0cz1bIlNHJkEgUmF0aW8gKFRUTSkiXX0sNzk1MDIxKGUpe2UuZXhwb3J0cz1bIlNJTlQgTUFBUlRFTiAoRFVUQ0ggUEFSVCkiXX0sNTczMzExKGUpe2UuZXhwb3J0cz1bIlNtYXJ0IEdyaWQgJiBFbGVjdHJpY2FsIFRyYW5zbWlzc2lvbiJdfSwxODQyNzAoZSl7ZS5leHBvcnRzPVsiU21hcnQgR3JpZCAmIFBvd2VyIERpc3RyaWJ1dGlvbiBDb25zdHJ1Y3Rpb24iXX0sOTA4NDUoZSl7ZS5leHBvcnRzPVsiU25hY2sgRm9vZCAmIE5vbi1jaG9jb2xhdGUgQ29uZmVjdGlvbmFyeSJdfSw1NjIzOTUoZSl7ZS5leHBvcnRzPVsiU25hcHNob3QiXX0sMzEwMDgyKGUpe2UuZXhwb3J0cz1bIlNvdXRoIEFmcmljYSJdfSw0NDc4NTQoZSl7ZS5leHBvcnRzPVsiU291dGggR2VvcmdpYSBhbmQgdGhlIFNvdXRoIFNhbmR3aWNoIElzbGFuZHMiXX0sNTg3NzUyKGUpe2UuZXhwb3J0cz1bIlNvdXRoIEtvcmVhIl19LDQ1NzE4NihlKXtlLmV4cG9ydHM9WyJTb3V0aCBTdWRhbiJdfSw3ODE5MzIoZSl7ZS5leHBvcnRzPVsiU292ZXJlaWduIl19LDgxODIyMihlKXtlLmV4cG9ydHM9WyJTb2NpYWwgTWVkaWEgJiBOZXR3b3JraW5nIl19LDgyNDU3OChlKXtlLmV4cG9ydHM9WyJTb2Z0IEZ1cm5pc2hpbmcgUmV0YWlsZXJzIl19LDU5NzEwMyhlKXtlLmV4cG9ydHM9WyJTb2Z0d2FyZSJdfSwxODE3OChlKXtlLmV4cG9ydHM9WyJTb2xvbW9uIElzbGFuZHMiXX0sNjAwNTcoZSl7ZS5leHBvcnRzPVsiU29tYWxpYSJdfSw3MzQwNzQoZSl7ZS5leHBvcnRzPVsiU2F0ZWxsaXRlICBTeXN0ZW1zICYgQWNjZXNzb3JpZXMiXX0sODU5MTE2KGUpe2UuZXhwb3J0cz1bIlNhdGVsbGl0ZSBTZXJ2aWNlIE9wZXJhdG9ycyJdfSw3NjE1MjMoZSl7ZS5leHBvcnRzPVsiU2F1ZGkgQXJhYmlhIl19LDYxMjY1NShlKXtlLmV4cG9ydHM9WyJTYXZlIl19LDMwMzY4NChlKXtlLmV4cG9ydHM9WyJTYXZlIENvbHVtbnMgQXMiXX0sMzk0MTMxKGUpe2UuZXhwb3J0cz1bIlNhdmUgU2NyZWVucyBBcyJdfSwzMzQ1MDcoZSl7ZS5leHBvcnRzPVsiU2F2aW5ncyBCYW5rcyJdfSwyMjc4NjEoZSl7ZS5leHBvcnRzPVsiU2FpbGluZyBZYWNodHMgJiBNb3RvcmJvYXRzIl19LDE5OTQ4MyhlKXtlLmV4cG9ydHM9WyJTYWludCBCYXJ0aMOpbGVteSJdfSw1NzY5NzUoZSl7ZS5leHBvcnRzPVsiU2FpbnQgS2l0dHMgYW5kIE5ldmlzIl19LDk1NTgzNShlKXtlLmV4cG9ydHM9WyJTYWludCBIZWxlbmEsIEFzY2Vuc2lvbiBhbmQgVHJpc3RhbiBkYSBDdW5oYSJdfSwyNTgzMTEoZSl7ZS5leHBvcnRzPVsiU2FpbnQgTHVjaWEiXX0sNDI1MDY0KGUpewplLmV4cG9ydHM9WyJTYWludCBNYXJ0aW4gKEZyZW5jaCBwYXJ0KSJdfSw3OTcwMzUoZSl7ZS5leHBvcnRzPVsiU2FpbnQgUGllcnJlIGFuZCBNaXF1ZWxvbiJdfSw2MjI2MTMoZSl7ZS5leHBvcnRzPVsiU2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXMiXX0sMjE5NzE3KGUpe2UuZXhwb3J0cz1bIlNhbGVzIFByb21vdGlvbnMgJiBFdmVudHMgTWFuYWdlbWVudCJdfSw1OTg5NjMoZSl7ZS5leHBvcnRzPVsiU2Ftb2EiXX0sOTk5NzYyKGUpe2UuZXhwb3J0cz1bIlNhbiBNYXJpbm8iXX0sNjI3MzU1KGUpe2UuZXhwb3J0cz1bIlNhbml0YXJ5IFByb2R1Y3RzIl19LDI3OTM4MihlKXtlLmV4cG9ydHM9WyJTYW8gVG9tZSBhbmQgUHJpbmNpcGUiXX0sMTk4NjI4KGUpe2UuZXhwb3J0cz1bIlNjaWVudGlmaWMgJiBQcmVjaXNpb24gRXF1aXBtZW50Il19LDc2NjcwNChlKXtlLmV4cG9ydHM9WyJTY2llbnRpZmljICYgU3VwZXIgQ29tcHV0ZXJzIl19LDE1NDY0KGUpe2UuZXhwb3J0cz1bIlNjcmVlbmVyIG1haW50ZW5hbmNlIl19LDU3MDM0MyhlKXtlLmV4cG9ydHM9WyJTY3JlZW5zIl19LDUwNjkxNShlKXtlLmV4cG9ydHM9WyJTZXQge2NvbG9yfSBmbGFnIl19LDkwNDEzOShlKXtlLmV4cG9ydHM9WyJTZXdhZ2UgVHJlYXRtZW50IEZhY2lsaXRpZXMiXX0sNDIwODIxKGUpe2UuZXhwb3J0cz1bIlNleWNoZWxsZXMiXX0sNDA0NDEyKGUpe2UuZXhwb3J0cz1bIlNlYS1Cb3JuZSBUYW5rZXJzIl19LDIzMjY2OShlKXtlLmV4cG9ydHM9WyJTZWFmb29kIFByb2R1Y3QgUHJlcGFyYXRpb24gJiBQYWNrYWdpbmciXX0sMzUyMTI3KGUpe2UuZXhwb3J0cz1bIlNlYXJjaCJdfSw4OTIxNjIoZSl7ZS5leHBvcnRzPVsiU2VhcmNoIEVuZ2luZXMiXX0sODcxMTEwKGUpe2UuZXhwb3J0cz1bIlNlYXJjaCBjb2x1bW4iXX0sNTk4NyhlKXtlLmV4cG9ydHM9WyJTZWFyY2ggZmlsdGVyIl19LDg1MDI5OChlKXtlLmV4cG9ydHM9WyJTZWNvbmQgZnJhY3Rpb24gcGFydCBpcyBpbnZhbGlkLiJdfSw5Nzg3MzgoZSl7ZS5leHBvcnRzPVsiU2Vjb25kYXJ5IFNtZWx0aW5nICYgQWxsb3lpbmcgb2YgQWx1bWludW0iXX0sMjc4NzI5KGUpe2UuZXhwb3J0cz1bIlNlY3RvciJdfSw3ODYwMTUoZSl7ZS5leHBvcnRzPVsiU2VjdXJpdGllcyAmIENvbW1vZGl0eSBFeGNoYW5nZXMiXX0sOTQ5MjY1KGUpe2UuZXhwb3J0cz1bIlNlY3VyaXR5ICYgU3VydmVpbGxhbmNlIl19LDEyNzI1MihlKXtlLmV4cG9ydHM9WyJTZWN1cml0eSBTZXJ2aWNlcyJdfSw5ODQ3OTAoZSl7ZS5leHBvcnRzPVsiU2VsZWN0IG1hcmtldHMiXX0sMTkyMjYoZSl7ZS5leHBvcnRzPVsiU2VsZi1TdG9yYWdlIFJFSVRzIl19LDk5MjQ3MChlKXtlLmV4cG9ydHM9WyJTZWxsaW5nIEdlbmVyYWwgJiBBZG1pbiBleHBlbnNlcyBSYXRpbyAoRlkpIl19LDU5MzgxMihlKXtlLmV4cG9ydHM9WyJTZWxsaW5nIEdlbmVyYWwgJiBBZG1pbiBleHBlbnNlcyBSYXRpbyAoVFRNKSJdfSwzOTIzODEoZSl7ZS5leHBvcnRzPVsiU2VtaWNvbmR1Y3RvciBFcXVpcG1lbnQgJiBUZXN0aW5nIl19LDE4MzIwOShlKXtlLmV4cG9ydHM9WyJTZW1pY29uZHVjdG9yIEVxdWlwbWVudCBXaG9sZXNhbGVycyJdfSw1NDk0NTkoZSl7ZS5leHBvcnRzPVsiU2VtaWNvbmR1Y3RvciBNYWNoaW5lcnkgTWFudWZhY3R1cmluZyJdfSwzMTY4NDUoZSl7ZS5leHBvcnRzPVsiU2VtaWNvbmR1Y3RvciBUZXN0aW5nIEVxdWlwbWVudCAmIFNlcnZpY2UiXX0sOTUxMzQ2KGUpe2UuZXhwb3J0cz1bIlNlbWljb25kdWN0b3IgV2hvbGVzYWxlIl19LDg1NTI4MihlKXtlLmV4cG9ydHM9WyJTZW1pY29uZHVjdG9ycyJdfSw3NzA3NzUoZSl7ZS5leHBvcnRzPVsiU2VtaXByZWNpb3VzIEdlbSBTdG9uZXMiXX0sMjI0Mjg5KGUpe2UuZXhwb3J0cz1bIlNlbmVnYWwiXX0sMTc4NDY5KGUpe2UuZXhwb3J0cz1bIlNlcCJdfSw3MTg1MjkoZSl7ZS5leHBvcnRzPVsiU2VyYmlhIl19LDI4NjM4NShlKXtlLmV4cG9ydHM9WyJTZXJ2ZXIgJiBEYXRhYmFzZSBTb2Z0d2FyZSJdfSwxNTUwOTYoZSl7ZS5leHBvcnRzPVsiU2VydmVycyAmIFN5c3RlbXMiXX0sNTM3MDU5KGUpe2UuZXhwb3J0cz1bIlNlcnZpY2VzIl19LDY1NDQwOChlKXtlLmV4cG9ydHM9WyJTZXJ2aWNlcyB0byB0aGUgSGVhbHRoIEluZHVzdHJ5Il19LDE2MTE1MihlKXtlLmV4cG9ydHM9WyJTaGFyZWhvbGRlcnMiXX0sMzc5OTMyKGUpe2UuZXhwb3J0cz1bIlNoYXJlcyJdfSw2MDUxNTkoZSl7ZS5leHBvcnRzPVsiU2hhcmVzIE91dHN0YW5kaW5nIl19LDE4ODU3NyhlKXtlLmV4cG9ydHM9WyJTaGFyZXMgRmxvYXQiXX0sOTgxNjQzKGUpe2UuZXhwb3J0cz1bIlNoYXJlcyBmbG9hdCJdfSw0MTg2OChlKXtlLmV4cG9ydHM9WyJTaGVsbCBDb21wYW5pZXMiXX0sNTExODM2KGUpe2UuZXhwb3J0cz1bIlNoaXAgUGFydCBNYW51ZmFjdHVyZXIiXX0sODk0ODkxKGUpe2UuZXhwb3J0cz1bIlNoaXAgUmVwYWlyaW5nICYgTWFpbnRhbmFuY2UiXX0sMzk5ODMxKGUpe2UuZXhwb3J0cz1bIlNoaXBidWlsZGluZyJdfSw3NzgwNChlKXtlLmV4cG9ydHM9WyJTaG9vdGluZyBTdGFyIl19LDY3NzQyNihlKXtlLmV4cG9ydHM9WyJTaG93IGN1cnJlbmN5Il19LDgyNTkyKGUpe2UuZXhwb3J0cz1bIlNob3cgZGVzY3JpcHRpb24iXX0sMjczNjgxKGUpe2UuZXhwb3J0cz1bIlNob3cgcmF0aW5nIl19LDYwMzUwNyhlKXtlLmV4cG9ydHM9WyJTaG93IHN5bWJvbCB0eXBlIl19LDE2NDk5MihlKXtlLmV4cG9ydHM9WyJTaWVycmEgTGVvbmUiXX0sMzI1MDc3KGUpe2UuZXhwb3J0cz1bIlNpZ25zICYgQWR2ZXJ0aXNpbmcgU3BlY2lhbHR5IFByb2R1Y2VycyJdfSwyNTYxMDMoZSl7ZS5leHBvcnRzPVsiU2lsdmVyIE1pbmluZyJdfSw0ODY1NzIoZSl7ZS5leHBvcnRzPVsiU2ltcGxlIE1vdmluZyBBdmVyYWdlICh7bnVtYmVyfSkiXX0sNjQzNzk1KGUpe2UuZXhwb3J0cz1bIlNpbmdhcG9yZSJdfSw3MzY0MChlKXtlLmV4cG9ydHM9WyJTaW50IE1hYXJ0ZW4gKER1dGNoIHBhcnQpIl19LDI2MzQzMihlKXtlLmV4cG9ydHM9WyJTbG92YWtpYSJdfSw3MjE4MjEoZSl7ZS5leHBvcnRzPVsiU2xvdmVuaWEiXX0sCjM1OTc2MShlKXtlLmV4cG9ydHM9WyJTcGFjZWNyYWZ0IE1hbnVmYWN0dXJpbmciXX0sNzg4MzIxKGUpe2UuZXhwb3J0cz1bIlNwYWluIl19LDgyNjU3MChlKXtlLmV4cG9ydHM9WyJTcGVjaWFsIEZvb2RzICYgV2VsYmVpbmcgUHJvZHVjdHMiXX0sNzA5NjEwKGUpe2UuZXhwb3J0cz1bIlNwZWNpYWwgRm9vZHMgJiBXZWxsYmVpbmcgUHJvZHVjdHMiXX0sMjE3NjI5KGUpe2UuZXhwb3J0cz1bIlNwZWNpYWxpemVkIEF2aWF0aW9uIFNlcnZpY2VzIl19LDY3ODEyNihlKXtlLmV4cG9ydHM9WyJTcGVjaWFsaXplZCBQcmludGluZyBTZXJ2aWNlcyJdfSw3MjQ1MTEoZSl7ZS5leHBvcnRzPVsiU3BlY2lhbGl6ZWQgUkVJVHMiXX0sNDM2NTQ5KGUpe2UuZXhwb3J0cz1bIlNwZWNpYWx0eSAmIEFkdmFuY2VkIFBoYXJtYWNldXRpY2FscyJdfSw4MTg3MDgoZSl7ZS5leHBvcnRzPVsiU3BlY2lhbHR5IE1pbmluZyAmIE1ldGFscyJdfSwzMDU1NDYoZSl7ZS5leHBvcnRzPVsiU3BlY2lhbHR5IE1pbmluZyAmIE1ldGFscyBXaG9sZXNhbGUiXX0sMzkwOTY0KGUpe2UuZXhwb3J0cz1bIlNwZWNpYWx0eSBDaGVtaWNhbHMiXX0sNjcxNzg2KGUpe2UuZXhwb3J0cz1bIlNwZWNpYWx0eSBDaGVtaWNhbHMgV2hvbGVzYWxlIl19LDIxMTI4NyhlKXtlLmV4cG9ydHM9WyJTcGVjaWFsdHkgSW5zdXJhbmNlIl19LDU1NTk3OShlKXtlLmV4cG9ydHM9WyJTcGVjaWFsdHkgSW5zdXJlcnMiXX0sMzU1MjgxKGUpe2UuZXhwb3J0cz1bIlNwZWNpYWx0eSBTdG9yZXMiXX0sMzQ1NjUzKGUpe2UuZXhwb3J0cz1bIlNwZWNpYWx0eSBUZWxlY29tbXVuaWNhdGlvbnMiXX0sOTg1ODk5KGUpe2UuZXhwb3J0cz1bIlNwb3J0aW5nICYgT3V0ZG9vciBHb29kcyJdfSw1NDQ0OTQoZSl7ZS5leHBvcnRzPVsiU3BvcnRpbmcgR29vZHMgU3RvcmVzIl19LDIxMzk4NyhlKXtlLmV4cG9ydHM9WyJTcG9ydHMgJiBPdXRkb29yIEZvb3R3ZWFyIl19LDM3MjE3MyhlKXtlLmV4cG9ydHM9WyJTcG9ydHMgJiBPdXRkb29ycyBSZXRhaWxlcnMiXX0sNjQ2MTQ0KGUpe2UuZXhwb3J0cz1bIlNwb3J0c3dlYXIgJiBPdXRkb29ycyBDbG90aGluZyJdfSwyODM0MTYoZSl7ZS5leHBvcnRzPVsiU3BvdCJdfSw4MDQ3NjYoZSl7ZS5leHBvcnRzPVsiU3JpIExhbmthIl19LDI5MTQ1NihlKXtlLmV4cG9ydHM9WyJTdGFyY2gsIFZlZ2V0YWJsZSBGYXQgJiBPaWwgTWFudWZhY3R1cmluZyJdfSwxNDIxODgoZSl7ZS5leHBvcnRzPVsiU3RhdGUgQWdlbmN5Il19LDc1MTA3NChlKXtlLmV4cG9ydHM9WyJTdGF0aW9uYXJ5IEZ1ZWwgQ2VsbHMiXX0sNDk4NjM4KGUpe2UuZXhwb3J0cz1bIlN0ZWFtICYgQWlyLUNvbmRpdGlvbmluZyBTdXBwbHkiXX0sNTcyNzUzKGUpe2UuZXhwb3J0cz1bIlN0ZWVsIl19LDQwNjI5OChlKXtlLmV4cG9ydHM9WyJTdG9jaCAlRCJdfSw1NTc4MDAoZSl7ZS5leHBvcnRzPVsiU3RvY2ggJUsiXX0sNzAwNjA4KGUpe2UuZXhwb3J0cz1bIlN0b2NoIFJTSSBGYXN0Il19LDYzOTU5NShlKXtlLmV4cG9ydHM9WyJTdG9jaCBSU0kgU2xvdyJdfSwzMTc4MzIoZSl7ZS5leHBvcnRzPVsiU3RvY2hhc3RpYyAlRCAoMTQsIDMsIDMpIl19LDIyMDcyNShlKXtlLmV4cG9ydHM9WyJTdG9jaGFzdGljICVLICgxNCwgMywgMykiXX0sNTg1Njg5KGUpe2UuZXhwb3J0cz1bIlN0b2NoYXN0aWMgUlNJIEZhc3QgKDMsIDMsIDE0LCAxNCkiXX0sMTEzNzMxKGUpe2UuZXhwb3J0cz1bIlN0b2NoYXN0aWMgUlNJIFNsb3cgKDMsIDMsIDE0LCAxNCkiXX0sNTIyMDE0KGUpe2UuZXhwb3J0cz1bIlN0b2NrcyJdfSw3NDYzMzAoZSl7ZS5leHBvcnRzPVsiU3RvcmFnZSBEZXZpY2VzIl19LDI1NTYyMihlKXtlLmV4cG9ydHM9WyJTdHJ1Y3R1cmVkIl19LDM3MDY4NyhlKXtlLmV4cG9ydHM9WyJTdWJtYXJrZXQiXX0sOTc0NDA0KGUpe2UuZXhwb3J0cz1bIlN1ZGFuIl19LDgyNjEwNyhlKXtlLmV4cG9ydHM9WyJTdWdhciAmIEFydGlmaWNpYWwgU3dlZXRlbmVycyJdfSwzMzY5ODgoZSl7ZS5leHBvcnRzPVsiU3VnYXJjYW5lIEZhcm1pbmciXX0sNzgwMjIoZSl7ZS5leHBvcnRzPVsiU3VwZXJtYXJrZXRzICYgQ29udmVuaWVuY2UgU3RvcmVzIl19LDc3NDM4NihlKXtlLmV4cG9ydHM9WyJTdXByYW5hdGlvbmFsIl19LDgxODgzNyhlKXtlLmV4cG9ydHM9WyJTdXJpbmFtZSJdfSwyNjk5NTUoZSl7ZS5leHBvcnRzPVsiU3VycHJpc2UiXX0sNTI0ODE3KGUpe2UuZXhwb3J0cz1bIlN1cnByaXNlICUiXX0sOTczOTE1KGUpe2UuZXhwb3J0cz1bIlN2YWxiYXJkIGFuZCBKYW4gTWF5ZW4iXX0sMzY5OTYzKGUpe2UuZXhwb3J0cz1bIlN3ZWRlbiJdfSw1MzIxMDkoZSl7ZS5leHBvcnRzPVsiU3dpdGNoIG5vdyJdfSw3OTYzMDcoZSl7ZS5leHBvcnRzPVsiU3dpdGNoZ2VhciJdfSw3MzM5NzEoZSl7ZS5leHBvcnRzPVsiU3dpdHplcmxhbmQiXX0sMjg3MjQ0KGUpe2UuZXhwb3J0cz1bIlN5bWJvbCBUeXBlIl19LDQ1NTU1MChlKXtlLmV4cG9ydHM9WyJTeW50aGV0aWMgRmFicmljcyJdfSwyNzQ0ODUoZSl7ZS5leHBvcnRzPVsiU3lyaWEiXX0sNTcxNzI3KGUpe2UuZXhwb3J0cz1bIlN5c3RlbSBTb2Z0d2FyZSJdfSw3MzY2MjcoZSl7ZS5leHBvcnRzPVsiUCJdfSw2MjIxNShlKXtlLmV4cG9ydHM9WyJQL0IgKEZZKSJdfSw2MTE0NTkoZSl7ZS5leHBvcnRzPVsiUC9CIChNUlEpIl19LDU5MDIwNShlKXtlLmV4cG9ydHM9WyJQL0IgcmF0aW8iXX0sMzMyMjE0KGUpe2UuZXhwb3J0cz1bIlAvQ0YgcmF0aW8iXX0sMjEzMjQ4KGUpe2UuZXhwb3J0cz1bIlAvRSJdfSw1NTczMzYoZSl7ZS5leHBvcnRzPVsiUC9FIHJhdGlvIl19LDg2NDY0OChlKXtlLmV4cG9ydHM9WyJQL0ZDRiByYXRpbyJdfSwyNzkwMTAoZSl7ZS5leHBvcnRzPVsiUC9TIl19LDc4MjYxNChlKXtlLmV4cG9ydHM9WyJQL1MgcmF0aW8iXX0sMTIxOTY5KGUpe2UuZXhwb3J0cz1bIlBFRyJdfSw2MzU0MTUoZSl7ZS5leHBvcnRzPVsiUG91bHRyeSBGYXJtaW5nIl19LDgwOTIoZSl7ZS5leHBvcnRzPVsiUG9pbnQgb2YgU2FsZSBTeXN0ZW1zIl19LDk2ODYwOShlKXtlLmV4cG9ydHM9WyJQb2xhbmQiXX0sMjk1MTYwKGUpewplLmV4cG9ydHM9WyJQb3J0IE9wZXJhdG9ycyJdfSw3NTcwNjAoZSl7ZS5leHBvcnRzPVsiUG9ydCBXYXJlaG91c2luZyBTZXJ2aWNlcyJdfSwyNzc0NDMoZSl7ZS5leHBvcnRzPVsiUG9ydGFibGUgTW90b3JzICYgR2VuZXJhdG9ycyJdfSwyNjIyNDMoZSl7ZS5leHBvcnRzPVsiUG9ydGFibGUgU2F0ZWxsaXRlIE5hdmlnYXRpb24iXX0sMzk4OTQoZSl7ZS5leHBvcnRzPVsiUG9ydHVnYWwiXX0sNzY3ODI1KGUpe2UuZXhwb3J0cz1bIlBvc2l0aXZlIERpcmVjdGlvbmFsIEluZGljYXRvciAoMTQpIl19LDMwMDY1NShlKXtlLmV4cG9ydHM9WyJQb3N0LW1hcmtldCBDaGFuZ2UiXX0sMzk5OTY4KGUpe2UuZXhwb3J0cz1bIlBvc3QtbWFya2V0IENoYW5nZSAlIl19LDc4ODAwMihlKXtlLmV4cG9ydHM9WyJQb3N0LW1hcmtldCBDbG9zZSJdfSw3NDIyOTkoZSl7ZS5leHBvcnRzPVsiUG9zdC1tYXJrZXQgSGlnaCJdfSwzOTczMzMoZSl7ZS5leHBvcnRzPVsiUG9zdC1tYXJrZXQgT3BlbiJdfSwxMzY5MDIoZSl7ZS5leHBvcnRzPVsiUG9zdC1tYXJrZXQgTG93Il19LDc5OTI2KGUpe2UuZXhwb3J0cz1bIlBvc3QtbWFya2V0IFZvbHVtZSJdfSw0NTI3MjIoZSl7ZS5leHBvcnRzPVsiUG9zdC1tYXJrZXQgY2hnIl19LDY3MzcwMyhlKXtlLmV4cG9ydHM9WyJQb3N0LW1hcmtldCBjaGcgJSJdfSw3OTEyNzEoZSl7ZS5leHBvcnRzPVsiUGFja2FnZWQgU29mdHdhcmUiXX0sOTkwNTc1KGUpe2UuZXhwb3J0cz1bIlBhY2lmaWMiXX0sMTYzODE3KGUpe2UuZXhwb3J0cz1bIlBhaW50ICYgQ29hdGluZyJdfSw0MDY2NzcoZSl7ZS5leHBvcnRzPVsiUGFpcnMiXX0sODQ0NDM2KGUpe2UuZXhwb3J0cz1bIlBha2lzdGFuIl19LDc5ODQ3NihlKXtlLmV4cG9ydHM9WyJQYWxhdSJdfSw2OTgwODMoZSl7ZS5leHBvcnRzPVsiUGFsZXN0aW5lLCBTdGF0ZSBvZiJdfSwxMDA3MjkoZSl7ZS5leHBvcnRzPVsiUGFuYW1hIl19LDM4OTIzNShlKXtlLmV4cG9ydHM9WyJQYXBlciBNaWxscyAmIFByb2R1Y3RzIl19LDgwMzQ0NihlKXtlLmV4cG9ydHM9WyJQYXBlciBQYWNrYWdpbmciXX0sMzI2NDc3KGUpe2UuZXhwb3J0cz1bIlBhcGVyIFBhY2thZ2luZyBXaG9sZXNhbGUiXX0sNTkyODQoZSl7ZS5leHBvcnRzPVsiUGFwZXIgUHJvZHVjdCBXaG9sZXNhbGUiXX0sOTQ5OTYwKGUpe2UuZXhwb3J0cz1bIlBhcGVyIFByb2R1Y3RzIl19LDcyNTY5NyhlKXtlLmV4cG9ydHM9WyJQYXB1YSBOZXcgR3VpbmVhIl19LDk0MTAyOChlKXtlLmV4cG9ydHM9WyJQYXJhYm9saWMgU0FSIl19LDQyMDEzNShlKXtlLmV4cG9ydHM9WyJQYXJhZ3VheSJdfSwyMTgzNTcoZSl7ZS5leHBvcnRzPVsiUGFya2luZyBMb3QgT3BlcmF0b3JzIl19LDg4NDMzOChlKXtlLmV4cG9ydHM9WyJQYXNzZW5nZXIgQ2FyIHJlbnRhbCJdfSw2MDc0MjcoZSl7ZS5leHBvcnRzPVsiUGFzc2VuZ2VyIFRyYW5zcG9ydGF0aW9uLCBHcm91bmQgJiBTZWEiXX0sMTQyMDEzKGUpe2UuZXhwb3J0cz1bIlBldCAmIFBldCBTdXBwbGllcyBSZXRhaWxlcnMiXX0sNTU5MDMxKGUpe2UuZXhwb3J0cz1bIlBldCBGb29kIE1hbnVmYWN0dXJpbmciXX0sNjcxOTIxKGUpe2UuZXhwb3J0cz1bIlBldHJvbGV1bSBQcm9kdWN0IFdob2xlc2FsZSJdfSwyODY3ODcoZSl7ZS5leHBvcnRzPVsiUGV0cm9sZXVtIFJlZmluaW5nIl19LDg4ODU2OChlKXtlLmV4cG9ydHM9WyJQZW5zaW9uIEZ1bmRzIl19LDExMTM0MShlKXtlLmV4cG9ydHM9WyJQZXJmb3JtYW5jZSJdfSwxNTY4NzQoZSl7ZS5leHBvcnRzPVsiUGVyaW9kIEVuZGluZyJdfSwxODczNTIoZSl7ZS5leHBvcnRzPVsiUGVyc29uYWwgJiBDYXIgTG9hbnMiXX0sOTU5MzM4KGUpe2UuZXhwb3J0cz1bIlBlcnNvbmFsIENhcmUgU2VydmljZXMiXX0sMzA1NjA0KGUpe2UuZXhwb3J0cz1bIlBlcnNvbmFsIExlZ2FsIFNlcnZpY2VzIl19LDk1NjA2MChlKXtlLmV4cG9ydHM9WyJQZXJzb25hbCBNdXNpYyBQbGF5ZXJzIl19LDY3MjM5OShlKXtlLmV4cG9ydHM9WyJQZXJzb25hbCBTZXJ2aWNlcyJdfSw2NTI2NzMoZSl7ZS5leHBvcnRzPVsiUGVyc29uYWwgUHJvZHVjdHMiXX0sOTI3MjYoZSl7ZS5leHBvcnRzPVsiUGVyc29ubmVsIFNlcnZpY2VzIl19LDU1Njg3NihlKXtlLmV4cG9ydHM9WyJQZXJwZXR1YWwiXX0sODUxMTExKGUpe2UuZXhwb3J0cz1bIlBlcnUiXX0sMjc2OTAwKGUpe2UuZXhwb3J0cz1bIlBlc3QgQ29udHJvbCBTZXJ2aWNlcyJdfSw1ODc2MDIoZSl7ZS5leHBvcnRzPVsiUGVzdGljaWRlIl19LDY5OTcyMyhlKXtlLmV4cG9ydHM9WyJQaGFybWFjZXV0aWNhbHMiXX0sMzYxODQ5KGUpe2UuZXhwb3J0cz1bIlBoYXJtYWNldXRpY2FsczogR2VuZXJpYyJdfSwxODI2NDMoZSl7ZS5leHBvcnRzPVsiUGhhcm1hY2V1dGljYWxzOiBNYWpvciJdfSw3NDUxODAoZSl7ZS5leHBvcnRzPVsiUGhhcm1hY2V1dGljYWxzOiBPdGhlciJdfSw2MTM2NDcoZSl7ZS5leHBvcnRzPVsiUGhpbGlwcGluZXMiXX0sMTMzMzMyKGUpe2UuZXhwb3J0cz1bIlBob25lcyAmIEhhbmRoZWxkIERldmljZXMiXX0sNTIzNzY0KGUpe2UuZXhwb3J0cz1bIlBob25lcyAmIFNtYXJ0IFBob25lcyJdfSwxNDU3NjIoZSl7ZS5leHBvcnRzPVsiUGhvdG92b2x0YWljIFNvbGFyIFN5c3RlbXMgJiBFcXVpcG1lbnQiXX0sODMwNzk3KGUpe2UuZXhwb3J0cz1bIlBob3RvZ3JhcGhpYyBFcXVpcG1lbnQiXX0sMzg0MzgyKGUpe2UuZXhwb3J0cz1bIlBpdGNhaXJuIl19LDg3NDQ2OShlKXtlLmV4cG9ydHM9WyJQaXZvdCBDYW1hcmlsbGEgUCJdfSw5Mzk4ODcoZSl7ZS5leHBvcnRzPVsiUGl2b3QgQ2FtYXJpbGxhIFIxIl19LDc1NDk0KGUpe2UuZXhwb3J0cz1bIlBpdm90IENhbWFyaWxsYSBSMiJdfSwxNDY0OTMoZSl7ZS5leHBvcnRzPVsiUGl2b3QgQ2FtYXJpbGxhIFIzIl19LDczNjM3MShlKXtlLmV4cG9ydHM9WyJQaXZvdCBDYW1hcmlsbGEgUzEiXX0sNzU1Nzg2KGUpe2UuZXhwb3J0cz1bIlBpdm90IENhbWFyaWxsYSBTMiJdfSw5NDI5NzcoZSl7ZS5leHBvcnRzPVsiUGl2b3QgQ2FtYXJpbGxhIFMzIl19LDU2NTUyNihlKXtlLmV4cG9ydHM9WyJQaXZvdCBDbGFzc2ljIFAiXX0sNjIyODM0KGUpewplLmV4cG9ydHM9WyJQaXZvdCBDbGFzc2ljIFIxIl19LDUxNzMwMChlKXtlLmV4cG9ydHM9WyJQaXZvdCBDbGFzc2ljIFIyIl19LDc3MTU2KGUpe2UuZXhwb3J0cz1bIlBpdm90IENsYXNzaWMgUjMiXX0sNDk1MzE3KGUpe2UuZXhwb3J0cz1bIlBpdm90IENsYXNzaWMgUzEiXX0sNTE5MDI3KGUpe2UuZXhwb3J0cz1bIlBpdm90IENsYXNzaWMgUzIiXX0sMTMwNDY3KGUpe2UuZXhwb3J0cz1bIlBpdm90IENsYXNzaWMgUzMiXX0sNDkxNTQwKGUpe2UuZXhwb3J0cz1bIlBpdm90IERNIFAiXX0sOTQxMjI0KGUpe2UuZXhwb3J0cz1bIlBpdm90IERNIFIxIl19LDg4MTcyMChlKXtlLmV4cG9ydHM9WyJQaXZvdCBETSBTMSJdfSw4ODU2MzQoZSl7ZS5leHBvcnRzPVsiUGl2b3QgRmlib25hY2NpIFAiXX0sMzc0NDA2KGUpe2UuZXhwb3J0cz1bIlBpdm90IEZpYm9uYWNjaSBSMSJdfSwxODcyMTUoZSl7ZS5leHBvcnRzPVsiUGl2b3QgRmlib25hY2NpIFIyIl19LDU4MTAxMihlKXtlLmV4cG9ydHM9WyJQaXZvdCBGaWJvbmFjY2kgUjMiXX0sMzg5Nzc4KGUpe2UuZXhwb3J0cz1bIlBpdm90IEZpYm9uYWNjaSBTMSJdfSwyMDI1ODcoZSl7ZS5leHBvcnRzPVsiUGl2b3QgRmlib25hY2NpIFMyIl19LDcxMjU3NihlKXtlLmV4cG9ydHM9WyJQaXZvdCBGaWJvbmFjY2kgUzMiXX0sMTU5MDkyKGUpe2UuZXhwb3J0cz1bIlBpdm90IFdvb2RpZSBQIl19LDI2ODcxNihlKXtlLmV4cG9ydHM9WyJQaXZvdCBXb29kaWUgUjEiXX0sODE1MjUoZSl7ZS5leHBvcnRzPVsiUGl2b3QgV29vZGllIFIyIl19LDg5NDMzNChlKXtlLmV4cG9ydHM9WyJQaXZvdCBXb29kaWUgUjMiXX0sMTI1NTUyKGUpe2UuZXhwb3J0cz1bIlBpdm90IFdvb2RpZSBTMSJdfSw5MzgzNjEoZSl7ZS5leHBvcnRzPVsiUGl2b3QgV29vZGllIFMyIl19LDMxOTEwNihlKXtlLmV4cG9ydHM9WyJQaXZvdCBXb29kaWUgUzMiXX0sMzg2NTYoZSl7ZS5leHBvcnRzPVsiUGx1bWJpbmcgRml4dHVyZXMgJiBGaXR0aW5ncyJdfSw5MDU5MzQoZSl7ZS5leHBvcnRzPVsiUGxhc3RpY3MiXX0sNjg5MzkzKGUpe2UuZXhwb3J0cz1bIlBsYXN0aWMgQ29udGFpbmVyICYgUGFja2FnaW5nIl19LDkzNjI2MChlKXtlLmV4cG9ydHM9WyJQbGF0aW51bSBNaW5pbmciXX0sNzQwMDMoZSl7ZS5leHBvcnRzPVsiUGxheXMgJiBDb25jZXJ0IFByb2R1Y3Rpb24iXX0sNTk3NzYzKGUpe2UuZXhwb3J0cz1bIlByZS1tYXJrZXQgQ2hhbmdlIl19LDMyNTcxMyhlKXtlLmV4cG9ydHM9WyJQcmUtbWFya2V0IENoYW5nZSAlIl19LDUwODI3NihlKXtlLmV4cG9ydHM9WyJQcmUtbWFya2V0IENoYW5nZSBmcm9tIE9wZW4iXX0sMzg2OTY5KGUpe2UuZXhwb3J0cz1bIlByZS1tYXJrZXQgQ2hhbmdlIGZyb20gT3BlbiAlIl19LDM4NjQ3NChlKXtlLmV4cG9ydHM9WyJQcmUtbWFya2V0IENsb3NlIl19LDUxMTMxMyhlKXtlLmV4cG9ydHM9WyJQcmUtbWFya2V0IEdhcCAlIl19LDI0NTgxMihlKXtlLmV4cG9ydHM9WyJQcmUtbWFya2V0IEhpZ2giXX0sNDI1MjAwKGUpe2UuZXhwb3J0cz1bIlByZS1tYXJrZXQgTG93Il19LDIxNjc2NChlKXtlLmV4cG9ydHM9WyJQcmUtbWFya2V0IE9wZW4iXX0sMTcxNDE1KGUpe2UuZXhwb3J0cz1bIlByZS1tYXJrZXQgVm9sdW1lIl19LDQ2NTU3NChlKXtlLmV4cG9ydHM9WyJQcmUtbWFya2V0IGNoZyJdfSwyMDg4NDYoZSl7ZS5leHBvcnRzPVsiUHJlLW1hcmtldCBjaGcgJSJdfSw0OTk0OTUoZSl7ZS5leHBvcnRzPVsiUHJlLW1hcmtldCBjaGcgZnJvbSBPcGVuIl19LDY0MjMyOChlKXtlLmV4cG9ydHM9WyJQcmUtbWFya2V0IGNoZyBmcm9tIE9wZW4gJSJdfSwzMjk2NDgoZSl7ZS5leHBvcnRzPVsiUHJlLW1hcmtldCBnYWluZXJzIl19LDg2NDIxMihlKXtlLmV4cG9ydHM9WyJQcmVjaW91cyBNZXRhbHMiXX0sMTc2MDg5KGUpe2UuZXhwb3J0cz1bIlByZWNpb3VzIE1ldGFscyAmIE1pbmVyYWxzIl19LDg3MTA4OChlKXtlLmV4cG9ydHM9WyJQcmVmYWJyaWNhdGVkIEhvbWVzIl19LDI3NTY2MihlKXtlLmV4cG9ydHM9WyJQcmVmZXJyZWQgU3RvY2siXX0sNDIzMDUoZSl7ZS5leHBvcnRzPVsiUHJldGF4IE1hcmdpbiJdfSw4MjYxMTUoZSl7ZS5leHBvcnRzPVsiUHJldGF4IE1hcmdpbiAoVFRNKSJdfSw2NTY5NzEoZSl7ZS5leHBvcnRzPVsiUHJldGF4IG1hcmdpbiAoe3BlcmlvZH0pIl19LDgzMjEyMyhlKXtlLmV4cG9ydHM9WyJQcmV2Il19LDEzNzIwKGUpe2UuZXhwb3J0cz1bIlByZXZpb3VzIDUgRGF5cyJdfSwzNjYyNDgoZSl7ZS5leHBvcnRzPVsiUHJldmlvdXMgQ2xvc2UgUHJpY2UiXX0sNTY0NTYxKGUpe2UuZXhwb3J0cz1bIlByZXZpb3VzIFdlZWsiXX0sODM0OTAoZSl7ZS5leHBvcnRzPVsiUHJpY2UiXX0sOTg0MTQoZSl7ZS5leHBvcnRzPVsiUHJpY2UgJSBDaGFuZ2UgMSBXZWVrIl19LDYzNjM1MShlKXtlLmV4cG9ydHM9WyJQcmljZSAlIENoYW5nZSA0IFdlZWsiXX0sODM0MTIxKGUpe2UuZXhwb3J0cz1bIlByaWNlICUgQ2hhbmdlIDUyIFdlZWsiXX0sNjE2MTgoZSl7ZS5leHBvcnRzPVsiUHJpY2UgZm9ybWF0IGlzIGludmFsaWQuIl19LDE3MTM5MShlKXtlLmV4cG9ydHM9WyJQcmljZSB0byBCb29rIChGWSkiXX0sNzk3NDUwKGUpe2UuZXhwb3J0cz1bIlByaWNlIHRvIEJvb2sgKE1SUSkiXX0sOTE3NzE1KGUpe2UuZXhwb3J0cz1bIlByaWNlIHRvIEVhcm5pbmdzIFJhdGlvIChUVE0pIl19LDMwNjM1NihlKXtlLmV4cG9ydHM9WyJQcmljZSB0byBGcmVlIENhc2ggRmxvdyAoVFRNKSJdfSw4MTkzNzEoZSl7ZS5leHBvcnRzPVsiUHJpY2UgdG8gU2FsZXMgKEZZKSJdfSwzMTMyNDYoZSl7ZS5leHBvcnRzPVsiUHJpY2UgdG8gUmV2ZW51ZSBSYXRpbyAoVFRNKSJdfSw0MjQ1NDUoZSl7ZS5leHBvcnRzPVsiUHJpY2UvRWFybmluZ3MvR3Jvd3RoIChUVE0pIl19LDgxNjk0NChlKXtlLmV4cG9ydHM9WyJQcmljZS9GcmVlIENhc2ggRmxvdyJdfSwyNjMzMzUoZSl7ZS5leHBvcnRzPVsiUHJpY2UvU2FsZXMiXX0sNjMxNDEwKGUpe2UuZXhwb3J0cz1bIlByaWNlL1JldiJdfSwyNTUzNyhlKXtlLmV4cG9ydHM9WyJQcmltYXJ5IEFsdW1pbnVtIFByb2R1Y3Rpb24iXX0sODE4MjczKGUpewplLmV4cG9ydHM9WyJQcmltYXJ5IExpc3RpbmciXX0sMjQzNzU2KGUpe2UuZXhwb3J0cz1bIlByaXZhdGUgQmFua3MiXX0sOTc5NTMyKGUpe2UuZXhwb3J0cz1bIlByaXZhdGUgRXF1aXR5Il19LDU0ODM2KGUpe2UuZXhwb3J0cz1bIlByb2Nlc3NvcnMiXX0sODIwNjk4KGUpe2UuZXhwb3J0cz1bIlByb2Nlc3MgSW5kdXN0cmllcyJdfSw1MzQzOShlKXtlLmV4cG9ydHM9WyJQcm9ncmFtbWluZyBTb2Z0d2FyZSAmIFRlc3RpbmcgVG9vbHMiXX0sNTI3NjQwKGUpe2UuZXhwb3J0cz1bIlByb2R1Y2VyIE1hbnVmYWN0dXJpbmciXX0sNTUzMzMwKGUpe2UuZXhwb3J0cz1bIlByb2Zlc3Npb25hbCBJbmZvcm1hdGlvbiBTZXJ2aWNlcyJdfSwxMDQwMTQoZSl7ZS5leHBvcnRzPVsiUHJvZmVzc2lvbmFsIFNwb3J0cyBWZW51ZXMiXX0sNzM2MDY2KGUpe2UuZXhwb3J0cz1bIlByb3BlcnR5ICYgQ2FzdWFsdHkgSW5zdXJhbmNlIl19LDg5NjIzMChlKXtlLmV4cG9ydHM9WyJQcm9wZXJ0eSAmIENhc3VhbHR5IFJlaW5zdXJhbmNlIl19LDM2NDg3NyhlKXtlLmV4cG9ydHM9WyJQcm9wZXJ0eSBJbnN1cmFuY2UiXX0sMzUxNjE0KGUpe2UuZXhwb3J0cz1bIlByb3BlcnR5LUNhc3VhbHR5IEluc3VyZXJzIl19LDY5NjQ3NyhlKXtlLmV4cG9ydHM9WyJQcm9wZXJ0eS9DYXN1YWx0eSBJbnN1cmFuY2UiXX0sNzY2OTIoZSl7ZS5leHBvcnRzPVsiUHJvdmluY2UvU3RhdGUiXX0sNTY4MzAoZSl7ZS5leHBvcnRzPVsiUHVibGljIFJlbGF0aW9ucyJdfSwxODIwOTcoZSl7ZS5leHBvcnRzPVsiUHVibGljIFNwb3J0IEZhY2lsaXRpZXMiXX0sMzEzMDU2KGUpe2UuZXhwb3J0cz1bIlB1Ymxpc2hpbmc6IEJvb2tzL01hZ2F6aW5lcyJdfSw3MDA0NDIoZSl7ZS5leHBvcnRzPVsiUHVibGlzaGluZzogTmV3c3BhcGVycyJdfSw5MzM0NjEoZSl7ZS5leHBvcnRzPVsiUHVicywgQmFycyAmIE5pZ2h0IENsdWJzIl19LDg0MzMyNyhlKXtlLmV4cG9ydHM9WyJQdWVydG8gUmljbyJdfSwzNjczNjEoZSl7ZS5leHBvcnRzPVsiUHVscCAmIFBhcGVyIl19LDM1Mjg1NihlKXtlLmV4cG9ydHM9WyJQdWxwIE1pbGxzIl19LDMyMTE3KGUpe2UuZXhwb3J0cz1bIlB1bXAgJiBQdW1waW5nIEVxdWlwbWVudCJdfSw4NDAzODYoZSl7ZS5leHBvcnRzPVsiUHVyaWZpY2F0aW9uICYgVHJlYXRtZW50IEVxdWlwbWVudCJdfSw4OTc2NyhlKXtlLmV4cG9ydHM9WyJRMSJdfSw5NDg5MjMoZSl7ZS5leHBvcnRzPVsiUTIiXX0sMzY3OTM1KGUpe2UuZXhwb3J0cz1bIlEzIl19LDE3NTUwNyhlKXtlLmV4cG9ydHM9WyJRNCJdfSw5MzM3NTMoZSl7ZS5leHBvcnRzPVsiUWF0YXIiXX0sOTQ3Mjk5KGUpe2UuZXhwb3J0cz1bIlF1aWNrIFNlcnZpY2UgUmVzdGF1cmFudHMiXX0sNTkyOTgxKGUpe2UuZXhwb3J0cz1bIlF1aWNrIFJhdGlvIl19LDQwMzEzMShlKXtlLmV4cG9ydHM9WyJRdWljayBSYXRpbyAoTVJRKSJdfSwxOTA2OTYoZSl7ZS5leHBvcnRzPVsiUXVvdGUgY3VycmVuY3kiXX0sODE0NjEoZSl7ZS5leHBvcnRzPVsiUXVvdGVzIGFyZSBkZWxheWVkIGJ5IHtudW1iZXJ9IG1pbiJdfSw3OTA1MjQoZSl7ZS5leHBvcnRzPVsiUXVvdGVzIGFyZSBkZWxheWVkIGJ5IHtudW1iZXJ9IG1pbiBhbmQgdXBkYXRlZCBldmVyeSAzMCBzZWNvbmRzIl19LDMzNDEwMihlKXtlLmV4cG9ydHM9WyJSJkQgUmF0aW8gKEZZKSJdfSw1MDIwODgoZSl7ZS5leHBvcnRzPVsiUiZEIFJhdGlvIChUVE0pIl19LDEyMzgwNShlKXtlLmV4cG9ydHM9WyJSMSJdfSw1OTQ0MDEoZSl7ZS5leHBvcnRzPVsiUjIiXX0sMTM0MTMoZSl7ZS5leHBvcnRzPVsiUjMiXX0sNTg5OTY0KGUpe2UuZXhwb3J0cz1bIlJPQSJdfSw4NDgxNTQoZSl7ZS5leHBvcnRzPVsiUk9DIl19LDE3MDk1MihlKXtlLmV4cG9ydHM9WyJST0UiXX0sMzg5NTI1KGUpe2UuZXhwb3J0cz1bIlJPSUMgJSJdfSw4MTAyMDIoZSl7ZS5leHBvcnRzPVsiUkVJVCJdfSw5NjcwMjMoZSl7ZS5leHBvcnRzPVsiUkZJRCBTeXN0ZW1zIl19LDQ5NjY3NChlKXtlLmV4cG9ydHM9WyJSU0kxNCJdfSw1Mjg2NTkoZSl7ZS5leHBvcnRzPVsiUlNJNyJdfSw4OTEzOTkoZSl7ZS5leHBvcnRzPVsiUm9jayBNaW5pbmciXX0sOTA1OTQ1KGUpe2UuZXhwb3J0cz1bIlJvbWFuaWEiXX0sMjkyMTM1KGUpe2UuZXhwb3J0cz1bIlJvb2ZpbmcgU3VwcGxpZXMiXX0sODAyMDg4KGUpe2UuZXhwb3J0cz1bIlJhdGUgT2YgQ2hhbmdlICg5KSJdfSwyMjc3NTQoZSl7ZS5leHBvcnRzPVsiUmF0aW5nIEFnZW5jaWVzIl19LDExOTg5MihlKXtlLmV4cG9ydHM9WyJSYWRpbyBCcm9hZGNhc3RpbmciXX0sNjAwNTc2KGUpe2UuZXhwb3J0cz1bIlJhaWwgU2VydmljZXMiXX0sNzY3MTQ3KGUpe2UuZXhwb3J0cz1bIlJhaWxyb2FkcyJdfSw2NjY1NDcoZSl7ZS5leHBvcnRzPVsiUmFpbHdheSBDb25zdHJ1Y3Rpb24iXX0sMzE5NzEzKGUpe2UuZXhwb3J0cz1bIlJhaWx3YXkgRnJlaWdodCBPcGVyYXRvcnMiXX0sOTE4NChlKXtlLmV4cG9ydHM9WyJSYXJlIEVhcnRoIE1pbmVyYWxzIl19LDk2MTIwNShlKXtlLmV4cG9ydHM9WyJSZXRhaWwgLSBEZXBhcnRtZW50IFN0b3JlcyJdfSw2NTk3NjEoZSl7ZS5leHBvcnRzPVsiUmV0YWlsIC0gRHJ1Z3Mgd2l0aCBHcm9jZXJ5Il19LDYwOTcyOChlKXtlLmV4cG9ydHM9WyJSZXRhaWwgLSBEcnVncyB3aXRob3V0IEdyb2NlcnkiXX0sNDEyNjIwKGUpe2UuZXhwb3J0cz1bIlJldGFpbCAgUmVhbCBFc3RhdGUgRGV2ZWxvcG1lbnQiXX0sNzkyOTI2KGUpe2UuZXhwb3J0cz1bIlJldGFpbCAmIE1vcnRnYWdlIEJhbmtzIl19LDEwMTE0MChlKXtlLmV4cG9ydHM9WyJSZXRhaWwgUkVJVHMiXX0sNzA5NjI1KGUpe2UuZXhwb3J0cz1bIlJldGFpbCBSZWFsIEVzdGF0ZSBTZXJ2aWNlcyJdfSw1OTAwNjYoZSl7ZS5leHBvcnRzPVsiUmV0YWlsIFRyYWRlIl19LDkxODg5KGUpe2UuZXhwb3J0cz1bIlJldGlyZW1lbnQgSG9tZSBCdWlsZGVycyJdfSwxODUxMDMoZSl7ZS5leHBvcnRzPVsiUmV0dXJuIG9uIEFzc2V0cyAoVFRNKSJdfSwxMTk1MjMoZSl7ZS5leHBvcnRzPVsiUmV0dXJuIG9uIEVxdWl0eSAoVFRNKSJdfSwxNzg1MTMoZSl7CmUuZXhwb3J0cz1bIlJldHVybiBvbiBJbnZlc3RlZCBDYXBpdGFsICUgKFRUTSkiXX0sODA5NzI2KGUpe2UuZXhwb3J0cz1bIlJldHVybiBvbiBJbnZlc3RlZCBDYXBpdGFsIChUVE0pIl19LDgxODExMShlKXtlLmV4cG9ydHM9WyJSZXR1cm4gb24gYXNzZXRzICh7cGVyaW9kfSkiXX0sNDgxMDg3KGUpe2UuZXhwb3J0cz1bIlJldHVybiBvbiBlcXVpdHkgKHtwZXJpb2R9KSJdfSwyMzE3MyhlKXtlLmV4cG9ydHM9WyJSZXR1cm4gb24gaW52ZXN0ZWQgY2FwaXRhbCAoe3BlcmlvZH0pIl19LDU2ODA5MShlKXtlLmV4cG9ydHM9WyJSZXZlbnVlIl19LDEyODM3NihlKXtlLmV4cG9ydHM9WyJSZXZlbnVlIChBbm51YWwgWW9ZIEdyb3d0aCkiXX0sNDgyNTUzKGUpe2UuZXhwb3J0cz1bIlJldmVudWUgKFF1YXJ0ZXJseSBRb1EgR3Jvd3RoKSJdfSw4MDMyODEoZSl7ZS5leHBvcnRzPVsiUmV2ZW51ZSAoUXVhcnRlcmx5IFlvWSBHcm93dGgpIl19LDc0MDkyOChlKXtlLmV4cG9ydHM9WyJSZXZlbnVlIChUVE0gWW9ZIEdyb3d0aCkiXX0sNTg4MzczKGUpe2UuZXhwb3J0cz1bIlJldmVudWUgQWN0dWFsIl19LDQ1OTU4NyhlKXtlLmV4cG9ydHM9WyJSZXZlbnVlIEZvcmVjYXN0Il19LDc5Mzc1MChlKXtlLmV4cG9ydHM9WyJSZXZlbnVlIHBlciBFbXBsb3llZSJdfSw5NDIwMjUoZSl7ZS5leHBvcnRzPVsiUmV2ZW51ZSBwZXIgRW1wbG95ZWUgKEZZKSJdfSw2MzA2NzYoZSl7ZS5leHBvcnRzPVsiUmV2ZW51ZSBwZXIgZW1wbG95ZWUgKHtwZXJpb2R9KSJdfSwxMzI1NDgoZSl7ZS5leHBvcnRzPVsiUmV2ZW51ZSBwZXIgc2hhcmUgKHtwZXJpb2R9KSJdfSw2MTM5NTEoZSl7ZS5leHBvcnRzPVsiUmVhZHktTWFkZSBNZWFscyJdfSw4ODM5MjgoZSl7ZS5leHBvcnRzPVsiUmVhbC10aW1lIl19LDQ0MTA0NShlKXtlLmV4cG9ydHM9WyJSZWFsIEVzdGF0ZSBEZXZlbG9wbWVudCJdfSw3MTIwMDQoZSl7ZS5leHBvcnRzPVsiUmVhbCBFc3RhdGUgRGV2ZWxvcG1lbnQgJiBPcGVyYXRpb25zIl19LDE0MjA4NihlKXtlLmV4cG9ydHM9WyJSZWFsIEVzdGF0ZSBJbnZlc3RtZW50IFRydXN0cyJdfSwzNzYzNjUoZSl7ZS5leHBvcnRzPVsiUmVhbCBFc3RhdGUgU2VydmljZXMiXX0sNTAyMTI5KGUpe2UuZXhwb3J0cz1bIlJlY2VudCBFYXJuaW5ncyBEYXRlIl19LDEwNTcxKGUpe2UuZXhwb3J0cz1bIlJlY3JlYXRpb25hbCBQcm9kdWN0cyJdfSwzNzM3MjIoZSl7ZS5leHBvcnRzPVsiUmVmcmVzaCJdfSw4Njk3NTYoZSl7ZS5leHBvcnRzPVsiUmVmcmVzaCBldmVyeSBtaW51dGUiXX0sNzgyNjM0KGUpe2UuZXhwb3J0cz1bIlJlZnJlc2ggaW50ZXJ2YWwiXX0sMjI0ODIxKGUpe2UuZXhwb3J0cz1bIlJlZ2lvbiJdfSw3NjYxNjUoZSl7ZS5leHBvcnRzPVsiUmVnaW9uYWwgQWlybGluZXMiXX0sMzU4NjIzKGUpe2UuZXhwb3J0cz1bIlJlZ2lvbmFsIEJhbmtzIl19LDczNDQ3NyhlKXtlLmV4cG9ydHM9WyJSZWluc3VyYW5jZSJdfSw4MTM0MzIoZSl7ZS5leHBvcnRzPVsiUmVsYXRpdmUgU3RyZW5ndGggSW5kZXggKDE0KSJdfSw0MjM0NihlKXtlLmV4cG9ydHM9WyJSZWxhdGl2ZSBTdHJlbmd0aCBJbmRleCAoNykiXX0sMjUwNjU0KGUpe2UuZXhwb3J0cz1bIlJlbGF0aXZlIFZvbCJdfSw2OTkwOTAoZSl7ZS5leHBvcnRzPVsiUmVsYXRpdmUgVm9sIGF0IFRpbWUiXX0sNzgzMTkzKGUpe2UuZXhwb3J0cz1bIlJlbGF0aXZlIFZvbHVtZSJdfSwxOTMwNjYoZSl7ZS5leHBvcnRzPVsiUmVsYXRpdmUgVm9sdW1lIGF0IFRpbWUiXX0sNTkxMjI3KGUpe2UuZXhwb3J0cz1bIlJlbW92ZSBjb2x1bW4iXX0sNjk0MjA5KGUpe2UuZXhwb3J0cz1bIlJlbW92ZSBmcm9tIGZhdm9yaXRlcyJdfSw5MjQ4MjMoZSl7ZS5leHBvcnRzPVsiUmVuYW1lIl19LDY3MTIzKGUpe2UuZXhwb3J0cz1bIlJlbmFtZSBDb2x1bW4gU2V0Il19LDk0MTI1NyhlKXtlLmV4cG9ydHM9WyJSZW5hbWUgU2NyZWVucyJdfSw1Nzg5MzAoZSl7ZS5leHBvcnRzPVsiUmVuZXdhYmxlIEVuZXJneSBFcXVpcG1lbnQgJiBTZXJ2aWNlcyJdfSw5MTk2MzkoZSl7ZS5leHBvcnRzPVsiUmVuZXdhYmxlIEVuZXJneSBTZXJ2aWNlcyJdfSwzOTQxNzQoZSl7ZS5leHBvcnRzPVsiUmVuZXdhYmxlIEZ1ZWxzIl19LDk4NDk5MyhlKXtlLmV4cG9ydHM9WyJSZW5ld2FibGUgSVBQcyJdfSwxODAwOTAoZSl7ZS5leHBvcnRzPVsiUmVuZXdhYmxlIFV0aWxpdGllcyJdfSw4NTc4OTgoZSl7ZS5leHBvcnRzPVsiUmVwb3J0ZWQgRVBTIl19LDk3NzI3KGUpe2UuZXhwb3J0cz1bIlJlcGxheSBNb2RlIl19LDg3MDMxNihlKXtlLmV4cG9ydHM9WyJSZXNlYXJjaCAmIGRldmVsb3BtZW50IFJhdGlvIChGWSkiXX0sNzAxMDM1KGUpe2UuZXhwb3J0cz1bIlJlc2VhcmNoICYgZGV2ZWxvcG1lbnQgUmF0aW8gKFRUTSkiXX0sNDI1NjUwKGUpe2UuZXhwb3J0cz1bIlJlc2V0Il19LDgyNjMxNChlKXtlLmV4cG9ydHM9WyJSZXNldCBhbGwiXX0sMzExNzM3KGUpe2UuZXhwb3J0cz1bIlJlc2V0IGZpbHRlciJdfSwyMDYxNDQoZSl7ZS5leHBvcnRzPVsiUmVzaWRlbnRpYWwgIFJlYWwgRXN0YXRlIERldmVsb3BtZW50Il19LDEyMjE4OShlKXtlLmV4cG9ydHM9WyJSZXNpZGVudGlhbCAmIExvbmcgVGVybSBDYXJlIl19LDEwOTAwNyhlKXtlLmV4cG9ydHM9WyJSZXNpZGVudGlhbCBBcmNoaXRlY3R1cmFsICYgSW50ZXJpb3IgRGVzaWduIFNlcnZpY2VzIl19LDU3ODgxMihlKXtlLmV4cG9ydHM9WyJSZXNpZGVudGlhbCBCdWlsZGVycyAtIE11bHRpZmFtaWx5IEhvbWVzIl19LDE4Mjc5NyhlKXtlLmV4cG9ydHM9WyJSZXNpZGVudGlhbCBCdWlsZGVycyAtIFNpbmdsZSBIb21lcyJdfSwyMjAyNjQoZSl7ZS5leHBvcnRzPVsiUmVzaWRlbnRpYWwgUkVJVHMiXX0sMTQ1MjgxKGUpe2UuZXhwb3J0cz1bIlJlc2lkZW50aWFsIFJlYWwgRXN0YXRlIFNlcnZpY2VzIl19LDg0MzE4MShlKXtlLmV4cG9ydHM9WyJSZXNvcnQgT3BlcmF0b3JzIl19LDMyMzg4OShlKXtlLmV4cG9ydHM9WyJSZXN0YXVyYW50cyJdfSwzMTUyMTMoZSl7ZS5leHBvcnRzPVsiUmVzdGF1cmFudHMgJiBCYXJzIl19LDQwNzQzOChlKXtlLmV4cG9ydHM9WyJSaXNpbmcgcGFpcnMiXX0sCjQ2MTk3MihlKXtlLmV4cG9ydHM9WyJSdWJiZXIgUGxhbnRhdGlvbiJdfSw5MzQ4ODMoZSl7ZS5leHBvcnRzPVsiUnVzc2lhIl19LDM5MDU5OChlKXtlLmV4cG9ydHM9WyJSdXNzaWFuIEZlZGVyYXRpb24iXX0sNzU4Mjk3KGUpe2UuZXhwb3J0cz1bIlJ3YW5kYSJdfSw4NzI2ODAoZSl7ZS5leHBvcnRzPVsiUsOpdW5pb24iXX0sMjI4MjkoZSl7ZS5leHBvcnRzPVsiUzEiXX0sNDQxODQxKGUpe2UuZXhwb3J0cz1bIlMyIl19LDg2MDg1MyhlKXtlLmV4cG9ydHM9WyJTMyJdfSw1NDE0MDUoZSl7ZS5leHBvcnRzPVsiV29tZW4ncyBBcHBhcmVsIFJldGFpbGVycyJdfSw1MDM3MTMoZSl7ZS5leHBvcnRzPVsiV29tZW4ncyBDbG90aGluZyJdfSw0MzQwNzcoZSl7ZS5leHBvcnRzPVsiV29tZW4ncyBGb290d2VhciJdfSw1MjQ1MzkoZSl7ZS5leHBvcnRzPVsiV29vZCBDb250YWluZXIgJiBQYWNrYWdpbmciXX0sMTAzNjQwKGUpe2UuZXhwb3J0cz1bIldvb2QgUHJvZHVjdCBXaG9sZXNhbGUiXX0sNzA2MDY1KGUpe2UuZXhwb3J0cz1bIldvb2QgUHJvZHVjdHMiXX0sNjQzMDc1KGUpe2UuZXhwb3J0cz1bIldvcmxkIl19LDYzMTA1MihlKXtlLmV4cG9ydHM9WyJXYXRjaGVzIl19LDg2MTY1NShlKXtlLmV4cG9ydHM9WyJXYXRlciAmIFNld2FnZSBDb25zdHJ1Y3Rpb24iXX0sNDM1OTgwKGUpe2UuZXhwb3J0cz1bIldhdGVyIFN1cHBseSAmIElycmlnYXRpb24gU3lzdGVtcyJdfSwzNjk5NDQoZSl7ZS5leHBvcnRzPVsiV2F0ZXIgVXRpbGl0aWVzIl19LDQwNTc3OShlKXtlLmV4cG9ydHM9WyJXYXZlIFBvd2VyIEVuZXJneSBFcXVpcG1lbnQiXX0sNTkwNTA1KGUpe2UuZXhwb3J0cz1bIldhbGxpcyBhbmQgRnV0dW5hIl19LDU1NDE3MyhlKXtlLmV4cG9ydHM9WyJXYWxscGFwZXIiXX0sOTA2Mzc5KGUpe2UuZXhwb3J0cz1bIldhcmVob3VzaW5nIl19LDQ5MzMzMyhlKXtlLmV4cG9ydHM9WyJXYXN0ZSBNYW5hZ2VtZW50LCBEaXNwb3NhbCAmIFJlY3ljbGluZyBTZXJ2aWNlcyJdfSwxMjEzMDEoZSl7ZS5leHBvcnRzPVsiV2FzdGUgdG8gRW5lcmd5IFN5c3RlbXMgJiBFcXVpcG1lbnQiXX0sMzMyODU1KGUpe2UuZXhwb3J0cz1bIldlIGFyZSBkb2luZyBzb21lIGJyaWVmIGRhaWx5IG1haW50ZW5hbmNlLiBTY3JlZW5lciB3aWxsIGJlIGJhY2sgcmVhbGx5IHNvb24sIHRoYW5rcyBmb3IgeW91ciBwYXRpZW5jZSEiXX0sNTI5MTYwKGUpe2UuZXhwb3J0cz1bIldlJ3ZlIGxhdW5jaGVkIG5ldyBhbmQgbW9yZSBwb3dlcmZ1bCBzY3JlZW5lcnMgZm9yIHtjcnlwdG9Db2luc1NjcmVlbmVyTGlua1N0YXJ0fWNyeXB0byBjb2luc3tsaW5rRW5kfSwge2NleFNjcmVlbmVyTGlua1N0YXJ0fUNFWCBwYWlyc3tsaW5rRW5kfSwgYW5kIHtkZXhTY3JlZW5lckxpbmtTdGFydH1ERVggcGFpcnN7bGlua0VuZH0uIFRoZXkncmUgcGFja2VkIHdpdGggZXZlcnl0aGluZyB5b3UgbG92ZWQgZnJvbSB0aGUgb2xkIHZlcnNpb24sIHBsdXMgbW9yZSBkYXRhLCBzbWFydGVyIGZpbHRlcnMsIGFuZCBleGNpdGluZyBmZWF0dXJlcyBhbmQgbWV0cmljcy5cblRvIHN0cmVhbWxpbmUgeW91ciBleHBlcmllbmNlLCB3ZSdsbCBiZSByZW1vdmluZyB0aGlzIG9sZCB2ZXJzaW9uIHNvb24uIEV4cGxvcmUgdGhlIG5ldyBzY3JlZW5lcnMgbm93LiJdfSw3OTU3NyhlKXtlLmV4cG9ydHM9WyJXZWFsdGggTWFuYWdlbWVudCJdfSw3ODE5OTMoZSl7ZS5leHBvcnRzPVsiV2Vla2x5IFBlcmYiXX0sODQ2NjE0KGUpe2UuZXhwb3J0cz1bIldlZWtseSBQZXJmb3JtYW5jZSJdfSw5MTQ4MTYoZSl7ZS5leHBvcnRzPVsiV2VsZGluZyAmIFNvbGRlcmluZyBFcXVpcG1lbnQiXX0sODgxMjc3KGUpe2UuZXhwb3J0cz1bIldlc3Rlcm4gU2FoYXJhIl19LDYwOTQ1NShlKXtlLmV4cG9ydHM9WyJXaG9sZXNhbGUgRGlzdHJpYnV0b3JzIl19LDYyODk1KGUpe2UuZXhwb3J0cz1bIldpLUZpICYgV2ktTWF4IFByb3ZpZGVycyJdfSwyNjA5MTAoZSl7ZS5leHBvcnRzPVsiV2lsbGlhbXMgUGVyY2VudCBSYW5nZSAoMTQpIl19LDE5OTc4OChlKXtlLmV4cG9ydHM9WyJXaW5kIFN5c3RlbXMgJiBFcXVpcG1lbnQiXX0sNjEzNjc1KGUpe2UuZXhwb3J0cz1bIldpbmVyaWVzIl19LDI0NzE2NShlKXtlLmV4cG9ydHM9WyJXaXJlZCBUZWxlY29tbXVuaWNhdGlvbnMgQ2FycmllcnMiXX0sMTc4MzA1KGUpe2UuZXhwb3J0cz1bIldpcmVsZXNzIFRlbGVjb20iXX0sODUzMTY0KGUpe2UuZXhwb3J0cz1bIldpcmVsZXNzIFRlbGVjb21tdW5pY2F0aW9ucyJdfSwxMjU3NDMoZSl7ZS5leHBvcnRzPVsiV2lyZWxlc3MgVGVsZWNvbW11bmljYXRpb25zIFNlcnZpY2VzIl19LDgwMDg0NShlKXtlLmV4cG9ydHM9WyJXaXJlcyAmIENhYmxlcyJdfSwzNDQzNzUoZSl7ZS5leHBvcnRzPVsiVEYiXX0sODQ3MTQxKGUpe2UuZXhwb3J0cz1bIlRUTSJdfSwyMzc3NDgoZSl7ZS5leHBvcnRzPVsiVFYgJiBWaWRlbyJdfSw1NDM1MzIoZSl7ZS5leHBvcnRzPVsiVG90YWwgQ29pbnMiXX0sODEyMzM1KGUpe2UuZXhwb3J0cz1bIlRvdGFsIENhcGl0YWwiXX0sNTc5MTA5KGUpe2UuZXhwb3J0cz1bIlRvdGFsIEN1cnJlbnQgQXNzZXRzIChNUlEpIl19LDQwMzY0NyhlKXtlLmV4cG9ydHM9WyJUb3RhbCBBc3NldHMgKEFubnVhbCBZb1kgR3Jvd3RoKSJdfSw0MDIyKGUpe2UuZXhwb3J0cz1bIlRvdGFsIEFzc2V0cyAoTVJRKSJdfSw5NzM2MChlKXtlLmV4cG9ydHM9WyJUb3RhbCBBc3NldHMgKFF1YXJ0ZXJseSBRb1EgR3Jvd3RoKSJdfSw1NDgzNDIoZSl7ZS5leHBvcnRzPVsiVG90YWwgQXNzZXRzIChRdWFydGVybHkgWW9ZIEdyb3d0aCkiXX0sNjIzODM3KGUpe2UuZXhwb3J0cz1bIlRvdGFsIERlYnQgKEFubnVhbCBZb1kgR3Jvd3RoKSJdfSw1Njg5MzQoZSl7ZS5leHBvcnRzPVsiVG90YWwgRGVidCAoTVJRKSJdfSw3OTMwMzYoZSl7ZS5leHBvcnRzPVsiVG90YWwgRGVidCAoUXVhcnRlcmx5IFFvUSBHcm93dGgpIl19LDY3NTEwOChlKXtlLmV4cG9ydHM9WyJUb3RhbCBEZWJ0IChRdWFydGVybHkgWW9ZIEdyb3d0aCkiXX0sMzM0MTcxKGUpe2UuZXhwb3J0cz1bIlRvdGFsIExpYWJpbGl0aWVzIChNUlEpIl19LDYwNjkyMChlKXsKZS5leHBvcnRzPVsiVG90YWwgTGlhYmlsaXRpZXMgKEZZKSJdfSw1NDMwOTUoZSl7ZS5leHBvcnRzPVsiVG90YWwgU2hhcmVzIE91dHN0YW5kaW5nIl19LDQzNjQ3NChlKXtlLmV4cG9ydHM9WyJUb3RhbCBSZXZlbnVlIChGWSkiXX0sNDE0MjU4KGUpe2UuZXhwb3J0cz1bIlRvdGFsIGFzc2V0cyAoe3BlcmlvZH0pIl19LDQ2OTU1OChlKXtlLmV4cG9ydHM9WyJUb3RhbCBkZWJ0ICh7cGVyaW9kfSkiXX0sNzMzMjYoZSl7ZS5leHBvcnRzPVsiVG90YWwgZXF1aXR5ICh7cGVyaW9kfSkiXX0sMzM2MzAzKGUpe2UuZXhwb3J0cz1bIlRvdGFsIHNoYXJlcyBvdXRzdGFuZGluZyJdfSwzMDIxNjUoZSl7ZS5leHBvcnRzPVsiVG90YWwgcmV2ZW51ZSAoe3BlcmlvZH0pIl19LDE1MjgzMyhlKXtlLmV4cG9ydHM9WyJUb3lzICYgR2FtZXMgUmV0YWlsZXJzIl19LDM1NzgwNChlKXtlLmV4cG9ydHM9WyJUb3lzICYgSnV2ZW5pbGUgUHJvZHVjdHMiXX0sNjIyMzI3KGUpe2UuZXhwb3J0cz1bIlRveXMgJiBKdXZlbmlsZSBQcm9kdWN0cyBXaG9sZXNhbGUiXX0sNDcyOTcxKGUpe2UuZXhwb3J0cz1bIlRvYmFjY28iXX0sNjE0NDUwKGUpe2UuZXhwb3J0cz1bIlRvZGF5Il19LDgzMjQ0OChlKXtlLmV4cG9ydHM9WyJUb2dvIl19LDEwNDE3NyhlKXtlLmV4cG9ydHM9WyJUb2tlbGF1Il19LDk0MDQ4MyhlKXtlLmV4cG9ydHM9WyJUb21vcnJvdyJdfSwyNTA1NTUoZSl7ZS5leHBvcnRzPVsiVG9uZ2EiXX0sNjQ3MDgzKGUpe2UuZXhwb3J0cz1bIlRvb2xzICYgSGFyZHdhcmUiXX0sMTE4MDkyKGUpe2UuZXhwb3J0cz1bIlRvb2xzICYgSG91c2V3YXJlcyJdfSw1NDk0MzcoZSl7ZS5leHBvcnRzPVsiVG9wIDIwIGVjb25vbWllcyJdfSw4MTQwMjEoZSl7ZS5leHBvcnRzPVsiVG9wIGdhaW5lcnMiXX0sMzg0NTQwKGUpe2UuZXhwb3J0cz1bIlRvcCBsb3NlcnMiXX0sMTg5NDgoZSl7ZS5leHBvcnRzPVsiVGF4aSAmIExpbW91c2luZSJdfSw2OTkxMjIoZSl7ZS5leHBvcnRzPVsiVGFibGV0ICYgTmV0Ym9vayBDb21wdXRlcnMiXX0sMjczMTU3KGUpe2UuZXhwb3J0cz1bIlRhaXdhbiwgQ2hpbmEiXX0sOTY4NDU4KGUpe2UuZXhwb3J0cz1bIlRhamlraXN0YW4iXX0sNTk3MzQ4KGUpe2UuZXhwb3J0cz1bIlRhbm5pbmcgJiBTb2Z0ZW5pbmcgYWdlbnRzIl19LDQ5ODE4MyhlKXtlLmV4cG9ydHM9WyJUYW56YW5pYSJdfSw4NTE5OTMoZSl7ZS5leHBvcnRzPVsiVGV4dGlsZXMiXX0sMjIzNjQ0KGUpe2UuZXhwb3J0cz1bIlRleHRpbGVzICYgTGVhdGhlciBHb29kcyJdfSw4MjA2NDcoZSl7ZS5leHBvcnRzPVsiVGV4dGlsZXMgJiBMZWF0aGVyIEdvb2RzIFdob2xlc2FsZSJdfSw1Njk1OTUoZSl7ZS5leHBvcnRzPVsiVGVjaG5pY2FsIFJhdGluZyJdfSwyNzEwNzkoZSl7ZS5leHBvcnRzPVsiVGVjaG5vbG9neSJdfSw3NjA1MTMoZSl7ZS5leHBvcnRzPVsiVGVjaG5vbG9neSBDb25zdWx0aW5nICYgT3V0c291cmNpbmcgU2VydmljZXMiXX0sNjQwOTUzKGUpe2UuZXhwb3J0cz1bIlRlY2hub2xvZ3kgU2VydmljZXMiXX0sMjU1ODIwKGUpe2UuZXhwb3J0cz1bIlRlbGVtZWRpY2luZSBTZXJ2aWNlcyJdfSw5MTYxODUoZSl7ZS5leHBvcnRzPVsiVGVsZWNvbW11bmljYXRpb24gQ29uc3RydWN0aW9uIl19LDE4NTE2NChlKXtlLmV4cG9ydHM9WyJUZWxlY29tbXVuaWNhdGlvbnMgTmV0d29yayBJbmZyYXN0cnVjdHVyZSJdfSwzODk2ODkoZSl7ZS5leHBvcnRzPVsiVGVsZWNvbW11bmljYXRpb25zIEVxdWlwbWVudCJdfSw1NzMyNjcoZSl7ZS5leHBvcnRzPVsiVGVsZWNvbW11bmljYXRpb25zIFJlc2VsbGVycyJdfSw4NTI1ODUoZSl7ZS5leHBvcnRzPVsiVGVsZWNvbW11bmljYXRpb25zIFNlcnZpY2VzIl19LDgyNzk4MChlKXtlLmV4cG9ydHM9WyJUZWxldmlzaW9uIEJyb2FkY2FzdGluZyJdfSwyMjEzNTUoZSl7ZS5leHBvcnRzPVsiVGVzdGluZyAmIE1lYXN1cmluZyBFcXVpcG1lbnQiXX0sOTIxNzg2KGUpe2UuZXhwb3J0cz1bIlRlc3RpbmcgTGFib3JhdG9yaWVzIl19LDQ5MjU3NyhlKXtlLmV4cG9ydHM9WyJUZXN0aW5nIFNlcnZpY2VzIl19LDU1MzA0NChlKXtlLmV4cG9ydHM9WyJUaGFpbGFuZCJdfSw1MTk0NzQoZSl7ZS5leHBvcnRzPVsiVGhlIGFsZXJ0IGNhbid0IGJlIGVuYWJsZWQiXX0sMTk0NjAwKGUpe2UuZXhwb3J0cz1bIlRoZSBjdXJyZW5jeSBzZXQgZm9yIHRoZSB0cmFkZWQgaW5zdHJ1bWVudCBieSB0aGUgcmVsZXZhbnQgY29tcGFueSJdfSw0MTU0MShlKXtlLmV4cG9ydHM9WyJUaGVhdHJlcyAmIFBlcmZvcm1pbmcgQXJ0cyJdfSwzNTg0MjEoZSl7ZS5leHBvcnRzPVsiVGhlcm1hbCBTb2xhciBTeXN0ZW1zICYgRXF1aXBtZW50Il19LDE3MDgwOShlKXtlLmV4cG9ydHM9WyJUaGlzIE1vbnRoIl19LDEyNzQ4MyhlKXtlLmV4cG9ydHM9WyJUaGlzIFdlZWsiXX0sNjc2NDQyKGUpe2UuZXhwb3J0cz1bIlRoaXMgZGF0YSBpcyBvbmx5IGF2YWlsYWJsZSBkaXJlY3RseSBvbiB7b3Blbkxpbmt9VHJhZGluZ1ZpZXd7Y2xvc2VMaW5rfSJdfSw3NDg1NDQoZSl7ZS5leHBvcnRzPVsiVGhpcyBsZWdhY3kgdmVyc2lvbiBvZiBDcnlwdG8gUGFpcnMgU2NyZWVuZXIgaXMgbm8gbG9uZ2VyIHN1cHBvcnRlZCJdfSw4OTAzODcoZSl7ZS5leHBvcnRzPVsiVGhyZWUgQmxhY2sgQ3Jvd3MiXX0sMjc3MDk3KGUpe2UuZXhwb3J0cz1bIlRocmVlIFdoaXRlIFNvbGRpZXJzIl19LDgyODQyMChlKXtlLmV4cG9ydHM9WyJUaWNrZXIiXX0sNTgxNTEoZSl7ZS5leHBvcnRzPVsiVGlsZSAmIFBhdmluZyBNYXRlcmlhbCBNYW51ZmFjdHVyaW5nIl19LDc3NTc1NShlKXtlLmV4cG9ydHM9WyJUaW1iZXIgUkVJVHMiXX0sMzIwNyhlKXtlLmV4cG9ydHM9WyJUaW1iZXIgVHJhY3QgT3BlcmF0aW9ucyJdfSw4NjIxMTkoZSl7ZS5leHBvcnRzPVsiVGltZSJdfSw3NjUzKGUpe2UuZXhwb3J0cz1bIlRpbWUgSW50ZXJ2YWwiXX0sODAzMDUxKGUpe2UuZXhwb3J0cz1bIlRpbW9yLUxlc3RlIl19LDk2MDA1MyhlKXtlLmV4cG9ydHM9WyJUaXJlICYgVHViZSBNYW51ZmFjdHVyZXJzIl19LDEzNTAzMyhlKXtlLmV4cG9ydHM9WyJUaXJlIERlYWxlcnMiXX0sNTI2MDAxKGUpewplLmV4cG9ydHM9WyJUaXJlIFJldHJlYWRpbmciXX0sMjQyNzc1KGUpe2UuZXhwb3J0cz1bIlRpcmVzICYgUnViYmVyIFByb2R1Y3RzIl19LDE2MjEzMyhlKXtlLmV4cG9ydHM9WyJUaXJlcyAmIFJ1YmJlciBQcm9kdWN0cyBXaG9sZXNhbGUiXX0sNzIxMjI1KGUpe2UuZXhwb3J0cz1bIlRydWNraW5nIl19LDQyMTY0NyhlKXtlLmV4cG9ydHM9WyJUcnVja3MvQ29uc3RydWN0aW9uL0Zhcm0gTWFjaGluZXJ5Il19LDcyMTUyMihlKXtlLmV4cG9ydHM9WyJUcnVzdCBmdW5kIl19LDMzODg2NShlKXtlLmV4cG9ydHM9WyJUcmFkZSAmIEJ1c2luZXNzIFB1Ymxpc2hpbmciXX0sMjM0MDcxKGUpe2UuZXhwb3J0cz1bIlRyYWRlZCBWb2wiXX0sNTA5Njc5KGUpe2UuZXhwb3J0cz1bIlRyYWRlZCBWb2x1bWUiXX0sODE4NjAoZSl7ZS5leHBvcnRzPVsiVHJhbnNhY3Rpb24gJiBQYXltZW50IFNlcnZpY2VzIl19LDUzMzI2OShlKXtlLmV4cG9ydHM9WyJUcmFuc2xhdGlvbiAmIEludGVycHJldGF0aW9uIFNlcnZpY2VzIl19LDc2ODM5MChlKXtlLmV4cG9ydHM9WyJUcmFuc3BvcnRhdGlvbiJdfSw1MzM1OTEoZSl7ZS5leHBvcnRzPVsiVHJhdmVsIEFnZW50cyJdfSwxMTUyNzQoZSl7ZS5leHBvcnRzPVsiVHJlbmQtRm9sbG93aW5nIl19LDI5MTE3MyhlKXtlLmV4cG9ydHM9WyJUcmkgU3RhciBCZWFyaXNoIl19LDg2NzI2OChlKXtlLmV4cG9ydHM9WyJUcmkgU3RhciBCdWxsaXNoIl19LDMxNDg3KGUpe2UuZXhwb3J0cz1bIlRyaW5pZGFkIGFuZCBUb2JhZ28iXX0sNDMwMTM0KGUpe2UuZXhwb3J0cz1bIlR1dmFsdSJdfSw2Nzc1OShlKXtlLmV4cG9ydHM9WyJUdW5pc2lhIl19LDY4NzcyNShlKXtlLmV4cG9ydHM9WyJUdXJiaW5lIE1hbnVmYWN0dXJpbmciXX0sNzM1NjgzKGUpe2UuZXhwb3J0cz1bIlR1cmttZW5pc3RhbiJdfSw2MzE4MTAoZSl7ZS5leHBvcnRzPVsiVHVya2V5Il19LDk3MDYyNChlKXtlLmV4cG9ydHM9WyJUdXJrcyBhbmQgQ2FpY29zIElzbGFuZHMiXX0sNDMxMzc3KGUpe2UuZXhwb3J0cz1bIlUuUy4gVmlyZ2luIElzbGFuZHMiXX0sODk1Nzc0KGUpe2UuZXhwb3J0cz1bIlVPIl19LDE2MzExMChlKXtlLmV4cG9ydHM9WyJVQUUiXX0sNjIwMjExKGUpe2UuZXhwb3J0cz1bIlVJVCJdfSwzMDExMTcoZSl7ZS5leHBvcnRzPVsiVVNBIl19LDI1MDA3MihlKXtlLmV4cG9ydHM9WyJVbnVzdWFsIHZvbHVtZSJdfSwxMzc4ODgoZSl7ZS5leHBvcnRzPVsiVW5jb252ZW50aW9uYWwgT2lsICYgR2FzIERyaWxsaW5nIl19LDY2MTk3NihlKXtlLmV4cG9ydHM9WyJVbmNvbnZlbnRpb25hbCBPaWwgJiBHYXMgUHJvZHVjdGlvbiJdfSw3NDIzMzgoZSl7ZS5leHBvcnRzPVsiVW5kZXJwZXJmb3JtaW5nIFNNQTUwIl19LDI0OTA5MShlKXtlLmV4cG9ydHM9WyJVbml0ZWQgQXJhYiBFbWlyYXRlcyJdfSwyODI3MyhlKXtlLmV4cG9ydHM9WyJVbml0ZWQgS2luZ2RvbSJdfSw5Njc5NDEoZSl7ZS5leHBvcnRzPVsiVW5pdGVkIFN0YXRlcyJdfSw3MzY3OTkoZSl7ZS5leHBvcnRzPVsiVW5pdGVkIFN0YXRlcyBNaW5vciBPdXRseWluZyBJc2xhbmRzIl19LDU4ODY5MyhlKXtlLmV4cG9ydHM9WyJVZ2FuZGEiXX0sMzE3NDc1KGUpe2UuZXhwb3J0cz1bIlVrcmFpbmUiXX0sOTk5OTYxKGUpe2UuZXhwb3J0cz1bIlVsdGltYXRlIE9zY2lsbGF0b3IgKDcsIDE0LCAyOCkiXX0sNzcwNDI0KGUpe2UuZXhwb3J0cz1bIlVwY29taW5nIEVhcm5pbmdzIERhdGUiXX0sOTI4NTUzKGUpe2UuZXhwb3J0cz1bIlVydWd1YXkiXX0sMzIzMTMyKGUpe2UuZXhwb3J0cz1bIlVyYW5pdW0iXX0sMTA3NDA1KGUpe2UuZXhwb3J0cz1bIlVyYW5pdW0gTWluaW5nIl19LDQ4NzAwNihlKXtlLmV4cG9ydHM9WyJVc2VkIENhciBEZWFsZXJzIl19LDU5MjYyNyhlKXtlLmV4cG9ydHM9WyJVc2VkIE1lcmNoYW5kaXNlIFN0b3JlcyJdfSw4OTExMzYoZSl7ZS5leHBvcnRzPVsiVXRpbGl0aWVzIl19LDc4Mzk3MChlKXtlLmV4cG9ydHM9WyJVemJla2lzdGFuIl19LDM3MjUyMyhlKXtlLmV4cG9ydHM9WyJWT0lQIEVxdWlwbWVudCAmIFN5c3RlbXMiXX0sMjk4MTEzKGUpe2UuZXhwb3J0cz1bIlZPSVAgU2VydmljZXMiXX0sMjUxMTY3KGUpe2UuZXhwb3J0cz1bIlZXQVAiXX0sMzM5NDA3KGUpe2UuZXhwb3J0cz1bIlZXTUEiXX0sMzUyNDU3KGUpe2UuZXhwb3J0cz1bIlZvbCAyNGggQ2hnICUiXX0sMjM0MDc3KGUpe2UuZXhwb3J0cz1bIlZvbCAyNGggaW4gVVNEIl19LDMzODM5MihlKXtlLmV4cG9ydHM9WyJWb2xhdGlsaXR5Il19LDkyOTU5NChlKXtlLmV4cG9ydHM9WyJWb2xhdGlsaXR5IE0iXX0sNTYzMzYzKGUpe2UuZXhwb3J0cz1bIlZvbGF0aWxpdHkgTW9udGgiXX0sMTExNTQ4KGUpe2UuZXhwb3J0cz1bIlZvbGF0aWxpdHkgVyJdfSwxNjIyNjUoZSl7ZS5leHBvcnRzPVsiVm9sYXRpbGl0eSBXZWVrIl19LDI0NzA2MihlKXtlLmV4cG9ydHM9WyJWb2x1bWUiXX0sNzExMTg4KGUpe2UuZXhwb3J0cz1bIlZvbHVtZSAyNGggQ2hhbmdlICUiXX0sNTU3OTMzKGUpe2UuZXhwb3J0cz1bIlZvbHVtZSAyNGggaW4gVVNEIl19LDU0MzM5MShlKXtlLmV4cG9ydHM9WyJWb2x1bWUgV2VpZ2h0ZWQgTW92aW5nIEF2ZXJhZ2UgKDIwKSJdfSwxNTUyODAoZSl7ZS5leHBvcnRzPVsiVm9sdW1lIGxlYWRlcnMiXX0sNjkwMjA2KGUpe2UuZXhwb3J0cz1bIlZvbHVtZSpQcmljZSJdfSw3OTYyNTYoZSl7ZS5leHBvcnRzPVsiVmFsdWF0aW9uIl19LDMxMDg2OShlKXtlLmV4cG9ydHM9WyJWYWx1ZSJdfSw0MTYyNTcoZSl7ZS5leHBvcnRzPVsiVmFudWF0dSJdfSwxMjY3NChlKXtlLmV4cG9ydHM9WyJWZXRlcmluYXJ5IERydWdzIl19LDYxOTQ5MChlKXtlLmV4cG9ydHM9WyJWZXRlcmluYXJ5IE1lZGljYWwgRXF1aXBtZW50ICYgU3VwcGxpZXMiXX0sNzkxMzg0KGUpe2UuZXhwb3J0cz1bIlZldGVyaW5hcnkgU2VydmljZXMiXX0sNjEwNjgwKGUpe2UuZXhwb3J0cz1bIlZlZ2V0YWJsZSwgRnJ1aXQgJiBOdXQgRmFybWluZyJdfSwyNDk2ODUoZSl7ZS5leHBvcnRzPVsiVmVuZGluZyBNYWNoaW5lIFByb3ZpZGVycyJdfSw2NDM1MDMoZSl7ZS5leHBvcnRzPVsiVmVuZXp1ZWxhIl19LDM4NjU4NihlKXsKZS5leHBvcnRzPVsiVmVudHVyZSBDYXBpdGFsIl19LDg1MjIxKGUpe2UuZXhwb3J0cz1bIlZpZXRuYW0iXX0sNDIzMjA2KGUpe2UuZXhwb3J0cz1bIlZpcmdpbiBJc2xhbmRzIChCcml0aXNoKSJdfSwzMDEyMjkoZSl7ZS5leHBvcnRzPVsiVmlyZ2luIElzbGFuZHMgKFUuUy4pIl19LDUxNzg1OShlKXtlLmV4cG9ydHM9WyJWaXNpdCBUcmFkaW5nVmlldyDigJQgZmluYW5jaWFsIGNoYXJ0aW5nIHBsYXRmb3JtIGFuZCB0cmFkaW5nIGNvbW11bml0eSJdfSw2NDc0NzEoZSl7ZS5leHBvcnRzPVsiWVREIFBlcmYiXX0sODUzMTAwKGUpe2UuZXhwb3J0cz1bIllURCBQZXJmb3JtYW5jZSJdfSw3MjM2MyhlKXtlLmV4cG9ydHM9WyJZb3UgYXJlIG5vdGlmaWVkIl19LDcxNzM1MChlKXtlLmV4cG9ydHM9WyJZb3UgaGF2ZSB1bnNhdmVkIGNoYW5nZXMgaW4geW91ciBjdXJyZW50IGNvbHVtbiBzZXQuIFdvdWxkIHlvdSBsaWtlIHRvIHNhdmUgdGhlbT8iXX0sMjcwNjQ0KGUpe2UuZXhwb3J0cz1bIllvdSBoYXZlIHVuc2F2ZWQgY2hhbmdlcyBpbiB5b3VyIGN1cnJlbnQgZmlsdGVyIHNldC4gV291bGQgeW91IGxpa2UgdG8gc2F2ZSB0aGVtPyJdfSw5NjMzMTgoZSl7ZS5leHBvcnRzPVsiWW91IGhhdmUgdW5zYXZlZCBjaGFuZ2VzIGluIHlvdXIgY3VycmVudCBzY3JlZW4uIFdvdWxkIHlvdSBsaWtlIHRvIHNhdmUgdGhlbT8iXX0sMzI3MzA1KGUpe2UuZXhwb3J0cz1bIllvdSdyZSBjdXJyZW50bHkgdXNpbmcgb3VyIGxlZ2FjeSBTdG9jayBTY3JlZW5lci4gVGhpcyB2ZXJzaW9uIGlzIG5vIGxvbmdlciBzdXBwb3J0ZWQgYW5kIHdvbid0IHJlY2VpdmUgYW55IHVwZGF0ZXMgb3IgZml4ZXMgbW92aW5nIGZvcndhcmQuIFRvIGNvbnRpbnVlIHNjcmVlbmluZyB3aXRoIGZ1bGwgc3BlZWQsIHJlbGlhYmlsaXR5LCBhbmQgbmV3IGZlYXR1cmVzLCBwbGVhc2Ugc3dpdGNoIHRvIG91ciBuZXcgU3RvY2sgU2NyZWVuZXIg4oCUIGJ1aWx0IGJhc2VkIG9uIHlvdXIgZmVlZGJhY2sgYW5kIHJlYWR5IHRvIHN1cHBvcnQgeW91ciB0cmFkaW5nIG5lZWRzLiBUcnVzdCB1cywgdGhlIG5ldyBzY3JlZW5lciBpcyB3b3J0aCBpdC4iXX0sMzA5NTIzKGUpe2UuZXhwb3J0cz1bIllhcm4gR29vZHMiXX0sMTgzNTY0KGUpe2UuZXhwb3J0cz1bIlllYXJseSBQZXJmIl19LDEyOTgwOShlKXtlLmV4cG9ydHM9WyJZZWFybHkgUGVyZm9ybWFuY2UiXX0sNDA5Mzg0KGUpe2UuZXhwb3J0cz1bIlllbWVuIl19LDk2NTU3MyhlKXtlLmV4cG9ydHM9WyJZZXN0ZXJkYXkiXX0sODY3MzkzKGUpe2UuZXhwb3J0cz1bIlphbWJpYSJdfSw5NTkxNTUoZSl7ZS5leHBvcnRzPVsiWmltYmFid2UiXX0sOTUwMjA3KGUpe2UuZXhwb3J0cz1bIlppbmMgT3JlIE1pbmluZyJdfSw3MjExMTgoZSl7ZS5leHBvcnRzPVsiYW5udWFsbHkiXX0sNjUzNjkoZSl7ZS5leHBvcnRzPVsiYmlsbGVkIG1vbnRobHkiXX0sMjYwMTkzKGUpe2UuZXhwb3J0cz1bImJpbGxlZCBhbm51YWxseSJdfSw1NTY1NjgoZSl7ZS5leHBvcnRzPVsibW9udGhseSJdfSw4NjM4NTIoZSl7ZS5leHBvcnRzPVsidGhyZWUgbW9udGhzIl19LDgzNTgoZSl7ZS5leHBvcnRzPVsidHJpYWwiXX0sMTUzNzY2KGUpe2UuZXhwb3J0cz1bIntwcm9QbGFuTmFtZX0gVHJpYWwiXX0sMjk1NjIwKGUpe2UuZXhwb3J0cz1bIntyZXNvbHV0aW9ufSBDSEciXX0sNjAyNjAxKGUpe2UuZXhwb3J0cz1bIntyZXNvbHV0aW9ufSBDSEcgJSJdfSw5MDY1NTQoZSl7ZS5leHBvcnRzPVsiw4VsYW5kIElzbGFuZHMiXX0sNTU0NzIyKGUpe2UuZXhwb3J0cz1bIlJlZnJlc2ggZXZlcnkgbWludXRlcyIsIlJlZnJlc2ggZXZlcnkgezB9IG1pbnV0ZXMiXX0sNjMxNDQ3KGUpe2UuZXhwb3J0cz1bIlJlZnJlc2ggZXZlcnkgc2Vjb25kIiwiUmVmcmVzaCBldmVyeSB7MH0gc2Vjb25kcyJdfSwzMjM0ODUoZSl7ZS5leHBvcnRzPVsibW9udGgiLCJtb250aHMiXX0sMjQ1MjYyKGUpe2UuZXhwb3J0cz1bIntudW1iZXJ9IGRheSIsIntudW1iZXJ9IGRheXMiXX0sODI0MjE4KGUpe2UuZXhwb3J0cz1bIntudW1iZXJ9IGhvdXIiLCJ7bnVtYmVyfSBob3VycyJdfSw5ODM3NjQoZSl7ZS5leHBvcnRzPVsie251bWJlcn0gaXRlbSIsIntudW1iZXJ9IGl0ZW1zIl19LDcyMDg5MyhlKXtlLmV4cG9ydHM9WyJ7bnVtYmVyfSBtb250aCIsIntudW1iZXJ9IG1vbnRocyJdfSw1NDA1NjUoZSl7ZS5leHBvcnRzPVsie251bWJlcn0gbWF0Y2giLCJ7bnVtYmVyfSBtYXRjaGVzIl19LDcwNDk1OChlKXtlLmV4cG9ydHM9WyJ7bnVtYmVyfSBtaW51dGUiLCJ7bnVtYmVyfSBtaW51dGVzIl19LDgzMjcxNyhlKXtlLmV4cG9ydHM9WyJ7bnVtYmVyfSB3ZWVrIiwie251bWJlcn0gd2Vla3MiXX0sNDQyNjY2KGUpe2UuZXhwb3J0cz1bInllYXIiLCJ5ZWFycyJdfSwyNTg2NjcoZSl7ZS5leHBvcnRzPU9iamVjdC5jcmVhdGUobnVsbCksZS5leHBvcnRzWyIjQUFQTC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkFwcGxlIEluYyJdLGUuZXhwb3J0c1siI0FNRVg6U0NITy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNjaHdhYiBTaG9ydC1UZXJtIFUuUy4gVHJlYXN1cnkgRVRGIl0sZS5leHBvcnRzWyIjQU1FWDpTSFlHLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU2hhcmVzIDAtNSBZRUFSIEhpZ2ggWWllbGQgQ29ycG9yYXRlIEJvbmQgRVRGIl0sZS5leHBvcnRzWyIjQVNYOlhBRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUC9BU1ggQWxsIEF1c3RyYWxpYW4gNTAgSW5kZXgiXSxlLmV4cG9ydHNbIiNBU1g6WEFULXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQL0FTWCBBbGwgQXVzdHJhbGlhbiAyMDAgSW5kZXgiXSxlLmV4cG9ydHNbIiNBU1g6WEpPLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQL0FTWCAyMDAgSW5kZXgiXSxlLmV4cG9ydHNbIiNBVURDQUQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBdXN0cmFsaWFuIERvbGxhci9DYW5hZGlhbiBEb2xsYXIiXSxlLmV4cG9ydHNbIiNBVURDSEYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBdXN0cmFsaWFuIERvbGxhciAvIFN3aXNzIEZyYW5jIl0sCmUuZXhwb3J0c1siI0FVREpQWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkF1c3RyYWxpYW4gRG9sbGFyIC8gSmFwYW5lc2UgWWVuIl0sZS5leHBvcnRzWyIjQVVETlpELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQXVzdHJhbGlhbiBEb2xsYXIgLyBOZXcgWmVhbGFuZCBEb2xsYXIiXSxlLmV4cG9ydHNbIiNBVURSVUItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBdXN0cmFsaWFuIERvbGxhciAvIFJ1c3NpYW4gUnVibGUiXSxlLmV4cG9ydHNbIiNBVURVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBdXN0cmFsaWFuIERvbGxhciAvIFUuUy4gRG9sbGFyIl0sZS5leHBvcnRzWyIjQkNCQTpJTVYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAgTUVSVkFMIEluZGV4Il0sZS5leHBvcnRzWyIjQkNIRVVSLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiBDYXNoIC8gRXVybyJdLGUuZXhwb3J0c1siI0JDSFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gQ2FzaCAvIFUuUy4gRG9sbGFyIl0sZS5leHBvcnRzWyIjQkVMRVg6QkVMRVgxNS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJFTEVYIDE1IEluZGV4Il0sZS5leHBvcnRzWyIjQklTVDpYVTEwMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJJU1QgMTAwIEluZGV4Il0sZS5leHBvcnRzWyIjQklUTUVYOlhCVC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gLyBVLlMuIERvbGxhciBJbmRleCJdLGUuZXhwb3J0c1siI0JNRTpJQkMtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJQkVYIDM1IEluZGV4Il0sZS5leHBvcnRzWyIjQk1GQk9WRVNQQTpJQk9WLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQm92ZXNwYSBJbmRleCJdLGUuZXhwb3J0c1siI0JNRkJPVkVTUEE6SUJSQS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIklCcmFzaWwgSW5kZXgiXSxlLmV4cG9ydHNbIiNCTUZCT1ZFU1BBOklCWEwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcmF6aWwgNTAgSW5kZXgiXSxlLmV4cG9ydHNbIiNCTVY6Q1Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDaGluYSBTWDIwIFJUIl0sZS5leHBvcnRzWyIjQk1WOkYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJGb3JkIE1vdG9yIENvbXBhbnkiXSxlLmV4cG9ydHNbIiNCTVY6TUUtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAvQk1WIElQQyBJbmRleCJdLGUuZXhwb3J0c1siI0JSTEpQWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyYXppbGlhbiBSZWFsIC8gSmFwYW5lc2UgWWVuIl0sZS5leHBvcnRzWyIjQlNFOklUSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIklUSSBMdGQiXSxlLmV4cG9ydHNbIiNCU0U6U0VOU0VYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIEJTRSBTZW5zZXggSW5kZXgiXSxlLmV4cG9ydHNbIiNCVENCUkwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIC8gQnJhemlsaWFuIFJlYWwiXSxlLmV4cG9ydHNbIiNCVENDQUQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIC8gQ2FuYWRpYW4gRG9sbGFyIl0sZS5leHBvcnRzWyIjQlRDQ05ZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIENoaW5lc2UgWXVhbiJdLGUuZXhwb3J0c1siI0JUQ0VVUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gLyBFdXJvIl0sZS5leHBvcnRzWyIjQlRDR0JQLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIEJyaXRpc2ggUG91bmQiXSxlLmV4cG9ydHNbIiNCVENKUFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIC8gSmFwYW5lc2UgWWVuIl0sZS5leHBvcnRzWyIjQlRDS1JXLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIFNvdXRoIEtvcmVhbiBXb24iXSxlLmV4cG9ydHNbIiNCVENQTE4tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIC8gUG9saXNoIFpsb3R5Il0sZS5leHBvcnRzWyIjQlRDUlVCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIFJ1c3NpYW4gUnVibGUiXSxlLmV4cG9ydHNbIiNCVENUSEItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIC8gVGhhaSBCYWh0Il0sZS5leHBvcnRzWyIjQlRDVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiAvIFUuUy4gRG9sbGFyIl0sZS5leHBvcnRzWyIjQlRHVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQml0Y29pbiBHb2xkIC8gVS5TLiBEb2xsYXIiXSxlLmV4cG9ydHNbIiNCVkw6U1BCTFBHUFQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAgLyBCVkwgUGVydSBHZW5lcmFsIEluZGV4IChQRU4pIl0sZS5leHBvcnRzWyIjQlZTUC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyYXppbCBCb3Zlc3BhIEluZGV4Il0sZS5leHBvcnRzWyIjQ0FESlBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ2FuYWRpYW4gRG9sbGFyIC8gSmFwYW5lc2UgWWVuIl0sZS5leHBvcnRzWyIjQ0FEVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ2FuYWRpYW4gRG9sbGFyIC8gVS5TLiBEb2xsYXIiXSxlLmV4cG9ydHNbIiNDQk9FOk9FWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUCAxMDAgSW5kZXgiXSxlLmV4cG9ydHNbIiNDQk9FOlZJWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlZvbGF0aWxpdHkgUyZQIDUwMCBJbmRleCJdLGUuZXhwb3J0c1siI0NCT1Q6WkIxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlQtQm9uZCBGdXR1cmVzIl0sZS5leHBvcnRzWyIjQ0JPVDpaQzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ29ybiBGdXR1cmVzIl0sZS5leHBvcnRzWyIjQ0JPVDpaTTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU295YmVhbiBNZWFsIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDQk9UOlpOMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyIxMCBZZWFyIFQtTm90ZSBGdXR1cmVzIl0sZS5leHBvcnRzWyIjQ0JPVDpaTzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiT2F0IEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDQk9UOlpRMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyIzMCBEYXkgRmVkZXJhbCBGdW5kcyBJbnRlcmVzdCBSYXRlIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDQk9UOlpSMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJSaWNlIEZ1dHVyZXMiXSwKZS5leHBvcnRzWyIjQ0JPVDpaUzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU295YmVhbiBGdXR1cmVzIl0sZS5leHBvcnRzWyIjQ0JPVDpaVzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiV2hlYXQgRnV0dXJlcyJdLGUuZXhwb3J0c1siI0NCT1RfTUlOSTpYSzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU295YmVhbiBNaW5pIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDQk9UX01JTkk6WFcxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIldoZWF0IE1pbmkgRnV0dXJlcyJdLGUuZXhwb3J0c1siI0NCT1RfTUlOSTpZTTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRS1taW5pIERvdyBKb25lcyAoJDUpIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDSEZKUFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTd2lzcyBGcmFuYyAvIEphcGFuZXNlIFllbiJdLGUuZXhwb3J0c1siI0NIRlVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlN3aXNzIEZyYW5jIC8gVS5TLiBEb2xsYXIiXSxlLmV4cG9ydHNbIiNDTUU6QlRDMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCaXRjb2luIENNRSBGdXR1cmVzIl0sZS5leHBvcnRzWyIjQ01FOkNCMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCdXR0ZXIgRnV0dXJlcy1DYXNoIChDb250aW51b3VzOiBDdXJyZW50IGNvbnRyYWN0IGluIGZyb250KSJdLGUuZXhwb3J0c1siI0NNRTpHRjEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRmVlZGVyIENhdHRsZSBGdXR1cmVzIl0sZS5leHBvcnRzWyIjQ01FOkhFMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJMZWFuIEhvZ3MgRnV0dXJlcyJdLGUuZXhwb3J0c1siI0NNRTpMRTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTGl2ZSBDYXR0bGUgRnV0dXJlcyJdLGUuZXhwb3J0c1siI0NNRV9NSU5JOkU3MSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIEUtbWluaSBGdXR1cmVzIl0sZS5leHBvcnRzWyIjQ01FX01JTkk6RVMxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUCA1MDAgRS1taW5pIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDTUVfTUlOSTpKNzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSmFwYW5lc2UgWWVuIEUtbWluaSBGdXR1cmVzIl0sZS5leHBvcnRzWyIjQ01FX01JTkk6TlExIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5BU0RBUSAxMDAgRS1taW5pIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDTUVfTUlOSTpSVFkxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkUtTWluaSBSdXNzZWxsIDIwMDAgSW5kZXggRnV0dXJlcyJdLGUuZXhwb3J0c1siI0NPTUVYOkFFUDEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQWx1bWluaXVtIEV1cm9wZWFuIFByZW1pdW0gRnV0dXJlcyJdLGUuZXhwb3J0c1siI0NPTUVYOkFVUDEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQWx1bWludW0gTVcgVS5TLiBUcmFuc2FjdGlvbiBQcmVtaXVtIFBsYXR0cyAoMjVNVCkgRnV0dXJlcyJdLGUuZXhwb3J0c1siI0NPTUVYOkdDMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJHb2xkIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDT01FWDpIRzEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ29wcGVyIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDT01FWDpTSTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU2lsdmVyIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDT01FWF9NSU5JOlFDMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFLW1pbmkgQ29wcGVyIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDT01FWF9NSU5JOlFJMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTaWx2ZXIgKE1pbmkpIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNDT01FWF9NSU5JOlFPMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJHb2xkIChNaW5pKSBGdXR1cmVzIl0sZS5leHBvcnRzWyIjQ09QUEVSLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBDb3BwZXIiXSxlLmV4cG9ydHNbIiNDT1JOVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBDb3JuIl0sZS5leHBvcnRzWyIjQ09UVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBDb3R0b24iXSxlLmV4cG9ydHNbIiNDUllQVE9DQVA6VE9UQUwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDcnlwdG8gVG90YWwgTWFya2V0IENhcCwgJCJdLGUuZXhwb3J0c1siI0RGTTpERk1HSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRGTSBJbmRleCJdLGUuZXhwb3J0c1siI0RKOkRKQS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBDb21wb3NpdGUgQXZlcmFnZSBJbmRleCJdLGUuZXhwb3J0c1siI0RKOkRKQ0lBR0Mtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgQ29tbW9kaXR5IEluZGV4IEFncmljdWx0dXJlIENhcHBlZCBDb21wb25lbnQiXSxlLmV4cG9ydHNbIiNESjpESkNJQ0Mtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgQ29tbW9kaXR5IEluZGV4IENvY29hIl0sZS5leHBvcnRzWyIjREo6REpDSUVOLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRG93IEpvbmVzIENvbW1vZGl0eSBJbmRleCBFbmVyZ3kiXSxlLmV4cG9ydHNbIiNESjpESkNJR0Mtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgQ29tbW9kaXR5IEluZGV4IEdvbGQiXSxlLmV4cG9ydHNbIiNESjpESkNJR1Itc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgQ29tbW9kaXR5IEluZGV4IEdyYWlucyJdLGUuZXhwb3J0c1siI0RKOkRKQ0lJSy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBDb21tb2RpdHkgSW5kZXggTmlja2VsIl0sZS5leHBvcnRzWyIjREo6REpDSUtDLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRG93IEpvbmVzIENvbW1vZGl0eSBJbmRleCBDb2ZmZWUiXSxlLmV4cG9ydHNbIiNESjpESkNJU0Itc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgQ29tbW9kaXR5IEluZGV4IFN1Z2FyIl0sZS5leHBvcnRzWyIjREo6REpDSVNJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRG93IEpvbmVzIENvbW1vZGl0eSBJbmRleCBTaWx2ZXIiXSxlLmV4cG9ydHNbIiNESjpESkktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEb3cgSm9uZXMgSW5kdXN0cmlhbCBBdmVyYWdlIEluZGV4Il0sCmUuZXhwb3J0c1siI0RKOkRKVC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBUcmFuc3BvcnRhdGlvbiBBdmVyYWdlIEluZGV4Il0sZS5leHBvcnRzWyIjREo6REpVLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRG93IEpvbmVzIFV0aWxpdHkgQXZlcmFnZSBJbmRleCJdLGUuZXhwb3J0c1siI0RKOkRKVVNDTC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBVLlMuIENvYWwgSW5kZXgiXSxlLmV4cG9ydHNbIiNFR1g6RUdYMzAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFR1ggMzAgSW5kZXgiXSxlLmV4cG9ydHNbIiNFVENCVEMtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdGhlcmV1bSBDbGFzc2ljIC8gQml0Y29pbiJdLGUuZXhwb3J0c1siI0VUQ0VVUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV0aGVyZXVtIENsYXNzaWMgLyBFdXJvIl0sZS5leHBvcnRzWyIjRVRDVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXRoZXJldW0gQ2xhc3NpYyAvIFUuUy4gRG9sbGFyIl0sZS5leHBvcnRzWyIjRVRIQlRDLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXRoZXJldW0gLyBCaXRjb2luIl0sZS5leHBvcnRzWyIjRVRIRVVSLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXRoZXJldW0gLyBFdXJvIl0sZS5leHBvcnRzWyIjRVRIR0JQLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXRoZXJldW0gLyBCcml0aXNoIFBvdW5kIl0sZS5leHBvcnRzWyIjRVRISlBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXRoZXJldW0gLyBKYXBhbmVzZSBZZW4iXSxlLmV4cG9ydHNbIiNFVEhLUlctc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdGhlcmV1bSAvIFNvdXRoIEtvcmVhbiBXb24iXSxlLmV4cG9ydHNbIiNFVEhUSEItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdGhlcmV1bSAvIFRoYWkgQmFodCJdLGUuZXhwb3J0c1siI0VUSFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV0aGVyZXVtIC8gVS5TLiBEb2xsYXIiXSxlLmV4cG9ydHNbIiNFVUJVTkQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIEJ1bmQiXSxlLmV4cG9ydHNbIiNFVVJBVUQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gQXVzdHJhbGlhbiBEb2xsYXIiXSxlLmV4cG9ydHNbIiNFVVJCUkwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gQnJhemlsaWFuIFJlYWwiXSxlLmV4cG9ydHNbIiNFVVJDQUQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gQ2FuYWRpYW4gRG9sbGFyIl0sZS5leHBvcnRzWyIjRVVSQ0hGLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyAvIFN3aXNzIEZyYW5jIl0sZS5leHBvcnRzWyIjRVVSR0JQLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyAvIEJyaXRpc2ggUG91bmQiXSxlLmV4cG9ydHNbIiNFVVJKUFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIC8gSmFwYW5lc2UgWWVuIl0sZS5leHBvcnRzWyIjRVVSTk9LLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyAvIE5vcndlZ2lhbiBLcm9uZSJdLGUuZXhwb3J0c1siI0VVUk5aRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gLyBOZXcgWmVhbGFuZCBEb2xsYXIiXSxlLmV4cG9ydHNbIiNFVVJPTkVYVDpBRVgtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBRVggSW5kZXgiXSxlLmV4cG9ydHNbIiNFVVJPTkVYVDpCRUwyMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJFTCAyMCBJbmRleCJdLGUuZXhwb3J0c1siI0VVUk9ORVhUOlBYMS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNBQyA0MCBJbmRleCJdLGUuZXhwb3J0c1siI0VVUlJVQi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gLyBSdXNzaWFuIFJ1YmxlIl0sZS5leHBvcnRzWyIjRVVSUlVCX1RPTS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gLyBSdXNzaWFuIFJ1YmxlIFRPTSJdLGUuZXhwb3J0c1siI0VVUlNFSy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gLyBTd2VkaXNoIEtyb25hIl0sZS5leHBvcnRzWyIjRVVSVFJZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyAvIFR1cmtpc2ggTGlyYSJdLGUuZXhwb3J0c1siI0VVUlVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gLyBVLlMuIERvbGxhciJdLGUuZXhwb3J0c1siI0VVU1RYNTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFdXJvIFN0b3h4IDUwIEluZGV4Il0sZS5leHBvcnRzWyIjRk9SRVhDT006VVMyMDAwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVVMgU21hbGwgQ2FwIDIwMDAiXSxlLmV4cG9ydHNbIiNGUkE0MC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNBQyA0MCBJbmRleCJdLGUuZXhwb3J0c1siI0ZSRUQ6R0RQLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiR3Jvc3MgRG9tZXN0aWMgUHJvZHVjdCwgMSBEZWNpbWFsIl0sZS5leHBvcnRzWyIjRlJFRDpQT1Atc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJUb3RhbCBQb3B1bGF0aW9uOiBBbGwgQWdlcyBJbmNsdWRpbmcgQXJtZWQgRm9yY2VzIE92ZXJzZWFzIl0sZS5leHBvcnRzWyIjRlJFRDpVTlJBVEUtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDaXZpbGlhbiBVbmVtcGxveW1lbnQgUmF0ZSJdLGUuZXhwb3J0c1siI0ZUU0VNWVg6RkJNS0xDSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkZUU0UgQnVyc2EgTWFsYXlzaWEgS0xDSSBJbmRleCJdLGUuZXhwb3J0c1siI0ZXQjpLVDEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJLZXkgVHJvbmljIENvctGALiJdLGUuZXhwb3J0c1siI0ZYOkFVUzIwMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUC9BU1ggSW5kZXgiXSxlLmV4cG9ydHNbIiNGWDpVUzMwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRG93IEpvbmVzIEluZHVzdHJpYWwgQXZlcmFnZSBJbmRleCJdLGUuZXhwb3J0c1siI0dCUEFVRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyaXRpc2ggUG91bmQgLyBBdXN0cmFsaWFuIERvbGxhciJdLGUuZXhwb3J0c1siI0dCUENBRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyaXRpc2ggUG91bmQgLyBDYW5hZGlhbiBEb2xsYXIiXSxlLmV4cG9ydHNbIiNHQlBDSEYtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcml0aXNoIFBvdW5kIC8gU3dpc3MgRnJhbmMiXSwKZS5leHBvcnRzWyIjR0JQRVVSLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnJpdGlzaCBQb3VuZCAvIEV1cm8iXSxlLmV4cG9ydHNbIiNHQlBKUFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcml0aXNoIFBvdW5kIC8gSmFwYW5lc2UgWWVuIl0sZS5leHBvcnRzWyIjR0JQTlpELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnJpdGlzaCBQb3VuZCAvIE5ldyBaZWFsYW5kIERvbGxhciJdLGUuZXhwb3J0c1siI0dCUFBMTi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyaXRpc2ggUG91bmQgLyBQb2xpc2ggWmxvdHkiXSxlLmV4cG9ydHNbIiNHQlBSVUItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcml0aXNoIFBvdW5kIC8gUnVzc2lhbiBSdWJsZSJdLGUuZXhwb3J0c1siI0dCUFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJyaXRpc2ggUG91bmQgLyBVLlMuIERvbGxhciJdLGUuZXhwb3J0c1siI0dFUjMwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiREFYIEluZGV4Il0sZS5leHBvcnRzWyIjR09PRy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkFscGhhYmV0IEluYyAoR29vZ2xlKSBDbGFzcyBDIl0sZS5leHBvcnRzWyIjR09PR0wtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBbHBoYWJldCBJbmMgKEdvb2dsZSkgQ2xhc3MgQSJdLGUuZXhwb3J0c1siI0dQVzpBQ0ctc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBY2F1dG9nYXoiXSxlLmV4cG9ydHNbIiNHUFc6V0lHMjAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJXSUcyMCBJbmRleCJdLGUuZXhwb3J0c1siI0hTSTpIU0ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJIYW5nIFNlbmcgSW5kZXgiXSxlLmV4cG9ydHNbIiNJQ0VVUzpEWDEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgSW5kZXggRnV0dXJlcyJdLGUuZXhwb3J0c1siI0lEWDpDT01QT1NJVEUtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJRFggQ29tcG9zaXRlIEluZGV4Il0sZS5leHBvcnRzWyIjSU5ERVg6SFNDRS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkhhbmcgU2VuZyBDaGluYSBFbnRlcnByaXNlcyBJbmRleCJdLGUuZXhwb3J0c1siI0lOREVYOkpLU0Utc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJKYWthcnRhIENvbXBvc2l0ZSBJbmRleCJdLGUuZXhwb3J0c1siI0lOREVYOktMU0Utc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCdXJzYSBNYWxheXNpYSBLTENJIEluZGV4Il0sZS5leHBvcnRzWyIjSU5ERVg6TUlCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTUlCIEluZGV4Il0sZS5leHBvcnRzWyIjSU5ERVg6TU9ZMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gU3RveHggNTAgSW5kZXgiXSxlLmV4cG9ydHNbIiNJTkRFWDpTVEktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTVEkgSW5kZXgiXSxlLmV4cG9ydHNbIiNJTkRFWDpUV0lJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVGFpd2FuIFdlaWdodGVkIEluZGV4Il0sZS5leHBvcnRzWyIjSU5ERVg6WExZMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNoYW5naGFpIENvbXBvc2l0ZSBJbmRleCJdLGUuZXhwb3J0c1siI0lPVFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIklPVEEgLyBVLlMuIERvbGxhciJdLGUuZXhwb3J0c1siI0pQTjIyNS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkphcGFuIDIyNSBJbmRleCJdLGUuZXhwb3J0c1siI0pQWUtSVy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkphcGFuZXNlIFllbiAvIFNvdXRoIEtvcmVhbiBXb24iXSxlLmV4cG9ydHNbIiNKUFlSVUItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJKYXBhbmVzZSBZZW4gLyBSdXNzaWFuIFJ1YmxlIl0sZS5leHBvcnRzWyIjSlBZVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSmFwYW5lc2UgWWVuIC8gVS5TLiBEb2xsYXIiXSxlLmV4cG9ydHNbIiNMS09ILXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTFVLT0lMIl0sZS5leHBvcnRzWyIjTFNFOlNDSE8tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTY2hvbGl1bSBHcm91cCBQbGMgT3JkIDFQIl0sZS5leHBvcnRzWyIjTFRDQlJMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTGl0ZWNvaW4gLyBCcmF6aWxpYW4gUmVhbCJdLGUuZXhwb3J0c1siI0xUQ0JUQy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkxpdGVjb2luIC8gQml0Y29pbiJdLGUuZXhwb3J0c1siI0xUQ1VTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkxpdGVjb2luIC8gVS5TLiBEb2xsYXIiXSxlLmV4cG9ydHNbIiNMVU5BVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTHVuYSAvIFUuUy4gRG9sbGFyIl0sZS5leHBvcnRzWyIjTU9FWDpCUjEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQnJlbnQgT2lsIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNNT0VYOkdBWlAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJHQVpQUk9NIl0sZS5leHBvcnRzWyIjTU9FWDpJTU9FWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1PRVggUnVzc2lhIEluZGV4Il0sZS5leHBvcnRzWyIjTU9FWDpNR05ULXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTUFHTklUIl0sZS5leHBvcnRzWyIjTU9FWDpNSUNFWElOREVYQ0Ytc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJNT0VYIFJ1c3NpYSBJbmRleCJdLGUuZXhwb3J0c1siI01PRVg6TVgxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1JQ0VYIEluZGV4IEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNNT0VYOk1YMiEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJNSUNFWCBJbmRleCBGdXR1cmVzIl0sZS5leHBvcnRzWyIjTU9FWDpSSTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUlRTIEluZGV4IEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNNT0VYOlJUU0ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJSVFMgSW5kZXgiXSxlLmV4cG9ydHNbIiNNT0VYOlJVQUwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVbml0ZWQgQ29tcGFueSBSVVNBTCBQTEMiXSxlLmV4cG9ydHNbIiNNT0VYOlNCRVItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTQkVSQkFOSyJdLGUuZXhwb3J0c1siI01PRVg6VlRCUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlZUQiJdLGUuZXhwb3J0c1siI01TRlQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJNaWNyb3NvZnQgQ29ycC4iXSwKZS5leHBvcnRzWyIjTkFTMTAwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVVMgMTAwIENhc2ggQ0ZEIl0sZS5leHBvcnRzWyIjTkFTREFROkFNRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkFkdmFuY2VkIE1pY3JvIERldmljZXMgSW5jIl0sZS5leHBvcnRzWyIjTkFTREFROkdPT0ctc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBbHBoYWJldCBJbmMgKEdvb2dsZSkgQ2xhc3MgQyJdLGUuZXhwb3J0c1siI05BU0RBUTpHT09HTC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkFscGhhYmV0IEluYyAoR29vZ2xlKSBDbGFzcyBBIl0sZS5leHBvcnRzWyIjTkFTREFROkhHWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBITFggSG91c2luZyBTZWN0b3IgSW5kZXgiXSxlLmV4cG9ydHNbIiNOQVNEQVE6SUVGLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSXNoYXJlcyA3LTEwIFllYXIgVHJlYXN1cnkgQm9uZCBFVEYiXSxlLmV4cG9ydHNbIiNOQVNEQVE6SUVJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSXNoYXJlcyAzLTcgWWVhciBUcmVhc3VyeSBCb25kIEVURiJdLGUuZXhwb3J0c1siI05BU0RBUTpJVEktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJdGVyaXMgSW5jIl0sZS5leHBvcnRzWyIjTkFTREFROklYSUMtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOYXNkYXEgQ29tcG9zaXRlIEluZGV4Il0sZS5leHBvcnRzWyIjTkFTREFROkxDSUQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJMdWNpZCBHcm91cCwgSW5jLiJdLGUuZXhwb3J0c1siI05BU0RBUTpMRS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkxhbmRzJyBFbmQgSW5jIl0sZS5leHBvcnRzWyIjTkFTREFROk5EWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5hc2RhcSAxMDAgSW5kZXgiXSxlLmV4cG9ydHNbIiNOQVNEQVE6T1NYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUEhMWCBPaWwgU2VydmljZSBTZWN0b3IgSW5kZXgiXSxlLmV4cG9ydHNbIiNOQVNEQVE6U0hZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSXNoYXJlcyAxLTMgWWVhciBUcmVhc3VyeSBCb25kIEVURiJdLGUuZXhwb3J0c1siI05BU0RBUTpTT1gtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJQaGlsYWRlbHBoaWEgU2VtaWNvbmR1Y3RvciBJbmRleCJdLGUuZXhwb3J0c1siI05BU0RBUTpUTFQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJc2hhcmVzIDIwKyBZZWFyIFRyZWFzdXJ5IEJvbmQgRVRGIl0sZS5leHBvcnRzWyIjTkFTREFROlVUWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBITFggVXRpbGl0eSBTZWN0b3IgSW5kZXgiXSxlLmV4cG9ydHNbIiNOQVNEQVE6WEFVLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUEhMWCBHb2xkIGFuZCBTaWx2ZXIgU2VjdG9yIEluZGV4Il0sZS5leHBvcnRzWyIjTkFTREFROlpTLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiWnNjYWxlciBJbmMiXSxlLmV4cG9ydHNbIiNORU9VU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJORU8gLyBVLlMuIERvbGxhciJdLGUuZXhwb3J0c1siI05HQVMtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOYXR1cmFsIEdhcyAoSGVucnkgSHViKSJdLGUuZXhwb3J0c1siI05LWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkphcGFuIDIyNSBJbmRleCJdLGUuZXhwb3J0c1siI05TRTpJVEktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJbmRpYW4gVGVsZXBob25lIEluZHVzdHJpZXMgTGltaXRlZCJdLGUuZXhwb3J0c1siI05TRTpOSUZUWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5pZnR5IDUwIEluZGV4Il0sZS5leHBvcnRzWyIjTllNRVg6QUVaMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOWSBFdGhhbm9sIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNOWU1FWDpDSjEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ29jb2EgRnV0dXJlcyJdLGUuZXhwb3J0c1siI05ZTUVYOkNMMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJMaWdodCBDcnVkZSBPaWwgRnV0dXJlcyJdLGUuZXhwb3J0c1siI05ZTUVYOkhPMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOWSBIYXJib3IgVUxTRCBGdXR1cmVzIl0sZS5leHBvcnRzWyIjTllNRVg6S1QxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNvZmZlZSBGdXR1cmVzIl0sZS5leHBvcnRzWyIjTllNRVg6TkcxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5hdHVyYWwgR2FzIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNOWU1FWDpQQTEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUGFsbGFkaXVtIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNOWU1FWDpQTDEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUGxhdGludW0gRnV0dXJlcyJdLGUuZXhwb3J0c1siI05ZTUVYOlJCMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJSQk9CIEdhc29saW5lIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNOWU1FWDpUVDEhLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ290dG9uIEZ1dHVyZXMiXSxlLmV4cG9ydHNbIiNOWU1FWF9NSU5JOlFHMSEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJFLW1pbmkgTmF0dXJhbCBHYXMgRnV0dXJlcyJdLGUuZXhwb3J0c1siI05ZTUVYX01JTkk6UU0xIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkUtbWluaSBMaWdodCBDcnVkZSBPaWwgRnV0dXJlcyJdLGUuZXhwb3J0c1siI05ZTUVYX01JTkk6UVUxIS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkUtbWluaSBHYXNvbGluZSBGdXR1cmVzIl0sZS5leHBvcnRzWyIjTllTRTpCQUJBLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQWxpYmFiYSBHcm91cCBIb2xkaW5ncyBMdGQuIl0sZS5leHBvcnRzWyIjTllTRTpGLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRk9SRCBNVFIgQ08gREVMIl0sZS5leHBvcnRzWyIjTllTRTpIRS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkhhd2FpaWFuIEVsZWN0cmljIEluZHVzdHJpZXMiXSxlLmV4cG9ydHNbIiNOWVNFOk5ZQS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5ZU0UgQ29tcG9zaXRlIEluZGV4Il0sZS5leHBvcnRzWyIjTllTRTpQQlItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJQRVRST0xFTyBCUkFTSUxFSVJPIFNBIFBFVFJPQlIiXSxlLmV4cG9ydHNbIiNOWVNFOlhBWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkFNRVggQ29tcG9zaXRlIEluZGV4Il0sCmUuZXhwb3J0c1siI05ZU0U6WE1JLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTllTRSBBUkNBIE1ham9yIE1hcmtldCBJbmRleCJdLGUuZXhwb3J0c1siI05aREpQWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5ldyBaZWFsYW5kIERvbGxhciAvIEphcGFuZXNlIFllbiJdLGUuZXhwb3J0c1siI05aRFVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5ldyBaZWFsYW5kIERvbGxhciAvIFUuUy4gRG9sbGFyIl0sZS5leHBvcnRzWyIjTlpYOkFMTEMtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAvTlpYIEFsbCBJbmRleCAoQ2FwaXRhbCBJbmRleCkiXSxlLmV4cG9ydHNbIiNOWlg6Tlo1MEctc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAgLyBOWlggNTAgSW5kZXggR3Jvc3MiXSxlLmV4cG9ydHNbIiNPQU5EQTpOQVRHQVNVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIE5hdHVyYWwgR2FzIl0sZS5leHBvcnRzWyIjT0FOREE6U1BYNTAwVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIDUwMCBJbmRleCJdLGUuZXhwb3J0c1siI09BTkRBOlhDVVVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gQ29wcGVyIChVUyQgLyBsYikiXSxlLmV4cG9ydHNbIiNPTVhDT1A6T01YQzI1LXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiT01YIENvcGVuaGFnZW4gMjUgSW5kZXgiXSxlLmV4cG9ydHNbIiNPTVhDT1A6U0NITy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNjaG91dyAmIENvIEEvUyJdLGUuZXhwb3J0c1siI09NWEhFWDpPTVhIMjUtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJPTVggSGVsc2lua2kgMjUgSW5kZXgiXSxlLmV4cG9ydHNbIiNPTVhSU0U6T01YUkdJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiT01YIFJpZ2EgR3Jvc3MgSW5kZXgiXSxlLmV4cG9ydHNbIiNPTVhTVE86T01YUzMwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiT01YIFN0b2NraG9sbSAzMCBJbmRleCJdLGUuZXhwb3J0c1siI09NWFRTRTpPTVhUR0ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJPTVggVGFsbGlubiBHcm9zcyBJbmRleCJdLGUuZXhwb3J0c1siI09NWFZTRTpPTVhWR0ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJPTVggVmlsbml1cyBHcm9zcyBJbmRleCJdLGUuZXhwb3J0c1siI09UQzpJSFJNRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIklzaGFyZXMgTVNDSSBKYXBhbiBTSFMiXSxlLmV4cG9ydHNbIiNRU0U6R05SSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlFFIEluZGV4Il0sZS5leHBvcnRzWyIjUlRTLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUnVzc2lhbiBSVFMgSW5kZXgiXSxlLmV4cG9ydHNbIiNSVVNTRUxMOlJVQS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlJ1c3NlbGwgMzAwMCBJbmRleCJdLGUuZXhwb3J0c1siI1JVU1NFTEw6UlVJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUnVzc2VsbCAxMDAwIEluZGV4Il0sZS5leHBvcnRzWyIjUlVTU0VMTDpSVVQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJSdXNzZWxsIDIwMDAgSW5kZXgiXSxlLmV4cG9ydHNbIiNTRVQ6R0Mtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJHbG9iYWwgQ29ubmVjdGlvbnMgUHVibGljIENvbXBhbnkiXSxlLmV4cG9ydHNbIiNTSVg6Ri1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkZvcmQgTW90b3IgQ29tcGFueSJdLGUuZXhwb3J0c1siI1NJWDpTTUktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTd2lzcyBNYXJrZXQgSW5kZXgiXSxlLmV4cG9ydHNbIiNTT0xVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTb2xhbmEgLyBVLlMuIERvbGxhciJdLGUuZXhwb3J0c1siI1NPWUJOVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBTb3liZWFucyJdLGUuZXhwb3J0c1siI1NQOk9FWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUCAxMDAgSW5kZXgiXSxlLmV4cG9ydHNbIiNTUDpTUEdTQ0ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAgR29sZG1hbiBTYWNocyBDb21tb2RpdHkgSW5kZXgiXSxlLmV4cG9ydHNbIiNTUDpTUFgtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAgNTAwIEluZGV4Il0sZS5leHBvcnRzWyIjU1A6U1ZYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIDUwMCBWYWx1ZSBJbmRleCJdLGUuZXhwb3J0c1siI1NQWDUwMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlMmUCA1MDAgSW5kZXgiXSxlLmV4cG9ydHNbIiNTVUdBUlVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gU3VnYXIiXSxlLmV4cG9ydHNbIiNTWlNFOjM5OTAwMS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNoZW56aGVuIENvbXBvbmVudCBJbmRleCJdLGUuZXhwb3J0c1siI1RBREFXVUw6MjM3MC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1pZGRsZSBFYXN0IFNwZWNpYWxpemVkIENhYmxlcyBDby4iXSxlLmV4cG9ydHNbIiNUQURBV1VMOlRBU0ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJUYWRhd3VsIEFsbCBTaGFyZXMgSW5kZXgiXSxlLmV4cG9ydHNbIiNUQVNFOlRBMzUtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJUQS0zNSBJbmRleCJdLGUuZXhwb3J0c1siI1RTWDpUU1gtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTJlAvVFNYIENvbXBvc2l0ZSBJbmRleCJdLGUuZXhwb3J0c1siI1RTWDpUWDYwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQL1RTWCA2MCBJbmRleCJdLGUuZXhwb3J0c1siI1RWQzpBVTEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQXVzdHJhbGlhIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIiXSxlLmV4cG9ydHNbIiNUVkM6QVUxMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBdXN0cmFsaWEgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLGUuZXhwb3J0c1siI1RWQzpBWFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJBdXN0cmFsaWFuIERvbGxhciBDdXJyZW5jeSBJbmRleCJdLGUuZXhwb3J0c1siI1RWQzpCWFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJCcml0aXNoIFBvdW5kIEN1cnJlbmN5IEluZGV4Il0sZS5leHBvcnRzWyIjVFZDOkNBMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDYW5hZGlhbiBHb3Zlcm5tZW50IEJvbmRzLCAxMCBZUiJdLAplLmV4cG9ydHNbIiNUVkM6Q0ExMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDYW5hZGlhbiBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sZS5leHBvcnRzWyIjVFZDOkNBQzQwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0FDIDQwIEluZGV4Il0sZS5leHBvcnRzWyIjVFZDOkNOMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDaGluYSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sZS5leHBvcnRzWyIjVFZDOkNOMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ2hpbmEgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLGUuZXhwb3J0c1siI1RWQzpDWFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDYW5hZGlhbiBEb2xsYXIgQ3VycmVuY3kgSW5kZXgiXSxlLmV4cG9ydHNbIiNUVkM6REUxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkdlcm1hbiBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sZS5leHBvcnRzWyIjVFZDOkRFMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiR2VybWFuIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxlLmV4cG9ydHNbIiNUVkM6REVVMzAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJEQVggSW5kZXgiXSxlLmV4cG9ydHNbIiNUVkM6REpJLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRG93IEpvbmVzIEluZHVzdHJpYWwgQXZlcmFnZSBJbmRleCJdLGUuZXhwb3J0c1siI1RWQzpEWFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciBJbmRleCJdLGUuZXhwb3J0c1siI1RWQzpFUzEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU3BhaW4gR292ZXJubWVudCBCb25kcyAxMCBZUiJdLGUuZXhwb3J0c1siI1RWQzpFUzEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlNwYWluIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxlLmV4cG9ydHNbIiNUVkM6RVVCVU5ELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRXVybyBCdW5kIl0sZS5leHBvcnRzWyIjVFZDOkVYWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gQ3VycmVuY3kgSW5kZXgiXSxlLmV4cG9ydHNbIiNUVkM6RlIxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkZyYW5jZSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sZS5leHBvcnRzWyIjVFZDOkZSMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiRnJhbmNlIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxlLmV4cG9ydHNbIiNUVkM6RlRNSUItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJNaWxhbm8gSXRhbGlhIEJvcnNhIEluZGV4Il0sZS5leHBvcnRzWyIjVFZDOkdCMDItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVSyBHb3Zlcm5tZW50IEJvbmRzIDIgWVIiXSxlLmV4cG9ydHNbIiNUVkM6R0IxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVLIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIiXSxlLmV4cG9ydHNbIiNUVkM6R0IxMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVSyBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sZS5leHBvcnRzWyIjVFZDOkdPTEQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIEdvbGQgKFVTJCAvIE9aKSJdLGUuZXhwb3J0c1siI1RWQzpIU0ktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJIYW5nIFNlbmcgSW5kZXgiXSxlLmV4cG9ydHNbIiNUVkM6SUJFWDM1LXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSUJFWCAzNSBJbmRleCJdLGUuZXhwb3J0c1siI1RWQzpJRDAzLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSW5kb25lc2lhIEdvdmVybm1lbnQgQm9uZHMgMyBZUiJdLGUuZXhwb3J0c1siI1RWQzpJRDEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSW5kb25lc2lhIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIiXSxlLmV4cG9ydHNbIiNUVkM6SUQxMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJbmRvbmVzaWEgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLGUuZXhwb3J0c1siI1RWQzpJTjEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiSW5kaWEgR292ZXJubWVudCBCb25kcyAxMCBZUiJdLGUuZXhwb3J0c1siI1RWQzpJTjEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkluZGlhIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxlLmV4cG9ydHNbIiNUVkM6SVQxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkl0YWx5IEdvdmVybm1lbnQgQm9uZHMgMTAgWVIiXSxlLmV4cG9ydHNbIiNUVkM6SVQxMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJJdGFseSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sZS5leHBvcnRzWyIjVFZDOklYSUMtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVUyBDb21wb3NpdGUgSW5kZXgiXSxlLmV4cG9ydHNbIiNUVkM6SlAxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkphcGFuIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIiXSxlLmV4cG9ydHNbIiNUVkM6SlAxMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJKYXBhbiBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sZS5leHBvcnRzWyIjVFZDOkpYWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkphcGFuZXNlIFllbiBDdXJyZW5jeSBJbmRleCJdLGUuZXhwb3J0c1siI1RWQzpLT1NQSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIktvcmVhIENvbXBvc2l0ZSBTdG9jayBQcmljZSBJbmRleCJdLGUuZXhwb3J0c1siI1RWQzpLUjEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiS29yZWEgR292ZXJubWVudCBCb25kcyAxMCBZUiJdLGUuZXhwb3J0c1siI1RWQzpLUjEwWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIktvcmVhIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxlLmV4cG9ydHNbIiNUVkM6TVkxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1hbGF5c2lhIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIiXSxlLmV4cG9ydHNbIiNUVkM6TVkxMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJNYWxheXNpYSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sZS5leHBvcnRzWyIjVFZDOk5EWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIDEwMCBJbmRleCJdLGUuZXhwb3J0c1siI1RWQzpOSTIyNS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkphcGFuIDIyNSBJbmRleCJdLAplLmV4cG9ydHNbIiNUVkM6TkwxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk5ldGhlcmxhbmRzIEdvdmVybm1lbnQgQm9uZHMsIDEwIFlSIl0sZS5leHBvcnRzWyIjVFZDOk5MMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTmV0aGVybGFuZHMgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLGUuZXhwb3J0c1siI1RWQzpOWUEtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOWVNFIENvbXBvc2l0ZSBJbmRleCJdLGUuZXhwb3J0c1siI1RWQzpOWjEwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTmV3IFplYWxhbmQgR292ZXJubWVudCBCb25kcywgMTAgWVIiXSxlLmV4cG9ydHNbIiNUVkM6TloxMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJOZXcgWmVhbGFuZCBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sZS5leHBvcnRzWyIjVFZDOlBBTExBRElVTS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gUGFsbGFkaXVtIChVUyQgLyBPWikiXSxlLmV4cG9ydHNbIiNUVkM6UEwwNVktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJQb2xhbmQgR292ZXJubWVudCBCb25kcyA1IFlSIFlpZWxkIl0sZS5leHBvcnRzWyIjVFZDOlBMMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUG9sYW5kIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxlLmV4cG9ydHNbIiNUVkM6UExBVElOVU0tc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIFBsYXRpbnVtIChVUyQgLyBPWikiXSxlLmV4cG9ydHNbIiNUVkM6UFQxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlBvcnR1Z2FsIEdvdmVybm1lbnQgQm9uZHMgMTAgWVIiXSxlLmV4cG9ydHNbIiNUVkM6UFQxMFktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJQb3J0dWdhbCBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIFlpZWxkIl0sZS5leHBvcnRzWyIjVFZDOlNBNDAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJTb3V0aCBBZnJpY2EgVG9wIDQwIEluZGV4Il0sZS5leHBvcnRzWyIjVFZDOlNJTFZFUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gU2lsdmVyIChVUyQgLyBPWikiXSxlLmV4cG9ydHNbIiNUVkM6U1BYLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiUyZQIDUwMCBJbmRleCJdLGUuZXhwb3J0c1siI1RWQzpTU01JLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU3dpc3MgTWFya2V0IEluZGV4Il0sZS5leHBvcnRzWyIjVFZDOlNUSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlN0cmFpdHMgVGltZXMgSW5kZXgiXSxlLmV4cG9ydHNbIiNUVkM6U1g1RS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkV1cm8gU3RveHggNTAgSW5kZXgiXSxlLmV4cG9ydHNbIiNUVkM6U1hZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU3dpc3MgRnJhbmMgQ3VycmVuY3kgSW5kZXgiXSxlLmV4cG9ydHNbIiNUVkM6VFIxMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlR1cmtleSBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sZS5leHBvcnRzWyIjVFZDOlRSMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVHVya2V5IEdvdmVybm1lbnQgQm9uZHMgMTAgWVIgWWllbGQiXSxlLmV4cG9ydHNbIiNUVkM6VUtPSUwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIEJyZW50IENydWRlIE9pbCJdLGUuZXhwb3J0c1siI1RWQzpVS1gtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVSyAxMDAgSW5kZXgiXSxlLmV4cG9ydHNbIiNUVkM6VVMwMi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIEdvdmVybm1lbnQgQm9uZHMgMiBZUiJdLGUuZXhwb3J0c1siI1RWQzpVUzAyWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlVTIEdvdmVybm1lbnQgQm9uZHMgMiBZUiBZaWVsZCJdLGUuZXhwb3J0c1siI1RWQzpVUzA1LXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVVMgR292ZXJubWVudCBCb25kcyA1IFlSIl0sZS5leHBvcnRzWyIjVFZDOlVTMDVZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVVMgR292ZXJubWVudCBCb25kcyA1IFlSIFlpZWxkIl0sZS5leHBvcnRzWyIjVFZDOlVTMTAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVUyBHb3Zlcm5tZW50IEJvbmRzIDEwIFlSIl0sZS5leHBvcnRzWyIjVFZDOlVTMTBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVVMgR292ZXJubWVudCBCb25kcyAxMCBZUiBZaWVsZCJdLGUuZXhwb3J0c1siI1RWQzpVUzMwLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVVMgR292ZXJubWVudCBCb25kcyAzMCBZUiJdLGUuZXhwb3J0c1siI1RWQzpVU09JTC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gV1RJIENydWRlIE9pbCJdLGUuZXhwb3J0c1siI1RWQzpWSVgtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJWb2xhdGlsaXR5IFMmUCA1MDAgSW5kZXgiXSxlLmV4cG9ydHNbIiNUVkM6WlhZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiTmV3IFplYWxhbmQgRG9sbGFyIEN1cnJlbmN5IEluZGV4Il0sZS5leHBvcnRzWyIjVFdJSS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlRhaXdhbiBXZWlnaHRlZCBJbmRleCJdLGUuZXhwb3J0c1siI1RXU0U6VEFJRVgtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJUYWl3YW4gQ2FwaXRhbGl6YXRpb24gV2VpZ2h0ZWQgU3RvY2sgSW5kZXgiXSxlLmV4cG9ydHNbIiNUV1RSLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVHdpdHRlciBJbmMiXSxlLmV4cG9ydHNbIiNVSzEwMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkZUU0UgMTAwIEluZGV4Il0sZS5leHBvcnRzWyIjVUtPSUwtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIENydWRlIE9pbCAoQnJlbnQpIl0sZS5leHBvcnRzWyIjVU5JVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVW5pc3dhcCAvIFUuUy4gRG9sbGFyIl0sZS5leHBvcnRzWyIjVVMzMC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRvdyBKb25lcyBJbmR1c3RyaWFsIEF2ZXJhZ2UgSW5kZXgiXSxlLmV4cG9ydHNbIiNVU0RBVUQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIEF1c3RyYWxpYW4gRG9sbGFyIl0sZS5leHBvcnRzWyIjVVNEQlJMLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBCcmF6aWxpYW4gUmVhbCJdLAplLmV4cG9ydHNbIiNVU0RDQUQtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIENhbmFkaWFuIERvbGxhciJdLGUuZXhwb3J0c1siI1VTRENIRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gU3dpc3MgRnJhbmMiXSxlLmV4cG9ydHNbIiNVU0RDTlktc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIENoaW5lc2UgWXVhbiJdLGUuZXhwb3J0c1siI1VTRERLSy1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gRGFuaXNoIEtyb25lIl0sZS5leHBvcnRzWyIjVVNERVVSLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBFdXJvIl0sZS5leHBvcnRzWyIjVVNER0JQLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBQb3VuZCBTdGVybGluZyJdLGUuZXhwb3J0c1siI1VTREhLRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gSG9uZyBLb25nIERvbGxhciJdLGUuZXhwb3J0c1siI1VTREhVRi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gSHVuZ2FyaWFuIEZvcmludCJdLGUuZXhwb3J0c1siI1VTRElEUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gUnVwaWFoIl0sZS5leHBvcnRzWyIjVVNESUxTLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBJc3JhZWxpIFNoZWtlbCJdLGUuZXhwb3J0c1siI1VTRElOUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gSW5kaWFuIFJ1cGVlIl0sZS5leHBvcnRzWyIjVVNESlBZLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBKYXBhbmVzZSBZZW4iXSxlLmV4cG9ydHNbIiNVU0RLUlctc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFNvdXRoIEtvcmVhbiJdLGUuZXhwb3J0c1siI1VTRE1YTi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gTWV4aWNhbiBQZXNvIl0sZS5leHBvcnRzWyIjVVNETlpELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBOZXcgWmVhbGFuZCBEb2xsYXIiXSxlLmV4cG9ydHNbIiNVU0RQSFAtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFBoaWxpcHBpbmUgcGVzbyJdLGUuZXhwb3J0c1siI1VTRFBMTi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gUG9saXNoIFpsb3R5Il0sZS5leHBvcnRzWyIjVVNEUlVCLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBSdXNzaWFuIFJ1YmxlIl0sZS5leHBvcnRzWyIjVVNEUlVCX1RPTS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gUnVzc2lhbiBSdWJsZSBUT00iXSxlLmV4cG9ydHNbIiNVU0RTRUstc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFN3ZWRpc2ggS3JvbmEiXSxlLmV4cG9ydHNbIiNVU0RTR0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFNpbmdhcG9yZSBEb2xsYXIiXSxlLmV4cG9ydHNbIiNVU0RUSEItc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJVLlMuIERvbGxhciAvIFRoYWkgQmFodCJdLGUuZXhwb3J0c1siI1VTRFRSWS1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlUuUy4gRG9sbGFyIC8gVHVya2lzaCBMaXJhIl0sZS5leHBvcnRzWyIjVVNEWkFSLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiVS5TLiBEb2xsYXIgLyBTb3V0aCBBZnJpY2FuIFJhbmQiXSxlLmV4cG9ydHNbIiNVU09JTC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkNGRHMgb24gQ3J1ZGUgT2lsIChXVEkpIl0sZS5leHBvcnRzWyIjV0hFQVRVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJDRkRzIG9uIFdoZWF0Il0sZS5leHBvcnRzWyIjWEFHVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiU2lsdmVyIC8gVS5TLiBEb2xsYXIiXSxlLmV4cG9ydHNbIiNYQVVVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJHb2xkIFNwb3QgLyBVLlMuIERvbGxhciJdLGUuZXhwb3J0c1siI1hCVENBRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkJpdGNvaW4gLyBDYW5hZGlhbiBEb2xsYXIiXSxlLmV4cG9ydHNbIiNYRVRSOkRBWC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIkRBWCBJbmRleCJdLGUuZXhwb3J0c1siI1hNUlVTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIk1vbmVybyAvIFUuUy4gRG9sbGFyIl0sZS5leHBvcnRzWyIjWFBEVVNELXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiQ0ZEcyBvbiBQYWxsYWRpdW0iXSxlLmV4cG9ydHNbIiNYUFRVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJQbGF0aW51bSAvIFUuUy4gRG9sbGFyIl0sZS5leHBvcnRzWyIjWFJQQlRDLXN5bWJvbC1kZXNjcmlwdGlvbiJdPVsiWFJQIC8gQml0Y29pbiJdLGUuZXhwb3J0c1siI1hSUEVVUi1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlhSUCAvIEV1cm8iXSxlLmV4cG9ydHNbIiNYUlBVU0Qtc3ltYm9sLWRlc2NyaXB0aW9uIl09WyJYUlAgLyBVLlMuIERvbGxhciJdLGUuZXhwb3J0c1siI1pFQ1VTRC1zeW1ib2wtZGVzY3JpcHRpb24iXT1bIlpjYXNoIC8gVS5TLiBEb2xsYXIiXX19XSk7"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCBTC.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.449Z","timestamp":1785126258449,"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 /crypto/XTVCBTC.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 04:24:18 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: \"107060b925841745f310697bd9f1f83d\"\r\nlast-modified: Wed, 08 Sep 2021 09:03:52 GMT\r\ncdn-cachedat: 08/09/2025 14:29:15\r\nx-amz-id-2: mS6txdd/WwgLrAcd/6no+TxP/dPK7pUj8E19SG87xGMdnJzq7GTFUtT6mRz2dzI97J9VRTiSHig=\r\nx-amz-request-id: 7A2W5B1DC5DG6A3C\r\nx-amz-meta-hash: 107060b925841745f310697bd9f1f83d\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: 55db7e53fd2af98a9832ef5250d0764e\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":801,"size_decoded":1365,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (801), with no line terminators","md5":"107060b925841745f310697bd9f1f83d","sha1":"40a2e01da20c164a3c3f774a72f3feadf17cafa2","sha256":"4dfca512e957e14f05da07751a96061cf4bfd5df438504f65287fa0a8c3cadb6","sha512":"fb7b987074d4701281c49fee08b1d44f2be2b3aa9ecffd0a88a6cc682aac06a6cd823598c8c8ba5ad43f8f1430a73c814148dea60d5740162cc41af7da324c76","ssdeep":"","tlshash":"24011ec55310f6046ec7c09dbf74a9e4110f60ae14a6c7dcf2c89f0835aae8ba614d48","first_seen":"2023-04-21T01:30:48Z","last_seen":"2026-07-27T07:05:43.253701Z","times_seen":5904,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjRjc5MzFBIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTEyLjgzNiA3Ljk0Yy4xNjYtMS4xMjMtLjY4NC0xLjcyMS0xLjg1NS0yLjEyOGwuMzgtMS41MTMtLjkyNi0uMjMtLjM2OSAxLjQ3Ni0uNzM4LS4xNzcuMzc1LTEuNDg2LS45MjUtLjIzLS4zOCAxLjUxOC0uNTg4LS4xMzl2LS4wMDVsLTEuMjc4LS4zMi0uMjQ2Ljk4OHMuNjg0LjE2LjY3NC4xNjZjLjM3NC4wOTYuNDM4LjM0Mi40MjcuNTM1TDYuOTYgOC4xMjhsLjA5Ni4wMzItLjEwMi0uMDIyLS42MDQgMi40MjNjLS4wNDMuMTEyLS4xNi4yODMtLjQyMy4yMTQuMDExLjAxNi0uNjY4LS4xNi0uNjY4LS4xNmwtLjQ2IDEuMDUzIDEuMjAzLjMuNjU4LjE3LS4zODUgMS41MzUuOTI1LjIzLjM3NC0xLjUxOS43NDQuMTkzLS4zOCAxLjUxMy45MjUuMjMuMzgtMS41MzVjMS41NzcuMyAyLjc2NS4xODIgMy4yNjItMS4yNDYuNDAxLTEuMTUtLjAyMS0xLjgwNy0uODUtMi4yNDYuNjA0LS4xMzMgMS4wNTktLjUzNCAxLjE3Ni0xLjM1M2guMDA1em0tMi4xMTIgMi45NjNjLS4yODMgMS4xNS0yLjIxOS41MjQtMi44NDUuMzc0bC41MDgtMi4wMzdjLjYyNi4xNiAyLjYzNy40NjUgMi4zMzcgMS42NTh2LjAwNXptLjI4NC0yLjk3OWMtLjI1NyAxLjA0My0xLjg3Mi41MTQtMi4zOS4zODVsLjQ2LTEuODQ0Yy41MjMuMTI4IDIuMjAyLjM3NCAxLjkzIDEuNDZ6IiBmaWxsPSIjZmZmIi8+PC9zdmc+"}},"time_used":60,"timings":{"blocked":-1,"dns":19,"connect":21,"send":0,"wait":3,"receive":-1,"ssl":9},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCLINK.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.535Z","timestamp":1785126258535,"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 /crypto/XTVCLINK.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 04:24:18 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: \"d2c970ea396451c50ca7e3b8e0768f11\"\r\nlast-modified: Wed, 08 Sep 2021 09:05:23 GMT\r\ncdn-cachedat: 08/09/2025 14:32:10\r\nx-amz-id-2: aU+9FANP8RQNUyju1Z8/5nXSozU7ZcY5l0x4mRLkuEsT7asp0jtvZkfO6xU2qwu5IJkHjyTvebc=\r\nx-amz-request-id: GT25DVX4XB6KZA67\r\nx-amz-meta-hash: d2c970ea396451c50ca7e3b8e0768f11\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: 314305b00ecf7b4da488b435b9fae225\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":331,"size_decoded":1128,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (331), with no line terminators","md5":"d2c970ea396451c50ca7e3b8e0768f11","sha1":"4b723624186e0381eaf2071aa0590904e99fc827","sha256":"5391852a69b4689127e73c158bc23277ee13f3c1f41ee2946cd0ce35d9c141a2","sha512":"808594a12c3dfdd82984f780718a0d809de0cc3738e632e70a8a56a5923d2a26d260d2afa93c4ab14e5af5dcab2158d2234ef95c4bf923bf0b388def042cc65a","ssdeep":"","tlshash":"26e0c6e5436880188405abf86bbc2682068938c8ae0a0adcf0c0280638442cfa810b04","first_seen":"2023-05-02T00:43:59Z","last_seen":"2026-07-27T07:05:43.283755Z","times_seen":895,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjMkU2MURFIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNNS45OTkgNy4yNTNsMi45NzctMS43MzJMMTIgNy4yNnYzLjQ3bC0zLjAyMyAxLjc0TDYgMTAuNzM2VjcuMjUzek04Ljk3IDMuMjExbDUuMDI4IDIuODkydjUuNzg0bC00Ljk4IDIuODY1LjAwMS4wMDEtMS4wMTguNnYtMS4xMzdMNCAxMS44ODdWNi4xMDNMOC45NyAzLjIxeiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCSTXS.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.667Z","timestamp":1785126258667,"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 /crypto/XTVCSTXS.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 04:24:18 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: \"91443e62c74457f3d842a21818bb3a36\"\r\nlast-modified: Mon, 05 Aug 2024 13:39:45 GMT\r\ncdn-cachedat: 08/09/2025 14:29:30\r\nx-amz-id-2: NplMzOOUp/aNeQzr7VUOqokUr7TrzAEo5e8fYrO6tH8g1c4R6uHK/GH4f7E6zpZGLYeT9kuYyQ4=\r\nx-amz-request-id: MYABQ7A6B57EZ29G\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 91443e62c74457f3d842a21818bb3a36\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: ab8223a132b4dc9d3f485a43e013631d\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":276,"size_decoded":1125,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with no line terminators","md5":"91443e62c74457f3d842a21818bb3a36","sha1":"9b9c597c710bfbabfef2ce29d4b4b9e62d8140ba","sha256":"60d2c9cdbf24d06b9311c2f96dda02156659d924f71ee30250b45890a1ab1a35","sha512":"e5efd8e90d7e3dd2a57a272dfb24d53fbc778139c818a3c3eec375b8e2231329f0560eed7aab832375b6997ae79754e71c7a8a6943acf104572d128c6818f918","ssdeep":"","tlshash":"cdd0ebbee247c00e4c0282242e943eaf109630fca0ca01ee7050a628b5c26f76c50e2c","first_seen":"2024-12-18T13:54:55.15714Z","last_seen":"2026-07-27T07:05:43.414354Z","times_seen":790,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0wIDBoMTh2MThIMFYwWiIgZmlsbD0iI0ZDNjQzMiIvPjxwYXRoIGQ9Ik0xNCA4LjVWN2gtM2wyLjUtM2gtMkw5IDcgNi41IDRoLTJMNyA3SDR2MS41aDEwWm0tLjUgNS41TDExIDExaDNWOS41SDRWMTFoM2wtMi41IDNoMkw5IDExbDIuNSAzaDJaIiBmaWxsPSIjZmZmIi8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCHYPERL.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.775Z","timestamp":1785126258775,"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 /crypto/XTVCHYPERL.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 04:24:18 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: \"2b61f2a562b9b480b2d01ec5cb40221e\"\r\nlast-modified: Mon, 26 May 2025 16:28:44 GMT\r\ncdn-cachedat: 08/09/2025 15:40:18\r\nx-amz-id-2: 76JftcSUBfHW7SDdFRWL0l9HohnrR4mKHmsYYKqaaABnrvG72YuYVWCVKafSSrSKNSZ5MLqIoeA=\r\nx-amz-request-id: K6FH5XV2FZVZ0ZTE\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 2b61f2a562b9b480b2d01ec5cb40221e\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: bb7c75f1721a768ff7b10e3b3d31e685\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":384,"size_decoded":1178,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (384), with no line terminators","md5":"2b61f2a562b9b480b2d01ec5cb40221e","sha1":"31ea2fa2577f9f7bdcf7c3b491ecc1681c5c69b4","sha256":"c4401440a594085fe5d31ae6633180b19fe33912549ba48a10a21158c5f00706","sha512":"d6655a76ea1b47f8cccc95eeb7fec174b2889a76c3a5250aff2c191415e1808dfd68e062a0c4dad6a1382add12cec2e2db598c39e2851933e87839111641cb12","ssdeep":"","tlshash":"8be02be7563d5404940146aa3a2810d61445a6d6c7d701b4f69b373531853db2c70729","first_seen":"2026-04-25T19:03:02.868982Z","last_seen":"2026-07-27T07:05:43.355419Z","times_seen":230,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNENjMxQjkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNNy44MSA4aDIuMjhMOC43MSA0aDIuNDRsMS43MiA1LTEuNzIgNUg4LjdsMS4zOC00SDcuODFsLTEuMzggNEg0bDEuNzItNUw0IDRoMi40M2wxLjM4IDRaIiBmaWxsPSIjMjc2NEMxIi8+PHBhdGggZD0iTTguOSA4aDIuMjlMOS44NCA0aDIuNDRMMTQgOWwtMS43MiA1SDkuODRsMS4zMy00SDguODlsLTEuMzMgNEg1LjEzbDEuNzItNS0xLjcyLTVoMi40M2wxLjM1IDRaIiBmaWxsPSIjZmZmIi8+PC9zdmc+"}},"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":"besttrader.live/images/icon/instruments/ltc.svg","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.096Z","timestamp":1785126256096,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/icon/instruments/ltc.svg HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/svg+xml\r\ncontent-length: 1599\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-63f\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":1599,"size_decoded":1851,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"fce0bf69bcd7c6cbbdae9ff7db49706d","sha1":"c433a28018c3eb2f1ff61ede33d081421e073e95","sha256":"94308c772a12c057e6138a3c07a2243bc838fee0dcd70698d1b9e4c6b1793012","sha512":"684a47374772d0c6f62431978e1f6d25b8ae66787bc8f4a5c11939949a37a6e40ef44f2bc88003f07f6031f8aa5e88ff51b932581939459fda545e049e9d4fee","ssdeep":"","tlshash":"b0318be010fe0859d54bc823f7e67aa4592ab0ef42c108dab19d4a53bf215671f8b215","first_seen":"2023-05-01T20:32:00Z","last_seen":"2026-07-27T06:05:14.71647Z","times_seen":172,"resource_available":false,"data":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTdweCIgaGVpZ2h0PSIxN3B4IiB2aWV3Qm94PSIwIDAgMTcgMTciIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDUyLjEgKDY3MDQ4KSAtIGh0dHA6Ly93d3cuYm9oZW1pYW5jb2RpbmcuY29tL3NrZXRjaCAtLT4KICAgIDx0aXRsZT5Hcm91cCAyOTwvdGl0bGU+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxnIGlkPSJQYWdlLTEiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSJQcmltZVhCVF92MiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTYzOC4wMDAwMDAsIC0xMTUzLjAwMDAwMCkiPgogICAgICAgICAgICA8ZyBpZD0iR3JvdXAtMjYiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDU4My4wMDAwMDAsIDk3MC4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxnIGlkPSJHcm91cC0yNSI+CiAgICAgICAgICAgICAgICAgICAgPGcgaWQ9Ikdyb3VwLTMiPgogICAgICAgICAgICAgICAgICAgICAgICA8ZyBpZD0iR3JvdXAtOCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNDguMDAwMDAwLCA3Ni4wMDAwMDApIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGlkPSJHcm91cC0yOSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNy4wMDAwMDAsIDEwNy4wMDAwMDApIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2lyY2xlIGlkPSJPdmFsIiBmaWxsPSIjMzg1QjdBIiBmaWxsLXJ1bGU9Im5vbnplcm8iIGN4PSI4LjUiIGN5PSI4LjUiIHI9IjguNSI+PC9jaXJjbGU+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgaWQ9ImxpdGVjb2luIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg0LjAwMDAwMCwgMy4wMDAwMDApIiBmaWxsPSIjRkZGRkZGIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBvbHlnb24gaWQ9IlBhdGgiIHBvaW50cz0iMC40ODMzOTg0MzggOSA5IDkgOSA3LjA2NzIxNTQzIDMuNTE2NjAxNTYgNy4wNjcyMTU0MyA0LjM3MzUzNTEzIDUuMTM0NDMwODYgOCA1LjEzNDQzMDg2IDggMy4yMDE2NDYyOSA1LjIzMDk1NyAzLjIwMTY0NjI5IDYuMzEyOTg4MjUgMC43NjE2MDAxMSA0LjQ3NDYwOTM4IDAgMy4wNTQ5MzE2MyAzLjIwMTY0NjI5IDAgMy4yMDE2NDYyOSAwIDUuMTM0NDMwODYgMi4xOTc1MDk3NSA1LjEzNDQzMDg2Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgPGcgaWQ9IlBhZ2UiPjwvZz4KICAgICAgICAgICAgPC9nPgogICAgICAgICAgICA8ZyBpZD0iUGFnZSI+PC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+"}},"time_used":398,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":309,"receive":89,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.155Z","timestamp":1785126258155,"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-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/crypto-mkt-screener/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: _sp_ses.6222=*; _sp_id.6222=.1785126258.1.1785126258..f046d173-2de7-466f-b43d-da020e6c1d25..5e0c746c-9d4f-48c1-a771-92d2f9f1761c.1785126257760.1\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 04:24:18 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: f2d35a4fe7043efa228715b8d84a1f23\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-27T07:05:45.467506Z","times_seen":946,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s5NzUwOV0sezg2NDI3NChlKXtlLmV4cG9ydHM9eyJjc3MtdmFsdWUtY29weXJpZ2h0LXRyYW5zaXRpb24tcGFyYW1zLWhhbGYtdGltZSI6Ii4zcyAwcyBjdWJpYy1iZXppZXIoLjQsIC4wMSwgLjIyLCAxKSIsbGFiZWw6ImxhYmVsLWU5YzZkeWNWIixsb2dvV3JhcDoibG9nb1dyYXAtZTljNmR5Y1YiLHN2Z1RleHRXcmFwOiJzdmdUZXh0V3JhcC1lOWM2ZHljViIsbGFyZ2U6ImxhcmdlLWU5YzZkeWNWIn19LDcwNTc5MChlLHQsYyl7InVzZSBzdHJpY3QiO2MuZCh0LHtnZXRUcmFkaW5nVmlld0NvcHlyaWdodERhdGE6KCk9PmF9KTt2YXIgaT1jKDkzNzc0NCkscj1jKDg2NDI3NCksbD1jKDk1OTk5MiksaD1jKDIxMjk2MSk7ZnVuY3Rpb24gYShlLHQpe3JldHVybnsuLi57aWNvbjpsLHN2Z1RleHQ6aH0sdGhlbWU6cix1cmw6KDAsaS5nZXRMb2NhbGl6ZWRUdkhvc3RXaXRoVXRtKShlLHQpfX19LDkzNzc0NChlLHQsYyl7InVzZSBzdHJpY3QiO2MuZCh0LHtnZXRMb2NhbGl6ZWRUdkhvc3RXaXRoVXRtOigpPT5sfSk7dmFyIGk9YygzNjQxODgpLHI9Yyg2MDE1ODcpO2Z1bmN0aW9uIGwoZSx0KXtjb25zdCBjPSgwLGkuZ2V0VFZIb3N0RnJvbUxvY2FsZSkoZXx8ImVuIiksbD10PygwLHIuYnVpbGRVdG1RdWVyeVN0cmluZykodCk6IiI7cmV0dXJuYGh0dHBzOi8vJHtjfSR7bD8iPyIrbDoiIn1gfX0sMzE5ODcyKGUsdCxjKXsidXNlIHN0cmljdCI7Yy5kKHQse2dldExvY2FsaXplZERvbWFpbjooKT0+cn0pO2NvbnN0IGk9e2FyX0FFOiJhciIsZGVfREU6ImRlIixlbjoid3d3IixlczoiZXMiLGNhX0VTOiJlcyIsZmFfSVI6Ind3dyIsZnI6ImZyIixoZV9JTDoiaWwiLGlkOiJpZCIsaW46ImluIixpdDoiaXQiLGphOiJqcCIsa3I6ImtyIixtc19NWToibXkiLHBsOiJwbCIsYnI6ImJyIixydToicnUiLHN2X1NFOiJzZSIsdGhfVEg6InRoIix0cjoidHIiLHVrOiJ1ayIsdmlfVk46InZuIix6aF9DTjoiY24iLHpoX1RXOiJ0dyJ9O2Z1bmN0aW9uIHIoZSl7cmV0dXJuIGlbZV18fCJ3d3cifX0sMzY0MTg4KGUsdCxjKXsidXNlIHN0cmljdCI7Yy5kKHQse2dldFRWSG9zdEZyb21Mb2NhbGU6KCk9PnJ9KTt2YXIgaT1jKDMxOTg3Mik7ZnVuY3Rpb24gcihlKXtyZXR1cm4oMCxpLmdldExvY2FsaXplZERvbWFpbikoZSkrIi50cmFkaW5ndmlldy5jb20ifX0sOTU5OTkyKGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNyAxMCIgd2lkdGg9IjE3IiBoZWlnaHQ9IjEwIiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSIjMTMxNzIyIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTEzLjQyIDkuMDRIOS40N2wzLjU2LTloMy45NGwtMy41NSA5Wk03IC4wNEgwdjNoNHY2aDN2LTlabTIuNSAzYTEuNSAxLjUgMCAxIDAgMC0zIDEuNSAxLjUgMCAwIDAgMCAzWiIvPjwvc3ZnPid9LDIxMjk2MShlKXsKZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDcxIDEzIiB3aWR0aD0iNzEiIGhlaWdodD0iMTMiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiMxMzE3MjIiIGQ9Ik01My4xIDJjMCAuNTctLjQ5IDEuMDMtMS4wOSAxLjAzLS41OCAwLTEuMDctLjQ2LTEuMDctMS4wMyAwLS41Ny41LTEuMDQgMS4wNy0xLjA0LjYgMCAxLjA4LjQ3IDEuMDggMS4wNFpNNTIuOSAxMGgtMS43NlYzLjY1aDEuNzZWMTBaTTI2LjQ3IDMuMDNjLjYgMCAxLjA4LS40NiAxLjA4LTEuMDMgMC0uNTctLjQ4LTEuMDMtMS4wOC0xLjAzLS41OCAwLTEuMDcuNDYtMS4wNyAxLjAzIDAgLjU3LjQ5IDEuMDMgMS4wNyAxLjAzWk0yNS41NyAxMGgxLjc0VjMuNWgtMS43NFYxMFpNNC4wNyAxMEgyLjMzVjIuNzRIMFYxaDYuNHYxLjc0SDQuMDZWMTBaTTguMTQgMTAgNi4zOSAxMFYzLjQ5aDEuNzV2MS4xYy4yLS41OC43Ny0xLjAyIDEuNDYtMS4wMmguMDJjLjE4IDAgLjM1IDAgLjU1LjA1djEuNjZhMi4zMyAyLjMzIDAgMCAwLS43Ni0uMTJjLS44IDAtMS4yNy41OC0xLjI3IDEuNTdWMTBaTTMwLjIyIDEwaC0xLjc1VjMuNWgxLjc1di41N2MuMzMtLjQ3Ljg5LS43IDEuNjktLjcgMS40OCAwIDIuMzcgMS4wNCAyLjM3IDIuNTlWMTBoLTEuNzRWNi40YzAtLjg2LS4zMy0xLjU1LTEuMDMtMS41NS0uNzggMC0xLjMuNTQtMS4zIDEuNjhWMTBaTTQ2Ljk1IDEwbDMuNi05aC0yLjAzTDQ2LjIgNy4yNyA0My41OCAxaC0yLjAzbDMuNjYgOWgxLjc0Wk02OC4yNSAxMGgtMS43bC0xLjE4LTMuNzVMNjQuMjEgMTBoLTEuN2wtMi4wOC02LjVoMS44M2wxLjE5IDQuMSAxLjI2LTQuMWgxLjMxbDEuMjggNC4xIDEuMTctNC4xaDEuODRMNjguMjUgMTBaIi8+PHBhdGggZmlsbD0iIzEzMTcyMiIgZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMy4zMiAxMC4wMmMuODggMCAxLjUtLjQ0IDEuNzktLjg1VjEwaDEuNzlWMy41SDE1LjF2LjdhMi4yIDIuMiAwIDAgMC0xLjgtLjg1Yy0xLjcgMC0zIDEuNTQtMyAzLjM0IDAgMS44IDEuMyAzLjMzIDMgMy4zM1ptLjM3LTEuNmMtLjk3IDAtMS42MS0uNzItMS42MS0xLjczcy42NC0xLjc0IDEuNi0xLjc0Yy45OCAwIDEuNjIuNzMgMS42MiAxLjc0IDAgMS0uNjQgMS43NC0xLjYxIDEuNzRaTTIyLjY2IDkuMTdjLS4zLjQtLjkuODUtMS43OS44NS0xLjcgMC0zLTEuNTMtMy0zLjMzczEuMy0zLjM0IDMtMy4zNGMuODggMCAxLjUuNDUgMS44Ljg2VjFoMS43NHY5aC0xLjc1di0uODNabS0zLjAzLTIuNDhjMCAxIC42NCAxLjc0IDEuNjEgMS43NC45NyAwIDEuNjEtLjczIDEuNjEtMS43NHMtLjY0LTEuNzQtMS42LTEuNzRjLS45OCAwLTEuNjIuNzMtMS42MiAxLjc0Wk0zOC40OCAxMi42OGMxLjk2IDAgMy40Mi0xIDMuNDItMy4zVjMuNWgtMS44di43MmEyLjEgMi4xIDAgMCAwLTEuNzgtLjg2Yy0xLjY4IDAtMy4wMiAxLjQzLTMuMDIgMy4yNCAwIDEuNzkgMS4zNCAzLjMgMy4wMiAzLjNhMi4yIDIuMiAwIDAgMCAxLjc4LS45M3YuNDRjMCAxLjAyLS42IDEuNzUtMS42NCAxLjc1LS43MiAwLTEuNDMtLjI0LTItLjhsLS45NSAxLjMxYy43Mi43IDEuODYgMS4wMiAyLjk3IDEuMDJabS4yLTQuNDZhMS42IDEuNiAwIDAgMS0xLjYyLTEuNjNjMC0uOTkuNzUtMS42NCAxLjYzLTEuNjQuODggMCAxLjYyLjY1IDEuNjIgMS42NGExLjYgMS42IDAgMCAxLTEuNjIgMS42M1pNNjAuMyA4LjU2QTMuNDcgMy40NyAwIDAgMSA1Ny4zNSAxMGMtMS45IDAtMy4zOS0xLjMxLTMuMzktMy4zMyAwLTEuOSAxLjQyLTMuMzQgMy4zNy0zLjM0IDEuNjcgMCAzLjE0IDEuMDYgMy4xNCAzLjE1di4wOWMwIC4xNSAwIC4zNS0uMDIuNTZoLTQuNzljLjEuODYuODYgMS4yOCAxLjcgMS4yOC44MSAwIDEuMzYtLjM2IDEuNjUtLjgxbDEuMy45N1ptLTMuMDQtMy44Yy0uNjUgMC0xLjM4LjM0LTEuNTQgMS4xMmgyLjk5Yy0uMTUtLjc3LS44LTEuMTEtMS40NS0xLjExWiIvPjwvc3ZnPid9fV0pOw=="}},"time_used":6,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":6,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCXAUT.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.586Z","timestamp":1785126258586,"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 /crypto/XTVCXAUT.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=4, 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 04:24:18 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: \"b96386f61f1f0dbd25ba0a211efdcfc0\"\r\nlast-modified: Wed, 08 Sep 2021 09:03:39 GMT\r\ncdn-cachedat: 08/09/2025 14:43:05\r\nx-amz-id-2: rlZrliM+gEFirJV6TvKrARvBg4y1PxZnDJwLWk1brmdAGeh5CAbMBAZqkcqG80moNt28JMzRNOI=\r\nx-amz-request-id: SYXVX82NTCR584AJ\r\nx-amz-meta-hash: b96386f61f1f0dbd25ba0a211efdcfc0\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: e8eba49359e709ea732b81353eca8773\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":676,"size_decoded":1317,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (676), with no line terminators","md5":"b96386f61f1f0dbd25ba0a211efdcfc0","sha1":"b069f82cff9a77efa69c90d92d9d0387bef3ae55","sha256":"d9de1fe36350bab0460b55a204df84863fa5de8bf4243415580f2db882892e68","sha512":"0f302d31a866dcbc2c91f318a887e0a58da70bf963b67522a2a5f9272d2656190f3044ec86dc68be70f642de70d8d33af0067738574623dc5ccaaaff16f4ba68","ssdeep":"","tlshash":"8801fefae21cf45ed71b827c9fa8484d500d21ead58602d860c0af2e75606db1c08520","first_seen":"2023-05-02T00:44:00Z","last_seen":"2026-07-27T07:05:43.250496Z","times_seen":844,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSJ1cmwoI3BhaW50MF9saW5lYXIpIiBkPSJNMCAwaDE4djE4SDB6Ii8+PGVsbGlwc2UgY3g9IjguOTg4IiBjeT0iOS41NjQiIHJ4PSIyLjk0NiIgcnk9Ii44MzUiIGZpbGw9IiNmZmYiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMi43NTQgNUg1LjIzTDMgOS41MyA5IDE1bDYtNS40N0wxMi43NTQgNXpNOS41IDEwLjgyMmMxLjY1Ny0uMDg5IDIuOTI5LS42MSAyLjkyOS0xLjIzOCAwLS42OS0xLjUzNS0xLjI1LTMuNDI5LTEuMjVzLTMuNDI5LjU2LTMuNDI5IDEuMjVjMCAuNjI5IDEuMjcyIDEuMTUgMi45MjkgMS4yMzhWMTNoMXYtMi4xNzh6IiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTExIDZIN3YxaDEuNXYzaDFWN0gxMVY2eiIgZmlsbD0iI0REQTg1QiIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQwX2xpbmVhciIgeDE9IjkiIHkxPSIwIiB4Mj0iOSIgeTI9IjE4IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iI0QyOUM1NSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI0U5QjY2MiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjwvc3ZnPg=="}},"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":"besttrader.live/admin/testimony-images/4127.jpg","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.108Z","timestamp":1785126256108,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /admin/testimony-images/4127.jpg HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/jpeg\r\ncontent-length: 69487\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-10f6f\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":69487,"size_decoded":69739,"mime_type":"image/jpeg","magic":"JPEG image data, JFIF standard 1.01, resolution (DPI), density 96x96, segment length 16, Exif Standard: [TIFF image data, big-endian, direntries=1, orientation=upper-left], baseline, precision 8, 400x400, components 3","md5":"aa7dadb495f45a437369a0b8d6c85505","sha1":"c6d061ba2d767250d188cdd1da1d8281a25eab28","sha256":"b70296958a9910257b1341bc2bcf658dca9221eb3c078232bfe3a8b148784a85","sha512":"b84642b0e53fb209f98116a54c4b3d10bb51625d3e5b069350f6615e48ad4525cbcdb0f597c7623fde534d9127831a051391492987b5b52093a472b67fa4ccbf","ssdeep":"1536:DH8o7OAt0OIUtn1/LsFDnfp+x/iyJ8TbIabrw2Kn8wDG9Ie1:AiPtn1/LIDnfpqbJHab2n8D6e1","tlshash":"9463022cd263ec1abed86247a541b28155a1e815f6e7cd30756d74a8b6cc09f42c8f2b","first_seen":"2025-03-19T19:51:49.136648Z","last_seen":"2026-07-27T04:25:12.729382Z","times_seen":3,"resource_available":false,"data":"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"}},"time_used":410,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":297,"receive":113,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/images/slider/slider2.jpg","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.704Z","timestamp":1785126256704,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/slider/slider2.jpg HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/jpeg\r\ncontent-length: 122545\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-1deb1\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":122545,"size_decoded":122798,"mime_type":"image/jpeg","magic":"JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, progressive, precision 8, 1440x810, components 3","md5":"dd0d1e88c0554538ccc7afa433cf51ae","sha1":"f0e9ce69b189bdae1d86cb6ce5ce6da51940af66","sha256":"3011867e8e64d3392f38a32281d689b51b78d4826a298637ee5985b325b42a49","sha512":"98eb8df97ebe3d76a18d435229dbfe47462822f044fd53776c4470a049741a36539d47efbe18a527c493fe2b139e05aacdcb7697682ecdc7a6ca1cb325c0e0c2","ssdeep":"1536:B8ObjWUkf53ztxZZl4wxff8j0TbBsGmNJdURKUCZR8DVv885bhBYzuHMSfgot:ehztxZZdHYc1eZR284eu3jt","tlshash":"43c3128737dd8319f9af5208b039661f6f14b2bd8af407791c223cf5e629421856b37a","first_seen":"2026-07-27T03:36:45.026393Z","last_seen":"2026-07-27T04:25:12.729944Z","times_seen":2,"resource_available":false,"data":"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"}},"time_used":102,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":101,"receive":1,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","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/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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.247Z","timestamp":1785126257247,"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-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/ticker-tape/?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 04:24:17 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: d271f2cbe466b1ad6ffcebe3e9919ffc\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":2618,"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-27T07:05:45.424648Z","times_seen":3936,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbMTMxNDhdLHs3MzU5ODModCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5kfSk7Y29uc3Qgbz1mdW5jdGlvbigpe3RoaXMuX19kYXRhX189W10sdGhpcy5zaXplPTB9O3ZhciByPW4oOTEwNzc4KTtjb25zdCBhPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPXQubGVuZ3RoO24tLTspaWYoKDAsci5kZWZhdWx0KSh0W25dWzBdLGUpKXJldHVybiBuO3JldHVybi0xfTt2YXIgcz1BcnJheS5wcm90b3R5cGUuc3BsaWNlO2NvbnN0IGM9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5fX2RhdGFfXyxuPWEoZSx0KTtyZXR1cm4hKG48MCkmJihuPT1lLmxlbmd0aC0xP2UucG9wKCk6cy5jYWxsKGUsbiwxKSwtLXRoaXMuc2l6ZSwhMCl9O2NvbnN0IGk9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5fX2RhdGFfXyxuPWEoZSx0KTtyZXR1cm4gbjwwP3ZvaWQgMDplW25dWzFdfTtjb25zdCB1PWZ1bmN0aW9uKHQpe3JldHVybiBhKHRoaXMuX19kYXRhX18sdCk+LTF9O2NvbnN0IGw9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzLl9fZGF0YV9fLG89YShuLHQpO3JldHVybiBvPDA/KCsrdGhpcy5zaXplLG4ucHVzaChbdCxlXSkpOm5bb11bMV09ZSx0aGlzfTtmdW5jdGlvbiBmKHQpe3ZhciBlPS0xLG49bnVsbD09dD8wOnQubGVuZ3RoO2Zvcih0aGlzLmNsZWFyKCk7KytlPG47KXt2YXIgbz10W2VdO3RoaXMuc2V0KG9bMF0sb1sxXSl9fWYucHJvdG90eXBlLmNsZWFyPW8sZi5wcm90b3R5cGUuZGVsZXRlPWMsZi5wcm90b3R5cGUuZ2V0PWksZi5wcm90b3R5cGUuaGFzPXUsZi5wcm90b3R5cGUuc2V0PWw7Y29uc3QgZD1mfSw2OTQyMSh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9PmF9KTt2YXIgbz1uKDE2MjMxNikscj1uKDk4MTUyMyk7Y29uc3QgYT0oMCxvLmRlZmF1bHQpKHIuZGVmYXVsdCwiTWFwIil9LDcxMzE0OCh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pnp9KTtjb25zdCBvPSgwLG4oMTYyMzE2KS5kZWZhdWx0KShPYmplY3QsImNyZWF0ZSIpO2NvbnN0IHI9ZnVuY3Rpb24oKXt0aGlzLl9fZGF0YV9fPW8/byhudWxsKTp7fSx0aGlzLnNpemU9MH07Y29uc3QgYT1mdW5jdGlvbih0KXt2YXIgZT10aGlzLmhhcyh0KSYmZGVsZXRlIHRoaXMuX19kYXRhX19bdF07cmV0dXJuIHRoaXMuc2l6ZS09ZT8xOjAsZX07dmFyIHM9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtjb25zdCBjPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuX19kYXRhX187aWYobyl7dmFyIG49ZVt0XTtyZXR1cm4iX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyI9PT1uP3ZvaWQgMDpufXJldHVybiBzLmNhbGwoZSx0KT9lW3RdOnZvaWQgMH07dmFyIGk9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtjb25zdCB1PWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuX19kYXRhX187cmV0dXJuIG8/dm9pZCAwIT09ZVt0XTppLmNhbGwoZSx0KX07Y29uc3QgbD1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXMuX19kYXRhX187cmV0dXJuIHRoaXMuc2l6ZSs9dGhpcy5oYXModCk/MDoxLG5bdF09byYmdm9pZCAwPT09ZT8iX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyI6ZSx0aGlzfTtmdW5jdGlvbiBmKHQpe3ZhciBlPS0xLG49bnVsbD09dD8wOnQubGVuZ3RoO2Zvcih0aGlzLmNsZWFyKCk7KytlPG47KXt2YXIgbz10W2VdO3RoaXMuc2V0KG9bMF0sb1sxXSl9fWYucHJvdG90eXBlLmNsZWFyPXIsZi5wcm90b3R5cGUuZGVsZXRlPWEsZi5wcm90b3R5cGUuZ2V0PWMsZi5wcm90b3R5cGUuaGFzPXUsZi5wcm90b3R5cGUuc2V0PWw7Y29uc3QgZD1mO3ZhciBfPW4oNzM1OTgzKSxoPW4oNjk0MjEpO2NvbnN0IHA9ZnVuY3Rpb24oKXt0aGlzLnNpemU9MCx0aGlzLl9fZGF0YV9fPXtoYXNoOm5ldyBkLG1hcDpuZXcoaC5kZWZhdWx0fHxfLmRlZmF1bHQpLHN0cmluZzpuZXcgZH19O2NvbnN0IHY9ZnVuY3Rpb24odCl7dmFyIGU9dHlwZW9mIHQ7cmV0dXJuInN0cmluZyI9PWV8fCJudW1iZXIiPT1lfHwic3ltYm9sIj09ZXx8ImJvb2xlYW4iPT1lPyJfX3Byb3RvX18iIT09dDpudWxsPT09dH07Y29uc3QgeT1mdW5jdGlvbih0LGUpe3ZhciBuPXQuX19kYXRhX187cmV0dXJuIHYoZSk/blsic3RyaW5nIj09dHlwZW9mIGU/InN0cmluZyI6Imhhc2giXTpuLm1hcH07Y29uc3QgZz1mdW5jdGlvbih0KXt2YXIgZT15KHRoaXMsdCkuZGVsZXRlKHQpO3JldHVybiB0aGlzLnNpemUtPWU/MTowLGV9O2NvbnN0IGI9ZnVuY3Rpb24odCl7cmV0dXJuIHkodGhpcyx0KS5nZXQodCl9O2NvbnN0IGo9ZnVuY3Rpb24odCl7cmV0dXJuIHkodGhpcyx0KS5oYXModCl9O2NvbnN0IE89ZnVuY3Rpb24odCxlKXt2YXIgbj15KHRoaXMsdCksbz1uLnNpemU7cmV0dXJuIG4uc2V0KHQsZSksdGhpcy5zaXplKz1uLnNpemU9PW8/MDoxLHRoaXN9O2Z1bmN0aW9uIHcodCl7dmFyIGU9LTEsbj1udWxsPT10PzA6dC5sZW5ndGg7Zm9yKHRoaXMuY2xlYXIoKTsrK2U8bjspe3ZhciBvPXRbZV07dGhpcy5zZXQob1swXSxvWzFdKX19dy5wcm90b3R5cGUuY2xlYXI9cCx3LnByb3RvdHlwZS5kZWxldGU9Zyx3LnByb3RvdHlwZS5nZXQ9Yix3LnByb3RvdHlwZS5oYXM9aix3LnByb3RvdHlwZS5zZXQ9Tztjb25zdCB6PXd9LDg3Mjk5OSh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pm99KTtjb25zdCBvPW4oOTgxNTIzKS5kZWZhdWx0LlN5bWJvbH0sMTc4NDk3KHQsZSxuKXtuLmQoZSx7ZGVmYXVsdDooKT0+ZH0pO3ZhciBvPW4oODcyOTk5KSxyPU9iamVjdC5wcm90b3R5cGUsYT1yLmhhc093blByb3BlcnR5LHM9ci50b1N0cmluZyxjPW8uZGVmYXVsdD9vLmRlZmF1bHQudG9TdHJpbmdUYWc6dm9pZCAwO2NvbnN0IGk9ZnVuY3Rpb24odCl7dmFyIGU9YS5jYWxsKHQsYyksbj10W2NdO3RyeXt0W2NdPXZvaWQgMDt2YXIgbz0hMH1jYXRjaCh0KXt9dmFyIHI9cy5jYWxsKHQpO3JldHVybiBvJiYoZT90W2NdPW46ZGVsZXRlIHRbY10pLHJ9O3ZhciB1PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7Y29uc3QgbD1mdW5jdGlvbih0KXtyZXR1cm4gdS5jYWxsKHQpfQo7dmFyIGY9by5kZWZhdWx0P28uZGVmYXVsdC50b1N0cmluZ1RhZzp2b2lkIDA7Y29uc3QgZD1mdW5jdGlvbih0KXtyZXR1cm4gbnVsbD09dD92b2lkIDA9PT10PyJbb2JqZWN0IFVuZGVmaW5lZF0iOiJbb2JqZWN0IE51bGxdIjpmJiZmIGluIE9iamVjdCh0KT9pKHQpOmwodCl9fSw2MDI5NDIodCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5vfSk7Y29uc3Qgbz0ib2JqZWN0Ij09dHlwZW9mIG4uZyYmbi5nJiZuLmcuT2JqZWN0PT09T2JqZWN0JiZuLmd9LDE2MjMxNih0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pmd9KTt2YXIgbz1uKDkyODEzMik7Y29uc3Qgcj1uKDk4MTUyMykuZGVmYXVsdFsiX19jb3JlLWpzX3NoYXJlZF9fIl07dmFyIGEscz0oYT0vW14uXSskLy5leGVjKHImJnIua2V5cyYmci5rZXlzLklFX1BST1RPfHwiIikpPyJTeW1ib2woc3JjKV8xLiIrYToiIjtjb25zdCBjPWZ1bmN0aW9uKHQpe3JldHVybiEhcyYmcyBpbiB0fTt2YXIgaT1uKDg4MDExNSksdT1uKDczMDUwMyksbD0vXlxbb2JqZWN0IC4rP0NvbnN0cnVjdG9yXF0kLyxmPUZ1bmN0aW9uLnByb3RvdHlwZSxkPU9iamVjdC5wcm90b3R5cGUsXz1mLnRvU3RyaW5nLGg9ZC5oYXNPd25Qcm9wZXJ0eSxwPVJlZ0V4cCgiXiIrXy5jYWxsKGgpLnJlcGxhY2UoL1tcXF4kLiorPygpW1xde318XS9nLCJcXCQmIikucmVwbGFjZSgvaGFzT3duUHJvcGVydHl8KGZ1bmN0aW9uKS4qPyg/PVxcXCgpfCBmb3IgLis/KD89XFxcXSkvZywiJDEuKj8iKSsiJCIpO2NvbnN0IHY9ZnVuY3Rpb24odCl7cmV0dXJuISghKDAsaS5kZWZhdWx0KSh0KXx8Yyh0KSkmJigoMCxvLmRlZmF1bHQpKHQpP3A6bCkudGVzdCgoMCx1LmRlZmF1bHQpKHQpKX07Y29uc3QgeT1mdW5jdGlvbih0LGUpe3JldHVybiBudWxsPT10P3ZvaWQgMDp0W2VdfTtjb25zdCBnPWZ1bmN0aW9uKHQsZSl7dmFyIG49eSh0LGUpO3JldHVybiB2KG4pP246dm9pZCAwfX0sOTgxNTIzKHQsZSxuKXtuLmQoZSx7ZGVmYXVsdDooKT0+YX0pO3ZhciBvPW4oNjAyOTQyKSxyPSJvYmplY3QiPT10eXBlb2Ygc2VsZiYmc2VsZiYmc2VsZi5PYmplY3Q9PT1PYmplY3QmJnNlbGY7Y29uc3QgYT1vLmRlZmF1bHR8fHJ8fEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCl9LDczMDUwMyh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9PnJ9KTt2YXIgbz1GdW5jdGlvbi5wcm90b3R5cGUudG9TdHJpbmc7Y29uc3Qgcj1mdW5jdGlvbih0KXtpZihudWxsIT10KXt0cnl7cmV0dXJuIG8uY2FsbCh0KX1jYXRjaCh0KXt9dHJ5e3JldHVybiB0KyIifWNhdGNoKHQpe319cmV0dXJuIiJ9fSw5MTA3NzgodCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5vfSk7Y29uc3Qgbz1mdW5jdGlvbih0LGUpe3JldHVybiB0PT09ZXx8dCE9dCYmZSE9ZX19LDkyODEzMih0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9PmF9KTt2YXIgbz1uKDE3ODQ5Nykscj1uKDg4MDExNSk7Y29uc3QgYT1mdW5jdGlvbih0KXtpZighKDAsci5kZWZhdWx0KSh0KSlyZXR1cm4hMTt2YXIgZT0oMCxvLmRlZmF1bHQpKHQpO3JldHVybiJbb2JqZWN0IEZ1bmN0aW9uXSI9PWV8fCJbb2JqZWN0IEdlbmVyYXRvckZ1bmN0aW9uXSI9PWV8fCJbb2JqZWN0IEFzeW5jRnVuY3Rpb25dIj09ZXx8IltvYmplY3QgUHJveHldIj09ZX19LDg4MDExNSh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pm99KTtjb25zdCBvPWZ1bmN0aW9uKHQpe3ZhciBlPXR5cGVvZiB0O3JldHVybiBudWxsIT10JiYoIm9iamVjdCI9PWV8fCJmdW5jdGlvbiI9PWUpfX19XSk7"}},"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.tradingview-widget.com/static/bundles/embed/52095.e6eb530a13b2febd2cd3.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.307Z","timestamp":1785126257307,"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-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/52095.e6eb530a13b2febd2cd3.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/crypto-mkt-screener/?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 04:24:17 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: \"6a61b1ff-18c2\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Thu, 23 Jul 2026 06:17:35 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:26\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: a8abe0f90de189643d84e2382fd5844d\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":6338,"size_decoded":2044,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (6338), with no line terminators","md5":"caf4bfb0a92f81c0fb9d32b268c23f3c","sha1":"9157a7392cd2a99623089b8a8b0c46066c18c88b","sha256":"3fac059dd2a8faed0d0e54c7f4f74b33d35ee9572c353c6fde78c6cd96f168a1","sha512":"d6b7104f441ac900f2633fda4217d59f42503ae78aed48880181f69174c8e2422ec2a64e191f78c7760476881aa76db8007e9f911ebe2ff98ccab39b640ff4ef","ssdeep":"192:lnsu2uCTwTyQnjnvOJOdr45YERrzxD0VOnPn3nTuouzTmTogen9gqpnq:BI","tlshash":"0fd1794cf146b43e265f353a4319d1eca218b4c2e9c21ff7b971d2244ae1bc2e5f991a","first_seen":"2026-07-23T14:00:31.721517Z","last_seen":"2026-07-27T07:05:43.293921Z","times_seen":181,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtemtrcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLXpra3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9Lml0ZW0tdlRtOE8wTE17dmVydGljYWwtYWxpZ246bWlkZGxlO3doaXRlLXNwYWNlOm5vd3JhcH0uaXRlbS12VG04TzBMTS5pbnRlcmFjdGl2ZS12VG04TzBMTXtjb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQsdmFyKC0tY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0KSl9Lml0ZW0tdlRtOE8wTE0uaW50ZXJhY3RpdmUtdlRtOE8wTE0uaG92ZXJlZC12VG04TzBMTSwuaXRlbS12VG04TzBMTS5pbnRlcmFjdGl2ZS12VG04TzBMTTphY3RpdmV7Y29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0LWhvdmVyLHZhcigtLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dC1ob3ZlcikpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsuaXRlbS12VG04TzBMTS5pbnRlcmFjdGl2ZS12VG04TzBMTTpob3Zlcntjb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQtaG92ZXIsdmFyKC0tY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0LWhvdmVyKSl9fS5pdGVtLXZUbThPMExNLmludGVyYWN0aXZlLXZUbThPMExNLmhvdmVyZWQtdlRtOE8wTE17YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LWJhY2tncm91bmQtaG92ZXIsdmFyKC0tY29sb3ItcG9wdXAtZWxlbWVudC1iYWNrZ3JvdW5kLWhvdmVyKSl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5pdGVtLXZUbThPMExNLmludGVyYWN0aXZlLXZUbThPMExNOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtZWxlbWVudC1iYWNrZ3JvdW5kLWhvdmVyLHZhcigtLWNvbG9yLXBvcHVwLWVsZW1lbnQtYmFja2dyb3VuZC1ob3ZlcikpfX0uaXRlbS12VG04TzBMTS5pbnRlcmFjdGl2ZS12VG04TzBMTTphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LWJhY2tncm91bmQtaG92ZXIsdmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWxpZ2h0KSl9Lml0ZW0tdlRtOE8wTE0uZGlzYWJsZWQtdlRtOE8wTE17Y3Vyc29yOmRlZmF1bHQ7b3BhY2l0eTouNX0uaXRlbS12VG04TzBMTS5kaXNhYmxlZC12VG04TzBMTSwuaXRlbS12VG04TzBMTS5kaXNhYmxlZC12VG04TzBMTTphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1iYWNrZ3JvdW5kLHZhcigtLWNvbG9yLXBvcHVwLWJhY2tncm91bmQpKTtjb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQsdmFyKC0tY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0KSl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5pdGVtLXZUbThPMExNLmRpc2FibGVkLXZUbThPMExNOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtYmFja2dyb3VuZCx2YXIoLS1jb2xvci1wb3B1cC1iYWNrZ3JvdW5kKSk7Y29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0LHZhcigtLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dCkpfX0uaXRlbS12VG04TzBMTS5hY3RpdmUtdlRtOE8wTE0sLml0ZW0tdlRtOE8wTE0uYWN0aXZlLXZUbThPMExNOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWVsZW1lbnQtYmFja2dyb3VuZC1hY3RpdmUsdmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWJvbGQpKTtjb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQtYWN0aXZlLHZhcigtLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1pbnZlcnNlKSl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5pdGVtLXZUbThPMExNLmFjdGl2ZS12VG04TzBMTTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWVsZW1lbnQtYmFja2dyb3VuZC1hY3RpdmUsdmFyKC0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWJvbGQpKTtjb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQtYWN0aXZlLHZhcigtLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1pbnZlcnNlKSl9fS5pdGVtLXZUbThPMExNLmFjdGl2ZS12VG04TzBMTSAuc2hvcnRjdXQtdlRtOE8wTE0sLml0ZW0tdlRtOE8wTE0uYWN0aXZlLXZUbThPMExNOmFjdGl2ZSAuc2hvcnRjdXQtdlRtOE8wTE17Y29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktaW52ZXJzZSl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5pdGVtLXZUbThPMExNLmFjdGl2ZS12VG04TzBMTTpob3ZlciAuc2hvcnRjdXQtdlRtOE8wTE17Y29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktaW52ZXJzZSl9fS5pdGVtLXZUbThPMExNLm5vcm1hbC12VG04TzBMTXtoZWlnaHQ6MzJweH0uaXRlbS12VG04TzBMTS5iaWctdlRtOE8wTE17aGVpZ2h0OjY4cHh9Lmljb25DZWxsLXZUbThPMExNe21pbi13aWR0aDo2cHh9Lmljb24tdlRtOE8wTE17YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmctaW5saW5lLXN0YXJ0OjhweDt3aWR0aDoyOHB4fS5pY29uLXZUbThPMExNIHN2Z3toZWlnaHQ6MjhweDt3aWR0aDoyOHB4fS5jb250ZW50LXZUbThPMExNe2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7bWF4LXdpZHRoOjM2NXB4O3BhZGRpbmctaW5saW5lLWVuZDoyMHB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjRweH0ubGFiZWwtdlRtOE8wTE17ZmxleDoxIDEgYXV0bztmb250LXNpemU6MTRweDtvdmVyZmxvdy14OmhpZGRlbjtwYWRkaW5nLWlubGluZS1zdGFydDoycHg7dGV4dC1hbGlnbjpzdGFydH0udG9vbGJveC12VG04TzBMTXtmbGV4OjAgMSBhdXRvO2xpbmUtaGVpZ2h0OjE0cHg7bWFyZ2luLWlubGluZS1zdGFydDoxMHB4fS5mZWF0dXJlLW5vLW1vYmlsZXRvdWNoIC50b29sYm94LXZUbThPMExNLnNob3dUb29sYm94T25Ib3Zlci12VG04TzBMTXtvcGFjaXR5OjB9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5mZWF0dXJlLW5vLW1vYmlsZXRvdWNoIC5pdGVtLXZUbThPMExNOmhvdmVyIC50b29sYm94LXZUbThPMExNLnNob3dUb29sYm94T25Ib3Zlci12VG04TzBMTXtvcGFjaXR5OjF9fS5hcnJvd0ljb24tdlRtOE8wTE17ZmxleDowIDEgYXV0bzttYXJnaW4taW5saW5lLXN0YXJ0OjEwcHh9LmFycm93SWNvbi12VG04TzBMTSBzdmd7aGVpZ2h0OjEwcHg7ZmlsbDpjdXJyZW50Q29sb3J9LmFycm93SWNvbi12VG04TzBMTSBzdmc6ZGlyKHJ0bCl7dHJhbnNmb3JtOnNjYWxlWCgtMSl9LnNob3J0Y3V0LXZUbThPMExNe2NvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWVsZW1lbnQtaGludC10ZXh0LHZhcigtLWNvbG9yLXBvcHVwLWVsZW1lbnQtaGludC10ZXh0KSk7ZmxleDowIDEgYXV0bztmb250LXNpemU6MTJweDttYXJnaW4taW5saW5lLXN0YXJ0OjEwcHg7cGFkZGluZy10b3A6MnB4fS5zdWJNZW51LXZUbThPMExNe2hlaWdodDowfS5pbnZpc2libGVIb3RrZXktdlRtOE8wTE17dmlzaWJpbGl0eTpoaWRkZW59Lml0ZW0tZDlqTE9MclJ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O3BhZGRpbmctYmxvY2s6OHB4IDhweDtwYWRkaW5nLWlubGluZTo0MnB4IDhweDtwb3NpdGlvbjpyZWxhdGl2ZX0uaXRlbS1kOWpMT0xyUi5lbXB0eUljb25zLWQ5akxPTHJSe3BhZGRpbmctaW5saW5lLXN0YXJ0OjIwcHh9Lml0ZW0tZDlqTE9MclIubG9hZGluZy1kOWpMT0xyUntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlfS5pdGVtLWQ5akxPTHJSLmRpc2FibGVkLWQ5akxPTHJSe2N1cnNvcjpkZWZhdWx0O29wYWNpdHk6LjV9Lml0ZW0tZDlqTE9MclIuZGlzYWJsZWQtZDlqTE9MclIsLml0ZW0tZDlqTE9MclIuZGlzYWJsZWQtZDlqTE9MclI6YWN0aXZle2JhY2tncm91bmQtY29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtYmFja2dyb3VuZCx2YXIoLS1jb2xvci1wb3B1cC1iYWNrZ3JvdW5kKSk7Y29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0LHZhcigtLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dCkpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsuaXRlbS1kOWpMT0xyUi5kaXNhYmxlZC1kOWpMT0xyUjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWJhY2tncm91bmQsdmFyKC0tY29sb3ItcG9wdXAtYmFja2dyb3VuZCkpO2NvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dCx2YXIoLS1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQpKX19Lml0ZW0tZDlqTE9MclIuaW50ZXJhY3RpdmUtZDlqTE9MclJ7Y29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0LHZhcigtLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dCkpfS5pdGVtLWQ5akxPTHJSLmludGVyYWN0aXZlLWQ5akxPTHJSLmhvdmVyZWQtZDlqTE9MclIsLml0ZW0tZDlqTE9MclIuaW50ZXJhY3RpdmUtZDlqTE9MclI6YWN0aXZle2NvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dC1ob3Zlcix2YXIoLS1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQtaG92ZXIpKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7Lml0ZW0tZDlqTE9MclIuaW50ZXJhY3RpdmUtZDlqTE9MclI6aG92ZXJ7Y29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0LWhvdmVyLHZhcigtLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dC1ob3ZlcikpfX0uaXRlbS1kOWpMT0xyUi5pbnRlcmFjdGl2ZS1kOWpMT0xyUi5ob3ZlcmVkLWQ5akxPTHJSe2JhY2tncm91bmQtY29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtZWxlbWVudC1iYWNrZ3JvdW5kLWhvdmVyLHZhcigtLWNvbG9yLXBvcHVwLWVsZW1lbnQtYmFja2dyb3VuZC1ob3ZlcikpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsuaXRlbS1kOWpMT0xyUi5pbnRlcmFjdGl2ZS1kOWpMT0xyUjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWVsZW1lbnQtYmFja2dyb3VuZC1ob3Zlcix2YXIoLS1jb2xvci1wb3B1cC1lbGVtZW50LWJhY2tncm91bmQtaG92ZXIpKX19Lml0ZW0tZDlqTE9MclIuaW50ZXJhY3RpdmUtZDlqTE9MclI6YWN0aXZle2JhY2tncm91bmQtY29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtZWxlbWVudC1iYWNrZ3JvdW5kLWhvdmVyLHZhcigtLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1saWdodCkpfS5pdGVtLWQ5akxPTHJSLm5vcm1hbC1kOWpMT0xyUnttaW4taGVpZ2h0OjQwcHh9Lml0ZW0tZDlqTE9MclIuYmlnLWQ5akxPTHJSe21pbi1oZWlnaHQ6NjhweH0uaWNvbi1kOWpMT0xyUnthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTpmbGV4O2hlaWdodDoyOHB4O2luc2V0LWlubGluZS1zdGFydDo4cHg7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NnB4O3dpZHRoOjI4cHh9Lmljb24tZDlqTE9MclIsLmxhYmVsLWQ5akxPTHJSe2NvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dCx2YXIoLS1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQpKX0ubGFiZWwtZDlqTE9MclJ7ZmxleC1ncm93OjE7Zm9udC1zaXplOjE2cHg7bGluZS1oZWlnaHQ6MjRweDttYXJnaW4taW5saW5lLWVuZDo4cHg7bWF4LXdpZHRoOjEwMCU7d29yZC1icmVhazpicmVhay13b3JkfS50aXRsZS1kOWpMT0xyUntmb250LXdlaWdodDo3MDB9LnRpdGxlLWQ5akxPTHJSIC5pY29uLWQ5akxPTHJSOmRpcihydGwpe3RyYW5zZm9ybTpzY2FsZVgoLTEpfS5uZXN0ZWQtZDlqTE9MclJ7YWxpZ24taXRlbXM6Y2VudGVyO2FsaWduLXNlbGY6Y2VudGVyO2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MThweDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbi1pbmxpbmUtc3RhcnQ6YXV0bzt3aWR0aDoxOHB4fS5uZXN0ZWQtZDlqTE9MclI6ZGlyKHJ0bCl7dHJhbnNmb3JtOnNjYWxlWCgtMSl9LnNob3J0Y3V0LWQ5akxPTHJSe2xpbmUtaGVpZ2h0OjI0cHg7cGFkZGluZzowfS5yZW1vdmUtZDlqTE9MclIsLnNob3J0Y3V0LWQ5akxPTHJSe21hcmdpbi1pbmxpbmUtZW5kOjhweDttYXJnaW4taW5saW5lLXN0YXJ0OmF1dG99LnJlbW92ZS1kOWpMT0xyUnthbGlnbi1pdGVtczpjZW50ZXI7Y29sb3I6dmFyKC0tdHYtY29sb3ItcG9wdXAtZWxlbWVudC10ZXh0LHZhcigtLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dCkpO2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MjRweH0="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCARK.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.784Z","timestamp":1785126258784,"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 /crypto/XTVCARK.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 04:24:18 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: \"da368327e9488fdd6021a26d9bebaa57\"\r\nlast-modified: Wed, 08 Sep 2021 09:01:18 GMT\r\ncdn-cachedat: 08/14/2025 10:28:43\r\nx-amz-id-2: lTd6mDD8AAFZ0jTAIVd9TYQG3iCgs1NXJWCQHM5XW9ARMn3HnEo3TiJrq7t/gtviIVE52hFm3j0=\r\nx-amz-request-id: 33421ES918YAE8FB\r\nx-amz-meta-hash: da368327e9488fdd6021a26d9bebaa57\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: 9b3fc33488ce0d8e54a403727ecd60f2\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":293,"size_decoded":1109,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with no line terminators","md5":"da368327e9488fdd6021a26d9bebaa57","sha1":"e633bbc973c1fa0ef68600f455cf83fd8fe0ce6d","sha256":"ac83b0e69964c997936362eab2420d82706f826b28d46209306a953790b462a1","sha512":"6469ecca107fbf8005b271038c8aea8b818f325b50e81143987e8846c9cb2e192d938d742920d901e6c10975d584454039bb327d80e8d9a6f364f7e8f7cded2e","ssdeep":"","tlshash":"46e0ebcca6298104e9198bad33f414ba2077b4ea814e02eef0c1160825d10db3c20e2c","first_seen":"2023-11-05T01:43:47Z","last_seen":"2026-07-27T07:05:43.330302Z","times_seen":222,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjRjcwMDAwIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTguOTc0IDcuMzA2bC01LjU5OSA1Ljk3Nkw5IDQuMDE4bDUuNjI1IDkuMzIxLTUuNjUtNi4wMzN6TTkuNzgyIDEwSDguMDM0bC45LS45NTkuODU0Ljk1OWgtLjAwNnptLTMuMzc1IDJsLjk5OC0uOTk4aDMuMDI3bDEuMDIyLjk5OEg2LjQwN3oiIGZpbGw9IiNmZmYiLz48L3N2Zz4="}},"time_used":1,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":1,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/admin/testimony-images/4126.jpg","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.106Z","timestamp":1785126256106,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /admin/testimony-images/4126.jpg HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/jpeg\r\ncontent-length: 93149\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-16bdd\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":93149,"size_decoded":93401,"mime_type":"image/jpeg","magic":"JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, progressive, precision 8, 640x622, components 3","md5":"53a5d436a9131e3bbb25a0c87b8fb4b0","sha1":"39fd8572d6bac74e7979b1012ab51470c020ade0","sha256":"11248c6493a5adf1fd6a17fabd8a52b502a553b5491fbbbd293fde794f40aab1","sha512":"9c553c042fbb3a296d9ffa28d2ebbbce22b145128c3bedc9d5708cb8a1115259ff713dbdb27dc915cd00a95b1c737addd8a111bacf05dbaa3663696e4bf01c2f","ssdeep":"1536:LtpVMI1ISYuZO7dTOjoCPT1opcZ6GkjzjNp1Ws+DtK+F+oPdIkk2tMBPqszEHHiQ:LtvP1ISYJSjoOPZW71WCY/PdHElqswkI","tlshash":"6a9302f4c6e9dfa4c104d23eff7d5d11a30f1bc2b2097a2c45b647aaa7f96816ae5040","first_seen":"2026-07-27T03:36:45.115452Z","last_seen":"2026-07-27T04:25:12.732747Z","times_seen":2,"resource_available":false,"data":"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"}},"time_used":411,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":298,"receive":113,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/admin/video/2822.mp4","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"media","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.928Z","timestamp":1785126256928,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /admin/video/2822.mp4 HTTP/1.1\r\nHost: besttrader.live\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: video/webm,video/ogg,video/*;q=0.9,application/ogg;q=0.7,audio/*;q=0.6,*/*;q=0.5\r\nAccept-Language: en-US,en;q=0.9\r\nRange: bytes=1409024-\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://besttrader.live/\r\nSec-Fetch-Dest: video\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nAccept-Encoding: identity\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 206 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: video/mp4\r\ncontent-length: 26864\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-15e8f0\"\r\nx-powered-by: PleskLin\r\ncontent-range: bytes 1409024-1435887/1435888\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"206","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":26864,"size_decoded":27140,"mime_type":"video/mp4","magic":"data","md5":"c598160dcada9999feeaeb7c00133a89","sha1":"d5c786c7642f38f44f74fa736c1a597f9f6c1882","sha256":"d70572d4239538913080ea66a306ce69fe9ab1fb2b1ed02e8974cd439adc43ff","sha512":"785dd9cb0cadbfb8fb7d7ea81e9867b67e1a4af4b2a95bbfa25ea35d6dbca9e020a37d795b9d7eeecaf347a6f8386a594a3ff3c4fdf9e46f80a01e4e5ee21e87","ssdeep":"384:3FcvF7tklV1JzPBjI4Vx31pJL/DTDff8rTRTRrp2MXEFPxqInZHs:3FoFG/1JjhxHJLrff8nfd92PxqgK","tlshash":"cfc22ae133a81543d165133098f31b363b7aeca4438796db869537274cf13f8baaa4d6","first_seen":"2026-07-27T04:25:12.733845Z","last_seen":"2026-07-27T04:25:12.733845Z","times_seen":1,"resource_available":false,"data":"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0AAAAzAAAAZAAAAFMAAABIAAAAXQAAACcAAABeAAAAQAAAAFgAAACSAAAAUgAAADsAAAAyAAAANgAAALcAAAAoAAAA4AAAACMAAABmAAAAqwAAAC0AAABrAAAAUQAAAH0AAACHAAAAGQAAAKkAAABsAAAAYAAAAGIAAACrAAAASgAAAD4AAACPAAAAiQAAAJUAAAAwAAAAsgAAADsAAAA8AAAAXAAAAFcAAAAtAAAAfAAAADAAAACtAAAGfgAAACUAAABcAAAAWwAAAFUAAAAiAAAAhgAAADkAAABmAAAAbgAAADsAAABcAAAAUgAAAE4AAABWAAAANQAAAF0AAABFAAAARwAAAFoAAABfAAAAQQAAAEoAAABDAAAAWQAAAHQAAAAeAAAAWAAAADkAAABuAAAAZAAAAEcAAABmAAAAZAAAAFwAAACYAAAATAAAAIgAAAB/AAAAQQAAAG0AAABBAAAAUAAAAFMAAABVAAAAeAAAAE8AAABvAAAAMwAAAJwAAAT/AAAAMwAAAGUAAABKAAAATwAAAKEAAABSAAAAYQAAAFcAAABiAAAATgAAAD0AAABSAAAANwAAAEwAAAA/AAAAXgAAADYAAACmAAAARgAAAIsAAACVAAAAhwAAAEEAAABSAAAAWAAAAMEAAAA+AAAAcwAAAE8AAACrAAAAuQAAAG8AAACHAAAAhAAAAKMAAADwAAAAGgAAAIcAAABiAAAAswAAAIoAAABUAAAAXgAAAEEAAADcAAABJAAAAG0AAACcAAAAVwAABUAAAAA8AAAAuwAAAEMAAABdAAAATQAAAEoAAABuAAAAIgAAAHgAAABNAAAAVQAAAHkAAAA0AAAAWwAAADkAAACPAAAAyAAAAD4AAABhAAAAQgAAAE8AAADFAAAAKQAAAJAAAABZAAAAQAAAAKUAAABJAAAArQAAAFwAAABYAAAA4wAAAHwAAABEAAAAdwAAAFQAAACcAAAASAAAAIQAAABCAAAAiAAAADoAAADnAAAAIQAAAKUAAABhAAAAdQAAAIMAAABpAAAF/wAAACwAAADaAAAAgAAAACsAAABjAAAAawAAAEoAAACJAAAALAAAAGEAAABLAAAAbQAAAKQAAABEAAAAgAAAAEcAAACVAAAAUgAAAKEAAAA/AAAASQAAAFIAAACFAAAAPwAAAEkAAACNAAAALwAAAM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AAANGHN0c2MAAAAAAAABFgAAAAEAAAACAAAAAQAAAAQAAAABAAAAAQAAAAUAAAACAAAAAQAAAAgAAAABAAAAAQAAAAkAAAACAAAAAQAAAAsAAAABAAAAAQAAAAwAAAACAAAAAQAAAA8AAAABAAAAAQAAABAAAAACAAAAAQAAABMAAAABAAAAAQAAABQAAAACAAAAAQAAABYAAAABAAAAAQAAABcAAAACAAAAAQAAABoAAAABAAAAAQAAABsAAAACAAAAAQAAAB0AAAABAAAAAQAAAB4AAAACAAAAAQAAACEAAAABAAAAAQAAACIAAAACAAAAAQAAACUAAAABAAAAAQAAACYAAAACAAAAAQAAACgAAAABAAAAAQAAACkAAAACAAAAAQAAACwAAAABAAAAAQAAAC0AAAACAAAAAQAAAC8AAAABAAAAAQAAADAAAAACAAAAAQAAADMAAAABAAAAAQAAADQAAAACAAAAAQAAADcAAAABAAAAAQAAADgAAAACAAAAAQAAADoAAAABAAAAAQAAADsAAAACAAAAAQAAAD4AAAABAAAAAQAAAD8AAAACAAAAAQAAAEEAAAABAAAAAQAAAEIAAAACAAAAAQAAAEUAAAABAAAAAQAAAEYAAAACAAAAAQAAAEkAAAABAAAAAQAAAEoAAAACAAAAAQAAAEwAAAABAAAAAQAAAE0AAAACAAAAAQAAAFAAAAABAAAAAQAAAFEAAAACAAAAAQAAAFMAAAABAAAAAQAAAFQAAAACAAAAAQAAAFcAAAABAAAAAQAAAFgAAAACAAAAAQAAAFsAAAABAAAAAQAAAFwAAAACAAAAAQAAAF4AAAABAAAAAQAAAF8AAAACAAAAAQAAAGIAAAABAAAAAQAAAGMAAAACAAAAAQAAAGUAAAABAAAAAQAAAGYAAAACAAAAAQAAAGkAAAABAAAAAQAAAGoAAAACAAAAAQAAAG0AAAABAAAAAQAAAG4AAAACAAAAAQAAAHAAAAABAAAAAQAAAHEAAAACAAAAAQAAAHQAAAABAAAAAQAAAHUAAAACAAAAAQAAAHcAAAABAAAAAQAAAHgAAAACAAAAAQAAAHsAAAABAAAAAQAAAHwAAAACAAAAAQAAAH8AAAABAAAAAQAAAIAAAAACAAAAAQAAAIIAAAABAAAAAQAAAIMAAAACAAAAAQAAAIYAAAABAAAAAQAAAIcAAAACAAAAAQAAAIoAAAABAAAAAQAAAIsAAAACAAAAAQAAAI0AAAABAAAAAQAAAI4AAAACAAAAAQAAAJEAAAABAAAAAQAAAJIAAAACAAAAAQAAAJQAAAABAAAAAQAAAJUAAAACAAAAAQAAAJgAAAABAAAAAQAAAJkAAAACAAAAAQAAAJwAAAABAAAAAQAAAJ0AAAACAAAAAQAAAJ8AAAABAAAAAQAAAKAAAAACAAAAAQAAAKMAAAABAAAAAQAAAKQAAAACAAAAAQAAAKYAAAABAAAAAQAAAKcAAAACAAAAAQAAAKoAAAABAAAAAQAAAKsAAAACAAAAAQAAAK4AAAABAAAAAQAAAK8AAAACAAAAAQAAALEAAAABAAAAAQAAALIAAAACAAAAAQAAALUAAAABAAAAAQAAALYAAAACAAAAAQAAALgAAAABAAAAAQAAALkAAAACAAAAAQAAALwAAAABAAAAAQAAAL0AAAACAAAAAQAAAMAAAAABAAAAAQAAAMEAAAACAAAAAQAAAMMAAAABAAAAAQAAAMQAAAACAAAAAQAAAMcAAAABAAAAAQAAAMgAAAACAAAAAQAAAMoAAAABAAAAAQAAAMsAAAACAAAAAQAAAM4AAAABAAAAAQAAAM8AAAACAAAAAQAAANIAAAABAAAAAQAAANMAAAACAAAAAQAAANUAAAABAAAAAQAAANYAAAACAAAAAQAAANkAAAABAAAAAQAAANoAAAACAAAAAQAAANwAAAABAAAAAQAAAN0AAAACAAAAAQAAAOAAAAABAAAAAQAAAOEAAAACAAAAAQAAAOQAAAABAAAAAQAAAOUAAAACAAAAAQAAAOcAAAABAAAAAQAAAOgAAAACAAAAAQAAAOsAAAABAAAAAQAAAOwAAAACAAAAAQAAAO4AAAABAAAAAQAAAO8AAAACAAAAAQAAAPIAAAABAAAAAQAAAPMAAAACAAAAAQAAAPYAAAABAAAAAQAAAPcAAAACAAAAAQAAAPkAAAABAAAAAQAAAPoAAAACAAAAAQAAAP0AAAABAAAAAQAAAP4AAAACAAAAAQAAAQAAAAABAAAAAQAAAQEAAAACAAAAAQAAAQQAAAABAAAAAQAAAQUAAAACAAAAAQAAAQgAAAABAAAAAQAAAQkAAAACAAAAAQAAAQsAAAABAAAAAQAAAQwAAAACAAAAAQAAAQ8AAAABAAAAAQAAARAAAAACAAAAAQAAARMAAAABAAAAAQAAARQAAAACAAAAAQAAARYAAAABAAAAAQAAARcAAAACAAAAAQAAARoAAAABAAAAAQAAARsAAAACAAAAAQAAAR0AAAABAAAAAQAAAR4AAAACAAAAAQAAASEAAAABAAAAAQAAASIAAAACAAAAAQAAASUAAAABAAAAAQAAASYAAAACAAAAAQAAASgAAAABAAAAAQAAASkAAAACAAAAAQAAASwAAAABAAAAAQAAAS0AAAACAAAAAQAAAS8AAAABAAAAAQAAATAAAAACAAAAAQAAATMAAAABAAAAAQAAATQAAAACAAAAAQAAATcAAAABAAAAAQAAATgAAAACAAAAAQAAAToAAAABAAAAAQAAATsAAAACAAAAAQAAAT4AAAABAAAAAQAAAT8AAAACAAAAAQAAAUEAAAABAAAAAQAAAUIAAAACAAAAAQAAAUUAAAABAAAAAQAAAUYAAAACAAAAAQAAAUkAAAABAAAAAQAAAUoAAAACAAAAAQAAAUwAAAABAAAAAQAAAU0AAAACAAAAAQAAAVAAAAABAAAAAQAAAVEAAAACAAAAAQAAAVMAAAABAAAAAQAAAVQAAAACAAAAAQAAAVcAAAABAAAAAQAAAVgAAAACAAAAAQAAAVsAAAABAAAAAQAAAVwAAAACAAAAAQAAAV4AAAABAAAAAQAAAV8AAAACAAAAAQAAAWIAAAABAAAAAQAAAWMAAAACAAAAAQAAAWUAAAABAAAAAQAAAWYAAAACAAAAAQAAAWkAAAABAAAAAQAAAWoAAAACAAAAAQAAAW0AAAABAAAAAQAAAW4AAAACAAAAAQAAAXAAAAABAAAAAQAAAXEAAAACAAAAAQAAAXQAAAABAAAAAQAAAXUAAAACAAAAAQAAAXcAAAABAAAAAQAAAXgAAAACAAAAAQAAAXsAAAABAAAAAQAAAXwAAAACAAAAAQAAAX8AAAABAAAAAQAAAYAAAAACAAAAAQAAAYIAAAABAAAAAQAAAYMAAAACAAAAAQAAAYYAAAABAAAAAQAAAYcAAAACAAAAAQAAAYoAAAABAAAAAQAAAYsAAAACAAAAAQAAAY0AAAABAAAAAQAAAY4AAAACAAAAAQAAAZEAAAABAAAAAQAAAZIAAAACAAAAAQAAAZQAAAAB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"}},"time_used":284,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":284,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.266Z","timestamp":1785126257266,"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-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/ticker-tape/?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 04:24:17 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: ab195e537c01eb748fff5d292e3e1e7a\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-27T07:05:45.3965Z","times_seen":884,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbNzkyMDddLHs2NDA3NDQoZSx0LG4pe2Z1bmN0aW9uIG8oZSx0LG4pe3JldHVybiBNYXRoLm1pbihNYXRoLm1heChlLHQpLG4pfWZ1bmN0aW9uIHIoZSl7cmV0dXJuIGU+MD9NYXRoLmZsb29yKGUpOk1hdGguY2VpbChlKX1mdW5jdGlvbiBpKGUpe3JldHVybiBlJTI9PTB9bi5kKHQse2NsYW1wOigpPT5vLGlzRXZlbjooKT0+aSx0b0ludDooKT0+cn0pfSw0NzkzNChlLHQsbil7bi5kKHQse2VuYWJsZWQ6KCk9PnMsZ2V0Q29uZmlnOigpPT5jfSk7dmFyIG89big1MDI1ODcpLHI9bigxMjc3MTEpLGk9bigzMTg5NzQpLGw9bigyMTIyMjkpO2Z1bmN0aW9uIHMoZSx0LG4pe2xldCBvPXdpbmRvdy51c2VyO24mJihvPW4pO2NvbnN0IHI9YyhlLHQsbyk7aWYoIXIpcmV0dXJuITE7aWYoci5kaXNhYmxlX29uX3RyaWFsJiYoIW98fG8uaXNfdHJpYWwpKXJldHVybiExO2NvbnN0IGw9ci5kaXNhYmxlX29uX2xpdGVfcGxhbjtpZihsJiZvLmlzX2xpdGVfcGxhbil7aWYoImFsbCI9PT1sKXJldHVybiExO2lmKCJleGNsdWRlX21vYmlsZSI9PT1sJiYhaS5DaGVja01vYmlsZS5hbnkoKSlyZXR1cm4hMX1yZXR1cm4hMH1mdW5jdGlvbiB1KGUpe2NvbnN0IHQ9b1tlXTtyZXR1cm4gdD90LmV4dGVuZHM/T2JqZWN0LmFzc2lnbih7fSx1KHQuZXh0ZW5kcyksdCk6dDpudWxsfWZ1bmN0aW9uIGMoZSx0LG4pe2xldCBvPXUodHx8KGZ1bmN0aW9uKGUpe2xldCB0PXdpbmRvdy51c2VyOyJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiZ3aW5kb3cudXNlciYmKHQ9d2luZG93LnVzZXIpLGUmJih0PWUpO2xldCBuPXQ/LnByb19wbGFufHwiZnJlZSI7cmV0dXJuImZyZWUiIT09biYmISgwLGwuaXNUcmlhbFByb2R1Y3QpKG4pfHwobj0oMCxsLmdldFByb2R1Y3RGb3JUcmlhbCkobikpLG59KG4pPz8iIikpO2lmKCFvKXJldHVybiBudWxsO2NvbnN0IGk9d2luZG93LlRyYWRpbmdWaWV3Py53aWRnZXRDdXN0b21lcjtyZXR1cm4gaSYmcltpXSYmKG89T2JqZWN0LmFzc2lnbih7fSxvLHJbaV0pKSxvJiZvW2VdfHxudWxsfX0sODYyMjEzKGUsdCxuKXtuLmQodCx7TG9nb1NpemU6KCk9Pm8uTG9nb1NpemUsZ2V0TG9nb1VybFJlc29sdmVyOigpPT5hfSk7dmFyIG89big2MjAzNTQpLHI9bigxMzg2MzgpLGk9big2MzE2MzQpLGw9big4MTA0MSk7Y29uc3Qgcz0oMCxuKDIyMTA2MSkuZ2V0TG9nZ2VyKSgiTG9nb1VybFJlc29sdmVyIik7Y2xhc3MgdXtjb25zdHJ1Y3RvcihlKXsoMCxyLmFzc2VydCkoIiIhPT1lLCJTMyBiYXNlIHVybCBtdXN0IGJlIGEgbm9uLWVtcHR5IHN0cmluZyIpLHRoaXMuX2Jhc2VVcmw9ZX1nZXRTeW1ib2xMb2dvVXJsKGUsdCl7aWYoIiI9PT1lKXJldHVybiBzLmxvZ1dhcm4oImxvZ28gaWQgbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmciKSwiIjtzd2l0Y2godCl7Y2FzZSBvLkxvZ29TaXplLk1lZGl1bTpyZXR1cm4gdGhpcy5fYmFzZVVybCtgJHtlfS5zdmdgO2Nhc2Ugby5Mb2dvU2l6ZS5MYXJnZTpyZXR1cm4gdGhpcy5fYmFzZVVybCtgJHtlfS0tYmlnLnN2Z2B9fWdldENvdW50cnlGbGFnVXJsKGUsdCl7cmV0dXJuIHRoaXMuZ2V0U3ltYm9sTG9nb1VybCgiY291bnRyeS8iK2UsdCl9Z2V0UHJvdmlkZXJMb2dvVXJsKGUsdCl7cmV0dXJuIHRoaXMuZ2V0U3ltYm9sTG9nb1VybCgicHJvdmlkZXIvIitlLHQpfWdldFNvdXJjZUxvZ29VcmwoZSx0KXtyZXR1cm4gdGhpcy5nZXRTeW1ib2xMb2dvVXJsKCJzb3VyY2UvIitlLHQpfWdldEJsb2NrY2hhaW5Db250cmFjdExvZ29VcmwoZSx0KXtyZXR1cm4gdGhpcy5nZXRTeW1ib2xMb2dvVXJsKCJibG9ja2NoYWluLyIrZSx0KX1nZXRDYW5kbGVzdGlja1BhdHRlcm5Mb2dvVXJsKGUsdD1sLlN0ZFRoZW1lLkxpZ2h0KXtyZXR1cm4gdGhpcy5nZXRTeW1ib2xMb2dvVXJsKGBjYW5kbGVwYXR0ZXJuLyR7ZX0tJHt0fWAsby5Mb2dvU2l6ZS5NZWRpdW0pfX1sZXQgYztmdW5jdGlvbiBhKCl7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoIWMpe2NvbnN0IGU9KDAsaS5nZXRJbml0RGF0YSkoKSx0PWUuc2V0dGluZ3M/ZS5zZXR0aW5ncy5TM19MT0dPX1NFUlZJQ0VfQkFTRV9VUkw6IiI7Yz1uZXcgdSh0KX1yZXR1cm4gY30oKX19LDIzNDk2NChlLHQsbil7YXN5bmMgZnVuY3Rpb24gbyhlLHQpe2NvbnN0IG89YXdhaXQgUHJvbWlzZS5hbGwoW24uZSgyODgzMSksbi5lKDg0MzA2KSxuLmUoMjkyOTYpLG4uZSg1MjM5Niksbi5lKDYwMDYyKSxuLmUoMjAzNTQpLG4uZSgxMzQ5Miksbi5lKDM3NzQ2KSxuLmUoMTIzODUpLG4uZSg4MTA3Miksbi5lKDk0MjMyKSxuLmUoMTk1OTUpLG4uZSgxOTc4Nyksbi5lKDg1NzkpLG4uZSgxNzA4Nyksbi5lKDU3MzAwKSxuLmUoMTIwNTEpLG4uZSg4OTU1OCksbi5lKDEwMzY2KSxuLmUoNDA5MTQpLG4uZSg5MDk2MCksbi5lKDg3NzQwKSxuLmUoNzg4OTkpLG4uZSg2NzIxMiksbi5lKDgwOTE1KSxuLmUoMTUzNCksbi5lKDI4MTc2KSxuLmUoMzk2MDkpLG4uZSg1NTIyOSksbi5lKDY1MTAwKSxuLmUoNDI3MDYpXSkudGhlbihuLmJpbmQobiw1MDYyNzUpKTtyZXR1cm4gby5zaG93U2ltcGxlRGlhbG9nKGUsby53YXJuaW5nTW9kdWxlLHQpfW4uZCh0LHtzaG93V2FybmluZzooKT0+b30pfSw2MTk5OTIoZSx0LG4pe24uZCh0LHtpc1RpY2tzRW5hYmxlZDooKT0+cn0pO3ZhciBvPW4oMzE4OTc0KTtuKDkzMDIzMSk7ZnVuY3Rpb24gcigpe3JldHVybiEoMCxvLm9uV2lkZ2V0KSgpfX0sMjEyMjI5KGUsdCxuKXtuLmQodCx7Z2V0UHJvZHVjdEZvclRyaWFsOigpPT5pLGlzVHJpYWxQcm9kdWN0OigpPT5yfSk7big4MjkxODApLG4oMTg1MjcxKTtjb25zdCBvPSJfdHJpYWwiO2Z1bmN0aW9uIHIoZSl7cmV0dXJuIG5ldyBSZWdFeHAobysiJCIpLnRlc3QoZSl9ZnVuY3Rpb24gaShlKXtyZXR1cm4gZS5zcGxpdChvKVswXX19LDIyMTA2MShlLHQsbil7dmFyIG87bi5kKHQse2dldExvZ0hpc3Rvcnk6KCk9PmIsZ2V0TG9nZ2VyOigpPT5SLGdldFJhd0xvZ0hpc3Rvcnk6KCk9PmYsaXNIaWdoUmF0ZUVuYWJsZWQ6KCk9PmR9KSwKZnVuY3Rpb24oZSl7ZVtlLkVSUk9SPTFdPSJFUlJPUiIsZVtlLldBUk5JTkc9Ml09IldBUk5JTkciLGVbZS5JTkZPPTNdPSJJTkZPIixlW2UuTk9STUFMPTRdPSJOT1JNQUwiLGVbZS5ERUJVRz01XT0iREVCVUcifShvfHwobz17fSkpO2xldCByPTA7Y29uc3QgaT1bXTtsZXQgbD1udWxsLHM9bnVsbCx1PW51bGwsYz1udWxsLGE9by5XQVJOSU5HLGc9ITE7ZnVuY3Rpb24gZCgpe3JldHVybiBnfWZ1bmN0aW9uIGYoZSx0KXtsZXQgbj1pLnJlZHVjZSgoKGUsdCk9PmUuY29uY2F0KHQpKSxbXSk7cmV0dXJuIG4uc29ydCgoKGUsdCk9PmUuaWQtdC5pZCkpLHZvaWQgMCE9PXQmJihuPW4uZmlsdGVyKChlPT5lLnN1YlN5c3RlbUlkPT09dCkpKSwibnVtYmVyIj09dHlwZW9mIGUmJihuPW4uc2xpY2UoLWUpKSxufWZ1bmN0aW9uIG0oZSl7cmV0dXJuIG5ldyBEYXRlKGUudGltZXN0YW1wKS50b0lTT1N0cmluZygpKyI6IitlLnN1YlN5c3RlbUlkKyI6IitlLm1lc3NhZ2UucmVwbGFjZSgvIi9nLCInIil9Y29uc3QgYj0oZSx0KT0+ZnVuY3Rpb24oZSx0KXtsZXQgbixvPTAscj0wO2ZvcihuPWUubGVuZ3RoLTE7bj49MSYmKG8rPTgqKDErZW5jb2RlVVJJQ29tcG9uZW50KGVbbl0pLmxlbmd0aCksIShuLTE+MCYmKHI9OCooMStlbmNvZGVVUklDb21wb25lbnQoZVtuLTFdKS5sZW5ndGgpLG8rcj50KSkpO24tLSk7cmV0dXJuIGUuc2xpY2Uobil9KGYoZSx0KS5tYXAobSksNzU0OTc0NzIpO2Z1bmN0aW9uIGgoZSx0LG4saSxnKXtpZih0PT09cyYmaS5pZD09PXUpcmV0dXJuO2NvbnN0IGY9bmV3IERhdGU7aWYoZTw9by5OT1JNQUwmJmZ1bmN0aW9uKGUsdCxuLG8saSxsKXsiZnVuY3Rpb24iPT10eXBlb2Ygc3RydWN0dXJlZENsb25lJiYodD1zdHJ1Y3R1cmVkQ2xvbmUodCkpLHQ9dC5zbGljZSgwLGw/PzFlMyk7Y29uc3Qgcz17aWQ6cixtZXNzYWdlOnQsc3ViU3lzdGVtSWQ6byx0aW1lc3RhbXA6TnVtYmVyKGUpfTtyKz0xLG4ucHVzaChzKSx2b2lkIDAhPT1pJiZuLmxlbmd0aD5pJiZuLnNwbGljZSgwLDEpfShmLHQsbixpLmlkLGkubWF4Q291bnQsZyksZTw9YSYmKCFpLmhpZ2hSYXRlfHxkKCkpJiYoIWx8fGkuaWQubWF0Y2gobCkpKXtjb25zdCBuPWYudG9JU09TdHJpbmcoKSsiOiIraS5pZCsiOiIrdDtzd2l0Y2goZSl7Y2FzZSBvLkRFQlVHOmNvbnNvbGUuZGVidWcobik7YnJlYWs7Y2FzZSBvLklORk86Y2FzZSBvLk5PUk1BTDppLmNvbG9yP2NvbnNvbGUubG9nKCIlYyIrbiwiY29sb3I6ICIraS5jb2xvcik6Y29uc29sZS5sb2cobik7YnJlYWs7Y2FzZSBvLldBUk5JTkc6Y29uc29sZS53YXJuKG4pO2JyZWFrO2Nhc2Ugby5FUlJPUjpjb25zb2xlLmVycm9yKG4pfXM9dCx1PWkuaWQsbnVsbCE9PWMmJmNsZWFyVGltZW91dChjKSxjPXNldFRpbWVvdXQoKCgpPT57cz1udWxsLHU9bnVsbCxjPW51bGx9KSwxZTMpfX1mdW5jdGlvbiBSKGUsdD17fSl7Y29uc3Qgbj1bXTtpLnB1c2gobik7Y29uc3Qgcj1PYmplY3QuYXNzaWduKHQse2lkOmV9KTtmdW5jdGlvbiBsKGUpe3JldHVybih0LG8pPT5oKGUsU3RyaW5nKHQpLG4scixvKX1yZXR1cm57bG9nRGVidWc6bChvLkRFQlVHKSxsb2dFcnJvcjpsKG8uRVJST1IpLGxvZ0luZm86bChvLklORk8pLGxvZ05vcm1hbDpsKG8uTk9STUFMKSxsb2dXYXJuOmwoby5XQVJOSU5HKX19fX1dKTs="}},"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.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.356Z","timestamp":1785126257356,"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-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/crypto-mkt-screener/?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 04:24:17 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: 562ca31039adf3b263531a48a7aed4bd\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-27T07:05:45.338148Z","times_seen":2378,"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":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":"s3-symbol-logo.tradingview.com/crypto/XTVCSOL.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.479Z","timestamp":1785126258479,"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 /crypto/XTVCSOL.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 04:24:18 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: \"4e7ffbe0158d6691280828b83a04be6a\"\r\nlast-modified: Fri, 26 Apr 2024 14:09:44 GMT\r\ncdn-cachedat: 08/14/2025 09:09:49\r\nx-amz-id-2: i9iofEtVq9BEtSfA9SnRXjv2axec3T64ks2+JF6fHWjeKRkbxN0FGf2QZ5lDr8TpEIFysEJ8/vg=\r\nx-amz-request-id: NKVPH09E6MHYS4PB\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 4e7ffbe0158d6691280828b83a04be6a\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: a3ea6cde8f5afeee9d330582dcba80cf\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":1591,"size_decoded":1494,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1591), with no line terminators","md5":"4e7ffbe0158d6691280828b83a04be6a","sha1":"1e45c8ac083c766b73cccb5aa033b42006ba2740","sha256":"0141d7d255194770d361e5414081a991f8b42663fc3390c2acf1501cb6766959","sha512":"90ed3d228cb530a80038d409c34cff0759f3aa76c194a00d06860e7dc819209d9ed175ef6632f9daf26c604a4a1232ff7313fff65b8b8e7eb62966819ea14389","ssdeep":"","tlshash":"5a31d16be95cbd3fe05bc3bddd808431225a1599b4c4935adad9cf1f18181c36d08f50","first_seen":"2024-08-19T19:07:47.86961Z","last_seen":"2026-07-27T07:05:43.283238Z","times_seen":1743,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYXlwNXpscmRiKSIgZD0iTTAgMGgxOHYxOEgweiIvPjxwYXRoIGQ9Ik0xMi4zOCA2LjlhLjM1LjM1IDAgMCAxLS4yNC4xSDQuMjFjLS4xNyAwLS4yNy0uMTktLjE3LS4zMkw1LjYgNS4xYy4wNy0uMDYuMTUtLjEuMjQtLjFoNy45NmMuMTcgMCAuMjcuMTkuMTcuMzJMMTIuMzggNi45WiIgZmlsbD0idXJsKCNieXA1emxyZGIpIi8+PHBhdGggZD0iTTEyLjM4IDEyLjlhLjM1LjM1IDAgMCAxLS4yNC4xSDQuMjFjLS4xNyAwLS4yNy0uMTktLjE3LS4zMkw1LjYgMTEuMWMuMDctLjA3LjE1LS4xLjI0LS4xaDcuOTZjLjE3IDAgLjI3LjE5LjE3LjMybC0xLjU4IDEuNTlaIiBmaWxsPSJ1cmwoI2N5cDV6bHJkYikiLz48cGF0aCBkPSJNMTIuMzggOC4xYS4zNS4zNSAwIDAgMC0uMjQtLjFINC4yMWMtLjE3IDAtLjI3LjE5LS4xNy4zMkw1LjYgOS45Yy4wNy4wNi4xNS4xLjI0LjFoNy45NmMuMTcgMCAuMjctLjE5LjE3LS4zMmwtMS41OC0xLjU5WiIgZmlsbD0idXJsKCNkeXA1emxyZGIpIi8+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJheXA1emxyZGIiIHgxPSIzLjM1IiB5MT0iMy4xMiIgeDI9IjIxLjkiIHkyPSIyNC40MyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiMxQTFFMjEiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMwNjA2MEEiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCBpZD0iYnlwNXpscmRiIiB4MT0iNC4zNSIgeTE9IjcuODEiIHgyPSIxMy40OCIgeTI9IjUuMTIiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjNkU3M0UzIi8+PHN0b3Agb2Zmc2V0PSIuMzIiIHN0b3AtY29sb3I9IiM0MUI4QzgiLz48c3RvcCBvZmZzZXQ9Ii41OCIgc3RvcC1jb2xvcj0iIzI3RTJCNyIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzE2RkM5OSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IGlkPSJjeXA1emxyZGIiIHgxPSIzLjgiIHkxPSIxMi42OCIgeDI9IjE0LjIiIHkyPSIxMS4yMiIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiM5RTQ4RkYiLz48c3RvcCBvZmZzZXQ9Ii4zNCIgc3RvcC1jb2xvcj0iIzhENERGOSIvPjxzdG9wIG9mZnNldD0iLjU3IiBzdG9wLWNvbG9yPSIjNkI3QUUxIi8+PHN0b3Agb2Zmc2V0PSIuOTUiIHN0b3AtY29sb3I9IiM0NUIzQ0UiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCBpZD0iZHlwNXpscmRiIiB4MT0iNC4zOSIgeTE9IjkiIHgyPSIxMy44MSIgeTI9IjkiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjODY1NEYzIi8+PHN0b3Agb2Zmc2V0PSIuNDciIHN0b3AtY29sb3I9IiM1NDlBRDYiLz48c3RvcCBvZmZzZXQ9Ii45MyIgc3RvcC1jb2xvcj0iIzI2RDlCMiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjwvc3ZnPg=="}},"time_used":7,"timings":{"blocked":-1,"dns":1,"connect":4,"send":0,"wait":4,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCPAXG.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.607Z","timestamp":1785126258607,"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 /crypto/XTVCPAXG.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=4, 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 04:24:18 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: \"8f3839d7b67e815e29b2f3bc8f7c4022\"\r\nlast-modified: Mon, 19 Feb 2024 08:06:23 GMT\r\ncdn-cachedat: 08/09/2025 14:29:30\r\nx-amz-id-2: 71DcCsm7GIF/RTnVLvVu1Ybdj+gOz/DLSrNxxrHLwAKb0M/T14vsvFd4qhVMJ/E1aWDLwVAbPPw=\r\nx-amz-request-id: TMV4SN4REJXRJNMK\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 8f3839d7b67e815e29b2f3bc8f7c4022\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: 358f48d0a347f79c6b16e0702dbc2958\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":1261,"size_decoded":1600,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1261), with no line terminators","md5":"8f3839d7b67e815e29b2f3bc8f7c4022","sha1":"720f8fe63b0d05cc6e97d1366bb1143ca9756527","sha256":"cce7070c44b56f005d1b65e6b44e3d817c5983478c5490934c50986251213452","sha512":"c9df3bd50fa605e7cb4489339eb7e3f220479f860c1dfe496edbfb1e4f97475e085260e6920264a8e1e82db175a0b0b53ceb1262d73f6e233a0e192f42721ea8","ssdeep":"","tlshash":"2421ddb1632ce1cc2a03c6a9ce39a071170e85e8bb5e53f551558b70748a2eeec47c28","first_seen":"2024-02-21T19:27:11Z","last_seen":"2026-07-27T07:05:43.326483Z","times_seen":793,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNNi43OCA1LjNjLjItLjIzLjM2LS40Mi41My0uNTktMi44MS0uMS0yIDIuMDYtMi45MSA0LjI2LTEuMDYgMi41Mi4xMiAzLjQ4IDEuODggMy43OGE0LjEgNC4xIDAgMCAxLS42LTEuMDNjLTEuMTMtMS41Mi0uNjctNC4zIDEuMS02LjQyWk0xMy41NSA4YTguNjUgOC42NSAwIDAgMS0zLjE1IDQuMWMtLjcuNDgtMS41Ny43Ny0yLjU0Ljc3YTkuNSA5LjUgMCAwIDEtMS41OC0uMTJjLjMuMzYuNjUuNjcgMS4wNi44OCAyLjU0IDEuMyAyLjctMS4xMiA1LjQtMi4zNSAxLjUtLjcgMS41LTIuMDQuODEtMy4yOVoiIGZpbGw9IiNFRkU4MTIiLz48cGF0aCBkPSJNMTAuNCA1LjQ3Yy4zOC4wNy43My4yIDEuMDUuNC44Ni41IDEuNjQgMS4yOSAyLjEgMi4xMi40Ni0xLjM3LjI1LTIuNDQtLjc2LTIuNjQtMS4xLS4yMS0xLjk2LS4yOC0yLjc5LS45LTEuMDItLjc1LTEuOTEtLjUtMi42OS4yNmwuMTcuMDFjMS4wOC4wNyAyLjEuMyAyLjkyLjc1WiIgZmlsbD0iI0VFRTgwOSIvPjxwYXRoIGQ9Ik02Ljc4IDUuM2MtMS43NyAyLjEzLTIuMjMgNC45LTEuMSA2LjQyYTQuODcgNC44NyAwIDAgMSAuMjUtNC4xMyA0LjMyIDQuMzIgMCAwIDEgNC40Ny0yLjEyIDYuOTMgNi45MyAwIDAgMC0zLjA5LS43NiA4LjIgOC4yIDAgMCAwLS41My42WiIgZmlsbD0iI0RFQzIxQyIvPjxwYXRoIGQ9Ik0xMS40NSA1Ljg2Yy0uMzItLjE5LS42Ny0uMzItMS4wNS0uMzkgMS4wOC42IDEuOCAxLjYyIDEuOCAzLjIzLS4wMiAxLjQtLjcgMi42NS0xLjggMy40QTguNjUgOC42NSAwIDAgMCAxMy41NSA4YTYuMDQgNi4wNCAwIDAgMC0yLjEtMi4xNFoiIGZpbGw9IiNFNUNCMjIiLz48cGF0aCBkPSJNMTAuMjIgMTEuMzNhMi41NCAyLjU0IDAgMCAxLTMuNjItLjgzIDIuOTIgMi45MiAwIDAgMSAuNzgtMy44M2MxLjMyLTEgMy4wMS0uNiAzLjYzLjgzLjYgMS40LjQzIDMtLjc5IDMuODNabS4xOC01Ljg2Yy0xLjU4LS4zLTMuNS40My00LjQ3IDIuMTJhNC44NyA0Ljg3IDAgMCAwIC4zNSA1LjE2Yy41LjA5IDEuMDMuMTIgMS41Ny4xMi45OCAwIDEuODUtLjI5IDIuNTUtLjc3IDEuMS0uNzUgMS43OC0yIDEuOC0zLjQgMC0xLjYxLS43Mi0yLjYzLTEuOC0zLjIzWiIgZmlsbD0iI0NDQTcyNyIvPjwvc3ZnPg=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCSTABLE3.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.630Z","timestamp":1785126258630,"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 /crypto/XTVCSTABLE3.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 04:24:18 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: \"77d9043600a7abd5742ddc4bf15455d4\"\r\nlast-modified: Wed, 21 Jan 2026 16:22:14 GMT\r\nx-amz-id-2: nM41FXE2FY4NjnB4xlzUYvx0435GLVQCAIhFIkkVnIOZe2JO3hINzir4lEOpcgIe00C+nQCJo6E=\r\nx-amz-request-id: RQKZGN25CN5XJVW5\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 77d9043600a7abd5742ddc4bf15455d4\r\ncdn-proxyver: 1.43\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 01/21/2026 16:40:57\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: ee059e58c38436b1ea62022d28f96ae3\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":582,"size_decoded":1292,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (582), with no line terminators","md5":"77d9043600a7abd5742ddc4bf15455d4","sha1":"ce003a80f816dacb25970aeacd3117d9e85dff82","sha256":"a4c457e209e5dd840a177d0681ce9636a7665122012cffece33b30727043451b","sha512":"ee15dc235ce599faef20d126b4b5d8898558a24ca8d78d4812327f87a60fc07b848dff5f110d4efc66330b0dbb1acf7cc330ccfdc3008aa2195fb7ae2c70052a","ssdeep":"","tlshash":"b5f0ac7e0128c54c6403d68ccbaa4591174fa0d4388407f930ebd720b9461cedd17918","first_seen":"2026-01-21T20:11:02.930383Z","last_seen":"2026-07-27T07:05:43.254287Z","times_seen":452,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMwMTI0MUQiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTMuOTkgOC42N2E1LjAyIDUuMDIgMCAwIDEtNi43MyA1LjAxbC0uMDEtLjAzdi0uOGEuMDQuMDQgMCAwIDEgLjA0LS4wNGMxLjUuMzcgMy40Mi4wOCA0LjI1LTEuMzguMzgtLjY2LjQzLTEuNy0uMi0yLjI0LS43LS42LTEuNDUtLjI0LTIuMTYuMTdhOTA0LjcgOTA0LjcgMCAwIDEtNC4yOSAyLjQ2Yy0uMDEgMC0uMDIgMC0uMDMtLjAyYTUuMDEgNS4wMSAwIDAgMSA1Ljg4LTcuNDlsLjAxLjA0di44YS4wMy4wMyAwIDAgMS0uMDIuMDNoLS4wMWMtLjQ2LS4xLS45Mi0uMTUtMS4zNy0uMTQtMS4yLjAzLTIuNDYuNTctMi45OCAxLjcxLS4yOS42MS0uMyAxLjU1LjI2IDIuMDMuNjcuNiAxLjQuMzIgMi4wNy0uMDhhMTY1NzcuMDggMTY1NzcuMDggMCAwIDEgNC40LTIuNTMgNC45MiA0LjkyIDAgMCAxIC44OCAyLjVaIiBmaWxsPSIjRThGQkY3Ii8+PC9zdmc+"}},"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":"besttrader.live/translate.google.com/translate_a/elementa0d8a0d8a0d8.html?cb=googleTranslateElementInit","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.480Z","timestamp":1785126256480,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /translate.google.com/translate_a/elementa0d8a0d8a0d8.html?cb=googleTranslateElementInit HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: text/html\r\nlast-modified: Sat, 07 Oct 2023 09:01:37 GMT\r\netag: W/\"65211e71-2a70\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":10864,"size_decoded":4710,"mime_type":"text/html","magic":"HTML document, Unicode text, UTF-8 text, with very long lines (4070)","md5":"2b6705458be1a06ac2897afe20c800dd","sha1":"a9c86115f4203c77b79b87f12c283f6ad8d671cb","sha256":"defc43b0f73866b7959a75092d1de97d6e615f939ba08951961fc09f9a356c78","sha512":"6c38b1eb7753bc351e9f6d85e0c0abb10dfb8a8378bb14fb0cdaa8e4f10eaae7958e2b52b5d8f7b25a13bbf7311a12b63b8b78db26f51a2c8bf2e68102c3e637","ssdeep":"192:kCylYHC0HNXGZkHQU7ydPJq5S2KqQVX/uTK3w3DK+tMy47R/Ga0kVhFuPwf8Pn9x:kCgVGaRF8I8SVwpCI","tlshash":"f722c8ab1ae7005b740360b967aa3201bb68e143d11fcd607f0db3a8df875819d9375d","first_seen":"2026-07-27T03:36:45.003834Z","last_seen":"2026-07-27T04:25:12.737908Z","times_seen":2,"resource_available":false,"data":"CgoKPCFET0NUWVBFIGh0bWw+CjxodG1sPgogICAgCjwhLS0gTWlycm9yZWQgZnJvbSB0cmFkZXByb2dsb2JhbGludmVzdG1lbnQuY29tL3RyYW5zbGF0ZS5nb29nbGUuY29tL3RyYW5zbGF0ZV9hL2VsZW1lbnRhMGQ4YTBkOC5odG1sP2NiPWdvb2dsZVRyYW5zbGF0ZUVsZW1lbnRJbml0IGJ5IEhUVHJhY2sgV2Vic2l0ZSBDb3BpZXIvMy54IFtYUiZDTycyMDE0XSwgU3VuLCAwOSBPY3QgMjAyMiAxNToyNDowOCBHTVQgLS0+CjxoZWFkPgogICAgPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC10eXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9dXRmLTgiPgogICAgPG1ldGEgaHR0cC1lcXVpdj0iQ2FjaGUtY29udHJvbCIgY29udGVudD0ibm8tY2FjaGUiPgogICAgPG1ldGEgaHR0cC1lcXVpdj0iUHJhZ21hIiBjb250ZW50PSJuby1jYWNoZSI+CiAgICA8bWV0YSBodHRwLWVxdWl2PSJFeHBpcmVzIiBjb250ZW50PSIwIj4KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4KICAgIDx0aXRsZT40MDQgTm90IEZvdW5kPC90aXRsZT4KICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CiAgICAgICAgYm9keSB7CiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmOwogICAgICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQyODU3MTQyOTsKICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsKICAgICAgICAgICAgY29sb3I6ICMyRjMyMzA7CiAgICAgICAgICAgIHBhZGRpbmc6IDA7CiAgICAgICAgICAgIG1hcmdpbjogMDsKICAgICAgICB9CiAgICAgICAgc2VjdGlvbiwgZm9vdGVyIHsKICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgICAgIHBhZGRpbmc6IDA7CiAgICAgICAgICAgIG1hcmdpbjogMDsKICAgICAgICB9CiAgICAgICAgLmNvbnRhaW5lciB7CiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOwogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87CiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDsKICAgICAgICB9CiAgICAgICAgLnJlc3BvbnNlLWluZm8gewogICAgICAgICAgICBjb2xvcjogI0NDQ0NDQzsKICAgICAgICB9CiAgICAgICAgLnN0YXR1cy1jb2RlIHsKICAgICAgICAgICAgZm9udC1zaXplOiA1MDAlOwogICAgICAgIH0KICAgICAgICAuc3RhdHVzLXJlYXNvbiB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjUwJTsKICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgfQogICAgICAgIC5jb250YWN0LWluZm8sCiAgICAgICAgLnJlYXNvbi10ZXh0IHsKICAgICAgICAgICAgY29sb3I6ICMwMDAwMDA7CiAgICAgICAgfQogICAgICAgIC5hZGRpdGlvbmFsLWluZm8gewogICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OwogICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjkzQTRBOwogICAgICAgICAgICBjb2xvcjogI0ZGRkZGRjsKICAgICAgICB9CiAgICAgICAgLmFkZGl0aW9uYWwtaW5mbyBhIHsKICAgICAgICAgICAgY29sb3I6ICNGRkZGRkY7CiAgICAgICAgfQogICAgICAgIC5hZGRpdGlvbmFsLWluZm8taXRlbXMgewogICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7CiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDE5M3B4OwogICAgICAgIH0KICAgICAgICAuY29udGFjdC1pbmZvIHsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsKICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4OwogICAgICAgIH0KICAgICAgICAuY29udGFjdC1pbmZvIGEgewogICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsKICAgICAgICAgICAgY29sb3I6ICM0MjhCQ0E7CiAgICAgICAgfQogICAgICAgIC5jb250YWN0LWluZm8gYTpob3ZlciwKICAgICAgICAuY29udGFjdC1pbmZvIGE6Zm9jdXMsCiAgICAgICAgLmNvbnRhY3QtaW5mbyBhOmFjdGl2ZSB7CiAgICAgICAgICAgIGNvbG9yOiAjMkE2NDk2OwogICAgICAgIH0KICAgICAgICAucmVhc29uLXRleHQgewogICAgICAgICAgICBtYXJnaW46IDIwcHggMDsKICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4OwogICAgICAgIH0KICAgICAgICB1bCB7CiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZSBvdXRzaWRlIG5vbmU7CiAgICAgICAgICAgIG1hcmdpbjogMDsKICAgICAgICAgICAgcGFkZGluZzogMDsKICAgICAgICB9CiAgICAgICAgdWwgbGkgewogICAgICAgICAgICBmbG9hdDogbGVmdDsKICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgIH0KICAgICAgICAuYWRkaXRpb25hbC1pbmZvLWl0ZW1zIHVsIGxpIHsKICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgfQogICAgICAgIC5pbmZvLWltYWdlIHsKICAgICAgICAgICAgcGFkZGluZzogMTBweDsKICAgICAgICB9CiAgICAgICAgLmluZm8taGVhZGluZyB7CiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOwogICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OwogICAgICAgICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7CiAgICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIH0KICAgICAgICAuaW5mby1zZXJ2ZXIgYWRkcmVzcyB7CiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7CiAgICAgICAgfQogICAgICAgIGZvb3RlciB7CiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICAgICAgbWFyZ2luOiA2MHB4IDA7CiAgICAgICAgfQogICAgICAgIGZvb3RlciBhIHsKICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogICAgICAgIH0KICAgICAgICBmb290ZXIgYSBpbWcgewogICAgICAgICAgICBib3JkZXI6IDA7CiAgICAgICAgfQogICAgICAgIC5jb3B5cmlnaHQgewogICAgICAgICAgICBmb250LXNpemU6IDEwcHg7CiAgICAgICAgICAgIGNvbG9yOiAjM0Y0MTQzOwogICAgICAgIH0KICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHsKICAgICAgICAgICAgLmFkZGl0aW9uYWwtaW5mbyB7CiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsKICAgICAgICAgICAgfQogICAgICAgICAgICAuYWRkaXRpb25hbC1pbmZvLWl0ZW1zIHsKICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgLmNvbnRhaW5lciB7CiAgICAgICAgICAgICAgICB3aWR0aDogOTAlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIC5hZGRpdGlvbmFsLWluZm8taXRlbXMgdWwgbGkgewogICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OwogICAgICAgICAgICB9CiAgICAgICAgICAgIC5hZGRpdGlvbmFsLWluZm8taXRlbXMgdWwgbGk6Zmlyc3QtY2hpbGQgewogICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDsKICAgICAgICAgICAgfQogICAgICAgICAgICAucmVhc29uLXRleHQgewogICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4OwogICAgICAgICAgICB9CiAgICAgICAgICAgIC5jb250YWN0LWluZm8gewogICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4OwogICAgICAgICAgICB9CiAgICAgICAgICAgIC5pbmZvLWltYWdlIHsKICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0OwogICAgICAgICAgICB9CiAgICAgICAgICAgIC5pbmZvLWhlYWRpbmcgewogICAgICAgICAgICAgICAgbWFyZ2luOiA2MnB4IDAgMCA5OHB4OwogICAgICAgICAgICB9CiAgICAgICAgICAgIC5pbmZvLXNlcnZlciBhZGRyZXNzIHsKICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7CiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgICAgICAgICByaWdodDogMDsKICAgICAgICAgICAgICAgIGJvdHRvbTogMDsKICAgICAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4OwogICAgICAgICAgICB9CiAgICAgICAgICAgIC5zdGF0dXMtcmVhc29uIHsKICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHsKICAgICAgICAgICAgLmFkZGl0aW9uYWwtaW5mbyB7CiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFQQUFBQURxQ0FNQUFBQ3J4amhkQUFBQXQxQk1WRVVBQUFBQUFBRC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLzUrZm4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLzYrdnIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8raTVlZFRBQUFBUFhSU1RsTUFBUUVDQXdRRkJnY0lDUW9MREEwT0R4QVJFaE1VRlJZWEdCa2FHeHdkSGg4Z0lTSWpKQ1VtSnlnb0tTb3JMQzB1THpBd01USXpORFUyTnpnNUg3eDBYQUFBQ25kSlJFRlVlQUh0WFhsekdzOFI3VFEzQ0ZrSHhwS3hoSXd0SUJ3Z0l1WVk0dS8vdVZKMnFwTEtEN1E4dDJaN3hwRDNuNnNrYTkvMmJNOU12ejZvR0V5WEZvS0hmbWhlb2V3eDljWWVoVnVQSE1UNGpwaHlCdE5IeEhRbURHZ0J2WmpYQnVXTjJnb2diUHk2UnRjT2VqTlB4RmtiK0NFWWhIQ2ZtSjZEUVNoZkVHZk10NzFGT1BncEUxUEhPTVRFWThvWjN5Q3IyVXRpSW5xRWZ0ajNpTE0xOEFmc3UveEt2OUI0UVV6c1YxWEtGVHpEUEcrTGZvTHBFL0xqSm56TzA4UUNBdWdMYWxLZXFQL21FbVc2UWorQlBJRTdJWW1UeXcxTUZ3YmFrc2F5YlN4RENBNFNURit3ZzhySDdFek13cU5pYlkzOG1sdlhLRGRVNXBESDNUUmtsNDB2eEprWitETzJOdS8zSG55Qzd0MTVvYkdCdHFSRlJYbzYrMFo1WVFoNUxIZDlZR1dPc0YrOUlzNW9RWGN0WktidmRBQXRiSEhNOCtHTGZvaldkSWdQZmY3WWlmUlROaVptdXNXK3c4ZkRqMXhkZXZObmJVM1ZGZlRFTC9XMzNwZkgzMWNHWUJwZ1c5TGJhM0ljOEM4aUE3N05MZTUxNHZ1OEJQajYvbjNsQ2QvVmtnS1hHa3dZVVFIQWFNK3lRdW5CbU5Td2JSVlloK2tPY2dNaHZSREIxTWQyMFlmaVIrVUZmdmRJaXpwMnYxdlZqdDB1c2ExcG1OekFYMklGbDUveGFFOWFxUUdTRDZieEkwUlpTdzN1dUYwWWpRSGVwak14SG1kOUlnQzFOYlkxVlNrZGVCNHZYTUgwS1NRVkl2UWZFUmNpTXBjYUZ0VzRIOGlJMGdCMk16ZkVjVjNnQitJa2ZEdGJ5Q0FUZ3RIQjdsM1RyS1VHMnlXT2U3TzJLWVFJUEU3eEZEMTJZdnk2U3Zxb0xPTWY5NWsrQnZncW9nQ0ZDeDIyTmRsdE8xZXBZYzd5Y0VLU2FJOStVQVlQR09sS0RRWXl4RFA5TnBxdjBOS1prUzdHdU5SUWlnNXB2YVlRd2RUenRqUm5DcnIvbDBiMlVnTyt3UnRNaUZDQXpxcExMMFNvK2hXbWk2MU5uM2FxS0dFekRmRnJtRW9LcWNXU0ZEUk9OU3JBVTBpRllMckhVMlJLQjNxK0h4REhUNEpLRWUycHJoeFkxYUNTNWxZK0huWHU2Tit4NklKQ1JRUW1FRXorWWpJRS94cy9NbUQ4cUhSWUs1Q0FIdWFUWTVqZlF4RkMvWW9JUVNTVmFmckQrV0s0SDBQaXY4U0FUUlpDaEVYaU9zMzlML0lZd2lPeFJIZ2VFS2NtYk1JOWNjSFJDZHhVZVlhbkZwUUpNQlVESUZ4dzFjaEppQkFvbWt6M3g0M2wrbnVXR21XaGtRczBhNlk3WUhWZTc3Mm0xdFpsVUJFaEtJOWs2bnVMRThiektWU0VDRUhlQ1pTeXNyMDRxSkduVHpzVnhKb1F3bTdiUGhRN2N6YTVFQ0dRR3BnNlRuanptV0JiVTd0RXhraFZ3MzZ5ejNIQ20wcUV2RVo5Qzd2RFlaZVdBUWhuS2tRVUcvaTdORG5DTC9od2J2SnI2bWlQS0hUYU9FNTR4cEJHcmw4UklYS1gxYmszK0ExYVVoSHhVdGUzc0hFdk5TSXA0UkVkQk5PTkE5Tk9XWUV3dXE1NEFoUGV4M05hSVFMd0hJSVFsUWtQYndzUkZwZG1kYi9oRDhUU0RDd1RCdThXMzBzU0lpUzdQOU53WjdDZ0FlRGpsYU05a3RBRDArTXh3cnNlOFhzVGFNb1JJb0NhWm1nM0JRZ0xxckhWQ0J1M3FoVzMrQUFPaHdwNTJRSUFmUWtBd29ESEt6Zk5FWWNrNFpQcDVxaDVDcDRWRmlMOFdNL0NsOFNGNHBndGh2dEhtNHFRVUlpUWRZKzVOTWZ1LzIyOFBrcTNOWk5NcUQxVzdyTW5yd0plUUVtSXdLc2FjTUkvVFZPTGxIalFqTTFZVnRWUTNSd2h2T1JvM2NraVE1Wk9VemxDT015aTlaK0xYUkVoUzVpcXJJNFFudU5sZjhvVkViSzhBNTU2UVFLMExOclRqMnRpV2ZjRm5oMGhQSXBZRVZHam1CQWUyYjk1VTN3TXhpb2lFclJtMm51aGQ4UVJDQThJd1RSQVcxTzdQQXNidENQeU1NZ0pwKzEvSWF4cUdBUnpyRnR0cGhVUitNdkVQU3grNm0vcEN4RWkzWTdwNDg1RVNBVm11bGR2elNUS3cyZnFIU0dNNWhCVzFJVUkwZi9MZE9OdEVVS1hHQzk1aksrUmc0UUJWd05tbGVQWlZqVHh1bzI0a1dNclFIZy9uWnp4RHFtcUZSRkM3OTkrZGJFaXJNb1ZFWGhWQTA3WStHV05NT0JDeElJcENnQ3BBWDVLZ0hCNklRSUxId0UzSFhrMlhRVnN6ZFNrR0VDalVBQmhQTE1kVC91S0wwUklROER6WU9LSnU5OFYwMDZMYlNJa3ZCc1JsekJQWWtJUklIMTc0M2lFaWVsQlQ0aVFSa05Id1VRTVV0VFdYcXNpUXVnQml3bDczT09yVjBSSXEvNitCSVBQVlZMcmJBVkF1bFFLSXdBTy85alVLeUprNTFTbU81d3docEhYYWMwRTNFUUVmUkl1NlRmQllMUW4vSjNlQ2NGZEU3aTRkd21IY2tXRXJKc21VN2VJc0duTHhwVnBWRVRJNGtWTTNWQ1V3MStYZFJQUmFNMGs2NGpMMUxFRmtCQkdSdzdhZDFaRStBVkg3NFhoOE5RTS9kWk14VktEa1BDeVdtYlBKLzh1SVFKL1hiaUw4Yk5LdnYwdldsTENiMGZRalI5enVVMXkrc1NramNxc2dQQXpDVkdGV3pQcFl4Sk05R0FNWGhHUmluRDg1eGtyQ3hFb21FWTdJN2ovNDBJRXZqV2xKN3dEempKWnRtYkNXL2NDaE9QUHRsSUNNR1hJQVgzUUZZUUlSY0kzQ3EyWk5rM3RZZHV1blB4SXB1czhKb0xpNWUxdTJ5V04xa3hkM1VWOVZYQWR2bmpudElrc2gxVjNCU2UvRElVSUhCZFJDTU1WNk9uSHJ0VzNieGM4VkpWbVBRK0lGUW1idHlVZ2VqZW02VnN6d2FOSjVJUVQ5cjhBVUYwNC9Eb01JK05oMVpXNU00Y2hKNXl1TlJNQW52N1RoMFB3UDc0cFRsOVVqUFo4R2oxOVBZU24wUzFGUUcyVmZHdlNQcXhycDUybUJONkkyNW4yQ1RCT09SRTAvNkdpVm45WU5mOGJGQmQ0UlVSRmxXekJ2eUJFcUlpNEk5YWt5KzJyMjk1OTcvWkQ2Mit4S1ZmQnROTTZxYUhSRzYxZXJYUEJPZk82SE43VVlsSm11c2xwV0RVVGRZYWI0TDJ6MXY0MGhQUEJ2d3pxT2x1VHZoREJWQjJhNEl5eC80VXhMcng4Z295Y1cwVUVnTzR5MkwzSCtVbDVYSS80dm9jNnJaa0EzQnB2M25qZlMvbmhSNzgxRTU0TjZ0NE9lV3hReHVrbmd1SjFTODRBUlI0UndBcXRtYUNGWm5SaUwybGJNK0hhQUM1bnBxK0l3Ris2aGhmQld6Tk5sVzZxQ3JHWFJ5emEweU5PZDFFMWZzWVVDN1VWMkpvcDdYeVhic3c5MEtZVUluanBrUmNlY1dma0VtZENBZWhndWV1VG1OdCtzaGtSZUtkM3Y2N25QOWNOREpIdm9EKyt4ZHZwb3ZYS0NwNVNmb0d4SHNqMHlGK0l3SFV1czdzbVZoOElIVkdJd0p0THk3dU42UGUvd0FuckJ4T25BYXlJU0xXa1E4d29CS3lSKytkVVRzdUVLK0w4cDJCRDRmR2RzZnFoeEdRVFFabHVIVUxYclJzVUZmQkUwT2d6SWxyYVI4dmt3NnFuWG11RFNGOFJnUzh0aCtkK3BoY2k4RkpmMWZ3YXBpNDRyRnBmcVRaQW5XK0pGUkcza2Y5NForc1NxZFIxVUlpSS9kYy9CNk4vTTlXc2lBRE8wMEEzUVUwaG9oWDVSVGRlQ3JzdHlUMVdwaFVSVEJldkJhVjRpd1lKR0djdFJEQzFGc0dhUTNSdEdGZkw0b3MzNGc2VCtBa0FUODRiczBmWDJ3ZVM4OFg3WDZoWFJERFJ6ZHdIWi81RDJoampnaHQzTWI1eTFOSU5xK2JlWkJ1OGQ4NDY1N3dQWWZOOHBaQmMwZytKS2lLWWlOcjlyNHYxWnJ2ZGJ0YXpwMTZUU0NPZlpwcE1pR0Q2aVZxcjI3MW9Wb2tVNkFKOVU1RkduWEl3dzVtSCtrTEVoeEkxY2wyMFFDR0NUZ1JNQS8zK0YybFJYWHR6WGhVUlBUVHQ5R1FBNmgrZC8xZEU1QW45R1JINW81bXdJZ0tIdmhDQmk1ajYwQmNpOG9lK0VLRVByWW1nK1FOTk93M1BkQ0xncEJVUk9QUTE4bVgxWkV4OHA5Ly9JaTBxYzNRaTZDbUFVMWRFcEQ5U0ExdFQ5OC9HWmFkdmYyOUd4UFlQaDluK01qQXVSTmcvSGM0V1ltOFdqVDBwQUJOQjdXa0FiODFrejhmRW81TmEwckFRWVU4S1FFV0VQU2tBYWFmblJQaVhFR0hQQ0NiY254cGhJRVBQbmhYYzlYa1JOdUhoM0N3OEpYdGVlQ1Y3WmpnL3d1YThZR2wzWHZEVVB5L2MvQXZkNC9oTkRTcWVnUUFBQUFCSlJVNUVya0pnZ2c9PSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgLmNvbnRhaW5lciB7CiAgICAgICAgICAgICAgICB3aWR0aDogNzAlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIC5zdGF0dXMtY29kZSB7CiAgICAgICAgICAgICAgICBmb250LXNpemU6IDkwMCU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgLnN0YXR1cy1yZWFzb24gewogICAgICAgICAgICAgICAgZm9udC1zaXplOiA0NTAlOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgPC9zdHlsZT4KICAgIDwvaGVhZD4KICAgIDxib2R5PgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgIDxzZWNpb24gY2xhc3M9InJlc3BvbnNlLWluZm8iPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InN0YXR1cy1jb2RlIj40MDQ8L3NwYW4+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic3RhdHVzLXJlYXNvbiI+Tm90IEZvdW5kPC9zcGFuPgogICAgICAgICAgICA8L3NlY3Rpb24+CgogICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0iY29udGFjdC1pbmZvIj4KICAgICAgICAgICAgICAgIFBsZWFzZSBmb3J3YXJkIHRoaXMgZXJyb3Igc2NyZWVuIHRvIHRyYWRlcHJvZ2xvYmFsaW52ZXN0bWVudC5jb20ncyA8YSBocmVmPSJtYWlsdG86d2VibWFzdGVyQHRyYWRlcHJvZ2xvYmFsaW52ZXN0bWVudC5jb20/c3ViamVjdD1FcnJvciBtZXNzYWdlIFtdICBmb3IgdHJhZGVwcm9nbG9iYWxpbnZlc3RtZW50LmNvbS9jcF9lcnJvcmRvY3VtZW50LnNodG1sIHBvcnQgNDQzIG9uIFN1bmRheSwgMTMtTWFyLTIwMjIgMDU6MjY6MjYgRURUIj4gV2ViTWFzdGVyPC9hPi4KICAgICAgICAgICAgPC9zZWN0aW9uPgoKICAgICAgICAgICAgPHAgY2xhc3M9InJlYXNvbi10ZXh0Ij5UaGUgc2VydmVyIGNhbiBub3QgZmluZCB0aGUgcmVxdWVzdGVkIHBhZ2U6PC9wPgogICAgICAgIDwvZGl2PgogICAgICAgIDxzZWN0aW9uIGNsYXNzPSJhZGRpdGlvbmFsLWluZm8iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWRkaXRpb25hbC1pbmZvLWl0ZW1zIj4KICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSIuLi8uLi9pbWctc3lzL3NlcnZlcl9taXNjb25maWd1cmVkLnBuZyIgY2xhc3M9ImluZm8taW1hZ2UiIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbmZvLWhlYWRpbmciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYWRlcHJvZ2xvYmFsaW52ZXN0bWVudC5jb20vY3BfZXJyb3Jkb2N1bWVudC5zaHRtbCAocG9ydCA0NDMpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJpbmZvLXNlcnZlciI+PC9saT4KICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvc2VjdGlvbj4KICAgICAgICA8Zm9vdGVyPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2NwYW5lbC5jb20vP3V0bV9zb3VyY2U9Y3BhbmVsd2htJmFtcDt1dG1fbWVkaXVtPWNwbG9nbyZhbXA7dXRtX2NvbnRlbnQ9bG9nb2xpbmsmYW1wO3V0bV9jYW1wYWlnbj00MDRyZWZlcnJhbCIgdGFyZ2V0PSJjcGFuZWwiIHRpdGxlPSJjUGFuZWwsIEluYy4iPgogICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSIuLi8uLi9pbWctc3lzL3Bvd2VyZWRfYnlfY3BhbmVsLnN2ZyIgaGVpZ2h0PSIyMCIgYWx0PSJjUGFuZWwsIEluYy4iIC8+CiAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29weXJpZ2h0Ij48YSBocmVmPSJodHRwOi8vY3BhbmVsLmNvbS8/dXRtX3NvdXJjZT1jcGFuZWx3aG0mYW1wO3V0bV9tZWRpdW09Y3Bsb2dvJmFtcDt1dG1fY29udGVudD1sb2dvbGluayZhbXA7dXRtX2NhbXBhaWduPTQwNHJlZmVycmFsIiB0YXJnZXQ9ImNwYW5lbCIgdGl0bGU9ImNQYW5lbCwgSW5jLiI+Q29weXJpZ2h0IMKpIDIwMjAgY1BhbmVsLCBMLkwuQy48L2E+CiAgICAgICAgICAgICAgICAgICAgPGJyIC8+PGEgaHJlZj0iaHR0cHM6Ly9nby5jcGFuZWwubmV0L3ByaXZhY3kiIHRhcmdldD0iX2JsYW5rIj5Qcml2YWN5IFBvbGljeTwvYT48L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9mb290ZXI+CiAgICA8L2JvZHk+Cgo8IS0tIE1pcnJvcmVkIGZyb20gdHJhZGVwcm9nbG9iYWxpbnZlc3RtZW50LmNvbS90cmFuc2xhdGUuZ29vZ2xlLmNvbS90cmFuc2xhdGVfYS9lbGVtZW50YTBkOGEwZDguaHRtbD9jYj1nb29nbGVUcmFuc2xhdGVFbGVtZW50SW5pdCBieSBIVFRyYWNrIFdlYnNpdGUgQ29waWVyLzMueCBbWFImQ08nMjAxNF0sIFN1biwgMDkgT2N0IDIwMjIgMTU6MjQ6MDkgR01UIC0tPgo8L2h0bWw+Cg=="}},"time_used":110,"timings":{"blocked":1,"dns":0,"connect":0,"send":0,"wait":109,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCZAMA.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.698Z","timestamp":1785126258698,"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 /crypto/XTVCZAMA.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 04:24:18 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: \"dd587b0ca6d59eeebefcbec2e86efdf9\"\r\nlast-modified: Mon, 09 Mar 2026 08:10:50 GMT\r\nx-amz-id-2: uehhiB4nFMg57olgwuussgFFmc85xgLI4/0/FDGx3JOloB03rR9a69v416HQZJCtQ1BL46Is1zE=\r\nx-amz-request-id: AEVQREJPQE72NEAY\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: dd587b0ca6d59eeebefcbec2e86efdf9\r\ncdn-proxyver: 1.43\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 03/09/2026 08:36:03\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 3c1a0a1b520737b9d7e375bb6959945c\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":213,"size_decoded":1095,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with no line terminators","md5":"dd587b0ca6d59eeebefcbec2e86efdf9","sha1":"ae49fa8ebadd00f63ffdd13684be4604b8a503a7","sha256":"f575a5befb90f6b76f0bf0972308e28c3fd209460f53fa5f87bbe8e17bd02b86","sha512":"56def461d4c5c9e46607c9310eb345cf4517790e3b6e0a07cc0d945855310900c75d267371e91069412efeec6b36fca1530427e4d8c6bd3295390501965d34f9","ssdeep":"","tlshash":"d6d0a77e5729d408940187b856b861c271d2249141c845f8f4c1167935061972c1492c","first_seen":"2026-04-18T05:26:19.799553Z","last_seen":"2026-07-27T07:05:43.346802Z","times_seen":238,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGRUQyMTciIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNNSA2LjVWNWg4djIuNzVMNy40MiAxMS41SDEzVjEzSDV2LTEuMjZsOC01LjI0SDVaIi8+PC9zdmc+"}},"time_used":1,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":1,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/js/jquery-ui.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.023Z","timestamp":1785126256023,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /js/jquery-ui.js HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: W/\"65211e70-7f20a\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":520714,"size_decoded":113478,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (1002)","md5":"97754b3466ac135c3e8d6b197fa9988f","sha1":"8195a501259fae40f5be4bf8a80ddc889d4414c9","sha256":"fe80885ebb5b9776ef48d0ceee8857a0f707104e7ec9e948567d62d61df35629","sha512":"f829ae92b3a145217247af9c22d02236829cb0a9b32dd769753065faf325b1dec5ed4339d8c9039c18381a30703322d2dcbb61ccf3b94fea16b9e3d464460619","ssdeep":"12288:3DdHCcmMj/W/CCk/QRzbrVDDdRv6FtvemHFgymO:3DdHCcmMj/W/CCkIVDDdRiFD","tlshash":"b4b4a6c9f39c266a867a32595c2e42cdb23c8075d600587fbc5d59dc29a883c43bbf79","first_seen":"2023-03-09T10:05:20Z","last_seen":"2026-07-27T06:53:32.309821Z","times_seen":201,"resource_available":true,"data":"LyohIGpRdWVyeSBVSSAtIHYxLjEyLjEgLSAyMDE5LTA2LTAyCiogaHR0cDovL2pxdWVyeXVpLmNvbQoqIEluY2x1ZGVzOiB3aWRnZXQuanMsIHBvc2l0aW9uLmpzLCBkYXRhLmpzLCBkaXNhYmxlLXNlbGVjdGlvbi5qcywgZm9jdXNhYmxlLmpzLCBmb3JtLXJlc2V0LW1peGluLmpzLCBqcXVlcnktMS03LmpzLCBrZXljb2RlLmpzLCBsYWJlbHMuanMsIHNjcm9sbC1wYXJlbnQuanMsIHRhYmJhYmxlLmpzLCB1bmlxdWUtaWQuanMsIHdpZGdldHMvZHJhZ2dhYmxlLmpzLCB3aWRnZXRzL2Ryb3BwYWJsZS5qcywgd2lkZ2V0cy9yZXNpemFibGUuanMsIHdpZGdldHMvc2VsZWN0YWJsZS5qcywgd2lkZ2V0cy9zb3J0YWJsZS5qcywgd2lkZ2V0cy9hY2NvcmRpb24uanMsIHdpZGdldHMvYXV0b2NvbXBsZXRlLmpzLCB3aWRnZXRzL2J1dHRvbi5qcywgd2lkZ2V0cy9jaGVja2JveHJhZGlvLmpzLCB3aWRnZXRzL2NvbnRyb2xncm91cC5qcywgd2lkZ2V0cy9kYXRlcGlja2VyLmpzLCB3aWRnZXRzL2RpYWxvZy5qcywgd2lkZ2V0cy9tZW51LmpzLCB3aWRnZXRzL21vdXNlLmpzLCB3aWRnZXRzL3Byb2dyZXNzYmFyLmpzLCB3aWRnZXRzL3NlbGVjdG1lbnUuanMsIHdpZGdldHMvc2xpZGVyLmpzLCB3aWRnZXRzL3NwaW5uZXIuanMsIHdpZGdldHMvdGFicy5qcywgd2lkZ2V0cy90b29sdGlwLmpzLCBlZmZlY3QuanMsIGVmZmVjdHMvZWZmZWN0LWJsaW5kLmpzLCBlZmZlY3RzL2VmZmVjdC1ib3VuY2UuanMsIGVmZmVjdHMvZWZmZWN0LWNsaXAuanMsIGVmZmVjdHMvZWZmZWN0LWRyb3AuanMsIGVmZmVjdHMvZWZmZWN0LWV4cGxvZGUuanMsIGVmZmVjdHMvZWZmZWN0LWZhZGUuanMsIGVmZmVjdHMvZWZmZWN0LWZvbGQuanMsIGVmZmVjdHMvZWZmZWN0LWhpZ2hsaWdodC5qcywgZWZmZWN0cy9lZmZlY3QtcHVmZi5qcywgZWZmZWN0cy9lZmZlY3QtcHVsc2F0ZS5qcywgZWZmZWN0cy9lZmZlY3Qtc2NhbGUuanMsIGVmZmVjdHMvZWZmZWN0LXNoYWtlLmpzLCBlZmZlY3RzL2VmZmVjdC1zaXplLmpzLCBlZmZlY3RzL2VmZmVjdC1zbGlkZS5qcywgZWZmZWN0cy9lZmZlY3QtdHJhbnNmZXIuanMKKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yczsgTGljZW5zZWQgTUlUICovCgooZnVuY3Rpb24oIGZhY3RvcnkgKSB7CglpZiAoIHR5cGVvZiBkZWZpbmUgPT09ICJmdW5jdGlvbiIgJiYgZGVmaW5lLmFtZCApIHsKCgkJLy8gQU1ELiBSZWdpc3RlciBhcyBhbiBhbm9ueW1vdXMgbW9kdWxlLgoJCWRlZmluZShbICJqcXVlcnkiIF0sIGZhY3RvcnkgKTsKCX0gZWxzZSB7CgoJCS8vIEJyb3dzZXIgZ2xvYmFscwoJCWZhY3RvcnkoIGpRdWVyeSApOwoJfQp9KGZ1bmN0aW9uKCAkICkgewoKJC51aSA9ICQudWkgfHwge307Cgp2YXIgdmVyc2lvbiA9ICQudWkudmVyc2lvbiA9ICIxLjEyLjEiOwoKCi8qIQogKiBqUXVlcnkgVUkgV2lkZ2V0IDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogV2lkZ2V0Ci8vPj5ncm91cDogQ29yZQovLz4+ZGVzY3JpcHRpb246IFByb3ZpZGVzIGEgZmFjdG9yeSBmb3IgY3JlYXRpbmcgc3RhdGVmdWwgd2lkZ2V0cyB3aXRoIGEgY29tbW9uIEFQSS4KLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2pRdWVyeS53aWRnZXQvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS93aWRnZXQvCgoKCnZhciB3aWRnZXRVdWlkID0gMDsKdmFyIHdpZGdldFNsaWNlID0gQXJyYXkucHJvdG90eXBlLnNsaWNlOwoKJC5jbGVhbkRhdGEgPSAoIGZ1bmN0aW9uKCBvcmlnICkgewoJcmV0dXJuIGZ1bmN0aW9uKCBlbGVtcyApIHsKCQl2YXIgZXZlbnRzLCBlbGVtLCBpOwoJCWZvciAoIGkgPSAwOyAoIGVsZW0gPSBlbGVtc1sgaSBdICkgIT0gbnVsbDsgaSsrICkgewoJCQl0cnkgewoKCQkJCS8vIE9ubHkgdHJpZ2dlciByZW1vdmUgd2hlbiBuZWNlc3NhcnkgdG8gc2F2ZSB0aW1lCgkJCQlldmVudHMgPSAkLl9kYXRhKCBlbGVtLCAiZXZlbnRzIiApOwoJCQkJaWYgKCBldmVudHMgJiYgZXZlbnRzLnJlbW92ZSApIHsKCQkJCQkkKCBlbGVtICkudHJpZ2dlckhhbmRsZXIoICJyZW1vdmUiICk7CgkJCQl9CgoJCQkvLyBIdHRwOi8vYnVncy5qcXVlcnkuY29tL3RpY2tldC84MjM1CgkJCX0gY2F0Y2ggKCBlICkge30KCQl9CgkJb3JpZyggZWxlbXMgKTsKCX07Cn0gKSggJC5jbGVhbkRhdGEgKTsKCiQud2lkZ2V0ID0gZnVuY3Rpb24oIG5hbWUsIGJhc2UsIHByb3RvdHlwZSApIHsKCXZhciBleGlzdGluZ0NvbnN0cnVjdG9yLCBjb25zdHJ1Y3RvciwgYmFzZVByb3RvdHlwZTsKCgkvLyBQcm94aWVkUHJvdG90eXBlIGFsbG93cyB0aGUgcHJvdmlkZWQgcHJvdG90eXBlIHRvIHJlbWFpbiB1bm1vZGlmaWVkCgkvLyBzbyB0aGF0IGl0IGNhbiBiZSB1c2VkIGFzIGEgbWl4aW4gZm9yIG11bHRpcGxlIHdpZGdldHMgKCM4ODc2KQoJdmFyIHByb3hpZWRQcm90b3R5cGUgPSB7fTsKCgl2YXIgbmFtZXNwYWNlID0gbmFtZS5zcGxpdCggIi4iIClbIDAgXTsKCW5hbWUgPSBuYW1lLnNwbGl0KCAiLiIgKVsgMSBdOwoJdmFyIGZ1bGxOYW1lID0gbmFtZXNwYWNlICsgIi0iICsgbmFtZTsKCglpZiAoICFwcm90b3R5cGUgKSB7CgkJcHJvdG90eXBlID0gYmFzZTsKCQliYXNlID0gJC5XaWRnZXQ7Cgl9CgoJaWYgKCAkLmlzQXJyYXkoIHByb3RvdHlwZSApICkgewoJCXByb3RvdHlwZSA9ICQuZXh0ZW5kLmFwcGx5KCBudWxsLCBbIHt9IF0uY29uY2F0KCBwcm90b3R5cGUgKSApOwoJfQoKCS8vIENyZWF0ZSBzZWxlY3RvciBmb3IgcGx1Z2luCgkkLmV4cHJbICI6IiBdWyBmdWxsTmFtZS50b0xvd2VyQ2FzZSgpIF0gPSBmdW5jdGlvbiggZWxlbSApIHsKCQlyZXR1cm4gISEkLmRhdGEoIGVsZW0sIGZ1bGxOYW1lICk7Cgl9OwoKCSRbIG5hbWVzcGFjZSBdID0gJFsgbmFtZXNwYWNlIF0gfHwge307CglleGlzdGluZ0NvbnN0cnVjdG9yID0gJFsgbmFtZXNwYWNlIF1bIG5hbWUgXTsKCWNvbnN0cnVjdG9yID0gJFsgbmFtZXNwYWNlIF1bIG5hbWUgXSA9IGZ1bmN0aW9uKCBvcHRpb25zLCBlbGVtZW50ICkgewoKCQkvLyBBbGxvdyBpbnN0YW50aWF0aW9uIHdpdGhvdXQgIm5ldyIga2V5d29yZAoJCWlmICggIXRoaXMuX2NyZWF0ZVdpZGdldCApIHsKCQkJcmV0dXJuIG5ldyBjb25zdHJ1Y3Rvciggb3B0aW9ucywgZWxlbWVudCApOwoJCX0KCgkJLy8gQWxsb3cgaW5zdGFudGlhdGlvbiB3aXRob3V0IGluaXRpYWxpemluZyBmb3Igc2ltcGxlIGluaGVyaXRhbmNlCgkJLy8gbXVzdCB1c2UgIm5ldyIga2V5d29yZCAodGhlIGNvZGUgYWJvdmUgYWx3YXlzIHBhc3NlcyBhcmdzKQoJCWlmICggYXJndW1lbnRzLmxlbmd0aCApIHsKCQkJdGhpcy5fY3JlYXRlV2lkZ2V0KCBvcHRpb25zLCBlbGVtZW50ICk7CgkJfQoJfTsKCgkvLyBFeHRlbmQgd2l0aCB0aGUgZXhpc3RpbmcgY29uc3RydWN0b3IgdG8gY2Fycnkgb3ZlciBhbnkgc3RhdGljIHByb3BlcnRpZXMKCSQuZXh0ZW5kKCBjb25zdHJ1Y3RvciwgZXhpc3RpbmdDb25zdHJ1Y3RvciwgewoJCXZlcnNpb246IHByb3RvdHlwZS52ZXJzaW9uLAoKCQkvLyBDb3B5IHRoZSBvYmplY3QgdXNlZCB0byBjcmVhdGUgdGhlIHByb3RvdHlwZSBpbiBjYXNlIHdlIG5lZWQgdG8KCQkvLyByZWRlZmluZSB0aGUgd2lkZ2V0IGxhdGVyCgkJX3Byb3RvOiAkLmV4dGVuZCgge30sIHByb3RvdHlwZSApLAoKCQkvLyBUcmFjayB3aWRnZXRzIHRoYXQgaW5oZXJpdCBmcm9tIHRoaXMgd2lkZ2V0IGluIGNhc2UgdGhpcyB3aWRnZXQgaXMKCQkvLyByZWRlZmluZWQgYWZ0ZXIgYSB3aWRnZXQgaW5oZXJpdHMgZnJvbSBpdAoJCV9jaGlsZENvbnN0cnVjdG9yczogW10KCX0gKTsKCgliYXNlUHJvdG90eXBlID0gbmV3IGJhc2UoKTsKCgkvLyBXZSBuZWVkIHRvIG1ha2UgdGhlIG9wdGlvbnMgaGFzaCBhIHByb3BlcnR5IGRpcmVjdGx5IG9uIHRoZSBuZXcgaW5zdGFuY2UKCS8vIG90aGVyd2lzZSB3ZSdsbCBtb2RpZnkgdGhlIG9wdGlvbnMgaGFzaCBvbiB0aGUgcHJvdG90eXBlIHRoYXQgd2UncmUKCS8vIGluaGVyaXRpbmcgZnJvbQoJYmFzZVByb3RvdHlwZS5vcHRpb25zID0gJC53aWRnZXQuZXh0ZW5kKCB7fSwgYmFzZVByb3RvdHlwZS5vcHRpb25zICk7CgkkLmVhY2goIHByb3RvdHlwZSwgZnVuY3Rpb24oIHByb3AsIHZhbHVlICkgewoJCWlmICggISQuaXNGdW5jdGlvbiggdmFsdWUgKSApIHsKCQkJcHJveGllZFByb3RvdHlwZVsgcHJvcCBdID0gdmFsdWU7CgkJCXJldHVybjsKCQl9CgkJcHJveGllZFByb3RvdHlwZVsgcHJvcCBdID0gKCBmdW5jdGlvbigpIHsKCQkJZnVuY3Rpb24gX3N1cGVyKCkgewoJCQkJcmV0dXJuIGJhc2UucHJvdG90eXBlWyBwcm9wIF0uYXBwbHkoIHRoaXMsIGFyZ3VtZW50cyApOwoJCQl9CgoJCQlmdW5jdGlvbiBfc3VwZXJBcHBseSggYXJncyApIHsKCQkJCXJldHVybiBiYXNlLnByb3RvdHlwZVsgcHJvcCBdLmFwcGx5KCB0aGlzLCBhcmdzICk7CgkJCX0KCgkJCXJldHVybiBmdW5jdGlvbigpIHsKCQkJCXZhciBfX3N1cGVyID0gdGhpcy5fc3VwZXI7CgkJCQl2YXIgX19zdXBlckFwcGx5ID0gdGhpcy5fc3VwZXJBcHBseTsKCQkJCXZhciByZXR1cm5WYWx1ZTsKCgkJCQl0aGlzLl9zdXBlciA9IF9zdXBlcjsKCQkJCXRoaXMuX3N1cGVyQXBwbHkgPSBfc3VwZXJBcHBseTsKCgkJCQlyZXR1cm5WYWx1ZSA9IHZhbHVlLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKTsKCgkJCQl0aGlzLl9zdXBlciA9IF9fc3VwZXI7CgkJCQl0aGlzLl9zdXBlckFwcGx5ID0gX19zdXBlckFwcGx5OwoKCQkJCXJldHVybiByZXR1cm5WYWx1ZTsKCQkJfTsKCQl9ICkoKTsKCX0gKTsKCWNvbnN0cnVjdG9yLnByb3RvdHlwZSA9ICQud2lkZ2V0LmV4dGVuZCggYmFzZVByb3RvdHlwZSwgewoKCQkvLyBUT0RPOiByZW1vdmUgc3VwcG9ydCBmb3Igd2lkZ2V0RXZlbnRQcmVmaXgKCQkvLyBhbHdheXMgdXNlIHRoZSBuYW1lICsgYSBjb2xvbiBhcyB0aGUgcHJlZml4LCBlLmcuLCBkcmFnZ2FibGU6c3RhcnQKCQkvLyBkb24ndCBwcmVmaXggZm9yIHdpZGdldHMgdGhhdCBhcmVuJ3QgRE9NLWJhc2VkCgkJd2lkZ2V0RXZlbnRQcmVmaXg6IGV4aXN0aW5nQ29uc3RydWN0b3IgPyAoIGJhc2VQcm90b3R5cGUud2lkZ2V0RXZlbnRQcmVmaXggfHwgbmFtZSApIDogbmFtZQoJfSwgcHJveGllZFByb3RvdHlwZSwgewoJCWNvbnN0cnVjdG9yOiBjb25zdHJ1Y3RvciwKCQluYW1lc3BhY2U6IG5hbWVzcGFjZSwKCQl3aWRnZXROYW1lOiBuYW1lLAoJCXdpZGdldEZ1bGxOYW1lOiBmdWxsTmFtZQoJfSApOwoKCS8vIElmIHRoaXMgd2lkZ2V0IGlzIGJlaW5nIHJlZGVmaW5lZCB0aGVuIHdlIG5lZWQgdG8gZmluZCBhbGwgd2lkZ2V0cyB0aGF0CgkvLyBhcmUgaW5oZXJpdGluZyBmcm9tIGl0IGFuZCByZWRlZmluZSBhbGwgb2YgdGhlbSBzbyB0aGF0IHRoZXkgaW5oZXJpdCBmcm9tCgkvLyB0aGUgbmV3IHZlcnNpb24gb2YgdGhpcyB3aWRnZXQuIFdlJ3JlIGVzc2VudGlhbGx5IHRyeWluZyB0byByZXBsYWNlIG9uZQoJLy8gbGV2ZWwgaW4gdGhlIHByb3RvdHlwZSBjaGFpbi4KCWlmICggZXhpc3RpbmdDb25zdHJ1Y3RvciApIHsKCQkkLmVhY2goIGV4aXN0aW5nQ29uc3RydWN0b3IuX2NoaWxkQ29uc3RydWN0b3JzLCBmdW5jdGlvbiggaSwgY2hpbGQgKSB7CgkJCXZhciBjaGlsZFByb3RvdHlwZSA9IGNoaWxkLnByb3RvdHlwZTsKCgkJCS8vIFJlZGVmaW5lIHRoZSBjaGlsZCB3aWRnZXQgdXNpbmcgdGhlIHNhbWUgcHJvdG90eXBlIHRoYXQgd2FzCgkJCS8vIG9yaWdpbmFsbHkgdXNlZCwgYnV0IGluaGVyaXQgZnJvbSB0aGUgbmV3IHZlcnNpb24gb2YgdGhlIGJhc2UKCQkJJC53aWRnZXQoIGNoaWxkUHJvdG90eXBlLm5hbWVzcGFjZSArICIuIiArIGNoaWxkUHJvdG90eXBlLndpZGdldE5hbWUsIGNvbnN0cnVjdG9yLAoJCQkJY2hpbGQuX3Byb3RvICk7CgkJfSApOwoKCQkvLyBSZW1vdmUgdGhlIGxpc3Qgb2YgZXhpc3RpbmcgY2hpbGQgY29uc3RydWN0b3JzIGZyb20gdGhlIG9sZCBjb25zdHJ1Y3RvcgoJCS8vIHNvIHRoZSBvbGQgY2hpbGQgY29uc3RydWN0b3JzIGNhbiBiZSBnYXJiYWdlIGNvbGxlY3RlZAoJCWRlbGV0ZSBleGlzdGluZ0NvbnN0cnVjdG9yLl9jaGlsZENvbnN0cnVjdG9yczsKCX0gZWxzZSB7CgkJYmFzZS5fY2hpbGRDb25zdHJ1Y3RvcnMucHVzaCggY29uc3RydWN0b3IgKTsKCX0KCgkkLndpZGdldC5icmlkZ2UoIG5hbWUsIGNvbnN0cnVjdG9yICk7CgoJcmV0dXJuIGNvbnN0cnVjdG9yOwp9OwoKJC53aWRnZXQuZXh0ZW5kID0gZnVuY3Rpb24oIHRhcmdldCApIHsKCXZhciBpbnB1dCA9IHdpZGdldFNsaWNlLmNhbGwoIGFyZ3VtZW50cywgMSApOwoJdmFyIGlucHV0SW5kZXggPSAwOwoJdmFyIGlucHV0TGVuZ3RoID0gaW5wdXQubGVuZ3RoOwoJdmFyIGtleTsKCXZhciB2YWx1ZTsKCglmb3IgKCA7IGlucHV0SW5kZXggPCBpbnB1dExlbmd0aDsgaW5wdXRJbmRleCsrICkgewoJCWZvciAoIGtleSBpbiBpbnB1dFsgaW5wdXRJbmRleCBdICkgewoJCQl2YWx1ZSA9IGlucHV0WyBpbnB1dEluZGV4IF1bIGtleSBdOwoJCQlpZiAoIGlucHV0WyBpbnB1dEluZGV4IF0uaGFzT3duUHJvcGVydHkoIGtleSApICYmIHZhbHVlICE9PSB1bmRlZmluZWQgKSB7CgoJCQkJLy8gQ2xvbmUgb2JqZWN0cwoJCQkJaWYgKCAkLmlzUGxhaW5PYmplY3QoIHZhbHVlICkgKSB7CgkJCQkJdGFyZ2V0WyBrZXkgXSA9ICQuaXNQbGFpbk9iamVjdCggdGFyZ2V0WyBrZXkgXSApID8KCQkJCQkJJC53aWRnZXQuZXh0ZW5kKCB7fSwgdGFyZ2V0WyBrZXkgXSwgdmFsdWUgKSA6CgoJCQkJCQkvLyBEb24ndCBleHRlbmQgc3RyaW5ncywgYXJyYXlzLCBldGMuIHdpdGggb2JqZWN0cwoJCQkJCQkkLndpZGdldC5leHRlbmQoIHt9LCB2YWx1ZSApOwoKCQkJCS8vIENvcHkgZXZlcnl0aGluZyBlbHNlIGJ5IHJlZmVyZW5jZQoJCQkJfSBlbHNlIHsKCQkJCQl0YXJnZXRbIGtleSBdID0gdmFsdWU7CgkJCQl9CgkJCX0KCQl9Cgl9CglyZXR1cm4gdGFyZ2V0Owp9OwoKJC53aWRnZXQuYnJpZGdlID0gZnVuY3Rpb24oIG5hbWUsIG9iamVjdCApIHsKCXZhciBmdWxsTmFtZSA9IG9iamVjdC5wcm90b3R5cGUud2lkZ2V0RnVsbE5hbWUgfHwgbmFtZTsKCSQuZm5bIG5hbWUgXSA9IGZ1bmN0aW9uKCBvcHRpb25zICkgewoJCXZhciBpc01ldGhvZENhbGwgPSB0eXBlb2Ygb3B0aW9ucyA9PT0gInN0cmluZyI7CgkJdmFyIGFyZ3MgPSB3aWRnZXRTbGljZS5jYWxsKCBhcmd1bWVudHMsIDEgKTsKCQl2YXIgcmV0dXJuVmFsdWUgPSB0aGlzOwoKCQlpZiAoIGlzTWV0aG9kQ2FsbCApIHsKCgkJCS8vIElmIHRoaXMgaXMgYW4gZW1wdHkgY29sbGVjdGlvbiwgd2UgbmVlZCB0byBoYXZlIHRoZSBpbnN0YW5jZSBtZXRob2QKCQkJLy8gcmV0dXJuIHVuZGVmaW5lZCBpbnN0ZWFkIG9mIHRoZSBqUXVlcnkgaW5zdGFuY2UKCQkJaWYgKCAhdGhpcy5sZW5ndGggJiYgb3B0aW9ucyA9PT0gImluc3RhbmNlIiApIHsKCQkJCXJldHVyblZhbHVlID0gdW5kZWZpbmVkOwoJCQl9IGVsc2UgewoJCQkJdGhpcy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCQl2YXIgbWV0aG9kVmFsdWU7CgkJCQkJdmFyIGluc3RhbmNlID0gJC5kYXRhKCB0aGlzLCBmdWxsTmFtZSApOwoKCQkJCQlpZiAoIG9wdGlvbnMgPT09ICJpbnN0YW5jZSIgKSB7CgkJCQkJCXJldHVyblZhbHVlID0gaW5zdGFuY2U7CgkJCQkJCXJldHVybiBmYWxzZTsKCQkJCQl9CgoJCQkJCWlmICggIWluc3RhbmNlICkgewoJCQkJCQlyZXR1cm4gJC5lcnJvciggImNhbm5vdCBjYWxsIG1ldGhvZHMgb24gIiArIG5hbWUgKwoJCQkJCQkJIiBwcmlvciB0byBpbml0aWFsaXphdGlvbjsgIiArCgkJCQkJCQkiYXR0ZW1wdGVkIHRvIGNhbGwgbWV0aG9kICciICsgb3B0aW9ucyArICInIiApOwoJCQkJCX0KCgkJCQkJaWYgKCAhJC5pc0Z1bmN0aW9uKCBpbnN0YW5jZVsgb3B0aW9ucyBdICkgfHwgb3B0aW9ucy5jaGFyQXQoIDAgKSA9PT0gIl8iICkgewoJCQkJCQlyZXR1cm4gJC5lcnJvciggIm5vIHN1Y2ggbWV0aG9kICciICsgb3B0aW9ucyArICInIGZvciAiICsgbmFtZSArCgkJCQkJCQkiIHdpZGdldCBpbnN0YW5jZSIgKTsKCQkJCQl9CgoJCQkJCW1ldGhvZFZhbHVlID0gaW5zdGFuY2VbIG9wdGlvbnMgXS5hcHBseSggaW5zdGFuY2UsIGFyZ3MgKTsKCgkJCQkJaWYgKCBtZXRob2RWYWx1ZSAhPT0gaW5zdGFuY2UgJiYgbWV0aG9kVmFsdWUgIT09IHVuZGVmaW5lZCApIHsKCQkJCQkJcmV0dXJuVmFsdWUgPSBtZXRob2RWYWx1ZSAmJiBtZXRob2RWYWx1ZS5qcXVlcnkgPwoJCQkJCQkJcmV0dXJuVmFsdWUucHVzaFN0YWNrKCBtZXRob2RWYWx1ZS5nZXQoKSApIDoKCQkJCQkJCW1ldGhvZFZhbHVlOwoJCQkJCQlyZXR1cm4gZmFsc2U7CgkJCQkJfQoJCQkJfSApOwoJCQl9CgkJfSBlbHNlIHsKCgkJCS8vIEFsbG93IG11bHRpcGxlIGhhc2hlcyB0byBiZSBwYXNzZWQgb24gaW5pdAoJCQlpZiAoIGFyZ3MubGVuZ3RoICkgewoJCQkJb3B0aW9ucyA9ICQud2lkZ2V0LmV4dGVuZC5hcHBseSggbnVsbCwgWyBvcHRpb25zIF0uY29uY2F0KCBhcmdzICkgKTsKCQkJfQoKCQkJdGhpcy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCXZhciBpbnN0YW5jZSA9ICQuZGF0YSggdGhpcywgZnVsbE5hbWUgKTsKCQkJCWlmICggaW5zdGFuY2UgKSB7CgkJCQkJaW5zdGFuY2Uub3B0aW9uKCBvcHRpb25zIHx8IHt9ICk7CgkJCQkJaWYgKCBpbnN0YW5jZS5faW5pdCApIHsKCQkJCQkJaW5zdGFuY2UuX2luaXQoKTsKCQkJCQl9CgkJCQl9IGVsc2UgewoJCQkJCSQuZGF0YSggdGhpcywgZnVsbE5hbWUsIG5ldyBvYmplY3QoIG9wdGlvbnMsIHRoaXMgKSApOwoJCQkJfQoJCQl9ICk7CgkJfQoKCQlyZXR1cm4gcmV0dXJuVmFsdWU7Cgl9Owp9OwoKJC5XaWRnZXQgPSBmdW5jdGlvbiggLyogb3B0aW9ucywgZWxlbWVudCAqLyApIHt9OwokLldpZGdldC5fY2hpbGRDb25zdHJ1Y3RvcnMgPSBbXTsKCiQuV2lkZ2V0LnByb3RvdHlwZSA9IHsKCXdpZGdldE5hbWU6ICJ3aWRnZXQiLAoJd2lkZ2V0RXZlbnRQcmVmaXg6ICIiLAoJZGVmYXVsdEVsZW1lbnQ6ICI8ZGl2PiIsCgoJb3B0aW9uczogewoJCWNsYXNzZXM6IHt9LAoJCWRpc2FibGVkOiBmYWxzZSwKCgkJLy8gQ2FsbGJhY2tzCgkJY3JlYXRlOiBudWxsCgl9LAoKCV9jcmVhdGVXaWRnZXQ6IGZ1bmN0aW9uKCBvcHRpb25zLCBlbGVtZW50ICkgewoJCWVsZW1lbnQgPSAkKCBlbGVtZW50IHx8IHRoaXMuZGVmYXVsdEVsZW1lbnQgfHwgdGhpcyApWyAwIF07CgkJdGhpcy5lbGVtZW50ID0gJCggZWxlbWVudCApOwoJCXRoaXMudXVpZCA9IHdpZGdldFV1aWQrKzsKCQl0aGlzLmV2ZW50TmFtZXNwYWNlID0gIi4iICsgdGhpcy53aWRnZXROYW1lICsgdGhpcy51dWlkOwoKCQl0aGlzLmJpbmRpbmdzID0gJCgpOwoJCXRoaXMuaG92ZXJhYmxlID0gJCgpOwoJCXRoaXMuZm9jdXNhYmxlID0gJCgpOwoJCXRoaXMuY2xhc3Nlc0VsZW1lbnRMb29rdXAgPSB7fTsKCgkJaWYgKCBlbGVtZW50ICE9PSB0aGlzICkgewoJCQkkLmRhdGEoIGVsZW1lbnQsIHRoaXMud2lkZ2V0RnVsbE5hbWUsIHRoaXMgKTsKCQkJdGhpcy5fb24oIHRydWUsIHRoaXMuZWxlbWVudCwgewoJCQkJcmVtb3ZlOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJCQkJaWYgKCBldmVudC50YXJnZXQgPT09IGVsZW1lbnQgKSB7CgkJCQkJCXRoaXMuZGVzdHJveSgpOwoJCQkJCX0KCQkJCX0KCQkJfSApOwoJCQl0aGlzLmRvY3VtZW50ID0gJCggZWxlbWVudC5zdHlsZSA/CgoJCQkJLy8gRWxlbWVudCB3aXRoaW4gdGhlIGRvY3VtZW50CgkJCQllbGVtZW50Lm93bmVyRG9jdW1lbnQgOgoKCQkJCS8vIEVsZW1lbnQgaXMgd2luZG93IG9yIGRvY3VtZW50CgkJCQllbGVtZW50LmRvY3VtZW50IHx8IGVsZW1lbnQgKTsKCQkJdGhpcy53aW5kb3cgPSAkKCB0aGlzLmRvY3VtZW50WyAwIF0uZGVmYXVsdFZpZXcgfHwgdGhpcy5kb2N1bWVudFsgMCBdLnBhcmVudFdpbmRvdyApOwoJCX0KCgkJdGhpcy5vcHRpb25zID0gJC53aWRnZXQuZXh0ZW5kKCB7fSwKCQkJdGhpcy5vcHRpb25zLAoJCQl0aGlzLl9nZXRDcmVhdGVPcHRpb25zKCksCgkJCW9wdGlvbnMgKTsKCgkJdGhpcy5fY3JlYXRlKCk7CgoJCWlmICggdGhpcy5vcHRpb25zLmRpc2FibGVkICkgewoJCQl0aGlzLl9zZXRPcHRpb25EaXNhYmxlZCggdGhpcy5vcHRpb25zLmRpc2FibGVkICk7CgkJfQoKCQl0aGlzLl90cmlnZ2VyKCAiY3JlYXRlIiwgbnVsbCwgdGhpcy5fZ2V0Q3JlYXRlRXZlbnREYXRhKCkgKTsKCQl0aGlzLl9pbml0KCk7Cgl9LAoKCV9nZXRDcmVhdGVPcHRpb25zOiBmdW5jdGlvbigpIHsKCQlyZXR1cm4ge307Cgl9LAoKCV9nZXRDcmVhdGVFdmVudERhdGE6ICQubm9vcCwKCglfY3JlYXRlOiAkLm5vb3AsCgoJX2luaXQ6ICQubm9vcCwKCglkZXN0cm95OiBmdW5jdGlvbigpIHsKCQl2YXIgdGhhdCA9IHRoaXM7CgoJCXRoaXMuX2Rlc3Ryb3koKTsKCQkkLmVhY2goIHRoaXMuY2xhc3Nlc0VsZW1lbnRMb29rdXAsIGZ1bmN0aW9uKCBrZXksIHZhbHVlICkgewoJCQl0aGF0Ll9yZW1vdmVDbGFzcyggdmFsdWUsIGtleSApOwoJCX0gKTsKCgkJLy8gV2UgY2FuIHByb2JhYmx5IHJlbW92ZSB0aGUgdW5iaW5kIGNhbGxzIGluIDIuMAoJCS8vIGFsbCBldmVudCBiaW5kaW5ncyBzaG91bGQgZ28gdGhyb3VnaCB0aGlzLl9vbigpCgkJdGhpcy5lbGVtZW50CgkJCS5vZmYoIHRoaXMuZXZlbnROYW1lc3BhY2UgKQoJCQkucmVtb3ZlRGF0YSggdGhpcy53aWRnZXRGdWxsTmFtZSApOwoJCXRoaXMud2lkZ2V0KCkKCQkJLm9mZiggdGhpcy5ldmVudE5hbWVzcGFjZSApCgkJCS5yZW1vdmVBdHRyKCAiYXJpYS1kaXNhYmxlZCIgKTsKCgkJLy8gQ2xlYW4gdXAgZXZlbnRzIGFuZCBzdGF0ZXMKCQl0aGlzLmJpbmRpbmdzLm9mZiggdGhpcy5ldmVudE5hbWVzcGFjZSApOwoJfSwKCglfZGVzdHJveTogJC5ub29wLAoKCXdpZGdldDogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMuZWxlbWVudDsKCX0sCgoJb3B0aW9uOiBmdW5jdGlvbigga2V5LCB2YWx1ZSApIHsKCQl2YXIgb3B0aW9ucyA9IGtleTsKCQl2YXIgcGFydHM7CgkJdmFyIGN1ck9wdGlvbjsKCQl2YXIgaTsKCgkJaWYgKCBhcmd1bWVudHMubGVuZ3RoID09PSAwICkgewoKCQkJLy8gRG9uJ3QgcmV0dXJuIGEgcmVmZXJlbmNlIHRvIHRoZSBpbnRlcm5hbCBoYXNoCgkJCXJldHVybiAkLndpZGdldC5leHRlbmQoIHt9LCB0aGlzLm9wdGlvbnMgKTsKCQl9CgoJCWlmICggdHlwZW9mIGtleSA9PT0gInN0cmluZyIgKSB7CgoJCQkvLyBIYW5kbGUgbmVzdGVkIGtleXMsIGUuZy4sICJmb28uYmFyIiA9PiB7IGZvbzogeyBiYXI6IF9fXyB9IH0KCQkJb3B0aW9ucyA9IHt9OwoJCQlwYXJ0cyA9IGtleS5zcGxpdCggIi4iICk7CgkJCWtleSA9IHBhcnRzLnNoaWZ0KCk7CgkJCWlmICggcGFydHMubGVuZ3RoICkgewoJCQkJY3VyT3B0aW9uID0gb3B0aW9uc1sga2V5IF0gPSAkLndpZGdldC5leHRlbmQoIHt9LCB0aGlzLm9wdGlvbnNbIGtleSBdICk7CgkJCQlmb3IgKCBpID0gMDsgaSA8IHBhcnRzLmxlbmd0aCAtIDE7IGkrKyApIHsKCQkJCQljdXJPcHRpb25bIHBhcnRzWyBpIF0gXSA9IGN1ck9wdGlvblsgcGFydHNbIGkgXSBdIHx8IHt9OwoJCQkJCWN1ck9wdGlvbiA9IGN1ck9wdGlvblsgcGFydHNbIGkgXSBdOwoJCQkJfQoJCQkJa2V5ID0gcGFydHMucG9wKCk7CgkJCQlpZiAoIGFyZ3VtZW50cy5sZW5ndGggPT09IDEgKSB7CgkJCQkJcmV0dXJuIGN1ck9wdGlvblsga2V5IF0gPT09IHVuZGVmaW5lZCA/IG51bGwgOiBjdXJPcHRpb25bIGtleSBdOwoJCQkJfQoJCQkJY3VyT3B0aW9uWyBrZXkgXSA9IHZhbHVlOwoJCQl9IGVsc2UgewoJCQkJaWYgKCBhcmd1bWVudHMubGVuZ3RoID09PSAxICkgewoJCQkJCXJldHVybiB0aGlzLm9wdGlvbnNbIGtleSBdID09PSB1bmRlZmluZWQgPyBudWxsIDogdGhpcy5vcHRpb25zWyBrZXkgXTsKCQkJCX0KCQkJCW9wdGlvbnNbIGtleSBdID0gdmFsdWU7CgkJCX0KCQl9CgoJCXRoaXMuX3NldE9wdGlvbnMoIG9wdGlvbnMgKTsKCgkJcmV0dXJuIHRoaXM7Cgl9LAoKCV9zZXRPcHRpb25zOiBmdW5jdGlvbiggb3B0aW9ucyApIHsKCQl2YXIga2V5OwoKCQlmb3IgKCBrZXkgaW4gb3B0aW9ucyApIHsKCQkJdGhpcy5fc2V0T3B0aW9uKCBrZXksIG9wdGlvbnNbIGtleSBdICk7CgkJfQoKCQlyZXR1cm4gdGhpczsKCX0sCgoJX3NldE9wdGlvbjogZnVuY3Rpb24oIGtleSwgdmFsdWUgKSB7CgkJaWYgKCBrZXkgPT09ICJjbGFzc2VzIiApIHsKCQkJdGhpcy5fc2V0T3B0aW9uQ2xhc3NlcyggdmFsdWUgKTsKCQl9CgoJCXRoaXMub3B0aW9uc1sga2V5IF0gPSB2YWx1ZTsKCgkJaWYgKCBrZXkgPT09ICJkaXNhYmxlZCIgKSB7CgkJCXRoaXMuX3NldE9wdGlvbkRpc2FibGVkKCB2YWx1ZSApOwoJCX0KCgkJcmV0dXJuIHRoaXM7Cgl9LAoKCV9zZXRPcHRpb25DbGFzc2VzOiBmdW5jdGlvbiggdmFsdWUgKSB7CgkJdmFyIGNsYXNzS2V5LCBlbGVtZW50cywgY3VycmVudEVsZW1lbnRzOwoKCQlmb3IgKCBjbGFzc0tleSBpbiB2YWx1ZSApIHsKCQkJY3VycmVudEVsZW1lbnRzID0gdGhpcy5jbGFzc2VzRWxlbWVudExvb2t1cFsgY2xhc3NLZXkgXTsKCQkJaWYgKCB2YWx1ZVsgY2xhc3NLZXkgXSA9PT0gdGhpcy5vcHRpb25zLmNsYXNzZXNbIGNsYXNzS2V5IF0gfHwKCQkJCQkhY3VycmVudEVsZW1lbnRzIHx8CgkJCQkJIWN1cnJlbnRFbGVtZW50cy5sZW5ndGggKSB7CgkJCQljb250aW51ZTsKCQkJfQoKCQkJLy8gV2UgYXJlIGRvaW5nIHRoaXMgdG8gY3JlYXRlIGEgbmV3IGpRdWVyeSBvYmplY3QgYmVjYXVzZSB0aGUgX3JlbW92ZUNsYXNzKCkgY2FsbAoJCQkvLyBvbiB0aGUgbmV4dCBsaW5lIGlzIGdvaW5nIHRvIGRlc3Ryb3kgdGhlIHJlZmVyZW5jZSB0byB0aGUgY3VycmVudCBlbGVtZW50cyBiZWluZwoJCQkvLyB0cmFja2VkLiBXZSBuZWVkIHRvIHNhdmUgYSBjb3B5IG9mIHRoaXMgY29sbGVjdGlvbiBzbyB0aGF0IHdlIGNhbiBhZGQgdGhlIG5ldyBjbGFzc2VzCgkJCS8vIGJlbG93LgoJCQllbGVtZW50cyA9ICQoIGN1cnJlbnRFbGVtZW50cy5nZXQoKSApOwoJCQl0aGlzLl9yZW1vdmVDbGFzcyggY3VycmVudEVsZW1lbnRzLCBjbGFzc0tleSApOwoKCQkJLy8gV2UgZG9uJ3QgdXNlIF9hZGRDbGFzcygpIGhlcmUsIGJlY2F1c2UgdGhhdCB1c2VzIHRoaXMub3B0aW9ucy5jbGFzc2VzCgkJCS8vIGZvciBnZW5lcmF0aW5nIHRoZSBzdHJpbmcgb2YgY2xhc3Nlcy4gV2Ugd2FudCB0byB1c2UgdGhlIHZhbHVlIHBhc3NlZCBpbiBmcm9tCgkJCS8vIF9zZXRPcHRpb24oKSwgdGhpcyBpcyB0aGUgbmV3IHZhbHVlIG9mIHRoZSBjbGFzc2VzIG9wdGlvbiB3aGljaCB3YXMgcGFzc2VkIHRvCgkJCS8vIF9zZXRPcHRpb24oKS4gV2UgcGFzcyB0aGlzIHZhbHVlIGRpcmVjdGx5IHRvIF9jbGFzc2VzKCkuCgkJCWVsZW1lbnRzLmFkZENsYXNzKCB0aGlzLl9jbGFzc2VzKCB7CgkJCQllbGVtZW50OiBlbGVtZW50cywKCQkJCWtleXM6IGNsYXNzS2V5LAoJCQkJY2xhc3NlczogdmFsdWUsCgkJCQlhZGQ6IHRydWUKCQkJfSApICk7CgkJfQoJfSwKCglfc2V0T3B0aW9uRGlzYWJsZWQ6IGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQl0aGlzLl90b2dnbGVDbGFzcyggdGhpcy53aWRnZXQoKSwgdGhpcy53aWRnZXRGdWxsTmFtZSArICItZGlzYWJsZWQiLCBudWxsLCAhIXZhbHVlICk7CgoJCS8vIElmIHRoZSB3aWRnZXQgaXMgYmVjb21pbmcgZGlzYWJsZWQsIHRoZW4gbm90aGluZyBpcyBpbnRlcmFjdGl2ZQoJCWlmICggdmFsdWUgKSB7CgkJCXRoaXMuX3JlbW92ZUNsYXNzKCB0aGlzLmhvdmVyYWJsZSwgbnVsbCwgInVpLXN0YXRlLWhvdmVyIiApOwoJCQl0aGlzLl9yZW1vdmVDbGFzcyggdGhpcy5mb2N1c2FibGUsIG51bGwsICJ1aS1zdGF0ZS1mb2N1cyIgKTsKCQl9Cgl9LAoKCWVuYWJsZTogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMuX3NldE9wdGlvbnMoIHsgZGlzYWJsZWQ6IGZhbHNlIH0gKTsKCX0sCgoJZGlzYWJsZTogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMuX3NldE9wdGlvbnMoIHsgZGlzYWJsZWQ6IHRydWUgfSApOwoJfSwKCglfY2xhc3NlczogZnVuY3Rpb24oIG9wdGlvbnMgKSB7CgkJdmFyIGZ1bGwgPSBbXTsKCQl2YXIgdGhhdCA9IHRoaXM7CgoJCW9wdGlvbnMgPSAkLmV4dGVuZCggewoJCQllbGVtZW50OiB0aGlzLmVsZW1lbnQsCgkJCWNsYXNzZXM6IHRoaXMub3B0aW9ucy5jbGFzc2VzIHx8IHt9CgkJfSwgb3B0aW9ucyApOwoKCQlmdW5jdGlvbiBwcm9jZXNzQ2xhc3NTdHJpbmcoIGNsYXNzZXMsIGNoZWNrT3B0aW9uICkgewoJCQl2YXIgY3VycmVudCwgaTsKCQkJZm9yICggaSA9IDA7IGkgPCBjbGFzc2VzLmxlbmd0aDsgaSsrICkgewoJCQkJY3VycmVudCA9IHRoYXQuY2xhc3Nlc0VsZW1lbnRMb29rdXBbIGNsYXNzZXNbIGkgXSBdIHx8ICQoKTsKCQkJCWlmICggb3B0aW9ucy5hZGQgKSB7CgkJCQkJY3VycmVudCA9ICQoICQudW5pcXVlKCBjdXJyZW50LmdldCgpLmNvbmNhdCggb3B0aW9ucy5lbGVtZW50LmdldCgpICkgKSApOwoJCQkJfSBlbHNlIHsKCQkJCQljdXJyZW50ID0gJCggY3VycmVudC5ub3QoIG9wdGlvbnMuZWxlbWVudCApLmdldCgpICk7CgkJCQl9CgkJCQl0aGF0LmNsYXNzZXNFbGVtZW50TG9va3VwWyBjbGFzc2VzWyBpIF0gXSA9IGN1cnJlbnQ7CgkJCQlmdWxsLnB1c2goIGNsYXNzZXNbIGkgXSApOwoJCQkJaWYgKCBjaGVja09wdGlvbiAmJiBvcHRpb25zLmNsYXNzZXNbIGNsYXNzZXNbIGkgXSBdICkgewoJCQkJCWZ1bGwucHVzaCggb3B0aW9ucy5jbGFzc2VzWyBjbGFzc2VzWyBpIF0gXSApOwoJCQkJfQoJCQl9CgkJfQoKCQl0aGlzLl9vbiggb3B0aW9ucy5lbGVtZW50LCB7CgkJCSJyZW1vdmUiOiAiX3VudHJhY2tDbGFzc2VzRWxlbWVudCIKCQl9ICk7CgoJCWlmICggb3B0aW9ucy5rZXlzICkgewoJCQlwcm9jZXNzQ2xhc3NTdHJpbmcoIG9wdGlvbnMua2V5cy5tYXRjaCggL1xTKy9nICkgfHwgW10sIHRydWUgKTsKCQl9CgkJaWYgKCBvcHRpb25zLmV4dHJhICkgewoJCQlwcm9jZXNzQ2xhc3NTdHJpbmcoIG9wdGlvbnMuZXh0cmEubWF0Y2goIC9cUysvZyApIHx8IFtdICk7CgkJfQoKCQlyZXR1cm4gZnVsbC5qb2luKCAiICIgKTsKCX0sCgoJX3VudHJhY2tDbGFzc2VzRWxlbWVudDogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXZhciB0aGF0ID0gdGhpczsKCQkkLmVhY2goIHRoYXQuY2xhc3Nlc0VsZW1lbnRMb29rdXAsIGZ1bmN0aW9uKCBrZXksIHZhbHVlICkgewoJCQlpZiAoICQuaW5BcnJheSggZXZlbnQudGFyZ2V0LCB2YWx1ZSApICE9PSAtMSApIHsKCQkJCXRoYXQuY2xhc3Nlc0VsZW1lbnRMb29rdXBbIGtleSBdID0gJCggdmFsdWUubm90KCBldmVudC50YXJnZXQgKS5nZXQoKSApOwoJCQl9CgkJfSApOwoJfSwKCglfcmVtb3ZlQ2xhc3M6IGZ1bmN0aW9uKCBlbGVtZW50LCBrZXlzLCBleHRyYSApIHsKCQlyZXR1cm4gdGhpcy5fdG9nZ2xlQ2xhc3MoIGVsZW1lbnQsIGtleXMsIGV4dHJhLCBmYWxzZSApOwoJfSwKCglfYWRkQ2xhc3M6IGZ1bmN0aW9uKCBlbGVtZW50LCBrZXlzLCBleHRyYSApIHsKCQlyZXR1cm4gdGhpcy5fdG9nZ2xlQ2xhc3MoIGVsZW1lbnQsIGtleXMsIGV4dHJhLCB0cnVlICk7Cgl9LAoKCV90b2dnbGVDbGFzczogZnVuY3Rpb24oIGVsZW1lbnQsIGtleXMsIGV4dHJhLCBhZGQgKSB7CgkJYWRkID0gKCB0eXBlb2YgYWRkID09PSAiYm9vbGVhbiIgKSA/IGFkZCA6IGV4dHJhOwoJCXZhciBzaGlmdCA9ICggdHlwZW9mIGVsZW1lbnQgPT09ICJzdHJpbmciIHx8IGVsZW1lbnQgPT09IG51bGwgKSwKCQkJb3B0aW9ucyA9IHsKCQkJCWV4dHJhOiBzaGlmdCA/IGtleXMgOiBleHRyYSwKCQkJCWtleXM6IHNoaWZ0ID8gZWxlbWVudCA6IGtleXMsCgkJCQllbGVtZW50OiBzaGlmdCA/IHRoaXMuZWxlbWVudCA6IGVsZW1lbnQsCgkJCQlhZGQ6IGFkZAoJCQl9OwoJCW9wdGlvbnMuZWxlbWVudC50b2dnbGVDbGFzcyggdGhpcy5fY2xhc3Nlcyggb3B0aW9ucyApLCBhZGQgKTsKCQlyZXR1cm4gdGhpczsKCX0sCgoJX29uOiBmdW5jdGlvbiggc3VwcHJlc3NEaXNhYmxlZENoZWNrLCBlbGVtZW50LCBoYW5kbGVycyApIHsKCQl2YXIgZGVsZWdhdGVFbGVtZW50OwoJCXZhciBpbnN0YW5jZSA9IHRoaXM7CgoJCS8vIE5vIHN1cHByZXNzRGlzYWJsZWRDaGVjayBmbGFnLCBzaHVmZmxlIGFyZ3VtZW50cwoJCWlmICggdHlwZW9mIHN1cHByZXNzRGlzYWJsZWRDaGVjayAhPT0gImJvb2xlYW4iICkgewoJCQloYW5kbGVycyA9IGVsZW1lbnQ7CgkJCWVsZW1lbnQgPSBzdXBwcmVzc0Rpc2FibGVkQ2hlY2s7CgkJCXN1cHByZXNzRGlzYWJsZWRDaGVjayA9IGZhbHNlOwoJCX0KCgkJLy8gTm8gZWxlbWVudCBhcmd1bWVudCwgc2h1ZmZsZSBhbmQgdXNlIHRoaXMuZWxlbWVudAoJCWlmICggIWhhbmRsZXJzICkgewoJCQloYW5kbGVycyA9IGVsZW1lbnQ7CgkJCWVsZW1lbnQgPSB0aGlzLmVsZW1lbnQ7CgkJCWRlbGVnYXRlRWxlbWVudCA9IHRoaXMud2lkZ2V0KCk7CgkJfSBlbHNlIHsKCQkJZWxlbWVudCA9IGRlbGVnYXRlRWxlbWVudCA9ICQoIGVsZW1lbnQgKTsKCQkJdGhpcy5iaW5kaW5ncyA9IHRoaXMuYmluZGluZ3MuYWRkKCBlbGVtZW50ICk7CgkJfQoKCQkkLmVhY2goIGhhbmRsZXJzLCBmdW5jdGlvbiggZXZlbnQsIGhhbmRsZXIgKSB7CgkJCWZ1bmN0aW9uIGhhbmRsZXJQcm94eSgpIHsKCgkJCQkvLyBBbGxvdyB3aWRnZXRzIHRvIGN1c3RvbWl6ZSB0aGUgZGlzYWJsZWQgaGFuZGxpbmcKCQkJCS8vIC0gZGlzYWJsZWQgYXMgYW4gYXJyYXkgaW5zdGVhZCBvZiBib29sZWFuCgkJCQkvLyAtIGRpc2FibGVkIGNsYXNzIGFzIG1ldGhvZCBmb3IgZGlzYWJsaW5nIGluZGl2aWR1YWwgcGFydHMKCQkJCWlmICggIXN1cHByZXNzRGlzYWJsZWRDaGVjayAmJgoJCQkJCQkoIGluc3RhbmNlLm9wdGlvbnMuZGlzYWJsZWQgPT09IHRydWUgfHwKCQkJCQkJJCggdGhpcyApLmhhc0NsYXNzKCAidWktc3RhdGUtZGlzYWJsZWQiICkgKSApIHsKCQkJCQlyZXR1cm47CgkJCQl9CgkJCQlyZXR1cm4gKCB0eXBlb2YgaGFuZGxlciA9PT0gInN0cmluZyIgPyBpbnN0YW5jZVsgaGFuZGxlciBdIDogaGFuZGxlciApCgkJCQkJLmFwcGx5KCBpbnN0YW5jZSwgYXJndW1lbnRzICk7CgkJCX0KCgkJCS8vIENvcHkgdGhlIGd1aWQgc28gZGlyZWN0IHVuYmluZGluZyB3b3JrcwoJCQlpZiAoIHR5cGVvZiBoYW5kbGVyICE9PSAic3RyaW5nIiApIHsKCQkJCWhhbmRsZXJQcm94eS5ndWlkID0gaGFuZGxlci5ndWlkID0KCQkJCQloYW5kbGVyLmd1aWQgfHwgaGFuZGxlclByb3h5Lmd1aWQgfHwgJC5ndWlkKys7CgkJCX0KCgkJCXZhciBtYXRjaCA9IGV2ZW50Lm1hdGNoKCAvXihbXHc6LV0qKVxzKiguKikkLyApOwoJCQl2YXIgZXZlbnROYW1lID0gbWF0Y2hbIDEgXSArIGluc3RhbmNlLmV2ZW50TmFtZXNwYWNlOwoJCQl2YXIgc2VsZWN0b3IgPSBtYXRjaFsgMiBdOwoKCQkJaWYgKCBzZWxlY3RvciApIHsKCQkJCWRlbGVnYXRlRWxlbWVudC5vbiggZXZlbnROYW1lLCBzZWxlY3RvciwgaGFuZGxlclByb3h5ICk7CgkJCX0gZWxzZSB7CgkJCQllbGVtZW50Lm9uKCBldmVudE5hbWUsIGhhbmRsZXJQcm94eSApOwoJCQl9CgkJfSApOwoJfSwKCglfb2ZmOiBmdW5jdGlvbiggZWxlbWVudCwgZXZlbnROYW1lICkgewoJCWV2ZW50TmFtZSA9ICggZXZlbnROYW1lIHx8ICIiICkuc3BsaXQoICIgIiApLmpvaW4oIHRoaXMuZXZlbnROYW1lc3BhY2UgKyAiICIgKSArCgkJCXRoaXMuZXZlbnROYW1lc3BhY2U7CgkJZWxlbWVudC5vZmYoIGV2ZW50TmFtZSApLm9mZiggZXZlbnROYW1lICk7CgoJCS8vIENsZWFyIHRoZSBzdGFjayB0byBhdm9pZCBtZW1vcnkgbGVha3MgKCMxMDA1NikKCQl0aGlzLmJpbmRpbmdzID0gJCggdGhpcy5iaW5kaW5ncy5ub3QoIGVsZW1lbnQgKS5nZXQoKSApOwoJCXRoaXMuZm9jdXNhYmxlID0gJCggdGhpcy5mb2N1c2FibGUubm90KCBlbGVtZW50ICkuZ2V0KCkgKTsKCQl0aGlzLmhvdmVyYWJsZSA9ICQoIHRoaXMuaG92ZXJhYmxlLm5vdCggZWxlbWVudCApLmdldCgpICk7Cgl9LAoKCV9kZWxheTogZnVuY3Rpb24oIGhhbmRsZXIsIGRlbGF5ICkgewoJCWZ1bmN0aW9uIGhhbmRsZXJQcm94eSgpIHsKCQkJcmV0dXJuICggdHlwZW9mIGhhbmRsZXIgPT09ICJzdHJpbmciID8gaW5zdGFuY2VbIGhhbmRsZXIgXSA6IGhhbmRsZXIgKQoJCQkJLmFwcGx5KCBpbnN0YW5jZSwgYXJndW1lbnRzICk7CgkJfQoJCXZhciBpbnN0YW5jZSA9IHRoaXM7CgkJcmV0dXJuIHNldFRpbWVvdXQoIGhhbmRsZXJQcm94eSwgZGVsYXkgfHwgMCApOwoJfSwKCglfaG92ZXJhYmxlOiBmdW5jdGlvbiggZWxlbWVudCApIHsKCQl0aGlzLmhvdmVyYWJsZSA9IHRoaXMuaG92ZXJhYmxlLmFkZCggZWxlbWVudCApOwoJCXRoaXMuX29uKCBlbGVtZW50LCB7CgkJCW1vdXNlZW50ZXI6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCXRoaXMuX2FkZENsYXNzKCAkKCBldmVudC5jdXJyZW50VGFyZ2V0ICksIG51bGwsICJ1aS1zdGF0ZS1ob3ZlciIgKTsKCQkJfSwKCQkJbW91c2VsZWF2ZTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCQkJdGhpcy5fcmVtb3ZlQ2xhc3MoICQoIGV2ZW50LmN1cnJlbnRUYXJnZXQgKSwgbnVsbCwgInVpLXN0YXRlLWhvdmVyIiApOwoJCQl9CgkJfSApOwoJfSwKCglfZm9jdXNhYmxlOiBmdW5jdGlvbiggZWxlbWVudCApIHsKCQl0aGlzLmZvY3VzYWJsZSA9IHRoaXMuZm9jdXNhYmxlLmFkZCggZWxlbWVudCApOwoJCXRoaXMuX29uKCBlbGVtZW50LCB7CgkJCWZvY3VzaW46IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCXRoaXMuX2FkZENsYXNzKCAkKCBldmVudC5jdXJyZW50VGFyZ2V0ICksIG51bGwsICJ1aS1zdGF0ZS1mb2N1cyIgKTsKCQkJfSwKCQkJZm9jdXNvdXQ6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCXRoaXMuX3JlbW92ZUNsYXNzKCAkKCBldmVudC5jdXJyZW50VGFyZ2V0ICksIG51bGwsICJ1aS1zdGF0ZS1mb2N1cyIgKTsKCQkJfQoJCX0gKTsKCX0sCgoJX3RyaWdnZXI6IGZ1bmN0aW9uKCB0eXBlLCBldmVudCwgZGF0YSApIHsKCQl2YXIgcHJvcCwgb3JpZzsKCQl2YXIgY2FsbGJhY2sgPSB0aGlzLm9wdGlvbnNbIHR5cGUgXTsKCgkJZGF0YSA9IGRhdGEgfHwge307CgkJZXZlbnQgPSAkLkV2ZW50KCBldmVudCApOwoJCWV2ZW50LnR5cGUgPSAoIHR5cGUgPT09IHRoaXMud2lkZ2V0RXZlbnRQcmVmaXggPwoJCQl0eXBlIDoKCQkJdGhpcy53aWRnZXRFdmVudFByZWZpeCArIHR5cGUgKS50b0xvd2VyQ2FzZSgpOwoKCQkvLyBUaGUgb3JpZ2luYWwgZXZlbnQgbWF5IGNvbWUgZnJvbSBhbnkgZWxlbWVudAoJCS8vIHNvIHdlIG5lZWQgdG8gcmVzZXQgdGhlIHRhcmdldCBvbiB0aGUgbmV3IGV2ZW50CgkJZXZlbnQudGFyZ2V0ID0gdGhpcy5lbGVtZW50WyAwIF07CgoJCS8vIENvcHkgb3JpZ2luYWwgZXZlbnQgcHJvcGVydGllcyBvdmVyIHRvIHRoZSBuZXcgZXZlbnQKCQlvcmlnID0gZXZlbnQub3JpZ2luYWxFdmVudDsKCQlpZiAoIG9yaWcgKSB7CgkJCWZvciAoIHByb3AgaW4gb3JpZyApIHsKCQkJCWlmICggISggcHJvcCBpbiBldmVudCApICkgewoJCQkJCWV2ZW50WyBwcm9wIF0gPSBvcmlnWyBwcm9wIF07CgkJCQl9CgkJCX0KCQl9CgoJCXRoaXMuZWxlbWVudC50cmlnZ2VyKCBldmVudCwgZGF0YSApOwoJCXJldHVybiAhKCAkLmlzRnVuY3Rpb24oIGNhbGxiYWNrICkgJiYKCQkJY2FsbGJhY2suYXBwbHkoIHRoaXMuZWxlbWVudFsgMCBdLCBbIGV2ZW50IF0uY29uY2F0KCBkYXRhICkgKSA9PT0gZmFsc2UgfHwKCQkJZXZlbnQuaXNEZWZhdWx0UHJldmVudGVkKCkgKTsKCX0KfTsKCiQuZWFjaCggeyBzaG93OiAiZmFkZUluIiwgaGlkZTogImZhZGVPdXQiIH0sIGZ1bmN0aW9uKCBtZXRob2QsIGRlZmF1bHRFZmZlY3QgKSB7CgkkLldpZGdldC5wcm90b3R5cGVbICJfIiArIG1ldGhvZCBdID0gZnVuY3Rpb24oIGVsZW1lbnQsIG9wdGlvbnMsIGNhbGxiYWNrICkgewoJCWlmICggdHlwZW9mIG9wdGlvbnMgPT09ICJzdHJpbmciICkgewoJCQlvcHRpb25zID0geyBlZmZlY3Q6IG9wdGlvbnMgfTsKCQl9CgoJCXZhciBoYXNPcHRpb25zOwoJCXZhciBlZmZlY3ROYW1lID0gIW9wdGlvbnMgPwoJCQltZXRob2QgOgoJCQlvcHRpb25zID09PSB0cnVlIHx8IHR5cGVvZiBvcHRpb25zID09PSAibnVtYmVyIiA/CgkJCQlkZWZhdWx0RWZmZWN0IDoKCQkJCW9wdGlvbnMuZWZmZWN0IHx8IGRlZmF1bHRFZmZlY3Q7CgoJCW9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwoJCWlmICggdHlwZW9mIG9wdGlvbnMgPT09ICJudW1iZXIiICkgewoJCQlvcHRpb25zID0geyBkdXJhdGlvbjogb3B0aW9ucyB9OwoJCX0KCgkJaGFzT3B0aW9ucyA9ICEkLmlzRW1wdHlPYmplY3QoIG9wdGlvbnMgKTsKCQlvcHRpb25zLmNvbXBsZXRlID0gY2FsbGJhY2s7CgoJCWlmICggb3B0aW9ucy5kZWxheSApIHsKCQkJZWxlbWVudC5kZWxheSggb3B0aW9ucy5kZWxheSApOwoJCX0KCgkJaWYgKCBoYXNPcHRpb25zICYmICQuZWZmZWN0cyAmJiAkLmVmZmVjdHMuZWZmZWN0WyBlZmZlY3ROYW1lIF0gKSB7CgkJCWVsZW1lbnRbIG1ldGhvZCBdKCBvcHRpb25zICk7CgkJfSBlbHNlIGlmICggZWZmZWN0TmFtZSAhPT0gbWV0aG9kICYmIGVsZW1lbnRbIGVmZmVjdE5hbWUgXSApIHsKCQkJZWxlbWVudFsgZWZmZWN0TmFtZSBdKCBvcHRpb25zLmR1cmF0aW9uLCBvcHRpb25zLmVhc2luZywgY2FsbGJhY2sgKTsKCQl9IGVsc2UgewoJCQllbGVtZW50LnF1ZXVlKCBmdW5jdGlvbiggbmV4dCApIHsKCQkJCSQoIHRoaXMgKVsgbWV0aG9kIF0oKTsKCQkJCWlmICggY2FsbGJhY2sgKSB7CgkJCQkJY2FsbGJhY2suY2FsbCggZWxlbWVudFsgMCBdICk7CgkJCQl9CgkJCQluZXh0KCk7CgkJCX0gKTsKCQl9Cgl9Owp9ICk7Cgp2YXIgd2lkZ2V0ID0gJC53aWRnZXQ7CgoKLyohCiAqIGpRdWVyeSBVSSBQb3NpdGlvbiAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICoKICogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vcG9zaXRpb24vCiAqLwoKLy8+PmxhYmVsOiBQb3NpdGlvbgovLz4+Z3JvdXA6IENvcmUKLy8+PmRlc2NyaXB0aW9uOiBQb3NpdGlvbnMgZWxlbWVudHMgcmVsYXRpdmUgdG8gb3RoZXIgZWxlbWVudHMuCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9wb3NpdGlvbi8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL3Bvc2l0aW9uLwoKCiggZnVuY3Rpb24oKSB7CnZhciBjYWNoZWRTY3JvbGxiYXJXaWR0aCwKCW1heCA9IE1hdGgubWF4LAoJYWJzID0gTWF0aC5hYnMsCglyaG9yaXpvbnRhbCA9IC9sZWZ0fGNlbnRlcnxyaWdodC8sCglydmVydGljYWwgPSAvdG9wfGNlbnRlcnxib3R0b20vLAoJcm9mZnNldCA9IC9bXCtcLV1cZCsoXC5bXGRdKyk/JT8vLAoJcnBvc2l0aW9uID0gL15cdysvLAoJcnBlcmNlbnQgPSAvJSQvLAoJX3Bvc2l0aW9uID0gJC5mbi5wb3NpdGlvbjsKCmZ1bmN0aW9uIGdldE9mZnNldHMoIG9mZnNldHMsIHdpZHRoLCBoZWlnaHQgKSB7CglyZXR1cm4gWwoJCXBhcnNlRmxvYXQoIG9mZnNldHNbIDAgXSApICogKCBycGVyY2VudC50ZXN0KCBvZmZzZXRzWyAwIF0gKSA/IHdpZHRoIC8gMTAwIDogMSApLAoJCXBhcnNlRmxvYXQoIG9mZnNldHNbIDEgXSApICogKCBycGVyY2VudC50ZXN0KCBvZmZzZXRzWyAxIF0gKSA/IGhlaWdodCAvIDEwMCA6IDEgKQoJXTsKfQoKZnVuY3Rpb24gcGFyc2VDc3MoIGVsZW1lbnQsIHByb3BlcnR5ICkgewoJcmV0dXJuIHBhcnNlSW50KCAkLmNzcyggZWxlbWVudCwgcHJvcGVydHkgKSwgMTAgKSB8fCAwOwp9CgpmdW5jdGlvbiBnZXREaW1lbnNpb25zKCBlbGVtICkgewoJdmFyIHJhdyA9IGVsZW1bIDAgXTsKCWlmICggcmF3Lm5vZGVUeXBlID09PSA5ICkgewoJCXJldHVybiB7CgkJCXdpZHRoOiBlbGVtLndpZHRoKCksCgkJCWhlaWdodDogZWxlbS5oZWlnaHQoKSwKCQkJb2Zmc2V0OiB7IHRvcDogMCwgbGVmdDogMCB9CgkJfTsKCX0KCWlmICggJC5pc1dpbmRvdyggcmF3ICkgKSB7CgkJcmV0dXJuIHsKCQkJd2lkdGg6IGVsZW0ud2lkdGgoKSwKCQkJaGVpZ2h0OiBlbGVtLmhlaWdodCgpLAoJCQlvZmZzZXQ6IHsgdG9wOiBlbGVtLnNjcm9sbFRvcCgpLCBsZWZ0OiBlbGVtLnNjcm9sbExlZnQoKSB9CgkJfTsKCX0KCWlmICggcmF3LnByZXZlbnREZWZhdWx0ICkgewoJCXJldHVybiB7CgkJCXdpZHRoOiAwLAoJCQloZWlnaHQ6IDAsCgkJCW9mZnNldDogeyB0b3A6IHJhdy5wYWdlWSwgbGVmdDogcmF3LnBhZ2VYIH0KCQl9OwoJfQoJcmV0dXJuIHsKCQl3aWR0aDogZWxlbS5vdXRlcldpZHRoKCksCgkJaGVpZ2h0OiBlbGVtLm91dGVySGVpZ2h0KCksCgkJb2Zmc2V0OiBlbGVtLm9mZnNldCgpCgl9Owp9CgokLnBvc2l0aW9uID0gewoJc2Nyb2xsYmFyV2lkdGg6IGZ1bmN0aW9uKCkgewoJCWlmICggY2FjaGVkU2Nyb2xsYmFyV2lkdGggIT09IHVuZGVmaW5lZCApIHsKCQkJcmV0dXJuIGNhY2hlZFNjcm9sbGJhcldpZHRoOwoJCX0KCQl2YXIgdzEsIHcyLAoJCQlkaXYgPSAkKCAiPGRpdiAiICsKCQkJCSJzdHlsZT0nZGlzcGxheTpibG9jaztwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDo1MHB4O2hlaWdodDo1MHB4O292ZXJmbG93OmhpZGRlbjsnPiIgKwoJCQkJIjxkaXYgc3R5bGU9J2hlaWdodDoxMDBweDt3aWR0aDphdXRvOyc+PC9kaXY+PC9kaXY+IiApLAoJCQlpbm5lckRpdiA9IGRpdi5jaGlsZHJlbigpWyAwIF07CgoJCSQoICJib2R5IiApLmFwcGVuZCggZGl2ICk7CgkJdzEgPSBpbm5lckRpdi5vZmZzZXRXaWR0aDsKCQlkaXYuY3NzKCAib3ZlcmZsb3ciLCAic2Nyb2xsIiApOwoKCQl3MiA9IGlubmVyRGl2Lm9mZnNldFdpZHRoOwoKCQlpZiAoIHcxID09PSB3MiApIHsKCQkJdzIgPSBkaXZbIDAgXS5jbGllbnRXaWR0aDsKCQl9CgoJCWRpdi5yZW1vdmUoKTsKCgkJcmV0dXJuICggY2FjaGVkU2Nyb2xsYmFyV2lkdGggPSB3MSAtIHcyICk7Cgl9LAoJZ2V0U2Nyb2xsSW5mbzogZnVuY3Rpb24oIHdpdGhpbiApIHsKCQl2YXIgb3ZlcmZsb3dYID0gd2l0aGluLmlzV2luZG93IHx8IHdpdGhpbi5pc0RvY3VtZW50ID8gIiIgOgoJCQkJd2l0aGluLmVsZW1lbnQuY3NzKCAib3ZlcmZsb3cteCIgKSwKCQkJb3ZlcmZsb3dZID0gd2l0aGluLmlzV2luZG93IHx8IHdpdGhpbi5pc0RvY3VtZW50ID8gIiIgOgoJCQkJd2l0aGluLmVsZW1lbnQuY3NzKCAib3ZlcmZsb3cteSIgKSwKCQkJaGFzT3ZlcmZsb3dYID0gb3ZlcmZsb3dYID09PSAic2Nyb2xsIiB8fAoJCQkJKCBvdmVyZmxvd1ggPT09ICJhdXRvIiAmJiB3aXRoaW4ud2lkdGggPCB3aXRoaW4uZWxlbWVudFsgMCBdLnNjcm9sbFdpZHRoICksCgkJCWhhc092ZXJmbG93WSA9IG92ZXJmbG93WSA9PT0gInNjcm9sbCIgfHwKCQkJCSggb3ZlcmZsb3dZID09PSAiYXV0byIgJiYgd2l0aGluLmhlaWdodCA8IHdpdGhpbi5lbGVtZW50WyAwIF0uc2Nyb2xsSGVpZ2h0ICk7CgkJcmV0dXJuIHsKCQkJd2lkdGg6IGhhc092ZXJmbG93WSA/ICQucG9zaXRpb24uc2Nyb2xsYmFyV2lkdGgoKSA6IDAsCgkJCWhlaWdodDogaGFzT3ZlcmZsb3dYID8gJC5wb3NpdGlvbi5zY3JvbGxiYXJXaWR0aCgpIDogMAoJCX07Cgl9LAoJZ2V0V2l0aGluSW5mbzogZnVuY3Rpb24oIGVsZW1lbnQgKSB7CgkJdmFyIHdpdGhpbkVsZW1lbnQgPSAkKCBlbGVtZW50IHx8IHdpbmRvdyApLAoJCQlpc1dpbmRvdyA9ICQuaXNXaW5kb3coIHdpdGhpbkVsZW1lbnRbIDAgXSApLAoJCQlpc0RvY3VtZW50ID0gISF3aXRoaW5FbGVtZW50WyAwIF0gJiYgd2l0aGluRWxlbWVudFsgMCBdLm5vZGVUeXBlID09PSA5LAoJCQloYXNPZmZzZXQgPSAhaXNXaW5kb3cgJiYgIWlzRG9jdW1lbnQ7CgkJcmV0dXJuIHsKCQkJZWxlbWVudDogd2l0aGluRWxlbWVudCwKCQkJaXNXaW5kb3c6IGlzV2luZG93LAoJCQlpc0RvY3VtZW50OiBpc0RvY3VtZW50LAoJCQlvZmZzZXQ6IGhhc09mZnNldCA/ICQoIGVsZW1lbnQgKS5vZmZzZXQoKSA6IHsgbGVmdDogMCwgdG9wOiAwIH0sCgkJCXNjcm9sbExlZnQ6IHdpdGhpbkVsZW1lbnQuc2Nyb2xsTGVmdCgpLAoJCQlzY3JvbGxUb3A6IHdpdGhpbkVsZW1lbnQuc2Nyb2xsVG9wKCksCgkJCXdpZHRoOiB3aXRoaW5FbGVtZW50Lm91dGVyV2lkdGgoKSwKCQkJaGVpZ2h0OiB3aXRoaW5FbGVtZW50Lm91dGVySGVpZ2h0KCkKCQl9OwoJfQp9OwoKJC5mbi5wb3NpdGlvbiA9IGZ1bmN0aW9uKCBvcHRpb25zICkgewoJaWYgKCAhb3B0aW9ucyB8fCAhb3B0aW9ucy5vZiApIHsKCQlyZXR1cm4gX3Bvc2l0aW9uLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKTsKCX0KCgkvLyBNYWtlIGEgY29weSwgd2UgZG9uJ3Qgd2FudCB0byBtb2RpZnkgYXJndW1lbnRzCglvcHRpb25zID0gJC5leHRlbmQoIHt9LCBvcHRpb25zICk7CgoJdmFyIGF0T2Zmc2V0LCB0YXJnZXRXaWR0aCwgdGFyZ2V0SGVpZ2h0LCB0YXJnZXRPZmZzZXQsIGJhc2VQb3NpdGlvbiwgZGltZW5zaW9ucywKCQl0YXJnZXQgPSAkKCBvcHRpb25zLm9mICksCgkJd2l0aGluID0gJC5wb3NpdGlvbi5nZXRXaXRoaW5JbmZvKCBvcHRpb25zLndpdGhpbiApLAoJCXNjcm9sbEluZm8gPSAkLnBvc2l0aW9uLmdldFNjcm9sbEluZm8oIHdpdGhpbiApLAoJCWNvbGxpc2lvbiA9ICggb3B0aW9ucy5jb2xsaXNpb24gfHwgImZsaXAiICkuc3BsaXQoICIgIiApLAoJCW9mZnNldHMgPSB7fTsKCglkaW1lbnNpb25zID0gZ2V0RGltZW5zaW9ucyggdGFyZ2V0ICk7CglpZiAoIHRhcmdldFsgMCBdLnByZXZlbnREZWZhdWx0ICkgewoKCQkvLyBGb3JjZSBsZWZ0IHRvcCB0byBhbGxvdyBmbGlwcGluZwoJCW9wdGlvbnMuYXQgPSAibGVmdCB0b3AiOwoJfQoJdGFyZ2V0V2lkdGggPSBkaW1lbnNpb25zLndpZHRoOwoJdGFyZ2V0SGVpZ2h0ID0gZGltZW5zaW9ucy5oZWlnaHQ7Cgl0YXJnZXRPZmZzZXQgPSBkaW1lbnNpb25zLm9mZnNldDsKCgkvLyBDbG9uZSB0byByZXVzZSBvcmlnaW5hbCB0YXJnZXRPZmZzZXQgbGF0ZXIKCWJhc2VQb3NpdGlvbiA9ICQuZXh0ZW5kKCB7fSwgdGFyZ2V0T2Zmc2V0ICk7CgoJLy8gRm9yY2UgbXkgYW5kIGF0IHRvIGhhdmUgdmFsaWQgaG9yaXpvbnRhbCBhbmQgdmVydGljYWwgcG9zaXRpb25zCgkvLyBpZiBhIHZhbHVlIGlzIG1pc3Npbmcgb3IgaW52YWxpZCwgaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gY2VudGVyCgkkLmVhY2goIFsgIm15IiwgImF0IiBdLCBmdW5jdGlvbigpIHsKCQl2YXIgcG9zID0gKCBvcHRpb25zWyB0aGlzIF0gfHwgIiIgKS5zcGxpdCggIiAiICksCgkJCWhvcml6b250YWxPZmZzZXQsCgkJCXZlcnRpY2FsT2Zmc2V0OwoKCQlpZiAoIHBvcy5sZW5ndGggPT09IDEgKSB7CgkJCXBvcyA9IHJob3Jpem9udGFsLnRlc3QoIHBvc1sgMCBdICkgPwoJCQkJcG9zLmNvbmNhdCggWyAiY2VudGVyIiBdICkgOgoJCQkJcnZlcnRpY2FsLnRlc3QoIHBvc1sgMCBdICkgPwoJCQkJCVsgImNlbnRlciIgXS5jb25jYXQoIHBvcyApIDoKCQkJCQlbICJjZW50ZXIiLCAiY2VudGVyIiBdOwoJCX0KCQlwb3NbIDAgXSA9IHJob3Jpem9udGFsLnRlc3QoIHBvc1sgMCBdICkgPyBwb3NbIDAgXSA6ICJjZW50ZXIiOwoJCXBvc1sgMSBdID0gcnZlcnRpY2FsLnRlc3QoIHBvc1sgMSBdICkgPyBwb3NbIDEgXSA6ICJjZW50ZXIiOwoKCQkvLyBDYWxjdWxhdGUgb2Zmc2V0cwoJCWhvcml6b250YWxPZmZzZXQgPSByb2Zmc2V0LmV4ZWMoIHBvc1sgMCBdICk7CgkJdmVydGljYWxPZmZzZXQgPSByb2Zmc2V0LmV4ZWMoIHBvc1sgMSBdICk7CgkJb2Zmc2V0c1sgdGhpcyBdID0gWwoJCQlob3Jpem9udGFsT2Zmc2V0ID8gaG9yaXpvbnRhbE9mZnNldFsgMCBdIDogMCwKCQkJdmVydGljYWxPZmZzZXQgPyB2ZXJ0aWNhbE9mZnNldFsgMCBdIDogMAoJCV07CgoJCS8vIFJlZHVjZSB0byBqdXN0IHRoZSBwb3NpdGlvbnMgd2l0aG91dCB0aGUgb2Zmc2V0cwoJCW9wdGlvbnNbIHRoaXMgXSA9IFsKCQkJcnBvc2l0aW9uLmV4ZWMoIHBvc1sgMCBdIClbIDAgXSwKCQkJcnBvc2l0aW9uLmV4ZWMoIHBvc1sgMSBdIClbIDAgXQoJCV07Cgl9ICk7CgoJLy8gTm9ybWFsaXplIGNvbGxpc2lvbiBvcHRpb24KCWlmICggY29sbGlzaW9uLmxlbmd0aCA9PT0gMSApIHsKCQljb2xsaXNpb25bIDEgXSA9IGNvbGxpc2lvblsgMCBdOwoJfQoKCWlmICggb3B0aW9ucy5hdFsgMCBdID09PSAicmlnaHQiICkgewoJCWJhc2VQb3NpdGlvbi5sZWZ0ICs9IHRhcmdldFdpZHRoOwoJfSBlbHNlIGlmICggb3B0aW9ucy5hdFsgMCBdID09PSAiY2VudGVyIiApIHsKCQliYXNlUG9zaXRpb24ubGVmdCArPSB0YXJnZXRXaWR0aCAvIDI7Cgl9CgoJaWYgKCBvcHRpb25zLmF0WyAxIF0gPT09ICJib3R0b20iICkgewoJCWJhc2VQb3NpdGlvbi50b3AgKz0gdGFyZ2V0SGVpZ2h0OwoJfSBlbHNlIGlmICggb3B0aW9ucy5hdFsgMSBdID09PSAiY2VudGVyIiApIHsKCQliYXNlUG9zaXRpb24udG9wICs9IHRhcmdldEhlaWdodCAvIDI7Cgl9CgoJYXRPZmZzZXQgPSBnZXRPZmZzZXRzKCBvZmZzZXRzLmF0LCB0YXJnZXRXaWR0aCwgdGFyZ2V0SGVpZ2h0ICk7CgliYXNlUG9zaXRpb24ubGVmdCArPSBhdE9mZnNldFsgMCBdOwoJYmFzZVBvc2l0aW9uLnRvcCArPSBhdE9mZnNldFsgMSBdOwoKCXJldHVybiB0aGlzLmVhY2goIGZ1bmN0aW9uKCkgewoJCXZhciBjb2xsaXNpb25Qb3NpdGlvbiwgdXNpbmcsCgkJCWVsZW0gPSAkKCB0aGlzICksCgkJCWVsZW1XaWR0aCA9IGVsZW0ub3V0ZXJXaWR0aCgpLAoJCQllbGVtSGVpZ2h0ID0gZWxlbS5vdXRlckhlaWdodCgpLAoJCQltYXJnaW5MZWZ0ID0gcGFyc2VDc3MoIHRoaXMsICJtYXJnaW5MZWZ0IiApLAoJCQltYXJnaW5Ub3AgPSBwYXJzZUNzcyggdGhpcywgIm1hcmdpblRvcCIgKSwKCQkJY29sbGlzaW9uV2lkdGggPSBlbGVtV2lkdGggKyBtYXJnaW5MZWZ0ICsgcGFyc2VDc3MoIHRoaXMsICJtYXJnaW5SaWdodCIgKSArCgkJCQlzY3JvbGxJbmZvLndpZHRoLAoJCQljb2xsaXNpb25IZWlnaHQgPSBlbGVtSGVpZ2h0ICsgbWFyZ2luVG9wICsgcGFyc2VDc3MoIHRoaXMsICJtYXJnaW5Cb3R0b20iICkgKwoJCQkJc2Nyb2xsSW5mby5oZWlnaHQsCgkJCXBvc2l0aW9uID0gJC5leHRlbmQoIHt9LCBiYXNlUG9zaXRpb24gKSwKCQkJbXlPZmZzZXQgPSBnZXRPZmZzZXRzKCBvZmZzZXRzLm15LCBlbGVtLm91dGVyV2lkdGgoKSwgZWxlbS5vdXRlckhlaWdodCgpICk7CgoJCWlmICggb3B0aW9ucy5teVsgMCBdID09PSAicmlnaHQiICkgewoJCQlwb3NpdGlvbi5sZWZ0IC09IGVsZW1XaWR0aDsKCQl9IGVsc2UgaWYgKCBvcHRpb25zLm15WyAwIF0gPT09ICJjZW50ZXIiICkgewoJCQlwb3NpdGlvbi5sZWZ0IC09IGVsZW1XaWR0aCAvIDI7CgkJfQoKCQlpZiAoIG9wdGlvbnMubXlbIDEgXSA9PT0gImJvdHRvbSIgKSB7CgkJCXBvc2l0aW9uLnRvcCAtPSBlbGVtSGVpZ2h0OwoJCX0gZWxzZSBpZiAoIG9wdGlvbnMubXlbIDEgXSA9PT0gImNlbnRlciIgKSB7CgkJCXBvc2l0aW9uLnRvcCAtPSBlbGVtSGVpZ2h0IC8gMjsKCQl9CgoJCXBvc2l0aW9uLmxlZnQgKz0gbXlPZmZzZXRbIDAgXTsKCQlwb3NpdGlvbi50b3AgKz0gbXlPZmZzZXRbIDEgXTsKCgkJY29sbGlzaW9uUG9zaXRpb24gPSB7CgkJCW1hcmdpbkxlZnQ6IG1hcmdpbkxlZnQsCgkJCW1hcmdpblRvcDogbWFyZ2luVG9wCgkJfTsKCgkJJC5lYWNoKCBbICJsZWZ0IiwgInRvcCIgXSwgZnVuY3Rpb24oIGksIGRpciApIHsKCQkJaWYgKCAkLnVpLnBvc2l0aW9uWyBjb2xsaXNpb25bIGkgXSBdICkgewoJCQkJJC51aS5wb3NpdGlvblsgY29sbGlzaW9uWyBpIF0gXVsgZGlyIF0oIHBvc2l0aW9uLCB7CgkJCQkJdGFyZ2V0V2lkdGg6IHRhcmdldFdpZHRoLAoJCQkJCXRhcmdldEhlaWdodDogdGFyZ2V0SGVpZ2h0LAoJCQkJCWVsZW1XaWR0aDogZWxlbVdpZHRoLAoJCQkJCWVsZW1IZWlnaHQ6IGVsZW1IZWlnaHQsCgkJCQkJY29sbGlzaW9uUG9zaXRpb246IGNvbGxpc2lvblBvc2l0aW9uLAoJCQkJCWNvbGxpc2lvbldpZHRoOiBjb2xsaXNpb25XaWR0aCwKCQkJCQljb2xsaXNpb25IZWlnaHQ6IGNvbGxpc2lvbkhlaWdodCwKCQkJCQlvZmZzZXQ6IFsgYXRPZmZzZXRbIDAgXSArIG15T2Zmc2V0WyAwIF0sIGF0T2Zmc2V0IFsgMSBdICsgbXlPZmZzZXRbIDEgXSBdLAoJCQkJCW15OiBvcHRpb25zLm15LAoJCQkJCWF0OiBvcHRpb25zLmF0LAoJCQkJCXdpdGhpbjogd2l0aGluLAoJCQkJCWVsZW06IGVsZW0KCQkJCX0gKTsKCQkJfQoJCX0gKTsKCgkJaWYgKCBvcHRpb25zLnVzaW5nICkgewoKCQkJLy8gQWRkcyBmZWVkYmFjayBhcyBzZWNvbmQgYXJndW1lbnQgdG8gdXNpbmcgY2FsbGJhY2ssIGlmIHByZXNlbnQKCQkJdXNpbmcgPSBmdW5jdGlvbiggcHJvcHMgKSB7CgkJCQl2YXIgbGVmdCA9IHRhcmdldE9mZnNldC5sZWZ0IC0gcG9zaXRpb24ubGVmdCwKCQkJCQlyaWdodCA9IGxlZnQgKyB0YXJnZXRXaWR0aCAtIGVsZW1XaWR0aCwKCQkJCQl0b3AgPSB0YXJnZXRPZmZzZXQudG9wIC0gcG9zaXRpb24udG9wLAoJCQkJCWJvdHRvbSA9IHRvcCArIHRhcmdldEhlaWdodCAtIGVsZW1IZWlnaHQsCgkJCQkJZmVlZGJhY2sgPSB7CgkJCQkJCXRhcmdldDogewoJCQkJCQkJZWxlbWVudDogdGFyZ2V0LAoJCQkJCQkJbGVmdDogdGFyZ2V0T2Zmc2V0LmxlZnQsCgkJCQkJCQl0b3A6IHRhcmdldE9mZnNldC50b3AsCgkJCQkJCQl3aWR0aDogdGFyZ2V0V2lkdGgsCgkJCQkJCQloZWlnaHQ6IHRhcmdldEhlaWdodAoJCQkJCQl9LAoJCQkJCQllbGVtZW50OiB7CgkJCQkJCQllbGVtZW50OiBlbGVtLAoJCQkJCQkJbGVmdDogcG9zaXRpb24ubGVmdCwKCQkJCQkJCXRvcDogcG9zaXRpb24udG9wLAoJCQkJCQkJd2lkdGg6IGVsZW1XaWR0aCwKCQkJCQkJCWhlaWdodDogZWxlbUhlaWdodAoJCQkJCQl9LAoJCQkJCQlob3Jpem9udGFsOiByaWdodCA8IDAgPyAibGVmdCIgOiBsZWZ0ID4gMCA/ICJyaWdodCIgOiAiY2VudGVyIiwKCQkJCQkJdmVydGljYWw6IGJvdHRvbSA8IDAgPyAidG9wIiA6IHRvcCA+IDAgPyAiYm90dG9tIiA6ICJtaWRkbGUiCgkJCQkJfTsKCQkJCWlmICggdGFyZ2V0V2lkdGggPCBlbGVtV2lkdGggJiYgYWJzKCBsZWZ0ICsgcmlnaHQgKSA8IHRhcmdldFdpZHRoICkgewoJCQkJCWZlZWRiYWNrLmhvcml6b250YWwgPSAiY2VudGVyIjsKCQkJCX0KCQkJCWlmICggdGFyZ2V0SGVpZ2h0IDwgZWxlbUhlaWdodCAmJiBhYnMoIHRvcCArIGJvdHRvbSApIDwgdGFyZ2V0SGVpZ2h0ICkgewoJCQkJCWZlZWRiYWNrLnZlcnRpY2FsID0gIm1pZGRsZSI7CgkJCQl9CgkJCQlpZiAoIG1heCggYWJzKCBsZWZ0ICksIGFicyggcmlnaHQgKSApID4gbWF4KCBhYnMoIHRvcCApLCBhYnMoIGJvdHRvbSApICkgKSB7CgkJCQkJZmVlZGJhY2suaW1wb3J0YW50ID0gImhvcml6b250YWwiOwoJCQkJfSBlbHNlIHsKCQkJCQlmZWVkYmFjay5pbXBvcnRhbnQgPSAidmVydGljYWwiOwoJCQkJfQoJCQkJb3B0aW9ucy51c2luZy5jYWxsKCB0aGlzLCBwcm9wcywgZmVlZGJhY2sgKTsKCQkJfTsKCQl9CgoJCWVsZW0ub2Zmc2V0KCAkLmV4dGVuZCggcG9zaXRpb24sIHsgdXNpbmc6IHVzaW5nIH0gKSApOwoJfSApOwp9OwoKJC51aS5wb3NpdGlvbiA9IHsKCWZpdDogewoJCWxlZnQ6IGZ1bmN0aW9uKCBwb3NpdGlvbiwgZGF0YSApIHsKCQkJdmFyIHdpdGhpbiA9IGRhdGEud2l0aGluLAoJCQkJd2l0aGluT2Zmc2V0ID0gd2l0aGluLmlzV2luZG93ID8gd2l0aGluLnNjcm9sbExlZnQgOiB3aXRoaW4ub2Zmc2V0LmxlZnQsCgkJCQlvdXRlcldpZHRoID0gd2l0aGluLndpZHRoLAoJCQkJY29sbGlzaW9uUG9zTGVmdCA9IHBvc2l0aW9uLmxlZnQgLSBkYXRhLmNvbGxpc2lvblBvc2l0aW9uLm1hcmdpbkxlZnQsCgkJCQlvdmVyTGVmdCA9IHdpdGhpbk9mZnNldCAtIGNvbGxpc2lvblBvc0xlZnQsCgkJCQlvdmVyUmlnaHQgPSBjb2xsaXNpb25Qb3NMZWZ0ICsgZGF0YS5jb2xsaXNpb25XaWR0aCAtIG91dGVyV2lkdGggLSB3aXRoaW5PZmZzZXQsCgkJCQluZXdPdmVyUmlnaHQ7CgoJCQkvLyBFbGVtZW50IGlzIHdpZGVyIHRoYW4gd2l0aGluCgkJCWlmICggZGF0YS5jb2xsaXNpb25XaWR0aCA+IG91dGVyV2lkdGggKSB7CgoJCQkJLy8gRWxlbWVudCBpcyBpbml0aWFsbHkgb3ZlciB0aGUgbGVmdCBzaWRlIG9mIHdpdGhpbgoJCQkJaWYgKCBvdmVyTGVmdCA+IDAgJiYgb3ZlclJpZ2h0IDw9IDAgKSB7CgkJCQkJbmV3T3ZlclJpZ2h0ID0gcG9zaXRpb24ubGVmdCArIG92ZXJMZWZ0ICsgZGF0YS5jb2xsaXNpb25XaWR0aCAtIG91dGVyV2lkdGggLQoJCQkJCQl3aXRoaW5PZmZzZXQ7CgkJCQkJcG9zaXRpb24ubGVmdCArPSBvdmVyTGVmdCAtIG5ld092ZXJSaWdodDsKCgkJCQkvLyBFbGVtZW50IGlzIGluaXRpYWxseSBvdmVyIHJpZ2h0IHNpZGUgb2Ygd2l0aGluCgkJCQl9IGVsc2UgaWYgKCBvdmVyUmlnaHQgPiAwICYmIG92ZXJMZWZ0IDw9IDAgKSB7CgkJCQkJcG9zaXRpb24ubGVmdCA9IHdpdGhpbk9mZnNldDsKCgkJCQkvLyBFbGVtZW50IGlzIGluaXRpYWxseSBvdmVyIGJvdGggbGVmdCBhbmQgcmlnaHQgc2lkZXMgb2Ygd2l0aGluCgkJCQl9IGVsc2UgewoJCQkJCWlmICggb3ZlckxlZnQgPiBvdmVyUmlnaHQgKSB7CgkJCQkJCXBvc2l0aW9uLmxlZnQgPSB3aXRoaW5PZmZzZXQgKyBvdXRlcldpZHRoIC0gZGF0YS5jb2xsaXNpb25XaWR0aDsKCQkJCQl9IGVsc2UgewoJCQkJCQlwb3NpdGlvbi5sZWZ0ID0gd2l0aGluT2Zmc2V0OwoJCQkJCX0KCQkJCX0KCgkJCS8vIFRvbyBmYXIgbGVmdCAtPiBhbGlnbiB3aXRoIGxlZnQgZWRnZQoJCQl9IGVsc2UgaWYgKCBvdmVyTGVmdCA+IDAgKSB7CgkJCQlwb3NpdGlvbi5sZWZ0ICs9IG92ZXJMZWZ0OwoKCQkJLy8gVG9vIGZhciByaWdodCAtPiBhbGlnbiB3aXRoIHJpZ2h0IGVkZ2UKCQkJfSBlbHNlIGlmICggb3ZlclJpZ2h0ID4gMCApIHsKCQkJCXBvc2l0aW9uLmxlZnQgLT0gb3ZlclJpZ2h0OwoKCQkJLy8gQWRqdXN0IGJhc2VkIG9uIHBvc2l0aW9uIGFuZCBtYXJnaW4KCQkJfSBlbHNlIHsKCQkJCXBvc2l0aW9uLmxlZnQgPSBtYXgoIHBvc2l0aW9uLmxlZnQgLSBjb2xsaXNpb25Qb3NMZWZ0LCBwb3NpdGlvbi5sZWZ0ICk7CgkJCX0KCQl9LAoJCXRvcDogZnVuY3Rpb24oIHBvc2l0aW9uLCBkYXRhICkgewoJCQl2YXIgd2l0aGluID0gZGF0YS53aXRoaW4sCgkJCQl3aXRoaW5PZmZzZXQgPSB3aXRoaW4uaXNXaW5kb3cgPyB3aXRoaW4uc2Nyb2xsVG9wIDogd2l0aGluLm9mZnNldC50b3AsCgkJCQlvdXRlckhlaWdodCA9IGRhdGEud2l0aGluLmhlaWdodCwKCQkJCWNvbGxpc2lvblBvc1RvcCA9IHBvc2l0aW9uLnRvcCAtIGRhdGEuY29sbGlzaW9uUG9zaXRpb24ubWFyZ2luVG9wLAoJCQkJb3ZlclRvcCA9IHdpdGhpbk9mZnNldCAtIGNvbGxpc2lvblBvc1RvcCwKCQkJCW92ZXJCb3R0b20gPSBjb2xsaXNpb25Qb3NUb3AgKyBkYXRhLmNvbGxpc2lvbkhlaWdodCAtIG91dGVySGVpZ2h0IC0gd2l0aGluT2Zmc2V0LAoJCQkJbmV3T3ZlckJvdHRvbTsKCgkJCS8vIEVsZW1lbnQgaXMgdGFsbGVyIHRoYW4gd2l0aGluCgkJCWlmICggZGF0YS5jb2xsaXNpb25IZWlnaHQgPiBvdXRlckhlaWdodCApIHsKCgkJCQkvLyBFbGVtZW50IGlzIGluaXRpYWxseSBvdmVyIHRoZSB0b3Agb2Ygd2l0aGluCgkJCQlpZiAoIG92ZXJUb3AgPiAwICYmIG92ZXJCb3R0b20gPD0gMCApIHsKCQkJCQluZXdPdmVyQm90dG9tID0gcG9zaXRpb24udG9wICsgb3ZlclRvcCArIGRhdGEuY29sbGlzaW9uSGVpZ2h0IC0gb3V0ZXJIZWlnaHQgLQoJCQkJCQl3aXRoaW5PZmZzZXQ7CgkJCQkJcG9zaXRpb24udG9wICs9IG92ZXJUb3AgLSBuZXdPdmVyQm90dG9tOwoKCQkJCS8vIEVsZW1lbnQgaXMgaW5pdGlhbGx5IG92ZXIgYm90dG9tIG9mIHdpdGhpbgoJCQkJfSBlbHNlIGlmICggb3ZlckJvdHRvbSA+IDAgJiYgb3ZlclRvcCA8PSAwICkgewoJCQkJCXBvc2l0aW9uLnRvcCA9IHdpdGhpbk9mZnNldDsKCgkJCQkvLyBFbGVtZW50IGlzIGluaXRpYWxseSBvdmVyIGJvdGggdG9wIGFuZCBib3R0b20gb2Ygd2l0aGluCgkJCQl9IGVsc2UgewoJCQkJCWlmICggb3ZlclRvcCA+IG92ZXJCb3R0b20gKSB7CgkJCQkJCXBvc2l0aW9uLnRvcCA9IHdpdGhpbk9mZnNldCArIG91dGVySGVpZ2h0IC0gZGF0YS5jb2xsaXNpb25IZWlnaHQ7CgkJCQkJfSBlbHNlIHsKCQkJCQkJcG9zaXRpb24udG9wID0gd2l0aGluT2Zmc2V0OwoJCQkJCX0KCQkJCX0KCgkJCS8vIFRvbyBmYXIgdXAgLT4gYWxpZ24gd2l0aCB0b3AKCQkJfSBlbHNlIGlmICggb3ZlclRvcCA+IDAgKSB7CgkJCQlwb3NpdGlvbi50b3AgKz0gb3ZlclRvcDsKCgkJCS8vIFRvbyBmYXIgZG93biAtPiBhbGlnbiB3aXRoIGJvdHRvbSBlZGdlCgkJCX0gZWxzZSBpZiAoIG92ZXJCb3R0b20gPiAwICkgewoJCQkJcG9zaXRpb24udG9wIC09IG92ZXJCb3R0b207CgoJCQkvLyBBZGp1c3QgYmFzZWQgb24gcG9zaXRpb24gYW5kIG1hcmdpbgoJCQl9IGVsc2UgewoJCQkJcG9zaXRpb24udG9wID0gbWF4KCBwb3NpdGlvbi50b3AgLSBjb2xsaXNpb25Qb3NUb3AsIHBvc2l0aW9uLnRvcCApOwoJCQl9CgkJfQoJfSwKCWZsaXA6IHsKCQlsZWZ0OiBmdW5jdGlvbiggcG9zaXRpb24sIGRhdGEgKSB7CgkJCXZhciB3aXRoaW4gPSBkYXRhLndpdGhpbiwKCQkJCXdpdGhpbk9mZnNldCA9IHdpdGhpbi5vZmZzZXQubGVmdCArIHdpdGhpbi5zY3JvbGxMZWZ0LAoJCQkJb3V0ZXJXaWR0aCA9IHdpdGhpbi53aWR0aCwKCQkJCW9mZnNldExlZnQgPSB3aXRoaW4uaXNXaW5kb3cgPyB3aXRoaW4uc2Nyb2xsTGVmdCA6IHdpdGhpbi5vZmZzZXQubGVmdCwKCQkJCWNvbGxpc2lvblBvc0xlZnQgPSBwb3NpdGlvbi5sZWZ0IC0gZGF0YS5jb2xsaXNpb25Qb3NpdGlvbi5tYXJnaW5MZWZ0LAoJCQkJb3ZlckxlZnQgPSBjb2xsaXNpb25Qb3NMZWZ0IC0gb2Zmc2V0TGVmdCwKCQkJCW92ZXJSaWdodCA9IGNvbGxpc2lvblBvc0xlZnQgKyBkYXRhLmNvbGxpc2lvbldpZHRoIC0gb3V0ZXJXaWR0aCAtIG9mZnNldExlZnQsCgkJCQlteU9mZnNldCA9IGRhdGEubXlbIDAgXSA9PT0gImxlZnQiID8KCQkJCQktZGF0YS5lbGVtV2lkdGggOgoJCQkJCWRhdGEubXlbIDAgXSA9PT0gInJpZ2h0IiA/CgkJCQkJCWRhdGEuZWxlbVdpZHRoIDoKCQkJCQkJMCwKCQkJCWF0T2Zmc2V0ID0gZGF0YS5hdFsgMCBdID09PSAibGVmdCIgPwoJCQkJCWRhdGEudGFyZ2V0V2lkdGggOgoJCQkJCWRhdGEuYXRbIDAgXSA9PT0gInJpZ2h0IiA/CgkJCQkJCS1kYXRhLnRhcmdldFdpZHRoIDoKCQkJCQkJMCwKCQkJCW9mZnNldCA9IC0yICogZGF0YS5vZmZzZXRbIDAgXSwKCQkJCW5ld092ZXJSaWdodCwKCQkJCW5ld092ZXJMZWZ0OwoKCQkJaWYgKCBvdmVyTGVmdCA8IDAgKSB7CgkJCQluZXdPdmVyUmlnaHQgPSBwb3NpdGlvbi5sZWZ0ICsgbXlPZmZzZXQgKyBhdE9mZnNldCArIG9mZnNldCArIGRhdGEuY29sbGlzaW9uV2lkdGggLQoJCQkJCW91dGVyV2lkdGggLSB3aXRoaW5PZmZzZXQ7CgkJCQlpZiAoIG5ld092ZXJSaWdodCA8IDAgfHwgbmV3T3ZlclJpZ2h0IDwgYWJzKCBvdmVyTGVmdCApICkgewoJCQkJCXBvc2l0aW9uLmxlZnQgKz0gbXlPZmZzZXQgKyBhdE9mZnNldCArIG9mZnNldDsKCQkJCX0KCQkJfSBlbHNlIGlmICggb3ZlclJpZ2h0ID4gMCApIHsKCQkJCW5ld092ZXJMZWZ0ID0gcG9zaXRpb24ubGVmdCAtIGRhdGEuY29sbGlzaW9uUG9zaXRpb24ubWFyZ2luTGVmdCArIG15T2Zmc2V0ICsKCQkJCQlhdE9mZnNldCArIG9mZnNldCAtIG9mZnNldExlZnQ7CgkJCQlpZiAoIG5ld092ZXJMZWZ0ID4gMCB8fCBhYnMoIG5ld092ZXJMZWZ0ICkgPCBvdmVyUmlnaHQgKSB7CgkJCQkJcG9zaXRpb24ubGVmdCArPSBteU9mZnNldCArIGF0T2Zmc2V0ICsgb2Zmc2V0OwoJCQkJfQoJCQl9CgkJfSwKCQl0b3A6IGZ1bmN0aW9uKCBwb3NpdGlvbiwgZGF0YSApIHsKCQkJdmFyIHdpdGhpbiA9IGRhdGEud2l0aGluLAoJCQkJd2l0aGluT2Zmc2V0ID0gd2l0aGluLm9mZnNldC50b3AgKyB3aXRoaW4uc2Nyb2xsVG9wLAoJCQkJb3V0ZXJIZWlnaHQgPSB3aXRoaW4uaGVpZ2h0LAoJCQkJb2Zmc2V0VG9wID0gd2l0aGluLmlzV2luZG93ID8gd2l0aGluLnNjcm9sbFRvcCA6IHdpdGhpbi5vZmZzZXQudG9wLAoJCQkJY29sbGlzaW9uUG9zVG9wID0gcG9zaXRpb24udG9wIC0gZGF0YS5jb2xsaXNpb25Qb3NpdGlvbi5tYXJnaW5Ub3AsCgkJCQlvdmVyVG9wID0gY29sbGlzaW9uUG9zVG9wIC0gb2Zmc2V0VG9wLAoJCQkJb3ZlckJvdHRvbSA9IGNvbGxpc2lvblBvc1RvcCArIGRhdGEuY29sbGlzaW9uSGVpZ2h0IC0gb3V0ZXJIZWlnaHQgLSBvZmZzZXRUb3AsCgkJCQl0b3AgPSBkYXRhLm15WyAxIF0gPT09ICJ0b3AiLAoJCQkJbXlPZmZzZXQgPSB0b3AgPwoJCQkJCS1kYXRhLmVsZW1IZWlnaHQgOgoJCQkJCWRhdGEubXlbIDEgXSA9PT0gImJvdHRvbSIgPwoJCQkJCQlkYXRhLmVsZW1IZWlnaHQgOgoJCQkJCQkwLAoJCQkJYXRPZmZzZXQgPSBkYXRhLmF0WyAxIF0gPT09ICJ0b3AiID8KCQkJCQlkYXRhLnRhcmdldEhlaWdodCA6CgkJCQkJZGF0YS5hdFsgMSBdID09PSAiYm90dG9tIiA/CgkJCQkJCS1kYXRhLnRhcmdldEhlaWdodCA6CgkJCQkJCTAsCgkJCQlvZmZzZXQgPSAtMiAqIGRhdGEub2Zmc2V0WyAxIF0sCgkJCQluZXdPdmVyVG9wLAoJCQkJbmV3T3ZlckJvdHRvbTsKCQkJaWYgKCBvdmVyVG9wIDwgMCApIHsKCQkJCW5ld092ZXJCb3R0b20gPSBwb3NpdGlvbi50b3AgKyBteU9mZnNldCArIGF0T2Zmc2V0ICsgb2Zmc2V0ICsgZGF0YS5jb2xsaXNpb25IZWlnaHQgLQoJCQkJCW91dGVySGVpZ2h0IC0gd2l0aGluT2Zmc2V0OwoJCQkJaWYgKCBuZXdPdmVyQm90dG9tIDwgMCB8fCBuZXdPdmVyQm90dG9tIDwgYWJzKCBvdmVyVG9wICkgKSB7CgkJCQkJcG9zaXRpb24udG9wICs9IG15T2Zmc2V0ICsgYXRPZmZzZXQgKyBvZmZzZXQ7CgkJCQl9CgkJCX0gZWxzZSBpZiAoIG92ZXJCb3R0b20gPiAwICkgewoJCQkJbmV3T3ZlclRvcCA9IHBvc2l0aW9uLnRvcCAtIGRhdGEuY29sbGlzaW9uUG9zaXRpb24ubWFyZ2luVG9wICsgbXlPZmZzZXQgKyBhdE9mZnNldCArCgkJCQkJb2Zmc2V0IC0gb2Zmc2V0VG9wOwoJCQkJaWYgKCBuZXdPdmVyVG9wID4gMCB8fCBhYnMoIG5ld092ZXJUb3AgKSA8IG92ZXJCb3R0b20gKSB7CgkJCQkJcG9zaXRpb24udG9wICs9IG15T2Zmc2V0ICsgYXRPZmZzZXQgKyBvZmZzZXQ7CgkJCQl9CgkJCX0KCQl9Cgl9LAoJZmxpcGZpdDogewoJCWxlZnQ6IGZ1bmN0aW9uKCkgewoJCQkkLnVpLnBvc2l0aW9uLmZsaXAubGVmdC5hcHBseSggdGhpcywgYXJndW1lbnRzICk7CgkJCSQudWkucG9zaXRpb24uZml0LmxlZnQuYXBwbHkoIHRoaXMsIGFyZ3VtZW50cyApOwoJCX0sCgkJdG9wOiBmdW5jdGlvbigpIHsKCQkJJC51aS5wb3NpdGlvbi5mbGlwLnRvcC5hcHBseSggdGhpcywgYXJndW1lbnRzICk7CgkJCSQudWkucG9zaXRpb24uZml0LnRvcC5hcHBseSggdGhpcywgYXJndW1lbnRzICk7CgkJfQoJfQp9OwoKfSApKCk7Cgp2YXIgcG9zaXRpb24gPSAkLnVpLnBvc2l0aW9uOwoKCi8qIQogKiBqUXVlcnkgVUkgOmRhdGEgMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiA6ZGF0YSBTZWxlY3RvcgovLz4+Z3JvdXA6IENvcmUKLy8+PmRlc2NyaXB0aW9uOiBTZWxlY3RzIGVsZW1lbnRzIHdoaWNoIGhhdmUgZGF0YSBzdG9yZWQgdW5kZXIgdGhlIHNwZWNpZmllZCBrZXkuCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9kYXRhLXNlbGVjdG9yLwoKCnZhciBkYXRhID0gJC5leHRlbmQoICQuZXhwclsgIjoiIF0sIHsKCWRhdGE6ICQuZXhwci5jcmVhdGVQc2V1ZG8gPwoJCSQuZXhwci5jcmVhdGVQc2V1ZG8oIGZ1bmN0aW9uKCBkYXRhTmFtZSApIHsKCQkJcmV0dXJuIGZ1bmN0aW9uKCBlbGVtICkgewoJCQkJcmV0dXJuICEhJC5kYXRhKCBlbGVtLCBkYXRhTmFtZSApOwoJCQl9OwoJCX0gKSA6CgoJCS8vIFN1cHBvcnQ6IGpRdWVyeSA8MS44CgkJZnVuY3Rpb24oIGVsZW0sIGksIG1hdGNoICkgewoJCQlyZXR1cm4gISEkLmRhdGEoIGVsZW0sIG1hdGNoWyAzIF0gKTsKCQl9Cn0gKTsKCi8qIQogKiBqUXVlcnkgVUkgRGlzYWJsZSBTZWxlY3Rpb24gMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiBkaXNhYmxlU2VsZWN0aW9uCi8vPj5ncm91cDogQ29yZQovLz4+ZGVzY3JpcHRpb246IERpc2FibGUgc2VsZWN0aW9uIG9mIHRleHQgY29udGVudCB3aXRoaW4gdGhlIHNldCBvZiBtYXRjaGVkIGVsZW1lbnRzLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vZGlzYWJsZVNlbGVjdGlvbi8KCi8vIFRoaXMgZmlsZSBpcyBkZXByZWNhdGVkCgoKdmFyIGRpc2FibGVTZWxlY3Rpb24gPSAkLmZuLmV4dGVuZCggewoJZGlzYWJsZVNlbGVjdGlvbjogKCBmdW5jdGlvbigpIHsKCQl2YXIgZXZlbnRUeXBlID0gIm9uc2VsZWN0c3RhcnQiIGluIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoICJkaXYiICkgPwoJCQkic2VsZWN0c3RhcnQiIDoKCQkJIm1vdXNlZG93biI7CgoJCXJldHVybiBmdW5jdGlvbigpIHsKCQkJcmV0dXJuIHRoaXMub24oIGV2ZW50VHlwZSArICIudWktZGlzYWJsZVNlbGVjdGlvbiIsIGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCX0gKTsKCQl9OwoJfSApKCksCgoJZW5hYmxlU2VsZWN0aW9uOiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gdGhpcy5vZmYoICIudWktZGlzYWJsZVNlbGVjdGlvbiIgKTsKCX0KfSApOwoKCi8qIQogKiBqUXVlcnkgVUkgRm9jdXNhYmxlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogOmZvY3VzYWJsZSBTZWxlY3RvcgovLz4+Z3JvdXA6IENvcmUKLy8+PmRlc2NyaXB0aW9uOiBTZWxlY3RzIGVsZW1lbnRzIHdoaWNoIGNhbiBiZSBmb2N1c2VkLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vZm9jdXNhYmxlLXNlbGVjdG9yLwoKCgovLyBTZWxlY3RvcnMKJC51aS5mb2N1c2FibGUgPSBmdW5jdGlvbiggZWxlbWVudCwgaGFzVGFiaW5kZXggKSB7Cgl2YXIgbWFwLCBtYXBOYW1lLCBpbWcsIGZvY3VzYWJsZUlmVmlzaWJsZSwgZmllbGRzZXQsCgkJbm9kZU5hbWUgPSBlbGVtZW50Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7CgoJaWYgKCAiYXJlYSIgPT09IG5vZGVOYW1lICkgewoJCW1hcCA9IGVsZW1lbnQucGFyZW50Tm9kZTsKCQltYXBOYW1lID0gbWFwLm5hbWU7CgkJaWYgKCAhZWxlbWVudC5ocmVmIHx8ICFtYXBOYW1lIHx8IG1hcC5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpICE9PSAibWFwIiApIHsKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCQlpbWcgPSAkKCAiaW1nW3VzZW1hcD0nIyIgKyBtYXBOYW1lICsgIiddIiApOwoJCXJldHVybiBpbWcubGVuZ3RoID4gMCAmJiBpbWcuaXMoICI6dmlzaWJsZSIgKTsKCX0KCglpZiAoIC9eKGlucHV0fHNlbGVjdHx0ZXh0YXJlYXxidXR0b258b2JqZWN0KSQvLnRlc3QoIG5vZGVOYW1lICkgKSB7CgkJZm9jdXNhYmxlSWZWaXNpYmxlID0gIWVsZW1lbnQuZGlzYWJsZWQ7CgoJCWlmICggZm9jdXNhYmxlSWZWaXNpYmxlICkgewoKCQkJLy8gRm9ybSBjb250cm9scyB3aXRoaW4gYSBkaXNhYmxlZCBmaWVsZHNldCBhcmUgZGlzYWJsZWQuCgkJCS8vIEhvd2V2ZXIsIGNvbnRyb2xzIHdpdGhpbiB0aGUgZmllbGRzZXQncyBsZWdlbmQgZG8gbm90IGdldCBkaXNhYmxlZC4KCQkJLy8gU2luY2UgY29udHJvbHMgZ2VuZXJhbGx5IGFyZW4ndCBwbGFjZWQgaW5zaWRlIGxlZ2VuZHMsIHdlIHNraXAKCQkJLy8gdGhpcyBwb3J0aW9uIG9mIHRoZSBjaGVjay4KCQkJZmllbGRzZXQgPSAkKCBlbGVtZW50ICkuY2xvc2VzdCggImZpZWxkc2V0IiApWyAwIF07CgkJCWlmICggZmllbGRzZXQgKSB7CgkJCQlmb2N1c2FibGVJZlZpc2libGUgPSAhZmllbGRzZXQuZGlzYWJsZWQ7CgkJCX0KCQl9Cgl9IGVsc2UgaWYgKCAiYSIgPT09IG5vZGVOYW1lICkgewoJCWZvY3VzYWJsZUlmVmlzaWJsZSA9IGVsZW1lbnQuaHJlZiB8fCBoYXNUYWJpbmRleDsKCX0gZWxzZSB7CgkJZm9jdXNhYmxlSWZWaXNpYmxlID0gaGFzVGFiaW5kZXg7Cgl9CgoJcmV0dXJuIGZvY3VzYWJsZUlmVmlzaWJsZSAmJiAkKCBlbGVtZW50ICkuaXMoICI6dmlzaWJsZSIgKSAmJiB2aXNpYmxlKCAkKCBlbGVtZW50ICkgKTsKfTsKCi8vIFN1cHBvcnQ6IElFIDggb25seQovLyBJRSA4IGRvZXNuJ3QgcmVzb2x2ZSBpbmhlcml0IHRvIHZpc2libGUvaGlkZGVuIGZvciBjb21wdXRlZCB2YWx1ZXMKZnVuY3Rpb24gdmlzaWJsZSggZWxlbWVudCApIHsKCXZhciB2aXNpYmlsaXR5ID0gZWxlbWVudC5jc3MoICJ2aXNpYmlsaXR5IiApOwoJd2hpbGUgKCB2aXNpYmlsaXR5ID09PSAiaW5oZXJpdCIgKSB7CgkJZWxlbWVudCA9IGVsZW1lbnQucGFyZW50KCk7CgkJdmlzaWJpbGl0eSA9IGVsZW1lbnQuY3NzKCAidmlzaWJpbGl0eSIgKTsKCX0KCXJldHVybiB2aXNpYmlsaXR5ICE9PSAiaGlkZGVuIjsKfQoKJC5leHRlbmQoICQuZXhwclsgIjoiIF0sIHsKCWZvY3VzYWJsZTogZnVuY3Rpb24oIGVsZW1lbnQgKSB7CgkJcmV0dXJuICQudWkuZm9jdXNhYmxlKCBlbGVtZW50LCAkLmF0dHIoIGVsZW1lbnQsICJ0YWJpbmRleCIgKSAhPSBudWxsICk7Cgl9Cn0gKTsKCnZhciBmb2N1c2FibGUgPSAkLnVpLmZvY3VzYWJsZTsKCgoKCi8vIFN1cHBvcnQ6IElFOCBPbmx5Ci8vIElFOCBkb2VzIG5vdCBzdXBwb3J0IHRoZSBmb3JtIGF0dHJpYnV0ZSBhbmQgd2hlbiBpdCBpcyBzdXBwbGllZC4gSXQgb3ZlcndyaXRlcyB0aGUgZm9ybSBwcm9wCi8vIHdpdGggYSBzdHJpbmcsIHNvIHdlIG5lZWQgdG8gZmluZCB0aGUgcHJvcGVyIGZvcm0uCnZhciBmb3JtID0gJC5mbi5mb3JtID0gZnVuY3Rpb24oKSB7CglyZXR1cm4gdHlwZW9mIHRoaXNbIDAgXS5mb3JtID09PSAic3RyaW5nIiA/IHRoaXMuY2xvc2VzdCggImZvcm0iICkgOiAkKCB0aGlzWyAwIF0uZm9ybSApOwp9OwoKCi8qIQogKiBqUXVlcnkgVUkgRm9ybSBSZXNldCBNaXhpbiAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IEZvcm0gUmVzZXQgTWl4aW4KLy8+Pmdyb3VwOiBDb3JlCi8vPj5kZXNjcmlwdGlvbjogUmVmcmVzaCBpbnB1dCB3aWRnZXRzIHdoZW4gdGhlaXIgZm9ybSBpcyByZXNldAovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vZm9ybS1yZXNldC1taXhpbi8KCgoKdmFyIGZvcm1SZXNldE1peGluID0gJC51aS5mb3JtUmVzZXRNaXhpbiA9IHsKCV9mb3JtUmVzZXRIYW5kbGVyOiBmdW5jdGlvbigpIHsKCQl2YXIgZm9ybSA9ICQoIHRoaXMgKTsKCgkJLy8gV2FpdCBmb3IgdGhlIGZvcm0gcmVzZXQgdG8gYWN0dWFsbHkgaGFwcGVuIGJlZm9yZSByZWZyZXNoaW5nCgkJc2V0VGltZW91dCggZnVuY3Rpb24oKSB7CgkJCXZhciBpbnN0YW5jZXMgPSBmb3JtLmRhdGEoICJ1aS1mb3JtLXJlc2V0LWluc3RhbmNlcyIgKTsKCQkJJC5lYWNoKCBpbnN0YW5jZXMsIGZ1bmN0aW9uKCkgewoJCQkJdGhpcy5yZWZyZXNoKCk7CgkJCX0gKTsKCQl9ICk7Cgl9LAoKCV9iaW5kRm9ybVJlc2V0SGFuZGxlcjogZnVuY3Rpb24oKSB7CgkJdGhpcy5mb3JtID0gdGhpcy5lbGVtZW50LmZvcm0oKTsKCQlpZiAoICF0aGlzLmZvcm0ubGVuZ3RoICkgewoJCQlyZXR1cm47CgkJfQoKCQl2YXIgaW5zdGFuY2VzID0gdGhpcy5mb3JtLmRhdGEoICJ1aS1mb3JtLXJlc2V0LWluc3RhbmNlcyIgKSB8fCBbXTsKCQlpZiAoICFpbnN0YW5jZXMubGVuZ3RoICkgewoKCQkJLy8gV2UgZG9uJ3QgdXNlIF9vbigpIGhlcmUgYmVjYXVzZSB3ZSB1c2UgYSBzaW5nbGUgZXZlbnQgaGFuZGxlciBwZXIgZm9ybQoJCQl0aGlzLmZvcm0ub24oICJyZXNldC51aS1mb3JtLXJlc2V0IiwgdGhpcy5fZm9ybVJlc2V0SGFuZGxlciApOwoJCX0KCQlpbnN0YW5jZXMucHVzaCggdGhpcyApOwoJCXRoaXMuZm9ybS5kYXRhKCAidWktZm9ybS1yZXNldC1pbnN0YW5jZXMiLCBpbnN0YW5jZXMgKTsKCX0sCgoJX3VuYmluZEZvcm1SZXNldEhhbmRsZXI6IGZ1bmN0aW9uKCkgewoJCWlmICggIXRoaXMuZm9ybS5sZW5ndGggKSB7CgkJCXJldHVybjsKCQl9CgoJCXZhciBpbnN0YW5jZXMgPSB0aGlzLmZvcm0uZGF0YSggInVpLWZvcm0tcmVzZXQtaW5zdGFuY2VzIiApOwoJCWluc3RhbmNlcy5zcGxpY2UoICQuaW5BcnJheSggdGhpcywgaW5zdGFuY2VzICksIDEgKTsKCQlpZiAoIGluc3RhbmNlcy5sZW5ndGggKSB7CgkJCXRoaXMuZm9ybS5kYXRhKCAidWktZm9ybS1yZXNldC1pbnN0YW5jZXMiLCBpbnN0YW5jZXMgKTsKCQl9IGVsc2UgewoJCQl0aGlzLmZvcm0KCQkJCS5yZW1vdmVEYXRhKCAidWktZm9ybS1yZXNldC1pbnN0YW5jZXMiICkKCQkJCS5vZmYoICJyZXNldC51aS1mb3JtLXJlc2V0IiApOwoJCX0KCX0KfTsKCgovKiEKICogalF1ZXJ5IFVJIFN1cHBvcnQgZm9yIGpRdWVyeSBjb3JlIDEuNy54IDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKgogKi8KCi8vPj5sYWJlbDogalF1ZXJ5IDEuNyBTdXBwb3J0Ci8vPj5ncm91cDogQ29yZQovLz4+ZGVzY3JpcHRpb246IFN1cHBvcnQgdmVyc2lvbiAxLjcueCBvZiBqUXVlcnkgY29yZQoKCgovLyBTdXBwb3J0OiBqUXVlcnkgMS43IG9ubHkKLy8gTm90IGEgZ3JlYXQgd2F5IHRvIGNoZWNrIHZlcnNpb25zLCBidXQgc2luY2Ugd2Ugb25seSBzdXBwb3J0IDEuNysgYW5kIG9ubHkKLy8gbmVlZCB0byBkZXRlY3QgPDEuOCwgdGhpcyBpcyBhIHNpbXBsZSBjaGVjayB0aGF0IHNob3VsZCBzdWZmaWNlLiBDaGVja2luZwovLyBmb3IgIjEuNy4iIHdvdWxkIGJlIGEgYml0IHNhZmVyLCBidXQgdGhlIHZlcnNpb24gc3RyaW5nIGlzIDEuNywgbm90IDEuNy4wCi8vIGFuZCB3ZSdsbCBuZXZlciByZWFjaCAxLjcwLjAgKGlmIHdlIGRvLCB3ZSBjZXJ0YWlubHkgd29uJ3QgYmUgc3VwcG9ydGluZwovLyAxLjcgYW55bW9yZSkuIFNlZSAjMTExOTcgZm9yIHdoeSB3ZSdyZSBub3QgdXNpbmcgZmVhdHVyZSBkZXRlY3Rpb24uCmlmICggJC5mbi5qcXVlcnkuc3Vic3RyaW5nKCAwLCAzICkgPT09ICIxLjciICkgewoKCS8vIFNldHRlcnMgZm9yIC5pbm5lcldpZHRoKCksIC5pbm5lckhlaWdodCgpLCAub3V0ZXJXaWR0aCgpLCAub3V0ZXJIZWlnaHQoKQoJLy8gVW5saWtlIGpRdWVyeSBDb3JlIDEuOCssIHRoZXNlIG9ubHkgc3VwcG9ydCBudW1lcmljIHZhbHVlcyB0byBzZXQgdGhlCgkvLyBkaW1lbnNpb25zIGluIHBpeGVscwoJJC5lYWNoKCBbICJXaWR0aCIsICJIZWlnaHQiIF0sIGZ1bmN0aW9uKCBpLCBuYW1lICkgewoJCXZhciBzaWRlID0gbmFtZSA9PT0gIldpZHRoIiA/IFsgIkxlZnQiLCAiUmlnaHQiIF0gOiBbICJUb3AiLCAiQm90dG9tIiBdLAoJCQl0eXBlID0gbmFtZS50b0xvd2VyQ2FzZSgpLAoJCQlvcmlnID0gewoJCQkJaW5uZXJXaWR0aDogJC5mbi5pbm5lcldpZHRoLAoJCQkJaW5uZXJIZWlnaHQ6ICQuZm4uaW5uZXJIZWlnaHQsCgkJCQlvdXRlcldpZHRoOiAkLmZuLm91dGVyV2lkdGgsCgkJCQlvdXRlckhlaWdodDogJC5mbi5vdXRlckhlaWdodAoJCQl9OwoKCQlmdW5jdGlvbiByZWR1Y2UoIGVsZW0sIHNpemUsIGJvcmRlciwgbWFyZ2luICkgewoJCQkkLmVhY2goIHNpZGUsIGZ1bmN0aW9uKCkgewoJCQkJc2l6ZSAtPSBwYXJzZUZsb2F0KCAkLmNzcyggZWxlbSwgInBhZGRpbmciICsgdGhpcyApICkgfHwgMDsKCQkJCWlmICggYm9yZGVyICkgewoJCQkJCXNpemUgLT0gcGFyc2VGbG9hdCggJC5jc3MoIGVsZW0sICJib3JkZXIiICsgdGhpcyArICJXaWR0aCIgKSApIHx8IDA7CgkJCQl9CgkJCQlpZiAoIG1hcmdpbiApIHsKCQkJCQlzaXplIC09IHBhcnNlRmxvYXQoICQuY3NzKCBlbGVtLCAibWFyZ2luIiArIHRoaXMgKSApIHx8IDA7CgkJCQl9CgkJCX0gKTsKCQkJcmV0dXJuIHNpemU7CgkJfQoKCQkkLmZuWyAiaW5uZXIiICsgbmFtZSBdID0gZnVuY3Rpb24oIHNpemUgKSB7CgkJCWlmICggc2l6ZSA9PT0gdW5kZWZpbmVkICkgewoJCQkJcmV0dXJuIG9yaWdbICJpbm5lciIgKyBuYW1lIF0uY2FsbCggdGhpcyApOwoJCQl9CgoJCQlyZXR1cm4gdGhpcy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCSQoIHRoaXMgKS5jc3MoIHR5cGUsIHJlZHVjZSggdGhpcywgc2l6ZSApICsgInB4IiApOwoJCQl9ICk7CgkJfTsKCgkJJC5mblsgIm91dGVyIiArIG5hbWUgXSA9IGZ1bmN0aW9uKCBzaXplLCBtYXJnaW4gKSB7CgkJCWlmICggdHlwZW9mIHNpemUgIT09ICJudW1iZXIiICkgewoJCQkJcmV0dXJuIG9yaWdbICJvdXRlciIgKyBuYW1lIF0uY2FsbCggdGhpcywgc2l6ZSApOwoJCQl9CgoJCQlyZXR1cm4gdGhpcy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCSQoIHRoaXMgKS5jc3MoIHR5cGUsIHJlZHVjZSggdGhpcywgc2l6ZSwgdHJ1ZSwgbWFyZ2luICkgKyAicHgiICk7CgkJCX0gKTsKCQl9OwoJfSApOwoKCSQuZm4uYWRkQmFjayA9IGZ1bmN0aW9uKCBzZWxlY3RvciApIHsKCQlyZXR1cm4gdGhpcy5hZGQoIHNlbGVjdG9yID09IG51bGwgPwoJCQl0aGlzLnByZXZPYmplY3QgOiB0aGlzLnByZXZPYmplY3QuZmlsdGVyKCBzZWxlY3RvciApCgkJKTsKCX07Cn0KCjsKLyohCiAqIGpRdWVyeSBVSSBLZXljb2RlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogS2V5Y29kZQovLz4+Z3JvdXA6IENvcmUKLy8+PmRlc2NyaXB0aW9uOiBQcm92aWRlIGtleWNvZGVzIGFzIGtleW5hbWVzCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9qUXVlcnkudWkua2V5Q29kZS8KCgp2YXIga2V5Y29kZSA9ICQudWkua2V5Q29kZSA9IHsKCUJBQ0tTUEFDRTogOCwKCUNPTU1BOiAxODgsCglERUxFVEU6IDQ2LAoJRE9XTjogNDAsCglFTkQ6IDM1LAoJRU5URVI6IDEzLAoJRVNDQVBFOiAyNywKCUhPTUU6IDM2LAoJTEVGVDogMzcsCglQQUdFX0RPV046IDM0LAoJUEFHRV9VUDogMzMsCglQRVJJT0Q6IDE5MCwKCVJJR0hUOiAzOSwKCVNQQUNFOiAzMiwKCVRBQjogOSwKCVVQOiAzOAp9OwoKCgoKLy8gSW50ZXJuYWwgdXNlIG9ubHkKdmFyIGVzY2FwZVNlbGVjdG9yID0gJC51aS5lc2NhcGVTZWxlY3RvciA9ICggZnVuY3Rpb24oKSB7Cgl2YXIgc2VsZWN0b3JFc2NhcGUgPSAvKFshIiMkJSYnKCkqKywuLzo7PD0+P0BbXF1eYHt8fX5dKS9nOwoJcmV0dXJuIGZ1bmN0aW9uKCBzZWxlY3RvciApIHsKCQlyZXR1cm4gc2VsZWN0b3IucmVwbGFjZSggc2VsZWN0b3JFc2NhcGUsICJcXCQxIiApOwoJfTsKfSApKCk7CgoKLyohCiAqIGpRdWVyeSBVSSBMYWJlbHMgMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiBsYWJlbHMKLy8+Pmdyb3VwOiBDb3JlCi8vPj5kZXNjcmlwdGlvbjogRmluZCBhbGwgdGhlIGxhYmVscyBhc3NvY2lhdGVkIHdpdGggYSBnaXZlbiBpbnB1dAovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vbGFiZWxzLwoKCgp2YXIgbGFiZWxzID0gJC5mbi5sYWJlbHMgPSBmdW5jdGlvbigpIHsKCXZhciBhbmNlc3Rvciwgc2VsZWN0b3IsIGlkLCBsYWJlbHMsIGFuY2VzdG9yczsKCgkvLyBDaGVjayBjb250cm9sLmxhYmVscyBmaXJzdAoJaWYgKCB0aGlzWyAwIF0ubGFiZWxzICYmIHRoaXNbIDAgXS5sYWJlbHMubGVuZ3RoICkgewoJCXJldHVybiB0aGlzLnB1c2hTdGFjayggdGhpc1sgMCBdLmxhYmVscyApOwoJfQoKCS8vIFN1cHBvcnQ6IElFIDw9IDExLCBGRiA8PSAzNywgQW5kcm9pZCA8PSAyLjMgb25seQoJLy8gQWJvdmUgYnJvd3NlcnMgZG8gbm90IHN1cHBvcnQgY29udHJvbC5sYWJlbHMuIEV2ZXJ5dGhpbmcgYmVsb3cgaXMgdG8gc3VwcG9ydCB0aGVtCgkvLyBhcyB3ZWxsIGFzIGRvY3VtZW50IGZyYWdtZW50cy4gY29udHJvbC5sYWJlbHMgZG9lcyBub3Qgd29yayBvbiBkb2N1bWVudCBmcmFnbWVudHMKCWxhYmVscyA9IHRoaXMuZXEoIDAgKS5wYXJlbnRzKCAibGFiZWwiICk7CgoJLy8gTG9vayBmb3IgdGhlIGxhYmVsIGJhc2VkIG9uIHRoZSBpZAoJaWQgPSB0aGlzLmF0dHIoICJpZCIgKTsKCWlmICggaWQgKSB7CgoJCS8vIFdlIGRvbid0IHNlYXJjaCBhZ2FpbnN0IHRoZSBkb2N1bWVudCBpbiBjYXNlIHRoZSBlbGVtZW50CgkJLy8gaXMgZGlzY29ubmVjdGVkIGZyb20gdGhlIERPTQoJCWFuY2VzdG9yID0gdGhpcy5lcSggMCApLnBhcmVudHMoKS5sYXN0KCk7CgoJCS8vIEdldCBhIGZ1bGwgc2V0IG9mIHRvcCBsZXZlbCBhbmNlc3RvcnMKCQlhbmNlc3RvcnMgPSBhbmNlc3Rvci5hZGQoIGFuY2VzdG9yLmxlbmd0aCA/IGFuY2VzdG9yLnNpYmxpbmdzKCkgOiB0aGlzLnNpYmxpbmdzKCkgKTsKCgkJLy8gQ3JlYXRlIGEgc2VsZWN0b3IgZm9yIHRoZSBsYWJlbCBiYXNlZCBvbiB0aGUgaWQKCQlzZWxlY3RvciA9ICJsYWJlbFtmb3I9JyIgKyAkLnVpLmVzY2FwZVNlbGVjdG9yKCBpZCApICsgIiddIjsKCgkJbGFiZWxzID0gbGFiZWxzLmFkZCggYW5jZXN0b3JzLmZpbmQoIHNlbGVjdG9yICkuYWRkQmFjayggc2VsZWN0b3IgKSApOwoKCX0KCgkvLyBSZXR1cm4gd2hhdGV2ZXIgd2UgaGF2ZSBmb3VuZCBmb3IgbGFiZWxzCglyZXR1cm4gdGhpcy5wdXNoU3RhY2soIGxhYmVscyApOwp9OwoKCi8qIQogKiBqUXVlcnkgVUkgU2Nyb2xsIFBhcmVudCAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IHNjcm9sbFBhcmVudAovLz4+Z3JvdXA6IENvcmUKLy8+PmRlc2NyaXB0aW9uOiBHZXQgdGhlIGNsb3Nlc3QgYW5jZXN0b3IgZWxlbWVudCB0aGF0IGlzIHNjcm9sbGFibGUuCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9zY3JvbGxQYXJlbnQvCgoKCnZhciBzY3JvbGxQYXJlbnQgPSAkLmZuLnNjcm9sbFBhcmVudCA9IGZ1bmN0aW9uKCBpbmNsdWRlSGlkZGVuICkgewoJdmFyIHBvc2l0aW9uID0gdGhpcy5jc3MoICJwb3NpdGlvbiIgKSwKCQlleGNsdWRlU3RhdGljUGFyZW50ID0gcG9zaXRpb24gPT09ICJhYnNvbHV0ZSIsCgkJb3ZlcmZsb3dSZWdleCA9IGluY2x1ZGVIaWRkZW4gPyAvKGF1dG98c2Nyb2xsfGhpZGRlbikvIDogLyhhdXRvfHNjcm9sbCkvLAoJCXNjcm9sbFBhcmVudCA9IHRoaXMucGFyZW50cygpLmZpbHRlciggZnVuY3Rpb24oKSB7CgkJCXZhciBwYXJlbnQgPSAkKCB0aGlzICk7CgkJCWlmICggZXhjbHVkZVN0YXRpY1BhcmVudCAmJiBwYXJlbnQuY3NzKCAicG9zaXRpb24iICkgPT09ICJzdGF0aWMiICkgewoJCQkJcmV0dXJuIGZhbHNlOwoJCQl9CgkJCXJldHVybiBvdmVyZmxvd1JlZ2V4LnRlc3QoIHBhcmVudC5jc3MoICJvdmVyZmxvdyIgKSArIHBhcmVudC5jc3MoICJvdmVyZmxvdy15IiApICsKCQkJCXBhcmVudC5jc3MoICJvdmVyZmxvdy14IiApICk7CgkJfSApLmVxKCAwICk7CgoJcmV0dXJuIHBvc2l0aW9uID09PSAiZml4ZWQiIHx8ICFzY3JvbGxQYXJlbnQubGVuZ3RoID8KCQkkKCB0aGlzWyAwIF0ub3duZXJEb2N1bWVudCB8fCBkb2N1bWVudCApIDoKCQlzY3JvbGxQYXJlbnQ7Cn07CgoKLyohCiAqIGpRdWVyeSBVSSBUYWJiYWJsZSAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IDp0YWJiYWJsZSBTZWxlY3RvcgovLz4+Z3JvdXA6IENvcmUKLy8+PmRlc2NyaXB0aW9uOiBTZWxlY3RzIGVsZW1lbnRzIHdoaWNoIGNhbiBiZSB0YWJiZWQgdG8uCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS90YWJiYWJsZS1zZWxlY3Rvci8KCgoKdmFyIHRhYmJhYmxlID0gJC5leHRlbmQoICQuZXhwclsgIjoiIF0sIHsKCXRhYmJhYmxlOiBmdW5jdGlvbiggZWxlbWVudCApIHsKCQl2YXIgdGFiSW5kZXggPSAkLmF0dHIoIGVsZW1lbnQsICJ0YWJpbmRleCIgKSwKCQkJaGFzVGFiaW5kZXggPSB0YWJJbmRleCAhPSBudWxsOwoJCXJldHVybiAoICFoYXNUYWJpbmRleCB8fCB0YWJJbmRleCA+PSAwICkgJiYgJC51aS5mb2N1c2FibGUoIGVsZW1lbnQsIGhhc1RhYmluZGV4ICk7Cgl9Cn0gKTsKCgovKiEKICogalF1ZXJ5IFVJIFVuaXF1ZSBJRCAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IHVuaXF1ZUlkCi8vPj5ncm91cDogQ29yZQovLz4+ZGVzY3JpcHRpb246IEZ1bmN0aW9ucyB0byBnZW5lcmF0ZSBhbmQgcmVtb3ZlIHVuaXF1ZUlkJ3MKLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3VuaXF1ZUlkLwoKCgp2YXIgdW5pcXVlSWQgPSAkLmZuLmV4dGVuZCggewoJdW5pcXVlSWQ6ICggZnVuY3Rpb24oKSB7CgkJdmFyIHV1aWQgPSAwOwoKCQlyZXR1cm4gZnVuY3Rpb24oKSB7CgkJCXJldHVybiB0aGlzLmVhY2goIGZ1bmN0aW9uKCkgewoJCQkJaWYgKCAhdGhpcy5pZCApIHsKCQkJCQl0aGlzLmlkID0gInVpLWlkLSIgKyAoICsrdXVpZCApOwoJCQkJfQoJCQl9ICk7CgkJfTsKCX0gKSgpLAoKCXJlbW92ZVVuaXF1ZUlkOiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gdGhpcy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJaWYgKCAvXnVpLWlkLVxkKyQvLnRlc3QoIHRoaXMuaWQgKSApIHsKCQkJCSQoIHRoaXMgKS5yZW1vdmVBdHRyKCAiaWQiICk7CgkJCX0KCQl9ICk7Cgl9Cn0gKTsKCgoKCi8vIFRoaXMgZmlsZSBpcyBkZXByZWNhdGVkCnZhciBpZSA9ICQudWkuaWUgPSAhIS9tc2llIFtcdy5dKy8uZXhlYyggbmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpICk7CgovKiEKICogalF1ZXJ5IFVJIE1vdXNlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogTW91c2UKLy8+Pmdyb3VwOiBXaWRnZXRzCi8vPj5kZXNjcmlwdGlvbjogQWJzdHJhY3RzIG1vdXNlLWJhc2VkIGludGVyYWN0aW9ucyB0byBhc3Npc3QgaW4gY3JlYXRpbmcgY2VydGFpbiB3aWRnZXRzLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vbW91c2UvCgoKCnZhciBtb3VzZUhhbmRsZWQgPSBmYWxzZTsKJCggZG9jdW1lbnQgKS5vbiggIm1vdXNldXAiLCBmdW5jdGlvbigpIHsKCW1vdXNlSGFuZGxlZCA9IGZhbHNlOwp9ICk7Cgp2YXIgd2lkZ2V0c01vdXNlID0gJC53aWRnZXQoICJ1aS5tb3VzZSIsIHsKCXZlcnNpb246ICIxLjEyLjEiLAoJb3B0aW9uczogewoJCWNhbmNlbDogImlucHV0LCB0ZXh0YXJlYSwgYnV0dG9uLCBzZWxlY3QsIG9wdGlvbiIsCgkJZGlzdGFuY2U6IDEsCgkJZGVsYXk6IDAKCX0sCglfbW91c2VJbml0OiBmdW5jdGlvbigpIHsKCQl2YXIgdGhhdCA9IHRoaXM7CgoJCXRoaXMuZWxlbWVudAoJCQkub24oICJtb3VzZWRvd24uIiArIHRoaXMud2lkZ2V0TmFtZSwgZnVuY3Rpb24oIGV2ZW50ICkgewoJCQkJcmV0dXJuIHRoYXQuX21vdXNlRG93biggZXZlbnQgKTsKCQkJfSApCgkJCS5vbiggImNsaWNrLiIgKyB0aGlzLndpZGdldE5hbWUsIGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCWlmICggdHJ1ZSA9PT0gJC5kYXRhKCBldmVudC50YXJnZXQsIHRoYXQud2lkZ2V0TmFtZSArICIucHJldmVudENsaWNrRXZlbnQiICkgKSB7CgkJCQkJJC5yZW1vdmVEYXRhKCBldmVudC50YXJnZXQsIHRoYXQud2lkZ2V0TmFtZSArICIucHJldmVudENsaWNrRXZlbnQiICk7CgkJCQkJZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7CgkJCQkJcmV0dXJuIGZhbHNlOwoJCQkJfQoJCQl9ICk7CgoJCXRoaXMuc3RhcnRlZCA9IGZhbHNlOwoJfSwKCgkvLyBUT0RPOiBtYWtlIHN1cmUgZGVzdHJveWluZyBvbmUgaW5zdGFuY2Ugb2YgbW91c2UgZG9lc24ndCBtZXNzIHdpdGgKCS8vIG90aGVyIGluc3RhbmNlcyBvZiBtb3VzZQoJX21vdXNlRGVzdHJveTogZnVuY3Rpb24oKSB7CgkJdGhpcy5lbGVtZW50Lm9mZiggIi4iICsgdGhpcy53aWRnZXROYW1lICk7CgkJaWYgKCB0aGlzLl9tb3VzZU1vdmVEZWxlZ2F0ZSApIHsKCQkJdGhpcy5kb2N1bWVudAoJCQkJLm9mZiggIm1vdXNlbW92ZS4iICsgdGhpcy53aWRnZXROYW1lLCB0aGlzLl9tb3VzZU1vdmVEZWxlZ2F0ZSApCgkJCQkub2ZmKCAibW91c2V1cC4iICsgdGhpcy53aWRnZXROYW1lLCB0aGlzLl9tb3VzZVVwRGVsZWdhdGUgKTsKCQl9Cgl9LAoKCV9tb3VzZURvd246IGZ1bmN0aW9uKCBldmVudCApIHsKCgkJLy8gZG9uJ3QgbGV0IG1vcmUgdGhhbiBvbmUgd2lkZ2V0IGhhbmRsZSBtb3VzZVN0YXJ0CgkJaWYgKCBtb3VzZUhhbmRsZWQgKSB7CgkJCXJldHVybjsKCQl9CgoJCXRoaXMuX21vdXNlTW92ZWQgPSBmYWxzZTsKCgkJLy8gV2UgbWF5IGhhdmUgbWlzc2VkIG1vdXNldXAgKG91dCBvZiB3aW5kb3cpCgkJKCB0aGlzLl9tb3VzZVN0YXJ0ZWQgJiYgdGhpcy5fbW91c2VVcCggZXZlbnQgKSApOwoKCQl0aGlzLl9tb3VzZURvd25FdmVudCA9IGV2ZW50OwoKCQl2YXIgdGhhdCA9IHRoaXMsCgkJCWJ0bklzTGVmdCA9ICggZXZlbnQud2hpY2ggPT09IDEgKSwKCgkJCS8vIGV2ZW50LnRhcmdldC5ub2RlTmFtZSB3b3JrcyBhcm91bmQgYSBidWcgaW4gSUUgOCB3aXRoCgkJCS8vIGRpc2FibGVkIGlucHV0cyAoIzc2MjApCgkJCWVsSXNDYW5jZWwgPSAoIHR5cGVvZiB0aGlzLm9wdGlvbnMuY2FuY2VsID09PSAic3RyaW5nIiAmJiBldmVudC50YXJnZXQubm9kZU5hbWUgPwoJCQkJJCggZXZlbnQudGFyZ2V0ICkuY2xvc2VzdCggdGhpcy5vcHRpb25zLmNhbmNlbCApLmxlbmd0aCA6IGZhbHNlICk7CgkJaWYgKCAhYnRuSXNMZWZ0IHx8IGVsSXNDYW5jZWwgfHwgIXRoaXMuX21vdXNlQ2FwdHVyZSggZXZlbnQgKSApIHsKCQkJcmV0dXJuIHRydWU7CgkJfQoKCQl0aGlzLm1vdXNlRGVsYXlNZXQgPSAhdGhpcy5vcHRpb25zLmRlbGF5OwoJCWlmICggIXRoaXMubW91c2VEZWxheU1ldCApIHsKCQkJdGhpcy5fbW91c2VEZWxheVRpbWVyID0gc2V0VGltZW91dCggZnVuY3Rpb24oKSB7CgkJCQl0aGF0Lm1vdXNlRGVsYXlNZXQgPSB0cnVlOwoJCQl9LCB0aGlzLm9wdGlvbnMuZGVsYXkgKTsKCQl9CgoJCWlmICggdGhpcy5fbW91c2VEaXN0YW5jZU1ldCggZXZlbnQgKSAmJiB0aGlzLl9tb3VzZURlbGF5TWV0KCBldmVudCApICkgewoJCQl0aGlzLl9tb3VzZVN0YXJ0ZWQgPSAoIHRoaXMuX21vdXNlU3RhcnQoIGV2ZW50ICkgIT09IGZhbHNlICk7CgkJCWlmICggIXRoaXMuX21vdXNlU3RhcnRlZCApIHsKCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCQlyZXR1cm4gdHJ1ZTsKCQkJfQoJCX0KCgkJLy8gQ2xpY2sgZXZlbnQgbWF5IG5ldmVyIGhhdmUgZmlyZWQgKEdlY2tvICYgT3BlcmEpCgkJaWYgKCB0cnVlID09PSAkLmRhdGEoIGV2ZW50LnRhcmdldCwgdGhpcy53aWRnZXROYW1lICsgIi5wcmV2ZW50Q2xpY2tFdmVudCIgKSApIHsKCQkJJC5yZW1vdmVEYXRhKCBldmVudC50YXJnZXQsIHRoaXMud2lkZ2V0TmFtZSArICIucHJldmVudENsaWNrRXZlbnQiICk7CgkJfQoKCQkvLyBUaGVzZSBkZWxlZ2F0ZXMgYXJlIHJlcXVpcmVkIHRvIGtlZXAgY29udGV4dAoJCXRoaXMuX21vdXNlTW92ZURlbGVnYXRlID0gZnVuY3Rpb24oIGV2ZW50ICkgewoJCQlyZXR1cm4gdGhhdC5fbW91c2VNb3ZlKCBldmVudCApOwoJCX07CgkJdGhpcy5fbW91c2VVcERlbGVnYXRlID0gZnVuY3Rpb24oIGV2ZW50ICkgewoJCQlyZXR1cm4gdGhhdC5fbW91c2VVcCggZXZlbnQgKTsKCQl9OwoKCQl0aGlzLmRvY3VtZW50CgkJCS5vbiggIm1vdXNlbW92ZS4iICsgdGhpcy53aWRnZXROYW1lLCB0aGlzLl9tb3VzZU1vdmVEZWxlZ2F0ZSApCgkJCS5vbiggIm1vdXNldXAuIiArIHRoaXMud2lkZ2V0TmFtZSwgdGhpcy5fbW91c2VVcERlbGVnYXRlICk7CgoJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgoJCW1vdXNlSGFuZGxlZCA9IHRydWU7CgkJcmV0dXJuIHRydWU7Cgl9LAoKCV9tb3VzZU1vdmU6IGZ1bmN0aW9uKCBldmVudCApIHsKCgkJLy8gT25seSBjaGVjayBmb3IgbW91c2V1cHMgb3V0c2lkZSB0aGUgZG9jdW1lbnQgaWYgeW91J3ZlIG1vdmVkIGluc2lkZSB0aGUgZG9jdW1lbnQKCQkvLyBhdCBsZWFzdCBvbmNlLiBUaGlzIHByZXZlbnRzIHRoZSBmaXJpbmcgb2YgbW91c2V1cCBpbiB0aGUgY2FzZSBvZiBJRTw5LCB3aGljaCB3aWxsCgkJLy8gZmlyZSBhIG1vdXNlbW92ZSBldmVudCBpZiBjb250ZW50IGlzIHBsYWNlZCB1bmRlciB0aGUgY3Vyc29yLiBTZWUgIzc3NzgKCQkvLyBTdXBwb3J0OiBJRSA8OQoJCWlmICggdGhpcy5fbW91c2VNb3ZlZCApIHsKCgkJCS8vIElFIG1vdXNldXAgY2hlY2sgLSBtb3VzZXVwIGhhcHBlbmVkIHdoZW4gbW91c2Ugd2FzIG91dCBvZiB3aW5kb3cKCQkJaWYgKCAkLnVpLmllICYmICggIWRvY3VtZW50LmRvY3VtZW50TW9kZSB8fCBkb2N1bWVudC5kb2N1bWVudE1vZGUgPCA5ICkgJiYKCQkJCQkhZXZlbnQuYnV0dG9uICkgewoJCQkJcmV0dXJuIHRoaXMuX21vdXNlVXAoIGV2ZW50ICk7CgoJCQkvLyBJZnJhbWUgbW91c2V1cCBjaGVjayAtIG1vdXNldXAgb2NjdXJyZWQgaW4gYW5vdGhlciBkb2N1bWVudAoJCQl9IGVsc2UgaWYgKCAhZXZlbnQud2hpY2ggKSB7CgoJCQkJLy8gU3VwcG9ydDogU2FmYXJpIDw9OCAtIDkKCQkJCS8vIFNhZmFyaSBzZXRzIHdoaWNoIHRvIDAgaWYgeW91IHByZXNzIGFueSBvZiB0aGUgZm9sbG93aW5nIGtleXMKCQkJCS8vIGR1cmluZyBhIGRyYWcgKCMxNDQ2MSkKCQkJCWlmICggZXZlbnQub3JpZ2luYWxFdmVudC5hbHRLZXkgfHwgZXZlbnQub3JpZ2luYWxFdmVudC5jdHJsS2V5IHx8CgkJCQkJCWV2ZW50Lm9yaWdpbmFsRXZlbnQubWV0YUtleSB8fCBldmVudC5vcmlnaW5hbEV2ZW50LnNoaWZ0S2V5ICkgewoJCQkJCXRoaXMuaWdub3JlTWlzc2luZ1doaWNoID0gdHJ1ZTsKCQkJCX0gZWxzZSBpZiAoICF0aGlzLmlnbm9yZU1pc3NpbmdXaGljaCApIHsKCQkJCQlyZXR1cm4gdGhpcy5fbW91c2VVcCggZXZlbnQgKTsKCQkJCX0KCQkJfQoJCX0KCgkJaWYgKCBldmVudC53aGljaCB8fCBldmVudC5idXR0b24gKSB7CgkJCXRoaXMuX21vdXNlTW92ZWQgPSB0cnVlOwoJCX0KCgkJaWYgKCB0aGlzLl9tb3VzZVN0YXJ0ZWQgKSB7CgkJCXRoaXMuX21vdXNlRHJhZyggZXZlbnQgKTsKCQkJcmV0dXJuIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJfQoKCQlpZiAoIHRoaXMuX21vdXNlRGlzdGFuY2VNZXQoIGV2ZW50ICkgJiYgdGhpcy5fbW91c2VEZWxheU1ldCggZXZlbnQgKSApIHsKCQkJdGhpcy5fbW91c2VTdGFydGVkID0KCQkJCSggdGhpcy5fbW91c2VTdGFydCggdGhpcy5fbW91c2VEb3duRXZlbnQsIGV2ZW50ICkgIT09IGZhbHNlICk7CgkJCSggdGhpcy5fbW91c2VTdGFydGVkID8gdGhpcy5fbW91c2VEcmFnKCBldmVudCApIDogdGhpcy5fbW91c2VVcCggZXZlbnQgKSApOwoJCX0KCgkJcmV0dXJuICF0aGlzLl9tb3VzZVN0YXJ0ZWQ7Cgl9LAoKCV9tb3VzZVVwOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdGhpcy5kb2N1bWVudAoJCQkub2ZmKCAibW91c2Vtb3ZlLiIgKyB0aGlzLndpZGdldE5hbWUsIHRoaXMuX21vdXNlTW92ZURlbGVnYXRlICkKCQkJLm9mZiggIm1vdXNldXAuIiArIHRoaXMud2lkZ2V0TmFtZSwgdGhpcy5fbW91c2VVcERlbGVnYXRlICk7CgoJCWlmICggdGhpcy5fbW91c2VTdGFydGVkICkgewoJCQl0aGlzLl9tb3VzZVN0YXJ0ZWQgPSBmYWxzZTsKCgkJCWlmICggZXZlbnQudGFyZ2V0ID09PSB0aGlzLl9tb3VzZURvd25FdmVudC50YXJnZXQgKSB7CgkJCQkkLmRhdGEoIGV2ZW50LnRhcmdldCwgdGhpcy53aWRnZXROYW1lICsgIi5wcmV2ZW50Q2xpY2tFdmVudCIsIHRydWUgKTsKCQkJfQoKCQkJdGhpcy5fbW91c2VTdG9wKCBldmVudCApOwoJCX0KCgkJaWYgKCB0aGlzLl9tb3VzZURlbGF5VGltZXIgKSB7CgkJCWNsZWFyVGltZW91dCggdGhpcy5fbW91c2VEZWxheVRpbWVyICk7CgkJCWRlbGV0ZSB0aGlzLl9tb3VzZURlbGF5VGltZXI7CgkJfQoKCQl0aGlzLmlnbm9yZU1pc3NpbmdXaGljaCA9IGZhbHNlOwoJCW1vdXNlSGFuZGxlZCA9IGZhbHNlOwoJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7Cgl9LAoKCV9tb3VzZURpc3RhbmNlTWV0OiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJcmV0dXJuICggTWF0aC5tYXgoCgkJCQlNYXRoLmFicyggdGhpcy5fbW91c2VEb3duRXZlbnQucGFnZVggLSBldmVudC5wYWdlWCApLAoJCQkJTWF0aC5hYnMoIHRoaXMuX21vdXNlRG93bkV2ZW50LnBhZ2VZIC0gZXZlbnQucGFnZVkgKQoJCQkpID49IHRoaXMub3B0aW9ucy5kaXN0YW5jZQoJCSk7Cgl9LAoKCV9tb3VzZURlbGF5TWV0OiBmdW5jdGlvbiggLyogZXZlbnQgKi8gKSB7CgkJcmV0dXJuIHRoaXMubW91c2VEZWxheU1ldDsKCX0sCgoJLy8gVGhlc2UgYXJlIHBsYWNlaG9sZGVyIG1ldGhvZHMsIHRvIGJlIG92ZXJyaWRlbiBieSBleHRlbmRpbmcgcGx1Z2luCglfbW91c2VTdGFydDogZnVuY3Rpb24oIC8qIGV2ZW50ICovICkge30sCglfbW91c2VEcmFnOiBmdW5jdGlvbiggLyogZXZlbnQgKi8gKSB7fSwKCV9tb3VzZVN0b3A6IGZ1bmN0aW9uKCAvKiBldmVudCAqLyApIHt9LAoJX21vdXNlQ2FwdHVyZTogZnVuY3Rpb24oIC8qIGV2ZW50ICovICkgeyByZXR1cm4gdHJ1ZTsgfQp9ICk7CgoKCgovLyAkLnVpLnBsdWdpbiBpcyBkZXByZWNhdGVkLiBVc2UgJC53aWRnZXQoKSBleHRlbnNpb25zIGluc3RlYWQuCnZhciBwbHVnaW4gPSAkLnVpLnBsdWdpbiA9IHsKCWFkZDogZnVuY3Rpb24oIG1vZHVsZSwgb3B0aW9uLCBzZXQgKSB7CgkJdmFyIGksCgkJCXByb3RvID0gJC51aVsgbW9kdWxlIF0ucHJvdG90eXBlOwoJCWZvciAoIGkgaW4gc2V0ICkgewoJCQlwcm90by5wbHVnaW5zWyBpIF0gPSBwcm90by5wbHVnaW5zWyBpIF0gfHwgW107CgkJCXByb3RvLnBsdWdpbnNbIGkgXS5wdXNoKCBbIG9wdGlvbiwgc2V0WyBpIF0gXSApOwoJCX0KCX0sCgljYWxsOiBmdW5jdGlvbiggaW5zdGFuY2UsIG5hbWUsIGFyZ3MsIGFsbG93RGlzY29ubmVjdGVkICkgewoJCXZhciBpLAoJCQlzZXQgPSBpbnN0YW5jZS5wbHVnaW5zWyBuYW1lIF07CgoJCWlmICggIXNldCApIHsKCQkJcmV0dXJuOwoJCX0KCgkJaWYgKCAhYWxsb3dEaXNjb25uZWN0ZWQgJiYgKCAhaW5zdGFuY2UuZWxlbWVudFsgMCBdLnBhcmVudE5vZGUgfHwKCQkJCWluc3RhbmNlLmVsZW1lbnRbIDAgXS5wYXJlbnROb2RlLm5vZGVUeXBlID09PSAxMSApICkgewoJCQlyZXR1cm47CgkJfQoKCQlmb3IgKCBpID0gMDsgaSA8IHNldC5sZW5ndGg7IGkrKyApIHsKCQkJaWYgKCBpbnN0YW5jZS5vcHRpb25zWyBzZXRbIGkgXVsgMCBdIF0gKSB7CgkJCQlzZXRbIGkgXVsgMSBdLmFwcGx5KCBpbnN0YW5jZS5lbGVtZW50LCBhcmdzICk7CgkJCX0KCQl9Cgl9Cn07CgoKCnZhciBzYWZlQWN0aXZlRWxlbWVudCA9ICQudWkuc2FmZUFjdGl2ZUVsZW1lbnQgPSBmdW5jdGlvbiggZG9jdW1lbnQgKSB7Cgl2YXIgYWN0aXZlRWxlbWVudDsKCgkvLyBTdXBwb3J0OiBJRSA5IG9ubHkKCS8vIElFOSB0aHJvd3MgYW4gIlVuc3BlY2lmaWVkIGVycm9yIiBhY2Nlc3NpbmcgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBmcm9tIGFuIDxpZnJhbWU+Cgl0cnkgewoJCWFjdGl2ZUVsZW1lbnQgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50OwoJfSBjYXRjaCAoIGVycm9yICkgewoJCWFjdGl2ZUVsZW1lbnQgPSBkb2N1bWVudC5ib2R5OwoJfQoKCS8vIFN1cHBvcnQ6IElFIDkgLSAxMSBvbmx5CgkvLyBJRSBtYXkgcmV0dXJuIG51bGwgaW5zdGVhZCBvZiBhbiBlbGVtZW50CgkvLyBJbnRlcmVzdGluZ2x5LCB0aGlzIG9ubHkgc2VlbXMgdG8gb2NjdXIgd2hlbiBOT1QgaW4gYW4gaWZyYW1lCglpZiAoICFhY3RpdmVFbGVtZW50ICkgewoJCWFjdGl2ZUVsZW1lbnQgPSBkb2N1bWVudC5ib2R5OwoJfQoKCS8vIFN1cHBvcnQ6IElFIDExIG9ubHkKCS8vIElFMTEgcmV0dXJucyBhIHNlZW1pbmdseSBlbXB0eSBvYmplY3QgaW4gc29tZSBjYXNlcyB3aGVuIGFjY2Vzc2luZwoJLy8gZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBmcm9tIGFuIDxpZnJhbWU+CglpZiAoICFhY3RpdmVFbGVtZW50Lm5vZGVOYW1lICkgewoJCWFjdGl2ZUVsZW1lbnQgPSBkb2N1bWVudC5ib2R5OwoJfQoKCXJldHVybiBhY3RpdmVFbGVtZW50Owp9OwoKCgp2YXIgc2FmZUJsdXIgPSAkLnVpLnNhZmVCbHVyID0gZnVuY3Rpb24oIGVsZW1lbnQgKSB7CgoJLy8gU3VwcG9ydDogSUU5IC0gMTAgb25seQoJLy8gSWYgdGhlIDxib2R5PiBpcyBibHVycmVkLCBJRSB3aWxsIHN3aXRjaCB3aW5kb3dzLCBzZWUgIzk0MjAKCWlmICggZWxlbWVudCAmJiBlbGVtZW50Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkgIT09ICJib2R5IiApIHsKCQkkKCBlbGVtZW50ICkudHJpZ2dlciggImJsdXIiICk7Cgl9Cn07CgoKLyohCiAqIGpRdWVyeSBVSSBEcmFnZ2FibGUgMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiBEcmFnZ2FibGUKLy8+Pmdyb3VwOiBJbnRlcmFjdGlvbnMKLy8+PmRlc2NyaXB0aW9uOiBFbmFibGVzIGRyYWdnaW5nIGZ1bmN0aW9uYWxpdHkgZm9yIGFueSBlbGVtZW50LgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vZHJhZ2dhYmxlLwovLz4+ZGVtb3M6IGh0dHA6Ly9qcXVlcnl1aS5jb20vZHJhZ2dhYmxlLwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvZHJhZ2dhYmxlLmNzcwoKCgokLndpZGdldCggInVpLmRyYWdnYWJsZSIsICQudWkubW91c2UsIHsKCXZlcnNpb246ICIxLjEyLjEiLAoJd2lkZ2V0RXZlbnRQcmVmaXg6ICJkcmFnIiwKCW9wdGlvbnM6IHsKCQlhZGRDbGFzc2VzOiB0cnVlLAoJCWFwcGVuZFRvOiAicGFyZW50IiwKCQlheGlzOiBmYWxzZSwKCQljb25uZWN0VG9Tb3J0YWJsZTogZmFsc2UsCgkJY29udGFpbm1lbnQ6IGZhbHNlLAoJCWN1cnNvcjogImF1dG8iLAoJCWN1cnNvckF0OiBmYWxzZSwKCQlncmlkOiBmYWxzZSwKCQloYW5kbGU6IGZhbHNlLAoJCWhlbHBlcjogIm9yaWdpbmFsIiwKCQlpZnJhbWVGaXg6IGZhbHNlLAoJCW9wYWNpdHk6IGZhbHNlLAoJCXJlZnJlc2hQb3NpdGlvbnM6IGZhbHNlLAoJCXJldmVydDogZmFsc2UsCgkJcmV2ZXJ0RHVyYXRpb246IDUwMCwKCQlzY29wZTogImRlZmF1bHQiLAoJCXNjcm9sbDogdHJ1ZSwKCQlzY3JvbGxTZW5zaXRpdml0eTogMjAsCgkJc2Nyb2xsU3BlZWQ6IDIwLAoJCXNuYXA6IGZhbHNlLAoJCXNuYXBNb2RlOiAiYm90aCIsCgkJc25hcFRvbGVyYW5jZTogMjAsCgkJc3RhY2s6IGZhbHNlLAoJCXpJbmRleDogZmFsc2UsCgoJCS8vIENhbGxiYWNrcwoJCWRyYWc6IG51bGwsCgkJc3RhcnQ6IG51bGwsCgkJc3RvcDogbnVsbAoJfSwKCV9jcmVhdGU6IGZ1bmN0aW9uKCkgewoKCQlpZiAoIHRoaXMub3B0aW9ucy5oZWxwZXIgPT09ICJvcmlnaW5hbCIgKSB7CgkJCXRoaXMuX3NldFBvc2l0aW9uUmVsYXRpdmUoKTsKCQl9CgkJaWYgKCB0aGlzLm9wdGlvbnMuYWRkQ2xhc3NlcyApIHsKCQkJdGhpcy5fYWRkQ2xhc3MoICJ1aS1kcmFnZ2FibGUiICk7CgkJfQoJCXRoaXMuX3NldEhhbmRsZUNsYXNzTmFtZSgpOwoKCQl0aGlzLl9tb3VzZUluaXQoKTsKCX0sCgoJX3NldE9wdGlvbjogZnVuY3Rpb24oIGtleSwgdmFsdWUgKSB7CgkJdGhpcy5fc3VwZXIoIGtleSwgdmFsdWUgKTsKCQlpZiAoIGtleSA9PT0gImhhbmRsZSIgKSB7CgkJCXRoaXMuX3JlbW92ZUhhbmRsZUNsYXNzTmFtZSgpOwoJCQl0aGlzLl9zZXRIYW5kbGVDbGFzc05hbWUoKTsKCQl9Cgl9LAoKCV9kZXN0cm95OiBmdW5jdGlvbigpIHsKCQlpZiAoICggdGhpcy5oZWxwZXIgfHwgdGhpcy5lbGVtZW50ICkuaXMoICIudWktZHJhZ2dhYmxlLWRyYWdnaW5nIiApICkgewoJCQl0aGlzLmRlc3Ryb3lPbkNsZWFyID0gdHJ1ZTsKCQkJcmV0dXJuOwoJCX0KCQl0aGlzLl9yZW1vdmVIYW5kbGVDbGFzc05hbWUoKTsKCQl0aGlzLl9tb3VzZURlc3Ryb3koKTsKCX0sCgoJX21vdXNlQ2FwdHVyZTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXZhciBvID0gdGhpcy5vcHRpb25zOwoKCQkvLyBBbW9uZyBvdGhlcnMsIHByZXZlbnQgYSBkcmFnIG9uIGEgcmVzaXphYmxlLWhhbmRsZQoJCWlmICggdGhpcy5oZWxwZXIgfHwgby5kaXNhYmxlZCB8fAoJCQkJJCggZXZlbnQudGFyZ2V0ICkuY2xvc2VzdCggIi51aS1yZXNpemFibGUtaGFuZGxlIiApLmxlbmd0aCA+IDAgKSB7CgkJCXJldHVybiBmYWxzZTsKCQl9CgoJCS8vUXVpdCBpZiB3ZSdyZSBub3Qgb24gYSB2YWxpZCBoYW5kbGUKCQl0aGlzLmhhbmRsZSA9IHRoaXMuX2dldEhhbmRsZSggZXZlbnQgKTsKCQlpZiAoICF0aGlzLmhhbmRsZSApIHsKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCgkJdGhpcy5fYmx1ckFjdGl2ZUVsZW1lbnQoIGV2ZW50ICk7CgoJCXRoaXMuX2Jsb2NrRnJhbWVzKCBvLmlmcmFtZUZpeCA9PT0gdHJ1ZSA/ICJpZnJhbWUiIDogby5pZnJhbWVGaXggKTsKCgkJcmV0dXJuIHRydWU7CgoJfSwKCglfYmxvY2tGcmFtZXM6IGZ1bmN0aW9uKCBzZWxlY3RvciApIHsKCQl0aGlzLmlmcmFtZUJsb2NrcyA9IHRoaXMuZG9jdW1lbnQuZmluZCggc2VsZWN0b3IgKS5tYXAoIGZ1bmN0aW9uKCkgewoJCQl2YXIgaWZyYW1lID0gJCggdGhpcyApOwoKCQkJcmV0dXJuICQoICI8ZGl2PiIgKQoJCQkJLmNzcyggInBvc2l0aW9uIiwgImFic29sdXRlIiApCgkJCQkuYXBwZW5kVG8oIGlmcmFtZS5wYXJlbnQoKSApCgkJCQkub3V0ZXJXaWR0aCggaWZyYW1lLm91dGVyV2lkdGgoKSApCgkJCQkub3V0ZXJIZWlnaHQoIGlmcmFtZS5vdXRlckhlaWdodCgpICkKCQkJCS5vZmZzZXQoIGlmcmFtZS5vZmZzZXQoKSApWyAwIF07CgkJfSApOwoJfSwKCglfdW5ibG9ja0ZyYW1lczogZnVuY3Rpb24oKSB7CgkJaWYgKCB0aGlzLmlmcmFtZUJsb2NrcyApIHsKCQkJdGhpcy5pZnJhbWVCbG9ja3MucmVtb3ZlKCk7CgkJCWRlbGV0ZSB0aGlzLmlmcmFtZUJsb2NrczsKCQl9Cgl9LAoKCV9ibHVyQWN0aXZlRWxlbWVudDogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXZhciBhY3RpdmVFbGVtZW50ID0gJC51aS5zYWZlQWN0aXZlRWxlbWVudCggdGhpcy5kb2N1bWVudFsgMCBdICksCgkJCXRhcmdldCA9ICQoIGV2ZW50LnRhcmdldCApOwoKCQkvLyBEb24ndCBibHVyIGlmIHRoZSBldmVudCBvY2N1cnJlZCBvbiBhbiBlbGVtZW50IHRoYXQgaXMgd2l0aGluCgkJLy8gdGhlIGN1cnJlbnRseSBmb2N1c2VkIGVsZW1lbnQKCQkvLyBTZWUgIzEwNTI3LCAjMTI0NzIKCQlpZiAoIHRhcmdldC5jbG9zZXN0KCBhY3RpdmVFbGVtZW50ICkubGVuZ3RoICkgewoJCQlyZXR1cm47CgkJfQoKCQkvLyBCbHVyIGFueSBlbGVtZW50IHRoYXQgY3VycmVudGx5IGhhcyBmb2N1cywgc2VlICM0MjYxCgkJJC51aS5zYWZlQmx1ciggYWN0aXZlRWxlbWVudCApOwoJfSwKCglfbW91c2VTdGFydDogZnVuY3Rpb24oIGV2ZW50ICkgewoKCQl2YXIgbyA9IHRoaXMub3B0aW9uczsKCgkJLy9DcmVhdGUgYW5kIGFwcGVuZCB0aGUgdmlzaWJsZSBoZWxwZXIKCQl0aGlzLmhlbHBlciA9IHRoaXMuX2NyZWF0ZUhlbHBlciggZXZlbnQgKTsKCgkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMuaGVscGVyLCAidWktZHJhZ2dhYmxlLWRyYWdnaW5nIiApOwoKCQkvL0NhY2hlIHRoZSBoZWxwZXIgc2l6ZQoJCXRoaXMuX2NhY2hlSGVscGVyUHJvcG9ydGlvbnMoKTsKCgkJLy9JZiBkZG1hbmFnZXIgaXMgdXNlZCBmb3IgZHJvcHBhYmxlcywgc2V0IHRoZSBnbG9iYWwgZHJhZ2dhYmxlCgkJaWYgKCAkLnVpLmRkbWFuYWdlciApIHsKCQkJJC51aS5kZG1hbmFnZXIuY3VycmVudCA9IHRoaXM7CgkJfQoKCQkvKgoJCSAqIC0gUG9zaXRpb24gZ2VuZXJhdGlvbiAtCgkJICogVGhpcyBibG9jayBnZW5lcmF0ZXMgZXZlcnl0aGluZyBwb3NpdGlvbiByZWxhdGVkIC0gaXQncyB0aGUgY29yZSBvZiBkcmFnZ2FibGVzLgoJCSAqLwoKCQkvL0NhY2hlIHRoZSBtYXJnaW5zIG9mIHRoZSBvcmlnaW5hbCBlbGVtZW50CgkJdGhpcy5fY2FjaGVNYXJnaW5zKCk7CgoJCS8vU3RvcmUgdGhlIGhlbHBlcidzIGNzcyBwb3NpdGlvbgoJCXRoaXMuY3NzUG9zaXRpb24gPSB0aGlzLmhlbHBlci5jc3MoICJwb3NpdGlvbiIgKTsKCQl0aGlzLnNjcm9sbFBhcmVudCA9IHRoaXMuaGVscGVyLnNjcm9sbFBhcmVudCggdHJ1ZSApOwoJCXRoaXMub2Zmc2V0UGFyZW50ID0gdGhpcy5oZWxwZXIub2Zmc2V0UGFyZW50KCk7CgkJdGhpcy5oYXNGaXhlZEFuY2VzdG9yID0gdGhpcy5oZWxwZXIucGFyZW50cygpLmZpbHRlciggZnVuY3Rpb24oKSB7CgkJCQlyZXR1cm4gJCggdGhpcyApLmNzcyggInBvc2l0aW9uIiApID09PSAiZml4ZWQiOwoJCQl9ICkubGVuZ3RoID4gMDsKCgkJLy9UaGUgZWxlbWVudCdzIGFic29sdXRlIHBvc2l0aW9uIG9uIHRoZSBwYWdlIG1pbnVzIG1hcmdpbnMKCQl0aGlzLnBvc2l0aW9uQWJzID0gdGhpcy5lbGVtZW50Lm9mZnNldCgpOwoJCXRoaXMuX3JlZnJlc2hPZmZzZXRzKCBldmVudCApOwoKCQkvL0dlbmVyYXRlIHRoZSBvcmlnaW5hbCBwb3NpdGlvbgoJCXRoaXMub3JpZ2luYWxQb3NpdGlvbiA9IHRoaXMucG9zaXRpb24gPSB0aGlzLl9nZW5lcmF0ZVBvc2l0aW9uKCBldmVudCwgZmFsc2UgKTsKCQl0aGlzLm9yaWdpbmFsUGFnZVggPSBldmVudC5wYWdlWDsKCQl0aGlzLm9yaWdpbmFsUGFnZVkgPSBldmVudC5wYWdlWTsKCgkJLy9BZGp1c3QgdGhlIG1vdXNlIG9mZnNldCByZWxhdGl2ZSB0byB0aGUgaGVscGVyIGlmICJjdXJzb3JBdCIgaXMgc3VwcGxpZWQKCQkoIG8uY3Vyc29yQXQgJiYgdGhpcy5fYWRqdXN0T2Zmc2V0RnJvbUhlbHBlciggby5jdXJzb3JBdCApICk7CgoJCS8vU2V0IGEgY29udGFpbm1lbnQgaWYgZ2l2ZW4gaW4gdGhlIG9wdGlvbnMKCQl0aGlzLl9zZXRDb250YWlubWVudCgpOwoKCQkvL1RyaWdnZXIgZXZlbnQgKyBjYWxsYmFja3MKCQlpZiAoIHRoaXMuX3RyaWdnZXIoICJzdGFydCIsIGV2ZW50ICkgPT09IGZhbHNlICkgewoJCQl0aGlzLl9jbGVhcigpOwoJCQlyZXR1cm4gZmFsc2U7CgkJfQoKCQkvL1JlY2FjaGUgdGhlIGhlbHBlciBzaXplCgkJdGhpcy5fY2FjaGVIZWxwZXJQcm9wb3J0aW9ucygpOwoKCQkvL1ByZXBhcmUgdGhlIGRyb3BwYWJsZSBvZmZzZXRzCgkJaWYgKCAkLnVpLmRkbWFuYWdlciAmJiAhby5kcm9wQmVoYXZpb3VyICkgewoJCQkkLnVpLmRkbWFuYWdlci5wcmVwYXJlT2Zmc2V0cyggdGhpcywgZXZlbnQgKTsKCQl9CgoJCS8vIEV4ZWN1dGUgdGhlIGRyYWcgb25jZSAtIHRoaXMgY2F1c2VzIHRoZSBoZWxwZXIgbm90IHRvIGJlIHZpc2libGUgYmVmb3JlIGdldHRpbmcgaXRzCgkJLy8gY29ycmVjdCBwb3NpdGlvbgoJCXRoaXMuX21vdXNlRHJhZyggZXZlbnQsIHRydWUgKTsKCgkJLy8gSWYgdGhlIGRkbWFuYWdlciBpcyB1c2VkIGZvciBkcm9wcGFibGVzLCBpbmZvcm0gdGhlIG1hbmFnZXIgdGhhdCBkcmFnZ2luZyBoYXMgc3RhcnRlZAoJCS8vIChzZWUgIzUwMDMpCgkJaWYgKCAkLnVpLmRkbWFuYWdlciApIHsKCQkJJC51aS5kZG1hbmFnZXIuZHJhZ1N0YXJ0KCB0aGlzLCBldmVudCApOwoJCX0KCgkJcmV0dXJuIHRydWU7Cgl9LAoKCV9yZWZyZXNoT2Zmc2V0czogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXRoaXMub2Zmc2V0ID0gewoJCQl0b3A6IHRoaXMucG9zaXRpb25BYnMudG9wIC0gdGhpcy5tYXJnaW5zLnRvcCwKCQkJbGVmdDogdGhpcy5wb3NpdGlvbkFicy5sZWZ0IC0gdGhpcy5tYXJnaW5zLmxlZnQsCgkJCXNjcm9sbDogZmFsc2UsCgkJCXBhcmVudDogdGhpcy5fZ2V0UGFyZW50T2Zmc2V0KCksCgkJCXJlbGF0aXZlOiB0aGlzLl9nZXRSZWxhdGl2ZU9mZnNldCgpCgkJfTsKCgkJdGhpcy5vZmZzZXQuY2xpY2sgPSB7CgkJCWxlZnQ6IGV2ZW50LnBhZ2VYIC0gdGhpcy5vZmZzZXQubGVmdCwKCQkJdG9wOiBldmVudC5wYWdlWSAtIHRoaXMub2Zmc2V0LnRvcAoJCX07Cgl9LAoKCV9tb3VzZURyYWc6IGZ1bmN0aW9uKCBldmVudCwgbm9Qcm9wYWdhdGlvbiApIHsKCgkJLy8gcmVzZXQgYW55IG5lY2Vzc2FyeSBjYWNoZWQgcHJvcGVydGllcyAoc2VlICM1MDA5KQoJCWlmICggdGhpcy5oYXNGaXhlZEFuY2VzdG9yICkgewoJCQl0aGlzLm9mZnNldC5wYXJlbnQgPSB0aGlzLl9nZXRQYXJlbnRPZmZzZXQoKTsKCQl9CgoJCS8vQ29tcHV0ZSB0aGUgaGVscGVycyBwb3NpdGlvbgoJCXRoaXMucG9zaXRpb24gPSB0aGlzLl9nZW5lcmF0ZVBvc2l0aW9uKCBldmVudCwgdHJ1ZSApOwoJCXRoaXMucG9zaXRpb25BYnMgPSB0aGlzLl9jb252ZXJ0UG9zaXRpb25UbyggImFic29sdXRlIiApOwoKCQkvL0NhbGwgcGx1Z2lucyBhbmQgY2FsbGJhY2tzIGFuZCB1c2UgdGhlIHJlc3VsdGluZyBwb3NpdGlvbiBpZiBzb21ldGhpbmcgaXMgcmV0dXJuZWQKCQlpZiAoICFub1Byb3BhZ2F0aW9uICkgewoJCQl2YXIgdWkgPSB0aGlzLl91aUhhc2goKTsKCQkJaWYgKCB0aGlzLl90cmlnZ2VyKCAiZHJhZyIsIGV2ZW50LCB1aSApID09PSBmYWxzZSApIHsKCQkJCXRoaXMuX21vdXNlVXAoIG5ldyAkLkV2ZW50KCAibW91c2V1cCIsIGV2ZW50ICkgKTsKCQkJCXJldHVybiBmYWxzZTsKCQkJfQoJCQl0aGlzLnBvc2l0aW9uID0gdWkucG9zaXRpb247CgkJfQoKCQl0aGlzLmhlbHBlclsgMCBdLnN0eWxlLmxlZnQgPSB0aGlzLnBvc2l0aW9uLmxlZnQgKyAicHgiOwoJCXRoaXMuaGVscGVyWyAwIF0uc3R5bGUudG9wID0gdGhpcy5wb3NpdGlvbi50b3AgKyAicHgiOwoKCQlpZiAoICQudWkuZGRtYW5hZ2VyICkgewoJCQkkLnVpLmRkbWFuYWdlci5kcmFnKCB0aGlzLCBldmVudCApOwoJCX0KCgkJcmV0dXJuIGZhbHNlOwoJfSwKCglfbW91c2VTdG9wOiBmdW5jdGlvbiggZXZlbnQgKSB7CgoJCS8vSWYgd2UgYXJlIHVzaW5nIGRyb3BwYWJsZXMsIGluZm9ybSB0aGUgbWFuYWdlciBhYm91dCB0aGUgZHJvcAoJCXZhciB0aGF0ID0gdGhpcywKCQkJZHJvcHBlZCA9IGZhbHNlOwoJCWlmICggJC51aS5kZG1hbmFnZXIgJiYgIXRoaXMub3B0aW9ucy5kcm9wQmVoYXZpb3VyICkgewoJCQlkcm9wcGVkID0gJC51aS5kZG1hbmFnZXIuZHJvcCggdGhpcywgZXZlbnQgKTsKCQl9CgoJCS8vaWYgYSBkcm9wIGNvbWVzIGZyb20gb3V0c2lkZSAoYSBzb3J0YWJsZSkKCQlpZiAoIHRoaXMuZHJvcHBlZCApIHsKCQkJZHJvcHBlZCA9IHRoaXMuZHJvcHBlZDsKCQkJdGhpcy5kcm9wcGVkID0gZmFsc2U7CgkJfQoKCQlpZiAoICggdGhpcy5vcHRpb25zLnJldmVydCA9PT0gImludmFsaWQiICYmICFkcm9wcGVkICkgfHwKCQkJCSggdGhpcy5vcHRpb25zLnJldmVydCA9PT0gInZhbGlkIiAmJiBkcm9wcGVkICkgfHwKCQkJCXRoaXMub3B0aW9ucy5yZXZlcnQgPT09IHRydWUgfHwgKCAkLmlzRnVuY3Rpb24oIHRoaXMub3B0aW9ucy5yZXZlcnQgKSAmJgoJCQkJdGhpcy5vcHRpb25zLnJldmVydC5jYWxsKCB0aGlzLmVsZW1lbnQsIGRyb3BwZWQgKSApCgkJKSB7CgkJCSQoIHRoaXMuaGVscGVyICkuYW5pbWF0ZSgKCQkJCXRoaXMub3JpZ2luYWxQb3NpdGlvbiwKCQkJCXBhcnNlSW50KCB0aGlzLm9wdGlvbnMucmV2ZXJ0RHVyYXRpb24sIDEwICksCgkJCQlmdW5jdGlvbigpIHsKCQkJCQlpZiAoIHRoYXQuX3RyaWdnZXIoICJzdG9wIiwgZXZlbnQgKSAhPT0gZmFsc2UgKSB7CgkJCQkJCXRoYXQuX2NsZWFyKCk7CgkJCQkJfQoJCQkJfQoJCQkpOwoJCX0gZWxzZSB7CgkJCWlmICggdGhpcy5fdHJpZ2dlciggInN0b3AiLCBldmVudCApICE9PSBmYWxzZSApIHsKCQkJCXRoaXMuX2NsZWFyKCk7CgkJCX0KCQl9CgoJCXJldHVybiBmYWxzZTsKCX0sCgoJX21vdXNlVXA6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl0aGlzLl91bmJsb2NrRnJhbWVzKCk7CgoJCS8vIElmIHRoZSBkZG1hbmFnZXIgaXMgdXNlZCBmb3IgZHJvcHBhYmxlcywgaW5mb3JtIHRoZSBtYW5hZ2VyIHRoYXQgZHJhZ2dpbmcgaGFzIHN0b3BwZWQKCQkvLyAoc2VlICM1MDAzKQoJCWlmICggJC51aS5kZG1hbmFnZXIgKSB7CgkJCSQudWkuZGRtYW5hZ2VyLmRyYWdTdG9wKCB0aGlzLCBldmVudCApOwoJCX0KCgkJLy8gT25seSBuZWVkIHRvIGZvY3VzIGlmIHRoZSBldmVudCBvY2N1cnJlZCBvbiB0aGUgZHJhZ2dhYmxlIGl0c2VsZiwgc2VlICMxMDUyNwoJCWlmICggdGhpcy5oYW5kbGVFbGVtZW50LmlzKCBldmVudC50YXJnZXQgKSApIHsKCgkJCS8vIFRoZSBpbnRlcmFjdGlvbiBpcyBvdmVyOyB3aGV0aGVyIG9yIG5vdCB0aGUgY2xpY2sgcmVzdWx0ZWQgaW4gYSBkcmFnLAoJCQkvLyBmb2N1cyB0aGUgZWxlbWVudAoJCQl0aGlzLmVsZW1lbnQudHJpZ2dlciggImZvY3VzIiApOwoJCX0KCgkJcmV0dXJuICQudWkubW91c2UucHJvdG90eXBlLl9tb3VzZVVwLmNhbGwoIHRoaXMsIGV2ZW50ICk7Cgl9LAoKCWNhbmNlbDogZnVuY3Rpb24oKSB7CgoJCWlmICggdGhpcy5oZWxwZXIuaXMoICIudWktZHJhZ2dhYmxlLWRyYWdnaW5nIiApICkgewoJCQl0aGlzLl9tb3VzZVVwKCBuZXcgJC5FdmVudCggIm1vdXNldXAiLCB7IHRhcmdldDogdGhpcy5lbGVtZW50WyAwIF0gfSApICk7CgkJfSBlbHNlIHsKCQkJdGhpcy5fY2xlYXIoKTsKCQl9CgoJCXJldHVybiB0aGlzOwoKCX0sCgoJX2dldEhhbmRsZTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXJldHVybiB0aGlzLm9wdGlvbnMuaGFuZGxlID8KCQkJISEkKCBldmVudC50YXJnZXQgKS5jbG9zZXN0KCB0aGlzLmVsZW1lbnQuZmluZCggdGhpcy5vcHRpb25zLmhhbmRsZSApICkubGVuZ3RoIDoKCQkJdHJ1ZTsKCX0sCgoJX3NldEhhbmRsZUNsYXNzTmFtZTogZnVuY3Rpb24oKSB7CgkJdGhpcy5oYW5kbGVFbGVtZW50ID0gdGhpcy5vcHRpb25zLmhhbmRsZSA/CgkJCXRoaXMuZWxlbWVudC5maW5kKCB0aGlzLm9wdGlvbnMuaGFuZGxlICkgOiB0aGlzLmVsZW1lbnQ7CgkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMuaGFuZGxlRWxlbWVudCwgInVpLWRyYWdnYWJsZS1oYW5kbGUiICk7Cgl9LAoKCV9yZW1vdmVIYW5kbGVDbGFzc05hbWU6IGZ1bmN0aW9uKCkgewoJCXRoaXMuX3JlbW92ZUNsYXNzKCB0aGlzLmhhbmRsZUVsZW1lbnQsICJ1aS1kcmFnZ2FibGUtaGFuZGxlIiApOwoJfSwKCglfY3JlYXRlSGVscGVyOiBmdW5jdGlvbiggZXZlbnQgKSB7CgoJCXZhciBvID0gdGhpcy5vcHRpb25zLAoJCQloZWxwZXJJc0Z1bmN0aW9uID0gJC5pc0Z1bmN0aW9uKCBvLmhlbHBlciApLAoJCQloZWxwZXIgPSBoZWxwZXJJc0Z1bmN0aW9uID8KCQkJCSQoIG8uaGVscGVyLmFwcGx5KCB0aGlzLmVsZW1lbnRbIDAgXSwgWyBldmVudCBdICkgKSA6CgkJCQkoIG8uaGVscGVyID09PSAiY2xvbmUiID8KCQkJCQl0aGlzLmVsZW1lbnQuY2xvbmUoKS5yZW1vdmVBdHRyKCAiaWQiICkgOgoJCQkJCXRoaXMuZWxlbWVudCApOwoKCQlpZiAoICFoZWxwZXIucGFyZW50cyggImJvZHkiICkubGVuZ3RoICkgewoJCQloZWxwZXIuYXBwZW5kVG8oICggby5hcHBlbmRUbyA9PT0gInBhcmVudCIgPwoJCQkJdGhpcy5lbGVtZW50WyAwIF0ucGFyZW50Tm9kZSA6CgkJCQlvLmFwcGVuZFRvICkgKTsKCQl9CgoJCS8vIEh0dHA6Ly9idWdzLmpxdWVyeXVpLmNvbS90aWNrZXQvOTQ0NgoJCS8vIGEgaGVscGVyIGZ1bmN0aW9uIGNhbiByZXR1cm4gdGhlIG9yaWdpbmFsIGVsZW1lbnQKCQkvLyB3aGljaCB3b3VsZG4ndCBoYXZlIGJlZW4gc2V0IHRvIHJlbGF0aXZlIGluIF9jcmVhdGUKCQlpZiAoIGhlbHBlcklzRnVuY3Rpb24gJiYgaGVscGVyWyAwIF0gPT09IHRoaXMuZWxlbWVudFsgMCBdICkgewoJCQl0aGlzLl9zZXRQb3NpdGlvblJlbGF0aXZlKCk7CgkJfQoKCQlpZiAoIGhlbHBlclsgMCBdICE9PSB0aGlzLmVsZW1lbnRbIDAgXSAmJgoJCQkJISggLyhmaXhlZHxhYnNvbHV0ZSkvICkudGVzdCggaGVscGVyLmNzcyggInBvc2l0aW9uIiApICkgKSB7CgkJCWhlbHBlci5jc3MoICJwb3NpdGlvbiIsICJhYnNvbHV0ZSIgKTsKCQl9CgoJCXJldHVybiBoZWxwZXI7CgoJfSwKCglfc2V0UG9zaXRpb25SZWxhdGl2ZTogZnVuY3Rpb24oKSB7CgkJaWYgKCAhKCAvXig/OnJ8YXxmKS8gKS50ZXN0KCB0aGlzLmVsZW1lbnQuY3NzKCAicG9zaXRpb24iICkgKSApIHsKCQkJdGhpcy5lbGVtZW50WyAwIF0uc3R5bGUucG9zaXRpb24gPSAicmVsYXRpdmUiOwoJCX0KCX0sCgoJX2FkanVzdE9mZnNldEZyb21IZWxwZXI6IGZ1bmN0aW9uKCBvYmogKSB7CgkJaWYgKCB0eXBlb2Ygb2JqID09PSAic3RyaW5nIiApIHsKCQkJb2JqID0gb2JqLnNwbGl0KCAiICIgKTsKCQl9CgkJaWYgKCAkLmlzQXJyYXkoIG9iaiApICkgewoJCQlvYmogPSB7IGxlZnQ6ICtvYmpbIDAgXSwgdG9wOiArb2JqWyAxIF0gfHwgMCB9OwoJCX0KCQlpZiAoICJsZWZ0IiBpbiBvYmogKSB7CgkJCXRoaXMub2Zmc2V0LmNsaWNrLmxlZnQgPSBvYmoubGVmdCArIHRoaXMubWFyZ2lucy5sZWZ0OwoJCX0KCQlpZiAoICJyaWdodCIgaW4gb2JqICkgewoJCQl0aGlzLm9mZnNldC5jbGljay5sZWZ0ID0gdGhpcy5oZWxwZXJQcm9wb3J0aW9ucy53aWR0aCAtIG9iai5yaWdodCArIHRoaXMubWFyZ2lucy5sZWZ0OwoJCX0KCQlpZiAoICJ0b3AiIGluIG9iaiApIHsKCQkJdGhpcy5vZmZzZXQuY2xpY2sudG9wID0gb2JqLnRvcCArIHRoaXMubWFyZ2lucy50b3A7CgkJfQoJCWlmICggImJvdHRvbSIgaW4gb2JqICkgewoJCQl0aGlzLm9mZnNldC5jbGljay50b3AgPSB0aGlzLmhlbHBlclByb3BvcnRpb25zLmhlaWdodCAtIG9iai5ib3R0b20gKyB0aGlzLm1hcmdpbnMudG9wOwoJCX0KCX0sCgoJX2lzUm9vdE5vZGU6IGZ1bmN0aW9uKCBlbGVtZW50ICkgewoJCXJldHVybiAoIC8oaHRtbHxib2R5KS9pICkudGVzdCggZWxlbWVudC50YWdOYW1lICkgfHwgZWxlbWVudCA9PT0gdGhpcy5kb2N1bWVudFsgMCBdOwoJfSwKCglfZ2V0UGFyZW50T2Zmc2V0OiBmdW5jdGlvbigpIHsKCgkJLy9HZXQgdGhlIG9mZnNldFBhcmVudCBhbmQgY2FjaGUgaXRzIHBvc2l0aW9uCgkJdmFyIHBvID0gdGhpcy5vZmZzZXRQYXJlbnQub2Zmc2V0KCksCgkJCWRvY3VtZW50ID0gdGhpcy5kb2N1bWVudFsgMCBdOwoKCQkvLyBUaGlzIGlzIGEgc3BlY2lhbCBjYXNlIHdoZXJlIHdlIG5lZWQgdG8gbW9kaWZ5IGEgb2Zmc2V0IGNhbGN1bGF0ZWQgb24gc3RhcnQsIHNpbmNlIHRoZQoJCS8vIGZvbGxvd2luZyBoYXBwZW5lZDoKCQkvLyAxLiBUaGUgcG9zaXRpb24gb2YgdGhlIGhlbHBlciBpcyBhYnNvbHV0ZSwgc28gaXQncyBwb3NpdGlvbiBpcyBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZQoJCS8vIG5leHQgcG9zaXRpb25lZCBwYXJlbnQKCQkvLyAyLiBUaGUgYWN0dWFsIG9mZnNldCBwYXJlbnQgaXMgYSBjaGlsZCBvZiB0aGUgc2Nyb2xsIHBhcmVudCwgYW5kIHRoZSBzY3JvbGwgcGFyZW50IGlzbid0CgkJLy8gdGhlIGRvY3VtZW50LCB3aGljaCBtZWFucyB0aGF0IHRoZSBzY3JvbGwgaXMgaW5jbHVkZWQgaW4gdGhlIGluaXRpYWwgY2FsY3VsYXRpb24gb2YgdGhlCgkJLy8gb2Zmc2V0IG9mIHRoZSBwYXJlbnQsIGFuZCBuZXZlciByZWNhbGN1bGF0ZWQgdXBvbiBkcmFnCgkJaWYgKCB0aGlzLmNzc1Bvc2l0aW9uID09PSAiYWJzb2x1dGUiICYmIHRoaXMuc2Nyb2xsUGFyZW50WyAwIF0gIT09IGRvY3VtZW50ICYmCgkJCQkkLmNvbnRhaW5zKCB0aGlzLnNjcm9sbFBhcmVudFsgMCBdLCB0aGlzLm9mZnNldFBhcmVudFsgMCBdICkgKSB7CgkJCXBvLmxlZnQgKz0gdGhpcy5zY3JvbGxQYXJlbnQuc2Nyb2xsTGVmdCgpOwoJCQlwby50b3AgKz0gdGhpcy5zY3JvbGxQYXJlbnQuc2Nyb2xsVG9wKCk7CgkJfQoKCQlpZiAoIHRoaXMuX2lzUm9vdE5vZGUoIHRoaXMub2Zmc2V0UGFyZW50WyAwIF0gKSApIHsKCQkJcG8gPSB7IHRvcDogMCwgbGVmdDogMCB9OwoJCX0KCgkJcmV0dXJuIHsKCQkJdG9wOiBwby50b3AgKyAoIHBhcnNlSW50KCB0aGlzLm9mZnNldFBhcmVudC5jc3MoICJib3JkZXJUb3BXaWR0aCIgKSwgMTAgKSB8fCAwICksCgkJCWxlZnQ6IHBvLmxlZnQgKyAoIHBhcnNlSW50KCB0aGlzLm9mZnNldFBhcmVudC5jc3MoICJib3JkZXJMZWZ0V2lkdGgiICksIDEwICkgfHwgMCApCgkJfTsKCgl9LAoKCV9nZXRSZWxhdGl2ZU9mZnNldDogZnVuY3Rpb24oKSB7CgkJaWYgKCB0aGlzLmNzc1Bvc2l0aW9uICE9PSAicmVsYXRpdmUiICkgewoJCQlyZXR1cm4geyB0b3A6IDAsIGxlZnQ6IDAgfTsKCQl9CgoJCXZhciBwID0gdGhpcy5lbGVtZW50LnBvc2l0aW9uKCksCgkJCXNjcm9sbElzUm9vdE5vZGUgPSB0aGlzLl9pc1Jvb3ROb2RlKCB0aGlzLnNjcm9sbFBhcmVudFsgMCBdICk7CgoJCXJldHVybiB7CgkJCXRvcDogcC50b3AgLSAoIHBhcnNlSW50KCB0aGlzLmhlbHBlci5jc3MoICJ0b3AiICksIDEwICkgfHwgMCApICsKCQkJCSggIXNjcm9sbElzUm9vdE5vZGUgPyB0aGlzLnNjcm9sbFBhcmVudC5zY3JvbGxUb3AoKSA6IDAgKSwKCQkJbGVmdDogcC5sZWZ0IC0gKCBwYXJzZUludCggdGhpcy5oZWxwZXIuY3NzKCAibGVmdCIgKSwgMTAgKSB8fCAwICkgKwoJCQkJKCAhc2Nyb2xsSXNSb290Tm9kZSA/IHRoaXMuc2Nyb2xsUGFyZW50LnNjcm9sbExlZnQoKSA6IDAgKQoJCX07CgoJfSwKCglfY2FjaGVNYXJnaW5zOiBmdW5jdGlvbigpIHsKCQl0aGlzLm1hcmdpbnMgPSB7CgkJCWxlZnQ6ICggcGFyc2VJbnQoIHRoaXMuZWxlbWVudC5jc3MoICJtYXJnaW5MZWZ0IiApLCAxMCApIHx8IDAgKSwKCQkJdG9wOiAoIHBhcnNlSW50KCB0aGlzLmVsZW1lbnQuY3NzKCAibWFyZ2luVG9wIiApLCAxMCApIHx8IDAgKSwKCQkJcmlnaHQ6ICggcGFyc2VJbnQoIHRoaXMuZWxlbWVudC5jc3MoICJtYXJnaW5SaWdodCIgKSwgMTAgKSB8fCAwICksCgkJCWJvdHRvbTogKCBwYXJzZUludCggdGhpcy5lbGVtZW50LmNzcyggIm1hcmdpbkJvdHRvbSIgKSwgMTAgKSB8fCAwICkKCQl9OwoJfSwKCglfY2FjaGVIZWxwZXJQcm9wb3J0aW9uczogZnVuY3Rpb24oKSB7CgkJdGhpcy5oZWxwZXJQcm9wb3J0aW9ucyA9IHsKCQkJd2lkdGg6IHRoaXMuaGVscGVyLm91dGVyV2lkdGgoKSwKCQkJaGVpZ2h0OiB0aGlzLmhlbHBlci5vdXRlckhlaWdodCgpCgkJfTsKCX0sCgoJX3NldENvbnRhaW5tZW50OiBmdW5jdGlvbigpIHsKCgkJdmFyIGlzVXNlclNjcm9sbGFibGUsIGMsIGNlLAoJCQlvID0gdGhpcy5vcHRpb25zLAoJCQlkb2N1bWVudCA9IHRoaXMuZG9jdW1lbnRbIDAgXTsKCgkJdGhpcy5yZWxhdGl2ZUNvbnRhaW5lciA9IG51bGw7CgoJCWlmICggIW8uY29udGFpbm1lbnQgKSB7CgkJCXRoaXMuY29udGFpbm1lbnQgPSBudWxsOwoJCQlyZXR1cm47CgkJfQoKCQlpZiAoIG8uY29udGFpbm1lbnQgPT09ICJ3aW5kb3ciICkgewoJCQl0aGlzLmNvbnRhaW5tZW50ID0gWwoJCQkJJCggd2luZG93ICkuc2Nyb2xsTGVmdCgpIC0gdGhpcy5vZmZzZXQucmVsYXRpdmUubGVmdCAtIHRoaXMub2Zmc2V0LnBhcmVudC5sZWZ0LAoJCQkJJCggd2luZG93ICkuc2Nyb2xsVG9wKCkgLSB0aGlzLm9mZnNldC5yZWxhdGl2ZS50b3AgLSB0aGlzLm9mZnNldC5wYXJlbnQudG9wLAoJCQkJJCggd2luZG93ICkuc2Nyb2xsTGVmdCgpICsgJCggd2luZG93ICkud2lkdGgoKSAtCgkJCQkJdGhpcy5oZWxwZXJQcm9wb3J0aW9ucy53aWR0aCAtIHRoaXMubWFyZ2lucy5sZWZ0LAoJCQkJJCggd2luZG93ICkuc2Nyb2xsVG9wKCkgKwoJCQkJCSggJCggd2luZG93ICkuaGVpZ2h0KCkgfHwgZG9jdW1lbnQuYm9keS5wYXJlbnROb2RlLnNjcm9sbEhlaWdodCApIC0KCQkJCQl0aGlzLmhlbHBlclByb3BvcnRpb25zLmhlaWdodCAtIHRoaXMubWFyZ2lucy50b3AKCQkJXTsKCQkJcmV0dXJuOwoJCX0KCgkJaWYgKCBvLmNvbnRhaW5tZW50ID09PSAiZG9jdW1lbnQiICkgewoJCQl0aGlzLmNvbnRhaW5tZW50ID0gWwoJCQkJMCwKCQkJCTAsCgkJCQkkKCBkb2N1bWVudCApLndpZHRoKCkgLSB0aGlzLmhlbHBlclByb3BvcnRpb25zLndpZHRoIC0gdGhpcy5tYXJnaW5zLmxlZnQsCgkJCQkoICQoIGRvY3VtZW50ICkuaGVpZ2h0KCkgfHwgZG9jdW1lbnQuYm9keS5wYXJlbnROb2RlLnNjcm9sbEhlaWdodCApIC0KCQkJCQl0aGlzLmhlbHBlclByb3BvcnRpb25zLmhlaWdodCAtIHRoaXMubWFyZ2lucy50b3AKCQkJXTsKCQkJcmV0dXJuOwoJCX0KCgkJaWYgKCBvLmNvbnRhaW5tZW50LmNvbnN0cnVjdG9yID09PSBBcnJheSApIHsKCQkJdGhpcy5jb250YWlubWVudCA9IG8uY29udGFpbm1lbnQ7CgkJCXJldHVybjsKCQl9CgoJCWlmICggby5jb250YWlubWVudCA9PT0gInBhcmVudCIgKSB7CgkJCW8uY29udGFpbm1lbnQgPSB0aGlzLmhlbHBlclsgMCBdLnBhcmVudE5vZGU7CgkJfQoKCQljID0gJCggby5jb250YWlubWVudCApOwoJCWNlID0gY1sgMCBdOwoKCQlpZiAoICFjZSApIHsKCQkJcmV0dXJuOwoJCX0KCgkJaXNVc2VyU2Nyb2xsYWJsZSA9IC8oc2Nyb2xsfGF1dG8pLy50ZXN0KCBjLmNzcyggIm92ZXJmbG93IiApICk7CgoJCXRoaXMuY29udGFpbm1lbnQgPSBbCgkJCSggcGFyc2VJbnQoIGMuY3NzKCAiYm9yZGVyTGVmdFdpZHRoIiApLCAxMCApIHx8IDAgKSArCgkJCQkoIHBhcnNlSW50KCBjLmNzcyggInBhZGRpbmdMZWZ0IiApLCAxMCApIHx8IDAgKSwKCQkJKCBwYXJzZUludCggYy5jc3MoICJib3JkZXJUb3BXaWR0aCIgKSwgMTAgKSB8fCAwICkgKwoJCQkJKCBwYXJzZUludCggYy5jc3MoICJwYWRkaW5nVG9wIiApLCAxMCApIHx8IDAgKSwKCQkJKCBpc1VzZXJTY3JvbGxhYmxlID8gTWF0aC5tYXgoIGNlLnNjcm9sbFdpZHRoLCBjZS5vZmZzZXRXaWR0aCApIDogY2Uub2Zmc2V0V2lkdGggKSAtCgkJCQkoIHBhcnNlSW50KCBjLmNzcyggImJvcmRlclJpZ2h0V2lkdGgiICksIDEwICkgfHwgMCApIC0KCQkJCSggcGFyc2VJbnQoIGMuY3NzKCAicGFkZGluZ1JpZ2h0IiApLCAxMCApIHx8IDAgKSAtCgkJCQl0aGlzLmhlbHBlclByb3BvcnRpb25zLndpZHRoIC0KCQkJCXRoaXMubWFyZ2lucy5sZWZ0IC0KCQkJCXRoaXMubWFyZ2lucy5yaWdodCwKCQkJKCBpc1VzZXJTY3JvbGxhYmxlID8gTWF0aC5tYXgoIGNlLnNjcm9sbEhlaWdodCwgY2Uub2Zmc2V0SGVpZ2h0ICkgOiBjZS5vZmZzZXRIZWlnaHQgKSAtCgkJCQkoIHBhcnNlSW50KCBjLmNzcyggImJvcmRlckJvdHRvbVdpZHRoIiApLCAxMCApIHx8IDAgKSAtCgkJCQkoIHBhcnNlSW50KCBjLmNzcyggInBhZGRpbmdCb3R0b20iICksIDEwICkgfHwgMCApIC0KCQkJCXRoaXMuaGVscGVyUHJvcG9ydGlvbnMuaGVpZ2h0IC0KCQkJCXRoaXMubWFyZ2lucy50b3AgLQoJCQkJdGhpcy5tYXJnaW5zLmJvdHRvbQoJCV07CgkJdGhpcy5yZWxhdGl2ZUNvbnRhaW5lciA9IGM7Cgl9LAoKCV9jb252ZXJ0UG9zaXRpb25UbzogZnVuY3Rpb24oIGQsIHBvcyApIHsKCgkJaWYgKCAhcG9zICkgewoJCQlwb3MgPSB0aGlzLnBvc2l0aW9uOwoJCX0KCgkJdmFyIG1vZCA9IGQgPT09ICJhYnNvbHV0ZSIgPyAxIDogLTEsCgkJCXNjcm9sbElzUm9vdE5vZGUgPSB0aGlzLl9pc1Jvb3ROb2RlKCB0aGlzLnNjcm9sbFBhcmVudFsgMCBdICk7CgoJCXJldHVybiB7CgkJCXRvcDogKAoKCQkJCS8vIFRoZSBhYnNvbHV0ZSBtb3VzZSBwb3NpdGlvbgoJCQkJcG9zLnRvcAkrCgoJCQkJLy8gT25seSBmb3IgcmVsYXRpdmUgcG9zaXRpb25lZCBub2RlczogUmVsYXRpdmUgb2Zmc2V0IGZyb20gZWxlbWVudCB0byBvZmZzZXQgcGFyZW50CgkJCQl0aGlzLm9mZnNldC5yZWxhdGl2ZS50b3AgKiBtb2QgKwoKCQkJCS8vIFRoZSBvZmZzZXRQYXJlbnQncyBvZmZzZXQgd2l0aG91dCBib3JkZXJzIChvZmZzZXQgKyBib3JkZXIpCgkJCQl0aGlzLm9mZnNldC5wYXJlbnQudG9wICogbW9kIC0KCQkJCSggKCB0aGlzLmNzc1Bvc2l0aW9uID09PSAiZml4ZWQiID8KCQkJCQktdGhpcy5vZmZzZXQuc2Nyb2xsLnRvcCA6CgkJCQkJKCBzY3JvbGxJc1Jvb3ROb2RlID8gMCA6IHRoaXMub2Zmc2V0LnNjcm9sbC50b3AgKSApICogbW9kICkKCQkJKSwKCQkJbGVmdDogKAoKCQkJCS8vIFRoZSBhYnNvbHV0ZSBtb3VzZSBwb3NpdGlvbgoJCQkJcG9zLmxlZnQgKwoKCQkJCS8vIE9ubHkgZm9yIHJlbGF0aXZlIHBvc2l0aW9uZWQgbm9kZXM6IFJlbGF0aXZlIG9mZnNldCBmcm9tIGVsZW1lbnQgdG8gb2Zmc2V0IHBhcmVudAoJCQkJdGhpcy5vZmZzZXQucmVsYXRpdmUubGVmdCAqIG1vZCArCgoJCQkJLy8gVGhlIG9mZnNldFBhcmVudCdzIG9mZnNldCB3aXRob3V0IGJvcmRlcnMgKG9mZnNldCArIGJvcmRlcikKCQkJCXRoaXMub2Zmc2V0LnBhcmVudC5sZWZ0ICogbW9kCS0KCQkJCSggKCB0aGlzLmNzc1Bvc2l0aW9uID09PSAiZml4ZWQiID8KCQkJCQktdGhpcy5vZmZzZXQuc2Nyb2xsLmxlZnQgOgoJCQkJCSggc2Nyb2xsSXNSb290Tm9kZSA/IDAgOiB0aGlzLm9mZnNldC5zY3JvbGwubGVmdCApICkgKiBtb2QgKQoJCQkpCgkJfTsKCgl9LAoKCV9nZW5lcmF0ZVBvc2l0aW9uOiBmdW5jdGlvbiggZXZlbnQsIGNvbnN0cmFpblBvc2l0aW9uICkgewoKCQl2YXIgY29udGFpbm1lbnQsIGNvLCB0b3AsIGxlZnQsCgkJCW8gPSB0aGlzLm9wdGlvbnMsCgkJCXNjcm9sbElzUm9vdE5vZGUgPSB0aGlzLl9pc1Jvb3ROb2RlKCB0aGlzLnNjcm9sbFBhcmVudFsgMCBdICksCgkJCXBhZ2VYID0gZXZlbnQucGFnZVgsCgkJCXBhZ2VZID0gZXZlbnQucGFnZVk7CgoJCS8vIENhY2hlIHRoZSBzY3JvbGwKCQlpZiAoICFzY3JvbGxJc1Jvb3ROb2RlIHx8ICF0aGlzLm9mZnNldC5zY3JvbGwgKSB7CgkJCXRoaXMub2Zmc2V0LnNjcm9sbCA9IHsKCQkJCXRvcDogdGhpcy5zY3JvbGxQYXJlbnQuc2Nyb2xsVG9wKCksCgkJCQlsZWZ0OiB0aGlzLnNjcm9sbFBhcmVudC5zY3JvbGxMZWZ0KCkKCQkJfTsKCQl9CgoJCS8qCgkJICogLSBQb3NpdGlvbiBjb25zdHJhaW5pbmcgLQoJCSAqIENvbnN0cmFpbiB0aGUgcG9zaXRpb24gdG8gYSBtaXggb2YgZ3JpZCwgY29udGFpbm1lbnQuCgkJICovCgoJCS8vIElmIHdlIGFyZSBub3QgZHJhZ2dpbmcgeWV0LCB3ZSB3b24ndCBjaGVjayBmb3Igb3B0aW9ucwoJCWlmICggY29uc3RyYWluUG9zaXRpb24gKSB7CgkJCWlmICggdGhpcy5jb250YWlubWVudCApIHsKCQkJCWlmICggdGhpcy5yZWxhdGl2ZUNvbnRhaW5lciApIHsKCQkJCQljbyA9IHRoaXMucmVsYXRpdmVDb250YWluZXIub2Zmc2V0KCk7CgkJCQkJY29udGFpbm1lbnQgPSBbCgkJCQkJCXRoaXMuY29udGFpbm1lbnRbIDAgXSArIGNvLmxlZnQsCgkJCQkJCXRoaXMuY29udGFpbm1lbnRbIDEgXSArIGNvLnRvcCwKCQkJCQkJdGhpcy5jb250YWlubWVudFsgMiBdICsgY28ubGVmdCwKCQkJCQkJdGhpcy5jb250YWlubWVudFsgMyBdICsgY28udG9wCgkJCQkJXTsKCQkJCX0gZWxzZSB7CgkJCQkJY29udGFpbm1lbnQgPSB0aGlzLmNvbnRhaW5tZW50OwoJCQkJfQoKCQkJCWlmICggZXZlbnQucGFnZVggLSB0aGlzLm9mZnNldC5jbGljay5sZWZ0IDwgY29udGFpbm1lbnRbIDAgXSApIHsKCQkJCQlwYWdlWCA9IGNvbnRhaW5tZW50WyAwIF0gKyB0aGlzLm9mZnNldC5jbGljay5sZWZ0OwoJCQkJfQoJCQkJaWYgKCBldmVudC5wYWdlWSAtIHRoaXMub2Zmc2V0LmNsaWNrLnRvcCA8IGNvbnRhaW5tZW50WyAxIF0gKSB7CgkJCQkJcGFnZVkgPSBjb250YWlubWVudFsgMSBdICsgdGhpcy5vZmZzZXQuY2xpY2sudG9wOwoJCQkJfQoJCQkJaWYgKCBldmVudC5wYWdlWCAtIHRoaXMub2Zmc2V0LmNsaWNrLmxlZnQgPiBjb250YWlubWVudFsgMiBdICkgewoJCQkJCXBhZ2VYID0gY29udGFpbm1lbnRbIDIgXSArIHRoaXMub2Zmc2V0LmNsaWNrLmxlZnQ7CgkJCQl9CgkJCQlpZiAoIGV2ZW50LnBhZ2VZIC0gdGhpcy5vZmZzZXQuY2xpY2sudG9wID4gY29udGFpbm1lbnRbIDMgXSApIHsKCQkJCQlwYWdlWSA9IGNvbnRhaW5tZW50WyAzIF0gKyB0aGlzLm9mZnNldC5jbGljay50b3A7CgkJCQl9CgkJCX0KCgkJCWlmICggby5ncmlkICkgewoKCQkJCS8vQ2hlY2sgZm9yIGdyaWQgZWxlbWVudHMgc2V0IHRvIDAgdG8gcHJldmVudCBkaXZpZGUgYnkgMCBlcnJvciBjYXVzaW5nIGludmFsaWQKCQkJCS8vIGFyZ3VtZW50IGVycm9ycyBpbiBJRSAoc2VlIHRpY2tldCAjNjk1MCkKCQkJCXRvcCA9IG8uZ3JpZFsgMSBdID8gdGhpcy5vcmlnaW5hbFBhZ2VZICsgTWF0aC5yb3VuZCggKCBwYWdlWSAtCgkJCQkJdGhpcy5vcmlnaW5hbFBhZ2VZICkgLyBvLmdyaWRbIDEgXSApICogby5ncmlkWyAxIF0gOiB0aGlzLm9yaWdpbmFsUGFnZVk7CgkJCQlwYWdlWSA9IGNvbnRhaW5tZW50ID8gKCAoIHRvcCAtIHRoaXMub2Zmc2V0LmNsaWNrLnRvcCA+PSBjb250YWlubWVudFsgMSBdIHx8CgkJCQkJdG9wIC0gdGhpcy5vZmZzZXQuY2xpY2sudG9wID4gY29udGFpbm1lbnRbIDMgXSApID8KCQkJCQkJdG9wIDoKCQkJCQkJKCAoIHRvcCAtIHRoaXMub2Zmc2V0LmNsaWNrLnRvcCA+PSBjb250YWlubWVudFsgMSBdICkgPwoJCQkJCQkJdG9wIC0gby5ncmlkWyAxIF0gOiB0b3AgKyBvLmdyaWRbIDEgXSApICkgOiB0b3A7CgoJCQkJbGVmdCA9IG8uZ3JpZFsgMCBdID8gdGhpcy5vcmlnaW5hbFBhZ2VYICsKCQkJCQlNYXRoLnJvdW5kKCAoIHBhZ2VYIC0gdGhpcy5vcmlnaW5hbFBhZ2VYICkgLyBvLmdyaWRbIDAgXSApICogby5ncmlkWyAwIF0gOgoJCQkJCXRoaXMub3JpZ2luYWxQYWdlWDsKCQkJCXBhZ2VYID0gY29udGFpbm1lbnQgPyAoICggbGVmdCAtIHRoaXMub2Zmc2V0LmNsaWNrLmxlZnQgPj0gY29udGFpbm1lbnRbIDAgXSB8fAoJCQkJCWxlZnQgLSB0aGlzLm9mZnNldC5jbGljay5sZWZ0ID4gY29udGFpbm1lbnRbIDIgXSApID8KCQkJCQkJbGVmdCA6CgkJCQkJCSggKCBsZWZ0IC0gdGhpcy5vZmZzZXQuY2xpY2subGVmdCA+PSBjb250YWlubWVudFsgMCBdICkgPwoJCQkJCQkJbGVmdCAtIG8uZ3JpZFsgMCBdIDogbGVmdCArIG8uZ3JpZFsgMCBdICkgKSA6IGxlZnQ7CgkJCX0KCgkJCWlmICggby5heGlzID09PSAieSIgKSB7CgkJCQlwYWdlWCA9IHRoaXMub3JpZ2luYWxQYWdlWDsKCQkJfQoKCQkJaWYgKCBvLmF4aXMgPT09ICJ4IiApIHsKCQkJCXBhZ2VZID0gdGhpcy5vcmlnaW5hbFBhZ2VZOwoJCQl9CgkJfQoKCQlyZXR1cm4gewoJCQl0b3A6ICgKCgkJCQkvLyBUaGUgYWJzb2x1dGUgbW91c2UgcG9zaXRpb24KCQkJCXBhZ2VZIC0KCgkJCQkvLyBDbGljayBvZmZzZXQgKHJlbGF0aXZlIHRvIHRoZSBlbGVtZW50KQoJCQkJdGhpcy5vZmZzZXQuY2xpY2sudG9wIC0KCgkJCQkvLyBPbmx5IGZvciByZWxhdGl2ZSBwb3NpdGlvbmVkIG5vZGVzOiBSZWxhdGl2ZSBvZmZzZXQgZnJvbSBlbGVtZW50IHRvIG9mZnNldCBwYXJlbnQKCQkJCXRoaXMub2Zmc2V0LnJlbGF0aXZlLnRvcCAtCgoJCQkJLy8gVGhlIG9mZnNldFBhcmVudCdzIG9mZnNldCB3aXRob3V0IGJvcmRlcnMgKG9mZnNldCArIGJvcmRlcikKCQkJCXRoaXMub2Zmc2V0LnBhcmVudC50b3AgKwoJCQkJKCB0aGlzLmNzc1Bvc2l0aW9uID09PSAiZml4ZWQiID8KCQkJCQktdGhpcy5vZmZzZXQuc2Nyb2xsLnRvcCA6CgkJCQkJKCBzY3JvbGxJc1Jvb3ROb2RlID8gMCA6IHRoaXMub2Zmc2V0LnNjcm9sbC50b3AgKSApCgkJCSksCgkJCWxlZnQ6ICgKCgkJCQkvLyBUaGUgYWJzb2x1dGUgbW91c2UgcG9zaXRpb24KCQkJCXBhZ2VYIC0KCgkJCQkvLyBDbGljayBvZmZzZXQgKHJlbGF0aXZlIHRvIHRoZSBlbGVtZW50KQoJCQkJdGhpcy5vZmZzZXQuY2xpY2subGVmdCAtCgoJCQkJLy8gT25seSBmb3IgcmVsYXRpdmUgcG9zaXRpb25lZCBub2RlczogUmVsYXRpdmUgb2Zmc2V0IGZyb20gZWxlbWVudCB0byBvZmZzZXQgcGFyZW50CgkJCQl0aGlzLm9mZnNldC5yZWxhdGl2ZS5sZWZ0IC0KCgkJCQkvLyBUaGUgb2Zmc2V0UGFyZW50J3Mgb2Zmc2V0IHdpdGhvdXQgYm9yZGVycyAob2Zmc2V0ICsgYm9yZGVyKQoJCQkJdGhpcy5vZmZzZXQucGFyZW50LmxlZnQgKwoJCQkJKCB0aGlzLmNzc1Bvc2l0aW9uID09PSAiZml4ZWQiID8KCQkJCQktdGhpcy5vZmZzZXQuc2Nyb2xsLmxlZnQgOgoJCQkJCSggc2Nyb2xsSXNSb290Tm9kZSA/IDAgOiB0aGlzLm9mZnNldC5zY3JvbGwubGVmdCApICkKCQkJKQoJCX07CgoJfSwKCglfY2xlYXI6IGZ1bmN0aW9uKCkgewoJCXRoaXMuX3JlbW92ZUNsYXNzKCB0aGlzLmhlbHBlciwgInVpLWRyYWdnYWJsZS1kcmFnZ2luZyIgKTsKCQlpZiAoIHRoaXMuaGVscGVyWyAwIF0gIT09IHRoaXMuZWxlbWVudFsgMCBdICYmICF0aGlzLmNhbmNlbEhlbHBlclJlbW92YWwgKSB7CgkJCXRoaXMuaGVscGVyLnJlbW92ZSgpOwoJCX0KCQl0aGlzLmhlbHBlciA9IG51bGw7CgkJdGhpcy5jYW5jZWxIZWxwZXJSZW1vdmFsID0gZmFsc2U7CgkJaWYgKCB0aGlzLmRlc3Ryb3lPbkNsZWFyICkgewoJCQl0aGlzLmRlc3Ryb3koKTsKCQl9Cgl9LAoKCS8vIEZyb20gbm93IG9uIGJ1bGsgc3R1ZmYgLSBtYWlubHkgaGVscGVycwoKCV90cmlnZ2VyOiBmdW5jdGlvbiggdHlwZSwgZXZlbnQsIHVpICkgewoJCXVpID0gdWkgfHwgdGhpcy5fdWlIYXNoKCk7CgkJJC51aS5wbHVnaW4uY2FsbCggdGhpcywgdHlwZSwgWyBldmVudCwgdWksIHRoaXMgXSwgdHJ1ZSApOwoKCQkvLyBBYnNvbHV0ZSBwb3NpdGlvbiBhbmQgb2Zmc2V0IChzZWUgIzY4ODQgKSBoYXZlIHRvIGJlIHJlY2FsY3VsYXRlZCBhZnRlciBwbHVnaW5zCgkJaWYgKCAvXihkcmFnfHN0YXJ0fHN0b3ApLy50ZXN0KCB0eXBlICkgKSB7CgkJCXRoaXMucG9zaXRpb25BYnMgPSB0aGlzLl9jb252ZXJ0UG9zaXRpb25UbyggImFic29sdXRlIiApOwoJCQl1aS5vZmZzZXQgPSB0aGlzLnBvc2l0aW9uQWJzOwoJCX0KCQlyZXR1cm4gJC5XaWRnZXQucHJvdG90eXBlLl90cmlnZ2VyLmNhbGwoIHRoaXMsIHR5cGUsIGV2ZW50LCB1aSApOwoJfSwKCglwbHVnaW5zOiB7fSwKCglfdWlIYXNoOiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gewoJCQloZWxwZXI6IHRoaXMuaGVscGVyLAoJCQlwb3NpdGlvbjogdGhpcy5wb3NpdGlvbiwKCQkJb3JpZ2luYWxQb3NpdGlvbjogdGhpcy5vcmlnaW5hbFBvc2l0aW9uLAoJCQlvZmZzZXQ6IHRoaXMucG9zaXRpb25BYnMKCQl9OwoJfQoKfSApOwoKJC51aS5wbHVnaW4uYWRkKCAiZHJhZ2dhYmxlIiwgImNvbm5lY3RUb1NvcnRhYmxlIiwgewoJc3RhcnQ6IGZ1bmN0aW9uKCBldmVudCwgdWksIGRyYWdnYWJsZSApIHsKCQl2YXIgdWlTb3J0YWJsZSA9ICQuZXh0ZW5kKCB7fSwgdWksIHsKCQkJaXRlbTogZHJhZ2dhYmxlLmVsZW1lbnQKCQl9ICk7CgoJCWRyYWdnYWJsZS5zb3J0YWJsZXMgPSBbXTsKCQkkKCBkcmFnZ2FibGUub3B0aW9ucy5jb25uZWN0VG9Tb3J0YWJsZSApLmVhY2goIGZ1bmN0aW9uKCkgewoJCQl2YXIgc29ydGFibGUgPSAkKCB0aGlzICkuc29ydGFibGUoICJpbnN0YW5jZSIgKTsKCgkJCWlmICggc29ydGFibGUgJiYgIXNvcnRhYmxlLm9wdGlvbnMuZGlzYWJsZWQgKSB7CgkJCQlkcmFnZ2FibGUuc29ydGFibGVzLnB1c2goIHNvcnRhYmxlICk7CgoJCQkJLy8gUmVmcmVzaFBvc2l0aW9ucyBpcyBjYWxsZWQgYXQgZHJhZyBzdGFydCB0byByZWZyZXNoIHRoZSBjb250YWluZXJDYWNoZQoJCQkJLy8gd2hpY2ggaXMgdXNlZCBpbiBkcmFnLiBUaGlzIGVuc3VyZXMgaXQncyBpbml0aWFsaXplZCBhbmQgc3luY2hyb25pemVkCgkJCQkvLyB3aXRoIGFueSBjaGFuZ2VzIHRoYXQgbWlnaHQgaGF2ZSBoYXBwZW5lZCBvbiB0aGUgcGFnZSBzaW5jZSBpbml0aWFsaXphdGlvbi4KCQkJCXNvcnRhYmxlLnJlZnJlc2hQb3NpdGlvbnMoKTsKCQkJCXNvcnRhYmxlLl90cmlnZ2VyKCAiYWN0aXZhdGUiLCBldmVudCwgdWlTb3J0YWJsZSApOwoJCQl9CgkJfSApOwoJfSwKCXN0b3A6IGZ1bmN0aW9uKCBldmVudCwgdWksIGRyYWdnYWJsZSApIHsKCQl2YXIgdWlTb3J0YWJsZSA9ICQuZXh0ZW5kKCB7fSwgdWksIHsKCQkJaXRlbTogZHJhZ2dhYmxlLmVsZW1lbnQKCQl9ICk7CgoJCWRyYWdnYWJsZS5jYW5jZWxIZWxwZXJSZW1vdmFsID0gZmFsc2U7CgoJCSQuZWFjaCggZHJhZ2dhYmxlLnNvcnRhYmxlcywgZnVuY3Rpb24oKSB7CgkJCXZhciBzb3J0YWJsZSA9IHRoaXM7CgoJCQlpZiAoIHNvcnRhYmxlLmlzT3ZlciApIHsKCQkJCXNvcnRhYmxlLmlzT3ZlciA9IDA7CgoJCQkJLy8gQWxsb3cgdGhpcyBzb3J0YWJsZSB0byBoYW5kbGUgcmVtb3ZpbmcgdGhlIGhlbHBlcgoJCQkJZHJhZ2dhYmxlLmNhbmNlbEhlbHBlclJlbW92YWwgPSB0cnVlOwoJCQkJc29ydGFibGUuY2FuY2VsSGVscGVyUmVtb3ZhbCA9IGZhbHNlOwoKCQkJCS8vIFVzZSBfc3RvcmVkQ1NTIFRvIHJlc3RvcmUgcHJvcGVydGllcyBpbiB0aGUgc29ydGFibGUsCgkJCQkvLyBhcyB0aGlzIGFsc28gaGFuZGxlcyByZXZlcnQgKCM5Njc1KSBzaW5jZSB0aGUgZHJhZ2dhYmxlCgkJCQkvLyBtYXkgaGF2ZSBtb2RpZmllZCB0aGVtIGluIHVuZXhwZWN0ZWQgd2F5cyAoIzg4MDkpCgkJCQlzb3J0YWJsZS5fc3RvcmVkQ1NTID0gewoJCQkJCXBvc2l0aW9uOiBzb3J0YWJsZS5wbGFjZWhvbGRlci5jc3MoICJwb3NpdGlvbiIgKSwKCQkJCQl0b3A6IHNvcnRhYmxlLnBsYWNlaG9sZGVyLmNzcyggInRvcCIgKSwKCQkJCQlsZWZ0OiBzb3J0YWJsZS5wbGFjZWhvbGRlci5jc3MoICJsZWZ0IiApCgkJCQl9OwoKCQkJCXNvcnRhYmxlLl9tb3VzZVN0b3AoIGV2ZW50ICk7CgoJCQkJLy8gT25jZSBkcmFnIGhhcyBlbmRlZCwgdGhlIHNvcnRhYmxlIHNob3VsZCByZXR1cm4gdG8gdXNpbmcKCQkJCS8vIGl0cyBvcmlnaW5hbCBoZWxwZXIsIG5vdCB0aGUgc2hhcmVkIGhlbHBlciBmcm9tIGRyYWdnYWJsZQoJCQkJc29ydGFibGUub3B0aW9ucy5oZWxwZXIgPSBzb3J0YWJsZS5vcHRpb25zLl9oZWxwZXI7CgkJCX0gZWxzZSB7CgoJCQkJLy8gUHJldmVudCB0aGlzIFNvcnRhYmxlIGZyb20gcmVtb3ZpbmcgdGhlIGhlbHBlci4KCQkJCS8vIEhvd2V2ZXIsIGRvbid0IHNldCB0aGUgZHJhZ2dhYmxlIHRvIHJlbW92ZSB0aGUgaGVscGVyCgkJCQkvLyBlaXRoZXIgYXMgYW5vdGhlciBjb25uZWN0ZWQgU29ydGFibGUgbWF5IHlldCBoYW5kbGUgdGhlIHJlbW92YWwuCgkJCQlzb3J0YWJsZS5jYW5jZWxIZWxwZXJSZW1vdmFsID0gdHJ1ZTsKCgkJCQlzb3J0YWJsZS5fdHJpZ2dlciggImRlYWN0aXZhdGUiLCBldmVudCwgdWlTb3J0YWJsZSApOwoJCQl9CgkJfSApOwoJfSwKCWRyYWc6IGZ1bmN0aW9uKCBldmVudCwgdWksIGRyYWdnYWJsZSApIHsKCQkkLmVhY2goIGRyYWdnYWJsZS5zb3J0YWJsZXMsIGZ1bmN0aW9uKCkgewoJCQl2YXIgaW5uZXJtb3N0SW50ZXJzZWN0aW5nID0gZmFsc2UsCgkJCQlzb3J0YWJsZSA9IHRoaXM7CgoJCQkvLyBDb3B5IG92ZXIgdmFyaWFibGVzIHRoYXQgc29ydGFibGUncyBfaW50ZXJzZWN0c1dpdGggdXNlcwoJCQlzb3J0YWJsZS5wb3NpdGlvbkFicyA9IGRyYWdnYWJsZS5wb3NpdGlvbkFiczsKCQkJc29ydGFibGUuaGVscGVyUHJvcG9ydGlvbnMgPSBkcmFnZ2FibGUuaGVscGVyUHJvcG9ydGlvbnM7CgkJCXNvcnRhYmxlLm9mZnNldC5jbGljayA9IGRyYWdnYWJsZS5vZmZzZXQuY2xpY2s7CgoJCQlpZiAoIHNvcnRhYmxlLl9pbnRlcnNlY3RzV2l0aCggc29ydGFibGUuY29udGFpbmVyQ2FjaGUgKSApIHsKCQkJCWlubmVybW9zdEludGVyc2VjdGluZyA9IHRydWU7CgoJCQkJJC5lYWNoKCBkcmFnZ2FibGUuc29ydGFibGVzLCBmdW5jdGlvbigpIHsKCgkJCQkJLy8gQ29weSBvdmVyIHZhcmlhYmxlcyB0aGF0IHNvcnRhYmxlJ3MgX2ludGVyc2VjdHNXaXRoIHVzZXMKCQkJCQl0aGlzLnBvc2l0aW9uQWJzID0gZHJhZ2dhYmxlLnBvc2l0aW9uQWJzOwoJCQkJCXRoaXMuaGVscGVyUHJvcG9ydGlvbnMgPSBkcmFnZ2FibGUuaGVscGVyUHJvcG9ydGlvbnM7CgkJCQkJdGhpcy5vZmZzZXQuY2xpY2sgPSBkcmFnZ2FibGUub2Zmc2V0LmNsaWNrOwoKCQkJCQlpZiAoIHRoaXMgIT09IHNvcnRhYmxlICYmCgkJCQkJCQl0aGlzLl9pbnRlcnNlY3RzV2l0aCggdGhpcy5jb250YWluZXJDYWNoZSApICYmCgkJCQkJCQkkLmNvbnRhaW5zKCBzb3J0YWJsZS5lbGVtZW50WyAwIF0sIHRoaXMuZWxlbWVudFsgMCBdICkgKSB7CgkJCQkJCWlubmVybW9zdEludGVyc2VjdGluZyA9IGZhbHNlOwoJCQkJCX0KCgkJCQkJcmV0dXJuIGlubmVybW9zdEludGVyc2VjdGluZzsKCQkJCX0gKTsKCQkJfQoKCQkJaWYgKCBpbm5lcm1vc3RJbnRlcnNlY3RpbmcgKSB7CgoJCQkJLy8gSWYgaXQgaW50ZXJzZWN0cywgd2UgdXNlIGEgbGl0dGxlIGlzT3ZlciB2YXJpYWJsZSBhbmQgc2V0IGl0IG9uY2UsCgkJCQkvLyBzbyB0aGF0IHRoZSBtb3ZlLWluIHN0dWZmIGdldHMgZmlyZWQgb25seSBvbmNlLgoJCQkJaWYgKCAhc29ydGFibGUuaXNPdmVyICkgewoJCQkJCXNvcnRhYmxlLmlzT3ZlciA9IDE7CgoJCQkJCS8vIFN0b3JlIGRyYWdnYWJsZSdzIHBhcmVudCBpbiBjYXNlIHdlIG5lZWQgdG8gcmVhcHBlbmQgdG8gaXQgbGF0ZXIuCgkJCQkJZHJhZ2dhYmxlLl9wYXJlbnQgPSB1aS5oZWxwZXIucGFyZW50KCk7CgoJCQkJCXNvcnRhYmxlLmN1cnJlbnRJdGVtID0gdWkuaGVscGVyCgkJCQkJCS5hcHBlbmRUbyggc29ydGFibGUuZWxlbWVudCApCgkJCQkJCS5kYXRhKCAidWktc29ydGFibGUtaXRlbSIsIHRydWUgKTsKCgkJCQkJLy8gU3RvcmUgaGVscGVyIG9wdGlvbiB0byBsYXRlciByZXN0b3JlIGl0CgkJCQkJc29ydGFibGUub3B0aW9ucy5faGVscGVyID0gc29ydGFibGUub3B0aW9ucy5oZWxwZXI7CgoJCQkJCXNvcnRhYmxlLm9wdGlvbnMuaGVscGVyID0gZnVuY3Rpb24oKSB7CgkJCQkJCXJldHVybiB1aS5oZWxwZXJbIDAgXTsKCQkJCQl9OwoKCQkJCQkvLyBGaXJlIHRoZSBzdGFydCBldmVudHMgb2YgdGhlIHNvcnRhYmxlIHdpdGggb3VyIHBhc3NlZCBicm93c2VyIGV2ZW50LAoJCQkJCS8vIGFuZCBvdXIgb3duIGhlbHBlciAoc28gaXQgZG9lc24ndCBjcmVhdGUgYSBuZXcgb25lKQoJCQkJCWV2ZW50LnRhcmdldCA9IHNvcnRhYmxlLmN1cnJlbnRJdGVtWyAwIF07CgkJCQkJc29ydGFibGUuX21vdXNlQ2FwdHVyZSggZXZlbnQsIHRydWUgKTsKCQkJCQlzb3J0YWJsZS5fbW91c2VTdGFydCggZXZlbnQsIHRydWUsIHRydWUgKTsKCgkJCQkJLy8gQmVjYXVzZSB0aGUgYnJvd3NlciBldmVudCBpcyB3YXkgb2ZmIHRoZSBuZXcgYXBwZW5kZWQgcG9ydGxldCwKCQkJCQkvLyBtb2RpZnkgbmVjZXNzYXJ5IHZhcmlhYmxlcyB0byByZWZsZWN0IHRoZSBjaGFuZ2VzCgkJCQkJc29ydGFibGUub2Zmc2V0LmNsaWNrLnRvcCA9IGRyYWdnYWJsZS5vZmZzZXQuY2xpY2sudG9wOwoJCQkJCXNvcnRhYmxlLm9mZnNldC5jbGljay5sZWZ0ID0gZHJhZ2dhYmxlLm9mZnNldC5jbGljay5sZWZ0OwoJCQkJCXNvcnRhYmxlLm9mZnNldC5wYXJlbnQubGVmdCAtPSBkcmFnZ2FibGUub2Zmc2V0LnBhcmVudC5sZWZ0IC0KCQkJCQkJc29ydGFibGUub2Zmc2V0LnBhcmVudC5sZWZ0OwoJCQkJCXNvcnRhYmxlLm9mZnNldC5wYXJlbnQudG9wIC09IGRyYWdnYWJsZS5vZmZzZXQucGFyZW50LnRvcCAtCgkJCQkJCXNvcnRhYmxlLm9mZnNldC5wYXJlbnQudG9wOwoKCQkJCQlkcmFnZ2FibGUuX3RyaWdnZXIoICJ0b1NvcnRhYmxlIiwgZXZlbnQgKTsKCgkJCQkJLy8gSW5mb3JtIGRyYWdnYWJsZSB0aGF0IHRoZSBoZWxwZXIgaXMgaW4gYSB2YWxpZCBkcm9wIHpvbmUsCgkJCQkJLy8gdXNlZCBzb2xlbHkgaW4gdGhlIHJldmVydCBvcHRpb24gdG8gaGFuZGxlICJ2YWxpZC9pbnZhbGlkIi4KCQkJCQlkcmFnZ2FibGUuZHJvcHBlZCA9IHNvcnRhYmxlLmVsZW1lbnQ7CgoJCQkJCS8vIE5lZWQgdG8gcmVmcmVzaFBvc2l0aW9ucyBvZiBhbGwgc29ydGFibGVzIGluIHRoZSBjYXNlIHRoYXQKCQkJCQkvLyBhZGRpbmcgdG8gb25lIHNvcnRhYmxlIGNoYW5nZXMgdGhlIGxvY2F0aW9uIG9mIHRoZSBvdGhlciBzb3J0YWJsZXMgKCM5Njc1KQoJCQkJCSQuZWFjaCggZHJhZ2dhYmxlLnNvcnRhYmxlcywgZnVuY3Rpb24oKSB7CgkJCQkJCXRoaXMucmVmcmVzaFBvc2l0aW9ucygpOwoJCQkJCX0gKTsKCgkJCQkJLy8gSGFjayBzbyByZWNlaXZlL3VwZGF0ZSBjYWxsYmFja3Mgd29yayAobW9zdGx5KQoJCQkJCWRyYWdnYWJsZS5jdXJyZW50SXRlbSA9IGRyYWdnYWJsZS5lbGVtZW50OwoJCQkJCXNvcnRhYmxlLmZyb21PdXRzaWRlID0gZHJhZ2dhYmxlOwoJCQkJfQoKCQkJCWlmICggc29ydGFibGUuY3VycmVudEl0ZW0gKSB7CgkJCQkJc29ydGFibGUuX21vdXNlRHJhZyggZXZlbnQgKTsKCgkJCQkJLy8gQ29weSB0aGUgc29ydGFibGUncyBwb3NpdGlvbiBiZWNhdXNlIHRoZSBkcmFnZ2FibGUncyBjYW4gcG90ZW50aWFsbHkgcmVmbGVjdAoJCQkJCS8vIGEgcmVsYXRpdmUgcG9zaXRpb24sIHdoaWxlIHNvcnRhYmxlIGlzIGFsd2F5cyBhYnNvbHV0ZSwgd2hpY2ggdGhlIGRyYWdnZWQKCQkJCQkvLyBlbGVtZW50IGhhcyBub3cgYmVjb21lLiAoIzg4MDkpCgkJCQkJdWkucG9zaXRpb24gPSBzb3J0YWJsZS5wb3NpdGlvbjsKCQkJCX0KCQkJfSBlbHNlIHsKCgkJCQkvLyBJZiBpdCBkb2Vzbid0IGludGVyc2VjdCB3aXRoIHRoZSBzb3J0YWJsZSwgYW5kIGl0IGludGVyc2VjdGVkIGJlZm9yZSwKCQkJCS8vIHdlIGZha2UgdGhlIGRyYWcgc3RvcCBvZiB0aGUgc29ydGFibGUsIGJ1dCBtYWtlIHN1cmUgaXQgZG9lc24ndCByZW1vdmUKCQkJCS8vIHRoZSBoZWxwZXIgYnkgdXNpbmcgY2FuY2VsSGVscGVyUmVtb3ZhbC4KCQkJCWlmICggc29ydGFibGUuaXNPdmVyICkgewoKCQkJCQlzb3J0YWJsZS5pc092ZXIgPSAwOwoJCQkJCXNvcnRhYmxlLmNhbmNlbEhlbHBlclJlbW92YWwgPSB0cnVlOwoKCQkJCQkvLyBDYWxsaW5nIHNvcnRhYmxlJ3MgbW91c2VTdG9wIHdvdWxkIHRyaWdnZXIgYSByZXZlcnQsCgkJCQkJLy8gc28gcmV2ZXJ0IG11c3QgYmUgdGVtcG9yYXJpbHkgZmFsc2UgdW50aWwgYWZ0ZXIgbW91c2VTdG9wIGlzIGNhbGxlZC4KCQkJCQlzb3J0YWJsZS5vcHRpb25zLl9yZXZlcnQgPSBzb3J0YWJsZS5vcHRpb25zLnJldmVydDsKCQkJCQlzb3J0YWJsZS5vcHRpb25zLnJldmVydCA9IGZhbHNlOwoKCQkJCQlzb3J0YWJsZS5fdHJpZ2dlciggIm91dCIsIGV2ZW50LCBzb3J0YWJsZS5fdWlIYXNoKCBzb3J0YWJsZSApICk7CgkJCQkJc29ydGFibGUuX21vdXNlU3RvcCggZXZlbnQsIHRydWUgKTsKCgkJCQkJLy8gUmVzdG9yZSBzb3J0YWJsZSBiZWhhdmlvcnMgdGhhdCB3ZXJlIG1vZGZpZWQKCQkJCQkvLyB3aGVuIHRoZSBkcmFnZ2FibGUgZW50ZXJlZCB0aGUgc29ydGFibGUgYXJlYSAoIzk0ODEpCgkJCQkJc29ydGFibGUub3B0aW9ucy5yZXZlcnQgPSBzb3J0YWJsZS5vcHRpb25zLl9yZXZlcnQ7CgkJCQkJc29ydGFibGUub3B0aW9ucy5oZWxwZXIgPSBzb3J0YWJsZS5vcHRpb25zLl9oZWxwZXI7CgoJCQkJCWlmICggc29ydGFibGUucGxhY2Vob2xkZXIgKSB7CgkJCQkJCXNvcnRhYmxlLnBsYWNlaG9sZGVyLnJlbW92ZSgpOwoJCQkJCX0KCgkJCQkJLy8gUmVzdG9yZSBhbmQgcmVjYWxjdWxhdGUgdGhlIGRyYWdnYWJsZSdzIG9mZnNldCBjb25zaWRlcmluZyB0aGUgc29ydGFibGUKCQkJCQkvLyBtYXkgaGF2ZSBtb2RpZmllZCB0aGVtIGluIHVuZXhwZWN0ZWQgd2F5cy4gKCM4ODA5LCAjMTA2NjkpCgkJCQkJdWkuaGVscGVyLmFwcGVuZFRvKCBkcmFnZ2FibGUuX3BhcmVudCApOwoJCQkJCWRyYWdnYWJsZS5fcmVmcmVzaE9mZnNldHMoIGV2ZW50ICk7CgkJCQkJdWkucG9zaXRpb24gPSBkcmFnZ2FibGUuX2dlbmVyYXRlUG9zaXRpb24oIGV2ZW50LCB0cnVlICk7CgoJCQkJCWRyYWdnYWJsZS5fdHJpZ2dlciggImZyb21Tb3J0YWJsZSIsIGV2ZW50ICk7CgoJCQkJCS8vIEluZm9ybSBkcmFnZ2FibGUgdGhhdCB0aGUgaGVscGVyIGlzIG5vIGxvbmdlciBpbiBhIHZhbGlkIGRyb3Agem9uZQoJCQkJCWRyYWdnYWJsZS5kcm9wcGVkID0gZmFsc2U7CgoJCQkJCS8vIE5lZWQgdG8gcmVmcmVzaFBvc2l0aW9ucyBvZiBhbGwgc29ydGFibGVzIGp1c3QgaW4gY2FzZSByZW1vdmluZwoJCQkJCS8vIGZyb20gb25lIHNvcnRhYmxlIGNoYW5nZXMgdGhlIGxvY2F0aW9uIG9mIG90aGVyIHNvcnRhYmxlcyAoIzk2NzUpCgkJCQkJJC5lYWNoKCBkcmFnZ2FibGUuc29ydGFibGVzLCBmdW5jdGlvbigpIHsKCQkJCQkJdGhpcy5yZWZyZXNoUG9zaXRpb25zKCk7CgkJCQkJfSApOwoJCQkJfQoJCQl9CgkJfSApOwoJfQp9ICk7CgokLnVpLnBsdWdpbi5hZGQoICJkcmFnZ2FibGUiLCAiY3Vyc29yIiwgewoJc3RhcnQ6IGZ1bmN0aW9uKCBldmVudCwgdWksIGluc3RhbmNlICkgewoJCXZhciB0ID0gJCggImJvZHkiICksCgkJCW8gPSBpbnN0YW5jZS5vcHRpb25zOwoKCQlpZiAoIHQuY3NzKCAiY3Vyc29yIiApICkgewoJCQlvLl9jdXJzb3IgPSB0LmNzcyggImN1cnNvciIgKTsKCQl9CgkJdC5jc3MoICJjdXJzb3IiLCBvLmN1cnNvciApOwoJfSwKCXN0b3A6IGZ1bmN0aW9uKCBldmVudCwgdWksIGluc3RhbmNlICkgewoJCXZhciBvID0gaW5zdGFuY2Uub3B0aW9uczsKCQlpZiAoIG8uX2N1cnNvciApIHsKCQkJJCggImJvZHkiICkuY3NzKCAiY3Vyc29yIiwgby5fY3Vyc29yICk7CgkJfQoJfQp9ICk7CgokLnVpLnBsdWdpbi5hZGQoICJkcmFnZ2FibGUiLCAib3BhY2l0eSIsIHsKCXN0YXJ0OiBmdW5jdGlvbiggZXZlbnQsIHVpLCBpbnN0YW5jZSApIHsKCQl2YXIgdCA9ICQoIHVpLmhlbHBlciApLAoJCQlvID0gaW5zdGFuY2Uub3B0aW9uczsKCQlpZiAoIHQuY3NzKCAib3BhY2l0eSIgKSApIHsKCQkJby5fb3BhY2l0eSA9IHQuY3NzKCAib3BhY2l0eSIgKTsKCQl9CgkJdC5jc3MoICJvcGFjaXR5Iiwgby5vcGFjaXR5ICk7Cgl9LAoJc3RvcDogZnVuY3Rpb24oIGV2ZW50LCB1aSwgaW5zdGFuY2UgKSB7CgkJdmFyIG8gPSBpbnN0YW5jZS5vcHRpb25zOwoJCWlmICggby5fb3BhY2l0eSApIHsKCQkJJCggdWkuaGVscGVyICkuY3NzKCAib3BhY2l0eSIsIG8uX29wYWNpdHkgKTsKCQl9Cgl9Cn0gKTsKCiQudWkucGx1Z2luLmFkZCggImRyYWdnYWJsZSIsICJzY3JvbGwiLCB7CglzdGFydDogZnVuY3Rpb24oIGV2ZW50LCB1aSwgaSApIHsKCQlpZiAoICFpLnNjcm9sbFBhcmVudE5vdEhpZGRlbiApIHsKCQkJaS5zY3JvbGxQYXJlbnROb3RIaWRkZW4gPSBpLmhlbHBlci5zY3JvbGxQYXJlbnQoIGZhbHNlICk7CgkJfQoKCQlpZiAoIGkuc2Nyb2xsUGFyZW50Tm90SGlkZGVuWyAwIF0gIT09IGkuZG9jdW1lbnRbIDAgXSAmJgoJCQkJaS5zY3JvbGxQYXJlbnROb3RIaWRkZW5bIDAgXS50YWdOYW1lICE9PSAiSFRNTCIgKSB7CgkJCWkub3ZlcmZsb3dPZmZzZXQgPSBpLnNjcm9sbFBhcmVudE5vdEhpZGRlbi5vZmZzZXQoKTsKCQl9Cgl9LAoJZHJhZzogZnVuY3Rpb24oIGV2ZW50LCB1aSwgaSAgKSB7CgoJCXZhciBvID0gaS5vcHRpb25zLAoJCQlzY3JvbGxlZCA9IGZhbHNlLAoJCQlzY3JvbGxQYXJlbnQgPSBpLnNjcm9sbFBhcmVudE5vdEhpZGRlblsgMCBdLAoJCQlkb2N1bWVudCA9IGkuZG9jdW1lbnRbIDAgXTsKCgkJaWYgKCBzY3JvbGxQYXJlbnQgIT09IGRvY3VtZW50ICYmIHNjcm9sbFBhcmVudC50YWdOYW1lICE9PSAiSFRNTCIgKSB7CgkJCWlmICggIW8uYXhpcyB8fCBvLmF4aXMgIT09ICJ4IiApIHsKCQkJCWlmICggKCBpLm92ZXJmbG93T2Zmc2V0LnRvcCArIHNjcm9sbFBhcmVudC5vZmZzZXRIZWlnaHQgKSAtIGV2ZW50LnBhZ2VZIDwKCQkJCQkJby5zY3JvbGxTZW5zaXRpdml0eSApIHsKCQkJCQlzY3JvbGxQYXJlbnQuc2Nyb2xsVG9wID0gc2Nyb2xsZWQgPSBzY3JvbGxQYXJlbnQuc2Nyb2xsVG9wICsgby5zY3JvbGxTcGVlZDsKCQkJCX0gZWxzZSBpZiAoIGV2ZW50LnBhZ2VZIC0gaS5vdmVyZmxvd09mZnNldC50b3AgPCBvLnNjcm9sbFNlbnNpdGl2aXR5ICkgewoJCQkJCXNjcm9sbFBhcmVudC5zY3JvbGxUb3AgPSBzY3JvbGxlZCA9IHNjcm9sbFBhcmVudC5zY3JvbGxUb3AgLSBvLnNjcm9sbFNwZWVkOwoJCQkJfQoJCQl9CgoJCQlpZiAoICFvLmF4aXMgfHwgby5heGlzICE9PSAieSIgKSB7CgkJCQlpZiAoICggaS5vdmVyZmxvd09mZnNldC5sZWZ0ICsgc2Nyb2xsUGFyZW50Lm9mZnNldFdpZHRoICkgLSBldmVudC5wYWdlWCA8CgkJCQkJCW8uc2Nyb2xsU2Vuc2l0aXZpdHkgKSB7CgkJCQkJc2Nyb2xsUGFyZW50LnNjcm9sbExlZnQgPSBzY3JvbGxlZCA9IHNjcm9sbFBhcmVudC5zY3JvbGxMZWZ0ICsgby5zY3JvbGxTcGVlZDsKCQkJCX0gZWxzZSBpZiAoIGV2ZW50LnBhZ2VYIC0gaS5vdmVyZmxvd09mZnNldC5sZWZ0IDwgby5zY3JvbGxTZW5zaXRpdml0eSApIHsKCQkJCQlzY3JvbGxQYXJlbnQuc2Nyb2xsTGVmdCA9IHNjcm9sbGVkID0gc2Nyb2xsUGFyZW50LnNjcm9sbExlZnQgLSBvLnNjcm9sbFNwZWVkOwoJCQkJfQoJCQl9CgoJCX0gZWxzZSB7CgoJCQlpZiAoICFvLmF4aXMgfHwgby5heGlzICE9PSAieCIgKSB7CgkJCQlpZiAoIGV2ZW50LnBhZ2VZIC0gJCggZG9jdW1lbnQgKS5zY3JvbGxUb3AoKSA8IG8uc2Nyb2xsU2Vuc2l0aXZpdHkgKSB7CgkJCQkJc2Nyb2xsZWQgPSAkKCBkb2N1bWVudCApLnNjcm9sbFRvcCggJCggZG9jdW1lbnQgKS5zY3JvbGxUb3AoKSAtIG8uc2Nyb2xsU3BlZWQgKTsKCQkJCX0gZWxzZSBpZiAoICQoIHdpbmRvdyApLmhlaWdodCgpIC0gKCBldmVudC5wYWdlWSAtICQoIGRvY3VtZW50ICkuc2Nyb2xsVG9wKCkgKSA8CgkJCQkJCW8uc2Nyb2xsU2Vuc2l0aXZpdHkgKSB7CgkJCQkJc2Nyb2xsZWQgPSAkKCBkb2N1bWVudCApLnNjcm9sbFRvcCggJCggZG9jdW1lbnQgKS5zY3JvbGxUb3AoKSArIG8uc2Nyb2xsU3BlZWQgKTsKCQkJCX0KCQkJfQoKCQkJaWYgKCAhby5heGlzIHx8IG8uYXhpcyAhPT0gInkiICkgewoJCQkJaWYgKCBldmVudC5wYWdlWCAtICQoIGRvY3VtZW50ICkuc2Nyb2xsTGVmdCgpIDwgby5zY3JvbGxTZW5zaXRpdml0eSApIHsKCQkJCQlzY3JvbGxlZCA9ICQoIGRvY3VtZW50ICkuc2Nyb2xsTGVmdCgKCQkJCQkJJCggZG9jdW1lbnQgKS5zY3JvbGxMZWZ0KCkgLSBvLnNjcm9sbFNwZWVkCgkJCQkJKTsKCQkJCX0gZWxzZSBpZiAoICQoIHdpbmRvdyApLndpZHRoKCkgLSAoIGV2ZW50LnBhZ2VYIC0gJCggZG9jdW1lbnQgKS5zY3JvbGxMZWZ0KCkgKSA8CgkJCQkJCW8uc2Nyb2xsU2Vuc2l0aXZpdHkgKSB7CgkJCQkJc2Nyb2xsZWQgPSAkKCBkb2N1bWVudCApLnNjcm9sbExlZnQoCgkJCQkJCSQoIGRvY3VtZW50ICkuc2Nyb2xsTGVmdCgpICsgby5zY3JvbGxTcGVlZAoJCQkJCSk7CgkJCQl9CgkJCX0KCgkJfQoKCQlpZiAoIHNjcm9sbGVkICE9PSBmYWxzZSAmJiAkLnVpLmRkbWFuYWdlciAmJiAhby5kcm9wQmVoYXZpb3VyICkgewoJCQkkLnVpLmRkbWFuYWdlci5wcmVwYXJlT2Zmc2V0cyggaSwgZXZlbnQgKTsKCQl9CgoJfQp9ICk7CgokLnVpLnBsdWdpbi5hZGQoICJkcmFnZ2FibGUiLCAic25hcCIsIHsKCXN0YXJ0OiBmdW5jdGlvbiggZXZlbnQsIHVpLCBpICkgewoKCQl2YXIgbyA9IGkub3B0aW9uczsKCgkJaS5zbmFwRWxlbWVudHMgPSBbXTsKCgkJJCggby5zbmFwLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcgPyAoIG8uc25hcC5pdGVtcyB8fCAiOmRhdGEodWktZHJhZ2dhYmxlKSIgKSA6IG8uc25hcCApCgkJCS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCXZhciAkdCA9ICQoIHRoaXMgKSwKCQkJCQkkbyA9ICR0Lm9mZnNldCgpOwoJCQkJaWYgKCB0aGlzICE9PSBpLmVsZW1lbnRbIDAgXSApIHsKCQkJCQlpLnNuYXBFbGVtZW50cy5wdXNoKCB7CgkJCQkJCWl0ZW06IHRoaXMsCgkJCQkJCXdpZHRoOiAkdC5vdXRlcldpZHRoKCksIGhlaWdodDogJHQub3V0ZXJIZWlnaHQoKSwKCQkJCQkJdG9wOiAkby50b3AsIGxlZnQ6ICRvLmxlZnQKCQkJCQl9ICk7CgkJCQl9CgkJCX0gKTsKCgl9LAoJZHJhZzogZnVuY3Rpb24oIGV2ZW50LCB1aSwgaW5zdCApIHsKCgkJdmFyIHRzLCBicywgbHMsIHJzLCBsLCByLCB0LCBiLCBpLCBmaXJzdCwKCQkJbyA9IGluc3Qub3B0aW9ucywKCQkJZCA9IG8uc25hcFRvbGVyYW5jZSwKCQkJeDEgPSB1aS5vZmZzZXQubGVmdCwgeDIgPSB4MSArIGluc3QuaGVscGVyUHJvcG9ydGlvbnMud2lkdGgsCgkJCXkxID0gdWkub2Zmc2V0LnRvcCwgeTIgPSB5MSArIGluc3QuaGVscGVyUHJvcG9ydGlvbnMuaGVpZ2h0OwoKCQlmb3IgKCBpID0gaW5zdC5zbmFwRWxlbWVudHMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0gKSB7CgoJCQlsID0gaW5zdC5zbmFwRWxlbWVudHNbIGkgXS5sZWZ0IC0gaW5zdC5tYXJnaW5zLmxlZnQ7CgkJCXIgPSBsICsgaW5zdC5zbmFwRWxlbWVudHNbIGkgXS53aWR0aDsKCQkJdCA9IGluc3Quc25hcEVsZW1lbnRzWyBpIF0udG9wIC0gaW5zdC5tYXJnaW5zLnRvcDsKCQkJYiA9IHQgKyBpbnN0LnNuYXBFbGVtZW50c1sgaSBdLmhlaWdodDsKCgkJCWlmICggeDIgPCBsIC0gZCB8fCB4MSA+IHIgKyBkIHx8IHkyIDwgdCAtIGQgfHwgeTEgPiBiICsgZCB8fAoJCQkJCSEkLmNvbnRhaW5zKCBpbnN0LnNuYXBFbGVtZW50c1sgaSBdLml0ZW0ub3duZXJEb2N1bWVudCwKCQkJCQlpbnN0LnNuYXBFbGVtZW50c1sgaSBdLml0ZW0gKSApIHsKCQkJCWlmICggaW5zdC5zbmFwRWxlbWVudHNbIGkgXS5zbmFwcGluZyApIHsKCQkJCQkoIGluc3Qub3B0aW9ucy5zbmFwLnJlbGVhc2UgJiYKCQkJCQkJaW5zdC5vcHRpb25zLnNuYXAucmVsZWFzZS5jYWxsKAoJCQkJCQkJaW5zdC5lbGVtZW50LAoJCQkJCQkJZXZlbnQsCgkJCQkJCQkkLmV4dGVuZCggaW5zdC5fdWlIYXNoKCksIHsgc25hcEl0ZW06IGluc3Quc25hcEVsZW1lbnRzWyBpIF0uaXRlbSB9ICkKCQkJCQkJKSApOwoJCQkJfQoJCQkJaW5zdC5zbmFwRWxlbWVudHNbIGkgXS5zbmFwcGluZyA9IGZhbHNlOwoJCQkJY29udGludWU7CgkJCX0KCgkJCWlmICggby5zbmFwTW9kZSAhPT0gImlubmVyIiApIHsKCQkJCXRzID0gTWF0aC5hYnMoIHQgLSB5MiApIDw9IGQ7CgkJCQlicyA9IE1hdGguYWJzKCBiIC0geTEgKSA8PSBkOwoJCQkJbHMgPSBNYXRoLmFicyggbCAtIHgyICkgPD0gZDsKCQkJCXJzID0gTWF0aC5hYnMoIHIgLSB4MSApIDw9IGQ7CgkJCQlpZiAoIHRzICkgewoJCQkJCXVpLnBvc2l0aW9uLnRvcCA9IGluc3QuX2NvbnZlcnRQb3NpdGlvblRvKCAicmVsYXRpdmUiLCB7CgkJCQkJCXRvcDogdCAtIGluc3QuaGVscGVyUHJvcG9ydGlvbnMuaGVpZ2h0LAoJCQkJCQlsZWZ0OiAwCgkJCQkJfSApLnRvcDsKCQkJCX0KCQkJCWlmICggYnMgKSB7CgkJCQkJdWkucG9zaXRpb24udG9wID0gaW5zdC5fY29udmVydFBvc2l0aW9uVG8oICJyZWxhdGl2ZSIsIHsKCQkJCQkJdG9wOiBiLAoJCQkJCQlsZWZ0OiAwCgkJCQkJfSApLnRvcDsKCQkJCX0KCQkJCWlmICggbHMgKSB7CgkJCQkJdWkucG9zaXRpb24ubGVmdCA9IGluc3QuX2NvbnZlcnRQb3NpdGlvblRvKCAicmVsYXRpdmUiLCB7CgkJCQkJCXRvcDogMCwKCQkJCQkJbGVmdDogbCAtIGluc3QuaGVscGVyUHJvcG9ydGlvbnMud2lkdGgKCQkJCQl9ICkubGVmdDsKCQkJCX0KCQkJCWlmICggcnMgKSB7CgkJCQkJdWkucG9zaXRpb24ubGVmdCA9IGluc3QuX2NvbnZlcnRQb3NpdGlvblRvKCAicmVsYXRpdmUiLCB7CgkJCQkJCXRvcDogMCwKCQkJCQkJbGVmdDogcgoJCQkJCX0gKS5sZWZ0OwoJCQkJfQoJCQl9CgoJCQlmaXJzdCA9ICggdHMgfHwgYnMgfHwgbHMgfHwgcnMgKTsKCgkJCWlmICggby5zbmFwTW9kZSAhPT0gIm91dGVyIiApIHsKCQkJCXRzID0gTWF0aC5hYnMoIHQgLSB5MSApIDw9IGQ7CgkJCQlicyA9IE1hdGguYWJzKCBiIC0geTIgKSA8PSBkOwoJCQkJbHMgPSBNYXRoLmFicyggbCAtIHgxICkgPD0gZDsKCQkJCXJzID0gTWF0aC5hYnMoIHIgLSB4MiApIDw9IGQ7CgkJCQlpZiAoIHRzICkgewoJCQkJCXVpLnBvc2l0aW9uLnRvcCA9IGluc3QuX2NvbnZlcnRQb3NpdGlvblRvKCAicmVsYXRpdmUiLCB7CgkJCQkJCXRvcDogdCwKCQkJCQkJbGVmdDogMAoJCQkJCX0gKS50b3A7CgkJCQl9CgkJCQlpZiAoIGJzICkgewoJCQkJCXVpLnBvc2l0aW9uLnRvcCA9IGluc3QuX2NvbnZlcnRQb3NpdGlvblRvKCAicmVsYXRpdmUiLCB7CgkJCQkJCXRvcDogYiAtIGluc3QuaGVscGVyUHJvcG9ydGlvbnMuaGVpZ2h0LAoJCQkJCQlsZWZ0OiAwCgkJCQkJfSApLnRvcDsKCQkJCX0KCQkJCWlmICggbHMgKSB7CgkJCQkJdWkucG9zaXRpb24ubGVmdCA9IGluc3QuX2NvbnZlcnRQb3NpdGlvblRvKCAicmVsYXRpdmUiLCB7CgkJCQkJCXRvcDogMCwKCQkJCQkJbGVmdDogbAoJCQkJCX0gKS5sZWZ0OwoJCQkJfQoJCQkJaWYgKCBycyApIHsKCQkJCQl1aS5wb3NpdGlvbi5sZWZ0ID0gaW5zdC5fY29udmVydFBvc2l0aW9uVG8oICJyZWxhdGl2ZSIsIHsKCQkJCQkJdG9wOiAwLAoJCQkJCQlsZWZ0OiByIC0gaW5zdC5oZWxwZXJQcm9wb3J0aW9ucy53aWR0aAoJCQkJCX0gKS5sZWZ0OwoJCQkJfQoJCQl9CgoJCQlpZiAoICFpbnN0LnNuYXBFbGVtZW50c1sgaSBdLnNuYXBwaW5nICYmICggdHMgfHwgYnMgfHwgbHMgfHwgcnMgfHwgZmlyc3QgKSApIHsKCQkJCSggaW5zdC5vcHRpb25zLnNuYXAuc25hcCAmJgoJCQkJCWluc3Qub3B0aW9ucy5zbmFwLnNuYXAuY2FsbCgKCQkJCQkJaW5zdC5lbGVtZW50LAoJCQkJCQlldmVudCwKCQkJCQkJJC5leHRlbmQoIGluc3QuX3VpSGFzaCgpLCB7CgkJCQkJCQlzbmFwSXRlbTogaW5zdC5zbmFwRWxlbWVudHNbIGkgXS5pdGVtCgkJCQkJCX0gKSApICk7CgkJCX0KCQkJaW5zdC5zbmFwRWxlbWVudHNbIGkgXS5zbmFwcGluZyA9ICggdHMgfHwgYnMgfHwgbHMgfHwgcnMgfHwgZmlyc3QgKTsKCgkJfQoKCX0KfSApOwoKJC51aS5wbHVnaW4uYWRkKCAiZHJhZ2dhYmxlIiwgInN0YWNrIiwgewoJc3RhcnQ6IGZ1bmN0aW9uKCBldmVudCwgdWksIGluc3RhbmNlICkgewoJCXZhciBtaW4sCgkJCW8gPSBpbnN0YW5jZS5vcHRpb25zLAoJCQlncm91cCA9ICQubWFrZUFycmF5KCAkKCBvLnN0YWNrICkgKS5zb3J0KCBmdW5jdGlvbiggYSwgYiApIHsKCQkJCXJldHVybiAoIHBhcnNlSW50KCAkKCBhICkuY3NzKCAiekluZGV4IiApLCAxMCApIHx8IDAgKSAtCgkJCQkJKCBwYXJzZUludCggJCggYiApLmNzcyggInpJbmRleCIgKSwgMTAgKSB8fCAwICk7CgkJCX0gKTsKCgkJaWYgKCAhZ3JvdXAubGVuZ3RoICkgeyByZXR1cm47IH0KCgkJbWluID0gcGFyc2VJbnQoICQoIGdyb3VwWyAwIF0gKS5jc3MoICJ6SW5kZXgiICksIDEwICkgfHwgMDsKCQkkKCBncm91cCApLmVhY2goIGZ1bmN0aW9uKCBpICkgewoJCQkkKCB0aGlzICkuY3NzKCAiekluZGV4IiwgbWluICsgaSApOwoJCX0gKTsKCQl0aGlzLmNzcyggInpJbmRleCIsICggbWluICsgZ3JvdXAubGVuZ3RoICkgKTsKCX0KfSApOwoKJC51aS5wbHVnaW4uYWRkKCAiZHJhZ2dhYmxlIiwgInpJbmRleCIsIHsKCXN0YXJ0OiBmdW5jdGlvbiggZXZlbnQsIHVpLCBpbnN0YW5jZSApIHsKCQl2YXIgdCA9ICQoIHVpLmhlbHBlciApLAoJCQlvID0gaW5zdGFuY2Uub3B0aW9uczsKCgkJaWYgKCB0LmNzcyggInpJbmRleCIgKSApIHsKCQkJby5fekluZGV4ID0gdC5jc3MoICJ6SW5kZXgiICk7CgkJfQoJCXQuY3NzKCAiekluZGV4Iiwgby56SW5kZXggKTsKCX0sCglzdG9wOiBmdW5jdGlvbiggZXZlbnQsIHVpLCBpbnN0YW5jZSApIHsKCQl2YXIgbyA9IGluc3RhbmNlLm9wdGlvbnM7CgoJCWlmICggby5fekluZGV4ICkgewoJCQkkKCB1aS5oZWxwZXIgKS5jc3MoICJ6SW5kZXgiLCBvLl96SW5kZXggKTsKCQl9Cgl9Cn0gKTsKCnZhciB3aWRnZXRzRHJhZ2dhYmxlID0gJC51aS5kcmFnZ2FibGU7CgoKLyohCiAqIGpRdWVyeSBVSSBEcm9wcGFibGUgMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiBEcm9wcGFibGUKLy8+Pmdyb3VwOiBJbnRlcmFjdGlvbnMKLy8+PmRlc2NyaXB0aW9uOiBFbmFibGVzIGRyb3AgdGFyZ2V0cyBmb3IgZHJhZ2dhYmxlIGVsZW1lbnRzLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vZHJvcHBhYmxlLwovLz4+ZGVtb3M6IGh0dHA6Ly9qcXVlcnl1aS5jb20vZHJvcHBhYmxlLwoKCgokLndpZGdldCggInVpLmRyb3BwYWJsZSIsIHsKCXZlcnNpb246ICIxLjEyLjEiLAoJd2lkZ2V0RXZlbnRQcmVmaXg6ICJkcm9wIiwKCW9wdGlvbnM6IHsKCQlhY2NlcHQ6ICIqIiwKCQlhZGRDbGFzc2VzOiB0cnVlLAoJCWdyZWVkeTogZmFsc2UsCgkJc2NvcGU6ICJkZWZhdWx0IiwKCQl0b2xlcmFuY2U6ICJpbnRlcnNlY3QiLAoKCQkvLyBDYWxsYmFja3MKCQlhY3RpdmF0ZTogbnVsbCwKCQlkZWFjdGl2YXRlOiBudWxsLAoJCWRyb3A6IG51bGwsCgkJb3V0OiBudWxsLAoJCW92ZXI6IG51bGwKCX0sCglfY3JlYXRlOiBmdW5jdGlvbigpIHsKCgkJdmFyIHByb3BvcnRpb25zLAoJCQlvID0gdGhpcy5vcHRpb25zLAoJCQlhY2NlcHQgPSBvLmFjY2VwdDsKCgkJdGhpcy5pc292ZXIgPSBmYWxzZTsKCQl0aGlzLmlzb3V0ID0gdHJ1ZTsKCgkJdGhpcy5hY2NlcHQgPSAkLmlzRnVuY3Rpb24oIGFjY2VwdCApID8gYWNjZXB0IDogZnVuY3Rpb24oIGQgKSB7CgkJCXJldHVybiBkLmlzKCBhY2NlcHQgKTsKCQl9OwoKCQl0aGlzLnByb3BvcnRpb25zID0gZnVuY3Rpb24oIC8qIHZhbHVlVG9Xcml0ZSAqLyApIHsKCQkJaWYgKCBhcmd1bWVudHMubGVuZ3RoICkgewoKCQkJCS8vIFN0b3JlIHRoZSBkcm9wcGFibGUncyBwcm9wb3J0aW9ucwoJCQkJcHJvcG9ydGlvbnMgPSBhcmd1bWVudHNbIDAgXTsKCQkJfSBlbHNlIHsKCgkJCQkvLyBSZXRyaWV2ZSBvciBkZXJpdmUgdGhlIGRyb3BwYWJsZSdzIHByb3BvcnRpb25zCgkJCQlyZXR1cm4gcHJvcG9ydGlvbnMgPwoJCQkJCXByb3BvcnRpb25zIDoKCQkJCQlwcm9wb3J0aW9ucyA9IHsKCQkJCQkJd2lkdGg6IHRoaXMuZWxlbWVudFsgMCBdLm9mZnNldFdpZHRoLAoJCQkJCQloZWlnaHQ6IHRoaXMuZWxlbWVudFsgMCBdLm9mZnNldEhlaWdodAoJCQkJCX07CgkJCX0KCQl9OwoKCQl0aGlzLl9hZGRUb01hbmFnZXIoIG8uc2NvcGUgKTsKCgkJby5hZGRDbGFzc2VzICYmIHRoaXMuX2FkZENsYXNzKCAidWktZHJvcHBhYmxlIiApOwoKCX0sCgoJX2FkZFRvTWFuYWdlcjogZnVuY3Rpb24oIHNjb3BlICkgewoKCQkvLyBBZGQgdGhlIHJlZmVyZW5jZSBhbmQgcG9zaXRpb25zIHRvIHRoZSBtYW5hZ2VyCgkJJC51aS5kZG1hbmFnZXIuZHJvcHBhYmxlc1sgc2NvcGUgXSA9ICQudWkuZGRtYW5hZ2VyLmRyb3BwYWJsZXNbIHNjb3BlIF0gfHwgW107CgkJJC51aS5kZG1hbmFnZXIuZHJvcHBhYmxlc1sgc2NvcGUgXS5wdXNoKCB0aGlzICk7Cgl9LAoKCV9zcGxpY2U6IGZ1bmN0aW9uKCBkcm9wICkgewoJCXZhciBpID0gMDsKCQlmb3IgKCA7IGkgPCBkcm9wLmxlbmd0aDsgaSsrICkgewoJCQlpZiAoIGRyb3BbIGkgXSA9PT0gdGhpcyApIHsKCQkJCWRyb3Auc3BsaWNlKCBpLCAxICk7CgkJCX0KCQl9Cgl9LAoKCV9kZXN0cm95OiBmdW5jdGlvbigpIHsKCQl2YXIgZHJvcCA9ICQudWkuZGRtYW5hZ2VyLmRyb3BwYWJsZXNbIHRoaXMub3B0aW9ucy5zY29wZSBdOwoKCQl0aGlzLl9zcGxpY2UoIGRyb3AgKTsKCX0sCgoJX3NldE9wdGlvbjogZnVuY3Rpb24oIGtleSwgdmFsdWUgKSB7CgoJCWlmICgga2V5ID09PSAiYWNjZXB0IiApIHsKCQkJdGhpcy5hY2NlcHQgPSAkLmlzRnVuY3Rpb24oIHZhbHVlICkgPyB2YWx1ZSA6IGZ1bmN0aW9uKCBkICkgewoJCQkJcmV0dXJuIGQuaXMoIHZhbHVlICk7CgkJCX07CgkJfSBlbHNlIGlmICgga2V5ID09PSAic2NvcGUiICkgewoJCQl2YXIgZHJvcCA9ICQudWkuZGRtYW5hZ2VyLmRyb3BwYWJsZXNbIHRoaXMub3B0aW9ucy5zY29wZSBdOwoKCQkJdGhpcy5fc3BsaWNlKCBkcm9wICk7CgkJCXRoaXMuX2FkZFRvTWFuYWdlciggdmFsdWUgKTsKCQl9CgoJCXRoaXMuX3N1cGVyKCBrZXksIHZhbHVlICk7Cgl9LAoKCV9hY3RpdmF0ZTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXZhciBkcmFnZ2FibGUgPSAkLnVpLmRkbWFuYWdlci5jdXJyZW50OwoKCQl0aGlzLl9hZGRBY3RpdmVDbGFzcygpOwoJCWlmICggZHJhZ2dhYmxlICkgewoJCQl0aGlzLl90cmlnZ2VyKCAiYWN0aXZhdGUiLCBldmVudCwgdGhpcy51aSggZHJhZ2dhYmxlICkgKTsKCQl9Cgl9LAoKCV9kZWFjdGl2YXRlOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdmFyIGRyYWdnYWJsZSA9ICQudWkuZGRtYW5hZ2VyLmN1cnJlbnQ7CgoJCXRoaXMuX3JlbW92ZUFjdGl2ZUNsYXNzKCk7CgkJaWYgKCBkcmFnZ2FibGUgKSB7CgkJCXRoaXMuX3RyaWdnZXIoICJkZWFjdGl2YXRlIiwgZXZlbnQsIHRoaXMudWkoIGRyYWdnYWJsZSApICk7CgkJfQoJfSwKCglfb3ZlcjogZnVuY3Rpb24oIGV2ZW50ICkgewoKCQl2YXIgZHJhZ2dhYmxlID0gJC51aS5kZG1hbmFnZXIuY3VycmVudDsKCgkJLy8gQmFpbCBpZiBkcmFnZ2FibGUgYW5kIGRyb3BwYWJsZSBhcmUgc2FtZSBlbGVtZW50CgkJaWYgKCAhZHJhZ2dhYmxlIHx8ICggZHJhZ2dhYmxlLmN1cnJlbnRJdGVtIHx8CgkJCQlkcmFnZ2FibGUuZWxlbWVudCApWyAwIF0gPT09IHRoaXMuZWxlbWVudFsgMCBdICkgewoJCQlyZXR1cm47CgkJfQoKCQlpZiAoIHRoaXMuYWNjZXB0LmNhbGwoIHRoaXMuZWxlbWVudFsgMCBdLCAoIGRyYWdnYWJsZS5jdXJyZW50SXRlbSB8fAoJCQkJZHJhZ2dhYmxlLmVsZW1lbnQgKSApICkgewoJCQl0aGlzLl9hZGRIb3ZlckNsYXNzKCk7CgkJCXRoaXMuX3RyaWdnZXIoICJvdmVyIiwgZXZlbnQsIHRoaXMudWkoIGRyYWdnYWJsZSApICk7CgkJfQoKCX0sCgoJX291dDogZnVuY3Rpb24oIGV2ZW50ICkgewoKCQl2YXIgZHJhZ2dhYmxlID0gJC51aS5kZG1hbmFnZXIuY3VycmVudDsKCgkJLy8gQmFpbCBpZiBkcmFnZ2FibGUgYW5kIGRyb3BwYWJsZSBhcmUgc2FtZSBlbGVtZW50CgkJaWYgKCAhZHJhZ2dhYmxlIHx8ICggZHJhZ2dhYmxlLmN1cnJlbnRJdGVtIHx8CgkJCQlkcmFnZ2FibGUuZWxlbWVudCApWyAwIF0gPT09IHRoaXMuZWxlbWVudFsgMCBdICkgewoJCQlyZXR1cm47CgkJfQoKCQlpZiAoIHRoaXMuYWNjZXB0LmNhbGwoIHRoaXMuZWxlbWVudFsgMCBdLCAoIGRyYWdnYWJsZS5jdXJyZW50SXRlbSB8fAoJCQkJZHJhZ2dhYmxlLmVsZW1lbnQgKSApICkgewoJCQl0aGlzLl9yZW1vdmVIb3ZlckNsYXNzKCk7CgkJCXRoaXMuX3RyaWdnZXIoICJvdXQiLCBldmVudCwgdGhpcy51aSggZHJhZ2dhYmxlICkgKTsKCQl9CgoJfSwKCglfZHJvcDogZnVuY3Rpb24oIGV2ZW50LCBjdXN0b20gKSB7CgoJCXZhciBkcmFnZ2FibGUgPSBjdXN0b20gfHwgJC51aS5kZG1hbmFnZXIuY3VycmVudCwKCQkJY2hpbGRyZW5JbnRlcnNlY3Rpb24gPSBmYWxzZTsKCgkJLy8gQmFpbCBpZiBkcmFnZ2FibGUgYW5kIGRyb3BwYWJsZSBhcmUgc2FtZSBlbGVtZW50CgkJaWYgKCAhZHJhZ2dhYmxlIHx8ICggZHJhZ2dhYmxlLmN1cnJlbnRJdGVtIHx8CgkJCQlkcmFnZ2FibGUuZWxlbWVudCApWyAwIF0gPT09IHRoaXMuZWxlbWVudFsgMCBdICkgewoJCQlyZXR1cm4gZmFsc2U7CgkJfQoKCQl0aGlzLmVsZW1lbnQKCQkJLmZpbmQoICI6ZGF0YSh1aS1kcm9wcGFibGUpIiApCgkJCS5ub3QoICIudWktZHJhZ2dhYmxlLWRyYWdnaW5nIiApCgkJCS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCXZhciBpbnN0ID0gJCggdGhpcyApLmRyb3BwYWJsZSggImluc3RhbmNlIiApOwoJCQkJaWYgKAoJCQkJCWluc3Qub3B0aW9ucy5ncmVlZHkgJiYKCQkJCQkhaW5zdC5vcHRpb25zLmRpc2FibGVkICYmCgkJCQkJaW5zdC5vcHRpb25zLnNjb3BlID09PSBkcmFnZ2FibGUub3B0aW9ucy5zY29wZSAmJgoJCQkJCWluc3QuYWNjZXB0LmNhbGwoCgkJCQkJCWluc3QuZWxlbWVudFsgMCBdLCAoIGRyYWdnYWJsZS5jdXJyZW50SXRlbSB8fCBkcmFnZ2FibGUuZWxlbWVudCApCgkJCQkJKSAmJgoJCQkJCWludGVyc2VjdCgKCQkJCQkJZHJhZ2dhYmxlLAoJCQkJCQkkLmV4dGVuZCggaW5zdCwgeyBvZmZzZXQ6IGluc3QuZWxlbWVudC5vZmZzZXQoKSB9ICksCgkJCQkJCWluc3Qub3B0aW9ucy50b2xlcmFuY2UsIGV2ZW50CgkJCQkJKQoJCQkJKSB7CgkJCQkJY2hpbGRyZW5JbnRlcnNlY3Rpb24gPSB0cnVlOwoJCQkJCXJldHVybiBmYWxzZTsgfQoJCQl9ICk7CgkJaWYgKCBjaGlsZHJlbkludGVyc2VjdGlvbiApIHsKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCgkJaWYgKCB0aGlzLmFjY2VwdC5jYWxsKCB0aGlzLmVsZW1lbnRbIDAgXSwKCQkJCSggZHJhZ2dhYmxlLmN1cnJlbnRJdGVtIHx8IGRyYWdnYWJsZS5lbGVtZW50ICkgKSApIHsKCQkJdGhpcy5fcmVtb3ZlQWN0aXZlQ2xhc3MoKTsKCQkJdGhpcy5fcmVtb3ZlSG92ZXJDbGFzcygpOwoKCQkJdGhpcy5fdHJpZ2dlciggImRyb3AiLCBldmVudCwgdGhpcy51aSggZHJhZ2dhYmxlICkgKTsKCQkJcmV0dXJuIHRoaXMuZWxlbWVudDsKCQl9CgoJCXJldHVybiBmYWxzZTsKCgl9LAoKCXVpOiBmdW5jdGlvbiggYyApIHsKCQlyZXR1cm4gewoJCQlkcmFnZ2FibGU6ICggYy5jdXJyZW50SXRlbSB8fCBjLmVsZW1lbnQgKSwKCQkJaGVscGVyOiBjLmhlbHBlciwKCQkJcG9zaXRpb246IGMucG9zaXRpb24sCgkJCW9mZnNldDogYy5wb3NpdGlvbkFicwoJCX07Cgl9LAoKCS8vIEV4dGVuc2lvbiBwb2ludHMganVzdCB0byBtYWtlIGJhY2tjb21wYXQgc2FuZSBhbmQgYXZvaWQgZHVwbGljYXRpbmcgbG9naWMKCS8vIFRPRE86IFJlbW92ZSBpbiAxLjEzIGFsb25nIHdpdGggY2FsbCB0byBpdCBiZWxvdwoJX2FkZEhvdmVyQ2xhc3M6IGZ1bmN0aW9uKCkgewoJCXRoaXMuX2FkZENsYXNzKCAidWktZHJvcHBhYmxlLWhvdmVyIiApOwoJfSwKCglfcmVtb3ZlSG92ZXJDbGFzczogZnVuY3Rpb24oKSB7CgkJdGhpcy5fcmVtb3ZlQ2xhc3MoICJ1aS1kcm9wcGFibGUtaG92ZXIiICk7Cgl9LAoKCV9hZGRBY3RpdmVDbGFzczogZnVuY3Rpb24oKSB7CgkJdGhpcy5fYWRkQ2xhc3MoICJ1aS1kcm9wcGFibGUtYWN0aXZlIiApOwoJfSwKCglfcmVtb3ZlQWN0aXZlQ2xhc3M6IGZ1bmN0aW9uKCkgewoJCXRoaXMuX3JlbW92ZUNsYXNzKCAidWktZHJvcHBhYmxlLWFjdGl2ZSIgKTsKCX0KfSApOwoKdmFyIGludGVyc2VjdCA9ICQudWkuaW50ZXJzZWN0ID0gKCBmdW5jdGlvbigpIHsKCWZ1bmN0aW9uIGlzT3ZlckF4aXMoIHgsIHJlZmVyZW5jZSwgc2l6ZSApIHsKCQlyZXR1cm4gKCB4ID49IHJlZmVyZW5jZSApICYmICggeCA8ICggcmVmZXJlbmNlICsgc2l6ZSApICk7Cgl9CgoJcmV0dXJuIGZ1bmN0aW9uKCBkcmFnZ2FibGUsIGRyb3BwYWJsZSwgdG9sZXJhbmNlTW9kZSwgZXZlbnQgKSB7CgoJCWlmICggIWRyb3BwYWJsZS5vZmZzZXQgKSB7CgkJCXJldHVybiBmYWxzZTsKCQl9CgoJCXZhciB4MSA9ICggZHJhZ2dhYmxlLnBvc2l0aW9uQWJzIHx8CgkJCQlkcmFnZ2FibGUucG9zaXRpb24uYWJzb2x1dGUgKS5sZWZ0ICsgZHJhZ2dhYmxlLm1hcmdpbnMubGVmdCwKCQkJeTEgPSAoIGRyYWdnYWJsZS5wb3NpdGlvbkFicyB8fAoJCQkJZHJhZ2dhYmxlLnBvc2l0aW9uLmFic29sdXRlICkudG9wICsgZHJhZ2dhYmxlLm1hcmdpbnMudG9wLAoJCQl4MiA9IHgxICsgZHJhZ2dhYmxlLmhlbHBlclByb3BvcnRpb25zLndpZHRoLAoJCQl5MiA9IHkxICsgZHJhZ2dhYmxlLmhlbHBlclByb3BvcnRpb25zLmhlaWdodCwKCQkJbCA9IGRyb3BwYWJsZS5vZmZzZXQubGVmdCwKCQkJdCA9IGRyb3BwYWJsZS5vZmZzZXQudG9wLAoJCQlyID0gbCArIGRyb3BwYWJsZS5wcm9wb3J0aW9ucygpLndpZHRoLAoJCQliID0gdCArIGRyb3BwYWJsZS5wcm9wb3J0aW9ucygpLmhlaWdodDsKCgkJc3dpdGNoICggdG9sZXJhbmNlTW9kZSApIHsKCQljYXNlICJmaXQiOgoJCQlyZXR1cm4gKCBsIDw9IHgxICYmIHgyIDw9IHIgJiYgdCA8PSB5MSAmJiB5MiA8PSBiICk7CgkJY2FzZSAiaW50ZXJzZWN0IjoKCQkJcmV0dXJuICggbCA8IHgxICsgKCBkcmFnZ2FibGUuaGVscGVyUHJvcG9ydGlvbnMud2lkdGggLyAyICkgJiYgLy8gUmlnaHQgSGFsZgoJCQkJeDIgLSAoIGRyYWdnYWJsZS5oZWxwZXJQcm9wb3J0aW9ucy53aWR0aCAvIDIgKSA8IHIgJiYgLy8gTGVmdCBIYWxmCgkJCQl0IDwgeTEgKyAoIGRyYWdnYWJsZS5oZWxwZXJQcm9wb3J0aW9ucy5oZWlnaHQgLyAyICkgJiYgLy8gQm90dG9tIEhhbGYKCQkJCXkyIC0gKCBkcmFnZ2FibGUuaGVscGVyUHJvcG9ydGlvbnMuaGVpZ2h0IC8gMiApIDwgYiApOyAvLyBUb3AgSGFsZgoJCWNhc2UgInBvaW50ZXIiOgoJCQlyZXR1cm4gaXNPdmVyQXhpcyggZXZlbnQucGFnZVksIHQsIGRyb3BwYWJsZS5wcm9wb3J0aW9ucygpLmhlaWdodCApICYmCgkJCQlpc092ZXJBeGlzKCBldmVudC5wYWdlWCwgbCwgZHJvcHBhYmxlLnByb3BvcnRpb25zKCkud2lkdGggKTsKCQljYXNlICJ0b3VjaCI6CgkJCXJldHVybiAoCgkJCQkoIHkxID49IHQgJiYgeTEgPD0gYiApIHx8IC8vIFRvcCBlZGdlIHRvdWNoaW5nCgkJCQkoIHkyID49IHQgJiYgeTIgPD0gYiApIHx8IC8vIEJvdHRvbSBlZGdlIHRvdWNoaW5nCgkJCQkoIHkxIDwgdCAmJiB5MiA+IGIgKSAvLyBTdXJyb3VuZGVkIHZlcnRpY2FsbHkKCQkJKSAmJiAoCgkJCQkoIHgxID49IGwgJiYgeDEgPD0gciApIHx8IC8vIExlZnQgZWRnZSB0b3VjaGluZwoJCQkJKCB4MiA+PSBsICYmIHgyIDw9IHIgKSB8fCAvLyBSaWdodCBlZGdlIHRvdWNoaW5nCgkJCQkoIHgxIDwgbCAmJiB4MiA+IHIgKSAvLyBTdXJyb3VuZGVkIGhvcml6b250YWxseQoJCQkpOwoJCWRlZmF1bHQ6CgkJCXJldHVybiBmYWxzZTsKCQl9Cgl9Owp9ICkoKTsKCi8qCglUaGlzIG1hbmFnZXIgdHJhY2tzIG9mZnNldHMgb2YgZHJhZ2dhYmxlcyBhbmQgZHJvcHBhYmxlcwoqLwokLnVpLmRkbWFuYWdlciA9IHsKCWN1cnJlbnQ6IG51bGwsCglkcm9wcGFibGVzOiB7ICJkZWZhdWx0IjogW10gfSwKCXByZXBhcmVPZmZzZXRzOiBmdW5jdGlvbiggdCwgZXZlbnQgKSB7CgoJCXZhciBpLCBqLAoJCQltID0gJC51aS5kZG1hbmFnZXIuZHJvcHBhYmxlc1sgdC5vcHRpb25zLnNjb3BlIF0gfHwgW10sCgkJCXR5cGUgPSBldmVudCA/IGV2ZW50LnR5cGUgOiBudWxsLCAvLyB3b3JrYXJvdW5kIGZvciAjMjMxNwoJCQlsaXN0ID0gKCB0LmN1cnJlbnRJdGVtIHx8IHQuZWxlbWVudCApLmZpbmQoICI6ZGF0YSh1aS1kcm9wcGFibGUpIiApLmFkZEJhY2soKTsKCgkJZHJvcHBhYmxlc0xvb3A6IGZvciAoIGkgPSAwOyBpIDwgbS5sZW5ndGg7IGkrKyApIHsKCgkJCS8vIE5vIGRpc2FibGVkIGFuZCBub24tYWNjZXB0ZWQKCQkJaWYgKCBtWyBpIF0ub3B0aW9ucy5kaXNhYmxlZCB8fCAoIHQgJiYgIW1bIGkgXS5hY2NlcHQuY2FsbCggbVsgaSBdLmVsZW1lbnRbIDAgXSwKCQkJCQkoIHQuY3VycmVudEl0ZW0gfHwgdC5lbGVtZW50ICkgKSApICkgewoJCQkJY29udGludWU7CgkJCX0KCgkJCS8vIEZpbHRlciBvdXQgZWxlbWVudHMgaW4gdGhlIGN1cnJlbnQgZHJhZ2dlZCBpdGVtCgkJCWZvciAoIGogPSAwOyBqIDwgbGlzdC5sZW5ndGg7IGorKyApIHsKCQkJCWlmICggbGlzdFsgaiBdID09PSBtWyBpIF0uZWxlbWVudFsgMCBdICkgewoJCQkJCW1bIGkgXS5wcm9wb3J0aW9ucygpLmhlaWdodCA9IDA7CgkJCQkJY29udGludWUgZHJvcHBhYmxlc0xvb3A7CgkJCQl9CgkJCX0KCgkJCW1bIGkgXS52aXNpYmxlID0gbVsgaSBdLmVsZW1lbnQuY3NzKCAiZGlzcGxheSIgKSAhPT0gIm5vbmUiOwoJCQlpZiAoICFtWyBpIF0udmlzaWJsZSApIHsKCQkJCWNvbnRpbnVlOwoJCQl9CgoJCQkvLyBBY3RpdmF0ZSB0aGUgZHJvcHBhYmxlIGlmIHVzZWQgZGlyZWN0bHkgZnJvbSBkcmFnZ2FibGVzCgkJCWlmICggdHlwZSA9PT0gIm1vdXNlZG93biIgKSB7CgkJCQltWyBpIF0uX2FjdGl2YXRlLmNhbGwoIG1bIGkgXSwgZXZlbnQgKTsKCQkJfQoKCQkJbVsgaSBdLm9mZnNldCA9IG1bIGkgXS5lbGVtZW50Lm9mZnNldCgpOwoJCQltWyBpIF0ucHJvcG9ydGlvbnMoIHsKCQkJCXdpZHRoOiBtWyBpIF0uZWxlbWVudFsgMCBdLm9mZnNldFdpZHRoLAoJCQkJaGVpZ2h0OiBtWyBpIF0uZWxlbWVudFsgMCBdLm9mZnNldEhlaWdodAoJCQl9ICk7CgoJCX0KCgl9LAoJZHJvcDogZnVuY3Rpb24oIGRyYWdnYWJsZSwgZXZlbnQgKSB7CgoJCXZhciBkcm9wcGVkID0gZmFsc2U7CgoJCS8vIENyZWF0ZSBhIGNvcHkgb2YgdGhlIGRyb3BwYWJsZXMgaW4gY2FzZSB0aGUgbGlzdCBjaGFuZ2VzIGR1cmluZyB0aGUgZHJvcCAoIzkxMTYpCgkJJC5lYWNoKCAoICQudWkuZGRtYW5hZ2VyLmRyb3BwYWJsZXNbIGRyYWdnYWJsZS5vcHRpb25zLnNjb3BlIF0gfHwgW10gKS5zbGljZSgpLCBmdW5jdGlvbigpIHsKCgkJCWlmICggIXRoaXMub3B0aW9ucyApIHsKCQkJCXJldHVybjsKCQkJfQoJCQlpZiAoICF0aGlzLm9wdGlvbnMuZGlzYWJsZWQgJiYgdGhpcy52aXNpYmxlICYmCgkJCQkJaW50ZXJzZWN0KCBkcmFnZ2FibGUsIHRoaXMsIHRoaXMub3B0aW9ucy50b2xlcmFuY2UsIGV2ZW50ICkgKSB7CgkJCQlkcm9wcGVkID0gdGhpcy5fZHJvcC5jYWxsKCB0aGlzLCBldmVudCApIHx8IGRyb3BwZWQ7CgkJCX0KCgkJCWlmICggIXRoaXMub3B0aW9ucy5kaXNhYmxlZCAmJiB0aGlzLnZpc2libGUgJiYgdGhpcy5hY2NlcHQuY2FsbCggdGhpcy5lbGVtZW50WyAwIF0sCgkJCQkJKCBkcmFnZ2FibGUuY3VycmVudEl0ZW0gfHwgZHJhZ2dhYmxlLmVsZW1lbnQgKSApICkgewoJCQkJdGhpcy5pc291dCA9IHRydWU7CgkJCQl0aGlzLmlzb3ZlciA9IGZhbHNlOwoJCQkJdGhpcy5fZGVhY3RpdmF0ZS5jYWxsKCB0aGlzLCBldmVudCApOwoJCQl9CgoJCX0gKTsKCQlyZXR1cm4gZHJvcHBlZDsKCgl9LAoJZHJhZ1N0YXJ0OiBmdW5jdGlvbiggZHJhZ2dhYmxlLCBldmVudCApIHsKCgkJLy8gTGlzdGVuIGZvciBzY3JvbGxpbmcgc28gdGhhdCBpZiB0aGUgZHJhZ2dpbmcgY2F1c2VzIHNjcm9sbGluZyB0aGUgcG9zaXRpb24gb2YgdGhlCgkJLy8gZHJvcHBhYmxlcyBjYW4gYmUgcmVjYWxjdWxhdGVkIChzZWUgIzUwMDMpCgkJZHJhZ2dhYmxlLmVsZW1lbnQucGFyZW50c1VudGlsKCAiYm9keSIgKS5vbiggInNjcm9sbC5kcm9wcGFibGUiLCBmdW5jdGlvbigpIHsKCQkJaWYgKCAhZHJhZ2dhYmxlLm9wdGlvbnMucmVmcmVzaFBvc2l0aW9ucyApIHsKCQkJCSQudWkuZGRtYW5hZ2VyLnByZXBhcmVPZmZzZXRzKCBkcmFnZ2FibGUsIGV2ZW50ICk7CgkJCX0KCQl9ICk7Cgl9LAoJZHJhZzogZnVuY3Rpb24oIGRyYWdnYWJsZSwgZXZlbnQgKSB7CgoJCS8vIElmIHlvdSBoYXZlIGEgaGlnaGx5IGR5bmFtaWMgcGFnZSwgeW91IG1pZ2h0IHRyeSB0aGlzIG9wdGlvbi4gSXQgcmVuZGVycyBwb3NpdGlvbnMKCQkvLyBldmVyeSB0aW1lIHlvdSBtb3ZlIHRoZSBtb3VzZS4KCQlpZiAoIGRyYWdnYWJsZS5vcHRpb25zLnJlZnJlc2hQb3NpdGlvbnMgKSB7CgkJCSQudWkuZGRtYW5hZ2VyLnByZXBhcmVPZmZzZXRzKCBkcmFnZ2FibGUsIGV2ZW50ICk7CgkJfQoKCQkvLyBSdW4gdGhyb3VnaCBhbGwgZHJvcHBhYmxlcyBhbmQgY2hlY2sgdGhlaXIgcG9zaXRpb25zIGJhc2VkIG9uIHNwZWNpZmljIHRvbGVyYW5jZSBvcHRpb25zCgkJJC5lYWNoKCAkLnVpLmRkbWFuYWdlci5kcm9wcGFibGVzWyBkcmFnZ2FibGUub3B0aW9ucy5zY29wZSBdIHx8IFtdLCBmdW5jdGlvbigpIHsKCgkJCWlmICggdGhpcy5vcHRpb25zLmRpc2FibGVkIHx8IHRoaXMuZ3JlZWR5Q2hpbGQgfHwgIXRoaXMudmlzaWJsZSApIHsKCQkJCXJldHVybjsKCQkJfQoKCQkJdmFyIHBhcmVudEluc3RhbmNlLCBzY29wZSwgcGFyZW50LAoJCQkJaW50ZXJzZWN0cyA9IGludGVyc2VjdCggZHJhZ2dhYmxlLCB0aGlzLCB0aGlzLm9wdGlvbnMudG9sZXJhbmNlLCBldmVudCApLAoJCQkJYyA9ICFpbnRlcnNlY3RzICYmIHRoaXMuaXNvdmVyID8KCQkJCQkiaXNvdXQiIDoKCQkJCQkoIGludGVyc2VjdHMgJiYgIXRoaXMuaXNvdmVyID8gImlzb3ZlciIgOiBudWxsICk7CgkJCWlmICggIWMgKSB7CgkJCQlyZXR1cm47CgkJCX0KCgkJCWlmICggdGhpcy5vcHRpb25zLmdyZWVkeSApIHsKCgkJCQkvLyBmaW5kIGRyb3BwYWJsZSBwYXJlbnRzIHdpdGggc2FtZSBzY29wZQoJCQkJc2NvcGUgPSB0aGlzLm9wdGlvbnMuc2NvcGU7CgkJCQlwYXJlbnQgPSB0aGlzLmVsZW1lbnQucGFyZW50cyggIjpkYXRhKHVpLWRyb3BwYWJsZSkiICkuZmlsdGVyKCBmdW5jdGlvbigpIHsKCQkJCQlyZXR1cm4gJCggdGhpcyApLmRyb3BwYWJsZSggImluc3RhbmNlIiApLm9wdGlvbnMuc2NvcGUgPT09IHNjb3BlOwoJCQkJfSApOwoKCQkJCWlmICggcGFyZW50Lmxlbmd0aCApIHsKCQkJCQlwYXJlbnRJbnN0YW5jZSA9ICQoIHBhcmVudFsgMCBdICkuZHJvcHBhYmxlKCAiaW5zdGFuY2UiICk7CgkJCQkJcGFyZW50SW5zdGFuY2UuZ3JlZWR5Q2hpbGQgPSAoIGMgPT09ICJpc292ZXIiICk7CgkJCQl9CgkJCX0KCgkJCS8vIFdlIGp1c3QgbW92ZWQgaW50byBhIGdyZWVkeSBjaGlsZAoJCQlpZiAoIHBhcmVudEluc3RhbmNlICYmIGMgPT09ICJpc292ZXIiICkgewoJCQkJcGFyZW50SW5zdGFuY2UuaXNvdmVyID0gZmFsc2U7CgkJCQlwYXJlbnRJbnN0YW5jZS5pc291dCA9IHRydWU7CgkJCQlwYXJlbnRJbnN0YW5jZS5fb3V0LmNhbGwoIHBhcmVudEluc3RhbmNlLCBldmVudCApOwoJCQl9CgoJCQl0aGlzWyBjIF0gPSB0cnVlOwoJCQl0aGlzWyBjID09PSAiaXNvdXQiID8gImlzb3ZlciIgOiAiaXNvdXQiIF0gPSBmYWxzZTsKCQkJdGhpc1sgYyA9PT0gImlzb3ZlciIgPyAiX292ZXIiIDogIl9vdXQiIF0uY2FsbCggdGhpcywgZXZlbnQgKTsKCgkJCS8vIFdlIGp1c3QgbW92ZWQgb3V0IG9mIGEgZ3JlZWR5IGNoaWxkCgkJCWlmICggcGFyZW50SW5zdGFuY2UgJiYgYyA9PT0gImlzb3V0IiApIHsKCQkJCXBhcmVudEluc3RhbmNlLmlzb3V0ID0gZmFsc2U7CgkJCQlwYXJlbnRJbnN0YW5jZS5pc292ZXIgPSB0cnVlOwoJCQkJcGFyZW50SW5zdGFuY2UuX292ZXIuY2FsbCggcGFyZW50SW5zdGFuY2UsIGV2ZW50ICk7CgkJCX0KCQl9ICk7CgoJfSwKCWRyYWdTdG9wOiBmdW5jdGlvbiggZHJhZ2dhYmxlLCBldmVudCApIHsKCQlkcmFnZ2FibGUuZWxlbWVudC5wYXJlbnRzVW50aWwoICJib2R5IiApLm9mZiggInNjcm9sbC5kcm9wcGFibGUiICk7CgoJCS8vIENhbGwgcHJlcGFyZU9mZnNldHMgb25lIGZpbmFsIHRpbWUgc2luY2UgSUUgZG9lcyBub3QgZmlyZSByZXR1cm4gc2Nyb2xsIGV2ZW50cyB3aGVuCgkJLy8gb3ZlcmZsb3cgd2FzIGNhdXNlZCBieSBkcmFnIChzZWUgIzUwMDMpCgkJaWYgKCAhZHJhZ2dhYmxlLm9wdGlvbnMucmVmcmVzaFBvc2l0aW9ucyApIHsKCQkJJC51aS5kZG1hbmFnZXIucHJlcGFyZU9mZnNldHMoIGRyYWdnYWJsZSwgZXZlbnQgKTsKCQl9Cgl9Cn07CgovLyBERVBSRUNBVEVECi8vIFRPRE86IHN3aXRjaCByZXR1cm4gYmFjayB0byB3aWRnZXQgZGVjbGFyYXRpb24gYXQgdG9wIG9mIGZpbGUgd2hlbiB0aGlzIGlzIHJlbW92ZWQKaWYgKCAkLnVpQmFja0NvbXBhdCAhPT0gZmFsc2UgKSB7CgoJLy8gQmFja2NvbXBhdCBmb3IgYWN0aXZlQ2xhc3MgYW5kIGhvdmVyQ2xhc3Mgb3B0aW9ucwoJJC53aWRnZXQoICJ1aS5kcm9wcGFibGUiLCAkLnVpLmRyb3BwYWJsZSwgewoJCW9wdGlvbnM6IHsKCQkJaG92ZXJDbGFzczogZmFsc2UsCgkJCWFjdGl2ZUNsYXNzOiBmYWxzZQoJCX0sCgkJX2FkZEFjdGl2ZUNsYXNzOiBmdW5jdGlvbigpIHsKCQkJdGhpcy5fc3VwZXIoKTsKCQkJaWYgKCB0aGlzLm9wdGlvbnMuYWN0aXZlQ2xhc3MgKSB7CgkJCQl0aGlzLmVsZW1lbnQuYWRkQ2xhc3MoIHRoaXMub3B0aW9ucy5hY3RpdmVDbGFzcyApOwoJCQl9CgkJfSwKCQlfcmVtb3ZlQWN0aXZlQ2xhc3M6IGZ1bmN0aW9uKCkgewoJCQl0aGlzLl9zdXBlcigpOwoJCQlpZiAoIHRoaXMub3B0aW9ucy5hY3RpdmVDbGFzcyApIHsKCQkJCXRoaXMuZWxlbWVudC5yZW1vdmVDbGFzcyggdGhpcy5vcHRpb25zLmFjdGl2ZUNsYXNzICk7CgkJCX0KCQl9LAoJCV9hZGRIb3ZlckNsYXNzOiBmdW5jdGlvbigpIHsKCQkJdGhpcy5fc3VwZXIoKTsKCQkJaWYgKCB0aGlzLm9wdGlvbnMuaG92ZXJDbGFzcyApIHsKCQkJCXRoaXMuZWxlbWVudC5hZGRDbGFzcyggdGhpcy5vcHRpb25zLmhvdmVyQ2xhc3MgKTsKCQkJfQoJCX0sCgkJX3JlbW92ZUhvdmVyQ2xhc3M6IGZ1bmN0aW9uKCkgewoJCQl0aGlzLl9zdXBlcigpOwoJCQlpZiAoIHRoaXMub3B0aW9ucy5ob3ZlckNsYXNzICkgewoJCQkJdGhpcy5lbGVtZW50LnJlbW92ZUNsYXNzKCB0aGlzLm9wdGlvbnMuaG92ZXJDbGFzcyApOwoJCQl9CgkJfQoJfSApOwp9Cgp2YXIgd2lkZ2V0c0Ryb3BwYWJsZSA9ICQudWkuZHJvcHBhYmxlOwoKCi8qIQogKiBqUXVlcnkgVUkgUmVzaXphYmxlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogUmVzaXphYmxlCi8vPj5ncm91cDogSW50ZXJhY3Rpb25zCi8vPj5kZXNjcmlwdGlvbjogRW5hYmxlcyByZXNpemUgZnVuY3Rpb25hbGl0eSBmb3IgYW55IGVsZW1lbnQuCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9yZXNpemFibGUvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9yZXNpemFibGUvCi8vPj5jc3Muc3RydWN0dXJlOiAuLi8uLi90aGVtZXMvYmFzZS9jb3JlLmNzcwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvcmVzaXphYmxlLmNzcwovLz4+Y3NzLnRoZW1lOiAuLi8uLi90aGVtZXMvYmFzZS90aGVtZS5jc3MKCgoKJC53aWRnZXQoICJ1aS5yZXNpemFibGUiLCAkLnVpLm1vdXNlLCB7Cgl2ZXJzaW9uOiAiMS4xMi4xIiwKCXdpZGdldEV2ZW50UHJlZml4OiAicmVzaXplIiwKCW9wdGlvbnM6IHsKCQlhbHNvUmVzaXplOiBmYWxzZSwKCQlhbmltYXRlOiBmYWxzZSwKCQlhbmltYXRlRHVyYXRpb246ICJzbG93IiwKCQlhbmltYXRlRWFzaW5nOiAic3dpbmciLAoJCWFzcGVjdFJhdGlvOiBmYWxzZSwKCQlhdXRvSGlkZTogZmFsc2UsCgkJY2xhc3NlczogewoJCQkidWktcmVzaXphYmxlLXNlIjogInVpLWljb24gdWktaWNvbi1ncmlwc21hbGwtZGlhZ29uYWwtc2UiCgkJfSwKCQljb250YWlubWVudDogZmFsc2UsCgkJZ2hvc3Q6IGZhbHNlLAoJCWdyaWQ6IGZhbHNlLAoJCWhhbmRsZXM6ICJlLHMsc2UiLAoJCWhlbHBlcjogZmFsc2UsCgkJbWF4SGVpZ2h0OiBudWxsLAoJCW1heFdpZHRoOiBudWxsLAoJCW1pbkhlaWdodDogMTAsCgkJbWluV2lkdGg6IDEwLAoKCQkvLyBTZWUgIzc5NjAKCQl6SW5kZXg6IDkwLAoKCQkvLyBDYWxsYmFja3MKCQlyZXNpemU6IG51bGwsCgkJc3RhcnQ6IG51bGwsCgkJc3RvcDogbnVsbAoJfSwKCglfbnVtOiBmdW5jdGlvbiggdmFsdWUgKSB7CgkJcmV0dXJuIHBhcnNlRmxvYXQoIHZhbHVlICkgfHwgMDsKCX0sCgoJX2lzTnVtYmVyOiBmdW5jdGlvbiggdmFsdWUgKSB7CgkJcmV0dXJuICFpc05hTiggcGFyc2VGbG9hdCggdmFsdWUgKSApOwoJfSwKCglfaGFzU2Nyb2xsOiBmdW5jdGlvbiggZWwsIGEgKSB7CgoJCWlmICggJCggZWwgKS5jc3MoICJvdmVyZmxvdyIgKSA9PT0gImhpZGRlbiIgKSB7CgkJCXJldHVybiBmYWxzZTsKCQl9CgoJCXZhciBzY3JvbGwgPSAoIGEgJiYgYSA9PT0gImxlZnQiICkgPyAic2Nyb2xsTGVmdCIgOiAic2Nyb2xsVG9wIiwKCQkJaGFzID0gZmFsc2U7CgoJCWlmICggZWxbIHNjcm9sbCBdID4gMCApIHsKCQkJcmV0dXJuIHRydWU7CgkJfQoKCQkvLyBUT0RPOiBkZXRlcm1pbmUgd2hpY2ggY2FzZXMgYWN0dWFsbHkgY2F1c2UgdGhpcyB0byBoYXBwZW4KCQkvLyBpZiB0aGUgZWxlbWVudCBkb2Vzbid0IGhhdmUgdGhlIHNjcm9sbCBzZXQsIHNlZSBpZiBpdCdzIHBvc3NpYmxlIHRvCgkJLy8gc2V0IHRoZSBzY3JvbGwKCQllbFsgc2Nyb2xsIF0gPSAxOwoJCWhhcyA9ICggZWxbIHNjcm9sbCBdID4gMCApOwoJCWVsWyBzY3JvbGwgXSA9IDA7CgkJcmV0dXJuIGhhczsKCX0sCgoJX2NyZWF0ZTogZnVuY3Rpb24oKSB7CgoJCXZhciBtYXJnaW5zLAoJCQlvID0gdGhpcy5vcHRpb25zLAoJCQl0aGF0ID0gdGhpczsKCQl0aGlzLl9hZGRDbGFzcyggInVpLXJlc2l6YWJsZSIgKTsKCgkJJC5leHRlbmQoIHRoaXMsIHsKCQkJX2FzcGVjdFJhdGlvOiAhISggby5hc3BlY3RSYXRpbyApLAoJCQlhc3BlY3RSYXRpbzogby5hc3BlY3RSYXRpbywKCQkJb3JpZ2luYWxFbGVtZW50OiB0aGlzLmVsZW1lbnQsCgkJCV9wcm9wb3J0aW9uYWxseVJlc2l6ZUVsZW1lbnRzOiBbXSwKCQkJX2hlbHBlcjogby5oZWxwZXIgfHwgby5naG9zdCB8fCBvLmFuaW1hdGUgPyBvLmhlbHBlciB8fCAidWktcmVzaXphYmxlLWhlbHBlciIgOiBudWxsCgkJfSApOwoKCQkvLyBXcmFwIHRoZSBlbGVtZW50IGlmIGl0IGNhbm5vdCBob2xkIGNoaWxkIG5vZGVzCgkJaWYgKCB0aGlzLmVsZW1lbnRbIDAgXS5ub2RlTmFtZS5tYXRjaCggL14oY2FudmFzfHRleHRhcmVhfGlucHV0fHNlbGVjdHxidXR0b258aW1nKSQvaSApICkgewoKCQkJdGhpcy5lbGVtZW50LndyYXAoCgkJCQkkKCAiPGRpdiBjbGFzcz0ndWktd3JhcHBlcicgc3R5bGU9J292ZXJmbG93OiBoaWRkZW47Jz48L2Rpdj4iICkuY3NzKCB7CgkJCQkJcG9zaXRpb246IHRoaXMuZWxlbWVudC5jc3MoICJwb3NpdGlvbiIgKSwKCQkJCQl3aWR0aDogdGhpcy5lbGVtZW50Lm91dGVyV2lkdGgoKSwKCQkJCQloZWlnaHQ6IHRoaXMuZWxlbWVudC5vdXRlckhlaWdodCgpLAoJCQkJCXRvcDogdGhpcy5lbGVtZW50LmNzcyggInRvcCIgKSwKCQkJCQlsZWZ0OiB0aGlzLmVsZW1lbnQuY3NzKCAibGVmdCIgKQoJCQkJfSApCgkJCSk7CgoJCQl0aGlzLmVsZW1lbnQgPSB0aGlzLmVsZW1lbnQucGFyZW50KCkuZGF0YSgKCQkJCSJ1aS1yZXNpemFibGUiLCB0aGlzLmVsZW1lbnQucmVzaXphYmxlKCAiaW5zdGFuY2UiICkKCQkJKTsKCgkJCXRoaXMuZWxlbWVudElzV3JhcHBlciA9IHRydWU7CgoJCQltYXJnaW5zID0gewoJCQkJbWFyZ2luVG9wOiB0aGlzLm9yaWdpbmFsRWxlbWVudC5jc3MoICJtYXJnaW5Ub3AiICksCgkJCQltYXJnaW5SaWdodDogdGhpcy5vcmlnaW5hbEVsZW1lbnQuY3NzKCAibWFyZ2luUmlnaHQiICksCgkJCQltYXJnaW5Cb3R0b206IHRoaXMub3JpZ2luYWxFbGVtZW50LmNzcyggIm1hcmdpbkJvdHRvbSIgKSwKCQkJCW1hcmdpbkxlZnQ6IHRoaXMub3JpZ2luYWxFbGVtZW50LmNzcyggIm1hcmdpbkxlZnQiICkKCQkJfTsKCgkJCXRoaXMuZWxlbWVudC5jc3MoIG1hcmdpbnMgKTsKCQkJdGhpcy5vcmlnaW5hbEVsZW1lbnQuY3NzKCAibWFyZ2luIiwgMCApOwoKCQkJLy8gc3VwcG9ydDogU2FmYXJpCgkJCS8vIFByZXZlbnQgU2FmYXJpIHRleHRhcmVhIHJlc2l6ZQoJCQl0aGlzLm9yaWdpbmFsUmVzaXplU3R5bGUgPSB0aGlzLm9yaWdpbmFsRWxlbWVudC5jc3MoICJyZXNpemUiICk7CgkJCXRoaXMub3JpZ2luYWxFbGVtZW50LmNzcyggInJlc2l6ZSIsICJub25lIiApOwoKCQkJdGhpcy5fcHJvcG9ydGlvbmFsbHlSZXNpemVFbGVtZW50cy5wdXNoKCB0aGlzLm9yaWdpbmFsRWxlbWVudC5jc3MoIHsKCQkJCXBvc2l0aW9uOiAic3RhdGljIiwKCQkJCXpvb206IDEsCgkJCQlkaXNwbGF5OiAiYmxvY2siCgkJCX0gKSApOwoKCQkJLy8gU3VwcG9ydDogSUU5CgkJCS8vIGF2b2lkIElFIGp1bXAgKGhhcmQgc2V0IHRoZSBtYXJnaW4pCgkJCXRoaXMub3JpZ2luYWxFbGVtZW50LmNzcyggbWFyZ2lucyApOwoKCQkJdGhpcy5fcHJvcG9ydGlvbmFsbHlSZXNpemUoKTsKCQl9CgoJCXRoaXMuX3NldHVwSGFuZGxlcygpOwoKCQlpZiAoIG8uYXV0b0hpZGUgKSB7CgkJCSQoIHRoaXMuZWxlbWVudCApCgkJCQkub24oICJtb3VzZWVudGVyIiwgZnVuY3Rpb24oKSB7CgkJCQkJaWYgKCBvLmRpc2FibGVkICkgewoJCQkJCQlyZXR1cm47CgkJCQkJfQoJCQkJCXRoYXQuX3JlbW92ZUNsYXNzKCAidWktcmVzaXphYmxlLWF1dG9oaWRlIiApOwoJCQkJCXRoYXQuX2hhbmRsZXMuc2hvdygpOwoJCQkJfSApCgkJCQkub24oICJtb3VzZWxlYXZlIiwgZnVuY3Rpb24oKSB7CgkJCQkJaWYgKCBvLmRpc2FibGVkICkgewoJCQkJCQlyZXR1cm47CgkJCQkJfQoJCQkJCWlmICggIXRoYXQucmVzaXppbmcgKSB7CgkJCQkJCXRoYXQuX2FkZENsYXNzKCAidWktcmVzaXphYmxlLWF1dG9oaWRlIiApOwoJCQkJCQl0aGF0Ll9oYW5kbGVzLmhpZGUoKTsKCQkJCQl9CgkJCQl9ICk7CgkJfQoKCQl0aGlzLl9tb3VzZUluaXQoKTsKCX0sCgoJX2Rlc3Ryb3k6IGZ1bmN0aW9uKCkgewoKCQl0aGlzLl9tb3VzZURlc3Ryb3koKTsKCgkJdmFyIHdyYXBwZXIsCgkJCV9kZXN0cm95ID0gZnVuY3Rpb24oIGV4cCApIHsKCQkJCSQoIGV4cCApCgkJCQkJLnJlbW92ZURhdGEoICJyZXNpemFibGUiICkKCQkJCQkucmVtb3ZlRGF0YSggInVpLXJlc2l6YWJsZSIgKQoJCQkJCS5vZmYoICIucmVzaXphYmxlIiApCgkJCQkJLmZpbmQoICIudWktcmVzaXphYmxlLWhhbmRsZSIgKQoJCQkJCQkucmVtb3ZlKCk7CgkJCX07CgoJCS8vIFRPRE86IFVud3JhcCBhdCBzYW1lIERPTSBwb3NpdGlvbgoJCWlmICggdGhpcy5lbGVtZW50SXNXcmFwcGVyICkgewoJCQlfZGVzdHJveSggdGhpcy5lbGVtZW50ICk7CgkJCXdyYXBwZXIgPSB0aGlzLmVsZW1lbnQ7CgkJCXRoaXMub3JpZ2luYWxFbGVtZW50LmNzcyggewoJCQkJcG9zaXRpb246IHdyYXBwZXIuY3NzKCAicG9zaXRpb24iICksCgkJCQl3aWR0aDogd3JhcHBlci5vdXRlcldpZHRoKCksCgkJCQloZWlnaHQ6IHdyYXBwZXIub3V0ZXJIZWlnaHQoKSwKCQkJCXRvcDogd3JhcHBlci5jc3MoICJ0b3AiICksCgkJCQlsZWZ0OiB3cmFwcGVyLmNzcyggImxlZnQiICkKCQkJfSApLmluc2VydEFmdGVyKCB3cmFwcGVyICk7CgkJCXdyYXBwZXIucmVtb3ZlKCk7CgkJfQoKCQl0aGlzLm9yaWdpbmFsRWxlbWVudC5jc3MoICJyZXNpemUiLCB0aGlzLm9yaWdpbmFsUmVzaXplU3R5bGUgKTsKCQlfZGVzdHJveSggdGhpcy5vcmlnaW5hbEVsZW1lbnQgKTsKCgkJcmV0dXJuIHRoaXM7Cgl9LAoKCV9zZXRPcHRpb246IGZ1bmN0aW9uKCBrZXksIHZhbHVlICkgewoJCXRoaXMuX3N1cGVyKCBrZXksIHZhbHVlICk7CgoJCXN3aXRjaCAoIGtleSApIHsKCQljYXNlICJoYW5kbGVzIjoKCQkJdGhpcy5fcmVtb3ZlSGFuZGxlcygpOwoJCQl0aGlzLl9zZXR1cEhhbmRsZXMoKTsKCQkJYnJlYWs7CgkJZGVmYXVsdDoKCQkJYnJlYWs7CgkJfQoJfSwKCglfc2V0dXBIYW5kbGVzOiBmdW5jdGlvbigpIHsKCQl2YXIgbyA9IHRoaXMub3B0aW9ucywgaGFuZGxlLCBpLCBuLCBobmFtZSwgYXhpcywgdGhhdCA9IHRoaXM7CgkJdGhpcy5oYW5kbGVzID0gby5oYW5kbGVzIHx8CgkJCSggISQoICIudWktcmVzaXphYmxlLWhhbmRsZSIsIHRoaXMuZWxlbWVudCApLmxlbmd0aCA/CgkJCQkiZSxzLHNlIiA6IHsKCQkJCQluOiAiLnVpLXJlc2l6YWJsZS1uIiwKCQkJCQllOiAiLnVpLXJlc2l6YWJsZS1lIiwKCQkJCQlzOiAiLnVpLXJlc2l6YWJsZS1zIiwKCQkJCQl3OiAiLnVpLXJlc2l6YWJsZS13IiwKCQkJCQlzZTogIi51aS1yZXNpemFibGUtc2UiLAoJCQkJCXN3OiAiLnVpLXJlc2l6YWJsZS1zdyIsCgkJCQkJbmU6ICIudWktcmVzaXphYmxlLW5lIiwKCQkJCQludzogIi51aS1yZXNpemFibGUtbnciCgkJCQl9ICk7CgoJCXRoaXMuX2hhbmRsZXMgPSAkKCk7CgkJaWYgKCB0aGlzLmhhbmRsZXMuY29uc3RydWN0b3IgPT09IFN0cmluZyApIHsKCgkJCWlmICggdGhpcy5oYW5kbGVzID09PSAiYWxsIiApIHsKCQkJCXRoaXMuaGFuZGxlcyA9ICJuLGUscyx3LHNlLHN3LG5lLG53IjsKCQkJfQoKCQkJbiA9IHRoaXMuaGFuZGxlcy5zcGxpdCggIiwiICk7CgkJCXRoaXMuaGFuZGxlcyA9IHt9OwoKCQkJZm9yICggaSA9IDA7IGkgPCBuLmxlbmd0aDsgaSsrICkgewoKCQkJCWhhbmRsZSA9ICQudHJpbSggblsgaSBdICk7CgkJCQlobmFtZSA9ICJ1aS1yZXNpemFibGUtIiArIGhhbmRsZTsKCQkJCWF4aXMgPSAkKCAiPGRpdj4iICk7CgkJCQl0aGlzLl9hZGRDbGFzcyggYXhpcywgInVpLXJlc2l6YWJsZS1oYW5kbGUgIiArIGhuYW1lICk7CgoJCQkJYXhpcy5jc3MoIHsgekluZGV4OiBvLnpJbmRleCB9ICk7CgoJCQkJdGhpcy5oYW5kbGVzWyBoYW5kbGUgXSA9ICIudWktcmVzaXphYmxlLSIgKyBoYW5kbGU7CgkJCQl0aGlzLmVsZW1lbnQuYXBwZW5kKCBheGlzICk7CgkJCX0KCgkJfQoKCQl0aGlzLl9yZW5kZXJBeGlzID0gZnVuY3Rpb24oIHRhcmdldCApIHsKCgkJCXZhciBpLCBheGlzLCBwYWRQb3MsIHBhZFdyYXBwZXI7CgoJCQl0YXJnZXQgPSB0YXJnZXQgfHwgdGhpcy5lbGVtZW50OwoKCQkJZm9yICggaSBpbiB0aGlzLmhhbmRsZXMgKSB7CgoJCQkJaWYgKCB0aGlzLmhhbmRsZXNbIGkgXS5jb25zdHJ1Y3RvciA9PT0gU3RyaW5nICkgewoJCQkJCXRoaXMuaGFuZGxlc1sgaSBdID0gdGhpcy5lbGVtZW50LmNoaWxkcmVuKCB0aGlzLmhhbmRsZXNbIGkgXSApLmZpcnN0KCkuc2hvdygpOwoJCQkJfSBlbHNlIGlmICggdGhpcy5oYW5kbGVzWyBpIF0uanF1ZXJ5IHx8IHRoaXMuaGFuZGxlc1sgaSBdLm5vZGVUeXBlICkgewoJCQkJCXRoaXMuaGFuZGxlc1sgaSBdID0gJCggdGhpcy5oYW5kbGVzWyBpIF0gKTsKCQkJCQl0aGlzLl9vbiggdGhpcy5oYW5kbGVzWyBpIF0sIHsgIm1vdXNlZG93biI6IHRoYXQuX21vdXNlRG93biB9ICk7CgkJCQl9CgoJCQkJaWYgKCB0aGlzLmVsZW1lbnRJc1dyYXBwZXIgJiYKCQkJCQkJdGhpcy5vcmlnaW5hbEVsZW1lbnRbIDAgXQoJCQkJCQkJLm5vZGVOYW1lCgkJCQkJCQkubWF0Y2goIC9eKHRleHRhcmVhfGlucHV0fHNlbGVjdHxidXR0b24pJC9pICkgKSB7CgkJCQkJYXhpcyA9ICQoIHRoaXMuaGFuZGxlc1sgaSBdLCB0aGlzLmVsZW1lbnQgKTsKCgkJCQkJcGFkV3JhcHBlciA9IC9zd3xuZXxud3xzZXxufHMvLnRlc3QoIGkgKSA/CgkJCQkJCWF4aXMub3V0ZXJIZWlnaHQoKSA6CgkJCQkJCWF4aXMub3V0ZXJXaWR0aCgpOwoKCQkJCQlwYWRQb3MgPSBbICJwYWRkaW5nIiwKCQkJCQkJL25lfG53fG4vLnRlc3QoIGkgKSA/ICJUb3AiIDoKCQkJCQkJL3NlfHN3fHMvLnRlc3QoIGkgKSA/ICJCb3R0b20iIDoKCQkJCQkJL15lJC8udGVzdCggaSApID8gIlJpZ2h0IiA6ICJMZWZ0IiBdLmpvaW4oICIiICk7CgoJCQkJCXRhcmdldC5jc3MoIHBhZFBvcywgcGFkV3JhcHBlciApOwoKCQkJCQl0aGlzLl9wcm9wb3J0aW9uYWxseVJlc2l6ZSgpOwoJCQkJfQoKCQkJCXRoaXMuX2hhbmRsZXMgPSB0aGlzLl9oYW5kbGVzLmFkZCggdGhpcy5oYW5kbGVzWyBpIF0gKTsKCQkJfQoJCX07CgoJCS8vIFRPRE86IG1ha2UgcmVuZGVyQXhpcyBhIHByb3RvdHlwZSBmdW5jdGlvbgoJCXRoaXMuX3JlbmRlckF4aXMoIHRoaXMuZWxlbWVudCApOwoKCQl0aGlzLl9oYW5kbGVzID0gdGhpcy5faGFuZGxlcy5hZGQoIHRoaXMuZWxlbWVudC5maW5kKCAiLnVpLXJlc2l6YWJsZS1oYW5kbGUiICkgKTsKCQl0aGlzLl9oYW5kbGVzLmRpc2FibGVTZWxlY3Rpb24oKTsKCgkJdGhpcy5faGFuZGxlcy5vbiggIm1vdXNlb3ZlciIsIGZ1bmN0aW9uKCkgewoJCQlpZiAoICF0aGF0LnJlc2l6aW5nICkgewoJCQkJaWYgKCB0aGlzLmNsYXNzTmFtZSApIHsKCQkJCQlheGlzID0gdGhpcy5jbGFzc05hbWUubWF0Y2goIC91aS1yZXNpemFibGUtKHNlfHN3fG5lfG53fG58ZXxzfHcpL2kgKTsKCQkJCX0KCQkJCXRoYXQuYXhpcyA9IGF4aXMgJiYgYXhpc1sgMSBdID8gYXhpc1sgMSBdIDogInNlIjsKCQkJfQoJCX0gKTsKCgkJaWYgKCBvLmF1dG9IaWRlICkgewoJCQl0aGlzLl9oYW5kbGVzLmhpZGUoKTsKCQkJdGhpcy5fYWRkQ2xhc3MoICJ1aS1yZXNpemFibGUtYXV0b2hpZGUiICk7CgkJfQoJfSwKCglfcmVtb3ZlSGFuZGxlczogZnVuY3Rpb24oKSB7CgkJdGhpcy5faGFuZGxlcy5yZW1vdmUoKTsKCX0sCgoJX21vdXNlQ2FwdHVyZTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXZhciBpLCBoYW5kbGUsCgkJCWNhcHR1cmUgPSBmYWxzZTsKCgkJZm9yICggaSBpbiB0aGlzLmhhbmRsZXMgKSB7CgkJCWhhbmRsZSA9ICQoIHRoaXMuaGFuZGxlc1sgaSBdIClbIDAgXTsKCQkJaWYgKCBoYW5kbGUgPT09IGV2ZW50LnRhcmdldCB8fCAkLmNvbnRhaW5zKCBoYW5kbGUsIGV2ZW50LnRhcmdldCApICkgewoJCQkJY2FwdHVyZSA9IHRydWU7CgkJCX0KCQl9CgoJCXJldHVybiAhdGhpcy5vcHRpb25zLmRpc2FibGVkICYmIGNhcHR1cmU7Cgl9LAoKCV9tb3VzZVN0YXJ0OiBmdW5jdGlvbiggZXZlbnQgKSB7CgoJCXZhciBjdXJsZWZ0LCBjdXJ0b3AsIGN1cnNvciwKCQkJbyA9IHRoaXMub3B0aW9ucywKCQkJZWwgPSB0aGlzLmVsZW1lbnQ7CgoJCXRoaXMucmVzaXppbmcgPSB0cnVlOwoKCQl0aGlzLl9yZW5kZXJQcm94eSgpOwoKCQljdXJsZWZ0ID0gdGhpcy5fbnVtKCB0aGlzLmhlbHBlci5jc3MoICJsZWZ0IiApICk7CgkJY3VydG9wID0gdGhpcy5fbnVtKCB0aGlzLmhlbHBlci5jc3MoICJ0b3AiICkgKTsKCgkJaWYgKCBvLmNvbnRhaW5tZW50ICkgewoJCQljdXJsZWZ0ICs9ICQoIG8uY29udGFpbm1lbnQgKS5zY3JvbGxMZWZ0KCkgfHwgMDsKCQkJY3VydG9wICs9ICQoIG8uY29udGFpbm1lbnQgKS5zY3JvbGxUb3AoKSB8fCAwOwoJCX0KCgkJdGhpcy5vZmZzZXQgPSB0aGlzLmhlbHBlci5vZmZzZXQoKTsKCQl0aGlzLnBvc2l0aW9uID0geyBsZWZ0OiBjdXJsZWZ0LCB0b3A6IGN1cnRvcCB9OwoKCQl0aGlzLnNpemUgPSB0aGlzLl9oZWxwZXIgPyB7CgkJCQl3aWR0aDogdGhpcy5oZWxwZXIud2lkdGgoKSwKCQkJCWhlaWdodDogdGhpcy5oZWxwZXIuaGVpZ2h0KCkKCQkJfSA6IHsKCQkJCXdpZHRoOiBlbC53aWR0aCgpLAoJCQkJaGVpZ2h0OiBlbC5oZWlnaHQoKQoJCQl9OwoKCQl0aGlzLm9yaWdpbmFsU2l6ZSA9IHRoaXMuX2hlbHBlciA/IHsKCQkJCXdpZHRoOiBlbC5vdXRlcldpZHRoKCksCgkJCQloZWlnaHQ6IGVsLm91dGVySGVpZ2h0KCkKCQkJfSA6IHsKCQkJCXdpZHRoOiBlbC53aWR0aCgpLAoJCQkJaGVpZ2h0OiBlbC5oZWlnaHQoKQoJCQl9OwoKCQl0aGlzLnNpemVEaWZmID0gewoJCQl3aWR0aDogZWwub3V0ZXJXaWR0aCgpIC0gZWwud2lkdGgoKSwKCQkJaGVpZ2h0OiBlbC5vdXRlckhlaWdodCgpIC0gZWwuaGVpZ2h0KCkKCQl9OwoKCQl0aGlzLm9yaWdpbmFsUG9zaXRpb24gPSB7IGxlZnQ6IGN1cmxlZnQsIHRvcDogY3VydG9wIH07CgkJdGhpcy5vcmlnaW5hbE1vdXNlUG9zaXRpb24gPSB7IGxlZnQ6IGV2ZW50LnBhZ2VYLCB0b3A6IGV2ZW50LnBhZ2VZIH07CgoJCXRoaXMuYXNwZWN0UmF0aW8gPSAoIHR5cGVvZiBvLmFzcGVjdFJhdGlvID09PSAibnVtYmVyIiApID8KCQkJby5hc3BlY3RSYXRpbyA6CgkJCSggKCB0aGlzLm9yaWdpbmFsU2l6ZS53aWR0aCAvIHRoaXMub3JpZ2luYWxTaXplLmhlaWdodCApIHx8IDEgKTsKCgkJY3Vyc29yID0gJCggIi51aS1yZXNpemFibGUtIiArIHRoaXMuYXhpcyApLmNzcyggImN1cnNvciIgKTsKCQkkKCAiYm9keSIgKS5jc3MoICJjdXJzb3IiLCBjdXJzb3IgPT09ICJhdXRvIiA/IHRoaXMuYXhpcyArICItcmVzaXplIiA6IGN1cnNvciApOwoKCQl0aGlzLl9hZGRDbGFzcyggInVpLXJlc2l6YWJsZS1yZXNpemluZyIgKTsKCQl0aGlzLl9wcm9wYWdhdGUoICJzdGFydCIsIGV2ZW50ICk7CgkJcmV0dXJuIHRydWU7Cgl9LAoKCV9tb3VzZURyYWc6IGZ1bmN0aW9uKCBldmVudCApIHsKCgkJdmFyIGRhdGEsIHByb3BzLAoJCQlzbXAgPSB0aGlzLm9yaWdpbmFsTW91c2VQb3NpdGlvbiwKCQkJYSA9IHRoaXMuYXhpcywKCQkJZHggPSAoIGV2ZW50LnBhZ2VYIC0gc21wLmxlZnQgKSB8fCAwLAoJCQlkeSA9ICggZXZlbnQucGFnZVkgLSBzbXAudG9wICkgfHwgMCwKCQkJdHJpZ2dlciA9IHRoaXMuX2NoYW5nZVsgYSBdOwoKCQl0aGlzLl91cGRhdGVQcmV2UHJvcGVydGllcygpOwoKCQlpZiAoICF0cmlnZ2VyICkgewoJCQlyZXR1cm4gZmFsc2U7CgkJfQoKCQlkYXRhID0gdHJpZ2dlci5hcHBseSggdGhpcywgWyBldmVudCwgZHgsIGR5IF0gKTsKCgkJdGhpcy5fdXBkYXRlVmlydHVhbEJvdW5kYXJpZXMoIGV2ZW50LnNoaWZ0S2V5ICk7CgkJaWYgKCB0aGlzLl9hc3BlY3RSYXRpbyB8fCBldmVudC5zaGlmdEtleSApIHsKCQkJZGF0YSA9IHRoaXMuX3VwZGF0ZVJhdGlvKCBkYXRhLCBldmVudCApOwoJCX0KCgkJZGF0YSA9IHRoaXMuX3Jlc3BlY3RTaXplKCBkYXRhLCBldmVudCApOwoKCQl0aGlzLl91cGRhdGVDYWNoZSggZGF0YSApOwoKCQl0aGlzLl9wcm9wYWdhdGUoICJyZXNpemUiLCBldmVudCApOwoKCQlwcm9wcyA9IHRoaXMuX2FwcGx5Q2hhbmdlcygpOwoKCQlpZiAoICF0aGlzLl9oZWxwZXIgJiYgdGhpcy5fcHJvcG9ydGlvbmFsbHlSZXNpemVFbGVtZW50cy5sZW5ndGggKSB7CgkJCXRoaXMuX3Byb3BvcnRpb25hbGx5UmVzaXplKCk7CgkJfQoKCQlpZiAoICEkLmlzRW1wdHlPYmplY3QoIHByb3BzICkgKSB7CgkJCXRoaXMuX3VwZGF0ZVByZXZQcm9wZXJ0aWVzKCk7CgkJCXRoaXMuX3RyaWdnZXIoICJyZXNpemUiLCBldmVudCwgdGhpcy51aSgpICk7CgkJCXRoaXMuX2FwcGx5Q2hhbmdlcygpOwoJCX0KCgkJcmV0dXJuIGZhbHNlOwoJfSwKCglfbW91c2VTdG9wOiBmdW5jdGlvbiggZXZlbnQgKSB7CgoJCXRoaXMucmVzaXppbmcgPSBmYWxzZTsKCQl2YXIgcHIsIGlzdGEsIHNvZmZzZXRoLCBzb2Zmc2V0dywgcywgbGVmdCwgdG9wLAoJCQlvID0gdGhpcy5vcHRpb25zLCB0aGF0ID0gdGhpczsKCgkJaWYgKCB0aGlzLl9oZWxwZXIgKSB7CgoJCQlwciA9IHRoaXMuX3Byb3BvcnRpb25hbGx5UmVzaXplRWxlbWVudHM7CgkJCWlzdGEgPSBwci5sZW5ndGggJiYgKCAvdGV4dGFyZWEvaSApLnRlc3QoIHByWyAwIF0ubm9kZU5hbWUgKTsKCQkJc29mZnNldGggPSBpc3RhICYmIHRoaXMuX2hhc1Njcm9sbCggcHJbIDAgXSwgImxlZnQiICkgPyAwIDogdGhhdC5zaXplRGlmZi5oZWlnaHQ7CgkJCXNvZmZzZXR3ID0gaXN0YSA/IDAgOiB0aGF0LnNpemVEaWZmLndpZHRoOwoKCQkJcyA9IHsKCQkJCXdpZHRoOiAoIHRoYXQuaGVscGVyLndpZHRoKCkgIC0gc29mZnNldHcgKSwKCQkJCWhlaWdodDogKCB0aGF0LmhlbHBlci5oZWlnaHQoKSAtIHNvZmZzZXRoICkKCQkJfTsKCQkJbGVmdCA9ICggcGFyc2VGbG9hdCggdGhhdC5lbGVtZW50LmNzcyggImxlZnQiICkgKSArCgkJCQkoIHRoYXQucG9zaXRpb24ubGVmdCAtIHRoYXQub3JpZ2luYWxQb3NpdGlvbi5sZWZ0ICkgKSB8fCBudWxsOwoJCQl0b3AgPSAoIHBhcnNlRmxvYXQoIHRoYXQuZWxlbWVudC5jc3MoICJ0b3AiICkgKSArCgkJCQkoIHRoYXQucG9zaXRpb24udG9wIC0gdGhhdC5vcmlnaW5hbFBvc2l0aW9uLnRvcCApICkgfHwgbnVsbDsKCgkJCWlmICggIW8uYW5pbWF0ZSApIHsKCQkJCXRoaXMuZWxlbWVudC5jc3MoICQuZXh0ZW5kKCBzLCB7IHRvcDogdG9wLCBsZWZ0OiBsZWZ0IH0gKSApOwoJCQl9CgoJCQl0aGF0LmhlbHBlci5oZWlnaHQoIHRoYXQuc2l6ZS5oZWlnaHQgKTsKCQkJdGhhdC5oZWxwZXIud2lkdGgoIHRoYXQuc2l6ZS53aWR0aCApOwoKCQkJaWYgKCB0aGlzLl9oZWxwZXIgJiYgIW8uYW5pbWF0ZSApIHsKCQkJCXRoaXMuX3Byb3BvcnRpb25hbGx5UmVzaXplKCk7CgkJCX0KCQl9CgoJCSQoICJib2R5IiApLmNzcyggImN1cnNvciIsICJhdXRvIiApOwoKCQl0aGlzLl9yZW1vdmVDbGFzcyggInVpLXJlc2l6YWJsZS1yZXNpemluZyIgKTsKCgkJdGhpcy5fcHJvcGFnYXRlKCAic3RvcCIsIGV2ZW50ICk7CgoJCWlmICggdGhpcy5faGVscGVyICkgewoJCQl0aGlzLmhlbHBlci5yZW1vdmUoKTsKCQl9CgoJCXJldHVybiBmYWxzZTsKCgl9LAoKCV91cGRhdGVQcmV2UHJvcGVydGllczogZnVuY3Rpb24oKSB7CgkJdGhpcy5wcmV2UG9zaXRpb24gPSB7CgkJCXRvcDogdGhpcy5wb3NpdGlvbi50b3AsCgkJCWxlZnQ6IHRoaXMucG9zaXRpb24ubGVmdAoJCX07CgkJdGhpcy5wcmV2U2l6ZSA9IHsKCQkJd2lkdGg6IHRoaXMuc2l6ZS53aWR0aCwKCQkJaGVpZ2h0OiB0aGlzLnNpemUuaGVpZ2h0CgkJfTsKCX0sCgoJX2FwcGx5Q2hhbmdlczogZnVuY3Rpb24oKSB7CgkJdmFyIHByb3BzID0ge307CgoJCWlmICggdGhpcy5wb3NpdGlvbi50b3AgIT09IHRoaXMucHJldlBvc2l0aW9uLnRvcCApIHsKCQkJcHJvcHMudG9wID0gdGhpcy5wb3NpdGlvbi50b3AgKyAicHgiOwoJCX0KCQlpZiAoIHRoaXMucG9zaXRpb24ubGVmdCAhPT0gdGhpcy5wcmV2UG9zaXRpb24ubGVmdCApIHsKCQkJcHJvcHMubGVmdCA9IHRoaXMucG9zaXRpb24ubGVmdCArICJweCI7CgkJfQoJCWlmICggdGhpcy5zaXplLndpZHRoICE9PSB0aGlzLnByZXZTaXplLndpZHRoICkgewoJCQlwcm9wcy53aWR0aCA9IHRoaXMuc2l6ZS53aWR0aCArICJweCI7CgkJfQoJCWlmICggdGhpcy5zaXplLmhlaWdodCAhPT0gdGhpcy5wcmV2U2l6ZS5oZWlnaHQgKSB7CgkJCXByb3BzLmhlaWdodCA9IHRoaXMuc2l6ZS5oZWlnaHQgKyAicHgiOwoJCX0KCgkJdGhpcy5oZWxwZXIuY3NzKCBwcm9wcyApOwoKCQlyZXR1cm4gcHJvcHM7Cgl9LAoKCV91cGRhdGVWaXJ0dWFsQm91bmRhcmllczogZnVuY3Rpb24oIGZvcmNlQXNwZWN0UmF0aW8gKSB7CgkJdmFyIHBNaW5XaWR0aCwgcE1heFdpZHRoLCBwTWluSGVpZ2h0LCBwTWF4SGVpZ2h0LCBiLAoJCQlvID0gdGhpcy5vcHRpb25zOwoKCQliID0gewoJCQltaW5XaWR0aDogdGhpcy5faXNOdW1iZXIoIG8ubWluV2lkdGggKSA/IG8ubWluV2lkdGggOiAwLAoJCQltYXhXaWR0aDogdGhpcy5faXNOdW1iZXIoIG8ubWF4V2lkdGggKSA/IG8ubWF4V2lkdGggOiBJbmZpbml0eSwKCQkJbWluSGVpZ2h0OiB0aGlzLl9pc051bWJlciggby5taW5IZWlnaHQgKSA/IG8ubWluSGVpZ2h0IDogMCwKCQkJbWF4SGVpZ2h0OiB0aGlzLl9pc051bWJlciggby5tYXhIZWlnaHQgKSA/IG8ubWF4SGVpZ2h0IDogSW5maW5pdHkKCQl9OwoKCQlpZiAoIHRoaXMuX2FzcGVjdFJhdGlvIHx8IGZvcmNlQXNwZWN0UmF0aW8gKSB7CgkJCXBNaW5XaWR0aCA9IGIubWluSGVpZ2h0ICogdGhpcy5hc3BlY3RSYXRpbzsKCQkJcE1pbkhlaWdodCA9IGIubWluV2lkdGggLyB0aGlzLmFzcGVjdFJhdGlvOwoJCQlwTWF4V2lkdGggPSBiLm1heEhlaWdodCAqIHRoaXMuYXNwZWN0UmF0aW87CgkJCXBNYXhIZWlnaHQgPSBiLm1heFdpZHRoIC8gdGhpcy5hc3BlY3RSYXRpbzsKCgkJCWlmICggcE1pbldpZHRoID4gYi5taW5XaWR0aCApIHsKCQkJCWIubWluV2lkdGggPSBwTWluV2lkdGg7CgkJCX0KCQkJaWYgKCBwTWluSGVpZ2h0ID4gYi5taW5IZWlnaHQgKSB7CgkJCQliLm1pbkhlaWdodCA9IHBNaW5IZWlnaHQ7CgkJCX0KCQkJaWYgKCBwTWF4V2lkdGggPCBiLm1heFdpZHRoICkgewoJCQkJYi5tYXhXaWR0aCA9IHBNYXhXaWR0aDsKCQkJfQoJCQlpZiAoIHBNYXhIZWlnaHQgPCBiLm1heEhlaWdodCApIHsKCQkJCWIubWF4SGVpZ2h0ID0gcE1heEhlaWdodDsKCQkJfQoJCX0KCQl0aGlzLl92Qm91bmRhcmllcyA9IGI7Cgl9LAoKCV91cGRhdGVDYWNoZTogZnVuY3Rpb24oIGRhdGEgKSB7CgkJdGhpcy5vZmZzZXQgPSB0aGlzLmhlbHBlci5vZmZzZXQoKTsKCQlpZiAoIHRoaXMuX2lzTnVtYmVyKCBkYXRhLmxlZnQgKSApIHsKCQkJdGhpcy5wb3NpdGlvbi5sZWZ0ID0gZGF0YS5sZWZ0OwoJCX0KCQlpZiAoIHRoaXMuX2lzTnVtYmVyKCBkYXRhLnRvcCApICkgewoJCQl0aGlzLnBvc2l0aW9uLnRvcCA9IGRhdGEudG9wOwoJCX0KCQlpZiAoIHRoaXMuX2lzTnVtYmVyKCBkYXRhLmhlaWdodCApICkgewoJCQl0aGlzLnNpemUuaGVpZ2h0ID0gZGF0YS5oZWlnaHQ7CgkJfQoJCWlmICggdGhpcy5faXNOdW1iZXIoIGRhdGEud2lkdGggKSApIHsKCQkJdGhpcy5zaXplLndpZHRoID0gZGF0YS53aWR0aDsKCQl9Cgl9LAoKCV91cGRhdGVSYXRpbzogZnVuY3Rpb24oIGRhdGEgKSB7CgoJCXZhciBjcG9zID0gdGhpcy5wb3NpdGlvbiwKCQkJY3NpemUgPSB0aGlzLnNpemUsCgkJCWEgPSB0aGlzLmF4aXM7CgoJCWlmICggdGhpcy5faXNOdW1iZXIoIGRhdGEuaGVpZ2h0ICkgKSB7CgkJCWRhdGEud2lkdGggPSAoIGRhdGEuaGVpZ2h0ICogdGhpcy5hc3BlY3RSYXRpbyApOwoJCX0gZWxzZSBpZiAoIHRoaXMuX2lzTnVtYmVyKCBkYXRhLndpZHRoICkgKSB7CgkJCWRhdGEuaGVpZ2h0ID0gKCBkYXRhLndpZHRoIC8gdGhpcy5hc3BlY3RSYXRpbyApOwoJCX0KCgkJaWYgKCBhID09PSAic3ciICkgewoJCQlkYXRhLmxlZnQgPSBjcG9zLmxlZnQgKyAoIGNzaXplLndpZHRoIC0gZGF0YS53aWR0aCApOwoJCQlkYXRhLnRvcCA9IG51bGw7CgkJfQoJCWlmICggYSA9PT0gIm53IiApIHsKCQkJZGF0YS50b3AgPSBjcG9zLnRvcCArICggY3NpemUuaGVpZ2h0IC0gZGF0YS5oZWlnaHQgKTsKCQkJZGF0YS5sZWZ0ID0gY3Bvcy5sZWZ0ICsgKCBjc2l6ZS53aWR0aCAtIGRhdGEud2lkdGggKTsKCQl9CgoJCXJldHVybiBkYXRhOwoJfSwKCglfcmVzcGVjdFNpemU6IGZ1bmN0aW9uKCBkYXRhICkgewoKCQl2YXIgbyA9IHRoaXMuX3ZCb3VuZGFyaWVzLAoJCQlhID0gdGhpcy5heGlzLAoJCQlpc21heHcgPSB0aGlzLl9pc051bWJlciggZGF0YS53aWR0aCApICYmIG8ubWF4V2lkdGggJiYgKCBvLm1heFdpZHRoIDwgZGF0YS53aWR0aCApLAoJCQlpc21heGggPSB0aGlzLl9pc051bWJlciggZGF0YS5oZWlnaHQgKSAmJiBvLm1heEhlaWdodCAmJiAoIG8ubWF4SGVpZ2h0IDwgZGF0YS5oZWlnaHQgKSwKCQkJaXNtaW53ID0gdGhpcy5faXNOdW1iZXIoIGRhdGEud2lkdGggKSAmJiBvLm1pbldpZHRoICYmICggby5taW5XaWR0aCA+IGRhdGEud2lkdGggKSwKCQkJaXNtaW5oID0gdGhpcy5faXNOdW1iZXIoIGRhdGEuaGVpZ2h0ICkgJiYgby5taW5IZWlnaHQgJiYgKCBvLm1pbkhlaWdodCA+IGRhdGEuaGVpZ2h0ICksCgkJCWR3ID0gdGhpcy5vcmlnaW5hbFBvc2l0aW9uLmxlZnQgKyB0aGlzLm9yaWdpbmFsU2l6ZS53aWR0aCwKCQkJZGggPSB0aGlzLm9yaWdpbmFsUG9zaXRpb24udG9wICsgdGhpcy5vcmlnaW5hbFNpemUuaGVpZ2h0LAoJCQljdyA9IC9zd3xud3x3Ly50ZXN0KCBhICksIGNoID0gL253fG5lfG4vLnRlc3QoIGEgKTsKCQlpZiAoIGlzbWludyApIHsKCQkJZGF0YS53aWR0aCA9IG8ubWluV2lkdGg7CgkJfQoJCWlmICggaXNtaW5oICkgewoJCQlkYXRhLmhlaWdodCA9IG8ubWluSGVpZ2h0OwoJCX0KCQlpZiAoIGlzbWF4dyApIHsKCQkJZGF0YS53aWR0aCA9IG8ubWF4V2lkdGg7CgkJfQoJCWlmICggaXNtYXhoICkgewoJCQlkYXRhLmhlaWdodCA9IG8ubWF4SGVpZ2h0OwoJCX0KCgkJaWYgKCBpc21pbncgJiYgY3cgKSB7CgkJCWRhdGEubGVmdCA9IGR3IC0gby5taW5XaWR0aDsKCQl9CgkJaWYgKCBpc21heHcgJiYgY3cgKSB7CgkJCWRhdGEubGVmdCA9IGR3IC0gby5tYXhXaWR0aDsKCQl9CgkJaWYgKCBpc21pbmggJiYgY2ggKSB7CgkJCWRhdGEudG9wID0gZGggLSBvLm1pbkhlaWdodDsKCQl9CgkJaWYgKCBpc21heGggJiYgY2ggKSB7CgkJCWRhdGEudG9wID0gZGggLSBvLm1heEhlaWdodDsKCQl9CgoJCS8vIEZpeGluZyBqdW1wIGVycm9yIG9uIHRvcC9sZWZ0IC0gYnVnICMyMzMwCgkJaWYgKCAhZGF0YS53aWR0aCAmJiAhZGF0YS5oZWlnaHQgJiYgIWRhdGEubGVmdCAmJiBkYXRhLnRvcCApIHsKCQkJZGF0YS50b3AgPSBudWxsOwoJCX0gZWxzZSBpZiAoICFkYXRhLndpZHRoICYmICFkYXRhLmhlaWdodCAmJiAhZGF0YS50b3AgJiYgZGF0YS5sZWZ0ICkgewoJCQlkYXRhLmxlZnQgPSBudWxsOwoJCX0KCgkJcmV0dXJuIGRhdGE7Cgl9LAoKCV9nZXRQYWRkaW5nUGx1c0JvcmRlckRpbWVuc2lvbnM6IGZ1bmN0aW9uKCBlbGVtZW50ICkgewoJCXZhciBpID0gMCwKCQkJd2lkdGhzID0gW10sCgkJCWJvcmRlcnMgPSBbCgkJCQllbGVtZW50LmNzcyggImJvcmRlclRvcFdpZHRoIiApLAoJCQkJZWxlbWVudC5jc3MoICJib3JkZXJSaWdodFdpZHRoIiApLAoJCQkJZWxlbWVudC5jc3MoICJib3JkZXJCb3R0b21XaWR0aCIgKSwKCQkJCWVsZW1lbnQuY3NzKCAiYm9yZGVyTGVmdFdpZHRoIiApCgkJCV0sCgkJCXBhZGRpbmdzID0gWwoJCQkJZWxlbWVudC5jc3MoICJwYWRkaW5nVG9wIiApLAoJCQkJZWxlbWVudC5jc3MoICJwYWRkaW5nUmlnaHQiICksCgkJCQllbGVtZW50LmNzcyggInBhZGRpbmdCb3R0b20iICksCgkJCQllbGVtZW50LmNzcyggInBhZGRpbmdMZWZ0IiApCgkJCV07CgoJCWZvciAoIDsgaSA8IDQ7IGkrKyApIHsKCQkJd2lkdGhzWyBpIF0gPSAoIHBhcnNlRmxvYXQoIGJvcmRlcnNbIGkgXSApIHx8IDAgKTsKCQkJd2lkdGhzWyBpIF0gKz0gKCBwYXJzZUZsb2F0KCBwYWRkaW5nc1sgaSBdICkgfHwgMCApOwoJCX0KCgkJcmV0dXJuIHsKCQkJaGVpZ2h0OiB3aWR0aHNbIDAgXSArIHdpZHRoc1sgMiBdLAoJCQl3aWR0aDogd2lkdGhzWyAxIF0gKyB3aWR0aHNbIDMgXQoJCX07Cgl9LAoKCV9wcm9wb3J0aW9uYWxseVJlc2l6ZTogZnVuY3Rpb24oKSB7CgoJCWlmICggIXRoaXMuX3Byb3BvcnRpb25hbGx5UmVzaXplRWxlbWVudHMubGVuZ3RoICkgewoJCQlyZXR1cm47CgkJfQoKCQl2YXIgcHJlbCwKCQkJaSA9IDAsCgkJCWVsZW1lbnQgPSB0aGlzLmhlbHBlciB8fCB0aGlzLmVsZW1lbnQ7CgoJCWZvciAoIDsgaSA8IHRoaXMuX3Byb3BvcnRpb25hbGx5UmVzaXplRWxlbWVudHMubGVuZ3RoOyBpKysgKSB7CgoJCQlwcmVsID0gdGhpcy5fcHJvcG9ydGlvbmFsbHlSZXNpemVFbGVtZW50c1sgaSBdOwoKCQkJLy8gVE9ETzogU2VlbXMgbGlrZSBhIGJ1ZyB0byBjYWNoZSB0aGlzLm91dGVyRGltZW5zaW9ucwoJCQkvLyBjb25zaWRlcmluZyB0aGF0IHdlIGFyZSBpbiBhIGxvb3AuCgkJCWlmICggIXRoaXMub3V0ZXJEaW1lbnNpb25zICkgewoJCQkJdGhpcy5vdXRlckRpbWVuc2lvbnMgPSB0aGlzLl9nZXRQYWRkaW5nUGx1c0JvcmRlckRpbWVuc2lvbnMoIHByZWwgKTsKCQkJfQoKCQkJcHJlbC5jc3MoIHsKCQkJCWhlaWdodDogKCBlbGVtZW50LmhlaWdodCgpIC0gdGhpcy5vdXRlckRpbWVuc2lvbnMuaGVpZ2h0ICkgfHwgMCwKCQkJCXdpZHRoOiAoIGVsZW1lbnQud2lkdGgoKSAtIHRoaXMub3V0ZXJEaW1lbnNpb25zLndpZHRoICkgfHwgMAoJCQl9ICk7CgoJCX0KCgl9LAoKCV9yZW5kZXJQcm94eTogZnVuY3Rpb24oKSB7CgoJCXZhciBlbCA9IHRoaXMuZWxlbWVudCwgbyA9IHRoaXMub3B0aW9uczsKCQl0aGlzLmVsZW1lbnRPZmZzZXQgPSBlbC5vZmZzZXQoKTsKCgkJaWYgKCB0aGlzLl9oZWxwZXIgKSB7CgoJCQl0aGlzLmhlbHBlciA9IHRoaXMuaGVscGVyIHx8ICQoICI8ZGl2IHN0eWxlPSdvdmVyZmxvdzpoaWRkZW47Jz48L2Rpdj4iICk7CgoJCQl0aGlzLl9hZGRDbGFzcyggdGhpcy5oZWxwZXIsIHRoaXMuX2hlbHBlciApOwoJCQl0aGlzLmhlbHBlci5jc3MoIHsKCQkJCXdpZHRoOiB0aGlzLmVsZW1lbnQub3V0ZXJXaWR0aCgpLAoJCQkJaGVpZ2h0OiB0aGlzLmVsZW1lbnQub3V0ZXJIZWlnaHQoKSwKCQkJCXBvc2l0aW9uOiAiYWJzb2x1dGUiLAoJCQkJbGVmdDogdGhpcy5lbGVtZW50T2Zmc2V0LmxlZnQgKyAicHgiLAoJCQkJdG9wOiB0aGlzLmVsZW1lbnRPZmZzZXQudG9wICsgInB4IiwKCQkJCXpJbmRleDogKytvLnpJbmRleCAvL1RPRE86IERvbid0IG1vZGlmeSBvcHRpb24KCQkJfSApOwoKCQkJdGhpcy5oZWxwZXIKCQkJCS5hcHBlbmRUbyggImJvZHkiICkKCQkJCS5kaXNhYmxlU2VsZWN0aW9uKCk7CgoJCX0gZWxzZSB7CgkJCXRoaXMuaGVscGVyID0gdGhpcy5lbGVtZW50OwoJCX0KCgl9LAoKCV9jaGFuZ2U6IHsKCQllOiBmdW5jdGlvbiggZXZlbnQsIGR4ICkgewoJCQlyZXR1cm4geyB3aWR0aDogdGhpcy5vcmlnaW5hbFNpemUud2lkdGggKyBkeCB9OwoJCX0sCgkJdzogZnVuY3Rpb24oIGV2ZW50LCBkeCApIHsKCQkJdmFyIGNzID0gdGhpcy5vcmlnaW5hbFNpemUsIHNwID0gdGhpcy5vcmlnaW5hbFBvc2l0aW9uOwoJCQlyZXR1cm4geyBsZWZ0OiBzcC5sZWZ0ICsgZHgsIHdpZHRoOiBjcy53aWR0aCAtIGR4IH07CgkJfSwKCQluOiBmdW5jdGlvbiggZXZlbnQsIGR4LCBkeSApIHsKCQkJdmFyIGNzID0gdGhpcy5vcmlnaW5hbFNpemUsIHNwID0gdGhpcy5vcmlnaW5hbFBvc2l0aW9uOwoJCQlyZXR1cm4geyB0b3A6IHNwLnRvcCArIGR5LCBoZWlnaHQ6IGNzLmhlaWdodCAtIGR5IH07CgkJfSwKCQlzOiBmdW5jdGlvbiggZXZlbnQsIGR4LCBkeSApIHsKCQkJcmV0dXJuIHsgaGVpZ2h0OiB0aGlzLm9yaWdpbmFsU2l6ZS5oZWlnaHQgKyBkeSB9OwoJCX0sCgkJc2U6IGZ1bmN0aW9uKCBldmVudCwgZHgsIGR5ICkgewoJCQlyZXR1cm4gJC5leHRlbmQoIHRoaXMuX2NoYW5nZS5zLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKSwKCQkJCXRoaXMuX2NoYW5nZS5lLmFwcGx5KCB0aGlzLCBbIGV2ZW50LCBkeCwgZHkgXSApICk7CgkJfSwKCQlzdzogZnVuY3Rpb24oIGV2ZW50LCBkeCwgZHkgKSB7CgkJCXJldHVybiAkLmV4dGVuZCggdGhpcy5fY2hhbmdlLnMuYXBwbHkoIHRoaXMsIGFyZ3VtZW50cyApLAoJCQkJdGhpcy5fY2hhbmdlLncuYXBwbHkoIHRoaXMsIFsgZXZlbnQsIGR4LCBkeSBdICkgKTsKCQl9LAoJCW5lOiBmdW5jdGlvbiggZXZlbnQsIGR4LCBkeSApIHsKCQkJcmV0dXJuICQuZXh0ZW5kKCB0aGlzLl9jaGFuZ2Uubi5hcHBseSggdGhpcywgYXJndW1lbnRzICksCgkJCQl0aGlzLl9jaGFuZ2UuZS5hcHBseSggdGhpcywgWyBldmVudCwgZHgsIGR5IF0gKSApOwoJCX0sCgkJbnc6IGZ1bmN0aW9uKCBldmVudCwgZHgsIGR5ICkgewoJCQlyZXR1cm4gJC5leHRlbmQoIHRoaXMuX2NoYW5nZS5uLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKSwKCQkJCXRoaXMuX2NoYW5nZS53LmFwcGx5KCB0aGlzLCBbIGV2ZW50LCBkeCwgZHkgXSApICk7CgkJfQoJfSwKCglfcHJvcGFnYXRlOiBmdW5jdGlvbiggbiwgZXZlbnQgKSB7CgkJJC51aS5wbHVnaW4uY2FsbCggdGhpcywgbiwgWyBldmVudCwgdGhpcy51aSgpIF0gKTsKCQkoIG4gIT09ICJyZXNpemUiICYmIHRoaXMuX3RyaWdnZXIoIG4sIGV2ZW50LCB0aGlzLnVpKCkgKSApOwoJfSwKCglwbHVnaW5zOiB7fSwKCgl1aTogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHsKCQkJb3JpZ2luYWxFbGVtZW50OiB0aGlzLm9yaWdpbmFsRWxlbWVudCwKCQkJZWxlbWVudDogdGhpcy5lbGVtZW50LAoJCQloZWxwZXI6IHRoaXMuaGVscGVyLAoJCQlwb3NpdGlvbjogdGhpcy5wb3NpdGlvbiwKCQkJc2l6ZTogdGhpcy5zaXplLAoJCQlvcmlnaW5hbFNpemU6IHRoaXMub3JpZ2luYWxTaXplLAoJCQlvcmlnaW5hbFBvc2l0aW9uOiB0aGlzLm9yaWdpbmFsUG9zaXRpb24KCQl9OwoJfQoKfSApOwoKLyoKICogUmVzaXphYmxlIEV4dGVuc2lvbnMKICovCgokLnVpLnBsdWdpbi5hZGQoICJyZXNpemFibGUiLCAiYW5pbWF0ZSIsIHsKCglzdG9wOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdmFyIHRoYXQgPSAkKCB0aGlzICkucmVzaXphYmxlKCAiaW5zdGFuY2UiICksCgkJCW8gPSB0aGF0Lm9wdGlvbnMsCgkJCXByID0gdGhhdC5fcHJvcG9ydGlvbmFsbHlSZXNpemVFbGVtZW50cywKCQkJaXN0YSA9IHByLmxlbmd0aCAmJiAoIC90ZXh0YXJlYS9pICkudGVzdCggcHJbIDAgXS5ub2RlTmFtZSApLAoJCQlzb2Zmc2V0aCA9IGlzdGEgJiYgdGhhdC5faGFzU2Nyb2xsKCBwclsgMCBdLCAibGVmdCIgKSA/IDAgOiB0aGF0LnNpemVEaWZmLmhlaWdodCwKCQkJc29mZnNldHcgPSBpc3RhID8gMCA6IHRoYXQuc2l6ZURpZmYud2lkdGgsCgkJCXN0eWxlID0gewoJCQkJd2lkdGg6ICggdGhhdC5zaXplLndpZHRoIC0gc29mZnNldHcgKSwKCQkJCWhlaWdodDogKCB0aGF0LnNpemUuaGVpZ2h0IC0gc29mZnNldGggKQoJCQl9LAoJCQlsZWZ0ID0gKCBwYXJzZUZsb2F0KCB0aGF0LmVsZW1lbnQuY3NzKCAibGVmdCIgKSApICsKCQkJCSggdGhhdC5wb3NpdGlvbi5sZWZ0IC0gdGhhdC5vcmlnaW5hbFBvc2l0aW9uLmxlZnQgKSApIHx8IG51bGwsCgkJCXRvcCA9ICggcGFyc2VGbG9hdCggdGhhdC5lbGVtZW50LmNzcyggInRvcCIgKSApICsKCQkJCSggdGhhdC5wb3NpdGlvbi50b3AgLSB0aGF0Lm9yaWdpbmFsUG9zaXRpb24udG9wICkgKSB8fCBudWxsOwoKCQl0aGF0LmVsZW1lbnQuYW5pbWF0ZSgKCQkJJC5leHRlbmQoIHN0eWxlLCB0b3AgJiYgbGVmdCA/IHsgdG9wOiB0b3AsIGxlZnQ6IGxlZnQgfSA6IHt9ICksIHsKCQkJCWR1cmF0aW9uOiBvLmFuaW1hdGVEdXJhdGlvbiwKCQkJCWVhc2luZzogby5hbmltYXRlRWFzaW5nLAoJCQkJc3RlcDogZnVuY3Rpb24oKSB7CgoJCQkJCXZhciBkYXRhID0gewoJCQkJCQl3aWR0aDogcGFyc2VGbG9hdCggdGhhdC5lbGVtZW50LmNzcyggIndpZHRoIiApICksCgkJCQkJCWhlaWdodDogcGFyc2VGbG9hdCggdGhhdC5lbGVtZW50LmNzcyggImhlaWdodCIgKSApLAoJCQkJCQl0b3A6IHBhcnNlRmxvYXQoIHRoYXQuZWxlbWVudC5jc3MoICJ0b3AiICkgKSwKCQkJCQkJbGVmdDogcGFyc2VGbG9hdCggdGhhdC5lbGVtZW50LmNzcyggImxlZnQiICkgKQoJCQkJCX07CgoJCQkJCWlmICggcHIgJiYgcHIubGVuZ3RoICkgewoJCQkJCQkkKCBwclsgMCBdICkuY3NzKCB7IHdpZHRoOiBkYXRhLndpZHRoLCBoZWlnaHQ6IGRhdGEuaGVpZ2h0IH0gKTsKCQkJCQl9CgoJCQkJCS8vIFByb3BhZ2F0aW5nIHJlc2l6ZSwgYW5kIHVwZGF0aW5nIHZhbHVlcyBmb3IgZWFjaCBhbmltYXRpb24gc3RlcAoJCQkJCXRoYXQuX3VwZGF0ZUNhY2hlKCBkYXRhICk7CgkJCQkJdGhhdC5fcHJvcGFnYXRlKCAicmVzaXplIiwgZXZlbnQgKTsKCgkJCQl9CgkJCX0KCQkpOwoJfQoKfSApOwoKJC51aS5wbHVnaW4uYWRkKCAicmVzaXphYmxlIiwgImNvbnRhaW5tZW50IiwgewoKCXN0YXJ0OiBmdW5jdGlvbigpIHsKCQl2YXIgZWxlbWVudCwgcCwgY28sIGNoLCBjdywgd2lkdGgsIGhlaWdodCwKCQkJdGhhdCA9ICQoIHRoaXMgKS5yZXNpemFibGUoICJpbnN0YW5jZSIgKSwKCQkJbyA9IHRoYXQub3B0aW9ucywKCQkJZWwgPSB0aGF0LmVsZW1lbnQsCgkJCW9jID0gby5jb250YWlubWVudCwKCQkJY2UgPSAoIG9jIGluc3RhbmNlb2YgJCApID8KCQkJCW9jLmdldCggMCApIDoKCQkJCSggL3BhcmVudC8udGVzdCggb2MgKSApID8gZWwucGFyZW50KCkuZ2V0KCAwICkgOiBvYzsKCgkJaWYgKCAhY2UgKSB7CgkJCXJldHVybjsKCQl9CgoJCXRoYXQuY29udGFpbmVyRWxlbWVudCA9ICQoIGNlICk7CgoJCWlmICggL2RvY3VtZW50Ly50ZXN0KCBvYyApIHx8IG9jID09PSBkb2N1bWVudCApIHsKCQkJdGhhdC5jb250YWluZXJPZmZzZXQgPSB7CgkJCQlsZWZ0OiAwLAoJCQkJdG9wOiAwCgkJCX07CgkJCXRoYXQuY29udGFpbmVyUG9zaXRpb24gPSB7CgkJCQlsZWZ0OiAwLAoJCQkJdG9wOiAwCgkJCX07CgoJCQl0aGF0LnBhcmVudERhdGEgPSB7CgkJCQllbGVtZW50OiAkKCBkb2N1bWVudCApLAoJCQkJbGVmdDogMCwKCQkJCXRvcDogMCwKCQkJCXdpZHRoOiAkKCBkb2N1bWVudCApLndpZHRoKCksCgkJCQloZWlnaHQ6ICQoIGRvY3VtZW50ICkuaGVpZ2h0KCkgfHwgZG9jdW1lbnQuYm9keS5wYXJlbnROb2RlLnNjcm9sbEhlaWdodAoJCQl9OwoJCX0gZWxzZSB7CgkJCWVsZW1lbnQgPSAkKCBjZSApOwoJCQlwID0gW107CgkJCSQoIFsgIlRvcCIsICJSaWdodCIsICJMZWZ0IiwgIkJvdHRvbSIgXSApLmVhY2goIGZ1bmN0aW9uKCBpLCBuYW1lICkgewoJCQkJcFsgaSBdID0gdGhhdC5fbnVtKCBlbGVtZW50LmNzcyggInBhZGRpbmciICsgbmFtZSApICk7CgkJCX0gKTsKCgkJCXRoYXQuY29udGFpbmVyT2Zmc2V0ID0gZWxlbWVudC5vZmZzZXQoKTsKCQkJdGhhdC5jb250YWluZXJQb3NpdGlvbiA9IGVsZW1lbnQucG9zaXRpb24oKTsKCQkJdGhhdC5jb250YWluZXJTaXplID0gewoJCQkJaGVpZ2h0OiAoIGVsZW1lbnQuaW5uZXJIZWlnaHQoKSAtIHBbIDMgXSApLAoJCQkJd2lkdGg6ICggZWxlbWVudC5pbm5lcldpZHRoKCkgLSBwWyAxIF0gKQoJCQl9OwoKCQkJY28gPSB0aGF0LmNvbnRhaW5lck9mZnNldDsKCQkJY2ggPSB0aGF0LmNvbnRhaW5lclNpemUuaGVpZ2h0OwoJCQljdyA9IHRoYXQuY29udGFpbmVyU2l6ZS53aWR0aDsKCQkJd2lkdGggPSAoIHRoYXQuX2hhc1Njcm9sbCAoIGNlLCAibGVmdCIgKSA/IGNlLnNjcm9sbFdpZHRoIDogY3cgKTsKCQkJaGVpZ2h0ID0gKCB0aGF0Ll9oYXNTY3JvbGwgKCBjZSApID8gY2Uuc2Nyb2xsSGVpZ2h0IDogY2ggKSA7CgoJCQl0aGF0LnBhcmVudERhdGEgPSB7CgkJCQllbGVtZW50OiBjZSwKCQkJCWxlZnQ6IGNvLmxlZnQsCgkJCQl0b3A6IGNvLnRvcCwKCQkJCXdpZHRoOiB3aWR0aCwKCQkJCWhlaWdodDogaGVpZ2h0CgkJCX07CgkJfQoJfSwKCglyZXNpemU6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgd29zZXQsIGhvc2V0LCBpc1BhcmVudCwgaXNPZmZzZXRSZWxhdGl2ZSwKCQkJdGhhdCA9ICQoIHRoaXMgKS5yZXNpemFibGUoICJpbnN0YW5jZSIgKSwKCQkJbyA9IHRoYXQub3B0aW9ucywKCQkJY28gPSB0aGF0LmNvbnRhaW5lck9mZnNldCwKCQkJY3AgPSB0aGF0LnBvc2l0aW9uLAoJCQlwUmF0aW8gPSB0aGF0Ll9hc3BlY3RSYXRpbyB8fCBldmVudC5zaGlmdEtleSwKCQkJY29wID0gewoJCQkJdG9wOiAwLAoJCQkJbGVmdDogMAoJCQl9LAoJCQljZSA9IHRoYXQuY29udGFpbmVyRWxlbWVudCwKCQkJY29udGludWVSZXNpemUgPSB0cnVlOwoKCQlpZiAoIGNlWyAwIF0gIT09IGRvY3VtZW50ICYmICggL3N0YXRpYy8gKS50ZXN0KCBjZS5jc3MoICJwb3NpdGlvbiIgKSApICkgewoJCQljb3AgPSBjbzsKCQl9CgoJCWlmICggY3AubGVmdCA8ICggdGhhdC5faGVscGVyID8gY28ubGVmdCA6IDAgKSApIHsKCQkJdGhhdC5zaXplLndpZHRoID0gdGhhdC5zaXplLndpZHRoICsKCQkJCSggdGhhdC5faGVscGVyID8KCQkJCQkoIHRoYXQucG9zaXRpb24ubGVmdCAtIGNvLmxlZnQgKSA6CgkJCQkJKCB0aGF0LnBvc2l0aW9uLmxlZnQgLSBjb3AubGVmdCApICk7CgoJCQlpZiAoIHBSYXRpbyApIHsKCQkJCXRoYXQuc2l6ZS5oZWlnaHQgPSB0aGF0LnNpemUud2lkdGggLyB0aGF0LmFzcGVjdFJhdGlvOwoJCQkJY29udGludWVSZXNpemUgPSBmYWxzZTsKCQkJfQoJCQl0aGF0LnBvc2l0aW9uLmxlZnQgPSBvLmhlbHBlciA/IGNvLmxlZnQgOiAwOwoJCX0KCgkJaWYgKCBjcC50b3AgPCAoIHRoYXQuX2hlbHBlciA/IGNvLnRvcCA6IDAgKSApIHsKCQkJdGhhdC5zaXplLmhlaWdodCA9IHRoYXQuc2l6ZS5oZWlnaHQgKwoJCQkJKCB0aGF0Ll9oZWxwZXIgPwoJCQkJCSggdGhhdC5wb3NpdGlvbi50b3AgLSBjby50b3AgKSA6CgkJCQkJdGhhdC5wb3NpdGlvbi50b3AgKTsKCgkJCWlmICggcFJhdGlvICkgewoJCQkJdGhhdC5zaXplLndpZHRoID0gdGhhdC5zaXplLmhlaWdodCAqIHRoYXQuYXNwZWN0UmF0aW87CgkJCQljb250aW51ZVJlc2l6ZSA9IGZhbHNlOwoJCQl9CgkJCXRoYXQucG9zaXRpb24udG9wID0gdGhhdC5faGVscGVyID8gY28udG9wIDogMDsKCQl9CgoJCWlzUGFyZW50ID0gdGhhdC5jb250YWluZXJFbGVtZW50LmdldCggMCApID09PSB0aGF0LmVsZW1lbnQucGFyZW50KCkuZ2V0KCAwICk7CgkJaXNPZmZzZXRSZWxhdGl2ZSA9IC9yZWxhdGl2ZXxhYnNvbHV0ZS8udGVzdCggdGhhdC5jb250YWluZXJFbGVtZW50LmNzcyggInBvc2l0aW9uIiApICk7CgoJCWlmICggaXNQYXJlbnQgJiYgaXNPZmZzZXRSZWxhdGl2ZSApIHsKCQkJdGhhdC5vZmZzZXQubGVmdCA9IHRoYXQucGFyZW50RGF0YS5sZWZ0ICsgdGhhdC5wb3NpdGlvbi5sZWZ0OwoJCQl0aGF0Lm9mZnNldC50b3AgPSB0aGF0LnBhcmVudERhdGEudG9wICsgdGhhdC5wb3NpdGlvbi50b3A7CgkJfSBlbHNlIHsKCQkJdGhhdC5vZmZzZXQubGVmdCA9IHRoYXQuZWxlbWVudC5vZmZzZXQoKS5sZWZ0OwoJCQl0aGF0Lm9mZnNldC50b3AgPSB0aGF0LmVsZW1lbnQub2Zmc2V0KCkudG9wOwoJCX0KCgkJd29zZXQgPSBNYXRoLmFicyggdGhhdC5zaXplRGlmZi53aWR0aCArCgkJCSggdGhhdC5faGVscGVyID8KCQkJCXRoYXQub2Zmc2V0LmxlZnQgLSBjb3AubGVmdCA6CgkJCQkoIHRoYXQub2Zmc2V0LmxlZnQgLSBjby5sZWZ0ICkgKSApOwoKCQlob3NldCA9IE1hdGguYWJzKCB0aGF0LnNpemVEaWZmLmhlaWdodCArCgkJCSggdGhhdC5faGVscGVyID8KCQkJCXRoYXQub2Zmc2V0LnRvcCAtIGNvcC50b3AgOgoJCQkJKCB0aGF0Lm9mZnNldC50b3AgLSBjby50b3AgKSApICk7CgoJCWlmICggd29zZXQgKyB0aGF0LnNpemUud2lkdGggPj0gdGhhdC5wYXJlbnREYXRhLndpZHRoICkgewoJCQl0aGF0LnNpemUud2lkdGggPSB0aGF0LnBhcmVudERhdGEud2lkdGggLSB3b3NldDsKCQkJaWYgKCBwUmF0aW8gKSB7CgkJCQl0aGF0LnNpemUuaGVpZ2h0ID0gdGhhdC5zaXplLndpZHRoIC8gdGhhdC5hc3BlY3RSYXRpbzsKCQkJCWNvbnRpbnVlUmVzaXplID0gZmFsc2U7CgkJCX0KCQl9CgoJCWlmICggaG9zZXQgKyB0aGF0LnNpemUuaGVpZ2h0ID49IHRoYXQucGFyZW50RGF0YS5oZWlnaHQgKSB7CgkJCXRoYXQuc2l6ZS5oZWlnaHQgPSB0aGF0LnBhcmVudERhdGEuaGVpZ2h0IC0gaG9zZXQ7CgkJCWlmICggcFJhdGlvICkgewoJCQkJdGhhdC5zaXplLndpZHRoID0gdGhhdC5zaXplLmhlaWdodCAqIHRoYXQuYXNwZWN0UmF0aW87CgkJCQljb250aW51ZVJlc2l6ZSA9IGZhbHNlOwoJCQl9CgkJfQoKCQlpZiAoICFjb250aW51ZVJlc2l6ZSApIHsKCQkJdGhhdC5wb3NpdGlvbi5sZWZ0ID0gdGhhdC5wcmV2UG9zaXRpb24ubGVmdDsKCQkJdGhhdC5wb3NpdGlvbi50b3AgPSB0aGF0LnByZXZQb3NpdGlvbi50b3A7CgkJCXRoYXQuc2l6ZS53aWR0aCA9IHRoYXQucHJldlNpemUud2lkdGg7CgkJCXRoYXQuc2l6ZS5oZWlnaHQgPSB0aGF0LnByZXZTaXplLmhlaWdodDsKCQl9Cgl9LAoKCXN0b3A6IGZ1bmN0aW9uKCkgewoJCXZhciB0aGF0ID0gJCggdGhpcyApLnJlc2l6YWJsZSggImluc3RhbmNlIiApLAoJCQlvID0gdGhhdC5vcHRpb25zLAoJCQljbyA9IHRoYXQuY29udGFpbmVyT2Zmc2V0LAoJCQljb3AgPSB0aGF0LmNvbnRhaW5lclBvc2l0aW9uLAoJCQljZSA9IHRoYXQuY29udGFpbmVyRWxlbWVudCwKCQkJaGVscGVyID0gJCggdGhhdC5oZWxwZXIgKSwKCQkJaG8gPSBoZWxwZXIub2Zmc2V0KCksCgkJCXcgPSBoZWxwZXIub3V0ZXJXaWR0aCgpIC0gdGhhdC5zaXplRGlmZi53aWR0aCwKCQkJaCA9IGhlbHBlci5vdXRlckhlaWdodCgpIC0gdGhhdC5zaXplRGlmZi5oZWlnaHQ7CgoJCWlmICggdGhhdC5faGVscGVyICYmICFvLmFuaW1hdGUgJiYgKCAvcmVsYXRpdmUvICkudGVzdCggY2UuY3NzKCAicG9zaXRpb24iICkgKSApIHsKCQkJJCggdGhpcyApLmNzcyggewoJCQkJbGVmdDogaG8ubGVmdCAtIGNvcC5sZWZ0IC0gY28ubGVmdCwKCQkJCXdpZHRoOiB3LAoJCQkJaGVpZ2h0OiBoCgkJCX0gKTsKCQl9CgoJCWlmICggdGhhdC5faGVscGVyICYmICFvLmFuaW1hdGUgJiYgKCAvc3RhdGljLyApLnRlc3QoIGNlLmNzcyggInBvc2l0aW9uIiApICkgKSB7CgkJCSQoIHRoaXMgKS5jc3MoIHsKCQkJCWxlZnQ6IGhvLmxlZnQgLSBjb3AubGVmdCAtIGNvLmxlZnQsCgkJCQl3aWR0aDogdywKCQkJCWhlaWdodDogaAoJCQl9ICk7CgkJfQoJfQp9ICk7CgokLnVpLnBsdWdpbi5hZGQoICJyZXNpemFibGUiLCAiYWxzb1Jlc2l6ZSIsIHsKCglzdGFydDogZnVuY3Rpb24oKSB7CgkJdmFyIHRoYXQgPSAkKCB0aGlzICkucmVzaXphYmxlKCAiaW5zdGFuY2UiICksCgkJCW8gPSB0aGF0Lm9wdGlvbnM7CgoJCSQoIG8uYWxzb1Jlc2l6ZSApLmVhY2goIGZ1bmN0aW9uKCkgewoJCQl2YXIgZWwgPSAkKCB0aGlzICk7CgkJCWVsLmRhdGEoICJ1aS1yZXNpemFibGUtYWxzb3Jlc2l6ZSIsIHsKCQkJCXdpZHRoOiBwYXJzZUZsb2F0KCBlbC53aWR0aCgpICksIGhlaWdodDogcGFyc2VGbG9hdCggZWwuaGVpZ2h0KCkgKSwKCQkJCWxlZnQ6IHBhcnNlRmxvYXQoIGVsLmNzcyggImxlZnQiICkgKSwgdG9wOiBwYXJzZUZsb2F0KCBlbC5jc3MoICJ0b3AiICkgKQoJCQl9ICk7CgkJfSApOwoJfSwKCglyZXNpemU6IGZ1bmN0aW9uKCBldmVudCwgdWkgKSB7CgkJdmFyIHRoYXQgPSAkKCB0aGlzICkucmVzaXphYmxlKCAiaW5zdGFuY2UiICksCgkJCW8gPSB0aGF0Lm9wdGlvbnMsCgkJCW9zID0gdGhhdC5vcmlnaW5hbFNpemUsCgkJCW9wID0gdGhhdC5vcmlnaW5hbFBvc2l0aW9uLAoJCQlkZWx0YSA9IHsKCQkJCWhlaWdodDogKCB0aGF0LnNpemUuaGVpZ2h0IC0gb3MuaGVpZ2h0ICkgfHwgMCwKCQkJCXdpZHRoOiAoIHRoYXQuc2l6ZS53aWR0aCAtIG9zLndpZHRoICkgfHwgMCwKCQkJCXRvcDogKCB0aGF0LnBvc2l0aW9uLnRvcCAtIG9wLnRvcCApIHx8IDAsCgkJCQlsZWZ0OiAoIHRoYXQucG9zaXRpb24ubGVmdCAtIG9wLmxlZnQgKSB8fCAwCgkJCX07CgoJCQkkKCBvLmFsc29SZXNpemUgKS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCXZhciBlbCA9ICQoIHRoaXMgKSwgc3RhcnQgPSAkKCB0aGlzICkuZGF0YSggInVpLXJlc2l6YWJsZS1hbHNvcmVzaXplIiApLCBzdHlsZSA9IHt9LAoJCQkJCWNzcyA9IGVsLnBhcmVudHMoIHVpLm9yaWdpbmFsRWxlbWVudFsgMCBdICkubGVuZ3RoID8KCQkJCQkJCVsgIndpZHRoIiwgImhlaWdodCIgXSA6CgkJCQkJCQlbICJ3aWR0aCIsICJoZWlnaHQiLCAidG9wIiwgImxlZnQiIF07CgoJCQkJJC5lYWNoKCBjc3MsIGZ1bmN0aW9uKCBpLCBwcm9wICkgewoJCQkJCXZhciBzdW0gPSAoIHN0YXJ0WyBwcm9wIF0gfHwgMCApICsgKCBkZWx0YVsgcHJvcCBdIHx8IDAgKTsKCQkJCQlpZiAoIHN1bSAmJiBzdW0gPj0gMCApIHsKCQkJCQkJc3R5bGVbIHByb3AgXSA9IHN1bSB8fCBudWxsOwoJCQkJCX0KCQkJCX0gKTsKCgkJCQllbC5jc3MoIHN0eWxlICk7CgkJCX0gKTsKCX0sCgoJc3RvcDogZnVuY3Rpb24oKSB7CgkJJCggdGhpcyApLnJlbW92ZURhdGEoICJ1aS1yZXNpemFibGUtYWxzb3Jlc2l6ZSIgKTsKCX0KfSApOwoKJC51aS5wbHVnaW4uYWRkKCAicmVzaXphYmxlIiwgImdob3N0IiwgewoKCXN0YXJ0OiBmdW5jdGlvbigpIHsKCgkJdmFyIHRoYXQgPSAkKCB0aGlzICkucmVzaXphYmxlKCAiaW5zdGFuY2UiICksIGNzID0gdGhhdC5zaXplOwoKCQl0aGF0Lmdob3N0ID0gdGhhdC5vcmlnaW5hbEVsZW1lbnQuY2xvbmUoKTsKCQl0aGF0Lmdob3N0LmNzcyggewoJCQlvcGFjaXR5OiAwLjI1LAoJCQlkaXNwbGF5OiAiYmxvY2siLAoJCQlwb3NpdGlvbjogInJlbGF0aXZlIiwKCQkJaGVpZ2h0OiBjcy5oZWlnaHQsCgkJCXdpZHRoOiBjcy53aWR0aCwKCQkJbWFyZ2luOiAwLAoJCQlsZWZ0OiAwLAoJCQl0b3A6IDAKCQl9ICk7CgoJCXRoYXQuX2FkZENsYXNzKCB0aGF0Lmdob3N0LCAidWktcmVzaXphYmxlLWdob3N0IiApOwoKCQkvLyBERVBSRUNBVEVECgkJLy8gVE9ETzogcmVtb3ZlIGFmdGVyIDEuMTIKCQlpZiAoICQudWlCYWNrQ29tcGF0ICE9PSBmYWxzZSAmJiB0eXBlb2YgdGhhdC5vcHRpb25zLmdob3N0ID09PSAic3RyaW5nIiApIHsKCgkJCS8vIEdob3N0IG9wdGlvbgoJCQl0aGF0Lmdob3N0LmFkZENsYXNzKCB0aGlzLm9wdGlvbnMuZ2hvc3QgKTsKCQl9CgoJCXRoYXQuZ2hvc3QuYXBwZW5kVG8oIHRoYXQuaGVscGVyICk7CgoJfSwKCglyZXNpemU6IGZ1bmN0aW9uKCkgewoJCXZhciB0aGF0ID0gJCggdGhpcyApLnJlc2l6YWJsZSggImluc3RhbmNlIiApOwoJCWlmICggdGhhdC5naG9zdCApIHsKCQkJdGhhdC5naG9zdC5jc3MoIHsKCQkJCXBvc2l0aW9uOiAicmVsYXRpdmUiLAoJCQkJaGVpZ2h0OiB0aGF0LnNpemUuaGVpZ2h0LAoJCQkJd2lkdGg6IHRoYXQuc2l6ZS53aWR0aAoJCQl9ICk7CgkJfQoJfSwKCglzdG9wOiBmdW5jdGlvbigpIHsKCQl2YXIgdGhhdCA9ICQoIHRoaXMgKS5yZXNpemFibGUoICJpbnN0YW5jZSIgKTsKCQlpZiAoIHRoYXQuZ2hvc3QgJiYgdGhhdC5oZWxwZXIgKSB7CgkJCXRoYXQuaGVscGVyLmdldCggMCApLnJlbW92ZUNoaWxkKCB0aGF0Lmdob3N0LmdldCggMCApICk7CgkJfQoJfQoKfSApOwoKJC51aS5wbHVnaW4uYWRkKCAicmVzaXphYmxlIiwgImdyaWQiLCB7CgoJcmVzaXplOiBmdW5jdGlvbigpIHsKCQl2YXIgb3V0ZXJEaW1lbnNpb25zLAoJCQl0aGF0ID0gJCggdGhpcyApLnJlc2l6YWJsZSggImluc3RhbmNlIiApLAoJCQlvID0gdGhhdC5vcHRpb25zLAoJCQljcyA9IHRoYXQuc2l6ZSwKCQkJb3MgPSB0aGF0Lm9yaWdpbmFsU2l6ZSwKCQkJb3AgPSB0aGF0Lm9yaWdpbmFsUG9zaXRpb24sCgkJCWEgPSB0aGF0LmF4aXMsCgkJCWdyaWQgPSB0eXBlb2Ygby5ncmlkID09PSAibnVtYmVyIiA/IFsgby5ncmlkLCBvLmdyaWQgXSA6IG8uZ3JpZCwKCQkJZ3JpZFggPSAoIGdyaWRbIDAgXSB8fCAxICksCgkJCWdyaWRZID0gKCBncmlkWyAxIF0gfHwgMSApLAoJCQlveCA9IE1hdGgucm91bmQoICggY3Mud2lkdGggLSBvcy53aWR0aCApIC8gZ3JpZFggKSAqIGdyaWRYLAoJCQlveSA9IE1hdGgucm91bmQoICggY3MuaGVpZ2h0IC0gb3MuaGVpZ2h0ICkgLyBncmlkWSApICogZ3JpZFksCgkJCW5ld1dpZHRoID0gb3Mud2lkdGggKyBveCwKCQkJbmV3SGVpZ2h0ID0gb3MuaGVpZ2h0ICsgb3ksCgkJCWlzTWF4V2lkdGggPSBvLm1heFdpZHRoICYmICggby5tYXhXaWR0aCA8IG5ld1dpZHRoICksCgkJCWlzTWF4SGVpZ2h0ID0gby5tYXhIZWlnaHQgJiYgKCBvLm1heEhlaWdodCA8IG5ld0hlaWdodCApLAoJCQlpc01pbldpZHRoID0gby5taW5XaWR0aCAmJiAoIG8ubWluV2lkdGggPiBuZXdXaWR0aCApLAoJCQlpc01pbkhlaWdodCA9IG8ubWluSGVpZ2h0ICYmICggby5taW5IZWlnaHQgPiBuZXdIZWlnaHQgKTsKCgkJby5ncmlkID0gZ3JpZDsKCgkJaWYgKCBpc01pbldpZHRoICkgewoJCQluZXdXaWR0aCArPSBncmlkWDsKCQl9CgkJaWYgKCBpc01pbkhlaWdodCApIHsKCQkJbmV3SGVpZ2h0ICs9IGdyaWRZOwoJCX0KCQlpZiAoIGlzTWF4V2lkdGggKSB7CgkJCW5ld1dpZHRoIC09IGdyaWRYOwoJCX0KCQlpZiAoIGlzTWF4SGVpZ2h0ICkgewoJCQluZXdIZWlnaHQgLT0gZ3JpZFk7CgkJfQoKCQlpZiAoIC9eKHNlfHN8ZSkkLy50ZXN0KCBhICkgKSB7CgkJCXRoYXQuc2l6ZS53aWR0aCA9IG5ld1dpZHRoOwoJCQl0aGF0LnNpemUuaGVpZ2h0ID0gbmV3SGVpZ2h0OwoJCX0gZWxzZSBpZiAoIC9eKG5lKSQvLnRlc3QoIGEgKSApIHsKCQkJdGhhdC5zaXplLndpZHRoID0gbmV3V2lkdGg7CgkJCXRoYXQuc2l6ZS5oZWlnaHQgPSBuZXdIZWlnaHQ7CgkJCXRoYXQucG9zaXRpb24udG9wID0gb3AudG9wIC0gb3k7CgkJfSBlbHNlIGlmICggL14oc3cpJC8udGVzdCggYSApICkgewoJCQl0aGF0LnNpemUud2lkdGggPSBuZXdXaWR0aDsKCQkJdGhhdC5zaXplLmhlaWdodCA9IG5ld0hlaWdodDsKCQkJdGhhdC5wb3NpdGlvbi5sZWZ0ID0gb3AubGVmdCAtIG94OwoJCX0gZWxzZSB7CgkJCWlmICggbmV3SGVpZ2h0IC0gZ3JpZFkgPD0gMCB8fCBuZXdXaWR0aCAtIGdyaWRYIDw9IDAgKSB7CgkJCQlvdXRlckRpbWVuc2lvbnMgPSB0aGF0Ll9nZXRQYWRkaW5nUGx1c0JvcmRlckRpbWVuc2lvbnMoIHRoaXMgKTsKCQkJfQoKCQkJaWYgKCBuZXdIZWlnaHQgLSBncmlkWSA+IDAgKSB7CgkJCQl0aGF0LnNpemUuaGVpZ2h0ID0gbmV3SGVpZ2h0OwoJCQkJdGhhdC5wb3NpdGlvbi50b3AgPSBvcC50b3AgLSBveTsKCQkJfSBlbHNlIHsKCQkJCW5ld0hlaWdodCA9IGdyaWRZIC0gb3V0ZXJEaW1lbnNpb25zLmhlaWdodDsKCQkJCXRoYXQuc2l6ZS5oZWlnaHQgPSBuZXdIZWlnaHQ7CgkJCQl0aGF0LnBvc2l0aW9uLnRvcCA9IG9wLnRvcCArIG9zLmhlaWdodCAtIG5ld0hlaWdodDsKCQkJfQoJCQlpZiAoIG5ld1dpZHRoIC0gZ3JpZFggPiAwICkgewoJCQkJdGhhdC5zaXplLndpZHRoID0gbmV3V2lkdGg7CgkJCQl0aGF0LnBvc2l0aW9uLmxlZnQgPSBvcC5sZWZ0IC0gb3g7CgkJCX0gZWxzZSB7CgkJCQluZXdXaWR0aCA9IGdyaWRYIC0gb3V0ZXJEaW1lbnNpb25zLndpZHRoOwoJCQkJdGhhdC5zaXplLndpZHRoID0gbmV3V2lkdGg7CgkJCQl0aGF0LnBvc2l0aW9uLmxlZnQgPSBvcC5sZWZ0ICsgb3Mud2lkdGggLSBuZXdXaWR0aDsKCQkJfQoJCX0KCX0KCn0gKTsKCnZhciB3aWRnZXRzUmVzaXphYmxlID0gJC51aS5yZXNpemFibGU7CgoKLyohCiAqIGpRdWVyeSBVSSBTZWxlY3RhYmxlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogU2VsZWN0YWJsZQovLz4+Z3JvdXA6IEludGVyYWN0aW9ucwovLz4+ZGVzY3JpcHRpb246IEFsbG93cyBncm91cHMgb2YgZWxlbWVudHMgdG8gYmUgc2VsZWN0ZWQgd2l0aCB0aGUgbW91c2UuCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9zZWxlY3RhYmxlLwovLz4+ZGVtb3M6IGh0dHA6Ly9qcXVlcnl1aS5jb20vc2VsZWN0YWJsZS8KLy8+PmNzcy5zdHJ1Y3R1cmU6IC4uLy4uL3RoZW1lcy9iYXNlL3NlbGVjdGFibGUuY3NzCgoKCnZhciB3aWRnZXRzU2VsZWN0YWJsZSA9ICQud2lkZ2V0KCAidWkuc2VsZWN0YWJsZSIsICQudWkubW91c2UsIHsKCXZlcnNpb246ICIxLjEyLjEiLAoJb3B0aW9uczogewoJCWFwcGVuZFRvOiAiYm9keSIsCgkJYXV0b1JlZnJlc2g6IHRydWUsCgkJZGlzdGFuY2U6IDAsCgkJZmlsdGVyOiAiKiIsCgkJdG9sZXJhbmNlOiAidG91Y2giLAoKCQkvLyBDYWxsYmFja3MKCQlzZWxlY3RlZDogbnVsbCwKCQlzZWxlY3Rpbmc6IG51bGwsCgkJc3RhcnQ6IG51bGwsCgkJc3RvcDogbnVsbCwKCQl1bnNlbGVjdGVkOiBudWxsLAoJCXVuc2VsZWN0aW5nOiBudWxsCgl9LAoJX2NyZWF0ZTogZnVuY3Rpb24oKSB7CgkJdmFyIHRoYXQgPSB0aGlzOwoKCQl0aGlzLl9hZGRDbGFzcyggInVpLXNlbGVjdGFibGUiICk7CgoJCXRoaXMuZHJhZ2dlZCA9IGZhbHNlOwoKCQkvLyBDYWNoZSBzZWxlY3RlZSBjaGlsZHJlbiBiYXNlZCBvbiBmaWx0ZXIKCQl0aGlzLnJlZnJlc2ggPSBmdW5jdGlvbigpIHsKCQkJdGhhdC5lbGVtZW50UG9zID0gJCggdGhhdC5lbGVtZW50WyAwIF0gKS5vZmZzZXQoKTsKCQkJdGhhdC5zZWxlY3RlZXMgPSAkKCB0aGF0Lm9wdGlvbnMuZmlsdGVyLCB0aGF0LmVsZW1lbnRbIDAgXSApOwoJCQl0aGF0Ll9hZGRDbGFzcyggdGhhdC5zZWxlY3RlZXMsICJ1aS1zZWxlY3RlZSIgKTsKCQkJdGhhdC5zZWxlY3RlZXMuZWFjaCggZnVuY3Rpb24oKSB7CgkJCQl2YXIgJHRoaXMgPSAkKCB0aGlzICksCgkJCQkJc2VsZWN0ZWVPZmZzZXQgPSAkdGhpcy5vZmZzZXQoKSwKCQkJCQlwb3MgPSB7CgkJCQkJCWxlZnQ6IHNlbGVjdGVlT2Zmc2V0LmxlZnQgLSB0aGF0LmVsZW1lbnRQb3MubGVmdCwKCQkJCQkJdG9wOiBzZWxlY3RlZU9mZnNldC50b3AgLSB0aGF0LmVsZW1lbnRQb3MudG9wCgkJCQkJfTsKCQkJCSQuZGF0YSggdGhpcywgInNlbGVjdGFibGUtaXRlbSIsIHsKCQkJCQllbGVtZW50OiB0aGlzLAoJCQkJCSRlbGVtZW50OiAkdGhpcywKCQkJCQlsZWZ0OiBwb3MubGVmdCwKCQkJCQl0b3A6IHBvcy50b3AsCgkJCQkJcmlnaHQ6IHBvcy5sZWZ0ICsgJHRoaXMub3V0ZXJXaWR0aCgpLAoJCQkJCWJvdHRvbTogcG9zLnRvcCArICR0aGlzLm91dGVySGVpZ2h0KCksCgkJCQkJc3RhcnRzZWxlY3RlZDogZmFsc2UsCgkJCQkJc2VsZWN0ZWQ6ICR0aGlzLmhhc0NsYXNzKCAidWktc2VsZWN0ZWQiICksCgkJCQkJc2VsZWN0aW5nOiAkdGhpcy5oYXNDbGFzcyggInVpLXNlbGVjdGluZyIgKSwKCQkJCQl1bnNlbGVjdGluZzogJHRoaXMuaGFzQ2xhc3MoICJ1aS11bnNlbGVjdGluZyIgKQoJCQkJfSApOwoJCQl9ICk7CgkJfTsKCQl0aGlzLnJlZnJlc2goKTsKCgkJdGhpcy5fbW91c2VJbml0KCk7CgoJCXRoaXMuaGVscGVyID0gJCggIjxkaXY+IiApOwoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLmhlbHBlciwgInVpLXNlbGVjdGFibGUtaGVscGVyIiApOwoJfSwKCglfZGVzdHJveTogZnVuY3Rpb24oKSB7CgkJdGhpcy5zZWxlY3RlZXMucmVtb3ZlRGF0YSggInNlbGVjdGFibGUtaXRlbSIgKTsKCQl0aGlzLl9tb3VzZURlc3Ryb3koKTsKCX0sCgoJX21vdXNlU3RhcnQ6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgdGhhdCA9IHRoaXMsCgkJCW9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7CgoJCXRoaXMub3BvcyA9IFsgZXZlbnQucGFnZVgsIGV2ZW50LnBhZ2VZIF07CgkJdGhpcy5lbGVtZW50UG9zID0gJCggdGhpcy5lbGVtZW50WyAwIF0gKS5vZmZzZXQoKTsKCgkJaWYgKCB0aGlzLm9wdGlvbnMuZGlzYWJsZWQgKSB7CgkJCXJldHVybjsKCQl9CgoJCXRoaXMuc2VsZWN0ZWVzID0gJCggb3B0aW9ucy5maWx0ZXIsIHRoaXMuZWxlbWVudFsgMCBdICk7CgoJCXRoaXMuX3RyaWdnZXIoICJzdGFydCIsIGV2ZW50ICk7CgoJCSQoIG9wdGlvbnMuYXBwZW5kVG8gKS5hcHBlbmQoIHRoaXMuaGVscGVyICk7CgoJCS8vIHBvc2l0aW9uIGhlbHBlciAobGFzc28pCgkJdGhpcy5oZWxwZXIuY3NzKCB7CgkJCSJsZWZ0IjogZXZlbnQucGFnZVgsCgkJCSJ0b3AiOiBldmVudC5wYWdlWSwKCQkJIndpZHRoIjogMCwKCQkJImhlaWdodCI6IDAKCQl9ICk7CgoJCWlmICggb3B0aW9ucy5hdXRvUmVmcmVzaCApIHsKCQkJdGhpcy5yZWZyZXNoKCk7CgkJfQoKCQl0aGlzLnNlbGVjdGVlcy5maWx0ZXIoICIudWktc2VsZWN0ZWQiICkuZWFjaCggZnVuY3Rpb24oKSB7CgkJCXZhciBzZWxlY3RlZSA9ICQuZGF0YSggdGhpcywgInNlbGVjdGFibGUtaXRlbSIgKTsKCQkJc2VsZWN0ZWUuc3RhcnRzZWxlY3RlZCA9IHRydWU7CgkJCWlmICggIWV2ZW50Lm1ldGFLZXkgJiYgIWV2ZW50LmN0cmxLZXkgKSB7CgkJCQl0aGF0Ll9yZW1vdmVDbGFzcyggc2VsZWN0ZWUuJGVsZW1lbnQsICJ1aS1zZWxlY3RlZCIgKTsKCQkJCXNlbGVjdGVlLnNlbGVjdGVkID0gZmFsc2U7CgkJCQl0aGF0Ll9hZGRDbGFzcyggc2VsZWN0ZWUuJGVsZW1lbnQsICJ1aS11bnNlbGVjdGluZyIgKTsKCQkJCXNlbGVjdGVlLnVuc2VsZWN0aW5nID0gdHJ1ZTsKCgkJCQkvLyBzZWxlY3RhYmxlIFVOU0VMRUNUSU5HIGNhbGxiYWNrCgkJCQl0aGF0Ll90cmlnZ2VyKCAidW5zZWxlY3RpbmciLCBldmVudCwgewoJCQkJCXVuc2VsZWN0aW5nOiBzZWxlY3RlZS5lbGVtZW50CgkJCQl9ICk7CgkJCX0KCQl9ICk7CgoJCSQoIGV2ZW50LnRhcmdldCApLnBhcmVudHMoKS5hZGRCYWNrKCkuZWFjaCggZnVuY3Rpb24oKSB7CgkJCXZhciBkb1NlbGVjdCwKCQkJCXNlbGVjdGVlID0gJC5kYXRhKCB0aGlzLCAic2VsZWN0YWJsZS1pdGVtIiApOwoJCQlpZiAoIHNlbGVjdGVlICkgewoJCQkJZG9TZWxlY3QgPSAoICFldmVudC5tZXRhS2V5ICYmICFldmVudC5jdHJsS2V5ICkgfHwKCQkJCQkhc2VsZWN0ZWUuJGVsZW1lbnQuaGFzQ2xhc3MoICJ1aS1zZWxlY3RlZCIgKTsKCQkJCXRoYXQuX3JlbW92ZUNsYXNzKCBzZWxlY3RlZS4kZWxlbWVudCwgZG9TZWxlY3QgPyAidWktdW5zZWxlY3RpbmciIDogInVpLXNlbGVjdGVkIiApCgkJCQkJLl9hZGRDbGFzcyggc2VsZWN0ZWUuJGVsZW1lbnQsIGRvU2VsZWN0ID8gInVpLXNlbGVjdGluZyIgOiAidWktdW5zZWxlY3RpbmciICk7CgkJCQlzZWxlY3RlZS51bnNlbGVjdGluZyA9ICFkb1NlbGVjdDsKCQkJCXNlbGVjdGVlLnNlbGVjdGluZyA9IGRvU2VsZWN0OwoJCQkJc2VsZWN0ZWUuc2VsZWN0ZWQgPSBkb1NlbGVjdDsKCgkJCQkvLyBzZWxlY3RhYmxlIChVTilTRUxFQ1RJTkcgY2FsbGJhY2sKCQkJCWlmICggZG9TZWxlY3QgKSB7CgkJCQkJdGhhdC5fdHJpZ2dlciggInNlbGVjdGluZyIsIGV2ZW50LCB7CgkJCQkJCXNlbGVjdGluZzogc2VsZWN0ZWUuZWxlbWVudAoJCQkJCX0gKTsKCQkJCX0gZWxzZSB7CgkJCQkJdGhhdC5fdHJpZ2dlciggInVuc2VsZWN0aW5nIiwgZXZlbnQsIHsKCQkJCQkJdW5zZWxlY3Rpbmc6IHNlbGVjdGVlLmVsZW1lbnQKCQkJCQl9ICk7CgkJCQl9CgkJCQlyZXR1cm4gZmFsc2U7CgkJCX0KCQl9ICk7CgoJfSwKCglfbW91c2VEcmFnOiBmdW5jdGlvbiggZXZlbnQgKSB7CgoJCXRoaXMuZHJhZ2dlZCA9IHRydWU7CgoJCWlmICggdGhpcy5vcHRpb25zLmRpc2FibGVkICkgewoJCQlyZXR1cm47CgkJfQoKCQl2YXIgdG1wLAoJCQl0aGF0ID0gdGhpcywKCQkJb3B0aW9ucyA9IHRoaXMub3B0aW9ucywKCQkJeDEgPSB0aGlzLm9wb3NbIDAgXSwKCQkJeTEgPSB0aGlzLm9wb3NbIDEgXSwKCQkJeDIgPSBldmVudC5wYWdlWCwKCQkJeTIgPSBldmVudC5wYWdlWTsKCgkJaWYgKCB4MSA+IHgyICkgeyB0bXAgPSB4MjsgeDIgPSB4MTsgeDEgPSB0bXA7IH0KCQlpZiAoIHkxID4geTIgKSB7IHRtcCA9IHkyOyB5MiA9IHkxOyB5MSA9IHRtcDsgfQoJCXRoaXMuaGVscGVyLmNzcyggeyBsZWZ0OiB4MSwgdG9wOiB5MSwgd2lkdGg6IHgyIC0geDEsIGhlaWdodDogeTIgLSB5MSB9ICk7CgoJCXRoaXMuc2VsZWN0ZWVzLmVhY2goIGZ1bmN0aW9uKCkgewoJCQl2YXIgc2VsZWN0ZWUgPSAkLmRhdGEoIHRoaXMsICJzZWxlY3RhYmxlLWl0ZW0iICksCgkJCQloaXQgPSBmYWxzZSwKCQkJCW9mZnNldCA9IHt9OwoKCQkJLy9wcmV2ZW50IGhlbHBlciBmcm9tIGJlaW5nIHNlbGVjdGVkIGlmIGFwcGVuZFRvOiBzZWxlY3RhYmxlCgkJCWlmICggIXNlbGVjdGVlIHx8IHNlbGVjdGVlLmVsZW1lbnQgPT09IHRoYXQuZWxlbWVudFsgMCBdICkgewoJCQkJcmV0dXJuOwoJCQl9CgoJCQlvZmZzZXQubGVmdCAgID0gc2VsZWN0ZWUubGVmdCAgICsgdGhhdC5lbGVtZW50UG9zLmxlZnQ7CgkJCW9mZnNldC5yaWdodCAgPSBzZWxlY3RlZS5yaWdodCAgKyB0aGF0LmVsZW1lbnRQb3MubGVmdDsKCQkJb2Zmc2V0LnRvcCAgICA9IHNlbGVjdGVlLnRvcCAgICArIHRoYXQuZWxlbWVudFBvcy50b3A7CgkJCW9mZnNldC5ib3R0b20gPSBzZWxlY3RlZS5ib3R0b20gKyB0aGF0LmVsZW1lbnRQb3MudG9wOwoKCQkJaWYgKCBvcHRpb25zLnRvbGVyYW5jZSA9PT0gInRvdWNoIiApIHsKCQkJCWhpdCA9ICggISggb2Zmc2V0LmxlZnQgPiB4MiB8fCBvZmZzZXQucmlnaHQgPCB4MSB8fCBvZmZzZXQudG9wID4geTIgfHwKICAgICAgICAgICAgICAgICAgICBvZmZzZXQuYm90dG9tIDwgeTEgKSApOwoJCQl9IGVsc2UgaWYgKCBvcHRpb25zLnRvbGVyYW5jZSA9PT0gImZpdCIgKSB7CgkJCQloaXQgPSAoIG9mZnNldC5sZWZ0ID4geDEgJiYgb2Zmc2V0LnJpZ2h0IDwgeDIgJiYgb2Zmc2V0LnRvcCA+IHkxICYmCiAgICAgICAgICAgICAgICAgICAgb2Zmc2V0LmJvdHRvbSA8IHkyICk7CgkJCX0KCgkJCWlmICggaGl0ICkgewoKCQkJCS8vIFNFTEVDVAoJCQkJaWYgKCBzZWxlY3RlZS5zZWxlY3RlZCApIHsKCQkJCQl0aGF0Ll9yZW1vdmVDbGFzcyggc2VsZWN0ZWUuJGVsZW1lbnQsICJ1aS1zZWxlY3RlZCIgKTsKCQkJCQlzZWxlY3RlZS5zZWxlY3RlZCA9IGZhbHNlOwoJCQkJfQoJCQkJaWYgKCBzZWxlY3RlZS51bnNlbGVjdGluZyApIHsKCQkJCQl0aGF0Ll9yZW1vdmVDbGFzcyggc2VsZWN0ZWUuJGVsZW1lbnQsICJ1aS11bnNlbGVjdGluZyIgKTsKCQkJCQlzZWxlY3RlZS51bnNlbGVjdGluZyA9IGZhbHNlOwoJCQkJfQoJCQkJaWYgKCAhc2VsZWN0ZWUuc2VsZWN0aW5nICkgewoJCQkJCXRoYXQuX2FkZENsYXNzKCBzZWxlY3RlZS4kZWxlbWVudCwgInVpLXNlbGVjdGluZyIgKTsKCQkJCQlzZWxlY3RlZS5zZWxlY3RpbmcgPSB0cnVlOwoKCQkJCQkvLyBzZWxlY3RhYmxlIFNFTEVDVElORyBjYWxsYmFjawoJCQkJCXRoYXQuX3RyaWdnZXIoICJzZWxlY3RpbmciLCBldmVudCwgewoJCQkJCQlzZWxlY3Rpbmc6IHNlbGVjdGVlLmVsZW1lbnQKCQkJCQl9ICk7CgkJCQl9CgkJCX0gZWxzZSB7CgoJCQkJLy8gVU5TRUxFQ1QKCQkJCWlmICggc2VsZWN0ZWUuc2VsZWN0aW5nICkgewoJCQkJCWlmICggKCBldmVudC5tZXRhS2V5IHx8IGV2ZW50LmN0cmxLZXkgKSAmJiBzZWxlY3RlZS5zdGFydHNlbGVjdGVkICkgewoJCQkJCQl0aGF0Ll9yZW1vdmVDbGFzcyggc2VsZWN0ZWUuJGVsZW1lbnQsICJ1aS1zZWxlY3RpbmciICk7CgkJCQkJCXNlbGVjdGVlLnNlbGVjdGluZyA9IGZhbHNlOwoJCQkJCQl0aGF0Ll9hZGRDbGFzcyggc2VsZWN0ZWUuJGVsZW1lbnQsICJ1aS1zZWxlY3RlZCIgKTsKCQkJCQkJc2VsZWN0ZWUuc2VsZWN0ZWQgPSB0cnVlOwoJCQkJCX0gZWxzZSB7CgkJCQkJCXRoYXQuX3JlbW92ZUNsYXNzKCBzZWxlY3RlZS4kZWxlbWVudCwgInVpLXNlbGVjdGluZyIgKTsKCQkJCQkJc2VsZWN0ZWUuc2VsZWN0aW5nID0gZmFsc2U7CgkJCQkJCWlmICggc2VsZWN0ZWUuc3RhcnRzZWxlY3RlZCApIHsKCQkJCQkJCXRoYXQuX2FkZENsYXNzKCBzZWxlY3RlZS4kZWxlbWVudCwgInVpLXVuc2VsZWN0aW5nIiApOwoJCQkJCQkJc2VsZWN0ZWUudW5zZWxlY3RpbmcgPSB0cnVlOwoJCQkJCQl9CgoJCQkJCQkvLyBzZWxlY3RhYmxlIFVOU0VMRUNUSU5HIGNhbGxiYWNrCgkJCQkJCXRoYXQuX3RyaWdnZXIoICJ1bnNlbGVjdGluZyIsIGV2ZW50LCB7CgkJCQkJCQl1bnNlbGVjdGluZzogc2VsZWN0ZWUuZWxlbWVudAoJCQkJCQl9ICk7CgkJCQkJfQoJCQkJfQoJCQkJaWYgKCBzZWxlY3RlZS5zZWxlY3RlZCApIHsKCQkJCQlpZiAoICFldmVudC5tZXRhS2V5ICYmICFldmVudC5jdHJsS2V5ICYmICFzZWxlY3RlZS5zdGFydHNlbGVjdGVkICkgewoJCQkJCQl0aGF0Ll9yZW1vdmVDbGFzcyggc2VsZWN0ZWUuJGVsZW1lbnQsICJ1aS1zZWxlY3RlZCIgKTsKCQkJCQkJc2VsZWN0ZWUuc2VsZWN0ZWQgPSBmYWxzZTsKCgkJCQkJCXRoYXQuX2FkZENsYXNzKCBzZWxlY3RlZS4kZWxlbWVudCwgInVpLXVuc2VsZWN0aW5nIiApOwoJCQkJCQlzZWxlY3RlZS51bnNlbGVjdGluZyA9IHRydWU7CgoJCQkJCQkvLyBzZWxlY3RhYmxlIFVOU0VMRUNUSU5HIGNhbGxiYWNrCgkJCQkJCXRoYXQuX3RyaWdnZXIoICJ1bnNlbGVjdGluZyIsIGV2ZW50LCB7CgkJCQkJCQl1bnNlbGVjdGluZzogc2VsZWN0ZWUuZWxlbWVudAoJCQkJCQl9ICk7CgkJCQkJfQoJCQkJfQoJCQl9CgkJfSApOwoKCQlyZXR1cm4gZmFsc2U7Cgl9LAoKCV9tb3VzZVN0b3A6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgdGhhdCA9IHRoaXM7CgoJCXRoaXMuZHJhZ2dlZCA9IGZhbHNlOwoKCQkkKCAiLnVpLXVuc2VsZWN0aW5nIiwgdGhpcy5lbGVtZW50WyAwIF0gKS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJdmFyIHNlbGVjdGVlID0gJC5kYXRhKCB0aGlzLCAic2VsZWN0YWJsZS1pdGVtIiApOwoJCQl0aGF0Ll9yZW1vdmVDbGFzcyggc2VsZWN0ZWUuJGVsZW1lbnQsICJ1aS11bnNlbGVjdGluZyIgKTsKCQkJc2VsZWN0ZWUudW5zZWxlY3RpbmcgPSBmYWxzZTsKCQkJc2VsZWN0ZWUuc3RhcnRzZWxlY3RlZCA9IGZhbHNlOwoJCQl0aGF0Ll90cmlnZ2VyKCAidW5zZWxlY3RlZCIsIGV2ZW50LCB7CgkJCQl1bnNlbGVjdGVkOiBzZWxlY3RlZS5lbGVtZW50CgkJCX0gKTsKCQl9ICk7CgkJJCggIi51aS1zZWxlY3RpbmciLCB0aGlzLmVsZW1lbnRbIDAgXSApLmVhY2goIGZ1bmN0aW9uKCkgewoJCQl2YXIgc2VsZWN0ZWUgPSAkLmRhdGEoIHRoaXMsICJzZWxlY3RhYmxlLWl0ZW0iICk7CgkJCXRoYXQuX3JlbW92ZUNsYXNzKCBzZWxlY3RlZS4kZWxlbWVudCwgInVpLXNlbGVjdGluZyIgKQoJCQkJLl9hZGRDbGFzcyggc2VsZWN0ZWUuJGVsZW1lbnQsICJ1aS1zZWxlY3RlZCIgKTsKCQkJc2VsZWN0ZWUuc2VsZWN0aW5nID0gZmFsc2U7CgkJCXNlbGVjdGVlLnNlbGVjdGVkID0gdHJ1ZTsKCQkJc2VsZWN0ZWUuc3RhcnRzZWxlY3RlZCA9IHRydWU7CgkJCXRoYXQuX3RyaWdnZXIoICJzZWxlY3RlZCIsIGV2ZW50LCB7CgkJCQlzZWxlY3RlZDogc2VsZWN0ZWUuZWxlbWVudAoJCQl9ICk7CgkJfSApOwoJCXRoaXMuX3RyaWdnZXIoICJzdG9wIiwgZXZlbnQgKTsKCgkJdGhpcy5oZWxwZXIucmVtb3ZlKCk7CgoJCXJldHVybiBmYWxzZTsKCX0KCn0gKTsKCgovKiEKICogalF1ZXJ5IFVJIFNvcnRhYmxlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogU29ydGFibGUKLy8+Pmdyb3VwOiBJbnRlcmFjdGlvbnMKLy8+PmRlc2NyaXB0aW9uOiBFbmFibGVzIGl0ZW1zIGluIGEgbGlzdCB0byBiZSBzb3J0ZWQgdXNpbmcgdGhlIG1vdXNlLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vc29ydGFibGUvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9zb3J0YWJsZS8KLy8+PmNzcy5zdHJ1Y3R1cmU6IC4uLy4uL3RoZW1lcy9iYXNlL3NvcnRhYmxlLmNzcwoKCgp2YXIgd2lkZ2V0c1NvcnRhYmxlID0gJC53aWRnZXQoICJ1aS5zb3J0YWJsZSIsICQudWkubW91c2UsIHsKCXZlcnNpb246ICIxLjEyLjEiLAoJd2lkZ2V0RXZlbnRQcmVmaXg6ICJzb3J0IiwKCXJlYWR5OiBmYWxzZSwKCW9wdGlvbnM6IHsKCQlhcHBlbmRUbzogInBhcmVudCIsCgkJYXhpczogZmFsc2UsCgkJY29ubmVjdFdpdGg6IGZhbHNlLAoJCWNvbnRhaW5tZW50OiBmYWxzZSwKCQljdXJzb3I6ICJhdXRvIiwKCQljdXJzb3JBdDogZmFsc2UsCgkJZHJvcE9uRW1wdHk6IHRydWUsCgkJZm9yY2VQbGFjZWhvbGRlclNpemU6IGZhbHNlLAoJCWZvcmNlSGVscGVyU2l6ZTogZmFsc2UsCgkJZ3JpZDogZmFsc2UsCgkJaGFuZGxlOiBmYWxzZSwKCQloZWxwZXI6ICJvcmlnaW5hbCIsCgkJaXRlbXM6ICI+ICoiLAoJCW9wYWNpdHk6IGZhbHNlLAoJCXBsYWNlaG9sZGVyOiBmYWxzZSwKCQlyZXZlcnQ6IGZhbHNlLAoJCXNjcm9sbDogdHJ1ZSwKCQlzY3JvbGxTZW5zaXRpdml0eTogMjAsCgkJc2Nyb2xsU3BlZWQ6IDIwLAoJCXNjb3BlOiAiZGVmYXVsdCIsCgkJdG9sZXJhbmNlOiAiaW50ZXJzZWN0IiwKCQl6SW5kZXg6IDEwMDAsCgoJCS8vIENhbGxiYWNrcwoJCWFjdGl2YXRlOiBudWxsLAoJCWJlZm9yZVN0b3A6IG51bGwsCgkJY2hhbmdlOiBudWxsLAoJCWRlYWN0aXZhdGU6IG51bGwsCgkJb3V0OiBudWxsLAoJCW92ZXI6IG51bGwsCgkJcmVjZWl2ZTogbnVsbCwKCQlyZW1vdmU6IG51bGwsCgkJc29ydDogbnVsbCwKCQlzdGFydDogbnVsbCwKCQlzdG9wOiBudWxsLAoJCXVwZGF0ZTogbnVsbAoJfSwKCglfaXNPdmVyQXhpczogZnVuY3Rpb24oIHgsIHJlZmVyZW5jZSwgc2l6ZSApIHsKCQlyZXR1cm4gKCB4ID49IHJlZmVyZW5jZSApICYmICggeCA8ICggcmVmZXJlbmNlICsgc2l6ZSApICk7Cgl9LAoKCV9pc0Zsb2F0aW5nOiBmdW5jdGlvbiggaXRlbSApIHsKCQlyZXR1cm4gKCAvbGVmdHxyaWdodC8gKS50ZXN0KCBpdGVtLmNzcyggImZsb2F0IiApICkgfHwKCQkJKCAvaW5saW5lfHRhYmxlLWNlbGwvICkudGVzdCggaXRlbS5jc3MoICJkaXNwbGF5IiApICk7Cgl9LAoKCV9jcmVhdGU6IGZ1bmN0aW9uKCkgewoJCXRoaXMuY29udGFpbmVyQ2FjaGUgPSB7fTsKCQl0aGlzLl9hZGRDbGFzcyggInVpLXNvcnRhYmxlIiApOwoKCQkvL0dldCB0aGUgaXRlbXMKCQl0aGlzLnJlZnJlc2goKTsKCgkJLy9MZXQncyBkZXRlcm1pbmUgdGhlIHBhcmVudCdzIG9mZnNldAoJCXRoaXMub2Zmc2V0ID0gdGhpcy5lbGVtZW50Lm9mZnNldCgpOwoKCQkvL0luaXRpYWxpemUgbW91c2UgZXZlbnRzIGZvciBpbnRlcmFjdGlvbgoJCXRoaXMuX21vdXNlSW5pdCgpOwoKCQl0aGlzLl9zZXRIYW5kbGVDbGFzc05hbWUoKTsKCgkJLy9XZSdyZSByZWFkeSB0byBnbwoJCXRoaXMucmVhZHkgPSB0cnVlOwoKCX0sCgoJX3NldE9wdGlvbjogZnVuY3Rpb24oIGtleSwgdmFsdWUgKSB7CgkJdGhpcy5fc3VwZXIoIGtleSwgdmFsdWUgKTsKCgkJaWYgKCBrZXkgPT09ICJoYW5kbGUiICkgewoJCQl0aGlzLl9zZXRIYW5kbGVDbGFzc05hbWUoKTsKCQl9Cgl9LAoKCV9zZXRIYW5kbGVDbGFzc05hbWU6IGZ1bmN0aW9uKCkgewoJCXZhciB0aGF0ID0gdGhpczsKCQl0aGlzLl9yZW1vdmVDbGFzcyggdGhpcy5lbGVtZW50LmZpbmQoICIudWktc29ydGFibGUtaGFuZGxlIiApLCAidWktc29ydGFibGUtaGFuZGxlIiApOwoJCSQuZWFjaCggdGhpcy5pdGVtcywgZnVuY3Rpb24oKSB7CgkJCXRoYXQuX2FkZENsYXNzKAoJCQkJdGhpcy5pbnN0YW5jZS5vcHRpb25zLmhhbmRsZSA/CgkJCQkJdGhpcy5pdGVtLmZpbmQoIHRoaXMuaW5zdGFuY2Uub3B0aW9ucy5oYW5kbGUgKSA6CgkJCQkJdGhpcy5pdGVtLAoJCQkJInVpLXNvcnRhYmxlLWhhbmRsZSIKCQkJKTsKCQl9ICk7Cgl9LAoKCV9kZXN0cm95OiBmdW5jdGlvbigpIHsKCQl0aGlzLl9tb3VzZURlc3Ryb3koKTsKCgkJZm9yICggdmFyIGkgPSB0aGlzLml0ZW1zLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tICkgewoJCQl0aGlzLml0ZW1zWyBpIF0uaXRlbS5yZW1vdmVEYXRhKCB0aGlzLndpZGdldE5hbWUgKyAiLWl0ZW0iICk7CgkJfQoKCQlyZXR1cm4gdGhpczsKCX0sCgoJX21vdXNlQ2FwdHVyZTogZnVuY3Rpb24oIGV2ZW50LCBvdmVycmlkZUhhbmRsZSApIHsKCQl2YXIgY3VycmVudEl0ZW0gPSBudWxsLAoJCQl2YWxpZEhhbmRsZSA9IGZhbHNlLAoJCQl0aGF0ID0gdGhpczsKCgkJaWYgKCB0aGlzLnJldmVydGluZyApIHsKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCgkJaWYgKCB0aGlzLm9wdGlvbnMuZGlzYWJsZWQgfHwgdGhpcy5vcHRpb25zLnR5cGUgPT09ICJzdGF0aWMiICkgewoJCQlyZXR1cm4gZmFsc2U7CgkJfQoKCQkvL1dlIGhhdmUgdG8gcmVmcmVzaCB0aGUgaXRlbXMgZGF0YSBvbmNlIGZpcnN0CgkJdGhpcy5fcmVmcmVzaEl0ZW1zKCBldmVudCApOwoKCQkvL0ZpbmQgb3V0IGlmIHRoZSBjbGlja2VkIG5vZGUgKG9yIG9uZSBvZiBpdHMgcGFyZW50cykgaXMgYSBhY3R1YWwgaXRlbSBpbiB0aGlzLml0ZW1zCgkJJCggZXZlbnQudGFyZ2V0ICkucGFyZW50cygpLmVhY2goIGZ1bmN0aW9uKCkgewoJCQlpZiAoICQuZGF0YSggdGhpcywgdGhhdC53aWRnZXROYW1lICsgIi1pdGVtIiApID09PSB0aGF0ICkgewoJCQkJY3VycmVudEl0ZW0gPSAkKCB0aGlzICk7CgkJCQlyZXR1cm4gZmFsc2U7CgkJCX0KCQl9ICk7CgkJaWYgKCAkLmRhdGEoIGV2ZW50LnRhcmdldCwgdGhhdC53aWRnZXROYW1lICsgIi1pdGVtIiApID09PSB0aGF0ICkgewoJCQljdXJyZW50SXRlbSA9ICQoIGV2ZW50LnRhcmdldCApOwoJCX0KCgkJaWYgKCAhY3VycmVudEl0ZW0gKSB7CgkJCXJldHVybiBmYWxzZTsKCQl9CgkJaWYgKCB0aGlzLm9wdGlvbnMuaGFuZGxlICYmICFvdmVycmlkZUhhbmRsZSApIHsKCQkJJCggdGhpcy5vcHRpb25zLmhhbmRsZSwgY3VycmVudEl0ZW0gKS5maW5kKCAiKiIgKS5hZGRCYWNrKCkuZWFjaCggZnVuY3Rpb24oKSB7CgkJCQlpZiAoIHRoaXMgPT09IGV2ZW50LnRhcmdldCApIHsKCQkJCQl2YWxpZEhhbmRsZSA9IHRydWU7CgkJCQl9CgkJCX0gKTsKCQkJaWYgKCAhdmFsaWRIYW5kbGUgKSB7CgkJCQlyZXR1cm4gZmFsc2U7CgkJCX0KCQl9CgoJCXRoaXMuY3VycmVudEl0ZW0gPSBjdXJyZW50SXRlbTsKCQl0aGlzLl9yZW1vdmVDdXJyZW50c0Zyb21JdGVtcygpOwoJCXJldHVybiB0cnVlOwoKCX0sCgoJX21vdXNlU3RhcnQ6IGZ1bmN0aW9uKCBldmVudCwgb3ZlcnJpZGVIYW5kbGUsIG5vQWN0aXZhdGlvbiApIHsKCgkJdmFyIGksIGJvZHksCgkJCW8gPSB0aGlzLm9wdGlvbnM7CgoJCXRoaXMuY3VycmVudENvbnRhaW5lciA9IHRoaXM7CgoJCS8vV2Ugb25seSBuZWVkIHRvIGNhbGwgcmVmcmVzaFBvc2l0aW9ucywgYmVjYXVzZSB0aGUgcmVmcmVzaEl0ZW1zIGNhbGwgaGFzIGJlZW4gbW92ZWQgdG8KCQkvLyBtb3VzZUNhcHR1cmUKCQl0aGlzLnJlZnJlc2hQb3NpdGlvbnMoKTsKCgkJLy9DcmVhdGUgYW5kIGFwcGVuZCB0aGUgdmlzaWJsZSBoZWxwZXIKCQl0aGlzLmhlbHBlciA9IHRoaXMuX2NyZWF0ZUhlbHBlciggZXZlbnQgKTsKCgkJLy9DYWNoZSB0aGUgaGVscGVyIHNpemUKCQl0aGlzLl9jYWNoZUhlbHBlclByb3BvcnRpb25zKCk7CgoJCS8qCgkJICogLSBQb3NpdGlvbiBnZW5lcmF0aW9uIC0KCQkgKiBUaGlzIGJsb2NrIGdlbmVyYXRlcyBldmVyeXRoaW5nIHBvc2l0aW9uIHJlbGF0ZWQgLSBpdCdzIHRoZSBjb3JlIG9mIGRyYWdnYWJsZXMuCgkJICovCgoJCS8vQ2FjaGUgdGhlIG1hcmdpbnMgb2YgdGhlIG9yaWdpbmFsIGVsZW1lbnQKCQl0aGlzLl9jYWNoZU1hcmdpbnMoKTsKCgkJLy9HZXQgdGhlIG5leHQgc2Nyb2xsaW5nIHBhcmVudAoJCXRoaXMuc2Nyb2xsUGFyZW50ID0gdGhpcy5oZWxwZXIuc2Nyb2xsUGFyZW50KCk7CgoJCS8vVGhlIGVsZW1lbnQncyBhYnNvbHV0ZSBwb3NpdGlvbiBvbiB0aGUgcGFnZSBtaW51cyBtYXJnaW5zCgkJdGhpcy5vZmZzZXQgPSB0aGlzLmN1cnJlbnRJdGVtLm9mZnNldCgpOwoJCXRoaXMub2Zmc2V0ID0gewoJCQl0b3A6IHRoaXMub2Zmc2V0LnRvcCAtIHRoaXMubWFyZ2lucy50b3AsCgkJCWxlZnQ6IHRoaXMub2Zmc2V0LmxlZnQgLSB0aGlzLm1hcmdpbnMubGVmdAoJCX07CgoJCSQuZXh0ZW5kKCB0aGlzLm9mZnNldCwgewoJCQljbGljazogeyAvL1doZXJlIHRoZSBjbGljayBoYXBwZW5lZCwgcmVsYXRpdmUgdG8gdGhlIGVsZW1lbnQKCQkJCWxlZnQ6IGV2ZW50LnBhZ2VYIC0gdGhpcy5vZmZzZXQubGVmdCwKCQkJCXRvcDogZXZlbnQucGFnZVkgLSB0aGlzLm9mZnNldC50b3AKCQkJfSwKCQkJcGFyZW50OiB0aGlzLl9nZXRQYXJlbnRPZmZzZXQoKSwKCgkJCS8vIFRoaXMgaXMgYSByZWxhdGl2ZSB0byBhYnNvbHV0ZSBwb3NpdGlvbiBtaW51cyB0aGUgYWN0dWFsIHBvc2l0aW9uIGNhbGN1bGF0aW9uIC0KCQkJLy8gb25seSB1c2VkIGZvciByZWxhdGl2ZSBwb3NpdGlvbmVkIGhlbHBlcgoJCQlyZWxhdGl2ZTogdGhpcy5fZ2V0UmVsYXRpdmVPZmZzZXQoKQoJCX0gKTsKCgkJLy8gT25seSBhZnRlciB3ZSBnb3QgdGhlIG9mZnNldCwgd2UgY2FuIGNoYW5nZSB0aGUgaGVscGVyJ3MgcG9zaXRpb24gdG8gYWJzb2x1dGUKCQkvLyBUT0RPOiBTdGlsbCBuZWVkIHRvIGZpZ3VyZSBvdXQgYSB3YXkgdG8gbWFrZSByZWxhdGl2ZSBzb3J0aW5nIHBvc3NpYmxlCgkJdGhpcy5oZWxwZXIuY3NzKCAicG9zaXRpb24iLCAiYWJzb2x1dGUiICk7CgkJdGhpcy5jc3NQb3NpdGlvbiA9IHRoaXMuaGVscGVyLmNzcyggInBvc2l0aW9uIiApOwoKCQkvL0dlbmVyYXRlIHRoZSBvcmlnaW5hbCBwb3NpdGlvbgoJCXRoaXMub3JpZ2luYWxQb3NpdGlvbiA9IHRoaXMuX2dlbmVyYXRlUG9zaXRpb24oIGV2ZW50ICk7CgkJdGhpcy5vcmlnaW5hbFBhZ2VYID0gZXZlbnQucGFnZVg7CgkJdGhpcy5vcmlnaW5hbFBhZ2VZID0gZXZlbnQucGFnZVk7CgoJCS8vQWRqdXN0IHRoZSBtb3VzZSBvZmZzZXQgcmVsYXRpdmUgdG8gdGhlIGhlbHBlciBpZiAiY3Vyc29yQXQiIGlzIHN1cHBsaWVkCgkJKCBvLmN1cnNvckF0ICYmIHRoaXMuX2FkanVzdE9mZnNldEZyb21IZWxwZXIoIG8uY3Vyc29yQXQgKSApOwoKCQkvL0NhY2hlIHRoZSBmb3JtZXIgRE9NIHBvc2l0aW9uCgkJdGhpcy5kb21Qb3NpdGlvbiA9IHsKCQkJcHJldjogdGhpcy5jdXJyZW50SXRlbS5wcmV2KClbIDAgXSwKCQkJcGFyZW50OiB0aGlzLmN1cnJlbnRJdGVtLnBhcmVudCgpWyAwIF0KCQl9OwoKCQkvLyBJZiB0aGUgaGVscGVyIGlzIG5vdCB0aGUgb3JpZ2luYWwsIGhpZGUgdGhlIG9yaWdpbmFsIHNvIGl0J3Mgbm90IHBsYXlpbmcgYW55IHJvbGUgZHVyaW5nCgkJLy8gdGhlIGRyYWcsIHdvbid0IGNhdXNlIGFueXRoaW5nIGJhZCB0aGlzIHdheQoJCWlmICggdGhpcy5oZWxwZXJbIDAgXSAhPT0gdGhpcy5jdXJyZW50SXRlbVsgMCBdICkgewoJCQl0aGlzLmN1cnJlbnRJdGVtLmhpZGUoKTsKCQl9CgoJCS8vQ3JlYXRlIHRoZSBwbGFjZWhvbGRlcgoJCXRoaXMuX2NyZWF0ZVBsYWNlaG9sZGVyKCk7CgoJCS8vU2V0IGEgY29udGFpbm1lbnQgaWYgZ2l2ZW4gaW4gdGhlIG9wdGlvbnMKCQlpZiAoIG8uY29udGFpbm1lbnQgKSB7CgkJCXRoaXMuX3NldENvbnRhaW5tZW50KCk7CgkJfQoKCQlpZiAoIG8uY3Vyc29yICYmIG8uY3Vyc29yICE9PSAiYXV0byIgKSB7IC8vIGN1cnNvciBvcHRpb24KCQkJYm9keSA9IHRoaXMuZG9jdW1lbnQuZmluZCggImJvZHkiICk7CgoJCQkvLyBTdXBwb3J0OiBJRQoJCQl0aGlzLnN0b3JlZEN1cnNvciA9IGJvZHkuY3NzKCAiY3Vyc29yIiApOwoJCQlib2R5LmNzcyggImN1cnNvciIsIG8uY3Vyc29yICk7CgoJCQl0aGlzLnN0b3JlZFN0eWxlc2hlZXQgPQoJCQkJJCggIjxzdHlsZT4qeyBjdXJzb3I6ICIgKyBvLmN1cnNvciArICIgIWltcG9ydGFudDsgfTwvc3R5bGU+IiApLmFwcGVuZFRvKCBib2R5ICk7CgkJfQoKCQlpZiAoIG8ub3BhY2l0eSApIHsgLy8gb3BhY2l0eSBvcHRpb24KCQkJaWYgKCB0aGlzLmhlbHBlci5jc3MoICJvcGFjaXR5IiApICkgewoJCQkJdGhpcy5fc3RvcmVkT3BhY2l0eSA9IHRoaXMuaGVscGVyLmNzcyggIm9wYWNpdHkiICk7CgkJCX0KCQkJdGhpcy5oZWxwZXIuY3NzKCAib3BhY2l0eSIsIG8ub3BhY2l0eSApOwoJCX0KCgkJaWYgKCBvLnpJbmRleCApIHsgLy8gekluZGV4IG9wdGlvbgoJCQlpZiAoIHRoaXMuaGVscGVyLmNzcyggInpJbmRleCIgKSApIHsKCQkJCXRoaXMuX3N0b3JlZFpJbmRleCA9IHRoaXMuaGVscGVyLmNzcyggInpJbmRleCIgKTsKCQkJfQoJCQl0aGlzLmhlbHBlci5jc3MoICJ6SW5kZXgiLCBvLnpJbmRleCApOwoJCX0KCgkJLy9QcmVwYXJlIHNjcm9sbGluZwoJCWlmICggdGhpcy5zY3JvbGxQYXJlbnRbIDAgXSAhPT0gdGhpcy5kb2N1bWVudFsgMCBdICYmCgkJCQl0aGlzLnNjcm9sbFBhcmVudFsgMCBdLnRhZ05hbWUgIT09ICJIVE1MIiApIHsKCQkJdGhpcy5vdmVyZmxvd09mZnNldCA9IHRoaXMuc2Nyb2xsUGFyZW50Lm9mZnNldCgpOwoJCX0KCgkJLy9DYWxsIGNhbGxiYWNrcwoJCXRoaXMuX3RyaWdnZXIoICJzdGFydCIsIGV2ZW50LCB0aGlzLl91aUhhc2goKSApOwoKCQkvL1JlY2FjaGUgdGhlIGhlbHBlciBzaXplCgkJaWYgKCAhdGhpcy5fcHJlc2VydmVIZWxwZXJQcm9wb3J0aW9ucyApIHsKCQkJdGhpcy5fY2FjaGVIZWxwZXJQcm9wb3J0aW9ucygpOwoJCX0KCgkJLy9Qb3N0ICJhY3RpdmF0ZSIgZXZlbnRzIHRvIHBvc3NpYmxlIGNvbnRhaW5lcnMKCQlpZiAoICFub0FjdGl2YXRpb24gKSB7CgkJCWZvciAoIGkgPSB0aGlzLmNvbnRhaW5lcnMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0gKSB7CgkJCQl0aGlzLmNvbnRhaW5lcnNbIGkgXS5fdHJpZ2dlciggImFjdGl2YXRlIiwgZXZlbnQsIHRoaXMuX3VpSGFzaCggdGhpcyApICk7CgkJCX0KCQl9CgoJCS8vUHJlcGFyZSBwb3NzaWJsZSBkcm9wcGFibGVzCgkJaWYgKCAkLnVpLmRkbWFuYWdlciApIHsKCQkJJC51aS5kZG1hbmFnZXIuY3VycmVudCA9IHRoaXM7CgkJfQoKCQlpZiAoICQudWkuZGRtYW5hZ2VyICYmICFvLmRyb3BCZWhhdmlvdXIgKSB7CgkJCSQudWkuZGRtYW5hZ2VyLnByZXBhcmVPZmZzZXRzKCB0aGlzLCBldmVudCApOwoJCX0KCgkJdGhpcy5kcmFnZ2luZyA9IHRydWU7CgoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLmhlbHBlciwgInVpLXNvcnRhYmxlLWhlbHBlciIgKTsKCgkJLy8gRXhlY3V0ZSB0aGUgZHJhZyBvbmNlIC0gdGhpcyBjYXVzZXMgdGhlIGhlbHBlciBub3QgdG8gYmUgdmlzaWJsZWJlZm9yZSBnZXR0aW5nIGl0cwoJCS8vIGNvcnJlY3QgcG9zaXRpb24KCQl0aGlzLl9tb3VzZURyYWcoIGV2ZW50ICk7CgkJcmV0dXJuIHRydWU7CgoJfSwKCglfbW91c2VEcmFnOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdmFyIGksIGl0ZW0sIGl0ZW1FbGVtZW50LCBpbnRlcnNlY3Rpb24sCgkJCW8gPSB0aGlzLm9wdGlvbnMsCgkJCXNjcm9sbGVkID0gZmFsc2U7CgoJCS8vQ29tcHV0ZSB0aGUgaGVscGVycyBwb3NpdGlvbgoJCXRoaXMucG9zaXRpb24gPSB0aGlzLl9nZW5lcmF0ZVBvc2l0aW9uKCBldmVudCApOwoJCXRoaXMucG9zaXRpb25BYnMgPSB0aGlzLl9jb252ZXJ0UG9zaXRpb25UbyggImFic29sdXRlIiApOwoKCQlpZiAoICF0aGlzLmxhc3RQb3NpdGlvbkFicyApIHsKCQkJdGhpcy5sYXN0UG9zaXRpb25BYnMgPSB0aGlzLnBvc2l0aW9uQWJzOwoJCX0KCgkJLy9EbyBzY3JvbGxpbmcKCQlpZiAoIHRoaXMub3B0aW9ucy5zY3JvbGwgKSB7CgkJCWlmICggdGhpcy5zY3JvbGxQYXJlbnRbIDAgXSAhPT0gdGhpcy5kb2N1bWVudFsgMCBdICYmCgkJCQkJdGhpcy5zY3JvbGxQYXJlbnRbIDAgXS50YWdOYW1lICE9PSAiSFRNTCIgKSB7CgoJCQkJaWYgKCAoIHRoaXMub3ZlcmZsb3dPZmZzZXQudG9wICsgdGhpcy5zY3JvbGxQYXJlbnRbIDAgXS5vZmZzZXRIZWlnaHQgKSAtCgkJCQkJCWV2ZW50LnBhZ2VZIDwgby5zY3JvbGxTZW5zaXRpdml0eSApIHsKCQkJCQl0aGlzLnNjcm9sbFBhcmVudFsgMCBdLnNjcm9sbFRvcCA9CgkJCQkJCXNjcm9sbGVkID0gdGhpcy5zY3JvbGxQYXJlbnRbIDAgXS5zY3JvbGxUb3AgKyBvLnNjcm9sbFNwZWVkOwoJCQkJfSBlbHNlIGlmICggZXZlbnQucGFnZVkgLSB0aGlzLm92ZXJmbG93T2Zmc2V0LnRvcCA8IG8uc2Nyb2xsU2Vuc2l0aXZpdHkgKSB7CgkJCQkJdGhpcy5zY3JvbGxQYXJlbnRbIDAgXS5zY3JvbGxUb3AgPQoJCQkJCQlzY3JvbGxlZCA9IHRoaXMuc2Nyb2xsUGFyZW50WyAwIF0uc2Nyb2xsVG9wIC0gby5zY3JvbGxTcGVlZDsKCQkJCX0KCgkJCQlpZiAoICggdGhpcy5vdmVyZmxvd09mZnNldC5sZWZ0ICsgdGhpcy5zY3JvbGxQYXJlbnRbIDAgXS5vZmZzZXRXaWR0aCApIC0KCQkJCQkJZXZlbnQucGFnZVggPCBvLnNjcm9sbFNlbnNpdGl2aXR5ICkgewoJCQkJCXRoaXMuc2Nyb2xsUGFyZW50WyAwIF0uc2Nyb2xsTGVmdCA9IHNjcm9sbGVkID0KCQkJCQkJdGhpcy5zY3JvbGxQYXJlbnRbIDAgXS5zY3JvbGxMZWZ0ICsgby5zY3JvbGxTcGVlZDsKCQkJCX0gZWxzZSBpZiAoIGV2ZW50LnBhZ2VYIC0gdGhpcy5vdmVyZmxvd09mZnNldC5sZWZ0IDwgby5zY3JvbGxTZW5zaXRpdml0eSApIHsKCQkJCQl0aGlzLnNjcm9sbFBhcmVudFsgMCBdLnNjcm9sbExlZnQgPSBzY3JvbGxlZCA9CgkJCQkJCXRoaXMuc2Nyb2xsUGFyZW50WyAwIF0uc2Nyb2xsTGVmdCAtIG8uc2Nyb2xsU3BlZWQ7CgkJCQl9CgoJCQl9IGVsc2UgewoKCQkJCWlmICggZXZlbnQucGFnZVkgLSB0aGlzLmRvY3VtZW50LnNjcm9sbFRvcCgpIDwgby5zY3JvbGxTZW5zaXRpdml0eSApIHsKCQkJCQlzY3JvbGxlZCA9IHRoaXMuZG9jdW1lbnQuc2Nyb2xsVG9wKCB0aGlzLmRvY3VtZW50LnNjcm9sbFRvcCgpIC0gby5zY3JvbGxTcGVlZCApOwoJCQkJfSBlbHNlIGlmICggdGhpcy53aW5kb3cuaGVpZ2h0KCkgLSAoIGV2ZW50LnBhZ2VZIC0gdGhpcy5kb2N1bWVudC5zY3JvbGxUb3AoKSApIDwKCQkJCQkJby5zY3JvbGxTZW5zaXRpdml0eSApIHsKCQkJCQlzY3JvbGxlZCA9IHRoaXMuZG9jdW1lbnQuc2Nyb2xsVG9wKCB0aGlzLmRvY3VtZW50LnNjcm9sbFRvcCgpICsgby5zY3JvbGxTcGVlZCApOwoJCQkJfQoKCQkJCWlmICggZXZlbnQucGFnZVggLSB0aGlzLmRvY3VtZW50LnNjcm9sbExlZnQoKSA8IG8uc2Nyb2xsU2Vuc2l0aXZpdHkgKSB7CgkJCQkJc2Nyb2xsZWQgPSB0aGlzLmRvY3VtZW50LnNjcm9sbExlZnQoCgkJCQkJCXRoaXMuZG9jdW1lbnQuc2Nyb2xsTGVmdCgpIC0gby5zY3JvbGxTcGVlZAoJCQkJCSk7CgkJCQl9IGVsc2UgaWYgKCB0aGlzLndpbmRvdy53aWR0aCgpIC0gKCBldmVudC5wYWdlWCAtIHRoaXMuZG9jdW1lbnQuc2Nyb2xsTGVmdCgpICkgPAoJCQkJCQlvLnNjcm9sbFNlbnNpdGl2aXR5ICkgewoJCQkJCXNjcm9sbGVkID0gdGhpcy5kb2N1bWVudC5zY3JvbGxMZWZ0KAoJCQkJCQl0aGlzLmRvY3VtZW50LnNjcm9sbExlZnQoKSArIG8uc2Nyb2xsU3BlZWQKCQkJCQkpOwoJCQkJfQoKCQkJfQoKCQkJaWYgKCBzY3JvbGxlZCAhPT0gZmFsc2UgJiYgJC51aS5kZG1hbmFnZXIgJiYgIW8uZHJvcEJlaGF2aW91ciApIHsKCQkJCSQudWkuZGRtYW5hZ2VyLnByZXBhcmVPZmZzZXRzKCB0aGlzLCBldmVudCApOwoJCQl9CgkJfQoKCQkvL1JlZ2VuZXJhdGUgdGhlIGFic29sdXRlIHBvc2l0aW9uIHVzZWQgZm9yIHBvc2l0aW9uIGNoZWNrcwoJCXRoaXMucG9zaXRpb25BYnMgPSB0aGlzLl9jb252ZXJ0UG9zaXRpb25UbyggImFic29sdXRlIiApOwoKCQkvL1NldCB0aGUgaGVscGVyIHBvc2l0aW9uCgkJaWYgKCAhdGhpcy5vcHRpb25zLmF4aXMgfHwgdGhpcy5vcHRpb25zLmF4aXMgIT09ICJ5IiApIHsKCQkJdGhpcy5oZWxwZXJbIDAgXS5zdHlsZS5sZWZ0ID0gdGhpcy5wb3NpdGlvbi5sZWZ0ICsgInB4IjsKCQl9CgkJaWYgKCAhdGhpcy5vcHRpb25zLmF4aXMgfHwgdGhpcy5vcHRpb25zLmF4aXMgIT09ICJ4IiApIHsKCQkJdGhpcy5oZWxwZXJbIDAgXS5zdHlsZS50b3AgPSB0aGlzLnBvc2l0aW9uLnRvcCArICJweCI7CgkJfQoKCQkvL1JlYXJyYW5nZQoJCWZvciAoIGkgPSB0aGlzLml0ZW1zLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tICkgewoKCQkJLy9DYWNoZSB2YXJpYWJsZXMgYW5kIGludGVyc2VjdGlvbiwgY29udGludWUgaWYgbm8gaW50ZXJzZWN0aW9uCgkJCWl0ZW0gPSB0aGlzLml0ZW1zWyBpIF07CgkJCWl0ZW1FbGVtZW50ID0gaXRlbS5pdGVtWyAwIF07CgkJCWludGVyc2VjdGlvbiA9IHRoaXMuX2ludGVyc2VjdHNXaXRoUG9pbnRlciggaXRlbSApOwoJCQlpZiAoICFpbnRlcnNlY3Rpb24gKSB7CgkJCQljb250aW51ZTsKCQkJfQoKCQkJLy8gT25seSBwdXQgdGhlIHBsYWNlaG9sZGVyIGluc2lkZSB0aGUgY3VycmVudCBDb250YWluZXIsIHNraXAgYWxsCgkJCS8vIGl0ZW1zIGZyb20gb3RoZXIgY29udGFpbmVycy4gVGhpcyB3b3JrcyBiZWNhdXNlIHdoZW4gbW92aW5nCgkJCS8vIGFuIGl0ZW0gZnJvbSBvbmUgY29udGFpbmVyIHRvIGFub3RoZXIgdGhlCgkJCS8vIGN1cnJlbnRDb250YWluZXIgaXMgc3dpdGNoZWQgYmVmb3JlIHRoZSBwbGFjZWhvbGRlciBpcyBtb3ZlZC4KCQkJLy8KCQkJLy8gV2l0aG91dCB0aGlzLCBtb3ZpbmcgaXRlbXMgaW4gInN1Yi1zb3J0YWJsZXMiIGNhbiBjYXVzZQoJCQkvLyB0aGUgcGxhY2Vob2xkZXIgdG8gaml0dGVyIGJldHdlZW4gdGhlIG91dGVyIGFuZCBpbm5lciBjb250YWluZXIuCgkJCWlmICggaXRlbS5pbnN0YW5jZSAhPT0gdGhpcy5jdXJyZW50Q29udGFpbmVyICkgewoJCQkJY29udGludWU7CgkJCX0KCgkJCS8vIENhbm5vdCBpbnRlcnNlY3Qgd2l0aCBpdHNlbGYKCQkJLy8gbm8gdXNlbGVzcyBhY3Rpb25zIHRoYXQgaGF2ZSBiZWVuIGRvbmUgYmVmb3JlCgkJCS8vIG5vIGFjdGlvbiBpZiB0aGUgaXRlbSBtb3ZlZCBpcyB0aGUgcGFyZW50IG9mIHRoZSBpdGVtIGNoZWNrZWQKCQkJaWYgKCBpdGVtRWxlbWVudCAhPT0gdGhpcy5jdXJyZW50SXRlbVsgMCBdICYmCgkJCQl0aGlzLnBsYWNlaG9sZGVyWyBpbnRlcnNlY3Rpb24gPT09IDEgPyAibmV4dCIgOiAicHJldiIgXSgpWyAwIF0gIT09IGl0ZW1FbGVtZW50ICYmCgkJCQkhJC5jb250YWlucyggdGhpcy5wbGFjZWhvbGRlclsgMCBdLCBpdGVtRWxlbWVudCApICYmCgkJCQkoIHRoaXMub3B0aW9ucy50eXBlID09PSAic2VtaS1keW5hbWljIiA/CgkJCQkJISQuY29udGFpbnMoIHRoaXMuZWxlbWVudFsgMCBdLCBpdGVtRWxlbWVudCApIDoKCQkJCQl0cnVlCgkJCQkpCgkJCSkgewoKCQkJCXRoaXMuZGlyZWN0aW9uID0gaW50ZXJzZWN0aW9uID09PSAxID8gImRvd24iIDogInVwIjsKCgkJCQlpZiAoIHRoaXMub3B0aW9ucy50b2xlcmFuY2UgPT09ICJwb2ludGVyIiB8fCB0aGlzLl9pbnRlcnNlY3RzV2l0aFNpZGVzKCBpdGVtICkgKSB7CgkJCQkJdGhpcy5fcmVhcnJhbmdlKCBldmVudCwgaXRlbSApOwoJCQkJfSBlbHNlIHsKCQkJCQlicmVhazsKCQkJCX0KCgkJCQl0aGlzLl90cmlnZ2VyKCAiY2hhbmdlIiwgZXZlbnQsIHRoaXMuX3VpSGFzaCgpICk7CgkJCQlicmVhazsKCQkJfQoJCX0KCgkJLy9Qb3N0IGV2ZW50cyB0byBjb250YWluZXJzCgkJdGhpcy5fY29udGFjdENvbnRhaW5lcnMoIGV2ZW50ICk7CgoJCS8vSW50ZXJjb25uZWN0IHdpdGggZHJvcHBhYmxlcwoJCWlmICggJC51aS5kZG1hbmFnZXIgKSB7CgkJCSQudWkuZGRtYW5hZ2VyLmRyYWcoIHRoaXMsIGV2ZW50ICk7CgkJfQoKCQkvL0NhbGwgY2FsbGJhY2tzCgkJdGhpcy5fdHJpZ2dlciggInNvcnQiLCBldmVudCwgdGhpcy5fdWlIYXNoKCkgKTsKCgkJdGhpcy5sYXN0UG9zaXRpb25BYnMgPSB0aGlzLnBvc2l0aW9uQWJzOwoJCXJldHVybiBmYWxzZTsKCgl9LAoKCV9tb3VzZVN0b3A6IGZ1bmN0aW9uKCBldmVudCwgbm9Qcm9wYWdhdGlvbiApIHsKCgkJaWYgKCAhZXZlbnQgKSB7CgkJCXJldHVybjsKCQl9CgoJCS8vSWYgd2UgYXJlIHVzaW5nIGRyb3BwYWJsZXMsIGluZm9ybSB0aGUgbWFuYWdlciBhYm91dCB0aGUgZHJvcAoJCWlmICggJC51aS5kZG1hbmFnZXIgJiYgIXRoaXMub3B0aW9ucy5kcm9wQmVoYXZpb3VyICkgewoJCQkkLnVpLmRkbWFuYWdlci5kcm9wKCB0aGlzLCBldmVudCApOwoJCX0KCgkJaWYgKCB0aGlzLm9wdGlvbnMucmV2ZXJ0ICkgewoJCQl2YXIgdGhhdCA9IHRoaXMsCgkJCQljdXIgPSB0aGlzLnBsYWNlaG9sZGVyLm9mZnNldCgpLAoJCQkJYXhpcyA9IHRoaXMub3B0aW9ucy5heGlzLAoJCQkJYW5pbWF0aW9uID0ge307CgoJCQlpZiAoICFheGlzIHx8IGF4aXMgPT09ICJ4IiApIHsKCQkJCWFuaW1hdGlvbi5sZWZ0ID0gY3VyLmxlZnQgLSB0aGlzLm9mZnNldC5wYXJlbnQubGVmdCAtIHRoaXMubWFyZ2lucy5sZWZ0ICsKCQkJCQkoIHRoaXMub2Zmc2V0UGFyZW50WyAwIF0gPT09IHRoaXMuZG9jdW1lbnRbIDAgXS5ib2R5ID8KCQkJCQkJMCA6CgkJCQkJCXRoaXMub2Zmc2V0UGFyZW50WyAwIF0uc2Nyb2xsTGVmdAoJCQkJCSk7CgkJCX0KCQkJaWYgKCAhYXhpcyB8fCBheGlzID09PSAieSIgKSB7CgkJCQlhbmltYXRpb24udG9wID0gY3VyLnRvcCAtIHRoaXMub2Zmc2V0LnBhcmVudC50b3AgLSB0aGlzLm1hcmdpbnMudG9wICsKCQkJCQkoIHRoaXMub2Zmc2V0UGFyZW50WyAwIF0gPT09IHRoaXMuZG9jdW1lbnRbIDAgXS5ib2R5ID8KCQkJCQkJMCA6CgkJCQkJCXRoaXMub2Zmc2V0UGFyZW50WyAwIF0uc2Nyb2xsVG9wCgkJCQkJKTsKCQkJfQoJCQl0aGlzLnJldmVydGluZyA9IHRydWU7CgkJCSQoIHRoaXMuaGVscGVyICkuYW5pbWF0ZSgKCQkJCWFuaW1hdGlvbiwKCQkJCXBhcnNlSW50KCB0aGlzLm9wdGlvbnMucmV2ZXJ0LCAxMCApIHx8IDUwMCwKCQkJCWZ1bmN0aW9uKCkgewoJCQkJCXRoYXQuX2NsZWFyKCBldmVudCApOwoJCQkJfQoJCQkpOwoJCX0gZWxzZSB7CgkJCXRoaXMuX2NsZWFyKCBldmVudCwgbm9Qcm9wYWdhdGlvbiApOwoJCX0KCgkJcmV0dXJuIGZhbHNlOwoKCX0sCgoJY2FuY2VsOiBmdW5jdGlvbigpIHsKCgkJaWYgKCB0aGlzLmRyYWdnaW5nICkgewoKCQkJdGhpcy5fbW91c2VVcCggbmV3ICQuRXZlbnQoICJtb3VzZXVwIiwgeyB0YXJnZXQ6IG51bGwgfSApICk7CgoJCQlpZiAoIHRoaXMub3B0aW9ucy5oZWxwZXIgPT09ICJvcmlnaW5hbCIgKSB7CgkJCQl0aGlzLmN1cnJlbnRJdGVtLmNzcyggdGhpcy5fc3RvcmVkQ1NTICk7CgkJCQl0aGlzLl9yZW1vdmVDbGFzcyggdGhpcy5jdXJyZW50SXRlbSwgInVpLXNvcnRhYmxlLWhlbHBlciIgKTsKCQkJfSBlbHNlIHsKCQkJCXRoaXMuY3VycmVudEl0ZW0uc2hvdygpOwoJCQl9CgoJCQkvL1Bvc3QgZGVhY3RpdmF0aW5nIGV2ZW50cyB0byBjb250YWluZXJzCgkJCWZvciAoIHZhciBpID0gdGhpcy5jb250YWluZXJzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tICkgewoJCQkJdGhpcy5jb250YWluZXJzWyBpIF0uX3RyaWdnZXIoICJkZWFjdGl2YXRlIiwgbnVsbCwgdGhpcy5fdWlIYXNoKCB0aGlzICkgKTsKCQkJCWlmICggdGhpcy5jb250YWluZXJzWyBpIF0uY29udGFpbmVyQ2FjaGUub3ZlciApIHsKCQkJCQl0aGlzLmNvbnRhaW5lcnNbIGkgXS5fdHJpZ2dlciggIm91dCIsIG51bGwsIHRoaXMuX3VpSGFzaCggdGhpcyApICk7CgkJCQkJdGhpcy5jb250YWluZXJzWyBpIF0uY29udGFpbmVyQ2FjaGUub3ZlciA9IDA7CgkJCQl9CgkJCX0KCgkJfQoKCQlpZiAoIHRoaXMucGxhY2Vob2xkZXIgKSB7CgoJCQkvLyQodGhpcy5wbGFjZWhvbGRlclswXSkucmVtb3ZlKCk7IHdvdWxkIGhhdmUgYmVlbiB0aGUgalF1ZXJ5IHdheSAtIHVuZm9ydHVuYXRlbHksCgkJCS8vIGl0IHVuYmluZHMgQUxMIGV2ZW50cyBmcm9tIHRoZSBvcmlnaW5hbCBub2RlIQoJCQlpZiAoIHRoaXMucGxhY2Vob2xkZXJbIDAgXS5wYXJlbnROb2RlICkgewoJCQkJdGhpcy5wbGFjZWhvbGRlclsgMCBdLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoIHRoaXMucGxhY2Vob2xkZXJbIDAgXSApOwoJCQl9CgkJCWlmICggdGhpcy5vcHRpb25zLmhlbHBlciAhPT0gIm9yaWdpbmFsIiAmJiB0aGlzLmhlbHBlciAmJgoJCQkJCXRoaXMuaGVscGVyWyAwIF0ucGFyZW50Tm9kZSApIHsKCQkJCXRoaXMuaGVscGVyLnJlbW92ZSgpOwoJCQl9CgoJCQkkLmV4dGVuZCggdGhpcywgewoJCQkJaGVscGVyOiBudWxsLAoJCQkJZHJhZ2dpbmc6IGZhbHNlLAoJCQkJcmV2ZXJ0aW5nOiBmYWxzZSwKCQkJCV9ub0ZpbmFsU29ydDogbnVsbAoJCQl9ICk7CgoJCQlpZiAoIHRoaXMuZG9tUG9zaXRpb24ucHJldiApIHsKCQkJCSQoIHRoaXMuZG9tUG9zaXRpb24ucHJldiApLmFmdGVyKCB0aGlzLmN1cnJlbnRJdGVtICk7CgkJCX0gZWxzZSB7CgkJCQkkKCB0aGlzLmRvbVBvc2l0aW9uLnBhcmVudCApLnByZXBlbmQoIHRoaXMuY3VycmVudEl0ZW0gKTsKCQkJfQoJCX0KCgkJcmV0dXJuIHRoaXM7CgoJfSwKCglzZXJpYWxpemU6IGZ1bmN0aW9uKCBvICkgewoKCQl2YXIgaXRlbXMgPSB0aGlzLl9nZXRJdGVtc0FzalF1ZXJ5KCBvICYmIG8uY29ubmVjdGVkICksCgkJCXN0ciA9IFtdOwoJCW8gPSBvIHx8IHt9OwoKCQkkKCBpdGVtcyApLmVhY2goIGZ1bmN0aW9uKCkgewoJCQl2YXIgcmVzID0gKCAkKCBvLml0ZW0gfHwgdGhpcyApLmF0dHIoIG8uYXR0cmlidXRlIHx8ICJpZCIgKSB8fCAiIiApCgkJCQkubWF0Y2goIG8uZXhwcmVzc2lvbiB8fCAoIC8oLispW1wtPV9dKC4rKS8gKSApOwoJCQlpZiAoIHJlcyApIHsKCQkJCXN0ci5wdXNoKAoJCQkJCSggby5rZXkgfHwgcmVzWyAxIF0gKyAiW10iICkgKwoJCQkJCSI9IiArICggby5rZXkgJiYgby5leHByZXNzaW9uID8gcmVzWyAxIF0gOiByZXNbIDIgXSApICk7CgkJCX0KCQl9ICk7CgoJCWlmICggIXN0ci5sZW5ndGggJiYgby5rZXkgKSB7CgkJCXN0ci5wdXNoKCBvLmtleSArICI9IiApOwoJCX0KCgkJcmV0dXJuIHN0ci5qb2luKCAiJiIgKTsKCgl9LAoKCXRvQXJyYXk6IGZ1bmN0aW9uKCBvICkgewoKCQl2YXIgaXRlbXMgPSB0aGlzLl9nZXRJdGVtc0FzalF1ZXJ5KCBvICYmIG8uY29ubmVjdGVkICksCgkJCXJldCA9IFtdOwoKCQlvID0gbyB8fCB7fTsKCgkJaXRlbXMuZWFjaCggZnVuY3Rpb24oKSB7CgkJCXJldC5wdXNoKCAkKCBvLml0ZW0gfHwgdGhpcyApLmF0dHIoIG8uYXR0cmlidXRlIHx8ICJpZCIgKSB8fCAiIiApOwoJCX0gKTsKCQlyZXR1cm4gcmV0OwoKCX0sCgoJLyogQmUgY2FyZWZ1bCB3aXRoIHRoZSBmb2xsb3dpbmcgY29yZSBmdW5jdGlvbnMgKi8KCV9pbnRlcnNlY3RzV2l0aDogZnVuY3Rpb24oIGl0ZW0gKSB7CgoJCXZhciB4MSA9IHRoaXMucG9zaXRpb25BYnMubGVmdCwKCQkJeDIgPSB4MSArIHRoaXMuaGVscGVyUHJvcG9ydGlvbnMud2lkdGgsCgkJCXkxID0gdGhpcy5wb3NpdGlvbkFicy50b3AsCgkJCXkyID0geTEgKyB0aGlzLmhlbHBlclByb3BvcnRpb25zLmhlaWdodCwKCQkJbCA9IGl0ZW0ubGVmdCwKCQkJciA9IGwgKyBpdGVtLndpZHRoLAoJCQl0ID0gaXRlbS50b3AsCgkJCWIgPSB0ICsgaXRlbS5oZWlnaHQsCgkJCWR5Q2xpY2sgPSB0aGlzLm9mZnNldC5jbGljay50b3AsCgkJCWR4Q2xpY2sgPSB0aGlzLm9mZnNldC5jbGljay5sZWZ0LAoJCQlpc092ZXJFbGVtZW50SGVpZ2h0ID0gKCB0aGlzLm9wdGlvbnMuYXhpcyA9PT0gIngiICkgfHwgKCAoIHkxICsgZHlDbGljayApID4gdCAmJgoJCQkJKCB5MSArIGR5Q2xpY2sgKSA8IGIgKSwKCQkJaXNPdmVyRWxlbWVudFdpZHRoID0gKCB0aGlzLm9wdGlvbnMuYXhpcyA9PT0gInkiICkgfHwgKCAoIHgxICsgZHhDbGljayApID4gbCAmJgoJCQkJKCB4MSArIGR4Q2xpY2sgKSA8IHIgKSwKCQkJaXNPdmVyRWxlbWVudCA9IGlzT3ZlckVsZW1lbnRIZWlnaHQgJiYgaXNPdmVyRWxlbWVudFdpZHRoOwoKCQlpZiAoIHRoaXMub3B0aW9ucy50b2xlcmFuY2UgPT09ICJwb2ludGVyIiB8fAoJCQl0aGlzLm9wdGlvbnMuZm9yY2VQb2ludGVyRm9yQ29udGFpbmVycyB8fAoJCQkoIHRoaXMub3B0aW9ucy50b2xlcmFuY2UgIT09ICJwb2ludGVyIiAmJgoJCQkJdGhpcy5oZWxwZXJQcm9wb3J0aW9uc1sgdGhpcy5mbG9hdGluZyA/ICJ3aWR0aCIgOiAiaGVpZ2h0IiBdID4KCQkJCWl0ZW1bIHRoaXMuZmxvYXRpbmcgPyAid2lkdGgiIDogImhlaWdodCIgXSApCgkJKSB7CgkJCXJldHVybiBpc092ZXJFbGVtZW50OwoJCX0gZWxzZSB7CgoJCQlyZXR1cm4gKCBsIDwgeDEgKyAoIHRoaXMuaGVscGVyUHJvcG9ydGlvbnMud2lkdGggLyAyICkgJiYgLy8gUmlnaHQgSGFsZgoJCQkJeDIgLSAoIHRoaXMuaGVscGVyUHJvcG9ydGlvbnMud2lkdGggLyAyICkgPCByICYmIC8vIExlZnQgSGFsZgoJCQkJdCA8IHkxICsgKCB0aGlzLmhlbHBlclByb3BvcnRpb25zLmhlaWdodCAvIDIgKSAmJiAvLyBCb3R0b20gSGFsZgoJCQkJeTIgLSAoIHRoaXMuaGVscGVyUHJvcG9ydGlvbnMuaGVpZ2h0IC8gMiApIDwgYiApOyAvLyBUb3AgSGFsZgoKCQl9Cgl9LAoKCV9pbnRlcnNlY3RzV2l0aFBvaW50ZXI6IGZ1bmN0aW9uKCBpdGVtICkgewoJCXZhciB2ZXJ0aWNhbERpcmVjdGlvbiwgaG9yaXpvbnRhbERpcmVjdGlvbiwKCQkJaXNPdmVyRWxlbWVudEhlaWdodCA9ICggdGhpcy5vcHRpb25zLmF4aXMgPT09ICJ4IiApIHx8CgkJCQl0aGlzLl9pc092ZXJBeGlzKAoJCQkJCXRoaXMucG9zaXRpb25BYnMudG9wICsgdGhpcy5vZmZzZXQuY2xpY2sudG9wLCBpdGVtLnRvcCwgaXRlbS5oZWlnaHQgKSwKCQkJaXNPdmVyRWxlbWVudFdpZHRoID0gKCB0aGlzLm9wdGlvbnMuYXhpcyA9PT0gInkiICkgfHwKCQkJCXRoaXMuX2lzT3ZlckF4aXMoCgkJCQkJdGhpcy5wb3NpdGlvbkFicy5sZWZ0ICsgdGhpcy5vZmZzZXQuY2xpY2subGVmdCwgaXRlbS5sZWZ0LCBpdGVtLndpZHRoICksCgkJCWlzT3ZlckVsZW1lbnQgPSBpc092ZXJFbGVtZW50SGVpZ2h0ICYmIGlzT3ZlckVsZW1lbnRXaWR0aDsKCgkJaWYgKCAhaXNPdmVyRWxlbWVudCApIHsKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCgkJdmVydGljYWxEaXJlY3Rpb24gPSB0aGlzLl9nZXREcmFnVmVydGljYWxEaXJlY3Rpb24oKTsKCQlob3Jpem9udGFsRGlyZWN0aW9uID0gdGhpcy5fZ2V0RHJhZ0hvcml6b250YWxEaXJlY3Rpb24oKTsKCgkJcmV0dXJuIHRoaXMuZmxvYXRpbmcgPwoJCQkoICggaG9yaXpvbnRhbERpcmVjdGlvbiA9PT0gInJpZ2h0IiB8fCB2ZXJ0aWNhbERpcmVjdGlvbiA9PT0gImRvd24iICkgPyAyIDogMSApCgkJCTogKCB2ZXJ0aWNhbERpcmVjdGlvbiAmJiAoIHZlcnRpY2FsRGlyZWN0aW9uID09PSAiZG93biIgPyAyIDogMSApICk7CgoJfSwKCglfaW50ZXJzZWN0c1dpdGhTaWRlczogZnVuY3Rpb24oIGl0ZW0gKSB7CgoJCXZhciBpc092ZXJCb3R0b21IYWxmID0gdGhpcy5faXNPdmVyQXhpcyggdGhpcy5wb3NpdGlvbkFicy50b3AgKwoJCQkJdGhpcy5vZmZzZXQuY2xpY2sudG9wLCBpdGVtLnRvcCArICggaXRlbS5oZWlnaHQgLyAyICksIGl0ZW0uaGVpZ2h0ICksCgkJCWlzT3ZlclJpZ2h0SGFsZiA9IHRoaXMuX2lzT3ZlckF4aXMoIHRoaXMucG9zaXRpb25BYnMubGVmdCArCgkJCQl0aGlzLm9mZnNldC5jbGljay5sZWZ0LCBpdGVtLmxlZnQgKyAoIGl0ZW0ud2lkdGggLyAyICksIGl0ZW0ud2lkdGggKSwKCQkJdmVydGljYWxEaXJlY3Rpb24gPSB0aGlzLl9nZXREcmFnVmVydGljYWxEaXJlY3Rpb24oKSwKCQkJaG9yaXpvbnRhbERpcmVjdGlvbiA9IHRoaXMuX2dldERyYWdIb3Jpem9udGFsRGlyZWN0aW9uKCk7CgoJCWlmICggdGhpcy5mbG9hdGluZyAmJiBob3Jpem9udGFsRGlyZWN0aW9uICkgewoJCQlyZXR1cm4gKCAoIGhvcml6b250YWxEaXJlY3Rpb24gPT09ICJyaWdodCIgJiYgaXNPdmVyUmlnaHRIYWxmICkgfHwKCQkJCSggaG9yaXpvbnRhbERpcmVjdGlvbiA9PT0gImxlZnQiICYmICFpc092ZXJSaWdodEhhbGYgKSApOwoJCX0gZWxzZSB7CgkJCXJldHVybiB2ZXJ0aWNhbERpcmVjdGlvbiAmJiAoICggdmVydGljYWxEaXJlY3Rpb24gPT09ICJkb3duIiAmJiBpc092ZXJCb3R0b21IYWxmICkgfHwKCQkJCSggdmVydGljYWxEaXJlY3Rpb24gPT09ICJ1cCIgJiYgIWlzT3ZlckJvdHRvbUhhbGYgKSApOwoJCX0KCgl9LAoKCV9nZXREcmFnVmVydGljYWxEaXJlY3Rpb246IGZ1bmN0aW9uKCkgewoJCXZhciBkZWx0YSA9IHRoaXMucG9zaXRpb25BYnMudG9wIC0gdGhpcy5sYXN0UG9zaXRpb25BYnMudG9wOwoJCXJldHVybiBkZWx0YSAhPT0gMCAmJiAoIGRlbHRhID4gMCA/ICJkb3duIiA6ICJ1cCIgKTsKCX0sCgoJX2dldERyYWdIb3Jpem9udGFsRGlyZWN0aW9uOiBmdW5jdGlvbigpIHsKCQl2YXIgZGVsdGEgPSB0aGlzLnBvc2l0aW9uQWJzLmxlZnQgLSB0aGlzLmxhc3RQb3NpdGlvbkFicy5sZWZ0OwoJCXJldHVybiBkZWx0YSAhPT0gMCAmJiAoIGRlbHRhID4gMCA/ICJyaWdodCIgOiAibGVmdCIgKTsKCX0sCgoJcmVmcmVzaDogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXRoaXMuX3JlZnJlc2hJdGVtcyggZXZlbnQgKTsKCQl0aGlzLl9zZXRIYW5kbGVDbGFzc05hbWUoKTsKCQl0aGlzLnJlZnJlc2hQb3NpdGlvbnMoKTsKCQlyZXR1cm4gdGhpczsKCX0sCgoJX2Nvbm5lY3RXaXRoOiBmdW5jdGlvbigpIHsKCQl2YXIgb3B0aW9ucyA9IHRoaXMub3B0aW9uczsKCQlyZXR1cm4gb3B0aW9ucy5jb25uZWN0V2l0aC5jb25zdHJ1Y3RvciA9PT0gU3RyaW5nID8KCQkJWyBvcHRpb25zLmNvbm5lY3RXaXRoIF0gOgoJCQlvcHRpb25zLmNvbm5lY3RXaXRoOwoJfSwKCglfZ2V0SXRlbXNBc2pRdWVyeTogZnVuY3Rpb24oIGNvbm5lY3RlZCApIHsKCgkJdmFyIGksIGosIGN1ciwgaW5zdCwKCQkJaXRlbXMgPSBbXSwKCQkJcXVlcmllcyA9IFtdLAoJCQljb25uZWN0V2l0aCA9IHRoaXMuX2Nvbm5lY3RXaXRoKCk7CgoJCWlmICggY29ubmVjdFdpdGggJiYgY29ubmVjdGVkICkgewoJCQlmb3IgKCBpID0gY29ubmVjdFdpdGgubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0gKSB7CgkJCQljdXIgPSAkKCBjb25uZWN0V2l0aFsgaSBdLCB0aGlzLmRvY3VtZW50WyAwIF0gKTsKCQkJCWZvciAoIGogPSBjdXIubGVuZ3RoIC0gMTsgaiA+PSAwOyBqLS0gKSB7CgkJCQkJaW5zdCA9ICQuZGF0YSggY3VyWyBqIF0sIHRoaXMud2lkZ2V0RnVsbE5hbWUgKTsKCQkJCQlpZiAoIGluc3QgJiYgaW5zdCAhPT0gdGhpcyAmJiAhaW5zdC5vcHRpb25zLmRpc2FibGVkICkgewoJCQkJCQlxdWVyaWVzLnB1c2goIFsgJC5pc0Z1bmN0aW9uKCBpbnN0Lm9wdGlvbnMuaXRlbXMgKSA/CgkJCQkJCQlpbnN0Lm9wdGlvbnMuaXRlbXMuY2FsbCggaW5zdC5lbGVtZW50ICkgOgoJCQkJCQkJJCggaW5zdC5vcHRpb25zLml0ZW1zLCBpbnN0LmVsZW1lbnQgKQoJCQkJCQkJCS5ub3QoICIudWktc29ydGFibGUtaGVscGVyIiApCgkJCQkJCQkJLm5vdCggIi51aS1zb3J0YWJsZS1wbGFjZWhvbGRlciIgKSwgaW5zdCBdICk7CgkJCQkJfQoJCQkJfQoJCQl9CgkJfQoKCQlxdWVyaWVzLnB1c2goIFsgJC5pc0Z1bmN0aW9uKCB0aGlzLm9wdGlvbnMuaXRlbXMgKSA/CgkJCXRoaXMub3B0aW9ucy5pdGVtcwoJCQkJLmNhbGwoIHRoaXMuZWxlbWVudCwgbnVsbCwgeyBvcHRpb25zOiB0aGlzLm9wdGlvbnMsIGl0ZW06IHRoaXMuY3VycmVudEl0ZW0gfSApIDoKCQkJJCggdGhpcy5vcHRpb25zLml0ZW1zLCB0aGlzLmVsZW1lbnQgKQoJCQkJLm5vdCggIi51aS1zb3J0YWJsZS1oZWxwZXIiICkKCQkJCS5ub3QoICIudWktc29ydGFibGUtcGxhY2Vob2xkZXIiICksIHRoaXMgXSApOwoKCQlmdW5jdGlvbiBhZGRJdGVtcygpIHsKCQkJaXRlbXMucHVzaCggdGhpcyApOwoJCX0KCQlmb3IgKCBpID0gcXVlcmllcy5sZW5ndGggLSAxOyBpID49IDA7IGktLSApIHsKCQkJcXVlcmllc1sgaSBdWyAwIF0uZWFjaCggYWRkSXRlbXMgKTsKCQl9CgoJCXJldHVybiAkKCBpdGVtcyApOwoKCX0sCgoJX3JlbW92ZUN1cnJlbnRzRnJvbUl0ZW1zOiBmdW5jdGlvbigpIHsKCgkJdmFyIGxpc3QgPSB0aGlzLmN1cnJlbnRJdGVtLmZpbmQoICI6ZGF0YSgiICsgdGhpcy53aWRnZXROYW1lICsgIi1pdGVtKSIgKTsKCgkJdGhpcy5pdGVtcyA9ICQuZ3JlcCggdGhpcy5pdGVtcywgZnVuY3Rpb24oIGl0ZW0gKSB7CgkJCWZvciAoIHZhciBqID0gMDsgaiA8IGxpc3QubGVuZ3RoOyBqKysgKSB7CgkJCQlpZiAoIGxpc3RbIGogXSA9PT0gaXRlbS5pdGVtWyAwIF0gKSB7CgkJCQkJcmV0dXJuIGZhbHNlOwoJCQkJfQoJCQl9CgkJCXJldHVybiB0cnVlOwoJCX0gKTsKCgl9LAoKCV9yZWZyZXNoSXRlbXM6IGZ1bmN0aW9uKCBldmVudCApIHsKCgkJdGhpcy5pdGVtcyA9IFtdOwoJCXRoaXMuY29udGFpbmVycyA9IFsgdGhpcyBdOwoKCQl2YXIgaSwgaiwgY3VyLCBpbnN0LCB0YXJnZXREYXRhLCBfcXVlcmllcywgaXRlbSwgcXVlcmllc0xlbmd0aCwKCQkJaXRlbXMgPSB0aGlzLml0ZW1zLAoJCQlxdWVyaWVzID0gWyBbICQuaXNGdW5jdGlvbiggdGhpcy5vcHRpb25zLml0ZW1zICkgPwoJCQkJdGhpcy5vcHRpb25zLml0ZW1zLmNhbGwoIHRoaXMuZWxlbWVudFsgMCBdLCBldmVudCwgeyBpdGVtOiB0aGlzLmN1cnJlbnRJdGVtIH0gKSA6CgkJCQkkKCB0aGlzLm9wdGlvbnMuaXRlbXMsIHRoaXMuZWxlbWVudCApLCB0aGlzIF0gXSwKCQkJY29ubmVjdFdpdGggPSB0aGlzLl9jb25uZWN0V2l0aCgpOwoKCQkvL1Nob3VsZG4ndCBiZSBydW4gdGhlIGZpcnN0IHRpbWUgdGhyb3VnaCBkdWUgdG8gbWFzc2l2ZSBzbG93LWRvd24KCQlpZiAoIGNvbm5lY3RXaXRoICYmIHRoaXMucmVhZHkgKSB7CgkJCWZvciAoIGkgPSBjb25uZWN0V2l0aC5sZW5ndGggLSAxOyBpID49IDA7IGktLSApIHsKCQkJCWN1ciA9ICQoIGNvbm5lY3RXaXRoWyBpIF0sIHRoaXMuZG9jdW1lbnRbIDAgXSApOwoJCQkJZm9yICggaiA9IGN1ci5sZW5ndGggLSAxOyBqID49IDA7IGotLSApIHsKCQkJCQlpbnN0ID0gJC5kYXRhKCBjdXJbIGogXSwgdGhpcy53aWRnZXRGdWxsTmFtZSApOwoJCQkJCWlmICggaW5zdCAmJiBpbnN0ICE9PSB0aGlzICYmICFpbnN0Lm9wdGlvbnMuZGlzYWJsZWQgKSB7CgkJCQkJCXF1ZXJpZXMucHVzaCggWyAkLmlzRnVuY3Rpb24oIGluc3Qub3B0aW9ucy5pdGVtcyApID8KCQkJCQkJCWluc3Qub3B0aW9ucy5pdGVtcwoJCQkJCQkJCS5jYWxsKCBpbnN0LmVsZW1lbnRbIDAgXSwgZXZlbnQsIHsgaXRlbTogdGhpcy5jdXJyZW50SXRlbSB9ICkgOgoJCQkJCQkJJCggaW5zdC5vcHRpb25zLml0ZW1zLCBpbnN0LmVsZW1lbnQgKSwgaW5zdCBdICk7CgkJCQkJCXRoaXMuY29udGFpbmVycy5wdXNoKCBpbnN0ICk7CgkJCQkJfQoJCQkJfQoJCQl9CgkJfQoKCQlmb3IgKCBpID0gcXVlcmllcy5sZW5ndGggLSAxOyBpID49IDA7IGktLSApIHsKCQkJdGFyZ2V0RGF0YSA9IHF1ZXJpZXNbIGkgXVsgMSBdOwoJCQlfcXVlcmllcyA9IHF1ZXJpZXNbIGkgXVsgMCBdOwoKCQkJZm9yICggaiA9IDAsIHF1ZXJpZXNMZW5ndGggPSBfcXVlcmllcy5sZW5ndGg7IGogPCBxdWVyaWVzTGVuZ3RoOyBqKysgKSB7CgkJCQlpdGVtID0gJCggX3F1ZXJpZXNbIGogXSApOwoKCQkJCS8vIERhdGEgZm9yIHRhcmdldCBjaGVja2luZyAobW91c2UgbWFuYWdlcikKCQkJCWl0ZW0uZGF0YSggdGhpcy53aWRnZXROYW1lICsgIi1pdGVtIiwgdGFyZ2V0RGF0YSApOwoKCQkJCWl0ZW1zLnB1c2goIHsKCQkJCQlpdGVtOiBpdGVtLAoJCQkJCWluc3RhbmNlOiB0YXJnZXREYXRhLAoJCQkJCXdpZHRoOiAwLCBoZWlnaHQ6IDAsCgkJCQkJbGVmdDogMCwgdG9wOiAwCgkJCQl9ICk7CgkJCX0KCQl9CgoJfSwKCglyZWZyZXNoUG9zaXRpb25zOiBmdW5jdGlvbiggZmFzdCApIHsKCgkJLy8gRGV0ZXJtaW5lIHdoZXRoZXIgaXRlbXMgYXJlIGJlaW5nIGRpc3BsYXllZCBob3Jpem9udGFsbHkKCQl0aGlzLmZsb2F0aW5nID0gdGhpcy5pdGVtcy5sZW5ndGggPwoJCQl0aGlzLm9wdGlvbnMuYXhpcyA9PT0gIngiIHx8IHRoaXMuX2lzRmxvYXRpbmcoIHRoaXMuaXRlbXNbIDAgXS5pdGVtICkgOgoJCQlmYWxzZTsKCgkJLy9UaGlzIGhhcyB0byBiZSByZWRvbmUgYmVjYXVzZSBkdWUgdG8gdGhlIGl0ZW0gYmVpbmcgbW92ZWQgb3V0L2ludG8gdGhlIG9mZnNldFBhcmVudCwKCQkvLyB0aGUgb2Zmc2V0UGFyZW50J3MgcG9zaXRpb24gd2lsbCBjaGFuZ2UKCQlpZiAoIHRoaXMub2Zmc2V0UGFyZW50ICYmIHRoaXMuaGVscGVyICkgewoJCQl0aGlzLm9mZnNldC5wYXJlbnQgPSB0aGlzLl9nZXRQYXJlbnRPZmZzZXQoKTsKCQl9CgoJCXZhciBpLCBpdGVtLCB0LCBwOwoKCQlmb3IgKCBpID0gdGhpcy5pdGVtcy5sZW5ndGggLSAxOyBpID49IDA7IGktLSApIHsKCQkJaXRlbSA9IHRoaXMuaXRlbXNbIGkgXTsKCgkJCS8vV2UgaWdub3JlIGNhbGN1bGF0aW5nIHBvc2l0aW9ucyBvZiBhbGwgY29ubmVjdGVkIGNvbnRhaW5lcnMgd2hlbiB3ZSdyZSBub3Qgb3ZlciB0aGVtCgkJCWlmICggaXRlbS5pbnN0YW5jZSAhPT0gdGhpcy5jdXJyZW50Q29udGFpbmVyICYmIHRoaXMuY3VycmVudENvbnRhaW5lciAmJgoJCQkJCWl0ZW0uaXRlbVsgMCBdICE9PSB0aGlzLmN1cnJlbnRJdGVtWyAwIF0gKSB7CgkJCQljb250aW51ZTsKCQkJfQoKCQkJdCA9IHRoaXMub3B0aW9ucy50b2xlcmFuY2VFbGVtZW50ID8KCQkJCSQoIHRoaXMub3B0aW9ucy50b2xlcmFuY2VFbGVtZW50LCBpdGVtLml0ZW0gKSA6CgkJCQlpdGVtLml0ZW07CgoJCQlpZiAoICFmYXN0ICkgewoJCQkJaXRlbS53aWR0aCA9IHQub3V0ZXJXaWR0aCgpOwoJCQkJaXRlbS5oZWlnaHQgPSB0Lm91dGVySGVpZ2h0KCk7CgkJCX0KCgkJCXAgPSB0Lm9mZnNldCgpOwoJCQlpdGVtLmxlZnQgPSBwLmxlZnQ7CgkJCWl0ZW0udG9wID0gcC50b3A7CgkJfQoKCQlpZiAoIHRoaXMub3B0aW9ucy5jdXN0b20gJiYgdGhpcy5vcHRpb25zLmN1c3RvbS5yZWZyZXNoQ29udGFpbmVycyApIHsKCQkJdGhpcy5vcHRpb25zLmN1c3RvbS5yZWZyZXNoQ29udGFpbmVycy5jYWxsKCB0aGlzICk7CgkJfSBlbHNlIHsKCQkJZm9yICggaSA9IHRoaXMuY29udGFpbmVycy5sZW5ndGggLSAxOyBpID49IDA7IGktLSApIHsKCQkJCXAgPSB0aGlzLmNvbnRhaW5lcnNbIGkgXS5lbGVtZW50Lm9mZnNldCgpOwoJCQkJdGhpcy5jb250YWluZXJzWyBpIF0uY29udGFpbmVyQ2FjaGUubGVmdCA9IHAubGVmdDsKCQkJCXRoaXMuY29udGFpbmVyc1sgaSBdLmNvbnRhaW5lckNhY2hlLnRvcCA9IHAudG9wOwoJCQkJdGhpcy5jb250YWluZXJzWyBpIF0uY29udGFpbmVyQ2FjaGUud2lkdGggPQoJCQkJCXRoaXMuY29udGFpbmVyc1sgaSBdLmVsZW1lbnQub3V0ZXJXaWR0aCgpOwoJCQkJdGhpcy5jb250YWluZXJzWyBpIF0uY29udGFpbmVyQ2FjaGUuaGVpZ2h0ID0KCQkJCQl0aGlzLmNvbnRhaW5lcnNbIGkgXS5lbGVtZW50Lm91dGVySGVpZ2h0KCk7CgkJCX0KCQl9CgoJCXJldHVybiB0aGlzOwoJfSwKCglfY3JlYXRlUGxhY2Vob2xkZXI6IGZ1bmN0aW9uKCB0aGF0ICkgewoJCXRoYXQgPSB0aGF0IHx8IHRoaXM7CgkJdmFyIGNsYXNzTmFtZSwKCQkJbyA9IHRoYXQub3B0aW9uczsKCgkJaWYgKCAhby5wbGFjZWhvbGRlciB8fCBvLnBsYWNlaG9sZGVyLmNvbnN0cnVjdG9yID09PSBTdHJpbmcgKSB7CgkJCWNsYXNzTmFtZSA9IG8ucGxhY2Vob2xkZXI7CgkJCW8ucGxhY2Vob2xkZXIgPSB7CgkJCQllbGVtZW50OiBmdW5jdGlvbigpIHsKCgkJCQkJdmFyIG5vZGVOYW1lID0gdGhhdC5jdXJyZW50SXRlbVsgMCBdLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCksCgkJCQkJCWVsZW1lbnQgPSAkKCAiPCIgKyBub2RlTmFtZSArICI+IiwgdGhhdC5kb2N1bWVudFsgMCBdICk7CgoJCQkJCQl0aGF0Ll9hZGRDbGFzcyggZWxlbWVudCwgInVpLXNvcnRhYmxlLXBsYWNlaG9sZGVyIiwKCQkJCQkJCQljbGFzc05hbWUgfHwgdGhhdC5jdXJyZW50SXRlbVsgMCBdLmNsYXNzTmFtZSApCgkJCQkJCQkuX3JlbW92ZUNsYXNzKCBlbGVtZW50LCAidWktc29ydGFibGUtaGVscGVyIiApOwoKCQkJCQlpZiAoIG5vZGVOYW1lID09PSAidGJvZHkiICkgewoJCQkJCQl0aGF0Ll9jcmVhdGVUclBsYWNlaG9sZGVyKAoJCQkJCQkJdGhhdC5jdXJyZW50SXRlbS5maW5kKCAidHIiICkuZXEoIDAgKSwKCQkJCQkJCSQoICI8dHI+IiwgdGhhdC5kb2N1bWVudFsgMCBdICkuYXBwZW5kVG8oIGVsZW1lbnQgKQoJCQkJCQkpOwoJCQkJCX0gZWxzZSBpZiAoIG5vZGVOYW1lID09PSAidHIiICkgewoJCQkJCQl0aGF0Ll9jcmVhdGVUclBsYWNlaG9sZGVyKCB0aGF0LmN1cnJlbnRJdGVtLCBlbGVtZW50ICk7CgkJCQkJfSBlbHNlIGlmICggbm9kZU5hbWUgPT09ICJpbWciICkgewoJCQkJCQllbGVtZW50LmF0dHIoICJzcmMiLCB0aGF0LmN1cnJlbnRJdGVtLmF0dHIoICJzcmMiICkgKTsKCQkJCQl9CgoJCQkJCWlmICggIWNsYXNzTmFtZSApIHsKCQkJCQkJZWxlbWVudC5jc3MoICJ2aXNpYmlsaXR5IiwgImhpZGRlbiIgKTsKCQkJCQl9CgoJCQkJCXJldHVybiBlbGVtZW50OwoJCQkJfSwKCQkJCXVwZGF0ZTogZnVuY3Rpb24oIGNvbnRhaW5lciwgcCApIHsKCgkJCQkJLy8gMS4gSWYgYSBjbGFzc05hbWUgaXMgc2V0IGFzICdwbGFjZWhvbGRlciBvcHRpb24sIHdlIGRvbid0IGZvcmNlIHNpemVzIC0KCQkJCQkvLyB0aGUgY2xhc3MgaXMgcmVzcG9uc2libGUgZm9yIHRoYXQKCQkJCQkvLyAyLiBUaGUgb3B0aW9uICdmb3JjZVBsYWNlaG9sZGVyU2l6ZSBjYW4gYmUgZW5hYmxlZCB0byBmb3JjZSBpdCBldmVuIGlmIGEKCQkJCQkvLyBjbGFzcyBuYW1lIGlzIHNwZWNpZmllZAoJCQkJCWlmICggY2xhc3NOYW1lICYmICFvLmZvcmNlUGxhY2Vob2xkZXJTaXplICkgewoJCQkJCQlyZXR1cm47CgkJCQkJfQoKCQkJCQkvL0lmIHRoZSBlbGVtZW50IGRvZXNuJ3QgaGF2ZSBhIGFjdHVhbCBoZWlnaHQgYnkgaXRzZWxmICh3aXRob3V0IHN0eWxlcyBjb21pbmcKCQkJCQkvLyBmcm9tIGEgc3R5bGVzaGVldCksIGl0IHJlY2VpdmVzIHRoZSBpbmxpbmUgaGVpZ2h0IGZyb20gdGhlIGRyYWdnZWQgaXRlbQoJCQkJCWlmICggIXAuaGVpZ2h0KCkgKSB7CgkJCQkJCXAuaGVpZ2h0KAoJCQkJCQkJdGhhdC5jdXJyZW50SXRlbS5pbm5lckhlaWdodCgpIC0KCQkJCQkJCXBhcnNlSW50KCB0aGF0LmN1cnJlbnRJdGVtLmNzcyggInBhZGRpbmdUb3AiICkgfHwgMCwgMTAgKSAtCgkJCQkJCQlwYXJzZUludCggdGhhdC5jdXJyZW50SXRlbS5jc3MoICJwYWRkaW5nQm90dG9tIiApIHx8IDAsIDEwICkgKTsKCQkJCQl9CgkJCQkJaWYgKCAhcC53aWR0aCgpICkgewoJCQkJCQlwLndpZHRoKAoJCQkJCQkJdGhhdC5jdXJyZW50SXRlbS5pbm5lcldpZHRoKCkgLQoJCQkJCQkJcGFyc2VJbnQoIHRoYXQuY3VycmVudEl0ZW0uY3NzKCAicGFkZGluZ0xlZnQiICkgfHwgMCwgMTAgKSAtCgkJCQkJCQlwYXJzZUludCggdGhhdC5jdXJyZW50SXRlbS5jc3MoICJwYWRkaW5nUmlnaHQiICkgfHwgMCwgMTAgKSApOwoJCQkJCX0KCQkJCX0KCQkJfTsKCQl9CgoJCS8vQ3JlYXRlIHRoZSBwbGFjZWhvbGRlcgoJCXRoYXQucGxhY2Vob2xkZXIgPSAkKCBvLnBsYWNlaG9sZGVyLmVsZW1lbnQuY2FsbCggdGhhdC5lbGVtZW50LCB0aGF0LmN1cnJlbnRJdGVtICkgKTsKCgkJLy9BcHBlbmQgaXQgYWZ0ZXIgdGhlIGFjdHVhbCBjdXJyZW50IGl0ZW0KCQl0aGF0LmN1cnJlbnRJdGVtLmFmdGVyKCB0aGF0LnBsYWNlaG9sZGVyICk7CgoJCS8vVXBkYXRlIHRoZSBzaXplIG9mIHRoZSBwbGFjZWhvbGRlciAoVE9ETzogTG9naWMgdG8gZnV6enksIHNlZSBsaW5lIDMxNi8zMTcpCgkJby5wbGFjZWhvbGRlci51cGRhdGUoIHRoYXQsIHRoYXQucGxhY2Vob2xkZXIgKTsKCgl9LAoKCV9jcmVhdGVUclBsYWNlaG9sZGVyOiBmdW5jdGlvbiggc291cmNlVHIsIHRhcmdldFRyICkgewoJCXZhciB0aGF0ID0gdGhpczsKCgkJc291cmNlVHIuY2hpbGRyZW4oKS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJJCggIjx0ZD4mIzE2MDs8L3RkPiIsIHRoYXQuZG9jdW1lbnRbIDAgXSApCgkJCQkuYXR0ciggImNvbHNwYW4iLCAkKCB0aGlzICkuYXR0ciggImNvbHNwYW4iICkgfHwgMSApCgkJCQkuYXBwZW5kVG8oIHRhcmdldFRyICk7CgkJfSApOwoJfSwKCglfY29udGFjdENvbnRhaW5lcnM6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgaSwgaiwgZGlzdCwgaXRlbVdpdGhMZWFzdERpc3RhbmNlLCBwb3NQcm9wZXJ0eSwgc2l6ZVByb3BlcnR5LCBjdXIsIG5lYXJCb3R0b20sCgkJCWZsb2F0aW5nLCBheGlzLAoJCQlpbm5lcm1vc3RDb250YWluZXIgPSBudWxsLAoJCQlpbm5lcm1vc3RJbmRleCA9IG51bGw7CgoJCS8vIEdldCBpbm5lcm1vc3QgY29udGFpbmVyIHRoYXQgaW50ZXJzZWN0cyB3aXRoIGl0ZW0KCQlmb3IgKCBpID0gdGhpcy5jb250YWluZXJzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tICkgewoKCQkJLy8gTmV2ZXIgY29uc2lkZXIgYSBjb250YWluZXIgdGhhdCdzIGxvY2F0ZWQgd2l0aGluIHRoZSBpdGVtIGl0c2VsZgoJCQlpZiAoICQuY29udGFpbnMoIHRoaXMuY3VycmVudEl0ZW1bIDAgXSwgdGhpcy5jb250YWluZXJzWyBpIF0uZWxlbWVudFsgMCBdICkgKSB7CgkJCQljb250aW51ZTsKCQkJfQoKCQkJaWYgKCB0aGlzLl9pbnRlcnNlY3RzV2l0aCggdGhpcy5jb250YWluZXJzWyBpIF0uY29udGFpbmVyQ2FjaGUgKSApIHsKCgkJCQkvLyBJZiB3ZSd2ZSBhbHJlYWR5IGZvdW5kIGEgY29udGFpbmVyIGFuZCBpdCdzIG1vcmUgImlubmVyIiB0aGFuIHRoaXMsIHRoZW4gY29udGludWUKCQkJCWlmICggaW5uZXJtb3N0Q29udGFpbmVyICYmCgkJCQkJCSQuY29udGFpbnMoCgkJCQkJCQl0aGlzLmNvbnRhaW5lcnNbIGkgXS5lbGVtZW50WyAwIF0sCgkJCQkJCQlpbm5lcm1vc3RDb250YWluZXIuZWxlbWVudFsgMCBdICkgKSB7CgkJCQkJY29udGludWU7CgkJCQl9CgoJCQkJaW5uZXJtb3N0Q29udGFpbmVyID0gdGhpcy5jb250YWluZXJzWyBpIF07CgkJCQlpbm5lcm1vc3RJbmRleCA9IGk7CgoJCQl9IGVsc2UgewoKCQkJCS8vIGNvbnRhaW5lciBkb2Vzbid0IGludGVyc2VjdC4gdHJpZ2dlciAib3V0IiBldmVudCBpZiBuZWNlc3NhcnkKCQkJCWlmICggdGhpcy5jb250YWluZXJzWyBpIF0uY29udGFpbmVyQ2FjaGUub3ZlciApIHsKCQkJCQl0aGlzLmNvbnRhaW5lcnNbIGkgXS5fdHJpZ2dlciggIm91dCIsIGV2ZW50LCB0aGlzLl91aUhhc2goIHRoaXMgKSApOwoJCQkJCXRoaXMuY29udGFpbmVyc1sgaSBdLmNvbnRhaW5lckNhY2hlLm92ZXIgPSAwOwoJCQkJfQoJCQl9CgoJCX0KCgkJLy8gSWYgbm8gaW50ZXJzZWN0aW5nIGNvbnRhaW5lcnMgZm91bmQsIHJldHVybgoJCWlmICggIWlubmVybW9zdENvbnRhaW5lciApIHsKCQkJcmV0dXJuOwoJCX0KCgkJLy8gTW92ZSB0aGUgaXRlbSBpbnRvIHRoZSBjb250YWluZXIgaWYgaXQncyBub3QgdGhlcmUgYWxyZWFkeQoJCWlmICggdGhpcy5jb250YWluZXJzLmxlbmd0aCA9PT0gMSApIHsKCQkJaWYgKCAhdGhpcy5jb250YWluZXJzWyBpbm5lcm1vc3RJbmRleCBdLmNvbnRhaW5lckNhY2hlLm92ZXIgKSB7CgkJCQl0aGlzLmNvbnRhaW5lcnNbIGlubmVybW9zdEluZGV4IF0uX3RyaWdnZXIoICJvdmVyIiwgZXZlbnQsIHRoaXMuX3VpSGFzaCggdGhpcyApICk7CgkJCQl0aGlzLmNvbnRhaW5lcnNbIGlubmVybW9zdEluZGV4IF0uY29udGFpbmVyQ2FjaGUub3ZlciA9IDE7CgkJCX0KCQl9IGVsc2UgewoKCQkJLy8gV2hlbiBlbnRlcmluZyBhIG5ldyBjb250YWluZXIsIHdlIHdpbGwgZmluZCB0aGUgaXRlbSB3aXRoIHRoZSBsZWFzdCBkaXN0YW5jZSBhbmQKCQkJLy8gYXBwZW5kIG91ciBpdGVtIG5lYXIgaXQKCQkJZGlzdCA9IDEwMDAwOwoJCQlpdGVtV2l0aExlYXN0RGlzdGFuY2UgPSBudWxsOwoJCQlmbG9hdGluZyA9IGlubmVybW9zdENvbnRhaW5lci5mbG9hdGluZyB8fCB0aGlzLl9pc0Zsb2F0aW5nKCB0aGlzLmN1cnJlbnRJdGVtICk7CgkJCXBvc1Byb3BlcnR5ID0gZmxvYXRpbmcgPyAibGVmdCIgOiAidG9wIjsKCQkJc2l6ZVByb3BlcnR5ID0gZmxvYXRpbmcgPyAid2lkdGgiIDogImhlaWdodCI7CgkJCWF4aXMgPSBmbG9hdGluZyA/ICJwYWdlWCIgOiAicGFnZVkiOwoKCQkJZm9yICggaiA9IHRoaXMuaXRlbXMubGVuZ3RoIC0gMTsgaiA+PSAwOyBqLS0gKSB7CgkJCQlpZiAoICEkLmNvbnRhaW5zKAoJCQkJCQl0aGlzLmNvbnRhaW5lcnNbIGlubmVybW9zdEluZGV4IF0uZWxlbWVudFsgMCBdLCB0aGlzLml0ZW1zWyBqIF0uaXRlbVsgMCBdICkKCQkJCSkgewoJCQkJCWNvbnRpbnVlOwoJCQkJfQoJCQkJaWYgKCB0aGlzLml0ZW1zWyBqIF0uaXRlbVsgMCBdID09PSB0aGlzLmN1cnJlbnRJdGVtWyAwIF0gKSB7CgkJCQkJY29udGludWU7CgkJCQl9CgoJCQkJY3VyID0gdGhpcy5pdGVtc1sgaiBdLml0ZW0ub2Zmc2V0KClbIHBvc1Byb3BlcnR5IF07CgkJCQluZWFyQm90dG9tID0gZmFsc2U7CgkJCQlpZiAoIGV2ZW50WyBheGlzIF0gLSBjdXIgPiB0aGlzLml0ZW1zWyBqIF1bIHNpemVQcm9wZXJ0eSBdIC8gMiApIHsKCQkJCQluZWFyQm90dG9tID0gdHJ1ZTsKCQkJCX0KCgkJCQlpZiAoIE1hdGguYWJzKCBldmVudFsgYXhpcyBdIC0gY3VyICkgPCBkaXN0ICkgewoJCQkJCWRpc3QgPSBNYXRoLmFicyggZXZlbnRbIGF4aXMgXSAtIGN1ciApOwoJCQkJCWl0ZW1XaXRoTGVhc3REaXN0YW5jZSA9IHRoaXMuaXRlbXNbIGogXTsKCQkJCQl0aGlzLmRpcmVjdGlvbiA9IG5lYXJCb3R0b20gPyAidXAiIDogImRvd24iOwoJCQkJfQoJCQl9CgoJCQkvL0NoZWNrIGlmIGRyb3BPbkVtcHR5IGlzIGVuYWJsZWQKCQkJaWYgKCAhaXRlbVdpdGhMZWFzdERpc3RhbmNlICYmICF0aGlzLm9wdGlvbnMuZHJvcE9uRW1wdHkgKSB7CgkJCQlyZXR1cm47CgkJCX0KCgkJCWlmICggdGhpcy5jdXJyZW50Q29udGFpbmVyID09PSB0aGlzLmNvbnRhaW5lcnNbIGlubmVybW9zdEluZGV4IF0gKSB7CgkJCQlpZiAoICF0aGlzLmN1cnJlbnRDb250YWluZXIuY29udGFpbmVyQ2FjaGUub3ZlciApIHsKCQkJCQl0aGlzLmNvbnRhaW5lcnNbIGlubmVybW9zdEluZGV4IF0uX3RyaWdnZXIoICJvdmVyIiwgZXZlbnQsIHRoaXMuX3VpSGFzaCgpICk7CgkJCQkJdGhpcy5jdXJyZW50Q29udGFpbmVyLmNvbnRhaW5lckNhY2hlLm92ZXIgPSAxOwoJCQkJfQoJCQkJcmV0dXJuOwoJCQl9CgoJCQlpdGVtV2l0aExlYXN0RGlzdGFuY2UgPwoJCQkJdGhpcy5fcmVhcnJhbmdlKCBldmVudCwgaXRlbVdpdGhMZWFzdERpc3RhbmNlLCBudWxsLCB0cnVlICkgOgoJCQkJdGhpcy5fcmVhcnJhbmdlKCBldmVudCwgbnVsbCwgdGhpcy5jb250YWluZXJzWyBpbm5lcm1vc3RJbmRleCBdLmVsZW1lbnQsIHRydWUgKTsKCQkJdGhpcy5fdHJpZ2dlciggImNoYW5nZSIsIGV2ZW50LCB0aGlzLl91aUhhc2goKSApOwoJCQl0aGlzLmNvbnRhaW5lcnNbIGlubmVybW9zdEluZGV4IF0uX3RyaWdnZXIoICJjaGFuZ2UiLCBldmVudCwgdGhpcy5fdWlIYXNoKCB0aGlzICkgKTsKCQkJdGhpcy5jdXJyZW50Q29udGFpbmVyID0gdGhpcy5jb250YWluZXJzWyBpbm5lcm1vc3RJbmRleCBdOwoKCQkJLy9VcGRhdGUgdGhlIHBsYWNlaG9sZGVyCgkJCXRoaXMub3B0aW9ucy5wbGFjZWhvbGRlci51cGRhdGUoIHRoaXMuY3VycmVudENvbnRhaW5lciwgdGhpcy5wbGFjZWhvbGRlciApOwoKCQkJdGhpcy5jb250YWluZXJzWyBpbm5lcm1vc3RJbmRleCBdLl90cmlnZ2VyKCAib3ZlciIsIGV2ZW50LCB0aGlzLl91aUhhc2goIHRoaXMgKSApOwoJCQl0aGlzLmNvbnRhaW5lcnNbIGlubmVybW9zdEluZGV4IF0uY29udGFpbmVyQ2FjaGUub3ZlciA9IDE7CgkJfQoKCX0sCgoJX2NyZWF0ZUhlbHBlcjogZnVuY3Rpb24oIGV2ZW50ICkgewoKCQl2YXIgbyA9IHRoaXMub3B0aW9ucywKCQkJaGVscGVyID0gJC5pc0Z1bmN0aW9uKCBvLmhlbHBlciApID8KCQkJCSQoIG8uaGVscGVyLmFwcGx5KCB0aGlzLmVsZW1lbnRbIDAgXSwgWyBldmVudCwgdGhpcy5jdXJyZW50SXRlbSBdICkgKSA6CgkJCQkoIG8uaGVscGVyID09PSAiY2xvbmUiID8gdGhpcy5jdXJyZW50SXRlbS5jbG9uZSgpIDogdGhpcy5jdXJyZW50SXRlbSApOwoKCQkvL0FkZCB0aGUgaGVscGVyIHRvIHRoZSBET00gaWYgdGhhdCBkaWRuJ3QgaGFwcGVuIGFscmVhZHkKCQlpZiAoICFoZWxwZXIucGFyZW50cyggImJvZHkiICkubGVuZ3RoICkgewoJCQkkKCBvLmFwcGVuZFRvICE9PSAicGFyZW50IiA/CgkJCQlvLmFwcGVuZFRvIDoKCQkJCXRoaXMuY3VycmVudEl0ZW1bIDAgXS5wYXJlbnROb2RlIClbIDAgXS5hcHBlbmRDaGlsZCggaGVscGVyWyAwIF0gKTsKCQl9CgoJCWlmICggaGVscGVyWyAwIF0gPT09IHRoaXMuY3VycmVudEl0ZW1bIDAgXSApIHsKCQkJdGhpcy5fc3RvcmVkQ1NTID0gewoJCQkJd2lkdGg6IHRoaXMuY3VycmVudEl0ZW1bIDAgXS5zdHlsZS53aWR0aCwKCQkJCWhlaWdodDogdGhpcy5jdXJyZW50SXRlbVsgMCBdLnN0eWxlLmhlaWdodCwKCQkJCXBvc2l0aW9uOiB0aGlzLmN1cnJlbnRJdGVtLmNzcyggInBvc2l0aW9uIiApLAoJCQkJdG9wOiB0aGlzLmN1cnJlbnRJdGVtLmNzcyggInRvcCIgKSwKCQkJCWxlZnQ6IHRoaXMuY3VycmVudEl0ZW0uY3NzKCAibGVmdCIgKQoJCQl9OwoJCX0KCgkJaWYgKCAhaGVscGVyWyAwIF0uc3R5bGUud2lkdGggfHwgby5mb3JjZUhlbHBlclNpemUgKSB7CgkJCWhlbHBlci53aWR0aCggdGhpcy5jdXJyZW50SXRlbS53aWR0aCgpICk7CgkJfQoJCWlmICggIWhlbHBlclsgMCBdLnN0eWxlLmhlaWdodCB8fCBvLmZvcmNlSGVscGVyU2l6ZSApIHsKCQkJaGVscGVyLmhlaWdodCggdGhpcy5jdXJyZW50SXRlbS5oZWlnaHQoKSApOwoJCX0KCgkJcmV0dXJuIGhlbHBlcjsKCgl9LAoKCV9hZGp1c3RPZmZzZXRGcm9tSGVscGVyOiBmdW5jdGlvbiggb2JqICkgewoJCWlmICggdHlwZW9mIG9iaiA9PT0gInN0cmluZyIgKSB7CgkJCW9iaiA9IG9iai5zcGxpdCggIiAiICk7CgkJfQoJCWlmICggJC5pc0FycmF5KCBvYmogKSApIHsKCQkJb2JqID0geyBsZWZ0OiArb2JqWyAwIF0sIHRvcDogK29ialsgMSBdIHx8IDAgfTsKCQl9CgkJaWYgKCAibGVmdCIgaW4gb2JqICkgewoJCQl0aGlzLm9mZnNldC5jbGljay5sZWZ0ID0gb2JqLmxlZnQgKyB0aGlzLm1hcmdpbnMubGVmdDsKCQl9CgkJaWYgKCAicmlnaHQiIGluIG9iaiApIHsKCQkJdGhpcy5vZmZzZXQuY2xpY2subGVmdCA9IHRoaXMuaGVscGVyUHJvcG9ydGlvbnMud2lkdGggLSBvYmoucmlnaHQgKyB0aGlzLm1hcmdpbnMubGVmdDsKCQl9CgkJaWYgKCAidG9wIiBpbiBvYmogKSB7CgkJCXRoaXMub2Zmc2V0LmNsaWNrLnRvcCA9IG9iai50b3AgKyB0aGlzLm1hcmdpbnMudG9wOwoJCX0KCQlpZiAoICJib3R0b20iIGluIG9iaiApIHsKCQkJdGhpcy5vZmZzZXQuY2xpY2sudG9wID0gdGhpcy5oZWxwZXJQcm9wb3J0aW9ucy5oZWlnaHQgLSBvYmouYm90dG9tICsgdGhpcy5tYXJnaW5zLnRvcDsKCQl9Cgl9LAoKCV9nZXRQYXJlbnRPZmZzZXQ6IGZ1bmN0aW9uKCkgewoKCQkvL0dldCB0aGUgb2Zmc2V0UGFyZW50IGFuZCBjYWNoZSBpdHMgcG9zaXRpb24KCQl0aGlzLm9mZnNldFBhcmVudCA9IHRoaXMuaGVscGVyLm9mZnNldFBhcmVudCgpOwoJCXZhciBwbyA9IHRoaXMub2Zmc2V0UGFyZW50Lm9mZnNldCgpOwoKCQkvLyBUaGlzIGlzIGEgc3BlY2lhbCBjYXNlIHdoZXJlIHdlIG5lZWQgdG8gbW9kaWZ5IGEgb2Zmc2V0IGNhbGN1bGF0ZWQgb24gc3RhcnQsIHNpbmNlIHRoZQoJCS8vIGZvbGxvd2luZyBoYXBwZW5lZDoKCQkvLyAxLiBUaGUgcG9zaXRpb24gb2YgdGhlIGhlbHBlciBpcyBhYnNvbHV0ZSwgc28gaXQncyBwb3NpdGlvbiBpcyBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZQoJCS8vIG5leHQgcG9zaXRpb25lZCBwYXJlbnQKCQkvLyAyLiBUaGUgYWN0dWFsIG9mZnNldCBwYXJlbnQgaXMgYSBjaGlsZCBvZiB0aGUgc2Nyb2xsIHBhcmVudCwgYW5kIHRoZSBzY3JvbGwgcGFyZW50IGlzbid0CgkJLy8gdGhlIGRvY3VtZW50LCB3aGljaCBtZWFucyB0aGF0IHRoZSBzY3JvbGwgaXMgaW5jbHVkZWQgaW4gdGhlIGluaXRpYWwgY2FsY3VsYXRpb24gb2YgdGhlCgkJLy8gb2Zmc2V0IG9mIHRoZSBwYXJlbnQsIGFuZCBuZXZlciByZWNhbGN1bGF0ZWQgdXBvbiBkcmFnCgkJaWYgKCB0aGlzLmNzc1Bvc2l0aW9uID09PSAiYWJzb2x1dGUiICYmIHRoaXMuc2Nyb2xsUGFyZW50WyAwIF0gIT09IHRoaXMuZG9jdW1lbnRbIDAgXSAmJgoJCQkJJC5jb250YWlucyggdGhpcy5zY3JvbGxQYXJlbnRbIDAgXSwgdGhpcy5vZmZzZXRQYXJlbnRbIDAgXSApICkgewoJCQlwby5sZWZ0ICs9IHRoaXMuc2Nyb2xsUGFyZW50LnNjcm9sbExlZnQoKTsKCQkJcG8udG9wICs9IHRoaXMuc2Nyb2xsUGFyZW50LnNjcm9sbFRvcCgpOwoJCX0KCgkJLy8gVGhpcyBuZWVkcyB0byBiZSBhY3R1YWxseSBkb25lIGZvciBhbGwgYnJvd3NlcnMsIHNpbmNlIHBhZ2VYL3BhZ2VZIGluY2x1ZGVzIHRoaXMKCQkvLyBpbmZvcm1hdGlvbiB3aXRoIGFuIHVnbHkgSUUgZml4CgkJaWYgKCB0aGlzLm9mZnNldFBhcmVudFsgMCBdID09PSB0aGlzLmRvY3VtZW50WyAwIF0uYm9keSB8fAoJCQkJKCB0aGlzLm9mZnNldFBhcmVudFsgMCBdLnRhZ05hbWUgJiYKCQkJCXRoaXMub2Zmc2V0UGFyZW50WyAwIF0udGFnTmFtZS50b0xvd2VyQ2FzZSgpID09PSAiaHRtbCIgJiYgJC51aS5pZSApICkgewoJCQlwbyA9IHsgdG9wOiAwLCBsZWZ0OiAwIH07CgkJfQoKCQlyZXR1cm4gewoJCQl0b3A6IHBvLnRvcCArICggcGFyc2VJbnQoIHRoaXMub2Zmc2V0UGFyZW50LmNzcyggImJvcmRlclRvcFdpZHRoIiApLCAxMCApIHx8IDAgKSwKCQkJbGVmdDogcG8ubGVmdCArICggcGFyc2VJbnQoIHRoaXMub2Zmc2V0UGFyZW50LmNzcyggImJvcmRlckxlZnRXaWR0aCIgKSwgMTAgKSB8fCAwICkKCQl9OwoKCX0sCgoJX2dldFJlbGF0aXZlT2Zmc2V0OiBmdW5jdGlvbigpIHsKCgkJaWYgKCB0aGlzLmNzc1Bvc2l0aW9uID09PSAicmVsYXRpdmUiICkgewoJCQl2YXIgcCA9IHRoaXMuY3VycmVudEl0ZW0ucG9zaXRpb24oKTsKCQkJcmV0dXJuIHsKCQkJCXRvcDogcC50b3AgLSAoIHBhcnNlSW50KCB0aGlzLmhlbHBlci5jc3MoICJ0b3AiICksIDEwICkgfHwgMCApICsKCQkJCQl0aGlzLnNjcm9sbFBhcmVudC5zY3JvbGxUb3AoKSwKCQkJCWxlZnQ6IHAubGVmdCAtICggcGFyc2VJbnQoIHRoaXMuaGVscGVyLmNzcyggImxlZnQiICksIDEwICkgfHwgMCApICsKCQkJCQl0aGlzLnNjcm9sbFBhcmVudC5zY3JvbGxMZWZ0KCkKCQkJfTsKCQl9IGVsc2UgewoJCQlyZXR1cm4geyB0b3A6IDAsIGxlZnQ6IDAgfTsKCQl9CgoJfSwKCglfY2FjaGVNYXJnaW5zOiBmdW5jdGlvbigpIHsKCQl0aGlzLm1hcmdpbnMgPSB7CgkJCWxlZnQ6ICggcGFyc2VJbnQoIHRoaXMuY3VycmVudEl0ZW0uY3NzKCAibWFyZ2luTGVmdCIgKSwgMTAgKSB8fCAwICksCgkJCXRvcDogKCBwYXJzZUludCggdGhpcy5jdXJyZW50SXRlbS5jc3MoICJtYXJnaW5Ub3AiICksIDEwICkgfHwgMCApCgkJfTsKCX0sCgoJX2NhY2hlSGVscGVyUHJvcG9ydGlvbnM6IGZ1bmN0aW9uKCkgewoJCXRoaXMuaGVscGVyUHJvcG9ydGlvbnMgPSB7CgkJCXdpZHRoOiB0aGlzLmhlbHBlci5vdXRlcldpZHRoKCksCgkJCWhlaWdodDogdGhpcy5oZWxwZXIub3V0ZXJIZWlnaHQoKQoJCX07Cgl9LAoKCV9zZXRDb250YWlubWVudDogZnVuY3Rpb24oKSB7CgoJCXZhciBjZSwgY28sIG92ZXIsCgkJCW8gPSB0aGlzLm9wdGlvbnM7CgkJaWYgKCBvLmNvbnRhaW5tZW50ID09PSAicGFyZW50IiApIHsKCQkJby5jb250YWlubWVudCA9IHRoaXMuaGVscGVyWyAwIF0ucGFyZW50Tm9kZTsKCQl9CgkJaWYgKCBvLmNvbnRhaW5tZW50ID09PSAiZG9jdW1lbnQiIHx8IG8uY29udGFpbm1lbnQgPT09ICJ3aW5kb3ciICkgewoJCQl0aGlzLmNvbnRhaW5tZW50ID0gWwoJCQkJMCAtIHRoaXMub2Zmc2V0LnJlbGF0aXZlLmxlZnQgLSB0aGlzLm9mZnNldC5wYXJlbnQubGVmdCwKCQkJCTAgLSB0aGlzLm9mZnNldC5yZWxhdGl2ZS50b3AgLSB0aGlzLm9mZnNldC5wYXJlbnQudG9wLAoJCQkJby5jb250YWlubWVudCA9PT0gImRvY3VtZW50IiA/CgkJCQkJdGhpcy5kb2N1bWVudC53aWR0aCgpIDoKCQkJCQl0aGlzLndpbmRvdy53aWR0aCgpIC0gdGhpcy5oZWxwZXJQcm9wb3J0aW9ucy53aWR0aCAtIHRoaXMubWFyZ2lucy5sZWZ0LAoJCQkJKCBvLmNvbnRhaW5tZW50ID09PSAiZG9jdW1lbnQiID8KCQkJCQkoIHRoaXMuZG9jdW1lbnQuaGVpZ2h0KCkgfHwgZG9jdW1lbnQuYm9keS5wYXJlbnROb2RlLnNjcm9sbEhlaWdodCApIDoKCQkJCQl0aGlzLndpbmRvdy5oZWlnaHQoKSB8fCB0aGlzLmRvY3VtZW50WyAwIF0uYm9keS5wYXJlbnROb2RlLnNjcm9sbEhlaWdodAoJCQkJKSAtIHRoaXMuaGVscGVyUHJvcG9ydGlvbnMuaGVpZ2h0IC0gdGhpcy5tYXJnaW5zLnRvcAoJCQldOwoJCX0KCgkJaWYgKCAhKCAvXihkb2N1bWVudHx3aW5kb3d8cGFyZW50KSQvICkudGVzdCggby5jb250YWlubWVudCApICkgewoJCQljZSA9ICQoIG8uY29udGFpbm1lbnQgKVsgMCBdOwoJCQljbyA9ICQoIG8uY29udGFpbm1lbnQgKS5vZmZzZXQoKTsKCQkJb3ZlciA9ICggJCggY2UgKS5jc3MoICJvdmVyZmxvdyIgKSAhPT0gImhpZGRlbiIgKTsKCgkJCXRoaXMuY29udGFpbm1lbnQgPSBbCgkJCQljby5sZWZ0ICsgKCBwYXJzZUludCggJCggY2UgKS5jc3MoICJib3JkZXJMZWZ0V2lkdGgiICksIDEwICkgfHwgMCApICsKCQkJCQkoIHBhcnNlSW50KCAkKCBjZSApLmNzcyggInBhZGRpbmdMZWZ0IiApLCAxMCApIHx8IDAgKSAtIHRoaXMubWFyZ2lucy5sZWZ0LAoJCQkJY28udG9wICsgKCBwYXJzZUludCggJCggY2UgKS5jc3MoICJib3JkZXJUb3BXaWR0aCIgKSwgMTAgKSB8fCAwICkgKwoJCQkJCSggcGFyc2VJbnQoICQoIGNlICkuY3NzKCAicGFkZGluZ1RvcCIgKSwgMTAgKSB8fCAwICkgLSB0aGlzLm1hcmdpbnMudG9wLAoJCQkJY28ubGVmdCArICggb3ZlciA/IE1hdGgubWF4KCBjZS5zY3JvbGxXaWR0aCwgY2Uub2Zmc2V0V2lkdGggKSA6IGNlLm9mZnNldFdpZHRoICkgLQoJCQkJCSggcGFyc2VJbnQoICQoIGNlICkuY3NzKCAiYm9yZGVyTGVmdFdpZHRoIiApLCAxMCApIHx8IDAgKSAtCgkJCQkJKCBwYXJzZUludCggJCggY2UgKS5jc3MoICJwYWRkaW5nUmlnaHQiICksIDEwICkgfHwgMCApIC0KCQkJCQl0aGlzLmhlbHBlclByb3BvcnRpb25zLndpZHRoIC0gdGhpcy5tYXJnaW5zLmxlZnQsCgkJCQljby50b3AgKyAoIG92ZXIgPyBNYXRoLm1heCggY2Uuc2Nyb2xsSGVpZ2h0LCBjZS5vZmZzZXRIZWlnaHQgKSA6IGNlLm9mZnNldEhlaWdodCApIC0KCQkJCQkoIHBhcnNlSW50KCAkKCBjZSApLmNzcyggImJvcmRlclRvcFdpZHRoIiApLCAxMCApIHx8IDAgKSAtCgkJCQkJKCBwYXJzZUludCggJCggY2UgKS5jc3MoICJwYWRkaW5nQm90dG9tIiApLCAxMCApIHx8IDAgKSAtCgkJCQkJdGhpcy5oZWxwZXJQcm9wb3J0aW9ucy5oZWlnaHQgLSB0aGlzLm1hcmdpbnMudG9wCgkJCV07CgkJfQoKCX0sCgoJX2NvbnZlcnRQb3NpdGlvblRvOiBmdW5jdGlvbiggZCwgcG9zICkgewoKCQlpZiAoICFwb3MgKSB7CgkJCXBvcyA9IHRoaXMucG9zaXRpb247CgkJfQoJCXZhciBtb2QgPSBkID09PSAiYWJzb2x1dGUiID8gMSA6IC0xLAoJCQlzY3JvbGwgPSB0aGlzLmNzc1Bvc2l0aW9uID09PSAiYWJzb2x1dGUiICYmCgkJCQkhKCB0aGlzLnNjcm9sbFBhcmVudFsgMCBdICE9PSB0aGlzLmRvY3VtZW50WyAwIF0gJiYKCQkJCSQuY29udGFpbnMoIHRoaXMuc2Nyb2xsUGFyZW50WyAwIF0sIHRoaXMub2Zmc2V0UGFyZW50WyAwIF0gKSApID8KCQkJCQl0aGlzLm9mZnNldFBhcmVudCA6CgkJCQkJdGhpcy5zY3JvbGxQYXJlbnQsCgkJCXNjcm9sbElzUm9vdE5vZGUgPSAoIC8oaHRtbHxib2R5KS9pICkudGVzdCggc2Nyb2xsWyAwIF0udGFnTmFtZSApOwoKCQlyZXR1cm4gewoJCQl0b3A6ICgKCgkJCQkvLyBUaGUgYWJzb2x1dGUgbW91c2UgcG9zaXRpb24KCQkJCXBvcy50b3AJKwoKCQkJCS8vIE9ubHkgZm9yIHJlbGF0aXZlIHBvc2l0aW9uZWQgbm9kZXM6IFJlbGF0aXZlIG9mZnNldCBmcm9tIGVsZW1lbnQgdG8gb2Zmc2V0IHBhcmVudAoJCQkJdGhpcy5vZmZzZXQucmVsYXRpdmUudG9wICogbW9kICsKCgkJCQkvLyBUaGUgb2Zmc2V0UGFyZW50J3Mgb2Zmc2V0IHdpdGhvdXQgYm9yZGVycyAob2Zmc2V0ICsgYm9yZGVyKQoJCQkJdGhpcy5vZmZzZXQucGFyZW50LnRvcCAqIG1vZCAtCgkJCQkoICggdGhpcy5jc3NQb3NpdGlvbiA9PT0gImZpeGVkIiA/CgkJCQkJLXRoaXMuc2Nyb2xsUGFyZW50LnNjcm9sbFRvcCgpIDoKCQkJCQkoIHNjcm9sbElzUm9vdE5vZGUgPyAwIDogc2Nyb2xsLnNjcm9sbFRvcCgpICkgKSAqIG1vZCApCgkJCSksCgkJCWxlZnQ6ICgKCgkJCQkvLyBUaGUgYWJzb2x1dGUgbW91c2UgcG9zaXRpb24KCQkJCXBvcy5sZWZ0ICsKCgkJCQkvLyBPbmx5IGZvciByZWxhdGl2ZSBwb3NpdGlvbmVkIG5vZGVzOiBSZWxhdGl2ZSBvZmZzZXQgZnJvbSBlbGVtZW50IHRvIG9mZnNldCBwYXJlbnQKCQkJCXRoaXMub2Zmc2V0LnJlbGF0aXZlLmxlZnQgKiBtb2QgKwoKCQkJCS8vIFRoZSBvZmZzZXRQYXJlbnQncyBvZmZzZXQgd2l0aG91dCBib3JkZXJzIChvZmZzZXQgKyBib3JkZXIpCgkJCQl0aGlzLm9mZnNldC5wYXJlbnQubGVmdCAqIG1vZAktCgkJCQkoICggdGhpcy5jc3NQb3NpdGlvbiA9PT0gImZpeGVkIiA/CgkJCQkJLXRoaXMuc2Nyb2xsUGFyZW50LnNjcm9sbExlZnQoKSA6IHNjcm9sbElzUm9vdE5vZGUgPyAwIDoKCQkJCQlzY3JvbGwuc2Nyb2xsTGVmdCgpICkgKiBtb2QgKQoJCQkpCgkJfTsKCgl9LAoKCV9nZW5lcmF0ZVBvc2l0aW9uOiBmdW5jdGlvbiggZXZlbnQgKSB7CgoJCXZhciB0b3AsIGxlZnQsCgkJCW8gPSB0aGlzLm9wdGlvbnMsCgkJCXBhZ2VYID0gZXZlbnQucGFnZVgsCgkJCXBhZ2VZID0gZXZlbnQucGFnZVksCgkJCXNjcm9sbCA9IHRoaXMuY3NzUG9zaXRpb24gPT09ICJhYnNvbHV0ZSIgJiYKCQkJCSEoIHRoaXMuc2Nyb2xsUGFyZW50WyAwIF0gIT09IHRoaXMuZG9jdW1lbnRbIDAgXSAmJgoJCQkJJC5jb250YWlucyggdGhpcy5zY3JvbGxQYXJlbnRbIDAgXSwgdGhpcy5vZmZzZXRQYXJlbnRbIDAgXSApICkgPwoJCQkJCXRoaXMub2Zmc2V0UGFyZW50IDoKCQkJCQl0aGlzLnNjcm9sbFBhcmVudCwKCQkJCXNjcm9sbElzUm9vdE5vZGUgPSAoIC8oaHRtbHxib2R5KS9pICkudGVzdCggc2Nyb2xsWyAwIF0udGFnTmFtZSApOwoKCQkvLyBUaGlzIGlzIGFub3RoZXIgdmVyeSB3ZWlyZCBzcGVjaWFsIGNhc2UgdGhhdCBvbmx5IGhhcHBlbnMgZm9yIHJlbGF0aXZlIGVsZW1lbnRzOgoJCS8vIDEuIElmIHRoZSBjc3MgcG9zaXRpb24gaXMgcmVsYXRpdmUKCQkvLyAyLiBhbmQgdGhlIHNjcm9sbCBwYXJlbnQgaXMgdGhlIGRvY3VtZW50IG9yIHNpbWlsYXIgdG8gdGhlIG9mZnNldCBwYXJlbnQKCQkvLyB3ZSBoYXZlIHRvIHJlZnJlc2ggdGhlIHJlbGF0aXZlIG9mZnNldCBkdXJpbmcgdGhlIHNjcm9sbCBzbyB0aGVyZSBhcmUgbm8ganVtcHMKCQlpZiAoIHRoaXMuY3NzUG9zaXRpb24gPT09ICJyZWxhdGl2ZSIgJiYgISggdGhpcy5zY3JvbGxQYXJlbnRbIDAgXSAhPT0gdGhpcy5kb2N1bWVudFsgMCBdICYmCgkJCQl0aGlzLnNjcm9sbFBhcmVudFsgMCBdICE9PSB0aGlzLm9mZnNldFBhcmVudFsgMCBdICkgKSB7CgkJCXRoaXMub2Zmc2V0LnJlbGF0aXZlID0gdGhpcy5fZ2V0UmVsYXRpdmVPZmZzZXQoKTsKCQl9CgoJCS8qCgkJICogLSBQb3NpdGlvbiBjb25zdHJhaW5pbmcgLQoJCSAqIENvbnN0cmFpbiB0aGUgcG9zaXRpb24gdG8gYSBtaXggb2YgZ3JpZCwgY29udGFpbm1lbnQuCgkJICovCgoJCWlmICggdGhpcy5vcmlnaW5hbFBvc2l0aW9uICkgeyAvL0lmIHdlIGFyZSBub3QgZHJhZ2dpbmcgeWV0LCB3ZSB3b24ndCBjaGVjayBmb3Igb3B0aW9ucwoKCQkJaWYgKCB0aGlzLmNvbnRhaW5tZW50ICkgewoJCQkJaWYgKCBldmVudC5wYWdlWCAtIHRoaXMub2Zmc2V0LmNsaWNrLmxlZnQgPCB0aGlzLmNvbnRhaW5tZW50WyAwIF0gKSB7CgkJCQkJcGFnZVggPSB0aGlzLmNvbnRhaW5tZW50WyAwIF0gKyB0aGlzLm9mZnNldC5jbGljay5sZWZ0OwoJCQkJfQoJCQkJaWYgKCBldmVudC5wYWdlWSAtIHRoaXMub2Zmc2V0LmNsaWNrLnRvcCA8IHRoaXMuY29udGFpbm1lbnRbIDEgXSApIHsKCQkJCQlwYWdlWSA9IHRoaXMuY29udGFpbm1lbnRbIDEgXSArIHRoaXMub2Zmc2V0LmNsaWNrLnRvcDsKCQkJCX0KCQkJCWlmICggZXZlbnQucGFnZVggLSB0aGlzLm9mZnNldC5jbGljay5sZWZ0ID4gdGhpcy5jb250YWlubWVudFsgMiBdICkgewoJCQkJCXBhZ2VYID0gdGhpcy5jb250YWlubWVudFsgMiBdICsgdGhpcy5vZmZzZXQuY2xpY2subGVmdDsKCQkJCX0KCQkJCWlmICggZXZlbnQucGFnZVkgLSB0aGlzLm9mZnNldC5jbGljay50b3AgPiB0aGlzLmNvbnRhaW5tZW50WyAzIF0gKSB7CgkJCQkJcGFnZVkgPSB0aGlzLmNvbnRhaW5tZW50WyAzIF0gKyB0aGlzLm9mZnNldC5jbGljay50b3A7CgkJCQl9CgkJCX0KCgkJCWlmICggby5ncmlkICkgewoJCQkJdG9wID0gdGhpcy5vcmlnaW5hbFBhZ2VZICsgTWF0aC5yb3VuZCggKCBwYWdlWSAtIHRoaXMub3JpZ2luYWxQYWdlWSApIC8KCQkJCQlvLmdyaWRbIDEgXSApICogby5ncmlkWyAxIF07CgkJCQlwYWdlWSA9IHRoaXMuY29udGFpbm1lbnQgPwoJCQkJCSggKCB0b3AgLSB0aGlzLm9mZnNldC5jbGljay50b3AgPj0gdGhpcy5jb250YWlubWVudFsgMSBdICYmCgkJCQkJCXRvcCAtIHRoaXMub2Zmc2V0LmNsaWNrLnRvcCA8PSB0aGlzLmNvbnRhaW5tZW50WyAzIF0gKSA/CgkJCQkJCQl0b3AgOgoJCQkJCQkJKCAoIHRvcCAtIHRoaXMub2Zmc2V0LmNsaWNrLnRvcCA+PSB0aGlzLmNvbnRhaW5tZW50WyAxIF0gKSA/CgkJCQkJCQkJdG9wIC0gby5ncmlkWyAxIF0gOiB0b3AgKyBvLmdyaWRbIDEgXSApICkgOgoJCQkJCQkJCXRvcDsKCgkJCQlsZWZ0ID0gdGhpcy5vcmlnaW5hbFBhZ2VYICsgTWF0aC5yb3VuZCggKCBwYWdlWCAtIHRoaXMub3JpZ2luYWxQYWdlWCApIC8KCQkJCQlvLmdyaWRbIDAgXSApICogby5ncmlkWyAwIF07CgkJCQlwYWdlWCA9IHRoaXMuY29udGFpbm1lbnQgPwoJCQkJCSggKCBsZWZ0IC0gdGhpcy5vZmZzZXQuY2xpY2subGVmdCA+PSB0aGlzLmNvbnRhaW5tZW50WyAwIF0gJiYKCQkJCQkJbGVmdCAtIHRoaXMub2Zmc2V0LmNsaWNrLmxlZnQgPD0gdGhpcy5jb250YWlubWVudFsgMiBdICkgPwoJCQkJCQkJbGVmdCA6CgkJCQkJCQkoICggbGVmdCAtIHRoaXMub2Zmc2V0LmNsaWNrLmxlZnQgPj0gdGhpcy5jb250YWlubWVudFsgMCBdICkgPwoJCQkJCQkJCWxlZnQgLSBvLmdyaWRbIDAgXSA6IGxlZnQgKyBvLmdyaWRbIDAgXSApICkgOgoJCQkJCQkJCWxlZnQ7CgkJCX0KCgkJfQoKCQlyZXR1cm4gewoJCQl0b3A6ICgKCgkJCQkvLyBUaGUgYWJzb2x1dGUgbW91c2UgcG9zaXRpb24KCQkJCXBhZ2VZIC0KCgkJCQkvLyBDbGljayBvZmZzZXQgKHJlbGF0aXZlIHRvIHRoZSBlbGVtZW50KQoJCQkJdGhpcy5vZmZzZXQuY2xpY2sudG9wIC0KCgkJCQkvLyBPbmx5IGZvciByZWxhdGl2ZSBwb3NpdGlvbmVkIG5vZGVzOiBSZWxhdGl2ZSBvZmZzZXQgZnJvbSBlbGVtZW50IHRvIG9mZnNldCBwYXJlbnQKCQkJCXRoaXMub2Zmc2V0LnJlbGF0aXZlLnRvcCAtCgoJCQkJLy8gVGhlIG9mZnNldFBhcmVudCdzIG9mZnNldCB3aXRob3V0IGJvcmRlcnMgKG9mZnNldCArIGJvcmRlcikKCQkJCXRoaXMub2Zmc2V0LnBhcmVudC50b3AgKwoJCQkJKCAoIHRoaXMuY3NzUG9zaXRpb24gPT09ICJmaXhlZCIgPwoJCQkJCS10aGlzLnNjcm9sbFBhcmVudC5zY3JvbGxUb3AoKSA6CgkJCQkJKCBzY3JvbGxJc1Jvb3ROb2RlID8gMCA6IHNjcm9sbC5zY3JvbGxUb3AoKSApICkgKQoJCQkpLAoJCQlsZWZ0OiAoCgoJCQkJLy8gVGhlIGFic29sdXRlIG1vdXNlIHBvc2l0aW9uCgkJCQlwYWdlWCAtCgoJCQkJLy8gQ2xpY2sgb2Zmc2V0IChyZWxhdGl2ZSB0byB0aGUgZWxlbWVudCkKCQkJCXRoaXMub2Zmc2V0LmNsaWNrLmxlZnQgLQoKCQkJCS8vIE9ubHkgZm9yIHJlbGF0aXZlIHBvc2l0aW9uZWQgbm9kZXM6IFJlbGF0aXZlIG9mZnNldCBmcm9tIGVsZW1lbnQgdG8gb2Zmc2V0IHBhcmVudAoJCQkJdGhpcy5vZmZzZXQucmVsYXRpdmUubGVmdCAtCgoJCQkJLy8gVGhlIG9mZnNldFBhcmVudCdzIG9mZnNldCB3aXRob3V0IGJvcmRlcnMgKG9mZnNldCArIGJvcmRlcikKCQkJCXRoaXMub2Zmc2V0LnBhcmVudC5sZWZ0ICsKCQkJCSggKCB0aGlzLmNzc1Bvc2l0aW9uID09PSAiZml4ZWQiID8KCQkJCQktdGhpcy5zY3JvbGxQYXJlbnQuc2Nyb2xsTGVmdCgpIDoKCQkJCQlzY3JvbGxJc1Jvb3ROb2RlID8gMCA6IHNjcm9sbC5zY3JvbGxMZWZ0KCkgKSApCgkJCSkKCQl9OwoKCX0sCgoJX3JlYXJyYW5nZTogZnVuY3Rpb24oIGV2ZW50LCBpLCBhLCBoYXJkUmVmcmVzaCApIHsKCgkJYSA/IGFbIDAgXS5hcHBlbmRDaGlsZCggdGhpcy5wbGFjZWhvbGRlclsgMCBdICkgOgoJCQlpLml0ZW1bIDAgXS5wYXJlbnROb2RlLmluc2VydEJlZm9yZSggdGhpcy5wbGFjZWhvbGRlclsgMCBdLAoJCQkJKCB0aGlzLmRpcmVjdGlvbiA9PT0gImRvd24iID8gaS5pdGVtWyAwIF0gOiBpLml0ZW1bIDAgXS5uZXh0U2libGluZyApICk7CgoJCS8vVmFyaW91cyB0aGluZ3MgZG9uZSBoZXJlIHRvIGltcHJvdmUgdGhlIHBlcmZvcm1hbmNlOgoJCS8vIDEuIHdlIGNyZWF0ZSBhIHNldFRpbWVvdXQsIHRoYXQgY2FsbHMgcmVmcmVzaFBvc2l0aW9ucwoJCS8vIDIuIG9uIHRoZSBpbnN0YW5jZSwgd2UgaGF2ZSBhIGNvdW50ZXIgdmFyaWFibGUsIHRoYXQgZ2V0J3MgaGlnaGVyIGFmdGVyIGV2ZXJ5IGFwcGVuZAoJCS8vIDMuIG9uIHRoZSBsb2NhbCBzY29wZSwgd2UgY29weSB0aGUgY291bnRlciB2YXJpYWJsZSwgYW5kIGNoZWNrIGluIHRoZSB0aW1lb3V0LAoJCS8vIGlmIGl0J3Mgc3RpbGwgdGhlIHNhbWUKCQkvLyA0LiB0aGlzIGxldHMgb25seSB0aGUgbGFzdCBhZGRpdGlvbiB0byB0aGUgdGltZW91dCBzdGFjayB0aHJvdWdoCgkJdGhpcy5jb3VudGVyID0gdGhpcy5jb3VudGVyID8gKyt0aGlzLmNvdW50ZXIgOiAxOwoJCXZhciBjb3VudGVyID0gdGhpcy5jb3VudGVyOwoKCQl0aGlzLl9kZWxheSggZnVuY3Rpb24oKSB7CgkJCWlmICggY291bnRlciA9PT0gdGhpcy5jb3VudGVyICkgewoKCQkJCS8vUHJlY29tcHV0ZSBhZnRlciBlYWNoIERPTSBpbnNlcnRpb24sIE5PVCBvbiBtb3VzZW1vdmUKCQkJCXRoaXMucmVmcmVzaFBvc2l0aW9ucyggIWhhcmRSZWZyZXNoICk7CgkJCX0KCQl9ICk7CgoJfSwKCglfY2xlYXI6IGZ1bmN0aW9uKCBldmVudCwgbm9Qcm9wYWdhdGlvbiApIHsKCgkJdGhpcy5yZXZlcnRpbmcgPSBmYWxzZTsKCgkJLy8gV2UgZGVsYXkgYWxsIGV2ZW50cyB0aGF0IGhhdmUgdG8gYmUgdHJpZ2dlcmVkIHRvIGFmdGVyIHRoZSBwb2ludCB3aGVyZSB0aGUgcGxhY2Vob2xkZXIKCQkvLyBoYXMgYmVlbiByZW1vdmVkIGFuZCBldmVyeXRoaW5nIGVsc2Ugbm9ybWFsaXplZCBhZ2FpbgoJCXZhciBpLAoJCQlkZWxheWVkVHJpZ2dlcnMgPSBbXTsKCgkJLy8gV2UgZmlyc3QgaGF2ZSB0byB1cGRhdGUgdGhlIGRvbSBwb3NpdGlvbiBvZiB0aGUgYWN0dWFsIGN1cnJlbnRJdGVtCgkJLy8gTm90ZTogZG9uJ3QgZG8gaXQgaWYgdGhlIGN1cnJlbnQgaXRlbSBpcyBhbHJlYWR5IHJlbW92ZWQgKGJ5IGEgdXNlciksIG9yIGl0IGdldHMKCQkvLyByZWFwcGVuZGVkIChzZWUgIzQwODgpCgkJaWYgKCAhdGhpcy5fbm9GaW5hbFNvcnQgJiYgdGhpcy5jdXJyZW50SXRlbS5wYXJlbnQoKS5sZW5ndGggKSB7CgkJCXRoaXMucGxhY2Vob2xkZXIuYmVmb3JlKCB0aGlzLmN1cnJlbnRJdGVtICk7CgkJfQoJCXRoaXMuX25vRmluYWxTb3J0ID0gbnVsbDsKCgkJaWYgKCB0aGlzLmhlbHBlclsgMCBdID09PSB0aGlzLmN1cnJlbnRJdGVtWyAwIF0gKSB7CgkJCWZvciAoIGkgaW4gdGhpcy5fc3RvcmVkQ1NTICkgewoJCQkJaWYgKCB0aGlzLl9zdG9yZWRDU1NbIGkgXSA9PT0gImF1dG8iIHx8IHRoaXMuX3N0b3JlZENTU1sgaSBdID09PSAic3RhdGljIiApIHsKCQkJCQl0aGlzLl9zdG9yZWRDU1NbIGkgXSA9ICIiOwoJCQkJfQoJCQl9CgkJCXRoaXMuY3VycmVudEl0ZW0uY3NzKCB0aGlzLl9zdG9yZWRDU1MgKTsKCQkJdGhpcy5fcmVtb3ZlQ2xhc3MoIHRoaXMuY3VycmVudEl0ZW0sICJ1aS1zb3J0YWJsZS1oZWxwZXIiICk7CgkJfSBlbHNlIHsKCQkJdGhpcy5jdXJyZW50SXRlbS5zaG93KCk7CgkJfQoKCQlpZiAoIHRoaXMuZnJvbU91dHNpZGUgJiYgIW5vUHJvcGFnYXRpb24gKSB7CgkJCWRlbGF5ZWRUcmlnZ2Vycy5wdXNoKCBmdW5jdGlvbiggZXZlbnQgKSB7CgkJCQl0aGlzLl90cmlnZ2VyKCAicmVjZWl2ZSIsIGV2ZW50LCB0aGlzLl91aUhhc2goIHRoaXMuZnJvbU91dHNpZGUgKSApOwoJCQl9ICk7CgkJfQoJCWlmICggKCB0aGlzLmZyb21PdXRzaWRlIHx8CgkJCQl0aGlzLmRvbVBvc2l0aW9uLnByZXYgIT09CgkJCQl0aGlzLmN1cnJlbnRJdGVtLnByZXYoKS5ub3QoICIudWktc29ydGFibGUtaGVscGVyIiApWyAwIF0gfHwKCQkJCXRoaXMuZG9tUG9zaXRpb24ucGFyZW50ICE9PSB0aGlzLmN1cnJlbnRJdGVtLnBhcmVudCgpWyAwIF0gKSAmJiAhbm9Qcm9wYWdhdGlvbiApIHsKCgkJCS8vIFRyaWdnZXIgdXBkYXRlIGNhbGxiYWNrIGlmIHRoZSBET00gcG9zaXRpb24gaGFzIGNoYW5nZWQKCQkJZGVsYXllZFRyaWdnZXJzLnB1c2goIGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCXRoaXMuX3RyaWdnZXIoICJ1cGRhdGUiLCBldmVudCwgdGhpcy5fdWlIYXNoKCkgKTsKCQkJfSApOwoJCX0KCgkJLy8gQ2hlY2sgaWYgdGhlIGl0ZW1zIENvbnRhaW5lciBoYXMgQ2hhbmdlZCBhbmQgdHJpZ2dlciBhcHByb3ByaWF0ZQoJCS8vIGV2ZW50cy4KCQlpZiAoIHRoaXMgIT09IHRoaXMuY3VycmVudENvbnRhaW5lciApIHsKCQkJaWYgKCAhbm9Qcm9wYWdhdGlvbiApIHsKCQkJCWRlbGF5ZWRUcmlnZ2Vycy5wdXNoKCBmdW5jdGlvbiggZXZlbnQgKSB7CgkJCQkJdGhpcy5fdHJpZ2dlciggInJlbW92ZSIsIGV2ZW50LCB0aGlzLl91aUhhc2goKSApOwoJCQkJfSApOwoJCQkJZGVsYXllZFRyaWdnZXJzLnB1c2goICggZnVuY3Rpb24oIGMgKSB7CgkJCQkJcmV0dXJuIGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCQkJYy5fdHJpZ2dlciggInJlY2VpdmUiLCBldmVudCwgdGhpcy5fdWlIYXNoKCB0aGlzICkgKTsKCQkJCQl9OwoJCQkJfSApLmNhbGwoIHRoaXMsIHRoaXMuY3VycmVudENvbnRhaW5lciApICk7CgkJCQlkZWxheWVkVHJpZ2dlcnMucHVzaCggKCBmdW5jdGlvbiggYyApIHsKCQkJCQlyZXR1cm4gZnVuY3Rpb24oIGV2ZW50ICkgewoJCQkJCQljLl90cmlnZ2VyKCAidXBkYXRlIiwgZXZlbnQsIHRoaXMuX3VpSGFzaCggdGhpcyApICk7CgkJCQkJfTsKCQkJCX0gKS5jYWxsKCB0aGlzLCB0aGlzLmN1cnJlbnRDb250YWluZXIgKSApOwoJCQl9CgkJfQoKCQkvL1Bvc3QgZXZlbnRzIHRvIGNvbnRhaW5lcnMKCQlmdW5jdGlvbiBkZWxheUV2ZW50KCB0eXBlLCBpbnN0YW5jZSwgY29udGFpbmVyICkgewoJCQlyZXR1cm4gZnVuY3Rpb24oIGV2ZW50ICkgewoJCQkJY29udGFpbmVyLl90cmlnZ2VyKCB0eXBlLCBldmVudCwgaW5zdGFuY2UuX3VpSGFzaCggaW5zdGFuY2UgKSApOwoJCQl9OwoJCX0KCQlmb3IgKCBpID0gdGhpcy5jb250YWluZXJzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tICkgewoJCQlpZiAoICFub1Byb3BhZ2F0aW9uICkgewoJCQkJZGVsYXllZFRyaWdnZXJzLnB1c2goIGRlbGF5RXZlbnQoICJkZWFjdGl2YXRlIiwgdGhpcywgdGhpcy5jb250YWluZXJzWyBpIF0gKSApOwoJCQl9CgkJCWlmICggdGhpcy5jb250YWluZXJzWyBpIF0uY29udGFpbmVyQ2FjaGUub3ZlciApIHsKCQkJCWRlbGF5ZWRUcmlnZ2Vycy5wdXNoKCBkZWxheUV2ZW50KCAib3V0IiwgdGhpcywgdGhpcy5jb250YWluZXJzWyBpIF0gKSApOwoJCQkJdGhpcy5jb250YWluZXJzWyBpIF0uY29udGFpbmVyQ2FjaGUub3ZlciA9IDA7CgkJCX0KCQl9CgoJCS8vRG8gd2hhdCB3YXMgb3JpZ2luYWxseSBpbiBwbHVnaW5zCgkJaWYgKCB0aGlzLnN0b3JlZEN1cnNvciApIHsKCQkJdGhpcy5kb2N1bWVudC5maW5kKCAiYm9keSIgKS5jc3MoICJjdXJzb3IiLCB0aGlzLnN0b3JlZEN1cnNvciApOwoJCQl0aGlzLnN0b3JlZFN0eWxlc2hlZXQucmVtb3ZlKCk7CgkJfQoJCWlmICggdGhpcy5fc3RvcmVkT3BhY2l0eSApIHsKCQkJdGhpcy5oZWxwZXIuY3NzKCAib3BhY2l0eSIsIHRoaXMuX3N0b3JlZE9wYWNpdHkgKTsKCQl9CgkJaWYgKCB0aGlzLl9zdG9yZWRaSW5kZXggKSB7CgkJCXRoaXMuaGVscGVyLmNzcyggInpJbmRleCIsIHRoaXMuX3N0b3JlZFpJbmRleCA9PT0gImF1dG8iID8gIiIgOiB0aGlzLl9zdG9yZWRaSW5kZXggKTsKCQl9CgoJCXRoaXMuZHJhZ2dpbmcgPSBmYWxzZTsKCgkJaWYgKCAhbm9Qcm9wYWdhdGlvbiApIHsKCQkJdGhpcy5fdHJpZ2dlciggImJlZm9yZVN0b3AiLCBldmVudCwgdGhpcy5fdWlIYXNoKCkgKTsKCQl9CgoJCS8vJCh0aGlzLnBsYWNlaG9sZGVyWzBdKS5yZW1vdmUoKTsgd291bGQgaGF2ZSBiZWVuIHRoZSBqUXVlcnkgd2F5IC0gdW5mb3J0dW5hdGVseSwKCQkvLyBpdCB1bmJpbmRzIEFMTCBldmVudHMgZnJvbSB0aGUgb3JpZ2luYWwgbm9kZSEKCQl0aGlzLnBsYWNlaG9sZGVyWyAwIF0ucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCggdGhpcy5wbGFjZWhvbGRlclsgMCBdICk7CgoJCWlmICggIXRoaXMuY2FuY2VsSGVscGVyUmVtb3ZhbCApIHsKCQkJaWYgKCB0aGlzLmhlbHBlclsgMCBdICE9PSB0aGlzLmN1cnJlbnRJdGVtWyAwIF0gKSB7CgkJCQl0aGlzLmhlbHBlci5yZW1vdmUoKTsKCQkJfQoJCQl0aGlzLmhlbHBlciA9IG51bGw7CgkJfQoKCQlpZiAoICFub1Byb3BhZ2F0aW9uICkgewoJCQlmb3IgKCBpID0gMDsgaSA8IGRlbGF5ZWRUcmlnZ2Vycy5sZW5ndGg7IGkrKyApIHsKCgkJCQkvLyBUcmlnZ2VyIGFsbCBkZWxheWVkIGV2ZW50cwoJCQkJZGVsYXllZFRyaWdnZXJzWyBpIF0uY2FsbCggdGhpcywgZXZlbnQgKTsKCQkJfQoJCQl0aGlzLl90cmlnZ2VyKCAic3RvcCIsIGV2ZW50LCB0aGlzLl91aUhhc2goKSApOwoJCX0KCgkJdGhpcy5mcm9tT3V0c2lkZSA9IGZhbHNlOwoJCXJldHVybiAhdGhpcy5jYW5jZWxIZWxwZXJSZW1vdmFsOwoKCX0sCgoJX3RyaWdnZXI6IGZ1bmN0aW9uKCkgewoJCWlmICggJC5XaWRnZXQucHJvdG90eXBlLl90cmlnZ2VyLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKSA9PT0gZmFsc2UgKSB7CgkJCXRoaXMuY2FuY2VsKCk7CgkJfQoJfSwKCglfdWlIYXNoOiBmdW5jdGlvbiggX2luc3QgKSB7CgkJdmFyIGluc3QgPSBfaW5zdCB8fCB0aGlzOwoJCXJldHVybiB7CgkJCWhlbHBlcjogaW5zdC5oZWxwZXIsCgkJCXBsYWNlaG9sZGVyOiBpbnN0LnBsYWNlaG9sZGVyIHx8ICQoIFtdICksCgkJCXBvc2l0aW9uOiBpbnN0LnBvc2l0aW9uLAoJCQlvcmlnaW5hbFBvc2l0aW9uOiBpbnN0Lm9yaWdpbmFsUG9zaXRpb24sCgkJCW9mZnNldDogaW5zdC5wb3NpdGlvbkFicywKCQkJaXRlbTogaW5zdC5jdXJyZW50SXRlbSwKCQkJc2VuZGVyOiBfaW5zdCA/IF9pbnN0LmVsZW1lbnQgOiBudWxsCgkJfTsKCX0KCn0gKTsKCgovKiEKICogalF1ZXJ5IFVJIEFjY29yZGlvbiAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IEFjY29yZGlvbgovLz4+Z3JvdXA6IFdpZGdldHMKLy8ganNjczpkaXNhYmxlIG1heGltdW1MaW5lTGVuZ3RoCi8vPj5kZXNjcmlwdGlvbjogRGlzcGxheXMgY29sbGFwc2libGUgY29udGVudCBwYW5lbHMgZm9yIHByZXNlbnRpbmcgaW5mb3JtYXRpb24gaW4gYSBsaW1pdGVkIGFtb3VudCBvZiBzcGFjZS4KLy8ganNjczplbmFibGUgbWF4aW11bUxpbmVMZW5ndGgKLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2FjY29yZGlvbi8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL2FjY29yZGlvbi8KLy8+PmNzcy5zdHJ1Y3R1cmU6IC4uLy4uL3RoZW1lcy9iYXNlL2NvcmUuY3NzCi8vPj5jc3Muc3RydWN0dXJlOiAuLi8uLi90aGVtZXMvYmFzZS9hY2NvcmRpb24uY3NzCi8vPj5jc3MudGhlbWU6IC4uLy4uL3RoZW1lcy9iYXNlL3RoZW1lLmNzcwoKCgp2YXIgd2lkZ2V0c0FjY29yZGlvbiA9ICQud2lkZ2V0KCAidWkuYWNjb3JkaW9uIiwgewoJdmVyc2lvbjogIjEuMTIuMSIsCglvcHRpb25zOiB7CgkJYWN0aXZlOiAwLAoJCWFuaW1hdGU6IHt9LAoJCWNsYXNzZXM6IHsKCQkJInVpLWFjY29yZGlvbi1oZWFkZXIiOiAidWktY29ybmVyLXRvcCIsCgkJCSJ1aS1hY2NvcmRpb24taGVhZGVyLWNvbGxhcHNlZCI6ICJ1aS1jb3JuZXItYWxsIiwKCQkJInVpLWFjY29yZGlvbi1jb250ZW50IjogInVpLWNvcm5lci1ib3R0b20iCgkJfSwKCQljb2xsYXBzaWJsZTogZmFsc2UsCgkJZXZlbnQ6ICJjbGljayIsCgkJaGVhZGVyOiAiPiBsaSA+IDpmaXJzdC1jaGlsZCwgPiA6bm90KGxpKTpldmVuIiwKCQloZWlnaHRTdHlsZTogImF1dG8iLAoJCWljb25zOiB7CgkJCWFjdGl2ZUhlYWRlcjogInVpLWljb24tdHJpYW5nbGUtMS1zIiwKCQkJaGVhZGVyOiAidWktaWNvbi10cmlhbmdsZS0xLWUiCgkJfSwKCgkJLy8gQ2FsbGJhY2tzCgkJYWN0aXZhdGU6IG51bGwsCgkJYmVmb3JlQWN0aXZhdGU6IG51bGwKCX0sCgoJaGlkZVByb3BzOiB7CgkJYm9yZGVyVG9wV2lkdGg6ICJoaWRlIiwKCQlib3JkZXJCb3R0b21XaWR0aDogImhpZGUiLAoJCXBhZGRpbmdUb3A6ICJoaWRlIiwKCQlwYWRkaW5nQm90dG9tOiAiaGlkZSIsCgkJaGVpZ2h0OiAiaGlkZSIKCX0sCgoJc2hvd1Byb3BzOiB7CgkJYm9yZGVyVG9wV2lkdGg6ICJzaG93IiwKCQlib3JkZXJCb3R0b21XaWR0aDogInNob3ciLAoJCXBhZGRpbmdUb3A6ICJzaG93IiwKCQlwYWRkaW5nQm90dG9tOiAic2hvdyIsCgkJaGVpZ2h0OiAic2hvdyIKCX0sCgoJX2NyZWF0ZTogZnVuY3Rpb24oKSB7CgkJdmFyIG9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7CgoJCXRoaXMucHJldlNob3cgPSB0aGlzLnByZXZIaWRlID0gJCgpOwoJCXRoaXMuX2FkZENsYXNzKCAidWktYWNjb3JkaW9uIiwgInVpLXdpZGdldCB1aS1oZWxwZXItcmVzZXQiICk7CgkJdGhpcy5lbGVtZW50LmF0dHIoICJyb2xlIiwgInRhYmxpc3QiICk7CgoJCS8vIERvbid0IGFsbG93IGNvbGxhcHNpYmxlOiBmYWxzZSBhbmQgYWN0aXZlOiBmYWxzZSAvIG51bGwKCQlpZiAoICFvcHRpb25zLmNvbGxhcHNpYmxlICYmICggb3B0aW9ucy5hY3RpdmUgPT09IGZhbHNlIHx8IG9wdGlvbnMuYWN0aXZlID09IG51bGwgKSApIHsKCQkJb3B0aW9ucy5hY3RpdmUgPSAwOwoJCX0KCgkJdGhpcy5fcHJvY2Vzc1BhbmVscygpOwoKCQkvLyBoYW5kbGUgbmVnYXRpdmUgdmFsdWVzCgkJaWYgKCBvcHRpb25zLmFjdGl2ZSA8IDAgKSB7CgkJCW9wdGlvbnMuYWN0aXZlICs9IHRoaXMuaGVhZGVycy5sZW5ndGg7CgkJfQoJCXRoaXMuX3JlZnJlc2goKTsKCX0sCgoJX2dldENyZWF0ZUV2ZW50RGF0YTogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHsKCQkJaGVhZGVyOiB0aGlzLmFjdGl2ZSwKCQkJcGFuZWw6ICF0aGlzLmFjdGl2ZS5sZW5ndGggPyAkKCkgOiB0aGlzLmFjdGl2ZS5uZXh0KCkKCQl9OwoJfSwKCglfY3JlYXRlSWNvbnM6IGZ1bmN0aW9uKCkgewoJCXZhciBpY29uLCBjaGlsZHJlbiwKCQkJaWNvbnMgPSB0aGlzLm9wdGlvbnMuaWNvbnM7CgoJCWlmICggaWNvbnMgKSB7CgkJCWljb24gPSAkKCAiPHNwYW4+IiApOwoJCQl0aGlzLl9hZGRDbGFzcyggaWNvbiwgInVpLWFjY29yZGlvbi1oZWFkZXItaWNvbiIsICJ1aS1pY29uICIgKyBpY29ucy5oZWFkZXIgKTsKCQkJaWNvbi5wcmVwZW5kVG8oIHRoaXMuaGVhZGVycyApOwoJCQljaGlsZHJlbiA9IHRoaXMuYWN0aXZlLmNoaWxkcmVuKCAiLnVpLWFjY29yZGlvbi1oZWFkZXItaWNvbiIgKTsKCQkJdGhpcy5fcmVtb3ZlQ2xhc3MoIGNoaWxkcmVuLCBpY29ucy5oZWFkZXIgKQoJCQkJLl9hZGRDbGFzcyggY2hpbGRyZW4sIG51bGwsIGljb25zLmFjdGl2ZUhlYWRlciApCgkJCQkuX2FkZENsYXNzKCB0aGlzLmhlYWRlcnMsICJ1aS1hY2NvcmRpb24taWNvbnMiICk7CgkJfQoJfSwKCglfZGVzdHJveUljb25zOiBmdW5jdGlvbigpIHsKCQl0aGlzLl9yZW1vdmVDbGFzcyggdGhpcy5oZWFkZXJzLCAidWktYWNjb3JkaW9uLWljb25zIiApOwoJCXRoaXMuaGVhZGVycy5jaGlsZHJlbiggIi51aS1hY2NvcmRpb24taGVhZGVyLWljb24iICkucmVtb3ZlKCk7Cgl9LAoKCV9kZXN0cm95OiBmdW5jdGlvbigpIHsKCQl2YXIgY29udGVudHM7CgoJCS8vIENsZWFuIHVwIG1haW4gZWxlbWVudAoJCXRoaXMuZWxlbWVudC5yZW1vdmVBdHRyKCAicm9sZSIgKTsKCgkJLy8gQ2xlYW4gdXAgaGVhZGVycwoJCXRoaXMuaGVhZGVycwoJCQkucmVtb3ZlQXR0ciggInJvbGUgYXJpYS1leHBhbmRlZCBhcmlhLXNlbGVjdGVkIGFyaWEtY29udHJvbHMgdGFiSW5kZXgiICkKCQkJLnJlbW92ZVVuaXF1ZUlkKCk7CgoJCXRoaXMuX2Rlc3Ryb3lJY29ucygpOwoKCQkvLyBDbGVhbiB1cCBjb250ZW50IHBhbmVscwoJCWNvbnRlbnRzID0gdGhpcy5oZWFkZXJzLm5leHQoKQoJCQkuY3NzKCAiZGlzcGxheSIsICIiICkKCQkJLnJlbW92ZUF0dHIoICJyb2xlIGFyaWEtaGlkZGVuIGFyaWEtbGFiZWxsZWRieSIgKQoJCQkucmVtb3ZlVW5pcXVlSWQoKTsKCgkJaWYgKCB0aGlzLm9wdGlvbnMuaGVpZ2h0U3R5bGUgIT09ICJjb250ZW50IiApIHsKCQkJY29udGVudHMuY3NzKCAiaGVpZ2h0IiwgIiIgKTsKCQl9Cgl9LAoKCV9zZXRPcHRpb246IGZ1bmN0aW9uKCBrZXksIHZhbHVlICkgewoJCWlmICgga2V5ID09PSAiYWN0aXZlIiApIHsKCgkJCS8vIF9hY3RpdmF0ZSgpIHdpbGwgaGFuZGxlIGludmFsaWQgdmFsdWVzIGFuZCB1cGRhdGUgdGhpcy5vcHRpb25zCgkJCXRoaXMuX2FjdGl2YXRlKCB2YWx1ZSApOwoJCQlyZXR1cm47CgkJfQoKCQlpZiAoIGtleSA9PT0gImV2ZW50IiApIHsKCQkJaWYgKCB0aGlzLm9wdGlvbnMuZXZlbnQgKSB7CgkJCQl0aGlzLl9vZmYoIHRoaXMuaGVhZGVycywgdGhpcy5vcHRpb25zLmV2ZW50ICk7CgkJCX0KCQkJdGhpcy5fc2V0dXBFdmVudHMoIHZhbHVlICk7CgkJfQoKCQl0aGlzLl9zdXBlcigga2V5LCB2YWx1ZSApOwoKCQkvLyBTZXR0aW5nIGNvbGxhcHNpYmxlOiBmYWxzZSB3aGlsZSBjb2xsYXBzZWQ7IG9wZW4gZmlyc3QgcGFuZWwKCQlpZiAoIGtleSA9PT0gImNvbGxhcHNpYmxlIiAmJiAhdmFsdWUgJiYgdGhpcy5vcHRpb25zLmFjdGl2ZSA9PT0gZmFsc2UgKSB7CgkJCXRoaXMuX2FjdGl2YXRlKCAwICk7CgkJfQoKCQlpZiAoIGtleSA9PT0gImljb25zIiApIHsKCQkJdGhpcy5fZGVzdHJveUljb25zKCk7CgkJCWlmICggdmFsdWUgKSB7CgkJCQl0aGlzLl9jcmVhdGVJY29ucygpOwoJCQl9CgkJfQoJfSwKCglfc2V0T3B0aW9uRGlzYWJsZWQ6IGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQl0aGlzLl9zdXBlciggdmFsdWUgKTsKCgkJdGhpcy5lbGVtZW50LmF0dHIoICJhcmlhLWRpc2FibGVkIiwgdmFsdWUgKTsKCgkJLy8gU3VwcG9ydDogSUU4IE9ubHkKCQkvLyAjNTMzMiAvICM2MDU5IC0gb3BhY2l0eSBkb2Vzbid0IGNhc2NhZGUgdG8gcG9zaXRpb25lZCBlbGVtZW50cyBpbiBJRQoJCS8vIHNvIHdlIG5lZWQgdG8gYWRkIHRoZSBkaXNhYmxlZCBjbGFzcyB0byB0aGUgaGVhZGVycyBhbmQgcGFuZWxzCgkJdGhpcy5fdG9nZ2xlQ2xhc3MoIG51bGwsICJ1aS1zdGF0ZS1kaXNhYmxlZCIsICEhdmFsdWUgKTsKCQl0aGlzLl90b2dnbGVDbGFzcyggdGhpcy5oZWFkZXJzLmFkZCggdGhpcy5oZWFkZXJzLm5leHQoKSApLCBudWxsLCAidWktc3RhdGUtZGlzYWJsZWQiLAoJCQkhIXZhbHVlICk7Cgl9LAoKCV9rZXlkb3duOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJaWYgKCBldmVudC5hbHRLZXkgfHwgZXZlbnQuY3RybEtleSApIHsKCQkJcmV0dXJuOwoJCX0KCgkJdmFyIGtleUNvZGUgPSAkLnVpLmtleUNvZGUsCgkJCWxlbmd0aCA9IHRoaXMuaGVhZGVycy5sZW5ndGgsCgkJCWN1cnJlbnRJbmRleCA9IHRoaXMuaGVhZGVycy5pbmRleCggZXZlbnQudGFyZ2V0ICksCgkJCXRvRm9jdXMgPSBmYWxzZTsKCgkJc3dpdGNoICggZXZlbnQua2V5Q29kZSApIHsKCQljYXNlIGtleUNvZGUuUklHSFQ6CgkJY2FzZSBrZXlDb2RlLkRPV046CgkJCXRvRm9jdXMgPSB0aGlzLmhlYWRlcnNbICggY3VycmVudEluZGV4ICsgMSApICUgbGVuZ3RoIF07CgkJCWJyZWFrOwoJCWNhc2Uga2V5Q29kZS5MRUZUOgoJCWNhc2Uga2V5Q29kZS5VUDoKCQkJdG9Gb2N1cyA9IHRoaXMuaGVhZGVyc1sgKCBjdXJyZW50SW5kZXggLSAxICsgbGVuZ3RoICkgJSBsZW5ndGggXTsKCQkJYnJlYWs7CgkJY2FzZSBrZXlDb2RlLlNQQUNFOgoJCWNhc2Uga2V5Q29kZS5FTlRFUjoKCQkJdGhpcy5fZXZlbnRIYW5kbGVyKCBldmVudCApOwoJCQlicmVhazsKCQljYXNlIGtleUNvZGUuSE9NRToKCQkJdG9Gb2N1cyA9IHRoaXMuaGVhZGVyc1sgMCBdOwoJCQlicmVhazsKCQljYXNlIGtleUNvZGUuRU5EOgoJCQl0b0ZvY3VzID0gdGhpcy5oZWFkZXJzWyBsZW5ndGggLSAxIF07CgkJCWJyZWFrOwoJCX0KCgkJaWYgKCB0b0ZvY3VzICkgewoJCQkkKCBldmVudC50YXJnZXQgKS5hdHRyKCAidGFiSW5kZXgiLCAtMSApOwoJCQkkKCB0b0ZvY3VzICkuYXR0ciggInRhYkluZGV4IiwgMCApOwoJCQkkKCB0b0ZvY3VzICkudHJpZ2dlciggImZvY3VzIiApOwoJCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOwoJCX0KCX0sCgoJX3BhbmVsS2V5RG93bjogZnVuY3Rpb24oIGV2ZW50ICkgewoJCWlmICggZXZlbnQua2V5Q29kZSA9PT0gJC51aS5rZXlDb2RlLlVQICYmIGV2ZW50LmN0cmxLZXkgKSB7CgkJCSQoIGV2ZW50LmN1cnJlbnRUYXJnZXQgKS5wcmV2KCkudHJpZ2dlciggImZvY3VzIiApOwoJCX0KCX0sCgoJcmVmcmVzaDogZnVuY3Rpb24oKSB7CgkJdmFyIG9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7CgkJdGhpcy5fcHJvY2Vzc1BhbmVscygpOwoKCQkvLyBXYXMgY29sbGFwc2VkIG9yIG5vIHBhbmVsCgkJaWYgKCAoIG9wdGlvbnMuYWN0aXZlID09PSBmYWxzZSAmJiBvcHRpb25zLmNvbGxhcHNpYmxlID09PSB0cnVlICkgfHwKCQkJCSF0aGlzLmhlYWRlcnMubGVuZ3RoICkgewoJCQlvcHRpb25zLmFjdGl2ZSA9IGZhbHNlOwoJCQl0aGlzLmFjdGl2ZSA9ICQoKTsKCgkJLy8gYWN0aXZlIGZhbHNlIG9ubHkgd2hlbiBjb2xsYXBzaWJsZSBpcyB0cnVlCgkJfSBlbHNlIGlmICggb3B0aW9ucy5hY3RpdmUgPT09IGZhbHNlICkgewoJCQl0aGlzLl9hY3RpdmF0ZSggMCApOwoKCQkvLyB3YXMgYWN0aXZlLCBidXQgYWN0aXZlIHBhbmVsIGlzIGdvbmUKCQl9IGVsc2UgaWYgKCB0aGlzLmFjdGl2ZS5sZW5ndGggJiYgISQuY29udGFpbnMoIHRoaXMuZWxlbWVudFsgMCBdLCB0aGlzLmFjdGl2ZVsgMCBdICkgKSB7CgoJCQkvLyBhbGwgcmVtYWluaW5nIHBhbmVsIGFyZSBkaXNhYmxlZAoJCQlpZiAoIHRoaXMuaGVhZGVycy5sZW5ndGggPT09IHRoaXMuaGVhZGVycy5maW5kKCAiLnVpLXN0YXRlLWRpc2FibGVkIiApLmxlbmd0aCApIHsKCQkJCW9wdGlvbnMuYWN0aXZlID0gZmFsc2U7CgkJCQl0aGlzLmFjdGl2ZSA9ICQoKTsKCgkJCS8vIGFjdGl2YXRlIHByZXZpb3VzIHBhbmVsCgkJCX0gZWxzZSB7CgkJCQl0aGlzLl9hY3RpdmF0ZSggTWF0aC5tYXgoIDAsIG9wdGlvbnMuYWN0aXZlIC0gMSApICk7CgkJCX0KCgkJLy8gd2FzIGFjdGl2ZSwgYWN0aXZlIHBhbmVsIHN0aWxsIGV4aXN0cwoJCX0gZWxzZSB7CgoJCQkvLyBtYWtlIHN1cmUgYWN0aXZlIGluZGV4IGlzIGNvcnJlY3QKCQkJb3B0aW9ucy5hY3RpdmUgPSB0aGlzLmhlYWRlcnMuaW5kZXgoIHRoaXMuYWN0aXZlICk7CgkJfQoKCQl0aGlzLl9kZXN0cm95SWNvbnMoKTsKCgkJdGhpcy5fcmVmcmVzaCgpOwoJfSwKCglfcHJvY2Vzc1BhbmVsczogZnVuY3Rpb24oKSB7CgkJdmFyIHByZXZIZWFkZXJzID0gdGhpcy5oZWFkZXJzLAoJCQlwcmV2UGFuZWxzID0gdGhpcy5wYW5lbHM7CgoJCXRoaXMuaGVhZGVycyA9IHRoaXMuZWxlbWVudC5maW5kKCB0aGlzLm9wdGlvbnMuaGVhZGVyICk7CgkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMuaGVhZGVycywgInVpLWFjY29yZGlvbi1oZWFkZXIgdWktYWNjb3JkaW9uLWhlYWRlci1jb2xsYXBzZWQiLAoJCQkidWktc3RhdGUtZGVmYXVsdCIgKTsKCgkJdGhpcy5wYW5lbHMgPSB0aGlzLmhlYWRlcnMubmV4dCgpLmZpbHRlciggIjpub3QoLnVpLWFjY29yZGlvbi1jb250ZW50LWFjdGl2ZSkiICkuaGlkZSgpOwoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLnBhbmVscywgInVpLWFjY29yZGlvbi1jb250ZW50IiwgInVpLWhlbHBlci1yZXNldCB1aS13aWRnZXQtY29udGVudCIgKTsKCgkJLy8gQXZvaWQgbWVtb3J5IGxlYWtzICgjMTAwNTYpCgkJaWYgKCBwcmV2UGFuZWxzICkgewoJCQl0aGlzLl9vZmYoIHByZXZIZWFkZXJzLm5vdCggdGhpcy5oZWFkZXJzICkgKTsKCQkJdGhpcy5fb2ZmKCBwcmV2UGFuZWxzLm5vdCggdGhpcy5wYW5lbHMgKSApOwoJCX0KCX0sCgoJX3JlZnJlc2g6IGZ1bmN0aW9uKCkgewoJCXZhciBtYXhIZWlnaHQsCgkJCW9wdGlvbnMgPSB0aGlzLm9wdGlvbnMsCgkJCWhlaWdodFN0eWxlID0gb3B0aW9ucy5oZWlnaHRTdHlsZSwKCQkJcGFyZW50ID0gdGhpcy5lbGVtZW50LnBhcmVudCgpOwoKCQl0aGlzLmFjdGl2ZSA9IHRoaXMuX2ZpbmRBY3RpdmUoIG9wdGlvbnMuYWN0aXZlICk7CgkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMuYWN0aXZlLCAidWktYWNjb3JkaW9uLWhlYWRlci1hY3RpdmUiLCAidWktc3RhdGUtYWN0aXZlIiApCgkJCS5fcmVtb3ZlQ2xhc3MoIHRoaXMuYWN0aXZlLCAidWktYWNjb3JkaW9uLWhlYWRlci1jb2xsYXBzZWQiICk7CgkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMuYWN0aXZlLm5leHQoKSwgInVpLWFjY29yZGlvbi1jb250ZW50LWFjdGl2ZSIgKTsKCQl0aGlzLmFjdGl2ZS5uZXh0KCkuc2hvdygpOwoKCQl0aGlzLmhlYWRlcnMKCQkJLmF0dHIoICJyb2xlIiwgInRhYiIgKQoJCQkuZWFjaCggZnVuY3Rpb24oKSB7CgkJCQl2YXIgaGVhZGVyID0gJCggdGhpcyApLAoJCQkJCWhlYWRlcklkID0gaGVhZGVyLnVuaXF1ZUlkKCkuYXR0ciggImlkIiApLAoJCQkJCXBhbmVsID0gaGVhZGVyLm5leHQoKSwKCQkJCQlwYW5lbElkID0gcGFuZWwudW5pcXVlSWQoKS5hdHRyKCAiaWQiICk7CgkJCQloZWFkZXIuYXR0ciggImFyaWEtY29udHJvbHMiLCBwYW5lbElkICk7CgkJCQlwYW5lbC5hdHRyKCAiYXJpYS1sYWJlbGxlZGJ5IiwgaGVhZGVySWQgKTsKCQkJfSApCgkJCS5uZXh0KCkKCQkJCS5hdHRyKCAicm9sZSIsICJ0YWJwYW5lbCIgKTsKCgkJdGhpcy5oZWFkZXJzCgkJCS5ub3QoIHRoaXMuYWN0aXZlICkKCQkJCS5hdHRyKCB7CgkJCQkJImFyaWEtc2VsZWN0ZWQiOiAiZmFsc2UiLAoJCQkJCSJhcmlhLWV4cGFuZGVkIjogImZhbHNlIiwKCQkJCQl0YWJJbmRleDogLTEKCQkJCX0gKQoJCQkJLm5leHQoKQoJCQkJCS5hdHRyKCB7CgkJCQkJCSJhcmlhLWhpZGRlbiI6ICJ0cnVlIgoJCQkJCX0gKQoJCQkJCS5oaWRlKCk7CgoJCS8vIE1ha2Ugc3VyZSBhdCBsZWFzdCBvbmUgaGVhZGVyIGlzIGluIHRoZSB0YWIgb3JkZXIKCQlpZiAoICF0aGlzLmFjdGl2ZS5sZW5ndGggKSB7CgkJCXRoaXMuaGVhZGVycy5lcSggMCApLmF0dHIoICJ0YWJJbmRleCIsIDAgKTsKCQl9IGVsc2UgewoJCQl0aGlzLmFjdGl2ZS5hdHRyKCB7CgkJCQkiYXJpYS1zZWxlY3RlZCI6ICJ0cnVlIiwKCQkJCSJhcmlhLWV4cGFuZGVkIjogInRydWUiLAoJCQkJdGFiSW5kZXg6IDAKCQkJfSApCgkJCQkubmV4dCgpCgkJCQkJLmF0dHIoIHsKCQkJCQkJImFyaWEtaGlkZGVuIjogImZhbHNlIgoJCQkJCX0gKTsKCQl9CgoJCXRoaXMuX2NyZWF0ZUljb25zKCk7CgoJCXRoaXMuX3NldHVwRXZlbnRzKCBvcHRpb25zLmV2ZW50ICk7CgoJCWlmICggaGVpZ2h0U3R5bGUgPT09ICJmaWxsIiApIHsKCQkJbWF4SGVpZ2h0ID0gcGFyZW50LmhlaWdodCgpOwoJCQl0aGlzLmVsZW1lbnQuc2libGluZ3MoICI6dmlzaWJsZSIgKS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCXZhciBlbGVtID0gJCggdGhpcyApLAoJCQkJCXBvc2l0aW9uID0gZWxlbS5jc3MoICJwb3NpdGlvbiIgKTsKCgkJCQlpZiAoIHBvc2l0aW9uID09PSAiYWJzb2x1dGUiIHx8IHBvc2l0aW9uID09PSAiZml4ZWQiICkgewoJCQkJCXJldHVybjsKCQkJCX0KCQkJCW1heEhlaWdodCAtPSBlbGVtLm91dGVySGVpZ2h0KCB0cnVlICk7CgkJCX0gKTsKCgkJCXRoaXMuaGVhZGVycy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCW1heEhlaWdodCAtPSAkKCB0aGlzICkub3V0ZXJIZWlnaHQoIHRydWUgKTsKCQkJfSApOwoKCQkJdGhpcy5oZWFkZXJzLm5leHQoKQoJCQkJLmVhY2goIGZ1bmN0aW9uKCkgewoJCQkJCSQoIHRoaXMgKS5oZWlnaHQoIE1hdGgubWF4KCAwLCBtYXhIZWlnaHQgLQoJCQkJCQkkKCB0aGlzICkuaW5uZXJIZWlnaHQoKSArICQoIHRoaXMgKS5oZWlnaHQoKSApICk7CgkJCQl9ICkKCQkJCS5jc3MoICJvdmVyZmxvdyIsICJhdXRvIiApOwoJCX0gZWxzZSBpZiAoIGhlaWdodFN0eWxlID09PSAiYXV0byIgKSB7CgkJCW1heEhlaWdodCA9IDA7CgkJCXRoaXMuaGVhZGVycy5uZXh0KCkKCQkJCS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCQl2YXIgaXNWaXNpYmxlID0gJCggdGhpcyApLmlzKCAiOnZpc2libGUiICk7CgkJCQkJaWYgKCAhaXNWaXNpYmxlICkgewoJCQkJCQkkKCB0aGlzICkuc2hvdygpOwoJCQkJCX0KCQkJCQltYXhIZWlnaHQgPSBNYXRoLm1heCggbWF4SGVpZ2h0LCAkKCB0aGlzICkuY3NzKCAiaGVpZ2h0IiwgIiIgKS5oZWlnaHQoKSApOwoJCQkJCWlmICggIWlzVmlzaWJsZSApIHsKCQkJCQkJJCggdGhpcyApLmhpZGUoKTsKCQkJCQl9CgkJCQl9ICkKCQkJCS5oZWlnaHQoIG1heEhlaWdodCApOwoJCX0KCX0sCgoJX2FjdGl2YXRlOiBmdW5jdGlvbiggaW5kZXggKSB7CgkJdmFyIGFjdGl2ZSA9IHRoaXMuX2ZpbmRBY3RpdmUoIGluZGV4IClbIDAgXTsKCgkJLy8gVHJ5aW5nIHRvIGFjdGl2YXRlIHRoZSBhbHJlYWR5IGFjdGl2ZSBwYW5lbAoJCWlmICggYWN0aXZlID09PSB0aGlzLmFjdGl2ZVsgMCBdICkgewoJCQlyZXR1cm47CgkJfQoKCQkvLyBUcnlpbmcgdG8gY29sbGFwc2UsIHNpbXVsYXRlIGEgY2xpY2sgb24gdGhlIGN1cnJlbnRseSBhY3RpdmUgaGVhZGVyCgkJYWN0aXZlID0gYWN0aXZlIHx8IHRoaXMuYWN0aXZlWyAwIF07CgoJCXRoaXMuX2V2ZW50SGFuZGxlciggewoJCQl0YXJnZXQ6IGFjdGl2ZSwKCQkJY3VycmVudFRhcmdldDogYWN0aXZlLAoJCQlwcmV2ZW50RGVmYXVsdDogJC5ub29wCgkJfSApOwoJfSwKCglfZmluZEFjdGl2ZTogZnVuY3Rpb24oIHNlbGVjdG9yICkgewoJCXJldHVybiB0eXBlb2Ygc2VsZWN0b3IgPT09ICJudW1iZXIiID8gdGhpcy5oZWFkZXJzLmVxKCBzZWxlY3RvciApIDogJCgpOwoJfSwKCglfc2V0dXBFdmVudHM6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgZXZlbnRzID0gewoJCQlrZXlkb3duOiAiX2tleWRvd24iCgkJfTsKCQlpZiAoIGV2ZW50ICkgewoJCQkkLmVhY2goIGV2ZW50LnNwbGl0KCAiICIgKSwgZnVuY3Rpb24oIGluZGV4LCBldmVudE5hbWUgKSB7CgkJCQlldmVudHNbIGV2ZW50TmFtZSBdID0gIl9ldmVudEhhbmRsZXIiOwoJCQl9ICk7CgkJfQoKCQl0aGlzLl9vZmYoIHRoaXMuaGVhZGVycy5hZGQoIHRoaXMuaGVhZGVycy5uZXh0KCkgKSApOwoJCXRoaXMuX29uKCB0aGlzLmhlYWRlcnMsIGV2ZW50cyApOwoJCXRoaXMuX29uKCB0aGlzLmhlYWRlcnMubmV4dCgpLCB7IGtleWRvd246ICJfcGFuZWxLZXlEb3duIiB9ICk7CgkJdGhpcy5faG92ZXJhYmxlKCB0aGlzLmhlYWRlcnMgKTsKCQl0aGlzLl9mb2N1c2FibGUoIHRoaXMuaGVhZGVycyApOwoJfSwKCglfZXZlbnRIYW5kbGVyOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdmFyIGFjdGl2ZUNoaWxkcmVuLCBjbGlja2VkQ2hpbGRyZW4sCgkJCW9wdGlvbnMgPSB0aGlzLm9wdGlvbnMsCgkJCWFjdGl2ZSA9IHRoaXMuYWN0aXZlLAoJCQljbGlja2VkID0gJCggZXZlbnQuY3VycmVudFRhcmdldCApLAoJCQljbGlja2VkSXNBY3RpdmUgPSBjbGlja2VkWyAwIF0gPT09IGFjdGl2ZVsgMCBdLAoJCQljb2xsYXBzaW5nID0gY2xpY2tlZElzQWN0aXZlICYmIG9wdGlvbnMuY29sbGFwc2libGUsCgkJCXRvU2hvdyA9IGNvbGxhcHNpbmcgPyAkKCkgOiBjbGlja2VkLm5leHQoKSwKCQkJdG9IaWRlID0gYWN0aXZlLm5leHQoKSwKCQkJZXZlbnREYXRhID0gewoJCQkJb2xkSGVhZGVyOiBhY3RpdmUsCgkJCQlvbGRQYW5lbDogdG9IaWRlLAoJCQkJbmV3SGVhZGVyOiBjb2xsYXBzaW5nID8gJCgpIDogY2xpY2tlZCwKCQkJCW5ld1BhbmVsOiB0b1Nob3cKCQkJfTsKCgkJZXZlbnQucHJldmVudERlZmF1bHQoKTsKCgkJaWYgKAoKCQkJCS8vIGNsaWNrIG9uIGFjdGl2ZSBoZWFkZXIsIGJ1dCBub3QgY29sbGFwc2libGUKCQkJCSggY2xpY2tlZElzQWN0aXZlICYmICFvcHRpb25zLmNvbGxhcHNpYmxlICkgfHwKCgkJCQkvLyBhbGxvdyBjYW5jZWxpbmcgYWN0aXZhdGlvbgoJCQkJKCB0aGlzLl90cmlnZ2VyKCAiYmVmb3JlQWN0aXZhdGUiLCBldmVudCwgZXZlbnREYXRhICkgPT09IGZhbHNlICkgKSB7CgkJCXJldHVybjsKCQl9CgoJCW9wdGlvbnMuYWN0aXZlID0gY29sbGFwc2luZyA/IGZhbHNlIDogdGhpcy5oZWFkZXJzLmluZGV4KCBjbGlja2VkICk7CgoJCS8vIFdoZW4gdGhlIGNhbGwgdG8gLl90b2dnbGUoKSBjb21lcyBhZnRlciB0aGUgY2xhc3MgY2hhbmdlcwoJCS8vIGl0IGNhdXNlcyBhIHZlcnkgb2RkIGJ1ZyBpbiBJRSA4IChzZWUgIzY3MjApCgkJdGhpcy5hY3RpdmUgPSBjbGlja2VkSXNBY3RpdmUgPyAkKCkgOiBjbGlja2VkOwoJCXRoaXMuX3RvZ2dsZSggZXZlbnREYXRhICk7CgoJCS8vIFN3aXRjaCBjbGFzc2VzCgkJLy8gY29ybmVyIGNsYXNzZXMgb24gdGhlIHByZXZpb3VzbHkgYWN0aXZlIGhlYWRlciBzdGF5IGFmdGVyIHRoZSBhbmltYXRpb24KCQl0aGlzLl9yZW1vdmVDbGFzcyggYWN0aXZlLCAidWktYWNjb3JkaW9uLWhlYWRlci1hY3RpdmUiLCAidWktc3RhdGUtYWN0aXZlIiApOwoJCWlmICggb3B0aW9ucy5pY29ucyApIHsKCQkJYWN0aXZlQ2hpbGRyZW4gPSBhY3RpdmUuY2hpbGRyZW4oICIudWktYWNjb3JkaW9uLWhlYWRlci1pY29uIiApOwoJCQl0aGlzLl9yZW1vdmVDbGFzcyggYWN0aXZlQ2hpbGRyZW4sIG51bGwsIG9wdGlvbnMuaWNvbnMuYWN0aXZlSGVhZGVyICkKCQkJCS5fYWRkQ2xhc3MoIGFjdGl2ZUNoaWxkcmVuLCBudWxsLCBvcHRpb25zLmljb25zLmhlYWRlciApOwoJCX0KCgkJaWYgKCAhY2xpY2tlZElzQWN0aXZlICkgewoJCQl0aGlzLl9yZW1vdmVDbGFzcyggY2xpY2tlZCwgInVpLWFjY29yZGlvbi1oZWFkZXItY29sbGFwc2VkIiApCgkJCQkuX2FkZENsYXNzKCBjbGlja2VkLCAidWktYWNjb3JkaW9uLWhlYWRlci1hY3RpdmUiLCAidWktc3RhdGUtYWN0aXZlIiApOwoJCQlpZiAoIG9wdGlvbnMuaWNvbnMgKSB7CgkJCQljbGlja2VkQ2hpbGRyZW4gPSBjbGlja2VkLmNoaWxkcmVuKCAiLnVpLWFjY29yZGlvbi1oZWFkZXItaWNvbiIgKTsKCQkJCXRoaXMuX3JlbW92ZUNsYXNzKCBjbGlja2VkQ2hpbGRyZW4sIG51bGwsIG9wdGlvbnMuaWNvbnMuaGVhZGVyICkKCQkJCQkuX2FkZENsYXNzKCBjbGlja2VkQ2hpbGRyZW4sIG51bGwsIG9wdGlvbnMuaWNvbnMuYWN0aXZlSGVhZGVyICk7CgkJCX0KCgkJCXRoaXMuX2FkZENsYXNzKCBjbGlja2VkLm5leHQoKSwgInVpLWFjY29yZGlvbi1jb250ZW50LWFjdGl2ZSIgKTsKCQl9Cgl9LAoKCV90b2dnbGU6IGZ1bmN0aW9uKCBkYXRhICkgewoJCXZhciB0b1Nob3cgPSBkYXRhLm5ld1BhbmVsLAoJCQl0b0hpZGUgPSB0aGlzLnByZXZTaG93Lmxlbmd0aCA/IHRoaXMucHJldlNob3cgOiBkYXRhLm9sZFBhbmVsOwoKCQkvLyBIYW5kbGUgYWN0aXZhdGluZyBhIHBhbmVsIGR1cmluZyB0aGUgYW5pbWF0aW9uIGZvciBhbm90aGVyIGFjdGl2YXRpb24KCQl0aGlzLnByZXZTaG93LmFkZCggdGhpcy5wcmV2SGlkZSApLnN0b3AoIHRydWUsIHRydWUgKTsKCQl0aGlzLnByZXZTaG93ID0gdG9TaG93OwoJCXRoaXMucHJldkhpZGUgPSB0b0hpZGU7CgoJCWlmICggdGhpcy5vcHRpb25zLmFuaW1hdGUgKSB7CgkJCXRoaXMuX2FuaW1hdGUoIHRvU2hvdywgdG9IaWRlLCBkYXRhICk7CgkJfSBlbHNlIHsKCQkJdG9IaWRlLmhpZGUoKTsKCQkJdG9TaG93LnNob3coKTsKCQkJdGhpcy5fdG9nZ2xlQ29tcGxldGUoIGRhdGEgKTsKCQl9CgoJCXRvSGlkZS5hdHRyKCB7CgkJCSJhcmlhLWhpZGRlbiI6ICJ0cnVlIgoJCX0gKTsKCQl0b0hpZGUucHJldigpLmF0dHIoIHsKCQkJImFyaWEtc2VsZWN0ZWQiOiAiZmFsc2UiLAoJCQkiYXJpYS1leHBhbmRlZCI6ICJmYWxzZSIKCQl9ICk7CgoJCS8vIGlmIHdlJ3JlIHN3aXRjaGluZyBwYW5lbHMsIHJlbW92ZSB0aGUgb2xkIGhlYWRlciBmcm9tIHRoZSB0YWIgb3JkZXIKCQkvLyBpZiB3ZSdyZSBvcGVuaW5nIGZyb20gY29sbGFwc2VkIHN0YXRlLCByZW1vdmUgdGhlIHByZXZpb3VzIGhlYWRlciBmcm9tIHRoZSB0YWIgb3JkZXIKCQkvLyBpZiB3ZSdyZSBjb2xsYXBzaW5nLCB0aGVuIGtlZXAgdGhlIGNvbGxhcHNpbmcgaGVhZGVyIGluIHRoZSB0YWIgb3JkZXIKCQlpZiAoIHRvU2hvdy5sZW5ndGggJiYgdG9IaWRlLmxlbmd0aCApIHsKCQkJdG9IaWRlLnByZXYoKS5hdHRyKCB7CgkJCQkidGFiSW5kZXgiOiAtMSwKCQkJCSJhcmlhLWV4cGFuZGVkIjogImZhbHNlIgoJCQl9ICk7CgkJfSBlbHNlIGlmICggdG9TaG93Lmxlbmd0aCApIHsKCQkJdGhpcy5oZWFkZXJzLmZpbHRlciggZnVuY3Rpb24oKSB7CgkJCQlyZXR1cm4gcGFyc2VJbnQoICQoIHRoaXMgKS5hdHRyKCAidGFiSW5kZXgiICksIDEwICkgPT09IDA7CgkJCX0gKQoJCQkJLmF0dHIoICJ0YWJJbmRleCIsIC0xICk7CgkJfQoKCQl0b1Nob3cKCQkJLmF0dHIoICJhcmlhLWhpZGRlbiIsICJmYWxzZSIgKQoJCQkucHJldigpCgkJCQkuYXR0ciggewoJCQkJCSJhcmlhLXNlbGVjdGVkIjogInRydWUiLAoJCQkJCSJhcmlhLWV4cGFuZGVkIjogInRydWUiLAoJCQkJCXRhYkluZGV4OiAwCgkJCQl9ICk7Cgl9LAoKCV9hbmltYXRlOiBmdW5jdGlvbiggdG9TaG93LCB0b0hpZGUsIGRhdGEgKSB7CgkJdmFyIHRvdGFsLCBlYXNpbmcsIGR1cmF0aW9uLAoJCQl0aGF0ID0gdGhpcywKCQkJYWRqdXN0ID0gMCwKCQkJYm94U2l6aW5nID0gdG9TaG93LmNzcyggImJveC1zaXppbmciICksCgkJCWRvd24gPSB0b1Nob3cubGVuZ3RoICYmCgkJCQkoICF0b0hpZGUubGVuZ3RoIHx8ICggdG9TaG93LmluZGV4KCkgPCB0b0hpZGUuaW5kZXgoKSApICksCgkJCWFuaW1hdGUgPSB0aGlzLm9wdGlvbnMuYW5pbWF0ZSB8fCB7fSwKCQkJb3B0aW9ucyA9IGRvd24gJiYgYW5pbWF0ZS5kb3duIHx8IGFuaW1hdGUsCgkJCWNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CgkJCQl0aGF0Ll90b2dnbGVDb21wbGV0ZSggZGF0YSApOwoJCQl9OwoKCQlpZiAoIHR5cGVvZiBvcHRpb25zID09PSAibnVtYmVyIiApIHsKCQkJZHVyYXRpb24gPSBvcHRpb25zOwoJCX0KCQlpZiAoIHR5cGVvZiBvcHRpb25zID09PSAic3RyaW5nIiApIHsKCQkJZWFzaW5nID0gb3B0aW9uczsKCQl9CgoJCS8vIGZhbGwgYmFjayBmcm9tIG9wdGlvbnMgdG8gYW5pbWF0aW9uIGluIGNhc2Ugb2YgcGFydGlhbCBkb3duIHNldHRpbmdzCgkJZWFzaW5nID0gZWFzaW5nIHx8IG9wdGlvbnMuZWFzaW5nIHx8IGFuaW1hdGUuZWFzaW5nOwoJCWR1cmF0aW9uID0gZHVyYXRpb24gfHwgb3B0aW9ucy5kdXJhdGlvbiB8fCBhbmltYXRlLmR1cmF0aW9uOwoKCQlpZiAoICF0b0hpZGUubGVuZ3RoICkgewoJCQlyZXR1cm4gdG9TaG93LmFuaW1hdGUoIHRoaXMuc2hvd1Byb3BzLCBkdXJhdGlvbiwgZWFzaW5nLCBjb21wbGV0ZSApOwoJCX0KCQlpZiAoICF0b1Nob3cubGVuZ3RoICkgewoJCQlyZXR1cm4gdG9IaWRlLmFuaW1hdGUoIHRoaXMuaGlkZVByb3BzLCBkdXJhdGlvbiwgZWFzaW5nLCBjb21wbGV0ZSApOwoJCX0KCgkJdG90YWwgPSB0b1Nob3cuc2hvdygpLm91dGVySGVpZ2h0KCk7CgkJdG9IaWRlLmFuaW1hdGUoIHRoaXMuaGlkZVByb3BzLCB7CgkJCWR1cmF0aW9uOiBkdXJhdGlvbiwKCQkJZWFzaW5nOiBlYXNpbmcsCgkJCXN0ZXA6IGZ1bmN0aW9uKCBub3csIGZ4ICkgewoJCQkJZngubm93ID0gTWF0aC5yb3VuZCggbm93ICk7CgkJCX0KCQl9ICk7CgkJdG9TaG93CgkJCS5oaWRlKCkKCQkJLmFuaW1hdGUoIHRoaXMuc2hvd1Byb3BzLCB7CgkJCQlkdXJhdGlvbjogZHVyYXRpb24sCgkJCQllYXNpbmc6IGVhc2luZywKCQkJCWNvbXBsZXRlOiBjb21wbGV0ZSwKCQkJCXN0ZXA6IGZ1bmN0aW9uKCBub3csIGZ4ICkgewoJCQkJCWZ4Lm5vdyA9IE1hdGgucm91bmQoIG5vdyApOwoJCQkJCWlmICggZngucHJvcCAhPT0gImhlaWdodCIgKSB7CgkJCQkJCWlmICggYm94U2l6aW5nID09PSAiY29udGVudC1ib3giICkgewoJCQkJCQkJYWRqdXN0ICs9IGZ4Lm5vdzsKCQkJCQkJfQoJCQkJCX0gZWxzZSBpZiAoIHRoYXQub3B0aW9ucy5oZWlnaHRTdHlsZSAhPT0gImNvbnRlbnQiICkgewoJCQkJCQlmeC5ub3cgPSBNYXRoLnJvdW5kKCB0b3RhbCAtIHRvSGlkZS5vdXRlckhlaWdodCgpIC0gYWRqdXN0ICk7CgkJCQkJCWFkanVzdCA9IDA7CgkJCQkJfQoJCQkJfQoJCQl9ICk7Cgl9LAoKCV90b2dnbGVDb21wbGV0ZTogZnVuY3Rpb24oIGRhdGEgKSB7CgkJdmFyIHRvSGlkZSA9IGRhdGEub2xkUGFuZWwsCgkJCXByZXYgPSB0b0hpZGUucHJldigpOwoKCQl0aGlzLl9yZW1vdmVDbGFzcyggdG9IaWRlLCAidWktYWNjb3JkaW9uLWNvbnRlbnQtYWN0aXZlIiApOwoJCXRoaXMuX3JlbW92ZUNsYXNzKCBwcmV2LCAidWktYWNjb3JkaW9uLWhlYWRlci1hY3RpdmUiICkKCQkJLl9hZGRDbGFzcyggcHJldiwgInVpLWFjY29yZGlvbi1oZWFkZXItY29sbGFwc2VkIiApOwoKCQkvLyBXb3JrIGFyb3VuZCBmb3IgcmVuZGVyaW5nIGJ1ZyBpbiBJRSAoIzU0MjEpCgkJaWYgKCB0b0hpZGUubGVuZ3RoICkgewoJCQl0b0hpZGUucGFyZW50KClbIDAgXS5jbGFzc05hbWUgPSB0b0hpZGUucGFyZW50KClbIDAgXS5jbGFzc05hbWU7CgkJfQoJCXRoaXMuX3RyaWdnZXIoICJhY3RpdmF0ZSIsIG51bGwsIGRhdGEgKTsKCX0KfSApOwoKCi8qIQogKiBqUXVlcnkgVUkgTWVudSAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IE1lbnUKLy8+Pmdyb3VwOiBXaWRnZXRzCi8vPj5kZXNjcmlwdGlvbjogQ3JlYXRlcyBuZXN0YWJsZSBtZW51cy4KLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL21lbnUvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9tZW51LwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvY29yZS5jc3MKLy8+PmNzcy5zdHJ1Y3R1cmU6IC4uLy4uL3RoZW1lcy9iYXNlL21lbnUuY3NzCi8vPj5jc3MudGhlbWU6IC4uLy4uL3RoZW1lcy9iYXNlL3RoZW1lLmNzcwoKCgp2YXIgd2lkZ2V0c01lbnUgPSAkLndpZGdldCggInVpLm1lbnUiLCB7Cgl2ZXJzaW9uOiAiMS4xMi4xIiwKCWRlZmF1bHRFbGVtZW50OiAiPHVsPiIsCglkZWxheTogMzAwLAoJb3B0aW9uczogewoJCWljb25zOiB7CgkJCXN1Ym1lbnU6ICJ1aS1pY29uLWNhcmV0LTEtZSIKCQl9LAoJCWl0ZW1zOiAiPiAqIiwKCQltZW51czogInVsIiwKCQlwb3NpdGlvbjogewoJCQlteTogImxlZnQgdG9wIiwKCQkJYXQ6ICJyaWdodCB0b3AiCgkJfSwKCQlyb2xlOiAibWVudSIsCgoJCS8vIENhbGxiYWNrcwoJCWJsdXI6IG51bGwsCgkJZm9jdXM6IG51bGwsCgkJc2VsZWN0OiBudWxsCgl9LAoKCV9jcmVhdGU6IGZ1bmN0aW9uKCkgewoJCXRoaXMuYWN0aXZlTWVudSA9IHRoaXMuZWxlbWVudDsKCgkJLy8gRmxhZyB1c2VkIHRvIHByZXZlbnQgZmlyaW5nIG9mIHRoZSBjbGljayBoYW5kbGVyCgkJLy8gYXMgdGhlIGV2ZW50IGJ1YmJsZXMgdXAgdGhyb3VnaCBuZXN0ZWQgbWVudXMKCQl0aGlzLm1vdXNlSGFuZGxlZCA9IGZhbHNlOwoJCXRoaXMuZWxlbWVudAoJCQkudW5pcXVlSWQoKQoJCQkuYXR0ciggewoJCQkJcm9sZTogdGhpcy5vcHRpb25zLnJvbGUsCgkJCQl0YWJJbmRleDogMAoJCQl9ICk7CgoJCXRoaXMuX2FkZENsYXNzKCAidWktbWVudSIsICJ1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQiICk7CgkJdGhpcy5fb24oIHsKCgkJCS8vIFByZXZlbnQgZm9jdXMgZnJvbSBzdGlja2luZyB0byBsaW5rcyBpbnNpZGUgbWVudSBhZnRlciBjbGlja2luZwoJCQkvLyB0aGVtIChmb2N1cyBzaG91bGQgYWx3YXlzIHN0YXkgb24gVUwgZHVyaW5nIG5hdmlnYXRpb24pLgoJCQkibW91c2Vkb3duIC51aS1tZW51LWl0ZW0iOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOwoJCQl9LAoJCQkiY2xpY2sgLnVpLW1lbnUtaXRlbSI6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCXZhciB0YXJnZXQgPSAkKCBldmVudC50YXJnZXQgKTsKCQkJCXZhciBhY3RpdmUgPSAkKCAkLnVpLnNhZmVBY3RpdmVFbGVtZW50KCB0aGlzLmRvY3VtZW50WyAwIF0gKSApOwoJCQkJaWYgKCAhdGhpcy5tb3VzZUhhbmRsZWQgJiYgdGFyZ2V0Lm5vdCggIi51aS1zdGF0ZS1kaXNhYmxlZCIgKS5sZW5ndGggKSB7CgkJCQkJdGhpcy5zZWxlY3QoIGV2ZW50ICk7CgoJCQkJCS8vIE9ubHkgc2V0IHRoZSBtb3VzZUhhbmRsZWQgZmxhZyBpZiB0aGUgZXZlbnQgd2lsbCBidWJibGUsIHNlZSAjOTQ2OS4KCQkJCQlpZiAoICFldmVudC5pc1Byb3BhZ2F0aW9uU3RvcHBlZCgpICkgewoJCQkJCQl0aGlzLm1vdXNlSGFuZGxlZCA9IHRydWU7CgkJCQkJfQoKCQkJCQkvLyBPcGVuIHN1Ym1lbnUgb24gY2xpY2sKCQkJCQlpZiAoIHRhcmdldC5oYXMoICIudWktbWVudSIgKS5sZW5ndGggKSB7CgkJCQkJCXRoaXMuZXhwYW5kKCBldmVudCApOwoJCQkJCX0gZWxzZSBpZiAoICF0aGlzLmVsZW1lbnQuaXMoICI6Zm9jdXMiICkgJiYKCQkJCQkJCWFjdGl2ZS5jbG9zZXN0KCAiLnVpLW1lbnUiICkubGVuZ3RoICkgewoKCQkJCQkJLy8gUmVkaXJlY3QgZm9jdXMgdG8gdGhlIG1lbnUKCQkJCQkJdGhpcy5lbGVtZW50LnRyaWdnZXIoICJmb2N1cyIsIFsgdHJ1ZSBdICk7CgoJCQkJCQkvLyBJZiB0aGUgYWN0aXZlIGl0ZW0gaXMgb24gdGhlIHRvcCBsZXZlbCwgbGV0IGl0IHN0YXkgYWN0aXZlLgoJCQkJCQkvLyBPdGhlcndpc2UsIGJsdXIgdGhlIGFjdGl2ZSBpdGVtIHNpbmNlIGl0IGlzIG5vIGxvbmdlciB2aXNpYmxlLgoJCQkJCQlpZiAoIHRoaXMuYWN0aXZlICYmIHRoaXMuYWN0aXZlLnBhcmVudHMoICIudWktbWVudSIgKS5sZW5ndGggPT09IDEgKSB7CgkJCQkJCQljbGVhclRpbWVvdXQoIHRoaXMudGltZXIgKTsKCQkJCQkJfQoJCQkJCX0KCQkJCX0KCQkJfSwKCQkJIm1vdXNlZW50ZXIgLnVpLW1lbnUtaXRlbSI6IGZ1bmN0aW9uKCBldmVudCApIHsKCgkJCQkvLyBJZ25vcmUgbW91c2UgZXZlbnRzIHdoaWxlIHR5cGVhaGVhZCBpcyBhY3RpdmUsIHNlZSAjMTA0NTguCgkJCQkvLyBQcmV2ZW50cyBmb2N1c2luZyB0aGUgd3JvbmcgaXRlbSB3aGVuIHR5cGVhaGVhZCBjYXVzZXMgYSBzY3JvbGwgd2hpbGUgdGhlIG1vdXNlCgkJCQkvLyBpcyBvdmVyIGFuIGl0ZW0gaW4gdGhlIG1lbnUKCQkJCWlmICggdGhpcy5wcmV2aW91c0ZpbHRlciApIHsKCQkJCQlyZXR1cm47CgkJCQl9CgoJCQkJdmFyIGFjdHVhbFRhcmdldCA9ICQoIGV2ZW50LnRhcmdldCApLmNsb3Nlc3QoICIudWktbWVudS1pdGVtIiApLAoJCQkJCXRhcmdldCA9ICQoIGV2ZW50LmN1cnJlbnRUYXJnZXQgKTsKCgkJCQkvLyBJZ25vcmUgYnViYmxlZCBldmVudHMgb24gcGFyZW50IGl0ZW1zLCBzZWUgIzExNjQxCgkJCQlpZiAoIGFjdHVhbFRhcmdldFsgMCBdICE9PSB0YXJnZXRbIDAgXSApIHsKCQkJCQlyZXR1cm47CgkJCQl9CgoJCQkJLy8gUmVtb3ZlIHVpLXN0YXRlLWFjdGl2ZSBjbGFzcyBmcm9tIHNpYmxpbmdzIG9mIHRoZSBuZXdseSBmb2N1c2VkIG1lbnUgaXRlbQoJCQkJLy8gdG8gYXZvaWQgYSBqdW1wIGNhdXNlZCBieSBhZGphY2VudCBlbGVtZW50cyBib3RoIGhhdmluZyBhIGNsYXNzIHdpdGggYSBib3JkZXIKCQkJCXRoaXMuX3JlbW92ZUNsYXNzKCB0YXJnZXQuc2libGluZ3MoKS5jaGlsZHJlbiggIi51aS1zdGF0ZS1hY3RpdmUiICksCgkJCQkJbnVsbCwgInVpLXN0YXRlLWFjdGl2ZSIgKTsKCQkJCXRoaXMuZm9jdXMoIGV2ZW50LCB0YXJnZXQgKTsKCQkJfSwKCQkJbW91c2VsZWF2ZTogImNvbGxhcHNlQWxsIiwKCQkJIm1vdXNlbGVhdmUgLnVpLW1lbnUiOiAiY29sbGFwc2VBbGwiLAoJCQlmb2N1czogZnVuY3Rpb24oIGV2ZW50LCBrZWVwQWN0aXZlSXRlbSApIHsKCgkJCQkvLyBJZiB0aGVyZSdzIGFscmVhZHkgYW4gYWN0aXZlIGl0ZW0sIGtlZXAgaXQgYWN0aXZlCgkJCQkvLyBJZiBub3QsIGFjdGl2YXRlIHRoZSBmaXJzdCBpdGVtCgkJCQl2YXIgaXRlbSA9IHRoaXMuYWN0aXZlIHx8IHRoaXMuZWxlbWVudC5maW5kKCB0aGlzLm9wdGlvbnMuaXRlbXMgKS5lcSggMCApOwoKCQkJCWlmICggIWtlZXBBY3RpdmVJdGVtICkgewoJCQkJCXRoaXMuZm9jdXMoIGV2ZW50LCBpdGVtICk7CgkJCQl9CgkJCX0sCgkJCWJsdXI6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCXRoaXMuX2RlbGF5KCBmdW5jdGlvbigpIHsKCQkJCQl2YXIgbm90Q29udGFpbmVkID0gISQuY29udGFpbnMoCgkJCQkJCXRoaXMuZWxlbWVudFsgMCBdLAoJCQkJCQkkLnVpLnNhZmVBY3RpdmVFbGVtZW50KCB0aGlzLmRvY3VtZW50WyAwIF0gKQoJCQkJCSk7CgkJCQkJaWYgKCBub3RDb250YWluZWQgKSB7CgkJCQkJCXRoaXMuY29sbGFwc2VBbGwoIGV2ZW50ICk7CgkJCQkJfQoJCQkJfSApOwoJCQl9LAoJCQlrZXlkb3duOiAiX2tleWRvd24iCgkJfSApOwoKCQl0aGlzLnJlZnJlc2goKTsKCgkJLy8gQ2xpY2tzIG91dHNpZGUgb2YgYSBtZW51IGNvbGxhcHNlIGFueSBvcGVuIG1lbnVzCgkJdGhpcy5fb24oIHRoaXMuZG9jdW1lbnQsIHsKCQkJY2xpY2s6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCWlmICggdGhpcy5fY2xvc2VPbkRvY3VtZW50Q2xpY2soIGV2ZW50ICkgKSB7CgkJCQkJdGhpcy5jb2xsYXBzZUFsbCggZXZlbnQgKTsKCQkJCX0KCgkJCQkvLyBSZXNldCB0aGUgbW91c2VIYW5kbGVkIGZsYWcKCQkJCXRoaXMubW91c2VIYW5kbGVkID0gZmFsc2U7CgkJCX0KCQl9ICk7Cgl9LAoKCV9kZXN0cm95OiBmdW5jdGlvbigpIHsKCQl2YXIgaXRlbXMgPSB0aGlzLmVsZW1lbnQuZmluZCggIi51aS1tZW51LWl0ZW0iICkKCQkJCS5yZW1vdmVBdHRyKCAicm9sZSBhcmlhLWRpc2FibGVkIiApLAoJCQlzdWJtZW51cyA9IGl0ZW1zLmNoaWxkcmVuKCAiLnVpLW1lbnUtaXRlbS13cmFwcGVyIiApCgkJCQkucmVtb3ZlVW5pcXVlSWQoKQoJCQkJLnJlbW92ZUF0dHIoICJ0YWJJbmRleCByb2xlIGFyaWEtaGFzcG9wdXAiICk7CgoJCS8vIERlc3Ryb3kgKHN1YiltZW51cwoJCXRoaXMuZWxlbWVudAoJCQkucmVtb3ZlQXR0ciggImFyaWEtYWN0aXZlZGVzY2VuZGFudCIgKQoJCQkuZmluZCggIi51aS1tZW51IiApLmFkZEJhY2soKQoJCQkJLnJlbW92ZUF0dHIoICJyb2xlIGFyaWEtbGFiZWxsZWRieSBhcmlhLWV4cGFuZGVkIGFyaWEtaGlkZGVuIGFyaWEtZGlzYWJsZWQgIiArCgkJCQkJInRhYkluZGV4IiApCgkJCQkucmVtb3ZlVW5pcXVlSWQoKQoJCQkJLnNob3coKTsKCgkJc3VibWVudXMuY2hpbGRyZW4oKS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJdmFyIGVsZW0gPSAkKCB0aGlzICk7CgkJCWlmICggZWxlbS5kYXRhKCAidWktbWVudS1zdWJtZW51LWNhcmV0IiApICkgewoJCQkJZWxlbS5yZW1vdmUoKTsKCQkJfQoJCX0gKTsKCX0sCgoJX2tleWRvd246IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgbWF0Y2gsIHByZXYsIGNoYXJhY3Rlciwgc2tpcCwKCQkJcHJldmVudERlZmF1bHQgPSB0cnVlOwoKCQlzd2l0Y2ggKCBldmVudC5rZXlDb2RlICkgewoJCWNhc2UgJC51aS5rZXlDb2RlLlBBR0VfVVA6CgkJCXRoaXMucHJldmlvdXNQYWdlKCBldmVudCApOwoJCQlicmVhazsKCQljYXNlICQudWkua2V5Q29kZS5QQUdFX0RPV046CgkJCXRoaXMubmV4dFBhZ2UoIGV2ZW50ICk7CgkJCWJyZWFrOwoJCWNhc2UgJC51aS5rZXlDb2RlLkhPTUU6CgkJCXRoaXMuX21vdmUoICJmaXJzdCIsICJmaXJzdCIsIGV2ZW50ICk7CgkJCWJyZWFrOwoJCWNhc2UgJC51aS5rZXlDb2RlLkVORDoKCQkJdGhpcy5fbW92ZSggImxhc3QiLCAibGFzdCIsIGV2ZW50ICk7CgkJCWJyZWFrOwoJCWNhc2UgJC51aS5rZXlDb2RlLlVQOgoJCQl0aGlzLnByZXZpb3VzKCBldmVudCApOwoJCQlicmVhazsKCQljYXNlICQudWkua2V5Q29kZS5ET1dOOgoJCQl0aGlzLm5leHQoIGV2ZW50ICk7CgkJCWJyZWFrOwoJCWNhc2UgJC51aS5rZXlDb2RlLkxFRlQ6CgkJCXRoaXMuY29sbGFwc2UoIGV2ZW50ICk7CgkJCWJyZWFrOwoJCWNhc2UgJC51aS5rZXlDb2RlLlJJR0hUOgoJCQlpZiAoIHRoaXMuYWN0aXZlICYmICF0aGlzLmFjdGl2ZS5pcyggIi51aS1zdGF0ZS1kaXNhYmxlZCIgKSApIHsKCQkJCXRoaXMuZXhwYW5kKCBldmVudCApOwoJCQl9CgkJCWJyZWFrOwoJCWNhc2UgJC51aS5rZXlDb2RlLkVOVEVSOgoJCWNhc2UgJC51aS5rZXlDb2RlLlNQQUNFOgoJCQl0aGlzLl9hY3RpdmF0ZSggZXZlbnQgKTsKCQkJYnJlYWs7CgkJY2FzZSAkLnVpLmtleUNvZGUuRVNDQVBFOgoJCQl0aGlzLmNvbGxhcHNlKCBldmVudCApOwoJCQlicmVhazsKCQlkZWZhdWx0OgoJCQlwcmV2ZW50RGVmYXVsdCA9IGZhbHNlOwoJCQlwcmV2ID0gdGhpcy5wcmV2aW91c0ZpbHRlciB8fCAiIjsKCQkJc2tpcCA9IGZhbHNlOwoKCQkJLy8gU3VwcG9ydCBudW1iZXIgcGFkIHZhbHVlcwoJCQljaGFyYWN0ZXIgPSBldmVudC5rZXlDb2RlID49IDk2ICYmIGV2ZW50LmtleUNvZGUgPD0gMTA1ID8KCQkJCSggZXZlbnQua2V5Q29kZSAtIDk2ICkudG9TdHJpbmcoKSA6IFN0cmluZy5mcm9tQ2hhckNvZGUoIGV2ZW50LmtleUNvZGUgKTsKCgkJCWNsZWFyVGltZW91dCggdGhpcy5maWx0ZXJUaW1lciApOwoKCQkJaWYgKCBjaGFyYWN0ZXIgPT09IHByZXYgKSB7CgkJCQlza2lwID0gdHJ1ZTsKCQkJfSBlbHNlIHsKCQkJCWNoYXJhY3RlciA9IHByZXYgKyBjaGFyYWN0ZXI7CgkJCX0KCgkJCW1hdGNoID0gdGhpcy5fZmlsdGVyTWVudUl0ZW1zKCBjaGFyYWN0ZXIgKTsKCQkJbWF0Y2ggPSBza2lwICYmIG1hdGNoLmluZGV4KCB0aGlzLmFjdGl2ZS5uZXh0KCkgKSAhPT0gLTEgPwoJCQkJdGhpcy5hY3RpdmUubmV4dEFsbCggIi51aS1tZW51LWl0ZW0iICkgOgoJCQkJbWF0Y2g7CgoJCQkvLyBJZiBubyBtYXRjaGVzIG9uIHRoZSBjdXJyZW50IGZpbHRlciwgcmVzZXQgdG8gdGhlIGxhc3QgY2hhcmFjdGVyIHByZXNzZWQKCQkJLy8gdG8gbW92ZSBkb3duIHRoZSBtZW51IHRvIHRoZSBmaXJzdCBpdGVtIHRoYXQgc3RhcnRzIHdpdGggdGhhdCBjaGFyYWN0ZXIKCQkJaWYgKCAhbWF0Y2gubGVuZ3RoICkgewoJCQkJY2hhcmFjdGVyID0gU3RyaW5nLmZyb21DaGFyQ29kZSggZXZlbnQua2V5Q29kZSApOwoJCQkJbWF0Y2ggPSB0aGlzLl9maWx0ZXJNZW51SXRlbXMoIGNoYXJhY3RlciApOwoJCQl9CgoJCQlpZiAoIG1hdGNoLmxlbmd0aCApIHsKCQkJCXRoaXMuZm9jdXMoIGV2ZW50LCBtYXRjaCApOwoJCQkJdGhpcy5wcmV2aW91c0ZpbHRlciA9IGNoYXJhY3RlcjsKCQkJCXRoaXMuZmlsdGVyVGltZXIgPSB0aGlzLl9kZWxheSggZnVuY3Rpb24oKSB7CgkJCQkJZGVsZXRlIHRoaXMucHJldmlvdXNGaWx0ZXI7CgkJCQl9LCAxMDAwICk7CgkJCX0gZWxzZSB7CgkJCQlkZWxldGUgdGhpcy5wcmV2aW91c0ZpbHRlcjsKCQkJfQoJCX0KCgkJaWYgKCBwcmV2ZW50RGVmYXVsdCApIHsKCQkJZXZlbnQucHJldmVudERlZmF1bHQoKTsKCQl9Cgl9LAoKCV9hY3RpdmF0ZTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCWlmICggdGhpcy5hY3RpdmUgJiYgIXRoaXMuYWN0aXZlLmlzKCAiLnVpLXN0YXRlLWRpc2FibGVkIiApICkgewoJCQlpZiAoIHRoaXMuYWN0aXZlLmNoaWxkcmVuKCAiW2FyaWEtaGFzcG9wdXA9J3RydWUnXSIgKS5sZW5ndGggKSB7CgkJCQl0aGlzLmV4cGFuZCggZXZlbnQgKTsKCQkJfSBlbHNlIHsKCQkJCXRoaXMuc2VsZWN0KCBldmVudCApOwoJCQl9CgkJfQoJfSwKCglyZWZyZXNoOiBmdW5jdGlvbigpIHsKCQl2YXIgbWVudXMsIGl0ZW1zLCBuZXdTdWJtZW51cywgbmV3SXRlbXMsIG5ld1dyYXBwZXJzLAoJCQl0aGF0ID0gdGhpcywKCQkJaWNvbiA9IHRoaXMub3B0aW9ucy5pY29ucy5zdWJtZW51LAoJCQlzdWJtZW51cyA9IHRoaXMuZWxlbWVudC5maW5kKCB0aGlzLm9wdGlvbnMubWVudXMgKTsKCgkJdGhpcy5fdG9nZ2xlQ2xhc3MoICJ1aS1tZW51LWljb25zIiwgbnVsbCwgISF0aGlzLmVsZW1lbnQuZmluZCggIi51aS1pY29uIiApLmxlbmd0aCApOwoKCQkvLyBJbml0aWFsaXplIG5lc3RlZCBtZW51cwoJCW5ld1N1Ym1lbnVzID0gc3VibWVudXMuZmlsdGVyKCAiOm5vdCgudWktbWVudSkiICkKCQkJLmhpZGUoKQoJCQkuYXR0ciggewoJCQkJcm9sZTogdGhpcy5vcHRpb25zLnJvbGUsCgkJCQkiYXJpYS1oaWRkZW4iOiAidHJ1ZSIsCgkJCQkiYXJpYS1leHBhbmRlZCI6ICJmYWxzZSIKCQkJfSApCgkJCS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCXZhciBtZW51ID0gJCggdGhpcyApLAoJCQkJCWl0ZW0gPSBtZW51LnByZXYoKSwKCQkJCQlzdWJtZW51Q2FyZXQgPSAkKCAiPHNwYW4+IiApLmRhdGEoICJ1aS1tZW51LXN1Ym1lbnUtY2FyZXQiLCB0cnVlICk7CgoJCQkJdGhhdC5fYWRkQ2xhc3MoIHN1Ym1lbnVDYXJldCwgInVpLW1lbnUtaWNvbiIsICJ1aS1pY29uICIgKyBpY29uICk7CgkJCQlpdGVtCgkJCQkJLmF0dHIoICJhcmlhLWhhc3BvcHVwIiwgInRydWUiICkKCQkJCQkucHJlcGVuZCggc3VibWVudUNhcmV0ICk7CgkJCQltZW51LmF0dHIoICJhcmlhLWxhYmVsbGVkYnkiLCBpdGVtLmF0dHIoICJpZCIgKSApOwoJCQl9ICk7CgoJCXRoaXMuX2FkZENsYXNzKCBuZXdTdWJtZW51cywgInVpLW1lbnUiLCAidWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWZyb250IiApOwoKCQltZW51cyA9IHN1Ym1lbnVzLmFkZCggdGhpcy5lbGVtZW50ICk7CgkJaXRlbXMgPSBtZW51cy5maW5kKCB0aGlzLm9wdGlvbnMuaXRlbXMgKTsKCgkJLy8gSW5pdGlhbGl6ZSBtZW51LWl0ZW1zIGNvbnRhaW5pbmcgc3BhY2VzIGFuZC9vciBkYXNoZXMgb25seSBhcyBkaXZpZGVycwoJCWl0ZW1zLm5vdCggIi51aS1tZW51LWl0ZW0iICkuZWFjaCggZnVuY3Rpb24oKSB7CgkJCXZhciBpdGVtID0gJCggdGhpcyApOwoJCQlpZiAoIHRoYXQuX2lzRGl2aWRlciggaXRlbSApICkgewoJCQkJdGhhdC5fYWRkQ2xhc3MoIGl0ZW0sICJ1aS1tZW51LWRpdmlkZXIiLCAidWktd2lkZ2V0LWNvbnRlbnQiICk7CgkJCX0KCQl9ICk7CgoJCS8vIERvbid0IHJlZnJlc2ggbGlzdCBpdGVtcyB0aGF0IGFyZSBhbHJlYWR5IGFkYXB0ZWQKCQluZXdJdGVtcyA9IGl0ZW1zLm5vdCggIi51aS1tZW51LWl0ZW0sIC51aS1tZW51LWRpdmlkZXIiICk7CgkJbmV3V3JhcHBlcnMgPSBuZXdJdGVtcy5jaGlsZHJlbigpCgkJCS5ub3QoICIudWktbWVudSIgKQoJCQkJLnVuaXF1ZUlkKCkKCQkJCS5hdHRyKCB7CgkJCQkJdGFiSW5kZXg6IC0xLAoJCQkJCXJvbGU6IHRoaXMuX2l0ZW1Sb2xlKCkKCQkJCX0gKTsKCQl0aGlzLl9hZGRDbGFzcyggbmV3SXRlbXMsICJ1aS1tZW51LWl0ZW0iICkKCQkJLl9hZGRDbGFzcyggbmV3V3JhcHBlcnMsICJ1aS1tZW51LWl0ZW0td3JhcHBlciIgKTsKCgkJLy8gQWRkIGFyaWEtZGlzYWJsZWQgYXR0cmlidXRlIHRvIGFueSBkaXNhYmxlZCBtZW51IGl0ZW0KCQlpdGVtcy5maWx0ZXIoICIudWktc3RhdGUtZGlzYWJsZWQiICkuYXR0ciggImFyaWEtZGlzYWJsZWQiLCAidHJ1ZSIgKTsKCgkJLy8gSWYgdGhlIGFjdGl2ZSBpdGVtIGhhcyBiZWVuIHJlbW92ZWQsIGJsdXIgdGhlIG1lbnUKCQlpZiAoIHRoaXMuYWN0aXZlICYmICEkLmNvbnRhaW5zKCB0aGlzLmVsZW1lbnRbIDAgXSwgdGhpcy5hY3RpdmVbIDAgXSApICkgewoJCQl0aGlzLmJsdXIoKTsKCQl9Cgl9LAoKCV9pdGVtUm9sZTogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHsKCQkJbWVudTogIm1lbnVpdGVtIiwKCQkJbGlzdGJveDogIm9wdGlvbiIKCQl9WyB0aGlzLm9wdGlvbnMucm9sZSBdOwoJfSwKCglfc2V0T3B0aW9uOiBmdW5jdGlvbigga2V5LCB2YWx1ZSApIHsKCQlpZiAoIGtleSA9PT0gImljb25zIiApIHsKCQkJdmFyIGljb25zID0gdGhpcy5lbGVtZW50LmZpbmQoICIudWktbWVudS1pY29uIiApOwoJCQl0aGlzLl9yZW1vdmVDbGFzcyggaWNvbnMsIG51bGwsIHRoaXMub3B0aW9ucy5pY29ucy5zdWJtZW51ICkKCQkJCS5fYWRkQ2xhc3MoIGljb25zLCBudWxsLCB2YWx1ZS5zdWJtZW51ICk7CgkJfQoJCXRoaXMuX3N1cGVyKCBrZXksIHZhbHVlICk7Cgl9LAoKCV9zZXRPcHRpb25EaXNhYmxlZDogZnVuY3Rpb24oIHZhbHVlICkgewoJCXRoaXMuX3N1cGVyKCB2YWx1ZSApOwoKCQl0aGlzLmVsZW1lbnQuYXR0ciggImFyaWEtZGlzYWJsZWQiLCBTdHJpbmcoIHZhbHVlICkgKTsKCQl0aGlzLl90b2dnbGVDbGFzcyggbnVsbCwgInVpLXN0YXRlLWRpc2FibGVkIiwgISF2YWx1ZSApOwoJfSwKCglmb2N1czogZnVuY3Rpb24oIGV2ZW50LCBpdGVtICkgewoJCXZhciBuZXN0ZWQsIGZvY3VzZWQsIGFjdGl2ZVBhcmVudDsKCQl0aGlzLmJsdXIoIGV2ZW50LCBldmVudCAmJiBldmVudC50eXBlID09PSAiZm9jdXMiICk7CgoJCXRoaXMuX3Njcm9sbEludG9WaWV3KCBpdGVtICk7CgoJCXRoaXMuYWN0aXZlID0gaXRlbS5maXJzdCgpOwoKCQlmb2N1c2VkID0gdGhpcy5hY3RpdmUuY2hpbGRyZW4oICIudWktbWVudS1pdGVtLXdyYXBwZXIiICk7CgkJdGhpcy5fYWRkQ2xhc3MoIGZvY3VzZWQsIG51bGwsICJ1aS1zdGF0ZS1hY3RpdmUiICk7CgoJCS8vIE9ubHkgdXBkYXRlIGFyaWEtYWN0aXZlZGVzY2VuZGFudCBpZiB0aGVyZSdzIGEgcm9sZQoJCS8vIG90aGVyd2lzZSB3ZSBhc3N1bWUgZm9jdXMgaXMgbWFuYWdlZCBlbHNld2hlcmUKCQlpZiAoIHRoaXMub3B0aW9ucy5yb2xlICkgewoJCQl0aGlzLmVsZW1lbnQuYXR0ciggImFyaWEtYWN0aXZlZGVzY2VuZGFudCIsIGZvY3VzZWQuYXR0ciggImlkIiApICk7CgkJfQoKCQkvLyBIaWdobGlnaHQgYWN0aXZlIHBhcmVudCBtZW51IGl0ZW0sIGlmIGFueQoJCWFjdGl2ZVBhcmVudCA9IHRoaXMuYWN0aXZlCgkJCS5wYXJlbnQoKQoJCQkJLmNsb3Nlc3QoICIudWktbWVudS1pdGVtIiApCgkJCQkJLmNoaWxkcmVuKCAiLnVpLW1lbnUtaXRlbS13cmFwcGVyIiApOwoJCXRoaXMuX2FkZENsYXNzKCBhY3RpdmVQYXJlbnQsIG51bGwsICJ1aS1zdGF0ZS1hY3RpdmUiICk7CgoJCWlmICggZXZlbnQgJiYgZXZlbnQudHlwZSA9PT0gImtleWRvd24iICkgewoJCQl0aGlzLl9jbG9zZSgpOwoJCX0gZWxzZSB7CgkJCXRoaXMudGltZXIgPSB0aGlzLl9kZWxheSggZnVuY3Rpb24oKSB7CgkJCQl0aGlzLl9jbG9zZSgpOwoJCQl9LCB0aGlzLmRlbGF5ICk7CgkJfQoKCQluZXN0ZWQgPSBpdGVtLmNoaWxkcmVuKCAiLnVpLW1lbnUiICk7CgkJaWYgKCBuZXN0ZWQubGVuZ3RoICYmIGV2ZW50ICYmICggL15tb3VzZS8udGVzdCggZXZlbnQudHlwZSApICkgKSB7CgkJCXRoaXMuX3N0YXJ0T3BlbmluZyggbmVzdGVkICk7CgkJfQoJCXRoaXMuYWN0aXZlTWVudSA9IGl0ZW0ucGFyZW50KCk7CgoJCXRoaXMuX3RyaWdnZXIoICJmb2N1cyIsIGV2ZW50LCB7IGl0ZW06IGl0ZW0gfSApOwoJfSwKCglfc2Nyb2xsSW50b1ZpZXc6IGZ1bmN0aW9uKCBpdGVtICkgewoJCXZhciBib3JkZXJUb3AsIHBhZGRpbmdUb3AsIG9mZnNldCwgc2Nyb2xsLCBlbGVtZW50SGVpZ2h0LCBpdGVtSGVpZ2h0OwoJCWlmICggdGhpcy5faGFzU2Nyb2xsKCkgKSB7CgkJCWJvcmRlclRvcCA9IHBhcnNlRmxvYXQoICQuY3NzKCB0aGlzLmFjdGl2ZU1lbnVbIDAgXSwgImJvcmRlclRvcFdpZHRoIiApICkgfHwgMDsKCQkJcGFkZGluZ1RvcCA9IHBhcnNlRmxvYXQoICQuY3NzKCB0aGlzLmFjdGl2ZU1lbnVbIDAgXSwgInBhZGRpbmdUb3AiICkgKSB8fCAwOwoJCQlvZmZzZXQgPSBpdGVtLm9mZnNldCgpLnRvcCAtIHRoaXMuYWN0aXZlTWVudS5vZmZzZXQoKS50b3AgLSBib3JkZXJUb3AgLSBwYWRkaW5nVG9wOwoJCQlzY3JvbGwgPSB0aGlzLmFjdGl2ZU1lbnUuc2Nyb2xsVG9wKCk7CgkJCWVsZW1lbnRIZWlnaHQgPSB0aGlzLmFjdGl2ZU1lbnUuaGVpZ2h0KCk7CgkJCWl0ZW1IZWlnaHQgPSBpdGVtLm91dGVySGVpZ2h0KCk7CgoJCQlpZiAoIG9mZnNldCA8IDAgKSB7CgkJCQl0aGlzLmFjdGl2ZU1lbnUuc2Nyb2xsVG9wKCBzY3JvbGwgKyBvZmZzZXQgKTsKCQkJfSBlbHNlIGlmICggb2Zmc2V0ICsgaXRlbUhlaWdodCA+IGVsZW1lbnRIZWlnaHQgKSB7CgkJCQl0aGlzLmFjdGl2ZU1lbnUuc2Nyb2xsVG9wKCBzY3JvbGwgKyBvZmZzZXQgLSBlbGVtZW50SGVpZ2h0ICsgaXRlbUhlaWdodCApOwoJCQl9CgkJfQoJfSwKCglibHVyOiBmdW5jdGlvbiggZXZlbnQsIGZyb21Gb2N1cyApIHsKCQlpZiAoICFmcm9tRm9jdXMgKSB7CgkJCWNsZWFyVGltZW91dCggdGhpcy50aW1lciApOwoJCX0KCgkJaWYgKCAhdGhpcy5hY3RpdmUgKSB7CgkJCXJldHVybjsKCQl9CgoJCXRoaXMuX3JlbW92ZUNsYXNzKCB0aGlzLmFjdGl2ZS5jaGlsZHJlbiggIi51aS1tZW51LWl0ZW0td3JhcHBlciIgKSwKCQkJbnVsbCwgInVpLXN0YXRlLWFjdGl2ZSIgKTsKCgkJdGhpcy5fdHJpZ2dlciggImJsdXIiLCBldmVudCwgeyBpdGVtOiB0aGlzLmFjdGl2ZSB9ICk7CgkJdGhpcy5hY3RpdmUgPSBudWxsOwoJfSwKCglfc3RhcnRPcGVuaW5nOiBmdW5jdGlvbiggc3VibWVudSApIHsKCQljbGVhclRpbWVvdXQoIHRoaXMudGltZXIgKTsKCgkJLy8gRG9uJ3Qgb3BlbiBpZiBhbHJlYWR5IG9wZW4gZml4ZXMgYSBGaXJlZm94IGJ1ZyB0aGF0IGNhdXNlZCBhIC41IHBpeGVsCgkJLy8gc2hpZnQgaW4gdGhlIHN1Ym1lbnUgcG9zaXRpb24gd2hlbiBtb3VzaW5nIG92ZXIgdGhlIGNhcmV0IGljb24KCQlpZiAoIHN1Ym1lbnUuYXR0ciggImFyaWEtaGlkZGVuIiApICE9PSAidHJ1ZSIgKSB7CgkJCXJldHVybjsKCQl9CgoJCXRoaXMudGltZXIgPSB0aGlzLl9kZWxheSggZnVuY3Rpb24oKSB7CgkJCXRoaXMuX2Nsb3NlKCk7CgkJCXRoaXMuX29wZW4oIHN1Ym1lbnUgKTsKCQl9LCB0aGlzLmRlbGF5ICk7Cgl9LAoKCV9vcGVuOiBmdW5jdGlvbiggc3VibWVudSApIHsKCQl2YXIgcG9zaXRpb24gPSAkLmV4dGVuZCggewoJCQlvZjogdGhpcy5hY3RpdmUKCQl9LCB0aGlzLm9wdGlvbnMucG9zaXRpb24gKTsKCgkJY2xlYXJUaW1lb3V0KCB0aGlzLnRpbWVyICk7CgkJdGhpcy5lbGVtZW50LmZpbmQoICIudWktbWVudSIgKS5ub3QoIHN1Ym1lbnUucGFyZW50cyggIi51aS1tZW51IiApICkKCQkJLmhpZGUoKQoJCQkuYXR0ciggImFyaWEtaGlkZGVuIiwgInRydWUiICk7CgoJCXN1Ym1lbnUKCQkJLnNob3coKQoJCQkucmVtb3ZlQXR0ciggImFyaWEtaGlkZGVuIiApCgkJCS5hdHRyKCAiYXJpYS1leHBhbmRlZCIsICJ0cnVlIiApCgkJCS5wb3NpdGlvbiggcG9zaXRpb24gKTsKCX0sCgoJY29sbGFwc2VBbGw6IGZ1bmN0aW9uKCBldmVudCwgYWxsICkgewoJCWNsZWFyVGltZW91dCggdGhpcy50aW1lciApOwoJCXRoaXMudGltZXIgPSB0aGlzLl9kZWxheSggZnVuY3Rpb24oKSB7CgoJCQkvLyBJZiB3ZSB3ZXJlIHBhc3NlZCBhbiBldmVudCwgbG9vayBmb3IgdGhlIHN1Ym1lbnUgdGhhdCBjb250YWlucyB0aGUgZXZlbnQKCQkJdmFyIGN1cnJlbnRNZW51ID0gYWxsID8gdGhpcy5lbGVtZW50IDoKCQkJCSQoIGV2ZW50ICYmIGV2ZW50LnRhcmdldCApLmNsb3Nlc3QoIHRoaXMuZWxlbWVudC5maW5kKCAiLnVpLW1lbnUiICkgKTsKCgkJCS8vIElmIHdlIGZvdW5kIG5vIHZhbGlkIHN1Ym1lbnUgYW5jZXN0b3IsIHVzZSB0aGUgbWFpbiBtZW51IHRvIGNsb3NlIGFsbAoJCQkvLyBzdWIgbWVudXMgYW55d2F5CgkJCWlmICggIWN1cnJlbnRNZW51Lmxlbmd0aCApIHsKCQkJCWN1cnJlbnRNZW51ID0gdGhpcy5lbGVtZW50OwoJCQl9CgoJCQl0aGlzLl9jbG9zZSggY3VycmVudE1lbnUgKTsKCgkJCXRoaXMuYmx1ciggZXZlbnQgKTsKCgkJCS8vIFdvcmsgYXJvdW5kIGFjdGl2ZSBpdGVtIHN0YXlpbmcgYWN0aXZlIGFmdGVyIG1lbnUgaXMgYmx1cnJlZAoJCQl0aGlzLl9yZW1vdmVDbGFzcyggY3VycmVudE1lbnUuZmluZCggIi51aS1zdGF0ZS1hY3RpdmUiICksIG51bGwsICJ1aS1zdGF0ZS1hY3RpdmUiICk7CgoJCQl0aGlzLmFjdGl2ZU1lbnUgPSBjdXJyZW50TWVudTsKCQl9LCB0aGlzLmRlbGF5ICk7Cgl9LAoKCS8vIFdpdGggbm8gYXJndW1lbnRzLCBjbG9zZXMgdGhlIGN1cnJlbnRseSBhY3RpdmUgbWVudSAtIGlmIG5vdGhpbmcgaXMgYWN0aXZlCgkvLyBpdCBjbG9zZXMgYWxsIG1lbnVzLiAgSWYgcGFzc2VkIGFuIGFyZ3VtZW50LCBpdCB3aWxsIHNlYXJjaCBmb3IgbWVudXMgQkVMT1cKCV9jbG9zZTogZnVuY3Rpb24oIHN0YXJ0TWVudSApIHsKCQlpZiAoICFzdGFydE1lbnUgKSB7CgkJCXN0YXJ0TWVudSA9IHRoaXMuYWN0aXZlID8gdGhpcy5hY3RpdmUucGFyZW50KCkgOiB0aGlzLmVsZW1lbnQ7CgkJfQoKCQlzdGFydE1lbnUuZmluZCggIi51aS1tZW51IiApCgkJCS5oaWRlKCkKCQkJLmF0dHIoICJhcmlhLWhpZGRlbiIsICJ0cnVlIiApCgkJCS5hdHRyKCAiYXJpYS1leHBhbmRlZCIsICJmYWxzZSIgKTsKCX0sCgoJX2Nsb3NlT25Eb2N1bWVudENsaWNrOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJcmV0dXJuICEkKCBldmVudC50YXJnZXQgKS5jbG9zZXN0KCAiLnVpLW1lbnUiICkubGVuZ3RoOwoJfSwKCglfaXNEaXZpZGVyOiBmdW5jdGlvbiggaXRlbSApIHsKCgkJLy8gTWF0Y2ggaHlwaGVuLCBlbSBkYXNoLCBlbiBkYXNoCgkJcmV0dXJuICEvW15cLVx1MjAxNFx1MjAxM1xzXS8udGVzdCggaXRlbS50ZXh0KCkgKTsKCX0sCgoJY29sbGFwc2U6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgbmV3SXRlbSA9IHRoaXMuYWN0aXZlICYmCgkJCXRoaXMuYWN0aXZlLnBhcmVudCgpLmNsb3Nlc3QoICIudWktbWVudS1pdGVtIiwgdGhpcy5lbGVtZW50ICk7CgkJaWYgKCBuZXdJdGVtICYmIG5ld0l0ZW0ubGVuZ3RoICkgewoJCQl0aGlzLl9jbG9zZSgpOwoJCQl0aGlzLmZvY3VzKCBldmVudCwgbmV3SXRlbSApOwoJCX0KCX0sCgoJZXhwYW5kOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdmFyIG5ld0l0ZW0gPSB0aGlzLmFjdGl2ZSAmJgoJCQl0aGlzLmFjdGl2ZQoJCQkJLmNoaWxkcmVuKCAiLnVpLW1lbnUgIiApCgkJCQkJLmZpbmQoIHRoaXMub3B0aW9ucy5pdGVtcyApCgkJCQkJCS5maXJzdCgpOwoKCQlpZiAoIG5ld0l0ZW0gJiYgbmV3SXRlbS5sZW5ndGggKSB7CgkJCXRoaXMuX29wZW4oIG5ld0l0ZW0ucGFyZW50KCkgKTsKCgkJCS8vIERlbGF5IHNvIEZpcmVmb3ggd2lsbCBub3QgaGlkZSBhY3RpdmVkZXNjZW5kYW50IGNoYW5nZSBpbiBleHBhbmRpbmcgc3VibWVudSBmcm9tIEFUCgkJCXRoaXMuX2RlbGF5KCBmdW5jdGlvbigpIHsKCQkJCXRoaXMuZm9jdXMoIGV2ZW50LCBuZXdJdGVtICk7CgkJCX0gKTsKCQl9Cgl9LAoKCW5leHQ6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl0aGlzLl9tb3ZlKCAibmV4dCIsICJmaXJzdCIsIGV2ZW50ICk7Cgl9LAoKCXByZXZpb3VzOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdGhpcy5fbW92ZSggInByZXYiLCAibGFzdCIsIGV2ZW50ICk7Cgl9LAoKCWlzRmlyc3RJdGVtOiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gdGhpcy5hY3RpdmUgJiYgIXRoaXMuYWN0aXZlLnByZXZBbGwoICIudWktbWVudS1pdGVtIiApLmxlbmd0aDsKCX0sCgoJaXNMYXN0SXRlbTogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMuYWN0aXZlICYmICF0aGlzLmFjdGl2ZS5uZXh0QWxsKCAiLnVpLW1lbnUtaXRlbSIgKS5sZW5ndGg7Cgl9LAoKCV9tb3ZlOiBmdW5jdGlvbiggZGlyZWN0aW9uLCBmaWx0ZXIsIGV2ZW50ICkgewoJCXZhciBuZXh0OwoJCWlmICggdGhpcy5hY3RpdmUgKSB7CgkJCWlmICggZGlyZWN0aW9uID09PSAiZmlyc3QiIHx8IGRpcmVjdGlvbiA9PT0gImxhc3QiICkgewoJCQkJbmV4dCA9IHRoaXMuYWN0aXZlCgkJCQkJWyBkaXJlY3Rpb24gPT09ICJmaXJzdCIgPyAicHJldkFsbCIgOiAibmV4dEFsbCIgXSggIi51aS1tZW51LWl0ZW0iICkKCQkJCQkuZXEoIC0xICk7CgkJCX0gZWxzZSB7CgkJCQluZXh0ID0gdGhpcy5hY3RpdmUKCQkJCQlbIGRpcmVjdGlvbiArICJBbGwiIF0oICIudWktbWVudS1pdGVtIiApCgkJCQkJLmVxKCAwICk7CgkJCX0KCQl9CgkJaWYgKCAhbmV4dCB8fCAhbmV4dC5sZW5ndGggfHwgIXRoaXMuYWN0aXZlICkgewoJCQluZXh0ID0gdGhpcy5hY3RpdmVNZW51LmZpbmQoIHRoaXMub3B0aW9ucy5pdGVtcyApWyBmaWx0ZXIgXSgpOwoJCX0KCgkJdGhpcy5mb2N1cyggZXZlbnQsIG5leHQgKTsKCX0sCgoJbmV4dFBhZ2U6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgaXRlbSwgYmFzZSwgaGVpZ2h0OwoKCQlpZiAoICF0aGlzLmFjdGl2ZSApIHsKCQkJdGhpcy5uZXh0KCBldmVudCApOwoJCQlyZXR1cm47CgkJfQoJCWlmICggdGhpcy5pc0xhc3RJdGVtKCkgKSB7CgkJCXJldHVybjsKCQl9CgkJaWYgKCB0aGlzLl9oYXNTY3JvbGwoKSApIHsKCQkJYmFzZSA9IHRoaXMuYWN0aXZlLm9mZnNldCgpLnRvcDsKCQkJaGVpZ2h0ID0gdGhpcy5lbGVtZW50LmhlaWdodCgpOwoJCQl0aGlzLmFjdGl2ZS5uZXh0QWxsKCAiLnVpLW1lbnUtaXRlbSIgKS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCWl0ZW0gPSAkKCB0aGlzICk7CgkJCQlyZXR1cm4gaXRlbS5vZmZzZXQoKS50b3AgLSBiYXNlIC0gaGVpZ2h0IDwgMDsKCQkJfSApOwoKCQkJdGhpcy5mb2N1cyggZXZlbnQsIGl0ZW0gKTsKCQl9IGVsc2UgewoJCQl0aGlzLmZvY3VzKCBldmVudCwgdGhpcy5hY3RpdmVNZW51LmZpbmQoIHRoaXMub3B0aW9ucy5pdGVtcyApCgkJCQlbICF0aGlzLmFjdGl2ZSA/ICJmaXJzdCIgOiAibGFzdCIgXSgpICk7CgkJfQoJfSwKCglwcmV2aW91c1BhZ2U6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgaXRlbSwgYmFzZSwgaGVpZ2h0OwoJCWlmICggIXRoaXMuYWN0aXZlICkgewoJCQl0aGlzLm5leHQoIGV2ZW50ICk7CgkJCXJldHVybjsKCQl9CgkJaWYgKCB0aGlzLmlzRmlyc3RJdGVtKCkgKSB7CgkJCXJldHVybjsKCQl9CgkJaWYgKCB0aGlzLl9oYXNTY3JvbGwoKSApIHsKCQkJYmFzZSA9IHRoaXMuYWN0aXZlLm9mZnNldCgpLnRvcDsKCQkJaGVpZ2h0ID0gdGhpcy5lbGVtZW50LmhlaWdodCgpOwoJCQl0aGlzLmFjdGl2ZS5wcmV2QWxsKCAiLnVpLW1lbnUtaXRlbSIgKS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCWl0ZW0gPSAkKCB0aGlzICk7CgkJCQlyZXR1cm4gaXRlbS5vZmZzZXQoKS50b3AgLSBiYXNlICsgaGVpZ2h0ID4gMDsKCQkJfSApOwoKCQkJdGhpcy5mb2N1cyggZXZlbnQsIGl0ZW0gKTsKCQl9IGVsc2UgewoJCQl0aGlzLmZvY3VzKCBldmVudCwgdGhpcy5hY3RpdmVNZW51LmZpbmQoIHRoaXMub3B0aW9ucy5pdGVtcyApLmZpcnN0KCkgKTsKCQl9Cgl9LAoKCV9oYXNTY3JvbGw6IGZ1bmN0aW9uKCkgewoJCXJldHVybiB0aGlzLmVsZW1lbnQub3V0ZXJIZWlnaHQoKSA8IHRoaXMuZWxlbWVudC5wcm9wKCAic2Nyb2xsSGVpZ2h0IiApOwoJfSwKCglzZWxlY3Q6IGZ1bmN0aW9uKCBldmVudCApIHsKCgkJLy8gVE9ETzogSXQgc2hvdWxkIG5ldmVyIGJlIHBvc3NpYmxlIHRvIG5vdCBoYXZlIGFuIGFjdGl2ZSBpdGVtIGF0IHRoaXMKCQkvLyBwb2ludCwgYnV0IHRoZSB0ZXN0cyBkb24ndCB0cmlnZ2VyIG1vdXNlZW50ZXIgYmVmb3JlIGNsaWNrLgoJCXRoaXMuYWN0aXZlID0gdGhpcy5hY3RpdmUgfHwgJCggZXZlbnQudGFyZ2V0ICkuY2xvc2VzdCggIi51aS1tZW51LWl0ZW0iICk7CgkJdmFyIHVpID0geyBpdGVtOiB0aGlzLmFjdGl2ZSB9OwoJCWlmICggIXRoaXMuYWN0aXZlLmhhcyggIi51aS1tZW51IiApLmxlbmd0aCApIHsKCQkJdGhpcy5jb2xsYXBzZUFsbCggZXZlbnQsIHRydWUgKTsKCQl9CgkJdGhpcy5fdHJpZ2dlciggInNlbGVjdCIsIGV2ZW50LCB1aSApOwoJfSwKCglfZmlsdGVyTWVudUl0ZW1zOiBmdW5jdGlvbiggY2hhcmFjdGVyICkgewoJCXZhciBlc2NhcGVkQ2hhcmFjdGVyID0gY2hhcmFjdGVyLnJlcGxhY2UoIC9bXC1cW1xde30oKSorPy4sXFxcXiR8I1xzXS9nLCAiXFwkJiIgKSwKCQkJcmVnZXggPSBuZXcgUmVnRXhwKCAiXiIgKyBlc2NhcGVkQ2hhcmFjdGVyLCAiaSIgKTsKCgkJcmV0dXJuIHRoaXMuYWN0aXZlTWVudQoJCQkuZmluZCggdGhpcy5vcHRpb25zLml0ZW1zICkKCgkJCQkvLyBPbmx5IG1hdGNoIG9uIGl0ZW1zLCBub3QgZGl2aWRlcnMgb3Igb3RoZXIgY29udGVudCAoIzEwNTcxKQoJCQkJLmZpbHRlciggIi51aS1tZW51LWl0ZW0iICkKCQkJCQkuZmlsdGVyKCBmdW5jdGlvbigpIHsKCQkJCQkJcmV0dXJuIHJlZ2V4LnRlc3QoCgkJCQkJCQkkLnRyaW0oICQoIHRoaXMgKS5jaGlsZHJlbiggIi51aS1tZW51LWl0ZW0td3JhcHBlciIgKS50ZXh0KCkgKSApOwoJCQkJCX0gKTsKCX0KfSApOwoKCi8qIQogKiBqUXVlcnkgVUkgQXV0b2NvbXBsZXRlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogQXV0b2NvbXBsZXRlCi8vPj5ncm91cDogV2lkZ2V0cwovLz4+ZGVzY3JpcHRpb246IExpc3RzIHN1Z2dlc3RlZCB3b3JkcyBhcyB0aGUgdXNlciBpcyB0eXBpbmcuCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9hdXRvY29tcGxldGUvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9hdXRvY29tcGxldGUvCi8vPj5jc3Muc3RydWN0dXJlOiAuLi8uLi90aGVtZXMvYmFzZS9jb3JlLmNzcwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvYXV0b2NvbXBsZXRlLmNzcwovLz4+Y3NzLnRoZW1lOiAuLi8uLi90aGVtZXMvYmFzZS90aGVtZS5jc3MKCgoKJC53aWRnZXQoICJ1aS5hdXRvY29tcGxldGUiLCB7Cgl2ZXJzaW9uOiAiMS4xMi4xIiwKCWRlZmF1bHRFbGVtZW50OiAiPGlucHV0PiIsCglvcHRpb25zOiB7CgkJYXBwZW5kVG86IG51bGwsCgkJYXV0b0ZvY3VzOiBmYWxzZSwKCQlkZWxheTogMzAwLAoJCW1pbkxlbmd0aDogMSwKCQlwb3NpdGlvbjogewoJCQlteTogImxlZnQgdG9wIiwKCQkJYXQ6ICJsZWZ0IGJvdHRvbSIsCgkJCWNvbGxpc2lvbjogIm5vbmUiCgkJfSwKCQlzb3VyY2U6IG51bGwsCgoJCS8vIENhbGxiYWNrcwoJCWNoYW5nZTogbnVsbCwKCQljbG9zZTogbnVsbCwKCQlmb2N1czogbnVsbCwKCQlvcGVuOiBudWxsLAoJCXJlc3BvbnNlOiBudWxsLAoJCXNlYXJjaDogbnVsbCwKCQlzZWxlY3Q6IG51bGwKCX0sCgoJcmVxdWVzdEluZGV4OiAwLAoJcGVuZGluZzogMCwKCglfY3JlYXRlOiBmdW5jdGlvbigpIHsKCgkJLy8gU29tZSBicm93c2VycyBvbmx5IHJlcGVhdCBrZXlkb3duIGV2ZW50cywgbm90IGtleXByZXNzIGV2ZW50cywKCQkvLyBzbyB3ZSB1c2UgdGhlIHN1cHByZXNzS2V5UHJlc3MgZmxhZyB0byBkZXRlcm1pbmUgaWYgd2UndmUgYWxyZWFkeQoJCS8vIGhhbmRsZWQgdGhlIGtleWRvd24gZXZlbnQuICM3MjY5CgkJLy8gVW5mb3J0dW5hdGVseSB0aGUgY29kZSBmb3IgJiBpbiBrZXlwcmVzcyBpcyB0aGUgc2FtZSBhcyB0aGUgdXAgYXJyb3csCgkJLy8gc28gd2UgdXNlIHRoZSBzdXBwcmVzc0tleVByZXNzUmVwZWF0IGZsYWcgdG8gYXZvaWQgaGFuZGxpbmcga2V5cHJlc3MKCQkvLyBldmVudHMgd2hlbiB3ZSBrbm93IHRoZSBrZXlkb3duIGV2ZW50IHdhcyB1c2VkIHRvIG1vZGlmeSB0aGUKCQkvLyBzZWFyY2ggdGVybS4gIzc3OTkKCQl2YXIgc3VwcHJlc3NLZXlQcmVzcywgc3VwcHJlc3NLZXlQcmVzc1JlcGVhdCwgc3VwcHJlc3NJbnB1dCwKCQkJbm9kZU5hbWUgPSB0aGlzLmVsZW1lbnRbIDAgXS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpLAoJCQlpc1RleHRhcmVhID0gbm9kZU5hbWUgPT09ICJ0ZXh0YXJlYSIsCgkJCWlzSW5wdXQgPSBub2RlTmFtZSA9PT0gImlucHV0IjsKCgkJLy8gVGV4dGFyZWFzIGFyZSBhbHdheXMgbXVsdGktbGluZQoJCS8vIElucHV0cyBhcmUgYWx3YXlzIHNpbmdsZS1saW5lLCBldmVuIGlmIGluc2lkZSBhIGNvbnRlbnRFZGl0YWJsZSBlbGVtZW50CgkJLy8gSUUgYWxzbyB0cmVhdHMgaW5wdXRzIGFzIGNvbnRlbnRFZGl0YWJsZQoJCS8vIEFsbCBvdGhlciBlbGVtZW50IHR5cGVzIGFyZSBkZXRlcm1pbmVkIGJ5IHdoZXRoZXIgb3Igbm90IHRoZXkncmUgY29udGVudEVkaXRhYmxlCgkJdGhpcy5pc011bHRpTGluZSA9IGlzVGV4dGFyZWEgfHwgIWlzSW5wdXQgJiYgdGhpcy5faXNDb250ZW50RWRpdGFibGUoIHRoaXMuZWxlbWVudCApOwoKCQl0aGlzLnZhbHVlTWV0aG9kID0gdGhpcy5lbGVtZW50WyBpc1RleHRhcmVhIHx8IGlzSW5wdXQgPyAidmFsIiA6ICJ0ZXh0IiBdOwoJCXRoaXMuaXNOZXdNZW51ID0gdHJ1ZTsKCgkJdGhpcy5fYWRkQ2xhc3MoICJ1aS1hdXRvY29tcGxldGUtaW5wdXQiICk7CgkJdGhpcy5lbGVtZW50LmF0dHIoICJhdXRvY29tcGxldGUiLCAib2ZmIiApOwoKCQl0aGlzLl9vbiggdGhpcy5lbGVtZW50LCB7CgkJCWtleWRvd246IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCWlmICggdGhpcy5lbGVtZW50LnByb3AoICJyZWFkT25seSIgKSApIHsKCQkJCQlzdXBwcmVzc0tleVByZXNzID0gdHJ1ZTsKCQkJCQlzdXBwcmVzc0lucHV0ID0gdHJ1ZTsKCQkJCQlzdXBwcmVzc0tleVByZXNzUmVwZWF0ID0gdHJ1ZTsKCQkJCQlyZXR1cm47CgkJCQl9CgoJCQkJc3VwcHJlc3NLZXlQcmVzcyA9IGZhbHNlOwoJCQkJc3VwcHJlc3NJbnB1dCA9IGZhbHNlOwoJCQkJc3VwcHJlc3NLZXlQcmVzc1JlcGVhdCA9IGZhbHNlOwoJCQkJdmFyIGtleUNvZGUgPSAkLnVpLmtleUNvZGU7CgkJCQlzd2l0Y2ggKCBldmVudC5rZXlDb2RlICkgewoJCQkJY2FzZSBrZXlDb2RlLlBBR0VfVVA6CgkJCQkJc3VwcHJlc3NLZXlQcmVzcyA9IHRydWU7CgkJCQkJdGhpcy5fbW92ZSggInByZXZpb3VzUGFnZSIsIGV2ZW50ICk7CgkJCQkJYnJlYWs7CgkJCQljYXNlIGtleUNvZGUuUEFHRV9ET1dOOgoJCQkJCXN1cHByZXNzS2V5UHJlc3MgPSB0cnVlOwoJCQkJCXRoaXMuX21vdmUoICJuZXh0UGFnZSIsIGV2ZW50ICk7CgkJCQkJYnJlYWs7CgkJCQljYXNlIGtleUNvZGUuVVA6CgkJCQkJc3VwcHJlc3NLZXlQcmVzcyA9IHRydWU7CgkJCQkJdGhpcy5fa2V5RXZlbnQoICJwcmV2aW91cyIsIGV2ZW50ICk7CgkJCQkJYnJlYWs7CgkJCQljYXNlIGtleUNvZGUuRE9XTjoKCQkJCQlzdXBwcmVzc0tleVByZXNzID0gdHJ1ZTsKCQkJCQl0aGlzLl9rZXlFdmVudCggIm5leHQiLCBldmVudCApOwoJCQkJCWJyZWFrOwoJCQkJY2FzZSBrZXlDb2RlLkVOVEVSOgoKCQkJCQkvLyB3aGVuIG1lbnUgaXMgb3BlbiBhbmQgaGFzIGZvY3VzCgkJCQkJaWYgKCB0aGlzLm1lbnUuYWN0aXZlICkgewoKCQkJCQkJLy8gIzYwNTUgLSBPcGVyYSBzdGlsbCBhbGxvd3MgdGhlIGtleXByZXNzIHRvIG9jY3VyCgkJCQkJCS8vIHdoaWNoIGNhdXNlcyBmb3JtcyB0byBzdWJtaXQKCQkJCQkJc3VwcHJlc3NLZXlQcmVzcyA9IHRydWU7CgkJCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCQkJCXRoaXMubWVudS5zZWxlY3QoIGV2ZW50ICk7CgkJCQkJfQoJCQkJCWJyZWFrOwoJCQkJY2FzZSBrZXlDb2RlLlRBQjoKCQkJCQlpZiAoIHRoaXMubWVudS5hY3RpdmUgKSB7CgkJCQkJCXRoaXMubWVudS5zZWxlY3QoIGV2ZW50ICk7CgkJCQkJfQoJCQkJCWJyZWFrOwoJCQkJY2FzZSBrZXlDb2RlLkVTQ0FQRToKCQkJCQlpZiAoIHRoaXMubWVudS5lbGVtZW50LmlzKCAiOnZpc2libGUiICkgKSB7CgkJCQkJCWlmICggIXRoaXMuaXNNdWx0aUxpbmUgKSB7CgkJCQkJCQl0aGlzLl92YWx1ZSggdGhpcy50ZXJtICk7CgkJCQkJCX0KCQkJCQkJdGhpcy5jbG9zZSggZXZlbnQgKTsKCgkJCQkJCS8vIERpZmZlcmVudCBicm93c2VycyBoYXZlIGRpZmZlcmVudCBkZWZhdWx0IGJlaGF2aW9yIGZvciBlc2NhcGUKCQkJCQkJLy8gU2luZ2xlIHByZXNzIGNhbiBtZWFuIHVuZG8gb3IgY2xlYXIKCQkJCQkJLy8gRG91YmxlIHByZXNzIGluIElFIG1lYW5zIGNsZWFyIHRoZSB3aG9sZSBmb3JtCgkJCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCQkJfQoJCQkJCWJyZWFrOwoJCQkJZGVmYXVsdDoKCQkJCQlzdXBwcmVzc0tleVByZXNzUmVwZWF0ID0gdHJ1ZTsKCgkJCQkJLy8gc2VhcmNoIHRpbWVvdXQgc2hvdWxkIGJlIHRyaWdnZXJlZCBiZWZvcmUgdGhlIGlucHV0IHZhbHVlIGlzIGNoYW5nZWQKCQkJCQl0aGlzLl9zZWFyY2hUaW1lb3V0KCBldmVudCApOwoJCQkJCWJyZWFrOwoJCQkJfQoJCQl9LAoJCQlrZXlwcmVzczogZnVuY3Rpb24oIGV2ZW50ICkgewoJCQkJaWYgKCBzdXBwcmVzc0tleVByZXNzICkgewoJCQkJCXN1cHByZXNzS2V5UHJlc3MgPSBmYWxzZTsKCQkJCQlpZiAoICF0aGlzLmlzTXVsdGlMaW5lIHx8IHRoaXMubWVudS5lbGVtZW50LmlzKCAiOnZpc2libGUiICkgKSB7CgkJCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCQkJfQoJCQkJCXJldHVybjsKCQkJCX0KCQkJCWlmICggc3VwcHJlc3NLZXlQcmVzc1JlcGVhdCApIHsKCQkJCQlyZXR1cm47CgkJCQl9CgoJCQkJLy8gUmVwbGljYXRlIHNvbWUga2V5IGhhbmRsZXJzIHRvIGFsbG93IHRoZW0gdG8gcmVwZWF0IGluIEZpcmVmb3ggYW5kIE9wZXJhCgkJCQl2YXIga2V5Q29kZSA9ICQudWkua2V5Q29kZTsKCQkJCXN3aXRjaCAoIGV2ZW50LmtleUNvZGUgKSB7CgkJCQljYXNlIGtleUNvZGUuUEFHRV9VUDoKCQkJCQl0aGlzLl9tb3ZlKCAicHJldmlvdXNQYWdlIiwgZXZlbnQgKTsKCQkJCQlicmVhazsKCQkJCWNhc2Uga2V5Q29kZS5QQUdFX0RPV046CgkJCQkJdGhpcy5fbW92ZSggIm5leHRQYWdlIiwgZXZlbnQgKTsKCQkJCQlicmVhazsKCQkJCWNhc2Uga2V5Q29kZS5VUDoKCQkJCQl0aGlzLl9rZXlFdmVudCggInByZXZpb3VzIiwgZXZlbnQgKTsKCQkJCQlicmVhazsKCQkJCWNhc2Uga2V5Q29kZS5ET1dOOgoJCQkJCXRoaXMuX2tleUV2ZW50KCAibmV4dCIsIGV2ZW50ICk7CgkJCQkJYnJlYWs7CgkJCQl9CgkJCX0sCgkJCWlucHV0OiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJCQlpZiAoIHN1cHByZXNzSW5wdXQgKSB7CgkJCQkJc3VwcHJlc3NJbnB1dCA9IGZhbHNlOwoJCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCQkJcmV0dXJuOwoJCQkJfQoJCQkJdGhpcy5fc2VhcmNoVGltZW91dCggZXZlbnQgKTsKCQkJfSwKCQkJZm9jdXM6IGZ1bmN0aW9uKCkgewoJCQkJdGhpcy5zZWxlY3RlZEl0ZW0gPSBudWxsOwoJCQkJdGhpcy5wcmV2aW91cyA9IHRoaXMuX3ZhbHVlKCk7CgkJCX0sCgkJCWJsdXI6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCWlmICggdGhpcy5jYW5jZWxCbHVyICkgewoJCQkJCWRlbGV0ZSB0aGlzLmNhbmNlbEJsdXI7CgkJCQkJcmV0dXJuOwoJCQkJfQoKCQkJCWNsZWFyVGltZW91dCggdGhpcy5zZWFyY2hpbmcgKTsKCQkJCXRoaXMuY2xvc2UoIGV2ZW50ICk7CgkJCQl0aGlzLl9jaGFuZ2UoIGV2ZW50ICk7CgkJCX0KCQl9ICk7CgoJCXRoaXMuX2luaXRTb3VyY2UoKTsKCQl0aGlzLm1lbnUgPSAkKCAiPHVsPiIgKQoJCQkuYXBwZW5kVG8oIHRoaXMuX2FwcGVuZFRvKCkgKQoJCQkubWVudSggewoKCQkJCS8vIGRpc2FibGUgQVJJQSBzdXBwb3J0LCB0aGUgbGl2ZSByZWdpb24gdGFrZXMgY2FyZSBvZiB0aGF0CgkJCQlyb2xlOiBudWxsCgkJCX0gKQoJCQkuaGlkZSgpCgkJCS5tZW51KCAiaW5zdGFuY2UiICk7CgoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLm1lbnUuZWxlbWVudCwgInVpLWF1dG9jb21wbGV0ZSIsICJ1aS1mcm9udCIgKTsKCQl0aGlzLl9vbiggdGhpcy5tZW51LmVsZW1lbnQsIHsKCQkJbW91c2Vkb3duOiBmdW5jdGlvbiggZXZlbnQgKSB7CgoJCQkJLy8gcHJldmVudCBtb3ZpbmcgZm9jdXMgb3V0IG9mIHRoZSB0ZXh0IGZpZWxkCgkJCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOwoKCQkJCS8vIElFIGRvZXNuJ3QgcHJldmVudCBtb3ZpbmcgZm9jdXMgZXZlbiB3aXRoIGV2ZW50LnByZXZlbnREZWZhdWx0KCkKCQkJCS8vIHNvIHdlIHNldCBhIGZsYWcgdG8ga25vdyB3aGVuIHdlIHNob3VsZCBpZ25vcmUgdGhlIGJsdXIgZXZlbnQKCQkJCXRoaXMuY2FuY2VsQmx1ciA9IHRydWU7CgkJCQl0aGlzLl9kZWxheSggZnVuY3Rpb24oKSB7CgkJCQkJZGVsZXRlIHRoaXMuY2FuY2VsQmx1cjsKCgkJCQkJLy8gU3VwcG9ydDogSUUgOCBvbmx5CgkJCQkJLy8gUmlnaHQgY2xpY2tpbmcgYSBtZW51IGl0ZW0gb3Igc2VsZWN0aW5nIHRleHQgZnJvbSB0aGUgbWVudSBpdGVtcyB3aWxsCgkJCQkJLy8gcmVzdWx0IGluIGZvY3VzIG1vdmluZyBvdXQgb2YgdGhlIGlucHV0LiBIb3dldmVyLCB3ZSd2ZSBhbHJlYWR5IHJlY2VpdmVkCgkJCQkJLy8gYW5kIGlnbm9yZWQgdGhlIGJsdXIgZXZlbnQgYmVjYXVzZSBvZiB0aGUgY2FuY2VsQmx1ciBmbGFnIHNldCBhYm92ZS4gU28KCQkJCQkvLyB3ZSByZXN0b3JlIGZvY3VzIHRvIGVuc3VyZSB0aGF0IHRoZSBtZW51IGNsb3NlcyBwcm9wZXJseSBiYXNlZCBvbiB0aGUgdXNlcidzCgkJCQkJLy8gbmV4dCBhY3Rpb25zLgoJCQkJCWlmICggdGhpcy5lbGVtZW50WyAwIF0gIT09ICQudWkuc2FmZUFjdGl2ZUVsZW1lbnQoIHRoaXMuZG9jdW1lbnRbIDAgXSApICkgewoJCQkJCQl0aGlzLmVsZW1lbnQudHJpZ2dlciggImZvY3VzIiApOwoJCQkJCX0KCQkJCX0gKTsKCQkJfSwKCQkJbWVudWZvY3VzOiBmdW5jdGlvbiggZXZlbnQsIHVpICkgewoJCQkJdmFyIGxhYmVsLCBpdGVtOwoKCQkJCS8vIHN1cHBvcnQ6IEZpcmVmb3gKCQkJCS8vIFByZXZlbnQgYWNjaWRlbnRhbCBhY3RpdmF0aW9uIG9mIG1lbnUgaXRlbXMgaW4gRmlyZWZveCAoIzcwMjQgIzkxMTgpCgkJCQlpZiAoIHRoaXMuaXNOZXdNZW51ICkgewoJCQkJCXRoaXMuaXNOZXdNZW51ID0gZmFsc2U7CgkJCQkJaWYgKCBldmVudC5vcmlnaW5hbEV2ZW50ICYmIC9ebW91c2UvLnRlc3QoIGV2ZW50Lm9yaWdpbmFsRXZlbnQudHlwZSApICkgewoJCQkJCQl0aGlzLm1lbnUuYmx1cigpOwoKCQkJCQkJdGhpcy5kb2N1bWVudC5vbmUoICJtb3VzZW1vdmUiLCBmdW5jdGlvbigpIHsKCQkJCQkJCSQoIGV2ZW50LnRhcmdldCApLnRyaWdnZXIoIGV2ZW50Lm9yaWdpbmFsRXZlbnQgKTsKCQkJCQkJfSApOwoKCQkJCQkJcmV0dXJuOwoJCQkJCX0KCQkJCX0KCgkJCQlpdGVtID0gdWkuaXRlbS5kYXRhKCAidWktYXV0b2NvbXBsZXRlLWl0ZW0iICk7CgkJCQlpZiAoIGZhbHNlICE9PSB0aGlzLl90cmlnZ2VyKCAiZm9jdXMiLCBldmVudCwgeyBpdGVtOiBpdGVtIH0gKSApIHsKCgkJCQkJLy8gdXNlIHZhbHVlIHRvIG1hdGNoIHdoYXQgd2lsbCBlbmQgdXAgaW4gdGhlIGlucHV0LCBpZiBpdCB3YXMgYSBrZXkgZXZlbnQKCQkJCQlpZiAoIGV2ZW50Lm9yaWdpbmFsRXZlbnQgJiYgL15rZXkvLnRlc3QoIGV2ZW50Lm9yaWdpbmFsRXZlbnQudHlwZSApICkgewoJCQkJCQl0aGlzLl92YWx1ZSggaXRlbS52YWx1ZSApOwoJCQkJCX0KCQkJCX0KCgkJCQkvLyBBbm5vdW5jZSB0aGUgdmFsdWUgaW4gdGhlIGxpdmVSZWdpb24KCQkJCWxhYmVsID0gdWkuaXRlbS5hdHRyKCAiYXJpYS1sYWJlbCIgKSB8fCBpdGVtLnZhbHVlOwoJCQkJaWYgKCBsYWJlbCAmJiAkLnRyaW0oIGxhYmVsICkubGVuZ3RoICkgewoJCQkJCXRoaXMubGl2ZVJlZ2lvbi5jaGlsZHJlbigpLmhpZGUoKTsKCQkJCQkkKCAiPGRpdj4iICkudGV4dCggbGFiZWwgKS5hcHBlbmRUbyggdGhpcy5saXZlUmVnaW9uICk7CgkJCQl9CgkJCX0sCgkJCW1lbnVzZWxlY3Q6IGZ1bmN0aW9uKCBldmVudCwgdWkgKSB7CgkJCQl2YXIgaXRlbSA9IHVpLml0ZW0uZGF0YSggInVpLWF1dG9jb21wbGV0ZS1pdGVtIiApLAoJCQkJCXByZXZpb3VzID0gdGhpcy5wcmV2aW91czsKCgkJCQkvLyBPbmx5IHRyaWdnZXIgd2hlbiBmb2N1cyB3YXMgbG9zdCAoY2xpY2sgb24gbWVudSkKCQkJCWlmICggdGhpcy5lbGVtZW50WyAwIF0gIT09ICQudWkuc2FmZUFjdGl2ZUVsZW1lbnQoIHRoaXMuZG9jdW1lbnRbIDAgXSApICkgewoJCQkJCXRoaXMuZWxlbWVudC50cmlnZ2VyKCAiZm9jdXMiICk7CgkJCQkJdGhpcy5wcmV2aW91cyA9IHByZXZpb3VzOwoKCQkJCQkvLyAjNjEwOSAtIElFIHRyaWdnZXJzIHR3byBmb2N1cyBldmVudHMgYW5kIHRoZSBzZWNvbmQKCQkJCQkvLyBpcyBhc3luY2hyb25vdXMsIHNvIHdlIG5lZWQgdG8gcmVzZXQgdGhlIHByZXZpb3VzCgkJCQkJLy8gdGVybSBzeW5jaHJvbm91c2x5IGFuZCBhc3luY2hyb25vdXNseSA6LSgKCQkJCQl0aGlzLl9kZWxheSggZnVuY3Rpb24oKSB7CgkJCQkJCXRoaXMucHJldmlvdXMgPSBwcmV2aW91czsKCQkJCQkJdGhpcy5zZWxlY3RlZEl0ZW0gPSBpdGVtOwoJCQkJCX0gKTsKCQkJCX0KCgkJCQlpZiAoIGZhbHNlICE9PSB0aGlzLl90cmlnZ2VyKCAic2VsZWN0IiwgZXZlbnQsIHsgaXRlbTogaXRlbSB9ICkgKSB7CgkJCQkJdGhpcy5fdmFsdWUoIGl0ZW0udmFsdWUgKTsKCQkJCX0KCgkJCQkvLyByZXNldCB0aGUgdGVybSBhZnRlciB0aGUgc2VsZWN0IGV2ZW50CgkJCQkvLyB0aGlzIGFsbG93cyBjdXN0b20gc2VsZWN0IGhhbmRsaW5nIHRvIHdvcmsgcHJvcGVybHkKCQkJCXRoaXMudGVybSA9IHRoaXMuX3ZhbHVlKCk7CgoJCQkJdGhpcy5jbG9zZSggZXZlbnQgKTsKCQkJCXRoaXMuc2VsZWN0ZWRJdGVtID0gaXRlbTsKCQkJfQoJCX0gKTsKCgkJdGhpcy5saXZlUmVnaW9uID0gJCggIjxkaXY+IiwgewoJCQlyb2xlOiAic3RhdHVzIiwKCQkJImFyaWEtbGl2ZSI6ICJhc3NlcnRpdmUiLAoJCQkiYXJpYS1yZWxldmFudCI6ICJhZGRpdGlvbnMiCgkJfSApCgkJCS5hcHBlbmRUbyggdGhpcy5kb2N1bWVudFsgMCBdLmJvZHkgKTsKCgkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMubGl2ZVJlZ2lvbiwgbnVsbCwgInVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSIgKTsKCgkJLy8gVHVybmluZyBvZmYgYXV0b2NvbXBsZXRlIHByZXZlbnRzIHRoZSBicm93c2VyIGZyb20gcmVtZW1iZXJpbmcgdGhlCgkJLy8gdmFsdWUgd2hlbiBuYXZpZ2F0aW5nIHRocm91Z2ggaGlzdG9yeSwgc28gd2UgcmUtZW5hYmxlIGF1dG9jb21wbGV0ZQoJCS8vIGlmIHRoZSBwYWdlIGlzIHVubG9hZGVkIGJlZm9yZSB0aGUgd2lkZ2V0IGlzIGRlc3Ryb3llZC4gIzc3OTAKCQl0aGlzLl9vbiggdGhpcy53aW5kb3csIHsKCQkJYmVmb3JldW5sb2FkOiBmdW5jdGlvbigpIHsKCQkJCXRoaXMuZWxlbWVudC5yZW1vdmVBdHRyKCAiYXV0b2NvbXBsZXRlIiApOwoJCQl9CgkJfSApOwoJfSwKCglfZGVzdHJveTogZnVuY3Rpb24oKSB7CgkJY2xlYXJUaW1lb3V0KCB0aGlzLnNlYXJjaGluZyApOwoJCXRoaXMuZWxlbWVudC5yZW1vdmVBdHRyKCAiYXV0b2NvbXBsZXRlIiApOwoJCXRoaXMubWVudS5lbGVtZW50LnJlbW92ZSgpOwoJCXRoaXMubGl2ZVJlZ2lvbi5yZW1vdmUoKTsKCX0sCgoJX3NldE9wdGlvbjogZnVuY3Rpb24oIGtleSwgdmFsdWUgKSB7CgkJdGhpcy5fc3VwZXIoIGtleSwgdmFsdWUgKTsKCQlpZiAoIGtleSA9PT0gInNvdXJjZSIgKSB7CgkJCXRoaXMuX2luaXRTb3VyY2UoKTsKCQl9CgkJaWYgKCBrZXkgPT09ICJhcHBlbmRUbyIgKSB7CgkJCXRoaXMubWVudS5lbGVtZW50LmFwcGVuZFRvKCB0aGlzLl9hcHBlbmRUbygpICk7CgkJfQoJCWlmICgga2V5ID09PSAiZGlzYWJsZWQiICYmIHZhbHVlICYmIHRoaXMueGhyICkgewoJCQl0aGlzLnhoci5hYm9ydCgpOwoJCX0KCX0sCgoJX2lzRXZlbnRUYXJnZXRJbldpZGdldDogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXZhciBtZW51RWxlbWVudCA9IHRoaXMubWVudS5lbGVtZW50WyAwIF07CgoJCXJldHVybiBldmVudC50YXJnZXQgPT09IHRoaXMuZWxlbWVudFsgMCBdIHx8CgkJCWV2ZW50LnRhcmdldCA9PT0gbWVudUVsZW1lbnQgfHwKCQkJJC5jb250YWlucyggbWVudUVsZW1lbnQsIGV2ZW50LnRhcmdldCApOwoJfSwKCglfY2xvc2VPbkNsaWNrT3V0c2lkZTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCWlmICggIXRoaXMuX2lzRXZlbnRUYXJnZXRJbldpZGdldCggZXZlbnQgKSApIHsKCQkJdGhpcy5jbG9zZSgpOwoJCX0KCX0sCgoJX2FwcGVuZFRvOiBmdW5jdGlvbigpIHsKCQl2YXIgZWxlbWVudCA9IHRoaXMub3B0aW9ucy5hcHBlbmRUbzsKCgkJaWYgKCBlbGVtZW50ICkgewoJCQllbGVtZW50ID0gZWxlbWVudC5qcXVlcnkgfHwgZWxlbWVudC5ub2RlVHlwZSA/CgkJCQkkKCBlbGVtZW50ICkgOgoJCQkJdGhpcy5kb2N1bWVudC5maW5kKCBlbGVtZW50ICkuZXEoIDAgKTsKCQl9CgoJCWlmICggIWVsZW1lbnQgfHwgIWVsZW1lbnRbIDAgXSApIHsKCQkJZWxlbWVudCA9IHRoaXMuZWxlbWVudC5jbG9zZXN0KCAiLnVpLWZyb250LCBkaWFsb2ciICk7CgkJfQoKCQlpZiAoICFlbGVtZW50Lmxlbmd0aCApIHsKCQkJZWxlbWVudCA9IHRoaXMuZG9jdW1lbnRbIDAgXS5ib2R5OwoJCX0KCgkJcmV0dXJuIGVsZW1lbnQ7Cgl9LAoKCV9pbml0U291cmNlOiBmdW5jdGlvbigpIHsKCQl2YXIgYXJyYXksIHVybCwKCQkJdGhhdCA9IHRoaXM7CgkJaWYgKCAkLmlzQXJyYXkoIHRoaXMub3B0aW9ucy5zb3VyY2UgKSApIHsKCQkJYXJyYXkgPSB0aGlzLm9wdGlvbnMuc291cmNlOwoJCQl0aGlzLnNvdXJjZSA9IGZ1bmN0aW9uKCByZXF1ZXN0LCByZXNwb25zZSApIHsKCQkJCXJlc3BvbnNlKCAkLnVpLmF1dG9jb21wbGV0ZS5maWx0ZXIoIGFycmF5LCByZXF1ZXN0LnRlcm0gKSApOwoJCQl9OwoJCX0gZWxzZSBpZiAoIHR5cGVvZiB0aGlzLm9wdGlvbnMuc291cmNlID09PSAic3RyaW5nIiApIHsKCQkJdXJsID0gdGhpcy5vcHRpb25zLnNvdXJjZTsKCQkJdGhpcy5zb3VyY2UgPSBmdW5jdGlvbiggcmVxdWVzdCwgcmVzcG9uc2UgKSB7CgkJCQlpZiAoIHRoYXQueGhyICkgewoJCQkJCXRoYXQueGhyLmFib3J0KCk7CgkJCQl9CgkJCQl0aGF0LnhociA9ICQuYWpheCggewoJCQkJCXVybDogdXJsLAoJCQkJCWRhdGE6IHJlcXVlc3QsCgkJCQkJZGF0YVR5cGU6ICJqc29uIiwKCQkJCQlzdWNjZXNzOiBmdW5jdGlvbiggZGF0YSApIHsKCQkJCQkJcmVzcG9uc2UoIGRhdGEgKTsKCQkJCQl9LAoJCQkJCWVycm9yOiBmdW5jdGlvbigpIHsKCQkJCQkJcmVzcG9uc2UoIFtdICk7CgkJCQkJfQoJCQkJfSApOwoJCQl9OwoJCX0gZWxzZSB7CgkJCXRoaXMuc291cmNlID0gdGhpcy5vcHRpb25zLnNvdXJjZTsKCQl9Cgl9LAoKCV9zZWFyY2hUaW1lb3V0OiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJY2xlYXJUaW1lb3V0KCB0aGlzLnNlYXJjaGluZyApOwoJCXRoaXMuc2VhcmNoaW5nID0gdGhpcy5fZGVsYXkoIGZ1bmN0aW9uKCkgewoKCQkJLy8gU2VhcmNoIGlmIHRoZSB2YWx1ZSBoYXMgY2hhbmdlZCwgb3IgaWYgdGhlIHVzZXIgcmV0eXBlcyB0aGUgc2FtZSB2YWx1ZSAoc2VlICM3NDM0KQoJCQl2YXIgZXF1YWxWYWx1ZXMgPSB0aGlzLnRlcm0gPT09IHRoaXMuX3ZhbHVlKCksCgkJCQltZW51VmlzaWJsZSA9IHRoaXMubWVudS5lbGVtZW50LmlzKCAiOnZpc2libGUiICksCgkJCQltb2RpZmllcktleSA9IGV2ZW50LmFsdEtleSB8fCBldmVudC5jdHJsS2V5IHx8IGV2ZW50Lm1ldGFLZXkgfHwgZXZlbnQuc2hpZnRLZXk7CgoJCQlpZiAoICFlcXVhbFZhbHVlcyB8fCAoIGVxdWFsVmFsdWVzICYmICFtZW51VmlzaWJsZSAmJiAhbW9kaWZpZXJLZXkgKSApIHsKCQkJCXRoaXMuc2VsZWN0ZWRJdGVtID0gbnVsbDsKCQkJCXRoaXMuc2VhcmNoKCBudWxsLCBldmVudCApOwoJCQl9CgkJfSwgdGhpcy5vcHRpb25zLmRlbGF5ICk7Cgl9LAoKCXNlYXJjaDogZnVuY3Rpb24oIHZhbHVlLCBldmVudCApIHsKCQl2YWx1ZSA9IHZhbHVlICE9IG51bGwgPyB2YWx1ZSA6IHRoaXMuX3ZhbHVlKCk7CgoJCS8vIEFsd2F5cyBzYXZlIHRoZSBhY3R1YWwgdmFsdWUsIG5vdCB0aGUgb25lIHBhc3NlZCBhcyBhbiBhcmd1bWVudAoJCXRoaXMudGVybSA9IHRoaXMuX3ZhbHVlKCk7CgoJCWlmICggdmFsdWUubGVuZ3RoIDwgdGhpcy5vcHRpb25zLm1pbkxlbmd0aCApIHsKCQkJcmV0dXJuIHRoaXMuY2xvc2UoIGV2ZW50ICk7CgkJfQoKCQlpZiAoIHRoaXMuX3RyaWdnZXIoICJzZWFyY2giLCBldmVudCApID09PSBmYWxzZSApIHsKCQkJcmV0dXJuOwoJCX0KCgkJcmV0dXJuIHRoaXMuX3NlYXJjaCggdmFsdWUgKTsKCX0sCgoJX3NlYXJjaDogZnVuY3Rpb24oIHZhbHVlICkgewoJCXRoaXMucGVuZGluZysrOwoJCXRoaXMuX2FkZENsYXNzKCAidWktYXV0b2NvbXBsZXRlLWxvYWRpbmciICk7CgkJdGhpcy5jYW5jZWxTZWFyY2ggPSBmYWxzZTsKCgkJdGhpcy5zb3VyY2UoIHsgdGVybTogdmFsdWUgfSwgdGhpcy5fcmVzcG9uc2UoKSApOwoJfSwKCglfcmVzcG9uc2U6IGZ1bmN0aW9uKCkgewoJCXZhciBpbmRleCA9ICsrdGhpcy5yZXF1ZXN0SW5kZXg7CgoJCXJldHVybiAkLnByb3h5KCBmdW5jdGlvbiggY29udGVudCApIHsKCQkJaWYgKCBpbmRleCA9PT0gdGhpcy5yZXF1ZXN0SW5kZXggKSB7CgkJCQl0aGlzLl9fcmVzcG9uc2UoIGNvbnRlbnQgKTsKCQkJfQoKCQkJdGhpcy5wZW5kaW5nLS07CgkJCWlmICggIXRoaXMucGVuZGluZyApIHsKCQkJCXRoaXMuX3JlbW92ZUNsYXNzKCAidWktYXV0b2NvbXBsZXRlLWxvYWRpbmciICk7CgkJCX0KCQl9LCB0aGlzICk7Cgl9LAoKCV9fcmVzcG9uc2U6IGZ1bmN0aW9uKCBjb250ZW50ICkgewoJCWlmICggY29udGVudCApIHsKCQkJY29udGVudCA9IHRoaXMuX25vcm1hbGl6ZSggY29udGVudCApOwoJCX0KCQl0aGlzLl90cmlnZ2VyKCAicmVzcG9uc2UiLCBudWxsLCB7IGNvbnRlbnQ6IGNvbnRlbnQgfSApOwoJCWlmICggIXRoaXMub3B0aW9ucy5kaXNhYmxlZCAmJiBjb250ZW50ICYmIGNvbnRlbnQubGVuZ3RoICYmICF0aGlzLmNhbmNlbFNlYXJjaCApIHsKCQkJdGhpcy5fc3VnZ2VzdCggY29udGVudCApOwoJCQl0aGlzLl90cmlnZ2VyKCAib3BlbiIgKTsKCQl9IGVsc2UgewoKCQkJLy8gdXNlIC5fY2xvc2UoKSBpbnN0ZWFkIG9mIC5jbG9zZSgpIHNvIHdlIGRvbid0IGNhbmNlbCBmdXR1cmUgc2VhcmNoZXMKCQkJdGhpcy5fY2xvc2UoKTsKCQl9Cgl9LAoKCWNsb3NlOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdGhpcy5jYW5jZWxTZWFyY2ggPSB0cnVlOwoJCXRoaXMuX2Nsb3NlKCBldmVudCApOwoJfSwKCglfY2xvc2U6IGZ1bmN0aW9uKCBldmVudCApIHsKCgkJLy8gUmVtb3ZlIHRoZSBoYW5kbGVyIHRoYXQgY2xvc2VzIHRoZSBtZW51IG9uIG91dHNpZGUgY2xpY2tzCgkJdGhpcy5fb2ZmKCB0aGlzLmRvY3VtZW50LCAibW91c2Vkb3duIiApOwoKCQlpZiAoIHRoaXMubWVudS5lbGVtZW50LmlzKCAiOnZpc2libGUiICkgKSB7CgkJCXRoaXMubWVudS5lbGVtZW50LmhpZGUoKTsKCQkJdGhpcy5tZW51LmJsdXIoKTsKCQkJdGhpcy5pc05ld01lbnUgPSB0cnVlOwoJCQl0aGlzLl90cmlnZ2VyKCAiY2xvc2UiLCBldmVudCApOwoJCX0KCX0sCgoJX2NoYW5nZTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCWlmICggdGhpcy5wcmV2aW91cyAhPT0gdGhpcy5fdmFsdWUoKSApIHsKCQkJdGhpcy5fdHJpZ2dlciggImNoYW5nZSIsIGV2ZW50LCB7IGl0ZW06IHRoaXMuc2VsZWN0ZWRJdGVtIH0gKTsKCQl9Cgl9LAoKCV9ub3JtYWxpemU6IGZ1bmN0aW9uKCBpdGVtcyApIHsKCgkJLy8gYXNzdW1lIGFsbCBpdGVtcyBoYXZlIHRoZSByaWdodCBmb3JtYXQgd2hlbiB0aGUgZmlyc3QgaXRlbSBpcyBjb21wbGV0ZQoJCWlmICggaXRlbXMubGVuZ3RoICYmIGl0ZW1zWyAwIF0ubGFiZWwgJiYgaXRlbXNbIDAgXS52YWx1ZSApIHsKCQkJcmV0dXJuIGl0ZW1zOwoJCX0KCQlyZXR1cm4gJC5tYXAoIGl0ZW1zLCBmdW5jdGlvbiggaXRlbSApIHsKCQkJaWYgKCB0eXBlb2YgaXRlbSA9PT0gInN0cmluZyIgKSB7CgkJCQlyZXR1cm4gewoJCQkJCWxhYmVsOiBpdGVtLAoJCQkJCXZhbHVlOiBpdGVtCgkJCQl9OwoJCQl9CgkJCXJldHVybiAkLmV4dGVuZCgge30sIGl0ZW0sIHsKCQkJCWxhYmVsOiBpdGVtLmxhYmVsIHx8IGl0ZW0udmFsdWUsCgkJCQl2YWx1ZTogaXRlbS52YWx1ZSB8fCBpdGVtLmxhYmVsCgkJCX0gKTsKCQl9ICk7Cgl9LAoKCV9zdWdnZXN0OiBmdW5jdGlvbiggaXRlbXMgKSB7CgkJdmFyIHVsID0gdGhpcy5tZW51LmVsZW1lbnQuZW1wdHkoKTsKCQl0aGlzLl9yZW5kZXJNZW51KCB1bCwgaXRlbXMgKTsKCQl0aGlzLmlzTmV3TWVudSA9IHRydWU7CgkJdGhpcy5tZW51LnJlZnJlc2goKTsKCgkJLy8gU2l6ZSBhbmQgcG9zaXRpb24gbWVudQoJCXVsLnNob3coKTsKCQl0aGlzLl9yZXNpemVNZW51KCk7CgkJdWwucG9zaXRpb24oICQuZXh0ZW5kKCB7CgkJCW9mOiB0aGlzLmVsZW1lbnQKCQl9LCB0aGlzLm9wdGlvbnMucG9zaXRpb24gKSApOwoKCQlpZiAoIHRoaXMub3B0aW9ucy5hdXRvRm9jdXMgKSB7CgkJCXRoaXMubWVudS5uZXh0KCk7CgkJfQoKCQkvLyBMaXN0ZW4gZm9yIGludGVyYWN0aW9ucyBvdXRzaWRlIG9mIHRoZSB3aWRnZXQgKCM2NjQyKQoJCXRoaXMuX29uKCB0aGlzLmRvY3VtZW50LCB7CgkJCW1vdXNlZG93bjogIl9jbG9zZU9uQ2xpY2tPdXRzaWRlIgoJCX0gKTsKCX0sCgoJX3Jlc2l6ZU1lbnU6IGZ1bmN0aW9uKCkgewoJCXZhciB1bCA9IHRoaXMubWVudS5lbGVtZW50OwoJCXVsLm91dGVyV2lkdGgoIE1hdGgubWF4KAoKCQkJLy8gRmlyZWZveCB3cmFwcyBsb25nIHRleHQgKHBvc3NpYmx5IGEgcm91bmRpbmcgYnVnKQoJCQkvLyBzbyB3ZSBhZGQgMXB4IHRvIGF2b2lkIHRoZSB3cmFwcGluZyAoIzc1MTMpCgkJCXVsLndpZHRoKCAiIiApLm91dGVyV2lkdGgoKSArIDEsCgkJCXRoaXMuZWxlbWVudC5vdXRlcldpZHRoKCkKCQkpICk7Cgl9LAoKCV9yZW5kZXJNZW51OiBmdW5jdGlvbiggdWwsIGl0ZW1zICkgewoJCXZhciB0aGF0ID0gdGhpczsKCQkkLmVhY2goIGl0ZW1zLCBmdW5jdGlvbiggaW5kZXgsIGl0ZW0gKSB7CgkJCXRoYXQuX3JlbmRlckl0ZW1EYXRhKCB1bCwgaXRlbSApOwoJCX0gKTsKCX0sCgoJX3JlbmRlckl0ZW1EYXRhOiBmdW5jdGlvbiggdWwsIGl0ZW0gKSB7CgkJcmV0dXJuIHRoaXMuX3JlbmRlckl0ZW0oIHVsLCBpdGVtICkuZGF0YSggInVpLWF1dG9jb21wbGV0ZS1pdGVtIiwgaXRlbSApOwoJfSwKCglfcmVuZGVySXRlbTogZnVuY3Rpb24oIHVsLCBpdGVtICkgewoJCXJldHVybiAkKCAiPGxpPiIgKQoJCQkuYXBwZW5kKCAkKCAiPGRpdj4iICkudGV4dCggaXRlbS5sYWJlbCApICkKCQkJLmFwcGVuZFRvKCB1bCApOwoJfSwKCglfbW92ZTogZnVuY3Rpb24oIGRpcmVjdGlvbiwgZXZlbnQgKSB7CgkJaWYgKCAhdGhpcy5tZW51LmVsZW1lbnQuaXMoICI6dmlzaWJsZSIgKSApIHsKCQkJdGhpcy5zZWFyY2goIG51bGwsIGV2ZW50ICk7CgkJCXJldHVybjsKCQl9CgkJaWYgKCB0aGlzLm1lbnUuaXNGaXJzdEl0ZW0oKSAmJiAvXnByZXZpb3VzLy50ZXN0KCBkaXJlY3Rpb24gKSB8fAoJCQkJdGhpcy5tZW51LmlzTGFzdEl0ZW0oKSAmJiAvXm5leHQvLnRlc3QoIGRpcmVjdGlvbiApICkgewoKCQkJaWYgKCAhdGhpcy5pc011bHRpTGluZSApIHsKCQkJCXRoaXMuX3ZhbHVlKCB0aGlzLnRlcm0gKTsKCQkJfQoKCQkJdGhpcy5tZW51LmJsdXIoKTsKCQkJcmV0dXJuOwoJCX0KCQl0aGlzLm1lbnVbIGRpcmVjdGlvbiBdKCBldmVudCApOwoJfSwKCgl3aWRnZXQ6IGZ1bmN0aW9uKCkgewoJCXJldHVybiB0aGlzLm1lbnUuZWxlbWVudDsKCX0sCgoJX3ZhbHVlOiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gdGhpcy52YWx1ZU1ldGhvZC5hcHBseSggdGhpcy5lbGVtZW50LCBhcmd1bWVudHMgKTsKCX0sCgoJX2tleUV2ZW50OiBmdW5jdGlvbigga2V5RXZlbnQsIGV2ZW50ICkgewoJCWlmICggIXRoaXMuaXNNdWx0aUxpbmUgfHwgdGhpcy5tZW51LmVsZW1lbnQuaXMoICI6dmlzaWJsZSIgKSApIHsKCQkJdGhpcy5fbW92ZSgga2V5RXZlbnQsIGV2ZW50ICk7CgoJCQkvLyBQcmV2ZW50cyBtb3ZpbmcgY3Vyc29yIHRvIGJlZ2lubmluZy9lbmQgb2YgdGhlIHRleHQgZmllbGQgaW4gc29tZSBicm93c2VycwoJCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOwoJCX0KCX0sCgoJLy8gU3VwcG9ydDogQ2hyb21lIDw9NTAKCS8vIFdlIHNob3VsZCBiZSBhYmxlIHRvIGp1c3QgdXNlIHRoaXMuZWxlbWVudC5wcm9wKCAiaXNDb250ZW50RWRpdGFibGUiICkKCS8vIGJ1dCBoaWRkZW4gZWxlbWVudHMgYWx3YXlzIHJlcG9ydCBmYWxzZSBpbiBDaHJvbWUuCgkvLyBodHRwczovL2NvZGUuZ29vZ2xlLmNvbS9wL2Nocm9taXVtL2lzc3Vlcy9kZXRhaWw/aWQ9MzEzMDgyCglfaXNDb250ZW50RWRpdGFibGU6IGZ1bmN0aW9uKCBlbGVtZW50ICkgewoJCWlmICggIWVsZW1lbnQubGVuZ3RoICkgewoJCQlyZXR1cm4gZmFsc2U7CgkJfQoKCQl2YXIgZWRpdGFibGUgPSBlbGVtZW50LnByb3AoICJjb250ZW50RWRpdGFibGUiICk7CgoJCWlmICggZWRpdGFibGUgPT09ICJpbmhlcml0IiApIHsKCQkgIHJldHVybiB0aGlzLl9pc0NvbnRlbnRFZGl0YWJsZSggZWxlbWVudC5wYXJlbnQoKSApOwoJCX0KCgkJcmV0dXJuIGVkaXRhYmxlID09PSAidHJ1ZSI7Cgl9Cn0gKTsKCiQuZXh0ZW5kKCAkLnVpLmF1dG9jb21wbGV0ZSwgewoJZXNjYXBlUmVnZXg6IGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQlyZXR1cm4gdmFsdWUucmVwbGFjZSggL1tcLVxbXF17fSgpKis/LixcXFxeJHwjXHNdL2csICJcXCQmIiApOwoJfSwKCWZpbHRlcjogZnVuY3Rpb24oIGFycmF5LCB0ZXJtICkgewoJCXZhciBtYXRjaGVyID0gbmV3IFJlZ0V4cCggJC51aS5hdXRvY29tcGxldGUuZXNjYXBlUmVnZXgoIHRlcm0gKSwgImkiICk7CgkJcmV0dXJuICQuZ3JlcCggYXJyYXksIGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQkJcmV0dXJuIG1hdGNoZXIudGVzdCggdmFsdWUubGFiZWwgfHwgdmFsdWUudmFsdWUgfHwgdmFsdWUgKTsKCQl9ICk7Cgl9Cn0gKTsKCi8vIExpdmUgcmVnaW9uIGV4dGVuc2lvbiwgYWRkaW5nIGEgYG1lc3NhZ2VzYCBvcHRpb24KLy8gTk9URTogVGhpcyBpcyBhbiBleHBlcmltZW50YWwgQVBJLiBXZSBhcmUgc3RpbGwgaW52ZXN0aWdhdGluZwovLyBhIGZ1bGwgc29sdXRpb24gZm9yIHN0cmluZyBtYW5pcHVsYXRpb24gYW5kIGludGVybmF0aW9uYWxpemF0aW9uLgokLndpZGdldCggInVpLmF1dG9jb21wbGV0ZSIsICQudWkuYXV0b2NvbXBsZXRlLCB7CglvcHRpb25zOiB7CgkJbWVzc2FnZXM6IHsKCQkJbm9SZXN1bHRzOiAiTm8gc2VhcmNoIHJlc3VsdHMuIiwKCQkJcmVzdWx0czogZnVuY3Rpb24oIGFtb3VudCApIHsKCQkJCXJldHVybiBhbW91bnQgKyAoIGFtb3VudCA+IDEgPyAiIHJlc3VsdHMgYXJlIiA6ICIgcmVzdWx0IGlzIiApICsKCQkJCQkiIGF2YWlsYWJsZSwgdXNlIHVwIGFuZCBkb3duIGFycm93IGtleXMgdG8gbmF2aWdhdGUuIjsKCQkJfQoJCX0KCX0sCgoJX19yZXNwb25zZTogZnVuY3Rpb24oIGNvbnRlbnQgKSB7CgkJdmFyIG1lc3NhZ2U7CgkJdGhpcy5fc3VwZXJBcHBseSggYXJndW1lbnRzICk7CgkJaWYgKCB0aGlzLm9wdGlvbnMuZGlzYWJsZWQgfHwgdGhpcy5jYW5jZWxTZWFyY2ggKSB7CgkJCXJldHVybjsKCQl9CgkJaWYgKCBjb250ZW50ICYmIGNvbnRlbnQubGVuZ3RoICkgewoJCQltZXNzYWdlID0gdGhpcy5vcHRpb25zLm1lc3NhZ2VzLnJlc3VsdHMoIGNvbnRlbnQubGVuZ3RoICk7CgkJfSBlbHNlIHsKCQkJbWVzc2FnZSA9IHRoaXMub3B0aW9ucy5tZXNzYWdlcy5ub1Jlc3VsdHM7CgkJfQoJCXRoaXMubGl2ZVJlZ2lvbi5jaGlsZHJlbigpLmhpZGUoKTsKCQkkKCAiPGRpdj4iICkudGV4dCggbWVzc2FnZSApLmFwcGVuZFRvKCB0aGlzLmxpdmVSZWdpb24gKTsKCX0KfSApOwoKdmFyIHdpZGdldHNBdXRvY29tcGxldGUgPSAkLnVpLmF1dG9jb21wbGV0ZTsKCgovKiEKICogalF1ZXJ5IFVJIENvbnRyb2xncm91cCAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IENvbnRyb2xncm91cAovLz4+Z3JvdXA6IFdpZGdldHMKLy8+PmRlc2NyaXB0aW9uOiBWaXN1YWxseSBncm91cHMgZm9ybSBjb250cm9sIHdpZGdldHMKLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2NvbnRyb2xncm91cC8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL2NvbnRyb2xncm91cC8KLy8+PmNzcy5zdHJ1Y3R1cmU6IC4uLy4uL3RoZW1lcy9iYXNlL2NvcmUuY3NzCi8vPj5jc3Muc3RydWN0dXJlOiAuLi8uLi90aGVtZXMvYmFzZS9jb250cm9sZ3JvdXAuY3NzCi8vPj5jc3MudGhlbWU6IC4uLy4uL3RoZW1lcy9iYXNlL3RoZW1lLmNzcwoKCnZhciBjb250cm9sZ3JvdXBDb3JuZXJSZWdleCA9IC91aS1jb3JuZXItKFthLXpdKXsyLDZ9L2c7Cgp2YXIgd2lkZ2V0c0NvbnRyb2xncm91cCA9ICQud2lkZ2V0KCAidWkuY29udHJvbGdyb3VwIiwgewoJdmVyc2lvbjogIjEuMTIuMSIsCglkZWZhdWx0RWxlbWVudDogIjxkaXY+IiwKCW9wdGlvbnM6IHsKCQlkaXJlY3Rpb246ICJob3Jpem9udGFsIiwKCQlkaXNhYmxlZDogbnVsbCwKCQlvbmx5VmlzaWJsZTogdHJ1ZSwKCQlpdGVtczogewoJCQkiYnV0dG9uIjogImlucHV0W3R5cGU9YnV0dG9uXSwgaW5wdXRbdHlwZT1zdWJtaXRdLCBpbnB1dFt0eXBlPXJlc2V0XSwgYnV0dG9uLCBhIiwKCQkJImNvbnRyb2xncm91cExhYmVsIjogIi51aS1jb250cm9sZ3JvdXAtbGFiZWwiLAoJCQkiY2hlY2tib3hyYWRpbyI6ICJpbnB1dFt0eXBlPSdjaGVja2JveCddLCBpbnB1dFt0eXBlPSdyYWRpbyddIiwKCQkJInNlbGVjdG1lbnUiOiAic2VsZWN0IiwKCQkJInNwaW5uZXIiOiAiLnVpLXNwaW5uZXItaW5wdXQiCgkJfQoJfSwKCglfY3JlYXRlOiBmdW5jdGlvbigpIHsKCQl0aGlzLl9lbmhhbmNlKCk7Cgl9LAoKCS8vIFRvIHN1cHBvcnQgdGhlIGVuaGFuY2VkIG9wdGlvbiBpbiBqUXVlcnkgTW9iaWxlLCB3ZSBpc29sYXRlIERPTSBtYW5pcHVsYXRpb24KCV9lbmhhbmNlOiBmdW5jdGlvbigpIHsKCQl0aGlzLmVsZW1lbnQuYXR0ciggInJvbGUiLCAidG9vbGJhciIgKTsKCQl0aGlzLnJlZnJlc2goKTsKCX0sCgoJX2Rlc3Ryb3k6IGZ1bmN0aW9uKCkgewoJCXRoaXMuX2NhbGxDaGlsZE1ldGhvZCggImRlc3Ryb3kiICk7CgkJdGhpcy5jaGlsZFdpZGdldHMucmVtb3ZlRGF0YSggInVpLWNvbnRyb2xncm91cC1kYXRhIiApOwoJCXRoaXMuZWxlbWVudC5yZW1vdmVBdHRyKCAicm9sZSIgKTsKCQlpZiAoIHRoaXMub3B0aW9ucy5pdGVtcy5jb250cm9sZ3JvdXBMYWJlbCApIHsKCQkJdGhpcy5lbGVtZW50CgkJCQkuZmluZCggdGhpcy5vcHRpb25zLml0ZW1zLmNvbnRyb2xncm91cExhYmVsICkKCQkJCS5maW5kKCAiLnVpLWNvbnRyb2xncm91cC1sYWJlbC1jb250ZW50cyIgKQoJCQkJLmNvbnRlbnRzKCkudW53cmFwKCk7CgkJfQoJfSwKCglfaW5pdFdpZGdldHM6IGZ1bmN0aW9uKCkgewoJCXZhciB0aGF0ID0gdGhpcywKCQkJY2hpbGRXaWRnZXRzID0gW107CgoJCS8vIEZpcnN0IHdlIGl0ZXJhdGUgb3ZlciBlYWNoIG9mIHRoZSBpdGVtcyBvcHRpb25zCgkJJC5lYWNoKCB0aGlzLm9wdGlvbnMuaXRlbXMsIGZ1bmN0aW9uKCB3aWRnZXQsIHNlbGVjdG9yICkgewoJCQl2YXIgbGFiZWxzOwoJCQl2YXIgb3B0aW9ucyA9IHt9OwoKCQkJLy8gTWFrZSBzdXJlIHRoZSB3aWRnZXQgaGFzIGEgc2VsZWN0b3Igc2V0CgkJCWlmICggIXNlbGVjdG9yICkgewoJCQkJcmV0dXJuOwoJCQl9CgoJCQlpZiAoIHdpZGdldCA9PT0gImNvbnRyb2xncm91cExhYmVsIiApIHsKCQkJCWxhYmVscyA9IHRoYXQuZWxlbWVudC5maW5kKCBzZWxlY3RvciApOwoJCQkJbGFiZWxzLmVhY2goIGZ1bmN0aW9uKCkgewoJCQkJCXZhciBlbGVtZW50ID0gJCggdGhpcyApOwoKCQkJCQlpZiAoIGVsZW1lbnQuY2hpbGRyZW4oICIudWktY29udHJvbGdyb3VwLWxhYmVsLWNvbnRlbnRzIiApLmxlbmd0aCApIHsKCQkJCQkJcmV0dXJuOwoJCQkJCX0KCQkJCQllbGVtZW50LmNvbnRlbnRzKCkKCQkJCQkJLndyYXBBbGwoICI8c3BhbiBjbGFzcz0ndWktY29udHJvbGdyb3VwLWxhYmVsLWNvbnRlbnRzJz48L3NwYW4+IiApOwoJCQkJfSApOwoJCQkJdGhhdC5fYWRkQ2xhc3MoIGxhYmVscywgbnVsbCwgInVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1zdGF0ZS1kZWZhdWx0IiApOwoJCQkJY2hpbGRXaWRnZXRzID0gY2hpbGRXaWRnZXRzLmNvbmNhdCggbGFiZWxzLmdldCgpICk7CgkJCQlyZXR1cm47CgkJCX0KCgkJCS8vIE1ha2Ugc3VyZSB0aGUgd2lkZ2V0IGFjdHVhbGx5IGV4aXN0cwoJCQlpZiAoICEkLmZuWyB3aWRnZXQgXSApIHsKCQkJCXJldHVybjsKCQkJfQoKCQkJLy8gV2UgYXNzdW1lIGV2ZXJ5dGhpbmcgaXMgaW4gdGhlIG1pZGRsZSB0byBzdGFydCBiZWNhdXNlIHdlIGNhbid0IGRldGVybWluZQoJCQkvLyBmaXJzdCAvIGxhc3QgZWxlbWVudHMgdW50aWwgYWxsIGVuaGFuY21lbnRzIGFyZSBkb25lLgoJCQlpZiAoIHRoYXRbICJfIiArIHdpZGdldCArICJPcHRpb25zIiBdICkgewoJCQkJb3B0aW9ucyA9IHRoYXRbICJfIiArIHdpZGdldCArICJPcHRpb25zIiBdKCAibWlkZGxlIiApOwoJCQl9IGVsc2UgewoJCQkJb3B0aW9ucyA9IHsgY2xhc3Nlczoge30gfTsKCQkJfQoKCQkJLy8gRmluZCBpbnN0YW5jZXMgb2YgdGhpcyB3aWRnZXQgaW5zaWRlIGNvbnRyb2xncm91cCBhbmQgaW5pdCB0aGVtCgkJCXRoYXQuZWxlbWVudAoJCQkJLmZpbmQoIHNlbGVjdG9yICkKCQkJCS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCQl2YXIgZWxlbWVudCA9ICQoIHRoaXMgKTsKCQkJCQl2YXIgaW5zdGFuY2UgPSBlbGVtZW50WyB3aWRnZXQgXSggImluc3RhbmNlIiApOwoKCQkJCQkvLyBXZSBuZWVkIHRvIGNsb25lIHRoZSBkZWZhdWx0IG9wdGlvbnMgZm9yIHRoaXMgdHlwZSBvZiB3aWRnZXQgdG8gYXZvaWQKCQkJCQkvLyBwb2xsdXRpbmcgdGhlIHZhcmlhYmxlIG9wdGlvbnMgd2hpY2ggaGFzIGEgd2lkZXIgc2NvcGUgdGhhbiBhIHNpbmdsZSB3aWRnZXQuCgkJCQkJdmFyIGluc3RhbmNlT3B0aW9ucyA9ICQud2lkZ2V0LmV4dGVuZCgge30sIG9wdGlvbnMgKTsKCgkJCQkJLy8gSWYgdGhlIGJ1dHRvbiBpcyB0aGUgY2hpbGQgb2YgYSBzcGlubmVyIGlnbm9yZSBpdAoJCQkJCS8vIFRPRE86IEZpbmQgYSBtb3JlIGdlbmVyaWMgc29sdXRpb24KCQkJCQlpZiAoIHdpZGdldCA9PT0gImJ1dHRvbiIgJiYgZWxlbWVudC5wYXJlbnQoICIudWktc3Bpbm5lciIgKS5sZW5ndGggKSB7CgkJCQkJCXJldHVybjsKCQkJCQl9CgoJCQkJCS8vIENyZWF0ZSB0aGUgd2lkZ2V0IGlmIGl0IGRvZXNuJ3QgZXhpc3QKCQkJCQlpZiAoICFpbnN0YW5jZSApIHsKCQkJCQkJaW5zdGFuY2UgPSBlbGVtZW50WyB3aWRnZXQgXSgpWyB3aWRnZXQgXSggImluc3RhbmNlIiApOwoJCQkJCX0KCQkJCQlpZiAoIGluc3RhbmNlICkgewoJCQkJCQlpbnN0YW5jZU9wdGlvbnMuY2xhc3NlcyA9CgkJCQkJCQl0aGF0Ll9yZXNvbHZlQ2xhc3Nlc1ZhbHVlcyggaW5zdGFuY2VPcHRpb25zLmNsYXNzZXMsIGluc3RhbmNlICk7CgkJCQkJfQoJCQkJCWVsZW1lbnRbIHdpZGdldCBdKCBpbnN0YW5jZU9wdGlvbnMgKTsKCgkJCQkJLy8gU3RvcmUgYW4gaW5zdGFuY2Ugb2YgdGhlIGNvbnRyb2xncm91cCB0byBiZSBhYmxlIHRvIHJlZmVyZW5jZQoJCQkJCS8vIGZyb20gdGhlIG91dGVybW9zdCBlbGVtZW50IGZvciBjaGFuZ2luZyBvcHRpb25zIGFuZCByZWZyZXNoCgkJCQkJdmFyIHdpZGdldEVsZW1lbnQgPSBlbGVtZW50WyB3aWRnZXQgXSggIndpZGdldCIgKTsKCQkJCQkkLmRhdGEoIHdpZGdldEVsZW1lbnRbIDAgXSwgInVpLWNvbnRyb2xncm91cC1kYXRhIiwKCQkJCQkJaW5zdGFuY2UgPyBpbnN0YW5jZSA6IGVsZW1lbnRbIHdpZGdldCBdKCAiaW5zdGFuY2UiICkgKTsKCgkJCQkJY2hpbGRXaWRnZXRzLnB1c2goIHdpZGdldEVsZW1lbnRbIDAgXSApOwoJCQkJfSApOwoJCX0gKTsKCgkJdGhpcy5jaGlsZFdpZGdldHMgPSAkKCAkLnVuaXF1ZSggY2hpbGRXaWRnZXRzICkgKTsKCQl0aGlzLl9hZGRDbGFzcyggdGhpcy5jaGlsZFdpZGdldHMsICJ1aS1jb250cm9sZ3JvdXAtaXRlbSIgKTsKCX0sCgoJX2NhbGxDaGlsZE1ldGhvZDogZnVuY3Rpb24oIG1ldGhvZCApIHsKCQl0aGlzLmNoaWxkV2lkZ2V0cy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJdmFyIGVsZW1lbnQgPSAkKCB0aGlzICksCgkJCQlkYXRhID0gZWxlbWVudC5kYXRhKCAidWktY29udHJvbGdyb3VwLWRhdGEiICk7CgkJCWlmICggZGF0YSAmJiBkYXRhWyBtZXRob2QgXSApIHsKCQkJCWRhdGFbIG1ldGhvZCBdKCk7CgkJCX0KCQl9ICk7Cgl9LAoKCV91cGRhdGVDb3JuZXJDbGFzczogZnVuY3Rpb24oIGVsZW1lbnQsIHBvc2l0aW9uICkgewoJCXZhciByZW1vdmUgPSAidWktY29ybmVyLXRvcCB1aS1jb3JuZXItYm90dG9tIHVpLWNvcm5lci1sZWZ0IHVpLWNvcm5lci1yaWdodCB1aS1jb3JuZXItYWxsIjsKCQl2YXIgYWRkID0gdGhpcy5fYnVpbGRTaW1wbGVPcHRpb25zKCBwb3NpdGlvbiwgImxhYmVsIiApLmNsYXNzZXMubGFiZWw7CgoJCXRoaXMuX3JlbW92ZUNsYXNzKCBlbGVtZW50LCBudWxsLCByZW1vdmUgKTsKCQl0aGlzLl9hZGRDbGFzcyggZWxlbWVudCwgbnVsbCwgYWRkICk7Cgl9LAoKCV9idWlsZFNpbXBsZU9wdGlvbnM6IGZ1bmN0aW9uKCBwb3NpdGlvbiwga2V5ICkgewoJCXZhciBkaXJlY3Rpb24gPSB0aGlzLm9wdGlvbnMuZGlyZWN0aW9uID09PSAidmVydGljYWwiOwoJCXZhciByZXN1bHQgPSB7CgkJCWNsYXNzZXM6IHt9CgkJfTsKCQlyZXN1bHQuY2xhc3Nlc1sga2V5IF0gPSB7CgkJCSJtaWRkbGUiOiAiIiwKCQkJImZpcnN0IjogInVpLWNvcm5lci0iICsgKCBkaXJlY3Rpb24gPyAidG9wIiA6ICJsZWZ0IiApLAoJCQkibGFzdCI6ICJ1aS1jb3JuZXItIiArICggZGlyZWN0aW9uID8gImJvdHRvbSIgOiAicmlnaHQiICksCgkJCSJvbmx5IjogInVpLWNvcm5lci1hbGwiCgkJfVsgcG9zaXRpb24gXTsKCgkJcmV0dXJuIHJlc3VsdDsKCX0sCgoJX3NwaW5uZXJPcHRpb25zOiBmdW5jdGlvbiggcG9zaXRpb24gKSB7CgkJdmFyIG9wdGlvbnMgPSB0aGlzLl9idWlsZFNpbXBsZU9wdGlvbnMoIHBvc2l0aW9uLCAidWktc3Bpbm5lciIgKTsKCgkJb3B0aW9ucy5jbGFzc2VzWyAidWktc3Bpbm5lci11cCIgXSA9ICIiOwoJCW9wdGlvbnMuY2xhc3Nlc1sgInVpLXNwaW5uZXItZG93biIgXSA9ICIiOwoKCQlyZXR1cm4gb3B0aW9uczsKCX0sCgoJX2J1dHRvbk9wdGlvbnM6IGZ1bmN0aW9uKCBwb3NpdGlvbiApIHsKCQlyZXR1cm4gdGhpcy5fYnVpbGRTaW1wbGVPcHRpb25zKCBwb3NpdGlvbiwgInVpLWJ1dHRvbiIgKTsKCX0sCgoJX2NoZWNrYm94cmFkaW9PcHRpb25zOiBmdW5jdGlvbiggcG9zaXRpb24gKSB7CgkJcmV0dXJuIHRoaXMuX2J1aWxkU2ltcGxlT3B0aW9ucyggcG9zaXRpb24sICJ1aS1jaGVja2JveHJhZGlvLWxhYmVsIiApOwoJfSwKCglfc2VsZWN0bWVudU9wdGlvbnM6IGZ1bmN0aW9uKCBwb3NpdGlvbiApIHsKCQl2YXIgZGlyZWN0aW9uID0gdGhpcy5vcHRpb25zLmRpcmVjdGlvbiA9PT0gInZlcnRpY2FsIjsKCQlyZXR1cm4gewoJCQl3aWR0aDogZGlyZWN0aW9uID8gImF1dG8iIDogZmFsc2UsCgkJCWNsYXNzZXM6IHsKCQkJCW1pZGRsZTogewoJCQkJCSJ1aS1zZWxlY3RtZW51LWJ1dHRvbi1vcGVuIjogIiIsCgkJCQkJInVpLXNlbGVjdG1lbnUtYnV0dG9uLWNsb3NlZCI6ICIiCgkJCQl9LAoJCQkJZmlyc3Q6IHsKCQkJCQkidWktc2VsZWN0bWVudS1idXR0b24tb3BlbiI6ICJ1aS1jb3JuZXItIiArICggZGlyZWN0aW9uID8gInRvcCIgOiAidGwiICksCgkJCQkJInVpLXNlbGVjdG1lbnUtYnV0dG9uLWNsb3NlZCI6ICJ1aS1jb3JuZXItIiArICggZGlyZWN0aW9uID8gInRvcCIgOiAibGVmdCIgKQoJCQkJfSwKCQkJCWxhc3Q6IHsKCQkJCQkidWktc2VsZWN0bWVudS1idXR0b24tb3BlbiI6IGRpcmVjdGlvbiA/ICIiIDogInVpLWNvcm5lci10ciIsCgkJCQkJInVpLXNlbGVjdG1lbnUtYnV0dG9uLWNsb3NlZCI6ICJ1aS1jb3JuZXItIiArICggZGlyZWN0aW9uID8gImJvdHRvbSIgOiAicmlnaHQiICkKCQkJCX0sCgkJCQlvbmx5OiB7CgkJCQkJInVpLXNlbGVjdG1lbnUtYnV0dG9uLW9wZW4iOiAidWktY29ybmVyLXRvcCIsCgkJCQkJInVpLXNlbGVjdG1lbnUtYnV0dG9uLWNsb3NlZCI6ICJ1aS1jb3JuZXItYWxsIgoJCQkJfQoKCQkJfVsgcG9zaXRpb24gXQoJCX07Cgl9LAoKCV9yZXNvbHZlQ2xhc3Nlc1ZhbHVlczogZnVuY3Rpb24oIGNsYXNzZXMsIGluc3RhbmNlICkgewoJCXZhciByZXN1bHQgPSB7fTsKCQkkLmVhY2goIGNsYXNzZXMsIGZ1bmN0aW9uKCBrZXkgKSB7CgkJCXZhciBjdXJyZW50ID0gaW5zdGFuY2Uub3B0aW9ucy5jbGFzc2VzWyBrZXkgXSB8fCAiIjsKCQkJY3VycmVudCA9ICQudHJpbSggY3VycmVudC5yZXBsYWNlKCBjb250cm9sZ3JvdXBDb3JuZXJSZWdleCwgIiIgKSApOwoJCQlyZXN1bHRbIGtleSBdID0gKCBjdXJyZW50ICsgIiAiICsgY2xhc3Nlc1sga2V5IF0gKS5yZXBsYWNlKCAvXHMrL2csICIgIiApOwoJCX0gKTsKCQlyZXR1cm4gcmVzdWx0OwoJfSwKCglfc2V0T3B0aW9uOiBmdW5jdGlvbigga2V5LCB2YWx1ZSApIHsKCQlpZiAoIGtleSA9PT0gImRpcmVjdGlvbiIgKSB7CgkJCXRoaXMuX3JlbW92ZUNsYXNzKCAidWktY29udHJvbGdyb3VwLSIgKyB0aGlzLm9wdGlvbnMuZGlyZWN0aW9uICk7CgkJfQoKCQl0aGlzLl9zdXBlcigga2V5LCB2YWx1ZSApOwoJCWlmICgga2V5ID09PSAiZGlzYWJsZWQiICkgewoJCQl0aGlzLl9jYWxsQ2hpbGRNZXRob2QoIHZhbHVlID8gImRpc2FibGUiIDogImVuYWJsZSIgKTsKCQkJcmV0dXJuOwoJCX0KCgkJdGhpcy5yZWZyZXNoKCk7Cgl9LAoKCXJlZnJlc2g6IGZ1bmN0aW9uKCkgewoJCXZhciBjaGlsZHJlbiwKCQkJdGhhdCA9IHRoaXM7CgoJCXRoaXMuX2FkZENsYXNzKCAidWktY29udHJvbGdyb3VwIHVpLWNvbnRyb2xncm91cC0iICsgdGhpcy5vcHRpb25zLmRpcmVjdGlvbiApOwoKCQlpZiAoIHRoaXMub3B0aW9ucy5kaXJlY3Rpb24gPT09ICJob3Jpem9udGFsIiApIHsKCQkJdGhpcy5fYWRkQ2xhc3MoIG51bGwsICJ1aS1oZWxwZXItY2xlYXJmaXgiICk7CgkJfQoJCXRoaXMuX2luaXRXaWRnZXRzKCk7CgoJCWNoaWxkcmVuID0gdGhpcy5jaGlsZFdpZGdldHM7CgoJCS8vIFdlIGZpbHRlciBoZXJlIGJlY2F1c2Ugd2UgbmVlZCB0byB0cmFjayBhbGwgY2hpbGRXaWRnZXRzIG5vdCBqdXN0IHRoZSB2aXNpYmxlIG9uZXMKCQlpZiAoIHRoaXMub3B0aW9ucy5vbmx5VmlzaWJsZSApIHsKCQkJY2hpbGRyZW4gPSBjaGlsZHJlbi5maWx0ZXIoICI6dmlzaWJsZSIgKTsKCQl9CgoJCWlmICggY2hpbGRyZW4ubGVuZ3RoICkgewoKCQkJLy8gV2UgZG8gdGhpcyBsYXN0IGJlY2F1c2Ugd2UgbmVlZCB0byBtYWtlIHN1cmUgYWxsIGVuaGFuY21lbnQgaXMgZG9uZQoJCQkvLyBiZWZvcmUgZGV0ZXJtaW5pbmcgZmlyc3QgYW5kIGxhc3QKCQkJJC5lYWNoKCBbICJmaXJzdCIsICJsYXN0IiBdLCBmdW5jdGlvbiggaW5kZXgsIHZhbHVlICkgewoJCQkJdmFyIGluc3RhbmNlID0gY2hpbGRyZW5bIHZhbHVlIF0oKS5kYXRhKCAidWktY29udHJvbGdyb3VwLWRhdGEiICk7CgoJCQkJaWYgKCBpbnN0YW5jZSAmJiB0aGF0WyAiXyIgKyBpbnN0YW5jZS53aWRnZXROYW1lICsgIk9wdGlvbnMiIF0gKSB7CgkJCQkJdmFyIG9wdGlvbnMgPSB0aGF0WyAiXyIgKyBpbnN0YW5jZS53aWRnZXROYW1lICsgIk9wdGlvbnMiIF0oCgkJCQkJCWNoaWxkcmVuLmxlbmd0aCA9PT0gMSA/ICJvbmx5IiA6IHZhbHVlCgkJCQkJKTsKCQkJCQlvcHRpb25zLmNsYXNzZXMgPSB0aGF0Ll9yZXNvbHZlQ2xhc3Nlc1ZhbHVlcyggb3B0aW9ucy5jbGFzc2VzLCBpbnN0YW5jZSApOwoJCQkJCWluc3RhbmNlLmVsZW1lbnRbIGluc3RhbmNlLndpZGdldE5hbWUgXSggb3B0aW9ucyApOwoJCQkJfSBlbHNlIHsKCQkJCQl0aGF0Ll91cGRhdGVDb3JuZXJDbGFzcyggY2hpbGRyZW5bIHZhbHVlIF0oKSwgdmFsdWUgKTsKCQkJCX0KCQkJfSApOwoKCQkJLy8gRmluYWxseSBjYWxsIHRoZSByZWZyZXNoIG1ldGhvZCBvbiBlYWNoIG9mIHRoZSBjaGlsZCB3aWRnZXRzLgoJCQl0aGlzLl9jYWxsQ2hpbGRNZXRob2QoICJyZWZyZXNoIiApOwoJCX0KCX0KfSApOwoKLyohCiAqIGpRdWVyeSBVSSBDaGVja2JveHJhZGlvIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogQ2hlY2tib3hyYWRpbwovLz4+Z3JvdXA6IFdpZGdldHMKLy8+PmRlc2NyaXB0aW9uOiBFbmhhbmNlcyBhIGZvcm0gd2l0aCBtdWx0aXBsZSB0aGVtZWFibGUgY2hlY2tib3hlcyBvciByYWRpbyBidXR0b25zLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vY2hlY2tib3hyYWRpby8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL2NoZWNrYm94cmFkaW8vCi8vPj5jc3Muc3RydWN0dXJlOiAuLi8uLi90aGVtZXMvYmFzZS9jb3JlLmNzcwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvYnV0dG9uLmNzcwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvY2hlY2tib3hyYWRpby5jc3MKLy8+PmNzcy50aGVtZTogLi4vLi4vdGhlbWVzL2Jhc2UvdGhlbWUuY3NzCgoKCiQud2lkZ2V0KCAidWkuY2hlY2tib3hyYWRpbyIsIFsgJC51aS5mb3JtUmVzZXRNaXhpbiwgewoJdmVyc2lvbjogIjEuMTIuMSIsCglvcHRpb25zOiB7CgkJZGlzYWJsZWQ6IG51bGwsCgkJbGFiZWw6IG51bGwsCgkJaWNvbjogdHJ1ZSwKCQljbGFzc2VzOiB7CgkJCSJ1aS1jaGVja2JveHJhZGlvLWxhYmVsIjogInVpLWNvcm5lci1hbGwiLAoJCQkidWktY2hlY2tib3hyYWRpby1pY29uIjogInVpLWNvcm5lci1hbGwiCgkJfQoJfSwKCglfZ2V0Q3JlYXRlT3B0aW9uczogZnVuY3Rpb24oKSB7CgkJdmFyIGRpc2FibGVkLCBsYWJlbHM7CgkJdmFyIHRoYXQgPSB0aGlzOwoJCXZhciBvcHRpb25zID0gdGhpcy5fc3VwZXIoKSB8fCB7fTsKCgkJLy8gV2UgcmVhZCB0aGUgdHlwZSBoZXJlLCBiZWNhdXNlIGl0IG1ha2VzIG1vcmUgc2Vuc2UgdG8gdGhyb3cgYSBlbGVtZW50IHR5cGUgZXJyb3IgZmlyc3QsCgkJLy8gcmF0aGVyIHRoZW4gdGhlIGVycm9yIGZvciBsYWNrIG9mIGEgbGFiZWwuIE9mdGVuIGlmIGl0cyB0aGUgd3JvbmcgdHlwZSwgaXQKCQkvLyB3b24ndCBoYXZlIGEgbGFiZWwgKGUuZy4gY2FsbGluZyBvbiBhIGRpdiwgYnRuLCBldGMpCgkJdGhpcy5fcmVhZFR5cGUoKTsKCgkJbGFiZWxzID0gdGhpcy5lbGVtZW50LmxhYmVscygpOwoKCQkvLyBJZiB0aGVyZSBhcmUgbXVsdGlwbGUgbGFiZWxzLCB1c2UgdGhlIGxhc3Qgb25lCgkJdGhpcy5sYWJlbCA9ICQoIGxhYmVsc1sgbGFiZWxzLmxlbmd0aCAtIDEgXSApOwoJCWlmICggIXRoaXMubGFiZWwubGVuZ3RoICkgewoJCQkkLmVycm9yKCAiTm8gbGFiZWwgZm91bmQgZm9yIGNoZWNrYm94cmFkaW8gd2lkZ2V0IiApOwoJCX0KCgkJdGhpcy5vcmlnaW5hbExhYmVsID0gIiI7CgoJCS8vIFdlIG5lZWQgdG8gZ2V0IHRoZSBsYWJlbCB0ZXh0IGJ1dCB0aGlzIG1heSBhbHNvIG5lZWQgdG8gbWFrZSBzdXJlIGl0IGRvZXMgbm90IGNvbnRhaW4gdGhlCgkJLy8gaW5wdXQgaXRzZWxmLgoJCXRoaXMubGFiZWwuY29udGVudHMoKS5ub3QoIHRoaXMuZWxlbWVudFsgMCBdICkuZWFjaCggZnVuY3Rpb24oKSB7CgoJCQkvLyBUaGUgbGFiZWwgY29udGVudHMgY291bGQgYmUgdGV4dCwgaHRtbCwgb3IgYSBtaXguIFdlIGNvbmNhdCBlYWNoIGVsZW1lbnQgdG8gZ2V0IGEKCQkJLy8gc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBsYWJlbCwgd2l0aG91dCB0aGUgaW5wdXQgYXMgcGFydCBvZiBpdC4KCQkJdGhhdC5vcmlnaW5hbExhYmVsICs9IHRoaXMubm9kZVR5cGUgPT09IDMgPyAkKCB0aGlzICkudGV4dCgpIDogdGhpcy5vdXRlckhUTUw7CgkJfSApOwoKCQkvLyBTZXQgdGhlIGxhYmVsIG9wdGlvbiBpZiB3ZSBmb3VuZCBsYWJlbCB0ZXh0CgkJaWYgKCB0aGlzLm9yaWdpbmFsTGFiZWwgKSB7CgkJCW9wdGlvbnMubGFiZWwgPSB0aGlzLm9yaWdpbmFsTGFiZWw7CgkJfQoKCQlkaXNhYmxlZCA9IHRoaXMuZWxlbWVudFsgMCBdLmRpc2FibGVkOwoJCWlmICggZGlzYWJsZWQgIT0gbnVsbCApIHsKCQkJb3B0aW9ucy5kaXNhYmxlZCA9IGRpc2FibGVkOwoJCX0KCQlyZXR1cm4gb3B0aW9uczsKCX0sCgoJX2NyZWF0ZTogZnVuY3Rpb24oKSB7CgkJdmFyIGNoZWNrZWQgPSB0aGlzLmVsZW1lbnRbIDAgXS5jaGVja2VkOwoKCQl0aGlzLl9iaW5kRm9ybVJlc2V0SGFuZGxlcigpOwoKCQlpZiAoIHRoaXMub3B0aW9ucy5kaXNhYmxlZCA9PSBudWxsICkgewoJCQl0aGlzLm9wdGlvbnMuZGlzYWJsZWQgPSB0aGlzLmVsZW1lbnRbIDAgXS5kaXNhYmxlZDsKCQl9CgoJCXRoaXMuX3NldE9wdGlvbiggImRpc2FibGVkIiwgdGhpcy5vcHRpb25zLmRpc2FibGVkICk7CgkJdGhpcy5fYWRkQ2xhc3MoICJ1aS1jaGVja2JveHJhZGlvIiwgInVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSIgKTsKCQl0aGlzLl9hZGRDbGFzcyggdGhpcy5sYWJlbCwgInVpLWNoZWNrYm94cmFkaW8tbGFiZWwiLCAidWktYnV0dG9uIHVpLXdpZGdldCIgKTsKCgkJaWYgKCB0aGlzLnR5cGUgPT09ICJyYWRpbyIgKSB7CgkJCXRoaXMuX2FkZENsYXNzKCB0aGlzLmxhYmVsLCAidWktY2hlY2tib3hyYWRpby1yYWRpby1sYWJlbCIgKTsKCQl9CgoJCWlmICggdGhpcy5vcHRpb25zLmxhYmVsICYmIHRoaXMub3B0aW9ucy5sYWJlbCAhPT0gdGhpcy5vcmlnaW5hbExhYmVsICkgewoJCQl0aGlzLl91cGRhdGVMYWJlbCgpOwoJCX0gZWxzZSBpZiAoIHRoaXMub3JpZ2luYWxMYWJlbCApIHsKCQkJdGhpcy5vcHRpb25zLmxhYmVsID0gdGhpcy5vcmlnaW5hbExhYmVsOwoJCX0KCgkJdGhpcy5fZW5oYW5jZSgpOwoKCQlpZiAoIGNoZWNrZWQgKSB7CgkJCXRoaXMuX2FkZENsYXNzKCB0aGlzLmxhYmVsLCAidWktY2hlY2tib3hyYWRpby1jaGVja2VkIiwgInVpLXN0YXRlLWFjdGl2ZSIgKTsKCQkJaWYgKCB0aGlzLmljb24gKSB7CgkJCQl0aGlzLl9hZGRDbGFzcyggdGhpcy5pY29uLCBudWxsLCAidWktc3RhdGUtaG92ZXIiICk7CgkJCX0KCQl9CgoJCXRoaXMuX29uKCB7CgkJCWNoYW5nZTogIl90b2dnbGVDbGFzc2VzIiwKCQkJZm9jdXM6IGZ1bmN0aW9uKCkgewoJCQkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMubGFiZWwsIG51bGwsICJ1aS1zdGF0ZS1mb2N1cyB1aS12aXN1YWwtZm9jdXMiICk7CgkJCX0sCgkJCWJsdXI6IGZ1bmN0aW9uKCkgewoJCQkJdGhpcy5fcmVtb3ZlQ2xhc3MoIHRoaXMubGFiZWwsIG51bGwsICJ1aS1zdGF0ZS1mb2N1cyB1aS12aXN1YWwtZm9jdXMiICk7CgkJCX0KCQl9ICk7Cgl9LAoKCV9yZWFkVHlwZTogZnVuY3Rpb24oKSB7CgkJdmFyIG5vZGVOYW1lID0gdGhpcy5lbGVtZW50WyAwIF0ubm9kZU5hbWUudG9Mb3dlckNhc2UoKTsKCQl0aGlzLnR5cGUgPSB0aGlzLmVsZW1lbnRbIDAgXS50eXBlOwoJCWlmICggbm9kZU5hbWUgIT09ICJpbnB1dCIgfHwgIS9yYWRpb3xjaGVja2JveC8udGVzdCggdGhpcy50eXBlICkgKSB7CgkJCSQuZXJyb3IoICJDYW4ndCBjcmVhdGUgY2hlY2tib3hyYWRpbyBvbiBlbGVtZW50Lm5vZGVOYW1lPSIgKyBub2RlTmFtZSArCgkJCQkiIGFuZCBlbGVtZW50LnR5cGU9IiArIHRoaXMudHlwZSApOwoJCX0KCX0sCgoJLy8gU3VwcG9ydCBqUXVlcnkgTW9iaWxlIGVuaGFuY2VkIG9wdGlvbgoJX2VuaGFuY2U6IGZ1bmN0aW9uKCkgewoJCXRoaXMuX3VwZGF0ZUljb24oIHRoaXMuZWxlbWVudFsgMCBdLmNoZWNrZWQgKTsKCX0sCgoJd2lkZ2V0OiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gdGhpcy5sYWJlbDsKCX0sCgoJX2dldFJhZGlvR3JvdXA6IGZ1bmN0aW9uKCkgewoJCXZhciBncm91cDsKCQl2YXIgbmFtZSA9IHRoaXMuZWxlbWVudFsgMCBdLm5hbWU7CgkJdmFyIG5hbWVTZWxlY3RvciA9ICJpbnB1dFtuYW1lPSciICsgJC51aS5lc2NhcGVTZWxlY3RvciggbmFtZSApICsgIiddIjsKCgkJaWYgKCAhbmFtZSApIHsKCQkJcmV0dXJuICQoIFtdICk7CgkJfQoKCQlpZiAoIHRoaXMuZm9ybS5sZW5ndGggKSB7CgkJCWdyb3VwID0gJCggdGhpcy5mb3JtWyAwIF0uZWxlbWVudHMgKS5maWx0ZXIoIG5hbWVTZWxlY3RvciApOwoJCX0gZWxzZSB7CgoJCQkvLyBOb3QgaW5zaWRlIGEgZm9ybSwgY2hlY2sgYWxsIGlucHV0cyB0aGF0IGFsc28gYXJlIG5vdCBpbnNpZGUgYSBmb3JtCgkJCWdyb3VwID0gJCggbmFtZVNlbGVjdG9yICkuZmlsdGVyKCBmdW5jdGlvbigpIHsKCQkJCXJldHVybiAkKCB0aGlzICkuZm9ybSgpLmxlbmd0aCA9PT0gMDsKCQkJfSApOwoJCX0KCgkJcmV0dXJuIGdyb3VwLm5vdCggdGhpcy5lbGVtZW50ICk7Cgl9LAoKCV90b2dnbGVDbGFzc2VzOiBmdW5jdGlvbigpIHsKCQl2YXIgY2hlY2tlZCA9IHRoaXMuZWxlbWVudFsgMCBdLmNoZWNrZWQ7CgkJdGhpcy5fdG9nZ2xlQ2xhc3MoIHRoaXMubGFiZWwsICJ1aS1jaGVja2JveHJhZGlvLWNoZWNrZWQiLCAidWktc3RhdGUtYWN0aXZlIiwgY2hlY2tlZCApOwoKCQlpZiAoIHRoaXMub3B0aW9ucy5pY29uICYmIHRoaXMudHlwZSA9PT0gImNoZWNrYm94IiApIHsKCQkJdGhpcy5fdG9nZ2xlQ2xhc3MoIHRoaXMuaWNvbiwgbnVsbCwgInVpLWljb24tY2hlY2sgdWktc3RhdGUtY2hlY2tlZCIsIGNoZWNrZWQgKQoJCQkJLl90b2dnbGVDbGFzcyggdGhpcy5pY29uLCBudWxsLCAidWktaWNvbi1ibGFuayIsICFjaGVja2VkICk7CgkJfQoKCQlpZiAoIHRoaXMudHlwZSA9PT0gInJhZGlvIiApIHsKCQkJdGhpcy5fZ2V0UmFkaW9Hcm91cCgpCgkJCQkuZWFjaCggZnVuY3Rpb24oKSB7CgkJCQkJdmFyIGluc3RhbmNlID0gJCggdGhpcyApLmNoZWNrYm94cmFkaW8oICJpbnN0YW5jZSIgKTsKCgkJCQkJaWYgKCBpbnN0YW5jZSApIHsKCQkJCQkJaW5zdGFuY2UuX3JlbW92ZUNsYXNzKCBpbnN0YW5jZS5sYWJlbCwKCQkJCQkJCSJ1aS1jaGVja2JveHJhZGlvLWNoZWNrZWQiLCAidWktc3RhdGUtYWN0aXZlIiApOwoJCQkJCX0KCQkJCX0gKTsKCQl9Cgl9LAoKCV9kZXN0cm95OiBmdW5jdGlvbigpIHsKCQl0aGlzLl91bmJpbmRGb3JtUmVzZXRIYW5kbGVyKCk7CgoJCWlmICggdGhpcy5pY29uICkgewoJCQl0aGlzLmljb24ucmVtb3ZlKCk7CgkJCXRoaXMuaWNvblNwYWNlLnJlbW92ZSgpOwoJCX0KCX0sCgoJX3NldE9wdGlvbjogZnVuY3Rpb24oIGtleSwgdmFsdWUgKSB7CgoJCS8vIFdlIGRvbid0IGFsbG93IHRoZSB2YWx1ZSB0byBiZSBzZXQgdG8gbm90aGluZwoJCWlmICgga2V5ID09PSAibGFiZWwiICYmICF2YWx1ZSApIHsKCQkJcmV0dXJuOwoJCX0KCgkJdGhpcy5fc3VwZXIoIGtleSwgdmFsdWUgKTsKCgkJaWYgKCBrZXkgPT09ICJkaXNhYmxlZCIgKSB7CgkJCXRoaXMuX3RvZ2dsZUNsYXNzKCB0aGlzLmxhYmVsLCBudWxsLCAidWktc3RhdGUtZGlzYWJsZWQiLCB2YWx1ZSApOwoJCQl0aGlzLmVsZW1lbnRbIDAgXS5kaXNhYmxlZCA9IHZhbHVlOwoKCQkJLy8gRG9uJ3QgcmVmcmVzaCB3aGVuIHNldHRpbmcgZGlzYWJsZWQKCQkJcmV0dXJuOwoJCX0KCQl0aGlzLnJlZnJlc2goKTsKCX0sCgoJX3VwZGF0ZUljb246IGZ1bmN0aW9uKCBjaGVja2VkICkgewoJCXZhciB0b0FkZCA9ICJ1aS1pY29uIHVpLWljb24tYmFja2dyb3VuZCAiOwoKCQlpZiAoIHRoaXMub3B0aW9ucy5pY29uICkgewoJCQlpZiAoICF0aGlzLmljb24gKSB7CgkJCQl0aGlzLmljb24gPSAkKCAiPHNwYW4+IiApOwoJCQkJdGhpcy5pY29uU3BhY2UgPSAkKCAiPHNwYW4+IDwvc3Bhbj4iICk7CgkJCQl0aGlzLl9hZGRDbGFzcyggdGhpcy5pY29uU3BhY2UsICJ1aS1jaGVja2JveHJhZGlvLWljb24tc3BhY2UiICk7CgkJCX0KCgkJCWlmICggdGhpcy50eXBlID09PSAiY2hlY2tib3giICkgewoJCQkJdG9BZGQgKz0gY2hlY2tlZCA/ICJ1aS1pY29uLWNoZWNrIHVpLXN0YXRlLWNoZWNrZWQiIDogInVpLWljb24tYmxhbmsiOwoJCQkJdGhpcy5fcmVtb3ZlQ2xhc3MoIHRoaXMuaWNvbiwgbnVsbCwgY2hlY2tlZCA/ICJ1aS1pY29uLWJsYW5rIiA6ICJ1aS1pY29uLWNoZWNrIiApOwoJCQl9IGVsc2UgewoJCQkJdG9BZGQgKz0gInVpLWljb24tYmxhbmsiOwoJCQl9CgkJCXRoaXMuX2FkZENsYXNzKCB0aGlzLmljb24sICJ1aS1jaGVja2JveHJhZGlvLWljb24iLCB0b0FkZCApOwoJCQlpZiAoICFjaGVja2VkICkgewoJCQkJdGhpcy5fcmVtb3ZlQ2xhc3MoIHRoaXMuaWNvbiwgbnVsbCwgInVpLWljb24tY2hlY2sgdWktc3RhdGUtY2hlY2tlZCIgKTsKCQkJfQoJCQl0aGlzLmljb24ucHJlcGVuZFRvKCB0aGlzLmxhYmVsICkuYWZ0ZXIoIHRoaXMuaWNvblNwYWNlICk7CgkJfSBlbHNlIGlmICggdGhpcy5pY29uICE9PSB1bmRlZmluZWQgKSB7CgkJCXRoaXMuaWNvbi5yZW1vdmUoKTsKCQkJdGhpcy5pY29uU3BhY2UucmVtb3ZlKCk7CgkJCWRlbGV0ZSB0aGlzLmljb247CgkJfQoJfSwKCglfdXBkYXRlTGFiZWw6IGZ1bmN0aW9uKCkgewoKCQkvLyBSZW1vdmUgdGhlIGNvbnRlbnRzIG9mIHRoZSBsYWJlbCAoIG1pbnVzIHRoZSBpY29uLCBpY29uIHNwYWNlLCBhbmQgaW5wdXQgKQoJCXZhciBjb250ZW50cyA9IHRoaXMubGFiZWwuY29udGVudHMoKS5ub3QoIHRoaXMuZWxlbWVudFsgMCBdICk7CgkJaWYgKCB0aGlzLmljb24gKSB7CgkJCWNvbnRlbnRzID0gY29udGVudHMubm90KCB0aGlzLmljb25bIDAgXSApOwoJCX0KCQlpZiAoIHRoaXMuaWNvblNwYWNlICkgewoJCQljb250ZW50cyA9IGNvbnRlbnRzLm5vdCggdGhpcy5pY29uU3BhY2VbIDAgXSApOwoJCX0KCQljb250ZW50cy5yZW1vdmUoKTsKCgkJdGhpcy5sYWJlbC5hcHBlbmQoIHRoaXMub3B0aW9ucy5sYWJlbCApOwoJfSwKCglyZWZyZXNoOiBmdW5jdGlvbigpIHsKCQl2YXIgY2hlY2tlZCA9IHRoaXMuZWxlbWVudFsgMCBdLmNoZWNrZWQsCgkJCWlzRGlzYWJsZWQgPSB0aGlzLmVsZW1lbnRbIDAgXS5kaXNhYmxlZDsKCgkJdGhpcy5fdXBkYXRlSWNvbiggY2hlY2tlZCApOwoJCXRoaXMuX3RvZ2dsZUNsYXNzKCB0aGlzLmxhYmVsLCAidWktY2hlY2tib3hyYWRpby1jaGVja2VkIiwgInVpLXN0YXRlLWFjdGl2ZSIsIGNoZWNrZWQgKTsKCQlpZiAoIHRoaXMub3B0aW9ucy5sYWJlbCAhPT0gbnVsbCApIHsKCQkJdGhpcy5fdXBkYXRlTGFiZWwoKTsKCQl9CgoJCWlmICggaXNEaXNhYmxlZCAhPT0gdGhpcy5vcHRpb25zLmRpc2FibGVkICkgewoJCQl0aGlzLl9zZXRPcHRpb25zKCB7ICJkaXNhYmxlZCI6IGlzRGlzYWJsZWQgfSApOwoJCX0KCX0KCn0gXSApOwoKdmFyIHdpZGdldHNDaGVja2JveHJhZGlvID0gJC51aS5jaGVja2JveHJhZGlvOwoKCi8qIQogKiBqUXVlcnkgVUkgQnV0dG9uIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogQnV0dG9uCi8vPj5ncm91cDogV2lkZ2V0cwovLz4+ZGVzY3JpcHRpb246IEVuaGFuY2VzIGEgZm9ybSB3aXRoIHRoZW1lYWJsZSBidXR0b25zLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vYnV0dG9uLwovLz4+ZGVtb3M6IGh0dHA6Ly9qcXVlcnl1aS5jb20vYnV0dG9uLwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvY29yZS5jc3MKLy8+PmNzcy5zdHJ1Y3R1cmU6IC4uLy4uL3RoZW1lcy9iYXNlL2J1dHRvbi5jc3MKLy8+PmNzcy50aGVtZTogLi4vLi4vdGhlbWVzL2Jhc2UvdGhlbWUuY3NzCgoKCiQud2lkZ2V0KCAidWkuYnV0dG9uIiwgewoJdmVyc2lvbjogIjEuMTIuMSIsCglkZWZhdWx0RWxlbWVudDogIjxidXR0b24+IiwKCW9wdGlvbnM6IHsKCQljbGFzc2VzOiB7CgkJCSJ1aS1idXR0b24iOiAidWktY29ybmVyLWFsbCIKCQl9LAoJCWRpc2FibGVkOiBudWxsLAoJCWljb246IG51bGwsCgkJaWNvblBvc2l0aW9uOiAiYmVnaW5uaW5nIiwKCQlsYWJlbDogbnVsbCwKCQlzaG93TGFiZWw6IHRydWUKCX0sCgoJX2dldENyZWF0ZU9wdGlvbnM6IGZ1bmN0aW9uKCkgewoJCXZhciBkaXNhYmxlZCwKCgkJCS8vIFRoaXMgaXMgdG8gc3VwcG9ydCBjYXNlcyBsaWtlIGluIGpRdWVyeSBNb2JpbGUgd2hlcmUgdGhlIGJhc2Ugd2lkZ2V0IGRvZXMgaGF2ZQoJCQkvLyBhbiBpbXBsZW1lbnRhdGlvbiBvZiBfZ2V0Q3JlYXRlT3B0aW9ucwoJCQlvcHRpb25zID0gdGhpcy5fc3VwZXIoKSB8fCB7fTsKCgkJdGhpcy5pc0lucHV0ID0gdGhpcy5lbGVtZW50LmlzKCAiaW5wdXQiICk7CgoJCWRpc2FibGVkID0gdGhpcy5lbGVtZW50WyAwIF0uZGlzYWJsZWQ7CgkJaWYgKCBkaXNhYmxlZCAhPSBudWxsICkgewoJCQlvcHRpb25zLmRpc2FibGVkID0gZGlzYWJsZWQ7CgkJfQoKCQl0aGlzLm9yaWdpbmFsTGFiZWwgPSB0aGlzLmlzSW5wdXQgPyB0aGlzLmVsZW1lbnQudmFsKCkgOiB0aGlzLmVsZW1lbnQuaHRtbCgpOwoJCWlmICggdGhpcy5vcmlnaW5hbExhYmVsICkgewoJCQlvcHRpb25zLmxhYmVsID0gdGhpcy5vcmlnaW5hbExhYmVsOwoJCX0KCgkJcmV0dXJuIG9wdGlvbnM7Cgl9LAoKCV9jcmVhdGU6IGZ1bmN0aW9uKCkgewoJCWlmICggIXRoaXMub3B0aW9uLnNob3dMYWJlbCAmICF0aGlzLm9wdGlvbnMuaWNvbiApIHsKCQkJdGhpcy5vcHRpb25zLnNob3dMYWJlbCA9IHRydWU7CgkJfQoKCQkvLyBXZSBoYXZlIHRvIGNoZWNrIHRoZSBvcHRpb24gYWdhaW4gaGVyZSBldmVuIHRob3VnaCB3ZSBkaWQgaW4gX2dldENyZWF0ZU9wdGlvbnMsCgkJLy8gYmVjYXVzZSBudWxsIG1heSBoYXZlIGJlZW4gcGFzc2VkIG9uIGluaXQgd2hpY2ggd291bGQgb3ZlcnJpZGUgd2hhdCB3YXMgc2V0IGluCgkJLy8gX2dldENyZWF0ZU9wdGlvbnMKCQlpZiAoIHRoaXMub3B0aW9ucy5kaXNhYmxlZCA9PSBudWxsICkgewoJCQl0aGlzLm9wdGlvbnMuZGlzYWJsZWQgPSB0aGlzLmVsZW1lbnRbIDAgXS5kaXNhYmxlZCB8fCBmYWxzZTsKCQl9CgoJCXRoaXMuaGFzVGl0bGUgPSAhIXRoaXMuZWxlbWVudC5hdHRyKCAidGl0bGUiICk7CgoJCS8vIENoZWNrIHRvIHNlZSBpZiB0aGUgbGFiZWwgbmVlZHMgdG8gYmUgc2V0IG9yIGlmIGl0cyBhbHJlYWR5IGNvcnJlY3QKCQlpZiAoIHRoaXMub3B0aW9ucy5sYWJlbCAmJiB0aGlzLm9wdGlvbnMubGFiZWwgIT09IHRoaXMub3JpZ2luYWxMYWJlbCApIHsKCQkJaWYgKCB0aGlzLmlzSW5wdXQgKSB7CgkJCQl0aGlzLmVsZW1lbnQudmFsKCB0aGlzLm9wdGlvbnMubGFiZWwgKTsKCQkJfSBlbHNlIHsKCQkJCXRoaXMuZWxlbWVudC5odG1sKCB0aGlzLm9wdGlvbnMubGFiZWwgKTsKCQkJfQoJCX0KCQl0aGlzLl9hZGRDbGFzcyggInVpLWJ1dHRvbiIsICJ1aS13aWRnZXQiICk7CgkJdGhpcy5fc2V0T3B0aW9uKCAiZGlzYWJsZWQiLCB0aGlzLm9wdGlvbnMuZGlzYWJsZWQgKTsKCQl0aGlzLl9lbmhhbmNlKCk7CgoJCWlmICggdGhpcy5lbGVtZW50LmlzKCAiYSIgKSApIHsKCQkJdGhpcy5fb24oIHsKCQkJCSJrZXl1cCI6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCQlpZiAoIGV2ZW50LmtleUNvZGUgPT09ICQudWkua2V5Q29kZS5TUEFDRSApIHsKCQkJCQkJZXZlbnQucHJldmVudERlZmF1bHQoKTsKCgkJCQkJCS8vIFN1cHBvcnQ6IFBoYW50b21KUyA8PSAxLjksIElFIDggT25seQoJCQkJCQkvLyBJZiBhIG5hdGl2ZSBjbGljayBpcyBhdmFpbGFibGUgdXNlIGl0IHNvIHdlIGFjdHVhbGx5IGNhdXNlIG5hdmlnYXRpb24KCQkJCQkJLy8gb3RoZXJ3aXNlIGp1c3QgdHJpZ2dlciBhIGNsaWNrIGV2ZW50CgkJCQkJCWlmICggdGhpcy5lbGVtZW50WyAwIF0uY2xpY2sgKSB7CgkJCQkJCQl0aGlzLmVsZW1lbnRbIDAgXS5jbGljaygpOwoJCQkJCQl9IGVsc2UgewoJCQkJCQkJdGhpcy5lbGVtZW50LnRyaWdnZXIoICJjbGljayIgKTsKCQkJCQkJfQoJCQkJCX0KCQkJCX0KCQkJfSApOwoJCX0KCX0sCgoJX2VuaGFuY2U6IGZ1bmN0aW9uKCkgewoJCWlmICggIXRoaXMuZWxlbWVudC5pcyggImJ1dHRvbiIgKSApIHsKCQkJdGhpcy5lbGVtZW50LmF0dHIoICJyb2xlIiwgImJ1dHRvbiIgKTsKCQl9CgoJCWlmICggdGhpcy5vcHRpb25zLmljb24gKSB7CgkJCXRoaXMuX3VwZGF0ZUljb24oICJpY29uIiwgdGhpcy5vcHRpb25zLmljb24gKTsKCQkJdGhpcy5fdXBkYXRlVG9vbHRpcCgpOwoJCX0KCX0sCgoJX3VwZGF0ZVRvb2x0aXA6IGZ1bmN0aW9uKCkgewoJCXRoaXMudGl0bGUgPSB0aGlzLmVsZW1lbnQuYXR0ciggInRpdGxlIiApOwoKCQlpZiAoICF0aGlzLm9wdGlvbnMuc2hvd0xhYmVsICYmICF0aGlzLnRpdGxlICkgewoJCQl0aGlzLmVsZW1lbnQuYXR0ciggInRpdGxlIiwgdGhpcy5vcHRpb25zLmxhYmVsICk7CgkJfQoJfSwKCglfdXBkYXRlSWNvbjogZnVuY3Rpb24oIG9wdGlvbiwgdmFsdWUgKSB7CgkJdmFyIGljb24gPSBvcHRpb24gIT09ICJpY29uUG9zaXRpb24iLAoJCQlwb3NpdGlvbiA9IGljb24gPyB0aGlzLm9wdGlvbnMuaWNvblBvc2l0aW9uIDogdmFsdWUsCgkJCWRpc3BsYXlCbG9jayA9IHBvc2l0aW9uID09PSAidG9wIiB8fCBwb3NpdGlvbiA9PT0gImJvdHRvbSI7CgoJCS8vIENyZWF0ZSBpY29uCgkJaWYgKCAhdGhpcy5pY29uICkgewoJCQl0aGlzLmljb24gPSAkKCAiPHNwYW4+IiApOwoKCQkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMuaWNvbiwgInVpLWJ1dHRvbi1pY29uIiwgInVpLWljb24iICk7CgoJCQlpZiAoICF0aGlzLm9wdGlvbnMuc2hvd0xhYmVsICkgewoJCQkJdGhpcy5fYWRkQ2xhc3MoICJ1aS1idXR0b24taWNvbi1vbmx5IiApOwoJCQl9CgkJfSBlbHNlIGlmICggaWNvbiApIHsKCgkJCS8vIElmIHdlIGFyZSB1cGRhdGluZyB0aGUgaWNvbiByZW1vdmUgdGhlIG9sZCBpY29uIGNsYXNzCgkJCXRoaXMuX3JlbW92ZUNsYXNzKCB0aGlzLmljb24sIG51bGwsIHRoaXMub3B0aW9ucy5pY29uICk7CgkJfQoKCQkvLyBJZiB3ZSBhcmUgdXBkYXRpbmcgdGhlIGljb24gYWRkIHRoZSBuZXcgaWNvbiBjbGFzcwoJCWlmICggaWNvbiApIHsKCQkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMuaWNvbiwgbnVsbCwgdmFsdWUgKTsKCQl9CgoJCXRoaXMuX2F0dGFjaEljb24oIHBvc2l0aW9uICk7CgoJCS8vIElmIHRoZSBpY29uIGlzIG9uIHRvcCBvciBib3R0b20gd2UgbmVlZCB0byBhZGQgdGhlIHVpLXdpZGdldC1pY29uLWJsb2NrIGNsYXNzIGFuZCByZW1vdmUKCQkvLyB0aGUgaWNvblNwYWNlIGlmIHRoZXJlIGlzIG9uZS4KCQlpZiAoIGRpc3BsYXlCbG9jayApIHsKCQkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMuaWNvbiwgbnVsbCwgInVpLXdpZGdldC1pY29uLWJsb2NrIiApOwoJCQlpZiAoIHRoaXMuaWNvblNwYWNlICkgewoJCQkJdGhpcy5pY29uU3BhY2UucmVtb3ZlKCk7CgkJCX0KCQl9IGVsc2UgewoKCQkJLy8gUG9zaXRpb24gaXMgYmVnaW5uaW5nIG9yIGVuZCBzbyByZW1vdmUgdGhlIHVpLXdpZGdldC1pY29uLWJsb2NrIGNsYXNzIGFuZCBhZGQgdGhlCgkJCS8vIHNwYWNlIGlmIGl0IGRvZXMgbm90IGV4aXN0CgkJCWlmICggIXRoaXMuaWNvblNwYWNlICkgewoJCQkJdGhpcy5pY29uU3BhY2UgPSAkKCAiPHNwYW4+IDwvc3Bhbj4iICk7CgkJCQl0aGlzLl9hZGRDbGFzcyggdGhpcy5pY29uU3BhY2UsICJ1aS1idXR0b24taWNvbi1zcGFjZSIgKTsKCQkJfQoJCQl0aGlzLl9yZW1vdmVDbGFzcyggdGhpcy5pY29uLCBudWxsLCAidWktd2lnZXQtaWNvbi1ibG9jayIgKTsKCQkJdGhpcy5fYXR0YWNoSWNvblNwYWNlKCBwb3NpdGlvbiApOwoJCX0KCX0sCgoJX2Rlc3Ryb3k6IGZ1bmN0aW9uKCkgewoJCXRoaXMuZWxlbWVudC5yZW1vdmVBdHRyKCAicm9sZSIgKTsKCgkJaWYgKCB0aGlzLmljb24gKSB7CgkJCXRoaXMuaWNvbi5yZW1vdmUoKTsKCQl9CgkJaWYgKCB0aGlzLmljb25TcGFjZSApIHsKCQkJdGhpcy5pY29uU3BhY2UucmVtb3ZlKCk7CgkJfQoJCWlmICggIXRoaXMuaGFzVGl0bGUgKSB7CgkJCXRoaXMuZWxlbWVudC5yZW1vdmVBdHRyKCAidGl0bGUiICk7CgkJfQoJfSwKCglfYXR0YWNoSWNvblNwYWNlOiBmdW5jdGlvbiggaWNvblBvc2l0aW9uICkgewoJCXRoaXMuaWNvblsgL14oPzplbmR8Ym90dG9tKS8udGVzdCggaWNvblBvc2l0aW9uICkgPyAiYmVmb3JlIiA6ICJhZnRlciIgXSggdGhpcy5pY29uU3BhY2UgKTsKCX0sCgoJX2F0dGFjaEljb246IGZ1bmN0aW9uKCBpY29uUG9zaXRpb24gKSB7CgkJdGhpcy5lbGVtZW50WyAvXig/OmVuZHxib3R0b20pLy50ZXN0KCBpY29uUG9zaXRpb24gKSA/ICJhcHBlbmQiIDogInByZXBlbmQiIF0oIHRoaXMuaWNvbiApOwoJfSwKCglfc2V0T3B0aW9uczogZnVuY3Rpb24oIG9wdGlvbnMgKSB7CgkJdmFyIG5ld1Nob3dMYWJlbCA9IG9wdGlvbnMuc2hvd0xhYmVsID09PSB1bmRlZmluZWQgPwoJCQkJdGhpcy5vcHRpb25zLnNob3dMYWJlbCA6CgkJCQlvcHRpb25zLnNob3dMYWJlbCwKCQkJbmV3SWNvbiA9IG9wdGlvbnMuaWNvbiA9PT0gdW5kZWZpbmVkID8gdGhpcy5vcHRpb25zLmljb24gOiBvcHRpb25zLmljb247CgoJCWlmICggIW5ld1Nob3dMYWJlbCAmJiAhbmV3SWNvbiApIHsKCQkJb3B0aW9ucy5zaG93TGFiZWwgPSB0cnVlOwoJCX0KCQl0aGlzLl9zdXBlciggb3B0aW9ucyApOwoJfSwKCglfc2V0T3B0aW9uOiBmdW5jdGlvbigga2V5LCB2YWx1ZSApIHsKCQlpZiAoIGtleSA9PT0gImljb24iICkgewoJCQlpZiAoIHZhbHVlICkgewoJCQkJdGhpcy5fdXBkYXRlSWNvbigga2V5LCB2YWx1ZSApOwoJCQl9IGVsc2UgaWYgKCB0aGlzLmljb24gKSB7CgkJCQl0aGlzLmljb24ucmVtb3ZlKCk7CgkJCQlpZiAoIHRoaXMuaWNvblNwYWNlICkgewoJCQkJCXRoaXMuaWNvblNwYWNlLnJlbW92ZSgpOwoJCQkJfQoJCQl9CgkJfQoKCQlpZiAoIGtleSA9PT0gImljb25Qb3NpdGlvbiIgKSB7CgkJCXRoaXMuX3VwZGF0ZUljb24oIGtleSwgdmFsdWUgKTsKCQl9CgoJCS8vIE1ha2Ugc3VyZSB3ZSBjYW4ndCBlbmQgdXAgd2l0aCBhIGJ1dHRvbiB0aGF0IGhhcyBuZWl0aGVyIHRleHQgbm9yIGljb24KCQlpZiAoIGtleSA9PT0gInNob3dMYWJlbCIgKSB7CgkJCQl0aGlzLl90b2dnbGVDbGFzcyggInVpLWJ1dHRvbi1pY29uLW9ubHkiLCBudWxsLCAhdmFsdWUgKTsKCQkJCXRoaXMuX3VwZGF0ZVRvb2x0aXAoKTsKCQl9CgoJCWlmICgga2V5ID09PSAibGFiZWwiICkgewoJCQlpZiAoIHRoaXMuaXNJbnB1dCApIHsKCQkJCXRoaXMuZWxlbWVudC52YWwoIHZhbHVlICk7CgkJCX0gZWxzZSB7CgoJCQkJLy8gSWYgdGhlcmUgaXMgYW4gaWNvbiwgYXBwZW5kIGl0LCBlbHNlIG5vdGhpbmcgdGhlbiBhcHBlbmQgdGhlIHZhbHVlCgkJCQkvLyB0aGlzIGF2b2lkcyByZW1vdmFsIG9mIHRoZSBpY29uIHdoZW4gc2V0dGluZyBsYWJlbCB0ZXh0CgkJCQl0aGlzLmVsZW1lbnQuaHRtbCggdmFsdWUgKTsKCQkJCWlmICggdGhpcy5pY29uICkgewoJCQkJCXRoaXMuX2F0dGFjaEljb24oIHRoaXMub3B0aW9ucy5pY29uUG9zaXRpb24gKTsKCQkJCQl0aGlzLl9hdHRhY2hJY29uU3BhY2UoIHRoaXMub3B0aW9ucy5pY29uUG9zaXRpb24gKTsKCQkJCX0KCQkJfQoJCX0KCgkJdGhpcy5fc3VwZXIoIGtleSwgdmFsdWUgKTsKCgkJaWYgKCBrZXkgPT09ICJkaXNhYmxlZCIgKSB7CgkJCXRoaXMuX3RvZ2dsZUNsYXNzKCBudWxsLCAidWktc3RhdGUtZGlzYWJsZWQiLCB2YWx1ZSApOwoJCQl0aGlzLmVsZW1lbnRbIDAgXS5kaXNhYmxlZCA9IHZhbHVlOwoJCQlpZiAoIHZhbHVlICkgewoJCQkJdGhpcy5lbGVtZW50LmJsdXIoKTsKCQkJfQoJCX0KCX0sCgoJcmVmcmVzaDogZnVuY3Rpb24oKSB7CgoJCS8vIE1ha2Ugc3VyZSB0byBvbmx5IGNoZWNrIGRpc2FibGVkIGlmIGl0cyBhbiBlbGVtZW50IHRoYXQgc3VwcG9ydHMgdGhpcyBvdGhlcndpc2UKCQkvLyBjaGVjayBmb3IgdGhlIGRpc2FibGVkIGNsYXNzIHRvIGRldGVybWluZSBzdGF0ZQoJCXZhciBpc0Rpc2FibGVkID0gdGhpcy5lbGVtZW50LmlzKCAiaW5wdXQsIGJ1dHRvbiIgKSA/CgkJCXRoaXMuZWxlbWVudFsgMCBdLmRpc2FibGVkIDogdGhpcy5lbGVtZW50Lmhhc0NsYXNzKCAidWktYnV0dG9uLWRpc2FibGVkIiApOwoKCQlpZiAoIGlzRGlzYWJsZWQgIT09IHRoaXMub3B0aW9ucy5kaXNhYmxlZCApIHsKCQkJdGhpcy5fc2V0T3B0aW9ucyggeyBkaXNhYmxlZDogaXNEaXNhYmxlZCB9ICk7CgkJfQoKCQl0aGlzLl91cGRhdGVUb29sdGlwKCk7Cgl9Cn0gKTsKCi8vIERFUFJFQ0FURUQKaWYgKCAkLnVpQmFja0NvbXBhdCAhPT0gZmFsc2UgKSB7CgoJLy8gVGV4dCBhbmQgSWNvbnMgb3B0aW9ucwoJJC53aWRnZXQoICJ1aS5idXR0b24iLCAkLnVpLmJ1dHRvbiwgewoJCW9wdGlvbnM6IHsKCQkJdGV4dDogdHJ1ZSwKCQkJaWNvbnM6IHsKCQkJCXByaW1hcnk6IG51bGwsCgkJCQlzZWNvbmRhcnk6IG51bGwKCQkJfQoJCX0sCgoJCV9jcmVhdGU6IGZ1bmN0aW9uKCkgewoJCQlpZiAoIHRoaXMub3B0aW9ucy5zaG93TGFiZWwgJiYgIXRoaXMub3B0aW9ucy50ZXh0ICkgewoJCQkJdGhpcy5vcHRpb25zLnNob3dMYWJlbCA9IHRoaXMub3B0aW9ucy50ZXh0OwoJCQl9CgkJCWlmICggIXRoaXMub3B0aW9ucy5zaG93TGFiZWwgJiYgdGhpcy5vcHRpb25zLnRleHQgKSB7CgkJCQl0aGlzLm9wdGlvbnMudGV4dCA9IHRoaXMub3B0aW9ucy5zaG93TGFiZWw7CgkJCX0KCQkJaWYgKCAhdGhpcy5vcHRpb25zLmljb24gJiYgKCB0aGlzLm9wdGlvbnMuaWNvbnMucHJpbWFyeSB8fAoJCQkJCXRoaXMub3B0aW9ucy5pY29ucy5zZWNvbmRhcnkgKSApIHsKCQkJCWlmICggdGhpcy5vcHRpb25zLmljb25zLnByaW1hcnkgKSB7CgkJCQkJdGhpcy5vcHRpb25zLmljb24gPSB0aGlzLm9wdGlvbnMuaWNvbnMucHJpbWFyeTsKCQkJCX0gZWxzZSB7CgkJCQkJdGhpcy5vcHRpb25zLmljb24gPSB0aGlzLm9wdGlvbnMuaWNvbnMuc2Vjb25kYXJ5OwoJCQkJCXRoaXMub3B0aW9ucy5pY29uUG9zaXRpb24gPSAiZW5kIjsKCQkJCX0KCQkJfSBlbHNlIGlmICggdGhpcy5vcHRpb25zLmljb24gKSB7CgkJCQl0aGlzLm9wdGlvbnMuaWNvbnMucHJpbWFyeSA9IHRoaXMub3B0aW9ucy5pY29uOwoJCQl9CgkJCXRoaXMuX3N1cGVyKCk7CgkJfSwKCgkJX3NldE9wdGlvbjogZnVuY3Rpb24oIGtleSwgdmFsdWUgKSB7CgkJCWlmICgga2V5ID09PSAidGV4dCIgKSB7CgkJCQl0aGlzLl9zdXBlciggInNob3dMYWJlbCIsIHZhbHVlICk7CgkJCQlyZXR1cm47CgkJCX0KCQkJaWYgKCBrZXkgPT09ICJzaG93TGFiZWwiICkgewoJCQkJdGhpcy5vcHRpb25zLnRleHQgPSB2YWx1ZTsKCQkJfQoJCQlpZiAoIGtleSA9PT0gImljb24iICkgewoJCQkJdGhpcy5vcHRpb25zLmljb25zLnByaW1hcnkgPSB2YWx1ZTsKCQkJfQoJCQlpZiAoIGtleSA9PT0gImljb25zIiApIHsKCQkJCWlmICggdmFsdWUucHJpbWFyeSApIHsKCQkJCQl0aGlzLl9zdXBlciggImljb24iLCB2YWx1ZS5wcmltYXJ5ICk7CgkJCQkJdGhpcy5fc3VwZXIoICJpY29uUG9zaXRpb24iLCAiYmVnaW5uaW5nIiApOwoJCQkJfSBlbHNlIGlmICggdmFsdWUuc2Vjb25kYXJ5ICkgewoJCQkJCXRoaXMuX3N1cGVyKCAiaWNvbiIsIHZhbHVlLnNlY29uZGFyeSApOwoJCQkJCXRoaXMuX3N1cGVyKCAiaWNvblBvc2l0aW9uIiwgImVuZCIgKTsKCQkJCX0KCQkJfQoJCQl0aGlzLl9zdXBlckFwcGx5KCBhcmd1bWVudHMgKTsKCQl9Cgl9ICk7CgoJJC5mbi5idXR0b24gPSAoIGZ1bmN0aW9uKCBvcmlnICkgewoJCXJldHVybiBmdW5jdGlvbigpIHsKCQkJaWYgKCAhdGhpcy5sZW5ndGggfHwgKCB0aGlzLmxlbmd0aCAmJiB0aGlzWyAwIF0udGFnTmFtZSAhPT0gIklOUFVUIiApIHx8CgkJCQkJKCB0aGlzLmxlbmd0aCAmJiB0aGlzWyAwIF0udGFnTmFtZSA9PT0gIklOUFVUIiAmJiAoCgkJCQkJCXRoaXMuYXR0ciggInR5cGUiICkgIT09ICJjaGVja2JveCIgJiYgdGhpcy5hdHRyKCAidHlwZSIgKSAhPT0gInJhZGlvIgoJCQkJCSkgKSApIHsKCQkJCXJldHVybiBvcmlnLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKTsKCQkJfQoJCQlpZiAoICEkLnVpLmNoZWNrYm94cmFkaW8gKSB7CgkJCQkkLmVycm9yKCAiQ2hlY2tib3hyYWRpbyB3aWRnZXQgbWlzc2luZyIgKTsKCQkJfQoJCQlpZiAoIGFyZ3VtZW50cy5sZW5ndGggPT09IDAgKSB7CgkJCQlyZXR1cm4gdGhpcy5jaGVja2JveHJhZGlvKCB7CgkJCQkJImljb24iOiBmYWxzZQoJCQkJfSApOwoJCQl9CgkJCXJldHVybiB0aGlzLmNoZWNrYm94cmFkaW8uYXBwbHkoIHRoaXMsIGFyZ3VtZW50cyApOwoJCX07Cgl9ICkoICQuZm4uYnV0dG9uICk7CgoJJC5mbi5idXR0b25zZXQgPSBmdW5jdGlvbigpIHsKCQlpZiAoICEkLnVpLmNvbnRyb2xncm91cCApIHsKCQkJJC5lcnJvciggIkNvbnRyb2xncm91cCB3aWRnZXQgbWlzc2luZyIgKTsKCQl9CgkJaWYgKCBhcmd1bWVudHNbIDAgXSA9PT0gIm9wdGlvbiIgJiYgYXJndW1lbnRzWyAxIF0gPT09ICJpdGVtcyIgJiYgYXJndW1lbnRzWyAyIF0gKSB7CgkJCXJldHVybiB0aGlzLmNvbnRyb2xncm91cC5hcHBseSggdGhpcywKCQkJCVsgYXJndW1lbnRzWyAwIF0sICJpdGVtcy5idXR0b24iLCBhcmd1bWVudHNbIDIgXSBdICk7CgkJfQoJCWlmICggYXJndW1lbnRzWyAwIF0gPT09ICJvcHRpb24iICYmIGFyZ3VtZW50c1sgMSBdID09PSAiaXRlbXMiICkgewoJCQlyZXR1cm4gdGhpcy5jb250cm9sZ3JvdXAuYXBwbHkoIHRoaXMsIFsgYXJndW1lbnRzWyAwIF0sICJpdGVtcy5idXR0b24iIF0gKTsKCQl9CgkJaWYgKCB0eXBlb2YgYXJndW1lbnRzWyAwIF0gPT09ICJvYmplY3QiICYmIGFyZ3VtZW50c1sgMCBdLml0ZW1zICkgewoJCQlhcmd1bWVudHNbIDAgXS5pdGVtcyA9IHsKCQkJCWJ1dHRvbjogYXJndW1lbnRzWyAwIF0uaXRlbXMKCQkJfTsKCQl9CgkJcmV0dXJuIHRoaXMuY29udHJvbGdyb3VwLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKTsKCX07Cn0KCnZhciB3aWRnZXRzQnV0dG9uID0gJC51aS5idXR0b247CgoKLy8ganNjczpkaXNhYmxlIG1heGltdW1MaW5lTGVuZ3RoCi8qIGpzY3M6ZGlzYWJsZSByZXF1aXJlQ2FtZWxDYXNlT3JVcHBlckNhc2VJZGVudGlmaWVycyAqLwovKiEKICogalF1ZXJ5IFVJIERhdGVwaWNrZXIgMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiBEYXRlcGlja2VyCi8vPj5ncm91cDogV2lkZ2V0cwovLz4+ZGVzY3JpcHRpb246IERpc3BsYXlzIGEgY2FsZW5kYXIgZnJvbSBhbiBpbnB1dCBvciBpbmxpbmUgZm9yIHNlbGVjdGluZyBkYXRlcy4KLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2RhdGVwaWNrZXIvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9kYXRlcGlja2VyLwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvY29yZS5jc3MKLy8+PmNzcy5zdHJ1Y3R1cmU6IC4uLy4uL3RoZW1lcy9iYXNlL2RhdGVwaWNrZXIuY3NzCi8vPj5jc3MudGhlbWU6IC4uLy4uL3RoZW1lcy9iYXNlL3RoZW1lLmNzcwoKCgokLmV4dGVuZCggJC51aSwgeyBkYXRlcGlja2VyOiB7IHZlcnNpb246ICIxLjEyLjEiIH0gfSApOwoKdmFyIGRhdGVwaWNrZXJfaW5zdEFjdGl2ZTsKCmZ1bmN0aW9uIGRhdGVwaWNrZXJfZ2V0WmluZGV4KCBlbGVtICkgewoJdmFyIHBvc2l0aW9uLCB2YWx1ZTsKCXdoaWxlICggZWxlbS5sZW5ndGggJiYgZWxlbVsgMCBdICE9PSBkb2N1bWVudCApIHsKCgkJLy8gSWdub3JlIHotaW5kZXggaWYgcG9zaXRpb24gaXMgc2V0IHRvIGEgdmFsdWUgd2hlcmUgei1pbmRleCBpcyBpZ25vcmVkIGJ5IHRoZSBicm93c2VyCgkJLy8gVGhpcyBtYWtlcyBiZWhhdmlvciBvZiB0aGlzIGZ1bmN0aW9uIGNvbnNpc3RlbnQgYWNyb3NzIGJyb3dzZXJzCgkJLy8gV2ViS2l0IGFsd2F5cyByZXR1cm5zIGF1dG8gaWYgdGhlIGVsZW1lbnQgaXMgcG9zaXRpb25lZAoJCXBvc2l0aW9uID0gZWxlbS5jc3MoICJwb3NpdGlvbiIgKTsKCQlpZiAoIHBvc2l0aW9uID09PSAiYWJzb2x1dGUiIHx8IHBvc2l0aW9uID09PSAicmVsYXRpdmUiIHx8IHBvc2l0aW9uID09PSAiZml4ZWQiICkgewoKCQkJLy8gSUUgcmV0dXJucyAwIHdoZW4gekluZGV4IGlzIG5vdCBzcGVjaWZpZWQKCQkJLy8gb3RoZXIgYnJvd3NlcnMgcmV0dXJuIGEgc3RyaW5nCgkJCS8vIHdlIGlnbm9yZSB0aGUgY2FzZSBvZiBuZXN0ZWQgZWxlbWVudHMgd2l0aCBhbiBleHBsaWNpdCB2YWx1ZSBvZiAwCgkJCS8vIDxkaXYgc3R5bGU9InotaW5kZXg6IC0xMDsiPjxkaXYgc3R5bGU9InotaW5kZXg6IDA7Ij48L2Rpdj48L2Rpdj4KCQkJdmFsdWUgPSBwYXJzZUludCggZWxlbS5jc3MoICJ6SW5kZXgiICksIDEwICk7CgkJCWlmICggIWlzTmFOKCB2YWx1ZSApICYmIHZhbHVlICE9PSAwICkgewoJCQkJcmV0dXJuIHZhbHVlOwoJCQl9CgkJfQoJCWVsZW0gPSBlbGVtLnBhcmVudCgpOwoJfQoKCXJldHVybiAwOwp9Ci8qIERhdGUgcGlja2VyIG1hbmFnZXIuCiAgIFVzZSB0aGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoaXMgY2xhc3MsICQuZGF0ZXBpY2tlciwgdG8gaW50ZXJhY3Qgd2l0aCB0aGUgZGF0ZSBwaWNrZXIuCiAgIFNldHRpbmdzIGZvciAoZ3JvdXBzIG9mKSBkYXRlIHBpY2tlcnMgYXJlIG1haW50YWluZWQgaW4gYW4gaW5zdGFuY2Ugb2JqZWN0LAogICBhbGxvd2luZyBtdWx0aXBsZSBkaWZmZXJlbnQgc2V0dGluZ3Mgb24gdGhlIHNhbWUgcGFnZS4gKi8KCmZ1bmN0aW9uIERhdGVwaWNrZXIoKSB7Cgl0aGlzLl9jdXJJbnN0ID0gbnVsbDsgLy8gVGhlIGN1cnJlbnQgaW5zdGFuY2UgaW4gdXNlCgl0aGlzLl9rZXlFdmVudCA9IGZhbHNlOyAvLyBJZiB0aGUgbGFzdCBldmVudCB3YXMgYSBrZXkgZXZlbnQKCXRoaXMuX2Rpc2FibGVkSW5wdXRzID0gW107IC8vIExpc3Qgb2YgZGF0ZSBwaWNrZXIgaW5wdXRzIHRoYXQgaGF2ZSBiZWVuIGRpc2FibGVkCgl0aGlzLl9kYXRlcGlja2VyU2hvd2luZyA9IGZhbHNlOyAvLyBUcnVlIGlmIHRoZSBwb3B1cCBwaWNrZXIgaXMgc2hvd2luZyAsIGZhbHNlIGlmIG5vdAoJdGhpcy5faW5EaWFsb2cgPSBmYWxzZTsgLy8gVHJ1ZSBpZiBzaG93aW5nIHdpdGhpbiBhICJkaWFsb2ciLCBmYWxzZSBpZiBub3QKCXRoaXMuX21haW5EaXZJZCA9ICJ1aS1kYXRlcGlja2VyLWRpdiI7IC8vIFRoZSBJRCBvZiB0aGUgbWFpbiBkYXRlcGlja2VyIGRpdmlzaW9uCgl0aGlzLl9pbmxpbmVDbGFzcyA9ICJ1aS1kYXRlcGlja2VyLWlubGluZSI7IC8vIFRoZSBuYW1lIG9mIHRoZSBpbmxpbmUgbWFya2VyIGNsYXNzCgl0aGlzLl9hcHBlbmRDbGFzcyA9ICJ1aS1kYXRlcGlja2VyLWFwcGVuZCI7IC8vIFRoZSBuYW1lIG9mIHRoZSBhcHBlbmQgbWFya2VyIGNsYXNzCgl0aGlzLl90cmlnZ2VyQ2xhc3MgPSAidWktZGF0ZXBpY2tlci10cmlnZ2VyIjsgLy8gVGhlIG5hbWUgb2YgdGhlIHRyaWdnZXIgbWFya2VyIGNsYXNzCgl0aGlzLl9kaWFsb2dDbGFzcyA9ICJ1aS1kYXRlcGlja2VyLWRpYWxvZyI7IC8vIFRoZSBuYW1lIG9mIHRoZSBkaWFsb2cgbWFya2VyIGNsYXNzCgl0aGlzLl9kaXNhYmxlQ2xhc3MgPSAidWktZGF0ZXBpY2tlci1kaXNhYmxlZCI7IC8vIFRoZSBuYW1lIG9mIHRoZSBkaXNhYmxlZCBjb3ZlcmluZyBtYXJrZXIgY2xhc3MKCXRoaXMuX3Vuc2VsZWN0YWJsZUNsYXNzID0gInVpLWRhdGVwaWNrZXItdW5zZWxlY3RhYmxlIjsgLy8gVGhlIG5hbWUgb2YgdGhlIHVuc2VsZWN0YWJsZSBjZWxsIG1hcmtlciBjbGFzcwoJdGhpcy5fY3VycmVudENsYXNzID0gInVpLWRhdGVwaWNrZXItY3VycmVudC1kYXkiOyAvLyBUaGUgbmFtZSBvZiB0aGUgY3VycmVudCBkYXkgbWFya2VyIGNsYXNzCgl0aGlzLl9kYXlPdmVyQ2xhc3MgPSAidWktZGF0ZXBpY2tlci1kYXlzLWNlbGwtb3ZlciI7IC8vIFRoZSBuYW1lIG9mIHRoZSBkYXkgaG92ZXIgbWFya2VyIGNsYXNzCgl0aGlzLnJlZ2lvbmFsID0gW107IC8vIEF2YWlsYWJsZSByZWdpb25hbCBzZXR0aW5ncywgaW5kZXhlZCBieSBsYW5ndWFnZSBjb2RlCgl0aGlzLnJlZ2lvbmFsWyAiIiBdID0geyAvLyBEZWZhdWx0IHJlZ2lvbmFsIHNldHRpbmdzCgkJY2xvc2VUZXh0OiAiRG9uZSIsIC8vIERpc3BsYXkgdGV4dCBmb3IgY2xvc2UgbGluawoJCXByZXZUZXh0OiAiUHJldiIsIC8vIERpc3BsYXkgdGV4dCBmb3IgcHJldmlvdXMgbW9udGggbGluawoJCW5leHRUZXh0OiAiTmV4dCIsIC8vIERpc3BsYXkgdGV4dCBmb3IgbmV4dCBtb250aCBsaW5rCgkJY3VycmVudFRleHQ6ICJUb2RheSIsIC8vIERpc3BsYXkgdGV4dCBmb3IgY3VycmVudCBtb250aCBsaW5rCgkJbW9udGhOYW1lczogWyAiSmFudWFyeSIsIkZlYnJ1YXJ5IiwiTWFyY2giLCJBcHJpbCIsIk1heSIsIkp1bmUiLAoJCQkiSnVseSIsIkF1Z3VzdCIsIlNlcHRlbWJlciIsIk9jdG9iZXIiLCJOb3ZlbWJlciIsIkRlY2VtYmVyIiBdLCAvLyBOYW1lcyBvZiBtb250aHMgZm9yIGRyb3AtZG93biBhbmQgZm9ybWF0dGluZwoJCW1vbnRoTmFtZXNTaG9ydDogWyAiSmFuIiwgIkZlYiIsICJNYXIiLCAiQXByIiwgIk1heSIsICJKdW4iLCAiSnVsIiwgIkF1ZyIsICJTZXAiLCAiT2N0IiwgIk5vdiIsICJEZWMiIF0sIC8vIEZvciBmb3JtYXR0aW5nCgkJZGF5TmFtZXM6IFsgIlN1bmRheSIsICJNb25kYXkiLCAiVHVlc2RheSIsICJXZWRuZXNkYXkiLCAiVGh1cnNkYXkiLCAiRnJpZGF5IiwgIlNhdHVyZGF5IiBdLCAvLyBGb3IgZm9ybWF0dGluZwoJCWRheU5hbWVzU2hvcnQ6IFsgIlN1biIsICJNb24iLCAiVHVlIiwgIldlZCIsICJUaHUiLCAiRnJpIiwgIlNhdCIgXSwgLy8gRm9yIGZvcm1hdHRpbmcKCQlkYXlOYW1lc01pbjogWyAiU3UiLCJNbyIsIlR1IiwiV2UiLCJUaCIsIkZyIiwiU2EiIF0sIC8vIENvbHVtbiBoZWFkaW5ncyBmb3IgZGF5cyBzdGFydGluZyBhdCBTdW5kYXkKCQl3ZWVrSGVhZGVyOiAiV2siLCAvLyBDb2x1bW4gaGVhZGVyIGZvciB3ZWVrIG9mIHRoZSB5ZWFyCgkJZGF0ZUZvcm1hdDogIm1tL2RkL3l5IiwgLy8gU2VlIGZvcm1hdCBvcHRpb25zIG9uIHBhcnNlRGF0ZQoJCWZpcnN0RGF5OiAwLCAvLyBUaGUgZmlyc3QgZGF5IG9mIHRoZSB3ZWVrLCBTdW4gPSAwLCBNb24gPSAxLCAuLi4KCQlpc1JUTDogZmFsc2UsIC8vIFRydWUgaWYgcmlnaHQtdG8tbGVmdCBsYW5ndWFnZSwgZmFsc2UgaWYgbGVmdC10by1yaWdodAoJCXNob3dNb250aEFmdGVyWWVhcjogZmFsc2UsIC8vIFRydWUgaWYgdGhlIHllYXIgc2VsZWN0IHByZWNlZGVzIG1vbnRoLCBmYWxzZSBmb3IgbW9udGggdGhlbiB5ZWFyCgkJeWVhclN1ZmZpeDogIiIgLy8gQWRkaXRpb25hbCB0ZXh0IHRvIGFwcGVuZCB0byB0aGUgeWVhciBpbiB0aGUgbW9udGggaGVhZGVycwoJfTsKCXRoaXMuX2RlZmF1bHRzID0geyAvLyBHbG9iYWwgZGVmYXVsdHMgZm9yIGFsbCB0aGUgZGF0ZSBwaWNrZXIgaW5zdGFuY2VzCgkJc2hvd09uOiAiZm9jdXMiLCAvLyAiZm9jdXMiIGZvciBwb3B1cCBvbiBmb2N1cywKCQkJLy8gImJ1dHRvbiIgZm9yIHRyaWdnZXIgYnV0dG9uLCBvciAiYm90aCIgZm9yIGVpdGhlcgoJCXNob3dBbmltOiAiZmFkZUluIiwgLy8gTmFtZSBvZiBqUXVlcnkgYW5pbWF0aW9uIGZvciBwb3B1cAoJCXNob3dPcHRpb25zOiB7fSwgLy8gT3B0aW9ucyBmb3IgZW5oYW5jZWQgYW5pbWF0aW9ucwoJCWRlZmF1bHREYXRlOiBudWxsLCAvLyBVc2VkIHdoZW4gZmllbGQgaXMgYmxhbms6IGFjdHVhbCBkYXRlLAoJCQkvLyArLy1udW1iZXIgZm9yIG9mZnNldCBmcm9tIHRvZGF5LCBudWxsIGZvciB0b2RheQoJCWFwcGVuZFRleHQ6ICIiLCAvLyBEaXNwbGF5IHRleHQgZm9sbG93aW5nIHRoZSBpbnB1dCBib3gsIGUuZy4gc2hvd2luZyB0aGUgZm9ybWF0CgkJYnV0dG9uVGV4dDogIi4uLiIsIC8vIFRleHQgZm9yIHRyaWdnZXIgYnV0dG9uCgkJYnV0dG9uSW1hZ2U6ICIiLCAvLyBVUkwgZm9yIHRyaWdnZXIgYnV0dG9uIGltYWdlCgkJYnV0dG9uSW1hZ2VPbmx5OiBmYWxzZSwgLy8gVHJ1ZSBpZiB0aGUgaW1hZ2UgYXBwZWFycyBhbG9uZSwgZmFsc2UgaWYgaXQgYXBwZWFycyBvbiBhIGJ1dHRvbgoJCWhpZGVJZk5vUHJldk5leHQ6IGZhbHNlLCAvLyBUcnVlIHRvIGhpZGUgbmV4dC9wcmV2aW91cyBtb250aCBsaW5rcwoJCQkvLyBpZiBub3QgYXBwbGljYWJsZSwgZmFsc2UgdG8ganVzdCBkaXNhYmxlIHRoZW0KCQluYXZpZ2F0aW9uQXNEYXRlRm9ybWF0OiBmYWxzZSwgLy8gVHJ1ZSBpZiBkYXRlIGZvcm1hdHRpbmcgYXBwbGllZCB0byBwcmV2L3RvZGF5L25leHQgbGlua3MKCQlnb3RvQ3VycmVudDogZmFsc2UsIC8vIFRydWUgaWYgdG9kYXkgbGluayBnb2VzIGJhY2sgdG8gY3VycmVudCBzZWxlY3Rpb24gaW5zdGVhZAoJCWNoYW5nZU1vbnRoOiBmYWxzZSwgLy8gVHJ1ZSBpZiBtb250aCBjYW4gYmUgc2VsZWN0ZWQgZGlyZWN0bHksIGZhbHNlIGlmIG9ubHkgcHJldi9uZXh0CgkJY2hhbmdlWWVhcjogZmFsc2UsIC8vIFRydWUgaWYgeWVhciBjYW4gYmUgc2VsZWN0ZWQgZGlyZWN0bHksIGZhbHNlIGlmIG9ubHkgcHJldi9uZXh0CgkJeWVhclJhbmdlOiAiYy0xMDpjKzEwIiwgLy8gUmFuZ2Ugb2YgeWVhcnMgdG8gZGlzcGxheSBpbiBkcm9wLWRvd24sCgkJCS8vIGVpdGhlciByZWxhdGl2ZSB0byB0b2RheSdzIHllYXIgKC1ubjorbm4pLCByZWxhdGl2ZSB0byBjdXJyZW50bHkgZGlzcGxheWVkIHllYXIKCQkJLy8gKGMtbm46YytubiksIGFic29sdXRlIChubm5uOm5ubm4pLCBvciBhIGNvbWJpbmF0aW9uIG9mIHRoZSBhYm92ZSAobm5ubjotbikKCQlzaG93T3RoZXJNb250aHM6IGZhbHNlLCAvLyBUcnVlIHRvIHNob3cgZGF0ZXMgaW4gb3RoZXIgbW9udGhzLCBmYWxzZSB0byBsZWF2ZSBibGFuawoJCXNlbGVjdE90aGVyTW9udGhzOiBmYWxzZSwgLy8gVHJ1ZSB0byBhbGxvdyBzZWxlY3Rpb24gb2YgZGF0ZXMgaW4gb3RoZXIgbW9udGhzLCBmYWxzZSBmb3IgdW5zZWxlY3RhYmxlCgkJc2hvd1dlZWs6IGZhbHNlLCAvLyBUcnVlIHRvIHNob3cgd2VlayBvZiB0aGUgeWVhciwgZmFsc2UgdG8gbm90IHNob3cgaXQKCQljYWxjdWxhdGVXZWVrOiB0aGlzLmlzbzg2MDFXZWVrLCAvLyBIb3cgdG8gY2FsY3VsYXRlIHRoZSB3ZWVrIG9mIHRoZSB5ZWFyLAoJCQkvLyB0YWtlcyBhIERhdGUgYW5kIHJldHVybnMgdGhlIG51bWJlciBvZiB0aGUgd2VlayBmb3IgaXQKCQlzaG9ydFllYXJDdXRvZmY6ICIrMTAiLCAvLyBTaG9ydCB5ZWFyIHZhbHVlcyA8IHRoaXMgYXJlIGluIHRoZSBjdXJyZW50IGNlbnR1cnksCgkJCS8vID4gdGhpcyBhcmUgaW4gdGhlIHByZXZpb3VzIGNlbnR1cnksCgkJCS8vIHN0cmluZyB2YWx1ZSBzdGFydGluZyB3aXRoICIrIiBmb3IgY3VycmVudCB5ZWFyICsgdmFsdWUKCQltaW5EYXRlOiBudWxsLCAvLyBUaGUgZWFybGllc3Qgc2VsZWN0YWJsZSBkYXRlLCBvciBudWxsIGZvciBubyBsaW1pdAoJCW1heERhdGU6IG51bGwsIC8vIFRoZSBsYXRlc3Qgc2VsZWN0YWJsZSBkYXRlLCBvciBudWxsIGZvciBubyBsaW1pdAoJCWR1cmF0aW9uOiAiZmFzdCIsIC8vIER1cmF0aW9uIG9mIGRpc3BsYXkvY2xvc3VyZQoJCWJlZm9yZVNob3dEYXk6IG51bGwsIC8vIEZ1bmN0aW9uIHRoYXQgdGFrZXMgYSBkYXRlIGFuZCByZXR1cm5zIGFuIGFycmF5IHdpdGgKCQkJLy8gWzBdID0gdHJ1ZSBpZiBzZWxlY3RhYmxlLCBmYWxzZSBpZiBub3QsIFsxXSA9IGN1c3RvbSBDU1MgY2xhc3MgbmFtZShzKSBvciAiIiwKCQkJLy8gWzJdID0gY2VsbCB0aXRsZSAob3B0aW9uYWwpLCBlLmcuICQuZGF0ZXBpY2tlci5ub1dlZWtlbmRzCgkJYmVmb3JlU2hvdzogbnVsbCwgLy8gRnVuY3Rpb24gdGhhdCB0YWtlcyBhbiBpbnB1dCBmaWVsZCBhbmQKCQkJLy8gcmV0dXJucyBhIHNldCBvZiBjdXN0b20gc2V0dGluZ3MgZm9yIHRoZSBkYXRlIHBpY2tlcgoJCW9uU2VsZWN0OiBudWxsLCAvLyBEZWZpbmUgYSBjYWxsYmFjayBmdW5jdGlvbiB3aGVuIGEgZGF0ZSBpcyBzZWxlY3RlZAoJCW9uQ2hhbmdlTW9udGhZZWFyOiBudWxsLCAvLyBEZWZpbmUgYSBjYWxsYmFjayBmdW5jdGlvbiB3aGVuIHRoZSBtb250aCBvciB5ZWFyIGlzIGNoYW5nZWQKCQlvbkNsb3NlOiBudWxsLCAvLyBEZWZpbmUgYSBjYWxsYmFjayBmdW5jdGlvbiB3aGVuIHRoZSBkYXRlcGlja2VyIGlzIGNsb3NlZAoJCW51bWJlck9mTW9udGhzOiAxLCAvLyBOdW1iZXIgb2YgbW9udGhzIHRvIHNob3cgYXQgYSB0aW1lCgkJc2hvd0N1cnJlbnRBdFBvczogMCwgLy8gVGhlIHBvc2l0aW9uIGluIG11bHRpcGUgbW9udGhzIGF0IHdoaWNoIHRvIHNob3cgdGhlIGN1cnJlbnQgbW9udGggKHN0YXJ0aW5nIGF0IDApCgkJc3RlcE1vbnRoczogMSwgLy8gTnVtYmVyIG9mIG1vbnRocyB0byBzdGVwIGJhY2svZm9yd2FyZAoJCXN0ZXBCaWdNb250aHM6IDEyLCAvLyBOdW1iZXIgb2YgbW9udGhzIHRvIHN0ZXAgYmFjay9mb3J3YXJkIGZvciB0aGUgYmlnIGxpbmtzCgkJYWx0RmllbGQ6ICIiLCAvLyBTZWxlY3RvciBmb3IgYW4gYWx0ZXJuYXRlIGZpZWxkIHRvIHN0b3JlIHNlbGVjdGVkIGRhdGVzIGludG8KCQlhbHRGb3JtYXQ6ICIiLCAvLyBUaGUgZGF0ZSBmb3JtYXQgdG8gdXNlIGZvciB0aGUgYWx0ZXJuYXRlIGZpZWxkCgkJY29uc3RyYWluSW5wdXQ6IHRydWUsIC8vIFRoZSBpbnB1dCBpcyBjb25zdHJhaW5lZCBieSB0aGUgY3VycmVudCBkYXRlIGZvcm1hdAoJCXNob3dCdXR0b25QYW5lbDogZmFsc2UsIC8vIFRydWUgdG8gc2hvdyBidXR0b24gcGFuZWwsIGZhbHNlIHRvIG5vdCBzaG93IGl0CgkJYXV0b1NpemU6IGZhbHNlLCAvLyBUcnVlIHRvIHNpemUgdGhlIGlucHV0IGZvciB0aGUgZGF0ZSBmb3JtYXQsIGZhbHNlIHRvIGxlYXZlIGFzIGlzCgkJZGlzYWJsZWQ6IGZhbHNlIC8vIFRoZSBpbml0aWFsIGRpc2FibGVkIHN0YXRlCgl9OwoJJC5leHRlbmQoIHRoaXMuX2RlZmF1bHRzLCB0aGlzLnJlZ2lvbmFsWyAiIiBdICk7Cgl0aGlzLnJlZ2lvbmFsLmVuID0gJC5leHRlbmQoIHRydWUsIHt9LCB0aGlzLnJlZ2lvbmFsWyAiIiBdICk7Cgl0aGlzLnJlZ2lvbmFsWyAiZW4tVVMiIF0gPSAkLmV4dGVuZCggdHJ1ZSwge30sIHRoaXMucmVnaW9uYWwuZW4gKTsKCXRoaXMuZHBEaXYgPSBkYXRlcGlja2VyX2JpbmRIb3ZlciggJCggIjxkaXYgaWQ9JyIgKyB0aGlzLl9tYWluRGl2SWQgKyAiJyBjbGFzcz0ndWktZGF0ZXBpY2tlciB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci1hbGwnPjwvZGl2PiIgKSApOwp9CgokLmV4dGVuZCggRGF0ZXBpY2tlci5wcm90b3R5cGUsIHsKCS8qIENsYXNzIG5hbWUgYWRkZWQgdG8gZWxlbWVudHMgdG8gaW5kaWNhdGUgYWxyZWFkeSBjb25maWd1cmVkIHdpdGggYSBkYXRlIHBpY2tlci4gKi8KCW1hcmtlckNsYXNzTmFtZTogImhhc0RhdGVwaWNrZXIiLAoKCS8vS2VlcCB0cmFjayBvZiB0aGUgbWF4aW11bSBudW1iZXIgb2Ygcm93cyBkaXNwbGF5ZWQgKHNlZSAjNzA0MykKCW1heFJvd3M6IDQsCgoJLy8gVE9ETyByZW5hbWUgdG8gIndpZGdldCIgd2hlbiBzd2l0Y2hpbmcgdG8gd2lkZ2V0IGZhY3RvcnkKCV93aWRnZXREYXRlcGlja2VyOiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gdGhpcy5kcERpdjsKCX0sCgoJLyogT3ZlcnJpZGUgdGhlIGRlZmF1bHQgc2V0dGluZ3MgZm9yIGFsbCBpbnN0YW5jZXMgb2YgdGhlIGRhdGUgcGlja2VyLgoJICogQHBhcmFtICBzZXR0aW5ncyAgb2JqZWN0IC0gdGhlIG5ldyBzZXR0aW5ncyB0byB1c2UgYXMgZGVmYXVsdHMgKGFub255bW91cyBvYmplY3QpCgkgKiBAcmV0dXJuIHRoZSBtYW5hZ2VyIG9iamVjdAoJICovCglzZXREZWZhdWx0czogZnVuY3Rpb24oIHNldHRpbmdzICkgewoJCWRhdGVwaWNrZXJfZXh0ZW5kUmVtb3ZlKCB0aGlzLl9kZWZhdWx0cywgc2V0dGluZ3MgfHwge30gKTsKCQlyZXR1cm4gdGhpczsKCX0sCgoJLyogQXR0YWNoIHRoZSBkYXRlIHBpY2tlciB0byBhIGpRdWVyeSBzZWxlY3Rpb24uCgkgKiBAcGFyYW0gIHRhcmdldAllbGVtZW50IC0gdGhlIHRhcmdldCBpbnB1dCBmaWVsZCBvciBkaXZpc2lvbiBvciBzcGFuCgkgKiBAcGFyYW0gIHNldHRpbmdzICBvYmplY3QgLSB0aGUgbmV3IHNldHRpbmdzIHRvIHVzZSBmb3IgdGhpcyBkYXRlIHBpY2tlciBpbnN0YW5jZSAoYW5vbnltb3VzKQoJICovCglfYXR0YWNoRGF0ZXBpY2tlcjogZnVuY3Rpb24oIHRhcmdldCwgc2V0dGluZ3MgKSB7CgkJdmFyIG5vZGVOYW1lLCBpbmxpbmUsIGluc3Q7CgkJbm9kZU5hbWUgPSB0YXJnZXQubm9kZU5hbWUudG9Mb3dlckNhc2UoKTsKCQlpbmxpbmUgPSAoIG5vZGVOYW1lID09PSAiZGl2IiB8fCBub2RlTmFtZSA9PT0gInNwYW4iICk7CgkJaWYgKCAhdGFyZ2V0LmlkICkgewoJCQl0aGlzLnV1aWQgKz0gMTsKCQkJdGFyZ2V0LmlkID0gImRwIiArIHRoaXMudXVpZDsKCQl9CgkJaW5zdCA9IHRoaXMuX25ld0luc3QoICQoIHRhcmdldCApLCBpbmxpbmUgKTsKCQlpbnN0LnNldHRpbmdzID0gJC5leHRlbmQoIHt9LCBzZXR0aW5ncyB8fCB7fSApOwoJCWlmICggbm9kZU5hbWUgPT09ICJpbnB1dCIgKSB7CgkJCXRoaXMuX2Nvbm5lY3REYXRlcGlja2VyKCB0YXJnZXQsIGluc3QgKTsKCQl9IGVsc2UgaWYgKCBpbmxpbmUgKSB7CgkJCXRoaXMuX2lubGluZURhdGVwaWNrZXIoIHRhcmdldCwgaW5zdCApOwoJCX0KCX0sCgoJLyogQ3JlYXRlIGEgbmV3IGluc3RhbmNlIG9iamVjdC4gKi8KCV9uZXdJbnN0OiBmdW5jdGlvbiggdGFyZ2V0LCBpbmxpbmUgKSB7CgkJdmFyIGlkID0gdGFyZ2V0WyAwIF0uaWQucmVwbGFjZSggLyhbXkEtWmEtejAtOV9cLV0pL2csICJcXFxcJDEiICk7IC8vIGVzY2FwZSBqUXVlcnkgbWV0YSBjaGFycwoJCXJldHVybiB7IGlkOiBpZCwgaW5wdXQ6IHRhcmdldCwgLy8gYXNzb2NpYXRlZCB0YXJnZXQKCQkJc2VsZWN0ZWREYXk6IDAsIHNlbGVjdGVkTW9udGg6IDAsIHNlbGVjdGVkWWVhcjogMCwgLy8gY3VycmVudCBzZWxlY3Rpb24KCQkJZHJhd01vbnRoOiAwLCBkcmF3WWVhcjogMCwgLy8gbW9udGggYmVpbmcgZHJhd24KCQkJaW5saW5lOiBpbmxpbmUsIC8vIGlzIGRhdGVwaWNrZXIgaW5saW5lIG9yIG5vdAoJCQlkcERpdjogKCAhaW5saW5lID8gdGhpcy5kcERpdiA6IC8vIHByZXNlbnRhdGlvbiBkaXYKCQkJZGF0ZXBpY2tlcl9iaW5kSG92ZXIoICQoICI8ZGl2IGNsYXNzPSciICsgdGhpcy5faW5saW5lQ2xhc3MgKyAiIHVpLWRhdGVwaWNrZXIgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItYWxsJz48L2Rpdj4iICkgKSApIH07Cgl9LAoKCS8qIEF0dGFjaCB0aGUgZGF0ZSBwaWNrZXIgdG8gYW4gaW5wdXQgZmllbGQuICovCglfY29ubmVjdERhdGVwaWNrZXI6IGZ1bmN0aW9uKCB0YXJnZXQsIGluc3QgKSB7CgkJdmFyIGlucHV0ID0gJCggdGFyZ2V0ICk7CgkJaW5zdC5hcHBlbmQgPSAkKCBbXSApOwoJCWluc3QudHJpZ2dlciA9ICQoIFtdICk7CgkJaWYgKCBpbnB1dC5oYXNDbGFzcyggdGhpcy5tYXJrZXJDbGFzc05hbWUgKSApIHsKCQkJcmV0dXJuOwoJCX0KCQl0aGlzLl9hdHRhY2htZW50cyggaW5wdXQsIGluc3QgKTsKCQlpbnB1dC5hZGRDbGFzcyggdGhpcy5tYXJrZXJDbGFzc05hbWUgKS5vbiggImtleWRvd24iLCB0aGlzLl9kb0tleURvd24gKS4KCQkJb24oICJrZXlwcmVzcyIsIHRoaXMuX2RvS2V5UHJlc3MgKS5vbiggImtleXVwIiwgdGhpcy5fZG9LZXlVcCApOwoJCXRoaXMuX2F1dG9TaXplKCBpbnN0ICk7CgkJJC5kYXRhKCB0YXJnZXQsICJkYXRlcGlja2VyIiwgaW5zdCApOwoKCQkvL0lmIGRpc2FibGVkIG9wdGlvbiBpcyB0cnVlLCBkaXNhYmxlIHRoZSBkYXRlcGlja2VyIG9uY2UgaXQgaGFzIGJlZW4gYXR0YWNoZWQgdG8gdGhlIGlucHV0IChzZWUgdGlja2V0ICM1NjY1KQoJCWlmICggaW5zdC5zZXR0aW5ncy5kaXNhYmxlZCApIHsKCQkJdGhpcy5fZGlzYWJsZURhdGVwaWNrZXIoIHRhcmdldCApOwoJCX0KCX0sCgoJLyogTWFrZSBhdHRhY2htZW50cyBiYXNlZCBvbiBzZXR0aW5ncy4gKi8KCV9hdHRhY2htZW50czogZnVuY3Rpb24oIGlucHV0LCBpbnN0ICkgewoJCXZhciBzaG93T24sIGJ1dHRvblRleHQsIGJ1dHRvbkltYWdlLAoJCQlhcHBlbmRUZXh0ID0gdGhpcy5fZ2V0KCBpbnN0LCAiYXBwZW5kVGV4dCIgKSwKCQkJaXNSVEwgPSB0aGlzLl9nZXQoIGluc3QsICJpc1JUTCIgKTsKCgkJaWYgKCBpbnN0LmFwcGVuZCApIHsKCQkJaW5zdC5hcHBlbmQucmVtb3ZlKCk7CgkJfQoJCWlmICggYXBwZW5kVGV4dCApIHsKCQkJaW5zdC5hcHBlbmQgPSAkKCAiPHNwYW4gY2xhc3M9JyIgKyB0aGlzLl9hcHBlbmRDbGFzcyArICInPiIgKyBhcHBlbmRUZXh0ICsgIjwvc3Bhbj4iICk7CgkJCWlucHV0WyBpc1JUTCA/ICJiZWZvcmUiIDogImFmdGVyIiBdKCBpbnN0LmFwcGVuZCApOwoJCX0KCgkJaW5wdXQub2ZmKCAiZm9jdXMiLCB0aGlzLl9zaG93RGF0ZXBpY2tlciApOwoKCQlpZiAoIGluc3QudHJpZ2dlciApIHsKCQkJaW5zdC50cmlnZ2VyLnJlbW92ZSgpOwoJCX0KCgkJc2hvd09uID0gdGhpcy5fZ2V0KCBpbnN0LCAic2hvd09uIiApOwoJCWlmICggc2hvd09uID09PSAiZm9jdXMiIHx8IHNob3dPbiA9PT0gImJvdGgiICkgeyAvLyBwb3AtdXAgZGF0ZSBwaWNrZXIgd2hlbiBpbiB0aGUgbWFya2VkIGZpZWxkCgkJCWlucHV0Lm9uKCAiZm9jdXMiLCB0aGlzLl9zaG93RGF0ZXBpY2tlciApOwoJCX0KCQlpZiAoIHNob3dPbiA9PT0gImJ1dHRvbiIgfHwgc2hvd09uID09PSAiYm90aCIgKSB7IC8vIHBvcC11cCBkYXRlIHBpY2tlciB3aGVuIGJ1dHRvbiBjbGlja2VkCgkJCWJ1dHRvblRleHQgPSB0aGlzLl9nZXQoIGluc3QsICJidXR0b25UZXh0IiApOwoJCQlidXR0b25JbWFnZSA9IHRoaXMuX2dldCggaW5zdCwgImJ1dHRvbkltYWdlIiApOwoJCQlpbnN0LnRyaWdnZXIgPSAkKCB0aGlzLl9nZXQoIGluc3QsICJidXR0b25JbWFnZU9ubHkiICkgPwoJCQkJJCggIjxpbWcvPiIgKS5hZGRDbGFzcyggdGhpcy5fdHJpZ2dlckNsYXNzICkuCgkJCQkJYXR0ciggeyBzcmM6IGJ1dHRvbkltYWdlLCBhbHQ6IGJ1dHRvblRleHQsIHRpdGxlOiBidXR0b25UZXh0IH0gKSA6CgkJCQkkKCAiPGJ1dHRvbiB0eXBlPSdidXR0b24nPjwvYnV0dG9uPiIgKS5hZGRDbGFzcyggdGhpcy5fdHJpZ2dlckNsYXNzICkuCgkJCQkJaHRtbCggIWJ1dHRvbkltYWdlID8gYnV0dG9uVGV4dCA6ICQoICI8aW1nLz4iICkuYXR0cigKCQkJCQl7IHNyYzpidXR0b25JbWFnZSwgYWx0OmJ1dHRvblRleHQsIHRpdGxlOmJ1dHRvblRleHQgfSApICkgKTsKCQkJaW5wdXRbIGlzUlRMID8gImJlZm9yZSIgOiAiYWZ0ZXIiIF0oIGluc3QudHJpZ2dlciApOwoJCQlpbnN0LnRyaWdnZXIub24oICJjbGljayIsIGZ1bmN0aW9uKCkgewoJCQkJaWYgKCAkLmRhdGVwaWNrZXIuX2RhdGVwaWNrZXJTaG93aW5nICYmICQuZGF0ZXBpY2tlci5fbGFzdElucHV0ID09PSBpbnB1dFsgMCBdICkgewoJCQkJCSQuZGF0ZXBpY2tlci5faGlkZURhdGVwaWNrZXIoKTsKCQkJCX0gZWxzZSBpZiAoICQuZGF0ZXBpY2tlci5fZGF0ZXBpY2tlclNob3dpbmcgJiYgJC5kYXRlcGlja2VyLl9sYXN0SW5wdXQgIT09IGlucHV0WyAwIF0gKSB7CgkJCQkJJC5kYXRlcGlja2VyLl9oaWRlRGF0ZXBpY2tlcigpOwoJCQkJCSQuZGF0ZXBpY2tlci5fc2hvd0RhdGVwaWNrZXIoIGlucHV0WyAwIF0gKTsKCQkJCX0gZWxzZSB7CgkJCQkJJC5kYXRlcGlja2VyLl9zaG93RGF0ZXBpY2tlciggaW5wdXRbIDAgXSApOwoJCQkJfQoJCQkJcmV0dXJuIGZhbHNlOwoJCQl9ICk7CgkJfQoJfSwKCgkvKiBBcHBseSB0aGUgbWF4aW11bSBsZW5ndGggZm9yIHRoZSBkYXRlIGZvcm1hdC4gKi8KCV9hdXRvU2l6ZTogZnVuY3Rpb24oIGluc3QgKSB7CgkJaWYgKCB0aGlzLl9nZXQoIGluc3QsICJhdXRvU2l6ZSIgKSAmJiAhaW5zdC5pbmxpbmUgKSB7CgkJCXZhciBmaW5kTWF4LCBtYXgsIG1heEksIGksCgkJCQlkYXRlID0gbmV3IERhdGUoIDIwMDksIDEyIC0gMSwgMjAgKSwgLy8gRW5zdXJlIGRvdWJsZSBkaWdpdHMKCQkJCWRhdGVGb3JtYXQgPSB0aGlzLl9nZXQoIGluc3QsICJkYXRlRm9ybWF0IiApOwoKCQkJaWYgKCBkYXRlRm9ybWF0Lm1hdGNoKCAvW0RNXS8gKSApIHsKCQkJCWZpbmRNYXggPSBmdW5jdGlvbiggbmFtZXMgKSB7CgkJCQkJbWF4ID0gMDsKCQkJCQltYXhJID0gMDsKCQkJCQlmb3IgKCBpID0gMDsgaSA8IG5hbWVzLmxlbmd0aDsgaSsrICkgewoJCQkJCQlpZiAoIG5hbWVzWyBpIF0ubGVuZ3RoID4gbWF4ICkgewoJCQkJCQkJbWF4ID0gbmFtZXNbIGkgXS5sZW5ndGg7CgkJCQkJCQltYXhJID0gaTsKCQkJCQkJfQoJCQkJCX0KCQkJCQlyZXR1cm4gbWF4STsKCQkJCX07CgkJCQlkYXRlLnNldE1vbnRoKCBmaW5kTWF4KCB0aGlzLl9nZXQoIGluc3QsICggZGF0ZUZvcm1hdC5tYXRjaCggL01NLyApID8KCQkJCQkibW9udGhOYW1lcyIgOiAibW9udGhOYW1lc1Nob3J0IiApICkgKSApOwoJCQkJZGF0ZS5zZXREYXRlKCBmaW5kTWF4KCB0aGlzLl9nZXQoIGluc3QsICggZGF0ZUZvcm1hdC5tYXRjaCggL0RELyApID8KCQkJCQkiZGF5TmFtZXMiIDogImRheU5hbWVzU2hvcnQiICkgKSApICsgMjAgLSBkYXRlLmdldERheSgpICk7CgkJCX0KCQkJaW5zdC5pbnB1dC5hdHRyKCAic2l6ZSIsIHRoaXMuX2Zvcm1hdERhdGUoIGluc3QsIGRhdGUgKS5sZW5ndGggKTsKCQl9Cgl9LAoKCS8qIEF0dGFjaCBhbiBpbmxpbmUgZGF0ZSBwaWNrZXIgdG8gYSBkaXYuICovCglfaW5saW5lRGF0ZXBpY2tlcjogZnVuY3Rpb24oIHRhcmdldCwgaW5zdCApIHsKCQl2YXIgZGl2U3BhbiA9ICQoIHRhcmdldCApOwoJCWlmICggZGl2U3Bhbi5oYXNDbGFzcyggdGhpcy5tYXJrZXJDbGFzc05hbWUgKSApIHsKCQkJcmV0dXJuOwoJCX0KCQlkaXZTcGFuLmFkZENsYXNzKCB0aGlzLm1hcmtlckNsYXNzTmFtZSApLmFwcGVuZCggaW5zdC5kcERpdiApOwoJCSQuZGF0YSggdGFyZ2V0LCAiZGF0ZXBpY2tlciIsIGluc3QgKTsKCQl0aGlzLl9zZXREYXRlKCBpbnN0LCB0aGlzLl9nZXREZWZhdWx0RGF0ZSggaW5zdCApLCB0cnVlICk7CgkJdGhpcy5fdXBkYXRlRGF0ZXBpY2tlciggaW5zdCApOwoJCXRoaXMuX3VwZGF0ZUFsdGVybmF0ZSggaW5zdCApOwoKCQkvL0lmIGRpc2FibGVkIG9wdGlvbiBpcyB0cnVlLCBkaXNhYmxlIHRoZSBkYXRlcGlja2VyIGJlZm9yZSBzaG93aW5nIGl0IChzZWUgdGlja2V0ICM1NjY1KQoJCWlmICggaW5zdC5zZXR0aW5ncy5kaXNhYmxlZCApIHsKCQkJdGhpcy5fZGlzYWJsZURhdGVwaWNrZXIoIHRhcmdldCApOwoJCX0KCgkJLy8gU2V0IGRpc3BsYXk6YmxvY2sgaW4gcGxhY2Ugb2YgaW5zdC5kcERpdi5zaG93KCkgd2hpY2ggd29uJ3Qgd29yayBvbiBkaXNjb25uZWN0ZWQgZWxlbWVudHMKCQkvLyBodHRwOi8vYnVncy5qcXVlcnl1aS5jb20vdGlja2V0Lzc1NTIgLSBBIERhdGVwaWNrZXIgY3JlYXRlZCBvbiBhIGRldGFjaGVkIGRpdiBoYXMgemVybyBoZWlnaHQKCQlpbnN0LmRwRGl2LmNzcyggImRpc3BsYXkiLCAiYmxvY2siICk7Cgl9LAoKCS8qIFBvcC11cCB0aGUgZGF0ZSBwaWNrZXIgaW4gYSAiZGlhbG9nIiBib3guCgkgKiBAcGFyYW0gIGlucHV0IGVsZW1lbnQgLSBpZ25vcmVkCgkgKiBAcGFyYW0gIGRhdGUJc3RyaW5nIG9yIERhdGUgLSB0aGUgaW5pdGlhbCBkYXRlIHRvIGRpc3BsYXkKCSAqIEBwYXJhbSAgb25TZWxlY3QgIGZ1bmN0aW9uIC0gdGhlIGZ1bmN0aW9uIHRvIGNhbGwgd2hlbiBhIGRhdGUgaXMgc2VsZWN0ZWQKCSAqIEBwYXJhbSAgc2V0dGluZ3MgIG9iamVjdCAtIHVwZGF0ZSB0aGUgZGlhbG9nIGRhdGUgcGlja2VyIGluc3RhbmNlJ3Mgc2V0dGluZ3MgKGFub255bW91cyBvYmplY3QpCgkgKiBAcGFyYW0gIHBvcyBpbnRbMl0gLSBjb29yZGluYXRlcyBmb3IgdGhlIGRpYWxvZydzIHBvc2l0aW9uIHdpdGhpbiB0aGUgc2NyZWVuIG9yCgkgKgkJCQkJZXZlbnQgLSB3aXRoIHgveSBjb29yZGluYXRlcyBvcgoJICoJCQkJCWxlYXZlIGVtcHR5IGZvciBkZWZhdWx0IChzY3JlZW4gY2VudHJlKQoJICogQHJldHVybiB0aGUgbWFuYWdlciBvYmplY3QKCSAqLwoJX2RpYWxvZ0RhdGVwaWNrZXI6IGZ1bmN0aW9uKCBpbnB1dCwgZGF0ZSwgb25TZWxlY3QsIHNldHRpbmdzLCBwb3MgKSB7CgkJdmFyIGlkLCBicm93c2VyV2lkdGgsIGJyb3dzZXJIZWlnaHQsIHNjcm9sbFgsIHNjcm9sbFksCgkJCWluc3QgPSB0aGlzLl9kaWFsb2dJbnN0OyAvLyBpbnRlcm5hbCBpbnN0YW5jZQoKCQlpZiAoICFpbnN0ICkgewoJCQl0aGlzLnV1aWQgKz0gMTsKCQkJaWQgPSAiZHAiICsgdGhpcy51dWlkOwoJCQl0aGlzLl9kaWFsb2dJbnB1dCA9ICQoICI8aW5wdXQgdHlwZT0ndGV4dCcgaWQ9JyIgKyBpZCArCgkJCQkiJyBzdHlsZT0ncG9zaXRpb246IGFic29sdXRlOyB0b3A6IC0xMDBweDsgd2lkdGg6IDBweDsnLz4iICk7CgkJCXRoaXMuX2RpYWxvZ0lucHV0Lm9uKCAia2V5ZG93biIsIHRoaXMuX2RvS2V5RG93biApOwoJCQkkKCAiYm9keSIgKS5hcHBlbmQoIHRoaXMuX2RpYWxvZ0lucHV0ICk7CgkJCWluc3QgPSB0aGlzLl9kaWFsb2dJbnN0ID0gdGhpcy5fbmV3SW5zdCggdGhpcy5fZGlhbG9nSW5wdXQsIGZhbHNlICk7CgkJCWluc3Quc2V0dGluZ3MgPSB7fTsKCQkJJC5kYXRhKCB0aGlzLl9kaWFsb2dJbnB1dFsgMCBdLCAiZGF0ZXBpY2tlciIsIGluc3QgKTsKCQl9CgkJZGF0ZXBpY2tlcl9leHRlbmRSZW1vdmUoIGluc3Quc2V0dGluZ3MsIHNldHRpbmdzIHx8IHt9ICk7CgkJZGF0ZSA9ICggZGF0ZSAmJiBkYXRlLmNvbnN0cnVjdG9yID09PSBEYXRlID8gdGhpcy5fZm9ybWF0RGF0ZSggaW5zdCwgZGF0ZSApIDogZGF0ZSApOwoJCXRoaXMuX2RpYWxvZ0lucHV0LnZhbCggZGF0ZSApOwoKCQl0aGlzLl9wb3MgPSAoIHBvcyA/ICggcG9zLmxlbmd0aCA/IHBvcyA6IFsgcG9zLnBhZ2VYLCBwb3MucGFnZVkgXSApIDogbnVsbCApOwoJCWlmICggIXRoaXMuX3BvcyApIHsKCQkJYnJvd3NlcldpZHRoID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoOwoJCQlicm93c2VySGVpZ2h0ID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodDsKCQkJc2Nyb2xsWCA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxMZWZ0IHx8IGRvY3VtZW50LmJvZHkuc2Nyb2xsTGVmdDsKCQkJc2Nyb2xsWSA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3AgfHwgZG9jdW1lbnQuYm9keS5zY3JvbGxUb3A7CgkJCXRoaXMuX3BvcyA9IC8vIHNob3VsZCB1c2UgYWN0dWFsIHdpZHRoL2hlaWdodCBiZWxvdwoJCQkJWyAoIGJyb3dzZXJXaWR0aCAvIDIgKSAtIDEwMCArIHNjcm9sbFgsICggYnJvd3NlckhlaWdodCAvIDIgKSAtIDE1MCArIHNjcm9sbFkgXTsKCQl9CgoJCS8vIE1vdmUgaW5wdXQgb24gc2NyZWVuIGZvciBmb2N1cywgYnV0IGhpZGRlbiBiZWhpbmQgZGlhbG9nCgkJdGhpcy5fZGlhbG9nSW5wdXQuY3NzKCAibGVmdCIsICggdGhpcy5fcG9zWyAwIF0gKyAyMCApICsgInB4IiApLmNzcyggInRvcCIsIHRoaXMuX3Bvc1sgMSBdICsgInB4IiApOwoJCWluc3Quc2V0dGluZ3Mub25TZWxlY3QgPSBvblNlbGVjdDsKCQl0aGlzLl9pbkRpYWxvZyA9IHRydWU7CgkJdGhpcy5kcERpdi5hZGRDbGFzcyggdGhpcy5fZGlhbG9nQ2xhc3MgKTsKCQl0aGlzLl9zaG93RGF0ZXBpY2tlciggdGhpcy5fZGlhbG9nSW5wdXRbIDAgXSApOwoJCWlmICggJC5ibG9ja1VJICkgewoJCQkkLmJsb2NrVUkoIHRoaXMuZHBEaXYgKTsKCQl9CgkJJC5kYXRhKCB0aGlzLl9kaWFsb2dJbnB1dFsgMCBdLCAiZGF0ZXBpY2tlciIsIGluc3QgKTsKCQlyZXR1cm4gdGhpczsKCX0sCgoJLyogRGV0YWNoIGEgZGF0ZXBpY2tlciBmcm9tIGl0cyBjb250cm9sLgoJICogQHBhcmFtICB0YXJnZXQJZWxlbWVudCAtIHRoZSB0YXJnZXQgaW5wdXQgZmllbGQgb3IgZGl2aXNpb24gb3Igc3BhbgoJICovCglfZGVzdHJveURhdGVwaWNrZXI6IGZ1bmN0aW9uKCB0YXJnZXQgKSB7CgkJdmFyIG5vZGVOYW1lLAoJCQkkdGFyZ2V0ID0gJCggdGFyZ2V0ICksCgkJCWluc3QgPSAkLmRhdGEoIHRhcmdldCwgImRhdGVwaWNrZXIiICk7CgoJCWlmICggISR0YXJnZXQuaGFzQ2xhc3MoIHRoaXMubWFya2VyQ2xhc3NOYW1lICkgKSB7CgkJCXJldHVybjsKCQl9CgoJCW5vZGVOYW1lID0gdGFyZ2V0Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7CgkJJC5yZW1vdmVEYXRhKCB0YXJnZXQsICJkYXRlcGlja2VyIiApOwoJCWlmICggbm9kZU5hbWUgPT09ICJpbnB1dCIgKSB7CgkJCWluc3QuYXBwZW5kLnJlbW92ZSgpOwoJCQlpbnN0LnRyaWdnZXIucmVtb3ZlKCk7CgkJCSR0YXJnZXQucmVtb3ZlQ2xhc3MoIHRoaXMubWFya2VyQ2xhc3NOYW1lICkuCgkJCQlvZmYoICJmb2N1cyIsIHRoaXMuX3Nob3dEYXRlcGlja2VyICkuCgkJCQlvZmYoICJrZXlkb3duIiwgdGhpcy5fZG9LZXlEb3duICkuCgkJCQlvZmYoICJrZXlwcmVzcyIsIHRoaXMuX2RvS2V5UHJlc3MgKS4KCQkJCW9mZiggImtleXVwIiwgdGhpcy5fZG9LZXlVcCApOwoJCX0gZWxzZSBpZiAoIG5vZGVOYW1lID09PSAiZGl2IiB8fCBub2RlTmFtZSA9PT0gInNwYW4iICkgewoJCQkkdGFyZ2V0LnJlbW92ZUNsYXNzKCB0aGlzLm1hcmtlckNsYXNzTmFtZSApLmVtcHR5KCk7CgkJfQoKCQlpZiAoIGRhdGVwaWNrZXJfaW5zdEFjdGl2ZSA9PT0gaW5zdCApIHsKCQkJZGF0ZXBpY2tlcl9pbnN0QWN0aXZlID0gbnVsbDsKCQl9Cgl9LAoKCS8qIEVuYWJsZSB0aGUgZGF0ZSBwaWNrZXIgdG8gYSBqUXVlcnkgc2VsZWN0aW9uLgoJICogQHBhcmFtICB0YXJnZXQJZWxlbWVudCAtIHRoZSB0YXJnZXQgaW5wdXQgZmllbGQgb3IgZGl2aXNpb24gb3Igc3BhbgoJICovCglfZW5hYmxlRGF0ZXBpY2tlcjogZnVuY3Rpb24oIHRhcmdldCApIHsKCQl2YXIgbm9kZU5hbWUsIGlubGluZSwKCQkJJHRhcmdldCA9ICQoIHRhcmdldCApLAoJCQlpbnN0ID0gJC5kYXRhKCB0YXJnZXQsICJkYXRlcGlja2VyIiApOwoKCQlpZiAoICEkdGFyZ2V0Lmhhc0NsYXNzKCB0aGlzLm1hcmtlckNsYXNzTmFtZSApICkgewoJCQlyZXR1cm47CgkJfQoKCQlub2RlTmFtZSA9IHRhcmdldC5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpOwoJCWlmICggbm9kZU5hbWUgPT09ICJpbnB1dCIgKSB7CgkJCXRhcmdldC5kaXNhYmxlZCA9IGZhbHNlOwoJCQlpbnN0LnRyaWdnZXIuZmlsdGVyKCAiYnV0dG9uIiApLgoJCQkJZWFjaCggZnVuY3Rpb24oKSB7IHRoaXMuZGlzYWJsZWQgPSBmYWxzZTsgfSApLmVuZCgpLgoJCQkJZmlsdGVyKCAiaW1nIiApLmNzcyggeyBvcGFjaXR5OiAiMS4wIiwgY3Vyc29yOiAiIiB9ICk7CgkJfSBlbHNlIGlmICggbm9kZU5hbWUgPT09ICJkaXYiIHx8IG5vZGVOYW1lID09PSAic3BhbiIgKSB7CgkJCWlubGluZSA9ICR0YXJnZXQuY2hpbGRyZW4oICIuIiArIHRoaXMuX2lubGluZUNsYXNzICk7CgkJCWlubGluZS5jaGlsZHJlbigpLnJlbW92ZUNsYXNzKCAidWktc3RhdGUtZGlzYWJsZWQiICk7CgkJCWlubGluZS5maW5kKCAic2VsZWN0LnVpLWRhdGVwaWNrZXItbW9udGgsIHNlbGVjdC51aS1kYXRlcGlja2VyLXllYXIiICkuCgkJCQlwcm9wKCAiZGlzYWJsZWQiLCBmYWxzZSApOwoJCX0KCQl0aGlzLl9kaXNhYmxlZElucHV0cyA9ICQubWFwKCB0aGlzLl9kaXNhYmxlZElucHV0cywKCQkJZnVuY3Rpb24oIHZhbHVlICkgeyByZXR1cm4gKCB2YWx1ZSA9PT0gdGFyZ2V0ID8gbnVsbCA6IHZhbHVlICk7IH0gKTsgLy8gZGVsZXRlIGVudHJ5Cgl9LAoKCS8qIERpc2FibGUgdGhlIGRhdGUgcGlja2VyIHRvIGEgalF1ZXJ5IHNlbGVjdGlvbi4KCSAqIEBwYXJhbSAgdGFyZ2V0CWVsZW1lbnQgLSB0aGUgdGFyZ2V0IGlucHV0IGZpZWxkIG9yIGRpdmlzaW9uIG9yIHNwYW4KCSAqLwoJX2Rpc2FibGVEYXRlcGlja2VyOiBmdW5jdGlvbiggdGFyZ2V0ICkgewoJCXZhciBub2RlTmFtZSwgaW5saW5lLAoJCQkkdGFyZ2V0ID0gJCggdGFyZ2V0ICksCgkJCWluc3QgPSAkLmRhdGEoIHRhcmdldCwgImRhdGVwaWNrZXIiICk7CgoJCWlmICggISR0YXJnZXQuaGFzQ2xhc3MoIHRoaXMubWFya2VyQ2xhc3NOYW1lICkgKSB7CgkJCXJldHVybjsKCQl9CgoJCW5vZGVOYW1lID0gdGFyZ2V0Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7CgkJaWYgKCBub2RlTmFtZSA9PT0gImlucHV0IiApIHsKCQkJdGFyZ2V0LmRpc2FibGVkID0gdHJ1ZTsKCQkJaW5zdC50cmlnZ2VyLmZpbHRlciggImJ1dHRvbiIgKS4KCQkJCWVhY2goIGZ1bmN0aW9uKCkgeyB0aGlzLmRpc2FibGVkID0gdHJ1ZTsgfSApLmVuZCgpLgoJCQkJZmlsdGVyKCAiaW1nIiApLmNzcyggeyBvcGFjaXR5OiAiMC41IiwgY3Vyc29yOiAiZGVmYXVsdCIgfSApOwoJCX0gZWxzZSBpZiAoIG5vZGVOYW1lID09PSAiZGl2IiB8fCBub2RlTmFtZSA9PT0gInNwYW4iICkgewoJCQlpbmxpbmUgPSAkdGFyZ2V0LmNoaWxkcmVuKCAiLiIgKyB0aGlzLl9pbmxpbmVDbGFzcyApOwoJCQlpbmxpbmUuY2hpbGRyZW4oKS5hZGRDbGFzcyggInVpLXN0YXRlLWRpc2FibGVkIiApOwoJCQlpbmxpbmUuZmluZCggInNlbGVjdC51aS1kYXRlcGlja2VyLW1vbnRoLCBzZWxlY3QudWktZGF0ZXBpY2tlci15ZWFyIiApLgoJCQkJcHJvcCggImRpc2FibGVkIiwgdHJ1ZSApOwoJCX0KCQl0aGlzLl9kaXNhYmxlZElucHV0cyA9ICQubWFwKCB0aGlzLl9kaXNhYmxlZElucHV0cywKCQkJZnVuY3Rpb24oIHZhbHVlICkgeyByZXR1cm4gKCB2YWx1ZSA9PT0gdGFyZ2V0ID8gbnVsbCA6IHZhbHVlICk7IH0gKTsgLy8gZGVsZXRlIGVudHJ5CgkJdGhpcy5fZGlzYWJsZWRJbnB1dHNbIHRoaXMuX2Rpc2FibGVkSW5wdXRzLmxlbmd0aCBdID0gdGFyZ2V0OwoJfSwKCgkvKiBJcyB0aGUgZmlyc3QgZmllbGQgaW4gYSBqUXVlcnkgY29sbGVjdGlvbiBkaXNhYmxlZCBhcyBhIGRhdGVwaWNrZXI/CgkgKiBAcGFyYW0gIHRhcmdldAllbGVtZW50IC0gdGhlIHRhcmdldCBpbnB1dCBmaWVsZCBvciBkaXZpc2lvbiBvciBzcGFuCgkgKiBAcmV0dXJuIGJvb2xlYW4gLSB0cnVlIGlmIGRpc2FibGVkLCBmYWxzZSBpZiBlbmFibGVkCgkgKi8KCV9pc0Rpc2FibGVkRGF0ZXBpY2tlcjogZnVuY3Rpb24oIHRhcmdldCApIHsKCQlpZiAoICF0YXJnZXQgKSB7CgkJCXJldHVybiBmYWxzZTsKCQl9CgkJZm9yICggdmFyIGkgPSAwOyBpIDwgdGhpcy5fZGlzYWJsZWRJbnB1dHMubGVuZ3RoOyBpKysgKSB7CgkJCWlmICggdGhpcy5fZGlzYWJsZWRJbnB1dHNbIGkgXSA9PT0gdGFyZ2V0ICkgewoJCQkJcmV0dXJuIHRydWU7CgkJCX0KCQl9CgkJcmV0dXJuIGZhbHNlOwoJfSwKCgkvKiBSZXRyaWV2ZSB0aGUgaW5zdGFuY2UgZGF0YSBmb3IgdGhlIHRhcmdldCBjb250cm9sLgoJICogQHBhcmFtICB0YXJnZXQgIGVsZW1lbnQgLSB0aGUgdGFyZ2V0IGlucHV0IGZpZWxkIG9yIGRpdmlzaW9uIG9yIHNwYW4KCSAqIEByZXR1cm4gIG9iamVjdCAtIHRoZSBhc3NvY2lhdGVkIGluc3RhbmNlIGRhdGEKCSAqIEB0aHJvd3MgIGVycm9yIGlmIGEgalF1ZXJ5IHByb2JsZW0gZ2V0dGluZyBkYXRhCgkgKi8KCV9nZXRJbnN0OiBmdW5jdGlvbiggdGFyZ2V0ICkgewoJCXRyeSB7CgkJCXJldHVybiAkLmRhdGEoIHRhcmdldCwgImRhdGVwaWNrZXIiICk7CgkJfQoJCWNhdGNoICggZXJyICkgewoJCQl0aHJvdyAiTWlzc2luZyBpbnN0YW5jZSBkYXRhIGZvciB0aGlzIGRhdGVwaWNrZXIiOwoJCX0KCX0sCgoJLyogVXBkYXRlIG9yIHJldHJpZXZlIHRoZSBzZXR0aW5ncyBmb3IgYSBkYXRlIHBpY2tlciBhdHRhY2hlZCB0byBhbiBpbnB1dCBmaWVsZCBvciBkaXZpc2lvbi4KCSAqIEBwYXJhbSAgdGFyZ2V0ICBlbGVtZW50IC0gdGhlIHRhcmdldCBpbnB1dCBmaWVsZCBvciBkaXZpc2lvbiBvciBzcGFuCgkgKiBAcGFyYW0gIG5hbWUJb2JqZWN0IC0gdGhlIG5ldyBzZXR0aW5ncyB0byB1cGRhdGUgb3IKCSAqCQkJCXN0cmluZyAtIHRoZSBuYW1lIG9mIHRoZSBzZXR0aW5nIHRvIGNoYW5nZSBvciByZXRyaWV2ZSwKCSAqCQkJCXdoZW4gcmV0cmlldmluZyBhbHNvICJhbGwiIGZvciBhbGwgaW5zdGFuY2Ugc2V0dGluZ3Mgb3IKCSAqCQkJCSJkZWZhdWx0cyIgZm9yIGFsbCBnbG9iYWwgZGVmYXVsdHMKCSAqIEBwYXJhbSAgdmFsdWUgICBhbnkgLSB0aGUgbmV3IHZhbHVlIGZvciB0aGUgc2V0dGluZwoJICoJCQkJKG9taXQgaWYgYWJvdmUgaXMgYW4gb2JqZWN0IG9yIHRvIHJldHJpZXZlIGEgdmFsdWUpCgkgKi8KCV9vcHRpb25EYXRlcGlja2VyOiBmdW5jdGlvbiggdGFyZ2V0LCBuYW1lLCB2YWx1ZSApIHsKCQl2YXIgc2V0dGluZ3MsIGRhdGUsIG1pbkRhdGUsIG1heERhdGUsCgkJCWluc3QgPSB0aGlzLl9nZXRJbnN0KCB0YXJnZXQgKTsKCgkJaWYgKCBhcmd1bWVudHMubGVuZ3RoID09PSAyICYmIHR5cGVvZiBuYW1lID09PSAic3RyaW5nIiApIHsKCQkJcmV0dXJuICggbmFtZSA9PT0gImRlZmF1bHRzIiA/ICQuZXh0ZW5kKCB7fSwgJC5kYXRlcGlja2VyLl9kZWZhdWx0cyApIDoKCQkJCSggaW5zdCA/ICggbmFtZSA9PT0gImFsbCIgPyAkLmV4dGVuZCgge30sIGluc3Quc2V0dGluZ3MgKSA6CgkJCQl0aGlzLl9nZXQoIGluc3QsIG5hbWUgKSApIDogbnVsbCApICk7CgkJfQoKCQlzZXR0aW5ncyA9IG5hbWUgfHwge307CgkJaWYgKCB0eXBlb2YgbmFtZSA9PT0gInN0cmluZyIgKSB7CgkJCXNldHRpbmdzID0ge307CgkJCXNldHRpbmdzWyBuYW1lIF0gPSB2YWx1ZTsKCQl9CgoJCWlmICggaW5zdCApIHsKCQkJaWYgKCB0aGlzLl9jdXJJbnN0ID09PSBpbnN0ICkgewoJCQkJdGhpcy5faGlkZURhdGVwaWNrZXIoKTsKCQkJfQoKCQkJZGF0ZSA9IHRoaXMuX2dldERhdGVEYXRlcGlja2VyKCB0YXJnZXQsIHRydWUgKTsKCQkJbWluRGF0ZSA9IHRoaXMuX2dldE1pbk1heERhdGUoIGluc3QsICJtaW4iICk7CgkJCW1heERhdGUgPSB0aGlzLl9nZXRNaW5NYXhEYXRlKCBpbnN0LCAibWF4IiApOwoJCQlkYXRlcGlja2VyX2V4dGVuZFJlbW92ZSggaW5zdC5zZXR0aW5ncywgc2V0dGluZ3MgKTsKCgkJCS8vIHJlZm9ybWF0IHRoZSBvbGQgbWluRGF0ZS9tYXhEYXRlIHZhbHVlcyBpZiBkYXRlRm9ybWF0IGNoYW5nZXMgYW5kIGEgbmV3IG1pbkRhdGUvbWF4RGF0ZSBpc24ndCBwcm92aWRlZAoJCQlpZiAoIG1pbkRhdGUgIT09IG51bGwgJiYgc2V0dGluZ3MuZGF0ZUZvcm1hdCAhPT0gdW5kZWZpbmVkICYmIHNldHRpbmdzLm1pbkRhdGUgPT09IHVuZGVmaW5lZCApIHsKCQkJCWluc3Quc2V0dGluZ3MubWluRGF0ZSA9IHRoaXMuX2Zvcm1hdERhdGUoIGluc3QsIG1pbkRhdGUgKTsKCQkJfQoJCQlpZiAoIG1heERhdGUgIT09IG51bGwgJiYgc2V0dGluZ3MuZGF0ZUZvcm1hdCAhPT0gdW5kZWZpbmVkICYmIHNldHRpbmdzLm1heERhdGUgPT09IHVuZGVmaW5lZCApIHsKCQkJCWluc3Quc2V0dGluZ3MubWF4RGF0ZSA9IHRoaXMuX2Zvcm1hdERhdGUoIGluc3QsIG1heERhdGUgKTsKCQkJfQoJCQlpZiAoICJkaXNhYmxlZCIgaW4gc2V0dGluZ3MgKSB7CgkJCQlpZiAoIHNldHRpbmdzLmRpc2FibGVkICkgewoJCQkJCXRoaXMuX2Rpc2FibGVEYXRlcGlja2VyKCB0YXJnZXQgKTsKCQkJCX0gZWxzZSB7CgkJCQkJdGhpcy5fZW5hYmxlRGF0ZXBpY2tlciggdGFyZ2V0ICk7CgkJCQl9CgkJCX0KCQkJdGhpcy5fYXR0YWNobWVudHMoICQoIHRhcmdldCApLCBpbnN0ICk7CgkJCXRoaXMuX2F1dG9TaXplKCBpbnN0ICk7CgkJCXRoaXMuX3NldERhdGUoIGluc3QsIGRhdGUgKTsKCQkJdGhpcy5fdXBkYXRlQWx0ZXJuYXRlKCBpbnN0ICk7CgkJCXRoaXMuX3VwZGF0ZURhdGVwaWNrZXIoIGluc3QgKTsKCQl9Cgl9LAoKCS8vIENoYW5nZSBtZXRob2QgZGVwcmVjYXRlZAoJX2NoYW5nZURhdGVwaWNrZXI6IGZ1bmN0aW9uKCB0YXJnZXQsIG5hbWUsIHZhbHVlICkgewoJCXRoaXMuX29wdGlvbkRhdGVwaWNrZXIoIHRhcmdldCwgbmFtZSwgdmFsdWUgKTsKCX0sCgoJLyogUmVkcmF3IHRoZSBkYXRlIHBpY2tlciBhdHRhY2hlZCB0byBhbiBpbnB1dCBmaWVsZCBvciBkaXZpc2lvbi4KCSAqIEBwYXJhbSAgdGFyZ2V0ICBlbGVtZW50IC0gdGhlIHRhcmdldCBpbnB1dCBmaWVsZCBvciBkaXZpc2lvbiBvciBzcGFuCgkgKi8KCV9yZWZyZXNoRGF0ZXBpY2tlcjogZnVuY3Rpb24oIHRhcmdldCApIHsKCQl2YXIgaW5zdCA9IHRoaXMuX2dldEluc3QoIHRhcmdldCApOwoJCWlmICggaW5zdCApIHsKCQkJdGhpcy5fdXBkYXRlRGF0ZXBpY2tlciggaW5zdCApOwoJCX0KCX0sCgoJLyogU2V0IHRoZSBkYXRlcyBmb3IgYSBqUXVlcnkgc2VsZWN0aW9uLgoJICogQHBhcmFtICB0YXJnZXQgZWxlbWVudCAtIHRoZSB0YXJnZXQgaW5wdXQgZmllbGQgb3IgZGl2aXNpb24gb3Igc3BhbgoJICogQHBhcmFtICBkYXRlCURhdGUgLSB0aGUgbmV3IGRhdGUKCSAqLwoJX3NldERhdGVEYXRlcGlja2VyOiBmdW5jdGlvbiggdGFyZ2V0LCBkYXRlICkgewoJCXZhciBpbnN0ID0gdGhpcy5fZ2V0SW5zdCggdGFyZ2V0ICk7CgkJaWYgKCBpbnN0ICkgewoJCQl0aGlzLl9zZXREYXRlKCBpbnN0LCBkYXRlICk7CgkJCXRoaXMuX3VwZGF0ZURhdGVwaWNrZXIoIGluc3QgKTsKCQkJdGhpcy5fdXBkYXRlQWx0ZXJuYXRlKCBpbnN0ICk7CgkJfQoJfSwKCgkvKiBHZXQgdGhlIGRhdGUocykgZm9yIHRoZSBmaXJzdCBlbnRyeSBpbiBhIGpRdWVyeSBzZWxlY3Rpb24uCgkgKiBAcGFyYW0gIHRhcmdldCBlbGVtZW50IC0gdGhlIHRhcmdldCBpbnB1dCBmaWVsZCBvciBkaXZpc2lvbiBvciBzcGFuCgkgKiBAcGFyYW0gIG5vRGVmYXVsdCBib29sZWFuIC0gdHJ1ZSBpZiBubyBkZWZhdWx0IGRhdGUgaXMgdG8gYmUgdXNlZAoJICogQHJldHVybiBEYXRlIC0gdGhlIGN1cnJlbnQgZGF0ZQoJICovCglfZ2V0RGF0ZURhdGVwaWNrZXI6IGZ1bmN0aW9uKCB0YXJnZXQsIG5vRGVmYXVsdCApIHsKCQl2YXIgaW5zdCA9IHRoaXMuX2dldEluc3QoIHRhcmdldCApOwoJCWlmICggaW5zdCAmJiAhaW5zdC5pbmxpbmUgKSB7CgkJCXRoaXMuX3NldERhdGVGcm9tRmllbGQoIGluc3QsIG5vRGVmYXVsdCApOwoJCX0KCQlyZXR1cm4gKCBpbnN0ID8gdGhpcy5fZ2V0RGF0ZSggaW5zdCApIDogbnVsbCApOwoJfSwKCgkvKiBIYW5kbGUga2V5c3Ryb2tlcy4gKi8KCV9kb0tleURvd246IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgb25TZWxlY3QsIGRhdGVTdHIsIHNlbCwKCQkJaW5zdCA9ICQuZGF0ZXBpY2tlci5fZ2V0SW5zdCggZXZlbnQudGFyZ2V0ICksCgkJCWhhbmRsZWQgPSB0cnVlLAoJCQlpc1JUTCA9IGluc3QuZHBEaXYuaXMoICIudWktZGF0ZXBpY2tlci1ydGwiICk7CgoJCWluc3QuX2tleUV2ZW50ID0gdHJ1ZTsKCQlpZiAoICQuZGF0ZXBpY2tlci5fZGF0ZXBpY2tlclNob3dpbmcgKSB7CgkJCXN3aXRjaCAoIGV2ZW50LmtleUNvZGUgKSB7CgkJCQljYXNlIDk6ICQuZGF0ZXBpY2tlci5faGlkZURhdGVwaWNrZXIoKTsKCQkJCQkJaGFuZGxlZCA9IGZhbHNlOwoJCQkJCQlicmVhazsgLy8gaGlkZSBvbiB0YWIgb3V0CgkJCQljYXNlIDEzOiBzZWwgPSAkKCAidGQuIiArICQuZGF0ZXBpY2tlci5fZGF5T3ZlckNsYXNzICsgIjpub3QoLiIgKwoJCQkJCQkJCQkkLmRhdGVwaWNrZXIuX2N1cnJlbnRDbGFzcyArICIpIiwgaW5zdC5kcERpdiApOwoJCQkJCQlpZiAoIHNlbFsgMCBdICkgewoJCQkJCQkJJC5kYXRlcGlja2VyLl9zZWxlY3REYXkoIGV2ZW50LnRhcmdldCwgaW5zdC5zZWxlY3RlZE1vbnRoLCBpbnN0LnNlbGVjdGVkWWVhciwgc2VsWyAwIF0gKTsKCQkJCQkJfQoKCQkJCQkJb25TZWxlY3QgPSAkLmRhdGVwaWNrZXIuX2dldCggaW5zdCwgIm9uU2VsZWN0IiApOwoJCQkJCQlpZiAoIG9uU2VsZWN0ICkgewoJCQkJCQkJZGF0ZVN0ciA9ICQuZGF0ZXBpY2tlci5fZm9ybWF0RGF0ZSggaW5zdCApOwoKCQkJCQkJCS8vIFRyaWdnZXIgY3VzdG9tIGNhbGxiYWNrCgkJCQkJCQlvblNlbGVjdC5hcHBseSggKCBpbnN0LmlucHV0ID8gaW5zdC5pbnB1dFsgMCBdIDogbnVsbCApLCBbIGRhdGVTdHIsIGluc3QgXSApOwoJCQkJCQl9IGVsc2UgewoJCQkJCQkJJC5kYXRlcGlja2VyLl9oaWRlRGF0ZXBpY2tlcigpOwoJCQkJCQl9CgoJCQkJCQlyZXR1cm4gZmFsc2U7IC8vIGRvbid0IHN1Ym1pdCB0aGUgZm9ybQoJCQkJY2FzZSAyNzogJC5kYXRlcGlja2VyLl9oaWRlRGF0ZXBpY2tlcigpOwoJCQkJCQlicmVhazsgLy8gaGlkZSBvbiBlc2NhcGUKCQkJCWNhc2UgMzM6ICQuZGF0ZXBpY2tlci5fYWRqdXN0RGF0ZSggZXZlbnQudGFyZ2V0LCAoIGV2ZW50LmN0cmxLZXkgPwoJCQkJCQkJLSQuZGF0ZXBpY2tlci5fZ2V0KCBpbnN0LCAic3RlcEJpZ01vbnRocyIgKSA6CgkJCQkJCQktJC5kYXRlcGlja2VyLl9nZXQoIGluc3QsICJzdGVwTW9udGhzIiApICksICJNIiApOwoJCQkJCQlicmVhazsgLy8gcHJldmlvdXMgbW9udGgveWVhciBvbiBwYWdlIHVwLysgY3RybAoJCQkJY2FzZSAzNDogJC5kYXRlcGlja2VyLl9hZGp1c3REYXRlKCBldmVudC50YXJnZXQsICggZXZlbnQuY3RybEtleSA/CgkJCQkJCQkrJC5kYXRlcGlja2VyLl9nZXQoIGluc3QsICJzdGVwQmlnTW9udGhzIiApIDoKCQkJCQkJCSskLmRhdGVwaWNrZXIuX2dldCggaW5zdCwgInN0ZXBNb250aHMiICkgKSwgIk0iICk7CgkJCQkJCWJyZWFrOyAvLyBuZXh0IG1vbnRoL3llYXIgb24gcGFnZSBkb3duLysgY3RybAoJCQkJY2FzZSAzNTogaWYgKCBldmVudC5jdHJsS2V5IHx8IGV2ZW50Lm1ldGFLZXkgKSB7CgkJCQkJCQkkLmRhdGVwaWNrZXIuX2NsZWFyRGF0ZSggZXZlbnQudGFyZ2V0ICk7CgkJCQkJCX0KCQkJCQkJaGFuZGxlZCA9IGV2ZW50LmN0cmxLZXkgfHwgZXZlbnQubWV0YUtleTsKCQkJCQkJYnJlYWs7IC8vIGNsZWFyIG9uIGN0cmwgb3IgY29tbWFuZCArZW5kCgkJCQljYXNlIDM2OiBpZiAoIGV2ZW50LmN0cmxLZXkgfHwgZXZlbnQubWV0YUtleSApIHsKCQkJCQkJCSQuZGF0ZXBpY2tlci5fZ290b1RvZGF5KCBldmVudC50YXJnZXQgKTsKCQkJCQkJfQoJCQkJCQloYW5kbGVkID0gZXZlbnQuY3RybEtleSB8fCBldmVudC5tZXRhS2V5OwoJCQkJCQlicmVhazsgLy8gY3VycmVudCBvbiBjdHJsIG9yIGNvbW1hbmQgK2hvbWUKCQkJCWNhc2UgMzc6IGlmICggZXZlbnQuY3RybEtleSB8fCBldmVudC5tZXRhS2V5ICkgewoJCQkJCQkJJC5kYXRlcGlja2VyLl9hZGp1c3REYXRlKCBldmVudC50YXJnZXQsICggaXNSVEwgPyArMSA6IC0xICksICJEIiApOwoJCQkJCQl9CgkJCQkJCWhhbmRsZWQgPSBldmVudC5jdHJsS2V5IHx8IGV2ZW50Lm1ldGFLZXk7CgoJCQkJCQkvLyAtMSBkYXkgb24gY3RybCBvciBjb21tYW5kICtsZWZ0CgkJCQkJCWlmICggZXZlbnQub3JpZ2luYWxFdmVudC5hbHRLZXkgKSB7CgkJCQkJCQkkLmRhdGVwaWNrZXIuX2FkanVzdERhdGUoIGV2ZW50LnRhcmdldCwgKCBldmVudC5jdHJsS2V5ID8KCQkJCQkJCQktJC5kYXRlcGlja2VyLl9nZXQoIGluc3QsICJzdGVwQmlnTW9udGhzIiApIDoKCQkJCQkJCQktJC5kYXRlcGlja2VyLl9nZXQoIGluc3QsICJzdGVwTW9udGhzIiApICksICJNIiApOwoJCQkJCQl9CgoJCQkJCQkvLyBuZXh0IG1vbnRoL3llYXIgb24gYWx0ICtsZWZ0IG9uIE1hYwoJCQkJCQlicmVhazsKCQkJCWNhc2UgMzg6IGlmICggZXZlbnQuY3RybEtleSB8fCBldmVudC5tZXRhS2V5ICkgewoJCQkJCQkJJC5kYXRlcGlja2VyLl9hZGp1c3REYXRlKCBldmVudC50YXJnZXQsIC03LCAiRCIgKTsKCQkJCQkJfQoJCQkJCQloYW5kbGVkID0gZXZlbnQuY3RybEtleSB8fCBldmVudC5tZXRhS2V5OwoJCQkJCQlicmVhazsgLy8gLTEgd2VlayBvbiBjdHJsIG9yIGNvbW1hbmQgK3VwCgkJCQljYXNlIDM5OiBpZiAoIGV2ZW50LmN0cmxLZXkgfHwgZXZlbnQubWV0YUtleSApIHsKCQkJCQkJCSQuZGF0ZXBpY2tlci5fYWRqdXN0RGF0ZSggZXZlbnQudGFyZ2V0LCAoIGlzUlRMID8gLTEgOiArMSApLCAiRCIgKTsKCQkJCQkJfQoJCQkJCQloYW5kbGVkID0gZXZlbnQuY3RybEtleSB8fCBldmVudC5tZXRhS2V5OwoKCQkJCQkJLy8gKzEgZGF5IG9uIGN0cmwgb3IgY29tbWFuZCArcmlnaHQKCQkJCQkJaWYgKCBldmVudC5vcmlnaW5hbEV2ZW50LmFsdEtleSApIHsKCQkJCQkJCSQuZGF0ZXBpY2tlci5fYWRqdXN0RGF0ZSggZXZlbnQudGFyZ2V0LCAoIGV2ZW50LmN0cmxLZXkgPwoJCQkJCQkJCSskLmRhdGVwaWNrZXIuX2dldCggaW5zdCwgInN0ZXBCaWdNb250aHMiICkgOgoJCQkJCQkJCSskLmRhdGVwaWNrZXIuX2dldCggaW5zdCwgInN0ZXBNb250aHMiICkgKSwgIk0iICk7CgkJCQkJCX0KCgkJCQkJCS8vIG5leHQgbW9udGgveWVhciBvbiBhbHQgK3JpZ2h0CgkJCQkJCWJyZWFrOwoJCQkJY2FzZSA0MDogaWYgKCBldmVudC5jdHJsS2V5IHx8IGV2ZW50Lm1ldGFLZXkgKSB7CgkJCQkJCQkkLmRhdGVwaWNrZXIuX2FkanVzdERhdGUoIGV2ZW50LnRhcmdldCwgKzcsICJEIiApOwoJCQkJCQl9CgkJCQkJCWhhbmRsZWQgPSBldmVudC5jdHJsS2V5IHx8IGV2ZW50Lm1ldGFLZXk7CgkJCQkJCWJyZWFrOyAvLyArMSB3ZWVrIG9uIGN0cmwgb3IgY29tbWFuZCArZG93bgoJCQkJZGVmYXVsdDogaGFuZGxlZCA9IGZhbHNlOwoJCQl9CgkJfSBlbHNlIGlmICggZXZlbnQua2V5Q29kZSA9PT0gMzYgJiYgZXZlbnQuY3RybEtleSApIHsgLy8gZGlzcGxheSB0aGUgZGF0ZSBwaWNrZXIgb24gY3RybCtob21lCgkJCSQuZGF0ZXBpY2tlci5fc2hvd0RhdGVwaWNrZXIoIHRoaXMgKTsKCQl9IGVsc2UgewoJCQloYW5kbGVkID0gZmFsc2U7CgkJfQoKCQlpZiAoIGhhbmRsZWQgKSB7CgkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCWV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOwoJCX0KCX0sCgoJLyogRmlsdGVyIGVudGVyZWQgY2hhcmFjdGVycyAtIGJhc2VkIG9uIGRhdGUgZm9ybWF0LiAqLwoJX2RvS2V5UHJlc3M6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgY2hhcnMsIGNociwKCQkJaW5zdCA9ICQuZGF0ZXBpY2tlci5fZ2V0SW5zdCggZXZlbnQudGFyZ2V0ICk7CgoJCWlmICggJC5kYXRlcGlja2VyLl9nZXQoIGluc3QsICJjb25zdHJhaW5JbnB1dCIgKSApIHsKCQkJY2hhcnMgPSAkLmRhdGVwaWNrZXIuX3Bvc3NpYmxlQ2hhcnMoICQuZGF0ZXBpY2tlci5fZ2V0KCBpbnN0LCAiZGF0ZUZvcm1hdCIgKSApOwoJCQljaHIgPSBTdHJpbmcuZnJvbUNoYXJDb2RlKCBldmVudC5jaGFyQ29kZSA9PSBudWxsID8gZXZlbnQua2V5Q29kZSA6IGV2ZW50LmNoYXJDb2RlICk7CgkJCXJldHVybiBldmVudC5jdHJsS2V5IHx8IGV2ZW50Lm1ldGFLZXkgfHwgKCBjaHIgPCAiICIgfHwgIWNoYXJzIHx8IGNoYXJzLmluZGV4T2YoIGNociApID4gLTEgKTsKCQl9Cgl9LAoKCS8qIFN5bmNocm9uaXNlIG1hbnVhbCBlbnRyeSBhbmQgZmllbGQvYWx0ZXJuYXRlIGZpZWxkLiAqLwoJX2RvS2V5VXA6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgZGF0ZSwKCQkJaW5zdCA9ICQuZGF0ZXBpY2tlci5fZ2V0SW5zdCggZXZlbnQudGFyZ2V0ICk7CgoJCWlmICggaW5zdC5pbnB1dC52YWwoKSAhPT0gaW5zdC5sYXN0VmFsICkgewoJCQl0cnkgewoJCQkJZGF0ZSA9ICQuZGF0ZXBpY2tlci5wYXJzZURhdGUoICQuZGF0ZXBpY2tlci5fZ2V0KCBpbnN0LCAiZGF0ZUZvcm1hdCIgKSwKCQkJCQkoIGluc3QuaW5wdXQgPyBpbnN0LmlucHV0LnZhbCgpIDogbnVsbCApLAoJCQkJCSQuZGF0ZXBpY2tlci5fZ2V0Rm9ybWF0Q29uZmlnKCBpbnN0ICkgKTsKCgkJCQlpZiAoIGRhdGUgKSB7IC8vIG9ubHkgaWYgdmFsaWQKCQkJCQkkLmRhdGVwaWNrZXIuX3NldERhdGVGcm9tRmllbGQoIGluc3QgKTsKCQkJCQkkLmRhdGVwaWNrZXIuX3VwZGF0ZUFsdGVybmF0ZSggaW5zdCApOwoJCQkJCSQuZGF0ZXBpY2tlci5fdXBkYXRlRGF0ZXBpY2tlciggaW5zdCApOwoJCQkJfQoJCQl9CgkJCWNhdGNoICggZXJyICkgewoJCQl9CgkJfQoJCXJldHVybiB0cnVlOwoJfSwKCgkvKiBQb3AtdXAgdGhlIGRhdGUgcGlja2VyIGZvciBhIGdpdmVuIGlucHV0IGZpZWxkLgoJICogSWYgZmFsc2UgcmV0dXJuZWQgZnJvbSBiZWZvcmVTaG93IGV2ZW50IGhhbmRsZXIgZG8gbm90IHNob3cuCgkgKiBAcGFyYW0gIGlucHV0ICBlbGVtZW50IC0gdGhlIGlucHV0IGZpZWxkIGF0dGFjaGVkIHRvIHRoZSBkYXRlIHBpY2tlciBvcgoJICoJCQkJCWV2ZW50IC0gaWYgdHJpZ2dlcmVkIGJ5IGZvY3VzCgkgKi8KCV9zaG93RGF0ZXBpY2tlcjogZnVuY3Rpb24oIGlucHV0ICkgewoJCWlucHV0ID0gaW5wdXQudGFyZ2V0IHx8IGlucHV0OwoJCWlmICggaW5wdXQubm9kZU5hbWUudG9Mb3dlckNhc2UoKSAhPT0gImlucHV0IiApIHsgLy8gZmluZCBmcm9tIGJ1dHRvbi9pbWFnZSB0cmlnZ2VyCgkJCWlucHV0ID0gJCggImlucHV0IiwgaW5wdXQucGFyZW50Tm9kZSApWyAwIF07CgkJfQoKCQlpZiAoICQuZGF0ZXBpY2tlci5faXNEaXNhYmxlZERhdGVwaWNrZXIoIGlucHV0ICkgfHwgJC5kYXRlcGlja2VyLl9sYXN0SW5wdXQgPT09IGlucHV0ICkgeyAvLyBhbHJlYWR5IGhlcmUKCQkJcmV0dXJuOwoJCX0KCgkJdmFyIGluc3QsIGJlZm9yZVNob3csIGJlZm9yZVNob3dTZXR0aW5ncywgaXNGaXhlZCwKCQkJb2Zmc2V0LCBzaG93QW5pbSwgZHVyYXRpb247CgoJCWluc3QgPSAkLmRhdGVwaWNrZXIuX2dldEluc3QoIGlucHV0ICk7CgkJaWYgKCAkLmRhdGVwaWNrZXIuX2N1ckluc3QgJiYgJC5kYXRlcGlja2VyLl9jdXJJbnN0ICE9PSBpbnN0ICkgewoJCQkkLmRhdGVwaWNrZXIuX2N1ckluc3QuZHBEaXYuc3RvcCggdHJ1ZSwgdHJ1ZSApOwoJCQlpZiAoIGluc3QgJiYgJC5kYXRlcGlja2VyLl9kYXRlcGlja2VyU2hvd2luZyApIHsKCQkJCSQuZGF0ZXBpY2tlci5faGlkZURhdGVwaWNrZXIoICQuZGF0ZXBpY2tlci5fY3VySW5zdC5pbnB1dFsgMCBdICk7CgkJCX0KCQl9CgoJCWJlZm9yZVNob3cgPSAkLmRhdGVwaWNrZXIuX2dldCggaW5zdCwgImJlZm9yZVNob3ciICk7CgkJYmVmb3JlU2hvd1NldHRpbmdzID0gYmVmb3JlU2hvdyA/IGJlZm9yZVNob3cuYXBwbHkoIGlucHV0LCBbIGlucHV0LCBpbnN0IF0gKSA6IHt9OwoJCWlmICggYmVmb3JlU2hvd1NldHRpbmdzID09PSBmYWxzZSApIHsKCQkJcmV0dXJuOwoJCX0KCQlkYXRlcGlja2VyX2V4dGVuZFJlbW92ZSggaW5zdC5zZXR0aW5ncywgYmVmb3JlU2hvd1NldHRpbmdzICk7CgoJCWluc3QubGFzdFZhbCA9IG51bGw7CgkJJC5kYXRlcGlja2VyLl9sYXN0SW5wdXQgPSBpbnB1dDsKCQkkLmRhdGVwaWNrZXIuX3NldERhdGVGcm9tRmllbGQoIGluc3QgKTsKCgkJaWYgKCAkLmRhdGVwaWNrZXIuX2luRGlhbG9nICkgeyAvLyBoaWRlIGN1cnNvcgoJCQlpbnB1dC52YWx1ZSA9ICIiOwoJCX0KCQlpZiAoICEkLmRhdGVwaWNrZXIuX3BvcyApIHsgLy8gcG9zaXRpb24gYmVsb3cgaW5wdXQKCQkJJC5kYXRlcGlja2VyLl9wb3MgPSAkLmRhdGVwaWNrZXIuX2ZpbmRQb3MoIGlucHV0ICk7CgkJCSQuZGF0ZXBpY2tlci5fcG9zWyAxIF0gKz0gaW5wdXQub2Zmc2V0SGVpZ2h0OyAvLyBhZGQgdGhlIGhlaWdodAoJCX0KCgkJaXNGaXhlZCA9IGZhbHNlOwoJCSQoIGlucHV0ICkucGFyZW50cygpLmVhY2goIGZ1bmN0aW9uKCkgewoJCQlpc0ZpeGVkIHw9ICQoIHRoaXMgKS5jc3MoICJwb3NpdGlvbiIgKSA9PT0gImZpeGVkIjsKCQkJcmV0dXJuICFpc0ZpeGVkOwoJCX0gKTsKCgkJb2Zmc2V0ID0geyBsZWZ0OiAkLmRhdGVwaWNrZXIuX3Bvc1sgMCBdLCB0b3A6ICQuZGF0ZXBpY2tlci5fcG9zWyAxIF0gfTsKCQkkLmRhdGVwaWNrZXIuX3BvcyA9IG51bGw7CgoJCS8vdG8gYXZvaWQgZmxhc2hlcyBvbiBGaXJlZm94CgkJaW5zdC5kcERpdi5lbXB0eSgpOwoKCQkvLyBkZXRlcm1pbmUgc2l6aW5nIG9mZnNjcmVlbgoJCWluc3QuZHBEaXYuY3NzKCB7IHBvc2l0aW9uOiAiYWJzb2x1dGUiLCBkaXNwbGF5OiAiYmxvY2siLCB0b3A6ICItMTAwMHB4IiB9ICk7CgkJJC5kYXRlcGlja2VyLl91cGRhdGVEYXRlcGlja2VyKCBpbnN0ICk7CgoJCS8vIGZpeCB3aWR0aCBmb3IgZHluYW1pYyBudW1iZXIgb2YgZGF0ZSBwaWNrZXJzCgkJLy8gYW5kIGFkanVzdCBwb3NpdGlvbiBiZWZvcmUgc2hvd2luZwoJCW9mZnNldCA9ICQuZGF0ZXBpY2tlci5fY2hlY2tPZmZzZXQoIGluc3QsIG9mZnNldCwgaXNGaXhlZCApOwoJCWluc3QuZHBEaXYuY3NzKCB7IHBvc2l0aW9uOiAoICQuZGF0ZXBpY2tlci5faW5EaWFsb2cgJiYgJC5ibG9ja1VJID8KCQkJInN0YXRpYyIgOiAoIGlzRml4ZWQgPyAiZml4ZWQiIDogImFic29sdXRlIiApICksIGRpc3BsYXk6ICJub25lIiwKCQkJbGVmdDogb2Zmc2V0LmxlZnQgKyAicHgiLCB0b3A6IG9mZnNldC50b3AgKyAicHgiIH0gKTsKCgkJaWYgKCAhaW5zdC5pbmxpbmUgKSB7CgkJCXNob3dBbmltID0gJC5kYXRlcGlja2VyLl9nZXQoIGluc3QsICJzaG93QW5pbSIgKTsKCQkJZHVyYXRpb24gPSAkLmRhdGVwaWNrZXIuX2dldCggaW5zdCwgImR1cmF0aW9uIiApOwoJCQlpbnN0LmRwRGl2LmNzcyggInotaW5kZXgiLCBkYXRlcGlja2VyX2dldFppbmRleCggJCggaW5wdXQgKSApICsgMSApOwoJCQkkLmRhdGVwaWNrZXIuX2RhdGVwaWNrZXJTaG93aW5nID0gdHJ1ZTsKCgkJCWlmICggJC5lZmZlY3RzICYmICQuZWZmZWN0cy5lZmZlY3RbIHNob3dBbmltIF0gKSB7CgkJCQlpbnN0LmRwRGl2LnNob3coIHNob3dBbmltLCAkLmRhdGVwaWNrZXIuX2dldCggaW5zdCwgInNob3dPcHRpb25zIiApLCBkdXJhdGlvbiApOwoJCQl9IGVsc2UgewoJCQkJaW5zdC5kcERpdlsgc2hvd0FuaW0gfHwgInNob3ciIF0oIHNob3dBbmltID8gZHVyYXRpb24gOiBudWxsICk7CgkJCX0KCgkJCWlmICggJC5kYXRlcGlja2VyLl9zaG91bGRGb2N1c0lucHV0KCBpbnN0ICkgKSB7CgkJCQlpbnN0LmlucHV0LnRyaWdnZXIoICJmb2N1cyIgKTsKCQkJfQoKCQkJJC5kYXRlcGlja2VyLl9jdXJJbnN0ID0gaW5zdDsKCQl9Cgl9LAoKCS8qIEdlbmVyYXRlIHRoZSBkYXRlIHBpY2tlciBjb250ZW50LiAqLwoJX3VwZGF0ZURhdGVwaWNrZXI6IGZ1bmN0aW9uKCBpbnN0ICkgewoJCXRoaXMubWF4Um93cyA9IDQ7IC8vUmVzZXQgdGhlIG1heCBudW1iZXIgb2Ygcm93cyBiZWluZyBkaXNwbGF5ZWQgKHNlZSAjNzA0MykKCQlkYXRlcGlja2VyX2luc3RBY3RpdmUgPSBpbnN0OyAvLyBmb3IgZGVsZWdhdGUgaG92ZXIgZXZlbnRzCgkJaW5zdC5kcERpdi5lbXB0eSgpLmFwcGVuZCggdGhpcy5fZ2VuZXJhdGVIVE1MKCBpbnN0ICkgKTsKCQl0aGlzLl9hdHRhY2hIYW5kbGVycyggaW5zdCApOwoKCQl2YXIgb3JpZ3llYXJzaHRtbCwKCQkJbnVtTW9udGhzID0gdGhpcy5fZ2V0TnVtYmVyT2ZNb250aHMoIGluc3QgKSwKCQkJY29scyA9IG51bU1vbnRoc1sgMSBdLAoJCQl3aWR0aCA9IDE3LAoJCQlhY3RpdmVDZWxsID0gaW5zdC5kcERpdi5maW5kKCAiLiIgKyB0aGlzLl9kYXlPdmVyQ2xhc3MgKyAiIGEiICk7CgoJCWlmICggYWN0aXZlQ2VsbC5sZW5ndGggPiAwICkgewoJCQlkYXRlcGlja2VyX2hhbmRsZU1vdXNlb3Zlci5hcHBseSggYWN0aXZlQ2VsbC5nZXQoIDAgKSApOwoJCX0KCgkJaW5zdC5kcERpdi5yZW1vdmVDbGFzcyggInVpLWRhdGVwaWNrZXItbXVsdGktMiB1aS1kYXRlcGlja2VyLW11bHRpLTMgdWktZGF0ZXBpY2tlci1tdWx0aS00IiApLndpZHRoKCAiIiApOwoJCWlmICggY29scyA+IDEgKSB7CgkJCWluc3QuZHBEaXYuYWRkQ2xhc3MoICJ1aS1kYXRlcGlja2VyLW11bHRpLSIgKyBjb2xzICkuY3NzKCAid2lkdGgiLCAoIHdpZHRoICogY29scyApICsgImVtIiApOwoJCX0KCQlpbnN0LmRwRGl2WyAoIG51bU1vbnRoc1sgMCBdICE9PSAxIHx8IG51bU1vbnRoc1sgMSBdICE9PSAxID8gImFkZCIgOiAicmVtb3ZlIiApICsKCQkJIkNsYXNzIiBdKCAidWktZGF0ZXBpY2tlci1tdWx0aSIgKTsKCQlpbnN0LmRwRGl2WyAoIHRoaXMuX2dldCggaW5zdCwgImlzUlRMIiApID8gImFkZCIgOiAicmVtb3ZlIiApICsKCQkJIkNsYXNzIiBdKCAidWktZGF0ZXBpY2tlci1ydGwiICk7CgoJCWlmICggaW5zdCA9PT0gJC5kYXRlcGlja2VyLl9jdXJJbnN0ICYmICQuZGF0ZXBpY2tlci5fZGF0ZXBpY2tlclNob3dpbmcgJiYgJC5kYXRlcGlja2VyLl9zaG91bGRGb2N1c0lucHV0KCBpbnN0ICkgKSB7CgkJCWluc3QuaW5wdXQudHJpZ2dlciggImZvY3VzIiApOwoJCX0KCgkJLy8gRGVmZmVyZWQgcmVuZGVyIG9mIHRoZSB5ZWFycyBzZWxlY3QgKHRvIGF2b2lkIGZsYXNoZXMgb24gRmlyZWZveCkKCQlpZiAoIGluc3QueWVhcnNodG1sICkgewoJCQlvcmlneWVhcnNodG1sID0gaW5zdC55ZWFyc2h0bWw7CgkJCXNldFRpbWVvdXQoIGZ1bmN0aW9uKCkgewoKCQkJCS8vYXNzdXJlIHRoYXQgaW5zdC55ZWFyc2h0bWwgZGlkbid0IGNoYW5nZS4KCQkJCWlmICggb3JpZ3llYXJzaHRtbCA9PT0gaW5zdC55ZWFyc2h0bWwgJiYgaW5zdC55ZWFyc2h0bWwgKSB7CgkJCQkJaW5zdC5kcERpdi5maW5kKCAic2VsZWN0LnVpLWRhdGVwaWNrZXIteWVhcjpmaXJzdCIgKS5yZXBsYWNlV2l0aCggaW5zdC55ZWFyc2h0bWwgKTsKCQkJCX0KCQkJCW9yaWd5ZWFyc2h0bWwgPSBpbnN0LnllYXJzaHRtbCA9IG51bGw7CgkJCX0sIDAgKTsKCQl9Cgl9LAoKCS8vICM2Njk0IC0gZG9uJ3QgZm9jdXMgdGhlIGlucHV0IGlmIGl0J3MgYWxyZWFkeSBmb2N1c2VkCgkvLyB0aGlzIGJyZWFrcyB0aGUgY2hhbmdlIGV2ZW50IGluIElFCgkvLyBTdXBwb3J0OiBJRSBhbmQgalF1ZXJ5IDwxLjkKCV9zaG91bGRGb2N1c0lucHV0OiBmdW5jdGlvbiggaW5zdCApIHsKCQlyZXR1cm4gaW5zdC5pbnB1dCAmJiBpbnN0LmlucHV0LmlzKCAiOnZpc2libGUiICkgJiYgIWluc3QuaW5wdXQuaXMoICI6ZGlzYWJsZWQiICkgJiYgIWluc3QuaW5wdXQuaXMoICI6Zm9jdXMiICk7Cgl9LAoKCS8qIENoZWNrIHBvc2l0aW9uaW5nIHRvIHJlbWFpbiBvbiBzY3JlZW4uICovCglfY2hlY2tPZmZzZXQ6IGZ1bmN0aW9uKCBpbnN0LCBvZmZzZXQsIGlzRml4ZWQgKSB7CgkJdmFyIGRwV2lkdGggPSBpbnN0LmRwRGl2Lm91dGVyV2lkdGgoKSwKCQkJZHBIZWlnaHQgPSBpbnN0LmRwRGl2Lm91dGVySGVpZ2h0KCksCgkJCWlucHV0V2lkdGggPSBpbnN0LmlucHV0ID8gaW5zdC5pbnB1dC5vdXRlcldpZHRoKCkgOiAwLAoJCQlpbnB1dEhlaWdodCA9IGluc3QuaW5wdXQgPyBpbnN0LmlucHV0Lm91dGVySGVpZ2h0KCkgOiAwLAoJCQl2aWV3V2lkdGggPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGggKyAoIGlzRml4ZWQgPyAwIDogJCggZG9jdW1lbnQgKS5zY3JvbGxMZWZ0KCkgKSwKCQkJdmlld0hlaWdodCA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQgKyAoIGlzRml4ZWQgPyAwIDogJCggZG9jdW1lbnQgKS5zY3JvbGxUb3AoKSApOwoKCQlvZmZzZXQubGVmdCAtPSAoIHRoaXMuX2dldCggaW5zdCwgImlzUlRMIiApID8gKCBkcFdpZHRoIC0gaW5wdXRXaWR0aCApIDogMCApOwoJCW9mZnNldC5sZWZ0IC09ICggaXNGaXhlZCAmJiBvZmZzZXQubGVmdCA9PT0gaW5zdC5pbnB1dC5vZmZzZXQoKS5sZWZ0ICkgPyAkKCBkb2N1bWVudCApLnNjcm9sbExlZnQoKSA6IDA7CgkJb2Zmc2V0LnRvcCAtPSAoIGlzRml4ZWQgJiYgb2Zmc2V0LnRvcCA9PT0gKCBpbnN0LmlucHV0Lm9mZnNldCgpLnRvcCArIGlucHV0SGVpZ2h0ICkgKSA/ICQoIGRvY3VtZW50ICkuc2Nyb2xsVG9wKCkgOiAwOwoKCQkvLyBOb3cgY2hlY2sgaWYgZGF0ZXBpY2tlciBpcyBzaG93aW5nIG91dHNpZGUgd2luZG93IHZpZXdwb3J0IC0gbW92ZSB0byBhIGJldHRlciBwbGFjZSBpZiBzby4KCQlvZmZzZXQubGVmdCAtPSBNYXRoLm1pbiggb2Zmc2V0LmxlZnQsICggb2Zmc2V0LmxlZnQgKyBkcFdpZHRoID4gdmlld1dpZHRoICYmIHZpZXdXaWR0aCA+IGRwV2lkdGggKSA/CgkJCU1hdGguYWJzKCBvZmZzZXQubGVmdCArIGRwV2lkdGggLSB2aWV3V2lkdGggKSA6IDAgKTsKCQlvZmZzZXQudG9wIC09IE1hdGgubWluKCBvZmZzZXQudG9wLCAoIG9mZnNldC50b3AgKyBkcEhlaWdodCA+IHZpZXdIZWlnaHQgJiYgdmlld0hlaWdodCA+IGRwSGVpZ2h0ICkgPwoJCQlNYXRoLmFicyggZHBIZWlnaHQgKyBpbnB1dEhlaWdodCApIDogMCApOwoKCQlyZXR1cm4gb2Zmc2V0OwoJfSwKCgkvKiBGaW5kIGFuIG9iamVjdCdzIHBvc2l0aW9uIG9uIHRoZSBzY3JlZW4uICovCglfZmluZFBvczogZnVuY3Rpb24oIG9iaiApIHsKCQl2YXIgcG9zaXRpb24sCgkJCWluc3QgPSB0aGlzLl9nZXRJbnN0KCBvYmogKSwKCQkJaXNSVEwgPSB0aGlzLl9nZXQoIGluc3QsICJpc1JUTCIgKTsKCgkJd2hpbGUgKCBvYmogJiYgKCBvYmoudHlwZSA9PT0gImhpZGRlbiIgfHwgb2JqLm5vZGVUeXBlICE9PSAxIHx8ICQuZXhwci5maWx0ZXJzLmhpZGRlbiggb2JqICkgKSApIHsKCQkJb2JqID0gb2JqWyBpc1JUTCA/ICJwcmV2aW91c1NpYmxpbmciIDogIm5leHRTaWJsaW5nIiBdOwoJCX0KCgkJcG9zaXRpb24gPSAkKCBvYmogKS5vZmZzZXQoKTsKCQlyZXR1cm4gWyBwb3NpdGlvbi5sZWZ0LCBwb3NpdGlvbi50b3AgXTsKCX0sCgoJLyogSGlkZSB0aGUgZGF0ZSBwaWNrZXIgZnJvbSB2aWV3LgoJICogQHBhcmFtICBpbnB1dCAgZWxlbWVudCAtIHRoZSBpbnB1dCBmaWVsZCBhdHRhY2hlZCB0byB0aGUgZGF0ZSBwaWNrZXIKCSAqLwoJX2hpZGVEYXRlcGlja2VyOiBmdW5jdGlvbiggaW5wdXQgKSB7CgkJdmFyIHNob3dBbmltLCBkdXJhdGlvbiwgcG9zdFByb2Nlc3MsIG9uQ2xvc2UsCgkJCWluc3QgPSB0aGlzLl9jdXJJbnN0OwoKCQlpZiAoICFpbnN0IHx8ICggaW5wdXQgJiYgaW5zdCAhPT0gJC5kYXRhKCBpbnB1dCwgImRhdGVwaWNrZXIiICkgKSApIHsKCQkJcmV0dXJuOwoJCX0KCgkJaWYgKCB0aGlzLl9kYXRlcGlja2VyU2hvd2luZyApIHsKCQkJc2hvd0FuaW0gPSB0aGlzLl9nZXQoIGluc3QsICJzaG93QW5pbSIgKTsKCQkJZHVyYXRpb24gPSB0aGlzLl9nZXQoIGluc3QsICJkdXJhdGlvbiIgKTsKCQkJcG9zdFByb2Nlc3MgPSBmdW5jdGlvbigpIHsKCQkJCSQuZGF0ZXBpY2tlci5fdGlkeURpYWxvZyggaW5zdCApOwoJCQl9OwoKCQkJLy8gREVQUkVDQVRFRDogYWZ0ZXIgQkMgZm9yIDEuOC54ICQuZWZmZWN0c1sgc2hvd0FuaW0gXSBpcyBub3QgbmVlZGVkCgkJCWlmICggJC5lZmZlY3RzICYmICggJC5lZmZlY3RzLmVmZmVjdFsgc2hvd0FuaW0gXSB8fCAkLmVmZmVjdHNbIHNob3dBbmltIF0gKSApIHsKCQkJCWluc3QuZHBEaXYuaGlkZSggc2hvd0FuaW0sICQuZGF0ZXBpY2tlci5fZ2V0KCBpbnN0LCAic2hvd09wdGlvbnMiICksIGR1cmF0aW9uLCBwb3N0UHJvY2VzcyApOwoJCQl9IGVsc2UgewoJCQkJaW5zdC5kcERpdlsgKCBzaG93QW5pbSA9PT0gInNsaWRlRG93biIgPyAic2xpZGVVcCIgOgoJCQkJCSggc2hvd0FuaW0gPT09ICJmYWRlSW4iID8gImZhZGVPdXQiIDogImhpZGUiICkgKSBdKCAoIHNob3dBbmltID8gZHVyYXRpb24gOiBudWxsICksIHBvc3RQcm9jZXNzICk7CgkJCX0KCgkJCWlmICggIXNob3dBbmltICkgewoJCQkJcG9zdFByb2Nlc3MoKTsKCQkJfQoJCQl0aGlzLl9kYXRlcGlja2VyU2hvd2luZyA9IGZhbHNlOwoKCQkJb25DbG9zZSA9IHRoaXMuX2dldCggaW5zdCwgIm9uQ2xvc2UiICk7CgkJCWlmICggb25DbG9zZSApIHsKCQkJCW9uQ2xvc2UuYXBwbHkoICggaW5zdC5pbnB1dCA/IGluc3QuaW5wdXRbIDAgXSA6IG51bGwgKSwgWyAoIGluc3QuaW5wdXQgPyBpbnN0LmlucHV0LnZhbCgpIDogIiIgKSwgaW5zdCBdICk7CgkJCX0KCgkJCXRoaXMuX2xhc3RJbnB1dCA9IG51bGw7CgkJCWlmICggdGhpcy5faW5EaWFsb2cgKSB7CgkJCQl0aGlzLl9kaWFsb2dJbnB1dC5jc3MoIHsgcG9zaXRpb246ICJhYnNvbHV0ZSIsIGxlZnQ6ICIwIiwgdG9wOiAiLTEwMHB4IiB9ICk7CgkJCQlpZiAoICQuYmxvY2tVSSApIHsKCQkJCQkkLnVuYmxvY2tVSSgpOwoJCQkJCSQoICJib2R5IiApLmFwcGVuZCggdGhpcy5kcERpdiApOwoJCQkJfQoJCQl9CgkJCXRoaXMuX2luRGlhbG9nID0gZmFsc2U7CgkJfQoJfSwKCgkvKiBUaWR5IHVwIGFmdGVyIGEgZGlhbG9nIGRpc3BsYXkuICovCglfdGlkeURpYWxvZzogZnVuY3Rpb24oIGluc3QgKSB7CgkJaW5zdC5kcERpdi5yZW1vdmVDbGFzcyggdGhpcy5fZGlhbG9nQ2xhc3MgKS5vZmYoICIudWktZGF0ZXBpY2tlci1jYWxlbmRhciIgKTsKCX0sCgoJLyogQ2xvc2UgZGF0ZSBwaWNrZXIgaWYgY2xpY2tlZCBlbHNld2hlcmUuICovCglfY2hlY2tFeHRlcm5hbENsaWNrOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJaWYgKCAhJC5kYXRlcGlja2VyLl9jdXJJbnN0ICkgewoJCQlyZXR1cm47CgkJfQoKCQl2YXIgJHRhcmdldCA9ICQoIGV2ZW50LnRhcmdldCApLAoJCQlpbnN0ID0gJC5kYXRlcGlja2VyLl9nZXRJbnN0KCAkdGFyZ2V0WyAwIF0gKTsKCgkJaWYgKCAoICggJHRhcmdldFsgMCBdLmlkICE9PSAkLmRhdGVwaWNrZXIuX21haW5EaXZJZCAmJgoJCQkJJHRhcmdldC5wYXJlbnRzKCAiIyIgKyAkLmRhdGVwaWNrZXIuX21haW5EaXZJZCApLmxlbmd0aCA9PT0gMCAmJgoJCQkJISR0YXJnZXQuaGFzQ2xhc3MoICQuZGF0ZXBpY2tlci5tYXJrZXJDbGFzc05hbWUgKSAmJgoJCQkJISR0YXJnZXQuY2xvc2VzdCggIi4iICsgJC5kYXRlcGlja2VyLl90cmlnZ2VyQ2xhc3MgKS5sZW5ndGggJiYKCQkJCSQuZGF0ZXBpY2tlci5fZGF0ZXBpY2tlclNob3dpbmcgJiYgISggJC5kYXRlcGlja2VyLl9pbkRpYWxvZyAmJiAkLmJsb2NrVUkgKSApICkgfHwKCQkJKCAkdGFyZ2V0Lmhhc0NsYXNzKCAkLmRhdGVwaWNrZXIubWFya2VyQ2xhc3NOYW1lICkgJiYgJC5kYXRlcGlja2VyLl9jdXJJbnN0ICE9PSBpbnN0ICkgKSB7CgkJCQkkLmRhdGVwaWNrZXIuX2hpZGVEYXRlcGlja2VyKCk7CgkJfQoJfSwKCgkvKiBBZGp1c3Qgb25lIG9mIHRoZSBkYXRlIHN1Yi1maWVsZHMuICovCglfYWRqdXN0RGF0ZTogZnVuY3Rpb24oIGlkLCBvZmZzZXQsIHBlcmlvZCApIHsKCQl2YXIgdGFyZ2V0ID0gJCggaWQgKSwKCQkJaW5zdCA9IHRoaXMuX2dldEluc3QoIHRhcmdldFsgMCBdICk7CgoJCWlmICggdGhpcy5faXNEaXNhYmxlZERhdGVwaWNrZXIoIHRhcmdldFsgMCBdICkgKSB7CgkJCXJldHVybjsKCQl9CgkJdGhpcy5fYWRqdXN0SW5zdERhdGUoIGluc3QsIG9mZnNldCArCgkJCSggcGVyaW9kID09PSAiTSIgPyB0aGlzLl9nZXQoIGluc3QsICJzaG93Q3VycmVudEF0UG9zIiApIDogMCApLCAvLyB1bmRvIHBvc2l0aW9uaW5nCgkJCXBlcmlvZCApOwoJCXRoaXMuX3VwZGF0ZURhdGVwaWNrZXIoIGluc3QgKTsKCX0sCgoJLyogQWN0aW9uIGZvciBjdXJyZW50IGxpbmsuICovCglfZ290b1RvZGF5OiBmdW5jdGlvbiggaWQgKSB7CgkJdmFyIGRhdGUsCgkJCXRhcmdldCA9ICQoIGlkICksCgkJCWluc3QgPSB0aGlzLl9nZXRJbnN0KCB0YXJnZXRbIDAgXSApOwoKCQlpZiAoIHRoaXMuX2dldCggaW5zdCwgImdvdG9DdXJyZW50IiApICYmIGluc3QuY3VycmVudERheSApIHsKCQkJaW5zdC5zZWxlY3RlZERheSA9IGluc3QuY3VycmVudERheTsKCQkJaW5zdC5kcmF3TW9udGggPSBpbnN0LnNlbGVjdGVkTW9udGggPSBpbnN0LmN1cnJlbnRNb250aDsKCQkJaW5zdC5kcmF3WWVhciA9IGluc3Quc2VsZWN0ZWRZZWFyID0gaW5zdC5jdXJyZW50WWVhcjsKCQl9IGVsc2UgewoJCQlkYXRlID0gbmV3IERhdGUoKTsKCQkJaW5zdC5zZWxlY3RlZERheSA9IGRhdGUuZ2V0RGF0ZSgpOwoJCQlpbnN0LmRyYXdNb250aCA9IGluc3Quc2VsZWN0ZWRNb250aCA9IGRhdGUuZ2V0TW9udGgoKTsKCQkJaW5zdC5kcmF3WWVhciA9IGluc3Quc2VsZWN0ZWRZZWFyID0gZGF0ZS5nZXRGdWxsWWVhcigpOwoJCX0KCQl0aGlzLl9ub3RpZnlDaGFuZ2UoIGluc3QgKTsKCQl0aGlzLl9hZGp1c3REYXRlKCB0YXJnZXQgKTsKCX0sCgoJLyogQWN0aW9uIGZvciBzZWxlY3RpbmcgYSBuZXcgbW9udGgveWVhci4gKi8KCV9zZWxlY3RNb250aFllYXI6IGZ1bmN0aW9uKCBpZCwgc2VsZWN0LCBwZXJpb2QgKSB7CgkJdmFyIHRhcmdldCA9ICQoIGlkICksCgkJCWluc3QgPSB0aGlzLl9nZXRJbnN0KCB0YXJnZXRbIDAgXSApOwoKCQlpbnN0WyAic2VsZWN0ZWQiICsgKCBwZXJpb2QgPT09ICJNIiA/ICJNb250aCIgOiAiWWVhciIgKSBdID0KCQlpbnN0WyAiZHJhdyIgKyAoIHBlcmlvZCA9PT0gIk0iID8gIk1vbnRoIiA6ICJZZWFyIiApIF0gPQoJCQlwYXJzZUludCggc2VsZWN0Lm9wdGlvbnNbIHNlbGVjdC5zZWxlY3RlZEluZGV4IF0udmFsdWUsIDEwICk7CgoJCXRoaXMuX25vdGlmeUNoYW5nZSggaW5zdCApOwoJCXRoaXMuX2FkanVzdERhdGUoIHRhcmdldCApOwoJfSwKCgkvKiBBY3Rpb24gZm9yIHNlbGVjdGluZyBhIGRheS4gKi8KCV9zZWxlY3REYXk6IGZ1bmN0aW9uKCBpZCwgbW9udGgsIHllYXIsIHRkICkgewoJCXZhciBpbnN0LAoJCQl0YXJnZXQgPSAkKCBpZCApOwoKCQlpZiAoICQoIHRkICkuaGFzQ2xhc3MoIHRoaXMuX3Vuc2VsZWN0YWJsZUNsYXNzICkgfHwgdGhpcy5faXNEaXNhYmxlZERhdGVwaWNrZXIoIHRhcmdldFsgMCBdICkgKSB7CgkJCXJldHVybjsKCQl9CgoJCWluc3QgPSB0aGlzLl9nZXRJbnN0KCB0YXJnZXRbIDAgXSApOwoJCWluc3Quc2VsZWN0ZWREYXkgPSBpbnN0LmN1cnJlbnREYXkgPSAkKCAiYSIsIHRkICkuaHRtbCgpOwoJCWluc3Quc2VsZWN0ZWRNb250aCA9IGluc3QuY3VycmVudE1vbnRoID0gbW9udGg7CgkJaW5zdC5zZWxlY3RlZFllYXIgPSBpbnN0LmN1cnJlbnRZZWFyID0geWVhcjsKCQl0aGlzLl9zZWxlY3REYXRlKCBpZCwgdGhpcy5fZm9ybWF0RGF0ZSggaW5zdCwKCQkJaW5zdC5jdXJyZW50RGF5LCBpbnN0LmN1cnJlbnRNb250aCwgaW5zdC5jdXJyZW50WWVhciApICk7Cgl9LAoKCS8qIEVyYXNlIHRoZSBpbnB1dCBmaWVsZCBhbmQgaGlkZSB0aGUgZGF0ZSBwaWNrZXIuICovCglfY2xlYXJEYXRlOiBmdW5jdGlvbiggaWQgKSB7CgkJdmFyIHRhcmdldCA9ICQoIGlkICk7CgkJdGhpcy5fc2VsZWN0RGF0ZSggdGFyZ2V0LCAiIiApOwoJfSwKCgkvKiBVcGRhdGUgdGhlIGlucHV0IGZpZWxkIHdpdGggdGhlIHNlbGVjdGVkIGRhdGUuICovCglfc2VsZWN0RGF0ZTogZnVuY3Rpb24oIGlkLCBkYXRlU3RyICkgewoJCXZhciBvblNlbGVjdCwKCQkJdGFyZ2V0ID0gJCggaWQgKSwKCQkJaW5zdCA9IHRoaXMuX2dldEluc3QoIHRhcmdldFsgMCBdICk7CgoJCWRhdGVTdHIgPSAoIGRhdGVTdHIgIT0gbnVsbCA/IGRhdGVTdHIgOiB0aGlzLl9mb3JtYXREYXRlKCBpbnN0ICkgKTsKCQlpZiAoIGluc3QuaW5wdXQgKSB7CgkJCWluc3QuaW5wdXQudmFsKCBkYXRlU3RyICk7CgkJfQoJCXRoaXMuX3VwZGF0ZUFsdGVybmF0ZSggaW5zdCApOwoKCQlvblNlbGVjdCA9IHRoaXMuX2dldCggaW5zdCwgIm9uU2VsZWN0IiApOwoJCWlmICggb25TZWxlY3QgKSB7CgkJCW9uU2VsZWN0LmFwcGx5KCAoIGluc3QuaW5wdXQgPyBpbnN0LmlucHV0WyAwIF0gOiBudWxsICksIFsgZGF0ZVN0ciwgaW5zdCBdICk7ICAvLyB0cmlnZ2VyIGN1c3RvbSBjYWxsYmFjawoJCX0gZWxzZSBpZiAoIGluc3QuaW5wdXQgKSB7CgkJCWluc3QuaW5wdXQudHJpZ2dlciggImNoYW5nZSIgKTsgLy8gZmlyZSB0aGUgY2hhbmdlIGV2ZW50CgkJfQoKCQlpZiAoIGluc3QuaW5saW5lICkgewoJCQl0aGlzLl91cGRhdGVEYXRlcGlja2VyKCBpbnN0ICk7CgkJfSBlbHNlIHsKCQkJdGhpcy5faGlkZURhdGVwaWNrZXIoKTsKCQkJdGhpcy5fbGFzdElucHV0ID0gaW5zdC5pbnB1dFsgMCBdOwoJCQlpZiAoIHR5cGVvZiggaW5zdC5pbnB1dFsgMCBdICkgIT09ICJvYmplY3QiICkgewoJCQkJaW5zdC5pbnB1dC50cmlnZ2VyKCAiZm9jdXMiICk7IC8vIHJlc3RvcmUgZm9jdXMKCQkJfQoJCQl0aGlzLl9sYXN0SW5wdXQgPSBudWxsOwoJCX0KCX0sCgoJLyogVXBkYXRlIGFueSBhbHRlcm5hdGUgZmllbGQgdG8gc3luY2hyb25pc2Ugd2l0aCB0aGUgbWFpbiBmaWVsZC4gKi8KCV91cGRhdGVBbHRlcm5hdGU6IGZ1bmN0aW9uKCBpbnN0ICkgewoJCXZhciBhbHRGb3JtYXQsIGRhdGUsIGRhdGVTdHIsCgkJCWFsdEZpZWxkID0gdGhpcy5fZ2V0KCBpbnN0LCAiYWx0RmllbGQiICk7CgoJCWlmICggYWx0RmllbGQgKSB7IC8vIHVwZGF0ZSBhbHRlcm5hdGUgZmllbGQgdG9vCgkJCWFsdEZvcm1hdCA9IHRoaXMuX2dldCggaW5zdCwgImFsdEZvcm1hdCIgKSB8fCB0aGlzLl9nZXQoIGluc3QsICJkYXRlRm9ybWF0IiApOwoJCQlkYXRlID0gdGhpcy5fZ2V0RGF0ZSggaW5zdCApOwoJCQlkYXRlU3RyID0gdGhpcy5mb3JtYXREYXRlKCBhbHRGb3JtYXQsIGRhdGUsIHRoaXMuX2dldEZvcm1hdENvbmZpZyggaW5zdCApICk7CgkJCSQoIGFsdEZpZWxkICkudmFsKCBkYXRlU3RyICk7CgkJfQoJfSwKCgkvKiBTZXQgYXMgYmVmb3JlU2hvd0RheSBmdW5jdGlvbiB0byBwcmV2ZW50IHNlbGVjdGlvbiBvZiB3ZWVrZW5kcy4KCSAqIEBwYXJhbSAgZGF0ZSAgRGF0ZSAtIHRoZSBkYXRlIHRvIGN1c3RvbWlzZQoJICogQHJldHVybiBbYm9vbGVhbiwgc3RyaW5nXSAtIGlzIHRoaXMgZGF0ZSBzZWxlY3RhYmxlPywgd2hhdCBpcyBpdHMgQ1NTIGNsYXNzPwoJICovCglub1dlZWtlbmRzOiBmdW5jdGlvbiggZGF0ZSApIHsKCQl2YXIgZGF5ID0gZGF0ZS5nZXREYXkoKTsKCQlyZXR1cm4gWyAoIGRheSA+IDAgJiYgZGF5IDwgNiApLCAiIiBdOwoJfSwKCgkvKiBTZXQgYXMgY2FsY3VsYXRlV2VlayB0byBkZXRlcm1pbmUgdGhlIHdlZWsgb2YgdGhlIHllYXIgYmFzZWQgb24gdGhlIElTTyA4NjAxIGRlZmluaXRpb24uCgkgKiBAcGFyYW0gIGRhdGUgIERhdGUgLSB0aGUgZGF0ZSB0byBnZXQgdGhlIHdlZWsgZm9yCgkgKiBAcmV0dXJuICBudW1iZXIgLSB0aGUgbnVtYmVyIG9mIHRoZSB3ZWVrIHdpdGhpbiB0aGUgeWVhciB0aGF0IGNvbnRhaW5zIHRoaXMgZGF0ZQoJICovCglpc284NjAxV2VlazogZnVuY3Rpb24oIGRhdGUgKSB7CgkJdmFyIHRpbWUsCgkJCWNoZWNrRGF0ZSA9IG5ldyBEYXRlKCBkYXRlLmdldFRpbWUoKSApOwoKCQkvLyBGaW5kIFRodXJzZGF5IG9mIHRoaXMgd2VlayBzdGFydGluZyBvbiBNb25kYXkKCQljaGVja0RhdGUuc2V0RGF0ZSggY2hlY2tEYXRlLmdldERhdGUoKSArIDQgLSAoIGNoZWNrRGF0ZS5nZXREYXkoKSB8fCA3ICkgKTsKCgkJdGltZSA9IGNoZWNrRGF0ZS5nZXRUaW1lKCk7CgkJY2hlY2tEYXRlLnNldE1vbnRoKCAwICk7IC8vIENvbXBhcmUgd2l0aCBKYW4gMQoJCWNoZWNrRGF0ZS5zZXREYXRlKCAxICk7CgkJcmV0dXJuIE1hdGguZmxvb3IoIE1hdGgucm91bmQoICggdGltZSAtIGNoZWNrRGF0ZSApIC8gODY0MDAwMDAgKSAvIDcgKSArIDE7Cgl9LAoKCS8qIFBhcnNlIGEgc3RyaW5nIHZhbHVlIGludG8gYSBkYXRlIG9iamVjdC4KCSAqIFNlZSBmb3JtYXREYXRlIGJlbG93IGZvciB0aGUgcG9zc2libGUgZm9ybWF0cy4KCSAqCgkgKiBAcGFyYW0gIGZvcm1hdCBzdHJpbmcgLSB0aGUgZXhwZWN0ZWQgZm9ybWF0IG9mIHRoZSBkYXRlCgkgKiBAcGFyYW0gIHZhbHVlIHN0cmluZyAtIHRoZSBkYXRlIGluIHRoZSBhYm92ZSBmb3JtYXQKCSAqIEBwYXJhbSAgc2V0dGluZ3MgT2JqZWN0IC0gYXR0cmlidXRlcyBpbmNsdWRlOgoJICoJCQkJCXNob3J0WWVhckN1dG9mZiAgbnVtYmVyIC0gdGhlIGN1dG9mZiB5ZWFyIGZvciBkZXRlcm1pbmluZyB0aGUgY2VudHVyeSAob3B0aW9uYWwpCgkgKgkJCQkJZGF5TmFtZXNTaG9ydAlzdHJpbmdbN10gLSBhYmJyZXZpYXRlZCBuYW1lcyBvZiB0aGUgZGF5cyBmcm9tIFN1bmRheSAob3B0aW9uYWwpCgkgKgkJCQkJZGF5TmFtZXMJCXN0cmluZ1s3XSAtIG5hbWVzIG9mIHRoZSBkYXlzIGZyb20gU3VuZGF5IChvcHRpb25hbCkKCSAqCQkJCQltb250aE5hbWVzU2hvcnQgc3RyaW5nWzEyXSAtIGFiYnJldmlhdGVkIG5hbWVzIG9mIHRoZSBtb250aHMgKG9wdGlvbmFsKQoJICoJCQkJCW1vbnRoTmFtZXMJCXN0cmluZ1sxMl0gLSBuYW1lcyBvZiB0aGUgbW9udGhzIChvcHRpb25hbCkKCSAqIEByZXR1cm4gIERhdGUgLSB0aGUgZXh0cmFjdGVkIGRhdGUgdmFsdWUgb3IgbnVsbCBpZiB2YWx1ZSBpcyBibGFuawoJICovCglwYXJzZURhdGU6IGZ1bmN0aW9uKCBmb3JtYXQsIHZhbHVlLCBzZXR0aW5ncyApIHsKCQlpZiAoIGZvcm1hdCA9PSBudWxsIHx8IHZhbHVlID09IG51bGwgKSB7CgkJCXRocm93ICJJbnZhbGlkIGFyZ3VtZW50cyI7CgkJfQoKCQl2YWx1ZSA9ICggdHlwZW9mIHZhbHVlID09PSAib2JqZWN0IiA/IHZhbHVlLnRvU3RyaW5nKCkgOiB2YWx1ZSArICIiICk7CgkJaWYgKCB2YWx1ZSA9PT0gIiIgKSB7CgkJCXJldHVybiBudWxsOwoJCX0KCgkJdmFyIGlGb3JtYXQsIGRpbSwgZXh0cmEsCgkJCWlWYWx1ZSA9IDAsCgkJCXNob3J0WWVhckN1dG9mZlRlbXAgPSAoIHNldHRpbmdzID8gc2V0dGluZ3Muc2hvcnRZZWFyQ3V0b2ZmIDogbnVsbCApIHx8IHRoaXMuX2RlZmF1bHRzLnNob3J0WWVhckN1dG9mZiwKCQkJc2hvcnRZZWFyQ3V0b2ZmID0gKCB0eXBlb2Ygc2hvcnRZZWFyQ3V0b2ZmVGVtcCAhPT0gInN0cmluZyIgPyBzaG9ydFllYXJDdXRvZmZUZW1wIDoKCQkJCW5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKSAlIDEwMCArIHBhcnNlSW50KCBzaG9ydFllYXJDdXRvZmZUZW1wLCAxMCApICksCgkJCWRheU5hbWVzU2hvcnQgPSAoIHNldHRpbmdzID8gc2V0dGluZ3MuZGF5TmFtZXNTaG9ydCA6IG51bGwgKSB8fCB0aGlzLl9kZWZhdWx0cy5kYXlOYW1lc1Nob3J0LAoJCQlkYXlOYW1lcyA9ICggc2V0dGluZ3MgPyBzZXR0aW5ncy5kYXlOYW1lcyA6IG51bGwgKSB8fCB0aGlzLl9kZWZhdWx0cy5kYXlOYW1lcywKCQkJbW9udGhOYW1lc1Nob3J0ID0gKCBzZXR0aW5ncyA/IHNldHRpbmdzLm1vbnRoTmFtZXNTaG9ydCA6IG51bGwgKSB8fCB0aGlzLl9kZWZhdWx0cy5tb250aE5hbWVzU2hvcnQsCgkJCW1vbnRoTmFtZXMgPSAoIHNldHRpbmdzID8gc2V0dGluZ3MubW9udGhOYW1lcyA6IG51bGwgKSB8fCB0aGlzLl9kZWZhdWx0cy5tb250aE5hbWVzLAoJCQl5ZWFyID0gLTEsCgkJCW1vbnRoID0gLTEsCgkJCWRheSA9IC0xLAoJCQlkb3kgPSAtMSwKCQkJbGl0ZXJhbCA9IGZhbHNlLAoJCQlkYXRlLAoKCQkJLy8gQ2hlY2sgd2hldGhlciBhIGZvcm1hdCBjaGFyYWN0ZXIgaXMgZG91YmxlZAoJCQlsb29rQWhlYWQgPSBmdW5jdGlvbiggbWF0Y2ggKSB7CgkJCQl2YXIgbWF0Y2hlcyA9ICggaUZvcm1hdCArIDEgPCBmb3JtYXQubGVuZ3RoICYmIGZvcm1hdC5jaGFyQXQoIGlGb3JtYXQgKyAxICkgPT09IG1hdGNoICk7CgkJCQlpZiAoIG1hdGNoZXMgKSB7CgkJCQkJaUZvcm1hdCsrOwoJCQkJfQoJCQkJcmV0dXJuIG1hdGNoZXM7CgkJCX0sCgoJCQkvLyBFeHRyYWN0IGEgbnVtYmVyIGZyb20gdGhlIHN0cmluZyB2YWx1ZQoJCQlnZXROdW1iZXIgPSBmdW5jdGlvbiggbWF0Y2ggKSB7CgkJCQl2YXIgaXNEb3VibGVkID0gbG9va0FoZWFkKCBtYXRjaCApLAoJCQkJCXNpemUgPSAoIG1hdGNoID09PSAiQCIgPyAxNCA6ICggbWF0Y2ggPT09ICIhIiA/IDIwIDoKCQkJCQkoIG1hdGNoID09PSAieSIgJiYgaXNEb3VibGVkID8gNCA6ICggbWF0Y2ggPT09ICJvIiA/IDMgOiAyICkgKSApICksCgkJCQkJbWluU2l6ZSA9ICggbWF0Y2ggPT09ICJ5IiA/IHNpemUgOiAxICksCgkJCQkJZGlnaXRzID0gbmV3IFJlZ0V4cCggIl5cXGR7IiArIG1pblNpemUgKyAiLCIgKyBzaXplICsgIn0iICksCgkJCQkJbnVtID0gdmFsdWUuc3Vic3RyaW5nKCBpVmFsdWUgKS5tYXRjaCggZGlnaXRzICk7CgkJCQlpZiAoICFudW0gKSB7CgkJCQkJdGhyb3cgIk1pc3NpbmcgbnVtYmVyIGF0IHBvc2l0aW9uICIgKyBpVmFsdWU7CgkJCQl9CgkJCQlpVmFsdWUgKz0gbnVtWyAwIF0ubGVuZ3RoOwoJCQkJcmV0dXJuIHBhcnNlSW50KCBudW1bIDAgXSwgMTAgKTsKCQkJfSwKCgkJCS8vIEV4dHJhY3QgYSBuYW1lIGZyb20gdGhlIHN0cmluZyB2YWx1ZSBhbmQgY29udmVydCB0byBhbiBpbmRleAoJCQlnZXROYW1lID0gZnVuY3Rpb24oIG1hdGNoLCBzaG9ydE5hbWVzLCBsb25nTmFtZXMgKSB7CgkJCQl2YXIgaW5kZXggPSAtMSwKCQkJCQluYW1lcyA9ICQubWFwKCBsb29rQWhlYWQoIG1hdGNoICkgPyBsb25nTmFtZXMgOiBzaG9ydE5hbWVzLCBmdW5jdGlvbiggdiwgayApIHsKCQkJCQkJcmV0dXJuIFsgWyBrLCB2IF0gXTsKCQkJCQl9ICkuc29ydCggZnVuY3Rpb24oIGEsIGIgKSB7CgkJCQkJCXJldHVybiAtKCBhWyAxIF0ubGVuZ3RoIC0gYlsgMSBdLmxlbmd0aCApOwoJCQkJCX0gKTsKCgkJCQkkLmVhY2goIG5hbWVzLCBmdW5jdGlvbiggaSwgcGFpciApIHsKCQkJCQl2YXIgbmFtZSA9IHBhaXJbIDEgXTsKCQkJCQlpZiAoIHZhbHVlLnN1YnN0ciggaVZhbHVlLCBuYW1lLmxlbmd0aCApLnRvTG93ZXJDYXNlKCkgPT09IG5hbWUudG9Mb3dlckNhc2UoKSApIHsKCQkJCQkJaW5kZXggPSBwYWlyWyAwIF07CgkJCQkJCWlWYWx1ZSArPSBuYW1lLmxlbmd0aDsKCQkJCQkJcmV0dXJuIGZhbHNlOwoJCQkJCX0KCQkJCX0gKTsKCQkJCWlmICggaW5kZXggIT09IC0xICkgewoJCQkJCXJldHVybiBpbmRleCArIDE7CgkJCQl9IGVsc2UgewoJCQkJCXRocm93ICJVbmtub3duIG5hbWUgYXQgcG9zaXRpb24gIiArIGlWYWx1ZTsKCQkJCX0KCQkJfSwKCgkJCS8vIENvbmZpcm0gdGhhdCBhIGxpdGVyYWwgY2hhcmFjdGVyIG1hdGNoZXMgdGhlIHN0cmluZyB2YWx1ZQoJCQljaGVja0xpdGVyYWwgPSBmdW5jdGlvbigpIHsKCQkJCWlmICggdmFsdWUuY2hhckF0KCBpVmFsdWUgKSAhPT0gZm9ybWF0LmNoYXJBdCggaUZvcm1hdCApICkgewoJCQkJCXRocm93ICJVbmV4cGVjdGVkIGxpdGVyYWwgYXQgcG9zaXRpb24gIiArIGlWYWx1ZTsKCQkJCX0KCQkJCWlWYWx1ZSsrOwoJCQl9OwoKCQlmb3IgKCBpRm9ybWF0ID0gMDsgaUZvcm1hdCA8IGZvcm1hdC5sZW5ndGg7IGlGb3JtYXQrKyApIHsKCQkJaWYgKCBsaXRlcmFsICkgewoJCQkJaWYgKCBmb3JtYXQuY2hhckF0KCBpRm9ybWF0ICkgPT09ICInIiAmJiAhbG9va0FoZWFkKCAiJyIgKSApIHsKCQkJCQlsaXRlcmFsID0gZmFsc2U7CgkJCQl9IGVsc2UgewoJCQkJCWNoZWNrTGl0ZXJhbCgpOwoJCQkJfQoJCQl9IGVsc2UgewoJCQkJc3dpdGNoICggZm9ybWF0LmNoYXJBdCggaUZvcm1hdCApICkgewoJCQkJCWNhc2UgImQiOgoJCQkJCQlkYXkgPSBnZXROdW1iZXIoICJkIiApOwoJCQkJCQlicmVhazsKCQkJCQljYXNlICJEIjoKCQkJCQkJZ2V0TmFtZSggIkQiLCBkYXlOYW1lc1Nob3J0LCBkYXlOYW1lcyApOwoJCQkJCQlicmVhazsKCQkJCQljYXNlICJvIjoKCQkJCQkJZG95ID0gZ2V0TnVtYmVyKCAibyIgKTsKCQkJCQkJYnJlYWs7CgkJCQkJY2FzZSAibSI6CgkJCQkJCW1vbnRoID0gZ2V0TnVtYmVyKCAibSIgKTsKCQkJCQkJYnJlYWs7CgkJCQkJY2FzZSAiTSI6CgkJCQkJCW1vbnRoID0gZ2V0TmFtZSggIk0iLCBtb250aE5hbWVzU2hvcnQsIG1vbnRoTmFtZXMgKTsKCQkJCQkJYnJlYWs7CgkJCQkJY2FzZSAieSI6CgkJCQkJCXllYXIgPSBnZXROdW1iZXIoICJ5IiApOwoJCQkJCQlicmVhazsKCQkJCQljYXNlICJAIjoKCQkJCQkJZGF0ZSA9IG5ldyBEYXRlKCBnZXROdW1iZXIoICJAIiApICk7CgkJCQkJCXllYXIgPSBkYXRlLmdldEZ1bGxZZWFyKCk7CgkJCQkJCW1vbnRoID0gZGF0ZS5nZXRNb250aCgpICsgMTsKCQkJCQkJZGF5ID0gZGF0ZS5nZXREYXRlKCk7CgkJCQkJCWJyZWFrOwoJCQkJCWNhc2UgIiEiOgoJCQkJCQlkYXRlID0gbmV3IERhdGUoICggZ2V0TnVtYmVyKCAiISIgKSAtIHRoaXMuX3RpY2tzVG8xOTcwICkgLyAxMDAwMCApOwoJCQkJCQl5ZWFyID0gZGF0ZS5nZXRGdWxsWWVhcigpOwoJCQkJCQltb250aCA9IGRhdGUuZ2V0TW9udGgoKSArIDE7CgkJCQkJCWRheSA9IGRhdGUuZ2V0RGF0ZSgpOwoJCQkJCQlicmVhazsKCQkJCQljYXNlICInIjoKCQkJCQkJaWYgKCBsb29rQWhlYWQoICInIiApICkgewoJCQkJCQkJY2hlY2tMaXRlcmFsKCk7CgkJCQkJCX0gZWxzZSB7CgkJCQkJCQlsaXRlcmFsID0gdHJ1ZTsKCQkJCQkJfQoJCQkJCQlicmVhazsKCQkJCQlkZWZhdWx0OgoJCQkJCQljaGVja0xpdGVyYWwoKTsKCQkJCX0KCQkJfQoJCX0KCgkJaWYgKCBpVmFsdWUgPCB2YWx1ZS5sZW5ndGggKSB7CgkJCWV4dHJhID0gdmFsdWUuc3Vic3RyKCBpVmFsdWUgKTsKCQkJaWYgKCAhL15ccysvLnRlc3QoIGV4dHJhICkgKSB7CgkJCQl0aHJvdyAiRXh0cmEvdW5wYXJzZWQgY2hhcmFjdGVycyBmb3VuZCBpbiBkYXRlOiAiICsgZXh0cmE7CgkJCX0KCQl9CgoJCWlmICggeWVhciA9PT0gLTEgKSB7CgkJCXllYXIgPSBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCk7CgkJfSBlbHNlIGlmICggeWVhciA8IDEwMCApIHsKCQkJeWVhciArPSBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCkgLSBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCkgJSAxMDAgKwoJCQkJKCB5ZWFyIDw9IHNob3J0WWVhckN1dG9mZiA/IDAgOiAtMTAwICk7CgkJfQoKCQlpZiAoIGRveSA+IC0xICkgewoJCQltb250aCA9IDE7CgkJCWRheSA9IGRveTsKCQkJZG8gewoJCQkJZGltID0gdGhpcy5fZ2V0RGF5c0luTW9udGgoIHllYXIsIG1vbnRoIC0gMSApOwoJCQkJaWYgKCBkYXkgPD0gZGltICkgewoJCQkJCWJyZWFrOwoJCQkJfQoJCQkJbW9udGgrKzsKCQkJCWRheSAtPSBkaW07CgkJCX0gd2hpbGUgKCB0cnVlICk7CgkJfQoKCQlkYXRlID0gdGhpcy5fZGF5bGlnaHRTYXZpbmdBZGp1c3QoIG5ldyBEYXRlKCB5ZWFyLCBtb250aCAtIDEsIGRheSApICk7CgkJaWYgKCBkYXRlLmdldEZ1bGxZZWFyKCkgIT09IHllYXIgfHwgZGF0ZS5nZXRNb250aCgpICsgMSAhPT0gbW9udGggfHwgZGF0ZS5nZXREYXRlKCkgIT09IGRheSApIHsKCQkJdGhyb3cgIkludmFsaWQgZGF0ZSI7IC8vIEUuZy4gMzEvMDIvMDAKCQl9CgkJcmV0dXJuIGRhdGU7Cgl9LAoKCS8qIFN0YW5kYXJkIGRhdGUgZm9ybWF0cy4gKi8KCUFUT006ICJ5eS1tbS1kZCIsIC8vIFJGQyAzMzM5IChJU08gODYwMSkKCUNPT0tJRTogIkQsIGRkIE0geXkiLAoJSVNPXzg2MDE6ICJ5eS1tbS1kZCIsCglSRkNfODIyOiAiRCwgZCBNIHkiLAoJUkZDXzg1MDogIkRELCBkZC1NLXkiLAoJUkZDXzEwMzY6ICJELCBkIE0geSIsCglSRkNfMTEyMzogIkQsIGQgTSB5eSIsCglSRkNfMjgyMjogIkQsIGQgTSB5eSIsCglSU1M6ICJELCBkIE0geSIsIC8vIFJGQyA4MjIKCVRJQ0tTOiAiISIsCglUSU1FU1RBTVA6ICJAIiwKCVczQzogInl5LW1tLWRkIiwgLy8gSVNPIDg2MDEKCglfdGlja3NUbzE5NzA6ICggKCAoIDE5NzAgLSAxICkgKiAzNjUgKyBNYXRoLmZsb29yKCAxOTcwIC8gNCApIC0gTWF0aC5mbG9vciggMTk3MCAvIDEwMCApICsKCQlNYXRoLmZsb29yKCAxOTcwIC8gNDAwICkgKSAqIDI0ICogNjAgKiA2MCAqIDEwMDAwMDAwICksCgoJLyogRm9ybWF0IGEgZGF0ZSBvYmplY3QgaW50byBhIHN0cmluZyB2YWx1ZS4KCSAqIFRoZSBmb3JtYXQgY2FuIGJlIGNvbWJpbmF0aW9ucyBvZiB0aGUgZm9sbG93aW5nOgoJICogZCAgLSBkYXkgb2YgbW9udGggKG5vIGxlYWRpbmcgemVybykKCSAqIGRkIC0gZGF5IG9mIG1vbnRoICh0d28gZGlnaXQpCgkgKiBvICAtIGRheSBvZiB5ZWFyIChubyBsZWFkaW5nIHplcm9zKQoJICogb28gLSBkYXkgb2YgeWVhciAodGhyZWUgZGlnaXQpCgkgKiBEICAtIGRheSBuYW1lIHNob3J0CgkgKiBERCAtIGRheSBuYW1lIGxvbmcKCSAqIG0gIC0gbW9udGggb2YgeWVhciAobm8gbGVhZGluZyB6ZXJvKQoJICogbW0gLSBtb250aCBvZiB5ZWFyICh0d28gZGlnaXQpCgkgKiBNICAtIG1vbnRoIG5hbWUgc2hvcnQKCSAqIE1NIC0gbW9udGggbmFtZSBsb25nCgkgKiB5ICAtIHllYXIgKHR3byBkaWdpdCkKCSAqIHl5IC0geWVhciAoZm91ciBkaWdpdCkKCSAqIEAgLSBVbml4IHRpbWVzdGFtcCAobXMgc2luY2UgMDEvMDEvMTk3MCkKCSAqICEgLSBXaW5kb3dzIHRpY2tzICgxMDBucyBzaW5jZSAwMS8wMS8wMDAxKQoJICogIi4uLiIgLSBsaXRlcmFsIHRleHQKCSAqICcnIC0gc2luZ2xlIHF1b3RlCgkgKgoJICogQHBhcmFtICBmb3JtYXQgc3RyaW5nIC0gdGhlIGRlc2lyZWQgZm9ybWF0IG9mIHRoZSBkYXRlCgkgKiBAcGFyYW0gIGRhdGUgRGF0ZSAtIHRoZSBkYXRlIHZhbHVlIHRvIGZvcm1hdAoJICogQHBhcmFtICBzZXR0aW5ncyBPYmplY3QgLSBhdHRyaWJ1dGVzIGluY2x1ZGU6CgkgKgkJCQkJZGF5TmFtZXNTaG9ydAlzdHJpbmdbN10gLSBhYmJyZXZpYXRlZCBuYW1lcyBvZiB0aGUgZGF5cyBmcm9tIFN1bmRheSAob3B0aW9uYWwpCgkgKgkJCQkJZGF5TmFtZXMJCXN0cmluZ1s3XSAtIG5hbWVzIG9mIHRoZSBkYXlzIGZyb20gU3VuZGF5IChvcHRpb25hbCkKCSAqCQkJCQltb250aE5hbWVzU2hvcnQgc3RyaW5nWzEyXSAtIGFiYnJldmlhdGVkIG5hbWVzIG9mIHRoZSBtb250aHMgKG9wdGlvbmFsKQoJICoJCQkJCW1vbnRoTmFtZXMJCXN0cmluZ1sxMl0gLSBuYW1lcyBvZiB0aGUgbW9udGhzIChvcHRpb25hbCkKCSAqIEByZXR1cm4gIHN0cmluZyAtIHRoZSBkYXRlIGluIHRoZSBhYm92ZSBmb3JtYXQKCSAqLwoJZm9ybWF0RGF0ZTogZnVuY3Rpb24oIGZvcm1hdCwgZGF0ZSwgc2V0dGluZ3MgKSB7CgkJaWYgKCAhZGF0ZSApIHsKCQkJcmV0dXJuICIiOwoJCX0KCgkJdmFyIGlGb3JtYXQsCgkJCWRheU5hbWVzU2hvcnQgPSAoIHNldHRpbmdzID8gc2V0dGluZ3MuZGF5TmFtZXNTaG9ydCA6IG51bGwgKSB8fCB0aGlzLl9kZWZhdWx0cy5kYXlOYW1lc1Nob3J0LAoJCQlkYXlOYW1lcyA9ICggc2V0dGluZ3MgPyBzZXR0aW5ncy5kYXlOYW1lcyA6IG51bGwgKSB8fCB0aGlzLl9kZWZhdWx0cy5kYXlOYW1lcywKCQkJbW9udGhOYW1lc1Nob3J0ID0gKCBzZXR0aW5ncyA/IHNldHRpbmdzLm1vbnRoTmFtZXNTaG9ydCA6IG51bGwgKSB8fCB0aGlzLl9kZWZhdWx0cy5tb250aE5hbWVzU2hvcnQsCgkJCW1vbnRoTmFtZXMgPSAoIHNldHRpbmdzID8gc2V0dGluZ3MubW9udGhOYW1lcyA6IG51bGwgKSB8fCB0aGlzLl9kZWZhdWx0cy5tb250aE5hbWVzLAoKCQkJLy8gQ2hlY2sgd2hldGhlciBhIGZvcm1hdCBjaGFyYWN0ZXIgaXMgZG91YmxlZAoJCQlsb29rQWhlYWQgPSBmdW5jdGlvbiggbWF0Y2ggKSB7CgkJCQl2YXIgbWF0Y2hlcyA9ICggaUZvcm1hdCArIDEgPCBmb3JtYXQubGVuZ3RoICYmIGZvcm1hdC5jaGFyQXQoIGlGb3JtYXQgKyAxICkgPT09IG1hdGNoICk7CgkJCQlpZiAoIG1hdGNoZXMgKSB7CgkJCQkJaUZvcm1hdCsrOwoJCQkJfQoJCQkJcmV0dXJuIG1hdGNoZXM7CgkJCX0sCgoJCQkvLyBGb3JtYXQgYSBudW1iZXIsIHdpdGggbGVhZGluZyB6ZXJvIGlmIG5lY2Vzc2FyeQoJCQlmb3JtYXROdW1iZXIgPSBmdW5jdGlvbiggbWF0Y2gsIHZhbHVlLCBsZW4gKSB7CgkJCQl2YXIgbnVtID0gIiIgKyB2YWx1ZTsKCQkJCWlmICggbG9va0FoZWFkKCBtYXRjaCApICkgewoJCQkJCXdoaWxlICggbnVtLmxlbmd0aCA8IGxlbiApIHsKCQkJCQkJbnVtID0gIjAiICsgbnVtOwoJCQkJCX0KCQkJCX0KCQkJCXJldHVybiBudW07CgkJCX0sCgoJCQkvLyBGb3JtYXQgYSBuYW1lLCBzaG9ydCBvciBsb25nIGFzIHJlcXVlc3RlZAoJCQlmb3JtYXROYW1lID0gZnVuY3Rpb24oIG1hdGNoLCB2YWx1ZSwgc2hvcnROYW1lcywgbG9uZ05hbWVzICkgewoJCQkJcmV0dXJuICggbG9va0FoZWFkKCBtYXRjaCApID8gbG9uZ05hbWVzWyB2YWx1ZSBdIDogc2hvcnROYW1lc1sgdmFsdWUgXSApOwoJCQl9LAoJCQlvdXRwdXQgPSAiIiwKCQkJbGl0ZXJhbCA9IGZhbHNlOwoKCQlpZiAoIGRhdGUgKSB7CgkJCWZvciAoIGlGb3JtYXQgPSAwOyBpRm9ybWF0IDwgZm9ybWF0Lmxlbmd0aDsgaUZvcm1hdCsrICkgewoJCQkJaWYgKCBsaXRlcmFsICkgewoJCQkJCWlmICggZm9ybWF0LmNoYXJBdCggaUZvcm1hdCApID09PSAiJyIgJiYgIWxvb2tBaGVhZCggIiciICkgKSB7CgkJCQkJCWxpdGVyYWwgPSBmYWxzZTsKCQkJCQl9IGVsc2UgewoJCQkJCQlvdXRwdXQgKz0gZm9ybWF0LmNoYXJBdCggaUZvcm1hdCApOwoJCQkJCX0KCQkJCX0gZWxzZSB7CgkJCQkJc3dpdGNoICggZm9ybWF0LmNoYXJBdCggaUZvcm1hdCApICkgewoJCQkJCQljYXNlICJkIjoKCQkJCQkJCW91dHB1dCArPSBmb3JtYXROdW1iZXIoICJkIiwgZGF0ZS5nZXREYXRlKCksIDIgKTsKCQkJCQkJCWJyZWFrOwoJCQkJCQljYXNlICJEIjoKCQkJCQkJCW91dHB1dCArPSBmb3JtYXROYW1lKCAiRCIsIGRhdGUuZ2V0RGF5KCksIGRheU5hbWVzU2hvcnQsIGRheU5hbWVzICk7CgkJCQkJCQlicmVhazsKCQkJCQkJY2FzZSAibyI6CgkJCQkJCQlvdXRwdXQgKz0gZm9ybWF0TnVtYmVyKCAibyIsCgkJCQkJCQkJTWF0aC5yb3VuZCggKCBuZXcgRGF0ZSggZGF0ZS5nZXRGdWxsWWVhcigpLCBkYXRlLmdldE1vbnRoKCksIGRhdGUuZ2V0RGF0ZSgpICkuZ2V0VGltZSgpIC0gbmV3IERhdGUoIGRhdGUuZ2V0RnVsbFllYXIoKSwgMCwgMCApLmdldFRpbWUoKSApIC8gODY0MDAwMDAgKSwgMyApOwoJCQkJCQkJYnJlYWs7CgkJCQkJCWNhc2UgIm0iOgoJCQkJCQkJb3V0cHV0ICs9IGZvcm1hdE51bWJlciggIm0iLCBkYXRlLmdldE1vbnRoKCkgKyAxLCAyICk7CgkJCQkJCQlicmVhazsKCQkJCQkJY2FzZSAiTSI6CgkJCQkJCQlvdXRwdXQgKz0gZm9ybWF0TmFtZSggIk0iLCBkYXRlLmdldE1vbnRoKCksIG1vbnRoTmFtZXNTaG9ydCwgbW9udGhOYW1lcyApOwoJCQkJCQkJYnJlYWs7CgkJCQkJCWNhc2UgInkiOgoJCQkJCQkJb3V0cHV0ICs9ICggbG9va0FoZWFkKCAieSIgKSA/IGRhdGUuZ2V0RnVsbFllYXIoKSA6CgkJCQkJCQkJKCBkYXRlLmdldEZ1bGxZZWFyKCkgJSAxMDAgPCAxMCA/ICIwIiA6ICIiICkgKyBkYXRlLmdldEZ1bGxZZWFyKCkgJSAxMDAgKTsKCQkJCQkJCWJyZWFrOwoJCQkJCQljYXNlICJAIjoKCQkJCQkJCW91dHB1dCArPSBkYXRlLmdldFRpbWUoKTsKCQkJCQkJCWJyZWFrOwoJCQkJCQljYXNlICIhIjoKCQkJCQkJCW91dHB1dCArPSBkYXRlLmdldFRpbWUoKSAqIDEwMDAwICsgdGhpcy5fdGlja3NUbzE5NzA7CgkJCQkJCQlicmVhazsKCQkJCQkJY2FzZSAiJyI6CgkJCQkJCQlpZiAoIGxvb2tBaGVhZCggIiciICkgKSB7CgkJCQkJCQkJb3V0cHV0ICs9ICInIjsKCQkJCQkJCX0gZWxzZSB7CgkJCQkJCQkJbGl0ZXJhbCA9IHRydWU7CgkJCQkJCQl9CgkJCQkJCQlicmVhazsKCQkJCQkJZGVmYXVsdDoKCQkJCQkJCW91dHB1dCArPSBmb3JtYXQuY2hhckF0KCBpRm9ybWF0ICk7CgkJCQkJfQoJCQkJfQoJCQl9CgkJfQoJCXJldHVybiBvdXRwdXQ7Cgl9LAoKCS8qIEV4dHJhY3QgYWxsIHBvc3NpYmxlIGNoYXJhY3RlcnMgZnJvbSB0aGUgZGF0ZSBmb3JtYXQuICovCglfcG9zc2libGVDaGFyczogZnVuY3Rpb24oIGZvcm1hdCApIHsKCQl2YXIgaUZvcm1hdCwKCQkJY2hhcnMgPSAiIiwKCQkJbGl0ZXJhbCA9IGZhbHNlLAoKCQkJLy8gQ2hlY2sgd2hldGhlciBhIGZvcm1hdCBjaGFyYWN0ZXIgaXMgZG91YmxlZAoJCQlsb29rQWhlYWQgPSBmdW5jdGlvbiggbWF0Y2ggKSB7CgkJCQl2YXIgbWF0Y2hlcyA9ICggaUZvcm1hdCArIDEgPCBmb3JtYXQubGVuZ3RoICYmIGZvcm1hdC5jaGFyQXQoIGlGb3JtYXQgKyAxICkgPT09IG1hdGNoICk7CgkJCQlpZiAoIG1hdGNoZXMgKSB7CgkJCQkJaUZvcm1hdCsrOwoJCQkJfQoJCQkJcmV0dXJuIG1hdGNoZXM7CgkJCX07CgoJCWZvciAoIGlGb3JtYXQgPSAwOyBpRm9ybWF0IDwgZm9ybWF0Lmxlbmd0aDsgaUZvcm1hdCsrICkgewoJCQlpZiAoIGxpdGVyYWwgKSB7CgkJCQlpZiAoIGZvcm1hdC5jaGFyQXQoIGlGb3JtYXQgKSA9PT0gIiciICYmICFsb29rQWhlYWQoICInIiApICkgewoJCQkJCWxpdGVyYWwgPSBmYWxzZTsKCQkJCX0gZWxzZSB7CgkJCQkJY2hhcnMgKz0gZm9ybWF0LmNoYXJBdCggaUZvcm1hdCApOwoJCQkJfQoJCQl9IGVsc2UgewoJCQkJc3dpdGNoICggZm9ybWF0LmNoYXJBdCggaUZvcm1hdCApICkgewoJCQkJCWNhc2UgImQiOiBjYXNlICJtIjogY2FzZSAieSI6IGNhc2UgIkAiOgoJCQkJCQljaGFycyArPSAiMDEyMzQ1Njc4OSI7CgkJCQkJCWJyZWFrOwoJCQkJCWNhc2UgIkQiOiBjYXNlICJNIjoKCQkJCQkJcmV0dXJuIG51bGw7IC8vIEFjY2VwdCBhbnl0aGluZwoJCQkJCWNhc2UgIiciOgoJCQkJCQlpZiAoIGxvb2tBaGVhZCggIiciICkgKSB7CgkJCQkJCQljaGFycyArPSAiJyI7CgkJCQkJCX0gZWxzZSB7CgkJCQkJCQlsaXRlcmFsID0gdHJ1ZTsKCQkJCQkJfQoJCQkJCQlicmVhazsKCQkJCQlkZWZhdWx0OgoJCQkJCQljaGFycyArPSBmb3JtYXQuY2hhckF0KCBpRm9ybWF0ICk7CgkJCQl9CgkJCX0KCQl9CgkJcmV0dXJuIGNoYXJzOwoJfSwKCgkvKiBHZXQgYSBzZXR0aW5nIHZhbHVlLCBkZWZhdWx0aW5nIGlmIG5lY2Vzc2FyeS4gKi8KCV9nZXQ6IGZ1bmN0aW9uKCBpbnN0LCBuYW1lICkgewoJCXJldHVybiBpbnN0LnNldHRpbmdzWyBuYW1lIF0gIT09IHVuZGVmaW5lZCA/CgkJCWluc3Quc2V0dGluZ3NbIG5hbWUgXSA6IHRoaXMuX2RlZmF1bHRzWyBuYW1lIF07Cgl9LAoKCS8qIFBhcnNlIGV4aXN0aW5nIGRhdGUgYW5kIGluaXRpYWxpc2UgZGF0ZSBwaWNrZXIuICovCglfc2V0RGF0ZUZyb21GaWVsZDogZnVuY3Rpb24oIGluc3QsIG5vRGVmYXVsdCApIHsKCQlpZiAoIGluc3QuaW5wdXQudmFsKCkgPT09IGluc3QubGFzdFZhbCApIHsKCQkJcmV0dXJuOwoJCX0KCgkJdmFyIGRhdGVGb3JtYXQgPSB0aGlzLl9nZXQoIGluc3QsICJkYXRlRm9ybWF0IiApLAoJCQlkYXRlcyA9IGluc3QubGFzdFZhbCA9IGluc3QuaW5wdXQgPyBpbnN0LmlucHV0LnZhbCgpIDogbnVsbCwKCQkJZGVmYXVsdERhdGUgPSB0aGlzLl9nZXREZWZhdWx0RGF0ZSggaW5zdCApLAoJCQlkYXRlID0gZGVmYXVsdERhdGUsCgkJCXNldHRpbmdzID0gdGhpcy5fZ2V0Rm9ybWF0Q29uZmlnKCBpbnN0ICk7CgoJCXRyeSB7CgkJCWRhdGUgPSB0aGlzLnBhcnNlRGF0ZSggZGF0ZUZvcm1hdCwgZGF0ZXMsIHNldHRpbmdzICkgfHwgZGVmYXVsdERhdGU7CgkJfSBjYXRjaCAoIGV2ZW50ICkgewoJCQlkYXRlcyA9ICggbm9EZWZhdWx0ID8gIiIgOiBkYXRlcyApOwoJCX0KCQlpbnN0LnNlbGVjdGVkRGF5ID0gZGF0ZS5nZXREYXRlKCk7CgkJaW5zdC5kcmF3TW9udGggPSBpbnN0LnNlbGVjdGVkTW9udGggPSBkYXRlLmdldE1vbnRoKCk7CgkJaW5zdC5kcmF3WWVhciA9IGluc3Quc2VsZWN0ZWRZZWFyID0gZGF0ZS5nZXRGdWxsWWVhcigpOwoJCWluc3QuY3VycmVudERheSA9ICggZGF0ZXMgPyBkYXRlLmdldERhdGUoKSA6IDAgKTsKCQlpbnN0LmN1cnJlbnRNb250aCA9ICggZGF0ZXMgPyBkYXRlLmdldE1vbnRoKCkgOiAwICk7CgkJaW5zdC5jdXJyZW50WWVhciA9ICggZGF0ZXMgPyBkYXRlLmdldEZ1bGxZZWFyKCkgOiAwICk7CgkJdGhpcy5fYWRqdXN0SW5zdERhdGUoIGluc3QgKTsKCX0sCgoJLyogUmV0cmlldmUgdGhlIGRlZmF1bHQgZGF0ZSBzaG93biBvbiBvcGVuaW5nLiAqLwoJX2dldERlZmF1bHREYXRlOiBmdW5jdGlvbiggaW5zdCApIHsKCQlyZXR1cm4gdGhpcy5fcmVzdHJpY3RNaW5NYXgoIGluc3QsCgkJCXRoaXMuX2RldGVybWluZURhdGUoIGluc3QsIHRoaXMuX2dldCggaW5zdCwgImRlZmF1bHREYXRlIiApLCBuZXcgRGF0ZSgpICkgKTsKCX0sCgoJLyogQSBkYXRlIG1heSBiZSBzcGVjaWZpZWQgYXMgYW4gZXhhY3QgdmFsdWUgb3IgYSByZWxhdGl2ZSBvbmUuICovCglfZGV0ZXJtaW5lRGF0ZTogZnVuY3Rpb24oIGluc3QsIGRhdGUsIGRlZmF1bHREYXRlICkgewoJCXZhciBvZmZzZXROdW1lcmljID0gZnVuY3Rpb24oIG9mZnNldCApIHsKCQkJCXZhciBkYXRlID0gbmV3IERhdGUoKTsKCQkJCWRhdGUuc2V0RGF0ZSggZGF0ZS5nZXREYXRlKCkgKyBvZmZzZXQgKTsKCQkJCXJldHVybiBkYXRlOwoJCQl9LAoJCQlvZmZzZXRTdHJpbmcgPSBmdW5jdGlvbiggb2Zmc2V0ICkgewoJCQkJdHJ5IHsKCQkJCQlyZXR1cm4gJC5kYXRlcGlja2VyLnBhcnNlRGF0ZSggJC5kYXRlcGlja2VyLl9nZXQoIGluc3QsICJkYXRlRm9ybWF0IiApLAoJCQkJCQlvZmZzZXQsICQuZGF0ZXBpY2tlci5fZ2V0Rm9ybWF0Q29uZmlnKCBpbnN0ICkgKTsKCQkJCX0KCQkJCWNhdGNoICggZSApIHsKCgkJCQkJLy8gSWdub3JlCgkJCQl9CgoJCQkJdmFyIGRhdGUgPSAoIG9mZnNldC50b0xvd2VyQ2FzZSgpLm1hdGNoKCAvXmMvICkgPwoJCQkJCSQuZGF0ZXBpY2tlci5fZ2V0RGF0ZSggaW5zdCApIDogbnVsbCApIHx8IG5ldyBEYXRlKCksCgkJCQkJeWVhciA9IGRhdGUuZ2V0RnVsbFllYXIoKSwKCQkJCQltb250aCA9IGRhdGUuZ2V0TW9udGgoKSwKCQkJCQlkYXkgPSBkYXRlLmdldERhdGUoKSwKCQkJCQlwYXR0ZXJuID0gLyhbK1wtXT9bMC05XSspXHMqKGR8RHx3fFd8bXxNfHl8WSk/L2csCgkJCQkJbWF0Y2hlcyA9IHBhdHRlcm4uZXhlYyggb2Zmc2V0ICk7CgoJCQkJd2hpbGUgKCBtYXRjaGVzICkgewoJCQkJCXN3aXRjaCAoIG1hdGNoZXNbIDIgXSB8fCAiZCIgKSB7CgkJCQkJCWNhc2UgImQiIDogY2FzZSAiRCIgOgoJCQkJCQkJZGF5ICs9IHBhcnNlSW50KCBtYXRjaGVzWyAxIF0sIDEwICk7IGJyZWFrOwoJCQkJCQljYXNlICJ3IiA6IGNhc2UgIlciIDoKCQkJCQkJCWRheSArPSBwYXJzZUludCggbWF0Y2hlc1sgMSBdLCAxMCApICogNzsgYnJlYWs7CgkJCQkJCWNhc2UgIm0iIDogY2FzZSAiTSIgOgoJCQkJCQkJbW9udGggKz0gcGFyc2VJbnQoIG1hdGNoZXNbIDEgXSwgMTAgKTsKCQkJCQkJCWRheSA9IE1hdGgubWluKCBkYXksICQuZGF0ZXBpY2tlci5fZ2V0RGF5c0luTW9udGgoIHllYXIsIG1vbnRoICkgKTsKCQkJCQkJCWJyZWFrOwoJCQkJCQljYXNlICJ5IjogY2FzZSAiWSIgOgoJCQkJCQkJeWVhciArPSBwYXJzZUludCggbWF0Y2hlc1sgMSBdLCAxMCApOwoJCQkJCQkJZGF5ID0gTWF0aC5taW4oIGRheSwgJC5kYXRlcGlja2VyLl9nZXREYXlzSW5Nb250aCggeWVhciwgbW9udGggKSApOwoJCQkJCQkJYnJlYWs7CgkJCQkJfQoJCQkJCW1hdGNoZXMgPSBwYXR0ZXJuLmV4ZWMoIG9mZnNldCApOwoJCQkJfQoJCQkJcmV0dXJuIG5ldyBEYXRlKCB5ZWFyLCBtb250aCwgZGF5ICk7CgkJCX0sCgkJCW5ld0RhdGUgPSAoIGRhdGUgPT0gbnVsbCB8fCBkYXRlID09PSAiIiA/IGRlZmF1bHREYXRlIDogKCB0eXBlb2YgZGF0ZSA9PT0gInN0cmluZyIgPyBvZmZzZXRTdHJpbmcoIGRhdGUgKSA6CgkJCQkoIHR5cGVvZiBkYXRlID09PSAibnVtYmVyIiA/ICggaXNOYU4oIGRhdGUgKSA/IGRlZmF1bHREYXRlIDogb2Zmc2V0TnVtZXJpYyggZGF0ZSApICkgOiBuZXcgRGF0ZSggZGF0ZS5nZXRUaW1lKCkgKSApICkgKTsKCgkJbmV3RGF0ZSA9ICggbmV3RGF0ZSAmJiBuZXdEYXRlLnRvU3RyaW5nKCkgPT09ICJJbnZhbGlkIERhdGUiID8gZGVmYXVsdERhdGUgOiBuZXdEYXRlICk7CgkJaWYgKCBuZXdEYXRlICkgewoJCQluZXdEYXRlLnNldEhvdXJzKCAwICk7CgkJCW5ld0RhdGUuc2V0TWludXRlcyggMCApOwoJCQluZXdEYXRlLnNldFNlY29uZHMoIDAgKTsKCQkJbmV3RGF0ZS5zZXRNaWxsaXNlY29uZHMoIDAgKTsKCQl9CgkJcmV0dXJuIHRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KCBuZXdEYXRlICk7Cgl9LAoKCS8qIEhhbmRsZSBzd2l0Y2ggdG8vZnJvbSBkYXlsaWdodCBzYXZpbmcuCgkgKiBIb3VycyBtYXkgYmUgbm9uLXplcm8gb24gZGF5bGlnaHQgc2F2aW5nIGN1dC1vdmVyOgoJICogPiAxMiB3aGVuIG1pZG5pZ2h0IGNoYW5nZW92ZXIsIGJ1dCB0aGVuIGNhbm5vdCBnZW5lcmF0ZQoJICogbWlkbmlnaHQgZGF0ZXRpbWUsIHNvIGp1bXAgdG8gMUFNLCBvdGhlcndpc2UgcmVzZXQuCgkgKiBAcGFyYW0gIGRhdGUgIChEYXRlKSB0aGUgZGF0ZSB0byBjaGVjawoJICogQHJldHVybiAgKERhdGUpIHRoZSBjb3JyZWN0ZWQgZGF0ZQoJICovCglfZGF5bGlnaHRTYXZpbmdBZGp1c3Q6IGZ1bmN0aW9uKCBkYXRlICkgewoJCWlmICggIWRhdGUgKSB7CgkJCXJldHVybiBudWxsOwoJCX0KCQlkYXRlLnNldEhvdXJzKCBkYXRlLmdldEhvdXJzKCkgPiAxMiA/IGRhdGUuZ2V0SG91cnMoKSArIDIgOiAwICk7CgkJcmV0dXJuIGRhdGU7Cgl9LAoKCS8qIFNldCB0aGUgZGF0ZShzKSBkaXJlY3RseS4gKi8KCV9zZXREYXRlOiBmdW5jdGlvbiggaW5zdCwgZGF0ZSwgbm9DaGFuZ2UgKSB7CgkJdmFyIGNsZWFyID0gIWRhdGUsCgkJCW9yaWdNb250aCA9IGluc3Quc2VsZWN0ZWRNb250aCwKCQkJb3JpZ1llYXIgPSBpbnN0LnNlbGVjdGVkWWVhciwKCQkJbmV3RGF0ZSA9IHRoaXMuX3Jlc3RyaWN0TWluTWF4KCBpbnN0LCB0aGlzLl9kZXRlcm1pbmVEYXRlKCBpbnN0LCBkYXRlLCBuZXcgRGF0ZSgpICkgKTsKCgkJaW5zdC5zZWxlY3RlZERheSA9IGluc3QuY3VycmVudERheSA9IG5ld0RhdGUuZ2V0RGF0ZSgpOwoJCWluc3QuZHJhd01vbnRoID0gaW5zdC5zZWxlY3RlZE1vbnRoID0gaW5zdC5jdXJyZW50TW9udGggPSBuZXdEYXRlLmdldE1vbnRoKCk7CgkJaW5zdC5kcmF3WWVhciA9IGluc3Quc2VsZWN0ZWRZZWFyID0gaW5zdC5jdXJyZW50WWVhciA9IG5ld0RhdGUuZ2V0RnVsbFllYXIoKTsKCQlpZiAoICggb3JpZ01vbnRoICE9PSBpbnN0LnNlbGVjdGVkTW9udGggfHwgb3JpZ1llYXIgIT09IGluc3Quc2VsZWN0ZWRZZWFyICkgJiYgIW5vQ2hhbmdlICkgewoJCQl0aGlzLl9ub3RpZnlDaGFuZ2UoIGluc3QgKTsKCQl9CgkJdGhpcy5fYWRqdXN0SW5zdERhdGUoIGluc3QgKTsKCQlpZiAoIGluc3QuaW5wdXQgKSB7CgkJCWluc3QuaW5wdXQudmFsKCBjbGVhciA/ICIiIDogdGhpcy5fZm9ybWF0RGF0ZSggaW5zdCApICk7CgkJfQoJfSwKCgkvKiBSZXRyaWV2ZSB0aGUgZGF0ZShzKSBkaXJlY3RseS4gKi8KCV9nZXREYXRlOiBmdW5jdGlvbiggaW5zdCApIHsKCQl2YXIgc3RhcnREYXRlID0gKCAhaW5zdC5jdXJyZW50WWVhciB8fCAoIGluc3QuaW5wdXQgJiYgaW5zdC5pbnB1dC52YWwoKSA9PT0gIiIgKSA/IG51bGwgOgoJCQl0aGlzLl9kYXlsaWdodFNhdmluZ0FkanVzdCggbmV3IERhdGUoCgkJCWluc3QuY3VycmVudFllYXIsIGluc3QuY3VycmVudE1vbnRoLCBpbnN0LmN1cnJlbnREYXkgKSApICk7CgkJCXJldHVybiBzdGFydERhdGU7Cgl9LAoKCS8qIEF0dGFjaCB0aGUgb254eHggaGFuZGxlcnMuICBUaGVzZSBhcmUgZGVjbGFyZWQgc3RhdGljYWxseSBzbwoJICogdGhleSB3b3JrIHdpdGggc3RhdGljIGNvZGUgdHJhbnNmb3JtZXJzIGxpa2UgQ2FqYS4KCSAqLwoJX2F0dGFjaEhhbmRsZXJzOiBmdW5jdGlvbiggaW5zdCApIHsKCQl2YXIgc3RlcE1vbnRocyA9IHRoaXMuX2dldCggaW5zdCwgInN0ZXBNb250aHMiICksCgkJCWlkID0gIiMiICsgaW5zdC5pZC5yZXBsYWNlKCAvXFxcXC9nLCAiXFwiICk7CgkJaW5zdC5kcERpdi5maW5kKCAiW2RhdGEtaGFuZGxlcl0iICkubWFwKCBmdW5jdGlvbigpIHsKCQkJdmFyIGhhbmRsZXIgPSB7CgkJCQlwcmV2OiBmdW5jdGlvbigpIHsKCQkJCQkkLmRhdGVwaWNrZXIuX2FkanVzdERhdGUoIGlkLCAtc3RlcE1vbnRocywgIk0iICk7CgkJCQl9LAoJCQkJbmV4dDogZnVuY3Rpb24oKSB7CgkJCQkJJC5kYXRlcGlja2VyLl9hZGp1c3REYXRlKCBpZCwgK3N0ZXBNb250aHMsICJNIiApOwoJCQkJfSwKCQkJCWhpZGU6IGZ1bmN0aW9uKCkgewoJCQkJCSQuZGF0ZXBpY2tlci5faGlkZURhdGVwaWNrZXIoKTsKCQkJCX0sCgkJCQl0b2RheTogZnVuY3Rpb24oKSB7CgkJCQkJJC5kYXRlcGlja2VyLl9nb3RvVG9kYXkoIGlkICk7CgkJCQl9LAoJCQkJc2VsZWN0RGF5OiBmdW5jdGlvbigpIHsKCQkJCQkkLmRhdGVwaWNrZXIuX3NlbGVjdERheSggaWQsICt0aGlzLmdldEF0dHJpYnV0ZSggImRhdGEtbW9udGgiICksICt0aGlzLmdldEF0dHJpYnV0ZSggImRhdGEteWVhciIgKSwgdGhpcyApOwoJCQkJCXJldHVybiBmYWxzZTsKCQkJCX0sCgkJCQlzZWxlY3RNb250aDogZnVuY3Rpb24oKSB7CgkJCQkJJC5kYXRlcGlja2VyLl9zZWxlY3RNb250aFllYXIoIGlkLCB0aGlzLCAiTSIgKTsKCQkJCQlyZXR1cm4gZmFsc2U7CgkJCQl9LAoJCQkJc2VsZWN0WWVhcjogZnVuY3Rpb24oKSB7CgkJCQkJJC5kYXRlcGlja2VyLl9zZWxlY3RNb250aFllYXIoIGlkLCB0aGlzLCAiWSIgKTsKCQkJCQlyZXR1cm4gZmFsc2U7CgkJCQl9CgkJCX07CgkJCSQoIHRoaXMgKS5vbiggdGhpcy5nZXRBdHRyaWJ1dGUoICJkYXRhLWV2ZW50IiApLCBoYW5kbGVyWyB0aGlzLmdldEF0dHJpYnV0ZSggImRhdGEtaGFuZGxlciIgKSBdICk7CgkJfSApOwoJfSwKCgkvKiBHZW5lcmF0ZSB0aGUgSFRNTCBmb3IgdGhlIGN1cnJlbnQgc3RhdGUgb2YgdGhlIGRhdGUgcGlja2VyLiAqLwoJX2dlbmVyYXRlSFRNTDogZnVuY3Rpb24oIGluc3QgKSB7CgkJdmFyIG1heERyYXcsIHByZXZUZXh0LCBwcmV2LCBuZXh0VGV4dCwgbmV4dCwgY3VycmVudFRleHQsIGdvdG9EYXRlLAoJCQljb250cm9scywgYnV0dG9uUGFuZWwsIGZpcnN0RGF5LCBzaG93V2VlaywgZGF5TmFtZXMsIGRheU5hbWVzTWluLAoJCQltb250aE5hbWVzLCBtb250aE5hbWVzU2hvcnQsIGJlZm9yZVNob3dEYXksIHNob3dPdGhlck1vbnRocywKCQkJc2VsZWN0T3RoZXJNb250aHMsIGRlZmF1bHREYXRlLCBodG1sLCBkb3csIHJvdywgZ3JvdXAsIGNvbCwgc2VsZWN0ZWREYXRlLAoJCQljb3JuZXJDbGFzcywgY2FsZW5kZXIsIHRoZWFkLCBkYXksIGRheXNJbk1vbnRoLCBsZWFkRGF5cywgY3VyUm93cywgbnVtUm93cywKCQkJcHJpbnREYXRlLCBkUm93LCB0Ym9keSwgZGF5U2V0dGluZ3MsIG90aGVyTW9udGgsIHVuc2VsZWN0YWJsZSwKCQkJdGVtcERhdGUgPSBuZXcgRGF0ZSgpLAoJCQl0b2RheSA9IHRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KAoJCQkJbmV3IERhdGUoIHRlbXBEYXRlLmdldEZ1bGxZZWFyKCksIHRlbXBEYXRlLmdldE1vbnRoKCksIHRlbXBEYXRlLmdldERhdGUoKSApICksIC8vIGNsZWFyIHRpbWUKCQkJaXNSVEwgPSB0aGlzLl9nZXQoIGluc3QsICJpc1JUTCIgKSwKCQkJc2hvd0J1dHRvblBhbmVsID0gdGhpcy5fZ2V0KCBpbnN0LCAic2hvd0J1dHRvblBhbmVsIiApLAoJCQloaWRlSWZOb1ByZXZOZXh0ID0gdGhpcy5fZ2V0KCBpbnN0LCAiaGlkZUlmTm9QcmV2TmV4dCIgKSwKCQkJbmF2aWdhdGlvbkFzRGF0ZUZvcm1hdCA9IHRoaXMuX2dldCggaW5zdCwgIm5hdmlnYXRpb25Bc0RhdGVGb3JtYXQiICksCgkJCW51bU1vbnRocyA9IHRoaXMuX2dldE51bWJlck9mTW9udGhzKCBpbnN0ICksCgkJCXNob3dDdXJyZW50QXRQb3MgPSB0aGlzLl9nZXQoIGluc3QsICJzaG93Q3VycmVudEF0UG9zIiApLAoJCQlzdGVwTW9udGhzID0gdGhpcy5fZ2V0KCBpbnN0LCAic3RlcE1vbnRocyIgKSwKCQkJaXNNdWx0aU1vbnRoID0gKCBudW1Nb250aHNbIDAgXSAhPT0gMSB8fCBudW1Nb250aHNbIDEgXSAhPT0gMSApLAoJCQljdXJyZW50RGF0ZSA9IHRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KCAoICFpbnN0LmN1cnJlbnREYXkgPyBuZXcgRGF0ZSggOTk5OSwgOSwgOSApIDoKCQkJCW5ldyBEYXRlKCBpbnN0LmN1cnJlbnRZZWFyLCBpbnN0LmN1cnJlbnRNb250aCwgaW5zdC5jdXJyZW50RGF5ICkgKSApLAoJCQltaW5EYXRlID0gdGhpcy5fZ2V0TWluTWF4RGF0ZSggaW5zdCwgIm1pbiIgKSwKCQkJbWF4RGF0ZSA9IHRoaXMuX2dldE1pbk1heERhdGUoIGluc3QsICJtYXgiICksCgkJCWRyYXdNb250aCA9IGluc3QuZHJhd01vbnRoIC0gc2hvd0N1cnJlbnRBdFBvcywKCQkJZHJhd1llYXIgPSBpbnN0LmRyYXdZZWFyOwoKCQlpZiAoIGRyYXdNb250aCA8IDAgKSB7CgkJCWRyYXdNb250aCArPSAxMjsKCQkJZHJhd1llYXItLTsKCQl9CgkJaWYgKCBtYXhEYXRlICkgewoJCQltYXhEcmF3ID0gdGhpcy5fZGF5bGlnaHRTYXZpbmdBZGp1c3QoIG5ldyBEYXRlKCBtYXhEYXRlLmdldEZ1bGxZZWFyKCksCgkJCQltYXhEYXRlLmdldE1vbnRoKCkgLSAoIG51bU1vbnRoc1sgMCBdICogbnVtTW9udGhzWyAxIF0gKSArIDEsIG1heERhdGUuZ2V0RGF0ZSgpICkgKTsKCQkJbWF4RHJhdyA9ICggbWluRGF0ZSAmJiBtYXhEcmF3IDwgbWluRGF0ZSA/IG1pbkRhdGUgOiBtYXhEcmF3ICk7CgkJCXdoaWxlICggdGhpcy5fZGF5bGlnaHRTYXZpbmdBZGp1c3QoIG5ldyBEYXRlKCBkcmF3WWVhciwgZHJhd01vbnRoLCAxICkgKSA+IG1heERyYXcgKSB7CgkJCQlkcmF3TW9udGgtLTsKCQkJCWlmICggZHJhd01vbnRoIDwgMCApIHsKCQkJCQlkcmF3TW9udGggPSAxMTsKCQkJCQlkcmF3WWVhci0tOwoJCQkJfQoJCQl9CgkJfQoJCWluc3QuZHJhd01vbnRoID0gZHJhd01vbnRoOwoJCWluc3QuZHJhd1llYXIgPSBkcmF3WWVhcjsKCgkJcHJldlRleHQgPSB0aGlzLl9nZXQoIGluc3QsICJwcmV2VGV4dCIgKTsKCQlwcmV2VGV4dCA9ICggIW5hdmlnYXRpb25Bc0RhdGVGb3JtYXQgPyBwcmV2VGV4dCA6IHRoaXMuZm9ybWF0RGF0ZSggcHJldlRleHQsCgkJCXRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KCBuZXcgRGF0ZSggZHJhd1llYXIsIGRyYXdNb250aCAtIHN0ZXBNb250aHMsIDEgKSApLAoJCQl0aGlzLl9nZXRGb3JtYXRDb25maWcoIGluc3QgKSApICk7CgoJCXByZXYgPSAoIHRoaXMuX2NhbkFkanVzdE1vbnRoKCBpbnN0LCAtMSwgZHJhd1llYXIsIGRyYXdNb250aCApID8KCQkJIjxhIGNsYXNzPSd1aS1kYXRlcGlja2VyLXByZXYgdWktY29ybmVyLWFsbCcgZGF0YS1oYW5kbGVyPSdwcmV2JyBkYXRhLWV2ZW50PSdjbGljayciICsKCQkJIiB0aXRsZT0nIiArIHByZXZUZXh0ICsgIic+PHNwYW4gY2xhc3M9J3VpLWljb24gdWktaWNvbi1jaXJjbGUtdHJpYW5nbGUtIiArICggaXNSVEwgPyAiZSIgOiAidyIgKSArICInPiIgKyBwcmV2VGV4dCArICI8L3NwYW4+PC9hPiIgOgoJCQkoIGhpZGVJZk5vUHJldk5leHQgPyAiIiA6ICI8YSBjbGFzcz0ndWktZGF0ZXBpY2tlci1wcmV2IHVpLWNvcm5lci1hbGwgdWktc3RhdGUtZGlzYWJsZWQnIHRpdGxlPSciICsgcHJldlRleHQgKyAiJz48c3BhbiBjbGFzcz0ndWktaWNvbiB1aS1pY29uLWNpcmNsZS10cmlhbmdsZS0iICsgKCBpc1JUTCA/ICJlIiA6ICJ3IiApICsgIic+IiArIHByZXZUZXh0ICsgIjwvc3Bhbj48L2E+IiApICk7CgoJCW5leHRUZXh0ID0gdGhpcy5fZ2V0KCBpbnN0LCAibmV4dFRleHQiICk7CgkJbmV4dFRleHQgPSAoICFuYXZpZ2F0aW9uQXNEYXRlRm9ybWF0ID8gbmV4dFRleHQgOiB0aGlzLmZvcm1hdERhdGUoIG5leHRUZXh0LAoJCQl0aGlzLl9kYXlsaWdodFNhdmluZ0FkanVzdCggbmV3IERhdGUoIGRyYXdZZWFyLCBkcmF3TW9udGggKyBzdGVwTW9udGhzLCAxICkgKSwKCQkJdGhpcy5fZ2V0Rm9ybWF0Q29uZmlnKCBpbnN0ICkgKSApOwoKCQluZXh0ID0gKCB0aGlzLl9jYW5BZGp1c3RNb250aCggaW5zdCwgKzEsIGRyYXdZZWFyLCBkcmF3TW9udGggKSA/CgkJCSI8YSBjbGFzcz0ndWktZGF0ZXBpY2tlci1uZXh0IHVpLWNvcm5lci1hbGwnIGRhdGEtaGFuZGxlcj0nbmV4dCcgZGF0YS1ldmVudD0nY2xpY2snIiArCgkJCSIgdGl0bGU9JyIgKyBuZXh0VGV4dCArICInPjxzcGFuIGNsYXNzPSd1aS1pY29uIHVpLWljb24tY2lyY2xlLXRyaWFuZ2xlLSIgKyAoIGlzUlRMID8gInciIDogImUiICkgKyAiJz4iICsgbmV4dFRleHQgKyAiPC9zcGFuPjwvYT4iIDoKCQkJKCBoaWRlSWZOb1ByZXZOZXh0ID8gIiIgOiAiPGEgY2xhc3M9J3VpLWRhdGVwaWNrZXItbmV4dCB1aS1jb3JuZXItYWxsIHVpLXN0YXRlLWRpc2FibGVkJyB0aXRsZT0nIiArIG5leHRUZXh0ICsgIic+PHNwYW4gY2xhc3M9J3VpLWljb24gdWktaWNvbi1jaXJjbGUtdHJpYW5nbGUtIiArICggaXNSVEwgPyAidyIgOiAiZSIgKSArICInPiIgKyBuZXh0VGV4dCArICI8L3NwYW4+PC9hPiIgKSApOwoKCQljdXJyZW50VGV4dCA9IHRoaXMuX2dldCggaW5zdCwgImN1cnJlbnRUZXh0IiApOwoJCWdvdG9EYXRlID0gKCB0aGlzLl9nZXQoIGluc3QsICJnb3RvQ3VycmVudCIgKSAmJiBpbnN0LmN1cnJlbnREYXkgPyBjdXJyZW50RGF0ZSA6IHRvZGF5ICk7CgkJY3VycmVudFRleHQgPSAoICFuYXZpZ2F0aW9uQXNEYXRlRm9ybWF0ID8gY3VycmVudFRleHQgOgoJCQl0aGlzLmZvcm1hdERhdGUoIGN1cnJlbnRUZXh0LCBnb3RvRGF0ZSwgdGhpcy5fZ2V0Rm9ybWF0Q29uZmlnKCBpbnN0ICkgKSApOwoKCQljb250cm9scyA9ICggIWluc3QuaW5saW5lID8gIjxidXR0b24gdHlwZT0nYnV0dG9uJyBjbGFzcz0ndWktZGF0ZXBpY2tlci1jbG9zZSB1aS1zdGF0ZS1kZWZhdWx0IHVpLXByaW9yaXR5LXByaW1hcnkgdWktY29ybmVyLWFsbCcgZGF0YS1oYW5kbGVyPSdoaWRlJyBkYXRhLWV2ZW50PSdjbGljayc+IiArCgkJCXRoaXMuX2dldCggaW5zdCwgImNsb3NlVGV4dCIgKSArICI8L2J1dHRvbj4iIDogIiIgKTsKCgkJYnV0dG9uUGFuZWwgPSAoIHNob3dCdXR0b25QYW5lbCApID8gIjxkaXYgY2xhc3M9J3VpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSB1aS13aWRnZXQtY29udGVudCc+IiArICggaXNSVEwgPyBjb250cm9scyA6ICIiICkgKwoJCQkoIHRoaXMuX2lzSW5SYW5nZSggaW5zdCwgZ290b0RhdGUgKSA/ICI8YnV0dG9uIHR5cGU9J2J1dHRvbicgY2xhc3M9J3VpLWRhdGVwaWNrZXItY3VycmVudCB1aS1zdGF0ZS1kZWZhdWx0IHVpLXByaW9yaXR5LXNlY29uZGFyeSB1aS1jb3JuZXItYWxsJyBkYXRhLWhhbmRsZXI9J3RvZGF5JyBkYXRhLWV2ZW50PSdjbGljayciICsKCQkJIj4iICsgY3VycmVudFRleHQgKyAiPC9idXR0b24+IiA6ICIiICkgKyAoIGlzUlRMID8gIiIgOiBjb250cm9scyApICsgIjwvZGl2PiIgOiAiIjsKCgkJZmlyc3REYXkgPSBwYXJzZUludCggdGhpcy5fZ2V0KCBpbnN0LCAiZmlyc3REYXkiICksIDEwICk7CgkJZmlyc3REYXkgPSAoIGlzTmFOKCBmaXJzdERheSApID8gMCA6IGZpcnN0RGF5ICk7CgoJCXNob3dXZWVrID0gdGhpcy5fZ2V0KCBpbnN0LCAic2hvd1dlZWsiICk7CgkJZGF5TmFtZXMgPSB0aGlzLl9nZXQoIGluc3QsICJkYXlOYW1lcyIgKTsKCQlkYXlOYW1lc01pbiA9IHRoaXMuX2dldCggaW5zdCwgImRheU5hbWVzTWluIiApOwoJCW1vbnRoTmFtZXMgPSB0aGlzLl9nZXQoIGluc3QsICJtb250aE5hbWVzIiApOwoJCW1vbnRoTmFtZXNTaG9ydCA9IHRoaXMuX2dldCggaW5zdCwgIm1vbnRoTmFtZXNTaG9ydCIgKTsKCQliZWZvcmVTaG93RGF5ID0gdGhpcy5fZ2V0KCBpbnN0LCAiYmVmb3JlU2hvd0RheSIgKTsKCQlzaG93T3RoZXJNb250aHMgPSB0aGlzLl9nZXQoIGluc3QsICJzaG93T3RoZXJNb250aHMiICk7CgkJc2VsZWN0T3RoZXJNb250aHMgPSB0aGlzLl9nZXQoIGluc3QsICJzZWxlY3RPdGhlck1vbnRocyIgKTsKCQlkZWZhdWx0RGF0ZSA9IHRoaXMuX2dldERlZmF1bHREYXRlKCBpbnN0ICk7CgkJaHRtbCA9ICIiOwoKCQlmb3IgKCByb3cgPSAwOyByb3cgPCBudW1Nb250aHNbIDAgXTsgcm93KysgKSB7CgkJCWdyb3VwID0gIiI7CgkJCXRoaXMubWF4Um93cyA9IDQ7CgkJCWZvciAoIGNvbCA9IDA7IGNvbCA8IG51bU1vbnRoc1sgMSBdOyBjb2wrKyApIHsKCQkJCXNlbGVjdGVkRGF0ZSA9IHRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KCBuZXcgRGF0ZSggZHJhd1llYXIsIGRyYXdNb250aCwgaW5zdC5zZWxlY3RlZERheSApICk7CgkJCQljb3JuZXJDbGFzcyA9ICIgdWktY29ybmVyLWFsbCI7CgkJCQljYWxlbmRlciA9ICIiOwoJCQkJaWYgKCBpc011bHRpTW9udGggKSB7CgkJCQkJY2FsZW5kZXIgKz0gIjxkaXYgY2xhc3M9J3VpLWRhdGVwaWNrZXItZ3JvdXAiOwoJCQkJCWlmICggbnVtTW9udGhzWyAxIF0gPiAxICkgewoJCQkJCQlzd2l0Y2ggKCBjb2wgKSB7CgkJCQkJCQljYXNlIDA6IGNhbGVuZGVyICs9ICIgdWktZGF0ZXBpY2tlci1ncm91cC1maXJzdCI7CgkJCQkJCQkJY29ybmVyQ2xhc3MgPSAiIHVpLWNvcm5lci0iICsgKCBpc1JUTCA/ICJyaWdodCIgOiAibGVmdCIgKTsgYnJlYWs7CgkJCQkJCQljYXNlIG51bU1vbnRoc1sgMSBdIC0gMTogY2FsZW5kZXIgKz0gIiB1aS1kYXRlcGlja2VyLWdyb3VwLWxhc3QiOwoJCQkJCQkJCWNvcm5lckNsYXNzID0gIiB1aS1jb3JuZXItIiArICggaXNSVEwgPyAibGVmdCIgOiAicmlnaHQiICk7IGJyZWFrOwoJCQkJCQkJZGVmYXVsdDogY2FsZW5kZXIgKz0gIiB1aS1kYXRlcGlja2VyLWdyb3VwLW1pZGRsZSI7IGNvcm5lckNsYXNzID0gIiI7IGJyZWFrOwoJCQkJCQl9CgkJCQkJfQoJCQkJCWNhbGVuZGVyICs9ICInPiI7CgkJCQl9CgkJCQljYWxlbmRlciArPSAiPGRpdiBjbGFzcz0ndWktZGF0ZXBpY2tlci1oZWFkZXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXgiICsgY29ybmVyQ2xhc3MgKyAiJz4iICsKCQkJCQkoIC9hbGx8bGVmdC8udGVzdCggY29ybmVyQ2xhc3MgKSAmJiByb3cgPT09IDAgPyAoIGlzUlRMID8gbmV4dCA6IHByZXYgKSA6ICIiICkgKwoJCQkJCSggL2FsbHxyaWdodC8udGVzdCggY29ybmVyQ2xhc3MgKSAmJiByb3cgPT09IDAgPyAoIGlzUlRMID8gcHJldiA6IG5leHQgKSA6ICIiICkgKwoJCQkJCXRoaXMuX2dlbmVyYXRlTW9udGhZZWFySGVhZGVyKCBpbnN0LCBkcmF3TW9udGgsIGRyYXdZZWFyLCBtaW5EYXRlLCBtYXhEYXRlLAoJCQkJCXJvdyA+IDAgfHwgY29sID4gMCwgbW9udGhOYW1lcywgbW9udGhOYW1lc1Nob3J0ICkgKyAvLyBkcmF3IG1vbnRoIGhlYWRlcnMKCQkJCQkiPC9kaXY+PHRhYmxlIGNsYXNzPSd1aS1kYXRlcGlja2VyLWNhbGVuZGFyJz48dGhlYWQ+IiArCgkJCQkJIjx0cj4iOwoJCQkJdGhlYWQgPSAoIHNob3dXZWVrID8gIjx0aCBjbGFzcz0ndWktZGF0ZXBpY2tlci13ZWVrLWNvbCc+IiArIHRoaXMuX2dldCggaW5zdCwgIndlZWtIZWFkZXIiICkgKyAiPC90aD4iIDogIiIgKTsKCQkJCWZvciAoIGRvdyA9IDA7IGRvdyA8IDc7IGRvdysrICkgeyAvLyBkYXlzIG9mIHRoZSB3ZWVrCgkJCQkJZGF5ID0gKCBkb3cgKyBmaXJzdERheSApICUgNzsKCQkJCQl0aGVhZCArPSAiPHRoIHNjb3BlPSdjb2wnIiArICggKCBkb3cgKyBmaXJzdERheSArIDYgKSAlIDcgPj0gNSA/ICIgY2xhc3M9J3VpLWRhdGVwaWNrZXItd2Vlay1lbmQnIiA6ICIiICkgKyAiPiIgKwoJCQkJCQkiPHNwYW4gdGl0bGU9JyIgKyBkYXlOYW1lc1sgZGF5IF0gKyAiJz4iICsgZGF5TmFtZXNNaW5bIGRheSBdICsgIjwvc3Bhbj48L3RoPiI7CgkJCQl9CgkJCQljYWxlbmRlciArPSB0aGVhZCArICI8L3RyPjwvdGhlYWQ+PHRib2R5PiI7CgkJCQlkYXlzSW5Nb250aCA9IHRoaXMuX2dldERheXNJbk1vbnRoKCBkcmF3WWVhciwgZHJhd01vbnRoICk7CgkJCQlpZiAoIGRyYXdZZWFyID09PSBpbnN0LnNlbGVjdGVkWWVhciAmJiBkcmF3TW9udGggPT09IGluc3Quc2VsZWN0ZWRNb250aCApIHsKCQkJCQlpbnN0LnNlbGVjdGVkRGF5ID0gTWF0aC5taW4oIGluc3Quc2VsZWN0ZWREYXksIGRheXNJbk1vbnRoICk7CgkJCQl9CgkJCQlsZWFkRGF5cyA9ICggdGhpcy5fZ2V0Rmlyc3REYXlPZk1vbnRoKCBkcmF3WWVhciwgZHJhd01vbnRoICkgLSBmaXJzdERheSArIDcgKSAlIDc7CgkJCQljdXJSb3dzID0gTWF0aC5jZWlsKCAoIGxlYWREYXlzICsgZGF5c0luTW9udGggKSAvIDcgKTsgLy8gY2FsY3VsYXRlIHRoZSBudW1iZXIgb2Ygcm93cyB0byBnZW5lcmF0ZQoJCQkJbnVtUm93cyA9ICggaXNNdWx0aU1vbnRoID8gdGhpcy5tYXhSb3dzID4gY3VyUm93cyA/IHRoaXMubWF4Um93cyA6IGN1clJvd3MgOiBjdXJSb3dzICk7IC8vSWYgbXVsdGlwbGUgbW9udGhzLCB1c2UgdGhlIGhpZ2hlciBudW1iZXIgb2Ygcm93cyAoc2VlICM3MDQzKQoJCQkJdGhpcy5tYXhSb3dzID0gbnVtUm93czsKCQkJCXByaW50RGF0ZSA9IHRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KCBuZXcgRGF0ZSggZHJhd1llYXIsIGRyYXdNb250aCwgMSAtIGxlYWREYXlzICkgKTsKCQkJCWZvciAoIGRSb3cgPSAwOyBkUm93IDwgbnVtUm93czsgZFJvdysrICkgeyAvLyBjcmVhdGUgZGF0ZSBwaWNrZXIgcm93cwoJCQkJCWNhbGVuZGVyICs9ICI8dHI+IjsKCQkJCQl0Ym9keSA9ICggIXNob3dXZWVrID8gIiIgOiAiPHRkIGNsYXNzPSd1aS1kYXRlcGlja2VyLXdlZWstY29sJz4iICsKCQkJCQkJdGhpcy5fZ2V0KCBpbnN0LCAiY2FsY3VsYXRlV2VlayIgKSggcHJpbnREYXRlICkgKyAiPC90ZD4iICk7CgkJCQkJZm9yICggZG93ID0gMDsgZG93IDwgNzsgZG93KysgKSB7IC8vIGNyZWF0ZSBkYXRlIHBpY2tlciBkYXlzCgkJCQkJCWRheVNldHRpbmdzID0gKCBiZWZvcmVTaG93RGF5ID8KCQkJCQkJCWJlZm9yZVNob3dEYXkuYXBwbHkoICggaW5zdC5pbnB1dCA/IGluc3QuaW5wdXRbIDAgXSA6IG51bGwgKSwgWyBwcmludERhdGUgXSApIDogWyB0cnVlLCAiIiBdICk7CgkJCQkJCW90aGVyTW9udGggPSAoIHByaW50RGF0ZS5nZXRNb250aCgpICE9PSBkcmF3TW9udGggKTsKCQkJCQkJdW5zZWxlY3RhYmxlID0gKCBvdGhlck1vbnRoICYmICFzZWxlY3RPdGhlck1vbnRocyApIHx8ICFkYXlTZXR0aW5nc1sgMCBdIHx8CgkJCQkJCQkoIG1pbkRhdGUgJiYgcHJpbnREYXRlIDwgbWluRGF0ZSApIHx8ICggbWF4RGF0ZSAmJiBwcmludERhdGUgPiBtYXhEYXRlICk7CgkJCQkJCXRib2R5ICs9ICI8dGQgY2xhc3M9JyIgKwoJCQkJCQkJKCAoIGRvdyArIGZpcnN0RGF5ICsgNiApICUgNyA+PSA1ID8gIiB1aS1kYXRlcGlja2VyLXdlZWstZW5kIiA6ICIiICkgKyAvLyBoaWdobGlnaHQgd2Vla2VuZHMKCQkJCQkJCSggb3RoZXJNb250aCA/ICIgdWktZGF0ZXBpY2tlci1vdGhlci1tb250aCIgOiAiIiApICsgLy8gaGlnaGxpZ2h0IGRheXMgZnJvbSBvdGhlciBtb250aHMKCQkJCQkJCSggKCBwcmludERhdGUuZ2V0VGltZSgpID09PSBzZWxlY3RlZERhdGUuZ2V0VGltZSgpICYmIGRyYXdNb250aCA9PT0gaW5zdC5zZWxlY3RlZE1vbnRoICYmIGluc3QuX2tleUV2ZW50ICkgfHwgLy8gdXNlciBwcmVzc2VkIGtleQoJCQkJCQkJKCBkZWZhdWx0RGF0ZS5nZXRUaW1lKCkgPT09IHByaW50RGF0ZS5nZXRUaW1lKCkgJiYgZGVmYXVsdERhdGUuZ2V0VGltZSgpID09PSBzZWxlY3RlZERhdGUuZ2V0VGltZSgpICkgPwoKCQkJCQkJCS8vIG9yIGRlZmF1bHREYXRlIGlzIGN1cnJlbnQgcHJpbnRlZERhdGUgYW5kIGRlZmF1bHREYXRlIGlzIHNlbGVjdGVkRGF0ZQoJCQkJCQkJIiAiICsgdGhpcy5fZGF5T3ZlckNsYXNzIDogIiIgKSArIC8vIGhpZ2hsaWdodCBzZWxlY3RlZCBkYXkKCQkJCQkJCSggdW5zZWxlY3RhYmxlID8gIiAiICsgdGhpcy5fdW5zZWxlY3RhYmxlQ2xhc3MgKyAiIHVpLXN0YXRlLWRpc2FibGVkIiA6ICIiICkgKyAgLy8gaGlnaGxpZ2h0IHVuc2VsZWN0YWJsZSBkYXlzCgkJCQkJCQkoIG90aGVyTW9udGggJiYgIXNob3dPdGhlck1vbnRocyA/ICIiIDogIiAiICsgZGF5U2V0dGluZ3NbIDEgXSArIC8vIGhpZ2hsaWdodCBjdXN0b20gZGF0ZXMKCQkJCQkJCSggcHJpbnREYXRlLmdldFRpbWUoKSA9PT0gY3VycmVudERhdGUuZ2V0VGltZSgpID8gIiAiICsgdGhpcy5fY3VycmVudENsYXNzIDogIiIgKSArIC8vIGhpZ2hsaWdodCBzZWxlY3RlZCBkYXkKCQkJCQkJCSggcHJpbnREYXRlLmdldFRpbWUoKSA9PT0gdG9kYXkuZ2V0VGltZSgpID8gIiB1aS1kYXRlcGlja2VyLXRvZGF5IiA6ICIiICkgKSArICInIiArIC8vIGhpZ2hsaWdodCB0b2RheSAoaWYgZGlmZmVyZW50KQoJCQkJCQkJKCAoICFvdGhlck1vbnRoIHx8IHNob3dPdGhlck1vbnRocyApICYmIGRheVNldHRpbmdzWyAyIF0gPyAiIHRpdGxlPSciICsgZGF5U2V0dGluZ3NbIDIgXS5yZXBsYWNlKCAvJy9nLCAiJiMzOTsiICkgKyAiJyIgOiAiIiApICsgLy8gY2VsbCB0aXRsZQoJCQkJCQkJKCB1bnNlbGVjdGFibGUgPyAiIiA6ICIgZGF0YS1oYW5kbGVyPSdzZWxlY3REYXknIGRhdGEtZXZlbnQ9J2NsaWNrJyBkYXRhLW1vbnRoPSciICsgcHJpbnREYXRlLmdldE1vbnRoKCkgKyAiJyBkYXRhLXllYXI9JyIgKyBwcmludERhdGUuZ2V0RnVsbFllYXIoKSArICInIiApICsgIj4iICsgLy8gYWN0aW9ucwoJCQkJCQkJKCBvdGhlck1vbnRoICYmICFzaG93T3RoZXJNb250aHMgPyAiJiN4YTA7IiA6IC8vIGRpc3BsYXkgZm9yIG90aGVyIG1vbnRocwoJCQkJCQkJKCB1bnNlbGVjdGFibGUgPyAiPHNwYW4gY2xhc3M9J3VpLXN0YXRlLWRlZmF1bHQnPiIgKyBwcmludERhdGUuZ2V0RGF0ZSgpICsgIjwvc3Bhbj4iIDogIjxhIGNsYXNzPSd1aS1zdGF0ZS1kZWZhdWx0IiArCgkJCQkJCQkoIHByaW50RGF0ZS5nZXRUaW1lKCkgPT09IHRvZGF5LmdldFRpbWUoKSA/ICIgdWktc3RhdGUtaGlnaGxpZ2h0IiA6ICIiICkgKwoJCQkJCQkJKCBwcmludERhdGUuZ2V0VGltZSgpID09PSBjdXJyZW50RGF0ZS5nZXRUaW1lKCkgPyAiIHVpLXN0YXRlLWFjdGl2ZSIgOiAiIiApICsgLy8gaGlnaGxpZ2h0IHNlbGVjdGVkIGRheQoJCQkJCQkJKCBvdGhlck1vbnRoID8gIiB1aS1wcmlvcml0eS1zZWNvbmRhcnkiIDogIiIgKSArIC8vIGRpc3Rpbmd1aXNoIGRhdGVzIGZyb20gb3RoZXIgbW9udGhzCgkJCQkJCQkiJyBocmVmPScjJz4iICsgcHJpbnREYXRlLmdldERhdGUoKSArICI8L2E+IiApICkgKyAiPC90ZD4iOyAvLyBkaXNwbGF5IHNlbGVjdGFibGUgZGF0ZQoJCQkJCQlwcmludERhdGUuc2V0RGF0ZSggcHJpbnREYXRlLmdldERhdGUoKSArIDEgKTsKCQkJCQkJcHJpbnREYXRlID0gdGhpcy5fZGF5bGlnaHRTYXZpbmdBZGp1c3QoIHByaW50RGF0ZSApOwoJCQkJCX0KCQkJCQljYWxlbmRlciArPSB0Ym9keSArICI8L3RyPiI7CgkJCQl9CgkJCQlkcmF3TW9udGgrKzsKCQkJCWlmICggZHJhd01vbnRoID4gMTEgKSB7CgkJCQkJZHJhd01vbnRoID0gMDsKCQkJCQlkcmF3WWVhcisrOwoJCQkJfQoJCQkJY2FsZW5kZXIgKz0gIjwvdGJvZHk+PC90YWJsZT4iICsgKCBpc011bHRpTW9udGggPyAiPC9kaXY+IiArCgkJCQkJCQkoICggbnVtTW9udGhzWyAwIF0gPiAwICYmIGNvbCA9PT0gbnVtTW9udGhzWyAxIF0gLSAxICkgPyAiPGRpdiBjbGFzcz0ndWktZGF0ZXBpY2tlci1yb3ctYnJlYWsnPjwvZGl2PiIgOiAiIiApIDogIiIgKTsKCQkJCWdyb3VwICs9IGNhbGVuZGVyOwoJCQl9CgkJCWh0bWwgKz0gZ3JvdXA7CgkJfQoJCWh0bWwgKz0gYnV0dG9uUGFuZWw7CgkJaW5zdC5fa2V5RXZlbnQgPSBmYWxzZTsKCQlyZXR1cm4gaHRtbDsKCX0sCgoJLyogR2VuZXJhdGUgdGhlIG1vbnRoIGFuZCB5ZWFyIGhlYWRlci4gKi8KCV9nZW5lcmF0ZU1vbnRoWWVhckhlYWRlcjogZnVuY3Rpb24oIGluc3QsIGRyYXdNb250aCwgZHJhd1llYXIsIG1pbkRhdGUsIG1heERhdGUsCgkJCXNlY29uZGFyeSwgbW9udGhOYW1lcywgbW9udGhOYW1lc1Nob3J0ICkgewoKCQl2YXIgaW5NaW5ZZWFyLCBpbk1heFllYXIsIG1vbnRoLCB5ZWFycywgdGhpc1llYXIsIGRldGVybWluZVllYXIsIHllYXIsIGVuZFllYXIsCgkJCWNoYW5nZU1vbnRoID0gdGhpcy5fZ2V0KCBpbnN0LCAiY2hhbmdlTW9udGgiICksCgkJCWNoYW5nZVllYXIgPSB0aGlzLl9nZXQoIGluc3QsICJjaGFuZ2VZZWFyIiApLAoJCQlzaG93TW9udGhBZnRlclllYXIgPSB0aGlzLl9nZXQoIGluc3QsICJzaG93TW9udGhBZnRlclllYXIiICksCgkJCWh0bWwgPSAiPGRpdiBjbGFzcz0ndWktZGF0ZXBpY2tlci10aXRsZSc+IiwKCQkJbW9udGhIdG1sID0gIiI7CgoJCS8vIE1vbnRoIHNlbGVjdGlvbgoJCWlmICggc2Vjb25kYXJ5IHx8ICFjaGFuZ2VNb250aCApIHsKCQkJbW9udGhIdG1sICs9ICI8c3BhbiBjbGFzcz0ndWktZGF0ZXBpY2tlci1tb250aCc+IiArIG1vbnRoTmFtZXNbIGRyYXdNb250aCBdICsgIjwvc3Bhbj4iOwoJCX0gZWxzZSB7CgkJCWluTWluWWVhciA9ICggbWluRGF0ZSAmJiBtaW5EYXRlLmdldEZ1bGxZZWFyKCkgPT09IGRyYXdZZWFyICk7CgkJCWluTWF4WWVhciA9ICggbWF4RGF0ZSAmJiBtYXhEYXRlLmdldEZ1bGxZZWFyKCkgPT09IGRyYXdZZWFyICk7CgkJCW1vbnRoSHRtbCArPSAiPHNlbGVjdCBjbGFzcz0ndWktZGF0ZXBpY2tlci1tb250aCcgZGF0YS1oYW5kbGVyPSdzZWxlY3RNb250aCcgZGF0YS1ldmVudD0nY2hhbmdlJz4iOwoJCQlmb3IgKCBtb250aCA9IDA7IG1vbnRoIDwgMTI7IG1vbnRoKysgKSB7CgkJCQlpZiAoICggIWluTWluWWVhciB8fCBtb250aCA+PSBtaW5EYXRlLmdldE1vbnRoKCkgKSAmJiAoICFpbk1heFllYXIgfHwgbW9udGggPD0gbWF4RGF0ZS5nZXRNb250aCgpICkgKSB7CgkJCQkJbW9udGhIdG1sICs9ICI8b3B0aW9uIHZhbHVlPSciICsgbW9udGggKyAiJyIgKwoJCQkJCQkoIG1vbnRoID09PSBkcmF3TW9udGggPyAiIHNlbGVjdGVkPSdzZWxlY3RlZCciIDogIiIgKSArCgkJCQkJCSI+IiArIG1vbnRoTmFtZXNTaG9ydFsgbW9udGggXSArICI8L29wdGlvbj4iOwoJCQkJfQoJCQl9CgkJCW1vbnRoSHRtbCArPSAiPC9zZWxlY3Q+IjsKCQl9CgoJCWlmICggIXNob3dNb250aEFmdGVyWWVhciApIHsKCQkJaHRtbCArPSBtb250aEh0bWwgKyAoIHNlY29uZGFyeSB8fCAhKCBjaGFuZ2VNb250aCAmJiBjaGFuZ2VZZWFyICkgPyAiJiN4YTA7IiA6ICIiICk7CgkJfQoKCQkvLyBZZWFyIHNlbGVjdGlvbgoJCWlmICggIWluc3QueWVhcnNodG1sICkgewoJCQlpbnN0LnllYXJzaHRtbCA9ICIiOwoJCQlpZiAoIHNlY29uZGFyeSB8fCAhY2hhbmdlWWVhciApIHsKCQkJCWh0bWwgKz0gIjxzcGFuIGNsYXNzPSd1aS1kYXRlcGlja2VyLXllYXInPiIgKyBkcmF3WWVhciArICI8L3NwYW4+IjsKCQkJfSBlbHNlIHsKCgkJCQkvLyBkZXRlcm1pbmUgcmFuZ2Ugb2YgeWVhcnMgdG8gZGlzcGxheQoJCQkJeWVhcnMgPSB0aGlzLl9nZXQoIGluc3QsICJ5ZWFyUmFuZ2UiICkuc3BsaXQoICI6IiApOwoJCQkJdGhpc1llYXIgPSBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCk7CgkJCQlkZXRlcm1pbmVZZWFyID0gZnVuY3Rpb24oIHZhbHVlICkgewoJCQkJCXZhciB5ZWFyID0gKCB2YWx1ZS5tYXRjaCggL2NbK1wtXS4qLyApID8gZHJhd1llYXIgKyBwYXJzZUludCggdmFsdWUuc3Vic3RyaW5nKCAxICksIDEwICkgOgoJCQkJCQkoIHZhbHVlLm1hdGNoKCAvWytcLV0uKi8gKSA/IHRoaXNZZWFyICsgcGFyc2VJbnQoIHZhbHVlLCAxMCApIDoKCQkJCQkJcGFyc2VJbnQoIHZhbHVlLCAxMCApICkgKTsKCQkJCQlyZXR1cm4gKCBpc05hTiggeWVhciApID8gdGhpc1llYXIgOiB5ZWFyICk7CgkJCQl9OwoJCQkJeWVhciA9IGRldGVybWluZVllYXIoIHllYXJzWyAwIF0gKTsKCQkJCWVuZFllYXIgPSBNYXRoLm1heCggeWVhciwgZGV0ZXJtaW5lWWVhciggeWVhcnNbIDEgXSB8fCAiIiApICk7CgkJCQl5ZWFyID0gKCBtaW5EYXRlID8gTWF0aC5tYXgoIHllYXIsIG1pbkRhdGUuZ2V0RnVsbFllYXIoKSApIDogeWVhciApOwoJCQkJZW5kWWVhciA9ICggbWF4RGF0ZSA/IE1hdGgubWluKCBlbmRZZWFyLCBtYXhEYXRlLmdldEZ1bGxZZWFyKCkgKSA6IGVuZFllYXIgKTsKCQkJCWluc3QueWVhcnNodG1sICs9ICI8c2VsZWN0IGNsYXNzPSd1aS1kYXRlcGlja2VyLXllYXInIGRhdGEtaGFuZGxlcj0nc2VsZWN0WWVhcicgZGF0YS1ldmVudD0nY2hhbmdlJz4iOwoJCQkJZm9yICggOyB5ZWFyIDw9IGVuZFllYXI7IHllYXIrKyApIHsKCQkJCQlpbnN0LnllYXJzaHRtbCArPSAiPG9wdGlvbiB2YWx1ZT0nIiArIHllYXIgKyAiJyIgKwoJCQkJCQkoIHllYXIgPT09IGRyYXdZZWFyID8gIiBzZWxlY3RlZD0nc2VsZWN0ZWQnIiA6ICIiICkgKwoJCQkJCQkiPiIgKyB5ZWFyICsgIjwvb3B0aW9uPiI7CgkJCQl9CgkJCQlpbnN0LnllYXJzaHRtbCArPSAiPC9zZWxlY3Q+IjsKCgkJCQlodG1sICs9IGluc3QueWVhcnNodG1sOwoJCQkJaW5zdC55ZWFyc2h0bWwgPSBudWxsOwoJCQl9CgkJfQoKCQlodG1sICs9IHRoaXMuX2dldCggaW5zdCwgInllYXJTdWZmaXgiICk7CgkJaWYgKCBzaG93TW9udGhBZnRlclllYXIgKSB7CgkJCWh0bWwgKz0gKCBzZWNvbmRhcnkgfHwgISggY2hhbmdlTW9udGggJiYgY2hhbmdlWWVhciApID8gIiYjeGEwOyIgOiAiIiApICsgbW9udGhIdG1sOwoJCX0KCQlodG1sICs9ICI8L2Rpdj4iOyAvLyBDbG9zZSBkYXRlcGlja2VyX2hlYWRlcgoJCXJldHVybiBodG1sOwoJfSwKCgkvKiBBZGp1c3Qgb25lIG9mIHRoZSBkYXRlIHN1Yi1maWVsZHMuICovCglfYWRqdXN0SW5zdERhdGU6IGZ1bmN0aW9uKCBpbnN0LCBvZmZzZXQsIHBlcmlvZCApIHsKCQl2YXIgeWVhciA9IGluc3Quc2VsZWN0ZWRZZWFyICsgKCBwZXJpb2QgPT09ICJZIiA/IG9mZnNldCA6IDAgKSwKCQkJbW9udGggPSBpbnN0LnNlbGVjdGVkTW9udGggKyAoIHBlcmlvZCA9PT0gIk0iID8gb2Zmc2V0IDogMCApLAoJCQlkYXkgPSBNYXRoLm1pbiggaW5zdC5zZWxlY3RlZERheSwgdGhpcy5fZ2V0RGF5c0luTW9udGgoIHllYXIsIG1vbnRoICkgKSArICggcGVyaW9kID09PSAiRCIgPyBvZmZzZXQgOiAwICksCgkJCWRhdGUgPSB0aGlzLl9yZXN0cmljdE1pbk1heCggaW5zdCwgdGhpcy5fZGF5bGlnaHRTYXZpbmdBZGp1c3QoIG5ldyBEYXRlKCB5ZWFyLCBtb250aCwgZGF5ICkgKSApOwoKCQlpbnN0LnNlbGVjdGVkRGF5ID0gZGF0ZS5nZXREYXRlKCk7CgkJaW5zdC5kcmF3TW9udGggPSBpbnN0LnNlbGVjdGVkTW9udGggPSBkYXRlLmdldE1vbnRoKCk7CgkJaW5zdC5kcmF3WWVhciA9IGluc3Quc2VsZWN0ZWRZZWFyID0gZGF0ZS5nZXRGdWxsWWVhcigpOwoJCWlmICggcGVyaW9kID09PSAiTSIgfHwgcGVyaW9kID09PSAiWSIgKSB7CgkJCXRoaXMuX25vdGlmeUNoYW5nZSggaW5zdCApOwoJCX0KCX0sCgoJLyogRW5zdXJlIGEgZGF0ZSBpcyB3aXRoaW4gYW55IG1pbi9tYXggYm91bmRzLiAqLwoJX3Jlc3RyaWN0TWluTWF4OiBmdW5jdGlvbiggaW5zdCwgZGF0ZSApIHsKCQl2YXIgbWluRGF0ZSA9IHRoaXMuX2dldE1pbk1heERhdGUoIGluc3QsICJtaW4iICksCgkJCW1heERhdGUgPSB0aGlzLl9nZXRNaW5NYXhEYXRlKCBpbnN0LCAibWF4IiApLAoJCQluZXdEYXRlID0gKCBtaW5EYXRlICYmIGRhdGUgPCBtaW5EYXRlID8gbWluRGF0ZSA6IGRhdGUgKTsKCQlyZXR1cm4gKCBtYXhEYXRlICYmIG5ld0RhdGUgPiBtYXhEYXRlID8gbWF4RGF0ZSA6IG5ld0RhdGUgKTsKCX0sCgoJLyogTm90aWZ5IGNoYW5nZSBvZiBtb250aC95ZWFyLiAqLwoJX25vdGlmeUNoYW5nZTogZnVuY3Rpb24oIGluc3QgKSB7CgkJdmFyIG9uQ2hhbmdlID0gdGhpcy5fZ2V0KCBpbnN0LCAib25DaGFuZ2VNb250aFllYXIiICk7CgkJaWYgKCBvbkNoYW5nZSApIHsKCQkJb25DaGFuZ2UuYXBwbHkoICggaW5zdC5pbnB1dCA/IGluc3QuaW5wdXRbIDAgXSA6IG51bGwgKSwKCQkJCVsgaW5zdC5zZWxlY3RlZFllYXIsIGluc3Quc2VsZWN0ZWRNb250aCArIDEsIGluc3QgXSApOwoJCX0KCX0sCgoJLyogRGV0ZXJtaW5lIHRoZSBudW1iZXIgb2YgbW9udGhzIHRvIHNob3cuICovCglfZ2V0TnVtYmVyT2ZNb250aHM6IGZ1bmN0aW9uKCBpbnN0ICkgewoJCXZhciBudW1Nb250aHMgPSB0aGlzLl9nZXQoIGluc3QsICJudW1iZXJPZk1vbnRocyIgKTsKCQlyZXR1cm4gKCBudW1Nb250aHMgPT0gbnVsbCA/IFsgMSwgMSBdIDogKCB0eXBlb2YgbnVtTW9udGhzID09PSAibnVtYmVyIiA/IFsgMSwgbnVtTW9udGhzIF0gOiBudW1Nb250aHMgKSApOwoJfSwKCgkvKiBEZXRlcm1pbmUgdGhlIGN1cnJlbnQgbWF4aW11bSBkYXRlIC0gZW5zdXJlIG5vIHRpbWUgY29tcG9uZW50cyBhcmUgc2V0LiAqLwoJX2dldE1pbk1heERhdGU6IGZ1bmN0aW9uKCBpbnN0LCBtaW5NYXggKSB7CgkJcmV0dXJuIHRoaXMuX2RldGVybWluZURhdGUoIGluc3QsIHRoaXMuX2dldCggaW5zdCwgbWluTWF4ICsgIkRhdGUiICksIG51bGwgKTsKCX0sCgoJLyogRmluZCB0aGUgbnVtYmVyIG9mIGRheXMgaW4gYSBnaXZlbiBtb250aC4gKi8KCV9nZXREYXlzSW5Nb250aDogZnVuY3Rpb24oIHllYXIsIG1vbnRoICkgewoJCXJldHVybiAzMiAtIHRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KCBuZXcgRGF0ZSggeWVhciwgbW9udGgsIDMyICkgKS5nZXREYXRlKCk7Cgl9LAoKCS8qIEZpbmQgdGhlIGRheSBvZiB0aGUgd2VlayBvZiB0aGUgZmlyc3Qgb2YgYSBtb250aC4gKi8KCV9nZXRGaXJzdERheU9mTW9udGg6IGZ1bmN0aW9uKCB5ZWFyLCBtb250aCApIHsKCQlyZXR1cm4gbmV3IERhdGUoIHllYXIsIG1vbnRoLCAxICkuZ2V0RGF5KCk7Cgl9LAoKCS8qIERldGVybWluZXMgaWYgd2Ugc2hvdWxkIGFsbG93IGEgIm5leHQvcHJldiIgbW9udGggZGlzcGxheSBjaGFuZ2UuICovCglfY2FuQWRqdXN0TW9udGg6IGZ1bmN0aW9uKCBpbnN0LCBvZmZzZXQsIGN1clllYXIsIGN1ck1vbnRoICkgewoJCXZhciBudW1Nb250aHMgPSB0aGlzLl9nZXROdW1iZXJPZk1vbnRocyggaW5zdCApLAoJCQlkYXRlID0gdGhpcy5fZGF5bGlnaHRTYXZpbmdBZGp1c3QoIG5ldyBEYXRlKCBjdXJZZWFyLAoJCQljdXJNb250aCArICggb2Zmc2V0IDwgMCA/IG9mZnNldCA6IG51bU1vbnRoc1sgMCBdICogbnVtTW9udGhzWyAxIF0gKSwgMSApICk7CgoJCWlmICggb2Zmc2V0IDwgMCApIHsKCQkJZGF0ZS5zZXREYXRlKCB0aGlzLl9nZXREYXlzSW5Nb250aCggZGF0ZS5nZXRGdWxsWWVhcigpLCBkYXRlLmdldE1vbnRoKCkgKSApOwoJCX0KCQlyZXR1cm4gdGhpcy5faXNJblJhbmdlKCBpbnN0LCBkYXRlICk7Cgl9LAoKCS8qIElzIHRoZSBnaXZlbiBkYXRlIGluIHRoZSBhY2NlcHRlZCByYW5nZT8gKi8KCV9pc0luUmFuZ2U6IGZ1bmN0aW9uKCBpbnN0LCBkYXRlICkgewoJCXZhciB5ZWFyU3BsaXQsIGN1cnJlbnRZZWFyLAoJCQltaW5EYXRlID0gdGhpcy5fZ2V0TWluTWF4RGF0ZSggaW5zdCwgIm1pbiIgKSwKCQkJbWF4RGF0ZSA9IHRoaXMuX2dldE1pbk1heERhdGUoIGluc3QsICJtYXgiICksCgkJCW1pblllYXIgPSBudWxsLAoJCQltYXhZZWFyID0gbnVsbCwKCQkJeWVhcnMgPSB0aGlzLl9nZXQoIGluc3QsICJ5ZWFyUmFuZ2UiICk7CgkJCWlmICggeWVhcnMgKSB7CgkJCQl5ZWFyU3BsaXQgPSB5ZWFycy5zcGxpdCggIjoiICk7CgkJCQljdXJyZW50WWVhciA9IG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKTsKCQkJCW1pblllYXIgPSBwYXJzZUludCggeWVhclNwbGl0WyAwIF0sIDEwICk7CgkJCQltYXhZZWFyID0gcGFyc2VJbnQoIHllYXJTcGxpdFsgMSBdLCAxMCApOwoJCQkJaWYgKCB5ZWFyU3BsaXRbIDAgXS5tYXRjaCggL1srXC1dLiovICkgKSB7CgkJCQkJbWluWWVhciArPSBjdXJyZW50WWVhcjsKCQkJCX0KCQkJCWlmICggeWVhclNwbGl0WyAxIF0ubWF0Y2goIC9bK1wtXS4qLyApICkgewoJCQkJCW1heFllYXIgKz0gY3VycmVudFllYXI7CgkJCQl9CgkJCX0KCgkJcmV0dXJuICggKCAhbWluRGF0ZSB8fCBkYXRlLmdldFRpbWUoKSA+PSBtaW5EYXRlLmdldFRpbWUoKSApICYmCgkJCSggIW1heERhdGUgfHwgZGF0ZS5nZXRUaW1lKCkgPD0gbWF4RGF0ZS5nZXRUaW1lKCkgKSAmJgoJCQkoICFtaW5ZZWFyIHx8IGRhdGUuZ2V0RnVsbFllYXIoKSA+PSBtaW5ZZWFyICkgJiYKCQkJKCAhbWF4WWVhciB8fCBkYXRlLmdldEZ1bGxZZWFyKCkgPD0gbWF4WWVhciApICk7Cgl9LAoKCS8qIFByb3ZpZGUgdGhlIGNvbmZpZ3VyYXRpb24gc2V0dGluZ3MgZm9yIGZvcm1hdHRpbmcvcGFyc2luZy4gKi8KCV9nZXRGb3JtYXRDb25maWc6IGZ1bmN0aW9uKCBpbnN0ICkgewoJCXZhciBzaG9ydFllYXJDdXRvZmYgPSB0aGlzLl9nZXQoIGluc3QsICJzaG9ydFllYXJDdXRvZmYiICk7CgkJc2hvcnRZZWFyQ3V0b2ZmID0gKCB0eXBlb2Ygc2hvcnRZZWFyQ3V0b2ZmICE9PSAic3RyaW5nIiA/IHNob3J0WWVhckN1dG9mZiA6CgkJCW5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKSAlIDEwMCArIHBhcnNlSW50KCBzaG9ydFllYXJDdXRvZmYsIDEwICkgKTsKCQlyZXR1cm4geyBzaG9ydFllYXJDdXRvZmY6IHNob3J0WWVhckN1dG9mZiwKCQkJZGF5TmFtZXNTaG9ydDogdGhpcy5fZ2V0KCBpbnN0LCAiZGF5TmFtZXNTaG9ydCIgKSwgZGF5TmFtZXM6IHRoaXMuX2dldCggaW5zdCwgImRheU5hbWVzIiApLAoJCQltb250aE5hbWVzU2hvcnQ6IHRoaXMuX2dldCggaW5zdCwgIm1vbnRoTmFtZXNTaG9ydCIgKSwgbW9udGhOYW1lczogdGhpcy5fZ2V0KCBpbnN0LCAibW9udGhOYW1lcyIgKSB9OwoJfSwKCgkvKiBGb3JtYXQgdGhlIGdpdmVuIGRhdGUgZm9yIGRpc3BsYXkuICovCglfZm9ybWF0RGF0ZTogZnVuY3Rpb24oIGluc3QsIGRheSwgbW9udGgsIHllYXIgKSB7CgkJaWYgKCAhZGF5ICkgewoJCQlpbnN0LmN1cnJlbnREYXkgPSBpbnN0LnNlbGVjdGVkRGF5OwoJCQlpbnN0LmN1cnJlbnRNb250aCA9IGluc3Quc2VsZWN0ZWRNb250aDsKCQkJaW5zdC5jdXJyZW50WWVhciA9IGluc3Quc2VsZWN0ZWRZZWFyOwoJCX0KCQl2YXIgZGF0ZSA9ICggZGF5ID8gKCB0eXBlb2YgZGF5ID09PSAib2JqZWN0IiA/IGRheSA6CgkJCXRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KCBuZXcgRGF0ZSggeWVhciwgbW9udGgsIGRheSApICkgKSA6CgkJCXRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KCBuZXcgRGF0ZSggaW5zdC5jdXJyZW50WWVhciwgaW5zdC5jdXJyZW50TW9udGgsIGluc3QuY3VycmVudERheSApICkgKTsKCQlyZXR1cm4gdGhpcy5mb3JtYXREYXRlKCB0aGlzLl9nZXQoIGluc3QsICJkYXRlRm9ybWF0IiApLCBkYXRlLCB0aGlzLl9nZXRGb3JtYXRDb25maWcoIGluc3QgKSApOwoJfQp9ICk7CgovKgogKiBCaW5kIGhvdmVyIGV2ZW50cyBmb3IgZGF0ZXBpY2tlciBlbGVtZW50cy4KICogRG9uZSB2aWEgZGVsZWdhdGUgc28gdGhlIGJpbmRpbmcgb25seSBvY2N1cnMgb25jZSBpbiB0aGUgbGlmZXRpbWUgb2YgdGhlIHBhcmVudCBkaXYuCiAqIEdsb2JhbCBkYXRlcGlja2VyX2luc3RBY3RpdmUsIHNldCBieSBfdXBkYXRlRGF0ZXBpY2tlciBhbGxvd3MgdGhlIGhhbmRsZXJzIHRvIGZpbmQgdGhlaXIgd2F5IGJhY2sgdG8gdGhlIGFjdGl2ZSBwaWNrZXIuCiAqLwpmdW5jdGlvbiBkYXRlcGlja2VyX2JpbmRIb3ZlciggZHBEaXYgKSB7Cgl2YXIgc2VsZWN0b3IgPSAiYnV0dG9uLCAudWktZGF0ZXBpY2tlci1wcmV2LCAudWktZGF0ZXBpY2tlci1uZXh0LCAudWktZGF0ZXBpY2tlci1jYWxlbmRhciB0ZCBhIjsKCXJldHVybiBkcERpdi5vbiggIm1vdXNlb3V0Iiwgc2VsZWN0b3IsIGZ1bmN0aW9uKCkgewoJCQkkKCB0aGlzICkucmVtb3ZlQ2xhc3MoICJ1aS1zdGF0ZS1ob3ZlciIgKTsKCQkJaWYgKCB0aGlzLmNsYXNzTmFtZS5pbmRleE9mKCAidWktZGF0ZXBpY2tlci1wcmV2IiApICE9PSAtMSApIHsKCQkJCSQoIHRoaXMgKS5yZW1vdmVDbGFzcyggInVpLWRhdGVwaWNrZXItcHJldi1ob3ZlciIgKTsKCQkJfQoJCQlpZiAoIHRoaXMuY2xhc3NOYW1lLmluZGV4T2YoICJ1aS1kYXRlcGlja2VyLW5leHQiICkgIT09IC0xICkgewoJCQkJJCggdGhpcyApLnJlbW92ZUNsYXNzKCAidWktZGF0ZXBpY2tlci1uZXh0LWhvdmVyIiApOwoJCQl9CgkJfSApCgkJLm9uKCAibW91c2VvdmVyIiwgc2VsZWN0b3IsIGRhdGVwaWNrZXJfaGFuZGxlTW91c2VvdmVyICk7Cn0KCmZ1bmN0aW9uIGRhdGVwaWNrZXJfaGFuZGxlTW91c2VvdmVyKCkgewoJaWYgKCAhJC5kYXRlcGlja2VyLl9pc0Rpc2FibGVkRGF0ZXBpY2tlciggZGF0ZXBpY2tlcl9pbnN0QWN0aXZlLmlubGluZSA/IGRhdGVwaWNrZXJfaW5zdEFjdGl2ZS5kcERpdi5wYXJlbnQoKVsgMCBdIDogZGF0ZXBpY2tlcl9pbnN0QWN0aXZlLmlucHV0WyAwIF0gKSApIHsKCQkkKCB0aGlzICkucGFyZW50cyggIi51aS1kYXRlcGlja2VyLWNhbGVuZGFyIiApLmZpbmQoICJhIiApLnJlbW92ZUNsYXNzKCAidWktc3RhdGUtaG92ZXIiICk7CgkJJCggdGhpcyApLmFkZENsYXNzKCAidWktc3RhdGUtaG92ZXIiICk7CgkJaWYgKCB0aGlzLmNsYXNzTmFtZS5pbmRleE9mKCAidWktZGF0ZXBpY2tlci1wcmV2IiApICE9PSAtMSApIHsKCQkJJCggdGhpcyApLmFkZENsYXNzKCAidWktZGF0ZXBpY2tlci1wcmV2LWhvdmVyIiApOwoJCX0KCQlpZiAoIHRoaXMuY2xhc3NOYW1lLmluZGV4T2YoICJ1aS1kYXRlcGlja2VyLW5leHQiICkgIT09IC0xICkgewoJCQkkKCB0aGlzICkuYWRkQ2xhc3MoICJ1aS1kYXRlcGlja2VyLW5leHQtaG92ZXIiICk7CgkJfQoJfQp9CgovKiBqUXVlcnkgZXh0ZW5kIG5vdyBpZ25vcmVzIG51bGxzISAqLwpmdW5jdGlvbiBkYXRlcGlja2VyX2V4dGVuZFJlbW92ZSggdGFyZ2V0LCBwcm9wcyApIHsKCSQuZXh0ZW5kKCB0YXJnZXQsIHByb3BzICk7Cglmb3IgKCB2YXIgbmFtZSBpbiBwcm9wcyApIHsKCQlpZiAoIHByb3BzWyBuYW1lIF0gPT0gbnVsbCApIHsKCQkJdGFyZ2V0WyBuYW1lIF0gPSBwcm9wc1sgbmFtZSBdOwoJCX0KCX0KCXJldHVybiB0YXJnZXQ7Cn0KCi8qIEludm9rZSB0aGUgZGF0ZXBpY2tlciBmdW5jdGlvbmFsaXR5LgogICBAcGFyYW0gIG9wdGlvbnMgIHN0cmluZyAtIGEgY29tbWFuZCwgb3B0aW9uYWxseSBmb2xsb3dlZCBieSBhZGRpdGlvbmFsIHBhcmFtZXRlcnMgb3IKCQkJCQlPYmplY3QgLSBzZXR0aW5ncyBmb3IgYXR0YWNoaW5nIG5ldyBkYXRlcGlja2VyIGZ1bmN0aW9uYWxpdHkKICAgQHJldHVybiAgalF1ZXJ5IG9iamVjdCAqLwokLmZuLmRhdGVwaWNrZXIgPSBmdW5jdGlvbiggb3B0aW9ucyApIHsKCgkvKiBWZXJpZnkgYW4gZW1wdHkgY29sbGVjdGlvbiB3YXNuJ3QgcGFzc2VkIC0gRml4ZXMgIzY5NzYgKi8KCWlmICggIXRoaXMubGVuZ3RoICkgewoJCXJldHVybiB0aGlzOwoJfQoKCS8qIEluaXRpYWxpc2UgdGhlIGRhdGUgcGlja2VyLiAqLwoJaWYgKCAhJC5kYXRlcGlja2VyLmluaXRpYWxpemVkICkgewoJCSQoIGRvY3VtZW50ICkub24oICJtb3VzZWRvd24iLCAkLmRhdGVwaWNrZXIuX2NoZWNrRXh0ZXJuYWxDbGljayApOwoJCSQuZGF0ZXBpY2tlci5pbml0aWFsaXplZCA9IHRydWU7Cgl9CgoJLyogQXBwZW5kIGRhdGVwaWNrZXIgbWFpbiBjb250YWluZXIgdG8gYm9keSBpZiBub3QgZXhpc3QuICovCglpZiAoICQoICIjIiArICQuZGF0ZXBpY2tlci5fbWFpbkRpdklkICkubGVuZ3RoID09PSAwICkgewoJCSQoICJib2R5IiApLmFwcGVuZCggJC5kYXRlcGlja2VyLmRwRGl2ICk7Cgl9CgoJdmFyIG90aGVyQXJncyA9IEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKCBhcmd1bWVudHMsIDEgKTsKCWlmICggdHlwZW9mIG9wdGlvbnMgPT09ICJzdHJpbmciICYmICggb3B0aW9ucyA9PT0gImlzRGlzYWJsZWQiIHx8IG9wdGlvbnMgPT09ICJnZXREYXRlIiB8fCBvcHRpb25zID09PSAid2lkZ2V0IiApICkgewoJCXJldHVybiAkLmRhdGVwaWNrZXJbICJfIiArIG9wdGlvbnMgKyAiRGF0ZXBpY2tlciIgXS4KCQkJYXBwbHkoICQuZGF0ZXBpY2tlciwgWyB0aGlzWyAwIF0gXS5jb25jYXQoIG90aGVyQXJncyApICk7Cgl9CglpZiAoIG9wdGlvbnMgPT09ICJvcHRpb24iICYmIGFyZ3VtZW50cy5sZW5ndGggPT09IDIgJiYgdHlwZW9mIGFyZ3VtZW50c1sgMSBdID09PSAic3RyaW5nIiApIHsKCQlyZXR1cm4gJC5kYXRlcGlja2VyWyAiXyIgKyBvcHRpb25zICsgIkRhdGVwaWNrZXIiIF0uCgkJCWFwcGx5KCAkLmRhdGVwaWNrZXIsIFsgdGhpc1sgMCBdIF0uY29uY2F0KCBvdGhlckFyZ3MgKSApOwoJfQoJcmV0dXJuIHRoaXMuZWFjaCggZnVuY3Rpb24oKSB7CgkJdHlwZW9mIG9wdGlvbnMgPT09ICJzdHJpbmciID8KCQkJJC5kYXRlcGlja2VyWyAiXyIgKyBvcHRpb25zICsgIkRhdGVwaWNrZXIiIF0uCgkJCQlhcHBseSggJC5kYXRlcGlja2VyLCBbIHRoaXMgXS5jb25jYXQoIG90aGVyQXJncyApICkgOgoJCQkkLmRhdGVwaWNrZXIuX2F0dGFjaERhdGVwaWNrZXIoIHRoaXMsIG9wdGlvbnMgKTsKCX0gKTsKfTsKCiQuZGF0ZXBpY2tlciA9IG5ldyBEYXRlcGlja2VyKCk7IC8vIHNpbmdsZXRvbiBpbnN0YW5jZQokLmRhdGVwaWNrZXIuaW5pdGlhbGl6ZWQgPSBmYWxzZTsKJC5kYXRlcGlja2VyLnV1aWQgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKJC5kYXRlcGlja2VyLnZlcnNpb24gPSAiMS4xMi4xIjsKCnZhciB3aWRnZXRzRGF0ZXBpY2tlciA9ICQuZGF0ZXBpY2tlcjsKCgovKiEKICogalF1ZXJ5IFVJIERpYWxvZyAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IERpYWxvZwovLz4+Z3JvdXA6IFdpZGdldHMKLy8+PmRlc2NyaXB0aW9uOiBEaXNwbGF5cyBjdXN0b21pemFibGUgZGlhbG9nIHdpbmRvd3MuCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9kaWFsb2cvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9kaWFsb2cvCi8vPj5jc3Muc3RydWN0dXJlOiAuLi8uLi90aGVtZXMvYmFzZS9jb3JlLmNzcwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvZGlhbG9nLmNzcwovLz4+Y3NzLnRoZW1lOiAuLi8uLi90aGVtZXMvYmFzZS90aGVtZS5jc3MKCgoKJC53aWRnZXQoICJ1aS5kaWFsb2ciLCB7Cgl2ZXJzaW9uOiAiMS4xMi4xIiwKCW9wdGlvbnM6IHsKCQlhcHBlbmRUbzogImJvZHkiLAoJCWF1dG9PcGVuOiB0cnVlLAoJCWJ1dHRvbnM6IFtdLAoJCWNsYXNzZXM6IHsKCQkJInVpLWRpYWxvZyI6ICJ1aS1jb3JuZXItYWxsIiwKCQkJInVpLWRpYWxvZy10aXRsZWJhciI6ICJ1aS1jb3JuZXItYWxsIgoJCX0sCgkJY2xvc2VPbkVzY2FwZTogdHJ1ZSwKCQljbG9zZVRleHQ6ICJDbG9zZSIsCgkJZHJhZ2dhYmxlOiB0cnVlLAoJCWhpZGU6IG51bGwsCgkJaGVpZ2h0OiAiYXV0byIsCgkJbWF4SGVpZ2h0OiBudWxsLAoJCW1heFdpZHRoOiBudWxsLAoJCW1pbkhlaWdodDogMTUwLAoJCW1pbldpZHRoOiAxNTAsCgkJbW9kYWw6IGZhbHNlLAoJCXBvc2l0aW9uOiB7CgkJCW15OiAiY2VudGVyIiwKCQkJYXQ6ICJjZW50ZXIiLAoJCQlvZjogd2luZG93LAoJCQljb2xsaXNpb246ICJmaXQiLAoKCQkJLy8gRW5zdXJlIHRoZSB0aXRsZWJhciBpcyBhbHdheXMgdmlzaWJsZQoJCQl1c2luZzogZnVuY3Rpb24oIHBvcyApIHsKCQkJCXZhciB0b3BPZmZzZXQgPSAkKCB0aGlzICkuY3NzKCBwb3MgKS5vZmZzZXQoKS50b3A7CgkJCQlpZiAoIHRvcE9mZnNldCA8IDAgKSB7CgkJCQkJJCggdGhpcyApLmNzcyggInRvcCIsIHBvcy50b3AgLSB0b3BPZmZzZXQgKTsKCQkJCX0KCQkJfQoJCX0sCgkJcmVzaXphYmxlOiB0cnVlLAoJCXNob3c6IG51bGwsCgkJdGl0bGU6IG51bGwsCgkJd2lkdGg6IDMwMCwKCgkJLy8gQ2FsbGJhY2tzCgkJYmVmb3JlQ2xvc2U6IG51bGwsCgkJY2xvc2U6IG51bGwsCgkJZHJhZzogbnVsbCwKCQlkcmFnU3RhcnQ6IG51bGwsCgkJZHJhZ1N0b3A6IG51bGwsCgkJZm9jdXM6IG51bGwsCgkJb3BlbjogbnVsbCwKCQlyZXNpemU6IG51bGwsCgkJcmVzaXplU3RhcnQ6IG51bGwsCgkJcmVzaXplU3RvcDogbnVsbAoJfSwKCglzaXplUmVsYXRlZE9wdGlvbnM6IHsKCQlidXR0b25zOiB0cnVlLAoJCWhlaWdodDogdHJ1ZSwKCQltYXhIZWlnaHQ6IHRydWUsCgkJbWF4V2lkdGg6IHRydWUsCgkJbWluSGVpZ2h0OiB0cnVlLAoJCW1pbldpZHRoOiB0cnVlLAoJCXdpZHRoOiB0cnVlCgl9LAoKCXJlc2l6YWJsZVJlbGF0ZWRPcHRpb25zOiB7CgkJbWF4SGVpZ2h0OiB0cnVlLAoJCW1heFdpZHRoOiB0cnVlLAoJCW1pbkhlaWdodDogdHJ1ZSwKCQltaW5XaWR0aDogdHJ1ZQoJfSwKCglfY3JlYXRlOiBmdW5jdGlvbigpIHsKCQl0aGlzLm9yaWdpbmFsQ3NzID0gewoJCQlkaXNwbGF5OiB0aGlzLmVsZW1lbnRbIDAgXS5zdHlsZS5kaXNwbGF5LAoJCQl3aWR0aDogdGhpcy5lbGVtZW50WyAwIF0uc3R5bGUud2lkdGgsCgkJCW1pbkhlaWdodDogdGhpcy5lbGVtZW50WyAwIF0uc3R5bGUubWluSGVpZ2h0LAoJCQltYXhIZWlnaHQ6IHRoaXMuZWxlbWVudFsgMCBdLnN0eWxlLm1heEhlaWdodCwKCQkJaGVpZ2h0OiB0aGlzLmVsZW1lbnRbIDAgXS5zdHlsZS5oZWlnaHQKCQl9OwoJCXRoaXMub3JpZ2luYWxQb3NpdGlvbiA9IHsKCQkJcGFyZW50OiB0aGlzLmVsZW1lbnQucGFyZW50KCksCgkJCWluZGV4OiB0aGlzLmVsZW1lbnQucGFyZW50KCkuY2hpbGRyZW4oKS5pbmRleCggdGhpcy5lbGVtZW50ICkKCQl9OwoJCXRoaXMub3JpZ2luYWxUaXRsZSA9IHRoaXMuZWxlbWVudC5hdHRyKCAidGl0bGUiICk7CgkJaWYgKCB0aGlzLm9wdGlvbnMudGl0bGUgPT0gbnVsbCAmJiB0aGlzLm9yaWdpbmFsVGl0bGUgIT0gbnVsbCApIHsKCQkJdGhpcy5vcHRpb25zLnRpdGxlID0gdGhpcy5vcmlnaW5hbFRpdGxlOwoJCX0KCgkJLy8gRGlhbG9ncyBjYW4ndCBiZSBkaXNhYmxlZAoJCWlmICggdGhpcy5vcHRpb25zLmRpc2FibGVkICkgewoJCQl0aGlzLm9wdGlvbnMuZGlzYWJsZWQgPSBmYWxzZTsKCQl9CgoJCXRoaXMuX2NyZWF0ZVdyYXBwZXIoKTsKCgkJdGhpcy5lbGVtZW50CgkJCS5zaG93KCkKCQkJLnJlbW92ZUF0dHIoICJ0aXRsZSIgKQoJCQkuYXBwZW5kVG8oIHRoaXMudWlEaWFsb2cgKTsKCgkJdGhpcy5fYWRkQ2xhc3MoICJ1aS1kaWFsb2ctY29udGVudCIsICJ1aS13aWRnZXQtY29udGVudCIgKTsKCgkJdGhpcy5fY3JlYXRlVGl0bGViYXIoKTsKCQl0aGlzLl9jcmVhdGVCdXR0b25QYW5lKCk7CgoJCWlmICggdGhpcy5vcHRpb25zLmRyYWdnYWJsZSAmJiAkLmZuLmRyYWdnYWJsZSApIHsKCQkJdGhpcy5fbWFrZURyYWdnYWJsZSgpOwoJCX0KCQlpZiAoIHRoaXMub3B0aW9ucy5yZXNpemFibGUgJiYgJC5mbi5yZXNpemFibGUgKSB7CgkJCXRoaXMuX21ha2VSZXNpemFibGUoKTsKCQl9CgoJCXRoaXMuX2lzT3BlbiA9IGZhbHNlOwoKCQl0aGlzLl90cmFja0ZvY3VzKCk7Cgl9LAoKCV9pbml0OiBmdW5jdGlvbigpIHsKCQlpZiAoIHRoaXMub3B0aW9ucy5hdXRvT3BlbiApIHsKCQkJdGhpcy5vcGVuKCk7CgkJfQoJfSwKCglfYXBwZW5kVG86IGZ1bmN0aW9uKCkgewoJCXZhciBlbGVtZW50ID0gdGhpcy5vcHRpb25zLmFwcGVuZFRvOwoJCWlmICggZWxlbWVudCAmJiAoIGVsZW1lbnQuanF1ZXJ5IHx8IGVsZW1lbnQubm9kZVR5cGUgKSApIHsKCQkJcmV0dXJuICQoIGVsZW1lbnQgKTsKCQl9CgkJcmV0dXJuIHRoaXMuZG9jdW1lbnQuZmluZCggZWxlbWVudCB8fCAiYm9keSIgKS5lcSggMCApOwoJfSwKCglfZGVzdHJveTogZnVuY3Rpb24oKSB7CgkJdmFyIG5leHQsCgkJCW9yaWdpbmFsUG9zaXRpb24gPSB0aGlzLm9yaWdpbmFsUG9zaXRpb247CgoJCXRoaXMuX3VudHJhY2tJbnN0YW5jZSgpOwoJCXRoaXMuX2Rlc3Ryb3lPdmVybGF5KCk7CgoJCXRoaXMuZWxlbWVudAoJCQkucmVtb3ZlVW5pcXVlSWQoKQoJCQkuY3NzKCB0aGlzLm9yaWdpbmFsQ3NzICkKCgkJCS8vIFdpdGhvdXQgZGV0YWNoaW5nIGZpcnN0LCB0aGUgZm9sbG93aW5nIGJlY29tZXMgcmVhbGx5IHNsb3cKCQkJLmRldGFjaCgpOwoKCQl0aGlzLnVpRGlhbG9nLnJlbW92ZSgpOwoKCQlpZiAoIHRoaXMub3JpZ2luYWxUaXRsZSApIHsKCQkJdGhpcy5lbGVtZW50LmF0dHIoICJ0aXRsZSIsIHRoaXMub3JpZ2luYWxUaXRsZSApOwoJCX0KCgkJbmV4dCA9IG9yaWdpbmFsUG9zaXRpb24ucGFyZW50LmNoaWxkcmVuKCkuZXEoIG9yaWdpbmFsUG9zaXRpb24uaW5kZXggKTsKCgkJLy8gRG9uJ3QgdHJ5IHRvIHBsYWNlIHRoZSBkaWFsb2cgbmV4dCB0byBpdHNlbGYgKCM4NjEzKQoJCWlmICggbmV4dC5sZW5ndGggJiYgbmV4dFsgMCBdICE9PSB0aGlzLmVsZW1lbnRbIDAgXSApIHsKCQkJbmV4dC5iZWZvcmUoIHRoaXMuZWxlbWVudCApOwoJCX0gZWxzZSB7CgkJCW9yaWdpbmFsUG9zaXRpb24ucGFyZW50LmFwcGVuZCggdGhpcy5lbGVtZW50ICk7CgkJfQoJfSwKCgl3aWRnZXQ6IGZ1bmN0aW9uKCkgewoJCXJldHVybiB0aGlzLnVpRGlhbG9nOwoJfSwKCglkaXNhYmxlOiAkLm5vb3AsCgllbmFibGU6ICQubm9vcCwKCgljbG9zZTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXZhciB0aGF0ID0gdGhpczsKCgkJaWYgKCAhdGhpcy5faXNPcGVuIHx8IHRoaXMuX3RyaWdnZXIoICJiZWZvcmVDbG9zZSIsIGV2ZW50ICkgPT09IGZhbHNlICkgewoJCQlyZXR1cm47CgkJfQoKCQl0aGlzLl9pc09wZW4gPSBmYWxzZTsKCQl0aGlzLl9mb2N1c2VkRWxlbWVudCA9IG51bGw7CgkJdGhpcy5fZGVzdHJveU92ZXJsYXkoKTsKCQl0aGlzLl91bnRyYWNrSW5zdGFuY2UoKTsKCgkJaWYgKCAhdGhpcy5vcGVuZXIuZmlsdGVyKCAiOmZvY3VzYWJsZSIgKS50cmlnZ2VyKCAiZm9jdXMiICkubGVuZ3RoICkgewoKCQkJLy8gSGlkaW5nIGEgZm9jdXNlZCBlbGVtZW50IGRvZXNuJ3QgdHJpZ2dlciBibHVyIGluIFdlYktpdAoJCQkvLyBzbyBpbiBjYXNlIHdlIGhhdmUgbm90aGluZyB0byBmb2N1cyBvbiwgZXhwbGljaXRseSBibHVyIHRoZSBhY3RpdmUgZWxlbWVudAoJCQkvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDcxODIKCQkJJC51aS5zYWZlQmx1ciggJC51aS5zYWZlQWN0aXZlRWxlbWVudCggdGhpcy5kb2N1bWVudFsgMCBdICkgKTsKCQl9CgoJCXRoaXMuX2hpZGUoIHRoaXMudWlEaWFsb2csIHRoaXMub3B0aW9ucy5oaWRlLCBmdW5jdGlvbigpIHsKCQkJdGhhdC5fdHJpZ2dlciggImNsb3NlIiwgZXZlbnQgKTsKCQl9ICk7Cgl9LAoKCWlzT3BlbjogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMuX2lzT3BlbjsKCX0sCgoJbW92ZVRvVG9wOiBmdW5jdGlvbigpIHsKCQl0aGlzLl9tb3ZlVG9Ub3AoKTsKCX0sCgoJX21vdmVUb1RvcDogZnVuY3Rpb24oIGV2ZW50LCBzaWxlbnQgKSB7CgkJdmFyIG1vdmVkID0gZmFsc2UsCgkJCXpJbmRpY2VzID0gdGhpcy51aURpYWxvZy5zaWJsaW5ncyggIi51aS1mcm9udDp2aXNpYmxlIiApLm1hcCggZnVuY3Rpb24oKSB7CgkJCQlyZXR1cm4gKyQoIHRoaXMgKS5jc3MoICJ6LWluZGV4IiApOwoJCQl9ICkuZ2V0KCksCgkJCXpJbmRleE1heCA9IE1hdGgubWF4LmFwcGx5KCBudWxsLCB6SW5kaWNlcyApOwoKCQlpZiAoIHpJbmRleE1heCA+PSArdGhpcy51aURpYWxvZy5jc3MoICJ6LWluZGV4IiApICkgewoJCQl0aGlzLnVpRGlhbG9nLmNzcyggInotaW5kZXgiLCB6SW5kZXhNYXggKyAxICk7CgkJCW1vdmVkID0gdHJ1ZTsKCQl9CgoJCWlmICggbW92ZWQgJiYgIXNpbGVudCApIHsKCQkJdGhpcy5fdHJpZ2dlciggImZvY3VzIiwgZXZlbnQgKTsKCQl9CgkJcmV0dXJuIG1vdmVkOwoJfSwKCglvcGVuOiBmdW5jdGlvbigpIHsKCQl2YXIgdGhhdCA9IHRoaXM7CgkJaWYgKCB0aGlzLl9pc09wZW4gKSB7CgkJCWlmICggdGhpcy5fbW92ZVRvVG9wKCkgKSB7CgkJCQl0aGlzLl9mb2N1c1RhYmJhYmxlKCk7CgkJCX0KCQkJcmV0dXJuOwoJCX0KCgkJdGhpcy5faXNPcGVuID0gdHJ1ZTsKCQl0aGlzLm9wZW5lciA9ICQoICQudWkuc2FmZUFjdGl2ZUVsZW1lbnQoIHRoaXMuZG9jdW1lbnRbIDAgXSApICk7CgoJCXRoaXMuX3NpemUoKTsKCQl0aGlzLl9wb3NpdGlvbigpOwoJCXRoaXMuX2NyZWF0ZU92ZXJsYXkoKTsKCQl0aGlzLl9tb3ZlVG9Ub3AoIG51bGwsIHRydWUgKTsKCgkJLy8gRW5zdXJlIHRoZSBvdmVybGF5IGlzIG1vdmVkIHRvIHRoZSB0b3Agd2l0aCB0aGUgZGlhbG9nLCBidXQgb25seSB3aGVuCgkJLy8gb3BlbmluZy4gVGhlIG92ZXJsYXkgc2hvdWxkbid0IG1vdmUgYWZ0ZXIgdGhlIGRpYWxvZyBpcyBvcGVuIHNvIHRoYXQKCQkvLyBtb2RlbGVzcyBkaWFsb2dzIG9wZW5lZCBhZnRlciB0aGUgbW9kYWwgZGlhbG9nIHN0YWNrIHByb3Blcmx5LgoJCWlmICggdGhpcy5vdmVybGF5ICkgewoJCQl0aGlzLm92ZXJsYXkuY3NzKCAiei1pbmRleCIsIHRoaXMudWlEaWFsb2cuY3NzKCAiei1pbmRleCIgKSAtIDEgKTsKCQl9CgoJCXRoaXMuX3Nob3coIHRoaXMudWlEaWFsb2csIHRoaXMub3B0aW9ucy5zaG93LCBmdW5jdGlvbigpIHsKCQkJdGhhdC5fZm9jdXNUYWJiYWJsZSgpOwoJCQl0aGF0Ll90cmlnZ2VyKCAiZm9jdXMiICk7CgkJfSApOwoKCQkvLyBUcmFjayB0aGUgZGlhbG9nIGltbWVkaWF0ZWx5IHVwb24gb3BlbmVuaW5nIGluIGNhc2UgYSBmb2N1cyBldmVudAoJCS8vIHNvbWVob3cgb2NjdXJzIG91dHNpZGUgb2YgdGhlIGRpYWxvZyBiZWZvcmUgYW4gZWxlbWVudCBpbnNpZGUgdGhlCgkJLy8gZGlhbG9nIGlzIGZvY3VzZWQgKCMxMDE1MikKCQl0aGlzLl9tYWtlRm9jdXNUYXJnZXQoKTsKCgkJdGhpcy5fdHJpZ2dlciggIm9wZW4iICk7Cgl9LAoKCV9mb2N1c1RhYmJhYmxlOiBmdW5jdGlvbigpIHsKCgkJLy8gU2V0IGZvY3VzIHRvIHRoZSBmaXJzdCBtYXRjaDoKCQkvLyAxLiBBbiBlbGVtZW50IHRoYXQgd2FzIGZvY3VzZWQgcHJldmlvdXNseQoJCS8vIDIuIEZpcnN0IGVsZW1lbnQgaW5zaWRlIHRoZSBkaWFsb2cgbWF0Y2hpbmcgW2F1dG9mb2N1c10KCQkvLyAzLiBUYWJiYWJsZSBlbGVtZW50IGluc2lkZSB0aGUgY29udGVudCBlbGVtZW50CgkJLy8gNC4gVGFiYmFibGUgZWxlbWVudCBpbnNpZGUgdGhlIGJ1dHRvbnBhbmUKCQkvLyA1LiBUaGUgY2xvc2UgYnV0dG9uCgkJLy8gNi4gVGhlIGRpYWxvZyBpdHNlbGYKCQl2YXIgaGFzRm9jdXMgPSB0aGlzLl9mb2N1c2VkRWxlbWVudDsKCQlpZiAoICFoYXNGb2N1cyApIHsKCQkJaGFzRm9jdXMgPSB0aGlzLmVsZW1lbnQuZmluZCggIlthdXRvZm9jdXNdIiApOwoJCX0KCQlpZiAoICFoYXNGb2N1cy5sZW5ndGggKSB7CgkJCWhhc0ZvY3VzID0gdGhpcy5lbGVtZW50LmZpbmQoICI6dGFiYmFibGUiICk7CgkJfQoJCWlmICggIWhhc0ZvY3VzLmxlbmd0aCApIHsKCQkJaGFzRm9jdXMgPSB0aGlzLnVpRGlhbG9nQnV0dG9uUGFuZS5maW5kKCAiOnRhYmJhYmxlIiApOwoJCX0KCQlpZiAoICFoYXNGb2N1cy5sZW5ndGggKSB7CgkJCWhhc0ZvY3VzID0gdGhpcy51aURpYWxvZ1RpdGxlYmFyQ2xvc2UuZmlsdGVyKCAiOnRhYmJhYmxlIiApOwoJCX0KCQlpZiAoICFoYXNGb2N1cy5sZW5ndGggKSB7CgkJCWhhc0ZvY3VzID0gdGhpcy51aURpYWxvZzsKCQl9CgkJaGFzRm9jdXMuZXEoIDAgKS50cmlnZ2VyKCAiZm9jdXMiICk7Cgl9LAoKCV9rZWVwRm9jdXM6IGZ1bmN0aW9uKCBldmVudCApIHsKCQlmdW5jdGlvbiBjaGVja0ZvY3VzKCkgewoJCQl2YXIgYWN0aXZlRWxlbWVudCA9ICQudWkuc2FmZUFjdGl2ZUVsZW1lbnQoIHRoaXMuZG9jdW1lbnRbIDAgXSApLAoJCQkJaXNBY3RpdmUgPSB0aGlzLnVpRGlhbG9nWyAwIF0gPT09IGFjdGl2ZUVsZW1lbnQgfHwKCQkJCQkkLmNvbnRhaW5zKCB0aGlzLnVpRGlhbG9nWyAwIF0sIGFjdGl2ZUVsZW1lbnQgKTsKCQkJaWYgKCAhaXNBY3RpdmUgKSB7CgkJCQl0aGlzLl9mb2N1c1RhYmJhYmxlKCk7CgkJCX0KCQl9CgkJZXZlbnQucHJldmVudERlZmF1bHQoKTsKCQljaGVja0ZvY3VzLmNhbGwoIHRoaXMgKTsKCgkJLy8gc3VwcG9ydDogSUUKCQkvLyBJRSA8PSA4IGRvZXNuJ3QgcHJldmVudCBtb3ZpbmcgZm9jdXMgZXZlbiB3aXRoIGV2ZW50LnByZXZlbnREZWZhdWx0KCkKCQkvLyBzbyB3ZSBjaGVjayBhZ2FpbiBsYXRlcgoJCXRoaXMuX2RlbGF5KCBjaGVja0ZvY3VzICk7Cgl9LAoKCV9jcmVhdGVXcmFwcGVyOiBmdW5jdGlvbigpIHsKCQl0aGlzLnVpRGlhbG9nID0gJCggIjxkaXY+IiApCgkJCS5oaWRlKCkKCQkJLmF0dHIoIHsKCgkJCQkvLyBTZXR0aW5nIHRhYkluZGV4IG1ha2VzIHRoZSBkaXYgZm9jdXNhYmxlCgkJCQl0YWJJbmRleDogLTEsCgkJCQlyb2xlOiAiZGlhbG9nIgoJCQl9ICkKCQkJLmFwcGVuZFRvKCB0aGlzLl9hcHBlbmRUbygpICk7CgoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLnVpRGlhbG9nLCAidWktZGlhbG9nIiwgInVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1mcm9udCIgKTsKCQl0aGlzLl9vbiggdGhpcy51aURpYWxvZywgewoJCQlrZXlkb3duOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJCQlpZiAoIHRoaXMub3B0aW9ucy5jbG9zZU9uRXNjYXBlICYmICFldmVudC5pc0RlZmF1bHRQcmV2ZW50ZWQoKSAmJiBldmVudC5rZXlDb2RlICYmCgkJCQkJCWV2ZW50LmtleUNvZGUgPT09ICQudWkua2V5Q29kZS5FU0NBUEUgKSB7CgkJCQkJZXZlbnQucHJldmVudERlZmF1bHQoKTsKCQkJCQl0aGlzLmNsb3NlKCBldmVudCApOwoJCQkJCXJldHVybjsKCQkJCX0KCgkJCQkvLyBQcmV2ZW50IHRhYmJpbmcgb3V0IG9mIGRpYWxvZ3MKCQkJCWlmICggZXZlbnQua2V5Q29kZSAhPT0gJC51aS5rZXlDb2RlLlRBQiB8fCBldmVudC5pc0RlZmF1bHRQcmV2ZW50ZWQoKSApIHsKCQkJCQlyZXR1cm47CgkJCQl9CgkJCQl2YXIgdGFiYmFibGVzID0gdGhpcy51aURpYWxvZy5maW5kKCAiOnRhYmJhYmxlIiApLAoJCQkJCWZpcnN0ID0gdGFiYmFibGVzLmZpbHRlciggIjpmaXJzdCIgKSwKCQkJCQlsYXN0ID0gdGFiYmFibGVzLmZpbHRlciggIjpsYXN0IiApOwoKCQkJCWlmICggKCBldmVudC50YXJnZXQgPT09IGxhc3RbIDAgXSB8fCBldmVudC50YXJnZXQgPT09IHRoaXMudWlEaWFsb2dbIDAgXSApICYmCgkJCQkJCSFldmVudC5zaGlmdEtleSApIHsKCQkJCQl0aGlzLl9kZWxheSggZnVuY3Rpb24oKSB7CgkJCQkJCWZpcnN0LnRyaWdnZXIoICJmb2N1cyIgKTsKCQkJCQl9ICk7CgkJCQkJZXZlbnQucHJldmVudERlZmF1bHQoKTsKCQkJCX0gZWxzZSBpZiAoICggZXZlbnQudGFyZ2V0ID09PSBmaXJzdFsgMCBdIHx8CgkJCQkJCWV2ZW50LnRhcmdldCA9PT0gdGhpcy51aURpYWxvZ1sgMCBdICkgJiYgZXZlbnQuc2hpZnRLZXkgKSB7CgkJCQkJdGhpcy5fZGVsYXkoIGZ1bmN0aW9uKCkgewoJCQkJCQlsYXN0LnRyaWdnZXIoICJmb2N1cyIgKTsKCQkJCQl9ICk7CgkJCQkJZXZlbnQucHJldmVudERlZmF1bHQoKTsKCQkJCX0KCQkJfSwKCQkJbW91c2Vkb3duOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJCQlpZiAoIHRoaXMuX21vdmVUb1RvcCggZXZlbnQgKSApIHsKCQkJCQl0aGlzLl9mb2N1c1RhYmJhYmxlKCk7CgkJCQl9CgkJCX0KCQl9ICk7CgoJCS8vIFdlIGFzc3VtZSB0aGF0IGFueSBleGlzdGluZyBhcmlhLWRlc2NyaWJlZGJ5IGF0dHJpYnV0ZSBtZWFucwoJCS8vIHRoYXQgdGhlIGRpYWxvZyBjb250ZW50IGlzIG1hcmtlZCB1cCBwcm9wZXJseQoJCS8vIG90aGVyd2lzZSB3ZSBicnV0ZSBmb3JjZSB0aGUgY29udGVudCBhcyB0aGUgZGVzY3JpcHRpb24KCQlpZiAoICF0aGlzLmVsZW1lbnQuZmluZCggIlthcmlhLWRlc2NyaWJlZGJ5XSIgKS5sZW5ndGggKSB7CgkJCXRoaXMudWlEaWFsb2cuYXR0ciggewoJCQkJImFyaWEtZGVzY3JpYmVkYnkiOiB0aGlzLmVsZW1lbnQudW5pcXVlSWQoKS5hdHRyKCAiaWQiICkKCQkJfSApOwoJCX0KCX0sCgoJX2NyZWF0ZVRpdGxlYmFyOiBmdW5jdGlvbigpIHsKCQl2YXIgdWlEaWFsb2dUaXRsZTsKCgkJdGhpcy51aURpYWxvZ1RpdGxlYmFyID0gJCggIjxkaXY+IiApOwoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLnVpRGlhbG9nVGl0bGViYXIsCgkJCSJ1aS1kaWFsb2ctdGl0bGViYXIiLCAidWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXgiICk7CgkJdGhpcy5fb24oIHRoaXMudWlEaWFsb2dUaXRsZWJhciwgewoJCQltb3VzZWRvd246IGZ1bmN0aW9uKCBldmVudCApIHsKCgkJCQkvLyBEb24ndCBwcmV2ZW50IGNsaWNrIG9uIGNsb3NlIGJ1dHRvbiAoIzg4MzgpCgkJCQkvLyBGb2N1c2luZyBhIGRpYWxvZyB0aGF0IGlzIHBhcnRpYWxseSBzY3JvbGxlZCBvdXQgb2YgdmlldwoJCQkJLy8gY2F1c2VzIHRoZSBicm93c2VyIHRvIHNjcm9sbCBpdCBpbnRvIHZpZXcsIHByZXZlbnRpbmcgdGhlIGNsaWNrIGV2ZW50CgkJCQlpZiAoICEkKCBldmVudC50YXJnZXQgKS5jbG9zZXN0KCAiLnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSIgKSApIHsKCgkJCQkJLy8gRGlhbG9nIGlzbid0IGdldHRpbmcgZm9jdXMgd2hlbiBkcmFnZ2luZyAoIzgwNjMpCgkJCQkJdGhpcy51aURpYWxvZy50cmlnZ2VyKCAiZm9jdXMiICk7CgkJCQl9CgkJCX0KCQl9ICk7CgoJCS8vIFN1cHBvcnQ6IElFCgkJLy8gVXNlIHR5cGU9ImJ1dHRvbiIgdG8gcHJldmVudCBlbnRlciBrZXlwcmVzc2VzIGluIHRleHRib3hlcyBmcm9tIGNsb3NpbmcgdGhlCgkJLy8gZGlhbG9nIGluIElFICgjOTMxMikKCQl0aGlzLnVpRGlhbG9nVGl0bGViYXJDbG9zZSA9ICQoICI8YnV0dG9uIHR5cGU9J2J1dHRvbic+PC9idXR0b24+IiApCgkJCS5idXR0b24oIHsKCQkJCWxhYmVsOiAkKCAiPGE+IiApLnRleHQoIHRoaXMub3B0aW9ucy5jbG9zZVRleHQgKS5odG1sKCksCgkJCQlpY29uOiAidWktaWNvbi1jbG9zZXRoaWNrIiwKCQkJCXNob3dMYWJlbDogZmFsc2UKCQkJfSApCgkJCS5hcHBlbmRUbyggdGhpcy51aURpYWxvZ1RpdGxlYmFyICk7CgoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLnVpRGlhbG9nVGl0bGViYXJDbG9zZSwgInVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSIgKTsKCQl0aGlzLl9vbiggdGhpcy51aURpYWxvZ1RpdGxlYmFyQ2xvc2UsIHsKCQkJY2xpY2s6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCQl0aGlzLmNsb3NlKCBldmVudCApOwoJCQl9CgkJfSApOwoKCQl1aURpYWxvZ1RpdGxlID0gJCggIjxzcGFuPiIgKS51bmlxdWVJZCgpLnByZXBlbmRUbyggdGhpcy51aURpYWxvZ1RpdGxlYmFyICk7CgkJdGhpcy5fYWRkQ2xhc3MoIHVpRGlhbG9nVGl0bGUsICJ1aS1kaWFsb2ctdGl0bGUiICk7CgkJdGhpcy5fdGl0bGUoIHVpRGlhbG9nVGl0bGUgKTsKCgkJdGhpcy51aURpYWxvZ1RpdGxlYmFyLnByZXBlbmRUbyggdGhpcy51aURpYWxvZyApOwoKCQl0aGlzLnVpRGlhbG9nLmF0dHIoIHsKCQkJImFyaWEtbGFiZWxsZWRieSI6IHVpRGlhbG9nVGl0bGUuYXR0ciggImlkIiApCgkJfSApOwoJfSwKCglfdGl0bGU6IGZ1bmN0aW9uKCB0aXRsZSApIHsKCQlpZiAoIHRoaXMub3B0aW9ucy50aXRsZSApIHsKCQkJdGl0bGUudGV4dCggdGhpcy5vcHRpb25zLnRpdGxlICk7CgkJfSBlbHNlIHsKCQkJdGl0bGUuaHRtbCggIiYjMTYwOyIgKTsKCQl9Cgl9LAoKCV9jcmVhdGVCdXR0b25QYW5lOiBmdW5jdGlvbigpIHsKCQl0aGlzLnVpRGlhbG9nQnV0dG9uUGFuZSA9ICQoICI8ZGl2PiIgKTsKCQl0aGlzLl9hZGRDbGFzcyggdGhpcy51aURpYWxvZ0J1dHRvblBhbmUsICJ1aS1kaWFsb2ctYnV0dG9ucGFuZSIsCgkJCSJ1aS13aWRnZXQtY29udGVudCB1aS1oZWxwZXItY2xlYXJmaXgiICk7CgoJCXRoaXMudWlCdXR0b25TZXQgPSAkKCAiPGRpdj4iICkKCQkJLmFwcGVuZFRvKCB0aGlzLnVpRGlhbG9nQnV0dG9uUGFuZSApOwoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLnVpQnV0dG9uU2V0LCAidWktZGlhbG9nLWJ1dHRvbnNldCIgKTsKCgkJdGhpcy5fY3JlYXRlQnV0dG9ucygpOwoJfSwKCglfY3JlYXRlQnV0dG9uczogZnVuY3Rpb24oKSB7CgkJdmFyIHRoYXQgPSB0aGlzLAoJCQlidXR0b25zID0gdGhpcy5vcHRpb25zLmJ1dHRvbnM7CgoJCS8vIElmIHdlIGFscmVhZHkgaGF2ZSBhIGJ1dHRvbiBwYW5lLCByZW1vdmUgaXQKCQl0aGlzLnVpRGlhbG9nQnV0dG9uUGFuZS5yZW1vdmUoKTsKCQl0aGlzLnVpQnV0dG9uU2V0LmVtcHR5KCk7CgoJCWlmICggJC5pc0VtcHR5T2JqZWN0KCBidXR0b25zICkgfHwgKCAkLmlzQXJyYXkoIGJ1dHRvbnMgKSAmJiAhYnV0dG9ucy5sZW5ndGggKSApIHsKCQkJdGhpcy5fcmVtb3ZlQ2xhc3MoIHRoaXMudWlEaWFsb2csICJ1aS1kaWFsb2ctYnV0dG9ucyIgKTsKCQkJcmV0dXJuOwoJCX0KCgkJJC5lYWNoKCBidXR0b25zLCBmdW5jdGlvbiggbmFtZSwgcHJvcHMgKSB7CgkJCXZhciBjbGljaywgYnV0dG9uT3B0aW9uczsKCQkJcHJvcHMgPSAkLmlzRnVuY3Rpb24oIHByb3BzICkgPwoJCQkJeyBjbGljazogcHJvcHMsIHRleHQ6IG5hbWUgfSA6CgkJCQlwcm9wczsKCgkJCS8vIERlZmF1bHQgdG8gYSBub24tc3VibWl0dGluZyBidXR0b24KCQkJcHJvcHMgPSAkLmV4dGVuZCggeyB0eXBlOiAiYnV0dG9uIiB9LCBwcm9wcyApOwoKCQkJLy8gQ2hhbmdlIHRoZSBjb250ZXh0IGZvciB0aGUgY2xpY2sgY2FsbGJhY2sgdG8gYmUgdGhlIG1haW4gZWxlbWVudAoJCQljbGljayA9IHByb3BzLmNsaWNrOwoJCQlidXR0b25PcHRpb25zID0gewoJCQkJaWNvbjogcHJvcHMuaWNvbiwKCQkJCWljb25Qb3NpdGlvbjogcHJvcHMuaWNvblBvc2l0aW9uLAoJCQkJc2hvd0xhYmVsOiBwcm9wcy5zaG93TGFiZWwsCgoJCQkJLy8gRGVwcmVjYXRlZCBvcHRpb25zCgkJCQlpY29uczogcHJvcHMuaWNvbnMsCgkJCQl0ZXh0OiBwcm9wcy50ZXh0CgkJCX07CgoJCQlkZWxldGUgcHJvcHMuY2xpY2s7CgkJCWRlbGV0ZSBwcm9wcy5pY29uOwoJCQlkZWxldGUgcHJvcHMuaWNvblBvc2l0aW9uOwoJCQlkZWxldGUgcHJvcHMuc2hvd0xhYmVsOwoKCQkJLy8gRGVwcmVjYXRlZCBvcHRpb25zCgkJCWRlbGV0ZSBwcm9wcy5pY29uczsKCQkJaWYgKCB0eXBlb2YgcHJvcHMudGV4dCA9PT0gImJvb2xlYW4iICkgewoJCQkJZGVsZXRlIHByb3BzLnRleHQ7CgkJCX0KCgkJCSQoICI8YnV0dG9uPjwvYnV0dG9uPiIsIHByb3BzICkKCQkJCS5idXR0b24oIGJ1dHRvbk9wdGlvbnMgKQoJCQkJLmFwcGVuZFRvKCB0aGF0LnVpQnV0dG9uU2V0ICkKCQkJCS5vbiggImNsaWNrIiwgZnVuY3Rpb24oKSB7CgkJCQkJY2xpY2suYXBwbHkoIHRoYXQuZWxlbWVudFsgMCBdLCBhcmd1bWVudHMgKTsKCQkJCX0gKTsKCQl9ICk7CgkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMudWlEaWFsb2csICJ1aS1kaWFsb2ctYnV0dG9ucyIgKTsKCQl0aGlzLnVpRGlhbG9nQnV0dG9uUGFuZS5hcHBlbmRUbyggdGhpcy51aURpYWxvZyApOwoJfSwKCglfbWFrZURyYWdnYWJsZTogZnVuY3Rpb24oKSB7CgkJdmFyIHRoYXQgPSB0aGlzLAoJCQlvcHRpb25zID0gdGhpcy5vcHRpb25zOwoKCQlmdW5jdGlvbiBmaWx0ZXJlZFVpKCB1aSApIHsKCQkJcmV0dXJuIHsKCQkJCXBvc2l0aW9uOiB1aS5wb3NpdGlvbiwKCQkJCW9mZnNldDogdWkub2Zmc2V0CgkJCX07CgkJfQoKCQl0aGlzLnVpRGlhbG9nLmRyYWdnYWJsZSggewoJCQljYW5jZWw6ICIudWktZGlhbG9nLWNvbnRlbnQsIC51aS1kaWFsb2ctdGl0bGViYXItY2xvc2UiLAoJCQloYW5kbGU6ICIudWktZGlhbG9nLXRpdGxlYmFyIiwKCQkJY29udGFpbm1lbnQ6ICJkb2N1bWVudCIsCgkJCXN0YXJ0OiBmdW5jdGlvbiggZXZlbnQsIHVpICkgewoJCQkJdGhhdC5fYWRkQ2xhc3MoICQoIHRoaXMgKSwgInVpLWRpYWxvZy1kcmFnZ2luZyIgKTsKCQkJCXRoYXQuX2Jsb2NrRnJhbWVzKCk7CgkJCQl0aGF0Ll90cmlnZ2VyKCAiZHJhZ1N0YXJ0IiwgZXZlbnQsIGZpbHRlcmVkVWkoIHVpICkgKTsKCQkJfSwKCQkJZHJhZzogZnVuY3Rpb24oIGV2ZW50LCB1aSApIHsKCQkJCXRoYXQuX3RyaWdnZXIoICJkcmFnIiwgZXZlbnQsIGZpbHRlcmVkVWkoIHVpICkgKTsKCQkJfSwKCQkJc3RvcDogZnVuY3Rpb24oIGV2ZW50LCB1aSApIHsKCQkJCXZhciBsZWZ0ID0gdWkub2Zmc2V0LmxlZnQgLSB0aGF0LmRvY3VtZW50LnNjcm9sbExlZnQoKSwKCQkJCQl0b3AgPSB1aS5vZmZzZXQudG9wIC0gdGhhdC5kb2N1bWVudC5zY3JvbGxUb3AoKTsKCgkJCQlvcHRpb25zLnBvc2l0aW9uID0gewoJCQkJCW15OiAibGVmdCB0b3AiLAoJCQkJCWF0OiAibGVmdCIgKyAoIGxlZnQgPj0gMCA/ICIrIiA6ICIiICkgKyBsZWZ0ICsgIiAiICsKCQkJCQkJInRvcCIgKyAoIHRvcCA+PSAwID8gIisiIDogIiIgKSArIHRvcCwKCQkJCQlvZjogdGhhdC53aW5kb3cKCQkJCX07CgkJCQl0aGF0Ll9yZW1vdmVDbGFzcyggJCggdGhpcyApLCAidWktZGlhbG9nLWRyYWdnaW5nIiApOwoJCQkJdGhhdC5fdW5ibG9ja0ZyYW1lcygpOwoJCQkJdGhhdC5fdHJpZ2dlciggImRyYWdTdG9wIiwgZXZlbnQsIGZpbHRlcmVkVWkoIHVpICkgKTsKCQkJfQoJCX0gKTsKCX0sCgoJX21ha2VSZXNpemFibGU6IGZ1bmN0aW9uKCkgewoJCXZhciB0aGF0ID0gdGhpcywKCQkJb3B0aW9ucyA9IHRoaXMub3B0aW9ucywKCQkJaGFuZGxlcyA9IG9wdGlvbnMucmVzaXphYmxlLAoKCQkJLy8gLnVpLXJlc2l6YWJsZSBoYXMgcG9zaXRpb246IHJlbGF0aXZlIGRlZmluZWQgaW4gdGhlIHN0eWxlc2hlZXQKCQkJLy8gYnV0IGRpYWxvZ3MgaGF2ZSB0byB1c2UgYWJzb2x1dGUgb3IgZml4ZWQgcG9zaXRpb25pbmcKCQkJcG9zaXRpb24gPSB0aGlzLnVpRGlhbG9nLmNzcyggInBvc2l0aW9uIiApLAoJCQlyZXNpemVIYW5kbGVzID0gdHlwZW9mIGhhbmRsZXMgPT09ICJzdHJpbmciID8KCQkJCWhhbmRsZXMgOgoJCQkJIm4sZSxzLHcsc2Usc3csbmUsbnciOwoKCQlmdW5jdGlvbiBmaWx0ZXJlZFVpKCB1aSApIHsKCQkJcmV0dXJuIHsKCQkJCW9yaWdpbmFsUG9zaXRpb246IHVpLm9yaWdpbmFsUG9zaXRpb24sCgkJCQlvcmlnaW5hbFNpemU6IHVpLm9yaWdpbmFsU2l6ZSwKCQkJCXBvc2l0aW9uOiB1aS5wb3NpdGlvbiwKCQkJCXNpemU6IHVpLnNpemUKCQkJfTsKCQl9CgoJCXRoaXMudWlEaWFsb2cucmVzaXphYmxlKCB7CgkJCWNhbmNlbDogIi51aS1kaWFsb2ctY29udGVudCIsCgkJCWNvbnRhaW5tZW50OiAiZG9jdW1lbnQiLAoJCQlhbHNvUmVzaXplOiB0aGlzLmVsZW1lbnQsCgkJCW1heFdpZHRoOiBvcHRpb25zLm1heFdpZHRoLAoJCQltYXhIZWlnaHQ6IG9wdGlvbnMubWF4SGVpZ2h0LAoJCQltaW5XaWR0aDogb3B0aW9ucy5taW5XaWR0aCwKCQkJbWluSGVpZ2h0OiB0aGlzLl9taW5IZWlnaHQoKSwKCQkJaGFuZGxlczogcmVzaXplSGFuZGxlcywKCQkJc3RhcnQ6IGZ1bmN0aW9uKCBldmVudCwgdWkgKSB7CgkJCQl0aGF0Ll9hZGRDbGFzcyggJCggdGhpcyApLCAidWktZGlhbG9nLXJlc2l6aW5nIiApOwoJCQkJdGhhdC5fYmxvY2tGcmFtZXMoKTsKCQkJCXRoYXQuX3RyaWdnZXIoICJyZXNpemVTdGFydCIsIGV2ZW50LCBmaWx0ZXJlZFVpKCB1aSApICk7CgkJCX0sCgkJCXJlc2l6ZTogZnVuY3Rpb24oIGV2ZW50LCB1aSApIHsKCQkJCXRoYXQuX3RyaWdnZXIoICJyZXNpemUiLCBldmVudCwgZmlsdGVyZWRVaSggdWkgKSApOwoJCQl9LAoJCQlzdG9wOiBmdW5jdGlvbiggZXZlbnQsIHVpICkgewoJCQkJdmFyIG9mZnNldCA9IHRoYXQudWlEaWFsb2cub2Zmc2V0KCksCgkJCQkJbGVmdCA9IG9mZnNldC5sZWZ0IC0gdGhhdC5kb2N1bWVudC5zY3JvbGxMZWZ0KCksCgkJCQkJdG9wID0gb2Zmc2V0LnRvcCAtIHRoYXQuZG9jdW1lbnQuc2Nyb2xsVG9wKCk7CgoJCQkJb3B0aW9ucy5oZWlnaHQgPSB0aGF0LnVpRGlhbG9nLmhlaWdodCgpOwoJCQkJb3B0aW9ucy53aWR0aCA9IHRoYXQudWlEaWFsb2cud2lkdGgoKTsKCQkJCW9wdGlvbnMucG9zaXRpb24gPSB7CgkJCQkJbXk6ICJsZWZ0IHRvcCIsCgkJCQkJYXQ6ICJsZWZ0IiArICggbGVmdCA+PSAwID8gIisiIDogIiIgKSArIGxlZnQgKyAiICIgKwoJCQkJCQkidG9wIiArICggdG9wID49IDAgPyAiKyIgOiAiIiApICsgdG9wLAoJCQkJCW9mOiB0aGF0LndpbmRvdwoJCQkJfTsKCQkJCXRoYXQuX3JlbW92ZUNsYXNzKCAkKCB0aGlzICksICJ1aS1kaWFsb2ctcmVzaXppbmciICk7CgkJCQl0aGF0Ll91bmJsb2NrRnJhbWVzKCk7CgkJCQl0aGF0Ll90cmlnZ2VyKCAicmVzaXplU3RvcCIsIGV2ZW50LCBmaWx0ZXJlZFVpKCB1aSApICk7CgkJCX0KCQl9ICkKCQkJLmNzcyggInBvc2l0aW9uIiwgcG9zaXRpb24gKTsKCX0sCgoJX3RyYWNrRm9jdXM6IGZ1bmN0aW9uKCkgewoJCXRoaXMuX29uKCB0aGlzLndpZGdldCgpLCB7CgkJCWZvY3VzaW46IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCXRoaXMuX21ha2VGb2N1c1RhcmdldCgpOwoJCQkJdGhpcy5fZm9jdXNlZEVsZW1lbnQgPSAkKCBldmVudC50YXJnZXQgKTsKCQkJfQoJCX0gKTsKCX0sCgoJX21ha2VGb2N1c1RhcmdldDogZnVuY3Rpb24oKSB7CgkJdGhpcy5fdW50cmFja0luc3RhbmNlKCk7CgkJdGhpcy5fdHJhY2tpbmdJbnN0YW5jZXMoKS51bnNoaWZ0KCB0aGlzICk7Cgl9LAoKCV91bnRyYWNrSW5zdGFuY2U6IGZ1bmN0aW9uKCkgewoJCXZhciBpbnN0YW5jZXMgPSB0aGlzLl90cmFja2luZ0luc3RhbmNlcygpLAoJCQlleGlzdHMgPSAkLmluQXJyYXkoIHRoaXMsIGluc3RhbmNlcyApOwoJCWlmICggZXhpc3RzICE9PSAtMSApIHsKCQkJaW5zdGFuY2VzLnNwbGljZSggZXhpc3RzLCAxICk7CgkJfQoJfSwKCglfdHJhY2tpbmdJbnN0YW5jZXM6IGZ1bmN0aW9uKCkgewoJCXZhciBpbnN0YW5jZXMgPSB0aGlzLmRvY3VtZW50LmRhdGEoICJ1aS1kaWFsb2ctaW5zdGFuY2VzIiApOwoJCWlmICggIWluc3RhbmNlcyApIHsKCQkJaW5zdGFuY2VzID0gW107CgkJCXRoaXMuZG9jdW1lbnQuZGF0YSggInVpLWRpYWxvZy1pbnN0YW5jZXMiLCBpbnN0YW5jZXMgKTsKCQl9CgkJcmV0dXJuIGluc3RhbmNlczsKCX0sCgoJX21pbkhlaWdodDogZnVuY3Rpb24oKSB7CgkJdmFyIG9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7CgoJCXJldHVybiBvcHRpb25zLmhlaWdodCA9PT0gImF1dG8iID8KCQkJb3B0aW9ucy5taW5IZWlnaHQgOgoJCQlNYXRoLm1pbiggb3B0aW9ucy5taW5IZWlnaHQsIG9wdGlvbnMuaGVpZ2h0ICk7Cgl9LAoKCV9wb3NpdGlvbjogZnVuY3Rpb24oKSB7CgoJCS8vIE5lZWQgdG8gc2hvdyB0aGUgZGlhbG9nIHRvIGdldCB0aGUgYWN0dWFsIG9mZnNldCBpbiB0aGUgcG9zaXRpb24gcGx1Z2luCgkJdmFyIGlzVmlzaWJsZSA9IHRoaXMudWlEaWFsb2cuaXMoICI6dmlzaWJsZSIgKTsKCQlpZiAoICFpc1Zpc2libGUgKSB7CgkJCXRoaXMudWlEaWFsb2cuc2hvdygpOwoJCX0KCQl0aGlzLnVpRGlhbG9nLnBvc2l0aW9uKCB0aGlzLm9wdGlvbnMucG9zaXRpb24gKTsKCQlpZiAoICFpc1Zpc2libGUgKSB7CgkJCXRoaXMudWlEaWFsb2cuaGlkZSgpOwoJCX0KCX0sCgoJX3NldE9wdGlvbnM6IGZ1bmN0aW9uKCBvcHRpb25zICkgewoJCXZhciB0aGF0ID0gdGhpcywKCQkJcmVzaXplID0gZmFsc2UsCgkJCXJlc2l6YWJsZU9wdGlvbnMgPSB7fTsKCgkJJC5lYWNoKCBvcHRpb25zLCBmdW5jdGlvbigga2V5LCB2YWx1ZSApIHsKCQkJdGhhdC5fc2V0T3B0aW9uKCBrZXksIHZhbHVlICk7CgoJCQlpZiAoIGtleSBpbiB0aGF0LnNpemVSZWxhdGVkT3B0aW9ucyApIHsKCQkJCXJlc2l6ZSA9IHRydWU7CgkJCX0KCQkJaWYgKCBrZXkgaW4gdGhhdC5yZXNpemFibGVSZWxhdGVkT3B0aW9ucyApIHsKCQkJCXJlc2l6YWJsZU9wdGlvbnNbIGtleSBdID0gdmFsdWU7CgkJCX0KCQl9ICk7CgoJCWlmICggcmVzaXplICkgewoJCQl0aGlzLl9zaXplKCk7CgkJCXRoaXMuX3Bvc2l0aW9uKCk7CgkJfQoJCWlmICggdGhpcy51aURpYWxvZy5pcyggIjpkYXRhKHVpLXJlc2l6YWJsZSkiICkgKSB7CgkJCXRoaXMudWlEaWFsb2cucmVzaXphYmxlKCAib3B0aW9uIiwgcmVzaXphYmxlT3B0aW9ucyApOwoJCX0KCX0sCgoJX3NldE9wdGlvbjogZnVuY3Rpb24oIGtleSwgdmFsdWUgKSB7CgkJdmFyIGlzRHJhZ2dhYmxlLCBpc1Jlc2l6YWJsZSwKCQkJdWlEaWFsb2cgPSB0aGlzLnVpRGlhbG9nOwoKCQlpZiAoIGtleSA9PT0gImRpc2FibGVkIiApIHsKCQkJcmV0dXJuOwoJCX0KCgkJdGhpcy5fc3VwZXIoIGtleSwgdmFsdWUgKTsKCgkJaWYgKCBrZXkgPT09ICJhcHBlbmRUbyIgKSB7CgkJCXRoaXMudWlEaWFsb2cuYXBwZW5kVG8oIHRoaXMuX2FwcGVuZFRvKCkgKTsKCQl9CgoJCWlmICgga2V5ID09PSAiYnV0dG9ucyIgKSB7CgkJCXRoaXMuX2NyZWF0ZUJ1dHRvbnMoKTsKCQl9CgoJCWlmICgga2V5ID09PSAiY2xvc2VUZXh0IiApIHsKCQkJdGhpcy51aURpYWxvZ1RpdGxlYmFyQ2xvc2UuYnV0dG9uKCB7CgoJCQkJLy8gRW5zdXJlIHRoYXQgd2UgYWx3YXlzIHBhc3MgYSBzdHJpbmcKCQkJCWxhYmVsOiAkKCAiPGE+IiApLnRleHQoICIiICsgdGhpcy5vcHRpb25zLmNsb3NlVGV4dCApLmh0bWwoKQoJCQl9ICk7CgkJfQoKCQlpZiAoIGtleSA9PT0gImRyYWdnYWJsZSIgKSB7CgkJCWlzRHJhZ2dhYmxlID0gdWlEaWFsb2cuaXMoICI6ZGF0YSh1aS1kcmFnZ2FibGUpIiApOwoJCQlpZiAoIGlzRHJhZ2dhYmxlICYmICF2YWx1ZSApIHsKCQkJCXVpRGlhbG9nLmRyYWdnYWJsZSggImRlc3Ryb3kiICk7CgkJCX0KCgkJCWlmICggIWlzRHJhZ2dhYmxlICYmIHZhbHVlICkgewoJCQkJdGhpcy5fbWFrZURyYWdnYWJsZSgpOwoJCQl9CgkJfQoKCQlpZiAoIGtleSA9PT0gInBvc2l0aW9uIiApIHsKCQkJdGhpcy5fcG9zaXRpb24oKTsKCQl9CgoJCWlmICgga2V5ID09PSAicmVzaXphYmxlIiApIHsKCgkJCS8vIGN1cnJlbnRseSByZXNpemFibGUsIGJlY29taW5nIG5vbi1yZXNpemFibGUKCQkJaXNSZXNpemFibGUgPSB1aURpYWxvZy5pcyggIjpkYXRhKHVpLXJlc2l6YWJsZSkiICk7CgkJCWlmICggaXNSZXNpemFibGUgJiYgIXZhbHVlICkgewoJCQkJdWlEaWFsb2cucmVzaXphYmxlKCAiZGVzdHJveSIgKTsKCQkJfQoKCQkJLy8gQ3VycmVudGx5IHJlc2l6YWJsZSwgY2hhbmdpbmcgaGFuZGxlcwoJCQlpZiAoIGlzUmVzaXphYmxlICYmIHR5cGVvZiB2YWx1ZSA9PT0gInN0cmluZyIgKSB7CgkJCQl1aURpYWxvZy5yZXNpemFibGUoICJvcHRpb24iLCAiaGFuZGxlcyIsIHZhbHVlICk7CgkJCX0KCgkJCS8vIEN1cnJlbnRseSBub24tcmVzaXphYmxlLCBiZWNvbWluZyByZXNpemFibGUKCQkJaWYgKCAhaXNSZXNpemFibGUgJiYgdmFsdWUgIT09IGZhbHNlICkgewoJCQkJdGhpcy5fbWFrZVJlc2l6YWJsZSgpOwoJCQl9CgkJfQoKCQlpZiAoIGtleSA9PT0gInRpdGxlIiApIHsKCQkJdGhpcy5fdGl0bGUoIHRoaXMudWlEaWFsb2dUaXRsZWJhci5maW5kKCAiLnVpLWRpYWxvZy10aXRsZSIgKSApOwoJCX0KCX0sCgoJX3NpemU6IGZ1bmN0aW9uKCkgewoKCQkvLyBJZiB0aGUgdXNlciBoYXMgcmVzaXplZCB0aGUgZGlhbG9nLCB0aGUgLnVpLWRpYWxvZyBhbmQgLnVpLWRpYWxvZy1jb250ZW50CgkJLy8gZGl2cyB3aWxsIGJvdGggaGF2ZSB3aWR0aCBhbmQgaGVpZ2h0IHNldCwgc28gd2UgbmVlZCB0byByZXNldCB0aGVtCgkJdmFyIG5vbkNvbnRlbnRIZWlnaHQsIG1pbkNvbnRlbnRIZWlnaHQsIG1heENvbnRlbnRIZWlnaHQsCgkJCW9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7CgoJCS8vIFJlc2V0IGNvbnRlbnQgc2l6aW5nCgkJdGhpcy5lbGVtZW50LnNob3coKS5jc3MoIHsKCQkJd2lkdGg6ICJhdXRvIiwKCQkJbWluSGVpZ2h0OiAwLAoJCQltYXhIZWlnaHQ6ICJub25lIiwKCQkJaGVpZ2h0OiAwCgkJfSApOwoKCQlpZiAoIG9wdGlvbnMubWluV2lkdGggPiBvcHRpb25zLndpZHRoICkgewoJCQlvcHRpb25zLndpZHRoID0gb3B0aW9ucy5taW5XaWR0aDsKCQl9CgoJCS8vIFJlc2V0IHdyYXBwZXIgc2l6aW5nCgkJLy8gZGV0ZXJtaW5lIHRoZSBoZWlnaHQgb2YgYWxsIHRoZSBub24tY29udGVudCBlbGVtZW50cwoJCW5vbkNvbnRlbnRIZWlnaHQgPSB0aGlzLnVpRGlhbG9nLmNzcyggewoJCQloZWlnaHQ6ICJhdXRvIiwKCQkJd2lkdGg6IG9wdGlvbnMud2lkdGgKCQl9ICkKCQkJLm91dGVySGVpZ2h0KCk7CgkJbWluQ29udGVudEhlaWdodCA9IE1hdGgubWF4KCAwLCBvcHRpb25zLm1pbkhlaWdodCAtIG5vbkNvbnRlbnRIZWlnaHQgKTsKCQltYXhDb250ZW50SGVpZ2h0ID0gdHlwZW9mIG9wdGlvbnMubWF4SGVpZ2h0ID09PSAibnVtYmVyIiA/CgkJCU1hdGgubWF4KCAwLCBvcHRpb25zLm1heEhlaWdodCAtIG5vbkNvbnRlbnRIZWlnaHQgKSA6CgkJCSJub25lIjsKCgkJaWYgKCBvcHRpb25zLmhlaWdodCA9PT0gImF1dG8iICkgewoJCQl0aGlzLmVsZW1lbnQuY3NzKCB7CgkJCQltaW5IZWlnaHQ6IG1pbkNvbnRlbnRIZWlnaHQsCgkJCQltYXhIZWlnaHQ6IG1heENvbnRlbnRIZWlnaHQsCgkJCQloZWlnaHQ6ICJhdXRvIgoJCQl9ICk7CgkJfSBlbHNlIHsKCQkJdGhpcy5lbGVtZW50LmhlaWdodCggTWF0aC5tYXgoIDAsIG9wdGlvbnMuaGVpZ2h0IC0gbm9uQ29udGVudEhlaWdodCApICk7CgkJfQoKCQlpZiAoIHRoaXMudWlEaWFsb2cuaXMoICI6ZGF0YSh1aS1yZXNpemFibGUpIiApICkgewoJCQl0aGlzLnVpRGlhbG9nLnJlc2l6YWJsZSggIm9wdGlvbiIsICJtaW5IZWlnaHQiLCB0aGlzLl9taW5IZWlnaHQoKSApOwoJCX0KCX0sCgoJX2Jsb2NrRnJhbWVzOiBmdW5jdGlvbigpIHsKCQl0aGlzLmlmcmFtZUJsb2NrcyA9IHRoaXMuZG9jdW1lbnQuZmluZCggImlmcmFtZSIgKS5tYXAoIGZ1bmN0aW9uKCkgewoJCQl2YXIgaWZyYW1lID0gJCggdGhpcyApOwoKCQkJcmV0dXJuICQoICI8ZGl2PiIgKQoJCQkJLmNzcyggewoJCQkJCXBvc2l0aW9uOiAiYWJzb2x1dGUiLAoJCQkJCXdpZHRoOiBpZnJhbWUub3V0ZXJXaWR0aCgpLAoJCQkJCWhlaWdodDogaWZyYW1lLm91dGVySGVpZ2h0KCkKCQkJCX0gKQoJCQkJLmFwcGVuZFRvKCBpZnJhbWUucGFyZW50KCkgKQoJCQkJLm9mZnNldCggaWZyYW1lLm9mZnNldCgpIClbIDAgXTsKCQl9ICk7Cgl9LAoKCV91bmJsb2NrRnJhbWVzOiBmdW5jdGlvbigpIHsKCQlpZiAoIHRoaXMuaWZyYW1lQmxvY2tzICkgewoJCQl0aGlzLmlmcmFtZUJsb2Nrcy5yZW1vdmUoKTsKCQkJZGVsZXRlIHRoaXMuaWZyYW1lQmxvY2tzOwoJCX0KCX0sCgoJX2FsbG93SW50ZXJhY3Rpb246IGZ1bmN0aW9uKCBldmVudCApIHsKCQlpZiAoICQoIGV2ZW50LnRhcmdldCApLmNsb3Nlc3QoICIudWktZGlhbG9nIiApLmxlbmd0aCApIHsKCQkJcmV0dXJuIHRydWU7CgkJfQoKCQkvLyBUT0RPOiBSZW1vdmUgaGFjayB3aGVuIGRhdGVwaWNrZXIgaW1wbGVtZW50cwoJCS8vIHRoZSAudWktZnJvbnQgbG9naWMgKCM4OTg5KQoJCXJldHVybiAhISQoIGV2ZW50LnRhcmdldCApLmNsb3Nlc3QoICIudWktZGF0ZXBpY2tlciIgKS5sZW5ndGg7Cgl9LAoKCV9jcmVhdGVPdmVybGF5OiBmdW5jdGlvbigpIHsKCQlpZiAoICF0aGlzLm9wdGlvbnMubW9kYWwgKSB7CgkJCXJldHVybjsKCQl9CgoJCS8vIFdlIHVzZSBhIGRlbGF5IGluIGNhc2UgdGhlIG92ZXJsYXkgaXMgY3JlYXRlZCBmcm9tIGFuCgkJLy8gZXZlbnQgdGhhdCB3ZSdyZSBnb2luZyB0byBiZSBjYW5jZWxsaW5nICgjMjgwNCkKCQl2YXIgaXNPcGVuaW5nID0gdHJ1ZTsKCQl0aGlzLl9kZWxheSggZnVuY3Rpb24oKSB7CgkJCWlzT3BlbmluZyA9IGZhbHNlOwoJCX0gKTsKCgkJaWYgKCAhdGhpcy5kb2N1bWVudC5kYXRhKCAidWktZGlhbG9nLW92ZXJsYXlzIiApICkgewoKCQkJLy8gUHJldmVudCB1c2Ugb2YgYW5jaG9ycyBhbmQgaW5wdXRzCgkJCS8vIFVzaW5nIF9vbigpIGZvciBhbiBldmVudCBoYW5kbGVyIHNoYXJlZCBhY3Jvc3MgbWFueSBpbnN0YW5jZXMgaXMKCQkJLy8gc2FmZSBiZWNhdXNlIHRoZSBkaWFsb2dzIHN0YWNrIGFuZCBtdXN0IGJlIGNsb3NlZCBpbiByZXZlcnNlIG9yZGVyCgkJCXRoaXMuX29uKCB0aGlzLmRvY3VtZW50LCB7CgkJCQlmb2N1c2luOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJCQkJaWYgKCBpc09wZW5pbmcgKSB7CgkJCQkJCXJldHVybjsKCQkJCQl9CgoJCQkJCWlmICggIXRoaXMuX2FsbG93SW50ZXJhY3Rpb24oIGV2ZW50ICkgKSB7CgkJCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCQkJCXRoaXMuX3RyYWNraW5nSW5zdGFuY2VzKClbIDAgXS5fZm9jdXNUYWJiYWJsZSgpOwoJCQkJCX0KCQkJCX0KCQkJfSApOwoJCX0KCgkJdGhpcy5vdmVybGF5ID0gJCggIjxkaXY+IiApCgkJCS5hcHBlbmRUbyggdGhpcy5fYXBwZW5kVG8oKSApOwoKCQl0aGlzLl9hZGRDbGFzcyggdGhpcy5vdmVybGF5LCBudWxsLCAidWktd2lkZ2V0LW92ZXJsYXkgdWktZnJvbnQiICk7CgkJdGhpcy5fb24oIHRoaXMub3ZlcmxheSwgewoJCQltb3VzZWRvd246ICJfa2VlcEZvY3VzIgoJCX0gKTsKCQl0aGlzLmRvY3VtZW50LmRhdGEoICJ1aS1kaWFsb2ctb3ZlcmxheXMiLAoJCQkoIHRoaXMuZG9jdW1lbnQuZGF0YSggInVpLWRpYWxvZy1vdmVybGF5cyIgKSB8fCAwICkgKyAxICk7Cgl9LAoKCV9kZXN0cm95T3ZlcmxheTogZnVuY3Rpb24oKSB7CgkJaWYgKCAhdGhpcy5vcHRpb25zLm1vZGFsICkgewoJCQlyZXR1cm47CgkJfQoKCQlpZiAoIHRoaXMub3ZlcmxheSApIHsKCQkJdmFyIG92ZXJsYXlzID0gdGhpcy5kb2N1bWVudC5kYXRhKCAidWktZGlhbG9nLW92ZXJsYXlzIiApIC0gMTsKCgkJCWlmICggIW92ZXJsYXlzICkgewoJCQkJdGhpcy5fb2ZmKCB0aGlzLmRvY3VtZW50LCAiZm9jdXNpbiIgKTsKCQkJCXRoaXMuZG9jdW1lbnQucmVtb3ZlRGF0YSggInVpLWRpYWxvZy1vdmVybGF5cyIgKTsKCQkJfSBlbHNlIHsKCQkJCXRoaXMuZG9jdW1lbnQuZGF0YSggInVpLWRpYWxvZy1vdmVybGF5cyIsIG92ZXJsYXlzICk7CgkJCX0KCgkJCXRoaXMub3ZlcmxheS5yZW1vdmUoKTsKCQkJdGhpcy5vdmVybGF5ID0gbnVsbDsKCQl9Cgl9Cn0gKTsKCi8vIERFUFJFQ0FURUQKLy8gVE9ETzogc3dpdGNoIHJldHVybiBiYWNrIHRvIHdpZGdldCBkZWNsYXJhdGlvbiBhdCB0b3Agb2YgZmlsZSB3aGVuIHRoaXMgaXMgcmVtb3ZlZAppZiAoICQudWlCYWNrQ29tcGF0ICE9PSBmYWxzZSApIHsKCgkvLyBCYWNrY29tcGF0IGZvciBkaWFsb2dDbGFzcyBvcHRpb24KCSQud2lkZ2V0KCAidWkuZGlhbG9nIiwgJC51aS5kaWFsb2csIHsKCQlvcHRpb25zOiB7CgkJCWRpYWxvZ0NsYXNzOiAiIgoJCX0sCgkJX2NyZWF0ZVdyYXBwZXI6IGZ1bmN0aW9uKCkgewoJCQl0aGlzLl9zdXBlcigpOwoJCQl0aGlzLnVpRGlhbG9nLmFkZENsYXNzKCB0aGlzLm9wdGlvbnMuZGlhbG9nQ2xhc3MgKTsKCQl9LAoJCV9zZXRPcHRpb246IGZ1bmN0aW9uKCBrZXksIHZhbHVlICkgewoJCQlpZiAoIGtleSA9PT0gImRpYWxvZ0NsYXNzIiApIHsKCQkJCXRoaXMudWlEaWFsb2cKCQkJCQkucmVtb3ZlQ2xhc3MoIHRoaXMub3B0aW9ucy5kaWFsb2dDbGFzcyApCgkJCQkJLmFkZENsYXNzKCB2YWx1ZSApOwoJCQl9CgkJCXRoaXMuX3N1cGVyQXBwbHkoIGFyZ3VtZW50cyApOwoJCX0KCX0gKTsKfQoKdmFyIHdpZGdldHNEaWFsb2cgPSAkLnVpLmRpYWxvZzsKCgovKiEKICogalF1ZXJ5IFVJIFByb2dyZXNzYmFyIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogUHJvZ3Jlc3NiYXIKLy8+Pmdyb3VwOiBXaWRnZXRzCi8vIGpzY3M6ZGlzYWJsZSBtYXhpbXVtTGluZUxlbmd0aAovLz4+ZGVzY3JpcHRpb246IERpc3BsYXlzIGEgc3RhdHVzIGluZGljYXRvciBmb3IgbG9hZGluZyBzdGF0ZSwgc3RhbmRhcmQgcGVyY2VudGFnZSwgYW5kIG90aGVyIHByb2dyZXNzIGluZGljYXRvcnMuCi8vIGpzY3M6ZW5hYmxlIG1heGltdW1MaW5lTGVuZ3RoCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9wcm9ncmVzc2Jhci8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL3Byb2dyZXNzYmFyLwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvY29yZS5jc3MKLy8+PmNzcy5zdHJ1Y3R1cmU6IC4uLy4uL3RoZW1lcy9iYXNlL3Byb2dyZXNzYmFyLmNzcwovLz4+Y3NzLnRoZW1lOiAuLi8uLi90aGVtZXMvYmFzZS90aGVtZS5jc3MKCgoKdmFyIHdpZGdldHNQcm9ncmVzc2JhciA9ICQud2lkZ2V0KCAidWkucHJvZ3Jlc3NiYXIiLCB7Cgl2ZXJzaW9uOiAiMS4xMi4xIiwKCW9wdGlvbnM6IHsKCQljbGFzc2VzOiB7CgkJCSJ1aS1wcm9ncmVzc2JhciI6ICJ1aS1jb3JuZXItYWxsIiwKCQkJInVpLXByb2dyZXNzYmFyLXZhbHVlIjogInVpLWNvcm5lci1sZWZ0IiwKCQkJInVpLXByb2dyZXNzYmFyLWNvbXBsZXRlIjogInVpLWNvcm5lci1yaWdodCIKCQl9LAoJCW1heDogMTAwLAoJCXZhbHVlOiAwLAoKCQljaGFuZ2U6IG51bGwsCgkJY29tcGxldGU6IG51bGwKCX0sCgoJbWluOiAwLAoKCV9jcmVhdGU6IGZ1bmN0aW9uKCkgewoKCQkvLyBDb25zdHJhaW4gaW5pdGlhbCB2YWx1ZQoJCXRoaXMub2xkVmFsdWUgPSB0aGlzLm9wdGlvbnMudmFsdWUgPSB0aGlzLl9jb25zdHJhaW5lZFZhbHVlKCk7CgoJCXRoaXMuZWxlbWVudC5hdHRyKCB7CgoJCQkvLyBPbmx5IHNldCBzdGF0aWMgdmFsdWVzOyBhcmlhLXZhbHVlbm93IGFuZCBhcmlhLXZhbHVlbWF4IGFyZQoJCQkvLyBzZXQgaW5zaWRlIF9yZWZyZXNoVmFsdWUoKQoJCQlyb2xlOiAicHJvZ3Jlc3NiYXIiLAoJCQkiYXJpYS12YWx1ZW1pbiI6IHRoaXMubWluCgkJfSApOwoJCXRoaXMuX2FkZENsYXNzKCAidWktcHJvZ3Jlc3NiYXIiLCAidWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IiApOwoKCQl0aGlzLnZhbHVlRGl2ID0gJCggIjxkaXY+IiApLmFwcGVuZFRvKCB0aGlzLmVsZW1lbnQgKTsKCQl0aGlzLl9hZGRDbGFzcyggdGhpcy52YWx1ZURpdiwgInVpLXByb2dyZXNzYmFyLXZhbHVlIiwgInVpLXdpZGdldC1oZWFkZXIiICk7CgkJdGhpcy5fcmVmcmVzaFZhbHVlKCk7Cgl9LAoKCV9kZXN0cm95OiBmdW5jdGlvbigpIHsKCQl0aGlzLmVsZW1lbnQucmVtb3ZlQXR0ciggInJvbGUgYXJpYS12YWx1ZW1pbiBhcmlhLXZhbHVlbWF4IGFyaWEtdmFsdWVub3ciICk7CgoJCXRoaXMudmFsdWVEaXYucmVtb3ZlKCk7Cgl9LAoKCXZhbHVlOiBmdW5jdGlvbiggbmV3VmFsdWUgKSB7CgkJaWYgKCBuZXdWYWx1ZSA9PT0gdW5kZWZpbmVkICkgewoJCQlyZXR1cm4gdGhpcy5vcHRpb25zLnZhbHVlOwoJCX0KCgkJdGhpcy5vcHRpb25zLnZhbHVlID0gdGhpcy5fY29uc3RyYWluZWRWYWx1ZSggbmV3VmFsdWUgKTsKCQl0aGlzLl9yZWZyZXNoVmFsdWUoKTsKCX0sCgoJX2NvbnN0cmFpbmVkVmFsdWU6IGZ1bmN0aW9uKCBuZXdWYWx1ZSApIHsKCQlpZiAoIG5ld1ZhbHVlID09PSB1bmRlZmluZWQgKSB7CgkJCW5ld1ZhbHVlID0gdGhpcy5vcHRpb25zLnZhbHVlOwoJCX0KCgkJdGhpcy5pbmRldGVybWluYXRlID0gbmV3VmFsdWUgPT09IGZhbHNlOwoKCQkvLyBTYW5pdGl6ZSB2YWx1ZQoJCWlmICggdHlwZW9mIG5ld1ZhbHVlICE9PSAibnVtYmVyIiApIHsKCQkJbmV3VmFsdWUgPSAwOwoJCX0KCgkJcmV0dXJuIHRoaXMuaW5kZXRlcm1pbmF0ZSA/IGZhbHNlIDoKCQkJTWF0aC5taW4oIHRoaXMub3B0aW9ucy5tYXgsIE1hdGgubWF4KCB0aGlzLm1pbiwgbmV3VmFsdWUgKSApOwoJfSwKCglfc2V0T3B0aW9uczogZnVuY3Rpb24oIG9wdGlvbnMgKSB7CgoJCS8vIEVuc3VyZSAidmFsdWUiIG9wdGlvbiBpcyBzZXQgYWZ0ZXIgb3RoZXIgdmFsdWVzIChsaWtlIG1heCkKCQl2YXIgdmFsdWUgPSBvcHRpb25zLnZhbHVlOwoJCWRlbGV0ZSBvcHRpb25zLnZhbHVlOwoKCQl0aGlzLl9zdXBlciggb3B0aW9ucyApOwoKCQl0aGlzLm9wdGlvbnMudmFsdWUgPSB0aGlzLl9jb25zdHJhaW5lZFZhbHVlKCB2YWx1ZSApOwoJCXRoaXMuX3JlZnJlc2hWYWx1ZSgpOwoJfSwKCglfc2V0T3B0aW9uOiBmdW5jdGlvbigga2V5LCB2YWx1ZSApIHsKCQlpZiAoIGtleSA9PT0gIm1heCIgKSB7CgoJCQkvLyBEb24ndCBhbGxvdyBhIG1heCBsZXNzIHRoYW4gbWluCgkJCXZhbHVlID0gTWF0aC5tYXgoIHRoaXMubWluLCB2YWx1ZSApOwoJCX0KCQl0aGlzLl9zdXBlcigga2V5LCB2YWx1ZSApOwoJfSwKCglfc2V0T3B0aW9uRGlzYWJsZWQ6IGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQl0aGlzLl9zdXBlciggdmFsdWUgKTsKCgkJdGhpcy5lbGVtZW50LmF0dHIoICJhcmlhLWRpc2FibGVkIiwgdmFsdWUgKTsKCQl0aGlzLl90b2dnbGVDbGFzcyggbnVsbCwgInVpLXN0YXRlLWRpc2FibGVkIiwgISF2YWx1ZSApOwoJfSwKCglfcGVyY2VudGFnZTogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMuaW5kZXRlcm1pbmF0ZSA/CgkJCTEwMCA6CgkJCTEwMCAqICggdGhpcy5vcHRpb25zLnZhbHVlIC0gdGhpcy5taW4gKSAvICggdGhpcy5vcHRpb25zLm1heCAtIHRoaXMubWluICk7Cgl9LAoKCV9yZWZyZXNoVmFsdWU6IGZ1bmN0aW9uKCkgewoJCXZhciB2YWx1ZSA9IHRoaXMub3B0aW9ucy52YWx1ZSwKCQkJcGVyY2VudGFnZSA9IHRoaXMuX3BlcmNlbnRhZ2UoKTsKCgkJdGhpcy52YWx1ZURpdgoJCQkudG9nZ2xlKCB0aGlzLmluZGV0ZXJtaW5hdGUgfHwgdmFsdWUgPiB0aGlzLm1pbiApCgkJCS53aWR0aCggcGVyY2VudGFnZS50b0ZpeGVkKCAwICkgKyAiJSIgKTsKCgkJdGhpcwoJCQkuX3RvZ2dsZUNsYXNzKCB0aGlzLnZhbHVlRGl2LCAidWktcHJvZ3Jlc3NiYXItY29tcGxldGUiLCBudWxsLAoJCQkJdmFsdWUgPT09IHRoaXMub3B0aW9ucy5tYXggKQoJCQkuX3RvZ2dsZUNsYXNzKCAidWktcHJvZ3Jlc3NiYXItaW5kZXRlcm1pbmF0ZSIsIG51bGwsIHRoaXMuaW5kZXRlcm1pbmF0ZSApOwoKCQlpZiAoIHRoaXMuaW5kZXRlcm1pbmF0ZSApIHsKCQkJdGhpcy5lbGVtZW50LnJlbW92ZUF0dHIoICJhcmlhLXZhbHVlbm93IiApOwoJCQlpZiAoICF0aGlzLm92ZXJsYXlEaXYgKSB7CgkJCQl0aGlzLm92ZXJsYXlEaXYgPSAkKCAiPGRpdj4iICkuYXBwZW5kVG8oIHRoaXMudmFsdWVEaXYgKTsKCQkJCXRoaXMuX2FkZENsYXNzKCB0aGlzLm92ZXJsYXlEaXYsICJ1aS1wcm9ncmVzc2Jhci1vdmVybGF5IiApOwoJCQl9CgkJfSBlbHNlIHsKCQkJdGhpcy5lbGVtZW50LmF0dHIoIHsKCQkJCSJhcmlhLXZhbHVlbWF4IjogdGhpcy5vcHRpb25zLm1heCwKCQkJCSJhcmlhLXZhbHVlbm93IjogdmFsdWUKCQkJfSApOwoJCQlpZiAoIHRoaXMub3ZlcmxheURpdiApIHsKCQkJCXRoaXMub3ZlcmxheURpdi5yZW1vdmUoKTsKCQkJCXRoaXMub3ZlcmxheURpdiA9IG51bGw7CgkJCX0KCQl9CgoJCWlmICggdGhpcy5vbGRWYWx1ZSAhPT0gdmFsdWUgKSB7CgkJCXRoaXMub2xkVmFsdWUgPSB2YWx1ZTsKCQkJdGhpcy5fdHJpZ2dlciggImNoYW5nZSIgKTsKCQl9CgkJaWYgKCB2YWx1ZSA9PT0gdGhpcy5vcHRpb25zLm1heCApIHsKCQkJdGhpcy5fdHJpZ2dlciggImNvbXBsZXRlIiApOwoJCX0KCX0KfSApOwoKCi8qIQogKiBqUXVlcnkgVUkgU2VsZWN0bWVudSAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IFNlbGVjdG1lbnUKLy8+Pmdyb3VwOiBXaWRnZXRzCi8vIGpzY3M6ZGlzYWJsZSBtYXhpbXVtTGluZUxlbmd0aAovLz4+ZGVzY3JpcHRpb246IER1cGxpY2F0ZXMgYW5kIGV4dGVuZHMgdGhlIGZ1bmN0aW9uYWxpdHkgb2YgYSBuYXRpdmUgSFRNTCBzZWxlY3QgZWxlbWVudCwgYWxsb3dpbmcgaXQgdG8gYmUgY3VzdG9taXphYmxlIGluIGJlaGF2aW9yIGFuZCBhcHBlYXJhbmNlIGZhciBiZXlvbmQgdGhlIGxpbWl0YXRpb25zIG9mIGEgbmF0aXZlIHNlbGVjdC4KLy8ganNjczplbmFibGUgbWF4aW11bUxpbmVMZW5ndGgKLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3NlbGVjdG1lbnUvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9zZWxlY3RtZW51LwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvY29yZS5jc3MKLy8+PmNzcy5zdHJ1Y3R1cmU6IC4uLy4uL3RoZW1lcy9iYXNlL3NlbGVjdG1lbnUuY3NzLCAuLi8uLi90aGVtZXMvYmFzZS9idXR0b24uY3NzCi8vPj5jc3MudGhlbWU6IC4uLy4uL3RoZW1lcy9iYXNlL3RoZW1lLmNzcwoKCgp2YXIgd2lkZ2V0c1NlbGVjdG1lbnUgPSAkLndpZGdldCggInVpLnNlbGVjdG1lbnUiLCBbICQudWkuZm9ybVJlc2V0TWl4aW4sIHsKCXZlcnNpb246ICIxLjEyLjEiLAoJZGVmYXVsdEVsZW1lbnQ6ICI8c2VsZWN0PiIsCglvcHRpb25zOiB7CgkJYXBwZW5kVG86IG51bGwsCgkJY2xhc3NlczogewoJCQkidWktc2VsZWN0bWVudS1idXR0b24tb3BlbiI6ICJ1aS1jb3JuZXItdG9wIiwKCQkJInVpLXNlbGVjdG1lbnUtYnV0dG9uLWNsb3NlZCI6ICJ1aS1jb3JuZXItYWxsIgoJCX0sCgkJZGlzYWJsZWQ6IG51bGwsCgkJaWNvbnM6IHsKCQkJYnV0dG9uOiAidWktaWNvbi10cmlhbmdsZS0xLXMiCgkJfSwKCQlwb3NpdGlvbjogewoJCQlteTogImxlZnQgdG9wIiwKCQkJYXQ6ICJsZWZ0IGJvdHRvbSIsCgkJCWNvbGxpc2lvbjogIm5vbmUiCgkJfSwKCQl3aWR0aDogZmFsc2UsCgoJCS8vIENhbGxiYWNrcwoJCWNoYW5nZTogbnVsbCwKCQljbG9zZTogbnVsbCwKCQlmb2N1czogbnVsbCwKCQlvcGVuOiBudWxsLAoJCXNlbGVjdDogbnVsbAoJfSwKCglfY3JlYXRlOiBmdW5jdGlvbigpIHsKCQl2YXIgc2VsZWN0bWVudUlkID0gdGhpcy5lbGVtZW50LnVuaXF1ZUlkKCkuYXR0ciggImlkIiApOwoJCXRoaXMuaWRzID0gewoJCQllbGVtZW50OiBzZWxlY3RtZW51SWQsCgkJCWJ1dHRvbjogc2VsZWN0bWVudUlkICsgIi1idXR0b24iLAoJCQltZW51OiBzZWxlY3RtZW51SWQgKyAiLW1lbnUiCgkJfTsKCgkJdGhpcy5fZHJhd0J1dHRvbigpOwoJCXRoaXMuX2RyYXdNZW51KCk7CgkJdGhpcy5fYmluZEZvcm1SZXNldEhhbmRsZXIoKTsKCgkJdGhpcy5fcmVuZGVyZWQgPSBmYWxzZTsKCQl0aGlzLm1lbnVJdGVtcyA9ICQoKTsKCX0sCgoJX2RyYXdCdXR0b246IGZ1bmN0aW9uKCkgewoJCXZhciBpY29uLAoJCQl0aGF0ID0gdGhpcywKCQkJaXRlbSA9IHRoaXMuX3BhcnNlT3B0aW9uKAoJCQkJdGhpcy5lbGVtZW50LmZpbmQoICJvcHRpb246c2VsZWN0ZWQiICksCgkJCQl0aGlzLmVsZW1lbnRbIDAgXS5zZWxlY3RlZEluZGV4CgkJCSk7CgoJCS8vIEFzc29jaWF0ZSBleGlzdGluZyBsYWJlbCB3aXRoIHRoZSBuZXcgYnV0dG9uCgkJdGhpcy5sYWJlbHMgPSB0aGlzLmVsZW1lbnQubGFiZWxzKCkuYXR0ciggImZvciIsIHRoaXMuaWRzLmJ1dHRvbiApOwoJCXRoaXMuX29uKCB0aGlzLmxhYmVscywgewoJCQljbGljazogZnVuY3Rpb24oIGV2ZW50ICkgewoJCQkJdGhpcy5idXR0b24uZm9jdXMoKTsKCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCX0KCQl9ICk7CgoJCS8vIEhpZGUgb3JpZ2luYWwgc2VsZWN0IGVsZW1lbnQKCQl0aGlzLmVsZW1lbnQuaGlkZSgpOwoKCQkvLyBDcmVhdGUgYnV0dG9uCgkJdGhpcy5idXR0b24gPSAkKCAiPHNwYW4+IiwgewoJCQl0YWJpbmRleDogdGhpcy5vcHRpb25zLmRpc2FibGVkID8gLTEgOiAwLAoJCQlpZDogdGhpcy5pZHMuYnV0dG9uLAoJCQlyb2xlOiAiY29tYm9ib3giLAoJCQkiYXJpYS1leHBhbmRlZCI6ICJmYWxzZSIsCgkJCSJhcmlhLWF1dG9jb21wbGV0ZSI6ICJsaXN0IiwKCQkJImFyaWEtb3ducyI6IHRoaXMuaWRzLm1lbnUsCgkJCSJhcmlhLWhhc3BvcHVwIjogInRydWUiLAoJCQl0aXRsZTogdGhpcy5lbGVtZW50LmF0dHIoICJ0aXRsZSIgKQoJCX0gKQoJCQkuaW5zZXJ0QWZ0ZXIoIHRoaXMuZWxlbWVudCApOwoKCQl0aGlzLl9hZGRDbGFzcyggdGhpcy5idXR0b24sICJ1aS1zZWxlY3RtZW51LWJ1dHRvbiB1aS1zZWxlY3RtZW51LWJ1dHRvbi1jbG9zZWQiLAoJCQkidWktYnV0dG9uIHVpLXdpZGdldCIgKTsKCgkJaWNvbiA9ICQoICI8c3Bhbj4iICkuYXBwZW5kVG8oIHRoaXMuYnV0dG9uICk7CgkJdGhpcy5fYWRkQ2xhc3MoIGljb24sICJ1aS1zZWxlY3RtZW51LWljb24iLCAidWktaWNvbiAiICsgdGhpcy5vcHRpb25zLmljb25zLmJ1dHRvbiApOwoJCXRoaXMuYnV0dG9uSXRlbSA9IHRoaXMuX3JlbmRlckJ1dHRvbkl0ZW0oIGl0ZW0gKQoJCQkuYXBwZW5kVG8oIHRoaXMuYnV0dG9uICk7CgoJCWlmICggdGhpcy5vcHRpb25zLndpZHRoICE9PSBmYWxzZSApIHsKCQkJdGhpcy5fcmVzaXplQnV0dG9uKCk7CgkJfQoKCQl0aGlzLl9vbiggdGhpcy5idXR0b24sIHRoaXMuX2J1dHRvbkV2ZW50cyApOwoJCXRoaXMuYnV0dG9uLm9uZSggImZvY3VzaW4iLCBmdW5jdGlvbigpIHsKCgkJCS8vIERlbGF5IHJlbmRlcmluZyB0aGUgbWVudSBpdGVtcyB1bnRpbCB0aGUgYnV0dG9uIHJlY2VpdmVzIGZvY3VzLgoJCQkvLyBUaGUgbWVudSBtYXkgaGF2ZSBhbHJlYWR5IGJlZW4gcmVuZGVyZWQgdmlhIGEgcHJvZ3JhbW1hdGljIG9wZW4uCgkJCWlmICggIXRoYXQuX3JlbmRlcmVkICkgewoJCQkJdGhhdC5fcmVmcmVzaE1lbnUoKTsKCQkJfQoJCX0gKTsKCX0sCgoJX2RyYXdNZW51OiBmdW5jdGlvbigpIHsKCQl2YXIgdGhhdCA9IHRoaXM7CgoJCS8vIENyZWF0ZSBtZW51CgkJdGhpcy5tZW51ID0gJCggIjx1bD4iLCB7CgkJCSJhcmlhLWhpZGRlbiI6ICJ0cnVlIiwKCQkJImFyaWEtbGFiZWxsZWRieSI6IHRoaXMuaWRzLmJ1dHRvbiwKCQkJaWQ6IHRoaXMuaWRzLm1lbnUKCQl9ICk7CgoJCS8vIFdyYXAgbWVudQoJCXRoaXMubWVudVdyYXAgPSAkKCAiPGRpdj4iICkuYXBwZW5kKCB0aGlzLm1lbnUgKTsKCQl0aGlzLl9hZGRDbGFzcyggdGhpcy5tZW51V3JhcCwgInVpLXNlbGVjdG1lbnUtbWVudSIsICJ1aS1mcm9udCIgKTsKCQl0aGlzLm1lbnVXcmFwLmFwcGVuZFRvKCB0aGlzLl9hcHBlbmRUbygpICk7CgoJCS8vIEluaXRpYWxpemUgbWVudSB3aWRnZXQKCQl0aGlzLm1lbnVJbnN0YW5jZSA9IHRoaXMubWVudQoJCQkubWVudSggewoJCQkJY2xhc3NlczogewoJCQkJCSJ1aS1tZW51IjogInVpLWNvcm5lci1ib3R0b20iCgkJCQl9LAoJCQkJcm9sZTogImxpc3Rib3giLAoJCQkJc2VsZWN0OiBmdW5jdGlvbiggZXZlbnQsIHVpICkgewoJCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgoJCQkJCS8vIFN1cHBvcnQ6IElFOAoJCQkJCS8vIElmIHRoZSBpdGVtIHdhcyBzZWxlY3RlZCB2aWEgYSBjbGljaywgdGhlIHRleHQgc2VsZWN0aW9uCgkJCQkJLy8gd2lsbCBiZSBkZXN0cm95ZWQgaW4gSUUKCQkJCQl0aGF0Ll9zZXRTZWxlY3Rpb24oKTsKCgkJCQkJdGhhdC5fc2VsZWN0KCB1aS5pdGVtLmRhdGEoICJ1aS1zZWxlY3RtZW51LWl0ZW0iICksIGV2ZW50ICk7CgkJCQl9LAoJCQkJZm9jdXM6IGZ1bmN0aW9uKCBldmVudCwgdWkgKSB7CgkJCQkJdmFyIGl0ZW0gPSB1aS5pdGVtLmRhdGEoICJ1aS1zZWxlY3RtZW51LWl0ZW0iICk7CgoJCQkJCS8vIFByZXZlbnQgaW5pdGFsIGZvY3VzIGZyb20gZmlyaW5nIGFuZCBjaGVjayBpZiBpdHMgYSBuZXdseSBmb2N1c2VkIGl0ZW0KCQkJCQlpZiAoIHRoYXQuZm9jdXNJbmRleCAhPSBudWxsICYmIGl0ZW0uaW5kZXggIT09IHRoYXQuZm9jdXNJbmRleCApIHsKCQkJCQkJdGhhdC5fdHJpZ2dlciggImZvY3VzIiwgZXZlbnQsIHsgaXRlbTogaXRlbSB9ICk7CgkJCQkJCWlmICggIXRoYXQuaXNPcGVuICkgewoJCQkJCQkJdGhhdC5fc2VsZWN0KCBpdGVtLCBldmVudCApOwoJCQkJCQl9CgkJCQkJfQoJCQkJCXRoYXQuZm9jdXNJbmRleCA9IGl0ZW0uaW5kZXg7CgoJCQkJCXRoYXQuYnV0dG9uLmF0dHIoICJhcmlhLWFjdGl2ZWRlc2NlbmRhbnQiLAoJCQkJCQl0aGF0Lm1lbnVJdGVtcy5lcSggaXRlbS5pbmRleCApLmF0dHIoICJpZCIgKSApOwoJCQkJfQoJCQl9ICkKCQkJLm1lbnUoICJpbnN0YW5jZSIgKTsKCgkJLy8gRG9uJ3QgY2xvc2UgdGhlIG1lbnUgb24gbW91c2VsZWF2ZQoJCXRoaXMubWVudUluc3RhbmNlLl9vZmYoIHRoaXMubWVudSwgIm1vdXNlbGVhdmUiICk7CgoJCS8vIENhbmNlbCB0aGUgbWVudSdzIGNvbGxhcHNlQWxsIG9uIGRvY3VtZW50IGNsaWNrCgkJdGhpcy5tZW51SW5zdGFuY2UuX2Nsb3NlT25Eb2N1bWVudENsaWNrID0gZnVuY3Rpb24oKSB7CgkJCXJldHVybiBmYWxzZTsKCQl9OwoKCQkvLyBTZWxlY3RzIG9mdGVuIGNvbnRhaW4gZW1wdHkgaXRlbXMsIGJ1dCBuZXZlciBjb250YWluIGRpdmlkZXJzCgkJdGhpcy5tZW51SW5zdGFuY2UuX2lzRGl2aWRlciA9IGZ1bmN0aW9uKCkgewoJCQlyZXR1cm4gZmFsc2U7CgkJfTsKCX0sCgoJcmVmcmVzaDogZnVuY3Rpb24oKSB7CgkJdGhpcy5fcmVmcmVzaE1lbnUoKTsKCQl0aGlzLmJ1dHRvbkl0ZW0ucmVwbGFjZVdpdGgoCgkJCXRoaXMuYnV0dG9uSXRlbSA9IHRoaXMuX3JlbmRlckJ1dHRvbkl0ZW0oCgoJCQkJLy8gRmFsbCBiYWNrIHRvIGFuIGVtcHR5IG9iamVjdCBpbiBjYXNlIHRoZXJlIGFyZSBubyBvcHRpb25zCgkJCQl0aGlzLl9nZXRTZWxlY3RlZEl0ZW0oKS5kYXRhKCAidWktc2VsZWN0bWVudS1pdGVtIiApIHx8IHt9CgkJCSkKCQkpOwoJCWlmICggdGhpcy5vcHRpb25zLndpZHRoID09PSBudWxsICkgewoJCQl0aGlzLl9yZXNpemVCdXR0b24oKTsKCQl9Cgl9LAoKCV9yZWZyZXNoTWVudTogZnVuY3Rpb24oKSB7CgkJdmFyIGl0ZW0sCgkJCW9wdGlvbnMgPSB0aGlzLmVsZW1lbnQuZmluZCggIm9wdGlvbiIgKTsKCgkJdGhpcy5tZW51LmVtcHR5KCk7CgoJCXRoaXMuX3BhcnNlT3B0aW9ucyggb3B0aW9ucyApOwoJCXRoaXMuX3JlbmRlck1lbnUoIHRoaXMubWVudSwgdGhpcy5pdGVtcyApOwoKCQl0aGlzLm1lbnVJbnN0YW5jZS5yZWZyZXNoKCk7CgkJdGhpcy5tZW51SXRlbXMgPSB0aGlzLm1lbnUuZmluZCggImxpIiApCgkJCS5ub3QoICIudWktc2VsZWN0bWVudS1vcHRncm91cCIgKQoJCQkJLmZpbmQoICIudWktbWVudS1pdGVtLXdyYXBwZXIiICk7CgoJCXRoaXMuX3JlbmRlcmVkID0gdHJ1ZTsKCgkJaWYgKCAhb3B0aW9ucy5sZW5ndGggKSB7CgkJCXJldHVybjsKCQl9CgoJCWl0ZW0gPSB0aGlzLl9nZXRTZWxlY3RlZEl0ZW0oKTsKCgkJLy8gVXBkYXRlIHRoZSBtZW51IHRvIGhhdmUgdGhlIGNvcnJlY3QgaXRlbSBmb2N1c2VkCgkJdGhpcy5tZW51SW5zdGFuY2UuZm9jdXMoIG51bGwsIGl0ZW0gKTsKCQl0aGlzLl9zZXRBcmlhKCBpdGVtLmRhdGEoICJ1aS1zZWxlY3RtZW51LWl0ZW0iICkgKTsKCgkJLy8gU2V0IGRpc2FibGVkIHN0YXRlCgkJdGhpcy5fc2V0T3B0aW9uKCAiZGlzYWJsZWQiLCB0aGlzLmVsZW1lbnQucHJvcCggImRpc2FibGVkIiApICk7Cgl9LAoKCW9wZW46IGZ1bmN0aW9uKCBldmVudCApIHsKCQlpZiAoIHRoaXMub3B0aW9ucy5kaXNhYmxlZCApIHsKCQkJcmV0dXJuOwoJCX0KCgkJLy8gSWYgdGhpcyBpcyB0aGUgZmlyc3QgdGltZSB0aGUgbWVudSBpcyBiZWluZyBvcGVuZWQsIHJlbmRlciB0aGUgaXRlbXMKCQlpZiAoICF0aGlzLl9yZW5kZXJlZCApIHsKCQkJdGhpcy5fcmVmcmVzaE1lbnUoKTsKCQl9IGVsc2UgewoKCQkJLy8gTWVudSBjbGVhcnMgZm9jdXMgb24gY2xvc2UsIHJlc2V0IGZvY3VzIHRvIHNlbGVjdGVkIGl0ZW0KCQkJdGhpcy5fcmVtb3ZlQ2xhc3MoIHRoaXMubWVudS5maW5kKCAiLnVpLXN0YXRlLWFjdGl2ZSIgKSwgbnVsbCwgInVpLXN0YXRlLWFjdGl2ZSIgKTsKCQkJdGhpcy5tZW51SW5zdGFuY2UuZm9jdXMoIG51bGwsIHRoaXMuX2dldFNlbGVjdGVkSXRlbSgpICk7CgkJfQoKCQkvLyBJZiB0aGVyZSBhcmUgbm8gb3B0aW9ucywgZG9uJ3Qgb3BlbiB0aGUgbWVudQoJCWlmICggIXRoaXMubWVudUl0ZW1zLmxlbmd0aCApIHsKCQkJcmV0dXJuOwoJCX0KCgkJdGhpcy5pc09wZW4gPSB0cnVlOwoJCXRoaXMuX3RvZ2dsZUF0dHIoKTsKCQl0aGlzLl9yZXNpemVNZW51KCk7CgkJdGhpcy5fcG9zaXRpb24oKTsKCgkJdGhpcy5fb24oIHRoaXMuZG9jdW1lbnQsIHRoaXMuX2RvY3VtZW50Q2xpY2sgKTsKCgkJdGhpcy5fdHJpZ2dlciggIm9wZW4iLCBldmVudCApOwoJfSwKCglfcG9zaXRpb246IGZ1bmN0aW9uKCkgewoJCXRoaXMubWVudVdyYXAucG9zaXRpb24oICQuZXh0ZW5kKCB7IG9mOiB0aGlzLmJ1dHRvbiB9LCB0aGlzLm9wdGlvbnMucG9zaXRpb24gKSApOwoJfSwKCgljbG9zZTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCWlmICggIXRoaXMuaXNPcGVuICkgewoJCQlyZXR1cm47CgkJfQoKCQl0aGlzLmlzT3BlbiA9IGZhbHNlOwoJCXRoaXMuX3RvZ2dsZUF0dHIoKTsKCgkJdGhpcy5yYW5nZSA9IG51bGw7CgkJdGhpcy5fb2ZmKCB0aGlzLmRvY3VtZW50ICk7CgoJCXRoaXMuX3RyaWdnZXIoICJjbG9zZSIsIGV2ZW50ICk7Cgl9LAoKCXdpZGdldDogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMuYnV0dG9uOwoJfSwKCgltZW51V2lkZ2V0OiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gdGhpcy5tZW51OwoJfSwKCglfcmVuZGVyQnV0dG9uSXRlbTogZnVuY3Rpb24oIGl0ZW0gKSB7CgkJdmFyIGJ1dHRvbkl0ZW0gPSAkKCAiPHNwYW4+IiApOwoKCQl0aGlzLl9zZXRUZXh0KCBidXR0b25JdGVtLCBpdGVtLmxhYmVsICk7CgkJdGhpcy5fYWRkQ2xhc3MoIGJ1dHRvbkl0ZW0sICJ1aS1zZWxlY3RtZW51LXRleHQiICk7CgoJCXJldHVybiBidXR0b25JdGVtOwoJfSwKCglfcmVuZGVyTWVudTogZnVuY3Rpb24oIHVsLCBpdGVtcyApIHsKCQl2YXIgdGhhdCA9IHRoaXMsCgkJCWN1cnJlbnRPcHRncm91cCA9ICIiOwoKCQkkLmVhY2goIGl0ZW1zLCBmdW5jdGlvbiggaW5kZXgsIGl0ZW0gKSB7CgkJCXZhciBsaTsKCgkJCWlmICggaXRlbS5vcHRncm91cCAhPT0gY3VycmVudE9wdGdyb3VwICkgewoJCQkJbGkgPSAkKCAiPGxpPiIsIHsKCQkJCQl0ZXh0OiBpdGVtLm9wdGdyb3VwCgkJCQl9ICk7CgkJCQl0aGF0Ll9hZGRDbGFzcyggbGksICJ1aS1zZWxlY3RtZW51LW9wdGdyb3VwIiwgInVpLW1lbnUtZGl2aWRlciIgKwoJCQkJCSggaXRlbS5lbGVtZW50LnBhcmVudCggIm9wdGdyb3VwIiApLnByb3AoICJkaXNhYmxlZCIgKSA/CgkJCQkJCSIgdWktc3RhdGUtZGlzYWJsZWQiIDoKCQkJCQkJIiIgKSApOwoKCQkJCWxpLmFwcGVuZFRvKCB1bCApOwoKCQkJCWN1cnJlbnRPcHRncm91cCA9IGl0ZW0ub3B0Z3JvdXA7CgkJCX0KCgkJCXRoYXQuX3JlbmRlckl0ZW1EYXRhKCB1bCwgaXRlbSApOwoJCX0gKTsKCX0sCgoJX3JlbmRlckl0ZW1EYXRhOiBmdW5jdGlvbiggdWwsIGl0ZW0gKSB7CgkJcmV0dXJuIHRoaXMuX3JlbmRlckl0ZW0oIHVsLCBpdGVtICkuZGF0YSggInVpLXNlbGVjdG1lbnUtaXRlbSIsIGl0ZW0gKTsKCX0sCgoJX3JlbmRlckl0ZW06IGZ1bmN0aW9uKCB1bCwgaXRlbSApIHsKCQl2YXIgbGkgPSAkKCAiPGxpPiIgKSwKCQkJd3JhcHBlciA9ICQoICI8ZGl2PiIsIHsKCQkJCXRpdGxlOiBpdGVtLmVsZW1lbnQuYXR0ciggInRpdGxlIiApCgkJCX0gKTsKCgkJaWYgKCBpdGVtLmRpc2FibGVkICkgewoJCQl0aGlzLl9hZGRDbGFzcyggbGksIG51bGwsICJ1aS1zdGF0ZS1kaXNhYmxlZCIgKTsKCQl9CgkJdGhpcy5fc2V0VGV4dCggd3JhcHBlciwgaXRlbS5sYWJlbCApOwoKCQlyZXR1cm4gbGkuYXBwZW5kKCB3cmFwcGVyICkuYXBwZW5kVG8oIHVsICk7Cgl9LAoKCV9zZXRUZXh0OiBmdW5jdGlvbiggZWxlbWVudCwgdmFsdWUgKSB7CgkJaWYgKCB2YWx1ZSApIHsKCQkJZWxlbWVudC50ZXh0KCB2YWx1ZSApOwoJCX0gZWxzZSB7CgkJCWVsZW1lbnQuaHRtbCggIiYjMTYwOyIgKTsKCQl9Cgl9LAoKCV9tb3ZlOiBmdW5jdGlvbiggZGlyZWN0aW9uLCBldmVudCApIHsKCQl2YXIgaXRlbSwgbmV4dCwKCQkJZmlsdGVyID0gIi51aS1tZW51LWl0ZW0iOwoKCQlpZiAoIHRoaXMuaXNPcGVuICkgewoJCQlpdGVtID0gdGhpcy5tZW51SXRlbXMuZXEoIHRoaXMuZm9jdXNJbmRleCApLnBhcmVudCggImxpIiApOwoJCX0gZWxzZSB7CgkJCWl0ZW0gPSB0aGlzLm1lbnVJdGVtcy5lcSggdGhpcy5lbGVtZW50WyAwIF0uc2VsZWN0ZWRJbmRleCApLnBhcmVudCggImxpIiApOwoJCQlmaWx0ZXIgKz0gIjpub3QoLnVpLXN0YXRlLWRpc2FibGVkKSI7CgkJfQoKCQlpZiAoIGRpcmVjdGlvbiA9PT0gImZpcnN0IiB8fCBkaXJlY3Rpb24gPT09ICJsYXN0IiApIHsKCQkJbmV4dCA9IGl0ZW1bIGRpcmVjdGlvbiA9PT0gImZpcnN0IiA/ICJwcmV2QWxsIiA6ICJuZXh0QWxsIiBdKCBmaWx0ZXIgKS5lcSggLTEgKTsKCQl9IGVsc2UgewoJCQluZXh0ID0gaXRlbVsgZGlyZWN0aW9uICsgIkFsbCIgXSggZmlsdGVyICkuZXEoIDAgKTsKCQl9CgoJCWlmICggbmV4dC5sZW5ndGggKSB7CgkJCXRoaXMubWVudUluc3RhbmNlLmZvY3VzKCBldmVudCwgbmV4dCApOwoJCX0KCX0sCgoJX2dldFNlbGVjdGVkSXRlbTogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMubWVudUl0ZW1zLmVxKCB0aGlzLmVsZW1lbnRbIDAgXS5zZWxlY3RlZEluZGV4ICkucGFyZW50KCAibGkiICk7Cgl9LAoKCV90b2dnbGU6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl0aGlzWyB0aGlzLmlzT3BlbiA/ICJjbG9zZSIgOiAib3BlbiIgXSggZXZlbnQgKTsKCX0sCgoJX3NldFNlbGVjdGlvbjogZnVuY3Rpb24oKSB7CgkJdmFyIHNlbGVjdGlvbjsKCgkJaWYgKCAhdGhpcy5yYW5nZSApIHsKCQkJcmV0dXJuOwoJCX0KCgkJaWYgKCB3aW5kb3cuZ2V0U2VsZWN0aW9uICkgewoJCQlzZWxlY3Rpb24gPSB3aW5kb3cuZ2V0U2VsZWN0aW9uKCk7CgkJCXNlbGVjdGlvbi5yZW1vdmVBbGxSYW5nZXMoKTsKCQkJc2VsZWN0aW9uLmFkZFJhbmdlKCB0aGlzLnJhbmdlICk7CgoJCS8vIFN1cHBvcnQ6IElFOAoJCX0gZWxzZSB7CgkJCXRoaXMucmFuZ2Uuc2VsZWN0KCk7CgkJfQoKCQkvLyBTdXBwb3J0OiBJRQoJCS8vIFNldHRpbmcgdGhlIHRleHQgc2VsZWN0aW9uIGtpbGxzIHRoZSBidXR0b24gZm9jdXMgaW4gSUUsIGJ1dAoJCS8vIHJlc3RvcmluZyB0aGUgZm9jdXMgZG9lc24ndCBraWxsIHRoZSBzZWxlY3Rpb24uCgkJdGhpcy5idXR0b24uZm9jdXMoKTsKCX0sCgoJX2RvY3VtZW50Q2xpY2s6IHsKCQltb3VzZWRvd246IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJaWYgKCAhdGhpcy5pc09wZW4gKSB7CgkJCQlyZXR1cm47CgkJCX0KCgkJCWlmICggISQoIGV2ZW50LnRhcmdldCApLmNsb3Nlc3QoICIudWktc2VsZWN0bWVudS1tZW51LCAjIiArCgkJCQkJJC51aS5lc2NhcGVTZWxlY3RvciggdGhpcy5pZHMuYnV0dG9uICkgKS5sZW5ndGggKSB7CgkJCQl0aGlzLmNsb3NlKCBldmVudCApOwoJCQl9CgkJfQoJfSwKCglfYnV0dG9uRXZlbnRzOiB7CgoJCS8vIFByZXZlbnQgdGV4dCBzZWxlY3Rpb24gZnJvbSBiZWluZyByZXNldCB3aGVuIGludGVyYWN0aW5nIHdpdGggdGhlIHNlbGVjdG1lbnUgKCMxMDE0NCkKCQltb3VzZWRvd246IGZ1bmN0aW9uKCkgewoJCQl2YXIgc2VsZWN0aW9uOwoKCQkJaWYgKCB3aW5kb3cuZ2V0U2VsZWN0aW9uICkgewoJCQkJc2VsZWN0aW9uID0gd2luZG93LmdldFNlbGVjdGlvbigpOwoJCQkJaWYgKCBzZWxlY3Rpb24ucmFuZ2VDb3VudCApIHsKCQkJCQl0aGlzLnJhbmdlID0gc2VsZWN0aW9uLmdldFJhbmdlQXQoIDAgKTsKCQkJCX0KCgkJCS8vIFN1cHBvcnQ6IElFOAoJCQl9IGVsc2UgewoJCQkJdGhpcy5yYW5nZSA9IGRvY3VtZW50LnNlbGVjdGlvbi5jcmVhdGVSYW5nZSgpOwoJCQl9CgkJfSwKCgkJY2xpY2s6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJdGhpcy5fc2V0U2VsZWN0aW9uKCk7CgkJCXRoaXMuX3RvZ2dsZSggZXZlbnQgKTsKCQl9LAoKCQlrZXlkb3duOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJCXZhciBwcmV2ZW50RGVmYXVsdCA9IHRydWU7CgkJCXN3aXRjaCAoIGV2ZW50LmtleUNvZGUgKSB7CgkJCWNhc2UgJC51aS5rZXlDb2RlLlRBQjoKCQkJY2FzZSAkLnVpLmtleUNvZGUuRVNDQVBFOgoJCQkJdGhpcy5jbG9zZSggZXZlbnQgKTsKCQkJCXByZXZlbnREZWZhdWx0ID0gZmFsc2U7CgkJCQlicmVhazsKCQkJY2FzZSAkLnVpLmtleUNvZGUuRU5URVI6CgkJCQlpZiAoIHRoaXMuaXNPcGVuICkgewoJCQkJCXRoaXMuX3NlbGVjdEZvY3VzZWRJdGVtKCBldmVudCApOwoJCQkJfQoJCQkJYnJlYWs7CgkJCWNhc2UgJC51aS5rZXlDb2RlLlVQOgoJCQkJaWYgKCBldmVudC5hbHRLZXkgKSB7CgkJCQkJdGhpcy5fdG9nZ2xlKCBldmVudCApOwoJCQkJfSBlbHNlIHsKCQkJCQl0aGlzLl9tb3ZlKCAicHJldiIsIGV2ZW50ICk7CgkJCQl9CgkJCQlicmVhazsKCQkJY2FzZSAkLnVpLmtleUNvZGUuRE9XTjoKCQkJCWlmICggZXZlbnQuYWx0S2V5ICkgewoJCQkJCXRoaXMuX3RvZ2dsZSggZXZlbnQgKTsKCQkJCX0gZWxzZSB7CgkJCQkJdGhpcy5fbW92ZSggIm5leHQiLCBldmVudCApOwoJCQkJfQoJCQkJYnJlYWs7CgkJCWNhc2UgJC51aS5rZXlDb2RlLlNQQUNFOgoJCQkJaWYgKCB0aGlzLmlzT3BlbiApIHsKCQkJCQl0aGlzLl9zZWxlY3RGb2N1c2VkSXRlbSggZXZlbnQgKTsKCQkJCX0gZWxzZSB7CgkJCQkJdGhpcy5fdG9nZ2xlKCBldmVudCApOwoJCQkJfQoJCQkJYnJlYWs7CgkJCWNhc2UgJC51aS5rZXlDb2RlLkxFRlQ6CgkJCQl0aGlzLl9tb3ZlKCAicHJldiIsIGV2ZW50ICk7CgkJCQlicmVhazsKCQkJY2FzZSAkLnVpLmtleUNvZGUuUklHSFQ6CgkJCQl0aGlzLl9tb3ZlKCAibmV4dCIsIGV2ZW50ICk7CgkJCQlicmVhazsKCQkJY2FzZSAkLnVpLmtleUNvZGUuSE9NRToKCQkJY2FzZSAkLnVpLmtleUNvZGUuUEFHRV9VUDoKCQkJCXRoaXMuX21vdmUoICJmaXJzdCIsIGV2ZW50ICk7CgkJCQlicmVhazsKCQkJY2FzZSAkLnVpLmtleUNvZGUuRU5EOgoJCQljYXNlICQudWkua2V5Q29kZS5QQUdFX0RPV046CgkJCQl0aGlzLl9tb3ZlKCAibGFzdCIsIGV2ZW50ICk7CgkJCQlicmVhazsKCQkJZGVmYXVsdDoKCQkJCXRoaXMubWVudS50cmlnZ2VyKCBldmVudCApOwoJCQkJcHJldmVudERlZmF1bHQgPSBmYWxzZTsKCQkJfQoKCQkJaWYgKCBwcmV2ZW50RGVmYXVsdCApIHsKCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCX0KCQl9Cgl9LAoKCV9zZWxlY3RGb2N1c2VkSXRlbTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXZhciBpdGVtID0gdGhpcy5tZW51SXRlbXMuZXEoIHRoaXMuZm9jdXNJbmRleCApLnBhcmVudCggImxpIiApOwoJCWlmICggIWl0ZW0uaGFzQ2xhc3MoICJ1aS1zdGF0ZS1kaXNhYmxlZCIgKSApIHsKCQkJdGhpcy5fc2VsZWN0KCBpdGVtLmRhdGEoICJ1aS1zZWxlY3RtZW51LWl0ZW0iICksIGV2ZW50ICk7CgkJfQoJfSwKCglfc2VsZWN0OiBmdW5jdGlvbiggaXRlbSwgZXZlbnQgKSB7CgkJdmFyIG9sZEluZGV4ID0gdGhpcy5lbGVtZW50WyAwIF0uc2VsZWN0ZWRJbmRleDsKCgkJLy8gQ2hhbmdlIG5hdGl2ZSBzZWxlY3QgZWxlbWVudAoJCXRoaXMuZWxlbWVudFsgMCBdLnNlbGVjdGVkSW5kZXggPSBpdGVtLmluZGV4OwoJCXRoaXMuYnV0dG9uSXRlbS5yZXBsYWNlV2l0aCggdGhpcy5idXR0b25JdGVtID0gdGhpcy5fcmVuZGVyQnV0dG9uSXRlbSggaXRlbSApICk7CgkJdGhpcy5fc2V0QXJpYSggaXRlbSApOwoJCXRoaXMuX3RyaWdnZXIoICJzZWxlY3QiLCBldmVudCwgeyBpdGVtOiBpdGVtIH0gKTsKCgkJaWYgKCBpdGVtLmluZGV4ICE9PSBvbGRJbmRleCApIHsKCQkJdGhpcy5fdHJpZ2dlciggImNoYW5nZSIsIGV2ZW50LCB7IGl0ZW06IGl0ZW0gfSApOwoJCX0KCgkJdGhpcy5jbG9zZSggZXZlbnQgKTsKCX0sCgoJX3NldEFyaWE6IGZ1bmN0aW9uKCBpdGVtICkgewoJCXZhciBpZCA9IHRoaXMubWVudUl0ZW1zLmVxKCBpdGVtLmluZGV4ICkuYXR0ciggImlkIiApOwoKCQl0aGlzLmJ1dHRvbi5hdHRyKCB7CgkJCSJhcmlhLWxhYmVsbGVkYnkiOiBpZCwKCQkJImFyaWEtYWN0aXZlZGVzY2VuZGFudCI6IGlkCgkJfSApOwoJCXRoaXMubWVudS5hdHRyKCAiYXJpYS1hY3RpdmVkZXNjZW5kYW50IiwgaWQgKTsKCX0sCgoJX3NldE9wdGlvbjogZnVuY3Rpb24oIGtleSwgdmFsdWUgKSB7CgkJaWYgKCBrZXkgPT09ICJpY29ucyIgKSB7CgkJCXZhciBpY29uID0gdGhpcy5idXR0b24uZmluZCggInNwYW4udWktaWNvbiIgKTsKCQkJdGhpcy5fcmVtb3ZlQ2xhc3MoIGljb24sIG51bGwsIHRoaXMub3B0aW9ucy5pY29ucy5idXR0b24gKQoJCQkJLl9hZGRDbGFzcyggaWNvbiwgbnVsbCwgdmFsdWUuYnV0dG9uICk7CgkJfQoKCQl0aGlzLl9zdXBlcigga2V5LCB2YWx1ZSApOwoKCQlpZiAoIGtleSA9PT0gImFwcGVuZFRvIiApIHsKCQkJdGhpcy5tZW51V3JhcC5hcHBlbmRUbyggdGhpcy5fYXBwZW5kVG8oKSApOwoJCX0KCgkJaWYgKCBrZXkgPT09ICJ3aWR0aCIgKSB7CgkJCXRoaXMuX3Jlc2l6ZUJ1dHRvbigpOwoJCX0KCX0sCgoJX3NldE9wdGlvbkRpc2FibGVkOiBmdW5jdGlvbiggdmFsdWUgKSB7CgkJdGhpcy5fc3VwZXIoIHZhbHVlICk7CgoJCXRoaXMubWVudUluc3RhbmNlLm9wdGlvbiggImRpc2FibGVkIiwgdmFsdWUgKTsKCQl0aGlzLmJ1dHRvbi5hdHRyKCAiYXJpYS1kaXNhYmxlZCIsIHZhbHVlICk7CgkJdGhpcy5fdG9nZ2xlQ2xhc3MoIHRoaXMuYnV0dG9uLCBudWxsLCAidWktc3RhdGUtZGlzYWJsZWQiLCB2YWx1ZSApOwoKCQl0aGlzLmVsZW1lbnQucHJvcCggImRpc2FibGVkIiwgdmFsdWUgKTsKCQlpZiAoIHZhbHVlICkgewoJCQl0aGlzLmJ1dHRvbi5hdHRyKCAidGFiaW5kZXgiLCAtMSApOwoJCQl0aGlzLmNsb3NlKCk7CgkJfSBlbHNlIHsKCQkJdGhpcy5idXR0b24uYXR0ciggInRhYmluZGV4IiwgMCApOwoJCX0KCX0sCgoJX2FwcGVuZFRvOiBmdW5jdGlvbigpIHsKCQl2YXIgZWxlbWVudCA9IHRoaXMub3B0aW9ucy5hcHBlbmRUbzsKCgkJaWYgKCBlbGVtZW50ICkgewoJCQllbGVtZW50ID0gZWxlbWVudC5qcXVlcnkgfHwgZWxlbWVudC5ub2RlVHlwZSA/CgkJCQkkKCBlbGVtZW50ICkgOgoJCQkJdGhpcy5kb2N1bWVudC5maW5kKCBlbGVtZW50ICkuZXEoIDAgKTsKCQl9CgoJCWlmICggIWVsZW1lbnQgfHwgIWVsZW1lbnRbIDAgXSApIHsKCQkJZWxlbWVudCA9IHRoaXMuZWxlbWVudC5jbG9zZXN0KCAiLnVpLWZyb250LCBkaWFsb2ciICk7CgkJfQoKCQlpZiAoICFlbGVtZW50Lmxlbmd0aCApIHsKCQkJZWxlbWVudCA9IHRoaXMuZG9jdW1lbnRbIDAgXS5ib2R5OwoJCX0KCgkJcmV0dXJuIGVsZW1lbnQ7Cgl9LAoKCV90b2dnbGVBdHRyOiBmdW5jdGlvbigpIHsKCQl0aGlzLmJ1dHRvbi5hdHRyKCAiYXJpYS1leHBhbmRlZCIsIHRoaXMuaXNPcGVuICk7CgoJCS8vIFdlIGNhbid0IHVzZSB0d28gX3RvZ2dsZUNsYXNzKCkgY2FsbHMgaGVyZSwgYmVjYXVzZSB3ZSBuZWVkIHRvIG1ha2Ugc3VyZQoJCS8vIHdlIGFsd2F5cyByZW1vdmUgY2xhc3NlcyBmaXJzdCBhbmQgYWRkIHRoZW0gc2Vjb25kLCBvdGhlcndpc2UgaWYgYm90aCBjbGFzc2VzIGhhdmUgdGhlCgkJLy8gc2FtZSB0aGVtZSBjbGFzcywgaXQgd2lsbCBiZSByZW1vdmVkIGFmdGVyIHdlIGFkZCBpdC4KCQl0aGlzLl9yZW1vdmVDbGFzcyggdGhpcy5idXR0b24sICJ1aS1zZWxlY3RtZW51LWJ1dHRvbi0iICsKCQkJKCB0aGlzLmlzT3BlbiA/ICJjbG9zZWQiIDogIm9wZW4iICkgKQoJCQkuX2FkZENsYXNzKCB0aGlzLmJ1dHRvbiwgInVpLXNlbGVjdG1lbnUtYnV0dG9uLSIgKwoJCQkJKCB0aGlzLmlzT3BlbiA/ICJvcGVuIiA6ICJjbG9zZWQiICkgKQoJCQkuX3RvZ2dsZUNsYXNzKCB0aGlzLm1lbnVXcmFwLCAidWktc2VsZWN0bWVudS1vcGVuIiwgbnVsbCwgdGhpcy5pc09wZW4gKTsKCgkJdGhpcy5tZW51LmF0dHIoICJhcmlhLWhpZGRlbiIsICF0aGlzLmlzT3BlbiApOwoJfSwKCglfcmVzaXplQnV0dG9uOiBmdW5jdGlvbigpIHsKCQl2YXIgd2lkdGggPSB0aGlzLm9wdGlvbnMud2lkdGg7CgoJCS8vIEZvciBgd2lkdGg6IGZhbHNlYCwganVzdCByZW1vdmUgaW5saW5lIHN0eWxlIGFuZCBzdG9wCgkJaWYgKCB3aWR0aCA9PT0gZmFsc2UgKSB7CgkJCXRoaXMuYnV0dG9uLmNzcyggIndpZHRoIiwgIiIgKTsKCQkJcmV0dXJuOwoJCX0KCgkJLy8gRm9yIGB3aWR0aDogbnVsbGAsIG1hdGNoIHRoZSB3aWR0aCBvZiB0aGUgb3JpZ2luYWwgZWxlbWVudAoJCWlmICggd2lkdGggPT09IG51bGwgKSB7CgkJCXdpZHRoID0gdGhpcy5lbGVtZW50LnNob3coKS5vdXRlcldpZHRoKCk7CgkJCXRoaXMuZWxlbWVudC5oaWRlKCk7CgkJfQoKCQl0aGlzLmJ1dHRvbi5vdXRlcldpZHRoKCB3aWR0aCApOwoJfSwKCglfcmVzaXplTWVudTogZnVuY3Rpb24oKSB7CgkJdGhpcy5tZW51Lm91dGVyV2lkdGgoIE1hdGgubWF4KAoJCQl0aGlzLmJ1dHRvbi5vdXRlcldpZHRoKCksCgoJCQkvLyBTdXBwb3J0OiBJRTEwCgkJCS8vIElFMTAgd3JhcHMgbG9uZyB0ZXh0IChwb3NzaWJseSBhIHJvdW5kaW5nIGJ1ZykKCQkJLy8gc28gd2UgYWRkIDFweCB0byBhdm9pZCB0aGUgd3JhcHBpbmcKCQkJdGhpcy5tZW51LndpZHRoKCAiIiApLm91dGVyV2lkdGgoKSArIDEKCQkpICk7Cgl9LAoKCV9nZXRDcmVhdGVPcHRpb25zOiBmdW5jdGlvbigpIHsKCQl2YXIgb3B0aW9ucyA9IHRoaXMuX3N1cGVyKCk7CgoJCW9wdGlvbnMuZGlzYWJsZWQgPSB0aGlzLmVsZW1lbnQucHJvcCggImRpc2FibGVkIiApOwoKCQlyZXR1cm4gb3B0aW9uczsKCX0sCgoJX3BhcnNlT3B0aW9uczogZnVuY3Rpb24oIG9wdGlvbnMgKSB7CgkJdmFyIHRoYXQgPSB0aGlzLAoJCQlkYXRhID0gW107CgkJb3B0aW9ucy5lYWNoKCBmdW5jdGlvbiggaW5kZXgsIGl0ZW0gKSB7CgkJCWRhdGEucHVzaCggdGhhdC5fcGFyc2VPcHRpb24oICQoIGl0ZW0gKSwgaW5kZXggKSApOwoJCX0gKTsKCQl0aGlzLml0ZW1zID0gZGF0YTsKCX0sCgoJX3BhcnNlT3B0aW9uOiBmdW5jdGlvbiggb3B0aW9uLCBpbmRleCApIHsKCQl2YXIgb3B0Z3JvdXAgPSBvcHRpb24ucGFyZW50KCAib3B0Z3JvdXAiICk7CgoJCXJldHVybiB7CgkJCWVsZW1lbnQ6IG9wdGlvbiwKCQkJaW5kZXg6IGluZGV4LAoJCQl2YWx1ZTogb3B0aW9uLnZhbCgpLAoJCQlsYWJlbDogb3B0aW9uLnRleHQoKSwKCQkJb3B0Z3JvdXA6IG9wdGdyb3VwLmF0dHIoICJsYWJlbCIgKSB8fCAiIiwKCQkJZGlzYWJsZWQ6IG9wdGdyb3VwLnByb3AoICJkaXNhYmxlZCIgKSB8fCBvcHRpb24ucHJvcCggImRpc2FibGVkIiApCgkJfTsKCX0sCgoJX2Rlc3Ryb3k6IGZ1bmN0aW9uKCkgewoJCXRoaXMuX3VuYmluZEZvcm1SZXNldEhhbmRsZXIoKTsKCQl0aGlzLm1lbnVXcmFwLnJlbW92ZSgpOwoJCXRoaXMuYnV0dG9uLnJlbW92ZSgpOwoJCXRoaXMuZWxlbWVudC5zaG93KCk7CgkJdGhpcy5lbGVtZW50LnJlbW92ZVVuaXF1ZUlkKCk7CgkJdGhpcy5sYWJlbHMuYXR0ciggImZvciIsIHRoaXMuaWRzLmVsZW1lbnQgKTsKCX0KfSBdICk7CgoKLyohCiAqIGpRdWVyeSBVSSBTbGlkZXIgMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiBTbGlkZXIKLy8+Pmdyb3VwOiBXaWRnZXRzCi8vPj5kZXNjcmlwdGlvbjogRGlzcGxheXMgYSBmbGV4aWJsZSBzbGlkZXIgd2l0aCByYW5nZXMgYW5kIGFjY2Vzc2liaWxpdHkgdmlhIGtleWJvYXJkLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vc2xpZGVyLwovLz4+ZGVtb3M6IGh0dHA6Ly9qcXVlcnl1aS5jb20vc2xpZGVyLwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvY29yZS5jc3MKLy8+PmNzcy5zdHJ1Y3R1cmU6IC4uLy4uL3RoZW1lcy9iYXNlL3NsaWRlci5jc3MKLy8+PmNzcy50aGVtZTogLi4vLi4vdGhlbWVzL2Jhc2UvdGhlbWUuY3NzCgoKCnZhciB3aWRnZXRzU2xpZGVyID0gJC53aWRnZXQoICJ1aS5zbGlkZXIiLCAkLnVpLm1vdXNlLCB7Cgl2ZXJzaW9uOiAiMS4xMi4xIiwKCXdpZGdldEV2ZW50UHJlZml4OiAic2xpZGUiLAoKCW9wdGlvbnM6IHsKCQlhbmltYXRlOiBmYWxzZSwKCQljbGFzc2VzOiB7CgkJCSJ1aS1zbGlkZXIiOiAidWktY29ybmVyLWFsbCIsCgkJCSJ1aS1zbGlkZXItaGFuZGxlIjogInVpLWNvcm5lci1hbGwiLAoKCQkJLy8gTm90ZTogdWktd2lkZ2V0LWhlYWRlciBpc24ndCB0aGUgbW9zdCBmaXR0aW5nbHkgc2VtYW50aWMgZnJhbWV3b3JrIGNsYXNzIGZvciB0aGlzCgkJCS8vIGVsZW1lbnQsIGJ1dCB3b3JrZWQgYmVzdCB2aXN1YWxseSB3aXRoIGEgdmFyaWV0eSBvZiB0aGVtZXMKCQkJInVpLXNsaWRlci1yYW5nZSI6ICJ1aS1jb3JuZXItYWxsIHVpLXdpZGdldC1oZWFkZXIiCgkJfSwKCQlkaXN0YW5jZTogMCwKCQltYXg6IDEwMCwKCQltaW46IDAsCgkJb3JpZW50YXRpb246ICJob3Jpem9udGFsIiwKCQlyYW5nZTogZmFsc2UsCgkJc3RlcDogMSwKCQl2YWx1ZTogMCwKCQl2YWx1ZXM6IG51bGwsCgoJCS8vIENhbGxiYWNrcwoJCWNoYW5nZTogbnVsbCwKCQlzbGlkZTogbnVsbCwKCQlzdGFydDogbnVsbCwKCQlzdG9wOiBudWxsCgl9LAoKCS8vIE51bWJlciBvZiBwYWdlcyBpbiBhIHNsaWRlcgoJLy8gKGhvdyBtYW55IHRpbWVzIGNhbiB5b3UgcGFnZSB1cC9kb3duIHRvIGdvIHRocm91Z2ggdGhlIHdob2xlIHJhbmdlKQoJbnVtUGFnZXM6IDUsCgoJX2NyZWF0ZTogZnVuY3Rpb24oKSB7CgkJdGhpcy5fa2V5U2xpZGluZyA9IGZhbHNlOwoJCXRoaXMuX21vdXNlU2xpZGluZyA9IGZhbHNlOwoJCXRoaXMuX2FuaW1hdGVPZmYgPSB0cnVlOwoJCXRoaXMuX2hhbmRsZUluZGV4ID0gbnVsbDsKCQl0aGlzLl9kZXRlY3RPcmllbnRhdGlvbigpOwoJCXRoaXMuX21vdXNlSW5pdCgpOwoJCXRoaXMuX2NhbGN1bGF0ZU5ld01heCgpOwoKCQl0aGlzLl9hZGRDbGFzcyggInVpLXNsaWRlciB1aS1zbGlkZXItIiArIHRoaXMub3JpZW50YXRpb24sCgkJCSJ1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQiICk7CgoJCXRoaXMuX3JlZnJlc2goKTsKCgkJdGhpcy5fYW5pbWF0ZU9mZiA9IGZhbHNlOwoJfSwKCglfcmVmcmVzaDogZnVuY3Rpb24oKSB7CgkJdGhpcy5fY3JlYXRlUmFuZ2UoKTsKCQl0aGlzLl9jcmVhdGVIYW5kbGVzKCk7CgkJdGhpcy5fc2V0dXBFdmVudHMoKTsKCQl0aGlzLl9yZWZyZXNoVmFsdWUoKTsKCX0sCgoJX2NyZWF0ZUhhbmRsZXM6IGZ1bmN0aW9uKCkgewoJCXZhciBpLCBoYW5kbGVDb3VudCwKCQkJb3B0aW9ucyA9IHRoaXMub3B0aW9ucywKCQkJZXhpc3RpbmdIYW5kbGVzID0gdGhpcy5lbGVtZW50LmZpbmQoICIudWktc2xpZGVyLWhhbmRsZSIgKSwKCQkJaGFuZGxlID0gIjxzcGFuIHRhYmluZGV4PScwJz48L3NwYW4+IiwKCQkJaGFuZGxlcyA9IFtdOwoKCQloYW5kbGVDb3VudCA9ICggb3B0aW9ucy52YWx1ZXMgJiYgb3B0aW9ucy52YWx1ZXMubGVuZ3RoICkgfHwgMTsKCgkJaWYgKCBleGlzdGluZ0hhbmRsZXMubGVuZ3RoID4gaGFuZGxlQ291bnQgKSB7CgkJCWV4aXN0aW5nSGFuZGxlcy5zbGljZSggaGFuZGxlQ291bnQgKS5yZW1vdmUoKTsKCQkJZXhpc3RpbmdIYW5kbGVzID0gZXhpc3RpbmdIYW5kbGVzLnNsaWNlKCAwLCBoYW5kbGVDb3VudCApOwoJCX0KCgkJZm9yICggaSA9IGV4aXN0aW5nSGFuZGxlcy5sZW5ndGg7IGkgPCBoYW5kbGVDb3VudDsgaSsrICkgewoJCQloYW5kbGVzLnB1c2goIGhhbmRsZSApOwoJCX0KCgkJdGhpcy5oYW5kbGVzID0gZXhpc3RpbmdIYW5kbGVzLmFkZCggJCggaGFuZGxlcy5qb2luKCAiIiApICkuYXBwZW5kVG8oIHRoaXMuZWxlbWVudCApICk7CgoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLmhhbmRsZXMsICJ1aS1zbGlkZXItaGFuZGxlIiwgInVpLXN0YXRlLWRlZmF1bHQiICk7CgoJCXRoaXMuaGFuZGxlID0gdGhpcy5oYW5kbGVzLmVxKCAwICk7CgoJCXRoaXMuaGFuZGxlcy5lYWNoKCBmdW5jdGlvbiggaSApIHsKCQkJJCggdGhpcyApCgkJCQkuZGF0YSggInVpLXNsaWRlci1oYW5kbGUtaW5kZXgiLCBpICkKCQkJCS5hdHRyKCAidGFiSW5kZXgiLCAwICk7CgkJfSApOwoJfSwKCglfY3JlYXRlUmFuZ2U6IGZ1bmN0aW9uKCkgewoJCXZhciBvcHRpb25zID0gdGhpcy5vcHRpb25zOwoKCQlpZiAoIG9wdGlvbnMucmFuZ2UgKSB7CgkJCWlmICggb3B0aW9ucy5yYW5nZSA9PT0gdHJ1ZSApIHsKCQkJCWlmICggIW9wdGlvbnMudmFsdWVzICkgewoJCQkJCW9wdGlvbnMudmFsdWVzID0gWyB0aGlzLl92YWx1ZU1pbigpLCB0aGlzLl92YWx1ZU1pbigpIF07CgkJCQl9IGVsc2UgaWYgKCBvcHRpb25zLnZhbHVlcy5sZW5ndGggJiYgb3B0aW9ucy52YWx1ZXMubGVuZ3RoICE9PSAyICkgewoJCQkJCW9wdGlvbnMudmFsdWVzID0gWyBvcHRpb25zLnZhbHVlc1sgMCBdLCBvcHRpb25zLnZhbHVlc1sgMCBdIF07CgkJCQl9IGVsc2UgaWYgKCAkLmlzQXJyYXkoIG9wdGlvbnMudmFsdWVzICkgKSB7CgkJCQkJb3B0aW9ucy52YWx1ZXMgPSBvcHRpb25zLnZhbHVlcy5zbGljZSggMCApOwoJCQkJfQoJCQl9CgoJCQlpZiAoICF0aGlzLnJhbmdlIHx8ICF0aGlzLnJhbmdlLmxlbmd0aCApIHsKCQkJCXRoaXMucmFuZ2UgPSAkKCAiPGRpdj4iICkKCQkJCQkuYXBwZW5kVG8oIHRoaXMuZWxlbWVudCApOwoKCQkJCXRoaXMuX2FkZENsYXNzKCB0aGlzLnJhbmdlLCAidWktc2xpZGVyLXJhbmdlIiApOwoJCQl9IGVsc2UgewoJCQkJdGhpcy5fcmVtb3ZlQ2xhc3MoIHRoaXMucmFuZ2UsICJ1aS1zbGlkZXItcmFuZ2UtbWluIHVpLXNsaWRlci1yYW5nZS1tYXgiICk7CgoJCQkJLy8gSGFuZGxlIHJhbmdlIHN3aXRjaGluZyBmcm9tIHRydWUgdG8gbWluL21heAoJCQkJdGhpcy5yYW5nZS5jc3MoIHsKCQkJCQkibGVmdCI6ICIiLAoJCQkJCSJib3R0b20iOiAiIgoJCQkJfSApOwoJCQl9CgkJCWlmICggb3B0aW9ucy5yYW5nZSA9PT0gIm1pbiIgfHwgb3B0aW9ucy5yYW5nZSA9PT0gIm1heCIgKSB7CgkJCQl0aGlzLl9hZGRDbGFzcyggdGhpcy5yYW5nZSwgInVpLXNsaWRlci1yYW5nZS0iICsgb3B0aW9ucy5yYW5nZSApOwoJCQl9CgkJfSBlbHNlIHsKCQkJaWYgKCB0aGlzLnJhbmdlICkgewoJCQkJdGhpcy5yYW5nZS5yZW1vdmUoKTsKCQkJfQoJCQl0aGlzLnJhbmdlID0gbnVsbDsKCQl9Cgl9LAoKCV9zZXR1cEV2ZW50czogZnVuY3Rpb24oKSB7CgkJdGhpcy5fb2ZmKCB0aGlzLmhhbmRsZXMgKTsKCQl0aGlzLl9vbiggdGhpcy5oYW5kbGVzLCB0aGlzLl9oYW5kbGVFdmVudHMgKTsKCQl0aGlzLl9ob3ZlcmFibGUoIHRoaXMuaGFuZGxlcyApOwoJCXRoaXMuX2ZvY3VzYWJsZSggdGhpcy5oYW5kbGVzICk7Cgl9LAoKCV9kZXN0cm95OiBmdW5jdGlvbigpIHsKCQl0aGlzLmhhbmRsZXMucmVtb3ZlKCk7CgkJaWYgKCB0aGlzLnJhbmdlICkgewoJCQl0aGlzLnJhbmdlLnJlbW92ZSgpOwoJCX0KCgkJdGhpcy5fbW91c2VEZXN0cm95KCk7Cgl9LAoKCV9tb3VzZUNhcHR1cmU6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgcG9zaXRpb24sIG5vcm1WYWx1ZSwgZGlzdGFuY2UsIGNsb3Nlc3RIYW5kbGUsIGluZGV4LCBhbGxvd2VkLCBvZmZzZXQsIG1vdXNlT3ZlckhhbmRsZSwKCQkJdGhhdCA9IHRoaXMsCgkJCW8gPSB0aGlzLm9wdGlvbnM7CgoJCWlmICggby5kaXNhYmxlZCApIHsKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCgkJdGhpcy5lbGVtZW50U2l6ZSA9IHsKCQkJd2lkdGg6IHRoaXMuZWxlbWVudC5vdXRlcldpZHRoKCksCgkJCWhlaWdodDogdGhpcy5lbGVtZW50Lm91dGVySGVpZ2h0KCkKCQl9OwoJCXRoaXMuZWxlbWVudE9mZnNldCA9IHRoaXMuZWxlbWVudC5vZmZzZXQoKTsKCgkJcG9zaXRpb24gPSB7IHg6IGV2ZW50LnBhZ2VYLCB5OiBldmVudC5wYWdlWSB9OwoJCW5vcm1WYWx1ZSA9IHRoaXMuX25vcm1WYWx1ZUZyb21Nb3VzZSggcG9zaXRpb24gKTsKCQlkaXN0YW5jZSA9IHRoaXMuX3ZhbHVlTWF4KCkgLSB0aGlzLl92YWx1ZU1pbigpICsgMTsKCQl0aGlzLmhhbmRsZXMuZWFjaCggZnVuY3Rpb24oIGkgKSB7CgkJCXZhciB0aGlzRGlzdGFuY2UgPSBNYXRoLmFicyggbm9ybVZhbHVlIC0gdGhhdC52YWx1ZXMoIGkgKSApOwoJCQlpZiAoICggZGlzdGFuY2UgPiB0aGlzRGlzdGFuY2UgKSB8fAoJCQkJKCBkaXN0YW5jZSA9PT0gdGhpc0Rpc3RhbmNlICYmCgkJCQkJKCBpID09PSB0aGF0Ll9sYXN0Q2hhbmdlZFZhbHVlIHx8IHRoYXQudmFsdWVzKCBpICkgPT09IG8ubWluICkgKSApIHsKCQkJCWRpc3RhbmNlID0gdGhpc0Rpc3RhbmNlOwoJCQkJY2xvc2VzdEhhbmRsZSA9ICQoIHRoaXMgKTsKCQkJCWluZGV4ID0gaTsKCQkJfQoJCX0gKTsKCgkJYWxsb3dlZCA9IHRoaXMuX3N0YXJ0KCBldmVudCwgaW5kZXggKTsKCQlpZiAoIGFsbG93ZWQgPT09IGZhbHNlICkgewoJCQlyZXR1cm4gZmFsc2U7CgkJfQoJCXRoaXMuX21vdXNlU2xpZGluZyA9IHRydWU7CgoJCXRoaXMuX2hhbmRsZUluZGV4ID0gaW5kZXg7CgoJCXRoaXMuX2FkZENsYXNzKCBjbG9zZXN0SGFuZGxlLCBudWxsLCAidWktc3RhdGUtYWN0aXZlIiApOwoJCWNsb3Nlc3RIYW5kbGUudHJpZ2dlciggImZvY3VzIiApOwoKCQlvZmZzZXQgPSBjbG9zZXN0SGFuZGxlLm9mZnNldCgpOwoJCW1vdXNlT3ZlckhhbmRsZSA9ICEkKCBldmVudC50YXJnZXQgKS5wYXJlbnRzKCkuYWRkQmFjaygpLmlzKCAiLnVpLXNsaWRlci1oYW5kbGUiICk7CgkJdGhpcy5fY2xpY2tPZmZzZXQgPSBtb3VzZU92ZXJIYW5kbGUgPyB7IGxlZnQ6IDAsIHRvcDogMCB9IDogewoJCQlsZWZ0OiBldmVudC5wYWdlWCAtIG9mZnNldC5sZWZ0IC0gKCBjbG9zZXN0SGFuZGxlLndpZHRoKCkgLyAyICksCgkJCXRvcDogZXZlbnQucGFnZVkgLSBvZmZzZXQudG9wIC0KCQkJCSggY2xvc2VzdEhhbmRsZS5oZWlnaHQoKSAvIDIgKSAtCgkJCQkoIHBhcnNlSW50KCBjbG9zZXN0SGFuZGxlLmNzcyggImJvcmRlclRvcFdpZHRoIiApLCAxMCApIHx8IDAgKSAtCgkJCQkoIHBhcnNlSW50KCBjbG9zZXN0SGFuZGxlLmNzcyggImJvcmRlckJvdHRvbVdpZHRoIiApLCAxMCApIHx8IDAgKSArCgkJCQkoIHBhcnNlSW50KCBjbG9zZXN0SGFuZGxlLmNzcyggIm1hcmdpblRvcCIgKSwgMTAgKSB8fCAwICkKCQl9OwoKCQlpZiAoICF0aGlzLmhhbmRsZXMuaGFzQ2xhc3MoICJ1aS1zdGF0ZS1ob3ZlciIgKSApIHsKCQkJdGhpcy5fc2xpZGUoIGV2ZW50LCBpbmRleCwgbm9ybVZhbHVlICk7CgkJfQoJCXRoaXMuX2FuaW1hdGVPZmYgPSB0cnVlOwoJCXJldHVybiB0cnVlOwoJfSwKCglfbW91c2VTdGFydDogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRydWU7Cgl9LAoKCV9tb3VzZURyYWc6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgcG9zaXRpb24gPSB7IHg6IGV2ZW50LnBhZ2VYLCB5OiBldmVudC5wYWdlWSB9LAoJCQlub3JtVmFsdWUgPSB0aGlzLl9ub3JtVmFsdWVGcm9tTW91c2UoIHBvc2l0aW9uICk7CgoJCXRoaXMuX3NsaWRlKCBldmVudCwgdGhpcy5faGFuZGxlSW5kZXgsIG5vcm1WYWx1ZSApOwoKCQlyZXR1cm4gZmFsc2U7Cgl9LAoKCV9tb3VzZVN0b3A6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl0aGlzLl9yZW1vdmVDbGFzcyggdGhpcy5oYW5kbGVzLCBudWxsLCAidWktc3RhdGUtYWN0aXZlIiApOwoJCXRoaXMuX21vdXNlU2xpZGluZyA9IGZhbHNlOwoKCQl0aGlzLl9zdG9wKCBldmVudCwgdGhpcy5faGFuZGxlSW5kZXggKTsKCQl0aGlzLl9jaGFuZ2UoIGV2ZW50LCB0aGlzLl9oYW5kbGVJbmRleCApOwoKCQl0aGlzLl9oYW5kbGVJbmRleCA9IG51bGw7CgkJdGhpcy5fY2xpY2tPZmZzZXQgPSBudWxsOwoJCXRoaXMuX2FuaW1hdGVPZmYgPSBmYWxzZTsKCgkJcmV0dXJuIGZhbHNlOwoJfSwKCglfZGV0ZWN0T3JpZW50YXRpb246IGZ1bmN0aW9uKCkgewoJCXRoaXMub3JpZW50YXRpb24gPSAoIHRoaXMub3B0aW9ucy5vcmllbnRhdGlvbiA9PT0gInZlcnRpY2FsIiApID8gInZlcnRpY2FsIiA6ICJob3Jpem9udGFsIjsKCX0sCgoJX25vcm1WYWx1ZUZyb21Nb3VzZTogZnVuY3Rpb24oIHBvc2l0aW9uICkgewoJCXZhciBwaXhlbFRvdGFsLAoJCQlwaXhlbE1vdXNlLAoJCQlwZXJjZW50TW91c2UsCgkJCXZhbHVlVG90YWwsCgkJCXZhbHVlTW91c2U7CgoJCWlmICggdGhpcy5vcmllbnRhdGlvbiA9PT0gImhvcml6b250YWwiICkgewoJCQlwaXhlbFRvdGFsID0gdGhpcy5lbGVtZW50U2l6ZS53aWR0aDsKCQkJcGl4ZWxNb3VzZSA9IHBvc2l0aW9uLnggLSB0aGlzLmVsZW1lbnRPZmZzZXQubGVmdCAtCgkJCQkoIHRoaXMuX2NsaWNrT2Zmc2V0ID8gdGhpcy5fY2xpY2tPZmZzZXQubGVmdCA6IDAgKTsKCQl9IGVsc2UgewoJCQlwaXhlbFRvdGFsID0gdGhpcy5lbGVtZW50U2l6ZS5oZWlnaHQ7CgkJCXBpeGVsTW91c2UgPSBwb3NpdGlvbi55IC0gdGhpcy5lbGVtZW50T2Zmc2V0LnRvcCAtCgkJCQkoIHRoaXMuX2NsaWNrT2Zmc2V0ID8gdGhpcy5fY2xpY2tPZmZzZXQudG9wIDogMCApOwoJCX0KCgkJcGVyY2VudE1vdXNlID0gKCBwaXhlbE1vdXNlIC8gcGl4ZWxUb3RhbCApOwoJCWlmICggcGVyY2VudE1vdXNlID4gMSApIHsKCQkJcGVyY2VudE1vdXNlID0gMTsKCQl9CgkJaWYgKCBwZXJjZW50TW91c2UgPCAwICkgewoJCQlwZXJjZW50TW91c2UgPSAwOwoJCX0KCQlpZiAoIHRoaXMub3JpZW50YXRpb24gPT09ICJ2ZXJ0aWNhbCIgKSB7CgkJCXBlcmNlbnRNb3VzZSA9IDEgLSBwZXJjZW50TW91c2U7CgkJfQoKCQl2YWx1ZVRvdGFsID0gdGhpcy5fdmFsdWVNYXgoKSAtIHRoaXMuX3ZhbHVlTWluKCk7CgkJdmFsdWVNb3VzZSA9IHRoaXMuX3ZhbHVlTWluKCkgKyBwZXJjZW50TW91c2UgKiB2YWx1ZVRvdGFsOwoKCQlyZXR1cm4gdGhpcy5fdHJpbUFsaWduVmFsdWUoIHZhbHVlTW91c2UgKTsKCX0sCgoJX3VpSGFzaDogZnVuY3Rpb24oIGluZGV4LCB2YWx1ZSwgdmFsdWVzICkgewoJCXZhciB1aUhhc2ggPSB7CgkJCWhhbmRsZTogdGhpcy5oYW5kbGVzWyBpbmRleCBdLAoJCQloYW5kbGVJbmRleDogaW5kZXgsCgkJCXZhbHVlOiB2YWx1ZSAhPT0gdW5kZWZpbmVkID8gdmFsdWUgOiB0aGlzLnZhbHVlKCkKCQl9OwoKCQlpZiAoIHRoaXMuX2hhc011bHRpcGxlVmFsdWVzKCkgKSB7CgkJCXVpSGFzaC52YWx1ZSA9IHZhbHVlICE9PSB1bmRlZmluZWQgPyB2YWx1ZSA6IHRoaXMudmFsdWVzKCBpbmRleCApOwoJCQl1aUhhc2gudmFsdWVzID0gdmFsdWVzIHx8IHRoaXMudmFsdWVzKCk7CgkJfQoKCQlyZXR1cm4gdWlIYXNoOwoJfSwKCglfaGFzTXVsdGlwbGVWYWx1ZXM6IGZ1bmN0aW9uKCkgewoJCXJldHVybiB0aGlzLm9wdGlvbnMudmFsdWVzICYmIHRoaXMub3B0aW9ucy52YWx1ZXMubGVuZ3RoOwoJfSwKCglfc3RhcnQ6IGZ1bmN0aW9uKCBldmVudCwgaW5kZXggKSB7CgkJcmV0dXJuIHRoaXMuX3RyaWdnZXIoICJzdGFydCIsIGV2ZW50LCB0aGlzLl91aUhhc2goIGluZGV4ICkgKTsKCX0sCgoJX3NsaWRlOiBmdW5jdGlvbiggZXZlbnQsIGluZGV4LCBuZXdWYWwgKSB7CgkJdmFyIGFsbG93ZWQsIG90aGVyVmFsLAoJCQljdXJyZW50VmFsdWUgPSB0aGlzLnZhbHVlKCksCgkJCW5ld1ZhbHVlcyA9IHRoaXMudmFsdWVzKCk7CgoJCWlmICggdGhpcy5faGFzTXVsdGlwbGVWYWx1ZXMoKSApIHsKCQkJb3RoZXJWYWwgPSB0aGlzLnZhbHVlcyggaW5kZXggPyAwIDogMSApOwoJCQljdXJyZW50VmFsdWUgPSB0aGlzLnZhbHVlcyggaW5kZXggKTsKCgkJCWlmICggdGhpcy5vcHRpb25zLnZhbHVlcy5sZW5ndGggPT09IDIgJiYgdGhpcy5vcHRpb25zLnJhbmdlID09PSB0cnVlICkgewoJCQkJbmV3VmFsID0gIGluZGV4ID09PSAwID8gTWF0aC5taW4oIG90aGVyVmFsLCBuZXdWYWwgKSA6IE1hdGgubWF4KCBvdGhlclZhbCwgbmV3VmFsICk7CgkJCX0KCgkJCW5ld1ZhbHVlc1sgaW5kZXggXSA9IG5ld1ZhbDsKCQl9CgoJCWlmICggbmV3VmFsID09PSBjdXJyZW50VmFsdWUgKSB7CgkJCXJldHVybjsKCQl9CgoJCWFsbG93ZWQgPSB0aGlzLl90cmlnZ2VyKCAic2xpZGUiLCBldmVudCwgdGhpcy5fdWlIYXNoKCBpbmRleCwgbmV3VmFsLCBuZXdWYWx1ZXMgKSApOwoKCQkvLyBBIHNsaWRlIGNhbiBiZSBjYW5jZWxlZCBieSByZXR1cm5pbmcgZmFsc2UgZnJvbSB0aGUgc2xpZGUgY2FsbGJhY2sKCQlpZiAoIGFsbG93ZWQgPT09IGZhbHNlICkgewoJCQlyZXR1cm47CgkJfQoKCQlpZiAoIHRoaXMuX2hhc011bHRpcGxlVmFsdWVzKCkgKSB7CgkJCXRoaXMudmFsdWVzKCBpbmRleCwgbmV3VmFsICk7CgkJfSBlbHNlIHsKCQkJdGhpcy52YWx1ZSggbmV3VmFsICk7CgkJfQoJfSwKCglfc3RvcDogZnVuY3Rpb24oIGV2ZW50LCBpbmRleCApIHsKCQl0aGlzLl90cmlnZ2VyKCAic3RvcCIsIGV2ZW50LCB0aGlzLl91aUhhc2goIGluZGV4ICkgKTsKCX0sCgoJX2NoYW5nZTogZnVuY3Rpb24oIGV2ZW50LCBpbmRleCApIHsKCQlpZiAoICF0aGlzLl9rZXlTbGlkaW5nICYmICF0aGlzLl9tb3VzZVNsaWRpbmcgKSB7CgoJCQkvL3N0b3JlIHRoZSBsYXN0IGNoYW5nZWQgdmFsdWUgaW5kZXggZm9yIHJlZmVyZW5jZSB3aGVuIGhhbmRsZXMgb3ZlcmxhcAoJCQl0aGlzLl9sYXN0Q2hhbmdlZFZhbHVlID0gaW5kZXg7CgkJCXRoaXMuX3RyaWdnZXIoICJjaGFuZ2UiLCBldmVudCwgdGhpcy5fdWlIYXNoKCBpbmRleCApICk7CgkJfQoJfSwKCgl2YWx1ZTogZnVuY3Rpb24oIG5ld1ZhbHVlICkgewoJCWlmICggYXJndW1lbnRzLmxlbmd0aCApIHsKCQkJdGhpcy5vcHRpb25zLnZhbHVlID0gdGhpcy5fdHJpbUFsaWduVmFsdWUoIG5ld1ZhbHVlICk7CgkJCXRoaXMuX3JlZnJlc2hWYWx1ZSgpOwoJCQl0aGlzLl9jaGFuZ2UoIG51bGwsIDAgKTsKCQkJcmV0dXJuOwoJCX0KCgkJcmV0dXJuIHRoaXMuX3ZhbHVlKCk7Cgl9LAoKCXZhbHVlczogZnVuY3Rpb24oIGluZGV4LCBuZXdWYWx1ZSApIHsKCQl2YXIgdmFscywKCQkJbmV3VmFsdWVzLAoJCQlpOwoKCQlpZiAoIGFyZ3VtZW50cy5sZW5ndGggPiAxICkgewoJCQl0aGlzLm9wdGlvbnMudmFsdWVzWyBpbmRleCBdID0gdGhpcy5fdHJpbUFsaWduVmFsdWUoIG5ld1ZhbHVlICk7CgkJCXRoaXMuX3JlZnJlc2hWYWx1ZSgpOwoJCQl0aGlzLl9jaGFuZ2UoIG51bGwsIGluZGV4ICk7CgkJCXJldHVybjsKCQl9CgoJCWlmICggYXJndW1lbnRzLmxlbmd0aCApIHsKCQkJaWYgKCAkLmlzQXJyYXkoIGFyZ3VtZW50c1sgMCBdICkgKSB7CgkJCQl2YWxzID0gdGhpcy5vcHRpb25zLnZhbHVlczsKCQkJCW5ld1ZhbHVlcyA9IGFyZ3VtZW50c1sgMCBdOwoJCQkJZm9yICggaSA9IDA7IGkgPCB2YWxzLmxlbmd0aDsgaSArPSAxICkgewoJCQkJCXZhbHNbIGkgXSA9IHRoaXMuX3RyaW1BbGlnblZhbHVlKCBuZXdWYWx1ZXNbIGkgXSApOwoJCQkJCXRoaXMuX2NoYW5nZSggbnVsbCwgaSApOwoJCQkJfQoJCQkJdGhpcy5fcmVmcmVzaFZhbHVlKCk7CgkJCX0gZWxzZSB7CgkJCQlpZiAoIHRoaXMuX2hhc011bHRpcGxlVmFsdWVzKCkgKSB7CgkJCQkJcmV0dXJuIHRoaXMuX3ZhbHVlcyggaW5kZXggKTsKCQkJCX0gZWxzZSB7CgkJCQkJcmV0dXJuIHRoaXMudmFsdWUoKTsKCQkJCX0KCQkJfQoJCX0gZWxzZSB7CgkJCXJldHVybiB0aGlzLl92YWx1ZXMoKTsKCQl9Cgl9LAoKCV9zZXRPcHRpb246IGZ1bmN0aW9uKCBrZXksIHZhbHVlICkgewoJCXZhciBpLAoJCQl2YWxzTGVuZ3RoID0gMDsKCgkJaWYgKCBrZXkgPT09ICJyYW5nZSIgJiYgdGhpcy5vcHRpb25zLnJhbmdlID09PSB0cnVlICkgewoJCQlpZiAoIHZhbHVlID09PSAibWluIiApIHsKCQkJCXRoaXMub3B0aW9ucy52YWx1ZSA9IHRoaXMuX3ZhbHVlcyggMCApOwoJCQkJdGhpcy5vcHRpb25zLnZhbHVlcyA9IG51bGw7CgkJCX0gZWxzZSBpZiAoIHZhbHVlID09PSAibWF4IiApIHsKCQkJCXRoaXMub3B0aW9ucy52YWx1ZSA9IHRoaXMuX3ZhbHVlcyggdGhpcy5vcHRpb25zLnZhbHVlcy5sZW5ndGggLSAxICk7CgkJCQl0aGlzLm9wdGlvbnMudmFsdWVzID0gbnVsbDsKCQkJfQoJCX0KCgkJaWYgKCAkLmlzQXJyYXkoIHRoaXMub3B0aW9ucy52YWx1ZXMgKSApIHsKCQkJdmFsc0xlbmd0aCA9IHRoaXMub3B0aW9ucy52YWx1ZXMubGVuZ3RoOwoJCX0KCgkJdGhpcy5fc3VwZXIoIGtleSwgdmFsdWUgKTsKCgkJc3dpdGNoICgga2V5ICkgewoJCQljYXNlICJvcmllbnRhdGlvbiI6CgkJCQl0aGlzLl9kZXRlY3RPcmllbnRhdGlvbigpOwoJCQkJdGhpcy5fcmVtb3ZlQ2xhc3MoICJ1aS1zbGlkZXItaG9yaXpvbnRhbCB1aS1zbGlkZXItdmVydGljYWwiICkKCQkJCQkuX2FkZENsYXNzKCAidWktc2xpZGVyLSIgKyB0aGlzLm9yaWVudGF0aW9uICk7CgkJCQl0aGlzLl9yZWZyZXNoVmFsdWUoKTsKCQkJCWlmICggdGhpcy5vcHRpb25zLnJhbmdlICkgewoJCQkJCXRoaXMuX3JlZnJlc2hSYW5nZSggdmFsdWUgKTsKCQkJCX0KCgkJCQkvLyBSZXNldCBwb3NpdGlvbmluZyBmcm9tIHByZXZpb3VzIG9yaWVudGF0aW9uCgkJCQl0aGlzLmhhbmRsZXMuY3NzKCB2YWx1ZSA9PT0gImhvcml6b250YWwiID8gImJvdHRvbSIgOiAibGVmdCIsICIiICk7CgkJCQlicmVhazsKCQkJY2FzZSAidmFsdWUiOgoJCQkJdGhpcy5fYW5pbWF0ZU9mZiA9IHRydWU7CgkJCQl0aGlzLl9yZWZyZXNoVmFsdWUoKTsKCQkJCXRoaXMuX2NoYW5nZSggbnVsbCwgMCApOwoJCQkJdGhpcy5fYW5pbWF0ZU9mZiA9IGZhbHNlOwoJCQkJYnJlYWs7CgkJCWNhc2UgInZhbHVlcyI6CgkJCQl0aGlzLl9hbmltYXRlT2ZmID0gdHJ1ZTsKCQkJCXRoaXMuX3JlZnJlc2hWYWx1ZSgpOwoKCQkJCS8vIFN0YXJ0IGZyb20gdGhlIGxhc3QgaGFuZGxlIHRvIHByZXZlbnQgdW5yZWFjaGFibGUgaGFuZGxlcyAoIzkwNDYpCgkJCQlmb3IgKCBpID0gdmFsc0xlbmd0aCAtIDE7IGkgPj0gMDsgaS0tICkgewoJCQkJCXRoaXMuX2NoYW5nZSggbnVsbCwgaSApOwoJCQkJfQoJCQkJdGhpcy5fYW5pbWF0ZU9mZiA9IGZhbHNlOwoJCQkJYnJlYWs7CgkJCWNhc2UgInN0ZXAiOgoJCQljYXNlICJtaW4iOgoJCQljYXNlICJtYXgiOgoJCQkJdGhpcy5fYW5pbWF0ZU9mZiA9IHRydWU7CgkJCQl0aGlzLl9jYWxjdWxhdGVOZXdNYXgoKTsKCQkJCXRoaXMuX3JlZnJlc2hWYWx1ZSgpOwoJCQkJdGhpcy5fYW5pbWF0ZU9mZiA9IGZhbHNlOwoJCQkJYnJlYWs7CgkJCWNhc2UgInJhbmdlIjoKCQkJCXRoaXMuX2FuaW1hdGVPZmYgPSB0cnVlOwoJCQkJdGhpcy5fcmVmcmVzaCgpOwoJCQkJdGhpcy5fYW5pbWF0ZU9mZiA9IGZhbHNlOwoJCQkJYnJlYWs7CgkJfQoJfSwKCglfc2V0T3B0aW9uRGlzYWJsZWQ6IGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQl0aGlzLl9zdXBlciggdmFsdWUgKTsKCgkJdGhpcy5fdG9nZ2xlQ2xhc3MoIG51bGwsICJ1aS1zdGF0ZS1kaXNhYmxlZCIsICEhdmFsdWUgKTsKCX0sCgoJLy9pbnRlcm5hbCB2YWx1ZSBnZXR0ZXIKCS8vIF92YWx1ZSgpIHJldHVybnMgdmFsdWUgdHJpbW1lZCBieSBtaW4gYW5kIG1heCwgYWxpZ25lZCBieSBzdGVwCglfdmFsdWU6IGZ1bmN0aW9uKCkgewoJCXZhciB2YWwgPSB0aGlzLm9wdGlvbnMudmFsdWU7CgkJdmFsID0gdGhpcy5fdHJpbUFsaWduVmFsdWUoIHZhbCApOwoKCQlyZXR1cm4gdmFsOwoJfSwKCgkvL2ludGVybmFsIHZhbHVlcyBnZXR0ZXIKCS8vIF92YWx1ZXMoKSByZXR1cm5zIGFycmF5IG9mIHZhbHVlcyB0cmltbWVkIGJ5IG1pbiBhbmQgbWF4LCBhbGlnbmVkIGJ5IHN0ZXAKCS8vIF92YWx1ZXMoIGluZGV4ICkgcmV0dXJucyBzaW5nbGUgdmFsdWUgdHJpbW1lZCBieSBtaW4gYW5kIG1heCwgYWxpZ25lZCBieSBzdGVwCglfdmFsdWVzOiBmdW5jdGlvbiggaW5kZXggKSB7CgkJdmFyIHZhbCwKCQkJdmFscywKCQkJaTsKCgkJaWYgKCBhcmd1bWVudHMubGVuZ3RoICkgewoJCQl2YWwgPSB0aGlzLm9wdGlvbnMudmFsdWVzWyBpbmRleCBdOwoJCQl2YWwgPSB0aGlzLl90cmltQWxpZ25WYWx1ZSggdmFsICk7CgoJCQlyZXR1cm4gdmFsOwoJCX0gZWxzZSBpZiAoIHRoaXMuX2hhc011bHRpcGxlVmFsdWVzKCkgKSB7CgoJCQkvLyAuc2xpY2UoKSBjcmVhdGVzIGEgY29weSBvZiB0aGUgYXJyYXkKCQkJLy8gdGhpcyBjb3B5IGdldHMgdHJpbW1lZCBieSBtaW4gYW5kIG1heCBhbmQgdGhlbiByZXR1cm5lZAoJCQl2YWxzID0gdGhpcy5vcHRpb25zLnZhbHVlcy5zbGljZSgpOwoJCQlmb3IgKCBpID0gMDsgaSA8IHZhbHMubGVuZ3RoOyBpICs9IDEgKSB7CgkJCQl2YWxzWyBpIF0gPSB0aGlzLl90cmltQWxpZ25WYWx1ZSggdmFsc1sgaSBdICk7CgkJCX0KCgkJCXJldHVybiB2YWxzOwoJCX0gZWxzZSB7CgkJCXJldHVybiBbXTsKCQl9Cgl9LAoKCS8vIFJldHVybnMgdGhlIHN0ZXAtYWxpZ25lZCB2YWx1ZSB0aGF0IHZhbCBpcyBjbG9zZXN0IHRvLCBiZXR3ZWVuIChpbmNsdXNpdmUpIG1pbiBhbmQgbWF4CglfdHJpbUFsaWduVmFsdWU6IGZ1bmN0aW9uKCB2YWwgKSB7CgkJaWYgKCB2YWwgPD0gdGhpcy5fdmFsdWVNaW4oKSApIHsKCQkJcmV0dXJuIHRoaXMuX3ZhbHVlTWluKCk7CgkJfQoJCWlmICggdmFsID49IHRoaXMuX3ZhbHVlTWF4KCkgKSB7CgkJCXJldHVybiB0aGlzLl92YWx1ZU1heCgpOwoJCX0KCQl2YXIgc3RlcCA9ICggdGhpcy5vcHRpb25zLnN0ZXAgPiAwICkgPyB0aGlzLm9wdGlvbnMuc3RlcCA6IDEsCgkJCXZhbE1vZFN0ZXAgPSAoIHZhbCAtIHRoaXMuX3ZhbHVlTWluKCkgKSAlIHN0ZXAsCgkJCWFsaWduVmFsdWUgPSB2YWwgLSB2YWxNb2RTdGVwOwoKCQlpZiAoIE1hdGguYWJzKCB2YWxNb2RTdGVwICkgKiAyID49IHN0ZXAgKSB7CgkJCWFsaWduVmFsdWUgKz0gKCB2YWxNb2RTdGVwID4gMCApID8gc3RlcCA6ICggLXN0ZXAgKTsKCQl9CgoJCS8vIFNpbmNlIEphdmFTY3JpcHQgaGFzIHByb2JsZW1zIHdpdGggbGFyZ2UgZmxvYXRzLCByb3VuZAoJCS8vIHRoZSBmaW5hbCB2YWx1ZSB0byA1IGRpZ2l0cyBhZnRlciB0aGUgZGVjaW1hbCBwb2ludCAoc2VlICM0MTI0KQoJCXJldHVybiBwYXJzZUZsb2F0KCBhbGlnblZhbHVlLnRvRml4ZWQoIDUgKSApOwoJfSwKCglfY2FsY3VsYXRlTmV3TWF4OiBmdW5jdGlvbigpIHsKCQl2YXIgbWF4ID0gdGhpcy5vcHRpb25zLm1heCwKCQkJbWluID0gdGhpcy5fdmFsdWVNaW4oKSwKCQkJc3RlcCA9IHRoaXMub3B0aW9ucy5zdGVwLAoJCQlhYm92ZU1pbiA9IE1hdGgucm91bmQoICggbWF4IC0gbWluICkgLyBzdGVwICkgKiBzdGVwOwoJCW1heCA9IGFib3ZlTWluICsgbWluOwoJCWlmICggbWF4ID4gdGhpcy5vcHRpb25zLm1heCApIHsKCgkJCS8vSWYgbWF4IGlzIG5vdCBkaXZpc2libGUgYnkgc3RlcCwgcm91bmRpbmcgb2ZmIG1heSBpbmNyZWFzZSBpdHMgdmFsdWUKCQkJbWF4IC09IHN0ZXA7CgkJfQoJCXRoaXMubWF4ID0gcGFyc2VGbG9hdCggbWF4LnRvRml4ZWQoIHRoaXMuX3ByZWNpc2lvbigpICkgKTsKCX0sCgoJX3ByZWNpc2lvbjogZnVuY3Rpb24oKSB7CgkJdmFyIHByZWNpc2lvbiA9IHRoaXMuX3ByZWNpc2lvbk9mKCB0aGlzLm9wdGlvbnMuc3RlcCApOwoJCWlmICggdGhpcy5vcHRpb25zLm1pbiAhPT0gbnVsbCApIHsKCQkJcHJlY2lzaW9uID0gTWF0aC5tYXgoIHByZWNpc2lvbiwgdGhpcy5fcHJlY2lzaW9uT2YoIHRoaXMub3B0aW9ucy5taW4gKSApOwoJCX0KCQlyZXR1cm4gcHJlY2lzaW9uOwoJfSwKCglfcHJlY2lzaW9uT2Y6IGZ1bmN0aW9uKCBudW0gKSB7CgkJdmFyIHN0ciA9IG51bS50b1N0cmluZygpLAoJCQlkZWNpbWFsID0gc3RyLmluZGV4T2YoICIuIiApOwoJCXJldHVybiBkZWNpbWFsID09PSAtMSA/IDAgOiBzdHIubGVuZ3RoIC0gZGVjaW1hbCAtIDE7Cgl9LAoKCV92YWx1ZU1pbjogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMub3B0aW9ucy5taW47Cgl9LAoKCV92YWx1ZU1heDogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMubWF4OwoJfSwKCglfcmVmcmVzaFJhbmdlOiBmdW5jdGlvbiggb3JpZW50YXRpb24gKSB7CgkJaWYgKCBvcmllbnRhdGlvbiA9PT0gInZlcnRpY2FsIiApIHsKCQkJdGhpcy5yYW5nZS5jc3MoIHsgIndpZHRoIjogIiIsICJsZWZ0IjogIiIgfSApOwoJCX0KCQlpZiAoIG9yaWVudGF0aW9uID09PSAiaG9yaXpvbnRhbCIgKSB7CgkJCXRoaXMucmFuZ2UuY3NzKCB7ICJoZWlnaHQiOiAiIiwgImJvdHRvbSI6ICIiIH0gKTsKCQl9Cgl9LAoKCV9yZWZyZXNoVmFsdWU6IGZ1bmN0aW9uKCkgewoJCXZhciBsYXN0VmFsUGVyY2VudCwgdmFsUGVyY2VudCwgdmFsdWUsIHZhbHVlTWluLCB2YWx1ZU1heCwKCQkJb1JhbmdlID0gdGhpcy5vcHRpb25zLnJhbmdlLAoJCQlvID0gdGhpcy5vcHRpb25zLAoJCQl0aGF0ID0gdGhpcywKCQkJYW5pbWF0ZSA9ICggIXRoaXMuX2FuaW1hdGVPZmYgKSA/IG8uYW5pbWF0ZSA6IGZhbHNlLAoJCQlfc2V0ID0ge307CgoJCWlmICggdGhpcy5faGFzTXVsdGlwbGVWYWx1ZXMoKSApIHsKCQkJdGhpcy5oYW5kbGVzLmVhY2goIGZ1bmN0aW9uKCBpICkgewoJCQkJdmFsUGVyY2VudCA9ICggdGhhdC52YWx1ZXMoIGkgKSAtIHRoYXQuX3ZhbHVlTWluKCkgKSAvICggdGhhdC5fdmFsdWVNYXgoKSAtCgkJCQkJdGhhdC5fdmFsdWVNaW4oKSApICogMTAwOwoJCQkJX3NldFsgdGhhdC5vcmllbnRhdGlvbiA9PT0gImhvcml6b250YWwiID8gImxlZnQiIDogImJvdHRvbSIgXSA9IHZhbFBlcmNlbnQgKyAiJSI7CgkJCQkkKCB0aGlzICkuc3RvcCggMSwgMSApWyBhbmltYXRlID8gImFuaW1hdGUiIDogImNzcyIgXSggX3NldCwgby5hbmltYXRlICk7CgkJCQlpZiAoIHRoYXQub3B0aW9ucy5yYW5nZSA9PT0gdHJ1ZSApIHsKCQkJCQlpZiAoIHRoYXQub3JpZW50YXRpb24gPT09ICJob3Jpem9udGFsIiApIHsKCQkJCQkJaWYgKCBpID09PSAwICkgewoJCQkJCQkJdGhhdC5yYW5nZS5zdG9wKCAxLCAxIClbIGFuaW1hdGUgPyAiYW5pbWF0ZSIgOiAiY3NzIiBdKCB7CgkJCQkJCQkJbGVmdDogdmFsUGVyY2VudCArICIlIgoJCQkJCQkJfSwgby5hbmltYXRlICk7CgkJCQkJCX0KCQkJCQkJaWYgKCBpID09PSAxICkgewoJCQkJCQkJdGhhdC5yYW5nZVsgYW5pbWF0ZSA/ICJhbmltYXRlIiA6ICJjc3MiIF0oIHsKCQkJCQkJCQl3aWR0aDogKCB2YWxQZXJjZW50IC0gbGFzdFZhbFBlcmNlbnQgKSArICIlIgoJCQkJCQkJfSwgewoJCQkJCQkJCXF1ZXVlOiBmYWxzZSwKCQkJCQkJCQlkdXJhdGlvbjogby5hbmltYXRlCgkJCQkJCQl9ICk7CgkJCQkJCX0KCQkJCQl9IGVsc2UgewoJCQkJCQlpZiAoIGkgPT09IDAgKSB7CgkJCQkJCQl0aGF0LnJhbmdlLnN0b3AoIDEsIDEgKVsgYW5pbWF0ZSA/ICJhbmltYXRlIiA6ICJjc3MiIF0oIHsKCQkJCQkJCQlib3R0b206ICggdmFsUGVyY2VudCApICsgIiUiCgkJCQkJCQl9LCBvLmFuaW1hdGUgKTsKCQkJCQkJfQoJCQkJCQlpZiAoIGkgPT09IDEgKSB7CgkJCQkJCQl0aGF0LnJhbmdlWyBhbmltYXRlID8gImFuaW1hdGUiIDogImNzcyIgXSggewoJCQkJCQkJCWhlaWdodDogKCB2YWxQZXJjZW50IC0gbGFzdFZhbFBlcmNlbnQgKSArICIlIgoJCQkJCQkJfSwgewoJCQkJCQkJCXF1ZXVlOiBmYWxzZSwKCQkJCQkJCQlkdXJhdGlvbjogby5hbmltYXRlCgkJCQkJCQl9ICk7CgkJCQkJCX0KCQkJCQl9CgkJCQl9CgkJCQlsYXN0VmFsUGVyY2VudCA9IHZhbFBlcmNlbnQ7CgkJCX0gKTsKCQl9IGVsc2UgewoJCQl2YWx1ZSA9IHRoaXMudmFsdWUoKTsKCQkJdmFsdWVNaW4gPSB0aGlzLl92YWx1ZU1pbigpOwoJCQl2YWx1ZU1heCA9IHRoaXMuX3ZhbHVlTWF4KCk7CgkJCXZhbFBlcmNlbnQgPSAoIHZhbHVlTWF4ICE9PSB2YWx1ZU1pbiApID8KCQkJCQkoIHZhbHVlIC0gdmFsdWVNaW4gKSAvICggdmFsdWVNYXggLSB2YWx1ZU1pbiApICogMTAwIDoKCQkJCQkwOwoJCQlfc2V0WyB0aGlzLm9yaWVudGF0aW9uID09PSAiaG9yaXpvbnRhbCIgPyAibGVmdCIgOiAiYm90dG9tIiBdID0gdmFsUGVyY2VudCArICIlIjsKCQkJdGhpcy5oYW5kbGUuc3RvcCggMSwgMSApWyBhbmltYXRlID8gImFuaW1hdGUiIDogImNzcyIgXSggX3NldCwgby5hbmltYXRlICk7CgoJCQlpZiAoIG9SYW5nZSA9PT0gIm1pbiIgJiYgdGhpcy5vcmllbnRhdGlvbiA9PT0gImhvcml6b250YWwiICkgewoJCQkJdGhpcy5yYW5nZS5zdG9wKCAxLCAxIClbIGFuaW1hdGUgPyAiYW5pbWF0ZSIgOiAiY3NzIiBdKCB7CgkJCQkJd2lkdGg6IHZhbFBlcmNlbnQgKyAiJSIKCQkJCX0sIG8uYW5pbWF0ZSApOwoJCQl9CgkJCWlmICggb1JhbmdlID09PSAibWF4IiAmJiB0aGlzLm9yaWVudGF0aW9uID09PSAiaG9yaXpvbnRhbCIgKSB7CgkJCQl0aGlzLnJhbmdlLnN0b3AoIDEsIDEgKVsgYW5pbWF0ZSA/ICJhbmltYXRlIiA6ICJjc3MiIF0oIHsKCQkJCQl3aWR0aDogKCAxMDAgLSB2YWxQZXJjZW50ICkgKyAiJSIKCQkJCX0sIG8uYW5pbWF0ZSApOwoJCQl9CgkJCWlmICggb1JhbmdlID09PSAibWluIiAmJiB0aGlzLm9yaWVudGF0aW9uID09PSAidmVydGljYWwiICkgewoJCQkJdGhpcy5yYW5nZS5zdG9wKCAxLCAxIClbIGFuaW1hdGUgPyAiYW5pbWF0ZSIgOiAiY3NzIiBdKCB7CgkJCQkJaGVpZ2h0OiB2YWxQZXJjZW50ICsgIiUiCgkJCQl9LCBvLmFuaW1hdGUgKTsKCQkJfQoJCQlpZiAoIG9SYW5nZSA9PT0gIm1heCIgJiYgdGhpcy5vcmllbnRhdGlvbiA9PT0gInZlcnRpY2FsIiApIHsKCQkJCXRoaXMucmFuZ2Uuc3RvcCggMSwgMSApWyBhbmltYXRlID8gImFuaW1hdGUiIDogImNzcyIgXSggewoJCQkJCWhlaWdodDogKCAxMDAgLSB2YWxQZXJjZW50ICkgKyAiJSIKCQkJCX0sIG8uYW5pbWF0ZSApOwoJCQl9CgkJfQoJfSwKCglfaGFuZGxlRXZlbnRzOiB7CgkJa2V5ZG93bjogZnVuY3Rpb24oIGV2ZW50ICkgewoJCQl2YXIgYWxsb3dlZCwgY3VyVmFsLCBuZXdWYWwsIHN0ZXAsCgkJCQlpbmRleCA9ICQoIGV2ZW50LnRhcmdldCApLmRhdGEoICJ1aS1zbGlkZXItaGFuZGxlLWluZGV4IiApOwoKCQkJc3dpdGNoICggZXZlbnQua2V5Q29kZSApIHsKCQkJCWNhc2UgJC51aS5rZXlDb2RlLkhPTUU6CgkJCQljYXNlICQudWkua2V5Q29kZS5FTkQ6CgkJCQljYXNlICQudWkua2V5Q29kZS5QQUdFX1VQOgoJCQkJY2FzZSAkLnVpLmtleUNvZGUuUEFHRV9ET1dOOgoJCQkJY2FzZSAkLnVpLmtleUNvZGUuVVA6CgkJCQljYXNlICQudWkua2V5Q29kZS5SSUdIVDoKCQkJCWNhc2UgJC51aS5rZXlDb2RlLkRPV046CgkJCQljYXNlICQudWkua2V5Q29kZS5MRUZUOgoJCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCQkJaWYgKCAhdGhpcy5fa2V5U2xpZGluZyApIHsKCQkJCQkJdGhpcy5fa2V5U2xpZGluZyA9IHRydWU7CgkJCQkJCXRoaXMuX2FkZENsYXNzKCAkKCBldmVudC50YXJnZXQgKSwgbnVsbCwgInVpLXN0YXRlLWFjdGl2ZSIgKTsKCQkJCQkJYWxsb3dlZCA9IHRoaXMuX3N0YXJ0KCBldmVudCwgaW5kZXggKTsKCQkJCQkJaWYgKCBhbGxvd2VkID09PSBmYWxzZSApIHsKCQkJCQkJCXJldHVybjsKCQkJCQkJfQoJCQkJCX0KCQkJCQlicmVhazsKCQkJfQoKCQkJc3RlcCA9IHRoaXMub3B0aW9ucy5zdGVwOwoJCQlpZiAoIHRoaXMuX2hhc011bHRpcGxlVmFsdWVzKCkgKSB7CgkJCQljdXJWYWwgPSBuZXdWYWwgPSB0aGlzLnZhbHVlcyggaW5kZXggKTsKCQkJfSBlbHNlIHsKCQkJCWN1clZhbCA9IG5ld1ZhbCA9IHRoaXMudmFsdWUoKTsKCQkJfQoKCQkJc3dpdGNoICggZXZlbnQua2V5Q29kZSApIHsKCQkJCWNhc2UgJC51aS5rZXlDb2RlLkhPTUU6CgkJCQkJbmV3VmFsID0gdGhpcy5fdmFsdWVNaW4oKTsKCQkJCQlicmVhazsKCQkJCWNhc2UgJC51aS5rZXlDb2RlLkVORDoKCQkJCQluZXdWYWwgPSB0aGlzLl92YWx1ZU1heCgpOwoJCQkJCWJyZWFrOwoJCQkJY2FzZSAkLnVpLmtleUNvZGUuUEFHRV9VUDoKCQkJCQluZXdWYWwgPSB0aGlzLl90cmltQWxpZ25WYWx1ZSgKCQkJCQkJY3VyVmFsICsgKCAoIHRoaXMuX3ZhbHVlTWF4KCkgLSB0aGlzLl92YWx1ZU1pbigpICkgLyB0aGlzLm51bVBhZ2VzICkKCQkJCQkpOwoJCQkJCWJyZWFrOwoJCQkJY2FzZSAkLnVpLmtleUNvZGUuUEFHRV9ET1dOOgoJCQkJCW5ld1ZhbCA9IHRoaXMuX3RyaW1BbGlnblZhbHVlKAoJCQkJCQljdXJWYWwgLSAoICggdGhpcy5fdmFsdWVNYXgoKSAtIHRoaXMuX3ZhbHVlTWluKCkgKSAvIHRoaXMubnVtUGFnZXMgKSApOwoJCQkJCWJyZWFrOwoJCQkJY2FzZSAkLnVpLmtleUNvZGUuVVA6CgkJCQljYXNlICQudWkua2V5Q29kZS5SSUdIVDoKCQkJCQlpZiAoIGN1clZhbCA9PT0gdGhpcy5fdmFsdWVNYXgoKSApIHsKCQkJCQkJcmV0dXJuOwoJCQkJCX0KCQkJCQluZXdWYWwgPSB0aGlzLl90cmltQWxpZ25WYWx1ZSggY3VyVmFsICsgc3RlcCApOwoJCQkJCWJyZWFrOwoJCQkJY2FzZSAkLnVpLmtleUNvZGUuRE9XTjoKCQkJCWNhc2UgJC51aS5rZXlDb2RlLkxFRlQ6CgkJCQkJaWYgKCBjdXJWYWwgPT09IHRoaXMuX3ZhbHVlTWluKCkgKSB7CgkJCQkJCXJldHVybjsKCQkJCQl9CgkJCQkJbmV3VmFsID0gdGhpcy5fdHJpbUFsaWduVmFsdWUoIGN1clZhbCAtIHN0ZXAgKTsKCQkJCQlicmVhazsKCQkJfQoKCQkJdGhpcy5fc2xpZGUoIGV2ZW50LCBpbmRleCwgbmV3VmFsICk7CgkJfSwKCQlrZXl1cDogZnVuY3Rpb24oIGV2ZW50ICkgewoJCQl2YXIgaW5kZXggPSAkKCBldmVudC50YXJnZXQgKS5kYXRhKCAidWktc2xpZGVyLWhhbmRsZS1pbmRleCIgKTsKCgkJCWlmICggdGhpcy5fa2V5U2xpZGluZyApIHsKCQkJCXRoaXMuX2tleVNsaWRpbmcgPSBmYWxzZTsKCQkJCXRoaXMuX3N0b3AoIGV2ZW50LCBpbmRleCApOwoJCQkJdGhpcy5fY2hhbmdlKCBldmVudCwgaW5kZXggKTsKCQkJCXRoaXMuX3JlbW92ZUNsYXNzKCAkKCBldmVudC50YXJnZXQgKSwgbnVsbCwgInVpLXN0YXRlLWFjdGl2ZSIgKTsKCQkJfQoJCX0KCX0KfSApOwoKCi8qIQogKiBqUXVlcnkgVUkgU3Bpbm5lciAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IFNwaW5uZXIKLy8+Pmdyb3VwOiBXaWRnZXRzCi8vPj5kZXNjcmlwdGlvbjogRGlzcGxheXMgYnV0dG9ucyB0byBlYXNpbHkgaW5wdXQgbnVtYmVycyB2aWEgdGhlIGtleWJvYXJkIG9yIG1vdXNlLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vc3Bpbm5lci8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL3NwaW5uZXIvCi8vPj5jc3Muc3RydWN0dXJlOiAuLi8uLi90aGVtZXMvYmFzZS9jb3JlLmNzcwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2Uvc3Bpbm5lci5jc3MKLy8+PmNzcy50aGVtZTogLi4vLi4vdGhlbWVzL2Jhc2UvdGhlbWUuY3NzCgoKCmZ1bmN0aW9uIHNwaW5uZXJNb2RpZmVyKCBmbiApIHsKCXJldHVybiBmdW5jdGlvbigpIHsKCQl2YXIgcHJldmlvdXMgPSB0aGlzLmVsZW1lbnQudmFsKCk7CgkJZm4uYXBwbHkoIHRoaXMsIGFyZ3VtZW50cyApOwoJCXRoaXMuX3JlZnJlc2goKTsKCQlpZiAoIHByZXZpb3VzICE9PSB0aGlzLmVsZW1lbnQudmFsKCkgKSB7CgkJCXRoaXMuX3RyaWdnZXIoICJjaGFuZ2UiICk7CgkJfQoJfTsKfQoKJC53aWRnZXQoICJ1aS5zcGlubmVyIiwgewoJdmVyc2lvbjogIjEuMTIuMSIsCglkZWZhdWx0RWxlbWVudDogIjxpbnB1dD4iLAoJd2lkZ2V0RXZlbnRQcmVmaXg6ICJzcGluIiwKCW9wdGlvbnM6IHsKCQljbGFzc2VzOiB7CgkJCSJ1aS1zcGlubmVyIjogInVpLWNvcm5lci1hbGwiLAoJCQkidWktc3Bpbm5lci1kb3duIjogInVpLWNvcm5lci1iciIsCgkJCSJ1aS1zcGlubmVyLXVwIjogInVpLWNvcm5lci10ciIKCQl9LAoJCWN1bHR1cmU6IG51bGwsCgkJaWNvbnM6IHsKCQkJZG93bjogInVpLWljb24tdHJpYW5nbGUtMS1zIiwKCQkJdXA6ICJ1aS1pY29uLXRyaWFuZ2xlLTEtbiIKCQl9LAoJCWluY3JlbWVudGFsOiB0cnVlLAoJCW1heDogbnVsbCwKCQltaW46IG51bGwsCgkJbnVtYmVyRm9ybWF0OiBudWxsLAoJCXBhZ2U6IDEwLAoJCXN0ZXA6IDEsCgoJCWNoYW5nZTogbnVsbCwKCQlzcGluOiBudWxsLAoJCXN0YXJ0OiBudWxsLAoJCXN0b3A6IG51bGwKCX0sCgoJX2NyZWF0ZTogZnVuY3Rpb24oKSB7CgoJCS8vIGhhbmRsZSBzdHJpbmcgdmFsdWVzIHRoYXQgbmVlZCB0byBiZSBwYXJzZWQKCQl0aGlzLl9zZXRPcHRpb24oICJtYXgiLCB0aGlzLm9wdGlvbnMubWF4ICk7CgkJdGhpcy5fc2V0T3B0aW9uKCAibWluIiwgdGhpcy5vcHRpb25zLm1pbiApOwoJCXRoaXMuX3NldE9wdGlvbiggInN0ZXAiLCB0aGlzLm9wdGlvbnMuc3RlcCApOwoKCQkvLyBPbmx5IGZvcm1hdCBpZiB0aGVyZSBpcyBhIHZhbHVlLCBwcmV2ZW50cyB0aGUgZmllbGQgZnJvbSBiZWluZyBtYXJrZWQKCQkvLyBhcyBpbnZhbGlkIGluIEZpcmVmb3gsIHNlZSAjOTU3My4KCQlpZiAoIHRoaXMudmFsdWUoKSAhPT0gIiIgKSB7CgoJCQkvLyBGb3JtYXQgdGhlIHZhbHVlLCBidXQgZG9uJ3QgY29uc3RyYWluLgoJCQl0aGlzLl92YWx1ZSggdGhpcy5lbGVtZW50LnZhbCgpLCB0cnVlICk7CgkJfQoKCQl0aGlzLl9kcmF3KCk7CgkJdGhpcy5fb24oIHRoaXMuX2V2ZW50cyApOwoJCXRoaXMuX3JlZnJlc2goKTsKCgkJLy8gVHVybmluZyBvZmYgYXV0b2NvbXBsZXRlIHByZXZlbnRzIHRoZSBicm93c2VyIGZyb20gcmVtZW1iZXJpbmcgdGhlCgkJLy8gdmFsdWUgd2hlbiBuYXZpZ2F0aW5nIHRocm91Z2ggaGlzdG9yeSwgc28gd2UgcmUtZW5hYmxlIGF1dG9jb21wbGV0ZQoJCS8vIGlmIHRoZSBwYWdlIGlzIHVubG9hZGVkIGJlZm9yZSB0aGUgd2lkZ2V0IGlzIGRlc3Ryb3llZC4gIzc3OTAKCQl0aGlzLl9vbiggdGhpcy53aW5kb3csIHsKCQkJYmVmb3JldW5sb2FkOiBmdW5jdGlvbigpIHsKCQkJCXRoaXMuZWxlbWVudC5yZW1vdmVBdHRyKCAiYXV0b2NvbXBsZXRlIiApOwoJCQl9CgkJfSApOwoJfSwKCglfZ2V0Q3JlYXRlT3B0aW9uczogZnVuY3Rpb24oKSB7CgkJdmFyIG9wdGlvbnMgPSB0aGlzLl9zdXBlcigpOwoJCXZhciBlbGVtZW50ID0gdGhpcy5lbGVtZW50OwoKCQkkLmVhY2goIFsgIm1pbiIsICJtYXgiLCAic3RlcCIgXSwgZnVuY3Rpb24oIGksIG9wdGlvbiApIHsKCQkJdmFyIHZhbHVlID0gZWxlbWVudC5hdHRyKCBvcHRpb24gKTsKCQkJaWYgKCB2YWx1ZSAhPSBudWxsICYmIHZhbHVlLmxlbmd0aCApIHsKCQkJCW9wdGlvbnNbIG9wdGlvbiBdID0gdmFsdWU7CgkJCX0KCQl9ICk7CgoJCXJldHVybiBvcHRpb25zOwoJfSwKCglfZXZlbnRzOiB7CgkJa2V5ZG93bjogZnVuY3Rpb24oIGV2ZW50ICkgewoJCQlpZiAoIHRoaXMuX3N0YXJ0KCBldmVudCApICYmIHRoaXMuX2tleWRvd24oIGV2ZW50ICkgKSB7CgkJCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOwoJCQl9CgkJfSwKCQlrZXl1cDogIl9zdG9wIiwKCQlmb2N1czogZnVuY3Rpb24oKSB7CgkJCXRoaXMucHJldmlvdXMgPSB0aGlzLmVsZW1lbnQudmFsKCk7CgkJfSwKCQlibHVyOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJCWlmICggdGhpcy5jYW5jZWxCbHVyICkgewoJCQkJZGVsZXRlIHRoaXMuY2FuY2VsQmx1cjsKCQkJCXJldHVybjsKCQkJfQoKCQkJdGhpcy5fc3RvcCgpOwoJCQl0aGlzLl9yZWZyZXNoKCk7CgkJCWlmICggdGhpcy5wcmV2aW91cyAhPT0gdGhpcy5lbGVtZW50LnZhbCgpICkgewoJCQkJdGhpcy5fdHJpZ2dlciggImNoYW5nZSIsIGV2ZW50ICk7CgkJCX0KCQl9LAoJCW1vdXNld2hlZWw6IGZ1bmN0aW9uKCBldmVudCwgZGVsdGEgKSB7CgkJCWlmICggIWRlbHRhICkgewoJCQkJcmV0dXJuOwoJCQl9CgkJCWlmICggIXRoaXMuc3Bpbm5pbmcgJiYgIXRoaXMuX3N0YXJ0KCBldmVudCApICkgewoJCQkJcmV0dXJuIGZhbHNlOwoJCQl9CgoJCQl0aGlzLl9zcGluKCAoIGRlbHRhID4gMCA/IDEgOiAtMSApICogdGhpcy5vcHRpb25zLnN0ZXAsIGV2ZW50ICk7CgkJCWNsZWFyVGltZW91dCggdGhpcy5tb3VzZXdoZWVsVGltZXIgKTsKCQkJdGhpcy5tb3VzZXdoZWVsVGltZXIgPSB0aGlzLl9kZWxheSggZnVuY3Rpb24oKSB7CgkJCQlpZiAoIHRoaXMuc3Bpbm5pbmcgKSB7CgkJCQkJdGhpcy5fc3RvcCggZXZlbnQgKTsKCQkJCX0KCQkJfSwgMTAwICk7CgkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJfSwKCQkibW91c2Vkb3duIC51aS1zcGlubmVyLWJ1dHRvbiI6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJdmFyIHByZXZpb3VzOwoKCQkJLy8gV2UgbmV2ZXIgd2FudCB0aGUgYnV0dG9ucyB0byBoYXZlIGZvY3VzOyB3aGVuZXZlciB0aGUgdXNlciBpcwoJCQkvLyBpbnRlcmFjdGluZyB3aXRoIHRoZSBzcGlubmVyLCB0aGUgZm9jdXMgc2hvdWxkIGJlIG9uIHRoZSBpbnB1dC4KCQkJLy8gSWYgdGhlIGlucHV0IGlzIGZvY3VzZWQgdGhlbiB0aGlzLnByZXZpb3VzIGlzIHByb3Blcmx5IHNldCBmcm9tCgkJCS8vIHdoZW4gdGhlIGlucHV0IGZpcnN0IHJlY2VpdmVkIGZvY3VzLiBJZiB0aGUgaW5wdXQgaXMgbm90IGZvY3VzZWQKCQkJLy8gdGhlbiB3ZSBuZWVkIHRvIHNldCB0aGlzLnByZXZpb3VzIGJhc2VkIG9uIHRoZSB2YWx1ZSBiZWZvcmUgc3Bpbm5pbmcuCgkJCXByZXZpb3VzID0gdGhpcy5lbGVtZW50WyAwIF0gPT09ICQudWkuc2FmZUFjdGl2ZUVsZW1lbnQoIHRoaXMuZG9jdW1lbnRbIDAgXSApID8KCQkJCXRoaXMucHJldmlvdXMgOiB0aGlzLmVsZW1lbnQudmFsKCk7CgkJCWZ1bmN0aW9uIGNoZWNrRm9jdXMoKSB7CgkJCQl2YXIgaXNBY3RpdmUgPSB0aGlzLmVsZW1lbnRbIDAgXSA9PT0gJC51aS5zYWZlQWN0aXZlRWxlbWVudCggdGhpcy5kb2N1bWVudFsgMCBdICk7CgkJCQlpZiAoICFpc0FjdGl2ZSApIHsKCQkJCQl0aGlzLmVsZW1lbnQudHJpZ2dlciggImZvY3VzIiApOwoJCQkJCXRoaXMucHJldmlvdXMgPSBwcmV2aW91czsKCgkJCQkJLy8gc3VwcG9ydDogSUUKCQkJCQkvLyBJRSBzZXRzIGZvY3VzIGFzeW5jaHJvbm91c2x5LCBzbyB3ZSBuZWVkIHRvIGNoZWNrIGlmIGZvY3VzCgkJCQkJLy8gbW92ZWQgb2ZmIG9mIHRoZSBpbnB1dCBiZWNhdXNlIHRoZSB1c2VyIGNsaWNrZWQgb24gdGhlIGJ1dHRvbi4KCQkJCQl0aGlzLl9kZWxheSggZnVuY3Rpb24oKSB7CgkJCQkJCXRoaXMucHJldmlvdXMgPSBwcmV2aW91czsKCQkJCQl9ICk7CgkJCQl9CgkJCX0KCgkJCS8vIEVuc3VyZSBmb2N1cyBpcyBvbiAob3Igc3RheXMgb24pIHRoZSB0ZXh0IGZpZWxkCgkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCWNoZWNrRm9jdXMuY2FsbCggdGhpcyApOwoKCQkJLy8gU3VwcG9ydDogSUUKCQkJLy8gSUUgZG9lc24ndCBwcmV2ZW50IG1vdmluZyBmb2N1cyBldmVuIHdpdGggZXZlbnQucHJldmVudERlZmF1bHQoKQoJCQkvLyBzbyB3ZSBzZXQgYSBmbGFnIHRvIGtub3cgd2hlbiB3ZSBzaG91bGQgaWdub3JlIHRoZSBibHVyIGV2ZW50CgkJCS8vIGFuZCBjaGVjayAoYWdhaW4pIGlmIGZvY3VzIG1vdmVkIG9mZiBvZiB0aGUgaW5wdXQuCgkJCXRoaXMuY2FuY2VsQmx1ciA9IHRydWU7CgkJCXRoaXMuX2RlbGF5KCBmdW5jdGlvbigpIHsKCQkJCWRlbGV0ZSB0aGlzLmNhbmNlbEJsdXI7CgkJCQljaGVja0ZvY3VzLmNhbGwoIHRoaXMgKTsKCQkJfSApOwoKCQkJaWYgKCB0aGlzLl9zdGFydCggZXZlbnQgKSA9PT0gZmFsc2UgKSB7CgkJCQlyZXR1cm47CgkJCX0KCgkJCXRoaXMuX3JlcGVhdCggbnVsbCwgJCggZXZlbnQuY3VycmVudFRhcmdldCApCgkJCQkuaGFzQ2xhc3MoICJ1aS1zcGlubmVyLXVwIiApID8gMSA6IC0xLCBldmVudCApOwoJCX0sCgkJIm1vdXNldXAgLnVpLXNwaW5uZXItYnV0dG9uIjogIl9zdG9wIiwKCQkibW91c2VlbnRlciAudWktc3Bpbm5lci1idXR0b24iOiBmdW5jdGlvbiggZXZlbnQgKSB7CgoJCQkvLyBidXR0b24gd2lsbCBhZGQgdWktc3RhdGUtYWN0aXZlIGlmIG1vdXNlIHdhcyBkb3duIHdoaWxlIG1vdXNlbGVhdmUgYW5kIGtlcHQgZG93bgoJCQlpZiAoICEkKCBldmVudC5jdXJyZW50VGFyZ2V0ICkuaGFzQ2xhc3MoICJ1aS1zdGF0ZS1hY3RpdmUiICkgKSB7CgkJCQlyZXR1cm47CgkJCX0KCgkJCWlmICggdGhpcy5fc3RhcnQoIGV2ZW50ICkgPT09IGZhbHNlICkgewoJCQkJcmV0dXJuIGZhbHNlOwoJCQl9CgkJCXRoaXMuX3JlcGVhdCggbnVsbCwgJCggZXZlbnQuY3VycmVudFRhcmdldCApCgkJCQkuaGFzQ2xhc3MoICJ1aS1zcGlubmVyLXVwIiApID8gMSA6IC0xLCBldmVudCApOwoJCX0sCgoJCS8vIFRPRE86IGRvIHdlIHJlYWxseSB3YW50IHRvIGNvbnNpZGVyIHRoaXMgYSBzdG9wPwoJCS8vIHNob3VsZG4ndCB3ZSBqdXN0IHN0b3AgdGhlIHJlcGVhdGVyIGFuZCB3YWl0IHVudGlsIG1vdXNldXAgYmVmb3JlCgkJLy8gd2UgdHJpZ2dlciB0aGUgc3RvcCBldmVudD8KCQkibW91c2VsZWF2ZSAudWktc3Bpbm5lci1idXR0b24iOiAiX3N0b3AiCgl9LAoKCS8vIFN1cHBvcnQgbW9iaWxlIGVuaGFuY2VkIG9wdGlvbiBhbmQgbWFrZSBiYWNrY29tcGF0IG1vcmUgc2FuZQoJX2VuaGFuY2U6IGZ1bmN0aW9uKCkgewoJCXRoaXMudWlTcGlubmVyID0gdGhpcy5lbGVtZW50CgkJCS5hdHRyKCAiYXV0b2NvbXBsZXRlIiwgIm9mZiIgKQoJCQkud3JhcCggIjxzcGFuPiIgKQoJCQkucGFyZW50KCkKCgkJCQkvLyBBZGQgYnV0dG9ucwoJCQkJLmFwcGVuZCgKCQkJCQkiPGE+PC9hPjxhPjwvYT4iCgkJCQkpOwoJfSwKCglfZHJhdzogZnVuY3Rpb24oKSB7CgkJdGhpcy5fZW5oYW5jZSgpOwoKCQl0aGlzLl9hZGRDbGFzcyggdGhpcy51aVNwaW5uZXIsICJ1aS1zcGlubmVyIiwgInVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCIgKTsKCQl0aGlzLl9hZGRDbGFzcyggInVpLXNwaW5uZXItaW5wdXQiICk7CgoJCXRoaXMuZWxlbWVudC5hdHRyKCAicm9sZSIsICJzcGluYnV0dG9uIiApOwoKCQkvLyBCdXR0b24gYmluZGluZ3MKCQl0aGlzLmJ1dHRvbnMgPSB0aGlzLnVpU3Bpbm5lci5jaGlsZHJlbiggImEiICkKCQkJLmF0dHIoICJ0YWJJbmRleCIsIC0xICkKCQkJLmF0dHIoICJhcmlhLWhpZGRlbiIsIHRydWUgKQoJCQkuYnV0dG9uKCB7CgkJCQljbGFzc2VzOiB7CgkJCQkJInVpLWJ1dHRvbiI6ICIiCgkJCQl9CgkJCX0gKTsKCgkJLy8gVE9ETzogUmlnaHQgbm93IGJ1dHRvbiBkb2VzIG5vdCBzdXBwb3J0IGNsYXNzZXMgdGhpcyBpcyBhbHJlYWR5IHVwZGF0ZWQgaW4gYnV0dG9uIFBSCgkJdGhpcy5fcmVtb3ZlQ2xhc3MoIHRoaXMuYnV0dG9ucywgInVpLWNvcm5lci1hbGwiICk7CgoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLmJ1dHRvbnMuZmlyc3QoKSwgInVpLXNwaW5uZXItYnV0dG9uIHVpLXNwaW5uZXItdXAiICk7CgkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMuYnV0dG9ucy5sYXN0KCksICJ1aS1zcGlubmVyLWJ1dHRvbiB1aS1zcGlubmVyLWRvd24iICk7CgkJdGhpcy5idXR0b25zLmZpcnN0KCkuYnV0dG9uKCB7CgkJCSJpY29uIjogdGhpcy5vcHRpb25zLmljb25zLnVwLAoJCQkic2hvd0xhYmVsIjogZmFsc2UKCQl9ICk7CgkJdGhpcy5idXR0b25zLmxhc3QoKS5idXR0b24oIHsKCQkJImljb24iOiB0aGlzLm9wdGlvbnMuaWNvbnMuZG93biwKCQkJInNob3dMYWJlbCI6IGZhbHNlCgkJfSApOwoKCQkvLyBJRSA2IGRvZXNuJ3QgdW5kZXJzdGFuZCBoZWlnaHQ6IDUwJSBmb3IgdGhlIGJ1dHRvbnMKCQkvLyB1bmxlc3MgdGhlIHdyYXBwZXIgaGFzIGFuIGV4cGxpY2l0IGhlaWdodAoJCWlmICggdGhpcy5idXR0b25zLmhlaWdodCgpID4gTWF0aC5jZWlsKCB0aGlzLnVpU3Bpbm5lci5oZWlnaHQoKSAqIDAuNSApICYmCgkJCQl0aGlzLnVpU3Bpbm5lci5oZWlnaHQoKSA+IDAgKSB7CgkJCXRoaXMudWlTcGlubmVyLmhlaWdodCggdGhpcy51aVNwaW5uZXIuaGVpZ2h0KCkgKTsKCQl9Cgl9LAoKCV9rZXlkb3duOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdmFyIG9wdGlvbnMgPSB0aGlzLm9wdGlvbnMsCgkJCWtleUNvZGUgPSAkLnVpLmtleUNvZGU7CgoJCXN3aXRjaCAoIGV2ZW50LmtleUNvZGUgKSB7CgkJY2FzZSBrZXlDb2RlLlVQOgoJCQl0aGlzLl9yZXBlYXQoIG51bGwsIDEsIGV2ZW50ICk7CgkJCXJldHVybiB0cnVlOwoJCWNhc2Uga2V5Q29kZS5ET1dOOgoJCQl0aGlzLl9yZXBlYXQoIG51bGwsIC0xLCBldmVudCApOwoJCQlyZXR1cm4gdHJ1ZTsKCQljYXNlIGtleUNvZGUuUEFHRV9VUDoKCQkJdGhpcy5fcmVwZWF0KCBudWxsLCBvcHRpb25zLnBhZ2UsIGV2ZW50ICk7CgkJCXJldHVybiB0cnVlOwoJCWNhc2Uga2V5Q29kZS5QQUdFX0RPV046CgkJCXRoaXMuX3JlcGVhdCggbnVsbCwgLW9wdGlvbnMucGFnZSwgZXZlbnQgKTsKCQkJcmV0dXJuIHRydWU7CgkJfQoKCQlyZXR1cm4gZmFsc2U7Cgl9LAoKCV9zdGFydDogZnVuY3Rpb24oIGV2ZW50ICkgewoJCWlmICggIXRoaXMuc3Bpbm5pbmcgJiYgdGhpcy5fdHJpZ2dlciggInN0YXJ0IiwgZXZlbnQgKSA9PT0gZmFsc2UgKSB7CgkJCXJldHVybiBmYWxzZTsKCQl9CgoJCWlmICggIXRoaXMuY291bnRlciApIHsKCQkJdGhpcy5jb3VudGVyID0gMTsKCQl9CgkJdGhpcy5zcGlubmluZyA9IHRydWU7CgkJcmV0dXJuIHRydWU7Cgl9LAoKCV9yZXBlYXQ6IGZ1bmN0aW9uKCBpLCBzdGVwcywgZXZlbnQgKSB7CgkJaSA9IGkgfHwgNTAwOwoKCQljbGVhclRpbWVvdXQoIHRoaXMudGltZXIgKTsKCQl0aGlzLnRpbWVyID0gdGhpcy5fZGVsYXkoIGZ1bmN0aW9uKCkgewoJCQl0aGlzLl9yZXBlYXQoIDQwLCBzdGVwcywgZXZlbnQgKTsKCQl9LCBpICk7CgoJCXRoaXMuX3NwaW4oIHN0ZXBzICogdGhpcy5vcHRpb25zLnN0ZXAsIGV2ZW50ICk7Cgl9LAoKCV9zcGluOiBmdW5jdGlvbiggc3RlcCwgZXZlbnQgKSB7CgkJdmFyIHZhbHVlID0gdGhpcy52YWx1ZSgpIHx8IDA7CgoJCWlmICggIXRoaXMuY291bnRlciApIHsKCQkJdGhpcy5jb3VudGVyID0gMTsKCQl9CgoJCXZhbHVlID0gdGhpcy5fYWRqdXN0VmFsdWUoIHZhbHVlICsgc3RlcCAqIHRoaXMuX2luY3JlbWVudCggdGhpcy5jb3VudGVyICkgKTsKCgkJaWYgKCAhdGhpcy5zcGlubmluZyB8fCB0aGlzLl90cmlnZ2VyKCAic3BpbiIsIGV2ZW50LCB7IHZhbHVlOiB2YWx1ZSB9ICkgIT09IGZhbHNlICkgewoJCQl0aGlzLl92YWx1ZSggdmFsdWUgKTsKCQkJdGhpcy5jb3VudGVyKys7CgkJfQoJfSwKCglfaW5jcmVtZW50OiBmdW5jdGlvbiggaSApIHsKCQl2YXIgaW5jcmVtZW50YWwgPSB0aGlzLm9wdGlvbnMuaW5jcmVtZW50YWw7CgoJCWlmICggaW5jcmVtZW50YWwgKSB7CgkJCXJldHVybiAkLmlzRnVuY3Rpb24oIGluY3JlbWVudGFsICkgPwoJCQkJaW5jcmVtZW50YWwoIGkgKSA6CgkJCQlNYXRoLmZsb29yKCBpICogaSAqIGkgLyA1MDAwMCAtIGkgKiBpIC8gNTAwICsgMTcgKiBpIC8gMjAwICsgMSApOwoJCX0KCgkJcmV0dXJuIDE7Cgl9LAoKCV9wcmVjaXNpb246IGZ1bmN0aW9uKCkgewoJCXZhciBwcmVjaXNpb24gPSB0aGlzLl9wcmVjaXNpb25PZiggdGhpcy5vcHRpb25zLnN0ZXAgKTsKCQlpZiAoIHRoaXMub3B0aW9ucy5taW4gIT09IG51bGwgKSB7CgkJCXByZWNpc2lvbiA9IE1hdGgubWF4KCBwcmVjaXNpb24sIHRoaXMuX3ByZWNpc2lvbk9mKCB0aGlzLm9wdGlvbnMubWluICkgKTsKCQl9CgkJcmV0dXJuIHByZWNpc2lvbjsKCX0sCgoJX3ByZWNpc2lvbk9mOiBmdW5jdGlvbiggbnVtICkgewoJCXZhciBzdHIgPSBudW0udG9TdHJpbmcoKSwKCQkJZGVjaW1hbCA9IHN0ci5pbmRleE9mKCAiLiIgKTsKCQlyZXR1cm4gZGVjaW1hbCA9PT0gLTEgPyAwIDogc3RyLmxlbmd0aCAtIGRlY2ltYWwgLSAxOwoJfSwKCglfYWRqdXN0VmFsdWU6IGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQl2YXIgYmFzZSwgYWJvdmVNaW4sCgkJCW9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7CgoJCS8vIE1ha2Ugc3VyZSB3ZSdyZSBhdCBhIHZhbGlkIHN0ZXAKCQkvLyAtIGZpbmQgb3V0IHdoZXJlIHdlIGFyZSByZWxhdGl2ZSB0byB0aGUgYmFzZSAobWluIG9yIDApCgkJYmFzZSA9IG9wdGlvbnMubWluICE9PSBudWxsID8gb3B0aW9ucy5taW4gOiAwOwoJCWFib3ZlTWluID0gdmFsdWUgLSBiYXNlOwoKCQkvLyAtIHJvdW5kIHRvIHRoZSBuZWFyZXN0IHN0ZXAKCQlhYm92ZU1pbiA9IE1hdGgucm91bmQoIGFib3ZlTWluIC8gb3B0aW9ucy5zdGVwICkgKiBvcHRpb25zLnN0ZXA7CgoJCS8vIC0gcm91bmRpbmcgaXMgYmFzZWQgb24gMCwgc28gYWRqdXN0IGJhY2sgdG8gb3VyIGJhc2UKCQl2YWx1ZSA9IGJhc2UgKyBhYm92ZU1pbjsKCgkJLy8gRml4IHByZWNpc2lvbiBmcm9tIGJhZCBKUyBmbG9hdGluZyBwb2ludCBtYXRoCgkJdmFsdWUgPSBwYXJzZUZsb2F0KCB2YWx1ZS50b0ZpeGVkKCB0aGlzLl9wcmVjaXNpb24oKSApICk7CgoJCS8vIENsYW1wIHRoZSB2YWx1ZQoJCWlmICggb3B0aW9ucy5tYXggIT09IG51bGwgJiYgdmFsdWUgPiBvcHRpb25zLm1heCApIHsKCQkJcmV0dXJuIG9wdGlvbnMubWF4OwoJCX0KCQlpZiAoIG9wdGlvbnMubWluICE9PSBudWxsICYmIHZhbHVlIDwgb3B0aW9ucy5taW4gKSB7CgkJCXJldHVybiBvcHRpb25zLm1pbjsKCQl9CgoJCXJldHVybiB2YWx1ZTsKCX0sCgoJX3N0b3A6IGZ1bmN0aW9uKCBldmVudCApIHsKCQlpZiAoICF0aGlzLnNwaW5uaW5nICkgewoJCQlyZXR1cm47CgkJfQoKCQljbGVhclRpbWVvdXQoIHRoaXMudGltZXIgKTsKCQljbGVhclRpbWVvdXQoIHRoaXMubW91c2V3aGVlbFRpbWVyICk7CgkJdGhpcy5jb3VudGVyID0gMDsKCQl0aGlzLnNwaW5uaW5nID0gZmFsc2U7CgkJdGhpcy5fdHJpZ2dlciggInN0b3AiLCBldmVudCApOwoJfSwKCglfc2V0T3B0aW9uOiBmdW5jdGlvbigga2V5LCB2YWx1ZSApIHsKCQl2YXIgcHJldlZhbHVlLCBmaXJzdCwgbGFzdDsKCgkJaWYgKCBrZXkgPT09ICJjdWx0dXJlIiB8fCBrZXkgPT09ICJudW1iZXJGb3JtYXQiICkgewoJCQlwcmV2VmFsdWUgPSB0aGlzLl9wYXJzZSggdGhpcy5lbGVtZW50LnZhbCgpICk7CgkJCXRoaXMub3B0aW9uc1sga2V5IF0gPSB2YWx1ZTsKCQkJdGhpcy5lbGVtZW50LnZhbCggdGhpcy5fZm9ybWF0KCBwcmV2VmFsdWUgKSApOwoJCQlyZXR1cm47CgkJfQoKCQlpZiAoIGtleSA9PT0gIm1heCIgfHwga2V5ID09PSAibWluIiB8fCBrZXkgPT09ICJzdGVwIiApIHsKCQkJaWYgKCB0eXBlb2YgdmFsdWUgPT09ICJzdHJpbmciICkgewoJCQkJdmFsdWUgPSB0aGlzLl9wYXJzZSggdmFsdWUgKTsKCQkJfQoJCX0KCQlpZiAoIGtleSA9PT0gImljb25zIiApIHsKCQkJZmlyc3QgPSB0aGlzLmJ1dHRvbnMuZmlyc3QoKS5maW5kKCAiLnVpLWljb24iICk7CgkJCXRoaXMuX3JlbW92ZUNsYXNzKCBmaXJzdCwgbnVsbCwgdGhpcy5vcHRpb25zLmljb25zLnVwICk7CgkJCXRoaXMuX2FkZENsYXNzKCBmaXJzdCwgbnVsbCwgdmFsdWUudXAgKTsKCQkJbGFzdCA9IHRoaXMuYnV0dG9ucy5sYXN0KCkuZmluZCggIi51aS1pY29uIiApOwoJCQl0aGlzLl9yZW1vdmVDbGFzcyggbGFzdCwgbnVsbCwgdGhpcy5vcHRpb25zLmljb25zLmRvd24gKTsKCQkJdGhpcy5fYWRkQ2xhc3MoIGxhc3QsIG51bGwsIHZhbHVlLmRvd24gKTsKCQl9CgoJCXRoaXMuX3N1cGVyKCBrZXksIHZhbHVlICk7Cgl9LAoKCV9zZXRPcHRpb25EaXNhYmxlZDogZnVuY3Rpb24oIHZhbHVlICkgewoJCXRoaXMuX3N1cGVyKCB2YWx1ZSApOwoKCQl0aGlzLl90b2dnbGVDbGFzcyggdGhpcy51aVNwaW5uZXIsIG51bGwsICJ1aS1zdGF0ZS1kaXNhYmxlZCIsICEhdmFsdWUgKTsKCQl0aGlzLmVsZW1lbnQucHJvcCggImRpc2FibGVkIiwgISF2YWx1ZSApOwoJCXRoaXMuYnV0dG9ucy5idXR0b24oIHZhbHVlID8gImRpc2FibGUiIDogImVuYWJsZSIgKTsKCX0sCgoJX3NldE9wdGlvbnM6IHNwaW5uZXJNb2RpZmVyKCBmdW5jdGlvbiggb3B0aW9ucyApIHsKCQl0aGlzLl9zdXBlciggb3B0aW9ucyApOwoJfSApLAoKCV9wYXJzZTogZnVuY3Rpb24oIHZhbCApIHsKCQlpZiAoIHR5cGVvZiB2YWwgPT09ICJzdHJpbmciICYmIHZhbCAhPT0gIiIgKSB7CgkJCXZhbCA9IHdpbmRvdy5HbG9iYWxpemUgJiYgdGhpcy5vcHRpb25zLm51bWJlckZvcm1hdCA/CgkJCQlHbG9iYWxpemUucGFyc2VGbG9hdCggdmFsLCAxMCwgdGhpcy5vcHRpb25zLmN1bHR1cmUgKSA6ICt2YWw7CgkJfQoJCXJldHVybiB2YWwgPT09ICIiIHx8IGlzTmFOKCB2YWwgKSA/IG51bGwgOiB2YWw7Cgl9LAoKCV9mb3JtYXQ6IGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQlpZiAoIHZhbHVlID09PSAiIiApIHsKCQkJcmV0dXJuICIiOwoJCX0KCQlyZXR1cm4gd2luZG93Lkdsb2JhbGl6ZSAmJiB0aGlzLm9wdGlvbnMubnVtYmVyRm9ybWF0ID8KCQkJR2xvYmFsaXplLmZvcm1hdCggdmFsdWUsIHRoaXMub3B0aW9ucy5udW1iZXJGb3JtYXQsIHRoaXMub3B0aW9ucy5jdWx0dXJlICkgOgoJCQl2YWx1ZTsKCX0sCgoJX3JlZnJlc2g6IGZ1bmN0aW9uKCkgewoJCXRoaXMuZWxlbWVudC5hdHRyKCB7CgkJCSJhcmlhLXZhbHVlbWluIjogdGhpcy5vcHRpb25zLm1pbiwKCQkJImFyaWEtdmFsdWVtYXgiOiB0aGlzLm9wdGlvbnMubWF4LAoKCQkJLy8gVE9ETzogd2hhdCBzaG91bGQgd2UgZG8gd2l0aCB2YWx1ZXMgdGhhdCBjYW4ndCBiZSBwYXJzZWQ/CgkJCSJhcmlhLXZhbHVlbm93IjogdGhpcy5fcGFyc2UoIHRoaXMuZWxlbWVudC52YWwoKSApCgkJfSApOwoJfSwKCglpc1ZhbGlkOiBmdW5jdGlvbigpIHsKCQl2YXIgdmFsdWUgPSB0aGlzLnZhbHVlKCk7CgoJCS8vIE51bGwgaXMgaW52YWxpZAoJCWlmICggdmFsdWUgPT09IG51bGwgKSB7CgkJCXJldHVybiBmYWxzZTsKCQl9CgoJCS8vIElmIHZhbHVlIGdldHMgYWRqdXN0ZWQsIGl0J3MgaW52YWxpZAoJCXJldHVybiB2YWx1ZSA9PT0gdGhpcy5fYWRqdXN0VmFsdWUoIHZhbHVlICk7Cgl9LAoKCS8vIFVwZGF0ZSB0aGUgdmFsdWUgd2l0aG91dCB0cmlnZ2VyaW5nIGNoYW5nZQoJX3ZhbHVlOiBmdW5jdGlvbiggdmFsdWUsIGFsbG93QW55ICkgewoJCXZhciBwYXJzZWQ7CgkJaWYgKCB2YWx1ZSAhPT0gIiIgKSB7CgkJCXBhcnNlZCA9IHRoaXMuX3BhcnNlKCB2YWx1ZSApOwoJCQlpZiAoIHBhcnNlZCAhPT0gbnVsbCApIHsKCQkJCWlmICggIWFsbG93QW55ICkgewoJCQkJCXBhcnNlZCA9IHRoaXMuX2FkanVzdFZhbHVlKCBwYXJzZWQgKTsKCQkJCX0KCQkJCXZhbHVlID0gdGhpcy5fZm9ybWF0KCBwYXJzZWQgKTsKCQkJfQoJCX0KCQl0aGlzLmVsZW1lbnQudmFsKCB2YWx1ZSApOwoJCXRoaXMuX3JlZnJlc2goKTsKCX0sCgoJX2Rlc3Ryb3k6IGZ1bmN0aW9uKCkgewoJCXRoaXMuZWxlbWVudAoJCQkucHJvcCggImRpc2FibGVkIiwgZmFsc2UgKQoJCQkucmVtb3ZlQXR0ciggImF1dG9jb21wbGV0ZSByb2xlIGFyaWEtdmFsdWVtaW4gYXJpYS12YWx1ZW1heCBhcmlhLXZhbHVlbm93IiApOwoKCQl0aGlzLnVpU3Bpbm5lci5yZXBsYWNlV2l0aCggdGhpcy5lbGVtZW50ICk7Cgl9LAoKCXN0ZXBVcDogc3Bpbm5lck1vZGlmZXIoIGZ1bmN0aW9uKCBzdGVwcyApIHsKCQl0aGlzLl9zdGVwVXAoIHN0ZXBzICk7Cgl9ICksCglfc3RlcFVwOiBmdW5jdGlvbiggc3RlcHMgKSB7CgkJaWYgKCB0aGlzLl9zdGFydCgpICkgewoJCQl0aGlzLl9zcGluKCAoIHN0ZXBzIHx8IDEgKSAqIHRoaXMub3B0aW9ucy5zdGVwICk7CgkJCXRoaXMuX3N0b3AoKTsKCQl9Cgl9LAoKCXN0ZXBEb3duOiBzcGlubmVyTW9kaWZlciggZnVuY3Rpb24oIHN0ZXBzICkgewoJCXRoaXMuX3N0ZXBEb3duKCBzdGVwcyApOwoJfSApLAoJX3N0ZXBEb3duOiBmdW5jdGlvbiggc3RlcHMgKSB7CgkJaWYgKCB0aGlzLl9zdGFydCgpICkgewoJCQl0aGlzLl9zcGluKCAoIHN0ZXBzIHx8IDEgKSAqIC10aGlzLm9wdGlvbnMuc3RlcCApOwoJCQl0aGlzLl9zdG9wKCk7CgkJfQoJfSwKCglwYWdlVXA6IHNwaW5uZXJNb2RpZmVyKCBmdW5jdGlvbiggcGFnZXMgKSB7CgkJdGhpcy5fc3RlcFVwKCAoIHBhZ2VzIHx8IDEgKSAqIHRoaXMub3B0aW9ucy5wYWdlICk7Cgl9ICksCgoJcGFnZURvd246IHNwaW5uZXJNb2RpZmVyKCBmdW5jdGlvbiggcGFnZXMgKSB7CgkJdGhpcy5fc3RlcERvd24oICggcGFnZXMgfHwgMSApICogdGhpcy5vcHRpb25zLnBhZ2UgKTsKCX0gKSwKCgl2YWx1ZTogZnVuY3Rpb24oIG5ld1ZhbCApIHsKCQlpZiAoICFhcmd1bWVudHMubGVuZ3RoICkgewoJCQlyZXR1cm4gdGhpcy5fcGFyc2UoIHRoaXMuZWxlbWVudC52YWwoKSApOwoJCX0KCQlzcGlubmVyTW9kaWZlciggdGhpcy5fdmFsdWUgKS5jYWxsKCB0aGlzLCBuZXdWYWwgKTsKCX0sCgoJd2lkZ2V0OiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gdGhpcy51aVNwaW5uZXI7Cgl9Cn0gKTsKCi8vIERFUFJFQ0FURUQKLy8gVE9ETzogc3dpdGNoIHJldHVybiBiYWNrIHRvIHdpZGdldCBkZWNsYXJhdGlvbiBhdCB0b3Agb2YgZmlsZSB3aGVuIHRoaXMgaXMgcmVtb3ZlZAppZiAoICQudWlCYWNrQ29tcGF0ICE9PSBmYWxzZSApIHsKCgkvLyBCYWNrY29tcGF0IGZvciBzcGlubmVyIGh0bWwgZXh0ZW5zaW9uIHBvaW50cwoJJC53aWRnZXQoICJ1aS5zcGlubmVyIiwgJC51aS5zcGlubmVyLCB7CgkJX2VuaGFuY2U6IGZ1bmN0aW9uKCkgewoJCQl0aGlzLnVpU3Bpbm5lciA9IHRoaXMuZWxlbWVudAoJCQkJLmF0dHIoICJhdXRvY29tcGxldGUiLCAib2ZmIiApCgkJCQkud3JhcCggdGhpcy5fdWlTcGlubmVySHRtbCgpICkKCQkJCS5wYXJlbnQoKQoKCQkJCQkvLyBBZGQgYnV0dG9ucwoJCQkJCS5hcHBlbmQoIHRoaXMuX2J1dHRvbkh0bWwoKSApOwoJCX0sCgkJX3VpU3Bpbm5lckh0bWw6IGZ1bmN0aW9uKCkgewoJCQlyZXR1cm4gIjxzcGFuPiI7CgkJfSwKCgkJX2J1dHRvbkh0bWw6IGZ1bmN0aW9uKCkgewoJCQlyZXR1cm4gIjxhPjwvYT48YT48L2E+IjsKCQl9Cgl9ICk7Cn0KCnZhciB3aWRnZXRzU3Bpbm5lciA9ICQudWkuc3Bpbm5lcjsKCgovKiEKICogalF1ZXJ5IFVJIFRhYnMgMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiBUYWJzCi8vPj5ncm91cDogV2lkZ2V0cwovLz4+ZGVzY3JpcHRpb246IFRyYW5zZm9ybXMgYSBzZXQgb2YgY29udGFpbmVyIGVsZW1lbnRzIGludG8gYSB0YWIgc3RydWN0dXJlLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vdGFicy8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL3RhYnMvCi8vPj5jc3Muc3RydWN0dXJlOiAuLi8uLi90aGVtZXMvYmFzZS9jb3JlLmNzcwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvdGFicy5jc3MKLy8+PmNzcy50aGVtZTogLi4vLi4vdGhlbWVzL2Jhc2UvdGhlbWUuY3NzCgoKCiQud2lkZ2V0KCAidWkudGFicyIsIHsKCXZlcnNpb246ICIxLjEyLjEiLAoJZGVsYXk6IDMwMCwKCW9wdGlvbnM6IHsKCQlhY3RpdmU6IG51bGwsCgkJY2xhc3NlczogewoJCQkidWktdGFicyI6ICJ1aS1jb3JuZXItYWxsIiwKCQkJInVpLXRhYnMtbmF2IjogInVpLWNvcm5lci1hbGwiLAoJCQkidWktdGFicy1wYW5lbCI6ICJ1aS1jb3JuZXItYm90dG9tIiwKCQkJInVpLXRhYnMtdGFiIjogInVpLWNvcm5lci10b3AiCgkJfSwKCQljb2xsYXBzaWJsZTogZmFsc2UsCgkJZXZlbnQ6ICJjbGljayIsCgkJaGVpZ2h0U3R5bGU6ICJjb250ZW50IiwKCQloaWRlOiBudWxsLAoJCXNob3c6IG51bGwsCgoJCS8vIENhbGxiYWNrcwoJCWFjdGl2YXRlOiBudWxsLAoJCWJlZm9yZUFjdGl2YXRlOiBudWxsLAoJCWJlZm9yZUxvYWQ6IG51bGwsCgkJbG9hZDogbnVsbAoJfSwKCglfaXNMb2NhbDogKCBmdW5jdGlvbigpIHsKCQl2YXIgcmhhc2ggPSAvIy4qJC87CgoJCXJldHVybiBmdW5jdGlvbiggYW5jaG9yICkgewoJCQl2YXIgYW5jaG9yVXJsLCBsb2NhdGlvblVybDsKCgkJCWFuY2hvclVybCA9IGFuY2hvci5ocmVmLnJlcGxhY2UoIHJoYXNoLCAiIiApOwoJCQlsb2NhdGlvblVybCA9IGxvY2F0aW9uLmhyZWYucmVwbGFjZSggcmhhc2gsICIiICk7CgoJCQkvLyBEZWNvZGluZyBtYXkgdGhyb3cgYW4gZXJyb3IgaWYgdGhlIFVSTCBpc24ndCBVVEYtOCAoIzk1MTgpCgkJCXRyeSB7CgkJCQlhbmNob3JVcmwgPSBkZWNvZGVVUklDb21wb25lbnQoIGFuY2hvclVybCApOwoJCQl9IGNhdGNoICggZXJyb3IgKSB7fQoJCQl0cnkgewoJCQkJbG9jYXRpb25VcmwgPSBkZWNvZGVVUklDb21wb25lbnQoIGxvY2F0aW9uVXJsICk7CgkJCX0gY2F0Y2ggKCBlcnJvciApIHt9CgoJCQlyZXR1cm4gYW5jaG9yLmhhc2gubGVuZ3RoID4gMSAmJiBhbmNob3JVcmwgPT09IGxvY2F0aW9uVXJsOwoJCX07Cgl9ICkoKSwKCglfY3JlYXRlOiBmdW5jdGlvbigpIHsKCQl2YXIgdGhhdCA9IHRoaXMsCgkJCW9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7CgoJCXRoaXMucnVubmluZyA9IGZhbHNlOwoKCQl0aGlzLl9hZGRDbGFzcyggInVpLXRhYnMiLCAidWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IiApOwoJCXRoaXMuX3RvZ2dsZUNsYXNzKCAidWktdGFicy1jb2xsYXBzaWJsZSIsIG51bGwsIG9wdGlvbnMuY29sbGFwc2libGUgKTsKCgkJdGhpcy5fcHJvY2Vzc1RhYnMoKTsKCQlvcHRpb25zLmFjdGl2ZSA9IHRoaXMuX2luaXRpYWxBY3RpdmUoKTsKCgkJLy8gVGFrZSBkaXNhYmxpbmcgdGFicyB2aWEgY2xhc3MgYXR0cmlidXRlIGZyb20gSFRNTAoJCS8vIGludG8gYWNjb3VudCBhbmQgdXBkYXRlIG9wdGlvbiBwcm9wZXJseS4KCQlpZiAoICQuaXNBcnJheSggb3B0aW9ucy5kaXNhYmxlZCApICkgewoJCQlvcHRpb25zLmRpc2FibGVkID0gJC51bmlxdWUoIG9wdGlvbnMuZGlzYWJsZWQuY29uY2F0KAoJCQkJJC5tYXAoIHRoaXMudGFicy5maWx0ZXIoICIudWktc3RhdGUtZGlzYWJsZWQiICksIGZ1bmN0aW9uKCBsaSApIHsKCQkJCQlyZXR1cm4gdGhhdC50YWJzLmluZGV4KCBsaSApOwoJCQkJfSApCgkJCSkgKS5zb3J0KCk7CgkJfQoKCQkvLyBDaGVjayBmb3IgbGVuZ3RoIGF2b2lkcyBlcnJvciB3aGVuIGluaXRpYWxpemluZyBlbXB0eSBsaXN0CgkJaWYgKCB0aGlzLm9wdGlvbnMuYWN0aXZlICE9PSBmYWxzZSAmJiB0aGlzLmFuY2hvcnMubGVuZ3RoICkgewoJCQl0aGlzLmFjdGl2ZSA9IHRoaXMuX2ZpbmRBY3RpdmUoIG9wdGlvbnMuYWN0aXZlICk7CgkJfSBlbHNlIHsKCQkJdGhpcy5hY3RpdmUgPSAkKCk7CgkJfQoKCQl0aGlzLl9yZWZyZXNoKCk7CgoJCWlmICggdGhpcy5hY3RpdmUubGVuZ3RoICkgewoJCQl0aGlzLmxvYWQoIG9wdGlvbnMuYWN0aXZlICk7CgkJfQoJfSwKCglfaW5pdGlhbEFjdGl2ZTogZnVuY3Rpb24oKSB7CgkJdmFyIGFjdGl2ZSA9IHRoaXMub3B0aW9ucy5hY3RpdmUsCgkJCWNvbGxhcHNpYmxlID0gdGhpcy5vcHRpb25zLmNvbGxhcHNpYmxlLAoJCQlsb2NhdGlvbkhhc2ggPSBsb2NhdGlvbi5oYXNoLnN1YnN0cmluZyggMSApOwoKCQlpZiAoIGFjdGl2ZSA9PT0gbnVsbCApIHsKCgkJCS8vIGNoZWNrIHRoZSBmcmFnbWVudCBpZGVudGlmaWVyIGluIHRoZSBVUkwKCQkJaWYgKCBsb2NhdGlvbkhhc2ggKSB7CgkJCQl0aGlzLnRhYnMuZWFjaCggZnVuY3Rpb24oIGksIHRhYiApIHsKCQkJCQlpZiAoICQoIHRhYiApLmF0dHIoICJhcmlhLWNvbnRyb2xzIiApID09PSBsb2NhdGlvbkhhc2ggKSB7CgkJCQkJCWFjdGl2ZSA9IGk7CgkJCQkJCXJldHVybiBmYWxzZTsKCQkJCQl9CgkJCQl9ICk7CgkJCX0KCgkJCS8vIENoZWNrIGZvciBhIHRhYiBtYXJrZWQgYWN0aXZlIHZpYSBhIGNsYXNzCgkJCWlmICggYWN0aXZlID09PSBudWxsICkgewoJCQkJYWN0aXZlID0gdGhpcy50YWJzLmluZGV4KCB0aGlzLnRhYnMuZmlsdGVyKCAiLnVpLXRhYnMtYWN0aXZlIiApICk7CgkJCX0KCgkJCS8vIE5vIGFjdGl2ZSB0YWIsIHNldCB0byBmYWxzZQoJCQlpZiAoIGFjdGl2ZSA9PT0gbnVsbCB8fCBhY3RpdmUgPT09IC0xICkgewoJCQkJYWN0aXZlID0gdGhpcy50YWJzLmxlbmd0aCA/IDAgOiBmYWxzZTsKCQkJfQoJCX0KCgkJLy8gSGFuZGxlIG51bWJlcnM6IG5lZ2F0aXZlLCBvdXQgb2YgcmFuZ2UKCQlpZiAoIGFjdGl2ZSAhPT0gZmFsc2UgKSB7CgkJCWFjdGl2ZSA9IHRoaXMudGFicy5pbmRleCggdGhpcy50YWJzLmVxKCBhY3RpdmUgKSApOwoJCQlpZiAoIGFjdGl2ZSA9PT0gLTEgKSB7CgkJCQlhY3RpdmUgPSBjb2xsYXBzaWJsZSA/IGZhbHNlIDogMDsKCQkJfQoJCX0KCgkJLy8gRG9uJ3QgYWxsb3cgY29sbGFwc2libGU6IGZhbHNlIGFuZCBhY3RpdmU6IGZhbHNlCgkJaWYgKCAhY29sbGFwc2libGUgJiYgYWN0aXZlID09PSBmYWxzZSAmJiB0aGlzLmFuY2hvcnMubGVuZ3RoICkgewoJCQlhY3RpdmUgPSAwOwoJCX0KCgkJcmV0dXJuIGFjdGl2ZTsKCX0sCgoJX2dldENyZWF0ZUV2ZW50RGF0YTogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHsKCQkJdGFiOiB0aGlzLmFjdGl2ZSwKCQkJcGFuZWw6ICF0aGlzLmFjdGl2ZS5sZW5ndGggPyAkKCkgOiB0aGlzLl9nZXRQYW5lbEZvclRhYiggdGhpcy5hY3RpdmUgKQoJCX07Cgl9LAoKCV90YWJLZXlkb3duOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdmFyIGZvY3VzZWRUYWIgPSAkKCAkLnVpLnNhZmVBY3RpdmVFbGVtZW50KCB0aGlzLmRvY3VtZW50WyAwIF0gKSApLmNsb3Nlc3QoICJsaSIgKSwKCQkJc2VsZWN0ZWRJbmRleCA9IHRoaXMudGFicy5pbmRleCggZm9jdXNlZFRhYiApLAoJCQlnb2luZ0ZvcndhcmQgPSB0cnVlOwoKCQlpZiAoIHRoaXMuX2hhbmRsZVBhZ2VOYXYoIGV2ZW50ICkgKSB7CgkJCXJldHVybjsKCQl9CgoJCXN3aXRjaCAoIGV2ZW50LmtleUNvZGUgKSB7CgkJY2FzZSAkLnVpLmtleUNvZGUuUklHSFQ6CgkJY2FzZSAkLnVpLmtleUNvZGUuRE9XTjoKCQkJc2VsZWN0ZWRJbmRleCsrOwoJCQlicmVhazsKCQljYXNlICQudWkua2V5Q29kZS5VUDoKCQljYXNlICQudWkua2V5Q29kZS5MRUZUOgoJCQlnb2luZ0ZvcndhcmQgPSBmYWxzZTsKCQkJc2VsZWN0ZWRJbmRleC0tOwoJCQlicmVhazsKCQljYXNlICQudWkua2V5Q29kZS5FTkQ6CgkJCXNlbGVjdGVkSW5kZXggPSB0aGlzLmFuY2hvcnMubGVuZ3RoIC0gMTsKCQkJYnJlYWs7CgkJY2FzZSAkLnVpLmtleUNvZGUuSE9NRToKCQkJc2VsZWN0ZWRJbmRleCA9IDA7CgkJCWJyZWFrOwoJCWNhc2UgJC51aS5rZXlDb2RlLlNQQUNFOgoKCQkJLy8gQWN0aXZhdGUgb25seSwgbm8gY29sbGFwc2luZwoJCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOwoJCQljbGVhclRpbWVvdXQoIHRoaXMuYWN0aXZhdGluZyApOwoJCQl0aGlzLl9hY3RpdmF0ZSggc2VsZWN0ZWRJbmRleCApOwoJCQlyZXR1cm47CgkJY2FzZSAkLnVpLmtleUNvZGUuRU5URVI6CgoJCQkvLyBUb2dnbGUgKGNhbmNlbCBkZWxheWVkIGFjdGl2YXRpb24sIGFsbG93IGNvbGxhcHNpbmcpCgkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCWNsZWFyVGltZW91dCggdGhpcy5hY3RpdmF0aW5nICk7CgoJCQkvLyBEZXRlcm1pbmUgaWYgd2Ugc2hvdWxkIGNvbGxhcHNlIG9yIGFjdGl2YXRlCgkJCXRoaXMuX2FjdGl2YXRlKCBzZWxlY3RlZEluZGV4ID09PSB0aGlzLm9wdGlvbnMuYWN0aXZlID8gZmFsc2UgOiBzZWxlY3RlZEluZGV4ICk7CgkJCXJldHVybjsKCQlkZWZhdWx0OgoJCQlyZXR1cm47CgkJfQoKCQkvLyBGb2N1cyB0aGUgYXBwcm9wcmlhdGUgdGFiLCBiYXNlZCBvbiB3aGljaCBrZXkgd2FzIHByZXNzZWQKCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOwoJCWNsZWFyVGltZW91dCggdGhpcy5hY3RpdmF0aW5nICk7CgkJc2VsZWN0ZWRJbmRleCA9IHRoaXMuX2ZvY3VzTmV4dFRhYiggc2VsZWN0ZWRJbmRleCwgZ29pbmdGb3J3YXJkICk7CgoJCS8vIE5hdmlnYXRpbmcgd2l0aCBjb250cm9sL2NvbW1hbmQga2V5IHdpbGwgcHJldmVudCBhdXRvbWF0aWMgYWN0aXZhdGlvbgoJCWlmICggIWV2ZW50LmN0cmxLZXkgJiYgIWV2ZW50Lm1ldGFLZXkgKSB7CgoJCQkvLyBVcGRhdGUgYXJpYS1zZWxlY3RlZCBpbW1lZGlhdGVseSBzbyB0aGF0IEFUIHRoaW5rIHRoZSB0YWIgaXMgYWxyZWFkeSBzZWxlY3RlZC4KCQkJLy8gT3RoZXJ3aXNlIEFUIG1heSBjb25mdXNlIHRoZSB1c2VyIGJ5IHN0YXRpbmcgdGhhdCB0aGV5IG5lZWQgdG8gYWN0aXZhdGUgdGhlIHRhYiwKCQkJLy8gYnV0IHRoZSB0YWIgd2lsbCBhbHJlYWR5IGJlIGFjdGl2YXRlZCBieSB0aGUgdGltZSB0aGUgYW5ub3VuY2VtZW50IGZpbmlzaGVzLgoJCQlmb2N1c2VkVGFiLmF0dHIoICJhcmlhLXNlbGVjdGVkIiwgImZhbHNlIiApOwoJCQl0aGlzLnRhYnMuZXEoIHNlbGVjdGVkSW5kZXggKS5hdHRyKCAiYXJpYS1zZWxlY3RlZCIsICJ0cnVlIiApOwoKCQkJdGhpcy5hY3RpdmF0aW5nID0gdGhpcy5fZGVsYXkoIGZ1bmN0aW9uKCkgewoJCQkJdGhpcy5vcHRpb24oICJhY3RpdmUiLCBzZWxlY3RlZEluZGV4ICk7CgkJCX0sIHRoaXMuZGVsYXkgKTsKCQl9Cgl9LAoKCV9wYW5lbEtleWRvd246IGZ1bmN0aW9uKCBldmVudCApIHsKCQlpZiAoIHRoaXMuX2hhbmRsZVBhZ2VOYXYoIGV2ZW50ICkgKSB7CgkJCXJldHVybjsKCQl9CgoJCS8vIEN0cmwrdXAgbW92ZXMgZm9jdXMgdG8gdGhlIGN1cnJlbnQgdGFiCgkJaWYgKCBldmVudC5jdHJsS2V5ICYmIGV2ZW50LmtleUNvZGUgPT09ICQudWkua2V5Q29kZS5VUCApIHsKCQkJZXZlbnQucHJldmVudERlZmF1bHQoKTsKCQkJdGhpcy5hY3RpdmUudHJpZ2dlciggImZvY3VzIiApOwoJCX0KCX0sCgoJLy8gQWx0K3BhZ2UgdXAvZG93biBtb3ZlcyBmb2N1cyB0byB0aGUgcHJldmlvdXMvbmV4dCB0YWIgKGFuZCBhY3RpdmF0ZXMpCglfaGFuZGxlUGFnZU5hdjogZnVuY3Rpb24oIGV2ZW50ICkgewoJCWlmICggZXZlbnQuYWx0S2V5ICYmIGV2ZW50LmtleUNvZGUgPT09ICQudWkua2V5Q29kZS5QQUdFX1VQICkgewoJCQl0aGlzLl9hY3RpdmF0ZSggdGhpcy5fZm9jdXNOZXh0VGFiKCB0aGlzLm9wdGlvbnMuYWN0aXZlIC0gMSwgZmFsc2UgKSApOwoJCQlyZXR1cm4gdHJ1ZTsKCQl9CgkJaWYgKCBldmVudC5hbHRLZXkgJiYgZXZlbnQua2V5Q29kZSA9PT0gJC51aS5rZXlDb2RlLlBBR0VfRE9XTiApIHsKCQkJdGhpcy5fYWN0aXZhdGUoIHRoaXMuX2ZvY3VzTmV4dFRhYiggdGhpcy5vcHRpb25zLmFjdGl2ZSArIDEsIHRydWUgKSApOwoJCQlyZXR1cm4gdHJ1ZTsKCQl9Cgl9LAoKCV9maW5kTmV4dFRhYjogZnVuY3Rpb24oIGluZGV4LCBnb2luZ0ZvcndhcmQgKSB7CgkJdmFyIGxhc3RUYWJJbmRleCA9IHRoaXMudGFicy5sZW5ndGggLSAxOwoKCQlmdW5jdGlvbiBjb25zdHJhaW4oKSB7CgkJCWlmICggaW5kZXggPiBsYXN0VGFiSW5kZXggKSB7CgkJCQlpbmRleCA9IDA7CgkJCX0KCQkJaWYgKCBpbmRleCA8IDAgKSB7CgkJCQlpbmRleCA9IGxhc3RUYWJJbmRleDsKCQkJfQoJCQlyZXR1cm4gaW5kZXg7CgkJfQoKCQl3aGlsZSAoICQuaW5BcnJheSggY29uc3RyYWluKCksIHRoaXMub3B0aW9ucy5kaXNhYmxlZCApICE9PSAtMSApIHsKCQkJaW5kZXggPSBnb2luZ0ZvcndhcmQgPyBpbmRleCArIDEgOiBpbmRleCAtIDE7CgkJfQoKCQlyZXR1cm4gaW5kZXg7Cgl9LAoKCV9mb2N1c05leHRUYWI6IGZ1bmN0aW9uKCBpbmRleCwgZ29pbmdGb3J3YXJkICkgewoJCWluZGV4ID0gdGhpcy5fZmluZE5leHRUYWIoIGluZGV4LCBnb2luZ0ZvcndhcmQgKTsKCQl0aGlzLnRhYnMuZXEoIGluZGV4ICkudHJpZ2dlciggImZvY3VzIiApOwoJCXJldHVybiBpbmRleDsKCX0sCgoJX3NldE9wdGlvbjogZnVuY3Rpb24oIGtleSwgdmFsdWUgKSB7CgkJaWYgKCBrZXkgPT09ICJhY3RpdmUiICkgewoKCQkJLy8gX2FjdGl2YXRlKCkgd2lsbCBoYW5kbGUgaW52YWxpZCB2YWx1ZXMgYW5kIHVwZGF0ZSB0aGlzLm9wdGlvbnMKCQkJdGhpcy5fYWN0aXZhdGUoIHZhbHVlICk7CgkJCXJldHVybjsKCQl9CgoJCXRoaXMuX3N1cGVyKCBrZXksIHZhbHVlICk7CgoJCWlmICgga2V5ID09PSAiY29sbGFwc2libGUiICkgewoJCQl0aGlzLl90b2dnbGVDbGFzcyggInVpLXRhYnMtY29sbGFwc2libGUiLCBudWxsLCB2YWx1ZSApOwoKCQkJLy8gU2V0dGluZyBjb2xsYXBzaWJsZTogZmFsc2Ugd2hpbGUgY29sbGFwc2VkOyBvcGVuIGZpcnN0IHBhbmVsCgkJCWlmICggIXZhbHVlICYmIHRoaXMub3B0aW9ucy5hY3RpdmUgPT09IGZhbHNlICkgewoJCQkJdGhpcy5fYWN0aXZhdGUoIDAgKTsKCQkJfQoJCX0KCgkJaWYgKCBrZXkgPT09ICJldmVudCIgKSB7CgkJCXRoaXMuX3NldHVwRXZlbnRzKCB2YWx1ZSApOwoJCX0KCgkJaWYgKCBrZXkgPT09ICJoZWlnaHRTdHlsZSIgKSB7CgkJCXRoaXMuX3NldHVwSGVpZ2h0U3R5bGUoIHZhbHVlICk7CgkJfQoJfSwKCglfc2FuaXRpemVTZWxlY3RvcjogZnVuY3Rpb24oIGhhc2ggKSB7CgkJcmV0dXJuIGhhc2ggPyBoYXNoLnJlcGxhY2UoIC9bISIkJSYnKCkqKywuXC86Ozw9Pj9AXFtcXVxeYHt8fX5dL2csICJcXCQmIiApIDogIiI7Cgl9LAoKCXJlZnJlc2g6IGZ1bmN0aW9uKCkgewoJCXZhciBvcHRpb25zID0gdGhpcy5vcHRpb25zLAoJCQlsaXMgPSB0aGlzLnRhYmxpc3QuY2hpbGRyZW4oICI6aGFzKGFbaHJlZl0pIiApOwoKCQkvLyBHZXQgZGlzYWJsZWQgdGFicyBmcm9tIGNsYXNzIGF0dHJpYnV0ZSBmcm9tIEhUTUwKCQkvLyB0aGlzIHdpbGwgZ2V0IGNvbnZlcnRlZCB0byBhIGJvb2xlYW4gaWYgbmVlZGVkIGluIF9yZWZyZXNoKCkKCQlvcHRpb25zLmRpc2FibGVkID0gJC5tYXAoIGxpcy5maWx0ZXIoICIudWktc3RhdGUtZGlzYWJsZWQiICksIGZ1bmN0aW9uKCB0YWIgKSB7CgkJCXJldHVybiBsaXMuaW5kZXgoIHRhYiApOwoJCX0gKTsKCgkJdGhpcy5fcHJvY2Vzc1RhYnMoKTsKCgkJLy8gV2FzIGNvbGxhcHNlZCBvciBubyB0YWJzCgkJaWYgKCBvcHRpb25zLmFjdGl2ZSA9PT0gZmFsc2UgfHwgIXRoaXMuYW5jaG9ycy5sZW5ndGggKSB7CgkJCW9wdGlvbnMuYWN0aXZlID0gZmFsc2U7CgkJCXRoaXMuYWN0aXZlID0gJCgpOwoKCQkvLyB3YXMgYWN0aXZlLCBidXQgYWN0aXZlIHRhYiBpcyBnb25lCgkJfSBlbHNlIGlmICggdGhpcy5hY3RpdmUubGVuZ3RoICYmICEkLmNvbnRhaW5zKCB0aGlzLnRhYmxpc3RbIDAgXSwgdGhpcy5hY3RpdmVbIDAgXSApICkgewoKCQkJLy8gYWxsIHJlbWFpbmluZyB0YWJzIGFyZSBkaXNhYmxlZAoJCQlpZiAoIHRoaXMudGFicy5sZW5ndGggPT09IG9wdGlvbnMuZGlzYWJsZWQubGVuZ3RoICkgewoJCQkJb3B0aW9ucy5hY3RpdmUgPSBmYWxzZTsKCQkJCXRoaXMuYWN0aXZlID0gJCgpOwoKCQkJLy8gYWN0aXZhdGUgcHJldmlvdXMgdGFiCgkJCX0gZWxzZSB7CgkJCQl0aGlzLl9hY3RpdmF0ZSggdGhpcy5fZmluZE5leHRUYWIoIE1hdGgubWF4KCAwLCBvcHRpb25zLmFjdGl2ZSAtIDEgKSwgZmFsc2UgKSApOwoJCQl9CgoJCS8vIHdhcyBhY3RpdmUsIGFjdGl2ZSB0YWIgc3RpbGwgZXhpc3RzCgkJfSBlbHNlIHsKCgkJCS8vIG1ha2Ugc3VyZSBhY3RpdmUgaW5kZXggaXMgY29ycmVjdAoJCQlvcHRpb25zLmFjdGl2ZSA9IHRoaXMudGFicy5pbmRleCggdGhpcy5hY3RpdmUgKTsKCQl9CgoJCXRoaXMuX3JlZnJlc2goKTsKCX0sCgoJX3JlZnJlc2g6IGZ1bmN0aW9uKCkgewoJCXRoaXMuX3NldE9wdGlvbkRpc2FibGVkKCB0aGlzLm9wdGlvbnMuZGlzYWJsZWQgKTsKCQl0aGlzLl9zZXR1cEV2ZW50cyggdGhpcy5vcHRpb25zLmV2ZW50ICk7CgkJdGhpcy5fc2V0dXBIZWlnaHRTdHlsZSggdGhpcy5vcHRpb25zLmhlaWdodFN0eWxlICk7CgoJCXRoaXMudGFicy5ub3QoIHRoaXMuYWN0aXZlICkuYXR0ciggewoJCQkiYXJpYS1zZWxlY3RlZCI6ICJmYWxzZSIsCgkJCSJhcmlhLWV4cGFuZGVkIjogImZhbHNlIiwKCQkJdGFiSW5kZXg6IC0xCgkJfSApOwoJCXRoaXMucGFuZWxzLm5vdCggdGhpcy5fZ2V0UGFuZWxGb3JUYWIoIHRoaXMuYWN0aXZlICkgKQoJCQkuaGlkZSgpCgkJCS5hdHRyKCB7CgkJCQkiYXJpYS1oaWRkZW4iOiAidHJ1ZSIKCQkJfSApOwoKCQkvLyBNYWtlIHN1cmUgb25lIHRhYiBpcyBpbiB0aGUgdGFiIG9yZGVyCgkJaWYgKCAhdGhpcy5hY3RpdmUubGVuZ3RoICkgewoJCQl0aGlzLnRhYnMuZXEoIDAgKS5hdHRyKCAidGFiSW5kZXgiLCAwICk7CgkJfSBlbHNlIHsKCQkJdGhpcy5hY3RpdmUKCQkJCS5hdHRyKCB7CgkJCQkJImFyaWEtc2VsZWN0ZWQiOiAidHJ1ZSIsCgkJCQkJImFyaWEtZXhwYW5kZWQiOiAidHJ1ZSIsCgkJCQkJdGFiSW5kZXg6IDAKCQkJCX0gKTsKCQkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMuYWN0aXZlLCAidWktdGFicy1hY3RpdmUiLCAidWktc3RhdGUtYWN0aXZlIiApOwoJCQl0aGlzLl9nZXRQYW5lbEZvclRhYiggdGhpcy5hY3RpdmUgKQoJCQkJLnNob3coKQoJCQkJLmF0dHIoIHsKCQkJCQkiYXJpYS1oaWRkZW4iOiAiZmFsc2UiCgkJCQl9ICk7CgkJfQoJfSwKCglfcHJvY2Vzc1RhYnM6IGZ1bmN0aW9uKCkgewoJCXZhciB0aGF0ID0gdGhpcywKCQkJcHJldlRhYnMgPSB0aGlzLnRhYnMsCgkJCXByZXZBbmNob3JzID0gdGhpcy5hbmNob3JzLAoJCQlwcmV2UGFuZWxzID0gdGhpcy5wYW5lbHM7CgoJCXRoaXMudGFibGlzdCA9IHRoaXMuX2dldExpc3QoKS5hdHRyKCAicm9sZSIsICJ0YWJsaXN0IiApOwoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLnRhYmxpc3QsICJ1aS10YWJzLW5hdiIsCgkJCSJ1aS1oZWxwZXItcmVzZXQgdWktaGVscGVyLWNsZWFyZml4IHVpLXdpZGdldC1oZWFkZXIiICk7CgoJCS8vIFByZXZlbnQgdXNlcnMgZnJvbSBmb2N1c2luZyBkaXNhYmxlZCB0YWJzIHZpYSBjbGljawoJCXRoaXMudGFibGlzdAoJCQkub24oICJtb3VzZWRvd24iICsgdGhpcy5ldmVudE5hbWVzcGFjZSwgIj4gbGkiLCBmdW5jdGlvbiggZXZlbnQgKSB7CgkJCQlpZiAoICQoIHRoaXMgKS5pcyggIi51aS1zdGF0ZS1kaXNhYmxlZCIgKSApIHsKCQkJCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOwoJCQkJfQoJCQl9ICkKCgkJCS8vIFN1cHBvcnQ6IElFIDw5CgkJCS8vIFByZXZlbnRpbmcgdGhlIGRlZmF1bHQgYWN0aW9uIGluIG1vdXNlZG93biBkb2Vzbid0IHByZXZlbnQgSUUKCQkJLy8gZnJvbSBmb2N1c2luZyB0aGUgZWxlbWVudCwgc28gaWYgdGhlIGFuY2hvciBnZXRzIGZvY3VzZWQsIGJsdXIuCgkJCS8vIFdlIGRvbid0IGhhdmUgdG8gd29ycnkgYWJvdXQgZm9jdXNpbmcgdGhlIHByZXZpb3VzbHkgZm9jdXNlZAoJCQkvLyBlbGVtZW50IHNpbmNlIGNsaWNraW5nIG9uIGEgbm9uLWZvY3VzYWJsZSBlbGVtZW50IHNob3VsZCBmb2N1cwoJCQkvLyB0aGUgYm9keSBhbnl3YXkuCgkJCS5vbiggImZvY3VzIiArIHRoaXMuZXZlbnROYW1lc3BhY2UsICIudWktdGFicy1hbmNob3IiLCBmdW5jdGlvbigpIHsKCQkJCWlmICggJCggdGhpcyApLmNsb3Nlc3QoICJsaSIgKS5pcyggIi51aS1zdGF0ZS1kaXNhYmxlZCIgKSApIHsKCQkJCQl0aGlzLmJsdXIoKTsKCQkJCX0KCQkJfSApOwoKCQl0aGlzLnRhYnMgPSB0aGlzLnRhYmxpc3QuZmluZCggIj4gbGk6aGFzKGFbaHJlZl0pIiApCgkJCS5hdHRyKCB7CgkJCQlyb2xlOiAidGFiIiwKCQkJCXRhYkluZGV4OiAtMQoJCQl9ICk7CgkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMudGFicywgInVpLXRhYnMtdGFiIiwgInVpLXN0YXRlLWRlZmF1bHQiICk7CgoJCXRoaXMuYW5jaG9ycyA9IHRoaXMudGFicy5tYXAoIGZ1bmN0aW9uKCkgewoJCQlyZXR1cm4gJCggImEiLCB0aGlzIClbIDAgXTsKCQl9ICkKCQkJLmF0dHIoIHsKCQkJCXJvbGU6ICJwcmVzZW50YXRpb24iLAoJCQkJdGFiSW5kZXg6IC0xCgkJCX0gKTsKCQl0aGlzLl9hZGRDbGFzcyggdGhpcy5hbmNob3JzLCAidWktdGFicy1hbmNob3IiICk7CgoJCXRoaXMucGFuZWxzID0gJCgpOwoKCQl0aGlzLmFuY2hvcnMuZWFjaCggZnVuY3Rpb24oIGksIGFuY2hvciApIHsKCQkJdmFyIHNlbGVjdG9yLCBwYW5lbCwgcGFuZWxJZCwKCQkJCWFuY2hvcklkID0gJCggYW5jaG9yICkudW5pcXVlSWQoKS5hdHRyKCAiaWQiICksCgkJCQl0YWIgPSAkKCBhbmNob3IgKS5jbG9zZXN0KCAibGkiICksCgkJCQlvcmlnaW5hbEFyaWFDb250cm9scyA9IHRhYi5hdHRyKCAiYXJpYS1jb250cm9scyIgKTsKCgkJCS8vIElubGluZSB0YWIKCQkJaWYgKCB0aGF0Ll9pc0xvY2FsKCBhbmNob3IgKSApIHsKCQkJCXNlbGVjdG9yID0gYW5jaG9yLmhhc2g7CgkJCQlwYW5lbElkID0gc2VsZWN0b3Iuc3Vic3RyaW5nKCAxICk7CgkJCQlwYW5lbCA9IHRoYXQuZWxlbWVudC5maW5kKCB0aGF0Ll9zYW5pdGl6ZVNlbGVjdG9yKCBzZWxlY3RvciApICk7CgoJCQkvLyByZW1vdGUgdGFiCgkJCX0gZWxzZSB7CgoJCQkJLy8gSWYgdGhlIHRhYiBkb2Vzbid0IGFscmVhZHkgaGF2ZSBhcmlhLWNvbnRyb2xzLAoJCQkJLy8gZ2VuZXJhdGUgYW4gaWQgYnkgdXNpbmcgYSB0aHJvdy1hd2F5IGVsZW1lbnQKCQkJCXBhbmVsSWQgPSB0YWIuYXR0ciggImFyaWEtY29udHJvbHMiICkgfHwgJCgge30gKS51bmlxdWVJZCgpWyAwIF0uaWQ7CgkJCQlzZWxlY3RvciA9ICIjIiArIHBhbmVsSWQ7CgkJCQlwYW5lbCA9IHRoYXQuZWxlbWVudC5maW5kKCBzZWxlY3RvciApOwoJCQkJaWYgKCAhcGFuZWwubGVuZ3RoICkgewoJCQkJCXBhbmVsID0gdGhhdC5fY3JlYXRlUGFuZWwoIHBhbmVsSWQgKTsKCQkJCQlwYW5lbC5pbnNlcnRBZnRlciggdGhhdC5wYW5lbHNbIGkgLSAxIF0gfHwgdGhhdC50YWJsaXN0ICk7CgkJCQl9CgkJCQlwYW5lbC5hdHRyKCAiYXJpYS1saXZlIiwgInBvbGl0ZSIgKTsKCQkJfQoKCQkJaWYgKCBwYW5lbC5sZW5ndGggKSB7CgkJCQl0aGF0LnBhbmVscyA9IHRoYXQucGFuZWxzLmFkZCggcGFuZWwgKTsKCQkJfQoJCQlpZiAoIG9yaWdpbmFsQXJpYUNvbnRyb2xzICkgewoJCQkJdGFiLmRhdGEoICJ1aS10YWJzLWFyaWEtY29udHJvbHMiLCBvcmlnaW5hbEFyaWFDb250cm9scyApOwoJCQl9CgkJCXRhYi5hdHRyKCB7CgkJCQkiYXJpYS1jb250cm9scyI6IHBhbmVsSWQsCgkJCQkiYXJpYS1sYWJlbGxlZGJ5IjogYW5jaG9ySWQKCQkJfSApOwoJCQlwYW5lbC5hdHRyKCAiYXJpYS1sYWJlbGxlZGJ5IiwgYW5jaG9ySWQgKTsKCQl9ICk7CgoJCXRoaXMucGFuZWxzLmF0dHIoICJyb2xlIiwgInRhYnBhbmVsIiApOwoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLnBhbmVscywgInVpLXRhYnMtcGFuZWwiLCAidWktd2lkZ2V0LWNvbnRlbnQiICk7CgoJCS8vIEF2b2lkIG1lbW9yeSBsZWFrcyAoIzEwMDU2KQoJCWlmICggcHJldlRhYnMgKSB7CgkJCXRoaXMuX29mZiggcHJldlRhYnMubm90KCB0aGlzLnRhYnMgKSApOwoJCQl0aGlzLl9vZmYoIHByZXZBbmNob3JzLm5vdCggdGhpcy5hbmNob3JzICkgKTsKCQkJdGhpcy5fb2ZmKCBwcmV2UGFuZWxzLm5vdCggdGhpcy5wYW5lbHMgKSApOwoJCX0KCX0sCgoJLy8gQWxsb3cgb3ZlcnJpZGluZyBob3cgdG8gZmluZCB0aGUgbGlzdCBmb3IgcmFyZSB1c2FnZSBzY2VuYXJpb3MgKCM3NzE1KQoJX2dldExpc3Q6IGZ1bmN0aW9uKCkgewoJCXJldHVybiB0aGlzLnRhYmxpc3QgfHwgdGhpcy5lbGVtZW50LmZpbmQoICJvbCwgdWwiICkuZXEoIDAgKTsKCX0sCgoJX2NyZWF0ZVBhbmVsOiBmdW5jdGlvbiggaWQgKSB7CgkJcmV0dXJuICQoICI8ZGl2PiIgKQoJCQkuYXR0ciggImlkIiwgaWQgKQoJCQkuZGF0YSggInVpLXRhYnMtZGVzdHJveSIsIHRydWUgKTsKCX0sCgoJX3NldE9wdGlvbkRpc2FibGVkOiBmdW5jdGlvbiggZGlzYWJsZWQgKSB7CgkJdmFyIGN1cnJlbnRJdGVtLCBsaSwgaTsKCgkJaWYgKCAkLmlzQXJyYXkoIGRpc2FibGVkICkgKSB7CgkJCWlmICggIWRpc2FibGVkLmxlbmd0aCApIHsKCQkJCWRpc2FibGVkID0gZmFsc2U7CgkJCX0gZWxzZSBpZiAoIGRpc2FibGVkLmxlbmd0aCA9PT0gdGhpcy5hbmNob3JzLmxlbmd0aCApIHsKCQkJCWRpc2FibGVkID0gdHJ1ZTsKCQkJfQoJCX0KCgkJLy8gRGlzYWJsZSB0YWJzCgkJZm9yICggaSA9IDA7ICggbGkgPSB0aGlzLnRhYnNbIGkgXSApOyBpKysgKSB7CgkJCWN1cnJlbnRJdGVtID0gJCggbGkgKTsKCQkJaWYgKCBkaXNhYmxlZCA9PT0gdHJ1ZSB8fCAkLmluQXJyYXkoIGksIGRpc2FibGVkICkgIT09IC0xICkgewoJCQkJY3VycmVudEl0ZW0uYXR0ciggImFyaWEtZGlzYWJsZWQiLCAidHJ1ZSIgKTsKCQkJCXRoaXMuX2FkZENsYXNzKCBjdXJyZW50SXRlbSwgbnVsbCwgInVpLXN0YXRlLWRpc2FibGVkIiApOwoJCQl9IGVsc2UgewoJCQkJY3VycmVudEl0ZW0ucmVtb3ZlQXR0ciggImFyaWEtZGlzYWJsZWQiICk7CgkJCQl0aGlzLl9yZW1vdmVDbGFzcyggY3VycmVudEl0ZW0sIG51bGwsICJ1aS1zdGF0ZS1kaXNhYmxlZCIgKTsKCQkJfQoJCX0KCgkJdGhpcy5vcHRpb25zLmRpc2FibGVkID0gZGlzYWJsZWQ7CgoJCXRoaXMuX3RvZ2dsZUNsYXNzKCB0aGlzLndpZGdldCgpLCB0aGlzLndpZGdldEZ1bGxOYW1lICsgIi1kaXNhYmxlZCIsIG51bGwsCgkJCWRpc2FibGVkID09PSB0cnVlICk7Cgl9LAoKCV9zZXR1cEV2ZW50czogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXZhciBldmVudHMgPSB7fTsKCQlpZiAoIGV2ZW50ICkgewoJCQkkLmVhY2goIGV2ZW50LnNwbGl0KCAiICIgKSwgZnVuY3Rpb24oIGluZGV4LCBldmVudE5hbWUgKSB7CgkJCQlldmVudHNbIGV2ZW50TmFtZSBdID0gIl9ldmVudEhhbmRsZXIiOwoJCQl9ICk7CgkJfQoKCQl0aGlzLl9vZmYoIHRoaXMuYW5jaG9ycy5hZGQoIHRoaXMudGFicyApLmFkZCggdGhpcy5wYW5lbHMgKSApOwoKCQkvLyBBbHdheXMgcHJldmVudCB0aGUgZGVmYXVsdCBhY3Rpb24sIGV2ZW4gd2hlbiBkaXNhYmxlZAoJCXRoaXMuX29uKCB0cnVlLCB0aGlzLmFuY2hvcnMsIHsKCQkJY2xpY2s6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCX0KCQl9ICk7CgkJdGhpcy5fb24oIHRoaXMuYW5jaG9ycywgZXZlbnRzICk7CgkJdGhpcy5fb24oIHRoaXMudGFicywgeyBrZXlkb3duOiAiX3RhYktleWRvd24iIH0gKTsKCQl0aGlzLl9vbiggdGhpcy5wYW5lbHMsIHsga2V5ZG93bjogIl9wYW5lbEtleWRvd24iIH0gKTsKCgkJdGhpcy5fZm9jdXNhYmxlKCB0aGlzLnRhYnMgKTsKCQl0aGlzLl9ob3ZlcmFibGUoIHRoaXMudGFicyApOwoJfSwKCglfc2V0dXBIZWlnaHRTdHlsZTogZnVuY3Rpb24oIGhlaWdodFN0eWxlICkgewoJCXZhciBtYXhIZWlnaHQsCgkJCXBhcmVudCA9IHRoaXMuZWxlbWVudC5wYXJlbnQoKTsKCgkJaWYgKCBoZWlnaHRTdHlsZSA9PT0gImZpbGwiICkgewoJCQltYXhIZWlnaHQgPSBwYXJlbnQuaGVpZ2h0KCk7CgkJCW1heEhlaWdodCAtPSB0aGlzLmVsZW1lbnQub3V0ZXJIZWlnaHQoKSAtIHRoaXMuZWxlbWVudC5oZWlnaHQoKTsKCgkJCXRoaXMuZWxlbWVudC5zaWJsaW5ncyggIjp2aXNpYmxlIiApLmVhY2goIGZ1bmN0aW9uKCkgewoJCQkJdmFyIGVsZW0gPSAkKCB0aGlzICksCgkJCQkJcG9zaXRpb24gPSBlbGVtLmNzcyggInBvc2l0aW9uIiApOwoKCQkJCWlmICggcG9zaXRpb24gPT09ICJhYnNvbHV0ZSIgfHwgcG9zaXRpb24gPT09ICJmaXhlZCIgKSB7CgkJCQkJcmV0dXJuOwoJCQkJfQoJCQkJbWF4SGVpZ2h0IC09IGVsZW0ub3V0ZXJIZWlnaHQoIHRydWUgKTsKCQkJfSApOwoKCQkJdGhpcy5lbGVtZW50LmNoaWxkcmVuKCkubm90KCB0aGlzLnBhbmVscyApLmVhY2goIGZ1bmN0aW9uKCkgewoJCQkJbWF4SGVpZ2h0IC09ICQoIHRoaXMgKS5vdXRlckhlaWdodCggdHJ1ZSApOwoJCQl9ICk7CgoJCQl0aGlzLnBhbmVscy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCSQoIHRoaXMgKS5oZWlnaHQoIE1hdGgubWF4KCAwLCBtYXhIZWlnaHQgLQoJCQkJCSQoIHRoaXMgKS5pbm5lckhlaWdodCgpICsgJCggdGhpcyApLmhlaWdodCgpICkgKTsKCQkJfSApCgkJCQkuY3NzKCAib3ZlcmZsb3ciLCAiYXV0byIgKTsKCQl9IGVsc2UgaWYgKCBoZWlnaHRTdHlsZSA9PT0gImF1dG8iICkgewoJCQltYXhIZWlnaHQgPSAwOwoJCQl0aGlzLnBhbmVscy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCW1heEhlaWdodCA9IE1hdGgubWF4KCBtYXhIZWlnaHQsICQoIHRoaXMgKS5oZWlnaHQoICIiICkuaGVpZ2h0KCkgKTsKCQkJfSApLmhlaWdodCggbWF4SGVpZ2h0ICk7CgkJfQoJfSwKCglfZXZlbnRIYW5kbGVyOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdmFyIG9wdGlvbnMgPSB0aGlzLm9wdGlvbnMsCgkJCWFjdGl2ZSA9IHRoaXMuYWN0aXZlLAoJCQlhbmNob3IgPSAkKCBldmVudC5jdXJyZW50VGFyZ2V0ICksCgkJCXRhYiA9IGFuY2hvci5jbG9zZXN0KCAibGkiICksCgkJCWNsaWNrZWRJc0FjdGl2ZSA9IHRhYlsgMCBdID09PSBhY3RpdmVbIDAgXSwKCQkJY29sbGFwc2luZyA9IGNsaWNrZWRJc0FjdGl2ZSAmJiBvcHRpb25zLmNvbGxhcHNpYmxlLAoJCQl0b1Nob3cgPSBjb2xsYXBzaW5nID8gJCgpIDogdGhpcy5fZ2V0UGFuZWxGb3JUYWIoIHRhYiApLAoJCQl0b0hpZGUgPSAhYWN0aXZlLmxlbmd0aCA/ICQoKSA6IHRoaXMuX2dldFBhbmVsRm9yVGFiKCBhY3RpdmUgKSwKCQkJZXZlbnREYXRhID0gewoJCQkJb2xkVGFiOiBhY3RpdmUsCgkJCQlvbGRQYW5lbDogdG9IaWRlLAoJCQkJbmV3VGFiOiBjb2xsYXBzaW5nID8gJCgpIDogdGFiLAoJCQkJbmV3UGFuZWw6IHRvU2hvdwoJCQl9OwoKCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOwoKCQlpZiAoIHRhYi5oYXNDbGFzcyggInVpLXN0YXRlLWRpc2FibGVkIiApIHx8CgoJCQkJLy8gdGFiIGlzIGFscmVhZHkgbG9hZGluZwoJCQkJdGFiLmhhc0NsYXNzKCAidWktdGFicy1sb2FkaW5nIiApIHx8CgoJCQkJLy8gY2FuJ3Qgc3dpdGNoIGR1cm5pbmcgYW4gYW5pbWF0aW9uCgkJCQl0aGlzLnJ1bm5pbmcgfHwKCgkJCQkvLyBjbGljayBvbiBhY3RpdmUgaGVhZGVyLCBidXQgbm90IGNvbGxhcHNpYmxlCgkJCQkoIGNsaWNrZWRJc0FjdGl2ZSAmJiAhb3B0aW9ucy5jb2xsYXBzaWJsZSApIHx8CgoJCQkJLy8gYWxsb3cgY2FuY2VsaW5nIGFjdGl2YXRpb24KCQkJCSggdGhpcy5fdHJpZ2dlciggImJlZm9yZUFjdGl2YXRlIiwgZXZlbnQsIGV2ZW50RGF0YSApID09PSBmYWxzZSApICkgewoJCQlyZXR1cm47CgkJfQoKCQlvcHRpb25zLmFjdGl2ZSA9IGNvbGxhcHNpbmcgPyBmYWxzZSA6IHRoaXMudGFicy5pbmRleCggdGFiICk7CgoJCXRoaXMuYWN0aXZlID0gY2xpY2tlZElzQWN0aXZlID8gJCgpIDogdGFiOwoJCWlmICggdGhpcy54aHIgKSB7CgkJCXRoaXMueGhyLmFib3J0KCk7CgkJfQoKCQlpZiAoICF0b0hpZGUubGVuZ3RoICYmICF0b1Nob3cubGVuZ3RoICkgewoJCQkkLmVycm9yKCAialF1ZXJ5IFVJIFRhYnM6IE1pc21hdGNoaW5nIGZyYWdtZW50IGlkZW50aWZpZXIuIiApOwoJCX0KCgkJaWYgKCB0b1Nob3cubGVuZ3RoICkgewoJCQl0aGlzLmxvYWQoIHRoaXMudGFicy5pbmRleCggdGFiICksIGV2ZW50ICk7CgkJfQoJCXRoaXMuX3RvZ2dsZSggZXZlbnQsIGV2ZW50RGF0YSApOwoJfSwKCgkvLyBIYW5kbGVzIHNob3cvaGlkZSBmb3Igc2VsZWN0aW5nIHRhYnMKCV90b2dnbGU6IGZ1bmN0aW9uKCBldmVudCwgZXZlbnREYXRhICkgewoJCXZhciB0aGF0ID0gdGhpcywKCQkJdG9TaG93ID0gZXZlbnREYXRhLm5ld1BhbmVsLAoJCQl0b0hpZGUgPSBldmVudERhdGEub2xkUGFuZWw7CgoJCXRoaXMucnVubmluZyA9IHRydWU7CgoJCWZ1bmN0aW9uIGNvbXBsZXRlKCkgewoJCQl0aGF0LnJ1bm5pbmcgPSBmYWxzZTsKCQkJdGhhdC5fdHJpZ2dlciggImFjdGl2YXRlIiwgZXZlbnQsIGV2ZW50RGF0YSApOwoJCX0KCgkJZnVuY3Rpb24gc2hvdygpIHsKCQkJdGhhdC5fYWRkQ2xhc3MoIGV2ZW50RGF0YS5uZXdUYWIuY2xvc2VzdCggImxpIiApLCAidWktdGFicy1hY3RpdmUiLCAidWktc3RhdGUtYWN0aXZlIiApOwoKCQkJaWYgKCB0b1Nob3cubGVuZ3RoICYmIHRoYXQub3B0aW9ucy5zaG93ICkgewoJCQkJdGhhdC5fc2hvdyggdG9TaG93LCB0aGF0Lm9wdGlvbnMuc2hvdywgY29tcGxldGUgKTsKCQkJfSBlbHNlIHsKCQkJCXRvU2hvdy5zaG93KCk7CgkJCQljb21wbGV0ZSgpOwoJCQl9CgkJfQoKCQkvLyBTdGFydCBvdXQgYnkgaGlkaW5nLCB0aGVuIHNob3dpbmcsIHRoZW4gY29tcGxldGluZwoJCWlmICggdG9IaWRlLmxlbmd0aCAmJiB0aGlzLm9wdGlvbnMuaGlkZSApIHsKCQkJdGhpcy5faGlkZSggdG9IaWRlLCB0aGlzLm9wdGlvbnMuaGlkZSwgZnVuY3Rpb24oKSB7CgkJCQl0aGF0Ll9yZW1vdmVDbGFzcyggZXZlbnREYXRhLm9sZFRhYi5jbG9zZXN0KCAibGkiICksCgkJCQkJInVpLXRhYnMtYWN0aXZlIiwgInVpLXN0YXRlLWFjdGl2ZSIgKTsKCQkJCXNob3coKTsKCQkJfSApOwoJCX0gZWxzZSB7CgkJCXRoaXMuX3JlbW92ZUNsYXNzKCBldmVudERhdGEub2xkVGFiLmNsb3Nlc3QoICJsaSIgKSwKCQkJCSJ1aS10YWJzLWFjdGl2ZSIsICJ1aS1zdGF0ZS1hY3RpdmUiICk7CgkJCXRvSGlkZS5oaWRlKCk7CgkJCXNob3coKTsKCQl9CgoJCXRvSGlkZS5hdHRyKCAiYXJpYS1oaWRkZW4iLCAidHJ1ZSIgKTsKCQlldmVudERhdGEub2xkVGFiLmF0dHIoIHsKCQkJImFyaWEtc2VsZWN0ZWQiOiAiZmFsc2UiLAoJCQkiYXJpYS1leHBhbmRlZCI6ICJmYWxzZSIKCQl9ICk7CgoJCS8vIElmIHdlJ3JlIHN3aXRjaGluZyB0YWJzLCByZW1vdmUgdGhlIG9sZCB0YWIgZnJvbSB0aGUgdGFiIG9yZGVyLgoJCS8vIElmIHdlJ3JlIG9wZW5pbmcgZnJvbSBjb2xsYXBzZWQgc3RhdGUsIHJlbW92ZSB0aGUgcHJldmlvdXMgdGFiIGZyb20gdGhlIHRhYiBvcmRlci4KCQkvLyBJZiB3ZSdyZSBjb2xsYXBzaW5nLCB0aGVuIGtlZXAgdGhlIGNvbGxhcHNpbmcgdGFiIGluIHRoZSB0YWIgb3JkZXIuCgkJaWYgKCB0b1Nob3cubGVuZ3RoICYmIHRvSGlkZS5sZW5ndGggKSB7CgkJCWV2ZW50RGF0YS5vbGRUYWIuYXR0ciggInRhYkluZGV4IiwgLTEgKTsKCQl9IGVsc2UgaWYgKCB0b1Nob3cubGVuZ3RoICkgewoJCQl0aGlzLnRhYnMuZmlsdGVyKCBmdW5jdGlvbigpIHsKCQkJCXJldHVybiAkKCB0aGlzICkuYXR0ciggInRhYkluZGV4IiApID09PSAwOwoJCQl9ICkKCQkJCS5hdHRyKCAidGFiSW5kZXgiLCAtMSApOwoJCX0KCgkJdG9TaG93LmF0dHIoICJhcmlhLWhpZGRlbiIsICJmYWxzZSIgKTsKCQlldmVudERhdGEubmV3VGFiLmF0dHIoIHsKCQkJImFyaWEtc2VsZWN0ZWQiOiAidHJ1ZSIsCgkJCSJhcmlhLWV4cGFuZGVkIjogInRydWUiLAoJCQl0YWJJbmRleDogMAoJCX0gKTsKCX0sCgoJX2FjdGl2YXRlOiBmdW5jdGlvbiggaW5kZXggKSB7CgkJdmFyIGFuY2hvciwKCQkJYWN0aXZlID0gdGhpcy5fZmluZEFjdGl2ZSggaW5kZXggKTsKCgkJLy8gVHJ5aW5nIHRvIGFjdGl2YXRlIHRoZSBhbHJlYWR5IGFjdGl2ZSBwYW5lbAoJCWlmICggYWN0aXZlWyAwIF0gPT09IHRoaXMuYWN0aXZlWyAwIF0gKSB7CgkJCXJldHVybjsKCQl9CgoJCS8vIFRyeWluZyB0byBjb2xsYXBzZSwgc2ltdWxhdGUgYSBjbGljayBvbiB0aGUgY3VycmVudCBhY3RpdmUgaGVhZGVyCgkJaWYgKCAhYWN0aXZlLmxlbmd0aCApIHsKCQkJYWN0aXZlID0gdGhpcy5hY3RpdmU7CgkJfQoKCQlhbmNob3IgPSBhY3RpdmUuZmluZCggIi51aS10YWJzLWFuY2hvciIgKVsgMCBdOwoJCXRoaXMuX2V2ZW50SGFuZGxlciggewoJCQl0YXJnZXQ6IGFuY2hvciwKCQkJY3VycmVudFRhcmdldDogYW5jaG9yLAoJCQlwcmV2ZW50RGVmYXVsdDogJC5ub29wCgkJfSApOwoJfSwKCglfZmluZEFjdGl2ZTogZnVuY3Rpb24oIGluZGV4ICkgewoJCXJldHVybiBpbmRleCA9PT0gZmFsc2UgPyAkKCkgOiB0aGlzLnRhYnMuZXEoIGluZGV4ICk7Cgl9LAoKCV9nZXRJbmRleDogZnVuY3Rpb24oIGluZGV4ICkgewoKCQkvLyBtZXRhLWZ1bmN0aW9uIHRvIGdpdmUgdXNlcnMgb3B0aW9uIHRvIHByb3ZpZGUgYSBocmVmIHN0cmluZyBpbnN0ZWFkIG9mIGEgbnVtZXJpY2FsIGluZGV4LgoJCWlmICggdHlwZW9mIGluZGV4ID09PSAic3RyaW5nIiApIHsKCQkJaW5kZXggPSB0aGlzLmFuY2hvcnMuaW5kZXgoIHRoaXMuYW5jaG9ycy5maWx0ZXIoICJbaHJlZiQ9JyIgKwoJCQkJJC51aS5lc2NhcGVTZWxlY3RvciggaW5kZXggKSArICInXSIgKSApOwoJCX0KCgkJcmV0dXJuIGluZGV4OwoJfSwKCglfZGVzdHJveTogZnVuY3Rpb24oKSB7CgkJaWYgKCB0aGlzLnhociApIHsKCQkJdGhpcy54aHIuYWJvcnQoKTsKCQl9CgoJCXRoaXMudGFibGlzdAoJCQkucmVtb3ZlQXR0ciggInJvbGUiICkKCQkJLm9mZiggdGhpcy5ldmVudE5hbWVzcGFjZSApOwoKCQl0aGlzLmFuY2hvcnMKCQkJLnJlbW92ZUF0dHIoICJyb2xlIHRhYkluZGV4IiApCgkJCS5yZW1vdmVVbmlxdWVJZCgpOwoKCQl0aGlzLnRhYnMuYWRkKCB0aGlzLnBhbmVscyApLmVhY2goIGZ1bmN0aW9uKCkgewoJCQlpZiAoICQuZGF0YSggdGhpcywgInVpLXRhYnMtZGVzdHJveSIgKSApIHsKCQkJCSQoIHRoaXMgKS5yZW1vdmUoKTsKCQkJfSBlbHNlIHsKCQkJCSQoIHRoaXMgKS5yZW1vdmVBdHRyKCAicm9sZSB0YWJJbmRleCAiICsKCQkJCQkiYXJpYS1saXZlIGFyaWEtYnVzeSBhcmlhLXNlbGVjdGVkIGFyaWEtbGFiZWxsZWRieSBhcmlhLWhpZGRlbiBhcmlhLWV4cGFuZGVkIiApOwoJCQl9CgkJfSApOwoKCQl0aGlzLnRhYnMuZWFjaCggZnVuY3Rpb24oKSB7CgkJCXZhciBsaSA9ICQoIHRoaXMgKSwKCQkJCXByZXYgPSBsaS5kYXRhKCAidWktdGFicy1hcmlhLWNvbnRyb2xzIiApOwoJCQlpZiAoIHByZXYgKSB7CgkJCQlsaQoJCQkJCS5hdHRyKCAiYXJpYS1jb250cm9scyIsIHByZXYgKQoJCQkJCS5yZW1vdmVEYXRhKCAidWktdGFicy1hcmlhLWNvbnRyb2xzIiApOwoJCQl9IGVsc2UgewoJCQkJbGkucmVtb3ZlQXR0ciggImFyaWEtY29udHJvbHMiICk7CgkJCX0KCQl9ICk7CgoJCXRoaXMucGFuZWxzLnNob3coKTsKCgkJaWYgKCB0aGlzLm9wdGlvbnMuaGVpZ2h0U3R5bGUgIT09ICJjb250ZW50IiApIHsKCQkJdGhpcy5wYW5lbHMuY3NzKCAiaGVpZ2h0IiwgIiIgKTsKCQl9Cgl9LAoKCWVuYWJsZTogZnVuY3Rpb24oIGluZGV4ICkgewoJCXZhciBkaXNhYmxlZCA9IHRoaXMub3B0aW9ucy5kaXNhYmxlZDsKCQlpZiAoIGRpc2FibGVkID09PSBmYWxzZSApIHsKCQkJcmV0dXJuOwoJCX0KCgkJaWYgKCBpbmRleCA9PT0gdW5kZWZpbmVkICkgewoJCQlkaXNhYmxlZCA9IGZhbHNlOwoJCX0gZWxzZSB7CgkJCWluZGV4ID0gdGhpcy5fZ2V0SW5kZXgoIGluZGV4ICk7CgkJCWlmICggJC5pc0FycmF5KCBkaXNhYmxlZCApICkgewoJCQkJZGlzYWJsZWQgPSAkLm1hcCggZGlzYWJsZWQsIGZ1bmN0aW9uKCBudW0gKSB7CgkJCQkJcmV0dXJuIG51bSAhPT0gaW5kZXggPyBudW0gOiBudWxsOwoJCQkJfSApOwoJCQl9IGVsc2UgewoJCQkJZGlzYWJsZWQgPSAkLm1hcCggdGhpcy50YWJzLCBmdW5jdGlvbiggbGksIG51bSApIHsKCQkJCQlyZXR1cm4gbnVtICE9PSBpbmRleCA/IG51bSA6IG51bGw7CgkJCQl9ICk7CgkJCX0KCQl9CgkJdGhpcy5fc2V0T3B0aW9uRGlzYWJsZWQoIGRpc2FibGVkICk7Cgl9LAoKCWRpc2FibGU6IGZ1bmN0aW9uKCBpbmRleCApIHsKCQl2YXIgZGlzYWJsZWQgPSB0aGlzLm9wdGlvbnMuZGlzYWJsZWQ7CgkJaWYgKCBkaXNhYmxlZCA9PT0gdHJ1ZSApIHsKCQkJcmV0dXJuOwoJCX0KCgkJaWYgKCBpbmRleCA9PT0gdW5kZWZpbmVkICkgewoJCQlkaXNhYmxlZCA9IHRydWU7CgkJfSBlbHNlIHsKCQkJaW5kZXggPSB0aGlzLl9nZXRJbmRleCggaW5kZXggKTsKCQkJaWYgKCAkLmluQXJyYXkoIGluZGV4LCBkaXNhYmxlZCApICE9PSAtMSApIHsKCQkJCXJldHVybjsKCQkJfQoJCQlpZiAoICQuaXNBcnJheSggZGlzYWJsZWQgKSApIHsKCQkJCWRpc2FibGVkID0gJC5tZXJnZSggWyBpbmRleCBdLCBkaXNhYmxlZCApLnNvcnQoKTsKCQkJfSBlbHNlIHsKCQkJCWRpc2FibGVkID0gWyBpbmRleCBdOwoJCQl9CgkJfQoJCXRoaXMuX3NldE9wdGlvbkRpc2FibGVkKCBkaXNhYmxlZCApOwoJfSwKCglsb2FkOiBmdW5jdGlvbiggaW5kZXgsIGV2ZW50ICkgewoJCWluZGV4ID0gdGhpcy5fZ2V0SW5kZXgoIGluZGV4ICk7CgkJdmFyIHRoYXQgPSB0aGlzLAoJCQl0YWIgPSB0aGlzLnRhYnMuZXEoIGluZGV4ICksCgkJCWFuY2hvciA9IHRhYi5maW5kKCAiLnVpLXRhYnMtYW5jaG9yIiApLAoJCQlwYW5lbCA9IHRoaXMuX2dldFBhbmVsRm9yVGFiKCB0YWIgKSwKCQkJZXZlbnREYXRhID0gewoJCQkJdGFiOiB0YWIsCgkJCQlwYW5lbDogcGFuZWwKCQkJfSwKCQkJY29tcGxldGUgPSBmdW5jdGlvbigganFYSFIsIHN0YXR1cyApIHsKCQkJCWlmICggc3RhdHVzID09PSAiYWJvcnQiICkgewoJCQkJCXRoYXQucGFuZWxzLnN0b3AoIGZhbHNlLCB0cnVlICk7CgkJCQl9CgoJCQkJdGhhdC5fcmVtb3ZlQ2xhc3MoIHRhYiwgInVpLXRhYnMtbG9hZGluZyIgKTsKCQkJCXBhbmVsLnJlbW92ZUF0dHIoICJhcmlhLWJ1c3kiICk7CgoJCQkJaWYgKCBqcVhIUiA9PT0gdGhhdC54aHIgKSB7CgkJCQkJZGVsZXRlIHRoYXQueGhyOwoJCQkJfQoJCQl9OwoKCQkvLyBOb3QgcmVtb3RlCgkJaWYgKCB0aGlzLl9pc0xvY2FsKCBhbmNob3JbIDAgXSApICkgewoJCQlyZXR1cm47CgkJfQoKCQl0aGlzLnhociA9ICQuYWpheCggdGhpcy5fYWpheFNldHRpbmdzKCBhbmNob3IsIGV2ZW50LCBldmVudERhdGEgKSApOwoKCQkvLyBTdXBwb3J0OiBqUXVlcnkgPDEuOAoJCS8vIGpRdWVyeSA8MS44IHJldHVybnMgZmFsc2UgaWYgdGhlIHJlcXVlc3QgaXMgY2FuY2VsZWQgaW4gYmVmb3JlU2VuZCwKCQkvLyBidXQgYXMgb2YgMS44LCAkLmFqYXgoKSBhbHdheXMgcmV0dXJucyBhIGpxWEhSIG9iamVjdC4KCQlpZiAoIHRoaXMueGhyICYmIHRoaXMueGhyLnN0YXR1c1RleHQgIT09ICJjYW5jZWxlZCIgKSB7CgkJCXRoaXMuX2FkZENsYXNzKCB0YWIsICJ1aS10YWJzLWxvYWRpbmciICk7CgkJCXBhbmVsLmF0dHIoICJhcmlhLWJ1c3kiLCAidHJ1ZSIgKTsKCgkJCXRoaXMueGhyCgkJCQkuZG9uZSggZnVuY3Rpb24oIHJlc3BvbnNlLCBzdGF0dXMsIGpxWEhSICkgewoKCQkJCQkvLyBzdXBwb3J0OiBqUXVlcnkgPDEuOAoJCQkJCS8vIGh0dHA6Ly9idWdzLmpxdWVyeS5jb20vdGlja2V0LzExNzc4CgkJCQkJc2V0VGltZW91dCggZnVuY3Rpb24oKSB7CgkJCQkJCXBhbmVsLmh0bWwoIHJlc3BvbnNlICk7CgkJCQkJCXRoYXQuX3RyaWdnZXIoICJsb2FkIiwgZXZlbnQsIGV2ZW50RGF0YSApOwoKCQkJCQkJY29tcGxldGUoIGpxWEhSLCBzdGF0dXMgKTsKCQkJCQl9LCAxICk7CgkJCQl9ICkKCQkJCS5mYWlsKCBmdW5jdGlvbigganFYSFIsIHN0YXR1cyApIHsKCgkJCQkJLy8gc3VwcG9ydDogalF1ZXJ5IDwxLjgKCQkJCQkvLyBodHRwOi8vYnVncy5qcXVlcnkuY29tL3RpY2tldC8xMTc3OAoJCQkJCXNldFRpbWVvdXQoIGZ1bmN0aW9uKCkgewoJCQkJCQljb21wbGV0ZSgganFYSFIsIHN0YXR1cyApOwoJCQkJCX0sIDEgKTsKCQkJCX0gKTsKCQl9Cgl9LAoKCV9hamF4U2V0dGluZ3M6IGZ1bmN0aW9uKCBhbmNob3IsIGV2ZW50LCBldmVudERhdGEgKSB7CgkJdmFyIHRoYXQgPSB0aGlzOwoJCXJldHVybiB7CgoJCQkvLyBTdXBwb3J0OiBJRSA8MTEgb25seQoJCQkvLyBTdHJpcCBhbnkgaGFzaCB0aGF0IGV4aXN0cyB0byBwcmV2ZW50IGVycm9ycyB3aXRoIHRoZSBBamF4IHJlcXVlc3QKCQkJdXJsOiBhbmNob3IuYXR0ciggImhyZWYiICkucmVwbGFjZSggLyMuKiQvLCAiIiApLAoJCQliZWZvcmVTZW5kOiBmdW5jdGlvbigganFYSFIsIHNldHRpbmdzICkgewoJCQkJcmV0dXJuIHRoYXQuX3RyaWdnZXIoICJiZWZvcmVMb2FkIiwgZXZlbnQsCgkJCQkJJC5leHRlbmQoIHsganFYSFI6IGpxWEhSLCBhamF4U2V0dGluZ3M6IHNldHRpbmdzIH0sIGV2ZW50RGF0YSApICk7CgkJCX0KCQl9OwoJfSwKCglfZ2V0UGFuZWxGb3JUYWI6IGZ1bmN0aW9uKCB0YWIgKSB7CgkJdmFyIGlkID0gJCggdGFiICkuYXR0ciggImFyaWEtY29udHJvbHMiICk7CgkJcmV0dXJuIHRoaXMuZWxlbWVudC5maW5kKCB0aGlzLl9zYW5pdGl6ZVNlbGVjdG9yKCAiIyIgKyBpZCApICk7Cgl9Cn0gKTsKCi8vIERFUFJFQ0FURUQKLy8gVE9ETzogU3dpdGNoIHJldHVybiBiYWNrIHRvIHdpZGdldCBkZWNsYXJhdGlvbiBhdCB0b3Agb2YgZmlsZSB3aGVuIHRoaXMgaXMgcmVtb3ZlZAppZiAoICQudWlCYWNrQ29tcGF0ICE9PSBmYWxzZSApIHsKCgkvLyBCYWNrY29tcGF0IGZvciB1aS10YWIgY2xhc3MgKG5vdyB1aS10YWJzLXRhYikKCSQud2lkZ2V0KCAidWkudGFicyIsICQudWkudGFicywgewoJCV9wcm9jZXNzVGFiczogZnVuY3Rpb24oKSB7CgkJCXRoaXMuX3N1cGVyQXBwbHkoIGFyZ3VtZW50cyApOwoJCQl0aGlzLl9hZGRDbGFzcyggdGhpcy50YWJzLCAidWktdGFiIiApOwoJCX0KCX0gKTsKfQoKdmFyIHdpZGdldHNUYWJzID0gJC51aS50YWJzOwoKCi8qIQogKiBqUXVlcnkgVUkgVG9vbHRpcCAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IFRvb2x0aXAKLy8+Pmdyb3VwOiBXaWRnZXRzCi8vPj5kZXNjcmlwdGlvbjogU2hvd3MgYWRkaXRpb25hbCBpbmZvcm1hdGlvbiBmb3IgYW55IGVsZW1lbnQgb24gaG92ZXIgb3IgZm9jdXMuCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS90b29sdGlwLwovLz4+ZGVtb3M6IGh0dHA6Ly9qcXVlcnl1aS5jb20vdG9vbHRpcC8KLy8+PmNzcy5zdHJ1Y3R1cmU6IC4uLy4uL3RoZW1lcy9iYXNlL2NvcmUuY3NzCi8vPj5jc3Muc3RydWN0dXJlOiAuLi8uLi90aGVtZXMvYmFzZS90b29sdGlwLmNzcwovLz4+Y3NzLnRoZW1lOiAuLi8uLi90aGVtZXMvYmFzZS90aGVtZS5jc3MKCgoKJC53aWRnZXQoICJ1aS50b29sdGlwIiwgewoJdmVyc2lvbjogIjEuMTIuMSIsCglvcHRpb25zOiB7CgkJY2xhc3NlczogewoJCQkidWktdG9vbHRpcCI6ICJ1aS1jb3JuZXItYWxsIHVpLXdpZGdldC1zaGFkb3ciCgkJfSwKCQljb250ZW50OiBmdW5jdGlvbigpIHsKCgkJCS8vIHN1cHBvcnQ6IElFPDksIE9wZXJhIGluIGpRdWVyeSA8MS43CgkJCS8vIC50ZXh0KCkgY2FuJ3QgYWNjZXB0IHVuZGVmaW5lZCwgc28gY29lcmNlIHRvIGEgc3RyaW5nCgkJCXZhciB0aXRsZSA9ICQoIHRoaXMgKS5hdHRyKCAidGl0bGUiICkgfHwgIiI7CgoJCQkvLyBFc2NhcGUgdGl0bGUsIHNpbmNlIHdlJ3JlIGdvaW5nIGZyb20gYW4gYXR0cmlidXRlIHRvIHJhdyBIVE1MCgkJCXJldHVybiAkKCAiPGE+IiApLnRleHQoIHRpdGxlICkuaHRtbCgpOwoJCX0sCgkJaGlkZTogdHJ1ZSwKCgkJLy8gRGlzYWJsZWQgZWxlbWVudHMgaGF2ZSBpbmNvbnNpc3RlbnQgYmVoYXZpb3IgYWNyb3NzIGJyb3dzZXJzICgjODY2MSkKCQlpdGVtczogIlt0aXRsZV06bm90KFtkaXNhYmxlZF0pIiwKCQlwb3NpdGlvbjogewoJCQlteTogImxlZnQgdG9wKzE1IiwKCQkJYXQ6ICJsZWZ0IGJvdHRvbSIsCgkJCWNvbGxpc2lvbjogImZsaXBmaXQgZmxpcCIKCQl9LAoJCXNob3c6IHRydWUsCgkJdHJhY2s6IGZhbHNlLAoKCQkvLyBDYWxsYmFja3MKCQljbG9zZTogbnVsbCwKCQlvcGVuOiBudWxsCgl9LAoKCV9hZGREZXNjcmliZWRCeTogZnVuY3Rpb24oIGVsZW0sIGlkICkgewoJCXZhciBkZXNjcmliZWRieSA9ICggZWxlbS5hdHRyKCAiYXJpYS1kZXNjcmliZWRieSIgKSB8fCAiIiApLnNwbGl0KCAvXHMrLyApOwoJCWRlc2NyaWJlZGJ5LnB1c2goIGlkICk7CgkJZWxlbQoJCQkuZGF0YSggInVpLXRvb2x0aXAtaWQiLCBpZCApCgkJCS5hdHRyKCAiYXJpYS1kZXNjcmliZWRieSIsICQudHJpbSggZGVzY3JpYmVkYnkuam9pbiggIiAiICkgKSApOwoJfSwKCglfcmVtb3ZlRGVzY3JpYmVkQnk6IGZ1bmN0aW9uKCBlbGVtICkgewoJCXZhciBpZCA9IGVsZW0uZGF0YSggInVpLXRvb2x0aXAtaWQiICksCgkJCWRlc2NyaWJlZGJ5ID0gKCBlbGVtLmF0dHIoICJhcmlhLWRlc2NyaWJlZGJ5IiApIHx8ICIiICkuc3BsaXQoIC9ccysvICksCgkJCWluZGV4ID0gJC5pbkFycmF5KCBpZCwgZGVzY3JpYmVkYnkgKTsKCgkJaWYgKCBpbmRleCAhPT0gLTEgKSB7CgkJCWRlc2NyaWJlZGJ5LnNwbGljZSggaW5kZXgsIDEgKTsKCQl9CgoJCWVsZW0ucmVtb3ZlRGF0YSggInVpLXRvb2x0aXAtaWQiICk7CgkJZGVzY3JpYmVkYnkgPSAkLnRyaW0oIGRlc2NyaWJlZGJ5LmpvaW4oICIgIiApICk7CgkJaWYgKCBkZXNjcmliZWRieSApIHsKCQkJZWxlbS5hdHRyKCAiYXJpYS1kZXNjcmliZWRieSIsIGRlc2NyaWJlZGJ5ICk7CgkJfSBlbHNlIHsKCQkJZWxlbS5yZW1vdmVBdHRyKCAiYXJpYS1kZXNjcmliZWRieSIgKTsKCQl9Cgl9LAoKCV9jcmVhdGU6IGZ1bmN0aW9uKCkgewoJCXRoaXMuX29uKCB7CgkJCW1vdXNlb3ZlcjogIm9wZW4iLAoJCQlmb2N1c2luOiAib3BlbiIKCQl9ICk7CgoJCS8vIElEcyBvZiBnZW5lcmF0ZWQgdG9vbHRpcHMsIG5lZWRlZCBmb3IgZGVzdHJveQoJCXRoaXMudG9vbHRpcHMgPSB7fTsKCgkJLy8gSURzIG9mIHBhcmVudCB0b29sdGlwcyB3aGVyZSB3ZSByZW1vdmVkIHRoZSB0aXRsZSBhdHRyaWJ1dGUKCQl0aGlzLnBhcmVudHMgPSB7fTsKCgkJLy8gQXBwZW5kIHRoZSBhcmlhLWxpdmUgcmVnaW9uIHNvIHRvb2x0aXBzIGFubm91bmNlIGNvcnJlY3RseQoJCXRoaXMubGl2ZVJlZ2lvbiA9ICQoICI8ZGl2PiIgKQoJCQkuYXR0ciggewoJCQkJcm9sZTogImxvZyIsCgkJCQkiYXJpYS1saXZlIjogImFzc2VydGl2ZSIsCgkJCQkiYXJpYS1yZWxldmFudCI6ICJhZGRpdGlvbnMiCgkJCX0gKQoJCQkuYXBwZW5kVG8oIHRoaXMuZG9jdW1lbnRbIDAgXS5ib2R5ICk7CgkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMubGl2ZVJlZ2lvbiwgbnVsbCwgInVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSIgKTsKCgkJdGhpcy5kaXNhYmxlZFRpdGxlcyA9ICQoIFtdICk7Cgl9LAoKCV9zZXRPcHRpb246IGZ1bmN0aW9uKCBrZXksIHZhbHVlICkgewoJCXZhciB0aGF0ID0gdGhpczsKCgkJdGhpcy5fc3VwZXIoIGtleSwgdmFsdWUgKTsKCgkJaWYgKCBrZXkgPT09ICJjb250ZW50IiApIHsKCQkJJC5lYWNoKCB0aGlzLnRvb2x0aXBzLCBmdW5jdGlvbiggaWQsIHRvb2x0aXBEYXRhICkgewoJCQkJdGhhdC5fdXBkYXRlQ29udGVudCggdG9vbHRpcERhdGEuZWxlbWVudCApOwoJCQl9ICk7CgkJfQoJfSwKCglfc2V0T3B0aW9uRGlzYWJsZWQ6IGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQl0aGlzWyB2YWx1ZSA/ICJfZGlzYWJsZSIgOiAiX2VuYWJsZSIgXSgpOwoJfSwKCglfZGlzYWJsZTogZnVuY3Rpb24oKSB7CgkJdmFyIHRoYXQgPSB0aGlzOwoKCQkvLyBDbG9zZSBvcGVuIHRvb2x0aXBzCgkJJC5lYWNoKCB0aGlzLnRvb2x0aXBzLCBmdW5jdGlvbiggaWQsIHRvb2x0aXBEYXRhICkgewoJCQl2YXIgZXZlbnQgPSAkLkV2ZW50KCAiYmx1ciIgKTsKCQkJZXZlbnQudGFyZ2V0ID0gZXZlbnQuY3VycmVudFRhcmdldCA9IHRvb2x0aXBEYXRhLmVsZW1lbnRbIDAgXTsKCQkJdGhhdC5jbG9zZSggZXZlbnQsIHRydWUgKTsKCQl9ICk7CgoJCS8vIFJlbW92ZSB0aXRsZSBhdHRyaWJ1dGVzIHRvIHByZXZlbnQgbmF0aXZlIHRvb2x0aXBzCgkJdGhpcy5kaXNhYmxlZFRpdGxlcyA9IHRoaXMuZGlzYWJsZWRUaXRsZXMuYWRkKAoJCQl0aGlzLmVsZW1lbnQuZmluZCggdGhpcy5vcHRpb25zLml0ZW1zICkuYWRkQmFjaygpCgkJCQkuZmlsdGVyKCBmdW5jdGlvbigpIHsKCQkJCQl2YXIgZWxlbWVudCA9ICQoIHRoaXMgKTsKCQkJCQlpZiAoIGVsZW1lbnQuaXMoICJbdGl0bGVdIiApICkgewoJCQkJCQlyZXR1cm4gZWxlbWVudAoJCQkJCQkJLmRhdGEoICJ1aS10b29sdGlwLXRpdGxlIiwgZWxlbWVudC5hdHRyKCAidGl0bGUiICkgKQoJCQkJCQkJLnJlbW92ZUF0dHIoICJ0aXRsZSIgKTsKCQkJCQl9CgkJCQl9ICkKCQkpOwoJfSwKCglfZW5hYmxlOiBmdW5jdGlvbigpIHsKCgkJLy8gcmVzdG9yZSB0aXRsZSBhdHRyaWJ1dGVzCgkJdGhpcy5kaXNhYmxlZFRpdGxlcy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJdmFyIGVsZW1lbnQgPSAkKCB0aGlzICk7CgkJCWlmICggZWxlbWVudC5kYXRhKCAidWktdG9vbHRpcC10aXRsZSIgKSApIHsKCQkJCWVsZW1lbnQuYXR0ciggInRpdGxlIiwgZWxlbWVudC5kYXRhKCAidWktdG9vbHRpcC10aXRsZSIgKSApOwoJCQl9CgkJfSApOwoJCXRoaXMuZGlzYWJsZWRUaXRsZXMgPSAkKCBbXSApOwoJfSwKCglvcGVuOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdmFyIHRoYXQgPSB0aGlzLAoJCQl0YXJnZXQgPSAkKCBldmVudCA/IGV2ZW50LnRhcmdldCA6IHRoaXMuZWxlbWVudCApCgoJCQkJLy8gd2UgbmVlZCBjbG9zZXN0IGhlcmUgZHVlIHRvIG1vdXNlb3ZlciBidWJibGluZywKCQkJCS8vIGJ1dCBhbHdheXMgcG9pbnRpbmcgYXQgdGhlIHNhbWUgZXZlbnQgdGFyZ2V0CgkJCQkuY2xvc2VzdCggdGhpcy5vcHRpb25zLml0ZW1zICk7CgoJCS8vIE5vIGVsZW1lbnQgdG8gc2hvdyBhIHRvb2x0aXAgZm9yIG9yIHRoZSB0b29sdGlwIGlzIGFscmVhZHkgb3BlbgoJCWlmICggIXRhcmdldC5sZW5ndGggfHwgdGFyZ2V0LmRhdGEoICJ1aS10b29sdGlwLWlkIiApICkgewoJCQlyZXR1cm47CgkJfQoKCQlpZiAoIHRhcmdldC5hdHRyKCAidGl0bGUiICkgKSB7CgkJCXRhcmdldC5kYXRhKCAidWktdG9vbHRpcC10aXRsZSIsIHRhcmdldC5hdHRyKCAidGl0bGUiICkgKTsKCQl9CgoJCXRhcmdldC5kYXRhKCAidWktdG9vbHRpcC1vcGVuIiwgdHJ1ZSApOwoKCQkvLyBLaWxsIHBhcmVudCB0b29sdGlwcywgY3VzdG9tIG9yIG5hdGl2ZSwgZm9yIGhvdmVyCgkJaWYgKCBldmVudCAmJiBldmVudC50eXBlID09PSAibW91c2VvdmVyIiApIHsKCQkJdGFyZ2V0LnBhcmVudHMoKS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCXZhciBwYXJlbnQgPSAkKCB0aGlzICksCgkJCQkJYmx1ckV2ZW50OwoJCQkJaWYgKCBwYXJlbnQuZGF0YSggInVpLXRvb2x0aXAtb3BlbiIgKSApIHsKCQkJCQlibHVyRXZlbnQgPSAkLkV2ZW50KCAiYmx1ciIgKTsKCQkJCQlibHVyRXZlbnQudGFyZ2V0ID0gYmx1ckV2ZW50LmN1cnJlbnRUYXJnZXQgPSB0aGlzOwoJCQkJCXRoYXQuY2xvc2UoIGJsdXJFdmVudCwgdHJ1ZSApOwoJCQkJfQoJCQkJaWYgKCBwYXJlbnQuYXR0ciggInRpdGxlIiApICkgewoJCQkJCXBhcmVudC51bmlxdWVJZCgpOwoJCQkJCXRoYXQucGFyZW50c1sgdGhpcy5pZCBdID0gewoJCQkJCQllbGVtZW50OiB0aGlzLAoJCQkJCQl0aXRsZTogcGFyZW50LmF0dHIoICJ0aXRsZSIgKQoJCQkJCX07CgkJCQkJcGFyZW50LmF0dHIoICJ0aXRsZSIsICIiICk7CgkJCQl9CgkJCX0gKTsKCQl9CgoJCXRoaXMuX3JlZ2lzdGVyQ2xvc2VIYW5kbGVycyggZXZlbnQsIHRhcmdldCApOwoJCXRoaXMuX3VwZGF0ZUNvbnRlbnQoIHRhcmdldCwgZXZlbnQgKTsKCX0sCgoJX3VwZGF0ZUNvbnRlbnQ6IGZ1bmN0aW9uKCB0YXJnZXQsIGV2ZW50ICkgewoJCXZhciBjb250ZW50LAoJCQljb250ZW50T3B0aW9uID0gdGhpcy5vcHRpb25zLmNvbnRlbnQsCgkJCXRoYXQgPSB0aGlzLAoJCQlldmVudFR5cGUgPSBldmVudCA/IGV2ZW50LnR5cGUgOiBudWxsOwoKCQlpZiAoIHR5cGVvZiBjb250ZW50T3B0aW9uID09PSAic3RyaW5nIiB8fCBjb250ZW50T3B0aW9uLm5vZGVUeXBlIHx8CgkJCQljb250ZW50T3B0aW9uLmpxdWVyeSApIHsKCQkJcmV0dXJuIHRoaXMuX29wZW4oIGV2ZW50LCB0YXJnZXQsIGNvbnRlbnRPcHRpb24gKTsKCQl9CgoJCWNvbnRlbnQgPSBjb250ZW50T3B0aW9uLmNhbGwoIHRhcmdldFsgMCBdLCBmdW5jdGlvbiggcmVzcG9uc2UgKSB7CgoJCQkvLyBJRSBtYXkgaW5zdGFudGx5IHNlcnZlIGEgY2FjaGVkIHJlc3BvbnNlIGZvciBhamF4IHJlcXVlc3RzCgkJCS8vIGRlbGF5IHRoaXMgY2FsbCB0byBfb3BlbiBzbyB0aGUgb3RoZXIgY2FsbCB0byBfb3BlbiBydW5zIGZpcnN0CgkJCXRoYXQuX2RlbGF5KCBmdW5jdGlvbigpIHsKCgkJCQkvLyBJZ25vcmUgYXN5bmMgcmVzcG9uc2UgaWYgdG9vbHRpcCB3YXMgY2xvc2VkIGFscmVhZHkKCQkJCWlmICggIXRhcmdldC5kYXRhKCAidWktdG9vbHRpcC1vcGVuIiApICkgewoJCQkJCXJldHVybjsKCQkJCX0KCgkJCQkvLyBKUXVlcnkgY3JlYXRlcyBhIHNwZWNpYWwgZXZlbnQgZm9yIGZvY3VzaW4gd2hlbiBpdCBkb2Vzbid0CgkJCQkvLyBleGlzdCBuYXRpdmVseS4gVG8gaW1wcm92ZSBwZXJmb3JtYW5jZSwgdGhlIG5hdGl2ZSBldmVudAoJCQkJLy8gb2JqZWN0IGlzIHJldXNlZCBhbmQgdGhlIHR5cGUgaXMgY2hhbmdlZC4gVGhlcmVmb3JlLCB3ZSBjYW4ndAoJCQkJLy8gcmVseSBvbiB0aGUgdHlwZSBiZWluZyBjb3JyZWN0IGFmdGVyIHRoZSBldmVudCBmaW5pc2hlZAoJCQkJLy8gYnViYmxpbmcsIHNvIHdlIHNldCBpdCBiYWNrIHRvIHRoZSBwcmV2aW91cyB2YWx1ZS4gKCM4NzQwKQoJCQkJaWYgKCBldmVudCApIHsKCQkJCQlldmVudC50eXBlID0gZXZlbnRUeXBlOwoJCQkJfQoJCQkJdGhpcy5fb3BlbiggZXZlbnQsIHRhcmdldCwgcmVzcG9uc2UgKTsKCQkJfSApOwoJCX0gKTsKCQlpZiAoIGNvbnRlbnQgKSB7CgkJCXRoaXMuX29wZW4oIGV2ZW50LCB0YXJnZXQsIGNvbnRlbnQgKTsKCQl9Cgl9LAoKCV9vcGVuOiBmdW5jdGlvbiggZXZlbnQsIHRhcmdldCwgY29udGVudCApIHsKCQl2YXIgdG9vbHRpcERhdGEsIHRvb2x0aXAsIGRlbGF5ZWRTaG93LCBhMTF5Q29udGVudCwKCQkJcG9zaXRpb25PcHRpb24gPSAkLmV4dGVuZCgge30sIHRoaXMub3B0aW9ucy5wb3NpdGlvbiApOwoKCQlpZiAoICFjb250ZW50ICkgewoJCQlyZXR1cm47CgkJfQoKCQkvLyBDb250ZW50IGNhbiBiZSB1cGRhdGVkIG11bHRpcGxlIHRpbWVzLiBJZiB0aGUgdG9vbHRpcCBhbHJlYWR5CgkJLy8gZXhpc3RzLCB0aGVuIGp1c3QgdXBkYXRlIHRoZSBjb250ZW50IGFuZCBiYWlsLgoJCXRvb2x0aXBEYXRhID0gdGhpcy5fZmluZCggdGFyZ2V0ICk7CgkJaWYgKCB0b29sdGlwRGF0YSApIHsKCQkJdG9vbHRpcERhdGEudG9vbHRpcC5maW5kKCAiLnVpLXRvb2x0aXAtY29udGVudCIgKS5odG1sKCBjb250ZW50ICk7CgkJCXJldHVybjsKCQl9CgoJCS8vIElmIHdlIGhhdmUgYSB0aXRsZSwgY2xlYXIgaXQgdG8gcHJldmVudCB0aGUgbmF0aXZlIHRvb2x0aXAKCQkvLyB3ZSBoYXZlIHRvIGNoZWNrIGZpcnN0IHRvIGF2b2lkIGRlZmluaW5nIGEgdGl0bGUgaWYgbm9uZSBleGlzdHMKCQkvLyAod2UgZG9uJ3Qgd2FudCB0byBjYXVzZSBhbiBlbGVtZW50IHRvIHN0YXJ0IG1hdGNoaW5nIFt0aXRsZV0pCgkJLy8KCQkvLyBXZSB1c2UgcmVtb3ZlQXR0ciBvbmx5IGZvciBrZXkgZXZlbnRzLCB0byBhbGxvdyBJRSB0byBleHBvcnQgdGhlIGNvcnJlY3QKCQkvLyBhY2Nlc3NpYmxlIGF0dHJpYnV0ZXMuIEZvciBtb3VzZSBldmVudHMsIHNldCB0byBlbXB0eSBzdHJpbmcgdG8gYXZvaWQKCQkvLyBuYXRpdmUgdG9vbHRpcCBzaG93aW5nIHVwIChoYXBwZW5zIG9ubHkgd2hlbiByZW1vdmluZyBpbnNpZGUgbW91c2VvdmVyKS4KCQlpZiAoIHRhcmdldC5pcyggIlt0aXRsZV0iICkgKSB7CgkJCWlmICggZXZlbnQgJiYgZXZlbnQudHlwZSA9PT0gIm1vdXNlb3ZlciIgKSB7CgkJCQl0YXJnZXQuYXR0ciggInRpdGxlIiwgIiIgKTsKCQkJfSBlbHNlIHsKCQkJCXRhcmdldC5yZW1vdmVBdHRyKCAidGl0bGUiICk7CgkJCX0KCQl9CgoJCXRvb2x0aXBEYXRhID0gdGhpcy5fdG9vbHRpcCggdGFyZ2V0ICk7CgkJdG9vbHRpcCA9IHRvb2x0aXBEYXRhLnRvb2x0aXA7CgkJdGhpcy5fYWRkRGVzY3JpYmVkQnkoIHRhcmdldCwgdG9vbHRpcC5hdHRyKCAiaWQiICkgKTsKCQl0b29sdGlwLmZpbmQoICIudWktdG9vbHRpcC1jb250ZW50IiApLmh0bWwoIGNvbnRlbnQgKTsKCgkJLy8gU3VwcG9ydDogVm9pY2VvdmVyIG9uIE9TIFgsIEpBV1Mgb24gSUUgPD0gOQoJCS8vIEpBV1MgYW5ub3VuY2VzIGRlbGV0aW9ucyBldmVuIHdoZW4gYXJpYS1yZWxldmFudD0iYWRkaXRpb25zIgoJCS8vIFZvaWNlb3ZlciB3aWxsIHNvbWV0aW1lcyByZS1yZWFkIHRoZSBlbnRpcmUgbG9nIHJlZ2lvbidzIGNvbnRlbnRzIGZyb20gdGhlIGJlZ2lubmluZwoJCXRoaXMubGl2ZVJlZ2lvbi5jaGlsZHJlbigpLmhpZGUoKTsKCQlhMTF5Q29udGVudCA9ICQoICI8ZGl2PiIgKS5odG1sKCB0b29sdGlwLmZpbmQoICIudWktdG9vbHRpcC1jb250ZW50IiApLmh0bWwoKSApOwoJCWExMXlDb250ZW50LnJlbW92ZUF0dHIoICJuYW1lIiApLmZpbmQoICJbbmFtZV0iICkucmVtb3ZlQXR0ciggIm5hbWUiICk7CgkJYTExeUNvbnRlbnQucmVtb3ZlQXR0ciggImlkIiApLmZpbmQoICJbaWRdIiApLnJlbW92ZUF0dHIoICJpZCIgKTsKCQlhMTF5Q29udGVudC5hcHBlbmRUbyggdGhpcy5saXZlUmVnaW9uICk7CgoJCWZ1bmN0aW9uIHBvc2l0aW9uKCBldmVudCApIHsKCQkJcG9zaXRpb25PcHRpb24ub2YgPSBldmVudDsKCQkJaWYgKCB0b29sdGlwLmlzKCAiOmhpZGRlbiIgKSApIHsKCQkJCXJldHVybjsKCQkJfQoJCQl0b29sdGlwLnBvc2l0aW9uKCBwb3NpdGlvbk9wdGlvbiApOwoJCX0KCQlpZiAoIHRoaXMub3B0aW9ucy50cmFjayAmJiBldmVudCAmJiAvXm1vdXNlLy50ZXN0KCBldmVudC50eXBlICkgKSB7CgkJCXRoaXMuX29uKCB0aGlzLmRvY3VtZW50LCB7CgkJCQltb3VzZW1vdmU6IHBvc2l0aW9uCgkJCX0gKTsKCgkJCS8vIHRyaWdnZXIgb25jZSB0byBvdmVycmlkZSBlbGVtZW50LXJlbGF0aXZlIHBvc2l0aW9uaW5nCgkJCXBvc2l0aW9uKCBldmVudCApOwoJCX0gZWxzZSB7CgkJCXRvb2x0aXAucG9zaXRpb24oICQuZXh0ZW5kKCB7CgkJCQlvZjogdGFyZ2V0CgkJCX0sIHRoaXMub3B0aW9ucy5wb3NpdGlvbiApICk7CgkJfQoKCQl0b29sdGlwLmhpZGUoKTsKCgkJdGhpcy5fc2hvdyggdG9vbHRpcCwgdGhpcy5vcHRpb25zLnNob3cgKTsKCgkJLy8gSGFuZGxlIHRyYWNraW5nIHRvb2x0aXBzIHRoYXQgYXJlIHNob3duIHdpdGggYSBkZWxheSAoIzg2NDQpLiBBcyBzb29uCgkJLy8gYXMgdGhlIHRvb2x0aXAgaXMgdmlzaWJsZSwgcG9zaXRpb24gdGhlIHRvb2x0aXAgdXNpbmcgdGhlIG1vc3QgcmVjZW50CgkJLy8gZXZlbnQuCgkJLy8gQWRkcyB0aGUgY2hlY2sgdG8gYWRkIHRoZSB0aW1lcnMgb25seSB3aGVuIGJvdGggZGVsYXkgYW5kIHRyYWNrIG9wdGlvbnMgYXJlIHNldCAoIzE0NjgyKQoJCWlmICggdGhpcy5vcHRpb25zLnRyYWNrICYmIHRoaXMub3B0aW9ucy5zaG93ICYmIHRoaXMub3B0aW9ucy5zaG93LmRlbGF5ICkgewoJCQlkZWxheWVkU2hvdyA9IHRoaXMuZGVsYXllZFNob3cgPSBzZXRJbnRlcnZhbCggZnVuY3Rpb24oKSB7CgkJCQlpZiAoIHRvb2x0aXAuaXMoICI6dmlzaWJsZSIgKSApIHsKCQkJCQlwb3NpdGlvbiggcG9zaXRpb25PcHRpb24ub2YgKTsKCQkJCQljbGVhckludGVydmFsKCBkZWxheWVkU2hvdyApOwoJCQkJfQoJCQl9LCAkLmZ4LmludGVydmFsICk7CgkJfQoKCQl0aGlzLl90cmlnZ2VyKCAib3BlbiIsIGV2ZW50LCB7IHRvb2x0aXA6IHRvb2x0aXAgfSApOwoJfSwKCglfcmVnaXN0ZXJDbG9zZUhhbmRsZXJzOiBmdW5jdGlvbiggZXZlbnQsIHRhcmdldCApIHsKCQl2YXIgZXZlbnRzID0gewoJCQlrZXl1cDogZnVuY3Rpb24oIGV2ZW50ICkgewoJCQkJaWYgKCBldmVudC5rZXlDb2RlID09PSAkLnVpLmtleUNvZGUuRVNDQVBFICkgewoJCQkJCXZhciBmYWtlRXZlbnQgPSAkLkV2ZW50KCBldmVudCApOwoJCQkJCWZha2VFdmVudC5jdXJyZW50VGFyZ2V0ID0gdGFyZ2V0WyAwIF07CgkJCQkJdGhpcy5jbG9zZSggZmFrZUV2ZW50LCB0cnVlICk7CgkJCQl9CgkJCX0KCQl9OwoKCQkvLyBPbmx5IGJpbmQgcmVtb3ZlIGhhbmRsZXIgZm9yIGRlbGVnYXRlZCB0YXJnZXRzLiBOb24tZGVsZWdhdGVkCgkJLy8gdG9vbHRpcHMgd2lsbCBoYW5kbGUgdGhpcyBpbiBkZXN0cm95LgoJCWlmICggdGFyZ2V0WyAwIF0gIT09IHRoaXMuZWxlbWVudFsgMCBdICkgewoJCQlldmVudHMucmVtb3ZlID0gZnVuY3Rpb24oKSB7CgkJCQl0aGlzLl9yZW1vdmVUb29sdGlwKCB0aGlzLl9maW5kKCB0YXJnZXQgKS50b29sdGlwICk7CgkJCX07CgkJfQoKCQlpZiAoICFldmVudCB8fCBldmVudC50eXBlID09PSAibW91c2VvdmVyIiApIHsKCQkJZXZlbnRzLm1vdXNlbGVhdmUgPSAiY2xvc2UiOwoJCX0KCQlpZiAoICFldmVudCB8fCBldmVudC50eXBlID09PSAiZm9jdXNpbiIgKSB7CgkJCWV2ZW50cy5mb2N1c291dCA9ICJjbG9zZSI7CgkJfQoJCXRoaXMuX29uKCB0cnVlLCB0YXJnZXQsIGV2ZW50cyApOwoJfSwKCgljbG9zZTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXZhciB0b29sdGlwLAoJCQl0aGF0ID0gdGhpcywKCQkJdGFyZ2V0ID0gJCggZXZlbnQgPyBldmVudC5jdXJyZW50VGFyZ2V0IDogdGhpcy5lbGVtZW50ICksCgkJCXRvb2x0aXBEYXRhID0gdGhpcy5fZmluZCggdGFyZ2V0ICk7CgoJCS8vIFRoZSB0b29sdGlwIG1heSBhbHJlYWR5IGJlIGNsb3NlZAoJCWlmICggIXRvb2x0aXBEYXRhICkgewoKCQkJLy8gV2Ugc2V0IHVpLXRvb2x0aXAtb3BlbiBpbW1lZGlhdGVseSB1cG9uIG9wZW4gKGluIG9wZW4oKSksIGJ1dCBvbmx5IHNldCB0aGUKCQkJLy8gYWRkaXRpb25hbCBkYXRhIG9uY2UgdGhlcmUncyBhY3R1YWxseSBjb250ZW50IHRvIHNob3cgKGluIF9vcGVuKCkpLiBTbyBldmVuIGlmIHRoZQoJCQkvLyB0b29sdGlwIGRvZXNuJ3QgaGF2ZSBmdWxsIGRhdGEsIHdlIGFsd2F5cyByZW1vdmUgdWktdG9vbHRpcC1vcGVuIGluIGNhc2Ugd2UncmUgaW4KCQkJLy8gdGhlIHBlcmlvZCBiZXR3ZWVuIG9wZW4oKSBhbmQgX29wZW4oKS4KCQkJdGFyZ2V0LnJlbW92ZURhdGEoICJ1aS10b29sdGlwLW9wZW4iICk7CgkJCXJldHVybjsKCQl9CgoJCXRvb2x0aXAgPSB0b29sdGlwRGF0YS50b29sdGlwOwoKCQkvLyBEaXNhYmxpbmcgY2xvc2VzIHRoZSB0b29sdGlwLCBzbyB3ZSBuZWVkIHRvIHRyYWNrIHdoZW4gd2UncmUgY2xvc2luZwoJCS8vIHRvIGF2b2lkIGFuIGluZmluaXRlIGxvb3AgaW4gY2FzZSB0aGUgdG9vbHRpcCBiZWNvbWVzIGRpc2FibGVkIG9uIGNsb3NlCgkJaWYgKCB0b29sdGlwRGF0YS5jbG9zaW5nICkgewoJCQlyZXR1cm47CgkJfQoKCQkvLyBDbGVhciB0aGUgaW50ZXJ2YWwgZm9yIGRlbGF5ZWQgdHJhY2tpbmcgdG9vbHRpcHMKCQljbGVhckludGVydmFsKCB0aGlzLmRlbGF5ZWRTaG93ICk7CgoJCS8vIE9ubHkgc2V0IHRpdGxlIGlmIHdlIGhhZCBvbmUgYmVmb3JlIChzZWUgY29tbWVudCBpbiBfb3BlbigpKQoJCS8vIElmIHRoZSB0aXRsZSBhdHRyaWJ1dGUgaGFzIGNoYW5nZWQgc2luY2Ugb3BlbigpLCBkb24ndCByZXN0b3JlCgkJaWYgKCB0YXJnZXQuZGF0YSggInVpLXRvb2x0aXAtdGl0bGUiICkgJiYgIXRhcmdldC5hdHRyKCAidGl0bGUiICkgKSB7CgkJCXRhcmdldC5hdHRyKCAidGl0bGUiLCB0YXJnZXQuZGF0YSggInVpLXRvb2x0aXAtdGl0bGUiICkgKTsKCQl9CgoJCXRoaXMuX3JlbW92ZURlc2NyaWJlZEJ5KCB0YXJnZXQgKTsKCgkJdG9vbHRpcERhdGEuaGlkaW5nID0gdHJ1ZTsKCQl0b29sdGlwLnN0b3AoIHRydWUgKTsKCQl0aGlzLl9oaWRlKCB0b29sdGlwLCB0aGlzLm9wdGlvbnMuaGlkZSwgZnVuY3Rpb24oKSB7CgkJCXRoYXQuX3JlbW92ZVRvb2x0aXAoICQoIHRoaXMgKSApOwoJCX0gKTsKCgkJdGFyZ2V0LnJlbW92ZURhdGEoICJ1aS10b29sdGlwLW9wZW4iICk7CgkJdGhpcy5fb2ZmKCB0YXJnZXQsICJtb3VzZWxlYXZlIGZvY3Vzb3V0IGtleXVwIiApOwoKCQkvLyBSZW1vdmUgJ3JlbW92ZScgYmluZGluZyBvbmx5IG9uIGRlbGVnYXRlZCB0YXJnZXRzCgkJaWYgKCB0YXJnZXRbIDAgXSAhPT0gdGhpcy5lbGVtZW50WyAwIF0gKSB7CgkJCXRoaXMuX29mZiggdGFyZ2V0LCAicmVtb3ZlIiApOwoJCX0KCQl0aGlzLl9vZmYoIHRoaXMuZG9jdW1lbnQsICJtb3VzZW1vdmUiICk7CgoJCWlmICggZXZlbnQgJiYgZXZlbnQudHlwZSA9PT0gIm1vdXNlbGVhdmUiICkgewoJCQkkLmVhY2goIHRoaXMucGFyZW50cywgZnVuY3Rpb24oIGlkLCBwYXJlbnQgKSB7CgkJCQkkKCBwYXJlbnQuZWxlbWVudCApLmF0dHIoICJ0aXRsZSIsIHBhcmVudC50aXRsZSApOwoJCQkJZGVsZXRlIHRoYXQucGFyZW50c1sgaWQgXTsKCQkJfSApOwoJCX0KCgkJdG9vbHRpcERhdGEuY2xvc2luZyA9IHRydWU7CgkJdGhpcy5fdHJpZ2dlciggImNsb3NlIiwgZXZlbnQsIHsgdG9vbHRpcDogdG9vbHRpcCB9ICk7CgkJaWYgKCAhdG9vbHRpcERhdGEuaGlkaW5nICkgewoJCQl0b29sdGlwRGF0YS5jbG9zaW5nID0gZmFsc2U7CgkJfQoJfSwKCglfdG9vbHRpcDogZnVuY3Rpb24oIGVsZW1lbnQgKSB7CgkJdmFyIHRvb2x0aXAgPSAkKCAiPGRpdj4iICkuYXR0ciggInJvbGUiLCAidG9vbHRpcCIgKSwKCQkJY29udGVudCA9ICQoICI8ZGl2PiIgKS5hcHBlbmRUbyggdG9vbHRpcCApLAoJCQlpZCA9IHRvb2x0aXAudW5pcXVlSWQoKS5hdHRyKCAiaWQiICk7CgoJCXRoaXMuX2FkZENsYXNzKCBjb250ZW50LCAidWktdG9vbHRpcC1jb250ZW50IiApOwoJCXRoaXMuX2FkZENsYXNzKCB0b29sdGlwLCAidWktdG9vbHRpcCIsICJ1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQiICk7CgoJCXRvb2x0aXAuYXBwZW5kVG8oIHRoaXMuX2FwcGVuZFRvKCBlbGVtZW50ICkgKTsKCgkJcmV0dXJuIHRoaXMudG9vbHRpcHNbIGlkIF0gPSB7CgkJCWVsZW1lbnQ6IGVsZW1lbnQsCgkJCXRvb2x0aXA6IHRvb2x0aXAKCQl9OwoJfSwKCglfZmluZDogZnVuY3Rpb24oIHRhcmdldCApIHsKCQl2YXIgaWQgPSB0YXJnZXQuZGF0YSggInVpLXRvb2x0aXAtaWQiICk7CgkJcmV0dXJuIGlkID8gdGhpcy50b29sdGlwc1sgaWQgXSA6IG51bGw7Cgl9LAoKCV9yZW1vdmVUb29sdGlwOiBmdW5jdGlvbiggdG9vbHRpcCApIHsKCQl0b29sdGlwLnJlbW92ZSgpOwoJCWRlbGV0ZSB0aGlzLnRvb2x0aXBzWyB0b29sdGlwLmF0dHIoICJpZCIgKSBdOwoJfSwKCglfYXBwZW5kVG86IGZ1bmN0aW9uKCB0YXJnZXQgKSB7CgkJdmFyIGVsZW1lbnQgPSB0YXJnZXQuY2xvc2VzdCggIi51aS1mcm9udCwgZGlhbG9nIiApOwoKCQlpZiAoICFlbGVtZW50Lmxlbmd0aCApIHsKCQkJZWxlbWVudCA9IHRoaXMuZG9jdW1lbnRbIDAgXS5ib2R5OwoJCX0KCgkJcmV0dXJuIGVsZW1lbnQ7Cgl9LAoKCV9kZXN0cm95OiBmdW5jdGlvbigpIHsKCQl2YXIgdGhhdCA9IHRoaXM7CgoJCS8vIENsb3NlIG9wZW4gdG9vbHRpcHMKCQkkLmVhY2goIHRoaXMudG9vbHRpcHMsIGZ1bmN0aW9uKCBpZCwgdG9vbHRpcERhdGEgKSB7CgoJCQkvLyBEZWxlZ2F0ZSB0byBjbG9zZSBtZXRob2QgdG8gaGFuZGxlIGNvbW1vbiBjbGVhbnVwCgkJCXZhciBldmVudCA9ICQuRXZlbnQoICJibHVyIiApLAoJCQkJZWxlbWVudCA9IHRvb2x0aXBEYXRhLmVsZW1lbnQ7CgkJCWV2ZW50LnRhcmdldCA9IGV2ZW50LmN1cnJlbnRUYXJnZXQgPSBlbGVtZW50WyAwIF07CgkJCXRoYXQuY2xvc2UoIGV2ZW50LCB0cnVlICk7CgoJCQkvLyBSZW1vdmUgaW1tZWRpYXRlbHk7IGRlc3Ryb3lpbmcgYW4gb3BlbiB0b29sdGlwIGRvZXNuJ3QgdXNlIHRoZQoJCQkvLyBoaWRlIGFuaW1hdGlvbgoJCQkkKCAiIyIgKyBpZCApLnJlbW92ZSgpOwoKCQkJLy8gUmVzdG9yZSB0aGUgdGl0bGUKCQkJaWYgKCBlbGVtZW50LmRhdGEoICJ1aS10b29sdGlwLXRpdGxlIiApICkgewoKCQkJCS8vIElmIHRoZSB0aXRsZSBhdHRyaWJ1dGUgaGFzIGNoYW5nZWQgc2luY2Ugb3BlbigpLCBkb24ndCByZXN0b3JlCgkJCQlpZiAoICFlbGVtZW50LmF0dHIoICJ0aXRsZSIgKSApIHsKCQkJCQllbGVtZW50LmF0dHIoICJ0aXRsZSIsIGVsZW1lbnQuZGF0YSggInVpLXRvb2x0aXAtdGl0bGUiICkgKTsKCQkJCX0KCQkJCWVsZW1lbnQucmVtb3ZlRGF0YSggInVpLXRvb2x0aXAtdGl0bGUiICk7CgkJCX0KCQl9ICk7CgkJdGhpcy5saXZlUmVnaW9uLnJlbW92ZSgpOwoJfQp9ICk7CgovLyBERVBSRUNBVEVECi8vIFRPRE86IFN3aXRjaCByZXR1cm4gYmFjayB0byB3aWRnZXQgZGVjbGFyYXRpb24gYXQgdG9wIG9mIGZpbGUgd2hlbiB0aGlzIGlzIHJlbW92ZWQKaWYgKCAkLnVpQmFja0NvbXBhdCAhPT0gZmFsc2UgKSB7CgoJLy8gQmFja2NvbXBhdCBmb3IgdG9vbHRpcENsYXNzIG9wdGlvbgoJJC53aWRnZXQoICJ1aS50b29sdGlwIiwgJC51aS50b29sdGlwLCB7CgkJb3B0aW9uczogewoJCQl0b29sdGlwQ2xhc3M6IG51bGwKCQl9LAoJCV90b29sdGlwOiBmdW5jdGlvbigpIHsKCQkJdmFyIHRvb2x0aXBEYXRhID0gdGhpcy5fc3VwZXJBcHBseSggYXJndW1lbnRzICk7CgkJCWlmICggdGhpcy5vcHRpb25zLnRvb2x0aXBDbGFzcyApIHsKCQkJCXRvb2x0aXBEYXRhLnRvb2x0aXAuYWRkQ2xhc3MoIHRoaXMub3B0aW9ucy50b29sdGlwQ2xhc3MgKTsKCQkJfQoJCQlyZXR1cm4gdG9vbHRpcERhdGE7CgkJfQoJfSApOwp9Cgp2YXIgd2lkZ2V0c1Rvb2x0aXAgPSAkLnVpLnRvb2x0aXA7CgoKLyohCiAqIGpRdWVyeSBVSSBFZmZlY3RzIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogRWZmZWN0cyBDb3JlCi8vPj5ncm91cDogRWZmZWN0cwovLyBqc2NzOmRpc2FibGUgbWF4aW11bUxpbmVMZW5ndGgKLy8+PmRlc2NyaXB0aW9uOiBFeHRlbmRzIHRoZSBpbnRlcm5hbCBqUXVlcnkgZWZmZWN0cy4gSW5jbHVkZXMgbW9ycGhpbmcgYW5kIGVhc2luZy4gUmVxdWlyZWQgYnkgYWxsIG90aGVyIGVmZmVjdHMuCi8vIGpzY3M6ZW5hYmxlIG1heGltdW1MaW5lTGVuZ3RoCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9jYXRlZ29yeS9lZmZlY3RzLWNvcmUvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9lZmZlY3QvCgoKCnZhciBkYXRhU3BhY2UgPSAidWktZWZmZWN0cy0iLAoJZGF0YVNwYWNlU3R5bGUgPSAidWktZWZmZWN0cy1zdHlsZSIsCglkYXRhU3BhY2VBbmltYXRlZCA9ICJ1aS1lZmZlY3RzLWFuaW1hdGVkIiwKCgkvLyBDcmVhdGUgYSBsb2NhbCBqUXVlcnkgYmVjYXVzZSBqUXVlcnkgQ29sb3IgcmVsaWVzIG9uIGl0IGFuZCB0aGUKCS8vIGdsb2JhbCBtYXkgbm90IGV4aXN0IHdpdGggQU1EIGFuZCBhIGN1c3RvbSBidWlsZCAoIzEwMTk5KQoJalF1ZXJ5ID0gJDsKCiQuZWZmZWN0cyA9IHsKCWVmZmVjdDoge30KfTsKCi8qIQogKiBqUXVlcnkgQ29sb3IgQW5pbWF0aW9ucyB2Mi4xLjIKICogaHR0cHM6Ly9naXRodWIuY29tL2pxdWVyeS9qcXVlcnktY29sb3IKICoKICogQ29weXJpZ2h0IDIwMTQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICoKICogRGF0ZTogV2VkIEphbiAxNiAwODo0NzowOSAyMDEzIC0wNjAwCiAqLwooIGZ1bmN0aW9uKCBqUXVlcnksIHVuZGVmaW5lZCApIHsKCgl2YXIgc3RlcEhvb2tzID0gImJhY2tncm91bmRDb2xvciBib3JkZXJCb3R0b21Db2xvciBib3JkZXJMZWZ0Q29sb3IgYm9yZGVyUmlnaHRDb2xvciAiICsKCQkiYm9yZGVyVG9wQ29sb3IgY29sb3IgY29sdW1uUnVsZUNvbG9yIG91dGxpbmVDb2xvciB0ZXh0RGVjb3JhdGlvbkNvbG9yIHRleHRFbXBoYXNpc0NvbG9yIiwKCgkvLyBQbHVzZXF1YWxzIHRlc3QgZm9yICs9IDEwMCAtPSAxMDAKCXJwbHVzZXF1YWxzID0gL14oW1wtK10pPVxzKihcZCtcLj9cZCopLywKCgkvLyBBIHNldCBvZiBSRSdzIHRoYXQgY2FuIG1hdGNoIHN0cmluZ3MgYW5kIGdlbmVyYXRlIGNvbG9yIHR1cGxlcy4KCXN0cmluZ1BhcnNlcnMgPSBbIHsKCQkJcmU6IC9yZ2JhP1woXHMqKFxkezEsM30pXHMqLFxzKihcZHsxLDN9KVxzKixccyooXGR7MSwzfSlccyooPzosXHMqKFxkPyg/OlwuXGQrKT8pXHMqKT9cKS8sCgkJCXBhcnNlOiBmdW5jdGlvbiggZXhlY1Jlc3VsdCApIHsKCQkJCXJldHVybiBbCgkJCQkJZXhlY1Jlc3VsdFsgMSBdLAoJCQkJCWV4ZWNSZXN1bHRbIDIgXSwKCQkJCQlleGVjUmVzdWx0WyAzIF0sCgkJCQkJZXhlY1Jlc3VsdFsgNCBdCgkJCQldOwoJCQl9CgkJfSwgewoJCQlyZTogL3JnYmE/XChccyooXGQrKD86XC5cZCspPylcJVxzKixccyooXGQrKD86XC5cZCspPylcJVxzKixccyooXGQrKD86XC5cZCspPylcJVxzKig/OixccyooXGQ/KD86XC5cZCspPylccyopP1wpLywKCQkJcGFyc2U6IGZ1bmN0aW9uKCBleGVjUmVzdWx0ICkgewoJCQkJcmV0dXJuIFsKCQkJCQlleGVjUmVzdWx0WyAxIF0gKiAyLjU1LAoJCQkJCWV4ZWNSZXN1bHRbIDIgXSAqIDIuNTUsCgkJCQkJZXhlY1Jlc3VsdFsgMyBdICogMi41NSwKCQkJCQlleGVjUmVzdWx0WyA0IF0KCQkJCV07CgkJCX0KCQl9LCB7CgoJCQkvLyBUaGlzIHJlZ2V4IGlnbm9yZXMgQS1GIGJlY2F1c2UgaXQncyBjb21wYXJlZCBhZ2FpbnN0IGFuIGFscmVhZHkgbG93ZXJjYXNlZCBzdHJpbmcKCQkJcmU6IC8jKFthLWYwLTldezJ9KShbYS1mMC05XXsyfSkoW2EtZjAtOV17Mn0pLywKCQkJcGFyc2U6IGZ1bmN0aW9uKCBleGVjUmVzdWx0ICkgewoJCQkJcmV0dXJuIFsKCQkJCQlwYXJzZUludCggZXhlY1Jlc3VsdFsgMSBdLCAxNiApLAoJCQkJCXBhcnNlSW50KCBleGVjUmVzdWx0WyAyIF0sIDE2ICksCgkJCQkJcGFyc2VJbnQoIGV4ZWNSZXN1bHRbIDMgXSwgMTYgKQoJCQkJXTsKCQkJfQoJCX0sIHsKCgkJCS8vIFRoaXMgcmVnZXggaWdub3JlcyBBLUYgYmVjYXVzZSBpdCdzIGNvbXBhcmVkIGFnYWluc3QgYW4gYWxyZWFkeSBsb3dlcmNhc2VkIHN0cmluZwoJCQlyZTogLyMoW2EtZjAtOV0pKFthLWYwLTldKShbYS1mMC05XSkvLAoJCQlwYXJzZTogZnVuY3Rpb24oIGV4ZWNSZXN1bHQgKSB7CgkJCQlyZXR1cm4gWwoJCQkJCXBhcnNlSW50KCBleGVjUmVzdWx0WyAxIF0gKyBleGVjUmVzdWx0WyAxIF0sIDE2ICksCgkJCQkJcGFyc2VJbnQoIGV4ZWNSZXN1bHRbIDIgXSArIGV4ZWNSZXN1bHRbIDIgXSwgMTYgKSwKCQkJCQlwYXJzZUludCggZXhlY1Jlc3VsdFsgMyBdICsgZXhlY1Jlc3VsdFsgMyBdLCAxNiApCgkJCQldOwoJCQl9CgkJfSwgewoJCQlyZTogL2hzbGE/XChccyooXGQrKD86XC5cZCspPylccyosXHMqKFxkKyg/OlwuXGQrKT8pXCVccyosXHMqKFxkKyg/OlwuXGQrKT8pXCVccyooPzosXHMqKFxkPyg/OlwuXGQrKT8pXHMqKT9cKS8sCgkJCXNwYWNlOiAiaHNsYSIsCgkJCXBhcnNlOiBmdW5jdGlvbiggZXhlY1Jlc3VsdCApIHsKCQkJCXJldHVybiBbCgkJCQkJZXhlY1Jlc3VsdFsgMSBdLAoJCQkJCWV4ZWNSZXN1bHRbIDIgXSAvIDEwMCwKCQkJCQlleGVjUmVzdWx0WyAzIF0gLyAxMDAsCgkJCQkJZXhlY1Jlc3VsdFsgNCBdCgkJCQldOwoJCQl9CgkJfSBdLAoKCS8vIEpRdWVyeS5Db2xvciggKQoJY29sb3IgPSBqUXVlcnkuQ29sb3IgPSBmdW5jdGlvbiggY29sb3IsIGdyZWVuLCBibHVlLCBhbHBoYSApIHsKCQlyZXR1cm4gbmV3IGpRdWVyeS5Db2xvci5mbi5wYXJzZSggY29sb3IsIGdyZWVuLCBibHVlLCBhbHBoYSApOwoJfSwKCXNwYWNlcyA9IHsKCQlyZ2JhOiB7CgkJCXByb3BzOiB7CgkJCQlyZWQ6IHsKCQkJCQlpZHg6IDAsCgkJCQkJdHlwZTogImJ5dGUiCgkJCQl9LAoJCQkJZ3JlZW46IHsKCQkJCQlpZHg6IDEsCgkJCQkJdHlwZTogImJ5dGUiCgkJCQl9LAoJCQkJYmx1ZTogewoJCQkJCWlkeDogMiwKCQkJCQl0eXBlOiAiYnl0ZSIKCQkJCX0KCQkJfQoJCX0sCgoJCWhzbGE6IHsKCQkJcHJvcHM6IHsKCQkJCWh1ZTogewoJCQkJCWlkeDogMCwKCQkJCQl0eXBlOiAiZGVncmVlcyIKCQkJCX0sCgkJCQlzYXR1cmF0aW9uOiB7CgkJCQkJaWR4OiAxLAoJCQkJCXR5cGU6ICJwZXJjZW50IgoJCQkJfSwKCQkJCWxpZ2h0bmVzczogewoJCQkJCWlkeDogMiwKCQkJCQl0eXBlOiAicGVyY2VudCIKCQkJCX0KCQkJfQoJCX0KCX0sCglwcm9wVHlwZXMgPSB7CgkJImJ5dGUiOiB7CgkJCWZsb29yOiB0cnVlLAoJCQltYXg6IDI1NQoJCX0sCgkJInBlcmNlbnQiOiB7CgkJCW1heDogMQoJCX0sCgkJImRlZ3JlZXMiOiB7CgkJCW1vZDogMzYwLAoJCQlmbG9vcjogdHJ1ZQoJCX0KCX0sCglzdXBwb3J0ID0gY29sb3Iuc3VwcG9ydCA9IHt9LAoKCS8vIEVsZW1lbnQgZm9yIHN1cHBvcnQgdGVzdHMKCXN1cHBvcnRFbGVtID0galF1ZXJ5KCAiPHA+IiApWyAwIF0sCgoJLy8gQ29sb3JzID0galF1ZXJ5LkNvbG9yLm5hbWVzCgljb2xvcnMsCgoJLy8gTG9jYWwgYWxpYXNlcyBvZiBmdW5jdGlvbnMgY2FsbGVkIG9mdGVuCgllYWNoID0galF1ZXJ5LmVhY2g7CgovLyBEZXRlcm1pbmUgcmdiYSBzdXBwb3J0IGltbWVkaWF0ZWx5CnN1cHBvcnRFbGVtLnN0eWxlLmNzc1RleHQgPSAiYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDEsMSwxLC41KSI7CnN1cHBvcnQucmdiYSA9IHN1cHBvcnRFbGVtLnN0eWxlLmJhY2tncm91bmRDb2xvci5pbmRleE9mKCAicmdiYSIgKSA+IC0xOwoKLy8gRGVmaW5lIGNhY2hlIG5hbWUgYW5kIGFscGhhIHByb3BlcnRpZXMKLy8gZm9yIHJnYmEgYW5kIGhzbGEgc3BhY2VzCmVhY2goIHNwYWNlcywgZnVuY3Rpb24oIHNwYWNlTmFtZSwgc3BhY2UgKSB7CglzcGFjZS5jYWNoZSA9ICJfIiArIHNwYWNlTmFtZTsKCXNwYWNlLnByb3BzLmFscGhhID0gewoJCWlkeDogMywKCQl0eXBlOiAicGVyY2VudCIsCgkJZGVmOiAxCgl9Owp9ICk7CgpmdW5jdGlvbiBjbGFtcCggdmFsdWUsIHByb3AsIGFsbG93RW1wdHkgKSB7Cgl2YXIgdHlwZSA9IHByb3BUeXBlc1sgcHJvcC50eXBlIF0gfHwge307CgoJaWYgKCB2YWx1ZSA9PSBudWxsICkgewoJCXJldHVybiAoIGFsbG93RW1wdHkgfHwgIXByb3AuZGVmICkgPyBudWxsIDogcHJvcC5kZWY7Cgl9CgoJLy8gfn4gaXMgYW4gc2hvcnQgd2F5IG9mIGRvaW5nIGZsb29yIGZvciBwb3NpdGl2ZSBudW1iZXJzCgl2YWx1ZSA9IHR5cGUuZmxvb3IgPyB+fnZhbHVlIDogcGFyc2VGbG9hdCggdmFsdWUgKTsKCgkvLyBJRSB3aWxsIHBhc3MgaW4gZW1wdHkgc3RyaW5ncyBhcyB2YWx1ZSBmb3IgYWxwaGEsCgkvLyB3aGljaCB3aWxsIGhpdCB0aGlzIGNhc2UKCWlmICggaXNOYU4oIHZhbHVlICkgKSB7CgkJcmV0dXJuIHByb3AuZGVmOwoJfQoKCWlmICggdHlwZS5tb2QgKSB7CgoJCS8vIFdlIGFkZCBtb2QgYmVmb3JlIG1vZGRpbmcgdG8gbWFrZSBzdXJlIHRoYXQgbmVnYXRpdmVzIHZhbHVlcwoJCS8vIGdldCBjb252ZXJ0ZWQgcHJvcGVybHk6IC0xMCAtPiAzNTAKCQlyZXR1cm4gKCB2YWx1ZSArIHR5cGUubW9kICkgJSB0eXBlLm1vZDsKCX0KCgkvLyBGb3Igbm93IGFsbCBwcm9wZXJ0eSB0eXBlcyB3aXRob3V0IG1vZCBoYXZlIG1pbiBhbmQgbWF4CglyZXR1cm4gMCA+IHZhbHVlID8gMCA6IHR5cGUubWF4IDwgdmFsdWUgPyB0eXBlLm1heCA6IHZhbHVlOwp9CgpmdW5jdGlvbiBzdHJpbmdQYXJzZSggc3RyaW5nICkgewoJdmFyIGluc3QgPSBjb2xvcigpLAoJCXJnYmEgPSBpbnN0Ll9yZ2JhID0gW107CgoJc3RyaW5nID0gc3RyaW5nLnRvTG93ZXJDYXNlKCk7CgoJZWFjaCggc3RyaW5nUGFyc2VycywgZnVuY3Rpb24oIGksIHBhcnNlciApIHsKCQl2YXIgcGFyc2VkLAoJCQltYXRjaCA9IHBhcnNlci5yZS5leGVjKCBzdHJpbmcgKSwKCQkJdmFsdWVzID0gbWF0Y2ggJiYgcGFyc2VyLnBhcnNlKCBtYXRjaCApLAoJCQlzcGFjZU5hbWUgPSBwYXJzZXIuc3BhY2UgfHwgInJnYmEiOwoKCQlpZiAoIHZhbHVlcyApIHsKCQkJcGFyc2VkID0gaW5zdFsgc3BhY2VOYW1lIF0oIHZhbHVlcyApOwoKCQkJLy8gSWYgdGhpcyB3YXMgYW4gcmdiYSBwYXJzZSB0aGUgYXNzaWdubWVudCBtaWdodCBoYXBwZW4gdHdpY2UKCQkJLy8gb2ggd2VsbC4uLi4KCQkJaW5zdFsgc3BhY2VzWyBzcGFjZU5hbWUgXS5jYWNoZSBdID0gcGFyc2VkWyBzcGFjZXNbIHNwYWNlTmFtZSBdLmNhY2hlIF07CgkJCXJnYmEgPSBpbnN0Ll9yZ2JhID0gcGFyc2VkLl9yZ2JhOwoKCQkJLy8gRXhpdCBlYWNoKCBzdHJpbmdQYXJzZXJzICkgaGVyZSBiZWNhdXNlIHdlIG1hdGNoZWQKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCX0gKTsKCgkvLyBGb3VuZCBhIHN0cmluZ1BhcnNlciB0aGF0IGhhbmRsZWQgaXQKCWlmICggcmdiYS5sZW5ndGggKSB7CgoJCS8vIElmIHRoaXMgY2FtZSBmcm9tIGEgcGFyc2VkIHN0cmluZywgZm9yY2UgInRyYW5zcGFyZW50IiB3aGVuIGFscGhhIGlzIDAKCQkvLyBjaHJvbWUsIChhbmQgbWF5YmUgb3RoZXJzKSByZXR1cm4gInRyYW5zcGFyZW50IiBhcyByZ2JhKDAsMCwwLDApCgkJaWYgKCByZ2JhLmpvaW4oKSA9PT0gIjAsMCwwLDAiICkgewoJCQlqUXVlcnkuZXh0ZW5kKCByZ2JhLCBjb2xvcnMudHJhbnNwYXJlbnQgKTsKCQl9CgkJcmV0dXJuIGluc3Q7Cgl9CgoJLy8gTmFtZWQgY29sb3JzCglyZXR1cm4gY29sb3JzWyBzdHJpbmcgXTsKfQoKY29sb3IuZm4gPSBqUXVlcnkuZXh0ZW5kKCBjb2xvci5wcm90b3R5cGUsIHsKCXBhcnNlOiBmdW5jdGlvbiggcmVkLCBncmVlbiwgYmx1ZSwgYWxwaGEgKSB7CgkJaWYgKCByZWQgPT09IHVuZGVmaW5lZCApIHsKCQkJdGhpcy5fcmdiYSA9IFsgbnVsbCwgbnVsbCwgbnVsbCwgbnVsbCBdOwoJCQlyZXR1cm4gdGhpczsKCQl9CgkJaWYgKCByZWQuanF1ZXJ5IHx8IHJlZC5ub2RlVHlwZSApIHsKCQkJcmVkID0galF1ZXJ5KCByZWQgKS5jc3MoIGdyZWVuICk7CgkJCWdyZWVuID0gdW5kZWZpbmVkOwoJCX0KCgkJdmFyIGluc3QgPSB0aGlzLAoJCQl0eXBlID0galF1ZXJ5LnR5cGUoIHJlZCApLAoJCQlyZ2JhID0gdGhpcy5fcmdiYSA9IFtdOwoKCQkvLyBNb3JlIHRoYW4gMSBhcmd1bWVudCBzcGVjaWZpZWQgLSBhc3N1bWUgKCByZWQsIGdyZWVuLCBibHVlLCBhbHBoYSApCgkJaWYgKCBncmVlbiAhPT0gdW5kZWZpbmVkICkgewoJCQlyZWQgPSBbIHJlZCwgZ3JlZW4sIGJsdWUsIGFscGhhIF07CgkJCXR5cGUgPSAiYXJyYXkiOwoJCX0KCgkJaWYgKCB0eXBlID09PSAic3RyaW5nIiApIHsKCQkJcmV0dXJuIHRoaXMucGFyc2UoIHN0cmluZ1BhcnNlKCByZWQgKSB8fCBjb2xvcnMuX2RlZmF1bHQgKTsKCQl9CgoJCWlmICggdHlwZSA9PT0gImFycmF5IiApIHsKCQkJZWFjaCggc3BhY2VzLnJnYmEucHJvcHMsIGZ1bmN0aW9uKCBrZXksIHByb3AgKSB7CgkJCQlyZ2JhWyBwcm9wLmlkeCBdID0gY2xhbXAoIHJlZFsgcHJvcC5pZHggXSwgcHJvcCApOwoJCQl9ICk7CgkJCXJldHVybiB0aGlzOwoJCX0KCgkJaWYgKCB0eXBlID09PSAib2JqZWN0IiApIHsKCQkJaWYgKCByZWQgaW5zdGFuY2VvZiBjb2xvciApIHsKCQkJCWVhY2goIHNwYWNlcywgZnVuY3Rpb24oIHNwYWNlTmFtZSwgc3BhY2UgKSB7CgkJCQkJaWYgKCByZWRbIHNwYWNlLmNhY2hlIF0gKSB7CgkJCQkJCWluc3RbIHNwYWNlLmNhY2hlIF0gPSByZWRbIHNwYWNlLmNhY2hlIF0uc2xpY2UoKTsKCQkJCQl9CgkJCQl9ICk7CgkJCX0gZWxzZSB7CgkJCQllYWNoKCBzcGFjZXMsIGZ1bmN0aW9uKCBzcGFjZU5hbWUsIHNwYWNlICkgewoJCQkJCXZhciBjYWNoZSA9IHNwYWNlLmNhY2hlOwoJCQkJCWVhY2goIHNwYWNlLnByb3BzLCBmdW5jdGlvbigga2V5LCBwcm9wICkgewoKCQkJCQkJLy8gSWYgdGhlIGNhY2hlIGRvZXNuJ3QgZXhpc3QsIGFuZCB3ZSBrbm93IGhvdyB0byBjb252ZXJ0CgkJCQkJCWlmICggIWluc3RbIGNhY2hlIF0gJiYgc3BhY2UudG8gKSB7CgoJCQkJCQkJLy8gSWYgdGhlIHZhbHVlIHdhcyBudWxsLCB3ZSBkb24ndCBuZWVkIHRvIGNvcHkgaXQKCQkJCQkJCS8vIGlmIHRoZSBrZXkgd2FzIGFscGhhLCB3ZSBkb24ndCBuZWVkIHRvIGNvcHkgaXQgZWl0aGVyCgkJCQkJCQlpZiAoIGtleSA9PT0gImFscGhhIiB8fCByZWRbIGtleSBdID09IG51bGwgKSB7CgkJCQkJCQkJcmV0dXJuOwoJCQkJCQkJfQoJCQkJCQkJaW5zdFsgY2FjaGUgXSA9IHNwYWNlLnRvKCBpbnN0Ll9yZ2JhICk7CgkJCQkJCX0KCgkJCQkJCS8vIFRoaXMgaXMgdGhlIG9ubHkgY2FzZSB3aGVyZSB3ZSBhbGxvdyBudWxscyBmb3IgQUxMIHByb3BlcnRpZXMuCgkJCQkJCS8vIGNhbGwgY2xhbXAgd2l0aCBhbHdheXNBbGxvd0VtcHR5CgkJCQkJCWluc3RbIGNhY2hlIF1bIHByb3AuaWR4IF0gPSBjbGFtcCggcmVkWyBrZXkgXSwgcHJvcCwgdHJ1ZSApOwoJCQkJCX0gKTsKCgkJCQkJLy8gRXZlcnl0aGluZyBkZWZpbmVkIGJ1dCBhbHBoYT8KCQkJCQlpZiAoIGluc3RbIGNhY2hlIF0gJiYKCQkJCQkJCWpRdWVyeS5pbkFycmF5KCBudWxsLCBpbnN0WyBjYWNoZSBdLnNsaWNlKCAwLCAzICkgKSA8IDAgKSB7CgoJCQkJCQkvLyBVc2UgdGhlIGRlZmF1bHQgb2YgMQoJCQkJCQlpbnN0WyBjYWNoZSBdWyAzIF0gPSAxOwoJCQkJCQlpZiAoIHNwYWNlLmZyb20gKSB7CgkJCQkJCQlpbnN0Ll9yZ2JhID0gc3BhY2UuZnJvbSggaW5zdFsgY2FjaGUgXSApOwoJCQkJCQl9CgkJCQkJfQoJCQkJfSApOwoJCQl9CgkJCXJldHVybiB0aGlzOwoJCX0KCX0sCglpczogZnVuY3Rpb24oIGNvbXBhcmUgKSB7CgkJdmFyIGlzID0gY29sb3IoIGNvbXBhcmUgKSwKCQkJc2FtZSA9IHRydWUsCgkJCWluc3QgPSB0aGlzOwoKCQllYWNoKCBzcGFjZXMsIGZ1bmN0aW9uKCBfLCBzcGFjZSApIHsKCQkJdmFyIGxvY2FsQ2FjaGUsCgkJCQlpc0NhY2hlID0gaXNbIHNwYWNlLmNhY2hlIF07CgkJCWlmICggaXNDYWNoZSApIHsKCQkJCWxvY2FsQ2FjaGUgPSBpbnN0WyBzcGFjZS5jYWNoZSBdIHx8IHNwYWNlLnRvICYmIHNwYWNlLnRvKCBpbnN0Ll9yZ2JhICkgfHwgW107CgkJCQllYWNoKCBzcGFjZS5wcm9wcywgZnVuY3Rpb24oIF8sIHByb3AgKSB7CgkJCQkJaWYgKCBpc0NhY2hlWyBwcm9wLmlkeCBdICE9IG51bGwgKSB7CgkJCQkJCXNhbWUgPSAoIGlzQ2FjaGVbIHByb3AuaWR4IF0gPT09IGxvY2FsQ2FjaGVbIHByb3AuaWR4IF0gKTsKCQkJCQkJcmV0dXJuIHNhbWU7CgkJCQkJfQoJCQkJfSApOwoJCQl9CgkJCXJldHVybiBzYW1lOwoJCX0gKTsKCQlyZXR1cm4gc2FtZTsKCX0sCglfc3BhY2U6IGZ1bmN0aW9uKCkgewoJCXZhciB1c2VkID0gW10sCgkJCWluc3QgPSB0aGlzOwoJCWVhY2goIHNwYWNlcywgZnVuY3Rpb24oIHNwYWNlTmFtZSwgc3BhY2UgKSB7CgkJCWlmICggaW5zdFsgc3BhY2UuY2FjaGUgXSApIHsKCQkJCXVzZWQucHVzaCggc3BhY2VOYW1lICk7CgkJCX0KCQl9ICk7CgkJcmV0dXJuIHVzZWQucG9wKCk7Cgl9LAoJdHJhbnNpdGlvbjogZnVuY3Rpb24oIG90aGVyLCBkaXN0YW5jZSApIHsKCQl2YXIgZW5kID0gY29sb3IoIG90aGVyICksCgkJCXNwYWNlTmFtZSA9IGVuZC5fc3BhY2UoKSwKCQkJc3BhY2UgPSBzcGFjZXNbIHNwYWNlTmFtZSBdLAoJCQlzdGFydENvbG9yID0gdGhpcy5hbHBoYSgpID09PSAwID8gY29sb3IoICJ0cmFuc3BhcmVudCIgKSA6IHRoaXMsCgkJCXN0YXJ0ID0gc3RhcnRDb2xvclsgc3BhY2UuY2FjaGUgXSB8fCBzcGFjZS50byggc3RhcnRDb2xvci5fcmdiYSApLAoJCQlyZXN1bHQgPSBzdGFydC5zbGljZSgpOwoKCQllbmQgPSBlbmRbIHNwYWNlLmNhY2hlIF07CgkJZWFjaCggc3BhY2UucHJvcHMsIGZ1bmN0aW9uKCBrZXksIHByb3AgKSB7CgkJCXZhciBpbmRleCA9IHByb3AuaWR4LAoJCQkJc3RhcnRWYWx1ZSA9IHN0YXJ0WyBpbmRleCBdLAoJCQkJZW5kVmFsdWUgPSBlbmRbIGluZGV4IF0sCgkJCQl0eXBlID0gcHJvcFR5cGVzWyBwcm9wLnR5cGUgXSB8fCB7fTsKCgkJCS8vIElmIG51bGwsIGRvbid0IG92ZXJyaWRlIHN0YXJ0IHZhbHVlCgkJCWlmICggZW5kVmFsdWUgPT09IG51bGwgKSB7CgkJCQlyZXR1cm47CgkJCX0KCgkJCS8vIElmIG51bGwgLSB1c2UgZW5kCgkJCWlmICggc3RhcnRWYWx1ZSA9PT0gbnVsbCApIHsKCQkJCXJlc3VsdFsgaW5kZXggXSA9IGVuZFZhbHVlOwoJCQl9IGVsc2UgewoJCQkJaWYgKCB0eXBlLm1vZCApIHsKCQkJCQlpZiAoIGVuZFZhbHVlIC0gc3RhcnRWYWx1ZSA+IHR5cGUubW9kIC8gMiApIHsKCQkJCQkJc3RhcnRWYWx1ZSArPSB0eXBlLm1vZDsKCQkJCQl9IGVsc2UgaWYgKCBzdGFydFZhbHVlIC0gZW5kVmFsdWUgPiB0eXBlLm1vZCAvIDIgKSB7CgkJCQkJCXN0YXJ0VmFsdWUgLT0gdHlwZS5tb2Q7CgkJCQkJfQoJCQkJfQoJCQkJcmVzdWx0WyBpbmRleCBdID0gY2xhbXAoICggZW5kVmFsdWUgLSBzdGFydFZhbHVlICkgKiBkaXN0YW5jZSArIHN0YXJ0VmFsdWUsIHByb3AgKTsKCQkJfQoJCX0gKTsKCQlyZXR1cm4gdGhpc1sgc3BhY2VOYW1lIF0oIHJlc3VsdCApOwoJfSwKCWJsZW5kOiBmdW5jdGlvbiggb3BhcXVlICkgewoKCQkvLyBJZiB3ZSBhcmUgYWxyZWFkeSBvcGFxdWUgLSByZXR1cm4gb3Vyc2VsZgoJCWlmICggdGhpcy5fcmdiYVsgMyBdID09PSAxICkgewoJCQlyZXR1cm4gdGhpczsKCQl9CgoJCXZhciByZ2IgPSB0aGlzLl9yZ2JhLnNsaWNlKCksCgkJCWEgPSByZ2IucG9wKCksCgkJCWJsZW5kID0gY29sb3IoIG9wYXF1ZSApLl9yZ2JhOwoKCQlyZXR1cm4gY29sb3IoIGpRdWVyeS5tYXAoIHJnYiwgZnVuY3Rpb24oIHYsIGkgKSB7CgkJCXJldHVybiAoIDEgLSBhICkgKiBibGVuZFsgaSBdICsgYSAqIHY7CgkJfSApICk7Cgl9LAoJdG9SZ2JhU3RyaW5nOiBmdW5jdGlvbigpIHsKCQl2YXIgcHJlZml4ID0gInJnYmEoIiwKCQkJcmdiYSA9IGpRdWVyeS5tYXAoIHRoaXMuX3JnYmEsIGZ1bmN0aW9uKCB2LCBpICkgewoJCQkJcmV0dXJuIHYgPT0gbnVsbCA/ICggaSA+IDIgPyAxIDogMCApIDogdjsKCQkJfSApOwoKCQlpZiAoIHJnYmFbIDMgXSA9PT0gMSApIHsKCQkJcmdiYS5wb3AoKTsKCQkJcHJlZml4ID0gInJnYigiOwoJCX0KCgkJcmV0dXJuIHByZWZpeCArIHJnYmEuam9pbigpICsgIikiOwoJfSwKCXRvSHNsYVN0cmluZzogZnVuY3Rpb24oKSB7CgkJdmFyIHByZWZpeCA9ICJoc2xhKCIsCgkJCWhzbGEgPSBqUXVlcnkubWFwKCB0aGlzLmhzbGEoKSwgZnVuY3Rpb24oIHYsIGkgKSB7CgkJCQlpZiAoIHYgPT0gbnVsbCApIHsKCQkJCQl2ID0gaSA+IDIgPyAxIDogMDsKCQkJCX0KCgkJCQkvLyBDYXRjaCAxIGFuZCAyCgkJCQlpZiAoIGkgJiYgaSA8IDMgKSB7CgkJCQkJdiA9IE1hdGgucm91bmQoIHYgKiAxMDAgKSArICIlIjsKCQkJCX0KCQkJCXJldHVybiB2OwoJCQl9ICk7CgoJCWlmICggaHNsYVsgMyBdID09PSAxICkgewoJCQloc2xhLnBvcCgpOwoJCQlwcmVmaXggPSAiaHNsKCI7CgkJfQoJCXJldHVybiBwcmVmaXggKyBoc2xhLmpvaW4oKSArICIpIjsKCX0sCgl0b0hleFN0cmluZzogZnVuY3Rpb24oIGluY2x1ZGVBbHBoYSApIHsKCQl2YXIgcmdiYSA9IHRoaXMuX3JnYmEuc2xpY2UoKSwKCQkJYWxwaGEgPSByZ2JhLnBvcCgpOwoKCQlpZiAoIGluY2x1ZGVBbHBoYSApIHsKCQkJcmdiYS5wdXNoKCB+figgYWxwaGEgKiAyNTUgKSApOwoJCX0KCgkJcmV0dXJuICIjIiArIGpRdWVyeS5tYXAoIHJnYmEsIGZ1bmN0aW9uKCB2ICkgewoKCQkJLy8gRGVmYXVsdCB0byAwIHdoZW4gbnVsbHMgZXhpc3QKCQkJdiA9ICggdiB8fCAwICkudG9TdHJpbmcoIDE2ICk7CgkJCXJldHVybiB2Lmxlbmd0aCA9PT0gMSA/ICIwIiArIHYgOiB2OwoJCX0gKS5qb2luKCAiIiApOwoJfSwKCXRvU3RyaW5nOiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gdGhpcy5fcmdiYVsgMyBdID09PSAwID8gInRyYW5zcGFyZW50IiA6IHRoaXMudG9SZ2JhU3RyaW5nKCk7Cgl9Cn0gKTsKY29sb3IuZm4ucGFyc2UucHJvdG90eXBlID0gY29sb3IuZm47CgovLyBIc2xhIGNvbnZlcnNpb25zIGFkYXB0ZWQgZnJvbToKLy8gaHR0cHM6Ly9jb2RlLmdvb2dsZS5jb20vcC9tYWFzaGFhY2svc291cmNlL2Jyb3dzZS9wYWNrYWdlcy9ncmFwaGljcy90cnVuay9zcmMvZ3JhcGhpY3MvY29sb3JzL0hVRTJSR0IuYXM/cj01MDIxCgpmdW5jdGlvbiBodWUycmdiKCBwLCBxLCBoICkgewoJaCA9ICggaCArIDEgKSAlIDE7CglpZiAoIGggKiA2IDwgMSApIHsKCQlyZXR1cm4gcCArICggcSAtIHAgKSAqIGggKiA2OwoJfQoJaWYgKCBoICogMiA8IDEgKSB7CgkJcmV0dXJuIHE7Cgl9CglpZiAoIGggKiAzIDwgMiApIHsKCQlyZXR1cm4gcCArICggcSAtIHAgKSAqICggKCAyIC8gMyApIC0gaCApICogNjsKCX0KCXJldHVybiBwOwp9CgpzcGFjZXMuaHNsYS50byA9IGZ1bmN0aW9uKCByZ2JhICkgewoJaWYgKCByZ2JhWyAwIF0gPT0gbnVsbCB8fCByZ2JhWyAxIF0gPT0gbnVsbCB8fCByZ2JhWyAyIF0gPT0gbnVsbCApIHsKCQlyZXR1cm4gWyBudWxsLCBudWxsLCBudWxsLCByZ2JhWyAzIF0gXTsKCX0KCXZhciByID0gcmdiYVsgMCBdIC8gMjU1LAoJCWcgPSByZ2JhWyAxIF0gLyAyNTUsCgkJYiA9IHJnYmFbIDIgXSAvIDI1NSwKCQlhID0gcmdiYVsgMyBdLAoJCW1heCA9IE1hdGgubWF4KCByLCBnLCBiICksCgkJbWluID0gTWF0aC5taW4oIHIsIGcsIGIgKSwKCQlkaWZmID0gbWF4IC0gbWluLAoJCWFkZCA9IG1heCArIG1pbiwKCQlsID0gYWRkICogMC41LAoJCWgsIHM7CgoJaWYgKCBtaW4gPT09IG1heCApIHsKCQloID0gMDsKCX0gZWxzZSBpZiAoIHIgPT09IG1heCApIHsKCQloID0gKCA2MCAqICggZyAtIGIgKSAvIGRpZmYgKSArIDM2MDsKCX0gZWxzZSBpZiAoIGcgPT09IG1heCApIHsKCQloID0gKCA2MCAqICggYiAtIHIgKSAvIGRpZmYgKSArIDEyMDsKCX0gZWxzZSB7CgkJaCA9ICggNjAgKiAoIHIgLSBnICkgLyBkaWZmICkgKyAyNDA7Cgl9CgoJLy8gQ2hyb21hIChkaWZmKSA9PSAwIG1lYW5zIGdyZXlzY2FsZSB3aGljaCwgYnkgZGVmaW5pdGlvbiwgc2F0dXJhdGlvbiA9IDAlCgkvLyBvdGhlcndpc2UsIHNhdHVyYXRpb24gaXMgYmFzZWQgb24gdGhlIHJhdGlvIG9mIGNocm9tYSAoZGlmZikgdG8gbGlnaHRuZXNzIChhZGQpCglpZiAoIGRpZmYgPT09IDAgKSB7CgkJcyA9IDA7Cgl9IGVsc2UgaWYgKCBsIDw9IDAuNSApIHsKCQlzID0gZGlmZiAvIGFkZDsKCX0gZWxzZSB7CgkJcyA9IGRpZmYgLyAoIDIgLSBhZGQgKTsKCX0KCXJldHVybiBbIE1hdGgucm91bmQoIGggKSAlIDM2MCwgcywgbCwgYSA9PSBudWxsID8gMSA6IGEgXTsKfTsKCnNwYWNlcy5oc2xhLmZyb20gPSBmdW5jdGlvbiggaHNsYSApIHsKCWlmICggaHNsYVsgMCBdID09IG51bGwgfHwgaHNsYVsgMSBdID09IG51bGwgfHwgaHNsYVsgMiBdID09IG51bGwgKSB7CgkJcmV0dXJuIFsgbnVsbCwgbnVsbCwgbnVsbCwgaHNsYVsgMyBdIF07Cgl9Cgl2YXIgaCA9IGhzbGFbIDAgXSAvIDM2MCwKCQlzID0gaHNsYVsgMSBdLAoJCWwgPSBoc2xhWyAyIF0sCgkJYSA9IGhzbGFbIDMgXSwKCQlxID0gbCA8PSAwLjUgPyBsICogKCAxICsgcyApIDogbCArIHMgLSBsICogcywKCQlwID0gMiAqIGwgLSBxOwoKCXJldHVybiBbCgkJTWF0aC5yb3VuZCggaHVlMnJnYiggcCwgcSwgaCArICggMSAvIDMgKSApICogMjU1ICksCgkJTWF0aC5yb3VuZCggaHVlMnJnYiggcCwgcSwgaCApICogMjU1ICksCgkJTWF0aC5yb3VuZCggaHVlMnJnYiggcCwgcSwgaCAtICggMSAvIDMgKSApICogMjU1ICksCgkJYQoJXTsKfTsKCmVhY2goIHNwYWNlcywgZnVuY3Rpb24oIHNwYWNlTmFtZSwgc3BhY2UgKSB7Cgl2YXIgcHJvcHMgPSBzcGFjZS5wcm9wcywKCQljYWNoZSA9IHNwYWNlLmNhY2hlLAoJCXRvID0gc3BhY2UudG8sCgkJZnJvbSA9IHNwYWNlLmZyb207CgoJLy8gTWFrZXMgcmdiYSgpIGFuZCBoc2xhKCkKCWNvbG9yLmZuWyBzcGFjZU5hbWUgXSA9IGZ1bmN0aW9uKCB2YWx1ZSApIHsKCgkJLy8gR2VuZXJhdGUgYSBjYWNoZSBmb3IgdGhpcyBzcGFjZSBpZiBpdCBkb2Vzbid0IGV4aXN0CgkJaWYgKCB0byAmJiAhdGhpc1sgY2FjaGUgXSApIHsKCQkJdGhpc1sgY2FjaGUgXSA9IHRvKCB0aGlzLl9yZ2JhICk7CgkJfQoJCWlmICggdmFsdWUgPT09IHVuZGVmaW5lZCApIHsKCQkJcmV0dXJuIHRoaXNbIGNhY2hlIF0uc2xpY2UoKTsKCQl9CgoJCXZhciByZXQsCgkJCXR5cGUgPSBqUXVlcnkudHlwZSggdmFsdWUgKSwKCQkJYXJyID0gKCB0eXBlID09PSAiYXJyYXkiIHx8IHR5cGUgPT09ICJvYmplY3QiICkgPyB2YWx1ZSA6IGFyZ3VtZW50cywKCQkJbG9jYWwgPSB0aGlzWyBjYWNoZSBdLnNsaWNlKCk7CgoJCWVhY2goIHByb3BzLCBmdW5jdGlvbigga2V5LCBwcm9wICkgewoJCQl2YXIgdmFsID0gYXJyWyB0eXBlID09PSAib2JqZWN0IiA/IGtleSA6IHByb3AuaWR4IF07CgkJCWlmICggdmFsID09IG51bGwgKSB7CgkJCQl2YWwgPSBsb2NhbFsgcHJvcC5pZHggXTsKCQkJfQoJCQlsb2NhbFsgcHJvcC5pZHggXSA9IGNsYW1wKCB2YWwsIHByb3AgKTsKCQl9ICk7CgoJCWlmICggZnJvbSApIHsKCQkJcmV0ID0gY29sb3IoIGZyb20oIGxvY2FsICkgKTsKCQkJcmV0WyBjYWNoZSBdID0gbG9jYWw7CgkJCXJldHVybiByZXQ7CgkJfSBlbHNlIHsKCQkJcmV0dXJuIGNvbG9yKCBsb2NhbCApOwoJCX0KCX07CgoJLy8gTWFrZXMgcmVkKCkgZ3JlZW4oKSBibHVlKCkgYWxwaGEoKSBodWUoKSBzYXR1cmF0aW9uKCkgbGlnaHRuZXNzKCkKCWVhY2goIHByb3BzLCBmdW5jdGlvbigga2V5LCBwcm9wICkgewoKCQkvLyBBbHBoYSBpcyBpbmNsdWRlZCBpbiBtb3JlIHRoYW4gb25lIHNwYWNlCgkJaWYgKCBjb2xvci5mblsga2V5IF0gKSB7CgkJCXJldHVybjsKCQl9CgkJY29sb3IuZm5bIGtleSBdID0gZnVuY3Rpb24oIHZhbHVlICkgewoJCQl2YXIgdnR5cGUgPSBqUXVlcnkudHlwZSggdmFsdWUgKSwKCQkJCWZuID0gKCBrZXkgPT09ICJhbHBoYSIgPyAoIHRoaXMuX2hzbGEgPyAiaHNsYSIgOiAicmdiYSIgKSA6IHNwYWNlTmFtZSApLAoJCQkJbG9jYWwgPSB0aGlzWyBmbiBdKCksCgkJCQljdXIgPSBsb2NhbFsgcHJvcC5pZHggXSwKCQkJCW1hdGNoOwoKCQkJaWYgKCB2dHlwZSA9PT0gInVuZGVmaW5lZCIgKSB7CgkJCQlyZXR1cm4gY3VyOwoJCQl9CgoJCQlpZiAoIHZ0eXBlID09PSAiZnVuY3Rpb24iICkgewoJCQkJdmFsdWUgPSB2YWx1ZS5jYWxsKCB0aGlzLCBjdXIgKTsKCQkJCXZ0eXBlID0galF1ZXJ5LnR5cGUoIHZhbHVlICk7CgkJCX0KCQkJaWYgKCB2YWx1ZSA9PSBudWxsICYmIHByb3AuZW1wdHkgKSB7CgkJCQlyZXR1cm4gdGhpczsKCQkJfQoJCQlpZiAoIHZ0eXBlID09PSAic3RyaW5nIiApIHsKCQkJCW1hdGNoID0gcnBsdXNlcXVhbHMuZXhlYyggdmFsdWUgKTsKCQkJCWlmICggbWF0Y2ggKSB7CgkJCQkJdmFsdWUgPSBjdXIgKyBwYXJzZUZsb2F0KCBtYXRjaFsgMiBdICkgKiAoIG1hdGNoWyAxIF0gPT09ICIrIiA/IDEgOiAtMSApOwoJCQkJfQoJCQl9CgkJCWxvY2FsWyBwcm9wLmlkeCBdID0gdmFsdWU7CgkJCXJldHVybiB0aGlzWyBmbiBdKCBsb2NhbCApOwoJCX07Cgl9ICk7Cn0gKTsKCi8vIEFkZCBjc3NIb29rIGFuZCAuZnguc3RlcCBmdW5jdGlvbiBmb3IgZWFjaCBuYW1lZCBob29rLgovLyBhY2NlcHQgYSBzcGFjZSBzZXBhcmF0ZWQgc3RyaW5nIG9mIHByb3BlcnRpZXMKY29sb3IuaG9vayA9IGZ1bmN0aW9uKCBob29rICkgewoJdmFyIGhvb2tzID0gaG9vay5zcGxpdCggIiAiICk7CgllYWNoKCBob29rcywgZnVuY3Rpb24oIGksIGhvb2sgKSB7CgkJalF1ZXJ5LmNzc0hvb2tzWyBob29rIF0gPSB7CgkJCXNldDogZnVuY3Rpb24oIGVsZW0sIHZhbHVlICkgewoJCQkJdmFyIHBhcnNlZCwgY3VyRWxlbSwKCQkJCQliYWNrZ3JvdW5kQ29sb3IgPSAiIjsKCgkJCQlpZiAoIHZhbHVlICE9PSAidHJhbnNwYXJlbnQiICYmICggalF1ZXJ5LnR5cGUoIHZhbHVlICkgIT09ICJzdHJpbmciIHx8CgkJCQkJCSggcGFyc2VkID0gc3RyaW5nUGFyc2UoIHZhbHVlICkgKSApICkgewoJCQkJCXZhbHVlID0gY29sb3IoIHBhcnNlZCB8fCB2YWx1ZSApOwoJCQkJCWlmICggIXN1cHBvcnQucmdiYSAmJiB2YWx1ZS5fcmdiYVsgMyBdICE9PSAxICkgewoJCQkJCQljdXJFbGVtID0gaG9vayA9PT0gImJhY2tncm91bmRDb2xvciIgPyBlbGVtLnBhcmVudE5vZGUgOiBlbGVtOwoJCQkJCQl3aGlsZSAoCgkJCQkJCQkoIGJhY2tncm91bmRDb2xvciA9PT0gIiIgfHwgYmFja2dyb3VuZENvbG9yID09PSAidHJhbnNwYXJlbnQiICkgJiYKCQkJCQkJCWN1ckVsZW0gJiYgY3VyRWxlbS5zdHlsZQoJCQkJCQkpIHsKCQkJCQkJCXRyeSB7CgkJCQkJCQkJYmFja2dyb3VuZENvbG9yID0galF1ZXJ5LmNzcyggY3VyRWxlbSwgImJhY2tncm91bmRDb2xvciIgKTsKCQkJCQkJCQljdXJFbGVtID0gY3VyRWxlbS5wYXJlbnROb2RlOwoJCQkJCQkJfSBjYXRjaCAoIGUgKSB7CgkJCQkJCQl9CgkJCQkJCX0KCgkJCQkJCXZhbHVlID0gdmFsdWUuYmxlbmQoIGJhY2tncm91bmRDb2xvciAmJiBiYWNrZ3JvdW5kQ29sb3IgIT09ICJ0cmFuc3BhcmVudCIgPwoJCQkJCQkJYmFja2dyb3VuZENvbG9yIDoKCQkJCQkJCSJfZGVmYXVsdCIgKTsKCQkJCQl9CgoJCQkJCXZhbHVlID0gdmFsdWUudG9SZ2JhU3RyaW5nKCk7CgkJCQl9CgkJCQl0cnkgewoJCQkJCWVsZW0uc3R5bGVbIGhvb2sgXSA9IHZhbHVlOwoJCQkJfSBjYXRjaCAoIGUgKSB7CgoJCQkJCS8vIFdyYXBwZWQgdG8gcHJldmVudCBJRSBmcm9tIHRocm93aW5nIGVycm9ycyBvbiAiaW52YWxpZCIgdmFsdWVzIGxpa2UKCQkJCQkvLyAnYXV0bycgb3IgJ2luaGVyaXQnCgkJCQl9CgkJCX0KCQl9OwoJCWpRdWVyeS5meC5zdGVwWyBob29rIF0gPSBmdW5jdGlvbiggZnggKSB7CgkJCWlmICggIWZ4LmNvbG9ySW5pdCApIHsKCQkJCWZ4LnN0YXJ0ID0gY29sb3IoIGZ4LmVsZW0sIGhvb2sgKTsKCQkJCWZ4LmVuZCA9IGNvbG9yKCBmeC5lbmQgKTsKCQkJCWZ4LmNvbG9ySW5pdCA9IHRydWU7CgkJCX0KCQkJalF1ZXJ5LmNzc0hvb2tzWyBob29rIF0uc2V0KCBmeC5lbGVtLCBmeC5zdGFydC50cmFuc2l0aW9uKCBmeC5lbmQsIGZ4LnBvcyApICk7CgkJfTsKCX0gKTsKCn07Cgpjb2xvci5ob29rKCBzdGVwSG9va3MgKTsKCmpRdWVyeS5jc3NIb29rcy5ib3JkZXJDb2xvciA9IHsKCWV4cGFuZDogZnVuY3Rpb24oIHZhbHVlICkgewoJCXZhciBleHBhbmRlZCA9IHt9OwoKCQllYWNoKCBbICJUb3AiLCAiUmlnaHQiLCAiQm90dG9tIiwgIkxlZnQiIF0sIGZ1bmN0aW9uKCBpLCBwYXJ0ICkgewoJCQlleHBhbmRlZFsgImJvcmRlciIgKyBwYXJ0ICsgIkNvbG9yIiBdID0gdmFsdWU7CgkJfSApOwoJCXJldHVybiBleHBhbmRlZDsKCX0KfTsKCi8vIEJhc2ljIGNvbG9yIG5hbWVzIG9ubHkuCi8vIFVzYWdlIG9mIGFueSBvZiB0aGUgb3RoZXIgY29sb3IgbmFtZXMgcmVxdWlyZXMgYWRkaW5nIHlvdXJzZWxmIG9yIGluY2x1ZGluZwovLyBqcXVlcnkuY29sb3Iuc3ZnLW5hbWVzLmpzLgpjb2xvcnMgPSBqUXVlcnkuQ29sb3IubmFtZXMgPSB7CgoJLy8gNC4xLiBCYXNpYyBjb2xvciBrZXl3b3JkcwoJYXF1YTogIiMwMGZmZmYiLAoJYmxhY2s6ICIjMDAwMDAwIiwKCWJsdWU6ICIjMDAwMGZmIiwKCWZ1Y2hzaWE6ICIjZmYwMGZmIiwKCWdyYXk6ICIjODA4MDgwIiwKCWdyZWVuOiAiIzAwODAwMCIsCglsaW1lOiAiIzAwZmYwMCIsCgltYXJvb246ICIjODAwMDAwIiwKCW5hdnk6ICIjMDAwMDgwIiwKCW9saXZlOiAiIzgwODAwMCIsCglwdXJwbGU6ICIjODAwMDgwIiwKCXJlZDogIiNmZjAwMDAiLAoJc2lsdmVyOiAiI2MwYzBjMCIsCgl0ZWFsOiAiIzAwODA4MCIsCgl3aGl0ZTogIiNmZmZmZmYiLAoJeWVsbG93OiAiI2ZmZmYwMCIsCgoJLy8gNC4yLjMuICJ0cmFuc3BhcmVudCIgY29sb3Iga2V5d29yZAoJdHJhbnNwYXJlbnQ6IFsgbnVsbCwgbnVsbCwgbnVsbCwgMCBdLAoKCV9kZWZhdWx0OiAiI2ZmZmZmZiIKfTsKCn0gKSggalF1ZXJ5ICk7CgovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIENMQVNTIEFOSU1BVElPTlMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwooIGZ1bmN0aW9uKCkgewoKdmFyIGNsYXNzQW5pbWF0aW9uQWN0aW9ucyA9IFsgImFkZCIsICJyZW1vdmUiLCAidG9nZ2xlIiBdLAoJc2hvcnRoYW5kU3R5bGVzID0gewoJCWJvcmRlcjogMSwKCQlib3JkZXJCb3R0b206IDEsCgkJYm9yZGVyQ29sb3I6IDEsCgkJYm9yZGVyTGVmdDogMSwKCQlib3JkZXJSaWdodDogMSwKCQlib3JkZXJUb3A6IDEsCgkJYm9yZGVyV2lkdGg6IDEsCgkJbWFyZ2luOiAxLAoJCXBhZGRpbmc6IDEKCX07CgokLmVhY2goCglbICJib3JkZXJMZWZ0U3R5bGUiLCAiYm9yZGVyUmlnaHRTdHlsZSIsICJib3JkZXJCb3R0b21TdHlsZSIsICJib3JkZXJUb3BTdHlsZSIgXSwKCWZ1bmN0aW9uKCBfLCBwcm9wICkgewoJCSQuZnguc3RlcFsgcHJvcCBdID0gZnVuY3Rpb24oIGZ4ICkgewoJCQlpZiAoIGZ4LmVuZCAhPT0gIm5vbmUiICYmICFmeC5zZXRBdHRyIHx8IGZ4LnBvcyA9PT0gMSAmJiAhZnguc2V0QXR0ciApIHsKCQkJCWpRdWVyeS5zdHlsZSggZnguZWxlbSwgcHJvcCwgZnguZW5kICk7CgkJCQlmeC5zZXRBdHRyID0gdHJ1ZTsKCQkJfQoJCX07Cgl9Cik7CgpmdW5jdGlvbiBnZXRFbGVtZW50U3R5bGVzKCBlbGVtICkgewoJdmFyIGtleSwgbGVuLAoJCXN0eWxlID0gZWxlbS5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3ID8KCQkJZWxlbS5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoIGVsZW0sIG51bGwgKSA6CgkJCWVsZW0uY3VycmVudFN0eWxlLAoJCXN0eWxlcyA9IHt9OwoKCWlmICggc3R5bGUgJiYgc3R5bGUubGVuZ3RoICYmIHN0eWxlWyAwIF0gJiYgc3R5bGVbIHN0eWxlWyAwIF0gXSApIHsKCQlsZW4gPSBzdHlsZS5sZW5ndGg7CgkJd2hpbGUgKCBsZW4tLSApIHsKCQkJa2V5ID0gc3R5bGVbIGxlbiBdOwoJCQlpZiAoIHR5cGVvZiBzdHlsZVsga2V5IF0gPT09ICJzdHJpbmciICkgewoJCQkJc3R5bGVzWyAkLmNhbWVsQ2FzZSgga2V5ICkgXSA9IHN0eWxlWyBrZXkgXTsKCQkJfQoJCX0KCgkvLyBTdXBwb3J0OiBPcGVyYSwgSUUgPDkKCX0gZWxzZSB7CgkJZm9yICgga2V5IGluIHN0eWxlICkgewoJCQlpZiAoIHR5cGVvZiBzdHlsZVsga2V5IF0gPT09ICJzdHJpbmciICkgewoJCQkJc3R5bGVzWyBrZXkgXSA9IHN0eWxlWyBrZXkgXTsKCQkJfQoJCX0KCX0KCglyZXR1cm4gc3R5bGVzOwp9CgpmdW5jdGlvbiBzdHlsZURpZmZlcmVuY2UoIG9sZFN0eWxlLCBuZXdTdHlsZSApIHsKCXZhciBkaWZmID0ge30sCgkJbmFtZSwgdmFsdWU7CgoJZm9yICggbmFtZSBpbiBuZXdTdHlsZSApIHsKCQl2YWx1ZSA9IG5ld1N0eWxlWyBuYW1lIF07CgkJaWYgKCBvbGRTdHlsZVsgbmFtZSBdICE9PSB2YWx1ZSApIHsKCQkJaWYgKCAhc2hvcnRoYW5kU3R5bGVzWyBuYW1lIF0gKSB7CgkJCQlpZiAoICQuZnguc3RlcFsgbmFtZSBdIHx8ICFpc05hTiggcGFyc2VGbG9hdCggdmFsdWUgKSApICkgewoJCQkJCWRpZmZbIG5hbWUgXSA9IHZhbHVlOwoJCQkJfQoJCQl9CgkJfQoJfQoKCXJldHVybiBkaWZmOwp9CgovLyBTdXBwb3J0OiBqUXVlcnkgPDEuOAppZiAoICEkLmZuLmFkZEJhY2sgKSB7CgkkLmZuLmFkZEJhY2sgPSBmdW5jdGlvbiggc2VsZWN0b3IgKSB7CgkJcmV0dXJuIHRoaXMuYWRkKCBzZWxlY3RvciA9PSBudWxsID8KCQkJdGhpcy5wcmV2T2JqZWN0IDogdGhpcy5wcmV2T2JqZWN0LmZpbHRlciggc2VsZWN0b3IgKQoJCSk7Cgl9Owp9CgokLmVmZmVjdHMuYW5pbWF0ZUNsYXNzID0gZnVuY3Rpb24oIHZhbHVlLCBkdXJhdGlvbiwgZWFzaW5nLCBjYWxsYmFjayApIHsKCXZhciBvID0gJC5zcGVlZCggZHVyYXRpb24sIGVhc2luZywgY2FsbGJhY2sgKTsKCglyZXR1cm4gdGhpcy5xdWV1ZSggZnVuY3Rpb24oKSB7CgkJdmFyIGFuaW1hdGVkID0gJCggdGhpcyApLAoJCQliYXNlQ2xhc3MgPSBhbmltYXRlZC5hdHRyKCAiY2xhc3MiICkgfHwgIiIsCgkJCWFwcGx5Q2xhc3NDaGFuZ2UsCgkJCWFsbEFuaW1hdGlvbnMgPSBvLmNoaWxkcmVuID8gYW5pbWF0ZWQuZmluZCggIioiICkuYWRkQmFjaygpIDogYW5pbWF0ZWQ7CgoJCS8vIE1hcCB0aGUgYW5pbWF0ZWQgb2JqZWN0cyB0byBzdG9yZSB0aGUgb3JpZ2luYWwgc3R5bGVzLgoJCWFsbEFuaW1hdGlvbnMgPSBhbGxBbmltYXRpb25zLm1hcCggZnVuY3Rpb24oKSB7CgkJCXZhciBlbCA9ICQoIHRoaXMgKTsKCQkJcmV0dXJuIHsKCQkJCWVsOiBlbCwKCQkJCXN0YXJ0OiBnZXRFbGVtZW50U3R5bGVzKCB0aGlzICkKCQkJfTsKCQl9ICk7CgoJCS8vIEFwcGx5IGNsYXNzIGNoYW5nZQoJCWFwcGx5Q2xhc3NDaGFuZ2UgPSBmdW5jdGlvbigpIHsKCQkJJC5lYWNoKCBjbGFzc0FuaW1hdGlvbkFjdGlvbnMsIGZ1bmN0aW9uKCBpLCBhY3Rpb24gKSB7CgkJCQlpZiAoIHZhbHVlWyBhY3Rpb24gXSApIHsKCQkJCQlhbmltYXRlZFsgYWN0aW9uICsgIkNsYXNzIiBdKCB2YWx1ZVsgYWN0aW9uIF0gKTsKCQkJCX0KCQkJfSApOwoJCX07CgkJYXBwbHlDbGFzc0NoYW5nZSgpOwoKCQkvLyBNYXAgYWxsIGFuaW1hdGVkIG9iamVjdHMgYWdhaW4gLSBjYWxjdWxhdGUgbmV3IHN0eWxlcyBhbmQgZGlmZgoJCWFsbEFuaW1hdGlvbnMgPSBhbGxBbmltYXRpb25zLm1hcCggZnVuY3Rpb24oKSB7CgkJCXRoaXMuZW5kID0gZ2V0RWxlbWVudFN0eWxlcyggdGhpcy5lbFsgMCBdICk7CgkJCXRoaXMuZGlmZiA9IHN0eWxlRGlmZmVyZW5jZSggdGhpcy5zdGFydCwgdGhpcy5lbmQgKTsKCQkJcmV0dXJuIHRoaXM7CgkJfSApOwoKCQkvLyBBcHBseSBvcmlnaW5hbCBjbGFzcwoJCWFuaW1hdGVkLmF0dHIoICJjbGFzcyIsIGJhc2VDbGFzcyApOwoKCQkvLyBNYXAgYWxsIGFuaW1hdGVkIG9iamVjdHMgYWdhaW4gLSB0aGlzIHRpbWUgY29sbGVjdGluZyBhIHByb21pc2UKCQlhbGxBbmltYXRpb25zID0gYWxsQW5pbWF0aW9ucy5tYXAoIGZ1bmN0aW9uKCkgewoJCQl2YXIgc3R5bGVJbmZvID0gdGhpcywKCQkJCWRmZCA9ICQuRGVmZXJyZWQoKSwKCQkJCW9wdHMgPSAkLmV4dGVuZCgge30sIG8sIHsKCQkJCQlxdWV1ZTogZmFsc2UsCgkJCQkJY29tcGxldGU6IGZ1bmN0aW9uKCkgewoJCQkJCQlkZmQucmVzb2x2ZSggc3R5bGVJbmZvICk7CgkJCQkJfQoJCQkJfSApOwoKCQkJdGhpcy5lbC5hbmltYXRlKCB0aGlzLmRpZmYsIG9wdHMgKTsKCQkJcmV0dXJuIGRmZC5wcm9taXNlKCk7CgkJfSApOwoKCQkvLyBPbmNlIGFsbCBhbmltYXRpb25zIGhhdmUgY29tcGxldGVkOgoJCSQud2hlbi5hcHBseSggJCwgYWxsQW5pbWF0aW9ucy5nZXQoKSApLmRvbmUoIGZ1bmN0aW9uKCkgewoKCQkJLy8gU2V0IHRoZSBmaW5hbCBjbGFzcwoJCQlhcHBseUNsYXNzQ2hhbmdlKCk7CgoJCQkvLyBGb3IgZWFjaCBhbmltYXRlZCBlbGVtZW50LAoJCQkvLyBjbGVhciBhbGwgY3NzIHByb3BlcnRpZXMgdGhhdCB3ZXJlIGFuaW1hdGVkCgkJCSQuZWFjaCggYXJndW1lbnRzLCBmdW5jdGlvbigpIHsKCQkJCXZhciBlbCA9IHRoaXMuZWw7CgkJCQkkLmVhY2goIHRoaXMuZGlmZiwgZnVuY3Rpb24oIGtleSApIHsKCQkJCQllbC5jc3MoIGtleSwgIiIgKTsKCQkJCX0gKTsKCQkJfSApOwoKCQkJLy8gVGhpcyBpcyBndWFybnRlZWQgdG8gYmUgdGhlcmUgaWYgeW91IHVzZSBqUXVlcnkuc3BlZWQoKQoJCQkvLyBpdCBhbHNvIGhhbmRsZXMgZGVxdWV1aW5nIHRoZSBuZXh0IGFuaW0uLi4KCQkJby5jb21wbGV0ZS5jYWxsKCBhbmltYXRlZFsgMCBdICk7CgkJfSApOwoJfSApOwp9OwoKJC5mbi5leHRlbmQoIHsKCWFkZENsYXNzOiAoIGZ1bmN0aW9uKCBvcmlnICkgewoJCXJldHVybiBmdW5jdGlvbiggY2xhc3NOYW1lcywgc3BlZWQsIGVhc2luZywgY2FsbGJhY2sgKSB7CgkJCXJldHVybiBzcGVlZCA/CgkJCQkkLmVmZmVjdHMuYW5pbWF0ZUNsYXNzLmNhbGwoIHRoaXMsCgkJCQkJeyBhZGQ6IGNsYXNzTmFtZXMgfSwgc3BlZWQsIGVhc2luZywgY2FsbGJhY2sgKSA6CgkJCQlvcmlnLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKTsKCQl9OwoJfSApKCAkLmZuLmFkZENsYXNzICksCgoJcmVtb3ZlQ2xhc3M6ICggZnVuY3Rpb24oIG9yaWcgKSB7CgkJcmV0dXJuIGZ1bmN0aW9uKCBjbGFzc05hbWVzLCBzcGVlZCwgZWFzaW5nLCBjYWxsYmFjayApIHsKCQkJcmV0dXJuIGFyZ3VtZW50cy5sZW5ndGggPiAxID8KCQkJCSQuZWZmZWN0cy5hbmltYXRlQ2xhc3MuY2FsbCggdGhpcywKCQkJCQl7IHJlbW92ZTogY2xhc3NOYW1lcyB9LCBzcGVlZCwgZWFzaW5nLCBjYWxsYmFjayApIDoKCQkJCW9yaWcuYXBwbHkoIHRoaXMsIGFyZ3VtZW50cyApOwoJCX07Cgl9ICkoICQuZm4ucmVtb3ZlQ2xhc3MgKSwKCgl0b2dnbGVDbGFzczogKCBmdW5jdGlvbiggb3JpZyApIHsKCQlyZXR1cm4gZnVuY3Rpb24oIGNsYXNzTmFtZXMsIGZvcmNlLCBzcGVlZCwgZWFzaW5nLCBjYWxsYmFjayApIHsKCQkJaWYgKCB0eXBlb2YgZm9yY2UgPT09ICJib29sZWFuIiB8fCBmb3JjZSA9PT0gdW5kZWZpbmVkICkgewoJCQkJaWYgKCAhc3BlZWQgKSB7CgoJCQkJCS8vIFdpdGhvdXQgc3BlZWQgcGFyYW1ldGVyCgkJCQkJcmV0dXJuIG9yaWcuYXBwbHkoIHRoaXMsIGFyZ3VtZW50cyApOwoJCQkJfSBlbHNlIHsKCQkJCQlyZXR1cm4gJC5lZmZlY3RzLmFuaW1hdGVDbGFzcy5jYWxsKCB0aGlzLAoJCQkJCQkoIGZvcmNlID8geyBhZGQ6IGNsYXNzTmFtZXMgfSA6IHsgcmVtb3ZlOiBjbGFzc05hbWVzIH0gKSwKCQkJCQkJc3BlZWQsIGVhc2luZywgY2FsbGJhY2sgKTsKCQkJCX0KCQkJfSBlbHNlIHsKCgkJCQkvLyBXaXRob3V0IGZvcmNlIHBhcmFtZXRlcgoJCQkJcmV0dXJuICQuZWZmZWN0cy5hbmltYXRlQ2xhc3MuY2FsbCggdGhpcywKCQkJCQl7IHRvZ2dsZTogY2xhc3NOYW1lcyB9LCBmb3JjZSwgc3BlZWQsIGVhc2luZyApOwoJCQl9CgkJfTsKCX0gKSggJC5mbi50b2dnbGVDbGFzcyApLAoKCXN3aXRjaENsYXNzOiBmdW5jdGlvbiggcmVtb3ZlLCBhZGQsIHNwZWVkLCBlYXNpbmcsIGNhbGxiYWNrICkgewoJCXJldHVybiAkLmVmZmVjdHMuYW5pbWF0ZUNsYXNzLmNhbGwoIHRoaXMsIHsKCQkJYWRkOiBhZGQsCgkJCXJlbW92ZTogcmVtb3ZlCgkJfSwgc3BlZWQsIGVhc2luZywgY2FsbGJhY2sgKTsKCX0KfSApOwoKfSApKCk7CgovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogRUZGRUNUUyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwoKKCBmdW5jdGlvbigpIHsKCmlmICggJC5leHByICYmICQuZXhwci5maWx0ZXJzICYmICQuZXhwci5maWx0ZXJzLmFuaW1hdGVkICkgewoJJC5leHByLmZpbHRlcnMuYW5pbWF0ZWQgPSAoIGZ1bmN0aW9uKCBvcmlnICkgewoJCXJldHVybiBmdW5jdGlvbiggZWxlbSApIHsKCQkJcmV0dXJuICEhJCggZWxlbSApLmRhdGEoIGRhdGFTcGFjZUFuaW1hdGVkICkgfHwgb3JpZyggZWxlbSApOwoJCX07Cgl9ICkoICQuZXhwci5maWx0ZXJzLmFuaW1hdGVkICk7Cn0KCmlmICggJC51aUJhY2tDb21wYXQgIT09IGZhbHNlICkgewoJJC5leHRlbmQoICQuZWZmZWN0cywgewoKCQkvLyBTYXZlcyBhIHNldCBvZiBwcm9wZXJ0aWVzIGluIGEgZGF0YSBzdG9yYWdlCgkJc2F2ZTogZnVuY3Rpb24oIGVsZW1lbnQsIHNldCApIHsKCQkJdmFyIGkgPSAwLCBsZW5ndGggPSBzZXQubGVuZ3RoOwoJCQlmb3IgKCA7IGkgPCBsZW5ndGg7IGkrKyApIHsKCQkJCWlmICggc2V0WyBpIF0gIT09IG51bGwgKSB7CgkJCQkJZWxlbWVudC5kYXRhKCBkYXRhU3BhY2UgKyBzZXRbIGkgXSwgZWxlbWVudFsgMCBdLnN0eWxlWyBzZXRbIGkgXSBdICk7CgkJCQl9CgkJCX0KCQl9LAoKCQkvLyBSZXN0b3JlcyBhIHNldCBvZiBwcmV2aW91c2x5IHNhdmVkIHByb3BlcnRpZXMgZnJvbSBhIGRhdGEgc3RvcmFnZQoJCXJlc3RvcmU6IGZ1bmN0aW9uKCBlbGVtZW50LCBzZXQgKSB7CgkJCXZhciB2YWwsIGkgPSAwLCBsZW5ndGggPSBzZXQubGVuZ3RoOwoJCQlmb3IgKCA7IGkgPCBsZW5ndGg7IGkrKyApIHsKCQkJCWlmICggc2V0WyBpIF0gIT09IG51bGwgKSB7CgkJCQkJdmFsID0gZWxlbWVudC5kYXRhKCBkYXRhU3BhY2UgKyBzZXRbIGkgXSApOwoJCQkJCWVsZW1lbnQuY3NzKCBzZXRbIGkgXSwgdmFsICk7CgkJCQl9CgkJCX0KCQl9LAoKCQlzZXRNb2RlOiBmdW5jdGlvbiggZWwsIG1vZGUgKSB7CgkJCWlmICggbW9kZSA9PT0gInRvZ2dsZSIgKSB7CgkJCQltb2RlID0gZWwuaXMoICI6aGlkZGVuIiApID8gInNob3ciIDogImhpZGUiOwoJCQl9CgkJCXJldHVybiBtb2RlOwoJCX0sCgoJCS8vIFdyYXBzIHRoZSBlbGVtZW50IGFyb3VuZCBhIHdyYXBwZXIgdGhhdCBjb3BpZXMgcG9zaXRpb24gcHJvcGVydGllcwoJCWNyZWF0ZVdyYXBwZXI6IGZ1bmN0aW9uKCBlbGVtZW50ICkgewoKCQkJLy8gSWYgdGhlIGVsZW1lbnQgaXMgYWxyZWFkeSB3cmFwcGVkLCByZXR1cm4gaXQKCQkJaWYgKCBlbGVtZW50LnBhcmVudCgpLmlzKCAiLnVpLWVmZmVjdHMtd3JhcHBlciIgKSApIHsKCQkJCXJldHVybiBlbGVtZW50LnBhcmVudCgpOwoJCQl9CgoJCQkvLyBXcmFwIHRoZSBlbGVtZW50CgkJCXZhciBwcm9wcyA9IHsKCQkJCQl3aWR0aDogZWxlbWVudC5vdXRlcldpZHRoKCB0cnVlICksCgkJCQkJaGVpZ2h0OiBlbGVtZW50Lm91dGVySGVpZ2h0KCB0cnVlICksCgkJCQkJImZsb2F0IjogZWxlbWVudC5jc3MoICJmbG9hdCIgKQoJCQkJfSwKCQkJCXdyYXBwZXIgPSAkKCAiPGRpdj48L2Rpdj4iICkKCQkJCQkuYWRkQ2xhc3MoICJ1aS1lZmZlY3RzLXdyYXBwZXIiICkKCQkJCQkuY3NzKCB7CgkJCQkJCWZvbnRTaXplOiAiMTAwJSIsCgkJCQkJCWJhY2tncm91bmQ6ICJ0cmFuc3BhcmVudCIsCgkJCQkJCWJvcmRlcjogIm5vbmUiLAoJCQkJCQltYXJnaW46IDAsCgkJCQkJCXBhZGRpbmc6IDAKCQkJCQl9ICksCgoJCQkJLy8gU3RvcmUgdGhlIHNpemUgaW4gY2FzZSB3aWR0aC9oZWlnaHQgYXJlIGRlZmluZWQgaW4gJSAtIEZpeGVzICM1MjQ1CgkJCQlzaXplID0gewoJCQkJCXdpZHRoOiBlbGVtZW50LndpZHRoKCksCgkJCQkJaGVpZ2h0OiBlbGVtZW50LmhlaWdodCgpCgkJCQl9LAoJCQkJYWN0aXZlID0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudDsKCgkJCS8vIFN1cHBvcnQ6IEZpcmVmb3gKCQkJLy8gRmlyZWZveCBpbmNvcnJlY3RseSBleHBvc2VzIGFub255bW91cyBjb250ZW50CgkJCS8vIGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTU2MTY2NAoJCQl0cnkgewoJCQkJYWN0aXZlLmlkOwoJCQl9IGNhdGNoICggZSApIHsKCQkJCWFjdGl2ZSA9IGRvY3VtZW50LmJvZHk7CgkJCX0KCgkJCWVsZW1lbnQud3JhcCggd3JhcHBlciApOwoKCQkJLy8gRml4ZXMgIzc1OTUgLSBFbGVtZW50cyBsb3NlIGZvY3VzIHdoZW4gd3JhcHBlZC4KCQkJaWYgKCBlbGVtZW50WyAwIF0gPT09IGFjdGl2ZSB8fCAkLmNvbnRhaW5zKCBlbGVtZW50WyAwIF0sIGFjdGl2ZSApICkgewoJCQkJJCggYWN0aXZlICkudHJpZ2dlciggImZvY3VzIiApOwoJCQl9CgoJCQkvLyBIb3RmaXggZm9yIGpRdWVyeSAxLjQgc2luY2Ugc29tZSBjaGFuZ2UgaW4gd3JhcCgpIHNlZW1zIHRvIGFjdHVhbGx5CgkJCS8vIGxvc2UgdGhlIHJlZmVyZW5jZSB0byB0aGUgd3JhcHBlZCBlbGVtZW50CgkJCXdyYXBwZXIgPSBlbGVtZW50LnBhcmVudCgpOwoKCQkJLy8gVHJhbnNmZXIgcG9zaXRpb25pbmcgcHJvcGVydGllcyB0byB0aGUgd3JhcHBlcgoJCQlpZiAoIGVsZW1lbnQuY3NzKCAicG9zaXRpb24iICkgPT09ICJzdGF0aWMiICkgewoJCQkJd3JhcHBlci5jc3MoIHsgcG9zaXRpb246ICJyZWxhdGl2ZSIgfSApOwoJCQkJZWxlbWVudC5jc3MoIHsgcG9zaXRpb246ICJyZWxhdGl2ZSIgfSApOwoJCQl9IGVsc2UgewoJCQkJJC5leHRlbmQoIHByb3BzLCB7CgkJCQkJcG9zaXRpb246IGVsZW1lbnQuY3NzKCAicG9zaXRpb24iICksCgkJCQkJekluZGV4OiBlbGVtZW50LmNzcyggInotaW5kZXgiICkKCQkJCX0gKTsKCQkJCSQuZWFjaCggWyAidG9wIiwgImxlZnQiLCAiYm90dG9tIiwgInJpZ2h0IiBdLCBmdW5jdGlvbiggaSwgcG9zICkgewoJCQkJCXByb3BzWyBwb3MgXSA9IGVsZW1lbnQuY3NzKCBwb3MgKTsKCQkJCQlpZiAoIGlzTmFOKCBwYXJzZUludCggcHJvcHNbIHBvcyBdLCAxMCApICkgKSB7CgkJCQkJCXByb3BzWyBwb3MgXSA9ICJhdXRvIjsKCQkJCQl9CgkJCQl9ICk7CgkJCQllbGVtZW50LmNzcyggewoJCQkJCXBvc2l0aW9uOiAicmVsYXRpdmUiLAoJCQkJCXRvcDogMCwKCQkJCQlsZWZ0OiAwLAoJCQkJCXJpZ2h0OiAiYXV0byIsCgkJCQkJYm90dG9tOiAiYXV0byIKCQkJCX0gKTsKCQkJfQoJCQllbGVtZW50LmNzcyggc2l6ZSApOwoKCQkJcmV0dXJuIHdyYXBwZXIuY3NzKCBwcm9wcyApLnNob3coKTsKCQl9LAoKCQlyZW1vdmVXcmFwcGVyOiBmdW5jdGlvbiggZWxlbWVudCApIHsKCQkJdmFyIGFjdGl2ZSA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7CgoJCQlpZiAoIGVsZW1lbnQucGFyZW50KCkuaXMoICIudWktZWZmZWN0cy13cmFwcGVyIiApICkgewoJCQkJZWxlbWVudC5wYXJlbnQoKS5yZXBsYWNlV2l0aCggZWxlbWVudCApOwoKCQkJCS8vIEZpeGVzICM3NTk1IC0gRWxlbWVudHMgbG9zZSBmb2N1cyB3aGVuIHdyYXBwZWQuCgkJCQlpZiAoIGVsZW1lbnRbIDAgXSA9PT0gYWN0aXZlIHx8ICQuY29udGFpbnMoIGVsZW1lbnRbIDAgXSwgYWN0aXZlICkgKSB7CgkJCQkJJCggYWN0aXZlICkudHJpZ2dlciggImZvY3VzIiApOwoJCQkJfQoJCQl9CgoJCQlyZXR1cm4gZWxlbWVudDsKCQl9Cgl9ICk7Cn0KCiQuZXh0ZW5kKCAkLmVmZmVjdHMsIHsKCXZlcnNpb246ICIxLjEyLjEiLAoKCWRlZmluZTogZnVuY3Rpb24oIG5hbWUsIG1vZGUsIGVmZmVjdCApIHsKCQlpZiAoICFlZmZlY3QgKSB7CgkJCWVmZmVjdCA9IG1vZGU7CgkJCW1vZGUgPSAiZWZmZWN0IjsKCQl9CgoJCSQuZWZmZWN0cy5lZmZlY3RbIG5hbWUgXSA9IGVmZmVjdDsKCQkkLmVmZmVjdHMuZWZmZWN0WyBuYW1lIF0ubW9kZSA9IG1vZGU7CgoJCXJldHVybiBlZmZlY3Q7Cgl9LAoKCXNjYWxlZERpbWVuc2lvbnM6IGZ1bmN0aW9uKCBlbGVtZW50LCBwZXJjZW50LCBkaXJlY3Rpb24gKSB7CgkJaWYgKCBwZXJjZW50ID09PSAwICkgewoJCQlyZXR1cm4gewoJCQkJaGVpZ2h0OiAwLAoJCQkJd2lkdGg6IDAsCgkJCQlvdXRlckhlaWdodDogMCwKCQkJCW91dGVyV2lkdGg6IDAKCQkJfTsKCQl9CgoJCXZhciB4ID0gZGlyZWN0aW9uICE9PSAiaG9yaXpvbnRhbCIgPyAoICggcGVyY2VudCB8fCAxMDAgKSAvIDEwMCApIDogMSwKCQkJeSA9IGRpcmVjdGlvbiAhPT0gInZlcnRpY2FsIiA/ICggKCBwZXJjZW50IHx8IDEwMCApIC8gMTAwICkgOiAxOwoKCQlyZXR1cm4gewoJCQloZWlnaHQ6IGVsZW1lbnQuaGVpZ2h0KCkgKiB5LAoJCQl3aWR0aDogZWxlbWVudC53aWR0aCgpICogeCwKCQkJb3V0ZXJIZWlnaHQ6IGVsZW1lbnQub3V0ZXJIZWlnaHQoKSAqIHksCgkJCW91dGVyV2lkdGg6IGVsZW1lbnQub3V0ZXJXaWR0aCgpICogeAoJCX07CgoJfSwKCgljbGlwVG9Cb3g6IGZ1bmN0aW9uKCBhbmltYXRpb24gKSB7CgkJcmV0dXJuIHsKCQkJd2lkdGg6IGFuaW1hdGlvbi5jbGlwLnJpZ2h0IC0gYW5pbWF0aW9uLmNsaXAubGVmdCwKCQkJaGVpZ2h0OiBhbmltYXRpb24uY2xpcC5ib3R0b20gLSBhbmltYXRpb24uY2xpcC50b3AsCgkJCWxlZnQ6IGFuaW1hdGlvbi5jbGlwLmxlZnQsCgkJCXRvcDogYW5pbWF0aW9uLmNsaXAudG9wCgkJfTsKCX0sCgoJLy8gSW5qZWN0cyByZWNlbnRseSBxdWV1ZWQgZnVuY3Rpb25zIHRvIGJlIGZpcnN0IGluIGxpbmUgKGFmdGVyICJpbnByb2dyZXNzIikKCXVuc2hpZnQ6IGZ1bmN0aW9uKCBlbGVtZW50LCBxdWV1ZUxlbmd0aCwgY291bnQgKSB7CgkJdmFyIHF1ZXVlID0gZWxlbWVudC5xdWV1ZSgpOwoKCQlpZiAoIHF1ZXVlTGVuZ3RoID4gMSApIHsKCQkJcXVldWUuc3BsaWNlLmFwcGx5KCBxdWV1ZSwKCQkJCVsgMSwgMCBdLmNvbmNhdCggcXVldWUuc3BsaWNlKCBxdWV1ZUxlbmd0aCwgY291bnQgKSApICk7CgkJfQoJCWVsZW1lbnQuZGVxdWV1ZSgpOwoJfSwKCglzYXZlU3R5bGU6IGZ1bmN0aW9uKCBlbGVtZW50ICkgewoJCWVsZW1lbnQuZGF0YSggZGF0YVNwYWNlU3R5bGUsIGVsZW1lbnRbIDAgXS5zdHlsZS5jc3NUZXh0ICk7Cgl9LAoKCXJlc3RvcmVTdHlsZTogZnVuY3Rpb24oIGVsZW1lbnQgKSB7CgkJZWxlbWVudFsgMCBdLnN0eWxlLmNzc1RleHQgPSBlbGVtZW50LmRhdGEoIGRhdGFTcGFjZVN0eWxlICkgfHwgIiI7CgkJZWxlbWVudC5yZW1vdmVEYXRhKCBkYXRhU3BhY2VTdHlsZSApOwoJfSwKCgltb2RlOiBmdW5jdGlvbiggZWxlbWVudCwgbW9kZSApIHsKCQl2YXIgaGlkZGVuID0gZWxlbWVudC5pcyggIjpoaWRkZW4iICk7CgoJCWlmICggbW9kZSA9PT0gInRvZ2dsZSIgKSB7CgkJCW1vZGUgPSBoaWRkZW4gPyAic2hvdyIgOiAiaGlkZSI7CgkJfQoJCWlmICggaGlkZGVuID8gbW9kZSA9PT0gImhpZGUiIDogbW9kZSA9PT0gInNob3ciICkgewoJCQltb2RlID0gIm5vbmUiOwoJCX0KCQlyZXR1cm4gbW9kZTsKCX0sCgoJLy8gVHJhbnNsYXRlcyBhIFt0b3AsbGVmdF0gYXJyYXkgaW50byBhIGJhc2VsaW5lIHZhbHVlCglnZXRCYXNlbGluZTogZnVuY3Rpb24oIG9yaWdpbiwgb3JpZ2luYWwgKSB7CgkJdmFyIHksIHg7CgoJCXN3aXRjaCAoIG9yaWdpblsgMCBdICkgewoJCWNhc2UgInRvcCI6CgkJCXkgPSAwOwoJCQlicmVhazsKCQljYXNlICJtaWRkbGUiOgoJCQl5ID0gMC41OwoJCQlicmVhazsKCQljYXNlICJib3R0b20iOgoJCQl5ID0gMTsKCQkJYnJlYWs7CgkJZGVmYXVsdDoKCQkJeSA9IG9yaWdpblsgMCBdIC8gb3JpZ2luYWwuaGVpZ2h0OwoJCX0KCgkJc3dpdGNoICggb3JpZ2luWyAxIF0gKSB7CgkJY2FzZSAibGVmdCI6CgkJCXggPSAwOwoJCQlicmVhazsKCQljYXNlICJjZW50ZXIiOgoJCQl4ID0gMC41OwoJCQlicmVhazsKCQljYXNlICJyaWdodCI6CgkJCXggPSAxOwoJCQlicmVhazsKCQlkZWZhdWx0OgoJCQl4ID0gb3JpZ2luWyAxIF0gLyBvcmlnaW5hbC53aWR0aDsKCQl9CgoJCXJldHVybiB7CgkJCXg6IHgsCgkJCXk6IHkKCQl9OwoJfSwKCgkvLyBDcmVhdGVzIGEgcGxhY2Vob2xkZXIgZWxlbWVudCBzbyB0aGF0IHRoZSBvcmlnaW5hbCBlbGVtZW50IGNhbiBiZSBtYWRlIGFic29sdXRlCgljcmVhdGVQbGFjZWhvbGRlcjogZnVuY3Rpb24oIGVsZW1lbnQgKSB7CgkJdmFyIHBsYWNlaG9sZGVyLAoJCQljc3NQb3NpdGlvbiA9IGVsZW1lbnQuY3NzKCAicG9zaXRpb24iICksCgkJCXBvc2l0aW9uID0gZWxlbWVudC5wb3NpdGlvbigpOwoKCQkvLyBMb2NrIGluIG1hcmdpbnMgZmlyc3QgdG8gYWNjb3VudCBmb3IgZm9ybSBlbGVtZW50cywgd2hpY2gKCQkvLyB3aWxsIGNoYW5nZSBtYXJnaW4gaWYgeW91IGV4cGxpY2l0bHkgc2V0IGhlaWdodAoJCS8vIHNlZTogaHR0cDovL2pzZmlkZGxlLm5ldC9KWlNNdC8zLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA3MzgwCgkJLy8gU3VwcG9ydDogU2FmYXJpCgkJZWxlbWVudC5jc3MoIHsKCQkJbWFyZ2luVG9wOiBlbGVtZW50LmNzcyggIm1hcmdpblRvcCIgKSwKCQkJbWFyZ2luQm90dG9tOiBlbGVtZW50LmNzcyggIm1hcmdpbkJvdHRvbSIgKSwKCQkJbWFyZ2luTGVmdDogZWxlbWVudC5jc3MoICJtYXJnaW5MZWZ0IiApLAoJCQltYXJnaW5SaWdodDogZWxlbWVudC5jc3MoICJtYXJnaW5SaWdodCIgKQoJCX0gKQoJCS5vdXRlcldpZHRoKCBlbGVtZW50Lm91dGVyV2lkdGgoKSApCgkJLm91dGVySGVpZ2h0KCBlbGVtZW50Lm91dGVySGVpZ2h0KCkgKTsKCgkJaWYgKCAvXihzdGF0aWN8cmVsYXRpdmUpLy50ZXN0KCBjc3NQb3NpdGlvbiApICkgewoJCQljc3NQb3NpdGlvbiA9ICJhYnNvbHV0ZSI7CgoJCQlwbGFjZWhvbGRlciA9ICQoICI8IiArIGVsZW1lbnRbIDAgXS5ub2RlTmFtZSArICI+IiApLmluc2VydEFmdGVyKCBlbGVtZW50ICkuY3NzKCB7CgoJCQkJLy8gQ29udmVydCBpbmxpbmUgdG8gaW5saW5lIGJsb2NrIHRvIGFjY291bnQgZm9yIGlubGluZSBlbGVtZW50cwoJCQkJLy8gdGhhdCB0dXJuIHRvIGlubGluZSBibG9jayBiYXNlZCBvbiBjb250ZW50IChsaWtlIGltZykKCQkJCWRpc3BsYXk6IC9eKGlubGluZXxydWJ5KS8udGVzdCggZWxlbWVudC5jc3MoICJkaXNwbGF5IiApICkgPwoJCQkJCSJpbmxpbmUtYmxvY2siIDoKCQkJCQkiYmxvY2siLAoJCQkJdmlzaWJpbGl0eTogImhpZGRlbiIsCgoJCQkJLy8gTWFyZ2lucyBuZWVkIHRvIGJlIHNldCB0byBhY2NvdW50IGZvciBtYXJnaW4gY29sbGFwc2UKCQkJCW1hcmdpblRvcDogZWxlbWVudC5jc3MoICJtYXJnaW5Ub3AiICksCgkJCQltYXJnaW5Cb3R0b206IGVsZW1lbnQuY3NzKCAibWFyZ2luQm90dG9tIiApLAoJCQkJbWFyZ2luTGVmdDogZWxlbWVudC5jc3MoICJtYXJnaW5MZWZ0IiApLAoJCQkJbWFyZ2luUmlnaHQ6IGVsZW1lbnQuY3NzKCAibWFyZ2luUmlnaHQiICksCgkJCQkiZmxvYXQiOiBlbGVtZW50LmNzcyggImZsb2F0IiApCgkJCX0gKQoJCQkub3V0ZXJXaWR0aCggZWxlbWVudC5vdXRlcldpZHRoKCkgKQoJCQkub3V0ZXJIZWlnaHQoIGVsZW1lbnQub3V0ZXJIZWlnaHQoKSApCgkJCS5hZGRDbGFzcyggInVpLWVmZmVjdHMtcGxhY2Vob2xkZXIiICk7CgoJCQllbGVtZW50LmRhdGEoIGRhdGFTcGFjZSArICJwbGFjZWhvbGRlciIsIHBsYWNlaG9sZGVyICk7CgkJfQoKCQllbGVtZW50LmNzcyggewoJCQlwb3NpdGlvbjogY3NzUG9zaXRpb24sCgkJCWxlZnQ6IHBvc2l0aW9uLmxlZnQsCgkJCXRvcDogcG9zaXRpb24udG9wCgkJfSApOwoKCQlyZXR1cm4gcGxhY2Vob2xkZXI7Cgl9LAoKCXJlbW92ZVBsYWNlaG9sZGVyOiBmdW5jdGlvbiggZWxlbWVudCApIHsKCQl2YXIgZGF0YUtleSA9IGRhdGFTcGFjZSArICJwbGFjZWhvbGRlciIsCgkJCQlwbGFjZWhvbGRlciA9IGVsZW1lbnQuZGF0YSggZGF0YUtleSApOwoKCQlpZiAoIHBsYWNlaG9sZGVyICkgewoJCQlwbGFjZWhvbGRlci5yZW1vdmUoKTsKCQkJZWxlbWVudC5yZW1vdmVEYXRhKCBkYXRhS2V5ICk7CgkJfQoJfSwKCgkvLyBSZW1vdmVzIGEgcGxhY2Vob2xkZXIgaWYgaXQgZXhpc3RzIGFuZCByZXN0b3JlcwoJLy8gcHJvcGVydGllcyB0aGF0IHdlcmUgbW9kaWZpZWQgZHVyaW5nIHBsYWNlaG9sZGVyIGNyZWF0aW9uCgljbGVhblVwOiBmdW5jdGlvbiggZWxlbWVudCApIHsKCQkkLmVmZmVjdHMucmVzdG9yZVN0eWxlKCBlbGVtZW50ICk7CgkJJC5lZmZlY3RzLnJlbW92ZVBsYWNlaG9sZGVyKCBlbGVtZW50ICk7Cgl9LAoKCXNldFRyYW5zaXRpb246IGZ1bmN0aW9uKCBlbGVtZW50LCBsaXN0LCBmYWN0b3IsIHZhbHVlICkgewoJCXZhbHVlID0gdmFsdWUgfHwge307CgkJJC5lYWNoKCBsaXN0LCBmdW5jdGlvbiggaSwgeCApIHsKCQkJdmFyIHVuaXQgPSBlbGVtZW50LmNzc1VuaXQoIHggKTsKCQkJaWYgKCB1bml0WyAwIF0gPiAwICkgewoJCQkJdmFsdWVbIHggXSA9IHVuaXRbIDAgXSAqIGZhY3RvciArIHVuaXRbIDEgXTsKCQkJfQoJCX0gKTsKCQlyZXR1cm4gdmFsdWU7Cgl9Cn0gKTsKCi8vIFJldHVybiBhbiBlZmZlY3Qgb3B0aW9ucyBvYmplY3QgZm9yIHRoZSBnaXZlbiBwYXJhbWV0ZXJzOgpmdW5jdGlvbiBfbm9ybWFsaXplQXJndW1lbnRzKCBlZmZlY3QsIG9wdGlvbnMsIHNwZWVkLCBjYWxsYmFjayApIHsKCgkvLyBBbGxvdyBwYXNzaW5nIGFsbCBvcHRpb25zIGFzIHRoZSBmaXJzdCBwYXJhbWV0ZXIKCWlmICggJC5pc1BsYWluT2JqZWN0KCBlZmZlY3QgKSApIHsKCQlvcHRpb25zID0gZWZmZWN0OwoJCWVmZmVjdCA9IGVmZmVjdC5lZmZlY3Q7Cgl9CgoJLy8gQ29udmVydCB0byBhbiBvYmplY3QKCWVmZmVjdCA9IHsgZWZmZWN0OiBlZmZlY3QgfTsKCgkvLyBDYXRjaCAoZWZmZWN0LCBudWxsLCAuLi4pCglpZiAoIG9wdGlvbnMgPT0gbnVsbCApIHsKCQlvcHRpb25zID0ge307Cgl9CgoJLy8gQ2F0Y2ggKGVmZmVjdCwgY2FsbGJhY2spCglpZiAoICQuaXNGdW5jdGlvbiggb3B0aW9ucyApICkgewoJCWNhbGxiYWNrID0gb3B0aW9uczsKCQlzcGVlZCA9IG51bGw7CgkJb3B0aW9ucyA9IHt9OwoJfQoKCS8vIENhdGNoIChlZmZlY3QsIHNwZWVkLCA/KQoJaWYgKCB0eXBlb2Ygb3B0aW9ucyA9PT0gIm51bWJlciIgfHwgJC5meC5zcGVlZHNbIG9wdGlvbnMgXSApIHsKCQljYWxsYmFjayA9IHNwZWVkOwoJCXNwZWVkID0gb3B0aW9uczsKCQlvcHRpb25zID0ge307Cgl9CgoJLy8gQ2F0Y2ggKGVmZmVjdCwgb3B0aW9ucywgY2FsbGJhY2spCglpZiAoICQuaXNGdW5jdGlvbiggc3BlZWQgKSApIHsKCQljYWxsYmFjayA9IHNwZWVkOwoJCXNwZWVkID0gbnVsbDsKCX0KCgkvLyBBZGQgb3B0aW9ucyB0byBlZmZlY3QKCWlmICggb3B0aW9ucyApIHsKCQkkLmV4dGVuZCggZWZmZWN0LCBvcHRpb25zICk7Cgl9CgoJc3BlZWQgPSBzcGVlZCB8fCBvcHRpb25zLmR1cmF0aW9uOwoJZWZmZWN0LmR1cmF0aW9uID0gJC5meC5vZmYgPyAwIDoKCQl0eXBlb2Ygc3BlZWQgPT09ICJudW1iZXIiID8gc3BlZWQgOgoJCXNwZWVkIGluICQuZnguc3BlZWRzID8gJC5meC5zcGVlZHNbIHNwZWVkIF0gOgoJCSQuZnguc3BlZWRzLl9kZWZhdWx0OwoKCWVmZmVjdC5jb21wbGV0ZSA9IGNhbGxiYWNrIHx8IG9wdGlvbnMuY29tcGxldGU7CgoJcmV0dXJuIGVmZmVjdDsKfQoKZnVuY3Rpb24gc3RhbmRhcmRBbmltYXRpb25PcHRpb24oIG9wdGlvbiApIHsKCgkvLyBWYWxpZCBzdGFuZGFyZCBzcGVlZHMgKG5vdGhpbmcsIG51bWJlciwgbmFtZWQgc3BlZWQpCglpZiAoICFvcHRpb24gfHwgdHlwZW9mIG9wdGlvbiA9PT0gIm51bWJlciIgfHwgJC5meC5zcGVlZHNbIG9wdGlvbiBdICkgewoJCXJldHVybiB0cnVlOwoJfQoKCS8vIEludmFsaWQgc3RyaW5ncyAtIHRyZWF0IGFzICJub3JtYWwiIHNwZWVkCglpZiAoIHR5cGVvZiBvcHRpb24gPT09ICJzdHJpbmciICYmICEkLmVmZmVjdHMuZWZmZWN0WyBvcHRpb24gXSApIHsKCQlyZXR1cm4gdHJ1ZTsKCX0KCgkvLyBDb21wbGV0ZSBjYWxsYmFjawoJaWYgKCAkLmlzRnVuY3Rpb24oIG9wdGlvbiApICkgewoJCXJldHVybiB0cnVlOwoJfQoKCS8vIE9wdGlvbnMgaGFzaCAoYnV0IG5vdCBuYW1pbmcgYW4gZWZmZWN0KQoJaWYgKCB0eXBlb2Ygb3B0aW9uID09PSAib2JqZWN0IiAmJiAhb3B0aW9uLmVmZmVjdCApIHsKCQlyZXR1cm4gdHJ1ZTsKCX0KCgkvLyBEaWRuJ3QgbWF0Y2ggYW55IHN0YW5kYXJkIEFQSQoJcmV0dXJuIGZhbHNlOwp9CgokLmZuLmV4dGVuZCggewoJZWZmZWN0OiBmdW5jdGlvbiggLyogZWZmZWN0LCBvcHRpb25zLCBzcGVlZCwgY2FsbGJhY2sgKi8gKSB7CgkJdmFyIGFyZ3MgPSBfbm9ybWFsaXplQXJndW1lbnRzLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKSwKCQkJZWZmZWN0TWV0aG9kID0gJC5lZmZlY3RzLmVmZmVjdFsgYXJncy5lZmZlY3QgXSwKCQkJZGVmYXVsdE1vZGUgPSBlZmZlY3RNZXRob2QubW9kZSwKCQkJcXVldWUgPSBhcmdzLnF1ZXVlLAoJCQlxdWV1ZU5hbWUgPSBxdWV1ZSB8fCAiZngiLAoJCQljb21wbGV0ZSA9IGFyZ3MuY29tcGxldGUsCgkJCW1vZGUgPSBhcmdzLm1vZGUsCgkJCW1vZGVzID0gW10sCgkJCXByZWZpbHRlciA9IGZ1bmN0aW9uKCBuZXh0ICkgewoJCQkJdmFyIGVsID0gJCggdGhpcyApLAoJCQkJCW5vcm1hbGl6ZWRNb2RlID0gJC5lZmZlY3RzLm1vZGUoIGVsLCBtb2RlICkgfHwgZGVmYXVsdE1vZGU7CgoJCQkJLy8gU2VudGluZWwgZm9yIGR1Y2stcHVuY2hpbmcgdGhlIDphbmltYXRlZCBwc3VlZG8tc2VsZWN0b3IKCQkJCWVsLmRhdGEoIGRhdGFTcGFjZUFuaW1hdGVkLCB0cnVlICk7CgoJCQkJLy8gU2F2ZSBlZmZlY3QgbW9kZSBmb3IgbGF0ZXIgdXNlLAoJCQkJLy8gd2UgY2FuJ3QganVzdCBjYWxsICQuZWZmZWN0cy5tb2RlIGFnYWluIGxhdGVyLAoJCQkJLy8gYXMgdGhlIC5zaG93KCkgYmVsb3cgZGVzdHJveXMgdGhlIGluaXRpYWwgc3RhdGUKCQkJCW1vZGVzLnB1c2goIG5vcm1hbGl6ZWRNb2RlICk7CgoJCQkJLy8gU2VlICQudWlCYWNrQ29tcGF0IGluc2lkZSBvZiBydW4oKSBmb3IgcmVtb3ZhbCBvZiBkZWZhdWx0TW9kZSBpbiAxLjEzCgkJCQlpZiAoIGRlZmF1bHRNb2RlICYmICggbm9ybWFsaXplZE1vZGUgPT09ICJzaG93IiB8fAoJCQkJCQkoIG5vcm1hbGl6ZWRNb2RlID09PSBkZWZhdWx0TW9kZSAmJiBub3JtYWxpemVkTW9kZSA9PT0gImhpZGUiICkgKSApIHsKCQkJCQllbC5zaG93KCk7CgkJCQl9CgoJCQkJaWYgKCAhZGVmYXVsdE1vZGUgfHwgbm9ybWFsaXplZE1vZGUgIT09ICJub25lIiApIHsKCQkJCQkkLmVmZmVjdHMuc2F2ZVN0eWxlKCBlbCApOwoJCQkJfQoKCQkJCWlmICggJC5pc0Z1bmN0aW9uKCBuZXh0ICkgKSB7CgkJCQkJbmV4dCgpOwoJCQkJfQoJCQl9OwoKCQlpZiAoICQuZngub2ZmIHx8ICFlZmZlY3RNZXRob2QgKSB7CgoJCQkvLyBEZWxlZ2F0ZSB0byB0aGUgb3JpZ2luYWwgbWV0aG9kIChlLmcuLCAuc2hvdygpKSBpZiBwb3NzaWJsZQoJCQlpZiAoIG1vZGUgKSB7CgkJCQlyZXR1cm4gdGhpc1sgbW9kZSBdKCBhcmdzLmR1cmF0aW9uLCBjb21wbGV0ZSApOwoJCQl9IGVsc2UgewoJCQkJcmV0dXJuIHRoaXMuZWFjaCggZnVuY3Rpb24oKSB7CgkJCQkJaWYgKCBjb21wbGV0ZSApIHsKCQkJCQkJY29tcGxldGUuY2FsbCggdGhpcyApOwoJCQkJCX0KCQkJCX0gKTsKCQkJfQoJCX0KCgkJZnVuY3Rpb24gcnVuKCBuZXh0ICkgewoJCQl2YXIgZWxlbSA9ICQoIHRoaXMgKTsKCgkJCWZ1bmN0aW9uIGNsZWFudXAoKSB7CgkJCQllbGVtLnJlbW92ZURhdGEoIGRhdGFTcGFjZUFuaW1hdGVkICk7CgoJCQkJJC5lZmZlY3RzLmNsZWFuVXAoIGVsZW0gKTsKCgkJCQlpZiAoIGFyZ3MubW9kZSA9PT0gImhpZGUiICkgewoJCQkJCWVsZW0uaGlkZSgpOwoJCQkJfQoKCQkJCWRvbmUoKTsKCQkJfQoKCQkJZnVuY3Rpb24gZG9uZSgpIHsKCQkJCWlmICggJC5pc0Z1bmN0aW9uKCBjb21wbGV0ZSApICkgewoJCQkJCWNvbXBsZXRlLmNhbGwoIGVsZW1bIDAgXSApOwoJCQkJfQoKCQkJCWlmICggJC5pc0Z1bmN0aW9uKCBuZXh0ICkgKSB7CgkJCQkJbmV4dCgpOwoJCQkJfQoJCQl9CgoJCQkvLyBPdmVycmlkZSBtb2RlIG9wdGlvbiBvbiBhIHBlciBlbGVtZW50IGJhc2lzLAoJCQkvLyBhcyB0b2dnbGUgY2FuIGJlIGVpdGhlciBzaG93IG9yIGhpZGUgZGVwZW5kaW5nIG9uIGVsZW1lbnQgc3RhdGUKCQkJYXJncy5tb2RlID0gbW9kZXMuc2hpZnQoKTsKCgkJCWlmICggJC51aUJhY2tDb21wYXQgIT09IGZhbHNlICYmICFkZWZhdWx0TW9kZSApIHsKCQkJCWlmICggZWxlbS5pcyggIjpoaWRkZW4iICkgPyBtb2RlID09PSAiaGlkZSIgOiBtb2RlID09PSAic2hvdyIgKSB7CgoJCQkJCS8vIENhbGwgdGhlIGNvcmUgbWV0aG9kIHRvIHRyYWNrICJvbGRkaXNwbGF5IiBwcm9wZXJseQoJCQkJCWVsZW1bIG1vZGUgXSgpOwoJCQkJCWRvbmUoKTsKCQkJCX0gZWxzZSB7CgkJCQkJZWZmZWN0TWV0aG9kLmNhbGwoIGVsZW1bIDAgXSwgYXJncywgZG9uZSApOwoJCQkJfQoJCQl9IGVsc2UgewoJCQkJaWYgKCBhcmdzLm1vZGUgPT09ICJub25lIiApIHsKCgkJCQkJLy8gQ2FsbCB0aGUgY29yZSBtZXRob2QgdG8gdHJhY2sgIm9sZGRpc3BsYXkiIHByb3Blcmx5CgkJCQkJZWxlbVsgbW9kZSBdKCk7CgkJCQkJZG9uZSgpOwoJCQkJfSBlbHNlIHsKCQkJCQllZmZlY3RNZXRob2QuY2FsbCggZWxlbVsgMCBdLCBhcmdzLCBjbGVhbnVwICk7CgkJCQl9CgkJCX0KCQl9CgoJCS8vIFJ1biBwcmVmaWx0ZXIgb24gYWxsIGVsZW1lbnRzIGZpcnN0IHRvIGVuc3VyZSB0aGF0CgkJLy8gYW55IHNob3dpbmcgb3IgaGlkaW5nIGhhcHBlbnMgYmVmb3JlIHBsYWNlaG9sZGVyIGNyZWF0aW9uLAoJCS8vIHdoaWNoIGVuc3VyZXMgdGhhdCBhbnkgbGF5b3V0IGNoYW5nZXMgYXJlIGNvcnJlY3RseSBjYXB0dXJlZC4KCQlyZXR1cm4gcXVldWUgPT09IGZhbHNlID8KCQkJdGhpcy5lYWNoKCBwcmVmaWx0ZXIgKS5lYWNoKCBydW4gKSA6CgkJCXRoaXMucXVldWUoIHF1ZXVlTmFtZSwgcHJlZmlsdGVyICkucXVldWUoIHF1ZXVlTmFtZSwgcnVuICk7Cgl9LAoKCXNob3c6ICggZnVuY3Rpb24oIG9yaWcgKSB7CgkJcmV0dXJuIGZ1bmN0aW9uKCBvcHRpb24gKSB7CgkJCWlmICggc3RhbmRhcmRBbmltYXRpb25PcHRpb24oIG9wdGlvbiApICkgewoJCQkJcmV0dXJuIG9yaWcuYXBwbHkoIHRoaXMsIGFyZ3VtZW50cyApOwoJCQl9IGVsc2UgewoJCQkJdmFyIGFyZ3MgPSBfbm9ybWFsaXplQXJndW1lbnRzLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKTsKCQkJCWFyZ3MubW9kZSA9ICJzaG93IjsKCQkJCXJldHVybiB0aGlzLmVmZmVjdC5jYWxsKCB0aGlzLCBhcmdzICk7CgkJCX0KCQl9OwoJfSApKCAkLmZuLnNob3cgKSwKCgloaWRlOiAoIGZ1bmN0aW9uKCBvcmlnICkgewoJCXJldHVybiBmdW5jdGlvbiggb3B0aW9uICkgewoJCQlpZiAoIHN0YW5kYXJkQW5pbWF0aW9uT3B0aW9uKCBvcHRpb24gKSApIHsKCQkJCXJldHVybiBvcmlnLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKTsKCQkJfSBlbHNlIHsKCQkJCXZhciBhcmdzID0gX25vcm1hbGl6ZUFyZ3VtZW50cy5hcHBseSggdGhpcywgYXJndW1lbnRzICk7CgkJCQlhcmdzLm1vZGUgPSAiaGlkZSI7CgkJCQlyZXR1cm4gdGhpcy5lZmZlY3QuY2FsbCggdGhpcywgYXJncyApOwoJCQl9CgkJfTsKCX0gKSggJC5mbi5oaWRlICksCgoJdG9nZ2xlOiAoIGZ1bmN0aW9uKCBvcmlnICkgewoJCXJldHVybiBmdW5jdGlvbiggb3B0aW9uICkgewoJCQlpZiAoIHN0YW5kYXJkQW5pbWF0aW9uT3B0aW9uKCBvcHRpb24gKSB8fCB0eXBlb2Ygb3B0aW9uID09PSAiYm9vbGVhbiIgKSB7CgkJCQlyZXR1cm4gb3JpZy5hcHBseSggdGhpcywgYXJndW1lbnRzICk7CgkJCX0gZWxzZSB7CgkJCQl2YXIgYXJncyA9IF9ub3JtYWxpemVBcmd1bWVudHMuYXBwbHkoIHRoaXMsIGFyZ3VtZW50cyApOwoJCQkJYXJncy5tb2RlID0gInRvZ2dsZSI7CgkJCQlyZXR1cm4gdGhpcy5lZmZlY3QuY2FsbCggdGhpcywgYXJncyApOwoJCQl9CgkJfTsKCX0gKSggJC5mbi50b2dnbGUgKSwKCgljc3NVbml0OiBmdW5jdGlvbigga2V5ICkgewoJCXZhciBzdHlsZSA9IHRoaXMuY3NzKCBrZXkgKSwKCQkJdmFsID0gW107CgoJCSQuZWFjaCggWyAiZW0iLCAicHgiLCAiJSIsICJwdCIgXSwgZnVuY3Rpb24oIGksIHVuaXQgKSB7CgkJCWlmICggc3R5bGUuaW5kZXhPZiggdW5pdCApID4gMCApIHsKCQkJCXZhbCA9IFsgcGFyc2VGbG9hdCggc3R5bGUgKSwgdW5pdCBdOwoJCQl9CgkJfSApOwoJCXJldHVybiB2YWw7Cgl9LAoKCWNzc0NsaXA6IGZ1bmN0aW9uKCBjbGlwT2JqICkgewoJCWlmICggY2xpcE9iaiApIHsKCQkJcmV0dXJuIHRoaXMuY3NzKCAiY2xpcCIsICJyZWN0KCIgKyBjbGlwT2JqLnRvcCArICJweCAiICsgY2xpcE9iai5yaWdodCArICJweCAiICsKCQkJCWNsaXBPYmouYm90dG9tICsgInB4ICIgKyBjbGlwT2JqLmxlZnQgKyAicHgpIiApOwoJCX0KCQlyZXR1cm4gcGFyc2VDbGlwKCB0aGlzLmNzcyggImNsaXAiICksIHRoaXMgKTsKCX0sCgoJdHJhbnNmZXI6IGZ1bmN0aW9uKCBvcHRpb25zLCBkb25lICkgewoJCXZhciBlbGVtZW50ID0gJCggdGhpcyApLAoJCQl0YXJnZXQgPSAkKCBvcHRpb25zLnRvICksCgkJCXRhcmdldEZpeGVkID0gdGFyZ2V0LmNzcyggInBvc2l0aW9uIiApID09PSAiZml4ZWQiLAoJCQlib2R5ID0gJCggImJvZHkiICksCgkJCWZpeFRvcCA9IHRhcmdldEZpeGVkID8gYm9keS5zY3JvbGxUb3AoKSA6IDAsCgkJCWZpeExlZnQgPSB0YXJnZXRGaXhlZCA/IGJvZHkuc2Nyb2xsTGVmdCgpIDogMCwKCQkJZW5kUG9zaXRpb24gPSB0YXJnZXQub2Zmc2V0KCksCgkJCWFuaW1hdGlvbiA9IHsKCQkJCXRvcDogZW5kUG9zaXRpb24udG9wIC0gZml4VG9wLAoJCQkJbGVmdDogZW5kUG9zaXRpb24ubGVmdCAtIGZpeExlZnQsCgkJCQloZWlnaHQ6IHRhcmdldC5pbm5lckhlaWdodCgpLAoJCQkJd2lkdGg6IHRhcmdldC5pbm5lcldpZHRoKCkKCQkJfSwKCQkJc3RhcnRQb3NpdGlvbiA9IGVsZW1lbnQub2Zmc2V0KCksCgkJCXRyYW5zZmVyID0gJCggIjxkaXYgY2xhc3M9J3VpLWVmZmVjdHMtdHJhbnNmZXInPjwvZGl2PiIgKQoJCQkJLmFwcGVuZFRvKCAiYm9keSIgKQoJCQkJLmFkZENsYXNzKCBvcHRpb25zLmNsYXNzTmFtZSApCgkJCQkuY3NzKCB7CgkJCQkJdG9wOiBzdGFydFBvc2l0aW9uLnRvcCAtIGZpeFRvcCwKCQkJCQlsZWZ0OiBzdGFydFBvc2l0aW9uLmxlZnQgLSBmaXhMZWZ0LAoJCQkJCWhlaWdodDogZWxlbWVudC5pbm5lckhlaWdodCgpLAoJCQkJCXdpZHRoOiBlbGVtZW50LmlubmVyV2lkdGgoKSwKCQkJCQlwb3NpdGlvbjogdGFyZ2V0Rml4ZWQgPyAiZml4ZWQiIDogImFic29sdXRlIgoJCQkJfSApCgkJCQkuYW5pbWF0ZSggYW5pbWF0aW9uLCBvcHRpb25zLmR1cmF0aW9uLCBvcHRpb25zLmVhc2luZywgZnVuY3Rpb24oKSB7CgkJCQkJdHJhbnNmZXIucmVtb3ZlKCk7CgkJCQkJaWYgKCAkLmlzRnVuY3Rpb24oIGRvbmUgKSApIHsKCQkJCQkJZG9uZSgpOwoJCQkJCX0KCQkJCX0gKTsKCX0KfSApOwoKZnVuY3Rpb24gcGFyc2VDbGlwKCBzdHIsIGVsZW1lbnQgKSB7CgkJdmFyIG91dGVyV2lkdGggPSBlbGVtZW50Lm91dGVyV2lkdGgoKSwKCQkJb3V0ZXJIZWlnaHQgPSBlbGVtZW50Lm91dGVySGVpZ2h0KCksCgkJCWNsaXBSZWdleCA9IC9ecmVjdFwoKC0/XGQqXC4/XGQqcHh8LT9cZCslfGF1dG8pLD9ccyooLT9cZCpcLj9cZCpweHwtP1xkKyV8YXV0byksP1xzKigtP1xkKlwuP1xkKnB4fC0/XGQrJXxhdXRvKSw/XHMqKC0/XGQqXC4/XGQqcHh8LT9cZCslfGF1dG8pXCkkLywKCQkJdmFsdWVzID0gY2xpcFJlZ2V4LmV4ZWMoIHN0ciApIHx8IFsgIiIsIDAsIG91dGVyV2lkdGgsIG91dGVySGVpZ2h0LCAwIF07CgoJCXJldHVybiB7CgkJCXRvcDogcGFyc2VGbG9hdCggdmFsdWVzWyAxIF0gKSB8fCAwLAoJCQlyaWdodDogdmFsdWVzWyAyIF0gPT09ICJhdXRvIiA/IG91dGVyV2lkdGggOiBwYXJzZUZsb2F0KCB2YWx1ZXNbIDIgXSApLAoJCQlib3R0b206IHZhbHVlc1sgMyBdID09PSAiYXV0byIgPyBvdXRlckhlaWdodCA6IHBhcnNlRmxvYXQoIHZhbHVlc1sgMyBdICksCgkJCWxlZnQ6IHBhcnNlRmxvYXQoIHZhbHVlc1sgNCBdICkgfHwgMAoJCX07Cn0KCiQuZnguc3RlcC5jbGlwID0gZnVuY3Rpb24oIGZ4ICkgewoJaWYgKCAhZnguY2xpcEluaXQgKSB7CgkJZnguc3RhcnQgPSAkKCBmeC5lbGVtICkuY3NzQ2xpcCgpOwoJCWlmICggdHlwZW9mIGZ4LmVuZCA9PT0gInN0cmluZyIgKSB7CgkJCWZ4LmVuZCA9IHBhcnNlQ2xpcCggZnguZW5kLCBmeC5lbGVtICk7CgkJfQoJCWZ4LmNsaXBJbml0ID0gdHJ1ZTsKCX0KCgkkKCBmeC5lbGVtICkuY3NzQ2xpcCggewoJCXRvcDogZngucG9zICogKCBmeC5lbmQudG9wIC0gZnguc3RhcnQudG9wICkgKyBmeC5zdGFydC50b3AsCgkJcmlnaHQ6IGZ4LnBvcyAqICggZnguZW5kLnJpZ2h0IC0gZnguc3RhcnQucmlnaHQgKSArIGZ4LnN0YXJ0LnJpZ2h0LAoJCWJvdHRvbTogZngucG9zICogKCBmeC5lbmQuYm90dG9tIC0gZnguc3RhcnQuYm90dG9tICkgKyBmeC5zdGFydC5ib3R0b20sCgkJbGVmdDogZngucG9zICogKCBmeC5lbmQubGVmdCAtIGZ4LnN0YXJ0LmxlZnQgKSArIGZ4LnN0YXJ0LmxlZnQKCX0gKTsKfTsKCn0gKSgpOwoKLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIEVBU0lORyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KCiggZnVuY3Rpb24oKSB7CgovLyBCYXNlZCBvbiBlYXNpbmcgZXF1YXRpb25zIGZyb20gUm9iZXJ0IFBlbm5lciAoaHR0cDovL3d3dy5yb2JlcnRwZW5uZXIuY29tL2Vhc2luZykKCnZhciBiYXNlRWFzaW5ncyA9IHt9OwoKJC5lYWNoKCBbICJRdWFkIiwgIkN1YmljIiwgIlF1YXJ0IiwgIlF1aW50IiwgIkV4cG8iIF0sIGZ1bmN0aW9uKCBpLCBuYW1lICkgewoJYmFzZUVhc2luZ3NbIG5hbWUgXSA9IGZ1bmN0aW9uKCBwICkgewoJCXJldHVybiBNYXRoLnBvdyggcCwgaSArIDIgKTsKCX07Cn0gKTsKCiQuZXh0ZW5kKCBiYXNlRWFzaW5ncywgewoJU2luZTogZnVuY3Rpb24oIHAgKSB7CgkJcmV0dXJuIDEgLSBNYXRoLmNvcyggcCAqIE1hdGguUEkgLyAyICk7Cgl9LAoJQ2lyYzogZnVuY3Rpb24oIHAgKSB7CgkJcmV0dXJuIDEgLSBNYXRoLnNxcnQoIDEgLSBwICogcCApOwoJfSwKCUVsYXN0aWM6IGZ1bmN0aW9uKCBwICkgewoJCXJldHVybiBwID09PSAwIHx8IHAgPT09IDEgPyBwIDoKCQkJLU1hdGgucG93KCAyLCA4ICogKCBwIC0gMSApICkgKiBNYXRoLnNpbiggKCAoIHAgLSAxICkgKiA4MCAtIDcuNSApICogTWF0aC5QSSAvIDE1ICk7Cgl9LAoJQmFjazogZnVuY3Rpb24oIHAgKSB7CgkJcmV0dXJuIHAgKiBwICogKCAzICogcCAtIDIgKTsKCX0sCglCb3VuY2U6IGZ1bmN0aW9uKCBwICkgewoJCXZhciBwb3cyLAoJCQlib3VuY2UgPSA0OwoKCQl3aGlsZSAoIHAgPCAoICggcG93MiA9IE1hdGgucG93KCAyLCAtLWJvdW5jZSApICkgLSAxICkgLyAxMSApIHt9CgkJcmV0dXJuIDEgLyBNYXRoLnBvdyggNCwgMyAtIGJvdW5jZSApIC0gNy41NjI1ICogTWF0aC5wb3coICggcG93MiAqIDMgLSAyICkgLyAyMiAtIHAsIDIgKTsKCX0KfSApOwoKJC5lYWNoKCBiYXNlRWFzaW5ncywgZnVuY3Rpb24oIG5hbWUsIGVhc2VJbiApIHsKCSQuZWFzaW5nWyAiZWFzZUluIiArIG5hbWUgXSA9IGVhc2VJbjsKCSQuZWFzaW5nWyAiZWFzZU91dCIgKyBuYW1lIF0gPSBmdW5jdGlvbiggcCApIHsKCQlyZXR1cm4gMSAtIGVhc2VJbiggMSAtIHAgKTsKCX07CgkkLmVhc2luZ1sgImVhc2VJbk91dCIgKyBuYW1lIF0gPSBmdW5jdGlvbiggcCApIHsKCQlyZXR1cm4gcCA8IDAuNSA/CgkJCWVhc2VJbiggcCAqIDIgKSAvIDIgOgoJCQkxIC0gZWFzZUluKCBwICogLTIgKyAyICkgLyAyOwoJfTsKfSApOwoKfSApKCk7Cgp2YXIgZWZmZWN0ID0gJC5lZmZlY3RzOwoKCi8qIQogKiBqUXVlcnkgVUkgRWZmZWN0cyBCbGluZCAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IEJsaW5kIEVmZmVjdAovLz4+Z3JvdXA6IEVmZmVjdHMKLy8+PmRlc2NyaXB0aW9uOiBCbGluZHMgdGhlIGVsZW1lbnQuCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9ibGluZC1lZmZlY3QvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9lZmZlY3QvCgoKCnZhciBlZmZlY3RzRWZmZWN0QmxpbmQgPSAkLmVmZmVjdHMuZGVmaW5lKCAiYmxpbmQiLCAiaGlkZSIsIGZ1bmN0aW9uKCBvcHRpb25zLCBkb25lICkgewoJdmFyIG1hcCA9IHsKCQkJdXA6IFsgImJvdHRvbSIsICJ0b3AiIF0sCgkJCXZlcnRpY2FsOiBbICJib3R0b20iLCAidG9wIiBdLAoJCQlkb3duOiBbICJ0b3AiLCAiYm90dG9tIiBdLAoJCQlsZWZ0OiBbICJyaWdodCIsICJsZWZ0IiBdLAoJCQlob3Jpem9udGFsOiBbICJyaWdodCIsICJsZWZ0IiBdLAoJCQlyaWdodDogWyAibGVmdCIsICJyaWdodCIgXQoJCX0sCgkJZWxlbWVudCA9ICQoIHRoaXMgKSwKCQlkaXJlY3Rpb24gPSBvcHRpb25zLmRpcmVjdGlvbiB8fCAidXAiLAoJCXN0YXJ0ID0gZWxlbWVudC5jc3NDbGlwKCksCgkJYW5pbWF0ZSA9IHsgY2xpcDogJC5leHRlbmQoIHt9LCBzdGFydCApIH0sCgkJcGxhY2Vob2xkZXIgPSAkLmVmZmVjdHMuY3JlYXRlUGxhY2Vob2xkZXIoIGVsZW1lbnQgKTsKCglhbmltYXRlLmNsaXBbIG1hcFsgZGlyZWN0aW9uIF1bIDAgXSBdID0gYW5pbWF0ZS5jbGlwWyBtYXBbIGRpcmVjdGlvbiBdWyAxIF0gXTsKCglpZiAoIG9wdGlvbnMubW9kZSA9PT0gInNob3ciICkgewoJCWVsZW1lbnQuY3NzQ2xpcCggYW5pbWF0ZS5jbGlwICk7CgkJaWYgKCBwbGFjZWhvbGRlciApIHsKCQkJcGxhY2Vob2xkZXIuY3NzKCAkLmVmZmVjdHMuY2xpcFRvQm94KCBhbmltYXRlICkgKTsKCQl9CgoJCWFuaW1hdGUuY2xpcCA9IHN0YXJ0OwoJfQoKCWlmICggcGxhY2Vob2xkZXIgKSB7CgkJcGxhY2Vob2xkZXIuYW5pbWF0ZSggJC5lZmZlY3RzLmNsaXBUb0JveCggYW5pbWF0ZSApLCBvcHRpb25zLmR1cmF0aW9uLCBvcHRpb25zLmVhc2luZyApOwoJfQoKCWVsZW1lbnQuYW5pbWF0ZSggYW5pbWF0ZSwgewoJCXF1ZXVlOiBmYWxzZSwKCQlkdXJhdGlvbjogb3B0aW9ucy5kdXJhdGlvbiwKCQllYXNpbmc6IG9wdGlvbnMuZWFzaW5nLAoJCWNvbXBsZXRlOiBkb25lCgl9ICk7Cn0gKTsKCgovKiEKICogalF1ZXJ5IFVJIEVmZmVjdHMgQm91bmNlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogQm91bmNlIEVmZmVjdAovLz4+Z3JvdXA6IEVmZmVjdHMKLy8+PmRlc2NyaXB0aW9uOiBCb3VuY2VzIGFuIGVsZW1lbnQgaG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkgbiB0aW1lcy4KLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2JvdW5jZS1lZmZlY3QvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9lZmZlY3QvCgoKCnZhciBlZmZlY3RzRWZmZWN0Qm91bmNlID0gJC5lZmZlY3RzLmRlZmluZSggImJvdW5jZSIsIGZ1bmN0aW9uKCBvcHRpb25zLCBkb25lICkgewoJdmFyIHVwQW5pbSwgZG93bkFuaW0sIHJlZlZhbHVlLAoJCWVsZW1lbnQgPSAkKCB0aGlzICksCgoJCS8vIERlZmF1bHRzOgoJCW1vZGUgPSBvcHRpb25zLm1vZGUsCgkJaGlkZSA9IG1vZGUgPT09ICJoaWRlIiwKCQlzaG93ID0gbW9kZSA9PT0gInNob3ciLAoJCWRpcmVjdGlvbiA9IG9wdGlvbnMuZGlyZWN0aW9uIHx8ICJ1cCIsCgkJZGlzdGFuY2UgPSBvcHRpb25zLmRpc3RhbmNlLAoJCXRpbWVzID0gb3B0aW9ucy50aW1lcyB8fCA1LAoKCQkvLyBOdW1iZXIgb2YgaW50ZXJuYWwgYW5pbWF0aW9ucwoJCWFuaW1zID0gdGltZXMgKiAyICsgKCBzaG93IHx8IGhpZGUgPyAxIDogMCApLAoJCXNwZWVkID0gb3B0aW9ucy5kdXJhdGlvbiAvIGFuaW1zLAoJCWVhc2luZyA9IG9wdGlvbnMuZWFzaW5nLAoKCQkvLyBVdGlsaXR5OgoJCXJlZiA9ICggZGlyZWN0aW9uID09PSAidXAiIHx8IGRpcmVjdGlvbiA9PT0gImRvd24iICkgPyAidG9wIiA6ICJsZWZ0IiwKCQltb3Rpb24gPSAoIGRpcmVjdGlvbiA9PT0gInVwIiB8fCBkaXJlY3Rpb24gPT09ICJsZWZ0IiApLAoJCWkgPSAwLAoKCQlxdWV1ZWxlbiA9IGVsZW1lbnQucXVldWUoKS5sZW5ndGg7CgoJJC5lZmZlY3RzLmNyZWF0ZVBsYWNlaG9sZGVyKCBlbGVtZW50ICk7CgoJcmVmVmFsdWUgPSBlbGVtZW50LmNzcyggcmVmICk7CgoJLy8gRGVmYXVsdCBkaXN0YW5jZSBmb3IgdGhlIEJJR0dFU1QgYm91bmNlIGlzIHRoZSBvdXRlciBEaXN0YW5jZSAvIDMKCWlmICggIWRpc3RhbmNlICkgewoJCWRpc3RhbmNlID0gZWxlbWVudFsgcmVmID09PSAidG9wIiA/ICJvdXRlckhlaWdodCIgOiAib3V0ZXJXaWR0aCIgXSgpIC8gMzsKCX0KCglpZiAoIHNob3cgKSB7CgkJZG93bkFuaW0gPSB7IG9wYWNpdHk6IDEgfTsKCQlkb3duQW5pbVsgcmVmIF0gPSByZWZWYWx1ZTsKCgkJLy8gSWYgd2UgYXJlIHNob3dpbmcsIGZvcmNlIG9wYWNpdHkgMCBhbmQgc2V0IHRoZSBpbml0aWFsIHBvc2l0aW9uCgkJLy8gdGhlbiBkbyB0aGUgImZpcnN0IiBhbmltYXRpb24KCQllbGVtZW50CgkJCS5jc3MoICJvcGFjaXR5IiwgMCApCgkJCS5jc3MoIHJlZiwgbW90aW9uID8gLWRpc3RhbmNlICogMiA6IGRpc3RhbmNlICogMiApCgkJCS5hbmltYXRlKCBkb3duQW5pbSwgc3BlZWQsIGVhc2luZyApOwoJfQoKCS8vIFN0YXJ0IGF0IHRoZSBzbWFsbGVzdCBkaXN0YW5jZSBpZiB3ZSBhcmUgaGlkaW5nCglpZiAoIGhpZGUgKSB7CgkJZGlzdGFuY2UgPSBkaXN0YW5jZSAvIE1hdGgucG93KCAyLCB0aW1lcyAtIDEgKTsKCX0KCglkb3duQW5pbSA9IHt9OwoJZG93bkFuaW1bIHJlZiBdID0gcmVmVmFsdWU7CgoJLy8gQm91bmNlcyB1cC9kb3duL2xlZnQvcmlnaHQgdGhlbiBiYWNrIHRvIDAgLS0gdGltZXMgKiAyIGFuaW1hdGlvbnMgaGFwcGVuIGhlcmUKCWZvciAoIDsgaSA8IHRpbWVzOyBpKysgKSB7CgkJdXBBbmltID0ge307CgkJdXBBbmltWyByZWYgXSA9ICggbW90aW9uID8gIi09IiA6ICIrPSIgKSArIGRpc3RhbmNlOwoKCQllbGVtZW50CgkJCS5hbmltYXRlKCB1cEFuaW0sIHNwZWVkLCBlYXNpbmcgKQoJCQkuYW5pbWF0ZSggZG93bkFuaW0sIHNwZWVkLCBlYXNpbmcgKTsKCgkJZGlzdGFuY2UgPSBoaWRlID8gZGlzdGFuY2UgKiAyIDogZGlzdGFuY2UgLyAyOwoJfQoKCS8vIExhc3QgQm91bmNlIHdoZW4gSGlkaW5nCglpZiAoIGhpZGUgKSB7CgkJdXBBbmltID0geyBvcGFjaXR5OiAwIH07CgkJdXBBbmltWyByZWYgXSA9ICggbW90aW9uID8gIi09IiA6ICIrPSIgKSArIGRpc3RhbmNlOwoKCQllbGVtZW50LmFuaW1hdGUoIHVwQW5pbSwgc3BlZWQsIGVhc2luZyApOwoJfQoKCWVsZW1lbnQucXVldWUoIGRvbmUgKTsKCgkkLmVmZmVjdHMudW5zaGlmdCggZWxlbWVudCwgcXVldWVsZW4sIGFuaW1zICsgMSApOwp9ICk7CgoKLyohCiAqIGpRdWVyeSBVSSBFZmZlY3RzIENsaXAgMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiBDbGlwIEVmZmVjdAovLz4+Z3JvdXA6IEVmZmVjdHMKLy8+PmRlc2NyaXB0aW9uOiBDbGlwcyB0aGUgZWxlbWVudCBvbiBhbmQgb2ZmIGxpa2UgYW4gb2xkIFRWLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vY2xpcC1lZmZlY3QvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9lZmZlY3QvCgoKCnZhciBlZmZlY3RzRWZmZWN0Q2xpcCA9ICQuZWZmZWN0cy5kZWZpbmUoICJjbGlwIiwgImhpZGUiLCBmdW5jdGlvbiggb3B0aW9ucywgZG9uZSApIHsKCXZhciBzdGFydCwKCQlhbmltYXRlID0ge30sCgkJZWxlbWVudCA9ICQoIHRoaXMgKSwKCQlkaXJlY3Rpb24gPSBvcHRpb25zLmRpcmVjdGlvbiB8fCAidmVydGljYWwiLAoJCWJvdGggPSBkaXJlY3Rpb24gPT09ICJib3RoIiwKCQlob3Jpem9udGFsID0gYm90aCB8fCBkaXJlY3Rpb24gPT09ICJob3Jpem9udGFsIiwKCQl2ZXJ0aWNhbCA9IGJvdGggfHwgZGlyZWN0aW9uID09PSAidmVydGljYWwiOwoKCXN0YXJ0ID0gZWxlbWVudC5jc3NDbGlwKCk7CglhbmltYXRlLmNsaXAgPSB7CgkJdG9wOiB2ZXJ0aWNhbCA/ICggc3RhcnQuYm90dG9tIC0gc3RhcnQudG9wICkgLyAyIDogc3RhcnQudG9wLAoJCXJpZ2h0OiBob3Jpem9udGFsID8gKCBzdGFydC5yaWdodCAtIHN0YXJ0LmxlZnQgKSAvIDIgOiBzdGFydC5yaWdodCwKCQlib3R0b206IHZlcnRpY2FsID8gKCBzdGFydC5ib3R0b20gLSBzdGFydC50b3AgKSAvIDIgOiBzdGFydC5ib3R0b20sCgkJbGVmdDogaG9yaXpvbnRhbCA/ICggc3RhcnQucmlnaHQgLSBzdGFydC5sZWZ0ICkgLyAyIDogc3RhcnQubGVmdAoJfTsKCgkkLmVmZmVjdHMuY3JlYXRlUGxhY2Vob2xkZXIoIGVsZW1lbnQgKTsKCglpZiAoIG9wdGlvbnMubW9kZSA9PT0gInNob3ciICkgewoJCWVsZW1lbnQuY3NzQ2xpcCggYW5pbWF0ZS5jbGlwICk7CgkJYW5pbWF0ZS5jbGlwID0gc3RhcnQ7Cgl9CgoJZWxlbWVudC5hbmltYXRlKCBhbmltYXRlLCB7CgkJcXVldWU6IGZhbHNlLAoJCWR1cmF0aW9uOiBvcHRpb25zLmR1cmF0aW9uLAoJCWVhc2luZzogb3B0aW9ucy5lYXNpbmcsCgkJY29tcGxldGU6IGRvbmUKCX0gKTsKCn0gKTsKCgovKiEKICogalF1ZXJ5IFVJIEVmZmVjdHMgRHJvcCAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IERyb3AgRWZmZWN0Ci8vPj5ncm91cDogRWZmZWN0cwovLz4+ZGVzY3JpcHRpb246IE1vdmVzIGFuIGVsZW1lbnQgaW4gb25lIGRpcmVjdGlvbiBhbmQgaGlkZXMgaXQgYXQgdGhlIHNhbWUgdGltZS4KLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2Ryb3AtZWZmZWN0LwovLz4+ZGVtb3M6IGh0dHA6Ly9qcXVlcnl1aS5jb20vZWZmZWN0LwoKCgp2YXIgZWZmZWN0c0VmZmVjdERyb3AgPSAkLmVmZmVjdHMuZGVmaW5lKCAiZHJvcCIsICJoaWRlIiwgZnVuY3Rpb24oIG9wdGlvbnMsIGRvbmUgKSB7CgoJdmFyIGRpc3RhbmNlLAoJCWVsZW1lbnQgPSAkKCB0aGlzICksCgkJbW9kZSA9IG9wdGlvbnMubW9kZSwKCQlzaG93ID0gbW9kZSA9PT0gInNob3ciLAoJCWRpcmVjdGlvbiA9IG9wdGlvbnMuZGlyZWN0aW9uIHx8ICJsZWZ0IiwKCQlyZWYgPSAoIGRpcmVjdGlvbiA9PT0gInVwIiB8fCBkaXJlY3Rpb24gPT09ICJkb3duIiApID8gInRvcCIgOiAibGVmdCIsCgkJbW90aW9uID0gKCBkaXJlY3Rpb24gPT09ICJ1cCIgfHwgZGlyZWN0aW9uID09PSAibGVmdCIgKSA/ICItPSIgOiAiKz0iLAoJCW9wcG9zaXRlTW90aW9uID0gKCBtb3Rpb24gPT09ICIrPSIgKSA/ICItPSIgOiAiKz0iLAoJCWFuaW1hdGlvbiA9IHsKCQkJb3BhY2l0eTogMAoJCX07CgoJJC5lZmZlY3RzLmNyZWF0ZVBsYWNlaG9sZGVyKCBlbGVtZW50ICk7CgoJZGlzdGFuY2UgPSBvcHRpb25zLmRpc3RhbmNlIHx8CgkJZWxlbWVudFsgcmVmID09PSAidG9wIiA/ICJvdXRlckhlaWdodCIgOiAib3V0ZXJXaWR0aCIgXSggdHJ1ZSApIC8gMjsKCglhbmltYXRpb25bIHJlZiBdID0gbW90aW9uICsgZGlzdGFuY2U7CgoJaWYgKCBzaG93ICkgewoJCWVsZW1lbnQuY3NzKCBhbmltYXRpb24gKTsKCgkJYW5pbWF0aW9uWyByZWYgXSA9IG9wcG9zaXRlTW90aW9uICsgZGlzdGFuY2U7CgkJYW5pbWF0aW9uLm9wYWNpdHkgPSAxOwoJfQoKCS8vIEFuaW1hdGUKCWVsZW1lbnQuYW5pbWF0ZSggYW5pbWF0aW9uLCB7CgkJcXVldWU6IGZhbHNlLAoJCWR1cmF0aW9uOiBvcHRpb25zLmR1cmF0aW9uLAoJCWVhc2luZzogb3B0aW9ucy5lYXNpbmcsCgkJY29tcGxldGU6IGRvbmUKCX0gKTsKfSApOwoKCi8qIQogKiBqUXVlcnkgVUkgRWZmZWN0cyBFeHBsb2RlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogRXhwbG9kZSBFZmZlY3QKLy8+Pmdyb3VwOiBFZmZlY3RzCi8vIGpzY3M6ZGlzYWJsZSBtYXhpbXVtTGluZUxlbmd0aAovLz4+ZGVzY3JpcHRpb246IEV4cGxvZGVzIGFuIGVsZW1lbnQgaW4gYWxsIGRpcmVjdGlvbnMgaW50byBuIHBpZWNlcy4gSW1wbG9kZXMgYW4gZWxlbWVudCB0byBpdHMgb3JpZ2luYWwgd2hvbGVuZXNzLgovLyBqc2NzOmVuYWJsZSBtYXhpbXVtTGluZUxlbmd0aAovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vZXhwbG9kZS1lZmZlY3QvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9lZmZlY3QvCgoKCnZhciBlZmZlY3RzRWZmZWN0RXhwbG9kZSA9ICQuZWZmZWN0cy5kZWZpbmUoICJleHBsb2RlIiwgImhpZGUiLCBmdW5jdGlvbiggb3B0aW9ucywgZG9uZSApIHsKCgl2YXIgaSwgaiwgbGVmdCwgdG9wLCBteCwgbXksCgkJcm93cyA9IG9wdGlvbnMucGllY2VzID8gTWF0aC5yb3VuZCggTWF0aC5zcXJ0KCBvcHRpb25zLnBpZWNlcyApICkgOiAzLAoJCWNlbGxzID0gcm93cywKCQllbGVtZW50ID0gJCggdGhpcyApLAoJCW1vZGUgPSBvcHRpb25zLm1vZGUsCgkJc2hvdyA9IG1vZGUgPT09ICJzaG93IiwKCgkJLy8gU2hvdyBhbmQgdGhlbiB2aXNpYmlsaXR5OmhpZGRlbiB0aGUgZWxlbWVudCBiZWZvcmUgY2FsY3VsYXRpbmcgb2Zmc2V0CgkJb2Zmc2V0ID0gZWxlbWVudC5zaG93KCkuY3NzKCAidmlzaWJpbGl0eSIsICJoaWRkZW4iICkub2Zmc2V0KCksCgoJCS8vIFdpZHRoIGFuZCBoZWlnaHQgb2YgYSBwaWVjZQoJCXdpZHRoID0gTWF0aC5jZWlsKCBlbGVtZW50Lm91dGVyV2lkdGgoKSAvIGNlbGxzICksCgkJaGVpZ2h0ID0gTWF0aC5jZWlsKCBlbGVtZW50Lm91dGVySGVpZ2h0KCkgLyByb3dzICksCgkJcGllY2VzID0gW107CgoJLy8gQ2hpbGRyZW4gYW5pbWF0ZSBjb21wbGV0ZToKCWZ1bmN0aW9uIGNoaWxkQ29tcGxldGUoKSB7CgkJcGllY2VzLnB1c2goIHRoaXMgKTsKCQlpZiAoIHBpZWNlcy5sZW5ndGggPT09IHJvd3MgKiBjZWxscyApIHsKCQkJYW5pbUNvbXBsZXRlKCk7CgkJfQoJfQoKCS8vIENsb25lIHRoZSBlbGVtZW50IGZvciBlYWNoIHJvdyBhbmQgY2VsbC4KCWZvciAoIGkgPSAwOyBpIDwgcm93czsgaSsrICkgeyAvLyA9PT0+CgkJdG9wID0gb2Zmc2V0LnRvcCArIGkgKiBoZWlnaHQ7CgkJbXkgPSBpIC0gKCByb3dzIC0gMSApIC8gMjsKCgkJZm9yICggaiA9IDA7IGogPCBjZWxsczsgaisrICkgeyAvLyB8fHwKCQkJbGVmdCA9IG9mZnNldC5sZWZ0ICsgaiAqIHdpZHRoOwoJCQlteCA9IGogLSAoIGNlbGxzIC0gMSApIC8gMjsKCgkJCS8vIENyZWF0ZSBhIGNsb25lIG9mIHRoZSBub3cgaGlkZGVuIG1haW4gZWxlbWVudCB0aGF0IHdpbGwgYmUgYWJzb2x1dGUgcG9zaXRpb25lZAoJCQkvLyB3aXRoaW4gYSB3cmFwcGVyIGRpdiBvZmYgdGhlIC1sZWZ0IGFuZCAtdG9wIGVxdWFsIHRvIHNpemUgb2Ygb3VyIHBpZWNlcwoJCQllbGVtZW50CgkJCQkuY2xvbmUoKQoJCQkJLmFwcGVuZFRvKCAiYm9keSIgKQoJCQkJLndyYXAoICI8ZGl2PjwvZGl2PiIgKQoJCQkJLmNzcyggewoJCQkJCXBvc2l0aW9uOiAiYWJzb2x1dGUiLAoJCQkJCXZpc2liaWxpdHk6ICJ2aXNpYmxlIiwKCQkJCQlsZWZ0OiAtaiAqIHdpZHRoLAoJCQkJCXRvcDogLWkgKiBoZWlnaHQKCQkJCX0gKQoKCQkJCS8vIFNlbGVjdCB0aGUgd3JhcHBlciAtIG1ha2UgaXQgb3ZlcmZsb3c6IGhpZGRlbiBhbmQgYWJzb2x1dGUgcG9zaXRpb25lZCBiYXNlZCBvbgoJCQkJLy8gd2hlcmUgdGhlIG9yaWdpbmFsIHdhcyBsb2NhdGVkICtsZWZ0IGFuZCArdG9wIGVxdWFsIHRvIHRoZSBzaXplIG9mIHBpZWNlcwoJCQkJLnBhcmVudCgpCgkJCQkJLmFkZENsYXNzKCAidWktZWZmZWN0cy1leHBsb2RlIiApCgkJCQkJLmNzcyggewoJCQkJCQlwb3NpdGlvbjogImFic29sdXRlIiwKCQkJCQkJb3ZlcmZsb3c6ICJoaWRkZW4iLAoJCQkJCQl3aWR0aDogd2lkdGgsCgkJCQkJCWhlaWdodDogaGVpZ2h0LAoJCQkJCQlsZWZ0OiBsZWZ0ICsgKCBzaG93ID8gbXggKiB3aWR0aCA6IDAgKSwKCQkJCQkJdG9wOiB0b3AgKyAoIHNob3cgPyBteSAqIGhlaWdodCA6IDAgKSwKCQkJCQkJb3BhY2l0eTogc2hvdyA/IDAgOiAxCgkJCQkJfSApCgkJCQkJLmFuaW1hdGUoIHsKCQkJCQkJbGVmdDogbGVmdCArICggc2hvdyA/IDAgOiBteCAqIHdpZHRoICksCgkJCQkJCXRvcDogdG9wICsgKCBzaG93ID8gMCA6IG15ICogaGVpZ2h0ICksCgkJCQkJCW9wYWNpdHk6IHNob3cgPyAxIDogMAoJCQkJCX0sIG9wdGlvbnMuZHVyYXRpb24gfHwgNTAwLCBvcHRpb25zLmVhc2luZywgY2hpbGRDb21wbGV0ZSApOwoJCX0KCX0KCglmdW5jdGlvbiBhbmltQ29tcGxldGUoKSB7CgkJZWxlbWVudC5jc3MoIHsKCQkJdmlzaWJpbGl0eTogInZpc2libGUiCgkJfSApOwoJCSQoIHBpZWNlcyApLnJlbW92ZSgpOwoJCWRvbmUoKTsKCX0KfSApOwoKCi8qIQogKiBqUXVlcnkgVUkgRWZmZWN0cyBGYWRlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogRmFkZSBFZmZlY3QKLy8+Pmdyb3VwOiBFZmZlY3RzCi8vPj5kZXNjcmlwdGlvbjogRmFkZXMgdGhlIGVsZW1lbnQuCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9mYWRlLWVmZmVjdC8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL2VmZmVjdC8KCgoKdmFyIGVmZmVjdHNFZmZlY3RGYWRlID0gJC5lZmZlY3RzLmRlZmluZSggImZhZGUiLCAidG9nZ2xlIiwgZnVuY3Rpb24oIG9wdGlvbnMsIGRvbmUgKSB7Cgl2YXIgc2hvdyA9IG9wdGlvbnMubW9kZSA9PT0gInNob3ciOwoKCSQoIHRoaXMgKQoJCS5jc3MoICJvcGFjaXR5Iiwgc2hvdyA/IDAgOiAxICkKCQkuYW5pbWF0ZSggewoJCQlvcGFjaXR5OiBzaG93ID8gMSA6IDAKCQl9LCB7CgkJCXF1ZXVlOiBmYWxzZSwKCQkJZHVyYXRpb246IG9wdGlvbnMuZHVyYXRpb24sCgkJCWVhc2luZzogb3B0aW9ucy5lYXNpbmcsCgkJCWNvbXBsZXRlOiBkb25lCgkJfSApOwp9ICk7CgoKLyohCiAqIGpRdWVyeSBVSSBFZmZlY3RzIEZvbGQgMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiBGb2xkIEVmZmVjdAovLz4+Z3JvdXA6IEVmZmVjdHMKLy8+PmRlc2NyaXB0aW9uOiBGb2xkcyBhbiBlbGVtZW50IGZpcnN0IGhvcml6b250YWxseSBhbmQgdGhlbiB2ZXJ0aWNhbGx5LgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vZm9sZC1lZmZlY3QvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9lZmZlY3QvCgoKCnZhciBlZmZlY3RzRWZmZWN0Rm9sZCA9ICQuZWZmZWN0cy5kZWZpbmUoICJmb2xkIiwgImhpZGUiLCBmdW5jdGlvbiggb3B0aW9ucywgZG9uZSApIHsKCgkvLyBDcmVhdGUgZWxlbWVudAoJdmFyIGVsZW1lbnQgPSAkKCB0aGlzICksCgkJbW9kZSA9IG9wdGlvbnMubW9kZSwKCQlzaG93ID0gbW9kZSA9PT0gInNob3ciLAoJCWhpZGUgPSBtb2RlID09PSAiaGlkZSIsCgkJc2l6ZSA9IG9wdGlvbnMuc2l6ZSB8fCAxNSwKCQlwZXJjZW50ID0gLyhbMC05XSspJS8uZXhlYyggc2l6ZSApLAoJCWhvcml6Rmlyc3QgPSAhIW9wdGlvbnMuaG9yaXpGaXJzdCwKCQlyZWYgPSBob3JpekZpcnN0ID8gWyAicmlnaHQiLCAiYm90dG9tIiBdIDogWyAiYm90dG9tIiwgInJpZ2h0IiBdLAoJCWR1cmF0aW9uID0gb3B0aW9ucy5kdXJhdGlvbiAvIDIsCgoJCXBsYWNlaG9sZGVyID0gJC5lZmZlY3RzLmNyZWF0ZVBsYWNlaG9sZGVyKCBlbGVtZW50ICksCgoJCXN0YXJ0ID0gZWxlbWVudC5jc3NDbGlwKCksCgkJYW5pbWF0aW9uMSA9IHsgY2xpcDogJC5leHRlbmQoIHt9LCBzdGFydCApIH0sCgkJYW5pbWF0aW9uMiA9IHsgY2xpcDogJC5leHRlbmQoIHt9LCBzdGFydCApIH0sCgoJCWRpc3RhbmNlID0gWyBzdGFydFsgcmVmWyAwIF0gXSwgc3RhcnRbIHJlZlsgMSBdIF0gXSwKCgkJcXVldWVsZW4gPSBlbGVtZW50LnF1ZXVlKCkubGVuZ3RoOwoKCWlmICggcGVyY2VudCApIHsKCQlzaXplID0gcGFyc2VJbnQoIHBlcmNlbnRbIDEgXSwgMTAgKSAvIDEwMCAqIGRpc3RhbmNlWyBoaWRlID8gMCA6IDEgXTsKCX0KCWFuaW1hdGlvbjEuY2xpcFsgcmVmWyAwIF0gXSA9IHNpemU7CglhbmltYXRpb24yLmNsaXBbIHJlZlsgMCBdIF0gPSBzaXplOwoJYW5pbWF0aW9uMi5jbGlwWyByZWZbIDEgXSBdID0gMDsKCglpZiAoIHNob3cgKSB7CgkJZWxlbWVudC5jc3NDbGlwKCBhbmltYXRpb24yLmNsaXAgKTsKCQlpZiAoIHBsYWNlaG9sZGVyICkgewoJCQlwbGFjZWhvbGRlci5jc3MoICQuZWZmZWN0cy5jbGlwVG9Cb3goIGFuaW1hdGlvbjIgKSApOwoJCX0KCgkJYW5pbWF0aW9uMi5jbGlwID0gc3RhcnQ7Cgl9CgoJLy8gQW5pbWF0ZQoJZWxlbWVudAoJCS5xdWV1ZSggZnVuY3Rpb24oIG5leHQgKSB7CgkJCWlmICggcGxhY2Vob2xkZXIgKSB7CgkJCQlwbGFjZWhvbGRlcgoJCQkJCS5hbmltYXRlKCAkLmVmZmVjdHMuY2xpcFRvQm94KCBhbmltYXRpb24xICksIGR1cmF0aW9uLCBvcHRpb25zLmVhc2luZyApCgkJCQkJLmFuaW1hdGUoICQuZWZmZWN0cy5jbGlwVG9Cb3goIGFuaW1hdGlvbjIgKSwgZHVyYXRpb24sIG9wdGlvbnMuZWFzaW5nICk7CgkJCX0KCgkJCW5leHQoKTsKCQl9ICkKCQkuYW5pbWF0ZSggYW5pbWF0aW9uMSwgZHVyYXRpb24sIG9wdGlvbnMuZWFzaW5nICkKCQkuYW5pbWF0ZSggYW5pbWF0aW9uMiwgZHVyYXRpb24sIG9wdGlvbnMuZWFzaW5nICkKCQkucXVldWUoIGRvbmUgKTsKCgkkLmVmZmVjdHMudW5zaGlmdCggZWxlbWVudCwgcXVldWVsZW4sIDQgKTsKfSApOwoKCi8qIQogKiBqUXVlcnkgVUkgRWZmZWN0cyBIaWdobGlnaHQgMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiBIaWdobGlnaHQgRWZmZWN0Ci8vPj5ncm91cDogRWZmZWN0cwovLz4+ZGVzY3JpcHRpb246IEhpZ2hsaWdodHMgdGhlIGJhY2tncm91bmQgb2YgYW4gZWxlbWVudCBpbiBhIGRlZmluZWQgY29sb3IgZm9yIGEgY3VzdG9tIGR1cmF0aW9uLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vaGlnaGxpZ2h0LWVmZmVjdC8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL2VmZmVjdC8KCgoKdmFyIGVmZmVjdHNFZmZlY3RIaWdobGlnaHQgPSAkLmVmZmVjdHMuZGVmaW5lKCAiaGlnaGxpZ2h0IiwgInNob3ciLCBmdW5jdGlvbiggb3B0aW9ucywgZG9uZSApIHsKCXZhciBlbGVtZW50ID0gJCggdGhpcyApLAoJCWFuaW1hdGlvbiA9IHsKCQkJYmFja2dyb3VuZENvbG9yOiBlbGVtZW50LmNzcyggImJhY2tncm91bmRDb2xvciIgKQoJCX07CgoJaWYgKCBvcHRpb25zLm1vZGUgPT09ICJoaWRlIiApIHsKCQlhbmltYXRpb24ub3BhY2l0eSA9IDA7Cgl9CgoJJC5lZmZlY3RzLnNhdmVTdHlsZSggZWxlbWVudCApOwoKCWVsZW1lbnQKCQkuY3NzKCB7CgkJCWJhY2tncm91bmRJbWFnZTogIm5vbmUiLAoJCQliYWNrZ3JvdW5kQ29sb3I6IG9wdGlvbnMuY29sb3IgfHwgIiNmZmZmOTkiCgkJfSApCgkJLmFuaW1hdGUoIGFuaW1hdGlvbiwgewoJCQlxdWV1ZTogZmFsc2UsCgkJCWR1cmF0aW9uOiBvcHRpb25zLmR1cmF0aW9uLAoJCQllYXNpbmc6IG9wdGlvbnMuZWFzaW5nLAoJCQljb21wbGV0ZTogZG9uZQoJCX0gKTsKfSApOwoKCi8qIQogKiBqUXVlcnkgVUkgRWZmZWN0cyBTaXplIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogU2l6ZSBFZmZlY3QKLy8+Pmdyb3VwOiBFZmZlY3RzCi8vPj5kZXNjcmlwdGlvbjogUmVzaXplIGFuIGVsZW1lbnQgdG8gYSBzcGVjaWZpZWQgd2lkdGggYW5kIGhlaWdodC4KLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3NpemUtZWZmZWN0LwovLz4+ZGVtb3M6IGh0dHA6Ly9qcXVlcnl1aS5jb20vZWZmZWN0LwoKCgp2YXIgZWZmZWN0c0VmZmVjdFNpemUgPSAkLmVmZmVjdHMuZGVmaW5lKCAic2l6ZSIsIGZ1bmN0aW9uKCBvcHRpb25zLCBkb25lICkgewoKCS8vIENyZWF0ZSBlbGVtZW50Cgl2YXIgYmFzZWxpbmUsIGZhY3RvciwgdGVtcCwKCQllbGVtZW50ID0gJCggdGhpcyApLAoKCQkvLyBDb3B5IGZvciBjaGlsZHJlbgoJCWNQcm9wcyA9IFsgImZvbnRTaXplIiBdLAoJCXZQcm9wcyA9IFsgImJvcmRlclRvcFdpZHRoIiwgImJvcmRlckJvdHRvbVdpZHRoIiwgInBhZGRpbmdUb3AiLCAicGFkZGluZ0JvdHRvbSIgXSwKCQloUHJvcHMgPSBbICJib3JkZXJMZWZ0V2lkdGgiLCAiYm9yZGVyUmlnaHRXaWR0aCIsICJwYWRkaW5nTGVmdCIsICJwYWRkaW5nUmlnaHQiIF0sCgoJCS8vIFNldCBvcHRpb25zCgkJbW9kZSA9IG9wdGlvbnMubW9kZSwKCQlyZXN0b3JlID0gbW9kZSAhPT0gImVmZmVjdCIsCgkJc2NhbGUgPSBvcHRpb25zLnNjYWxlIHx8ICJib3RoIiwKCQlvcmlnaW4gPSBvcHRpb25zLm9yaWdpbiB8fCBbICJtaWRkbGUiLCAiY2VudGVyIiBdLAoJCXBvc2l0aW9uID0gZWxlbWVudC5jc3MoICJwb3NpdGlvbiIgKSwKCQlwb3MgPSBlbGVtZW50LnBvc2l0aW9uKCksCgkJb3JpZ2luYWwgPSAkLmVmZmVjdHMuc2NhbGVkRGltZW5zaW9ucyggZWxlbWVudCApLAoJCWZyb20gPSBvcHRpb25zLmZyb20gfHwgb3JpZ2luYWwsCgkJdG8gPSBvcHRpb25zLnRvIHx8ICQuZWZmZWN0cy5zY2FsZWREaW1lbnNpb25zKCBlbGVtZW50LCAwICk7CgoJJC5lZmZlY3RzLmNyZWF0ZVBsYWNlaG9sZGVyKCBlbGVtZW50ICk7CgoJaWYgKCBtb2RlID09PSAic2hvdyIgKSB7CgkJdGVtcCA9IGZyb207CgkJZnJvbSA9IHRvOwoJCXRvID0gdGVtcDsKCX0KCgkvLyBTZXQgc2NhbGluZyBmYWN0b3IKCWZhY3RvciA9IHsKCQlmcm9tOiB7CgkJCXk6IGZyb20uaGVpZ2h0IC8gb3JpZ2luYWwuaGVpZ2h0LAoJCQl4OiBmcm9tLndpZHRoIC8gb3JpZ2luYWwud2lkdGgKCQl9LAoJCXRvOiB7CgkJCXk6IHRvLmhlaWdodCAvIG9yaWdpbmFsLmhlaWdodCwKCQkJeDogdG8ud2lkdGggLyBvcmlnaW5hbC53aWR0aAoJCX0KCX07CgoJLy8gU2NhbGUgdGhlIGNzcyBib3gKCWlmICggc2NhbGUgPT09ICJib3giIHx8IHNjYWxlID09PSAiYm90aCIgKSB7CgoJCS8vIFZlcnRpY2FsIHByb3BzIHNjYWxpbmcKCQlpZiAoIGZhY3Rvci5mcm9tLnkgIT09IGZhY3Rvci50by55ICkgewoJCQlmcm9tID0gJC5lZmZlY3RzLnNldFRyYW5zaXRpb24oIGVsZW1lbnQsIHZQcm9wcywgZmFjdG9yLmZyb20ueSwgZnJvbSApOwoJCQl0byA9ICQuZWZmZWN0cy5zZXRUcmFuc2l0aW9uKCBlbGVtZW50LCB2UHJvcHMsIGZhY3Rvci50by55LCB0byApOwoJCX0KCgkJLy8gSG9yaXpvbnRhbCBwcm9wcyBzY2FsaW5nCgkJaWYgKCBmYWN0b3IuZnJvbS54ICE9PSBmYWN0b3IudG8ueCApIHsKCQkJZnJvbSA9ICQuZWZmZWN0cy5zZXRUcmFuc2l0aW9uKCBlbGVtZW50LCBoUHJvcHMsIGZhY3Rvci5mcm9tLngsIGZyb20gKTsKCQkJdG8gPSAkLmVmZmVjdHMuc2V0VHJhbnNpdGlvbiggZWxlbWVudCwgaFByb3BzLCBmYWN0b3IudG8ueCwgdG8gKTsKCQl9Cgl9CgoJLy8gU2NhbGUgdGhlIGNvbnRlbnQKCWlmICggc2NhbGUgPT09ICJjb250ZW50IiB8fCBzY2FsZSA9PT0gImJvdGgiICkgewoKCQkvLyBWZXJ0aWNhbCBwcm9wcyBzY2FsaW5nCgkJaWYgKCBmYWN0b3IuZnJvbS55ICE9PSBmYWN0b3IudG8ueSApIHsKCQkJZnJvbSA9ICQuZWZmZWN0cy5zZXRUcmFuc2l0aW9uKCBlbGVtZW50LCBjUHJvcHMsIGZhY3Rvci5mcm9tLnksIGZyb20gKTsKCQkJdG8gPSAkLmVmZmVjdHMuc2V0VHJhbnNpdGlvbiggZWxlbWVudCwgY1Byb3BzLCBmYWN0b3IudG8ueSwgdG8gKTsKCQl9Cgl9CgoJLy8gQWRqdXN0IHRoZSBwb3NpdGlvbiBwcm9wZXJ0aWVzIGJhc2VkIG9uIHRoZSBwcm92aWRlZCBvcmlnaW4gcG9pbnRzCglpZiAoIG9yaWdpbiApIHsKCQliYXNlbGluZSA9ICQuZWZmZWN0cy5nZXRCYXNlbGluZSggb3JpZ2luLCBvcmlnaW5hbCApOwoJCWZyb20udG9wID0gKCBvcmlnaW5hbC5vdXRlckhlaWdodCAtIGZyb20ub3V0ZXJIZWlnaHQgKSAqIGJhc2VsaW5lLnkgKyBwb3MudG9wOwoJCWZyb20ubGVmdCA9ICggb3JpZ2luYWwub3V0ZXJXaWR0aCAtIGZyb20ub3V0ZXJXaWR0aCApICogYmFzZWxpbmUueCArIHBvcy5sZWZ0OwoJCXRvLnRvcCA9ICggb3JpZ2luYWwub3V0ZXJIZWlnaHQgLSB0by5vdXRlckhlaWdodCApICogYmFzZWxpbmUueSArIHBvcy50b3A7CgkJdG8ubGVmdCA9ICggb3JpZ2luYWwub3V0ZXJXaWR0aCAtIHRvLm91dGVyV2lkdGggKSAqIGJhc2VsaW5lLnggKyBwb3MubGVmdDsKCX0KCWVsZW1lbnQuY3NzKCBmcm9tICk7CgoJLy8gQW5pbWF0ZSB0aGUgY2hpbGRyZW4gaWYgZGVzaXJlZAoJaWYgKCBzY2FsZSA9PT0gImNvbnRlbnQiIHx8IHNjYWxlID09PSAiYm90aCIgKSB7CgoJCXZQcm9wcyA9IHZQcm9wcy5jb25jYXQoIFsgIm1hcmdpblRvcCIsICJtYXJnaW5Cb3R0b20iIF0gKS5jb25jYXQoIGNQcm9wcyApOwoJCWhQcm9wcyA9IGhQcm9wcy5jb25jYXQoIFsgIm1hcmdpbkxlZnQiLCAibWFyZ2luUmlnaHQiIF0gKTsKCgkJLy8gT25seSBhbmltYXRlIGNoaWxkcmVuIHdpdGggd2lkdGggYXR0cmlidXRlcyBzcGVjaWZpZWQKCQkvLyBUT0RPOiBpcyB0aGlzIHJpZ2h0PyBzaG91bGQgd2UgaW5jbHVkZSBhbnl0aGluZyB3aXRoIGNzcyB3aWR0aCBzcGVjaWZpZWQgYXMgd2VsbAoJCWVsZW1lbnQuZmluZCggIipbd2lkdGhdIiApLmVhY2goIGZ1bmN0aW9uKCkgewoJCQl2YXIgY2hpbGQgPSAkKCB0aGlzICksCgkJCQljaGlsZE9yaWdpbmFsID0gJC5lZmZlY3RzLnNjYWxlZERpbWVuc2lvbnMoIGNoaWxkICksCgkJCQljaGlsZEZyb20gPSB7CgkJCQkJaGVpZ2h0OiBjaGlsZE9yaWdpbmFsLmhlaWdodCAqIGZhY3Rvci5mcm9tLnksCgkJCQkJd2lkdGg6IGNoaWxkT3JpZ2luYWwud2lkdGggKiBmYWN0b3IuZnJvbS54LAoJCQkJCW91dGVySGVpZ2h0OiBjaGlsZE9yaWdpbmFsLm91dGVySGVpZ2h0ICogZmFjdG9yLmZyb20ueSwKCQkJCQlvdXRlcldpZHRoOiBjaGlsZE9yaWdpbmFsLm91dGVyV2lkdGggKiBmYWN0b3IuZnJvbS54CgkJCQl9LAoJCQkJY2hpbGRUbyA9IHsKCQkJCQloZWlnaHQ6IGNoaWxkT3JpZ2luYWwuaGVpZ2h0ICogZmFjdG9yLnRvLnksCgkJCQkJd2lkdGg6IGNoaWxkT3JpZ2luYWwud2lkdGggKiBmYWN0b3IudG8ueCwKCQkJCQlvdXRlckhlaWdodDogY2hpbGRPcmlnaW5hbC5oZWlnaHQgKiBmYWN0b3IudG8ueSwKCQkJCQlvdXRlcldpZHRoOiBjaGlsZE9yaWdpbmFsLndpZHRoICogZmFjdG9yLnRvLngKCQkJCX07CgoJCQkvLyBWZXJ0aWNhbCBwcm9wcyBzY2FsaW5nCgkJCWlmICggZmFjdG9yLmZyb20ueSAhPT0gZmFjdG9yLnRvLnkgKSB7CgkJCQljaGlsZEZyb20gPSAkLmVmZmVjdHMuc2V0VHJhbnNpdGlvbiggY2hpbGQsIHZQcm9wcywgZmFjdG9yLmZyb20ueSwgY2hpbGRGcm9tICk7CgkJCQljaGlsZFRvID0gJC5lZmZlY3RzLnNldFRyYW5zaXRpb24oIGNoaWxkLCB2UHJvcHMsIGZhY3Rvci50by55LCBjaGlsZFRvICk7CgkJCX0KCgkJCS8vIEhvcml6b250YWwgcHJvcHMgc2NhbGluZwoJCQlpZiAoIGZhY3Rvci5mcm9tLnggIT09IGZhY3Rvci50by54ICkgewoJCQkJY2hpbGRGcm9tID0gJC5lZmZlY3RzLnNldFRyYW5zaXRpb24oIGNoaWxkLCBoUHJvcHMsIGZhY3Rvci5mcm9tLngsIGNoaWxkRnJvbSApOwoJCQkJY2hpbGRUbyA9ICQuZWZmZWN0cy5zZXRUcmFuc2l0aW9uKCBjaGlsZCwgaFByb3BzLCBmYWN0b3IudG8ueCwgY2hpbGRUbyApOwoJCQl9CgoJCQlpZiAoIHJlc3RvcmUgKSB7CgkJCQkkLmVmZmVjdHMuc2F2ZVN0eWxlKCBjaGlsZCApOwoJCQl9CgoJCQkvLyBBbmltYXRlIGNoaWxkcmVuCgkJCWNoaWxkLmNzcyggY2hpbGRGcm9tICk7CgkJCWNoaWxkLmFuaW1hdGUoIGNoaWxkVG8sIG9wdGlvbnMuZHVyYXRpb24sIG9wdGlvbnMuZWFzaW5nLCBmdW5jdGlvbigpIHsKCgkJCQkvLyBSZXN0b3JlIGNoaWxkcmVuCgkJCQlpZiAoIHJlc3RvcmUgKSB7CgkJCQkJJC5lZmZlY3RzLnJlc3RvcmVTdHlsZSggY2hpbGQgKTsKCQkJCX0KCQkJfSApOwoJCX0gKTsKCX0KCgkvLyBBbmltYXRlCgllbGVtZW50LmFuaW1hdGUoIHRvLCB7CgkJcXVldWU6IGZhbHNlLAoJCWR1cmF0aW9uOiBvcHRpb25zLmR1cmF0aW9uLAoJCWVhc2luZzogb3B0aW9ucy5lYXNpbmcsCgkJY29tcGxldGU6IGZ1bmN0aW9uKCkgewoKCQkJdmFyIG9mZnNldCA9IGVsZW1lbnQub2Zmc2V0KCk7CgoJCQlpZiAoIHRvLm9wYWNpdHkgPT09IDAgKSB7CgkJCQllbGVtZW50LmNzcyggIm9wYWNpdHkiLCBmcm9tLm9wYWNpdHkgKTsKCQkJfQoKCQkJaWYgKCAhcmVzdG9yZSApIHsKCQkJCWVsZW1lbnQKCQkJCQkuY3NzKCAicG9zaXRpb24iLCBwb3NpdGlvbiA9PT0gInN0YXRpYyIgPyAicmVsYXRpdmUiIDogcG9zaXRpb24gKQoJCQkJCS5vZmZzZXQoIG9mZnNldCApOwoKCQkJCS8vIE5lZWQgdG8gc2F2ZSBzdHlsZSBoZXJlIHNvIHRoYXQgYXV0b21hdGljIHN0eWxlIHJlc3RvcmF0aW9uCgkJCQkvLyBkb2Vzbid0IHJlc3RvcmUgdG8gdGhlIG9yaWdpbmFsIHN0eWxlcyBmcm9tIGJlZm9yZSB0aGUgYW5pbWF0aW9uLgoJCQkJJC5lZmZlY3RzLnNhdmVTdHlsZSggZWxlbWVudCApOwoJCQl9CgoJCQlkb25lKCk7CgkJfQoJfSApOwoKfSApOwoKCi8qIQogKiBqUXVlcnkgVUkgRWZmZWN0cyBTY2FsZSAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IFNjYWxlIEVmZmVjdAovLz4+Z3JvdXA6IEVmZmVjdHMKLy8+PmRlc2NyaXB0aW9uOiBHcm93cyBvciBzaHJpbmtzIGFuIGVsZW1lbnQgYW5kIGl0cyBjb250ZW50LgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vc2NhbGUtZWZmZWN0LwovLz4+ZGVtb3M6IGh0dHA6Ly9qcXVlcnl1aS5jb20vZWZmZWN0LwoKCgp2YXIgZWZmZWN0c0VmZmVjdFNjYWxlID0gJC5lZmZlY3RzLmRlZmluZSggInNjYWxlIiwgZnVuY3Rpb24oIG9wdGlvbnMsIGRvbmUgKSB7CgoJLy8gQ3JlYXRlIGVsZW1lbnQKCXZhciBlbCA9ICQoIHRoaXMgKSwKCQltb2RlID0gb3B0aW9ucy5tb2RlLAoJCXBlcmNlbnQgPSBwYXJzZUludCggb3B0aW9ucy5wZXJjZW50LCAxMCApIHx8CgkJCSggcGFyc2VJbnQoIG9wdGlvbnMucGVyY2VudCwgMTAgKSA9PT0gMCA/IDAgOiAoIG1vZGUgIT09ICJlZmZlY3QiID8gMCA6IDEwMCApICksCgoJCW5ld09wdGlvbnMgPSAkLmV4dGVuZCggdHJ1ZSwgewoJCQlmcm9tOiAkLmVmZmVjdHMuc2NhbGVkRGltZW5zaW9ucyggZWwgKSwKCQkJdG86ICQuZWZmZWN0cy5zY2FsZWREaW1lbnNpb25zKCBlbCwgcGVyY2VudCwgb3B0aW9ucy5kaXJlY3Rpb24gfHwgImJvdGgiICksCgkJCW9yaWdpbjogb3B0aW9ucy5vcmlnaW4gfHwgWyAibWlkZGxlIiwgImNlbnRlciIgXQoJCX0sIG9wdGlvbnMgKTsKCgkvLyBGYWRlIG9wdGlvbiB0byBzdXBwb3J0IHB1ZmYKCWlmICggb3B0aW9ucy5mYWRlICkgewoJCW5ld09wdGlvbnMuZnJvbS5vcGFjaXR5ID0gMTsKCQluZXdPcHRpb25zLnRvLm9wYWNpdHkgPSAwOwoJfQoKCSQuZWZmZWN0cy5lZmZlY3Quc2l6ZS5jYWxsKCB0aGlzLCBuZXdPcHRpb25zLCBkb25lICk7Cn0gKTsKCgovKiEKICogalF1ZXJ5IFVJIEVmZmVjdHMgUHVmZiAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IFB1ZmYgRWZmZWN0Ci8vPj5ncm91cDogRWZmZWN0cwovLz4+ZGVzY3JpcHRpb246IENyZWF0ZXMgYSBwdWZmIGVmZmVjdCBieSBzY2FsaW5nIHRoZSBlbGVtZW50IHVwIGFuZCBoaWRpbmcgaXQgYXQgdGhlIHNhbWUgdGltZS4KLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3B1ZmYtZWZmZWN0LwovLz4+ZGVtb3M6IGh0dHA6Ly9qcXVlcnl1aS5jb20vZWZmZWN0LwoKCgp2YXIgZWZmZWN0c0VmZmVjdFB1ZmYgPSAkLmVmZmVjdHMuZGVmaW5lKCAicHVmZiIsICJoaWRlIiwgZnVuY3Rpb24oIG9wdGlvbnMsIGRvbmUgKSB7Cgl2YXIgbmV3T3B0aW9ucyA9ICQuZXh0ZW5kKCB0cnVlLCB7fSwgb3B0aW9ucywgewoJCWZhZGU6IHRydWUsCgkJcGVyY2VudDogcGFyc2VJbnQoIG9wdGlvbnMucGVyY2VudCwgMTAgKSB8fCAxNTAKCX0gKTsKCgkkLmVmZmVjdHMuZWZmZWN0LnNjYWxlLmNhbGwoIHRoaXMsIG5ld09wdGlvbnMsIGRvbmUgKTsKfSApOwoKCi8qIQogKiBqUXVlcnkgVUkgRWZmZWN0cyBQdWxzYXRlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogUHVsc2F0ZSBFZmZlY3QKLy8+Pmdyb3VwOiBFZmZlY3RzCi8vPj5kZXNjcmlwdGlvbjogUHVsc2F0ZXMgYW4gZWxlbWVudCBuIHRpbWVzIGJ5IGNoYW5naW5nIHRoZSBvcGFjaXR5IHRvIHplcm8gYW5kIGJhY2suCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9wdWxzYXRlLWVmZmVjdC8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL2VmZmVjdC8KCgoKdmFyIGVmZmVjdHNFZmZlY3RQdWxzYXRlID0gJC5lZmZlY3RzLmRlZmluZSggInB1bHNhdGUiLCAic2hvdyIsIGZ1bmN0aW9uKCBvcHRpb25zLCBkb25lICkgewoJdmFyIGVsZW1lbnQgPSAkKCB0aGlzICksCgkJbW9kZSA9IG9wdGlvbnMubW9kZSwKCQlzaG93ID0gbW9kZSA9PT0gInNob3ciLAoJCWhpZGUgPSBtb2RlID09PSAiaGlkZSIsCgkJc2hvd2hpZGUgPSBzaG93IHx8IGhpZGUsCgoJCS8vIFNob3dpbmcgb3IgaGlkaW5nIGxlYXZlcyBvZmYgdGhlICJsYXN0IiBhbmltYXRpb24KCQlhbmltcyA9ICggKCBvcHRpb25zLnRpbWVzIHx8IDUgKSAqIDIgKSArICggc2hvd2hpZGUgPyAxIDogMCApLAoJCWR1cmF0aW9uID0gb3B0aW9ucy5kdXJhdGlvbiAvIGFuaW1zLAoJCWFuaW1hdGVUbyA9IDAsCgkJaSA9IDEsCgkJcXVldWVsZW4gPSBlbGVtZW50LnF1ZXVlKCkubGVuZ3RoOwoKCWlmICggc2hvdyB8fCAhZWxlbWVudC5pcyggIjp2aXNpYmxlIiApICkgewoJCWVsZW1lbnQuY3NzKCAib3BhY2l0eSIsIDAgKS5zaG93KCk7CgkJYW5pbWF0ZVRvID0gMTsKCX0KCgkvLyBBbmltcyAtIDEgb3BhY2l0eSAidG9nZ2xlcyIKCWZvciAoIDsgaSA8IGFuaW1zOyBpKysgKSB7CgkJZWxlbWVudC5hbmltYXRlKCB7IG9wYWNpdHk6IGFuaW1hdGVUbyB9LCBkdXJhdGlvbiwgb3B0aW9ucy5lYXNpbmcgKTsKCQlhbmltYXRlVG8gPSAxIC0gYW5pbWF0ZVRvOwoJfQoKCWVsZW1lbnQuYW5pbWF0ZSggeyBvcGFjaXR5OiBhbmltYXRlVG8gfSwgZHVyYXRpb24sIG9wdGlvbnMuZWFzaW5nICk7CgoJZWxlbWVudC5xdWV1ZSggZG9uZSApOwoKCSQuZWZmZWN0cy51bnNoaWZ0KCBlbGVtZW50LCBxdWV1ZWxlbiwgYW5pbXMgKyAxICk7Cn0gKTsKCgovKiEKICogalF1ZXJ5IFVJIEVmZmVjdHMgU2hha2UgMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiBTaGFrZSBFZmZlY3QKLy8+Pmdyb3VwOiBFZmZlY3RzCi8vPj5kZXNjcmlwdGlvbjogU2hha2VzIGFuIGVsZW1lbnQgaG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkgbiB0aW1lcy4KLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3NoYWtlLWVmZmVjdC8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL2VmZmVjdC8KCgoKdmFyIGVmZmVjdHNFZmZlY3RTaGFrZSA9ICQuZWZmZWN0cy5kZWZpbmUoICJzaGFrZSIsIGZ1bmN0aW9uKCBvcHRpb25zLCBkb25lICkgewoKCXZhciBpID0gMSwKCQllbGVtZW50ID0gJCggdGhpcyApLAoJCWRpcmVjdGlvbiA9IG9wdGlvbnMuZGlyZWN0aW9uIHx8ICJsZWZ0IiwKCQlkaXN0YW5jZSA9IG9wdGlvbnMuZGlzdGFuY2UgfHwgMjAsCgkJdGltZXMgPSBvcHRpb25zLnRpbWVzIHx8IDMsCgkJYW5pbXMgPSB0aW1lcyAqIDIgKyAxLAoJCXNwZWVkID0gTWF0aC5yb3VuZCggb3B0aW9ucy5kdXJhdGlvbiAvIGFuaW1zICksCgkJcmVmID0gKCBkaXJlY3Rpb24gPT09ICJ1cCIgfHwgZGlyZWN0aW9uID09PSAiZG93biIgKSA/ICJ0b3AiIDogImxlZnQiLAoJCXBvc2l0aXZlTW90aW9uID0gKCBkaXJlY3Rpb24gPT09ICJ1cCIgfHwgZGlyZWN0aW9uID09PSAibGVmdCIgKSwKCQlhbmltYXRpb24gPSB7fSwKCQlhbmltYXRpb24xID0ge30sCgkJYW5pbWF0aW9uMiA9IHt9LAoKCQlxdWV1ZWxlbiA9IGVsZW1lbnQucXVldWUoKS5sZW5ndGg7CgoJJC5lZmZlY3RzLmNyZWF0ZVBsYWNlaG9sZGVyKCBlbGVtZW50ICk7CgoJLy8gQW5pbWF0aW9uCglhbmltYXRpb25bIHJlZiBdID0gKCBwb3NpdGl2ZU1vdGlvbiA/ICItPSIgOiAiKz0iICkgKyBkaXN0YW5jZTsKCWFuaW1hdGlvbjFbIHJlZiBdID0gKCBwb3NpdGl2ZU1vdGlvbiA/ICIrPSIgOiAiLT0iICkgKyBkaXN0YW5jZSAqIDI7CglhbmltYXRpb24yWyByZWYgXSA9ICggcG9zaXRpdmVNb3Rpb24gPyAiLT0iIDogIis9IiApICsgZGlzdGFuY2UgKiAyOwoKCS8vIEFuaW1hdGUKCWVsZW1lbnQuYW5pbWF0ZSggYW5pbWF0aW9uLCBzcGVlZCwgb3B0aW9ucy5lYXNpbmcgKTsKCgkvLyBTaGFrZXMKCWZvciAoIDsgaSA8IHRpbWVzOyBpKysgKSB7CgkJZWxlbWVudAoJCQkuYW5pbWF0ZSggYW5pbWF0aW9uMSwgc3BlZWQsIG9wdGlvbnMuZWFzaW5nICkKCQkJLmFuaW1hdGUoIGFuaW1hdGlvbjIsIHNwZWVkLCBvcHRpb25zLmVhc2luZyApOwoJfQoKCWVsZW1lbnQKCQkuYW5pbWF0ZSggYW5pbWF0aW9uMSwgc3BlZWQsIG9wdGlvbnMuZWFzaW5nICkKCQkuYW5pbWF0ZSggYW5pbWF0aW9uLCBzcGVlZCAvIDIsIG9wdGlvbnMuZWFzaW5nICkKCQkucXVldWUoIGRvbmUgKTsKCgkkLmVmZmVjdHMudW5zaGlmdCggZWxlbWVudCwgcXVldWVsZW4sIGFuaW1zICsgMSApOwp9ICk7CgoKLyohCiAqIGpRdWVyeSBVSSBFZmZlY3RzIFNsaWRlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogU2xpZGUgRWZmZWN0Ci8vPj5ncm91cDogRWZmZWN0cwovLz4+ZGVzY3JpcHRpb246IFNsaWRlcyBhbiBlbGVtZW50IGluIGFuZCBvdXQgb2YgdGhlIHZpZXdwb3J0LgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vc2xpZGUtZWZmZWN0LwovLz4+ZGVtb3M6IGh0dHA6Ly9qcXVlcnl1aS5jb20vZWZmZWN0LwoKCgp2YXIgZWZmZWN0c0VmZmVjdFNsaWRlID0gJC5lZmZlY3RzLmRlZmluZSggInNsaWRlIiwgInNob3ciLCBmdW5jdGlvbiggb3B0aW9ucywgZG9uZSApIHsKCXZhciBzdGFydENsaXAsIHN0YXJ0UmVmLAoJCWVsZW1lbnQgPSAkKCB0aGlzICksCgkJbWFwID0gewoJCQl1cDogWyAiYm90dG9tIiwgInRvcCIgXSwKCQkJZG93bjogWyAidG9wIiwgImJvdHRvbSIgXSwKCQkJbGVmdDogWyAicmlnaHQiLCAibGVmdCIgXSwKCQkJcmlnaHQ6IFsgImxlZnQiLCAicmlnaHQiIF0KCQl9LAoJCW1vZGUgPSBvcHRpb25zLm1vZGUsCgkJZGlyZWN0aW9uID0gb3B0aW9ucy5kaXJlY3Rpb24gfHwgImxlZnQiLAoJCXJlZiA9ICggZGlyZWN0aW9uID09PSAidXAiIHx8IGRpcmVjdGlvbiA9PT0gImRvd24iICkgPyAidG9wIiA6ICJsZWZ0IiwKCQlwb3NpdGl2ZU1vdGlvbiA9ICggZGlyZWN0aW9uID09PSAidXAiIHx8IGRpcmVjdGlvbiA9PT0gImxlZnQiICksCgkJZGlzdGFuY2UgPSBvcHRpb25zLmRpc3RhbmNlIHx8CgkJCWVsZW1lbnRbIHJlZiA9PT0gInRvcCIgPyAib3V0ZXJIZWlnaHQiIDogIm91dGVyV2lkdGgiIF0oIHRydWUgKSwKCQlhbmltYXRpb24gPSB7fTsKCgkkLmVmZmVjdHMuY3JlYXRlUGxhY2Vob2xkZXIoIGVsZW1lbnQgKTsKCglzdGFydENsaXAgPSBlbGVtZW50LmNzc0NsaXAoKTsKCXN0YXJ0UmVmID0gZWxlbWVudC5wb3NpdGlvbigpWyByZWYgXTsKCgkvLyBEZWZpbmUgaGlkZSBhbmltYXRpb24KCWFuaW1hdGlvblsgcmVmIF0gPSAoIHBvc2l0aXZlTW90aW9uID8gLTEgOiAxICkgKiBkaXN0YW5jZSArIHN0YXJ0UmVmOwoJYW5pbWF0aW9uLmNsaXAgPSBlbGVtZW50LmNzc0NsaXAoKTsKCWFuaW1hdGlvbi5jbGlwWyBtYXBbIGRpcmVjdGlvbiBdWyAxIF0gXSA9IGFuaW1hdGlvbi5jbGlwWyBtYXBbIGRpcmVjdGlvbiBdWyAwIF0gXTsKCgkvLyBSZXZlcnNlIHRoZSBhbmltYXRpb24gaWYgd2UncmUgc2hvd2luZwoJaWYgKCBtb2RlID09PSAic2hvdyIgKSB7CgkJZWxlbWVudC5jc3NDbGlwKCBhbmltYXRpb24uY2xpcCApOwoJCWVsZW1lbnQuY3NzKCByZWYsIGFuaW1hdGlvblsgcmVmIF0gKTsKCQlhbmltYXRpb24uY2xpcCA9IHN0YXJ0Q2xpcDsKCQlhbmltYXRpb25bIHJlZiBdID0gc3RhcnRSZWY7Cgl9CgoJLy8gQWN0dWFsbHkgYW5pbWF0ZQoJZWxlbWVudC5hbmltYXRlKCBhbmltYXRpb24sIHsKCQlxdWV1ZTogZmFsc2UsCgkJZHVyYXRpb246IG9wdGlvbnMuZHVyYXRpb24sCgkJZWFzaW5nOiBvcHRpb25zLmVhc2luZywKCQljb21wbGV0ZTogZG9uZQoJfSApOwp9ICk7CgoKLyohCiAqIGpRdWVyeSBVSSBFZmZlY3RzIFRyYW5zZmVyIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogVHJhbnNmZXIgRWZmZWN0Ci8vPj5ncm91cDogRWZmZWN0cwovLz4+ZGVzY3JpcHRpb246IERpc3BsYXlzIGEgdHJhbnNmZXIgZWZmZWN0IGZyb20gb25lIGVsZW1lbnQgdG8gYW5vdGhlci4KLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3RyYW5zZmVyLWVmZmVjdC8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL2VmZmVjdC8KCgoKdmFyIGVmZmVjdDsKaWYgKCAkLnVpQmFja0NvbXBhdCAhPT0gZmFsc2UgKSB7CgllZmZlY3QgPSAkLmVmZmVjdHMuZGVmaW5lKCAidHJhbnNmZXIiLCBmdW5jdGlvbiggb3B0aW9ucywgZG9uZSApIHsKCQkkKCB0aGlzICkudHJhbnNmZXIoIG9wdGlvbnMsIGRvbmUgKTsKCX0gKTsKfQp2YXIgZWZmZWN0c0VmZmVjdFRyYW5zZmVyID0gZWZmZWN0OwoKCgoKfSkpOw=="}},"time_used":213,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":213,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/noti/fake.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.062Z","timestamp":1785126256062,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /noti/fake.js HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Sat, 07 Oct 2023 09:01:37 GMT\r\netag: W/\"65211e71-ca0\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":3232,"size_decoded":1293,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (1999), with CRLF line terminators","md5":"6bda9dc367efb649fd72a2da6fe8d256","sha1":"0d2c5e7211e4d5933ab2fb2599b9114cb9e5a86e","sha256":"569bac53f3de95b50f302baaf9a56c762967f755846a3c54ea6d7097af7d7ddc","sha512":"db30efaa1e68f93fc972f6818a34c23193be8e6625d2ce8d0025b70576010cb4e228b1fb2122feff918328e91a4c31ef64b2e69f8b6b3141913be3e9beb9d78d","ssdeep":"","tlshash":"906130df3251642e83e7d03ed9dff4c44632151eca460629191ad06a9ae437c638fcd8","first_seen":"2025-10-04T21:35:53.199263Z","last_seen":"2026-07-27T06:59:18.35389Z","times_seen":17,"resource_available":true,"data":"IWZ1bmN0aW9uKGEpIHsidXNlIHN0cmljdCI7IGEuZm4uTm90aWZpY2F0aW9uID0gZnVuY3Rpb24gKGIpIA0KeyB2YXIgYyA9IGEuZXh0ZW5kKHsgVmFyaWJsZTE6IFsiRW1tYSIsICJOb2FoIiwgIk9saXZpYSIsICJMaWFtIiwgIkF2YSIsIldpbGxpYW0iXSwgVmFyaWJsZTI6IFsiQmFuZ2tvayIsIkxvbmRvbiIsIlBhcmlzIiwiRHViYWkiLCJOZXcgWW9yayIsIlNpbmdhcG9yZSJdLCBBbW91bnQ6IFsxMDAsIDI1MDBdLCANCkNvbnRlbnQ6ICdbVmFyaWJsZTFdIGZyb20gW1ZhcmlibGUyXSBoYXMganVzdCBwbGFjZWQgYW4gb3JkZXIgZm9yICRbQW1vdW50XS4nLCBTaG93OiBbJ3N0YWJsZScsIDUsIDI1XSwgQ2xvc2U6IDUsIFRpbWU6IFswLCAyM10sIExvY2F0aW9uVG9wOiBbdHJ1ZSwgJzEwJSddLCBMb2NhdGlvbkJvdHRvbTpbZmFsc2UsICcxMCUnXSwgDQpMb2NhdGlvblJpZ2h0OiBbdHJ1ZSwgJzEwJSddLCBMb2NhdGlvbkxlZnQ6W2ZhbHNlLCAnMTAlJ10sIEJhY2tncm91bmQ6ICdibGFjaycsIEJvcmRlclJhZGl1czogNSwgQm9yZGVyV2lkdGg6IDEsIEJvcmRlckNvbG9yOiAncmVkJywgVGV4dENvbG9yOiAnd2hpdGUnLCBJY29uQ29sb3I6ICd3aGl0ZScsIEFuaW1hdGlvbkVmZmVjdE9wZW46ICdmYWRlSW4nLCANCkFuaW1hdGlvbkVmZmVjdENsb3NlOiAnZmFkZU91dCcsIE51bWJlcjogMywgTGluazogW2ZhbHNlLCAnaHR0cHM6Ly90cmFkaW5nLnRyYWRlZnhwcm8uaW8vJywgJ19ibGFuayddIH0sIGIpOyByZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uICgpIHsgdmFyIHNlbGYgPSB0aGlzOyB2YXIgbnVtYmVyID0gMDsgDQp2YXIgY3VycmVudHRpbWUgPSBuZXcgRGF0ZSgpOyB2YXIgY3VycmVudGhvdXJzID0gY3VycmVudHRpbWUuZ2V0SG91cnMoKTsgaWYoYy5UaW1lWzBdIDw9IGN1cnJlbnRob3VycyAmJiBjdXJyZW50aG91cnMgPD0gYy5UaW1lWzFdKXsgQSgpOyB9IEIoKTsgZnVuY3Rpb24gQigpIHsgYShzZWxmKS5hZGRDbGFzcygnYW5pbWF0ZWQnKTsgaWYgKGMuTG9jYXRpb25Ub3BbMF0NCiA9PSB0cnVlKXsgaWYgKGMuTG9jYXRpb25SaWdodFswXSA9PSB0cnVlKXsgYShzZWxmKS5jc3MoeyAndG9wJyA6IGMuTG9jYXRpb25Ub3BbMV0sICdyaWdodCcgOiBjLkxvY2F0aW9uUmlnaHRbMV0sIH0pOyB9IGVsc2V7IGEoc2VsZikuY3NzKHsgJ3RvcCcgOiBjLkxvY2F0aW9uVG9wWzFdLCAnbGVmdCcgOiBjLkxvY2F0aW9uTGVmdFsxXSwgfSk7IH0gfSBlbHNlIA0KIHsgaWYgKGMuTG9jYXRpb25SaWdodFswXSA9PSB0cnVlKXsgYShzZWxmKS5jc3MoeyAnYm90dG9tJyA6IGMuTG9jYXRpb25Ub3BbMV0sICdyaWdodCcgOiBjLkxvY2F0aW9uUmlnaHRbMV0sIH0pOyB9IGVsc2V7IGEoc2VsZikuY3NzKHsgJ2JvdHRvbScgOiBjLkxvY2F0aW9uVG9wWzFdLCAnbGVmdCcgOiBjLkxvY2F0aW9uTGVmdFsxXSwgfSk7IH0gfSBhKHNlbGYpLmNzcyh7ICdib3JkZXItcmFkaXVzJyA6IGMuQm9yZGVyUmFkaXVzKydweCcsICdib3JkZXItd2lkdGgnIDogYy5Cb3JkZXJXaWR0aCsncHgnLCAnYm9yZGVyLWNvbG9yJyA6IGMuQm9yZGVyQ29sb3IsICdiYWNrZ3JvdW5kJyA6IGMuQmFja2dyb3VuZCB9KTsgYShzZWxmKS5maW5kKCcubm90aWZpY2F0aW9uLWltZycpLmNzcyh7ICdjb2xvcicgOiBjLkljb25Db2xvciB9KTsgYShzZWxmKS5maW5kKCcubm90aWZpY2F0aW9uLXRleHQtYmxvY2snKS5jc3MoeyAnY29sb3InIDogYy5UZXh0Q29sb3IgfSk7IGlmKGMuTGlua1swXSA9PSB0cnVlKXsgYShzZWxmKS5hdHRyKCJvbmNsaWNrIiwid2luZG93Lm9wZW4oJyIrYy5MaW5rWzFdKyInLCciK2MuTGlua1syXSsiJyk7Iik7IGEoc2VsZikuY3NzKHsnY3Vyc29yJyA6ICdwb2ludGVyJ30pOyB9IH07IGZ1bmN0aW9uIEEoKSB7IGlmIChjLlNob3dbMF0gPT0gJ3N0YWJsZScpeyB2YXIgb3BlbiA9IGMuU2hvd1sxXSAqIDEwMDA7IH0gZWxzZSB7IHZhciBvcGVuID0gKE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIChjLlNob3dbMl0gLSBjLlNob3dbMV0pKSArIGMuU2hvd1sxXSkgKiAxMDAwOyB9IHNldFRpbWVvdXQoZnVuY3Rpb24oKXsgSigpOyBhKHNlbGYpLnNob3coKTsgRCgpOyB2YXIgcmFuZF9oZWFyZF9uYW1lID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogYy5WYXJpYmxlMS5sZW5ndGgpOyB2YXIgcmFuZF9oZWFyZF9jaXR5ID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogYy5WYXJpYmxlMi5sZW5ndGgpOyB2YXIgcmFuZF9oZWFyZF9udW1iZXIgPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAoYy5BbW91bnRbMF0gLSBjLkFtb3VudFsxXSkpICsgYy5BbW91bnRbMV07IGlmKGMuQ29udGVudC5pbmRleE9mKCdbVmFyaWJsZTFdJykgKyAxKSB7IHZhciBjb250ZW50ID0gYy5Db250ZW50LnJlcGxhY2UoIltWYXJpYmxlMV0iLCBjLlZhcmlibGUxW3JhbmRfaGVhcmRfbmFtZV0pOyB9IGVsc2UgeyB2YXIgY29udGVudCA9IGMuQ29udGVudC5yZXBsYWNlKCJbVmFyaWJsZTFdIiwgYy5WYXJpYmxlMVtyYW5kX2hlYXJkX25hbWVdKTsgfSBpZihjb250ZW50LmluZGV4T2YoJ1tWYXJpYmxlMl0nKSArIDEpIHsgdmFyIGNvbnRlbnQgPSBjb250ZW50LnJlcGxhY2UoIltWYXJpYmxlMl0iLCBjLlZhcmlibGUyW3JhbmRfaGVhcmRfY2l0eV0pOyB9IGVsc2UgeyB2YXIgY29udGVudCA9IGNvbnRlbnQucmVwbGFjZSgiW1ZhcmlibGUyXSIsIGMuVmFyaWJsZTJbcmFuZF9oZWFyZF9jaXR5XSk7IH0gdmFyIGNvbnRlbnQgPSBjb250ZW50LnJlcGxhY2UoIltBbW91bnRdIiwgcmFuZF9oZWFyZF9udW1iZXIpOyBhKHNlbGYpLmZpbmQoJy5ub3RpZmljYXRpb24tdGV4dCcpLmh0bWwoY29udGVudCk7IG51bWJlcisrOyBDKCk7IH0sIG9wZW4pOyB9IGZ1bmN0aW9uIEMoKSB7IHZhciBjbG9zZSA9IGMuQ2xvc2UgKiAxMDAwOyBzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7IEUoKTsgRigpOyBpZihudW1iZXIgPCBjLk51bWJlcil7IEEoKTsgfSB9LCBjbG9zZSk7IH0gZnVuY3Rpb24gRCgpIHsgYShzZWxmKS5hZGRDbGFzcyhjLkFuaW1hdGlvbkVmZmVjdE9wZW4pOyB9IGZ1bmN0aW9uIEUoKSB7IGEoc2VsZikucmVtb3ZlQ2xhc3MoYy5BbmltYXRpb25FZmZlY3RPcGVuKTsgfSBmdW5jdGlvbiBGKCkgeyBhKHNlbGYpLmFkZENsYXNzKGMuQW5pbWF0aW9uRWZmZWN0Q2xvc2UpOyB9IGZ1bmN0aW9uIEooKSB7IGEoc2VsZikucmVtb3ZlQ2xhc3MoYy5BbmltYXRpb25FZmZlY3RDbG9zZSk7IH0gfSk7IH0gfShqUXVlcnkpOw=="}},"time_used":343,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":343,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2","fqdn":"fonts.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.67","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://www.youtube.com/embed/Gc2en3nHxA4","date":"2026-07-27T04:24:16.920Z","timestamp":1785126256920,"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: 353229\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-27T07:04:13.046777Z","times_seen":947013,"resource_available":false,"data":"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"}},"time_used":33,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":17,"receive":16,"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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.230Z","timestamp":1785126257230,"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-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/ticker-tape/?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 04:24:17 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: bc48d8e8723a61f867afdb442012101c\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-27T07:05:45.464474Z","times_seen":4765,"resource_available":false,"data":"LnR2LWRhdGEtbW9kZXt2ZXJ0aWNhbC1hbGlnbjp0b3B9LnR2LWRhdGEtbW9kZS0tcmVhbHRpbWV7Y29sb3I6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMzAwKX0udHYtZGF0YS1tb2RlLS1zbmFwc2hvdHtjb2xvcjp2YXIoLS1jb2xvci10di1ibHVlLTQwMCl9LnR2LWRhdGEtbW9kZS0tZW5kb2ZkYXl7Y29sb3I6dmFyKC0tY29sb3ItZ3JhcGVzLXB1cnBsZS00MDApfS50di1kYXRhLW1vZGUtLWNvbm5lY3RpbmcsLnR2LWRhdGEtbW9kZS0tZm9yYmlkZGVuLC50di1kYXRhLW1vZGUtLWludmFsaWQsLnR2LWRhdGEtbW9kZS0tbG9hZGluZ3t2aXNpYmlsaXR5OmhpZGRlbn0udHYtZGF0YS1tb2RlLS1kZWxheWVke2NvbG9yOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKX0udHYtZGF0YS1tb2RlLS1mb3ItdGlja2VyLWxhc3R7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NzAwO21hcmdpbi1pbmxpbmUtc3RhcnQ6MnB4O3Bvc2l0aW9uOmFic29sdXRlfS50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1mb3ItdGlja2VyLWxhc3R7ZGlzcGxheTpub25lfS50di1kYXRhLW1vZGUtLWZvci1zdGlja3ktc3ltYm9sLWhlYWRlciwudHYtZGF0YS1tb2RlLS1mb3ItdGlja2VyLXRhcGV7Zm9udC1zaXplOjEwcHg7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMnB4KX0udHYtZGF0YS1tb2RlLS1mb3Itc3RpY2t5LXN5bWJvbC1oZWFkZXI6ZGlyKHJ0bCksLnR2LWRhdGEtbW9kZS0tZm9yLXRpY2tlci10YXBlOmRpcihydGwpe3RyYW5zZm9ybTp0cmFuc2xhdGVYKC0ycHgpfS50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1mb3Itc3RpY2t5LXN5bWJvbC1oZWFkZXIsLnR2LWRhdGEtbW9kZS0tcmVhbHRpbWUtLWZvci10aWNrZXItdGFwZXtkaXNwbGF5Om5vbmV9LnR2LWRhdGEtbW9kZS0tZm9yLXRpY2tlci1oZWFkZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOjEwcHg7bGluZS1oZWlnaHQ6bm9ybWFsO21hcmdpbi1pbmxpbmUtc3RhcnQ6MXB4O21hcmdpbi10b3A6NHB4O3ZlcnRpY2FsLWFsaWduOnRvcH0udHYtZGF0YS1tb2RlLS1yZWFsdGltZS0tZm9yLXRpY2tlci1oZWFkZXJ7ZGlzcGxheTpub25lfS50di1kYXRhLW1vZGUtLWZvci10aWNrZXJ7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOjEwcHg7bWFyZ2luLWxlZnQ6MnB4fS50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1mb3ItdGlja2VyLC50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1uby1yZWFsdGltZXtkaXNwbGF5Om5vbmV9LnR2LWRhdGEtbW9kZS0tcmVwbGF5e2NvbG9yOnZhcigtLWNvbG9yLXJlcGxheS1kYXRhLW1vZGUpfS50di1kYXRhLW1vZGUtLWZvci1jaGFydHtmbG9hdDppbmxpbmUtZW5kO2xpbmUtaGVpZ2h0OjE2cHg7bWFyZ2luLWlubGluZS1zdGFydDo2cHh9LnR2LWRhdGEtbW9kZS0tY29ubmVjdGluZy0tZm9yLWNoYXJ0LC50di1kYXRhLW1vZGUtLWxvYWRpbmctLWZvci1jaGFydHtkaXNwbGF5Om5vbmV9LnR2LWRhdGEtbW9kZS0tZm9yYmlkZGVuLS1mb3ItY2hhcnQsLnR2LWRhdGEtbW9kZS0taW52YWxpZC0tZm9yLWNoYXJ0e2NvbG9yOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7dmlzaWJpbGl0eTp2aXNpYmxlfS50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1mb3ItY2hhcnR7ZGlzcGxheTpub25lfS50di1kYXRhLW1vZGUtLWZvci1jaGFydC50di1kYXRhLW1vZGUtLXJlcGxheXttYXJnaW4tbGVmdDowfS50di1kYXRhLW1vZGUtLWZvci10aWNrZXItY2FyZHtkaXNwbGF5OmlubGluZTttYXJnaW4taW5saW5lLXN0YXJ0OjRweH0udHYtZGF0YS1tb2RlLS1mb3Itc3ltYm9sLXdpZGdldHtkaXNwbGF5OmlubGluZTtmb250LXNpemU6MTVweDtsaW5lLWhlaWdodDoxN3B4O21hcmdpbi1sZWZ0OjNweH0udHYtZGF0YS1tb2RlLS1yZWFsdGltZS50di1kYXRhLW1vZGUtLWZvci1zeW1ib2wtd2lkZ2V0LC50di1kYXRhLW1vZGUtLXJlYWx0aW1lLnR2LWRhdGEtbW9kZS0tZm9yLXRpY2tlci1jYXJke2Rpc3BsYXk6bm9uZX0udHYtZGF0YS1tb2RlLS1mb3Itd2F0Y2gtbGlzdHtmb250LXNpemU6MTBweDtsaW5lLWhlaWdodDoxNHB4O292ZXJmbG93OnZpc2libGU7cG9pbnRlci1ldmVudHM6YXV0bzt3aGl0ZS1zcGFjZTpub3dyYXB9LnR2LWRhdGEtbW9kZS0tZm9yLXdhdGNoLWxpc3Q6ZGlyKHJ0bCl7bWFyZ2luLWxlZnQ6MDttYXJnaW4tcmlnaHQ6MnB4fS50di1kYXRhLW1vZGUtLXJlYWx0aW1lLS1mb3Itd2F0Y2gtbGlzdHt2aXNpYmlsaXR5OmhpZGRlbn0udHYtZGF0YS1tb2RlLS1zaXplX2xhcmdle2ZvbnQtc2l6ZToxMnB4fS50di1kYXRhLW1vZGUtLWZvci1zeW1ib2wtaW5mb3tkaXNwbGF5OmlubGluZTtmb250LXNpemU6MTVweDtsaW5lLWhlaWdodDoxN3B4O21hcmdpbi1sZWZ0OjNweH0udHYtZGF0YS1tb2RlLS1yZWFsdGltZS0tZm9yLXN5bWJvbC1pbmZve2Rpc3BsYXk6bm9uZX0udHYtZGF0YS1tb2RlLS1mb3Itc2NyZWVuZXJ7Zm9udC1zaXplOjEwcHh9LnR2LWRhdGEtbW9kZS0tcmVhbHRpbWUtLWZvci1zY3JlZW5lcntkaXNwbGF5Om5vbmV9"}},"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.tradingview-widget.com/static/bundles/embed/36166.7637be1cf2514504ac79.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.361Z","timestamp":1785126257361,"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-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/36166.7637be1cf2514504ac79.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/crypto-mkt-screener/?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 04:24:17 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-52e1\"\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:20:17\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 15709fcf61c61153ba1db06984711317\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":21217,"size_decoded":9572,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3063)","md5":"51776a5fc46a025b06d1b20c444a8934","sha1":"ded406bfe93dcf4112270cd3f1634b7bec2da0cf","sha256":"6619f156d8b0192fb34d6c756bf0bda361c55a6a2d79c9fe1117d9a83ad626df","sha512":"1a8c2a8de6868dcf9765cf86c13f9a9f50c87cc022a6142c3a48a4e8da04589a6c06376ccb2928de274dd64f5558784b2a5f2c5c13617c7c40ea38359ab819ad","ssdeep":"384:Ew9WKLri/jpKfQVAFzMnNReRhrt3bkiRWXxKziTObRcRbF:Ew9WKa9K4Gz4fejx1RWszhbe9F","tlshash":"8492b5c8b1e1f0e556e768a0807f444bf13a7d19349e9060a3a2d4d678b46dec07bf6e","first_seen":"2026-07-25T03:24:57.421925Z","last_seen":"2026-07-27T07:14:43.842369Z","times_seen":147,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1szNjE2Niw4MDcwNl0sezcxMjc0NSh0LHIsZSl7dmFyIG47IWZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO3ZhciBvLHU9MWU2LGk9MWU2LGM9IltiaWcuanNdICIsZj1jKyJJbnZhbGlkICIscz1mKyJkZWNpbWFsIHBsYWNlcyIsYT1mKyJyb3VuZGluZyBtb2RlIixsPWMrIkRpdmlzaW9uIGJ5IHplcm8iLHA9e30saD12b2lkIDAsZD0vXi0/KFxkKyhcLlxkKik/fFwuXGQrKShlWystXT9cZCspPyQvaTtmdW5jdGlvbiB5KHQscixlLG4pe3ZhciBvPXQuYztpZihlPT09aCYmKGU9dC5jb25zdHJ1Y3Rvci5STSksMCE9PWUmJjEhPT1lJiYyIT09ZSYmMyE9PWUpdGhyb3cgRXJyb3IoYSk7aWYocjwxKW49Mz09PWUmJihufHwhIW9bMF0pfHwwPT09ciYmKDE9PT1lJiZvWzBdPj01fHwyPT09ZSYmKG9bMF0+NXx8NT09PW9bMF0mJihufHxvWzFdIT09aCkpKSxvLmxlbmd0aD0xLG4/KHQuZT10LmUtcisxLG9bMF09MSk6b1swXT10LmU9MDtlbHNlIGlmKHI8by5sZW5ndGgpe2lmKG49MT09PWUmJm9bcl0+PTV8fDI9PT1lJiYob1tyXT41fHw1PT09b1tyXSYmKG58fG9bcisxXSE9PWh8fDEmb1tyLTFdKSl8fDM9PT1lJiYobnx8ISFvWzBdKSxvLmxlbmd0aD1yLS0sbilmb3IoOysrb1tyXT45OylvW3JdPTAsci0tfHwoKyt0LmUsby51bnNoaWZ0KDEpKTtmb3Iocj1vLmxlbmd0aDshb1stLXJdOylvLnBvcCgpfXJldHVybiB0fWZ1bmN0aW9uIHYodCxyLGUpe3ZhciBuPXQuZSxvPXQuYy5qb2luKCIiKSx1PW8ubGVuZ3RoO2lmKHIpbz1vLmNoYXJBdCgwKSsodT4xPyIuIitvLnNsaWNlKDEpOiIiKSsobjwwPyJlIjoiZSsiKStuO2Vsc2UgaWYobjwwKXtmb3IoOysrbjspbz0iMCIrbztvPSIwLiIrb31lbHNlIGlmKG4+MClpZigrK24+dSlmb3Iobi09dTtuLS07KW8rPSIwIjtlbHNlIG48dSYmKG89by5zbGljZSgwLG4pKyIuIitvLnNsaWNlKG4pKTtlbHNlIHU+MSYmKG89by5jaGFyQXQoMCkrIi4iK28uc2xpY2UoMSkpO3JldHVybiB0LnM8MCYmZT8iLSIrbzpvfXAuYWJzPWZ1bmN0aW9uKCl7dmFyIHQ9bmV3IHRoaXMuY29uc3RydWN0b3IodGhpcyk7cmV0dXJuIHQucz0xLHR9LHAuY21wPWZ1bmN0aW9uKHQpe3ZhciByLGU9dGhpcyxuPWUuYyxvPSh0PW5ldyBlLmNvbnN0cnVjdG9yKHQpKS5jLHU9ZS5zLGk9dC5zLGM9ZS5lLGY9dC5lO2lmKCFuWzBdfHwhb1swXSlyZXR1cm4gblswXT91Om9bMF0/LWk6MDtpZih1IT1pKXJldHVybiB1O2lmKHI9dTwwLGMhPWYpcmV0dXJuIGM+Zl5yPzE6LTE7Zm9yKGk9KGM9bi5sZW5ndGgpPChmPW8ubGVuZ3RoKT9jOmYsdT0tMTsrK3U8aTspaWYoblt1XSE9b1t1XSlyZXR1cm4gblt1XT5vW3VdXnI/MTotMTtyZXR1cm4gYz09Zj8wOmM+Zl5yPzE6LTF9LHAuZGl2PWZ1bmN0aW9uKHQpe3ZhciByPXRoaXMsZT1yLmNvbnN0cnVjdG9yLG49ci5jLG89KHQ9bmV3IGUodCkpLmMsaT1yLnM9PXQucz8xOi0xLGM9ZS5EUDtpZihjIT09fn5jfHxjPDB8fGM+dSl0aHJvdyBFcnJvcihzKTtpZighb1swXSl0aHJvdyBFcnJvcihsKTtpZighblswXSlyZXR1cm4gdC5zPWksdC5jPVt0LmU9MF0sdDt2YXIgZixhLHAsZCx2LHc9by5zbGljZSgpLGI9Zj1vLmxlbmd0aCxnPW4ubGVuZ3RoLG09bi5zbGljZSgwLGYpLEU9bS5sZW5ndGgsXz10LFM9Xy5jPVtdLE89MCxqPWMrKF8uZT1yLmUtdC5lKSsxO2ZvcihfLnM9aSxpPWo8MD8wOmosdy51bnNoaWZ0KDApO0UrKzxmOyltLnB1c2goMCk7ZG97Zm9yKHA9MDtwPDEwO3ArKyl7aWYoZiE9KEU9bS5sZW5ndGgpKWQ9Zj5FPzE6LTE7ZWxzZSBmb3Iodj0tMSxkPTA7Kyt2PGY7KWlmKG9bdl0hPW1bdl0pe2Q9b1t2XT5tW3ZdPzE6LTE7YnJlYWt9aWYoIShkPDApKWJyZWFrO2ZvcihhPUU9PWY/bzp3O0U7KXtpZihtWy0tRV08YVtFXSl7Zm9yKHY9RTt2JiYhbVstLXZdOyltW3ZdPTk7LS1tW3ZdLG1bRV0rPTEwfW1bRV0tPWFbRV19Zm9yKDshbVswXTspbS5zaGlmdCgpfVNbTysrXT1kP3A6KytwLG1bMF0mJmQ/bVtFXT1uW2JdfHwwOm09W25bYl1dfXdoaWxlKChiKys8Z3x8bVswXSE9PWgpJiZpLS0pO3JldHVybiBTWzBdfHwxPT1PfHwoUy5zaGlmdCgpLF8uZS0tLGotLSksTz5qJiZ5KF8saixlLlJNLG1bMF0hPT1oKSxffSxwLmVxPWZ1bmN0aW9uKHQpe3JldHVybiAwPT09dGhpcy5jbXAodCl9LHAuZ3Q9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuY21wKHQpPjB9LHAuZ3RlPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLmNtcCh0KT4tMX0scC5sdD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5jbXAodCk8MH0scC5sdGU9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuY21wKHQpPDF9LHAubWludXM9cC5zdWI9ZnVuY3Rpb24odCl7dmFyIHIsZSxuLG8sdT10aGlzLGk9dS5jb25zdHJ1Y3RvcixjPXUucyxmPSh0PW5ldyBpKHQpKS5zO2lmKGMhPWYpcmV0dXJuIHQucz0tZix1LnBsdXModCk7dmFyIHM9dS5jLnNsaWNlKCksYT11LmUsbD10LmMscD10LmU7aWYoIXNbMF18fCFsWzBdKXJldHVybiBsWzBdP3Qucz0tZjpzWzBdP3Q9bmV3IGkodSk6dC5zPTEsdDtpZihjPWEtcCl7Zm9yKChvPWM8MCk/KGM9LWMsbj1zKToocD1hLG49bCksbi5yZXZlcnNlKCksZj1jO2YtLTspbi5wdXNoKDApO24ucmV2ZXJzZSgpfWVsc2UgZm9yKGU9KChvPXMubGVuZ3RoPGwubGVuZ3RoKT9zOmwpLmxlbmd0aCxjPWY9MDtmPGU7ZisrKWlmKHNbZl0hPWxbZl0pe289c1tmXTxsW2ZdO2JyZWFrfWlmKG8mJihuPXMscz1sLGw9bix0LnM9LXQucyksKGY9KGU9bC5sZW5ndGgpLShyPXMubGVuZ3RoKSk+MClmb3IoO2YtLTspc1tyKytdPTA7Zm9yKGY9cjtlPmM7KXtpZihzWy0tZV08bFtlXSl7Zm9yKHI9ZTtyJiYhc1stLXJdOylzW3JdPTk7LS1zW3JdLHNbZV0rPTEwfXNbZV0tPWxbZV19Zm9yKDswPT09c1stLWZdOylzLnBvcCgpO2Zvcig7MD09PXNbMF07KXMuc2hpZnQoKSwtLXA7cmV0dXJuIHNbMF18fCh0LnM9MSxzPVtwPTBdKSx0LmM9cyx0LmU9cCx0fSxwLm1vZD1mdW5jdGlvbih0KXsKdmFyIHIsZT10aGlzLG49ZS5jb25zdHJ1Y3RvcixvPWUucyx1PSh0PW5ldyBuKHQpKS5zO2lmKCF0LmNbMF0pdGhyb3cgRXJyb3IobCk7cmV0dXJuIGUucz10LnM9MSxyPTE9PXQuY21wKGUpLGUucz1vLHQucz11LHI/bmV3IG4oZSk6KG89bi5EUCx1PW4uUk0sbi5EUD1uLlJNPTAsZT1lLmRpdih0KSxuLkRQPW8sbi5STT11LHRoaXMubWludXMoZS50aW1lcyh0KSkpfSxwLnBsdXM9cC5hZGQ9ZnVuY3Rpb24odCl7dmFyIHIsZSxuLG89dGhpcyx1PW8uY29uc3RydWN0b3I7aWYodD1uZXcgdSh0KSxvLnMhPXQucylyZXR1cm4gdC5zPS10LnMsby5taW51cyh0KTt2YXIgaT1vLmUsYz1vLmMsZj10LmUscz10LmM7aWYoIWNbMF18fCFzWzBdKXJldHVybiBzWzBdfHwoY1swXT90PW5ldyB1KG8pOnQucz1vLnMpLHQ7aWYoYz1jLnNsaWNlKCkscj1pLWYpe2ZvcihyPjA/KGY9aSxuPXMpOihyPS1yLG49Yyksbi5yZXZlcnNlKCk7ci0tOyluLnB1c2goMCk7bi5yZXZlcnNlKCl9Zm9yKGMubGVuZ3RoLXMubGVuZ3RoPDAmJihuPXMscz1jLGM9bikscj1zLmxlbmd0aCxlPTA7cjtjW3JdJT0xMCllPShjWy0tcl09Y1tyXStzW3JdK2UpLzEwfDA7Zm9yKGUmJihjLnVuc2hpZnQoZSksKytmKSxyPWMubGVuZ3RoOzA9PT1jWy0tcl07KWMucG9wKCk7cmV0dXJuIHQuYz1jLHQuZT1mLHR9LHAucG93PWZ1bmN0aW9uKHQpe3ZhciByPXRoaXMsZT1uZXcgci5jb25zdHJ1Y3RvcigiMSIpLG49ZSxvPXQ8MDtpZih0IT09fn50fHx0PC0xZTZ8fHQ+aSl0aHJvdyBFcnJvcihmKyJleHBvbmVudCIpO2ZvcihvJiYodD0tdCk7MSZ0JiYobj1uLnRpbWVzKHIpKSx0Pj49MTspcj1yLnRpbWVzKHIpO3JldHVybiBvP2UuZGl2KG4pOm59LHAucHJlYz1mdW5jdGlvbih0LHIpe2lmKHQhPT1+fnR8fHQ8MXx8dD51KXRocm93IEVycm9yKGYrInByZWNpc2lvbiIpO3JldHVybiB5KG5ldyB0aGlzLmNvbnN0cnVjdG9yKHRoaXMpLHQscil9LHAucm91bmQ9ZnVuY3Rpb24odCxyKXtpZih0PT09aCl0PTA7ZWxzZSBpZih0IT09fn50fHx0PC11fHx0PnUpdGhyb3cgRXJyb3Iocyk7cmV0dXJuIHkobmV3IHRoaXMuY29uc3RydWN0b3IodGhpcyksdCt0aGlzLmUrMSxyKX0scC5zcXJ0PWZ1bmN0aW9uKCl7dmFyIHQscixlLG49dGhpcyxvPW4uY29uc3RydWN0b3IsdT1uLnMsaT1uLmUsZj1uZXcgbygiMC41Iik7aWYoIW4uY1swXSlyZXR1cm4gbmV3IG8obik7aWYodTwwKXRocm93IEVycm9yKGMrIk5vIHNxdWFyZSByb290Iik7MD09PSh1PU1hdGguc3FydChuKyIiKSl8fHU9PT0xLzA/KChyPW4uYy5qb2luKCIiKSkubGVuZ3RoK2kmMXx8KHIrPSIwIiksaT0oKGkrMSkvMnwwKS0oaTwwfHwxJmkpLHQ9bmV3IG8oKCh1PU1hdGguc3FydChyKSk9PTEvMD8iNWUiOih1PXUudG9FeHBvbmVudGlhbCgpKS5zbGljZSgwLHUuaW5kZXhPZigiZSIpKzEpKStpKSk6dD1uZXcgbyh1KyIiKSxpPXQuZSsoby5EUCs9NCk7ZG97ZT10LHQ9Zi50aW1lcyhlLnBsdXMobi5kaXYoZSkpKX13aGlsZShlLmMuc2xpY2UoMCxpKS5qb2luKCIiKSE9PXQuYy5zbGljZSgwLGkpLmpvaW4oIiIpKTtyZXR1cm4geSh0LChvLkRQLT00KSt0LmUrMSxvLlJNKX0scC50aW1lcz1wLm11bD1mdW5jdGlvbih0KXt2YXIgcixlPXRoaXMsbj1lLmNvbnN0cnVjdG9yLG89ZS5jLHU9KHQ9bmV3IG4odCkpLmMsaT1vLmxlbmd0aCxjPXUubGVuZ3RoLGY9ZS5lLHM9dC5lO2lmKHQucz1lLnM9PXQucz8xOi0xLCFvWzBdfHwhdVswXSlyZXR1cm4gdC5jPVt0LmU9MF0sdDtmb3IodC5lPWYrcyxpPGMmJihyPW8sbz11LHU9cixzPWksaT1jLGM9cykscj1uZXcgQXJyYXkocz1pK2MpO3MtLTspcltzXT0wO2ZvcihmPWM7Zi0tOyl7Zm9yKGM9MCxzPWkrZjtzPmY7KWM9cltzXSt1W2ZdKm9bcy1mLTFdK2MscltzLS1dPWMlMTAsYz1jLzEwfDA7cltzXT1jfWZvcihjPysrdC5lOnIuc2hpZnQoKSxmPXIubGVuZ3RoOyFyWy0tZl07KXIucG9wKCk7cmV0dXJuIHQuYz1yLHR9LHAudG9FeHBvbmVudGlhbD1mdW5jdGlvbih0LHIpe3ZhciBlPXRoaXMsbj1lLmNbMF07aWYodCE9PWgpe2lmKHQhPT1+fnR8fHQ8MHx8dD51KXRocm93IEVycm9yKHMpO2ZvcihlPXkobmV3IGUuY29uc3RydWN0b3IoZSksKyt0LHIpO2UuYy5sZW5ndGg8dDspZS5jLnB1c2goMCl9cmV0dXJuIHYoZSwhMCwhIW4pfSxwLnRvRml4ZWQ9ZnVuY3Rpb24odCxyKXt2YXIgZT10aGlzLG49ZS5jWzBdO2lmKHQhPT1oKXtpZih0IT09fn50fHx0PDB8fHQ+dSl0aHJvdyBFcnJvcihzKTtmb3IodD10KyhlPXkobmV3IGUuY29uc3RydWN0b3IoZSksdCtlLmUrMSxyKSkuZSsxO2UuYy5sZW5ndGg8dDspZS5jLnB1c2goMCl9cmV0dXJuIHYoZSwhMSwhIW4pfSxwLnRvSlNPTj1wLnRvU3RyaW5nPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcyxyPXQuY29uc3RydWN0b3I7cmV0dXJuIHYodCx0LmU8PXIuTkV8fHQuZT49ci5QRSwhIXQuY1swXSl9LHAudG9OdW1iZXI9ZnVuY3Rpb24oKXt2YXIgdD1OdW1iZXIodih0aGlzLCEwLCEwKSk7aWYoITA9PT10aGlzLmNvbnN0cnVjdG9yLnN0cmljdCYmIXRoaXMuZXEodC50b1N0cmluZygpKSl0aHJvdyBFcnJvcihjKyJJbXByZWNpc2UgY29udmVyc2lvbiIpO3JldHVybiB0fSxwLnRvUHJlY2lzaW9uPWZ1bmN0aW9uKHQscil7dmFyIGU9dGhpcyxuPWUuY29uc3RydWN0b3Isbz1lLmNbMF07aWYodCE9PWgpe2lmKHQhPT1+fnR8fHQ8MXx8dD51KXRocm93IEVycm9yKGYrInByZWNpc2lvbiIpO2ZvcihlPXkobmV3IG4oZSksdCxyKTtlLmMubGVuZ3RoPHQ7KWUuYy5wdXNoKDApfXJldHVybiB2KGUsdDw9ZS5lfHxlLmU8PW4uTkV8fGUuZT49bi5QRSwhIW8pfSxwLnZhbHVlT2Y9ZnVuY3Rpb24oKXt2YXIgdD10aGlzLHI9dC5jb25zdHJ1Y3RvcjtpZighMD09PXIuc3RyaWN0KXRocm93IEVycm9yKGMrInZhbHVlT2YgZGlzYWxsb3dlZCIpO3JldHVybiB2KHQsdC5lPD1yLk5FfHx0LmU+PXIuUEUsITApfSxvPWZ1bmN0aW9uIHQoKXtmdW5jdGlvbiByKGUpe3ZhciBuPXRoaXM7aWYoIShuIGluc3RhbmNlb2YgcikpcmV0dXJuIGU9PT1oP3QoKTpuZXcgcihlKTtpZihlIGluc3RhbmNlb2YgciluLnM9ZS5zLG4uZT1lLmUsCm4uYz1lLmMuc2xpY2UoKTtlbHNle2lmKCJzdHJpbmciIT10eXBlb2YgZSl7aWYoITA9PT1yLnN0cmljdCl0aHJvdyBUeXBlRXJyb3IoZisibnVtYmVyIik7ZT0wPT09ZSYmMS9lPDA/Ii0wIjpTdHJpbmcoZSl9IWZ1bmN0aW9uKHQscil7dmFyIGUsbixvO2lmKCFkLnRlc3QocikpdGhyb3cgRXJyb3IoZisibnVtYmVyIik7dC5zPSItIj09ci5jaGFyQXQoMCk/KHI9ci5zbGljZSgxKSwtMSk6MSwoZT1yLmluZGV4T2YoIi4iKSk+LTEmJihyPXIucmVwbGFjZSgiLiIsIiIpKTsobj1yLnNlYXJjaCgvZS9pKSk+MD8oZTwwJiYoZT1uKSxlKz0rci5zbGljZShuKzEpLHI9ci5zdWJzdHJpbmcoMCxuKSk6ZTwwJiYoZT1yLmxlbmd0aCk7Zm9yKG89ci5sZW5ndGgsbj0wO248byYmIjAiPT1yLmNoYXJBdChuKTspKytuO2lmKG49PW8pdC5jPVt0LmU9MF07ZWxzZXtmb3IoO28+MCYmIjAiPT1yLmNoYXJBdCgtLW8pOyk7Zm9yKHQuZT1lLW4tMSx0LmM9W10sZT0wO248PW87KXQuY1tlKytdPStyLmNoYXJBdChuKyspfX0obixlKX1uLmNvbnN0cnVjdG9yPXJ9cmV0dXJuIHIucHJvdG90eXBlPXAsci5EUD0yMCxyLlJNPTEsci5ORT0tNyxyLlBFPTIxLHIuc3RyaWN0PWZhbHNlLHIucm91bmREb3duPTAsci5yb3VuZEhhbGZVcD0xLHIucm91bmRIYWxmRXZlbj0yLHIucm91bmRVcD0zLHJ9KCksby5kZWZhdWx0PW8uQmlnPW8sdm9pZCAwPT09KG49ZnVuY3Rpb24oKXtyZXR1cm4gb30uY2FsbChyLGUscix0KSl8fCh0LmV4cG9ydHM9bil9KCl9LDkxNDQ4Nyh0LHIpe3ZhciBlOyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0Ijt2YXIgbj17fS5oYXNPd25Qcm9wZXJ0eTtmdW5jdGlvbiBvKCl7Zm9yKHZhciB0PVtdLHI9MDtyPGFyZ3VtZW50cy5sZW5ndGg7cisrKXt2YXIgZT1hcmd1bWVudHNbcl07aWYoZSl7dmFyIHU9dHlwZW9mIGU7aWYoInN0cmluZyI9PT11fHwibnVtYmVyIj09PXUpdC5wdXNoKGUpO2Vsc2UgaWYoQXJyYXkuaXNBcnJheShlKSYmZS5sZW5ndGgpe3ZhciBpPW8uYXBwbHkobnVsbCxlKTtpJiZ0LnB1c2goaSl9ZWxzZSBpZigib2JqZWN0Ij09PXUpZm9yKHZhciBjIGluIGUpbi5jYWxsKGUsYykmJmVbY10mJnQucHVzaChjKX19cmV0dXJuIHQuam9pbigiICIpfXQuZXhwb3J0cz8oby5kZWZhdWx0PW8sdC5leHBvcnRzPW8pOnZvaWQgMD09PShlPWZ1bmN0aW9uKCl7cmV0dXJuIG99LmFwcGx5KHIsW10pKXx8KHQuZXhwb3J0cz1lKX0oKX0sMTg1MjcxKHQscixlKXsidXNlIHN0cmljdCI7ZS5yKHIpLGUuZChyLHt0OigpPT5uLnQsd2l0aFRyYW5zbGF0aW9uQ29udGV4dDooKT0+b30pO2UoODI5MTgwKTt2YXIgbj1lKDc4MzI1NCk7ZnVuY3Rpb24gbyh0KXt0aHJvdyBuZXcgRXJyb3IoIk5vdCBpbXBsZW1lbnRlZCIpfX0sOTYzMDk4KHQscixlKXsidXNlIHN0cmljdCI7ZS5kKHIse2dldElzb0xhbmd1YWdlQ29kZUZyb21MYW5ndWFnZTooKT0+b30pO2NvbnN0IG49e2FyX0FFOiJhciIsYnI6InB0IixkZV9ERToiZGUiLGNhX0VTOiJjYSIsaGVfSUw6ImhlIixpZF9JRDoiaWQiLGluOiJlbiIsa3I6ImtvIixtc19NWToibXMiLHN2X1NFOiJzdiIsdGhfVEg6InRoIix1azoiZW4iLHZpX1ZOOiJ2aSIsemhfQ046InpoLUhhbnMiLHpoX1RXOiJ6aC1IYW50Iix6aDoiemgtSGFucyIsaHVfSFU6Imh1LUhVIn07ZnVuY3Rpb24gbyh0KXtyZXR1cm4gblt0XXx8dH19LDEyMjc0OSh0LHIpeyJ1c2Ugc3RyaWN0Ijt2YXIgZT1TeW1ib2wuZm9yKCJyZWFjdC5lbGVtZW50Iiksbj1TeW1ib2wuZm9yKCJyZWFjdC5wb3J0YWwiKSxvPVN5bWJvbC5mb3IoInJlYWN0LmZyYWdtZW50IiksdT1TeW1ib2wuZm9yKCJyZWFjdC5zdHJpY3RfbW9kZSIpLGk9U3ltYm9sLmZvcigicmVhY3QucHJvZmlsZXIiKSxjPVN5bWJvbC5mb3IoInJlYWN0LnByb3ZpZGVyIiksZj1TeW1ib2wuZm9yKCJyZWFjdC5jb250ZXh0Iikscz1TeW1ib2wuZm9yKCJyZWFjdC5mb3J3YXJkX3JlZiIpLGE9U3ltYm9sLmZvcigicmVhY3Quc3VzcGVuc2UiKSxsPVN5bWJvbC5mb3IoInJlYWN0Lm1lbW8iKSxwPVN5bWJvbC5mb3IoInJlYWN0LmxhenkiKSxoPVN5bWJvbC5pdGVyYXRvcjt2YXIgZD17aXNNb3VudGVkOmZ1bmN0aW9uKCl7cmV0dXJuITF9LGVucXVldWVGb3JjZVVwZGF0ZTpmdW5jdGlvbigpe30sZW5xdWV1ZVJlcGxhY2VTdGF0ZTpmdW5jdGlvbigpe30sZW5xdWV1ZVNldFN0YXRlOmZ1bmN0aW9uKCl7fX0seT1PYmplY3QuYXNzaWduLHY9e307ZnVuY3Rpb24gdyh0LHIsZSl7dGhpcy5wcm9wcz10LHRoaXMuY29udGV4dD1yLHRoaXMucmVmcz12LHRoaXMudXBkYXRlcj1lfHxkfWZ1bmN0aW9uIGIoKXt9ZnVuY3Rpb24gZyh0LHIsZSl7dGhpcy5wcm9wcz10LHRoaXMuY29udGV4dD1yLHRoaXMucmVmcz12LHRoaXMudXBkYXRlcj1lfHxkfXcucHJvdG90eXBlLmlzUmVhY3RDb21wb25lbnQ9e30sdy5wcm90b3R5cGUuc2V0U3RhdGU9ZnVuY3Rpb24odCxyKXtpZigib2JqZWN0IiE9dHlwZW9mIHQmJiJmdW5jdGlvbiIhPXR5cGVvZiB0JiZudWxsIT10KXRocm93IEVycm9yKCJzZXRTdGF0ZSguLi4pOiB0YWtlcyBhbiBvYmplY3Qgb2Ygc3RhdGUgdmFyaWFibGVzIHRvIHVwZGF0ZSBvciBhIGZ1bmN0aW9uIHdoaWNoIHJldHVybnMgYW4gb2JqZWN0IG9mIHN0YXRlIHZhcmlhYmxlcy4iKTt0aGlzLnVwZGF0ZXIuZW5xdWV1ZVNldFN0YXRlKHRoaXMsdCxyLCJzZXRTdGF0ZSIpfSx3LnByb3RvdHlwZS5mb3JjZVVwZGF0ZT1mdW5jdGlvbih0KXt0aGlzLnVwZGF0ZXIuZW5xdWV1ZUZvcmNlVXBkYXRlKHRoaXMsdCwiZm9yY2VVcGRhdGUiKX0sYi5wcm90b3R5cGU9dy5wcm90b3R5cGU7dmFyIG09Zy5wcm90b3R5cGU9bmV3IGI7bS5jb25zdHJ1Y3Rvcj1nLHkobSx3LnByb3RvdHlwZSksbS5pc1B1cmVSZWFjdENvbXBvbmVudD0hMDt2YXIgRT1BcnJheS5pc0FycmF5LF89T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSxTPXtjdXJyZW50Om51bGx9LE89e2tleTohMCxyZWY6ITAsX19zZWxmOiEwLF9fc291cmNlOiEwfTtmdW5jdGlvbiBqKHQscixuKXt2YXIgbyx1PXt9LGk9bnVsbCxjPW51bGwKO2lmKG51bGwhPXIpZm9yKG8gaW4gdm9pZCAwIT09ci5yZWYmJihjPXIucmVmKSx2b2lkIDAhPT1yLmtleSYmKGk9IiIrci5rZXkpLHIpXy5jYWxsKHIsbykmJiFPLmhhc093blByb3BlcnR5KG8pJiYodVtvXT1yW29dKTt2YXIgZj1hcmd1bWVudHMubGVuZ3RoLTI7aWYoMT09PWYpdS5jaGlsZHJlbj1uO2Vsc2UgaWYoMTxmKXtmb3IodmFyIHM9QXJyYXkoZiksYT0wO2E8ZjthKyspc1thXT1hcmd1bWVudHNbYSsyXTt1LmNoaWxkcmVuPXN9aWYodCYmdC5kZWZhdWx0UHJvcHMpZm9yKG8gaW4gZj10LmRlZmF1bHRQcm9wcyl2b2lkIDA9PT11W29dJiYodVtvXT1mW29dKTtyZXR1cm57JCR0eXBlb2Y6ZSx0eXBlOnQsa2V5OmkscmVmOmMscHJvcHM6dSxfb3duZXI6Uy5jdXJyZW50fX1mdW5jdGlvbiBQKHQpe3JldHVybiJvYmplY3QiPT10eXBlb2YgdCYmbnVsbCE9PXQmJnQuJCR0eXBlb2Y9PT1lfXZhciBSPS9cLysvZztmdW5jdGlvbiBrKHQscil7cmV0dXJuIm9iamVjdCI9PXR5cGVvZiB0JiZudWxsIT09dCYmbnVsbCE9dC5rZXk/ZnVuY3Rpb24odCl7dmFyIHI9eyI9IjoiPTAiLCI6IjoiPTIifTtyZXR1cm4iJCIrdC5yZXBsYWNlKC9bPTpdL2csKGZ1bmN0aW9uKHQpe3JldHVybiByW3RdfSkpfSgiIit0LmtleSk6ci50b1N0cmluZygzNil9ZnVuY3Rpb24geCh0LHIsbyx1LGkpe3ZhciBjPXR5cGVvZiB0OyJ1bmRlZmluZWQiIT09YyYmImJvb2xlYW4iIT09Y3x8KHQ9bnVsbCk7dmFyIGY9ITE7aWYobnVsbD09PXQpZj0hMDtlbHNlIHN3aXRjaChjKXtjYXNlInN0cmluZyI6Y2FzZSJudW1iZXIiOmY9ITA7YnJlYWs7Y2FzZSJvYmplY3QiOnN3aXRjaCh0LiQkdHlwZW9mKXtjYXNlIGU6Y2FzZSBuOmY9ITB9fWlmKGYpcmV0dXJuIGk9aShmPXQpLHQ9IiI9PT11PyIuIitrKGYsMCk6dSxFKGkpPyhvPSIiLG51bGwhPXQmJihvPXQucmVwbGFjZShSLCIkJi8iKSsiLyIpLHgoaSxyLG8sIiIsKGZ1bmN0aW9uKHQpe3JldHVybiB0fSkpKTpudWxsIT1pJiYoUChpKSYmKGk9ZnVuY3Rpb24odCxyKXtyZXR1cm57JCR0eXBlb2Y6ZSx0eXBlOnQudHlwZSxrZXk6cixyZWY6dC5yZWYscHJvcHM6dC5wcm9wcyxfb3duZXI6dC5fb3duZXJ9fShpLG8rKCFpLmtleXx8ZiYmZi5rZXk9PT1pLmtleT8iIjooIiIraS5rZXkpLnJlcGxhY2UoUiwiJCYvIikrIi8iKSt0KSksci5wdXNoKGkpKSwxO2lmKGY9MCx1PSIiPT09dT8iLiI6dSsiOiIsRSh0KSlmb3IodmFyIHM9MDtzPHQubGVuZ3RoO3MrKyl7dmFyIGE9dStrKGM9dFtzXSxzKTtmKz14KGMscixvLGEsaSl9ZWxzZSBpZihhPWZ1bmN0aW9uKHQpe3JldHVybiBudWxsPT09dHx8Im9iamVjdCIhPXR5cGVvZiB0P251bGw6ImZ1bmN0aW9uIj09dHlwZW9mKHQ9aCYmdFtoXXx8dFsiQEBpdGVyYXRvciJdKT90Om51bGx9KHQpLCJmdW5jdGlvbiI9PXR5cGVvZiBhKWZvcih0PWEuY2FsbCh0KSxzPTA7IShjPXQubmV4dCgpKS5kb25lOylmKz14KGM9Yy52YWx1ZSxyLG8sYT11K2soYyxzKyspLGkpO2Vsc2UgaWYoIm9iamVjdCI9PT1jKXRocm93IHI9U3RyaW5nKHQpLEVycm9yKCJPYmplY3RzIGFyZSBub3QgdmFsaWQgYXMgYSBSZWFjdCBjaGlsZCAoZm91bmQ6ICIrKCJbb2JqZWN0IE9iamVjdF0iPT09cj8ib2JqZWN0IHdpdGgga2V5cyB7IitPYmplY3Qua2V5cyh0KS5qb2luKCIsICIpKyJ9IjpyKSsiKS4gSWYgeW91IG1lYW50IHRvIHJlbmRlciBhIGNvbGxlY3Rpb24gb2YgY2hpbGRyZW4sIHVzZSBhbiBhcnJheSBpbnN0ZWFkLiIpO3JldHVybiBmfWZ1bmN0aW9uIE4odCxyLGUpe2lmKG51bGw9PXQpcmV0dXJuIHQ7dmFyIG49W10sbz0wO3JldHVybiB4KHQsbiwiIiwiIiwoZnVuY3Rpb24odCl7cmV0dXJuIHIuY2FsbChlLHQsbysrKX0pKSxufWZ1bmN0aW9uIEModCl7aWYoLTE9PT10Ll9zdGF0dXMpe3ZhciByPXQuX3Jlc3VsdDsocj1yKCkpLnRoZW4oKGZ1bmN0aW9uKHIpezAhPT10Ll9zdGF0dXMmJi0xIT09dC5fc3RhdHVzfHwodC5fc3RhdHVzPTEsdC5fcmVzdWx0PXIpfSksKGZ1bmN0aW9uKHIpezAhPT10Ll9zdGF0dXMmJi0xIT09dC5fc3RhdHVzfHwodC5fc3RhdHVzPTIsdC5fcmVzdWx0PXIpfSkpLC0xPT09dC5fc3RhdHVzJiYodC5fc3RhdHVzPTAsdC5fcmVzdWx0PXIpfWlmKDE9PT10Ll9zdGF0dXMpcmV0dXJuIHQuX3Jlc3VsdC5kZWZhdWx0O3Rocm93IHQuX3Jlc3VsdH12YXIgQT17Y3VycmVudDpudWxsfSxJPXt0cmFuc2l0aW9uOm51bGx9LCQ9e1JlYWN0Q3VycmVudERpc3BhdGNoZXI6QSxSZWFjdEN1cnJlbnRCYXRjaENvbmZpZzpJLFJlYWN0Q3VycmVudE93bmVyOlN9O3IuQ2hpbGRyZW49e21hcDpOLGZvckVhY2g6ZnVuY3Rpb24odCxyLGUpe04odCwoZnVuY3Rpb24oKXtyLmFwcGx5KHRoaXMsYXJndW1lbnRzKX0pLGUpfSxjb3VudDpmdW5jdGlvbih0KXt2YXIgcj0wO3JldHVybiBOKHQsKGZ1bmN0aW9uKCl7cisrfSkpLHJ9LHRvQXJyYXk6ZnVuY3Rpb24odCl7cmV0dXJuIE4odCwoZnVuY3Rpb24odCl7cmV0dXJuIHR9KSl8fFtdfSxvbmx5OmZ1bmN0aW9uKHQpe2lmKCFQKHQpKXRocm93IEVycm9yKCJSZWFjdC5DaGlsZHJlbi5vbmx5IGV4cGVjdGVkIHRvIHJlY2VpdmUgYSBzaW5nbGUgUmVhY3QgZWxlbWVudCBjaGlsZC4iKTtyZXR1cm4gdH19LHIuQ29tcG9uZW50PXcsci5GcmFnbWVudD1vLHIuUHJvZmlsZXI9aSxyLlB1cmVDb21wb25lbnQ9ZyxyLlN0cmljdE1vZGU9dSxyLlN1c3BlbnNlPWEsci5fX1NFQ1JFVF9JTlRFUk5BTFNfRE9fTk9UX1VTRV9PUl9ZT1VfV0lMTF9CRV9GSVJFRD0kLHIuY2xvbmVFbGVtZW50PWZ1bmN0aW9uKHQscixuKXtpZihudWxsPT10KXRocm93IEVycm9yKCJSZWFjdC5jbG9uZUVsZW1lbnQoLi4uKTogVGhlIGFyZ3VtZW50IG11c3QgYmUgYSBSZWFjdCBlbGVtZW50LCBidXQgeW91IHBhc3NlZCAiK3QrIi4iKTt2YXIgbz15KHt9LHQucHJvcHMpLHU9dC5rZXksaT10LnJlZixjPXQuX293bmVyO2lmKG51bGwhPXIpe2lmKHZvaWQgMCE9PXIucmVmJiYoaT1yLnJlZixjPVMuY3VycmVudCksdm9pZCAwIT09ci5rZXkmJih1PSIiK3Iua2V5KSwKdC50eXBlJiZ0LnR5cGUuZGVmYXVsdFByb3BzKXZhciBmPXQudHlwZS5kZWZhdWx0UHJvcHM7Zm9yKHMgaW4gcilfLmNhbGwocixzKSYmIU8uaGFzT3duUHJvcGVydHkocykmJihvW3NdPXZvaWQgMD09PXJbc10mJnZvaWQgMCE9PWY/ZltzXTpyW3NdKX12YXIgcz1hcmd1bWVudHMubGVuZ3RoLTI7aWYoMT09PXMpby5jaGlsZHJlbj1uO2Vsc2UgaWYoMTxzKXtmPUFycmF5KHMpO2Zvcih2YXIgYT0wO2E8czthKyspZlthXT1hcmd1bWVudHNbYSsyXTtvLmNoaWxkcmVuPWZ9cmV0dXJueyQkdHlwZW9mOmUsdHlwZTp0LnR5cGUsa2V5OnUscmVmOmkscHJvcHM6byxfb3duZXI6Y319LHIuY3JlYXRlQ29udGV4dD1mdW5jdGlvbih0KXtyZXR1cm4odD17JCR0eXBlb2Y6ZixfY3VycmVudFZhbHVlOnQsX2N1cnJlbnRWYWx1ZTI6dCxfdGhyZWFkQ291bnQ6MCxQcm92aWRlcjpudWxsLENvbnN1bWVyOm51bGwsX2RlZmF1bHRWYWx1ZTpudWxsLF9nbG9iYWxOYW1lOm51bGx9KS5Qcm92aWRlcj17JCR0eXBlb2Y6YyxfY29udGV4dDp0fSx0LkNvbnN1bWVyPXR9LHIuY3JlYXRlRWxlbWVudD1qLHIuY3JlYXRlRmFjdG9yeT1mdW5jdGlvbih0KXt2YXIgcj1qLmJpbmQobnVsbCx0KTtyZXR1cm4gci50eXBlPXQscn0sci5jcmVhdGVSZWY9ZnVuY3Rpb24oKXtyZXR1cm57Y3VycmVudDpudWxsfX0sci5mb3J3YXJkUmVmPWZ1bmN0aW9uKHQpe3JldHVybnskJHR5cGVvZjpzLHJlbmRlcjp0fX0sci5pc1ZhbGlkRWxlbWVudD1QLHIubGF6eT1mdW5jdGlvbih0KXtyZXR1cm57JCR0eXBlb2Y6cCxfcGF5bG9hZDp7X3N0YXR1czotMSxfcmVzdWx0OnR9LF9pbml0OkN9fSxyLm1lbW89ZnVuY3Rpb24odCxyKXtyZXR1cm57JCR0eXBlb2Y6bCx0eXBlOnQsY29tcGFyZTp2b2lkIDA9PT1yP251bGw6cn19LHIuc3RhcnRUcmFuc2l0aW9uPWZ1bmN0aW9uKHQpe3ZhciByPUkudHJhbnNpdGlvbjtJLnRyYW5zaXRpb249e307dHJ5e3QoKX1maW5hbGx5e0kudHJhbnNpdGlvbj1yfX0sci51bnN0YWJsZV9hY3Q9ZnVuY3Rpb24oKXt0aHJvdyBFcnJvcigiYWN0KC4uLikgaXMgbm90IHN1cHBvcnRlZCBpbiBwcm9kdWN0aW9uIGJ1aWxkcyBvZiBSZWFjdC4iKX0sci51c2VDYWxsYmFjaz1mdW5jdGlvbih0LHIpe3JldHVybiBBLmN1cnJlbnQudXNlQ2FsbGJhY2sodCxyKX0sci51c2VDb250ZXh0PWZ1bmN0aW9uKHQpe3JldHVybiBBLmN1cnJlbnQudXNlQ29udGV4dCh0KX0sci51c2VEZWJ1Z1ZhbHVlPWZ1bmN0aW9uKCl7fSxyLnVzZURlZmVycmVkVmFsdWU9ZnVuY3Rpb24odCl7cmV0dXJuIEEuY3VycmVudC51c2VEZWZlcnJlZFZhbHVlKHQpfSxyLnVzZUVmZmVjdD1mdW5jdGlvbih0LHIpe3JldHVybiBBLmN1cnJlbnQudXNlRWZmZWN0KHQscil9LHIudXNlSWQ9ZnVuY3Rpb24oKXtyZXR1cm4gQS5jdXJyZW50LnVzZUlkKCl9LHIudXNlSW1wZXJhdGl2ZUhhbmRsZT1mdW5jdGlvbih0LHIsZSl7cmV0dXJuIEEuY3VycmVudC51c2VJbXBlcmF0aXZlSGFuZGxlKHQscixlKX0sci51c2VJbnNlcnRpb25FZmZlY3Q9ZnVuY3Rpb24odCxyKXtyZXR1cm4gQS5jdXJyZW50LnVzZUluc2VydGlvbkVmZmVjdCh0LHIpfSxyLnVzZUxheW91dEVmZmVjdD1mdW5jdGlvbih0LHIpe3JldHVybiBBLmN1cnJlbnQudXNlTGF5b3V0RWZmZWN0KHQscil9LHIudXNlTWVtbz1mdW5jdGlvbih0LHIpe3JldHVybiBBLmN1cnJlbnQudXNlTWVtbyh0LHIpfSxyLnVzZVJlZHVjZXI9ZnVuY3Rpb24odCxyLGUpe3JldHVybiBBLmN1cnJlbnQudXNlUmVkdWNlcih0LHIsZSl9LHIudXNlUmVmPWZ1bmN0aW9uKHQpe3JldHVybiBBLmN1cnJlbnQudXNlUmVmKHQpfSxyLnVzZVN0YXRlPWZ1bmN0aW9uKHQpe3JldHVybiBBLmN1cnJlbnQudXNlU3RhdGUodCl9LHIudXNlU3luY0V4dGVybmFsU3RvcmU9ZnVuY3Rpb24odCxyLGUpe3JldHVybiBBLmN1cnJlbnQudXNlU3luY0V4dGVybmFsU3RvcmUodCxyLGUpfSxyLnVzZVRyYW5zaXRpb249ZnVuY3Rpb24oKXtyZXR1cm4gQS5jdXJyZW50LnVzZVRyYW5zaXRpb24oKX0sci52ZXJzaW9uPSIxOC4yLjAifSw5NTM3NDkodCxyLGUpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBuKHQpe3JldHVybiBmdW5jdGlvbihyKXt2YXIgZT1yLmRpc3BhdGNoLG49ci5nZXRTdGF0ZTtyZXR1cm4gZnVuY3Rpb24ocil7cmV0dXJuIGZ1bmN0aW9uKG8pe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBvP28oZSxuLHQpOnIobyl9fX19ZS5kKHIse2RlZmF1bHQ6KCk9PnV9KTt2YXIgbz1uKCk7by53aXRoRXh0cmFBcmd1bWVudD1uO2NvbnN0IHU9b30sNzg3NzI0KHQscixlKXsidXNlIHN0cmljdCI7ZS5kKHIse2FwcGx5TWlkZGxld2FyZTooKT0+cCxjb21iaW5lUmVkdWNlcnM6KCk9PmEsY29tcG9zZTooKT0+bCxjcmVhdGVTdG9yZTooKT0+c30pO3ZhciBuPWUoMjI0MTA3KTtmdW5jdGlvbiBvKHQpe3JldHVybiJNaW5pZmllZCBSZWR1eCBlcnJvciAjIit0KyI7IHZpc2l0IGh0dHBzOi8vcmVkdXguanMub3JnL0Vycm9ycz9jb2RlPSIrdCsiIGZvciB0aGUgZnVsbCBtZXNzYWdlIG9yIHVzZSB0aGUgbm9uLW1pbmlmaWVkIGRldiBlbnZpcm9ubWVudCBmb3IgZnVsbCBlcnJvcnMuICJ9dmFyIHU9ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmU3ltYm9sLm9ic2VydmFibGV8fCJAQG9ic2VydmFibGUiLGk9ZnVuY3Rpb24oKXtyZXR1cm4gTWF0aC5yYW5kb20oKS50b1N0cmluZygzNikuc3Vic3RyaW5nKDcpLnNwbGl0KCIiKS5qb2luKCIuIil9LGM9e0lOSVQ6IkBAcmVkdXgvSU5JVCIraSgpLFJFUExBQ0U6IkBAcmVkdXgvUkVQTEFDRSIraSgpLFBST0JFX1VOS05PV05fQUNUSU9OOmZ1bmN0aW9uKCl7cmV0dXJuIkBAcmVkdXgvUFJPQkVfVU5LTk9XTl9BQ1RJT04iK2koKX19O2Z1bmN0aW9uIGYodCl7aWYoIm9iamVjdCIhPXR5cGVvZiB0fHxudWxsPT09dClyZXR1cm4hMTtmb3IodmFyIHI9dDtudWxsIT09T2JqZWN0LmdldFByb3RvdHlwZU9mKHIpOylyPU9iamVjdC5nZXRQcm90b3R5cGVPZihyKTtyZXR1cm4gT2JqZWN0LmdldFByb3RvdHlwZU9mKHQpPT09cn1mdW5jdGlvbiBzKHQscixlKXt2YXIgbgo7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHImJiJmdW5jdGlvbiI9PXR5cGVvZiBlfHwiZnVuY3Rpb24iPT10eXBlb2YgZSYmImZ1bmN0aW9uIj09dHlwZW9mIGFyZ3VtZW50c1szXSl0aHJvdyBuZXcgRXJyb3IobygwKSk7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHImJnZvaWQgMD09PWUmJihlPXIscj12b2lkIDApLHZvaWQgMCE9PWUpe2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBlKXRocm93IG5ldyBFcnJvcihvKDEpKTtyZXR1cm4gZShzKSh0LHIpfWlmKCJmdW5jdGlvbiIhPXR5cGVvZiB0KXRocm93IG5ldyBFcnJvcihvKDIpKTt2YXIgaT10LGE9cixsPVtdLHA9bCxoPSExO2Z1bmN0aW9uIGQoKXtwPT09bCYmKHA9bC5zbGljZSgpKX1mdW5jdGlvbiB5KCl7aWYoaCl0aHJvdyBuZXcgRXJyb3IobygzKSk7cmV0dXJuIGF9ZnVuY3Rpb24gdih0KXtpZigiZnVuY3Rpb24iIT10eXBlb2YgdCl0aHJvdyBuZXcgRXJyb3Iobyg0KSk7aWYoaCl0aHJvdyBuZXcgRXJyb3Iobyg1KSk7dmFyIHI9ITA7cmV0dXJuIGQoKSxwLnB1c2godCksZnVuY3Rpb24oKXtpZihyKXtpZihoKXRocm93IG5ldyBFcnJvcihvKDYpKTtyPSExLGQoKTt2YXIgZT1wLmluZGV4T2YodCk7cC5zcGxpY2UoZSwxKSxsPW51bGx9fX1mdW5jdGlvbiB3KHQpe2lmKCFmKHQpKXRocm93IG5ldyBFcnJvcihvKDcpKTtpZih2b2lkIDA9PT10LnR5cGUpdGhyb3cgbmV3IEVycm9yKG8oOCkpO2lmKGgpdGhyb3cgbmV3IEVycm9yKG8oOSkpO3RyeXtoPSEwLGE9aShhLHQpfWZpbmFsbHl7aD0hMX1mb3IodmFyIHI9bD1wLGU9MDtlPHIubGVuZ3RoO2UrKyl7KDAscltlXSkoKX1yZXR1cm4gdH1yZXR1cm4gdyh7dHlwZTpjLklOSVR9KSwobj17ZGlzcGF0Y2g6dyxzdWJzY3JpYmU6dixnZXRTdGF0ZTp5LHJlcGxhY2VSZWR1Y2VyOmZ1bmN0aW9uKHQpe2lmKCJmdW5jdGlvbiIhPXR5cGVvZiB0KXRocm93IG5ldyBFcnJvcihvKDEwKSk7aT10LHcoe3R5cGU6Yy5SRVBMQUNFfSl9fSlbdV09ZnVuY3Rpb24oKXt2YXIgdCxyPXY7cmV0dXJuKHQ9e3N1YnNjcmliZTpmdW5jdGlvbih0KXtpZigib2JqZWN0IiE9dHlwZW9mIHR8fG51bGw9PT10KXRocm93IG5ldyBFcnJvcihvKDExKSk7ZnVuY3Rpb24gZSgpe3QubmV4dCYmdC5uZXh0KHkoKSl9cmV0dXJuIGUoKSx7dW5zdWJzY3JpYmU6cihlKX19fSlbdV09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc30sdH0sbn1mdW5jdGlvbiBhKHQpe2Zvcih2YXIgcj1PYmplY3Qua2V5cyh0KSxlPXt9LG49MDtuPHIubGVuZ3RoO24rKyl7dmFyIHU9cltuXTswLCJmdW5jdGlvbiI9PXR5cGVvZiB0W3VdJiYoZVt1XT10W3VdKX12YXIgaSxmPU9iamVjdC5rZXlzKGUpO3RyeXshZnVuY3Rpb24odCl7T2JqZWN0LmtleXModCkuZm9yRWFjaCgoZnVuY3Rpb24ocil7dmFyIGU9dFtyXTtpZih2b2lkIDA9PT1lKHZvaWQgMCx7dHlwZTpjLklOSVR9KSl0aHJvdyBuZXcgRXJyb3IobygxMikpO2lmKHZvaWQgMD09PWUodm9pZCAwLHt0eXBlOmMuUFJPQkVfVU5LTk9XTl9BQ1RJT04oKX0pKXRocm93IG5ldyBFcnJvcihvKDEzKSl9KSl9KGUpfWNhdGNoKHQpe2k9dH1yZXR1cm4gZnVuY3Rpb24odCxyKXtpZih2b2lkIDA9PT10JiYodD17fSksaSl0aHJvdyBpO2Zvcih2YXIgbj0hMSx1PXt9LGM9MDtjPGYubGVuZ3RoO2MrKyl7dmFyIHM9ZltjXSxhPWVbc10sbD10W3NdLHA9YShsLHIpO2lmKHZvaWQgMD09PXApe3ImJnIudHlwZTt0aHJvdyBuZXcgRXJyb3IobygxNCkpfXVbc109cCxuPW58fHAhPT1sfXJldHVybihuPW58fGYubGVuZ3RoIT09T2JqZWN0LmtleXModCkubGVuZ3RoKT91OnR9fWZ1bmN0aW9uIGwoKXtmb3IodmFyIHQ9YXJndW1lbnRzLmxlbmd0aCxyPW5ldyBBcnJheSh0KSxlPTA7ZTx0O2UrKylyW2VdPWFyZ3VtZW50c1tlXTtyZXR1cm4gMD09PXIubGVuZ3RoP2Z1bmN0aW9uKHQpe3JldHVybiB0fToxPT09ci5sZW5ndGg/clswXTpyLnJlZHVjZSgoZnVuY3Rpb24odCxyKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gdChyLmFwcGx5KHZvaWQgMCxhcmd1bWVudHMpKX19KSl9ZnVuY3Rpb24gcCgpe2Zvcih2YXIgdD1hcmd1bWVudHMubGVuZ3RoLHI9bmV3IEFycmF5KHQpLGU9MDtlPHQ7ZSsrKXJbZV09YXJndW1lbnRzW2VdO3JldHVybiBmdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZT10LmFwcGx5KHZvaWQgMCxhcmd1bWVudHMpLHU9ZnVuY3Rpb24oKXt0aHJvdyBuZXcgRXJyb3IobygxNSkpfSxpPXtnZXRTdGF0ZTplLmdldFN0YXRlLGRpc3BhdGNoOmZ1bmN0aW9uKCl7cmV0dXJuIHUuYXBwbHkodm9pZCAwLGFyZ3VtZW50cyl9fSxjPXIubWFwKChmdW5jdGlvbih0KXtyZXR1cm4gdChpKX0pKTtyZXR1cm4gdT1sLmFwcGx5KHZvaWQgMCxjKShlLmRpc3BhdGNoKSwoMCxuLmRlZmF1bHQpKCgwLG4uZGVmYXVsdCkoe30sZSkse30se2Rpc3BhdGNoOnV9KX19fX0sMzY0MzUwKHQscixlKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gbih0LHIpe3JldHVybiB0PT09cn1lLmQocix7Y3JlYXRlU2VsZWN0b3I6KCk9Pm99KTt2YXIgbz1mdW5jdGlvbih0KXtmb3IodmFyIHI9YXJndW1lbnRzLmxlbmd0aCxlPUFycmF5KHI+MT9yLTE6MCksbj0xO248cjtuKyspZVtuLTFdPWFyZ3VtZW50c1tuXTtyZXR1cm4gZnVuY3Rpb24oKXtmb3IodmFyIHI9YXJndW1lbnRzLmxlbmd0aCxuPUFycmF5KHIpLG89MDtvPHI7bysrKW5bb109YXJndW1lbnRzW29dO3ZhciB1PTAsaT1uLnBvcCgpLGM9ZnVuY3Rpb24odCl7dmFyIHI9QXJyYXkuaXNBcnJheSh0WzBdKT90WzBdOnQ7aWYoIXIuZXZlcnkoKGZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0fSkpKXt2YXIgZT1yLm1hcCgoZnVuY3Rpb24odCl7cmV0dXJuIHR5cGVvZiB0fSkpLmpvaW4oIiwgIik7dGhyb3cgbmV3IEVycm9yKCJTZWxlY3RvciBjcmVhdG9ycyBleHBlY3QgYWxsIGlucHV0LXNlbGVjdG9ycyB0byBiZSBmdW5jdGlvbnMsIGluc3RlYWQgcmVjZWl2ZWQgdGhlIGZvbGxvd2luZyB0eXBlczogWyIrZSsiXSIpfXJldHVybiByfShuKSxmPXQuYXBwbHkodm9pZCAwLFtmdW5jdGlvbigpe3JldHVybiB1KyssaS5hcHBseShudWxsLGFyZ3VtZW50cykKfV0uY29uY2F0KGUpKSxzPXQoKGZ1bmN0aW9uKCl7Zm9yKHZhciB0PVtdLHI9Yy5sZW5ndGgsZT0wO2U8cjtlKyspdC5wdXNoKGNbZV0uYXBwbHkobnVsbCxhcmd1bWVudHMpKTtyZXR1cm4gZi5hcHBseShudWxsLHQpfSkpO3JldHVybiBzLnJlc3VsdEZ1bmM9aSxzLmRlcGVuZGVuY2llcz1jLHMucmVjb21wdXRhdGlvbnM9ZnVuY3Rpb24oKXtyZXR1cm4gdX0scy5yZXNldFJlY29tcHV0YXRpb25zPWZ1bmN0aW9uKCl7cmV0dXJuIHU9MH0sc319KChmdW5jdGlvbih0KXt2YXIgcj1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06bixlPW51bGwsbz1udWxsO3JldHVybiBmdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbih0LHIsZSl7aWYobnVsbD09PXJ8fG51bGw9PT1lfHxyLmxlbmd0aCE9PWUubGVuZ3RoKXJldHVybiExO2Zvcih2YXIgbj1yLmxlbmd0aCxvPTA7bzxuO28rKylpZighdChyW29dLGVbb10pKXJldHVybiExO3JldHVybiEwfShyLGUsYXJndW1lbnRzKXx8KG89dC5hcHBseShudWxsLGFyZ3VtZW50cykpLGU9YXJndW1lbnRzLG99fSkpfSwxOTM3MSh0LHIsZSl7InVzZSBzdHJpY3QiO2UuZChyLHtkZWZhdWx0OigpPT5vfSk7dmFyIG49ZSg5MDgxNTQpO2Z1bmN0aW9uIG8odCxyLGUpe3JldHVybihyPSgwLG4uZGVmYXVsdCkocikpaW4gdD9PYmplY3QuZGVmaW5lUHJvcGVydHkodCxyLHt2YWx1ZTplLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6dFtyXT1lLHR9fSwyMjQxMDcodCxyLGUpeyJ1c2Ugc3RyaWN0IjtlLmQocix7ZGVmYXVsdDooKT0+dX0pO3ZhciBuPWUoMTkzNzEpO2Z1bmN0aW9uIG8odCxyKXt2YXIgZT1PYmplY3Qua2V5cyh0KTtpZihPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHQpO3ImJihuPW4uZmlsdGVyKChmdW5jdGlvbihyKXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LHIpLmVudW1lcmFibGV9KSkpLGUucHVzaC5hcHBseShlLG4pfXJldHVybiBlfWZ1bmN0aW9uIHUodCl7Zm9yKHZhciByPTE7cjxhcmd1bWVudHMubGVuZ3RoO3IrKyl7dmFyIGU9bnVsbCE9YXJndW1lbnRzW3JdP2FyZ3VtZW50c1tyXTp7fTtyJTI/byhPYmplY3QoZSksITApLmZvckVhY2goKGZ1bmN0aW9uKHIpeygwLG4uZGVmYXVsdCkodCxyLGVbcl0pfSkpOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKHQsT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMoZSkpOm8oT2JqZWN0KGUpKS5mb3JFYWNoKChmdW5jdGlvbihyKXtPYmplY3QuZGVmaW5lUHJvcGVydHkodCxyLE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZSxyKSl9KSl9cmV0dXJuIHR9fSw4OTI2MzkodCxyLGUpeyJ1c2Ugc3RyaWN0IjtlLmQocix7ZGVmYXVsdDooKT0+b30pO3ZhciBuPWUoMTI5NDc2KTtmdW5jdGlvbiBvKHQscil7aWYoIm9iamVjdCIhPSgwLG4uZGVmYXVsdCkodCl8fCF0KXJldHVybiB0O3ZhciBlPXRbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDAhPT1lKXt2YXIgbz1lLmNhbGwodCxyfHwiZGVmYXVsdCIpO2lmKCJvYmplY3QiIT0oMCxuLmRlZmF1bHQpKG8pKXJldHVybiBvO3Rocm93IG5ldyBUeXBlRXJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9cmV0dXJuKCJzdHJpbmciPT09cj9TdHJpbmc6TnVtYmVyKSh0KX19LDkwODE1NCh0LHIsZSl7InVzZSBzdHJpY3QiO2UuZChyLHtkZWZhdWx0OigpPT51fSk7dmFyIG49ZSgxMjk0NzYpLG89ZSg4OTI2MzkpO2Z1bmN0aW9uIHUodCl7dmFyIHI9KDAsby5kZWZhdWx0KSh0LCJzdHJpbmciKTtyZXR1cm4ic3ltYm9sIj09KDAsbi5kZWZhdWx0KShyKT9yOnIrIiJ9fSwxMjk0NzYodCxyLGUpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBuKHQpe3JldHVybiBuPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnVuY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSxuKHQpfWUuZChyLHtkZWZhdWx0OigpPT5ufSl9LDgzOTQyNih0LHIsZSl7InVzZSBzdHJpY3QiO2UuZChyLHtkZWZhdWx0OigpPT51fSk7dmFyIG49ZSg2OTIzNjkpO2NvbnN0IG89ZnVuY3Rpb24odCxyKXt2YXIgZTtpZigiZnVuY3Rpb24iIT10eXBlb2Ygcil0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBhIGZ1bmN0aW9uIik7cmV0dXJuIHQ9KDAsbi5kZWZhdWx0KSh0KSxmdW5jdGlvbigpe3JldHVybi0tdD4wJiYoZT1yLmFwcGx5KHRoaXMsYXJndW1lbnRzKSksdDw9MSYmKHI9dm9pZCAwKSxlfX07Y29uc3QgdT1mdW5jdGlvbih0KXtyZXR1cm4gbygyLHQpfX0sNjkyMzY5KHQscixlKXsidXNlIHN0cmljdCI7ZS5kKHIse2RlZmF1bHQ6KCk9Pml9KTt2YXIgbj1lKDQwNjQ0OSksbz0xLzA7Y29uc3QgdT1mdW5jdGlvbih0KXtyZXR1cm4gdD8odD0oMCxuLmRlZmF1bHQpKHQpKT09PW98fHQ9PT0tMS8wPzE3OTc2OTMxMzQ4NjIzMTU3ZTI5MioodDwwPy0xOjEpOnQ9PXQ/dDowOjA9PT10P3Q6MH07Y29uc3QgaT1mdW5jdGlvbih0KXt2YXIgcj11KHQpLGU9ciUxO3JldHVybiByPT1yP2U/ci1lOnI6MH19LDg1Njc3MCh0LHIsZSl7InVzZSBzdHJpY3QiO2UuZChyLHtuYW5vaWQ6KCk9Pm59KTtsZXQgbj0odD0yMSk9PmNyeXB0by5nZXRSYW5kb21WYWx1ZXMobmV3IFVpbnQ4QXJyYXkodCkpLnJlZHVjZSgoKHQscik9PnQrPShyJj02Myk8MzY/ci50b1N0cmluZygzNik6cjw2Mj8oci0yNikudG9TdHJpbmcoMzYpLnRvVXBwZXJDYXNlKCk6cj42Mj8iLSI6Il8iKSwiIil9fV0pOw=="}},"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.google.com/js/th/b8qXrFAu9PHVrGqMZi2nqKm9TUNPrrzEh40PAl-6oVo.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/Gc2en3nHxA4","date":"2026-07-27T04:24:17.896Z","timestamp":1785126257896,"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/b8qXrFAu9PHVrGqMZi2nqKm9TUNPrrzEh40PAl-6oVo.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: 23758\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Thu, 23 Jul 2026 00:07:39 GMT\r\nexpires: Fri, 23 Jul 2027 00:07:39 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: 360998\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":62519,"size_decoded":24569,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (61258)","md5":"443622910d8e7fe75010d4a41f533e07","sha1":"9774250436c6d11ce6978a2f57e620b1b86098c1","sha256":"6fca97ac502ef4f1d5ac6a8c662da7a8a9bd4d434faebcc4878d0f025fbaa15a","sha512":"8ce4ae6fb3b48726d2ac7dd7f8bcfb87df79adfc89c666d8278594d86648345411b78b003967291c4125ebbf78a2af3c7dd7dfdb100899ecea73c8ad8bd8b7a5","ssdeep":"1536:jN7w3cPBzlUowT2cm9iXFHDYzcmNkBfXoLz:RtyokXFHDSH","tlshash":"ce532acf72d2b73559e269e6105f410a62fe940a4c85186fba10f6f42a70d4b903bf7e","first_seen":"2026-07-25T07:02:54.064057Z","last_seen":"2026-07-27T07:00:44.845626Z","times_seen":542,"resource_available":true,"data":"Ly8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LGV5SjJaWEp6YVc5dUlqb2dNeXdpYzI5MWNtTmxjeUk2V3lJaVhTd2ljMjkxY21ObGMwTnZiblJsYm5RaU9sc2lJQ0pkTENKdVlXMWxjeUk2V3lKamJHOXpkWEpsUkhsdVlXMXBZMEoxZEhSdmJpSmRMQ0p0WVhCd2FXNW5jeUk2SWtGQlFVRTdRVUZCUVR0QlFVRkJPMEZCUVVFN1FVRkJRVHRCUVVGQk8wRkJRVUVpZlE9PQooZnVuY3Rpb24oKXt2YXIgZD1mdW5jdGlvbihSLGMsRyxCLG0sTixoLFAsayxEKXt7az05ODt3aGlsZShrIT1jKXtpZihrPT02OClyZXR1cm4gRDtpZihrPT04NylrPShHPDwyJjcpPDYmJigoR140MCkmNyk+PTQ/NDA6Njg7ZWxzZSBpZihrPT05OClrPTM3O2Vsc2UgaWYoaz09NDApe2E6e2lmKCEoUD0oaD1tLFopLnRydXN0ZWRUeXBlcyxQKXx8IVAuY3JlYXRlUG9saWN5KXtEPWg7YnJlYWsgYX10cnl7aD1QLmNyZWF0ZVBvbGljeShOLHtjcmVhdGVIVE1MOm4sY3JlYXRlU2NyaXB0Om4sY3JlYXRlU2NyaXB0VVJMOm59KX1jYXRjaChJKXtpZihaLmNvbnNvbGUpWi5jb25zb2xlW0JdKEkubWVzc2FnZSl9RD1ofWs9Njh9ZWxzZSBrPT01Nj8oRD1CLGs9ODcpOms9PTM3JiYoaz0oR14xMyk8MjQmJihHXlIpPj0xOD81Njo4Nyl9fX0sWj10aGlzfHxzZWxmLG49ZnVuY3Rpb24oUil7cmV0dXJuIGQuY2FsbCh0aGlzLDMwLDgwLDMsUil9OygwLGV2YWwpKGZ1bmN0aW9uKFIsYyl7cmV0dXJuKGM9ZCgzMCw4MCwxNCwiZXJyb3IiLG51bGwsImFkIikpJiZSLmV2YWwoYy5jcmVhdGVTY3JpcHQoIjEiKSk9PT0xP2Z1bmN0aW9uKEcpe3JldHVybiBjLmNyZWF0ZVNjcmlwdChHKX06ZnVuY3Rpb24oRyl7cmV0dXJuIiIrR319KFopKEFycmF5KE1hdGgucmFuZG9tKCkqNzgyNHwwKS5qb2luKCJcbiIpK1snLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LGV5SjJaWEp6YVc5dUlqb2dNeXdpYzI5MWNtTmxjeUk2V3lJaVhTd2ljMjkxY21ObGMwTnZiblJsYm5RaU9sc2lJQ0pkTENKdVlXMWxjeUk2V3lKamJHOXpkWEpsUkhsdVlXMXBZMEoxZEhSdmJpSmRMQ0p0WVhCd2FXNW5jeUk2SWtGQlFVRTdRVUZCUVR0QlFVRkJPMEZCUVVFN1FVRkJRVHRCUVVGQk8wRkJRVUVpZlE9PScsCicoZnVuY3Rpb24oKXsvKicsCicnLAonIENvcHlyaWdodCBHb29nbGUgTExDJywKJyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMCcsCicqLycsCid2YXIgY3U9ZnVuY3Rpb24oayxSLEcsaCxELGMsWixuLG0sQixULE4sUCxkKXtmb3IoZD0oUD05OCwxNik7Oyl0cnl7aWYoUD09ODApYnJlYWs7ZWxzZSBpZihQPT0zNylQPSgoR3w2KSY3KT49MyYmKEc+PjImNik8Mz81Njo4NztlbHNlIGlmKFA9PTg3KVA9KEd8OCk9PUc/NDA6Njg7ZWxzZSBpZihQPT03NSlQPTk5O2Vsc2UgaWYoUD09MSlkPTE2LGUoODgsRCxaLFQpLFA9MzI7ZWxzZSBpZihQPT01NilrLnJhdz1SLE9iamVjdC5mcmVlemUmJihPYmplY3QuZnJlZXplKGspLE9iamVjdC5mcmVlemUoUikpLE49ayxQPTg3O2Vsc2UgaWYoUD09NDApUD05OTtlbHNlIGlmKFA9PTYpZD0yMSxuPWtuKEIsayxSLFopLFA9MzI7ZWxzZSBpZihQPT05OClQPTM3O2Vsc2UgaWYoUD09MzkpWi5TPWgsQj1aLlAucG9wKCksUD02O2Vsc2V7aWYoUD09NjgpcmV0dXJuIE47UD09NTE/UD1jJiZaLlM/MTY6NzU6UD09NTI/KE49bixQPTY4KTpQPT0zMj8oZD0xNixQPTUxKTpQPT0xNj8obT1aLlMsbShmdW5jdGlvbigpe1JCKDMxLGZhbHNlLFosUixSKX0pLFA9NTIpOlA9PTk5JiYoUD1aLlAubGVuZ3RoPzM5OjUyKX19Y2F0Y2goSSl7aWYoZD09MTYpdGhyb3cgSTtkPT0yMSYmKFQ9SSxQPTEpfX0sb0I9ZnVuY3Rpb24oayxSLEcsaCxELGMsWixuLG0sQil7Zm9yKG09MTttIT01OTspaWYobT09MjYpbT1SPDwxJms/ODg6OTI7ZWxzZSBpZihtPT0zNyl7YTp7aWYodHlwZW9mIGM9PT0ic3RyaW5nIil7Qj10eXBlb2YgRCE9PSJzdHJpbmcifHxELmxlbmd0aCE9Rz8tMTpjLmluZGV4T2YoRCxoKTticmVhayBhfWZvcihaPWg7WjxjLmxlbmd0aDtaKyspaWYoWiBpbiBjJiZjW1pdPT09RCl7Qj1aO2JyZWFrIGF9Qj0tMX1tPTIzfWVsc2UgaWYobT09NzApdGhpcy5CPUcsbT0yNjtlbHNlIGlmKG09PTc0KVo9dHlwZW9mIGMsbj1aIT1oP1o6Yz9BcnJheS5pc0FycmF5KGMpPyJhcnJheSI6WjoibnVsbCIsQj1uPT1EfHxuPT1oJiZ0eXBlb2YgYy5sZW5ndGg9PUcsbT01NjtlbHNlIGlmKG09PTM2KW09KFJ8NDApPT1SPzc0OjU2O2Vsc2V7aWYobT09ODgpcmV0dXJuIEI7bT09NTY/bT0oUj4+MSZrKT09MT8zNzoyMzptPT02MT8oQj1jdShHLEcsMyksbT0zNik6bT09MjM/bT0oUi01JjMpPT0zPzcwOjI2Om09PTA/bT0oUiY1OSk9PVI/NjE6MzY6bT09OTI/KHRoaXMubisrLGg9Ry10aGlzLmgsdGhpcy5oKz1oL3RoaXMubix0aGlzLmh4Kz1oKihHLXRoaXMuaCksbT04OCk6bT09MSYmKG09MCl9fSxDbj1mdW5jdGlvbihrLFIsRyxoLEQsYyxaLG4sbSl7Zm9yKG49NDc7biE9MjE7KWlmKG49PTQ1KW49KFJeMjIpPj4zPzU3OjY3O2Vsc2UgaWYobj09Njgpbj1SLTQ+PjQ+PTEmJigoUl42OCkmMTYpPDI/MTI6OTI7ZWxzZSBpZihuPT1rKW49KFImOTApPT1SPzMzOjY4O2Vsc2UgaWYobj09NjcpbT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoRyxFUikmJkdbRVJdfHwoR1tFUl09KytIdSksbj01NztlbHNlIGlmKG49PTQ3KW49aztlbHNlIGlmKG49PTMzKW09YSgxOCxudWxsLDgxOTIsRyx0cnVlKSxuPTY4O2Vsc2V7aWYobj09NTcpcmV0dXJuIG07bj09OTI/bj0oUnw0OCk9PVI/ODE6NDU6bj09ODE/KHRoaXNbdGhpcysiIl09dGhpcyxuPTQ1KTpuPT0xMiYmKGM9aCxjXj1jPDwxMyxjPShaPWM+PjE3LChjfDApLShjJlopLSh+Y15aKSsofmN8WikpLChjPShjXmM8PDUpJkQpfHwoYz0xKSxtPShHfDApKyhjfDApLTIqKEcmYyksbj05Mil9fSxySj1mdW5jdGlvbihrLFIsRyxoLEQsYyxaLG4sbSxCKXtmb3IobT05NTttIT02NTspe2lmKG09PTg3KXJldHVybiBCO2lmKG09PTI4KWhXKDI0LHRydWUsRyksbT0zMTtlbHNlIGlmKG09PTQ2KXthOntmb3IoYyBpbiBoKWlmKEQuY2FsbCh2b2lkIDAsaFtjXSxjLGgpKXtCPVI7YnJlYWsgYX1CPUd9bT04N31lbHNlIGlmKG09PTMxKW09aC5aW0RdLmxlbmd0aD09Uj84OToxMztlbHNlIGlmKG09PTIxKUQ9Ry50eXBlLG09Nzg7ZWxzZSBpZihtPT03MSl0aGlzLmxYPXRoaXMubFgsdGhpcy5nPXRoaXMuZyxtPTU5O2Vsc2UgaWYobT09NiltPShrfDE2KT09az83NTo5NDtlbHNlIGlmKG09PTEzKW09KGs+PjImMTMpPT0xPzcxOjU5O2Vsc2UgaWYobT09NTkpbT0oaz4+MSY3KT09ND83OTo2O2Vsc2UgaWYobT09OTUpbT02MztlbHNlIGlmKG09PTk0KW09KChrXjUyKSYxMyk+PTgmJigoa141MCkmMTQpPDk/NDY6ODc7ZWxzZSBpZihtPT02MyltPWs+PjEmNj8xMzoyMTtlbHNlIGlmKG09PTc4KW09RCBpbiBoLlomJnRXKDcsUixHLGguWltEXSk/Mjg6MTM7ZWxzZSBpZihtPT03OSltPTY7ZWxzZSBpZihtPT03NSl7YTp7Zm9yKG49UjtuPEQubGVuZ3RoOysrbilpZihaPURbbl0sIVouZlgmJloubGlzdGVuZXI9PWMmJlouY2FwdHVyZT09ISFHJiZaLlZuPT1oKXtCPW47YnJlYWsgYX1CPS0xfW09OTR9ZWxzZSBtPT04OSYmKGRlbGV0ZSBoLlpbRF0saC5KeC0tLG09MTMpfX0sdFc9ZnVuY3Rpb24oayxSLEcsaCxELGMsWixuLG0sQixULE4sUCxkKXt7UD05NDt3aGlsZShQIT05KWlmKFA9PTE2KUQ9b0IoMTMsNiwxLFIsRyxoKSwoYz1EPj1SKSYmQXJyYXkucHJvdG90eXBlLnNwbGljZS5jYWxsKGgsRCwxKSxkPWMsUD00NztlbHNle2lmKFA9PTQpcmV0dXJuIGQ7aWYoUD09NTcpbT1aW0JdLFA9NDA7ZWxzZSBpZihQPT01MilQPTM3O2Vsc2UgaWYoUD09NDApUD0hb0IoMTMsNDUsRywib2JqZWN0IiwiYXJyYXkiLG0pfHxOUCg0LCJvYmplY3QiLDE5LG0pJiZtLm5vZGVUeXBlPkQ/OTU6NzU7ZWxzZSBpZihQPT00NylQPShrJjI3KT09az82NTo3MjtlbHNlIGlmKFA9PTkzKUc9UltsOV0sZD1HIGluc3RhbmNlb2Ygak0/RzpudWxsLFA9NDtlbHNlIGlmKFA9PTYyKVA9KGsrOF4yNyk+PWsmJihrLTR8NzUpPGs/Mjk6MTg7ZWxzZSBpZihQPT03NSl7YTp7aWYobSYmdHlwZW9mIG0ubGVuZ3RoPT1HKXtpZihOUCg0LCJvYmplY3QiLDE4LG0pKXtUPXR5cGVvZiBtLml0ZW09PSJmdW5jdGlvbiJ8fHR5cGVvZiBtLml0ZW09PSJzdHJpbmciO2JyZWFrIGF9aWYodHlwZW9mIG09PT0iZnVuY3Rpb24iKXtUPXR5cGVvZiBtLml0ZW09PSJmdW5jdGlvbiI7YnJlYWsgYX19VD1SfVA9KFJCKDMzLEQsaCxUP2hXKDEyLEQsbSk6bSxOKSw2MCl9ZWxzZSBQPT02NT8oTj1mdW5jdGlvbihJKXtJJiZuLmFwcGVuZENoaWxkKHR5cGVvZiBJPT09InN0cmluZyI/Yy5jcmVhdGVUZXh0Tm9kZShJKTpJKX0sQj0xLFA9NTIpOlA9PTYwPyhCKyssUD0zNyk6UD09OTQ/UD0xMjpQPT05OT8oYUIuY2FsbCh0aGlzLFI/Ui50eXBlOiIiKSx0aGlzLnJlbGF0ZWRUYXJnZXQ9dGhpcy5jdXJyZW50VGFyZ2V0PXRoaXMudGFyZ2V0PW51bGwsdGhpcy5idXR0b249dGhpcy5zY3JlZW5ZPXRoaXMuc2NyZWVuWD10aGlzLmNsaWVudFk9dGhpcy5jbGllbnRYPXRoaXMub2Zmc2V0WT10aGlzLm9mZnNldFg9MCx0aGlzLmtleT0iIix0aGlzLmNoYXJDb2RlPXRoaXMua2V5Q29kZT0wLHRoaXMubWV0YUtleT10aGlzLnNoaWZ0S2V5PXRoaXMuYWx0S2V5PXRoaXMuY3RybEtleT1mYWxzZSx0aGlzLnN0YXRlPW51bGwsdGhpcy5wb2ludGVySWQ9MCx0aGlzLnBvaW50ZXJUeXBlPSIiLHRoaXMudGltZVN0YW1wPTAsdGhpcy5ZTj1udWxsLFImJnRoaXMuaW5pdChSLEcpLFA9NjIpOlA9PTcyP1A9KGs+PjEmMjMpPT0yPzkzOjQ6UD09MTI/UD1rKzYmMTM/NjI6OTk6UD09Mjk/KGQ9eWZbR10oeWYucHJvdG90eXBlLHtwYXJlbnQ6UixsZW5ndGg6UixzdGFjazpSLHBvcDpSLHByb3RvdHlwZTpSLHByb3BlcnR5SXNFbnVtZXJhYmxlOlIsZG9jdW1lbnQ6UixzcGxpY2U6UixjYWxsOlIscmVwbGFjZTpSLGNvbnNvbGU6UixmbG9vcjpSfSksUD0xOCk6UD09Mzc/UD1CPFoubGVuZ3RoPzU3OjcyOlA9PTk1PyhOKG0pLFA9NjApOlA9PTE4JiYoUD1rPj4xPDkmJihrXjgwKT4+Mz49Mj8xNjo0Nyl9fX0sTVA9ZnVuY3Rpb24oayxSLEcsaCxELGMsWixuLG0sQixUKXt7Qj00Nzt3aGlsZShCIT0zNCl7aWYoQj09OTIpdGhyb3cgbmV3IFNNKHR5cGVvZiBHLDEpO2lmKEI9PTk2KVIuc2FuZGJveC5zdXBwb3J0cyYmIVIuc2FuZGJveC5zdXBwb3J0cyhEW2NdKXx8Ui5zYW5kYm94LmFkZChEW2NdKSxCPTc5O2Vsc2UgaWYoQj09NTYpQj0oays4JjU5KTxrJiYoays2XjUpPj1rPzMyOjgzO2Vsc2UgaWYoQj09NSlCPW48Ui5sZW5ndGg/MTg6NDk7ZWxzZSBpZihCPT02NylCPUcgaW5zdGFuY2VvZiBYMT83NTo5MjtlbHNlIGlmKEI9PTMwKXtpZihHIGluc3RhbmNlb2YgWDEpaD1HLktqO2Vsc2UgdGhyb3cgRXJyb3IoIiIpO1Iuc3JjPWgudG9TdHJpbmcoKSxCPTUxfWVsc2UgaWYoQj09MjUpQj02MjtlbHNlIGlmKEI9PTQ3KUI9NTY7ZWxzZSBpZihCPT00NSlUPSEhKGg9Ry5PMiwtMip+KGgmUikrfmgrKGheUikrKGh8flIpKSxCPTY7ZWxzZSBpZihCPT03OSljKyssQj02MjtlbHNlIGlmKEI9PTc1KUQ9ImFsbG93LXNhbWUtb3JpZ2luIGFsbG93LXNjcmlwdHMgYWxsb3ctZm9ybXMgYWxsb3ctcG9wdXBzIGFsbG93LXBvcHVwcy10by1lc2NhcGUtc2FuZGJveCBhbGxvdy1zdG9yYWdlLWFjY2Vzcy1ieS11c2VyLWFjdGl2YXRpb24iLnNwbGl0KCIgIiksUi5zZXRBdHRyaWJ1dGUoInNhbmRib3giLCIiKSxjPTAsQj0yNTtlbHNlIGlmKEI9PTgzKUI9ay01PDE1JiYoa142OSk+PjQ+PTI/NDU6NjtlbHNlIGlmKEI9PTUzKUI9NzY7ZWxzZXtpZihCPT01MSlyZXR1cm4gVDtCPT01Mj9CPTE2OkI9PTcyP0I9NTpCPT02Mj9CPWM8RC5sZW5ndGg/OTY6MzA6Qj09Nzc/KFIucmVtb3ZlQXR0cmlidXRlKCJzcmNkb2MiKSxCPTY3KTpCPT00PyhuKyssQj01KTpCPT0xNj9CPWg+Nz8yNzo0OkI9PTE4PyhoKz1HLEQ9KG09RDw8RyxjPVJbbl0sMiooY3wwKSt+Yy0ofm18YykpLEI9NTIpOkI9PTQ5PyhUPVosQj04Myk6Qj09Nj9CPShrKzUmNyk9PTE/NTM6NzY6Qj09MTM/Qj0xNjpCPT0zMj8oaD1uPTAsWj1bXSxCPTcyKTpCPT0yNz8oaC09OCxaLnB1c2goRD4+aCYyNTUpLEI9MTMpOkI9PTc2JiYoQj0oaysxJjExKT09Mz83Nzo1MSl9fX19LGhXPWZ1bmN0aW9uKGssUixHLGgsRCxjLFosbil7Zm9yKFo9NTtaIT05NjspaWYoWj09OTEpe2E6e2lmKChEPUcubGVuZ3RoLEQpPlIpe2ZvcihjPShoPUFycmF5KEQpLFIpO2M8RDtjKyspaFtjXT1HW2NdO249aDticmVhayBhfW49W119Wj05OX1lbHNlIGlmKFo9PTQwKW49TWF0aC5mbG9vcih0aGlzLkooKSksWj01NztlbHNlIGlmKFo9PTEwKVo9ay00Pj4zPT0xPzkxOjk5O2Vsc2UgaWYoWj09NDIpUi5uWD1mdW5jdGlvbigpe3JldHVybiBSLlh6P1IuWHo6Ui5Yej1uZXcgUn0sUi5Yej12b2lkIDAsWj0xMDtlbHNlIGlmKFo9PTIpRy5mWD1SLEcubGlzdGVuZXI9bnVsbCxHLnByb3h5PW51bGwsRy5zcmM9bnVsbCxHLlZuPW51bGwsWj01OTtlbHNlIGlmKFo9PTg1KVo9KGt8NTYpPT1rPzQwOjU3O2Vsc2UgaWYoWj09NTcpWj0oaysxJjI4KT49ayYmKGstMV43KTxrPzI6NTk7ZWxzZSBpZihaPT01OSlaPShrfDcyKT09az80MjoxMDtlbHNlIGlmKFo9PTUpWj04NTtlbHNlIGlmKFo9PTk5KXJldHVybiBufSxUbz1mdW5jdGlvbihrLFIsRyxoLEQsYyxaLG4sbSxCLFQsTil7e1Q9NTc7d2hpbGUoVCE9NTkpaWYoVD09aylEWi5jYWxsKHRoaXMpLFJ8fFpafHwoWlo9bmV3IG5uKSx0aGlzLlFuPXRoaXMuQT1udWxsLHRoaXMuWGk9dGhpcy5qbT1mYWxzZSx0aGlzLnMyPXZvaWQgMCx0aGlzLktYPXRoaXMuWjc9dGhpcy5jVj1udWxsLFQ9Njk7ZWxzZSBpZihUPT03NSlUPTQ7ZWxzZXtpZihUPT01MSlyZXR1cm4gTjtUPT00P1Q9QjxtLmxlbmd0aD81Mjo1MTpUPT04OT9UPShHLTVeMzIpPj1HJiYoRy00fDE2KTxHP2s6Njk6VD09MTM/KG49QnUoMyxuKSxaJiZaW2RKXT9aLkkuYWRkKFN0cmluZyhtKSxuLGgsTlAoNCxSLDE2LGMpPyEhYy5jYXB0dXJlOiEhYyxEKTpJQig2NCwib2JqZWN0IixmYWxzZSxuLGgsbSxaLGMsRCksVD01MSk6VD09OTA/KEI9MCxUPTc1KTpUPT01P1Q9QXJyYXkuaXNBcnJheShtKT85MDoxMzpUPT01Nz9UPTg5OlQ9PTE/KEIrKyxUPTQpOlQ9PTY5P1Q9Ry05Pj40PzUxOjU6VD09NTImJihUbyg1NCwib2JqZWN0Iiw5LHRydWUsRCxjLFosbixtW0JdKSxUPTEpfX19LGU9ZnVuY3Rpb24oayxSLEcsaCxELGMsWixuKXt7bj0yMTt3aGlsZShuIT02NylpZihuPT0yMSluPTUwO2Vsc2UgaWYobj09MTkpbj0oKGteNTApJjI2KTw3JiYoa143OSk+PTI3Pzk2Ojg3O2Vsc2UgaWYobj09MjkpdHlwZW9mIGguY2xhc3NOYW1lPT1SP2guY2xhc3NOYW1lPUc6aC5zZXRBdHRyaWJ1dGUmJmguc2V0QXR0cmlidXRlKCJjbGFzcyIsRyksbj04OTtlbHNlIGlmKG49PTMpYz1HLHNSPT09dm9pZCAwJiYoc1I9UiksRD0oaD1zUik/aC5jcmVhdGVTY3JpcHRVUkwoYyk6YyxaPW5ldyBYMShEKSxuPTE5O2Vsc2UgaWYobj09NTApbj1rLTE+PjQ+PTEmJihrPj4xJjEyKTwyPzM6MTk7ZWxzZSBpZihuPT0yMClHLks9KChHLks/Ry5LKyJ+IjoiRToiKStoLm1lc3NhZ2UrUitoLnN0YWNrKS5zbGljZSgwLDIwNDgpLG49MTU7ZWxzZSBpZihuPT05NiluPTg3O2Vsc2UgaWYobj09OTIpWj1vQigxMyw3LDEsUixHLGgpPj1SLG49NjI7ZWxzZSBpZihuPT04NyluPShrfDMpPj40PDImJms+PjE+PS02Nj8yOTo4OTtlbHNlIGlmKG49PTYyKW49KGt8MjQpPT1rPzIwOjE1O2Vsc2UgaWYobj09ODkpbj0oays1JjgpPDgmJihrXjkzKT4+Mz49MT85Mjo2MjtlbHNlIGlmKG49PTE1KXJldHVybiBafX0sQVc9ZnVuY3Rpb24oayxSLEcsaCxELGMsWil7Zm9yKGM9aztjIT00MDspe2lmKGM9PTM3KXJldHVybiBaO2lmKGM9PTY3KWM9Ry05PDwyPj1HJiYoRyszXjUpPEc/NTM6Mzc7ZWxzZSBpZihjPT04KXRoaXMudHlwZT1SLHRoaXMuY3VycmVudFRhcmdldD10aGlzLnRhcmdldD1oLHRoaXMuZGVmYXVsdFByZXZlbnRlZD10aGlzLlB0PWZhbHNlLGM9MjM7ZWxzZSBpZihjPT01KWM9KEcrNSYxNCk9PTI/ODY6Njc7ZWxzZSBpZihjPT0xMyl7YTp7aWYoIShEPW51bGwsaD1ILnRydXN0ZWRUeXBlcyxoKXx8IWguY3JlYXRlUG9saWN5KXtaPUQ7YnJlYWsgYX10cnl7RD1oLmNyZWF0ZVBvbGljeShSLHtjcmVhdGVIVE1MOnBuLGNyZWF0ZVNjcmlwdDpwbixjcmVhdGVTY3JpcHRVUkw6cG59KX1jYXRjaChuKXtILmNvbnNvbGUmJkguY29uc29sZS5lcnJvcihuLm1lc3NhZ2UpfVo9RH1jPTV9ZWxzZSBjPT04Nj8oYjkuY2FsbCh0aGlzLFIsaHx8UWYublgoKSxEKSxjPTY3KTpjPT0zOT9jPShHJjc5KT09Rz84OjIzOmM9PWs/Yz0zOTpjPT01Mz8oWj10eXBlb2YgRC5jbGFzc05hbWU9PSJzdHJpbmciP0QuY2xhc3NOYW1lOkQuZ2V0QXR0cmlidXRlJiZELmdldEF0dHJpYnV0ZShSKXx8aCxjPTM3KTpjPT0yMyYmKGM9KEc8PDEmMTYpPDE2JiYoR141OSk+PjM+PTI/MTM6NSl9fSxLbj1mdW5jdGlvbihrLFIsRyxoLEQsYyl7Zm9yKGM9Njc7YyE9Njk7KWlmKGM9PTU3KXRoaXMuc3JjPWgsdGhpcy5KeD1rLHRoaXMuWj17fSxjPTE3O2Vsc2V7aWYoYz09MTcpcmV0dXJuIEQ7Yz09Njc/Yz03NzpjPT0zMj9jPUc8PDImNT8xNzo1NzpjPT03Nz9jPShHPj4yJjMpPT1SPzM2OjMyOmM9PTM2JiYoV3UuY2FsbCh0aGlzKSx0aGlzLkk9bmV3IGpNKHRoaXMpLHRoaXMubHE9dGhpcyx0aGlzLk5vPW51bGwsYz0zMil9fSxJQj1mdW5jdGlvbihrLFIsRyxoLEQsYyxaLG4sbSxCLFQsTixQLGQsSSl7Zm9yKEk9MTc7SSE9NTE7KWlmKEk9PTY3KVouYWRkTGlzdGVuZXIoQiksST0wO2Vsc2UgaWYoST09MTcpST01MztlbHNlIGlmKEk9PTE5KUk9KGteNzQpPj40PzYxOjM3O2Vsc2UgaWYoST09MTEpST1aLmF0dGFjaEV2ZW50PzU0OjMyO2Vsc2V7aWYoST09Nyl0aHJvdyBFcnJvcigiSW52YWxpZCBldmVudCB0eXBlIik7aWYoST09NzQpZm58fChuPVQpLG49PT12b2lkIDAmJihuPUcpLFouYWRkRXZlbnRMaXN0ZW5lcihjLnRvU3RyaW5nKCksQixuKSxJPTA7ZWxzZSBpZihJPT00OSlJPShrJjQ2KT09az85MzoxOTtlbHNlIGlmKEk9PTYxKUk9KGt8MjQpPT1rPzgwOjg2O2Vsc2UgaWYoST09MzcpST1jPzU1Ojc7ZWxzZSBpZihJPT04MClkPVIsST04NjtlbHNlIGlmKEk9PTg5KUk9Wi5hZGRFdmVudExpc3RlbmVyPzc0OjExO2Vsc2UgaWYoST09OTMpZD0hIShHLnJiJkQpJiZNUCg4LEQsRykhPWgmJighKGM9Ry5pcSwtMS1+KGN8RCktKGNeRCkpfHxHLmRpc3BhdGNoRXZlbnQodnUoNTYsUixELDIsNjQsOCxoLDI0KSkpJiYhRy5nLEk9MTk7ZWxzZSBpZihJPT04NSlkPXFQKFZmLFIpLEk9NDk7ZWxzZSBpZihJPT01NSlUPU5QKDQsUiwyMSxuKT8hIW4uY2FwdHVyZTohIW4sKFA9dFcoMjAsWikpfHwoWltsOV09UD1uZXcgak0oWikpLE49UC5hZGQoYyxoLEQsVCxtKSxJPTk3O2Vsc2V7aWYoST09MzYpdGhyb3cgRXJyb3IoImFkZEV2ZW50TGlzdGVuZXIgYW5kIGF0dGFjaEV2ZW50IGFyZSB1bmF2YWlsYWJsZS4iKTtpZihJPT0wKWk5KyssST02MTtlbHNlIGlmKEk9PTUzKUk9KGstOXw4NCk8ayYmKGsrNV4zKT49az8xMDozNDtlbHNlIGlmKEk9PTU0KVouYXR0YWNoRXZlbnQoTG4oMywib24iLGMudG9TdHJpbmcoKSw0OCksQiksST0wO2Vsc2V7aWYoST09ODYpcmV0dXJuIGQ7ST09MzI/ST1aLmFkZExpc3RlbmVyJiZaLnJlbW92ZUxpc3RlbmVyPzY3OjM2Okk9PTEwPyhSLlFuJiZSLlFuLmZvckVhY2goRyx2b2lkIDApLEk9MzQpOkk9PTU5PyhCPUYxKDk0LCJvbiIsMyksTi5wcm94eT1CLEIuc3JjPVosQi5saXN0ZW5lcj1OLEk9ODkpOkk9PTk3P0k9Ti5wcm94eT82MTo1OTpJPT0zNCYmKEk9KGs8PDImMTMpPT00Pzg1OjQ5KX19fX0sZj1mdW5jdGlvbihrLFIsRyxoLEQsYyl7e0Q9MzA7d2hpbGUoRCE9NzkpaWYoRD09OTQpRD0oa3w3KT4+Mz84ODo1MTtlbHNlIGlmKEQ9PTUxKXRoaXMuTW89SC5kb2N1bWVudHx8ZG9jdW1lbnQsRD04ODtlbHNlIGlmKEQ9PTg4KUQ9ay0yPDwyPj1rJiYoays0XjI5KTxrPzYyOjYzO2Vsc2UgaWYoRD09MzApRD05NDtlbHNlIGlmKEQ9PTYyKUMoRyxSLGgpLFJbeG5dPTI3OTYsRD02MztlbHNlIGlmKEQ9PTYzKXJldHVybiBjfX0sT1I9ZnVuY3Rpb24oayxSLEcsaCxELGMsWixuLG0sQixULE4sUCl7e1Q9NTI7d2hpbGUoVCE9OTYpaWYoVD09NTApVD1jPT09IiJ8fGM9PXZvaWQgMD83NTo2NjtlbHNlIGlmKFQ9PTgxKVQ9Ui0yPj0xMCYmUis2PDI2PzU6ODY7ZWxzZSBpZihUPT02MilUPShSJjcwKT09Uj8yNDo3NDtlbHNlIGlmKFQ9PTc0KVQ9KFImNDUpPT1SPzE0OjExO2Vsc2UgaWYoVD09MjQpUD1mdW5jdGlvbigpe30sRD12b2lkIDAsYz1nSihHLGZ1bmN0aW9uKGQsSSl7Zm9yKEk9MTU7SSE9NjQ7KUk9PTE1P0k9UD82Nzo2NDpJPT02NyYmKGgmJnU5KGgpLEQ9ZCxQKCksUD12b2lkIDAsST02NCl9LCEhaCksWj1jWzBdLG49Y1sxXSxOPXtob3Q6ZnVuY3Rpb24oZCxJLFMsWCxNLHIsbCl7Zm9yKHI9NDc7ciE9MjU7KXtpZihyPT0xMylyZXR1cm4gTT1aKFMpLGQmJmQoTSksTTtyPT01MD8obCgpLHI9MjUpOnI9PTg0P3I9ST8zOToxMzpyPT1rPyhYPVAsUD1mdW5jdGlvbigpe1goKSx1OShsKX0scj0yNSk6cj09Mzk/cj1EPzUwOms6cj09NDcmJihsPWZ1bmN0aW9uKCl7RChmdW5jdGlvbih3KXt1OShmdW5jdGlvbigpe2Qodyl9KX0sUyl9LHI9ODQpfX0scGU6ZnVuY3Rpb24oZCl7biYmbihkKX19LFQ9NzQ7ZWxzZSBpZihUPT02NilELnNldEF0dHJpYnV0ZShtLGMpLFQ9MTE7ZWxzZSBpZihUPT01MilUPTgxO2Vsc2V7aWYoVD09MTEpcmV0dXJuIE47VD09ODY/VD0oUnw3Mik9PVI/OTI6NjI6VD09MTQ/KEFycmF5LmlzQXJyYXkoYykmJihjPWMuam9pbigiICIpKSxtPSJhcmlhLSIrWixUPTUwKTpUPT01Pyh0aGlzW3RoaXMrIiJdPXRoaXMsTj1Qcm9taXNlLnJlc29sdmUoKSxUPTg2KTpUPT05Mj8oRD1HLE49ZnVuY3Rpb24oKXtyZXR1cm4gRDxoLmxlbmd0aD97ZG9uZTpmYWxzZSx2YWx1ZTpoW0QrK119Ontkb25lOnRydWV9fSxUPTYyKTpUPT0yMj8oQj1VUixaIGluIEI/RC5zZXRBdHRyaWJ1dGUobSxCW1pdKTpELnJlbW92ZUF0dHJpYnV0ZShtKSxUPTExKTpUPT02Nz8obj17fSxVUj0obi5hdG9taWM9RyxuLmF1dG9jb21wbGV0ZT0ibm9uZSIsbi5kcm9wZWZmZWN0PSJub25lIixuLmhhc3BvcHVwPUcsbi5saXZlPSJvZmYiLG4ubXVsdGlsaW5lPUcsbi5tdWx0aXNlbGVjdGFibGU9RyxuLm9yaWVudGF0aW9uPSJ2ZXJ0aWNhbCIsbi5yZWFkb25seT1HLG4ucmVsZXZhbnQ9ImFkZGl0aW9ucyB0ZXh0IixuLnJlcXVpcmVkPUcsbi5zb3J0PSJub25lIixuLmJ1c3k9RyxuLmRpc2FibGVkPUcsbltoXT1HLG4uaW52YWxpZD0iZmFsc2UiLG4pLFQ9MjIpOlQ9PTc1JiYoVD1VUj8yMjo2Nyl9fX0sem89ZnVuY3Rpb24oayxSLEcsaCxELGMsWil7e2M9Mzt3aGlsZShjIT01NilpZihjPT02OCljPShHJjEwMyk9PUc/azpSO2Vsc2V7aWYoYz09UilyZXR1cm4gWjtjPT0zNj8oaC5jbGFzc0xpc3Q/QXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbChELGZ1bmN0aW9uKG4pe0pXKDM1LDcsImNsYXNzIiwyMCwiICIsInN0cmluZyIsMCxoLG4pfSk6ZSgzLCJzdHJpbmciLEFycmF5LnByb3RvdHlwZS5maWx0ZXIuY2FsbChCdSgzNCwiY2xhc3MiLGgpLGZ1bmN0aW9uKG4pe3JldHVybiFlKDQ0LDAsbixEKX0pLmpvaW4oIiAiKSxoKSxjPTY4KTpjPT1rPyhaPXRoaXMubj09PTA/MDpNYXRoLnNxcnQodGhpcy5oeC90aGlzLm4pLGM9Uik6Yz09Mz9jPTY6Yz09NiYmKGM9KEd8MjQpPT1HPzM2OjY4KX19fSxxPWZ1bmN0aW9uKGssUixHLGgsRCxjLFosbixtKXt3aGlsZShrLTM+PjQ9PTQpe2E6e2ZvcigwO1IuVjswKXttPWtmKFIsUi5HKTticmVhayBhO2lmKDEpYnJlYWt9KGg9R04oOCxSLHRydWUpLGgmMTI4KSYmKGhePTEyOCxEPUdOKDIsUix0cnVlKSxoPShHPWg8PDIsKEcmRCktMS1+KEd8RCkpKSxtPWh9aWYoImoiKWJyZWFrfXdoaWxlKCgoa14yMSkmMjMpPT00KXthOntpZihSLlYpe209a2YoUixSLkcpO2JyZWFrIGF9aD1HTig4LFIsdHJ1ZSksaCYxMjgmJihoXj0xMjgsRz1HTigyLFIsdHJ1ZSksaD0oRD1oPDwyLChEJkcpLTEtfihEfEcpKSksbT1ofWlmKHRydWUpYnJlYWt9cmV0dXJuKCgoa14oKChrXjM4KSYxNSk+PTkmJmstNDwxOSYmKGg9UnYoRyksaCYxMjgmJihoPS1+KGgmMTI3KSsofmgmMTI3KSsoaHwtMTI4KXxSdihHKTw8UiksbT1oKSw3MCkpJjE1KT09MyYmKGg9eWZbRy5SXShHLnZWKSxoW0cuUl09ZnVuY3Rpb24oKXt3aGlsZSh0cnVlKXtyZXR1cm4gUjtpZih0cnVlIT1bXSlicmVha319LGguY29uY2F0PWZ1bmN0aW9uKEIpe1I9Qn0sbT1oKSwoKGteNTEpJjE1KT09MSkmJihtPShaPShjPWhbR108PDI0LEQ9aFsoR3wwKSsxXTw8MTYsKGN8MCkrKGNeRCkrKH5jXkQpLShjfH5EKSksbj1oWyhHfDApKzJdPDxSLC0obnwwKSsyKihaJm4pKyhaXm4pKyh+WiZuKSl8aFsoR3wwKSszXSksbX0sUkI9ZnVuY3Rpb24oayxSLEcsaCxELGMsWixuLG0sQixULE4sUCl7Zm9yKFA9Njk7UCE9MDspaWYoUD09NTMpbj1oLmxlbmd0aCxaPXR5cGVvZiBoPT09InN0cmluZyI/aC5zcGxpdChHKTpoLGM9UixQPTI7ZWxzZSBpZihQPT0xMilQPWstMT4+Mz09Mz85MDo1MTtlbHNlIGlmKFA9PTQ5KVA9NDc7ZWxzZSBpZihQPT0yKVA9OTQ7ZWxzZSBpZihQPT04MSlQPShrKzdeMjEpPj1rJiZrLTc8PDE8az80MTo3MjtlbHNlIGlmKFA9PTExKUQ9bj0wLFA9NDk7ZWxzZSBpZihQPT04MilEKyssUD00NztlbHNlIGlmKFA9PTk2KU49TWF0aC5mbG9vcih0aGlzLlRmKyh0aGlzLkooKS10aGlzLmtOKSksUD04MTtlbHNlIGlmKFA9PTY5KVA9NTc7ZWxzZSBpZihQPT00MiljIGluIFomJkQuY2FsbCh2b2lkIDAsWltjXSxjLGgpLFA9ODc7ZWxzZSBpZihQPT05NClQPWM8bj80MjoxMjtlbHNlIGlmKFA9PTkwKXthOmlmKEcuUC5sZW5ndGgpeyhHLm8mJiI6VFFSOlRRUjoiKCksRykuRTk9RCxHLm89dHJ1ZTt0cnl7Wj1HLkooKSxHLkUyPTAsRy5vbz0wLEcuY3Q9WixHLmtOPVosYz1jdSgyLHRydWUsMjQsbnVsbCwiOiIsRCxHKSxtPWg/MDoxMCxuPUcuSigpLUcua04sRy5UZis9bixHLkJWJiZHLkJWKG4tRy5YLEcudSxHLlcsRy5FMiksRy51PVIsRy5YPTAsRy5XPVIsbjxtfHxHLnM5LS08PTB8fChuPU1hdGguZmxvb3IobiksRy51WC5wdXNoKG48PTI1ND9uOjI1NCkpfWZpbmFsbHl7Ry5vPVJ9Tj1jO2JyZWFrIGF9UD01MX1lbHNlIGlmKFA9PTg3KWMrKyxQPTk0O2Vsc2UgaWYoUD09NTcpUD0oaysxJjYzKTxrJiYoay0yfDcwKT49az85Njo4MTtlbHNlIGlmKFA9PTU5KW4rPVIuY2hhckNvZGVBdChEKSxuKz1uPDwxMCxuPShjPW4+PjYsKG58YykrfmMtKG58fmMpKSxQPTgyO2Vsc2UgaWYoUD09NDEpe2E6e2lmKHRoaXMubj09PTApe049WzAsMF07YnJlYWsgYX1OPSh0aGlzLlQuc29ydChmdW5jdGlvbihkLEkpe3JldHVybiBkLUl9KSxbdGhpcy5uLHRoaXMuVFt0aGlzLlQubGVuZ3RoPj4xXV0pfVA9NzJ9ZWxzZSBpZihQPT03MilQPShrKzdeMTIpPGsmJmstNjw8MT49az8xMTo3MDtlbHNlIGlmKFA9PTIwKW4rPW48PDMsbl49bj4+MTEsWj1uKyhuPDwxNSk+Pj4wLG09bmV3IE51bWJlcigoQj0oVD0xPDxHLChUfDEpLShUJjEpLTIqKH5UJjEpKSwoWnwwKSsoQnwwKS0oWnxCKSkpLG1bMF09KFo+Pj5HKSVoLE49bSxQPTcwO2Vsc2V7aWYoUD09NTEpcmV0dXJuIE47UD09NDc/UD1EPFIubGVuZ3RoPzU5OjIwOlA9PTcwJiYoUD0oa3wzMik9PWs/NTM6MTIpfX0sYT1mdW5jdGlvbihrLFIsRyxoLEQsYyxaLG4sbSxCLFQpe2ZvcihCPTgzO0IhPTg2Oyl7aWYoQj09ODIpcmV0dXJuIFQ7aWYoQj09NjApQj0oayYxMTQpPT1rPzMyOjgyO2Vsc2V7aWYoQj09MTcpdGhyb3cgRXJyb3IoIkludmFsaWQgY2xhc3MgbmFtZSAiK0cpO2lmKEI9PTU2KXRocm93IEVycm9yKCJJbnZhbGlkIGRlY29yYXRvciBmdW5jdGlvbiAiK1IpO2lmKEI9PTEwKUcuUC5zcGxpY2UoMCwwLFIpLEI9MzM7ZWxzZSBpZihCPT04MylCPTM7ZWxzZSBpZihCPT0xMilCPUc/NTA6MTc7ZWxzZSBpZihCPT0zKUI9KGt8NDApPT1rPzEwOjMzO2Vsc2UgaWYoQj09NTApQj10eXBlb2YgUiE9PSJmdW5jdGlvbiI/NTY6NjA7ZWxzZSBpZihCPT0zMil7YTppZihjPXdpbmRvdy5idG9hKXtmb3IoWj0wLG49IiI7WjxoLmxlbmd0aDtaKz1HKW4rPVN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkoUixoLnNsaWNlKFosWitHKSk7VD0obT1jKG4pLEQmJihtPW0ucmVwbGFjZSgvXFwrL2csIi0iKS5yZXBsYWNlKC9cXC8vZywiXyIpLnJlcGxhY2UoLz0vZywiIikpLG0pO2JyZWFrIGF9Qj04Mn1lbHNlIEI9PTMzJiYoQj0oaz4+MiY3KT09MT8xMjo2MCl9fX0sQlk9ZnVuY3Rpb24oayxSLEcsaCxELGMsWixuLG0sQixULE4sUCxkKXtmb3IoZD02OTtkIT0yMjspaWYoZD09NTUpREQuY2FsbCh0aGlzLGgpLGQ9NjE7ZWxzZSBpZihkPT05OClQPShUPVpEW2suc3Vic3RyaW5nKDAsMykrIl8iXSk/VChrLnN1YnN0cmluZygzKSxHLGgsRCxjLFosbixtLEIpOkpXKDM1LDcsRyw1LGspLGQ9Mjc7ZWxzZSBpZihkPT0zMilkPWM/NzQ6MTY7ZWxzZSBpZihkPT02OSlkPTk7ZWxzZSBpZihkPT0xNiltPW4/dHlwZW9mIG4ublg9PT0iZnVuY3Rpb24iP24ublgoKTpuZXcgbjpudWxsLGQ9NTc7ZWxzZSBpZihkPT0yMClkPTMyO2Vsc2UgaWYoZD09NTcpdGhpcy5DPW0sZD00MTtlbHNlIGlmKGQ9PTk3KWQ9KG49bnJbWl0pPzcxOjI2O2Vsc2UgaWYoZD09NzUpYz10aGlzLmNvbnN0cnVjdG9yLGQ9MTE7ZWxzZSBpZihkPT04NylOPWZ1bmN0aW9uKCl7fSxOLnByb3RvdHlwZT1oLnByb3RvdHlwZSxHLk89aC5wcm90b3R5cGUsRy5wcm90b3R5cGU9bmV3IE4sRy5wcm90b3R5cGUuY29uc3RydWN0b3I9RyxHLmN3PWZ1bmN0aW9uKEksUyxYKXtmb3IodmFyIE09MTk7TSE9MjU7KWlmKE09PTE5KXZhciByPUFycmF5KChNPTEsYXJndW1lbnRzLmxlbmd0aC1rKSksbD1rO2Vsc2UgaWYoTT09MilyW2wta109YXJndW1lbnRzW2xdLE09NDE7ZWxzZXtpZihNPT01MilyZXR1cm4gaC5wcm90b3R5cGVbU10uYXBwbHkoSSxyKTtNPT00MT8obCsrLE09NTMpOk09PTUzP009bDxhcmd1bWVudHMubGVuZ3RoPzI6NTI6TT09MSYmKE09NTMpfX0sZD03O2Vsc2UgaWYoZD09MjYpYz0oRD1PYmplY3QuZ2V0UHJvdG90eXBlT2YoYy5wcm90b3R5cGUpKSYmRC5jb25zdHJ1Y3RvcixkPTIwO2Vsc2UgaWYoZD09MjcpZD0oUis1JjcpPj01JiZSPj4xPDE1PzU1OjQxO2Vsc2UgaWYoZD09NjEpZD0obT1HKT81Nzo3NTtlbHNlIGlmKGQ9PTQxKWQ9KFJ8NDApPT1SPzg3Ojc7ZWxzZSBpZihkPT05KWQ9Uis0Pj4zPT0yPzk4OjI3O2Vsc2UgaWYoZD09NylkPShSfDcyKT09Uj85OTo3MztlbHNlIGlmKGQ9PTk5KVA9YSgxNixudWxsLDgxOTIsayxmYWxzZSksZD03MztlbHNle2lmKGQ9PTczKXJldHVybiBQO2Q9PTc0PyhaPUNuKDY0LDE5LGMpLGQ9OTcpOmQ9PTcxP2Q9MTY6ZD09MTEmJihkPTMyKX19LFBZPWZ1bmN0aW9uKGssUixHLGgsRCxjLFosbixtLEIsVCxOLFAsZCl7e2Q9NTU7d2hpbGUoZCE9NSlpZihkPT04NylkPTQxO2Vsc2UgaWYoZD09NTUpZD01NztlbHNlIGlmKGQ9PTQ1KXthOntpZighKFo9Ry5JLlpbU3RyaW5nKGgpXSxaKSl7UD10cnVlO2JyZWFrIGF9Zm9yKG49KFo9Wi5jb25jYXQoKSxOPXRydWUsUik7bjxaLmxlbmd0aDsrK24pKFQ9WltuXSkmJiFULmZYJiZULmNhcHR1cmU9PUQmJihCPVQuVm58fFQuc3JjLG09VC5saXN0ZW5lcixULmFvJiZySigzLFIsVCxHLkkpLE49bS5jYWxsKEIsYykhPT1mYWxzZSYmTik7UD1OJiYhYy5kZWZhdWx0UHJldmVudGVkfWQ9Mzd9ZWxzZSBpZihkPT0zNylkPWs8PDE+PTI1JiYoa3wxKT4+NTwyPzg3OjQxO2Vsc2V7aWYoZD09NDEpcmV0dXJuIFA7ZD09NTcmJihkPShrKzJeMjQpPj1rJiZrKzM+PjI8az80NTozNyl9fX0sdnU9ZnVuY3Rpb24oayxSLEcsaCxELGMsWixuLG0sQixULE4pe2ZvcihUPTQ7VCE9Njc7KWlmKFQ9PTkzKVQ9KG58OSk+PjQ/NDc6aztlbHNlIGlmKFQ9PTU1KVRvKDU0LCJvYmplY3QiLDEwLGMsbSxoLEQsRyxaKSxUPTQ3O2Vsc2UgaWYoVD09ODEpe2E6e3N3aXRjaChHKXtjYXNlIDE6Tj1aPyJkaXNhYmxlIjoiZW5hYmxlIjticmVhayBhO2Nhc2UgaDpOPVo/ImhpZ2hsaWdodCI6InVuaGlnaGxpZ2h0IjticmVhayBhO2Nhc2UgUjpOPVo/ImFjdGl2YXRlIjoiZGVhY3RpdmF0ZSI7YnJlYWsgYTtjYXNlIGM6Tj1aPyJzZWxlY3QiOiJ1bnNlbGVjdCI7YnJlYWsgYTtjYXNlIDE2Ok49Wj8iY2hlY2siOiJ1bmNoZWNrIjticmVhayBhO2Nhc2UgMzI6Tj1aPyJmb2N1cyI6ImJsdXIiO2JyZWFrIGE7Y2FzZSBEOk49Wj8ib3BlbiI6ImNsb3NlIjticmVhayBhfXRocm93IEVycm9yKCJJbnZhbGlkIGNvbXBvbmVudCBzdGF0ZSIpO31UPTczfWVsc2UgaWYoVD09NTQpVD03NDtlbHNlIGlmKFQ9PTQ3KVQ9KChuXjEyKSY4KTw0JiYobnwyKT49LTMxPzgxOjczO2Vsc2V7aWYoVD09NzMpcmV0dXJuIE47VD09MD8oRz1CdSg2LEcpLEQmJkRbZEpdP0QuSS5hZGQoU3RyaW5nKFopLEcsUixOUCg0LCJvYmplY3QiLDIwLGgpPyEhaC5jYXB0dXJlOiEhaCxtKTpJQig2Niwib2JqZWN0IixmYWxzZSxHLFIsWixELGgsbSksVD00Nyk6VD09ND9UPTkzOlQ9PTc0P1Q9QjxaLmxlbmd0aD83Nzo0NzpUPT02OT8oQj0wLFQ9NTQpOlQ9PWs/VD1oJiZoLm9uY2U/NTU6NDg6VD09OTg/KEIrKyxUPTc0KTpUPT00OD9UPUFycmF5LmlzQXJyYXkoWik/Njk6MDpUPT03NyYmKHZ1KDU2LGZhbHNlLEcsaCxELHRydWUsWltCXSw1LG0pLFQ9OTgpfX0sRTU9ZnVuY3Rpb24oayxSKXtmdW5jdGlvbiBHKCl7dGhpcy5oPXRoaXMuaHg9dGhpcy5uPTB9cmV0dXJuW2Z1bmN0aW9uKGgpeyhrLmdiKGgpLFIpLmdiKGgpfSwoUj0oaz1uZXcgKEcucHJvdG90eXBlLnJKPShHLnByb3RvdHlwZS5nYj1mdW5jdGlvbihoLEQpe3JldHVybiBvQi5jYWxsKHRoaXMsMTMsNjUsaCxEKX0sZnVuY3Rpb24oKXtyZXR1cm4gem8uY2FsbCh0aGlzLDIxLDc5LDMpfSksRyksbmV3IEcpLGZ1bmN0aW9uKGgsRCl7cmV0dXJuIEQ9W2suckooKSxSLnJKKCksay5oLFIuaF0sKGg9PT12b2lkIDB8fGgpJiYoUj1uZXcgRyksRH0pXX0sSlc9ZnVuY3Rpb24oayxSLEcsaCxELGMsWixuLG0sQixUKXt7VD05O3doaWxlKFQhPTgwKWlmKFQ9PTkpVD00ODtlbHNle2lmKFQ9PTI1KXJldHVybiBCO1Q9PTQ4P1Q9KChoXjEzKSY0KTwzJiYoaHw5KT4+Mz49Mj81NjoxNzpUPT04NT8oRyhmdW5jdGlvbihOKXtOKEQpfSksQj1bZnVuY3Rpb24oKXtyZXR1cm4gRH0sZnVuY3Rpb24oKXt9XSxUPTI1KTpUPT01Nj8obi5jbGFzc0xpc3Q/bi5jbGFzc0xpc3QucmVtb3ZlKG0pOihuLmNsYXNzTGlzdD9uLmNsYXNzTGlzdC5jb250YWlucyhtKTplKDQ2LFosbSxCdShrLEcsbikpKSYmZShSLGMsQXJyYXkucHJvdG90eXBlLmZpbHRlci5jYWxsKEJ1KDMzLEcsbiksZnVuY3Rpb24oTil7cmV0dXJuIE4hPW19KS5qb2luKEQpLG4pLFQ9MTcpOlQ9PTE3JiYoVD1oPj4yPDE2JiYoaCsxJjIpPj0xPzg1OjI1KX19fSxGMT1mdW5jdGlvbihrLFIsRyxoLEQsYyxaLG4sbSxCLFQsTil7e049MjY7d2hpbGUoTiE9MTcpaWYoTj09NDIpYz10cnVlLE49NDY7ZWxzZSBpZihOPT04MylUPWZ1bmN0aW9uKFApe3JldHVybiBoLmNhbGwoVC5zcmMsVC5saXN0ZW5lcixQKX0saD10byxCPVQsTj0yMTtlbHNlIGlmKE49PTYwKW09bmV3IHJVKEQsdGhpcyksWj1oLlZufHxoLnNyYyxuPWgubGlzdGVuZXIsaC5hbyYmY1koMzMsbnVsbCwzLFIsaCksYz1uLmNhbGwoWixtKSxOPTQ2O2Vsc2UgaWYoTj09MjYpTj1rO2Vsc2V7aWYoTj09NTcpcmV0dXJuIEI7Tj09MjE/Tj0oR14yNCk8NyYmRy03Pj01PzMwOjU3Ok49PWs/Tj0oRz4+MSY3KT09MT84MzoyMTpOPT0zMD9OPWguZlg/NDI6NjA6Tj09NDYmJihCPWMsTj01Nyl9fX0sYXY9ZnVuY3Rpb24oayxSLEcsaCxELGMsWixuLG0sQixULE4sUCl7d2hpbGUoIVIueW4mJihCPXZvaWQgMCxoJiZoWzBdPT09d1UmJihCPWhbMl0sRz1oWzFdLGg9dm9pZCAwKSxuPVYoayxSKSxuLmxlbmd0aD09MCYmKEQ9VigxNjgsUik+PjMsbi5wdXNoKEcsRD4+OCYyNTUsRCYyNTUpLEIhPXZvaWQgMCYmbi5wdXNoKEImMjU1KSksUD0iIixoJiYoaC5tZXNzYWdlJiYoUCs9aC5tZXNzYWdlKSxoLnN0YWNrJiYoUCs9IjoiK2guc3RhY2spKSxtPVcoUiwzMDIpLG1bMF0+MykpeyhUPShQPShtWzBdLT0oUD1QLnNsaWNlKDAsKG1bMF18MCktMyksWj1QLmxlbmd0aCwoWnwzKS1+Wisoflp8MykpLGVlKShQLDEyOCksUikuQixSKS5CPVI7dHJ5e1IuSHQ/KE49KE49Vig0NDYsUikpJiZOW04ubGVuZ3RoLTFdfHw5NSwoYz1XKFIsMTYzKSkmJmNbYy5sZW5ndGgtMV09PU58fGxOKDE2MyxbTiYyNTVdLDcsUikpOmplKDQ0NixbOTVdLFIpLGxOKDQyLEsoMixQLmxlbmd0aCkuY29uY2F0KFApLDcsUiwxNDQpfWZpbmFsbHl7Ui5CPVR9aWYoe30pYnJlYWt9fSxHTj1mdW5jdGlvbihrLFIsRyxoLEQsYyxaLG4sbSxCLFQsTixQLGQsSSxTKXtpZihoPVYoMTQyLFIpLGg+PVIuail0aHJvd1t3VSwzMV07Zm9yKGM9KEk9KG09KE49MCxoKSxSLkNqKS5sZW5ndGgsayk7Yz4wOylaPW0+PjMsUz1tJTgsUD1SLndiW1pdLG49OC0oU3wwKSxCPW48Yz9uOmMsRyYmKGQ9UixkLmwhPW0+PjYmJihkLmw9bT4+NixEPWIoZCwzNjMpLGQud0o9eWgoMTYsZC5sLDI1NSxkLk4sWzAsMCxEWzFdLERbMl1dKSksUF49Ui53SltaJkldKSxOfD0oUD4+OC0oU3wwKS0oQnwwKSYoMTw8QiktMSk8PChjfDApLShCfDApLG0rPUIsYy09QjtyZXR1cm4gQygxNDIsKGh8MCkrKGt8KFQ9TiwwKSksUiksVH0sWT1mdW5jdGlvbihrLFIsRyxoLEQsYyxaLG4sbSxCLFQsTil7KFIrNyY0NCk+PVImJlIrND4+MjxSJiYoaD1bLTc1LC0zMSw3MSwtMzUsNDYsLTEwMCxoLDk0LDUwLC03OF0sWj1jJjcsbT1TZSxCPXlmW0cuUl0oRy5KcyksQltHLlJdPWZ1bmN0aW9uKFApe249UDt3aGlsZShudWxsPT1mYWxzZT09MClpZighKForPTYrNypjLFtdKT09dHJ1ZT09IVtdKWJyZWFrO1o9MTYrfihafDcpK2sqKFomLTgpKyh+Wl43KX0sQi5jb25jYXQ9ZnVuY3Rpb24oUCxkLEkpe3JldHVybihkPShuPShQPShJPUQlMTYrMSwrKG0oKXwwKSpJLTc4KkQqRCpuKzM5Km4qbi0yMjYyKm4rWi0gLTEyMDkqRCpuK2hbWisxOSY3XSpEKkkpLUkqbitrKkQqRCpJLHZvaWQgMCksaFtQXSksaClbKForNjEmNykrKC0yLWsqfihjfGspK2sqKH5jXmspKyh+YyZrKSldPWQsaFtaKygtfihjJmspKyhjXmspLSh+YyZrKSsofmN8aykpXT0tMzEsZH0sTj1CKTtzd2l0Y2goISgoUl4xMyk8MjQmJihSXjkwKT49MTgpKXtjYXNlIHRydWU6TnVtYmVyKHRydWUudHJ1ZSk7YnJlYWs7Y2FzZSB0cnVlPT1bXTpzd2l0Y2goIShEPVhYKCJhcnJheSIsaCwibnVsbCIpPT09ImFycmF5Ij9oOltoXSx0aGlzLkspKXtjYXNlIHRydWU6dHJ5e2M9IXRoaXMuUC5sZW5ndGgmJiF0aGlzLm8sYSg1NyxbJGYsW10sRCxrLEddLHRoaXMpLEcmJiFjfHxSQigyNyxmYWxzZSx0aGlzLHRydWUsRyl9Y2F0Y2goUCl7ZSg1NiwiOiIsdGhpcyxQKSxrKHRoaXMuSyl9YnJlYWs7Y2FzZSB0cnVlPT1bXT09bnVsbDprKHRoaXMuSyk7YnJlYWt9YnJlYWt9KFIrM14xMik+PVImJihSKzJeMjcpPFImJihOPVQ9ZnVuY3Rpb24oKXt7dmFyIFA9NzE7d2hpbGUoUCE9OSlpZihQPT0xNil2YXIgZD1bTVQsKFA9OTcsYyksaCx2b2lkIDAsbixtLGFyZ3VtZW50c107ZWxzZSBpZihQPT01OSlQPVouWT8xNjo4ODtlbHNlIGlmKFA9PTk3KVA9RD09Rz83OTozNTtlbHNlIGlmKFA9PTM1KVA9RD09MT81NjoyNztlbHNlIGlmKFA9PTI3KXt2YXIgST1rbihkLDIsdHJ1ZSxaKTtQPTk5fWVsc2UgaWYoUD09NTYpe3ZhciBTPSFaLlAubGVuZ3RoJiYhWi5vO2EoNDMsZCxaKSxTJiZSQigyOCxmYWxzZSxaLGssayksUD05OX1lbHNlIGlmKFA9PTg4KW4mJm0mJm4ucmVtb3ZlRXZlbnRMaXN0ZW5lcihtLFQsb3YpLFA9OTtlbHNle2lmKFA9PTk5KXJldHVybiBJO1A9PTcxP1A9Wi5CPT1aPzU5Ojk6UD09NzkmJihhKDQyLGQsWiksST1SQigyOSxmYWxzZSxaLGssayksUD05OSl9fX0pO3N3aXRjaCghKChSfDcyKT09Uikpe2Nhc2UgdHJ1ZTowO2JyZWFrO2Nhc2UgW109PShbXSE9KCFbXT09MCkpOmE6e2lmKGsuVil7Tj1rZihrLGsuRyk7YnJlYWsgYX0oRz1HTig4LGssdHJ1ZSksRyYxMjgpJiYoR149MTI4LGg9R04oMixrLHRydWUpLEc9KEQ9Rzw8MiwoRCZoKS0xLX4oRHxoKSkpLE49R31icmVha313aGlsZShSPj4yPj05JiYoKFJeMTkpJjI0KTwxOSl7RD1xKDE3LEcpO3tjPTA7d2hpbGUoaD4wKWM9Yzw8a3xSdihHKSxoLS19aWYoIVtdPT0oMCE9IShDKEQsYyxHKSxbXSkpKWJyZWFrfXJldHVybiBOfSxzNT1mdW5jdGlvbihrKXtyZXR1cm4gSUIuY2FsbCh0aGlzLDksayl9LENyPWZ1bmN0aW9uKGssUil7e3ZhciBHPTkzO3doaWxlKEchPTUxKWlmKEc9PTkzKXZhciBoPShHPTUwLDEpO2Vsc2UgaWYoRz09NjQpRz1oPGFyZ3VtZW50cy5sZW5ndGg/NzU6NTE7ZWxzZSBpZihHPT03NSl7dmFyIEQ9YXJndW1lbnRzW2hdO2ZvcihaIGluIEQpa1taXT1EW1pdO3ZhciBjPShHPTk2LDApfWVsc2UgaWYoRz09OTYpRz04NDtlbHNlIGlmKEc9PTUwKUc9NjQ7ZWxzZSBpZihHPT03MiljKyssRz04NDtlbHNlIGlmKEc9PTg0KUc9YzxIWS5sZW5ndGg/ODA6MjtlbHNlIGlmKEc9PTIpaCsrLEc9NjQ7ZWxzZSBpZihHPT04MCl7dmFyIFo9SFlbY107T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKEQsWikmJihrW1pdPURbWl0pLEc9NzJ9fX0sTlQ9ZnVuY3Rpb24oayxSLEcsaCxELGMsWixuLG0sQixULE4sUCxkLEkpe2ZvcihkPTI0O2QhPTE5OylpZihkPT05NilBcnJheS5wcm90b3R5cGUuZm9yRWFjaC5jYWxsKEcsZnVuY3Rpb24oUyxYLE0pe2ZvcihNPTI0O00hPTI2OylNPT0yND9NPWsuY2xhc3NMaXN0PzYwOjQ5Ok09PTQ5P009KGsuY2xhc3NMaXN0P2suY2xhc3NMaXN0LmNvbnRhaW5zKFMpOmUoNDUsMCxTLEJ1KDMyLCJjbGFzcyIsaykpKT8yNjo1NTpNPT01NT8oWD1BVyg0MSwiY2xhc3MiLDI4LCIiLGspLGUoNiwic3RyaW5nIixYKyhYLmxlbmd0aD4wPyIgIitTOlMpLGspLE09MjYpOk09PTYwJiYoay5jbGFzc0xpc3QuYWRkKFMpLE09MjYpfSksZD0yNztlbHNlIGlmKGQ9PTkwKWQ9KFI8PDEmOSk+PTEmJihSPj4yJjEyKTw2Pzg2OjI3O2Vsc2UgaWYoZD09MjQpZD02MTtlbHNlIGlmKGQ9PTg2KWQ9ay5jbGFzc0xpc3Q/OTY6NztlbHNlIGlmKGQ9PTI3KWQ9KFJeMzQpPDI2JiYoUisxJjE1KT49OT81ODo5NztlbHNlIGlmKGQ9PTEwKWQ9YzxoLmxlbmd0aD8zMzo3NDtlbHNlIGlmKGQ9PTEzKWMrKyxkPTEwO2Vsc2V7aWYoZD09OTcpcmV0dXJuIEk7aWYoZD09Nyl7Zm9yKGMgaW4gaD0oKEFycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoKEQ9e30sQnUpKDM2LCJjbGFzcyIsayksZnVuY3Rpb24oUyl7RFtTXT10cnVlfSksQXJyYXkucHJvdG90eXBlKS5mb3JFYWNoLmNhbGwoRyxmdW5jdGlvbihTKXtEW1NdPXRydWV9KSwiIiksRCloKz1oLmxlbmd0aD4wPyIgIitjOmM7ZD0oZSg1LCJzdHJpbmciLGgsayksMjcpfWVsc2UgaWYoZD09ODkpZD1EPms/Njo1NztlbHNlIGlmKGQ9PTYpWltuKytdPUQmayxEPj49OCxkPTU3O2Vsc2UgaWYoZD09MzMpRD1oLmNoYXJDb2RlQXQoYyksZD04OTtlbHNlIGlmKGQ9PTc0KUk9WixkPTk3O2Vsc2UgaWYoZD09OTQpZD0xMDtlbHNlIGlmKGQ9PTU3KVpbbisrXT1ELGQ9MTM7ZWxzZSBpZihkPT01OCluPWM9RyxaPVtdLGQ9OTQ7ZWxzZSBpZihkPT04KXthOntpZihELkI9KChELkgrPShaPShuPShjfHxELm9vKyssRC5xbz4wJiZELm8mJkQuRTkpJiZELkQ3PD0xJiYhRC5WJiYhRC5TJiYoIWN8fEQuZEotRz4xKSYmZG9jdW1lbnQuaGlkZGVuPT1rLChCPUQub289PTQpfHxuP0QuSigpOkQuY3QpLG09Wi1ELmN0LG0pPj4xND4wLEQpLk4mJihELk49KFQ9RC5OLE49KEQuSCsxPj4yKSoobTw8MiksLSh+VF5OKSsoflQmTikrKFR8fk4pKSksRC5IKzE+PjIhPTB8fEQuQiksQnx8bilELm9vPTAsRC5jdD1aO2lmKCFuKXtJPWs7YnJlYWsgYX1pZigoRC5xbz5ELkUyJiYoRC5FMj1ELnFvKSxaLUQua04pPEQucW8tKGg/MjU1OmM/NToyKSl7ST1rO2JyZWFrIGF9ST0oQygxNDIsKFA9VihjPzE2ODoxNDIsKEQuZEo9RyxEKSksRC5qKSxEKSxELlAucHVzaChbbWMsUCxjP0crMTpHLEQudSxELlddKSx0cnVlKSxELlM9dTl9ZD02NH1lbHNlIGQ9PTE3PyhJPWsmJmsucGFyZW50Tm9kZT9rLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoayk6bnVsbCxkPTkwKTpkPT02ND9kPShSKzReMTApPj1SJiYoUis0XjI1KTxSPzE3OjkwOmQ9PTYxJiYoZD1SPj4xJjE1PzY0OjgpfX0sTG49ZnVuY3Rpb24oayxSLEcsaCxELGMsWixuLG0pe2ZvcihuPTgwO24hPTk1Oyl7aWYobj09MTUpcmV0dXJuIG07bj09Nzg/bj0oaC1rJjcpPT0xPzU1OjgxOm49PTU1Pyh0aGlzLmxpc3RlbmVyPVosdGhpcy5wcm94eT1udWxsLHRoaXMuc3JjPWMsdGhpcy50eXBlPUcsdGhpcy5jYXB0dXJlPSEhRCx0aGlzLlZuPVIsdGhpcy5rZXk9KytJdix0aGlzLmFvPXRoaXMuZlg9ZmFsc2Usbj04MSk6bj09NTY/KG09RyBpbiBUTj9UTltHXTpUTltHXT1SK0csbj0xNSk6bj09Mzg/bj0oaHw0OCk9PWg/NTY6MTU6bj09MTM/KEcucFgoZnVuY3Rpb24oQil7Yz1CfSxSLEQpLG09YyxuPTM4KTpuPT04MT9uPWgtNyY1PzM4OjEzOm49PTgwJiYobj03OCl9fSxCdT1mdW5jdGlvbihrLFIsRyxoLEQsYyxaLG4sbSxCLFQsTixQLGQpe2ZvcihQPTI1O1AhPTU2OylpZihQPT00MCltPXRXKDY4LG4pLFA9NDc7ZWxzZSBpZihQPT0zMyluLkkucmVtb3ZlKFN0cmluZyhaKSxELEIsYyksUD05MztlbHNlIGlmKFA9PTQ3KVA9bT82Njo5MztlbHNlIGlmKFA9PTQ0KU49UixQPTE4O2Vsc2UgaWYoUD09NzMpUD0oa3wzMik9PWs/NTk6NDg7ZWxzZXtpZihQPT00OClyZXR1cm4gZDtpZihQPT01MilQPUFycmF5LmlzQXJyYXkoWik/NDQ6MzE7ZWxzZSBpZihQPT01OSlkPUcuY2xhc3NMaXN0P0cuY2xhc3NMaXN0OkFXKDQxLFIsMjYsIiIsRykubWF0Y2goL1xcUysvZyl8fFtdLFA9NDg7ZWxzZSBpZihQPT03MClQPWsrNj4+ND83Mzo5NDtlbHNlIGlmKFA9PTk0KXthOntpZih0eXBlb2YgUj09PSJmdW5jdGlvbiIpe2Q9UjticmVhayBhfWQ9KFJbZFVdfHwoUltkVV09ZnVuY3Rpb24oSSl7cmV0dXJuIFIuaGFuZGxlRXZlbnQoSSl9KSxSW2RVXSl9UD03M31lbHNlIGlmKFA9PTE4KVA9MzA7ZWxzZSBpZihQPT05MylQPShrLTdeMjMpPj1rJiYoays3JjI1KTxrPzc3OjcwO2Vsc2UgaWYoUD09MzcpUD0oa3w5KT4+Mz09Mz81Mjo5MztlbHNlIGlmKFA9PTI1KVA9Mzc7ZWxzZSBpZihQPT01MylQPW4mJm5bZEpdPzMzOjg5O2Vsc2UgaWYoUD09ODkpUD1uPzQwOjkzO2Vsc2UgaWYoUD09ODIpTisrLFA9MzA7ZWxzZSBpZihQPT0zMSlCPU5QKDQsRywxNyxoKT8hIWguY2FwdHVyZTohIWgsRD1CdSg1LEQpLFA9NTM7ZWxzZSBpZihQPT0yMSlCdSgxNywwLCJvYmplY3QiLGgsRCxjLFpbTl0sbiksUD04MjtlbHNlIGlmKFA9PTc3KXtmb3IoWiBpbihEPVIsaCkuWil7Zm9yKGM9KG49aC5aW1pdLFIpO2M8bi5sZW5ndGg7YysrKSsrRCxoVyg4LEcsbltjXSk7ZGVsZXRlIGguWltoLkp4LS0sWl19UD03MH1lbHNlIFA9PTY2PygoVD1tLkNYKFosRCxjLEIpKSYmY1koMzMsbnVsbCw1LCJvbiIsVCksUD05Myk6UD09MzAmJihQPU48Wi5sZW5ndGg/MjE6OTMpfX0sTlA9ZnVuY3Rpb24oayxSLEcsaCxELGMsWil7Zm9yKFo9OTY7WiE9NzM7KWlmKFo9PTU4KVo9KEd8MTYpPT1HPzQ3OjcwO2Vsc2V7aWYoWj09NzApcmV0dXJuIGM7Wj09NjY/Wj0oRysyXjIwKT49RyYmKEcrayY1Nyk8Rz82OTo1ODpaPT00Nz8oRD10eXBlb2YgaCxjPUQ9PVImJmghPW51bGx8fEQ9PSJmdW5jdGlvbiIsWj03MCk6Wj09Njk/KHRoaXMuS2o9UixaPTU4KTpaPT05NiYmKFo9NjYpfX0sY1k9ZnVuY3Rpb24oayxSLEcsaCxELGMsWixuLG0sQixUKXtmb3IoQj05NTtCIT0wOylpZihCPT04KXRoaXMubisrLEI9ODE7ZWxzZSBpZihCPT05NylCPW0/ODA6Mzc7ZWxzZSBpZihCPT05NClCPXR5cGVvZiBEIT09Im51bWJlciImJkQmJiFELmZYPzE1OjMyO2Vsc2UgaWYoQj09MTUpYz1ELnNyYyxCPTEzO2Vsc2UgaWYoQj09ODApckooaywwLEQsbSksQj0yNjtlbHNlIGlmKEI9PTI2KUI9bS5KeD09MD82MzozMjtlbHNlIGlmKEI9PTY1KXRoaXMuVC5wdXNoKFIpLEI9MTg7ZWxzZSBpZihCPT0zNyloVyg3LHRydWUsRCksQj0zMjtlbHNlIGlmKEI9PTEzKUI9YyYmY1tkSl0/OTE6Mzk7ZWxzZSBpZihCPT02NyloPU1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSp0aGlzLm4pLGg8NTAmJih0aGlzLlRbaF09UiksQj0xODtlbHNlIGlmKEI9PTM5KVo9RC50eXBlLG49RC5wcm94eSxjLnJlbW92ZUV2ZW50TGlzdGVuZXI/Yy5yZW1vdmVFdmVudExpc3RlbmVyKFosbixELmNhcHR1cmUpOmMuZGV0YWNoRXZlbnQ/Yy5kZXRhY2hFdmVudChMbigzLGgsWiw1MCksbik6Yy5hZGRMaXN0ZW5lciYmYy5yZW1vdmVMaXN0ZW5lciYmYy5yZW1vdmVMaXN0ZW5lcihuKSxpOS0tLG09dFcoMjEsYyksQj05NztlbHNlIGlmKEI9PTE5KUI9Ry04PDwyPj1HJiZHKzI+PjE8Rz84OjE4O2Vsc2UgaWYoQj09OTEpckooMzIsMCxELGMuSSksQj0zMjtlbHNlIGlmKEI9PTk1KUI9MTk7ZWxzZSBpZihCPT04MSlCPXRoaXMuVC5sZW5ndGg8NTA/NjU6Njc7ZWxzZSBpZihCPT02MyltLnNyYz1SLGNbbDldPVIsQj0zMjtlbHNle2lmKEI9PTMyKXJldHVybiBUO0I9PTE4JiYoQj0oR3wxKT4+Mz8zMjo5NCl9fSxLPWZ1bmN0aW9uKGssUixHLGgsRCl7Zm9yKGg9LX4oayYxKSsoRD1bXSwtMikrKGsmLTIpO2g+PTA7aC0tKURbfihrJjEpLTMqfmsrMip+KGt8MSkrKH5rJjEpLShofDApXT0oRz1SPj5oKjgsLTIqfihHJjI1NSktMSt+RysoRyYtMjU2KSk7aWYoe30pcmV0dXJuIER9LGZyPWZ1bmN0aW9uKCl7cmV0dXJuIFBZLmNhbGwodGhpcywxNCl9LFE9ZnVuY3Rpb24oayxSLEcpe3N3aXRjaCghKFI9PTE0Mnx8Uj09MTY4KSl7Y2FzZSB0cnVlOmlmKGsueW4mJlIhPTM2MylyZXR1cm47Uj09NDg4fHxSPT00Mnx8Uj09MjY0fHxSPT0xNHx8Uj09NTA2fHxSPT00NDZ8fFI9PTE2M3x8Uj09OTV8fFI9PTE5MXx8Uj09MzAyP2suWVtSXXx8KGsuWVtSXT1ZKDIsMzQsayxHLFIsMzgpKTprLllbUl09WSgyLDMzLGssRyxSLDEyOSk7YnJlYWs7Y2FzZSAhW106ay5ZW1JdP2suWVtSXS5jb25jYXQoRyk6ay5ZW1JdPXEoMjEsRyxrKTticmVha31SPT0zNjMmJihrLk49R04oMzIsayxmYWxzZSksay5sPXZvaWQgMCl9LER5PXR5cGVvZiBPYmplY3QuY3JlYXRlPT0iZnVuY3Rpb24iP09iamVjdC5jcmVhdGU6ZnVuY3Rpb24oayl7ZnVuY3Rpb24gUigpe31yZXR1cm4gUi5wcm90b3R5cGU9ayxuZXcgUn0sREQ9ZnVuY3Rpb24oayl7cmV0dXJuIFRvLmNhbGwodGhpcyw1NCxrLDI1KX0samU9ZnVuY3Rpb24oayxSLEcsaCxELGMsWixuLG0pe3N3aXRjaCghKEcuQj09Rykpe2Nhc2UgdHJ1ZTowO2JyZWFrO2Nhc2UgISFudWxsOnttPWIoRyxrKSxrPT00Mnx8az09MTkxfHxrPT0xND8oRD1mdW5jdGlvbihCLFQsTixQLGQsSSxTLFgpe2ZvcihJPShYPTE4LDg5KTs7KXRyeXtpZihYPT0zMylicmVhaztlbHNlIGlmKFg9PTU3KW0ucHVzaChtLkdmWy0oVHw3KS0yKn4oVHw3KSsoVHwtOCkrKH5UfDcpXV5CKSxYPTMzO2Vsc2V7aWYoWD09MzkpdGhyb3cgST04OSxTO1g9PTUwP1g9bS5tQiE9Tj81NDo1NzpYPT02OD8oST0zNixtLkdmPXloKDE2LHEoNTAsOCwtMS0yKn4oUHw0KSsoflBeNCksbSksMjU1LHEoMTgsOCxQLG0pLGQpLFg9NTcpOlg9PTU0PyhQPShOPDwzKS00LGQ9WzAsMCxjWzFdLGNbMl1dLG0ubUI9TixYPTY4KTpYPT0xOCYmKFQ9bS5sZW5ndGgsTj0oVHwwKS00Pj4zLFg9NTApfX1jYXRjaChNKXtpZihJPT04OSl0aHJvdyBNO0k9PTM2JiYoUz1NLFg9MzkpfX0sYz1WKDk1LEcpKTpEPWZ1bmN0aW9uKEIpe20ucHVzaChCKX0saCYmRCgoaHwwKS0gLTUxMisyKn4oaHwyNTUpKyhoJi0yNTYpKSxuPVIubGVuZ3RoLFo9MDt3aGlsZShaPG4pRChSW1pdKSxaKyt9YnJlYWt9fSxQZD1mdW5jdGlvbihrKXtyZXR1cm4gTlQuY2FsbCh0aGlzLGssMTYpfSxoMD1mdW5jdGlvbihrLFIsRyxoLEQsYyl7cmV0dXJuIE9SLmNhbGwodGhpcywxMiw2LGssUixHLGgsRCxjKX0sYjk9ZnVuY3Rpb24oayxSLEcsaCxELGMsWixuKXtyZXR1cm4gQlkuY2FsbCh0aGlzLGssOCxSLEcsaCxELGMsWixuKX0sak09ZnVuY3Rpb24oayl7cmV0dXJuIEtuLmNhbGwodGhpcywwLDEsOCxrKX0sUnY9ZnVuY3Rpb24oayl7cmV0dXJuIGsuVj9rZihrLGsuRyk6R04oOCxrLHRydWUpfSx5aD1mdW5jdGlvbihrLFIsRyxoLEQsYyxaLG4pe1o9KGM9MCxEWzNdfDApO3tuPURbMl18MDt3aGlsZShjPGspUj1SPj4+OHxSPDwyNCxSKz1ofDAsWj1aPj4+OHxaPDwyNCxoPWg8PDN8aD4+PjI5LForPW58MCxSXj1uKzY1OSxuPW48PDN8bj4+PjI5LGhePVIsWl49Yys2NTksbl49WixjKyt9cmV0dXJuW2g+Pj4yNCZHLGg+Pj5rJkcsaD4+PjgmRyxoPj4+MCZHLFI+Pj4yNCZHLFI+Pj5rJkcsUj4+PjgmRyxSPj4+MCZHXX0sY2Q9ZnVuY3Rpb24oayxSLEcsaCxELGMsWixuLG0sQixULE4pe0I9KGMuSnM9dFcoNzcsKGMuQ2o9Y1tBb10sYy5nSj14ZixjLllEPUpvLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5jb25jYXQoKX19KSxjLlIpLGMudlY9eWZbYy5SXShjLkpzLHt2YWx1ZTp7dmFsdWU6e319fSksMCk7e049W107d2hpbGUoQjwzODMpTltCXT1TdHJpbmcuZnJvbUNoYXJDb2RlKEIpLEIrK31pZihjLlJhPShjLmN0PShjLkI9KGMuRno9W10sYy5WVD1mdW5jdGlvbihQKXtyZXR1cm4gb0IuY2FsbCh0aGlzLDEzLDEyLFApfSwoYy5FMj0oYy5QPVtdLDApLGMuWT1bXSxjLlc9ZmFsc2UsYy53Yj1bXSxjKS5OPShjLks9KGMuRz12b2lkIDAsYy5Eaz1bXSx2b2lkIDApLFQ9d2luZG93LnBlcmZvcm1hbmNlfHx7fSx2b2lkIDApLGMpLDApLFQudGltZU9yaWdpbil8fChULnRpbWluZ3x8e30pLm5hdmlnYXRpb25TdGFydHx8MCx0cnVlKWMud0o9dm9pZCAwO2MudT0oYy55VD0oKGMuVGU9RyxjLmRKPTMwMDAxLGMpLkQ3PTAsKGMuWD0wLGMpLnZ0PShjLm89ZmFsc2UsYy5CVj0oYy5PXz1ELG0pLFtdKSwwKSxmYWxzZSk7d2hpbGUoLTA9PT0wKWlmKChjLnM5PTI1LFtdKSE9dHJ1ZSlicmVhaztpZihjLnluPSEoYy5TbT0oKGMuVTk9W10sYy5sPXZvaWQgMCxjLlM9bnVsbCxjLnVYPShjLkJ3PTAsYy5xbz0wLGMuaj0wLFtdKSxjLlY9dm9pZCAwLGMuSHQ9IShjLkU5PWZhbHNlLGMub289dm9pZCAwLDEpLGMpLmtOPShjLlRmPTAsYy5IPTEsYy5XdD12b2lkIDAsMCksW10pLDEpLFomJloubGVuZ3RoPT0yJiYoYy5Eaz1aWzFdLGMuVTk9WlswXSksUil0cnl7Yy5XdD1KU09OLnBhcnNlKFIpfWNhdGNoKFApe2MuV3Q9e319ZigoZigyNixmdW5jdGlvbihQLGQsSSxTLFgpe3tYPTA7d2hpbGUoWCE9NjYpWD09ODg/KEk9cSgyNSxQKSxTPVkoUCw3MyksUShQLFMsZnVuY3Rpb24oTSl7cmV0dXJuIGV2YWwoTSl9KHpOKFYoSSxQLkIpKSkpLFg9NjYpOlg9PTAmJihYPU5UKGZhbHNlLDMyLGQsZmFsc2UsUCx0cnVlKT82Njo4OCl9fSwoKGYoKGYoMTYsZnVuY3Rpb24oUCl7a2ooMyxQKX0sKEMoMTQsKGYoKEEoMjY0LChmKDIzLChmKDIwLCgoZigxNywoZigyNywoZigxOCwoKGYoMjEsZnVuY3Rpb24oKXt9LDMyMywoZigyMCwoZigyMyxmdW5jdGlvbihQLGQsSSxTKXtBKChJPShTPShkPXEoNzEsUCksUnYpKFApLFkoUCw3NykpLEkpLFAsVyhQLGQpPj4+Uyl9LChDKDQyLChBKDE1NixjLChRKGMsKFEoYyw0ODgsKEEoMTkxLGMsKEMoOTUsKEMoNTUsKGYoMjUsKEMoNTA2LFtdLCgoQSgoZigxMyxmdW5jdGlvbihQLGQsSSxTLFgpe2ZvcihYPTU1O1ghPTQyOylYPT0zNz8oZC0tLFg9OTIpOlg9PTkyP1g9ZD4wPzkzOjk3Olg9PTU1PyhJPVAuRnoucG9wKCksWD0yOSk6WD09ODc/KFEoUCwxNDIsUC5qKSxYPTQyKTpYPT03MD9YPTkyOlg9PTk3PyhJWzUwNl09UC5ZWzUwNl0sSVszMDJdPVAuWVszMDJdLFAuWT1JLFg9NDIpOlg9PTI5P1g9ST82Nzo4NzpYPT05Mz8oUz1xKDI1LFApLElbU109UC5ZW1NdLFg9MzcpOlg9PTY3JiYoZD1SdihQKSxYPTcwKX0sKGMud049KChmKDE3LGZ1bmN0aW9uKFAsZCxJLFMsWCxNKXtmb3IoTT03MTtNIT00MDspTT09NzE/TT1OVChmYWxzZSw2NCxkLGZhbHNlLFAsdHJ1ZSk/NDA6OTc6TT09NDg/TT1QLkI9PVB8fEk9PVAuVlQmJlM9PVA/MTk6NDA6TT09OTc/KFg9cVQoNzEsNzQsUCwwLDEpLFM9WC5rZSxJPVguUFYsTT00OCk6TT09MTkmJihBKFgucW0sUCxJLmFwcGx5KFMsWC5MKSksUC5jdD1QLkooKSxNPTQwKX0sKGYoKGYoKChBKDE1NyxjLChmKChmKDI1LChDKDE2OCwoQSgxNDIsYywoZigoZigxOCwoZigyMixmdW5jdGlvbihQLGQsSSxTLFgsTSxyLGwsdyl7Zm9yKHc9MjQ7dyE9ODY7KXc9PTQ/KFEoUCxyLEkpLHc9ODYpOnc9PTQ0PyhkPShNPXEoMTIsNyxQKSwtMip+KGR8TSkrKGR8fk0pKyh+ZHxNKSklbCxJLnB1c2goU1tkXSksdz0yOSk6dz09MjQ/KHI9WShQLDc3KSxYPXEoMTEsNyxQKSxJPVtdLFM9VyhQLDM5MyksZD0wLGw9Uy5sZW5ndGgsdz03MCk6dz09MjM/dz1YLS0/NDQ6NDp3PT0yOT93PTIzOnc9PTcwJiYodz0yMyl9LDMxMSxjKSxmdW5jdGlvbihQLGQsSSxTLFgsTSxyLGwsdyl7Zm9yKHc9NjY7dyE9MzU7KXc9PTYwP3c9bDxkLmxlbmd0aD83MjoyODp3PT03Mj8oWCs9U3RyaW5nLmZyb21DaGFyQ29kZShkW2xdXjEyMSksdz00Myk6dz09NDM/KGwrKyx3PTYwKTp3PT04ND93PTYwOnc9PTY2PyhJPXEoODksUCkscj1xKDcyLFApLE09WShQLDc3KSxkPVcoUCxyKSxTPWIoUCxJKSxsPTAsWD0iIix3PTg0KTp3PT0yOCYmKEMoTSxTW1hdLFApLHc9MzUpfSksMTM2LGMpLDI3KSxmdW5jdGlvbihQLGQsSSxTLFgsTSxyLGwsdyxFKXt7RT04NDt3aGlsZShFIT0xNClFPT0yND8oTSs9U3RyaW5nLmZyb21DaGFyQ29kZSgoUz1kW3ddLDMqfihTJjEyMSktMip+Uy0gLTI0NCt+KFN8MTIxKSkpLEU9OTMpOkU9PTkzPyh3KyssRT0xOSk6RT09ODQ/KFg9WShQLDc0KSxJPVkoUCw3NCkscj1ZKFAsNzIpLGw9VyhQLEkpLGQ9VyhQLFgpLE09IiIsdz0wLEU9NDIpOkU9PTM0PyhBKHIsUCxNIGluIGx8MCksRT0xNCk6RT09MTk/RT13PGQubGVuZ3RoPzI0OjM0OkU9PTQyJiYoRT0xOSl9fSwyMjEsYyksMCkpLDApLGMpLGZ1bmN0aW9uKFAsZCxJKXtkPVkoKEk9WShQLDc2KSxQKSw3NiksQShkLFAsIiIrVyhQLEkpKX0pLDEwNixjKSwyMiksZnVuY3Rpb24oUCxkLEksUyxYLE0pe3tNPTM4O3doaWxlKE0hPTk3KU09PTE5PyhYKyssTT02OCk6TT09OD8oQShTLFAsZCksTT05Nyk6TT09Njg/TT1YPEk/MjY6ODpNPT04NT9NPTY4Ok09PTM4PyhTPXEoNjcsUCksST1xKDksNyxQKSxYPTAsZD1bXSxNPTg1KTpNPT0yNiYmKGQucHVzaChSdihQKSksTT0xOSl9fSwzMzUsYykse30pKSxjKS54ZT0wLDE2KSxmdW5jdGlvbihQLGQsSSxTLFgsTSxyKXtmb3Iocj05NDtyIT04OTspaWYocj09NjEpcj1YPFAudnQubGVuZ3RoPzc0Ojk4O2Vsc2UgaWYocj09OTQpe2ZvcihJIGluIGRlbGV0ZSAoZD0oUz1SdihQKSxXKShQLDU1KSxkKVtTXSxkKWlmKEkhPT0idCImJk9iamVjdC5oYXNPd24oZCxJKSlyZXR1cm47cj0oWD0wLDQ0KX1lbHNlIHI9PTY5PyhYKysscj02MSk6cj09ODU/KEguY2xlYXJUaW1lb3V0KE0uSWEpLGEoNDYsTS5RVCxQKSxhKDQ1LE0uYWEsUCkscj02OSk6cj09Nzg/cj1NLk1tPzY5Ojg1OnI9PTk4PyhQLnZ0Lmxlbmd0aD0wLHI9ODkpOnI9PTc0PyhNPVAudnRbWF0scj03OCk6cj09NDQmJihyPTYxKX0sMzI5LGMpLDI0KSxmdW5jdGlvbihQLGQsSSl7KGQ9YigoST1ZKFAsNzUpLFAuQiksSSksZFswXSkucmVtb3ZlRXZlbnRMaXN0ZW5lcihkWzFdLGRbMl0sb3YpfSwxMzcsYyksMzEwKSxjKSxuZXcgZ1UoIlN1Ym1pdCIpKS5kaXNwb3NlKCksMCksMzI3KSxjKSw0MSksYywxODMpLGYpKDE2LGZ1bmN0aW9uKFApe3VOKDQsUCl9LDEzNCxjKSxjKSksZnVuY3Rpb24oUCxkLEksUyxYLE0scixsLHcsRSxGLCRuLEdvLEosdil7Zm9yKHY9MDt2IT0yNzspaWYodj09NjkpRT1yLmxlbmd0aCxGPUY+MD9GOjEsdz0wLHY9MTE7ZWxzZSBpZih2PT04NSl2PXc8RT83OjI3O2Vsc2UgaWYodj09NjYpbD1xKDczLFApLCRuPXEoNzYsUCksR289cSg0OSxQKSxJPXEoNTcsUCksUz1XKFAsJG4pLHI9VyhQLGwpLE09VihJLFApLEY9VihHbyxQKSx2PTM3O2Vsc2UgaWYodj09Mzcpdj1YWCgiYXJyYXkiLHIsIm51bGwiKT09Im9iamVjdCI/OTA6Nzk7ZWxzZSBpZih2PT0wKXY9TlQoZmFsc2UsMzIsZCx0cnVlLFAsdHJ1ZSk/Mjc6NjY7ZWxzZSBpZih2PT03KVMoci5zbGljZSh3LCh3fDApKyhGfDApKSxNKSx2PTU5O2Vsc2UgaWYodj09MTEpdj04NTtlbHNlIGlmKHY9PTkwKXtmb3IoWCBpbiBKPVtdLHIpSi5wdXNoKFgpO3Y9KHI9Siw3OSl9ZWxzZSB2PT03OT92PVAuQj09UD82OToyNzp2PT01OSYmKHcrPUYsdj04NSl9KSw3MyxjKSx7fSksYyksWzAsMCwwXSksYyksWWYoNCkpKSxbNTcsMCwwXSkpLDE2MyksW10pLEgpKSxZZig0KSksYyksNDU0KSxjKSxmdW5jdGlvbihQLGQsSSxTLFgpe0EoKGQ9WFgoImFycmF5IiwoST1iKFAsKFM9cSgxNywoWD1ZKFAsNzQpLFApKSxYKSksSSksIm51bGwiKSxTKSxQLGQpfSksNDQxLGMpLGMpKSxRKShjLDQ1OCwwKSxmdW5jdGlvbihQLGQsSSxTLFgsTSxyLGwpe3tsPTY5O3doaWxlKGwhPTIyKWw9PTQ2PyhQLk49R04oMzIsUCxmYWxzZSksUC5sPXZvaWQgMCxsPTIyKTpsPT0xNz9sPVg9PTM2Mz80ODoyMjpsPT02ND9sPUk9PTI/NDY6MjI6bD09NDA/bD1QLkI9PVA/OTA6MjI6bD09NDg/KFAubD12b2lkIDAsbD02NCk6bD09OTA/KHI9YihQLFgpLFM9YihQLE0pLEk9VyhQLGQpLHJbSV09UyxsPTE3KTpsPT02OSYmKFg9WShQLDczKSxkPXEoODksUCksTT1xKDc4LFApLGw9NDApfX0pLDY3LGMpLGZ1bmN0aW9uKFAsZCxJLFMsWCxNLHIsbCx3LEUpe2ZvcihFPTM7RSE9MTM7KUU9PTk3PyhYPXFUKDcxLDc0LFAuQiwwLDEpLE09WC5MLHc9WC5xbSxTPVguUFYsST1YLmtlLHI9TS5sZW5ndGgsbD1yPT0wP25ldyBJW1NdOnI9PTE/bmV3IElbU10oTVswXSk6cj09Mj9uZXcgSVtTXShNWzBdLE1bMV0pOnI9PTM/bmV3IElbU10oTVswXSxNWzFdLE1bMl0pOnI9PTQ/bmV3IElbU10oTVswXSxNWzFdLE1bMl0sTVszXSk6MigpLFEoUCx3LGwpLEU9MTMpOkU9PTMmJihFPU5UKGZhbHNlLDY1LGQsZmFsc2UsUCx0cnVlKT8xMzo5Nyl9KSwxMjcsYyksZnVuY3Rpb24oUCxkKXtwcigoZD1XKFAsWShQLDc2KSksNTA2KSwwLDE0MixkLDEwNCxQLkIpfSksMzEzLGMpLGYpKDE4LGZ1bmN0aW9uKFApe3VOKDEsUCl9LDEyMSxjKSxmdW5jdGlvbihQLGQsSSxTLFgsTSl7KEk9KGQ9KE09WShQLChYPXEoKFM9cSg3OSxQKSw2NyksUCksNzIpKSxiKShQLFgpLFYoUyxQKSksQykoTSxJW2RdLFApfSksMjEyLGMpLGYoMTUsZnVuY3Rpb24oUCxkLEksUyxYLE0scixsLHcsRSxGKXtmb3IoRj04MztGIT0yNDspRj09Nzg/KFg9WShmYWxzZSwxNiwyLE0sMSxyLFAsRSx3KSxFLmFkZEV2ZW50TGlzdGVuZXIodyxYLG92KSxWKDcxLFApLnB1c2goZnVuY3Rpb24oKXtFLnJlbW92ZUV2ZW50TGlzdGVuZXIodyxYLG92KX0pLEMoNDU4LFtFLHcsWF0sUCksRj0yNCk6Rj09ODM/KGw9cSg0OSxQKSxTPXEoNzQsUCksZD1xKDU3LFApLEk9cSg3MCxQKSx3PVcoUCxTKSxNPWIoUCxJKSxyPVYoZCxQKSxFPVYobCxQLkIpLEY9MzQpOkY9PTM0JiYoRj1FIT09MD83ODoyNCl9LDQ5MyxjKSxmdW5jdGlvbihQLGQsSSxTKXtRKFAsKGQ9cSg3NSwoST1xKDc3LChTPVkoUCw3MiksUCkpLFApKSxkKSxiKFAsUyl8fFcoUCxJKSl9KSwxMTEsYyksYyksW10pLDE5KSxmdW5jdGlvbihQKXtraig0LFApfSw1MDAsYyksWWYoNCkpLGMpLDM2NCksYyksMTMpLGZ1bmN0aW9uKFAsZCxJLFMsWCxNKXtBKChkPShJPWIoUCwoTT1xKDQ5LChTPVkoUCwoWD1xKDE3LFApLDcyKSksUCkpLFgpKSxWKShTLFApLE0pLFAsKyhJPT1kKSl9LDQzMixjKSxjKS5aaj0wLDUwNCksYyksMTUpLGZ1bmN0aW9uKFAsZCxJLFMsWCxNLHIsbCl7aWYoMD09IShJPShyPVcoKE09WShQLChYPVkoUCwobD1ZKChTPVkoUCw3NiksUCksNzMpLDcyKSksNzUpKSxQKSxsKSxXKFAsTSkpLFt0cnVlLnRydWVdKSlkPVYoWCxQKTtDKFMsWShmYWxzZSwxNywyLGQsSSxyLFApLFApfSw4MCxjKTt3aGlsZSghW10hPSh0cnVlPT1bXSE9bnVsbCkpaWYoZigyNixmdW5jdGlvbihQLGQsSSxTLFgsTSl7KFg9YihQLChkPShTPXEoKEk9cSg2OCwoTT1xKDgwLFApLFApKSw3MCksUCksYihQLEkpKSxNKSksQykoUyxYIGluIGR8MCxQKX0sMzcsYyksIWZhbHNlPT0hIiIpYnJlYWs7UkIoMjYsZmFsc2UsYywoYSg0NywoYSg0MSwoQSg3MSwoKEEoMzAyLGMsWyhmKDE1LGZ1bmN0aW9uKFAsZCxJLFMpe1YoKGQ9YihQLChJPXEoNjgsUCksUz1ZKFAsNzMpLFMpKSxJKSxQKSE9MCYmQygxNDIsZCxQKX0sKFEoYyw0NDYsKGYoMTMsZnVuY3Rpb24oUCl7WSg4LDU0LFAsNCl9LDc0LChRKChmKDE3LGZ1bmN0aW9uKFAsZCxJLFMsWCxNLHIsbCx3LEUsRiwkbixHbyxKLHYsTyx5LHdKKXt7eT0xMzt3aGlsZSh5IT00MCl5PT0wP3k9ODp5PT0yMD8oZigyMSxmdW5jdGlvbih6LFB1LG03LGcsZU0sTCl7Zm9yKEw9NDI7TCE9NzU7KUw9PTIxPyhQdS5wdXNoKG03KSxMPTQ4KTpMPT0zOD8oZy5wdXNoKHEoMjUseikpLEw9OTgpOkw9PTUzP0w9bTc+PWcubGVuZ3RoPzM4OjI1Okw9PTI1PyhtNz1nW203XSxMPTIxKTpMPT02Nj8oei5WPXEoNTMsUy5zbGljZSgpLHopLHouRz1xKDUsUHUseiksTD03NSk6TD09MTE/KG03PU1bZU1dLEw9MTUpOkw9PTQ4PyhlTSsrLEw9NjApOkw9PTQyPyhlTT0wLFB1PVtdLGc9W10sTD05OSk6TD09MTU/TD1PW2VNXT8yMTo2ODpMPT05OD9MPTUzOkw9PTYwP0w9ZU08Sj8xMTo2NjpMPT05OT9MPTYwOkw9PTY4JiYoTD01Myl9LHIsUCkseT00MCk6eT09Mjc/KHc9MCx5PTE1KTp5PT01Mj8oT1tJXXx8KE1bSV09d0ooRikpLHk9NDYpOnk9PTI1PyhGPSgoR298MSkrfihHb3wxKS0ofkdvXjEpLTIqKH5HbyYxKSkudG9TdHJpbmcoMikubGVuZ3RoLE09W10sST0wLHk9Nik6eT09NDk/KFMucHVzaChWKFkoUCw3NSksUCkpLHk9MzMpOnk9PTQ2PyhJKysseT04Nik6eT09MTM/KHdKPWZ1bmN0aW9uKHosUHUpe2Zvcig7RTx6Oyl2fD1SdihQKTw8RSxFKz04O3JldHVybiB2Pj49KFB1PShFLT16LHYmKDE8PHopLTEpLHopLFB1fSxyPVkoUCw3NSksdj1FPTAsWD0od0ooMyl8MCkrMSxKPXdKKDUpLE89W10seT1Hbz1sPTApOnk9PTg2P3k9STxKPzUyOjI3Onk9PTY1Pyh3KysseT04Myk6eT09MzM/eT00Nzp5PT02P3k9ODY6eT09NTA/KE9bd10mJihNW3ddPVkoUCw3MikpLHk9NjUpOnk9PTcxPygkbj13SigxKSxPLnB1c2goJG4pLEdvKz0kbj8wOjEseT03Nik6eT09NDc/eT1kLS0/NDk6MjA6eT09OD95PWw8Sj83MToyNTp5PT04Mz95PXc8Sj81MDo2OTp5PT03Nj8obCsrLHk9OCk6eT09Njk/KGQ9WCxTPVtdLHk9NjYpOnk9PTE1P3k9ODM6eT09NjYmJih5PTQ3KX19LDMwMCwoZigoQygxMDMsMCxjKSwyNCksZnVuY3Rpb24oUCxkLEksUyxYLE0scixsLHcpe2Zvcih3PTkxO3chPTQ3Oyl3PT04MT8oZD0oTT1xKDgsNyxQKSwyKihkJk0pK34oZCZNKS1+KGR8TSkpJVMscis9TltsW2RdXSx3PTI1KTp3PT01MD93PTgzOnc9PTEyPyhBKFgsUCxyKSx3PTQ3KTp3PT05MT8oWD1ZKFAsNzUpLEk9cSgxMCw3LFApLHI9IiIsbD1XKFAsMzkzKSxTPWwubGVuZ3RoLGQ9MCx3PTUwKTp3PT04Mz93PUktLT84MToxMjp3PT0yNSYmKHc9ODMpfSw1MSxjKSxjKSksYyksMzksYyksYykpLFtdKSksMTcxKSxjKSwyMDQ4KV0pLGYpKDE5LGZ1bmN0aW9uKFAsZCxJLFMsWCl7USgoWD0oZD0oUz1xKDI1LChJPVkoUCw3NiksUCkpLGIpKFAsUyksVihJLFApKSxQKSxTLGQrWCl9LDEwNCxjKSxjKSxbXSksaHx8YSg1NixbeG5dLGMpLFtHdCxrXSksYyksW1JZLG5dKSxjKSx0cnVlKSx0cnVlKX0sVmg9ZnVuY3Rpb24oayxSKXtyZXR1cm4gem8uY2FsbCh0aGlzLDIxLDc5LDI0LGssUil9LGtmPWZ1bmN0aW9uKGssUixHKXtyZXR1cm4oRz1SLmNyZWF0ZSgpLnNoaWZ0KCksay5WLmNyZWF0ZSgpLmxlbmd0aHx8ay5HLmNyZWF0ZSgpLmxlbmd0aCl8fChrLkc9dm9pZCAwLGsuVj12b2lkIDApLEd9LHFQPWZ1bmN0aW9uKGspe2Zvcih2YXIgUj04NztSIT0yOTspaWYoUj09MzIpRCs9ZW5jb2RlVVJJQ29tcG9uZW50KEdbaF0pK2tbaCsxXSxSPTM1O2Vsc2V7aWYoUj09MTgpcmV0dXJuIGUoMzYsbnVsbCxEKTtpZihSPT04Nyl2YXIgRz1Lci5hcHBseSgxLChSPTkzLGFyZ3VtZW50cykpO2Vsc2UgaWYoUj09MzUpaCsrLFI9NDY7ZWxzZSBpZihSPT04Myl2YXIgaD0oUj00LDApLEQ9a1swXTtlbHNlIGlmKFI9PTkzKVI9Ry5sZW5ndGg9PT0wPzUxOjgzO2Vsc2UgaWYoUj09NClSPTQ2O2Vsc2UgaWYoUj09NDYpUj1oPEcubGVuZ3RoPzMyOjE4O2Vsc2UgaWYoUj09NTEpcmV0dXJuIGUoMzUsbnVsbCxrWzBdKX19LFdZPWZ1bmN0aW9uKGssUixHLGgsRCl7cmV0dXJuIE1QLmNhbGwodGhpcywyMixrLFIsRyxoLEQpfSxubj1mdW5jdGlvbigpe3JldHVybiBmLmNhbGwodGhpcywzKX0sYUI9ZnVuY3Rpb24oayxSKXtyZXR1cm4gQVcuY2FsbCh0aGlzLDQxLGssOCxSKX0sWWY9ZnVuY3Rpb24oayxSLEcpe2ZvcihHPTE5O0chPTY4OylpZihHPT03OSlSLnB1c2goTWF0aC5yYW5kb20oKSoyNTV8MCksRz0xNTtlbHNlIGlmKEc9PTE5KVI9W10sRz05NztlbHNlIGlmKEc9PTk3KUc9MzA7ZWxzZSBpZihHPT0xNSlHPTMwO2Vsc2UgaWYoRz09MzApRz1rLS0/Nzk6NzE7ZWxzZSBpZihHPT03MSlyZXR1cm4gUn0sZWU9ZnVuY3Rpb24oayxSLEcsaCxELGMsWixuLG0sQixULE4sUCxkLEksUyl7Zm9yKFo9KEI9KFQ9KEk9ay5yZXBsYWNlKC9cXHJcXG4vZywiXFxuIiksW10pLDApLDApO1o8SS5sZW5ndGg7WisrKUQ9SS5jaGFyQ29kZUF0KFopLEQ8Uj9UW0IrK109RDooRDwyMDQ4P1RbQisrXT0oYz1EPj42LC1+KGMmMTkyKSsyKihjXjE5MiktKH5jJjE5MikrKH5jfDE5MikpOigoRCY2NDUxMik9PTU1Mjk2JiZaKzE8SS5sZW5ndGgmJihJLmNoYXJDb2RlQXQoWisxKSY2NDUxMik9PTU2MzIwPyhEPShtPShEJjEwMjMpPDwxMCwyKig2NTUzNiZtKSsoNjU1MzYmfm0pLSgtNjU1MzdebSkrKC02NTUzN3xtKSkrKGg9SS5jaGFyQ29kZUF0KCsrWiksKGh8MCktfihoJjEwMjMpK35oKSxUW0IrK109KGQ9RD4+MTgsMjQwKyhkJjI0MCkrLTI0MS0ofmReMjQwKSksVFtCKytdPShHPShQPUQ+PjEyLDYzLSh+UCY2MykpLDEyNy0ofkd8UikpKTpUW0IrK109KFM9RD4+MTIsMjIzLSh+U3wyMjQpKSxUW0IrK109KG49KE49RD4+Niwtfk4rKH5OXjYzKSsofk4mNjMpKSxSLSh+bl5SKSsobnwtMTI5KSkpLFRbQisrXT02My1+RCt+KER8NjMpfFIpO3JldHVybiBUfSxXPWZ1bmN0aW9uKGssUixHKXtHPWsuWVtSXTtmb3IoTmFOO0c9PT12b2lkIDA7ZmFsc2Upe3Rocm93W3dVLDMwLFJdO2lmKHRydWUpYnJlYWt9aWYoRy52YWx1ZSlyZXR1cm4gRy5jcmVhdGUoKTtyZXR1cm4oRy5jcmVhdGUoUioyKlIrLTMxKlIrNTgpLEcpLnByb3RvdHlwZX0sTHI9ZnVuY3Rpb24oayxSLEcsaCxEKXtyZXR1cm4gTlQuY2FsbCh0aGlzLGssNSxSLEcsaCxEKX0sa2o9ZnVuY3Rpb24oayxSLEcsaCxELGMsWil7KCgoRz1iKFIsKFo9WShSLChjPVkoUiwoRD0oa3w0KS1+aysoaD1rJjMsfihrfDQpKS0oayYtNSksNzMpKSw3NykpLGMpKSxEKSYmKEc9ZWUoIiIrRywxMjgpKSxoKSYmamUoWixLKDIsRy5sZW5ndGgpLFIpLGplKShaLEcsUil9LGlOPWZ1bmN0aW9uKGssUixHLGgsRCxjLFosbixtLEIsVCxOKXsoUi5wdXNoKChjPWtbMF08PDI0fGtbMV08PDE2LG49a1syXTw8OCwtfihjJm4pKy0yLSh+Y15uKSl8a1szXSksUi5wdXNoKChaPShoPWtbNF08PDI0fGtbNV08PDE2LE49a1s2XTw8OCwtMi1+Ti0ofmh8TikpLEQ9a1s3XSwyKihEfDApLTIqKFomRCktflorKFp8fkQpKSksUikucHVzaCgoVD0oQj1rWzhdPDwyNHxrWzldPDwxNixtPWtbMTBdPDw4LC1+KEImbSkrMiooQl5tKSsofkJebSkpLEc9a1sxMV0sLTEtflQrKH5UJkcpKSl9LGxOPWZ1bmN0aW9uKGssUixHLGgsRCxjLFosbixtLEIpe3N3aXRjaCghKGguQj09aCkpe2Nhc2UgdHJ1ZTpmYWxzZTticmVhaztjYXNlICFbIiJdIT0wOntaPWIoaCxrKSxrPT00Mnx8az09MTkxfHxrPT0xND8obT1mdW5jdGlvbihULE4sUCxkLEksUyxYLE0pe2ZvcihYPShTPTgsOTcpOzspdHJ5e2lmKFM9PTU1KWJyZWFrO2Vsc2UgaWYoUz09NzYpWD0zMyxaLkdmPXloKDE2LHEoMzQsOCwtMS0yKn4oSXw0KSsofkleNCksWiksMjU1LHEoNjYsOCxJLFopLGQpLFM9NzA7ZWxzZXtpZihTPT02Mil0aHJvdyBYPTk3LE07Uz09NzA/KFoucHVzaChaLkdmWy0oTnxHKS0yKn4oTnxHKSsoTnwtOCkrKH5OfEcpXV5UKSxTPTU1KTpTPT05MD9TPVoubUIhPVA/Mjk6NzA6Uz09OD8oTj1aLmxlbmd0aCxQPShOfDApLTQ+PjMsUz05MCk6Uz09MjkmJihJPShQPDwzKS00LGQ9WzAsMCxCWzFdLEJbMl1dLFoubUI9UCxTPTc2KX19Y2F0Y2gocil7aWYoWD09OTcpdGhyb3cgcjtYPT0zMyYmKE09cixTPTYyKX19LEI9Vig5NSxoKSk6bT1mdW5jdGlvbihUKXtaLnB1c2goVCl9LEQmJm0oKER8MCktIC01MTIrMip+KER8MjU1KSsoRCYtMjU2KSksYz1SLmxlbmd0aCxuPTA7d2hpbGUobjxjKW0oUltuXSksbisrfWJyZWFrfX0sQz1mdW5jdGlvbihrLFIsRyl7c3dpdGNoKCEoaz09MTQyfHxrPT0xNjgpKXtjYXNlIHRydWU6d2hpbGUoRy55biYmayE9MzYzKXtyZXR1cm47aWYoZmFsc2U9PTApYnJlYWt9az09NDg4fHxrPT00Mnx8az09MjY0fHxrPT0xNHx8az09NTA2fHxrPT00NDZ8fGs9PTE2M3x8az09OTV8fGs9PTE5MXx8az09MzAyP0cuWVtrXXx8KEcuWVtrXT1ZKDIsMzIsRyxSLGssMzgpKTpHLllba109WSgyLDM1LEcsUixrLDEyOSk7YnJlYWs7Y2FzZSBmYWxzZTpHLllba10/Ry5ZW2tdLmNvbmNhdChSKTpHLllba109cSg4NSxSLEcpO2JyZWFrfWs9PTM2MyYmKEcuTj1HTigzMixHLGZhbHNlKSxHLmw9dm9pZCAwKX0scVQ9ZnVuY3Rpb24oayxSLEcsaCxELGMsWixuLG0sQil7Yz0oWj0oKG49cSgobT1HW3ZZXXx8e30sayksRyksbS5xbT1xKDE3LEcpLG0pLkw9W10sRykuQj09Rz8oUnYoRyl8aCktRDoxLFkoRyxSKSk7e0I9aDt3aGlsZShCPFopbS5MLnB1c2gocSg0OSxHKSksQisrfWZvcihtLlBWPWIoRyxuKTtaLS07KW0uTFtaXT1iKEcsbS5MW1pdKTtyZXR1cm4gbS5rZT1iKEcsYyksbX0sV3U9ZnVuY3Rpb24oKXtyZXR1cm4gckouY2FsbCh0aGlzLDUpfSxRaD1mdW5jdGlvbihrLFIsRyxoLEQsYyl7cmV0dXJuIFcoRCwoQygxNDIsKGJOKDU3LGgsKChjPVcoRCwxNDIpLEQud2ImJmM8RC5qKT8oUShELDE0MixELmopLHByKDUwNixrLDE0MixSLDEwNCxEKSk6QygxNDIsUixEKSxEKSw0MSksYyksRCksRykpfSxGWD1mdW5jdGlvbigpe3JldHVybiBNUC5jYWxsKHRoaXMsMjApfSxYWD1mdW5jdGlvbihrLFIsRyxoLEQpe0Q9dHlwZW9mIFI7c3dpdGNoKCEoRD09Im9iamVjdCIpKXtjYXNlIE5hTiE9PU51bWJlcih1bmRlZmluZWQpOmZvcihbXSE9KCFbIiJdPT1OdW1iZXIoKSk7RD09ImZ1bmN0aW9uIiYmdHlwZW9mIFIuY2FsbD09InVuZGVmaW5lZCI7MCl7cmV0dXJuIm9iamVjdCI7aWYoIkYiKWJyZWFrfWJyZWFrO2Nhc2UgbnVsbD09KG51bGw9PWZhbHNlKTpzd2l0Y2goIVIpe2Nhc2UgIVtdPT0wOnJldHVybiBHO2JyZWFrO2Nhc2UgIVt1bmRlZmluZWRdIT0wOmlmKFIgaW5zdGFuY2VvZiBBcnJheSlyZXR1cm4gaztzd2l0Y2goIShSIGluc3RhbmNlb2YgT2JqZWN0KSl7Y2FzZSB0cnVlOltdIT0odHJ1ZSE9W10pO2JyZWFrO2Nhc2UgIVtdPT0oLTA9PT0wKTpyZXR1cm4gRDticmVha31oPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChSKTtmb3IoZmFsc2U7aD09IltvYmplY3QgV2luZG93XSI7ZmFsc2Upe3JldHVybiJvYmplY3QiO2lmKFtdPT0oIWZhbHNlPT0hIiIpIT1udWxsKWJyZWFrfWZvcihOdW1iZXIoKTtoPT0iW29iamVjdCBBcnJheV0ifHx0eXBlb2YgUi5sZW5ndGg9PSJudW1iZXIiJiZ0eXBlb2YgUi5zcGxpY2UhPSJ1bmRlZmluZWQiJiZ0eXBlb2YgUi5wcm9wZXJ0eUlzRW51bWVyYWJsZSE9InVuZGVmaW5lZCImJiFSLnByb3BlcnR5SXNFbnVtZXJhYmxlKCJzcGxpY2UiKTtmYWxzZSl7cmV0dXJuIGs7aWYoIlkiKWJyZWFrfXN3aXRjaCghKGg9PSJbb2JqZWN0IEZ1bmN0aW9uXSJ8fHR5cGVvZiBSLmNhbGwhPSJ1bmRlZmluZWQiJiZ0eXBlb2YgUi5wcm9wZXJ0eUlzRW51bWVyYWJsZSE9InVuZGVmaW5lZCImJiFSLnByb3BlcnR5SXNFbnVtZXJhYmxlKCJjYWxsIikpKXtjYXNlIFtdIT10cnVlOjE7YnJlYWs7Y2FzZSBmYWxzZTpyZXR1cm4iZnVuY3Rpb24iO2JyZWFrfWJyZWFrfWJyZWFrfXJldHVybiBEfSxyVT1mdW5jdGlvbihrLFIpe3JldHVybiB0Vy5jYWxsKHRoaXMsMjgsayxSKX0seD1mdW5jdGlvbihrLFIsRyxoLEQsYyxaLG4sbSl7bT10aGlzO3RyeXtjZChSLG4sYyxaLGssdGhpcyxoLEQsRyl9Y2F0Y2goQil7ZSg4OSwiOiIsdGhpcyxCKSxEKGZ1bmN0aW9uKFQpe1QobS5LKX0pfX0sWnk9ZnVuY3Rpb24oayxSKXtmdW5jdGlvbiBHKCl7dGhpcy5uPSh0aGlzLlQ9W10sMCl9cmV0dXJuW2Z1bmN0aW9uKGgpe2sueE4oaCksUi54TihoKX0sKFI9KGs9KEcucHJvdG90eXBlLnhOPShHLnByb3RvdHlwZS5POT1mdW5jdGlvbigpe3JldHVybiBSQi5jYWxsKHRoaXMsMyl9LGZ1bmN0aW9uKGgsRCl7cmV0dXJuIGNZLmNhbGwodGhpcywzMyxoLDExLEQpfSksbmV3IEcpLG5ldyBHKSxmdW5jdGlvbihoLEQpe3JldHVybiBEPShoPWg9PT12b2lkIDA/dHJ1ZTpoLGsuTzkoKS5jb25jYXQoUi5POSgpKSksaCYmKFI9bmV3IEcpLER9KV19LGtuPWZ1bmN0aW9uKGssUixHLGgsRCxjLFosbixtLEIsVCxOLFApe209a1swXTtzd2l0Y2goIShtPT0kZikpe2Nhc2UgZmFsc2U9PSFbXTppZihtPT1CZCloLlc9RyxoLnM5PTI1LGgueVQ9aC5SbygpLWtbUl0saC5pKGspO2Vsc2UgaWYobT09QW8pe0I9a1sxXVszXTt0cnl7Yz1oLkt8fGguaShrKX1jYXRjaChkKXtlKDU4LCI6IixoLGQpLGM9aC5LfShuPWguSigpLEIoYyksaCkuWCs9aC5KKCktbn1lbHNlIHN3aXRjaCghKG09PW1jKSl7Y2FzZSBOYU4hPT1OdW1iZXIodW5kZWZpbmVkKTpzd2l0Y2goIShtPT1HdCkpe2Nhc2UgMD09PS0wOnN3aXRjaCghKG09PVJZKSl7Y2FzZSBOdW1iZXIoKT09PS1OdW1iZXIoKTppZihtPT1NVClyZXR1cm4gRD1rW1JdLEEoNDUxLGgsa1s2XSksQygxNTcsRCxoKSxoLmkoayk7bT09ZHI/KGguaShrKSxoLlk9bnVsbCxoLnVYPVtdLGgud2I9W10pOm09PXhuJiZILmRvY3VtZW50LnJlYWR5U3RhdGU9PT0ibG9hZGluZyImJihoLlM9ZnVuY3Rpb24oZCxJKXtmdW5jdGlvbiBTKFgpe2ZvcihYPTk3O1ghPTU2OylYPT05Nz9YPUk/NTY6ODY6WD09ODYmJihJPUcsSC5kb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixTLG92KSxILnJlbW92ZUV2ZW50TGlzdGVuZXIoImxvYWQiLFMsb3YpLGQoKSxYPTU2KX1ILmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLChJPWZhbHNlLFMpLG92KSxILmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLFMsb3YpfSk7YnJlYWs7Y2FzZSBmYWxzZTp0cnl7e1A9MDt3aGlsZShQPGguU20ubGVuZ3RoKXt0cnl7Wj1oLlNtW1BdLFpbMF1bWlsxXV0oWltSXSl9Y2F0Y2goZCl7fVArK319fWNhdGNoKGQpe30oMCxrWzFdKShmdW5jdGlvbihkLEkpe2gucFgoZCxHLEkpfSxmdW5jdGlvbihkKXthKDQ0LChkPSFoLlAubGVuZ3RoJiYhaC5vLFtkcl0pLGgpLGQmJlJCKDMwLGZhbHNlLGgsZmFsc2UsRyl9LChoLlNtPVtdLFQ9aC5KKCksZnVuY3Rpb24oZCl7cmV0dXJuIGgudHgoZCl9KSxmdW5jdGlvbihkLEksUyl7cmV0dXJuIGguZWkoZCxJLFMpfSksaC5YKz1oLkooKS1UO2JyZWFrfWJyZWFrO2Nhc2UgZmFsc2U6aC51PUcsaC5pKGspO2JyZWFrfWJyZWFrO2Nhc2UgW109PShmYWxzZT09IVtdKTprWzNdJiYoaC51PUcpLGtbNF0mJihoLlc9RyksaC5pKGspO2JyZWFrfWJyZWFrO2Nhc2UgTmFOPT09TmFOOmlmKE49aC5pKGspKU4uSWE9SC5zZXRUaW1lb3V0KGZ1bmN0aW9uKGQpeyhhKChhKDQwLE4uUVQsKGQ9KE4uTW09RywhaC5QLmxlbmd0aCYmIWgubyksaCkpLDU4KSxOLmFhLGgpLGQpJiZSQigyNSxmYWxzZSxoLEcsRyl9LE4udGltZW91dCksaC52dC5wdXNoKE4pO2JyZWFrfX0sU009ZnVuY3Rpb24oayxSLEcpeyJzdGFjayJpbih0aGlzLm1lc3NhZ2U9KEc9RXJyb3IuY2FsbCh0aGlzLGsrIiBjYW5ub3QgYmUgdXNlZCB3aXRoIGludGVudCAiK21EW1JdKSxHLm1lc3NhZ2UpLEcpJiYodGhpcy5zdGFjaz1HLnN0YWNrKSx0aGlzLnR5cGU9ayx0aGlzLm5hbWU9IlR5cGVDYW5ub3RCZVVzZWRXaXRoSWZyYW1lSW50ZW50RXJyb3IifSxnVT1mdW5jdGlvbihrLFIsRyl7cmV0dXJuIEFXLmNhbGwodGhpcyw0MSxrLDI5LFIsRyl9LEE9ZnVuY3Rpb24oayxSLEcpe2lmKGs9PTE0Mnx8az09MTY4KVIuWVtrXT9SLllba10uY29uY2F0KEcpOlIuWVtrXT1xKDM3LEcsUik7ZWxzZXtpZihSLnluJiZrIT0zNjMpcmV0dXJuO2s9PTQ4OHx8az09NDJ8fGs9PTI2NHx8az09MTR8fGs9PTUwNnx8az09NDQ2fHxrPT0xNjN8fGs9PTk1fHxrPT0xOTF8fGs9PTMwMj9SLllba118fChSLllba109WSgyLDQwLFIsRyxrLDM4KSk6Ui5ZW2tdPVkoMiwzMixSLEcsaywxMjkpfWs9PTM2MyYmKFIuTj1HTigzMixSLGZhbHNlKSxSLmw9dm9pZCAwKX0sbng9ZnVuY3Rpb24oayxSLEcsaCxEKXt3aGlsZShrLmxlbmd0aD09Myl7e2g9MDt3aGlsZShoPDMpUltoXSs9a1toXSxoKyt9RD1bMTMsOCwxMywxMiwxNiw1LDMsMTAsMTVdO3tHPTA7d2hpbGUoRzw5KVJbM10oUixHJTMsRFtHXSksRysrfWlmKHt9KWJyZWFrfX0sS3I9ZnVuY3Rpb24oKXt7dmFyIGs9OTM7d2hpbGUoayE9Mzkpe2lmKGs9PTkwKXJldHVybiBoO2lmKGs9PTc3KWs9Rzxhcmd1bWVudHMubGVuZ3RoPzE2OjkwO2Vsc2UgaWYoaz09OTMpdmFyIFI9KGs9MTEsTnVtYmVyKSh0aGlzKSxHPVIsaD1bXTtlbHNlIGs9PTExP2s9Nzc6az09OTI/KEcrKyxrPTc3KTprPT0xNiYmKGhbRy1SXT1hcmd1bWVudHNbR10saz05Mil9fX0scHI9ZnVuY3Rpb24oayxSLEcsaCxELGMpe3doaWxlKGZhbHNlPT0wKWlmKGMuRnoubGVuZ3RoPkQ/YXYoayxjLFIsW3dVLDM2XSk6KGMuRnoucHVzaChjLlkuc2xpY2UoKSksYy5ZW0ddPXZvaWQgMCxBKEcsYyxoKSksIVtdPT0wKWJyZWFrfSxiPWZ1bmN0aW9uKGssUixHKXtHPWsuWVtSXTt3aGlsZShHPT09dm9pZCAwKXt0aHJvd1t3VSwzMCxSXTtpZigwPT0hW3RydWUudHJ1ZV0pYnJlYWt9c3dpdGNoKCFHLnZhbHVlKXtjYXNlIDA9PSFbXTpbXSE9KHRydWUhPVtdKTticmVhaztjYXNlIG51bGw9PShmYWxzZT09bnVsbCk6cmV0dXJuIEcuY3JlYXRlKCk7YnJlYWt9cmV0dXJuKEcuY3JlYXRlKFIqMipSKy0zMSpSKzU4KSxHKS5wcm90b3R5cGV9LE5ELHRvPWZ1bmN0aW9uKGssUixHLGgsRCxjKXtyZXR1cm4gRjEuY2FsbCh0aGlzLDk0LCJvbiIsMjQsayxSLEcsaCxELGMpfSxUdD1mdW5jdGlvbihrLFIsRyxoLEQpe3JldHVybiBMbi5jYWxsKHRoaXMsMyxrLEcsMTIsRCxSLGgpfSxEWj1mdW5jdGlvbigpe3JldHVybiBLbi5jYWxsKHRoaXMsMCwxLDUpfSxnSj1mdW5jdGlvbihrLFIsRyxoLEQsYyxaLG4sbSxCKXtyZXR1cm4gQlkuY2FsbCh0aGlzLGssMTIsUixHLGgsRCxjLFosbixtLEIpfSxWPWZ1bmN0aW9uKGssUixHKXtHPVIuWVtrXTtzd2l0Y2goIShHPT09dm9pZCAwKSl7Y2FzZSAwPT0hWyIiXTowPT0hWyIiXTticmVhaztjYXNlIDAhPT0tTnVtYmVyKCk6dGhyb3dbd1UsMzAsa107YnJlYWt9aWYoRy52YWx1ZSlyZXR1cm4gRy5jcmVhdGUoKTtyZXR1cm4oRy5jcmVhdGUoayoyKmsrLTMxKmsrNTgpLEcpLnByb3RvdHlwZX0sUzg9ZnVuY3Rpb24oayxSLEcsaCl7dHJ5e2g9a1soKFJ8MCkrMiklM10sa1tSXT0oa1tSXXwwKS0oa1soLTIqfihSJjEpKy0yKyhSJi0yKSsoflImMSkpJTNdfDApLShofDApXihSPT0xP2g8PEc6aD4+PkcpfWNhdGNoKEQpe3Rocm93IEQ7fX0sSVk9ZnVuY3Rpb24oKXtyZXR1cm4gckouY2FsbCh0aGlzLDgpfSxRZj1mdW5jdGlvbigpe3JldHVybiBlLmNhbGwodGhpcyw1MSl9LFgxPWZ1bmN0aW9uKGspe3JldHVybiBOUC5jYWxsKHRoaXMsNCxrLDMpfSx1Tj1mdW5jdGlvbihrLFIsRyxoKXtoPXEoNTcsKEc9WShSLDczKSxSKSksamUoaCxLKGssVihHLFIpKSxSKX0sYk49ZnVuY3Rpb24oayxSLEcsaCxELGMsWixuLG0pe2lmKCFHLkspe0cuRDcrKzt0cnl7RD1HLmo7d2hpbGUoIW51bGwpaWYoYz12b2lkIDAsdHJ1ZSE9IVtdKWJyZWFrO2ZvcihaPTA7LS1SOyl0cnl7aWYobT12b2lkIDAsRy5WKWM9a2YoRyxHLlYpO2Vsc2V7aWYoKFo9VigxNDIsRyksWik+PUQpYnJlYWs7Yz1iKEcsKG09cSg4OSwoUShHLDE2OCxaKSxHKSksbSkpfU5UKGZhbHNlLDMzLChjJiYobj1jW2RyXSwobnwwKSsyMDQ4LShufDIwNDgpKT9jKEcsUik6YXYoNTA2LEcsMCxbd1UsMjEsbV0pLFIpLGZhbHNlLEcsZmFsc2UpfWNhdGNoKEIpe1coRyxoKT9hdig1MDYsRywyMixCKTpBKGgsRyxCKX1mb3IodHJ1ZSsobnVsbCE9KDAhPSFbXSkpOyFSOzEpe2Zvcih2b2lkIDA7Ry5ObTshW109PWZhbHNlKXtiTig1NywoRy5ENy0tLDYwMzE5ODAwNTkzMCksRyw0MSk7cmV0dXJuO2lmKDMpYnJlYWt9aWYoYXYoNTA2LEcsMCxbd1UsMzNdKSwxKWJyZWFrfX1jYXRjaChCKXt0cnl7YXYoNTA2LEcsMjIsQil9Y2F0Y2goVCl7ZShrLCI6IixHLFQpfX1HLkQ3LS19fSxwbj1mdW5jdGlvbihrKXtyZXR1cm4gSUIuY2FsbCh0aGlzLDI0LGspfSx1O3N3aXRjaCghKHR5cGVvZiBPYmplY3Quc2V0UHJvdG90eXBlT2Y9PSJmdW5jdGlvbiIpKXtjYXNlICEiIj09IWZhbHNlOnZhciBYUTthOnt2YXIgTUQ9e30sb1k9e2E6dHJ1ZX07dHJ5e01ELl9fcHJvdG9fXz1vWTt3aGlsZShOdW1iZXIoKT09ZmFsc2UpaWYoWFE9TUQuYSx0cnVlIT1bXSlicmVhazticmVhayBhfWNhdGNoKGspe31YUT1mYWxzZX1ORD1YUT9mdW5jdGlvbihrLFIsRyl7Zm9yKEc9MTU7RyE9NTI7KXtpZihHPT02NilyZXR1cm4gaztpZihHPT0xNSlrLl9fcHJvdG9fXz1SLEc9Nzg7ZWxzZSBpZihHPT03OClHPWsuX19wcm90b19fIT09Uj80MTo2NjtlbHNlIGlmKEc9PTQxKXRocm93IG5ldyBUeXBlRXJyb3IoaysiIGlzIG5vdCBleHRlbnNpYmxlIik7fX06bnVsbDticmVhaztjYXNlIDAhPSFbXTpORD1PYmplY3Quc2V0UHJvdG90eXBlT2Y7YnJlYWt9dmFyIEg9dGhpc3x8c2VsZix0MD1ORCxFUj0iY2xvc3VyZV91aWRfIisoTWF0aC5yYW5kb20oKSoxRTk+Pj4wKSxIdT0wLFpaLGZuPWZ1bmN0aW9uKGssUixHLGgsRCxjKXtEPTgxO3toPTU0O3doaWxlKFtdKXRyeXtpZihEPT0zNSlicmVhaztlbHNlIGlmKEQ9PTgwKVI9ZmFsc2UsRz1PYmplY3QuZGVmaW5lUHJvcGVydHkoe30sInBhc3NpdmUiLHtnZXQ6ZnVuY3Rpb24oKXtSPXRydWV9fSksRD01MDtlbHNlIGlmKEQ9PTMwKWg9NTQsRD0zMjtlbHNle2lmKEQ9PTMyKXJldHVybiBoPTU0LFI7aWYoRD09MzMpcmV0dXJuIGZhbHNlO0Q9PTUwPyhoPTM4LGs9ZnVuY3Rpb24oKXt9LEguYWRkRXZlbnRMaXN0ZW5lcigidGVzdCIsayxHKSxILnJlbW92ZUV2ZW50TGlzdGVuZXIoInRlc3QiLGssRyksRD0zMik6RD09ODEmJihEPUguYWRkRXZlbnRMaXN0ZW5lciYmT2JqZWN0LmRlZmluZVByb3BlcnR5PzgwOjMzKX19Y2F0Y2goWil7aWYoaD09NTQpdGhyb3cgWjtoPT0zOCYmKGM9WixEPTMwKX19fSgpLGRKPSJjbG9zdXJlX2xpc3RlbmFibGVfIisoKCgoKEJZKDIsNDUsclUsKGFCLnByb3RvdHlwZS5wcmV2ZW50RGVmYXVsdD0oV3UucHJvdG90eXBlW1d1LnByb3RvdHlwZS5kaXNwb3NlPShXdS5wcm90b3R5cGUuZz1mYWxzZSxmdW5jdGlvbihrKXt7az05NTt3aGlsZShrIT0xMilrPT01Mj8odGhpcy5nPXRydWUsdGhpcy5VKCksaz0xMik6az09OTUmJihrPXRoaXMuZz8xMjo1Mil9fSksKGFCLnByb3RvdHlwZS5zdG9wUHJvcGFnYXRpb249ZnVuY3Rpb24oKXt0aGlzLlB0PXRydWV9LFN5bWJvbCkuZGlzcG9zZV09KFd1LnByb3RvdHlwZS5VPWZ1bmN0aW9uKGspe3trPTc2O3doaWxlKGshPTQ2KWs9PTU4P2s9ODA6az09MzY/KHRoaXMubFguc2hpZnQoKSgpLGs9NDEpOms9PTgwP2s9dGhpcy5sWC5sZW5ndGg/MzY6NDY6az09NDE/az04MDprPT03NiYmKGs9dGhpcy5sWD81ODo0Nil9fSxmdW5jdGlvbigpe3RoaXMuZGlzcG9zZSgpfSksZnVuY3Rpb24oKXt0aGlzLmRlZmF1bHRQcmV2ZW50ZWQ9dHJ1ZX0pLGFCKSksclUucHJvdG90eXBlKS5pbml0PWZ1bmN0aW9uKGssUixHLGgsRCxjKXtmb3IoYz0zOTtjIT05NjspYz09MTY/Yz1EPT0ibW91c2VvdmVyIj8yMjoyMzpjPT0yMz9jPUQ9PSJtb3VzZW91dCI/MTI6ODQ6Yz09OTk/KHRoaXMub2Zmc2V0WD1rLm9mZnNldFgsdGhpcy5vZmZzZXRZPWsub2Zmc2V0WSx0aGlzLmNsaWVudFg9ay5jbGllbnRYIT09dm9pZCAwP2suY2xpZW50WDprLnBhZ2VYLHRoaXMuY2xpZW50WT1rLmNsaWVudFkhPT12b2lkIDA/ay5jbGllbnRZOmsucGFnZVksdGhpcy5zY3JlZW5YPWsuc2NyZWVuWHx8MCx0aGlzLnNjcmVlblk9ay5zY3JlZW5ZfHwwLGM9MjApOmM9PTg0Pyh0aGlzLnJlbGF0ZWRUYXJnZXQ9aCxjPTgxKTpjPT01ND8odGhpcy5jbGllbnRYPUcuY2xpZW50WCE9PXZvaWQgMD9HLmNsaWVudFg6Ry5wYWdlWCx0aGlzLmNsaWVudFk9Ry5jbGllbnRZIT09dm9pZCAwP0cuY2xpZW50WTpHLnBhZ2VZLHRoaXMuc2NyZWVuWD1HLnNjcmVlblh8fDAsdGhpcy5zY3JlZW5ZPUcuc2NyZWVuWXx8MCxjPTIwKTpjPT0yMD8odGhpcy5idXR0b249ay5idXR0b24sdGhpcy5rZXlDb2RlPWsua2V5Q29kZXx8MCx0aGlzLmtleT1rLmtleXx8IiIsdGhpcy5jaGFyQ29kZT1rLmNoYXJDb2RlfHwoRD09ImtleXByZXNzIj9rLmtleUNvZGU6MCksdGhpcy5jdHJsS2V5PWsuY3RybEtleSx0aGlzLmFsdEtleT1rLmFsdEtleSx0aGlzLnNoaWZ0S2V5PWsuc2hpZnRLZXksdGhpcy5tZXRhS2V5PWsubWV0YUtleSx0aGlzLnBvaW50ZXJJZD1rLnBvaW50ZXJJZHx8MCx0aGlzLnBvaW50ZXJUeXBlPWsucG9pbnRlclR5cGUsdGhpcy5zdGF0ZT1rLnN0YXRlLHRoaXMudGltZVN0YW1wPWsudGltZVN0YW1wLHRoaXMuWU49ayxrLmRlZmF1bHRQcmV2ZW50ZWQmJnJVLk8ucHJldmVudERlZmF1bHQuY2FsbCh0aGlzKSxjPTk2KTpjPT02OD9jPWg/ODQ6MTY6Yz09MjI/KGg9ay5mcm9tRWxlbWVudCxjPTg0KTpjPT04MT9jPUc/NTQ6OTk6Yz09MTI/KGg9ay50b0VsZW1lbnQsYz04NCk6Yz09MzkmJihEPXRoaXMudHlwZT1rLnR5cGUsRz1rLmNoYW5nZWRUb3VjaGVzJiZrLmNoYW5nZWRUb3VjaGVzLmxlbmd0aD9rLmNoYW5nZWRUb3VjaGVzWzBdOm51bGwsdGhpcy50YXJnZXQ9ay50YXJnZXR8fGsuc3JjRWxlbWVudCx0aGlzLmN1cnJlbnRUYXJnZXQ9UixoPWsucmVsYXRlZFRhcmdldCxjPTY4KX0sclUpLnByb3RvdHlwZS5zdG9wUHJvcGFnYXRpb249ZnVuY3Rpb24oKXsoclUuTy5zdG9wUHJvcGFnYXRpb24uY2FsbCh0aGlzKSx0aGlzLllOLnN0b3BQcm9wYWdhdGlvbik/dGhpcy5ZTi5zdG9wUHJvcGFnYXRpb24oKTp0aGlzLllOLmNhbmNlbEJ1YmJsZT10cnVlfSxyVSkucHJvdG90eXBlLnByZXZlbnREZWZhdWx0PWZ1bmN0aW9uKGspeyhrPShyVS5PLnByZXZlbnREZWZhdWx0LmNhbGwodGhpcyksdGhpcy5ZTiksaykucHJldmVudERlZmF1bHQ/ay5wcmV2ZW50RGVmYXVsdCgpOmsucmV0dXJuVmFsdWU9ZmFsc2V9LE1hdGgucmFuZG9tKCkpKjFFNnwwKSxIWT0iY29uc3RydWN0b3IgaGFzT3duUHJvcGVydHkgaXNQcm90b3R5cGVPZiBwcm9wZXJ0eUlzRW51bWVyYWJsZSB0b0xvY2FsZVN0cmluZyB0b1N0cmluZyB2YWx1ZU9mIi5zcGxpdCgiICIpLEl2PTAsbDk9KCgoak0ucHJvdG90eXBlLmFkZD0oak0ucHJvdG90eXBlLmhhc0xpc3RlbmVyPWZ1bmN0aW9uKGssUixHLGgsRCl7cmV0dXJuIHJKKDEwLHRydWUsZmFsc2UsKEc9KGg9KEQ9ayE9PXZvaWQgMCk/ay50b1N0cmluZygpOiIiLFIhPT12b2lkIDApLHRoaXMuWiksZnVuY3Rpb24oYyxaLG4pe2ZvcihuPTM4O24hPTgzOylpZihuPT04OCkrK1osbj0zMjtlbHNle2lmKG49PTE4KXJldHVybiBmYWxzZTtpZihuPT03NyluPTMyO2Vsc2UgaWYobj09ODkpbj1EJiZjW1pdLnR5cGUhPWh8fEcmJmNbWl0uY2FwdHVyZSE9Uj84ODoxNDtlbHNle2lmKG49PTE0KXJldHVybiB0cnVlO249PTMyP249WjxjLmxlbmd0aD84OToxODpuPT0zOCYmKFo9MCxuPTc3KX19fSl9LGZ1bmN0aW9uKGssUixHLGgsRCxjLFosbixtLEIpe3tCPTczO3doaWxlKEIhPTI5KWlmKEI9PTEwKW0uYW89ZmFsc2UsQj01MTtlbHNlIGlmKEI9PTIxKUI9Yz4tMT8wOjcxO2Vsc2UgaWYoQj09NDMpQj1HPzUxOjEwO2Vsc2V7aWYoQj09NTEpcmV0dXJuIG07Qj09MD8obT1uW2NdLEI9NDMpOkI9PTk0PyhuPXRoaXMuWltaXT1bXSx0aGlzLkp4KyssQj0zMik6Qj09NzE/KG09bmV3IFR0KEQsdGhpcy5zcmMsWixSLCEhaCksbS5hbz1HLG4ucHVzaChtKSxCPTUxKTpCPT0zMj8oYz1ySigyMSwwLGgsRCxuLFIpLEI9MjEpOkI9PTczPyhaPWsudG9TdHJpbmcoKSxuPXRoaXMuWltaXSxCPTQ4KTpCPT00OCYmKEI9bj8zMjo5NCl9fX0pLGpNKS5wcm90b3R5cGUucmVtb3ZlPWZ1bmN0aW9uKGssUixHLGgsRCxjLFosbil7e249MjI7d2hpbGUobiE9NDIpaWYobj09MzkpaFcoMjMsdHJ1ZSxEW2NdKSxBcnJheS5wcm90b3R5cGUuc3BsaWNlLmNhbGwoRCxjLDEpLG49NzQ7ZWxzZSBpZihuPT05OSluPWM+LTE/Mzk6NTk7ZWxzZXtpZihuPT0yKXJldHVybiB0cnVlO2lmKG49PTUpZGVsZXRlIHRoaXMuWltaXSx0aGlzLkp4LS0sbj0yO2Vsc2UgaWYobj09NzQpbj1ELmxlbmd0aD09MD81OjI7ZWxzZSBpZihuPT04MyluPVogaW4gdGhpcy5aPzg0OjA7ZWxzZXtpZihuPT01OXx8bj09MClyZXR1cm4gZmFsc2U7bj09MjI/KFo9ay50b1N0cmluZygpLG49ODMpOm49PTg0JiYoRD10aGlzLlpbWl0sYz1ySigyMCwwLEcsaCxELFIpLG49OTkpfX19fSxqTSkucHJvdG90eXBlLkNYPWZ1bmN0aW9uKGssUixHLGgsRCxjKXtyZXR1cm4oRD10aGlzLlpbay50b1N0cmluZygpXSxjPS0xLEQmJihjPXJKKDIyLDAsaCxHLEQsUikpLGMpPi0xP0RbY106bnVsbH0sImNsb3N1cmVfbG1fIikrKE1hdGgucmFuZG9tKCkqMUU2fDApLGk5PTAsVE49e30sZFU9Il9fY2xvc3VyZV9ldmVudHNfZm5fIisoTWF0aC5yYW5kb20oKSoxRTk+Pj4wKTsoKCgoKEJZKDIsNDMsRFosV3UpLERaLnByb3RvdHlwZSlbZEpdPXRydWUsdT1EWi5wcm90b3R5cGUsdSkuemY9ZnVuY3Rpb24oayl7dGhpcy5Obz1rfSx1KS5hZGRFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGssUixHLGgpe3Z1KDU2LGZhbHNlLFIsRyx0aGlzLHRydWUsaywzLGgpfSx1KS5yZW1vdmVFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGssUixHLGgpe0J1KDE2LDAsIm9iamVjdCIsRyxSLGgsayx0aGlzKX0sdS5kaXNwYXRjaEV2ZW50PWZ1bmN0aW9uKGssUixHLGgsRCxjLFosbixtLEIsVCxOKXtmb3IoTj03NDtOIT02MTspaWYoTj09ODYpQj1SLmN1cnJlbnRUYXJnZXQ9bixoPVBZKDUsMCxCLG0sdHJ1ZSxSKSYmaCxSLlB0fHwoaD1QWSgzLDAsQixtLGZhbHNlLFIpJiZoKSxOPTY0O2Vsc2UgaWYoTj09OTEpTj05O2Vsc2UgaWYoTj09NilOPVIuUHQ/NjQ6ODY7ZWxzZSBpZihOPT0yKUI9Ui5jdXJyZW50VGFyZ2V0PWNbWl0saD1QWSg3LDAsQixtLHRydWUsUikmJmgsTj0yNDtlbHNlIGlmKE49PTY4KUQ9W10sTj00O2Vsc2UgaWYoTj09NzMpRC5wdXNoKEcpLE49NzE7ZWxzZSBpZihOPT02NClOPWM/NDc6MjU7ZWxzZSBpZihOPT01MyloPXRydWUsTj0xMjtlbHNlIGlmKE49PTkpTj0hUi5QdCYmWj49MD8yOjY7ZWxzZSBpZihOPT0xNSlOPXR5cGVvZiBSPT09InN0cmluZyI/Mzc6ODtlbHNlIGlmKE49PTQ3KVo9MCxOPTk5O2Vsc2V7aWYoTj09MjUpcmV0dXJuIGg7Tj09OTk/Tj05NzpOPT00MD8oWisrLE49OTcpOk49PTY5PyhSLnRhcmdldD1SLnRhcmdldHx8bixOPTUzKTpOPT0zNz8oUj1uZXcgYUIoUixuKSxOPTUzKTpOPT0zMz9OPUc/Njg6NzU6Tj09MjQ/KFotLSxOPTkpOk49PTQ/Tj04OTpOPT03ND8oRz10aGlzLk5vLE49MzMpOk49PTg1PyhCPVIuY3VycmVudFRhcmdldD1jW1pdLGg9UFkoNiwwLEIsbSxmYWxzZSxSKSYmaCxOPTQwKTpOPT0xND8oVD1SLFI9bmV3IGFCKG0sbiksQ3IoUixUKSxOPTUzKTpOPT03NT8oUj1rLG09Ui50eXBlfHxSLG49dGhpcy5scSxjPUQsTj0xNSk6Tj09NDM/KFo9Yy5sZW5ndGgtMSxOPTkxKTpOPT04OT9OPUc/NzM6NzU6Tj09NzE/KEc9Ry5ObyxOPTg5KTpOPT04P049UiBpbnN0YW5jZW9mIGFCPzY5OjE0Ok49PTEyP049Yz80Mzo2Ok49PTk3JiYoTj0hUi5QdCYmWjxjLmxlbmd0aD84NToyNSl9fSx1KS5VPWZ1bmN0aW9uKCl7dGhpcy5Obz0oRFouTy5VLmNhbGwodGhpcyksdGhpcy5JJiZCdSg3MiwwLHRydWUsdGhpcy5JKSxudWxsKX0sdS5DWD1mdW5jdGlvbihrLFIsRyxoKXtyZXR1cm4gdGhpcy5JLkNYKFN0cmluZyhrKSxSLEcsaCl9LHUuaGFzTGlzdGVuZXI9ZnVuY3Rpb24oayxSKXtyZXR1cm4gdGhpcy5JLmhhc0xpc3RlbmVyKGshPT12b2lkIDA/U3RyaW5nKGspOnZvaWQgMCxSKX07dmFyIHNSLFVSLHJyPShYMS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5LaisiIn0sRXJyb3IpLG1EPXtGaTowLEFzOjEsemU6MiwwOiJGT1JNQVRURURfSFRNTF9DT05URU5UIiwxOiJFTUJFRERFRF9JTlRFUk5BTF9DT05URU5UIiwyOiJFTUJFRERFRF9UUlVTVEVEX0VYVEVSTkFMX0NPTlRFTlQifTtTTS5wcm90b3R5cGU9RHkocnIucHJvdG90eXBlKSxTTS5wcm90b3R5cGUuY29uc3RydWN0b3I9U007c3dpdGNoKCF0MCl7Y2FzZSAhW10hPShudWxsIT1mYWxzZSk6Zm9yKHZhciB3ciBpbiBycilpZih3ciE9InByb3RvdHlwZSIpaWYoT2JqZWN0LmRlZmluZVByb3BlcnRpZXMpe3ZhciBlOD1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHJyLHdyKTtlOCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KFNNLHdyLGU4KX1lbHNlIFNNW3dyXT1yclt3cl07YnJlYWs7Y2FzZSBmYWxzZTp0MChTTSxycik7YnJlYWt9aWYoTmFOIT09KCgodT0oIkFSVElDTEUgU0VDVElPTiBOQVYgQVNJREUgSDEgSDIgSDMgSDQgSDUgSDYgSEVBREVSIEZPT1RFUiBBRERSRVNTIFAgSFIgUFJFIEJMT0NLUVVPVEUgT0wgVUwgTEggTEkgREwgRFQgREQgRklHVVJFIEZJR0NBUFRJT04gTUFJTiBESVYgRU0gU1RST05HIFNNQUxMIFMgQ0lURSBRIERGTiBBQkJSIFJVQlkgUkIgUlQgUlRDIFJQIERBVEEgVElNRSBDT0RFIFZBUiBTQU1QIEtCRCBTVUIgU1VQIEkgQiBVIE1BUksgQkRJIEJETyBTUEFOIEJSIFdCUiBOT0JSIElOUyBERUwgUElDVFVSRSBQQVJBTSBUUkFDSyBNQVAgVEFCTEUgQ0FQVElPTiBDT0xHUk9VUCBDT0wgVEJPRFkgVEhFQUQgVEZPT1QgVFIgVEQgVEggU0VMRUNUIERBVEFMSVNUIE9QVEdST1VQIE9QVElPTiBPVVRQVVQgUFJPR1JFU1MgTUVURVIgRklFTERTRVQgTEVHRU5EIERFVEFJTFMgU1VNTUFSWSBNRU5VIERJQUxPRyBTTE9UIENBTlZBUyBGT05UIENFTlRFUiBBQ1JPTllNIEJBU0VGT05UIEJJRyBESVIgSEdST1VQIFNUUklLRSBUVCIuc3BsaXQoKFNNLk89cnIucHJvdG90eXBlLCIgIikpLmNvbmNhdChbIkJVVFRPTiIsIklOUFVUIl0pLG5uKS5wcm90b3R5cGUsdSkuRj1mdW5jdGlvbihrKXtyZXR1cm4gdHlwZW9mIGs9PT0ic3RyaW5nIj90aGlzLk1vLmdldEVsZW1lbnRCeUlkKGspOmt9LHUuZ2V0RWxlbWVudHNCeVRhZ05hbWU9ZnVuY3Rpb24oayxSKXtyZXR1cm4oUnx8dGhpcy5NbykuZ2V0RWxlbWVudHNCeVRhZ05hbWUoU3RyaW5nKGspKX0sdS5jcmVhdGVFbGVtZW50PWZ1bmN0aW9uKGssUixHKXtyZXR1cm4oRz0oUj10aGlzLk1vLFN0cmluZyhrKSksUi5jb250ZW50VHlwZT09PSJhcHBsaWNhdGlvbi94aHRtbCt4bWwiJiYoRz1HLnRvTG93ZXJDYXNlKCkpLFIpLmNyZWF0ZUVsZW1lbnQoRyl9LHUuY3JlYXRlVGV4dE5vZGU9ZnVuY3Rpb24oayl7cmV0dXJuIHRoaXMuTW8uY3JlYXRlVGV4dE5vZGUoU3RyaW5nKGspKX0sdS5hcHBlbmRDaGlsZD1mdW5jdGlvbihrLFIpe2suYXBwZW5kQ2hpbGQoUil9LHUpLmFwcGVuZD1mdW5jdGlvbihrLFIpe3RXKDE4LGZhbHNlLCJudW1iZXIiLCIiLDAsay5ub2RlVHlwZT09OT9rOmsub3duZXJEb2N1bWVudHx8ay5kb2N1bWVudCxhcmd1bWVudHMsayl9LHUuY2FuSGF2ZUNoaWxkcmVuPWZ1bmN0aW9uKGssUil7e1I9MDt3aGlsZShSIT01NSlpZihSPT0wKVI9ay5ub2RlVHlwZSE9MT85ODoyODtlbHNle2lmKFI9PTI4KXtzd2l0Y2goay50YWdOYW1lKXtjYXNlICJBUFBMRVQiOmNhc2UgIkFSRUEiOmNhc2UgIkJBU0UiOmNhc2UgIkJSIjpjYXNlICJDT0wiOmNhc2UgIkNPTU1BTkQiOmNhc2UgIkVNQkVEIjpjYXNlICJGUkFNRSI6Y2FzZSAiSFIiOmNhc2UgIklNRyI6Y2FzZSAiSU5QVVQiOmNhc2UgIklGUkFNRSI6Y2FzZSAiSVNJTkRFWCI6Y2FzZSAiS0VZR0VOIjpjYXNlICJMSU5LIjpjYXNlICJOT0ZSQU1FUyI6Y2FzZSAiTk9TQ1JJUFQiOmNhc2UgIk1FVEEiOmNhc2UgIk9CSkVDVCI6Y2FzZSAiUEFSQU0iOmNhc2UgIlNDUklQVCI6Y2FzZSAiU09VUkNFIjpjYXNlICJTVFlMRSI6Y2FzZSAiVFJBQ0siOmNhc2UgIldCUiI6cmV0dXJuIGZhbHNlfXJldHVybiB0cnVlfWlmKFI9PTk4KXJldHVybiBmYWxzZX19fSx1LnJlbW92ZU5vZGU9UGQsdS5jb250YWlucz1mdW5jdGlvbihrLFIsRyxoKXtmb3IoaD05OTtoIT0xODspe2lmKGg9PTUxKXJldHVybiBrPT1SfHxrLmNvbnRhaW5zKFIpO2lmKGg9PTg3KWg9ay5jb250YWlucyYmUi5ub2RlVHlwZT09MT81MToyNDtlbHNlIGlmKGg9PTI3KWg9MjA7ZWxzZSBpZihoPT00NylSPVIucGFyZW50Tm9kZSxoPTI3O2Vsc2UgaWYoaD09NjgpaD0yMDtlbHNle2lmKGg9PTYwKXJldHVybiBrPT1SfHwhIShHPWsuY29tcGFyZURvY3VtZW50UG9zaXRpb24oUiksLX4oRyYxNikrKEdeMTYpKyh+R14xNikpO2lmKGg9PTk5KWg9ayYmUj84Nzo1NztlbHNle2lmKGg9PTM3KXJldHVybiBSPT1rO2lmKGg9PTI0KWg9dHlwZW9mIGsuY29tcGFyZURvY3VtZW50UG9zaXRpb24hPSJ1bmRlZmluZWQiPzYwOjY4O2Vsc2UgaWYoaD09MjApaD1SJiZrIT1SPzQ3OjM3O2Vsc2UgaWYoaD09NTcpcmV0dXJuIGZhbHNlfX19fSxOdW1iZXIodW5kZWZpbmVkKSkpaFcoNzQsSVkpOygodT0oQlkoMiwoSVkucHJvdG90eXBlLmJxPShJWS5wcm90b3R5cGUuR2U9MCwiIiksNDEpLERELERaKSxERC5wcm90b3R5cGUpLHUub2E9SVkublgoKSx1LkY9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5BfSx1LmdldFBhcmVudD1mdW5jdGlvbigpe2lmKCFbXSE9KCFbXT09MCkpcmV0dXJuIHRoaXMuWjd9LHUuQnQ9ZnVuY3Rpb24oKXsoSUIoMyx0aGlzLGZ1bmN0aW9uKGspe2suam0mJmsuQnQoKX0pLHRoaXMpLnMyJiZCdSg3MSwwLHRydWUsdGhpcy5zMiksdGhpcy5qbT1mYWxzZX0sdS5VPWZ1bmN0aW9uKGspe3trPTcxO3doaWxlKGshPTY1KWs9PTQzP2s9dGhpcy5zMj8xMDo5MTprPT0xMD8odGhpcy5zMi5kaXNwb3NlKCksZGVsZXRlIHRoaXMuczIsaz05MSk6az09NzE/KHRoaXMuam0mJnRoaXMuQnQoKSxrPTQzKTprPT05MSYmKElCKDcsdGhpcyxmdW5jdGlvbihSKXtSLmRpc3Bvc2UoKX0pLCF0aGlzLlhpJiZ0aGlzLkEmJlBkKHRoaXMuQSksdGhpcy5LWD10aGlzLlFuPXRoaXMuQT10aGlzLlo3PW51bGwsREQuTy5VLmNhbGwodGhpcyksaz02NSl9fSx1KS56Zj1mdW5jdGlvbihrLFIpe3tSPTM0O3doaWxlKFIhPTIpe2lmKFI9PTM2KXRocm93IEVycm9yKCJNZXRob2Qgbm90IHN1cHBvcnRlZCIpO1I9PTM0P1I9dGhpcy5aNyYmdGhpcy5aNyE9az8zNjo5NDpSPT05NCYmKERELk8uemYuY2FsbCh0aGlzLGspLFI9Mil9fX0sdSkucmVtb3ZlQ2hpbGQ9ZnVuY3Rpb24oayxSLEcsaCxELGMsWixuLG0sQixULE4pe3tOPTMzO3doaWxlKE4hPTcxKXtpZihOPT01OSl0aHJvdyBFcnJvcigiVW5hYmxlIHRvIHNldCBwYXJlbnQgY29tcG9uZW50Iik7aWYoTj09NDcpYz10aGlzLktYLEI9KGMhPT1udWxsJiZoIGluIGM/Y1toXTp2b2lkIDApfHxudWxsLE49Mzg7ZWxzZSBpZihOPT04MilaPXRoaXMuS1gsaCBpbiBaJiZkZWxldGUgWltoXSx0VygxMywwLGssdGhpcy5RbiksTj04NztlbHNlIGlmKE49PTkxKU49KEQ9ay5jVik/MDo3ODtlbHNle2lmKE49PTkpdGhyb3cgRXJyb3IoIkNoaWxkIGlzIG5vdCBpbiBwYXJlbnQgY29tcG9uZW50Iik7aWYoTj09MCluPUQsTj04MDtlbHNlIGlmKE49PTc1KW09ayxOPTE2O2Vsc2UgaWYoTj09MTYpTj1tPT1udWxsPzU5Ojk4O2Vsc2UgaWYoTj09OTgpbS5aNz1udWxsLERELk8uemYuY2FsbChtLG51bGwpLE49NTQ7ZWxzZSBpZihOPT0zMSlOPXR5cGVvZiBrPT09InN0cmluZyI/ODE6OTE7ZWxzZSBpZihOPT00MylOPWgmJms/ODI6NTQ7ZWxzZSBpZihOPT03OClHPWsub2EsVD1HLmJxKyI6IisoRy5HZSsrKS50b1N0cmluZygzNiksRD1rLmNWPVQsTj0wO2Vsc2UgaWYoTj09NylOPXRoaXMuS1gmJmg/NDc6Mjk7ZWxzZSBpZihOPT0yOSlCPW51bGwsTj0zODtlbHNlIGlmKE49PTgxKW49ayxOPTgwO2Vsc2UgaWYoTj09NTYpay5CdCgpLGsuQSYmUGQoay5BKSxOPTc1O2Vsc2UgaWYoTj09ODcpTj1SPzU2Ojc1O2Vsc2V7aWYoTj09NDYpcmV0dXJuIGs7Tj09Mzg/KGs9QixOPTQzKTpOPT0zMz9OPWs/MzE6NTQ6Tj09ODA/KGg9bixOPTcpOk49PTU0JiYoTj1rPzQ2OjkpfX19fX07dmFyIGx6LGo4PSh1PShoVyg3NSxmciksZnIucHJvdG90eXBlKSx1LklvPWZ1bmN0aW9uKGssUixHLGgpeyhoPWsuRj9rLkYoKTprKSYmKEc/THI6VmgpKGgsW1JdKX0sdS5BeD1mdW5jdGlvbihrLFIsRyxoLEQsYyxaLG4sbSl7Wj03Mzt7bj0yNDt3aGlsZSgibyIpdHJ5e2lmKFo9PTQpYnJlYWs7ZWxzZSBaPT01Mj8oYy50YWJJbmRleD0wLFo9NCk6Wj09OD8obj0yNCxaPTIxKTpaPT0yMT8obj0yNCxaPTY3KTpaPT0yOD9aPUQhPVI/NjM6NDpaPT0yNT8oRz1oLnRhYkluZGV4LEQ9dHlwZW9mIEc9PT0ibnVtYmVyIiYmRz49MCYmRzwzMjc2OCxaPTI4KTpaPT05MD8oYy50YWJJbmRleD0tMSxjLnJlbW92ZUF0dHJpYnV0ZSgidGFiSW5kZXgiKSxaPTQpOlo9PTI5P1o9KEQ9aC5oYXNBdHRyaWJ1dGUoInRhYmluZGV4IikpPzI1OjI4Olo9PTk4P1o9Uj81Mjo5MDpaPT0xMT9aPSFSJiZNUCg1LDMyLGspPzk5OjI5Olo9PTY3P1o9TVAoNywzMixrKT84MDoyOTpaPT04MD8oay5ZZSY0JiZrLnJiJjQmJmsuc2V0QWN0aXZlKGZhbHNlKSxrLlllJjMyJiZrLnJiJjMyJiZJQigxNCw0LGssZmFsc2UsMzIpJiZrLnYoZmFsc2UsMzIpLFo9MjkpOlo9PTk5PyhuPTEyLGguYmx1cigpLFo9MjEpOlo9PTYzPyhjPWgsWj05OCk6Wj09NzMmJihaPWsucmImMzImJihoPWsuaVgoKSk/MTE6NCl9Y2F0Y2goQil7aWYobj09MjQpdGhyb3cgQjtuPT0xMiYmKG09QixaPTgpfX19LHtidXR0b246InByZXNzZWQiLGNoZWNrYm94OiJjaGVja2VkIixtZW51aXRlbToic2VsZWN0ZWQiLG1lbnVpdGVtY2hlY2tib3g6ImNoZWNrZWQiLG1lbnVpdGVtcmFkaW86ImNoZWNrZWQiLHJhZGlvOiJjaGVja2VkIix0YWI6InNlbGVjdGVkIix0cmVlaXRlbToic2VsZWN0ZWQifSk7dS5maj1mdW5jdGlvbigpe3JldHVybiJnb29nLWNvbnRyb2wifTt3aGlsZSgwPT09LU51bWJlcigpKWlmKHUuYlg9ZnVuY3Rpb24oayxSLEcsaCxELGMsWixuKXsoKGg9KG49KGx6fHwobHo9ezE6ImRpc2FibGVkIiw4OiJzZWxlY3RlZCIsMTY6ImNoZWNrZWQiLDY0OiJleHBhbmRlZCJ9KSxseltSXSksay5nZXRBdHRyaWJ1dGUoInJvbGUiKXx8bnVsbCkpPyhEPWo4W2hdfHxuLFo9bj09ImNoZWNrZWQifHxuPT0ic2VsZWN0ZWQiP0Q6bik6Wj1uLGM9WikmJk9SKDEyLDgsZmFsc2UsImhpZGRlbiIsayxHLGMpfSx0cnVlKWJyZWFrO2lmKHUuaVg9KHUudj1mdW5jdGlvbihrLFIsRyxoLEQsYyxaKXt7Wj03OTt3aGlsZShaIT0xKVo9PTA/KGg9dGhpcy5maigpLGgucmVwbGFjZSgvXFx4YTB8XFxzL2csIiAiKSx0aGlzLlprPXsxOmgrIi1kaXNhYmxlZCIsMjpoKyItaG92ZXIiLDQ6aCsiLWFjdGl2ZSIsODpoKyItc2VsZWN0ZWQiLDE2OmgrIi1jaGVja2VkIiwzMjpoKyItZm9jdXNlZCIsNjQ6aCsiLW9wZW4ifSxaPTU2KTpaPT03OT8oRD1SLkYoKSxaPTIwKTpaPT0yMD9aPUQ/MTM6MTpaPT01Nj8oKGM9dGhpcy5aa1trXSkmJnRoaXMuSW8oUixjLEcpLHRoaXMuYlgoRCxrLEcpLFo9MSk6Wj09MTMmJihaPXRoaXMuWms/NTY6MCl9fSxmdW5jdGlvbihrKXtyZXR1cm4gay5GKCl9KSxbXSlCWSgyLDQ0LEZYLGZyKTt2YXIgbnI9KChoVyg3MixGWCksRlgpLnByb3RvdHlwZS5maj1mdW5jdGlvbigpe3JldHVybiJnb29nLWJ1dHRvbiJ9LEZYLnByb3RvdHlwZS5iWD1mdW5jdGlvbihrLFIsRyl7c3dpdGNoKFIpe2Nhc2UgODpjYXNlIDE2Ok9SKDEyLDUsZmFsc2UsImhpZGRlbiIsayxHLCJwcmVzc2VkIik7YnJlYWs7ZGVmYXVsdDpjYXNlIDY0OmNhc2UgMTpGWC5PLmJYLmNhbGwodGhpcyxrLFIsRyl9fSx7fSk7aWYoKCgoKCgoKCh1PShCWSgyLDQyLGI5LEREKSxiOSkucHJvdG90eXBlLHUpLmppPXRydWUsdSkuSW89ZnVuY3Rpb24oayxSLEcpe2ZvcihHPTU2O0chPTI0OylHPT04Mj8odGhpcy5EP2UoNDMsMCxrLHRoaXMuRCl8fHRoaXMuRC5wdXNoKGspOnRoaXMuRD1ba10sdGhpcy5DLklvKHRoaXMsayx0cnVlKSxHPTI0KTpHPT03Mz8odGhpcy5DLklvKHRoaXMsayxmYWxzZSksRz0yNCk6Rz09MTk/Rz10aGlzLkQubGVuZ3RoPT0wPzQwOjczOkc9PTQwPyh0aGlzLkQ9bnVsbCxHPTczKTpHPT01Nj9HPVI/MTM6NzE6Rz09MTM/Rz1rPzgyOjI0Okc9PTcxJiYoRz1rJiZ0aGlzLkQmJnRXKDYsMCxrLHRoaXMuRCk/MTk6MjQpfSx1KS5pWD1mdW5jdGlvbigpe3JldHVybiB0aGlzLkMuaVgodGhpcyl9LHUucmI9MzksdSkuaXE9MCx1KS5ZZT0yNTUsdS5CdD1mdW5jdGlvbigpeygoYjkuTy5CdC5jYWxsKHRoaXMpLHRoaXMuVTIpJiZ0aGlzLlUyLmRldGFjaCgpLHRoaXMuaXNWaXNpYmxlKCkmJnRoaXMuaXNFbmFibGVkKCkpJiZ0aGlzLkMuQXgodGhpcyxmYWxzZSl9LHUuVT1mdW5jdGlvbihrKXt7az03NTt3aGlsZShrIT02MilrPT03MD8oZGVsZXRlIHRoaXMuQyx0aGlzLkQ9bnVsbCxrPTYyKTprPT01Mz9rPXRoaXMuVTI/OTE6NzA6az09OTE/KHRoaXMuVTIuZGlzcG9zZSgpLGRlbGV0ZSB0aGlzLlUyLGs9NzApOms9PTc1JiYoYjkuTy5VLmNhbGwodGhpcyksaz01Myl9fSx1KS5EPW51bGwsdS5PMj0wLHUuaXNWaXNpYmxlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaml9LHUpLmlzRW5hYmxlZD1mdW5jdGlvbigpe3JldHVybiFNUCgxMCwxLHRoaXMpfSx1LmlzQWN0aXZlPWZ1bmN0aW9uKCl7cmV0dXJuIE1QKDksNCx0aGlzKX0sdS5zZXRBY3RpdmU9ZnVuY3Rpb24oayl7SUIoMTAsNCx0aGlzLGssNCkmJnRoaXMudihrLDQpfSx1KS5nZXRTdGF0ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLk8yfSx1LnY9ZnVuY3Rpb24oayxSLEcsaCxELGMsWil7Zm9yKFo9Nzg7WiE9ODk7KVo9PTgzPyhEPSFrLGM9dGhpcy5nZXRQYXJlbnQoKSxaPTM1KTpaPT0xNj9aPUQ/MTQ6NzQ6Wj09NzQ/KHRoaXMuc2V0QWN0aXZlKGZhbHNlKSxJQigxMiw0LHRoaXMsZmFsc2UsMikmJnRoaXMudihmYWxzZSwyKSxaPTE0KTpaPT0yNT8odGhpcy5DLnYoUix0aGlzLGspLHRoaXMuTzI9az8oaD10aGlzLk8yLC0xLX5oLShoJn5SKSsoaF5SKSk6dGhpcy5PMiZ+UixaPTg5KTpaPT00Mj9aPXRoaXMucmImUiYmayE9TVAoMyxSLHRoaXMpPzI1Ojg5Olo9PTM1P1o9YyYmdHlwZW9mIGMuaXNFbmFibGVkPT0iZnVuY3Rpb24iJiYhYy5pc0VuYWJsZWQoKXx8IUlCKDMyLDQsdGhpcywhRCwxKT84OToxNjpaPT03OD9aPUd8fFIhPTE/NDI6ODM6Wj09MTQmJih0aGlzLmlzVmlzaWJsZSgpJiZ0aGlzLkMuQXgodGhpcyxEKSx0aGlzLnYoIUQsMSx0cnVlKSxaPTg5KX0sdHlwZW9mIGI5IT09ImZ1bmN0aW9uIil0aHJvdyBFcnJvcigiSW52YWxpZCBjb21wb25lbnQgY2xhc3MgIitiOSk7aWYodHlwZW9mIGZyIT09ImZ1bmN0aW9uIil0aHJvdyBFcnJvcigiSW52YWxpZCByZW5kZXJlciBjbGFzcyAiK2ZyKTt2YXIgYVk9Q24oNjQsMTcsYjkpOygoQlkoMiw0MCxnVSwoKEJZKDIsNDYsUWYsKGEoNixmdW5jdGlvbigpe3JldHVybiBuZXcgYjkobnVsbCl9LChuclthWV09ZnIsImdvb2ctY29udHJvbCIpKSxGWCkpLGhXKDczLFFmKSxRZi5wcm90b3R5cGUuQXg9ZnVuY3Rpb24oKXt9LFFmLnByb3RvdHlwZSkudj1mdW5jdGlvbihrLFIsRyxoLEQpe3tEPTkxO3doaWxlKEQhPTQyKUQ9PTkxPyhRZi5PLnYuY2FsbCh0aGlzLGssUixHKSxoPVIuRigpLEQ9NjEpOkQ9PTgzPyhoLmRpc2FibGVkPUcsRD00Mik6RD09NjEmJihEPWgmJms9PTE/ODM6NDIpfX0sUWYucHJvdG90eXBlLmJYPWZ1bmN0aW9uKCl7fSxiOSkpLGdVLnByb3RvdHlwZSkuVT1mdW5jdGlvbigpe2RlbGV0ZSAoZGVsZXRlIChnVS5PLlUuY2FsbCh0aGlzKSx0aGlzKS5KMyx0aGlzKS5kTn0sYSkoNSxmdW5jdGlvbigpe3JldHVybiBuZXcgZ1UobnVsbCl9LCJnb29nLWJ1dHRvbiIpO3ZhciBaRCx1OT1ILnJlcXVlc3RJZGxlQ2FsbGJhY2s/ZnVuY3Rpb24oayl7cmVxdWVzdElkbGVDYWxsYmFjayhmdW5jdGlvbigpe2soKX0se3RpbWVvdXQ6NH0pfTpILnNldEltbWVkaWF0ZT9mdW5jdGlvbihrKXtzZXRJbW1lZGlhdGUoayl9OmZ1bmN0aW9uKGspe3NldFRpbWVvdXQoaywwKX0sb3Y9e3Bhc3NpdmU6dHJ1ZSxjYXB0dXJlOnRydWV9LFZmPW9CKDEzLDEwLFsiaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9qcy9iZy8iLCIiXSksdlk9U3RyaW5nLmZyb21DaGFyQ29kZSgxMDUsMTEwLDExNiwxMDEsMTAzLDY3LDEwNCwxMDEsOTksMTA3LDY2LDEyMSwxMTIsOTcsMTE1LDExNSksd1U9e30sJGY9W10sUlk9KHgucHJvdG90eXBlLlB3PXZvaWQgMCx4LnByb3RvdHlwZS5MWD0oeC5wcm90b3R5cGUuTm09ZmFsc2UsInRvU3RyaW5nIiksW10pLGRyPVtdLEFvPSh4LnByb3RvdHlwZS5mUT12b2lkIDAsW10pLEJkPVtdLG1jPVtdLEd0PVtdLE1UPVtdLHhuPVtdLHpOPWZ1bmN0aW9uKGssUil7d2hpbGUoIVtdPT1mYWxzZSl7cmV0dXJuKFI9QVcoNDEsImFkIiwxNykpJiZrLmV2YWwoUi5jcmVhdGVTY3JpcHQoIjEiKSk9PT0xP2Z1bmN0aW9uKEcpe3JldHVybiBSLmNyZWF0ZVNjcmlwdChHKX06ZnVuY3Rpb24oRyl7cmV0dXJuIiIrR307aWYoImEiKWJyZWFrfX0oSCkseXI9ZnVuY3Rpb24oayl7cmV0dXJuKGs9QVcoNDEsImFkIiwxNikpP2Z1bmN0aW9uKFIpe3JldHVybiBrLmNyZWF0ZVNjcmlwdFVSTChSKX06ZnVuY3Rpb24oUil7cmV0dXJuIFJ9fSgpLEVlPWZ1bmN0aW9uKGspe3JldHVybihrPUFXKDQxLCJhZCIsMTkpKT9mdW5jdGlvbihSKXtyZXR1cm4gay5jcmVhdGVIVE1MKFIpfTpmdW5jdGlvbihSKXtyZXR1cm4gUn19KCkseWY9KCgoKChpTixZZixTOCxueCxaeSxmdW5jdGlvbigpe30pKEU1KSxmdW5jdGlvbigpe30pKFdZKSxmdW5jdGlvbigpe30pKHM1KSx5cixmdW5jdGlvbigpe30pKEVlKSx3VSkuY29uc3RydWN0b3IsU2U9KCgoKCgoKHgucHJvdG90eXBlLkxqPTAseC5wcm90b3R5cGUuUj0odT14LnByb3RvdHlwZSwiY3JlYXRlIiksdSkuSj0od2luZG93LnBlcmZvcm1hbmNlfHx7fSkubm93P2Z1bmN0aW9uKCl7cmV0dXJuIHRoaXMuUmErd2luZG93LnBlcmZvcm1hbmNlLm5vdygpfTpmdW5jdGlvbigpe3JldHVybituZXcgRGF0ZX0sdSkuaHM9ZnVuY3Rpb24oayxSLEcsaCxEKXtyZXR1cm4gQ24uY2FsbCh0aGlzLDY0LDMyLGssUixHLGgsRCl9LHUpLlJvPWZ1bmN0aW9uKCl7cmV0dXJuIGhXLmNhbGwodGhpcyw1Nil9LHUpLnNfPWZ1bmN0aW9uKGssUixHLGgsRCxjLFosbil7cmV0dXJuIE1QLmNhbGwodGhpcyw1NixrLFIsRyxoLEQsYyxaLG4pfSx1KS50cz1mdW5jdGlvbihrLFIsRyxoLEQsYyxaLG4sbSxCKXtyZXR1cm4gUkIuY2FsbCh0aGlzLDIxLGssUixHLGgsRCxjLFosbixtLEIpfSx1LnBqPWZ1bmN0aW9uKCl7cmV0dXJuIFJCLmNhbGwodGhpcyw2NCl9LHUpLnBYPWZ1bmN0aW9uKGssUixHLGgsRCl7cmV0dXJuIFkuY2FsbCh0aGlzLGssOSxSLEcsaCxEKX0sdS5IVj0wLHZvaWQgMCksSm89KHU9eC5wcm90b3R5cGUsdS5pPWZ1bmN0aW9uKGssUil7cmV0dXJuIFI9KGs9e30sU2U9ZnVuY3Rpb24oKXtyZXR1cm4gaz09Uj81ODoxMDZ9LHt9KSxmdW5jdGlvbihHLGgsRCxjLFosbixtLEIsVCxOLFAsZCxJLFMsWCxNLHIsbCx3LEUsRiwkbixHbyxKLHYsTyx5LHdKLHosUHUsbTcsZyxlTSxMLFU1LHQsVSxPNSxZbixwLEN4KXtmb3IodD0zMixVPXVuZGVmaW5lZCxwPTIwLEN4PWZhbHNlOzspdHJ5e2lmKHQ9PTY1KWJyZWFrO2Vsc2UgaWYodD09NDQpdD1CPzc3OjEwO2Vsc2UgaWYodD09OTEpcD00NyxiTig1NywzMDAwMSx0aGlzLDQxKSx0PTM3O2Vsc2UgaWYodD09ODcpcD00Nyxhdig1MDYsdGhpcywxNyxPNSksVT02NSx0PTM3O2Vsc2UgaWYodD09MjcpVSE9PXVuZGVmaW5lZD8odD1VLFU9dW5kZWZpbmVkKTp0PTY1O2Vsc2UgaWYodD09MjkpcD00Nyx0PTk1O2Vsc2UgaWYodD09MTcpcD01NSxHbygpLHQ9OTU7ZWxzZSBpZih0PT00MSl0PVA9PW1jPzI0OjIxO2Vsc2UgaWYodD09NzApdD0zOTtlbHNlIGlmKHQ9PTU3KXQ9Zy5sZW5ndGg+ND81NjozNjtlbHNlIGlmKHQ9PTI4KU4ubGVuZ3RoPTAsdD0zNztlbHNlIGlmKHQ9PTYpcD03MCx0aGlzLndiPU5UKDI1NSw0MCwwLGF0b2IoJG4pKSx0aGlzLmo9dGhpcy53Yi5sZW5ndGg8PDMsQSgzNjMsdGhpcyxbMCwwLDBdKSx0PTkxO2Vsc2UgaWYodD09MjIpe2lmKEU9KE49Vyh0aGlzLDcxKSx0eXBlb2YgU3ltYm9sIT0idW5kZWZpbmVkIiYmU3ltYm9sLml0ZXJhdG9yKSYmTltTeW1ib2wuaXRlcmF0b3JdKXo9RS5jYWxsKE4pO2Vsc2UgaWYodHlwZW9mIE4ubGVuZ3RoPT0ibnVtYmVyIil6PXtuZXh0Ok9SKDEyLDcyLDAsTil9O2Vsc2UgdGhyb3cgRXJyb3IoU3RyaW5nKE4pKyIgaXMgbm90IGFuIGl0ZXJhYmxlIG9yIEFycmF5TGlrZSIpO3Q9KFQ9KHk9eix5Lm5leHQoKSksNDgpfWVsc2UgaWYodD09Nyl0PUdbNF0/NjQ6NTk7ZWxzZSBpZih0PT02NCl7Zm9yKFggaW4gQj1mYWxzZSxoKWlmKFghPT0idCImJk9iamVjdC5oYXNPd24oaCxYKSl7Qj10cnVlO2JyZWFrfXQ9NDR9ZWxzZSBpZih0PT01Myl0PVA9PUJkPzgyOjQzO2Vsc2UgaWYodD09MzgpSj0wLE89IiIsdD03MDtlbHNlIGlmKHQ9PTU2KXQ9Zy5sZW5ndGg+MUU2Pzg4Ojk3O2Vsc2UgaWYodD09MTUpWW49UWgoMCxHWzFdLDE1NywzMDAwMSx0aGlzKSxVPTk5LHQ9Mzc7ZWxzZSBpZih0PT00Myl0PVA9PUFvPzgxOjQxO2Vsc2UgaWYodD09MjUpdD1QPT1kcj8yMjozNztlbHNlIGlmKHQ9PTMyKWVNPWssaz1SLHQ9MztlbHNlIGlmKHQ9PTk2KWg9e30sdj0wLHQ9ODtlbHNlIGlmKHQ9PTg4KWc9Zy5zbGljZSgwLDFFNiksbE4oNDg4LFtdLDcsdGhpcywxMDIpLGplKDQ4OCxbXSx0aGlzLDEzNSksdD05NztlbHNlIGlmKHQ9PTY4KSRuPUdbMV0sdD02O2Vsc2UgaWYodD09NjYpSisrLHQ9Mzk7ZWxzZSBpZih0PT03NCl0PU8/Nzk6Mzg7ZWxzZSBpZih0PT04MSlyPUdbMV1bMV0sYz1LKDIsKG09Yih0aGlzLDQ4OCkubGVuZ3RoLC0yKn4obSYyKSstMisobV4yKSkpLHdKPXRoaXMuQix0aGlzLkI9dGhpcyx0PTExO2Vsc2UgaWYodD09MjQpUWgoMCxHWzFdLDE1NyxHWzJdLHRoaXMpLHQ9Mzc7ZWxzZSBpZih0PT0xOSl0PVUhPT11bmRlZmluZWQ/Mzc6NDtlbHNlIGlmKHQ9PTQpcD00NyxTPVlmKDIpLmNvbmNhdChiKHRoaXMsNDg4KSksU1sxXT0oTT1TWzBdLC0oTXwwKSsoTXwxNTkpKyhNJi0xNjApKSxTWzNdPVNbMV1eY1swXSxTWzRdPVNbMV1eY1sxXSxPPXRoaXMubmooUyksdD03NDtlbHNlIGlmKHQ9PTM2KXA9NDcsdGhpcy5CPXdKLHQ9MTk7ZWxzZSBpZih0PT05NSlUPXkubmV4dCgpLHQ9NDI7ZWxzZSBpZih0PT01MSl0PVA9PSRmPzk2OjUzO2Vsc2UgaWYodD09NTkpdGhpcy5QLnB1c2gobCksdGhpcy5QLnB1c2godyksVT02NSx0PTM3O2Vsc2UgaWYodD09MzkpdD1KPFMubGVuZ3RoPzYwOjYyO2Vsc2UgaWYodD09NzcpWW49e1FUOncsYWE6bCx0aW1lb3V0OnYsTW06ZmFsc2UsSWE6MH0sVT02Myx0PTM3O2Vsc2UgaWYodD09MzMpdD1QPT1HdD82ODo1MTtlbHNlIGlmKHQ9PTQyKXQ9VC5kb25lPzI4Ojk4O2Vsc2UgaWYodD09ODIpbj1HWzFdLG5bMV0ucHVzaChWKDE5MSx0aGlzKS5sZW5ndGgsVyh0aGlzLDE0KS5sZW5ndGgsVyh0aGlzLDQ4OCkubGVuZ3RoLGIodGhpcyw0NDYpLmxlbmd0aCxiKHRoaXMsMTYzKS5sZW5ndGgsYih0aGlzLDMwMilbMF0sVigyNjQsdGhpcykubGVuZ3RoLFcodGhpcyw0MikubGVuZ3RoKSxRKHRoaXMsMTU3LG5bMl0pLHRoaXMuWVs0NjldJiZRaCgwLFYoNDY5LHRoaXMpLDE1NywzMDAwMSx0aGlzKSx0PTM3O2Vsc2UgaWYodD09OTgpR289VC52YWx1ZSx0PTE3O2Vsc2UgaWYodD09NDApcD00Nyx3PVtCZCxHLHRoaXMuUm8oKV0sbD1bQW8sR10sdD03O2Vsc2UgaWYodD09MylwPTQ3LFA9R1swXSx0PTMzO2Vsc2UgaWYodD09MzcpcD0yMCxrPWVNLHQ9Mjc7ZWxzZXtpZih0PT00NylyZXR1cm4gWW47aWYodD09OClwPTc3LGg9Yih0aGlzLDU1KXx8e30sdj1oLnR8MCx0PTQwO2Vsc2UgaWYodD09NjApZD1TW0pdW3RoaXMuTFhdKDE2KSxkLmxlbmd0aD09MSYmKGQ9IjAiK2QpLE8rPWQsdD02NjtlbHNlIGlmKHQ9PTk3KWplKDQ4OCxLKDIsZy5sZW5ndGgpLmNvbmNhdChnKSx0aGlzLDUpLHQ9MzY7ZWxzZSBpZih0PT0xMSlwPTc2LG03PWIodGhpcyw1MDYpLG03Lmxlbmd0aD4wJiZsTig0ODgsSygyLG03Lmxlbmd0aCkuY29uY2F0KG03KSw3LHRoaXMsMTQ3KSxsTig0ODgsSygxLHRoaXMuSCsxPj4xKSw3LHRoaXMsMjQ0KSxqZSg0ODgsSygxLHRoaXNbQW9dLmxlbmd0aCksdGhpcyksUHU9dGhpcy5IdD9WKDE2Myx0aGlzKTpiKHRoaXMsNDQ2KSxQdS5sZW5ndGg+MCYmbE4oMTQsSygyLFB1Lmxlbmd0aCkuY29uY2F0KFB1KSw3LHRoaXMsMjI3KSxGPVYoMTQsdGhpcyksRi5sZW5ndGg+NCYmamUoNDg4LEsoMixGLmxlbmd0aCkuY29uY2F0KEYpLHRoaXMsMjI2KSxJPTAsSSs9Yih0aGlzLDEwMykmMjA0NyxJLT0oWj1WKDQ4OCx0aGlzKS5sZW5ndGgsLTItMip+KFp8NSktKFpeNSkpLGc9Vig0Mix0aGlzKSxnLmxlbmd0aD40JiYoSS09KGcubGVuZ3RofDApKzMpLEk+MCYmamUoNDg4LEsoMixJKS5jb25jYXQoWWYoSSkpLHRoaXMsMTUwKSx0PTU3O2Vsc2UgaWYodD09NzkpTz0iJCIrTyx0PTYyO2Vsc2V7aWYodD09OTkpcmV0dXJuIFluO2lmKHQ9PTEwKXRoaXMuUC5wdXNoKGwpLHRoaXMuUC5wdXNoKHcpLFU9NjUsdD0zNztlbHNlIGlmKHQ9PTIxKXQ9UD09TVQ/MTU6MjU7ZWxzZSBpZih0PT02MilEPU8sYih0aGlzLDE5MSkubGVuZ3RoPXIuc2hpZnQoKSxiKHRoaXMsMTQpLmxlbmd0aD1yLnNoaWZ0KCksVyh0aGlzLDQ4OCkubGVuZ3RoPXIuc2hpZnQoKSxXKHRoaXMsNDQ2KS5sZW5ndGg9ci5zaGlmdCgpLFYoMTYzLHRoaXMpLmxlbmd0aD1yLnNoaWZ0KCksVigzMDIsdGhpcylbMF09ci5zaGlmdCgpLFcodGhpcywyNjQpLmxlbmd0aD1yLnNoaWZ0KCksVyh0aGlzLDQyKS5sZW5ndGg9ci5zaGlmdCgpLFluPUQsVT00Nyx0PTM3O2Vsc2V7aWYodD09NjMpcmV0dXJuIFluO2lmKHQ9PTQ4KXQ9NDI7ZWxzZSBpZih0PT05MCl0aHJvdyBVNTt9fX19Y2F0Y2goaG8pe2lmKHA9PShVNT1obywyMCkpdGhyb3cgaG87cD09NDc/KFU9OTAsdD0zNyk6cD09NzA/KE81PWhvLHQ9ODcpOnA9PTc2PyhVPTkwLHQ9MzYpOnA9PTc3PyhVPTkwLHQ9NDApOnA9PTU1JiYoTD1obyx0PTI5KX19fSgpLHUudXE9ZnVuY3Rpb24oayl7cmV0dXJuIEJZLmNhbGwodGhpcyxrLDcyKX0sLy4vKTtpZih0cnVlKXUubmo9ZnVuY3Rpb24oayl7cmV0dXJuIENuLmNhbGwodGhpcyw2NCw4LGspfTt2YXIgeGY7aWYodS5TaT0odS50eD1mdW5jdGlvbigpe3JldHVybiBDbi5jYWxsKHRoaXMsNjQsNDgpfSwwKSx0cnVlKXUuck49MDt2YXIgSGQ9R3QucG9wLmJpbmQoeC5wcm90b3R5cGVbeC5wcm90b3R5cGVbUlldPSh1LmVpPWZ1bmN0aW9uKCl7cmV0dXJuIE9SLmNhbGwodGhpcywxMiwxNCl9LFswLDAsMSwxLDAsMSwxXSksQmRdKTsoWkQ9KHhmPXRXKDkzLChKb1t4LnByb3RvdHlwZS5MWF09SGQse2dldDpIZH0pLHgucHJvdG90eXBlLlIpLHgucHJvdG90eXBlLldWPXZvaWQgMCxILnRyYXlyaWRlKXx8KEgudHJheXJpZGU9e30pLFpELm0+NDB8fChaRC5tPTQxLFpELmFkPWgwLFpELmE9Z0opLFpEKS5ScnZfPWZ1bmN0aW9uKGssUixHLGgsRCxjLFosbixtLEIpe3JldHVybltmdW5jdGlvbihUKXtyZXR1cm4gTG4oMyxmYWxzZSxCLDcsVCl9LChCPW5ldyB4KGgsayxELGMsUixtLG4sWiksZnVuY3Rpb24oVCl7Qi50eChUKX0pXX07fSkuY2FsbCh0aGlzKTsnXS5qb2luKCdcbicpKSk7fSkuY2FsbCh0aGlzKTs="}},"time_used":43,"timings":{"blocked":0,"dns":3,"connect":23,"send":0,"wait":10,"receive":6,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/kit.fontawesome.com/e44d5a293a.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.025Z","timestamp":1785126256025,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /kit.fontawesome.com/e44d5a293a.js HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\r\nSec-Fetch-Dest: script\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: W/\"65211e70-1696\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":5782,"size_decoded":2164,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (5479)","md5":"a8e6a3dde655976cfaa1ae45d67d78de","sha1":"59d0646c28ea61558c1266ba00002a84b20868d9","sha256":"717360f1759b6925a3e40ea293d825b50fc17e8bf7e849de44d70769664bf696","sha512":"1fc3d0b6a933ba2cd69740153152bfdced30d5e34eee434580ced337c784417ae85d89942a84cea15be5e5780caec0d35b281bc08b3dd72d4018ae98030f9f40","ssdeep":"96:fc8ry8qLx58VFng4FebYuiTeDILE/Dif7Tq7ceP+tDVEpFH:fc8ry0ngIxuoE/OTTqn409","tlshash":"73c1b8eb7102367e599ba755c13b3398763196226403d460a52dccac983efd40637fbb","first_seen":"2023-03-07T01:20:20Z","last_seen":"2026-07-27T04:25:12.743443Z","times_seen":82,"resource_available":true,"data":"d2luZG93LkZvbnRBd2Vzb21lS2l0Q29uZmlnID0geyJhc3luY0xvYWRpbmciOnsiZW5hYmxlZCI6dHJ1ZX0sImF1dG9BMTF5Ijp7ImVuYWJsZWQiOnRydWV9LCJiYXNlVXJsIjoiaHR0cHM6Ly9raXQtZnJlZS5mb250YXdlc29tZS5jb20iLCJkZXRlY3RDb25mbGljdHNVbnRpbCI6bnVsbCwibGljZW5zZSI6ImZyZWUiLCJtZXRob2QiOiJjc3MiLCJtaW5pZnkiOnsiZW5hYmxlZCI6dHJ1ZX0sInY0Rm9udEZhY2VTaGltIjp7ImVuYWJsZWQiOnRydWV9LCJ2NHNoaW0iOnsiZW5hYmxlZCI6dHJ1ZX0sInZlcnNpb24iOiJsYXRlc3QifTsKIWZ1bmN0aW9uKCl7ZnVuY3Rpb24gcihlKXt2YXIgdCxuPVtdLGk9ZG9jdW1lbnQsbz1pLmRvY3VtZW50RWxlbWVudC5kb1Njcm9sbCxyPSJET01Db250ZW50TG9hZGVkIixhPShvPy9ebG9hZGVkfF5jLzovXmxvYWRlZHxeaXxeYy8pLnRlc3QoaS5yZWFkeVN0YXRlKTthfHxpLmFkZEV2ZW50TGlzdGVuZXIocix0PWZ1bmN0aW9uKCl7Zm9yKGkucmVtb3ZlRXZlbnRMaXN0ZW5lcihyLHQpLGE9MTt0PW4uc2hpZnQoKTspdCgpfSksYT9zZXRUaW1lb3V0KGUsMCk6bi5wdXNoKGUpfSFmdW5jdGlvbigpe2lmKCEodm9pZCAwPT09d2luZG93LkVsZW1lbnR8fCJjbGFzc0xpc3QiaW4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KSl7dmFyIGUsdCxuLGk9QXJyYXkucHJvdG90eXBlLG89aS5wdXNoLHI9aS5zcGxpY2UsYT1pLmpvaW47ZC5wcm90b3R5cGU9e2FkZDpmdW5jdGlvbihlKXt0aGlzLmNvbnRhaW5zKGUpfHwoby5jYWxsKHRoaXMsZSksdGhpcy5lbC5jbGFzc05hbWU9dGhpcy50b1N0cmluZygpKX0sY29udGFpbnM6ZnVuY3Rpb24oZSl7cmV0dXJuLTEhPXRoaXMuZWwuY2xhc3NOYW1lLmluZGV4T2YoZSl9LGl0ZW06ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXNbZV18fG51bGx9LHJlbW92ZTpmdW5jdGlvbihlKXtpZih0aGlzLmNvbnRhaW5zKGUpKXtmb3IodmFyIHQ9MDt0PHRoaXMubGVuZ3RoJiZ0aGlzW3RdIT1lO3QrKyk7ci5jYWxsKHRoaXMsdCwxKSx0aGlzLmVsLmNsYXNzTmFtZT10aGlzLnRvU3RyaW5nKCl9fSx0b1N0cmluZzpmdW5jdGlvbigpe3JldHVybiBhLmNhbGwodGhpcywiICIpfSx0b2dnbGU6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuY29udGFpbnMoZSk/dGhpcy5yZW1vdmUoZSk6dGhpcy5hZGQoZSksdGhpcy5jb250YWlucyhlKX19LHdpbmRvdy5ET01Ub2tlbkxpc3Q9ZCxlPUVsZW1lbnQucHJvdG90eXBlLHQ9ImNsYXNzTGlzdCIsbj1mdW5jdGlvbigpe3JldHVybiBuZXcgZCh0aGlzKX0sT2JqZWN0LmRlZmluZVByb3BlcnR5P09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQse2dldDpufSk6ZS5fX2RlZmluZUdldHRlcl9fKHQsbil9ZnVuY3Rpb24gZChlKXtmb3IodmFyIHQ9KHRoaXMuZWw9ZSkuY2xhc3NOYW1lLnJlcGxhY2UoL15ccyt8XHMrJC9nLCIiKS5zcGxpdCgvXHMrLyksbj0wO248dC5sZW5ndGg7bisrKW8uY2FsbCh0aGlzLHRbbl0pfX0oKTtmdW5jdGlvbiBhKGUpe3ZhciB0LG4saSxvO3ByZWZpeGVzQXJyYXk9ZXx8WyJmYSJdLHByZWZpeGVzU2VsZWN0b3JTdHJpbmc9Ii4iK0FycmF5LnByb3RvdHlwZS5qb2luLmNhbGwoZSwiLC4iKSx0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwocHJlZml4ZXNTZWxlY3RvclN0cmluZyksQXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbCh0LGZ1bmN0aW9uKGUpe249ZS5nZXRBdHRyaWJ1dGUoInRpdGxlIiksZS5zZXRBdHRyaWJ1dGUoImFyaWEtaGlkZGVuIiwidHJ1ZSIpLGk9IWUubmV4dEVsZW1lbnRTaWJsaW5nfHwhZS5uZXh0RWxlbWVudFNpYmxpbmcuY2xhc3NMaXN0LmNvbnRhaW5zKCJzci1vbmx5IiksbiYmaSYmKChvPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKSkuaW5uZXJIVE1MPW4sby5jbGFzc0xpc3QuYWRkKCJzci1vbmx5IiksZS5wYXJlbnROb2RlLmluc2VydEJlZm9yZShvLGUubmV4dFNpYmxpbmcpKX0pfXZhciBkPWZ1bmN0aW9uKGUsdCl7dmFyIG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgibGluayIpO24uaHJlZj1lLG4ubWVkaWE9ImFsbCIsbi5yZWw9InN0eWxlc2hlZXQiLG4uaWQ9ImZvbnQtYXdlc29tZS01LWtpdC1jc3MiLHQmJnQuZGV0ZWN0aW5nQ29uZmxpY3RzJiZ0LmRldGVjdGlvbklnbm9yZUF0dHImJm4uc2V0QXR0cmlidXRlTm9kZShkb2N1bWVudC5jcmVhdGVBdHRyaWJ1dGUodC5kZXRlY3Rpb25JZ25vcmVBdHRyKSksZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImhlYWQiKVswXS5hcHBlbmRDaGlsZChuKX0sYz1mdW5jdGlvbihlLHQpeyFmdW5jdGlvbihlLHQpe3ZhciBuLGk9dCYmdC5iZWZvcmV8fHZvaWQgMCxvPXQmJnQubWVkaWF8fHZvaWQgMCxyPXdpbmRvdy5kb2N1bWVudCxhPXIuY3JlYXRlRWxlbWVudCgibGluayIpO2lmKHQmJnQuZGV0ZWN0aW5nQ29uZmxpY3RzJiZ0LmRldGVjdGlvbklnbm9yZUF0dHImJmEuc2V0QXR0cmlidXRlTm9kZShkb2N1bWVudC5jcmVhdGVBdHRyaWJ1dGUodC5kZXRlY3Rpb25JZ25vcmVBdHRyKSksaSluPWk7ZWxzZXt2YXIgZD0oci5ib2R5fHxyLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJoZWFkIilbMF0pLmNoaWxkTm9kZXM7bj1kW2QubGVuZ3RoLTFdfXZhciBjPXIuc3R5bGVTaGVldHM7YS5yZWw9InN0eWxlc2hlZXQiLGEuaHJlZj1lLGEubWVkaWE9Im9ubHkgeCIsZnVuY3Rpb24gZSh0KXtpZihyLmJvZHkpcmV0dXJuIHQoKTtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZSh0KX0pfShmdW5jdGlvbigpe24ucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoYSxpP246bi5uZXh0U2libGluZyl9KTt2YXIgcz1mdW5jdGlvbihlKXtmb3IodmFyIHQ9YS5ocmVmLG49Yy5sZW5ndGg7bi0tOylpZihjW25dLmhyZWY9PT10KXJldHVybiBlKCk7c2V0VGltZW91dChmdW5jdGlvbigpe3MoZSl9KX07ZnVuY3Rpb24gbCgpe2EuYWRkRXZlbnRMaXN0ZW5lciYmYS5yZW1vdmVFdmVudExpc3RlbmVyKCJsb2FkIixsKSxhLm1lZGlhPW98fCJhbGwifWEuYWRkRXZlbnRMaXN0ZW5lciYmYS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixsKSwoYS5vbmxvYWRjc3NkZWZpbmVkPXMpKGwpfShlLHQpfSxlPWZ1bmN0aW9uKGUsdCxuKXt2YXIgaT10JiZ2b2lkIDAhPT10LmF1dG9GZXRjaFN2Zz90LmF1dG9GZXRjaFN2Zzp2b2lkIDAsbz10JiZ2b2lkIDAhPT10LmFzeW5jP3QuYXN5bmM6dm9pZCAwLHI9dCYmdm9pZCAwIT09dC5hdXRvQTExeT90LmF1dG9BMTF5OnZvaWQgMCxhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpLGQ9ZG9jdW1lbnQuc2NyaXB0c1swXTthLnNyYz1lLHZvaWQgMCE9PXImJmEuc2V0QXR0cmlidXRlKCJkYXRhLWF1dG8tYTExeSIscj8idHJ1ZSI6ImZhbHNlIiksaSYmKGEuc2V0QXR0cmlidXRlTm9kZShkb2N1bWVudC5jcmVhdGVBdHRyaWJ1dGUoImRhdGEtYXV0by1mZXRjaC1zdmciKSksYS5zZXRBdHRyaWJ1dGUoImRhdGEtZmV0Y2gtc3ZnLWZyb20iLHQuZmV0Y2hTdmdGcm9tKSksbyYmYS5zZXRBdHRyaWJ1dGVOb2RlKGRvY3VtZW50LmNyZWF0ZUF0dHJpYnV0ZSgiZGVmZXIiKSksbiYmbi5kZXRlY3RpbmdDb25mbGljdHMmJm4uZGV0ZWN0aW9uSWdub3JlQXR0ciYmYS5zZXRBdHRyaWJ1dGVOb2RlKGRvY3VtZW50LmNyZWF0ZUF0dHJpYnV0ZShuLmRldGVjdGlvbklnbm9yZUF0dHIpKSxkLnBhcmVudE5vZGUuYXBwZW5kQ2hpbGQoYSl9O2Z1bmN0aW9uIHMoZSx0KXt2YXIgbj10JiZ0LmFkZE9ufHwiIixpPXQmJnQuYmFzZUZpbGVuYW1lfHxlLmxpY2Vuc2UrbixvPXQmJnQubWluaWZ5PyIubWluIjoiIixyPXQmJnQuZmlsZVN1ZmZpeHx8ZS5tZXRob2QsYT10JiZ0LnN1YmRpcnx8ZS5tZXRob2Q7cmV0dXJuIGUuYmFzZVVybCsiL3JlbGVhc2VzLyIrKCJsYXRlc3QiPT09ZS52ZXJzaW9uPyJsYXRlc3QiOiJ2Ii5jb25jYXQoZS52ZXJzaW9uKSkrIi8iK2ErIi8iK2krbysiLiIrcn12YXIgdCxuLGksbyxsO3RyeXtpZih3aW5kb3cuRm9udEF3ZXNvbWVLaXRDb25maWcpe3ZhciB1LGY9d2luZG93LkZvbnRBd2Vzb21lS2l0Q29uZmlnLG09e2RldGVjdGluZ0NvbmZsaWN0czpmLmRldGVjdENvbmZsaWN0c1VudGlsJiZuZXcgRGF0ZTw9bmV3IERhdGUoZi5kZXRlY3RDb25mbGljdHNVbnRpbCksZGV0ZWN0aW9uSWdub3JlQXR0cjoiZGF0YS1mYS1kZXRlY3Rpb24taWdub3JlIixkZXRlY3Rpb25UaW1lb3V0QXR0cjoiZGF0YS1mYS1kZXRlY3Rpb24tdGltZW91dCIsZGV0ZWN0aW9uVGltZW91dDpudWxsfTsianMiPT09Zi5tZXRob2QmJihvPW0sbD17YXN5bmM6KGk9ZikuYXN5bmNMb2FkaW5nLmVuYWJsZWQsYXV0b0ExMXk6aS5hdXRvQTExeS5lbmFibGVkfSwicHJvIj09PWkubGljZW5zZSYmKGwuYXV0b0ZldGNoU3ZnPSEwLGwuZmV0Y2hTdmdGcm9tPWkuYmFzZVVybCsiL3JlbGVhc2VzLyIrKCJsYXRlc3QiPT09aS52ZXJzaW9uPyJsYXRlc3QiOiJ2Ii5jb25jYXQoaS52ZXJzaW9uKSkrIi9zdmdzIiksaS52NHNoaW0uZW5hYmxlZCYmZShzKGkse2FkZE9uOiItdjQtc2hpbXMiLG1pbmlmeTppLm1pbmlmeS5lbmFibGVkfSkpLGUocyhpLHttaW5pZnk6aS5taW5pZnkuZW5hYmxlZH0pLGwsbykpLCJjc3MiPT09Zi5tZXRob2QmJmZ1bmN0aW9uKGUsdCl7dmFyIG4saT1hLmJpbmQoYSxbImZhIiwiZmFiIiwiZmFzIiwiZmFyIiwiZmFsIiwiZmFkIl0pO2UuYXV0b0ExMXkuZW5hYmxlZCYmKHIoaSksbj1pLCJ1bmRlZmluZWQiIT10eXBlb2YgTXV0YXRpb25PYnNlcnZlciYmbmV3IE11dGF0aW9uT2JzZXJ2ZXIobikub2JzZXJ2ZShkb2N1bWVudCx7Y2hpbGRMaXN0OiEwLHN1YnRyZWU6ITB9KSksZS52NHNoaW0uZW5hYmxlZCYmKGUubGljZW5zZSxlLmFzeW5jTG9hZGluZy5lbmFibGVkP2MocyhlLHthZGRPbjoiLXY0LXNoaW1zIixtaW5pZnk6ZS5taW5pZnkuZW5hYmxlZH0pLHQpOmQocyhlLHthZGRPbjoiLXY0LXNoaW1zIixtaW5pZnk6ZS5taW5pZnkuZW5hYmxlZH0pLHQpKTtlLnY0Rm9udEZhY2VTaGltLmVuYWJsZWQmJihlLmFzeW5jTG9hZGluZy5lbmFibGVkP2MocyhlLHthZGRPbjoiLXY0LWZvbnQtZmFjZSIsbWluaWZ5OmUubWluaWZ5LmVuYWJsZWR9KSx0KTpkKHMoZSx7YWRkT246Ii12NC1mb250LWZhY2UiLG1pbmlmeTplLm1pbmlmeS5lbmFibGVkfSksdCkpO3ZhciBvPXMoZSx7bWluaWZ5OmUubWluaWZ5LmVuYWJsZWR9KTtlLmFzeW5jTG9hZGluZy5lbmFibGVkP2Mobyx0KTpkKG8sdCl9KGYsbSksbS5kZXRlY3RpbmdDb25mbGljdHMmJigodT1kb2N1bWVudC5jdXJyZW50U2NyaXB0LmdldEF0dHJpYnV0ZShtLmRldGVjdGlvblRpbWVvdXRBdHRyKSkmJihtLmRldGVjdGlvblRpbWVvdXQ9dSksZG9jdW1lbnQuY3VycmVudFNjcmlwdC5zZXRBdHRyaWJ1dGVOb2RlKGRvY3VtZW50LmNyZWF0ZUF0dHJpYnV0ZShtLmRldGVjdGlvbklnbm9yZUF0dHIpKSx0PWYsbj1tLHIoZnVuY3Rpb24oKXt2YXIgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtuJiZuLmRldGVjdGlvbklnbm9yZUF0dHImJmUuc2V0QXR0cmlidXRlTm9kZShkb2N1bWVudC5jcmVhdGVBdHRyaWJ1dGUobi5kZXRlY3Rpb25JZ25vcmVBdHRyKSksbiYmbi5kZXRlY3Rpb25UaW1lb3V0QXR0ciYmbi5kZXRlY3Rpb25UaW1lb3V0JiZlLnNldEF0dHJpYnV0ZShuLmRldGVjdGlvblRpbWVvdXRBdHRyLG4uZGV0ZWN0aW9uVGltZW91dCksZS5zcmM9cyh0LHtiYXNlRmlsZW5hbWU6ImNvbmZsaWN0LWRldGVjdGlvbiIsZmlsZVN1ZmZpeDoianMiLHN1YmRpcjoianMiLG1pbmlmeTp0Lm1pbmlmeS5lbmFibGVkfSksZS5hc3luYz0hMCxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGUpfSkpfX1jYXRjaChlKXt9fSgpOw=="}},"time_used":97,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":97,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/admin/testimony-images/412a.jpg","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.107Z","timestamp":1785126256107,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /admin/testimony-images/412a.jpg HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/jpeg\r\ncontent-length: 169486\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-2960e\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":169486,"size_decoded":169739,"mime_type":"image/jpeg","magic":"PNG image data, 300 x 300, 8-bit/color RGB, non-interlaced","md5":"54aa36a095aafe8eafa8921017dfa7ce","sha1":"1785dec9dbf1e6ad89425789df8649ac77542b21","sha256":"5d5503c368c2e9637e657fe9861515d132238e48e354e3316518a28ed0f37212","sha512":"092dad74425e02eac3fd25ca63cfb9fd87a4e04b13e11a78ec4e61d20a3aab67055b1d253479d72e0bb8ea33e9f9603c29eb6cbbd47e7b43d5db82024be3b3fe","ssdeep":"3072:wGSS0geADOBWP86ZDsIk9HxjFt02cMaR8bomx/58jV5hPwPs7rcuIEDory5fiGa7:wGSS0geAqBW0UDsI0xjF+tmbomVSjV5o","tlshash":"23f31365928325aa5adfc162cb9428a3d7511b27fac7bf94a430c4ff6f40dfa44ce441","first_seen":"2025-09-22T10:38:08.963798Z","last_seen":"2026-07-27T04:25:12.74404Z","times_seen":6,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAIAAAD2HxkiAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6OUFGMEJFOEFGOTUxMTFFN0I3RDhGM0ExNDczMkEzMUQiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6OUFGMEJFODlGOTUxMTFFN0I3RDhGM0ExNDczMkEzMUQiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpENDE1MTlDN0RCNUExMUU3OTlCMUUyN0E0MjNDRDQ3OCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpENDE1MTlDOERCNUExMUU3OTlCMUUyN0E0MjNDRDQ3OCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PtmCKikAApKCSURBVHjatL33k23Z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"}},"time_used":477,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":297,"receive":180,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%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://besttrader.live/","date":"2026-07-27T04:24:17.095Z","timestamp":1785126257095,"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-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/crypto-mkt-screener/?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://besttrader.live/\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 04:24:17 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 04:24:17 GMT\r\ncontent-security-policy: 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-7qnJl0H8vOWLG3EcfBiL+Q=='; default-src 'self' https: data: blob: wss: 'unsafe-inline'; base-uri 'none'; object-src 'none'\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 04:23:34\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 5a34b0cb27602ddf3ff8b8363ca92a6e\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"]},{"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"]}],"data":{"size":31644,"size_decoded":10625,"mime_type":"text/html; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (17728)","md5":"bf818dc02008d43e5d359022768daa44","sha1":"5160be203cb5eff12172832353eb1b3c99c92712","sha256":"cc74d1ad2e8db66b158ec149a16d568a00b70b1400856eb632f32261776b36d5","sha512":"1031a2fecf4a1bc7b81edc46fcaf0d89daed363017b26f28d34ec314139c2382475259b967829de4952e1960488d0fcacfd83564568886bfc3166a100c6ac033","ssdeep":"768:johX6cvpMte3ARANvbj+SNogFbLrX3AMaDWzX:ITRMte3ARANvbj+SNogdX3d","tlshash":"6ae2e66ba80cd315e8528964bc77f602fd1e131d85a1acd096edc96c10d7ec6e20fbad","first_seen":"2026-07-27T04:25:12.74461Z","last_seen":"2026-07-27T04:25:15.203828Z","times_seen":2,"resource_available":false,"data":"Cgo8IURPQ1RZUEUgaHRtbD4KPGh0bWwgbGFuZz0iZW4iIGRpcj0ibHRyIj4KPGhlYWQ+Cgk8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEsIG1pbmltdW0tc2NhbGU9MSwgbWF4aW11bS1zY2FsZT0xIj4KCTx0aXRsZT5TY3JlZW5lciB3aWRnZXQ8L3RpdGxlPgoKCTxsaW5rIHJlbD0icHJlY29ubmVjdCIgaHJlZj0iaHR0cHM6Ly9zY2FubmVyLnRyYWRpbmd2aWV3LmNvbSIgY3Jvc3NvcmlnaW4+Cgk8bGluayByZWw9InByZWNvbm5lY3QiIGhyZWY9Imh0dHBzOi8vczMtc3ltYm9sLWxvZ28udHJhZGluZ3ZpZXcuY29tLyIgY3Jvc3NvcmlnaW4+CgoJPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC85OTUyNy4xNWM1YzI1ZDI3YTU2YTBkZjc3Mi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8zOTA3MC41NWNiYzdhMWRhOTYzYjM4MjliMy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KCTxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNDY5MDcuYzVhZjhhYTdiNTA4MmIxODc1YTUuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvOTQyMzIuYWI2NzMxYjY5OGE4YzI4NTRhOTAuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMzI4MTYuMzU1ZDc1YjIxYWU0YjUzNGE4NDkuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMTcwODcuYTVlYWViMzBmN2QyNjlmOTdiNDEuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNDMzMjUuMjU2ZmE1YTUyMTNiOWNiNzBmNWMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMzkwNS42ODJlODllZjJkYzRjNzA0MjNjNi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8zNTc5NC4wYTI3M2JhZmM1ZGU1MGEwZDIxZC5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8xNTkzMi4yYTcwZDM5N2MzNGYyZTlkZTk0Zi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC81NDY4MS5hNzE3MTEwZTY3NDlmMzA3ZWQ2ZC5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC81MTUwOC43NjcyMTkyODNjNjVmNGQ0Y2E2ZS5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC80OTUxOC4wODFmOTYzN2I5NGVlNjJhNmU2Zi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8zMjYzMi41OTZlNTM0OGExNTM4YTE4ZmQ0ZS5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8xNTYzNC45ZmY1MDBmNDBjM2VjMjQ5NmE5ZC5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC83NTMwNC4xNzQ0OTZkYmY2MmJjOTBkYjU5YS5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC81MjA5NS5lNmViNTMwYTEzYjJmZWJkMmNkMy5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8zODAwMi44NmQyODBmZWVhYmFiNjk4MzYwYi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC80NDAzMS4yNjkxZmMyYzM0NjgyOTNiZmQxNi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC80Mzc5Mi5lMWJkMDYxMTI0MDRmMDkwMWE2Ni5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC83MDM2NC42NDRjYjkzNDQxNjkwYzgyOWFiOS5jc3MiIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC85NDg4LjA5ZjI2OWY4YjI2YjJiMDBhOGI3LmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzM3ODY3LmVjNzMxYWQxMDJkYjY3NjJlNDBjLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzYyNjgxLjY4ODNjNGIxN2U2YTg5ZTRiODdmLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzMwMjAwLjcxZGEwNzZmYjAxOTdlNGQ1OTUzLmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzMxMzk2LmRhZGExN2FiYzRhZGJmMDczMTM5LmNzcyIgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIvPgoKPHNjcmlwdCBub25jZT0iN3FuSmwwSDh2T1dMRzNFY2ZCaUwrUT09Ij4KCXdpbmRvdy5sb2NhbGUgPSAnZW4nOwoJd2luZG93Lmxhbmd1YWdlID0gJ2VuJzsKPC9zY3JpcHQ+Cgk8c2NyaXB0IG5vbmNlPSI3cW5KbDBIOHZPV0xHM0VjZkJpTCtRPT0iPnZhciBlbnZpcm9ubWVudCA9ICJiYXR0bGUiOzwvc2NyaXB0PgoKCTxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvcnVudGltZS1lbWJlZF9zY3JlZW5lcl92MV93aWRnZXQuOWRiZTFiMjgyMTRkN2ExNDcxYmEuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkL2VuLjQ2MDI0Ljk3MTc2YWE0OGZlOWQ5YTBkMTI3LmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC8zMjM4Ny40N2FjZTgzYzYxYTg4NDM0MWNkNi5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMTMxNDguMzJjYzAxZGMwMTc1MWI5MTY4MmMuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzQ5MjY1LmMyMDhlZjgzNzllMDczZjk0ZDE2LmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC83NTA0LjEyODhkMWQyOGIyZjQ3ZjdhYzQzLmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC85OTgyNy5kMzk3NmRjMGM1Y2ZhMmMyMTQwZS5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMzYxNjYuNzYzN2JlMWNmMjUxNDUwNGFjNzkuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzc2NTc3LmY3M2EwMWUxZjAwMDQzNjIyYjY1LmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC82NTg2Mi45NTc2NDc1MmMwOWYzZjE4Zjg5MC5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvODAyMDcuM2U1ZTdkNjhjODc1YjM2N2NhZDAuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzEyMTgxLmI2NWE1ODM1NWZmN2NjMzQ5NTBmLmpzIiByZWw9InByZWxvYWQiIGFzPSJzY3JpcHQiLz4KPGxpbmsgY3Jvc3NvcmlnaW49ImFub255bW91cyIgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC82MTQ5NS4zN2VlN2QxODJjZjg0Y2FhNzY4MS5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+CjxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMzAyODguNTkyMDdhYTI2MDdlYTE1OTcyODcuanMiIHJlbD0icHJlbG9hZCIgYXM9InNjcmlwdCIvPgo8bGluayBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkL2VtYmVkX3NjcmVlbmVyX3YxX3dpZGdldC4zYzZkY2I0ODI0MWIzOGFkMjBjZC5qcyIgcmVsPSJwcmVsb2FkIiBhcz0ic2NyaXB0Ii8+PHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvcnVudGltZS1lbWJlZF9zY3JlZW5lcl92MV93aWRnZXQuOWRiZTFiMjgyMTRkN2ExNDcxYmEuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC9lbi40NjAyNC45NzE3NmFhNDhmZTlkOWEwZDEyNy5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzMyMzg3LjQ3YWNlODNjNjFhODg0MzQxY2Q2LmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMTMxNDguMzJjYzAxZGMwMTc1MWI5MTY4MmMuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC80OTI2NS5jMjA4ZWY4Mzc5ZTA3M2Y5NGQxNi5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzc1MDQuMTI4OGQxZDI4YjJmNDdmN2FjNDMuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC85OTgyNy5kMzk3NmRjMGM1Y2ZhMmMyMTQwZS5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzM2MTY2Ljc2MzdiZTFjZjI1MTQ1MDRhYzc5LmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvNzY1NzcuZjczYTAxZTFmMDAwNDM2MjJiNjUuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC82NTg2Mi45NTc2NDc1MmMwOWYzZjE4Zjg5MC5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzgwMjA3LjNlNWU3ZDY4Yzg3NWIzNjdjYWQwLmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvMTIxODEuYjY1YTU4MzU1ZmY3Y2MzNDk1MGYuanMiIGRlZmVyPjwvc2NyaXB0Pgo8c2NyaXB0IGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHNyYz0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXctd2lkZ2V0LmNvbS9zdGF0aWMvYnVuZGxlcy9lbWJlZC82MTQ5NS4zN2VlN2QxODJjZjg0Y2FhNzY4MS5qcyIgZGVmZXI+PC9zY3JpcHQ+CjxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tL3N0YXRpYy9idW5kbGVzL2VtYmVkLzMwMjg4LjU5MjA3YWEyNjA3ZWExNTk3Mjg3LmpzIiBkZWZlcj48L3NjcmlwdD4KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vd3d3LnRyYWRpbmd2aWV3LXdpZGdldC5jb20vc3RhdGljL2J1bmRsZXMvZW1iZWQvZW1iZWRfc2NyZWVuZXJfdjFfd2lkZ2V0LjNjNmRjYjQ4MjQxYjM4YWQyMGNkLmpzIiBkZWZlcj48L3NjcmlwdD4KCgk8c2NyaXB0IG5vbmNlPSI3cW5KbDBIOHZPV0xHM0VjZkJpTCtRPT0iPndpbmRvdy5mZWF0dXJlVG9nZ2xlU3RhdGUgPSB7InNob3dfZmVhdHVyZWRfaXBvIjoxLjAsImJsYWNrX2ZyaWRheV9wb3B1cCI6MS4wLCJibGFja19mcmlkYXlfbWFpbnBhZ2UiOjEuMCwiYmxhY2tfZnJpZGF5X2V4dGVuZF9saW1pdGF0aW9uIjoxLjAsImVuYWJsZV90cmFkaW5nX3JlcGxheV9mb3JfcG9pbnRfaW5kZXhlcyI6MS4wLCJpbmNyZWFzZV9tZXRhaW5mb192ZXJzaW9uIjowLjMsImNoYXJ0X2F1dG9zYXZlXzVtaW4iOjEuMCwiY2hhcnRfYXV0b3NhdmVfMzBtaW4iOjEuMCwicGVyZm9ybWFuY2VfdGVzdF9tb2RlIjoxLjAsImNoZWNrX2F1dGhfdG9rZW5fZXhwaXJhdGlvbl9vbl9ldmVyeV9yZXF1ZXN0IjoxLjAsImNoYXJ0X3N0b3JhZ2VfaGliZXJuYXRpb25fZGVsYXlfNjBtaW4iOjEuMCwic3VwcG9ydF9wZXJzaXN0ZW50X2xvZ3MiOjEuMCwibmV3X3N0b3JhZ2Vfc3Vic2NyaXB0aW9uX3VybCI6MS4wLCJyZW1vdmVfYW5jaG9yZWRfdGV4dCI6MS4wLCJlbmFibGVfc3RlcF9ieV9zdGVwX2hpbnRzX2Zvcl9kcmF3aW5ncyI6MS4wLCJwdXNoc3RyZWFtX2Jhc2ljX3RlbGVtZXRyeSI6MS4wLCJhbGxvd19icmFja2V0c19wcm9maXRfbG9zcyI6MS4wLCJlbmFibGVfdHJhZGVkX2NvbnRleHRfbGlua2luZyI6MS4wLCJvcmRlcl9jb250ZXh0X3ZhbGlkYXRpb25faW5faW5zdGFudF9tb2RlIjoxLjAsImFsZXJ0cy1vbi1mdW5kYW1lbnRhbC1tZXRyaWNzIjoxLjAsImFsZXJ0cy1ub3RpZmljYXRpb24tc2NoZWR1bGUiOjEuMCwiYWxlcnRzLXdhdGNobGlzdC1leHRlbmRlZC1ob3VycyI6MS4wLCJlbmFibGVfc3ltYm9sX2NoYW5nZV9yZXN0cmljdGlvbl9vbl93aWRnZXRzIjoxLjAsImVuYWJsZV9hc3hfc3ltYm9sX3Jlc3RyaWN0aW9uIjoxLjAsInN5bXBob255X2FsbG93X25vbl9wYXJ0aXRpb25lZF9jb29raWVfb25fb2xkX3N5bXBob255IjoxLjAsInN5bXBob255X25vdGlmaWNhdGlvbl9iYWRnZXMiOjEuMCwic3ltcGhvbnlfdXNlX2Fka19mb3JfdXBncmFkZV9yZXF1ZXN0IjoxLjAsInN5bXBob255X2VuYWJsZV90aW1lb3V0X3RyYWNraW5nIjoxLjAsInN5bXBob255X2VuYWJsZV90aW1lb3V0X3NvZnRfbGltaXQiOjEuMCwic3ltcGhvbnlfZW5hYmxlX3RpbWVvdXRfaGFyZF9saW1pdCI6MS4wLCJ0ZWxlZ3JhbV9taW5pX2FwcF9yZWR1Y2Vfc25hcHNob3RfcXVhbGl0eSI6MS4wLCJuZXdzX3N5bWJvbF9vdmVydmlld19rZXlfZmFjdHMiOjEuMCwidGltZW91dF9kamFuZ29fZGIiOjAuMTUsInRpbWVvdXRfZGphbmdvX3VzZXJzZXR0aW5nc19kYiI6MC4xNSwidGltZW91dF9kamFuZ29fY2hhcnRzX2RiIjowLjI1LCJ0aW1lb3V0X2RqYW5nb19zeW1ib2xzX2xpc3RzX2RiIjowLjI1LCJ0aW1lb3V0X2RqYW5nb19taW5kc19kYiI6MC4wNSwidGltZW91dF9kamFuZ29fbG9nZ2luZ19kYiI6MC4yNSwiZGlzYWJsZV9zZXJ2aWNlc19tb25pdG9yX21ldHJpY3MiOjEuMCwiZW5hYmxlX3NpZ25pbl9yZWNhcHRjaGEiOjEuMCwiZW5hYmxlX2lkZWFfc3BhbWRldGVjdG9ybWwiOjEuMCwiZW5hYmxlX2lkZWFfc3BhbWRldGVjdG9ybWxfY29tbWVudHMiOjEuMCwiZW5hYmxlX3NwYW1kZXRlY3Rvcm1sX2NoYXQiOjEuMCwiZW5hYmxlX21pbmRzX3NwYW1kZXRlY3Rvcm1sIjoxLjAsImJhY2tlbmQtY29ubmVjdGlvbnMtaW4tdG9rZW4iOjEuMCwib25lX2Nvbm5lY3Rpb25fd2l0aF9leGNoYW5nZXMiOjEuMCwibW9iaWxlLWFkcy1pb3MiOjEuMCwibW9iaWxlLWFkcy1hbmRyb2lkIjoxLjAsImdvb2dsZS1vbmUtdGFwLXNpZ25pbiI6MS4wLCJicmFpbnRyZWUtZ29wcm8taW4tb3JkZXItZGlhbG9nIjoxLjAsImJyYWludHJlZS1hcHBsZS1wYXkiOjEuMCwiYnJhaW50cmVlLWdvb2dsZS1wYXkiOjEuMCwiYnJhaW50cmVlLWFwcGxlLXBheS1mcm9tLWlvcy1hcHAiOjEuMCwiYnJhaW50cmVlLWFwcGxlLXBheS10cmlhbCI6MS4wLCJ0cmlwbGVhLXBheW1lbnRzIjoxLjAsImJyYWludHJlZS1nb29nbGUtcGF5LXRyaWFsIjoxLjAsImJyYWludHJlZS1vbmUtdXNkLXZlcmlmaWNhdGlvbiI6MS4wLCJicmFpbnRyZWUtM2RzLWVuYWJsZWQiOjEuMCwiYnJhaW50cmVlLTNkcy1zdGF0dXMtY2hlY2siOjEuMCwiYnJhaW50cmVlLWFkZGl0aW9uYWwtY2FyZC1jaGVja3MtZm9yLXRyaWFsIjoxLjAsImJyYWludHJlZS1pbnN0YW50LXNldHRsZW1lbnQiOjEuMCwiYnJhaW50cmVlX3JlY3VycmluZ19iaWxsaW5nX3NjaGVkdWxlcl9zdWJzY3JpcHRpb24iOjEuMCwiY2hlY2tvdXRfbWFudWFsX2NhcHR1cmVfcmVxdWlyZWQiOjEuMCwiY2hlY2tvdXQtc3Vic2NyaXB0aW9ucyI6MS4wLCJjaGVja291dF9hZGRpdGlvbmFsX2NhcmRfY2hlY2tzX2Zvcl90cmlhbCI6MS4wLCJjaGVja291dF9mYWlsX29uX2R1cGxpY2F0ZV9wYXltZW50X21ldGhvZHNfZm9yX3RyaWFsIjoxLjAsImNoZWNrb3V0X2ZhaWxfb25fYmFubmVkX2NvdW50cmllc19mb3JfdHJpYWwiOjEuMCwiY2hlY2tvdXRfZmFpbF9vbl9iYW5uZWRfYmFua19mb3JfdHJpYWwiOjEuMCwiY2hlY2tvdXRfZmFpbF9vbl9iYW5uZWRfYmFua19mb3JfcHJlbWl1bV90cmlhbCI6MS4wLCJjaGVja291dF9mYWlsX29uX2Nsb3NlX3RvX2V4cGlyYXRpb25fY2FyZF90cmlhbCI6MS4wLCJjaGVja291dF9mYWlsX29uX3ByZXBhaWRfY2FyZF90cmlhbCI6MS4wLCJyZXZvbHV0X2FkZGl0aW9uYWxfY2FyZF9jaGVja3NfZm9yX3RyaWFsIjoxLjAsInJldm9sdXRfZmFpbF9vbl9kdXBsaWNhdGVfcGF5bWVudF9tZXRob2RzX2Zvcl90cmlhbCI6MS4wLCJyZXZvbHV0X2ZhaWxfb25fYmFubmVkX2NvdW50cmllc19mb3JfdHJpYWwiOjEuMCwicmV2b2x1dF9mYWlsX29uX2Jhbm5lZF9iYW5rX2Zvcl90cmlhbCI6MS4wLCJyZXZvbHV0X2ZhaWxfb25fYmFubmVkX2JhbmtfZm9yX3ByZW1pdW1fdHJpYWwiOjEuMCwicmV2b2x1dF9mYWlsX29uX2Nsb3NlX3RvX2V4cGlyYXRpb25fY2FyZF90cmlhbCI6MS4wLCJyZXZvbHV0X2ZhaWxfb25fcHJlcGFpZF9jYXJkX3RyaWFsIjoxLjAsInJldm9sdXRfZmFpbF9vbl9jb21tZXJjaWFsX2NhcmRfdHJpYWwiOjEuMCwiZW5hYmxlX3BheW1lbnRzXzNkc19vcHRpbWl6YXRpb24iOjEuMCwiY291bnRyeV9vZl9pc3N1YW5jZV92c19iaWxsaW5nX2NvdW50cnkiOjEuMCwiY2hlY2tvdXRfc2hvd19pbnN0ZWFkX29mX2JyYWludHJlZSI6MS4wLCJjaGVja291dC0zZHMiOjEuMCwiY2hlY2tvdXQtcGF5cGFsIjoxLjAsImNoZWNrb3V0X2luY2x1ZGVfYWNjb3VudF9ob2xkZXIiOjEuMCwiY2hlY2tvdXQtcGF5cGFsLXRyaWFsIjoxLjAsImFubnVhbF90b19tb250aGx5X2Rvd25ncmFkZV9hdHRlbXB0IjoxLjAsInJhem9ycGF5X3RyaWFsXzEwX2luciI6MS4wLCJyYXpvcnBheS1jYXJkLW9yZGVyLXRva2VuLXNlY3Rpb24iOjEuMCwicmF6b3JwYXktY2FyZC1zdWJzY3JpcHRpb25zIjoxLjAsInJhem9ycGF5LXVwaS1zdWJzY3JpcHRpb25zIjoxLjAsInJhem9ycGF5LXMzLWludm9pY2UtdXBsb2FkIjoxLjAsInJhem9ycGF5X2luY2x1ZGVfZGF0ZV9vZl9iaXJ0aCI6MS4wLCJkbG9jYWwtcGF5bWVudHMiOjEuMCwicmV2b2x1dC1wYXktcGF5bWVudHMiOjEuMCwicmV2b2x1dC1jYXJkLXBheW1lbnRzIjowLjUsImRsb2NhbC1waXgtYXV0b21hdGljbyI6MS4wLCJicmFpbnRyZWVfdHJhbnNhY3Rpb25fc291cmNlIjoxLjAsInZlcnRleC10YXgiOjEuMCwidmVydGV4LXRheC1maXgiOjEuMCwicmVjZWlwdF9pbl9lbWFpbHMiOjEuMCwiYWR3b3Jkcy1hbmFseXRpY3MiOjEuMCwiY20zNjAtYW5hbHl0aWNzIjoxLjAsImRpc2FibGVfbW9iaWxlX3Vwc2VsbF9pb3MiOjEuMCwiZGlzYWJsZV9tb2JpbGVfdXBzZWxsX2FuZHJvaWQiOjEuMCwicmVxdWlyZWRfYWdyZWVtZW50X2Zvcl9ydCI6MS4wLCJjaGVja19tYXJrZXRfZGF0YV9saW1pdHMiOjEuMCwiZm9yY2VfdG9fY29tcGxldGVfZGF0YSI6MS4wLCJmb3JjZV90b191cGdyYWRlX3RvX2V4cGVydCI6MS4wLCJzZW5kX3RyYWRldmFuX2ludm9pY2UiOjEuMCwic2hvd19wZXBlX2FuaW1hdGlvbiI6MS4wLCJzZW5kX25leHRfcGF5bWVudF9pbmZvX3JlY2VpcHQiOjEuMCwic3VwcG9ydF9vdmVybmlnaHRfc2Vzc2lvbiI6MS4wLCJzY3JlZW5lci1hbGVydHMtcmVhZC1vbmx5IjoxLjAsInNjcmVlbmVyX2JvbmRfcmVzdHJpY3Rpb25fYnlfYXV0aF9lbmFibGVkIjoxLjAsInNjcmVlbmVyX3N0b2NrX2FpX2ZpbHRlcnNfZW5hYmxlZCI6MS4wLCJzY3JlZW5lcl9pc19hbGxvd2VkX3RvX2NyZWF0ZV9lbmFibGVkIjoxLjAsInNjcmVlbmVyX2JvbmRfcmF0aW5nX2NvbHVtbnNfcmVzdHJpY3Rpb25fYnlfYXV0aF9lbmFibGVkIjoxLjAsInNjcmVlbmVyX2JvbmRfc29ydGluZ19yZXN0cmljdGlvbl9ieV9hdXRoX2VuYWJsZWQiOjEuMCwic2NyZWVuZXJfYm9uZF9ncm91cF9ieV9pc2luX3Jlc3RyaWN0aW9uX2J5X2F1dGhfZW5hYmxlZCI6MS4wLCJzY3JlZW5lcl9ib25kX3N5bWJvbF9zZWFyY2hfcmVzdHJpY3Rpb25fYnlfYXV0aF9lbmFibGVkIjoxLjAsInNjcmVlbmVyX2JvbmRfcmVnaXN0cmF0aW9uX2Jhbm5lcl9yZXN0cmljdGlvbl9ieV9hdXRoX2VuYWJsZWQiOjEuMCwic2VzX3RyYWNraW5nIjoxLjAsInNlbmRfZmluYW5jaWFsX25vdGlmaWNhdGlvbnMiOjEuMCwic3BhcmtfdHJhbnNsYXRpb25zIjoxLjAsInNwYXJrX2NhdGVnb3J5X3RyYW5zbGF0aW9ucyI6MS4wLCJzcGFya190YWdzX3RyYW5zbGF0aW9ucyI6MS4wLCJwcm9fcGxhbl9pbml0aWFsX3JlZnVuZHNfZGlzYWJsZWQiOjEuMCwicHJldmlvdXNfbW9ub3Byb2R1Y3RfcHVyY2hhc2VzX3JlZnVuZHNfZW5hYmxlZCI6MS4wLCJlbmFibGVfaWRlYXNfcmVjb21tZW5kYXRpb25zIjoxLjAsImVuYWJsZV9pZGVhc19yZWNvbW1lbmRhdGlvbnNfZmVlZCI6MS4wLCJmYWlsX29uX2R1cGxpY2F0ZV9wYXltZW50X21ldGhvZHNfZm9yX3RyaWFsIjoxLjAsImV0aG9jYV9hbGVydF9ub3RpZmljYXRpb25fd2ViaG9vayI6MS4wLCJoaWRlX3N1c3BpY2lvdXNfdXNlcnNfaWRlYXMiOjEuMCwiZGlzYWJsZV9wdWJsaXNoX3N0cmF0ZWd5X3JhbmdlX2Jhc2VkX2NoYXJ0IjoxLjAsInJlc3RyaWN0X3NpbXVsdGFuZW91c19yZXF1ZXN0cyI6MS4wLCJsb2dpbl9mcm9tX25ld19kZXZpY2VfZW1haWwiOjEuMCwic3NyX3dvcmtlcl9ub3dhaXQiOjEuMCwiYnJva2VyX0ExQ0FQSVRBTCI6MS4wLCJicm9rZXJfQUNUSVZUUkFERVMiOjEuMCwiYnJva2VyX0FMQ0hFTVlNQVJLRVRTIjoxLjAsImJyb2tlcl9BTElDRUJMVUUiOjEuMCwiaGlkZV9BTE9SX29uX2lvcyI6MS4wLCJoaWRlX0FMT1Jfb25fYW5kcm9pZCI6MS4wLCJoaWRlX0FMT1Jfb25fbW9iaWxlX3dlYiI6MS4wLCJhbG9yLWJyb2tlcnMtc2lkZS1tYWludGVuYW5jZSI6MS4wLCJicm9rZXJfQUxQQUNBIjoxLjAsImJyb2tlcl9BTFJBTVoiOjEuMCwiYnJva2VyX0FNUCI6MS4wLCJicm9rZXJfQU5HRUxPTkUiOjEuMCwiYnJva2VyX0FWQV9GVVRVUkVTIjoxLjAsIkFWQV9GVVRVUkVTX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwiYnJva2VyX0IyUFJJTUUiOjEuMCwiYnJva2VyX0JBSkFKIjoxLjAsImJyb2tlcl9CRVlPTkQiOjEuMCwiYnJva2VyX0JJTkFOQ0UiOjEuMCwiZW5hYmxlX2JpbmFuY2VhcGlzX2Jhc2VfdXJsIjoxLjAsImJyb2tlcl9CSU5HQk9OIjoxLjAsImJyb2tlcl9CSVRBWlpBIjoxLjAsImJyb2tlcl9CSVRHRVQiOjEuMCwiYnJva2VyX0JJVE1FWCI6MS4wLCJicm9rZXJfQklUU1RBTVAiOjEuMCwiYnJva2VyX0JMQUNLQlVMTCI6MS4wLCJicm9rZXJfQkxVRUJFUlJZTUFSS0VUUyI6MS4wLCJicm9rZXJfQlRDQyI6MS4wLCJicm9rZXJfQllCSVQiOjEuMCwiYnJva2VyX0NBUElUQUxDT00iOjEuMCwiYnJva2VyX0NBUFRSQURFUiI6MS4wLCJDQVBUUkFERVJfc2VwYXJhdGVfaW50ZWdyYXRpb25fbWlncmF0aW9uX3dhcm5pbmciOjEuMCwiYnJva2VyX0NGSSI6MS4wLCJicm9rZXJfQ0dTSSI6MS4wLCJicm9rZXJfQ0lUWUlOREVYIjoxLjAsImNpdHlpbmRleF9zcHJlYWRiZXR0aW5nIjoxLjAsIkNMRUFSU1RSRUVUX2JldGEiOjEuMCwiYnJva2VyX0NNQ01BUktFVFMiOjEuMCwiYnJva2VyX0NPQlJBVFJBRElORyI6MS4wLCJicm9rZXJfQ09JTkJBU0UiOjEuMCwiY29pbmJhc2VfcmVxdWVzdF9zZXJ2ZXJfbG9nZ2VyIjoxLjAsImNvaW5iYXNlX2NhbmNlbF9wb3NpdGlvbl9icmFja2V0cyI6MS4wLCJicm9rZXJfQ09JTkpBUiI6MS4wLCJDT0lOSkFSX2JldGEiOjEuMCwiYnJva2VyX0NPSU5TV0lUQ0giOjEuMCwiYnJva2VyX0NPSU5XIjoxLjAsImJyb2tlcl9DT0xNRVgiOjEuMCwiaGlkZV9DUUdfb25faW9zIjoxLjAsImhpZGVfQ1FHX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9DUUdfb25fbW9iaWxlX3dlYiI6MS4wLCJjcWctcmVhbHRpbWUtYmFuZHdpZHRoLWxpbWl0IjoxLjAsImJyb2tlcl9DUllQVE9DT00iOjEuMCwiaGlkZV9DVVJSRU5DWUNPTV9vbl9pb3MiOjEuMCwiaGlkZV9DVVJSRU5DWUNPTV9vbl9hbmRyb2lkIjoxLjAsImhpZGVfQ1VSUkVOQ1lDT01fb25fbW9iaWxlX3dlYiI6MS4wLCJicm9rZXJfQ1hNIjoxLjAsImJyb2tlcl9EQU9MIjoxLjAsImJyb2tlcl9EQVJXSU5FWCI6MS4wLCJEQVJXSU5FWF9iZXRhIjoxLjAsImJyb2tlcl9ERUxUQSI6MS4wLCJicm9rZXJfREVSQVlBSCI6MS4wLCJicm9rZXJfREVSSVYiOjEuMCwiYnJva2VyX0RIQU4iOjEuMCwiYnJva2VyX0ROU0UiOjEuMCwiYnJva2VyX0RPUk1BTiI6MS4wLCJoaWRlX0RVTU1ZX29uX2lvcyI6MS4wLCJoaWRlX0RVTU1ZX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9EVU1NWV9vbl9tb2JpbGVfd2ViIjoxLjAsImJyb2tlcl9FQVNZTUFSS0VUUyI6MS4wLCJicm9rZXJfRUNPVkFMT1JFUyI6MS4wLCJicm9rZXJfRURHRUNMRUFSIjoxLjAsImVkZ2VjbGVhcl9vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsImJyb2tlcl9FSUdIVENBUCI6MS4wLCJicm9rZXJfRVJSQU5URSI6MS4wLCJicm9rZXJfRVNBRlgiOjEuMCwiRklERUxJVFlfYmV0YSI6MS4wLCJGSURFTElUWV91c19yZWxlYXNlIjowLjI1LCJmaWRlbGl0eV9zZWN1cml0eV90b2tlbiI6MS4wLCJicm9rZXJfRk9SRVhDT00iOjEuMCwiZm9yZXhjb21fc2Vzc2lvbl92MiI6MS4wLCJicm9rZXJfRlBNQVJLRVRTIjoxLjAsImhpZGVfRlRYX29uX2lvcyI6MS4wLCJoaWRlX0ZUWF9vbl9hbmRyb2lkIjoxLjAsImhpZGVfRlRYX29uX21vYmlsZV93ZWIiOjEuMCwiZnR4X3JlcXVlc3Rfc2VydmVyX2xvZ2dlciI6MS4wLCJicm9rZXJfRlVTSU9OTUFSS0VUUyI6MS4wLCJmeGNtX3NlcnZlcl9sb2dnZXIiOjEuMCwiYnJva2VyX0ZYQ00iOjEuMCwiaGlkZV9GWE9QRU5fb25faW9zIjoxLjAsImhpZGVfRlhPUEVOX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9GWE9QRU5fb25fbW9iaWxlX3dlYiI6MS4wLCJicm9rZXJfRlhQUk8iOjEuMCwiYnJva2VyX0ZYVEYiOjEuMCwiYnJva2VyX0ZZRVJTIjoxLjAsImJyb2tlcl9HQVRFIjoxLjAsImJyb2tlcl9HQkVCUk9LRVJTIjoxLjAsImdlbWluaS1icm9rZXJzLXNpZGUtbWFpbnRlbmFuY2UiOjEuMCwiYnJva2VyX0dFTklBTElOVkVTVElNRU5UT1MiOjEuMCwiaGlkZV9HTE9CQUxQUklNRV9vbl9pb3MiOjEuMCwiaGlkZV9HTE9CQUxQUklNRV9vbl9hbmRyb2lkIjoxLjAsImhpZGVfR0xPQkFMUFJJTUVfb25fbW9iaWxlX3dlYiI6MS4wLCJnbG9iYWxwcmltZS1icm9rZXJzLXNpZGUtbWFpbnRlbmFuY2UiOjEuMCwiYnJva2VyX0dPTUFSS0VUUyI6MS4wLCJicm9rZXJfR09UUkFERSI6MS4wLCJnb3RyYWRlX2VuYWJsZV9zdHJlYW1pbmdfZW5kcG9pbnRzIjoxLjAsImJyb2tlcl9IRVJFTllBIjoxLjAsImhpZGVfSFRYX29uX2lvcyI6MS4wLCJoaWRlX0hUWF9vbl9hbmRyb2lkIjoxLjAsImhpZGVfSFRYX29uX21vYmlsZV93ZWIiOjEuMCwiYnJva2VyX0lCS1IiOjEuMCwiY2hlY2tfaWJrcl9zaWRlX21haW50ZW5hbmNlIjoxLjAsImlia3JfcmVxdWVzdF9zZXJ2ZXJfbG9nZ2VyIjoxLjAsImlia3JfcGFyYWxsZWxfcHJvdmlkZXJfaW5pdGlhbGl6YXRpb24iOjEuMCwiaWJrcl93c19hY2NvdW50X3N1bW1hcnkiOjEuMCwiaWJrcl93c19zZXJ2ZXJfbG9nZ2VyIjoxLjAsImlia3Jfc3Vic2NyaWJlX3RvX29yZGVyX3VwZGF0ZXNfZmlyc3QiOjEuMCwiaWJrcl93c19hY2NvdW50X2xlZGdlciI6MS4wLCJicm9rZXJfSUJST0tFUiI6MS4wLCJicm9rZXJfSUNNQVJLRVRTIjoxLjAsImJyb2tlcl9JQ01BUktFVFNfQVNJQyI6MS4wLCJicm9rZXJfSUNNQVJLRVRTX0VVIjoxLjAsImJyb2tlcl9JRyI6MS4wLCJicm9rZXJfSU5EU1RPQ0tTIjoxLjAsImJyb2tlcl9JTkZPWUFUSVJJTSI6MS4wLCJicm9rZXJfSU5OT1ZFU1RYIjoxLjAsImJyb2tlcl9JTlRFUkFDVElWRUlMIjoxLjAsImJyb2tlcl9JTlZFU1RSQURFIjoxLjAsIklOVkVTVFJBREVfYmV0YSI6MS4wLCJicm9rZXJfSVJPTkJFQU0iOjEuMCwiaGlkZV9JUk9OQkVBTV9DUUdfb25faW9zIjoxLjAsImhpZGVfSVJPTkJFQU1fQ1FHX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9JUk9OQkVBTV9DUUdfb25fbW9iaWxlX3dlYiI6MS4wLCJicm9rZXJfS0lXT09NIjoxLjAsImtpd29vbV91c2Vfc2VwYXJhdGVfc3RyZWFtaW5nX3VybCI6MS4wLCJicm9rZXJfS09UQUsiOjEuMCwiaGlkZV9LT1RBS19vbl9pb3MiOjEuMCwiaGlkZV9LT1RBS19vbl9hbmRyb2lkIjoxLjAsImhpZGVfS09UQUtfb25fbW9iaWxlX3dlYiI6MS4wLCJicm9rZXJfS1JBS0VOIjoxLjAsImhpZGVfS1JBS0VOX29uX2lvcyI6MS4wLCJoaWRlX0tSQUtFTl9vbl9hbmRyb2lkIjoxLjAsIktSQUtFTl9iZXRhIjoxLjAsImtyYWtlbl9yZXF1ZXN0X3NlcnZlcl9sb2dnZXIiOjEuMCwiYnJva2VyX0tTRUNVUklUSUVTIjoxLjAsImJyb2tlcl9MSUJFUkFUT1IiOjEuMCwiYnJva2VyX01FWEMiOjEuMCwiYnJva2VyX01FWEVNIjoxLjAsImJyb2tlcl9NSURBUyI6MS4wLCJoaWRlX01PQ0tCUk9LRVJfb25faW9zIjoxLjAsImhpZGVfTU9DS0JST0tFUl9vbl9hbmRyb2lkIjoxLjAsImhpZGVfTU9DS0JST0tFUl9vbl9tb2JpbGVfd2ViIjoxLjAsImhpZGVfTU9DS0JST0tFUl9JTVBMSUNJVF9vbl9pb3MiOjEuMCwiaGlkZV9NT0NLQlJPS0VSX0lNUExJQ0lUX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9NT0NLQlJPS0VSX0lNUExJQ0lUX29uX21vYmlsZV93ZWIiOjEuMCwiaGlkZV9NT0NLQlJPS0VSX0NPREVfb25faW9zIjoxLjAsImhpZGVfTU9DS0JST0tFUl9DT0RFX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9NT0NLQlJPS0VSX0NPREVfb25fbW9iaWxlX3dlYiI6MS4wLCJicm9rZXJfTU9PTU9PIjoxLjAsImJyb2tlcl9NT1RJTEFMT1NXQUwiOjEuMCwiYnJva2VyX05JTkpBVFJBREVSIjoxLjAsImJyb2tlcl9PQU5EQSI6MS4wLCJvYW5kYV9zZXJ2ZXJfbG9nZ2luZyI6MS4wLCJvYW5kYV9vYXV0aF9tdWx0aXBsZXhpbmciOjEuMCwiYnJva2VyX09LWCI6MS4wLCJicm9rZXJfT1BPRklOQU5DRSI6MS4wLCJicm9rZXJfT1BUSU1VUyI6MS4wLCJicm9rZXJfT1NNQU5MSSI6MS4wLCJicm9rZXJfT1NNQU5MSUZYIjoxLjAsInBhcGVyX2ZvcmNlX2Nvbm5lY3RfcHVzaHN0cmVhbSI6MS4wLCJwYXBlcl9zdWJhY2NvdW50X2N1c3RvbV9jdXJyZW5jeSI6MS4wLCJwYXBlcl9vdXRzaWRlX3J0aCI6MS4wLCJicm9rZXJfUEFZVE0iOjEuMCwiYnJva2VyX1BFUFBFUlNUT05FIjoxLjAsImJyb2tlcl9QSEVNRVgiOjEuMCwiYnJva2VyX1BISUxMSVBDQVBJVEFMX1RSIjoxLjAsImJyb2tlcl9QSElMTElQTk9WQSI6MS4wLCJicm9rZXJfUExVUzUwMCI6MS4wLCJwbHVzNTAwX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwiUExVUzUwMFVTX2JldGEiOjEuMCwiYnJva2VyX1BVUlBMRVRSQURJTkciOjEuMCwiYnJva2VyX1FVRVNUUkFERSI6MS4wLCJicm9rZXJfUkFWQUJVUlNBVElMIjoxLjAsIlJBVkFCVVJTQVRJTF9iZXRhIjoxLjAsImJyb2tlcl9SSVlBRENBUElUQUwiOjEuMCwiYnJva2VyX1JPQk9NQVJLRVRTIjoxLjAsImJyb2tlcl9SRVBMQVlCUk9LRVIiOjEuMCwiYnJva2VyX1NBTVVFTCI6MS4wLCJicm9rZXJfU0FYT0JBTksiOjEuMCwiYnJva2VyX1NIQVJFTUFSS0VUIjoxLjAsImJyb2tlcl9TS0lMTElORyI6MS4wLCJicm9rZXJfU1BSRUFERVgiOjEuMCwiYnJva2VyX1NXSVNTUVVPVEUiOjEuMCwiYnJva2VyX1NUT05FWCI6MS4wLCJicm9rZXJfVEFTVFlGWCI6MS4wLCJicm9rZXJfVEFTVFlUUkFERSI6MS4wLCJicm9rZXJfVEhJTktNQVJLRVRTIjoxLjAsInRoaW5rbWFya2V0c19hY2NvdW50X2RhdGFfc3RyZWFtaW5nIjoxLjAsImJyb2tlcl9USUNLTUlMTCI6MS4wLCJoaWRlX1RJR0VSX29uX2lvcyI6MS4wLCJoaWRlX1RJR0VSX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9USUdFUl9vbl9tb2JpbGVfd2ViIjoxLjAsImJyb2tlcl9UUkFERU5BVElPTiI6MS4wLCJicm9rZXJfVFJBREVTVEFUSU9OIjoxLjAsInRyYWRlc3RhdGlvbl9yZXF1ZXN0X3NlcnZlcl9sb2dnZXIiOjEuMCwidHJhZGVzdGF0aW9uX2FjY291bnRfZGF0YV9zdHJlYW1pbmciOjEuMCwidHJhZGVzdGF0aW9uX3N0cmVhbWluZ19zZXJ2ZXJfbG9nZ2luZyI6MS4wLCJicm9rZXJfVFJBREVaRVJPIjoxLjAsImJyb2tlcl9UUkFESUVSIjoxLjAsImJyb2tlcl9UUkFESUVSX0ZVVFVSRVMiOjEuMCwidHJhZGllcl9mdXR1cmVzX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwiYnJva2VyX1RSQURPVkFURSI6MS4wLCJoaWRlX1RSQURVX29uX2lvcyI6MS4wLCJoaWRlX1RSQURVX29uX2FuZHJvaWQiOjEuMCwiaGlkZV9UUkFEVV9vbl9tb2JpbGVfd2ViIjoxLjAsInRyYWR1X3NwcmVhZF9iZXQiOjEuMCwiYnJva2VyX1RSSVZFIjoxLjAsImJyb2tlcl9WQU5UQUdFIjoxLjAsImJyb2tlcl9WRUxPQ0lUWSI6MS4wLCJicm9rZXJfV0VCVUxMIjoxLjAsImJyb2tlcl9XRUJVTExKQVBBTiI6MS4wLCJicm9rZXJfV0VCVUxMUEFZIjoxLjAsImJyb2tlcl9XRUJVTExVSyI6MS4wLCJicm9rZXJfV0hJVEVCSVQiOjEuMCwiYnJva2VyX1dIU0VMRklOVkVTVCI6MS4wLCJicm9rZXJfV0hTRUxGSU5WRVNUX0ZVVFVSRVMiOjEuMCwiV0hTRUxGSU5WRVNUX0ZVVFVSRVNfb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJicm9rZXJfWENVQkUiOjEuMCwiYnJva2VyX1lMRyI6MS4wLCJicm9rZXJfaWRfc2Vzc2lvbiI6MS4wLCJkaXNhbGxvd19jb25jdXJyZW50X3Nlc3Npb25zIjoxLjAsInVzZV9jb2RlX2Zsb3dfdjJfcHJvdmlkZXIiOjEuMCwidXNlX2NvZGVfZmxvd192Ml9wcm92aWRlcl9mb3JfdW50ZXN0ZWRfYnJva2VycyI6MS4wLCJtb2JpbGVfdHJhZGluZ193ZWIiOjEuMCwibW9iaWxlX3RyYWRpbmdfaW9zIjoxLjAsIm1vYmlsZV90cmFkaW5nX2FuZHJvaWQiOjEuMCwiY29udGludW91c19mcm9udF9jb250cmFjdF90cmFkaW5nIjoxLjAsInRyYWRpbmdfcmVxdWVzdF9zZXJ2ZXJfbG9nZ2VyIjoxLjAsInJlc3RfcmVxdWVzdF9zZXJ2ZXJfbG9nZ2VyIjoxLjAsIm9hdXRoMl9jb2RlX2Zsb3dfcHJvdmlkZXJfc2VydmVyX2xvZ2dlciI6MS4wLCJyZXN0X29hdXRoMl9jb2RlX2Zsb3dfbXVsdGlwbGV4aW5nIjoxLjAsInJlc3RfbG9nb3V0X29uXzQyOSI6MS4wLCJyZXZpZXdfcG9wdXBfb25fY2hhcnQiOjEuMCwic2hvd19jb25jdXJyZW50X2Nvbm5lY3Rpb25fd2FybmluZyI6MS4wLCJlbmFibGVfdHJhZGluZ19zZXJ2ZXJfbG9nZ2VyIjoxLjAsIm9yZGVyX3ByZXNldHMiOjEuMCwib3JkZXJfdGlja2V0X3Jlc2l6YWJsZV9kcmF3ZXJfb24iOjEuMCwicmVzdF91c2VfYXN5bmNfbWFwcGVyIjoxLjAsInBhcGVyX2NvbXBldGl0aW9uX2Jhbm5lcl9zaG93X3BybyI6MS4wLCJwYXBlcl9jb21wZXRpdGlvbl9zdGFydGVkX2RpYWxvZyI6MS4wLCJwYXBlcl9jb21wZXRpdGlvbl9zdGFydGVkX2RpYWxvZ19zaG93X3BybyI6MS4wLCJwYXBlcl9jb21wZXRpdGlvbl9sZWFkZXJib2FyZCI6MS4wLCJwYXBlcl9jb21wZXRpdGlvbl9wcmV2aW91c19jb21wZXRpdGlvbnMiOjEuMCwiYW1wX29hdXRoX2F1dGhvcml6YXRpb24iOjEuMCwiYmx1ZWxpbmVfb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJkb3JtYW5fb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJpcm9uYmVhbV9vYXV0aF9hdXRob3JpemF0aW9uIjoxLjAsIm9wdGltdXNfb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJzdG9uZXhfb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJ5bGdfb2F1dGhfYXV0aG9yaXphdGlvbiI6MS4wLCJ0cmFkaW5nX2dlbmVyYWxfZXZlbnRzX2dhX3RyYWNraW5nIjoxLjAsInJlcGxheV9yZXN1bHRfc2hhcmluZyI6MS4wLCJyZXBsYXlfdHJhZGluZ19icmFja2V0cyI6MS4wLCJoaWRlX2FsbF9icm9rZXJzX2J1dHRvbl9pbl9pb3NfYXBwIjoxLjAsImZvcmNlX21heF9hbGxvd2VkX3B1bGxpbmdfaW50ZXJ2YWxzIjoxLjAsInBhcGVyX2RlbGF5X3RyYWRpbmciOjEuMCwiZW5hYmxlX2ZpcnN0X3RvdWNoX2lzX3NlbGVjdGlvbiI6MS4wLCJjbGVhcl9wcm9qZWN0X29yZGVyX29uX29yZGVyX3RpY2tldF9jbG9zZSI6MS4wLCJlbmFibGVfbmV3X2JlaGF2aW9yX29mX2NvbmZpcm1fYnV0dG9uc19vbl9tb2JpbGUiOjEuMCwicmVuZXdfdG9rZW5fcHJlZW1wdGlvbl8zMCI6MS4wLCJkb19ub3Rfb3Blbl9vdF9mcm9tX3BsdXNfYnV0dG9uIjoxLjAsImJyb2tlcl9zaWRlX3Byb21vdGlvbiI6MS4wLCJlbmFibGVfbmV3X3RyYWRpbmdfbWVudV9zdHJ1Y3R1cmUiOjEuMCwicXVpY2tfdHJhZGluZ19wYW5lbCI6MS4wLCJwYXBlcl9vcmRlcl9jb25maXJtYXRpb25fZGlhbG9nIjoxLjAsInBhcGVyX211bHRpcGxlX2xldmVsc19lbmFibGVkIjoxLjAsInBhcGVyX21hcmdpbl9jb250cm9sIjoxLjAsImVuYWJsZV9zZWdtZW50YXRpb25fcGFwZXJfdHJhZGluZyI6MS4wLCJlbmFibGVfY2hhcnRfYWRhcHRpdmVfdHBzbF9idXR0b25zX29uX21vYmlsZSI6MS4wLCJlbmFibGVfbWFya2V0X3Byb2plY3Rfb3JkZXIiOjEuMCwiZW5hYmxlX3N5bWJvbHNfcG9wdWxhcml0eV9zaG93aW5nIjoxLjAsImVuYWJsZV90cmFuc2xhdGlvbnNfczNfdXBsb2FkIjoxLjAsImV0Zl9mdW5kX2Zsb3dzX29ubHlfZGF5c19yZXNvbHV0aW9ucyI6MS4wLCJkaXNhYmxlX3Nub3dwbG93X3BsYXRmb3JtX2V2ZW50cyI6MS4wLCJub3RpZnlfaWRlYV9tb2RzX2Fib3V0X2ZpcnN0X3B1YmxpY2F0aW9uIjoxLjAsImVuYWJsZV93YWZfdHJhY2tpbmciOjEuMCwibmV3X2Vycm9yc19mbG93IjoxLjAsInF1b3RlLXRva2VuLWZpbHRlci1vd24tc2NyaXB0cy1ieS1hY2Nlc3MiOjEuMCwia2VlcF9pbmRpY2F0b3JzX3NlYXJjaF9zdGF0ZSI6MS4wLCJrZWVwX2luZGljYXRvcnNfdGFiX3Njcm9sbF9zdGF0ZSI6MS4wLCJjb25maWd1cmFibGVfc2VhcmNoX2FuZF9maWx0cmF0aW9uIjoxLjAsInBpbmVfZWRpdG9yX3dyYXBfb25fbGluZV9zcGxpdCI6MS4wLCJzeW1ib2xfc2VhcmNoX2NvdW50cnlfc291cmNlcyI6MS4wLCJ3YXRjaGxpc3RzX2RpYWxvZ19zY3JvbGxfdG9fYWN0aXZlIjoxLjAsImJvdHRvbV9wYW5lbF90cmFja19ldmVudHMiOjEuMCwic25vd3Bsb3dfYmVhY29uX2ZlYXR1cmUiOjEuMCwic2hvd19kYXRhX3Byb2JsZW1zX2luX2hlbHBfY2VudGVyIjoxLjAsImVuYWJsZV9hcHBsZV9kZXZpY2VfY2hlY2siOjEuMCwiZW5hYmxlX2FwcGxlX2ludHJvX29mZmVyX3NpZ25hdHVyZSI6MS4wLCJlbmFibGVfYXBwbGVfcHJvbW9fb2ZmZXJfc2lnbmF0dXJlX3YyIjoxLjAsImVuYWJsZV9hcHBsZV9wcm9tb19zaWduYXR1cmUiOjEuMCwiZW5hYmxlX3B1c2hfbm90aWZpY2F0aW9uc19hbmRyb2lkIjoxLjAsImVuYWJsZV9wdXNoX25vdGlmaWNhdGlvbnNfaW9zIjoxLjAsImVuYWJsZV9tYW50aWNvcmVfY2x1c3RlciI6MS4wLCJlbmFibGVfcHVzaHN0cmVhbV9hdXRoIjoxLjAsImVuYWJsZV9lbnZveV9wcm94eSI6MS4wLCJlbmFibGVfZW52b3lfcHJveHlfcGFwZXJ0cmFkaW5nIjoxLjAsImVuYWJsZV9lbnZveV9wcm94eV9zY3JlZW5lciI6MS4wLCJvcHRpb25zX3JlZHVjZV9wb2xsaW5nX2ludGVydmFsIjoxLjAsIm9wdGlvbnNfYnVpbGRlcl9ncm91cF9hY3Rpb25zIjoxLjAsIm9wdGlvbnNfY2hhaW5fc2lnbWFfZmlsdGVyIjoxLjAsIm9wdGlvbnNfYnJva2VyX3N0cmF0ZWdpZXMiOjEuMCwic2hvd190b2FzdF9hYm91dF91bnJlYWRfbWVzc2FnZSI6MS4wLCJlbmFibGVfcGFydG5lcl9wYXlvdXQiOjEuMCwiZW5hYmxlX2VtYWlsX2NoYW5nZV9sb2dnaW5nIjoxLjAsImVuYWJsZV9lbWFpbF9vbl9wYXJ0bmVyX3N0YXR1c19jaGFuZ2UiOjEuMCwiZW5hYmxlX3BhcnRuZXJfcHJvZ3JhbV9hcHBseSI6MS4wLCJlbmFibGVfcGFydG5lcl9wcm9ncmFtIjoxLjAsImNvbXByZXNzX2NhY2hlX2RhdGEiOjEuMCwibmV3c19lbmFibGVfc3RyZWFtaW5nIjoxLjAsIm5ld3Nfc2NyZWVuZXJfcGFnZV9jbGllbnQiOjEuMCwiZW5hYmxlX2RlY2xhcmF0aW9uX3BvcHVwX29uX2xvYWQiOjEuMCwic2hvd19kYXRhX2JvbmRzX2ZyZWVfdXNlcnMiOjEuMCwiZW5hYmxlX21vZGVybl9yZW5kZXJfbW9kZSI6MS4wLCJlbmFibGVfcHJvZl9wb3B1cF9mcmVlIjoxLjAsImlvc19hcHBfbmV3c19hbmRfbWluZHMiOjEuMCwiZG9fbm90X2Rpc2Nsb3NlX3Bob25lX29jY3VwYW5jeSI6MS4wLCJlbmFibGVfcmVkaXJlY3RfdG9fd2lkZ2V0X2RvY3VtZW50YXRpb25fb2ZfYW55X2xvY2FsaXphdGlvbiI6MS4wLCJuZXdzX2VuYWJsZV9zdHJlYW1pbmdfaGliZXJuYXRpb24iOjEuMCwibmV3c19zdHJlYW1pbmdfaGliZXJuYXRpb25fZGVsYXlfMTBtaW4iOjEuMCwicGFzc19yZWNvdmVyeV9zZWFyY2hfaGlkZV9pbmZvIjoxLjAsIm5ld3NfZW5hYmxlX3N0cmVhbWluZ19vbl9zY3JlZW5lciI6MS4wLCJlbmFibGVfZm9yY2VkX2VtYWlsX2NvbmZpcm1hdGlvbiI6MS4wLCJzaG93X2dpZnRfYnV0dG9uIjoxLjAsImFkZHJlc3NfdmFsaWRhdGlvbl9lbmFibGVkIjoxLjAsImRpc2FibGVfdW52ZXJpZmllZF9hZGRyZXNzIjoxLjAsImdlbmVyYXRlX2ludm9pY2VfbnVtYmVyX2J5X2NvdW50cnkiOjEuMCwic2hvd19mYXZvcml0ZV9sYXlvdXRzIjoxLjAsImVuYWJsZV9zb2NpYWxfYXV0aF9jb25maXJtYXRpb24iOjEuMCwiZW5hYmxlX2FkX2Jsb2NrX2RldGVjdCI6MS4wLCJ0dmRfbmV3X3RhYl9saW5raW5nIjoxLjAsInR2ZF90aW1lX2FuZF9kYXRlX3JhbmdlX2xpbmtpbmciOjEuMCwidXNlX2Jyb3dzZXJfc2Vzc2lvbl9zdG9yYWdlIjoxLjAsInVzZV9kZXNrdG9wX3Nlc3Npb25fc3RvcmFnZSI6MS4wLCJ3cm9uZ19hY2NvdW50X2RpYWxvZ19wcmltYXJ5X3N3aXRjaCI6MS4wLCJlbmFibGVfbGluZ3VhX2xhbmdfY2hlY2siOjEuMCwiZ2V0X3NhdmVkX2FjdGl2ZV9saXN0X2JlZm9yZV9nZXR0aW5nX2FsbF9saXN0cyI6MS4wLCJ3YXRjaGxpc3RfYWRkX3NvdXJjZV9wYXJhbSI6MS4wLCJzaG93X3JlZmVycmFsX25vdGlmaWNhdGlvbl9kaWFsb2ciOjEuMCwic2V0X25ld19ibGFja19jb2xvciI6MS4wLCJuZXdzX3VzZV9uZXdzX21lZGlhdG9yIjoxLjAsImFsbG93X3RyYWlsaW5nX3doaXRlc3BhY2VfaW5fbnVtYmVyX3Rva2VuIjoxLjAsInJlc3RyaWN0X3B3bmVkX3Bhc3N3b3JkX3NldCI6MS4wLCJub3RpZl9zZXR0aW5nc19lbmFibGVfbmV3X3N0b3JlIjoxLjAsIm5vdGlmX3NldHRpbmdzX2Rpc2FibGVfb2xkX3N0b3JlX3dyaXRlIjoxLjAsIm5vdGlmX3NldHRpbmdzX2Rpc2FibGVfb2xkX3N0b3JlX3JlYWQiOjEuMCwiY2hlY2tvdXQtZW5hYmxlLXJpc2tzZGsiOjEuMCwiY2hlY2tvdXQtZW5hYmxlLXJpc2tzZGstZm9yLWluaXRpYWwtcHVyY2hhc2UiOjEuMCwiZW5hYmxlX21ldGFkZWZlbmRlcl9jaGVja19mb3JfYWdyZWVtZW50IjoxLjAsInNob3dfZG93bmxvYWRfeWllbGRfY3VydmVzX2RhdGEiOjEuMCwibW92ZV9rZXlfdGVub3JzX3RvX3NldHRpbmdzIjoxLjAsInNob3dfeWllbGRfY3VydmVzX21hcCI6MS4wLCJkaXNhYmxlX3dpZGdldGJhcl9pbl9hcHBzIjoxLjAsImhpZGVfcHVibGljYXRpb25zX29mX2Jhbm5lZF91c2VycyI6MS4wLCJlbmFibGVfc3VtbWFyeV91cGRhdGVzX2Zyb21fY2hhcnRfc2Vzc2lvbiI6MS4wLCJzaG93X25ld3NfZmxvd190b29sX3JpZ2h0X2JhciI6MS4wLCJlbmFibGVfY2hhcnRfc2F2aW5nX3N0YXRzIjoxLjAsImVuYWJsZV9zYXZpbmdfc2FtZV9jaGFydF9yYXRlX2xpbWl0IjoxLjAsIm5ld3NfYWxlcnRzX2VuYWJsZWQiOjEuMCwibmV3c19tdWx0aXBsZV9hbGVydHNfZW5hYmxlZCI6MS4wLCJyZWZ1bmRfdW52b2lkYWJsZV9jb3Vwb25zX2VuYWJsZWQiOjEuMCwiZW5hYmxlX3Nub3dwbG93X2VtYWlsX3RyYWNraW5nIjoxLjAsIm5ld3NfZW5hYmxlX3NlbnRpbWVudCI6MS4wLCJ1c2VfaW5fc3ltYm9sX3NlYXJjaF9vcHRpb25zX21jeF9leGNoYW5nZSI6MS4wLCJlbmFibGVfdXNlcnNldHRpbmdzX3N5bWJvbHNfcGVyX3Jvd19zb2Z0X2xpbWl0IjowLjEsImZvcmJpZF9sb2dpbl93aXRoX3B3bmVkX3Bhc3N3b3JkcyI6MS4wLCJkZWJ1Z19nZXRfdGVzdF9iYXJzX2RhdGEiOjEuMCwibmV3c191c2VfbWVkaWF0b3Jfc3RvcnkiOjEuMCwibmV3c19mbG93X3JlY29uZmlndXJlX2ZpbHRlcnMiOjEuMCwiYmxhY2tfZnJpZGF5X2VuYWJsZV9za2lwX3RvX3BheW1lbnQiOjEuMCwiaGlkZV90cmFkaW5nX2J1dHRvbl9vbl9ib3R0b21fcGFuZWxfYW5kX3JlcGxheV90YWIiOjEuMCwiaGlkZV90cmFkZV9idXR0b25faGludF9pbl9oZWFkZXJfdG9vbGJhciI6MS4wLCJoaWRlX3NlZV9vbl9zdXBlcl9jaGFydHNfYnV0dG9uIjoxLjAsImhpZGVfc3ltYm9sX3BhZ2VfY2hhcnRfdHlwZV9zd2l0Y2hlciI6MS4wLCJkaXNhYmxlX2NoYXRfc3BhbV9wcm90ZWN0aW9uX2Zvcl9wcmVtaXVtX3VzZXJzIjoxLjAsImRpc2FibGVfcHVibGljX3BpbmVfc2NyaXB0X3B1Ymxpc2hfbGltaXRzIjoxLjAsIm1ha2VfdHJhZGluZ19wYW5lbF9jb250ZXh0dWFsX3RhYiI6MS4wLCJyZWNvbm5lY3RfZ2Fpbl9zZXNzaW9uX29uX2xzX2Vycm9yIjoxLjAsImNoZWNrb3V0LWZsb3ctcGF5bWVudHMiOjEuMCwiZm9yY2VfdG9fY29tcGxldGVfa3ljIjoxLjAsImluZGlhX2V4Y2x1ZGVfYnJhaW50cmVlX3RhYiI6MS4wLCJtYWNyb19tYXBzX2hpZGVfdG9vbHRpcF9jaGFydF9idXR0b24iOjEuMCwiZm9yY2Vfa3ljX2Zvcl9ub25wcm9fcHVyY2hhc2VfYnlfY29tbWVyY2lhbCI6MS4wLCJzaG93X3NwbGl0X3BhbmVsX2Z1bGxzY3JlZW5fYnV0dG9uIjoxLjAsInNob3dfc3BsaXRfcGFuZWxfbW92ZV9idXR0b25fdG9fdGl0bGUiOjEuMCwib3JkZXJfcHJlc2V0c19jcnVkX3N0b3JhZ2UiOjEuMCwib3JkZXJfcHJlc2V0c19yZW1vdmVfZnJvbV90dl9zZXR0aW5ncyI6MS4wLCJjaGVja291dC1mbG93LXRyaWFsIjoxLjAsImNoZWNrb3V0LWZsb3ctZ29vZ2xlcGF5IjoxLjAsImNoZWNrb3V0LWZsb3ctYXBwbGVwYXkiOjEuMCwiY2hlY2tvdXQtZmxvdy1wYXlwYWwiOjEuMCwiZm9yYmlkX3NpZ251cF93aXRoX2Zha2VfZ21haWxfZG9tYWlucyI6MS4wLCJzaG93X2ltcG9ydF9mcm9tX3BhcGVyX3RyYWRpbmdfYnV0dG9uIjoxLjAsInN5bWJvbF9zZWFyY2hfZ3JvdXBpbmciOjEuMCwiY2hlY2tvdXQtZmxvdy1nb29nbGVwYXktdHJpYWwiOjEuMCwiY2hlY2tvdXQtZmxvdy1hcHBsZXBheS10cmlhbCI6MS4wLCJjaGVja291dC1mbG93LXBheXBhbC10cmlhbCI6MS4wLCJ2b2lkX25vdF9mb3VuZF9ja29fcGF5bWVudF9pbl9hcHByb3ZlZF93ZWJob29rIjoxLjAsInNob3dfcGFuZWxfY29sbGFwc2VfYnV0dG9uIjoxLjAsImRlbGF5X3N0YXR1c19vbl9sYXN0X2JhciI6MC4zfTsKd2luZG93LmluaXREYXRhID0ge307CgkJd2luZG93LlMzX0xPR09fU0VSVklDRV9CQVNFX1VSTCA9ICJodHRwczovL3MzLXN5bWJvbC1sb2dvLnRyYWRpbmd2aWV3LmNvbS8iOwoKd2luZG93LmluaXREYXRhID0geyJ3aWRnZXREZWZhdWx0cyI6eyJ3aWR0aCI6MTAwMCwiaGVpZ2h0Ijo0OTAsImRlZmF1bHRDb2x1bW4iOiJvdmVydmlldyIsIm1hcmtldCI6ImNyeXB0byIsInNjcmVlbmVyX3R5cGUiOiJjcnlwdG9fbWt0IiwiZGlzcGxheUN1cnJlbmN5IjoiVVNEIiwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImNvbG9yVGhlbWUiOiJsaWdodCIsImxvY2FsZSI6ImVuIn19OwoJCXdpbmRvdy5pbml0RGF0YS5jdXJyZW50TG9jYWxlSW5mbyA9IHsibGFuZ3VhZ2UiOiJlbiIsImxhbmd1YWdlX25hbWUiOiJFbmdsaXNoIiwiZmxhZyI6InVzIiwiZ2VvaXBfY29kZSI6InVzIiwiaXNvIjoiZW4iLCJpc29fNjM5XzMiOiJlbmciLCJnbG9iYWxfbmFtZSI6IkVuZ2xpc2giLCJpc19vbmx5X3JlY29tbWVuZGVkX3R3X2F1dG9yZXBvc3QiOnRydWV9OwoJCXdpbmRvdy5pbml0RGF0YS5zZXR0aW5ncyA9IHsnUzNfTE9HT19TRVJWSUNFX0JBU0VfVVJMJzogJ2h0dHBzOi8vczMtc3ltYm9sLWxvZ28udHJhZGluZ3ZpZXcuY29tLycsICdTM19ORVdTX0lNQUdFX1NFUlZJQ0VfQkFTRV9VUkwnOiAnaHR0cHM6Ly9zMy50cmFkaW5ndmlldy5jb20vbmV3cy8nLCAnV0VCUEFDS19TVEFUSUNfUEFUSCc6ICdodHRwczovL3N0YXRpYy50cmFkaW5ndmlldy5jb20vc3RhdGljL2J1bmRsZXMvJywgJ1RSQURJTkdfVVJMUyc6IHsnZnJlZSc6ICdodHRwczovL3BhcGVydHJhZGluZy1mcmVlLnRyYWRpbmd2aWV3LmNvbScsICdwcm8nOiAnaHR0cHM6Ly9wYXBlcnRyYWRpbmcudHJhZGluZ3ZpZXcuY29tJ30sICdDT05URVNUU19VUkwnOiAnL3BhcGVyLXRyYWRpbmcnLCAnQ1JVRF9TVE9SQUdFX1VSTCc6ICdodHRwczovL2NydWQtc3RvcmFnZS50cmFkaW5ndmlldy5jb20nfTs8L3NjcmlwdD4KCgk8c2NyaXB0IG5vbmNlPSI3cW5KbDBIOHZPV0xHM0VjZkJpTCtRPT0iPgoJCSgoKT0+eyJ1c2Ugc3RyaWN0Ijtjb25zdCBlPXt3aGl0ZWxhYmVsOiEwLHBlcm1pc3Npb25PdmVycmlkZXM6ITAsbGlua0NhcHR1cmluZ0FsbG93ZWQ6ITAsc3ltYm9sX3NlYXJjaF9kZWZhdWx0X2V4Y2hhbmdlOiEwLHN5bWJvbF9zZWFyY2hfYWxsb3dlZF9leGNoYW5nZXM6ITB9O2NvbnN0IHQ9d2luZG93O3QuaW5pdERhdGE9dC5pbml0RGF0YXx8e307Y29uc3QgYT0vXCsvZyxuPS88XC8/W14+XSsoPnwkKS9nLHM9ZT0+ZGVjb2RlVVJJQ29tcG9uZW50KGUucmVwbGFjZShhLCIgIikpLnJlcGxhY2UobiwiIiksbz10LmxvY2F0aW9uLnNlYXJjaC5zdWJzdHJpbmcoMSksYz0vKFteJj1dKyk9PyhbXiZdKikvZyxpPXt9O2xldCBsLHI9Yy5leGVjKG8pO2Zvcig7bnVsbCE9PXI7KWlbcyhyWzFdKV09cyhyWzJdKSxyPWMuZXhlYyhvKTt0cnl7bD1KU09OLnBhcnNlKGRlY29kZVVSSUNvbXBvbmVudCh0LmxvY2F0aW9uLmhhc2guc3Vic3RyaW5nKDEpKSksIm9iamVjdCI9PXR5cGVvZiBsJiZudWxsIT09bHx8KGw9e30pfWNhdGNoKGUpe2w9e319dmFyIGg7dC5pbml0RGF0YS5xdWVyeVNldHRpbmdzPWksdC5pbml0RGF0YS5oYXNoU2V0dGluZ3M9KGg9bCxPYmplY3Qua2V5cyhoKS5mb3JFYWNoKCh0PT57ZVt0XSYmZGVsZXRlIGhbdF19KSksaCl9KSgpOwoJPC9zY3JpcHQ+CgoJPHNjcmlwdCBub25jZT0iN3FuSmwwSDh2T1dMRzNFY2ZCaUwrUT09Ij53aW5kb3cuU1NfSE9TVCA9ICJzeW1ib2wtc2VhcmNoLnRyYWRpbmd2aWV3LmNvbSI7CgkJd2luZG93LldJREdFVF9TSEVSSUZGX0hPU1QgPSAiaHR0cHM6Ly93aWRnZXQtc2hlcmlmZi50cmFkaW5ndmlldy13aWRnZXQuY29tIjsKCQl3aW5kb3cuaXNfYXV0aGVudGljYXRlZCA9IGZhbHNlOwoKCXdpbmRvdy5TQ1JFRU5FUl9IT1NUID0gJ2h0dHBzOi8vc2Nhbm5lci50cmFkaW5ndmlldy5jb20nOwoKCQl3aW5kb3cubG9jYWxlX2RvbWFpbnMgPSB7ImVuIjoid3d3LnRyYWRpbmd2aWV3LmNvbSIsImFyX0FFIjoiYXIudHJhZGluZ3ZpZXcuY29tIiwiYnIiOiJici50cmFkaW5ndmlldy5jb20iLCJkZV9ERSI6ImRlLnRyYWRpbmd2aWV3LmNvbSIsImVzIjoiZXMudHJhZGluZ3ZpZXcuY29tIiwiZnIiOiJmci50cmFkaW5ndmlldy5jb20iLCJoZV9JTCI6ImlsLnRyYWRpbmd2aWV3LmNvbSIsImlkIjoiaWQudHJhZGluZ3ZpZXcuY29tIiwiaW4iOiJpbi50cmFkaW5ndmlldy5jb20iLCJpdCI6Iml0LnRyYWRpbmd2aWV3LmNvbSIsImphIjoianAudHJhZGluZ3ZpZXcuY29tIiwia3IiOiJrci50cmFkaW5ndmlldy5jb20iLCJtc19NWSI6Im15LnRyYWRpbmd2aWV3LmNvbSIsInBsIjoicGwudHJhZGluZ3ZpZXcuY29tIiwicnUiOiJydS50cmFkaW5ndmlldy5jb20iLCJ0aF9USCI6InRoLnRyYWRpbmd2aWV3LmNvbSIsInRyIjoidHIudHJhZGluZ3ZpZXcuY29tIiwidmlfVk4iOiJ2bi50cmFkaW5ndmlldy5jb20iLCJ6aF9DTiI6ImNuLnRyYWRpbmd2aWV3LmNvbSIsInpoX1RXIjoidHcudHJhZGluZ3ZpZXcuY29tIiwiY2FfRVMiOiJlcy50cmFkaW5ndmlldy5jb20ifTsKCgkJCXdpbmRvdy5fX2luaXRpYWxFbmFibGVkRmVhdHVyZXNldHMgPSB3aW5kb3cuX19pbml0aWFsRW5hYmxlZEZlYXR1cmVzZXRzIHx8IFtdOwoJCQkJd2luZG93Ll9faW5pdGlhbEVuYWJsZWRGZWF0dXJlc2V0cy5wdXNoKCd3aWRnZXQnKTsKCgkJd2luZG93LlRyYWRpbmdWaWV3ID0gd2luZG93LlRyYWRpbmdWaWV3IHx8IHt9Owo8L3NjcmlwdD4KCjwvaGVhZD4KPGJvZHk+Cgk8c2NyaXB0IG5vbmNlPSI3cW5KbDBIOHZPV0xHM0VjZkJpTCtRPT0iPgoJCSgoKT0+eyJ1c2Ugc3RyaWN0Ijtjb25zdCB0PTEwMTk7dmFyIGUscyxvLGEsZDshZnVuY3Rpb24odCl7dC5BZGFwdGl2ZT0iYWRhcHRpdmUiLHQuUmVndWxhcj0icmVndWxhciIsdC5Db21wYWN0PSJjb21wYWN0In0oZXx8KGU9e30pKSxmdW5jdGlvbih0KXt0LkFsbFN5bWJvbHM9ImFsbF9zeW1ib2xzIix0Lk1hcmtldD0ibWFya2V0Iix0LlN5bWJvbD0ic3ltYm9sIn0oc3x8KHM9e30pKSxmdW5jdGlvbih0KXt0LkNyeXB0b2N1cnJlbmNpZXM9ImNyeXB0byIsdC5DdXJyZW5jaWVzPSJmb3JleCIsdC5TdG9ja3M9InN0b2NrIix0LkluZGljZXM9ImluZGV4Iix0LkZ1dHVyZXM9ImZ1dHVyZXMiLHQuQm9uZHM9ImNmZCJ9KG98fChvPXt9KSksZnVuY3Rpb24odCl7dC5IVE1MPSJodG1sIix0LlJlYWN0PSJyZWFjdCJ9KGF8fChhPXt9KSksZnVuY3Rpb24odCl7dC5UaGVtZUNsYXNzUHJlZml4PSJ0aGVtZS0ifShkfHwoZD17fSkpO2NvbnN0IGM9d2luZG93O2MuaW5pdERhdGE9Yy5pbml0RGF0YXx8e307bGV0IGk9Yy5pbml0RGF0YS5oYXNoU2V0dGluZ3M7aWYoYy5pbml0RGF0YS53aWRnZXREZWZhdWx0cyYmKGk9ey4uLmMuaW5pdERhdGEud2lkZ2V0RGVmYXVsdHMsLi4uaX0pLHZvaWQgMCE9PWkpe2lmKHZvaWQgMCE9PWkuY29sb3JUaGVtZSYmZnVuY3Rpb24odCxlPXdpbmRvdyl7Y29uc3Qgcz0idGhlbWUtIit0LG89ZS5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0O2Zvcihjb25zdCB0IG9mIEFycmF5LmZyb20obykpdC5zdGFydHNXaXRoKCJ0aGVtZS0iKSYmdCE9PXMmJm8ucmVtb3ZlKHQpO28uYWRkKHMpLGUuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmRhdGFzZXQudGhlbWU9dH0oaS5jb2xvclRoZW1lKSwoaS5pc1RyYW5zcGFyZW50fHxpLnRyYW5zcGFyZW5jeSkmJmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc0xpc3QuYWRkKCJpcy10cmFuc3BhcmVudCIpLHZvaWQgMCE9PWkuZGlzcGxheU1vZGUmJmZ1bmN0aW9uKHMsbyl7aWYobz09PWUuQWRhcHRpdmUpe2NvbnN0IGU9d2luZG93Lm1hdGNoTWVkaWEoYChtYXgtd2lkdGg6ICR7dH1weClgKSxvPSgpPT57cy5jbGFzc0xpc3QudG9nZ2xlKCJ0di1kaXNwbGF5LW1vZGUtcmVndWxhciIsIWUubWF0Y2hlcykscy5jbGFzc0xpc3QudG9nZ2xlKCJ0di1kaXNwbGF5LW1vZGUtY29tcGFjdCIsZS5tYXRjaGVzKX07bygpLGUuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixvKX1lbHNlIHMuY2xhc3NMaXN0LnRvZ2dsZSgidHYtZGlzcGxheS1tb2RlLXJlZ3VsYXIiLG89PT1lLlJlZ3VsYXIpLHMuY2xhc3NMaXN0LnRvZ2dsZSgidHYtZGlzcGxheS1tb2RlLWNvbXBhY3QiLG89PT1lLkNvbXBhY3QpfShkb2N1bWVudC5ib2R5LGkuZGlzcGxheU1vZGUpLGkuYm9keUNsYXNzZXMpZm9yKGNvbnN0IHQgb2YgaS5ib2R5Q2xhc3Nlcylkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5hZGQodCk7aS5ib2R5X2NsYXNzJiZkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC5hZGQoaS5ib2R5X2NsYXNzKSxpLmJvZHlJZCYmKGRvY3VtZW50LmJvZHkuaWQ9aS5ib2R5SWQpfX0pKCk7Cgk8L3NjcmlwdD4KCgk8ZGl2IGlkPSJqcy1zY3JlZW5lci1jb250YWluZXIiIGNsYXNzPSJ0di13aWRnZXQtc2NyZWVuZXJfX2NvbnRhaW5lciI+PC9kaXY+Cgo8c2NyaXB0IG5vbmNlPSI3cW5KbDBIOHZPV0xHM0VjZkJpTCtRPT0iPgoJd2luZG93LmluaXREYXRhID0gd2luZG93LmluaXREYXRhIHx8IHt9OwoKCXdpbmRvdy5pbml0RGF0YS5zbm93cGxvd1NldHRpbmdzID0gewoJCWNvbGxlY3RvcklkOiAndHZfY2YnLAoJCXVybDogJ3Nub3dwbG93LXBpeGVsLnRyYWRpbmd2aWV3LmNvbScsCgkJcGFyYW1zOiB7CgkJCWFwcElkOiAndHJhZGluZ3ZpZXcnLAoJCQlwb3N0UGF0aDogJy9jb20udHJhZGluZ3ZpZXcvdHJhY2snLAoJCX0sCgkJZW5hYmxlZDogdHJ1ZSwKCX0KPC9zY3JpcHQ+PC9ib2R5Pgo8L2h0bWw+"}},"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":"scanner.tradingview.com/crypto/scan?api_key=widget_user_token\u0026label-product=screener-crypto_mkt-old","fqdn":"scanner.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"143.204.238.100","port":443,"asn":16509,"as":"AMAZON-02","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"xhr","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.001Z","timestamp":1785126258001,"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.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Thu, 09 Oct 2025 00:00:00 GMT","end":"Fri, 06 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"02:47:4D:AC:A6:12:65:AD:C2:19:CD:7E:61:B8:BF:E1:D8:36:CF:00","sha256":"12:7C:86:50:31:B1:3E:03:76:8B:F1:84:D4:AD:BC:95:0E:C1:60:40:F5:CE:75:F0:11:AF:91:BC:55:C1:D7:36"}}},"request":{"raw":"POST /crypto/scan?api_key=widget_user_token\u0026label-product=screener-crypto_mkt-old HTTP/1.1\r\nHost: scanner.tradingview.com\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: text/plain, */*; q=0.01\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nContent-Type: application/x-www-form-urlencoded; charset=UTF-8\r\nContent-Length: 486\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: 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":486,"data":"{\"filter\":[{\"left\":\"sector\",\"operation\":\"nempty\"},{\"left\":\"name\",\"operation\":\"match\",\"right\":\"BTC$\"}],\"options\":{\"lang\":\"en\"},\"markets\":[\"crypto\"],\"symbols\":{\"query\":{\"types\":[]},\"tickers\":[]},\"columns\":[\"base_currency_logoid\",\"sector\",\"market_cap_calc\",\"market_cap_diluted_calc\",\"close\",\"total_shares_outstanding\",\"total_shares_diluted\",\"total_value_traded\",\"change\",\"pricescale\",\"minmov\",\"fractional\",\"minmove2\"],\"sort\":{\"sortBy\":\"market_cap_calc\",\"sortOrder\":\"desc\"},\"range\":[0,150]}"}},"response":{"raw":"HTTP/2 200 \r\ncontent-type: application/json; charset=utf-8\r\ndate: Mon, 27 Jul 2026 04:24:18 GMT\r\naccess-control-max-age: 86400\r\ncontent-encoding: gzip\r\nx-perm-error: InvalidCredential\r\nvary: Accept, Origin\r\nserver: tv\r\nvia: 76.164.232.88:443, 1.1 038b416cc16744bbf679fb2b2447475e.cloudfront.net (CloudFront)\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\naccess-control-allow-origin: https://www.tradingview-widget.com\r\naccess-control-allow-headers: Referer,Accept\r\naccess-control-allow-methods: GET, POST\r\naccess-control-allow-credentials: true\r\nx-cache: Miss from cloudfront\r\nx-amz-cf-pop: ARN53-P4\r\nx-amz-cf-id: NMWCmTn7A4Iu9awVNUPCjDV4v65_aHc9MTGx_7nb1P2edarkvLnK6Q==\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":"HSTS","description":"HTTP Strict Transport Security (HSTS) informs browsers that the site should only be accessed using HTTPS.","website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","common_platform_enumeration":"","icon":"","categories":["Security"]},{"name":"Amazon 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":27471,"size_decoded":12103,"mime_type":"application/json; charset=utf-8","magic":"JSON text data","md5":"c02682f62b316cdfb0f1e8750a240648","sha1":"ac65f0ca34975730c971db272ab3b160ef0da938","sha256":"e2e197a92451a05995b5cc453a89f6059564a36d80ab3de07f638ca40206b655","sha512":"28af2628c2bb4adbea0decd7571dbad10f10d306d4fb8abd684126cb11da9e080a24c8f685eb78f11bba9963bae006443a05cafe5276550f65fe6c8280be6efa","ssdeep":"384:KBsx1ZVNYjbUuYYvWaCR26mxsNb/C7JPXqwi98OUFS8Z+dDxZ95:BfZVNYjbZvWO6m6NtUM8Z0D73","tlshash":"51c2f0734e20aa9edbd28d89d732b939299a70ddd7c44f49d3b0c3271e56ec05016eb1","first_seen":"2026-07-27T04:25:12.745861Z","last_seen":"2026-07-27T04:25:12.745861Z","times_seen":1,"resource_available":false,"data":"eyJ0b3RhbENvdW50IjoxNzEsImRhdGEiOlt7InMiOiJCSVRGSU5FWDpCVENCVEMiLCJkIjpbImNyeXB0by9YVFZDQlRDIiwiQml0Y29pbiIsMjAwNjE3ODQsMjEwMDAwMDAsMSwyMDA2MTc4NCwyMTAwMDAwMCwyNDQ1MTguMzQ1NDI4NjI4ODIsMCwxLDEsImZhbHNlIiwwXX0seyJzIjoiQklURklORVg6VVNUQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ1VTRFQiLCJUZXJyYVVTRCIsMjgxNTI5Ny41Nzg4NjU1MTQsMjg5MTQ0MS44MTAyNDQ5OTk0LDAuMDAwMDE1MjksMTg0MTI2NzIxOTY2LjM1MTQ3LDE4OTEwNjcyNDAxOC42Mzk2LDYwNjg3OS4zMzA3NTIxMDY1LC0wLjE5NTgyMjQ1NDMwODA4MTEsMTAwMDAwMDAwLDEsImZhbHNlIiwxXX0seyJzIjoiUE9MT05JRVg6VVNEVEJUQyIsImQiOlsiY3J5cHRvL1hUVkNVU0RUIiwiVGV0aGVyIFVTRHQiLDI4MTM0NTYuMzExNjQ1ODUwNSwyODg5NTUwLjc0MzAwNDgxMywwLjAwMDAxNTI4LDE4NDEyNjcyMTk2Ni4zNTE0NywxODkxMDY3MjQwMTguNjM5Niw2MDY4NzkuMzMwNzUyMTA2NSwtMC4wNjU0MDIyMjM2NzU2MTU0MiwxMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJCSU5BTkNFOkJOQkJUQyIsImQiOlsiY3J5cHRvL1hUVkNCTkIiLCJCaW5hbmNlIENvaW4iLDExNjc5OTUuOTA5ODM0ODgsMTE2Nzk5NS45MTU5NzQ1OCwwLjAwODc3MSwxMzMxNjU2NDkuMjgsMTMzMTY1NjQ5Ljk4LDEyNTE2LjQzNzQwMDk1MDg4OCwtMC4yOTU1NTUzMDI5NDQxODUzLDEwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpVU0RDQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ1VTREMiLCJVU0RDIiwxMTA5NTU4LjkyNTc3MjE1ODIsMTEwOTU1OC45MjU3NzIxNTgyLDAuMDAwMDE1MjksNzI1Njc2MjEwNDQuNjE0NjUsNzI1Njc2MjEwNDQuNjE0NjUsMTAxMjg1LjM5OTI0OTIyMzkzLDAuMTk2NTkyMzk4NDI3MjcwMDMsMTAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IkJJTkFOQ0U6WFJQQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ1hSUCIsIlhSUCIsMTA1OTkzOC45NTk2MzcyNDk4LDE2OTQ5OTkuOTk5OTk5OTk5OCwwLjAwMDAxNjk1LDYyNTMzMjcxOTU1LDEwMDAwMDAwMDAwMCwxMDM3OC44MDYxNjIwODE2ODYsLTAuNDExMjgwODQ2MDYzNDYwNzcsMTAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiQklOQU5DRTpTT0xCVEMiLCJkIjpbImNyeXB0by9YVFZDU09MIiwiU29sYW5hIiw2ODIxMDQuNzIyNTkzMDYxMiw3MzgyODcuODQ0MjE2NjU1LDAuMDAxMTY5OCw1ODMwOTUxNjMuNzgyNzUwMiw2MzExMjMxMzUuNzYzOTM4MywxNzkzOC41MzgzNzE1MjQzNjIsLTAuMzA2ODAwNzQ5OTU3Mzk2MiwxMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IkJJTkFOQ0U6VFJYQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ1RSWCIsIlRST04iLDQ4MTA2MS43NTc2NjAzMTczNSw0ODEwNjEuNzU2ODM4NjMzMSwwLjAwMDAwNTA3LDk0ODgzOTc1ODY5Ljg4NTA5LDk0ODgzOTc1NzA3LjgxNzE4LDQ3NDUuNjI4MzU5MjY0ODUxNSwtMC4xOTY4NTAzOTM3MDA3ODU1MywxMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJCSVRGSU5FWDpIWVBFQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0hZUEVIIiwiSHlwZXJsaXF1aWQiLDIzMTQ2OC4xNzYwMzIyMjExLDg3MzAyMy44MzE1OTM5MzA0LDAuMDAwOTE2MDM0MjY3MDQ5OTU5LDI1MjY4NTA2Mi41MTE1Mjg1Miw5NTMwNDcxMzIuNjIwMzMxNCwyOTkyLjU3NjE5NjgxOTU1NywwLjQxMzEzMTQzOTAyMjA4MTYsMTAwMDAwMDAwMDAwMDAwMDAwMCwxLCJmYWxzZSIsMV19LHsicyI6IkJJTkFOQ0U6RE9HRUJUQyIsImQiOlsiY3J5cHRvL1hUVkNET0dFIiwiRG9nZWNvaW4iLDE5MTQ2MS4wNDY3MDE3Njg1NiwxOTE0NjEuMDQ2NzAxNzY4NTYsMC4wMDAwMDExMiwxNzA5NDczNjMxMjYuNTc5MDcsMTcwOTQ3MzYzMTI2LjU3OTA3LDg5ODguOTYxMjcxMzc2NjAyLDAsMTAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6VVNEU0JUQyIsImQiOlsiY3J5cHRvL1hUVkNVU0RTMiIsIlVTRFMiLDE1NzA0MS4wNDc3NDAxNDgsMTU3MDQxLjA0Nzc0MDE0OCwwLjAwMDAxNTUsMTAxMzE2ODA0OTkuMzY0Mzg4LDEwMTMxNjgwNDk5LjM2NDM4OCw5MDAuMzQ0ODEwODYwMzI2OCw2LjYwMjQ3NTkyODQ3MzE4NCwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiQklURklORVg6TEVPQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0xFTyIsIlVOVVMgU0VEIExFTyIsMTM5MDM4LjUzNzU5MDczOSwxNDg4NzkuNTQxNDQ5NDQsMC4wMDAxNTExMSw5MjAxMTQ3MzQuOSw5ODUyMzk1MDQsMy4wNDQ0NjM0NjgwMzkxNjczLDEuMDQ5ODg2MzE4MDQxOTk1NSwxMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJCSVRGSU5FWDpaRUNCVEMiLCJkIjpbImNyeXB0by9YVFZDWkVDIiwiWmNhc2giLDEzMDQxNC4wNTgwMjAyNjk5MiwxNjMxMDQuOSwwLjAwNzc2NjksMTY3OTEwMDUuMTY1NTQ0OCwyMTAwMDAwMCw1MTIyLjAwNTI5NzE5MDI4OCwwLjI1NDI4NTQxOTI0ODI0NTgsMTAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IkJJVFJVRTpXQlRDQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ1dCVEMiLCJXcmFwcGVkIEJpdGNvaW4iLDExNjQ1Mi42MDI1NjU3MzEzNCwxMTY0NTIuNjAyNTY1NzMxMzQsMC45OTk2LDExNjQ5OS4yMDIyNDY2MywxMTY0OTkuMjAyMjQ2NjMsMTE3MS42MDY0MDA3NDQxNzk0LDAuMDEwMDA1MDAyNTAxMjQ5NTIzLDEwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IkNPSU5FWDpYTVJCVEMiLCJkIjpbImNyeXB0by9YVFZDWE1SIiwiTW9uZXJvIiwxMDEzODkuMDk3NTYzNzUyMTUsMTAxMzg5LjA5NzU2Mzc1MjE1LDAuMDA1Mzk3ODQsMTg3ODMyNzIuMTE2OTQ5MDMsMTg3ODMyNzIuMTE2OTQ5MDMsMTA5NS4wNTc0MDk1MTM5NzA3LC0wLjI4MzM4MjQxMTA3ODE0NTc3LDEwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IkJJTkFOQ0U6TElOS0JUQyIsImQiOlsiY3J5cHRvL1hUVkNMSU5LIiwiQ2hhaW5MaW5rIiwxMDA2MTkuNDQ2MDIyMTQ2ODksMTM0NTAwLDAuMDAwMTM0NSw3NDgwOTk5NzAuNDI0ODg0LDEwMDAwMDAwMDAsMzU1Ni43ODQxNDM3MzIyMTM2LC0wLjI5NjUxNTkzNzczMTY2MDI0LDEwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiQ09JTkJBU0U6WExNQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ1hMTSIsIlN0ZWxsYXIiLDk1MDYzLjk3Njk1NDA2NDg2LDEzOTAwNS4wMjI5MzczNjAwMiwwLjAwMDAwMjc4LDM0MTk1Njc1MTYzLjMzMjY4LDUwMDAxODA2ODEyLDEzMzcuNjczMDQwNzg5MTk2NCwtMC4zNTg0MjI5MzkwNjgwOTY5LDEwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IkJJTkFOQ0U6QURBQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0FEQSIsIkNhcmRhbm8iLDkyNjg0LjM0NDUwNjQwODYsMTE0Mjk5Ljk5OTk5OTk5OTk5LDAuMDAwMDAyNTQsMzY0ODk4OTk0MTEuOTcxODksNDUwMDAwMDAwMDAsMjEyNy41ODY3MjgxMDg0ODY2LDAsMTAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiV0hJVEVCSVQ6V0JUQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ1dCVCIsIldoaXRlQklUIENvaW4iLDc1OTU0Ljk2NTE3OCwzNTA4MDAsMC4wMDA4NzcsODY2MDc3MTQsNDAwMDAwMDAwLDY4Ny4xMjA4ODAzMjM1NjQyLC0wLjAxMTQwMTIwODUyODExMDQzNywxMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IlVQQklUOkNDQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0NDQ0EiLCJDYW50b24iLDcyMDYxLjI3MzcwNTc3ODA2LDcyMDYxLjI3MzcwNTc3ODA2LDAuMDAwMDAxODQsMzkxNjM3MzU3MDkuNjYxOTksMzkxNjM3MzU3MDkuNjYxOTksMTY2LjYzMjg1MzUzNzYxMjU2LDAsMTAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IkNPSU5CQVNFOkJDSEJUQyIsImQiOlsiY3J5cHRvL1hUVkNCQ0giLCJCaXRjb2luIENhc2giLDY2NDgxLjM0OTgxMjUsNjk1NzMsMC4wMDMzMTMsMjAwNjY4MTIuNSwyMTAwMDAwMCwxMjg1LjQzNjYwMzE3MjA1NDIsLTAuMTgwNzc3MzQyNTczMDYyMDUsMTAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IkNPSU5FWDpHUkFNQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0dSQU0iLCJHcmFtIChwcmV2LiBUb25jb2luKSIsNjMzNTkuNTU5ODcxOTk1MjMsMTIwOTk4LjgxNjI1NDYzNSwwLjAwMDAyMzE4MjIsMjczMzExMjQ2OC43MDQyMzEzLDUyMTk0NzA4MTEuODU3MTU4LDU1OC4yNzQxMzA0OTA2Mjc1LC0wLjEzNzQxNjQ4Mzk0NzI1MSwxMDAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IlVQQklUOlVTRDFCVEMiLCJkIjpbImNyeXB0by9YVFZDVVNEMVciLCJXb3JsZCBMaWJlcnR5IEZpbmFuY2lhbCBVU0QiLDYyMTcyLjk1Mzc0ODc2ODA2LDYyMTcyLjk1Mzc0ODc2ODA2LDAuMDAwMDE1MTMsNDEwOTI1MDA4Mi41MzU4OTI1LDQxMDkyNTAwODIuNTM1ODkyNSw4MTI3Ljk1NzI1NjczNzkwNSwtMS4xMTExMTExMTExMTExMDA1LDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJCSU5BTkNFOkxUQ0JUQyIsImQiOlsiY3J5cHRvL1hUVkNMVEMiLCJMaXRlY29pbiIsNTYyMTUuNTcxMzY0MjI5ODcsNjA5ODQsMC4wMDA3MjYsNzc0MzE5MTYuNDc5NjU1NDcsODQwMDAwMDAsMzU2OS40MTU4ODQ2MzA2NTEsLTAuNjgzOTk0NTI4MDQzNzc3NSwxMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiQklOQU5DRTpIQkFSQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0hCQVIiLCJIZWRlcmEiLDQ2ODU2LjQ3Mjk4ODc3ODY2LDUzNDk5Ljk5OTk5OTk5OTk5LDAuMDAwMDAxMDcsNDM3OTEwOTYyNTEuMTk1MDE1LDUwMDAwMDAwMDAwLDQ5MC42NTY3NTA5NDQ3MzY0LC0wLjkyNTkyNTkyNTkyNTkzNjYsMTAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiQklURklORVg6U0hJQkJUQyIsImQiOlsiY3J5cHRvL1hUVkNTSElCIiwiU0hJQkEgSU5VIiw0NjA3OC42MTU3NjQzODA0NTQsNDYxMDMuMDIwNzc1MDk0MDEsNy44MmUtMTEsNTg5MjQwNjEwNzk3NzA0LDU4OTU1MjY5NTMzMzY4Myw3NzQzLjM3Mzc1NDAxMzY5MywtNC45ODE3NzM5OTc1Njk4NzEsMTAwMDAwMDAwMDAwMDAsMSwiZmFsc2UiLDFdfSx7InMiOiJCSU5BTkNFOlNVSUJUQyIsImQiOlsiY3J5cHRvL1hUVkNTVUkiLCJTYWxtb25hdGlvbiIsNDQ2MTYuMTk4Mjc5NjE2NTEsMTEwMTAwLDAuMDAwMDExMDEsNDA1MjMzNDA4NS4zNDIwOTksMTAwMDAwMDAwMDAsMjA5NS43NTc3NTc1NjM5MDA3LC0wLjQ1MjA3OTU2NjAwMzYyNzYsMTAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiQklOQU5DRTpBVkFYQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0FWQVgiLCJBdmFsYW5jaGUiLDQ0MjU2LjYyNjAyMDY2NDIyLDczMzY0LjI0MzY5NzUsMC4wMDAxMDI1LDQzMTc3MTk2MS4xNzcyMTE5LDcxNTc0ODcxOSwzMzA2LjE2NzEwMjA1NjUwMDQsLTAuNDg1NDM2ODkzMjAzODgyMTcsMTAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJDUllQVE9DT006Q1JPQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0NSTyIsIkNyb25vcyIsNDE0NjUuMTgzNDk1Nzc1NDI1LDg3NzAwLDguNzdlLTA3LDQ3MjgwNzEwOTQxLjU5MTEzLDEwMDAwMDAwMDAwMCw5Mi4zODc4NjU4NzUxMTg3MiwwLjUxNTc1OTMxMjMyMDkxOTIsMTAwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJCSVRGSU5FWDpYQVVUQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ1hBVVQiLCJUZXRoZXIgR29sZCIsMzgyMzEuNjE2ODIzNTYzMzQ1LDQ0MTUzLjUwOTg5NDM1NCwwLjA2MjM4Niw2MTI4MjMuNjU5NTMyLDcwNzc0Ny4wODksMjk0Ny4xNzI4NDk0NjcwNCwtMC4wMTkyMzEzODU2MjEzNDIxMjcsMTAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiQklOQU5DRTpVTklCVEMiLCJkIjpbImNyeXB0by9YVFZDVU5JIiwiVW5pc3dhcCIsMzc0NDUuODU5NzM3MDc3MjYsNTM0NDcuMjM3NzU5OTczNTgsMC4wMDAwNTk5LDYyNTEzOTU2MS41NTM4Nzc1LDg5MjI3NDQyMC4wMzI5NDc5LDI5ODAuMjA5MTAwMzgyMTQxNSwwLjY3MjI2ODkwNzU2MzAxODcsMTAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJCSU5BTkNFOk5FQVJCVEMiLCJkIjpbImNyeXB0by9YVFZDTkVBUiIsIk5FQVIgUHJvdG9jb2wiLDM2NzUzLjQ0NzIwMDk5OTk5NSwzNjc1My40NDcyMDA5OTk5OTUsMC4wMDAwMjgyMywxMzAxOTI4NzAwLDEzMDE5Mjg3MDAsMTU3NC40Mjg5ODU5NjMzNDIzLDAuNDk4Mzk4MDA2NDA3OTY5NiwxMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJCSU5BTkNFOlRBT0JUQyIsImQiOlsiY3J5cHRvL1hUVkNUQU9CIiwiQml0dGVuc29yIiwzNDAwMy4xOTYzNzM3ODY2NCw2Mzk0NSwwLjAwMzA0NSwxMTE2Njg5NS4zNjA4NDk0NywyMTAwMDAwMCwxNzA2LjMwMzgyMjgyNjc1NSwtMC4xMzExOTA1NTQyODAwOTUwMiwxMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiQ09JTkVYOk9ORE9CVEMiLCJkIjpbImNyeXB0by9YVFZDT05ETyIsIk9uZG8iLDMwMjQxLjQ2NDkxNjI1ODIwMyw2MjEwNiwwLjAwMDAwNjIxMDYsNDg2OTMzMDY0NywxMDAwMDAwMDAwMCwxOTEyLjc2OTM2MTYzOTkxOTUsMC40ODA1MTI1NDY3MTY0OTYsMTAwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJCSU5BTkNFOlBBWEdCVEMiLCJkIjpbImNyeXB0by9YVFZDUEFYRyIsIlBBWCBHb2xkIiwyNzc0Ni4yMzk4MzMyMzM0NiwyNzc0Ni4yMzk4MzMyMzM0NiwwLjA2MjM3LDQ0NDg2NS4xNTY4NTgsNDQ0ODY1LjE1Njg1OCwxMjA5LjA0NTg3ODY3ODY5NywtMC4zMTk2NDIwMDA5NTg5MjQwMywxMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpXTEZJQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ1dMRklPIiwiV2VuIExhbWJvIEZpbmFuY2lhbCIsMjY2OTAuODA1MDI5MjgsODQwMDAsOC40ZS0wNywzMTc3NDc2Nzg5MiwxMDAwMDAwMDAwMDAsNDUwLjcwODQ3Njg5MjQyNzgsLTIuMzI1NTgxMzk1MzQ4ODM5NiwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiQ09JTkVYOkFTVEVSQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0FTVEVSMiIsIkFzdGVyIiwyNTkxMS4wOTkyMTI5NDcyNzIsNzY3NzIuOCwwLjAwMDAwOTU5NjYsMjcwMDAyOTA5NC45ODY0ODE3LDgwMDAwMDAwMDAsNTg5LjYwODQ4OTQwNTQ1MDIsLTAuMzA2NDU4NDgyNjY2OTAxNiwxMDAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IkJJTkFOQ0U6RE9UQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0RPVCIsIlBvbGthZG90IiwyMTIyMy40ODQ4Nzg2MjMyMiwyNjI5MiwwLjAwMDAxMjUyLDE2OTUxNjY1MjMuODUxNjk1LDIxMDAwMDAwMDAsNzI5LjY0ODQ5OTE0NzE5MTgsLTEuMTgzODk4OTczOTU0MjI0NywxMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJCWUJJVDpNTlRCVEMiLCJkIjpbImNyeXB0by9YVFZDTU5UIiwiTWFudGxlIiwyMTAxOS4xMDM3NDQ4NDY5ODcsMzk1ODUuOTUxNDAwMTc1LDAuMDAwMDA2MzY1LDMzMDIyOTQzODIuNTM2ODQsNjIxOTMxNjc5NSwyNjMuNTI3Mzg3NTA0MjM0NCwwLjAzMTQzMTcxNDYwMDAzMzc5LDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJCSU5BTkNFOldMREJUQyIsImQiOlsiY3J5cHRvL1hUVkNXTERXIiwiV29sZiBXb3JrcyBEQU8iLDIwMzE0LjQxODMxNjc0NzM3LDU0MTAwLDAuMDAwMDA1NDEsMzc1NDk3NTY1OS4yODc4NjksMTAwMDAwMDAwMDAsMzA0My45MzIwNjg3OTg4NzY2LC0wLjU1MTQ3MDU4ODIzNTI4ODgsMTAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiQklURklORVg6VVNERkJUQyIsImQiOlsiY3J5cHRvL1hUVkNVU0RGRiIsIkFzdGVyIFVTREYiLDE5NDAzLjAwMDg4MDQ1NTM4NywxOTQwMy4wMDA4ODA0NTUzODcsMC4wMDAwMTUzNzk3Njc1OTU0NzYsMTI2MTU5MjU5Mi45OTYxOTI3LDEyNjE1OTI1OTIuOTk2MTkyNywxMy44MjY3NzU2NTM5MjI0NCwwLjk3NDAyNzQ3ODk4OTIyNzQsMTAwMDAwMDAwMDAwMDAwMDAwMCwxLCJmYWxzZSIsMV19LHsicyI6IkJJVEZJTkVYOlBFUEVCVEMiLCJkIjpbImNyeXB0by9YVFZDUEVQRSIsIlBlcGUiLDE4OTA5LjQwMjAyMDEzMzk5LDE4OTA5LjQwMjAyMDEzMzk5LDQuNTdlLTExLDQxMzc3MjQ3MzA4ODI3MS4xLDQxMzc3MjQ3MzA4ODI3MS4xLDUzMTUuNjI4NzQ0NDg3ODkyLDEuMTA2MTk0NjkwMjY1NDgzLDEwMDAwMDAwMDAwMDAwLDEsImZhbHNlIiwxXX0seyJzIjoiQklUR0VUOkJHQkJUQyIsImQiOlsiY3J5cHRvL1hUVkNCR0IiLCJCaXRnZXQgVG9rZW4iLDE3OTMyLjA1NDAyMzA2NzgzLDIzNjE2LjE5NTU2MzYwNjYsMC4wMDAwMjU2Nyw2OTg1NjA3MzMuMjcxMDQ5MSw5MTk5OTIwMzUuOTgsODkuNjk2MzExMDI2NDIyMiwtMC4wMzg5NDA4MDk5Njg4NTM1NzQsMTAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiQ09JTkJBU0U6RVRDQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0VUQyIsIkV0aGVyZXVtIENsYXNzaWMiLDE3MTgzLjYzMDI1Nzg4NDk0MywyMjk2Ni4zMDAwMDAwMDAwMDMsMC4wMDAxMDksMTU3NjQ3OTg0LjAxNzI5MzA0LDIxMDcwMDAwMCw3MzkuMDEwMzgxOTE5MjkxNywwLDEwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJCSVRGSU5FWDpTVEFCTEVCVEMiLCJkIjpbImNyeXB0by9YVFZDU1RBQkxFMyIsIlN0YWJsZSIsMTQ4MjcuNzcyMTcxODMwNTE1LDU5NjcyLjAwMjgwNDYsNS45NjcyMDAyODA0NmUtMDcsMjQ4NDg3OTI1MjQsMTAwMDAwMDAwMDAwLDE4Mi45ODI5MzA3NjMyNDg5NiwwLjc3NTMzNjA5MDc5NDc5MjIsMTAwMDAwMDAwMDAwMDAwMDAwMCwxLCJmYWxzZSIsMV19LHsicyI6IlVQQklUOk1PUlBIT0JUQyIsImQiOlsiY3J5cHRvL1hUVkNNT1JQSE8iLCJNb3JwaG8iLDE0NTMwLjA5Mzk3NjgzMTY4MiwyODE0MCwwLjAwMDAyODE0LDUxNjM1MDE3Ni44NTk2OTAyLDEwMDAwMDAwMDAsMzIxLjIzOTg1MzYyODMzOTgsLTE4LjgzNDcyNzQzMDA1NDc5NCwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiQklURklORVg6UE9MQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ1BPTFlHIiwiUE9MIChleC1NQVRJQykiLDEyNzEwLjYwMjA3NjU4NzgxMSwxMjcxMC42MDIwODg0ODI4MiwwLjAwMDAwMTE4OTUwMDk3ODQwNCwxMDY4NTY1OTIwMi43NzEsMTA2ODU2NTkyMTIuNzcxLDQwMy4yOTk3Njg2NzgxMDQsMC4yNDU2MTAyNzUwMTEzODg4LDEwMDAwMDAwMDAwMDAwMDAwMDAsMSwiZmFsc2UiLDFdfSx7InMiOiJCSU5BTkNFOlJFTkRFUkJUQyIsImQiOlsiY3J5cHRvL1hUVkNSTkRSIiwiUmVuZGVyIiwxMTc3MC45Mzg5NzgxMDQyNywxNDYxNi4xODkyMDk3ODAwMDEsMC4wMDAwMjI2OSw1MTg3NzIxMDEuMjgyNjkxNSw2NDQxNjg3NjIsMjQzLjYzNDgwMTIzNTY2OTUsLTAuMjE5ODc2ODY4OTUzMzc2NTUsMTAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiQklOQU5DRTpRTlRCVEMiLCJkIjpbImNyeXB0by9YVFZDUU5UIiwiUXVhbnQiLDExNzE5LjAwNjc3NjYsMTQ0NDUuMzQwMDM0OCwwLjAwMDk3MDcsMTIwNzI3MzgsMTQ4ODEzNjQsNzUuMTgwNjE0MTQxNzQ3MjEsLTAuNTMyODQxNDc5NjU5ODAzMSwxMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IlVQQklUOkFFUk9CVEMiLCJkIjpbImNyeXB0by9YVFZDQUVST0QiLCJBZXJvZHJvbWUgRmluYW5jZSIsOTYzNS4xMTU0MDA4MTE5NywxOTIzNy42Nzg3MjEwNzAxNTUsMC4wMDAwMDk4OSw5NzQyMjgwNDguNjE1OTcyNiwxOTQ1MTY0NjgzLjYyNjkxMTQsODE4LjAyMjg0NzU3MDc2ODQsLTI2Ljc0MDc0MDc0MDc0MDczNywxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiQklOQU5DRTpGSUxCVEMiLCJkIjpbImNyeXB0by9YVFZDRklMIiwiRmlsZWNvaW4iLDkzMzcuNzYxNDkyNTk5OTk5LDIyNjI1Ljk3MzAzMDY3OTk5NywwLjAwMDAxMTU2LDgwNzc2NDgzNSwxOTU3MjY0MTAzLDg3Ny43OTU2MjY0NjkxOTgsMS45NDAwMzUyNzMzNjg2MDMsMTAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiQklURklORVg6WERDQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ1hEQyIsIlhpbkZpbiBOZXR3b3JrIiw5MDQwLjk4MzEzNzM3Mjg4LDE2Mzg0LjE1OTc3NDEyNDE5LDQuMzAyZS0wNywyMTAxNTc2NzQwNC40LDM4MDg0OTgzMjAzLjQ1LDkxLjM5ODQ3OTIwMjY1NDgsMC4yNTYzNTA1MDEwNDg3MDExNiwxMDAwMDAwMDAwMCwxLCJmYWxzZSIsMV19LHsicyI6IkJJTkFOQ0U6QVJCQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0FSQkkiLCJBUkIgUHJvdG9jb2wiLDgzMzMuNzExMDQwMDYsMTI2MDAsMC4wMDAwMDEyNiw2NjE0MDU2MzgxLDEwMDAwMDAwMDAwLDU3Ny4wNzc1NzM1MjU1NjAzLC0xLjU2MjUwMDAwMDAwMDAwMTMsMTAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiQklURklORVg6QVBUQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0FQVE8iLCJBcHRvcyIsODExMy45MzE3NzQ5MzUxMjgsMjAxNjAsMC4wMDAwMDk2LDg0NTIwMTIyNi41NTU3NDI1LDIxMDAwMDAwMDAsNjM4LjQ3MDMwNTMwMjYwNTIsLTEuMDMwOTI3ODM1MDUxNTU0LDEwMDAwMDAwLDEsImZhbHNlIiwxXX0seyJzIjoiQklOQU5DRTpJTkpCVEMiLCJkIjpbImNyeXB0by9YVFZDSU5KIiwiSW5qZWN0aXZlIFByb3RvY29sIiw3NTI3LjgxMjg3Mzg1LDc1MzAsMC4wMDAwNzUzLDk5OTcwOTU0LjUsMTAwMDAwMDAwLDEwNTkuOTAyMjk0NDAyNDgyMywtMS4xNTUxNTg4MzQzMzk3Mjg1LDEwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IlVQQklUOlZWVkJUQyIsImQiOlsiY3J5cHRvL1hUVkNWVlYiLCJWZW5pY2UgVG9rZW4iLDc0ODkuNjYxOTYwMTM0MTQ5LDEyNzIyLjI2OTk2ODM1NDU4MiwwLjAwMDE1NzcsNDc0OTMxMDAuNTcxNTU0NTMsODA2NzM4NzQuMjQ0NDgwNTQsNTA5LjI0NTMwNTYzNjkyOTEsMCwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiQklOQU5DRTpDQUtFQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0NBS0UiLCJQYW5jYWtlU3dhcCIsNjkzOC4xNzg4MzQ3MzYzNTksODYwNCwwLjAwMDAyMTUxLDMyMjU1NTk2Ni4yODI0ODk5Niw0MDAwMDAwMDAsMjY2LjM5ODU5NTQxMDk0MDcsLTAuNTU0Nzg1MDIwODA0NDQ4NiwxMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpWSVJUVUFMQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ1ZJUlRVQUwiLCJWaXJ0dWFscyBQcm90b2NvbCIsNjU3NS4xNDMyMDg0NzM5ODcsMTAwMDAsMC4wMDAwMSw2NTc1MTQzMjAuODQ3Mzk4NiwxMDAwMDAwMDAwLDU2MS43NTYxMjE4MzM0NDA0LDMuOTUwMTAzOTUwMTAzOTY1NiwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiUE9MT05JRVg6REFTSEJUQyIsImQiOlsiY3J5cHRvL1hUVkNEQVNIIiwiRGFzaCIsNjQwNC43NzUzMjgwMTcxNzgsOTQ2OC45MDAwMDAwMDAwMDEsMC4wMDA1MDEsMTI3ODM5ODIuNjkwNjUzMDUsMTg5MDAwMDAsNTgwLjQzNjcwMTk0MDc4MTMsLTQuMDIyOTg4NTA1NzQ3MTIsMTAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IkJJTkFOQ0U6RkVUQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0ZFVCIsIkZldGNoLmFpIiw1NDY2LjUwOTM1MDg2NTQ4Miw2NjM1LjU2NTEwODY4LDAuMDAwMDAyNDQsMjI0MDM3MjY4NC43ODA5MzUzLDI3MTk0OTM4OTcsMTMxOC4wNzMwNzE1NzkyOTg0LDAuNDExNTIyNjMzNzQ0ODUyLDEwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IlVQQklUOkpUT0JUQyIsImQiOlsiY3J5cHRvL1hUVkNKVE8iLCJKaXRvIiw0MjI1LjgzMjkyMjM1OTk5OSw4Mjg2Ljc5MzExMzYxNDgxMywwLjAwMDAwODQsNTAzMDc1MzQ3LjksOTg2NTIyOTg5LjcxNjA0OTMsMzQ5LjQ0NTc5NjY3NzM4MjUzLC0xLjE3NjQ3MDU4ODIzNTMwMjgsMTAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IlVQQklUOk1PTkJUQyIsImQiOlsiY3J5cHRvL1hUVkNNT05BRCIsIk1PTiIsNDEzOC44MDc3NSwzOTk1OC4zMzMzNDMyNSwzLjVlLTA3LDExODI1MTY1MDAwLDExNDE2NjY2NjY5NSwyMzIuMTg3NzcyMzk4OTk4LDAsMTAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IkJJTkFOQ0U6UEVORExFQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ1BFTkRMRVBFTkRMRSIsIlBlbmRsZSIsNDA2MS41NjczNTMyNjA2NzcsNjY2MC45Mzk0MzA1Mjg4NTQsMC4wMDAwMjM2NiwxNzE2NjM4NzcuOTkwNzMwMjMsMjgxNTI3NDQ4LjQ1ODUzMTQ0LDMzMy45NDg0Mzc4NzMxMjA1NSwtMC43OTY2NDU3MDIzMDYwNzkxLDEwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IkJJTkFOQ0U6U1RYQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ1NUWFMiLCJTdGFja3MiLDQwMTAuMjc4NzkxOTAwOTgzLDQwMTAuMjAxNDk3MTUwOTgzLDAuMDAwMDAyMjEsMTgxNDYwNTc4OC4xOTA0OSwxODE0NTcwODEzLjE5MDQ5LDIzOC4wNTI2NzMwMDcxNzQ1OCwtMS4zMzkyODU3MTQyODU3MjAyLDEwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IkJJVEZJTkVYOlhQTEJUQyIsImQiOlsiY3J5cHRvL1hUVkNYUEwiLCJQbGFzbWEiLDM0NzIuMzExMzM2NTI5MjE0LDEyOTEzLjU1NDU1NzM0LDAuMDAwMDAxMjkxMzU1NDU1NzM0LDI2ODg4ODg4ODguODg4OSwxMDAwMDAwMDAwMCw3MDYuNjgyMzk4NDg3NDcxLC0wLjM5MjA4NjkzNjIzNjM1NDQzLDEwMDAwMDAwMDAwMDAwMDAwMDAsMSwiZmFsc2UiLDFdfSx7InMiOiJVUEJJVDpLSVRFQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0tJVEUiLCJLaXRlIiwzMzMwLDE4NTAwLDAuMDAwMDAxODUsMTgwMDAwMDAwMCwxMDAwMDAwMDAwMCwzODkuNzUxMDI2ODAxODU1MjMsLTUxLjE4NzMzNTA5MjM0ODI4NSwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6MlpCVEMiLCJkIjpbImNyeXB0by9YVFZDMloiLCJEb3VibGVaZXJvIiwzMjYzLjEzMjQ1LDk0MDAsOS40ZS0wNywzNDcxNDE3NTAwLDEwMDAwMDAwMDAwLDUzLjkwNTIxNjQwMTk1MjcyLC01Ljk5OTk5OTk5OTk5OTk5NiwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6U1lSVVBCVEMiLCJkIjpbImNyeXB0by9YVFZDU1lSVVAiLCJNYXBsZSBGaW5hbmNlIiwzMTU2LjE3NDY2MzE1NTMyOSwzMjk4LjM5NTM1NTE1NDQxMywwLjAwMDAwMjY1LDExOTEwMDkzMDYuODUxMDY3NSwxMjQ0Njc3NDkyLjUxMTA5OTMsODMuNDA5MTEyODgzNTUwNSwtMC43NDkwNjM2NzA0MTE5NzgsMTAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IkNPSU5FWDpLQUlBQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0tBSUEiLCJLYWlhIiwyODk1LjE4Mjg5Nzk5NDAxNCwyODk2LjM4NjE1ODMwODUwMDQsNC41NDFlLTA3LDYzNzU2NTA1MTMuMDg5NjU5LDYzNzgzMDAyODIuNTU1NjA1LDYyLjQyMDc1NjM5ODgzODIyLC0xLjUzOTQ2MjI3MjMzMzAzMzgsMTAwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJCSVRGSU5FWDpVU0FUQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ1VTQVQyIiwiVVNBVCIsMjg3My42Njk1NjYwNjk3MTksMjg3My42Njk1NjYwNjk3MTksMC4wMDAwMTU0OTI3OTc3ODAwMjEsMTg1NDg0MjIzLjUsMTg1NDg0MjIzLjUsNTkuODY4NzY2NTM2MDUzMzMsLTAuMzU3MTY4NTY5NjkzODc0MywxMDAwMDAwMDAwMDAwMDAwMDAwLDEsImZhbHNlIiwxXX0seyJzIjoiVVBCSVQ6QUtUQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0FLVCIsIkFrYXNoIE5ldHdvcmsiLDI2NTMuNzQ0MjE0MzUxMDc3LDM0ODEuMzA5NTExNjgsMC4wMDAwMDg5NiwyOTYxNzY4MDkuNjM3Mzk3LDM4ODUzOTAwOCw0MS4yMzA3OTA3NDA4MzIxLDIuNDAwMDAwMDAwMDAwMDE2LDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpSQVlCVEMiLCJkIjpbImNyeXB0by9YVFZDUkFZIiwiUmF5ZGl1bSIsMjY1Mi43NDE4NDA5MzI3ODcsNTQ2Ni43NSwwLjAwMDAwOTg1LDI2OTMxMzg5Mi40ODA0ODYsNTU1MDAwMDAwLDE0My42NTkzNzE3NTQ4NjM4NiwtMC41MDUwNTA1MDUwNTA1MDAyLDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJCSU5BTkNFOlRIRVRBQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ1RIRVRBIiwiVGhldGEgVG9rZW4iLDIxMjAsMjEyMCwwLjAwMDAwMjEyLDEwMDAwMDAwMDAsMTAwMDAwMDAwMCw1OC4xMzkxNzQ0OTk1Mzg1MDUsMC40NzM5MzM2NDkyODkwOTUsMTAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiQklOQU5DRTpBUkJUQyIsImQiOlsiY3J5cHRvL1hUVkNBUiIsIkFyd2VhdmUiLDE4ODIuMjU2MjAwMjIwMDAwMiwxODkyLjIyLDAuMDAwMDI4NjcsNjU2NTI0NjYsNjYwMDAwMDAsOTUuOTMyNTU0OTQxMjAzMjQsLTAuNDg1OTQyMzgxMTE3NjYyODYsMTAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6U0VOVEJUQyIsImQiOlsiY3J5cHRvL1hUVkNTRU5USUUiLCJTZW50aWVudCIsMTgwOS40Njk3MjE3NSw4NTg5LjkzNDU5MiwyLjVlLTA3LDcyMzc4Nzg4ODcsMzQzNTk3MzgzNjgsMTc4LjQxMTUxMDg3NDgxNzM0LDE5LjA0NzYxOTA0NzYxOTA0LDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJCSVRGSU5FWDpHT01JTklOR0JUQyIsImQiOlsiY3J5cHRvL1hUVkNHTVRHT01JTklOR1RPS0VOIiwiR2/QnGluaW5nIiwxNzk3LjM2MDI3NDA5NTc0NTYsMTc5Ny43MTU1MDYwNjk3Mzc2LDAuMDAwMDA0NDUxLDQwMzgxMDQ0MS4yNzA2Njg1LDQwMzg5MDI1MC43NDU4NDA4LDExMC42ODY1MTUzNjY0OTU3MSwwLjc5MjU3MjQ2Mzc2ODEyNzYsMTAwMDAwMDAwMCwxLCJmYWxzZSIsMV19LHsicyI6IlVQQklUOkNGR0JUQyIsImQiOlsiY3J5cHRvL1hUVkNDRkciLCJDZW50cmlmdWdlIiwxNjI3LjU4MjA5NDIyLDE5NjYuMDAzODEzODYsMC4wMDAwMDI4Miw1NzcxNTY3NzEsNjk3MTY0NDczLDE0Ni4wODU1NTM0OTA4MzM3MiwyLjkxOTcwODAyOTE5NzA4MzQsMTAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IldISVRFQklUOkFCVEMiLCJkIjpbImNyeXB0by9YVFZDQVZVIiwiVmF1bHRhIiwxNjEzLjg4MDEyMjcwNjg0LDIwNDUuODIsOS43NDJlLTA3LDE2NTY2MjA5NDMuMDM3MiwyMTAwMDAwMDAwLDExMS42OTkwNzU0NDU5MDQ1MywwLjI5ODU2ODkyODI0MDUwMzEsMTAwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpERUVQQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0RFRVBCIiwiRGVlcCBBSSIsMTQ3Ni44Mzk3NjU3NDUwMDEsMjcwMCwyLjdlLTA3LDU0Njk3NzY5MTAuMTY2NjcsMTAwMDAwMDAwMDAsNTEuMTMwNjA5Mjc0NjUyNzUsLTMuNTcxNDI4NTcxNDI4NTc0NywxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6WkFNQUJUQyIsImQiOlsiY3J5cHRvL1hUVkNaQU1BIiwiWmFtYSIsMTQ3NCw3NTAxLjY4NzM4MzExLDYuN2UtMDcsMjIwMDAwMDAwMCwxMTE5NjU0ODMzMywxMzU1Ljc5NDkwOTA1Nzc2NjUsLTE3LjI4Mzk1MDYxNzI4Mzk0MiwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6Q09XQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0NPVyIsIkNPVyIsMTMyNy41MTU4Mjc0Nzg2NjU2LDIzMDAsMC4wMDAwMDIzLDU3NzE4MDc5NC41NTU5NDE2LDEwMDAwMDAwMDAsNDQuMzUwNDQ4Mzk0MDY2NzQsMCwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6UExVTUVCVEMiLCJkIjpbImNyeXB0by9YVFZDUExVTUUiLCJQbHVtZSIsMTE3NC41NjI4ODgyMiwxOTAwLDEuOWUtMDcsNjE4MTkwOTkzOCwxMDAwMDAwMDAwMCwxNTYuOTA5ODgzODkzNDAwOTcsMTguNzUwMDAwMDAwMDAwMDA0LDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpXQUxCVEMiLCJkIjpbImNyeXB0by9YVFZDV0FMUiIsIldhbHJ1cyIsMTEzMC4wNjY2NjY4MiwyMzAwLDQuNmUtMDcsMjQ1NjY2NjY2Nyw1MDAwMDAwMDAwLDQ4LjU5NTg2NjkzOTQ2MDQ4NSwtMi4xMjc2NTk1NzQ0NjgwODczLDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpIVU1BQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0hVTUEiLCJIdW1hIEZpbmFuY2UiLDExMDguNjg2OTQ5Nzk5OTk5OSwzMzk5Ljk5OTk5OTk5OTk5OTUsMy40ZS0wNywzMjYwODQzOTcwLDEwMDAwMDAwMDAwLDY1Ljg3ODc1MzAyNTI1MTY1LDMuMDMwMzAzMDMwMzAzMDE3NCwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6T0NFQU5CVEMiLCJkIjpbImNyeXB0by9YVFZDT0NFQU4iLCJPY2VhbiBQcm90b2NvbCIsMTEwMS4wODEwNzA0NiwyNDY3LjUsMC4wMDAwMDE3NSw2MjkxODkxODMuMTIsMTQxMDAwMDAwMCwwLjc4MTc0NjYzODcyNjI4NjcsLTMuODQ2MTUzODQ2MTUzODQ0NSwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6Tk1SQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ05NUiIsIk51bWVyYWlyZSIsMTA1Ni41MTQxNDQ3NzA1NzMyLDE1NTIuMjEsMC4wMDAxNDExMSw3NDg3MTY3LjA2NjYxODc2LDExMDAwMDAwLDYwLjg5NjA2MDg5MDg1NTkxNCwtMS42NDQ5NDMxOTM2OTkwMjk1LDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpSVk5CVEMiLCJkIjpbImNyeXB0by9YVFZDUlZOIiwiUmF2ZW5jb2luIiw5ODIuMzg4NzI2NDcyNzYwNCwxMjYwLDZlLTA4LDE2MzczMTQ1NDQxLjIxMjY3NSwyMTAwMDAwMDAwMCwzOC43MzAzMzg4ODczMzM1MjQsMTkuOTk5OTk5OTk5OTk5OTk2LDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpCSU9CVEMiLCJkIjpbImNyeXB0by9YVFZDQklPUFIiLCJCaW8gUHJvdG9jb2wiLDk2OC4zMzY0MDk4NjQ1OTk5LDE0MjcuNjAwMDAwMDAwMDAwMSw0LjNlLTA3LDIyNTE5NDUxMzkuMjIsMzMyMDAwMDAwMCwxNTAuNzQyMzYyMTU1OTU4NCwtNC40NDQ0NDQ0NDQ0NDQ0Mzc1LDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJDT0lORVg6QUlPWkJUQyIsImQiOlsiY3J5cHRvL1hUVkNBSU9aIiwiQUlPWiBOZXR3b3JrIiw5NjguMjEzMzI4NTkxODc5Myw5NjguMjEzMzI4NTkxODc5Myw3LjYzNWUtMDcsMTI2ODEyNDg1Ny4zNTY3NTEsMTI2ODEyNDg1Ny4zNTY3NTEsNDMuNjQ3NjE3NDg4MTE1NTYsMC41MjY2NjIyNzc4MTQzNDkzLDEwMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6TElORUFCVEMiLCJkIjpbImNyeXB0by9YVFZDTElORUEiLCJMaW5lYSIsODkwLjEwNTMwNDQ1MTY5OTEsMjg4MC4zOTk2LDRlLTA4LDIyMjUyNjMyNjExLjI5MjQ3Nyw3MjAwOTk5MDAwMCwxNzEuMzQ5NDMxNjI1NjMyNSwwLDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpFU1BCVEMiLCJkIjpbImNyeXB0by9YVFZDRVNQUkVTIiwiRXNwcmVzc28iLDg3OS43Mjk0OTk5OTk5OTk5LDYwNjcuMDk5OTk5OTk5OTk5LDAuMDAwMDAxNjksNTIwNTUwMDAwLDM1OTAwMDAwMDAsMjY3My43MzY5OTU5NjM3MzQ0LDMzLjA3MDg2NjE0MTczMjI5LDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJDT0lORVg6TUlOQUJUQyIsImQiOlsiY3J5cHRvL1hUVkNNSU5BIiwiTWluYSIsODc3LjkwNDA5OTU1NjkwNjgsODc3LjkwNDA5OTU1NjkwNjgsNi44MmUtMDcsMTI4NzI0OTQxMi44NDAwMzkzLDEyODcyNDk0MTIuODQwMDM5MywxODguOTQxMDI1OTA4NTk4MjgsLTEuNDE2NTk0MzkxNDQyNjEyNywxMDAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IlVQQklUOlNQS0JUQyIsImQiOlsiY3J5cHRvL1hUVkNTUEtTIiwiU3BhcmsiLDgwNi45NTU1MTEzNjE3MzgzLDI3MDAsMi43ZS0wNywyOTg4NzI0MTE2LjE1NDU4NjMsMTAwMDAwMDAwMDAsMjA1LjU4MDkzMTg1OTQzNTEsMCwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6UkVCVEMiLCJkIjpbIiIsIlJlIiw4MDEuMTkyLDUwMjAsMC4wMDAwMDUwMiwxNTk2MDAwMDAsMTAwMDAwMDAwMCw3ODEuNDk4OTkwNDE1MTc4OSwtMzIuODg3NzAwNTM0NzU5MzU0LDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpBWExCVEMiLCJkIjpbImNyeXB0by9YVFZDQVhMIiwiQXhlbGFyIiw3NzQuNzIyNjQzNTE3NDU4Niw3OTkuMjg4ODMxMDYwMjM2OCw2LjRlLTA3LDEyMTA1MDQxMzAuNDk2MDI5LDEyNDg4ODg3OTguNTMxNjIsMzQuNTM1MzQ0OTY2NzkyODA2LDEuNTg3MzAxNTg3MzAxNTg5LDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpNRUdBQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ01FR0FFIiwiTWVnYUVUSCIsNzY4LjI1OTA5NTg0LDY3OTkuOTk5OTk5OTk5OTk5LDYuOGUtMDcsMTEyOTc5Mjc4OCwxMDAwMDAwMDAwMCwxNTQuNzgxOTA4NDQwNjgyNzcsNC42MTUzODQ2MTUzODQ2MDMsMTAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IlVQQklUOkJBQllCVEMiLCJkIjpbImNyeXB0by9YVFZDQkFCWUwiLCJCYWJ5Iiw3NjQuNTkyODYwNDk2MiwyMDcwLjA0NTIwMTkzLDEuOWUtMDcsNDAyNDE3Mjk0OS45OCwxMDg5NDk3NDc0Nyw5NS41NTQ2MDI1MTM0MDg3LDAsMTAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IlVQQklUOkVVTEJUQyIsImQiOlsiY3J5cHRvL1hUVkNFVUwiLCJFdWxlciIsNzU2LjcyMDk0MTUxNDI0MjYsODU5Ljc5MjU0MjM0MTU5NTksMC4wMDAwMzE2MywyMzkyNDE1Mi40MzQ4NDgwMSwyNzE4MjgxOC4yODQ1OTA0NSwzODYyLjAwMzUxMTU0OTkzMjcsLTguNjYzMDA4OTUxNzc1OTEzLDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpQRUFRQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ1BFQVEiLCJwZWFxIiw3MTkuNjQyNzgzMjAwMjg1NiwxNzAwLjI4NjA2ODU5MiwzZS0wNywyMzk4ODA5Mjc3LjMzNDI4NTcsNTY2NzYyMDIyOC42NCwzMi41MjU4NzIyMjE4Njk2NCwzLjQ0ODI3NTg2MjA2ODk2OTcsMTAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IlVQQklUOlNLUkJUQyIsImQiOlsiY3J5cHRvL1hUVkNTS1JTIiwiU2Fha3VydSBQcm90b2NvbCIsNjkyLjE4NTE2NzkyNzIxMTUsMTQ2Ni40NDA5MTI5MTA1Mzc3LDEuNGUtMDcsNDk0NDE3OTc3MC45MDg2NTMsMTA0NzQ1Nzc5NDkuMzYwOTgzLDY1LjA0ODkzMzQwNjIyMzY0LDAsMTAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IktVQ09JTjpDS0JCVEMiLCJkIjpbImNyeXB0by9YVFZDQ0tCIiwiTmVydm9zIE5ldHdvcmsiLDY3MS4yMTY2NTYxOTU2MjUyLDY4Mi41OTkwNTQyNDU3ODQ5LDEuMzY0ZS0wOCw0OTIwOTQzMjI3Mi40MDY1NCw1MDA0MzkxODkzMi45NzU0MywyNS4xNTM1NzQyOTQwOTgyNzQsLTEuMjMwOTkyMDM0NzU3NDE2NCwxMDAwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpUQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ1QiLCJUaHJlc2hvbGQiLDY2OS4zLDY2OS4zLDZlLTA4LDExMTU1MDAwMDAwLDExMTU1MDAwMDAwLDE4Ni4zNzYyNjkwMjAxNzE1NSwxOS45OTk5OTk5OTk5OTk5OTYsMTAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IlVQQklUOkNUQ0JUQyIsImQiOlsiY3J5cHRvL1hUVkNDVEMiLCJDcmVkaXRjb2luIiw2NjQuOTcyNzU5NDQsNzI2LDAuMDAwMDAxMjEsNTQ5NTY0MjY0LDYwMDAwMDAwMCwzMC4xMzAwNTExMTI5MzgzMzIsLTAuODE5NjcyMTMxMTQ3NTMzMiwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6QkxVUkJUQyIsImQiOlsiY3J5cHRvL1hUVkNCTFVSIiwiQmx1ciIsNjU1LjkzMzQwMDkwMDM5OTUsNjkwLDIuM2UtMDcsMjg1MTg4NDM1MS43NDA4Njc2LDMwMDAwMDAwMDAsMjQyLjU1MDY1MjUwMDk1NSwtNy45OTk5OTk5OTk5OTk5OTcsMTAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IktVQ09JTjpYWU9CVEMiLCJkIjpbImNyeXB0by9YVFZDWFlPIiwiWFlPIiw2NDAuNzAyMjU1ODU2NDU2LDY0My42MjIyMjI1MzU1OTk5LDQuNjJlLTA4LDEzODY4MDE0MTk2LjAyNzE4NywxMzkzMTIxNjkzOCwyNC40MzE0OTA5NTY3NzAyMDgsMS4wOTQwOTE5MDM3MTk5MDc3LDEwMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiQ09JTkVYOlJPTkJUQyIsImQiOlsiY3J5cHRvL1hUVkNST04iLCJSb25pbiIsNjEwLjgxNTI0ODA5NjIzNDIsNzkwLjgwMDAwMDAwMDAwMDEsNy45MDhlLTA3LDc3MjQwMTY3OS40MzM3ODEzLDEwMDAwMDAwMDAsNjEuODk1MzE4NzkzNTk3Nzc0LC0xLjE0OTk5OTk5OTk5OTk5MzcsMTAwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpNQVNLQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ01BU0siLCJNYXNrIE5ldHdvcmsiLDYwMyw2MDMsMC4wMDAwMDYwMywxMDAwMDAwMDAsMTAwMDAwMDAwLDk2Ljc5NjYxNzIwOTIzNjI1LDAsMTAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IlVQQklUOk1PT0RFTkdCVEMiLCJkIjpbImNyeXB0by9YVFZDTU9PREVORyIsIk1PTyBERU5HIChtb29kZW5nLnZpcCkiLDU4NC4wODMzNTY3OTAzLDU4NC4wODMzNTY3OTAzLDUuOWUtMDcsOTg5OTcxNzkxLjE3LDk4OTk3MTc5MS4xNywxMzkuMTMyMjY1MjMwNDgxMTUsLTE2LjkwMTQwODQ1MDcwNDIyOCwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6UFJPVkVCVEMiLCJkIjpbImNyeXB0by9YVFZDUFJPVkUiLCJTdWNjaW5jdCIsNTczLjMsMjk0MCwwLjAwMDAwMjk0LDE5NTAwMDAwMCwxMDAwMDAwMDAwLDYwLjAzNjY3ODg4NTQ2MDQ5LDQuNjI2MzM0NTE5NTcyOTM5LDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpTQ0JUQyIsImQiOlsiY3J5cHRvL1hUVkNTQyIsIlNpYWNvaW4iLDU2MC4yNTYzNjUyMjA3NTIsNjIyLjE3NTI1Njc2MzAzMDUsMWUtMDgsNTYwMjU2MzY1MjIuMDc1MTk1LDYyMjE3NTI1Njc2LjMwMzA0LDQ3LjYwMzQxMjIxOTg2NDAwNSwwLDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpQUk9NQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ1BST00iLCJQcm9tIiw1NTguNjMyNSw1ODkuMjQyNSwwLjAwMDAzMDYxLDE4MjUwMDAwLDE5MjUwMDAwLDY4LjM5MzQ2MzA5MzE2NDYzLDAuMjYyMDM3MzQwMzIwOTkzMiwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6TUFOVFJBQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ01BTlRSQSIsIk1BTlRSQSIsNTQ4LjkxMjQ0MDE1ODM3MTYsMTAwMCwxZS0wNyw1NDg5MTI0NDAxLjU4MzcxNiwxMDAwMDAwMDAwMCwyMjMuNDE0MjQzNjc3NjY5OSwwLDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpHQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0dHUkEiLCJBbmRyZXcgVGF0ZSdzIERvZyIsNTQ4LjA3NDk5OTk5OTk5OTksNjAwLDVlLTA4LDEwOTYxNTAwMDAwLDEyMDAwMDAwMDAwLDQzLjIzNzU4MDIyMzk4OTQ3NSwwLDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpTQUhBUkFCVEMiLCJkIjpbImNyeXB0by9YVFZDU0FIQVJBIiwiU2FoYXJhIEFJIiw1MzYuMzI4MTI1MSwxNTAwLDEuNWUtMDcsMzU3NTUyMDgzNCwxMDAwMDAwMDAwMCwxNDguNTc3OTQxODU0OTc4NDYsMCwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6UFJPU0JUQyIsImQiOlsiY3J5cHRvL1hUVkNQUk9TUEgiLCJQcm9zcGVyIiw1MTkuMzQ4LDM4MjkuOTk5OTk5OTk5OTk5NSwwLjAwMDAwMzgzLDEzNTYwMDAwMCwxMDAwMDAwMDAwLDY3LjcwOTA2MTc4MjM5NzQ4LDcuNTg0MjY5NjYyOTIxMzQ3LDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpJUllTQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0lSWVMiLCJJcnlzIiw1MTMuMzYyNjMyMzk5OTk5OSwyMDAwLDJlLTA3LDI1NjY4MTMxNjIsMTAwMDAwMDAwMDAsMjU4LjU0NDQzNDExMjU2MjU2LDAsMTAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IkNPSU5FWDpERUdFTkJUQyIsImQiOlsiY3J5cHRvL1hUVkNERUdFTjQiLCJEZWdlbiIsNDczLjI4Mjk3OTY0MDAzODUsNzEwLjg0NzYyNTYxNzU1NzQsMS45MjMxZS0wOCwyNDYxMDQxOTYxNi4yNDY2MSwzNjk2MzYzMjk2OC41MTczNjUsNTIuOTIxMjk4OTYzMTMxNzA0LDAuNzIyNzc3OTgxNDU5MTYxMiwxMDAwMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiQ09JTkVYOkxVTkFCVEMiLCJkIjpbImNyeXB0by9YVFZDTFVOQSIsIlRlcnJhIiw0NjkuMDg2NzE4NzkyMzY5MzcsNzg0LjA1NzM0NzI3NDMsNi42MDdlLTA3LDcwOTk4NDQzOC45MTY4NiwxMTg2NzA3MDQ5LDMzLjQ4NzMzMTI4OTU0NjQxLC0wLjUyNjk0OTcxMzk0MTU5MTUsMTAwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpCTlRCVEMiLCJkIjpbImNyeXB0by9YVFZDQk5UIiwiQmFuY29yIiw0NjUuMzk2NTAzODUyMDEyMTMsNDY1LjM5NjUwMzg1MjAxMjEzLDAuMDAwMDA0MzMsMTA3NDgxODcxLjU1OTM1NjE1LDEwNzQ4MTg3MS41NTkzNTYxNSw1Mi44Nzg1MjQ3ODU4MzQ0NjUsMy41ODg1MTY3NDY0MTE0ODkzLDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpNTVRCVEMiLCJkIjpbImNyeXB0by9YVFZDTU1UTU8iLCJNb21lbnR1bSIsNDY1LjMzNzU2NjcyMDAwMDA0LDIyODAsMC4wMDAwMDIyOCwyMDQwOTU0MjQsMTAwMDAwMDAwMCw1Ni44OTQ3NTc3MzIyOTQ0OTQsMCwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6Wk9SQUJUQyIsImQiOlsiY3J5cHRvL1hUVkNaT1JBMiIsIlpPUkEiLDQ0Ni45OTk5OTk5LDEwMDAsMWUtMDcsNDQ2OTk5OTk5OSwxMDAwMDAwMDAwMCwyNTAuMzA5NjE2NTI0ODY4MiwwLDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpBVk5UQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0FWTlQiLCJBdmFudGlzIiw0MTkuNDE3MDA5MzA3NzQ3MywxMjYwLDAuMDAwMDAxMjYsMzMyODcwNjQyLjMwNzczNiwxMDAwMDAwMDAwLDIyMi4wMDM1NjM3MjUwMDcxOCwtOC42OTU2NTIxNzM5MTMwMzgsMTAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IlVQQklUOlNMWEJUQyIsImQiOlsiIiwiU29sc3RpY2UiLDQxMi44NTIxNzkxLDE3MDAsMC4wMDAwMDE3LDI0Mjg1NDIyMywxMDAwMDAwMDAwLDI3My4wMzg1MDk4MjUxMzI1NiwtNDIuMzcyODgxMzU1OTMyMjEsMTAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IkNPSU5FWDpDU1BSQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0NTUFIiLCJDYXNwZXIiLDM5NS4xNjU1MTc1ODAxOTcsNDY5LjE2Mjc5ODUzMTY5MywyLjM3NzllLTA4LDE2NjE4MjU2MzQzLDE5NzMwMTMxNTY3LDI2LjU1MzAxODcxOTI2MzA0LDAuMjg2Nzg2NzIzNDYxNjg4NjUsMTAwMDAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IlVQQklUOk9SQlNCVEMiLCJkIjpbImNyeXB0by9YVFZDT1JCUyIsIk9yYnMiLDM5NC4yMDE0MDYwOTE0Mjg1LDkwMCw5ZS0wOCw0MzgwMDE1NjIzLjIzODA5NCwxMDAwMDAwMDAwMCwyNC40MzQ3MTU0NzA1NjE5NywwLDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJLVUNPSU46V0lOQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ1dJTiIsIldJTmtMaW5rIiwzODIuNTc1MjEzODQ5NDAwMTQsMzgyLjU3NTIxNTgwODcwMzgsMy44NWUtMTAsOTkzNzAxODU0MTU0LjI4Niw5OTM3MDE4NTkyNDMuMzg2NCw0Ny4wODg5MTU2OTQ3NjA3MTUsMC4yNjA0MTY2NjY2NjY2NjU3NCwxMDAwMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6T1BHQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ09QR09QRSIsIk9wZW5HcmFkaWVudCIsMzgxLjAxNjQ2MzgyMzEsMTYxMCwwLjAwMDAwMTYxLDIzNjY1NjE4OC43MSwxMDAwMDAwMDAwLDI0My45NzQ0NDg0OTY3MjM0Myw4Ljc4Mzc4Mzc4Mzc4Mzc4NiwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6UkxDQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ1JMQyIsImlFeGVjIFJMQyIsMzY0LjUyOTA5OTA5NDg4MjYsMzY0LjUyOTA5OTA5NDg4MjYsMC4wMDAwMDQxOSw4Njk5OTc4NC45ODY4NDU1LDg2OTk5Nzg0Ljk4Njg0NTUsMTcuNjM0MjU4NzkyODU4Mjc2LC0xLjY0MzE5MjQ4ODI2MjkxNSwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6Qk9SQUJUQyIsImQiOlsiY3J5cHRvL1hUVkNCT1JBIiwiQk9SQSIsMzYyLjkxNzUsMzk3Ljg5NzUwMDAwMDAwMDA0LDMuM2UtMDcsMTA5OTc1MDAwMCwxMjA1NzUwMDAwLDEuOTY4MDA3MDI4ODQwOTgsLTguMzMzMzMzMzMzMzMzMzI3LDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpDWUJFUkJUQyIsImQiOlsiY3J5cHRvL1hUVkNDWUJFUkMiLCJDeWJlckNvbm5lY3QiLDM0My4yMjczMzkwOSw0NzcsMC4wMDAwMDQ3Nyw3MTk1NTQxNywxMDAwMDAwMDAsMTA3LjY2MTE4NDkyNDE2MTQsLTkuNDg3NjY2MDM0MTU1NjAyLDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpIWVBFUkJUQyIsImQiOlsiY3J5cHRvL1hUVkNIWVBFUkwiLCJIeXBlckNoYWluWCIsMzMxLjQxMDUzNjk4NjY2NjY3LDk3OS45OTk5OTk5OTk5OTk5LDkuOGUtMDcsMzM4MTc0MDE3LjMzMzMzMzQsMTAwMDAwMDAwMCwxNDYuNTkzMDUyODAwMjQ2NCwtMi4wMDAwMDAwMDAwMDAwMDIsMTAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IkNPSU5FWDpNRVRJU0JUQyIsImQiOlsiY3J5cHRvL1hUVkNNRVRJUyIsIk1ldGlzREFPIiwzMTcuMzY4NTY4Njc5Nzc5OTcsNDIwLjksMC4wMDAwNDIwOSw3NTQwMjM2Ljg0MiwxMDAwMDAwMCwyOS41MDQ5MDgzOTc2MjA0NzIsMC44ODY4NjQ4MTMwMzkzMDUyLDEwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IlVQQklUOk1MS0JUQyIsImQiOlsiY3J5cHRvL1hUVkNNTEsiLCJNaUwuayIsMzE1LjgzMTY4OTAyMDQ1NjA1LDU1Mi4yOTc0MzQ2NCw1LjZlLTA3LDU2Mzk4NTE1OC45NjUxLDk4NjI0NTQxOSwxMy4xMjc2NTMzNTc3NjMwODcsLTYuNjY2NjY2NjY2NjY2NjU1LDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJDT0lORVg6QVJLQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0FSSyIsIkFyayIsMzE0Ljk4ODA5OTA4NjQsMzE0Ljk4ODA5OTA4NjQsMC4wMDAwMDE1OTAxLDE5ODA5MzI2NCwxOTgwOTMyNjQsNi42MzkwMDQ0MTI2NTE3MjEsLTAuMTU2OTc2MDE0MDY1MDQ5MzUsMTAwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpDVkNCVEMiLCJkIjpbImNyeXB0by9YVFZDQ1ZDIiwiQ2l2aWMiLDMxMCwzMTAsMy4xZS0wNywxMDAwMDAwMDAwLDEwMDAwMDAwMDAsMTAuMDkyOTAwNzU3MDI5ODQ1LDAsMTAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IkJJVEZJTkVYOlNUR0JUQyIsImQiOlsiY3J5cHRvL1hUVkNTVEciLCJTdGFyZ2F0ZSBGaW5hbmNlIiwyOTAuMjcxOTk0MTc5ODYxNTcsMjA2MCwwLjAwMDAwMjA2LDE0MDkwODczNS4wMzg3Njc3MywxMDAwMDAwMDAwLDE5NS4wODE0Nzc0ODU1OTYyOCwwLDEwMDAwMDAwMCwxLCJmYWxzZSIsMV19LHsicyI6IkNPSU5FWDpTR0JCVEMiLCJkIjpbImNyeXB0by9YVFZDU09OR0JJUkQiLCJTb25nYmlyZCIsMjgzLjk4MjU2MzkyMDUyODIsMjY1LjYzMDA2ODQ5MzE1MDcsMS42NTFlLTA4LDE3MjAwNjM5ODQ5LjgyLDE2MDg5MDQxMDk1Ljg5MDQxMSwwLjk1MDk2NzA3Mzg3OTMzNiwtMC4xNjMyNzAyNDI0ODY1NTAzNywxMDAwMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6V0NUQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ1dDVFciLCJXYWxsZXRDb25uZWN0IFRva2VuIiwyNzMuNjEzOTg4MzQsNjMwLDYuM2UtMDcsNDM0MzA3OTE4LDEwMDAwMDAwMDAsMTU3LjgyODkwOTcwMzA3NTMsLTMuMDc2OTIzMDc2OTIzMDc5OCwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6QklHVElNRUJUQyIsImQiOlsiY3J5cHRvL1hUVkNCSUdUSU1FIiwiQmlnIFRpbWUiLDI1Ny4zNTY4NjMzMTU4MTA2NCw1MDAsMWUtMDcsMjU3MzU2ODYzMy4xNTgxMDYzLDUwMDAwMDAwMDAsMTQwLjAxNjU2MjU2MTQ0NTU0LC05LjA5MDkwOTA5MDkwOTA5OSwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6RURHRUJUQyIsImQiOlsiY3J5cHRvL1hUVkNFREdFRCIsIkRlZmluaXRpdmUiLDI1NC4yODYxMjgyNjExOTMxNyw5OTAsOS45ZS0wNywyNTY4NTQ2NzUuMDExMzA2MjMsMTAwMDAwMDAwMCwyMC4zNzAzMjcyMzEwODU5MywtMi45NDExNzY0NzA1ODgyMjgsMTAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IlVQQklUOkJMRU5EQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0JMRU5ERkwiLCJGbHVlbnQiLDI1My45OTk5OTk5OTk5OTk5NywxMjcwLDAuMDAwMDAxMjcsMjAwMDAwMDAwLDEwMDAwMDAwMDAsMTkzLjA0MTQxNzkxMjg1NjEzLC03LjI5OTI3MDA3Mjk5MjcwOSwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6QklSQkJUQyIsImQiOlsiY3J5cHRvL1hUVkNCSVJCTU8iLCJCaXJiIiwyMzYuNTUsODMwLDguM2UtMDcsMjg1MDAwMDAwLDEwMDAwMDAwMDAsOTkuODM1MDAwMzU1MjAwOTYsLTkuNzgyNjA4Njk1NjUyMTcyLDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJCSVRGSU5FWDpOWU1CVEMiLCJkIjpbImNyeXB0by9YVFZDTllNIiwiTllNIiwyMjMuMjQzNDI4OTU1NTczNjgsMjY2LjU5ODk4OTE0MiwyLjY2NTk4OTg5MTQyZS0wNyw4MzczNzUzNzYuNjgxMDY2LDEwMDAwMDAwMDAsMTYuOTA0Njc0MTM2MzM3MDkzLC0wLjQxNTU5Nzc5OTUwODcwNDcsMTAwMDAwMDAwMDAwMDAwMDAwMCwxLCJmYWxzZSIsMV19LHsicyI6IlVQQklUOkFOSU1FQlRDIiwiZCI6WyJjcnlwdG8vWFRWQ0FOSU1FQyIsIkFuaW1lIChhbmltZW9uYmFzZS5hcnQpIiwyMjEuNTQ0MTg2MjQwMDAwMDIsNDAwLDRlLTA4LDU1Mzg2MDQ2NTYsMTAwMDAwMDAwMDAsNDkuNTk5MjI1Mjg1ODc2MTksMCwxMDAwMDAwMDAwLDEsImZhbHNlIiwwXX0seyJzIjoiVVBCSVQ6TEFCVEMiLCJkIjpbImNyeXB0by9YVFZDTEFHUiIsIkxBVE9LRU4iLDIxNC4yMywxMTEwLDAuMDAwMDAxMTEsMTkzMDAwMDAwLDEwMDAwMDAwMDAsOTc5Ljc2NTc2Mjk4Mzk4NzcsLTUuOTMyMjAzMzg5ODMwNTA2LDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpPUkRFUkJUQyIsImQiOlsiY3J5cHRvL1hUVkNPUkRFUiIsIk9yZGVybHkiLDIxMi4wNTExNjQ0NTMzOTg0OCw1NDAsNS40ZS0wNywzOTI2ODczNDEuNTgwMzY3NTcsMTAwMDAwMDAwMCw4Mi4zOTU0OTU4MzUwMDUzMywtMjAuNTg4MjM1Mjk0MTE3NjM4LDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpaS0NCVEMiLCJkIjpbImNyeXB0by9YVFZDWktDQiIsIkJvdW5kbGVzcyIsMjAxLjQyMTc3MjUsNjg5LjU3ODYzODQ1LDYuNWUtMDcsMzA5ODc5NjUwLDEwNjA4OTAyMTMsODMuMzIwOTc1OTAxMDY0NTQsLTQuNDExNzY0NzA1ODgyMzQyLDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfSx7InMiOiJVUEJJVDpSQURCVEMiLCJkIjpbImNyeXB0by9YVFZDUkFEIiwiUmFkd29ya3MiLDE5My43NjkyMTA3NzczMjUyLDMyNy45OTg3NTM2LDAuMDAwMDAzMjgsNTkwNzU5NzguODk1NTI1OTgsOTk5OTk2MjAsMzQuMzczMDU4ODA5NDI5NTk0LC0xLjc5NjQwNzE4NTYyODc1MDUsMTAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IlVQQklUOklOSVRCVEMiLCJkIjpbImNyeXB0by9YVFZDSU5JVCIsIkluaXRpYSIsMTc1LjA3Mzc2MzI1MDQ5MjM2LDg2MCw4LjZlLTA3LDIwMzU3NDE0My4zMTQ1MjYsMTAwMDAwMDAwMCwzNy41ODM1MTM4MTI1MzA4MSwtMy4zNzA3ODY1MTY4NTM5MjQsMTAwMDAwMDAwMCwxLCJmYWxzZSIsMF19LHsicyI6IlVQQklUOkVSQUJUQyIsImQiOlsiY3J5cHRvL1hUVkNFUkFDIiwiQ2FsZGVyYSIsMTcyLjI2LDExNjAsMC4wMDAwMDExNiwxNDg1MDAwMDAsMTAwMDAwMDAwMCwyMjkuMzQ4MjIyNzI1ODQ3NzMsLTM2Ljk1NjUyMTczOTEzMDQ0LDEwMDAwMDAwMDAsMSwiZmFsc2UiLDBdfV19"}},"time_used":295,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":295,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCCFG.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.691Z","timestamp":1785126258691,"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 /crypto/XTVCCFG.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 04:24:18 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: \"6c47408621af9f6181dce134c833c8f9\"\r\nlast-modified: Fri, 18 Nov 2022 08:44:56 GMT\r\ncdn-cachedat: 08/14/2025 09:34:09\r\nx-amz-id-2: G+9nAqfr6AKTSygxf87NR6krLtfUl1T4+ijkSEQGq6nH9wpgzTXfOMeXlSiYiyThWvnmPlX9J/o=\r\nx-amz-request-id: QY6200HG433RVV7Y\r\nx-amz-meta-hash: 6c47408621af9f6181dce134c833c8f9\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: 28f7d2960e01f3a6464748246d3984c5\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":547,"size_decoded":1230,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (547), with no line terminators","md5":"6c47408621af9f6181dce134c833c8f9","sha1":"c204d3313fd134ea1a612caa5c3a07ad4a544505","sha256":"bc7dfb372463338d5b860ee1ef8188dabe66004b561fc0e2b7c2099c6eebb3a2","sha512":"383e3e0fde4177080127057232a35df8c4d438dbf74515937f9a49552acd2359b489c508f5bca5cc57fb4c4abafe64048b70d4c397a79b04292e10607b84dbbd","ssdeep":"","tlshash":"14f02bbea9e9445c6253db9c56610151a34f1075be9a02b9a4eddb3271439daec13c30","first_seen":"2026-03-06T05:00:26.533836Z","last_seen":"2026-07-27T07:05:43.289472Z","times_seen":391,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNNC4yNSAxMi4zOUE1LjkgNS45IDAgMCAxIDMuNSA5LjVjMC0zLjMxIDIuNzMtNiA2LjEtNiAyIDAgMy44Ljk2IDQuOSAyLjQ1bC0uODIuNTlBNS4xIDUuMSAwIDAgMCA0LjUyIDkuNWMwIC44OS4yMyAxLjcyLjY0IDIuNDRsLS45LjQ1Wm04LjYxLTUuMjZBNC4wOCA0LjA4IDAgMCAwIDUuNTMgOS41YTQuMDMgNC4wMyAwIDAgMCA0LjE3IDR2LTFoLS4xYTMuMDIgMy4wMiAwIDAgMS0zLjA1LTMgMy4wNiAzLjA2IDAgMCAxIDUuNS0xLjc4bC44MS0uNTlabS0xLjY0IDEuMThBMi4wNCAyLjA0IDAgMCAwIDcuNTYgOS41YTIuMDQgMi4wNCAwIDAgMCAzLjUgMS4zN2wtLjY5LS43M2ExLjAyIDEuMDIgMCAwIDEtMS44LS42NCAxLjAyIDEuMDIgMCAwIDEgMS44My0uNmwuODItLjU5WiIvPjwvc3ZnPg=="}},"time_used":1,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":1,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCBLUR.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.732Z","timestamp":1785126258732,"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 /crypto/XTVCBLUR.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 04:24:18 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: \"9490ab1309003b79bb11838d44d983b3\"\r\nlast-modified: Mon, 27 Feb 2023 06:29:57 GMT\r\ncdn-cachedat: 08/09/2025 14:29:30\r\nx-amz-id-2: jOxfVQWHUJPE3DtFFANiAuGW9n5c0mGhFJ1lljCFEG0biuK8Kz/RHRaLqBDJojL+mnkSG7o+tZg=\r\nx-amz-request-id: P5EQ8QVSM3P404H3\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 9490ab1309003b79bb11838d44d983b3\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: 4b96a55e8c3a9ffbb93200fdc6bc6f97\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":899,"size_decoded":1499,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (899), with no line terminators","md5":"9490ab1309003b79bb11838d44d983b3","sha1":"17b8131d7bd294095b1cf195675f7007fb1445ad","sha256":"89397063a5f9cb3d6908d6869025adafedaab5950dd105c8e771f0a2b214da97","sha512":"4cdf30ee1dfb8e7a3f476001f7acd7955332e6c85e40b429e6bf762b657e1f93a13ec8480c067ff4d92b4cdc21eb54a830e51027dedc3f9c725268c56c03d69a","ssdeep":"","tlshash":"3e114467e75cd43fc826c13deaa49073324d20e4758752fd94c4a37e20166c3d709c14","first_seen":"2025-08-03T22:21:09.054085Z","last_seen":"2026-07-27T05:33:43.452522Z","times_seen":36,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYXVlNGIxZWVtKSIgZD0iTTAgMGgxOHYxOEgweiIvPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTguMiA1SDV2NGgzLjJjLjQ3LS4yLjgtLjc3LjgtMS4yMyAwLS4zNi0uMjItLjY4LS4zMy0uNzkuMjYtLjE2LjMzLS41OC4zMy0uNzcgMC0uNi0uMzMtMS0uOC0xLjIxWk02IDZoMS42MmEuMzguMzggMCAwIDEgMCAuNzZINlY2Wm0xLjY0IDEuMjlINnYuN2gxLjY0YS4zNi4zNiAwIDEgMCAwLS43WiIgZmlsbD0iI0ZENkUyNiIvPjxwYXRoIGQ9Ik05LjQxIDguMTNWNWgxdjIuNzVsLjIzLjI1SDEzdjFoLTIuNzlsLS44LS44N1pNNSAxMi4xN3YtMi45aDF2Mi4zN2wuMjMuMzZoMS41OGwuMTktLjM2VjkuMjdoMXYyLjlsLS43OS44M0g1LjgzTDUgMTIuMTdaTTkuNDEgOS4yN2gyLjg5Yy4zMS4xMi43LjYzLjcgMS4wMyAwIC40OC0uMjQuNy0uMzcuOGwtLjAyLjAyYy4xMy4wOC4zOS4zMy4zOS42OVYxM2gtMXYtLjk4Yy0uMDItLjEyLS4xNi0uNDUtLjQzLS41aC0xLjE4VjEzaC0uOThWOS4yN1ptMi4xOS43M2gtMS4yNHYuODdoMS4yNGEuNDMuNDMgMCAxIDAgMC0uODdaIiBmaWxsPSIjRkQ2RTI2Ii8+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJhdWU0YjFlZW0iIHgxPSIzLjM1IiB5MT0iMy4xMiIgeDI9IjIxLjkiIHkyPSIyNC40MyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiMxQTFFMjEiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMwNjA2MEEiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4="}},"time_used":137,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":137,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/slick/slick.min.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.056Z","timestamp":1785126256056,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /slick/slick.min.js HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Sat, 07 Oct 2023 09:01:37 GMT\r\netag: W/\"65211e71-a767\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":42855,"size_decoded":10237,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (42854)","md5":"2664f36c2bc885bb04c0434714894396","sha1":"47bb7250bb5bcfe92085650d493830704053008a","sha256":"5ee46746338cf8314c4288eb3524854a4376deca66d9fb1a0d1ceaa516c95cf8","sha512":"42d935c9333285d458c3beba5b31c10a9a1b7256a97b2ce70df4b8b67de9dc8cde44ea5a2312209e5efe4c62bcd2fd332c98e816f95bd1c02079b6a1a009a652","ssdeep":"768:4rkkX123A5Ybi6pWzYdlNWYcx16nnYdXRRMd20YCQCsPShb1ez7RFmYH:ErrYdlNiXEePiYH","tlshash":"bf13a549d204276285d721e62105c40eb3f7fb3cba22c0e435c9d3ea646ed4896d7bfa","first_seen":"2025-05-03T17:30:36.896974Z","last_seen":"2026-07-27T04:25:12.748455Z","times_seen":12,"resource_available":true,"data":"IWZ1bmN0aW9uKGkpeyJ1c2Ugc3RyaWN0IjsiZnVuY3Rpb24iPT10eXBlb2YgZGVmaW5lJiZkZWZpbmUuYW1kP2RlZmluZShbImpxdWVyeSJdLGkpOiJ1bmRlZmluZWQiIT10eXBlb2YgZXhwb3J0cz9tb2R1bGUuZXhwb3J0cz1pKHJlcXVpcmUoImpxdWVyeSIpKTppKGpRdWVyeSl9KGZ1bmN0aW9uKGkpeyJ1c2Ugc3RyaWN0Ijt2YXIgZT13aW5kb3cuU2xpY2t8fHt9OyhlPWZ1bmN0aW9uKCl7dmFyIGU9MDtyZXR1cm4gZnVuY3Rpb24odCxvKXt2YXIgcyxuPXRoaXM7bi5kZWZhdWx0cz17YWNjZXNzaWJpbGl0eTohMCxhZGFwdGl2ZUhlaWdodDohMSxhcHBlbmRBcnJvd3M6aSh0KSxhcHBlbmREb3RzOmkodCksYXJyb3dzOiEwLGFzTmF2Rm9yOm51bGwscHJldkFycm93Oic8YnV0dG9uIGNsYXNzPSJzbGljay1wcmV2IiBhcmlhLWxhYmVsPSJQcmV2aW91cyIgdHlwZT0iYnV0dG9uIj5QcmV2aW91czwvYnV0dG9uPicsbmV4dEFycm93Oic8YnV0dG9uIGNsYXNzPSJzbGljay1uZXh0IiBhcmlhLWxhYmVsPSJOZXh0IiB0eXBlPSJidXR0b24iPk5leHQ8L2J1dHRvbj4nLGF1dG9wbGF5OiExLGF1dG9wbGF5U3BlZWQ6M2UzLGNlbnRlck1vZGU6ITEsY2VudGVyUGFkZGluZzoiNTBweCIsY3NzRWFzZToiZWFzZSIsY3VzdG9tUGFnaW5nOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIGkoJzxidXR0b24gdHlwZT0iYnV0dG9uIiAvPicpLnRleHQodCsxKX0sZG90czohMSxkb3RzQ2xhc3M6InNsaWNrLWRvdHMiLGRyYWdnYWJsZTohMCxlYXNpbmc6ImxpbmVhciIsZWRnZUZyaWN0aW9uOi4zNSxmYWRlOiExLGZvY3VzT25TZWxlY3Q6ITEsZm9jdXNPbkNoYW5nZTohMSxpbmZpbml0ZTohMCxpbml0aWFsU2xpZGU6MCxsYXp5TG9hZDoib25kZW1hbmQiLG1vYmlsZUZpcnN0OiExLHBhdXNlT25Ib3ZlcjohMCxwYXVzZU9uRm9jdXM6ITAscGF1c2VPbkRvdHNIb3ZlcjohMSxyZXNwb25kVG86IndpbmRvdyIscmVzcG9uc2l2ZTpudWxsLHJvd3M6MSxydGw6ITEsc2xpZGU6IiIsc2xpZGVzUGVyUm93OjEsc2xpZGVzVG9TaG93OjEsc2xpZGVzVG9TY3JvbGw6MSxzcGVlZDo1MDAsc3dpcGU6ITAsc3dpcGVUb1NsaWRlOiExLHRvdWNoTW92ZTohMCx0b3VjaFRocmVzaG9sZDo1LHVzZUNTUzohMCx1c2VUcmFuc2Zvcm06ITAsdmFyaWFibGVXaWR0aDohMSx2ZXJ0aWNhbDohMSx2ZXJ0aWNhbFN3aXBpbmc6ITEsd2FpdEZvckFuaW1hdGU6ITAsekluZGV4OjFlM30sbi5pbml0aWFscz17YW5pbWF0aW5nOiExLGRyYWdnaW5nOiExLGF1dG9QbGF5VGltZXI6bnVsbCxjdXJyZW50RGlyZWN0aW9uOjAsY3VycmVudExlZnQ6bnVsbCxjdXJyZW50U2xpZGU6MCxkaXJlY3Rpb246MSwkZG90czpudWxsLGxpc3RXaWR0aDpudWxsLGxpc3RIZWlnaHQ6bnVsbCxsb2FkSW5kZXg6MCwkbmV4dEFycm93Om51bGwsJHByZXZBcnJvdzpudWxsLHNjcm9sbGluZzohMSxzbGlkZUNvdW50Om51bGwsc2xpZGVXaWR0aDpudWxsLCRzbGlkZVRyYWNrOm51bGwsJHNsaWRlczpudWxsLHNsaWRpbmc6ITEsc2xpZGVPZmZzZXQ6MCxzd2lwZUxlZnQ6bnVsbCxzd2lwaW5nOiExLCRsaXN0Om51bGwsdG91Y2hPYmplY3Q6e30sdHJhbnNmb3Jtc0VuYWJsZWQ6ITEsdW5zbGlja2VkOiExfSxpLmV4dGVuZChuLG4uaW5pdGlhbHMpLG4uYWN0aXZlQnJlYWtwb2ludD1udWxsLG4uYW5pbVR5cGU9bnVsbCxuLmFuaW1Qcm9wPW51bGwsbi5icmVha3BvaW50cz1bXSxuLmJyZWFrcG9pbnRTZXR0aW5ncz1bXSxuLmNzc1RyYW5zaXRpb25zPSExLG4uZm9jdXNzZWQ9ITEsbi5pbnRlcnJ1cHRlZD0hMSxuLmhpZGRlbj0iaGlkZGVuIixuLnBhdXNlZD0hMCxuLnBvc2l0aW9uUHJvcD1udWxsLG4ucmVzcG9uZFRvPW51bGwsbi5yb3dDb3VudD0xLG4uc2hvdWxkQ2xpY2s9ITAsbi4kc2xpZGVyPWkodCksbi4kc2xpZGVzQ2FjaGU9bnVsbCxuLnRyYW5zZm9ybVR5cGU9bnVsbCxuLnRyYW5zaXRpb25UeXBlPW51bGwsbi52aXNpYmlsaXR5Q2hhbmdlPSJ2aXNpYmlsaXR5Y2hhbmdlIixuLndpbmRvd1dpZHRoPTAsbi53aW5kb3dUaW1lcj1udWxsLHM9aSh0KS5kYXRhKCJzbGljayIpfHx7fSxuLm9wdGlvbnM9aS5leHRlbmQoe30sbi5kZWZhdWx0cyxvLHMpLG4uY3VycmVudFNsaWRlPW4ub3B0aW9ucy5pbml0aWFsU2xpZGUsbi5vcmlnaW5hbFNldHRpbmdzPW4ub3B0aW9ucyx2b2lkIDAhPT1kb2N1bWVudC5tb3pIaWRkZW4/KG4uaGlkZGVuPSJtb3pIaWRkZW4iLG4udmlzaWJpbGl0eUNoYW5nZT0ibW96dmlzaWJpbGl0eWNoYW5nZSIpOnZvaWQgMCE9PWRvY3VtZW50LndlYmtpdEhpZGRlbiYmKG4uaGlkZGVuPSJ3ZWJraXRIaWRkZW4iLG4udmlzaWJpbGl0eUNoYW5nZT0id2Via2l0dmlzaWJpbGl0eWNoYW5nZSIpLG4uYXV0b1BsYXk9aS5wcm94eShuLmF1dG9QbGF5LG4pLG4uYXV0b1BsYXlDbGVhcj1pLnByb3h5KG4uYXV0b1BsYXlDbGVhcixuKSxuLmF1dG9QbGF5SXRlcmF0b3I9aS5wcm94eShuLmF1dG9QbGF5SXRlcmF0b3Isbiksbi5jaGFuZ2VTbGlkZT1pLnByb3h5KG4uY2hhbmdlU2xpZGUsbiksbi5jbGlja0hhbmRsZXI9aS5wcm94eShuLmNsaWNrSGFuZGxlcixuKSxuLnNlbGVjdEhhbmRsZXI9aS5wcm94eShuLnNlbGVjdEhhbmRsZXIsbiksbi5zZXRQb3NpdGlvbj1pLnByb3h5KG4uc2V0UG9zaXRpb24sbiksbi5zd2lwZUhhbmRsZXI9aS5wcm94eShuLnN3aXBlSGFuZGxlcixuKSxuLmRyYWdIYW5kbGVyPWkucHJveHkobi5kcmFnSGFuZGxlcixuKSxuLmtleUhhbmRsZXI9aS5wcm94eShuLmtleUhhbmRsZXIsbiksbi5pbnN0YW5jZVVpZD1lKyssbi5odG1sRXhwcj0vXig/OlxzKig8W1x3XFddKz4pW14+XSopJC8sbi5yZWdpc3RlckJyZWFrcG9pbnRzKCksbi5pbml0KCEwKX19KCkpLnByb3RvdHlwZS5hY3RpdmF0ZUFEQT1mdW5jdGlvbigpe3RoaXMuJHNsaWRlVHJhY2suZmluZCgiLnNsaWNrLWFjdGl2ZSIpLmF0dHIoeyJhcmlhLWhpZGRlbiI6ImZhbHNlIn0pLmZpbmQoImEsIGlucHV0LCBidXR0b24sIHNlbGVjdCIpLmF0dHIoe3RhYmluZGV4OiIwIn0pfSxlLnByb3RvdHlwZS5hZGRTbGlkZT1lLnByb3RvdHlwZS5zbGlja0FkZD1mdW5jdGlvbihlLHQsbyl7dmFyIHM9dGhpcztpZigiYm9vbGVhbiI9PXR5cGVvZiB0KW89dCx0PW51bGw7ZWxzZSBpZih0PDB8fHQ+PXMuc2xpZGVDb3VudClyZXR1cm4hMTtzLnVubG9hZCgpLCJudW1iZXIiPT10eXBlb2YgdD8wPT09dCYmMD09PXMuJHNsaWRlcy5sZW5ndGg/aShlKS5hcHBlbmRUbyhzLiRzbGlkZVRyYWNrKTpvP2koZSkuaW5zZXJ0QmVmb3JlKHMuJHNsaWRlcy5lcSh0KSk6aShlKS5pbnNlcnRBZnRlcihzLiRzbGlkZXMuZXEodCkpOiEwPT09bz9pKGUpLnByZXBlbmRUbyhzLiRzbGlkZVRyYWNrKTppKGUpLmFwcGVuZFRvKHMuJHNsaWRlVHJhY2spLHMuJHNsaWRlcz1zLiRzbGlkZVRyYWNrLmNoaWxkcmVuKHRoaXMub3B0aW9ucy5zbGlkZSkscy4kc2xpZGVUcmFjay5jaGlsZHJlbih0aGlzLm9wdGlvbnMuc2xpZGUpLmRldGFjaCgpLHMuJHNsaWRlVHJhY2suYXBwZW5kKHMuJHNsaWRlcykscy4kc2xpZGVzLmVhY2goZnVuY3Rpb24oZSx0KXtpKHQpLmF0dHIoImRhdGEtc2xpY2staW5kZXgiLGUpfSkscy4kc2xpZGVzQ2FjaGU9cy4kc2xpZGVzLHMucmVpbml0KCl9LGUucHJvdG90eXBlLmFuaW1hdGVIZWlnaHQ9ZnVuY3Rpb24oKXt2YXIgaT10aGlzO2lmKDE9PT1pLm9wdGlvbnMuc2xpZGVzVG9TaG93JiYhMD09PWkub3B0aW9ucy5hZGFwdGl2ZUhlaWdodCYmITE9PT1pLm9wdGlvbnMudmVydGljYWwpe3ZhciBlPWkuJHNsaWRlcy5lcShpLmN1cnJlbnRTbGlkZSkub3V0ZXJIZWlnaHQoITApO2kuJGxpc3QuYW5pbWF0ZSh7aGVpZ2h0OmV9LGkub3B0aW9ucy5zcGVlZCl9fSxlLnByb3RvdHlwZS5hbmltYXRlU2xpZGU9ZnVuY3Rpb24oZSx0KXt2YXIgbz17fSxzPXRoaXM7cy5hbmltYXRlSGVpZ2h0KCksITA9PT1zLm9wdGlvbnMucnRsJiYhMT09PXMub3B0aW9ucy52ZXJ0aWNhbCYmKGU9LWUpLCExPT09cy50cmFuc2Zvcm1zRW5hYmxlZD8hMT09PXMub3B0aW9ucy52ZXJ0aWNhbD9zLiRzbGlkZVRyYWNrLmFuaW1hdGUoe2xlZnQ6ZX0scy5vcHRpb25zLnNwZWVkLHMub3B0aW9ucy5lYXNpbmcsdCk6cy4kc2xpZGVUcmFjay5hbmltYXRlKHt0b3A6ZX0scy5vcHRpb25zLnNwZWVkLHMub3B0aW9ucy5lYXNpbmcsdCk6ITE9PT1zLmNzc1RyYW5zaXRpb25zPyghMD09PXMub3B0aW9ucy5ydGwmJihzLmN1cnJlbnRMZWZ0PS1zLmN1cnJlbnRMZWZ0KSxpKHthbmltU3RhcnQ6cy5jdXJyZW50TGVmdH0pLmFuaW1hdGUoe2FuaW1TdGFydDplfSx7ZHVyYXRpb246cy5vcHRpb25zLnNwZWVkLGVhc2luZzpzLm9wdGlvbnMuZWFzaW5nLHN0ZXA6ZnVuY3Rpb24oaSl7aT1NYXRoLmNlaWwoaSksITE9PT1zLm9wdGlvbnMudmVydGljYWw/KG9bcy5hbmltVHlwZV09InRyYW5zbGF0ZSgiK2krInB4LCAwcHgpIixzLiRzbGlkZVRyYWNrLmNzcyhvKSk6KG9bcy5hbmltVHlwZV09InRyYW5zbGF0ZSgwcHgsIitpKyJweCkiLHMuJHNsaWRlVHJhY2suY3NzKG8pKX0sY29tcGxldGU6ZnVuY3Rpb24oKXt0JiZ0LmNhbGwoKX19KSk6KHMuYXBwbHlUcmFuc2l0aW9uKCksZT1NYXRoLmNlaWwoZSksITE9PT1zLm9wdGlvbnMudmVydGljYWw/b1tzLmFuaW1UeXBlXT0idHJhbnNsYXRlM2QoIitlKyJweCwgMHB4LCAwcHgpIjpvW3MuYW5pbVR5cGVdPSJ0cmFuc2xhdGUzZCgwcHgsIitlKyJweCwgMHB4KSIscy4kc2xpZGVUcmFjay5jc3MobyksdCYmc2V0VGltZW91dChmdW5jdGlvbigpe3MuZGlzYWJsZVRyYW5zaXRpb24oKSx0LmNhbGwoKX0scy5vcHRpb25zLnNwZWVkKSl9LGUucHJvdG90eXBlLmdldE5hdlRhcmdldD1mdW5jdGlvbigpe3ZhciBlPXRoaXMsdD1lLm9wdGlvbnMuYXNOYXZGb3I7cmV0dXJuIHQmJm51bGwhPT10JiYodD1pKHQpLm5vdChlLiRzbGlkZXIpKSx0fSxlLnByb3RvdHlwZS5hc05hdkZvcj1mdW5jdGlvbihlKXt2YXIgdD10aGlzLmdldE5hdlRhcmdldCgpO251bGwhPT10JiYib2JqZWN0Ij09dHlwZW9mIHQmJnQuZWFjaChmdW5jdGlvbigpe3ZhciB0PWkodGhpcykuc2xpY2soImdldFNsaWNrIik7dC51bnNsaWNrZWR8fHQuc2xpZGVIYW5kbGVyKGUsITApfSl9LGUucHJvdG90eXBlLmFwcGx5VHJhbnNpdGlvbj1mdW5jdGlvbihpKXt2YXIgZT10aGlzLHQ9e307ITE9PT1lLm9wdGlvbnMuZmFkZT90W2UudHJhbnNpdGlvblR5cGVdPWUudHJhbnNmb3JtVHlwZSsiICIrZS5vcHRpb25zLnNwZWVkKyJtcyAiK2Uub3B0aW9ucy5jc3NFYXNlOnRbZS50cmFuc2l0aW9uVHlwZV09Im9wYWNpdHkgIitlLm9wdGlvbnMuc3BlZWQrIm1zICIrZS5vcHRpb25zLmNzc0Vhc2UsITE9PT1lLm9wdGlvbnMuZmFkZT9lLiRzbGlkZVRyYWNrLmNzcyh0KTplLiRzbGlkZXMuZXEoaSkuY3NzKHQpfSxlLnByb3RvdHlwZS5hdXRvUGxheT1mdW5jdGlvbigpe3ZhciBpPXRoaXM7aS5hdXRvUGxheUNsZWFyKCksaS5zbGlkZUNvdW50Pmkub3B0aW9ucy5zbGlkZXNUb1Nob3cmJihpLmF1dG9QbGF5VGltZXI9c2V0SW50ZXJ2YWwoaS5hdXRvUGxheUl0ZXJhdG9yLGkub3B0aW9ucy5hdXRvcGxheVNwZWVkKSl9LGUucHJvdG90eXBlLmF1dG9QbGF5Q2xlYXI9ZnVuY3Rpb24oKXt2YXIgaT10aGlzO2kuYXV0b1BsYXlUaW1lciYmY2xlYXJJbnRlcnZhbChpLmF1dG9QbGF5VGltZXIpfSxlLnByb3RvdHlwZS5hdXRvUGxheUl0ZXJhdG9yPWZ1bmN0aW9uKCl7dmFyIGk9dGhpcyxlPWkuY3VycmVudFNsaWRlK2kub3B0aW9ucy5zbGlkZXNUb1Njcm9sbDtpLnBhdXNlZHx8aS5pbnRlcnJ1cHRlZHx8aS5mb2N1c3NlZHx8KCExPT09aS5vcHRpb25zLmluZmluaXRlJiYoMT09PWkuZGlyZWN0aW9uJiZpLmN1cnJlbnRTbGlkZSsxPT09aS5zbGlkZUNvdW50LTE/aS5kaXJlY3Rpb249MDowPT09aS5kaXJlY3Rpb24mJihlPWkuY3VycmVudFNsaWRlLWkub3B0aW9ucy5zbGlkZXNUb1Njcm9sbCxpLmN1cnJlbnRTbGlkZS0xPT0wJiYoaS5kaXJlY3Rpb249MSkpKSxpLnNsaWRlSGFuZGxlcihlKSl9LGUucHJvdG90eXBlLmJ1aWxkQXJyb3dzPWZ1bmN0aW9uKCl7dmFyIGU9dGhpczshMD09PWUub3B0aW9ucy5hcnJvd3MmJihlLiRwcmV2QXJyb3c9aShlLm9wdGlvbnMucHJldkFycm93KS5hZGRDbGFzcygic2xpY2stYXJyb3ciKSxlLiRuZXh0QXJyb3c9aShlLm9wdGlvbnMubmV4dEFycm93KS5hZGRDbGFzcygic2xpY2stYXJyb3ciKSxlLnNsaWRlQ291bnQ+ZS5vcHRpb25zLnNsaWRlc1RvU2hvdz8oZS4kcHJldkFycm93LnJlbW92ZUNsYXNzKCJzbGljay1oaWRkZW4iKS5yZW1vdmVBdHRyKCJhcmlhLWhpZGRlbiB0YWJpbmRleCIpLGUuJG5leHRBcnJvdy5yZW1vdmVDbGFzcygic2xpY2staGlkZGVuIikucmVtb3ZlQXR0cigiYXJpYS1oaWRkZW4gdGFiaW5kZXgiKSxlLmh0bWxFeHByLnRlc3QoZS5vcHRpb25zLnByZXZBcnJvdykmJmUuJHByZXZBcnJvdy5wcmVwZW5kVG8oZS5vcHRpb25zLmFwcGVuZEFycm93cyksZS5odG1sRXhwci50ZXN0KGUub3B0aW9ucy5uZXh0QXJyb3cpJiZlLiRuZXh0QXJyb3cuYXBwZW5kVG8oZS5vcHRpb25zLmFwcGVuZEFycm93cyksITAhPT1lLm9wdGlvbnMuaW5maW5pdGUmJmUuJHByZXZBcnJvdy5hZGRDbGFzcygic2xpY2stZGlzYWJsZWQiKS5hdHRyKCJhcmlhLWRpc2FibGVkIiwidHJ1ZSIpKTplLiRwcmV2QXJyb3cuYWRkKGUuJG5leHRBcnJvdykuYWRkQ2xhc3MoInNsaWNrLWhpZGRlbiIpLmF0dHIoeyJhcmlhLWRpc2FibGVkIjoidHJ1ZSIsdGFiaW5kZXg6Ii0xIn0pKX0sZS5wcm90b3R5cGUuYnVpbGREb3RzPWZ1bmN0aW9uKCl7dmFyIGUsdCxvPXRoaXM7aWYoITA9PT1vLm9wdGlvbnMuZG90cyl7Zm9yKG8uJHNsaWRlci5hZGRDbGFzcygic2xpY2stZG90dGVkIiksdD1pKCI8dWwgLz4iKS5hZGRDbGFzcyhvLm9wdGlvbnMuZG90c0NsYXNzKSxlPTA7ZTw9by5nZXREb3RDb3VudCgpO2UrPTEpdC5hcHBlbmQoaSgiPGxpIC8+IikuYXBwZW5kKG8ub3B0aW9ucy5jdXN0b21QYWdpbmcuY2FsbCh0aGlzLG8sZSkpKTtvLiRkb3RzPXQuYXBwZW5kVG8oby5vcHRpb25zLmFwcGVuZERvdHMpLG8uJGRvdHMuZmluZCgibGkiKS5maXJzdCgpLmFkZENsYXNzKCJzbGljay1hY3RpdmUiKX19LGUucHJvdG90eXBlLmJ1aWxkT3V0PWZ1bmN0aW9uKCl7dmFyIGU9dGhpcztlLiRzbGlkZXM9ZS4kc2xpZGVyLmNoaWxkcmVuKGUub3B0aW9ucy5zbGlkZSsiOm5vdCguc2xpY2stY2xvbmVkKSIpLmFkZENsYXNzKCJzbGljay1zbGlkZSIpLGUuc2xpZGVDb3VudD1lLiRzbGlkZXMubGVuZ3RoLGUuJHNsaWRlcy5lYWNoKGZ1bmN0aW9uKGUsdCl7aSh0KS5hdHRyKCJkYXRhLXNsaWNrLWluZGV4IixlKS5kYXRhKCJvcmlnaW5hbFN0eWxpbmciLGkodCkuYXR0cigic3R5bGUiKXx8IiIpfSksZS4kc2xpZGVyLmFkZENsYXNzKCJzbGljay1zbGlkZXIiKSxlLiRzbGlkZVRyYWNrPTA9PT1lLnNsaWRlQ291bnQ/aSgnPGRpdiBjbGFzcz0ic2xpY2stdHJhY2siLz4nKS5hcHBlbmRUbyhlLiRzbGlkZXIpOmUuJHNsaWRlcy53cmFwQWxsKCc8ZGl2IGNsYXNzPSJzbGljay10cmFjayIvPicpLnBhcmVudCgpLGUuJGxpc3Q9ZS4kc2xpZGVUcmFjay53cmFwKCc8ZGl2IGNsYXNzPSJzbGljay1saXN0Ii8+JykucGFyZW50KCksZS4kc2xpZGVUcmFjay5jc3MoIm9wYWNpdHkiLDApLCEwIT09ZS5vcHRpb25zLmNlbnRlck1vZGUmJiEwIT09ZS5vcHRpb25zLnN3aXBlVG9TbGlkZXx8KGUub3B0aW9ucy5zbGlkZXNUb1Njcm9sbD0xKSxpKCJpbWdbZGF0YS1sYXp5XSIsZS4kc2xpZGVyKS5ub3QoIltzcmNdIikuYWRkQ2xhc3MoInNsaWNrLWxvYWRpbmciKSxlLnNldHVwSW5maW5pdGUoKSxlLmJ1aWxkQXJyb3dzKCksZS5idWlsZERvdHMoKSxlLnVwZGF0ZURvdHMoKSxlLnNldFNsaWRlQ2xhc3NlcygibnVtYmVyIj09dHlwZW9mIGUuY3VycmVudFNsaWRlP2UuY3VycmVudFNsaWRlOjApLCEwPT09ZS5vcHRpb25zLmRyYWdnYWJsZSYmZS4kbGlzdC5hZGRDbGFzcygiZHJhZ2dhYmxlIil9LGUucHJvdG90eXBlLmJ1aWxkUm93cz1mdW5jdGlvbigpe3ZhciBpLGUsdCxvLHMsbixyLGw9dGhpcztpZihvPWRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSxuPWwuJHNsaWRlci5jaGlsZHJlbigpLGwub3B0aW9ucy5yb3dzPjEpe2ZvcihyPWwub3B0aW9ucy5zbGlkZXNQZXJSb3cqbC5vcHRpb25zLnJvd3Mscz1NYXRoLmNlaWwobi5sZW5ndGgvciksaT0wO2k8cztpKyspe3ZhciBkPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2ZvcihlPTA7ZTxsLm9wdGlvbnMucm93cztlKyspe3ZhciBhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2Zvcih0PTA7dDxsLm9wdGlvbnMuc2xpZGVzUGVyUm93O3QrKyl7dmFyIGM9aSpyKyhlKmwub3B0aW9ucy5zbGlkZXNQZXJSb3crdCk7bi5nZXQoYykmJmEuYXBwZW5kQ2hpbGQobi5nZXQoYykpfWQuYXBwZW5kQ2hpbGQoYSl9by5hcHBlbmRDaGlsZChkKX1sLiRzbGlkZXIuZW1wdHkoKS5hcHBlbmQobyksbC4kc2xpZGVyLmNoaWxkcmVuKCkuY2hpbGRyZW4oKS5jaGlsZHJlbigpLmNzcyh7d2lkdGg6MTAwL2wub3B0aW9ucy5zbGlkZXNQZXJSb3crIiUiLGRpc3BsYXk6ImlubGluZS1ibG9jayJ9KX19LGUucHJvdG90eXBlLmNoZWNrUmVzcG9uc2l2ZT1mdW5jdGlvbihlLHQpe3ZhciBvLHMsbixyPXRoaXMsbD0hMSxkPXIuJHNsaWRlci53aWR0aCgpLGE9d2luZG93LmlubmVyV2lkdGh8fGkod2luZG93KS53aWR0aCgpO2lmKCJ3aW5kb3ciPT09ci5yZXNwb25kVG8/bj1hOiJzbGlkZXIiPT09ci5yZXNwb25kVG8/bj1kOiJtaW4iPT09ci5yZXNwb25kVG8mJihuPU1hdGgubWluKGEsZCkpLHIub3B0aW9ucy5yZXNwb25zaXZlJiZyLm9wdGlvbnMucmVzcG9uc2l2ZS5sZW5ndGgmJm51bGwhPT1yLm9wdGlvbnMucmVzcG9uc2l2ZSl7cz1udWxsO2ZvcihvIGluIHIuYnJlYWtwb2ludHMpci5icmVha3BvaW50cy5oYXNPd25Qcm9wZXJ0eShvKSYmKCExPT09ci5vcmlnaW5hbFNldHRpbmdzLm1vYmlsZUZpcnN0P248ci5icmVha3BvaW50c1tvXSYmKHM9ci5icmVha3BvaW50c1tvXSk6bj5yLmJyZWFrcG9pbnRzW29dJiYocz1yLmJyZWFrcG9pbnRzW29dKSk7bnVsbCE9PXM/bnVsbCE9PXIuYWN0aXZlQnJlYWtwb2ludD8ocyE9PXIuYWN0aXZlQnJlYWtwb2ludHx8dCkmJihyLmFjdGl2ZUJyZWFrcG9pbnQ9cywidW5zbGljayI9PT1yLmJyZWFrcG9pbnRTZXR0aW5nc1tzXT9yLnVuc2xpY2socyk6KHIub3B0aW9ucz1pLmV4dGVuZCh7fSxyLm9yaWdpbmFsU2V0dGluZ3Msci5icmVha3BvaW50U2V0dGluZ3Nbc10pLCEwPT09ZSYmKHIuY3VycmVudFNsaWRlPXIub3B0aW9ucy5pbml0aWFsU2xpZGUpLHIucmVmcmVzaChlKSksbD1zKTooci5hY3RpdmVCcmVha3BvaW50PXMsInVuc2xpY2siPT09ci5icmVha3BvaW50U2V0dGluZ3Nbc10/ci51bnNsaWNrKHMpOihyLm9wdGlvbnM9aS5leHRlbmQoe30sci5vcmlnaW5hbFNldHRpbmdzLHIuYnJlYWtwb2ludFNldHRpbmdzW3NdKSwhMD09PWUmJihyLmN1cnJlbnRTbGlkZT1yLm9wdGlvbnMuaW5pdGlhbFNsaWRlKSxyLnJlZnJlc2goZSkpLGw9cyk6bnVsbCE9PXIuYWN0aXZlQnJlYWtwb2ludCYmKHIuYWN0aXZlQnJlYWtwb2ludD1udWxsLHIub3B0aW9ucz1yLm9yaWdpbmFsU2V0dGluZ3MsITA9PT1lJiYoci5jdXJyZW50U2xpZGU9ci5vcHRpb25zLmluaXRpYWxTbGlkZSksci5yZWZyZXNoKGUpLGw9cyksZXx8ITE9PT1sfHxyLiRzbGlkZXIudHJpZ2dlcigiYnJlYWtwb2ludCIsW3IsbF0pfX0sZS5wcm90b3R5cGUuY2hhbmdlU2xpZGU9ZnVuY3Rpb24oZSx0KXt2YXIgbyxzLG4scj10aGlzLGw9aShlLmN1cnJlbnRUYXJnZXQpO3N3aXRjaChsLmlzKCJhIikmJmUucHJldmVudERlZmF1bHQoKSxsLmlzKCJsaSIpfHwobD1sLmNsb3Nlc3QoImxpIikpLG49ci5zbGlkZUNvdW50JXIub3B0aW9ucy5zbGlkZXNUb1Njcm9sbCE9MCxvPW4/MDooci5zbGlkZUNvdW50LXIuY3VycmVudFNsaWRlKSVyLm9wdGlvbnMuc2xpZGVzVG9TY3JvbGwsZS5kYXRhLm1lc3NhZ2Upe2Nhc2UicHJldmlvdXMiOnM9MD09PW8/ci5vcHRpb25zLnNsaWRlc1RvU2Nyb2xsOnIub3B0aW9ucy5zbGlkZXNUb1Nob3ctbyxyLnNsaWRlQ291bnQ+ci5vcHRpb25zLnNsaWRlc1RvU2hvdyYmci5zbGlkZUhhbmRsZXIoci5jdXJyZW50U2xpZGUtcywhMSx0KTticmVhaztjYXNlIm5leHQiOnM9MD09PW8/ci5vcHRpb25zLnNsaWRlc1RvU2Nyb2xsOm8sci5zbGlkZUNvdW50PnIub3B0aW9ucy5zbGlkZXNUb1Nob3cmJnIuc2xpZGVIYW5kbGVyKHIuY3VycmVudFNsaWRlK3MsITEsdCk7YnJlYWs7Y2FzZSJpbmRleCI6dmFyIGQ9MD09PWUuZGF0YS5pbmRleD8wOmUuZGF0YS5pbmRleHx8bC5pbmRleCgpKnIub3B0aW9ucy5zbGlkZXNUb1Njcm9sbDtyLnNsaWRlSGFuZGxlcihyLmNoZWNrTmF2aWdhYmxlKGQpLCExLHQpLGwuY2hpbGRyZW4oKS50cmlnZ2VyKCJmb2N1cyIpO2JyZWFrO2RlZmF1bHQ6cmV0dXJufX0sZS5wcm90b3R5cGUuY2hlY2tOYXZpZ2FibGU9ZnVuY3Rpb24oaSl7dmFyIGUsdDtpZihlPXRoaXMuZ2V0TmF2aWdhYmxlSW5kZXhlcygpLHQ9MCxpPmVbZS5sZW5ndGgtMV0paT1lW2UubGVuZ3RoLTFdO2Vsc2UgZm9yKHZhciBvIGluIGUpe2lmKGk8ZVtvXSl7aT10O2JyZWFrfXQ9ZVtvXX1yZXR1cm4gaX0sZS5wcm90b3R5cGUuY2xlYW5VcEV2ZW50cz1mdW5jdGlvbigpe3ZhciBlPXRoaXM7ZS5vcHRpb25zLmRvdHMmJm51bGwhPT1lLiRkb3RzJiYoaSgibGkiLGUuJGRvdHMpLm9mZigiY2xpY2suc2xpY2siLGUuY2hhbmdlU2xpZGUpLm9mZigibW91c2VlbnRlci5zbGljayIsaS5wcm94eShlLmludGVycnVwdCxlLCEwKSkub2ZmKCJtb3VzZWxlYXZlLnNsaWNrIixpLnByb3h5KGUuaW50ZXJydXB0LGUsITEpKSwhMD09PWUub3B0aW9ucy5hY2Nlc3NpYmlsaXR5JiZlLiRkb3RzLm9mZigia2V5ZG93bi5zbGljayIsZS5rZXlIYW5kbGVyKSksZS4kc2xpZGVyLm9mZigiZm9jdXMuc2xpY2sgYmx1ci5zbGljayIpLCEwPT09ZS5vcHRpb25zLmFycm93cyYmZS5zbGlkZUNvdW50PmUub3B0aW9ucy5zbGlkZXNUb1Nob3cmJihlLiRwcmV2QXJyb3cmJmUuJHByZXZBcnJvdy5vZmYoImNsaWNrLnNsaWNrIixlLmNoYW5nZVNsaWRlKSxlLiRuZXh0QXJyb3cmJmUuJG5leHRBcnJvdy5vZmYoImNsaWNrLnNsaWNrIixlLmNoYW5nZVNsaWRlKSwhMD09PWUub3B0aW9ucy5hY2Nlc3NpYmlsaXR5JiYoZS4kcHJldkFycm93JiZlLiRwcmV2QXJyb3cub2ZmKCJrZXlkb3duLnNsaWNrIixlLmtleUhhbmRsZXIpLGUuJG5leHRBcnJvdyYmZS4kbmV4dEFycm93Lm9mZigia2V5ZG93bi5zbGljayIsZS5rZXlIYW5kbGVyKSkpLGUuJGxpc3Qub2ZmKCJ0b3VjaHN0YXJ0LnNsaWNrIG1vdXNlZG93bi5zbGljayIsZS5zd2lwZUhhbmRsZXIpLGUuJGxpc3Qub2ZmKCJ0b3VjaG1vdmUuc2xpY2sgbW91c2Vtb3ZlLnNsaWNrIixlLnN3aXBlSGFuZGxlciksZS4kbGlzdC5vZmYoInRvdWNoZW5kLnNsaWNrIG1vdXNldXAuc2xpY2siLGUuc3dpcGVIYW5kbGVyKSxlLiRsaXN0Lm9mZigidG91Y2hjYW5jZWwuc2xpY2sgbW91c2VsZWF2ZS5zbGljayIsZS5zd2lwZUhhbmRsZXIpLGUuJGxpc3Qub2ZmKCJjbGljay5zbGljayIsZS5jbGlja0hhbmRsZXIpLGkoZG9jdW1lbnQpLm9mZihlLnZpc2liaWxpdHlDaGFuZ2UsZS52aXNpYmlsaXR5KSxlLmNsZWFuVXBTbGlkZUV2ZW50cygpLCEwPT09ZS5vcHRpb25zLmFjY2Vzc2liaWxpdHkmJmUuJGxpc3Qub2ZmKCJrZXlkb3duLnNsaWNrIixlLmtleUhhbmRsZXIpLCEwPT09ZS5vcHRpb25zLmZvY3VzT25TZWxlY3QmJmkoZS4kc2xpZGVUcmFjaykuY2hpbGRyZW4oKS5vZmYoImNsaWNrLnNsaWNrIixlLnNlbGVjdEhhbmRsZXIpLGkod2luZG93KS5vZmYoIm9yaWVudGF0aW9uY2hhbmdlLnNsaWNrLnNsaWNrLSIrZS5pbnN0YW5jZVVpZCxlLm9yaWVudGF0aW9uQ2hhbmdlKSxpKHdpbmRvdykub2ZmKCJyZXNpemUuc2xpY2suc2xpY2stIitlLmluc3RhbmNlVWlkLGUucmVzaXplKSxpKCJbZHJhZ2dhYmxlIT10cnVlXSIsZS4kc2xpZGVUcmFjaykub2ZmKCJkcmFnc3RhcnQiLGUucHJldmVudERlZmF1bHQpLGkod2luZG93KS5vZmYoImxvYWQuc2xpY2suc2xpY2stIitlLmluc3RhbmNlVWlkLGUuc2V0UG9zaXRpb24pfSxlLnByb3RvdHlwZS5jbGVhblVwU2xpZGVFdmVudHM9ZnVuY3Rpb24oKXt2YXIgZT10aGlzO2UuJGxpc3Qub2ZmKCJtb3VzZWVudGVyLnNsaWNrIixpLnByb3h5KGUuaW50ZXJydXB0LGUsITApKSxlLiRsaXN0Lm9mZigibW91c2VsZWF2ZS5zbGljayIsaS5wcm94eShlLmludGVycnVwdCxlLCExKSl9LGUucHJvdG90eXBlLmNsZWFuVXBSb3dzPWZ1bmN0aW9uKCl7dmFyIGksZT10aGlzO2Uub3B0aW9ucy5yb3dzPjEmJigoaT1lLiRzbGlkZXMuY2hpbGRyZW4oKS5jaGlsZHJlbigpKS5yZW1vdmVBdHRyKCJzdHlsZSIpLGUuJHNsaWRlci5lbXB0eSgpLmFwcGVuZChpKSl9LGUucHJvdG90eXBlLmNsaWNrSGFuZGxlcj1mdW5jdGlvbihpKXshMT09PXRoaXMuc2hvdWxkQ2xpY2smJihpLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpLGkuc3RvcFByb3BhZ2F0aW9uKCksaS5wcmV2ZW50RGVmYXVsdCgpKX0sZS5wcm90b3R5cGUuZGVzdHJveT1mdW5jdGlvbihlKXt2YXIgdD10aGlzO3QuYXV0b1BsYXlDbGVhcigpLHQudG91Y2hPYmplY3Q9e30sdC5jbGVhblVwRXZlbnRzKCksaSgiLnNsaWNrLWNsb25lZCIsdC4kc2xpZGVyKS5kZXRhY2goKSx0LiRkb3RzJiZ0LiRkb3RzLnJlbW92ZSgpLHQuJHByZXZBcnJvdyYmdC4kcHJldkFycm93Lmxlbmd0aCYmKHQuJHByZXZBcnJvdy5yZW1vdmVDbGFzcygic2xpY2stZGlzYWJsZWQgc2xpY2stYXJyb3cgc2xpY2staGlkZGVuIikucmVtb3ZlQXR0cigiYXJpYS1oaWRkZW4gYXJpYS1kaXNhYmxlZCB0YWJpbmRleCIpLmNzcygiZGlzcGxheSIsIiIpLHQuaHRtbEV4cHIudGVzdCh0Lm9wdGlvbnMucHJldkFycm93KSYmdC4kcHJldkFycm93LnJlbW92ZSgpKSx0LiRuZXh0QXJyb3cmJnQuJG5leHRBcnJvdy5sZW5ndGgmJih0LiRuZXh0QXJyb3cucmVtb3ZlQ2xhc3MoInNsaWNrLWRpc2FibGVkIHNsaWNrLWFycm93IHNsaWNrLWhpZGRlbiIpLnJlbW92ZUF0dHIoImFyaWEtaGlkZGVuIGFyaWEtZGlzYWJsZWQgdGFiaW5kZXgiKS5jc3MoImRpc3BsYXkiLCIiKSx0Lmh0bWxFeHByLnRlc3QodC5vcHRpb25zLm5leHRBcnJvdykmJnQuJG5leHRBcnJvdy5yZW1vdmUoKSksdC4kc2xpZGVzJiYodC4kc2xpZGVzLnJlbW92ZUNsYXNzKCJzbGljay1zbGlkZSBzbGljay1hY3RpdmUgc2xpY2stY2VudGVyIHNsaWNrLXZpc2libGUgc2xpY2stY3VycmVudCIpLnJlbW92ZUF0dHIoImFyaWEtaGlkZGVuIikucmVtb3ZlQXR0cigiZGF0YS1zbGljay1pbmRleCIpLmVhY2goZnVuY3Rpb24oKXtpKHRoaXMpLmF0dHIoInN0eWxlIixpKHRoaXMpLmRhdGEoIm9yaWdpbmFsU3R5bGluZyIpKX0pLHQuJHNsaWRlVHJhY2suY2hpbGRyZW4odGhpcy5vcHRpb25zLnNsaWRlKS5kZXRhY2goKSx0LiRzbGlkZVRyYWNrLmRldGFjaCgpLHQuJGxpc3QuZGV0YWNoKCksdC4kc2xpZGVyLmFwcGVuZCh0LiRzbGlkZXMpKSx0LmNsZWFuVXBSb3dzKCksdC4kc2xpZGVyLnJlbW92ZUNsYXNzKCJzbGljay1zbGlkZXIiKSx0LiRzbGlkZXIucmVtb3ZlQ2xhc3MoInNsaWNrLWluaXRpYWxpemVkIiksdC4kc2xpZGVyLnJlbW92ZUNsYXNzKCJzbGljay1kb3R0ZWQiKSx0LnVuc2xpY2tlZD0hMCxlfHx0LiRzbGlkZXIudHJpZ2dlcigiZGVzdHJveSIsW3RdKX0sZS5wcm90b3R5cGUuZGlzYWJsZVRyYW5zaXRpb249ZnVuY3Rpb24oaSl7dmFyIGU9dGhpcyx0PXt9O3RbZS50cmFuc2l0aW9uVHlwZV09IiIsITE9PT1lLm9wdGlvbnMuZmFkZT9lLiRzbGlkZVRyYWNrLmNzcyh0KTplLiRzbGlkZXMuZXEoaSkuY3NzKHQpfSxlLnByb3RvdHlwZS5mYWRlU2xpZGU9ZnVuY3Rpb24oaSxlKXt2YXIgdD10aGlzOyExPT09dC5jc3NUcmFuc2l0aW9ucz8odC4kc2xpZGVzLmVxKGkpLmNzcyh7ekluZGV4OnQub3B0aW9ucy56SW5kZXh9KSx0LiRzbGlkZXMuZXEoaSkuYW5pbWF0ZSh7b3BhY2l0eToxfSx0Lm9wdGlvbnMuc3BlZWQsdC5vcHRpb25zLmVhc2luZyxlKSk6KHQuYXBwbHlUcmFuc2l0aW9uKGkpLHQuJHNsaWRlcy5lcShpKS5jc3Moe29wYWNpdHk6MSx6SW5kZXg6dC5vcHRpb25zLnpJbmRleH0pLGUmJnNldFRpbWVvdXQoZnVuY3Rpb24oKXt0LmRpc2FibGVUcmFuc2l0aW9uKGkpLGUuY2FsbCgpfSx0Lm9wdGlvbnMuc3BlZWQpKX0sZS5wcm90b3R5cGUuZmFkZVNsaWRlT3V0PWZ1bmN0aW9uKGkpe3ZhciBlPXRoaXM7ITE9PT1lLmNzc1RyYW5zaXRpb25zP2UuJHNsaWRlcy5lcShpKS5hbmltYXRlKHtvcGFjaXR5OjAsekluZGV4OmUub3B0aW9ucy56aW5kZXh9LGUub3B0aW9ucy5zcGVlZCxlLm9wdGlvbnMuZWFzaW5nKTooZS5hcHBseVRyYW5zaXRpb24oaSksZS4kc2xpZGVzLmVxKGkpLmNzcyh7b3BhY2l0eTowLHpJbmRleDplLm9wdGlvbnMuemluZGV4fSkpfSxlLnByb3RvdHlwZS5maWx0ZXJTbGlkZXM9ZS5wcm90b3R5cGUuc2xpY2tGaWx0ZXI9ZnVuY3Rpb24oaSl7dmFyIGU9dGhpcztudWxsIT09aSYmKGUuJHNsaWRlc0NhY2hlPWUuJHNsaWRlcyxlLnVubG9hZCgpLGUuJHNsaWRlVHJhY2suY2hpbGRyZW4odGhpcy5vcHRpb25zLnNsaWRlKS5kZXRhY2goKSxlLiRzbGlkZXNDYWNoZS5maWx0ZXIoaSkuYXBwZW5kVG8oZS4kc2xpZGVUcmFjayksZS5yZWluaXQoKSl9LGUucHJvdG90eXBlLmZvY3VzSGFuZGxlcj1mdW5jdGlvbigpe3ZhciBlPXRoaXM7ZS4kc2xpZGVyLm9mZigiZm9jdXMuc2xpY2sgYmx1ci5zbGljayIpLm9uKCJmb2N1cy5zbGljayBibHVyLnNsaWNrIiwiKiIsZnVuY3Rpb24odCl7dC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTt2YXIgbz1pKHRoaXMpO3NldFRpbWVvdXQoZnVuY3Rpb24oKXtlLm9wdGlvbnMucGF1c2VPbkZvY3VzJiYoZS5mb2N1c3NlZD1vLmlzKCI6Zm9jdXMiKSxlLmF1dG9QbGF5KCkpfSwwKX0pfSxlLnByb3RvdHlwZS5nZXRDdXJyZW50PWUucHJvdG90eXBlLnNsaWNrQ3VycmVudFNsaWRlPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY3VycmVudFNsaWRlfSxlLnByb3RvdHlwZS5nZXREb3RDb3VudD1mdW5jdGlvbigpe3ZhciBpPXRoaXMsZT0wLHQ9MCxvPTA7aWYoITA9PT1pLm9wdGlvbnMuaW5maW5pdGUpaWYoaS5zbGlkZUNvdW50PD1pLm9wdGlvbnMuc2xpZGVzVG9TaG93KSsrbztlbHNlIGZvcig7ZTxpLnNsaWRlQ291bnQ7KSsrbyxlPXQraS5vcHRpb25zLnNsaWRlc1RvU2Nyb2xsLHQrPWkub3B0aW9ucy5zbGlkZXNUb1Njcm9sbDw9aS5vcHRpb25zLnNsaWRlc1RvU2hvdz9pLm9wdGlvbnMuc2xpZGVzVG9TY3JvbGw6aS5vcHRpb25zLnNsaWRlc1RvU2hvdztlbHNlIGlmKCEwPT09aS5vcHRpb25zLmNlbnRlck1vZGUpbz1pLnNsaWRlQ291bnQ7ZWxzZSBpZihpLm9wdGlvbnMuYXNOYXZGb3IpZm9yKDtlPGkuc2xpZGVDb3VudDspKytvLGU9dCtpLm9wdGlvbnMuc2xpZGVzVG9TY3JvbGwsdCs9aS5vcHRpb25zLnNsaWRlc1RvU2Nyb2xsPD1pLm9wdGlvbnMuc2xpZGVzVG9TaG93P2kub3B0aW9ucy5zbGlkZXNUb1Njcm9sbDppLm9wdGlvbnMuc2xpZGVzVG9TaG93O2Vsc2Ugbz0xK01hdGguY2VpbCgoaS5zbGlkZUNvdW50LWkub3B0aW9ucy5zbGlkZXNUb1Nob3cpL2kub3B0aW9ucy5zbGlkZXNUb1Njcm9sbCk7cmV0dXJuIG8tMX0sZS5wcm90b3R5cGUuZ2V0TGVmdD1mdW5jdGlvbihpKXt2YXIgZSx0LG8scyxuPXRoaXMscj0wO3JldHVybiBuLnNsaWRlT2Zmc2V0PTAsdD1uLiRzbGlkZXMuZmlyc3QoKS5vdXRlckhlaWdodCghMCksITA9PT1uLm9wdGlvbnMuaW5maW5pdGU/KG4uc2xpZGVDb3VudD5uLm9wdGlvbnMuc2xpZGVzVG9TaG93JiYobi5zbGlkZU9mZnNldD1uLnNsaWRlV2lkdGgqbi5vcHRpb25zLnNsaWRlc1RvU2hvdyotMSxzPS0xLCEwPT09bi5vcHRpb25zLnZlcnRpY2FsJiYhMD09PW4ub3B0aW9ucy5jZW50ZXJNb2RlJiYoMj09PW4ub3B0aW9ucy5zbGlkZXNUb1Nob3c/cz0tMS41OjE9PT1uLm9wdGlvbnMuc2xpZGVzVG9TaG93JiYocz0tMikpLHI9dCpuLm9wdGlvbnMuc2xpZGVzVG9TaG93KnMpLG4uc2xpZGVDb3VudCVuLm9wdGlvbnMuc2xpZGVzVG9TY3JvbGwhPTAmJmkrbi5vcHRpb25zLnNsaWRlc1RvU2Nyb2xsPm4uc2xpZGVDb3VudCYmbi5zbGlkZUNvdW50Pm4ub3B0aW9ucy5zbGlkZXNUb1Nob3cmJihpPm4uc2xpZGVDb3VudD8obi5zbGlkZU9mZnNldD0obi5vcHRpb25zLnNsaWRlc1RvU2hvdy0oaS1uLnNsaWRlQ291bnQpKSpuLnNsaWRlV2lkdGgqLTEscj0obi5vcHRpb25zLnNsaWRlc1RvU2hvdy0oaS1uLnNsaWRlQ291bnQpKSp0Ki0xKToobi5zbGlkZU9mZnNldD1uLnNsaWRlQ291bnQlbi5vcHRpb25zLnNsaWRlc1RvU2Nyb2xsKm4uc2xpZGVXaWR0aCotMSxyPW4uc2xpZGVDb3VudCVuLm9wdGlvbnMuc2xpZGVzVG9TY3JvbGwqdCotMSkpKTppK24ub3B0aW9ucy5zbGlkZXNUb1Nob3c+bi5zbGlkZUNvdW50JiYobi5zbGlkZU9mZnNldD0oaStuLm9wdGlvbnMuc2xpZGVzVG9TaG93LW4uc2xpZGVDb3VudCkqbi5zbGlkZVdpZHRoLHI9KGkrbi5vcHRpb25zLnNsaWRlc1RvU2hvdy1uLnNsaWRlQ291bnQpKnQpLG4uc2xpZGVDb3VudDw9bi5vcHRpb25zLnNsaWRlc1RvU2hvdyYmKG4uc2xpZGVPZmZzZXQ9MCxyPTApLCEwPT09bi5vcHRpb25zLmNlbnRlck1vZGUmJm4uc2xpZGVDb3VudDw9bi5vcHRpb25zLnNsaWRlc1RvU2hvdz9uLnNsaWRlT2Zmc2V0PW4uc2xpZGVXaWR0aCpNYXRoLmZsb29yKG4ub3B0aW9ucy5zbGlkZXNUb1Nob3cpLzItbi5zbGlkZVdpZHRoKm4uc2xpZGVDb3VudC8yOiEwPT09bi5vcHRpb25zLmNlbnRlck1vZGUmJiEwPT09bi5vcHRpb25zLmluZmluaXRlP24uc2xpZGVPZmZzZXQrPW4uc2xpZGVXaWR0aCpNYXRoLmZsb29yKG4ub3B0aW9ucy5zbGlkZXNUb1Nob3cvMiktbi5zbGlkZVdpZHRoOiEwPT09bi5vcHRpb25zLmNlbnRlck1vZGUmJihuLnNsaWRlT2Zmc2V0PTAsbi5zbGlkZU9mZnNldCs9bi5zbGlkZVdpZHRoKk1hdGguZmxvb3Iobi5vcHRpb25zLnNsaWRlc1RvU2hvdy8yKSksZT0hMT09PW4ub3B0aW9ucy52ZXJ0aWNhbD9pKm4uc2xpZGVXaWR0aCotMStuLnNsaWRlT2Zmc2V0OmkqdCotMStyLCEwPT09bi5vcHRpb25zLnZhcmlhYmxlV2lkdGgmJihvPW4uc2xpZGVDb3VudDw9bi5vcHRpb25zLnNsaWRlc1RvU2hvd3x8ITE9PT1uLm9wdGlvbnMuaW5maW5pdGU/bi4kc2xpZGVUcmFjay5jaGlsZHJlbigiLnNsaWNrLXNsaWRlIikuZXEoaSk6bi4kc2xpZGVUcmFjay5jaGlsZHJlbigiLnNsaWNrLXNsaWRlIikuZXEoaStuLm9wdGlvbnMuc2xpZGVzVG9TaG93KSxlPSEwPT09bi5vcHRpb25zLnJ0bD9vWzBdPy0xKihuLiRzbGlkZVRyYWNrLndpZHRoKCktb1swXS5vZmZzZXRMZWZ0LW8ud2lkdGgoKSk6MDpvWzBdPy0xKm9bMF0ub2Zmc2V0TGVmdDowLCEwPT09bi5vcHRpb25zLmNlbnRlck1vZGUmJihvPW4uc2xpZGVDb3VudDw9bi5vcHRpb25zLnNsaWRlc1RvU2hvd3x8ITE9PT1uLm9wdGlvbnMuaW5maW5pdGU/bi4kc2xpZGVUcmFjay5jaGlsZHJlbigiLnNsaWNrLXNsaWRlIikuZXEoaSk6bi4kc2xpZGVUcmFjay5jaGlsZHJlbigiLnNsaWNrLXNsaWRlIikuZXEoaStuLm9wdGlvbnMuc2xpZGVzVG9TaG93KzEpLGU9ITA9PT1uLm9wdGlvbnMucnRsP29bMF0/LTEqKG4uJHNsaWRlVHJhY2sud2lkdGgoKS1vWzBdLm9mZnNldExlZnQtby53aWR0aCgpKTowOm9bMF0/LTEqb1swXS5vZmZzZXRMZWZ0OjAsZSs9KG4uJGxpc3Qud2lkdGgoKS1vLm91dGVyV2lkdGgoKSkvMikpLGV9LGUucHJvdG90eXBlLmdldE9wdGlvbj1lLnByb3RvdHlwZS5zbGlja0dldE9wdGlvbj1mdW5jdGlvbihpKXtyZXR1cm4gdGhpcy5vcHRpb25zW2ldfSxlLnByb3RvdHlwZS5nZXROYXZpZ2FibGVJbmRleGVzPWZ1bmN0aW9uKCl7dmFyIGksZT10aGlzLHQ9MCxvPTAscz1bXTtmb3IoITE9PT1lLm9wdGlvbnMuaW5maW5pdGU/aT1lLnNsaWRlQ291bnQ6KHQ9LTEqZS5vcHRpb25zLnNsaWRlc1RvU2Nyb2xsLG89LTEqZS5vcHRpb25zLnNsaWRlc1RvU2Nyb2xsLGk9MiplLnNsaWRlQ291bnQpO3Q8aTspcy5wdXNoKHQpLHQ9bytlLm9wdGlvbnMuc2xpZGVzVG9TY3JvbGwsbys9ZS5vcHRpb25zLnNsaWRlc1RvU2Nyb2xsPD1lLm9wdGlvbnMuc2xpZGVzVG9TaG93P2Uub3B0aW9ucy5zbGlkZXNUb1Njcm9sbDplLm9wdGlvbnMuc2xpZGVzVG9TaG93O3JldHVybiBzfSxlLnByb3RvdHlwZS5nZXRTbGljaz1mdW5jdGlvbigpe3JldHVybiB0aGlzfSxlLnByb3RvdHlwZS5nZXRTbGlkZUNvdW50PWZ1bmN0aW9uKCl7dmFyIGUsdCxvPXRoaXM7cmV0dXJuIHQ9ITA9PT1vLm9wdGlvbnMuY2VudGVyTW9kZT9vLnNsaWRlV2lkdGgqTWF0aC5mbG9vcihvLm9wdGlvbnMuc2xpZGVzVG9TaG93LzIpOjAsITA9PT1vLm9wdGlvbnMuc3dpcGVUb1NsaWRlPyhvLiRzbGlkZVRyYWNrLmZpbmQoIi5zbGljay1zbGlkZSIpLmVhY2goZnVuY3Rpb24ocyxuKXtpZihuLm9mZnNldExlZnQtdCtpKG4pLm91dGVyV2lkdGgoKS8yPi0xKm8uc3dpcGVMZWZ0KXJldHVybiBlPW4sITF9KSxNYXRoLmFicyhpKGUpLmF0dHIoImRhdGEtc2xpY2staW5kZXgiKS1vLmN1cnJlbnRTbGlkZSl8fDEpOm8ub3B0aW9ucy5zbGlkZXNUb1Njcm9sbH0sZS5wcm90b3R5cGUuZ29Ubz1lLnByb3RvdHlwZS5zbGlja0dvVG89ZnVuY3Rpb24oaSxlKXt0aGlzLmNoYW5nZVNsaWRlKHtkYXRhOnttZXNzYWdlOiJpbmRleCIsaW5kZXg6cGFyc2VJbnQoaSl9fSxlKX0sZS5wcm90b3R5cGUuaW5pdD1mdW5jdGlvbihlKXt2YXIgdD10aGlzO2kodC4kc2xpZGVyKS5oYXNDbGFzcygic2xpY2staW5pdGlhbGl6ZWQiKXx8KGkodC4kc2xpZGVyKS5hZGRDbGFzcygic2xpY2staW5pdGlhbGl6ZWQiKSx0LmJ1aWxkUm93cygpLHQuYnVpbGRPdXQoKSx0LnNldFByb3BzKCksdC5zdGFydExvYWQoKSx0LmxvYWRTbGlkZXIoKSx0LmluaXRpYWxpemVFdmVudHMoKSx0LnVwZGF0ZUFycm93cygpLHQudXBkYXRlRG90cygpLHQuY2hlY2tSZXNwb25zaXZlKCEwKSx0LmZvY3VzSGFuZGxlcigpKSxlJiZ0LiRzbGlkZXIudHJpZ2dlcigiaW5pdCIsW3RdKSwhMD09PXQub3B0aW9ucy5hY2Nlc3NpYmlsaXR5JiZ0LmluaXRBREEoKSx0Lm9wdGlvbnMuYXV0b3BsYXkmJih0LnBhdXNlZD0hMSx0LmF1dG9QbGF5KCkpfSxlLnByb3RvdHlwZS5pbml0QURBPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcyx0PU1hdGguY2VpbChlLnNsaWRlQ291bnQvZS5vcHRpb25zLnNsaWRlc1RvU2hvdyksbz1lLmdldE5hdmlnYWJsZUluZGV4ZXMoKS5maWx0ZXIoZnVuY3Rpb24oaSl7cmV0dXJuIGk+PTAmJmk8ZS5zbGlkZUNvdW50fSk7ZS4kc2xpZGVzLmFkZChlLiRzbGlkZVRyYWNrLmZpbmQoIi5zbGljay1jbG9uZWQiKSkuYXR0cih7ImFyaWEtaGlkZGVuIjoidHJ1ZSIsdGFiaW5kZXg6Ii0xIn0pLmZpbmQoImEsIGlucHV0LCBidXR0b24sIHNlbGVjdCIpLmF0dHIoe3RhYmluZGV4OiItMSJ9KSxudWxsIT09ZS4kZG90cyYmKGUuJHNsaWRlcy5ub3QoZS4kc2xpZGVUcmFjay5maW5kKCIuc2xpY2stY2xvbmVkIikpLmVhY2goZnVuY3Rpb24odCl7dmFyIHM9by5pbmRleE9mKHQpO2kodGhpcykuYXR0cih7cm9sZToidGFicGFuZWwiLGlkOiJzbGljay1zbGlkZSIrZS5pbnN0YW5jZVVpZCt0LHRhYmluZGV4Oi0xfSksLTEhPT1zJiZpKHRoaXMpLmF0dHIoeyJhcmlhLWRlc2NyaWJlZGJ5Ijoic2xpY2stc2xpZGUtY29udHJvbCIrZS5pbnN0YW5jZVVpZCtzfSl9KSxlLiRkb3RzLmF0dHIoInJvbGUiLCJ0YWJsaXN0IikuZmluZCgibGkiKS5lYWNoKGZ1bmN0aW9uKHMpe3ZhciBuPW9bc107aSh0aGlzKS5hdHRyKHtyb2xlOiJwcmVzZW50YXRpb24ifSksaSh0aGlzKS5maW5kKCJidXR0b24iKS5maXJzdCgpLmF0dHIoe3JvbGU6InRhYiIsaWQ6InNsaWNrLXNsaWRlLWNvbnRyb2wiK2UuaW5zdGFuY2VVaWQrcywiYXJpYS1jb250cm9scyI6InNsaWNrLXNsaWRlIitlLmluc3RhbmNlVWlkK24sImFyaWEtbGFiZWwiOnMrMSsiIG9mICIrdCwiYXJpYS1zZWxlY3RlZCI6bnVsbCx0YWJpbmRleDoiLTEifSl9KS5lcShlLmN1cnJlbnRTbGlkZSkuZmluZCgiYnV0dG9uIikuYXR0cih7ImFyaWEtc2VsZWN0ZWQiOiJ0cnVlIix0YWJpbmRleDoiMCJ9KS5lbmQoKSk7Zm9yKHZhciBzPWUuY3VycmVudFNsaWRlLG49cytlLm9wdGlvbnMuc2xpZGVzVG9TaG93O3M8bjtzKyspZS4kc2xpZGVzLmVxKHMpLmF0dHIoInRhYmluZGV4IiwwKTtlLmFjdGl2YXRlQURBKCl9LGUucHJvdG90eXBlLmluaXRBcnJvd0V2ZW50cz1mdW5jdGlvbigpe3ZhciBpPXRoaXM7ITA9PT1pLm9wdGlvbnMuYXJyb3dzJiZpLnNsaWRlQ291bnQ+aS5vcHRpb25zLnNsaWRlc1RvU2hvdyYmKGkuJHByZXZBcnJvdy5vZmYoImNsaWNrLnNsaWNrIikub24oImNsaWNrLnNsaWNrIix7bWVzc2FnZToicHJldmlvdXMifSxpLmNoYW5nZVNsaWRlKSxpLiRuZXh0QXJyb3cub2ZmKCJjbGljay5zbGljayIpLm9uKCJjbGljay5zbGljayIse21lc3NhZ2U6Im5leHQifSxpLmNoYW5nZVNsaWRlKSwhMD09PWkub3B0aW9ucy5hY2Nlc3NpYmlsaXR5JiYoaS4kcHJldkFycm93Lm9uKCJrZXlkb3duLnNsaWNrIixpLmtleUhhbmRsZXIpLGkuJG5leHRBcnJvdy5vbigia2V5ZG93bi5zbGljayIsaS5rZXlIYW5kbGVyKSkpfSxlLnByb3RvdHlwZS5pbml0RG90RXZlbnRzPWZ1bmN0aW9uKCl7dmFyIGU9dGhpczshMD09PWUub3B0aW9ucy5kb3RzJiYoaSgibGkiLGUuJGRvdHMpLm9uKCJjbGljay5zbGljayIse21lc3NhZ2U6ImluZGV4In0sZS5jaGFuZ2VTbGlkZSksITA9PT1lLm9wdGlvbnMuYWNjZXNzaWJpbGl0eSYmZS4kZG90cy5vbigia2V5ZG93bi5zbGljayIsZS5rZXlIYW5kbGVyKSksITA9PT1lLm9wdGlvbnMuZG90cyYmITA9PT1lLm9wdGlvbnMucGF1c2VPbkRvdHNIb3ZlciYmaSgibGkiLGUuJGRvdHMpLm9uKCJtb3VzZWVudGVyLnNsaWNrIixpLnByb3h5KGUuaW50ZXJydXB0LGUsITApKS5vbigibW91c2VsZWF2ZS5zbGljayIsaS5wcm94eShlLmludGVycnVwdCxlLCExKSl9LGUucHJvdG90eXBlLmluaXRTbGlkZUV2ZW50cz1mdW5jdGlvbigpe3ZhciBlPXRoaXM7ZS5vcHRpb25zLnBhdXNlT25Ib3ZlciYmKGUuJGxpc3Qub24oIm1vdXNlZW50ZXIuc2xpY2siLGkucHJveHkoZS5pbnRlcnJ1cHQsZSwhMCkpLGUuJGxpc3Qub24oIm1vdXNlbGVhdmUuc2xpY2siLGkucHJveHkoZS5pbnRlcnJ1cHQsZSwhMSkpKX0sZS5wcm90b3R5cGUuaW5pdGlhbGl6ZUV2ZW50cz1mdW5jdGlvbigpe3ZhciBlPXRoaXM7ZS5pbml0QXJyb3dFdmVudHMoKSxlLmluaXREb3RFdmVudHMoKSxlLmluaXRTbGlkZUV2ZW50cygpLGUuJGxpc3Qub24oInRvdWNoc3RhcnQuc2xpY2sgbW91c2Vkb3duLnNsaWNrIix7YWN0aW9uOiJzdGFydCJ9LGUuc3dpcGVIYW5kbGVyKSxlLiRsaXN0Lm9uKCJ0b3VjaG1vdmUuc2xpY2sgbW91c2Vtb3ZlLnNsaWNrIix7YWN0aW9uOiJtb3ZlIn0sZS5zd2lwZUhhbmRsZXIpLGUuJGxpc3Qub24oInRvdWNoZW5kLnNsaWNrIG1vdXNldXAuc2xpY2siLHthY3Rpb246ImVuZCJ9LGUuc3dpcGVIYW5kbGVyKSxlLiRsaXN0Lm9uKCJ0b3VjaGNhbmNlbC5zbGljayBtb3VzZWxlYXZlLnNsaWNrIix7YWN0aW9uOiJlbmQifSxlLnN3aXBlSGFuZGxlciksZS4kbGlzdC5vbigiY2xpY2suc2xpY2siLGUuY2xpY2tIYW5kbGVyKSxpKGRvY3VtZW50KS5vbihlLnZpc2liaWxpdHlDaGFuZ2UsaS5wcm94eShlLnZpc2liaWxpdHksZSkpLCEwPT09ZS5vcHRpb25zLmFjY2Vzc2liaWxpdHkmJmUuJGxpc3Qub24oImtleWRvd24uc2xpY2siLGUua2V5SGFuZGxlciksITA9PT1lLm9wdGlvbnMuZm9jdXNPblNlbGVjdCYmaShlLiRzbGlkZVRyYWNrKS5jaGlsZHJlbigpLm9uKCJjbGljay5zbGljayIsZS5zZWxlY3RIYW5kbGVyKSxpKHdpbmRvdykub24oIm9yaWVudGF0aW9uY2hhbmdlLnNsaWNrLnNsaWNrLSIrZS5pbnN0YW5jZVVpZCxpLnByb3h5KGUub3JpZW50YXRpb25DaGFuZ2UsZSkpLGkod2luZG93KS5vbigicmVzaXplLnNsaWNrLnNsaWNrLSIrZS5pbnN0YW5jZVVpZCxpLnByb3h5KGUucmVzaXplLGUpKSxpKCJbZHJhZ2dhYmxlIT10cnVlXSIsZS4kc2xpZGVUcmFjaykub24oImRyYWdzdGFydCIsZS5wcmV2ZW50RGVmYXVsdCksaSh3aW5kb3cpLm9uKCJsb2FkLnNsaWNrLnNsaWNrLSIrZS5pbnN0YW5jZVVpZCxlLnNldFBvc2l0aW9uKSxpKGUuc2V0UG9zaXRpb24pfSxlLnByb3RvdHlwZS5pbml0VUk9ZnVuY3Rpb24oKXt2YXIgaT10aGlzOyEwPT09aS5vcHRpb25zLmFycm93cyYmaS5zbGlkZUNvdW50Pmkub3B0aW9ucy5zbGlkZXNUb1Nob3cmJihpLiRwcmV2QXJyb3cuc2hvdygpLGkuJG5leHRBcnJvdy5zaG93KCkpLCEwPT09aS5vcHRpb25zLmRvdHMmJmkuc2xpZGVDb3VudD5pLm9wdGlvbnMuc2xpZGVzVG9TaG93JiZpLiRkb3RzLnNob3coKX0sZS5wcm90b3R5cGUua2V5SGFuZGxlcj1mdW5jdGlvbihpKXt2YXIgZT10aGlzO2kudGFyZ2V0LnRhZ05hbWUubWF0Y2goIlRFWFRBUkVBfElOUFVUfFNFTEVDVCIpfHwoMzc9PT1pLmtleUNvZGUmJiEwPT09ZS5vcHRpb25zLmFjY2Vzc2liaWxpdHk/ZS5jaGFuZ2VTbGlkZSh7ZGF0YTp7bWVzc2FnZTohMD09PWUub3B0aW9ucy5ydGw/Im5leHQiOiJwcmV2aW91cyJ9fSk6Mzk9PT1pLmtleUNvZGUmJiEwPT09ZS5vcHRpb25zLmFjY2Vzc2liaWxpdHkmJmUuY2hhbmdlU2xpZGUoe2RhdGE6e21lc3NhZ2U6ITA9PT1lLm9wdGlvbnMucnRsPyJwcmV2aW91cyI6Im5leHQifX0pKX0sZS5wcm90b3R5cGUubGF6eUxvYWQ9ZnVuY3Rpb24oKXtmdW5jdGlvbiBlKGUpe2koImltZ1tkYXRhLWxhenldIixlKS5lYWNoKGZ1bmN0aW9uKCl7dmFyIGU9aSh0aGlzKSx0PWkodGhpcykuYXR0cigiZGF0YS1sYXp5Iiksbz1pKHRoaXMpLmF0dHIoImRhdGEtc3Jjc2V0Iikscz1pKHRoaXMpLmF0dHIoImRhdGEtc2l6ZXMiKXx8bi4kc2xpZGVyLmF0dHIoImRhdGEtc2l6ZXMiKSxyPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImltZyIpO3Iub25sb2FkPWZ1bmN0aW9uKCl7ZS5hbmltYXRlKHtvcGFjaXR5OjB9LDEwMCxmdW5jdGlvbigpe28mJihlLmF0dHIoInNyY3NldCIsbykscyYmZS5hdHRyKCJzaXplcyIscykpLGUuYXR0cigic3JjIix0KS5hbmltYXRlKHtvcGFjaXR5OjF9LDIwMCxmdW5jdGlvbigpe2UucmVtb3ZlQXR0cigiZGF0YS1sYXp5IGRhdGEtc3Jjc2V0IGRhdGEtc2l6ZXMiKS5yZW1vdmVDbGFzcygic2xpY2stbG9hZGluZyIpfSksbi4kc2xpZGVyLnRyaWdnZXIoImxhenlMb2FkZWQiLFtuLGUsdF0pfSl9LHIub25lcnJvcj1mdW5jdGlvbigpe2UucmVtb3ZlQXR0cigiZGF0YS1sYXp5IikucmVtb3ZlQ2xhc3MoInNsaWNrLWxvYWRpbmciKS5hZGRDbGFzcygic2xpY2stbGF6eWxvYWQtZXJyb3IiKSxuLiRzbGlkZXIudHJpZ2dlcigibGF6eUxvYWRFcnJvciIsW24sZSx0XSl9LHIuc3JjPXR9KX12YXIgdCxvLHMsbj10aGlzO2lmKCEwPT09bi5vcHRpb25zLmNlbnRlck1vZGU/ITA9PT1uLm9wdGlvbnMuaW5maW5pdGU/cz0obz1uLmN1cnJlbnRTbGlkZSsobi5vcHRpb25zLnNsaWRlc1RvU2hvdy8yKzEpKStuLm9wdGlvbnMuc2xpZGVzVG9TaG93KzI6KG89TWF0aC5tYXgoMCxuLmN1cnJlbnRTbGlkZS0obi5vcHRpb25zLnNsaWRlc1RvU2hvdy8yKzEpKSxzPW4ub3B0aW9ucy5zbGlkZXNUb1Nob3cvMisxKzIrbi5jdXJyZW50U2xpZGUpOihvPW4ub3B0aW9ucy5pbmZpbml0ZT9uLm9wdGlvbnMuc2xpZGVzVG9TaG93K24uY3VycmVudFNsaWRlOm4uY3VycmVudFNsaWRlLHM9TWF0aC5jZWlsKG8rbi5vcHRpb25zLnNsaWRlc1RvU2hvdyksITA9PT1uLm9wdGlvbnMuZmFkZSYmKG8+MCYmby0tLHM8PW4uc2xpZGVDb3VudCYmcysrKSksdD1uLiRzbGlkZXIuZmluZCgiLnNsaWNrLXNsaWRlIikuc2xpY2UobyxzKSwiYW50aWNpcGF0ZWQiPT09bi5vcHRpb25zLmxhenlMb2FkKWZvcih2YXIgcj1vLTEsbD1zLGQ9bi4kc2xpZGVyLmZpbmQoIi5zbGljay1zbGlkZSIpLGE9MDthPG4ub3B0aW9ucy5zbGlkZXNUb1Njcm9sbDthKyspcjwwJiYocj1uLnNsaWRlQ291bnQtMSksdD0odD10LmFkZChkLmVxKHIpKSkuYWRkKGQuZXEobCkpLHItLSxsKys7ZSh0KSxuLnNsaWRlQ291bnQ8PW4ub3B0aW9ucy5zbGlkZXNUb1Nob3c/ZShuLiRzbGlkZXIuZmluZCgiLnNsaWNrLXNsaWRlIikpOm4uY3VycmVudFNsaWRlPj1uLnNsaWRlQ291bnQtbi5vcHRpb25zLnNsaWRlc1RvU2hvdz9lKG4uJHNsaWRlci5maW5kKCIuc2xpY2stY2xvbmVkIikuc2xpY2UoMCxuLm9wdGlvbnMuc2xpZGVzVG9TaG93KSk6MD09PW4uY3VycmVudFNsaWRlJiZlKG4uJHNsaWRlci5maW5kKCIuc2xpY2stY2xvbmVkIikuc2xpY2UoLTEqbi5vcHRpb25zLnNsaWRlc1RvU2hvdykpfSxlLnByb3RvdHlwZS5sb2FkU2xpZGVyPWZ1bmN0aW9uKCl7dmFyIGk9dGhpcztpLnNldFBvc2l0aW9uKCksaS4kc2xpZGVUcmFjay5jc3Moe29wYWNpdHk6MX0pLGkuJHNsaWRlci5yZW1vdmVDbGFzcygic2xpY2stbG9hZGluZyIpLGkuaW5pdFVJKCksInByb2dyZXNzaXZlIj09PWkub3B0aW9ucy5sYXp5TG9hZCYmaS5wcm9ncmVzc2l2ZUxhenlMb2FkKCl9LGUucHJvdG90eXBlLm5leHQ9ZS5wcm90b3R5cGUuc2xpY2tOZXh0PWZ1bmN0aW9uKCl7dGhpcy5jaGFuZ2VTbGlkZSh7ZGF0YTp7bWVzc2FnZToibmV4dCJ9fSl9LGUucHJvdG90eXBlLm9yaWVudGF0aW9uQ2hhbmdlPWZ1bmN0aW9uKCl7dmFyIGk9dGhpcztpLmNoZWNrUmVzcG9uc2l2ZSgpLGkuc2V0UG9zaXRpb24oKX0sZS5wcm90b3R5cGUucGF1c2U9ZS5wcm90b3R5cGUuc2xpY2tQYXVzZT1mdW5jdGlvbigpe3ZhciBpPXRoaXM7aS5hdXRvUGxheUNsZWFyKCksaS5wYXVzZWQ9ITB9LGUucHJvdG90eXBlLnBsYXk9ZS5wcm90b3R5cGUuc2xpY2tQbGF5PWZ1bmN0aW9uKCl7dmFyIGk9dGhpcztpLmF1dG9QbGF5KCksaS5vcHRpb25zLmF1dG9wbGF5PSEwLGkucGF1c2VkPSExLGkuZm9jdXNzZWQ9ITEsaS5pbnRlcnJ1cHRlZD0hMX0sZS5wcm90b3R5cGUucG9zdFNsaWRlPWZ1bmN0aW9uKGUpe3ZhciB0PXRoaXM7dC51bnNsaWNrZWR8fCh0LiRzbGlkZXIudHJpZ2dlcigiYWZ0ZXJDaGFuZ2UiLFt0LGVdKSx0LmFuaW1hdGluZz0hMSx0LnNsaWRlQ291bnQ+dC5vcHRpb25zLnNsaWRlc1RvU2hvdyYmdC5zZXRQb3NpdGlvbigpLHQuc3dpcGVMZWZ0PW51bGwsdC5vcHRpb25zLmF1dG9wbGF5JiZ0LmF1dG9QbGF5KCksITA9PT10Lm9wdGlvbnMuYWNjZXNzaWJpbGl0eSYmKHQuaW5pdEFEQSgpLHQub3B0aW9ucy5mb2N1c09uQ2hhbmdlJiZpKHQuJHNsaWRlcy5nZXQodC5jdXJyZW50U2xpZGUpKS5hdHRyKCJ0YWJpbmRleCIsMCkuZm9jdXMoKSkpfSxlLnByb3RvdHlwZS5wcmV2PWUucHJvdG90eXBlLnNsaWNrUHJldj1mdW5jdGlvbigpe3RoaXMuY2hhbmdlU2xpZGUoe2RhdGE6e21lc3NhZ2U6InByZXZpb3VzIn19KX0sZS5wcm90b3R5cGUucHJldmVudERlZmF1bHQ9ZnVuY3Rpb24oaSl7aS5wcmV2ZW50RGVmYXVsdCgpfSxlLnByb3RvdHlwZS5wcm9ncmVzc2l2ZUxhenlMb2FkPWZ1bmN0aW9uKGUpe2U9ZXx8MTt2YXIgdCxvLHMsbixyLGw9dGhpcyxkPWkoImltZ1tkYXRhLWxhenldIixsLiRzbGlkZXIpO2QubGVuZ3RoPyh0PWQuZmlyc3QoKSxvPXQuYXR0cigiZGF0YS1sYXp5Iikscz10LmF0dHIoImRhdGEtc3Jjc2V0Iiksbj10LmF0dHIoImRhdGEtc2l6ZXMiKXx8bC4kc2xpZGVyLmF0dHIoImRhdGEtc2l6ZXMiKSwocj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbWciKSkub25sb2FkPWZ1bmN0aW9uKCl7cyYmKHQuYXR0cigic3Jjc2V0IixzKSxuJiZ0LmF0dHIoInNpemVzIixuKSksdC5hdHRyKCJzcmMiLG8pLnJlbW92ZUF0dHIoImRhdGEtbGF6eSBkYXRhLXNyY3NldCBkYXRhLXNpemVzIikucmVtb3ZlQ2xhc3MoInNsaWNrLWxvYWRpbmciKSwhMD09PWwub3B0aW9ucy5hZGFwdGl2ZUhlaWdodCYmbC5zZXRQb3NpdGlvbigpLGwuJHNsaWRlci50cmlnZ2VyKCJsYXp5TG9hZGVkIixbbCx0LG9dKSxsLnByb2dyZXNzaXZlTGF6eUxvYWQoKX0sci5vbmVycm9yPWZ1bmN0aW9uKCl7ZTwzP3NldFRpbWVvdXQoZnVuY3Rpb24oKXtsLnByb2dyZXNzaXZlTGF6eUxvYWQoZSsxKX0sNTAwKToodC5yZW1vdmVBdHRyKCJkYXRhLWxhenkiKS5yZW1vdmVDbGFzcygic2xpY2stbG9hZGluZyIpLmFkZENsYXNzKCJzbGljay1sYXp5bG9hZC1lcnJvciIpLGwuJHNsaWRlci50cmlnZ2VyKCJsYXp5TG9hZEVycm9yIixbbCx0LG9dKSxsLnByb2dyZXNzaXZlTGF6eUxvYWQoKSl9LHIuc3JjPW8pOmwuJHNsaWRlci50cmlnZ2VyKCJhbGxJbWFnZXNMb2FkZWQiLFtsXSl9LGUucHJvdG90eXBlLnJlZnJlc2g9ZnVuY3Rpb24oZSl7dmFyIHQsbyxzPXRoaXM7bz1zLnNsaWRlQ291bnQtcy5vcHRpb25zLnNsaWRlc1RvU2hvdywhcy5vcHRpb25zLmluZmluaXRlJiZzLmN1cnJlbnRTbGlkZT5vJiYocy5jdXJyZW50U2xpZGU9bykscy5zbGlkZUNvdW50PD1zLm9wdGlvbnMuc2xpZGVzVG9TaG93JiYocy5jdXJyZW50U2xpZGU9MCksdD1zLmN1cnJlbnRTbGlkZSxzLmRlc3Ryb3koITApLGkuZXh0ZW5kKHMscy5pbml0aWFscyx7Y3VycmVudFNsaWRlOnR9KSxzLmluaXQoKSxlfHxzLmNoYW5nZVNsaWRlKHtkYXRhOnttZXNzYWdlOiJpbmRleCIsaW5kZXg6dH19LCExKX0sZS5wcm90b3R5cGUucmVnaXN0ZXJCcmVha3BvaW50cz1mdW5jdGlvbigpe3ZhciBlLHQsbyxzPXRoaXMsbj1zLm9wdGlvbnMucmVzcG9uc2l2ZXx8bnVsbDtpZigiYXJyYXkiPT09aS50eXBlKG4pJiZuLmxlbmd0aCl7cy5yZXNwb25kVG89cy5vcHRpb25zLnJlc3BvbmRUb3x8IndpbmRvdyI7Zm9yKGUgaW4gbilpZihvPXMuYnJlYWtwb2ludHMubGVuZ3RoLTEsbi5oYXNPd25Qcm9wZXJ0eShlKSl7Zm9yKHQ9bltlXS5icmVha3BvaW50O28+PTA7KXMuYnJlYWtwb2ludHNbb10mJnMuYnJlYWtwb2ludHNbb109PT10JiZzLmJyZWFrcG9pbnRzLnNwbGljZShvLDEpLG8tLTtzLmJyZWFrcG9pbnRzLnB1c2godCkscy5icmVha3BvaW50U2V0dGluZ3NbdF09bltlXS5zZXR0aW5nc31zLmJyZWFrcG9pbnRzLnNvcnQoZnVuY3Rpb24oaSxlKXtyZXR1cm4gcy5vcHRpb25zLm1vYmlsZUZpcnN0P2ktZTplLWl9KX19LGUucHJvdG90eXBlLnJlaW5pdD1mdW5jdGlvbigpe3ZhciBlPXRoaXM7ZS4kc2xpZGVzPWUuJHNsaWRlVHJhY2suY2hpbGRyZW4oZS5vcHRpb25zLnNsaWRlKS5hZGRDbGFzcygic2xpY2stc2xpZGUiKSxlLnNsaWRlQ291bnQ9ZS4kc2xpZGVzLmxlbmd0aCxlLmN1cnJlbnRTbGlkZT49ZS5zbGlkZUNvdW50JiYwIT09ZS5jdXJyZW50U2xpZGUmJihlLmN1cnJlbnRTbGlkZT1lLmN1cnJlbnRTbGlkZS1lLm9wdGlvbnMuc2xpZGVzVG9TY3JvbGwpLGUuc2xpZGVDb3VudDw9ZS5vcHRpb25zLnNsaWRlc1RvU2hvdyYmKGUuY3VycmVudFNsaWRlPTApLGUucmVnaXN0ZXJCcmVha3BvaW50cygpLGUuc2V0UHJvcHMoKSxlLnNldHVwSW5maW5pdGUoKSxlLmJ1aWxkQXJyb3dzKCksZS51cGRhdGVBcnJvd3MoKSxlLmluaXRBcnJvd0V2ZW50cygpLGUuYnVpbGREb3RzKCksZS51cGRhdGVEb3RzKCksZS5pbml0RG90RXZlbnRzKCksZS5jbGVhblVwU2xpZGVFdmVudHMoKSxlLmluaXRTbGlkZUV2ZW50cygpLGUuY2hlY2tSZXNwb25zaXZlKCExLCEwKSwhMD09PWUub3B0aW9ucy5mb2N1c09uU2VsZWN0JiZpKGUuJHNsaWRlVHJhY2spLmNoaWxkcmVuKCkub24oImNsaWNrLnNsaWNrIixlLnNlbGVjdEhhbmRsZXIpLGUuc2V0U2xpZGVDbGFzc2VzKCJudW1iZXIiPT10eXBlb2YgZS5jdXJyZW50U2xpZGU/ZS5jdXJyZW50U2xpZGU6MCksZS5zZXRQb3NpdGlvbigpLGUuZm9jdXNIYW5kbGVyKCksZS5wYXVzZWQ9IWUub3B0aW9ucy5hdXRvcGxheSxlLmF1dG9QbGF5KCksZS4kc2xpZGVyLnRyaWdnZXIoInJlSW5pdCIsW2VdKX0sZS5wcm90b3R5cGUucmVzaXplPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcztpKHdpbmRvdykud2lkdGgoKSE9PWUud2luZG93V2lkdGgmJihjbGVhclRpbWVvdXQoZS53aW5kb3dEZWxheSksZS53aW5kb3dEZWxheT13aW5kb3cuc2V0VGltZW91dChmdW5jdGlvbigpe2Uud2luZG93V2lkdGg9aSh3aW5kb3cpLndpZHRoKCksZS5jaGVja1Jlc3BvbnNpdmUoKSxlLnVuc2xpY2tlZHx8ZS5zZXRQb3NpdGlvbigpfSw1MCkpfSxlLnByb3RvdHlwZS5yZW1vdmVTbGlkZT1lLnByb3RvdHlwZS5zbGlja1JlbW92ZT1mdW5jdGlvbihpLGUsdCl7dmFyIG89dGhpcztpZihpPSJib29sZWFuIj09dHlwZW9mIGk/ITA9PT0oZT1pKT8wOm8uc2xpZGVDb3VudC0xOiEwPT09ZT8tLWk6aSxvLnNsaWRlQ291bnQ8MXx8aTwwfHxpPm8uc2xpZGVDb3VudC0xKXJldHVybiExO28udW5sb2FkKCksITA9PT10P28uJHNsaWRlVHJhY2suY2hpbGRyZW4oKS5yZW1vdmUoKTpvLiRzbGlkZVRyYWNrLmNoaWxkcmVuKHRoaXMub3B0aW9ucy5zbGlkZSkuZXEoaSkucmVtb3ZlKCksby4kc2xpZGVzPW8uJHNsaWRlVHJhY2suY2hpbGRyZW4odGhpcy5vcHRpb25zLnNsaWRlKSxvLiRzbGlkZVRyYWNrLmNoaWxkcmVuKHRoaXMub3B0aW9ucy5zbGlkZSkuZGV0YWNoKCksby4kc2xpZGVUcmFjay5hcHBlbmQoby4kc2xpZGVzKSxvLiRzbGlkZXNDYWNoZT1vLiRzbGlkZXMsby5yZWluaXQoKX0sZS5wcm90b3R5cGUuc2V0Q1NTPWZ1bmN0aW9uKGkpe3ZhciBlLHQsbz10aGlzLHM9e307ITA9PT1vLm9wdGlvbnMucnRsJiYoaT0taSksZT0ibGVmdCI9PW8ucG9zaXRpb25Qcm9wP01hdGguY2VpbChpKSsicHgiOiIwcHgiLHQ9InRvcCI9PW8ucG9zaXRpb25Qcm9wP01hdGguY2VpbChpKSsicHgiOiIwcHgiLHNbby5wb3NpdGlvblByb3BdPWksITE9PT1vLnRyYW5zZm9ybXNFbmFibGVkP28uJHNsaWRlVHJhY2suY3NzKHMpOihzPXt9LCExPT09by5jc3NUcmFuc2l0aW9ucz8oc1tvLmFuaW1UeXBlXT0idHJhbnNsYXRlKCIrZSsiLCAiK3QrIikiLG8uJHNsaWRlVHJhY2suY3NzKHMpKTooc1tvLmFuaW1UeXBlXT0idHJhbnNsYXRlM2QoIitlKyIsICIrdCsiLCAwcHgpIixvLiRzbGlkZVRyYWNrLmNzcyhzKSkpfSxlLnByb3RvdHlwZS5zZXREaW1lbnNpb25zPWZ1bmN0aW9uKCl7dmFyIGk9dGhpczshMT09PWkub3B0aW9ucy52ZXJ0aWNhbD8hMD09PWkub3B0aW9ucy5jZW50ZXJNb2RlJiZpLiRsaXN0LmNzcyh7cGFkZGluZzoiMHB4ICIraS5vcHRpb25zLmNlbnRlclBhZGRpbmd9KTooaS4kbGlzdC5oZWlnaHQoaS4kc2xpZGVzLmZpcnN0KCkub3V0ZXJIZWlnaHQoITApKmkub3B0aW9ucy5zbGlkZXNUb1Nob3cpLCEwPT09aS5vcHRpb25zLmNlbnRlck1vZGUmJmkuJGxpc3QuY3NzKHtwYWRkaW5nOmkub3B0aW9ucy5jZW50ZXJQYWRkaW5nKyIgMHB4In0pKSxpLmxpc3RXaWR0aD1pLiRsaXN0LndpZHRoKCksaS5saXN0SGVpZ2h0PWkuJGxpc3QuaGVpZ2h0KCksITE9PT1pLm9wdGlvbnMudmVydGljYWwmJiExPT09aS5vcHRpb25zLnZhcmlhYmxlV2lkdGg/KGkuc2xpZGVXaWR0aD1NYXRoLmNlaWwoaS5saXN0V2lkdGgvaS5vcHRpb25zLnNsaWRlc1RvU2hvdyksaS4kc2xpZGVUcmFjay53aWR0aChNYXRoLmNlaWwoaS5zbGlkZVdpZHRoKmkuJHNsaWRlVHJhY2suY2hpbGRyZW4oIi5zbGljay1zbGlkZSIpLmxlbmd0aCkpKTohMD09PWkub3B0aW9ucy52YXJpYWJsZVdpZHRoP2kuJHNsaWRlVHJhY2sud2lkdGgoNWUzKmkuc2xpZGVDb3VudCk6KGkuc2xpZGVXaWR0aD1NYXRoLmNlaWwoaS5saXN0V2lkdGgpLGkuJHNsaWRlVHJhY2suaGVpZ2h0KE1hdGguY2VpbChpLiRzbGlkZXMuZmlyc3QoKS5vdXRlckhlaWdodCghMCkqaS4kc2xpZGVUcmFjay5jaGlsZHJlbigiLnNsaWNrLXNsaWRlIikubGVuZ3RoKSkpO3ZhciBlPWkuJHNsaWRlcy5maXJzdCgpLm91dGVyV2lkdGgoITApLWkuJHNsaWRlcy5maXJzdCgpLndpZHRoKCk7ITE9PT1pLm9wdGlvbnMudmFyaWFibGVXaWR0aCYmaS4kc2xpZGVUcmFjay5jaGlsZHJlbigiLnNsaWNrLXNsaWRlIikud2lkdGgoaS5zbGlkZVdpZHRoLWUpfSxlLnByb3RvdHlwZS5zZXRGYWRlPWZ1bmN0aW9uKCl7dmFyIGUsdD10aGlzO3QuJHNsaWRlcy5lYWNoKGZ1bmN0aW9uKG8scyl7ZT10LnNsaWRlV2lkdGgqbyotMSwhMD09PXQub3B0aW9ucy5ydGw/aShzKS5jc3Moe3Bvc2l0aW9uOiJyZWxhdGl2ZSIscmlnaHQ6ZSx0b3A6MCx6SW5kZXg6dC5vcHRpb25zLnppbmRleCxvcGFjaXR5OjB9KTppKHMpLmNzcyh7cG9zaXRpb246InJlbGF0aXZlIixsZWZ0OmUsdG9wOjAsekluZGV4OnQub3B0aW9ucy56aW5kZXgsb3BhY2l0eTowfSl9KSx0LiRzbGlkZXMuZXEodC5jdXJyZW50U2xpZGUpLmNzcyh7ekluZGV4OnQub3B0aW9ucy56SW5kZXgtMSxvcGFjaXR5OjF9KX0sZS5wcm90b3R5cGUuc2V0SGVpZ2h0PWZ1bmN0aW9uKCl7dmFyIGk9dGhpcztpZigxPT09aS5vcHRpb25zLnNsaWRlc1RvU2hvdyYmITA9PT1pLm9wdGlvbnMuYWRhcHRpdmVIZWlnaHQmJiExPT09aS5vcHRpb25zLnZlcnRpY2FsKXt2YXIgZT1pLiRzbGlkZXMuZXEoaS5jdXJyZW50U2xpZGUpLm91dGVySGVpZ2h0KCEwKTtpLiRsaXN0LmNzcygiaGVpZ2h0IixlKX19LGUucHJvdG90eXBlLnNldE9wdGlvbj1lLnByb3RvdHlwZS5zbGlja1NldE9wdGlvbj1mdW5jdGlvbigpe3ZhciBlLHQsbyxzLG4scj10aGlzLGw9ITE7aWYoIm9iamVjdCI9PT1pLnR5cGUoYXJndW1lbnRzWzBdKT8obz1hcmd1bWVudHNbMF0sbD1hcmd1bWVudHNbMV0sbj0ibXVsdGlwbGUiKToic3RyaW5nIj09PWkudHlwZShhcmd1bWVudHNbMF0pJiYobz1hcmd1bWVudHNbMF0scz1hcmd1bWVudHNbMV0sbD1hcmd1bWVudHNbMl0sInJlc3BvbnNpdmUiPT09YXJndW1lbnRzWzBdJiYiYXJyYXkiPT09aS50eXBlKGFyZ3VtZW50c1sxXSk/bj0icmVzcG9uc2l2ZSI6dm9pZCAwIT09YXJndW1lbnRzWzFdJiYobj0ic2luZ2xlIikpLCJzaW5nbGUiPT09bilyLm9wdGlvbnNbb109cztlbHNlIGlmKCJtdWx0aXBsZSI9PT1uKWkuZWFjaChvLGZ1bmN0aW9uKGksZSl7ci5vcHRpb25zW2ldPWV9KTtlbHNlIGlmKCJyZXNwb25zaXZlIj09PW4pZm9yKHQgaW4gcylpZigiYXJyYXkiIT09aS50eXBlKHIub3B0aW9ucy5yZXNwb25zaXZlKSlyLm9wdGlvbnMucmVzcG9uc2l2ZT1bc1t0XV07ZWxzZXtmb3IoZT1yLm9wdGlvbnMucmVzcG9uc2l2ZS5sZW5ndGgtMTtlPj0wOylyLm9wdGlvbnMucmVzcG9uc2l2ZVtlXS5icmVha3BvaW50PT09c1t0XS5icmVha3BvaW50JiZyLm9wdGlvbnMucmVzcG9uc2l2ZS5zcGxpY2UoZSwxKSxlLS07ci5vcHRpb25zLnJlc3BvbnNpdmUucHVzaChzW3RdKX1sJiYoci51bmxvYWQoKSxyLnJlaW5pdCgpKX0sZS5wcm90b3R5cGUuc2V0UG9zaXRpb249ZnVuY3Rpb24oKXt2YXIgaT10aGlzO2kuc2V0RGltZW5zaW9ucygpLGkuc2V0SGVpZ2h0KCksITE9PT1pLm9wdGlvbnMuZmFkZT9pLnNldENTUyhpLmdldExlZnQoaS5jdXJyZW50U2xpZGUpKTppLnNldEZhZGUoKSxpLiRzbGlkZXIudHJpZ2dlcigic2V0UG9zaXRpb24iLFtpXSl9LGUucHJvdG90eXBlLnNldFByb3BzPWZ1bmN0aW9uKCl7dmFyIGk9dGhpcyxlPWRvY3VtZW50LmJvZHkuc3R5bGU7aS5wb3NpdGlvblByb3A9ITA9PT1pLm9wdGlvbnMudmVydGljYWw/InRvcCI6ImxlZnQiLCJ0b3AiPT09aS5wb3NpdGlvblByb3A/aS4kc2xpZGVyLmFkZENsYXNzKCJzbGljay12ZXJ0aWNhbCIpOmkuJHNsaWRlci5yZW1vdmVDbGFzcygic2xpY2stdmVydGljYWwiKSx2b2lkIDA9PT1lLldlYmtpdFRyYW5zaXRpb24mJnZvaWQgMD09PWUuTW96VHJhbnNpdGlvbiYmdm9pZCAwPT09ZS5tc1RyYW5zaXRpb258fCEwPT09aS5vcHRpb25zLnVzZUNTUyYmKGkuY3NzVHJhbnNpdGlvbnM9ITApLGkub3B0aW9ucy5mYWRlJiYoIm51bWJlciI9PXR5cGVvZiBpLm9wdGlvbnMuekluZGV4P2kub3B0aW9ucy56SW5kZXg8MyYmKGkub3B0aW9ucy56SW5kZXg9Myk6aS5vcHRpb25zLnpJbmRleD1pLmRlZmF1bHRzLnpJbmRleCksdm9pZCAwIT09ZS5PVHJhbnNmb3JtJiYoaS5hbmltVHlwZT0iT1RyYW5zZm9ybSIsaS50cmFuc2Zvcm1UeXBlPSItby10cmFuc2Zvcm0iLGkudHJhbnNpdGlvblR5cGU9Ik9UcmFuc2l0aW9uIix2b2lkIDA9PT1lLnBlcnNwZWN0aXZlUHJvcGVydHkmJnZvaWQgMD09PWUud2Via2l0UGVyc3BlY3RpdmUmJihpLmFuaW1UeXBlPSExKSksdm9pZCAwIT09ZS5Nb3pUcmFuc2Zvcm0mJihpLmFuaW1UeXBlPSJNb3pUcmFuc2Zvcm0iLGkudHJhbnNmb3JtVHlwZT0iLW1vei10cmFuc2Zvcm0iLGkudHJhbnNpdGlvblR5cGU9Ik1velRyYW5zaXRpb24iLHZvaWQgMD09PWUucGVyc3BlY3RpdmVQcm9wZXJ0eSYmdm9pZCAwPT09ZS5Nb3pQZXJzcGVjdGl2ZSYmKGkuYW5pbVR5cGU9ITEpKSx2b2lkIDAhPT1lLndlYmtpdFRyYW5zZm9ybSYmKGkuYW5pbVR5cGU9IndlYmtpdFRyYW5zZm9ybSIsaS50cmFuc2Zvcm1UeXBlPSItd2Via2l0LXRyYW5zZm9ybSIsaS50cmFuc2l0aW9uVHlwZT0id2Via2l0VHJhbnNpdGlvbiIsdm9pZCAwPT09ZS5wZXJzcGVjdGl2ZVByb3BlcnR5JiZ2b2lkIDA9PT1lLndlYmtpdFBlcnNwZWN0aXZlJiYoaS5hbmltVHlwZT0hMSkpLHZvaWQgMCE9PWUubXNUcmFuc2Zvcm0mJihpLmFuaW1UeXBlPSJtc1RyYW5zZm9ybSIsaS50cmFuc2Zvcm1UeXBlPSItbXMtdHJhbnNmb3JtIixpLnRyYW5zaXRpb25UeXBlPSJtc1RyYW5zaXRpb24iLHZvaWQgMD09PWUubXNUcmFuc2Zvcm0mJihpLmFuaW1UeXBlPSExKSksdm9pZCAwIT09ZS50cmFuc2Zvcm0mJiExIT09aS5hbmltVHlwZSYmKGkuYW5pbVR5cGU9InRyYW5zZm9ybSIsaS50cmFuc2Zvcm1UeXBlPSJ0cmFuc2Zvcm0iLGkudHJhbnNpdGlvblR5cGU9InRyYW5zaXRpb24iKSxpLnRyYW5zZm9ybXNFbmFibGVkPWkub3B0aW9ucy51c2VUcmFuc2Zvcm0mJm51bGwhPT1pLmFuaW1UeXBlJiYhMSE9PWkuYW5pbVR5cGV9LGUucHJvdG90eXBlLnNldFNsaWRlQ2xhc3Nlcz1mdW5jdGlvbihpKXt2YXIgZSx0LG8scyxuPXRoaXM7aWYodD1uLiRzbGlkZXIuZmluZCgiLnNsaWNrLXNsaWRlIikucmVtb3ZlQ2xhc3MoInNsaWNrLWFjdGl2ZSBzbGljay1jZW50ZXIgc2xpY2stY3VycmVudCIpLmF0dHIoImFyaWEtaGlkZGVuIiwidHJ1ZSIpLG4uJHNsaWRlcy5lcShpKS5hZGRDbGFzcygic2xpY2stY3VycmVudCIpLCEwPT09bi5vcHRpb25zLmNlbnRlck1vZGUpe3ZhciByPW4ub3B0aW9ucy5zbGlkZXNUb1Nob3clMj09MD8xOjA7ZT1NYXRoLmZsb29yKG4ub3B0aW9ucy5zbGlkZXNUb1Nob3cvMiksITA9PT1uLm9wdGlvbnMuaW5maW5pdGUmJihpPj1lJiZpPD1uLnNsaWRlQ291bnQtMS1lP24uJHNsaWRlcy5zbGljZShpLWUrcixpK2UrMSkuYWRkQ2xhc3MoInNsaWNrLWFjdGl2ZSIpLmF0dHIoImFyaWEtaGlkZGVuIiwiZmFsc2UiKToobz1uLm9wdGlvbnMuc2xpZGVzVG9TaG93K2ksdC5zbGljZShvLWUrMStyLG8rZSsyKS5hZGRDbGFzcygic2xpY2stYWN0aXZlIikuYXR0cigiYXJpYS1oaWRkZW4iLCJmYWxzZSIpKSwwPT09aT90LmVxKHQubGVuZ3RoLTEtbi5vcHRpb25zLnNsaWRlc1RvU2hvdykuYWRkQ2xhc3MoInNsaWNrLWNlbnRlciIpOmk9PT1uLnNsaWRlQ291bnQtMSYmdC5lcShuLm9wdGlvbnMuc2xpZGVzVG9TaG93KS5hZGRDbGFzcygic2xpY2stY2VudGVyIikpLG4uJHNsaWRlcy5lcShpKS5hZGRDbGFzcygic2xpY2stY2VudGVyIil9ZWxzZSBpPj0wJiZpPD1uLnNsaWRlQ291bnQtbi5vcHRpb25zLnNsaWRlc1RvU2hvdz9uLiRzbGlkZXMuc2xpY2UoaSxpK24ub3B0aW9ucy5zbGlkZXNUb1Nob3cpLmFkZENsYXNzKCJzbGljay1hY3RpdmUiKS5hdHRyKCJhcmlhLWhpZGRlbiIsImZhbHNlIik6dC5sZW5ndGg8PW4ub3B0aW9ucy5zbGlkZXNUb1Nob3c/dC5hZGRDbGFzcygic2xpY2stYWN0aXZlIikuYXR0cigiYXJpYS1oaWRkZW4iLCJmYWxzZSIpOihzPW4uc2xpZGVDb3VudCVuLm9wdGlvbnMuc2xpZGVzVG9TaG93LG89ITA9PT1uLm9wdGlvbnMuaW5maW5pdGU/bi5vcHRpb25zLnNsaWRlc1RvU2hvdytpOmksbi5vcHRpb25zLnNsaWRlc1RvU2hvdz09bi5vcHRpb25zLnNsaWRlc1RvU2Nyb2xsJiZuLnNsaWRlQ291bnQtaTxuLm9wdGlvbnMuc2xpZGVzVG9TaG93P3Quc2xpY2Uoby0obi5vcHRpb25zLnNsaWRlc1RvU2hvdy1zKSxvK3MpLmFkZENsYXNzKCJzbGljay1hY3RpdmUiKS5hdHRyKCJhcmlhLWhpZGRlbiIsImZhbHNlIik6dC5zbGljZShvLG8rbi5vcHRpb25zLnNsaWRlc1RvU2hvdykuYWRkQ2xhc3MoInNsaWNrLWFjdGl2ZSIpLmF0dHIoImFyaWEtaGlkZGVuIiwiZmFsc2UiKSk7Im9uZGVtYW5kIiE9PW4ub3B0aW9ucy5sYXp5TG9hZCYmImFudGljaXBhdGVkIiE9PW4ub3B0aW9ucy5sYXp5TG9hZHx8bi5sYXp5TG9hZCgpfSxlLnByb3RvdHlwZS5zZXR1cEluZmluaXRlPWZ1bmN0aW9uKCl7dmFyIGUsdCxvLHM9dGhpcztpZighMD09PXMub3B0aW9ucy5mYWRlJiYocy5vcHRpb25zLmNlbnRlck1vZGU9ITEpLCEwPT09cy5vcHRpb25zLmluZmluaXRlJiYhMT09PXMub3B0aW9ucy5mYWRlJiYodD1udWxsLHMuc2xpZGVDb3VudD5zLm9wdGlvbnMuc2xpZGVzVG9TaG93KSl7Zm9yKG89ITA9PT1zLm9wdGlvbnMuY2VudGVyTW9kZT9zLm9wdGlvbnMuc2xpZGVzVG9TaG93KzE6cy5vcHRpb25zLnNsaWRlc1RvU2hvdyxlPXMuc2xpZGVDb3VudDtlPnMuc2xpZGVDb3VudC1vO2UtPTEpdD1lLTEsaShzLiRzbGlkZXNbdF0pLmNsb25lKCEwKS5hdHRyKCJpZCIsIiIpLmF0dHIoImRhdGEtc2xpY2staW5kZXgiLHQtcy5zbGlkZUNvdW50KS5wcmVwZW5kVG8ocy4kc2xpZGVUcmFjaykuYWRkQ2xhc3MoInNsaWNrLWNsb25lZCIpO2ZvcihlPTA7ZTxvK3Muc2xpZGVDb3VudDtlKz0xKXQ9ZSxpKHMuJHNsaWRlc1t0XSkuY2xvbmUoITApLmF0dHIoImlkIiwiIikuYXR0cigiZGF0YS1zbGljay1pbmRleCIsdCtzLnNsaWRlQ291bnQpLmFwcGVuZFRvKHMuJHNsaWRlVHJhY2spLmFkZENsYXNzKCJzbGljay1jbG9uZWQiKTtzLiRzbGlkZVRyYWNrLmZpbmQoIi5zbGljay1jbG9uZWQiKS5maW5kKCJbaWRdIikuZWFjaChmdW5jdGlvbigpe2kodGhpcykuYXR0cigiaWQiLCIiKX0pfX0sZS5wcm90b3R5cGUuaW50ZXJydXB0PWZ1bmN0aW9uKGkpe3ZhciBlPXRoaXM7aXx8ZS5hdXRvUGxheSgpLGUuaW50ZXJydXB0ZWQ9aX0sZS5wcm90b3R5cGUuc2VsZWN0SGFuZGxlcj1mdW5jdGlvbihlKXt2YXIgdD10aGlzLG89aShlLnRhcmdldCkuaXMoIi5zbGljay1zbGlkZSIpP2koZS50YXJnZXQpOmkoZS50YXJnZXQpLnBhcmVudHMoIi5zbGljay1zbGlkZSIpLHM9cGFyc2VJbnQoby5hdHRyKCJkYXRhLXNsaWNrLWluZGV4IikpO3N8fChzPTApLHQuc2xpZGVDb3VudDw9dC5vcHRpb25zLnNsaWRlc1RvU2hvdz90LnNsaWRlSGFuZGxlcihzLCExLCEwKTp0LnNsaWRlSGFuZGxlcihzKX0sZS5wcm90b3R5cGUuc2xpZGVIYW5kbGVyPWZ1bmN0aW9uKGksZSx0KXt2YXIgbyxzLG4scixsLGQ9bnVsbCxhPXRoaXM7aWYoZT1lfHwhMSwhKCEwPT09YS5hbmltYXRpbmcmJiEwPT09YS5vcHRpb25zLndhaXRGb3JBbmltYXRlfHwhMD09PWEub3B0aW9ucy5mYWRlJiZhLmN1cnJlbnRTbGlkZT09PWkpKWlmKCExPT09ZSYmYS5hc05hdkZvcihpKSxvPWksZD1hLmdldExlZnQobykscj1hLmdldExlZnQoYS5jdXJyZW50U2xpZGUpLGEuY3VycmVudExlZnQ9bnVsbD09PWEuc3dpcGVMZWZ0P3I6YS5zd2lwZUxlZnQsITE9PT1hLm9wdGlvbnMuaW5maW5pdGUmJiExPT09YS5vcHRpb25zLmNlbnRlck1vZGUmJihpPDB8fGk+YS5nZXREb3RDb3VudCgpKmEub3B0aW9ucy5zbGlkZXNUb1Njcm9sbCkpITE9PT1hLm9wdGlvbnMuZmFkZSYmKG89YS5jdXJyZW50U2xpZGUsITAhPT10P2EuYW5pbWF0ZVNsaWRlKHIsZnVuY3Rpb24oKXthLnBvc3RTbGlkZShvKX0pOmEucG9zdFNsaWRlKG8pKTtlbHNlIGlmKCExPT09YS5vcHRpb25zLmluZmluaXRlJiYhMD09PWEub3B0aW9ucy5jZW50ZXJNb2RlJiYoaTwwfHxpPmEuc2xpZGVDb3VudC1hLm9wdGlvbnMuc2xpZGVzVG9TY3JvbGwpKSExPT09YS5vcHRpb25zLmZhZGUmJihvPWEuY3VycmVudFNsaWRlLCEwIT09dD9hLmFuaW1hdGVTbGlkZShyLGZ1bmN0aW9uKCl7YS5wb3N0U2xpZGUobyl9KTphLnBvc3RTbGlkZShvKSk7ZWxzZXtpZihhLm9wdGlvbnMuYXV0b3BsYXkmJmNsZWFySW50ZXJ2YWwoYS5hdXRvUGxheVRpbWVyKSxzPW88MD9hLnNsaWRlQ291bnQlYS5vcHRpb25zLnNsaWRlc1RvU2Nyb2xsIT0wP2Euc2xpZGVDb3VudC1hLnNsaWRlQ291bnQlYS5vcHRpb25zLnNsaWRlc1RvU2Nyb2xsOmEuc2xpZGVDb3VudCtvOm8+PWEuc2xpZGVDb3VudD9hLnNsaWRlQ291bnQlYS5vcHRpb25zLnNsaWRlc1RvU2Nyb2xsIT0wPzA6by1hLnNsaWRlQ291bnQ6byxhLmFuaW1hdGluZz0hMCxhLiRzbGlkZXIudHJpZ2dlcigiYmVmb3JlQ2hhbmdlIixbYSxhLmN1cnJlbnRTbGlkZSxzXSksbj1hLmN1cnJlbnRTbGlkZSxhLmN1cnJlbnRTbGlkZT1zLGEuc2V0U2xpZGVDbGFzc2VzKGEuY3VycmVudFNsaWRlKSxhLm9wdGlvbnMuYXNOYXZGb3ImJihsPShsPWEuZ2V0TmF2VGFyZ2V0KCkpLnNsaWNrKCJnZXRTbGljayIpKS5zbGlkZUNvdW50PD1sLm9wdGlvbnMuc2xpZGVzVG9TaG93JiZsLnNldFNsaWRlQ2xhc3NlcyhhLmN1cnJlbnRTbGlkZSksYS51cGRhdGVEb3RzKCksYS51cGRhdGVBcnJvd3MoKSwhMD09PWEub3B0aW9ucy5mYWRlKXJldHVybiEwIT09dD8oYS5mYWRlU2xpZGVPdXQobiksYS5mYWRlU2xpZGUocyxmdW5jdGlvbigpe2EucG9zdFNsaWRlKHMpfSkpOmEucG9zdFNsaWRlKHMpLHZvaWQgYS5hbmltYXRlSGVpZ2h0KCk7ITAhPT10P2EuYW5pbWF0ZVNsaWRlKGQsZnVuY3Rpb24oKXthLnBvc3RTbGlkZShzKX0pOmEucG9zdFNsaWRlKHMpfX0sZS5wcm90b3R5cGUuc3RhcnRMb2FkPWZ1bmN0aW9uKCl7dmFyIGk9dGhpczshMD09PWkub3B0aW9ucy5hcnJvd3MmJmkuc2xpZGVDb3VudD5pLm9wdGlvbnMuc2xpZGVzVG9TaG93JiYoaS4kcHJldkFycm93LmhpZGUoKSxpLiRuZXh0QXJyb3cuaGlkZSgpKSwhMD09PWkub3B0aW9ucy5kb3RzJiZpLnNsaWRlQ291bnQ+aS5vcHRpb25zLnNsaWRlc1RvU2hvdyYmaS4kZG90cy5oaWRlKCksaS4kc2xpZGVyLmFkZENsYXNzKCJzbGljay1sb2FkaW5nIil9LGUucHJvdG90eXBlLnN3aXBlRGlyZWN0aW9uPWZ1bmN0aW9uKCl7dmFyIGksZSx0LG8scz10aGlzO3JldHVybiBpPXMudG91Y2hPYmplY3Quc3RhcnRYLXMudG91Y2hPYmplY3QuY3VyWCxlPXMudG91Y2hPYmplY3Quc3RhcnRZLXMudG91Y2hPYmplY3QuY3VyWSx0PU1hdGguYXRhbjIoZSxpKSwobz1NYXRoLnJvdW5kKDE4MCp0L01hdGguUEkpKTwwJiYobz0zNjAtTWF0aC5hYnMobykpLG88PTQ1JiZvPj0wPyExPT09cy5vcHRpb25zLnJ0bD8ibGVmdCI6InJpZ2h0IjpvPD0zNjAmJm8+PTMxNT8hMT09PXMub3B0aW9ucy5ydGw/ImxlZnQiOiJyaWdodCI6bz49MTM1JiZvPD0yMjU/ITE9PT1zLm9wdGlvbnMucnRsPyJyaWdodCI6ImxlZnQiOiEwPT09cy5vcHRpb25zLnZlcnRpY2FsU3dpcGluZz9vPj0zNSYmbzw9MTM1PyJkb3duIjoidXAiOiJ2ZXJ0aWNhbCJ9LGUucHJvdG90eXBlLnN3aXBlRW5kPWZ1bmN0aW9uKGkpe3ZhciBlLHQsbz10aGlzO2lmKG8uZHJhZ2dpbmc9ITEsby5zd2lwaW5nPSExLG8uc2Nyb2xsaW5nKXJldHVybiBvLnNjcm9sbGluZz0hMSwhMTtpZihvLmludGVycnVwdGVkPSExLG8uc2hvdWxkQ2xpY2s9IShvLnRvdWNoT2JqZWN0LnN3aXBlTGVuZ3RoPjEwKSx2b2lkIDA9PT1vLnRvdWNoT2JqZWN0LmN1clgpcmV0dXJuITE7aWYoITA9PT1vLnRvdWNoT2JqZWN0LmVkZ2VIaXQmJm8uJHNsaWRlci50cmlnZ2VyKCJlZGdlIixbbyxvLnN3aXBlRGlyZWN0aW9uKCldKSxvLnRvdWNoT2JqZWN0LnN3aXBlTGVuZ3RoPj1vLnRvdWNoT2JqZWN0Lm1pblN3aXBlKXtzd2l0Y2godD1vLnN3aXBlRGlyZWN0aW9uKCkpe2Nhc2UibGVmdCI6Y2FzZSJkb3duIjplPW8ub3B0aW9ucy5zd2lwZVRvU2xpZGU/by5jaGVja05hdmlnYWJsZShvLmN1cnJlbnRTbGlkZStvLmdldFNsaWRlQ291bnQoKSk6by5jdXJyZW50U2xpZGUrby5nZXRTbGlkZUNvdW50KCksby5jdXJyZW50RGlyZWN0aW9uPTA7YnJlYWs7Y2FzZSJyaWdodCI6Y2FzZSJ1cCI6ZT1vLm9wdGlvbnMuc3dpcGVUb1NsaWRlP28uY2hlY2tOYXZpZ2FibGUoby5jdXJyZW50U2xpZGUtby5nZXRTbGlkZUNvdW50KCkpOm8uY3VycmVudFNsaWRlLW8uZ2V0U2xpZGVDb3VudCgpLG8uY3VycmVudERpcmVjdGlvbj0xfSJ2ZXJ0aWNhbCIhPXQmJihvLnNsaWRlSGFuZGxlcihlKSxvLnRvdWNoT2JqZWN0PXt9LG8uJHNsaWRlci50cmlnZ2VyKCJzd2lwZSIsW28sdF0pKX1lbHNlIG8udG91Y2hPYmplY3Quc3RhcnRYIT09by50b3VjaE9iamVjdC5jdXJYJiYoby5zbGlkZUhhbmRsZXIoby5jdXJyZW50U2xpZGUpLG8udG91Y2hPYmplY3Q9e30pfSxlLnByb3RvdHlwZS5zd2lwZUhhbmRsZXI9ZnVuY3Rpb24oaSl7dmFyIGU9dGhpcztpZighKCExPT09ZS5vcHRpb25zLnN3aXBlfHwib250b3VjaGVuZCJpbiBkb2N1bWVudCYmITE9PT1lLm9wdGlvbnMuc3dpcGV8fCExPT09ZS5vcHRpb25zLmRyYWdnYWJsZSYmLTEhPT1pLnR5cGUuaW5kZXhPZigibW91c2UiKSkpc3dpdGNoKGUudG91Y2hPYmplY3QuZmluZ2VyQ291bnQ9aS5vcmlnaW5hbEV2ZW50JiZ2b2lkIDAhPT1pLm9yaWdpbmFsRXZlbnQudG91Y2hlcz9pLm9yaWdpbmFsRXZlbnQudG91Y2hlcy5sZW5ndGg6MSxlLnRvdWNoT2JqZWN0Lm1pblN3aXBlPWUubGlzdFdpZHRoL2Uub3B0aW9ucy50b3VjaFRocmVzaG9sZCwhMD09PWUub3B0aW9ucy52ZXJ0aWNhbFN3aXBpbmcmJihlLnRvdWNoT2JqZWN0Lm1pblN3aXBlPWUubGlzdEhlaWdodC9lLm9wdGlvbnMudG91Y2hUaHJlc2hvbGQpLGkuZGF0YS5hY3Rpb24pe2Nhc2Uic3RhcnQiOmUuc3dpcGVTdGFydChpKTticmVhaztjYXNlIm1vdmUiOmUuc3dpcGVNb3ZlKGkpO2JyZWFrO2Nhc2UiZW5kIjplLnN3aXBlRW5kKGkpfX0sZS5wcm90b3R5cGUuc3dpcGVNb3ZlPWZ1bmN0aW9uKGkpe3ZhciBlLHQsbyxzLG4scixsPXRoaXM7cmV0dXJuIG49dm9pZCAwIT09aS5vcmlnaW5hbEV2ZW50P2kub3JpZ2luYWxFdmVudC50b3VjaGVzOm51bGwsISghbC5kcmFnZ2luZ3x8bC5zY3JvbGxpbmd8fG4mJjEhPT1uLmxlbmd0aCkmJihlPWwuZ2V0TGVmdChsLmN1cnJlbnRTbGlkZSksbC50b3VjaE9iamVjdC5jdXJYPXZvaWQgMCE9PW4/blswXS5wYWdlWDppLmNsaWVudFgsbC50b3VjaE9iamVjdC5jdXJZPXZvaWQgMCE9PW4/blswXS5wYWdlWTppLmNsaWVudFksbC50b3VjaE9iamVjdC5zd2lwZUxlbmd0aD1NYXRoLnJvdW5kKE1hdGguc3FydChNYXRoLnBvdyhsLnRvdWNoT2JqZWN0LmN1clgtbC50b3VjaE9iamVjdC5zdGFydFgsMikpKSxyPU1hdGgucm91bmQoTWF0aC5zcXJ0KE1hdGgucG93KGwudG91Y2hPYmplY3QuY3VyWS1sLnRvdWNoT2JqZWN0LnN0YXJ0WSwyKSkpLCFsLm9wdGlvbnMudmVydGljYWxTd2lwaW5nJiYhbC5zd2lwaW5nJiZyPjQ/KGwuc2Nyb2xsaW5nPSEwLCExKTooITA9PT1sLm9wdGlvbnMudmVydGljYWxTd2lwaW5nJiYobC50b3VjaE9iamVjdC5zd2lwZUxlbmd0aD1yKSx0PWwuc3dpcGVEaXJlY3Rpb24oKSx2b2lkIDAhPT1pLm9yaWdpbmFsRXZlbnQmJmwudG91Y2hPYmplY3Quc3dpcGVMZW5ndGg+NCYmKGwuc3dpcGluZz0hMCxpLnByZXZlbnREZWZhdWx0KCkpLHM9KCExPT09bC5vcHRpb25zLnJ0bD8xOi0xKSoobC50b3VjaE9iamVjdC5jdXJYPmwudG91Y2hPYmplY3Quc3RhcnRYPzE6LTEpLCEwPT09bC5vcHRpb25zLnZlcnRpY2FsU3dpcGluZyYmKHM9bC50b3VjaE9iamVjdC5jdXJZPmwudG91Y2hPYmplY3Quc3RhcnRZPzE6LTEpLG89bC50b3VjaE9iamVjdC5zd2lwZUxlbmd0aCxsLnRvdWNoT2JqZWN0LmVkZ2VIaXQ9ITEsITE9PT1sLm9wdGlvbnMuaW5maW5pdGUmJigwPT09bC5jdXJyZW50U2xpZGUmJiJyaWdodCI9PT10fHxsLmN1cnJlbnRTbGlkZT49bC5nZXREb3RDb3VudCgpJiYibGVmdCI9PT10KSYmKG89bC50b3VjaE9iamVjdC5zd2lwZUxlbmd0aCpsLm9wdGlvbnMuZWRnZUZyaWN0aW9uLGwudG91Y2hPYmplY3QuZWRnZUhpdD0hMCksITE9PT1sLm9wdGlvbnMudmVydGljYWw/bC5zd2lwZUxlZnQ9ZStvKnM6bC5zd2lwZUxlZnQ9ZStvKihsLiRsaXN0LmhlaWdodCgpL2wubGlzdFdpZHRoKSpzLCEwPT09bC5vcHRpb25zLnZlcnRpY2FsU3dpcGluZyYmKGwuc3dpcGVMZWZ0PWUrbypzKSwhMCE9PWwub3B0aW9ucy5mYWRlJiYhMSE9PWwub3B0aW9ucy50b3VjaE1vdmUmJighMD09PWwuYW5pbWF0aW5nPyhsLnN3aXBlTGVmdD1udWxsLCExKTp2b2lkIGwuc2V0Q1NTKGwuc3dpcGVMZWZ0KSkpKX0sZS5wcm90b3R5cGUuc3dpcGVTdGFydD1mdW5jdGlvbihpKXt2YXIgZSx0PXRoaXM7aWYodC5pbnRlcnJ1cHRlZD0hMCwxIT09dC50b3VjaE9iamVjdC5maW5nZXJDb3VudHx8dC5zbGlkZUNvdW50PD10Lm9wdGlvbnMuc2xpZGVzVG9TaG93KXJldHVybiB0LnRvdWNoT2JqZWN0PXt9LCExO3ZvaWQgMCE9PWkub3JpZ2luYWxFdmVudCYmdm9pZCAwIT09aS5vcmlnaW5hbEV2ZW50LnRvdWNoZXMmJihlPWkub3JpZ2luYWxFdmVudC50b3VjaGVzWzBdKSx0LnRvdWNoT2JqZWN0LnN0YXJ0WD10LnRvdWNoT2JqZWN0LmN1clg9dm9pZCAwIT09ZT9lLnBhZ2VYOmkuY2xpZW50WCx0LnRvdWNoT2JqZWN0LnN0YXJ0WT10LnRvdWNoT2JqZWN0LmN1clk9dm9pZCAwIT09ZT9lLnBhZ2VZOmkuY2xpZW50WSx0LmRyYWdnaW5nPSEwfSxlLnByb3RvdHlwZS51bmZpbHRlclNsaWRlcz1lLnByb3RvdHlwZS5zbGlja1VuZmlsdGVyPWZ1bmN0aW9uKCl7dmFyIGk9dGhpcztudWxsIT09aS4kc2xpZGVzQ2FjaGUmJihpLnVubG9hZCgpLGkuJHNsaWRlVHJhY2suY2hpbGRyZW4odGhpcy5vcHRpb25zLnNsaWRlKS5kZXRhY2goKSxpLiRzbGlkZXNDYWNoZS5hcHBlbmRUbyhpLiRzbGlkZVRyYWNrKSxpLnJlaW5pdCgpKX0sZS5wcm90b3R5cGUudW5sb2FkPWZ1bmN0aW9uKCl7dmFyIGU9dGhpcztpKCIuc2xpY2stY2xvbmVkIixlLiRzbGlkZXIpLnJlbW92ZSgpLGUuJGRvdHMmJmUuJGRvdHMucmVtb3ZlKCksZS4kcHJldkFycm93JiZlLmh0bWxFeHByLnRlc3QoZS5vcHRpb25zLnByZXZBcnJvdykmJmUuJHByZXZBcnJvdy5yZW1vdmUoKSxlLiRuZXh0QXJyb3cmJmUuaHRtbEV4cHIudGVzdChlLm9wdGlvbnMubmV4dEFycm93KSYmZS4kbmV4dEFycm93LnJlbW92ZSgpLGUuJHNsaWRlcy5yZW1vdmVDbGFzcygic2xpY2stc2xpZGUgc2xpY2stYWN0aXZlIHNsaWNrLXZpc2libGUgc2xpY2stY3VycmVudCIpLmF0dHIoImFyaWEtaGlkZGVuIiwidHJ1ZSIpLmNzcygid2lkdGgiLCIiKX0sZS5wcm90b3R5cGUudW5zbGljaz1mdW5jdGlvbihpKXt2YXIgZT10aGlzO2UuJHNsaWRlci50cmlnZ2VyKCJ1bnNsaWNrIixbZSxpXSksZS5kZXN0cm95KCl9LGUucHJvdG90eXBlLnVwZGF0ZUFycm93cz1mdW5jdGlvbigpe3ZhciBpPXRoaXM7TWF0aC5mbG9vcihpLm9wdGlvbnMuc2xpZGVzVG9TaG93LzIpLCEwPT09aS5vcHRpb25zLmFycm93cyYmaS5zbGlkZUNvdW50Pmkub3B0aW9ucy5zbGlkZXNUb1Nob3cmJiFpLm9wdGlvbnMuaW5maW5pdGUmJihpLiRwcmV2QXJyb3cucmVtb3ZlQ2xhc3MoInNsaWNrLWRpc2FibGVkIikuYXR0cigiYXJpYS1kaXNhYmxlZCIsImZhbHNlIiksaS4kbmV4dEFycm93LnJlbW92ZUNsYXNzKCJzbGljay1kaXNhYmxlZCIpLmF0dHIoImFyaWEtZGlzYWJsZWQiLCJmYWxzZSIpLDA9PT1pLmN1cnJlbnRTbGlkZT8oaS4kcHJldkFycm93LmFkZENsYXNzKCJzbGljay1kaXNhYmxlZCIpLmF0dHIoImFyaWEtZGlzYWJsZWQiLCJ0cnVlIiksaS4kbmV4dEFycm93LnJlbW92ZUNsYXNzKCJzbGljay1kaXNhYmxlZCIpLmF0dHIoImFyaWEtZGlzYWJsZWQiLCJmYWxzZSIpKTppLmN1cnJlbnRTbGlkZT49aS5zbGlkZUNvdW50LWkub3B0aW9ucy5zbGlkZXNUb1Nob3cmJiExPT09aS5vcHRpb25zLmNlbnRlck1vZGU/KGkuJG5leHRBcnJvdy5hZGRDbGFzcygic2xpY2stZGlzYWJsZWQiKS5hdHRyKCJhcmlhLWRpc2FibGVkIiwidHJ1ZSIpLGkuJHByZXZBcnJvdy5yZW1vdmVDbGFzcygic2xpY2stZGlzYWJsZWQiKS5hdHRyKCJhcmlhLWRpc2FibGVkIiwiZmFsc2UiKSk6aS5jdXJyZW50U2xpZGU+PWkuc2xpZGVDb3VudC0xJiYhMD09PWkub3B0aW9ucy5jZW50ZXJNb2RlJiYoaS4kbmV4dEFycm93LmFkZENsYXNzKCJzbGljay1kaXNhYmxlZCIpLmF0dHIoImFyaWEtZGlzYWJsZWQiLCJ0cnVlIiksaS4kcHJldkFycm93LnJlbW92ZUNsYXNzKCJzbGljay1kaXNhYmxlZCIpLmF0dHIoImFyaWEtZGlzYWJsZWQiLCJmYWxzZSIpKSl9LGUucHJvdG90eXBlLnVwZGF0ZURvdHM9ZnVuY3Rpb24oKXt2YXIgaT10aGlzO251bGwhPT1pLiRkb3RzJiYoaS4kZG90cy5maW5kKCJsaSIpLnJlbW92ZUNsYXNzKCJzbGljay1hY3RpdmUiKS5lbmQoKSxpLiRkb3RzLmZpbmQoImxpIikuZXEoTWF0aC5mbG9vcihpLmN1cnJlbnRTbGlkZS9pLm9wdGlvbnMuc2xpZGVzVG9TY3JvbGwpKS5hZGRDbGFzcygic2xpY2stYWN0aXZlIikpfSxlLnByb3RvdHlwZS52aXNpYmlsaXR5PWZ1bmN0aW9uKCl7dmFyIGk9dGhpcztpLm9wdGlvbnMuYXV0b3BsYXkmJihkb2N1bWVudFtpLmhpZGRlbl0/aS5pbnRlcnJ1cHRlZD0hMDppLmludGVycnVwdGVkPSExKX0saS5mbi5zbGljaz1mdW5jdGlvbigpe3ZhciBpLHQsbz10aGlzLHM9YXJndW1lbnRzWzBdLG49QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDEpLHI9by5sZW5ndGg7Zm9yKGk9MDtpPHI7aSsrKWlmKCJvYmplY3QiPT10eXBlb2Ygc3x8dm9pZCAwPT09cz9vW2ldLnNsaWNrPW5ldyBlKG9baV0scyk6dD1vW2ldLnNsaWNrW3NdLmFwcGx5KG9baV0uc2xpY2ssbiksdm9pZCAwIT09dClyZXR1cm4gdDtyZXR1cm4gb319KTsK"}},"time_used":349,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":349,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/12181.b65a58355ff7cc34950f.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.370Z","timestamp":1785126257370,"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-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/12181.b65a58355ff7cc34950f.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/crypto-mkt-screener/?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 04:24:17 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: \"6a44af20-21c82\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Wed, 01 Jul 2026 06:09:36 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: 07/01/2026 11:40:37\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: f979d729e725128e9730ceaf731d805e\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":138370,"size_decoded":18187,"mime_type":"application/javascript; charset=utf-8","magic":"ASCII text, with very long lines (3070)","md5":"90cd4a18a60bc908d0840ba4fec27dc6","sha1":"bb5de7eba54b0d9323f872960612df642a27716e","sha256":"ae043b44480c283e0e50b84e353fe3e98e560fb8f9bd14638f61a5dfadc231ba","sha512":"1ff83bc8bcac42839140d927da7b753dc51b3ab887327bf07fef3ca3b194425621ed7376ef404517f818a80b9f3d96955fd5c9239c1dc05e599503f7118edc99","ssdeep":"1536:U4ecrc2hMNlbPWqfxN+fUE44ld4e44IJmuJY7+fHfvWr05KNyhLcSbWd4+o:4CxdswjaWyn","tlshash":"10d345b217f406f473b80d5293f77e591b3c74a359882c52d2a4d9a0dd40fc2a96ba3e","first_seen":"2026-07-01T19:46:28.364877Z","last_seen":"2026-07-27T07:05:43.382219Z","times_seen":910,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1sxMjE4MV0sezcxMjE4MShlKXtlLmV4cG9ydHMudHpEYXRhPXsiQWZyaWNhL0NhaXJvIjp7dGltZTpbLTIxODU0MDE2MDAsLTkyOTgzNjgwMCwtOTIzMDk3NjAwLC05MDYxNjMyMDAsLTg5Mjg1NzYwMCwtODc1ODM2ODAwLC04NTc3NzkyMDAsLTg0NDMwMDgwMCwtODI1ODExMjAwLC04MTI2Nzg0MDAsLTc5NDE4ODgwMCwtNzc5ODQ2NDAwLC03NjI2NTI4MDAsLTM5OTA4MTYwMCwtMzg2NjRlNCwtMzY4MzIzMjAwLC0zNTUxMDRlMywtMzM2NzgzNjAwLC0zMjM2NDM2MDAsLTMwNTE2MTIwMCwtMjkyMDIxMjAwLC0yNzM2MjUyMDAsLTI2MDQ4NTIwMCwtMjQyMDg5MjAwLC0yMjg5NDkyMDAsLTIxMDU1MzIwMCwtMTk3NDEzMjAwLC0xNzg5MzA4MDAsLTE2NTc5MDgwMCwtMTQ3Mzk0ODAwLC0xMzQyNTQ4MDAsLTExNTg1ODgwMCwtMTAyNjMyNDAwLC04NDMyMjgwMCwtNzEwOTY0MDAsLTUyNzAwNDAwLC0zOTQ3NGUzLC0yMTE2NDQwMCwtNzkzOGUzLDEwMzcxNjAwLDIzNTk4ZTMsNDE5MDc2MDAsNTUxMzRlMyw3MzUzZTQsODY3NTY0MDAsMTA1MDY2ZTMsMTE4MjkyNDAwLDEzNjYwMmUzLDE0OTgyODQwMCwxNjgxMzhlMywxODEzNjQ0MDAsMTk5NzYwNDAwLDIxMjk4NjgwMCwyMzEyOTY0MDAsMjQ0NTIyODAwLDI2MjgzMjQwMCwyNzYwNTg4MDAsMjk0MzY4NDAwLDMwNzU5NDgwMCwzMjU5OTA4MDAsMzM5MjE3MjAwLDM1NzUyNjgwMCwzNzA3NTMyMDAsMzk2NDA2ODAwLDQwMjI4OTIwMCw0MjY4MTk2MDAsNDMzODI1MjAwLDQ1MjIyMTIwMCw0NjU0NDc2MDAsNDgzNzU3MjAwLDQ5Njk4MzYwMCw1MTUyOTMyMDAsNTI4NTE5NjAwLDU0NjgyOTIwMCw1NjAwNTU2MDAsNTc4NDUxNjAwLDU5MTY3OGUzLDYxMDQxOTYwMCw2MjMyMTRlMyw2NDE1MjM2MDAsNjU0NzVlNCw2NzMwNTk2MDAsNjg2Mjg2ZTMsNzA0NjgyZTMsNzE3OTA4NDAwLDczNjIxOGUzLDc0OTQ0NDQwMCw3Njc3NTRlMyw3ODA5ODA0MDAsNzk5MDI3MjAwLDgxMjMzMjgwMCw4MzA0NzY4MDAsODQzNzgyNDAwLDg2MTkyNjQwMCw4NzUyMzJlMyw4OTMzNzZlMyw5MDY2ODE2MDAsOTI1NDMwNDAwLDkzODczNmUzLDk1Njg4ZTQsOTcwMTg1NjAwLDk4ODMyOTYwMCwxMDAxNjM1MjAwLDEwMTk3NzkyMDAsMTAzMzA4NDgwMCwxMDUxMjI4ODAwLDEwNjQ1MzQ0MDAsMTA4MzI4MzIwMCwxMDk2NTg4ODAwLDExMTQ3MzI4MDAsMTEyODAzODQwMCwxMTQ2MTgyNDAwLDExNTg4ODMyMDAsMTE3NzYzMmUzLDExODkxMjMyMDAsMTIwOTA4MTYwMCwxMjE5OTY4ZTMsMTI0MDUzMTIwMCwxMjUwODEyODAwLDEyNzI1ODU2MDAsMTI4MTQ4NDgwMCwxMjg0MDc2ODAwLDEyODU4OTEyMDAsMTQwMDE5ODQwMCwxNDAzODI3MjAwLDE0MDY4NTEyMDAsMTQxMTY4OTYwMCwxNjgyNjRlNCwxNjk4MzY0ODAwLDE3MTQwODk2MDAsMTczMDQxOTIwMCwxNzQ1NTM5MjAwLDE3NjE4Njg4MDAsMTc3Njk4ODgwMCwxNzkzMzE4NDAwLDE4MDkwNDMyMDAsMTgyNDc2OGUzLDE4NDA0OTI4MDAsMTg1NjIxNzYwMCwxODcxOTQyNDAwLDE4ODc2NjcyMDAsMTkwMzM5MmUzLDE5MTk3MjE2MDAsMTkzNDg0MTYwMF0sb2Zmc2V0Ols3NTA5LDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwXX0sIkFmcmljYS9DYXNhYmxhbmNhIjp7CnRpbWU6Wy0xNzczMDE0NDAwLC05NTYzNjE2MDAsLTk1MDQ4NjQwMCwtOTQyMDE5MjAwLC03NjExODRlMywtNjE3MjQxNjAwLC02MDUxNDU2MDAsLTgxNDMyZTMsLTcxMTA3MjAwLDE0MTI2NGUzLDE0NzIyNTYwMCwxOTk3NTY4MDAsMjA3NzA1NjAwLDIzMTI5MjgwMCwyNDQyNTI4MDAsMjY1NTA3MjAwLDI3MTAzNjgwMCw0NDgyNDMyMDAsNTA0OTIxNjAwLDEyMTIyNzg0MDAsMTIyMDIyNzIwMCwxMjQzODE0NDAwLDEyNTA4MTI4MDAsMTI3Mjc1ODQwMCwxMjgxMjI1NjAwLDEzMDE3ODg4MDAsMTMxMjA3MDQwMCwxMzM1NjY0ODAwLDEzNDI3NTMyMDAsMTM0NTQyOGUzLDEzNDg5NzRlMywxMzY3MTE0NDAwLDEzNzMxNjZlMywxMzc2MWU1LDEzODI4NDI4MDAsMTM5NjE0NDgwMCwxNDAzOTI0NDAwLDE0MDY5NDQ4MDAsMTQxNDI5MjQwMCwxNDI3NTk0NDAwLDE0MzQyNTA4MDAsMTQzNzI3MTIwMCwxNDQ1NzQyZTMsMTQ1OTA0NGUzLDE0NjUwOTU2MDAsMTQ2ODExNmUzLDE0Nzc3OTY0MDAsMTQ5MDQ5MzYwMCwxNDk1MzM1NjAwLDE0OTg5NjA4MDAsMTUwOTI0NmUzLDE1MjE5NDMyMDAsMTUyNjE4MDQwMCwxNTI5MjAwODAwLDE1NDA2OTU2MDAsMTU1NzAyNTIwMCwxNTYwMDQ1NjAwLDE1ODcyNjUyMDAsMTU5MDg5MDQwMCwxNjE4MTFlNCwxNjIxMTMwNDAwLDE2NDgzNWU0LDE2NTE5NzUyMDAsMTY3OTE5NDgwMCwxNjgyMjE1MjAwLDE3MTAwMzk2MDAsMTcxMzA2ZTQsMTc0MDI3OTYwMCwxNzQzOTA0ODAwLDE3NzExMjQ0MDAsMTc3NDE0NDgwMCwxODAxOTY5MjAwLDE4MDQ5ODk2MDAsMTgzMjIwOTIwMCwxODM1ODM0NDAwLDE4NjMwNTRlMywxODY2MDc0NDAwLDE4OTMyOTRlMywxODk2OTE5MjAwLDE5MjQxMzg4MDAsMTkyNzE1OTIwMF0sb2Zmc2V0OlstMTgyMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDBdfSwiQWZyaWNhL0pvaGFubmVzYnVyZyI6e3RpbWU6Wy0yNDU4MTY2NDAwLC0yMTA5MjgzMjAwLC04NjA5Njg4MDAsLTg0NTI0NGUzLC04Mjk1MTkyMDAsLTgxMzc5NDQwMCwxOTI0OTk5MjAwXSxvZmZzZXQ6WzY3MjAsNTQwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMF19LCJBZnJpY2EvTGFnb3MiOnt0aW1lOlstMjAzNTU4NGUzLC0xOTQwODg5NjAwLC0xNzY3MjI1NjAwLC0xNTg4NDY0ZTMsMTkyNDk5NTYwMF0sb2Zmc2V0Ols4MTUsMCw4MTUsMTgwMCwzNjAwXX0sIkFmcmljYS9OYWlyb2JpIjp7dGltZTpbLTE5NDYxNmU0LC0xMzA5NzM3NjAwLC0xMjYxOTU4NDAwLC0xMDQxMzc5MjAwLC04NjUyOTZlMywxOTI1MDAyODAwXSxvZmZzZXQ6Wzg4MzYsOWUzLDEwODAwLDllMyw5OTAwLDEwODAwXX0sIkFmcmljYS9UdW5pcyI6e3RpbWU6Wy0yNzk3MmU1LC0xODU1OTU4NDAwLC05NjkyMzg4MDAsLTk1MDQ4NjQwMCwtOTQxOTM2NDAwLC04OTExMjk2MDAsLTg3NzgyNGUzLC04NTcyNWU0LC04NDQ1NTI4MDAsLTg0MjkxMTIwMCwtODQyMjJlNCwtODI4MjIzMjAwLC04MTI0OTg0MDAsLTc5NjI2MjQwMCwtNzgxMDQ4ODAwLC03NjY2MjcyMDAsMjMxMjA2NDAwLDI0MzkxMDgwMCwyNjI4Mjg4MDAsMjc2MDUxNjAwLDU4MTEyNjQwMCw1OTExNTI0MDAsNjA2ODczNjAwLDYyMjYwMmUzLDY0MTUyZTQsNjU0NjU2NDAwLDExMTQ5MDU2MDAsMTEyODA0NTYwMCwxMTQzMzM4NDAwLDExNjIwOTA4MDAsMTE3NDc4OGUzLDExOTM1NDA0MDAsMTIwNjg0MjQwMCwxMjI0OTllNCwxOTI0OTk1NjAwXSxvZmZzZXQ6WzI0NDQsNTYxLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkFtZXJpY2EvQW5jaG9yYWdlIjp7CnRpbWU6Wy0zMjI1MTczMzAzLC0yMTg4OTg3MjAwLC04ODAyMzZlMywtNzY5NDI4ZTMsLTc2NTQxMDQwMCwtODY5MTg0MDAsLTIxNTA2NDAwLC01NzgxNjAwLDk5NDMyMDAsMjU2NjhlMyw0MTM5MjgwMCw1NzcyMjQwMCw3MzQ0NzIwMCw4OTE3MmUzLDEwNDg5NjgwMCwxMjA2MjE2MDAsMTI2NjY5NjAwLDE1MjA3MTIwMCwxNjIzNTI4MDAsMTgzNTIwODAwLDE5OTI0NTYwMCwyMTU1NzUyMDAsMjMwNjk1MjAwLDI0NzAyNDgwMCwyNjI3NDk2MDAsMjc4NDc0NDAwLDI5NDE5OTIwMCwzMDk5MjRlMywzMjU2NDg4MDAsMzQxMzczNjAwLDM1NzA5ODQwMCwzNzI4MjMyMDAsMzg4NTQ4ZTMsNDA0ODc3NjAwLDQxOTk5NzYwMCw0MzYzMjcyMDAsNDM4OTk4NDAwLDQ1MjA1MmUzLDQ2Nzc3NjgwMCw0ODM1MDE2MDAsNDk5MjI2NDAwLDUxNDk1MTIwMCw1MzA2NzZlMyw1NDQ1ODY0MDAsNTYyMTI1NjAwLDU3NjAzNmUzLDU5NDE4ZTQsNjA3NDg1NjAwLDYyNTYyOTYwMCw2Mzg5MzUyMDAsNjU3MDc5MjAwLDY3MDk4OTYwMCw2ODg1Mjg4MDAsNzAyNDM5MjAwLDcxOTk3ODQwMCw3MzM4ODg4MDAsNzUyMDMyODAwLDc2NTMzODQwMCw3ODM0ODI0MDAsNzk2Nzg4ZTMsODE0OTMyZTMsODI4ODQyNDAwLDg0NjM4MTYwMCw4NjAyOTJlMyw4Nzc4MzEyMDAsODkxNzQxNjAwLDkwOTI4MDgwMCw5MjMxOTEyMDAsOTQxMzM1MjAwLDk1NDY0MDgwMCw5NzI3ODQ4MDAsOTg2MDkwNDAwLDEwMDQyMzQ0MDAsMTAxODE0NDgwMCwxMDM1Njg0ZTMsMTA0OTU5NDQwMCwxMDY3MTMzNjAwLDEwODEwNDRlMywxMDk5MTg4ZTMsMTExMjQ5MzYwMCwxMTMwNjM3NjAwLDExNDM5NDMyMDAsMTE2MjA4NzIwMCwxMTczNTc4NDAwLDExOTQxNDE2MDAsMTIwNTAyOGUzLDEyMjU1OTEyMDAsMTIzNjQ3NzYwMCwxMjU3MDQwODAwLDEyNjg1MzJlMywxMjg5MDk1MjAwLDEyOTk5ODE2MDAsMTMyMDU0NDgwMCwxMzMxNDMxMjAwLDEzNTE5OTQ0MDAsMTM2Mjg4MDgwMCwxMzgzNDQ0ZTMsMTM5NDMzMDQwMCwxNDE0ODkzNjAwLDE0MjU3OGU0LDE0NDYzNDMyMDAsMTQ1NzgzNDQwMCwxNDc4Mzk3NjAwLDE0ODkyODRlMywxNTA5ODQ3MjAwLDE1MjA3MzM2MDAsMTU0MTI5NjgwMCwxNTUyMTgzMjAwLDE1NzI3NDY0MDAsMTU4MzYzMjgwMCwxNjA0MTk2ZTMsMTYxNTY4NzIwMCwxNjM2MjUwNDAwLDE2NDcxMzY4MDAsMTY2NzdlNSwxNjc4NTg2NDAwLDE2OTkxNDk2MDAsMTcxMDAzNmUzLDE3MzA1OTkyMDAsMTc0MTQ4NTYwMCwxNzYyMDQ4ODAwLDE3NzI5MzUyMDAsMTc5MzQ5ODQwMCwxODA0OTg5NjAwLDE4MjU1NTI4MDAsMTgzNjQzOTIwMCwxODU3MDAyNDAwLDE4Njc4ODg4MDAsMTg4ODQ1MmUzLDE4OTkzMzg0MDAsMTkxOTkwMTYwMCwxOTMwNzg4ZTNdLG9mZnNldDpbNTA0MjQsLTM1OTc2LC0zNmUzLC0zMjQwMCwtMzI0MDAsLTM2ZTMsLTM2ZTMsLTMyNDAwLC0zNmUzLC0zMjQwMCwtMzZlMywtMzI0MDAsLTM2ZTMsLTMyNDAwLC0zNmUzLC0zMjQwMCwtMzZlMywtMzI0MDAsLTM2ZTMsLTMyNDAwLC0zNmUzLC0zMjQwMCwtMzZlMywtMzI0MDAsLTM2ZTMsLTMyNDAwLC0zNmUzLC0zMjQwMCwtMzZlMywtMzI0MDAsLTM2ZTMsLTMyNDAwLC0zNmUzLC0zMjQwMCwtMzZlMywtMzI0MDAsLTMyNDAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDBdfSwiQW1lcmljYS9BcmdlbnRpbmEvQnVlbm9zX0FpcmVzIjp7dGltZTpbLTIzNzIxMTJlMywtMTU2NzQ2ODgwMCwtMTIzMzQ0NjQwMCwtMTIyMjk5MmUzLC0xMjA1OTcxMjAwLC0xMTk0MDQ4ZTMsLTExNzI4OGU0LC0xMTYyNTEyZTMsLTExNDEzNDRlMywtMTEzMDk3NmUzLC0xMTA5ODA4ZTMsLTEwOTk0NGU0LC0xMDc4MjcyZTMsLTEwNjc4MTc2MDAsLTEwNDY2NDk2MDAsLTEwMzYyODE2MDAsLTEwMTUxMTM2MDAsLTEwMDQ3NDU2MDAsLTk4MzU3NzYwMCwtOTczMjA5NjAwLC05NTIwNDE2MDAsLTk0MTU4NzIwMCwtOTMxMDQ2NDAwLC05MDA4OTI4MDAsLTg5MDM1MmUzLC04MzM3NmU0LC04MjcyOGU0LC03NTIyODQ4MDAsLTczMzc5NTIwMCwtMTk3MzM3NjAwLC0xOTA4NTc2MDAsLTE4NDIwNDgwMCwtMTY0NTA1NjAwLC0xNTI2Njg4MDAsLTEzMjk2OTYwMCwtMTIxMTMyODAwLC0xMDE0MzM2MDAsLTg2ODMyZTMsLTcxMTA3MjAwLC01NDc3NzYwMCwtMzkwNTI4MDAsLTIzMzI4ZTMsLTc2MDMyMDAsMTI4MTMxMjAwLDEzNjU5ODQwMCw1OTY5Mzc2MDAsNjA1MDU5MjAwLDYyNDQxMjgwMCw2MzY1MDg4MDAsNjU2NDY3MjAwLDY2Nzk1ODQwMCw2ODc5MTY4MDAsNjk5NDA4ZTMsNzE5MzY2NDAwLDczMTQ2MjQwMCw5Mzg5MDg4MDAsOTUyMDQxNjAwLDExOTg5NzI4MDAsMTIwNTYyNTYwMCwxMjI0Mzc0NDAwLDEyMzcwNzUyMDAsMTkyNDk4MTIwMF0sCm9mZnNldDpbLTE0MDI4LC0xNTQwOCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtMTA4MDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDBdfSwiQW1lcmljYS9Cb2dvdGEiOnt0aW1lOlstMjcwNzY4OTYwMCwtMTczOTA1OTIwMCw3MDQ4NTEyMDAsNzI5MDQzMjAwLDE5MjQ5NzRlM10sb2Zmc2V0OlstMTc3NzYsLTE3Nzc2LC0xOGUzLC0xNDQwMCwtMThlM119LCJBbWVyaWNhL0NhcmFjYXMiOnt0aW1lOlstMjUyNDUyMTYwMCwtMTgyNjc1NTIwMCwtMTU3NzY2NDAwLDExOTcxNjkyMDAsMTQ2MjA2OTgwMCwxOTI0OTc3NjAwXSxvZmZzZXQ6Wy0xNjA2NCwtMTYwNjAsLTE2MjAwLC0xNDQwMCwtMTYyMDAsLTE0NDAwXX0sIkFtZXJpY2EvQ2hpY2FnbyI6ewp0aW1lOlstMjcxNzY2ODIzNiwtMTYzMzI5ODQwMCwtMTYxNTE1NDQwMCwtMTYwMTg0ODgwMCwtMTU4MzcwNDgwMCwtMTU2Mzc0NjQwMCwtMTU1MTY1MDQwMCwtMTUzODk0OTYwMCwtMTUyMDIwMDgwMCwtMTUwNDQ3NmUzLC0xNDkxNzc1MjAwLC0xNDczMDI2NDAwLC0xNDU5NzIwODAwLC0xNDQxNTc2ODAwLC0xNDI4MjcxMjAwLC0xNDEwMTI3MjAwLC0xMzk2ODIxNjAwLC0xMzc4Njc3NjAwLC0xMzY1MzcyZTMsLTEzNDcyMjhlMywtMTMzMzkyMjQwMCwtMTMxNTE3MzYwMCwtMTMwMTg2OGUzLC0xMjgzNzI0ZTMsLTEyNzA0MTg0MDAsLTEyNTIyNzQ0MDAsLTEyMzg5Njg4MDAsLTEyMjA4MjQ4MDAsLTEyMDc1MTkyMDAsLTExODkzNzUyMDAsLTExNzYwNjk2MDAsLTExNTczMjA4MDAsLTExNDQ2MmU0LC0xMTI1ODcxMjAwLC0xMTEyNTY1NjAwLC0xMDk0NDIxNjAwLC0xMDgxMTE2ZTMsLTEwNjc4MTA0MDAsLTEwNDU0MzI4MDAsLTEwMzE1MjI0MDAsLTEwMTgyMTY4MDAsLTEwMDAwNzI4MDAsLTk4Njc2NzIwMCwtOTY4MDE4NDAwLC05NTUzMTc2MDAsLTkzNjU2ODgwMCwtOTIzMjYzMjAwLC05MDUxMTkyMDAsLTg5MTgxMzYwMCwtODgwMjM2ZTMsLTc2OTQxMzYwMCwtNzY1NDEwNDAwLC03NDcyNjY0MDAsLTczMzk2MDgwMCwtNzE1ODE2ODAwLC03MDI1MTEyMDAsLTY4NDM2NzIwMCwtNjcxMDYxNjAwLC02NTI5MTc2MDAsLTYzOTYxMmUzLC02MjA4NjMyMDAsLTYwODE2MjQwMCwtNTg5NDEzNjAwLC01NzYxMDhlMywtNTU3OTY0ZTMsLTU0NDY1ODQwMCwtNTI2NTE0NDAwLC01MTMyMDg4MDAsLTQ5NTA2NDgwMCwtNDgxNzU5MjAwLC00NjM2MTUyMDAsLTQ0NzI4NTYwMCwtNDMxNTYwODAwLC00MTU4MzZlMywtNDAwMTExMjAwLC0zODQzODY0MDAsLTM2ODY2MTYwMCwtMzUyOTM2ODAwLC0zMzcyMTJlMywtMzIxNDg3MjAwLC0zMDU3NjI0MDAsLTI4OTQzMjgwMCwtMjczNzA4ZTMsLTI1Nzk4MzIwMCwtMjQyMjU4NDAwLC0yMjY1MzM2MDAsLTIxMDgwODgwMCwtMTk1MDg0ZTMsLTE3OTM1OTIwMCwtMTYzNjM0NDAwLC0xNDc5MDk2MDAsLTEzMTU4ZTQsLTExNjQ2ZTQsLTEwMDEzMDQwMCwtODQ0MDU2MDAsLTY4NjgwODAwLC01Mjk1NmUzLC0zNzIzMTIwMCwtMjE1MDY0MDAsLTU3ODE2MDAsOTk0MzIwMCwyNTY2OGUzLDQxMzkyODAwLDU3NzIyNDAwLDczNDQ3MjAwLDg5MTcyZTMsMTA0ODk2ODAwLDEyMDYyMTYwMCwxMjY2Njk2MDAsMTUyMDcxMjAwLDE2MjM1MjgwMCwxODM1MjA4MDAsMTk5MjQ1NjAwLDIxNTU3NTIwMCwyMzA2OTUyMDAsMjQ3MDI0ODAwLDI2Mjc0OTYwMCwyNzg0NzQ0MDAsMjk0MTk5MjAwLDMwOTkyNGUzLDMyNTY0ODgwMCwzNDEzNzM2MDAsMzU3MDk4NDAwLDM3MjgyMzIwMCwzODg1NDhlMyw0MDQ4Nzc2MDAsNDE5OTk3NjAwLDQzNjMyNzIwMCw0NTIwNTJlMyw0Njc3NzY4MDAsNDgzNTAxNjAwLDQ5OTIyNjQwMCw1MTQ5NTEyMDAsNTMwNjc2ZTMsNTQ0NTg2NDAwLDU2MjEyNTYwMCw1NzYwMzZlMyw1OTQxOGU0LDYwNzQ4NTYwMCw2MjU2Mjk2MDAsNjM4OTM1MjAwLDY1NzA3OTIwMCw2NzA5ODk2MDAsNjg4NTI4ODAwLDcwMjQzOTIwMCw3MTk5Nzg0MDAsNzMzODg4ODAwLDc1MjAzMjgwMCw3NjUzMzg0MDAsNzgzNDgyNDAwLDc5Njc4OGUzLDgxNDkzMmUzLDgyODg0MjQwMCw4NDYzODE2MDAsODYwMjkyZTMsODc3ODMxMjAwLDg5MTc0MTYwMCw5MDkyODA4MDAsOTIzMTkxMjAwLDk0MTMzNTIwMCw5NTQ2NDA4MDAsOTcyNzg0ODAwLDk4NjA5MDQwMCwxMDA0MjM0NDAwLDEwMTgxNDQ4MDAsMTAzNTY4NGUzLDEwNDk1OTQ0MDAsMTA2NzEzMzYwMCwxMDgxMDQ0ZTMsMTA5OTE4OGUzLDExMTI0OTM2MDAsMTEzMDYzNzYwMCwxMTQzOTQzMjAwLDExNjIwODcyMDAsMTE3MzU3ODQwMCwxMTk0MTQxNjAwLDEyMDUwMjhlMywxMjI1NTkxMjAwLDEyMzY0Nzc2MDAsMTI1NzA0MDgwMCwxMjY4NTMyZTMsMTI4OTA5NTIwMCwxMjk5OTgxNjAwLDEzMjA1NDQ4MDAsMTMzMTQzMTIwMCwxMzUxOTk0NDAwLDEzNjI4ODA4MDAsMTM4MzQ0NGUzLDEzOTQzMzA0MDAsMTQxNDg5MzYwMCwxNDI1NzhlNCwxNDQ2MzQzMjAwLDE0NTc4MzQ0MDAsMTQ3ODM5NzYwMCwxNDg5Mjg0ZTMsMTUwOTg0NzIwMCwxNTIwNzMzNjAwLDE1NDEyOTY4MDAsMTU1MjE4MzIwMCwxNTcyNzQ2NDAwLDE1ODM2MzI4MDAsMTYwNDE5NmUzLDE2MTU2ODcyMDAsMTYzNjI1MDQwMCwxNjQ3MTM2ODAwLDE2Njc3ZTUsMTY3ODU4NjQwMCwxNjk5MTQ5NjAwLDE3MTAwMzZlMywxNzMwNTk5MjAwLDE3NDE0ODU2MDAsMTc2MjA0ODgwMCwxNzcyOTM1MjAwLDE3OTM0OTg0MDAsMTgwNDk4OTYwMCwxODI1NTUyODAwLDE4MzY0MzkyMDAsMTg1NzAwMjQwMCwxODY3ODg4ODAwLDE4ODg0NTJlMywxODk5MzM4NDAwLDE5MTk5MDE2MDAsMTkzMDc4OGUzXSwKb2Zmc2V0OlstMjEwMzYsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDBdfSwiQW1lcmljYS9FbF9TYWx2YWRvciI6e3RpbWU6Wy0xNTQ2MzAwODAwLDU0Njk5ODQwMCw1NTk2OTkyMDAsNTc4NDQ4ZTMsNTkxMTQ4ODAwLDE5MjQ5NzA0MDBdLG9mZnNldDpbLTIxNDA4LC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwXX0sIkFtZXJpY2EvSGFsaWZheCI6ewp0aW1lOlstMjEzMTY2MDgwMCwtMTY5NjI5MTIwMCwtMTY4MDQ4ZTQsLTE2MzIwODg4MDAsLTE2MTUxNTQ0MDAsLTE1NjY3Nzc2MDAsLTE1NTcxMDA4MDAsLTE1MzU1MDA4MDAsLTE1MjQ5NmU0LC0xNTA0NDgzMjAwLC0xNDkzNDI0ZTMsLTE0NzI0Mjg4MDAsLTE0NjE5NzQ0MDAsLTE0NDA5NzkyMDAsLTE0Mjk0MDE2MDAsLTE0MDk1Mjk2MDAsLTEzOTY3NDI0MDAsLTEzNzY4NzA0MDAsLTEzNjY1MDI0MDAsLTEzNDY2MzA0MDAsLTEzMzM4NDMyMDAsLTEzMTM5NzEyMDAsLTEzMDM2ODk2MDAsLTEyODI1MjE2MDAsLTEyNzI2NzJlMywtMTI1MTA3MmUzLC0xMjQwMDk5MjAwLC0xMjE5NjIyNDAwLC0xMjA3NDRlNCwtMTE4ODc3NzYwMCwtMTE3NTk5MDQwMCwtMTE1NzMyOGUzLC0xMTQzOTM2ZTMsLTExMjQwNjRlMywtMTExMzc4MjQwMCwtMTA5MTQwNDgwMCwtMTA4MTAzNjgwMCwtMTA1OTg2ODgwMCwtMTA1MDc5NjgwMCwtMTAzMDkyNDgwMCwtMTAxODEzNzYwMCwtOTk5NDc1MjAwLC05ODY2ODhlMywtOTY1NjA2NDAwLC05NTUyMzg0MDAsLTkzNTk3MTIwMCwtOTIzMTg0ZTMsLTkwNDUyMTYwMCwtODkxNzM0NDAwLC04ODAyMzZlMywtNzY5NDA2NDAwLC03NjU0MTA0MDAsLTc0NzI2NjQwMCwtNzMzOTYwODAwLC03MTU4MTY4MDAsLTcwMjUxMTIwMCwtNjg0MzY3MjAwLC02NzEwNjE2MDAsLTY1MjkxNzYwMCwtNjM5NjEyZTMsLTU4OTQxMzYwMCwtNTc2MTA4ZTMsLTU1Nzk2NGUzLC01NDQ2NTg0MDAsLTUyNjUxNDQwMCwtNTEzMjA4ODAwLC00OTUwNjQ4MDAsLTQ4MTc1OTIwMCwtNDMxNTYwODAwLC00MTgyNTUyMDAsLTQwMDExMTIwMCwtMzg2ODA1NjAwLC0zNjg2NjE2MDAsLTM1NTM1NmUzLC0zMzcyMTJlMywtMzIzOTA2NDAwLC0yNDIyNTg0MDAsLTIyNjUzMzYwMCwtMjEwODA4ODAwLC0xOTUwODRlMywtMTc5MzU5MjAwLC0xNjM2MzQ0MDAsLTE0NzkwOTYwMCwtMTMxNThlNCwtMTE2NDZlNCwtMTAwMTMwNDAwLC04NDQwNTYwMCwtNjg2ODA4MDAsLTUyOTU2ZTMsLTM3MjMxMjAwLC0yMTUwNjQwMCwtNTc4MTYwMCw5OTQzMjAwLDI1NjY4ZTMsNDEzOTI4MDAsNTc3MjI0MDAsNzM0NDcyMDAsODkxNzJlMywxMDQ4OTY4MDAsMTIwNjIxNjAwLDEzNjM0NjQwMCwxNTIwNzEyMDAsMTY3Nzk2ZTMsMTgzNTIwODAwLDE5OTI0NTYwMCwyMTU1NzUyMDAsMjMwNjk1MjAwLDI0NzAyNDgwMCwyNjI3NDk2MDAsMjc4NDc0NDAwLDI5NDE5OTIwMCwzMDk5MjRlMywzMjU2NDg4MDAsMzQxMzczNjAwLDM1NzA5ODQwMCwzNzI4MjMyMDAsMzg4NTQ4ZTMsNDA0ODc3NjAwLDQxOTk5NzYwMCw0MzYzMjcyMDAsNDUyMDUyZTMsNDY3Nzc2ODAwLDQ4MzUwMTYwMCw0OTkyMjY0MDAsNTE0OTUxMjAwLDUzMDY3NmUzLDU0NDU4NjQwMCw1NjIxMjU2MDAsNTc2MDM2ZTMsNTk0MThlNCw2MDc0ODU2MDAsNjI1NjI5NjAwLDYzODkzNTIwMCw2NTcwNzkyMDAsNjcwOTg5NjAwLDY4ODUyODgwMCw3MDI0MzkyMDAsNzE5OTc4NDAwLDczMzg4ODgwMCw3NTIwMzI4MDAsNzY1MzM4NDAwLDc4MzQ4MjQwMCw3OTY3ODhlMyw4MTQ5MzJlMyw4Mjg4NDI0MDAsODQ2MzgxNjAwLDg2MDI5MmUzLDg3NzgzMTIwMCw4OTE3NDE2MDAsOTA5MjgwODAwLDkyMzE5MTIwMCw5NDEzMzUyMDAsOTU0NjQwODAwLDk3Mjc4NDgwMCw5ODYwOTA0MDAsMTAwNDIzNDQwMCwxMDE4MTQ0ODAwLDEwMzU2ODRlMywxMDQ5NTk0NDAwLDEwNjcxMzM2MDAsMTA4MTA0NGUzLDEwOTkxODhlMywxMTEyNDkzNjAwLDExMzA2Mzc2MDAsMTE0Mzk0MzIwMCwxMTYyMDg3MjAwLDExNzM1Nzg0MDAsMTE5NDE0MTYwMCwxMjA1MDI4ZTMsMTIyNTU5MTIwMCwxMjM2NDc3NjAwLDEyNTcwNDA4MDAsMTI2ODUzMmUzLDEyODkwOTUyMDAsMTI5OTk4MTYwMCwxMzIwNTQ0ODAwLDEzMzE0MzEyMDAsMTM1MTk5NDQwMCwxMzYyODgwODAwLDEzODM0NDRlMywxMzk0MzMwNDAwLDE0MTQ4OTM2MDAsMTQyNTc4ZTQsMTQ0NjM0MzIwMCwxNDU3ODM0NDAwLDE0NzgzOTc2MDAsMTQ4OTI4NGUzLDE1MDk4NDcyMDAsMTUyMDczMzYwMCwxNTQxMjk2ODAwLDE1NTIxODMyMDAsMTU3Mjc0NjQwMCwxNTgzNjMyODAwLDE2MDQxOTZlMywxNjE1Njg3MjAwLDE2MzYyNTA0MDAsMTY0NzEzNjgwMCwxNjY3N2U1LDE2Nzg1ODY0MDAsMTY5OTE0OTYwMCwxNzEwMDM2ZTMsMTczMDU5OTIwMCwxNzQxNDg1NjAwLDE3NjIwNDg4MDAsMTc3MjkzNTIwMCwxNzkzNDk4NDAwLDE4MDQ5ODk2MDAsMTgyNTU1MjgwMCwxODM2NDM5MjAwLDE4NTcwMDI0MDAsMTg2Nzg4ODgwMCwxODg4NDUyZTMsMTg5OTMzODQwMCwxOTE5OTAxNjAwLDE5MzA3ODhlM10sCm9mZnNldDpbLTE1MjY0LC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMF19LCJBbWVyaWNhL0p1bmVhdSI6e3RpbWU6Wy0zMjI1MTY5NTg4LC0yMTg4OTg3MjAwLC04ODAyMzZlMywtNzY5NDIwODAwLC03NjU0MTA0MDAsLTIxNTA2NDAwLC01NzgxNjAwLDk5NDMyMDAsMjU2NjhlMyw0MTM5MjgwMCw1NzcyMjQwMCw3MzQ0NzIwMCw4OTE3MmUzLDEwNDg5NjgwMCwxMjA2MjE2MDAsMTI2NjY5NjAwLDE1MjA3MTIwMCwxNjIzNTI4MDAsMTgzNTIwODAwLDE5OTI0NTYwMCwyMTU1NzUyMDAsMjMwNjk1MjAwLDI0NzAyNDgwMCwyNjI3NDk2MDAsMjc4NDc0NDAwLDI5NDE5OTIwMCwzMDk5MjRlMywzMjU2NDg4MDAsMzQxMzczNjAwLDM1NzA5ODQwMCwzNzI4MjMyMDAsMzg4NTQ4ZTMsNDA0ODc3NjAwLDQxOTk5NzYwMCw0MzYzMjcyMDAsNDM4OTk4NDAwLDQ1MjA1MmUzLDQ2Nzc3NjgwMCw0ODM1MDE2MDAsNDk5MjI2NDAwLDUxNDk1MTIwMCw1MzA2NzZlMyw1NDQ1ODY0MDAsNTYyMTI1NjAwLDU3NjAzNmUzLDU5NDE4ZTQsNjA3NDg1NjAwLDYyNTYyOTYwMCw2Mzg5MzUyMDAsNjU3MDc5MjAwLDY3MDk4OTYwMCw2ODg1Mjg4MDAsNzAyNDM5MjAwLDcxOTk3ODQwMCw3MzM4ODg4MDAsNzUyMDMyODAwLDc2NTMzODQwMCw3ODM0ODI0MDAsNzk2Nzg4ZTMsODE0OTMyZTMsODI4ODQyNDAwLDg0NjM4MTYwMCw4NjAyOTJlMyw4Nzc4MzEyMDAsODkxNzQxNjAwLDkwOTI4MDgwMCw5MjMxOTEyMDAsOTQxMzM1MjAwLDk1NDY0MDgwMCw5NzI3ODQ4MDAsOTg2MDkwNDAwLDEwMDQyMzQ0MDAsMTAxODE0NDgwMCwxMDM1Njg0ZTMsMTA0OTU5NDQwMCwxMDY3MTMzNjAwLDEwODEwNDRlMywxMDk5MTg4ZTMsMTExMjQ5MzYwMCwxMTMwNjM3NjAwLDExNDM5NDMyMDAsMTE2MjA4NzIwMCwxMTczNTc4NDAwLDExOTQxNDE2MDAsMTIwNTAyOGUzLDEyMjU1OTEyMDAsMTIzNjQ3NzYwMCwxMjU3MDQwODAwLDEyNjg1MzJlMywxMjg5MDk1MjAwLDEyOTk5ODE2MDAsMTMyMDU0NDgwMCwxMzMxNDMxMjAwLDEzNTE5OTQ0MDAsMTM2Mjg4MDgwMCwxMzgzNDQ0ZTMsMTM5NDMzMDQwMCwxNDE0ODkzNjAwLDE0MjU3OGU0LDE0NDYzNDMyMDAsMTQ1NzgzNDQwMCwxNDc4Mzk3NjAwLDE0ODkyODRlMywxNTA5ODQ3MjAwLDE1MjA3MzM2MDAsMTU0MTI5NjgwMCwxNTUyMTgzMjAwLDE1NzI3NDY0MDAsMTU4MzYzMjgwMCwxNjA0MTk2ZTMsMTYxNTY4NzIwMCwxNjM2MjUwNDAwLDE2NDcxMzY4MDAsMTY2NzdlNSwxNjc4NTg2NDAwLDE2OTkxNDk2MDAsMTcxMDAzNmUzLDE3MzA1OTkyMDAsMTc0MTQ4NTYwMCwxNzYyMDQ4ODAwLDE3NzI5MzUyMDAsMTc5MzQ5ODQwMCwxODA0OTg5NjAwLDE4MjU1NTI4MDAsMTgzNjQzOTIwMCwxODU3MDAyNDAwLDE4Njc4ODg4MDAsMTg4ODQ1MmUzLDE4OTkzMzg0MDAsMTkxOTkwMTYwMCwxOTMwNzg4ZTNdLApvZmZzZXQ6WzU0MTM5LC0zMjI2MSwtMjg4MDAsLTI1MjAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yODgwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMzI0MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMCwtMjg4MDAsLTMyNDAwLC0yODgwMCwtMzI0MDAsLTI4ODAwLC0zMjQwMF19LCJBbWVyaWNhL0xpbWEiOnt0aW1lOlstMjUyNDUyMTYwMCwtMTkzODU1NjgwMCwtMTAwOTg0MzIwMCwtMTAwMjA2NzIwMCwtOTg2Nzc0NDAwLC05NzEwNDk2MDAsLTk1NTMyNDgwMCwtOTM5NmU1LDUwNDkyMTYwMCw1MTI2OTc2MDAsNTM2NDU3NjAwLDU0NDIzMzYwMCw2MzExNTJlMyw2Mzg5MjhlMyw3NTczODI0MDAsNzY1MTU4NDAwLDE5MjQ5NzRlM10sb2Zmc2V0OlstMTg0OTIsLTE4NTE2LC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlM119LCJBbWVyaWNhL0xvc19BbmdlbGVzIjp7dGltZTpbLTI3MTc2NjgzNzgsLTE2MzMyOTg0MDAsLTE2MTUxNTQ0MDAsLTE2MDE4NDg4MDAsLTE1ODM3MDQ4MDAsLTg4MDIzNmUzLC03Njk0MjA4MDAsLTc2NTQxMDQwMCwtNjg3OTk1OTQwLC02NjI2ODA4MDAsLTYyMDg2NjgwMCwtNjA4MTYyNDAwLC01ODk0MTcyMDAsLTU3NjEwOGUzLC01NTc5Njc2MDAsLTU0NDY1ODQwMCwtNTI2NTE4ZTMsLTUxMzIwODgwMCwtNDk1MDY4NDAwLC00ODE3NTkyMDAsLTQ2MzYxODgwMCwtNDUwMzA5NjAwLC00MzE1NjQ0MDAsLTQxODI1NTIwMCwtNDAwMTE0ODAwLC0zODY4MDU2MDAsLTM2ODY2NTIwMCwtMzU1MzU2ZTMsLTMzNzIxNTYwMCwtMzIzOTA2NDAwLC0zMDU3NjZlMywtMjkyNDU2ODAwLC0yNzM3MTE2MDAsLTI2MTAwNzIwMCwtMjQyMjYyZTMsLTIyNjUzMzYwMCwtMjEwODEyNDAwLC0xOTUwODRlMywtMTc5MzYyODAwLC0xNjM2MzQ0MDAsLTE0NzkxMzIwMCwtMTMxNThlNCwtMTE2NDYzNjAwLC0xMDAxMzA0MDAsLTg0NDA1NjAwLC02ODY4MDgwMCwtNTI5NTZlMywtMzcyMzEyMDAsLTIxNTA2NDAwLC01NzgxNjAwLDk5NDMyMDAsMjU2NjhlMyw0MTM5MjgwMCw1NzcyMjQwMCw3MzQ0NzIwMCw4OTE3MmUzLDEwNDg5NjgwMCwxMjA2MjE2MDAsMTI2NjY5NjAwLDE1MjA3MTIwMCwxNjIzNTI4MDAsMTgzNTIwODAwLDE5OTI0NTYwMCwyMTU1NzUyMDAsMjMwNjk1MjAwLDI0NzAyNDgwMCwyNjI3NDk2MDAsMjc4NDc0NDAwLDI5NDE5OTIwMCwzMDk5MjRlMywzMjU2NDg4MDAsMzQxMzczNjAwLDM1NzA5ODQwMCwzNzI4MjMyMDAsMzg4NTQ4ZTMsNDA0ODc3NjAwLDQxOTk5NzYwMCw0MzYzMjcyMDAsNDUyMDUyZTMsNDY3Nzc2ODAwLDQ4MzUwMTYwMCw0OTkyMjY0MDAsNTE0OTUxMjAwLDUzMDY3NmUzLDU0NDU4NjQwMCw1NjIxMjU2MDAsNTc2MDM2ZTMsNTk0MThlNCw2MDc0ODU2MDAsNjI1NjI5NjAwLDYzODkzNTIwMCw2NTcwNzkyMDAsNjcwOTg5NjAwLDY4ODUyODgwMCw3MDI0MzkyMDAsNzE5OTc4NDAwLDczMzg4ODgwMCw3NTIwMzI4MDAsNzY1MzM4NDAwLDc4MzQ4MjQwMCw3OTY3ODhlMyw4MTQ5MzJlMyw4Mjg4NDI0MDAsODQ2MzgxNjAwLDg2MDI5MmUzLDg3NzgzMTIwMCw4OTE3NDE2MDAsOTA5MjgwODAwLDkyMzE5MTIwMCw5NDEzMzUyMDAsOTU0NjQwODAwLDk3Mjc4NDgwMCw5ODYwOTA0MDAsMTAwNDIzNDQwMCwxMDE4MTQ0ODAwLDEwMzU2ODRlMywxMDQ5NTk0NDAwLDEwNjcxMzM2MDAsMTA4MTA0NGUzLDEwOTkxODhlMywxMTEyNDkzNjAwLDExMzA2Mzc2MDAsMTE0Mzk0MzIwMCwxMTYyMDg3MjAwLDExNzM1Nzg0MDAsMTE5NDE0MTYwMCwxMjA1MDI4ZTMsMTIyNTU5MTIwMCwxMjM2NDc3NjAwLDEyNTcwNDA4MDAsMTI2ODUzMmUzLDEyODkwOTUyMDAsMTI5OTk4MTYwMCwxMzIwNTQ0ODAwLDEzMzE0MzEyMDAsMTM1MTk5NDQwMCwxMzYyODgwODAwLDEzODM0NDRlMywxMzk0MzMwNDAwLDE0MTQ4OTM2MDAsMTQyNTc4ZTQsMTQ0NjM0MzIwMCwxNDU3ODM0NDAwLDE0NzgzOTc2MDAsMTQ4OTI4NGUzLDE1MDk4NDcyMDAsMTUyMDczMzYwMCwxNTQxMjk2ODAwLDE1NTIxODMyMDAsMTU3Mjc0NjQwMCwxNTgzNjMyODAwLDE2MDQxOTZlMywxNjE1Njg3MjAwLDE2MzYyNTA0MDAsMTY0NzEzNjgwMCwxNjY3N2U1LDE2Nzg1ODY0MDAsMTY5OTE0OTYwMCwxNzEwMDM2ZTMsMTczMDU5OTIwMCwxNzQxNDg1NjAwLDE3NjIwNDg4MDAsMTc3MjkzNTIwMCwxNzkzNDk4NDAwLDE4MDQ5ODk2MDAsMTgyNTU1MjgwMCwxODM2NDM5MjAwLDE4NTcwMDI0MDAsMTg2Nzg4ODgwMCwxODg4NDUyZTMsMTg5OTMzODQwMCwxOTE5OTAxNjAwLDE5MzA3ODhlM10sCm9mZnNldDpbLTI4Mzc4LC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMF19LCJBbWVyaWNhL01leGljb19DaXR5Ijp7dGltZTpbLTE1MTQ3NjMzOTYsLTEzNDMxNzQ0MDAsLTEyMzQ4Mjg4MDAsLTEyMjA0ODY0MDAsLTEyMDcxODA4MDAsLTExOTEzNjk2MDAsLTk3NTI4MzIwMCwtOTYzMTg3MjAwLC05MTcxMzZlMywtOTA3MzcyODAwLC04MjE5MjMyMDAsLTgxMDA4NjQwMCwtNjI3NTIzMjAwLC02MTMwMDhlMyw4Mjg4NDI0MDAsODQ2MzgxNjAwLDg2MDI5MmUzLDg3NzgzMTIwMCw4OTE3NDE2MDAsOTA5MjgwODAwLDkyMzE5MTIwMCw5NDEzMzUyMDAsOTU0NjQwODAwLDk3Mjc4NDgwMCw5ODkxMTQ0MDAsMTAwMTgxNTIwMCwxMDE4MTQ0ODAwLDEwMzU2ODRlMywxMDQ5NTk0NDAwLDEwNjcxMzM2MDAsMTA4MTA0NGUzLDEwOTkxODhlMywxMTEyNDkzNjAwLDExMzA2Mzc2MDAsMTE0Mzk0MzIwMCwxMTYyMDg3MjAwLDExNzUzOTI4MDAsMTE5MzUzNjgwMCwxMjA3NDQ3MjAwLDEyMjQ5ODY0MDAsMTIzODg5NjgwMCwxMjU2NDM2ZTMsMTI3MDM0NjQwMCwxMjg4NDkwNDAwLDEzMDE3OTZlMywxMzE5OTRlNCwxMzMzMjQ1NjAwLDEzNTEzODk2MDAsMTM2NTNlNSwxMzgyODM5MjAwLDEzOTY3NDk2MDAsMTQxNDI4ODgwMCwxNDI4MTk5MjAwLDE0NDU3Mzg0MDAsMTQ1OTY0ODgwMCwxNDc3NzkyODAwLDE0OTEwOTg0MDAsMTUwOTI0MjQwMCwxNTIyNTQ4ZTMsMTU0MDY5MmUzLDE1NTQ2MDI0MDAsMTU3MjE0MTYwMCwxNTg2MDUyZTMsMTYwMzU5MTIwMCwxNjE3NTAxNjAwLDE2MzU2NDU2MDAsMTY0ODk1MTIwMCwxNjY3MDk1MjAwLDE5MjQ5NzA0MDBdLG9mZnNldDpbLTIzNzk2LC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMCwtMThlMywtMjE2MDAsLTE4ZTMsLTIxNjAwLC0xOGUzLC0yMTYwMF19LCJBbWVyaWNhL05ld19Zb3JrIjp7CnRpbWU6Wy0yNzE3NjY4NTYyLC0xNjMzMjk4NDAwLC0xNjE1MTU0NDAwLC0xNjAxODQ4ODAwLC0xNTgzNzA0ODAwLC0xNTcwMzk5MjAwLC0xNTUxNjUwNDAwLC0xNTM2NTMwNDAwLC0xNTIzMjI0ODAwLC0xNTA0NDc2ZTMsLTE0OTE3NzUyMDAsLTE0NzMwMjY0MDAsLTE0NTk3MjA4MDAsLTE0NDE1NzY4MDAsLTE0MjgyNzEyMDAsLTE0MTAxMjcyMDAsLTEzOTY4MjE2MDAsLTEzNzg2Nzc2MDAsLTEzNjUzNzJlMywtMTM0NzIyOGUzLC0xMzMzOTIyNDAwLC0xMzE1MTczNjAwLC0xMzAxODY4ZTMsLTEyODM3MjRlMywtMTI3MDQxODQwMCwtMTI1MjI3NDQwMCwtMTIzODk2ODgwMCwtMTIyMDgyNDgwMCwtMTIwNzUxOTIwMCwtMTE4OTM3NTIwMCwtMTE3NjA2OTYwMCwtMTE1NzMyMDgwMCwtMTE0NDYyZTQsLTExMjU4NzEyMDAsLTExMTI1NjU2MDAsLTEwOTQ0MjE2MDAsLTEwODExMTZlMywtMTA2Mjk3MmUzLC0xMDQ5NjY2NDAwLC0xMDMxNTIyNDAwLC0xMDE4MjE2ODAwLC0xMDAwMDcyODAwLC05ODY3NjcyMDAsLTk2ODAxODQwMCwtOTU1MzE3NjAwLC05MzY1Njg4MDAsLTkyMzI2MzIwMCwtOTA1MTE5MjAwLC04OTE4MTM2MDAsLTg4MDIzNmUzLC03Njk0MWU0LC03NjU0MTA0MDAsLTc0NzI2NjQwMCwtNzMzOTYwODAwLC03MTU4MTY4MDAsLTcwMjUxMTIwMCwtNjg0MzY3MjAwLC02NzEwNjE2MDAsLTY1MjkxNzYwMCwtNjM5NjEyZTMsLTYyMDg2MzIwMCwtNjA4MTYyNDAwLC01ODk0MTM2MDAsLTU3NjEwOGUzLC01NTc5NjRlMywtNTQ0NjU4NDAwLC01MjY1MTQ0MDAsLTUxMzIwODgwMCwtNDk1MDY0ODAwLC00ODE3NTkyMDAsLTQ2MzYxNTIwMCwtNDQ3Mjg1NjAwLC00MzE1NjA4MDAsLTQxNTgzNmUzLC00MDAxMTEyMDAsLTM4NDM4NjQwMCwtMzY4NjYxNjAwLC0zNTI5MzY4MDAsLTMzNzIxMmUzLC0zMjE0ODcyMDAsLTMwNTc2MjQwMCwtMjg5NDMyODAwLC0yNzM3MDhlMywtMjU3OTgzMjAwLC0yNDIyNTg0MDAsLTIyNjUzMzYwMCwtMjEwODA4ODAwLC0xOTUwODRlMywtMTc5MzU5MjAwLC0xNjM2MzQ0MDAsLTE0NzkwOTYwMCwtMTMxNThlNCwtMTE2NDZlNCwtMTAwMTMwNDAwLC04NDQwNTYwMCwtNjg2ODA4MDAsLTUyOTU2ZTMsLTM3MjMxMjAwLC0yMTUwNjQwMCwtNTc4MTYwMCw5OTQzMjAwLDI1NjY4ZTMsNDEzOTI4MDAsNTc3MjI0MDAsNzM0NDcyMDAsODkxNzJlMywxMDQ4OTY4MDAsMTIwNjIxNjAwLDEyNjY2OTYwMCwxNTIwNzEyMDAsMTYyMzUyODAwLDE4MzUyMDgwMCwxOTkyNDU2MDAsMjE1NTc1MjAwLDIzMDY5NTIwMCwyNDcwMjQ4MDAsMjYyNzQ5NjAwLDI3ODQ3NDQwMCwyOTQxOTkyMDAsMzA5OTI0ZTMsMzI1NjQ4ODAwLDM0MTM3MzYwMCwzNTcwOTg0MDAsMzcyODIzMjAwLDM4ODU0OGUzLDQwNDg3NzYwMCw0MTk5OTc2MDAsNDM2MzI3MjAwLDQ1MjA1MmUzLDQ2Nzc3NjgwMCw0ODM1MDE2MDAsNDk5MjI2NDAwLDUxNDk1MTIwMCw1MzA2NzZlMyw1NDQ1ODY0MDAsNTYyMTI1NjAwLDU3NjAzNmUzLDU5NDE4ZTQsNjA3NDg1NjAwLDYyNTYyOTYwMCw2Mzg5MzUyMDAsNjU3MDc5MjAwLDY3MDk4OTYwMCw2ODg1Mjg4MDAsNzAyNDM5MjAwLDcxOTk3ODQwMCw3MzM4ODg4MDAsNzUyMDMyODAwLDc2NTMzODQwMCw3ODM0ODI0MDAsNzk2Nzg4ZTMsODE0OTMyZTMsODI4ODQyNDAwLDg0NjM4MTYwMCw4NjAyOTJlMyw4Nzc4MzEyMDAsODkxNzQxNjAwLDkwOTI4MDgwMCw5MjMxOTEyMDAsOTQxMzM1MjAwLDk1NDY0MDgwMCw5NzI3ODQ4MDAsOTg2MDkwNDAwLDEwMDQyMzQ0MDAsMTAxODE0NDgwMCwxMDM1Njg0ZTMsMTA0OTU5NDQwMCwxMDY3MTMzNjAwLDEwODEwNDRlMywxMDk5MTg4ZTMsMTExMjQ5MzYwMCwxMTMwNjM3NjAwLDExNDM5NDMyMDAsMTE2MjA4NzIwMCwxMTczNTc4NDAwLDExOTQxNDE2MDAsMTIwNTAyOGUzLDEyMjU1OTEyMDAsMTIzNjQ3NzYwMCwxMjU3MDQwODAwLDEyNjg1MzJlMywxMjg5MDk1MjAwLDEyOTk5ODE2MDAsMTMyMDU0NDgwMCwxMzMxNDMxMjAwLDEzNTE5OTQ0MDAsMTM2Mjg4MDgwMCwxMzgzNDQ0ZTMsMTM5NDMzMDQwMCwxNDE0ODkzNjAwLDE0MjU3OGU0LDE0NDYzNDMyMDAsMTQ1NzgzNDQwMCwxNDc4Mzk3NjAwLDE0ODkyODRlMywxNTA5ODQ3MjAwLDE1MjA3MzM2MDAsMTU0MTI5NjgwMCwxNTUyMTgzMjAwLDE1NzI3NDY0MDAsMTU4MzYzMjgwMCwxNjA0MTk2ZTMsMTYxNTY4NzIwMCwxNjM2MjUwNDAwLDE2NDcxMzY4MDAsMTY2NzdlNSwxNjc4NTg2NDAwLDE2OTkxNDk2MDAsMTcxMDAzNmUzLDE3MzA1OTkyMDAsMTc0MTQ4NTYwMCwxNzYyMDQ4ODAwLDE3NzI5MzUyMDAsMTc5MzQ5ODQwMCwxODA0OTg5NjAwLDE4MjU1NTI4MDAsMTgzNjQzOTIwMCwxODU3MDAyNDAwLDE4Njc4ODg4MDAsMTg4ODQ1MmUzLDE4OTkzMzg0MDAsMTkxOTkwMTYwMCwxOTMwNzg4ZTNdLApvZmZzZXQ6Wy0xNzc2MiwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlM119LCJBbWVyaWNhL1Bob2VuaXgiOnt0aW1lOlstMjcxNzY3MDQ5OCwtMTYzMzI5ODQwMCwtMTYxNTE1NDQwMCwtMTYwMTg0ODgwMCwtMTU4MzcwNDgwMCwtODgwMjM2ZTMsLTgyMDU0MDc0MCwtODEyNjc4MzQwLC03OTY4NjcxNDAsLTg0NDA1NjAwLC02ODY4MDgwMCwxOTI0OTY2ODAwXSxvZmZzZXQ6Wy0yNjg5OCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwXX0sIkFtZXJpY2EvU2FudGlhZ28iOnsKdGltZTpbLTI1MjQ1MjE2MDAsLTE4OTI2Nzg0MDAsLTE2ODg0Mjg4MDAsLTE2MTkyMjI0MDAsLTE1OTM4MjA4MDAsLTEzMzYwMDMyMDAsLTEzMTc2ZTUsLTEzMDQzODA4MDAsLTEyODYwNjRlMywtMTI3Mjg0NDgwMCwtMTI1NDUyOGUzLC0xMjQxMzA4ODAwLC0xMjIyOTkyZTMsLTEyMDk3NzI4MDAsLTExOTEzNjk2MDAsLTExNzgxNTA0MDAsLTg3MDU2NjQwMCwtODY1Mjk2ZTMsLTc0MDUzNDQwMCwtNzM2NjQ2NDAwLC03MTgwNzA0MDAsLTcxMzY2NzYwMCwtMzY2MzM2MDAsLTIzOTMyODAwLC0zMzY5NjAwLDc1MTY4MDAsMjQ0NTEyMDAsMzc3NTY4MDAsNTU5MDA4MDAsNjkyMDY0MDAsODc5NTUyMDAsMTAwNjU2ZTMsMTE4MTk1MjAwLDEzMjEwNTYwMCwxNTA4NTQ0MDAsMTYzNTU1MjAwLDE4MjMwNGUzLDE5NTYwOTYwMCwyMTM3NTM2MDAsMjI3MDU5MjAwLDI0NTIwMzIwMCwyNTg1MDg4MDAsMjc3MjU3NjAwLDI4OTk1ODQwMCwzMDg3MDcyMDAsMzIxNDA4ZTMsMzQwMTU2ODAwLDM1MzQ2MjQwMCwzNzE2MDY0MDAsMzg0OTEyZTMsNDAzMDU2ZTMsNDE2MzYxNjAwLDQzNDUwNTYwMCw0NDc4MTEyMDAsNDY2NTZlNCw0NzkyNjA4MDAsNDk4MDA5NjAwLDUxMDcxMDQwMCw1Mjk0NTkyMDAsNTQ1MTg0ZTMsNTYwOTA4ODAwLDU3NDIxNDQwMCw1OTIzNTg0MDAsNjA1NjY0ZTMsNjI0NDEyODAwLDYzNzExMzYwMCw2NTM0NDMyMDAsNjY4NTYzMjAwLDY4NzMxMmUzLDcwMDYxNzYwMCw3MTg3NjE2MDAsNzMyMDY3MjAwLDc1MDIxMTIwMCw3NjM1MTY4MDAsNzgxNjYwODAwLDc5NDk2NjQwMCw4MTM3MTUyMDAsODI2NDE2ZTMsODQ1MTY0ODAwLDg1OTY4ZTQsODc2NjE0NDAwLDg4OTkyZTQsOTA2ODU0NDAwLDkyMzE4NGUzLDkzOTUxMzYwMCw5NTI4MTkyMDAsOTcxNTY4ZTMsOTg0MjY4ODAwLDEwMDMwMTc2MDAsMTAxNTcxODQwMCwxMDM0NDY3MjAwLDEwNDcxNjhlMywxMDY1OTE2ODAwLDEwNzkyMjI0MDAsMTA5NzM2NjQwMCwxMTEwNjcyZTMsMTEyODgxNmUzLDExNDIxMjE2MDAsMTE2MDg3MDQwMCwxMTczNTcxMjAwLDExOTIzMmU0LDEyMDY4MzUyMDAsMTIyMzc2OTYwMCwxMjM3MDc1MjAwLDEyNTUyMTkyMDAsMTI3MDMzOTIwMCwxMjg2NjY4ODAwLDEzMDQ4MTI4MDAsMTMxMzg4NDgwMCwxMzM1NjU3NjAwLDEzNDY1NDRlMywxMzY3MTA3MjAwLDEzNzg1OTg0MDAsMTM5ODU1NjgwMCwxNDEwMDQ4ZTMsMTQ2MzI3MDQwMCwxNDcxMTMyODAwLDE0OTQ3MmU0LDE1MDI1ODI0MDAsMTUyNjE2OTYwMCwxNTM0MDMyZTMsMTU1NDU5NTIwMCwxNTY3OTAwODAwLDE1ODYwNDQ4MDAsMTU5OTM1MDQwMCwxNjE3NDk0NDAwLDE2MzA4ZTUsMTY0ODk0NGUzLDE2NjI4NTQ0MDAsMTY4MDM5MzYwMCwxNjkzNjk5MjAwLDE3MTI0NDhlMywxNzI1NzUzNjAwLDE3NDM4OTc2MDAsMTc1NzIwMzIwMCwxNzc1MzQ3MjAwLDE3ODg2NTI4MDAsMTgwNjc5NjgwMCwxODIwMTAyNDAwLDE4MzgyNDY0MDAsMTg1MTU1MmUzLDE4NzAzMDA4MDAsMTg4MzAwMTYwMCwxOTAxNzUwNDAwLDE5MTUwNTZlMywxOTMzMmU1XSxvZmZzZXQ6Wy0xNjk2NSwtMTY5NjUsLTE4ZTMsLTE2OTY1LC0xNDQwMCwtMTY5NjUsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwLC0xNDQwMCwtMTA4MDAsLTE0NDAwLC0xMDgwMCwtMTQ0MDAsLTEwODAwXX0sIkFtZXJpY2EvU2FvX1BhdWxvIjp7CnRpbWU6Wy0xNzY3MjI1NjAwLC0xMjA2OTY4NDAwLC0xMTkxMzY5NjAwLC0xMTc1Mzg1NjAwLC0xMTU5ODMzNjAwLC02MzM4MzA0MDAsLTYyMjA3NjQwMCwtNjAyMjk0NDAwLC01OTE4NGU0LC01NzA3NTg0MDAsLTU2MDIxNzYwMCwtNTM5MTM2ZTMsLTUzMTM2ZTQsLTE5NTQzNjgwMCwtMTg0MjA0ODAwLC0xNTUxNzQ0MDAsLTE1MDA3NjgwMCwtMTI4OTA4ODAwLC0xMjExMzI4MDAsLTk5OTY0ODAwLC04OTU5NjgwMCwtNjg0Mjg4MDAsLTU3OTc0NDAwLDQ5OTczNzYwMCw1MTEyMjg4MDAsNTMwNTgyNDAwLDU0MDI1OTIwMCw1NjIxMTg0MDAsNTcxMTkwNDAwLDU5Mjk2MzIwMCw2MDIwMzUyMDAsNjI0NDEyODAwLDYzNDY5NDQwMCw2NTY0NjcyMDAsNjY2NzQ4ODAwLDY4NzkxNjgwMCw2OTc1OTM2MDAsNzE5OTcxMjAwLDcyODQzODQwMCw3NTA4MTZlMyw3NjE3MDI0MDAsNzgyMjY1NjAwLDc5MzE1MmUzLDgxMzcxNTIwMCw4MjM5OTY4MDAsODQ0NTZlNCw4NTYwNTEyMDAsODc2MDk2ZTMsODg4NzEwNDAwLDkwODA2NGUzLDkxOTU1NTIwMCw5Mzg5MDg4MDAsOTUxNjA5NjAwLDk3MDk2MzIwMCw5ODI0NTQ0MDAsMTAwMzAxNzYwMCwxMDEzOTA0ZTMsMTAzNjI4MTYwMCwxMDQ1MzUzNjAwLDEwNjY1MjE2MDAsMTA3NjgwMzIwMCwxMDk5MzUzNjAwLDExMDg4NTc2MDAsMTEyOTQyMDgwMCwxMTQwMzA3MjAwLDExNjI2ODQ4MDAsMTE3MjM2MTYwMCwxMTkyMzJlNCwxMjAzMjA2NDAwLDEyMjQzNzQ0MDAsMTIzNDY1NmUzLDEyNTU4MjRlMywxMjY2NzEwNDAwLDEyODcyNzM2MDAsMTI5ODE2ZTQsMTMxODcyMzIwMCwxMzMwMjE0NDAwLDEzNTA3Nzc2MDAsMTM2MTA1OTIwMCwxMzgyMjI3MjAwLDEzOTI1MDg4MDAsMTQxMzY3NjgwMCwxNDI0NTYzMjAwLDE0NDUxMjY0MDAsMTQ1NjAxMjgwMCwxNDc2NTc2ZTMsMTQ4NzQ2MjQwMCwxNTA4MDI1NjAwLDE1MTg5MTJlMywxNTQxMjg5NjAwLDE1NTAzNjE2MDAsMTkyNDk4MTIwMF0sb2Zmc2V0OlstMTExODgsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwLC03MjAwLC0xMDgwMCwtNzIwMCwtMTA4MDAsLTcyMDAsLTEwODAwXX0sIkFtZXJpY2EvVG9yb250byI6ewp0aW1lOlstMjM2Njc1NTIwMCwtMTYzMjA4ODgwMCwtMTYxNTE1NDQwMCwtMTYwMTc3MTQwMCwtMTU4MzcxMmUzLC0xNTY3Mzc1MjAwLC0xNTU0NjgxNjAwLC0xNTM0NzE2ZTMsLTE1MjQwODg4MDAsLTE1MDMyNjY0MDAsLTE0OTIzOGU0LC0xNDcxODE2ODAwLC0xNDYwOTMwNDAwLC0xNDQwOTcyZTMsLTE0Mjg4NzZlMywtMTQwOTUyMjQwMCwtMTM5NzQyNjQwMCwtMTM3ODA3MjgwMCwtMTM2NTk3NjgwMCwtMTM0NjYyMzIwMCwtMTMzMzkyMjQwMCwtMTMxNTE3MzYwMCwtMTMwMTg2OGUzLC0xMjgzNzI0ZTMsLTEyNzA0MTg0MDAsLTEyNTIyNzQ0MDAsLTEyMzg5Njg4MDAsLTEyMjA4MjQ4MDAsLTEyMDc1MTkyMDAsLTExODg3NzA0MDAsLTExNzYwNjk2MDAsLTExNTczMjA4MDAsLTExNDQwMTUyMDAsLTExMjU4NzEyMDAsLTExMTI1NjU2MDAsLTEwOTQ0MjE2MDAsLTEwODExMTZlMywtMTA2Mjk3MmUzLC0xMDQ5NjY2NDAwLC0xMDMxNTIyNDAwLC0xMDE4MjE2ODAwLC0xMDAwMDcyODAwLC05ODY3NjcyMDAsLTk2ODAxODQwMCwtOTU1MzE3NjAwLC05MzY1Njg4MDAsLTg4MDIzMjQwMCwtNzY5NDFlNCwtNzY1NDEwNDAwLC03NDcyNjY0MDAsLTczMzk2MDgwMCwtNzE1ODE2ODAwLC03MDI1MTEyMDAsLTY4NDM2NzIwMCwtNjcxMDYxNjAwLC02NTI5MTc2MDAsLTYzNDE2ODgwMCwtNjIwODYzMjAwLC02MDI3MTkyMDAsLTU4OTQxMzYwMCwtNTc2MTA4ZTMsLTU1Nzk2NGUzLC01NDQ2NTg0MDAsLTUyNjUxNDQwMCwtNTEzMjA4ODAwLC00OTUwNjQ4MDAsLTQ4MTc1OTIwMCwtNDYzNjE1MjAwLC00NTAzMDk2MDAsLTQzMTU2MDgwMCwtNDE4MjU1MjAwLC00MDAxMTEyMDAsLTM4NDM4NjQwMCwtMzY4NjYxNjAwLC0zNTI5MzY4MDAsLTMzNzIxMmUzLC0zMjE0ODcyMDAsLTMwNTc2MjQwMCwtMjg5NDMyODAwLC0yNzM3MDhlMywtMjU3OTgzMjAwLC0yNDIyNTg0MDAsLTIyNjUzMzYwMCwtMjEwODA4ODAwLC0xOTUwODRlMywtMTc5MzU5MjAwLC0xNjM2MzQ0MDAsLTE0NzkwOTYwMCwtMTMxNThlNCwtMTE2NDZlNCwtMTAwMTMwNDAwLC04NDQwNTYwMCwtNjg2ODA4MDAsLTUyOTU2ZTMsLTM3MjMxMjAwLC0yMTUwNjQwMCwtNTc4MTYwMCw5OTQzMjAwLDI1NjY4ZTMsNDEzOTI4MDAsNTc3MjI0MDAsNzM0NDcyMDAsODkxNzJlMywxMDQ4OTY4MDAsMTIwNjIxNjAwLDEzNjM0NjQwMCwxNTIwNzEyMDAsMTY3Nzk2ZTMsMTgzNTIwODAwLDE5OTI0NTYwMCwyMTU1NzUyMDAsMjMwNjk1MjAwLDI0NzAyNDgwMCwyNjI3NDk2MDAsMjc4NDc0NDAwLDI5NDE5OTIwMCwzMDk5MjRlMywzMjU2NDg4MDAsMzQxMzczNjAwLDM1NzA5ODQwMCwzNzI4MjMyMDAsMzg4NTQ4ZTMsNDA0ODc3NjAwLDQxOTk5NzYwMCw0MzYzMjcyMDAsNDUyMDUyZTMsNDY3Nzc2ODAwLDQ4MzUwMTYwMCw0OTkyMjY0MDAsNTE0OTUxMjAwLDUzMDY3NmUzLDU0NDU4NjQwMCw1NjIxMjU2MDAsNTc2MDM2ZTMsNTk0MThlNCw2MDc0ODU2MDAsNjI1NjI5NjAwLDYzODkzNTIwMCw2NTcwNzkyMDAsNjcwOTg5NjAwLDY4ODUyODgwMCw3MDI0MzkyMDAsNzE5OTc4NDAwLDczMzg4ODgwMCw3NTIwMzI4MDAsNzY1MzM4NDAwLDc4MzQ4MjQwMCw3OTY3ODhlMyw4MTQ5MzJlMyw4Mjg4NDI0MDAsODQ2MzgxNjAwLDg2MDI5MmUzLDg3NzgzMTIwMCw4OTE3NDE2MDAsOTA5MjgwODAwLDkyMzE5MTIwMCw5NDEzMzUyMDAsOTU0NjQwODAwLDk3Mjc4NDgwMCw5ODYwOTA0MDAsMTAwNDIzNDQwMCwxMDE4MTQ0ODAwLDEwMzU2ODRlMywxMDQ5NTk0NDAwLDEwNjcxMzM2MDAsMTA4MTA0NGUzLDEwOTkxODhlMywxMTEyNDkzNjAwLDExMzA2Mzc2MDAsMTE0Mzk0MzIwMCwxMTYyMDg3MjAwLDExNzM1Nzg0MDAsMTE5NDE0MTYwMCwxMjA1MDI4ZTMsMTIyNTU5MTIwMCwxMjM2NDc3NjAwLDEyNTcwNDA4MDAsMTI2ODUzMmUzLDEyODkwOTUyMDAsMTI5OTk4MTYwMCwxMzIwNTQ0ODAwLDEzMzE0MzEyMDAsMTM1MTk5NDQwMCwxMzYyODgwODAwLDEzODM0NDRlMywxMzk0MzMwNDAwLDE0MTQ4OTM2MDAsMTQyNTc4ZTQsMTQ0NjM0MzIwMCwxNDU3ODM0NDAwLDE0NzgzOTc2MDAsMTQ4OTI4NGUzLDE1MDk4NDcyMDAsMTUyMDczMzYwMCwxNTQxMjk2ODAwLDE1NTIxODMyMDAsMTU3Mjc0NjQwMCwxNTgzNjMyODAwLDE2MDQxOTZlMywxNjE1Njg3MjAwLDE2MzYyNTA0MDAsMTY0NzEzNjgwMCwxNjY3N2U1LDE2Nzg1ODY0MDAsMTY5OTE0OTYwMCwxNzEwMDM2ZTMsMTczMDU5OTIwMCwxNzQxNDg1NjAwLDE3NjIwNDg4MDAsMTc3MjkzNTIwMCwxNzkzNDk4NDAwLDE4MDQ5ODk2MDAsMTgyNTU1MjgwMCwxODM2NDM5MjAwLDE4NTcwMDI0MDAsMTg2Nzg4ODgwMCwxODg4NDUyZTMsMTg5OTMzODQwMCwxOTE5OTAxNjAwLDE5MzA3ODhlM10sCm9mZnNldDpbLTE5MDUyLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE0NDAwLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTMsLTE0NDAwLC0xOGUzLC0xNDQwMCwtMThlMywtMTQ0MDAsLTE4ZTNdfSwiQW1lcmljYS9WYW5jb3V2ZXIiOnsKdGltZTpbLTI3MTM5MTA0MDAsLTE2MzIwODg4MDAsLTE2MTUxNTQ0MDAsLTg4MDIzNmUzLC03Njk0MjA4MDAsLTc2NTQxMDQwMCwtNzQ3MjY2NDAwLC03MzM5NjA4MDAsLTcxNTgxNjgwMCwtNzAyNTExMjAwLC02ODQzNjcyMDAsLTY3MTA2MTYwMCwtNjUyOTE3NjAwLC02Mzk2MTJlMywtNjIwODYzMjAwLC02MDgxNjI0MDAsLTU4OTQxMzYwMCwtNTc2MTA4ZTMsLTU1Nzk2NGUzLC01NDQ2NTg0MDAsLTUyNjUxNDQwMCwtNTEzMjA4ODAwLC00OTUwNjQ4MDAsLTQ4MTc1OTIwMCwtNDYzNjE1MjAwLC00NTAzMDk2MDAsLTQzMTU2MDgwMCwtNDE4MjU1MjAwLC00MDAxMTEyMDAsLTM4NjgwNTYwMCwtMzY4NjYxNjAwLC0zNTUzNTZlMywtMzM3MjEyZTMsLTMyMzkwNjQwMCwtMzA1NzYyNDAwLC0yOTI0NTY4MDAsLTI3MzcwOGUzLC0yNjEwMDcyMDAsLTI0MjI1ODQwMCwtMjI2NTMzNjAwLC0yMTA4MDg4MDAsLTE5NTA4NGUzLC0xNzkzNTkyMDAsLTE2MzYzNDQwMCwtMTQ3OTA5NjAwLC0xMzE1OGU0LC0xMTY0NmU0LC0xMDAxMzA0MDAsLTg0NDA1NjAwLC02ODY4MDgwMCwtNTI5NTZlMywtMzcyMzEyMDAsLTIxNTA2NDAwLC01NzgxNjAwLDk5NDMyMDAsMjU2NjhlMyw0MTM5MjgwMCw1NzcyMjQwMCw3MzQ0NzIwMCw4OTE3MmUzLDEwNDg5NjgwMCwxMjA2MjE2MDAsMTM2MzQ2NDAwLDE1MjA3MTIwMCwxNjc3OTZlMywxODM1MjA4MDAsMTk5MjQ1NjAwLDIxNTU3NTIwMCwyMzA2OTUyMDAsMjQ3MDI0ODAwLDI2Mjc0OTYwMCwyNzg0NzQ0MDAsMjk0MTk5MjAwLDMwOTkyNGUzLDMyNTY0ODgwMCwzNDEzNzM2MDAsMzU3MDk4NDAwLDM3MjgyMzIwMCwzODg1NDhlMyw0MDQ4Nzc2MDAsNDE5OTk3NjAwLDQzNjMyNzIwMCw0NTIwNTJlMyw0Njc3NzY4MDAsNDgzNTAxNjAwLDQ5OTIyNjQwMCw1MTQ5NTEyMDAsNTMwNjc2ZTMsNTQ0NTg2NDAwLDU2MjEyNTYwMCw1NzYwMzZlMyw1OTQxOGU0LDYwNzQ4NTYwMCw2MjU2Mjk2MDAsNjM4OTM1MjAwLDY1NzA3OTIwMCw2NzA5ODk2MDAsNjg4NTI4ODAwLDcwMjQzOTIwMCw3MTk5Nzg0MDAsNzMzODg4ODAwLDc1MjAzMjgwMCw3NjUzMzg0MDAsNzgzNDgyNDAwLDc5Njc4OGUzLDgxNDkzMmUzLDgyODg0MjQwMCw4NDYzODE2MDAsODYwMjkyZTMsODc3ODMxMjAwLDg5MTc0MTYwMCw5MDkyODA4MDAsOTIzMTkxMjAwLDk0MTMzNTIwMCw5NTQ2NDA4MDAsOTcyNzg0ODAwLDk4NjA5MDQwMCwxMDA0MjM0NDAwLDEwMTgxNDQ4MDAsMTAzNTY4NGUzLDEwNDk1OTQ0MDAsMTA2NzEzMzYwMCwxMDgxMDQ0ZTMsMTA5OTE4OGUzLDExMTI0OTM2MDAsMTEzMDYzNzYwMCwxMTQzOTQzMjAwLDExNjIwODcyMDAsMTE3MzU3ODQwMCwxMTk0MTQxNjAwLDEyMDUwMjhlMywxMjI1NTkxMjAwLDEyMzY0Nzc2MDAsMTI1NzA0MDgwMCwxMjY4NTMyZTMsMTI4OTA5NTIwMCwxMjk5OTgxNjAwLDEzMjA1NDQ4MDAsMTMzMTQzMTIwMCwxMzUxOTk0NDAwLDEzNjI4ODA4MDAsMTM4MzQ0NGUzLDEzOTQzMzA0MDAsMTQxNDg5MzYwMCwxNDI1NzhlNCwxNDQ2MzQzMjAwLDE0NTc4MzQ0MDAsMTQ3ODM5NzYwMCwxNDg5Mjg0ZTMsMTUwOTg0NzIwMCwxNTIwNzMzNjAwLDE1NDEyOTY4MDAsMTU1MjE4MzIwMCwxNTcyNzQ2NDAwLDE1ODM2MzI4MDAsMTYwNDE5NmUzLDE2MTU2ODcyMDAsMTYzNjI1MDQwMCwxNjQ3MTM2ODAwLDE2Njc3ZTUsMTY3ODU4NjQwMCwxNjk5MTQ5NjAwLDE3MTAwMzZlMywxNzMwNTk5MjAwLDE3NDE0ODU2MDAsMTc2MjA0ODgwMCwxNzcyOTM1MjAwLDE3OTM0OTg0MDAsMTgwNDk4OTYwMCwxODI1NTUyODAwLDE4MzY0MzkyMDAsMTg1NzAwMjQwMCwxODY3ODg4ODAwLDE4ODg0NTJlMywxODk5MzM4NDAwLDE5MTk5MDE2MDAsMTkzMDc4OGUzXSwKb2Zmc2V0OlstMjk1NDgsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMCwtMjUyMDAsLTI4ODAwLC0yNTIwMCwtMjg4MDAsLTI1MjAwLC0yODgwMF19LCJBc2lhL0FsbWF0eSI6e3RpbWU6Wy0xNDQxMTUyZTMsLTEyNDc1Mjk2MDAsMzU0OTMxMjAwLDM3MDc0MjQwMCwzODY0NjcyMDAsNDAyMjc4NDAwLDQxODAwMzIwMCw0MzM4MTQ0MDAsNDQ5NjI1NjAwLDQ2NTM2MTIwMCw0ODEwODI0MDAsNDk2ODEwODAwLDUxMjUzMmUzLDUyODI2MDQwMCw1NDM5ODE2MDAsNTU5NzFlNCw1NzU0MzEyMDAsNTkxMTU5NjAwLDYwNjg4MDgwMCw2MjI2MDkyMDAsNjM4MzMwNDAwLDY1NDY2MzYwMCw2NzAzODQ4MDAsNjg2MTEzMjAwLDY5NTc4NjQwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDk1NDAzNmUzLDk3Mjc4ODQwMCw5ODU0ODU2MDAsMTAwNDIzOGUzLDEwMTc1NGU0LDEwMzU2ODc2MDAsMTA0ODk4OTYwMCwxMDY3MTM3MjAwLDEwODA0MzkyMDAsMTA5OTE5MTYwMCwxNzA5MjUxMjAwLDE5MjUwMWU0XSxvZmZzZXQ6WzE4NDY4LDE4ZTMsMjE2MDAsMjUyMDAsMjE2MDAsMjUyMDAsMjE2MDAsMjUyMDAsMjE2MDAsMjUyMDAsMjE2MDAsMjUyMDAsMjE2MDAsMjUyMDAsMjE2MDAsMjUyMDAsMjE2MDAsMjUyMDAsMjE2MDAsMjUyMDAsMjE2MDAsMjUyMDAsMjE2MDAsMjE2MDAsMThlMywyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwyNTIwMCwyMTYwMCwxOGUzXX0sIkFzaWEvQXNoa2hhYmFkIjp7dGltZTpbLTE0NDExNTJlMywtMTI0NzUyOTYwMCwzNTQ5MzEyMDAsMzcwNzQyNDAwLDM4NjQ2NzIwMCw0MDIyNzg0MDAsNDE4MDAzMjAwLDQzMzgxNDQwMCw0NDk2MjU2MDAsNDY1MzYxMjAwLDQ4MTA4MjQwMCw0OTY4MTA4MDAsNTEyNTMyZTMsNTI4MjYwNDAwLDU0Mzk4MTYwMCw1NTk3MWU0LDU3NTQzMTIwMCw1OTExNTk2MDAsNjA2ODgwODAwLDYyMjYwOTIwMCw2MzgzMzA0MDAsNjU0NjYzNjAwLDY3MDM4NDgwMCw2ODYxMTMyMDAsNjk1Nzg2NDAwLDE5MjUwMWU0XSxvZmZzZXQ6WzE0MDEyLDE0NDAwLDE4ZTMsMjE2MDAsMThlMywyMTYwMCwxOGUzLDIxNjAwLDE4ZTMsMjE2MDAsMThlMywyMTYwMCwxOGUzLDIxNjAwLDE4ZTMsMjE2MDAsMThlMywyMTYwMCwxOGUzLDIxNjAwLDE4ZTMsMjE2MDAsMThlMywxOGUzLDE0NDAwLDE4ZTNdfSwiQXNpYS9CYWhyYWluIjp7dGltZTpbLTg5Nzg2ODgwMCwtODIwNTQwODAwLDc2MjA0ODAwLDE5MjUwMDI4MDBdLG9mZnNldDpbMTIxNDAsMTI2MDAsMTQ0MDAsMTA4MDBdfSwiQXNpYS9CYW5na29rIjp7dGltZTpbLTI4NDAxNDA4MDAsLTE1NzAwNjA4MDAsMTkyNTAxNzIwMF0sb2Zmc2V0OlsyNDEyNCwyNDEyNCwyNTIwMF19LCJBc2lhL0Nob25ncWluZyI6ewp0aW1lOlstMjE3NzQ1MjgwMCwtMTYwMDY0NjQwMCwtMTU4NTg3MmUzLC05MzM2Mzg0MDAsLTkyMjA2MDgwMCwtOTA4ODQxNjAwLC04ODg3OTY4MDAsLTg4MTAyMDgwMCwtNzY3ODM2ODAwLC03NDU4MDQ4MDAsLTczMzc5NTIwMCwtNzE2ODYwODAwLC02OTk1ODA4MDAsLTY4Mzg1NmUzLC02NzA2MzY4MDAsLTY1MjMyZTQsLTY0OTk4NzIwMCw1MTU1NTZlMyw1MjcwNDcyMDAsNTQ1MTkxMjAwLDU1ODQ5NjgwMCw1NzcyNDU2MDAsNTg5OTQ2NDAwLDYwODY5NTIwMCw2MjIwMDA4MDAsNjQwMTQ0ODAwLDY1MzQ1MDQwMCw2NzE1OTQ0MDAsNjg0OWU1LDE5MjUwMjA4MDBdLG9mZnNldDpbMjkxNDMsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDBdfSwiQXNpYS9Db2xvbWJvIjp7dGltZTpbLTI4NDAxNDA4MDAsLTIwMTk2ODY0MDAsLTg4MzI2NzIwMCwtODYyNjE3NjAwLC03NjQwMjhlMyw4MzI5ODI0MDAsODQ2Mjg5ODAwLDExNDUwNjFlMywxOTI1MDExODAwXSxvZmZzZXQ6WzE5MTY0LDE5MTcyLDE5ODAwLDIxNjAwLDIzNDAwLDE5ODAwLDIzNDAwLDIxNjAwLDE5ODAwXX0sIkFzaWEvRGhha2EiOnt0aW1lOlstMjUyNDUyMTYwMCwtODkxNTYxNjAwLC04NzIwMzUyMDAsLTg2MjYxNzYwMCwtNTc2MTE1MjAwLDEyNDU0NTI0MDAsMTI2MjMwMzk5OSwxOTI1MDEzNjAwXSxvZmZzZXQ6WzIxNzAwLDIxMjAwLDIzNDAwLDE5ODAwLDIzNDAwLDIxNjAwLDI1MjAwLDIxNjAwXX0sIkFzaWEvRHViYWkiOnt0aW1lOlstMTU3NzkyMzIwMCwxOTI1MDA2NDAwXSxvZmZzZXQ6WzEzMjcyLDE0NDAwXX0sIkFzaWEvSG9fQ2hpX01pbmgiOnt0aW1lOlstMjAwNDA0OGUzLC0xODUxNTUyZTMsLTg1MjA4MDQwMCwtNzgyNjE0ODAwLC03Njc4MzY4MDAsLTcxODA3MDQwMCwtNDU3NzQzNjAwLC0zMTU2MjI4MDAsMTcxODQ5NjAwLDE5MjUwMTcyMDBdLG9mZnNldDpbMjU1OTAsMjU1OTAsMjUyMDAsMjg4MDAsMzI0MDAsMjUyMDAsMjg4MDAsMjUyMDAsMjg4MDAsMjUyMDBdfSwiQXNpYS9Ib25nX0tvbmciOnt0aW1lOlstMjA1NjY2MzM5OCwtOTAwODgyZTMsLTg5MTU0NzIwMCwtODg0MjE3NjAwLC03NjExNzY4MDAsLTc0Nzg3ODQwMCwtNzI4NTA4NjAwLC03MTcwMjFlMywtNjk3MDU5ZTMsLTY4Mzc1N2UzLC02NjgwMjg2MDAsLTY1NDcyNjYwMCwtNjM2NTc5ZTMsLTYyMzI3N2UzLC02MDUxMjk0MDAsLTU5MTgyNzQwMCwtNTczNjc5ODAwLC01NTk3NzNlMywtNTQxNjI1NDAwLC01MjgzMjM0MDAsLTUxMDE3OTQwMCwtNDk4MDgzNDAwLC00Nzg3Mjk4MDAsLTQ2NjYzMzgwMCwtNDQ2Njc1NDAwLC00MzUxODQyMDAsLTQxNTIyNTgwMCwtNDAzMTI5ODAwLC0zODM3NzYyMDAsLTM3MTY4MDIwMCwtMzUyMzI2NjAwLC0zNDAyMzA2MDAsLTMyMDg3N2UzLC0zMDg3ODFlMywtMjg4ODIyNjAwLC0yNzczMzE0MDAsLTI1NzM3M2UzLC0yNDU4ODE4MDAsLTIyNTkyMzQwMCwtMjEzODI3NDAwLC0xOTQ0NzM4MDAsLTE4MjM3NzgwMCwtMTYzMDI0MjAwLC0xNDg1MDllMywtMTMyNzg0MjAwLC0xMTcwNTk0MDAsLTEwMTMzNDYwMCwtODU2MDk4MDAsLTY5MjgwMjAwLC01MzU1NTQwMCwtMzc4MzA2MDAsLTIyMTA1ODAwLC02MzgxZTMsOTM0MzgwMCwyNTA2ODYwMCw0MDc5MzQwMCw1NjUxODIwMCw3MjI0M2UzLDg4NTcyNjAwLDEwNDI5NzQwMCwxMjAwMjIyMDAsMTI2MDcwMjAwLDE1MTQ3MTgwMCwxNjcxOTY2MDAsMTgyOTIxNDAwLDE5ODY0NjIwMCwyMTQzNzFlMywyOTU0MTQyMDAsMzA5MzI0NjAwLDE5MjUwMjA4MDBdLG9mZnNldDpbMjc0MDIsMjg4MDAsMzI0MDAsMzA2MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDBdfSwiQXNpYS9KYWthcnRhIjp7dGltZTpbLTMyMzEyNzM2MDAsLTE0NTE2OTM1NjgsLTExNzI4OGU0LC04NzY2MTQ0MDAsLTc2NjAyMjQwMCwtNjgzODU2ZTMsLTYyMDc4NGUzLC0xODkzODg4MDAsMTkyNTAxNzIwMF0sb2Zmc2V0OlsyNTYzMiwyNTYzMiwyNjQwMCwyN2UzLDMyNDAwLDI3ZTMsMjg4MDAsMjdlMywyNTIwMF19LCJBc2lhL0plcnVzYWxlbSI6ewp0aW1lOlstMjg0MDE0MDgwMCwtMTY0MDk5NTIwMCwtOTMzNjMxMjAwLC05MjMwODY4MDAsLTkxOTAyOTYwMCwtODU3MzM2NDAwLC04NDQyOTM2MDAsLTgyNTgwMDQwMCwtODEyNjcxMjAwLC03OTQxNzhlMywtNzc5ODM5MjAwLC03NjI2NDJlMywtNzQ4MzAzMjAwLC03MzExMDZlMywtNjgxOTQ4ZTMsLTY3MzIxNDQwMCwtNjY3OTQ3NjAwLC02NTIzMTI4MDAsLTYzNjQxMTYwMCwtNjIyMDcyODAwLC02MDg5MzY0MDAsLTU5MTgzMjgwMCwtNTcyNDc1NjAwLC01NTg1Njg4MDAsLTU0Mjg0MDQwMCwtNTI3NzI0ZTMsLTUxNDQxNDgwMCwtNDkwODMxMjAwLC00ODI5NjUyMDAsLTQ1OTM4MTYwMCwtNDUxNTE1NjAwLC00Mjg1MzY4MDAsLTQxODI1MTYwMCwtNDAwMTExMjAwLC0zODc0MDY4MDAsMTQyMzg3MjAwLDE1MDg1NDQwMCwxNjcxODRlMywxNzg2NzUyMDAsMzM0MTA4ODAwLDMzNzc0MTIwMCw0NTI2NDk2MDAsNDYyMzNlNCw0ODIyODQ4MDAsNDk0MzgwODAwLDUxNjc1ODQwMCw1MjY0MzUyMDAsNTQ1NDQzMjAwLDU1ODQ4OTYwMCw1NzY2MzM2MDAsNTg5MzM0NDAwLDYwOTg5NzYwMCw2MjA3ODRlMyw2MzgzMjMyMDAsNjUxNjI4ODAwLDY2OTc3MjgwMCw2ODM2ODMyMDAsNzAxODI3MjAwLDcxNTczNzYwMCw3MzM3MDg4MDAsNzQ3MTg3MjAwLDc2NTE1ODQwMCw3NzgwMzJlMyw3OTY2MDhlMyw4MTAwODY0MDAsODI2ODQ4ZTMsODQyODMyZTMsODU4OTAyNDAwLDg3NDE5NTIwMCw4OTAzNTJlMyw5MDUwNGU0LDkyMzAxODQwMCw5MzYzMjRlMyw5NTU2Nzc2MDAsOTcwNzk0ZTMsOTg2Nzc4ZTMsMTAwMTI5MzIwMCwxMDE3MzYzNjAwLDEwMzM5NTI0MDAsMTA0ODgxMzIwMCwxMDY1MTQyODAwLDEwODEyOTk2MDAsMTA5NTgxNDgwMCwxMTEyMzIwODAwLDExMjg4MjMyMDAsMTE0Mzc3MDQwMCwxMTU5NjY4ZTMsMTE3NTIyZTQsMTE4OTkwOGUzLDEyMDY2Njk2MDAsMTIyMzE3MmUzLDEyMzgxMTkyMDAsMTI1NDAxNjgwMCwxMjY5NTY4ODAwLDEyODQyNTY4MDAsMTMwMTYyMzIwMCwxMzE3NTIwODAwLDEzMzMwNzI4MDAsMTM0ODM2NTYwMCwxMzY0NTIyNDAwLDEzODI4MzkyMDAsMTM5NTk3MmUzLDE0MTQyODg4MDAsMTQyNzQyMTYwMCwxNDQ1NzM4NDAwLDE0NTg4NzEyMDAsMTQ3Nzc5MjgwMCwxNDkwMzIwODAwLDE1MDkyNDI0MDAsMTUyMTc3MDQwMCwxNTQwNjkyZTMsMTU1MzgyNDgwMCwxNTcyMTQxNjAwLDE1ODUyNzQ0MDAsMTYwMzU5MTIwMCwxNjE2NzI0ZTMsMTYzNTY0NTYwMCwxNjQ4MTczNjAwLDE2NjcwOTUyMDAsMTY3OTYyMzIwMCwxNjk4NTQ0ODAwLDE3MTE2Nzc2MDAsMTcyOTk5NDQwMCwxNzQzMTI3MjAwLDE3NjE0NDRlMywxNzc0NTc2ODAwLDE3OTI4OTM2MDAsMTgwNjAyNjQwMCwxODI0OTQ4ZTMsMTgzNzQ3NmUzLDE4NTYzOTc2MDAsMTg2ODkyNTYwMCwxODg3ODQ3MjAwLDE5MDA5OGU0LDE5MTkyOTY4MDAsMTkzMjQyOTYwMF0sb2Zmc2V0Ols4NDU0LDg0NDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxNDQwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMF19LCJBc2lhL0thYnVsIjp7dGltZTpbLTI1MjQ1MjE2MDAsLTc4ODkxODQwMCwxOTI1MDA4MjAwXSxvZmZzZXQ6WzE2NjA4LDE0NDAwLDE2MjAwXX0sIkFzaWEvS2FyYWNoaSI6e3RpbWU6Wy0xOTg4MTUwNDAwLC04NjI2MTc2MDAsLTc2NDEyMTYwMCwtNTc2MTE1MjAwLDM4NzkzNjAwLDEwMTgxMzc2MDAsMTAzMzg2MjQwMCwxMjEyMjc4NDAwLDEyMjU0OTc2MDAsMTIzOTc1MzYwMCwxMjU3MDMzNjAwLDE5MjUwMWU0XSxvZmZzZXQ6WzE2MDkyLDE5ODAwLDIzNDAwLDE5ODAwLDE4ZTMsMThlMywyMTYwMCwxOGUzLDIxNjAwLDE4ZTMsMjE2MDAsMThlM119LCJBc2lhL0thdGhtYW5kdSI6e3RpbWU6Wy0xNTc3OTIzMjAwLDUwNDkyMTYwMCwxOTI1MDEyNzAwXSxvZmZzZXQ6WzIwNDc2LDE5ODAwLDIwNzAwXX0sIkFzaWEvS29sa2F0YSI6e3RpbWU6Wy0zNjQ1MjE2ZTMsLTMxNTU2NzM2MDAsLTIwMTk2ODY0MDAsLTg5MTU2MTYwMCwtODcyMDM1MjAwLC04NjI2MTc2MDAsLTc2NDEyMTYwMCwxOTI1MDExODAwXSxvZmZzZXQ6WzIxMjA4LDIxMjAwLDE5MjcwLDE5ODAwLDIzNDAwLDE5ODAwLDIzNDAwLDE5ODAwXX0sIkFzaWEvS3VhbGFfTHVtcHVyIjp7dGltZTpbLTIxNzc0NTI4MDAsLTIwMzgxNzZlMywtMTE2NzYwOTYwMCwtMTA3MzAwMTYwMCwtODk0MTUzNjAwLC04Nzk2Mzg0MDAsLTc2Njk3MjgwMCwzNzg2ODk0MDAsMTkyNTAyMDgwMF0sb2Zmc2V0OlsyNDQwNiwyNDkyNSwyNTIwMCwyNjQwMCwyNjQwMCwyN2UzLDMyNDAwLDI3ZTMsMjg4MDBdfSwiQXNpYS9LdXdhaXQiOnt0aW1lOlstNjMxMTUyZTMsMTkyNTAwMjgwMF0sb2Zmc2V0OlsxMTUxNiwxMDgwMF19LCJBc2lhL01hbmlsYSI6ewp0aW1lOlstMzk0NDY3ODQwMCwtMjIxOTA1NDE2OCwtMTA0NjY0OTYwMCwtMTA0MDA4MzIwMCwtODg0OTk1MjAwLC04Nzk5ODRlMywtNzgzNTYxNjAwLC03NjAwNjA4MDAsLTQ5NjE5NTIwMCwtNDkxNTI5NjAwLDIyODM1NTIwMCwyNDM3MzQ0MDAsNjQzMjQ4ZTMsNjQ5MjA5NjAwLDE5MjUwMjA4MDBdLG9mZnNldDpbLTU3MzY4LDI5MDMyLDI4ODAwLDMyNDAwLDI4ODAwLDMyNDAwLDMyNDAwLDMyNDAwLDI4ODAwLDMyNDAwLDI4ODAwLDMyNDAwLDI4ODAwLDMyNDAwLDI4ODAwXX0sIkFzaWEvTXVzY2F0Ijp7dGltZTpbLTE1Nzc5MjMyMDAsMTkyNTAwNjQwMF0sb2Zmc2V0OlsxNDA2NCwxNDQwMF19LCJBc2lhL05pY29zaWEiOnt0aW1lOlstMTUxODkxMmUzLDE2NjU3OTIwMCwxODIzMDRlMywyMDA5NjY0MDAsMjEzODRlNCwyMjg4NzM2MDAsMjQzOTkzNjAwLDI2MDMyMzIwMCwyNzYxMzQ0MDAsMjkxNzcyODAwLDMwNzQ5NzYwMCwzMjM4MjcyMDAsMzM4OTQ3MjAwLDM1NDY3MmUzLDM3MDM5NjgwMCwzODYxMjE2MDAsNDAxODQ2NDAwLDQxNzU3MTIwMCw0MzMyOTZlMyw0NDkwMjA4MDAsNDY1MzUwNDAwLDQ4MTA3NTIwMCw0OTY4ZTUsNTEyNTI0ODAwLDUyODI0OTYwMCw1NDM5NzQ0MDAsNTU5Njk5MjAwLDU3NTQyNGUzLDU5MTE0ODgwMCw2MDY4NzM2MDAsNjIyNTk4NDAwLDYzODMyMzIwMCw2NTQ2NTI4MDAsNjcwMzc3NjAwLDY4NjEwMjQwMCw3MDE4MjcyMDAsNzE3NTUyZTMsNzMzMjc2ODAwLDc0OTAwMTYwMCw3NjQ3MjY0MDAsNzgwNDUxMjAwLDc5NjE3NmUzLDgxMTkwMDgwMCw4MjgyMzA0MDAsODQzOTU1MjAwLDg1OTY4ZTQsODc1NDA0ODAwLDg5MTEyOTYwMCw5MDkyODhlMyw5MjI1OWU0LDk0MTM0MjQwMCw5NTQwMzk2MDAsOTcyNzkyZTMsOTg1NDg5MjAwLDEwMDQyNDE2MDAsMTAxNzU0MzYwMCwxMDM1NjkxMjAwLDEwNDg5OTMyMDAsMTA2NzE0MDgwMCwxMDgwNDQyODAwLDEwOTkxOTUyMDAsMTExMTg5MjQwMCwxMTMwNjQ0ODAwLDExNDMzNDJlMywxMTYyMDk0NDAwLDExNzQ3OTE2MDAsMTE5MzU0NGUzLDEyMDY4NDZlMywxMjI0OTkzNjAwLDEyMzgyOTU2MDAsMTI1NjQ0MzIwMCwxMjY5NzQ1MjAwLDEyODg0OTc2MDAsMTMwMTE5NDgwMCwxMzE5OTQ3MjAwLDEzMzI2NDQ0MDAsMTM1MTM5NjgwMCwxMzY0Njk4ODAwLDEzODI4NDY0MDAsMTM5NjE0ODQwMCwxNDE0Mjk2ZTMsMTQyNzU5OGUzLDE0NDU3NDU2MDAsMTQ1OTA0NzYwMCwxNDc3OGU1LDE0OTA0OTcyMDAsMTUwOTI0OTYwMCwxNTIxOTQ2ODAwLDE1NDA2OTkyMDAsMTU1NDAwMTIwMCwxNTcyMTQ4ODAwLDE1ODU0NTA4MDAsMTYwMzU5ODQwMCwxNjE2OTAwNDAwLDE2MzU2NTI4MDAsMTY0ODM1ZTQsMTY2NzEwMjQwMCwxNjc5Nzk5NjAwLDE2OTg1NTJlMywxNzExODU0ZTMsMTczMDAwMTYwMCwxNzQzMzAzNjAwLDE3NjE0NTEyMDAsMTc3NDc1MzIwMCwxNzkyOTAwODAwLDE4MDYyMDI4MDAsMTgyNDk1NTIwMCwxODM3NjUyNDAwLDE4NTY0MDQ4MDAsMTg2OTEwMmUzLDE4ODc4NTQ0MDAsMTkwMTE1NjQwMCwxOTE5MzA0ZTMsMTkzMjYwNmUzXSxvZmZzZXQ6WzgwMDgsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDBdfSwiQXNpYS9RYXRhciI6e3RpbWU6Wy0xNTc3OTIzMjAwLDc2MjA0ODAwLDE5MjUwMDI4MDBdLG9mZnNldDpbMTIzNjgsMTQ0MDAsMTA4MDBdfSwiQXNpYS9SaXlhZGgiOnt0aW1lOlstNzE5NjI1NjAwLDE5MjUwMDI4MDBdLG9mZnNldDpbMTEyMTIsMTA4MDBdfSwiQXNpYS9TZW91bCI6e3RpbWU6Wy0xOTQ4NzUyZTMsLTE4MzAzODRlMywtNzY3MzE4NDAwLC02ODExNzc2MDAsLTY3MjE5MmUzLC02NTQ3MzkyMDAsLTY0MDgyODgwMCwtNjIzMzc2ZTMsLTYwOTM3OTIwMCwtNTg4ODE2ZTMsLTU3NzkyOTYwMCwtNDk4MDk2ZTMsLTQ2MjY3MmUzLC00NTE2OTkyMDAsLTQyOTc1MzYwMCwtNDE4MjYyNDAwLC0zOTk1MTM2MDAsLTM4NzQxNzYwMCwtMzY4MDY0ZTMsLTM1NTk2OGUzLC0zMzY2MTQ0MDAsLTMyNDUxODQwMCwtMzA1MTY0ODAwLC0yOTMwNjg4MDAsLTI2NDkwMjQwMCw1NDc2MTA0MDAsNTYwOTE5NjAwLDU3OTA2ZTQsNTkyMzY5MjAwLDE5MjUwMjQ0MDBdLG9mZnNldDpbMzA0NzIsMzA2MDAsMzI0MDAsMzI0MDAsMzZlMywzMjQwMCwzNmUzLDMyNDAwLDM2ZTMsMzI0MDAsMzZlMywzMjQwMCwzMDYwMCwzNDIwMCwzMDYwMCwzNDIwMCwzMDYwMCwzNDIwMCwzMDYwMCwzNDIwMCwzMDYwMCwzNDIwMCwzMDYwMCwzNDIwMCwzMDYwMCwzMjQwMCwzNmUzLDMyNDAwLDM2ZTMsMzI0MDBdfSwiQXNpYS9TaGFuZ2hhaSI6ewp0aW1lOlstMjE3NzQ1MjgwMCwtMTYwMDY0NjQwMCwtMTU4NTg3MmUzLC05MzM2Mzg0MDAsLTkyMjA2MDgwMCwtOTA4ODQxNjAwLC04ODg3OTY4MDAsLTg4MTAyMDgwMCwtNzY3ODM2ODAwLC03NDU4MDQ4MDAsLTczMzc5NTIwMCwtNzE2ODYwODAwLC02OTk1ODA4MDAsLTY4Mzg1NmUzLC02NzA2MzY4MDAsLTY1MjMyZTQsLTY0OTk4NzIwMCw1MTU1NTZlMyw1MjcwNDcyMDAsNTQ1MTkxMjAwLDU1ODQ5NjgwMCw1NzcyNDU2MDAsNTg5OTQ2NDAwLDYwODY5NTIwMCw2MjIwMDA4MDAsNjQwMTQ0ODAwLDY1MzQ1MDQwMCw2NzE1OTQ0MDAsNjg0OWU1LDE5MjUwMjA4MDBdLG9mZnNldDpbMjkxNDMsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDBdfSwiQXNpYS9TaW5nYXBvcmUiOnt0aW1lOlstMjE3NzQ1MjgwMCwtMjAzODE3NmUzLC0xMTY3NjA5NjAwLC0xMDczMDAxNjAwLC04OTQxNTM2MDAsLTg3OTYzODQwMCwtNzY2OTcyODAwLDM3ODY4OTQwMCwxOTI1MDIwODAwXSxvZmZzZXQ6WzI0OTI1LDI0OTI1LDI1MjAwLDI2NDAwLDI2NDAwLDI3ZTMsMzI0MDAsMjdlMywyODgwMF19LCJBc2lhL1RhaXBlaSI6e3RpbWU6Wy0yMzM1MjE5MjAwLC0xMDE3NzkyZTMsLTc2NjE5MTYwMCwtNzQ1ODA0ODAwLC03MzM3OTUyMDAsLTcxNjg2MDgwMCwtNjk5NTgwODAwLC02ODM4NTZlMywtNjcwNjM2ODAwLC02NTIzMmU0LC02MzkxMDA4MDAsLTYyMDc4NGUzLC02MDc1NjQ4MDAsLTU4OTI0OGUzLC01NzYwMjg4MDAsLTU2Mjg5NmUzLC01NDE3MjhlMywtNTI4NjgxNjAwLC01MTAxOTJlMywtNDk3MTQ1NjAwLC00Nzg2NTZlMywtNDY1NjA5NjAwLC00NDk3OTg0MDAsLTQzMzk4NzIwMCwtNDE4MTc2ZTMsLTQwMjQ1MTIwMCwtMzg2NjRlNCwtMzcwOTE1MjAwLC0zNTUxMDRlMywtMzM5Mzc5MjAwLC0zMjM1NjhlMywtMzAyNDg2NDAwLC0yOTE5NDU2MDAsLTI3MDk1MDQwMCwtMjYwNDA5NjAwLDEzNDAwNjQwMCwxNDk4MTc2MDAsMTY1NTQyNDAwLDE4MTM1MzYwMCwyOTk2MzUyMDAsMzA3NTg0ZTMsMTkyNTAyMDgwMF0sb2Zmc2V0OlsyOTE2MCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMCwzMjQwMCwyODgwMF19LCJBc2lhL1RlaHJhbiI6e3RpbWU6Wy0xNzA0MTUzNjAwLC0xMDkwNDU0NDAwLDIyNzgzMzIwMCwyNDYyNGU0LDI1OTYzMmUzLDI3MTEyNjgwMCwyNzk1OTA0MDAsMjk2NjExMjAwLDMwNjU0NzIwMCwzMjI0NDQ4MDAsMzM4NTE1MjAwLDY3MzIyODgwMCw2ODU0OTc2MDAsNzAxMjIyNDAwLDcxNzEyZTQsNzMyNzU4NDAwLDc0ODY1NmUzLDc2NDI5NDQwMCw3ODAxOTJlMyw3OTU4MzA0MDAsODExNzI4ZTMsODI3MzY2NDAwLDg0MzI2NGUzLDg1ODk4ODgwMCw4NzQ4ODY0MDAsODkwNTI0ODAwLDkwNjQyMjQwMCw5MjIwNjA4MDAsOTM3OTU4NDAwLDk1MzU5NjgwMCw5Njk0OTQ0MDAsOTg1MjE5MjAwLDEwMDExMTY4MDAsMTAxNjc1NTIwMCwxMDMyNjUyODAwLDEwNDgyOTEyMDAsMTA2NDE4ODgwMCwxMDc5ODI3MjAwLDEwOTU3MjQ4MDAsMTExMTQ0OTYwMCwxMTI3MzQ3MjAwLDEyMDYwNTc2MDAsMTIyMTk1NTIwMCwxMjM3NjhlNCwxMjUzNTc3NjAwLDEyNjkyMTZlMywxMjg1MTEzNjAwLDEzMDA3NTJlMywxMzE2NjQ5NjAwLDEzMzIyODhlMywxMzQ4MTg1NjAwLDEzNjM5MTA0MDAsMTM3OTgwOGUzLDEzOTU0NDY0MDAsMTQxMTM0NGUzLDE0MjY5ODI0MDAsMTQ0Mjg4ZTQsMTQ1ODUxODQwMCwxNDc0NDE2ZTMsMTQ5MDE0MDgwMCwxNTA2MDM4NDAwLDE1MjE2NzY4MDAsMTUzNzU3NDQwMCwxNTUzMjEyODAwLDE1NjkxMTA0MDAsMTU4NDc0ODgwMCwxNjAwNjQ2NDAwLDE2MTYzNzEyMDAsMTYzMjI2ODgwMCwxNjQ3OTA3MjAwLDE2NjM4MDQ4MDAsMTkyNTAwNDYwMF0sb2Zmc2V0OlsxMjM0NCwxMjM0NCwxMjYwMCwxNjIwMCwxNDQwMCwxOGUzLDE0NDAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwLDE2MjAwLDEyNjAwXX0sIkFzaWEvVG9reW8iOnt0aW1lOlstMjU4NzY3ODg2MSwtNjgzNzY5NjAwLC02NzIyNzQ4MDAsLTY1NDczOTIwMCwtNjQwODI1MjAwLC02MjAyNjU2MDAsLTYwOTM3NTYwMCwtNTg4ODE2ZTMsLTU3NzkyNmUzLDE5MjUwMjQ0MDBdLG9mZnNldDpbMzM1MzksMzI0MDAsMzZlMywzMjQwMCwzNmUzLDMyNDAwLDM2ZTMsMzI0MDAsMzZlMywzMjQwMF19LCJBc2lhL1lhbmdvbiI6e3RpbWU6Wy0yODQwMTQwODAwLC0xNTc3OTIzMjAwLC04NzMyNDQ4MDAsLTc3ODM3NzYwMCwxOTI1MDE1NDAwXSxvZmZzZXQ6WzIzMDg3LDIzMDg3LDIzNDAwLDMyNDAwLDIzNDAwXX0sIkF0bGFudGljL0F6b3JlcyI6ewp0aW1lOlstMjcxMzkxMDQwMCwtMTgzMDM4MzY3MiwtMTY4OTU1NTYwMCwtMTY3Nzc5OGUzLC0xNjY3NDMzNjAwLC0xNjQ3NzM0NDAwLC0xNjM1ODk3NjAwLC0xNjE2MTk4NDAwLC0xNjA0MzYxNjAwLC0xNTg0NjYyNDAwLC0xNTcyNzM5MjAwLC0xNTUzMDRlNCwtMTU0MTIwMzIwMCwtMTUyMTUwNGUzLC0xNDQyNDUxNjAwLC0xNDI3NjczNjAwLC0xMzc5MjkzMjAwLC0xMzY0Nzc0NDAwLC0xMzQ4NDQ4NDAwLC0xMzMzMzI0ODAwLC0xMzE2Mzk0ZTMsLTEzMDEyNzA0MDAsLTEyODQzMzk2MDAsLTEyNjk4MjA4MDAsLTEyMjE0NDA0MDAsLTEyMDY5MjE2MDAsLTExOTEyMDA0MDAsLTExNzU0NzJlMywtMTEyNzY5NjQwMCwtMTExMTk2OGUzLC0xMDk2ODUxNjAwLC0xMDgwNTE4NDAwLC0xMDYzNTg3NjAwLC0xMDQ5MDY4ODAwLC0xMDMzMzQ3NjAwLC0xMDE3NjE5MjAwLC0xMDAyNTAyODAwLC05ODYxNjk2MDAsLTk2OTIzODgwMCwtOTUwNDg2NDAwLC05NDIwMjI4MDAsLTkyMjQ5MjgwMCwtOTA2OTQ0NDAwLC04OTExMjk2MDAsLTg3NzMwOTIwMCwtODczNjgwNDAwLC04NjRlNiwtODU3OTUyZTMsLTg0NTg1OTYwMCwtODQyODM1NjAwLC04MzEzNDA4MDAsLTgyNTg5NzYwMCwtODE0NDFlNCwtODEwNzgxMjAwLC03OTk4OTEyMDAsLTc5NDQ0OGUzLC03ODI5NjA0MDAsLTc3OTMzMTYwMCwtNzY4NDQxNjAwLC03NjI5OTg0MDAsLTc0OTA5MTYwMCwtNzMzMzYzMjAwLC03MTc2MzEyMDAsLTcwMTkwMjgwMCwtNjg2MTgxNjAwLC02NzA0NTMyMDAsLTY1NDczMmUzLC02MzkwMDM2MDAsLTYyMzI4MjQwMCwtNjA3NTU0ZTMsLTU5MTgzMjgwMCwtNTc1NDk5NjAwLC01NTk3Nzg0MDAsLTU0NDA1ZTQsLTUyODMyODgwMCwtNTEyNjAwNDAwLC00OTY4NzkyMDAsLTQ4MTE1MDgwMCwtNDY1NDI5NjAwLC00NDk3MDEyMDAsLTQzMzk4ZTQsLTQxNzY0NjgwMCwtNDAxOTI1NjAwLC0zODYxOTcyMDAsLTM3MDQ3NmUzLC0zNTQ3NDc2MDAsLTMzOTAyNjQwMCwtMzIzMjk4ZTMsLTMwNzU3NjgwMCwtMjkxODQ4NDAwLC0yNzYxMjcyMDAsLTI2MDM5ODgwMCwtMjQ0Njc3NjAwLC0yMjgzNDQ0MDAsLTIxMjYyMzIwMCwtMTk2ODk0ODAwLC0xODExNzM2MDAsLTE2NTQ0NTIwMCwtMTQ5NzI0ZTMsLTEzMzk5NTYwMCwtMTE4Mjc0NDAwLC0xMDI1NDZlMywzODYxMjE2MDAsNDAxODVlNCw0MTc1NzEyMDAsNDMzMjk5NjAwLDQ0OTAyMDgwMCw0NjUzNTRlMyw0ODEwNzUyMDAsNDk2ODAzNjAwLDUxMjUyNDgwMCw1MjgyNTMyMDAsNTQzOTc0NDAwLDU1OTcwMjgwMCw1NzU0MjRlMyw1OTExNTI0MDAsNjA2ODczNjAwLDYyMjYwMmUzLDYzODMyMzIwMCw2NTQ2NTY0MDAsNjcwMzc3NjAwLDY4NjEwNmUzLDcwMTgyNzIwMCw3MTc1NTU2MDAsNzI1NDE4ZTMsNzMzMjgwNDAwLDc0MDI4MjQwMCw3NDkwMDUyMDAsNzY0NzI2NDAwLDc4MDQ1NDgwMCw3OTYxNzZlMyw4MTE5MDQ0MDAsODI4MjMwNDAwLDg0NjM3OGUzLDg1OTY4ZTQsODc3ODI3NjAwLDg5MTEyOTYwMCw5MDkyNzcyMDAsOTIyNTc5MjAwLDk0MTMzMTYwMCw5NTQwMjg4MDAsOTcyNzgxMjAwLDk4NTQ3ODQwMCwxMDA0MjMwODAwLDEwMTc1MzI4MDAsMTAzNTY4MDQwMCwxMDQ4OTgyNDAwLDEwNjcxM2U0LDEwODA0MzJlMywxMDk5MTg0NDAwLDExMTE4ODE2MDAsMTEzMDYzNGUzLDExNDMzMzEyMDAsMTE2MjA4MzYwMCwxMTc0NzgwODAwLDExOTM1MzMyMDAsMTIwNjgzNTIwMCwxMjI0OTgyODAwLDEyMzgyODQ4MDAsMTI1NjQzMjQwMCwxMjY5NzM0NDAwLDEyODg0ODY4MDAsMTMwMTE4NGUzLDEzMTk5MzY0MDAsMTMzMjYzMzYwMCwxMzUxMzg2ZTMsMTM2NDY4OGUzLDEzODI4MzU2MDAsMTM5NjEzNzYwMCwxNDE0Mjg1MjAwLDE0Mjc1ODcyMDAsMTQ0NTczNDgwMCwxNDU5MDM2ODAwLDE0Nzc3ODkyMDAsMTQ5MDQ4NjQwMCwxNTA5MjM4ODAwLDE1MjE5MzZlMywxNTQwNjg4NDAwLDE1NTM5OTA0MDAsMTU3MjEzOGUzLDE1ODU0NGU0LDE2MDM1ODc2MDAsMTYxNjg4OTYwMCwxNjM1NjQyZTMsMTY0ODMzOTIwMCwxNjY3MDkxNjAwLDE2Nzk3ODg4MDAsMTY5ODU0MTIwMCwxNzExODQzMjAwLDE3Mjk5OTA4MDAsMTc0MzI5MjgwMCwxNzYxNDQwNDAwLDE3NzQ3NDI0MDAsMTc5Mjg5ZTQsMTgwNjE5MmUzLDE4MjQ5NDQ0MDAsMTgzNzY0MTYwMCwxODU2Mzk0ZTMsMTg2OTA5MTIwMCwxODg3ODQzNjAwLDE5MDExNDU2MDAsMTkxOTI5MzIwMCwxOTMyNTk1MjAwXSwKb2Zmc2V0OlstNjE2MCwtNjg3MiwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwtNzIwMCwtMzYwMCwwLC0zNjAwLC03MjAwLC0zNjAwLDAsLTM2MDAsLTcyMDAsLTM2MDAsMCwtMzYwMCwtNzIwMCwtMzYwMCwwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC03MjAwLC0zNjAwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLDM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwXX0sIkF0bGFudGljL1JleWtqYXZpayI6e3RpbWU6Wy0xOTU2NjE0NDAwLC0xNjY4MjE0ODAwLC0xNjQ3MjEyNDAwLC0xNjM2Njc4ODAwLC0xNjEzNDNlNCwtMTYwNTE0MjgwMCwtMTU4MTg5NGUzLC0xNTM5NTY1MjAwLC0xNTMxMzVlNCwtOTY4MDI5MjAwLC05NTIyOTM2MDAsLTk0MjAxMmUzLC05MjAyMzkyMDAsLTkwOTk2MTIwMCwtODg4Nzg5NjAwLC04Nzc5MDY4MDAsLTg1Nzk0NDgwMCwtODQ2NDU3MjAwLC04MjY0OTUyMDAsLTgxNTAwNzYwMCwtNzk1MDQ1NjAwLC03ODM1NThlMywtNzYyOTkxMjAwLC03NTIxMDg0MDAsLTczMTU0MTYwMCwtNzE3NjM0ODAwLC03MDAwOTJlMywtNjg2MTg1MjAwLC02Njg2NDI0MDAsLTY1NDczNTYwMCwtNjM2NTg4ZTMsLTYyMzI4NmUzLC02MDU3NDMyMDAsLTU5MTgzNjQwMCwtNTczNjg4ODAwLC01NTk3ODJlMywtNTQyMjM5MjAwLC01MjgzMzI0MDAsLTUxMDc4OTYwMCwtNDk2ODgyODAwLC00NzkzNGU0LC00NjU0MzMyMDAsLTQ0Nzg5MDQwMCwtNDMzOTgzNjAwLC00MTU4MzZlMywtNDAxOTI5MjAwLC0zODQzODY0MDAsLTM3MDQ3OTYwMCwtMzUyOTM2ODAwLC0zMzkwM2U0LC0zMjE0ODcyMDAsLTMwNzU4MDQwMCwtMjkwMDM3NjAwLC0yNzYxMzA4MDAsLTI1ODU4OGUzLC0yNDQ2ODEyMDAsLTIyNjUzMzYwMCwtMjEyNjI2ODAwLC0xOTUwODRlMywtMTgxMTc3MjAwLC0xNjM2MzQ0MDAsLTE0OTcyNzYwMCwtMTMyMTg0ODAwLC0xMTgyNzhlMywtMTAwNzM1MjAwLC04NjgyODQwMCwtNjg2ODA4MDAsLTU0Nzc0ZTMsMTkyNDk5MmUzXSxvZmZzZXQ6Wy01MjgwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDAsLTM2MDAsMCwtMzYwMCwwLC0zNjAwLDBdfSwiQXVzdHJhbGlhL0FDVCI6ewp0aW1lOlstMjM2NDA3NjgwMCwtMTY3MjUyNGUzLC0xNjY1MzQ5MjAwLC04ODM2MDU2MDAsLTg3NjA4NTIwMCwtODYwMzY0ZTMsLTg0NDYzNTYwMCwtODI4MzA5NjAwLC04MTMxODZlMyw1NzcyMjQwMCw2ODAwNzYwMCw4OTE3MmUzLDEwMDA2MmUzLDEyMDYyMTYwMCwxMzE1MTE2MDAsMTUyMDcxMjAwLDE2Mjk2MTIwMCwxODM1MjA4MDAsMTk1MDE1NjAwLDIxNTU3NTIwMCwyMjY0NjUyMDAsMjQ3MDI0ODAwLDI1NzkxNDgwMCwyNzg0NzQ0MDAsMjg5MzY0NDAwLDMwOTkyNGUzLDMyMDgxNGUzLDM0MTM3MzYwMCwzNTIyNjM2MDAsMzcyODIzMjAwLDM4NjczNzIwMCw0MDQ4Nzc2MDAsNDE1NzY3NjAwLDQzNjMyNzIwMCw0NDcyMTcyMDAsNDY3Nzc2ODAwLDQ3ODY2NjgwMCw0OTkyMjY0MDAsNTExMzI2ZTMsNTMwMDcxMjAwLDU0Mjc3NTYwMCw1NjIxMjU2MDAsNTc0ODNlNCw1OTQxOGU0LDYwNjI3OTYwMCw2MjU2Mjk2MDAsNjM2NTE5NjAwLDY1NzA3OTIwMCw2Njc5NjkyMDAsNjg4NTI4ODAwLDY5OTQxODgwMCw3MTk5Nzg0MDAsNzMxNDczMjAwLDc1MjAzMjgwMCw3NjI5MjI4MDAsNzgzNDgyNDAwLDc5NDM3MjQwMCw4MTQ5MzJlMyw4MjgyNDEyMDAsODQ2MzgxNjAwLDg1OTY5MDgwMCw4Nzc4MzEyMDAsODkxMTQwNDAwLDkwOTI4MDgwMCw5MjI1OWU0LDk0MTMzNTIwMCw5NTQwMzk2MDAsOTY3MzQxNjAwLDk4NTQ4OTIwMCwxMDA0MjM0NDAwLDEwMTc1NDM2MDAsMTAzNTY4NGUzLDEwNDg5OTMyMDAsMTA2NzEzMzYwMCwxMDgwNDQyODAwLDEwOTkxODhlMywxMTExODkyNDAwLDExMzA2Mzc2MDAsMTE0Mzk0NjgwMCwxMTYyMDg3MjAwLDExNzQ3OTE2MDAsMTE5MzUzNjgwMCwxMjA3NDUwODAwLDEyMjMxNzJlMywxMjM4OTAwNDAwLDEyNTQ2MjE2MDAsMTI3MDM1ZTQsMTI4NjA3MTIwMCwxMzAxNzk5NjAwLDEzMTc1MjA4MDAsMTMzMzI0OTIwMCwxMzQ5NTc1MjAwLDEzNjUzMDM2MDAsMTM4MTAyNDgwMCwxMzk2NzUzMjAwLDE0MTI0NzQ0MDAsMTQyODIwMjgwMCwxNDQzOTI0ZTMsMTQ1OTY1MjQwMCwxNDc1MzczNjAwLDE0OTExMDJlMywxNTA2ODIzMjAwLDE1MjI1NTE2MDAsMTUzODg3NzYwMCwxNTU0NjA2ZTMsMTU3MDMyNzIwMCwxNTg2MDU1NjAwLDE2MDE3NzY4MDAsMTYxNzUwNTIwMCwxNjMzMjI2NDAwLDE2NDg5NTQ4MDAsMTY2NDY3NmUzLDE2ODA0MDQ0MDAsMTY5NjEyNTYwMCwxNzEyNDU4ODAwLDE3MjgxOGU0LDE3NDM5MDg0MDAsMTc1OTYyOTYwMCwxNzc1MzU4ZTMsMTc5MTA3OTIwMCwxODA2ODA3NjAwLDE4MjI1Mjg4MDAsMTgzODI1NzIwMCwxODUzOTc4NDAwLDE4Njk3MDY4MDAsMTg4NjAzMjgwMCwxOTAxNzYxMjAwLDE5MTc0ODI0MDAsMTkzMzIxMDgwMF0sb2Zmc2V0OlszNjI5MiwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwXX0sIkF1c3RyYWxpYS9BZGVsYWlkZSI6ewp0aW1lOlstMjM2NDA3NjgwMCwtMjIzMDE1NjgwMCwtMTY3MjUyNGUzLC0xNjY1MzQ5MjAwLC04ODM2MDU2MDAsLTg3NjA4NTIwMCwtODYwMzY0ZTMsLTg0NDYzNTYwMCwtODI4MzA5NjAwLC04MTMxODZlMyw1NzcyMjQwMCw2ODAwNzYwMCw4OTE3MmUzLDEwMDA2MmUzLDEyMDYyMTYwMCwxMzE1MTE2MDAsMTUyMDcxMjAwLDE2Mjk2MTIwMCwxODM1MjA4MDAsMTk1MDE1NjAwLDIxNTU3NTIwMCwyMjY0NjUyMDAsMjQ3MDI0ODAwLDI1NzkxNDgwMCwyNzg0NzQ0MDAsMjg5MzY0NDAwLDMwOTkyNGUzLDMyMDgxNGUzLDM0MTM3MzYwMCwzNTIyNjM2MDAsMzcyODIzMjAwLDM4NDMxOGUzLDQwNDg3NzYwMCw0MTU3Njc2MDAsNDM2MzI3MjAwLDQ0NzIxNzIwMCw0Njc3NzY4MDAsNDc4NjY2ODAwLDQ5OTIyNjQwMCw1MTEzMjZlMyw1MzAwNzEyMDAsNTQyNzc1NjAwLDU2MjEyNTYwMCw1NzQ4M2U0LDU5NDE4ZTQsNjA2Mjc5NjAwLDYyNTYyOTYwMCw2Mzc3MjkyMDAsNjU3MDc5MjAwLDY2Nzk2OTIwMCw2ODg1Mjg4MDAsNzAxMjMzMjAwLDcxOTk3ODQwMCw3MzE0NzMyMDAsNzUyMDMyODAwLDc2NDEzMjQwMCw3ODM0ODI0MDAsNzk2MTg2ODAwLDgxNDkzMmUzLDgyODI0MTIwMCw4NDYzODE2MDAsODU5NjkwODAwLDg3NzgzMTIwMCw4OTExNDA0MDAsOTA5MjgwODAwLDkyMjU5ZTQsOTQxMzM1MjAwLDk1NDAzOTYwMCw5NzI3ODQ4MDAsOTg1NDg5MjAwLDEwMDQyMzQ0MDAsMTAxNzU0MzYwMCwxMDM1Njg0ZTMsMTA0ODk5MzIwMCwxMDY3MTMzNjAwLDEwODA0NDI4MDAsMTA5OTE4OGUzLDExMTE4OTI0MDAsMTEzMDYzNzYwMCwxMTQzOTQ2ODAwLDExNjIwODcyMDAsMTE3NDc5MTYwMCwxMTkzNTM2ODAwLDEyMDc0NTA4MDAsMTIyMzE3MmUzLDEyMzg5MDA0MDAsMTI1NDYyMTYwMCwxMjcwMzVlNCwxMjg2MDcxMjAwLDEzMDE3OTk2MDAsMTMxNzUyMDgwMCwxMzMzMjQ5MjAwLDEzNDk1NzUyMDAsMTM2NTMwMzYwMCwxMzgxMDI0ODAwLDEzOTY3NTMyMDAsMTQxMjQ3NDQwMCwxNDI4MjAyODAwLDE0NDM5MjRlMywxNDU5NjUyNDAwLDE0NzUzNzM2MDAsMTQ5MTEwMmUzLDE1MDY4MjMyMDAsMTUyMjU1MTYwMCwxNTM4ODc3NjAwLDE1NTQ2MDZlMywxNTcwMzI3MjAwLDE1ODYwNTU2MDAsMTYwMTc3NjgwMCwxNjE3NTA1MjAwLDE2MzMyMjY0MDAsMTY0ODk1NDgwMCwxNjY0Njc2ZTMsMTY4MDQwNDQwMCwxNjk2MTI1NjAwLDE3MTI0NTg4MDAsMTcyODE4ZTQsMTc0MzkwODQwMCwxNzU5NjI5NjAwLDE3NzUzNThlMywxNzkxMDc5MjAwLDE4MDY4MDc2MDAsMTgyMjUyODgwMCwxODM4MjU3MjAwLDE4NTM5Nzg0MDAsMTg2OTcwNjgwMCwxODg2MDMyODAwLDE5MDE3NjEyMDAsMTkxNzQ4MjQwMCwxOTMzMjEwODAwXSxvZmZzZXQ6WzMzMjYwLDMyNDAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwLDM0MjAwLDM3ODAwXX0sIkF1c3RyYWxpYS9CcmlzYmFuZSI6e3RpbWU6Wy0yMzY2NzU1MjAwLC0xNjcyNTI0ZTMsLTE2NjUzNDkyMDAsLTg4MzYwNTYwMCwtODc2MDg1MjAwLC04NjAzNjRlMywtODQ0NjM1NjAwLC04MjgzMDk2MDAsLTgxMzE4NmUzLDU3NzIyNDAwLDY4MDA3NjAwLDYyNTYyOTYwMCw2MzY1MTk2MDAsNjU3MDc5MjAwLDY2Nzk2OTIwMCw2ODg1Mjg4MDAsNjk5NDE4ODAwLDE5MjUwMjhlM10sb2Zmc2V0OlszNjcyOCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlM119LCJBdXN0cmFsaWEvUGVydGgiOnt0aW1lOlstMjMzNzg5NzYwMCwtMTY3MjUyNGUzLC0xNjY1MzQ5MjAwLC04ODM2MDU2MDAsLTg3NjA4NTIwMCwtODYwMzY0ZTMsLTg0NDYzNTYwMCwxNTIwNzEyMDAsMTYyOTYxMjAwLDQzNjMyNzIwMCw0NDcyMTcyMDAsNjkwMzQzMjAwLDY5OTQxODgwMCwxMTY1MTExMjAwLDExNzQ3OTE2MDAsMTE5MzUzNjgwMCwxMjA2ODQ2ZTMsMTIyNDk4NjQwMCwxMjM4Mjk1NjAwLDE5MjUwMjA4MDBdLG9mZnNldDpbMjc4MDQsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDAsMzI0MDAsMjg4MDBdfSwiQXVzdHJhbGlhL1N5ZG5leSI6ewp0aW1lOlstMjM2NDA3NjgwMCwtMTY3MjUyNGUzLC0xNjY1MzQ5MjAwLC04ODM2MDU2MDAsLTg3NjA4NTIwMCwtODYwMzY0ZTMsLTg0NDYzNTYwMCwtODI4MzA5NjAwLC04MTMxODZlMyw1NzcyMjQwMCw2ODAwNzYwMCw4OTE3MmUzLDEwMDA2MmUzLDEyMDYyMTYwMCwxMzE1MTE2MDAsMTUyMDcxMjAwLDE2Mjk2MTIwMCwxODM1MjA4MDAsMTk1MDE1NjAwLDIxNTU3NTIwMCwyMjY0NjUyMDAsMjQ3MDI0ODAwLDI1NzkxNDgwMCwyNzg0NzQ0MDAsMjg5MzY0NDAwLDMwOTkyNGUzLDMyMDgxNGUzLDM0MTM3MzYwMCwzNTIyNjM2MDAsMzcyODIzMjAwLDM4NjczNzIwMCw0MDQ4Nzc2MDAsNDE1NzY3NjAwLDQzNjMyNzIwMCw0NDcyMTcyMDAsNDY3Nzc2ODAwLDQ3ODY2NjgwMCw0OTkyMjY0MDAsNTExMzI2ZTMsNTMwMDcxMjAwLDU0Mjc3NTYwMCw1NjIxMjU2MDAsNTc0ODNlNCw1OTQxOGU0LDYwNjI3OTYwMCw2MjU2Mjk2MDAsNjM2NTE5NjAwLDY1NzA3OTIwMCw2Njc5NjkyMDAsNjg4NTI4ODAwLDY5OTQxODgwMCw3MTk5Nzg0MDAsNzMxNDczMjAwLDc1MjAzMjgwMCw3NjI5MjI4MDAsNzgzNDgyNDAwLDc5NDM3MjQwMCw4MTQ5MzJlMyw4MjgyNDEyMDAsODQ2MzgxNjAwLDg1OTY5MDgwMCw4Nzc4MzEyMDAsODkxMTQwNDAwLDkwOTI4MDgwMCw5MjI1OWU0LDk0MTMzNTIwMCw5NTQwMzk2MDAsOTY3MzQxNjAwLDk4NTQ4OTIwMCwxMDA0MjM0NDAwLDEwMTc1NDM2MDAsMTAzNTY4NGUzLDEwNDg5OTMyMDAsMTA2NzEzMzYwMCwxMDgwNDQyODAwLDEwOTkxODhlMywxMTExODkyNDAwLDExMzA2Mzc2MDAsMTE0Mzk0NjgwMCwxMTYyMDg3MjAwLDExNzQ3OTE2MDAsMTE5MzUzNjgwMCwxMjA3NDUwODAwLDEyMjMxNzJlMywxMjM4OTAwNDAwLDEyNTQ2MjE2MDAsMTI3MDM1ZTQsMTI4NjA3MTIwMCwxMzAxNzk5NjAwLDEzMTc1MjA4MDAsMTMzMzI0OTIwMCwxMzQ5NTc1MjAwLDEzNjUzMDM2MDAsMTM4MTAyNDgwMCwxMzk2NzUzMjAwLDE0MTI0NzQ0MDAsMTQyODIwMjgwMCwxNDQzOTI0ZTMsMTQ1OTY1MjQwMCwxNDc1MzczNjAwLDE0OTExMDJlMywxNTA2ODIzMjAwLDE1MjI1NTE2MDAsMTUzODg3NzYwMCwxNTU0NjA2ZTMsMTU3MDMyNzIwMCwxNTg2MDU1NjAwLDE2MDE3NzY4MDAsMTYxNzUwNTIwMCwxNjMzMjI2NDAwLDE2NDg5NTQ4MDAsMTY2NDY3NmUzLDE2ODA0MDQ0MDAsMTY5NjEyNTYwMCwxNzEyNDU4ODAwLDE3MjgxOGU0LDE3NDM5MDg0MDAsMTc1OTYyOTYwMCwxNzc1MzU4ZTMsMTc5MTA3OTIwMCwxODA2ODA3NjAwLDE4MjI1Mjg4MDAsMTgzODI1NzIwMCwxODUzOTc4NDAwLDE4Njk3MDY4MDAsMTg4NjAzMjgwMCwxOTAxNzYxMjAwLDE5MTc0ODI0MDAsMTkzMzIxMDgwMF0sb2Zmc2V0OlszNjI5MiwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwLDM2ZTMsMzk2MDAsMzZlMywzOTYwMCwzNmUzLDM5NjAwXX0sIkV1cm9wZS9BbXN0ZXJkYW0iOnsKdGltZTpbLTQyNjAyMTEyMDAsLTE2OTM2OTkyMDAsLTE2ODA0OGU0LC0xNjYzNDUyZTMsLTE2NTAxNDI4MDAsLTE2MzMyMTJlMywtMTYxNzQ4MzYwMCwtMTYwMTE1NzYwMCwtMTU4NjAzNGUzLC0xNTY5NzA4ZTMsLTE1NTQ1ODQ0MDAsLTE1MzgyNTg0MDAsLTE1MjMxMzQ4MDAsLTE1MDc1ZTUsLTE0OTA1NjJlMywtMTQ3MDE3NTIwMCwtMTQ1OTExMjQwMCwtMTQ0Mzk5NmUzLC0xNDI3NjYyODAwLC0xNDA2NjcxMjAwLC0xMzk2MjEzMjAwLC0xMzc2OTQ5NjAwLC0xMzY0NzYzNjAwLC0xMzQ1NDEzNjAwLC0xMzMzMzE0ZTMsLTEzMTM3OTEyMDAsLTEzMDEyNTk2MDAsLTEyODIyNTUyMDAsLTEyNjk4MWU0LC0xMjUwNzE5MjAwLC0xMjM4MzYwNDAwLC0xMjE5MTgzMjAwLC0xMjA2OTEwODAwLC0xMTg2OTU2ZTMsLTExNzU0NjEyMDAsLTExNTYwMjQ4MDAsLTExNDM0MDY4MDAsLTExMjQ0ODg4MDAsLTExMTE5NTcyMDAsLTEwOTI5NTI4MDAsLTEwODA1MDc2MDAsLTEwNjEzMzA0MDAsLTEwNDkwNThlMywtMTAyOTE4OTYwMCwtMTAyNTc0MDgwMCwtMTAxNzYwODQwMCwtOTk4MjU4NDAwLC05ODYxNTg4MDAsLTk2NjcyMjQwMCwtOTU0MTA0NDAwLC05MzUwMjA4MDAsLTg1NzI1ZTQsLTg0NDU1MjgwMCwtODI4MjE5NjAwLC04MTI0OTg0MDAsLTc5Njc3ZTQsLTc4MTA0ODgwMCwtNzY2NjE2NDAwLDIyODg4MDgwMCwyNDQwMDQ0MDAsMjYwMzMwNDAwLDI3NjA1ODgwMCwyOTE3OGU0LDMwNzUwODQwMCwzMjM4MzQ0MDAsMzM4OTU4ZTMsMzU0Njc5MjAwLDM3MDQwNzYwMCwzODYxMjg4MDAsNDAxODU3MjAwLDQxNzU3ODQwMCw0MzMzMDY4MDAsNDQ5MDI4ZTMsNDY1MzYxMjAwLDQ4MTA4MjQwMCw0OTY4MTA4MDAsNTEyNTMyZTMsNTI4MjYwNDAwLDU0Mzk4MTYwMCw1NTk3MWU0LDU3NTQzMTIwMCw1OTExNTk2MDAsNjA2ODgwODAwLDYyMjYwOTIwMCw2MzgzMzA0MDAsNjU0NjYzNjAwLDY3MDM4NDgwMCw2ODYxMTMyMDAsNzAxODM0NDAwLDcxNzU2MjgwMCw3MzMyODRlMyw3NDkwMTI0MDAsNzY0NzMzNjAwLDc4MDQ2MmUzLDc5NjE4MzIwMCw4MTE5MTE2MDAsODI4MjM3NjAwLDg0NjM4NTIwMCw4NTk2ODcyMDAsODc3ODM0ODAwLDg5MTEzNjgwMCw5MDkyODQ0MDAsOTIyNTg2NDAwLDk0MTMzODgwMCw5NTQwMzZlMyw5NzI3ODg0MDAsOTg1NDg1NjAwLDEwMDQyMzhlMywxMDE3NTRlNCwxMDM1Njg3NjAwLDEwNDg5ODk2MDAsMTA2NzEzNzIwMCwxMDgwNDM5MjAwLDEwOTkxOTE2MDAsMTExMTg4ODgwMCwxMTMwNjQxMjAwLDExNDMzMzg0MDAsMTE2MjA5MDgwMCwxMTc0Nzg4ZTMsMTE5MzU0MDQwMCwxMjA2ODQyNDAwLDEyMjQ5OWU0LDEyMzgyOTJlMywxMjU2NDM5NjAwLDEyNjk3NDE2MDAsMTI4ODQ5NGUzLDEzMDExOTEyMDAsMTMxOTk0MzYwMCwxMzMyNjQwODAwLDEzNTEzOTMyMDAsMTM2NDY5NTIwMCwxMzgyODQyODAwLDEzOTYxNDQ4MDAsMTQxNDI5MjQwMCwxNDI3NTk0NDAwLDE0NDU3NDJlMywxNDU5MDQ0ZTMsMTQ3Nzc5NjQwMCwxNDkwNDkzNjAwLDE1MDkyNDZlMywxNTIxOTQzMjAwLDE1NDA2OTU2MDAsMTU1Mzk5NzYwMCwxNTcyMTQ1MjAwLDE1ODU0NDcyMDAsMTYwMzU5NDgwMCwxNjE2ODk2ODAwLDE2MzU2NDkyMDAsMTY0ODM0NjQwMCwxNjY3MDk4ODAwLDE2Nzk3OTZlMywxNjk4NTQ4NDAwLDE3MTE4NTA0MDAsMTcyOTk5OGUzLDE3NDMzZTUsMTc2MTQ0NzYwMCwxNzc0NzQ5NjAwLDE3OTI4OTcyMDAsMTgwNjE5OTIwMCwxODI0OTUxNjAwLDE4Mzc2NDg4MDAsMTg1NjQwMTIwMCwxODY5MDk4NDAwLDE4ODc4NTA4MDAsMTkwMTE1MjgwMCwxOTE5MzAwNDAwLDE5MzI2MDI0MDBdLG9mZnNldDpbMTE3MiwxMTcyLDQ3NzIsMTE3Miw0NzcyLDExNzIsNDc3MiwxMTcyLDQ3NzIsMTE3Miw0NzcyLDExNzIsNDc3MiwxMTcyLDQ3NzIsMTE3Miw0NzcyLDExNzIsNDc3MiwxMTcyLDQ3NzIsMTE3Miw0NzcyLDExNzIsNDc3MiwxMTcyLDQ3NzIsMTE3Miw0NzcyLDExNzIsNDc3MiwxMTcyLDQ3NzIsMTE3Miw0NzcyLDExNzIsNDc3MiwxMTcyLDQ3NzIsMTE3Miw0NzcyLDExNzIsNDc3MiwxMTcyLDQ3NzIsNDgwMCwxMjAwLDQ4MDAsMTIwMCw0ODAwLDEyMDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9BdGhlbnMiOnsKdGltZTpbLTIzNDQ2MzY4MDAsLTE2ODYwOTU5NDAsLTExODI5ODg4MDAsLTExNzgxNTA0MDAsLTkwNjg1NDQwMCwtOTA0ODY3MjAwLC04NTcyNWU0LC04NDQ0NzM2MDAsLTgyODIzMDQwMCwtODEyNDE5MjAwLC01NTIzNTUyMDAsLTU0MTY0MTYwMCwxNjY0OTI4MDAsMTg2MTk1NjAwLDE5ODAzNmUzLDIxMzc2NDQwMCwyMjg4ODA4MDAsMjQ0MDkwODAwLDI2MDMzMDQwMCwyNzU0NTc2MDAsMjkxODA1MjAwLDMwNzQxODQwMCwzMjMzOTUyMDAsMzM4OTQ3MjAwLDM1NDY4MjgwMCwzNzA0MTEyMDAsMzg2MTMyNDAwLDQwMTg2MDgwMCw0MTc1ODJlMyw0MzMzMTA0MDAsNDQ5MDMxNjAwLDQ2NTM2NDgwMCw0ODEwODZlMyw0OTY4MTQ0MDAsNTEyNTM1NjAwLDUyODI2NGUzLDU0Mzk4NTIwMCw1NTk3MTM2MDAsNTc1NDM0ODAwLDU5MTE2MzIwMCw2MDY4ODQ0MDAsNjIyNjEyODAwLDYzODMzNGUzLDY1NDY2NzIwMCw2NzAzODg0MDAsNjg2MTE2ODAwLDcwMTgzOGUzLDcxNzU2NjQwMCw3MzMyODc2MDAsNzQ5MDE2ZTMsNzY0NzM3MjAwLDc4MDQ2NTYwMCw3OTYxODY4MDAsODExOTE1MjAwLDgyODI0MTIwMCw4NDYzODg4MDAsODU5NjkwODAwLDg3NzgzODQwMCw4OTExNDA0MDAsOTA5Mjg4ZTMsOTIyNTllNCw5NDEzNDI0MDAsOTU0MDM5NjAwLDk3Mjc5MmUzLDk4NTQ4OTIwMCwxMDA0MjQxNjAwLDEwMTc1NDM2MDAsMTAzNTY5MTIwMCwxMDQ4OTkzMjAwLDEwNjcxNDA4MDAsMTA4MDQ0MjgwMCwxMDk5MTk1MjAwLDExMTE4OTI0MDAsMTEzMDY0NDgwMCwxMTQzMzQyZTMsMTE2MjA5NDQwMCwxMTc0NzkxNjAwLDExOTM1NDRlMywxMjA2ODQ2ZTMsMTIyNDk5MzYwMCwxMjM4Mjk1NjAwLDEyNTY0NDMyMDAsMTI2OTc0NTIwMCwxMjg4NDk3NjAwLDEzMDExOTQ4MDAsMTMxOTk0NzIwMCwxMzMyNjQ0NDAwLDEzNTEzOTY4MDAsMTM2NDY5ODgwMCwxMzgyODQ2NDAwLDEzOTYxNDg0MDAsMTQxNDI5NmUzLDE0Mjc1OThlMywxNDQ1NzQ1NjAwLDE0NTkwNDc2MDAsMTQ3NzhlNSwxNDkwNDk3MjAwLDE1MDkyNDk2MDAsMTUyMTk0NjgwMCwxNTQwNjk5MjAwLDE1NTQwMDEyMDAsMTU3MjE0ODgwMCwxNTg1NDUwODAwLDE2MDM1OTg0MDAsMTYxNjkwMDQwMCwxNjM1NjUyODAwLDE2NDgzNWU0LDE2NjcxMDI0MDAsMTY3OTc5OTYwMCwxNjk4NTUyZTMsMTcxMTg1NGUzLDE3MzAwMDE2MDAsMTc0MzMwMzYwMCwxNzYxNDUxMjAwLDE3NzQ3NTMyMDAsMTc5MjkwMDgwMCwxODA2MjAyODAwLDE4MjQ5NTUyMDAsMTgzNzY1MjQwMCwxODU2NDA0ODAwLDE4NjkxMDJlMywxODg3ODU0NDAwLDE5MDExNTY0MDAsMTkxOTMwNGUzLDE5MzI2MDZlM10sb2Zmc2V0Ols1NjkyLDU2OTIsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMF19LCJFdXJvcGUvQmVsZ3JhZGUiOnsKdGltZTpbLTI3MTM5MTA0MDAsLTkwNTgyMTIwMCwtODU3MjVlNCwtODQ0NTUyODAwLC04MjgyMTk2MDAsLTgxMjQ5ODQwMCwtNzk2NzdlNCwtNzc3OTM4NDAwLC03NjY2MTY0MDAsNDE3NTc4NDAwLDQzMzMwNjgwMCw0NDkwMjhlMyw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDk1NDAzNmUzLDk3Mjc4ODQwMCw5ODU0ODU2MDAsMTAwNDIzOGUzLDEwMTc1NGU0LDEwMzU2ODc2MDAsMTA0ODk4OTYwMCwxMDY3MTM3MjAwLDEwODA0MzkyMDAsMTA5OTE5MTYwMCwxMTExODg4ODAwLDExMzA2NDEyMDAsMTE0MzMzODQwMCwxMTYyMDkwODAwLDExNzQ3ODhlMywxMTkzNTQwNDAwLDEyMDY4NDI0MDAsMTIyNDk5ZTQsMTIzODI5MmUzLDEyNTY0Mzk2MDAsMTI2OTc0MTYwMCwxMjg4NDk0ZTMsMTMwMTE5MTIwMCwxMzE5OTQzNjAwLDEzMzI2NDA4MDAsMTM1MTM5MzIwMCwxMzY0Njk1MjAwLDEzODI4NDI4MDAsMTM5NjE0NDgwMCwxNDE0MjkyNDAwLDE0Mjc1OTQ0MDAsMTQ0NTc0MmUzLDE0NTkwNDRlMywxNDc3Nzk2NDAwLDE0OTA0OTM2MDAsMTUwOTI0NmUzLDE1MjE5NDMyMDAsMTU0MDY5NTYwMCwxNTUzOTk3NjAwLDE1NzIxNDUyMDAsMTU4NTQ0NzIwMCwxNjAzNTk0ODAwLDE2MTY4OTY4MDAsMTYzNTY0OTIwMCwxNjQ4MzQ2NDAwLDE2NjcwOTg4MDAsMTY3OTc5NmUzLDE2OTg1NDg0MDAsMTcxMTg1MDQwMCwxNzI5OTk4ZTMsMTc0MzNlNSwxNzYxNDQ3NjAwLDE3NzQ3NDk2MDAsMTc5Mjg5NzIwMCwxODA2MTk5MjAwLDE4MjQ5NTE2MDAsMTgzNzY0ODgwMCwxODU2NDAxMjAwLDE4NjkwOTg0MDAsMTg4Nzg1MDgwMCwxOTAxMTUyODAwLDE5MTkzMDA0MDAsMTkzMjYwMjQwMF0sb2Zmc2V0Ols0OTIwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9CZXJsaW4iOnt0aW1lOlstMjQyMjA1MTIwMCwtMTY5MzcwMjgwMCwtMTY4MDQ3NjQwMCwtMTY2MzQ1MmUzLC0xNjUwMTQyODAwLC0xNjMyMDAyNDAwLC0xNjE4NjkzMjAwLC05Mzg5MDE2MDAsLTg1NzI1ZTQsLTg0NDU1MjgwMCwtODI4MjE5NjAwLC04MTI0OTg0MDAsLTc5Njc3ZTQsLTc4MTA0ODgwMCwtNzc2NTU2ZTMsLTc2NTkyNTIwMCwtNzYxMTczMjAwLC03NDg0NzZlMywtNzMzMjY2ZTMsLTcxNzYyNzYwMCwtNzE0NjAzNjAwLC03MTAzN2U0LC03MDE5MDI4MDAsLTY4NDk3MmUzLC02NzA0NTMyMDAsLTY1NDEyNzIwMCwtNjM5MDAzNjAwLDMyMzgzNDQwMCwzMzg5NThlMywzNTQ2NzkyMDAsMzcwNDA3NjAwLDM4NjEyODgwMCw0MDE4NTcyMDAsNDE3NTc4NDAwLDQzMzMwNjgwMCw0NDkwMjhlMyw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDk1NDAzNmUzLDk3Mjc4ODQwMCw5ODU0ODU2MDAsMTAwNDIzOGUzLDEwMTc1NGU0LDEwMzU2ODc2MDAsMTA0ODk4OTYwMCwxMDY3MTM3MjAwLDEwODA0MzkyMDAsMTA5OTE5MTYwMCwxMTExODg4ODAwLDExMzA2NDEyMDAsMTE0MzMzODQwMCwxMTYyMDkwODAwLDExNzQ3ODhlMywxMTkzNTQwNDAwLDEyMDY4NDI0MDAsMTIyNDk5ZTQsMTIzODI5MmUzLDEyNTY0Mzk2MDAsMTI2OTc0MTYwMCwxMjg4NDk0ZTMsMTMwMTE5MTIwMCwxMzE5OTQzNjAwLDEzMzI2NDA4MDAsMTM1MTM5MzIwMCwxMzY0Njk1MjAwLDEzODI4NDI4MDAsMTM5NjE0NDgwMCwxNDE0MjkyNDAwLDE0Mjc1OTQ0MDAsMTQ0NTc0MmUzLDE0NTkwNDRlMywxNDc3Nzk2NDAwLDE0OTA0OTM2MDAsMTUwOTI0NmUzLDE1MjE5NDMyMDAsMTU0MDY5NTYwMCwxNTUzOTk3NjAwLDE1NzIxNDUyMDAsMTU4NTQ0NzIwMCwxNjAzNTk0ODAwLDE2MTY4OTY4MDAsMTYzNTY0OTIwMCwxNjQ4MzQ2NDAwLDE2NjcwOTg4MDAsMTY3OTc5NmUzLDE2OTg1NDg0MDAsMTcxMTg1MDQwMCwxNzI5OTk4ZTMsMTc0MzNlNSwxNzYxNDQ3NjAwLDE3NzQ3NDk2MDAsMTc5Mjg5NzIwMCwxODA2MTk5MjAwLDE4MjQ5NTE2MDAsMTgzNzY0ODgwMCwxODU2NDAxMjAwLDE4NjkwOTg0MDAsMTg4Nzg1MDgwMCwxOTAxMTUyODAwLDE5MTkzMDA0MDAsMTkzMjYwMjQwMF0sCm9mZnNldDpbMzIwOCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMTA4MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDEwODAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9CcmF0aXNsYXZhIjp7dGltZTpbLTM3ODY4MjU2MDAsLTI0NjkzOTg0MDAsLTE2OTM3MDI4MDAsLTE2ODA0NzY0MDAsLTE2NjM0NTJlMywtMTY1MDE0MjgwMCwtMTYzMjAwMjQwMCwtMTYxODY5MzIwMCwtOTM4OTAxNjAwLC04NTcyNWU0LC04NDQ1NTI4MDAsLTgyODIxOTYwMCwtODEyNDk4NDAwLC03OTY3N2U0LC03ODEwNDg4MDAsLTc2NTMyMDQwMCwtNzQ2NTc1MjAwLC03MzMzNTI0MDAsLTcyODUxNGUzLC03MjEyNmU0LC03MTY0MjE2MDAsLTcwMTkwMjgwMCwtNjg0OTcyZTMsLTY3MDQ1MzIwMCwtNjU0MjEzNjAwLC02MzkwMDM2MDAsMjkxNzhlNCwzMDc1MDg0MDAsMzIzODM0NDAwLDMzODk1OGUzLDM1NDY3OTIwMCwzNzA0MDc2MDAsMzg2MTI4ODAwLDQwMTg1NzIwMCw0MTc1Nzg0MDAsNDMzMzA2ODAwLDQ0OTAyOGUzLDQ2NTM2MTIwMCw0ODEwODI0MDAsNDk2ODEwODAwLDUxMjUzMmUzLDUyODI2MDQwMCw1NDM5ODE2MDAsNTU5NzFlNCw1NzU0MzEyMDAsNTkxMTU5NjAwLDYwNjg4MDgwMCw2MjI2MDkyMDAsNjM4MzMwNDAwLDY1NDY2MzYwMCw2NzAzODQ4MDAsNjg2MTEzMjAwLDcwMTgzNDQwMCw3MTc1NjI4MDAsNzMzMjg0ZTMsNzQ5MDEyNDAwLDc2NDczMzYwMCw3ODA0NjJlMyw3OTYxODMyMDAsODExOTExNjAwLDgyODIzNzYwMCw4NDYzODUyMDAsODU5Njg3MjAwLDg3NzgzNDgwMCw4OTExMzY4MDAsOTA5Mjg0NDAwLDkyMjU4NjQwMCw5NDEzMzg4MDAsOTU0MDM2ZTMsOTcyNzg4NDAwLDk4NTQ4NTYwMCwxMDA0MjM4ZTMsMTAxNzU0ZTQsMTAzNTY4NzYwMCwxMDQ4OTg5NjAwLDEwNjcxMzcyMDAsMTA4MDQzOTIwMCwxMDk5MTkxNjAwLDExMTE4ODg4MDAsMTEzMDY0MTIwMCwxMTQzMzM4NDAwLDExNjIwOTA4MDAsMTE3NDc4OGUzLDExOTM1NDA0MDAsMTIwNjg0MjQwMCwxMjI0OTllNCwxMjM4MjkyZTMsMTI1NjQzOTYwMCwxMjY5NzQxNjAwLDEyODg0OTRlMywxMzAxMTkxMjAwLDEzMTk5NDM2MDAsMTMzMjY0MDgwMCwxMzUxMzkzMjAwLDEzNjQ2OTUyMDAsMTM4Mjg0MjgwMCwxMzk2MTQ0ODAwLDE0MTQyOTI0MDAsMTQyNzU5NDQwMCwxNDQ1NzQyZTMsMTQ1OTA0NGUzLDE0Nzc3OTY0MDAsMTQ5MDQ5MzYwMCwxNTA5MjQ2ZTMsMTUyMTk0MzIwMCwxNTQwNjk1NjAwLDE1NTM5OTc2MDAsMTU3MjE0NTIwMCwxNTg1NDQ3MjAwLDE2MDM1OTQ4MDAsMTYxNjg5NjgwMCwxNjM1NjQ5MjAwLDE2NDgzNDY0MDAsMTY2NzA5ODgwMCwxNjc5Nzk2ZTMsMTY5ODU0ODQwMCwxNzExODUwNDAwLDE3Mjk5OThlMywxNzQzM2U1LDE3NjE0NDc2MDAsMTc3NDc0OTYwMCwxNzkyODk3MjAwLDE4MDYxOTkyMDAsMTgyNDk1MTYwMCwxODM3NjQ4ODAwLDE4NTY0MDEyMDAsMTg2OTA5ODQwMCwxODg3ODUwODAwLDE5MDExNTI4MDAsMTkxOTMwMDQwMCwxOTMyNjAyNDAwXSxvZmZzZXQ6WzM0NjQsMzQ2NCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMF19LCJFdXJvcGUvQnJ1c3NlbHMiOnsKdGltZTpbLTI4NDAxNDA4MDAsLTI0NTA5OTQxNTAsLTE3NDAzNTUyMDAsLTE2OTM2OTkyMDAsLTE2ODA0NzY0MDAsLTE2NjM0NTJlMywtMTY1MDE0MjgwMCwtMTYzMjAwMjQwMCwtMTYxODY5MzIwMCwtMTYxMzgyMjQwMCwtMTYwNDI3ODgwMCwtMTU4NTUyNjQwMCwtMTU3NDAzODgwMCwtMTU1MjI2MjQwMCwtMTUzOTk5NzIwMCwtMTUyMDU1MzYwMCwtMTUwNzUxMDgwMCwtMTQ5MDU3MjgwMCwtMTQ3MzY0MmUzLC0xNDU5MTIzMjAwLC0xNDQ0MDA2ODAwLC0xNDI3NjczNjAwLC0xNDExOTUyNDAwLC0xMzk2MjI0ZTMsLTEzNzkyOTMyMDAsLTEzNjQ3NzQ0MDAsLTEzNDg0NDg0MDAsLTEzMzMzMjQ4MDAsLTEzMTYzOTRlMywtMTMwMTI1OTYwMCwtMTI4NDMyODgwMCwtMTI2OTgxZTQsLTEyNTM0ODRlMywtMTIzODM2MDQwMCwtMTIyMTQyOTYwMCwtMTIwNjkxMDgwMCwtMTE5MTE4OTYwMCwtMTE3NTQ2MTIwMCwtMTE2MDM0NDgwMCwtMTE0MzQwNjgwMCwtMTEyNzY4NTYwMCwtMTExMTk1NzIwMCwtMTA5Njg0MDgwMCwtMTA4MDUwNzYwMCwtMTA2MzU3NjgwMCwtMTA0OTA1OGUzLC0xMDMzMzM2ODAwLC0xMDE3NjA4NDAwLC0xMDAyNDkyZTMsLTk4NjE1ODgwMCwtOTY5MjI4ZTMsLTk1MDQ3NTYwMCwtOTQyMDEyZTMsLTkzNDY2NDQwMCwtODU3MjVlNCwtODQ0NTUyODAwLC04MjgyMTk2MDAsLTgxMjQ5ODQwMCwtNzk4MDY2ZTMsLTc4MTA0ODgwMCwtNzY2NjE2NDAwLC03NDU0NTJlMywtNzMzMjY2ZTMsMjI4ODgwODAwLDI0NDAwNDQwMCwyNjAzMzA0MDAsMjc2MDU4ODAwLDI5MTc4ZTQsMzA3NTA4NDAwLDMyMzgzNDQwMCwzMzg5NThlMywzNTQ2NzkyMDAsMzcwNDA3NjAwLDM4NjEyODgwMCw0MDE4NTcyMDAsNDE3NTc4NDAwLDQzMzMwNjgwMCw0NDkwMjhlMyw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDk1NDAzNmUzLDk3Mjc4ODQwMCw5ODU0ODU2MDAsMTAwNDIzOGUzLDEwMTc1NGU0LDEwMzU2ODc2MDAsMTA0ODk4OTYwMCwxMDY3MTM3MjAwLDEwODA0MzkyMDAsMTA5OTE5MTYwMCwxMTExODg4ODAwLDExMzA2NDEyMDAsMTE0MzMzODQwMCwxMTYyMDkwODAwLDExNzQ3ODhlMywxMTkzNTQwNDAwLDEyMDY4NDI0MDAsMTIyNDk5ZTQsMTIzODI5MmUzLDEyNTY0Mzk2MDAsMTI2OTc0MTYwMCwxMjg4NDk0ZTMsMTMwMTE5MTIwMCwxMzE5OTQzNjAwLDEzMzI2NDA4MDAsMTM1MTM5MzIwMCwxMzY0Njk1MjAwLDEzODI4NDI4MDAsMTM5NjE0NDgwMCwxNDE0MjkyNDAwLDE0Mjc1OTQ0MDAsMTQ0NTc0MmUzLDE0NTkwNDRlMywxNDc3Nzk2NDAwLDE0OTA0OTM2MDAsMTUwOTI0NmUzLDE1MjE5NDMyMDAsMTU0MDY5NTYwMCwxNTUzOTk3NjAwLDE1NzIxNDUyMDAsMTU4NTQ0NzIwMCwxNjAzNTk0ODAwLDE2MTY4OTY4MDAsMTYzNTY0OTIwMCwxNjQ4MzQ2NDAwLDE2NjcwOTg4MDAsMTY3OTc5NmUzLDE2OTg1NDg0MDAsMTcxMTg1MDQwMCwxNzI5OTk4ZTMsMTc0MzNlNSwxNzYxNDQ3NjAwLDE3NzQ3NDk2MDAsMTc5Mjg5NzIwMCwxODA2MTk5MjAwLDE4MjQ5NTE2MDAsMTgzNzY0ODgwMCwxODU2NDAxMjAwLDE4NjkwOTg0MDAsMTg4Nzg1MDgwMCwxOTAxMTUyODAwLDE5MTkzMDA0MDAsMTkzMjYwMjQwMF0sb2Zmc2V0OlsxMDUwLDEwNTAsMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9CdWNoYXJlc3QiOnsKdGltZTpbLTI0NjkzOTg0MDAsLTEyMTMxNDI0MDAsLTExODcwNDk2MDAsLTExNzU0Njg0MDAsLTExNTk3NDcyMDAsLTExNDQwMTg4MDAsLTExMjc2OTI4MDAsLTExMTE5NjQ0MDAsLTEwOTYyNDMyMDAsLTEwODA1MTQ4MDAsLTEwNjQ3OTM2MDAsLTEwNDkwNjUyMDAsLTEwMzMzNDRlMywtMTAxNzYxNTYwMCwtMTAwMTg5NDQwMCwtOTg2MTY2ZTMsLTk3MDQ0NDgwMCwtOTU0NzE2NDAwLDI5NjYxMTIwMCwzMDc0OTc2MDAsMzIzODIzNjAwLDMzODk1MDgwMCwzNTQ2NzkyMDAsMzcwNDA3NjAwLDM4NjEyODgwMCw0MDE4NTcyMDAsNDE3NTc4NDAwLDQzMzMwNjgwMCw0NDkwMjhlMyw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzc3NjAwLDY4NjEwNmUzLDcwMTgyNzIwMCw3MTc1NTU2MDAsNzMzMjc2ODAwLDc0OTAwNTIwMCw3NjQ3MjY0MDAsNzgwNDUxMjAwLDc5NjE3NmUzLDgxMTkwMDgwMCw4MjgyMzA0MDAsODQ2Mzc0NDAwLDg1OTY5MDgwMCw4Nzc4Mzg0MDAsODkxMTQwNDAwLDkwOTI4OGUzLDkyMjU5ZTQsOTQxMzQyNDAwLDk1NDAzOTYwMCw5NzI3OTJlMyw5ODU0ODkyMDAsMTAwNDI0MTYwMCwxMDE3NTQzNjAwLDEwMzU2OTEyMDAsMTA0ODk5MzIwMCwxMDY3MTQwODAwLDEwODA0NDI4MDAsMTA5OTE5NTIwMCwxMTExODkyNDAwLDExMzA2NDQ4MDAsMTE0MzM0MmUzLDExNjIwOTQ0MDAsMTE3NDc5MTYwMCwxMTkzNTQ0ZTMsMTIwNjg0NmUzLDEyMjQ5OTM2MDAsMTIzODI5NTYwMCwxMjU2NDQzMjAwLDEyNjk3NDUyMDAsMTI4ODQ5NzYwMCwxMzAxMTk0ODAwLDEzMTk5NDcyMDAsMTMzMjY0NDQwMCwxMzUxMzk2ODAwLDEzNjQ2OTg4MDAsMTM4Mjg0NjQwMCwxMzk2MTQ4NDAwLDE0MTQyOTZlMywxNDI3NTk4ZTMsMTQ0NTc0NTYwMCwxNDU5MDQ3NjAwLDE0Nzc4ZTUsMTQ5MDQ5NzIwMCwxNTA5MjQ5NjAwLDE1MjE5NDY4MDAsMTU0MDY5OTIwMCwxNTU0MDAxMjAwLDE1NzIxNDg4MDAsMTU4NTQ1MDgwMCwxNjAzNTk4NDAwLDE2MTY5MDA0MDAsMTYzNTY1MjgwMCwxNjQ4MzVlNCwxNjY3MTAyNDAwLDE2Nzk3OTk2MDAsMTY5ODU1MmUzLDE3MTE4NTRlMywxNzMwMDAxNjAwLDE3NDMzMDM2MDAsMTc2MTQ1MTIwMCwxNzc0NzUzMjAwLDE3OTI5MDA4MDAsMTgwNjIwMjgwMCwxODI0OTU1MjAwLDE4Mzc2NTI0MDAsMTg1NjQwNDgwMCwxODY5MTAyZTMsMTg4Nzg1NDQwMCwxOTAxMTU2NDAwLDE5MTkzMDRlMywxOTMyNjA2ZTNdLG9mZnNldDpbNjI2NCw2MjY0LDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDBdfSwiRXVyb3BlL0J1ZGFwZXN0Ijp7CnRpbWU6Wy0yNDk4MjU2ZTMsLTE2OTM3MDI4MDAsLTE2ODA0NzY0MDAsLTE2NjM0NTJlMywtMTY1MDE0MjgwMCwtMTYzMjAwMjQwMCwtMTYxODY5MzIwMCwtMTYwMDQ2NjQwMCwtMTU4NzI0MzYwMCwtMTU2OTcwOGUzLC0xNTU1MTg5MjAwLC05MDY3NzE2MDAsLTg1NzI1ZTQsLTg0NDU1MjgwMCwtODI4MjE5NjAwLC04MTI0OTg0MDAsLTc5Njc3ZTQsLTc3ODQ2NzYwMCwtNzYyNjQ5MjAwLC03NDk2ODU2MDAsLTczMzI2OTYwMCwtNzE3NjMxMjAwLC03MDE5MDI4MDAsLTY4NjE4MTYwMCwtNjcwNDUzMjAwLC02NTQxMjcyMDAsLTYzOTAwMzYwMCwtNDkyNjUyODAwLC00ODExNjE2MDAsLTQ2MTE5NmUzLC00NDk3MDEyMDAsLTQyODUzNjgwMCwtNDE4MjUxNjAwLC0zOTcwODcyMDAsLTM4NjgwMmUzLDMyMzgyNzIwMCwzMzg5NTA4MDAsMzU0NjcyZTMsMzcwNDAwNDAwLDM4NjEyMTYwMCw0MDE4NWU0LDQxNzU3MTIwMCw0MzMyOTk2MDAsNDQ5MDI4ZTMsNDY1MzYxMjAwLDQ4MTA4MjQwMCw0OTY4MTA4MDAsNTEyNTMyZTMsNTI4MjYwNDAwLDU0Mzk4MTYwMCw1NTk3MWU0LDU3NTQzMTIwMCw1OTExNTk2MDAsNjA2ODgwODAwLDYyMjYwOTIwMCw2MzgzMzA0MDAsNjU0NjYzNjAwLDY3MDM4NDgwMCw2ODYxMTMyMDAsNzAxODM0NDAwLDcxNzU2MjgwMCw3MzMyODRlMyw3NDkwMTI0MDAsNzY0NzMzNjAwLDc4MDQ2MmUzLDc5NjE4MzIwMCw4MTE5MTE2MDAsODI4MjM3NjAwLDg0NjM4NTIwMCw4NTk2ODcyMDAsODc3ODM0ODAwLDg5MTEzNjgwMCw5MDkyODQ0MDAsOTIyNTg2NDAwLDk0MTMzODgwMCw5NTQwMzZlMyw5NzI3ODg0MDAsOTg1NDg1NjAwLDEwMDQyMzhlMywxMDE3NTRlNCwxMDM1Njg3NjAwLDEwNDg5ODk2MDAsMTA2NzEzNzIwMCwxMDgwNDM5MjAwLDEwOTkxOTE2MDAsMTExMTg4ODgwMCwxMTMwNjQxMjAwLDExNDMzMzg0MDAsMTE2MjA5MDgwMCwxMTc0Nzg4ZTMsMTE5MzU0MDQwMCwxMjA2ODQyNDAwLDEyMjQ5OWU0LDEyMzgyOTJlMywxMjU2NDM5NjAwLDEyNjk3NDE2MDAsMTI4ODQ5NGUzLDEzMDExOTEyMDAsMTMxOTk0MzYwMCwxMzMyNjQwODAwLDEzNTEzOTMyMDAsMTM2NDY5NTIwMCwxMzgyODQyODAwLDEzOTYxNDQ4MDAsMTQxNDI5MjQwMCwxNDI3NTk0NDAwLDE0NDU3NDJlMywxNDU5MDQ0ZTMsMTQ3Nzc5NjQwMCwxNDkwNDkzNjAwLDE1MDkyNDZlMywxNTIxOTQzMjAwLDE1NDA2OTU2MDAsMTU1Mzk5NzYwMCwxNTcyMTQ1MjAwLDE1ODU0NDcyMDAsMTYwMzU5NDgwMCwxNjE2ODk2ODAwLDE2MzU2NDkyMDAsMTY0ODM0NjQwMCwxNjY3MDk4ODAwLDE2Nzk3OTZlMywxNjk4NTQ4NDAwLDE3MTE4NTA0MDAsMTcyOTk5OGUzLDE3NDMzZTUsMTc2MTQ0NzYwMCwxNzc0NzQ5NjAwLDE3OTI4OTcyMDAsMTgwNjE5OTIwMCwxODI0OTUxNjAwLDE4Mzc2NDg4MDAsMTg1NjQwMTIwMCwxODY5MDk4NDAwLDE4ODc4NTA4MDAsMTkwMTE1MjgwMCwxOTE5MzAwNDAwLDE5MzI2MDI0MDBdLG9mZnNldDpbNDU4MCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDBdfSwiRXVyb3BlL0NvcGVuaGFnZW4iOnsKdGltZTpbLTI1MjQ1MjE2MDAsLTIzOTgyOTEyMDAsLTE2OTI0OTMyMDAsLTE2ODA0ODM2MDAsLTkzNTEwNzIwMCwtODU3MjVlNCwtODQ0NTUyODAwLC04MjgyMTk2MDAsLTgxMjQ5ODQwMCwtNzk2NzdlNCwtNzgxMDQ4ODAwLC03NjkzODEyMDAsLTc0NzAwNzIwMCwtNzM2Mzc2NDAwLC03MTUyMTJlMywtNzA2NzQxMjAwLC02ODMxNTc2MDAsLTY3NTI5MTYwMCwzMjM4MzQ0MDAsMzM4OTU4ZTMsMzU0Njc5MjAwLDM3MDQwNzYwMCwzODYxMjg4MDAsNDAxODU3MjAwLDQxNzU3ODQwMCw0MzMzMDY4MDAsNDQ5MDI4ZTMsNDY1MzYxMjAwLDQ4MTA4MjQwMCw0OTY4MTA4MDAsNTEyNTMyZTMsNTI4MjYwNDAwLDU0Mzk4MTYwMCw1NTk3MWU0LDU3NTQzMTIwMCw1OTExNTk2MDAsNjA2ODgwODAwLDYyMjYwOTIwMCw2MzgzMzA0MDAsNjU0NjYzNjAwLDY3MDM4NDgwMCw2ODYxMTMyMDAsNzAxODM0NDAwLDcxNzU2MjgwMCw3MzMyODRlMyw3NDkwMTI0MDAsNzY0NzMzNjAwLDc4MDQ2MmUzLDc5NjE4MzIwMCw4MTE5MTE2MDAsODI4MjM3NjAwLDg0NjM4NTIwMCw4NTk2ODcyMDAsODc3ODM0ODAwLDg5MTEzNjgwMCw5MDkyODQ0MDAsOTIyNTg2NDAwLDk0MTMzODgwMCw5NTQwMzZlMyw5NzI3ODg0MDAsOTg1NDg1NjAwLDEwMDQyMzhlMywxMDE3NTRlNCwxMDM1Njg3NjAwLDEwNDg5ODk2MDAsMTA2NzEzNzIwMCwxMDgwNDM5MjAwLDEwOTkxOTE2MDAsMTExMTg4ODgwMCwxMTMwNjQxMjAwLDExNDMzMzg0MDAsMTE2MjA5MDgwMCwxMTc0Nzg4ZTMsMTE5MzU0MDQwMCwxMjA2ODQyNDAwLDEyMjQ5OWU0LDEyMzgyOTJlMywxMjU2NDM5NjAwLDEyNjk3NDE2MDAsMTI4ODQ5NGUzLDEzMDExOTEyMDAsMTMxOTk0MzYwMCwxMzMyNjQwODAwLDEzNTEzOTMyMDAsMTM2NDY5NTIwMCwxMzgyODQyODAwLDEzOTYxNDQ4MDAsMTQxNDI5MjQwMCwxNDI3NTk0NDAwLDE0NDU3NDJlMywxNDU5MDQ0ZTMsMTQ3Nzc5NjQwMCwxNDkwNDkzNjAwLDE1MDkyNDZlMywxNTIxOTQzMjAwLDE1NDA2OTU2MDAsMTU1Mzk5NzYwMCwxNTcyMTQ1MjAwLDE1ODU0NDcyMDAsMTYwMzU5NDgwMCwxNjE2ODk2ODAwLDE2MzU2NDkyMDAsMTY0ODM0NjQwMCwxNjY3MDk4ODAwLDE2Nzk3OTZlMywxNjk4NTQ4NDAwLDE3MTE4NTA0MDAsMTcyOTk5OGUzLDE3NDMzZTUsMTc2MTQ0NzYwMCwxNzc0NzQ5NjAwLDE3OTI4OTcyMDAsMTgwNjE5OTIwMCwxODI0OTUxNjAwLDE4Mzc2NDg4MDAsMTg1NjQwMTIwMCwxODY5MDk4NDAwLDE4ODc4NTA4MDAsMTkwMTE1MjgwMCwxOTE5MzAwNDAwLDE5MzI2MDI0MDBdLG9mZnNldDpbMzAyMCwzMDIwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMF19LCJFdXJvcGUvRHVibGluIjp7CnRpbWU6Wy0yODIxNjUxMjAwLC0xNjkxOTY0ZTMsLTE2ODA0NjkyMDAsLTE2NjQxNDMyMDAsLTE2NTAxNDI4MDAsLTE2MzM5MDMyMDAsLTE2MTc0ODM2MDAsLTE2MDE4NDg4MDAsLTE1ODYwMzRlMywtMTU3MDM5OTIwMCwtMTU1MjE2NTIwMCwtMTUzODM0NDgwMCwtMTUyMjUzZTQsLTE1MDc1ZTUsLTE0OTA1NjJlMywtMTQ3MzYzMTIwMCwtMTQ2MDkyNjgwMCwtMTQ0Mjc4NjQwMCwtMTQyODg3MjQwMCwtMTQxMDczMmUzLC0xMzk2MjEzMjAwLC0xMzc5MjgyNDAwLC0xMzY0NzYzNjAwLC0xMzQ4NDM3NjAwLC0xMzMzMzE0ZTMsLTEzMTU3Nzg0MDAsLTEzMDEyNTk2MDAsLTEyODQzMjg4MDAsLTEyNjk4MWU0LC0xMjUzNDg0ZTMsLTEyMzgzNjA0MDAsLTEyMjE0Mjk2MDAsLTEyMDY5MTA4MDAsLTExODk5OGU0LC0xMTc1NDYxMjAwLC0xMTU5MTM1MjAwLC0xMTQzNDA2ODAwLC0xMTI2NDc2ZTMsLTExMTE5NTcyMDAsLTEwOTU2MzEyMDAsLTEwODA1MDc2MDAsLTEwNjM1NzY4MDAsLTEwNDkwNThlMywtMTAzMjEyNzIwMCwtMTAxNzYwODQwMCwtMTAwMTI4MjQwMCwtOTg2MTU4ODAwLC05NjkyMjhlMywtOTUwNDc1NjAwLC05NDIwMTJlMywtNzMzMzUyNDAwLC03MTk0NDU2MDAsLTY5OTQ4MzYwMCwtNjg0OTcyZTMsLTY2ODAzNGUzLC02NTQ3MzJlMywtNjM2NTg0NDAwLC02MjIwNzI4MDAsLTYwNTczOTYwMCwtNTkwNjIzMjAwLC01NzQyOWU0LC01NTg1Njg4MDAsLTU0MjIzNTYwMCwtNTI3MTE5MjAwLC01MTI2MDA0MDAsLTQ5NjI3NDQwMCwtNDgxMTUwODAwLC00NjQyMmU0LC00NDk3MDEyMDAsLTQzMjE2NTYwMCwtNDE3NjQ2ODAwLC00MDEzMjA4MDAsLTM4NjE5NzIwMCwtMzY5MjY2NDAwLC0zNTQ3NDc2MDAsLTMzNzgxNjgwMCwtMzIzMjk4ZTMsLTMwNjk3MmUzLC0yOTE4NDg0MDAsLTI3NjczMmUzLC0yNTc5Nzk2MDAsLTI0NTI4MjQwMCwtMjI2NTNlNCwtMjEzMjI4ZTMsLTE5NTA4MDQwMCwtMTgyMzgzMjAwLC0xNjM2MzA4MDAsLTE1MDkzMzYwMCwtMTMyMTgxMjAwLC0xMTk0ODRlMywtMTAwNzMxNjAwLC04ODAzNDQwMCwtNjg2NzcyMDAsLTU5MDA0ZTMsNTc3MjZlMyw2OTgxODQwMCw4OTE3NTYwMCwxMDEyNjhlMywxMjA2MjUyMDAsMTMyNzE3NjAwLDE1MjA3NDgwMCwxNjQxNjcyMDAsMTgzNTI0NDAwLDE5NjIyMTYwMCwyMTQ5NzRlMywyMjc2NzEyMDAsMjQ2NDIzNjAwLDI1OTEyMDgwMCwyNzg0NzhlMywyOTA1NzA0MDAsMzA5OTI3NjAwLDMyMjAyZTQsMzQxMzc3MjAwLDM1NDY3NTYwMCwzNzI4MjMyMDAsMzg2MTI1MjAwLDQwNDI3MjgwMCw0MTc1NzQ4MDAsNDM1NzIyNDAwLDQ0OTAyNDQwMCw0Njc3NzY4MDAsNDgxMDc4ODAwLDQ5OTIyNjQwMCw1MTI1Mjg0MDAsNTMwNjc2ZTMsNTQzOTc4ZTMsNTYyMTI1NjAwLDU3NTQyNzYwMCw1OTM1NzUyMDAsNjA2ODc3MjAwLDYyNTYyOTYwMCw2MzgzMjY4MDAsNjU3MDc5MjAwLDY3MDM4MTIwMCw2ODg1Mjg4MDAsNzAxODMwODAwLDcxOTk3ODQwMCw3MzMyODA0MDAsNzUxNDI4ZTMsNzY0NzNlNCw3ODI4Nzc2MDAsNzk2MTc5NjAwLDgxNDMyNzIwMCw4MjgyMzRlMyw4NDYzODE2MDAsODU5NjgzNjAwLDg3NzgzMTIwMCw4OTExMzMyMDAsOTA5MjgwODAwLDkyMjU4MjgwMCw5NDEzMzUyMDAsOTU0MDMyNDAwLDk3Mjc4NDgwMCw5ODU0ODJlMywxMDA0MjM0NDAwLDEwMTc1MzY0MDAsMTAzNTY4NGUzLDEwNDg5ODZlMywxMDY3MTMzNjAwLDEwODA0MzU2MDAsMTA5OTE4OGUzLDExMTE4ODUyMDAsMTEzMDYzNzYwMCwxMTQzMzM0ODAwLDExNjIwODcyMDAsMTE3NDc4NDQwMCwxMTkzNTM2ODAwLDEyMDY4Mzg4MDAsMTIyNDk4NjQwMCwxMjM4Mjg4NDAwLDEyNTY0MzZlMywxMjY5NzM4ZTMsMTI4ODQ5MDQwMCwxMzAxMTg3NjAwLDEzMTk5NGU0LDEzMzI2MzcyMDAsMTM1MTM4OTYwMCwxMzY0NjkxNjAwLDEzODI4MzkyMDAsMTM5NjE0MTIwMCwxNDE0Mjg4ODAwLDE0Mjc1OTA4MDAsMTQ0NTczODQwMCwxNDU5MDQwNDAwLDE0Nzc3OTI4MDAsMTQ5MDQ5ZTQsMTUwOTI0MjQwMCwxNTIxOTM5NjAwLDE1NDA2OTJlMywxNTUzOTk0ZTMsMTU3MjE0MTYwMCwxNTg1NDQzNjAwLDE2MDM1OTEyMDAsMTYxNjg5MzIwMCwxNjM1NjQ1NjAwLDE2NDgzNDI4MDAsMTY2NzA5NTIwMCwxNjc5NzkyNDAwLDE2OTg1NDQ4MDAsMTcxMTg0NjgwMCwxNzI5OTk0NDAwLDE3NDMyOTY0MDAsMTc2MTQ0NGUzLDE3NzQ3NDZlMywxNzkyODkzNjAwLDE4MDYxOTU2MDAsMTgyNDk0OGUzLDE4Mzc2NDUyMDAsMTg1NjM5NzYwMCwxODY5MDk0ODAwLDE4ODc4NDcyMDAsMTkwMTE0OTIwMCwxOTE5Mjk2ODAwLDE5MzI1OTg4MDBdLG9mZnNldDpbLTE1MjEsLTE1MjEsMjA3OSwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwXX0sIkV1cm9wZS9IZWxzaW5raSI6ewp0aW1lOlstMjg5MDI1MjgwMCwtMTUzNTkzMjgwMCwtODc1NjY0ZTMsLTg1OTc2MjgwMCwzNTQ2NzkyMDAsMzcwNDA3NjAwLDM4NjEyODgwMCw0MDE4NTcyMDAsNDE3NTgyZTMsNDMzMzEwNDAwLDQ0OTAzMTYwMCw0NjUzNjQ4MDAsNDgxMDg2ZTMsNDk2ODE0NDAwLDUxMjUzNTYwMCw1MjgyNjRlMyw1NDM5ODUyMDAsNTU5NzEzNjAwLDU3NTQzNDgwMCw1OTExNjMyMDAsNjA2ODg0NDAwLDYyMjYxMjgwMCw2MzgzMzRlMyw2NTQ2NjcyMDAsNjcwMzg4NDAwLDY4NjExNjgwMCw3MDE4MzhlMyw3MTc1NjY0MDAsNzMzMjg3NjAwLDc0OTAxNmUzLDc2NDczNzIwMCw3ODA0NjU2MDAsNzk2MTg2ODAwLDgxMTkxNTIwMCw4MjgyNDEyMDAsODQ2Mzg4ODAwLDg1OTY5MDgwMCw4Nzc4Mzg0MDAsODkxMTQwNDAwLDkwOTI4OGUzLDkyMjU5ZTQsOTQxMzQyNDAwLDk1NDAzOTYwMCw5NzI3OTJlMyw5ODU0ODkyMDAsMTAwNDI0MTYwMCwxMDE3NTQzNjAwLDEwMzU2OTEyMDAsMTA0ODk5MzIwMCwxMDY3MTQwODAwLDEwODA0NDI4MDAsMTA5OTE5NTIwMCwxMTExODkyNDAwLDExMzA2NDQ4MDAsMTE0MzM0MmUzLDExNjIwOTQ0MDAsMTE3NDc5MTYwMCwxMTkzNTQ0ZTMsMTIwNjg0NmUzLDEyMjQ5OTM2MDAsMTIzODI5NTYwMCwxMjU2NDQzMjAwLDEyNjk3NDUyMDAsMTI4ODQ5NzYwMCwxMzAxMTk0ODAwLDEzMTk5NDcyMDAsMTMzMjY0NDQwMCwxMzUxMzk2ODAwLDEzNjQ2OTg4MDAsMTM4Mjg0NjQwMCwxMzk2MTQ4NDAwLDE0MTQyOTZlMywxNDI3NTk4ZTMsMTQ0NTc0NTYwMCwxNDU5MDQ3NjAwLDE0Nzc4ZTUsMTQ5MDQ5NzIwMCwxNTA5MjQ5NjAwLDE1MjE5NDY4MDAsMTU0MDY5OTIwMCwxNTU0MDAxMjAwLDE1NzIxNDg4MDAsMTU4NTQ1MDgwMCwxNjAzNTk4NDAwLDE2MTY5MDA0MDAsMTYzNTY1MjgwMCwxNjQ4MzVlNCwxNjY3MTAyNDAwLDE2Nzk3OTk2MDAsMTY5ODU1MmUzLDE3MTE4NTRlMywxNzMwMDAxNjAwLDE3NDMzMDM2MDAsMTc2MTQ1MTIwMCwxNzc0NzUzMjAwLDE3OTI5MDA4MDAsMTgwNjIwMjgwMCwxODI0OTU1MjAwLDE4Mzc2NTI0MDAsMTg1NjQwNDgwMCwxODY5MTAyZTMsMTg4Nzg1NDQwMCwxOTAxMTU2NDAwLDE5MTkzMDRlMywxOTMyNjA2ZTNdLG9mZnNldDpbNTk4OSw1OTg5LDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDBdfSwiRXVyb3BlL0lzdGFuYnVsIjp7dGltZTpbLTI4NDAxNDA4MDAsLTE4Njk4Njg4MDAsLTE2OTM2OTkyMDAsLTE2ODA0OGU0LC0xNTcwNDA2NDAwLC0xNTUyMTc2ZTMsLTE1MzgzNTJlMywtMTUyMjU0MDgwMCwtMTUwNzUwNzIwMCwtMTQ5MDU3MjgwMCwtMTQ0MDIwMTYwMCwtMTQyODAxOTIwMCwtMTQwOTcwMjQwMCwtMTM5NjQ4MzIwMCwtOTMxMDQ2NDAwLC05MjI2NjU2MDAsLTkxNzgyNzIwMCwtODkyNDI1NjAwLC04NzU4MzY4MDAsLTc2NDcyNjQwMCwtNzQ0MzM2ZTMsLTczMzc5NTIwMCwtNzE2NDI4ODAwLC03MDE5MTM2MDAsLTY4NDk3OTIwMCwtNjcwNDY0ZTMsLTY1NDEzNDQwMCwtNjM5MDE0NDAwLC02MjIwOGU0LC02MDY5NmU0LC01OTAwMjU2MDAsLTU3NTUxMDQwMCwtMjM1NjEyODAwLC0xOTQ4MzJlMywtMTc3NzI0ODAwLC0xNjU3MTUyMDAsMTA3OTE3MjAwLDEyMTIyNjQwMCwxMzM5MjcyMDAsMTUyNjc2ZTMsMTY0Njg1NjAwLDE4NDEyNTYwMCwxOTYyMjE2MDAsMjE1NTc1MjAwLDIyODg4MDgwMCwyNDU4MTUyMDAsMjYwMzMwNDAwLDI2NzkyNjQwMCw0Mjg0NjQ4MDAsNDMzOTA4ZTMsNDY4MTIyNDAwLDQ4MjgwNjgwMCw0OTY3MjA4MDAsNTEyNTI4NDAwLDUyODI1NjgwMCw1NDM5NzhlMyw1NTk3MDY0MDAsNTc1NDI3NjAwLDU5MTE1NmUzLDYwNjg3NzIwMCw2MjI2MDU2MDAsNjM4MzI2ODAwLDY1NDY2ZTQsNjcwMzgxMjAwLDY4NjEwOTYwMCw3MDE4MzA4MDAsNzE3NTU5MjAwLDczMzI4MDQwMCw3NDkwMDg4MDAsNzY0MTI1MjAwLDc4MDQ1ODQwMCw3OTYxNzk2MDAsODExOTA4ZTMsODI4MjM0ZTMsODQ2MzgxNjAwLDg1OTY4MzYwMCw4Nzc4MzEyMDAsODkxMTMzMjAwLDkwOTI4MDgwMCw5MjI1ODI4MDAsOTQxMzM1MjAwLDk1NDAzMjQwMCw5NzI3ODQ4MDAsOTg1NDgyZTMsMTAwNDIzNDQwMCwxMDE3NTM2NDAwLDEwMzU2ODRlMywxMDQ4OTg2ZTMsMTA2NzEzMzYwMCwxMDgwNDM1NjAwLDEwOTkxODhlMywxMTExODg1MjAwLDExMzA2Mzc2MDAsMTE0MzMzNDgwMCwxMTYyMDg3MjAwLDExNzQ3OTE2MDAsMTE5MzU0NGUzLDEyMDY4NDZlMywxMjI0OTkzNjAwLDEyMzgyOTU2MDAsMTI1NjQ0MzIwMCwxMjY5NzQ1MjAwLDEyODg0OTc2MDAsMTMwMTI4MTIwMCwxMzE5OTQ3MjAwLDEzMzI2NDQ0MDAsMTM1MTM5NjgwMCwxMzY0Njk4ODAwLDEzODI4NDY0MDAsMTM5NjIzNDgwMCwxNDE0Mjk2ZTMsMTQyNzU5OGUzLDE0NDY5NTUyMDAsMTQ1OTA0NzYwMCwxNDczMjA2NDAwLDE5MjUwMDI4MDBdLApvZmZzZXQ6WzY5NTIsNzAxNiw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsMTA4MDAsMTQ0MDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDEwODAwXX0sIkV1cm9wZS9MaXNib24iOnt0aW1lOlstMTgzMDM4NjIwNSwtMTY4OTU1NTYwMCwtMTY3Nzc5OGUzLC0xNjY3NDMzNjAwLC0xNjQ3NzM0NDAwLC0xNjM1ODk3NjAwLC0xNjE2MTk4NDAwLC0xNjA0MzYxNjAwLC0xNTg0NjYyNDAwLC0xNTcyNzM5MjAwLC0xNTUzMDRlNCwtMTU0MTIwMzIwMCwtMTUyMTUwNGUzLC0xNDQyNDUxNjAwLC0xNDI3NjczNjAwLC0xMzc5MjkzMjAwLC0xMzY0Nzc0NDAwLC0xMzQ4NDQ4NDAwLC0xMzMzMzI0ODAwLC0xMzE2Mzk0ZTMsLTEzMDEyNzA0MDAsLTEyODQzMzk2MDAsLTEyNjk4MjA4MDAsLTEyMjE0NDA0MDAsLTEyMDY5MjE2MDAsLTExOTEyMDA0MDAsLTExNzU0NzJlMywtMTEyNzY5NjQwMCwtMTExMTk2OGUzLC0xMDk2ODUxNjAwLC0xMDgwNTE4NDAwLC0xMDYzNTg3NjAwLC0xMDQ5MDY4ODAwLC0xMDMzMzQ3NjAwLC0xMDE3NjE5MjAwLC0xMDAyNTAyODAwLC05ODYxNjk2MDAsLTk2OTIzODgwMCwtOTUwNDg2NDAwLC05NDIwMjI4MDAsLTkyMjQ5MjgwMCwtOTA2OTQ0NDAwLC04OTExMjk2MDAsLTg3NzMwOTIwMCwtODczNjgwNDAwLC04NjRlNiwtODU3OTUyZTMsLTg0NTg1OTYwMCwtODQyODM1NjAwLC04MzEzNDA4MDAsLTgyNTg5NzYwMCwtODE0NDFlNCwtODEwNzgxMjAwLC03OTk4OTEyMDAsLTc5NDQ0OGUzLC03ODI5NjA0MDAsLTc3OTMzMTYwMCwtNzY4NDQxNjAwLC03NjI5OTg0MDAsLTc0OTA5MTYwMCwtNzMzMzYzMjAwLC03MTc2MzEyMDAsLTcwMTkwMjgwMCwtNjg2MTgxNjAwLC02NzA0NTMyMDAsLTY1NDczMmUzLC02MzkwMDM2MDAsLTYyMzI4MjQwMCwtNjA3NTU0ZTMsLTU5MTgzMjgwMCwtNTc1NDk5NjAwLC01NTk3Nzg0MDAsLTU0NDA1ZTQsLTUyODMyODgwMCwtNTEyNjAwNDAwLC00OTY4NzkyMDAsLTQ4MTE1MDgwMCwtNDY1NDI5NjAwLC00NDk3MDEyMDAsLTQzMzk4ZTQsLTQxNzY0NjgwMCwtNDAxOTI1NjAwLC0zODYxOTcyMDAsLTM3MDQ3NmUzLC0zNTQ3NDc2MDAsLTMzOTAyNjQwMCwtMzIzMjk4ZTMsLTMwNzU3NjgwMCwtMjkxODQ4NDAwLC0yNzYxMjcyMDAsLTI2MDM5ODgwMCwtMjQ0Njc3NjAwLC0yMjgzNDQ0MDAsLTIxMjYyMzIwMCwtMTk2ODk0ODAwLC0xODExNzM2MDAsLTE2NTQ0NTIwMCwtMTQ5NzI0ZTMsLTEzMzk5NTYwMCwtMTE4Mjc0NDAwLC0xMDI1NDZlMywyMTI1NDc2MDAsMjI4MjY4ODAwLDI0Mzk5NzIwMCwyNjAzMjY4MDAsMjc2MDU1MjAwLDI5MTc3NjQwMCwzMDc1MDQ4MDAsMzIzODMwODAwLDMzODk1NDQwMCwzNTQ2NzJlMywzNzA0MDA0MDAsMzg2MTIxNjAwLDQwMTg1ZTQsNDE3NTcxMjAwLDQzMzI5OTYwMCw0NDkwMjA4MDAsNDY1MzU0ZTMsNDgxMDc1MjAwLDQ5NjgwMzYwMCw1MTI1Mjg0MDAsNTI4MjU2ODAwLDU0Mzk3OGUzLDU1OTcwNjQwMCw1NzU0Mjc2MDAsNTkxMTU2ZTMsNjA2ODc3MjAwLDYyMjYwNTYwMCw2MzgzMjY4MDAsNjU0NjZlNCw2NzAzODEyMDAsNjg2MTA5NjAwLDcwMTgzMDgwMCw3MTc1NTkyMDAsNzMzMjg0ZTMsNzQ5MDEyNDAwLDc2NDczMzYwMCw3ODA0NjJlMyw3OTYxODMyMDAsODExOTExNjAwLDgyODIzNzYwMCw4NDYzODE2MDAsODU5NjgzNjAwLDg3NzgzMTIwMCw4OTExMzMyMDAsOTA5MjgwODAwLDkyMjU4MjgwMCw5NDEzMzUyMDAsOTU0MDMyNDAwLDk3Mjc4NDgwMCw5ODU0ODJlMywxMDA0MjM0NDAwLDEwMTc1MzY0MDAsMTAzNTY4NGUzLDEwNDg5ODZlMywxMDY3MTMzNjAwLDEwODA0MzU2MDAsMTA5OTE4OGUzLDExMTE4ODUyMDAsMTEzMDYzNzYwMCwxMTQzMzM0ODAwLDExNjIwODcyMDAsMTE3NDc4NDQwMCwxMTkzNTM2ODAwLDEyMDY4Mzg4MDAsMTIyNDk4NjQwMCwxMjM4Mjg4NDAwLDEyNTY0MzZlMywxMjY5NzM4ZTMsMTI4ODQ5MDQwMCwxMzAxMTg3NjAwLDEzMTk5NGU0LDEzMzI2MzcyMDAsMTM1MTM4OTYwMCwxMzY0NjkxNjAwLDEzODI4MzkyMDAsMTM5NjE0MTIwMCwxNDE0Mjg4ODAwLDE0Mjc1OTA4MDAsMTQ0NTczODQwMCwxNDU5MDQwNDAwLDE0Nzc3OTI4MDAsMTQ5MDQ5ZTQsMTUwOTI0MjQwMCwxNTIxOTM5NjAwLDE1NDA2OTJlMywxNTUzOTk0ZTMsMTU3MjE0MTYwMCwxNTg1NDQzNjAwLDE2MDM1OTEyMDAsMTYxNjg5MzIwMCwxNjM1NjQ1NjAwLDE2NDgzNDI4MDAsMTY2NzA5NTIwMCwxNjc5NzkyNDAwLDE2OTg1NDQ4MDAsMTcxMTg0NjgwMCwxNzI5OTk0NDAwLDE3NDMyOTY0MDAsMTc2MTQ0NGUzLDE3NzQ3NDZlMywxNzkyODkzNjAwLDE4MDYxOTU2MDAsMTgyNDk0OGUzLDE4Mzc2NDUyMDAsMTg1NjM5NzYwMCwxODY5MDk0ODAwLDE4ODc4NDcyMDAsMTkwMTE0OTIwMCwxOTE5Mjk2ODAwLDE5MzI1OTg4MDBdLApvZmZzZXQ6Wy0yMjA1LDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCw3MjAwLDM2MDAsMCwzNjAwLDcyMDAsMzYwMCwwLDM2MDAsNzIwMCwzNjAwLDAsMzYwMCw3MjAwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwXX0sIkV1cm9wZS9ManVibGphbmEiOnt0aW1lOlstMjcxMzkxMDQwMCwtOTA1ODIxMjAwLC04NTcyNWU0LC04NDQ1NTI4MDAsLTgyODIxOTYwMCwtODEyNDk4NDAwLC03OTY3N2U0LC03ODEwNDg4MDAsLTc2NjYxNjQwMCw0MTc1Nzg0MDAsNDMzMzA2ODAwLDQ0OTAyOGUzLDQ2NTM2MTIwMCw0ODEwODI0MDAsNDk2ODEwODAwLDUxMjUzMmUzLDUyODI2MDQwMCw1NDM5ODE2MDAsNTU5NzFlNCw1NzU0MzEyMDAsNTkxMTU5NjAwLDYwNjg4MDgwMCw2MjI2MDkyMDAsNjM4MzMwNDAwLDY1NDY2MzYwMCw2NzAzODQ4MDAsNjg2MTEzMjAwLDcwMTgzNDQwMCw3MTc1NjI4MDAsNzMzMjg0ZTMsNzQ5MDEyNDAwLDc2NDczMzYwMCw3ODA0NjJlMyw3OTYxODMyMDAsODExOTExNjAwLDgyODIzNzYwMCw4NDYzODUyMDAsODU5Njg3MjAwLDg3NzgzNDgwMCw4OTExMzY4MDAsOTA5Mjg0NDAwLDkyMjU4NjQwMCw5NDEzMzg4MDAsOTU0MDM2ZTMsOTcyNzg4NDAwLDk4NTQ4NTYwMCwxMDA0MjM4ZTMsMTAxNzU0ZTQsMTAzNTY4NzYwMCwxMDQ4OTg5NjAwLDEwNjcxMzcyMDAsMTA4MDQzOTIwMCwxMDk5MTkxNjAwLDExMTE4ODg4MDAsMTEzMDY0MTIwMCwxMTQzMzM4NDAwLDExNjIwOTA4MDAsMTE3NDc4OGUzLDExOTM1NDA0MDAsMTIwNjg0MjQwMCwxMjI0OTllNCwxMjM4MjkyZTMsMTI1NjQzOTYwMCwxMjY5NzQxNjAwLDEyODg0OTRlMywxMzAxMTkxMjAwLDEzMTk5NDM2MDAsMTMzMjY0MDgwMCwxMzUxMzkzMjAwLDEzNjQ2OTUyMDAsMTM4Mjg0MjgwMCwxMzk2MTQ0ODAwLDE0MTQyOTI0MDAsMTQyNzU5NDQwMCwxNDQ1NzQyZTMsMTQ1OTA0NGUzLDE0Nzc3OTY0MDAsMTQ5MDQ5MzYwMCwxNTA5MjQ2ZTMsMTUyMTk0MzIwMCwxNTQwNjk1NjAwLDE1NTM5OTc2MDAsMTU3MjE0NTIwMCwxNTg1NDQ3MjAwLDE2MDM1OTQ4MDAsMTYxNjg5NjgwMCwxNjM1NjQ5MjAwLDE2NDgzNDY0MDAsMTY2NzA5ODgwMCwxNjc5Nzk2ZTMsMTY5ODU0ODQwMCwxNzExODUwNDAwLDE3Mjk5OThlMywxNzQzM2U1LDE3NjE0NDc2MDAsMTc3NDc0OTYwMCwxNzkyODk3MjAwLDE4MDYxOTkyMDAsMTgyNDk1MTYwMCwxODM3NjQ4ODAwLDE4NTY0MDEyMDAsMTg2OTA5ODQwMCwxODg3ODUwODAwLDE5MDExNTI4MDAsMTkxOTMwMDQwMCwxOTMyNjAyNDAwXSxvZmZzZXQ6WzM0ODQsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDBdfSwiRXVyb3BlL0xvbmRvbiI6ewp0aW1lOlstMzg1MjY2MjQwMCwtMTY5MTk2NGUzLC0xNjgwNDY5MjAwLC0xNjY0MTQzMjAwLC0xNjUwMTQyODAwLC0xNjMzOTAzMjAwLC0xNjE3NDgzNjAwLC0xNjAxODQ4ODAwLC0xNTg2MDM0ZTMsLTE1NzAzOTkyMDAsLTE1NTIxNjUyMDAsLTE1MzgzNDQ4MDAsLTE1MjI1M2U0LC0xNTA3NWU1LC0xNDkwNTYyZTMsLTE0NzM2MzEyMDAsLTE0NjA5MjY4MDAsLTE0NDI3ODY0MDAsLTE0Mjg4NzI0MDAsLTE0MTA3MzJlMywtMTM5NjIxMzIwMCwtMTM3OTI4MjQwMCwtMTM2NDc2MzYwMCwtMTM0ODQzNzYwMCwtMTMzMzMxNGUzLC0xMzE1Nzc4NDAwLC0xMzAxMjU5NjAwLC0xMjg0MzI4ODAwLC0xMjY5ODFlNCwtMTI1MzQ4NGUzLC0xMjM4MzYwNDAwLC0xMjIxNDI5NjAwLC0xMjA2OTEwODAwLC0xMTg5OThlNCwtMTE3NTQ2MTIwMCwtMTE1OTEzNTIwMCwtMTE0MzQwNjgwMCwtMTEyNjQ3NmUzLC0xMTExOTU3MjAwLC0xMDk1NjMxMjAwLC0xMDgwNTA3NjAwLC0xMDYzNTc2ODAwLC0xMDQ5MDU4ZTMsLTEwMzIxMjcyMDAsLTEwMTc2MDg0MDAsLTEwMDEyODI0MDAsLTk4NjE1ODgwMCwtOTY5MjI4ZTMsLTk1MDQ3NTYwMCwtOTQyMDEyZTMsLTkwNDUxNDQwMCwtODk2MDQzNjAwLC04NzU0ODRlMywtODY0NTk0ZTMsLTg0NDAzNDQwMCwtODMyNTM5NjAwLC04MTI1ODQ4MDAsLTc5ODA2NmUzLC03ODEwNDg4MDAsLTc3MjA1OTYwMCwtNzY0ODAyZTMsLTc0ODQ3NmUzLC03MzMzNTI0MDAsLTcxOTQ0NTYwMCwtNzE3MDI2NDAwLC03MDY3NDEyMDAsLTY5OTQ4MzYwMCwtNjg3OTk2ZTMsLTY2ODAzNGUzLC02NTQ3MzJlMywtNjM2NTg0NDAwLC02MjIwNzI4MDAsLTYwNTczOTYwMCwtNTkwNjIzMjAwLC01NzQyOWU0LC01NTg1Njg4MDAsLTU0MjIzNTYwMCwtNTI3MTE5MjAwLC01MTI2MDA0MDAsLTQ5NjI3NDQwMCwtNDgxMTUwODAwLC00NjQyMmU0LC00NDk3MDEyMDAsLTQzMjE2NTYwMCwtNDE3NjQ2ODAwLC00MDEzMjA4MDAsLTM4NjE5NzIwMCwtMzY5MjY2NDAwLC0zNTQ3NDc2MDAsLTMzNzgxNjgwMCwtMzIzMjk4ZTMsLTMwNjk3MmUzLC0yOTE4NDg0MDAsLTI3NjczMmUzLC0yNTc5Nzk2MDAsLTI0NTI4MjQwMCwtMjI2NTNlNCwtMjEzMjI4ZTMsLTE5NTA4MDQwMCwtMTgyMzgzMjAwLC0xNjM2MzA4MDAsLTE1MDkzMzYwMCwtMTMyMTgxMjAwLC0xMTk0ODRlMywtMTAwNzMxNjAwLC04ODAzNDQwMCwtNjg2NzcyMDAsLTU5MDA0ZTMsLTM3MjM4NDAwLDU3NzI2ZTMsNjk4MTg0MDAsODkxNzU2MDAsMTAxMjY4ZTMsMTIwNjI1MjAwLDEzMjcxNzYwMCwxNTIwNzQ4MDAsMTY0MTY3MjAwLDE4MzUyNDQwMCwxOTYyMjE2MDAsMjE0OTc0ZTMsMjI3NjcxMjAwLDI0NjQyMzYwMCwyNTkxMjA4MDAsMjc4NDc4ZTMsMjkwNTcwNDAwLDMwOTkyNzYwMCwzMjIwMmU0LDM0MTM3NzIwMCwzNTQ2NzU2MDAsMzcyODIzMjAwLDM4NjEyNTIwMCw0MDQyNzI4MDAsNDE3NTc0ODAwLDQzNTcyMjQwMCw0NDkwMjQ0MDAsNDY3Nzc2ODAwLDQ4MTA3ODgwMCw0OTkyMjY0MDAsNTEyNTI4NDAwLDUzMDY3NmUzLDU0Mzk3OGUzLDU2MjEyNTYwMCw1NzU0Mjc2MDAsNTkzNTc1MjAwLDYwNjg3NzIwMCw2MjU2Mjk2MDAsNjM4MzI2ODAwLDY1NzA3OTIwMCw2NzAzODEyMDAsNjg4NTI4ODAwLDcwMTgzMDgwMCw3MTk5Nzg0MDAsNzMzMjgwNDAwLDc1MTQyOGUzLDc2NDczZTQsNzgyODc3NjAwLDc5NjE3OTYwMCw4MTQzMjcyMDAsODI4MjM0ZTMsODQ2MzgxNjAwLDg1OTY4MzYwMCw4Nzc4MzEyMDAsODkxMTMzMjAwLDkwOTI4MDgwMCw5MjI1ODI4MDAsOTQxMzM1MjAwLDk1NDAzMjQwMCw5NzI3ODQ4MDAsOTg1NDgyZTMsMTAwNDIzNDQwMCwxMDE3NTM2NDAwLDEwMzU2ODRlMywxMDQ4OTg2ZTMsMTA2NzEzMzYwMCwxMDgwNDM1NjAwLDEwOTkxODhlMywxMTExODg1MjAwLDExMzA2Mzc2MDAsMTE0MzMzNDgwMCwxMTYyMDg3MjAwLDExNzQ3ODQ0MDAsMTE5MzUzNjgwMCwxMjA2ODM4ODAwLDEyMjQ5ODY0MDAsMTIzODI4ODQwMCwxMjU2NDM2ZTMsMTI2OTczOGUzLDEyODg0OTA0MDAsMTMwMTE4NzYwMCwxMzE5OTRlNCwxMzMyNjM3MjAwLDEzNTEzODk2MDAsMTM2NDY5MTYwMCwxMzgyODM5MjAwLDEzOTYxNDEyMDAsMTQxNDI4ODgwMCwxNDI3NTkwODAwLDE0NDU3Mzg0MDAsMTQ1OTA0MDQwMCwxNDc3NzkyODAwLDE0OTA0OWU0LDE1MDkyNDI0MDAsMTUyMTkzOTYwMCwxNTQwNjkyZTMsMTU1Mzk5NGUzLDE1NzIxNDE2MDAsMTU4NTQ0MzYwMCwxNjAzNTkxMjAwLDE2MTY4OTMyMDAsMTYzNTY0NTYwMCwxNjQ4MzQyODAwLDE2NjcwOTUyMDAsMTY3OTc5MjQwMCwxNjk4NTQ0ODAwLDE3MTE4NDY4MDAsMTcyOTk5NDQwMCwxNzQzMjk2NDAwLDE3NjE0NDRlMywxNzc0NzQ2ZTMsMTc5Mjg5MzYwMCwxODA2MTk1NjAwLDE4MjQ5NDhlMywxODM3NjQ1MjAwLDE4NTYzOTc2MDAsMTg2OTA5NDgwMCwxODg3ODQ3MjAwLDE5MDExNDkyMDAsMTkxOTI5NjgwMCwxOTMyNTk4ODAwXSwKb2Zmc2V0OlstNzUsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsMCwzNjAwLDAsMzYwMCw3MjAwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDBdfSwiRXVyb3BlL0x1eGVtYm91cmciOnt0aW1lOlstMjA2OTcxMmUzLC0xNjkyNDkzMjAwLC0xNjgwNDc2NDAwLC0xNjYyMzM5NjAwLC0xNjUwMTVlNCwtMTYzMjAwMjQwMCwtMTYxODY5MzIwMCwtMTYxMjY1NmUzLC0xNjA0Mjc4ODAwLC0xNTg1NTE1NjAwLC0xNTc0MDM4ODAwLC0xNTUyMjU1MjAwLC0xNTM5OTk3MjAwLC0xNTIwNTQ2NDAwLC0xNTA3NTEwODAwLC0xNDkwNTY5MjAwLC0xNDczNjQyZTMsLTE0NTkxMTZlMywtMTQ0NDAwNjgwMCwtMTQyNzY3ZTQsLTE0MTE4NjZlMywtMTM5NjIyMDQwMCwtMTM3OTI5MzIwMCwtMTM2NDc3MDgwMCwtMTM0ODQ0ODQwMCwtMTMzMzMyMTIwMCwtMTMxNjM5NGUzLC0xMzAxMjY2ODAwLC0xMjg0MzM5NjAwLC0xMjY5ODFlNCwtMTI1MzQ4NGUzLC0xMjM4MzYwNDAwLC0xMjIxNDI5NjAwLC0xMjA2OTEwODAwLC0xMTkxMTg5NjAwLC0xMTc1NDYxMjAwLC0xMTYwMzQ0ODAwLC0xMTQzNDA2ODAwLC0xMTI3Njg1NjAwLC0xMTExOTU3MjAwLC0xMDk2ODQwODAwLC0xMDgwNTA3NjAwLC0xMDYzNTc2ODAwLC0xMDQ5MDU4ZTMsLTEwMzMzMzY4MDAsLTEwMTc2MDg0MDAsLTEwMDI0OTJlMywtOTg2MTU4ODAwLC05NjkyMjhlMywtOTUwNDc1NjAwLC05NDIwMTJlMywtOTM1MTgyODAwLC04NTcyNWU0LC04NDQ1NTI4MDAsLTgyODIxOTYwMCwtODEyNDk4NDAwLC03OTc5Nzk2MDAsLTc4MTA0ODgwMCwtNzY2NjE2NDAwLC03NDU0NTJlMywtNzMzMjY2ZTMsMjI4ODgwODAwLDI0NDAwNDQwMCwyNjAzMzA0MDAsMjc2MDU4ODAwLDI5MTc4ZTQsMzA3NTA4NDAwLDMyMzgzNDQwMCwzMzg5NThlMywzNTQ2NzkyMDAsMzcwNDA3NjAwLDM4NjEyODgwMCw0MDE4NTcyMDAsNDE3NTc4NDAwLDQzMzMwNjgwMCw0NDkwMjhlMyw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDk1NDAzNmUzLDk3Mjc4ODQwMCw5ODU0ODU2MDAsMTAwNDIzOGUzLDEwMTc1NGU0LDEwMzU2ODc2MDAsMTA0ODk4OTYwMCwxMDY3MTM3MjAwLDEwODA0MzkyMDAsMTA5OTE5MTYwMCwxMTExODg4ODAwLDExMzA2NDEyMDAsMTE0MzMzODQwMCwxMTYyMDkwODAwLDExNzQ3ODhlMywxMTkzNTQwNDAwLDEyMDY4NDI0MDAsMTIyNDk5ZTQsMTIzODI5MmUzLDEyNTY0Mzk2MDAsMTI2OTc0MTYwMCwxMjg4NDk0ZTMsMTMwMTE5MTIwMCwxMzE5OTQzNjAwLDEzMzI2NDA4MDAsMTM1MTM5MzIwMCwxMzY0Njk1MjAwLDEzODI4NDI4MDAsMTM5NjE0NDgwMCwxNDE0MjkyNDAwLDE0Mjc1OTQ0MDAsMTQ0NTc0MmUzLDE0NTkwNDRlMywxNDc3Nzk2NDAwLDE0OTA0OTM2MDAsMTUwOTI0NmUzLDE1MjE5NDMyMDAsMTU0MDY5NTYwMCwxNTUzOTk3NjAwLDE1NzIxNDUyMDAsMTU4NTQ0NzIwMCwxNjAzNTk0ODAwLDE2MTY4OTY4MDAsMTYzNTY0OTIwMCwxNjQ4MzQ2NDAwLDE2NjcwOTg4MDAsMTY3OTc5NmUzLDE2OTg1NDg0MDAsMTcxMTg1MDQwMCwxNzI5OTk4ZTMsMTc0MzNlNSwxNzYxNDQ3NjAwLDE3NzQ3NDk2MDAsMTc5Mjg5NzIwMCwxODA2MTk5MjAwLDE4MjQ5NTE2MDAsMTgzNzY0ODgwMCwxODU2NDAxMjAwLDE4NjkwOTg0MDAsMTg4Nzg1MDgwMCwxOTAxMTUyODAwLDE5MTkzMDA0MDAsMTkzMjYwMjQwMF0sCm9mZnNldDpbMTQ3NiwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9NYWRyaWQiOnt0aW1lOlstMjE3NzQ1MzY4NCwtMTYzMTkyNjgwMCwtMTYxNjg4NmUzLC0xNjAxMTY4NDAwLC0xNTg1MzVlNCwtMTQ0MjQ1MTYwMCwtMTQyNzY3ZTQsLTEzNzkyOTMyMDAsLTEzNjQ3NzA4MDAsLTEzNDg0NDg0MDAsLTEzMzMzMjEyMDAsLTEzMTYzOTA0MDAsLTEzMDEyNjY4MDAsLTEyODQzMzk2MDAsLTEyNjk4MTcyMDAsLTEwMjY5NTRlMywtMTAxNzYxNTYwMCwtMTAwMTg5OGUzLC05OTk0Nzg4MDAsLTk4NjA4MzIwMCwtOTU0MTExNjAwLC05NDAyMDg0MDAsLTg3MzA3NTYwMCwtODYyNjE0ZTMsLTg0MjgzNTYwMCwtODI4MzEzMjAwLC04MTEzODZlMywtNzk2ODYzNjAwLC03Nzk5MzY0MDAsLTc2NTQxNGUzLC03NDg0ODY4MDAsLTczMzk2NDQwMCwtNjUyMzIzNjAwLC02MzkwMTA4MDAsMTM1MTI2ZTMsMTUwMjUzMjAwLDE2NjU3NTYwMCwxODE3MDI4MDAsMTk2ODE1NjAwLDIxMjU0NzYwMCwyMjg4N2U0LDI0Mzk5NzIwMCwyNjAzMzA0MDAsMjc2MDU4ODAwLDI5MTc4ZTQsMzA3NTA4NDAwLDMyMzgzNDQwMCwzMzg5NThlMywzNTQ2NzkyMDAsMzcwNDA3NjAwLDM4NjEyODgwMCw0MDE4NTcyMDAsNDE3NTc4NDAwLDQzMzMwNjgwMCw0NDkwMjhlMyw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDk1NDAzNmUzLDk3Mjc4ODQwMCw5ODU0ODU2MDAsMTAwNDIzOGUzLDEwMTc1NGU0LDEwMzU2ODc2MDAsMTA0ODk4OTYwMCwxMDY3MTM3MjAwLDEwODA0MzkyMDAsMTA5OTE5MTYwMCwxMTExODg4ODAwLDExMzA2NDEyMDAsMTE0MzMzODQwMCwxMTYyMDkwODAwLDExNzQ3ODhlMywxMTkzNTQwNDAwLDEyMDY4NDI0MDAsMTIyNDk5ZTQsMTIzODI5MmUzLDEyNTY0Mzk2MDAsMTI2OTc0MTYwMCwxMjg4NDk0ZTMsMTMwMTE5MTIwMCwxMzE5OTQzNjAwLDEzMzI2NDA4MDAsMTM1MTM5MzIwMCwxMzY0Njk1MjAwLDEzODI4NDI4MDAsMTM5NjE0NDgwMCwxNDE0MjkyNDAwLDE0Mjc1OTQ0MDAsMTQ0NTc0MmUzLDE0NTkwNDRlMywxNDc3Nzk2NDAwLDE0OTA0OTM2MDAsMTUwOTI0NmUzLDE1MjE5NDMyMDAsMTU0MDY5NTYwMCwxNTUzOTk3NjAwLDE1NzIxNDUyMDAsMTU4NTQ0NzIwMCwxNjAzNTk0ODAwLDE2MTY4OTY4MDAsMTYzNTY0OTIwMCwxNjQ4MzQ2NDAwLDE2NjcwOTg4MDAsMTY3OTc5NmUzLDE2OTg1NDg0MDAsMTcxMTg1MDQwMCwxNzI5OTk4ZTMsMTc0MzNlNSwxNzYxNDQ3NjAwLDE3NzQ3NDk2MDAsMTc5Mjg5NzIwMCwxODA2MTk5MjAwLDE4MjQ5NTE2MDAsMTgzNzY0ODgwMCwxODU2NDAxMjAwLDE4NjkwOTg0MDAsMTg4Nzg1MDgwMCwxOTAxMTUyODAwLDE5MTkzMDA0MDAsMTkzMjYwMjQwMF0sCm9mZnNldDpbLTg4NCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCw3MjAwLDM2MDAsMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9NYWx0YSI6e3RpbWU6Wy0yNDAzNDc1MjAwLC0xNjkwNzYxNjAwLC0xNjgwNDhlNCwtMTY2NDc1NTIwMCwtMTY0ODk0NGUzLC0xNjM1MTJlNCwtMTYxNjg4OTYwMCwtMTYwNDI3NTIwMCwtMTU4NTUyNjQwMCwtMTU3MTAxMTIwMCwtMTU1NTI4NjQwMCwtOTMyNDI4ODAwLC04NTcyNWU0LC04NDQ1NTI4MDAsLTgyODIxOTYwMCwtODEyNTg0ODAwLC03OTgwNjZlMywtNzgxMDQ4ODAwLC03NjY3MWU0LC03NTA4OTUyMDAsLTczMzM1MjQwMCwtNzE5NDUyODAwLC03MDE5MWU0LC02ODkyMDU2MDAsLTY3MDQ1MzIwMCwtMTE0MDQ4ZTMsLTEwMzE2MTYwMCwtODE5OTM2MDAsLTcxNzA4NDAwLC01MDU0NGUzLC00MDI1ODgwMCwtMTg0ODk2MDAsLTgyMDQ0MDAsMTI5NmU0LDIzMjQ1MjAwLDQzODA0ODAwLDU0Njk0ODAwLDc1ODU5MjAwLDg2NzQ5MjAwLDEwMjM4NGUzLDExODExMjQwMCwxMzU3MzQ0MDAsMTQ4NTI1MjAwLDE2NzE5MTIwMCwxODA0OTY4MDAsMTk4NjQwODAwLDIxMTk0NjQwMCwyMzAwOTA0MDAsMjQzMzk2ZTMsMjYxNTRlNCwyNzQ4NDU2MDAsMjkyOTg5NjAwLDMwNjI5NTIwMCwzMjMzMTZlMywzMzgzNDk2MDAsMzU0Njc5MjAwLDM3MDQwNzYwMCwzODYxMjg4MDAsNDAxODU3MjAwLDQxNzU3ODQwMCw0MzMzMDY4MDAsNDQ5MDI4ZTMsNDY1MzYxMjAwLDQ4MTA4MjQwMCw0OTY4MTA4MDAsNTEyNTMyZTMsNTI4MjYwNDAwLDU0Mzk4MTYwMCw1NTk3MWU0LDU3NTQzMTIwMCw1OTExNTk2MDAsNjA2ODgwODAwLDYyMjYwOTIwMCw2MzgzMzA0MDAsNjU0NjYzNjAwLDY3MDM4NDgwMCw2ODYxMTMyMDAsNzAxODM0NDAwLDcxNzU2MjgwMCw3MzMyODRlMyw3NDkwMTI0MDAsNzY0NzMzNjAwLDc4MDQ2MmUzLDc5NjE4MzIwMCw4MTE5MTE2MDAsODI4MjM3NjAwLDg0NjM4NTIwMCw4NTk2ODcyMDAsODc3ODM0ODAwLDg5MTEzNjgwMCw5MDkyODQ0MDAsOTIyNTg2NDAwLDk0MTMzODgwMCw5NTQwMzZlMyw5NzI3ODg0MDAsOTg1NDg1NjAwLDEwMDQyMzhlMywxMDE3NTRlNCwxMDM1Njg3NjAwLDEwNDg5ODk2MDAsMTA2NzEzNzIwMCwxMDgwNDM5MjAwLDEwOTkxOTE2MDAsMTExMTg4ODgwMCwxMTMwNjQxMjAwLDExNDMzMzg0MDAsMTE2MjA5MDgwMCwxMTc0Nzg4ZTMsMTE5MzU0MDQwMCwxMjA2ODQyNDAwLDEyMjQ5OWU0LDEyMzgyOTJlMywxMjU2NDM5NjAwLDEyNjk3NDE2MDAsMTI4ODQ5NGUzLDEzMDExOTEyMDAsMTMxOTk0MzYwMCwxMzMyNjQwODAwLDEzNTEzOTMyMDAsMTM2NDY5NTIwMCwxMzgyODQyODAwLDEzOTYxNDQ4MDAsMTQxNDI5MjQwMCwxNDI3NTk0NDAwLDE0NDU3NDJlMywxNDU5MDQ0ZTMsMTQ3Nzc5NjQwMCwxNDkwNDkzNjAwLDE1MDkyNDZlMywxNTIxOTQzMjAwLDE1NDA2OTU2MDAsMTU1Mzk5NzYwMCwxNTcyMTQ1MjAwLDE1ODU0NDcyMDAsMTYwMzU5NDgwMCwxNjE2ODk2ODAwLDE2MzU2NDkyMDAsMTY0ODM0NjQwMCwxNjY3MDk4ODAwLDE2Nzk3OTZlMywxNjk4NTQ4NDAwLDE3MTE4NTA0MDAsMTcyOTk5OGUzLDE3NDMzZTUsMTc2MTQ0NzYwMCwxNzc0NzQ5NjAwLDE3OTI4OTcyMDAsMTgwNjE5OTIwMCwxODI0OTUxNjAwLDE4Mzc2NDg4MDAsMTg1NjQwMTIwMCwxODY5MDk4NDAwLDE4ODc4NTA4MDAsMTkwMTE1MjgwMCwxOTE5MzAwNDAwLDE5MzI2MDI0MDBdLApvZmZzZXQ6WzM0ODQsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9Nb3Njb3ciOnt0aW1lOlstMjg0MDE0MDgwMCwtMTY4ODI1NmUzLC0xNjU2ODFlNCwtMTY0MTM0MDgwMCwtMTYyNzk1NmUzLC0xNjE4NzAwNDAwLC0xNTk2NDE2NDAwLC0xNTkzODA0NTIxLC0xNTg5ODQ2NDAwLC0xNTQyNDE2NDAwLC0xNTM5NDc4ODAwLC0xNTI1MzA1NjAwLC0xNTIyNzEzNjAwLC0xNDkxMTc3NjAwLC0xMjQ3NTI5NjAwLDM1NDkzMTIwMCwzNzA3NDI0MDAsMzg2NDY3MjAwLDQwMjI3ODQwMCw0MTgwMDMyMDAsNDMzODE0NDAwLDQ0OTYyNTYwMCw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw2OTU3ODY0MDAsNzAxODM0NDAwLDcxNzU2MjgwMCw3MzMyODRlMyw3NDkwMTI0MDAsNzY0NzMzNjAwLDc4MDQ2MmUzLDc5NjE4MzIwMCw4MTE5MTE2MDAsODI4MjM3NjAwLDg0NjM4NTIwMCw4NTk2ODcyMDAsODc3ODM0ODAwLDg5MTEzNjgwMCw5MDkyODQ0MDAsOTIyNTg2NDAwLDk0MTMzODgwMCw5NTQwMzZlMyw5NzI3ODg0MDAsOTg1NDg1NjAwLDEwMDQyMzhlMywxMDE3NTRlNCwxMDM1Njg3NjAwLDEwNDg5ODk2MDAsMTA2NzEzNzIwMCwxMDgwNDM5MjAwLDEwOTkxOTE2MDAsMTExMTg4ODgwMCwxMTMwNjQxMjAwLDExNDMzMzg0MDAsMTE2MjA5MDgwMCwxMTc0Nzg4ZTMsMTE5MzU0MDQwMCwxMjA2ODQyNDAwLDEyMjQ5OWU0LDEyMzgyOTJlMywxMjU2NDM5NjAwLDEyNjk3NDE2MDAsMTI4ODQ5NGUzLDEzMDExOTEyMDAsMTQxNDI4ODgwMCwxOTI1MDAyODAwXSxvZmZzZXQ6WzkwMTcsOTAxNyw5MDc5LDEyNjc5LDkwNzksMTYyNzksMTI2NzksMTYyNzksMTQ0MDAsMTA4MDAsMTQ0MDAsMThlMywxNDQwMCwxMDgwMCw3MjAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDEwODAwLDcyMDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDAsMTQ0MDAsMTA4MDBdfSwiRXVyb3BlL09zbG8iOnsKdGltZTpbLTIzNjY3NTUyMDAsLTE2OTE4ODEyMDAsLTE2ODA1NjY0MDAsLTkyNzUwNzYwMCwtODU3MjVlNCwtODQ0NTUyODAwLC04MjgyMTk2MDAsLTgxMjQ5ODQwMCwtNzk2NzdlNCwtNzgxMDQ4ODAwLC03NjUzMjA0MDAsLTM0MDg0MDgwMCwtMzI0NTA3NjAwLC0zMDg3ODY0MDAsLTI5MzA1OGUzLC0yNzczMzY4MDAsLTI2MTYwODQwMCwtMjQ1ODg3MjAwLC0yMzAxNTg4MDAsLTIxNDQzNzYwMCwtMTk4NzA5MjAwLC0xODI5ODhlMywtMTY2NjU0ODAwLC0xNDc5MDk2MDAsLTEzNTIwNTIwMCwzMjM4MzQ0MDAsMzM4OTU4ZTMsMzU0Njc5MjAwLDM3MDQwNzYwMCwzODYxMjg4MDAsNDAxODU3MjAwLDQxNzU3ODQwMCw0MzMzMDY4MDAsNDQ5MDI4ZTMsNDY1MzYxMjAwLDQ4MTA4MjQwMCw0OTY4MTA4MDAsNTEyNTMyZTMsNTI4MjYwNDAwLDU0Mzk4MTYwMCw1NTk3MWU0LDU3NTQzMTIwMCw1OTExNTk2MDAsNjA2ODgwODAwLDYyMjYwOTIwMCw2MzgzMzA0MDAsNjU0NjYzNjAwLDY3MDM4NDgwMCw2ODYxMTMyMDAsNzAxODM0NDAwLDcxNzU2MjgwMCw3MzMyODRlMyw3NDkwMTI0MDAsNzY0NzMzNjAwLDc4MDQ2MmUzLDc5NjE4MzIwMCw4MTE5MTE2MDAsODI4MjM3NjAwLDg0NjM4NTIwMCw4NTk2ODcyMDAsODc3ODM0ODAwLDg5MTEzNjgwMCw5MDkyODQ0MDAsOTIyNTg2NDAwLDk0MTMzODgwMCw5NTQwMzZlMyw5NzI3ODg0MDAsOTg1NDg1NjAwLDEwMDQyMzhlMywxMDE3NTRlNCwxMDM1Njg3NjAwLDEwNDg5ODk2MDAsMTA2NzEzNzIwMCwxMDgwNDM5MjAwLDEwOTkxOTE2MDAsMTExMTg4ODgwMCwxMTMwNjQxMjAwLDExNDMzMzg0MDAsMTE2MjA5MDgwMCwxMTc0Nzg4ZTMsMTE5MzU0MDQwMCwxMjA2ODQyNDAwLDEyMjQ5OWU0LDEyMzgyOTJlMywxMjU2NDM5NjAwLDEyNjk3NDE2MDAsMTI4ODQ5NGUzLDEzMDExOTEyMDAsMTMxOTk0MzYwMCwxMzMyNjQwODAwLDEzNTEzOTMyMDAsMTM2NDY5NTIwMCwxMzgyODQyODAwLDEzOTYxNDQ4MDAsMTQxNDI5MjQwMCwxNDI3NTk0NDAwLDE0NDU3NDJlMywxNDU5MDQ0ZTMsMTQ3Nzc5NjQwMCwxNDkwNDkzNjAwLDE1MDkyNDZlMywxNTIxOTQzMjAwLDE1NDA2OTU2MDAsMTU1Mzk5NzYwMCwxNTcyMTQ1MjAwLDE1ODU0NDcyMDAsMTYwMzU5NDgwMCwxNjE2ODk2ODAwLDE2MzU2NDkyMDAsMTY0ODM0NjQwMCwxNjY3MDk4ODAwLDE2Nzk3OTZlMywxNjk4NTQ4NDAwLDE3MTE4NTA0MDAsMTcyOTk5OGUzLDE3NDMzZTUsMTc2MTQ0NzYwMCwxNzc0NzQ5NjAwLDE3OTI4OTcyMDAsMTgwNjE5OTIwMCwxODI0OTUxNjAwLDE4Mzc2NDg4MDAsMTg1NjQwMTIwMCwxODY5MDk4NDAwLDE4ODc4NTA4MDAsMTkwMTE1MjgwMCwxOTE5MzAwNDAwLDE5MzI2MDI0MDBdLG9mZnNldDpbMjU4MCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9QYXJpcyI6ewp0aW1lOlstMjQ4NjU5MmUzLC0xODU1OTU4NDAwLC0xNjg5ODE0ODAwLC0xNjgwMzkzNjAwLC0xNjY1MzYzNjAwLC0xNjQ4MzM5MjAwLC0xNjM1MTIzNjAwLC0xNjE2ODg5NjAwLC0xNjA0Mjc4ODAwLC0xNTg1NDRlNCwtMTU3NDAzODgwMCwtMTU1MjI2MjQwMCwtMTUzOTk5NzIwMCwtMTUyMDU1MzYwMCwtMTUwNzUxMDgwMCwtMTQ5MDU3MjgwMCwtMTQ3MDYxOGUzLC0xNDU5MTIzMjAwLC0xNDQ0MDA2ODAwLC0xNDI3NjczNjAwLC0xNDExOTUyNDAwLC0xMzk2MjI0ZTMsLTEzNzkyOTMyMDAsLTEzNjQ3NzQ0MDAsLTEzNDg0NDg0MDAsLTEzMzMzMjQ4MDAsLTEzMTYzOTRlMywtMTMwMTI3MDQwMCwtMTI4NDMzOTYwMCwtMTI2OTgyMDgwMCwtMTI1MzQ5NDgwMCwtMTIzODM3MTIwMCwtMTIyMTQ0MDQwMCwtMTIwNjkyMTYwMCwtMTE5MTIwMDQwMCwtMTE3NTQ3MmUzLC0xMTYwMzU1NjAwLC0xMTQzNDE3NjAwLC0xMTI3Njk2NDAwLC0xMTExOTY4ZTMsLTEwOTY4NTE2MDAsLTEwODA1MTg0MDAsLTEwNjM1ODc2MDAsLTEwNDkwNjg4MDAsLTEwMzMzNDc2MDAsLTEwMTc2MTkyMDAsLTEwMDI1MDI4MDAsLTk4NjE2OTYwMCwtOTY5MjM4ODAwLC05NTA0ODY0MDAsLTk0MjAxMmUzLC05MzI0MzI0MDAsLTg1NzI1ZTQsLTg0NDU1MjgwMCwtODI4MjE5NjAwLC04MTI0OTg0MDAsLTgwMDA2NGUzLC03OTYyNTg4MDAsLTc4MTA0ODgwMCwtNzY2NjE2NDAwLDE5NjgyMjgwMCwyMTI1NDc2MDAsMjI4ODgwODAwLDI0NDAwNDQwMCwyNjAzMzA0MDAsMjc2MDU4ODAwLDI5MTc4ZTQsMzA3NTA4NDAwLDMyMzgzNDQwMCwzMzg5NThlMywzNTQ2NzkyMDAsMzcwNDA3NjAwLDM4NjEyODgwMCw0MDE4NTcyMDAsNDE3NTc4NDAwLDQzMzMwNjgwMCw0NDkwMjhlMyw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDk1NDAzNmUzLDk3Mjc4ODQwMCw5ODU0ODU2MDAsMTAwNDIzOGUzLDEwMTc1NGU0LDEwMzU2ODc2MDAsMTA0ODk4OTYwMCwxMDY3MTM3MjAwLDEwODA0MzkyMDAsMTA5OTE5MTYwMCwxMTExODg4ODAwLDExMzA2NDEyMDAsMTE0MzMzODQwMCwxMTYyMDkwODAwLDExNzQ3ODhlMywxMTkzNTQwNDAwLDEyMDY4NDI0MDAsMTIyNDk5ZTQsMTIzODI5MmUzLDEyNTY0Mzk2MDAsMTI2OTc0MTYwMCwxMjg4NDk0ZTMsMTMwMTE5MTIwMCwxMzE5OTQzNjAwLDEzMzI2NDA4MDAsMTM1MTM5MzIwMCwxMzY0Njk1MjAwLDEzODI4NDI4MDAsMTM5NjE0NDgwMCwxNDE0MjkyNDAwLDE0Mjc1OTQ0MDAsMTQ0NTc0MmUzLDE0NTkwNDRlMywxNDc3Nzk2NDAwLDE0OTA0OTM2MDAsMTUwOTI0NmUzLDE1MjE5NDMyMDAsMTU0MDY5NTYwMCwxNTUzOTk3NjAwLDE1NzIxNDUyMDAsMTU4NTQ0NzIwMCwxNjAzNTk0ODAwLDE2MTY4OTY4MDAsMTYzNTY0OTIwMCwxNjQ4MzQ2NDAwLDE2NjcwOTg4MDAsMTY3OTc5NmUzLDE2OTg1NDg0MDAsMTcxMTg1MDQwMCwxNzI5OTk4ZTMsMTc0MzNlNSwxNzYxNDQ3NjAwLDE3NzQ3NDk2MDAsMTc5Mjg5NzIwMCwxODA2MTk5MjAwLDE4MjQ5NTE2MDAsMTgzNzY0ODgwMCwxODU2NDAxMjAwLDE4NjkwOTg0MDAsMTg4Nzg1MDgwMCwxOTAxMTUyODAwLDE5MTkzMDA0MDAsMTkzMjYwMjQwMF0sb2Zmc2V0Ols1NjEsNTYxLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCwwLDM2MDAsMCwzNjAwLDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDBdfSwiRXVyb3BlL1ByYWd1ZSI6ewp0aW1lOlstMzc4NjgyNTYwMCwtMjQ2OTM5ODQwMCwtMTY5MzcwMjgwMCwtMTY4MDQ3NjQwMCwtMTY2MzQ1MmUzLC0xNjUwMTQyODAwLC0xNjMyMDAyNDAwLC0xNjE4NjkzMjAwLC05Mzg5MDE2MDAsLTg1NzI1ZTQsLTg0NDU1MjgwMCwtODI4MjE5NjAwLC04MTI0OTg0MDAsLTc5Njc3ZTQsLTc4MTA0ODgwMCwtNzY1MzIwNDAwLC03NDY1NzUyMDAsLTczMzM1MjQwMCwtNzI4NTE0ZTMsLTcyMTI2ZTQsLTcxNjQyMTYwMCwtNzAxOTAyODAwLC02ODQ5NzJlMywtNjcwNDUzMjAwLC02NTQyMTM2MDAsLTYzOTAwMzYwMCwyOTE3OGU0LDMwNzUwODQwMCwzMjM4MzQ0MDAsMzM4OTU4ZTMsMzU0Njc5MjAwLDM3MDQwNzYwMCwzODYxMjg4MDAsNDAxODU3MjAwLDQxNzU3ODQwMCw0MzMzMDY4MDAsNDQ5MDI4ZTMsNDY1MzYxMjAwLDQ4MTA4MjQwMCw0OTY4MTA4MDAsNTEyNTMyZTMsNTI4MjYwNDAwLDU0Mzk4MTYwMCw1NTk3MWU0LDU3NTQzMTIwMCw1OTExNTk2MDAsNjA2ODgwODAwLDYyMjYwOTIwMCw2MzgzMzA0MDAsNjU0NjYzNjAwLDY3MDM4NDgwMCw2ODYxMTMyMDAsNzAxODM0NDAwLDcxNzU2MjgwMCw3MzMyODRlMyw3NDkwMTI0MDAsNzY0NzMzNjAwLDc4MDQ2MmUzLDc5NjE4MzIwMCw4MTE5MTE2MDAsODI4MjM3NjAwLDg0NjM4NTIwMCw4NTk2ODcyMDAsODc3ODM0ODAwLDg5MTEzNjgwMCw5MDkyODQ0MDAsOTIyNTg2NDAwLDk0MTMzODgwMCw5NTQwMzZlMyw5NzI3ODg0MDAsOTg1NDg1NjAwLDEwMDQyMzhlMywxMDE3NTRlNCwxMDM1Njg3NjAwLDEwNDg5ODk2MDAsMTA2NzEzNzIwMCwxMDgwNDM5MjAwLDEwOTkxOTE2MDAsMTExMTg4ODgwMCwxMTMwNjQxMjAwLDExNDMzMzg0MDAsMTE2MjA5MDgwMCwxMTc0Nzg4ZTMsMTE5MzU0MDQwMCwxMjA2ODQyNDAwLDEyMjQ5OWU0LDEyMzgyOTJlMywxMjU2NDM5NjAwLDEyNjk3NDE2MDAsMTI4ODQ5NGUzLDEzMDExOTEyMDAsMTMxOTk0MzYwMCwxMzMyNjQwODAwLDEzNTEzOTMyMDAsMTM2NDY5NTIwMCwxMzgyODQyODAwLDEzOTYxNDQ4MDAsMTQxNDI5MjQwMCwxNDI3NTk0NDAwLDE0NDU3NDJlMywxNDU5MDQ0ZTMsMTQ3Nzc5NjQwMCwxNDkwNDkzNjAwLDE1MDkyNDZlMywxNTIxOTQzMjAwLDE1NDA2OTU2MDAsMTU1Mzk5NzYwMCwxNTcyMTQ1MjAwLDE1ODU0NDcyMDAsMTYwMzU5NDgwMCwxNjE2ODk2ODAwLDE2MzU2NDkyMDAsMTY0ODM0NjQwMCwxNjY3MDk4ODAwLDE2Nzk3OTZlMywxNjk4NTQ4NDAwLDE3MTE4NTA0MDAsMTcyOTk5OGUzLDE3NDMzZTUsMTc2MTQ0NzYwMCwxNzc0NzQ5NjAwLDE3OTI4OTcyMDAsMTgwNjE5OTIwMCwxODI0OTUxNjAwLDE4Mzc2NDg4MDAsMTg1NjQwMTIwMCwxODY5MDk4NDAwLDE4ODc4NTA4MDAsMTkwMTE1MjgwMCwxOTE5MzAwNDAwLDE5MzI2MDI0MDBdLG9mZnNldDpbMzQ2NCwzNDY0LDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCwwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9SaWdhIjp7CnRpbWU6Wy0yODQwMTQwODAwLC0xNjMyMDAyNDAwLC0xNjE4NjkzMjAwLC0xNjAxNjc2ZTMsLTE1OTcyNjZlMywtMTM3NzMwMjQwMCwtOTI4MDIyNDAwLC04OTk1MTA0MDAsLTg1NzI1ZTQsLTg0NDU1MjgwMCwtODI4MjE5NjAwLC04MTI0OTg0MDAsLTc5Njc3ZTQsLTc5NTgzMDQwMCwzNTQ5MzEyMDAsMzcwNzQyNDAwLDM4NjQ2NzIwMCw0MDIyNzg0MDAsNDE4MDAzMjAwLDQzMzgxNDQwMCw0NDk2MjU2MDAsNDY1MzYxMjAwLDQ4MTA4MjQwMCw0OTY4MTA4MDAsNTEyNTMyZTMsNTI4MjYwNDAwLDU0Mzk4MTYwMCw1NTk3MWU0LDU3NTQzMTIwMCw1OTExNTk2MDAsNjA2ODgwODAwLDYyMjYwOTIwMCw2MzgzMzA0MDAsNjU0NjYzNjAwLDY3MDM4NDgwMCw2ODYxMTMyMDAsNzAxODM0NDAwLDcxNzU2MjgwMCw3MzMyODRlMyw3NDkwMTI0MDAsNzY0NzMzNjAwLDc4MDQ2MmUzLDc5NjE4MzIwMCw4MTE5MTE2MDAsODI4MjM3NjAwLDg0Mzk2NmUzLDg1OTY5MDgwMCw4Nzc4Mzg0MDAsODkxMTQwNDAwLDkwOTI4OGUzLDkyMjU5ZTQsOTQxMzQyNDAwLDk4NTQ4OTIwMCwxMDA0MjQxNjAwLDEwMTc1NDM2MDAsMTAzNTY5MTIwMCwxMDQ4OTkzMjAwLDEwNjcxNDA4MDAsMTA4MDQ0MjgwMCwxMDk5MTk1MjAwLDExMTE4OTI0MDAsMTEzMDY0NDgwMCwxMTQzMzQyZTMsMTE2MjA5NDQwMCwxMTc0NzkxNjAwLDExOTM1NDRlMywxMjA2ODQ2ZTMsMTIyNDk5MzYwMCwxMjM4Mjk1NjAwLDEyNTY0NDMyMDAsMTI2OTc0NTIwMCwxMjg4NDk3NjAwLDEzMDExOTQ4MDAsMTMxOTk0NzIwMCwxMzMyNjQ0NDAwLDEzNTEzOTY4MDAsMTM2NDY5ODgwMCwxMzgyODQ2NDAwLDEzOTYxNDg0MDAsMTQxNDI5NmUzLDE0Mjc1OThlMywxNDQ1NzQ1NjAwLDE0NTkwNDc2MDAsMTQ3NzhlNSwxNDkwNDk3MjAwLDE1MDkyNDk2MDAsMTUyMTk0NjgwMCwxNTQwNjk5MjAwLDE1NTQwMDEyMDAsMTU3MjE0ODgwMCwxNTg1NDUwODAwLDE2MDM1OTg0MDAsMTYxNjkwMDQwMCwxNjM1NjUyODAwLDE2NDgzNWU0LDE2NjcxMDI0MDAsMTY3OTc5OTYwMCwxNjk4NTUyZTMsMTcxMTg1NGUzLDE3MzAwMDE2MDAsMTc0MzMwMzYwMCwxNzYxNDUxMjAwLDE3NzQ3NTMyMDAsMTc5MjkwMDgwMCwxODA2MjAyODAwLDE4MjQ5NTUyMDAsMTgzNzY1MjQwMCwxODU2NDA0ODAwLDE4NjkxMDJlMywxODg3ODU0NDAwLDE5MDExNTY0MDAsMTkxOTMwNGUzLDE5MzI2MDZlM10sb2Zmc2V0Ols1Nzk0LDU3OTQsOTM5NCw1Nzk0LDkzOTQsNTc5NCw3MjAwLDEwODAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDE0NDAwLDEwODAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMF19LCJFdXJvcGUvUm9tZSI6ewp0aW1lOlstMzI1MjA5NmUzLC0yNDAzNTYyMjA0LC0xNjkwNzYxNjAwLC0xNjgwNDhlNCwtMTY2NDc1NTIwMCwtMTY0ODk0NGUzLC0xNjM1MTJlNCwtMTYxNjg4OTYwMCwtMTYwNDI3NTIwMCwtMTU4NTUyNjQwMCwtMTU3MTAxMTIwMCwtMTU1NTI4NjQwMCwtOTMyNDI4ODAwLC04NTcyNWU0LC04NDQ1NTI4MDAsLTgyODIxOTYwMCwtODEyNDk4NDAwLC03OTgwNjZlMywtNzgxMDQ4ODAwLC03NjY3MWU0LC03NTA4OTUyMDAsLTczMzM1MjQwMCwtNzE5NDUyODAwLC03MDE5MWU0LC02ODkyMDU2MDAsLTY3MDQ1MzIwMCwtMTE0MDQ4ZTMsLTEwMzE2MTYwMCwtODE5OTM2MDAsLTcxNzA4NDAwLC01MDU0NGUzLC00MDI1ODgwMCwtMTg0ODk2MDAsLTgyMDQ0MDAsMTI5NmU0LDIzMjQ1MjAwLDQzODA0ODAwLDU0Njk0ODAwLDc1ODU5MjAwLDg2NzQ5MjAwLDEwNzkxMzYwMCwxMTgxOTg4MDAsMTM4NzU4NDAwLDE0OTY0ODQwMCwxNzA4MTI4MDAsMTgxMDk4ZTMsMjAyMjYyNDAwLDIxMjU0NzYwMCwyMzMxMDcyMDAsMjQzOTk3MjAwLDI2NTE2MTYwMCwyNzYwNTE2MDAsMjk2NjExMjAwLDMwNzUwMTIwMCwzMjM4MzQ0MDAsMzM4OTU4ZTMsMzU0Njc5MjAwLDM3MDQwNzYwMCwzODYxMjg4MDAsNDAxODU3MjAwLDQxNzU3ODQwMCw0MzMzMDY4MDAsNDQ5MDI4ZTMsNDY1MzYxMjAwLDQ4MTA4MjQwMCw0OTY4MTA4MDAsNTEyNTMyZTMsNTI4MjYwNDAwLDU0Mzk4MTYwMCw1NTk3MWU0LDU3NTQzMTIwMCw1OTExNTk2MDAsNjA2ODgwODAwLDYyMjYwOTIwMCw2MzgzMzA0MDAsNjU0NjYzNjAwLDY3MDM4NDgwMCw2ODYxMTMyMDAsNzAxODM0NDAwLDcxNzU2MjgwMCw3MzMyODRlMyw3NDkwMTI0MDAsNzY0NzMzNjAwLDc4MDQ2MmUzLDc5NjE4MzIwMCw4MTE5MTE2MDAsODI4MjM3NjAwLDg0NjM4NTIwMCw4NTk2ODcyMDAsODc3ODM0ODAwLDg5MTEzNjgwMCw5MDkyODQ0MDAsOTIyNTg2NDAwLDk0MTMzODgwMCw5NTQwMzZlMyw5NzI3ODg0MDAsOTg1NDg1NjAwLDEwMDQyMzhlMywxMDE3NTRlNCwxMDM1Njg3NjAwLDEwNDg5ODk2MDAsMTA2NzEzNzIwMCwxMDgwNDM5MjAwLDEwOTkxOTE2MDAsMTExMTg4ODgwMCwxMTMwNjQxMjAwLDExNDMzMzg0MDAsMTE2MjA5MDgwMCwxMTc0Nzg4ZTMsMTE5MzU0MDQwMCwxMjA2ODQyNDAwLDEyMjQ5OWU0LDEyMzgyOTJlMywxMjU2NDM5NjAwLDEyNjk3NDE2MDAsMTI4ODQ5NGUzLDEzMDExOTEyMDAsMTMxOTk0MzYwMCwxMzMyNjQwODAwLDEzNTEzOTMyMDAsMTM2NDY5NTIwMCwxMzgyODQyODAwLDEzOTYxNDQ4MDAsMTQxNDI5MjQwMCwxNDI3NTk0NDAwLDE0NDU3NDJlMywxNDU5MDQ0ZTMsMTQ3Nzc5NjQwMCwxNDkwNDkzNjAwLDE1MDkyNDZlMywxNTIxOTQzMjAwLDE1NDA2OTU2MDAsMTU1Mzk5NzYwMCwxNTcyMTQ1MjAwLDE1ODU0NDcyMDAsMTYwMzU5NDgwMCwxNjE2ODk2ODAwLDE2MzU2NDkyMDAsMTY0ODM0NjQwMCwxNjY3MDk4ODAwLDE2Nzk3OTZlMywxNjk4NTQ4NDAwLDE3MTE4NTA0MDAsMTcyOTk5OGUzLDE3NDMzZTUsMTc2MTQ0NzYwMCwxNzc0NzQ5NjAwLDE3OTI4OTcyMDAsMTgwNjE5OTIwMCwxODI0OTUxNjAwLDE4Mzc2NDg4MDAsMTg1NjQwMTIwMCwxODY5MDk4NDAwLDE4ODc4NTA4MDAsMTkwMTE1MjgwMCwxOTE5MzAwNDAwLDE5MzI2MDI0MDBdLG9mZnNldDpbMjk5NiwyOTk2LDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMF19LCJFdXJvcGUvU29maWEiOnsKdGltZTpbLTI4NDAxNDA4MDAsLTIzNjk1MmU0LC04NTcyNWU0LC04NDQ1NTI4MDAsLTgyODIxOTYwMCwtODEyNDk4NDAwLC03OTY3N2U0LC03ODEwNDUyMDAsMjkxNzY5MjAwLDMwNzU4NzYwMCwzMjM4MjM2MDAsMzM5MDM3MjAwLDM1NTI3MzIwMCwzNzA0MDRlMywzODY3MjI4MDAsNDAxODU3MjAwLDQxNzU3ODQwMCw0MzMzMDY4MDAsNDQ5MDI4ZTMsNDY1MzYxMjAwLDQ4MTA4MjQwMCw0OTY4MTA4MDAsNTEyNTMyZTMsNTI4MjYwNDAwLDU0Mzk4MTYwMCw1NTk3MWU0LDU3NTQzMTIwMCw1OTExNTk2MDAsNjA2ODgwODAwLDYyMjYwOTIwMCw2MzgzMzA0MDAsNjU0NjYzNjAwLDY3MDM3NzYwMCw2ODYxMDI0MDAsNzAxODI3MjAwLDcxNzU1MmUzLDczMzI3NjgwMCw3NDkwMDE2MDAsNzY0NzI2NDAwLDc4MDQ1MTIwMCw3OTYxNzZlMyw4MTE5MDA4MDAsODI4MjMwNDAwLDg0NjM3NDQwMCw4NTk2OTA4MDAsODc3ODM4NDAwLDg5MTE0MDQwMCw5MDkyODhlMyw5MjI1OWU0LDk0MTM0MjQwMCw5NTQwMzk2MDAsOTcyNzkyZTMsOTg1NDg5MjAwLDEwMDQyNDE2MDAsMTAxNzU0MzYwMCwxMDM1NjkxMjAwLDEwNDg5OTMyMDAsMTA2NzE0MDgwMCwxMDgwNDQyODAwLDEwOTkxOTUyMDAsMTExMTg5MjQwMCwxMTMwNjQ0ODAwLDExNDMzNDJlMywxMTYyMDk0NDAwLDExNzQ3OTE2MDAsMTE5MzU0NGUzLDEyMDY4NDZlMywxMjI0OTkzNjAwLDEyMzgyOTU2MDAsMTI1NjQ0MzIwMCwxMjY5NzQ1MjAwLDEyODg0OTc2MDAsMTMwMTE5NDgwMCwxMzE5OTQ3MjAwLDEzMzI2NDQ0MDAsMTM1MTM5NjgwMCwxMzY0Njk4ODAwLDEzODI4NDY0MDAsMTM5NjE0ODQwMCwxNDE0Mjk2ZTMsMTQyNzU5OGUzLDE0NDU3NDU2MDAsMTQ1OTA0NzYwMCwxNDc3OGU1LDE0OTA0OTcyMDAsMTUwOTI0OTYwMCwxNTIxOTQ2ODAwLDE1NDA2OTkyMDAsMTU1NDAwMTIwMCwxNTcyMTQ4ODAwLDE1ODU0NTA4MDAsMTYwMzU5ODQwMCwxNjE2OTAwNDAwLDE2MzU2NTI4MDAsMTY0ODM1ZTQsMTY2NzEwMjQwMCwxNjc5Nzk5NjAwLDE2OTg1NTJlMywxNzExODU0ZTMsMTczMDAwMTYwMCwxNzQzMzAzNjAwLDE3NjE0NTEyMDAsMTc3NDc1MzIwMCwxNzkyOTAwODAwLDE4MDYyMDI4MDAsMTgyNDk1NTIwMCwxODM3NjUyNDAwLDE4NTY0MDQ4MDAsMTg2OTEwMmUzLDE4ODc4NTQ0MDAsMTkwMTE1NjQwMCwxOTE5MzA0ZTMsMTkzMjYwNmUzXSxvZmZzZXQ6WzU1OTYsNzAxNiw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDBdfSwiRXVyb3BlL1N0b2NraG9sbSI6e3RpbWU6Wy0yODcxNjc2ODAwLC0yMjA4OTg4ODAwLC0xNjkyNDkzMjAwLC0xNjgwNDc2NDAwLDMyMzgzNDQwMCwzMzg5NThlMywzNTQ2NzkyMDAsMzcwNDA3NjAwLDM4NjEyODgwMCw0MDE4NTcyMDAsNDE3NTc4NDAwLDQzMzMwNjgwMCw0NDkwMjhlMyw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDk1NDAzNmUzLDk3Mjc4ODQwMCw5ODU0ODU2MDAsMTAwNDIzOGUzLDEwMTc1NGU0LDEwMzU2ODc2MDAsMTA0ODk4OTYwMCwxMDY3MTM3MjAwLDEwODA0MzkyMDAsMTA5OTE5MTYwMCwxMTExODg4ODAwLDExMzA2NDEyMDAsMTE0MzMzODQwMCwxMTYyMDkwODAwLDExNzQ3ODhlMywxMTkzNTQwNDAwLDEyMDY4NDI0MDAsMTIyNDk5ZTQsMTIzODI5MmUzLDEyNTY0Mzk2MDAsMTI2OTc0MTYwMCwxMjg4NDk0ZTMsMTMwMTE5MTIwMCwxMzE5OTQzNjAwLDEzMzI2NDA4MDAsMTM1MTM5MzIwMCwxMzY0Njk1MjAwLDEzODI4NDI4MDAsMTM5NjE0NDgwMCwxNDE0MjkyNDAwLDE0Mjc1OTQ0MDAsMTQ0NTc0MmUzLDE0NTkwNDRlMywxNDc3Nzk2NDAwLDE0OTA0OTM2MDAsMTUwOTI0NmUzLDE1MjE5NDMyMDAsMTU0MDY5NTYwMCwxNTUzOTk3NjAwLDE1NzIxNDUyMDAsMTU4NTQ0NzIwMCwxNjAzNTk0ODAwLDE2MTY4OTY4MDAsMTYzNTY0OTIwMCwxNjQ4MzQ2NDAwLDE2NjcwOTg4MDAsMTY3OTc5NmUzLDE2OTg1NDg0MDAsMTcxMTg1MDQwMCwxNzI5OTk4ZTMsMTc0MzNlNSwxNzYxNDQ3NjAwLDE3NzQ3NDk2MDAsMTc5Mjg5NzIwMCwxODA2MTk5MjAwLDE4MjQ5NTE2MDAsMTgzNzY0ODgwMCwxODU2NDAxMjAwLDE4NjkwOTg0MDAsMTg4Nzg1MDgwMCwxOTAxMTUyODAwLDE5MTkzMDA0MDAsMTkzMjYwMjQwMF0sCm9mZnNldDpbNDMzMiwzNjE0LDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9UYWxsaW5uIjp7dGltZTpbLTI4NDAxNDA4MDAsLTE2MzgzMTY4MDAsLTE2MzIwMDI0MDAsLTE2MTg2OTMyMDAsLTE1OTM4MjA4MDAsLTE1MzU5MzI4MDAsLTkyNzkzNmUzLC04OTI5NDRlMywtODU3MjVlNCwtODQ0NTUyODAwLC04MjgyMTk2MDAsLTgxMjQ5ODQwMCwtNzk3NjQ0ODAwLDM1NDkzMTIwMCwzNzA3NDI0MDAsMzg2NDY3MjAwLDQwMjI3ODQwMCw0MTgwMDMyMDAsNDMzODE0NDAwLDQ0OTYyNTYwMCw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4OGUzLDkyMjU5ZTQsOTQxMzQyNDAwLDEwMTc1NDM2MDAsMTAzNTY5MTIwMCwxMDQ4OTkzMjAwLDEwNjcxNDA4MDAsMTA4MDQ0MjgwMCwxMDk5MTk1MjAwLDExMTE4OTI0MDAsMTEzMDY0NDgwMCwxMTQzMzQyZTMsMTE2MjA5NDQwMCwxMTc0NzkxNjAwLDExOTM1NDRlMywxMjA2ODQ2ZTMsMTIyNDk5MzYwMCwxMjM4Mjk1NjAwLDEyNTY0NDMyMDAsMTI2OTc0NTIwMCwxMjg4NDk3NjAwLDEzMDExOTQ4MDAsMTMxOTk0NzIwMCwxMzMyNjQ0NDAwLDEzNTEzOTY4MDAsMTM2NDY5ODgwMCwxMzgyODQ2NDAwLDEzOTYxNDg0MDAsMTQxNDI5NmUzLDE0Mjc1OThlMywxNDQ1NzQ1NjAwLDE0NTkwNDc2MDAsMTQ3NzhlNSwxNDkwNDk3MjAwLDE1MDkyNDk2MDAsMTUyMTk0NjgwMCwxNTQwNjk5MjAwLDE1NTQwMDEyMDAsMTU3MjE0ODgwMCwxNTg1NDUwODAwLDE2MDM1OTg0MDAsMTYxNjkwMDQwMCwxNjM1NjUyODAwLDE2NDgzNWU0LDE2NjcxMDI0MDAsMTY3OTc5OTYwMCwxNjk4NTUyZTMsMTcxMTg1NGUzLDE3MzAwMDE2MDAsMTc0MzMwMzYwMCwxNzYxNDUxMjAwLDE3NzQ3NTMyMDAsMTc5MjkwMDgwMCwxODA2MjAyODAwLDE4MjQ5NTUyMDAsMTgzNzY1MjQwMCwxODU2NDA0ODAwLDE4NjkxMDJlMywxODg3ODU0NDAwLDE5MDExNTY0MDAsMTkxOTMwNGUzLDE5MzI2MDZlM10sb2Zmc2V0Ols1OTQwLDU5NDAsMzYwMCw3MjAwLDM2MDAsNTk0MCw3MjAwLDEwODAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwXX0sIkV1cm9wZS9WaWVubmEiOnsKdGltZTpbLTI0MjIwNTEyMDAsLTE2OTM3MDI4MDAsLTE2ODA0NzY0MDAsLTE2NjM0NTJlMywtMTY1MDE0MjgwMCwtMTYzMjAwMjQwMCwtMTYxODY5MzIwMCwtMTU2OTcwOGUzLC0xNTU1Nzk0ZTMsLTkzODkwMTYwMCwtODU3MjVlNCwtODQ0NTUyODAwLC04MjgyMTk2MDAsLTgxMjQ5ODQwMCwtNzk2NzdlNCwtNzgxMDQ4ODAwLC03ODAxODEyMDAsLTc0ODQ3NmUzLC03MzMyNjZlMywtNzE3NjMxMjAwLC03MDE5MDI4MDAsLTY4NDk3MmUzLC02NzA0NTMyMDAsMzIzODI3MjAwLDMzODk0NzIwMCwzNTQ2NzkyMDAsMzcwNDA3NjAwLDM4NjEyODgwMCw0MDE4NTcyMDAsNDE3NTc4NDAwLDQzMzMwNjgwMCw0NDkwMjhlMyw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDk1NDAzNmUzLDk3Mjc4ODQwMCw5ODU0ODU2MDAsMTAwNDIzOGUzLDEwMTc1NGU0LDEwMzU2ODc2MDAsMTA0ODk4OTYwMCwxMDY3MTM3MjAwLDEwODA0MzkyMDAsMTA5OTE5MTYwMCwxMTExODg4ODAwLDExMzA2NDEyMDAsMTE0MzMzODQwMCwxMTYyMDkwODAwLDExNzQ3ODhlMywxMTkzNTQwNDAwLDEyMDY4NDI0MDAsMTIyNDk5ZTQsMTIzODI5MmUzLDEyNTY0Mzk2MDAsMTI2OTc0MTYwMCwxMjg4NDk0ZTMsMTMwMTE5MTIwMCwxMzE5OTQzNjAwLDEzMzI2NDA4MDAsMTM1MTM5MzIwMCwxMzY0Njk1MjAwLDEzODI4NDI4MDAsMTM5NjE0NDgwMCwxNDE0MjkyNDAwLDE0Mjc1OTQ0MDAsMTQ0NTc0MmUzLDE0NTkwNDRlMywxNDc3Nzk2NDAwLDE0OTA0OTM2MDAsMTUwOTI0NmUzLDE1MjE5NDMyMDAsMTU0MDY5NTYwMCwxNTUzOTk3NjAwLDE1NzIxNDUyMDAsMTU4NTQ0NzIwMCwxNjAzNTk0ODAwLDE2MTY4OTY4MDAsMTYzNTY0OTIwMCwxNjQ4MzQ2NDAwLDE2NjcwOTg4MDAsMTY3OTc5NmUzLDE2OTg1NDg0MDAsMTcxMTg1MDQwMCwxNzI5OTk4ZTMsMTc0MzNlNSwxNzYxNDQ3NjAwLDE3NzQ3NDk2MDAsMTc5Mjg5NzIwMCwxODA2MTk5MjAwLDE4MjQ5NTE2MDAsMTgzNzY0ODgwMCwxODU2NDAxMjAwLDE4NjkwOTg0MDAsMTg4Nzg1MDgwMCwxOTAxMTUyODAwLDE5MTkzMDA0MDAsMTkzMjYwMjQwMF0sb2Zmc2V0OlszOTIxLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMF19LCJFdXJvcGUvVmlsbml1cyI6ewp0aW1lOlstMjg0MDE0MDgwMCwtMTY3MjUzMTIwMCwtMTU4NTA5NDQwMCwtMTU2MTI0OGUzLC0xNTUzNTU4NDAwLC05MjgxOTUyMDAsLTkwMDExNTIwMCwtODU3MjVlNCwtODQ0NTUyODAwLC04MjgyMTk2MDAsLTgxMjQ5ODQwMCwtODAyMTM3NjAwLDM1NDkzMTIwMCwzNzA3NDI0MDAsMzg2NDY3MjAwLDQwMjI3ODQwMCw0MTgwMDMyMDAsNDMzODE0NDAwLDQ0OTYyNTYwMCw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTQwNDAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDEwNDg5OTMyMDAsMTA2NzE0MDgwMCwxMDgwNDQyODAwLDEwOTkxOTUyMDAsMTExMTg5MjQwMCwxMTMwNjQ0ODAwLDExNDMzNDJlMywxMTYyMDk0NDAwLDExNzQ3OTE2MDAsMTE5MzU0NGUzLDEyMDY4NDZlMywxMjI0OTkzNjAwLDEyMzgyOTU2MDAsMTI1NjQ0MzIwMCwxMjY5NzQ1MjAwLDEyODg0OTc2MDAsMTMwMTE5NDgwMCwxMzE5OTQ3MjAwLDEzMzI2NDQ0MDAsMTM1MTM5NjgwMCwxMzY0Njk4ODAwLDEzODI4NDY0MDAsMTM5NjE0ODQwMCwxNDE0Mjk2ZTMsMTQyNzU5OGUzLDE0NDU3NDU2MDAsMTQ1OTA0NzYwMCwxNDc3OGU1LDE0OTA0OTcyMDAsMTUwOTI0OTYwMCwxNTIxOTQ2ODAwLDE1NDA2OTkyMDAsMTU1NDAwMTIwMCwxNTcyMTQ4ODAwLDE1ODU0NTA4MDAsMTYwMzU5ODQwMCwxNjE2OTAwNDAwLDE2MzU2NTI4MDAsMTY0ODM1ZTQsMTY2NzEwMjQwMCwxNjc5Nzk5NjAwLDE2OTg1NTJlMywxNzExODU0ZTMsMTczMDAwMTYwMCwxNzQzMzAzNjAwLDE3NjE0NTEyMDAsMTc3NDc1MzIwMCwxNzkyOTAwODAwLDE4MDYyMDI4MDAsMTgyNDk1NTIwMCwxODM3NjUyNDAwLDE4NTY0MDQ4MDAsMTg2OTEwMmUzLDE4ODc4NTQ0MDAsMTkwMTE1NjQwMCwxOTE5MzA0ZTMsMTkzMjYwNmUzXSxvZmZzZXQ6WzYwNzYsNTA0MCw1NzM2LDM2MDAsNzIwMCwzNjAwLDEwODAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxNDQwMCwxMDgwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCw3MjAwLDM2MDAsNzIwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDAsMTA4MDAsNzIwMCwxMDgwMCw3MjAwLDEwODAwLDcyMDBdfSwiRXVyb3BlL1dhcnNhdyI6ewp0aW1lOlstMjg0MDE0MDgwMCwtMTcxNzAyNzIwMCwtMTY5MzcwMjgwMCwtMTY4MDQ3NjQwMCwtMTY2MzQ1MmUzLC0xNjUwMTQyODAwLC0xNjMyMDAyNDAwLC0xNjE4NjkzMjAwLC0xNjAwNDY2NDAwLC0xNTg3MTU3MjAwLC0xNTAxNzE4NDAwLC05MzE3MzA0MDAsLTg1NzI1ZTQsLTg0NDU1MjgwMCwtODI4MjE5NjAwLC04MTI0OTg0MDAsLTc5NjYwMDgwMCwtNzc4NzIzMjAwLC03NjI2NTI4MDAsLTc0ODQ4MzIwMCwtNzMzMjY2ZTMsLTcxNTIxMmUzLC03MDE5MDI4MDAsLTY4NDk3MmUzLC02NzA0NTMyMDAsLTY1NDEyNzIwMCwtNjM5MDAzNjAwLC0zOTcwOTA4MDAsLTM4NjgwNTYwMCwtMzcxMDg0NDAwLC0zNTUzNTZlMywtMzM0MTkxNjAwLC0zMjMzMDE2MDAsLTMwNzU4MDQwMCwtMjkxODUyZTMsLTI3MTI5MjQwMCwtMjYwNDAyNDAwLC0yMzk4NDI4MDAsLTIyODk1MjgwMCwtMjA4MzkzMjAwLC0xOTc1MDMyMDAsLTE3NjMzODgwMCwtMTY2MDUzNjAwLDIyODg3NzIwMCwyNDQwMDA4MDAsMjYwMzI2ODAwLDI3NjA1NTIwMCwyOTE3NzY0MDAsMzA3NTA0ODAwLDMyMzgzMDgwMCwzMzg5NTQ0MDAsMzU0Njc1NjAwLDM3MDQwNGUzLDM4NjEyNTIwMCw0MDE4NTM2MDAsNDE3NTc0ODAwLDQzMzMwMzIwMCw0NDkwMjQ0MDAsNDY1MzU3NjAwLDQ4MTA3ODgwMCw0OTY4MDcyMDAsNTEyNTI4NDAwLDUyODI1NjgwMCw1NDM5NzhlMyw1NTk3MDY0MDAsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDk1NDAzNmUzLDk3Mjc4ODQwMCw5ODU0ODU2MDAsMTAwNDIzOGUzLDEwMTc1NGU0LDEwMzU2ODc2MDAsMTA0ODk4OTYwMCwxMDY3MTM3MjAwLDEwODA0MzkyMDAsMTA5OTE5MTYwMCwxMTExODg4ODAwLDExMzA2NDEyMDAsMTE0MzMzODQwMCwxMTYyMDkwODAwLDExNzQ3ODhlMywxMTkzNTQwNDAwLDEyMDY4NDI0MDAsMTIyNDk5ZTQsMTIzODI5MmUzLDEyNTY0Mzk2MDAsMTI2OTc0MTYwMCwxMjg4NDk0ZTMsMTMwMTE5MTIwMCwxMzE5OTQzNjAwLDEzMzI2NDA4MDAsMTM1MTM5MzIwMCwxMzY0Njk1MjAwLDEzODI4NDI4MDAsMTM5NjE0NDgwMCwxNDE0MjkyNDAwLDE0Mjc1OTQ0MDAsMTQ0NTc0MmUzLDE0NTkwNDRlMywxNDc3Nzk2NDAwLDE0OTA0OTM2MDAsMTUwOTI0NmUzLDE1MjE5NDMyMDAsMTU0MDY5NTYwMCwxNTUzOTk3NjAwLDE1NzIxNDUyMDAsMTU4NTQ0NzIwMCwxNjAzNTk0ODAwLDE2MTY4OTY4MDAsMTYzNTY0OTIwMCwxNjQ4MzQ2NDAwLDE2NjcwOTg4MDAsMTY3OTc5NmUzLDE2OTg1NDg0MDAsMTcxMTg1MDQwMCwxNzI5OTk4ZTMsMTc0MzNlNSwxNzYxNDQ3NjAwLDE3NzQ3NDk2MDAsMTc5Mjg5NzIwMCwxODA2MTk5MjAwLDE4MjQ5NTE2MDAsMTgzNzY0ODgwMCwxODU2NDAxMjAwLDE4NjkwOTg0MDAsMTg4Nzg1MDgwMCwxOTAxMTUyODAwLDE5MTkzMDA0MDAsMTkzMjYwMjQwMF0sb2Zmc2V0Ols1MDQwLDUwNDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsNzIwMCwxMDgwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9aYWdyZWIiOnsKdGltZTpbLTI3MTM5MTA0MDAsLTkwNTgyMTIwMCwtODU3MjVlNCwtODQ0NTUyODAwLC04MjgyMTk2MDAsLTgxMjQ5ODQwMCwtNzk2NzdlNCwtNzgxMDQ4ODAwLC03NjY2MTY0MDAsNDE3NTc4NDAwLDQzMzMwNjgwMCw0NDkwMjhlMyw0NjUzNjEyMDAsNDgxMDgyNDAwLDQ5NjgxMDgwMCw1MTI1MzJlMyw1MjgyNjA0MDAsNTQzOTgxNjAwLDU1OTcxZTQsNTc1NDMxMjAwLDU5MTE1OTYwMCw2MDY4ODA4MDAsNjIyNjA5MjAwLDYzODMzMDQwMCw2NTQ2NjM2MDAsNjcwMzg0ODAwLDY4NjExMzIwMCw3MDE4MzQ0MDAsNzE3NTYyODAwLDczMzI4NGUzLDc0OTAxMjQwMCw3NjQ3MzM2MDAsNzgwNDYyZTMsNzk2MTgzMjAwLDgxMTkxMTYwMCw4MjgyMzc2MDAsODQ2Mzg1MjAwLDg1OTY4NzIwMCw4Nzc4MzQ4MDAsODkxMTM2ODAwLDkwOTI4NDQwMCw5MjI1ODY0MDAsOTQxMzM4ODAwLDk1NDAzNmUzLDk3Mjc4ODQwMCw5ODU0ODU2MDAsMTAwNDIzOGUzLDEwMTc1NGU0LDEwMzU2ODc2MDAsMTA0ODk4OTYwMCwxMDY3MTM3MjAwLDEwODA0MzkyMDAsMTA5OTE5MTYwMCwxMTExODg4ODAwLDExMzA2NDEyMDAsMTE0MzMzODQwMCwxMTYyMDkwODAwLDExNzQ3ODhlMywxMTkzNTQwNDAwLDEyMDY4NDI0MDAsMTIyNDk5ZTQsMTIzODI5MmUzLDEyNTY0Mzk2MDAsMTI2OTc0MTYwMCwxMjg4NDk0ZTMsMTMwMTE5MTIwMCwxMzE5OTQzNjAwLDEzMzI2NDA4MDAsMTM1MTM5MzIwMCwxMzY0Njk1MjAwLDEzODI4NDI4MDAsMTM5NjE0NDgwMCwxNDE0MjkyNDAwLDE0Mjc1OTQ0MDAsMTQ0NTc0MmUzLDE0NTkwNDRlMywxNDc3Nzk2NDAwLDE0OTA0OTM2MDAsMTUwOTI0NmUzLDE1MjE5NDMyMDAsMTU0MDY5NTYwMCwxNTUzOTk3NjAwLDE1NzIxNDUyMDAsMTU4NTQ0NzIwMCwxNjAzNTk0ODAwLDE2MTY4OTY4MDAsMTYzNTY0OTIwMCwxNjQ4MzQ2NDAwLDE2NjcwOTg4MDAsMTY3OTc5NmUzLDE2OTg1NDg0MDAsMTcxMTg1MDQwMCwxNzI5OTk4ZTMsMTc0MzNlNSwxNzYxNDQ3NjAwLDE3NzQ3NDk2MDAsMTc5Mjg5NzIwMCwxODA2MTk5MjAwLDE4MjQ5NTE2MDAsMTgzNzY0ODgwMCwxODU2NDAxMjAwLDE4NjkwOTg0MDAsMTg4Nzg1MDgwMCwxOTAxMTUyODAwLDE5MTkzMDA0MDAsMTkzMjYwMjQwMF0sb2Zmc2V0OlszODMyLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwXX0sIkV1cm9wZS9adXJpY2giOnt0aW1lOlstMzY3NTE5NjgwMCwtMjM4NTI0NDgwMCwtOTA0NDMxNjAwLC04OTExMjI0MDAsLTg3Mjk4MmUzLC04NTk2NzI4MDAsMzU0Njc5MjAwLDM3MDQwNzYwMCwzODYxMjg4MDAsNDAxODU3MjAwLDQxNzU3ODQwMCw0MzMzMDY4MDAsNDQ5MDI4ZTMsNDY1MzYxMjAwLDQ4MTA4MjQwMCw0OTY4MTA4MDAsNTEyNTMyZTMsNTI4MjYwNDAwLDU0Mzk4MTYwMCw1NTk3MWU0LDU3NTQzMTIwMCw1OTExNTk2MDAsNjA2ODgwODAwLDYyMjYwOTIwMCw2MzgzMzA0MDAsNjU0NjYzNjAwLDY3MDM4NDgwMCw2ODYxMTMyMDAsNzAxODM0NDAwLDcxNzU2MjgwMCw3MzMyODRlMyw3NDkwMTI0MDAsNzY0NzMzNjAwLDc4MDQ2MmUzLDc5NjE4MzIwMCw4MTE5MTE2MDAsODI4MjM3NjAwLDg0NjM4NTIwMCw4NTk2ODcyMDAsODc3ODM0ODAwLDg5MTEzNjgwMCw5MDkyODQ0MDAsOTIyNTg2NDAwLDk0MTMzODgwMCw5NTQwMzZlMyw5NzI3ODg0MDAsOTg1NDg1NjAwLDEwMDQyMzhlMywxMDE3NTRlNCwxMDM1Njg3NjAwLDEwNDg5ODk2MDAsMTA2NzEzNzIwMCwxMDgwNDM5MjAwLDEwOTkxOTE2MDAsMTExMTg4ODgwMCwxMTMwNjQxMjAwLDExNDMzMzg0MDAsMTE2MjA5MDgwMCwxMTc0Nzg4ZTMsMTE5MzU0MDQwMCwxMjA2ODQyNDAwLDEyMjQ5OWU0LDEyMzgyOTJlMywxMjU2NDM5NjAwLDEyNjk3NDE2MDAsMTI4ODQ5NGUzLDEzMDExOTEyMDAsMTMxOTk0MzYwMCwxMzMyNjQwODAwLDEzNTEzOTMyMDAsMTM2NDY5NTIwMCwxMzgyODQyODAwLDEzOTYxNDQ4MDAsMTQxNDI5MjQwMCwxNDI3NTk0NDAwLDE0NDU3NDJlMywxNDU5MDQ0ZTMsMTQ3Nzc5NjQwMCwxNDkwNDkzNjAwLDE1MDkyNDZlMywxNTIxOTQzMjAwLDE1NDA2OTU2MDAsMTU1Mzk5NzYwMCwxNTcyMTQ1MjAwLDE1ODU0NDcyMDAsMTYwMzU5NDgwMCwxNjE2ODk2ODAwLDE2MzU2NDkyMDAsMTY0ODM0NjQwMCwxNjY3MDk4ODAwLDE2Nzk3OTZlMywxNjk4NTQ4NDAwLDE3MTE4NTA0MDAsMTcyOTk5OGUzLDE3NDMzZTUsMTc2MTQ0NzYwMCwxNzc0NzQ5NjAwLDE3OTI4OTcyMDAsMTgwNjE5OTIwMCwxODI0OTUxNjAwLDE4Mzc2NDg4MDAsMTg1NjQwMTIwMCwxODY5MDk4NDAwLDE4ODc4NTA4MDAsMTkwMTE1MjgwMCwxOTE5MzAwNDAwLDE5MzI2MDI0MDBdLApvZmZzZXQ6WzIwNDgsMTc4NiwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMCw3MjAwLDM2MDAsNzIwMCwzNjAwLDcyMDAsMzYwMF19LCJQYWNpZmljL0F1Y2tsYW5kIjp7dGltZTpbLTMxOTIzOTM2MDAsLTEzMzAyOTM2MDAsLTEzMjAwMTJlMywtMTMwMDY1ODQwMCwtMTI4NzM1MjgwMCwtMTI2OTIwODgwMCwtMTI1NTkwMzIwMCwtMTIzNzc1OTIwMCwtMTIyNDQ1MzYwMCwtMTIwNjMwOTYwMCwtMTE5MjM5OTIwMCwtMTE3NDg2ZTQsLTExNjA5NDk2MDAsLTExNDM0MTA0MDAsLTExMjU4NzEyMDAsLTExMTI1NjU2MDAsLTEwOTQ0MjE2MDAsLTEwODExMTZlMywtMTA2Mjk3MmUzLC0xMDQ5NjY2NDAwLC0xMDMxNTIyNDAwLC0xMDE4MjE2ODAwLC0xMDAwMDcyODAwLC05ODY3NjcyMDAsLTk2ODAxODQwMCwtOTU1MzE3NjAwLC05MzY1Njg4MDAsLTkyMzI2MzIwMCwtNzU3MzgyNDAwLDE1MjY3NmUzLDE2MjM1NjQwMCwxODM1MjA4MDAsMTk1MDE1NjAwLDIxNTU3NTIwMCwyMjY0NjUyMDAsMjQ3MDI0ODAwLDI1NzkxNDgwMCwyNzg0NzQ0MDAsMjg5MzY0NDAwLDMwOTkyNGUzLDMyMDgxNGUzLDM0MTM3MzYwMCwzNTIyNjM2MDAsMzcyODIzMjAwLDM4NDMxOGUzLDQwNDg3NzYwMCw0MTU3Njc2MDAsNDM2MzI3MjAwLDQ0NzIxNzIwMCw0Njc3NzY4MDAsNDc4NjY2ODAwLDQ5OTIyNjQwMCw1MTAxMTY0MDAsNTMwNjc2ZTMsNTQxNTY2ZTMsNTYyMTI1NjAwLDU3MzYyMDQwMCw1OTQxOGU0LDYwNTA3ZTQsNjIzODE1MjAwLDYzNzcyOTIwMCw2NTUyNjQ4MDAsNjY5MTc4ODAwLDY4NjcxNDQwMCw3MDA2Mjg0MDAsNzE4MTY0ZTMsNzMyNjgyODAwLDc0OTYxMzYwMCw3NjQxMzI0MDAsNzgxMDYzMjAwLDc5NTU4MmUzLDgxMjUxMjgwMCw4MjcwMzE2MDAsODQ0NTY3MjAwLDg1ODQ4MTIwMCw4NzYwMTY4MDAsODg5OTMwODAwLDkwNzQ2NjQwMCw5MjE5ODUyMDAsOTM4OTE2ZTMsOTUzNDM0ODAwLDk3MDM2NTYwMCw5ODQ4ODQ0MDAsMTAwMjQyZTQsMTAxNjMzNGUzLDEwMzM4Njk2MDAsMTA0Nzc4MzYwMCwxMDY1MzE5MjAwLDEwNzk4MzhlMywxMDk2NzY4ODAwLDExMTEyODc2MDAsMTEyODIxODQwMCwxMTQyNzM3MjAwLDExNTk2NjhlMywxMTc0MTg2ODAwLDExOTExMTc2MDAsMTIwNzQ1MDgwMCwxMjIyNTY3MjAwLDEyMzg5MDA0MDAsMTI1NDAxNjgwMCwxMjcwMzVlNCwxMjg1NDY2NDAwLDEzMDE3OTk2MDAsMTMxNjkxNmUzLDEzMzMyNDkyMDAsMTM0ODk3MDQwMCwxMzY1MzAzNjAwLDEzODA0MmU0LDEzOTY3NTMyMDAsMTQxMTg2OTYwMCwxNDI4MjAyODAwLDE0NDMzMTkyMDAsMTQ1OTY1MjQwMCwxNDc0NzY4ODAwLDE0OTExMDJlMywxNTA2MjE4NDAwLDE1MjI1NTE2MDAsMTUzODI3MjgwMCwxNTU0NjA2ZTMsMTU2OTcyMjQwMCwxNTg2MDU1NjAwLDE2MDExNzJlMywxNjE3NTA1MjAwLDE2MzI2MjE2MDAsMTY0ODk1NDgwMCwxNjY0MDcxMjAwLDE2ODA0MDQ0MDAsMTY5NTUyMDgwMCwxNzEyNDU4ODAwLDE3Mjc1NzUyMDAsMTc0MzkwODQwMCwxNzU5MDI0ODAwLDE3NzUzNThlMywxNzkwNDc0NDAwLDE4MDY4MDc2MDAsMTgyMTkyNGUzLDE4MzgyNTcyMDAsMTg1MzM3MzYwMCwxODY5NzA2ODAwLDE4ODU0MjhlMywxOTAxNzYxMjAwLDE5MTY4Nzc2MDAsMTkzMzIxMDgwMF0sb2Zmc2V0Ols0MTk0NCw0MTQwMCw0NWUzLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQxNDAwLDQzMjAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwLDQzMjAwLDQ2ODAwXX0sIlBhY2lmaWMvQ2hhdGhhbSI6ewp0aW1lOlstMzE5MjM5MzYwMCwtNzU3MzgyNDAwLDE1MjY3ODcwMCwxNjIzNTkxMDAsMTgzNTIzNTAwLDE5NTAxODMwMCwyMTU1Nzc5MDAsMjI2NDY3OTAwLDI0NzAyNzUwMCwyNTc5MTc1MDAsMjc4NDc3MTAwLDI4OTM2NzEwMCwzMDk5MjY3MDAsMzIwODE2NzAwLDM0MTM3NjMwMCwzNTIyNjYzMDAsMzcyODI1OTAwLDM4NDMyMDcwMCw0MDQ4ODAzMDAsNDE1NzcwMzAwLDQzNjMyOTkwMCw0NDcyMTk5MDAsNDY3Nzc5NTAwLDQ3ODY2OTUwMCw0OTkyMjkxMDAsNTEwMTE5MTAwLDUzMDY3ODcwMCw1NDE1Njg3MDAsNTYyMTI4MzAwLDU3MzYyMzEwMCw1OTQxODI3MDAsNjA1MDcyNzAwLDYyMzgxNzkwMCw2Mzc3MzE5MDAsNjU1MjY3NTAwLDY2OTE4MTUwMCw2ODY3MTcxMDAsNzAwNjMxMTAwLDcxODE2NjcwMCw3MzI2ODU1MDAsNzQ5NjE2MzAwLDc2NDEzNTEwMCw3ODEwNjU5MDAsNzk1NTg0NzAwLDgxMjUxNTUwMCw4MjcwMzQzMDAsODQ0NTY5OTAwLDg1ODQ4MzkwMCw4NzYwMTk1MDAsODg5OTMzNTAwLDkwNzQ2OTEwMCw5MjE5ODc5MDAsOTM4OTE4NzAwLDk1MzQzNzUwMCw5NzAzNjgzMDAsOTg0ODg3MTAwLDEwMDI0MjI3MDAsMTAxNjMzNjcwMCwxMDMzODcyMzAwLDEwNDc3ODYzMDAsMTA2NTMyMTkwMCwxMDc5ODQwNzAwLDEwOTY3NzE1MDAsMTExMTI5MDMwMCwxMTI4MjIxMTAwLDExNDI3Mzk5MDAsMTE1OTY3MDcwMCwxMTc0MTg5NTAwLDExOTExMjAzMDAsMTIwNzQ1MzUwMCwxMjIyNTY5OTAwLDEyMzg5MDMxMDAsMTI1NDAxOTUwMCwxMjcwMzUyNzAwLDEyODU0NjkxMDAsMTMwMTgwMjMwMCwxMzE2OTE4NzAwLDEzMzMyNTE5MDAsMTM0ODk3MzEwMCwxMzY1MzA2MzAwLDEzODA0MjI3MDAsMTM5Njc1NTkwMCwxNDExODcyMzAwLDE0MjgyMDU1MDAsMTQ0MzMyMTkwMCwxNDU5NjU1MTAwLDE0NzQ3NzE1MDAsMTQ5MTEwNDcwMCwxNTA2MjIxMTAwLDE1MjI1NTQzMDAsMTUzODI3NTUwMCwxNTU0NjA4NzAwLDE1Njk3MjUxMDAsMTU4NjA1ODMwMCwxNjAxMTc0NzAwLDE2MTc1MDc5MDAsMTYzMjYyNDMwMCwxNjQ4OTU3NTAwLDE2NjQwNzM5MDAsMTY4MDQwNzEwMCwxNjk1NTIzNTAwLDE3MTI0NjE1MDAsMTcyNzU3NzkwMCwxNzQzOTExMTAwLDE3NTkwMjc1MDAsMTc3NTM2MDcwMCwxNzkwNDc3MTAwLDE4MDY4MTAzMDAsMTgyMTkyNjcwMCwxODM4MjU5OTAwLDE4NTMzNzYzMDAsMTg2OTcwOTUwMCwxODg1NDMwNzAwLDE5MDE3NjM5MDAsMTkxNjg4MDMwMCwxOTMzMjEzNTAwXSxvZmZzZXQ6WzQ0MDI4LDQ0MTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwLDQ1OTAwLDQ5NTAwXX0sIlBhY2lmaWMvRmFrYW9mbyI6e3RpbWU6Wy0yMTc3NDUyODAwLDEzMjUyMDMyMDAsMTkyNTAzODgwMF0sb2Zmc2V0OlstNDEwOTYsLTM5NjAwLDQ2ODAwXX0sIlBhY2lmaWMvSG9ub2x1bHUiOnt0aW1lOlstMjMzNDEzOTIwMCwtMTE1NzMyMDgwMCwtMTE1NTQ3MDQwMCwtODgwMjM2ZTMsLTc2OTQyOTgwMCwtNzY1NDEwNDAwLC03MTIxODhlMywxOTI0OTU2ZTNdLG9mZnNldDpbLTM3ODg2LC0zNzgwMCwtMzQyMDAsLTM3ODAwLC0zNDIwMCwtMzQyMDAsLTM3ODAwLC0zNmUzXX0sIlBhY2lmaWMvTm9yZm9sayI6e3RpbWU6Wy0yMTc3NDUyODAwLC01OTk2MTZlMywxNTIwNzEyMDAsMTYyOTYxMjAwLDE0NDM5MjRlMywxNTcwMzI3MjAwLDE1ODYwNTU2MDAsMTYwMTc3NjgwMCwxNjE3NTA1MjAwLDE2MzMyMjY0MDAsMTY0ODk1NDgwMCwxNjY0Njc2ZTMsMTY4MDQwNDQwMCwxNjk2MTI1NjAwLDE3MTI0NTg4MDAsMTcyODE4ZTQsMTc0MzkwODQwMCwxNzU5NjI5NjAwLDE3NzUzNThlMywxNzkxMDc5MjAwLDE4MDY4MDc2MDAsMTgyMjUyODgwMCwxODM4MjU3MjAwLDE4NTM5Nzg0MDAsMTg2OTcwNjgwMCwxODg2MDMyODAwLDE5MDE3NjEyMDAsMTkxNzQ4MjQwMCwxOTMzMjEwODAwXSxvZmZzZXQ6WzQwMzEyLDQwMzIwLDQxNDAwLDQ1ZTMsNDE0MDAsMzk2MDAsNDMyMDAsMzk2MDAsNDMyMDAsMzk2MDAsNDMyMDAsMzk2MDAsNDMyMDAsMzk2MDAsNDMyMDAsMzk2MDAsNDMyMDAsMzk2MDAsNDMyMDAsMzk2MDAsNDMyMDAsMzk2MDAsNDMyMDAsMzk2MDAsNDMyMDAsMzk2MDAsNDMyMDAsMzk2MDAsNDMyMDBdfSwiVVMvTW91bnRhaW4iOnsKdGltZTpbLTI3MTc2Njg3OTYsLTE2MzMyOTg0MDAsLTE2MTUxNTQ0MDAsLTE2MDE4NDg4MDAsLTE1ODM3MDQ4MDAsLTE1NzAzOTkyMDAsLTE1NTE2NTA0MDAsLTE1Mzg5NDk2MDAsLTE1MzQxMTEyMDAsLTg4MDIzNmUzLC03Njk0MTcyMDAsLTc2NTQxMDQwMCwtMTQ3OTA5NjAwLC0xMzE1OGU0LC0xMTY0NmU0LC0xMDAxMzA0MDAsLTg0NDA1NjAwLC02ODY4MDgwMCwtNTI5NTZlMywtMzcyMzEyMDAsLTIxNTA2NDAwLC01NzgxNjAwLDk5NDMyMDAsMjU2NjhlMyw0MTM5MjgwMCw1NzcyMjQwMCw3MzQ0NzIwMCw4OTE3MmUzLDEwNDg5NjgwMCwxMjA2MjE2MDAsMTI2NjY5NjAwLDE1MjA3MTIwMCwxNjIzNTI4MDAsMTgzNTIwODAwLDE5OTI0NTYwMCwyMTU1NzUyMDAsMjMwNjk1MjAwLDI0NzAyNDgwMCwyNjI3NDk2MDAsMjc4NDc0NDAwLDI5NDE5OTIwMCwzMDk5MjRlMywzMjU2NDg4MDAsMzQxMzczNjAwLDM1NzA5ODQwMCwzNzI4MjMyMDAsMzg4NTQ4ZTMsNDA0ODc3NjAwLDQxOTk5NzYwMCw0MzYzMjcyMDAsNDUyMDUyZTMsNDY3Nzc2ODAwLDQ4MzUwMTYwMCw0OTkyMjY0MDAsNTE0OTUxMjAwLDUzMDY3NmUzLDU0NDU4NjQwMCw1NjIxMjU2MDAsNTc2MDM2ZTMsNTk0MThlNCw2MDc0ODU2MDAsNjI1NjI5NjAwLDYzODkzNTIwMCw2NTcwNzkyMDAsNjcwOTg5NjAwLDY4ODUyODgwMCw3MDI0MzkyMDAsNzE5OTc4NDAwLDczMzg4ODgwMCw3NTIwMzI4MDAsNzY1MzM4NDAwLDc4MzQ4MjQwMCw3OTY3ODhlMyw4MTQ5MzJlMyw4Mjg4NDI0MDAsODQ2MzgxNjAwLDg2MDI5MmUzLDg3NzgzMTIwMCw4OTE3NDE2MDAsOTA5MjgwODAwLDkyMzE5MTIwMCw5NDEzMzUyMDAsOTU0NjQwODAwLDk3Mjc4NDgwMCw5ODYwOTA0MDAsMTAwNDIzNDQwMCwxMDE4MTQ0ODAwLDEwMzU2ODRlMywxMDQ5NTk0NDAwLDEwNjcxMzM2MDAsMTA4MTA0NGUzLDEwOTkxODhlMywxMTEyNDkzNjAwLDExMzA2Mzc2MDAsMTE0Mzk0MzIwMCwxMTYyMDg3MjAwLDExNzM1Nzg0MDAsMTE5NDE0MTYwMCwxMjA1MDI4ZTMsMTIyNTU5MTIwMCwxMjM2NDc3NjAwLDEyNTcwNDA4MDAsMTI2ODUzMmUzLDEyODkwOTUyMDAsMTI5OTk4MTYwMCwxMzIwNTQ0ODAwLDEzMzE0MzEyMDAsMTM1MTk5NDQwMCwxMzYyODgwODAwLDEzODM0NDRlMywxMzk0MzMwNDAwLDE0MTQ4OTM2MDAsMTQyNTc4ZTQsMTQ0NjM0MzIwMCwxNDU3ODM0NDAwLDE0NzgzOTc2MDAsMTQ4OTI4NGUzLDE1MDk4NDcyMDAsMTUyMDczMzYwMCwxNTQxMjk2ODAwLDE1NTIxODMyMDAsMTU3Mjc0NjQwMCwxNTgzNjMyODAwLDE2MDQxOTZlMywxNjE1Njg3MjAwLDE2MzYyNTA0MDAsMTY0NzEzNjgwMCwxNjY3N2U1LDE2Nzg1ODY0MDAsMTY5OTE0OTYwMCwxNzEwMDM2ZTMsMTczMDU5OTIwMCwxNzQxNDg1NjAwLDE3NjIwNDg4MDAsMTc3MjkzNTIwMCwxNzkzNDk4NDAwLDE4MDQ5ODk2MDAsMTgyNTU1MjgwMCwxODM2NDM5MjAwLDE4NTcwMDI0MDAsMTg2Nzg4ODgwMCwxODg4NDUyZTMsMTg5OTMzODQwMCwxOTE5OTAxNjAwLDE5MzA3ODhlM10sb2Zmc2V0OlstMjUxOTYsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDAsLTIxNjAwLC0yNTIwMCwtMjE2MDAsLTI1MjAwLC0yMTYwMCwtMjUyMDBdfX19fV0pOw=="}},"time_used":1,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":1,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/images/icon/instruments/oil.svg","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.100Z","timestamp":1785126256100,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/icon/instruments/oil.svg HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/svg+xml\r\ncontent-length: 1276\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-4fc\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":1276,"size_decoded":1528,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"33141194a59e04f4d9750312939a50bd","sha1":"4002b98164c812ba581484f4f7bda949867731ea","sha256":"1169c6492958db24d54a4c337488bf0882aac0c2a0503e7cc5f09ed22e50a28a","sha512":"abce8e657a263facd2b3b91be008301ab08d0ab207601e14769708a6fa0ba440118d84d7e705bfb70c863ff2d396f5460dcb6dd3992e30f097be0ccac90e4002","ssdeep":"","tlshash":"7d21dde812fe0028d042c223f3e5fa4d9e3eb0db62c50995b28d654bbf205a70b5f364","first_seen":"2023-05-01T20:32:00Z","last_seen":"2026-07-27T04:25:12.749704Z","times_seen":159,"resource_available":false,"data":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTdweCIgaGVpZ2h0PSIxN3B4IiB2aWV3Qm94PSIwIDAgMTcgMTciIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDUyLjEgKDY3MDQ4KSAtIGh0dHA6Ly93d3cuYm9oZW1pYW5jb2RpbmcuY29tL3NrZXRjaCAtLT4KICAgIDx0aXRsZT5Hcm91cCAzMzwvdGl0bGU+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxnIGlkPSJQYWdlLTEiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSJQcmltZVhCVF92MiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTkwMi4wMDAwMDAsIC0xMTk5LjAwMDAwMCkiPgogICAgICAgICAgICA8ZyBpZD0iR3JvdXAtMjYiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDU4My4wMDAwMDAsIDk3MC4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxnIGlkPSJHcm91cC0yNyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMzE5LjAwMDAwMCwgMTgyLjAwMDAwMCkiIGZpbGwtcnVsZT0ibm9uemVybyI+CiAgICAgICAgICAgICAgICAgICAgPGcgaWQ9Ikdyb3VwLTMzIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjAwMDAwMCwgNDcuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxjaXJjbGUgaWQ9Ik92YWwiIGZpbGw9IiMwMDAwMDAiIGN4PSI4LjUiIGN5PSI4LjUiIHI9IjguNSI+PC9jaXJjbGU+CiAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik04LjM5NTQ3NzE2LDMgQzUuNjA5NDQ0NjIsNy4wNTU5Mjc2IDQuNTM3ODkzNjQsOS44MzM5NzcwOSA1LjE4MDgyNDIzLDExLjMzNDE0ODUgQzYuMTQ1MjIwMTEsMTMuNTg0NDA1NSAxMC42NDU3MzQyLDEzLjg1NzU4MjcgMTEuOTMxNTk1NCwxMS4zMzQxNDg1IEMxMi43ODg4MzYyLDkuNjUxODU4OTYgMTEuNjEwMTMwMSw2Ljg3MzgwOTQ4IDguMzk1NDc3MTYsMyBaIiBpZD0iUGF0aC0yIiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgPGcgaWQ9IlBhZ2UiPjwvZz4KICAgICAgICAgICAgPC9nPgogICAgICAgICAgICA8ZyBpZD0iUGFnZSI+PC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+Cg=="}},"time_used":397,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":306,"receive":91,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/images/skril.png","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.103Z","timestamp":1785126256103,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/skril.png HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/png\r\ncontent-length: 23925\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-5d75\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":23925,"size_decoded":24175,"mime_type":"image/png","magic":"PNG image data, 319 x 125, 8-bit/color RGBA, non-interlaced","md5":"782ef2adc6ba8e53c05f8d94f944fa4a","sha1":"1dbb55ebd9256c0997f9e5a3dc7546a376f76a0c","sha256":"d41427e1fd26266e627fdbcc83f24c07ee7917c7c44faaa32e8064bfb97c4311","sha512":"e93849e2a31c07c5743e27b78b0898b22897df268fc2677028c4e14adacfbccf6321c83140d3fc1bbc1e3e3e6502900d6dce55056051ebfe8034a85e249991a7","ssdeep":"384:Mf7EYiczHawMcAhqTMupKjFNea7X8xJLJN7Kp2c9vA5RWY3qAlCo3dtgGhLFpw7w:bc99TMuqFV7sxJLDOReWYbYo3dtgSFpn","tlshash":"0bb2d065aaf30da527fa8f12fb030c48462cdc797c6f3a4f7c5100dcaaa926550a54fa","first_seen":"2026-07-27T03:36:45.039584Z","last_seen":"2026-07-27T04:25:12.750315Z","times_seen":2,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAT8AAAB9CAYAAADUQWR4AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAFz7SURBVHja7L13nCVXeef9PaGqbu44PTkrBwTKEYRAiGxhYcDGZsFex/WCc1p7bdav12H39e5rdo2xjVmMw5KETcY2GIEkJAQCZY2kGWk0mjwdb6pwwvtH1b3dPdJoJE0jJFO/+ZRaHW/dqlO/85znPM/vJ7z3lChRosT3GmR5CUqUKFGSX4kSJUqU5FeiRIkSJfmVKFGiREl+JUqUKFGSX4kSJUqU5FeiRIkSJfmVKFGiREl+JUqUKFGSX4kSJUqU5FeiRIkSJfmVKFGiREl+JUqUKFGSX4kSJUqU5FeiRIkSJfmVKFGiREl+JUqUKFGSX4kSJUocA/q5eFK/v+0nnjmbS4n3noE8/1KZfiEEUsrh15f+zOD/B99/sr9/Ir//nYZzbvg+hRDD83PO4b3/rp/fcx0usHSSPlE1RDdrHFmY4Uh3gY2nbeXcSy/iB378RwQN0aLCKxD8BoozAG9T96lut/uLt/2Xz+257Wu3+N27dzPeHKFWrRK3uygPrVoDk6ZP+vpWPH+v3a/v+vOS/J6r8N4PCWEpWSwlr+PhRH//2XyPS8nv6ImgxDEeCK0JfYiUkj179rAQd3jV938fP/JT7xBi20gLeBsBvwysJUWjgBBUJN/YlM1rXvauN/0/L7ns8vd86EMf6n/9pq/hRkaYHB0j7fXpdrtEQVBe5JL8jo1UBoBHeQCTfxQW5YrozXmc9XivUEIi0AjvsdZyuH2Ier1Oq9WgUqlgvSVJEvppH2MMmcnJwcqctJw3OSnIgixELSc064ZEEgqFUgGBkHR7XUKh0DogEgoQSA/e5+SStipYa3H9hKyfEHpFFEVEYRUpJbHN6CYx1nvCMMRbSy2MqFQqzB2eRhlHpVJBVSO8kohQ0+l0WFhYYNXoOC5N8uvhs/x8ZR4tGGFxzrF6skGv1+OxrMPskTaVWotqpUHUM6yfWk+73QZgIcqJUOBQDpqpya+9OtHI8ER/331Xx141rqPSgH3xDG1tuPIdr+W1P/uDordKbatW7Z9IrV4OhFggAIq50EoHiqZbH/9usHndtnM3XP0L+/8u7u345M1Ec4ZxaqRZQNpoIKUkSfv4LEG3e9RqEXY8JE1TpB3DF2PZOYdwFoVAKNAInLP5+AskARKPzcd1EmOt5f7RadauXcuGRzO8jTBO4YRiPzFRFFHJDFUDkQKlFL1AsjDfo6krSBFiazXSNCVNupBZtIQo0qiqRASahbiDU4LmSJPZ2VlcZsh6MSO1Zkl+z0Zkk0db+c2LghAlQ5wxZFnG6aefTr/fZ25uhgMHDtBP+mitqbfq1Ot19u5/jDAM0dWASqVCJaqhtUYFCqUUR2Z7CCHwgLX5wIozi7Ue6TwjIyP0ej3SNENaTxRFNCpVoihCKcX+6WmiKKKuQ6JGQOByMsiyDGMMItSEYYgKApRS9Ltder0e3ud/q14PieOY2dlZMu+ojTQJgoBWq4WUEus9UirCoIJSCustscmwJiXLMr71rW8RRRHZeJ3x8XHWbdhC3M/Yv/8hDnGIarVaTvlPgjiO0VrTaXc4/yXnc+211zK+YfXG1CXvlUpdWVDeMRGEYYDlTeecf+6dlST88w/c9rA5cs9+Nmw6jUBL9h4+TL1ep1avoANFVQYI4ZhLEowx+DRGqXwsaq1ReLAO6w3OOrTW2NTQ63ewcYrzBiEEgZIopciyDGstBw4coBqNMTq+GlRAVYhiIpe4NKafJgghMPUKrVaLmghQMuLR2VmiKGJkZISqDsEZ+v0O8wtzdJMYESn6JuXQkUP0+30mx8aZmppivDlakt9KQHkPOJQH4YtIwucxgVDglcJKSJ1hgQRnHAgBdcWdj92GFcXyZX2F1qr1rN24njVbNzA6OcFPXXW50JVIq0alFdYrkyLiZALGhWQEmKHLERyP4TiEoUPmUtLUpYnxLjN8/etfpz0zx8GDhzly5AjzM7PsPHKEgwcfYX5mllMmtlKTnkRmCOdRAkIRIQOBs4IoEvT7fUy/h/YCLSQ6kHjrUIFmwbTRVU3UrKCEpy8zFnyCU5ZZ36W+psp0v8f8/CwLCwv0TIyMAqojTeqtOqdccQVr1qxh3SmnsHnTNrZuOom7b7qdj/7vv0L1wQlfXONiGe/z/1flijifpEJPN+2impprrn0lq8/bXkXzVue53AirBSq/foPsx9E5OoHA9VqEtZ859fKzPnfJq696+PP7r2cm6eBdyOaN68myDBcndBfa+ACk9MxpQ1gNmYzA2pTUJPTSjAyHwWNDhwsFB+aP4LVEjoY0RkeYWr+JDVs2s37jOsbGxvi1q18GccY/vvP3eXDHHvpS0O+36VcFUkhMt0MUSOqtKkEQMC8zIGXX9CF8ZtiyZjVx3Gb//DydTofE9lFhQDBaRa+q4eqakTVrGV0zxZYtWzjltFPZsmULWqqS/J6tpD5SorXGk5NJr9+nb1LG1oyxefs2zj//fM698HxROXmzZpQRFGcCl2K5moANRKxBopCE5Hsk0nusVAgEPRSegL1UZR9b+VpomMfyLy9+4ys6OHZhyRD0sTi6+PjINAuzc3z0z/6O7vQcB/buY+bwEcgsI7VRWs0mUVhDSpkvPyoKnxq0kCgEWS/NI0OZ5w+NsRjh6WYxvTQhrAQIIdh554OMjY2xfv1aLrzwQjadtIUtJ29nw7YthBMTMBXmsYnOJwwcRFHE9PQ0Laq06q2S4Z4scgsCDh06xNkvPZszr7gMLBNZP3lnUA/COI1FJaw9+R+wFsJQ+sxuFl79+Otf//rf3PmVu9yjN9/N6qlNzM7OYoyhqjSVSoWpiRZx3OUwCxhjOHDoQJ5DFg6vJDIKiGpVdDNAhgFv+KEfYHTVBKs3r2ftpo2CVVVPtbjXdvBUBxw8eJCZmRlGRwKccyiV5zFbrRaBhKTfJU1T9i4cptkcRUrJqjVr2LHjfqrVKqOjLTZs2MCaDVNs2rqFtSdtpLV6UoyestkzUZVIHNUiS6GWvHZJfieGyKbD0/NFDskJiRPgJZjIkYqMmXia+XiBaKTCaRedwbYzTlJX/cJbq0qpC4VW12RSvsEItwaoOqwEZKi1FwjhcR4QDrzHC/LPldfeAyMC4QVitPh4vsjP4zcdDl/8ihLSCEhYxR6xZeKbDT/2sf9wyW99g5RDnYcPmJ07HvAP7XiAh+7dyQP33sfBR+6jVWvR0g02rl2HVoq016fqIxCOqFLhiJ8hkZ4DM0eQtYjqeJOg1WBs7QQyDPj33/9zNMdH5eTUZKU2PtaiLs9FMobiImCXE/S99583XuyPY5uO1BWzqk0cWLZOjGMX8murl6TWlFsSYX+Po2s7zFVTzrn8PJiALG2/XU5UaxlWqjDAYFDoJ0ht5l9Iki5RvU4SqWqSmMtGTh9tjp21af62r93G+pEqup9SEZK6FxhrmJ2b49EDjzK9oUYQCEa2CcbHJ9iwdTPbTzmZ7aedxNptm6VcPRlRZROK01C8Bkmr59lohb3LC7kLxN8Bh8KYtJLAdOiw9RBZ1zjhyEye002Ep5el7D64k6nNG2hLg1ojqFbr+A0TvPW3fpmxsTG5ds1UODU+OUa9ehJano3mTAQTSBSwG8s9KL5kZnr7tJEZUaUkv+80hBAsLCzQybroVshZZ53FCy48R17+khevHn3RtpekTX5RCrY5GClGpMhXzRKLx2KFQABeeDyu+L4EIRCoYkHjcMXvebF0dePxxWkIHD7w3gdSyNMlnKaFfAsz/QV09aHGtjV/c872NZ8+55Uv3sOB1Ozf8QAHHt7LzV+5mYfufIB2u01gFD4zNKo1CAKklMzPzHPhSy7nyjVTrN26iU2nbmNkzSrCrROagI3ApUh+CMHpCFYhCREodH5iUpLhxX9SggfCUF1Hxrz3nk6nw7yepyHKnN+Tod/vMzExwWmnnQZ9VFCPzvBCNrrpAvWwfvyJu14HEBIptJZnYmlu3bp1vtVqEccxSgVUAo2IU7TWGDJWr17Nj/7yT3HWWachN43nkZRGohhB8mLgzTgup+8mjEsiF2khIi1UKLxEXZRBP8H8hPPut5tR+ElS2lmWEccxC2IBrSsEQZ7j7hzYR6NZZWpqil/4hV+gdfomKpvW5LspDQJCLgIuAd6OYxSYwCIxTqIkGIPJMkAaXY9S3ah9BsfbyWwMqiS/E8/5WbyQ4B1WOiwaKyFTMJ8sMC8SRret4vJXv1hc/YZrdOuk1Vcj3Q+nWffVsajXLFZbLMI5IbwjEBIpZZFjE3kSGch5zS/ZYPRYlS1urhT/cvIrcj1LaHCQ8/FYHE547zUbquPABTjOdcb8jkR/le3h767dfNa31vbOci967VW87z//Pjvv3IFAomWADCT9fkY/jhl7wTre8As/QvOsrflYUmgcZxPyLpOl1+hITyCEQgjhBcJCnhPKP3oJqu/6ayuyXut0uj+zylT/0GJcra4ZqdcR3QS8wjqJFfklsPL5XV+2krCBgJphdMM4BN6hOSvDuZhMKzJCAsAhihDo8bOzI+31yGojIpVQlXLt5NYNj9mGpht3kVYQhTWyfky9XqcT9zniOmw9eRvyRePYGgJYZ519p/f+R4AJKWUgxWDgRUWMaQErrHcoIRp1qAgh/jizdITkM74WmFqjSig0lahCL+2ROk+tGhIGgtmZGUa3TRKeuQbqSASrveY3Z0V6NbBZ45UCKQGNKAIGW4QBAc7bAFBIcwlSn43z3/yub9X/W4/8Dh48yPkvvYTve+u14qSXvahOk58hya5D2XPCWlXHIBVKKBRKFqUcA1ItiGpZltrnu2lFWIlXnsE4E8W/pZltX5CiY7EURiJRqPxHjAclcl7TehzL6/G8BslHCfhhRgM3NzfH9PQ061urkVIOd+iklPT7HZrNomygnQY0wx8k5NcQnCSl1Egp8B5nLU6ClxIxpGYhXD7+lICRRqN+bZDw15VKZa/3nm63S+N7q7Tz6T8QWjPTnkfV61AR1TiOg1ihWmHLD1YBx0lI57uu4JWQoZSYWq1GHMc0R9YgDIRo4k6XIAgQiSBNUyqVCmRgnb9cSvFRJdUkS0IpR16S5YvVjwQUCiFUMS6ddrhxpfij1PAlIUTbe09mMuo1BVn+e1mWEVUUcRwTtloQIoj9OBXxXuBKjW7m+4quKOTywyfAYlFojDcEQot8OWWnUPpHSJLbn2908pw820qlwmynA1pRGxlltj3Hvvk8B3blD76Ct/70O2Tj9Ilxl9j/LEP5Sh+orT2fyEAI2YqHBWyLuZjB4lfkC5LB/w8iH0IoSIPQ2uXbeOKJczvH+twGBjuYAiWgpZBIFTpeAUxgOJyohKAWIIRF+oAkS4lqdXq9HgfcAn5VFaERTIYv8dL9GsqdmmGl0AJHghJ5J4kEbJEVteSfeyyhDIUnVcqHZ5AxKtN0b9VCJAza5hcj9Xn+1Bann6qS+AACIWnVGsw8/CjjzU39yppWT+jEWtB9GxOqOoJjL/Bs36J06AUa75l1CdO9+Q4+yYh0QJamZFlKtV6n3VtAVSRxnJBIQ1ClEkvxbmASUMNJGxBolGDJa7vFOMsPx6FGsk6EvFkI/5cuTWjWRjC9mIpUCOMJdQWfFLWiwuRBbIN3J9JeKRCtlkUsDt4iKy7zTxWaBLAiyEMKgdD1KPSGM3yrOlqB6efTvX5OZrn7/T5RFFGr1bDWsrCwwNjYGG9605v4yf/0S7Jx8sQ6HH8olboOJbYBstvtysQmT0hXz4VUJdAEXvY0fqcG/Dvg5Gd4nwpa5w0lpT11eO/ZtWsXjz76KIxWFbCr3+8LwEcqOn7KplrFWSss1gaCfTJg+q677sI5x8LCwvF+/WTgRSf4XNaLv/NUsRV4KdB6hs+OAE5fzAOVkd8JoZtlNMcazCc9Hj2wn3CyzuWvvYJX/ccfkEyyHcl/SrP0tWpEjyGcsCBqjSYBwXGHzdKFi1x2B4vPjtPhcLw7LIsILBlkZYpZ2kuhIyneguT/Ql5fJ5b93XyBYYTGSAgEo0iucTKfpF0xyvTSEerJ85dFp8twpga8VQhHgKGjbTF5O73sOjix+H68cM/l+fBZw2ilwYZgNXvvf5QXzmGY4FORkdcoaFjn0VKgkItRV3Ez5OCmZAqpm0610zgK1fvZ7/rT9+xmezjFZHWEJEkwErx0WOdIlSNVnkRbGpYfbRkaRcbl8RSz7KNcdqv84rdF6OwPhs79qnIO5STeiWKJLJBeIbxemqPcjPAne6wY5POWvbaQg1wPQuRVVNJBIIuhZhEkCIwcI2KmjPxWYPbVWudFvL0eV155JW95y1sko/Jk5s2vkXFtWAvHpJAiyRIRmzjPuT23IYAznsbsej4UD8KJ4cIynnvq6HTynOvXvvY1Hrz16wA3VBuN/ZnJbCCDpzZ4wdbq4c1K8cWv33ij27FjB1EU0e/3n8o9X4mBHD6Nn/2JFeCBFmCeb/f6OUl+qlrjcG+BBRnzwmsu4Jq3vU6IM1obje//ImvldbbpmqkyMiYRxnoaukqVCBLHrGB4LAhoC+gJiAWkYjGCEg6ELY4MVHEYnvwYRHPuGIfIJCKTREg0ElEcRdp4NUXXivR5JKacACS+OCITEJgQDCMYQukkaslfGvxcTqeqmKmXhgA6P5B4gUByMFWSVCpSBZmSZFIOd3cFLt8UKrs8ABgxVcbSCofu3c3DX78XHmvvJZXvr9kg1qn32mtEEQkNj0EODgdCuexgcj8x7+UIu2/9yBdRu+dZR51aN4/ErJBkCrohJNrhhUM7A47THjeg/FHLDV/kq4txOBiXWXF4QHo77oTFCXDC4chf0wqZV04IjRVyMG7WDwJXD/QU9DTEGlINVhVH8ZoS0M7mUV/eHAIJhtiFJfmtAGq1GgcOHGB8fJw3v/nNjJ2xeZzY/oy19o3OuUY/6cvMZygU1Up1uEaIoui5fK0HtQJPNdVw2grlL1eXlPb0xl69XqdarfKNb3yDT3zkIyabmfs/Igi+nGVZdpxfdzh2BhPRH/YO9D771+//kLvjjjsYGxvDWru4i//kEduznbPesgJ/IwKed1XOz8mc31yaYJXi4pddwdbLLoiQvDkW3berVqU1T0eJSBAS4vEoJEk7QTlFUA0ZE+YYOZLFwwNOLlZLoRYn12PS59EdEMeKksxiqkSpxTWMWqySMdKDXDabKyhm52qq84LGfFoXixXYsiD5QbGOHER3i+9jyZrJqPwcK4qFREkSBYnO8zX4xV3eQW9vaPMT6n+PV8IkRzrUajVGVJPd9z7Mge4RxjZMHr7yB171G0FUX4PlhTAoKV8SPggS4A4MP4vj9n/+5Bfs5//646zqCdZGdZjLMLKNGgvzmlUNad5ThMAR5TcwsqFZ9oflMVJ/6kk6cjLtlB/UcAqJlxJTqBYJnwscDCM/ISOPHQSU1LIneMFBjnKQy9YOhUJGEEQgAme8sYt585L8njkOHjzImk1reM1rXiNo8CK70H5XZW1jPCVTUUFPBkNqMmqqSqVefa73Fg4WL3cU4/mpnG1jhV67QomnjGq1ihACrTUVXWGh3eb973+/v+Ox++/6sR/7sYsbk5OrgNcWudRTgUeBe4GPAI/u3b0v+9v3/g1fveEGRmTE1NQqzLRh8/r1PPzww08zHfesYCVOKABWlZHfCqDd6nLp615OdNG6Vqyyn6uMNLfinApjCMMqeIjzFiAcEAtHRdpllOKFx0pJgiXFogmLt2vRqFwxxgID8U+R72b15OK8OzhU/mMI4xDS51+VdnkI6Fx+RFUwhp7yZOTFrg6HxnfHZXATLrEEAicdaRYTaEUQaBAgnaWnPWgDOgzRgE7xQuKLrgIK/Uzhl4YCDlW8eUOQT9YWtM8j0aqBihNoC1opstSRiXxTSQqNSC3K5irPGfmDb60dSiQ55wjDkPn5eWq1J2/sT1A4mReLLw2YJQ7pQTmHz8xwU8srSUZ+PkIIRpP89ayQECgy70isR2pFGORac3m3jkQjUNbn96UoVM9UkOsgqnzvwZLr4kk80kMtCvOC8kATZykLWUoiPbpWyX/OLlCpVJBBlbW6Savb49Adh3js7q/zvz+4y77y+153YMNpJ/3lxLmn/SWr82nM7U146Ft3cPiuB7n/H28n3b+fc2sj2FpIe9Rj1zZwMzO41c18xZFlEIQECGTfUO/DXF2yRiHUU30kxbFnWSMCgVcoB6F1eJ+hZVG8LzKQWd68mf8NKZwilAohwAeLueClq5ultY3Ca7QocsQWyKQVVtqS/FYA69at44orrpCEnFcJg5dnaaoDrQXBU9ptAyEK7bwQhSJE4Ypo0ZkMqaoEAi8VGAPeeyGVYCDS7MhlDoTNWyWEKCpgdFEg7Y56PcgbgaTMP9faK5wYEJ/F9kP0TiR/Si1CSkmtVmOiMoGPPe35PlKFKKW+E/lYtfzyPH69vlSd2phcH84Yg7WWOI6HubCJiQmOl/ZyIsAKcAOxWDGoOc8X7c654TWz1mJdrl4z0DkkyUValVJ4WWwMFT/vXK5n573HO491DuGKIuDiPQRBkJOvGIjV5rL+g0luZmYG7z1BJSKsVhgdHSVV0M2SXGrMGPr9Pgv9lNHRUcbHxxkbGyOenqfb7fK+972PYKxJMlEdWgI453DzbdThNmeoLbRaLVobJ+hKx750jtnZWVqmml97rZ4BpX3Hc9ErwSMbSvJbAazfvoFtF5yjkPyaF4wkNhMajwiCY9+qIiBDyDynJySavBPSG4EUwtNxHlVNSJllLruV/bNfSfbs//rDDz983+7duzuzs7NmpKu9lBKpczkhXQ2IWg1qYw2pm7XKC1999SpC9UKq+koqXEzABjRjiEJIqp8nIqNQGi0g0HJWS/1w6PkpDIfpQ/vIPLOHZ2mO1Al9gA4kYRTS7veOXvY+g4Hpj/61OjiEH9T65QrZqlCgHuzwOiTeC7J6AEFAluVisS7Ii85t1suJ63i7K1lOOikOIzymCB+UEHkkogOUUMjiHDNjSKxBGodyjnYxwSkEARJtBdpYhPMEIhkSuPUepwRCSWwgsUWhnZ07gpQSp4qIXoGWEqkkoVTUJ1soB1lmsGlC3O6gpWREB0xFdWpB3p4WxwtkMz3a8QxjY2NUuo7IBzRqExgnmZtJSdMUJQS1sMKkbeJHGljv6Pf7tNspHZvSDz1WWMbGJ+l2Eoz3KO/x3uG9RFkIjKJiWMky4WebRC3QL8lvBXDGGWdAhTNsz54qR5QKgiDXiExT5HGkc5y1CKXQMn9r/biPdJpKFBkCeSDbc+jvd9x2919/7V+/8uCub9+fLUzP+0FvrbWW2lxh8iMhIxdWIAoIGpGT9Urv4P/7B7tr4yO7p7Zu+Mctp58iTj379GjbmadFG7ZtemFU1xNoXo8kRnAS8EUtOQx83Frafj42OqhQr+eq0lJKXObQOo8Ge73edyLyW359nBv+6UGvqBT5RopzDudy1elutzvc+QzDEO89SZIQHCf61l7lEReOQU2IEAIlBNoLbGbyglmZqxUHMo8UrXekaYoP8ufW+TwNL1xe2DOI7MIwzJen3mOEx+HzKNU7nHNMtnK9woGsf1akA4QQeO+Zn5+nogKU0lSrVYz1+fK+sCFot9uFDUKLIAg4cuQIWmu0tkRRRC+NUZGmUYny5TOFAEvsMMbQKGTq+9pSCSS1sRr9fh/vPEeOHGF0YvLfYqpUljm/FcILL7tI4DnFabnWAiII87Wmd8e88oNZMxGWoMh7KSQ1BEgFPfaxa/41f/Xu//nA4QceM/se2uNFYhkJG4y01lCpVNDVCnJ1Zeh8lmUZSZIvhcAhY8ka3yQ7kNF/7AAP37DPPxrdHLdarbg1OnJDpVnn+378jdevPmkzbBpHhQg1aL6NgKgCsxBaTV1VqYQRmcvoxV208+goKPbTBhHbM5nyMwQ6X6sjQDLhRN7BIbzM6wq9InJ5WydSYAWk0qIyx+oUgkAx3U1w7T5htYoumvWbAP0nX/bO6ZhUeox3GC/xUiB8gBKgCdAKXOJQiacahARBRCgDrMt3EztFIbEyBmk8AY4qmqAgsbTXzXcrI4fVkjTwZFpgtEAIxe6ZfbkYrLCkzpC6nAS9zHc5K7WQeK6HTD0bJtZjspjV1UkqBrI4ob5qggPzM/QSSehDFlSKlQnCtpFxN8+TWkOviHCF9wQWwiT33Tjg5sgqGh1pemmCT7okWcJa62lONnA4tHN4p/AeApcfoeV5polSRn7fEaw+7SSAnw4qQib4QqlEIJ9Czi+QAdZb8B4lQwgUZHizb/ZDX7j+H+7/yle+YsdFnfXr17O+tZpqENLrJnQ6HeI4pt2ZR2tNUOjrOVeoafj8IRofH8/zQiYmSRISa+h2u3R6XZwSvOMd7yCaHGHTyVs599KL/IUvvYzTzzwzr3vp55SmlGJ2dhaVShrVPFKw1hb+Gp2Vjvwel4iWUiIlhSzrorObtZYHd+9ky7otaK3p9/u5lHkR8YVheNycXz9ISKXHCbBC4QRIESKFR/uAzWvXE7djTDcuIk1XnI/ED8oxhtabDinyhkFR/KxzjiAI0FqSeUu322Uu6dG1Kc45RnVAtVplZGSE1vgoo5MTjI2N0RwdoVqtUq9Umdl3hKwdozPFTf96A71ej1pQRSlFmqYsLCwQ1Mbo9/ukaUq73aZR5BsXFhYQQtAp9DMkEDqBigsF7qrDGIg7uQK3krXc2+Wx/ayeWn+s+fv5DgFUS/JbCTSJ0KzPBDLLtfIInM99AortQ3FUlmsxuy+QQuGsXWzFyHC77n7wTz95/aftpvUnoXueNIVdR2ZJE4u1gqBepzXRopL28p3gYpmlfD7DD2SvZqbz2V+FFVr1Jl4KrLWk1mCM4WWnXUEvTTi8c5bPf/t6Pv2XH+OMM87gVa+6hosvvQwaI0yGY8yMTOAzgdCKqKrpxX2yXi9vFMrxjCq2FQ5Bli8lRYQUrBl+z+UKzkoKrAcj8t1QIQSJtKQqY9Wvfx/nXHopo6OjQ6IxxgwNddLj+M5OpDk5WinBqyLs1WgrqGSa9/zR/8ArjQ8DtFFEXg5NqQAqSa7aJVA44TASujLDOEPf9qAKbTvHQrdDzxuakyOcdPZZXHDhhWLL6afo7RefXUOzDcWpSC5doujzSTw7ceymgyMADsFdv/AY++95hNTlu8zz9GhesJk3/viPoEbqJCIjTVMaNs+PWptvyPQrOWELFMI66gPyo5cve70lDEMqtToH9h/mC7/7F/SICVQFY/MavEHPthPg0E/U0ft8gSfv9SjJ74SR4glZn6YWWcln/izroaPjtz1mJkPr/EEd9qMZXLvdPrh3715G1p2M8oIwjKhEDbzLhURTyMsojMEYO3wYtSqEUIsWskqlUnhs5G5xThREqSRBEJAkCWmW67NtHN1ILFP27dvHe9/7Xv7ivX/GBWedw+77H2Gs1aI71yOOY6Iwjw6SJPnOT9FFZCXE8h3gAQFdffXVnH/x2aCokrGNgF8AXoDlTAyeiErxzA7qFV2xVj8I7KLHh4BvoNhJvpLNE4smfzwOHTpElEqqKCIVorzMXcuK3VhjTFGCszwiTdKEXtpj9vAsZ5x/Ni+95mWcd/klUmxdV6XBJuAaJK9E8gIELQQRAzm6vC78J4D7EHwOwX8FuoCfnZ2l3W7Takyitaa70GXj6ChnX3h+LiwVFo+2QZEh0YwBGYpxHAt4QiDGkCEwKBIGko+5FhVTDx7i01kG1hNU/82WXaqS/FYmLb8BJXWglegTI5HUogoYW2jLymNe9UAH+YzqXK6vkj+iwlrvpdQY46jpKsoq+p0+IAhUBekFvX5M2MjIZB69VIMIHUS4JKOb9MHks7mQIve8KHI+SxGlmgid57z6nqoQjLgApxp47zm86yA6g/5CTKVSya0xky4ISRQF5A2Tz3zZOxRiFWKwAz7uBJgi/FEI4m4POdbApAlpLf/Z6bk5Nmxcw1mXnCwyla1TSr1fhvLSY+w6y6M+RuQx6/YkdC9NbLIzUtVPAf8169OuGZwM4fZ/uo3ZbpvV4QhK5nVoUgpCJCmOSGomx8Y4dOgQXRKiVQ2mTZcd+3fR2rSKi17+Yn7j371VVsbr9cZY60wi3ojgpRi246giCZLqYGHgijW/w4LMt1n0CySs1aNM1jzvFFPEbW1wdZ2X5zhL0JDsmX0YxvN3bgIawA8I639OCXFSQaoyLlS0i1Wsj4DQY7AkeO5G8F7gwzgSMV6jGxiaukIifd59U1RFIcHIvJe2IZ+3kjqe56GF0XOT/ALZHpzb0x0P1lmU1AgpFuMTnXfuJEnS1VqjvMpVYLzAOV9EPoXdZSiGmx29Xg9ru0jrqVQqNAsfhjxPluelZBFCGZ/v9oWFdNCAgAabJ1LIReXnIsc1OPIflkeXkqzUTLpsUCqlECLfucy6C0RRY1jI/LrXvQ4hxKQQ4v8KIS6i8Kgd5AWX1gMea9fP4wOl1CmpNW/RSgP8tqwQ+2n453/+Z7TWuYexkngR0u/3yXoxKgyoRxUeeeQR1q1bh/YxDz22GzlW4brrruPKa6+Rmy88Yx0RF1LhXShOJveXyNfWcihn/WR5KYAp4JXA64CPHuf9VICbyPusA45dQjL4elAcFwPnAG8vXqfLv208LyUxnpvkp9iIyLN7CkGuS+Fz7QnP43J+Djmcg5PhKPV5/k8BIXJszfi520/e8lXX65MlCdpp6i5COYFzi4W1j3VnkVISBhFBGOKtw6cGJRzCxITCI63HuTxXNlgOWzzWCFyx9SwkBEIM/UwHPbjCgPcahUC4opTD5+f7RAXIz3gYDnTYoOmExKNxApIkI6oEJGkXrx1p4Ng/d4DRrROc8/0vD1JtfwfpL0D4YFHrL/cyWS7rfyym9UIgpCdZV3X6HG/8yVhx19z9j7HjX29hczhGy4c0vIZMgNVErQmMd8wfmaM2VWVHeyeH23OMbV/DNW/9PvnyH3htXW+ovTnVvDrJhTcrQOhwQuNEUPiPLh3QqhgPAw+WPJ7OBAjv0euE5TUYrq8Yb0Uqacq8Qcd6g0ptvkx3vE7AaeACRFa0rjoGk3K+pi8KnRGkAqSWg9esgrpCO16SKf9Zjyx8aTRL1Z9soaadBOb5nPN7XuK5GWY79mLAOLNsKcfxI49hfZ91liVcIk4+9dQ/uu6668KFhQXm5/NqfSEElUol7ywolsqDvFO/3yeO42GbF0VOcGlUN8hHDfODWg93JI91WGuX5dicc8s+/w5gWSIxSRKq1epQt67dbtPtdrnyyisFayrbpJTXSSGjRS5dNHF6amGmBRCBCgRwrlBCkiJuueWWwr1MYYwhTVOyLBtGnYPr3+v1qFarXHXVVfzKr/xK+Mofe9N2var2Pp/wa5n1rzG4hsFFBiM8Ho1+uquDolWfVzyFTaW3HyfieyrBxe+WNFNGfk8v9hN5++lgBhfODlZh4BdZ+2i6CItxmrhcdtZ5kBVgc/3cS970ij+8+9H7fvPIw/u7hx95jINzD6NiQUVVqNVqNKo1VnUlSgV5z6sQWEReLGsdibPEaYwINCIIcBIym3cxOCmR0hPGntDm5Ki9QPpB0a4toiiJ8LnShi2WlLpQbDFuBSI/l++yDhSpPdRNUXLigUqtRrffR0UhNvQcOHCQtWdu5Yrve5mmxm8qgklxtMHTkmXv8Za+kTMIYQm8lvRZwNNK7z/ENz71RdapJmM2xMUJEkGlEtKTGYe688hIIdaN8PXpb/N9b7iOa9/6lnrr1LUvQfO7SdLdagNaWoXFGxwMElVEUZoUhzASqYuuFZ83fosiygrlskEjcDSwBAMdQ120ZkuvUU4NpLUv9UWx5NDXuEgihArCYUe1HnbKGLE4IpUH4dkWGoF2gshJIilRRuKsLNr0JMp5lCvJqCQ/AGunkWpBCFEZqr17/5RTC96zmEsDktgSBSqsrR9/17v+83/+sfl7dt5w59due99D37r/q/sf29tZmF6wvV6P7kKbcC73Dwl0VPSmSsIwJKrUcmOldgcpityZUigliygz3wGuKj1MPUkvFoljSfSqlBrqni/NCz6FnNozwbK2kUqlwr59+2htXs3e2WmEELziFa8QYydvvADHFcfKNT7V89NSk2QJgdIeSYRl17333uvvu+8+to2tJ01TxppNfJbnSKu1KqoScmR+mpn2LK+57jVcc801I62T1r4Nw8+7OF4TNSuRDwRt1xOqKIL2Qw9mCplXgVKF/qfPF7f5cPFLSHzZ6iF8Ckn6+gpc/2YROZZSsSX5HR+m0zW60drhbbZKDHYUPLnSgFeFd8VRI7cYXiIr7A2Ew6NIBMSRxSqFDxBRTTVb60957RUvO+WaKzwxMV9fWOjcdeTIkb+cnZ09eGDHoZn+TNc/9thj/sDDjzJ/cIZsoUvWnsHOpGxdux4fg11IqXhJXUeEKkS5fBl8sJ7SVxB4kVfw+/zrAjFc3j4RsWjEyigpewGFUnSuGk0zV4XJc05xmhBWIpI0ppN0Ofu8s7n4ykvGaPL9WNYLp5Yt8pZ5jTyV85MOrQNEnii8KXtsZuHWr30N7xyhrtJrd6mMNWknMXEao0cUPZfRbkqCqfVc+as/1Fh78uaf8YJ3AhMCpfO9aktLSiATefucyLskEHkBgBB4AXGRzIkQBGJJoChcrm9HXkwd6FwAJ9a5zmEsJM5B10eoIIIA5TV6sFMhVUAV0EvXGl7mFvdL9jq1HpBv4fNhkRUjfWQgchBJgTICaws+thA6CGxJjyX5Ae12246tan7COHORDnQkEEWJizj+AFmiACKLzYaKCocrlsxAvglJgCcg4GWtVY2rWqsa/5FsS5/zmCHjm3j+FfgXLHvZR/fhW75p77/9Hu7+xu30si7tuQXi1NKsNQkaTcIwypfJto8QAucFwoM7yup1kOOj6CV1zhVS43mx9HcAyyzDOp0OGzdu5P4DD1OtV7n88suDic0bzwTegfPqRHvijTMoqcD5lNTe/uCDD3a/9a1vUa/XCYKA0YkJsjRXjJmYmKCjPHt27+LUF5zBu37nN4LWKRP/Hvg5Y5h0PpVRUGwoFb7GgwhUIUHpofGTe7ygw/HQ5clbsgQrIxAgysivJL+njN1fesiPrV3/hXrY+OX5TrI2akRiXvbRKAKZ5VrfXqJ97imfAm2Ra+IFIYV/bb48igbrOD9MFC0qwMjhLmyujBTQEDZpiJrYJKR8g0V7C86tYn7tWec9st6e9/5r3NtumNsz8+AD37wju+1LN/t7bv0m9z62k5oOmayPMzm6Ctt3ecdG4nBhSDWo470gjuPcqFqK3HTcOaSOcFLScxlZtALPmpRgPV2fL7WbitGxVLJ2f8zoelDNBnNHDnO3PciLXn2NOOltL5vI1vA/g07coBaJPPHF0N/YHLWXoAfZh6PcywYfUynyoCmWh9jd/vCRz93tKo+khNEU2tbpxAlYz1i1hfQZC7MHqK0TbHzFSWLsJROX4nknMKkUclFnU6OexDZyqdZcw6d5FAjEwmB17nnrEWR4KkgCcGQ8gMeHST4RhcohlKASe0Q/A0UgJFRxSBzaFHWDuvBHKV5YF/OV14u7y0IInHB4K1BK0pfG93xGLQKJzUUXtBxOgqnMxbuHUjclvnfJ7+tf/zovfNUVu1gjv1qvR99vINBoUlKCZ/eUB8/VuBCMAX/iPfPj68a/efGal/7viy976Y39B3fPfvsrX3Nf+Zcv8eCdO5g9PMe6yfWMjY3hEjfsD3Uu3y0Onoom4QmFXgZ0SJhzIGmHjnOOSlTJNfK8Z//+/Ww5dwsXX3xxde3a1m8h2O6NCUWlcsIBSkBA3/RNhfrN+3fs2P/Vr34V7z2jo6O0220UgonRMeYPHaTRCuj3+2w8ZRPXXHNNA/h1YBMnUIUw6EMWSqGFBjwZFokmICB1zic9a0dE8HH6WKXUsI3vqL7lkohK8nv2sfehh9lz1/3pxuYZ79URV6JYFWeprAUhwUBh1rlhg2QoJIFcdLTyT2PNMviZRSsGVSxJBUosqekSXjglVBAyTsZVwMWs4pbq+Oa/uuSMzZ/b8vLz2wceftT904c+xSP37eTBXbvZsGYTE5Pj9Bf6kBpWjU7S63Tz7Q+/mE+TRSQrXMCJt0h6MA4RSrQAEdLKKl7OB4mz6Qxaa+IGXPTyy/W5l553lRW8DmhJ6QtLO7nM72TpNVRLcqtLLtiyjxWk11m1y8He/7jpSzdlDz2wk42rt1LVEX3fRYch3aRLLGOEcySB5dwrLhEbzt12NYpLj1uqfIz7NxzQlerQMyD3ORZoQkweqvqKlE4JOYfk+kGKNE4TutWMTr+D1VBoFkQlPfzbxnOyzu/w4cPcdNNNHss38HzeOTIp5bOXM3mCXc18V3bIL8rHvkmfqzD8L+r8zdpzTrrsRa+7qvWrv/Vb4k1vehNr167l8OHDHDx4cFgr+Gz07qIUbsnrSInx3odSSqrVKgcOHODcc88V11xzzcapDa13pxlrrUeI48jTP/XIK/M6kjfcceut999www1+dHSUkZER5ubmqFarNJtNDh06xOjoKFmWsW7dOq6++mqF423IE99ddTist2Q2IzXpoO4QicR7bJK4w8b4/45nL4ph1KeUotFolJFfSX7fXZiD89x74+20d+zrcdi+J0zZ3VJVl7Z7Q9eyvP/D5xp/hQevLnaB1ZIckBws5I4OBY8VGooi+eLz18j/5XX8UkDqPSYE2xSYMZQZYbwb2Ve0g+yj7Ur2Ts4dP/+lv/TD6m2//bNi/UWnsNccYdrPk9Y8C7aDURleDExZJcJphNNInx8nDO+RYa5n6DzEzgYLQf/M2ZajO6lxG5vivO+/amziRRt/D83pQYAWgrwozcT5WkAuXpvF67nETFY6fHFYkR+G/IhcsMBu85df+dSXOkceOcT6iXXITJJ1+7lPCBBUQqgFzIoOW889jeoL1m9ObP/FrEBvqyBEioiKqlKlRtiT6AwfpiTVmL21VP6GVuI9xNhcksHhhWK22yV2xbaJL1bwJUrye7YxNTXF3r17+fCHP+yJ1F1o3m+MW1DqWbbV9sv9J0QRAR51EiIKVVipBJOVSvCbZPwuAT9z9ksur/3SL/2SeOMb34gQgv379z87vsJ2IP4AaWqoVhXVavVH2+02+/btE+94xzsqp7/8qp8k5NXe585uxtlhmHj8S1L0Qj/xP4vixlu/+tV/vfPOO/3IyEgu/9TvMzIygrWW6elp1q5dy/T0NMYYzj77bAGcFFWrjSw1J/z2M2vJrKXfT0jiGBEGDpgDbrPzyXVo/h7o0wc6MDk5yfj4OFEUUamURndlzu+7jE3hGHGvz9c//UWuuurKdNtLXvR+m3QvqK1pvg5HCE4MS+IFgFniW6ufNCd0rMXM4MtuiZ8tgHC5IdLQf1c4DB7rHV7IvEQFcHhlsXJkNHx5NtM/ozJSPbl18ab/9w0b37qnTd999bNfZPfsbtaMrAa32CYqAOEV0gmkW4GVVrFktyYmEAqpEbOu/bYj9fhnt5x31ujFP/r6a2nxS1RoLcSJULUgt3rLHIR62HW66BB3VOuBcMt6WsXwI155jrCz+/vf/MQNPXM4Y/OqTdh+3s/cbFTo9Xr00pgggv2dw4xtX8XWi84Al/yG1UpnPkEf7/49QYpzKaoUnsdC5Ru8PR5kzv+lPXjwg52ZzvznPvN5p5wi7vWoyxqHdj1GNp9Q0yEmXbbhoUp6KMnvWcejjz5Kc/0Ys+0e73nPe/jtk/7rzOjWNb8DnASc/d0cmN4XDU9CDsXqFqtolEjSTNZa1fV43kGbtXJN8w/e/os//+31rVX2ff/tPTn5PQsRq5CCIAyI+4bdu3c3Vq9enf7cz/3cNFU1QYyijoiiqFh8a1ZAizIFPnLXHXfcftddd/mB3aXvJQgh6HZzEdhWq0W/30dKyZYtWxg/dWsT21vlkSIKTjwydlm+KkfQTQ/MfuSGz3/xDz73ic/seuShh2wkIgIVknZz46GRsEUzqqK1ZmxsjDRNiZf7qJQoye/ZxVjYRKYBU6rF4R37+ej/90H/lp/8kfubZ677aQLeh+GM2Fsl63n9c4bFYNFo6gM3skJAQKhF2aiBpNST5huHZqZH7W4W+uMCkde6yVwMeEB8eTE/mFCIHggN9aDB64RgjEl+/YWvuOT2n6pq+/4/+XO2T23C9iw+NayemMImns5C97ieuE816wUW6XMtzU7WpbaqxbU//UN6/QWnrB7sYVo5SO0VkV1QCEIcHfb4xYgvf5+KzKSEOs+NqvyNOxz3cST5o+v/2wfjKTVKr15h/tAcdV2nHgaIzGKSFFUVzPfaUFeMbp6CNGmyqrodDJnPCIRelo/xR0fmhRiEVhpbKEwjBN7l3r3Sapih/c0v/NNvXv/Bj/zFYw/uiiejEc6ubETaQm6swXBTWViJCsF24jy36XNlZcoNjzLn992AUgprLSMjI4RhyJe+9CU+9KEP2QP3776NjB8lkjdX6lGsJD61KdbZx+XKpVIorZf1+D4rkeHiOkxYa0MMVwB/vOrk7ae8/FWvEtu3b+fw4cMopVi9enWuZ5dlVCqVlVF1WZLzc94x0hrhyiuv5IorroDoxK9FalJCHRKnMcY6bGo8iZtx3eS3PvOpT+3ft28fSZLQbDYZHx+nUqkMnfGW9gcLIWg2mxAElw7GoRTHP79Bl8fg/5dpDUoJhvRLH/vEb3/wgx/80wcffDAWQjAyMkKj0aDb7ZZPfInnNvmFjRo4j+g5NtanaMxLvvUPN/GJ//EhyyP9bzPDj9Lnb1Sf2YYIbV2GuXpyYnO1Z1sYYzuHzQzOLLEv5BhlvMU3BjrRj9sMFsUO8+APFEJsojiUlYRWkpEBBo9BVZXwoQsIuZAx/oiTRyau/fdvxoxq9nYP0hV92lkXFcBYo0nWWwEDrFCB0kiC3CYS2LBhDetP3ZTH+Xox3lfktot6+K7l0hK/5RdK5L3BXsm8ZFjViLxExTqlKz+y8K29X/rsH/+dHbMhVadQBhJjidOE1BpCKWhWKyg81htS5Wmum4SmfBEILfEES4aj49hmZoMJTUiZCxhYm+c6BZ7757/95Q99+n/tufl+e8GGszh/7RmIwxnhEce25lpqSUAtCYhMfoRWoNySusvFyK9ESX7fncjPe0+326VSqbB582YAbrzxRn7tV37FfvGTn91Fx/8yinemfXPv3Fy3n1nvq1GQu6RJmT8MUqK0Hmr05RaU3+FzR2GxwwhQSCmAgNRfTZ+fOv/VLw+uuOKK3Cxnfp4gCIY7qCtyflJCEWWFYZirnziLP7bz59PLkwhNYjK0Ird/C9nBfPyHH/7wh/v79u1jcnKSMAyHzm8D86NBNJ8Hp/nHqakpkFzm3NPTDATwRZS8VAcxS1Pz/j//83fPzc2ZjRs3orVmfn4e73Nv3jLyK/Gcz/kddH2kEtR1DTObEDjH1mASoRW3f/52xJ6279x3cP6yl13x4ckXnXTjREP/HD3egGQ9PlZeCiG0yiU2RB4hSCGWLSuPziUNcnv66J7Vpd9XR80X7qg/BjRQOO9IbYbRHikkSmtBXYRE/ASGz131pld98+4H7mfh0cOMjowSH+6CS4kqiiUeHs9s1Ss0sU2pRkERoTqcMejK8j2ixxUNFUvOx+X6lnxqkaTOEuoAlwHTrq0i+Z47/+HGvbd/8Iv+knVnoVKByxwoRRhqQpWrZZt2QpIkqFaAdwaHZWRqFQhWOevQNm8nGcjmiaMu8dJzE87n5HdUSmP+yMz+e2647asNG6GFZGHPDIHxjFVG0TLASoHxuU+xK97gQHfCi8XPVSlBUEZ+3y0YYwiCgEqlQpqmWGuHNXLnnXsehw4d4gMf+AB//Md/bP71Y596dOGhA79Kx/8AGR+gUpkWUWTRGqzFGpMnwxG52sizcVGFJNQhEonDDXpGBbAWw49vetGZ1e3bt9PtdhnsijrnVqTOzANRFOaViUVEGRbXbiUjX61xalQ+8vBX7/34P/zDP9iBInYcx/nqOwyHytaDntkoioYTkBCC0dFRgLFhxPoUZPzz3fblE5nMf9fv2bPnK1mWdXK/5fy6Tk5O4r3PvXeXd3CUKMnvuYekpkkCRWwsFRUxGTZpxAp/oEO4v8up1fW8cGQrnbsf4wO/9d/9b//wz6af/YM//8b8jfe+M1lYeCVp9pd49iNVppTyxlmMNU/OGIPDsGh5ObDmEvmnKbkm/OAwhfOWV/mBAJHZQiJmkDuUGGWIfYJVXlHjOqpsOuuCcwhbNQ7NHiasRblVoz9xSatBf3NOdg4lF+WLrc3yN+Xd4g8OkmvF+x92xxzFQ4Mf01Ix204QHps9mv7RJ//6YwuzDx7iRZMnw5E+VSGRSgCOLLX004TMGrSWVKs5CYcyF3Ot1mo4iwGZF1guijTzpNK1hYVAPqMIEBITJ/7hR3d/4MjeI34kajI1OkkWZ8zOzOc+wTJg/6FpjBQYKcikJJMSMzhEflgBsoz8ymXvd5UAkwTlJKEM8mjCeyYnJ+mZxchisj5JzdWZj9tcf/31/sOf+mjcunLbN88888w7Lr70kl8/44wzXh62Gq8PguBq692ox4cC8Z1NZxd+H2bg6as1gQwQSBRC+K5rCSF/9Iorrvj1mz/9r+7em27H1FYRx3HuNXyCcEWI6RzooIh0bV4KtFIdJvV6RLfL3N/81V/dftNNN9lT6uvodDrU63VimeRF4NYiREAQBARO4GKb30fN0LUuDEOMI5QDRdCncWuWlSzlbnvmyJEj905OTtLr9XA2pFarIQvF6DAMaTQatNN++dSXeO6S37qOGgalHk8WSqyQdIXFREXLpXOIRNGyAaO2ibYGbzwPfmIf3/zkAXN39JXZ0cnxj24+adNHTznnLHHqC06Tqzatb8iNrXUoLkZzOYoXoNiMoI7M/VjJEGTk/mDOYSsSLxwWVziYLUZHwuklSaPF9SA49FBu3Q5jMo9C1HxAX76CifDdq7au6em7K3RNwsjoWL4MPqr/+Cgt1KIj5KiodYn6ymDh7OQSpWutcvdOz+O3UOViZLtUTFjKQfTqGLT+KuvASyqp5F//z/VHbv/kPz28uTZGQ4TMxz1WNZvMiZxcAj9owvE4PHOhwEpBrCwdKfFOQurRCdPUmXLK5qmJ4ft0R+02559mwuVF2VGIsyCFgg5UK82OPuSnZSxQ1QAhAxKbIYK87tG5DOVTUPk91MMOHh6XCy13e0vye26u0+UiKS6t8Ro4rK1evTovNDEp8/Pz3HLLLXzpazf6VGQ2kX5+ct3kfFiv3teaGv3AqnVrWLtpnVi9fl00OTUx1Wg0XnXq5lN/CMELETQIpTTGYKVBaU3mMkJ5gv3uuQzxdqJo7dq1a3cqpfJIyMvhe3jOY6btv/GNbzy6d+9eO7nuVEzf0Go2mZmZgYmn/R7E0/th8cSJC0ccx7E5VhG7ECWjlXgekN+RWq6eKx1Iv9ynTQqJLIzGhfUo71CFYVFgYetcKyfIIi9kvCHzFuOz3Ozw0dw+MraH6GR7ucff6u9yLvbwKPC+DS8/4y9Gt68ZefFLr3zXtpe+6BejUDf6iUFpSVVW8NhlenEIn4dOYkkkhlwSUsglZ597CQNVIi7YevJJO60QWCHzpeJKtPYelcx1w1cuVpVqsDZefn6iGAyP66hgSafL4HebNU46+zR97y13ub5LaIYV6rqGw2J8nluVRc3cIH9m5WId3VE5tV3AaW7Ja6qnS34Cj2Vfp9Pxg0LqpV4pR39eosTzMvIzxgxLEWThg0FhLzmQih/kgQZPkggU1UoVEWp6cd5jKgvPjIHV4ODRuPHGG52/N5p9YOdDf/gW+bbpF1x90X+r1ipR4jOUWKHIzKEQvHLLli3/d1DfZ636Tvn2riycg0Dzhuuui/Z/+xH55eu/YNdsHKPT6RSRq3n2z0nk8lTtdntZB8hTaWcsUZLfc21xi8MhBFjhhgIuyoMzGX4wwHXebTDwv+06SbA6QkqJGpiKZ7lBts36iNhRr9fRXhCpcLkdY+GZ+9Kpcfa1D7HjC9/of7zH+9a0Vl02dcG2NwVeCRf5xdYxHEKaXPdPsFig9rjYyx7Fex4hPEKIMyurp7ASMuewwmPFSkQnA6P35XV7y3ZP5dK1ZpHTG25t62VvY1kusKjDk8IKtaa++cKXXT761X/58uGeSLHeocWif60o/HDl0uZnmddRCrks+tu71JfqqVDVQEhaiGEI7oA9vV5vGfkNor5lZFg+8yWOekKfNxjmyJY4eQ28b6WUzM/Ps7CwQLfbJUkSvPcEQUC1WqXRaJAkybJj0ImwsLDA/Pw8s7OzNJtNWq0Wd9xxh7nllltuI8FKKVekTlAgKOw4R6gw3OFVSj0vohStNCpSYBk7/9JLN1xxxRVidnYWay1hGD47wecw1ztkdIugkWXZMhEL/zTM1kuUkd9zAhM9Pdxxs9Ity/kJlRfOGp+7cRmZ95sanRNg2MoQ1pK5jDQzuUOah0AoQqFwocMJCUsINBAC73Niyw70mNQVWhtfwD2HH/Zze458i461REoPLC5YEtMNfD4GOTThg2NGK6DyHWMJGCJ8Tn7OgFABbiXnokEvWxGRisKbwy6J+AYxtlgaGvol0+KS6G9wFxIMkdIoQUWsqfzsy9/46p+87467zKMH97J9bBveOaRTSL+Y9xsQ1SDfd1TOzyEWS3SON73kG11L0hp2eL6POOdKoivxbzfyGwxsay1ZlpFl2bLOhYFKivcerfXQn2HwO4MIa9B5kKYpcRwPI8GNGzdy+PBhpqen6Xa7fnZ2FoTIUE+pAeH4nLT4RwwZw3N5viTlB2KjIkJhueiUqy/aeskllwz7Z7/T8E/UdwcOmXeKlMRX4nlNfvPtmFQK5kyCHmlBvYZq1uhmCXMzs/g4YyKosaW1mk3NCSZVg6gr8NMJ9SwgSCRhH2TfEyaSyAYEJkS6EOVDTCZIU7BWkaExIiDTVWxY54FdO1m7cQMjk+Mkzojx8XGoS00C1vpC0v7Y/55oocvwu0vUpz0zOOj3Elq1Jv1Ol0ifuG2E9W6RHrK8BeW+m77Nzm/eCymovNSN6Zl5BkoucT95fDvFUOVGFm16+WFxpHisRFDlZOD1577ismD8zI08ML0bUQnpxzGZd3m3xEBSvx8T6WBI8HKQRBRMHJPYnnDALs/pDZ02MnYPBDGGxvCD0LLQAHyaxChLenh6GamS/FYAxpi8Gr/d5u6772bHjh0YY5iammLdunXUajW63S779+9n//79dLtdwjBkYmKCKIqGfaWDKG/wQAyiRaUUtVqNWq2We7wWD4XWmnXr1tHtdrnvvvsYGxuT27dvvwaFIgSlTjyqkELiMzySe6YffWyoNuKcI01PWE05f6/e4dK00Lcz3HPPPXzhC1/AxxlZIdU+MT5GnOSvFwRBLgv1lEd54WQn0Gh++rRzz91y2WWXsbCwQJIktFqt4XW2hahsGIZH++KuNFol/5R43uf8wvM28cq3vYWH9j7K126/hfvvv5877D6SnTNsnVxD00jqlYiJWo1AKkwGvW6b3swsulLPHcyK2j9V5PYW5UIEqbVkxuMkZD7AkC+RrYg43Jjl0OxBZlsZb/131zYufcPVVxYi0VhnUEvq4pbOH0NPC3H0vOKWfZa7wuFx3LD34T0o46ipgBBxdGfBM2r0NVIiCFDW5K+Zap8eWLj/ps/88zdfe9FVF2669JyT6CFVDYQREEmELshPyMdtt4qjcnEpGRCRAWGIxLOBTZWfPOvVl/6n6J8+lcxMt2mtHsN023nfs/DDTac0SZ7IDXcDnKhVOgD7VngYfq+4t9kV+BsCCEvyW4mT0pqTrjmLk8KzeMmuK7njjjt4bNdD7Ljldvbt2InrW/pWUpMV6pUqUVgnDENkUMHJfGklitIVuaTMIa/7krmysPcoHVAJQhKbl8N0kj6P7r+T9VvWceWVV/KqV73qMsaCs0mdAInWGs+J1eJZY1Bax3S5edeuXcRxTG2yhio2Z1byGha7CMmGDRs+/sgjj/zdJz7xiWvfddk5P9Nv99ZVazVZqwVLyl8kab9PWK0fd9m5SOmAJwR+cNv27X977bXXfvtz//sTfuDRm8QJFamXKbmsCM09MaplLPO8J9GS/PZ3duWhRh2q59W4+LxLQFwSHNz9iizdPx3t27Erue+Wb8n7v3Wv27XvMdLYIcMArSLW2VGk88PlmRCCADkkvyiMUNIjlMCrhMRkdOI+cZqQecfp117C+Vddoi99yRWv1+vHf6/vkko0GuGlwzhDKOVicLTUZ/eoFl/xBJkFATiTeiX1fhaSPfd9604ir/E9Q0NVaPfay4K4Z3Lt0uL1Qq8QGZ623b91dN319Vg/+O0v3vr+/bc80Fl7wSm/S48W1cFmrMhDVh1glvj1DnZqB73MFhBFQGTxWClQVYTtuyk1VfvVK978mrd/+aM3xPv2H+akbduZ68wQNitgLKmzyCjAkXBUOeO6FUrftFd4GNaex0T0dGaYlahKF8/Hyec5SX5Kqfxp64NxCF3lNGB69abVf8Kq1b+/8cwz3n3R61/7H+jyWg63/2r+4T1jO3Y+dOjggSNix5e+5X2WqzbbNN8JTtKELMuw1rLQWcBaS+otBk+tURcbt24JXnTeuWtOOeP0S9e+7PR/z0T1XJqMoJAyk0gJiVuZzoUgiiwZHzm4f3/8wAMPMD4yQm+hx2SjsSI5MYEgxSCE9Gg8xjxird1VrVZNmqaH//7v//5jv3Dhb59NwNv7PRtUGvmCNkkSoig67pNgvEEXJkOZyXfPVSQ1hqsm168995JLLvnav1z/WZ9l2VDPT0tJlmVFbvF7ayyXkV9Jfk9vyu1M52dWQegq53dEfE2P9Oc9fr4ZVG4PYV57tYcJ1WdT870j556RnaPO0EB6Nc7bJJ2Oe73Z3kLnjl6n80h/oXNnv9dJTT+xcRyvmZqaOm3T1k2nj01NnUagxp3J6k54pYNAYAPRaxuU0qgIiAJiLH0T0wxry+fWQYPvUeojTxwBUhSpiUNkfOi2W251aT8mqo9QDTSmF1NVQc74OZ6Rh6IbeHJIIEOgotvpmvaorDNZm/C3f/nWA499fddfbLho26ukV+vxhe4pslBrXjxvJZa/EQWE3mPJkEKTYkAoAgUGN64r4p2vvvb1t9/9jTvjA7PTrB1bQ7LQRQVRLijjPX6gVLN4zUYfd52eWeSx0hj9Hon8VkLjSwCNkvxWAMaY/CnsJ02q0U9p9JsVNtDosTxbJ8cAjxC1Qd6pGP0VgSSIKhuqUbRhYnT87MUElVtMVFmbG7wO1kxa52KixbCpNTVeQmw8UudFKrVwRVZBKcb8A6l86OabbyaKItrtNqubG5l95PDRSsPPKAHYcz1qsuaLBY0nouW9d4Pi316v5z/zmc/c+eNn/cdPRuP8pAdlLURRQJZZCJ68YkFJRbffpVptEumIzFkCqRBCKBWKl7cu2HD6pk2bvrVz505O3XwK+4/MUtUhUua51ieoL1gp4kpWeBh+r5S6rFQSNi3JbwUwrsbzTMRE9OpYZNcJXGUCKTEWMinxCqQSuRNZLpscFDHLUlsNe7RMyOBjMPzP42I0pRefoYrOfSsGf3epo5gUAkTh8rskTzZQY86cBzRa6VynM8Zh2c28/O/3f/qWbPqGR5isjaC0ZsbGxGsrtAOPEBakBcEC4EUeKyGKPgsJeKGXichYcr1BgLVpBTyiXXVejEihLexsZURCMdKP2LbQpHbrwVTuyz5EM3hLWmEcleCyOcIg4nEVI0+w+ztSrQ+vRChz1WYlAfwoNfGzr/wPr/upzzz4L9k98zuYWtXELWSMphIhQClJHEl6AaRV8DUiLQxRwV22uJPD3t0lc8DwHohcG9ELnXfLCCQiixDpCrGeAcFU3nlSyFwPBTAWW0oU5EIPkN83QNjcW0Q4wAYgILAabSNUFhLqKtgUb3IhC50KqkbQSgZh94ltegkk2irrhCTRkm6g8V7S1fmGk04NWgV4KcF4cHnkJ3LXg6F+5NO8/gKRhc+3DfLn+ux2BVDnGG6Sz0kYA96jVUF8A46StEn5LyyYPR/72Mfo9/tUq1XCMCQMc9Xhubm5lcyhDK7VqUu/WK/X2bNnj7/tppvuJOXeAfuHQXjCO9mAIhSv3LBhw0kXX3wx8/Pzw29EUXSsIuOVuKeOld/wKHN1Ty96fN5JZD8nI792GAz8Zd/cI1ACJwwOrT2RkHmMVSiMJEv4WwKhkyvwHC3W62lx9NrgqDq/oxYNWeCQSDLnEMITCoHISJnnbwn59M2f/IK5/Us3c+bm7TTQpEkKSZ8oCBiVEQsCnNDIwsbNoYp8XM79rghf5bLZWC+xSh+ouUgECOVYFRiNtgHaBjSjGtPT09zw2S/3L3jjlX8VNLhIyCjAg/B5r/QJDqgpuXrsR655xat++64v35FlvZS6rRIIRRrHRKGkJgJqXhNmEjIkQoPPCwCtWpwtlr5TuyzVKgpVsKHWoEKo0ArNibvfSWIV4CSrjIAMjcQNswEJalnMUNdFnefA50UWHdoKhIJQQC9wIg6c72uHUo7UOVxQmDAJRzvyTFchN9w7wevvIbDeKu+Q3qG9wzuIbKGj6xzaOrTzRahHMuzhXqKu8zSvv0SossPjOwDx/LqgEo9HyXxZkyTOILkRwX+fuWf/wkc/+lHq9Tpr1qxhYWEhH1Des7CwQKvVOvFEdNHWNdQp8Evax4rvVSoV7rnnHt89GH8py5gG8FnGitibGBQhP3Tu+eevPfvss+l0OsN83zHqGFcq8ptf4Vv5vHuYn2G+uLdCr9cpI7+VIBAvByHNiJT5xOIKUvEyn57sEiUQgLDgcXOCdK7NUcaxxUdx1OdLpsjlz77QdPoxI9WAqsAuTHfurrQav5nsnt79F7/3x7776GFOm9yIm+2hO4bmWEAYhRzuxIhOTCMQyFRAmiffpJOgZK63t1ReeVCDJwd2wnKQjBx6eog8JVoLM4G0gtBIpIWGquHn23ztMzfse/lJ19xFnylEVZKK3Iz8RJ6CKkJKVlOv/vj53//y37nz3rtto2JQXRCtgNhnGOVIlMQqyDReyzzXBxCZJ762gwhcS3JZaFlch9xWT2Fko5Gc+FweWkk1lsiUMDT59ZVSItL8ZGrhUUXeZhBwS7RydJfkaJS0RYTkEBgCZ9HS4rwlK+J4L/KBnmmbayGeaEWVAKOskx4CC6F1eCcIyYVdpTNoZwlckcETeSI5JS9GqBjxTK6/xMjn3X7vcz3ye15abTWqFVyeGb+3tarxy4fuf+y2P/uzP3M333wzo6OjSCnpdDpMTk6SpilZllGtVo/u7Z39TkQwg37nRqPBZz/7WUPGXwEJgcKtgK9vIXkY4nn9hRdeOLV+/fqhtmIQBN/JyG/vc3Q4+Of4c7NnBc7RUO72rgzqmc1nFENa197nRRoO6T3C5nZjShUnP6gZKx5cEZzYW/L6idcPR48OUdS9+UKnDpGX0kSZBI+h679NKn6Tuf6Xv/D+j9ubPvIFThvdyISsYXsZkQoII83cQq6CLKMA4TULlT5ZxRJU9DZCsMrghcRgh9owathkxnCP2xb/FyiPQOExCDR4LwKfYpTBSwvOobVkPKqyc9dj/oFbd954yuXbD+PYSBSK5ARHhMAhhRdOcPLIltblF1x94cc+8xcf9aOyTqgCnMpy3xVSlAXvSAVUBlc4LUIMOWRttyznZAGrLIoAVeS4ECiUHe9E5oSDj1QZ4polqzDvNS7BSYmjFrqCVTx2SY61VvB5WoRsEYKguE8ykwCunnlaiaeuHXXvCDJHluU5P2cdtcwxFudWd4k+sclAA9KLJJMOJx1OuHy1JFzuayM8XuRfL0xyZi0CU+TyEn10ccRTuv4SZfvPt0zBcz3y+8Z3aeZ85rO8JSbhn6iJ/9g+Mv0vf/I//6f59Kc/zdjYGJOTk8t8JY4cOUIURdTr9Vxqf7myyv3P5L0vlXLyhdvj0u8N/IGdc2it+cpXvnIQz+eShcSsgFA1mcsQCKG1Con4sSuuuEIOPHqPsdu7Evc3A+5c4Xs5812IwlaqS2LH0/jZr67A6/Yod3tXBtOinZ+Z4M+dS67UUocSRBL3qQQVQJPIgXqeRYk8lwKgzBMywrAeiyfalHKu2PnyJBWd5xZZ7hQmCl8RWeyCGWcwmc1d43RQ2NPKGXp8kD5/cs/nv7Ln7//8r/1jDz7ChnCE8WqDoOtIY4/SGiskvlohlYLYp7hIklmLj3sEUgCsxjuUNYXvrltcJS7J+WllixtpitrGgJSECEU/bSNdmEplCUY0QnqEVBzuHqE+NULU8Txyx10Gz99G1egNeFaFIhVPHtk9eWASSQcuAQJJ5s5Zd9K66NwLz+jN3LqTfiehEkUE1qL7HTAGnaiH8O5spX3uIVz8/UXfXl/kmvL376yjqgLStIMOakXiV4JJgwg/tDPI06BPf26X1rA6DAkS9zBSxGHV1ZK0hxB5iFfTLo+eirhBGje8D15AZkSuNm4NUglPxqHMWFS9Qpw6bNotJP9HiIKATqeLrlfpOM+YJA1JT+iZFD70faHuRSqiRhMZhMSxIdOCfr/PeC1iem6aqFUlTjMqWuwAEls4TocDZe+jr78YqBPl3d2SDJtY0GF+/ZP+YRrPr6TfczLyazQa+Zl5vphl2W7j8hFWqVQKN22xpPCvEBF1rujccItHQWhFde0i8Q3IcPAzUubf05rUpcMlZK48tfhPIEhdWjyMmiiKCILA4X0Ha28hNT/MvPmtf3jPBx79gz/4A79r1y7WrFnDmjVriKKIfv/4k6OUEtIU4vjzGGMGOy1uaDDkn/goKDvO4kEE6bXWBqX29Ho9jhw5wpEjRwjDkGq1inOOOI7Zv3+/f+Tund/Euc+ZJDMDAYhjHsf5F3dyUsNaCMMxRhrVCy+8cLjTO9BVbDQaxTUXD+FyJYqs31+UoT/6KO72oHZySGzGeFIz59P0zpVQxcmyjF6vB1I+SiD6gIvCCLIsvy/iKPHaJecoEEVOtVCwcXiM/zLgnXNEUUSr1aJarRLHMXNzc0MPGe89OO4+7vU/zgFYIfi/aZoyNzdHt9sd6imOjIwghKBSqWBM3v9OxkNZxg7vvXPFKDrW+GLQC7l0rHrvSLLdODfL8wzPzcjPpxRl/vP1sPkW4E+E4yKs17ktG8RFwOawCGlpSZBSkQq5TBH46Egl8xlSSNRR+QmLxXlHQyyXJbPOIaxCFRJRFasKSRNnEbKL4Os4/swd6n3x8IGDC3//O3/h99yzizWixtqprbh+gp3t5cn+xOErIUZKUuXyYDS3GM6pzUKlPgJhFSJ1COETlAgAYZ1ESI0Q6ijdvYFdZK40WCdEoD0Wq61cwMsfbkZ1WuNjrGqtZ/5QLvxaQbG60qTdjdnzzfv7W87a/mfay/MR7vQTmRSDxigpecULIKtN/LZXXM7cx68nPtxharxJp9Oh2wpAZmQi+FO0epVQVEStTmLd0AFOLYk8bGH8IVQuw6V0odEoQ0/ITuEbvUq1ASyc0NiLKjV6GTjLgnRcb6x5u1ZaICOBlPhseSfRcKWhc99l6xVIkEp5a0lUVXym3wg4kHWJRUjdB4iKJJEeIQLqehSbzuNH63jBp6QIzj+hoMQyWxHsGA2atMUsSlcAmO93ARiNJLpSxSw4aiIEQ6+i+VRFitORVL1QhQ21OirrXUxeRdVFnjYJwWHQag9BcOT5Rn7Pychv7dq1JHNz2K7BGPdtY9ybsP5XnLWP4VkAnAYbSohk4EJClNJeCDkkvKWy8kvJUAv9OOLLKUShhcZYQ2YyMpORZsvycHkhgmQBza2E8vfIOG/6ob2v//zffPwTP//zPz//hje8wd9+++1IKZmcnMQ5N5zVwzAkiqLjJ096PZJ+HxS3Y8xdgHPe5So13ubnY/2Sw4K1WGexznqhtQMWMOafTK93Gdbf0263hw51SimUymsQK5UK7XabG2+80ZPwDYz5U+fcAeecH0i/H31Ya5/0cDgyn/nUpz626ZE0pTe1dR2nn3467XZ7GFn1ej289yRJ8i0hxBHAeIrOGJ0fYskx6JhxOFKTDqIcjzHzwN9gbbfXO/GStWazSbVaRUZkSP5Pr9d7AHDEsce54fkoLXMC1np4KK1RSmAM3nuy+fn4Lu/4rNaaWq3GyMgIWZYRhiFBEAyjtTiO6fV6tNvx/3HOdY917Z/C4eOu+RR9Zgdf01rn76dIByRJMvStySNsLI6/xbHDGGwxjopxZo8eX2Q2w1gz8M3xwH4cX8TTLSO/FcBDX32AD/3e+wlGIracutmfdtpp+1efdPL/J+v6f+E5FUmzFvCL5JJ9L0ZIjwlGAUQjT9sPVk9SLq/dHax4jVn0ddBaoQd2tWmQr99E/pwBbRw7ibmBPp9DcjcZC+6RQ/YrX/wqX/6nf2H3Q48SBSEvG7uQelhFJobugS6RE6yur8qXmL2MsFYjNgleyGERsnY+36EzxcpK1ZiLFasV3cwHH/BwFoK6DCNpyQM/lvjeOpG3Etg86Z+oQ3yZiI/i9ce1b/RIYVU0xVhlNVmmqYYj+QO30GM0qtLqR3QfOAyzGKb0Xxa9nb9KrrD8tGUIgg4+kFhfZQHBnyJICOCs867gMx/7Z4wN0EGTRqAQ9YhGwAyGdxHzHjyre7XFtlI1yOeRd15QfCq0xuROyz0n9O2h4OOpC30q6tRPsNZ554FZ5ElrmLcQaW71zfFf6cK769HI2WjCxCPwi/FQtbgPidcej4u69BU8gOWPx0XlH0mJfceQdVIOzuxlsrWGSCiyNCPppYRaMKVbnOKbqHplvxXcB5zH09869UBSifh/6OJG0oA9XUNXtqnVahhya9FGVCczksn6OELU8zcS8xAx12rJB5JR9WIG1aKevE3l8TsiXihM5tkfCG5Bcg+WrCS/FUClUuHWW29lz/RedF0RBAFTtZYPgsBcctmV90ysmWLyzJPetPXk7cHE+mZAxDakXAVcFwRsAs4nF6Ose49wDjlI7wXBIP0nKSjEAS7L6Fpr29VM3o/nQZT4IoIdOB5jwfb6h46Y9kzbf+pj/8jeR/ay+8GddGa7jNWbbNiwAS0VJk6Yn59nopZHD6FlqNzS7/cJqpXjvvezzz574ILmvOfTaUZfCH5XaSYz62sKIbwDmTfipk4wh+A2K/kycH2oOYKnT4wfDMd+v0+j0UD1/FAz0HtPFEVMhBOkacqhO+5m8gVbU1ut/1mxA/jjwA+TKx3IJ6E9v2TH1SjJYygeAn7XWu6wKV734IUvfCHnn38+M/sPEYYhVnrcgZikKXx1IvocUrwaLd6gJC8GXiCgqQZVI0tgwDmPV4JZk3CH9rwPmFYKTjnlFA5/47YTGnsbN25Eb15HkoB2WOP4nNbc7qy9VAbqt5RkNbBKDG3YiYG+ktwHfJ6EzyO5H0Vc0AfWWrZs2YLrGnpz6dDXJI9wBaOjoxw4cICRVXUbroq+H/ggcAlQ4an1tA929d/hOzyi5zNGRkbYuHEjgcj7xzs+z1HHc0dwPv8+MzPQHYMAT8RuFK+xjrcA7xYwhiMs1r+iEAmxWd4BuTsQ3B3H/ItQPKg9DxfVMs8riOeDXWKJEiVKfE/k/EqUKFGiJL8SJUqUKMmvRIkSJUryK1GiRImS/EqUKFGiJL8SJUqUKMmvRIkSJUryK1GiRImS/EqUKFGSX4kSJUqU5FeiRIkSJfmVKFGiREl+JUqUKFGSX4kSJUqU5FeiRIkSJfmVKFGiREl+JUqUKFGSX4kSJUqU5FeiRIkSJfmVKFGiREl+JUqUKFGSX4kSJUqU5FeiRIkSJfmVKFGiREl+JUqUKPHU8f8PAMY+xgG+sdtaAAAAAElFTkSuQmCC"}},"time_used":223,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":206,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCARBI.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.643Z","timestamp":1785126258643,"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 /crypto/XTVCARBI.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 04:24:18 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: \"42e6d1a1dc0d80716b39cc6595ea3923\"\r\nlast-modified: Tue, 28 Mar 2023 14:53:37 GMT\r\ncdn-cachedat: 08/09/2025 14:30:50\r\nx-amz-id-2: D3G3/Ks7EphjXCBYGeSdKkniT3N68+bUKI90eFL/6wci/YWo5Yyos+Ev8SXr68ljr2lZ3/SzkmU=\r\nx-amz-request-id: NZ7DBRV6TVNHH3E3\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 42e6d1a1dc0d80716b39cc6595ea3923\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: 21ced4e3e1439e52ea1f7be6d84f94f9\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":1007,"size_decoded":1461,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1007), with no line terminators","md5":"42e6d1a1dc0d80716b39cc6595ea3923","sha1":"aabaf9cb3305af5d0720a90c197aefb1a702a605","sha256":"56d62ce9b2190bf36d2342fc4bc16ca3e4abdad55e634383c9525b6a0a03661d","sha512":"2c6edfb140f80eba086bda2a8504d70906a36ae915bb89bf0a7184de6751afae1e4cf2372b94bc4672c147ce9f0257f778509d9564d92dd77caa2da16ab4992f","ssdeep":"","tlshash":"9711af97aa4cc16c0c46e26cd77ea25233dea0b5f44856d43cce83e0e00abdaec13c14","first_seen":"2024-08-19T18:44:45.30674Z","last_seen":"2026-07-27T05:33:43.586544Z","times_seen":79,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMyMTMxNDciIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJtOS44NCA5LjkxLS41NSAxLjZhLjIuMiAwIDAgMCAwIC4xM2wuOTQgMi43NCAxLjA5LS42Ni0xLjMtMy44YS4xLjEgMCAwIDAtLjE4IDBaTTEwLjkzIDcuMjNhLjEuMSAwIDAgMC0uMTcgMGwtLjU1IDEuNmEuMi4yIDAgMCAwIDAgLjEzbDEuNTQgNC41IDEuMDktLjY4LTEuOS01LjU1WiIgZmlsbD0iIzEyQUFGRiIvPjxwYXRoIGQ9Ik05IDMuNjdjLjAzIDAgLjA1IDAgLjA4LjAybDQuMjIgMi42MmMuMDUuMDMuMDguMDguMDguMTR2NS4xYzAgLjA1LS4wMy4xLS4wOC4xNEw5LjA4IDE0LjNhLjE1LjE1IDAgMCAxLS4xNiAwTDQuNyAxMS43YS4xNy4xNyAwIDAgMS0uMDgtLjE0di01LjFjMC0uMDYuMDMtLjEuMDgtLjE0TDguOTIgMy43QS4xNC4xNCAwIDAgMSA5IDMuNjdaTTkgM2MtLjE1IDAtLjMuMDQtLjQzLjEyTDQuNDMgNS42N2EuOTIuOTIgMCAwIDAtLjQzLjc4djUuMWMwIC4zMi4xNi42Mi40My43OGw0LjE0IDIuNTVhLjgxLjgxIDAgMCAwIC44NiAwbDQuMTQtMi41NWEuOTIuOTIgMCAwIDAgLjQzLS43OVY2LjQ1YS45My45MyAwIDAgMC0uNDMtLjc4TDkuNDMgMy4xMkEuODMuODMgMCAwIDAgOSAzWiIgZmlsbD0iIzlEQ0NFRCIvPjxwYXRoIGQ9Im02LjI2IDEzLjQ2LjM4LTEuMTEuNzcuNjctLjcyLjctLjQzLS4yNloiIGZpbGw9IiMyMTMxNDciLz48cGF0aCBkPSJNOC42NSA2SDcuNmEuMi4yIDAgMCAwLS4xNy4xNGwtMi4yNiA2LjY0IDEuMDkuNjggMi40OC03LjMyYy4wMi0uMDctLjAyLS4xNC0uMDktLjE0Wk0xMC41IDZIOS40M2EuMTkuMTkgMCAwIDAtLjE3LjEzbC0yLjU4IDcuNTggMS4wOS42OCAyLjgtOC4yNWMuMDItLjA3LS4wMi0uMTQtLjA5LS4xNFoiIGZpbGw9IiNmZmYiLz48L3N2Zz4="}},"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":"besttrader.live/images/icon/instruments/eth.svg","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.094Z","timestamp":1785126256094,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/icon/instruments/eth.svg HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/svg+xml\r\ncontent-length: 1422\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-58e\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":1422,"size_decoded":1674,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"1a3e49f783153674f7ca90bae81c66d2","sha1":"9baff01e0506457849c8a52f6af6a8bbdd60b503","sha256":"99c1988185acbf927001d82ef0a40a246e32ca3d9c98fc3e928bda9dad054869","sha512":"949d6c41628f137d0be508030444da5cbc5c4646b4f60617eeafd075823f7d2af81590b1185c90fb64273f56fb4b7ae31e2e4abf35ec30147a6ef24fadd084c6","ssdeep":"","tlshash":"1121dab411f8020aa214f31da3f9b5455a7e30cea1f949a4b99f7687bf144d5035d3a8","first_seen":"2023-05-01T20:32:00Z","last_seen":"2026-07-27T06:05:14.587416Z","times_seen":173,"resource_available":false,"data":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTdweCIgaGVpZ2h0PSIxN3B4IiB2aWV3Qm94PSIwIDAgMTcgMTciIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDUyLjEgKDY3MDQ4KSAtIGh0dHA6Ly93d3cuYm9oZW1pYW5jb2RpbmcuY29tL3NrZXRjaCAtLT4KICAgIDx0aXRsZT5Hcm91cCAyODwvdGl0bGU+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxnIGlkPSJQYWdlLTEiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSJQcmltZVhCVF92MiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTYzOC4wMDAwMDAsIC0xMTA1LjAwMDAwMCkiPgogICAgICAgICAgICA8ZyBpZD0iUGFnZSI+PC9nPgogICAgICAgICAgICA8ZyBpZD0iR3JvdXAtMjgiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDYzOC4wMDAwMDAsIDExMDUuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICA8Y2lyY2xlIGlkPSJPdmFsIiBmaWxsPSIjOTA4RjhGIiBmaWxsLXJ1bGU9Im5vbnplcm8iIGN4PSI4LjUiIGN5PSI4LjUiIHI9IjguNSI+PC9jaXJjbGU+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNOS4wMTc3MTA4NCwyIEw4LjAzNTg5NjIzLDIgTDQsOS4wNjkxNjM2IEw4LjAzNTg5NjIzLDE0LjM1Mjk0MTIgTDkuMDE3NzEwODQsMTQuMzUyOTQxMiBMMTMsOS4wNjkxNjM2IEw5LjAxNzcxMDg0LDIgWiBNNy44ODIzNTI5NCw3LjI5NDM2MDIxIEw1LjU4ODIzNTI5LDguMTc2NDcwNTkgTDcuODgyMzUyOTQsMy45NDExNzY0NyBMNy44ODIzNTI5NCw3LjI5NDM2MDIxIFogTTguMDU4ODIzNTMsOC4zNTI5NDExOCBMOC4wNTg4MjM1Myw5Ljc2NDcwNTg4IEw1Ljk0MTE3NjQ3LDkuMDU4ODM0ODkgTDguMDU4ODIzNTMsOC4zNTI5NDExOCBaIE04Ljk0MTE3NjQ3LDguMzUyOTQxMTggTDExLjA1ODgyMzUsOS4xNDcwNTg4MiBMOC45NDExNzY0Nyw5Ljk0MTE3NjQ3IEw4Ljk0MTE3NjQ3LDguMzUyOTQxMTggWiBNMTEuMjM1Mjk0MSw4LjE3NjQ3MDU5IEw4Ljk0MTE3NjQ3LDcuMzA1MDIyMDMgTDguOTQxMTc2NDcsMy45NDExNzY0NyBMMTEuMjM1Mjk0MSw4LjE3NjQ3MDU5IFogTTguNDM1Njg0OTksMTMuNDcwNTg4MiBMNS45NDExNzY0NywxMC4xMTc2NDcxIEw4LjQ0MDAwNTEyLDExLjA1MzYwOTEgTDEwLjg4MjM1MjksMTAuMTM3NjYxOCBMOC40MzU2ODQ5OSwxMy40NzA1ODgyIFoiIGlkPSJGaWxsLTEiIGZpbGw9IiNGRkZGRkYiPjwvcGF0aD4KICAgICAgICAgICAgPC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+"}},"time_used":219,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":219,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/webfonts/Precious.ttf","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.765Z","timestamp":1785126256765,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /webfonts/Precious.ttf HTTP/1.1\r\nHost: besttrader.live\r\nUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0\r\nAccept: application/font-woff2;q=1.0,application/font-woff;q=0.9,*/*;q=0.8\r\nAccept-Language: en-US,en;q=0.9\r\nAccept-Encoding: gzip, deflate, br, zstd\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://besttrader.live/css/style.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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: font/ttf\r\ncontent-length: 37928\r\nlast-modified: Sat, 07 Oct 2023 09:01:42 GMT\r\netag: \"65211e76-9428\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":37928,"size_decoded":38177,"mime_type":"font/ttf","magic":"TrueType Font data, 15 tables, 1st \"FFTM\", 24 names, Macintosh","md5":"17693b0767f3887a1c6833d7077cd454","sha1":"5c1c06d3ba54c06c62a580af53026fdc651c71f3","sha256":"8e5e26cfc01c74ff7f90a44814de063dcdfdc40d9c1cdff0648d5d8af2963347","sha512":"cea9e62a995ee4118cbe82a7b540d063372a1f914bbb5e987864e279587c7494cf38c4cd10c728a1dda4a714f632e7ac2d28c9ec68a72ccce69d09a8894da446","ssdeep":"768:XMZpzLhjoW606qkI9Hax+1Ut6yGX76ua9sxoD:epzLhSJqkI9HaIOt69L7eUoD","tlshash":"d3036cced3d9f51bdb431a3181920dba5efaef003a4782de8adf4af4952048198f059d","first_seen":"2023-05-01T20:32:00Z","last_seen":"2026-07-27T04:25:12.752616Z","times_seen":166,"resource_available":false,"data":"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BgcGIzY3JzMWNzYnFgcmJyYHJgcWJxUWFwYHJjc1BjcnBwYnIwYjBg8BNhcnBi8BBiMmNwYHFRY3MxY/ARYnBxYvASYnJi8DJi8BNzMXFjc1Jic2NzY3Njc2NzU3JjcmJwYnDwEGHwEVBgcWFw8BBi8BHwEWFyMmNzY/AQYHBgcGDwEGBxUHJjcGFxYnBhcWJxY3FxUGBxY3FhUWFxUHJgcnIycjJiMfBBYVFhczFjczFgcrAg8BFjc2FwYnBiMmBx8BFhc2FwYXDwEGIw8DFRcWFwcGByYvAQ8EBgczFzMWMxUHBhcHIgcmBxUfARYVFhUfARYXMz8BNjcWHwEGBx8BFhcWFzc2NxYzFRQHBhcWNy8BJic3Njc2NxcWBxYfATY3IycmJzY3MxcWFxYzNzU3PQEmNycHJiczPwI2NyYvAQYHJicmJzY3NSY3JzYXNjcmKwInIicmLwE3FjcfATMXMxYzPwEnJiMmByY1NjcWNzsFNjcHIwcrAgYnKwEnNjcmNRY3JiczNhc2Mz8ENjcGBzU/AjY3Nic2DwEGByc2JxYHNi8GJicmJyMzIycGLwUjJyMnMysBJzMjMyMnMysBJzMjMyMnMyMzBhcWFxQHBgczNhcWHwEWNyc2JyYnJgcXFgcmNwQXFRYHJicmNwQHBic9AjcvATcFFgcnNiczIxYXBicmNxYXNjcEBwYnJjc2NwQHJzMGJzcHBjcWNwYnBic3BRYnNDcEBzUWIzcXBjUHBjcXFCcGBzcWByY3FxYjJjcGBzYHNgc2FzYXNwYXBicGJxYHNQYHNwYHBgcjPwczNjcXBic3FzYXBysBBzY/ATM3FgcGByY3MzY/AQYPAQYHIzY3NjcWBzcGJzcEBwYvASYnFjc2LwEHMwYnFgc3FwYXFhcWNzYnJi8BFgcGBwYnJjcWFwYHNjcGBzY3BwYHBjcWBzY3HwcWFwcGFQ8EBg8CBgcGBwYHLwUmJz8CNTc1PwYzNjcXMzY3Bg8CJjcHBicEBwY3FzYzBAcmNwUGJzQ3FzY3FjczJjcGBzc2Nw8DBgcmNzM/ATY3Nhc3FgcmNwcWJxUGLwEWNwYHBgcGPwI2NwGTKB1OBgMQDA4uBAYLCgcqKwgEDAUHCiUXBAIGDAECAgUWGQoOBgsHKB8+AgoBAAKVDwtmFxYICgUdFgIIR0kEDQENFxQZLAsEDgsV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"}},"time_used":114,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":114,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","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/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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.197Z","timestamp":1785126257197,"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-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/ticker-tape/?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 04:24:17 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: 9841cc9aa4c322df7d222c2e13e0aaeb\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-27T07:05:45.332694Z","times_seen":4990,"resource_available":false,"data":"aHRtbHstd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6MTAwJX1ib2R5e2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSk7Zm9udC1zaXplOjE0cHg7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZDstbW96LW9zeC1mb250LXNtb290aGluZzpncmF5c2NhbGU7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsVHJlYnVjaGV0IE1TLFJvYm90byxVYnVudHUsc2Fucy1zZXJpZjtmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbn1odG1sW2xhbmc9dmldIGJvZHl7Zm9udC1mYW1pbHk6QXJpYWwsc2Fucy1zZXJpZn1ib2R5LGh0bWx7Ym94LXNpemluZzpib3JkZXItYm94O2hlaWdodDoxMDAlfWJvZHksZGlyLGgxLGgyLGgzLGg0LGg1LGg2LGh0bWwsbGksbWVudSxvbCxwLHVse21hcmdpbjowO3BhZGRpbmc6MH1he3RleHQtZGVjb3JhdGlvbjpub25lfWE6YWN0aXZle291dGxpbmU6MH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7YTpob3ZlcntvdXRsaW5lOjB9fWgxe2ZvbnQtc2l6ZToyZW19c3ViLHN1cHtmb250LXNpemU6NzUlO2xpbmUtaGVpZ2h0OjA7cG9zaXRpb246cmVsYXRpdmU7dmVydGljYWwtYWxpZ246aW5pdGlhbH1zdXB7dG9wOi0uMjVlbX1zdWJ7Ym90dG9tOi0uMjVlbX1maWd1cmV7bWFyZ2luOjB9cHJle292ZXJmbG93OmF1dG99Y29kZSxrYmQscHJlLHNhbXB7Zm9udC1mYW1pbHk6bW9ub3NwYWNlLG1vbm9zcGFjZTtmb250LXNpemU6MWVtfWJ1dHRvbixpbnB1dCxvcHRncm91cCxzZWxlY3QsdGV4dGFyZWF7Y29sb3I6aW5oZXJpdDtmb250OmluaGVyaXQ7bWFyZ2luOjB9YnV0dG9uLHNlbGVjdHt0ZXh0LXRyYW5zZm9ybTpub25lfWJ1dHRvbixpbnB1dFt0eXBlPWJ1dHRvbl0saW5wdXRbdHlwZT1yZXNldF0saW5wdXRbdHlwZT1zdWJtaXRdey13ZWJraXQtYXBwZWFyYW5jZTpidXR0b247Y3Vyc29yOmRlZmF1bHR9aW5wdXRbZGlzYWJsZWRde2N1cnNvcjpkZWZhdWx0fWJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixpbnB1dDo6LW1vei1mb2N1cy1pbm5lcntib3JkZXI6MDtwYWRkaW5nOjB9aW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLGlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbntoZWlnaHQ6YXV0b31pbnB1dFt0eXBlPXNlYXJjaF17LXdlYmtpdC1hcHBlYXJhbmNlOnRleHRmaWVsZDtib3gtc2l6aW5nOmluaXRpYWx9aW5wdXRbdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLGlucHV0W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbnstd2Via2l0LWFwcGVhcmFuY2U6bm9uZX1maWVsZHNldHtib3JkZXI6bm9uZTttYXJnaW46MDtwYWRkaW5nOjB9dGFibGV7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO2JvcmRlci1zcGFjaW5nOjB9dGQsdGh7cGFkZGluZzowfTpyb290ey0tY29sb3Itd2hpdGU6I2ZmZjstLWNvbG9yLWJsYWNrOiMwMDA7LS1jb2xvci10cmFuc3BhcmVudDojMDAwMDstLWNvbG9yLWNvbGQtZ3JheS01MDojZjlmOWY5Oy0tY29sb3ItY29sZC1ncmF5LTEwMDojZjJmMmYyOy0tY29sb3ItY29sZC1ncmF5LTE1MDojZWJlYmViOy0tY29sb3ItY29sZC1ncmF5LTIwMDojZGJkYmRiOy0tY29sb3ItY29sZC1ncmF5LTI1MDojYzljOWM5Oy0tY29sb3ItY29sZC1ncmF5LTMwMDojYjhiOGI4Oy0tY29sb3ItY29sZC1ncmF5LTM1MDojYThhOGE4Oy0tY29sb3ItY29sZC1ncmF5LTQwMDojOWM5YzljOy0tY29sb3ItY29sZC1ncmF5LTQ1MDojOGM4YzhjOy0tY29sb3ItY29sZC1ncmF5LTUwMDpncmV5Oy0tY29sb3ItY29sZC1ncmF5LTU1MDojNzA3MDcwOy0tY29sb3ItY29sZC1ncmF5LTYwMDojNjM2MzYzOy0tY29sb3ItY29sZC1ncmF5LTY1MDojNTc1NzU3Oy0tY29sb3ItY29sZC1ncmF5LTcwMDojNGE0YTRhOy0tY29sb3ItY29sZC1ncmF5LTc1MDojM2QzZDNkOy0tY29sb3ItY29sZC1ncmF5LTgwMDojMmUyZTJlOy0tY29sb3ItY29sZC1ncmF5LTg1MDojMWYxZjFmOy0tY29sb3ItY29sZC1ncmF5LTkwMDojMGYwZjBmOy0tY29sb3ItY29sZC1ncmF5LTk1MDojMDAwOy0tY29sb3ItcmlwZS1yZWQtNTA6I2ZmZWJlYzstLWNvbG9yLXJpcGUtcmVkLTEwMDojZmNjYmNkOy0tY29sb3ItcmlwZS1yZWQtMjAwOiNmYWExYTQ7LS1jb2xvci1yaXBlLXJlZC0zMDA6I2Y3N2M4MDstLWNvbG9yLXJpcGUtcmVkLTQwMDojZjc1MjVmOy0tY29sb3ItcmlwZS1yZWQtNTAwOiNmMjM2NDU7LS1jb2xvci1yaXBlLXJlZC02MDA6I2NjMmYzYzstLWNvbG9yLXJpcGUtcmVkLTcwMDojYjIyODMzOy0tY29sb3ItcmlwZS1yZWQtODAwOiM5OTFmMjk7LS1jb2xvci1yaXBlLXJlZC05MDA6IzgwMTkyMjstLWNvbG9yLXJpcGUtcmVkLWExMDA6I2ZmODA4MDstLWNvbG9yLXJpcGUtcmVkLWEyMDA6I2ZmNTI1MjstLWNvbG9yLXJpcGUtcmVkLWE0MDA6I2YzMzstLWNvbG9yLXJpcGUtcmVkLWE2MDA6I2NjMjkyOTstLWNvbG9yLXJpcGUtcmVkLWE3MDA6IzgwMjAyODstLWNvbG9yLXJpcGUtcmVkLWE4MDA6IzRkMTkxZDstLWNvbG9yLXJpcGUtcmVkLWE5MDA6IzMzMWYyMDstLWNvbG9yLXRhbi1vcmFuZ2UtNTA6I2ZmZjNlMDstLWNvbG9yLXRhbi1vcmFuZ2UtMTAwOiNmZmUwYjI7LS1jb2xvci10YW4tb3JhbmdlLTIwMDojZmZjYzgwOy0tY29sb3ItdGFuLW9yYW5nZS0zMDA6I2ZmYjc0ZDstLWNvbG9yLXRhbi1vcmFuZ2UtNDAwOiNmZmE3MjY7LS1jb2xvci10YW4tb3JhbmdlLTUwMDojZmY5ODAwOy0tY29sb3ItdGFuLW9yYW5nZS02MDA6I2ZiOGMwMDstLWNvbG9yLXRhbi1vcmFuZ2UtNzAwOiNmNTdjMDA7LS1jb2xvci10YW4tb3JhbmdlLTgwMDojZWY2YzAwOy0tY29sb3ItdGFuLW9yYW5nZS05MDA6I2U2NTEwMDstLWNvbG9yLXRhbi1vcmFuZ2UtYTEwMDojZmZkMTgwOy0tY29sb3ItdGFuLW9yYW5nZS1hMjAwOiNmZmFiNDA7LS1jb2xvci10YW4tb3JhbmdlLWE0MDA6I2ZmOTEwMDstLWNvbG9yLXRhbi1vcmFuZ2UtYTUwMDojZTU3ZTE3Oy0tY29sb3ItdGFuLW9yYW5nZS1hNjAwOiNjYzcwMTQ7LS1jb2xvci10YW4tb3JhbmdlLWE3MDA6IzhjNTQxYzstLWNvbG9yLXRhbi1vcmFuZ2UtYTgwMDojNTkzYTFiOy0tY29sb3ItdGFuLW9yYW5nZS1hOTAwOiMzMzI2MWE7LS1jb2xvci1pZ3VhbmEtZ3JlZW4tNTA6I2U4ZjVlOTstLWNvbG9yLWlndWFuYS1ncmVlbi0xMDA6I2M4ZTZjOTstLWNvbG9yLWlndWFuYS1ncmVlbi0yMDA6I2E1ZDZhNzstLWNvbG9yLWlndWFuYS1ncmVlbi0zMDA6IzgxYzc4NDstLWNvbG9yLWlndWFuYS1ncmVlbi00MDA6IzY2YmI2YTstLWNvbG9yLWlndWFuYS1ncmVlbi01MDA6IzRjYWY1MDstLWNvbG9yLWlndWFuYS1ncmVlbi02MDA6IzQzYTA0NzstLWNvbG9yLWlndWFuYS1ncmVlbi03MDA6IzM4OGUzYzstLWNvbG9yLWlndWFuYS1ncmVlbi04MDA6IzJlN2QzMjstLWNvbG9yLWlndWFuYS1ncmVlbi05MDA6IzFiNWUyMDstLWNvbG9yLWlndWFuYS1ncmVlbi1hMTAwOiNiOWY2Y2E7LS1jb2xvci1pZ3VhbmEtZ3JlZW4tYTIwMDojNjlmMGFlOy0tY29sb3ItaWd1YW5hLWdyZWVuLWE0MDA6IzAwZTY3NjstLWNvbG9yLWlndWFuYS1ncmVlbi1hNzAwOiMwMGM4NTM7LS1jb2xvci1iYW5hbmEteWVsbG93LTUwOiNmZmZkZTc7LS1jb2xvci1iYW5hbmEteWVsbG93LTEwMDojZmZmOWM0Oy0tY29sb3ItYmFuYW5hLXllbGxvdy0yMDA6I2ZmZjU5ZDstLWNvbG9yLWJhbmFuYS15ZWxsb3ctMzAwOiNmZmYxNzY7LS1jb2xvci1iYW5hbmEteWVsbG93LTQwMDojZmZlZTU4Oy0tY29sb3ItYmFuYW5hLXllbGxvdy01MDA6I2ZmZWIzYjstLWNvbG9yLWJhbmFuYS15ZWxsb3ctNjAwOiNmZGQ4MzU7LS1jb2xvci1iYW5hbmEteWVsbG93LTcwMDojZmJjMDJkOy0tY29sb3ItYmFuYW5hLXllbGxvdy04MDA6I2Y5YTgyNTstLWNvbG9yLWJhbmFuYS15ZWxsb3ctOTAwOiNmNTdmMTc7LS1jb2xvci1iYW5hbmEteWVsbG93LWExMDA6I2ZmZmY4ZDstLWNvbG9yLWJhbmFuYS15ZWxsb3ctYTIwMDojZmYwOy0tY29sb3ItYmFuYW5hLXllbGxvdy1hNDAwOiNmZmVhMDA7LS1jb2xvci1iYW5hbmEteWVsbG93LWE3MDA6I2VlZGEwMTstLWNvbG9yLXR2LWJsdWUtNTA6I2UzZWZmZDstLWNvbG9yLXR2LWJsdWUtMTAwOiNiYmQ5ZmI7LS1jb2xvci10di1ibHVlLTIwMDojOTBiZmY5Oy0tY29sb3ItdHYtYmx1ZS0zMDA6IzViOWNmNjstLWNvbG9yLXR2LWJsdWUtNDAwOiMzMTc5ZjU7LS1jb2xvci10di1ibHVlLTUwMDojMjk2MmZmOy0tY29sb3ItdHYtYmx1ZS02MDA6IzFlNTNlNTstLWNvbG9yLXR2LWJsdWUtNzAwOiMxODQ4Y2M7LS1jb2xvci10di1ibHVlLTgwMDojMTQzZWIyOy0tY29sb3ItdHYtYmx1ZS05MDA6IzBjMzI5OTstLWNvbG9yLXR2LWJsdWUtYTEwMDojODJiMWZmOy0tY29sb3ItdHYtYmx1ZS1hMjAwOiM0NDhhZmY7LS1jb2xvci10di1ibHVlLWE0MDA6IzI5NzlmZjstLWNvbG9yLXR2LWJsdWUtYTYwMDojMjk2MmZmOy0tY29sb3ItdHYtYmx1ZS1hNzAwOiMxNDNhODc7LS1jb2xvci10di1ibHVlLWE4MDA6IzE0MmU2MTstLWNvbG9yLXR2LWJsdWUtYTkwMDojMTMyMDQyOy0tY29sb3ItZGVlcC1ibHVlLTUwOiNlZGU3ZjY7LS1jb2xvci1kZWVwLWJsdWUtMTAwOiNkMWM0ZTk7LS1jb2xvci1kZWVwLWJsdWUtMjAwOiNiMzlkZGI7LS1jb2xvci1kZWVwLWJsdWUtMzAwOiM5NTc1Y2Q7LS1jb2xvci1kZWVwLWJsdWUtNDAwOiM3ZTU3YzI7LS1jb2xvci1kZWVwLWJsdWUtNTAwOiM2NzNhYjc7LS1jb2xvci1kZWVwLWJsdWUtNjAwOiM1ZTM1YjE7LS1jb2xvci1kZWVwLWJsdWUtNzAwOiM1MTJkYTg7LS1jb2xvci1kZWVwLWJsdWUtODAwOiM0NTI3YTA7LS1jb2xvci1kZWVwLWJsdWUtOTAwOiMzMTFiOTI7LS1jb2xvci1kZWVwLWJsdWUtYTEwMDojYjM4OGZmOy0tY29sb3ItZGVlcC1ibHVlLWEyMDA6IzdjNGRmZjstLWNvbG9yLWRlZXAtYmx1ZS1hNDAwOiM2NTFmZmY7LS1jb2xvci1kZWVwLWJsdWUtYTcwMDojNjIwMGVhOy0tY29sb3ItbWludHktZ3JlZW4tNTA6I2RhZjJlZTstLWNvbG9yLW1pbnR5LWdyZWVuLTEwMDojYWNlNWRjOy0tY29sb3ItbWludHktZ3JlZW4tMjAwOiM3MGNjYmQ7LS1jb2xvci1taW50eS1ncmVlbi0zMDA6IzQyYmRhODstLWNvbG9yLW1pbnR5LWdyZWVuLTQwMDojMjJhYjk0Oy0tY29sb3ItbWludHktZ3JlZW4tNTAwOiMwODk5ODE7LS1jb2xvci1taW50eS1ncmVlbi02MDA6IzA2ODA2YjstLWNvbG9yLW1pbnR5LWdyZWVuLTcwMDojMDU2NjU2Oy0tY29sb3ItbWludHktZ3JlZW4tODAwOiMwMDRkNDA7LS1jb2xvci1taW50eS1ncmVlbi05MDA6IzAwMzMyYTstLWNvbG9yLW1pbnR5LWdyZWVuLWExMDA6I2E3ZmZmMDstLWNvbG9yLW1pbnR5LWdyZWVuLWEyMDA6IzQ1ZTVjYjstLWNvbG9yLW1pbnR5LWdyZWVuLWE0MDA6IzJiZDliYzstLWNvbG9yLW1pbnR5LWdyZWVuLWE2MDA6IzI0YjI5YjstLWNvbG9yLW1pbnR5LWdyZWVuLWE3MDA6IzFiNzY2NzstLWNvbG9yLW1pbnR5LWdyZWVuLWE4MDA6IzEwNDQzYjstLWNvbG9yLW1pbnR5LWdyZWVuLWE5MDA6IzA4MjYyMTstLWNvbG9yLWdyYXBlcy1wdXJwbGUtNTA6I2YzZTVmNTstLWNvbG9yLWdyYXBlcy1wdXJwbGUtMTAwOiNlMWJlZTc7LS1jb2xvci1ncmFwZXMtcHVycGxlLTIwMDojY2U5M2Q4Oy0tY29sb3ItZ3JhcGVzLXB1cnBsZS0zMDA6I2JhNjhjODstLWNvbG9yLWdyYXBlcy1wdXJwbGUtNDAwOiNhYjQ3YmM7LS1jb2xvci1ncmFwZXMtcHVycGxlLTUwMDojOWMyN2IwOy0tY29sb3ItZ3JhcGVzLXB1cnBsZS02MDA6IzhlMjRhYTstLWNvbG9yLWdyYXBlcy1wdXJwbGUtNzAwOiM3YjFmYTI7LS1jb2xvci1ncmFwZXMtcHVycGxlLTgwMDojNmExYjlhOy0tY29sb3ItZ3JhcGVzLXB1cnBsZS05MDA6IzRhMTQ4YzstLWNvbG9yLWdyYXBlcy1wdXJwbGUtYTEwMDojZWE4MGZjOy0tY29sb3ItZ3JhcGVzLXB1cnBsZS1hMjAwOiNlMDQwZmI7LS1jb2xvci1ncmFwZXMtcHVycGxlLWE0MDA6I2Q1MDBmOTstLWNvbG9yLWdyYXBlcy1wdXJwbGUtYTcwMDojYTBmOy0tY29sb3ItYmVycnktcGluay01MDojZmNlNGVjOy0tY29sb3ItYmVycnktcGluay0xMDA6I2Y4YmJkMDstLWNvbG9yLWJlcnJ5LXBpbmstMjAwOiNmNDhmYjE7LS1jb2xvci1iZXJyeS1waW5rLTMwMDojZjA2MjkyOy0tY29sb3ItYmVycnktcGluay00MDA6I2VjNDA3YTstLWNvbG9yLWJlcnJ5LXBpbmstNTAwOiNlOTFlNjM7LS1jb2xvci1iZXJyeS1waW5rLTYwMDojZDgxYjYwOy0tY29sb3ItYmVycnktcGluay03MDA6I2MyMTg1YjstLWNvbG9yLWJlcnJ5LXBpbmstODAwOiNhZDE0NTc7LS1jb2xvci1iZXJyeS1waW5rLTkwMDojODgwZTRmOy0tY29sb3ItYmVycnktcGluay1hMTAwOiNmZjgwYWI7LS1jb2xvci1iZXJyeS1waW5rLWEyMDA6I2ZmNDA4MTstLWNvbG9yLWJlcnJ5LXBpbmstYTQwMDojZjUwMDU3Oy0tY29sb3ItYmVycnktcGluay1hNzAwOiNjNTExNjI7LS1jb2xvci1za3ktYmx1ZS01MDojZTBmN2ZhOy0tY29sb3Itc2t5LWJsdWUtMTAwOiNiMmViZjI7LS1jb2xvci1za3ktYmx1ZS0yMDA6IzgwZGVlYTstLWNvbG9yLXNreS1ibHVlLTMwMDojNGRkMGUxOy0tY29sb3Itc2t5LWJsdWUtNDAwOiMyNmM2ZGE7LS1jb2xvci1za3ktYmx1ZS01MDA6IzAwYmNkNDstLWNvbG9yLXNreS1ibHVlLTYwMDojMDBhY2MxOy0tY29sb3Itc2t5LWJsdWUtNzAwOiMwMDk3YTc7LS1jb2xvci1za3ktYmx1ZS04MDA6IzAwODM4ZjstLWNvbG9yLXNreS1ibHVlLTkwMDojMDA2MDY0Oy0tY29sb3Itc2t5LWJsdWUtYTEwMDojODRmZmZmOy0tY29sb3Itc2t5LWJsdWUtYTIwMDojMThmZmZmOy0tY29sb3Itc2t5LWJsdWUtYTQwMDojMDBlNWZmOy0tY29sb3Itc2t5LWJsdWUtYTcwMDojMDBiOGQ0Oy0tY29sb3ItZm9yZXN0LWdyZWVuLTUwOiNkYWYyZTY7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tMTAwOiNhY2U1Yzk7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tMjAwOiM3MGNjOWU7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tMzAwOiM0MmJkN2Y7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tNDAwOiMyMmFiNjc7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tNTAwOiMwODk5NTA7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tNjAwOiMwNjgwNDM7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tNzAwOiMwNTY2MzY7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tODAwOiMwMDRkMjc7LS1jb2xvci1mb3Jlc3QtZ3JlZW4tOTAwOiMxYTMzMjY7LS1jb2xvci1mYWNlYm9vazojMTg3N2YyOy0tY29sb3ItZGVlcC1mYWNlYm9vazojMTU2NGNhOy0tY29sb3ItdHdpdHRlcjojMWRhMWYyOy0tY29sb3ItZGVlcC10d2l0dGVyOiMxODhjZDM7LS1jb2xvci15b3V0dWJlOnJlZDstLWNvbG9yLWxpbmtlZGluOiMwMDdiYjU7LS1jb2xvci1zZWVraW5nLWFscGhhLWJyYW5kOiNmZjcyMDB9W2RhdGEtdGhlbWU9bGlnaHRdey0tY29sb3ItaGVhZGVyLWJnOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJvZHktYmc6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYm9keS1zZWNvbmRhcnktYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1iZy1wcmltYXJ5OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJnLXByaW1hcnktaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1iZy1zZWNvbmRhcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmctaGlnaGxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1iZy1zY3JvbGwtYnV0dG9uczp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWxlZ2FjeS1iZy1zY3JvbGwtYnV0dG9uczp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWxlZ2FjeS1iZy13aWRnZXQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItdGV4dC1wcmltYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItdGV4dC1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci10ZXh0LXRlcnRpYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS00MDApOy0tY29sb3ItdGV4dC1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTstLWNvbG9yLWFjY2VudC1jb250ZW50OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYm94LXNoYWRvdzp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTstLWNvbG9yLWRpdmlkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1kaXZpZGVyLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItZGl2aWRlci1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1hY3RpdmUtaG92ZXItdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWFsZXJ0LXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1ib3JkZXItdGFibGU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1icmFuZDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1icmFuZC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS03MDApOy0tY29sb3ItYnJhbmQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItY2hhcnQtcGFnZS1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWNvbW1vbi10b29sdGlwLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTQwMCk7LS1jb2xvci1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWRlcHRocmVuZGVyZXItc3Ryb2tlLXN0eWxlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGlnaGxpZ2h0LW5ldzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwKTstLWNvbG9yLWlucHV0LWJnOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWlucHV0LXB1Ymxpc2gtYmc6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItbGluazp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1saW5rLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWxpbmstYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWxpc3QtbnRoLWNoaWxkLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1wYW5lLWJnOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLXBhbmUtc2Vjb25kYXJ5LWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItcG9wdXAtbWVudS1pdGVtLWhvdmVyLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItcG9wdXAtbWVudS1zZXBhcmF0b3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1wcmltYXJ5LXN5bWJvbDp2YXIoLS1jb2xvci1za3ktYmx1ZS01MDApOy0tY29sb3Itc2NyZWVuZXItZGVzY3JpcHRpb246dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTYwMCk7LS1jb2xvci1zdWNjZXNzLWFjdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi03MDApOy0tY29sb3ItdG9vbGJhci1idXR0b24tdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLXRleHQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi10ZXh0LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi10ZXh0LWFjdGl2ZS1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItdG9vbGJhci1idXR0b24tYmFja2dyb3VuZC1zZWNvbmRhcnktaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi1iYWNrZ3JvdW5kLWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLWJhY2tncm91bmQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLXRvb2xiYXItdG9nZ2xlLWJ1dHRvbi1iYWNrZ3JvdW5kLWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci10b29sYmFyLXRvZ2dsZS1idXR0b24tYmFja2dyb3VuZC1hY3RpdmUtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItdG9vbGJhci10b2dnbGUtYnV0dG9uLWljb246dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci10b29sYmFyLWludGVyYWN0aXZlLWVsZW1lbnQtdGV4dC1ub3JtYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci10b29sYmFyLW9wZW5lZC1lbGVtZW50LWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItdG9vbGJhci1kaXZpZGVyLWJhY2tncm91bmQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1wb3B1cC1iYWNrZ3JvdW5kOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtYmFja2dyb3VuZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtc2Vjb25kYXJ5LXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LWhpbnQtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdGV4dC1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItcG9wdXAtZWxlbWVudC1iYWNrZ3JvdW5kLWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXRvb2xib3gtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC10ZXh0LWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItcG9wdXAtZWxlbWVudC10b29sYm94LXRleHQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC1iYWNrZ3JvdW5kLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItcG9wdXAtZWxlbWVudC10b29sYm94LWJhY2tncm91bmQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLXRvb2x0aXAtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci10di1kaWFsb2ctY2FwdGlvbjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXR2LWRyb3Bkb3duLWl0ZW0taG92ZXItYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci11bmRlcmxpbmVkLXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci13aWRnZXQtcGFnZXMtYmc6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3Itd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1ncm93aW5nOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1mYWxsaW5nOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1mb3JleC1pY29uOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItbGlzdC1pdGVtLWFjdGl2ZS1iZzp2YXIoLS1jb2xvci10di1ibHVlLTQwMCk7LS1jb2xvci1saXN0LWl0ZW0taG92ZXItYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1saXN0LWl0ZW0tdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLXByaWNlLWF4aXMtbGFiZWwtYmFjazp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLXByaWNlLWF4aXMtbGFiZWwtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXByaWNlLWF4aXMtZ2Vhcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXByaWNlLWF4aXMtZ2Vhci1ob3Zlcjp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1wcmljZS1heGlzLWhpZ2hsaWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWJpZDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1ib3JkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1ib3JkZXItY2hhdC1maWVsZHM6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1ib3JkZXItaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1idXR0b24taG92ZXItYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1kZXB0aHJlbmRlcmVyLWZpbGwtc3R5bGU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1kaXNhYmxlZC1ib3JkZXItYW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItZGlzYWJsZWQtaW5wdXQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1lbXB0eS1jb250YWluZXItbWVzc2FnZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLWljb25zOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItaW5wdXQtdGV4dGFyZWEtcmVhZG9ubHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1pbnB1dC1wbGFjZWhvbGRlci10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItaXRlbS1hY3RpdmUtYmx1ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwKTstLWNvbG9yLWl0ZW0taG92ZXItYWN0aXZlLWJnOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWl0ZW0taG92ZXItYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItaXRlbS1ob3Zlci1ibHVlOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWl0ZW0tc2VsZWN0ZWQtYmx1ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwKTstLWNvbG9yLWl0ZW0tYWN0aXZlLXRleHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItaXRlbS1hY3RpdmUtYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItbGlzdC1pdGVtOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItbmV3cy1oaWdobGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItcGxhY2Vob2xkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTM1MCk7LS1jb2xvci1yb3ctaG92ZXItYWN0aXZlLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3Itc2Itc2Nyb2xsYmFyLWJvZHktYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1zZWN0aW9uLXNlcGFyYXRvci1ib3JkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7LS1jb2xvci1zZXBhcmF0b3ItdGFibGUtY2hhdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLXRhZy1hY3RpdmUtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci10YWctaG92ZXItYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci10ZXh0LXJlZ3VsYXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci10di1idXR0b24tY2hlY2tlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLXNjcm9sbC1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKTstLWNvbG9yLXNjcm9sbC1ib3JkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci13aWRnZXQtYm9yZGVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3Itc2Nyb2xsLWJ1dHRvbnMtYXJyb3c6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY29udHJvbC1pbnRlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLWNvbnRyb2wtaW50ZW50LXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWNvbnRyb2wtaW50ZW50LXByaW1hcnk6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItY29udHJvbC1pbnRlbnQtd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1jb250cm9sLWludGVudC1kYW5nZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWdvdG8tbGFiZWwtYmFja2dyb3VuZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLXByZS1tYXJrZXQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS02MDApOy0tY29sb3ItcG9zdC1tYXJrZXQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3Itbm90YWNjdXJhdGUtbW9kZTp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTYwMCk7LS1jb2xvci1kZWxheS1tb2RlOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNzAwKTstLWNvbG9yLWRlbGF5LW1vZGUtYmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS00MDApOy0tY29sb3ItbGlzdC1pdGVtLWJnLWhpZ2hsaWdodGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtNTApOy0tY29sb3ItbGlzdC1pdGVtLWJnLXNlbGVjdGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWxpc3QtaXRlbS1iZy1oaWdobGlnaHRlZC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1saXN0LWl0ZW0tYmctc2VsZWN0ZWQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3Itc2NyZWVuZXItaGVhZGVyLWJnOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLXNjcmVlbmVyLWhlYWRlci1iZy1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLW1hcmtlci1mbGFnZ2VkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTQwMCk7LS1jb2xvci1tYXJrZXItZmxhZ2dlZC1ob3ZlcmVkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTYwMCk7LS1jb2xvci1hc2s6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLXNlbGw6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWJ1eTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItcHJvOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTQwMCk7LS1jb2xvci1wcm8taG92ZXI6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLXByby1wbHVzOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXByby1wbHVzLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLXByby1wcmVtaXVtOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLXByby1wcmVtaXVtLWhvdmVyOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNzAwKTstLWNvbG9yLXRyaWFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItdHJpYWwtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci1tb2Q6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLW1vZC1ob3Zlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItYWQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItYnJva2VyLWZlYXR1cmVkOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTQwMCk7LS1jb2xvci1icm9rZXItZmVhdHVyZWQtaG92ZXI6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLWFsZXJ0LXN0YXR1cy1hY3RpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWFsZXJ0LXN0YXR1cy1zdG9wcGVkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1hbGVydC1zdGF0dXMtdHJpZ2dlcmVkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLW92ZXJsYXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCk7LS1jb2xvci1zZWFyY2gtYnV0dG9uLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItYm9vc3QtYnV0dG9uLWNvbnRlbnQtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYm9vc3QtYnV0dG9uLWNvbnRlbnQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1ib29zdC1idXR0b24tYmctaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1ib29zdC1idXR0b24tYm9yZGVyLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItYm9vc3QtYnV0dG9uLWJvcmRlci1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItY29tbW9uLXRvb2x0aXAtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLXJlcGxheS1kYXRhLW1vZGU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWxlZ2FjeS1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTMwMCk7LS1jb2xvci1jb2xsYXBzZS10YWJzLWJvcmRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLXNpdGUtd2lkZ2V0LWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1hdHRlbnRpb246dmFyKC0tY29sb3ItYmFuYW5hLXllbGxvdy03MDApOy0tY29sb3IteC10d2l0dGVyLWNvbnRlbnQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1jYXJkLWJvcmRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWNhcmQtYm9yZGVyLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tY29sb3ItYmFja2dyb3VuZC1zcGVjaWFsLXByaW1hcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3Itc3Ryb2tlLXNwZWNpYWwtcHJpbWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLXNlbGVjdGlvbi1iZzp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1kZWZhdWx0LWdyYXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtYmctaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtdGV4dDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmFja2dyb3VuZC1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwKTstLWNvbG9yLWJhY2tncm91bmQtdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLWRhcmstcHJpbWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJhY2tncm91bmQtZGFyay1zZWNvbmRhcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmFja2dyb3VuZC1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWJhY2tncm91bmQtc3BlY2lhbC1zZWNvbmRhcnk6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1iYWNrZ3JvdW5kLXNwZWNpYWwtdGVydGlhcnk6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYmFja2dyb3VuZC1wYWdlLXBsYXRmb3JtOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJhY2tncm91bmQtcGFnZS1wcm9tbzp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1iYWNrZ3JvdW5kLXBhZ2Utc29jaWFsOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJhY2tncm91bmQtZGlhbG9nLXNpbXBsZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpYWxvZy1jb21wbGljYXRlZDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpYWxvZy1wcm9tbzp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpYWxvZy1mdWxsc2NyZWVuOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRlbnQtaWNvbnMtcHJpbWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRlbnQtaWNvbnMtc2Vjb25kYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItY29udGVudC1pY29ucy10ZXJ0aWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTstLWNvbG9yLWNvbnRlbnQtdGV4dC1wcm9tby1wcmltYXJ5OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRlbnQtdGV4dC1wcm9tby1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1jb250ZW50LXRleHQtcHJvbW8tdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250ZW50LXRleHQtc29jaWFsLXByaW1hcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1jb250ZW50LXRleHQtc29jaWFsLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLWNvbnRlbnQtdGV4dC1zb2NpYWwtdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7LS1jb2xvci1kaXZpZGVyLWxpbmUtcHJpbWFyeS1zcGVjaWFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItZGl2aWRlci1saW5lLXNlY29uZGFyeS1zcGVjaWFsOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWRpdmlkZXItbGluZS1wcmltYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItZGl2aWRlci1saW5lLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWxpbmstcHJpbWFyeS1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWxpbmstcHJpbWFyeS1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1saW5rLXByaW1hcnktYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWxpbmstc2Vjb25kYXJ5LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0zMDApOy0tY29sb3ItbGluay1zZWNvbmRhcnktaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS00MDApOy0tY29sb3ItbGluay1zZWNvbmRhcnktYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudDp2YXIoLS1jb2xvci10cmFuc3BhcmVudCk7LS1jb2xvci1zdGF0aWMtd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1zdGF0aWMtZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1zdGF0aWMtaGlnaGxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtNTApOy0tY29sb3Itc3RhdGljLW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci1zdGF0aWMtc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1naG9zdC1uZXV0cmFsLWJvbGQtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LWFjY2VudC1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtbmV1dHJhbC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktbmV1dHJhbC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktc3VjY2Vzcy1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktc3VjY2Vzcy1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LXN1Y2Nlc3MtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktYWNjZW50LWxpZ2h0LWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktZGFuZ2VyLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXItYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXF1aWV0LXByaW1hcnktbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LWFjY2VudC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1zdWNjZXNzLWRlZmF1bHQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1zdWNjZXNzLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1kYW5nZXItZGVmYXVsdDp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LWRhbmdlci1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktZGFuZ2VyLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci1zdGF0aWMtdHJhbnNwYXJlbnQpOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLWdob3N0LWFjY2VudC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLWdob3N0LWFjY2VudC1saWdodC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLWdob3N0LWFjY2VudC1saWdodC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWJvbGQtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktc3VjY2Vzcy1kZWZhdWx0OnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTYwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1zdWNjZXNzLWFjdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi03MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWxpZ2h0LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktZGFuZ2VyLWRlZmF1bHQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LWRhbmdlci1ob3Zlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktZGFuZ2VyLWFjdGl2ZTp2YXIoLS1jb2xvci1yaXBlLXJlZC03MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktbmV1dHJhbC1ib2xkLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1hY2NlbnQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LW5ldXRyYWwtZGVmYXVsdDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktc3VjY2Vzcy1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LXN1Y2Nlc3MtaG92ZXI6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LXN1Y2Nlc3MtYWN0aXZlOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTYwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtZGVmYXVsdDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1kYW5nZXItZGVmYXVsdDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1hY2NlbnQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1pcy1zZWxlY3RlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktc3VjY2Vzcy1kZWZhdWx0OnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LXN1Y2Nlc3MtaG92ZXI6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktc3VjY2Vzcy1hY3RpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWFjY2VudC1saWdodC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1kYW5nZXItZGVmYXVsdDp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktZGFuZ2VyLWFjdGl2ZTp2YXIoLS1jb2xvci1yaXBlLXJlZC03MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLWRpc2FibGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItZXJyb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLWZvY3VzLW5vdC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItZm9jdXMtcmVhZC1vbmx5OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLXJlYWQtb25seTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLXRleHQtZmllbGQtYm9yZGVyLXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItd2l0aC12YWx1ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRleHQtZmllbGQtZGVzY3JpcHRpb24tZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLXRleHQtZmllbGQtZGVzY3JpcHRpb24tZXJyb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtZGVzY3JpcHRpb24tc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItdGV4dC1maWVsZC1kZXNjcmlwdGlvbi13YXJuaW5nOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtZmlsbC1kZWZhdWx0OnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci10ZXh0LWZpZWxkLWZpbGwtZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWZpbGwtZm9jdXMtcmVhZC1vbmx5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci10ZXh0LWZpZWxkLWZpbGwtcmVhZC1vbmx5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci10ZXh0LWZpZWxkLWxhYmVsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci10ZXh0LWZpZWxkLWxhYmVsLWVycm9yOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWxhYmVsLWxpbms6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1sYWJlbC1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWxhYmVsLXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1sZWZ0LXNsb3QtaWNvbi1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItdGV4dC1maWVsZC1sZWZ0LXNsb3QtaWNvbi1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzUwKTstLWNvbG9yLXRleHQtZmllbGQtcGxhY2Vob2xkZXItZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLXRleHQtZmllbGQtcGxhY2Vob2xkZXItZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTM1MCk7LS1jb2xvci10ZXh0LWZpZWxkLXJpZ2h0LXNsb3QtYXJyb3dzLWJnLWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1hcnJvd3MtYmctaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci10ZXh0LWZpZWxkLXJpZ2h0LXNsb3QtYXJyb3dzLWJnLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1pY29ucy1hbmQtdGV4dC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItdGV4dC1maWVsZC1yaWdodC1zbG90LWljb25zLWFuZC10ZXh0LWRpc2FibGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItdGV4dC1maWVsZC1yaWdodC1zbG90LWljb25zLWFuZC10ZXh0LWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1pY29ucy1hbmQtdGV4dC1lcnJvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItdGV4dC1maWVsZC1yaWdodC1zbG90LWljb25zLWFuZC10ZXh0LWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItdGV4dC1maWVsZC12YWx1ZS1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItdGV4dC1maWVsZC12YWx1ZS1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLWNvdW50ZXItZmlsbC1kYW5nZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWNvdW50ZXItY29udGVudC1kYW5nZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY291bnRlci1maWxsLWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1jb3VudGVyLWNvbnRlbnQtYWNjZW50OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvdW50ZXItZmlsbC1hY2NlbnQtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1jb3VudGVyLWNvbnRlbnQtYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWNvdW50ZXItZmlsbC1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItY291bnRlci1jb250ZW50LW5ldXRyYWwtYm9sZDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb3VudGVyLWZpbGwtbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWNvdW50ZXItY29udGVudC1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItY291bnRlci1ib3JkZXItcHJpbWFyeTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb3VudGVyLWJvcmRlci1zZWNvbmRhcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY291bnRlci1ib3JkZXItdGVydGlhcnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1jaGVja2VkLWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLWNoZWNrZWQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1jaGVja2VkLWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLWNoZWNrZWQtaXNPcGVuZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtY29udGVudC1jaGVja2VkLWFjY2VudC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtY29udGVudC1jaGVja2VkLW5ldXRyYWwtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1ub3QtY2hlY2tlZC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1ub3QtY2hlY2tlZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtZmlsbF9ib3JkZXItbm90LWNoZWNrZWQtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1ub3QtY2hlY2tlZC1pc09wZW5lZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtY29udGVudC1ub3QtY2hlY2tlZC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LW5vdC1jaGVja2VkLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LW5vdC1jaGVja2VkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLXN5bWJvbC1jaGFuZ2UtcG9zaXRpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLXN5bWJvbC1jaGFuZ2UtbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLXN5bWJvbC1jaGFuZ2UtbmVnYXRpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLXN5bWJvbC1yYXRpbmctcG9zaXRpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLXN5bWJvbC1yYXRpbmctbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLXN5bWJvbC1yYXRpbmctbmVnYXRpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLW90aGVyLXRyYW5zcGFyZW50OiNmZmYwOy0tY29sb3Itb3RoZXItdHJhbnNwYXJlbnQtNjA6I2ZmZjk7LS1jb2xvci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5OiMwMDAzOy0tY29sb3Itc2hhZG93LXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLXNoYWRvdy1zZWNvbmRhcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLW90aGVyLW1vZGFsLWJhY2tncm91bmQ6I2QxZDFkMTRkOy0tY29sb3Itb3RoZXItc2hhZG93LXByaW1hcnktbmV1dHJhbC1leHRyYS1oZWF2eTojMDAwMzstLWNvbG9yLW90aGVyLXNoYWRvdy1wcmltYXJ5LW5ldXRyYWwtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1vdGhlci1zaGFkb3ctc2Vjb25kYXJ5LW5ldXRyYWwtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1vdGhlci1ibGFjay1mcmlkYXktcHJpbWFyeTp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3Itb3RoZXItYmxhY2stZnJpZGF5LXNlY29uZGFyeTp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3Itb3RoZXItYmxhY2stZnJpZGF5LXRlcnRpYXJ5OnZhcigtLWNvbG9yLXJpcGUtcmVkLTMwMCk7LS1jb2xvci1vdGhlci1jeWJlci1tb25kYXktcHJpbWFyeTp2YXIoLS1jb2xvci1za3ktYmx1ZS1hNDAwKTstLWNvbG9yLW90aGVyLWN5YmVyLW1vbmRheS1zZWNvbmRhcnk6dmFyKC0tY29sb3Itc2t5LWJsdWUtYTIwMCk7LS1jb2xvci1vdGhlci1jeWJlci1tb25kYXktdGVydGlhcnk6dmFyKC0tY29sb3Itc2t5LWJsdWUtYTEwMCk7LS1jb2xvci1zZWFyY2gtaGlnaGxpZ2h0LXByaW1hcnktbm9ybWFsOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLXNlYXJjaC1oaWdobGlnaHQtcHJpbWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWZvY3VzLW91dGxpbmUtY29sb3ItYmx1ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1mb2N1cy1vdXRsaW5lLWNvbG9yLWJsYWNrOnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWZvY3VzLW91dGxpbmUtY29sb3Itd2hpdGU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LWFjY2VudC1leHRyYS1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTUwKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeS1hY2NlbnQtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LWludmVyc2U6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LW5ldXRyYWwtYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeS1uZXV0cmFsLW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWJhY2tncm91bmQtc2Vjb25kYXJ5LWludmVyc2U6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYmFja2dyb3VuZC10ZXJ0aWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktYWNjZW50OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktYWNjZW50LWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1hY2NlbnQtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1ub3JtYWw6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1hY2NlbnQtc2VtaS1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktYWNjZW50LWFsdDEtbm9ybWFsOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS1hNDAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktYWNjZW50LWFsdDItYm9sZDp2YXIoLS1jb2xvci1za3ktYmx1ZS03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1kYW5nZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLWJvbGQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLWxpZ2h0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWRhbmdlci1ub3JtYWw6dmFyKC0tY29sb3ItcmlwZS1yZWQtMjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLXNlbWktYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWhlYXZ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC10aGluOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtbWVkaXVtOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3MtYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktc3VjY2Vzcy1saWdodDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0xMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzLW5vcm1hbDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0yMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzLXNlbWktYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS13YXJuaW5nOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1leHRyYS1saWdodDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1saWdodDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXdhcm5pbmctbm9ybWFsOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtMjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcXVhdGVybmFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1hY2NlbnQtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1hY2NlbnQtbm9ybWFsOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNDAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1hY2NlbnQtc2VtaS1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLXRoaW46dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktbmV1dHJhbC1oZWF2eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtbm9ybWFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtc2VtaS1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktZGFuZ2VyLWJvbGQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1zdWNjZXNzLXNlbWktYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LXdhcm5pbmctc2VtaS1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXRlcnRpYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLWE2MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtdGVydGlhcnktYWNjZW50LWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hOTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXRlcnRpYXJ5LWFjY2VudC1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC10ZXJ0aWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXRlcnRpYXJ5LW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250YWluZXItZmlsbC10ZXJ0aWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtdGVydGlhcnktbmV1dHJhbC1oZWF2eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXF1aW5hcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZW5hcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS04MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1oZWF2eTp2YXIoLS1jb2xvci1za3ktYmx1ZS05MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW5vcm1hbDp2YXIoLS1jb2xvci10di1ibHVlLTQwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW90aGVyLW5vcm1hbDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtYTQwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW90aGVyLWJvbGQ6dmFyKC0tY29sb3Itc2t5LWJsdWUtNzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtb3RoZXItZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtODAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hdHRlbnRpb246dmFyKC0tY29sb3ItYmFuYW5hLXllbGxvdy03MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWRhbmdlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWRhbmdlci1ib2xkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTcwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktZGFuZ2VyLXNlbWktYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWRhbmdlci1leHRyYS1ib2xkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTgwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb250ZW50LXByaW1hcnktbmVnYXRpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWwtYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLXNlbWktYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1wb3NpdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1zdWNjZXNzLWJvbGQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1zdWNjZXNzLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tODAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1zdWNjZXNzLXNlbWktYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXdhcm5pbmctYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTcwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktd2FybmluZy1leHRyYS1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtODAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS13YXJuaW5nLXNlbWktYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTYwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLWE3MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LW90aGVyLXNlbWktYm9sZDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTYwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtb3RoZXItZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTgwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1tZWRpdW06dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLXNlbWktYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LXdhcm5pbmctc2VtaS1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNjAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LXdhcm5pbmctYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLWE3MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktZGFuZ2VyLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItYmVycnktcGluay04MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktc3VjY2Vzcy1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3MtZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tODAwKTstLWNvbG9yLWNvbnRlbnQtdGVydGlhcnktYWNjZW50OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWNvbnRlbnQtdGVydGlhcnktYWNjZW50LWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS03MDApOy0tY29sb3ItY29udGVudC10ZXJ0aWFyeS1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LXN1Y2Nlc3MtZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1pZ3VhbmEtZ3JlZW4tODAwKTstLWNvbG9yLWNvbnRlbnQtdGVydGlhcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LWludmVyc2U6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY29udGVudC1xdWF0ZXJuYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLWE0MDApOy0tY29sb3ItY29udGVudC1xdWF0ZXJuYXJ5LWFjY2VudC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItY29udGVudC1xdWluYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1jb250ZW50LXF1aW5hcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1jb250ZW50LXF1aW5hcnktYWNjZW50LWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS03MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktYWNjZW50OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LWFjY2VudC1leHRyYS1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTUwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LWRhbmdlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1leHRyYS1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1leHRyYS1oZWF2eTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1ub3JtYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1uZXV0cmFsLXNlbWktYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItYm9yZGVyLXNlY29uZGFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJvcmRlci1zZWNvbmRhcnktbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTstLWNvbG9yLWJvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ub3JtYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1ib3JkZXItdGVydGlhcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3Itb3ZlcmxheS1hY2NlbnQtMS1saWdodDojMjk2MmZmMjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC0xLW5vcm1hbDojMjk2MmZmNGQ7LS1jb2xvci1vdmVybGF5LWFjY2VudC0xLWJvbGQ6IzI5NjJmZjY2Oy0tY29sb3Itb3ZlcmxheS1hY2NlbnQtMi1saWdodDojMDBhY2MxMjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC0yLW5vcm1hbDojMDBhY2MxNGQ7LS1jb2xvci1vdmVybGF5LWFjY2VudC0yLWJvbGQ6IzAwYWNjMTY2Oy0tY29sb3Itb3ZlcmxheS1hY2NlbnQtMy1saWdodDojOWMyN2IwMjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC0zLW5vcm1hbDojOWMyN2IwNGQ7LS1jb2xvci1vdmVybGF5LWFjY2VudC0zLWJvbGQ6IzljMjdiMDY2Oy0tY29sb3Itb3ZlcmxheS1hY2NlbnQtNC1saWdodDojNWUzNWIxMjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC00LW5vcm1hbDojNWUzNWIxNGQ7LS1jb2xvci1vdmVybGF5LWFjY2VudC00LWJvbGQ6IzVlMzViMTY2Oy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0xLWxpZ2h0OiNjYzJmM2MyNjstLWNvbG9yLW92ZXJsYXktbmVnYXRpdmUtMS1ub3JtYWw6I2NjMmYzYzRkOy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0xLWJvbGQ6I2NjMmYzYzY2Oy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0yLWxpZ2h0OiNlOTFlNjMyNjstLWNvbG9yLW92ZXJsYXktbmVnYXRpdmUtMi1ub3JtYWw6I2U5MWU2MzRkOy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0yLWJvbGQ6I2U5MWU2MzY2Oy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTEtbGlnaHQ6IzYzNjM2MzI2Oy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTEtbm9ybWFsOiM2MzYzNjM0ZDstLWNvbG9yLW92ZXJsYXktbmV1dHJhbC0xLWJvbGQ6IzYzNjM2MzY2Oy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTItbGlnaHQ6IzAwMDAwMDI2Oy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTItbm9ybWFsOiMwMDAwMDA0ZDstLWNvbG9yLW92ZXJsYXktbmV1dHJhbC0yLWJvbGQ6IzAwMDY7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTEtbGlnaHQ6IzA4OTk4MTI2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0xLW5vcm1hbDojMDg5OTgxNGQ7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTEtYm9sZDojMDg5OTgxNjY7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTItbGlnaHQ6IzA4OTk1MDI2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0yLW5vcm1hbDojMDg5OTUwNGQ7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTItYm9sZDojMDg5OTUwNjY7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTMtbGlnaHQ6IzQzYTA0NzI2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0zLW5vcm1hbDojNDNhMDQ3NGQ7LS1jb2xvci1vdmVybGF5LXBvc2l0aXZlLTMtYm9sZDojNDNhMDQ3NjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMS1saWdodDojZmY5ODAwMjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMS1ub3JtYWw6I2ZmOTgwMDRkOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTEtYm9sZDojZmY5ODAwNjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMi1saWdodDojZmRkODM1MjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMi1ub3JtYWw6I2ZkZDgzNTRkOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTItYm9sZDojZmRkODM1NjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMy1saWdodDojZmY5ODAwMjY7LS1jb2xvci1vdmVybGF5LXdhcm5pbmctMy1ub3JtYWw6I2ZmOTgwMDRkOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTMtYm9sZDojZmY5ODAwNjY7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMy1saWdodDojNjM2MzYzMjY7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMy1ub3JtYWw6IzYzNjM2MzRkOy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTMtYm9sZDojNjM2MzYzNjY7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbWludXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtODAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1taW51czItZGVmYXVsdDp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLW1pbnVzMS1kZWZhdWx0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTMwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtemVyby1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yNTApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLXBsdXMxLWRlZmF1bHQ6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTMwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtcGx1czItZGVmYXVsdDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1wbHVzMy1kZWZhdWx0OnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi03MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLWxpZ2h0LW5lZ2F0aXZlLXhsOnZhcigtLWNvbG9yLXJpcGUtcmVkLTcwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtbmVnYXRpdmUtbDp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLWxpZ2h0LW5lZ2F0aXZlLW06dmFyKC0tY29sb3ItcmlwZS1yZWQtMzAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1uZWdhdGl2ZS1zOnZhcigtLWNvbG9yLXJpcGUtcmVkLTEwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtbmV1dHJhbDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtcG9zaXRpdmUteGw6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTcwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtcG9zaXRpdmUtbDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1wb3NpdGl2ZS1tOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi0zMDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLWxpZ2h0LXBvc2l0aXZlLXM6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTEwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtbWludXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS1hNzAwKTstLWNvbG9yLWhlYXRtYXAtY29sb3JibGluZC1taW51czItZGVmYXVsdDojZGU4MTJmOy0tY29sb3ItaGVhdG1hcC1jb2xvcmJsaW5kLW1pbnVzMS1kZWZhdWx0OnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNDAwKTstLWNvbG9yLWhlYXRtYXAtY29sb3JibGluZC16ZXJvLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtcGx1czEtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtcGx1czItZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtcGx1czMtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtbWludXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtbWludXMyLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtbWludXMxLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTM1MCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtemVyby1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MDApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLXBsdXMxLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTYwMCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtcGx1czItZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWhlYXRtYXAtbW9ub2Nocm9tZS1wbHVzMy1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItaGVhdG1hcC1wb3NpdGl2ZS1vbmx5LXYxLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjItZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjMtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjUtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTgwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjYtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLWE3MDApOy0tY29sb3ItaGVhdG1hcC1wb3NpdGl2ZS1vbmx5LXY3LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtbmVnYXRpdmUteGw6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS02MDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1uZWdhdGl2ZS1sOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNDAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtbmVnYXRpdmUtbTp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTIwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LW5lZ2F0aXZlLXM6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS0xMDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1uZXV0cmFsOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtcG9zaXRpdmUteGw6dmFyKC0tY29sb3Itc2t5LWJsdWUtNjAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtcG9zaXRpdmUtbDp2YXIoLS1jb2xvci1za3ktYmx1ZS00MDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1wb3NpdGl2ZS1tOnZhcigtLWNvbG9yLXNreS1ibHVlLTIwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LXBvc2l0aXZlLXM6dmFyKC0tY29sb3Itc2t5LWJsdWUtMTAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNTApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLXhzOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLXM6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS0xMDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLW06dmFyKC0tY29sb3ItdGFuLW9yYW5nZS0zMDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLWw6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLXhsOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNzAwKTstLWNvbG9yLWhlYXRtYXAtdGFuLW9yYW5nZS14eGw6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS05MDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLWJvcmRlcjp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTkwMCk7LS1jb2xvci1oZWF0bWFwLXNreS1ibHVlLXhzOnZhcigtLWNvbG9yLXNreS1ibHVlLTUwKTstLWNvbG9yLWhlYXRtYXAtc2t5LWJsdWUtczp2YXIoLS1jb2xvci1za3ktYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS1tOnZhcigtLWNvbG9yLXNreS1ibHVlLTMwMCk7LS1jb2xvci1oZWF0bWFwLXNreS1ibHVlLWw6dmFyKC0tY29sb3Itc2t5LWJsdWUtNTAwKTstLWNvbG9yLWhlYXRtYXAtc2t5LWJsdWUteGw6dmFyKC0tY29sb3Itc2t5LWJsdWUtNzAwKTstLWNvbG9yLWhlYXRtYXAtc2t5LWJsdWUteHhsOnZhcigtLWNvbG9yLXNreS1ibHVlLTkwMCk7LS1jb2xvci1oZWF0bWFwLXNreS1ibHVlLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS1ib3JkZXI6dmFyKC0tY29sb3Itc2t5LWJsdWUtOTAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLXhzOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS01MCk7LS1jb2xvci1oZWF0bWFwLWRlZXAtYmx1ZS1zOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC1kZWVwLWJsdWUtbTp2YXIoLS1jb2xvci1kZWVwLWJsdWUtMzAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLWw6dmFyKC0tY29sb3ItZGVlcC1ibHVlLTQwMCk7LS1jb2xvci1oZWF0bWFwLWRlZXAtYmx1ZS14bDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtNjAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLXh4bDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtOTAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGVhdG1hcC1kZWVwLWJsdWUtYm9yZGVyOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS05MDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLXhzOnZhcigtLWNvbG9yLXR2LWJsdWUtNTApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLXM6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLW06dmFyKC0tY29sb3ItdHYtYmx1ZS0zMDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLWw6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLXhsOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWhlYXRtYXAtdHYtYmx1ZS14eGw6dmFyKC0tY29sb3ItdHYtYmx1ZS05MDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLWJvcmRlcjp2YXIoLS1jb2xvci10di1ibHVlLTkwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmsteHM6dmFyKC0tY29sb3ItYmVycnktcGluay01MCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmstczp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTEwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmstbTp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTMwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmstbDp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTUwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmsteGw6dmFyKC0tY29sb3ItYmVycnktcGluay03MDApOy0tY29sb3ItaGVhdG1hcC1iZXJyeS1waW5rLXh4bDp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTkwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmstZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmstYm9yZGVyOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstOTAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLXhzOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi01MCk7LS1jb2xvci1oZWF0bWFwLWZvcmVzdC1ncmVlbi1zOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi0xMDApOy0tY29sb3ItaGVhdG1hcC1mb3Jlc3QtZ3JlZW4tbTp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tMzAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLWw6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTUwMCk7LS1jb2xvci1oZWF0bWFwLWZvcmVzdC1ncmVlbi14bDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNzAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLXh4bDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tOTAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItaGVhdG1hcC1mb3Jlc3QtZ3JlZW4tYm9yZGVyOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi05MDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi14czp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MCk7LS1jb2xvci1oZWF0bWFwLW1pbnR5LWdyZWVuLXM6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMTAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tbTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0zMDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi1sOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1oZWF0bWFwLW1pbnR5LWdyZWVuLXhsOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTcwMCk7LS1jb2xvci1oZWF0bWFwLW1pbnR5LWdyZWVuLXh4bDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi05MDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tYm9yZGVyOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTkwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUteHM6dmFyKC0tY29sb3ItZ3JhcGVzLXB1cnBsZS01MCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUtczp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTEwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUtbTp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTMwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUtbDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTUwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUteGw6dmFyKC0tY29sb3ItZ3JhcGVzLXB1cnBsZS03MDApOy0tY29sb3ItaGVhdG1hcC1ncmFwZXMtcHVycGxlLXh4bDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTkwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUtZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUtYm9yZGVyOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtOTAwKX1bZGF0YS10aGVtZT1kYXJrXXstLWNvbG9yLWhlYWRlci1iZzp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1ib2R5LWJnOnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWJvZHktc2Vjb25kYXJ5LWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYmctcHJpbWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWJnLXByaW1hcnktaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1iZy1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1iZy1oaWdobGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1iZy1zY3JvbGwtYnV0dG9uczp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWxlZ2FjeS1iZy1zY3JvbGwtYnV0dG9uczp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLWxlZ2FjeS1iZy13aWRnZXQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci10ZXh0LXByaW1hcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci10ZXh0LXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLXRleHQtdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCk7LS1jb2xvci10ZXh0LWRpc2FibGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItYWNjZW50LWNvbnRlbnQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItZGl2aWRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWRpdmlkZXItaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1kaXZpZGVyLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJveC1zaGFkb3c6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1hY3RpdmUtaG92ZXItdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLWFsZXJ0LXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1ib3JkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1ib3JkZXItY2hhdC1maWVsZHM6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1ib3JkZXItaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1ib3JkZXItdGFibGU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1icmFuZDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1icmFuZC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1icmFuZC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS03MDApOy0tY29sb3ItYnV0dG9uLWhvdmVyLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tY29sb3ItY2hhcnQtcGFnZS1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWNvbW1vbi10b29sdGlwLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTYwMCk7LS1jb2xvci1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWRlcHRocmVuZGVyZXItZmlsbC1zdHlsZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKTstLWNvbG9yLWRlcHRocmVuZGVyZXItc3Ryb2tlLXN0eWxlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItZGlzYWJsZWQtYm9yZGVyLWFuZC1jb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWRpc2FibGVkLWlucHV0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItZW1wdHktY29udGFpbmVyLW1lc3NhZ2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1oaWdobGlnaHQtbmV3OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1pY29uczp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWlucHV0LWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItaW5wdXQtdGV4dGFyZWEtcmVhZG9ubHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1pbnB1dC1wbGFjZWhvbGRlci10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3ItaW5wdXQtcHVibGlzaC1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWl0ZW0tYWN0aXZlLWJsdWU6dmFyKC0tY29sb3ItdHYtYmx1ZS1hOTAwKTstLWNvbG9yLWl0ZW0taG92ZXItYWN0aXZlLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItaXRlbS1ob3Zlci1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWl0ZW0taG92ZXItYmx1ZTp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItaXRlbS1zZWxlY3RlZC1ibHVlOnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1pdGVtLWFjdGl2ZS10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItaXRlbS1hY3RpdmUtYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItbGluazp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1saW5rLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWxpbmstYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWxpc3QtaXRlbTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWxpc3QtbnRoLWNoaWxkLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tY29sb3ItbmV3cy1oaWdobGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1wYW5lLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItcGFuZS1zZWNvbmRhcnktYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1wbGFjZWhvbGRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXBvcHVwLW1lbnUtaXRlbS1ob3Zlci1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLXBvcHVwLW1lbnUtc2VwYXJhdG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3ItcHJpbWFyeS1zeW1ib2w6dmFyKC0tY29sb3Itc2t5LWJsdWUtNTAwKTstLWNvbG9yLXJvdy1ob3Zlci1hY3RpdmUtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1zYi1zY3JvbGxiYXItYm9keS1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXNjcmVlbmVyLWRlc2NyaXB0aW9uOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3Itc2VjdGlvbi1zZXBhcmF0b3ItYm9yZGVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3Itc2VhcmNoLWJ1dHRvbi1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLXNlcGFyYXRvci10YWJsZS1jaGF0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3Itc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi03MDApOy0tY29sb3Itc3VjY2Vzcy1ob3Zlcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3Itc3VjY2Vzcy1hY3RpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLXRhZy1hY3RpdmUtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci10YWctaG92ZXItYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci10ZXh0LXJlZ3VsYXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItdG9vbGJhci1idXR0b24tdGV4dC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLXRleHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLXRleHQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi1iYWNrZ3JvdW5kLXNlY29uZGFyeS1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLXRvb2xiYXItYnV0dG9uLWJhY2tncm91bmQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci10b29sYmFyLWJ1dHRvbi1iYWNrZ3JvdW5kLWFjdGl2ZS1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItdG9vbGJhci10b2dnbGUtYnV0dG9uLWJhY2tncm91bmQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXRvb2xiYXItdG9nZ2xlLWJ1dHRvbi1iYWNrZ3JvdW5kLWFjdGl2ZS1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci10b29sYmFyLXRvZ2dsZS1idXR0b24taWNvbjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXRvb2xiYXItaW50ZXJhY3RpdmUtZWxlbWVudC10ZXh0LW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRvb2xiYXItb3BlbmVkLWVsZW1lbnQtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci10b29sYmFyLWRpdmlkZXItYmFja2dyb3VuZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLXBvcHVwLWJhY2tncm91bmQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LWJhY2tncm91bmQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXNlY29uZGFyeS10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MDApOy0tY29sb3ItcG9wdXAtZWxlbWVudC1oaW50LXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTYwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXRleHQtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItcG9wdXAtZWxlbWVudC1iYWNrZ3JvdW5kLWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1wb3B1cC1lbGVtZW50LXRvb2xib3gtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC10ZXh0LWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItcG9wdXAtZWxlbWVudC10b29sYm94LXRleHQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLXBvcHVwLWVsZW1lbnQtdG9vbGJveC1iYWNrZ3JvdW5kLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItcG9wdXAtZWxlbWVudC10b29sYm94LWJhY2tncm91bmQtYWN0aXZlLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLXRvb2x0aXAtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci10di1idXR0b24tY2hlY2tlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLXR2LWRpYWxvZy1jYXB0aW9uOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci10di1kcm9wZG93bi1pdGVtLWhvdmVyLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItdW5kZXJsaW5lZC10ZXh0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3Itd2lkZ2V0LXBhZ2VzLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3Itd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTcwMCk7LS1jb2xvci1mb3JleC1pY29uOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWxpc3QtaXRlbS1hY3RpdmUtYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItbGlzdC1pdGVtLWhvdmVyLWJnOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItbGlzdC1pdGVtLXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1wcmljZS1heGlzLWxhYmVsLWJhY2s6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1wcmljZS1heGlzLWxhYmVsLXRleHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwMCk7LS1jb2xvci1wcmljZS1heGlzLWdlYXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1wcmljZS1heGlzLWdlYXItaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCk7LS1jb2xvci1wcmljZS1heGlzLWhpZ2hsaWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJpZDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1zY3JvbGwtYmc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1zY3JvbGwtYm9yZGVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tY29sb3Itd2lkZ2V0LWJvcmRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLXNjcm9sbC1idXR0b25zLWFycm93OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRyb2wtaW50ZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1jb250cm9sLWludGVudC1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1jb250cm9sLWludGVudC1wcmltYXJ5OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWNvbnRyb2wtaW50ZW50LXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItY29udHJvbC1pbnRlbnQtZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1ncm93aW5nOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1mYWxsaW5nOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1nb3RvLWxhYmVsLWJhY2tncm91bmQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1wcmUtbWFya2V0OnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNjAwKTstLWNvbG9yLXBvc3QtbWFya2V0OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLW5vdGFjY3VyYXRlLW1vZGU6dmFyKC0tY29sb3ItYmVycnktcGluay1hMjAwKTstLWNvbG9yLWRlbGF5LW1vZGU6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS03MDApOy0tY29sb3ItZGVsYXktbW9kZS1iZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTQwMCk7LS1jb2xvci1saXN0LWl0ZW0tYmctaGlnaGxpZ2h0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hOTAwKTstLWNvbG9yLWxpc3QtaXRlbS1iZy1zZWxlY3RlZDp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItbGlzdC1pdGVtLWJnLWhpZ2hsaWdodGVkLWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1saXN0LWl0ZW0tYmctc2VsZWN0ZWQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLXNjcmVlbmVyLWhlYWRlci1iZzp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLXNjcmVlbmVyLWhlYWRlci1iZy1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLW92ZXJsYXk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTk1MCk7LS1jb2xvci1ib29zdC1idXR0b24tY29udGVudC1zZWxlY3RlZDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1ib29zdC1idXR0b24tY29udGVudC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1ib29zdC1idXR0b24tYmctaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1ib29zdC1idXR0b24tYm9yZGVyLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItYm9vc3QtYnV0dG9uLWJvcmRlci1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3IteC10d2l0dGVyLWNvbnRlbnQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY2FyZC1ib3JkZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci1jYXJkLWJvcmRlci1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjAwKTstLWNvbG9yLWJhY2tncm91bmQtc3BlY2lhbC1wcmltYXJ5OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLXN0cm9rZS1zcGVjaWFsLXByaW1hcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1zZWxlY3Rpb24tYmc6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWRlZmF1bHQtZ3JheTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWZlYXR1cmVkLWJyb2tlci1iYWRnZS1iZzp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtYmctaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1mZWF0dXJlZC1icm9rZXItYmFkZ2UtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1iYWNrZ3JvdW5kLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWJhY2tncm91bmQtdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLWRhcmstcHJpbWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJhY2tncm91bmQtZGFyay1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpc2FibGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItYmFja2dyb3VuZC1zcGVjaWFsLXNlY29uZGFyeTp2YXIoLS1jb2xvci10di1ibHVlLWE5MDApOy0tY29sb3ItYmFja2dyb3VuZC1zcGVjaWFsLXRlcnRpYXJ5OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLXBhZ2UtcGxhdGZvcm06dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLXBhZ2UtcHJvbW86dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItYmFja2dyb3VuZC1wYWdlLXNvY2lhbDp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpYWxvZy1zaW1wbGU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1iYWNrZ3JvdW5kLWRpYWxvZy1jb21wbGljYXRlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWJhY2tncm91bmQtZGlhbG9nLXByb21vOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tY29sb3ItYmFja2dyb3VuZC1kaWFsb2ctZnVsbHNjcmVlbjp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1jb250ZW50LWljb25zLXByaW1hcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1jb250ZW50LWljb25zLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWNvbnRlbnQtaWNvbnMtdGVydGlhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1jb250ZW50LXRleHQtcHJvbW8tcHJpbWFyeTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb250ZW50LXRleHQtcHJvbW8tc2Vjb25kYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItY29udGVudC10ZXh0LXByb21vLXRlcnRpYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3ItY29udGVudC10ZXh0LXNvY2lhbC1wcmltYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItY29udGVudC10ZXh0LXNvY2lhbC1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250ZW50LXRleHQtc29jaWFsLXRlcnRpYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItZGl2aWRlci1saW5lLXByaW1hcnktc3BlY2lhbDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1kaXZpZGVyLWxpbmUtc2Vjb25kYXJ5LXNwZWNpYWw6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLWNvbG9yLWRpdmlkZXItbGluZS1wcmltYXJ5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItZGl2aWRlci1saW5lLXNlY29uZGFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWxpbmstcHJpbWFyeS1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtMzAwKTstLWNvbG9yLWxpbmstcHJpbWFyeS1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTQwMCk7LS1jb2xvci1saW5rLXByaW1hcnktYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWxpbmstc2Vjb25kYXJ5LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hMjAwKTstLWNvbG9yLWxpbmstc2Vjb25kYXJ5LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNDAwKTstLWNvbG9yLWxpbmstc2Vjb25kYXJ5LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1zdGF0aWMtd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1zdGF0aWMtZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1zdGF0aWMtaGlnaGxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci1zdGF0aWMtbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLXN0YXRpYy1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtbmV1dHJhbC1ib2xkLWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1naG9zdC1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1naG9zdC1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtZ2hvc3QtYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1naG9zdC1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1naG9zdC1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LWdob3N0LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LWFjY2VudC1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LW5ldXRyYWwtZGVmYXVsdDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LW5ldXRyYWwtaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1zdWNjZXNzLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXByaW1hcnktc3VjY2Vzcy1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LWFjY2VudC1saWdodC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXItZGVmYXVsdDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LWRhbmdlci1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1wcmltYXJ5LWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXF1aWV0LXByaW1hcnktbmV1dHJhbC1ib2xkLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtcXVpZXQtcHJpbWFyeS1hY2NlbnQtbGlnaHQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3MtZGVmYXVsdDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3MtaG92ZXI6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3MtYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtbGlnaHQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtbGlnaHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItYnV0dG9uLWNvbnRlbnQtc2Vjb25kYXJ5LWRhbmdlci1kZWZhdWx0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1idXR0b24tY29udGVudC1zZWNvbmRhcnktZGFuZ2VyLWhvdmVyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1jb250ZW50LXNlY29uZGFyeS1kYW5nZXItYWN0aXZlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudDp2YXIoLS1jb2xvci10cmFuc3BhcmVudCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ib2xkLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci1zdGF0aWMtdHJhbnNwYXJlbnQpOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLWdob3N0LWFjY2VudC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItZ2hvc3QtYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtbGlnaHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtOTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1naG9zdC1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1uZXV0cmFsLWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktc3VjY2Vzcy1kZWZhdWx0OnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTYwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1zdWNjZXNzLWFjdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi03MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWxpZ2h0LWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLWE3MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXByaW1hcnktYWNjZW50LWxpZ2h0LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTkwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1hY2NlbnQtbGlnaHQtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LWRhbmdlci1kZWZhdWx0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcHJpbWFyeS1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1wcmltYXJ5LWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1kZWZhdWx0OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LW5ldXRyYWwtYm9sZC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWJvbGQtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktYWNjZW50LWRlZmF1bHQ6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktbmV1dHJhbC1kZWZhdWx0OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LW5ldXRyYWwtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1zdWNjZXNzLWRlZmF1bHQ6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktc3VjY2Vzcy1ob3Zlcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktc3VjY2Vzcy1hY3RpdmU6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1kZWZhdWx0OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktYWNjZW50LWxpZ2h0LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLWE3MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXF1aWV0LXByaW1hcnktYWNjZW50LWxpZ2h0LWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1kYW5nZXItZGVmYXVsdDp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItcXVpZXQtcHJpbWFyeS1kYW5nZXItaG92ZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1xdWlldC1wcmltYXJ5LWRhbmdlci1hY3RpdmU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ib2xkLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1uZXV0cmFsLWJvbGQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LW5ldXRyYWwtYm9sZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWFjY2VudC1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktYWNjZW50LWhvdmVyOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LW5ldXRyYWwtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LW5ldXRyYWwtaXMtc2VsZWN0ZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LXN1Y2Nlc3MtZGVmYXVsdDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1zdWNjZXNzLWhvdmVyOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTYwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LXN1Y2Nlc3MtYWN0aXZlOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWFjY2VudC1saWdodC1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWFjY2VudC1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLWE3MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1hY2NlbnQtbGlnaHQtYWN0aXZlOnZhcigtLWNvbG9yLXR2LWJsdWUtOTAwKTstLWNvbG9yLWJ1dHRvbi1maWxsX2JvcmRlci1zZWNvbmRhcnktYWNjZW50LWxpZ2h0LWlzLXNlbGVjdGVkOnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWRhbmdlci1kZWZhdWx0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1idXR0b24tZmlsbF9ib3JkZXItc2Vjb25kYXJ5LWRhbmdlci1ob3Zlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItYnV0dG9uLWZpbGxfYm9yZGVyLXNlY29uZGFyeS1kYW5nZXItYWN0aXZlOnZhcigtLWNvbG9yLXJpcGUtcmVkLTcwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWJvcmRlci1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWJvcmRlci1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWJvcmRlci1lcnJvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItZm9jdXMtbm90LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWJvcmRlci1mb2N1cy1yZWFkLW9ubHk6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItcmVhZC1vbmx5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItdGV4dC1maWVsZC1ib3JkZXItd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWJvcmRlci13aXRoLXZhbHVlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItdGV4dC1maWVsZC1kZXNjcmlwdGlvbi1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3ItdGV4dC1maWVsZC1kZXNjcmlwdGlvbi1lcnJvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItdGV4dC1maWVsZC1kZXNjcmlwdGlvbi1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci10ZXh0LWZpZWxkLWRlc2NyaXB0aW9uLXdhcm5pbmc6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItdGV4dC1maWVsZC1maWxsLWRlZmF1bHQ6dmFyKC0tY29sb3Itc3RhdGljLXRyYW5zcGFyZW50KTstLWNvbG9yLXRleHQtZmllbGQtZmlsbC1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLXRleHQtZmllbGQtZmlsbC1mb2N1cy1yZWFkLW9ubHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci10ZXh0LWZpZWxkLWZpbGwtcmVhZC1vbmx5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04NTApOy0tY29sb3ItdGV4dC1maWVsZC1sYWJlbC1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3ItdGV4dC1maWVsZC1sYWJlbC1lcnJvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItdGV4dC1maWVsZC1sYWJlbC1saW5rOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtbGFiZWwtc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItdGV4dC1maWVsZC1sYWJlbC13YXJuaW5nOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtbGVmdC1zbG90LWljb24tZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLXRleHQtZmllbGQtbGVmdC1zbG90LWljb24tZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci10ZXh0LWZpZWxkLXBsYWNlaG9sZGVyLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci10ZXh0LWZpZWxkLXBsYWNlaG9sZGVyLWRpc2FibGVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItdGV4dC1maWVsZC1yaWdodC1zbG90LWFycm93cy1iZy1kZWZhdWx0OnZhcigtLWNvbG9yLXN0YXRpYy10cmFuc3BhcmVudCk7LS1jb2xvci10ZXh0LWZpZWxkLXJpZ2h0LXNsb3QtYXJyb3dzLWJnLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItdGV4dC1maWVsZC1yaWdodC1zbG90LWFycm93cy1iZy1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci10ZXh0LWZpZWxkLXJpZ2h0LXNsb3QtaWNvbnMtYW5kLXRleHQtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1pY29ucy1hbmQtdGV4dC1kaXNhYmxlZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1pY29ucy1hbmQtdGV4dC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci10ZXh0LWZpZWxkLXJpZ2h0LXNsb3QtaWNvbnMtYW5kLXRleHQtZXJyb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLXRleHQtZmllbGQtcmlnaHQtc2xvdC1pY29ucy1hbmQtdGV4dC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRleHQtZmllbGQtdmFsdWUtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLWNvbG9yLXRleHQtZmllbGQtdmFsdWUtZGlzYWJsZWQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb3VudGVyLWZpbGwtZGFuZ2VyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1jb3VudGVyLWNvbnRlbnQtZGFuZ2VyOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvdW50ZXItZmlsbC1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItY291bnRlci1jb250ZW50LWFjY2VudDp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb3VudGVyLWZpbGwtYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1jb3VudGVyLWNvbnRlbnQtYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKTstLWNvbG9yLWNvdW50ZXItZmlsbC1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY291bnRlci1jb250ZW50LW5ldXRyYWwtYm9sZDp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1jb3VudGVyLWZpbGwtbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWNvdW50ZXItY29udGVudC1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItY291bnRlci1ib3JkZXItcHJpbWFyeTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1jb3VudGVyLWJvcmRlci1zZWNvbmRhcnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1jb3VudGVyLWJvcmRlci10ZXJ0aWFyeTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtZmlsbF9ib3JkZXItY2hlY2tlZC1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLWNoZWNrZWQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWZpbHRlci1zZWxlY3QtZmlsbF9ib3JkZXItY2hlY2tlZC1hY3RpdmU6dmFyKC0tY29sb3ItdHYtYmx1ZS05MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1jaGVja2VkLWlzT3BlbmVkOnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtY2hlY2tlZC1hY2NlbnQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtY2hlY2tlZC1hY2NlbnQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtYWNjZW50LWFjdGl2ZTp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtY2hlY2tlZC1uZXV0cmFsLWRlZmF1bHQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LWNoZWNrZWQtbmV1dHJhbC1ob3Zlcjp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtY2hlY2tlZC1uZXV0cmFsLWFjdGl2ZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLW5vdC1jaGVja2VkLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLW5vdC1jaGVja2VkLWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1maWxsX2JvcmRlci1ub3QtY2hlY2tlZC1hY3RpdmU6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWZpbGxfYm9yZGVyLW5vdC1jaGVja2VkLWlzT3BlbmVkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItZmlsdGVyLXNlbGVjdC1jb250ZW50LW5vdC1jaGVja2VkLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtbm90LWNoZWNrZWQtaG92ZXI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1maWx0ZXItc2VsZWN0LWNvbnRlbnQtbm90LWNoZWNrZWQtYWN0aXZlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3Itc3ltYm9sLWNoYW5nZS1wb3NpdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi00MDApOy0tY29sb3Itc3ltYm9sLWNoYW5nZS1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3Itc3ltYm9sLWNoYW5nZS1uZWdhdGl2ZTp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3Itc3ltYm9sLXJhdGluZy1wb3NpdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi00MDApOy0tY29sb3Itc3ltYm9sLXJhdGluZy1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3Itc3ltYm9sLXJhdGluZy1uZWdhdGl2ZTp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3Itb3RoZXItdHJhbnNwYXJlbnQ6IzAwMDA7LS1jb2xvci1vdGhlci10cmFuc3BhcmVudC02MDojMDAwOTstLWNvbG9yLXNoYWRvdy1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6IzAwMDY7LS1jb2xvci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3Itc2hhZG93LXNlY29uZGFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3Itb3RoZXItbW9kYWwtYmFja2dyb3VuZDojMDAwMDAwNGQ7LS1jb2xvci1vdGhlci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5OiMwMDA2Oy0tY29sb3Itb3RoZXItc2hhZG93LXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLW90aGVyLXNoYWRvdy1zZWNvbmRhcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLW90aGVyLWJsYWNrLWZyaWRheS1wcmltYXJ5OnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1vdGhlci1ibGFjay1mcmlkYXktc2Vjb25kYXJ5OnZhcigtLWNvbG9yLXJpcGUtcmVkLTQwMCk7LS1jb2xvci1vdGhlci1ibGFjay1mcmlkYXktdGVydGlhcnk6dmFyKC0tY29sb3ItcmlwZS1yZWQtMzAwKTstLWNvbG9yLW90aGVyLWN5YmVyLW1vbmRheS1wcmltYXJ5OnZhcigtLWNvbG9yLXNreS1ibHVlLWE0MDApOy0tY29sb3Itb3RoZXItY3liZXItbW9uZGF5LXNlY29uZGFyeTp2YXIoLS1jb2xvci1za3ktYmx1ZS1hMjAwKTstLWNvbG9yLW90aGVyLWN5YmVyLW1vbmRheS10ZXJ0aWFyeTp2YXIoLS1jb2xvci1za3ktYmx1ZS1hMTAwKTstLWNvbG9yLXNlYXJjaC1oaWdobGlnaHQtcHJpbWFyeS1ub3JtYWw6dmFyKC0tY29sb3ItdHYtYmx1ZS0yMDApOy0tY29sb3Itc2VhcmNoLWhpZ2hsaWdodC1wcmltYXJ5LWludmVyc2U6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItZm9jdXMtb3V0bGluZS1jb2xvci1ibHVlOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWZvY3VzLW91dGxpbmUtY29sb3ItYmxhY2s6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItZm9jdXMtb3V0bGluZS1jb2xvci13aGl0ZTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktYWNjZW50LWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktaW52ZXJzZTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeS1uZXV0cmFsLW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWJhY2tncm91bmQtc2Vjb25kYXJ5LWludmVyc2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1jb2xvci1iYWNrZ3JvdW5kLXRlcnRpYXJ5LWludmVyc2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktYWNjZW50LWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1hY2NlbnQtbm9ybWFsOnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWFjY2VudC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1hY2NlbnQtYWx0MS1ub3JtYWw6dmFyKC0tY29sb3ItZGVlcC1ibHVlLWExMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1hY2NlbnQtYWx0Mi1ib2xkOnZhcigtLWNvbG9yLXNreS1ibHVlLTMwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWRhbmdlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1kYW5nZXItYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1kYW5nZXItZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtYTkwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LWRhbmdlci1saWdodDp2YXIoLS1jb2xvci1yaXBlLXJlZC1hODAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLW5vcm1hbDp2YXIoLS1jb2xvci1yaXBlLXJlZC1hNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktZGFuZ2VyLXNlbWktYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1uZXV0cmFsLWhlYXZ5OnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1ub3JtYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LW5ldXRyYWwtdGhpbjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktbmV1dHJhbC1tZWRpdW06dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktc3VjY2Vzcy1ib2xkOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTcwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3MtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tYTkwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3MtbGlnaHQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tYTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXN1Y2Nlc3Mtbm9ybWFsOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLWE3MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS1zdWNjZXNzLXNlbWktYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS13YXJuaW5nOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXByaW1hcnktd2FybmluZy1leHRyYS1saWdodDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLWE5MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtcHJpbWFyeS13YXJuaW5nLWxpZ2h0OnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtYTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXdhcm5pbmctbm9ybWFsOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtYTcwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1wcmltYXJ5LXdhcm5pbmctc2VtaS1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXF1YXRlcm5hcnktaW52ZXJzZTp2YXIoLS1jb2xvci13aGl0ZSk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50LWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50LWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50LW5vcm1hbDp2YXIoLS1jb2xvci10di1ibHVlLTkwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50OnZhcigtLWNvbG9yLXR2LWJsdWUtYTEwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLXRoaW46dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5OnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LW5ldXRyYWwtaGVhdnk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLW5vcm1hbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLXNlbWktYm9sZDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktbmV1dHJhbC1leHRyYS1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtc2Vjb25kYXJ5LWRhbmdlci1ib2xkOnZhcigtLWNvbG9yLXJpcGUtcmVkLTMwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZWNvbmRhcnktc3VjY2Vzcy1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMzAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXNlY29uZGFyeS13YXJuaW5nLXNlbWktYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTMwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC10ZXJ0aWFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hMTAwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXRlcnRpYXJ5LWFjY2VudC1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC10ZXJ0aWFyeS1hY2NlbnQtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS04MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtdGVydGlhcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWNvbnRhaW5lci1maWxsLXRlcnRpYXJ5LW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci1jb250YWluZXItZmlsbC10ZXJ0aWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tY29sb3ItY29udGFpbmVyLWZpbGwtdGVydGlhcnktbmV1dHJhbC1oZWF2eTp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1xdWluYXJ5LWludmVyc2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1jb250YWluZXItZmlsbC1zZW5hcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtZXh0cmEtYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLWExMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1oZWF2eTp2YXIoLS1jb2xvci1za3ktYmx1ZS01MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW5vcm1hbDp2YXIoLS1jb2xvci10di1ibHVlLTQwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW90aGVyLW5vcm1hbDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtYTEwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYWNjZW50LW90aGVyLWJvbGQ6dmFyKC0tY29sb3Itc2t5LWJsdWUtMzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1hY2NlbnQtb3RoZXItZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtYTEwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktYXR0ZW50aW9uOnZhcigtLWNvbG9yLWJhbmFuYS15ZWxsb3ctODAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXI6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXItYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC0zMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWRhbmdlci1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1kYW5nZXItZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1yaXBlLXJlZC1hNDAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZWdhdGl2ZTp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LWFjY2VudC1leHRyYS1saWdodDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktbmV1dHJhbC1leHRyYS1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWxpZ2h0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWwtbm9ybWFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LW5ldXRyYWwtc2VtaS1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXBvc2l0aXZlOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTQwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktc3VjY2Vzczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXN1Y2Nlc3MtYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0zMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXN1Y2Nlc3MtZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0zMDApOy0tY29sb3ItY29udGVudC1wcmltYXJ5LXN1Y2Nlc3Mtc2VtaS1ib2xkOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTQwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktd2FybmluZzp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1jb250ZW50LXByaW1hcnktd2FybmluZy1ib2xkOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtMzAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS13YXJuaW5nLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS1hNDAwKTstLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS13YXJuaW5nLXNlbWktYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTQwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS00MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LXNlbWktYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtYm9sZDp2YXIoLS1jb2xvci10di1ibHVlLWEyMDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LW90aGVyLXNlbWktYm9sZDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTMwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtb3RoZXItZXh0cmEtYm9sZDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLWExMDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1uZXV0cmFsLWJvbGQ6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LWV4dHJhLWxpZ2h0OnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LW5ldXRyYWwtbWVkaXVtOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktbmV1dHJhbC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS13YXJuaW5nLXNlbWktYm9sZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTMwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS13YXJuaW5nLWJvbGQ6dmFyKC0tY29sb3ItYmFuYW5hLXllbGxvdy03MDApOy0tY29sb3ItY29udGVudC1zZWNvbmRhcnktZGFuZ2VyLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItYmVycnktcGluay1hMjAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3M6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMzAwKTstLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LXN1Y2Nlc3Mtc2VtaS1ib2xkOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTMwMCk7LS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1zdWNjZXNzLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTQwMCk7LS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LWFjY2VudC1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWNvbnRlbnQtdGVydGlhcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApOy0tY29sb3ItY29udGVudC10ZXJ0aWFyeS1zdWNjZXNzLWV4dHJhLWJvbGQ6dmFyKC0tY29sb3ItaWd1YW5hLWdyZWVuLTQwMCk7LS1jb2xvci1jb250ZW50LXRlcnRpYXJ5LWFjY2VudC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItY29udGVudC10ZXJ0aWFyeS1pbnZlcnNlOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWNvbnRlbnQtcXVhdGVybmFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hMTAwKTstLWNvbG9yLWNvbnRlbnQtcXVhdGVybmFyeS1hY2NlbnQtc2VtaS1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtMzAwKTstLWNvbG9yLWNvbnRlbnQtcXVpbmFyeS1hY2NlbnQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0zMDApOy0tY29sb3ItY29udGVudC1xdWluYXJ5LWFjY2VudC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItdHYtYmx1ZS00MDApOy0tY29sb3ItY29udGVudC1xdWluYXJ5LWFjY2VudC1ib2xkOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LWFjY2VudDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1hY2NlbnQtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LWRhbmdlcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktaW52ZXJzZTp2YXIoLS1jb2xvci1ibGFjayk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1uZXV0cmFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1ib2xkOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1leHRyYS1ib2xkOnZhcigtLWNvbG9yLXdoaXRlKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnk6dmFyKC0tY29sb3Itd2hpdGUpOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1saWdodDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LW5ldXRyYWwtbm9ybWFsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02MDApOy0tY29sb3ItYm9yZGVyLXByaW1hcnktbmV1dHJhbC1zZW1pLWJvbGQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTUwMCk7LS1jb2xvci1ib3JkZXItcHJpbWFyeS13YXJuaW5nOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLWJvcmRlci1zZWNvbmRhcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLWNvbG9yLWJvcmRlci1zZWNvbmRhcnktbmV1dHJhbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLWNvbG9yLWJvcmRlci1zZWNvbmRhcnktbmV1dHJhbC1ub3JtYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1ib3JkZXItdGVydGlhcnktaW52ZXJzZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLWNvbG9yLWJvcmRlci1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtbGlnaHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1vdmVybGF5LWFjY2VudC0xLWxpZ2h0OiM0NDhhZmYzMzstLWNvbG9yLW92ZXJsYXktYWNjZW50LTEtbm9ybWFsOiM0NDhhZmY0ZDstLWNvbG9yLW92ZXJsYXktYWNjZW50LTEtYm9sZDojNDQ4YWZmNjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC0yLWxpZ2h0OiMwMGJjZDQzMzstLWNvbG9yLW92ZXJsYXktYWNjZW50LTItbm9ybWFsOiMwMGJjZDQ0ZDstLWNvbG9yLW92ZXJsYXktYWNjZW50LTItYm9sZDojMDBiY2Q0NjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC0zLWxpZ2h0OiNlYTgwZmMzMzstLWNvbG9yLW92ZXJsYXktYWNjZW50LTMtbm9ybWFsOiNlYTgwZmM0ZDstLWNvbG9yLW92ZXJsYXktYWNjZW50LTMtYm9sZDojZWE4MGZjNjY7LS1jb2xvci1vdmVybGF5LWFjY2VudC00LWxpZ2h0OiNiMzg4ZmYzMzstLWNvbG9yLW92ZXJsYXktYWNjZW50LTQtbm9ybWFsOiNiMzg4ZmY0ZDstLWNvbG9yLW92ZXJsYXktYWNjZW50LTQtYm9sZDojYjM4OGZmNjY7LS1jb2xvci1vdmVybGF5LW5lZ2F0aXZlLTEtbGlnaHQ6I2YyMzY0NTMzOy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0xLW5vcm1hbDojZjIzNjQ1NGQ7LS1jb2xvci1vdmVybGF5LW5lZ2F0aXZlLTEtYm9sZDojZjIzNjQ1NjY7LS1jb2xvci1vdmVybGF5LW5lZ2F0aXZlLTItbGlnaHQ6I2ZmNDA4MTMzOy0tY29sb3Itb3ZlcmxheS1uZWdhdGl2ZS0yLW5vcm1hbDojZmY0MDgxNGQ7LS1jb2xvci1vdmVybGF5LW5lZ2F0aXZlLTItYm9sZDojZmY0MDgxNjY7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMS1saWdodDojYjhiOGI4MzM7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMS1ub3JtYWw6I2I4YjhiODRkOy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTEtYm9sZDojYjhiOGI4NjY7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMi1saWdodDojZmZmMzstLWNvbG9yLW92ZXJsYXktbmV1dHJhbC0yLW5vcm1hbDojZmZmZmZmNGQ7LS1jb2xvci1vdmVybGF5LW5ldXRyYWwtMi1ib2xkOiNmZmY2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0xLWxpZ2h0OiMyMmFiOTQzMzstLWNvbG9yLW92ZXJsYXktcG9zaXRpdmUtMS1ub3JtYWw6IzIyYWI5NDRkOy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0xLWJvbGQ6IzIyYWI5NDY2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0yLWxpZ2h0OiMyMmFiNjczMzstLWNvbG9yLW92ZXJsYXktcG9zaXRpdmUtMi1ub3JtYWw6IzIyYWI2NzRkOy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0yLWJvbGQ6IzIyYWI2NzY2Oy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0zLWxpZ2h0OiM0Y2FmNTAzMzstLWNvbG9yLW92ZXJsYXktcG9zaXRpdmUtMy1ub3JtYWw6IzRjYWY1MDRkOy0tY29sb3Itb3ZlcmxheS1wb3NpdGl2ZS0zLWJvbGQ6IzRjYWY1MDY2Oy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTEtbGlnaHQ6I2ZmOTgwMDMzOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTEtbm9ybWFsOiNmZjk4MDA0ZDstLWNvbG9yLW92ZXJsYXktd2FybmluZy0xLWJvbGQ6I2ZmOTgwMDY2Oy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTItbGlnaHQ6I2ZkZDgzNTMzOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTItbm9ybWFsOiNmZGQ4MzU0ZDstLWNvbG9yLW92ZXJsYXktd2FybmluZy0yLWJvbGQ6I2ZkZDgzNTY2Oy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTMtbGlnaHQ6I2ZmOTgwMDFhOy0tY29sb3Itb3ZlcmxheS13YXJuaW5nLTMtbm9ybWFsOiNmZjk4MDAzMzstLWNvbG9yLW92ZXJsYXktd2FybmluZy0zLWJvbGQ6I2ZmOTgwMDRkOy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTMtbGlnaHQ6IzJlMmUyZTY2Oy0tY29sb3Itb3ZlcmxheS1uZXV0cmFsLTMtbm9ybWFsOiMyZTJlMmVjYzstLWNvbG9yLW92ZXJsYXktbmV1dHJhbC0zLWJvbGQ6IzJlMmUyZTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1taW51czMtZGVmYXVsdDp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLW1pbnVzMi1kZWZhdWx0OnZhcigtLWNvbG9yLXJpcGUtcmVkLTcwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbWludXMxLWRlZmF1bHQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtOTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy16ZXJvLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtcGx1czEtZGVmYXVsdDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tOTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1wbHVzMi1kZWZhdWx0OnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi03MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLXBsdXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTUwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtbmVnYXRpdmUteGw6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1uZWdhdGl2ZS1sOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtbmVnYXRpdmUtbTp2YXIoLS1jb2xvci1yaXBlLXJlZC03MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLWxpZ2h0LW5lZ2F0aXZlLXM6dmFyKC0tY29sb3ItcmlwZS1yZWQtOTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1uZXV0cmFsOnZhcigtLWNvbG9yLWJsYWNrKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1wb3NpdGl2ZS1zOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi05MDApOy0tY29sb3ItaGVhdG1hcC1jbGFzc2ljLWxpZ2h0LXBvc2l0aXZlLW06dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTcwMCk7LS1jb2xvci1oZWF0bWFwLWNsYXNzaWMtbGlnaHQtcG9zaXRpdmUtbDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNTAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1wb3NpdGl2ZS14bDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNDAwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWhlYXRtYXAtY2xhc3NpYy1saWdodC1ob3Zlcjp2YXIoLS1jb2xvci10di1ibHVlLTgwMCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtbWludXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS03MDApOy0tY29sb3ItaGVhdG1hcC1jb2xvcmJsaW5kLW1pbnVzMi1kZWZhdWx0OiNhYTYzMjQ7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtbWludXMxLWRlZmF1bHQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS1hODAwKTstLWNvbG9yLWhlYXRtYXAtY29sb3JibGluZC16ZXJvLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1jb2xvci1oZWF0bWFwLWNvbG9yYmxpbmQtcGx1czEtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItaGVhdG1hcC1jb2xvcmJsaW5kLXBsdXMyLWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS04MDApOy0tY29sb3ItaGVhdG1hcC1jb2xvcmJsaW5kLXBsdXMzLWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLW1pbnVzMy1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLW1pbnVzMi1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yNTApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLW1pbnVzMS1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLXplcm8tZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLWNvbG9yLWhlYXRtYXAtbW9ub2Nocm9tZS1wbHVzMS1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tY29sb3ItaGVhdG1hcC1tb25vY2hyb21lLXBsdXMyLWRlZmF1bHQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1jb2xvci1oZWF0bWFwLW1vbm9jaHJvbWUtcGx1czMtZGVmYXVsdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWhlYXRtYXAtcG9zaXRpdmUtb25seS12MS1kZWZhdWx0OnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tY29sb3ItaGVhdG1hcC1wb3NpdGl2ZS1vbmx5LXYyLWRlZmF1bHQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLWNvbG9yLWhlYXRtYXAtcG9zaXRpdmUtb25seS12My1kZWZhdWx0OnZhcigtLWNvbG9yLXR2LWJsdWUtYTcwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjQtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTgwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjUtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTYwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjYtZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1oZWF0bWFwLXBvc2l0aXZlLW9ubHktdjctZGVmYXVsdDp2YXIoLS1jb2xvci10di1ibHVlLTIwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LW5lZ2F0aXZlLXhsOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtYTYwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LW5lZ2F0aXZlLWw6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS1hNzAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtbmVnYXRpdmUtbTp2YXIoLS1jb2xvci10YW4tb3JhbmdlLWE4MDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1uZWdhdGl2ZS1zOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtYTkwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LW5ldXRyYWw6dmFyKC0tY29sb3ItYmxhY2spOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1wb3NpdGl2ZS1zOnZhcigtLWNvbG9yLXNreS1ibHVlLTkwMCk7LS1jb2xvci1oZWF0bWFwLXJhbmdlLWxpZ2h0LXBvc2l0aXZlLW06dmFyKC0tY29sb3Itc2t5LWJsdWUtNzAwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtcG9zaXRpdmUtbDp2YXIoLS1jb2xvci1za3ktYmx1ZS02MDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1wb3NpdGl2ZS14bDp2YXIoLS1jb2xvci1za3ktYmx1ZS01MDApOy0tY29sb3ItaGVhdG1hcC1yYW5nZS1saWdodC1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLWNvbG9yLWhlYXRtYXAtcmFuZ2UtbGlnaHQtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS04MDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLXhzOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtYTkwMCk7LS1jb2xvci1oZWF0bWFwLXRhbi1vcmFuZ2Utczp2YXIoLS1jb2xvci10YW4tb3JhbmdlLWE4MDApOy0tY29sb3ItaGVhdG1hcC10YW4tb3JhbmdlLW06dmFyKC0tY29sb3ItdGFuLW9yYW5nZS1hNzAwKTstLWNvbG9yLWhlYXRtYXAtdGFuLW9yYW5nZS1sOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTAwKTstLWNvbG9yLWhlYXRtYXAtdGFuLW9yYW5nZS14bDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTMwMCk7LS1jb2xvci1oZWF0bWFwLXRhbi1vcmFuZ2UteHhsOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtMjAwKTstLWNvbG9yLWhlYXRtYXAtdGFuLW9yYW5nZS1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWhlYXRtYXAtdGFuLW9yYW5nZS1ib3JkZXI6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS0xMDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS14czp2YXIoLS1jb2xvci1za3ktYmx1ZS05MDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS1zOnZhcigtLWNvbG9yLXNreS1ibHVlLTgwMCk7LS1jb2xvci1oZWF0bWFwLXNreS1ibHVlLW06dmFyKC0tY29sb3Itc2t5LWJsdWUtNzAwKTstLWNvbG9yLWhlYXRtYXAtc2t5LWJsdWUtbDp2YXIoLS1jb2xvci1za3ktYmx1ZS01MDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS14bDp2YXIoLS1jb2xvci1za3ktYmx1ZS0zMDApOy0tY29sb3ItaGVhdG1hcC1za3ktYmx1ZS14eGw6dmFyKC0tY29sb3Itc2t5LWJsdWUtMjAwKTstLWNvbG9yLWhlYXRtYXAtc2t5LWJsdWUtZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1oZWF0bWFwLXNreS1ibHVlLWJvcmRlcjp2YXIoLS1jb2xvci1za3ktYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC1kZWVwLWJsdWUteHM6dmFyKC0tY29sb3ItZGVlcC1ibHVlLTkwMCk7LS1jb2xvci1oZWF0bWFwLWRlZXAtYmx1ZS1zOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS03MDApOy0tY29sb3ItaGVhdG1hcC1kZWVwLWJsdWUtbTp2YXIoLS1jb2xvci1kZWVwLWJsdWUtNTAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLWw6dmFyKC0tY29sb3ItZGVlcC1ibHVlLTQwMCk7LS1jb2xvci1oZWF0bWFwLWRlZXAtYmx1ZS14bDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtMzAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLXh4bDp2YXIoLS1jb2xvci1kZWVwLWJsdWUtMjAwKTstLWNvbG9yLWhlYXRtYXAtZGVlcC1ibHVlLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItaGVhdG1hcC1kZWVwLWJsdWUtYm9yZGVyOnZhcigtLWNvbG9yLWRlZXAtYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLXhzOnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1jb2xvci1oZWF0bWFwLXR2LWJsdWUtczp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tY29sb3ItaGVhdG1hcC10di1ibHVlLW06dmFyKC0tY29sb3ItdHYtYmx1ZS1hNzAwKTstLWNvbG9yLWhlYXRtYXAtdHYtYmx1ZS1sOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLWhlYXRtYXAtdHYtYmx1ZS14bDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCk7LS1jb2xvci1oZWF0bWFwLXR2LWJsdWUteHhsOnZhcigtLWNvbG9yLXR2LWJsdWUtMjAwKTstLWNvbG9yLWhlYXRtYXAtdHYtYmx1ZS1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWhlYXRtYXAtdHYtYmx1ZS1ib3JkZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tY29sb3ItaGVhdG1hcC1iZXJyeS1waW5rLXhzOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstOTAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay1zOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstODAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay1tOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstNzAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay1sOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstNTAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay14bDp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTMwMCk7LS1jb2xvci1oZWF0bWFwLWJlcnJ5LXBpbmsteHhsOnZhcigtLWNvbG9yLWJlcnJ5LXBpbmstMjAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWhlYXRtYXAtYmVycnktcGluay1ib3JkZXI6dmFyKC0tY29sb3ItYmVycnktcGluay0xMDApOy0tY29sb3ItaGVhdG1hcC1mb3Jlc3QtZ3JlZW4teHM6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTkwMCk7LS1jb2xvci1oZWF0bWFwLWZvcmVzdC1ncmVlbi1zOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi04MDApOy0tY29sb3ItaGVhdG1hcC1mb3Jlc3QtZ3JlZW4tbTp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tNzAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLWw6dmFyKC0tY29sb3ItZm9yZXN0LWdyZWVuLTUwMCk7LS1jb2xvci1oZWF0bWFwLWZvcmVzdC1ncmVlbi14bDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tMzAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLXh4bDp2YXIoLS1jb2xvci1mb3Jlc3QtZ3JlZW4tMjAwKTstLWNvbG9yLWhlYXRtYXAtZm9yZXN0LWdyZWVuLWVtcHR5OnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tY29sb3ItaGVhdG1hcC1mb3Jlc3QtZ3JlZW4tYm9yZGVyOnZhcigtLWNvbG9yLWZvcmVzdC1ncmVlbi0xMDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi14czp2YXIoLS1jb2xvci1taW50eS1ncmVlbi1hOTAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tczp2YXIoLS1jb2xvci1taW50eS1ncmVlbi1hODAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tbTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi1hNzAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tbDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi14bDp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0zMDApOy0tY29sb3ItaGVhdG1hcC1taW50eS1ncmVlbi14eGw6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMjAwKTstLWNvbG9yLWhlYXRtYXAtbWludHktZ3JlZW4tZW1wdHk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1jb2xvci1oZWF0bWFwLW1pbnR5LWdyZWVuLWJvcmRlcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0xMDApOy0tY29sb3ItaGVhdG1hcC1ncmFwZXMtcHVycGxlLXhzOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtOTAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS1zOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtODAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS1tOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtNzAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS1sOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtNTAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS14bDp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTMwMCk7LS1jb2xvci1oZWF0bWFwLWdyYXBlcy1wdXJwbGUteHhsOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtMjAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS1lbXB0eTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLWNvbG9yLWhlYXRtYXAtZ3JhcGVzLXB1cnBsZS1ib3JkZXI6dmFyKC0tY29sb3ItZ3JhcGVzLXB1cnBsZS0xMDApOy0tY29sb3ItbWFya2VyLWZsYWdnZWQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLW1hcmtlci1mbGFnZ2VkLWhvdmVyZWQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNjAwKTstLWNvbG9yLWFzazp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3Itc2VsbDp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3ItYnV5OnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLWNvbG9yLW5ldXRyYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci1wcm86dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNDAwKTstLWNvbG9yLXByby1ob3Zlcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItcHJvLXBsdXM6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApOy0tY29sb3ItcHJvLXBsdXMtaG92ZXI6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApOy0tY29sb3ItcHJvLXByZW1pdW06dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItcHJvLXByZW1pdW0taG92ZXI6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS03MDApOy0tY29sb3ItdHJpYWw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1jb2xvci10cmlhbC1ob3Zlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLWNvbG9yLW1vZDp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApOy0tY29sb3ItbW9kLWhvdmVyOnZhcigtLWNvbG9yLXJpcGUtcmVkLTYwMCk7LS1jb2xvci1hZDp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1jb2xvci1icm9rZXItZmVhdHVyZWQ6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tNDAwKTstLWNvbG9yLWJyb2tlci1mZWF0dXJlZC1ob3Zlcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi02MDApOy0tY29sb3ItYWxlcnQtc3RhdHVzLWFjdGl2ZTp2YXIoLS1jb2xvci1taW50eS1ncmVlbi01MDApOy0tY29sb3ItYWxlcnQtc3RhdHVzLXN0b3BwZWQ6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLWNvbG9yLWFsZXJ0LXN0YXR1cy10cmlnZ2VyZWQ6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tY29sb3ItY29tbW9uLXRvb2x0aXAtdGV4dDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLXJlcGxheS1kYXRhLW1vZGU6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKTstLWNvbG9yLWxlZ2FjeS1zdWNjZXNzOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTMwMCk7LS1jb2xvci1jb2xsYXBzZS10YWJzLWJvcmRlcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLWNvbG9yLXNpdGUtd2lkZ2V0LWhvdmVyOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCk7LS1jb2xvci1hdHRlbnRpb246dmFyKC0tY29sb3ItYmFuYW5hLXllbGxvdy03MDApfQ=="}},"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":"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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.242Z","timestamp":1785126257242,"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-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/ticker-tape/?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 04:24:17 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: 365e7bc09c69e8febacf6ebef9bc4ba2\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-27T07:05:45.415905Z","times_seen":3613,"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":"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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.261Z","timestamp":1785126257261,"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-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/ticker-tape/?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 04:24:17 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: 73f2e58516b1c61802f3b32cea19c363\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-27T07:05:45.358764Z","times_seen":949,"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":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":"s3-symbol-logo.tradingview.com/crypto/XTVCPROM.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.744Z","timestamp":1785126258744,"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 /crypto/XTVCPROM.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 04:24:18 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: \"83c879fe02e3fabf95d721df8f75d667\"\r\nlast-modified: Wed, 13 Mar 2024 06:25:21 GMT\r\ncdn-cachedat: 08/09/2025 14:39:09\r\nx-amz-id-2: 9ZIIIzDa6cTZ1UO+qTWlKRGi5WtTUxkUtsapxqHhlZeqomb2daRPRVMMvJayIpS4wcQ8nGLJC8A=\r\nx-amz-request-id: M8121PC759ZKCB57\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 83c879fe02e3fabf95d721df8f75d667\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: a182f94388bfef70ea68354ca7a6b43d\r\ncdn-cache: REVALIDATED\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":593,"size_decoded":1339,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (593), with no line terminators","md5":"83c879fe02e3fabf95d721df8f75d667","sha1":"b8fc9906c766ec1783584dc5fe531fc16414c858","sha256":"866263eec0ca09cef667db1ad7734aa951458aff9512d9b2cf1d0cd0c20453cc","sha512":"db4f0a72f252449aaf16dae65f7b7dd0e8faa032ca115f9a549345642660c30f6bef5257a033877e3c975ed34674454044d292035652fdfcb9ff8c30ee36f9bf","ssdeep":"","tlshash":"f5f00cafe63928aed006c6a8e4a004243a0d60e2f18692fda098a75e20006c39808a98","first_seen":"2025-11-26T02:34:03.225543Z","last_seen":"2026-07-27T05:33:43.572549Z","times_seen":22,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYWYwZ2ExaHg0KSIgZD0iTTAgMGgxOHYxOEgweiIvPjxwYXRoIGQ9Ik02LjU4IDkuNTggMTMgNS4zM0E0LjE4IDQuMTggMCAwIDAgOS45NSA0QzcuNzcgNCA2IDUuNjQgNiA3LjY2YzAgLjY4LjIgMS4zNC41OCAxLjkyWm01Ljg1LTMuMTdjLjM4LjU4LjU3IDEuMjUuNTcgMS45NGEzLjcgMy43IDAgMCAxLTEuNTYgMi45OGMtMS4zLjk5LTUuNDMgMy42Ny01LjQzIDMuNjdMNiAxMC44MmwuMTctLjExTDkuMyA4LjU1bDMuMTItMi4xNFoiIGZpbGw9IiNGM0YzRjMiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImFmMGdhMWh4NCIgeDE9IjE2LjA0IiB5MT0iMS44NCIgeDI9IjEuMzgiIHkyPSIxNC4wMyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiNFQzVBOEIiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNFMkQxN0EiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4="}},"time_used":132,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":132,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/images/logo.png","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.078Z","timestamp":1785126256078,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/logo.png HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/png\r\ncontent-length: 9470\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-24fe\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":9470,"size_decoded":9719,"mime_type":"image/png","magic":"PNG image data, 389 x 79, 8-bit/color RGBA, non-interlaced","md5":"3a1ce4fccfa38f37e4d27981278cb650","sha1":"8941ac589bdbe7ec8d3a79a9640bc479ee23dc75","sha256":"7b8f67b1399573132233bd56f6144b98ffc1ec758b75d2c6e140ac419d0ec73e","sha512":"b30cb067456d271773f0f18bebdfd6cf0f077162906659c657b5764534aa4b10880fc83b8c2c77a4dd6f3e25bf8409b7acce2eadac0b2b9cb73991d096b414f1","ssdeep":"192:oYedhtJwtT4gZoah3sHD+HRKqZuNrPtqOd2BH:oYedLJwbnTHkqAhPtqOdaH","tlshash":"d212c0596c01880d4ee597f2bd5b36ca0ec1da4f22cf61983676ce050a98218f5f917a","first_seen":"2026-07-27T03:36:45.038549Z","last_seen":"2026-07-27T04:25:12.755659Z","times_seen":2,"resource_available":false,"data":"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"}},"time_used":348,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":327,"receive":21,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/images/slider/slider.png","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.085Z","timestamp":1785126256085,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/slider/slider.png HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/png\r\ncontent-length: 39200\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-9920\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":39200,"size_decoded":39450,"mime_type":"image/png","magic":"PNG image data, 600 x 416, 8-bit/color RGBA, non-interlaced","md5":"6bd2b752e49511ca245c22812bc53d0e","sha1":"127890f91fdd0f67331f7576ad6819b4e651c556","sha256":"07e3badc647371bca51e141c77e50b1c123387986b4975f74aec10f385f3f99d","sha512":"e6f34b80af5e574001137c82a1223218d89a7aad23d0502c864a7193304f799b7953eed0a109ea7deea469a035808c282d902e0f7384493470a8cb6b07ef1cac","ssdeep":"768:435SQXs1aQ1btOgfULFrpSz3cmqvgKGZcq6hpIt63gfe0J7SKQn7u:BR1dZtOyMFrpSTuY4063GN/Qn6","tlshash":"5b03027ca050e1b3ccfa0d8265e392e12e25e9b1d6d596804309c1eeb95fd4e9371ad1","first_seen":"2023-05-01T20:32:00Z","last_seen":"2026-07-27T04:25:12.756698Z","times_seen":206,"resource_available":false,"data":"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"}},"time_used":341,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":320,"receive":21,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","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/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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.259Z","timestamp":1785126257259,"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-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/ticker-tape/?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 04:24:17 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: 0a161a6f22fae5fbc9453a9994ed263c\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-27T07:05:45.412508Z","times_seen":989,"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":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":"s3-symbol-logo.tradingview.com/crypto/XTVCUSDT.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.453Z","timestamp":1785126258453,"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 /crypto/XTVCUSDT.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 04:24:18 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: \"bbb4f6e32f1ca29b50e4d51d2ff90533\"\r\nlast-modified: Fri, 18 Nov 2022 08:44:56 GMT\r\ncdn-cachedat: 08/14/2025 09:10:44\r\nx-amz-id-2: PXmOOGMViiNnoCdov+1hcTtPGCBToIyWP2JF1AB05/93zZCqs0jn+SDzYbEK5GovJviIM1DiIws=\r\nx-amz-request-id: 2P81BRT97X8XR56M\r\nx-amz-meta-hash: bbb4f6e32f1ca29b50e4d51d2ff90533\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: e82b457e12d2b6948e51a88b372bc02b\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":456,"size_decoded":1185,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (456), with no line terminators","md5":"bbb4f6e32f1ca29b50e4d51d2ff90533","sha1":"91813b2f633589f1a54acc07e079f5fb16814ab8","sha256":"c44cfa6a107ce04e8893a36785ee019b6c76f20c03464fc5f652004ba7513f0a","sha512":"6925c29399407f316cfa724f7cfeb17e8ba499ae75288ebcbc16e4b221ae9427474c8e2d0c3e6b23e64f0afbd1205c827414b8ff1442dd90a387794e4535fd24","ssdeep":"","tlshash":"0ff0d46e9704d9cbc504826ae77c907619c620d5f28e1298fca15b5034877db2a04cbd","first_seen":"2023-05-02T00:43:59Z","last_seen":"2026-07-27T07:13:21.521568Z","times_seen":1812,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMwMDkzOTMiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJtMTUgOC41LTYgNi02LTZMNS4yOSA1aDcuNDJMMTUgOC41Wk05LjY3IDl2LS41N2MxLjIuMDYgMS45OC4zIDIuMzMuNi0uNC4zNi0xLjUuNjItMyAuNjJzLTIuNi0uMjYtMy0uNjJjLjM1LS4zIDEuMTItLjU0IDIuMzMtLjZWOWgxLjM0Wk02IDkuMDN2LjVjLjM1LjMgMS4xMi41NCAyLjMzLjZWMTJoMS4zNHYtMS44N2MxLjItLjA2IDEuOTgtLjMgMi4zMy0uNnYtMWMtLjM1LS4zLTEuMTItLjU0LTIuMzMtLjZWN2gxLjgzVjZoLTV2MWgxLjgzdi45M2MtMS4yLjA2LTEuOTguMy0yLjMzLjZ2LjVaIiBmaWxsPSIjZmZmIi8+PC9zdmc+"}},"time_used":53,"timings":{"blocked":-1,"dns":16,"connect":21,"send":0,"wait":4,"receive":-1,"ssl":10},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCUSDC.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.462Z","timestamp":1785126258462,"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 /crypto/XTVCUSDC.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 04:24:18 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: \"67194903ea5699ca4afca1755efe99ff\"\r\nlast-modified: Mon, 19 Feb 2024 08:06:59 GMT\r\ncdn-cachedat: 08/09/2025 14:29:51\r\nx-amz-id-2: CnZHqsGRaC45YUZC97nZK9kVGQs/XSTTu+0FKc8/NQqK+03dBrrFPr8C3vmneLvo4lskI5T6eAA=\r\nx-amz-request-id: S72RTBTE08Q7A781\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 67194903ea5699ca4afca1755efe99ff\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: a15e7b384eae89a045976e42479ebeb5\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":1209,"size_decoded":1563,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1209), with no line terminators","md5":"67194903ea5699ca4afca1755efe99ff","sha1":"b999a1897b094d326f3982d5a25b971c56a463f8","sha256":"e0d059fd6b3f3fdec3289fc79109a3a076b5a4e7b9c8fc6fe497695ee6f8047c","sha512":"c14f54d5b6f8255b329c5495bb9042c6db57ff9fa7eed2a07e2144b6ad56d4e3bd93603d6c3a07021069cfd3f486e9cf38bff4264085c29707122e5123a2545e","ssdeep":"","tlshash":"06214d4a6258ea1c0892d78ecb7f6050334f60caf1ae99ec7ed787a5a40f6d9f505834","first_seen":"2024-12-14T06:34:42.716482Z","last_seen":"2026-07-27T05:33:43.565896Z","times_seen":300,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMyNzc1Q0EiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNOSAxNEE0Ljk5IDQuOTkgMCAxIDAgOSA0YTQuOTkgNC45OSAwIDEgMCAwIDEwWiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik0xMC4zOCA5LjhjMC0uNzQtLjQ0LS45OS0xLjMyLTEuMS0uNjItLjA3LS43NS0uMjQtLjc1LS41MyAwLS4zLjIxLS40OC42My0uNDguMzcgMCAuNTguMTIuNjguNDQuMDMuMDYuMDkuMS4xNS4xaC4zM2MuMDkgMCAuMTUtLjA2LjE1LS4xNXYtLjAyYy0uMDgtLjQ2LS40Ni0uOS0uOTQtLjkzdi0uNDZjMC0uMDktLjA2LS4xNS0uMTYtLjE3aC0uMjhjLS4wOCAwLS4xNi4wNi0uMTguMTd2LjQ2Yy0uNjMuMDgtMS4wNC41Ni0xLjA0IDEuMDggMCAuNjkuNDEuOTYgMS4yOSAxLjA2LjU4LjEuNzcuMjMuNzcuNTYgMCAuMzQtLjMuNTctLjY5LjU3LS41NCAwLS43My0uMjMtLjgtLjU1LS4wMS0uMDgtLjA3LS4xMi0uMTQtLjEyaC0uMzVhLjE0LjE0IDAgMCAwLS4xNS4xNXYuMDJjLjA5LjUyLjQyLjg3IDEuMS45OHYuNDZjMCAuMDguMDcuMTQuMTcuMTZoLjNjLjA5IDAgLjE0LS4wNi4xNi0uMTZ2LS40NmMuNjMtLjEgMS4wNi0uNTMgMS4wNi0xLjA5WiIgZmlsbD0iIzI3NzVDQSIvPjxwYXRoIGQ9Ik03Ljg3IDEyYTMuMSAzLjEgMCAwIDEtMS43OS00LjAyYy4zMi0uODguOTQtMS41NCAxLjgtMS44NS4wOC0uMDUuMTItLjEuMTItLjIxdi0uM2MwLS4wOC0uMDQtLjE0LS4xMi0uMTYtLjAzIDAtLjA3IDAtLjA5LjAyYTMuNyAzLjcgMCAwIDAtMi4zNyA0LjcgMy42OSAzLjY5IDAgMCAwIDIuMzcgMi40N2MuMDguMDQuMTcgMCAuMTktLjA5LjAyLS4wMi4wMi0uMDQuMDItLjA4di0uM2MwLS4wNS0uMDYtLjE0LS4xMy0uMThabTIuMzQtNi41MmMtLjA5LS4wNC0uMTcgMC0uMi4wOGwtLjAxLjA5di4yOWMwIC4wOC4wNi4xNi4xMi4yIDEuNjMuNTkgMi40IDIuNCAxLjggNGEyLjk0IDIuOTQgMCAwIDEtMS43OSAxLjg0LjIxLjIxIDAgMCAwLS4xMy4ydi4zYzAgLjA4LjA1LjE1LjEzLjE3LjAyIDAgLjA2IDAgLjA4LS4wMiAxLjk4LS42MyAzLTIuNzEgMi4zNy00LjdhMy43IDMuNyAwIDAgMC0yLjM3LTIuNDVaIiBmaWxsPSIjMjc3NUNBIi8+PC9zdmc+"}},"time_used":42,"timings":{"blocked":-1,"dns":19,"connect":2,"send":0,"wait":4,"receive":-1,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCRLC.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.769Z","timestamp":1785126258769,"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 /crypto/XTVCRLC.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 04:24:18 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: \"3c60c178bbc120838257f49f7f54640b\"\r\nlast-modified: Wed, 08 Sep 2021 09:03:35 GMT\r\ncdn-cachedat: 08/09/2025 14:31:45\r\nx-amz-id-2: KaHs2AJ/vj+QA0NUa2H8rzlsJpVbTk6iwlqQ1tB05a7JO8Zflrrlpoe39t1GCwxG3JgBBk/ms5A=\r\nx-amz-request-id: X97Y0BNBN1HXZTHS\r\nx-amz-meta-hash: 3c60c178bbc120838257f49f7f54640b\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: 7bb0cf427c6fa13d4d30f54834222ef5\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":1371,"size_decoded":1506,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1371), with no line terminators","md5":"3c60c178bbc120838257f49f7f54640b","sha1":"d5350b112cbb289380708d4d8f86d66d21ca715e","sha256":"a8b603a09cc169e4eb2d5e7b9a01719ffad2293159db76d1f52b018a2700db73","sha512":"f7d69665bc893afcb3f4daa494e1d0aeeb79c6219df9ba754b3d6e279fabb4e7f612649dbd96fe5be48e51804d6ea2bd6eccfb249b048144551f595f2227581e","ssdeep":"","tlshash":"762156da2e21612c785e589bff537ee6500ba082b3f7c586599c5b76d08f554f302d20","first_seen":"2026-04-04T10:29:30.231803Z","last_seen":"2026-07-27T05:33:43.665433Z","times_seen":11,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjRjVEMTA3IiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTEyLjU4NiA3LjU0MmMuMDI4LS4wMjguMDgtLjAyOC4xMzEtLjAyOGExLjQ1MyAxLjQ1MyAwIDAxMS40MjYgMS40NzJjMCAuNzUtLjU1NCAxLjM0LTEuMjY2IDEuNDcyaC0uMTZjLS4yNjIgMC0uNTI1LS4wOC0uNzY0LS4yMWEuNDQxLjQ0MSAwIDAwLS4yNjItLjA4LjUxMi41MTIgMCAwMC0uMjkxLjA4Yy0uMTgzLjEwNy0uMjYzLjI5NS0uMjYzLjUwNnYuMjQzYTEuNDQ0IDEuNDQ0IDAgMDEtMS4yNjUgMS4zMTNoLS4xNTVjLS4yNjcgMC0uNTMtLjA4LS43NjQtLjIxNmEuNjMyLjYzMiAwIDAwLS4yOTEtLjA4LjU0LjU0IDAgMDAtLjI5LjA4Yy0uMTg4LjEwOC0uMjYzLjI5Ni0uMjYzLjUxMXYuMjRhMS40NDQgMS40NDQgMCAwMS0xLjI5NCAxLjMxMmgtLjEzMmExLjQ1MyAxLjQ1MyAwIDAxLTEuNDItMS40NzIgMS40NjcgMS40NjcgMCAwMTEuMjY2LTEuNDQ5aC4xNTRjLjI2MyAwIC41My4wOC43NjUuMjE2YS40NC40NCAwIDAwLjI2Mi4wOC41NC41NCAwIDAwLjI5LS4wOGMuMTg4LS4xMDguMjYzLS4yOTUuMjYzLS41MUExLjQ0OSAxLjQ0OSAwIDAxOS41MyA5LjM4OGguMTZjLjI2MiAwIC41MjUuMDguNzY0LjIxNi4xMDguMDUxLjE4Ny4wOC4yOS4wOGEuNTUyLjU1MiAwIDAwLjI5MS0uMDhjLjE4My0uMTA4LjI2My0uMjk1LjI2My0uNTExYTEuNDY4IDEuNDY4IDAgMDExLjI5LTEuNTUyek05LjU1NyA1LjY5Yy4wNTItLjAyMy4wOC0uMDIzLjE2LS4wMjNhMS40NTMgMS40NTMgMCAwMTEuNDIgMS40NzIgMS40NjIgMS40NjIgMCAwMS0xLjI2NSAxLjQ0NGgtLjE1NWMtLjI2NyAwLS41My0uMDgtLjc2NC0uMjExYS40NC40NCAwIDAwLS4yNjgtLjA4LjQ5Ny40OTcgMCAwMC0uMjg2LjA4Yy0uMTg3LjEwOC0uMjY3LjI5NS0uMjY3LjUwNnYuMjQ0YTEuNDQ0IDEuNDQ0IDAgMDEtMS4yOSAxLjMxM2gtLjEzYTEuNDU2IDEuNDU2IDAgMDEtMS40My0xLjQ4MmMwLS43MjIuNTMtMS4zMTMgMS4yNDItMS40MTZoLjE1NWMuMjYyIDAgLjUzLjA4Ljc2NC4yMTFhLjQ0LjQ0IDAgMDAuMjYyLjA4LjUwMi41MDIgMCAwMC4yOTEtLjA4Yy4xODgtLjEwOC4yNjMtLjI5NS4yNjMtLjUwNmExLjQ2NyAxLjQ2NyAwIDAxMS4yOTQtMS41NTdsLjAwNC4wMDV6TTYuNjYgMy44NDNjLjc4MyAwIDEuNDIuNjQ3IDEuNDIgMS40NDlhMS40MyAxLjQzIDAgMDEtMS40MiAxLjQ0NCAxLjQzIDEuNDMgMCAwMS0xLjQyNS0xLjQ0YzAtLjc5Ny42MzctMS40NTMgMS40MjUtMS40NTN6IiBmaWxsPSIjZmZmIi8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCBIRBMO.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.797Z","timestamp":1785126258797,"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 /crypto/XTVCBIRBMO.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 04:24:18 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: \"472c42a0ec63cc95e48ff12a204c3e8e\"\r\nlast-modified: Thu, 11 Jun 2026 10:27:34 GMT\r\nx-amz-id-2: FRV+lzHEW5/nY/ODWUnr/RfEkhm9YsGDYntn2NV99G3xeusAy7pLaNlOytuokWAQZCx0PAV7uACRe3c6vT54kxjFu4M4+z5F\r\nx-amz-request-id: ZBJHAQ1SDMZNC268\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 472c42a0ec63cc95e48ff12a204c3e8e\r\nx-amz-version-id: 82nmC4LeqeXBvB32By71k.UxHZ0xbt1T\r\ncdn-proxyver: 1.55\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 06/11/2026 11:40:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 186e2ee81699df0c0e85b925748a3a7d\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":1896,"size_decoded":1958,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1896), with no line terminators","md5":"472c42a0ec63cc95e48ff12a204c3e8e","sha1":"b421aae6906e12a59e123e3a8effd83046a42783","sha256":"ba5c97d025f5a270079051b2fd7c1eeeae29aeca89f2f7053d7aa1918edafd6d","sha512":"ba553bf7612d0eb33914f303f7a89af050ed7a53014da92cf3334fa9b3fc9d056fa7b2676c27b82b4f2bc75b8c31c594a10767ee76d9eb48e77f4ae5ee069562","ssdeep":"","tlshash":"6c4123366284d76d98c3c69edb33c4a0730f50aaf0ea92cd5cef97f8200b994e953020","first_seen":"2026-03-11T02:08:11.927662Z","last_seen":"2026-07-27T07:05:43.270688Z","times_seen":316,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNNS45MyA2Ljk4Yy40NS4wMy45Mi4yNSAxLjQuNjcuMy4yNS42Ni42OSAxLjEgMS4zLjAyLjAzLjA3LjEuMTYuMTguMjcuMjguNTkuMzUuOTUuMjJhMiAyIDAgMCAwIC4zNS0uMTVjLjMtLjE3LjcyLS40NSAxLjI1LS44MmwuMy0uMjFjLjQyLS4zLjg2LS41IDEuMy0uNTcuMi0uMDMuNC0uMDIuNi4wNS4zMi4xMi41My40My42MS45NWEzLjg2IDMuODYgMCAwIDEtMS42NSAzLjc5IDUuMzMgNS4zMyAwIDAgMS01LjY4LjU0QTQuOTggNC45OCAwIDAgMSA1IDExLjc2YTMuNjcgMy42NyAwIDAgMS0uOTYtMy4xNCAxLjkgMS45IDAgMCAxIC44MS0xLjM4Yy4zMi0uMi42OC0uMyAxLjA4LS4yN1ptMy4xIDQuMDZjLS4yMyAwLS40My4xNi0uNTcuNDgtLjA1LjEtLjAzLjIzLjA3LjM3bC40LjUzYy4wMy4wNS4wNy4wNy4xLjA3LjA0IDAgLjA4LS4wMi4xMS0uMDdsLjQtLjUzYy4xLS4xNC4xMi0uMjYuMDctLjM3LS4xNC0uMzItLjM0LS40OC0uNTctLjQ4Wk02LjYyIDguMTFjLS40My0uMi0uODUtLjIxLTEuMTgtLjAyLS4zMy4yLS41My41OC0uNTYgMS4wNi0uMDMuNDguMSAxLjAyLjM4IDEuNTEuMjkuNDkuNjkuODcgMS4xMiAxLjA4LjQzLjIuODUuMjEgMS4xOC4wMi4zMi0uMi41My0uNTguNTYtMS4wNi4wMy0uNDgtLjEtMS4wMi0uMzktMS41MWEyLjY4IDIuNjggMCAwIDAtMS4xLTEuMDhabTYuMS40Yy0uNDEuMDEtLjg0LjE3LTEuMy40OGwtLjkyLjYxLS4wMi4wMWMtLjE5LjEyLS4zLjIyLS4zNi4yOGEuNjkuNjkgMCAwIDAtLjE0LjRjLS4wMi4yOCAwIC41NC4wNS43NS4wNC4yLjEzLjM2LjI2LjUxLjE0LjE2LjMuMjYuNDguMy40MS4xLjgzIDAgMS4yNi0uM2EyLjkxIDIuOTEgMCAwIDAgMS4xOC0yLjQ4Yy0uMDUtLjM4LS4yMi0uNTctLjUtLjU2Wm0tMS40NiAxLjE1cy4wMiAwIC4wMi4wMmwuMDEuMDN2LjAzYy0uMDguMS0uMTEuMjItLjEuMzRhLjQ5LjQ5IDAgMCAwIC40NS40N2MuMTIuMDEuMjMtLjAyLjM0LS4wOWguMDZsLjAyLjAzdi4wM2EuNzYuNzYgMCAwIDEtLjUxLjY1Yy0uMy4xMS0uNTcuMDQtLjgtLjJhLjcyLjcyIDAgMCAxLS4xNy0uOGMuMS0uMy4zMi0uNDguNjQtLjUyaC4wNFptLTQuNC0uMDNhLjA2LjA2IDAgMCAxIC4wMy4wNXYuMDNjLS4wOC4xLS4xLjIyLS4xLjM0YS40OS40OSAwIDAgMCAuNDYuNDdjLjEyIDAgLjI0LS4wMy4zNC0uMWEuMDYuMDYgMCAwIDEgLjA2IDAgLjA2LjA2IDAgMCAxIC4wMy4wNi43Ni43NiAwIDAgMS0uNTEuNjZjLS4zLjEtLjU3LjA1LS44LS4xOWEuNzIuNzIgMCAwIDEtLjE5LS44Yy4xMS0uMy4zMy0uNDguNjUtLjUzaC4wM1ptNC45NC00Ljk0Yy4xMy0uMTcuMjgtLjIzLjQyLS4xNy4wNy4wMy4xMy4wOS4xOC4xN2wuMDIuMDNhMTIuMzUgMTIuMzUgMCAwIDEgMS40NyAzLjAzYy0uMS0uMTMtLjIxLS4yMi0uMy0uMjdhMS4zMSAxLjMxIDAgMCAwLS44NS0uMTRjLS41LjA4LTEuMDUuMzMtMS42My43NWwtLjEuMDdjLS42LjQzLTEuMDYuNzMtMS4zOC44OC0uMjQuMTItLjQ1LjE0LS42NC4wNS0uMTQtLjA2LS4zLS4yMS0uNDYtLjQ0LS40LS41OC0uNzktMS4wMS0xLjEzLTEuMy0uNC0uMzItLjc3LS41Mi0xLjEyLS41OWExLjk1IDEuOTUgMCAwIDAtMi4xLjgybC0uMDEtLjAxQzQuNSA2LjU0IDUgNS41OCA1LjYgNC42N2MuMS0uMTYuMjUtLjIxLjQzLS4xNC4wNC4wMS4xLjA2LjE2LjE0YTEwNS44NyAxMDUuODcgMCAwIDAgLjY0Ljc4IDcuNzYgNy43NiAwIDAgMSA0LjQtLjA3di0uMDJsLjAzLS4wNC41Mi0uNjRaIi8+PC9zdmc+"}},"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":"besttrader.live/aos/dist/aos.css","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.045Z","timestamp":1785126256045,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /aos/dist/aos.css HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: text/css\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: W/\"65211e70-65c5\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":26053,"size_decoded":1766,"mime_type":"text/css","magic":"ASCII text, with very long lines (26053), with no line terminators","md5":"847da8fca8060ca1a70f976aab1210b9","sha1":"0557d37454b67f42f2cb101e57e5070fb1193570","sha256":"1aa8845fd06e475aefe733d4e55b36a92fcd487975049c8172341827ac9cc03e","sha512":"d5c2bbf1ad68fa1b7625c696ea0f0e5d8c2aa5ebfdfba1aa3a4cfdc6604df625148489dd2adc7020b19660e4a26ce2a32ec11d8f28d9bd80eafdc67035e6a4d3","ssdeep":"768:CMJihoCcZCOud8G8tKS65wqsZQ1G+dM2cl6iCRotsV84sxIKcv4g01UeEPEQEB4D:CMJihoCcZCOud8G8tKS65wqsZCG+dM25","tlshash":"f0c24b5a7a4cd100bf831b4762df2a0859347588e5301986be3f35ca2cd5ce6b973fa9","first_seen":"2023-04-05T07:18:45Z","last_seen":"2026-07-27T07:02:10.576471Z","times_seen":42103,"resource_available":false,"data":"W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjUwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iNTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246NTBtc31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iNTAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSI1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSI1MCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjUwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjUwbXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjEwMCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjEwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjouMXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjEwMCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjEwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxMDAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxMDAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6LjFzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIxNTAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIxNTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246LjE1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTUwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMTUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjE1MCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjE1MCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheTouMTVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIyMDAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIyMDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246LjJzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyMDAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyMDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjAwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMjAwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5Oi4yc31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMjUwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMjUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOi4yNXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjI1MCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjI1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyNTAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyNTAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6LjI1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMzAwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMzAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOi4zc31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMzAwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMzAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjMwMCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjMwMCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheTouM3N9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjM1MCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjM1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjouMzVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIzNTAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIzNTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMzUwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMzUwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5Oi4zNXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjQwMCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjQwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjouNHN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjQwMCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjQwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSI0MDAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSI0MDAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6LjRzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSI0NTAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSI0NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246LjQ1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iNDUwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iNDUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjQ1MCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjQ1MCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheTouNDVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSI1MDAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSI1MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246LjVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSI1MDAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSI1MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iNTAwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iNTAwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5Oi41c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iNTUwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iNTUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOi41NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjU1MCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjU1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSI1NTAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSI1NTAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6LjU1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iNjAwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iNjAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOi42c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iNjAwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iNjAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjYwMCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjYwMCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheTouNnN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjY1MCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjY1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjouNjVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSI2NTAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSI2NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iNjUwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iNjUwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5Oi42NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjcwMCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjcwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjouN3N9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjcwMCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjcwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSI3MDAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSI3MDAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6LjdzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSI3NTAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSI3NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246Ljc1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iNzUwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iNzUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9Ijc1MCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9Ijc1MCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheTouNzVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSI4MDAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSI4MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246LjhzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSI4MDAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSI4MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iODAwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iODAwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5Oi44c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iODUwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iODUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOi44NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9Ijg1MCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9Ijg1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSI4NTAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSI4NTAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6Ljg1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iOTAwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iOTAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOi45c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iOTAwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iOTAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjkwMCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjkwMCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheTouOXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249Ijk1MCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249Ijk1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjouOTVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSI5NTAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSI5NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iOTUwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iOTUwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5Oi45NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjEwMDAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIxMDAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjFzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxMDAwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMTAwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxMDAwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMTAwMCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToxc31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMTA1MCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjEwNTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246MS4wNXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjEwNTAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxMDUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjEwNTAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxMDUwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjEuMDVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIxMTAwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMTEwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoxLjFzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxMTAwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMTEwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxMTAwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMTEwMCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToxLjFzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIxMTUwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMTE1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoxLjE1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTE1MCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjExNTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTE1MCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjExNTAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6MS4xNXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjEyMDAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIxMjAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjEuMnN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjEyMDAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxMjAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjEyMDAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxMjAwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjEuMnN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjEyNTAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIxMjUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjEuMjVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxMjUwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMTI1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxMjUwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMTI1MCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToxLjI1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMTMwMCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjEzMDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246MS4zc31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTMwMCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjEzMDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTMwMCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjEzMDAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6MS4zc31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMTM1MCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjEzNTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246MS4zNXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjEzNTAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxMzUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjEzNTAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxMzUwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjEuMzVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIxNDAwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMTQwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoxLjRzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxNDAwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMTQwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxNDAwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMTQwMCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToxLjRzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIxNDUwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMTQ1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoxLjQ1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTQ1MCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjE0NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTQ1MCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjE0NTAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6MS40NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjE1MDAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIxNTAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjEuNXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjE1MDAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxNTAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjE1MDAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxNTAwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjEuNXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjE1NTAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIxNTUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjEuNTVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxNTUwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMTU1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxNTUwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMTU1MCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToxLjU1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMTYwMCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjE2MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246MS42c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTYwMCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjE2MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTYwMCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjE2MDAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6MS42c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMTY1MCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjE2NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246MS42NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjE2NTAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxNjUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjE2NTAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxNjUwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjEuNjVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIxNzAwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMTcwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoxLjdzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxNzAwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMTcwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxNzAwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMTcwMCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToxLjdzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIxNzUwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMTc1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoxLjc1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTc1MCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjE3NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTc1MCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjE3NTAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6MS43NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjE4MDAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIxODAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjEuOHN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjE4MDAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxODAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjE4MDAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxODAwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjEuOHN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjE4NTAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIxODUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjEuODVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxODUwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMTg1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIxODUwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMTg1MCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToxLjg1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMTkwMCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjE5MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246MS45c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTkwMCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjE5MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMTkwMCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjE5MDAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6MS45c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMTk1MCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjE5NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246MS45NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjE5NTAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxOTUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjE5NTAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIxOTUwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjEuOTVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIyMDAwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMjAwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoyc31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjAwMCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjIwMDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjAwMCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjIwMDAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6MnN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjIwNTAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIyMDUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjIuMDVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyMDUwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMjA1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyMDUwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMjA1MCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToyLjA1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMjEwMCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjIxMDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246Mi4xc31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjEwMCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjIxMDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjEwMCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjIxMDAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6Mi4xc31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMjE1MCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjIxNTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246Mi4xNXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjIxNTAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyMTUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjIxNTAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyMTUwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjIuMTVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIyMjAwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMjIwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoyLjJzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyMjAwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMjIwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyMjAwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMjIwMCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToyLjJzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIyMjUwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMjI1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoyLjI1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjI1MCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjIyNTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjI1MCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjIyNTAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6Mi4yNXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjIzMDAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIyMzAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjIuM3N9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjIzMDAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyMzAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjIzMDAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyMzAwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjIuM3N9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjIzNTAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIyMzUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjIuMzVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyMzUwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMjM1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyMzUwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMjM1MCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToyLjM1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMjQwMCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjI0MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246Mi40c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjQwMCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjI0MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjQwMCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjI0MDAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6Mi40c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMjQ1MCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjI0NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246Mi40NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjI0NTAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyNDUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjI0NTAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyNDUwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjIuNDVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIyNTAwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMjUwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoyLjVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyNTAwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMjUwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyNTAwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMjUwMCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToyLjVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIyNTUwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMjU1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoyLjU1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjU1MCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjI1NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjU1MCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjI1NTAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6Mi41NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjI2MDAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIyNjAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjIuNnN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjI2MDAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyNjAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjI2MDAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyNjAwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjIuNnN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjI2NTAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIyNjUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjIuNjVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyNjUwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMjY1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyNjUwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMjY1MCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToyLjY1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMjcwMCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjI3MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246Mi43c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjcwMCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjI3MDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjcwMCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjI3MDAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6Mi43c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMjc1MCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjI3NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246Mi43NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjI3NTAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyNzUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjI3NTAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyNzUwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjIuNzVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIyODAwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMjgwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoyLjhzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyODAwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMjgwMCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyODAwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMjgwMCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToyLjhzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPSIyODUwIl0sYm9keVtkYXRhLWFvcy1kdXJhdGlvbj0iMjg1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kdXJhdGlvbjoyLjg1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjg1MCJdLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjI4NTAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZGVsYXk6MH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT0iMjg1MCJdLmFvcy1hbmltYXRlLGJvZHlbZGF0YS1hb3MtZGVsYXk9IjI4NTAiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRle3RyYW5zaXRpb24tZGVsYXk6Mi44NXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjI5MDAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIyOTAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjIuOXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjI5MDAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyOTAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjI5MDAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIyOTAwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjIuOXN9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249IjI5NTAiXSxib2R5W2RhdGEtYW9zLWR1cmF0aW9uPSIyOTUwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWR1cmF0aW9uOjIuOTVzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyOTUwIl0sYm9keVtkYXRhLWFvcy1kZWxheT0iMjk1MCJdIFtkYXRhLWFvc117dHJhbnNpdGlvbi1kZWxheTowfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PSIyOTUwIl0uYW9zLWFuaW1hdGUsYm9keVtkYXRhLWFvcy1kZWxheT0iMjk1MCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGV7dHJhbnNpdGlvbi1kZWxheToyLjk1c31bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj0iMzAwMCJdLGJvZHlbZGF0YS1hb3MtZHVyYXRpb249IjMwMDAiXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tZHVyYXRpb246M3N9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjMwMDAiXSxib2R5W2RhdGEtYW9zLWRlbGF5PSIzMDAwIl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLWRlbGF5OjB9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9IjMwMDAiXS5hb3MtYW5pbWF0ZSxib2R5W2RhdGEtYW9zLWRlbGF5PSIzMDAwIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZXt0cmFuc2l0aW9uLWRlbGF5OjNzfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1saW5lYXJdLGJvZHlbZGF0YS1hb3MtZWFzaW5nPWxpbmVhcl0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjI1LC4yNSwuNzUsLjc1KX1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZV0sYm9keVtkYXRhLWFvcy1lYXNpbmc9ZWFzZV0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLWluXSxib2R5W2RhdGEtYW9zLWVhc2luZz1lYXNlLWluXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW59W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2Utb3V0XSxib2R5W2RhdGEtYW9zLWVhc2luZz1lYXNlLW91dF0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLW91dH1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1vdXRdLGJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0XSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW4tb3V0fVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLWluLWJhY2tdLGJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tYmFja10gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjYsLS4yOCwuNzM1LC4wNDUpfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLW91dC1iYWNrXSxib2R5W2RhdGEtYW9zLWVhc2luZz1lYXNlLW91dC1iYWNrXSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMTc1LC44ODUsLjMyLDEuMjc1KX1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1vdXQtYmFja10sYm9keVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1vdXQtYmFja10gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjY4LC0uNTUsLjI2NSwxLjU1KX1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1zaW5lXSxib2R5W2RhdGEtYW9zLWVhc2luZz1lYXNlLWluLXNpbmVdIFtkYXRhLWFvc117dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40NywwLC43NDUsLjcxNSl9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2Utb3V0LXNpbmVdLGJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2Utb3V0LXNpbmVdIFtkYXRhLWFvc117dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4zOSwuNTc1LC41NjUsMSl9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0LXNpbmVdLGJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0LXNpbmVdIFtkYXRhLWFvc117dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40NDUsLjA1LC41NSwuOTUpfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLWluLXF1YWRdLGJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tcXVhZF0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjU1LC4wODUsLjY4LC41Myl9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2Utb3V0LXF1YWRdLGJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2Utb3V0LXF1YWRdIFtkYXRhLWFvc117dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yNSwuNDYsLjQ1LC45NCl9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0LXF1YWRdLGJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0LXF1YWRdIFtkYXRhLWFvc117dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40NTUsLjAzLC41MTUsLjk1NSl9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tY3ViaWNdLGJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tY3ViaWNdIFtkYXRhLWFvc117dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC41NSwuMDg1LC42OCwuNTMpfVtkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLW91dC1jdWJpY10sYm9keVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1vdXQtY3ViaWNdIFtkYXRhLWFvc117dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yNSwuNDYsLjQ1LC45NCl9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0LWN1YmljXSxib2R5W2RhdGEtYW9zLWVhc2luZz1lYXNlLWluLW91dC1jdWJpY10gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQ1NSwuMDMsLjUxNSwuOTU1KX1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1xdWFydF0sYm9keVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1xdWFydF0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjU1LC4wODUsLjY4LC41Myl9W2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2Utb3V0LXF1YXJ0XSxib2R5W2RhdGEtYW9zLWVhc2luZz1lYXNlLW91dC1xdWFydF0gW2RhdGEtYW9zXXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjI1LC40NiwuNDUsLjk0KX1bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1vdXQtcXVhcnRdLGJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0LXF1YXJ0XSBbZGF0YS1hb3Nde3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNDU1LC4wMywuNTE1LC45NTUpfVtkYXRhLWFvc149ZmFkZV1bZGF0YS1hb3NePWZhZGVde29wYWNpdHk6MDt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksdHJhbnNmb3JtfVtkYXRhLWFvc149ZmFkZV1bZGF0YS1hb3NePWZhZGVdLmFvcy1hbmltYXRle29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX1bZGF0YS1hb3M9ZmFkZS11cF17dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwcHgsMCl9W2RhdGEtYW9zPWZhZGUtZG93bl17dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMHB4LDApfVtkYXRhLWFvcz1mYWRlLXJpZ2h0XXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMHB4LDAsMCl9W2RhdGEtYW9zPWZhZGUtbGVmdF17dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMHB4LDAsMCl9W2RhdGEtYW9zPWZhZGUtdXAtcmlnaHRde3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwcHgsMTAwcHgsMCl9W2RhdGEtYW9zPWZhZGUtdXAtbGVmdF17dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMHB4LDEwMHB4LDApfVtkYXRhLWFvcz1mYWRlLWRvd24tcmlnaHRde3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwcHgsLTEwMHB4LDApfVtkYXRhLWFvcz1mYWRlLWRvd24tbGVmdF17dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMHB4LC0xMDBweCwwKX1bZGF0YS1hb3NePXpvb21dW2RhdGEtYW9zXj16b29tXXtvcGFjaXR5OjA7dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5LHRyYW5zZm9ybX1bZGF0YS1hb3NePXpvb21dW2RhdGEtYW9zXj16b29tXS5hb3MtYW5pbWF0ZXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCkgc2NhbGUoMSl9W2RhdGEtYW9zPXpvb20taW5de3RyYW5zZm9ybTpzY2FsZSguNil9W2RhdGEtYW9zPXpvb20taW4tdXBde3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwMHB4LDApIHNjYWxlKC42KX1bZGF0YS1hb3M9em9vbS1pbi1kb3duXXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTAwcHgsMCkgc2NhbGUoLjYpfVtkYXRhLWFvcz16b29tLWluLXJpZ2h0XXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMHB4LDAsMCkgc2NhbGUoLjYpfVtkYXRhLWFvcz16b29tLWluLWxlZnRde3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMDBweCwwLDApIHNjYWxlKC42KX1bZGF0YS1hb3M9em9vbS1vdXRde3RyYW5zZm9ybTpzY2FsZSgxLjIpfVtkYXRhLWFvcz16b29tLW91dC11cF17dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwcHgsMCkgc2NhbGUoMS4yKX1bZGF0YS1hb3M9em9vbS1vdXQtZG93bl17dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMHB4LDApIHNjYWxlKDEuMil9W2RhdGEtYW9zPXpvb20tb3V0LXJpZ2h0XXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMHB4LDAsMCkgc2NhbGUoMS4yKX1bZGF0YS1hb3M9em9vbS1vdXQtbGVmdF17dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMHB4LDAsMCkgc2NhbGUoMS4yKX1bZGF0YS1hb3NePXNsaWRlXVtkYXRhLWFvc149c2xpZGVde3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtfVtkYXRhLWFvc149c2xpZGVdW2RhdGEtYW9zXj1zbGlkZV0uYW9zLWFuaW1hdGV7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9W2RhdGEtYW9zPXNsaWRlLXVwXXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMDAlLDApfVtkYXRhLWFvcz1zbGlkZS1kb3duXXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTAwJSwwKX1bZGF0YS1hb3M9c2xpZGUtcmlnaHRde3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApfVtkYXRhLWFvcz1zbGlkZS1sZWZ0XXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApfVtkYXRhLWFvc149ZmxpcF1bZGF0YS1hb3NePWZsaXBde2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtfVtkYXRhLWFvcz1mbGlwLWxlZnRde3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVkoLTEwMGRlZyl9W2RhdGEtYW9zPWZsaXAtbGVmdF0uYW9zLWFuaW1hdGV7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWSgwKX1bZGF0YS1hb3M9ZmxpcC1yaWdodF17dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWSgxMDBkZWcpfVtkYXRhLWFvcz1mbGlwLXJpZ2h0XS5hb3MtYW5pbWF0ZXt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVZKDApfVtkYXRhLWFvcz1mbGlwLXVwXXt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVYKC0xMDBkZWcpfVtkYXRhLWFvcz1mbGlwLXVwXS5hb3MtYW5pbWF0ZXt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVYKDApfVtkYXRhLWFvcz1mbGlwLWRvd25de3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVgoMTAwZGVnKX1bZGF0YS1hb3M9ZmxpcC1kb3duXS5hb3MtYW5pbWF0ZXt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVYKDApfQ=="}},"time_used":360,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":360,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/images/icon/instruments/graph.svg","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.095Z","timestamp":1785126256095,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/icon/instruments/graph.svg HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/svg+xml\r\ncontent-length: 1019\r\nx-accel-version: 0.01\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"3fb-6071c9ab07c00\"\r\naccept-ranges: bytes\r\nx-powered-by: PleskLin\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":1019,"size_decoded":1299,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"21151d03214bb5c4dce85dacc84ee8c6","sha1":"fe5791498a2a6de29ffbca547cf6c54b296b6ee8","sha256":"8945462b34db4929fcd1abab8245f08fdaaee6f6dbcac537bf53779a1b035df3","sha512":"fed3ee0819f5b289023fc54ce418508e26d975280edbae59ae15ab86581c2c5b1ff699ae38f9515a8970fb6ebc2f035762fd3ace2cf49bd29192e598833f80ce","ssdeep":"","tlshash":"aa1159e401fe0424e446c562f3faf9495a3eb0cf52c508d8b58e6656bf214a71a6f368","first_seen":"2023-05-01T20:32:00Z","last_seen":"2026-07-27T06:05:14.569694Z","times_seen":175,"resource_available":false,"data":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTdweCIgaGVpZ2h0PSIxN3B4IiB2aWV3Qm94PSIwIDAgMTcgMTciIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDUyLjEgKDY3MDQ4KSAtIGh0dHA6Ly93d3cuYm9oZW1pYW5jb2RpbmcuY29tL3NrZXRjaCAtLT4KICAgIDx0aXRsZT5Hcm91cCAyMTwvdGl0bGU+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxnIGlkPSJQYWdlLTEiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSJQcmltZVhCVF92MiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTkwMi4wMDAwMDAsIC0xMTA3LjAwMDAwMCkiPgogICAgICAgICAgICA8ZyBpZD0iR3JvdXAtMjYiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDU4My4wMDAwMDAsIDk3MC4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxnIGlkPSJHcm91cC0yMSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMzE5LjAwMDAwMCwgMTM3LjAwMDAwMCkiIGZpbGwtcnVsZT0ibm9uemVybyI+CiAgICAgICAgICAgICAgICAgICAgPGNpcmNsZSBpZD0iT3ZhbCIgZmlsbD0iIzRBOTBFMiIgY3g9IjguNSIgY3k9IjguNSIgcj0iOC41Ij48L2NpcmNsZT4KICAgICAgICAgICAgICAgICAgICA8cG9seWxpbmUgaWQ9IlBhdGgtMyIgc3Ryb2tlPSIjRkZGRkZGIiBwb2ludHM9IjMgMTIgNi4zNiA3LjE3NjQ3MDU5IDEwLjc3NzI0NjYgOS41ODgyMzUyOSAxMy41IDUiPjwvcG9seWxpbmU+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgICAgICA8ZyBpZD0iUGFnZSI+PC9nPgogICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDxnIGlkPSJQYWdlIj48L2c+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4="}},"time_used":398,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":310,"receive":88,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCBCH.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.545Z","timestamp":1785126258545,"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 /crypto/XTVCBCH.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 04:24:18 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: \"dee69e7d82fe4cfcb31226056e0383a6\"\r\nlast-modified: Fri, 18 Nov 2022 08:44:55 GMT\r\ncdn-cachedat: 08/14/2025 09:11:12\r\nx-amz-id-2: UVtNQFEJ6iEErJfvibYl8RJ0cCUibF3mJ3/POOdL1794d7QyvKdDdq2hWZyO/h5kK7desH1Xzyo=\r\nx-amz-request-id: A647D71RCYRS2RW2\r\nx-amz-meta-hash: dee69e7d82fe4cfcb31226056e0383a6\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: 4ada55700870c89593707dfc9f4dd209\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":688,"size_decoded":1311,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (688), with no line terminators","md5":"dee69e7d82fe4cfcb31226056e0383a6","sha1":"33e52e9b09ccdb4ae5ebd60b3fe3948c94a0709c","sha256":"61f90f13bd5fce18ce9476746781d327554311b21aa21a5717ae73a93bc65bb9","sha512":"b76f9302e5ba7a1004e9247d9c1b7ef2e2af416549bd631e933a40161118662cb8877199621ab6a125d44aa6a21ef963812a0d31d4b2915973accca702561cef","ssdeep":"","tlshash":"290176971614da1c5d03c548ffb408e9300fe8c9a9aee6fa61a2c73565568d6dc10a6c","first_seen":"2023-05-02T00:44:00Z","last_seen":"2026-07-27T07:05:43.259036Z","times_seen":1497,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiM1OEJFOTIiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTEuOTggNS44NmMtLjQ0LTEuMTMtMS41NS0xLjIzLTIuODUtLjk3bC0uNDYtMS42My0xIC4yOS40NiAxLjU2LS43OC4yNC0uNDYtMS41OC0uOTcuMjguNDYgMS42MS0uNjMuMnYtLjAxbC0xLjM1LjM4LjMgMS4wNXMuNzItLjIyLjcxLS4yYy40LS4xMi42LjA4LjcuMjdsLjUyIDEuODMuMS0uMDEtLjEuMDMuNzQgMi41N2MuMDIuMTMgMCAuMzUtLjI4LjQzbC0uNzEuMi4xNCAxLjI0IDEuMjctLjM3LjcxLS4yLjQ3IDEuNjMuOTgtLjI4LS40Ni0xLjYuNzgtLjIzLjQ2IDEuNjEuOTktLjI4LS40Ny0xLjYzYzEuNjItLjU3IDIuNjYtMS4zMiAyLjM2LTIuOTEtLjI0LTEuMjgtLjk5LTEuNjctMS45OS0xLjYzLjQ4LS40NS43LTEuMDYuMzctMS44OVptLS4zNiAzLjg5Yy4zNCAxLjIyLTEuNzggMS42OC0yLjQ1IDEuODdsLS42Mi0yLjE2Yy42Ny0uMiAyLjctLjk4IDMuMDcuMjlabS0xLjMzLTIuOTJjLjMxIDEuMS0xLjQ3IDEuNDgtMi4wMyAxLjY0TDcuNyA2LjVjLjU2LS4xNSAyLjI1LS44MyAyLjU4LjMzWiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCCTC.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.731Z","timestamp":1785126258731,"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 /crypto/XTVCCTC.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 04:24:18 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: \"74f5f6a9272a1888da65814ebc87692d\"\r\nlast-modified: Mon, 19 Feb 2024 08:06:40 GMT\r\ncdn-cachedat: 08/09/2025 14:55:35\r\nx-amz-id-2: EssEPznTuEIH17vdastwa1qPwVUsRL1bq4JNRqjznZvDpot/qo8XpEJRc4pnYRItkyXeEZ3VVko=\r\nx-amz-request-id: 48XE2NBW5ECR19CC\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 74f5f6a9272a1888da65814ebc87692d\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: 72f8972341a9c9521efd5ad7215b7c9a\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":640,"size_decoded":1339,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (640), with no line terminators","md5":"74f5f6a9272a1888da65814ebc87692d","sha1":"5f55dce1f12c28ed831857d7c37c3a956175ca16","sha256":"a96cb7999db750f50aeb4ce45b67436faa5a72e9826ec6c8e037c098b5450afc","sha512":"89d11a0c9e3c42390aad6f2c26536ab11d09985e96924df714391749df11b73593d6e7677bba9f04ac3828a2b0bb2cd2e638c97d501814c7b18543fd154c58f8","ssdeep":"","tlshash":"05f0dd7dce2c983ee906c7b8af5414b2630e70cdf64503a9e1ca5b3e21567cb2c04a24","first_seen":"2024-12-14T06:34:42.711337Z","last_seen":"2026-07-27T07:05:43.291438Z","times_seen":787,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYWZxdXh2Mm9iKSIgZD0iTTAgMGgxOHYxOEgweiIvPjxwYXRoIGQ9Im0xMy42IDcuMDEtMS4wMy4zNkMxMi4wMyA2LjI2IDEwLjY3IDUgOC45NyA1IDYuNDMgNSA1IDcuMjMgNSA5YzAgMS4zMiAxLjE0IDQgMy45NiA0IDIuMTIgMCAzLjQ3LTEuOTcgMy42MS0yLjI3bDEuMDMuMjNBNC45OSA0Ljk5IDAgMSAxIDguOTggNGE1LjA1IDUuMDUgMCAwIDEgNC42MiAzLjAxWiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik05LjYzIDguNUgxNXYxSDkuNjN2LTFaIiBmaWxsPSIjZmZmIi8+PGNpcmNsZSBjeD0iOSIgY3k9IjkiIGZpbGw9IiNmZmYiIHI9IjEiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImFmcXV4djJvYiIgeDE9IjMuMzUiIHkxPSIzLjEyIiB4Mj0iMjEuOSIgeTI9IjI0LjQzIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iIzFBMUUyMSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzA2MDYwQSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjwvc3ZnPg=="}},"time_used":1,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":1,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3.tradingview.com/external-embedding/embed-widget-screener.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://besttrader.live/","date":"2026-07-27T04:24:16.044Z","timestamp":1785126256044,"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-screener.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://besttrader.live/\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 04:24:16 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: \"1d1f8c8f959c6dfe16b5df875e3e6a20\"\r\nlast-modified: Fri, 24 Jul 2026 10:29:26 GMT\r\nx-amz-id-2: z1oVUttC/UDTwi3gP9YBvln7R7QFgsd4g7jFu86Gf4xU8/4TWLGvQfDPmoH3DpF5VQ86I3Q3ZAwZs5xruP5dGQd/8iesC53t\r\nx-amz-request-id: 9YC20ASXZHS8PJ27\r\nx-amz-server-side-encryption: AES256\r\nx-amz-version-id: Dm0spBzLYd1nkuHWUau.UrjMnrL5T__C\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 11:04:04\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 8bf63b5c0152c8607d3bd48011d7ed59\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":13242,"size_decoded":6018,"mime_type":"text/javascript","magic":"JavaScript source, ASCII text, with very long lines (3458)","md5":"1d1f8c8f959c6dfe16b5df875e3e6a20","sha1":"05c8ccc14d187d3f57e68109996ffb71835de5a8","sha256":"362c5302b447aa33060156e760f193574c506b4bcbcce3d720c0422a830da740","sha512":"66818bdae0d6b15dd9e97bd4ab64b6396595b2f685c5643165618cfce9f13699a12db224ea81c51e78e303be467795c01dd25084441a89c487fab2fcfb37882c","ssdeep":"384:gfLuCWoofYkFdjEUjrb2oNf0qIOj26eoVH7MXt:u4MUnb2oJDIOj26eQYXt","tlshash":"f452c6aab660ecbd41d945cbe07a2720b61d3a44b207eca4b5acd4c550edccca531f7e","first_seen":"2026-07-16T20:48:56.348973Z","last_seen":"2026-07-27T07:05:43.395571Z","times_seen":142,"resource_available":true,"data":"KCgpPT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHQodCxlKXtpZihudWxsPT09dCl0aHJvdyBuZXcgRXJyb3IoYCR7ZT8/IlZhbHVlIn0gaXMgbnVsbGApO3JldHVybiB0fWNvbnN0IGU9eyJjb2xvci1jb2xkLWdyYXktMzAwIjoiI0IyQjVCRSIsImNvbG9yLWJyYW5kIjoiIzI5NjJGRiIsImNvbG9yLWJyYW5kLWhvdmVyIjoiIzFFNTNFNSIsImNvbG9yLWJyYW5kLWFjdGl2ZSI6IiMxODQ4Q0MifQo7Y29uc3Qgcj1KU09OLnBhcnNlKCd7ImNyeXB0by1ta3Qtc2NyZWVuZXIiOnsid2lkdGgiOjEwMDAsImhlaWdodCI6NDkwLCJkZWZhdWx0Q29sdW1uIjoib3ZlcnZpZXciLCJtYXJrZXQiOiJjcnlwdG8iLCJzY3JlZW5lcl90eXBlIjoiY3J5cHRvX21rdCIsImRpc3BsYXlDdXJyZW5jeSI6IlVTRCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwiZXZlbnRzIjp7IndpZHRoIjo1MTAsImhlaWdodCI6NjAwLCJpc1RyYW5zcGFyZW50IjpmYWxzZSwiaGlkZUltcG9ydGFuY2VJbmRpY2F0b3IiOmZhbHNlLCJhdXRvc2l6ZSI6ZmFsc2V9LCJmb3JleC1jcm9zcy1yYXRlcyI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImN1cnJlbmNpZXMiOlsiRVVSIiwiVVNEIiwiSlBZIiwiR0JQIiwiQ0hGIiwiQVVEIiwiQ0FEIiwiTlpEIl0sImZyYW1lRWxlbWVudElkIjpudWxsLCJhdXRvc2l6ZSI6ZmFsc2V9LCJmb3JleC1oZWF0LW1hcCI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImN1cnJlbmNpZXMiOlsiRVVSIiwiVVNEIiwiSlBZIiwiR0JQIiwiQ0hGIiwiQVVEIiwiQ0FEIiwiTlpEIiwiQ05ZIl0sImZyYW1lRWxlbWVudElkIjpudWxsLCJhdXRvc2l6ZSI6ZmFsc2V9LCJob3RsaXN0cyI6eyJ3aWR0aCI6NDAwLCJoZWlnaHQiOjYwMCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImRhdGVSYW5nZSI6IjEyTSIsInNob3dTeW1ib2xMb2dvIjpmYWxzZX0sIm1hcmtldC1vdmVydmlldyI6eyJ3aWR0aCI6NDAwLCJoZWlnaHQiOjY1MCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImRhdGVSYW5nZSI6IjEyTSIsInNob3dTeW1ib2xMb2dvIjp0cnVlfSwibWFya2V0LXF1b3RlcyI6eyJ3aWR0aCI6NzcwLCJoZWlnaHQiOjQ1MCwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsInNob3dTeW1ib2xMb2dvIjpmYWxzZX0sIm1pbmktc3ltYm9sLW92ZXJ2aWV3Ijp7IndpZHRoIjozNTAsImhlaWdodCI6MjIwLCJzeW1ib2wiOiJGWDpFVVJVU0QiLCJkYXRlUmFuZ2UiOiIxMk0iLCJpc1RyYW5zcGFyZW50IjpmYWxzZSwiYXV0b3NpemUiOmZhbHNlLCJsYXJnZUNoYXJ0VXJsIjoiIn0sInN5bWJvbC1vdmVydmlldyI6eyJ3aWR0aCI6MTAwMCwiaGVpZ2h0Ijo1MDAsInN5bWJvbHMiOltbIkFwcGxlIiwiQUFQTHwxRCJdLFsiR29vZ2xlIiwiR09PR0x8MUQiXSxbIk1pY3Jvc29mdCIsIk1TRlR8MUQiXV0sImF1dG9zaXplIjpmYWxzZSwiY2hhcnRPbmx5IjpmYWxzZSwiaGlkZURhdGVSYW5nZXMiOmZhbHNlLCJoaWRlTWFya2V0U3RhdHVzIjpmYWxzZSwiaGlkZVN5bWJvbExvZ28iOmZhbHNlLCJzY2FsZVBvc2l0aW9uIjoicmlnaHQiLCJzY2FsZU1vZGUiOiJOb3JtYWwiLCJmb250RmFtaWx5IjoiLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBUcmVidWNoZXQgTVMsIFJvYm90bywgVWJ1bnR1LCBzYW5zLXNlcmlmIiwiZm9udFNpemUiOiIxMCIsIm5vVGltZVNjYWxlIjpmYWxzZSwiY2hhcnRUeXBlIjoiYXJlYSIsInZhbHVlc1RyYWNraW5nIjoiMCIsImNoYW5nZU1vZGUiOiJwcmljZS1hbmQtcGVyY2VudCJ9LCJhZHZhbmNlZC1jaGFydCI6eyJib2R5SWQiOiJ3aWRnZXQtY29udGFpbmVyIiwiYm9keUNsYXNzZXMiOlsiY2hhcnQtcGFnZSIsInVuc2VsZWN0YWJsZSIsIm9uLXdpZGdldCJdfSwic2NyZWVuZXIiOnsid2lkdGgiOjExMDAsImhlaWdodCI6NTIzLCJkZWZhdWx0Q29sdW1uIjoib3ZlcnZpZXciLCJkZWZhdWx0U2NyZWVuIjoiZ2VuZXJhbCIsIm1hcmtldCI6ImZvcmV4Iiwic2hvd1Rvb2xiYXIiOnRydWUsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwic2luZ2xlLXF1b3RlIjp7IndpZHRoIjozNTAsInN5bWJvbCI6IkZYOkVVUlVTRCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlfSwic3ltYm9sLXByb2ZpbGUiOnsid2lkdGgiOjQ4MCwiaGVpZ2h0Ijo2NTAsInN5bWJvbCI6Ik5BU0RBUTpBQVBMIiwiaXNUcmFuc3BhcmVudCI6ZmFsc2V9LCJzeW1ib2wtaW5mbyI6eyJ3aWR0aCI6MTAwMCwic3ltYm9sIjoiTkFTREFROkFBUEwiLCJpc1RyYW5zcGFyZW50IjpmYWxzZX0sInRlY2huaWNhbC1hbmFseXNpcyI6eyJpbnRlcnZhbCI6IjFtIiwid2lkdGgiOjQyNSwiaXNUcmFuc3BhcmVudCI6ZmFsc2UsImhlaWdodCI6NDUwLCJzeW1ib2wiOiJOQVNEQVE6QUFQTCIsInNob3dJbnRlcnZhbFRhYnMiOnRydWUsImRpc3BsYXlNb2RlIjoic2luZ2xlIn0sInRpY2tlci10YXBlIjp7ImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6ImFkYXB0aXZlIiwic2hvd1N5bWJvbExvZ28iOmZhbHNlfSwidGlja2VycyI6eyJpc1RyYW5zcGFyZW50IjpmYWxzZSwic2hvd1N5bWJvbExvZ28iOmZhbHNlfSwiZmluYW5jaWFscyI6eyJ3aWR0aCI6NDgwLCJoZWlnaHQiOjgzMCwiYXV0b3NpemUiOmZhbHNlLCJzeW1ib2wiOiJOQVNEQVE6QUFQTCIsImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6InJlZ3VsYXIiLCJsYXJnZUNoYXJ0VXJsIjoiIn0sInRpbWVsaW5lIjp7IndpZHRoIjo0ODAsImhlaWdodCI6ODMwLCJhdXRvc2l6ZSI6ZmFsc2UsImlzVHJhbnNwYXJlbnQiOmZhbHNlLCJkaXNwbGF5TW9kZSI6InJlZ3VsYXIiLCJmZWVkTW9kZSI6ImFsbF9zeW1ib2xzIn0sInN0b2NrLWhlYXRtYXAiOnsid2lkdGgiOjUwMCwiaGVpZ2h0Ijo1MDAsImF1dG9zaXplIjp0cnVlLCJkYXRhU291cmNlIjoiU1BYNTAwIiwiZXhjaGFuZ2VzIjpbXSwiZ3JvdXBpbmciOiJzZWN0b3IiLCJibG9ja1NpemUiOiJtYXJrZXRfY2FwX2Jhc2ljIiwiYmxvY2tDb2xvciI6ImNoYW5nZSIsImhhc1RvcEJhciI6ZmFsc2UsImlzRGF0YVNldEVuYWJsZWQiOmZhbHNlLCJpc1pvb21FbmFibGVkIjp0cnVlLCJoYXNTeW1ib2xUb29sdGlwIjp0cnVlLCJzeW1ib2xVcmwiOiIiLCJpc01vbm9TaXplIjpmYWxzZX0sImNyeXB0by1jb2lucy1oZWF0bWFwIjp7IndpZHRoIjo1MDAsImhlaWdodCI6NTAwLCJhdXRvc2l6ZSI6dHJ1ZSwiZGF0YVNvdXJjZSI6IkNyeXB0byIsImJsb2NrU2l6ZSI6Im1hcmtldF9jYXBfY2FsYyIsImJsb2NrQ29sb3IiOiIyNGhfY2xvc2VfY2hhbmdlfDUiLCJoYXNUb3BCYXIiOmZhbHNlLCJpc0RhdGFTZXRFbmFibGVkIjpmYWxzZSwiaXNab29tRW5hYmxlZCI6dHJ1ZSwiaGFzU3ltYm9sVG9vbHRpcCI6dHJ1ZSwic3ltYm9sVXJsIjoiIiwiaXNNb25vU2l6ZSI6ZmFsc2V9LCJldGYtaGVhdG1hcCI6eyJ3aWR0aCI6NTAwLCJoZWlnaHQiOjUwMCwiYXV0b3NpemUiOnRydWUsImRhdGFTb3VyY2UiOiJBbGxVU0V0ZiIsImJsb2NrU2l6ZSI6InZvbHVtZSIsImJsb2NrQ29sb3IiOiJjaGFuZ2UiLCJncm91cGluZyI6ImFzc2V0X2NsYXNzIiwiaGFzVG9wQmFyIjpmYWxzZSwiaXNEYXRhU2V0RW5hYmxlZCI6ZmFsc2UsImlzWm9vbUVuYWJsZWQiOnRydWUsImhhc1N5bWJvbFRvb2x0aXAiOnRydWUsInN5bWJvbFVybCI6IiIsImlzTW9ub1NpemUiOmZhbHNlfX0nKQo7dmFyIGksczshZnVuY3Rpb24odCl7bGV0IGU7IWZ1bmN0aW9uKHQpe3QuU2V0U3ltYm9sPSJzZXQtc3ltYm9sIix0LlNldEludGVydmFsPSJzZXQtaW50ZXJ2YWwifShlPXQuTmFtZXN8fCh0Lk5hbWVzPXt9KSl9KGl8fChpPXt9KSksZnVuY3Rpb24odCl7bGV0IGU7IWZ1bmN0aW9uKHQpe3QuU3ltYm9sQ2xpY2s9InR2LXdpZGdldC1zeW1ib2wtY2xpY2siLHQuV2lkZ2V0TG9hZD0idHYtd2lkZ2V0LWxvYWQiLHQuV2lkZ2V0UmVhZHk9InR2LXdpZGdldC1yZWFkeSIsdC5SZXNpemVJZnJhbWU9InR2LXdpZGdldC1yZXNpemUtaWZyYW1lIix0Lk5vRGF0YT0idHYtd2lkZ2V0LW5vLWRhdGEifShlPXQuTmFtZXN8fCh0Lk5hbWVzPXt9KSl9KHN8fChzPXt9KSk7Y29uc3Qgbj0iX19GQUlMX18iLG89Il9fTkhUVFBfXyIsYT1uZXcgUmVnRXhwKCJeaHR0cChzKT86KC8vKT8iKTtmdW5jdGlvbiBsKHQ9bG9jYXRpb24uaHJlZil7Y29uc3QgZT1mdW5jdGlvbih0KXt0cnl7Y29uc3QgZT1uZXcgVVJMKHQpO3JldHVybiBhLnRlc3QoZS5wcm90b2NvbCk/bnVsbDpvfWNhdGNoKHQpe3JldHVybiBufX0odCk7cmV0dXJuIGV8fHQucmVwbGFjZShhLCIiKX1jb25zdCBjPXt3aWRnZXRIb3N0OiJodHRwczovL3d3dy50cmFkaW5ndmlldy13aWRnZXQuY29tIixlbnY6IkJBVFRMRSJ9O2NvbnN0IGg9WyJsb2NhbGUiLCJzeW1ib2wiLCJtYXJrZXQiXTtjbGFzcyBke2NvbnN0cnVjdG9yKHQpe3RoaXMuX2NvcHlyaWdodENvbnRhaW5lcj1udWxsO2NvbnN0IGU9dD8/dGhpcy5fZ2V0U2NyaXB0SW5mbygpO2UmJnRoaXMuX3JlcGxhY2VTY3JpcHQoZSl9aGFzQ29weXJpZ2h0KCl7cmV0dXJuISF0aGlzLl9jb3B5cmlnaHRDb250YWluZXJ9Z2V0IHdpZGdldElkKCl7dGhyb3cgbmV3IEVycm9yKCJNZXRob2QgbXVzdCBiZSBvdmVycmlkZGVuIil9d2lkZ2V0VXRtTmFtZSgpe3JldHVybiB0aGlzLndpZGdldElkfWdldCBkZWZhdWx0U2V0dGluZ3MoKXtyZXR1cm4gclt0aGlzLndpZGdldElkXX1nZXQgcHJvcGVydGllc1RvV29ya1dpdGgoKXtyZXR1cm5bXX1nZXQgdXNlUGFyYW1zRm9yQ29ubmVjdFNvY2tldCgpe3JldHVybiExfWdldCB1c2VTbm93cGxvd1BhZ2VWaWV3KCl7cmV0dXJuITF9dXNlUXVlcnlTdHJpbmdQYXJhbWV0ZXJzKHQpe3JldHVybnt9fWZpbHRlclJhd1NldHRpbmdzKHQpe2NvbnN0IGU9e30scj17Li4udCwuLi50aGlzLnVzZVF1ZXJ5U3RyaW5nUGFyYW1ldGVycyh0KX0saT1PYmplY3Qua2V5cyhyKSxzPW5ldyBTZXQodGhpcy5wcm9wZXJ0aWVzVG9Xb3JrV2l0aCk7cmV0dXJuIGkuZm9yRWFjaCgodD0+e3MuaGFzKHQpJiYoZVt0XT1yW3RdKX0pKSxlfWdldCBzaG91bGRMaXN0ZW5Ub0lmcmFtZVJlc2l6ZSgpe3JldHVybiEwfWdldCBwcm9wZXJ0aWVzVG9Ta2lwSW5IYXNoKCl7cmV0dXJuWyJjdXN0b21lciIsImxvY2FsZSJdfWdldCBwcm9wZXJ0aWVzVG9BZGRUb0dldFBhcmFtcygpe3JldHVyblsibG9jYWxlIl19c2hvdWxkQWRkQ29weXJpZ2h0U3R5bGVzKCl7cmV0dXJuITB9X2RlZmF1bHRXaWR0aCgpe31fZGVmYXVsdEhlaWdodCgpe31fZ2V0U2NyaXB0SW5mbygpe2NvbnN0IHQ9ZG9jdW1lbnQuY3VycmVudFNjcmlwdDtpZighdHx8IXQuc3JjKXJldHVybiBjb25zb2xlLmVycm9yKCJDb3VsZCBub3Qgc2VsZi1yZXBsYWNlIHRoZSBzY3JpcHQsIHdpZGdldCBlbWJlZGRpbmcgaGFzIGJlZW4gYWJvcnRlZCIpLG51bGw7cmV0dXJue3NjcmlwdFVSTDpmdW5jdGlvbih0KXtjb25zdCBlPW5ldyBVUkwodCxkb2N1bWVudC5iYXNlVVJJKTtyZXR1cm57aG9zdDplLmhvc3QscGF0aG5hbWU6ZS5wYXRobmFtZSxocmVmOmUuaHJlZixwcm90b2NvbDplLnByb3RvY29sfX0odC5zcmMpLHNjcmlwdEVsZW1lbnQ6dCxpZDp0LmlkLHJhd1NldHRpbmdzOnRoaXMuX3NjcmlwdENvbnRlbnRUb0pTT04odCksb3ZlcnJpZGVIb3N0OnQuZ2V0QXR0cmlidXRlKCJvdmVycmlkZS1ob3N0Iil9fV9yZXBsYWNlU2NyaXB0KHIpe2NvbnN0e3NjcmlwdFVSTDppLHNjcmlwdEVsZW1lbnQ6bixyYXdTZXR0aW5nczpvLGlkOmEsb3ZlcnJpZGVIb3N0Omx9PXIsaD1sfHxmdW5jdGlvbih0LGU9Yyl7aWYoIkJBVFRMRSI9PT1lLmVudil7aWYod2luZG93LldJREdFVF9IT1NUKXJldHVybiB3aW5kb3cuV0lER0VUX0hPU1Q7aWYodC5ob3N0Lm1hdGNoKC9cLlx3c3RcdypcLlx3diQvaSkpcmV0dXJuYGh0dHBzOi8vJHsocj10Lmhvc3QsaT0zLHIuc3BsaXQoIi4iKS5zbGljZSgtaSkuam9pbigiLiIpKS5yZXBsYWNlKC9eYmV0YTAoPz1cLnhzdGFnaW5nXC50diQpL2ksImJldGEwLXhzdGFnaW5nIikucmVwbGFjZSgvXC4oXHcpdiQvaSwoKHQsZSk9PmAtd2lkZ2V0LiR7ZX12YCkpfWB9dmFyIHIsaTtyZXR1cm4gZS53aWRnZXRIb3N0fShpKSxkPW4ucGFyZW50Tm9kZTtvJiYidGltZWxpbmUiPT09dGhpcy53aWRnZXRVdG1OYW1lKCkmJihvLmxvY2FsZT0iZW4iKTtjb25zdCBnPW4ubm9uY2V8fG4uZ2V0QXR0cmlidXRlKCJub25jZSIpLHU9ZnVuY3Rpb24odCl7aWYobnVsbD09PXQpcmV0dXJuIG51bGw7Y29uc3QgZT10LnF1ZXJ5U2VsZWN0b3IoIiN0cmFkaW5ndmlldy1jb3B5cmlnaHQiKSxyPXQucXVlcnlTZWxlY3RvcigiI3RyYWRpbmd2aWV3LXF1b3RlcyIpLGk9ZXx8cjtyZXR1cm4gaSYmdC5yZW1vdmVDaGlsZChpKSxpfShkKSxtPWQucXVlcnlTZWxlY3RvcigiLnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQiKTt0aGlzLl9jb3B5cmlnaHRDb250YWluZXI9dXx8bTtjb25zdCBwPWQuY2xhc3NMaXN0LmNvbnRhaW5zKCJ0cmFkaW5ndmlldy13aWRnZXQtY29udGFpbmVyIik7dGhpcy5pZnJhbWVDb250YWluZXI9ZCYmcD9kOmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLG8mJih0aGlzLnNldHRpbmdzPXRoaXMuZmlsdGVyUmF3U2V0dGluZ3MobykpLG8mJnRoaXMuX3ZhbGlkYXRlU2V0dGluZ3MoKXx8KGNvbnNvbGUuZXJyb3IoIkludmFsaWQgc2V0dGluZ3MgcHJvdmlkZWQsIGZhbGwgYmFjayB0byBkZWZhdWx0cyIpLHRoaXMuc2V0dGluZ3M9dGhpcy5maWx0ZXJSYXdTZXR0aW5ncyh0aGlzLmRlZmF1bHRTZXR0aW5ncykpCjtjb25zdCBmPSIzMnB4Iix7d2lkdGg6dyxoZWlnaHQ6eX09dGhpcy5zZXR0aW5ncyxTPXZvaWQgMD09PXk/dm9pZCAwOmAke3l9JHtOdW1iZXIuaXNJbnRlZ2VyKHkpPyJweCI6IiJ9YCxiPXZvaWQgMD09PXc/dm9pZCAwOmAke3d9JHtOdW1iZXIuaXNJbnRlZ2VyKHcpPyJweCI6IiJ9YDtpZih2b2lkIDAhPT1iJiYodGhpcy5pZnJhbWVDb250YWluZXIuc3R5bGUud2lkdGg9Yiksdm9pZCAwIT09UyYmKHRoaXMuaWZyYW1lQ29udGFpbmVyLnN0eWxlLmhlaWdodD1TKSx0aGlzLnNob3VsZEFkZENvcHlyaWdodFN0eWxlcygpKXtjb25zdCB0PWZ1bmN0aW9uKCl7Y29uc3QgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzdHlsZSIpO3JldHVybiB0LmlubmVySFRNTD1gXG5cdC50cmFkaW5ndmlldy13aWRnZXQtY29weXJpZ2h0IHtcblx0XHRmb250LXNpemU6IDEzcHggIWltcG9ydGFudDtcblx0XHRsaW5lLWhlaWdodDogMzJweCAhaW1wb3J0YW50O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuXHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcblx0XHQvKiBAbWl4aW4gc2YtcHJvLWRpc3BsYXktZm9udDsgKi9cblx0XHRmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAnVHJlYnVjaGV0IE1TJywgUm9ib3RvLCBVYnVudHUsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1jb2xkLWdyYXktMzAwIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQgYSB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0Y29sb3I6ICR7ZVsiY29sb3ItY29sZC1ncmF5LTMwMCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnRyYWRpbmd2aWV3LXdpZGdldC1jb3B5cmlnaHQgYTp2aXNpdGVkIHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1jb2xkLWdyYXktMzAwIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCBhOmhvdmVyIC5ibHVlLXRleHQge1xuXHRcdGNvbG9yOiAke2VbImNvbG9yLWJyYW5kLWhvdmVyIl19ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudHJhZGluZ3ZpZXctd2lkZ2V0LWNvcHlyaWdodCBhOmFjdGl2ZSAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZC1hY3RpdmUiXX0gIWltcG9ydGFudDtcblx0fVxuXG5cdC50cmFkaW5ndmlldy13aWRnZXQtY29weXJpZ2h0IGE6dmlzaXRlZCAuYmx1ZS10ZXh0IHtcblx0XHRjb2xvcjogJHtlWyJjb2xvci1icmFuZCJdfSAhaW1wb3J0YW50O1xuXHR9XG5cdGAsdH0oKTtnJiZ0LnNldEF0dHJpYnV0ZSgibm9uY2UiLGcpLHRoaXMuaWZyYW1lQ29udGFpbmVyLmFwcGVuZENoaWxkKHQpfWNvbnN0IHY9dGhpcy5oYXNDb3B5cmlnaHQoKT9gY2FsYygxMDAlIC0gJHtmfSlgOiIxMDAlIixfPWxvY2F0aW9uLmhvc3RuYW1lLFQ9bT8id2lkZ2V0X25ldyI6IndpZGdldCIsQz10aGlzLndpZGdldFV0bU5hbWUoKTt0aGlzLnNldHRpbmdzLnV0bV9zb3VyY2U9Xyx0aGlzLnNldHRpbmdzLnV0bV9tZWRpdW09VCx0aGlzLnNldHRpbmdzLnV0bV9jYW1wYWlnbj1DLHRoaXMuX3VwZGF0ZUNvcHlyaWdodEhyZWZQYXJhbXMoXyxULEMpO2NvbnN0IGs9dGhpcy5zZXR0aW5ncy5pZnJhbWVUaXRsZXx8YCR7dGhpcy53aWRnZXRJZC5yZXBsYWNlKCItIiwiICIpfSBUcmFkaW5nVmlldyB3aWRnZXRgLEE9dGhpcy5zZXR0aW5ncy5pZnJhbWVMYW5nfHwiZW4iO3RoaXMuaWZyYW1lPXRoaXMuX2NyZWF0ZUlmcmFtZSh2LGgsYSxrLEEpLHRoaXMuX2FkZENTUEVycm9yTGlzdGVuZXIoaCksZyYmdGhpcy5pZnJhbWUuc2V0QXR0cmlidXRlKCJub25jZSIsZyk7Y29uc3QgRT10aGlzLmlmcmFtZUNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCIudHJhZGluZ3ZpZXctd2lkZ2V0LWNvbnRhaW5lcl9fd2lkZ2V0Iik7aWYoRT8odChFLnBhcmVudEVsZW1lbnQpLnJlcGxhY2VDaGlsZCh0aGlzLmlmcmFtZSxFKSxuPy5yZW1vdmUoKSk6cD8odGhpcy5pZnJhbWVDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5pZnJhbWUpLG4/LnJlbW92ZSgpKToodGhpcy5pZnJhbWVDb250YWluZXIuYXBwZW5kQ2hpbGQodGhpcy5pZnJhbWUpLGQucmVwbGFjZUNoaWxkKHRoaXMuaWZyYW1lQ29udGFpbmVyLHQobikpKSx0aGlzLnNob3VsZExpc3RlblRvSWZyYW1lUmVzaXplJiZmdW5jdGlvbih0LGUscil7Y29uc3QgaT1lLmNvbnRlbnRXaW5kb3c7aWYoIWkpcmV0dXJuIGNvbnNvbGUuZXJyb3IoIkNhbm5vdCBsaXN0ZW4gdG8gdGhlIGV2ZW50IGZyb20gdGhlIHByb3ZpZGVkIGlmcmFtZSwgY29udGVudFdpbmRvdyBpcyBub3QgYXZhaWxhYmxlIiksKCk9Pnt9O2Z1bmN0aW9uIHMoZSl7ZS5zb3VyY2UmJmUuc291cmNlPT09aSYmZS5kYXRhJiZlLmRhdGEubmFtZSYmZS5kYXRhLm5hbWU9PT10JiZyKGUuZGF0YS5kYXRhKX13aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIscywhMSl9KHMuTmFtZXMuUmVzaXplSWZyYW1lLHRoaXMuaWZyYW1lLCh0PT57dC53aWR0aCYmKHRoaXMuaWZyYW1lLnN0eWxlLndpZHRoPXQud2lkdGgrInB4Iix0aGlzLmlmcmFtZUNvbnRhaW5lci5zdHlsZS53aWR0aD10LndpZHRoKyJweCIpLHRoaXMuaWZyYW1lLnN0eWxlLmhlaWdodD10LmhlaWdodCsicHgiLHRoaXMuaWZyYW1lQ29udGFpbmVyLnN0eWxlLmhlaWdodD10LmhlaWdodCsodGhpcy5oYXNDb3B5cmlnaHQoKT8zMjowKSsicHgifSkpLHUpe2NvbnN0IHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dC5zdHlsZS5oZWlnaHQ9Zix0LnN0eWxlLmxpbmVIZWlnaHQ9Zix2b2lkIDAhPT1iJiYodC5zdHlsZS53aWR0aD1iKSx0LnN0eWxlLnRleHRBbGlnbj0iY2VudGVyIix0LnN0eWxlLnZlcnRpY2FsQWxpZ249Im1pZGRsZSIsdC5pbm5lckhUTUw9dS5pbm5lckhUTUwsCnRoaXMuaWZyYW1lQ29udGFpbmVyLmFwcGVuZENoaWxkKHQpfX1faWZyYW1lU3JjQmFzZSh0KXtsZXQgZT1gJHt0fS9lbWJlZC13aWRnZXQvJHt0aGlzLndpZGdldElkfS9gO3JldHVybiB0aGlzLnNldHRpbmdzLmN1c3RvbWVyJiYtMSE9PXRoaXMucHJvcGVydGllc1RvU2tpcEluSGFzaC5pbmRleE9mKCJjdXN0b21lciIpJiYoZSs9YCR7dGhpcy5zZXR0aW5ncy5jdXN0b21lcn0vYCksZX1fdmFsaWRhdGVTZXR0aW5ncygpe2NvbnN0IHQ9KHQsZSk9PntpZih2b2lkIDA9PT10KXJldHVybiBlO2NvbnN0IHI9U3RyaW5nKHQpO3JldHVybi9eXGQrJC8udGVzdChyKT9wYXJzZUludChyKTovXihcZCslfGF1dG8pJC8udGVzdChyKT9yOm51bGx9LGU9dCh0aGlzLnNldHRpbmdzLndpZHRoLHRoaXMuX2RlZmF1bHRXaWR0aCgpKSxyPXQodGhpcy5zZXR0aW5ncy5oZWlnaHQsdGhpcy5fZGVmYXVsdEhlaWdodCgpKTtyZXR1cm4gbnVsbCE9PWUmJm51bGwhPT1yJiYodGhpcy5zZXR0aW5ncy53aWR0aD1lLHRoaXMuc2V0dGluZ3MuaGVpZ2h0PXIsITApfV9zZXRTZXR0aW5nc1F1ZXJ5U3RyaW5nKHQpe2NvbnN0IGU9dGhpcy5wcm9wZXJ0aWVzVG9BZGRUb0dldFBhcmFtcy5maWx0ZXIoKHQ9Pi0xIT09aC5pbmRleE9mKHQpKSkscj1mdW5jdGlvbih0LGUpe2NvbnN0IHI9T2JqZWN0LmNyZWF0ZShPYmplY3QuZ2V0UHJvdG90eXBlT2YodCkpO2Zvcihjb25zdCBpIG9mIGUpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHQsaSkmJihyW2ldPXRbaV0pO3JldHVybiByfSh0aGlzLnNldHRpbmdzLGUpO2Zvcihjb25zdFtlLGldb2YgT2JqZWN0LmVudHJpZXMocikpdC5zZWFyY2hQYXJhbXMuYXBwZW5kKGUsaSl9X3NldEhhc2hTdHJpbmcodCxlKXtjb25zdCByPXt9O2UmJihyLmZyYW1lRWxlbWVudElkPWUpLE9iamVjdC5rZXlzKHRoaXMuc2V0dGluZ3MpLmZvckVhY2goKHQ9PnstMT09PXRoaXMucHJvcGVydGllc1RvU2tpcEluSGFzaC5pbmRleE9mKHQpJiYoclt0XT10aGlzLnNldHRpbmdzW3RdKX0pKSwodGhpcy51c2VQYXJhbXNGb3JDb25uZWN0U29ja2V0fHx0aGlzLnVzZVNub3dwbG93UGFnZVZpZXcpJiYoclsicGFnZS11cmkiXT1sKCkpO09iamVjdC5rZXlzKHIpLmxlbmd0aD4wJiYodC5oYXNoPWVuY29kZVVSSUNvbXBvbmVudChKU09OLnN0cmluZ2lmeShyKSkpfV9zY3JpcHRDb250ZW50VG9KU09OKHQpe2NvbnN0IGU9dC5pbm5lckhUTUwudHJpbSgpO3RyeXtyZXR1cm4gSlNPTi5wYXJzZShlKX1jYXRjaCh0KXtyZXR1cm4gY29uc29sZS5lcnJvcihgV2lkZ2V0IHNldHRpbmdzIHBhcnNlIGVycm9yOiAke3R9YCksbnVsbH19X2NyZWF0ZUlmcmFtZSh0LGUscixpLHMpe2NvbnN0IG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiaWZyYW1lIik7ciYmKG4uaWQ9ciksdGhpcy5zZXR0aW5ncy5lbmFibGVTY3JvbGxpbmd8fG4uc2V0QXR0cmlidXRlKCJzY3JvbGxpbmciLCJubyIpLG4uc2V0QXR0cmlidXRlKCJhbGxvd3RyYW5zcGFyZW5jeSIsInRydWUiKSxuLnNldEF0dHJpYnV0ZSgiZnJhbWVib3JkZXIiLCIwIiksbi5zdHlsZS51c2VyU2VsZWN0PSJub25lIixuLnN0eWxlLmJveFNpemluZz0iYm9yZGVyLWJveCIsbi5zdHlsZS5kaXNwbGF5PSJibG9jayIsbi5zdHlsZS5oZWlnaHQ9dCxuLnN0eWxlLndpZHRoPSIxMDAlIjtjb25zdCBvPW5ldyBVUkwodGhpcy5faWZyYW1lU3JjQmFzZShlKSk7cmV0dXJuIHRoaXMuX3NldFNldHRpbmdzUXVlcnlTdHJpbmcobyksdGhpcy5fc2V0SGFzaFN0cmluZyhvLHIpLG4uc2V0QXR0cmlidXRlKCJzcmMiLG8udG9TdHJpbmcoKSksbi50aXRsZT1pLG4ubGFuZz1zLG59X2FkZENTUEVycm9yTGlzdGVuZXIodCl7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigic2VjdXJpdHlwb2xpY3l2aW9sYXRpb24iLChlPT57ZS5ibG9ja2VkVVJJLmluY2x1ZGVzKHQpJiYodGhpcy5fdHJ5Rml4Q1NQSXNzdWVXaXRoRmFsbGJhY2sodCksY29uc29sZS53YXJuKCJQbGVhc2UgdXBkYXRlIHlvdXIgQ1NQIHJ1bGVzIHRvIGFsbG93IHRoZSB0cmFkaW5ndmlldy13aWRnZXQuY29tIG9yaWdpbiBmb3IgZnJhbWUtc3JjLiIpKX0pKX1fdHJ5Rml4Q1NQSXNzdWVXaXRoRmFsbGJhY2sodCl7Y29uc3QgZT10aGlzLmlmcmFtZS5nZXRBdHRyaWJ1dGUoInNyYyIpO2lmKGUpe2NvbnN0IHI9bmV3IFVSTChlLnJlcGxhY2UodCwiaHR0cHM6Ly9zLnRyYWRpbmd2aWV3LmNvbSIpKTt0aGlzLmlmcmFtZS5zZXRBdHRyaWJ1dGUoInNyYyIsci5ocmVmKX19X3VwZGF0ZUNvcHlyaWdodEhyZWZQYXJhbXModCxlLHIpe2lmKHRoaXMuX2NvcHlyaWdodENvbnRhaW5lcil7Y29uc3QgaT10aGlzLl9jb3B5cmlnaHRDb250YWluZXIucXVlcnlTZWxlY3RvckFsbCgiYSIpO2kmJmkuZm9yRWFjaCgoaT0+e2NvbnN0IHM9aS5nZXRBdHRyaWJ1dGUoImhyZWYiKTtpZihzKXRyeXtjb25zdCBuPW5ldyBVUkwocyk7bi5zZWFyY2hQYXJhbXMuc2V0KCJ1dG1fc291cmNlIix0KSxuLnNlYXJjaFBhcmFtcy5zZXQoInV0bV9tZWRpdW0iLGUpLG4uc2VhcmNoUGFyYW1zLnNldCgidXRtX2NhbXBhaWduIixyKSxpLnNldEF0dHJpYnV0ZSgiaHJlZiIsbi50b1N0cmluZygpKX1jYXRjaCh0KXtjb25zb2xlLmxvZyhgQ2Fubm90IHVwZGF0ZSBsaW5rIFVUTSBwYXJhbXMsIGhyZWY9IiR7c30iYCl9fSkpfX19bmV3IGNsYXNzIGV4dGVuZHMgZHtnZXQgd2lkZ2V0SWQoKXtjb25zdCB0PXRoaXMuc2V0dGluZ3M7cmV0dXJuIHQmJiJjcnlwdG9fbWt0Ij09PXQuc2NyZWVuZXJfdHlwZT8iY3J5cHRvLW1rdC1zY3JlZW5lciI6InNjcmVlbmVyIn1nZXQgdXNlU25vd3Bsb3dQYWdlVmlldygpe3JldHVybiEwfXdpZGdldFV0bU5hbWUoKXtjb25zdCB0PXRoaXMuc2V0dGluZ3M7aWYodCl7aWYoImZvcmV4Ij09PXQubWFya2V0KXJldHVybiJmb3JleHNjcmVlbmVyIjtpZigiY3J5cHRvX21rdCI9PT10LnNjcmVlbmVyX3R5cGUpcmV0dXJuImNyeXB0b21rdHNjcmVlbmVyIjtpZigiY3J5cHRvIj09PXQubWFya2V0KXJldHVybiJjcnlwdG9zY3JlZW5lciJ9cmV0dXJuInNjcmVlbmVyIn1nZXQgcHJvcGVydGllc1RvV29ya1dpdGgoKXsKcmV0dXJuWyJjb2xvclRoZW1lIiwiY3VzdG9tZXIiLCJkZWZhdWx0Q29sdW1uIiwiZGVmYXVsdFNjcmVlbiIsImRpc3BsYXlDdXJyZW5jeSIsImhlaWdodCIsImxhcmdlQ2hhcnRVcmwiLCJsb2NhbGUiLCJtYXJrZXQiLCJzY3JlZW5lcl90eXBlIiwic2hvd1Rvb2xiYXIiLCJpc1RyYW5zcGFyZW50Iiwid2lkdGgiXX1maWx0ZXJSYXdTZXR0aW5ncyh0KXtjb25zdCBlPXN1cGVyLmZpbHRlclJhd1NldHRpbmdzKHQpO3JldHVybiB2b2lkIDAhPT10LnRyYW5zcGFyZW5jeSYmKGUuaXNUcmFuc3BhcmVudD10LnRyYW5zcGFyZW5jeSksImNyeXB0b19ta3QiPT09ZS5zY3JlZW5lcl90eXBlJiYoZS5tYXJrZXQ9ImNyeXB0byIpLGUuZW5hYmxlU2Nyb2xsaW5nPSEwLGV9fX0pKCk7"}},"time_used":94,"timings":{"blocked":-1,"dns":70,"connect":17,"send":0,"wait":2,"receive":-1,"ssl":5},"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=0/br=1/rs=AGKMywGx4txhFJhcrutKYsfPmS4mFc6oJQ","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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/Gc2en3nHxA4","date":"2026-07-27T04:24:16.894Z","timestamp":1785126256894,"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=0/br=1/rs=AGKMywGx4txhFJhcrutKYsfPmS4mFc6oJQ 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/Gc2en3nHxA4\r\nCookie: __Secure-YNID=20.YT=E5bZH_lP1NArLG48t6lRj9oeecW0xyEFe9u0ebWOb-g-_JffSEAYD96vgiz84ztWu4jL2Qub3iqTQ2XsVrmUelh8bL2Z51wNDSmop6dn1VykM86DS3aVeEn7QG8EY9Ml3wvuvcssa43xkqpG8yaId8urAjrXhYEfGQpbtjPMaEJoztxh0chYc1U5XnLeSKOglaDLkUb_VvEZq4QcOK6PKm2QcEJ7YaKMvNNnRY4v3GMNcZEy2NrRIXXQEQI5D8IEV_am0BM4s0b23dnIOVfMyNQVyW0u7xAK0Ni0sYaQe1TWl0KmDEjJm310XaYqlpGcnfGpZpknLRrb4GiekJ28gg; YSC=nYVVApPxeLY; __Secure-ROLLOUT_TOKEN=CL_qp-jW2sbDnwEQ_4Clw4HylQMY_4Clw4HylQM%3D; VISITOR_INFO1_LIVE=8BWjCSfd-OY; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgGA%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\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: 49693\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Fri, 24 Jul 2026 13:04:18 GMT\r\nexpires: Sat, 24 Jul 2027 13:04:18 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\nvary: Accept-Encoding\r\nage: 227998\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":433272,"size_decoded":50599,"mime_type":"text/css; charset=UTF-8","magic":"Unicode text, UTF-8 text, with very long lines (65533), with no line terminators","md5":"d1d542d1ae2669dbf300aeeeb134bd3f","sha1":"a50e6db2d43b5b3a3275086de228e20b06f4784d","sha256":"855047a3d1daf90c03574fd819aea0dc8b98c9b50256a57a335150e07ede8b3f","sha512":"dd92ae6fe58394aeb38127615e817c06473994520d10d243a644393643861155516b3a66d15a50f5350d822a403944a6d6481455d3c91c440dde1bb90859037a","ssdeep":"12288:07bPIcclM34rEVNVQeTBwKkIjr8UM8zIcsRHphJMJarzQ5MEJwq5nP/ZkvCBQa/f:0YaMSqHxGmjlVa","tlshash":"cb94c97255122258f0179731bbe2fe06b562d117c25a3aafe442ff1cc6ef1e12e6260d","first_seen":"2026-07-24T13:29:06.288153Z","last_seen":"2026-07-27T07:05:42.924859Z","times_seen":377,"resource_available":false,"data":"OnJvb3R7LS10N2Y0ZjJjNmQ1NDgzNmNlMDppbml0aWFsOy0tdDdkOGI4ZTVlZTI5MWFlYzA6aW5pdGlhbDstLXQ0NzI2YzY4ZWY2ZDdiMDhmOmluaXRpYWw7LS10ZjBhMGQxMTU0ODI3ODQ3Zjppbml0aWFsOy0tdDNlNDFkN2IxN2IxODdmNjk6aW5pdGlhbDstLXRmZjY1OTkzMzg0YmI0NTYwOmluaXRpYWw7LS10ZTI4NjdiMTNkNzcxZDA1NTppbml0aWFsOy0tdDkzM2Q3OTIyZjMxNThkYzU6aW5pdGlhbDstLXQyNjRlMmM5Y2I4Nzg5MWY5OmluaXRpYWw7LS10MjA2ZjNmYTJlMDFhZjIyZDppbml0aWFsOy0tdDM0ZjQ2ZjBmMmMxM2QzMjg6aW5pdGlhbDstLXQ4NTRjNzkzMzhkOGNhOGE3OmluaXRpYWw7LS10MjA0ODA3MTdkZTgwZjU1NTppbml0aWFsOy0tdDJkODA3YmI3OWU3NTYwNmQ6aW5pdGlhbDstLXQ2MTdkYjc3NmFmMGRlMTk2OmluaXRpYWw7LS10YjYyODExN2ZjMTY0YWQ4Nzppbml0aWFsOy0tdGQ1NDVkZjA0ZTJjNjU5ZDc6aW5pdGlhbDstLXQ1Mzk5MWQ1OTliMTQ4OGY1OmluaXRpYWw7LS10YTg4OWRmZGE5NjA1YTM1ODppbml0aWFsOy0tdDU5NzhkYThkNTg0YjhmZTk6aW5pdGlhbDstLXQxMjRiN2RhZmU5YmMzNjZkOmluaXRpYWw7LS10ZGJlNTBkMjdkNTFmNTA5Mzppbml0aWFsOy0tdGE1NjRkODIxMmJjY2IxNmE6aW5pdGlhbDstLXQ5OWY3NzQ2ODRjYmI5NzAzOmluaXRpYWw7LS10NGU2ZGY5YjJiNmI5N2UwMDppbml0aWFsOy0tdGI4YjMxYWM1NjJmYmU5YjU6aW5pdGlhbDstLXQ1ODg0NjcyMDA0ZDU2MTIwOmluaXRpYWw7LS10ZWY3MGNhMjQ1NDQ1YjUyYjppbml0aWFsOy0tdDRmMDkyMmU1YTNkMGMyMGY6aW5pdGlhbDstLXQ3ZGZhNmY4NGM5MzQ2ZWRmOmluaXRpYWw7LS10ZWNiZGY5MjRiNjNiMjdmYzppbml0aWFsOy0tdDE0MDVlNzBhMzkyNzYyOTM6aW5pdGlhbDstLXRhZDg0NDNmYWVkNjZjMTExOmluaXRpYWw7LS10ZTZkMmI0MjhkZTY4NTU0YTppbml0aWFsOy0tdGM5ODBjNTQ3ODEyNGM4Yzc6aW5pdGlhbDstLXQ5NjU2NDRlY2RiZTRiN2I4OmluaXRpYWw7LS10YjE0YTEwYzNiNDNhMTVhMzppbml0aWFsOy0tdGIxM2ZmODc5NzgyOWU3OWU6aW5pdGlhbDstLXRlNTY2OGU2MTExYWJhMGVkOmluaXRpYWw7LS10YTdkNjI4ZmFjZmU4NGQxODppbml0aWFsOy0tdGJlNDIyNjk1MzQ2NTVlNjc6aW5pdGlhbDstLXRhYjgwNTkyMzYwNjNjYWRiOmluaXRpYWw7LS10NzM1ZTQzNWE4YjdhZDY3Yzppbml0aWFsOy0tdDIxYWYwOGZkYmY2YTE0MDY6aW5pdGlhbDstLXRjNjA0MTEzZDA5ZmVlMDVkOmluaXRpYWw7LS10MDhhN2M2YzE3NmNiYzVjMjppbml0aWFsOy0tdDhjZGM5ODQ2YTc2Y2FmMWY6aW5pdGlhbDstLXRlMWI2NGU2OTcxMDQwMzk2OmluaXRpYWw7LS10NDE2ZTU5MzFmYzQ2NDU4OTppbml0aWFsOy0tdGI3ZDc0YmIzMjkxYzk1MWQ6aW5pdGlhbDstLXRmM2ZjODU1YWYyMjg1ZjVmOmluaXRpYWw7LS10MGExMjQ5ZjdjOWU4MmI1ZTppbml0aWFsOy0tdDAyYzBhMmM4NjhjMTRjZTg6aW5pdGlhbDstLXRkODU2MmNkYzIwM2JjNjgzOmluaXRpYWw7LS10NTNkZGE5MTI1ZThkMTMyNDppbml0aWFsOy0tdDU0NGUzMTcxNGY2M2Q1M2M6aW5pdGlhbDstLXQ4N2VhYmYxMTNhMTVhYzk2OmluaXRpYWw7LS10ODU4YjgwOWY4MDQ0ZTk2Mjppbml0aWFsOy0tdDBmNTkyOTFjZTU1MDQ1NDM6aW5pdGlhbDstLXRmYWFlOTY2OTJjYzE4MmU0OmluaXRpYWw7LS10NTE4ZTkyNWY2MWJkY2I5MTppbml0aWFsOy0tdGI5MjdmNWMwMTQ5MDA0YzY6aW5pdGlhbDstLXQ4MzJmMjJjZTY2MThlOTllOmluaXRpYWw7LS10NDViMmEzODMxNDkyNDM1Nzppbml0aWFsOy0tdDY5MzFhYTE4MjZiMzczYjI6aW5pdGlhbDstLXRlZDQyMzY1MzY4OTllNGIzOmluaXRpYWw7LS10ZGM4YWY2NzUwZjBkYWQwZDppbml0aWFsOy0tdDM0MTBjOTE2NDllNWViOGE6aW5pdGlhbDstLXQ0YWVhYTg1N2RlOGE3ODZiOmluaXRpYWw7LS10Mjk2YzdmODFkZDA5YTljMzppbml0aWFsOy0tdGZhMzQ3NWM1MDhmNWRmZWY6aW5pdGlhbDstLXQ5YmMwYjc0MDI0MmRhMDE3OmluaXRpYWw7LS10NDQxYTBlNDRlNDk1MzgxYTppbml0aWFsOy0tdGRlNDEzMzhmYzJiZDRiYTU6aW5pdGlhbDstLXQ0ZDc3NzZjMjhkYjIxMTIyOmluaXRpYWw7LS10N2UzNGQ1YmFhNGVhNjI3Nzppbml0aWFsOy0tdGM0YjI2MDQyZDRjYjE0MWY6aW5pdGlhbDstLXQ1MjA4ZmQxNzdhNzg4Y2ZhOmluaXRpYWw7LS10ZmZjMmZkM2E2NDRmNjI3NTppbml0aWFsOy0tdDYyMTYxODZjMjhiMzgzNGI6aW5pdGlhbDstLXQ0YTZkYTE5ZTE2YmYyMjFhOmluaXRpYWw7LS10ZDljMTlmNGY4Y2VjZDU2ZTppbml0aWFsOy0tdDNmM2JkYjQxNDBkM2VhZDc6aW5pdGlhbDstLXQ5MDRhODhjNjIzY2EyN2FiOmluaXRpYWw7LS10MmMzYmJmZjZjMTVhM2ViMjppbml0aWFsOy0tdDBjY2QxYWNlMDAwZDVlOTM6aW5pdGlhbDstLXRjODdmNmE3ZjA1ZTY1ZmM0OmluaXRpYWw7LS10YzA0YmEzZTczNTYxOTUzYzppbml0aWFsOy0tdDdjNDk2NWMxMWY4NTM3YzA6aW5pdGlhbDstLXQ0MzJmYmRiZDdmMmYzZjcxOmluaXRpYWw7LS10YWYxYmRkOTYxNDIzYzE1Zjppbml0aWFsOy0tdDlkN2JkY2FlZmM5NzVkNDQ6aW5pdGlhbDstLXQ0ZmIwZjY3YjI1MWUxYTQyOmluaXRpYWw7LS10YTA4ZTAzNjQxMGMxNDUzODppbml0aWFsOy0tdDdmOWI3ZTE2MDNlMjBiOTQ6aW5pdGlhbH0uZGlhbG9ne3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MjtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47bWF4LWhlaWdodDoxMDAlO21heC13aWR0aDoxMDAlOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtwYWRkaW5nOjE2cHg7bWFyZ2luOjAgYXV0bztvdmVyZmxvdy14OmhpZGRlbjtvdmVyZmxvdy15OmF1dG87Zm9udC1zaXplOjEuM3JlbTtjb2xvcjojMDMwMzAzO2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6bm9uZX0uZGlhbG9nLm1vZGVybi1kaWFsb2d7Ym94LXNoYWRvdzowIDAgMjRweCAxMnB4IHJnYmEoMCwwLDAsMC4yNSl9LmRpYWxvZy5yb3VuZGVkLWNvbnRhaW5lcntib3JkZXItcmFkaXVzOjEycHh9LmRpYWxvZy5tb2Rlcm4tZGlhbG9nLWxheW91dHtwYWRkaW5nOjA7Ym9yZGVyLXJhZGl1czoyNHB4fS5kaWFsb2ctYm9keXtvdmVyZmxvdy15OmF1dG87b3ZlcmZsb3cteDpoaWRkZW47bWF4LWhlaWdodDozMDBweDttYXgtaGVpZ2h0OjEwMHZofS5kaWFsb2cuc2Nyb2xsYWJsZSAuZGlhbG9nLWJvZHl7b3ZlcmZsb3cteTp2aXNpYmxlO292ZXJmbG93LXg6dmlzaWJsZTttYXgtaGVpZ2h0OnVuc2V0fS5kaWFsb2ctY29udGFpbmVye3Bvc2l0aW9uOmZpeGVkO3RvcDowO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt6LWluZGV4OjR9LmRpYWxvZy1oZWFkZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5kaWFsb2ctYnV0dG9ucywuZGlhbG9nLWhlYWRlcntmbGV4LXNocmluazowfS5kaWFsb2ctYnV0dG9uc3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDttYXJnaW4tdG9wOjEycHh9LmRpYWxvZy1idXR0b25zPip7bWFyZ2luLWxlZnQ6OHB4fS5kaWFsb2ctYnV0dG9ucz46Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6MH0uZGlhbG9nLWZsZXgtYnV0dG9uey1tb3otYm94LWZsZXg6MTtmbGV4OjF9LmRpYWxvZy1mbGV4LWJ1dHRvbiAuYnV0dG9uLXdpdGgtaWNvbi5jb21wYWN0e21hcmdpbjowfS5kaWFsb2ctYm9keSBhLC5kaWFsb2ctaGVhZGVyIGF7Y29sb3I6IzA2NWZkNH0uZGlhbG9nLWJvZHkgeXRtLW1lbnUtaXRlbSBhe2NvbG9yOmN1cnJlbnRjb2xvcn1AbWVkaWEgKG1pbi13aWR0aDozMzBweCkgYW5kIChtaW4taGVpZ2h0OjMzMHB4KXsuZGlhbG9ne21pbi13aWR0aDoyNTBweDttYXgtd2lkdGg6MzU2cHh9LmRpYWxvZy1jb250YWluZXJ7bWFyZ2luOjAgNDBweDtwYWRkaW5nOjA7cGFkZGluZzowIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpfX0uZGlhbG9nLWZ1bGxzY3JlZW57bWluLXdpZHRoOjEwMCU7bWluLWhlaWdodDoxMDAlO21hcmdpbjowO3BhZGRpbmc6MDtoZWlnaHQ6MXB4fS5kaWFsb2ctZnVsbHNjcmVlbj4uZGlhbG9nLWJvZHl7aGVpZ2h0OjEwMCV9LmRpYWxvZy5tb2Rlcm4tZGlhbG9nLWxheW91dC5kaWFsb2ctZnVsbHNjcmVlbntib3JkZXItcmFkaXVzOjB9LmRpYWxvZy1jb250YWluZXIuZGlhbG9nLWZ1bGxzY3JlZW57bWFyZ2luOjB9YzMtdG9hc3R7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpmaXhlZDt6LWluZGV4OjU7bGVmdDowO3JpZ2h0OjA7Ym90dG9tOjA7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O3BhZGRpbmc6MTRweCAyNHB4O2ZvbnQtc2l6ZToxLjRyZW07Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kOiMwZjBmMGY7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtO21hcmdpbi1ib3R0b206LTEwMCV9YzMtdG9hc3QuaHVnLXRvYXN0e21heC13aWR0aDozNDRweH1jMy10b2FzdC5pbnZlcnNlLXRoZW1le2JhY2tncm91bmQ6I2ZmZjtjb2xvcjojMDMwMzAzfWMzLXRvYXN0LmludmVyc2UtdGhlbWUgLmJ1dHRvbi13aXRoLWljb257Y29sb3I6IzA2NWZkNH1baGFzLXNhZmUtYXJlYS1pbi1tYXg9dHJ1ZV0gYzMtdG9hc3R7cGFkZGluZzoxNHB4IDI0cHg7cGFkZGluZzoxNHB4IG1heCgyNHB4LGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKSAxNHB4IG1heCgyNHB4LGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCkpfVtoYXMtcGl2b3QtYmFyPXRydWVdIGMzLXRvYXN0ey0tc2FmZS1hcmVhLWluc2V0LXRvcDplbnYoc2FmZS1hcmVhLWluc2V0LXRvcCk7LS1zYWZlLWFyZWEtaW5zZXQtYm90dG9tOmVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtib3R0b206NDhweDtib3R0b206Y2FsYyg0OHB4ICsgdmFyKC0tc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpO21hcmdpbi1ib3R0b206LTEwMCU7bWFyZ2luLWJvdHRvbTpjYWxjKC0xMDAlICsgdmFyKC0tc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpO3otaW5kZXg6Mn1bbW9kYWwtb3Blbi1ib2R5XSBjMy10b2FzdCxbc2hvcnRzLXBsYXllcj10cnVlXSBjMy10b2FzdHtib3R0b206OHB4O21hcmdpbi1ib3R0b206LTEwMCU7ei1pbmRleDo1fWMzLXRvYXN0W2Rpcj1vdXRde3RyYW5zaXRpb246bWFyZ2luIDE5NW1zIGN1YmljLWJlemllciguNCwwLDEsMSl9YzMtdG9hc3RbZGlyPWluXXt0cmFuc2l0aW9uOm1hcmdpbiAyMjVtcyBjdWJpYy1iZXppZXIoMCwwLC4yLDEpO21hcmdpbi1ib3R0b206MH1Aa2V5ZnJhbWVzIHNwaW5uZXJ7MCV7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKX10b3t0cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19LnNwaW5uZXJXcmFwcGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9LnNwaW5uZXJ7ZGlzcGxheTpibG9jazstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7bWFyZ2luOjEycHggYXV0bzt3aWR0aDozMnB4O2hlaWdodDozMnB4O2JvcmRlci1yYWRpdXM6NTAlO2JvcmRlcjoycHggc29saWQgI2VlZTtib3JkZXItdG9wLWNvbG9yOiM2NjY7YW5pbWF0aW9uOnNwaW5uZXIgLjhzIGxpbmVhciBpbmZpbml0ZX0uc3Bpbm5lcj4uaGlkZGVue2Rpc3BsYXk6bm9uZX0uc3Bpbm5lcjpub3QoW2hpZGRlbl0pe2NvbG9yOiMzMzM7Zm9udC1zaXplOjEuNnJlbX1odG1se2NvbG9yOiMwMzAzMDM7YmFja2dyb3VuZC1jb2xvcjojZmZmO2ZvbnQtc2l6ZToxMHB4O2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmfWJvZHl7bWFyZ2luOjA7cGFkZGluZzowO3BhZGRpbmc6MCBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtmb250LXNpemU6MS4ycmVtO292ZXJmbG93LXg6aGlkZGVufVtoaWRkZW5dW2hpZGRlbl17ZGlzcGxheTpub25lO3Zpc2liaWxpdHk6aGlkZGVufXl0bS1hcHA+LnNwaW5uZXJ7bWFyZ2luLXRvcDoxMDBweH15dG0taGVhZGVye2Rpc3BsYXk6YmxvY2t9aGVhZGVye2hlaWdodDo0OHB4fS5wbGF5ZXItY29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDo0OHB4O3JpZ2h0OjA7cmlnaHQ6ZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7bGVmdDowO2xlZnQ6ZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtvdmVyZmxvdzpoaWRkZW47ei1pbmRleDoyfVtoYXMtcGxheWVyLWN1c3RvbS1jb250cm9sPXRydWVdIC5wbGF5ZXItY29udGFpbmVye292ZXJmbG93OnZpc2libGUhaW1wb3J0YW50fSNwbGF5ZXIuaW5saW5lLXBsYXllci1oaWRkZW4sLmlubGluZS1wbGF5ZXItaGlkZGVue29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lfS5wbGF5ZXItY29udGFpbmVyIC5wbGF5ZXItc2l6ZSx5dG0td2F0Y2ggLnBsYXllci1zaXple3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7cGFkZGluZy1ib3R0b206NTYuMjUlO292ZXJmbG93OmhpZGRlbn0ucGxheWVyLWNvbnRhaW5lciAjcGxheWVyLnBsYXllci1zaXplLHl0bS13YXRjaCAucGxheWVyLXNpemV7YmFja2dyb3VuZC1jb2xvcjojMDAwfS5wbGF5ZXItY2luZW1hdGljc3twb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO3BvaW50ZXItZXZlbnRzOm5vbmU7YmFja2dyb3VuZDojMDAwfS5wbGF5ZXItY2luZW1hdGljc34jcGxheWVyLnBsYXllci1zaXplLC5wbGF5ZXItY2luZW1hdGljc34ucGxheWVyLXNpemV7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudH0ucGFnZS1zaG9ydHMgLnBsYXllci1jb250YWluZXIgLnBsYXllci1zaXplLC5wYWdlLXNob3J0cyB5dG0td2F0Y2ggLnBsYXllci1zaXple3BhZGRpbmctYm90dG9tOjB9LnBsYXllci1jb250YWluZXIgLnBsYXllci1hcGl7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5wbGF5ZXItYXBpW2hpZGRlbl0sLnBsYXllci1hcGlbbG9hZGluZz10cnVlXSwucGxheWVyLWFwaVtwbGF5YWJsZT1mYWxzZV17ZGlzcGxheTpub25lfSNwbGF5ZXIuaW5saW5lLW9uLXRodW1ibmFpbHtwYWRkaW5nOjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3JpZ2h0OjA7Ym90dG9tOjB9LnBsYXllci1jb250YWluZXIgLmh0bWw1LXZpZGVvLXBsYXllcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MH15dG0tYXBwe2Rpc3BsYXk6YmxvY2s7b3ZlcmZsb3cteDpoaWRkZW59W2hhcy1zb2Z0LWJhcj10cnVlXSB5dG0tYXBwe3BhZGRpbmctYm90dG9tOjMwcHh9W2hhcy1waXZvdC1iYXI9dHJ1ZV0geXRtLWFwcHtwYWRkaW5nLWJvdHRvbTo0OHB4fXl0bS1oZWFkZXIuaXMtYXV0b21vdGl2ZSx5dG0taGVhZGVyLnN0aWNreS1wbGF5ZXIseXRtLW1vYmlsZS10b3BiYXItcmVuZGVyZXIuaXMtYXV0b21vdGl2ZSx5dG0tbW9iaWxlLXRvcGJhci1yZW5kZXJlci5zaG9ydHMtdG9wYmFyLHl0bS1tb2JpbGUtdG9wYmFyLXJlbmRlcmVyLnN0aWNreS1wbGF5ZXJ7cG9zaXRpb246Zml4ZWQ7dG9wOjA7bGVmdDowO3JpZ2h0OjA7ei1pbmRleDo0O3BhZGRpbmc6MDtwYWRkaW5nOjAgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCkgMCBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpfXl0bS1tb2JpbGUtdG9wYmFyLXJlbmRlcmVyLnN0aWNreS1wbGF5ZXIub3V0e3RvcDotNDhweDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAxOTVtcyBjdWJpYy1iZXppZXIoLjQsMCwxLDEpO3RyYW5zaXRpb24tcHJvcGVydHk6YWxsfXl0bS1tb2JpbGUtdG9wYmFyLXJlbmRlcmVyLnN0aWNreS1wbGF5ZXIuaW57dG9wOjA7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gMjI1bXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKTt0cmFuc2l0aW9uLXByb3BlcnR5OmFsbH0ucGxheWVyLWNvbnRhaW5lci5zdGlja3ktcGxheWVye3Bvc2l0aW9uOmZpeGVkO3RvcDo0OHB4O3JpZ2h0OjA7cmlnaHQ6ZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7bGVmdDowO2xlZnQ6ZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtvdmVyZmxvdzpoaWRkZW47ei1pbmRleDoyfS5wbGF5ZXItY29udGFpbmVyLmhlYWRlci1pbi1wbGF5ZXIsLnBsYXllci1jb250YWluZXIuc3RpY2t5LXBsYXllci5oZWFkZXItaW4tcGxheWVye3RvcDowfXl0bS1hcHAuaXMtYXV0b21vdGl2ZSx5dG0tYXBwLnN0aWNreS1wbGF5ZXJ7ZGlzcGxheTpibG9jaztwYWRkaW5nLXRvcDo0OHB4fXl0bS1hcHAuaXMtYXV0b21vdGl2ZS5oZWFkZXItaW4tcGxheWVyLHl0bS1hcHAuc3RpY2t5LXBsYXllci5oZWFkZXItaW4tcGxheWVye3BhZGRpbmctdG9wOjB9QG1lZGlhIChtaW4td2lkdGg6OTMxcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKXtib2R5LnBhZ2Utc2hvcnRzW2VuZ2FnZW1lbnQtcGFuZWwtb3Blbl0gLnBsYXllci1jb250YWluZXIsYm9keS5wYWdlLXNob3J0c1tlbmdhZ2VtZW50LXBhbmVsLW9wZW5dIC5wbGF5ZXItY29udGFpbmVyLnN0aWNreS1wbGF5ZXJ7cmlnaHQ6MjU2cHh9Ym9keS5wYWdlLXNob3J0c1tlbmdhZ2VtZW50LXBhbmVsLW9wZW5dIC5wbGF5ZXItcGxhY2Vob2xkZXItd3JhcHBlcnt3aWR0aDpjYWxjKDEwMCUgLSAyNTZweCl9Ym9keTpub3QoLnBhZ2Utc2hvcnRzKSAucGxheWVyLWNvbnRhaW5lcixib2R5Om5vdCgucGFnZS1zaG9ydHMpIC5wbGF5ZXItY29udGFpbmVyLnN0aWNreS1wbGF5ZXJ7cmlnaHQ6MjU2cHh9Ym9keTpub3QoLnBhZ2Utc2hvcnRzKSAucGxheWVyLXBsYWNlaG9sZGVyLXdyYXBwZXJ7d2lkdGg6Y2FsYygxMDAlIC0gMjU2cHgpfS5td2ViLXRhYmxldC1tZXRhZGF0YS1zcGxpdC12aWV3IGJvZHkucGFnZS1zaG9ydHNbZW5nYWdlbWVudC1wYW5lbC1vcGVuXSAucGxheWVyLWNvbnRhaW5lciwubXdlYi10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5LnBhZ2Utc2hvcnRzW2VuZ2FnZW1lbnQtcGFuZWwtb3Blbl0gLnBsYXllci1jb250YWluZXIuc3RpY2t5LXBsYXllcntyaWdodDozMzZweH0ubXdlYi10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5LnBhZ2Utc2hvcnRzW2VuZ2FnZW1lbnQtcGFuZWwtb3Blbl0gLnBsYXllci1wbGFjZWhvbGRlci13cmFwcGVye3dpZHRoOmNhbGMoMTAwJSAtIDMzNnB4KX0ubXdlYi10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5Om5vdCgucGFnZS1zaG9ydHMpIC5wbGF5ZXItY29udGFpbmVyLC5td2ViLXRhYmxldC1tZXRhZGF0YS1zcGxpdC12aWV3IGJvZHk6bm90KC5wYWdlLXNob3J0cykgLnBsYXllci1jb250YWluZXIuc3RpY2t5LXBsYXllcntyaWdodDozMzZweH0ubXdlYi10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5Om5vdCgucGFnZS1zaG9ydHMpIC5wbGF5ZXItcGxhY2Vob2xkZXItd3JhcHBlcnt3aWR0aDpjYWxjKDEwMCUgLSAzMzZweCl9Lm13ZWItYWxsLWxhbmRzY2FwZS10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyAucGxheWVyLWNvbnRhaW5lcntib3R0b206MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfUBzdXBwb3J0cyAoYXNwZWN0LXJhdGlvOjE2Lzkpey5td2ViLWxhbmRzY2FwZS1mdWxsLXNpemUtcGxheWVyIC5wbGF5ZXItY29udGFpbmVyIC5wbGF5ZXItc2l6ZSwubXdlYi1sYW5kc2NhcGUtZnVsbC1zaXplLXBsYXllciB5dG0td2F0Y2ggLnBsYXllci1zaXple3BhZGRpbmctYm90dG9tOnVuc2V0O2FzcGVjdC1yYXRpbzoxNi85fX0ubXdlYi1sYW5kc2NhcGUtZnVsbC1zaXplLXBsYXllciAucGxheWVyLWNvbnRhaW5lciAucGxheWVyLXNpemUsLm13ZWItbGFuZHNjYXBlLWZ1bGwtc2l6ZS1wbGF5ZXIgeXRtLXdhdGNoIC5wbGF5ZXItc2l6ZXttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSA0OHB4KTttYXgtaGVpZ2h0OmNhbGMoMTAwc3ZoIC0gNDhweCl9fUBtZWRpYSAobWluLWFzcGVjdC1yYXRpbzoyMS8xMCkgYW5kIChtaW4td2lkdGg6OTMxcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKXsubXdlYi10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyAucGxheWVyLWNvbnRhaW5lcntib3R0b206MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfX1AbWVkaWEgKG1pbi1hc3BlY3QtcmF0aW86MTYvOSkgYW5kIChtYXgtd2lkdGg6OTMwcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKXsubXdlYi1waG9uZS1tZXRhZGF0YS1zcGxpdC12aWV3IGJvZHkucGFnZS1zaG9ydHNbZW5nYWdlbWVudC1wYW5lbC1vcGVuXSAucGxheWVyLWNvbnRhaW5lciwubXdlYi1waG9uZS1tZXRhZGF0YS1zcGxpdC12aWV3IGJvZHkucGFnZS1zaG9ydHNbZW5nYWdlbWVudC1wYW5lbC1vcGVuXSAucGxheWVyLWNvbnRhaW5lci5zdGlja3ktcGxheWVye3JpZ2h0OjMzNnB4fS5td2ViLXBob25lLW1ldGFkYXRhLXNwbGl0LXZpZXcgYm9keS5wYWdlLXNob3J0c1tlbmdhZ2VtZW50LXBhbmVsLW9wZW5dIC5wbGF5ZXItcGxhY2Vob2xkZXItd3JhcHBlcnt3aWR0aDpjYWxjKDEwMCUgLSAzMzZweCl9Lm13ZWItcGhvbmUtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5Om5vdCgucGFnZS1zaG9ydHMpIC5wbGF5ZXItY29udGFpbmVyLC5td2ViLXBob25lLW1ldGFkYXRhLXNwbGl0LXZpZXcgYm9keTpub3QoLnBhZ2Utc2hvcnRzKSAucGxheWVyLWNvbnRhaW5lci5zdGlja3ktcGxheWVye3JpZ2h0OjMzNnB4fS5td2ViLXBob25lLW1ldGFkYXRhLXNwbGl0LXZpZXcgYm9keTpub3QoLnBhZ2Utc2hvcnRzKSAucGxheWVyLXBsYWNlaG9sZGVyLXdyYXBwZXJ7d2lkdGg6Y2FsYygxMDAlIC0gMzM2cHgpfS5td2ViLXBob25lLW1ldGFkYXRhLXNwbGl0LXZpZXcgLnBsYXllci1jb250YWluZXJ7Ym90dG9tOjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn1Ac3VwcG9ydHMgKGFzcGVjdC1yYXRpbzoxNi85KXsubXdlYi1sYW5kc2NhcGUtZnVsbC1zaXplLXBsYXllciAubXdlYi1waG9uZS1tZXRhZGF0YS1zcGxpdC12aWV3IC5wbGF5ZXItY29udGFpbmVyIC5wbGF5ZXItc2l6ZSwubXdlYi1sYW5kc2NhcGUtZnVsbC1zaXplLXBsYXllciAubXdlYi1waG9uZS1tZXRhZGF0YS1zcGxpdC12aWV3IHl0bS13YXRjaCAucGxheWVyLXNpemV7cGFkZGluZy1ib3R0b206dW5zZXQ7aGVpZ2h0OmF1dG87YXNwZWN0LXJhdGlvOjE2Lzl9fX1AbWVkaWEgKG1pbi13aWR0aDoxMjgwcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKXtib2R5LnBhZ2Utc2hvcnRzW2VuZ2FnZW1lbnQtcGFuZWwtb3Blbl0gLnBsYXllci1jb250YWluZXIsYm9keS5wYWdlLXNob3J0c1tlbmdhZ2VtZW50LXBhbmVsLW9wZW5dIC5wbGF5ZXItY29udGFpbmVyLnN0aWNreS1wbGF5ZXJ7cmlnaHQ6NTAwcHh9Ym9keS5wYWdlLXNob3J0c1tlbmdhZ2VtZW50LXBhbmVsLW9wZW5dIC5wbGF5ZXItcGxhY2Vob2xkZXItd3JhcHBlcnt3aWR0aDpjYWxjKDEwMCUgLSA1MDBweCl9Ym9keTpub3QoLnBhZ2Utc2hvcnRzKSAucGxheWVyLWNvbnRhaW5lcixib2R5Om5vdCgucGFnZS1zaG9ydHMpIC5wbGF5ZXItY29udGFpbmVyLnN0aWNreS1wbGF5ZXJ7cmlnaHQ6NTAwcHh9Ym9keTpub3QoLnBhZ2Utc2hvcnRzKSAucGxheWVyLXBsYWNlaG9sZGVyLXdyYXBwZXJ7d2lkdGg6Y2FsYygxMDAlIC0gNTAwcHgpfS5td2ViLXRhYmxldC1tZXRhZGF0YS1zcGxpdC12aWV3IGJvZHkucGFnZS1zaG9ydHNbZW5nYWdlbWVudC1wYW5lbC1vcGVuXSAucGxheWVyLWNvbnRhaW5lciwubXdlYi10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5LnBhZ2Utc2hvcnRzW2VuZ2FnZW1lbnQtcGFuZWwtb3Blbl0gLnBsYXllci1jb250YWluZXIuc3RpY2t5LXBsYXllcntyaWdodDo1MDBweH0ubXdlYi10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5LnBhZ2Utc2hvcnRzW2VuZ2FnZW1lbnQtcGFuZWwtb3Blbl0gLnBsYXllci1wbGFjZWhvbGRlci13cmFwcGVye3dpZHRoOmNhbGMoMTAwJSAtIDUwMHB4KX0ubXdlYi10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5Om5vdCgucGFnZS1zaG9ydHMpIC5wbGF5ZXItY29udGFpbmVyLC5td2ViLXRhYmxldC1tZXRhZGF0YS1zcGxpdC12aWV3IGJvZHk6bm90KC5wYWdlLXNob3J0cykgLnBsYXllci1jb250YWluZXIuc3RpY2t5LXBsYXllcntyaWdodDo1MDBweH0ubXdlYi10YWJsZXQtbWV0YWRhdGEtc3BsaXQtdmlldyBib2R5Om5vdCgucGFnZS1zaG9ydHMpIC5wbGF5ZXItcGxhY2Vob2xkZXItd3JhcHBlcnt3aWR0aDpjYWxjKDEwMCUgLSA1MDBweCl9fUBtZWRpYSAobWF4LXdpZHRoOjkzMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7eXRtLW1vYmlsZS10b3BiYXItcmVuZGVyZXIuc2hvcnRzLXRvcGJhcntyaWdodDo3MnB4fS5wbGF5ZXItY29udGFpbmVyIC5wbGF5ZXItc2l6ZSx5dG0td2F0Y2ggLnBsYXllci1zaXple3BhZGRpbmctYm90dG9tOmNhbGMoNTYuMjUlIC0gOTZweCl9Lm13ZWItbGFuZHNjYXBlLWZ1bGwtc2l6ZS1wbGF5ZXIgLnBsYXllci1jb250YWluZXIgLnBsYXllci1zaXplLC5td2ViLWxhbmRzY2FwZS1mdWxsLXNpemUtcGxheWVyIHl0bS13YXRjaCAucGxheWVyLXNpemV7aGVpZ2h0OmNhbGMoNTYuMjV2dyAtIDk2cHgpO3BhZGRpbmctYm90dG9tOnVuc2V0O21heC1oZWlnaHQ6Y2FsYygxMDB2aCAtIDQ4cHgpO21heC1oZWlnaHQ6Y2FsYygxMDBzdmggLSA0OHB4KX19QG1lZGlhIChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKSwobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KXsucGxheWVyLWNvbnRhaW5lciAucGxheWVyLXNpemUseXRtLXdhdGNoIC5wbGF5ZXItc2l6ZXtwYWRkaW5nLWJvdHRvbTo1Ni4yNSV9fUBtZWRpYSAobWF4LXdpZHRoOjMyMHB4KSBhbmQgKG1heC1oZWlnaHQ6MjQwcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKXsucGxheWVyLWNvbnRhaW5lciAucGxheWVyLXNpemUseXRtLXdhdGNoIC5wbGF5ZXItc2l6ZXtwYWRkaW5nLWJvdHRvbTo1Ni4yNSV9fUBtZWRpYSAobWluLXdpZHRoOjU1MHB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KSwobWluLXdpZHRoOjkzMXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7eXRtLWFwcHtwYWRkaW5nLXRvcDo0OHB4fXl0bS1oZWFkZXIseXRtLWhlYWRlci1iYXIseXRtLW1vYmlsZS10b3BiYXItcmVuZGVyZXJ7cG9zaXRpb246Zml4ZWQ7dG9wOjA7bGVmdDowO3JpZ2h0OjA7ei1pbmRleDo0fX0uY29udGVudC1lcnJvcntmb250LXNpemU6MS40cmVtO3BhZGRpbmc6MTJweDt0ZXh0LWFsaWduOmNlbnRlcn0jcGxheWVyLXRodW1ibmFpbC1vdmVybGF5e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO29iamVjdC1maXQ6Y292ZXI7bWluLWhlaWdodDowfSNwbGF5ZXItY29udGFpbmVyLWlkW3BsYXlhYmxlPXRydWVdICNwbGF5ZXItdGh1bWJuYWlsLW92ZXJsYXl7dmlzaWJpbGl0eTpoaWRkZW59Ym9keS5wYWdlLXNob3J0cyxodG1sW3BhZ2Utc2hvcnRzXXtvdmVyc2Nyb2xsLWJlaGF2aW9yLXk6bm9uZX1ib2R5LmxvYWRpbmcucGFnZS1zaG9ydHMgI2hlYWRlcixib2R5LmxvYWRpbmcucGFnZS1zaG9ydHMgLnBsYXllci1wbGFjZWhvbGRlci13cmFwcGVye2Rpc3BsYXk6bm9uZX1ib2R5LnBhZ2Utc2hvcnRzICNwbGF5ZXItY29udGFpbmVyLWlkLGJvZHkucGFnZS1zaG9ydHMgLnBsYXllci1jb250YWluZXIgI3BsYXllcntoZWlnaHQ6MTAwJTt0b3A6MH0qey1tcy1mbGV4OjAgMSBhdXRvfWJ1dHRvbntwYWRkaW5nOjA7Ym9yZGVyOm5vbmU7b3V0bGluZTpub25lO2ZvbnQ6aW5oZXJpdDt0ZXh0LXRyYW5zZm9ybTppbmhlcml0O2NvbG9yOmluaGVyaXQ7YmFja2dyb3VuZDp0cmFuc3BhcmVudH1odG1se3dvcmQtd3JhcDpicmVhay13b3JkO2NvbG9yOiMwMzAzMDM7YmFja2dyb3VuZC1jb2xvcjojZmZmOy13ZWJraXQtdGV4dC1zaXplLWFkanVzdDoxMDAlfWJvZHlbZGlzYWJsZS10YXAtaGlnaGxpZ2h0PXRydWVdIFtyb2xlPWJ1dHRvbl0sYm9keVtkaXNhYmxlLXRhcC1oaWdobGlnaHQ9dHJ1ZV0gYSxib2R5W2Rpc2FibGUtdGFwLWhpZ2hsaWdodD10cnVlXSBidXR0b257LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50fWh0bWxbZGFya2VyLWRhcmstdGhlbWVde2JhY2tncm91bmQtY29sb3I6I2ZmZn1odG1sLndhdGNoLXNjcm9sbHtzY3JvbGwtcGFkZGluZy10b3A6NDhweH1odG1sLndhdGNoLXNjcm9sbC5zdGlja3ktcGxheWVye3Njcm9sbC1wYWRkaW5nLXRvcDpjYWxjKDQ4cHggKyA1Ni4yNXZ3KX1pbnB1dHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O3BhZGRpbmctYm90dG9tOjRweDtvdXRsaW5lOm5vbmU7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6MDttYXJnaW4tYm90dG9tOjFweDtmb250OmluaGVyaXQ7Y29sb3I6IzAzMDMwMztib3JkZXItYm90dG9tOjFweCBzb2xpZCAjNzM3MzczO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9aW5wdXQ6Zm9jdXN7bWFyZ2luLWJvdHRvbTowO2JvcmRlci1ib3R0b20td2lkdGg6MnB4O2JvcmRlci1ib3R0b20tY29sb3I6IzAzMDMwM31pbnB1dDo6LW1vei1wbGFjZWhvbGRlcntjb2xvcjojNjA2MDYwO29wYWNpdHk6MX1pbnB1dDo6cGxhY2Vob2xkZXJ7Y29sb3I6IzYwNjA2MDtvcGFjaXR5OjF9dGV4dGFyZWF7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtwYWRkaW5nLWJvdHRvbTo0cHg7b3V0bGluZTpub25lOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjA7bWFyZ2luLWJvdHRvbToxcHg7Zm9udDppbmhlcml0O2NvbG9yOiMwMzAzMDM7LW1vei1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lO21pbi1oZWlnaHQ6OC40cmVtO3dpZHRoOjEwMCU7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSk7cGFkZGluZzo4cHh9dGV4dGFyZWE6Oi1tb3otcGxhY2Vob2xkZXJ7Y29sb3I6IzYwNjA2MDtvcGFjaXR5OjF9dGV4dGFyZWE6OnBsYWNlaG9sZGVye2NvbG9yOiM2MDYwNjA7b3BhY2l0eToxfWZvcm17bWFyZ2luOjB9YXtjb2xvcjpjdXJyZW50Q29sb3I7dGV4dC1kZWNvcmF0aW9uOm5vbmV9aDF7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7bWF4LWhlaWdodDoyLjVlbTstd2Via2l0LWxpbmUtY2xhbXA6MjtvdmVyZmxvdzpoaWRkZW47bGluZS1oZWlnaHQ6MS4yNTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2ZvbnQtd2VpZ2h0OjQwMDttYXJnaW46MCAwIDNweDttYXJnaW4tYm90dG9tOjB9aDJ7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7bWF4LWhlaWdodDoyLjVlbTstd2Via2l0LWxpbmUtY2xhbXA6MjtvdmVyZmxvdzpoaWRkZW47bGluZS1oZWlnaHQ6MS4yNTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2ZvbnQtd2VpZ2h0OjQwMDttYXJnaW46MCAwIDNweDtmb250LXNpemU6MS44cmVtO21hcmdpbi1ib3R0b206MH1oM3tkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDttYXgtaGVpZ2h0OjIuNWVtOy13ZWJraXQtbGluZS1jbGFtcDoyO292ZXJmbG93OmhpZGRlbjtsaW5lLWhlaWdodDoxLjI1O3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7Zm9udC13ZWlnaHQ6NDAwO21hcmdpbjowIDAgM3B4O2ZvbnQtc2l6ZToxLjRyZW07bWFyZ2luLWJvdHRvbTowfWg0e2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO21heC1oZWlnaHQ6Mi41ZW07LXdlYmtpdC1saW5lLWNsYW1wOjI7b3ZlcmZsb3c6aGlkZGVuO2xpbmUtaGVpZ2h0OjEuMjU7dGV4dC1vdmVyZmxvdzplbGxpcHNpcztmb250LXdlaWdodDo0MDA7bWFyZ2luOjAgMCAzcHg7Zm9udC1zaXplOjEuM3JlbTttYXJnaW4tYm90dG9tOjB9aW1ne21pbi13aWR0aDoxcHg7bWluLWhlaWdodDoxcHg7ZmlsdGVyOm5vbmV9aW1nOm5vdChbc3JjXSl7dmlzaWJpbGl0eTpoaWRkZW59OmZvY3Vze291dGxpbmU6bm9uZX1we21hcmdpbjowfS5pdGVte21hcmdpbi10b3A6MTJweDtkaXNwbGF5OmJsb2NrfS5pdGVtOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbToxMnB4fUBtZWRpYSAobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7Lml0ZW17bWFyZ2luLXRvcDo4cHh9fS5pbWFnZS1vdmVybGF5LXRleHR7dGV4dC1zaGFkb3c6MXB4IDFweCBoc2xhKDAsMCUsNi43JSwuMiksLTFweCAxcHggaHNsYSgwLDAlLDYuNyUsLjIpLC0xcHggLTFweCBoc2xhKDAsMCUsNi43JSwuMiksMXB4IC0xcHggaHNsYSgwLDAlLDYuNyUsLjIpfSNwbGF5ZXItY29udHJvbC1jb250YWluZXJ7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnJnYmEoMCwwLDAsMCk7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lfVtkaXI9cnRsXSAjcGxheWVyLXNob3J0cy1jb250YWluZXJ7ZGlyZWN0aW9uOnJ0bH1bZmF1eC1mdWxsc2NyZWVuPXRydWVdICNwbGF5ZXItY29udHJvbC1jb250YWluZXIsW2ZhdXgtZnVsbHNjcmVlbj10cnVlXSAucGxheWVyLWNvbnRhaW5lciAjcGxheWVyLFtzaG9ydHMtcGxheWVyPXRydWVdICNwbGF5ZXItc2hvcnRzLWNvbnRhaW5lcixbc2hvcnRzLXBsYXllcj10cnVlXSAucGxheWVyLWNvbnRhaW5lciAjcGxheWVye3Bvc2l0aW9uOmZpeGVkO3RvcDowO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO3BhZGRpbmctYm90dG9tOjB9Lm13ZWItbGFuZHNjYXBlLWZ1bGwtc2l6ZS1wbGF5ZXIgLnBsYXllci1jb250YWluZXI6LXdlYmtpdC1mdWxsLXNjcmVlbiAucGxheWVyLXNpemUsLm13ZWItbGFuZHNjYXBlLWZ1bGwtc2l6ZS1wbGF5ZXIgLnBsYXllci1jb250YWluZXI6ZnVsbHNjcmVlbiAucGxheWVyLXNpemUsLm13ZWItbGFuZHNjYXBlLWZ1bGwtc2l6ZS1wbGF5ZXIgW2ZhdXgtZnVsbHNjcmVlbj10cnVlXSAucGxheWVyLWNvbnRhaW5lciAucGxheWVyLXNpemV7aGVpZ2h0OjEwMCU7bWF4LWhlaWdodDoxMDAlO2FzcGVjdC1yYXRpbzphdXRvfVtmYXV4LWZ1bGxzY3JlZW49dHJ1ZV1bZnVsbHNjcmVlbi1yZWplY3RlZD10cnVlXSAjYXBwe2Rpc3BsYXk6bm9uZX1bc2hvcnRzLXBsYXllcj10cnVlXSAucGxheWVyLWNvbnRhaW5lciAuaHRtbDUtdmlkZW8tY29udGFpbmVye3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9W2ZhdXgtZnVsbHNjcmVlbj10cnVlXSAucGxheWVyLWNvbnRhaW5lcixbZmF1eC1mdWxsc2NyZWVuPXRydWVdIHl0bS1tb2JpbGUtdG9wYmFyLXJlbmRlcmVyLFtzaG9ydHMtcGxheWVyPXRydWVdIC5wbGF5ZXItY29udGFpbmVyLFtzaG9ydHMtcGxheWVyPXRydWVdIHl0bS1tb2JpbGUtdG9wYmFyLXJlbmRlcmVyOm5vdCguc2hvcnRzLXRvcGJhcil7b3ZlcmZsb3c6dmlzaWJsZTt6LWluZGV4OjR9W3Nob3J0cy1wbGF5ZXI9dHJ1ZV0gLnBsYXllci1jb250YWluZXIgLnl0cC11bm11dGUueXRwLXBvcHVwe3RvcDo3NXB4O2xlZnQ6MDtsZWZ0OmVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCl9W3JvbGU9YnV0dG9uXSxidXR0b24saW5wdXRbdHlwZT1jaGVja2JveF0sc2VsZWN0e2N1cnNvcjpwb2ludGVyfXl0bS1yZWVsLXBsYXllci1vdmVybGF5LXJlbmRlcmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7d2lkdGg6MTAwJTstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjF9eXRtLXJlZWwtcGxheWVyLW92ZXJsYXktcmVuZGVyZXJbaXMtd2ViXXt3aWR0aDp2YXIoLS15dGQtc2hvcnRzLXBsYXllci13aWR0aCk7aGVpZ2h0OnZhcigtLXl0ZC1zaG9ydHMtcGxheWVyLWhlaWdodCl9eXRtLXJlZWwtcGxheWVyLW92ZXJsYXktcmVuZGVyZXJbaXMtd2ViXSAucmVlbC1wbGF5ZXItb3ZlcmxheS1tZXRhZGF0YXttYXJnaW4tcmlnaHQ6dmFyKC0tYWN0aW9uLWJ1dHRvbi1mdWxsLXdpZHRoLW5lZ2F0aXZlKTtwYWRkaW5nLXJpZ2h0OnZhcigtLWFjdGlvbi1idXR0b24tZnVsbC13aWR0aCl9eXRtLXJlZWwtcGxheWVyLW92ZXJsYXktcmVuZGVyZXJbaXMtd2ViXVtleHRyYWN0LWFjdGlvbi1iYXJde3dpZHRoOmNhbGModmFyKC0teXRkLXNob3J0cy1wbGF5ZXItd2lkdGgpICsgNzJweCl9eXRtLXJlZWwtcGxheWVyLW92ZXJsYXktcmVuZGVyZXJbaXMtd2ViXVtleHRyYWN0LWFjdGlvbi1iYXJdIC5yZWVsLXBsYXllci1vdmVybGF5LW1ldGFkYXRhe21hcmdpbi1yaWdodDowO3BhZGRpbmctcmlnaHQ6MH15dG0tcmVlbC1wbGF5ZXItb3ZlcmxheS1yZW5kZXJlcltpcy13ZWJdW2V4dHJhY3QtYWN0aW9uLWJhcl0gLnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9uc3ttYXJnaW4tYm90dG9tOjE2cHh9eXRtLXJlZWwtcGxheWVyLW92ZXJsYXktcmVuZGVyZXJbaXMtd2ViXVtleHRyYWN0LW92ZXJsYXlde3dpZHRoOjEwMCV9eXRtLXJlZWwtcGxheWVyLW92ZXJsYXktcmVuZGVyZXJbaXMtd2ViXVtleHRyYWN0LW92ZXJsYXldIC5yZWVsLXBsYXllci1vdmVybGF5LW1ldGFkYXRhe3dpZHRoOmNhbGMoKDEwMCUgLSBtYXgodmFyKC0teXRkLXNob3J0cy1wbGF5ZXItd2lkdGgpLCAzMTVweCkpLzIpO21hcmdpbi1yaWdodDptYXgodmFyKC0teXRkLXNob3J0cy1wbGF5ZXItd2lkdGgpLDMxNXB4KTtwYWRkaW5nLXJpZ2h0OjA7YmFja2dyb3VuZC1pbWFnZTpub25lO2ZpbHRlcjp1bnNldDttaW4td2lkdGg6MzYwcHg7bWF4LXdpZHRoOjQ4MHB4O3BhZGRpbmctbGVmdDoxNnB4fXl0bS1yZWVsLXBsYXllci1vdmVybGF5LXJlbmRlcmVyW2lzLXdlYl1bZXh0cmFjdC1vdmVybGF5XSAucmVlbC1wbGF5ZXItb3ZlcmxheS1hY3Rpb25zey1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MX15dG0tcmVlbC1wbGF5ZXItb3ZlcmxheS1yZW5kZXJlciBidXR0b246bm90KFthcmlhLXByZXNzZWQ9dHJ1ZV0pIGMzLWljb257ZmlsdGVyOmRyb3Atc2hhZG93KDAgMXB4IDZweCByZ2JhKDAsMCwwLC40KSl9eXRtLXJlZWwtcGxheWVyLW92ZXJsYXktcmVuZGVyZXIgLnl0U3BlY0J1dHRvblNoYXBlV2l0aExhYmVsTGFiZWx7dGV4dC1zaGFkb3c6MCAxcHggMnB4IHJnYmEoMCwwLDAsMC44KX0ucmVlbC1wbGF5ZXItb3ZlcmxheS1tYWluLWNvbnRlbnR7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxOy1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDplbmQ7LW1vei1ib3gtYWxpZ246c3RyZXRjaDthbGlnbi1pdGVtczpzdHJldGNofS5yZWVsLXBsYXllci1vdmVybGF5LW1ldGFkYXRhe2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1mbGV4OjE7ZmxleDoxIDEgMCU7YWxpZ24tc2VsZjpmbGV4LWVuZDstbW96LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7bWluLXdpZHRoOjA7bWFyZ2luOjAgMCAxNnB4IDE2cHh9eXRtLXJlZWwtcGxheWVyLW92ZXJsYXktcmVuZGVyZXJbZGF0YS1oYXMtaW5mby1wYW5lbD10cnVlXSsuUHJvZ3Jlc3NCYXJTaG93aW5ne3BhZGRpbmctdG9wOjE2cHh9LnJlZWwtcGxheWVyLW92ZXJsYXktbWV0YWRhdGEgeXQtbWV0YWRhdGEtYmFkZ2UtcmVuZGVyZXJ7aGVpZ2h0OjI0cHg7cGFkZGluZzozcHggNHB4IDNweCAwfS5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnN7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7bWFyZ2luOjAgNHB4IDE2cHggNHB4Oy1tb3otYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0ucmVlbC1wbGF5ZXItb3ZlcmxheS10b3AtYmFye2hlaWdodDo0OHB4O3dpZHRoOjQ4cHg7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZy10b3A6MnB4fS5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgLmJ1dHRvbi13aXRoLWljb257bWFyZ2luOjAhaW1wb3J0YW50O21pbi13aWR0aDowO3RleHQtdHJhbnNmb3JtOm5vbmV9LnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9ucyAuYnV0dG9uLXdpdGgtaWNvbiAuYnV0dG9uLXJlbmRlcmVyLXRleHR7bWFyZ2luLXRvcDo3cHg7bWF4LXdpZHRoOjY0cHg7b3ZlcmZsb3c6aGlkZGVuO3doaXRlLXNwYWNlOm5vd3JhcDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgeXRtLWJ1dHRvbi1yZW5kZXJlcnttYXgtd2lkdGg6NjRweH0ucmVlbC1wbGF5ZXItb3ZlcmxheS1hY3Rpb25zIHl0bS1ib3R0b20tc2hlZXQtcmVuZGVyZXIsLnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9ucyB5dG0tbWVudS1yZW5kZXJlcnttYXJnaW4tdG9wOjRweDtkaXNwbGF5OmJsb2NrOy1tb3otYm94LWZsZXg6MTtmbGV4OjE7cGFkZGluZy1yaWdodDo0cHg7cGFkZGluZy10b3A6NHB4O3BhZGRpbmctYm90dG9tOjhweH0ucmVlbC1wbGF5ZXItb3ZlcmxheS1hY3Rpb25zIHBpdm90LWJ1dHRvbi12aWV3LW1vZGVsLC5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgeXRtLWJ1dHRvbi1yZW5kZXJlciwucmVlbC1wbGF5ZXItb3ZlcmxheS1hY3Rpb25zIHl0bS10b2dnbGUtYnV0dG9uLXJlbmRlcmVye2Rpc3BsYXk6YmxvY2s7cGFkZGluZy10b3A6NHB4O3BhZGRpbmctYm90dG9tOjhweDttYXJnaW46MH1AbWVkaWEgKG1heC13aWR0aDo5MzBweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnN7LW1vei1ib3gtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO21heC1oZWlnaHQ6Y2FsYygxMDB2aCAtIDQ4cHgpfS5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgcGl2b3QtYnV0dG9uLXZpZXctbW9kZWwsLnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9ucyB5dG0tYnV0dG9uLXJlbmRlcmVyLC5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgeXRtLXRvZ2dsZS1idXR0b24tcmVuZGVyZXJ7ZGlzcGxheTpibG9jazttYXJnaW4tdG9wOi4zZW19LnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9ucyB5dG0tYm90dG9tLXNoZWV0LXJlbmRlcmVyLC5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgeXRtLW1lbnUtcmVuZGVyZXJ7ZGlzcGxheTpibG9jazttYXJnaW4tdG9wOjB9fS5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgeXRtLW1lbnUtcmVuZGVyZXIgLmljb24tYnV0dG9ue2hlaWdodDo0OHB4O3dpZHRoOjQ4cHh9LnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9ucyBidXR0b24+LmJ1dHRvbi13aXRoLWljb24taW5uZXJ7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufXl0bS1yZWVsLXBsYXllci1vdmVybGF5LXJlbmRlcmVyIHl0bS1wcm9maWxlLWljb257Ym9yZGVyOjFweCBzb2xpZCAjZmZmfUBtZWRpYSAobWF4LWhlaWdodDo0MTFweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey5yZWVsLXBsYXllci1vdmVybGF5LWFjdGlvbnMgLmJ1dHRvbi13aXRoLWljb24sLnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9ucyB5dG0tZm9yY2VkLW11dGUtbWVzc2FnZS1yZW5kZXJlcnttaW4taGVpZ2h0OjQwcHh9LnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9ucyAuYnV0dG9uLXdpdGgtaWNvbiAuYnV0dG9uLXJlbmRlcmVyLXRleHQsLnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9ucyAueXRBdHRyaWJ1dGVkU3RyaW5nSG9zdHtkaXNwbGF5Om5vbmV9LnJlZWwtcGxheWVyLW92ZXJsYXktYWN0aW9ucyB5dG0tbWVudS1yZW5kZXJlciAuaWNvbi1idXR0b257aGVpZ2h0OjMycHh9fS5sb2dvLWluLXBsYXllciwubW9iaWxlLXRvcGJhci1sb2dve2NvbG9yOiNmMDM7cGFkZGluZzowIDEycHg7d2lkdGg6MzBweDtoZWlnaHQ6MzBweDttYXJnaW4tbGVmdDotMXB4fS5sb2dvLWluLXBsYXllci5mdWxsLWxvZ28sLm1vYmlsZS10b3BiYXItbG9nby5mdWxsLWxvZ297d2lkdGg6OTNweDtoZWlnaHQ6MjBweDtjb2xvcjojMDAwO21hcmdpbi1sZWZ0OjB9LmxvZ28taW4tcGxheWVyLnNob3J0cy1sb2dvLC5tb2JpbGUtdG9wYmFyLWxvZ28uc2hvcnRzLWxvZ297d2lkdGg6NzNweDtoZWlnaHQ6MjVweDtjb2xvcjojMDAwO21hcmdpbi1sZWZ0OjB9LmxvZ28taW4tcGxheWVyLmZ1bGwtbG9nby1yZWQsLm1vYmlsZS10b3BiYXItbG9nby5mdWxsLWxvZ28tcmVke3dpZHRoOjEwMXB4fS5sb2dvLWluLXBsYXllci1lbmRwb2ludCwubW9iaWxlLXRvcGJhci1oZWFkZXItZW5kcG9pbnR7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtoZWlnaHQ6NDhweDt0ZXh0LWFsaWduOmxlZnR9LmxvZ28taW4tcGxheWVyLmZ1bGwtbG9nb3tjb2xvcjojZmZmfS5tb25vY2hyb21hdGljIHN2ZyBwYXRoe2ZpbGw6I2ZmZn15dG0tc3Vic2NyaWJlLWJ1dHRvbi1yZW5kZXJlcntkaXNwbGF5OmJsb2NrfXl0bS1zdWJzY3JpYmUtYnV0dG9uLXJlbmRlcmVyIC5idXR0b24tcmVuZGVyZXItaWNvbntoZWlnaHQ6MTZweDt3aWR0aDoxNnB4fS5tb2Rlcm4tc3Vic2NyaWJlLWJ1dHRvbntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS5zdWJzY3JpYmUtYnV0dG9uLWNvdW50e2NvbG9yOiM2MDYwNjA7Zm9udC1zaXplOjEuNHJlbTttYXJnaW46MCA4cHh9QGtleWZyYW1lcyBub3RpZmljYXRpb24tYmVsbC1mYWRlLWluezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTpub25lfX0ubm90aWZpY2F0aW9uLWJlbGwtY29udGFpbmVye2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDo1O2hlaWdodDozNnB4O2JvcmRlci1yYWRpdXM6NTAlO292ZXJmbG93OmhpZGRlbn0ubm90aWZpY2F0aW9uLWJlbGwtY29udGFpbmVyLmhpZGRlbntkaXNwbGF5Om5vbmV9Lm5vdGlmaWNhdGlvbi1iZWxse2Rpc3BsYXk6YmxvY2s7bWFyZ2luLXRvcDotMnB4O2FuaW1hdGlvbjpub3RpZmljYXRpb24tYmVsbC1mYWRlLWluIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ubW9kZXJuLXN1YnNjcmliZS1idXR0b24tY29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7cG9zaXRpb246cmVsYXRpdmV9Lm1vZGVybi1zdWJzY3JpYmUtYnV0dG9uIC55dEF0dHJpYnV0ZWRTdHJpbmdIb3N0e3RyYW5zaXRpb246YWxsIC4yczt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTtwYWRkaW5nLWxlZnQ6MH0uWXRtVmlkZW9JbmZvRXhwYW5kZWQgLm1vZGVybi1zdWJzY3JpYmUtYnV0dG9uIC55dEF0dHJpYnV0ZWRTdHJpbmdIb3N0LC55dG1WaWRlb0luZm9FeHBhbmRlZCAubW9kZXJuLXN1YnNjcmliZS1idXR0b24gLnl0QXR0cmlidXRlZFN0cmluZ0hvc3R7dHJhbnNpdGlvbjpub25lfS53aXRoLW5vdGlmaWNhdGlvbi1iZWxsIC55dEF0dHJpYnV0ZWRTdHJpbmdIb3N0e3BhZGRpbmctbGVmdDoyNHB4fS55dENvcmVJbWFnZUhvc3R7dmlzaWJpbGl0eTpoaWRkZW47ZGlzcGxheTppbmxpbmUtYmxvY2s7bWluLWhlaWdodDoxcHg7bWluLXdpZHRoOjFweH0ueXRDb3JlSW1hZ2VMb2FkZWR7dmlzaWJpbGl0eTppbmhlcml0fS55dENvcmVJbWFnZUZpbGxQYXJlbnRIZWlnaHR7aGVpZ2h0OjEwMCV9Lnl0Q29yZUltYWdlRmlsbFBhcmVudFdpZHRoe3dpZHRoOjEwMCV9Lnl0Q29yZUltYWdlT2JqZWN0UG9zaXRpb25Ub3BMZWZ0e29iamVjdC1wb3NpdGlvbjp0b3AgbGVmdH0ueXRDb3JlSW1hZ2VPYmplY3RQb3NpdGlvblRvcFJpZ2h0e29iamVjdC1wb3NpdGlvbjp0b3AgcmlnaHR9Lnl0Q29yZUltYWdlQ29udGVudE1vZGVTY2FsZVRvRmlsbHtvYmplY3QtZml0OmZpbGx9Lnl0Q29yZUltYWdlQ29udGVudE1vZGVTY2FsZUFzcGVjdEZpdHtvYmplY3QtZml0OmNvbnRhaW59Lnl0Q29yZUltYWdlQ29udGVudE1vZGVTY2FsZUFzcGVjdEZpbGx7b2JqZWN0LWZpdDpjb3Zlcn0ueXRDb3JlSW1hZ2VDb250ZW50TW9kZUNlbnRlcntvYmplY3QtZml0Om5vbmU7b2JqZWN0LXBvc2l0aW9uOmNlbnRlciBjZW50ZXJ9Lnl0Q29yZUltYWdlRmxpcFJ0bHt0cmFuc2Zvcm06c2NhbGVYKC0xKX0ueXRDb3JlSW1hZ2VHcmFkaWVudENvbnRhaW5lcntwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlfS55dENvcmVJbWFnZUdyYWRpZW50e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO3otaW5kZXg6MTtwb2ludGVyLWV2ZW50czpub25lfTpyb290ey0teXQtYXR0cmlidXRlZC1zdHJpbmctbGluay1ob3Zlci1jb2xvcjp1bnNldH0ueXRBdHRyaWJ1dGVkU3RyaW5nSW5saW5lQmxvY2tNb2R7ZGlzcGxheTppbmxpbmUtYmxvY2t9Lnl0QXR0cmlidXRlZFN0cmluZ0ltYWdlQWxpZ25tZW50Qm90dG9te3ZlcnRpY2FsLWFsaWduOmJvdHRvbX0ueXRBdHRyaWJ1dGVkU3RyaW5nSW1hZ2VBbGlnbm1lbnRCYXNlbGluZXt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX0ueXRBdHRyaWJ1dGVkU3RyaW5nSW1hZ2VBbGlnbm1lbnRWZXJ0aWNhbENlbnRlcnt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7cG9zaXRpb246cmVsYXRpdmU7dG9wOi0uMDdlbX0ueXRBdHRyaWJ1dGVkU3RyaW5nTGlzdEdyb3Vwey1tb3otcGFkZGluZy1zdGFydDoyMHB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjIwcHh9Lnl0QXR0cmlidXRlZFN0cmluZ0xpbmt7dGV4dC1kZWNvcmF0aW9uOm5vbmU7ZGlzcGxheTppbmxpbmV9Lnl0QXR0cmlidXRlZFN0cmluZ0xpbmtDYWxsVG9BY3Rpb25Db2xvcntjb2xvcjojMDY1ZmQ0fS55dEF0dHJpYnV0ZWRTdHJpbmdMaW5rT3ZlcmxheUNhbGxUb0FjdGlvbkNvbG9ye2NvbG9yOiMzZWE2ZmZ9Lnl0QXR0cmlidXRlZFN0cmluZ0xpbmtbcm9sZT1idXR0b25de2N1cnNvcjpwb2ludGVyfS55dEF0dHJpYnV0ZWRTdHJpbmdMaW5rSW5oZXJpdENvbG9yIC55dEF0dHJpYnV0ZWRTdHJpbmdMaW5rQ2FsbFRvQWN0aW9uQ29sb3J7Y29sb3I6aW5oZXJpdH0ueXRBdHRyaWJ1dGVkU3RyaW5nTGlua0luaGVyaXRDb2xvciAueXRBdHRyaWJ1dGVkU3RyaW5nTGlua0NhbGxUb0FjdGlvbkNvbG9yOmhvdmVye2NvbG9yOnZhcigtLXl0LWF0dHJpYnV0ZWQtc3RyaW5nLWxpbmstaG92ZXItY29sb3IpfS55dEF0dHJpYnV0ZWRTdHJpbmdFbGxpcHNpc1RydW5jYXRle2Rpc3BsYXk6YmxvY2s7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS55dEF0dHJpYnV0ZWRTdHJpbmdXaGl0ZVNwYWNlTm9XcmFwe3doaXRlLXNwYWNlOm5vd3JhcH0ueXRBdHRyaWJ1dGVkU3RyaW5nV2hpdGVTcGFjZVByZVdyYXB7d2hpdGUtc3BhY2U6cHJlLXdyYXB9Lnl0QXR0cmlidXRlZFN0cmluZ0lnbm9yZVNwbGl0TGluZXN7d2hpdGUtc3BhY2U6bm9ybWFsfS55dEF0dHJpYnV0ZWRTdHJpbmdUZXh0QWxpZ25tZW50TGVmdHtkaXNwbGF5OmJsb2NrO3RleHQtYWxpZ246bGVmdH0ueXRBdHRyaWJ1dGVkU3RyaW5nVGV4dEFsaWdubWVudFJpZ2h0e2Rpc3BsYXk6YmxvY2s7dGV4dC1hbGlnbjpyaWdodH0ueXRBdHRyaWJ1dGVkU3RyaW5nVGV4dEFsaWdubWVudENlbnRlcntkaXNwbGF5OmJsb2NrO3RleHQtYWxpZ246Y2VudGVyfS55dEF0dHJpYnV0ZWRTdHJpbmdUZXh0QWxpZ25tZW50SnVzdGlmaWVke2Rpc3BsYXk6YmxvY2s7dGV4dC1hbGlnbjpqdXN0aWZ5fS55dEF0dHJpYnV0ZWRTdHJpbmdUZXh0QWxpZ25tZW50TGF5b3V0U3RhcnR7ZGlzcGxheTpibG9jazthbGlnbi1zZWxmOmZsZXgtc3RhcnR9Lnl0QXR0cmlidXRlZFN0cmluZ1RleHRBbGlnbm1lbnRVbmtub3due2Rpc3BsYXk6YmxvY2s7dGV4dC1hbGlnbjppbmhlcml0fS55dEF0dHJpYnV0ZWRTdHJpbmdXb3JkV3JhcHBpbmd7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZX0ueXRBdHRyaWJ1dGVkU3RyaW5nVW5kZXJsaW5lZHstbW96LXRleHQtZGVjb3JhdGlvbi1saW5lOnVuZGVybGluZTt0ZXh0LWRlY29yYXRpb24tbGluZTp1bmRlcmxpbmV9Lnl0QXR0cmlidXRlZFN0cmluZ1N0cmlrZXRocm91Z2h7LW1vei10ZXh0LWRlY29yYXRpb24tbGluZTpsaW5lLXRocm91Z2g7dGV4dC1kZWNvcmF0aW9uLWxpbmU6bGluZS10aHJvdWdofS55dEF0dHJpYnV0ZWRTdHJpbmdVbmRlcmxpbmVTdHJpa2V0aHJvdWdoey1tb3otdGV4dC1kZWNvcmF0aW9uLWxpbmU6dW5kZXJsaW5lIGxpbmUtdGhyb3VnaDt0ZXh0LWRlY29yYXRpb24tbGluZTp1bmRlcmxpbmUgbGluZS10aHJvdWdofS55dEF0dHJpYnV0ZWRTdHJpbmdMaW5lU3R5bGVOb25le3RleHQtZGVjb3JhdGlvbjpub25lfS55dEF0dHJpYnV0ZWRTdHJpbmdMaW5lU3R5bGVTaW5nbGV7LW1vei10ZXh0LWRlY29yYXRpb24tc3R5bGU6c29saWQ7dGV4dC1kZWNvcmF0aW9uLXN0eWxlOnNvbGlkfS55dEF0dHJpYnV0ZWRTdHJpbmdMaW5lU3R5bGVEb3R7LW1vei10ZXh0LWRlY29yYXRpb24tc3R5bGU6ZG90dGVkO3RleHQtZGVjb3JhdGlvbi1zdHlsZTpkb3R0ZWR9Lnl0QXR0cmlidXRlZFN0cmluZ0Jhc2VsaW5lT2Zmc2V0U3Vic2NyaXB0e3ZlcnRpY2FsLWFsaWduOnN1Yn0ueXRBdHRyaWJ1dGVkU3RyaW5nQmFzZWxpbmVPZmZzZXRTdXBlcnNjcmlwdHt2ZXJ0aWNhbC1hbGlnbjpzdXBlcn0ueXRBdHRyaWJ1dGVkU3RyaW5nQmFzZWxpbmVPZmZzZXRVbmtub3due3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfS55dEF0dHJpYnV0ZWRTdHJpbmdJdGFsaWNpemVke2ZvbnQtc3R5bGU6aXRhbGljfS55dEF0dHJpYnV0ZWRTdHJpbmdIZWFkaW5nMXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjhyZW07bGluZS1oZWlnaHQ6Mi42cmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRBdHRyaWJ1dGVkU3RyaW5nSGVhZGluZzJ7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo1MDB9Lnl0QXR0cmlidXRlZFN0cmluZ0hlYWRpbmcze2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRCdXR0b25PckFuY2hvckhvc3R7ZGlzcGxheTppbmxpbmUtYmxvY2t9Lnl0QnV0dG9uT3JBbmNob3JCdXR0b257ZGlzcGxheTppbmxpbmUtYmxvY2s7Ym9yZGVyOm5vbmU7Y29sb3I6aW5oZXJpdDtwYWRkaW5nOjA7bWFyZ2luOjA7Y3Vyc29yOnBvaW50ZXI7b3V0bGluZS13aWR0aDowOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtiYWNrZ3JvdW5kOm5vbmU7dGV4dC1kZWNvcmF0aW9uOm5vbmU7dGV4dC1hbGlnbjp1bnNldDt3aWR0aDoxMDAlOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjpyZ2JhKDAsMCwwLDApOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudH0ueXRCdXR0b25PckFuY2hvckFuY2hvcntkaXNwbGF5OmlubGluZS1ibG9jaztjb2xvcjppbmhlcml0O3BhZGRpbmc6MDttYXJnaW46MDt0ZXh0LWRlY29yYXRpb246bm9uZTstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7d2lkdGg6MTAwJX0ueXRSYWRpb1NoYXBlSG9zdHtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmJsb2NrfS55dFJhZGlvU2hhcGVJbnB1dHtwb3NpdGlvbjphYnNvbHV0ZTtvcGFjaXR5Oi4wMDAwMDE7bWFyZ2luOjA7bGVmdDoxMnB4O3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRSYWRpb1NoYXBlTGFiZWxDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjttaW4taGVpZ2h0OjQ4cHg7d2lkdGg6MTAwJTtjb2xvcjojMDMwMzAzfS55dFJhZGlvU2hhcGVLZXlib2FyZEZvY3VzZWR7b3V0bGluZToycHggc29saWQgY3VycmVudENvbG9yO291dGxpbmUtb2Zmc2V0Oi0ycHg7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0UmFkaW9TaGFwZURpc2FibGVke2NvbG9yOiM5MDkwOTB9Lnl0UmFkaW9TaGFwZUxhYmVsey1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MTtkaXNwbGF5OmlubGluZS1ibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTtwYWRkaW5nLXJpZ2h0OjEycHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo0MDB9aW5wdXQ6Y2hlY2tlZCtsYWJlbD4ueXRSYWRpb1NoYXBlUmFkaW8+OmZpcnN0LWNoaWxke2Rpc3BsYXk6bm9uZX1pbnB1dDpub3QoOmNoZWNrZWQpK2xhYmVsPi55dFJhZGlvU2hhcGVSYWRpbz46bGFzdC1jaGlsZHtkaXNwbGF5Om5vbmV9Lnl0UmFkaW9TaGFwZVJhZGlvRGVmYXVsdFN0eWxle2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3BhZGRpbmc6MCAxMnB4O2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9aW5wdXQ6bm90KDpjaGVja2VkKStsYWJlbD4ueXRSYWRpb1NoYXBlQ2hlY2tJY29uPjpmaXJzdC1jaGlsZHt2aXNpYmlsaXR5OmhpZGRlbn0ueXRSYWRpb1NoYXBlQ29tcGFjdHttaW4taGVpZ2h0OjQwcHh9Lnl0UmFkaW9TaGFwZUV2ZW50UGFzc3Rocm91Z2h7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRSYWRpb1NoYXBlVGFwcGFibGV7Y3Vyc29yOnBvaW50ZXJ9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2s7Y29sb3I6IzAzMDMwM30ueXRMaXN0SXRlbVZpZXdNb2RlbEhvc3Q6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOm5vbmV9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxIaWRkZW57ZGlzcGxheTpub25lfS55dExpc3RJdGVtVmlld01vZGVsS2V5Ym9hcmRGb2N1c2VkOmZvY3VzLXdpdGhpbntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4wNSk7b3V0bGluZToycHggc29saWQgY3VycmVudENvbG9yO291dGxpbmUtb2Zmc2V0Oi0ycHg7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxCdXR0b25PckFuY2hvcnt3aWR0aDphdXRvfS55dExpc3RJdGVtVmlld01vZGVsQnV0dG9uT3JBbmNob3I6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOm5vbmV9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxOb1RyYWlsaW5nVGV4dCAueXRMaXN0SXRlbVZpZXdNb2RlbEJ1dHRvbk9yQW5jaG9yLC55dExpc3RJdGVtVmlld01vZGVsTm9UcmFpbGluZ1RleHQgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUZXh0V3JhcHBlcnttaW4td2lkdGg6MH0ueXRMaXN0SXRlbVZpZXdNb2RlbFRleHRXcmFwcGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjE7bWluLWhlaWdodDo0NHB4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUaXRsZVdyYXBwZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRMaXN0SXRlbVZpZXdNb2RlbFRpdGxle2NvbG9yOiMwMzAzMDM7d2hpdGUtc3BhY2U6bm93cmFwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NC40cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExpc3RJdGVtVmlld01vZGVsVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRMaXN0SXRlbVZpZXdNb2RlbFRpdGxle21heC1oZWlnaHQ6NC40cmVtfS55dExpc3RJdGVtVmlld01vZGVsU2luZ2xlTGluZVRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6Mi4ycmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExpc3RJdGVtVmlld01vZGVsU2luZ2xlTGluZVRpdGxley13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0TGlzdEl0ZW1WaWV3TW9kZWxTaW5nbGVMaW5lVGl0bGV7bWF4LWhlaWdodDoyLjJyZW19Lnl0TGlzdEl0ZW1WaWV3TW9kZWxTdWJ0aXRsZXtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dExpc3RJdGVtVmlld01vZGVsV2l0aEJhZGdle21hcmdpbi1sZWZ0OjhweH0ueXRMaXN0SXRlbVZpZXdNb2RlbFN1YnRpdGxlQ29udGFpbmVye21hcmdpbi10b3A6MnB4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxTdXBlcmxhYmVse2NvbG9yOiM2MDYwNjA7bWFyZ2luLWJvdHRvbToycHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDB9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxTZWxlY3Rpb25UZXh0e2NvbG9yOiM2MDYwNjA7bWFyZ2luLWxlZnQ6NHB4fS55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdTZWxlY3Rpb25UZXh0e21hcmdpbi1sZWZ0OjEycHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdMYWJlbHtjb2xvcjojMDMwMzAzO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NC40cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdMYWJlbHstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdMYWJlbHttYXgtaGVpZ2h0OjQuNHJlbX0ueXRMaXN0SXRlbVZpZXdNb2RlbE5ld0NvbnRlbnRJbmRpY2F0b3J7d2lkdGg6NHB4O2hlaWdodDo0cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZC1jb2xvcjojMDY1ZmQ0fS55dExpc3RJdGVtVmlld01vZGVsQ2hldnJvbkljb257aGVpZ2h0OjE4cHg7d2lkdGg6MThweDtmbGV4LXNocmluazowfS55dExpc3RJdGVtVmlld01vZGVsTGVhZGluZ3ttYXJnaW4tcmlnaHQ6MTJweH0ueXRMaXN0SXRlbVZpZXdNb2RlbFRyYWlsaW5nOmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OjEycHh9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUcmFpbGluZzpub3QoOmZpcnN0LWNoaWxkKXttYXJnaW4tbGVmdDoxMnB4fS55dExpc3RJdGVtVmlld01vZGVsUHJpb3JpdGl6ZVRyYWlsaW5nIC55dExpc3RJdGVtVmlld01vZGVsQnV0dG9uT3JBbmNob3IsLnl0TGlzdEl0ZW1WaWV3TW9kZWxQcmlvcml0aXplVHJhaWxpbmcgLnl0TGlzdEl0ZW1WaWV3TW9kZWxTdWJ0aXRsZUNvbnRhaW5lciwueXRMaXN0SXRlbVZpZXdNb2RlbFByaW9yaXRpemVUcmFpbGluZyAueXRMaXN0SXRlbVZpZXdNb2RlbFRleHRXcmFwcGVyLC55dExpc3RJdGVtVmlld01vZGVsUHJpb3JpdGl6ZVRyYWlsaW5nIC55dExpc3RJdGVtVmlld01vZGVsVGl0bGVXcmFwcGVye21pbi13aWR0aDowfS55dExpc3RJdGVtVmlld01vZGVsUHJpb3JpdGl6ZVRyYWlsaW5nIC55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmcsLnl0TGlzdEl0ZW1WaWV3TW9kZWxQcmlvcml0aXplVHJhaWxpbmcgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUcmFpbGluZ0xhYmVsLC55dExpc3RJdGVtVmlld01vZGVsUHJpb3JpdGl6ZVRyYWlsaW5nIC55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdTZWxlY3Rpb25UZXh0e2ZsZXgtc2hyaW5rOjB9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxCdXR0b25Db250YWluZXIsLnl0TGlzdEl0ZW1WaWV3TW9kZWxJbWFnZUNvbnRhaW5lcnthbGlnbi1zZWxmOnN0YXJ0O2ZsZXgtc2hyaW5rOjA7aGVpZ2h0OjQ0cHg7bWluLXdpZHRoOjM2cHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS55dExpc3RJdGVtVmlld01vZGVsQXZhdGFyLC55dExpc3RJdGVtVmlld01vZGVsSW1hZ2V7bWF4LWhlaWdodDozNnB4fS55dExpc3RJdGVtVmlld01vZGVsQWNjZXNzb3J5e2JvcmRlci1yYWRpdXM6MnB4O292ZXJmbG93OmhpZGRlbjtjb2xvcjojMDMwMzAzfS55dExpc3RJdGVtVmlld01vZGVsTGF5b3V0V3JhcHBlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lnl0TGlzdEl0ZW1WaWV3TW9kZWxCb3R0b21BY2Nlc3Nvcnl7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO3BhZGRpbmctdG9wOjRweH0ueXRMaXN0SXRlbVZpZXdNb2RlbE1haW5Db250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRMaXN0SXRlbVZpZXdNb2RlbFN1YnRpdGxlQmFkZ2VXcmFwcGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxTdWJ0aXRsZUJhZGdlV3JhcHBlcjpub3QoOmZpcnN0LWNoaWxkKXttYXJnaW4tbGVmdDo4cHh9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb250YWluZXJ7cGFkZGluZzoycHggMTZweDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7d2lkdGg6MTAwJTtib3JkZXItcmFkaXVzOjhweH0ueXRMaXN0SXRlbVZpZXdNb2RlbERpc2FibGVIb3Jpem9udGFsUGFkZGluZ3twYWRkaW5nOjJweCAwfS55dExpc3RJdGVtVmlld01vZGVsSW5Qb3B1cHtib3JkZXItcmFkaXVzOjB9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxEaXNhYmxlZHtjb2xvcjojNjA2MDYwO3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxEaXNhYmxlZCAueXRMaXN0SXRlbVZpZXdNb2RlbEFjY2Vzc29yeSwueXRMaXN0SXRlbVZpZXdNb2RlbERpc2FibGVkIC55dExpc3RJdGVtVmlld01vZGVsVGl0bGV7Y29sb3I6IzYwNjA2MH0ueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxle2N1cnNvcjpwb2ludGVyOy1tb3otdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfS55dExpc3RJdGVtVmlld01vZGVsVGFwcGFibGU6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMDUpfS55dExpc3RJdGVtVmlld01vZGVsVGFwcGFibGUueXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHkgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjQuNHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxBY3Rpb25UeXBvZ3JhcGh5IC55dExpc3RJdGVtVmlld01vZGVsVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxBY3Rpb25UeXBvZ3JhcGh5IC55dExpc3RJdGVtVmlld01vZGVsVGl0bGV7bWF4LWhlaWdodDo0LjRyZW19Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUYXBwYWJsZS55dExpc3RJdGVtVmlld01vZGVsQWN0aW9uVHlwb2dyYXBoeSAueXRMaXN0SXRlbVZpZXdNb2RlbFRpdGxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxTaW5nbGVMaW5lVGl0bGV7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo1MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoyLjJyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUYXBwYWJsZS55dExpc3RJdGVtVmlld01vZGVsQWN0aW9uVHlwb2dyYXBoeSAueXRMaXN0SXRlbVZpZXdNb2RlbFRpdGxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxTaW5nbGVMaW5lVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjE7bWF4LWhlaWdodDpub25lfX0ueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxBY3Rpb25UeXBvZ3JhcGh5IC55dExpc3RJdGVtVmlld01vZGVsVGl0bGUueXRMaXN0SXRlbVZpZXdNb2RlbFNpbmdsZUxpbmVUaXRsZXttYXgtaGVpZ2h0OjIuMnJlbX0ueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxBY3Rpb25UeXBvZ3JhcGh5IC55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdMYWJlbHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjQuNHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxBY3Rpb25UeXBvZ3JhcGh5IC55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdMYWJlbHstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dExpc3RJdGVtVmlld01vZGVsVGFwcGFibGUueXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHkgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUcmFpbGluZ0xhYmVse21heC1oZWlnaHQ6NC40cmVtfS55dExpc3RJdGVtVmlld01vZGVsSGFzU3VidGl0bGV7cGFkZGluZzo2cHggMTZweH0ueXRMaXN0SXRlbVZpZXdNb2RlbEhhc1N1YnRpdGxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxEaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmd7cGFkZGluZzo2cHggMH0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUZXh0V3JhcHBlcnttaW4taGVpZ2h0OjM2cHh9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0IC55dExpc3RJdGVtVmlld01vZGVsVGl0bGV7d2hpdGUtc3BhY2U6bm93cmFwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0IC55dExpc3RJdGVtVmlld01vZGVsVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUaXRsZXttYXgtaGVpZ2h0OjRyZW19Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0IC55dExpc3RJdGVtVmlld01vZGVsVGl0bGUueXRMaXN0SXRlbVZpZXdNb2RlbFNpbmdsZUxpbmVUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoycmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExpc3RJdGVtVmlld01vZGVsQ29tcGFjdCAueXRMaXN0SXRlbVZpZXdNb2RlbFRpdGxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxTaW5nbGVMaW5lVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjE7bWF4LWhlaWdodDpub25lfX0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUaXRsZS55dExpc3RJdGVtVmlld01vZGVsU2luZ2xlTGluZVRpdGxle21heC1oZWlnaHQ6MnJlbX0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUcmFpbGluZ1NlbGVjdGlvblRleHR7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDB9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0IC55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdMYWJlbHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo0cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExpc3RJdGVtVmlld01vZGVsQ29tcGFjdCAueXRMaXN0SXRlbVZpZXdNb2RlbFRyYWlsaW5nTGFiZWx7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUcmFpbGluZ0xhYmVse21heC1oZWlnaHQ6NHJlbX0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QueXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHkueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlIC55dExpc3RJdGVtVmlld01vZGVsVGl0bGV7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QueXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHkueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlIC55dExpc3RJdGVtVmlld01vZGVsVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QueXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHkueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlIC55dExpc3RJdGVtVmlld01vZGVsVGl0bGV7bWF4LWhlaWdodDo0cmVtfS55dExpc3RJdGVtVmlld01vZGVsQ29tcGFjdC55dExpc3RJdGVtVmlld01vZGVsQWN0aW9uVHlwb2dyYXBoeS55dExpc3RJdGVtVmlld01vZGVsVGFwcGFibGUgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUaXRsZS55dExpc3RJdGVtVmlld01vZGVsU2luZ2xlTGluZVRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjJyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0Lnl0TGlzdEl0ZW1WaWV3TW9kZWxBY3Rpb25UeXBvZ3JhcGh5Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUYXBwYWJsZSAueXRMaXN0SXRlbVZpZXdNb2RlbFRpdGxlLnl0TGlzdEl0ZW1WaWV3TW9kZWxTaW5nbGVMaW5lVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjE7bWF4LWhlaWdodDpub25lfX0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QueXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHkueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlIC55dExpc3RJdGVtVmlld01vZGVsVGl0bGUueXRMaXN0SXRlbVZpZXdNb2RlbFNpbmdsZUxpbmVUaXRsZXttYXgtaGVpZ2h0OjJyZW19Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0Lnl0TGlzdEl0ZW1WaWV3TW9kZWxBY3Rpb25UeXBvZ3JhcGh5Lnl0TGlzdEl0ZW1WaWV3TW9kZWxUYXBwYWJsZSAueXRMaXN0SXRlbVZpZXdNb2RlbFRyYWlsaW5nTGFiZWx7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QueXRMaXN0SXRlbVZpZXdNb2RlbEFjdGlvblR5cG9ncmFwaHkueXRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxlIC55dExpc3RJdGVtVmlld01vZGVsVHJhaWxpbmdMYWJlbHstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dExpc3RJdGVtVmlld01vZGVsQ29tcGFjdC55dExpc3RJdGVtVmlld01vZGVsQWN0aW9uVHlwb2dyYXBoeS55dExpc3RJdGVtVmlld01vZGVsVGFwcGFibGUgLnl0TGlzdEl0ZW1WaWV3TW9kZWxUcmFpbGluZ0xhYmVse21heC1oZWlnaHQ6NHJlbX0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QgLnl0TGlzdEl0ZW1WaWV3TW9kZWxDaGV2cm9uSWNvbntoZWlnaHQ6MTZweDt3aWR0aDoxNnB4fS55dExpc3RJdGVtVmlld01vZGVsQ29tcGFjdCAueXRMaXN0SXRlbVZpZXdNb2RlbEJ1dHRvbkNvbnRhaW5lcntoZWlnaHQ6MzZweDttaW4td2lkdGg6MzZweH0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QgLnl0TGlzdEl0ZW1WaWV3TW9kZWxJbWFnZUNvbnRhaW5lcntoZWlnaHQ6MzZweDttaW4td2lkdGg6MjRweH0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QgLnl0TGlzdEl0ZW1WaWV3TW9kZWxJbWFnZXttYXgtaGVpZ2h0OjI0cHh9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxDb21wYWN0Lnl0TGlzdEl0ZW1WaWV3TW9kZWxIYXNTdWJ0aXRsZSAueXRMaXN0SXRlbVZpZXdNb2RlbFRleHRXcmFwcGVye21pbi1oZWlnaHQ6NDJweH0ueXRMaXN0SXRlbVZpZXdNb2RlbENvbXBhY3QueXRMaXN0SXRlbVZpZXdNb2RlbEhhc1N1YnRpdGxlIC55dExpc3RJdGVtVmlld01vZGVsQnV0dG9uQ29udGFpbmVyLC55dExpc3RJdGVtVmlld01vZGVsQ29tcGFjdC55dExpc3RJdGVtVmlld01vZGVsSGFzU3VidGl0bGUgLnl0TGlzdEl0ZW1WaWV3TW9kZWxJbWFnZUNvbnRhaW5lcntoZWlnaHQ6NDJweH0ueXRMaXN0SXRlbVZpZXdNb2RlbElzT3ZlcmxheSwueXRMaXN0SXRlbVZpZXdNb2RlbElzT3ZlcmxheSAueXRMaXN0SXRlbVZpZXdNb2RlbFRpdGxle2NvbG9yOiNmZmZ9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxJc092ZXJsYXkgLnl0TGlzdEl0ZW1WaWV3TW9kZWxTdWJ0aXRsZXtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyl9Lnl0TGlzdEl0ZW1WaWV3TW9kZWxJc092ZXJsYXkgLnl0TGlzdEl0ZW1WaWV3TW9kZWxBY2Nlc3Nvcnl7Y29sb3I6I2ZmZn0ueXRDaGVja2JveFNoYXBlSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO21pbi1oZWlnaHQ6NDhweDt3aWR0aDoxMDAlO2NvbG9yOiMwMzAzMDM7cG9zaXRpb246cmVsYXRpdmV9Lnl0Q2hlY2tib3hTaGFwZUhvc3RDb21wYWN0e21pbi1oZWlnaHQ6NDBweH0ueXRDaGVja2JveFNoYXBlSW5wdXR7cG9zaXRpb246YWJzb2x1dGU7bWFyZ2luOjA7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtvcGFjaXR5Oi4wMDAwMDE7ei1pbmRleDoxO2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9Lnl0Q2hlY2tib3hTaGFwZUxhYmVsey1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MTtkaXNwbGF5OmlubGluZS1ibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTtwYWRkaW5nLXJpZ2h0OjEycHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo0MDB9Lnl0Q2hlY2tib3hTaGFwZURpc2FibGVIb3Jpem9udGFsUGFkZGluZyAueXRDaGVja2JveFNoYXBlTGFiZWx7cGFkZGluZy1yaWdodDowfS55dENoZWNrYm94U2hhcGVDaGVja2JveERlZmF1bHRTdHlsZXtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwYWRkaW5nOjAgMTJweH1pbnB1dDpjaGVja2Vkfi55dENoZWNrYm94U2hhcGVDaGVja2JveD46Zmlyc3QtY2hpbGR7ZGlzcGxheTpub25lfWlucHV0Om5vdCg6Y2hlY2tlZCl+Lnl0Q2hlY2tib3hTaGFwZUNoZWNrYm94PjpsYXN0LWNoaWxke2Rpc3BsYXk6bm9uZX0ueXRTd2l0Y2hMaXN0SXRlbVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30udG9nZ2xlYWJsZUxpc3RJdGVtVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dExpc3RWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn1AbWVkaWEgKG1heC13aWR0aDoyOTkuOXB4KXsueXRMaXN0Vmlld01vZGVsSG9zdEthaW9zU3BhdE5hdntwYWRkaW5nOjNweH19Lnl0RG93bmxvYWRMaXN0SXRlbVZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5ZdG1Db21wYWN0TWVkaWFJdGVtSG9zdHtwYWRkaW5nOjAgMTJweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleH0uWXRtQ29tcGFjdE1lZGlhSXRlbUhvc3RbZGF0YS1oYXMtc3Vic2NyaWJlLWJ1dHRvbj10cnVlXSAuWXRtQ29tcGFjdE1lZGlhSXRlbU1ldGFkYXRhe3BhZGRpbmc6MDstbW96LWJveC1hbGlnbjpub3JtYWw7YWxpZ24taXRlbXM6bm9ybWFsO21hcmdpbjphdXRvOy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uWXRtQ29tcGFjdE1lZGlhSXRlbUhvc3RbZGF0YS1oYXMtc3Vic2NyaWJlLWJ1dHRvbj10cnVlXSAuWXRtQ29tcGFjdE1lZGlhSXRlbU1ldGFkYXRhIHl0bS1tZW51LXJlbmRlcmVye2hlaWdodDoxMDAlfS5ZdG1Db21wYWN0TWVkaWFJdGVtSG9zdFtkYXRhLWhhcy1zdWJzY3JpYmUtYnV0dG9uPXRydWVdIC5ZdG1Db21wYWN0TWVkaWFJdGVtQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4fS5ZdG1Db21wYWN0TWVkaWFJdGVtSG9zdFtkYXRhLWhhcy1zdWJzY3JpYmUtYnV0dG9uPXRydWVdIC52aWRlby10aHVtYm5haWwtaW1ne3dpZHRoOjY3cHg7aGVpZ2h0OjY3cHg7bWluLWhlaWdodDowO2JvcmRlci1yYWRpdXM6NTAlfS5ZdG1Db21wYWN0TWVkaWFJdGVtSG9zdFtkYXRhLWhhcy1zdWJzY3JpYmUtYnV0dG9uPXRydWVdIC5jaGFubmVsLXN1YnNjcmliZS1idXR0b257cGFkZGluZzowIDAgMCA4cHh9Lll0bUNvbXBhY3RNZWRpYUl0ZW1Ib3N0W2RhdGEtY29sb3ItcGFsZXR0ZS1hcHBsaWVkPXRydWVdIC5ZdG1Db21wYWN0TWVkaWFJdGVtU3ViaGVhZHtvcGFjaXR5OjF9Lll0bUNvbXBhY3RNZWRpYUl0ZW1Ib3N0PmF7ZGlzcGxheTpibG9ja31AbWVkaWEgKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpey5ZdG1Db21wYWN0TWVkaWFJdGVtSG9zdHtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6MCA4cHh9Lll0bUNvbXBhY3RNZWRpYUl0ZW1Ib3N0IC52aWRlby10aHVtYm5haWwtY29udGFpbmVyLWNvbXBhY3QudmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1jb21wYWN0e3dpZHRoOjEwMCU7aGVpZ2h0OmF1dG87cGFkZGluZy1ib3R0b206NTYuMjUlfX0uWXRtQ29tcGFjdE1lZGlhSXRlbUhvc3QgLmVuZ2FnZW1lbnQtYmFye2hlaWdodDoyNHB4O21hcmdpbi10b3A6NHB4fS5ZdG1Db21wYWN0TWVkaWFJdGVtTXVsdGljb2x1bW57cGFkZGluZy1sZWZ0OjA7cGFkZGluZy1yaWdodDowfS5ZdG1Db21wYWN0TWVkaWFJdGVtSW1hZ2V7ZmxleC1zaHJpbms6MH0uWXRtQ29tcGFjdE1lZGlhSXRlbUltYWdlLnN0YWNrZWR7cG9zaXRpb246cmVsYXRpdmU7bWFyZ2luLXRvcDo2cHh9Lll0bUNvbXBhY3RNZWRpYUl0ZW1NZXRhZGF0YXtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjE7bWluLXdpZHRoOjA7b3ZlcmZsb3c6dmlzaWJsZX1AbWVkaWEgKG1pbi13aWR0aDo1NTBweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCksKG1pbi13aWR0aDo5MzFweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey5ZdG1Db21wYWN0TWVkaWFJdGVtTWV0YWRhdGFbZGF0YS1oYXMtYmFkZ2VzPXRydWVdIC5ZdG1Db21wYWN0TWVkaWFJdGVtSGVhZGxpbmV7ZGlzcGxheTpibG9jaztvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9fUBtZWRpYSAobWF4LXdpZHRoOjU0OXB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KSwobWF4LXdpZHRoOjkzMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7Lll0bUNvbXBhY3RNZWRpYUl0ZW1NZXRhZGF0YVtkYXRhLWhhcy1iYWRnZXM9dHJ1ZV0gLll0bUNvbXBhY3RNZWRpYUl0ZW1IZWFkbGluZXttYXgtaGVpZ2h0OjIuNWVtOy13ZWJraXQtbGluZS1jbGFtcDoyfS5ZdG1Db21wYWN0TWVkaWFJdGVtTWV0YWRhdGEuaGFzLWVuZ2FnZW1lbnQtYmFyIC5ZdG1Db21wYWN0TWVkaWFJdGVtSGVhZGxpbmV7bWF4LWhlaWdodDoyLjVlbTstd2Via2l0LWxpbmUtY2xhbXA6Mn0uWXRtQ29tcGFjdE1lZGlhSXRlbU1ldGFkYXRhLmhhcy1lbmdhZ2VtZW50LWJhcltkYXRhLWhhcy1iYWRnZXM9dHJ1ZV0gLll0bUNvbXBhY3RNZWRpYUl0ZW1IZWFkbGluZXttYXgtaGVpZ2h0OjEuMjVlbTstd2Via2l0LWxpbmUtY2xhbXA6MX19QG1lZGlhIChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKSwobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KXsuWXRtQ29tcGFjdE1lZGlhSXRlbU1ldGFkYXRhe3BhZGRpbmc6NHB4IDB9Lll0bUNvbXBhY3RNZWRpYUl0ZW1NZXRhZGF0YVtkYXRhLWhhcy1iYWRnZXM9dHJ1ZV0gLll0bUNvbXBhY3RNZWRpYUl0ZW1IZWFkbGluZXtkaXNwbGF5Oi13ZWJraXQtYm94O3doaXRlLXNwYWNlOm5vcm1hbH19Lll0bUNvbXBhY3RNZWRpYUl0ZW1NZXRhZGF0YUNvbnRlbnR7ZGlzcGxheTpibG9jazstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjE7bWluLXdpZHRoOjA7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6MCA4cHh9Lll0bUNvbXBhY3RNZWRpYUl0ZW1NZXRhZGF0YUNvbnRlbnQuc3RhY2tlZHttYXJnaW4tdG9wOjhweH1AbWVkaWEgKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpey5ZdG1Db21wYWN0TWVkaWFJdGVtTWV0YWRhdGFDb250ZW50e3BhZGRpbmc6MH19Lll0bUNvbXBhY3RNZWRpYUl0ZW1IZWFkbGluZVBsYWNlaG9sZGVye2hlaWdodDoxNnB4O21heC13aWR0aDozMDBweDttYXJnaW4tYm90dG9tOjhweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItcmFkaXVzOjJweH0uWXRtQ29tcGFjdE1lZGlhSXRlbVN1YmhlYWR7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7bWF4LWhlaWdodDoyLjVlbTstd2Via2l0LWxpbmUtY2xhbXA6MjtvdmVyZmxvdzpoaWRkZW47bGluZS1oZWlnaHQ6MS4yNTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2ZvbnQtd2VpZ2h0OjQwMDtvcGFjaXR5Oi42fS5ZdG1Db21wYWN0TWVkaWFJdGVtU3ViaGVhZFBsYWNlaG9sZGVye2hlaWdodDoxNnB4O3dpZHRoOjEyMHB4O21hcmdpbi1ib3R0b206M3B4O2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEpO2JvcmRlci1yYWRpdXM6MnB4fS5ZdG1Db21wYWN0TWVkaWFJdGVtSGVhZGxpbmV7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7bWF4LWhlaWdodDoyLjVlbTstd2Via2l0LWxpbmUtY2xhbXA6MjtsaW5lLWhlaWdodDoxLjI1O3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7Zm9udC13ZWlnaHQ6NDAwO21hcmdpbjowIDAgM3B4O2ZvbnQtc2l6ZToxLjNyZW07b3ZlcmZsb3c6aGlkZGVuO21hcmdpbjowO2ZvbnQtc2l6ZToxLjRyZW19Lll0bUNvbXBhY3RNZWRpYUl0ZW1IZWFkbGluZSAueXRtLWNoYW5uZWwtbmFtZXtmb250LXNpemU6MS40cmVtfUBtZWRpYSAobWF4LXdpZHRoOjU0OXB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KSwobWF4LXdpZHRoOjkzMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7Lll0bUNvbXBhY3RNZWRpYUl0ZW1IZWFkbGluZXttYXgtaGVpZ2h0OjMuNzVlbTstd2Via2l0LWxpbmUtY2xhbXA6M319Lll0bUNvbXBhY3RNZWRpYUl0ZW1CeWxpbmV7ZGlzcGxheTpibG9jaztvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7Zm9udC1zaXplOjEuMnJlbX0uWXRtQ29tcGFjdE1lZGlhSXRlbVN0YXRze2Rpc3BsYXk6aW5saW5lLWJsb2NrO21heC13aWR0aDoxMDAlO292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7dGV4dC1vdmVyZmxvdzplbGxpcHNpcztmb250LXNpemU6MS4ycmVtfS5ZdG1Db21wYWN0TWVkaWFJdGVtU3RhdHN+Lll0bUNvbXBhY3RNZWRpYUl0ZW1TdGF0czpiZWZvcmV7Y29udGVudDoiwqDCt8KgIn0uWXRtQ29tcGFjdE1lZGlhSXRlbURlc2NyaXB0aW9ue21hcmdpbjo4cHggMDtwYWRkaW5nOjA7Zm9udC1zaXplOjEuMnJlbX0uWXRtQ29tcGFjdE1lZGlhSXRlbU1lbnV7ZmxleC1zaHJpbms6MDtjb2xvcjojMDMwMzAzfS5mb3JtYXR0ZWQtc3RyaW5nLWRlZW1waGFzaXple2NvbG9yOiM2MDYwNjB9LmZvcm1hdHRlZC1zdHJpbmctYm9sZHtmb250LXdlaWdodDo1MDB9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUhvc3R7ZGlzcGxheTppbmxpbmUtYmxvY2s7Ym9yZGVyLXJhZGl1czppbmhlcml0O3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowfS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVUcmlnZ2VyRXZlbnRze3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUhvdmVyRWZmZWN0e3RyYW5zaXRpb246YWxsIC4zcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHksdHJhbnNmb3JtO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEpO29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGUoLjkpO3dpbGwtY2hhbmdlOm9wYWNpdHksdHJhbnNmb3JtO2JvcmRlci1yYWRpdXM6aW5oZXJpdDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MH0ueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlSG92ZXJlZCAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlSG92ZXJFZmZlY3R7b3BhY2l0eToxO3RyYW5zZm9ybTpzY2FsZSgxKX0ueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlU3Ryb2tle3dpbGwtY2hhbmdlOm9wYWNpdHk7b3BhY2l0eTowO2JvcmRlci1yYWRpdXM6aW5oZXJpdDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MH0ueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRG93biAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRm9jdXNlZCAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbHtvcGFjaXR5Oi4xfS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVUaHVtYm5haWxTaXplU21hbGx7bWFyZ2luOi00cHh9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRodW1ibmFpbFNpemVTbWFsbCAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVGh1bWJuYWlsU2l6ZVNtYWxsIC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVIb3ZlckVmZmVjdCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVGh1bWJuYWlsU2l6ZVNtYWxsIC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVTdHJva2V7Ym9yZGVyLXJhZGl1czo0cHh9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRodW1ibmFpbFNpemVNZWRpdW17bWFyZ2luOi04cHh9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRodW1ibmFpbFNpemVNZWRpdW0gLnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUZpbGwsLnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRodW1ibmFpbFNpemVNZWRpdW0gLnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUhvdmVyRWZmZWN0LC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVUaHVtYm5haWxTaXplTWVkaXVtIC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVTdHJva2V7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRodW1ibmFpbFNpemVMYXJnZXttYXJnaW46LTEycHh9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVRodW1ibmFpbFNpemVMYXJnZSAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVGh1bWJuYWlsU2l6ZUxhcmdlIC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVIb3ZlckVmZmVjdCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVGh1bWJuYWlsU2l6ZUxhcmdlIC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVTdHJva2V7Ym9yZGVyLXJhZGl1czoxNnB4fS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVDaXJjdWxhciAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlQ2lyY3VsYXIgLnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUhvdmVyRWZmZWN0LC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVDaXJjdWxhciAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlU3Ryb2tle2JvcmRlci1yYWRpdXM6NTAlfS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVUb3VjaFJlc3BvbnNlIC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVGaWxse2JhY2tncm91bmQtY29sb3I6IzAwMH0ueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVG91Y2hSZXNwb25zZSAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlU3Ryb2tle2JvcmRlcjoxcHggc29saWQgIzAwMH0ueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVG91Y2hSZXNwb25zZUludmVyc2UgLnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUZpbGx7YmFja2dyb3VuZC1jb2xvcjojZmZmfS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVUb3VjaFJlc3BvbnNlSW52ZXJzZSAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlU3Ryb2tle2JvcmRlcjoxcHggc29saWQgI2ZmZn0ueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVG91Y2hSZXNwb25zZUludmVyc2UueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRG93biAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbCwueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlVG91Y2hSZXNwb25zZUludmVyc2UueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRm9jdXNlZCAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbHtvcGFjaXR5Oi4yfS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVPdmVybGF5VG91Y2hSZXNwb25zZSAueXRTcGVjVG91Y2hGZWVkYmFja1NoYXBlRmlsbHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9Lnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZU92ZXJsYXlUb3VjaFJlc3BvbnNlIC55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVTdHJva2V7Ym9yZGVyOjFweCBzb2xpZCAjZmZmfS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVPdmVybGF5VG91Y2hSZXNwb25zZUludmVyc2UgLnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZUZpbGx7YmFja2dyb3VuZC1jb2xvcjojMDAwfS55dFNwZWNUb3VjaEZlZWRiYWNrU2hhcGVPdmVybGF5VG91Y2hSZXNwb25zZUludmVyc2UgLnl0U3BlY1RvdWNoRmVlZGJhY2tTaGFwZVN0cm9rZXtib3JkZXI6MXB4IHNvbGlkICMwMDB9QGtleWZyYW1lcyBwb3BvdmVyLWZhZGUtaW57MCV7b3BhY2l0eTowfX1Aa2V5ZnJhbWVzIHBvcG92ZXItZmFkZS1vdXR7dG97b3BhY2l0eTowfX0ueXRQb3BvdmVyQ29tcG9uZW50SG9zdHttYXJnaW46MDtwb3NpdGlvbjphYnNvbHV0ZX0ueXRQb3BvdmVyQ29tcG9uZW50SG9zdC5cOnBvcG92ZXItb3BlbiwueXRQb3BvdmVyQ29tcG9uZW50SG9zdDpwb3BvdmVyLW9wZW57YW5pbWF0aW9uOnBvcG92ZXItZmFkZS1pbiAuMTVzIGVhc2UtaW59Lnl0UG9wb3ZlckNvbXBvbmVudEhvc3RDbG9zaW5nLlw6cG9wb3Zlci1vcGVuLC55dFBvcG92ZXJDb21wb25lbnRIb3N0Q2xvc2luZzpwb3BvdmVyLW9wZW57YW5pbWF0aW9uOnBvcG92ZXItZmFkZS1vdXQgNzVtcyBlYXNlLW91dCBmb3J3YXJkc30ueXRUb29sdGlwQ29udGFpbmVySG9zdHtkaXNwbGF5OmJsb2NrfS55dFRvb2x0aXBDb250YWluZXJEZWZhdWx0VG9vbHRpcENvbnRlbnR7cGFkZGluZzo4cHg7Ym9yZGVyLXN0eWxlOm5vbmU7Ym9yZGVyLXJhZGl1czo0cHg7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiM2MDYwNjA7b3BhY2l0eTouOTtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRUb29sdGlwQ29udGFpbmVyUGxheWVyVG9vbHRpcENvbnRlbnQsLnl0VG9vbHRpcENvbnRhaW5lclBsYXllclRvb2x0aXBDb250ZW50Qmx1cnJlZHtwYWRkaW5nOjRweCA4cHg7Ym9yZGVyLXN0eWxlOm5vbmU7Ym9yZGVyLXJhZGl1czo4cHg7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4zKTt0ZXh0LXNoYWRvdzowIDJweCA4cHggIzAwMDtvcGFjaXR5Oi45O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRUb29sdGlwQ29udGFpbmVyUGxheWVyVG9vbHRpcENvbnRlbnRCbHVycmVke29wYWNpdHk6dW5zZXQ7YmFja2Ryb3AtZmlsdGVyOmJsdXIoOHB4KTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC42KX0ueXRUb29sdGlwQ29udGFpbmVyRWZmZWN0TWFrZXJUb29sdGlwQ29udGVudHtwYWRkaW5nOjRweCA4cHg7Ym9yZGVyLXN0eWxlOm5vbmU7Ym9yZGVyLXJhZGl1czo0cHg7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOiMwZjBmMGY7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDB9Lnl0VG9vbHRpcENvbnRhaW5lckhvdGtleXtkaXNwbGF5OmlubGluZTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsMC4zKTtib3JkZXItcmFkaXVzOjRweDtwYWRkaW5nOjAgNnB4O21hcmdpbi1sZWZ0OjhweDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo1MDB9OnJvb3R7LS15dC1saWdodC1yaW0tY29sb3I6dW5zZXQ7LS15dC1saWdodC13YXNoLW9wYWNpdHk6MDstLXl0LWxpZ2h0LXdhc2gteDowOy0teXQtbGlnaHQtd2FzaC15OjA7LS15dC1saWdodC13YXNoLXNpemU6OTZweDstLXl0LWxpZ2h0LXdhc2gtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjMpfS5jb250cmliWXRMaWdodFNoYXBlSG9zdHtkaXNwbGF5OmJsb2NrO292ZXJmbG93OmhpZGRlbjtib3JkZXItcmFkaXVzOmluaGVyaXQ7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtwb2ludGVyLWV2ZW50czpub25lfS5jb250cmliWXRMaWdodFNoYXBlU3RhdGljUmltTGlnaHQ6YmVmb3Jle2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtib3JkZXItcmFkaXVzOmluaGVyaXQ7cGFkZGluZzouNXB4Oy13ZWJraXQtbWFzazpsaW5lYXItZ3JhZGllbnQoI2ZmZiAwIDApIGNvbnRlbnQtYm94LGxpbmVhci1ncmFkaWVudCgjZmZmIDAgMCk7bWFzay1jb21wb3NpdGU6ZXhjbHVkZTtwb2ludGVyLWV2ZW50czpub25lfS5jb250cmliWXRMaWdodFNoYXBlU3RhdGljUmltTGlnaHRTb2xpZDpiZWZvcmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodmFyKC0teXQtbGlnaHQtcmltLWNvbG9yLHJnYmEoMjU1LDI1NSwyNTUsMC4yKSksdHJhbnNwYXJlbnQgNzUlKX0uY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1JpbUxpZ2h0VG9uYWw6YmVmb3Jle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHZhcigtLXl0LWxpZ2h0LXJpbS1jb2xvcixyZ2JhKDAsMCwwLDAuMDUpKSx0cmFuc3BhcmVudCA3NSUpfS5jb250cmliWXRMaWdodFNoYXBlU3RhdGljUmltTGlnaHRPdXRsaW5le2luc2V0Oi0xcHh9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNSaW1MaWdodE91dGxpbmU6YmVmb3Jle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHZhcigtLXl0LWxpZ2h0LXJpbS1jb2xvcixyZ2JhKDI1NSwyNTUsMjU1LDAuMykpLHRyYW5zcGFyZW50IDc1JSl9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNSaW1MaWdodFNvbGlkSW52ZXJzZTpiZWZvcmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodmFyKC0teXQtbGlnaHQtcmltLWNvbG9yLHJnYmEoMjU1LDI1NSwyNTUsMC4yKSksdHJhbnNwYXJlbnQgNzUlKX0uY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1JpbUxpZ2h0VG9uYWxJbnZlcnNlOmJlZm9yZXtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh2YXIoLS15dC1saWdodC1yaW0tY29sb3IscmdiYSgyNTUsMjU1LDI1NSwwLjE1KSksdHJhbnNwYXJlbnQgNzUlKX0uY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1JpbUxpZ2h0T3V0bGluZUludmVyc2V7aW5zZXQ6LTFweH0uY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1JpbUxpZ2h0T3V0bGluZUludmVyc2U6YmVmb3Jle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHZhcigtLXl0LWxpZ2h0LXJpbS1jb2xvcixyZ2JhKDI1NSwyNTUsMjU1LDAuMTUpKSx0cmFuc3BhcmVudCA3NSUpfS5jb250cmliWXRMaWdodFNoYXBlU3RhdGljUmltTGlnaHRPdmVybGF5U29saWQ6YmVmb3Jle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHZhcigtLXl0LWxpZ2h0LXJpbS1jb2xvcixyZ2JhKDI1NSwyNTUsMjU1LDAuMikpLHRyYW5zcGFyZW50IDc1JSl9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNSaW1MaWdodE92ZXJsYXlUb25hbDpiZWZvcmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodmFyKC0teXQtbGlnaHQtcmltLWNvbG9yLHJnYmEoMjU1LDI1NSwyNTUsMC4xNSkpLHRyYW5zcGFyZW50IDc1JSl9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNSaW1MaWdodE92ZXJsYXlPdXRsaW5le2luc2V0Oi0xcHh9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNSaW1MaWdodE92ZXJsYXlPdXRsaW5lOmJlZm9yZXtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh2YXIoLS15dC1saWdodC1yaW0tY29sb3IscmdiYSgyNTUsMjU1LDI1NSwwLjE1KSksdHJhbnNwYXJlbnQgNzUlKX0uY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1dhc2hMaWdodHtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7Ym90dG9tOjUwJTtsZWZ0OjA7Ym9yZGVyLXJhZGl1czppbmhlcml0O2ZpbHRlcjpibHVyKDEwcHgpfS5jb250cmliWXRMaWdodFNoYXBlU3RhdGljV2FzaExpZ2h0U2FmYXJpe3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfS5jb250cmliWXRMaWdodFNoYXBlU3RhdGljV2FzaExpZ2h0U29saWR7YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMTUpfS5jb250cmliWXRMaWdodFNoYXBlU3RhdGljV2FzaExpZ2h0VG9uYWx7YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMil9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNXYXNoTGlnaHRTb2xpZEludmVyc2V7YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMyl9LmNvbnRyaWJZdExpZ2h0U2hhcGVTdGF0aWNXYXNoTGlnaHRUb25hbEludmVyc2V7YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMDUpfS5jb250cmliWXRMaWdodFNoYXBlU3RhdGljV2FzaExpZ2h0T3ZlcmxheVNvbGlke2JhY2tncm91bmQ6I2ZmZn0uY29udHJpYll0TGlnaHRTaGFwZVN0YXRpY1dhc2hMaWdodE92ZXJsYXlUb25hbHtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4xNSl9LmNvbnRyaWJZdExpZ2h0U2hhcGVEeW5hbWljV2FzaExpZ2h0e3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpIHRyYW5zbGF0ZSh2YXIoLS15dC1saWdodC13YXNoLXgsMCksdmFyKC0teXQtbGlnaHQtd2FzaC15LDApKTtib3JkZXItcmFkaXVzOmluaGVyaXQ7d2lkdGg6dmFyKC0teXQtbGlnaHQtd2FzaC1zaXplLDk2cHgpO2hlaWdodDp2YXIoLS15dC1saWdodC13YXNoLXNpemUsOTZweCk7b3BhY2l0eTp2YXIoLS15dC1saWdodC13YXNoLW9wYWNpdHksMCk7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGZhcnRoZXN0LWNvcm5lciBhdCBjZW50ZXIscmdiYSgyNTUsMjU1LDI1NSwuMikgMCx0cmFuc3BhcmVudCAxMDAlKTtwb2ludGVyLWV2ZW50czpub25lO2ZpbHRlcjpibHVyKDE1cHgpfS55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG9zdHtib3JkZXItcmFkaXVzOmluaGVyaXQ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjA7b3ZlcmZsb3c6aGlkZGVuO3BvaW50ZXItZXZlbnRzOmF1dG87Y29udGFpbjpsYXlvdXQgc3R5bGUgcGFpbnQ7LW1vei11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9Lnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MH1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246bm8tcHJlZmVyZW5jZSl7Lnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXl7dHJhbnNpdGlvbjpvcGFjaXR5IC40NXMgY3ViaWMtYmV6aWVyKC4yNSwxLC44LDEpfX0ueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZVByZXNzZWQgLnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXl7dHJhbnNpdGlvbi1kdXJhdGlvbjo0MG1zfS55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5RGVmYXVsdCAueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmZ9Lnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXlEZWZhdWx0OmhvdmVyIC55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5e29wYWNpdHk6LjA1fS55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5RGVmYXVsdC55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlUHJlc3NlZCAueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheXtvcGFjaXR5Oi4xfTpyb290W2RhcmtdIC55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5RGVmYXVsdCAueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheXtiYWNrZ3JvdW5kLWNvbG9yOiMwMDB9OnJvb3RbZGFya10gLnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXlEZWZhdWx0OmhvdmVyIC55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5e29wYWNpdHk6LjJ9OnJvb3RbZGFya10gLnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXlEZWZhdWx0Lnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVQcmVzc2VkIC55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5e29wYWNpdHk6LjN9Lnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXlJbnZlcnNlIC55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5e2JhY2tncm91bmQtY29sb3I6IzAwMH0ueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheUludmVyc2U6aG92ZXIgLnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXl7b3BhY2l0eTouMn0ueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheUludmVyc2UueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZVByZXNzZWQgLnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXl7b3BhY2l0eTouM306cm9vdFtkYXJrXSAueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheUludmVyc2UgLnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXl7YmFja2dyb3VuZC1jb2xvcjojZmZmfTpyb290W2RhcmtdIC55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG92ZXJPdmVybGF5SW52ZXJzZTpob3ZlciAueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheXtvcGFjaXR5Oi4wNX06cm9vdFtkYXJrXSAueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyT3ZlcmxheUludmVyc2UueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZVByZXNzZWQgLnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3Zlck92ZXJsYXl7b3BhY2l0eTouMX0ueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZVRvdWNoTGlnaHR7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MDtoZWlnaHQ6MDt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7ZmlsdGVyOmJsdXIoMjRweCk7b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmU7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCNmZmYgMCxyZ2JhKDI1NSwyNTUsMjU1LC42KSAzNSUscmdiYSgyNTUsMjU1LDI1NSwuMTUpIDcwJSx0cmFuc3BhcmVudCAxMDAlKTtib3JkZXItcmFkaXVzOjUwJX0ueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyTGlnaHR7cG9zaXRpb246YWJzb2x1dGU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO2ZpbHRlcjpibHVyKDMycHgpO29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lO2JhY2tncm91bmQ6cmFkaWFsLWdyYWRpZW50KGNpcmNsZSwjZmZmIDAscmdiYSgyNTUsMjU1LDI1NSwuNSkgNTAlLHJnYmEoMjU1LDI1NSwyNTUsLjE1KSA4MCUscmdiYSgyNTUsMjU1LDI1NSwwKSAxMDAlKTtib3JkZXItcmFkaXVzOjUwJX1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246bm8tcHJlZmVyZW5jZSl7Lnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3ZlckxpZ2h0e3RyYW5zaXRpb246b3BhY2l0eSAuM3MgZWFzZSx3aWR0aCAuMTVzIGN1YmljLWJlemllciguMjUsMSwuNSwxKSxoZWlnaHQgLjE1cyBjdWJpYy1iZXppZXIoLjI1LDEsLjUsMSl9fS55dExpZ2h0VG91Y2hGZWVkYmFja1NoYXBlSG9zdDpob3ZlciAueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvdmVyTGlnaHR7b3BhY2l0eTouMn0ueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZUhvc3QueXRMaWdodFRvdWNoRmVlZGJhY2tTaGFwZVByZXNzZWQgLnl0TGlnaHRUb3VjaEZlZWRiYWNrU2hhcGVIb3ZlckxpZ2h0e29wYWNpdHk6LjM1O3RyYW5zaXRpb24tZHVyYXRpb246LjA0c30uYW5pbWF0ZWRSb2xsaW5nQ2hhcmFjdGVySG9zdHtkaXNwbGF5OmlubGluZX0uYW5pbWF0ZWRSb2xsaW5nTnVtYmVySG9zdHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo1MDA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7b3ZlcmZsb3c6aGlkZGVufS55dFNwZWNCdXR0b25TaGFwZU5leHRIb3N0e3Bvc2l0aW9uOnJlbGF0aXZlO21hcmdpbjowO3doaXRlLXNwYWNlOm5vd3JhcDttaW4td2lkdGg6MDt0ZXh0LXRyYW5zZm9ybTpub25lO2ZvbnQtZmFtaWx5OlJvYm90byxBcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxOHB4O2JvcmRlcjpub25lO2N1cnNvcjpwb2ludGVyO291dGxpbmUtd2lkdGg6MDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7YmFja2dyb3VuZDpub25lO3RleHQtZGVjb3JhdGlvbjpub25lOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjpyZ2JhKDAsMCwwLDApOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudDstbW96LWJveC1mbGV4OjE7ZmxleDoxO2ZsZXgtYmFzaXM6MC4wMDAwMDAwMDFweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEVsZXZhdGVkQ29udGVudHt6LWluZGV4OjE7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbiwueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2Vjb25kYXJ5SWNvbntsaW5lLWhlaWdodDowO2ZpbGw6Y3VycmVudENvbG9yfS55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uey1tb3otYm94LWZsZXg6MDtmbGV4Om5vbmV9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEJ1dHRvblRleHRDb250ZW50e3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7b3ZlcmZsb3c6aGlkZGVufS55dFNwZWNCdXR0b25TaGFwZU5leHRNaWRkbGVncm91bmRBc3NldHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTt3aWR0aDpyb3VuZCh1cCwxMDAlLDFweCk7aGVpZ2h0OjEwMCU7b3ZlcmZsb3c6aGlkZGVuO3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZlYXR1cmVQaG9uZVdyYXBwZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhze3BhZGRpbmc6MCA4cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le3BhZGRpbmc6MCA3cHg7Ym9yZGVyLXdpZHRoOjFweDtib3JkZXItc3R5bGU6c29saWR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke3BhZGRpbmc6MCA2cHg7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWR9QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZHtwYWRkaW5nOjAgOHB4O3dpZHRoOjMycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZCAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tbGVmdDotMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvblRyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0OjJweDttYXJnaW4tcmlnaHQ6LTJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1yaWdodDoycHg7bWFyZ2luLWxlZnQ6LTJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi02cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1yaWdodDoycHg7bWFyZ2luLWxlZnQ6LTJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlY29uZGFyeUljb257bWFyZ2luLWxlZnQ6MnB4O21hcmdpbi1yaWdodDotMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotNnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHN7aGVpZ2h0OjI0cHg7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MjRweDtib3JkZXItcmFkaXVzOjEycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWlkZGxlZ3JvdW5kQXNzZXR7Ym9yZGVyLXJhZGl1czoxMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257d2lkdGg6MTZweDtoZWlnaHQ6MTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b257d2lkdGg6MjRweDtwYWRkaW5nOjB9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi00cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRTdGFydHtib3JkZXItcmFkaXVzOjEycHggMCAwIDEycHg7cG9zaXRpb246cmVsYXRpdmV9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRTdGFydDphZnRlcntjb250ZW50OiIiO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjRweDtoZWlnaHQ6MTZweDt3aWR0aDoxcHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmR7Ym9yZGVyLXJhZGl1czowIDEycHggMTJweCAwfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZ05vVGV4dCAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6MH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZUljb25TaXplIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue2hlaWdodDoxMnB4O3dpZHRoOjEycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5ne3BhZGRpbmc6MCA4cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7cGFkZGluZzowIDdweDtib3JkZXItd2lkdGg6MXB4O2JvcmRlci1zdHlsZTpzb2xpZH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtwYWRkaW5nOjAgNnB4O2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmR7cGFkZGluZzowIDhweDt3aWR0aDozMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZCAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tbGVmdDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLWxlZnQ6NHB4O21hcmdpbi1yaWdodDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6NHB4O21hcmdpbi1sZWZ0Oi00cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi00cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYcy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjRweDttYXJnaW4tbGVmdDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWHMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRTZWNvbmRhcnlJY29ue21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6LTRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhzLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplU3twYWRkaW5nOjAgMTJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZXtwYWRkaW5nOjAgMTFweDtib3JkZXItd2lkdGg6MXB4O2JvcmRlci1zdHlsZTpzb2xpZH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtwYWRkaW5nOjAgMTBweDtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi0xMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZHtwYWRkaW5nOjAgMTJweDt3aWR0aDo0NHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZCAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tbGVmdDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLWxlZnQ6NHB4O21hcmdpbi1yaWdodDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6NHB4O21hcmdpbi1sZWZ0Oi00cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjRweDttYXJnaW4tbGVmdDotNHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRTZWNvbmRhcnlJY29ue21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6LTRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplU3toZWlnaHQ6MzJweDtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDozMnB4O2JvcmRlci1yYWRpdXM6MTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMgLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1pZGRsZWdyb3VuZEFzc2V0e2JvcmRlci1yYWRpdXM6MTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257d2lkdGg6MTZweDtoZWlnaHQ6MTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbnt3aWR0aDozMnB4O3BhZGRpbmc6MH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVycmlkZVNtYWxsU2l6ZUljb24gLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkU3RhcnR7Ym9yZGVyLXJhZGl1czoxNnB4IDAgMCAxNnB4O3Bvc2l0aW9uOnJlbGF0aXZlfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRTdGFydDphZnRlcntjb250ZW50OiIiO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjhweDtoZWlnaHQ6MTZweDt3aWR0aDoxcHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZHtib3JkZXItcmFkaXVzOjAgMTZweCAxNnB4IDB9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmdOb1RleHQgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjB9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZUljb25TaXplOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcnJpZGVTbWFsbFNpemVJY29uKSAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbntoZWlnaHQ6MThweDt3aWR0aDoxOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5ne3BhZGRpbmc6MCAxMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7cGFkZGluZzowIDExcHg7Ym9yZGVyLXdpZHRoOjFweDtib3JkZXItc3R5bGU6c29saWR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtwYWRkaW5nOjAgMTBweDtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZHtwYWRkaW5nOjAgMTJweDt3aWR0aDo0NHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplUy55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkRW5kIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0Oi00cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvblRyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6LTRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6NHB4O21hcmdpbi1sZWZ0Oi00cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVTLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1yaWdodDo0cHg7bWFyZ2luLWxlZnQ6LTRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRTZWNvbmRhcnlJY29ue21hcmdpbi1sZWZ0OjRweDttYXJnaW4tcmlnaHQ6LTRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVMueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNe3BhZGRpbmc6MCAxNnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le3BhZGRpbmc6MCAxNXB4O2JvcmRlci13aWR0aDoxcHg7Ym9yZGVyLXN0eWxlOnNvbGlkfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke3BhZGRpbmc6MCAxNHB4O2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LTE2cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkRW5ke3BhZGRpbmc6MCAxNnB4O3dpZHRoOjUycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkRW5kIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0Oi02cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25UcmFpbGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tbGVmdDo2cHg7bWFyZ2luLXJpZ2h0Oi02cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1yaWdodDo2cHg7bWFyZ2luLWxlZnQ6LTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LTEwcHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjZweDttYXJnaW4tbGVmdDotNnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRTZWNvbmRhcnlJY29ue21hcmdpbi1sZWZ0OjZweDttYXJnaW4tcmlnaHQ6LTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTBweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU17aGVpZ2h0OjM2cHg7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MzZweDtib3JkZXItcmFkaXVzOjE4cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNIC55dFNwZWNCdXR0b25TaGFwZU5leHRNaWRkbGVncm91bmRBc3NldHtib3JkZXItcmFkaXVzOjE4cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b257d2lkdGg6MzZweDtwYWRkaW5nOjB9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkU3RhcnR7Ym9yZGVyLXJhZGl1czoxOHB4IDAgMCAxOHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRTdGFydDphZnRlcntjb250ZW50OiIiO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjZweDtoZWlnaHQ6MjRweDt3aWR0aDoxcHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZHtib3JkZXItcmFkaXVzOjAgMThweCAxOHB4IDB9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmdOb1RleHQgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjB9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZUljb25TaXplLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkRW5kIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uLC55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VJY29uU2l6ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24pOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbk9ubHlEZWZhdWx0KSAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbntoZWlnaHQ6MThweDt3aWR0aDoxOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5ne3BhZGRpbmc6MCAxNnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7cGFkZGluZzowIDE1cHg7Ym9yZGVyLXdpZHRoOjFweDtib3JkZXItc3R5bGU6c29saWR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtwYWRkaW5nOjAgMTRweDtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZHtwYWRkaW5nOjAgMTZweDt3aWR0aDo1MnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTS55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkRW5kIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0Oi02cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvblRyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0OjZweDttYXJnaW4tcmlnaHQ6LTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZU0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6NnB4O21hcmdpbi1sZWZ0Oi02cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LTEwcHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6NnB4O21hcmdpbi1sZWZ0Oi02cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2Vjb25kYXJ5SWNvbnttYXJnaW4tbGVmdDo2cHg7bWFyZ2luLXJpZ2h0Oi02cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVNLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTBweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUx7cGFkZGluZzowIDI0cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7cGFkZGluZzowIDIzcHg7Ym9yZGVyLXdpZHRoOjFweDtib3JkZXItc3R5bGU6c29saWR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7cGFkZGluZzowIDIycHg7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWR9QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWR9fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMjRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmR7cGFkZGluZzowIDI0cHg7d2lkdGg6NzJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmQgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLWxlZnQ6LThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvblRyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0OjhweDttYXJnaW4tcmlnaHQ6LThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjhweDttYXJnaW4tbGVmdDotOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6OHB4O21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlY29uZGFyeUljb257bWFyZ2luLWxlZnQ6OHB4O21hcmdpbi1yaWdodDotOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi0xNnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTHtoZWlnaHQ6NDhweDtmb250LXNpemU6MThweDtsaW5lLWhlaWdodDo0OHB4O2JvcmRlci1yYWRpdXM6MjRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwgLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1pZGRsZWdyb3VuZEFzc2V0e2JvcmRlci1yYWRpdXM6MjRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257d2lkdGg6MjRweDtoZWlnaHQ6MjRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbnt3aWR0aDo0OHB4O3BhZGRpbmc6MH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkU3RhcnR7Ym9yZGVyLXJhZGl1czoyNHB4IDAgMCAyNHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRTdGFydDphZnRlcntjb250ZW50OiIiO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjEycHg7aGVpZ2h0OjI0cHg7d2lkdGg6MXB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmR7Ym9yZGVyLXJhZGl1czowIDI0cHggMjRweCAwfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nTm9UZXh0IC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1yaWdodDowfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5ne3BhZGRpbmc6MCAyMHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7cGFkZGluZzowIDE5cHg7Ym9yZGVyLXdpZHRoOjFweDtib3JkZXItc3R5bGU6c29saWR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtwYWRkaW5nOjAgMThweDtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMjBweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZEVuZHtwYWRkaW5nOjAgMjBweDt3aWR0aDo2OHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplTC55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkRW5kIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvblRyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0OjhweDttYXJnaW4tcmlnaHQ6LThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZUwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6OHB4O21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LTEycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6OHB4O21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2Vjb25kYXJ5SWNvbnttYXJnaW4tbGVmdDo4cHg7bWFyZ2luLXJpZ2h0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVMLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTJweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhse3BhZGRpbmc6MCAzMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZXtwYWRkaW5nOjAgMzFweDtib3JkZXItd2lkdGg6MXB4O2JvcmRlci1zdHlsZTpzb2xpZH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7cGFkZGluZzowIDMwcHg7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWR9QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi0zMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmR7cGFkZGluZzowIDMycHg7d2lkdGg6ODhweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25CdXR0b24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2VnbWVudGVkRW5kIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0Oi0xMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvblRyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0OjEycHg7bWFyZ2luLXJpZ2h0Oi0xMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjEycHg7bWFyZ2luLWxlZnQ6LTEycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMjBweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjEycHg7bWFyZ2luLWxlZnQ6LTEycHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRTZWNvbmRhcnlJY29ue21hcmdpbi1sZWZ0OjEycHg7bWFyZ2luLXJpZ2h0Oi0xMnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMjBweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhse2hlaWdodDo1NnB4O2ZvbnQtc2l6ZToyNHB4O2xpbmUtaGVpZ2h0OjU2cHg7Ym9yZGVyLXJhZGl1czoyOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwgLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1pZGRsZWdyb3VuZEFzc2V0e2JvcmRlci1yYWRpdXM6MjhweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uQnV0dG9ue3dpZHRoOjU2cHg7cGFkZGluZzowfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZFN0YXJ0e2JvcmRlci1yYWRpdXM6MjhweCAwIDAgMjhweDtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlZ21lbnRlZFN0YXJ0OmFmdGVye2NvbnRlbnQ6IiI7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMSk7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MTZweDtoZWlnaHQ6MjRweDt3aWR0aDoxcHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmR7Ym9yZGVyLXJhZGl1czowIDI4cHggMjhweCAwfS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZ05vVGV4dCAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6MH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmd7cGFkZGluZzowIDI0cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7cGFkZGluZzowIDIzcHg7Ym9yZGVyLXdpZHRoOjFweDtib3JkZXItc3R5bGU6c29saWR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7cGFkZGluZzowIDIycHg7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWR9QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWR9fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMjRweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmR7cGFkZGluZzowIDI0cHg7d2lkdGg6ODBweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkJ1dHRvbi55dFNwZWNCdXR0b25TaGFwZU5leHRTZWdtZW50ZWRFbmQgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLWxlZnQ6LThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvblRyYWlsaW5nIC55dFNwZWNCdXR0b25TaGFwZU5leHRJY29ue21hcmdpbi1sZWZ0OjhweDttYXJnaW4tcmlnaHQ6LThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb257bWFyZ2luLXJpZ2h0OjhweDttYXJnaW4tbGVmdDotOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRBbGlnbkJ5VGV4dHttYXJnaW4tbGVmdDotMTZweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0U2l6ZVhsLnl0U3BlY0J1dHRvblNoYXBlTmV4dE1haW5zdGFnZVBhZGRpbmcueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbkxlYWRpbmdUcmFpbGluZyAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbnttYXJnaW4tcmlnaHQ6OHB4O21hcmdpbi1sZWZ0Oi04cHh9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFNpemVYbC55dFNwZWNCdXR0b25TaGFwZU5leHRNYWluc3RhZ2VQYWRkaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEljb25MZWFkaW5nVHJhaWxpbmcgLnl0U3BlY0J1dHRvblNoYXBlTmV4dFNlY29uZGFyeUljb257bWFyZ2luLWxlZnQ6OHB4O21hcmdpbi1yaWdodDotOHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRTaXplWGwueXRTcGVjQnV0dG9uU2hhcGVOZXh0TWFpbnN0YWdlUGFkZGluZy55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uTGVhZGluZ1RyYWlsaW5nLnl0U3BlY0J1dHRvblNoYXBlTmV4dEFsaWduQnlUZXh0e21hcmdpbi1sZWZ0Oi0xNnB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRPbmVPZmZDdXN0b21UZXh0V3JhcENvbnRhaW5lcntoZWlnaHQ6YXV0bztwYWRkaW5nLXRvcDo4cHg7cGFkZGluZy1ib3R0b206OHB4fS55dFNwZWNCdXR0b25TaGFwZU5leHRPbmVPZmZDdXN0b21UZXh0V3JhcENvbnRhaW5lciAueXRTcGVjQnV0dG9uU2hhcGVOZXh0QnV0dG9uVGV4dENvbnRlbnR7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6OHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T25lT2ZmQ3VzdG9tVGV4dFdyYXBDb250YWluZXIgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEJ1dHRvblRleHRDb250ZW50ey13ZWJraXQtbGluZS1jbGFtcDo0O21heC1oZWlnaHQ6bm9uZX19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dERpc2FibGVUZXh0RWxsaXBzaXMgLnl0U3BlY0J1dHRvblNoYXBlTmV4dEJ1dHRvblRleHRDb250ZW50e3RleHQtb3ZlcmZsb3c6Y2xpcH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbk9ubHlEZWZhdWx0e21pbi13aWR0aDowO2JvcmRlci1yYWRpdXM6NTAlO3dpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7cGFkZGluZzowfS55dFNwZWNCdXR0b25TaGFwZU5leHRJY29uT25seURlZmF1bHQueXRTcGVjQnV0dG9uU2hhcGVOZXh0QWxpZ25CeVRleHR7bWFyZ2luLWxlZnQ6LThweH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0V29ya2Fyb3VuZEljb25Ob0JvcmRlclJhZGl1c3tib3JkZXItcmFkaXVzOnVuc2V0fS55dFNwZWNCdXR0b25TaGFwZU5leHREaXNhYmxlZHtjdXJzb3I6ZGVmYXVsdH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZHtjb2xvcjojZmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojMDY1ZmQ0fS55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzA1NTZiZjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzA2NWZkNH19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiMwNTU2YmY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZHtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKX19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le2NvbG9yOiMwNjVmZDR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMSl9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5lOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2RlZjFmZjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmU6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMSl9fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5lOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2RlZjFmZjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fS55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0VGV4dHtjb2xvcjojMDY1ZmQ0fS55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0VGV4dDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNkZWYxZmY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0OmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp0cmFuc3BhcmVudH19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHQ6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojZGVmMWZmO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0e2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFse2NvbG9yOiMwNjVmZDR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2RlZjFmZn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFsOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2RhZGZlNjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFsOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojZGVmMWZmfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWw6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojZGFkZmU2O2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKX19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2NvbG9yOiMwNjVmZDR9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp1bnNldDtib3JkZXItY29sb3I6IzA2NWZkNH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojZGVmMWZmO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6dW5zZXQ7Ym9yZGVyLWNvbG9yOiMwNjVmZDR9fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbi55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2RlZjFmZjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb24ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbkludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0VGV4dHtjb2xvcjojM2VhNmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb25JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojMjYzODUwO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb25JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnRyYW5zcGFyZW50fX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb25JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHQ6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojMjYzODUwO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbkludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0VGV4dHtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKX19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbk92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVke2NvbG9yOiMwMzAzMDN9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbk92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojM2VhNmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb25PdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiM2NWI4ZmY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbk92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojM2VhNmZmfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb25PdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiM2NWI4ZmY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uT3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2NvbG9yOiMzZWE2ZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbk92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzAwMDtib3JkZXItY29sb3I6IzNlYTZmZn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uT3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzY1YjhmZjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Q2FsbFRvQWN0aW9uT3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojMDAwO2JvcmRlci1jb2xvcjojM2VhNmZmfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRDYWxsVG9BY3Rpb25PdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWQ6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojNjViOGZmO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dENhbGxUb0FjdGlvbk92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVke2NvbG9yOiNmZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojMDMwMzAzfS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiMyNzI3Mjc7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojMDMwMzAzfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiMyNzI3Mjc7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9fS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7Y29sb3I6IzAzMDMwM30ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMSl9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZTpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5lOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjEpfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmU6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0e2NvbG9yOiMwMzAzMDN9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0VGV4dDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0OmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp0cmFuc3BhcmVudH19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0OmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0VGV4dHtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKX19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWx7Y29sb3I6IzAzMDMwM30ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjA1KX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjA1KX19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFse2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2NvbG9yOiMwMzAzMDN9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6dW5zZXQ7Ym9yZGVyLWNvbG9yOiMwMzAzMDN9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp1bnNldDtib3JkZXItY29sb3I6IzAzMDMwM319QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9uby55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm8ueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm9JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZHtjb2xvcjojMDMwMzAzfS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNmZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm9JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNkOWQ5ZDk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm9JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2ZmZn19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2Q5ZDlkOTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9fS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le2NvbG9yOiNmZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm9JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7Ym9yZGVyLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC4yKX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZTpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4yKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZTpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC4yKX19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZTphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4yKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0e2NvbG9yOiNmZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm9JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm9JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnRyYW5zcGFyZW50fX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0OmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm9JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRleHR7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9fS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHtjb2xvcjojZmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwwLjEpfS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4yKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWw6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4xKX19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWw6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMik7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWx7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9fS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2NvbG9yOiNmZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE1vbm9JbnZlcnNlLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnVuc2V0O2JvcmRlci1jb2xvcjojZmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwwLjIpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp1bnNldDtib3JkZXItY29sb3I6I2ZmZn19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0TW9ub0ludmVyc2UueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4yKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRNb25vSW52ZXJzZS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7Y29sb3I6IzAwMH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNmZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2U2ZTZlNjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNmZmZ9fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2U2ZTZlNjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7Y29sb3I6I2ZmZn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le2JvcmRlci1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMyl9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZTpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4xKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5lOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXItY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjMpfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmU6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0e2NvbG9yOiNmZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0VGV4dDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4xKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0OmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp0cmFuc3BhcmVudH19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0OmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWx7Y29sb3I6I2ZmZn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbCAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbntmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLDAuOCkpfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFsewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMSl9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWw6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMik7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWw6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4xKX19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4yKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFsLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUJhY2tkcm9wRmlsdGVyRXhwZXJpbWVudHtiYWNrZHJvcC1maWx0ZXI6Ymx1cig0cHgpfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7Y29sb3I6I2ZmZn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojMDAwO2JvcmRlci1jb2xvcjojZmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzAwMDtib3JkZXItY29sb3I6I2ZmZn19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheS55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXkueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXlEYXJrLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZHtjb2xvcjojMDAwfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5RGFyay55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNmZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXlEYXJrLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNlNmU2ZTY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXlEYXJrLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2ZmZn19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheURhcmsueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6I2U2ZTZlNjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5RGFyay55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHtjb2xvcjojZmZmfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5RGFyay55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbCAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SWNvbntmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLDAuOCkpfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5RGFyay55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjMpfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5RGFyay55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoNDAsNDAsNDAsMC42KTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheURhcmsueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWw6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4zKX19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheURhcmsueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWw6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDQwLDQwLDQwLDAuNik7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheURhcmsueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWwueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlQmFja2Ryb3BGaWx0ZXJFeHBlcmltZW50e2JhY2tkcm9wLWZpbHRlcjpibHVyKDhweCl9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXlEYXJrLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7Y29sb3I6I2ZmZn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheURhcmsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzAwMDtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwwLjMpfS55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5RGFyay55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSg0MCw0MCw0MCwwLjYpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRPdmVybGF5RGFyay55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDojMDAwO2JvcmRlci1jb2xvcjpyZ2JhKDAsMCwwLDAuMyl9fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dE92ZXJsYXlEYXJrLnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWQ6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDQwLDQwLDQwLDAuNik7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3ZlcmxheURhcmsueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtib3JkZXItd2lkdGg6MnB4O2JvcmRlci1zdHlsZTpzb2xpZH19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEJyYW5kR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVke2NvbG9yOiNmZmZ9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEJyYW5kR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoNDVkZWcsI2UxMDAyZCAzMCUsI2UwMTM3OCA4NSUpfS55dFNwZWNCdXR0b25TaGFwZU5leHRCcmFuZEdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg0NWRlZywjZTEwMDJkIDMwJSwjZTAxMzc4IDg1JSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEJyYW5kR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoNDVkZWcsI2UxMDAyZCAzMCUsI2UwMTM3OCA4NSUpfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRCcmFuZEdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZpbGxlZDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg0NWRlZywjZTEwMDJkIDMwJSwjZTAxMzc4IDg1JSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0QnJhbmRHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9fS55dFNwZWNCdXR0b25TaGFwZU5leHRCcmFuZEdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7Y29sb3I6IzAzMDMwM30ueXRTcGVjQnV0dG9uU2hhcGVOZXh0QnJhbmRHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDp1bnNldDtib3JkZXItY29sb3I6IzAzMDMwM30ueXRTcGVjQnV0dG9uU2hhcGVOZXh0QnJhbmRHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2VkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjEpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRCcmFuZEdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnVuc2V0O2JvcmRlci1jb2xvcjojMDMwMzAzfX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRCcmFuZEdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWQ6YWN0aXZlOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0QnJhbmRHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRGb2N1c2Vke2JvcmRlci13aWR0aDoycHg7Ym9yZGVyLXN0eWxlOnNvbGlkfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0R2VuQWlHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7Y29sb3I6I2ZmZn0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0R2VuQWlHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywjN2YwZTdmIDAsI2FhMDlhYSAyMCUsI2ZmNGU0NSAxMDAlKX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0R2VuQWlHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcsIzAwN2E2NSAwLCM3ZjBlN2YgMTAwJSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEdlbkFpR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAgIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcsIzdmMGU3ZiAwLCNhYTA5YWEgMjAlLCNmZjRlNDUgMTAwJSl9fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEdlbkFpR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkOmFjdGl2ZTpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLCMwMDdhNjUgMCwjN2YwZTdmIDEwMCUpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH19QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEdlbkFpR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVke2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0R2VuQWlHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHtjb2xvcjojMDMwMzAzfS55dFNwZWNCdXR0b25TaGFwZU5leHRHZW5BaUdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFsewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcscmdiYSgxMjcsMTQsMTI3LDAuMikgMCxyZ2JhKDE3MCw5LDE3MCwwLjIpIDIwJSxyZ2JhKDI1NSw3OCw2OSwwLjIpIDEwMCUpfS55dFNwZWNCdXR0b25TaGFwZU5leHRHZW5BaUdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFsOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLHJnYmEoMCwxMjIsMTAxLDAuMikgMCxyZ2JhKDEyNywxNCwxMjcsMC4yKSAxMDAlKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0R2VuQWlHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLHJnYmEoMTI3LDE0LDEyNywwLjIpIDAscmdiYSgxNzAsOSwxNzAsMC4yKSAyMCUscmdiYSgyNTUsNzgsNjksMC4yKSAxMDAlKX19QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0R2VuQWlHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZyxyZ2JhKDAsMTIyLDEwMSwwLjIpIDAscmdiYSgxMjcsMTQsMTI3LDAuMikgMTAwJSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0R2VuQWlHcmFkaWVudC55dFNwZWNCdXR0b25TaGFwZU5leHRUb25hbHtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKX19Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEdlbkFpR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZHtjb2xvcjojMDMwMzAzfS55dFNwZWNCdXR0b25TaGFwZU5leHRHZW5BaUdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnVuc2V0O2JvcmRlci1jb2xvcjojMDMwMzAzfS55dFNwZWNCdXR0b25TaGFwZU5leHRHZW5BaUdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWQ6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEdlbkFpR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZDpob3Zlcjpub3QoLnl0U3BlY0J1dHRvblNoYXBlTmV4dEVuYWJsZUxpZ2h0VG91Y2hSZXNwb25zZSl7CiAgICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6dW5zZXQ7Ym9yZGVyLWNvbG9yOiMwMzAzMDN9fUBtZWRpYSAoaG92ZXI6bm9uZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEdlbkFpR3JhZGllbnQueXRTcGVjQnV0dG9uU2hhcGVOZXh0Rm9jdXNlZDphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9fUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRHZW5BaUdyYWRpZW50Lnl0U3BlY0J1dHRvblNoYXBlTmV4dEZvY3VzZWR7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWR9fS55dFNwZWNCdXR0b25TaGFwZU5leHREaXNhYmxlZC55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7Y29sb3I6IzkwOTA5MH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RGlzYWJsZWQueXRTcGVjQnV0dG9uU2hhcGVOZXh0RmlsbGVkewogIC8qISBydGw6aWdub3JlICovYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMDUpfUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHREaXNhYmxlZC55dFNwZWNCdXR0b25TaGFwZU5leHRGaWxsZWR7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9fS55dFNwZWNCdXR0b25TaGFwZU5leHREaXNhYmxlZC55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5le2NvbG9yOiM5MDkwOTB9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dERpc2FibGVkLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7Ym9yZGVyLWNvbG9yOnJnYmEoMCwwLDAsMC4xKX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RGlzYWJsZWQueXRTcGVjQnV0dG9uU2hhcGVOZXh0VGV4dHtjb2xvcjojOTA5MDkwfUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNwZWNCdXR0b25TaGFwZU5leHREaXNhYmxlZC55dFNwZWNCdXR0b25TaGFwZU5leHRUZXh0e2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RGlzYWJsZWQueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWx7Y29sb3I6IzkwOTA5MH0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0RGlzYWJsZWQueXRTcGVjQnV0dG9uU2hhcGVOZXh0VG9uYWx7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4wNSl9QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3BlY0J1dHRvblNoYXBlTmV4dERpc2FibGVkLnl0U3BlY0J1dHRvblNoYXBlTmV4dFRvbmFse2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfX0ueXRTcGVjQnV0dG9uU2hhcGVOZXh0UmFpc2VkLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmV7CiAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O2JveC1zaGFkb3c6MCA0cHggMTZweCAwIHJnYmEoMCwwLDAsMC4xKSwwIDJweCA4cHggMCByZ2JhKDAsMCwwLDAuMSl9Lnl0U3BlY0J1dHRvblNoYXBlTmV4dFJhaXNlZC55dFNwZWNCdXR0b25TaGFwZU5leHRPdXRsaW5lOmhvdmVyOm5vdCgueXRTcGVjQnV0dG9uU2hhcGVOZXh0RW5hYmxlTGlnaHRUb3VjaFJlc3BvbnNlKXsKICAvKiEgcnRsOmlnbm9yZSAqL2JhY2tncm91bmQ6IzI3MjcyNztib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9QG1lZGlhIChob3Zlcjpub25lKXsueXRTcGVjQnV0dG9uU2hhcGVOZXh0UmFpc2VkLnl0U3BlY0J1dHRvblNoYXBlTmV4dE91dGxpbmU6aG92ZXI6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX1AbWVkaWEgKGhvdmVyOm5vbmUpey55dFNwZWNCdXR0b25TaGFwZU5leHRSYWlzZWQueXRTcGVjQnV0dG9uU2hhcGVOZXh0T3V0bGluZTphY3RpdmU6bm90KC55dFNwZWNCdXR0b25TaGFwZU5leHRFbmFibGVMaWdodFRvdWNoUmVzcG9uc2UpewogICAgLyohIHJ0bDppZ25vcmUgKi9iYWNrZ3JvdW5kOiMyNzI3Mjc7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fX0ueXRTcGVjQnV0dG9uU2hhcGVXaXRoTGFiZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0U3BlY0J1dHRvblNoYXBlV2l0aExhYmVsTGFiZWx7bWFyZ2luOjRweCAtOHB4IDA7Y29sb3I6IzAzMDMwMztmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoycmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dFNwZWNCdXR0b25TaGFwZVdpdGhMYWJlbExhYmVsey13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0U3BlY0J1dHRvblNoYXBlV2l0aExhYmVsSXNPdmVybGF5IC55dFNwZWNCdXR0b25TaGFwZVdpdGhMYWJlbExhYmVse21heC13aWR0aDo2NHB4O2NvbG9yOiNmZmZ9Lnl0U3BlY0J1dHRvblZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9Lnl0QmFkZ2VWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6aW5saW5lLWJsb2NrfS55dEJyTnpCYWRnZVNoYXBlSG9zdHtkaXNwbGF5OmJsb2NrfS55dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVOelJhdGluZ1JlZFNxdWFyZXtiYWNrZ3JvdW5kOiNmMDM5MzY7aGVpZ2h0OjIuMnJlbTt3aWR0aDoyLjJyZW07Ym9yZGVyLXJhZGl1czowO2NvbG9yOmJsYWNrO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzpjbGlwO3BhZGRpbmc6MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDt0ZXh0LWFsaWduOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0QnJOekJhZGdlU2hhcGVCYWRnZVN0eWxlVHlwZU56UmF0aW5nWWVsbG93Q2lyY2xle2JhY2tncm91bmQ6I2ZmZWYwMDtoZWlnaHQ6Mi4ycmVtO3dpZHRoOjIuMnJlbTtib3JkZXItcmFkaXVzOjUwJTtjb2xvcjpibGFjazt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6Y2xpcDtwYWRkaW5nOjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7dGV4dC1hbGlnbjpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVOelJhdGluZ0dyZWVuQ2lyY2xle2JhY2tncm91bmQ6IzQyYzc1ODtoZWlnaHQ6Mi4ycmVtO3dpZHRoOjIuMnJlbTtib3JkZXItcmFkaXVzOjUwJTtjb2xvcjpibGFjazt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6Y2xpcDtwYWRkaW5nOjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7dGV4dC1hbGlnbjpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVCclJhdGluZ1NtYWxsR3JlZW5TcXVhcmV7YmFja2dyb3VuZDpyZ2IoMCwxNjYsODEpO2hlaWdodDoxLjhyZW07d2lkdGg6MS44cmVtO2NvbG9yOndoaXRlO2JvcmRlcjoxcHggc29saWQgd2hpdGU7Ym9yZGVyLXJhZGl1czoxMCU7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmNsaXA7cGFkZGluZzowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3RleHQtYWxpZ246Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlQnJSYXRpbmdTbWFsbEJsdWVTcXVhcmV7YmFja2dyb3VuZDpyZ2IoMCwxNDksMjE4KTtoZWlnaHQ6MS44cmVtO3dpZHRoOjEuOHJlbTtjb2xvcjp3aGl0ZTtib3JkZXI6MXB4IHNvbGlkIHdoaXRlO2JvcmRlci1yYWRpdXM6MTAlO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzpjbGlwO3BhZGRpbmc6MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDt0ZXh0LWFsaWduOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0QnJOekJhZGdlU2hhcGVCYWRnZVN0eWxlVHlwZUJyUmF0aW5nTGFyZ2VCbHVlU3F1YXJle2JhY2tncm91bmQ6cmdiKDAsMTQ5LDIxOCk7aGVpZ2h0OjIuMnJlbTt3aWR0aDoyLjJyZW07Y29sb3I6d2hpdGU7Ym9yZGVyOjFweCBzb2xpZCB3aGl0ZTtib3JkZXItcmFkaXVzOjEwJTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6Y2xpcDtwYWRkaW5nOjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7dGV4dC1hbGlnbjpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVCclJhdGluZ1NtYWxsWWVsbG93U3F1YXJle2JhY2tncm91bmQ6cmdiKDI1MSwxOTMsMjEpO2hlaWdodDoxLjhyZW07d2lkdGg6MS44cmVtO2NvbG9yOndoaXRlO2JvcmRlcjoxcHggc29saWQgd2hpdGU7Ym9yZGVyLXJhZGl1czoxMCU7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmNsaXA7cGFkZGluZzowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3RleHQtYWxpZ246Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlQnJSYXRpbmdMYXJnZVllbGxvd1NxdWFyZXtiYWNrZ3JvdW5kOnJnYigyNTEsMTkzLDIxKTtoZWlnaHQ6Mi4ycmVtO3dpZHRoOjIuMnJlbTtjb2xvcjp3aGl0ZTtib3JkZXI6MXB4IHNvbGlkIHdoaXRlO2JvcmRlci1yYWRpdXM6MTAlO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzpjbGlwO3BhZGRpbmc6MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDt0ZXh0LWFsaWduOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0QnJOekJhZGdlU2hhcGVCYWRnZVN0eWxlVHlwZUJyUmF0aW5nU21hbGxPcmFuZ2VTcXVhcmV7YmFja2dyb3VuZDpyZ2IoMjQ1LDEzMCwzMik7aGVpZ2h0OjEuOHJlbTt3aWR0aDoxLjhyZW07Y29sb3I6d2hpdGU7Ym9yZGVyOjFweCBzb2xpZCB3aGl0ZTtib3JkZXItcmFkaXVzOjEwJTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6Y2xpcDtwYWRkaW5nOjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7dGV4dC1hbGlnbjpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dEJyTnpCYWRnZVNoYXBlQmFkZ2VTdHlsZVR5cGVCclJhdGluZ0xhcmdlT3JhbmdlU3F1YXJle2JhY2tncm91bmQ6cmdiKDI0NSwxMzAsMzIpO2hlaWdodDoyLjJyZW07d2lkdGg6Mi4ycmVtO2NvbG9yOndoaXRlO2JvcmRlcjoxcHggc29saWQgd2hpdGU7Ym9yZGVyLXJhZGl1czoxMCU7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmNsaXA7cGFkZGluZzowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3RleHQtYWxpZ246Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlQnJSYXRpbmdTbWFsbFJlZFNxdWFyZXtiYWNrZ3JvdW5kOnJnYigyMzYsMjksMzcpO2hlaWdodDoxLjhyZW07d2lkdGg6MS44cmVtO2NvbG9yOndoaXRlO2JvcmRlcjoxcHggc29saWQgd2hpdGU7Ym9yZGVyLXJhZGl1czoxMCU7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmNsaXA7cGFkZGluZzowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3RleHQtYWxpZ246Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlQnJSYXRpbmdMYXJnZVJlZFNxdWFyZXtiYWNrZ3JvdW5kOnJnYigyMzYsMjksMzcpO2hlaWdodDoyLjJyZW07d2lkdGg6Mi4ycmVtO2NvbG9yOndoaXRlO2JvcmRlcjoxcHggc29saWQgd2hpdGU7Ym9yZGVyLXJhZGl1czoxMCU7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmNsaXA7cGFkZGluZzowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3RleHQtYWxpZ246Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRCck56QmFkZ2VTaGFwZUJhZGdlU3R5bGVUeXBlQnJSYXRpbmdTbWFsbEJsYWNrU3F1YXJle2JhY2tncm91bmQ6cmdiKDAsMCwwKTtoZWlnaHQ6MS44cmVtO3dpZHRoOjEuOHJlbTtjb2xvcjp3aGl0ZTtib3JkZXI6MXB4IHNvbGlkIHdoaXRlO2JvcmRlci1yYWRpdXM6MTAlO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzpjbGlwO3BhZGRpbmc6MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDt0ZXh0LWFsaWduOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0QnJOekJhZGdlU2hhcGVCYWRnZVN0eWxlVHlwZUJyUmF0aW5nTGFyZ2VCbGFja1NxdWFyZXtiYWNrZ3JvdW5kOnJnYigwLDAsMCk7aGVpZ2h0OjIuMnJlbTt3aWR0aDoyLjJyZW07Y29sb3I6d2hpdGU7Ym9yZGVyOjFweCBzb2xpZCB3aGl0ZTtib3JkZXItcmFkaXVzOjEwJTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6Y2xpcDtwYWRkaW5nOjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7dGV4dC1hbGlnbjpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dFNlY3Rpb25IZWFkZXJWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0U2VjdGlvbkhlYWRlclZpZXdNb2RlbEJhZGdlV2l0aExhYmVse2Rpc3BsYXk6aW5saW5lLWJsb2NrOy1tb3otbWFyZ2luLWVuZDo4cHg7bWFyZ2luLWlubGluZS1lbmQ6OHB4fS55dFNlY3Rpb25IZWFkZXJWaWV3TW9kZWxCYWRnZXM6bm90KDpsYXN0LWNoaWxkKXstbW96LW1hcmdpbi1lbmQ6OHB4O21hcmdpbi1pbmxpbmUtZW5kOjhweH0ueXRTZWN0aW9uSGVhZGVyVmlld01vZGVsVHJhaWxpbmdBY3Rpb25zQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0U2VjdGlvbkhlYWRlclZpZXdNb2RlbFRyYWlsaW5nQWN0aW9uc0NvbnRhaW5lcj46bm90KDpsYXN0LWNoaWxkKXstbW96LW1hcmdpbi1lbmQ6OHB4O21hcmdpbi1pbmxpbmUtZW5kOjhweH0ueXRTZWN0aW9uSGVhZGVyVmlld01vZGVsQ2hldnJvbnNDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRTZWN0aW9uSGVhZGVyVmlld01vZGVsQ2hldnJvbjpub3QoOmxhc3QtY2hpbGQpey1tb3otbWFyZ2luLWVuZDo4cHg7bWFyZ2luLWlubGluZS1lbmQ6OHB4fS55dFJhZGlvQnV0dG9uR3JvdXBWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0UmFkaW9CdXR0b25Hcm91cFZpZXdNb2RlbEZpZWxkc2V0e2JvcmRlcjpub25lO3BhZGRpbmc6MDttYXJnaW46MH0ueXRSYWRpb0J1dHRvbkdyb3VwVmlld01vZGVsRXJyb3J7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7Y29sb3I6I2MzMDAyN30ueXRTZWxlY3RhYmxlSXRlbVZpZXdNb2RlbEhvc3R7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpibG9ja30ueXRTZWxlY3RhYmxlSXRlbVZpZXdNb2RlbENvbnRhaW5lcntwYWRkaW5nLWJvdHRvbToyMHB4fS55dFNlbGVjdGFibGVJdGVtVmlld01vZGVsTmF0aXZlQ29udGFpbmVye3Bvc2l0aW9uOnJlbGF0aXZlfS55dFNlbGVjdGFibGVJdGVtVmlld01vZGVsTmF0aXZlUmFkaW9CdXR0b257aGVpZ2h0OjA7bGVmdDowO21hcmdpbjowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3dpZHRoOjB9Lnl0U2VsZWN0YWJsZUl0ZW1WaWV3TW9kZWxOYXRpdmVMYWJlbHtjdXJzb3I6cG9pbnRlcn0ueXRTZWxlY3RhYmxlSXRlbVZpZXdNb2RlbERpc2FibGVke2N1cnNvcjpkZWZhdWx0fS55dENhcmRWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRDYXJkVmlld01vZGVsT3V0bGluZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9Lnl0Q2FyZFZpZXdNb2RlbFJhaXNlZHtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym94LXNoYWRvdzowIDAgMTBweCByZ2JhKDAsMCwwLDAuMjUpO291dGxpbmUtc3R5bGU6c29saWQ7b3V0bGluZS1jb2xvcjp0cmFuc3BhcmVudDt0cmFuc2l0aW9uOmJveC1zaGFkb3cgLjE4cyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKSxvdXRsaW5lLWNvbG9yIC4xOHMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksb3V0bGluZS13aWR0aCAuMThzIGN1YmljLWJlemllciguMDUsMCwwLDEpfS55dENhcmRWaWV3TW9kZWxDYXJkU2VsZWN0ZWR7Ym94LXNoYWRvdzowIDJweCA4cHggMCByZ2JhKDAsMCwwLDAuMjUpO291dGxpbmU6IzAzMDMwMyBzb2xpZCAycHg7dHJhbnNpdGlvbjpib3gtc2hhZG93IC4xOHMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksb3V0bGluZS1jb2xvciAuMThzIGN1YmljLWJlemllciguMDUsMCwwLDEpLG91dGxpbmUtd2lkdGggLjE4cyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRDYXJkVmlld01vZGVsVG9uYWx7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMDUpfS55dENhcmRWaWV3TW9kZWxJbnZlcnRlZHtiYWNrZ3JvdW5kLWNvbG9yOiMwZjBmMGZ9Lnl0Q2FyZFZpZXdNb2RlbENvbnRlbnRXcmFwcGVye3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCV9Lnl0Q2FyZFZpZXdNb2RlbFRvcENvbnRlbnRDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7d2lkdGg6MTAwJX0ueXRDYXJkVmlld01vZGVsVG9wQ29udGVudHstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjF9Lnl0Q2FyZFZpZXdNb2RlbElubGluZVRyYWlsaW5nQWN0aW9ue2FsaWduLXNlbGY6ZmxleC1zdGFydH0ueXRDYXJkVmlld01vZGVsSW5saW5lQ2VudGVyVHJhaWxpbmdBY3Rpb257YWxpZ24tc2VsZjpjZW50ZXJ9Lnl0Q2FyZFZpZXdNb2RlbElubGluZVRyYWlsaW5nQWN0aW9uTWFyZ2lue21hcmdpbjo2cHh9Lnl0Q2FyZFZpZXdNb2RlbE92ZXJsYXlUcmFpbGluZ0FjdGlvbntwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoxMnB4O3RvcDoxMnB4fS55dENhcmRWaWV3TW9kZWxDYXJkVmlld01vZGVsSW5uZXJ7Ym9yZGVyLXJhZGl1czoxMnB4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpyZWxhdGl2ZTstbW96LWJveC1mbGV4OjE7ZmxleDoxfS55dENhcmRWaWV3TW9kZWxTZWxlY3RlZHtib3gtc2hhZG93Omluc2V0IDAgMCAwIDJweCAjMDMwMzAzfS55dENhcmRWaWV3TW9kZWxCb3R0b21Db250ZW50UGFkZGluZywueXRDYXJkVmlld01vZGVsVG9wQ29udGVudFBhZGRpbmd7cGFkZGluZzoxMnB4fS55dENhcmRWaWV3TW9kZWxDbGlja2FibGV7Y3Vyc29yOnBvaW50ZXJ9Lnl0Q2FyZFZpZXdNb2RlbERpc2FibGVkT3ZlcmxheXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtpbnNldDowO3Bvc2l0aW9uOmFic29sdXRlfS55dENhcmRWaWV3TW9kZWxCYWNrZ3JvdW5kV3JhcHBlcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MH0ueXRDYXJkVmlld01vZGVsQmFja2dyb3VuZHt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO29iamVjdC1maXQ6ZmlsbH0ueXRDaGVja2JveEdyb3VwVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dENoZWNrYm94R3JvdXBWaWV3TW9kZWxGaWVsZHNldHtib3JkZXI6bm9uZTtwYWRkaW5nOjA7bWFyZ2luOjB9Lnl0Q2hlY2tib3hJdGVtVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dFBhbmVsRm9vdGVyVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpO3BhZGRpbmc6MTJweH0ueXRQYW5lbEZvb3RlclZpZXdNb2RlbEhpZGVEaXZpZGVye2JvcmRlci10b3A6bm9uZX0ueXRQYW5lbEZvb3RlclZpZXdNb2RlbERpc2FibGVQYWRkaW5ne3BhZGRpbmc6MTJweCAwIDB9Lnl0UGFuZWxGb290ZXJWaWV3TW9kZWxEaXNhYmxlUGFkZGluZy55dFBhbmVsRm9vdGVyVmlld01vZGVsSGlkZURpdmlkZXJ7cGFkZGluZy10b3A6MH0ueXRQYW5lbEZvb3RlclZpZXdNb2RlbFJvd0JvdHRvbVBhZGRpbmd7cGFkZGluZy1ib3R0b206MTJweH0ueXRQYW5lbEZvb3RlclZpZXdNb2RlbFRleHRQYWRkaW5ne3BhZGRpbmctcmlnaHQ6MjRweH0ueXRQYW5lbEZvb3RlclZpZXdNb2RlbFRleHRSb3d7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2NvbG9yOiM2MDYwNjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFBhbmVsRm9vdGVyVmlld01vZGVsQnV0dG9uU3RhY2t7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS55dFBhbmVsRm9vdGVyVmlld01vZGVsQnV0dG9uU3RhY2tUb3BCdXR0b257bWFyZ2luOjAgMCA4cHh9Lnl0UGFuZWxGb290ZXJWaWV3TW9kZWxCdXR0b25Sb3d7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9Lnl0UGFuZWxGb290ZXJWaWV3TW9kZWxCdXR0b25Sb3dUcmFpbGluZ3stbW96LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9Lnl0UGFuZWxGb290ZXJWaWV3TW9kZWxCdXR0b25Sb3dMZWZ0QnV0dG9ue21hcmdpbi1yaWdodDo4cHh9Lnl0UGFuZWxGb290ZXJWaWV3TW9kZWxCdXR0b25Sb3dGdWxsV2lkdGh7d2lkdGg6MTAwJX0ueXRQYW5lbEZvb3RlclZpZXdNb2RlbEJ1dHRvblJvd0V4cGFuZHstbW96LWJveC1mbGV4OjE7ZmxleDoxfS55dFBhbmVsRm9vdGVyVmlld01vZGVsQnV0dG9uUm93U2hyaW5rey1tb3otYm94LWZsZXg6MDtmbGV4OjB9Lnl0UGFuZWxGb290ZXJWaWV3TW9kZWxCdXR0b25Sb3dIaWRkZW57ZGlzcGxheTpub25lfS55dFNwZWNJY29uU2hhcGVIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxMDAlO2hlaWdodDoxMDAlfS55dFNwaW5uZXJTaGFwZVdyYXBwZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRTcGlubmVyU2hhcGVTcGlubmVye2Rpc3BsYXk6YmxvY2s7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O21hcmdpbjoxMnB4IGF1dG87d2lkdGg6MzJweDtoZWlnaHQ6MzJweDtib3JkZXItcmFkaXVzOjUwJTtib3JkZXI6MnB4IHNvbGlkICNlZWU7Ym9yZGVyLXRvcC1jb2xvcjojNjY2O2FuaW1hdGlvbjpzcGlubmVyIC44cyBsaW5lYXIgaW5maW5pdGV9Lnl0U3Bpbm5lclNoYXBlU3Bpbm5lcjpub3QoW2hpZGRlbl0pe2NvbG9yOiMzMzM7Zm9udC1zaXplOjEuNnJlbX1Aa2V5ZnJhbWVzIHNwaW5uZXJ7MCV7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKX10b3t0cmFuc2Zvcm06cm90YXRlKDF0dXJuKX19Lnl0TG90dGllQ29tcG9uZW50SG9zdHtkaXNwbGF5OmJsb2NrfS55dExvdHRpZUNvbXBvbmVudEhvc3Qgc3Zne2Rpc3BsYXk6YmxvY2t9Lnl0QW5pbWF0ZWRJY29uSG9zdHtkaXNwbGF5OmJsb2NrfS55dEFuaW1hdGVkSWNvbkhvc3QgLmFuaW1hdGVkLWxpa2UtaWNvbiwueXRBbmltYXRlZEljb25Ib3N0IC5jdXN0b20tYW5pbWF0ZWQtbGlrZS1pY29ue2hlaWdodDoyNHB4O3dpZHRoOjI0cHg7bWFyZ2luOjB9Lnl0QW5pbWF0ZWRJY29uSG9zdCAuYW5pbWF0ZWQtbGlrZS1pY29uIC5hbmltYXRlZC1saWtlLWljb24sLnl0QW5pbWF0ZWRJY29uSG9zdCAuYW5pbWF0ZWQtbGlrZS1pY29uIC5jdXN0b20tYW5pbWF0ZWQtbGlrZS1pY29uLC55dEFuaW1hdGVkSWNvbkhvc3QgLmN1c3RvbS1hbmltYXRlZC1saWtlLWljb24gLmFuaW1hdGVkLWxpa2UtaWNvbiwueXRBbmltYXRlZEljb25Ib3N0IC5jdXN0b20tYW5pbWF0ZWQtbGlrZS1pY29uIC5jdXN0b20tYW5pbWF0ZWQtbGlrZS1pY29ue3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtMTJweCwtMTJweCk7aGVpZ2h0OjQ4cHg7d2lkdGg6NDhweH0ueXRBbmltYXRlZEljb25Ib3N0IC5hbmltYXRlZC1zdWJzY3JpYmUtaWNvbnt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xMnB4LC0xMnB4KTtoZWlnaHQ6NDhweDt3aWR0aDo0OHB4fS55dEFuaW1hdGVkSWNvbkhvc3RbZGF0YS1zaXplPSIxOCJdIC5hbmltYXRlZC1saWtlLWljb24sLnl0QW5pbWF0ZWRJY29uSG9zdFtkYXRhLXNpemU9IjE4Il0gLmN1c3RvbS1hbmltYXRlZC1saWtlLWljb257aGVpZ2h0OjE4cHg7d2lkdGg6MThweH0ueXRBbmltYXRlZEljb25Ib3N0W2RhdGEtc2l6ZT0iMTgiXSAuYW5pbWF0ZWQtbGlrZS1pY29uIC5hbmltYXRlZC1saWtlLWljb24sLnl0QW5pbWF0ZWRJY29uSG9zdFtkYXRhLXNpemU9IjE4Il0gLmFuaW1hdGVkLWxpa2UtaWNvbiAuY3VzdG9tLWFuaW1hdGVkLWxpa2UtaWNvbiwueXRBbmltYXRlZEljb25Ib3N0W2RhdGEtc2l6ZT0iMTgiXSAuY3VzdG9tLWFuaW1hdGVkLWxpa2UtaWNvbiAuYW5pbWF0ZWQtbGlrZS1pY29uLC55dEFuaW1hdGVkSWNvbkhvc3RbZGF0YS1zaXplPSIxOCJdIC5jdXN0b20tYW5pbWF0ZWQtbGlrZS1pY29uIC5jdXN0b20tYW5pbWF0ZWQtbGlrZS1pY29ue3RyYW5zZm9ybTp0cmFuc2xhdGUoLTlweCwtOXB4KTtoZWlnaHQ6MzZweDt3aWR0aDozNnB4fS55dEFuaW1hdGVkSWNvbkhvc3RbZGF0YS1zaXplPSIxOCJdIC5hbmltYXRlZC1zdWJzY3JpYmUtaWNvbnt0cmFuc2Zvcm06dHJhbnNsYXRlKC05cHgsLTlweCk7aGVpZ2h0OjM2cHg7d2lkdGg6MzZweH0ueXRIb3Jpem9udGFsU2xpZGVyVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dFNsaWRlclNoYXBlSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7bWFyZ2luOjE2cHggMTJweH0ueXRTbGlkZXJTaGFwZUhvc3RJbmNyZW1lbnRCdXR0b257ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2hlaWdodDo0OHB4O3dpZHRoOjQ4cHg7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtib3JkZXItc3R5bGU6bm9uZTtjdXJzb3I6cG9pbnRlcjtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRTbGlkZXJTaGFwZUhvc3RJbmNyZW1lbnRCdXR0b25JY29uV3JhcHBlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMDUpO2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9Lnl0U2xpZGVyU2hhcGVIb3N0SW5jcmVtZW50QnV0dG9uSWNvbntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Y29sb3I6IzAzMDMwMztoZWlnaHQ6MTZweDt3aWR0aDoxNnB4fS55dFNsaWRlclNoYXBlSG9zdEluY3JlbWVudEJ1dHRvbjpkaXNhYmxlZHtjdXJzb3I6ZGVmYXVsdDtjb2xvcjojOTA5MDkwfS55dFNsaWRlclNoYXBlSG9zdFNsaWRlcnstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czowO2ZvbnQ6aW5oZXJpdDtjb2xvcjojMDMwMzAzOy1tb3otYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTttYXJnaW46MCAxMnB4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7b3V0bGluZTpub25lO3BhZGRpbmctYm90dG9tOjA7LS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudDowO3dpZHRoOjEwMCU7aGVpZ2h0OjI0cHh9Lnl0U2xpZGVyU2hhcGVIb3N0U2xpZGVyOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFja3tiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byByaWdodCwjMDMwMzAzIDAsIzAzMDMwMyB2YXIoLS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudCksIzkwOTA5MCB2YXIoLS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudCksIzkwOTA5MCAxMDAlKTtoZWlnaHQ6NHB4O2JvcmRlci1yYWRpdXM6MTJweH0ueXRTbGlkZXJTaGFwZUhvc3RTbGlkZXI6Oi1tb3otcmFuZ2UtdHJhY2t7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIzAzMDMwMyAwLCMwMzAzMDMgdmFyKC0teXQtc2xpZGVyLXNoYXBlLWdyYWRpZW50LXBlcmNlbnQpLCM5MDkwOTAgdmFyKC0teXQtc2xpZGVyLXNoYXBlLWdyYWRpZW50LXBlcmNlbnQpLCM5MDkwOTAgMTAwJSk7aGVpZ2h0OjRweDtib3JkZXItcmFkaXVzOjEycHh9Lnl0U2xpZGVyU2hhcGVIb3N0U2xpZGVyOjotd2Via2l0LXNsaWRlci10aHVtYnthcHBlYXJhbmNlOm5vbmU7YmFja2dyb3VuZDojMDMwMzAzO3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7Ym9yZGVyLXJhZGl1czo4cHg7bWFyZ2luLXRvcDotNnB4fS55dFNsaWRlclNoYXBlSG9zdFNsaWRlcjo6LW1vei1yYW5nZS10aHVtYntiYWNrZ3JvdW5kOiMwMzAzMDM7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtib3JkZXItcmFkaXVzOjhweH0ueXRTbGlkZXJTaGFwZUhvc3RTbGlkZXI6Oi1tcy10aHVtYntiYWNrZ3JvdW5kOiMwMzAzMDM7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtib3JkZXItcmFkaXVzOjhweH0ueXRTbGlkZXJTaGFwZVZlcnRpY2Fse2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O21hcmdpbjowO3dyaXRpbmctbW9kZTp2ZXJ0aWNhbC1ybDtkaXJlY3Rpb246cnRsfS55dFNsaWRlclNoYXBlVmVydGljYWxTbGlkZXJ7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6MDtmb250OmluaGVyaXQ7Y29sb3I6IzAzMDMwMzstbW96LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmU7LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7bWFyZ2luOjAgMTJweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O291dGxpbmU6bm9uZTtwYWRkaW5nLWJvdHRvbTowOy0teXQtc2xpZGVyLXNoYXBlLWdyYWRpZW50LXBlcmNlbnQ6MDtoZWlnaHQ6MTAwJTt3aWR0aDoyNHB4fS55dFNsaWRlclNoYXBlVmVydGljYWxTbGlkZXI6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNre2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIHRvcCwjMDMwMzAzIDAsIzAzMDMwMyB2YXIoLS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudCksIzkwOTA5MCB2YXIoLS15dC1zbGlkZXItc2hhcGUtZ3JhZGllbnQtcGVyY2VudCksIzkwOTA5MCAxMDAlKTt3aWR0aDo0cHg7Ym9yZGVyLXJhZGl1czoxMnB4fS55dFNsaWRlclNoYXBlVmVydGljYWxTbGlkZXI6Oi1tb3otcmFuZ2UtdHJhY2t7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gdG9wLCMwMzAzMDMgMCwjMDMwMzAzIHZhcigtLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50KSwjOTA5MDkwIHZhcigtLXl0LXNsaWRlci1zaGFwZS1ncmFkaWVudC1wZXJjZW50KSwjOTA5MDkwIDEwMCUpO3dpZHRoOjRweDtib3JkZXItcmFkaXVzOjEycHh9Lnl0U2xpZGVyU2hhcGVWZXJ0aWNhbFNsaWRlcjo6LXdlYmtpdC1zbGlkZXItdGh1bWJ7YXBwZWFyYW5jZTpub25lO2JhY2tncm91bmQ6IzAzMDMwMzt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O2JvcmRlci1yYWRpdXM6OHB4O21hcmdpbi1yaWdodDotNnB4fS55dFNsaWRlclNoYXBlVmVydGljYWxTbGlkZXI6Oi1tb3otcmFuZ2UtdGh1bWJ7YmFja2dyb3VuZDojMDMwMzAzO3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0U2xpZGVyU2hhcGVWZXJ0aWNhbFNsaWRlcjo6LW1zLXRodW1ie2JhY2tncm91bmQ6IzAzMDMwMzt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O2JvcmRlci1yYWRpdXM6OHB4fUBtZWRpYSAoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNsaWRlclNoYXBlSG9zdFNsaWRlcnstbW96LWFwcGVhcmFuY2U6YXV0bzthcHBlYXJhbmNlOmF1dG87LXdlYmtpdC1hcHBlYXJhbmNlOmF1dG99fS55dFBhbmVsSGVhZGVyVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwYWRkaW5nOjEwcHggMTZweDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKTttaW4taGVpZ2h0OjQ4cHg7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94Oy1tb3otYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0ueXRQYW5lbEhlYWRlclZpZXdNb2RlbEhvc3RIaWRlRGl2aWRlcntib3JkZXItYm90dG9tOm5vbmV9Lnl0UGFuZWxIZWFkZXJWaWV3TW9kZWxIb3N0Q29tcGFjdHtwYWRkaW5nOjhweCAxMnB4fS55dFBhbmVsSGVhZGVyVmlld01vZGVsVGl0bGVXcmFwcGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRQYW5lbEhlYWRlclZpZXdNb2RlbFRpdGxlSGVhZGVye21hcmdpbjowfS55dFBhbmVsSGVhZGVyVmlld01vZGVsVGl0bGVIZWFkZXJOb25JbnRlcmFjdGl2ZXtwb2ludGVyLWV2ZW50czpub25lfS55dFBhbmVsSGVhZGVyVmlld01vZGVsVGl0bGV7Y29sb3I6IzAzMDMwMztmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjhyZW07bGluZS1oZWlnaHQ6Mi42cmVtO2ZvbnQtd2VpZ2h0OjcwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjIuNnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRQYW5lbEhlYWRlclZpZXdNb2RlbFRpdGxley13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0UGFuZWxIZWFkZXJWaWV3TW9kZWxUaXRsZXttYXgtaGVpZ2h0OjIuNnJlbX0ueXRQYW5lbEhlYWRlclZpZXdNb2RlbFN1YnRpdGxle21hcmdpbi10b3A6MnB4O2NvbG9yOiM2MDYwNjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoxLjhyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0UGFuZWxIZWFkZXJWaWV3TW9kZWxTdWJ0aXRsZXstd2Via2l0LWxpbmUtY2xhbXA6MTttYXgtaGVpZ2h0Om5vbmV9fS55dFBhbmVsSGVhZGVyVmlld01vZGVsU3VidGl0bGV7bWF4LWhlaWdodDoxLjhyZW19Lnl0UGFuZWxIZWFkZXJWaWV3TW9kZWxUcmFpbGluZ0J1dHRvbnN7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7ZmxleC13cmFwOm5vd3JhcDttYXJnaW4tbGVmdDoxMnB4fS55dFBhbmVsSGVhZGVyVmlld01vZGVsQnV0dG9uOm5vdCg6bGFzdC1jaGlsZCl7cGFkZGluZy1yaWdodDoyNHB4fS55dFBhbmVsSGVhZGVyVmlld01vZGVsQnV0dG9uT3JBbmNob3J7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47b3V0bGluZTpub25lfS55dFBhbmVsSGVhZGVyVmlld01vZGVsQnV0dG9uT3JBbmNob3JGb2N1c2Vke291dGxpbmU6MnB4IHNvbGlkIGN1cnJlbnRDb2xvcn0ueXRTaGVldFZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS55dFNoZWV0Vmlld01vZGVsQ29udGV4dHVhbHtiYWNrZHJvcC1maWx0ZXI6Ymx1cig4cHgpO2JvcmRlci1yYWRpdXM6MTJweDtib3gtc2hhZG93OjAgNHB4IDMycHggMCByZ2JhKDAsMCwwLDAuMSk7b3ZlcmZsb3c6aGlkZGVufS55dFNoZWV0Vmlld01vZGVsUGFkZGVkQ29udGVudHtwYWRkaW5nOjE2cHggMH0ueXRTaGVldFZpZXdNb2RlbERpc2FibGVCYWNrZHJvcEZpbHRlcntiYWNrZHJvcC1maWx0ZXI6bm9uZX0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O21pbi1oZWlnaHQ6MH0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRDb250YWluZXJ7Ym9yZGVyLXJhZGl1czoxMnB4O2JhY2tncm91bmQtY29sb3I6I2ZmZjtkaXNwbGF5OmJsb2NrO292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpmaXhlZDttYXJnaW46MCA4cHggMjRweDtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDt6LWluZGV4OjEwMH1AbWVkaWEgKG1pbi1hc3BlY3QtcmF0aW86MTMvOSkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpIGFuZCAobWluLXdpZHRoOjQxNnB4KSwobWluLXdpZHRoOjkzMXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSkgYW5kIChtaW4td2lkdGg6NDE2cHgpey55dFNwZWNCb3R0b21TaGVldExheW91dENvbnRhaW5lcnt3aWR0aDo0MDBweDttYXJnaW46MCBhdXRvIDI0cHggYXV0b319Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0SGVhZGVyV3JhcHBlcntvdmVyZmxvdzpoaWRkZW47LW1vei1ib3gtZmxleDowO2ZsZXg6bm9uZTtib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZmZmO2N1cnNvcjotbW96LWdyYWI7Y3Vyc29yOmdyYWJ9Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0SGVhZGVyV3JhcHBlcklzRHJhZ2dpbmd7Y3Vyc29yOi1tb3otZ3JhYmJpbmc7Y3Vyc29yOmdyYWJiaW5nfS55dFNwZWNCb3R0b21TaGVldExheW91dEhlYWRlcldyYXBwZXJCb3R0b21Cb3JkZXJ7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfS55dFNwZWNCb3R0b21TaGVldExheW91dERyYWdMaW5le2JhY2tncm91bmQ6IzAzMDMwMztvcGFjaXR5Oi4xNTtib3JkZXItcmFkaXVzOjRweDtoZWlnaHQ6NHB4O21hcmdpbjowIGF1dG87d2lkdGg6NDBweDttYXJnaW4tdG9wOjhweH0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRIZWFkZXJ7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O21hcmdpbi10b3A6OHB4fS55dFNwZWNCb3R0b21TaGVldExheW91dEhlYWRlcldpdGhUaXRsZXttYXJnaW4tYm90dG9tOjdweH0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRUaXRsZVdyYXBwZXJ7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O21hcmdpbi1sZWZ0OjEycHh9Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0VGl0bGV7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo1MDA7Y29sb3I6IzAzMDMwMzttYXgtaGVpZ2h0OjIwcHg7bWFyZ2luOjB9Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0U3VidGl0bGV7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7Y29sb3I6IzYwNjA2MDttYXJnaW4tYm90dG9tOjA7bWFyZ2luLXRvcDo0cHg7bWF4LWhlaWdodDoxNnB4fS55dFNwZWNCb3R0b21TaGVldExheW91dE1vZGVybiAueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToycmVtO2xpbmUtaGVpZ2h0OjIuOHJlbTtmb250LXdlaWdodDo3MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoyLjhyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0TW9kZXJuIC55dFNwZWNCb3R0b21TaGVldExheW91dFRpdGxley13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0TW9kZXJuIC55dFNwZWNCb3R0b21TaGVldExheW91dFRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuOHJlbTtsaW5lLWhlaWdodDoyLjZyZW07Zm9udC13ZWlnaHQ6NzAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6Mi42cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dFNwZWNCb3R0b21TaGVldExheW91dE1vZGVybiAueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRUaXRsZXstd2Via2l0LWxpbmUtY2xhbXA6MTttYXgtaGVpZ2h0Om5vbmV9fX0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRNb2Rlcm4gLnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0VGl0bGV7bWF4LWhlaWdodDoyLjhyZW19QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0TW9kZXJuIC55dFNwZWNCb3R0b21TaGVldExheW91dFRpdGxle21heC1oZWlnaHQ6Mi42cmVtfX0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRNb2Rlcm4gLnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0U3VidGl0bGV7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoxLjhyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0TW9kZXJuIC55dFNwZWNCb3R0b21TaGVldExheW91dFN1YnRpdGxley13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0TW9kZXJuIC55dFNwZWNCb3R0b21TaGVldExheW91dFN1YnRpdGxle21heC1oZWlnaHQ6MS44cmVtfS55dFNwZWNCb3R0b21TaGVldExheW91dEFjdGlvbkhlYWRlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2NvbG9yOiMwMzAzMDM7bWFyZ2luOjAgMTJweH0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRDb250ZW50V3JhcHBlcnstbW96LWJveC1mbGV4OjE7ZmxleDoxOy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNoO292ZXJmbG93LXk6c2Nyb2xsfS55dFNwZWNCb3R0b21TaGVldExheW91dEJvdHRvbVNoZWV0Q29udGVudHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Y29sb3I6IzAzMDMwM30ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRGb290ZXJXcmFwcGVye2Rpc3BsYXk6YmxvY2s7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtvdmVyZmxvdzpoaWRkZW47LW1vei1ib3gtZmxleDowO2ZsZXg6bm9uZTtwb3NpdGlvbjpzdGlja3k7Ym90dG9tOjB9Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0Rm9vdGVyQnV0dG9uV3JhcHBlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDttYXJnaW46MTJweCAwfS55dFNwZWNCb3R0b21TaGVldExheW91dEZvb3RlckJ1dHRvbldyYXBwZXJMYW5kc2NhcGVCdXR0b25XcmFwcGVye21hcmdpbjo2cHggMH0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRTZWNvbmRhcnlCdXR0b257ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7bWFyZ2luLXJpZ2h0OjhweDttYXJnaW4tbGVmdDoxMnB4fS55dFNwZWNCb3R0b21TaGVldExheW91dFNlY29uZGFyeUJ1dHRvblRyYWlsaW5nUGFpcnstbW96LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0U2Vjb25kYXJ5QnV0dG9uU3BsaXRQYWlyey1tb3otYm94LWZsZXg6MTtmbGV4OjE7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRTZWNvbmRhcnlCdXR0b25QcmltYXJ5U3BsaXRQYWlyey1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0UHJpbWFyeUJ1dHRvbntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS55dFNwZWNCb3R0b21TaGVldExheW91dFByaW1hcnlCdXR0b25EZWZhdWx0e21hcmdpbjowIDEycHg7d2lkdGg6MTAwJX0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRQcmltYXJ5QnV0dG9uVHJhaWxpbmdQYWlyey1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDttYXJnaW4tcmlnaHQ6MTJweH0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRQcmltYXJ5QnV0dG9uUHJpbWFyeVNwbGl0UGFpciwueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRQcmltYXJ5QnV0dG9uU3BsaXRQYWlyey1tb3otYm94LWZsZXg6MTtmbGV4OjE7bWFyZ2luLXJpZ2h0OjEycHg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRGb290ZXJMYWJlbFdyYXBwZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO21hcmdpbjowIDEycHg7aGVpZ2h0OjMwcHh9Lnl0U3BlY0JvdHRvbVNoZWV0TGF5b3V0Rm9vdGVyTGFiZWxXcmFwcGVyV2l0aG91dEJ1dHRvbnN7bWFyZ2luLWJvdHRvbToxMnB4fS55dFNwZWNCb3R0b21TaGVldExheW91dExlYWRpbmdMYWJlbCwueXRTcGVjQm90dG9tU2hlZXRMYXlvdXRUcmFpbGluZ0xhYmVse21hcmdpbi10b3A6MTJweDtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRDb250ZXh0dWFsU2hlZXRMYXlvdXRIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7aGVpZ2h0OjEwMCU7bWluLXdpZHRoOjEyOHB4O21heC13aWR0aDo0MDBweDt3aWR0aDoxMDAlO21heC1oZWlnaHQ6Y2FsYygxMDB2aCAtIDQ4cHgpO21pbi1oZWlnaHQ6MH0ueXRDb250ZXh0dWFsU2hlZXRMYXlvdXRIb3N0T2xkTWluV2lkdGh7bWluLXdpZHRoOjI1NnB4fS55dENvbnRleHR1YWxTaGVldExheW91dEFkZFBhZGRpbmd7cGFkZGluZy1ib3R0b206OHB4fS55dENvbnRleHR1YWxTaGVldExheW91dEhlYWRlckNvbnRhaW5lcnstbW96LWJveC1mbGV4OjA7ZmxleDowfS55dENvbnRleHR1YWxTaGVldExheW91dENvbnRlbnRDb250YWluZXJ7LW1vei1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxO292ZXJmbG93LXk6YXV0bztzY3JvbGxiYXItY29sb3I6dHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7c2Nyb2xsYmFyLXdpZHRoOnRoaW59Lnl0Q29udGV4dHVhbFNoZWV0TGF5b3V0Q29udGVudENvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudDt3aWR0aDoxNnB4fS55dENvbnRleHR1YWxTaGVldExheW91dENvbnRlbnRDb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2hlaWdodDo1NnB4O2JvcmRlci1yYWRpdXM6OHB4O2JvcmRlcjo0cHggc29saWQgdHJhbnNwYXJlbnQ7YmFja2dyb3VuZC1jbGlwOmNvbnRlbnQtYm94O2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnR9Lnl0Q29udGV4dHVhbFNoZWV0TGF5b3V0Q29udGVudENvbnRhaW5lcjpob3ZlcntzY3JvbGxiYXItY29sb3I6IzkwOTA5MCB0cmFuc3BhcmVudH0ueXRDb250ZXh0dWFsU2hlZXRMYXlvdXRDb250ZW50Q29udGFpbmVyOmhvdmVyOjotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kLWNvbG9yOiM5MDkwOTB9Lnl0Q29udGV4dHVhbFNoZWV0TGF5b3V0Rm9vdGVyQ29udGFpbmVyey1tb3otYm94LWZsZXg6MDtmbGV4OjB9Lnl0d1ZhcmlhYmxlU3BlZWRDb250cm9sbGVyVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47bWFyZ2luOjEycHh9Lnl0d1ZhcmlhYmxlU3BlZWRDb250cm9sbGVyVmlld01vZGVsU3BlZWRJbmRpY2F0b3JDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlO21hcmdpbjphdXRvfS55dHdWYXJpYWJsZVNwZWVkQ29udHJvbGxlclZpZXdNb2RlbFBsYXliYWNrU3BlZWREaXNwbGF5ey1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24tc2VsZjpjZW50ZXI7Y29sb3I6IzAzMDMwMztmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyLjhyZW07bGluZS1oZWlnaHQ6My44cmVtO2ZvbnQtd2VpZ2h0OjkwMH1AbWVkaWEgKG1heC13aWR0aDo1MjcuOXB4KXsueXR3VmFyaWFibGVTcGVlZENvbnRyb2xsZXJWaWV3TW9kZWxQbGF5YmFja1NwZWVkRGlzcGxheXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyLjRyZW07bGluZS1oZWlnaHQ6My4ycmVtO2ZvbnQtd2VpZ2h0OjkwMH19Lnl0d1ZhcmlhYmxlU3BlZWRDb250cm9sbGVyVmlld01vZGVsUHJlbWl1bUJhZGdle3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjEwMCU7bWFyZ2luLXJpZ2h0OjhweH0ueXR3VmFyaWFibGVTcGVlZENvbnRyb2xsZXJWaWV3TW9kZWxTbGlkZXJDb250YWluZXJ7bWFyZ2luOjhweCAwfS55dHdWYXJpYWJsZVNwZWVkQ29udHJvbGxlclZpZXdNb2RlbFBsYXliYWNrU3BlZWRCdXR0b257bWFyZ2luOjAgNHB4fS55dHdWYXJpYWJsZVNwZWVkQ29udHJvbGxlclZpZXdNb2RlbEJ1dHRvbkNvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0d1ZhcmlhYmxlU3BlZWRDb250cm9sbGVyU3BlZWRCdXR0b25WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjthbGlnbi1zZWxmOmZsZXgtc3RhcnR9Lnl0d1ZhcmlhYmxlU3BlZWRDb250cm9sbGVyU3BlZWRCdXR0b25WaWV3TW9kZWxTcGVlZExhYmVse21hcmdpbi10b3A6NHB4O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOiMwMzAzMDN9Lnl0V2ViU2NyaW1Ib3N0e3Bvc2l0aW9uOmZpeGVkO3RvcDowO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO3otaW5kZXg6MTtjdXJzb3I6cG9pbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC44KX0ueXRXZWJTY3JpbUhvc3RSZWxhdGl2ZXtwb3NpdGlvbjphYnNvbHV0ZX0ueXRXZWJTY3JpbUhvc3RNb2Rlcm5PdmVybGF5e2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjMpfS55dFdlYlNjcmltSG9zdEJvdHRvbVNoZWV0e2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpfS55dFdlYlNjcmltSG9zdEVuZ2FnZW1lbnRQYW5lbHt6LWluZGV4OjA7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnJnYmEoMCwwLDAsMCk7dG9wOjEwMHZ3fS55dFdlYlNjcmltSG9zdERyYWdnYWJsZUVuZ2FnZW1lbnRQYW5lbHt6LWluZGV4OjM7dG9wOjB9Lnl0V2ViU2NyaW1Ib3N0RHJhd2VyTGF5b3V0e2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjpyZ2JhKDAsMCwwLDApfS55dFdlYlNjcmltRGlhbG9nQ29udGFpbmVye3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7dG9wOjA7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3otaW5kZXg6NH0ueXRXZWJTY3JpbUhpZGRlbkJ1dHRvbntwb3NpdGlvbjpmaXhlZDt0b3A6MDtsZWZ0OjA7aGVpZ2h0OjEycHg7d2lkdGg6MTJweDtwYWRkaW5nOjA7Ym9yZGVyOm5vbmU7b3V0bGluZTpub25lO2ZvbnQ6aW5oZXJpdDt0ZXh0LXRyYW5zZm9ybTppbmhlcml0O2NvbG9yOmluaGVyaXQ7YmFja2dyb3VuZDp0cmFuc3BhcmVudH1ib3R0b20tc2hlZXQtY29udGFpbmVye3Bvc2l0aW9uOmZpeGVkO3otaW5kZXg6NX1ib3R0b20tc2hlZXQtY29udGFpbmVyIC5jbG9zZS1idXR0b257cG9zaXRpb246Zml4ZWQ7dG9wOjA7bGVmdDowO2hlaWdodDoxMnB4O3dpZHRoOjEycHh9YzMtb3ZlcmxheS5ib3R0b20tc2hlZXQtb3ZlcmxheXtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC42KX1bYm90dG9tLXNoZWV0LW9wZW5de292ZXJmbG93OmhpZGRlbn1bbW9kYWwtb3Blbi1ib2R5XXtwb3NpdGlvbjpmaXhlZDtsZWZ0OjA7cmlnaHQ6MH0uYjMtaWZyYW1lLWFuY2VzdG9yW21vZGFsLW9wZW4tYm9keV17cG9zaXRpb246YWJzb2x1dGV9Lm1vZGFsLWhpZGRlbi1idXR0b257cG9zaXRpb246Zml4ZWQ7dG9wOjA7bGVmdDowO2hlaWdodDoxMnB4O3dpZHRoOjEycHh9LmJ1dHRvbi13aXRoLWljb257cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7LW1vei11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7bWluLXdpZHRoOjUuMTRlbTttYXJnaW46MCAuMjllbTtmb250LXNpemU6MS40cmVtO2JvcmRlci1yYWRpdXM6M3B4fS5idXR0b24td2l0aC1pY29uLWJ1dHRvbntwYWRkaW5nOi43ZW0gLjU3ZW19LmJ1dHRvbi13aXRoLWljb24uY29tcGFjdHttYXJnaW46LS43ZW0gLS41N2VtfS5idXR0b24td2l0aC1pY29uLmNvbXBhY3QrLmJ1dHRvbi13aXRoLWljb24uY29tcGFjdHttYXJnaW4tbGVmdDouN2VtfS5idXR0b24td2l0aC1pY29uLWlubmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9LmJ1dHRvbi13aXRoLWljb24tYnV0dG9uW2Rpc2FibGVkXSwuYnV0dG9uLXdpdGgtaWNvbi5kaXNhYmxlZCAuYnV0dG9uLXdpdGgtaWNvbi1idXR0b257Y29sb3I6IzkwOTA5MH0uYnV0dG9uLXJlbmRlcmVyW2RhdGEtc3R5bGU9U1RZTEVfQlJBTkRde2NvbG9yOiNlMTAwMmR9LmJ1dHRvbi1yZW5kZXJlcltkYXRhLXN0eWxlPVNUWUxFX1BSSU1BUlldOm5vdChbZGlzYWJsZWQ9dHJ1ZV0pe2NvbG9yOiNmZmY7YmFja2dyb3VuZC1jb2xvcjojMDY1ZmQ0fS5idXR0b24tcmVuZGVyZXJbZGF0YS1zdHlsZT1TVFlMRV9QUklNQVJZXVtkaXNhYmxlZD10cnVlXXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS5idXR0b24tcmVuZGVyZXJbZGF0YS1zdHlsZT1TVFlMRV9URVhUXXtjb2xvcjojNjA2MDYwfS5idXR0b24tcmVuZGVyZXJbZGF0YS1zdHlsZT1TVFlMRV9URVhUXSAubG9nby1hcnJvd3tmaWxsOiNmZmZ9LmJ1dHRvbi1yZW5kZXJlcltkYXRhLXN0eWxlPVNUWUxFX0JMVUVfVEVYVF17Y29sb3I6IzA2NWZkNH0uYnV0dG9uLXJlbmRlcmVyW2RhdGEtc3R5bGU9U1RZTEVfQkxVRV9URVhUX1dJVEhfSU5WRVJTRV9USEVNRV17Y29sb3I6IzNlYTZmZn0uYnV0dG9uLXJlbmRlcmVyW2RhdGEtc3R5bGU9U1RZTEVfREVTVFJVQ1RJVkVde2JhY2tncm91bmQtY29sb3I6I2UxMDAyZDtib3JkZXItY29sb3I6I2UxMDAyZDtjb2xvcjojZmZmfS5idXR0b24tcmVuZGVyZXJbZGF0YS1zdHlsZT1TVFlMRV9TVUdHRVNUSVZFXXtib3JkZXI6MXB4IHNvbGlkICMwNjVmZDQ7Y29sb3I6IzA2NWZkNH0uYnV0dG9uLXJlbmRlcmVyW2RhdGEtc3R5bGU9U1RZTEVfT1ZFUkxBWV17YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMyk7Y29sb3I6I2ZmZn0uYnV0dG9uLXJlbmRlcmVyW2RhdGEtc3R5bGU9U1RZTEVfREFSS117YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMyk7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpfS5idXR0b24tcmVuZGVyZXJbZGF0YS1zdHlsZT1TVFlMRV9JTkFDVElWRV9PVVRMSU5FXXtjb2xvcjojNjA2MDYwO2JvcmRlcjoxcHggc29saWQgIzYwNjA2MDtwYWRkaW5nOjVweCAxMXB4fS5idXR0b24tcmVuZGVyZXJbZGF0YS1pY29uLW9ubHk9dHJ1ZV17bWluLXdpZHRoOjA7bWFyZ2luOjB9LmJ1dHRvbi1yZW5kZXJlcltkYXRhLWljb24tb25seT1mYWxzZV0gLmJ1dHRvbi1yZW5kZXJlci1pY29ue21hcmdpbjowIDhweH0uYnV0dG9uLXJlbmRlcmVyLXRleHR7YWxpZ24tc2VsZjpjZW50ZXI7bWluLWhlaWdodDoxZW07bGluZS1oZWlnaHQ6MWVtO2ZvbnQtd2VpZ2h0OjUwMH1baXMtYnVzeT10cnVlXSAuYnV0dG9uLXJlbmRlcmVyLWljb24sW2lzLWJ1c3k9dHJ1ZV0gLmJ1dHRvbi1yZW5kZXJlci10ZXh0e3Zpc2liaWxpdHk6aGlkZGVufS5idXR0b24td2l0aC1pY29uLXNwaW5uZXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7bWFyZ2luOmF1dG99LmJ1dHRvbi1yZW5kZXJlci13aXRoLWFuaW1hdGlvbiAuYnV0dG9uLXdpdGgtaWNvbi1idXR0b257b3ZlcmZsb3c6dmlzaWJsZX1jMy1pY29ue2Rpc3BsYXk6LW1vei1pbmxpbmUtYm94O2Rpc3BsYXk6aW5saW5lLWZsZXg7ZmxleC1zaHJpbms6MDt3aWR0aDoyNHB4O2hlaWdodDoyNHB4O2ZpbGw6Y3VycmVudENvbG9yO3N0cm9rZTpub25lfVtkaXI9cnRsXSBjMy1pY29uW2ZsaXAtZm9yLXJ0bD10cnVlXXt0cmFuc2Zvcm06c2NhbGVYKC0xKX0uaWNvbi1idXR0b257Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O3BhZGRpbmc6OHB4Oy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveH1jMy1pY29uIHN2Z3t3aWR0aDoxMDAlO2hlaWdodDoxMDAlfWMzLWljb24uaWNvbi1zdGF0ZS1vdXRsaW5lW2ljb24tc3RhdGUtZmlsbGVkXXtkaXNwbGF5Om5vbmV9YzMtaWNvbi5pY29uLXN0YXRlLWZpbGxlZFtpY29uLXN0YXRlLW91dGxpbmVde2Rpc3BsYXk6bm9uZX0ucGl2b3QtYmFyLWl0ZW0tdGFiIGMzLWljb25baWNvbi1zdGF0ZS1maWxsZWRde2Rpc3BsYXk6bm9uZX0ucGl2b3QtYmFyLWl0ZW0tdGFiIGMzLWljb25baWNvbi1zdGF0ZS1vdXRsaW5lXXtkaXNwbGF5OmJsb2NrfS5waXZvdC1iYXItaXRlbS10YWJbYXJpYS1zZWxlY3RlZD10cnVlXSBjMy1pY29uW2ljb24tc3RhdGUtZmlsbGVkXXtkaXNwbGF5OmJsb2NrfS5waXZvdC1iYXItaXRlbS10YWJbYXJpYS1zZWxlY3RlZD10cnVlXSBjMy1pY29uW2ljb24tc3RhdGUtb3V0bGluZV17ZGlzcGxheTpub25lfSNtZW51LC5tZW51LWNvbnRhaW5lcntwb3NpdGlvbjpmaXhlZDt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ei1pbmRleDo0fS5tZW51LWNvbnRlbnR7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyO21heC1oZWlnaHQ6MTAwJTtvdmVyZmxvdy15OmF1dG87Y29sb3I6IzAzMDMwMztiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7cGFkZGluZzozcHh9Lm1lbnUtY29udGVudC5tZW51LWJvdHRvbXtib3R0b206MDtjb2xvcjojMDMwMzAzO3BhZGRpbmc6MDtwb3NpdGlvbjpmaXhlZDttYXgtd2lkdGg6MTAwJTt3aWR0aDoxMDAlfS5ib3R0b20tbWVudS1jYW5jZWx7Ym9yZGVyLXRvcDoxcHggc29saWQgI2YxZjFmMTtwYWRkaW5nOjhweCAwfS5tZW51LWNvbnRlbnQ+YXtkaXNwbGF5OmJsb2NrfS5tZW51LWNhbmNlbC1idXR0b257ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ubWVudS1jYW5jZWwtaWNvbnttYXJnaW46MCA4cHh9Lm1lbnUtY29udGVudC5tZW51LWJvdHRvbSBjMy1pY29ue2NvbG9yOiMwMzAzMDM7bWFyZ2luOjAgMzJweCAwIDB9Lm1lbnUtY29udGVudDpub3QoLm1lbnUtc2hvdy1pY29ucykgLm1lbnUtaXRlbS1idXR0b24gYzMtaWNvbntkaXNwbGF5Om5vbmV9QG1lZGlhIChtaW4td2lkdGg6MzMwcHgpey5tZW51LWNvbnRlbnQ6bm90KC5tZW51LWJvdHRvbSl7bWluLXdpZHRoOjI1MHB4O21heC13aWR0aDozNTZweDttYXJnaW46NDBweH19Lm1lbnUtZnVsbC13aWR0aCAubWVudS1jb250ZW50e2JhY2tncm91bmQtY29sb3I6I2ZmZjttaW4td2lkdGg6MTAwJTttaW4taGVpZ2h0OjEwMCU7bWFyZ2luOjA7cGFkZGluZzowO2hlaWdodDoxcHg7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94fS5tZW51LWNvbnRlbnQucm91bmRlZC1jb250YWluZXJ7Ym9yZGVyLXJhZGl1czo4cHh9Lmljb24tYnV0dG9uLnNtYWxse3BhZGRpbmctbGVmdDowO3BhZGRpbmctcmlnaHQ6MDt3aWR0aDoxNnB4fXl0bS1tZW51LWl0ZW17ZGlzcGxheTpibG9jaztwYWRkaW5nOjNweCAwfXl0bS1tZW51LWl0ZW0gLm1lbnUtaXRlbS1idXR0b257ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7bWluLWhlaWdodDo0OHB4O3BhZGRpbmc6OHB4IDE2cHg7bWFyZ2luLWxlZnQ6MDt3aWR0aDoxMDAlO2N1cnNvcjpwb2ludGVyO3RleHQtYWxpZ246aW5pdGlhbDt0ZXh0LXRyYW5zZm9ybTp1bnNldDstbW96LXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZTtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjQwMH15dG0tbWVudS1pdGVtIC5tZW51LWl0ZW0tYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA1KX15dG0tbWVudS1pdGVtIGMzLWljb257bWFyZ2luLXJpZ2h0OjI0cHh9Lm1lbnUtYm90dG9tIC5tZW51LWl0ZW0tYnV0dG9ue2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Zm9udC1zaXplOjEuNnJlbTtwYWRkaW5nOjExcHggMTZweH0ueXR3UGxheWVyQm90dG9tQ29udHJvbHNIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0d1BsYXllckJvdHRvbUNvbnRyb2xzRnVsbHNjcmVlbkJ1dHRvbldyYXBwZXJ7LW1vei1tYXJnaW4tc3RhcnQ6YXV0bzttYXJnaW4taW5saW5lLXN0YXJ0OmF1dG99Lnl0QmFkZ2VTaGFwZUhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtib3JkZXItcmFkaXVzOjJweDtwYWRkaW5nOjAgNHB4fS55dEJhZGdlU2hhcGVUeXBvZ3JhcGh5e2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NTAwfS55dEJhZGdlU2hhcGVJY29ue2Rpc3BsYXk6YmxvY2s7bWFyZ2luLXJpZ2h0OjJweDtoZWlnaHQ6MTZweDt3aWR0aDoxNnB4fS55dEJhZGdlU2hhcGVNb2Rlcm4gLnl0QmFkZ2VTaGFwZUljb257bWFyZ2luLXJpZ2h0OjJweDtoZWlnaHQ6MTJweDt3aWR0aDoxMnB4fS55dEJhZGdlU2hhcGVOb1RleHR7cGFkZGluZzowIDFweDttaW4taGVpZ2h0OjE4cHh9Lnl0QmFkZ2VTaGFwZU5vVGV4dCAueXRCYWRnZVNoYXBlSWNvbnttYXJnaW4tcmlnaHQ6MH0ueXRCYWRnZVNoYXBlVGh1bWJuYWlsQmFkZ2V7Ym9yZGVyLXJhZGl1czo0cHg7cGFkZGluZzoxcHggNHB4fS55dEJhZGdlU2hhcGVUaHVtYm5haWxCYWRnZSAueXRCYWRnZVNoYXBlSWNvbnttYXJnaW4tcmlnaHQ6NHB4O2hlaWdodDoxMnB4O3dpZHRoOjEycHh9Lnl0QmFkZ2VTaGFwZVRodW1ibmFpbEJhZGdlLnl0QmFkZ2VTaGFwZU5vVGV4dCAueXRCYWRnZVNoYXBlSWNvbnttYXJnaW4tcmlnaHQ6MH0ueXRCYWRnZVNoYXBlVGh1bWJuYWlsQmFkZ2VSZWRlc2lnbntiYWNrZHJvcC1maWx0ZXI6Ymx1cig4cHgpO2JvcmRlci1yYWRpdXM6MTBweDtwYWRkaW5nOjAgNnB4fS55dEJhZGdlU2hhcGVTdGF0dXNCYWRnZXtib3JkZXItcmFkaXVzOjRweDtwYWRkaW5nOjFweCA0cHh9Lnl0QmFkZ2VTaGFwZVN0YXR1c0JhZGdlIC55dEJhZGdlU2hhcGVJY29ue21hcmdpbi1yaWdodDo0cHg7aGVpZ2h0OjEycHg7d2lkdGg6MTJweH0ueXRCYWRnZVNoYXBlU3RhdHVzQmFkZ2UueXRCYWRnZVNoYXBlTm9UZXh0IC55dEJhZGdlU2hhcGVJY29ue21hcmdpbi1yaWdodDowfS55dEJhZGdlU2hhcGVUZXh0e2Rpc3BsYXk6YmxvY2s7d2hpdGUtc3BhY2U6bm93cmFwfS55dEJhZGdlU2hhcGVUZXh0Q2xpcFRleHRPdmVyZmxvd3tvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRCYWRnZVNoYXBlVGV4dEhhc011bHRpcGxlQmFkZ2VzSW5Sb3d7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7bWF4LXdpZHRoOjIwY2h9Lnl0QmFkZ2VTaGFwZURlZmF1bHR7CiAgLyogIWtlZXAgKi9jb2xvcjojNjA2MDYwO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjA1KX0ueXRCYWRnZVNoYXBlRGVmYXVsdC55dEJhZGdlU2hhcGVPdmVybGF5e2NvbG9yOiNmZmY7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuNil9Lnl0QmFkZ2VTaGFwZURlZmF1bHQueXRCYWRnZVNoYXBlTW9kZXJue2NvbG9yOiM2MDYwNjA7YmFja2dyb3VuZDpub25lO3BhZGRpbmctbGVmdDowfS55dEJhZGdlU2hhcGVNZWRpYXsKICAvKiAha2VlcCAqL2NvbG9yOiM2MDYwNjA7b3V0bGluZToxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpO291dGxpbmUtb2Zmc2V0Oi0xcHh9Lnl0QmFkZ2VTaGFwZU1lZGlhLnl0QmFkZ2VTaGFwZU1vZGVybntjb2xvcjojNjA2MDYwO291dGxpbmU6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKTtvdXRsaW5lLW9mZnNldDotMXB4fS55dEJhZGdlU2hhcGVNZWRpYU92ZXJsYXl7CiAgLyogIWtlZXAgKi9jb2xvcjojZmZmO291dGxpbmU6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsMC4zKTtvdXRsaW5lLW9mZnNldDotMXB4fS55dEJhZGdlU2hhcGVNZWRpYU92ZXJsYXkueXRCYWRnZVNoYXBlTW9kZXJue2NvbG9yOiNmZmY7b3V0bGluZToxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjMpO291dGxpbmUtb2Zmc2V0Oi0xcHh9Lnl0QmFkZ2VTaGFwZVByb21vdGVkewogIC8qICFrZWVwICovY29sb3I6IzAzMDMwMztwYWRkaW5nLWxlZnQ6MH0ueXRCYWRnZVNoYXBlUHJvbW90ZWQueXRCYWRnZVNoYXBlTW9kZXJue2NvbG9yOiMwMzAzMDM7YmFja2dyb3VuZDpub25lO3BhZGRpbmctbGVmdDowfS55dEJhZGdlU2hhcGVQcm9tb3RlZEludmVydGVkLnl0QmFkZ2VTaGFwZU1vZGVybntjb2xvcjojZmZmO2JhY2tncm91bmQ6bm9uZTtwYWRkaW5nLWxlZnQ6MH0ueXRCYWRnZVNoYXBlVGltZWx5ewogIC8qICFrZWVwICovY29sb3I6IzYwNjA2MH0ueXRCYWRnZVNoYXBlVGltZWx5IC55dEJhZGdlU2hhcGVJY29ue2NvbG9yOiNlMTAwMmR9Lnl0QmFkZ2VTaGFwZVRpbWVseXtwYWRkaW5nLWxlZnQ6MH0ueXRCYWRnZVNoYXBlVGltZWx5Lnl0QmFkZ2VTaGFwZU1vZGVybntjb2xvcjojNjA2MDYwfS55dEJhZGdlU2hhcGVUaW1lbHkueXRCYWRnZVNoYXBlTW9kZXJuIC55dEJhZGdlU2hhcGVJY29ue2NvbG9yOiNlMTAwMmR9Lnl0QmFkZ2VTaGFwZVRpbWVseS55dEJhZGdlU2hhcGVNb2Rlcm57cGFkZGluZy1sZWZ0OjB9Lnl0QmFkZ2VTaGFwZVByZW1pdW17CiAgLyogIWtlZXAgKi9jb2xvcjojZmZmO2JhY2tncm91bmQ6I2UxMDAyZH0ueXRCYWRnZVNoYXBlUHJlbWl1bS55dEJhZGdlU2hhcGVNb2Rlcm57Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kOiNlMTAwMmR9Lnl0QmFkZ2VTaGFwZVNhbGV7CiAgLyogIWtlZXAgKi9jb2xvcjojYzMwMDI3fS55dEJhZGdlU2hhcGVTYWxlIC55dEJhZGdlU2hhcGVJY29ue2NvbG9yOiNjMzAwMjd9Lnl0QmFkZ2VTaGFwZVNhbGV7cGFkZGluZy1sZWZ0OjB9Lnl0QmFkZ2VTaGFwZVNhbGUueXRCYWRnZVNoYXBlTW9kZXJuLC55dEJhZGdlU2hhcGVTYWxlLnl0QmFkZ2VTaGFwZU1vZGVybiAueXRCYWRnZVNoYXBlSWNvbntjb2xvcjojYzMwMDI3fS55dEJhZGdlU2hhcGVTYWxlLnl0QmFkZ2VTaGFwZU1vZGVybntwYWRkaW5nLWxlZnQ6MH0ueXRCYWRnZVNoYXBlTWVtYmVyc2hpcHsKICAvKiAha2VlcCAqL2NvbG9yOiMxMDc1MTY7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMDUpfS55dEJhZGdlU2hhcGVNZW1iZXJzaGlwLnl0QmFkZ2VTaGFwZU1vZGVybntjb2xvcjojMTA3NTE2O2JhY2tncm91bmQ6bm9uZTtwYWRkaW5nLWxlZnQ6MH0ueXRCYWRnZVNoYXBlQ29tbWVyY2V7CiAgLyogIWtlZXAgKi9jb2xvcjojMTA3NTE2O2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjA1KX0ueXRCYWRnZVNoYXBlQ29tbWVyY2UueXRCYWRnZVNoYXBlTW9kZXJue2NvbG9yOiMxMDc1MTY7YmFja2dyb3VuZDpub25lO3BhZGRpbmctbGVmdDowfS55dEJhZGdlU2hhcGVMaXZlewogIC8qICFrZWVwICovY29sb3I6I2ZmZjtiYWNrZ3JvdW5kOnJnYmEoMjI1LDAsNDUsMC45KX0ueXRCYWRnZVNoYXBlTGl2ZS55dEJhZGdlU2hhcGVPdmVybGF5e2NvbG9yOiNmZmY7YmFja2dyb3VuZDpyZ2JhKDIyNSwwLDQ1LDAuOSl9Lnl0QmFkZ2VTaGFwZUxpdmUueXRCYWRnZVNoYXBlTW9kZXJue2NvbG9yOiNmZmY7YmFja2dyb3VuZDpyZ2JhKDIyNSwwLDQ1LDAuOSl9Lnl0QmFkZ2VTaGFwZVN0YXR1c05ld3sKICAvKiAha2VlcCAqL2NvbG9yOiMwNjVmZDQ7b3V0bGluZToxcHggc29saWQgIzA2NWZkNDtvdXRsaW5lLW9mZnNldDotMXB4fS55dEJhZGdlU2hhcGVTdGF0dXNOZXcueXRCYWRnZVNoYXBlTW9kZXJue2NvbG9yOiMwNjVmZDQ7b3V0bGluZToxcHggc29saWQgIzA2NWZkNDtvdXRsaW5lLW9mZnNldDotMXB4fS55dEJhZGdlU2hhcGVTdGF0dXNDb21wbGV0ZXsKICAvKiAha2VlcCAqL2NvbG9yOiMwMDU5MTc7YmFja2dyb3VuZDojZGVmZmRlfS55dEJhZGdlU2hhcGVTdGF0dXNDb21wbGV0ZS55dEJhZGdlU2hhcGVNb2Rlcm57Y29sb3I6IzAwNTkxNztiYWNrZ3JvdW5kOiNkZWZmZGV9Lnl0QmFkZ2VTaGFwZVN0YXR1c1dhcm5pbmd7CiAgLyogIWtlZXAgKi9jb2xvcjojN2MyOTAwO2JhY2tncm91bmQ6I2ZmZWFjZn0ueXRCYWRnZVNoYXBlU3RhdHVzV2FybmluZy55dEJhZGdlU2hhcGVNb2Rlcm57Y29sb3I6IzdjMjkwMDtiYWNrZ3JvdW5kOiNmZmVhY2Z9Lnl0QmFkZ2VTaGFwZVN0YXR1c0Vycm9yewogIC8qICFrZWVwICovY29sb3I6Izk5MDQxMjtiYWNrZ3JvdW5kOnJnYmEoMjU1LDg1LDExOSwwLjIpfS55dEJhZGdlU2hhcGVTdGF0dXNFcnJvci55dEJhZGdlU2hhcGVNb2Rlcm57Y29sb3I6Izk5MDQxMjtiYWNrZ3JvdW5kOnJnYmEoMjU1LDg1LDExOSwwLjIpfS55dEJhZGdlU2hhcGVTdGF0dXNEZWZhdWx0ewogIC8qICFrZWVwICovY29sb3I6IzAzMDMwMztiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKX0ueXRCYWRnZVNoYXBlU3RhdHVzRGVmYXVsdC55dEJhZGdlU2hhcGVNb2Rlcm57Y29sb3I6IzAzMDMwMztiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKX0ueXRCYWRnZVNoYXBlVGh1bWJuYWlsRGVmYXVsdHsKICAvKiAha2VlcCAqL2NvbG9yOiNmZmY7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuNil9Lnl0QmFkZ2VTaGFwZVRodW1ibmFpbERlZmF1bHQueXRCYWRnZVNoYXBlTW9kZXJue2NvbG9yOiNmZmY7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuNil9Lnl0QmFkZ2VTaGFwZVRodW1ibmFpbExpdmV7CiAgLyogIWtlZXAgKi9jb2xvcjojZmZmO2JhY2tncm91bmQ6cmdiYSgyMjUsMCw0NSwwLjkpfS55dEJhZGdlU2hhcGVUaHVtYm5haWxMaXZlLnl0QmFkZ2VTaGFwZU1vZGVybntjb2xvcjojZmZmO2JhY2tncm91bmQ6cmdiYSgyMjUsMCw0NSwwLjkpfS55dEJhZGdlU2hhcGVUaHVtYm5haWxTcGVjaWFsewogIC8qICFrZWVwICovY29sb3I6IzAzMDMwMztiYWNrZ3JvdW5kOiNmZmZ9Lnl0QmFkZ2VTaGFwZVRodW1ibmFpbFNwZWNpYWwgLnl0QmFkZ2VTaGFwZUljb257Y29sb3I6I2UxMDAyZH0ueXRCYWRnZVNoYXBlVGh1bWJuYWlsU3BlY2lhbC55dEJhZGdlU2hhcGVNb2Rlcm57Y29sb3I6IzAzMDMwMztiYWNrZ3JvdW5kOiNmZmZ9Lnl0QmFkZ2VTaGFwZVRodW1ibmFpbFNwZWNpYWwueXRCYWRnZVNoYXBlTW9kZXJuIC55dEJhZGdlU2hhcGVJY29ue2NvbG9yOiNlMTAwMmR9Lnl0QmFkZ2VTaGFwZVRodW1ibmFpbERlZmF1bHRSZWRlc2lnbnsKICAvKiAha2VlcCAqL2NvbG9yOiNmZmY7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMyl9Lnl0QmFkZ2VTaGFwZVRodW1ibmFpbERlZmF1bHRSZWRlc2lnbi55dEJhZGdlU2hhcGVNb2Rlcm57Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4zKX0ueXRCYWRnZVNoYXBlQWR7Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOiMwMzAzMDM7d2hpdGUtc3BhY2U6bm93cmFwO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3BhZGRpbmctcmlnaHQ6MDtwYWRkaW5nLWxlZnQ6MDtmb250LXNpemU6dW5zZXQ7bGluZS1oZWlnaHQ6dW5zZXR9Lnl0QmFkZ2VTaGFwZUFkLnl0QmFkZ2VTaGFwZUFkc0luY2x1ZGVEb3Q6YWZ0ZXJ7Y29udGVudDoiwrciOy1tb3otcGFkZGluZy1lbmQ6NHB4O3BhZGRpbmctaW5saW5lLWVuZDo0cHg7LW1vei1wYWRkaW5nLXN0YXJ0OjRweDtwYWRkaW5nLWlubGluZS1zdGFydDo0cHh9Lnl0QmFkZ2VTaGFwZUFkLnl0QmFkZ2VTaGFwZU92ZXJsYXl7Y29sb3I6I2ZmZn0ueXRCYWRnZVNoYXBlTWVkaXVtRm9udEFkQmFkZ2V7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwfS55dEJhZGdlU2hhcGVMYXJnZUZvbnRBZEJhZGdle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NTAwfS55dEJhZGdlU2hhcGVJc0VtcHR5e2Rpc3BsYXk6bm9uZX0uYWNjb3VudEluZm9Ib3N0e2Rpc3BsYXk6YmxvY2t9Lmxpa2UtYnV0dG9uLXJlbmRlcmVyIFthcmlhLXByZXNzZWQ9dHJ1ZV0gYzMtaWNvbntjb2xvcjojMDY1ZmQ0fS5saWtlLWJ1dHRvbi1yZW5kZXJlciBbYXJpYS1wcmVzc2VkPXRydWVdIGMzLWljb24gcGF0aHtmaWxsOiMzZWE2ZmY7c3Ryb2tlOiNmZmY7c3Ryb2tlLXdpZHRoOjFweH15dG0tbWVudS1yZW5kZXJlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleH0uYm90dG9tLXNoZWV0LW1lZGlhLW1lbnUtaXRlbSB5dG0tbWVudS1pdGVte3BhZGRpbmc6MDtoZWlnaHQ6NDhweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS5ib3R0b20tc2hlZXQtbWVkaWEtbWVudS1pdGVtIC5tZW51LWl0ZW0tYnV0dG9ue2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3BhZGRpbmc6MDttYXJnaW4tbGVmdDoxMnB4O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwfS5ib3R0b20tc2hlZXQtbWVkaWEtbWVudS1pdGVtIGMzLWljb257bWFyZ2luLXJpZ2h0OjEycHh9eXRtLXRodW1ibmFpbC1vdmVybGF5LXRpbWUtc3RhdHVzLXJlbmRlcmVye21hcmdpbjo1cHh9eXRtLXRodW1ibmFpbC1vdmVybGF5LXRpbWUtc3RhdHVzLXJlbmRlcmVyW3RodW1ibmFpbC1zaXplPXNtYWxsXXttYXJnaW46MnB4fXl0bS10aHVtYm5haWwtb3ZlcmxheS10aW1lLXN0YXR1cy1yZW5kZXJlclt0aHVtYm5haWwtc2l6ZT1tZWRpdW1de21hcmdpbjo0cHh9eXRtLXRodW1ibmFpbC1vdmVybGF5LXRpbWUtc3RhdHVzLXJlbmRlcmVyW3RodW1ibmFpbC1zaXplPWxhcmdlXXttYXJnaW46OHB4fXl0bS10aHVtYm5haWwtb3ZlcmxheS10aW1lLXN0YXR1cy1yZW5kZXJlcltkYXRhLXN0eWxlPUxJVkVdLHl0bS10aHVtYm5haWwtb3ZlcmxheS10aW1lLXN0YXR1cy1yZW5kZXJlcltkYXRhLXN0eWxlPVNIT1JUU117dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfWltZy5jdXN0b20tdGh1bWJuYWlsLnZpZGVvLXRodW1ibmFpbC1pbWd7b2JqZWN0LWZpdDpzY2FsZS1kb3duO21heC1oZWlnaHQ6MTAwJTttYXgtd2lkdGg6MTAwJX0udmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1jb21wYWN0LC52aWRlby10aHVtYm5haWwtY29udGFpbmVyLWxhcmdle3Bvc2l0aW9uOnJlbGF0aXZlO2ZsZXgtc2hyaW5rOjA7b3ZlcmZsb3c6aGlkZGVufS52aWRlby10aHVtYm5haWwtaW1ne3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO3dpZHRoOjEwMCU7bWluLWhlaWdodDoxMDAlO21hcmdpbjphdXRvfS52aWRlby10aHVtYm5haWwtYmd7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMSl9LnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2V7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmctYm90dG9tOjU2LjI1JX0udmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1sYXJnZS5zdGFja2Vke2JvcmRlci1yYWRpdXM6MTJweDtib3JkZXItdG9wOjFweCBzb2xpZCAjZmZmfS52aWRlby10aHVtYm5haWwtY29udGFpbmVyLWNvbXBhY3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjE2MHB4O2hlaWdodDo5MHB4fS5jdXN0b20tdGh1bWJuYWlsLWJhY2tncm91bmQtY29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjE4MHB4O2hlaWdodDoxODBweH0uY3VzdG9tLXRodW1ibmFpbC1iYWNrZ3JvdW5kLWNvbnRhaW5lciAuY3VzdG9tLXRodW1ibmFpbHtvcGFjaXR5Oi43O2ZpbHRlcjpibHVyKDMwcHgpfS52aWRlby10aHVtYm5haWwtY29udGFpbmVyLWNvbXBhY3Qtcm91bmRlZHtib3JkZXItcmFkaXVzOjhweH0ub3JpZ2luYWwtYXNwZWN0LXJhdGlvIGltZ3toZWlnaHQ6MTAwJTt3aWR0aDphdXRvfS5zdGFja2Vke2JvcmRlci1yYWRpdXM6MTJweDtib3JkZXItdG9wOjFweCBzb2xpZCAjZmZmfUBtZWRpYSAobWF4LXdpZHRoOjU0OXB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KXsuYmlnLXNob3J0cy1zaW5nbGV0b24gLnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2V7cGFkZGluZy1ib3R0b206MTI1JX0uYmlnLXNob3J0cy1zaW5nbGV0b24gLnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2UgaW1ne29iamVjdC1maXQ6Y292ZXI7d2lkdGg6MTAwJX19QG1lZGlhIChtYXgtd2lkdGg6NTQ5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpe3l0bS1pdGVtLXNlY3Rpb24tcmVuZGVyZXI6Zmlyc3Qtb2YtdHlwZSAudmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1sYXJnZXttYXJnaW4tdG9wOjB9LnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2U6d2hlcmUoLm5vdC1yZW5kZXJlZC1mcm9tLXJpY2gtaXRlbSl7bWFyZ2luOi0xM3B4IC0xMnB4IDA7cGFkZGluZy10b3A6MTNweH0uc3R5bGUtcmVjb21tZW5kYXRpb25zLWluLXBvcnRyYWl0IC52aWRlby10aHVtYm5haWwtY29udGFpbmVyLWxhcmdlLnJvdW5kZWQtdGh1bWJuYWlse2JvcmRlci1yYWRpdXM6MTJweDttYXJnaW46MDtwYWRkaW5nLXRvcDowfX1AbWVkaWEgKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7LnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2V7bWFyZ2luOjA7cGFkZGluZy10b3A6MH19LnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2UudGh1bWJuYWlsLWNvdmVyLXJvdW5kZWR7Ym9yZGVyLXJhZGl1czoxMnB4fUBtZWRpYSAobWluLXdpZHRoOjU1MHB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KSwobWluLXdpZHRoOjkzMXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7LnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2Uucm91bmRlZC10aHVtYm5haWx7Ym9yZGVyLXJhZGl1czoxMnB4fX1AbWVkaWEgKG1pbi1hc3BlY3QtcmF0aW86MTMvOSkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtaW4td2lkdGg6OTMxcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKXsudmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1sYXJnZS5yb3VuZGVkLXRodW1ibmFpbHtib3JkZXItcmFkaXVzOjEycHh9fUBtZWRpYSAobWF4LXdpZHRoOjkzMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7LnN0eWxlLXJlY29tbWVuZGF0aW9ucy1pbi1wb3J0cmFpdCAudmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1sYXJnZS5yb3VuZGVkLXRodW1ibmFpbCxwbGF5ZXItZnVsbHNjcmVlbi1jb250cm9scyAudmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1sYXJnZS5yb3VuZGVkLXRodW1ibmFpbHtib3JkZXItcmFkaXVzOjEycHh9fS52aWRlby10aHVtYm5haWwtZmlsbC1wYXJlbnR7bWFyZ2luOjA7cGFkZGluZy10b3A6MDtib3JkZXItcmFkaXVzOjEycHh9Lnl0U3BlY0RpYWxvZ0xheW91dEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2JhY2tncm91bmQtY29sb3I6I2ZmZn0ueXRTcGVjRGlhbG9nTGF5b3V0Q29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtvdmVyZmxvdzpoaWRkZW47cGFkZGluZy1ib3R0b206MjRweH0ueXRTcGVjRGlhbG9nTGF5b3V0VG9wUGFkZGluZ3twYWRkaW5nLXRvcDoyNHB4fS55dFNwZWNEaWFsb2dMYXlvdXRJY29ue21hcmdpbjoyNHB4IDI0cHggMH0ueXRTcGVjRGlhbG9nTGF5b3V0SWNvbkFib3ZlTWVkaWF7bWFyZ2luLWJvdHRvbToyNHB4fS55dFNwZWNEaWFsb2dMYXlvdXRJY29uQ2VudGVyQWxpZ257YWxpZ24tc2VsZjpjZW50ZXJ9Lnl0U3BlY0RpYWxvZ0xheW91dEFzc2V0e3dpZHRoOjEwMCU7bWluLWhlaWdodDowO2ZsZXgtc2hyaW5rOjQ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7b3ZlcmZsb3c6aGlkZGVufS55dFNwZWNEaWFsb2dMYXlvdXRBc3NldEl0ZW17d2lkdGg6MTAwJTtmbGV4LXNocmluazowO29iamVjdC1maXQ6Y292ZXJ9Lnl0U3BlY0RpYWxvZ0xheW91dERpYWxvZ0hlYWRlckNvbnRhaW5lcntwYWRkaW5nOjI0cHggMjRweCA4cHh9Lnl0U3BlY0RpYWxvZ0xheW91dERpYWxvZ0hlYWRlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2ZsZXgtc2hyaW5rOjB9Lnl0U3BlY0RpYWxvZ0xheW91dERpYWxvZ0hlYWRlckFib3ZlQXNzZXR7cGFkZGluZy1ib3R0b206MjRweH0ueXRTcGVjRGlhbG9nTGF5b3V0VGl0bGV7Y29sb3I6IzAzMDMwMzstbW96LWJveC1mbGV4OjE7ZmxleDoxO21hcmdpbi1ib3R0b206MDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToycmVtO2xpbmUtaGVpZ2h0OjIuOHJlbTtmb250LXdlaWdodDo3MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo1LjZyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0U3BlY0RpYWxvZ0xheW91dFRpdGxley13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0U3BlY0RpYWxvZ0xheW91dFRpdGxle21heC1oZWlnaHQ6NS42cmVtfS55dFNwZWNEaWFsb2dMYXlvdXRMZWFkaW5nQWN0aW9uSGVhZGVye2NvbG9yOiMwMzAzMDM7bWFyZ2luLXJpZ2h0OjEycHh9Lnl0U3BlY0RpYWxvZ0xheW91dFRyYWlsaW5nQWN0aW9uSGVhZGVye2NvbG9yOiMwMzAzMDM7bWFyZ2luLWxlZnQ6YXV0b30ueXRTcGVjRGlhbG9nTGF5b3V0Q29udGVudHtjb2xvcjojMDMwMzAzO292ZXJmbG93LXk6YXV0b30ueXRTcGVjRGlhbG9nTGF5b3V0Q29udGVudElubmVye292ZXJmbG93OnZpc2libGU7cGFkZGluZzowIDI0cHh9Lnl0U3BlY0RpYWxvZ0xheW91dEZvb3RlckNvbnRhaW5lcntwYWRkaW5nLXRvcDoxNnB4O3BhZGRpbmctbGVmdDoyNHB4O3BhZGRpbmctcmlnaHQ6MjRweH0ueXRTcGVjRGlhbG9nTGF5b3V0Rm9vdGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1mbG93OnJvdyB3cmFwLXJldmVyc2U7ZmxleC1zaHJpbms6MDttYXJnaW46LThweCAwIDAgLThweH0ueXRTcGVjRGlhbG9nTGF5b3V0RGlhbG9nQnV0dG9uc0lubGluZUVuZHstbW96LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZW5kfS55dFNwZWNEaWFsb2dMYXlvdXRCdXR0b257ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7cGFkZGluZzo4cHggMCAwIDhweH0ueXRTcGVjRGlhbG9nTGF5b3V0RGlhbG9nQnV0dG9uc0lubGluZVN0cmV0Y2hlZHstbW96LWJveC1mbGV4OjE7ZmxleDoxfS55dFNwZWNEaWFsb2dMYXlvdXRDZW50ZXJBbGlnbiAueXRTcGVjRGlhbG9nTGF5b3V0Q29udGVudCwueXRTcGVjRGlhbG9nTGF5b3V0Q2VudGVyQWxpZ24gLnl0U3BlY0RpYWxvZ0xheW91dFRpdGxle3RleHQtYWxpZ246Y2VudGVyfS55dFNwZWNEaWFsb2dMYXlvdXREaWFsb2dCdXR0b25zU3RhY2tlZHstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59QG1lZGlhIChtYXgtd2lkdGg6MzMwcHgpey55dFNwZWNEaWFsb2dMYXlvdXRSZXNwb25zaXZle21pbi13aWR0aDpjYWxjKDEwMHZ3IC0gOTZweCk7bWF4LXdpZHRoOjEwMCU7bWF4LWhlaWdodDoxMDB2aH19QG1lZGlhIChtaW4td2lkdGg6MzMxcHgpIGFuZCAobWF4LXdpZHRoOjUyN3B4KXsueXRTcGVjRGlhbG9nTGF5b3V0UmVzcG9uc2l2ZXttaW4td2lkdGg6Y2FsYygxMDB2dyAtIDk2cHgpO21pbi13aWR0aDptaW4oMzIwcHgsMTAwdncgLSA5NnB4KTttYXgtd2lkdGg6Y2FsYygxMDB2dyAtIDk2cHgpO21heC13aWR0aDptaW4oNDAwcHgsMTAwdncgLSA5NnB4KTttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSA5NnB4KX19QG1lZGlhIChtaW4td2lkdGg6NTI4cHgpey55dFNwZWNEaWFsb2dMYXlvdXRSZXNwb25zaXZle21pbi13aWR0aDozMjBweDttYXgtd2lkdGg6Y2FsYygxMDB2dyAtIDk2cHgpO21heC13aWR0aDptaW4oNTYwcHgsMTAwdncgLSA5NnB4KTttYXgtaGVpZ2h0OmNhbGMoMTAwdmggLSA5NnB4KTttYXgtaGVpZ2h0Om1pbig1NjBweCwxMDB2aCAtIDk2cHgpfX0ueXRTcGVjRGlhbG9nTGF5b3V0RnVsbHNjcmVlbntoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlfS55dFNwZWNEaWFsb2dMYXlvdXRGdWxsc2NyZWVuIC55dFNwZWNEaWFsb2dMYXlvdXRDb250YWluZXIsLnl0U3BlY0RpYWxvZ0xheW91dEZ1bGxzY3JlZW4gLnl0U3BlY0RpYWxvZ0xheW91dENvbnRlbnR7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlfS55dFNwZWNEaWFsb2dMYXlvdXRGdWxsc2NyZWVuIC55dFNwZWNEaWFsb2dMYXlvdXRDb250ZW50SW5uZXJ7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO3BhZGRpbmc6MH1AbWVkaWEgKG1pbi13aWR0aDo1MjhweCl7Lnl0U3BlY0RpYWxvZ0xheW91dEV4dGVuZGVkTWF4SGVpZ2h0e21heC1oZWlnaHQ6Y2FsYygxMDB2aCAtIDk2cHgpfX0ueXRTcGVjRGlhbG9nTGF5b3V0QXNzZXRJbnNldCAueXRTcGVjRGlhbG9nTGF5b3V0QXNzZXR7d2lkdGg6YXV0bztwYWRkaW5nOjAgMjRweDtib3JkZXItcmFkaXVzOjEycHh9Lnl0U3BlY0RpYWxvZ0xheW91dEFzc2V0SW5zZXQgLnl0U3BlY0RpYWxvZ0xheW91dEFzc2V0SXRlbXtib3JkZXItcmFkaXVzOjEycHh9Lnl0d1Bpdm90QnV0dG9uVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2N1cnNvcjpwb2ludGVyfS55dHdQaXZvdEJ1dHRvblZpZXdNb2RlbEhvc3RJbWFnZXtib3JkZXItcmFkaXVzOjZweDt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O2Rpc3BsYXk6YmxvY2t9Lnl0d1Bpdm90QnV0dG9uVmlld01vZGVsSG9zdEljb257Ym9yZGVyOjFweCBzb2xpZCAjZmZmO2JvcmRlci1yYWRpdXM6NnB4O3BhZGRpbmc6NnB4fS55dHdQaXZvdEJ1dHRvblZpZXdNb2RlbEhvc3RbZGF0YS1iYWNrZ3JvdW5kLWNvbG9yPVRIRU1FX0FUVFJJQlVURV9PVkVSTEFZX0JBQ0tHUk9VTkRfTUVESVVNXSAueXR3UGl2b3RCdXR0b25WaWV3TW9kZWxIb3N0SWNvbntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC42KX0ueXR3UmVlbEFjdGlvbkJhclZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS55dHdSZWVsQWN0aW9uQmFyVmlld01vZGVsSG9zdD4qe21hcmdpbi10b3A6MTZweH0ueXR3UmVlbEFjdGlvbkJhclZpZXdNb2RlbEhvc3Q+dG9nZ2xlLWJ1dHRvbi12aWV3LW1vZGVse21hcmdpbi10b3A6MH0ueXR3UmVlbEFjdGlvbkJhclZpZXdNb2RlbEhvc3RNb2JpbGV7d2lkdGg6NTZweDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dHdSZWVsQWN0aW9uQmFyVmlld01vZGVsSG9zdE1vYmlsZSAueXRTcGVjQnV0dG9uU2hhcGVXaXRoTGFiZWxMYWJlbHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxNnB4O21hcmdpbjowfS55dHdSZWVsQWN0aW9uQmFyVmlld01vZGVsSG9zdE1vYmlsZSAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SG9zdDpmb2N1c3tiYWNrZ3JvdW5kOnVuc2V0fS55dHdSZWVsQWN0aW9uQmFyVmlld01vZGVsSG9zdE1vYmlsZSBidXR0b246bm90KFthcmlhLXByZXNzZWQ9dHJ1ZV0pIGMzLWljb257ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAycHggcmdiYSgwLDAsMCwwLjMpKX0ueXR3UmVlbEFjdGlvbkJhclZpZXdNb2RlbEhvc3RNb2JpbGVBY3Rpb25CdXR0b257cGFkZGluZy10b3A6NHB4O3BhZGRpbmctYm90dG9tOjhweDttYXJnaW46MH0ueXR3UmVlbEFjdGlvbkJhclZpZXdNb2RlbEhvc3REZXNrdG9wey1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0d1JlZWxBY3Rpb25CYXJWaWV3TW9kZWxIb3N0RGVza3RvcCAueXRTcGVjQnV0dG9uU2hhcGVXaXRoTGFiZWxMYWJlbHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXR3UmVlbEFjdGlvbkJhclZpZXdNb2RlbEhvc3REZXNrdG9wQWN0aW9uQnV0dG9ue3BhZGRpbmctdG9wOjA7cGFkZGluZy1ib3R0b206OHB4O21hcmdpbjowfUBtZWRpYSAobWF4LWhlaWdodDo0MTFweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey55dHdSZWVsQWN0aW9uQmFyVmlld01vZGVsSG9zdD4qe21hcmdpbi10b3A6MH0ueXR3UmVlbEFjdGlvbkJhclZpZXdNb2RlbEhvc3QgLnl0U3BlY0J1dHRvblNoYXBlV2l0aExhYmVsTGFiZWx7ZGlzcGxheTpub25lfX0ueXRSZWVsTWV0YXBhbmVsVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDttYXgtd2lkdGg6NDgwcHh9Lnl0UmVlbE1ldGFwYW5lbFZpZXdNb2RlbE1ldGFwYW5lbEl0ZW06bm90KDpmaXJzdC1jaGlsZCl7cGFkZGluZy10b3A6NHB4O21heC13aWR0aDoxMDAlfS55dFJlZWxNZXRhcGFuZWxWaWV3TW9kZWxNZXRhcGFuZWxJdGVtOm5vdCg6bGFzdC1jaGlsZCl7cGFkZGluZy1ib3R0b206NHB4O21heC13aWR0aDoxMDAlfS55dEFuaW1hdGVkQWN0aW9uSG9zdHtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlfS55dEFuaW1hdGVkQWN0aW9uTG90dGlle3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtwb2ludGVyLWV2ZW50czpub25lfS55dEFuaW1hdGVkQWN0aW9uQmFja2dyb3VuZHt3aWR0aDoxMDAlfS55dEFuaW1hdGVkQWN0aW9uQmFja2dyb3VuZENvbnRhaW5lcntvdmVyZmxvdzpoaWRkZW47Ym9yZGVyLXJhZGl1czoxOHB4fS55dEFuaW1hdGVkQWN0aW9uQ29udGVudFdpdGhCYWNrZ3JvdW5ke3Bvc2l0aW9uOnJlbGF0aXZlfS5wbGF5ZXItc2V0dGluZ3MtaGVhZGVye21hcmdpbi1ib3R0b206MjBweH0ucGxheWVyLWNhcHRpb24tc2V0dGluZ3MsLnBsYXllci1xdWFsaXR5LXNldHRpbmdzLC5wbGF5ZXItc3BlZWQtc2V0dGluZ3N7d2lkdGg6MTAwJTttYXJnaW46NHB4IDAgMTJweH0uY29weURlYnVnSW5mb1BsYXllckRlYnVnSW5mb3tiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O3BhZGRpbmctYm90dG9tOjRweDtvdXRsaW5lOm5vbmU7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6MDttYXJnaW4tYm90dG9tOjFweDtmb250OmluaGVyaXQ7Y29sb3I6IzAzMDMwMzstbW96LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmU7bWluLWhlaWdodDo4LjRyZW07d2lkdGg6MTAwJTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKTtwYWRkaW5nOjhweH0uY29weURlYnVnSW5mb1BsYXllckRlYnVnSW5mbzo6LW1vei1wbGFjZWhvbGRlcntjb2xvcjojNjA2MDYwO29wYWNpdHk6MX0uY29weURlYnVnSW5mb1BsYXllckRlYnVnSW5mbzo6cGxhY2Vob2xkZXJ7Y29sb3I6IzYwNjA2MDtvcGFjaXR5OjF9LmNvcHlEZWJ1Z0luZm9QbGF5ZXJEZWJ1Z0luZm97aGVpZ2h0OjQwdmg7ZGlyZWN0aW9uOmx0cn0uc3RhYmxlVm9sdW1lVG9nZ2xlSG9zdHtkaXNwbGF5OmJsb2NrfS55dFBsYXllckNvbnRyb2xzQ29udGFpbmVySG9zdHstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6cmdiYSgwLDAsMCwwKTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmV9Lnl0UGxheWVyQ29udHJvbHNDb250YWluZXJSZW5kZXJlZHtwb3NpdGlvbjpmaXhlZDtpbnNldDowO3BhZGRpbmctYm90dG9tOjB9Lnl0U2hvcnRzRW1iZWRzSG9zdHtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgwZGVnLHJnYmEoMCwwLDAsLjQpIDAscmdiYSgwLDAsMCwwKSAxNjBweCksbGluZWFyLWdyYWRpZW50KDE4MGRlZyxyZ2JhKDAsMCwwLC40KSAwLHJnYmEoMCwwLDAsMCkgOTZweCl9Lnl0U2hvcnRzRW1iZWRzUmVlbFBsYXllck92ZXJsYXlSZW5kZXJlciAucmVlbC1wbGF5ZXItb3ZlcmxheS1hY3Rpb25zLC55dFNob3J0c0VtYmVkc1JlZWxQbGF5ZXJPdmVybGF5UmVuZGVyZXIgLnJlZWwtcGxheWVyLW92ZXJsYXktbWV0YWRhdGEsLnl0U2hvcnRzRW1iZWRzUmVlbFBsYXllck92ZXJsYXlSZW5kZXJlciAucmVlbC1wbGF5ZXItb3ZlcmxheS10b3AtYmFye3otaW5kZXg6Mn0ueXRTaG9ydHNFbWJlZHNUb3BiYXJDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO3Bvc2l0aW9uOmZpeGVkO3otaW5kZXg6Mjt3aWR0aDoxMDAlfS55dFNob3J0c0VtYmVkc1ZvbHVtZUNvbnRyb2xze3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjQ4cHh9Lnl0bUN1ZWRPdmVybGF5SG9zdHtkaXNwbGF5OmJsb2NrO2N1cnNvcjpwb2ludGVyO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO3otaW5kZXg6MTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuN3M7dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5fS55dG1DdWVkT3ZlcmxheUhpZGRlbiwueXRtQ3VlZE92ZXJsYXlIb3N0LmhpZGRlbnt2aXNpYmlsaXR5OmhpZGRlbjtvcGFjaXR5OjB9Lnl0bUN1ZWRPdmVybGF5UGxheUJ1dHRvbntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO2xlZnQ6NTAlO21hcmdpbi1sZWZ0Oi0zNnB4O21hcmdpbi10b3A6LTM2cHg7d2lkdGg6NzJweDtoZWlnaHQ6NzJweDtwYWRkaW5nOjA7Ym9yZGVyOjA7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjdXJzb3I6cG9pbnRlcn0ueXRtQ3VlZE92ZXJsYXlQbGF5QnV0dG9uLnNob3J0cywueXRtQ3VlZE92ZXJsYXlTaG9ydHN7bWFyZ2luLWxlZnQ6LTUwcHg7bWFyZ2luLXRvcDotNTBweDt3aWR0aDoxMDBweDtoZWlnaHQ6MTAwcHh9Lnl0bUN1ZWRPdmVybGF5UGxheUJ1dHRvbkljb257d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtjb2xvcjojZjAzfUBtZWRpYSAoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dG1DdWVkT3ZlcmxheVBsYXlCdXR0b25JY29ue2NvbG9yOkJ1dHRvblRleHR9Lnl0bUN1ZWRPdmVybGF5UGxheUJ1dHRvbkljb24gcGF0aDpmaXJzdC1jaGlsZHtmaWxsOkJ1dHRvblRleHR9Lnl0bUN1ZWRPdmVybGF5UGxheUJ1dHRvbkljb24gLmxvZ28tYXJyb3csLnl0bUN1ZWRPdmVybGF5UGxheUJ1dHRvbkljb24gcGF0aDpudGgtY2hpbGQoMil7ZmlsbDpDYW52YXN9fS55dG1DdWVkT3ZlcmxheUdyYWRpZW50e3dpZHRoOjEwMCU7cG9zaXRpb246YWJzb2x1dGU7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQocmdiYSgwLDAsMCwuOCkscmdiYSgwLDAsMCwuNikscmdiYSgwLDAsMCwwKSk7aGVpZ2h0OjdyZW19Lnl0Q2hhcHRlcmVkUHJvZ3Jlc3NCYXJIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCU7aGVpZ2h0OjNweH0ueXRDaGFwdGVyZWRQcm9ncmVzc0JhckNoYXB0ZXJlZFBsYXllckJhckNoYXB0ZXJ7aGVpZ2h0OjNweDttYXJnaW46MCAxcHg7cG9zaXRpb246cmVsYXRpdmV9Lnl0Q2hhcHRlcmVkUHJvZ3Jlc3NCYXJDaGFwdGVyZWRQbGF5ZXJCYXJDaGFwdGVyU2VlbntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZjAzIDgwJSwjZmYyNzkxKX0ueXRDaGFwdGVyZWRQcm9ncmVzc0JhckNoYXB0ZXJlZFBsYXllckJhckNoYXB0ZXJJc1NjcnViYmluZ3ttYXJnaW46MCAycHh9Lnl0Q2hhcHRlcmVkUHJvZ3Jlc3NCYXJDaGFwdGVyZWRQbGF5ZXJCYXJDaGFwdGVyOmZpcnN0LW9mLXR5cGV7bWFyZ2luLWxlZnQ6MH0ueXRDaGFwdGVyZWRQcm9ncmVzc0JhckNoYXB0ZXJlZFBsYXllckJhckNoYXB0ZXI6bGFzdC1vZi10eXBle21hcmdpbi1yaWdodDowfS55dENoYXB0ZXJlZFByb2dyZXNzQmFyQ2hhcHRlcmVkUGxheWVyQmFyRmlsbHtoZWlnaHQ6M3B4O3Bvc2l0aW9uOmFic29sdXRlO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLCNmMDMgODAlLCNmZjI3OTEpfS55dENoYXB0ZXJlZFByb2dyZXNzQmFyQ2hhcHRlcmVkUGxheWVyQmFyTG9hZGVke2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMyk7aGVpZ2h0OjNweDtwb3NpdGlvbjphYnNvbHV0ZX0ueXRDaGFwdGVyZWRQcm9ncmVzc0JhckhvdmVyZWRNYWNyb01hcmtlcnt0cmFuc2Zvcm06c2NhbGVZKDIpO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyfS55dEZvY3VzZWRDaGFwdGVyUHJvZ3Jlc3NCYXJMaW5lSG9zdHtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCV9Lnl0Rm9jdXNlZENoYXB0ZXJQcm9ncmVzc0JhckxpbmVQcm9ncmVzc0JhckxpbmV7cG9zaXRpb246cmVsYXRpdmU7aGVpZ2h0OjNweDt3aWR0aDoxMDAlfS55dEZvY3VzZWRDaGFwdGVyUHJvZ3Jlc3NCYXJMaW5lUHJvZ3Jlc3NCYXJMaW5lUm91bmRlZHtib3JkZXItcmFkaXVzOjEuNXB4O292ZXJmbG93OmhpZGRlbn0ueXRGb2N1c2VkQ2hhcHRlclByb2dyZXNzQmFyTGluZVByb2dyZXNzQmFyTGluZUJvdHRvbUluc2V0e2hlaWdodDo1cHg7Ym9yZGVyLXJhZGl1czoyLjVweDtvdmVyZmxvdzpoaWRkZW59Lnl0Rm9jdXNlZENoYXB0ZXJQcm9ncmVzc0JhckxpbmVQcm9ncmVzc0JhckJhY2tncm91bmR7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7YmFja2dyb3VuZC1jb2xvcjojZmZmO29wYWNpdHk6LjY7d2lkdGg6MTAwJX0ueXRGb2N1c2VkQ2hhcHRlclByb2dyZXNzQmFyTGluZVByb2dyZXNzQmFyUGxheWVke3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDowO2JvdHRvbTowO2hlaWdodDoxMDAlO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLCNmMDMgODAlLCNmZjI3OTEpfS55dEhlYXRTZWVrZXJIb3N0e3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO2ZpbGw6cmdiYSgyNTUsMjU1LDI1NSwuNCl9Lnl0SGVhdFNlZWtlckhpZ2hDb250cmFzdHtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudChyZ2JhKDAsMCwwLDApLDkwJSxyZ2JhKDAsMCwwLC42KSk7ZmlsbDpyZ2JhKDI1NSwyNTUsMjU1LC41KX0ueXRQbGF5ZXJQcm9ncmVzc0Jhckhvc3R7cG9zaXRpb246YWJzb2x1dGU7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtoZWlnaHQ6MTAwJTtkaXJlY3Rpb246bHRyfS55dFBsYXllclByb2dyZXNzQmFySG9zdFJlYWRPbmx5e3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0UGxheWVyUHJvZ3Jlc3NCYXJIb3N0SGlkZGVue29wYWNpdHk6MH0ueXRQbGF5ZXJQcm9ncmVzc0Jhckhvc3RMb3dlclBsYXllcntib3R0b206MDtsZWZ0OjMwcHg7cmlnaHQ6MzBweDtoZWlnaHQ6NDRweH0ueXRQbGF5ZXJQcm9ncmVzc0Jhckhvc3RCb3R0b21FZGdle2hlaWdodDoyOHB4O2xlZnQ6MDtyaWdodDowO2JvdHRvbTotN3B4fS55dFBsYXllclByb2dyZXNzQmFySG9zdEJvdHRvbUluc2V0e2hlaWdodDoyOHB4O2JvdHRvbTowO2xlZnQ6MDtyaWdodDowfS55dFBsYXllclByb2dyZXNzQmFySG9zdEN1c3RvbXtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRQbGF5ZXJQcm9ncmVzc0JhckJhY2tncm91bmR7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtwb2ludGVyLWV2ZW50czpub25lO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHJnYmEoMCwwLDAsMCkscmdiYSgwLDAsMCwuNSkpO29wYWNpdHk6MTt0cmFuc2l0aW9uOm9wYWNpdHkgLjFzIGN1YmljLWJlemllciguMiwwLC42LDEpfS55dFBsYXllclByb2dyZXNzQmFyQmFja2dyb3VuZEhpZGV7b3BhY2l0eTowfS55dFBsYXllclByb2dyZXNzQmFyRHJhZ0NvbnRhaW5lcnt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXRQbGF5ZXJQcm9ncmVzc0JhckRyYWdDb250YWluZXJCb3R0b21FZGdle2hlaWdodDowO3BhZGRpbmc6MTkuNXB4IDAgOC41cHh9Lnl0UGxheWVyUHJvZ3Jlc3NCYXJIZWF0c2Vla2VyQ29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDtyaWdodDowO2JvdHRvbToxLjVweH0ueXRQbGF5ZXJQcm9ncmVzc0JhckhlYXRzZWVrZXJDb250YWluZXJJbnNldHtib3R0b206MTQuNXB4fS55dFBsYXllclByb2dyZXNzQmFyUHJvZ3Jlc3NCYXJ7d2lkdGg6MTAwJTtvdmVyZmxvdzp2aXNpYmxlO3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0UGxheWVyUHJvZ3Jlc3NCYXJQcm9ncmVzc0Jhckluc2V0e3BhZGRpbmc6MTZweCAwIDEycHg7d2lkdGg6Y2FsYygxMDAlIC0gMjRweCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCk7dHJhbnNpdGlvbjp3aWR0aCAuMXMgY3ViaWMtYmV6aWVyKC4wNSwwLDAsMSksdHJhbnNmb3JtIC4xcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRQbGF5ZXJQcm9ncmVzc0JhclByb2dyZXNzQmFySW5zZXRNaW5pbWl6ZWR7cGFkZGluZy10b3A6MDtwYWRkaW5nLWJvdHRvbTowO3dpZHRoOjEwMCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMTJweCl9Lnl0UHJvZ3Jlc3NCYXJMaW5lSG9zdHtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCV9Lnl0UHJvZ3Jlc3NCYXJMaW5lUHJvZ3Jlc3NCYXJMaW5le3Bvc2l0aW9uOnJlbGF0aXZlO2hlaWdodDozcHg7d2lkdGg6MTAwJX0ueXRQcm9ncmVzc0JhckxpbmVQcm9ncmVzc0JhckxpbmVSb3VuZGVke2JvcmRlci1yYWRpdXM6MS41cHg7b3ZlcmZsb3c6aGlkZGVufS55dFByb2dyZXNzQmFyTGluZVByb2dyZXNzQmFyTGluZUJvdHRvbUluc2V0e2hlaWdodDo1cHg7Ym9yZGVyLXJhZGl1czoyLjVweDtvdmVyZmxvdzpoaWRkZW59Lnl0UHJvZ3Jlc3NCYXJMaW5lUHJvZ3Jlc3NCYXJCYWNrZ3JvdW5ke3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2JhY2tncm91bmQtY29sb3I6I2ZmZjtvcGFjaXR5Oi4zO3dpZHRoOjEwMCV9Lnl0UHJvZ3Jlc3NCYXJMaW5lUHJvZ3Jlc3NCYXJMb2FkZWR7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7YmFja2dyb3VuZC1jb2xvcjojZmZmO29wYWNpdHk6LjZ9Lnl0UHJvZ3Jlc3NCYXJMaW5lUHJvZ3Jlc3NCYXJIb3ZlcmVke3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2JhY2tncm91bmQtY29sb3I6I2ZmZjtvcGFjaXR5Oi43fS55dFByb2dyZXNzQmFyTGluZVByb2dyZXNzQmFyUGxheWVke3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2ZvcmNlZC1jb2xvci1hZGp1c3Q6bm9uZTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZjAzIDgwJSwjZmYyNzkxKX0ueXRQcm9ncmVzc0JhclBsYXloZWFkSG9zdHtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlfS55dFByb2dyZXNzQmFyUGxheWhlYWRQcm9ncmVzc0JhclBsYXloZWFkRG90e2hlaWdodDoxMnB4O3dpZHRoOjEycHg7Ym9yZGVyLXJhZGl1czo1MCU7Zm9yY2VkLWNvbG9yLWFkanVzdDpub25lO2JhY2tncm91bmQtY29sb3I6I2YwMzt0cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjFzIGVhc2V9Lnl0UHJvZ3Jlc3NCYXJQbGF5aGVhZFByb2dyZXNzQmFyUGxheWhlYWREb3RMYXJnZXtoZWlnaHQ6MTZweDt3aWR0aDoxNnB4fS55dFByb2dyZXNzQmFyUGxheWhlYWRQcm9ncmVzc0JhclBsYXloZWFkRG90SGlkZXt0cmFuc2Zvcm06c2NhbGUoMCl9Lnl0UHJvZ3Jlc3NCYXJQbGF5aGVhZFByb2dyZXNzQmFyUGxheWhlYWRDdXN0b217aGVpZ2h0OjIwcHg7d2lkdGg6MjBweDtwb2ludGVyLWV2ZW50czpub25lfS55dFByb2dyZXNzQmFyUGxheWhlYWRQcm9ncmVzc0JhclBsYXloZWFkQ3VzdG9tTGFyZ2V7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRQcm9ncmVzc0JhclBsYXloZWFkUHJvZ3Jlc3NCYXJQbGF5aGVhZEN1c3RvbUhpZGV7dHJhbnNmb3JtOnNjYWxlKDApfS55dFBsYXllclN0b3J5Ym9hcmRIb3N0e3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo4MHB4O3RyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0UGxheWVyU3Rvcnlib2FyZEhvc3RCaWdib2FyZHt3aWR0aDoxMDAlO2xlZnQ6NTAlfS55dFBsYXllclN0b3J5Ym9hcmRIb3N0TXdlYlNob3J0c3ttYXJnaW4tYm90dG9tOjQ4cHh9Lnl0UGxheWVyU3Rvcnlib2FyZEhvc3RJbmxpbmVQbGF5ZXJ7Ym90dG9tOmNhbGMoNTZweCp2YXIoLS1zdG9yeWJvYXJkLXNjYWxlLCAxKSl9Lnl0UGxheWVyU3Rvcnlib2FyZEhvc3REZXNrdG9wU2hvcnRze21hcmdpbi1ib3R0b206MTZweH0ueXRQbGF5ZXJTdG9yeWJvYXJkSG9zdElzRHJhZ2dpbmd7bWFyZ2luLWJvdHRvbTo4MHB4fS55dFBsYXllclN0b3J5Ym9hcmRIb3N0RmFkZUlue2FuaW1hdGlvbjpmYWRlLWluIC4xcyBjdWJpYy1iZXppZXIoLjIsMCwuNiwxKX0ueXRQbGF5ZXJTdG9yeWJvYXJkU3Rvcnlib2FyZEltYWdlV3JhcHBlcntiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym9yZGVyOjJweCBzb2xpZCB3aGl0ZTtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0UGxheWVyU3Rvcnlib2FyZEJpZ2JvYXJkV3JhcHBlcntwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2JhY2tncm91bmQ6IzAwMH0ueXRQbGF5ZXJTdG9yeWJvYXJkQmlnYm9hcmRJbWFnZVdyYXBwZXJ7dG9wOjUwJTtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7cG9zaXRpb246YWJzb2x1dGU7b3ZlcmZsb3c6aGlkZGVufS55dFBsYXllclN0b3J5Ym9hcmRUaW1lc3RhbXB7Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOiNmZmY7dGV4dC1zaGFkb3c6MCAwIDRweCByZ2JhKDAsMCwwLC43NSl9Lnl0UGxheWVyU3Rvcnlib2FyZFRpbWVzdGFtcFNob3J0c3tmb250LWZhbWlseTpZb3VUdWJlIFNhbnMsUm9ib3RvLHNhbnMtc2VyaWY7Zm9udC1zaXplOjIuOHJlbTtsaW5lLWhlaWdodDozLjhyZW07Zm9udC13ZWlnaHQ6NzAwfUBtZWRpYSAobWF4LXdpZHRoOjUyNy45cHgpey55dFBsYXllclN0b3J5Ym9hcmRUaW1lc3RhbXBTaG9ydHN7Zm9udC1mYW1pbHk6WW91VHViZSBTYW5zLFJvYm90byxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyLjRyZW07bGluZS1oZWlnaHQ6My4ycmVtO2ZvbnQtd2VpZ2h0OjcwMH19Lnl0UGxheWVyU3Rvcnlib2FyZFRpbWVzdGFtcFNob3J0c3twYWRkaW5nLXRvcDo4cHh9Lnl0UGxheWVyU3Rvcnlib2FyZFRpbWVzdGFtcElzSG92ZXJpbmd7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo1MDA7Zm9udC1zaXplOmNhbGMoMS42cmVtKnZhcigtLXN0b3J5Ym9hcmQtc2NhbGUsIDEpKTtsaW5lLWhlaWdodDpjYWxjKDIuMnJlbSp2YXIoLS1zdG9yeWJvYXJkLXNjYWxlLCAxKSl9Lnl0UGxheWVyU3Rvcnlib2FyZE1ldGFkYXRhe3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTpjYWxjKC02cHgqdmFyKC0tc3Rvcnlib2FyZC1zY2FsZSwgMSkpO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwxMDAlKTtsZWZ0OjUwJTtjb2xvcjojZmZmO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3dpZHRoOjEwMCU7Zm9udC1zaXplOmNhbGMoMTJweCp2YXIoLS1zdG9yeWJvYXJkLXNjYWxlLCAxKSl9Lnl0UGxheWVyU3Rvcnlib2FyZE1ldGFkYXRhQmlnYm9hcmR7d2lkdGg6YXV0bztjb2xvcjojZmZmO21heC13aWR0aDoxMDAlO2JvdHRvbTo2cHg7Ym9yZGVyLXJhZGl1czoxNnB4O2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpO3BhZGRpbmc6OHB4IDE2cHg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1jb2x1bW4tZ2FwOjFyZW07Y29sdW1uLWdhcDoxcmVtO21pbi13aWR0aDowfS55dFBsYXllclN0b3J5Ym9hcmRUaXRsZXttYXgtd2lkdGg6MTAwJTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7bWFyZ2luLWJvdHRvbTo0cHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRQbGF5ZXJTdG9yeWJvYXJkVGl0bGVCaWdib2FyZHttYXJnaW4tYm90dG9tOjA7Zm9udC13ZWlnaHQ6NzAwfS55dFBsYXllclN0b3J5Ym9hcmRUaW1lZE1hcmtlckljb25XcmFwcGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4fS55dFBsYXllclN0b3J5Ym9hcmRUaW1lZE1hcmtlckljb257aGVpZ2h0OjE0cHg7d2lkdGg6MTRweDttYXJnaW4tcmlnaHQ6NHB4fS55dFBsYXllclN0b3J5Ym9hcmRTdG9yeWJvYXJkSW1hZ2V7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjphYnNvbHV0ZX1Aa2V5ZnJhbWVzIGZhZGUtaW57MCV7b3BhY2l0eTowfXRve29wYWNpdHk6MX19Lnl0TXdlYlNob3J0c1BsYXllckNvbnRyb2xzSG9zdHtwb3NpdGlvbjpyZWxhdGl2ZTttYXJnaW4tcmlnaHQ6MDttYXJnaW4tbGVmdDowO2JvdHRvbTowO2hlaWdodDozcHg7ZGlyZWN0aW9uOmx0cjt0cmFuc2l0aW9uLXByb3BlcnR5OmhlaWdodCxtYXJnaW4tbGVmdCxtYXJnaW4tcmlnaHQscGFkZGluZyx2aXNpYmlsaXR5O3RyYW5zaXRpb24tZHVyYXRpb246LjI1c30ueXRNd2ViU2hvcnRzUGxheWVyQ29udHJvbHNIb3N0SXNTY3J1YmJhYmxlTW9kZXttYXJnaW4tcmlnaHQ6MTZweDttYXJnaW4tbGVmdDoxNnB4O2hlaWdodDoxNnB4O3BhZGRpbmctYm90dG9tOjE2cHg7dHJhbnNpdGlvbi1kdXJhdGlvbjouNXN9Lnl0TXdlYlNob3J0c1BsYXllckNvbnRyb2xzSG9zdEhpZGVQcm9ncmVzc0Jhcnt2aXNpYmlsaXR5OmhpZGRlbjtoZWlnaHQ6MH0ueXRNd2ViU2hvcnRzUGxheWVyQ29udHJvbHNHZXN0dXJlT3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6MTAwdmg7d2lkdGg6MTAwdnc7aW5zZXQ6MDtwb2ludGVyLWV2ZW50czphdXRvfS55dHdBdXRvbmF2VG9vbHRpcEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3Bvc2l0aW9uOmFic29sdXRlO3RvcDoyNSU7d2lkdGg6MTAwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtjb2xvcjojZmZmfS55dHdQbGF5ZXJVc2VyRWR1VG9vbHRpcEhvc3R7ZGlzcGxheTpibG9ja30ueXR3UGxheWVyVXNlckVkdVRvb2x0aXBUb29sdGlwQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzowIDhweDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveH0ueXR3UGxheWVyVXNlckVkdVRvb2x0aXBUb29sdGlwV3JhcHBlcntwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDotbW96LW1heC1jb250ZW50O3dpZHRoOm1heC1jb250ZW50O21hcmdpbi10b3A6MTZweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3otaW5kZXg6Njtib3JkZXItcmFkaXVzOjE2cHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuNik7cGFkZGluZzo3cHggMTZweDttYXgtd2lkdGg6MTAwJTstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lnl0d1BsYXllclVzZXJFZHVUb29sdGlwVG9vbHRpcFdyYXBwZXI6ZW1wdHl7ZGlzcGxheTpub25lfS55dHdTcGVlZG1hc3RlclRvb2x0aXBIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4fS55dHdTcGVlZG1hc3RlclRvb2x0aXBIb3N0Om5vdCgueXR3U3BlZWRtYXN0ZXJUb29sdGlwS2lsbHN3aXRjaCl7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2NvbG9yOiNmZmY7cG9zaXRpb246cmVsYXRpdmU7bGVmdDowO3JpZ2h0OjB9Lnl0d1NwZWVkbWFzdGVyVG9vbHRpcExhYmVse3RleHQtYWxpZ246anVzdGlmeTtmb250LXdlaWdodDo1MDA7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MThweH1bZGlyPXJ0bF0gLnl0d1NwZWVkbWFzdGVyVG9vbHRpcExhYmVse2RpcmVjdGlvbjpydGx9Lnl0d1NwZWVkbWFzdGVyVG9vbHRpcEljb257bWFyZ2luLWxlZnQ6NHB4fS55dG1TaG9ydHNHZXN0dXJlT3ZlcmxheUNvbnRyb2xzR2VzdHVyZU92ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJTtsZWZ0OjA7dG9wOjA7Ym90dG9tOjA7cmlnaHQ6MDtwb2ludGVyLWV2ZW50czphdXRvfS55dG1TaG9ydHNHZXN0dXJlT3ZlcmxheUNvbnRyb2xzR2VzdHVyZUNvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO2xlZnQ6MDt0b3A6MDtib3R0b206MDtyaWdodDowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93fS55dG1TaG9ydHNHZXN0dXJlT3ZlcmxheUNvbnRyb2xzU3BlZWRtYXN0ZXJHZXN0dXJlQXJlYXtoZWlnaHQ6MTAwJTt3aWR0aDoyNSV9Lnl0bVNob3J0c0dlc3R1cmVPdmVybGF5Q29udHJvbHNNZW51R2VzdHVyZUFyZWF7aGVpZ2h0OjEwMCU7d2lkdGg6NTAlfS55dG1WaWRlb0NvdmVySG9zdHtkaXNwbGF5OmJsb2NrO2N1cnNvcjpwb2ludGVyO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO3otaW5kZXg6MTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuN3M7dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5fS55dG1WaWRlb0NvdmVySG9zdC5lbmRlZHt6LWluZGV4OjB9Lnl0bVZpZGVvQ292ZXJIb3N0LmhpZGRlbnt2aXNpYmlsaXR5OmhpZGRlbjtvcGFjaXR5OjB9Lnl0bVZpZGVvQ292ZXJUaHVtYm5haWx7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCU7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZTpjb3Zlcjt3aWR0aDoxMDAlO2hlaWdodDoxMDAlfS55dGRWb2x1bWVDb250cm9sc0hvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7bWF4LWhlaWdodDo0OHB4fS55dGRWb2x1bWVDb250cm9sc0Rpc2FibGVTbGlkZXJ7d2lkdGg6NDhweH0ueXRkVm9sdW1lQ29udHJvbHNWb2x1bWVDb250cm9sc0NvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1yYWRpdXM6NTBweDtwb3NpdGlvbjpyZWxhdGl2ZTstbW96LWJveC1mbGV4OjE7ZmxleDoxIDEgYXV0bzttYXgtd2lkdGg6MTY4cHh9Lnl0ZFZvbHVtZUNvbnRyb2xzVm9sdW1lQ29udHJvbHNDb250YWluZXJWZXJ0aWNhbHttYXgtd2lkdGg6NDhweDt3aWR0aDo0OHB4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O2dhcDo2MHB4O2hlaWdodDotbW96LWZpdC1jb250ZW50O2hlaWdodDpmaXQtY29udGVudDtwb2ludGVyLWV2ZW50czpub25lfS55dGRWb2x1bWVDb250cm9sc1ZvbHVtZUNvbnRyb2xzQ29udGFpbmVyRXhwYW5kZWR7cG9pbnRlci1ldmVudHM6YWxsfS55dGRWb2x1bWVDb250cm9sc011dGVJY29uQnV0dG9uQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3dpZHRoOjQ4cHg7aGVpZ2h0OjQ4cHg7Ym9yZGVyLXJhZGl1czo1MHB4fS55dGRWb2x1bWVDb250cm9sc011dGVJY29uQnV0dG9ue2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmVuZDt6LWluZGV4OjE7cG9zaXRpb246cmVsYXRpdmU7YmFja2dyb3VuZDpub25lO2JvcmRlcjpub25lO3BhZGRpbmc6MTJweDtjdXJzb3I6cG9pbnRlcjtwb2ludGVyLWV2ZW50czphbGw7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwwLjgpKX0ueXRkVm9sdW1lQ29udHJvbHNTbGlkZXJDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3dpZHRoOjA7b3BhY2l0eTowO292ZXJmbG93OmhpZGRlbjt2aXNpYmlsaXR5OmhpZGRlbjt0cmFuc2l0aW9uOnZpc2liaWxpdHkgLjEycyBsaW5lYXIsb3BhY2l0eSAuMTJzIGxpbmVhcix3aWR0aCAuMTJzIGxpbmVhcn0ueXRkVm9sdW1lQ29udHJvbHNTbGlkZXJDb250YWluZXJFeHBhbmRlZHt2aXNpYmlsaXR5OnZpc2libGU7d2lkdGg6MTAwJTtvcGFjaXR5OjE7dHJhbnNpdGlvbjp2aXNpYmlsaXR5IC4zcyBsaW5lYXIsb3BhY2l0eSAuM3MgbGluZWFyLHdpZHRoIC4zcyBsaW5lYXI7ei1pbmRleDoxfS55dGRWb2x1bWVDb250cm9sc1NsaWRlckNvbnRhaW5lcldpdGhTY3JpbXtwYWRkaW5nLXJpZ2h0OjEycHh9Lnl0ZFZvbHVtZUNvbnRyb2xzU2xpZGVyQ29udGFpbmVyVmVydGljYWx7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMyk7Ym9yZGVyLXJhZGl1czo1MHB4O2hlaWdodDo0OHB4O21pbi1oZWlnaHQ6NDhweDtwYWRkaW5nOjAgMTJweDttYXJnaW46MDt0cmFuc2l0aW9uOnZpc2liaWxpdHkgLjNzIGxpbmVhcixvcGFjaXR5IC4zcyBsaW5lYXIsd2lkdGggMHMgbGluZWFyIC4zcyxtYXJnaW4gLjNzIGxpbmVhcn0ueXRkVm9sdW1lQ29udHJvbHNTbGlkZXJDb250YWluZXJWZXJ0aWNhbERvd257dHJhbnNmb3JtOnJvdGF0ZSgyNzBkZWcpfS55dGRWb2x1bWVDb250cm9sc1NsaWRlckNvbnRhaW5lclZlcnRpY2FsRXhwYW5kZWR7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDQwLDQwLDQwLDAuNik7bWFyZ2luLXRvcDo4cHg7d2lkdGg6MTMzcHg7dHJhbnNpdGlvbjp2aXNpYmlsaXR5IC4zcyBsaW5lYXIsb3BhY2l0eSAuM3MgbGluZWFyLHdpZHRoIDBzIGxpbmVhcixtYXJnaW4gLjNzIGxpbmVhcn0ueXRkVm9sdW1lQ29udHJvbHNTbGlkZXJDb250YWluZXJEaXNhYmxlU2xpZGVye2Rpc3BsYXk6bm9uZX0ueXRkVm9sdW1lQ29udHJvbHNOYXRpdmVTbGlkZXJ7LS1ncmFkaWVudC1wZXJjZW50OjA7LW1vei1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lO2JvcmRlcjpub25lO21hcmdpbi1ib3R0b206MXB4O2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6YmxvY2s7bWluLXdpZHRoOjA7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O3BhZGRpbmc6OHB4IDA7Zm9yY2VkLWNvbG9yLWFkanVzdDpub25lfS55dGRWb2x1bWVDb250cm9sc05hdGl2ZVNsaWRlcjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2t7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsI2ZmZiAwLCNmZmYgdmFyKC0tZ3JhZGllbnQtcGVyY2VudCkscmdiYSgyNTUsMjU1LDI1NSwwLjMpIHZhcigtLWdyYWRpZW50LXBlcmNlbnQpLHJnYmEoMjU1LDI1NSwyNTUsMC4zKSAxMDAlKTtoZWlnaHQ6NHB4O2JvcmRlci1yYWRpdXM6MTJweH0ueXRkVm9sdW1lQ29udHJvbHNOYXRpdmVTbGlkZXI6Oi1tb3otcmFuZ2UtdHJhY2t7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsI2ZmZiAwLCNmZmYgdmFyKC0tZ3JhZGllbnQtcGVyY2VudCkscmdiYSgwLDAsMCwwLjEpIHZhcigtLWdyYWRpZW50LXBlcmNlbnQpLHJnYmEoMCwwLDAsMC4xKSAxMDAlKTtoZWlnaHQ6NHB4O2JvcmRlci1yYWRpdXM6MTJweH0ueXRkVm9sdW1lQ29udHJvbHNOYXRpdmVTbGlkZXI6Oi13ZWJraXQtc2xpZGVyLXRodW1iey13ZWJraXQtYXBwZWFyYW5jZTpub25lO3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7YmFja2dyb3VuZC1jb2xvcjp3aGl0ZTtib3JkZXItcmFkaXVzOjUwJTttYXJnaW4tdG9wOi02LjVweH0ueXRkVm9sdW1lQ29udHJvbHNOYXRpdmVTbGlkZXI6Oi1tb3otcmFuZ2UtdGh1bWJ7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO2JvcmRlci1yYWRpdXM6NTAlO2JvcmRlcjpub25lfS55dGRWb2x1bWVDb250cm9sc05hdGl2ZVNsaWRlcjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2t7aGVpZ2h0OjJweH0ueXRkVm9sdW1lQ29udHJvbHNOYXRpdmVTbGlkZXI6Oi1tb3otcmFuZ2UtdHJhY2t7aGVpZ2h0OjJweH0ueXRkVm9sdW1lQ29udHJvbHNNdXRlSWNvbntjb2xvcjp3aGl0ZX0ueXRkVm9sdW1lQ29udHJvbHNCYWNrZ3JvdW5kU2NyaW17aGVpZ2h0OjQ4cHg7d2lkdGg6NDhweDt6LWluZGV4OjA7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMyk7dHJhbnNpdGlvbjp3aWR0aCAuMjVzIGxpbmVhcjtwb3NpdGlvbjphYnNvbHV0ZTtib3JkZXItcmFkaXVzOjUwcHh9Lnl0ZFZvbHVtZUNvbnRyb2xzQmFja2dyb3VuZFNjcmltRXhwYW5kZWR7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4zKX0ueXRkVm9sdW1lQ29udHJvbHNCYWNrZ3JvdW5kU2NyaW1FeHBhbmRlZEhvdmVyU3RhdGU6YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDo0cHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOjI4cHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMSk7dHJhbnNpdGlvbi1wcm9wZXJ0eTp3aWR0aCxiYWNrZ3JvdW5kLWNvbG9yfS55dHdQbGF5ZXJGdWxsc2NyZWVuQWN0aW9uTWVudUhvc3R7ZGlzcGxheTpibG9ja30ueXR3UGxheWVyRnVsbHNjcmVlbkFjdGlvbk1lbnVDaXJjbGVCdXR0b25ze21hcmdpbi1yaWdodDo4cHh9Lnl0bUZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludFZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsQnV0dG9ue2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7aGVpZ2h0OjQ4cHg7Ym9yZGVyLXJhZGl1czoyNHB4O3BhZGRpbmctbGVmdDoxMnB4O3BhZGRpbmctcmlnaHQ6MTJweDt3aGl0ZS1zcGFjZTpub3dyYXA7Y29sb3I6I2ZmZjtib3JkZXI6bm9uZTtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDA7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMyk7dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfS55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxCdXR0b24gYnV0dG9ue3RleHQtc2hhZG93OjAgMCAycHggIzAwMH0ueXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsQnV0dG9uIHN2Z3tmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSl9Lnl0bUZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludFZpZXdNb2RlbFNpbmdsZVRodW1ibmFpbHtwYWRkaW5nOjZweCA4cHg7Ym9yZGVyLXJhZGl1czoxNnB4fS55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxIb3N0Om5vdCgueXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsVGl0bGVIaWRkZW4pIC55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxTaW5nbGVUaHVtYm5haWx7cGFkZGluZzo2cHggMTJweH0ueXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsVGh1bWJuYWlsU3RhY2t7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7bWFyZ2luLXRvcDotMXB4fS55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxIb3N0Om5vdCgueXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsVGl0bGVIaWRkZW4pIC55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxUaHVtYm5haWxTdGFja3ttYXJnaW4tbGVmdDo4cHh9Lnl0bUZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludFZpZXdNb2RlbEZhZGVkVGh1bWJuYWlse2hlaWdodDoycHg7bWFyZ2luLWJvdHRvbToxcHg7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czoycHg7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MnB4fS55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxTbWFsbEZhZGVkVGh1bWJuYWlse3dpZHRoOjEwcHg7YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMyl9Lnl0bUZ1bGxzY3JlZW5SZWxhdGVkVmlkZW9zRW50cnlQb2ludFZpZXdNb2RlbExhcmdlRmFkZWRUaHVtYm5haWx7d2lkdGg6MjBweDtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC43KX0ueXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsVGh1bWJuYWlsQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7d2lkdGg6MzZweDtoZWlnaHQ6MjBweDtib3JkZXI6MnB4IHNvbGlkIHdoaXRlO2JvcmRlci1yYWRpdXM6OHB4O292ZXJmbG93OmhpZGRlbn0ueXRtRnVsbHNjcmVlblJlbGF0ZWRWaWRlb3NFbnRyeVBvaW50Vmlld01vZGVsU2luZ2xlVGh1bWJuYWlsIC55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxUaHVtYm5haWxDb250YWluZXJ7d2lkdGg6NjRweDtoZWlnaHQ6MzZweDtib3JkZXI6bm9uZTtvdXRsaW5lOjJweCBzb2xpZCAjZmZmO2JvcmRlci1yYWRpdXM6OHB4fS55dG1GdWxsc2NyZWVuUmVsYXRlZFZpZGVvc0VudHJ5UG9pbnRWaWV3TW9kZWxUaHVtYm5haWx7ZGlzcGxheTpibG9ja30ueXRtU2xpbU1ldGFkYXRhQnV0dG9uUmVuZGVyZXJIb3N0e21hcmdpbi1yaWdodDoxMnB4fXl0bS1zbGltLW1ldGFkYXRhLXRvZ2dsZS1idXR0b24tcmVuZGVyZXIuY2lyY2xlLWJ1dHRvbnN7bWFyZ2luLXJpZ2h0OjEycHh9eXRtLXNsaW0tbWV0YWRhdGEtdG9nZ2xlLWJ1dHRvbi1yZW5kZXJlci5jaXJjbGUtYnV0dG9ucyAuYnV0dG9uLXJlbmRlcmVyLXRleHR7ZGlzcGxheTpub25lfXl0bS1zbGltLW1ldGFkYXRhLXRvZ2dsZS1idXR0b24tcmVuZGVyZXIuY2lyY2xlLWJ1dHRvbnMgLmJ1dHRvbi1yZW5kZXJlcnt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O21pbi13aWR0aDphdXRvO2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMyk7Ym9yZGVyLXJhZGl1czo1MCU7bWFyZ2luOjB9eXRtLXNsaW0tbWV0YWRhdGEtdG9nZ2xlLWJ1dHRvbi1yZW5kZXJlci5jaXJjbGUtYnV0dG9ucyAuYnV0dG9uLXJlbmRlcmVyLWljb257d2lkdGg6MjBweDtoZWlnaHQ6MjBweH0uZnVsbHNjcmVlbi1jb250cm9sc3stLWNvbnRyb2xzLWhlaWdodDoyMTVweDtib3R0b206Y2FsYyh2YXIoLS1jb250cm9scy1oZWlnaHQpKi0xKTtsZWZ0OjA7cmlnaHQ6MDtwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6dmFyKC0tY29udHJvbHMtaGVpZ2h0KTt6LWluZGV4OjI7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3BhZGRpbmc6MTJweDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9LmZ1bGxzY3JlZW4tY29udHJvbHMtdmlkZW8tdGl0bGV7Y29sb3I6I2ZmZn0uZnVsbHNjcmVlbi1jb250cm9scy5leHBhbmRlZHtib3R0b206MH0uZnVsbHNjcmVlbi1yZWNvbW1lbmRhdGlvbnMtd3JhcHBlcnstbW96LWJveC1mbGV4OjE7ZmxleDoxO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O292ZXJmbG93LXg6YXV0bzstbXMtb3ZlcmZsb3ctc3R5bGU6bm9uZTtzY3JvbGxiYXItd2lkdGg6bm9uZX0uZnVsbHNjcmVlbi1yZWNvbW1lbmRhdGlvbnMtd3JhcHBlcjo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lfUBtZWRpYSAocG9pbnRlcjpmaW5lKXsuZnVsbHNjcmVlbi1jb250cm9sc3stLWNvbnRyb2xzLWhlaWdodDoyMjhweH0uZnVsbHNjcmVlbi1yZWNvbW1lbmRhdGlvbnMtd3JhcHBlcntzY3JvbGxiYXItd2lkdGg6YXV0bzstbXMtb3ZlcmZsb3ctc3R5bGU6YXV0bztvdmVyZmxvdy15OmF1dG99LmZ1bGxzY3JlZW4tcmVjb21tZW5kYXRpb25zLXdyYXBwZXI6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjE2cHh9LmZ1bGxzY3JlZW4tcmVjb21tZW5kYXRpb25zLXdyYXBwZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2hlaWdodDo1NnB4O2JvcmRlci1yYWRpdXM6OHB4O2JvcmRlcjo0cHggc29saWQgdHJhbnNwYXJlbnQ7YmFja2dyb3VuZC1jbGlwOmNvbnRlbnQtYm94O2JhY2tncm91bmQtY29sb3I6IzYwNjA2MH0uZnVsbHNjcmVlbi1yZWNvbW1lbmRhdGlvbnMtd3JhcHBlcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojOTA5MDkwfS5mdWxsc2NyZWVuLXJlY29tbWVuZGF0aW9ucy13cmFwcGVyOjotd2Via2l0LXNjcm9sbGJhcntkaXNwbGF5OmJsb2NrfX0uZnVsbHNjcmVlbi1idXR0b25zLXdyYXBwZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7aGVpZ2h0OjQ0cHh9LmZ1bGxzY3JlZW4tcmVjb21tZW5kYXRpb257d2lkdGg6MjAwcHg7bWluLXdpZHRoOjIwMHB4O21hcmdpbjowIDhweH0udG9wLWZ1bGxzY3JlZW4tY29udHJvbHN7cGFkZGluZzoxMnB4O2NvbG9yOiNmZmY7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3JpZ2h0OjA7ei1pbmRleDo2fS5mdWxsc2NyZWVuLWNsb3NlLWJ1dHRvbi13cmFwcGVye21hcmdpbi10b3A6LThweDttYXJnaW4tbGVmdDphdXRvfS5mdWxsc2NyZWVuLWFjdGlvbi1tZW51e3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbToxMnB4O2hlaWdodDo0OHB4O2xlZnQ6MjRweDtyaWdodDoyNHB4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ei1pbmRleDoyfS5hY3Rpb24tbWVudS1lbmdhZ2VtZW50LWJ1dHRvbnMtd3JhcHBlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtib3JkZXItcmFkaXVzOjQ4cHg7cGFkZGluZzo0cHggMDtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4zKTt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9LmFjdGlvbi1tZW51LWVuZ2FnZW1lbnQtYnV0dG9ucy13cmFwcGVyIGJ1dHRvbnt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9LmFjdGlvbi1tZW51LWVuZ2FnZW1lbnQtYnV0dG9ucy13cmFwcGVyIHN2Z3tmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDFweCByZ2JhKDAsMCwwLC44KSl9LmFjdGlvbi1tZW51LWVuZ2FnZW1lbnQtYnV0dG9ucy13cmFwcGVyPjpmaXJzdC1jaGlsZHttYXJnaW4tbGVmdDo4cHh9LmZ1bGxzY3JlZW4tYWN0aW9uLW1lbnUsLmZ1bGxzY3JlZW4tYWN0aW9uLW1lbnUgLnl0QXR0cmlidXRlZFN0cmluZ0hvc3QsLmZ1bGxzY3JlZW4tcmVjb21tZW5kYXRpb257Y29sb3I6I2ZmZn0uZnVsbHNjcmVlbi13YXRjaC1uZXh0LWVudHJ5cG9pbnQtd3JhcHBlcnttYXJnaW4tbGVmdDphdXRvO2hlaWdodDoxMDAlfS5mdWxsc2NyZWVuLW1vcmUtdmlkZW9zLWVuZHBvaW50e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4fS5zdGFja2VkLXZpZGVvcy13cmFwcGVye3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6Mjt3aWR0aDo2NHB4O2hlaWdodDoxMDAlfS5zdGFja2VkLXZpZGVvLXByZXZpZXd7d2lkdGg6NjRweDtoZWlnaHQ6MzZweDt0cmFuc2Zvcm0tb3JpZ2luOnRvcCBjZW50ZXI7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7YmFja2dyb3VuZDpibGFjaztib3JkZXI6MXB4IHNvbGlkIHdoaXRlO2JvcmRlci1yYWRpdXM6M3B4O292ZXJmbG93OmhpZGRlbjstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9LnN0YWNrZWQtdmlkZW8tcHJldmlldyAuc3RhY2tlZC12aWRlby1wcmV2aWV3LWltYWdle3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7b2JqZWN0LWZpdDpjb3Zlcn0uc3RhY2tlZC12aWRlby1wcmV2aWV3OmZpcnN0LWNoaWxke3otaW5kZXg6M30uc3RhY2tlZC12aWRlby1wcmV2aWV3Om50aC1jaGlsZCgyKXt6LWluZGV4OjI7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTRweCkgc2NhbGUoLjg3NSl9LnN0YWNrZWQtdmlkZW8tcHJldmlldzpudGgtY2hpbGQoMikgLnN0YWNrZWQtdmlkZW8tcHJldmlldy1pbWFnZXtvcGFjaXR5Oi43NX0uc3RhY2tlZC12aWRlby1wcmV2aWV3Om50aC1jaGlsZCgzKXt6LWluZGV4OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLThweCkgc2NhbGUoLjc1KX0uc3RhY2tlZC12aWRlby1wcmV2aWV3Om50aC1jaGlsZCgzKSAuc3RhY2tlZC12aWRlby1wcmV2aWV3LWltYWdle29wYWNpdHk6LjV9Lm1vcmUtdmlkZW9zLW1lc3NhZ2V7bWFyZ2luLXJpZ2h0OjEycHg7dGV4dC1hbGlnbjpyaWdodH0ubW9yZS12aWRlb3MtbWVzc2FnZS10aXRsZXtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxNnB4fS5tb3JlLXZpZGVvcy1tZXNzYWdlLXN1YnRpdGxle2ZvbnQtc2l6ZToxMHB4O2xpbmUtaGVpZ2h0OjE0cHg7b3BhY2l0eTouN30ucXVpY2stYWN0aW9ucy13cmFwcGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7aGVpZ2h0OjEwMCU7bWFyZ2luLWxlZnQ6YXV0b30ucXVpY2stYWN0aW9ucy1iYXItYnV0dG9ucy13cmFwcGVye3BhZGRpbmctbGVmdDoxMnB4fS53YXRjaC1vbi15b3V0dWJlLWJ1dHRvbi13cmFwcGVye2RpcmVjdGlvbjpsdHJ9QG1lZGlhIChtYXgtaGVpZ2h0OjIyMXB4KXsud2F0Y2gtb24teW91dHViZS1idXR0b24td3JhcHBlciAueXRTcGVjQnV0dG9uU2hhcGVOZXh0SG9zdHtoZWlnaHQ6NDBweDtwYWRkaW5nOjAgMjBweH19LndhdGNoLW9uLXlvdXR1YmUtYnV0dG9ue3BhZGRpbmctbGVmdDo0cHh9Lm5vLWxhYmVsLWV4cCB5dG0tc2xpbS1tZXRhZGF0YS1idXR0b24tcmVuZGVyZXIsLm5vLWxhYmVsLWV4cCB5dG0tc2xpbS1tZXRhZGF0YS10b2dnbGUtYnV0dG9uLXJlbmRlcmVyLmNpcmNsZS1idXR0b25zLC5uby1sYWJlbC1leHA+eXRtLWJ1dHRvbi1yZW5kZXJlci5jaXJjbGUtYnV0dG9uc3ttYXJnaW4tcmlnaHQ6OHB4fVtkaXI9cnRsXSAubm8tbGFiZWwtZXhwIHl0bS1zbGltLW1ldGFkYXRhLXRvZ2dsZS1idXR0b24tcmVuZGVyZXIuY2lyY2xlLWJ1dHRvbnMubGlrZS1idXR0b24tbm8tbGFiZWwtZXhwe2RpcmVjdGlvbjpydGx9QG1lZGlhIChtYXgtd2lkdGg6NTQ5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpey5mcy13YXRjaC1zeXN0ZW06bm90KC5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbik6bm90KC5lbmFibGUtZnVsbHNjcmVlbi1jb250cm9scy1mb3ItcG9ydHJhaXQpIC5mdWxsc2NyZWVuLWFjdGlvbi1tZW51LC5mcy13YXRjaC1zeXN0ZW06bm90KC5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbik6bm90KC5lbmFibGUtZnVsbHNjcmVlbi1jb250cm9scy1mb3ItcG9ydHJhaXQpIC5mdWxsc2NyZWVuLWNvbnRyb2xze2Rpc3BsYXk6bm9uZX19eXRtLWN1c3RvbS1jb250cm9sIC5pY29uLWJ1dHRvbntoZWlnaHQ6NDhweDt3aWR0aDo0OHB4O3BhZGRpbmc6MTJweH1AbWVkaWEgKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpe3l0bS1jdXN0b20tY29udHJvbCAuaWNvbi1idXR0b246bm90KC5wbGF5ZXItc2V0dGluZ3MtaWNvbil7aGVpZ2h0OjQwcHg7d2lkdGg6NDBweDtwYWRkaW5nOjhweH15dG0tY3VzdG9tLWNvbnRyb2wgLmljb24tYnV0dG9uOm5vdCgucGxheWVyLXNldHRpbmdzLWljb24pPmMzLWljb257aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH19eXRtLWN1c3RvbS1jb250cm9sIC5hdXRvbmF2LXVzZXItZWR1Y2F0aW9uLWNvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MjUlO3dpZHRoOjEwMCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7Y29sb3I6I2ZmZn0uaW50ZXJjZXB0LWVsZW1lbnQtY2xpY2tzIC5wbGF5ZXItY29udHJvbHMtYm90dG9tLC5pbnRlcmNlcHQtZWxlbWVudC1jbGlja3MgLnBsYXllci1jb250cm9scy1taWRkbGUsLmludGVyY2VwdC1lbGVtZW50LWNsaWNrcyAucGxheWVyLWNvbnRyb2xzLXRvcCwuaW50ZXJjZXB0LWVsZW1lbnQtY2xpY2tzIC53YXRjaC1wYWdlLXByb2dyZXNzLWJhcntwb2ludGVyLWV2ZW50czpub25lfXl0bS1jdXN0b20tY29udHJvbCAuZmluZS1zY3J1YmJpbmctb3ZlcmxheSAuaWNvbi1idXR0b24+YzMtaWNvbiBzdmcgcGF0aCx5dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1ib3R0b20gLmZ1bGxzY3JlZW4taWNvbiBjMy1pY29uIHN2ZyBwYXRoLHl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLWJvdHRvbSAuaWNvbi1idXR0b24+YzMtaWNvbiBzdmcgcGF0aCx5dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUgLmljb24tYnV0dG9uIGMzLWljb24gc3ZnIHBhdGgseXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtcGIgLmljb24tYnV0dG9uPmMzLWljb24seXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtdG9wIC5pY29uLWJ1dHRvbj5jMy1pY29uIHN2ZyBwYXRoLHl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLXRvcCB5dG0tY2xvc2VkLWNhcHRpb25pbmctYnV0dG9uIGJ1dHRvblthcmlhLXByZXNzZWQ9ZmFsc2VdPmMzLWljb24gc3ZnIHBhdGgseXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtdG9wIHl0bS1jbG9zZWQtY2FwdGlvbmluZy1idXR0b24gYnV0dG9uW2FyaWEtcHJlc3NlZD10cnVlXT5jMy1pY29uIHN2ZyBwYXRoe2ZpbGw6I2ZmZn15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUgLmljb24tYnV0dG9uLmljb24tZGlzYWJsZSBjMy1pY29uIHN2ZyBwYXRoLHl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLXRvcCB5dG0tY2xvc2VkLWNhcHRpb25pbmctYnV0dG9uIGJ1dHRvbj5jMy1pY29uIHN2ZyBwYXRoe2ZpbGw6cmdiYSgyNTUsMjU1LDI1NSwwLjMpfXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLXRvcHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt6LWluZGV4OjI7cmlnaHQ6MjRweH1AbWVkaWEgKG1heC1oZWlnaHQ6MjIxcHgpe3l0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLXRvcHtyaWdodDowfX15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy10b3AueXR3UGxheWVyVG9wQ29udHJvbHNDb250YWluZXJXaXRoRW1iZWRkZWRWaWRlb0RldGFpbHN7bGVmdDowfUBtZWRpYSAobWluLXdpZHRoOjM4MHB4KXt5dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy10b3AueXR3UGxheWVyVG9wQ29udHJvbHNDb250YWluZXJXaXRoRW1iZWRkZWRWaWRlb0RldGFpbHN7bGVmdDoxNHB4fX15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy10b3AtcmlnaHR7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9W2Rpcj1ydGxdIHl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLWJhY2tncm91bmQsW2Rpcj1ydGxdIHl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLXRvcHtkaXJlY3Rpb246cnRsfWJvZHlbZmF1eC1mdWxsc2NyZWVuPXRydWVdIHl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLXRvcHt0b3A6ZW52KHNhZmUtYXJlYS1pbnNldC10b3ApfXl0bS1jdXN0b20tY29udHJvbCBjMy1vdmVybGF5e3Zpc2liaWxpdHk6dmlzaWJsZX0jcGxheWVyLWNvbnRyb2wtb3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MDt0b3VjaC1hY3Rpb246bWFuaXB1bGF0aW9ufSNwbGF5ZXItY29udHJvbC1vdmVybGF5IC5wbGF5ZXItY29udHJvbHMtY29udGVudHtoZWlnaHQ6MTAwJTtvdmVyZmxvdzpoaWRkZW47dmlzaWJpbGl0eTpoaWRkZW59I3BsYXllci1jb250cm9sLW92ZXJsYXkudXNlLW9wYWNpdHkgLnBsYXllci1jb250cm9scy1jb250ZW50e29wYWNpdHk6MDt2aXNpYmlsaXR5OnVuc2V0fSNwbGF5ZXItY29udHJvbC1vdmVybGF5IC5wbGF5ZXItY29udHJvbHMtYmFja2dyb3VuZHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MDt6LWluZGV4OjA7b3BhY2l0eTowfSNwbGF5ZXItY29udHJvbC1vdmVybGF5IC5wbGF5ZXItY29udHJvbHMtYmFja2dyb3VuZDpub3QoLmZ1bGxzY3JlZW4tcmVjcy1leHBhbmRlZCl7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHJnYmEoMCwwLDAsLjYpIDAscmdiYSgwLDAsMCwuNTQpIDI1JSxyZ2JhKDAsMCwwLC4zNikgNTAlLHJnYmEoMCwwLDAsLjE4KSA3NSUscmdiYSgwLDAsMCwwKSk7YmFja2dyb3VuZC1zaXplOjFweCA1MCU7YmFja2dyb3VuZC1yZXBlYXQ6cmVwZWF0LXh9I3BsYXllci1jb250cm9sLW92ZXJsYXkgLnBsYXllci1jb250cm9scy1iYWNrZ3JvdW5kLmZ1bGxzY3JlZW4tcmVjcy1leHBhbmRlZHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC42KX0jcGxheWVyLWNvbnRyb2wtb3ZlcmxheSAucGxheWVyLWNvbnRyb2xzLWJhY2tncm91bmQtY29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MDt0b3A6MDt2aXNpYmlsaXR5OnZpc2libGV9I3BsYXllci1jb250cm9sLW92ZXJsYXkgLnBsYXllci1jb250cm9scy1iYWNrZ3JvdW5kLWFjdGlvbi1pdGVtc3twb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjJ9I3BsYXllci1jb250cm9sLW92ZXJsYXkuYW5pbWF0aW9uLWVuYWJsZWR7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjdzO3RyYW5zaXRpb24tcHJvcGVydHk6YWxsfSNwbGF5ZXItY29udHJvbC1vdmVybGF5LmFuaW1hdGlvbi1lbmFibGVkIC5wbGF5ZXItY29udHJvbHMtYmFja2dyb3VuZHt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHk7dHJhbnNpdGlvbi1kdXJhdGlvbjouMnN9I3BsYXllci1jb250cm9sLW92ZXJsYXkucG9pbnRlci1ldmVudHMtb2Zme3BvaW50ZXItZXZlbnRzOm5vbmV9I3BsYXllci1jb250cm9sLW92ZXJsYXkuZmFkZWlue3BvaW50ZXItZXZlbnRzOmF1dG99I3BsYXllci1jb250cm9sLW92ZXJsYXkuZmFkZWluIC5wbGF5ZXItY29udHJvbHMtYmFja2dyb3VuZHt6LWluZGV4OjI7b3BhY2l0eToxfSNwbGF5ZXItY29udHJvbC1vdmVybGF5LmZhZGVpbiAucGxheWVyLWNvbnRyb2xzLWNvbnRlbnR7dmlzaWJpbGl0eTp2aXNpYmxlfSNwbGF5ZXItY29udHJvbC1vdmVybGF5LmZhZGVpbi51c2Utb3BhY2l0eSAucGxheWVyLWNvbnRyb2xzLWNvbnRlbnR7b3BhY2l0eToxO3Zpc2liaWxpdHk6dW5zZXR9I3BsYXllci1jb250cm9sLW92ZXJsYXkuaGlkZGVue2Rpc3BsYXk6bm9uZX1ib2R5W2ZhdXgtZnVsbHNjcmVlbj10cnVlXSAud2F0Y2gtcGFnZS1wcm9ncmVzcy1iYXJ7bGVmdDoyNHB4O3JpZ2h0OjI0cHh9Ym9keVtmYXV4LWZ1bGxzY3JlZW49dHJ1ZV0gLmVuYWJsZS1mdWxsc2NyZWVuLWNvbnRyb2xzIC53YXRjaC1wYWdlLXByb2dyZXNzLWJhcntib3R0b206MzBweH1ib2R5W2ZhdXgtZnVsbHNjcmVlbj10cnVlXSAuZW5hYmxlLWZ1bGxzY3JlZW4tY29udHJvbHMuZnMtd2F0Y2gtc3lzdGVtIC53YXRjaC1wYWdlLXByb2dyZXNzLWJhcntib3R0b206NTBweH0uZnVsbHNjcmVlbi1jb250cm9scy1hbHdheXMtb24gLndhdGNoLXBhZ2UtcHJvZ3Jlc3MtYmFye2JvdHRvbTo1MnB4fS5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbiAucGxheWVyLWNvbnRyb2xzLWJvdHRvbXtib3R0b206ODJweH0uZnVsbHNjcmVlbi1jb250cm9scy1hbHdheXMtb24gLmZ1bGxzY3JlZW4tYWN0aW9uLW1lbnV7bGVmdDoxMnB4O3JpZ2h0OjEycHh9QG1lZGlhIChtaW4td2lkdGg6MzgwcHgpey5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbiAuZnVsbHNjcmVlbi1hY3Rpb24tbWVudXtsZWZ0OjMwcHg7cmlnaHQ6MzBweH19QG1lZGlhIChtYXgtaGVpZ2h0OjIyMXB4KXsuZnVsbHNjcmVlbi1jb250cm9scy1hbHdheXMtb24gLndhdGNoLXBhZ2UtcHJvZ3Jlc3MtYmFye2JvdHRvbTozMnB4O3otaW5kZXg6MztoZWlnaHQ6NDBweDtsZWZ0OjEycHg7cmlnaHQ6MTJweH0uZnVsbHNjcmVlbi1jb250cm9scy1hbHdheXMtb24gLndhdGNoLXBhZ2UtcHJvZ3Jlc3MtYmFyIC55dFBsYXllclByb2dyZXNzQmFyRHJhZ0NvbnRhaW5lcnstbW96LWJveC1hbGlnbjplbmQ7YWxpZ24taXRlbXM6ZW5kfS5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbiAud2F0Y2gtcGFnZS1wcm9ncmVzcy1iYXIgLnl0UGxheWVyUHJvZ3Jlc3NCYXJQcm9ncmVzc0JhcntwYWRkaW5nLWJvdHRvbToxMnB4fS5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbiAucGxheWVyLWNvbnRyb2xzLWJvdHRvbXtib3R0b206NThweH0uZnVsbHNjcmVlbi1jb250cm9scy1hbHdheXMtb24gLnBsYXllci1jb250cm9scy1ib3R0b20ucGxheWVyLWNvbnRyb2xzLWJvdHRvbS1sZWZ0e2xlZnQ6MDtyaWdodDo0NHB4fS5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbiAucGxheWVyLWNvbnRyb2xzLWJvdHRvbS5wbGF5ZXItY29udHJvbHMtYm90dG9tLXJpZ2h0e2xlZnQ6dW5zZXQ7cmlnaHQ6MDt6LWluZGV4OjR9LmZ1bGxzY3JlZW4tY29udHJvbHMtYWx3YXlzLW9uIC5mdWxsc2NyZWVuLWFjdGlvbi1tZW51e2xlZnQ6MnB4O3JpZ2h0OjJweDtib3R0b206MnB4fS5mdWxsc2NyZWVuLWNvbnRyb2xzLWFsd2F5cy1vbiAuZnVsbHNjcmVlbi1tb3JlLXZpZGVvcy1lbmRwb2ludHttYXJnaW4tdG9wOjEycHh9LmZ1bGxzY3JlZW4tY29udHJvbHMtYWx3YXlzLW9uIC5zdGFja2VkLXZpZGVvLXByZXZpZXcsLmZ1bGxzY3JlZW4tY29udHJvbHMtYWx3YXlzLW9uIC5zdGFja2VkLXZpZGVvcy13cmFwcGVye3dpZHRoOjQycHg7aGVpZ2h0OjI0cHh9LmZ1bGxzY3JlZW4tY29udHJvbHMtYWx3YXlzLW9uIC5wbGF5ZXItdGltZS1jaGFwdGVyLXRpdGxle2Rpc3BsYXk6bm9uZX19LnBsYXllci1jb250cm9scy1oaWRle2Rpc3BsYXk6bm9uZX0ueXRtTXV0ZWRBdXRvcGxheU92ZXJsYXlIb3N0e2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO2hlaWdodDoxMDAlO3dpZHRoOjEwMCV9Lnl0bU11dGVkQXV0b3BsYXlPdmVybGF5QnJhbmRpbmdJY29ue3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo2cHg7cmlnaHQ6MTJweDtjb2xvcjojZmZmfVtkaXI9cnRsXSAueXRtTXV0ZWRBdXRvcGxheU92ZXJsYXlCcmFuZGluZ0ljb257bGVmdDoxMnB4O3JpZ2h0OmF1dG99Lnl0bU11dGVkQXV0b3BsYXlPdmVybGF5QmFja2dyb3VuZHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjYpfS55dG1NdXRlZEF1dG9wbGF5T3ZlcmxheUFjdGlvbk1lbnV7b3BhY2l0eToxO3Zpc2liaWxpdHk6dmlzaWJsZTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuN3M7dHJhbnNpdGlvbi1wcm9wZXJ0eTphbGx9Lnl0bU11dGVkQXV0b3BsYXlPdmVybGF5SGlkZUFjdGlvbk1lbnV7b3BhY2l0eTowO3Zpc2liaWxpdHk6aGlkZGVufS55dG1NdXRlZEF1dG9wbGF5T3ZlcmxheUVxdWFsaXplcntwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MTVweDtyaWdodDoxMnB4fVtkaXI9cnRsXSAueXRtTXV0ZWRBdXRvcGxheU92ZXJsYXlFcXVhbGl6ZXJ7bGVmdDoxMnB4O3JpZ2h0OmF1dG99QGtleWZyYW1lcyB5dG0tZXF1YWxpemVyLWFuaW1hdGlvbnswJXt0cmFuc2Zvcm06c2NhbGVZKDEpfTUwJXt0cmFuc2Zvcm06c2NhbGVZKC41KX10b3t0cmFuc2Zvcm06c2NhbGVZKDEpfX0ueXRtTXV0ZWRBdXRvcGxheU92ZXJsYXlFcXVhbGl6ZXIgLnl0bS1lcXVhbGl6ZXItYmFyLWxlZnQsLnl0bU11dGVkQXV0b3BsYXlPdmVybGF5RXF1YWxpemVyIC55dG0tZXF1YWxpemVyLWJhci1taWRkbGUsLnl0bU11dGVkQXV0b3BsYXlPdmVybGF5RXF1YWxpemVyIC55dG0tZXF1YWxpemVyLWJhci1yaWdodHtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDt0cmFuc2Zvcm0tb3JpZ2luOjhweCAxNnB4Oy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjo4cHggMTZweDthbmltYXRpb24tbmFtZTp5dG0tZXF1YWxpemVyLWFuaW1hdGlvbjthbmltYXRpb24taXRlcmF0aW9uLWNvdW50OmluZmluaXRlfS55dG1NdXRlZEF1dG9wbGF5T3ZlcmxheUVxdWFsaXplciAueXRtLWVxdWFsaXplci1iYXItbGVmdHthbmltYXRpb24tZHVyYXRpb246LjVzfS55dG1NdXRlZEF1dG9wbGF5T3ZlcmxheUVxdWFsaXplciAueXRtLWVxdWFsaXplci1iYXItbWlkZGxle2FuaW1hdGlvbi1kdXJhdGlvbjoxLjNzfS55dG1NdXRlZEF1dG9wbGF5T3ZlcmxheUVxdWFsaXplciAueXRtLWVxdWFsaXplci1iYXItcmlnaHR7YW5pbWF0aW9uLWR1cmF0aW9uOi43c30ueXRTaG9ydHNUb3VjaEZlZWRiYWNrSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlfS55dFNob3J0c1RvdWNoRmVlZGJhY2tIaWRkZW57ZGlzcGxheTpub25lfS55dFNob3J0c1RvdWNoRmVlZGJhY2tUb3VjaEZlZWRiYWNre2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOmFic29sdXRlO2hlaWdodDoxMDAlO3dpZHRoOjEwMCU7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dFNob3J0c1RvdWNoRmVlZGJhY2tMaWtlQW5pbWF0aW9uV3JhcHBlcnt3aWR0aDoyNDBweDtoZWlnaHQ6MjQwcHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dFNob3J0c1RvdWNoRmVlZGJhY2tMaWtlQW5pbWF0aW9ue3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9Lnl0U2hvcnRzVG91Y2hGZWVkYmFja1BsYXlQYXVzZUFuaW1hdGlvbnt3aWR0aDo5NnB4O2hlaWdodDo5NnB4fUBtZWRpYSAobWF4LXdpZHRoOjkzMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVySG9zdHtvdmVyZmxvdy15OnNjcm9sbH19Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyU2NyaW1Db250YWluZXJ7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDo1fS5ZdG1Cb3R0b21TaGVldE92ZXJsYXlSZW5kZXJlckNvbnRhaW5lcntib3JkZXItcmFkaXVzOjIwcHg7YmFja2dyb3VuZC1jb2xvcjojZmZmO21hcmdpbjowIDhweCAyNHB4O21heC13aWR0aDo0MDBweDtkaXNwbGF5OmJsb2NrO292ZXJmbG93OnNjcm9sbH0uWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJIZWFkZXJ7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZTpjb3ZlcjtiYWNrZ3JvdW5kLXBvc2l0aW9uOjUwJTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MTQwcHg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjIwcHggMDt3aWR0aDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlci1yYWRpdXM6MTJweH0uWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJDZW50cmFsSWNvbntoZWlnaHQ6NjVweDt3aWR0aDo2NXB4O2NvbG9yOiNmMDM7YmFja2dyb3VuZC1jb2xvcjojZmZmO3BhZGRpbmc6MTVweDtib3JkZXItcmFkaXVzOjQ1cHh9Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyQ2xvc2V7cG9zaXRpb246YWJzb2x1dGU7dG9wOjEwcHg7cmlnaHQ6MTBweDtib3JkZXItcmFkaXVzOjI0cHh9Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyRHJhZ0hhbmRsZXtiYWNrZ3JvdW5kOiMwMzAzMDM7b3BhY2l0eTouMTU7Ym9yZGVyLXJhZGl1czo0cHg7aGVpZ2h0OjRweDttYXJnaW46MCBhdXRvO3dpZHRoOjQwcHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjhweH0uWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJDb250ZW50c3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47cGFkZGluZzoyNHB4fS5ZdG1Cb3R0b21TaGVldE92ZXJsYXlSZW5kZXJlckNvbnRlbnRzPmRpdntwYWRkaW5nLWJvdHRvbTo2cHh9Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyQ29udGVudHM+eXRtLWJ1dHRvbi1yZW5kZXJlcntwYWRkaW5nLXRvcDo2cHh9Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyVGl0bGV7Zm9udC1zaXplOjJyZW07bGluZS1oZWlnaHQ6Mi44cmVtfUBtZWRpYSAobWluLXdpZHRoOjMwMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1pbi13aWR0aDozMDBweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyVGl0bGV7bGV0dGVyLXNwYWNpbmc6LjAwNWVtfX0uWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJTdWJ0aXRsZXtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjEuOHJlbX1AbWVkaWEgKG1pbi13aWR0aDozMDBweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtaW4td2lkdGg6MzAwcHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpey5ZdG1Cb3R0b21TaGVldE92ZXJsYXlSZW5kZXJlclN1YnRpdGxle2xldHRlci1zcGFjaW5nOi4wMWVtfX0uWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJPdmVybGF5Q29udGFpbmVye3Bvc2l0aW9uOmZpeGVkO2JvdHRvbTowO3otaW5kZXg6NTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjEwMCV9QG1lZGlhIChtYXgtd2lkdGg6OTMwcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKXsuWXRtQm90dG9tU2hlZXRPdmVybGF5UmVuZGVyZXJPdmVybGF5Q29udGFpbmVye3RvcDowfX1AbWVkaWEgKG1pbi13aWR0aDo1NTBweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyT3ZlcmxheUNvbnRhaW5lcntib3R0b206NTAlfX1AbWVkaWEgKG1pbi13aWR0aDo5MzFweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey5ZdG1Cb3R0b21TaGVldE92ZXJsYXlSZW5kZXJlck92ZXJsYXlDb250YWluZXJ7Ym90dG9tOjI1JX19QG1lZGlhIChtYXgtaGVpZ2h0OjUwMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7Lll0bUJvdHRvbVNoZWV0T3ZlcmxheVJlbmRlcmVyT3ZlcmxheUNvbnRhaW5lcntib3R0b206MH19W2JvdHRvbS1zaGVldC1vdmVybGF5LWJvZHktb3Blbl17cG9zaXRpb246Zml4ZWQ7bGVmdDowO3JpZ2h0OjA7dG9wOjA7b3ZlcmZsb3c6aGlkZGVufS55dG0tZm9yY2VkLW11dGUtbWVzc2FnZSAuYnV0dG9uLXdpdGgtaWNvbi1pbm5lcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4zKTtib3JkZXI6MXB4IHNvbGlkICNmZmY7Ym9yZGVyLXJhZGl1czozcHg7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDtwYWRkaW5nOjZweH0ueXRtLWZvcmNlZC1tdXRlLW1lc3NhZ2UgLmJ1dHRvbi13aXRoLWljb24taW5uZXIgYzMtaWNvbntoZWlnaHQ6MjRweDt3aWR0aDoyNHB4fXl0bS1pbmZvLXBhbmVsLWNvbnRhaW5lci1yZW5kZXJlci5pdGVte21hcmdpbi10b3A6MH15dG0taW5mby1wYW5lbC1jb250YWluZXItcmVuZGVyZXJ7YmFja2dyb3VuZC1jb2xvcjojZGVmMWZmO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn15dG0taW5mby1wYW5lbC1jb250YWluZXItcmVuZGVyZXJbYmFja2dyb3VuZD1JTkZPX1BBTkVMX0NPTlRBSU5FUl9CQUNLR1JPVU5EX1NZU1RFTV06Zmlyc3QtY2hpbGR7Ym9yZGVyOm5vbmV9eXRtLWluZm8tcGFuZWwtY29udGFpbmVyLXJlbmRlcmVyW2JhY2tncm91bmQ9SU5GT19QQU5FTF9DT05UQUlORVJfQkFDS0dST1VORF9TWVNURU1de2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXItdG9wOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSk7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfXl0bS1pbmZvLXBhbmVsLWNvbnRhaW5lci1yZW5kZXJlcltiYWNrZ3JvdW5kPUlORk9fUEFORUxfQ09OVEFJTkVSX0JBQ0tHUk9VTkRfR1JBWV17YmFja2dyb3VuZC1jb2xvcjojZmZmfXl0bS1pbmZvLXBhbmVsLWNvbnRhaW5lci1yZW5kZXJlcltiYWNrZ3JvdW5kPUlORk9fUEFORUxfQ09OVEFJTkVSX0JBQ0tHUk9VTkRfT1ZFUkxBWV9CTEFDS117YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuNil9Lnl0bS1pbmZvLXBhbmVsLWNvbnRhaW5lci1oZWFkZXJ7aGVpZ2h0OjM2cHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRtLWluZm8tcGFuZWwtY29udGFpbmVyLWhlYWRlci1sZWZ0LWl0ZW1ze2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0bS1pbmZvLXBhbmVsLWNvbnRhaW5lci1oZWFkZXItaWNvbnttYXJnaW4tbGVmdDoxNnB4O21hcmdpbi1yaWdodDo4cHh9Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlckhvc3RbeXRtLWluZm8tcGFuZWwtY29udGVudC1oYXMtbWVudT10cnVlXXtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93fS55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJIb3N0W3l0bS1pbmZvLXBhbmVsLWNvbnRlbnQtaGFzLW1lbnU9dHJ1ZV0gLnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlcldyYXBwZXJ7cGFkZGluZy1ib3R0b206MTJweH0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVySG9zdC55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJIb3N0SXNXYXRjaEluZm9QYW5lbHttYXJnaW46MTJweDtib3JkZXItcmFkaXVzOjEycHh9Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlckhvc3RbeXRtLWluZm8tcGFuZWwtY29udGVudC10cnVuY2F0ZS1wYXJhZ3JhcGhzPXRydWVdIC55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJQYXJhZ3JhcGh7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7LXdlYmtpdC1saW5lLWNsYW1wOjN9Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlckhvc3RbZGF0YS1iYWNrZ3JvdW5kPUlORk9fUEFORUxfQ09OVEVOVF9CQUNLR1JPVU5EX09WRVJMQVlfQkxBQ0tdIC55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJJbmxpbmVTb3VyY2V7Y29sb3I6I2ZmZjtmb250LXdlaWdodDo1MDB9Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlckhvc3RbZGF0YS1iYWNrZ3JvdW5kPUlORk9fUEFORUxfQ09OVEVOVF9CQUNLR1JPVU5EX0JMVUVde2JhY2tncm91bmQtY29sb3I6I2RlZjFmZn0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVySG9zdC55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJIb3N0Q2luZW1hdGljQmFja2dyb3VuZHtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4xKX0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyV3JhcHBlcntwYWRkaW5nOjEycHggMTZweCAxNnB4IDE2cHh9Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlcldyYXBwZXJbZGF0YS1oYXMtaWNvbj10cnVlXXtwYWRkaW5nOjE0cHggMTJweH0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyQm9keXtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvd30ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyVGV4dHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyVGl0bGVDb250YWluZXJ7Y29sb3I6IzA2NWZkNDttYXJnaW4tYm90dG9tOjRweDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo1MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo0cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJUaXRsZUNvbnRhaW5lcnstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJUaXRsZUNvbnRhaW5lcnttYXgtaGVpZ2h0OjRyZW19Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlckxpbmtJY29ue3BhZGRpbmctbGVmdDoxcHg7d2lkdGg6MTRweDtoZWlnaHQ6MTRweDt2ZXJ0aWNhbC1hbGlnbjp0ZXh0LXRvcH0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyTWV0YWRhdGF7bWFyZ2luLWJvdHRvbTo0cHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDB9Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlclB1Ymxpc2hUaW1le2Rpc3BsYXk6aW5saW5lO2NvbG9yOiM2MDYwNjA7cGFkZGluZy1sZWZ0OjNweH0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyUGFyYWdyYXBoe2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJJbmxpbmVTb3VyY2V7ZGlzcGxheTppbmxpbmUtYmxvY2s7Y29sb3I6IzA2NWZkNDtwYWRkaW5nLWxlZnQ6MnB4fS55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJJbmxpbmVTb3VyY2VUZXh0e2Rpc3BsYXk6aW5saW5lLWJsb2NrfS55dG1JbmZvUGFuZWxDb250ZW50UmVuZGVyZXJUaHVtYm5haWx7ZmxleC1zaHJpbms6MDtoZWlnaHQ6NjRweDt3aWR0aDo2NHB4O21hcmdpbi1sZWZ0OjhweH0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyRW5kcG9pbnR7d2lkdGg6MTAwJX0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVySGVhZGVyUmlnaHRJdGVtc3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0bUluZm9QYW5lbENvbnRlbnRSZW5kZXJlckhlYWRlckljb257bWFyZ2luLWxlZnQ6NHB4O21hcmdpbi1yaWdodDo0cHg7aGVpZ2h0OjE2cHg7d2lkdGg6MTZweH0ueXRtSW5mb1BhbmVsQ29udGVudFJlbmRlcmVyTWVudXtkaXNwbGF5OmJsb2NrfS55dG1Mb2dvRW50aXR5SG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2hlaWdodDo0OHB4fS55dG1Mb2dvRW50aXR5Q29udGFpbmVye3dpZHRoOjEyMnB4O21hcmdpbi1yaWdodDoxMnB4fS55dG1Mb2dvRW50aXR5TG9nb3twYWRkaW5nOjA7aGVpZ2h0OjQ4cHg7d2lkdGg6YXV0bztjb2xvcjp1bnNldH0ucGxheWVySW50ZXJzdGl0aWFsUmVuZGVyZXJIb3N0e2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7YmFja2dyb3VuZDojNjA2MDYwfS5wbGF5ZXJJbnRlcnN0aXRpYWxSZW5kZXJlclNjcmlte3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcscmdiYSgwLDAsMCwuNCkgMCxyZ2JhKDAsMCwwLC42KSA3NSUscmdiYSgwLDAsMCwuNikpfS55dEJpZ2JvYXJkU3Rvcnlib2FyZEhvc3R7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtvdmVyZmxvdzpoaWRkZW59Lnl0bUExMXlTdHlsZXNIaWRkZW5CdXR0b257cG9zaXRpb246Zml4ZWQ7dG9wOjA7bGVmdDowO2hlaWdodDoxMnB4O3dpZHRoOjEycHh9Lnl0bUNsb3NlZENhcHRpb25pbmdCdXR0b25Ib3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDo0OHB4O2hlaWdodDo0OHB4fS55dG1DbG9zZWRDYXB0aW9uaW5nQnV0dG9uSWNvbkRpc2FibGVke2NvbG9yOiM5MDkwOTB9Lnl0bUNsb3NlZENhcHRpb25pbmdCdXR0b25JY29uRGlzYWJsZWRPdmVybGF5e2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC4zKX0ueXRtQ2xvc2VkQ2FwdGlvbmluZ0J1dHRvbll0SWNvbk92ZXJsYXl7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAxcHggcmdiYSgwLDAsMCwwLjgpKX0ueXRtQ2xvc2VkQ2FwdGlvbmluZ0J1dHRvbkJ1dHRvbntjdXJzb3I6cG9pbnRlcjt3aWR0aDo0OHB4O2hlaWdodDo0OHB4O3BhZGRpbmc6MTJweDtib3JkZXI6bm9uZTtvdXRsaW5lOm5vbmU7Zm9udDppbmhlcml0O3RleHQtdHJhbnNmb3JtOmluaGVyaXQ7Y29sb3I6aW5oZXJpdDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS55dG1DcmVhdG9yRW5kc2NyZWVuSG9zdHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtmb250LXNpemU6MS4ycmVtO3Zpc2liaWxpdHk6aGlkZGVufS55dG1DcmVhdG9yRW5kc2NyZWVuSW5DdWVSYW5nZXt2aXNpYmlsaXR5OnZpc2libGV9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplODUze2ZvbnQtc2l6ZToxLjRyZW19Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplMTI4MHtmb250LXNpemU6MS44cmVtfS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTE5MjB7Zm9udC1zaXplOjIuNHJlbX0ueXRtQ3JlYXRvckVuZHNjcmVlbkVsZW1lbnR7cG9zaXRpb246YWJzb2x1dGU7cG9pbnRlci1ldmVudHM6bm9uZTtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRtQ3JlYXRvckVuZHNjcmVlbkVsZW1lbnRWaXNpYmxle29wYWNpdHk6MTtwb2ludGVyLWV2ZW50czphdXRvfS55dG1DcmVhdG9yRW5kc2NyZWVuU2NyaW17cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3BvaW50ZXItZXZlbnRzOm5vbmU7YmFja2dyb3VuZC1jb2xvcjojMDAwO29wYWNpdHk6MDt0cmFuc2l0aW9uOmFsbCAuMnM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4wNSwwLDAsMSl9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TY3JpbVZpc2libGV7b3BhY2l0eTouMjV9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRIb3N0e2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJTt0cmFuc2l0aW9uOnotaW5kZXggLjJzIHN0ZXAtZW5kO3otaW5kZXg6Njtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudEhvc3RBY3RpdmV7dHJhbnNpdGlvbjp6LWluZGV4IC4ycyBzdGVwLXN0YXJ0O3otaW5kZXg6N30ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudFRodW1ibmFpbHtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO2N1cnNvcjpwb2ludGVyO3Bvc2l0aW9uOmFic29sdXRlO2JveC1zaGFkb3c6MCAwIDRweCByZ2JhKDAsMCwwLDAuNil9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRSb3VuZHtib3JkZXItcmFkaXVzOjUwJX0ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuOCk7aGVpZ2h0OjEwMCU7cGFkZGluZzo4cHg7bWFyZ2luOi04cHg7b3BhY2l0eTowO3RyYW5zaXRpb246YWxsIC4yczt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTtjb2xvcjojZmZmO3Zpc2liaWxpdHk6aGlkZGVuO2FsaWduLWNvbnRlbnQ6Y2VudGVyO21heC13aWR0aDoxMDAlO292ZXJmbG93OmhpZGRlbn0ueXRtQ3JlYXRvckVuZHNjcmVlblJvdW5kaW5nU21hbGwgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5e2JvcmRlci1yYWRpdXM6NHB4fS55dG1DcmVhdG9yRW5kc2NyZWVuUm91bmRpbmdNZWRpdW0gLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5e2JvcmRlci1yYWRpdXM6OHB4fS55dG1DcmVhdG9yRW5kc2NyZWVuUm91bmRpbmdMYXJnZSAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXl7Ym9yZGVyLXJhZGl1czoxMnB4fS55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheVJpZ2h0e2xlZnQ6MH0ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlSaWdodEFjdGl2ZXtwYWRkaW5nLWxlZnQ6Y2FsYygxMDAlICsgOHB4KX0ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlMZWZ0e3JpZ2h0OjB9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5TGVmdEFjdGl2ZXtwYWRkaW5nLXJpZ2h0OmNhbGMoMTAwJSArIDhweCl9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5TGVmdEFjdGl2ZSwueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlSaWdodEFjdGl2ZXtvcGFjaXR5OjE7dmlzaWJpbGl0eTp2aXNpYmxlO21heC13aWR0aDpub25lfS55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUNvbnRlbnR7d2lkdGg6MTE1cHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21hcmdpbi1sZWZ0OjEycHg7bWFyZ2luLXJpZ2h0OjhweH0ueXRtQ3JlYXRvckVuZHNjcmVlbkVsZW1lbnRPdmVybGF5QWN0aXZlUmlnaHQgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5Q29udGVudHttYXJnaW4tbGVmdDo4cHg7bWFyZ2luLXJpZ2h0OjEycHh9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplNDI2IC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUNvbnRlbnQsLnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplNDcwIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUNvbnRlbnQsLnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplNTA2IC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUNvbnRlbnQsLnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplNTcwIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUNvbnRlbnR7d2lkdGg6MTM2cHh9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplNDI2IC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUNvbnRlbnR7bWFyZ2luLWxlZnQ6OHB4O21hcmdpbi1yaWdodDoxMnB4fS55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUFjdGl2ZVJpZ2h0IC55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTQyNiAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlDb250ZW50e21hcmdpbi1sZWZ0OjEycHg7bWFyZ2luLXJpZ2h0OjhweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemU2NDAgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5Q29udGVudHt3aWR0aDoxMzZweDttYXJnaW4tbGVmdDoxNnB4O21hcmdpbi1yaWdodDo4cHh9Lnl0bUNyZWF0b3JFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUFjdGl2ZVJpZ2h0IC55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTY0MCAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlDb250ZW50e21hcmdpbi1sZWZ0OjhweDttYXJnaW4tcmlnaHQ6MTZweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemU4NTMgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5Q29udGVudHt3aWR0aDoxNzZweDttYXJnaW4tbGVmdDoxNnB4O21hcmdpbi1yaWdodDo4cHh9Lnl0bUNyZWF0b3JFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUFjdGl2ZVJpZ2h0IC55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTg1MyAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlDb250ZW50e21hcmdpbi1sZWZ0OjhweDttYXJnaW4tcmlnaHQ6MTZweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxMjgwIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUNvbnRlbnR7d2lkdGg6MjY0cHg7bWFyZ2luLWxlZnQ6MzJweDttYXJnaW4tcmlnaHQ6MTZweH0ueXRtQ3JlYXRvckVuZHNjcmVlbkVsZW1lbnRPdmVybGF5QWN0aXZlUmlnaHQgLnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplMTI4MCAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlDb250ZW50e21hcmdpbi1sZWZ0OjE2cHg7bWFyZ2luLXJpZ2h0OjMycHh9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplMTkyMCAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlDb250ZW50e3dpZHRoOjM5MnB4O21hcmdpbi1sZWZ0OjQ4cHg7bWFyZ2luLXJpZ2h0OjI0cHh9Lnl0bUNyZWF0b3JFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUFjdGl2ZVJpZ2h0IC55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTE5MjAgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5Q29udGVudHttYXJnaW4tbGVmdDoyNHB4O21hcmdpbi1yaWdodDo0OHB4fS55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheUNvbnRlbnR7bWF4LWhlaWdodDoxMDAlO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5VGl0bGV7Zm9udC1zaXplOjEuMnJlbTtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MS4yNTttYXJnaW4tYm90dG9tOjJweDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWxpbmUtY2xhbXA6Mn0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemU4NTMgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5VGl0bGV7Zm9udC1zaXplOjEuNnJlbX0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxMjgwIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheVRpdGxle2ZvbnQtc2l6ZToycmVtfS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTE5MjAgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5VGl0bGV7Zm9udC1zaXplOjIuNHJlbX0ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlNZXRhZGF0YUNoYW5uZWwsLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5TWV0YWRhdGFXZWJzaXRle2ZvbnQtc2l6ZToxLjJyZW07bWFyZ2luLXRvcDo0cHg7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplODUzIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheU1ldGFkYXRhQ2hhbm5lbCwueXRtQ3JlYXRvckVuZHNjcmVlblNpemU4NTMgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5TWV0YWRhdGFXZWJzaXRle2ZvbnQtc2l6ZToxLjZyZW19Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplMTI4MCAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlNZXRhZGF0YUNoYW5uZWwsLnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplMTI4MCAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlNZXRhZGF0YVdlYnNpdGV7Zm9udC1zaXplOjEuOHJlbTttYXJnaW4tdG9wOjhweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxOTIwIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheU1ldGFkYXRhQ2hhbm5lbCwueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxOTIwIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheU1ldGFkYXRhV2Vic2l0ZXtmb250LXNpemU6MnJlbTttYXJnaW4tdG9wOjEycHh9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5TWV0YWRhdGFDaGFubmVse2JvcmRlci10b3A6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsMC4yKTtwYWRkaW5nLXRvcDo0cHg7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1saW5lLWNsYW1wOjN9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplNjQwIC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheU1ldGFkYXRhQ2hhbm5lbHstd2Via2l0LWxpbmUtY2xhbXA6Mn0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemU1NzAgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5TWV0YWRhdGFDaGFubmVsey13ZWJraXQtbGluZS1jbGFtcDoxfS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTM0NiAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlNZXRhZGF0YUNoYW5uZWwsLnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplNDI2IC55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheU1ldGFkYXRhQ2hhbm5lbCwueXRtQ3JlYXRvckVuZHNjcmVlblNpemU0NzAgLnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5TWV0YWRhdGFDaGFubmVsLC55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTUwNiAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlNZXRhZGF0YUNoYW5uZWx7ZGlzcGxheTpub25lfS55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50T3ZlcmxheU1ldGFkYXRhV2Vic2l0ZXt3aGl0ZS1zcGFjZTpub3dyYXB9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5Q2FsbFRvQWN0aW9ue2ZvbnQtd2VpZ2h0OjcwMDttYXJnaW4tdG9wOjRweDtmb250LXNpemU6MXJlbTt0cmFuc2l0aW9uOmFsbCAuMnN9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5Q2FsbFRvQWN0aW9uOmhvdmVye3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7Y3Vyc29yOnBvaW50ZXJ9Lnl0bUV4cGFuZGluZ0VuZHNjcmVlbkVsZW1lbnRPdmVybGF5QnV0dG9ue21hcmdpbi10b3A6NHB4O21hcmdpbi1ib3R0b206NHB4fS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTM0NiAueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudE92ZXJsYXlCdXR0b257ZGlzcGxheTpub25lfS55dG1FeHBhbmRpbmdFbmRzY3JlZW5FbGVtZW50U2NyaW17cG9pbnRlci1ldmVudHM6bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ZGlzcGxheTpibG9jazt6LWluZGV4OjY7b3BhY2l0eTowO3RyYW5zaXRpb246YWxsIC4yc30ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudFNjcmltQ2hhbm5lbHtib3JkZXItcmFkaXVzOjUwJX0ueXRtRXhwYW5kaW5nRW5kc2NyZWVuRWxlbWVudFNjcmltQWN0aXZle29wYWNpdHk6LjI1fS55dHdBbmltYXRlZFN1YnNjcmliZUJ1dHRvbkhvc3R7d2lkdGg6MTAwJX0ueXR3QW5pbWF0ZWRTdWJzY3JpYmVCdXR0b25Db250ZW50Q29udGFpbmVye3dpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVuO2JvcmRlci1yYWRpdXM6MThweH0ueXR3QW5pbWF0ZWRTdWJzY3JpYmVCdXR0b25GbGV4Q29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3dpZHRoOi1tb3otZml0LWNvbnRlbnQ7d2lkdGg6Zml0LWNvbnRlbnR9Lnl0d0FuaW1hdGVkU3Vic2NyaWJlQnV0dG9uQ2FuQW5pbWF0ZXt0cmFuc2l0aW9uOndpZHRoIC41cyBlYXNlfS55dHdBbmltYXRlZFN1YnNjcmliZUJ1dHRvblN0YXRpY1dpZHRoIC55dHdBbmltYXRlZFN1YnNjcmliZUJ1dHRvbkZsZXhDb250YWluZXJ7d2lkdGg6YXV0b30ueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudEhvc3R7ZGlzcGxheTpibG9jaztjdXJzb3I6cG9pbnRlcjtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKTtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246YWJzb2x1dGU7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJTtib3gtc2hhZG93OjAgMCA0cHggcmdiYSgwLDAsMCwwLjYpO3RyYW5zaXRpb246YWxsIC4yczt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt6LWluZGV4OjV9Lnl0bUNyZWF0b3JFbmRzY3JlZW5Sb3VuZGluZ1NtYWxsIC55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50SG9zdHtib3JkZXItcmFkaXVzOjRweH0ueXRtQ3JlYXRvckVuZHNjcmVlblJvdW5kaW5nTWVkaXVtIC55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50SG9zdHtib3JkZXItcmFkaXVzOjhweH0ueXRtQ3JlYXRvckVuZHNjcmVlblJvdW5kaW5nTGFyZ2UgLnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRIb3N0e2JvcmRlci1yYWRpdXM6MTJweH0ueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudEhvc3RBY3RpdmV7Ym9yZGVyLWNvbG9yOiNmZmZ9Lnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRUb3BPdmVybGF5e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDt3aWR0aDoxMDAlO2hlaWdodDozMyV9Lnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRUaHVtYm5haWxUaXRsZXtjb2xvcjojZmZmO3Bvc2l0aW9uOnJlbGF0aXZlO2ZvbnQtc2l6ZToxLjJyZW07Zm9udC13ZWlnaHQ6NTAwO21hcmdpbjo2cHggOHB4IDA7bGluZS1oZWlnaHQ6MS4yNTt0ZXh0LXNoYWRvdzowIDFweCAwIHJnYmEoMCwwLDAsMC4zKTtkaXNwbGF5Oi13ZWJraXQtYm94O292ZXJmbG93OmhpZGRlbjstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LXdlYmtpdC1saW5lLWNsYW1wOjI7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRtQ3JlYXRvckVuZHNjcmVlblNpemU2NDAgLnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRUaHVtYm5haWxUaXRsZXtmb250LXNpemU6MS40cmVtfS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTg1MyAueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFRodW1ibmFpbFRpdGxle2ZvbnQtc2l6ZToxLjZyZW07bWFyZ2luOjEwcHggMTJweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxMjgwIC55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50VGh1bWJuYWlsVGl0bGV7Zm9udC1zaXplOjJyZW07bWFyZ2luOjE0cHggMTZweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxOTIwIC55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50VGh1bWJuYWlsVGl0bGV7Zm9udC1zaXplOjIuNHJlbTttYXJnaW46MThweCAyMHB4fS55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50VGh1bWJuYWlse29iamVjdC1maXQ6Y292ZXJ9Lnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRUaW1lU3RhdHVze3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO3JpZ2h0OjB9Lnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRUaW1lU3RhdHVzIC55dEJhZGdlU2hhcGVIb3N0e2ZvbnQtc2l6ZTppbmhlcml0fS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTg1MyAueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFRpbWVTdGF0dXMgLnl0QmFkZ2VTaGFwZUhvc3R7cGFkZGluZzoycHggNHB4O21hcmdpbi1ib3R0b206MnB4O21hcmdpbi1yaWdodDoycHh9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplMTI4MCAueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFRpbWVTdGF0dXMgLnl0QmFkZ2VTaGFwZUhvc3R7cGFkZGluZzo2cHggOHB4O21hcmdpbi1ib3R0b206OHB4O21hcmdpbi1yaWdodDo4cHh9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplMTkyMCAueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFRpbWVTdGF0dXMgLnl0QmFkZ2VTaGFwZUhvc3R7cGFkZGluZzoxMHB4IDEycHg7bWFyZ2luLWJvdHRvbToxNnB4O21hcmdpbi1yaWdodDoxNnB4fS55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50VG9wR3JhZGllbnR7cG9zaXRpb246YWJzb2x1dGU7b3BhY2l0eTouODtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDE4MGRlZyxyZ2IoMCwwLDApLHRyYW5zcGFyZW50KX0ueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFBsYXlsaXN0TGVuZ3RoT3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDt3aWR0aDoxMDAlO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7cGFkZGluZzoycHg7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpfS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTg1MyAueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFBsYXlsaXN0TGVuZ3RoT3ZlcmxheXtwYWRkaW5nOjRweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxMjgwIC55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50UGxheWxpc3RMZW5ndGhPdmVybGF5e3BhZGRpbmc6OHB4fS55dG1DcmVhdG9yRW5kc2NyZWVuU2l6ZTE5MjAgLnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRQbGF5bGlzdExlbmd0aE92ZXJsYXl7cGFkZGluZzoxMnB4fS55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50UGxheWxpc3RMZW5ndGh7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpfS55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50UGxheWxpc3RJY29ue2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTttYXJnaW46MCAycHh9Lnl0bUNyZWF0b3JFbmRzY3JlZW5TaXplODUzIC55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50UGxheWxpc3RJY29ue21hcmdpbjowIDRweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxMjgwIC55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50UGxheWxpc3RJY29ue21hcmdpbjowIDhweH0ueXRtQ3JlYXRvckVuZHNjcmVlblNpemUxOTIwIC55dG1UaHVtYm5haWxFbmRzY3JlZW5FbGVtZW50UGxheWxpc3RJY29ue21hcmdpbjowIDEycHh9Lnl0bVRodW1ibmFpbEVuZHNjcmVlbkVsZW1lbnRTY3JpbXtiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ZGlzcGxheTpibG9jazt6LWluZGV4OjU7b3BhY2l0eTowO3RyYW5zaXRpb246YWxsIC4yc30ueXRtVGh1bWJuYWlsRW5kc2NyZWVuRWxlbWVudFNjcmltQWN0aXZle29wYWNpdHk6LjI1fS55dFBmcEF1dG9uYXZIb3N0e3BvaW50ZXItZXZlbnRzOm5vbmU7ZGlzcGxheTpibG9ja30ueXRQZnBBdXRvbmF2VmlzaWJsZXtwb2ludGVyLWV2ZW50czphdXRvO2JhY2tncm91bmQ6YmxhY2t9Lnl0UGZwQXV0b25hdlNjcmlte3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuNik7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjb2xvcjp3aGl0ZTtwb2ludGVyLWV2ZW50czphdXRvfS55dFBmcEF1dG9uYXZIZWFkZXJ7Zm9udC1zaXplOjE0cHg7bWFyZ2luLWJvdHRvbTo4cHh9Lnl0UGZwQXV0b25hdlRpdGxle2ZvbnQtc2l6ZToyNHB4O2ZvbnQtd2VpZ2h0OjcwMDttYXJnaW4tYm90dG9tOjRweH0ueXRQZnBBdXRvbmF2QnlsaW5le2ZvbnQtc2l6ZToxNnB4O21hcmdpbi1ib3R0b206MjRweH0ueXRQZnBBdXRvbmF2QnlsaW5lLC55dFBmcEF1dG9uYXZUaXRsZXttYXgtd2lkdGg6ODAlO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0ueXRQZnBBdXRvbmF2UGxheUJ1dHRvbntwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDo3MnB4O2hlaWdodDo3MnB4O21hcmdpbi1ib3R0b206MjRweDtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Ym9yZGVyOjA7YmFja2dyb3VuZDpub25lO2NvbG9yOndoaXRlfS55dFBmcEF1dG9uYXZSaW5ne3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDt3aWR0aDo3MnB4O2hlaWdodDo3MnB4fS55dFBmcEF1dG9uYXZQbGF5SWNvbnt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O2ZpbGw6d2hpdGV9Lnl0UGZwQ29udHJvbHNIb3N0e2Rpc3BsYXk6YmxvY2s7cG9pbnRlci1ldmVudHM6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZX0ueXRQZnBDb250cm9sc0hvc3QgOmZvY3VzLXZpc2libGV7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAycHggIzNlYTZmZn0ueXRQZnBDb250cm9sc092ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7cG9pbnRlci1ldmVudHM6YXV0bzt0b3VjaC1hY3Rpb246bWFuaXB1bGF0aW9ufS55dFBmcENvbnRyb2xzQ3JlYXRvckVuZHNjcmVlbkNvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjJ9Lnl0UGZwQ29udHJvbHNGYWRlSW57cG9pbnRlci1ldmVudHM6YXV0b30ueXRQZnBDb250cm9sc0JpZ2JvYXJkLC55dFBmcENvbnRyb2xzQm90dG9tQmFyLC55dFBmcENvbnRyb2xzR3JhZGllbnRUb3AsLnl0UGZwQ29udHJvbHNQcm9ncmVzc0JhckNvbnRhaW5lciwueXRQZnBDb250cm9sc1ZpZGVvVGl0bGV7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNXMsdmlzaWJpbGl0eSAuMjVzfS55dFBmcENvbnRyb2xzT3ZlcmxheTpub3QoLnl0UGZwQ29udHJvbHNGYWRlSW4pIC55dFBmcENvbnRyb2xzQmlnYm9hcmQsLnl0UGZwQ29udHJvbHNPdmVybGF5Om5vdCgueXRQZnBDb250cm9sc0ZhZGVJbikgLnl0UGZwQ29udHJvbHNCb3R0b21CYXIsLnl0UGZwQ29udHJvbHNPdmVybGF5Om5vdCgueXRQZnBDb250cm9sc0ZhZGVJbikgLnl0UGZwQ29udHJvbHNHcmFkaWVudFRvcCwueXRQZnBDb250cm9sc092ZXJsYXk6bm90KC55dFBmcENvbnRyb2xzRmFkZUluKSAueXRQZnBDb250cm9sc1Byb2dyZXNzQmFyQ29udGFpbmVyLC55dFBmcENvbnRyb2xzT3ZlcmxheTpub3QoLnl0UGZwQ29udHJvbHNGYWRlSW4pIC55dFBmcENvbnRyb2xzVmlkZW9UaXRsZXtvcGFjaXR5OjA7dmlzaWJpbGl0eTpoaWRkZW59Lnl0UGZwQ29udHJvbHNHcmFkaWVudFRvcHt3aWR0aDoxMDAlO3Bvc2l0aW9uOmFic29sdXRlO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHJnYmEoMCwwLDAsLjgpLHJnYmEoMCwwLDAsLjYpLHJnYmEoMCwwLDAsMCkpO3BvaW50ZXItZXZlbnRzOm5vbmU7aGVpZ2h0OjQ5cHg7ei1pbmRleDo1fS55dFBmcENvbnRyb2xzVmlkZW9UaXRsZXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7bWF4LXdpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7cGFkZGluZzoxMnB4O21hcmdpbjowOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtjb2xvcjp3aGl0ZTtmb250LXNpemU6MThweDtwb2ludGVyLWV2ZW50czpub25lO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0ueXRQZnBDb250cm9sc0xhcmdlUGxheUJ1dHRvbntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO2xlZnQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTt3aWR0aDo3NXB4O2hlaWdodDo3NXB4O2JvcmRlci1yYWRpdXM6NTAlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjdXJzb3I6cG9pbnRlcjt6LWluZGV4OjI7cGFkZGluZzowO2JvcmRlcjowO2JhY2tncm91bmQtY29sb3I6dW5zZXR9Lnl0UGZwQ29udHJvbHNMYXJnZVBsYXlCdXR0b25JY29uQmd7ZmlsbC1vcGFjaXR5Oi44O3RyYW5zaXRpb246ZmlsbCAuMXMgY3ViaWMtYmV6aWVyKC40LDAsMSwxKSxmaWxsLW9wYWNpdHkgLjFzIGN1YmljLWJlemllciguNCwwLDEsMSl9Lnl0UGZwQ29udHJvbHNPdmVybGF5OmhvdmVyIC55dFBmcENvbnRyb2xzTGFyZ2VQbGF5QnV0dG9uSWNvbkJne2ZpbGwtb3BhY2l0eToxO3RyYW5zaXRpb246ZmlsbCAuMXMgY3ViaWMtYmV6aWVyKDAsMCwuMiwxKSxmaWxsLW9wYWNpdHkgLjFzIGN1YmljLWJlemllcigwLDAsLjIsMSl9Lnl0UGZwQ29udHJvbHNWaWRlb1dhbGxFbmRzY3JlZW57cGFkZGluZzo0OHB4IDA7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O3otaW5kZXg6Mn0ueXRQZnBDb250cm9sc0F1dG9uYXZ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7ei1pbmRleDoyfS55dFBmcENvbnRyb2xzUHJvZ3Jlc3NCYXJDb250YWluZXJ7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjQwcHg7bGVmdDowO3JpZ2h0OjA7cG9pbnRlci1ldmVudHM6YXV0bzt6LWluZGV4OjN9Lnl0UGZwQ29udHJvbHNCb3R0b21CYXJ7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7aGVpZ2h0OjQwcHg7cGFkZGluZy1sZWZ0OjNweDtjb2xvcjp3aGl0ZTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjYpO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO3BvaW50ZXItZXZlbnRzOmF1dG87ei1pbmRleDoyfS55dFBmcENvbnRyb2xzTGVmdENvbnRyb2xzLC55dFBmcENvbnRyb2xzUmlnaHRDb250cm9sc3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dFBmcENvbnRyb2xzVm9sdW1lQ29udHJvbHN7bWF4LXdpZHRoOjExMnB4fS55dFBmcENvbnRyb2xzVGltZURpc3BsYXkueXRQZnBDb250cm9sc1RpbWVEaXNwbGF5e2NvbG9yOndoaXRlO2ZvbnQtc2l6ZToxLjRyZW07bWFyZ2luLWxlZnQ6OHB4Oy1tb3otdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfUBtZWRpYSAobWF4LXdpZHRoOjM0OXB4KXsueXRQZnBDb250cm9sc1RpbWVEaXNwbGF5Lnl0UGZwQ29udHJvbHNUaW1lRGlzcGxheXtkaXNwbGF5Om5vbmV9fUBtZWRpYSAobWF4LXdpZHRoOjI5OXB4KXsueXRQZnBDb250cm9sc0NhcHRpb25zQnV0dG9ue2Rpc3BsYXk6bm9uZX19QG1lZGlhIChtYXgtd2lkdGg6MjQ5cHgpey55dFBmcENvbnRyb2xzVm9sdW1lQ29udHJvbHMueXRQZnBDb250cm9sc1ZvbHVtZUNvbnRyb2xze2Rpc3BsYXk6bm9uZX19QG1lZGlhIChtYXgtd2lkdGg6MTk5cHgpey55dFBmcENvbnRyb2xzU2V0dGluZ3NCdXR0b257ZGlzcGxheTpub25lfX0ueXRQZnBDb250cm9sc0hpZGRlblNlZWtCdXR0b24ueXRQZnBDb250cm9sc0hpZGRlblNlZWtCdXR0b257aGVpZ2h0OjEycHg7d2lkdGg6MTJweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlfS55dFBmcEVuZHNjcmVlblZpZGVvUmVuZGVyZXJIb3N0e3Bvc2l0aW9uOnJlbGF0aXZlO2hlaWdodDoxMDAlO3dpZHRoOjEwMCU7Ym9yZGVyLXJhZGl1czo4cHg7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQtY29sb3I6IzAwMDtkaXNwbGF5OmJsb2NrfS55dFBmcEVuZHNjcmVlblZpZGVvUmVuZGVyZXJIb3N0OmZvY3VzLXZpc2libGUgLnl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlck92ZXJsYXksLnl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlckhvc3Q6Zm9jdXMtd2l0aGluIC55dFBmcEVuZHNjcmVlblZpZGVvUmVuZGVyZXJPdmVybGF5LC55dFBmcEVuZHNjcmVlblZpZGVvUmVuZGVyZXJIb3N0OmhvdmVyIC55dFBmcEVuZHNjcmVlblZpZGVvUmVuZGVyZXJPdmVybGF5e29wYWNpdHk6MX0ueXRQZnBFbmRzY3JlZW5WaWRlb1JlbmRlcmVyVGh1bWJuYWlse29iamVjdC1maXQ6Y292ZXI7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjB9Lnl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlck92ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQ7Y29sb3I6d2hpdGV9Lnl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlck92ZXJsYXlUaXRsZUJ5bGluZXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtoZWlnaHQ6NjBweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudChyZ2JhKDAsMCwwLC44KSxyZ2JhKDAsMCwwLC42KSA2MCUscmdiYSgwLDAsMCwwKSk7cGFkZGluZzo4cHh9Lnl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlclRpdGxle2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxOHB4O2NvbG9yOndoaXRlfS55dFBmcEVuZHNjcmVlblZpZGVvUmVuZGVyZXJCeWxpbmV7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NDAwO2xpbmUtaGVpZ2h0OjE2cHg7bWFyZ2luLXRvcDo0cHg7Y29sb3I6d2hpdGV9Lnl0UGZwRW5kc2NyZWVuVmlkZW9SZW5kZXJlckR1cmF0aW9ue3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo4cHg7cmlnaHQ6OHB4O2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuOCk7Ym9yZGVyLXJhZGl1czo0cHg7cGFkZGluZzoycHggNHB4O2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxMnB4O2NvbG9yOndoaXRlfS55dFBmcE1vcmVWaWRlb3NIb3N0e2Rpc3BsYXk6YmxvY2s7cG9pbnRlci1ldmVudHM6bm9uZX1AbWVkaWEgKG1heC1oZWlnaHQ6Mjg5cHgpey55dFBmcE1vcmVWaWRlb3NIb3N0e2Rpc3BsYXk6bm9uZX19Lnl0UGZwTW9yZVZpZGVvc092ZXJsYXl7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjQ4cHg7bGVmdDoxMnB4O3JpZ2h0OjEycHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDEyLDEyLDEyLC44KTt6LWluZGV4OjI7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3BvaW50ZXItZXZlbnRzOmF1dG87Ym9yZGVyLXJhZGl1czoxMnB4O3BhZGRpbmc6OHB4IDA7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94fS55dFBmcE1vcmVWaWRlb3NIZWFkZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7d2lkdGg6MTAwJTtwYWRkaW5nOjAgMTZweDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lnl0UGZwTW9yZVZpZGVvc1RpdGxle2NvbG9yOndoaXRlO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoyMHB4O21hcmdpbjowO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0ueXRQZnBNb3JlVmlkZW9zQ2xvc2VCdXR0b257cGFkZGluZzo0cHg7bWFyZ2luLXJpZ2h0Oi00cHg7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDpub25lO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtib3JkZXItcmFkaXVzOjUwJX0ueXRQZnBNb3JlVmlkZW9zQ2xvc2VCdXR0b246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC4xKX0ueXRQZnBNb3JlVmlkZW9zQ2xvc2VJY29ue2NvbG9yOndoaXRlO2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9Lnl0UGZwTW9yZVZpZGVvc1ZpZGVvTGlzdENvbnRhaW5lcntwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlO3BhZGRpbmc6MCAxMnB4IDRweCAxMnB4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7b3ZlcmZsb3c6aGlkZGVufS55dFBmcE1vcmVWaWRlb3NWaWRlb0xpc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7b3ZlcmZsb3cteDphdXRvO2hlaWdodDoxMDAlOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtzY3JvbGxiYXItd2lkdGg6bm9uZTtzY3JvbGwtYmVoYXZpb3I6c21vb3RofS55dFBmcE1vcmVWaWRlb3NWaWRlb0xpc3Q6Oi13ZWJraXQtc2Nyb2xsYmFye2Rpc3BsYXk6bm9uZX0ueXRQZnBNb3JlVmlkZW9zVmlkZW9MaXN0ey1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MTtzY3JvbGwtc25hcC10eXBlOnggbWFuZGF0b3J5fS55dFBmcE1vcmVWaWRlb3NWaWRlb0l0ZW17aGVpZ2h0OjA7bWFyZ2luOjAgNnB4Oy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtiYWNrZ3JvdW5kOmJsYWNrO3Njcm9sbC1zbmFwLWFsaWduOnN0YXJ0O3BhZGRpbmctYm90dG9tOjEzNXB4O3dpZHRoOjI0MHB4O21pbi13aWR0aDoyNDBweH1AbWVkaWEgKG1heC13aWR0aDoxMDQwcHgpey55dFBmcE1vcmVWaWRlb3NWaWRlb0l0ZW17cGFkZGluZy1ib3R0b206Y2FsYygxNC4wNjI1JSAtIDYuNzVweCk7d2lkdGg6Y2FsYygyNSUgLSAxMnB4KTttaW4td2lkdGg6Y2FsYygyNSUgLSAxMnB4KX19QG1lZGlhIChtYXgtd2lkdGg6NzgwcHgpey55dFBmcE1vcmVWaWRlb3NWaWRlb0l0ZW17cGFkZGluZy1ib3R0b206Y2FsYygxOC41NjI1JSAtIDMuMzc1cHgpO3dpZHRoOmNhbGMoMzMlIC0gNnB4KTttaW4td2lkdGg6Y2FsYygzMyUgLSA2cHgpfX1AbWVkaWEgKG1heC13aWR0aDo1MzRweCl7Lnl0UGZwTW9yZVZpZGVvc1ZpZGVvSXRlbXtwYWRkaW5nLWJvdHRvbTpjYWxjKDI4LjEyNSUgLSAzLjM3NXB4KTt3aWR0aDpjYWxjKDUwJSAtIDZweCk7bWluLXdpZHRoOmNhbGMoNTAlIC0gNnB4KX19QG1lZGlhIChtYXgtd2lkdGg6Mjg4cHgpey55dFBmcE1vcmVWaWRlb3NWaWRlb0l0ZW17cGFkZGluZy1ib3R0b206Y2FsYyg1Ni4yNSUgLSAzLjM3NXB4KTt3aWR0aDpjYWxjKDEwMCUgLSA2cHgpO21pbi13aWR0aDpjYWxjKDEwMCUgLSA2cHgpfX0ueXRQZnBNb3JlVmlkZW9zVmlkZW9JdGVtOmZpcnN0LWNoaWxke21hcmdpbi1sZWZ0OmF1dG99Lnl0UGZwTW9yZVZpZGVvc1ZpZGVvSXRlbTpsYXN0LWNoaWxke21hcmdpbi1yaWdodDphdXRvfS55dFBmcE1vcmVWaWRlb3NQYWRkbGVMZWZ0LC55dFBmcE1vcmVWaWRlb3NQYWRkbGVSaWdodHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3dpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDMzLDMzLDMzLC44KTtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjUwJTtjb2xvcjp3aGl0ZTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ei1pbmRleDoyO2JveC1zaGFkb3c6MCA0cHggNHB4IHJnYmEoMCwwLDAsLjI1KX0ueXRQZnBNb3JlVmlkZW9zUGFkZGxlTGVmdDpob3ZlciwueXRQZnBNb3JlVmlkZW9zUGFkZGxlUmlnaHQ6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2IoNTAsNTAsNTApfS55dFBmcE1vcmVWaWRlb3NQYWRkbGVMZWZ0e2xlZnQ6MH0ueXRQZnBNb3JlVmlkZW9zUGFkZGxlUmlnaHR7cmlnaHQ6MH0ueXRQZnBNb3JlVmlkZW9zUGFkZGxlSWNvbntoZWlnaHQ6MjRweDt3aWR0aDoyNHB4fS55dFBmcE1vcmVWaWRlb3NNb3JlVmlkZW9zQnV0dG9ue3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTo1NnB4O2xlZnQ6MTJweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjYpO2NvbG9yOndoaXRlO2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6MThweDtwYWRkaW5nOjhweCAxNnB4O2ZvbnQtc2l6ZToxM3B4O2ZvbnQtd2VpZ2h0OjUwMDtjdXJzb3I6cG9pbnRlcjt6LWluZGV4OjU7cG9pbnRlci1ldmVudHM6YXV0bzt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9Lnl0UGZwTW9yZVZpZGVvc01vcmVWaWRlb3NCdXR0b246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC4xKX0ueXRQZnBFbmRzY3JlZW5QbGF5bGlzdFJlbmRlcmVySG9zdHtwb3NpdGlvbjpyZWxhdGl2ZTtmbGV4LXNocmluazowO2hlaWdodDoxMDAlO3dpZHRoOjEwMCU7Ym9yZGVyLXJhZGl1czo4cHg7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQtY29sb3I6IzAwMDtkaXNwbGF5OmJsb2NrfS55dFBmcEVuZHNjcmVlblBsYXlsaXN0UmVuZGVyZXJIb3N0OmZvY3VzLXZpc2libGUgLnl0UGZwRW5kc2NyZWVuUGxheWxpc3RSZW5kZXJlck92ZXJsYXksLnl0UGZwRW5kc2NyZWVuUGxheWxpc3RSZW5kZXJlckhvc3Q6Zm9jdXMtd2l0aGluIC55dFBmcEVuZHNjcmVlblBsYXlsaXN0UmVuZGVyZXJPdmVybGF5LC55dFBmcEVuZHNjcmVlblBsYXlsaXN0UmVuZGVyZXJIb3N0OmhvdmVyIC55dFBmcEVuZHNjcmVlblBsYXlsaXN0UmVuZGVyZXJPdmVybGF5e29wYWNpdHk6MX0ueXRQZnBFbmRzY3JlZW5QbGF5bGlzdFJlbmRlcmVyVGh1bWJuYWlse3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7b2JqZWN0LWZpdDpjb3Zlcn0ueXRQZnBFbmRzY3JlZW5QbGF5bGlzdFJlbmRlcmVyT3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBlYXNlLWluLW91dDtjb2xvcjp3aGl0ZX0ueXRQZnBFbmRzY3JlZW5QbGF5bGlzdFJlbmRlcmVyT3ZlcmxheVRpdGxle3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO2hlaWdodDo2MHB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHJnYmEoMCwwLDAsLjgpLHJnYmEoMCwwLDAsLjYpIDYwJSxyZ2JhKDAsMCwwLDApKTtwYWRkaW5nOjhweH0ueXRQZnBFbmRzY3JlZW5QbGF5bGlzdFJlbmRlcmVyVGl0bGV7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE4cHg7bWF4LWhlaWdodDozNnB4O2NvbG9yOndoaXRlO292ZXJmbG93OmhpZGRlbn0ueXRQZnBFbmRzY3JlZW5QbGF5bGlzdFJlbmRlcmVyQm90dG9tT3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjgpO2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp3aGl0ZTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0UGZwRW5kc2NyZWVuUGxheWxpc3RSZW5kZXJlckljb257ZmlsbDpjdXJyZW50Q29sb3I7d2lkdGg6MjBweDtoZWlnaHQ6MjBweDttYXJnaW4tcmlnaHQ6NHB4fS55dFBmcFZpZGVvV2FsbEVuZHNjcmVlbkhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3JpZ2h0OjB9Lnl0UGZwVmlkZW9XYWxsRW5kc2NyZWVuVmlzaWJsZXtib3R0b206MDtiYWNrZ3JvdW5kLWNvbG9yOnJnYigxMiwxMiwxMil9Lnl0UGZwVmlkZW9XYWxsRW5kc2NyZWVuSXNPYnNjdXJlZHt2aXNpYmlsaXR5OmhpZGRlbn0ueXRQZnBWaWRlb1dhbGxFbmRzY3JlZW5WaWRlb0xpc3RDb250YWluZXJ7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjE7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtwb2ludGVyLWV2ZW50czphdXRvO3BhZGRpbmc6MTJweDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lnl0UGZwVmlkZW9XYWxsRW5kc2NyZWVuVmlkZW9MaXN0e2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwYWRkaW5nOjB9Lnl0UGZwVmlkZW9XYWxsRW5kc2NyZWVuUGFkZGxlTGVmdCwueXRQZnBWaWRlb1dhbGxFbmRzY3JlZW5QYWRkbGVSaWdodHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3dpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDMzLDMzLDMzLC45KTtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjUwJTtjb2xvcjp3aGl0ZTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ei1pbmRleDoyO2JveC1zaGFkb3c6MCA0cHggNHB4IHJnYmEoMCwwLDAsLjI1KX0ueXRQZnBWaWRlb1dhbGxFbmRzY3JlZW5QYWRkbGVMZWZ0OmhvdmVyLC55dFBmcFZpZGVvV2FsbEVuZHNjcmVlblBhZGRsZVJpZ2h0OmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiKDUwLDUwLDUwKX0ueXRQZnBWaWRlb1dhbGxFbmRzY3JlZW5QYWRkbGVMZWZ0e2xlZnQ6OHB4fS55dFBmcFZpZGVvV2FsbEVuZHNjcmVlblBhZGRsZVJpZ2h0e3JpZ2h0OjhweH0ueXRQZnBWaWRlb1dhbGxFbmRzY3JlZW5QYWRkbGVJY29ue2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9Lnl0UGZwVmlkZW9XYWxsRW5kc2NyZWVuVmlkZW9JdGVte3Bvc2l0aW9uOmFic29sdXRlOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveH0ueXRQbGF5ZXJDb250cm9sc1BsYXllckFjdGlvbkluZGljYXRvckhvc3R7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7cG9pbnRlci1ldmVudHM6bm9uZTt6LWluZGV4Ojd9Lnl0UGxheWVyQ29udHJvbHNQbGF5ZXJBY3Rpb25JbmRpY2F0b3JBY3Rpb257d2lkdGg6NjBweDtoZWlnaHQ6NjBweDtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC42KTtib3JkZXItcmFkaXVzOjUwJTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7b3BhY2l0eTowO2FuaW1hdGlvbjphY3Rpb24tZmFkZS1vdXQgLjVzIGxpbmVhciAxIG5vcm1hbCBmb3J3YXJkc30ueXRQbGF5ZXJDb250cm9sc1BsYXllckFjdGlvbkluZGljYXRvckljb257d2lkdGg6MzZweDtoZWlnaHQ6MzZweDtmaWxsOiNmZmZ9QGtleWZyYW1lcyBhY3Rpb24tZmFkZS1vdXR7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGUoMil9fS55dHdQbGF5ZXJUaW1lRGlzcGxheUhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtjb2xvcjojZmZmO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW59Lnl0d1BsYXllclRpbWVEaXNwbGF5VGltZUNodW5rc3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dHdQbGF5ZXJUaW1lRGlzcGxheUxpdmVEb3Q6YmVmb3Jle2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6NnB4O3dpZHRoOjZweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTttYXJnaW4tcmlnaHQ6NHB4fS55dHdQbGF5ZXJUaW1lRGlzcGxheUxpdmVEb3QueXR3UGxheWVyVGltZURpc3BsYXlMaXZlSGVhZDpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDIyNSwwLDQ1LDAuOSk7b3BhY2l0eToxfS55dHdQbGF5ZXJUaW1lRGlzcGxheVRpbWVEZWxpbWl0ZXJ7Y29sb3I6I2ZmZjttYXJnaW46MCA0cHg7b3BhY2l0eTouN30ueXR3UGxheWVyVGltZURpc3BsYXlUaW1lU2Vjb25ke29wYWNpdHk6Ljd9Lnl0d1BsYXllclRpbWVEaXNwbGF5Q2hhcHRlclRleHR7bWFyZ2luLWxlZnQ6OHB4fS55dHdQbGF5ZXJUaW1lRGlzcGxheVBsYXllckJhckFjdGlvbkNvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dHdQbGF5ZXJUaW1lRGlzcGxheVBsYXllckJhckJ1dHRvbi55dHdQbGF5ZXJUaW1lRGlzcGxheVBpbGx7bWFyZ2luOjAgMCAwIDhweH0ueXR3UGxheWVyVGltZURpc3BsYXlQbGF5ZXJCYXJCdXR0b257b3ZlcmZsb3c6aGlkZGVuO21heC13aWR0aDoyNDBweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dHdQbGF5ZXJUaW1lRGlzcGxheUNoZXZyb257Y29sb3I6I2ZmZjtoZWlnaHQ6MTZweDt3aWR0aDoxNnB4O21hcmdpbi1yaWdodDotNHB4fS55dHdQbGF5ZXJUaW1lRGlzcGxheVBpbGx7aGVpZ2h0OjI0cHg7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O3BhZGRpbmc6NHB4IDZweDtib3JkZXItcmFkaXVzOjE2cHg7Zm9udC1zaXplOjEuNHJlbTtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4zKTt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9Lnl0d1BsYXllclRpbWVEaXNwbGF5UGlsbCBidXR0b257dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfS55dHdQbGF5ZXJUaW1lRGlzcGxheVBpbGwgc3Zne2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKX0ueXR3UGxheWVyVGltZURpc3BsYXlQaWxse21hcmdpbi1sZWZ0OjE2cHh9QG1lZGlhIChtYXgtaGVpZ2h0OjIyMXB4KXsueXR3UGxheWVyVGltZURpc3BsYXlGdWxsc2NyZWVuQ29udHJvbHNBbHdheXNPbntkaXNwbGF5Om5vbmV9fS55dHdQbGF5ZXJUaW1lRGlzcGxheVNjcmVlblJlYWRlck9ubHl7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MXB4O2hlaWdodDoxcHg7cGFkZGluZzowO21hcmdpbjotMXB4O292ZXJmbG93OmhpZGRlbjtjbGlwOnJlY3QoMCwwLDAsMCk7d2hpdGUtc3BhY2U6bm93cmFwO2JvcmRlci13aWR0aDowfS55dHdQbGF5ZXJTZWVrT3ZlcmxheUhvc3R7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3JpZ2h0OjA7Ym90dG9tOjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3BvaW50ZXItZXZlbnRzOm5vbmU7ZGlyZWN0aW9uOmx0cn0ueXR3UGxheWVyU2Vla092ZXJsYXlBbmltYXRpb257cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO29wYWNpdHk6MH0ueXR3UGxheWVyU2Vla092ZXJsYXlBbmltYXRpb25CYWNre2xlZnQ6NDhweH0ueXR3UGxheWVyU2Vla092ZXJsYXlBbmltYXRpb25Gb3J3YXJke3JpZ2h0OjQ4cHh9Lnl0d1BsYXllclNlZWtPdmVybGF5RHVyYXRpb257Y29sb3I6I2ZmZjt0ZXh0LXNoYWRvdzowIDAgMXB4IHJnYmEoMCwwLDAsMC44KTt0cmFuc2Zvcm0tb3JpZ2luOmNlbnRlcjtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyLjRyZW07bGluZS1oZWlnaHQ6My4ycmVtO2ZvbnQtd2VpZ2h0OjcwMH1AbWVkaWEgKG1heC13aWR0aDo1MjcuOXB4KXsueXR3UGxheWVyU2Vla092ZXJsYXlEdXJhdGlvbntmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToycmVtO2xpbmUtaGVpZ2h0OjIuOHJlbTtmb250LXdlaWdodDo3MDB9fS55dHdQbGF5ZXJTZWVrT3ZlcmxheUFuaW1hdGlvbkJhY2sgLnl0d1BsYXllclNlZWtPdmVybGF5QXJyb3d7bWFyZ2luLXJpZ2h0OjIwcHh9Lnl0d1BsYXllclNlZWtPdmVybGF5QW5pbWF0aW9uRm9yd2FyZCAueXR3UGxheWVyU2Vla092ZXJsYXlBcnJvd3ttYXJnaW4tbGVmdDoyMHB4fS55dHdQbGF5ZXJTZWVrT3ZlcmxheUFycm93IC55dHdQbGF5ZXJTZWVrT3ZlcmxheUFycm93U3Zne2Rpc3BsYXk6YmxvY2t9Lnl0d1BsYXllclNlZWtPdmVybGF5QXJyb3cgLnl0d1BsYXllclNlZWtPdmVybGF5QXJyb3dQYXRoe2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgLjVweCByZ2JhKDAsMCwwLDAuOCkpfS55dHdQbGF5ZXJTZWVrT3ZlcmxheUFycm93UGVyc2lzdGVudHtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9Lnl0d1BsYXllclNlZWtPdmVybGF5QXJyb3dBZGRpdGlvbmFse3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7dHJhbnNsYXRlOjAgLTUwJX0ueXR3UGxheWVyU2Vla092ZXJsYXlBbmltYXRpb25CYWNrIC55dHdQbGF5ZXJTZWVrT3ZlcmxheUFycm93QWRkaXRpb25hbHtsZWZ0OjB9Lnl0d1BsYXllclNlZWtPdmVybGF5QW5pbWF0aW9uRm9yd2FyZCAueXR3UGxheWVyU2Vla092ZXJsYXlBcnJvd0FkZGl0aW9uYWx7cmlnaHQ6MH0ueXR3UGxheWVyRW5kc2NyZWVuSG9zdHtkaXNwbGF5OmJsb2NrfS55dHdQbGF5ZXJFbmRzY3JlZW5Db250YWluZXJ7Y29sb3I6I2ZmZn0ueXR3UGxheWVyRW5kc2NyZWVuUGxheWVyRW5kc2NyZWVue3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjMpO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXR3UGxheWVyRW5kc2NyZWVuUGxheWVyRW5kc2NyZWVuW2RhdGEtaGFzLXRpbWVyLWNvdW50ZG93bj10cnVlXXtiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7cGFkZGluZzo4cHggMTZweDttYXJnaW46MCBhdXRvO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfUBtZWRpYSAobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7Lnl0d1BsYXllckVuZHNjcmVlblBsYXllckVuZHNjcmVlbltkYXRhLWhhcy10aW1lci1jb3VudGRvd249dHJ1ZV17cGFkZGluZzo4cHh9fVtkaXI9cnRsXSAueXR3UGxheWVyRW5kc2NyZWVuUGxheWVyRW5kc2NyZWVuW2RhdGEtaGFzLXRpbWVyLWNvdW50ZG93bj10cnVlXXtkaXJlY3Rpb246cnRsfS55dHdQbGF5ZXJFbmRzY3JlZW5Ub3BQYW5lbHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO3dpZHRoOjEwMCU7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufUBtZWRpYSAobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7Lnl0d1BsYXllckVuZHNjcmVlblRvcFBhbmVse2Rpc3BsYXk6bm9uZX19Lnl0d1BsYXllckVuZHNjcmVlbkhlYWRlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6MTZweH0ueXR3UGxheWVyRW5kc2NyZWVuQ291bnRkb3duQ29udGFpbmVye2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTttYXJnaW4tYm90dG9tOjEycHg7bWFyZ2luLXRvcDo0cHh9QG1lZGlhIChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKSwobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KXsueXR3UGxheWVyRW5kc2NyZWVuQ291bnRkb3duQ29udGFpbmVye21hcmdpbi1ib3R0b206OHB4fX0ueXR3UGxheWVyRW5kc2NyZWVuQ291bnRkb3duTnVtYmVye2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDtjb2xvcjojZmZmfS55dHdQbGF5ZXJFbmRzY3JlZW5DdWVkVmlkZW9Db250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuOy1tb3otYm94LWFsaWduOnN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnR9Lnl0d1BsYXllckVuZHNjcmVlbkN1ZWRWaWRlb0NvbnRhaW5lcjpmaXJzdC1jaGlsZHttYXJnaW4tcmlnaHQ6MTJweH0ueXR3UGxheWVyRW5kc2NyZWVuQ3VlZFRodW1ibmFpbE92ZXJsYXl7d2lkdGg6NTAlO2ZsZXgtYmFzaXM6Y2FsYyg1MCUgLSA2cHgpO3Bvc2l0aW9uOnJlbGF0aXZlfUBtZWRpYSAobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7Lnl0d1BsYXllckVuZHNjcmVlbkN1ZWRUaHVtYm5haWxPdmVybGF5e2ZsZXgtYmFzaXM6Y2FsYyg1MCUgLSA0cHgpfX0ueXR3UGxheWVyRW5kc2NyZWVuQ3VlZFRodW1ibmFpbE92ZXJsYXk+Lnl0d1BsYXllckVuZHNjcmVlblRodW1ibmFpbENvbnRhaW5lcnt3aWR0aDoxMDAlO2hlaWdodDphdXRvO3BhZGRpbmctYm90dG9tOjU2LjI1JX0ueXR3UGxheWVyRW5kc2NyZWVuVGh1bWJuYWlsT3ZlcmxheXN7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7cmlnaHQ6MH0ueXR3UGxheWVyRW5kc2NyZWVuVmlkZW9JbmZve3dpZHRoOjUwJTtmbGV4LWJhc2lzOmNhbGMoNTAlIC0gNnB4KX1AbWVkaWEgKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpey55dHdQbGF5ZXJFbmRzY3JlZW5WaWRlb0luZm97ZmxleC1iYXNpczpjYWxjKDUwJSAtIDRweCl9fS55dHdQbGF5ZXJFbmRzY3JlZW5WaWRlb1RpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0d1BsYXllckVuZHNjcmVlblZpZGVvVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXR3UGxheWVyRW5kc2NyZWVuVmlkZW9UaXRsZXttYXgtaGVpZ2h0OjRyZW07Y29sb3I6I2ZmZjttYXJnaW4tYm90dG9tOjRweH0ueXR3UGxheWVyRW5kc2NyZWVuVmlkZW9BdXRob3J7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpfS55dHdQbGF5ZXJFbmRzY3JlZW5CdXR0b25Db250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS55dHdQbGF5ZXJFbmRzY3JlZW5BY3Rpb25CdXR0b257d2lkdGg6MTAwJX0ueXR3UGxheWVyRW5kc2NyZWVuQWN0aW9uQnV0dG9uPjpmaXJzdC1jaGlsZHt3aWR0aDoxMDAlfS55dHdQbGF5ZXJFbmRzY3JlZW5BY3Rpb25CdXR0b246Zmlyc3QtY2hpbGR7bWFyZ2luLXJpZ2h0OjEycHh9Lnl0bUN1c3RvbUNvbnRyb2xIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0bUN1c3RvbUNvbnRyb2xIb3N0IDpmb2N1cy12aXNpYmxle2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMnB4ICMzZWE2ZmZ9Lnl0bUVtYmVkc0luZm9QYW5lbFJlbmRlcmVySG9zdHtjb2xvcjojZmZmO3BhZGRpbmc6MTJweCAwIDAgMTJweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjI7dG9wOjUycHg7bWluLXdpZHRoOjEzMHB4O21heC13aWR0aDptaW4oNTAlIC0gNjRweCwyNzJweCl9Lnl0bUVtYmVkc0luZm9QYW5lbFJlbmRlcmVySG9zdEF1dG9oaWRle2FuaW1hdGlvbjpmYWRlIDNzIGVhc2UtaW4gMTBzIGZvcndhcmRzO2FuaW1hdGlvbi1maWxsLW1vZGU6Zm9yd2FyZHN9QG1lZGlhIChtYXgtYXNwZWN0LXJhdGlvOjMvNCl7Lnl0bUVtYmVkc0luZm9QYW5lbFJlbmRlcmVySG9zdFRvcENvbnRyb2xzU3RhY2tlZEluUG9ydHJhaXR7dG9wOjExMnB4fX0ueXRtRW1iZWRzSW5mb1BhbmVsUmVuZGVyZXJIaWRkZW57ZGlzcGxheTpub25lfS55dG1FbWJlZHNJbmZvUGFuZWxSZW5kZXJlckJ1dHRvbnstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3RleHQtYWxpZ246bGVmdDtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpO2JvcmRlci1sZWZ0OjRweCBzb2xpZCAjM2VhNmZmO2JvcmRlci1yYWRpdXM6NHB4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O21heC13aWR0aDozMTJweDtwYWRkaW5nOjhweDt0ZXh0LWRlY29yYXRpb246bm9uZX0ueXRtRW1iZWRzSW5mb1BhbmVsUmVuZGVyZXJUZXh0e2ZvbnQtc2l6ZToxLjNyZW07cGFkZGluZy1sZWZ0OjhweDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo0cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dG1FbWJlZHNJbmZvUGFuZWxSZW5kZXJlclRleHR7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRtRW1iZWRzSW5mb1BhbmVsUmVuZGVyZXJUZXh0e21heC1oZWlnaHQ6NHJlbX1Aa2V5ZnJhbWVzIGZhZGV7dG97b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmV9fS55dEVtYmVkc0luZm9QYW5lbERldGFpbHNWaWV3TW9kZWxCb2R5VGV4dHtwYWRkaW5nOjAgMTJweCAxMnB4IDEycHg7Y29sb3I6IzYwNjA2MDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDB9Lnl0QXV0b2Nyb3BCdXR0b25Ib3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MTAwJTttYXJnaW4tdG9wOjYwcHh9Lnl0QXV0b2Nyb3BCdXR0b25WaXNpYmxle3Zpc2liaWxpdHk6dmlzaWJsZX0ueXRBdXRvY3JvcEJ1dHRvbkhpZGRlbnt2aXNpYmlsaXR5OmhpZGRlbn0ueXRBdXRvY3JvcEJ1dHRvbkF1dG9Dcm9wQnV0dG9ue2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjcpO2JhY2tncm91bmQtY29sb3I6cmdiYSg0MCw0MCw0MCwwLjYpO2JvcmRlci1yYWRpdXM6MThweH0ueXRGdWxsc2NyZWVuVmlkZW9SZWNvbW1lbmRhdGlvbnNIb3N0ey1tb3otYm94LWZsZXg6MTtmbGV4OjE7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7b3ZlcmZsb3cteDphdXRvfUBtZWRpYSBub3QgKHBvaW50ZXI6ZmluZSl7Lnl0RnVsbHNjcmVlblZpZGVvUmVjb21tZW5kYXRpb25zSG9zdHstbXMtb3ZlcmZsb3ctc3R5bGU6bm9uZTtzY3JvbGxiYXItd2lkdGg6bm9uZX0ueXRGdWxsc2NyZWVuVmlkZW9SZWNvbW1lbmRhdGlvbnNIb3N0Ojotd2Via2l0LXNjcm9sbGJhcntkaXNwbGF5Om5vbmV9fUBtZWRpYSAocG9pbnRlcjpmaW5lKXsueXRGdWxsc2NyZWVuVmlkZW9SZWNvbW1lbmRhdGlvbnNIb3N0e292ZXJmbG93LXk6YXV0b30ueXRGdWxsc2NyZWVuVmlkZW9SZWNvbW1lbmRhdGlvbnNIb3N0Ojotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDoxNnB4fS55dEZ1bGxzY3JlZW5WaWRlb1JlY29tbWVuZGF0aW9uc0hvc3Q6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2hlaWdodDo1NnB4O2JvcmRlci1yYWRpdXM6OHB4O2JvcmRlcjo0cHggc29saWQgdHJhbnNwYXJlbnQ7YmFja2dyb3VuZC1jbGlwOmNvbnRlbnQtYm94O2JhY2tncm91bmQtY29sb3I6IzYwNjA2MH0ueXRGdWxsc2NyZWVuVmlkZW9SZWNvbW1lbmRhdGlvbnNIb3N0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiM5MDkwOTB9fS55dEZ1bGxzY3JlZW5WaWRlb1JlY29tbWVuZGF0aW9uc1JlY29tbWVuZGF0aW9ue3dpZHRoOjIwMHB4O21pbi13aWR0aDoyMDBweDttYXJnaW46MCA4cHg7Y29sb3I6I2ZmZn0ueXR3UGxheWVyRnVsbHNjcmVlbkNvbnRyb2xzSG9zdHtkaXNwbGF5OmJsb2NrfS55dHdQbGF5ZXJGdWxsc2NyZWVuVG9wQ29udHJvbHNIb3N0e3BhZGRpbmc6MTJweDtjb2xvcjojZmZmO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO3otaW5kZXg6Nn0ueXR3UGxheWVyRnVsbHNjcmVlblRvcENvbnRyb2xzRnVsbHNjcmVlbkNvbnRyb2xzVmlkZW9UaXRsZXttYXJnaW46MDtjb2xvcjojZmZmfS55dHdQbGF5ZXJGdWxsc2NyZWVuVG9wQ29udHJvbHNGdWxsc2NyZWVuQ2xvc2VCdXR0b25XcmFwcGVye21hcmdpbi10b3A6LThweDttYXJnaW4tbGVmdDphdXRvfS55dG1QYWlkQ29udGVudE92ZXJsYXlIb3N0e2NvbG9yOiNmZmY7YW5pbWF0aW9uOmZhZGUgM3MgZWFzZS1pbiAyMHMgZm9yd2FyZHM7YW5pbWF0aW9uLWZpbGwtbW9kZTpmb3J3YXJkcztwYWRkaW5nOjEycHggMCAxMnB4IDEycHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9Lnl0bVBhaWRDb250ZW50T3ZlcmxheUhpZGRlbntkaXNwbGF5Om5vbmV9Lnl0bVBhaWRDb250ZW50T3ZlcmxheUxpbmt7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpO2JvcmRlci1sZWZ0OjRweCBzb2xpZCAjM2VhNmZmO2JvcmRlci1yYWRpdXM6NHB4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O21heC13aWR0aDozMTJweDtwYWRkaW5nOjhweDt0ZXh0LWRlY29yYXRpb246bm9uZX0ueXRtUGFpZENvbnRlbnRPdmVybGF5VGV4dHtmb250LXNpemU6MS4zcmVtO3BhZGRpbmctbGVmdDo4cHh9QGtleWZyYW1lcyBmYWRle3Rve29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lfX0ucGxheWVyLWNvbnRyb2xzLWJvdHRvbXtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbjtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MzBweDt6LWluZGV4OjI7aGVpZ2h0OjQ0cHh9LnBsYXllci1jb250cm9scy1ib3R0b20gLnBsYXllci1ib3R0b20tY29udHJvbHMtZnVsbHNjcmVlbi1pY29uLXZpc2libGUtYXJlYXstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7d2lkdGg6MzZweDtoZWlnaHQ6MzZweDtib3JkZXItcmFkaXVzOjUwJTtwYWRkaW5nOjZweDtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4zKTt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9LnBsYXllci1jb250cm9scy1ib3R0b20gLnBsYXllci1ib3R0b20tY29udHJvbHMtZnVsbHNjcmVlbi1pY29uLXZpc2libGUtYXJlYSBidXR0b257dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfS5wbGF5ZXItY29udHJvbHMtYm90dG9tIC5wbGF5ZXItYm90dG9tLWNvbnRyb2xzLWZ1bGxzY3JlZW4taWNvbi12aXNpYmxlLWFyZWEgc3Zne2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKX0ucGxheWVyLWNvbnRyb2xzLWJvdHRvbS5wbGF5ZXItY29udHJvbHMtYm90dG9tLWxlZnR7bGVmdDoxMnB4O3JpZ2h0Ojc4cHh9LnBsYXllci1jb250cm9scy1ib3R0b20ucGxheWVyLWNvbnRyb2xzLWJvdHRvbS1yaWdodHtyaWdodDoyNHB4fS5wbGF5ZXItY29udHJvbHMtYm90dG9tIC5pY29uLWJ1dHRvbi5mdWxsc2NyZWVuLWljb257ZGlzcGxheTpibG9jazstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7aGVpZ2h0OjQ4cHg7d2lkdGg6NDhweDtwYWRkaW5nOjZweH1ib2R5W2ZhdXgtZnVsbHNjcmVlbj10cnVlXSAucGxheWVyLWNvbnRyb2xzLWJvdHRvbXtib3R0b206NDRweH1ib2R5W2ZhdXgtZnVsbHNjcmVlbj10cnVlXSAuZW5hYmxlLWZ1bGxzY3JlZW4tY29udHJvbHMgLnBsYXllci1jb250cm9scy1ib3R0b217Ym90dG9tOjc0cHh9Ym9keVtmYXV4LWZ1bGxzY3JlZW49dHJ1ZV0gLmVuYWJsZS1mdWxsc2NyZWVuLWNvbnRyb2xzLmZzLXdhdGNoLXN5c3RlbSAucGxheWVyLWNvbnRyb2xzLWJvdHRvbXtib3R0b206OTRweH0ueXR3UGxheWVyTWlkZGxlQ29udHJvbHNIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4fS55dHdQbGF5ZXJNaWRkbGVDb250cm9sc0ExMXlTZWVrQnV0dG9ue3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MDtoZWlnaHQ6MTJweDt3aWR0aDoxMnB4fXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLW1pZGRsZXtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt3aWR0aDoxMDAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3otaW5kZXg6Nn15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUucHJldmVudC1jb250cm9scy1jb2xsaXNpb257d2lkdGg6LW1vei1maXQtY29udGVudDt3aWR0aDpmaXQtY29udGVudDtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSl9eXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtbWlkZGxlIC5pY29uLWJ1dHRvbntoZWlnaHQ6NDhweDt3aWR0aDo0OHB4O3BhZGRpbmc6NnB4O2JvcmRlci1yYWRpdXM6MjRweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4zKX15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUgLmljb24tYnV0dG9uPmMzLWljb257aGVpZ2h0OjMycHg7d2lkdGg6MzJweH15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUgLnBsYXllci1taWRkbGUtY29udHJvbHMtcHJldi1uZXh0LWJ1dHRvbntoZWlnaHQ6NDhweDt3aWR0aDo0OHB4O3BhZGRpbmc6NnB4O2JhY2tncm91bmQ6bm9uZX15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUgLnBsYXllci1taWRkbGUtY29udHJvbHMtcHJldi1uZXh0LWJ1dHRvbiBjMy1pY29ue2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9eXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtbWlkZGxlIC5wbGF5ZXItbWlkZGxlLWNvbnRyb2xzLXByZXYtbmV4dC1idXR0b24gLnBsYXllci1taWRkbGUtY29udHJvbHMtcHJldi1uZXh0LXZpc2libGUtYXJlYXstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7aGVpZ2h0OjM2cHg7d2lkdGg6MzZweDtwYWRkaW5nOjZweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC4zKTt0ZXh0LXNoYWRvdzowIDAgMnB4ICMwMDB9eXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtbWlkZGxlIC5wbGF5ZXItbWlkZGxlLWNvbnRyb2xzLXByZXYtbmV4dC1idXR0b24gLnBsYXllci1taWRkbGUtY29udHJvbHMtcHJldi1uZXh0LXZpc2libGUtYXJlYSBidXR0b257dGV4dC1zaGFkb3c6MCAwIDJweCAjMDAwfXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLW1pZGRsZSAucGxheWVyLW1pZGRsZS1jb250cm9scy1wcmV2LW5leHQtYnV0dG9uIC5wbGF5ZXItbWlkZGxlLWNvbnRyb2xzLXByZXYtbmV4dC12aXNpYmxlLWFyZWEgc3Zne2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMCwwLDAsLjgpKX15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUgLmljb24tYnV0dG9uLmVuZHNjcmVlbi1yZXBsYXktYnV0dG9ue2hlaWdodDphdXRvO3dpZHRoOmF1dG87Ym9yZGVyLXJhZGl1czo1NnB4fXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLW1pZGRsZSAuaWNvbi1idXR0b24uZW5kc2NyZWVuLXJlcGxheS1idXR0b24+YzMtaWNvbntoZWlnaHQ6NDBweDt3aWR0aDo0MHB4O3BhZGRpbmc6OHB4fXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLW1pZGRsZSAucGxheWVyLWNvbnRyb2wtcGxheS1wYXVzZS1pY29uLmljb24tYnV0dG9ue2hlaWdodDo1NnB4O3dpZHRoOjU2cHg7cGFkZGluZzoxMHB4O2JvcmRlci1yYWRpdXM6NTAlfXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLW1pZGRsZSAucGxheWVyLWNvbnRyb2wtcGxheS1wYXVzZS1pY29uLmljb24tYnV0dG9uPmMzLWljb257aGVpZ2h0OjM2cHg7d2lkdGg6MzZweDtwYWRkaW5nOnVuc2V0fXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLW1pZGRsZSAuZW5kc2NyZWVuLXJlcGxheS1idXR0b24uaWNvbi1idXR0b24seXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtbWlkZGxlIC5wbGF5ZXItY29udHJvbC1wbGF5LXBhdXNlLWljb257bWFyZ2luOjAgMzRweH15dG0tY3VzdG9tLWNvbnRyb2wgLnBsYXllci1jb250cm9scy1taWRkbGUgLnNjcmVlbnJlYWRlci1zYWZlLWhpZGUtbWlkZGxlLWJ1dHRvbnN7cG9pbnRlci1ldmVudHM6bm9uZTtvcGFjaXR5OjB9eXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtbWlkZGxlIC5wbGF5ZXItY29udHJvbHMtc3Bpbm5lcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO2xlZnQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKX1bZGlyPXJ0bF0geXRtLWN1c3RvbS1jb250cm9sIC5wbGF5ZXItY29udHJvbHMtbWlkZGxlOm5vdCgucHJldmVudC1jb250cm9scy1jb2xsaXNpb24pe3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpfXl0bS1jdXN0b20tY29udHJvbCAucGxheWVyLWNvbnRyb2xzLW1pZGRsZSAucGxheWVyLWNvbnRyb2xzLW1pZGRsZS1jb3JlLWJ1dHRvbnN7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2RpcmVjdGlvbjpsdHJ9Lnl0bVZpZGVvSW5mb0hvc3R7LW1vei1ib3gtZmxleDoxO2ZsZXg6MTtvdmVyZmxvdzpoaWRkZW47bWluLXdpZHRoOjB9Lnl0bVZpZGVvSW5mb1ZpZGVvRGV0YWlsc0NvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwYWRkaW5nLWxlZnQ6MTJweDttaW4taGVpZ2h0OjUuMnJlbX0ueXRtVmlkZW9JbmZvVmlkZW9UaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToycmVtO2xpbmUtaGVpZ2h0OjIuOHJlbTtmb250LXdlaWdodDo3MDB9QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7Lnl0bVZpZGVvSW5mb1ZpZGVvVGl0bGV7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS44cmVtO2xpbmUtaGVpZ2h0OjIuNnJlbTtmb250LXdlaWdodDo3MDB9fS55dG1WaWRlb0luZm9WaWRlb1RpdGxle2Rpc3BsYXk6YmxvY2s7bWF4LXdpZHRoOjEwMCU7cGFkZGluZy10b3A6MTBweDtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtZGVjb3JhdGlvbjpub25lO21hc2staW1hZ2U6bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCNmZmYgOTUlLHJnYmEoMCwwLDAsMCkpfVtkaXI9cnRsXSAueXRtVmlkZW9JbmZvVmlkZW9UaXRsZXttYXNrLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCNmZmYgOTUlLHJnYmEoMCwwLDAsMCkpfS55dG1WaWRlb0luZm9DaGFubmVsVGl0bGV7bWF4LXdpZHRoOjEwMCU7Zm9udC1zaXplOjEuMnJlbTtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtZGVjb3JhdGlvbjpub25lO29wYWNpdHk6MTtsaW5lLWhlaWdodDoxLjF9Lnl0bVZpZGVvSW5mb1ZpZGVvVGl0bGVDb250YWluZXJ7bWluLWhlaWdodDozNnB4Oy1tb3otYm94LWZsZXg6MTtmbGV4OjE7b3ZlcmZsb3c6aGlkZGVuO2NvbG9yOiNmZmY7bWFyZ2luLXJpZ2h0OjEycHg7cGFkZGluZy1sZWZ0OjB9Lnl0bVZpZGVvSW5mb0xvZ29FbmFibGVke3BhZGRpbmctbGVmdDo1MnB4fS55dG1WaWRlb0luZm9DaGFubmVsTG9nb3t3aWR0aDozNnB4O2hlaWdodDozNnB4O2Rpc3BsYXk6YmxvY2s7YmFja2dyb3VuZC1zaXplOmNvbnRhaW47YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2ZsZXgtc2hyaW5rOjA7bWFyZ2luOjEycHg7bWFyZ2luLXRvcDo4cHg7Ym9yZGVyLXJhZGl1czo1MCU7ei1pbmRleDo3O3Bvc2l0aW9uOmFic29sdXRlO3RvcDowfS55dG1WaWRlb0luZm9DaGFubmVsQ29udGFpbmVye2hlaWdodDo1LjJyZW07cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO21pbi13aWR0aDo1MnB4O21heC13aWR0aDpjYWxjKDEwMCUgLSAxMnB4KTttYXJnaW46NHB4O21hcmdpbi10b3A6OHB4O292ZXJmbG93OmhpZGRlbn1bZGlyPXJ0bF0gLnl0bVZpZGVvSW5mb0NoYW5uZWxDb250YWluZXJ7bGVmdDphdXRvO3JpZ2h0OjB9Lnl0bVZpZGVvSW5mb092ZXJsYXl7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7Ym9yZGVyLXJhZGl1czoxMHB4O2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjgpO21hcmdpbi1sZWZ0OjRweDtoZWlnaHQ6MTAwJTt0cmFuc2l0aW9uOmFsbCAuMnM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4wNSwwLDAsMSk7b3BhY2l0eTowO21heC13aWR0aDowO3BhZGRpbmctbGVmdDo1MnB4O3BhZGRpbmctcmlnaHQ6MTBweDt6LWluZGV4OjU7cG9zaXRpb246cmVsYXRpdmV9Lnl0bVZpZGVvSW5mb0V4cGFuZGVke29wYWNpdHk6MTttYXgtd2lkdGg6MTAwJX0ueXRtVmlkZW9JbmZvQ2hhbm5lbEluZm97ZGlzcGxheTpibG9jaztwYWRkaW5nLXJpZ2h0OjhweDstbW96LWJveC1mbGV4OjE7ZmxleDoxO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczthbGlnbi1zZWxmOmNlbnRlcjttYXgtd2lkdGg6MTAwJX0ueXRtVmlkZW9JbmZvRmx5b3V0Q2hhbm5lbFRpdGxle2ZvbnQtc2l6ZToxLjRyZW07Y29sb3I6I2ZmZjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO21heC13aWR0aDoxMDAlO2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWJvdHRvbToycHg7YWxpZ24tc2VsZjpjZW50ZXJ9Lnl0bVZpZGVvSW5mb0ZseW91dENoYW5uZWxTdWJ0aXRsZXtmb250LXNpemU6MS4ycmVtO2NvbG9yOiNmZmY7dGV4dC1vdmVyZmxvdzplbGxpcHNpczttYXgtd2lkdGg6MTAwJTtkaXNwbGF5OmJsb2NrfS55dG1WaWRlb0luZm9TdWJzY3JpYmVCdXR0b257YWxpZ24tc2VsZjpjZW50ZXJ9Lnl0bVZpZGVvSW5mb1N1YnNjcmliZUJ1dHRvbiAuaXMtc3Vic2NyaWJlZCAueXRBdHRyaWJ1dGVkU3RyaW5nSG9zdHtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyl9Lnl0bVZpZGVvSW5mb0hpZGUsLnl0bVZpZGVvSW5mb1N1YnNjcmliZUJ1dHRvbiAuc3Vic2NyaWJlLWJ1dHRvbi1jb3VudHtkaXNwbGF5Om5vbmV9Lnl0bVZpZGVvSW5mb0xpbms6aG92ZXJ7Y3Vyc29yOnBvaW50ZXJ9Lnl0bVZpZGVvSW5mb0NoYW5uZWxBdmF0YXJ7ZGlzcGxheTpibG9jaztwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDo0OHB4O2hlaWdodDo0OHB4fS55dG1NdXRlQnV0dG9uSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6NDhweDtoZWlnaHQ6NDhweH0ueXRtTXV0ZUJ1dHRvbkJ1dHRvbntjdXJzb3I6cG9pbnRlcjt3aWR0aDo0OHB4O2hlaWdodDo0OHB4O3BhZGRpbmc6MTJweDtib3JkZXI6bm9uZTtvdXRsaW5lOm5vbmU7Zm9udDppbmhlcml0O3RleHQtdHJhbnNmb3JtOmluaGVyaXQ7Y29sb3I6aW5oZXJpdDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS55dHdBdXRvbmF2VG9nZ2xlQnV0dG9uSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6NDhweDtoZWlnaHQ6NDhweH0ueXR3QXV0b25hdlRvZ2dsZUJ1dHRvblNwYW5uZXJJY29uT2ZmLC55dHdBdXRvbmF2VG9nZ2xlQnV0dG9uU3Bhbm5lckljb25Pbnt3aWR0aDozNnB4O2hlaWdodDoxNHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS55dHdBdXRvbmF2VG9nZ2xlQnV0dG9uU3Bhbm5lckljb25PZmYgc3ZnLC55dHdBdXRvbmF2VG9nZ2xlQnV0dG9uU3Bhbm5lckljb25PbiBzdmd7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3dpZHRoOjM2cHg7aGVpZ2h0OjE0cHh9Lnl0d0F1dG9uYXZUb2dnbGVCdXR0b25QbGF5SWNvbntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO2xlZnQ6MjJweDt3aWR0aDoyMHB4O2hlaWdodDoyMHB4fVtkaXI9cnRsXSAueXR3QXV0b25hdlRvZ2dsZUJ1dHRvblBsYXlJY29ue2xlZnQ6NnB4fS55dHdBdXRvbmF2VG9nZ2xlQnV0dG9uUGF1c2VJY29ue3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7bGVmdDo2cHg7d2lkdGg6MjBweDtoZWlnaHQ6MjBweH1bZGlyPXJ0bF0gLnl0d0F1dG9uYXZUb2dnbGVCdXR0b25QYXVzZUljb257bGVmdDoyMnB4fS55dHdQbGF5ZXJBdXRvbmF2VG9nZ2xlSG9zdHtkaXNwbGF5OmJsb2NrfS55dHdQbGF5ZXJBdXRvbmF2VG9nZ2xlSG9zdCAueXR3QXV0b25hdlRvZ2dsZUJ1dHRvblBsYXlJY29ue2NvbG9yOiNmZmZ9Lnl0d1BsYXllclRvcENvbnRyb2xzSG9zdHtkaXNwbGF5OmJsb2NrfS55dHdQbGF5ZXJUb3BDb250cm9sc1BsYXllckNvbnRyb2xzVG9wUmlnaHR7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9Lnl0d1BsYXllclRvcENvbnRyb2xzQ29udGFpbmVyV2l0aEVtYmVkZGVkVmlkZW9EZXRhaWxzey1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZH1AbWVkaWEgKG1heC1hc3BlY3QtcmF0aW86My80KXsueXR3UGxheWVyVG9wQ29udHJvbHNDb250YWluZXJXaXRoRW1iZWRkZWRWaWRlb0RldGFpbHN7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpyZXZlcnNlO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbi1yZXZlcnNlfX1AbWVkaWEgKG1heC1hc3BlY3QtcmF0aW86My80KXsueXR3UGxheWVyVG9wQ29udHJvbHNDb250YWluZXJXaXRoRW1iZWRkZWRWaWRlb0RldGFpbHNQbGF5ZXJDb250cm9sc1RvcFJpZ2h0ey1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZH19Lnl0bVdhdGNoUGxheWVyQ29udHJvbHNIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0bVdhdGNoUGxheWVyQ29udHJvbHNCYWNrZ3JvdW5kQWN0aW9uSXRlbXN7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoyfXl0bS1ub3RpZmljYXRpb24tYWN0aW9uLXJlbmRlcmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lm5vdGlmaWNhdGlvbi1hY3Rpb24tcmVzcG9uc2UtdGV4dHstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjE7cGFkZGluZy1yaWdodDoxcmVtfS5ub3RpZmljYXRpb24tYWN0aW9uLWJ1dHRvbntmbGV4LXNocmluazowfS51bmlmaWVkLXNoYXJlLXVybC1pbnB1dHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O3BhZGRpbmctYm90dG9tOjRweDtvdXRsaW5lOm5vbmU7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6MDttYXJnaW4tYm90dG9tOjFweDtmb250OmluaGVyaXQ7Y29sb3I6IzAzMDMwMztib3JkZXItYm90dG9tOjFweCBzb2xpZCAjNzM3MzczO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9LnVuaWZpZWQtc2hhcmUtdXJsLWlucHV0OmZvY3Vze21hcmdpbi1ib3R0b206MDtib3JkZXItYm90dG9tLXdpZHRoOjJweDtib3JkZXItYm90dG9tLWNvbG9yOiMwMzAzMDN9LnVuaWZpZWQtc2hhcmUtdXJsLWlucHV0OjotbW96LXBsYWNlaG9sZGVye2NvbG9yOiM2MDYwNjA7b3BhY2l0eToxfS51bmlmaWVkLXNoYXJlLXVybC1pbnB1dDo6cGxhY2Vob2xkZXJ7Y29sb3I6IzYwNjA2MDtvcGFjaXR5OjF9LnVuaWZpZWQtc2hhcmUtdXJsLWlucHV0e3dpZHRoOjEwMCU7ZGlzcGxheTpibG9jaztwYWRkaW5nOjEycHg7Y29sb3I6IzA2NWZkNDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4wNSk7Ym9yZGVyLWJvdHRvbS1zdHlsZTpub25lO2JvcmRlci1yYWRpdXM6OHB4fS5ib3R0b20tc2hlZXQtc2hhcmUtaXRlbSAudW5pZmllZC1zaGFyZS11cmwtaW5wdXR7aGVpZ2h0OjQ4cHg7bWFyZ2luLWJvdHRvbToxMnB4fS5zaGFyZS10YXJnZXQtbGlua3tkaXNwbGF5OmJsb2NrO3BhZGRpbmc6MTJweH0uYm90dG9tLXNoZWV0LXNoYXJlLWl0ZW0gLnNoYXJlLXRhcmdldC1saW5re3BhZGRpbmc6MDttYXJnaW4tbGVmdDoxMnB4O2hlaWdodDo0OHB4O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwfWZ1bGxzY3JlZW4tb3ZlcmxheXtwb3NpdGlvbjpmaXhlZDt0b3A6MDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2JhY2tncm91bmQtY29sb3I6I2ZmZjtvdmVyZmxvdzpzY3JvbGw7ei1pbmRleDo0fS55dENoaXBCYXJWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O3Bvc2l0aW9uOnJlbGF0aXZlOy1tb3otYm94LWFsaWduOnN0cmV0Y2g7YWxpZ24taXRlbXM6c3RyZXRjaH0ueXRDaGlwQmFyVmlld01vZGVsQ2hpcEJhclNjcm9sbENvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtvdmVyZmxvdzphdXRvIGhpZGRlbjtzY3JvbGxiYXItd2lkdGg6bm9uZTstbXMtb3ZlcmZsb3ctc3R5bGU6bm9uZX0ueXRDaGlwQmFyVmlld01vZGVsQ2hpcEJhclNjcm9sbENvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lfS55dENoaXBCYXJWaWV3TW9kZWxDaGlwQmFyU2Nyb2xsQ29udGFpbmVyV3JhcHBlZHtmbGV4LXdyYXA6d3JhcDtyb3ctZ2FwOjhweDtvdmVyZmxvdzp2aXNpYmxlfS55dENoaXBCYXJWaWV3TW9kZWxMZWZ0QXJyb3dDb250YWluZXIsLnl0Q2hpcEJhclZpZXdNb2RlbFJpZ2h0QXJyb3dDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7aGVpZ2h0OjEwMCU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7ei1pbmRleDoxfS55dENoaXBCYXJWaWV3TW9kZWxMZWZ0QXJyb3dDb250YWluZXJ7bGVmdDowfS55dENoaXBCYXJWaWV3TW9kZWxMZWZ0QXJyb3dDb250YWluZXJJc0hpZGRlbntkaXNwbGF5Om5vbmV9Lnl0Q2hpcEJhclZpZXdNb2RlbExlZnRBcnJvd0NvbnRhaW5lcjphZnRlcnt3aWR0aDo1MHB4O2NvbnRlbnQ6IiI7cG9pbnRlci1ldmVudHM6bm9uZTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byBsZWZ0LHJnYmEoMjU1LDI1NSwyNTUsMCkgMCxyZ2JhKDI1NSwyNTUsMjU1LDAuMykgMjUlLHJnYmEoMjU1LDI1NSwyNTUsMC42KSA1MCUscmdiYSgyNTUsMjU1LDI1NSwwLjkpIDc1JSx3aGl0ZSAxMDAlKX0ueXRDaGlwQmFyVmlld01vZGVsUmlnaHRBcnJvd0NvbnRhaW5lcntyaWdodDowfS55dENoaXBCYXJWaWV3TW9kZWxSaWdodEFycm93Q29udGFpbmVySXNIaWRkZW57ZGlzcGxheTpub25lfS55dENoaXBCYXJWaWV3TW9kZWxSaWdodEFycm93Q29udGFpbmVyOmJlZm9yZXt3aWR0aDo1MHB4O2NvbnRlbnQ6IiI7cG9pbnRlci1ldmVudHM6bm9uZTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byByaWdodCxyZ2JhKDI1NSwyNTUsMjU1LDApIDAscmdiYSgyNTUsMjU1LDI1NSwwLjMpIDI1JSxyZ2JhKDI1NSwyNTUsMjU1LDAuNikgNTAlLHJnYmEoMjU1LDI1NSwyNTUsMC45KSA3NSUsd2hpdGUgMTAwJSl9Lnl0Q2hpcEJhclZpZXdNb2RlbExlZnRBcnJvdywueXRDaGlwQmFyVmlld01vZGVsUmlnaHRBcnJvd3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7YmFja2dyb3VuZDojZmZmfS55dENoaXBCYXJWaWV3TW9kZWxDaGlwV3JhcHBlcnttYXJnaW4tcmlnaHQ6OHB4fS55dENoaXBCYXJWaWV3TW9kZWxDaGlwV3JhcHBlcldpdGhOYXZpZ2F0aW9uQnV0dG9uc3ttYXJnaW4tdG9wOjRweDttYXJnaW4tYm90dG9tOjRweH0ueXRDaGlwU2hhcGVCdXR0b25SZXNldHtkaXNwbGF5Oi1tb3otaW5saW5lLWJveDtkaXNwbGF5OmlubGluZS1mbGV4O2NvbG9yOmluaGVyaXQ7Ym9yZGVyOm5vbmU7Y3Vyc29yOnBvaW50ZXI7b3V0bGluZS13aWR0aDowOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtiYWNrZ3JvdW5kOm5vbmU7dGV4dC1kZWNvcmF0aW9uOm5vbmU7cGFkZGluZzowOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudH0ueXRDaGlwU2hhcGVIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0Q2hpcFNoYXBlQ2hpcHtwb3NpdGlvbjpyZWxhdGl2ZTstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6OHB4O2Rpc3BsYXk6LW1vei1pbmxpbmUtYm94O2Rpc3BsYXk6aW5saW5lLWZsZXg7aGVpZ2h0OjMycHg7bWluLXdpZHRoOjEycHg7d2hpdGUtc3BhY2U6bm93cmFwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjUwMH1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRDaGlwU2hhcGVDaGlwe291dGxpbmU6MXB4IHNvbGlkO291dGxpbmUtb2Zmc2V0Oi0xcHh9fS55dENoaXBTaGFwZUVsZXZhdGVkQ29udGVudHt6LWluZGV4OjE7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRDaGlwU2hhcGVPbmx5VGV4dFBhZGRpbmd7cGFkZGluZzowIDEycHh9Lnl0Q2hpcFNoYXBlT25seUljb25QYWRkaW5ne3BhZGRpbmc6MH0ueXRDaGlwU2hhcGVTdGFydEljb25QYWRkaW5ney1tb3otcGFkZGluZy1lbmQ6MTJweDtwYWRkaW5nLWlubGluZS1lbmQ6MTJweH0ueXRDaGlwU2hhcGVFbmRJY29uUGFkZGluZ3stbW96LXBhZGRpbmctc3RhcnQ6MTJweDtwYWRkaW5nLWlubGluZS1zdGFydDoxMnB4fS55dENoaXBTaGFwZUFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOiMwZjBmMGY7Y29sb3I6I2ZmZn1AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OmFjdGl2ZSksKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRDaGlwU2hhcGVBY3RpdmV7Zm9yY2VkLWNvbG9yLWFkanVzdDpub25lO2JhY2tncm91bmQtY29sb3I6U2VsZWN0ZWRJdGVtO2NvbG9yOlNlbGVjdGVkSXRlbVRleHR9fS55dENoaXBTaGFwZUFjdGl2ZVJlZGVzaWdue2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEpO2NvbG9yOiMwMzAzMDN9QG1lZGlhICgtbXMtaGlnaC1jb250cmFzdDphY3RpdmUpLChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0Q2hpcFNoYXBlQWN0aXZlUmVkZXNpZ257Zm9yY2VkLWNvbG9yLWFkanVzdDpub25lO2JhY2tncm91bmQtY29sb3I6U2VsZWN0ZWRJdGVtO2NvbG9yOlNlbGVjdGVkSXRlbVRleHR9fS55dENoaXBTaGFwZURpc2FibGVke2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA1KTtjb2xvcjojOTA5MDkwfS55dENoaXBTaGFwZUluYWN0aXZle2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA1KTtjb2xvcjojMDMwMzAzfS55dENoaXBTaGFwZUluYWN0aXZlUmVkZXNpZ257YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtjb2xvcjojNjA2MDYwO2JvcmRlcjouNXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKX0ueXRDaGlwU2hhcGVGb2N1c2Vke291dGxpbmU6MnB4IHNvbGlkICMwMzAzMDM7b3V0bGluZS1vZmZzZXQ6LTJweDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Y29sb3I6IzAzMDMwM30ueXRDaGlwU2hhcGVJY29uU3RhcnR7Y29sb3I6aW5oZXJpdDttYXJnaW46MCA0cHggMCA4cHg7aGVpZ2h0OjE4cHg7d2lkdGg6MThweH0ueXRDaGlwU2hhcGVJY29uT25seXtjb2xvcjppbmhlcml0O21hcmdpbjowIDhweDtoZWlnaHQ6MjRweDt3aWR0aDoyNHB4fS55dENoaXBTaGFwZUljb25FbmR7Y29sb3I6aW5oZXJpdDttYXJnaW46MCA2cHggMCA0cHg7aGVpZ2h0OjE4cHg7d2lkdGg6MThweH0ueXRDaGlwU2hhcGVBSUN1c3RvbWl6ZWRDaGlwQm9yZGVyRGFya01vZGV7Ym9yZGVyOjJweCBzb2xpZCB0cmFuc3BhcmVudDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgjMGYwZjBmLCMwZjBmMGYpIHBhZGRpbmctYm94LGxpbmVhci1ncmFkaWVudCh0byByaWdodCwjN2YwZTdmLCMwMDdhNjUpIGJvcmRlci1ib3h9Lnl0Q2hpcFNoYXBlQUlDdXN0b21pemVkQ2hpcEJhY2tncm91bmRMaWdodE1vZGV7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byByaWdodCwjN2YwZTdmLCMwMDdhNjUpfS55dENoaXBTaGFwZUFJQ3VzdG9taXplZENoaXBJY29uRGFya01vZGV7Y29sb3I6IzdmMGU3Zn0ueXRDaGlwU2hhcGVNaWRkbGVncm91bmRBc3NldHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTt3aWR0aDpyb3VuZCh1cCwxMDAlLDFweCk7aGVpZ2h0OjEwMCU7b3ZlcmZsb3c6aGlkZGVuO3BvaW50ZXItZXZlbnRzOm5vbmU7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0Q2hpcFZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlSG9zdHtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRleHRhcmVhQ29udGFpbmVye3Bvc2l0aW9uOnJlbGF0aXZlOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDttaW4taGVpZ2h0OjU2cHg7cGFkZGluZzoyNHB4IDEycHggOHB4fS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVUZXh0YXJlYUNvbnRhaW5lck91dGxpbmV7Ym9yZGVyLXJhZGl1czo4cHg7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRleHRhcmVhQ29udGFpbmVyT3V0bGluZTpmb2N1cy13aXRoaW57Ym9yZGVyOjJweCBzb2xpZCAjMDMwMzAzO3BhZGRpbmc6MjNweCAxMXB4IDdweH0ueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlVGV4dGFyZWFDb250YWluZXJPdXRsaW5lRGlzYWJsZWR7Ym9yZGVyOjA7Y29sb3I6IzkwOTA5MDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4wNSl9Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRleHRhcmVhQ29udGFpbmVyT3V0bGluZUVycm9ye2JvcmRlci1jb2xvcjojYzMwMDI3fS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVUZXh0YXJlYUNvbnRhaW5lck91dGxpbmVFcnJvcjpmb2N1cy13aXRoaW57Ym9yZGVyLWNvbG9yOiNjMzAwMjd9Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRleHRhcmVhQ29udGFpbmVyTGFiZWxIaWRkZW57bWluLWhlaWdodDozNnB4O3BhZGRpbmc6OXB4IDEycHggNnB4fS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVUZXh0YXJlYUNvbnRhaW5lckxhYmVsSGlkZGVuLnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRleHRhcmVhQ29udGFpbmVyT3V0bGluZTpmb2N1cy13aXRoaW57cGFkZGluZzo5cHggMTFweCA2cHh9Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRleHRhcmVhe21pbi1oZWlnaHQ6MDtjb2xvcjojMDMwMzAzO3dpZHRoOjEwMCU7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtyZXNpemU6bm9uZTtib3JkZXI6bm9uZTtvdXRsaW5lOm5vbmU7cGFkZGluZzowO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVUZXh0YXJlYTo6LW1vei1wbGFjZWhvbGRlcntjb2xvcjp0cmFuc3BhcmVudH0ueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlVGV4dGFyZWE6OnBsYWNlaG9sZGVye2NvbG9yOnRyYW5zcGFyZW50fUBtZWRpYSAoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVUZXh0YXJlYTo6LW1vei1wbGFjZWhvbGRlcntvcGFjaXR5OjB9Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRleHRhcmVhOjpwbGFjZWhvbGRlcntvcGFjaXR5OjB9fS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVUZXh0YXJlYTpkaXNhYmxlZHtjb2xvcjojOTA5MDkwfS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVMYWJlbHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6OHB4O2xlZnQ6MTJweDtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVMYWJlbEZvY3VzZWR7dG9wOjdweDtsZWZ0OjExcHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo1MDB9Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZUxhYmVsRGlzYWJsZWR7Y29sb3I6IzkwOTA5MH0ueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlTGFiZWxFcnJvcntjb2xvcjojYzMwMDI3fS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVMYWJlbEhpZGRlbntkaXNwbGF5Om5vbmV9Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVBsYWNlaG9sZGVye2Rpc3BsYXk6bm9uZTtjb2xvcjojNjA2MDYwO3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxNnB4O2xlZnQ6MTJweDtyaWdodDoxMnB4O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVQbGFjZWhvbGRlclZpc2libGV7ZGlzcGxheTpibG9ja30ueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlVGV4dGFyZWFDb250YWluZXJMYWJlbEhpZGRlbiAueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlUGxhY2Vob2xkZXJ7dG9wOjhweH0ueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlRXJyb3IsLnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZUhpbnR7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjttYXJnaW4tdG9wOjRweDtjb2xvcjojYzMwMDI3O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVFcnJvckljb24sLnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZUhpbnRJY29ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoxNnB4O3dpZHRoOjE2cHh9Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZUVycm9yTWVzc2FnZSwueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlSGludE1lc3NhZ2V7bWFyZ2luLWxlZnQ6NHB4fS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVFcnJvckRpc2FibGVkLC55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVIaW50RGlzYWJsZWR7Y29sb3I6IzkwOTA5MH0ueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlRXJyb3JDaGFyYWN0ZXJDb3VudCwueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlSGludENoYXJhY3RlckNvdW50e21hcmdpbi1sZWZ0OmF1dG99Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZUVycm9ySGludE1lc3NhZ2UsLnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZUhpbnRIaW50TWVzc2FnZXttYXJnaW4tbGVmdDo0cHg7Y29sb3I6IzYwNjA2MH0ueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlRXJyb3JJY29ue2NvbG9yOmluaGVyaXR9Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRpbWVQaWNrZXIgLnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRleHRhcmVhQ29udGFpbmVyey1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7cGFkZGluZzowfS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVUaW1lUGlja2VyIC55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVQbGFjZWhvbGRlciwueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlVGltZVBpY2tlciAueXRTdGFuZGFyZHNUZXh0YXJlYVNoYXBlVGV4dGFyZWF7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbi1pbmxpbmU6YXV0bzttYXgtd2lkdGg6ODBweDt0ZXh0LWFsaWduOmNlbnRlcjtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZTozLjZyZW07bGluZS1oZWlnaHQ6NXJlbTtmb250LXdlaWdodDo3MDB9QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRpbWVQaWNrZXIgLnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVBsYWNlaG9sZGVyLC55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVUaW1lUGlja2VyIC55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVUZXh0YXJlYXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZTozLjJyZW07bGluZS1oZWlnaHQ6NC40cmVtO2ZvbnQtd2VpZ2h0OjcwMH19Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRpbWVQaWNrZXIgLnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVBsYWNlaG9sZGVye2luc2V0OjB9Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRpbWVQaWNrZXIgLnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRleHRhcmVhe2hlaWdodDoxMDAlO3BhZGRpbmc6OXB4IDB9Lnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZUZpbGxQYXJlbnQsLnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZUZpbGxQYXJlbnQgLnl0U3RhbmRhcmRzVGV4dGFyZWFTaGFwZVRleHRhcmVhe2hlaWdodDoxMDAlfS55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVGaWxsUGFyZW50IC55dFN0YW5kYXJkc1RleHRhcmVhU2hhcGVUZXh0YXJlYUNvbnRhaW5lcnstbW96LWJveC1mbGV4OjE7ZmxleDoxfS55dFNlYXJjaElucHV0Vmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1yYWRpdXM6MTAwcHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMDUpfUBtZWRpYSAoLW1zLWhpZ2gtY29udHJhc3Q6YWN0aXZlKSwoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFNlYXJjaElucHV0Vmlld01vZGVsSG9zdHtvdXRsaW5lOjJweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9fS55dFNlYXJjaElucHV0Vmlld01vZGVsSG9zdENvbnRlbnRSZXNlYXJjaHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfS55dFNlYXJjaElucHV0Vmlld01vZGVsTGVhZGluZ0ljb257bWFyZ2luLWxlZnQ6MTZweDttYXJnaW4tcmlnaHQ6NHB4O2NvbG9yOiM2MDYwNjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRTZWFyY2hJbnB1dFZpZXdNb2RlbEZvcm17LW1vei1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxO3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDoycHh9Lnl0U2VhcmNoSW5wdXRWaWV3TW9kZWxDbGVhckJ1dHRvbnttYXJnaW4tcmlnaHQ6NHB4fS55dHdDaGFubmVsQmxvY2tzVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dHdDaGFubmVsQmxvY2tzVmlld01vZGVsTGlzdFdyYXBwZXJ7c2Nyb2xsYmFyLWNvbG9yOnRyYW5zcGFyZW50IHRyYW5zcGFyZW50O3Njcm9sbGJhci13aWR0aDp0aGlufS55dHdDaGFubmVsQmxvY2tzVmlld01vZGVsTGlzdFdyYXBwZXI6Oi13ZWJraXQtc2Nyb2xsYmFye2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7d2lkdGg6MTZweH0ueXR3Q2hhbm5lbEJsb2Nrc1ZpZXdNb2RlbExpc3RXcmFwcGVyOjotd2Via2l0LXNjcm9sbGJhci10aHVtYntoZWlnaHQ6NTZweDtib3JkZXItcmFkaXVzOjhweDtib3JkZXI6NHB4IHNvbGlkIHRyYW5zcGFyZW50O2JhY2tncm91bmQtY2xpcDpjb250ZW50LWJveDtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50fS55dHdDaGFubmVsQmxvY2tzVmlld01vZGVsTGlzdFdyYXBwZXI6aG92ZXJ7c2Nyb2xsYmFyLWNvbG9yOiM5MDkwOTAgdHJhbnNwYXJlbnR9Lnl0d0NoYW5uZWxCbG9ja3NWaWV3TW9kZWxMaXN0V3JhcHBlcjpob3Zlcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7YmFja2dyb3VuZC1jb2xvcjojOTA5MDkwfS55dHdDaGFubmVsQmxvY2tzVmlld01vZGVsTGlzdFdyYXBwZXJ7b3ZlcmZsb3cteTphdXRvO21heC1oZWlnaHQ6bWluKDM2MHB4LDEwMHZoIC0gMzAwcHgpO21pbi13aWR0aDptaW4oNDQ4cHgsMTAwdncgLSAxNDRweCl9QG1lZGlhIChtYXgtd2lkdGg6MzMwcHgpey55dHdDaGFubmVsQmxvY2tzVmlld01vZGVsTGlzdFdyYXBwZXJ7bWF4LWhlaWdodDpjYWxjKDEwMHZoIC0gMjAwcHgpfX0ueXR3Q2hhbm5lbEJsb2Nrc1ZpZXdNb2RlbFNlYXJjaENvbnRhaW5lcntwb3NpdGlvbjpyZWxhdGl2ZTtwYWRkaW5nLWJvdHRvbTo4cHh9Lnl0d0NoYW5uZWxCbG9ja3NWaWV3TW9kZWxEcm9wZG93blBhbmVse3Bvc2l0aW9uOmFic29sdXRlO2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKTtib3gtc2hhZG93OjAgMnB4IDEwcHggcmdiYSgwLDAsMCwwLjI1KTtib3JkZXItcmFkaXVzOjRweDt6LWluZGV4OjIwMTA7d2lkdGg6MTAwJTttYXgtaGVpZ2h0Om1pbigzMDBweCwxMDB2aCAtIDMwMHB4KTtvdmVyZmxvdy15OmF1dG87dG9wOjEwMCU7bGVmdDowfS55dHdDaGFubmVsQmxvY2tzVmlld01vZGVsU3VnZ2VzdGlvbnNMaXN0Ym94e3BhZGRpbmc6OHB4IDB9Lnl0UGxheWVyT3ZlcmxheUludGVyYWN0aW9uSG9zdHtkaXNwbGF5OmJsb2NrfS55dFBsYXllck92ZXJsYXlJbnRlcmFjdGlvbkludGVyYWN0aW9uc1N2Z3twb2ludGVyLWV2ZW50czphbGw7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyLXJhZGl1czo2cHh9Lnl0UGxheWVyT3ZlcmxheUludGVyYWN0aW9uSW50ZXJhY3Rpb25zU3ZnSG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMSl9Lnl0UGxheWVyT3ZlcmxheUludGVyYWN0aW9uSW50ZXJhY3Rpb25zU3ZnSGlkZU91dGxpbmV7b3V0bGluZTpub25lfS55dERpc21pc3NpYmxlSXRlbVJlcGxhY2VkQ29udGVudHtwb3NpdGlvbjpyZWxhdGl2ZTstbW96LWJveC1mbGV4OjE7ZmxleDoxfS55dERpc21pc3NpYmxlSXRlbUFzcGVjdFJhdGlvQ29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9Lnl0RGlzbWlzc2libGVJdGVtQXNwZWN0UmF0aW8xNkJ5OXtwYWRkaW5nLXRvcDo1Ni4yNSV9Lnl0RGlzbWlzc2libGVJdGVtQXNwZWN0UmF0aW8yQnkze3BhZGRpbmctdG9wOjE1MCV9Lnl0RGlzbWlzc2libGVJdGVtQXNwZWN0UmF0aW8zQnk0e3BhZGRpbmctdG9wOjEzMy4zMyV9Lnl0RGlzbWlzc2libGVJdGVtU2hvcnRzQXNwZWN0UmF0aW85QnkxNntwYWRkaW5nLXRvcDoxNzglfS55dERpc21pc3NpYmxlSXRlbUFzcGVjdFJhdGlvMUJ5MXtwYWRkaW5nLXRvcDoxMDAlfS55dE5vdGlmaWNhdGlvbk11bHRpQWN0aW9uUmVuZGVyZXJIb3N0e2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpO2JvcmRlci1yYWRpdXM6OHB4O3BhZGRpbmc6MjBweCAxMnB4IDhweDt0ZXh0LWFsaWduOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtZmxleDoxO2ZsZXg6MTstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Y29sb3I6IzAzMDMwMztmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXROb3RpZmljYXRpb25NdWx0aUFjdGlvblJlbmRlcmVySG9zdExlZ2FjeVNoZWxmU3R5bGV7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDtib3JkZXI6bm9uZX0ueXROb3RpZmljYXRpb25NdWx0aUFjdGlvblJlbmRlcmVyVGV4dENvbnRhaW5lcnstbW96LWJveC1mbGV4OjE7ZmxleDoxO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7dGV4dC1hbGlnbjpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjttYXJnaW4tYm90dG9tOjEycHh9Lnl0Tm90aWZpY2F0aW9uTXVsdGlBY3Rpb25SZW5kZXJlclRleHRDb250YWluZXJMZWdhY3lTaGVsZlN0eWxley1tb3otYm94LWZsZXg6MDtmbGV4Om5vbmU7bWFyZ2luLWJvdHRvbTowO21hcmdpbi1yaWdodDoxMnB4fS55dE5vdGlmaWNhdGlvbk11bHRpQWN0aW9uUmVuZGVyZXJCdXR0b25Db250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3dpZHRoOjEwMCV9Lnl0Tm90aWZpY2F0aW9uTXVsdGlBY3Rpb25SZW5kZXJlckJ1dHRvbkNvbnRhaW5lckxlZ2FjeVNoZWxmU3R5bGV7d2lkdGg6YXV0b30ueXROb3RpZmljYXRpb25NdWx0aUFjdGlvblJlbmRlcmVyQnV0dG9ue3BhZGRpbmc6NnB4IDA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtZmxleDoxO2ZsZXg6MX0ueXROb3RpZmljYXRpb25UZXh0UmVuZGVyZXJIb3N0e2JvcmRlcjoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpO2JvcmRlci1yYWRpdXM6OHB4O3BhZGRpbmc6MTJweDt0ZXh0LWFsaWduOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWZsZXg6MTtmbGV4OjE7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtjb2xvcjojMDMwMzAzO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NTAwfS55dHdBZEF2YXRhclZpZXdNb2RlbEhvc3QsLnl0d0FkQXZhdGFyVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnR7ZGlzcGxheTpibG9ja30ueXR3QWRCYWRnZVZpZXdNb2RlbEhvc3QsLnl0d0FkQmFkZ2VWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudHtkaXNwbGF5OmlubGluZX0ueXR3QWRCYWRnZVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50U3R5bGVTdGFuZGFyZCwueXR3QWRCYWRnZVZpZXdNb2RlbEhvc3RTdHlsZVN0YW5kYXJke2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dHdBZEJhZGdlVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRTdHlsZVN0YW5kYXJkQnJvd3NlLC55dHdBZEJhZGdlVmlld01vZGVsSG9zdFN0eWxlU3RhbmRhcmRCcm93c2V7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dHdBZEJhZGdlVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnR7Y3Vyc29yOnBvaW50ZXJ9Lnl0d0FkRGV0YWlsc0xpbmVWaWV3TW9kZWxIb3N0LC55dHdBZERldGFpbHNMaW5lVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnR7ZGlzcGxheTpibG9ja30ueXR3QWREZXRhaWxzTGluZVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dFN0eWxlU3RhbmRhcmQsLnl0d0FkRGV0YWlsc0xpbmVWaWV3TW9kZWxIb3N0VGV4dFN0eWxlU3RhbmRhcmR7Y29sb3I6IzYwNjA2MDtwYWRkaW5nLXJpZ2h0OjA7cGFkZGluZy1sZWZ0OjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoxLjhyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0d0FkRGV0YWlsc0xpbmVWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRTdHlsZVN0YW5kYXJkLC55dHdBZERldGFpbHNMaW5lVmlld01vZGVsSG9zdFRleHRTdHlsZVN0YW5kYXJkey13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0d0FkRGV0YWlsc0xpbmVWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRTdHlsZVN0YW5kYXJkLC55dHdBZERldGFpbHNMaW5lVmlld01vZGVsSG9zdFRleHRTdHlsZVN0YW5kYXJke21heC1oZWlnaHQ6MS44cmVtO3dvcmQtYnJlYWs6YnJlYWstYWxsfS55dHdBZERldGFpbHNMaW5lVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0U3R5bGVTdGFuZGFyZEJyb3dzZSwueXR3QWREZXRhaWxzTGluZVZpZXdNb2RlbEhvc3RUZXh0U3R5bGVTdGFuZGFyZEJyb3dzZXt3aGl0ZS1zcGFjZTpub3dyYXA7Y29sb3I6IzYwNjA2MDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDB9Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdCwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzt3aWR0aDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO2N1cnNvcjpwb2ludGVyOy0tZmVlZC1hZC1tZXRhZGF0YS10b3AtcGFkZGluZzoxMnB4fS55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50TWV0YWRhdGEsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdE1ldGFkYXRhe2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtwYWRkaW5nLXJpZ2h0OjI0cHg7d2lkdGg6MTAwJTtvdmVyZmxvdzpoaWRkZW47LS1mZWVkLWFkLW1ldGFkYXRhLWJvdHRvbS1tYXJnaW46MTJweH0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudE1ldGFkYXRhTm9Cb3R0b21NYXJnaW4sLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdE1ldGFkYXRhTm9Cb3R0b21NYXJnaW57LS1mZWVkLWFkLW1ldGFkYXRhLWJvdHRvbS1tYXJnaW46MH0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudE1ldGFkYXRhQWRCYWRnZURldGFpbHNMaW5lQ29udGFpbmVyLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RNZXRhZGF0YUFkQmFkZ2VEZXRhaWxzTGluZUNvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtjdXJzb3I6cG9pbnRlcn0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudE1ldGFkYXRhQWRCYWRnZURldGFpbHNMaW5lQ29udGFpbmVyU3R5bGVDb21wYWN0U2VhcmNoLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RNZXRhZGF0YUFkQmFkZ2VEZXRhaWxzTGluZUNvbnRhaW5lclN0eWxlQ29tcGFjdFNlYXJjaHtwYWRkaW5nLXRvcDo4cHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7Y3Vyc29yOnBvaW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudE1ldGFkYXRhQWRCYWRnZURldGFpbHNMaW5lQ29udGFpbmVyU3R5bGVTdGFuZGFyZCwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0TWV0YWRhdGFBZEJhZGdlRGV0YWlsc0xpbmVDb250YWluZXJTdHlsZVN0YW5kYXJke2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O2N1cnNvcjpwb2ludGVyO3BhZGRpbmctYm90dG9tOnZhcigtLWZlZWQtYWQtbWV0YWRhdGEtYm90dG9tLW1hcmdpbil9Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnROb1RvcFBhZGRpbmcsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdE5vVG9wUGFkZGluZ3stLWZlZWQtYWQtbWV0YWRhdGEtdG9wLXBhZGRpbmc6MH0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudE1lbnVCdXR0b24sLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdE1lbnVCdXR0b257cG9zaXRpb246YWJzb2x1dGU7dG9wOi02cHg7cmlnaHQ6LTEwcHh9Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRNZW51QnV0dG9uTWVudVBvc0FkanVzdGVkLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RNZW51QnV0dG9uTWVudVBvc0FkanVzdGVke3JpZ2h0Oi03cHh9Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRNZW51U3R5bGVTdGFuZGFyZCwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0TWVudVN0eWxlU3RhbmRhcmR7cGFkZGluZy10b3A6dmFyKC0tZmVlZC1hZC1tZXRhZGF0YS10b3AtcGFkZGluZyk7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3Bvc2l0aW9uOmFic29sdXRlO3RvcDotNnB4O3JpZ2h0Oi0xMHB4fS55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50TWVudVN0eWxlU3RhbmRhcmRNZW51UG9zQWRqdXN0ZWQsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdE1lbnVTdHlsZVN0YW5kYXJkTWVudVBvc0FkanVzdGVke3JpZ2h0Oi03cHh9Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdEF2YXRhclN0eWxlU3RhbmRhcmQsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRBdmF0YXJTdHlsZVN0YW5kYXJke2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi1yaWdodDoxMnB4fS55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RBdmF0YXJTdHlsZUNvbXBhY3QsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRBdmF0YXJTdHlsZUNvbXBhY3R7bWFyZ2luLXJpZ2h0OjhweH0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVDb21wYWN0SGVhZGxpbmUsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVDb21wYWN0SGVhZGxpbmV7Y29sb3I6IzAzMDMwMztmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo1MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo0cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dHNTdHlsZUNvbXBhY3RIZWFkbGluZSwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0VGV4dHNTdHlsZUNvbXBhY3RIZWFkbGluZXstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dHNTdHlsZUNvbXBhY3RIZWFkbGluZSwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0VGV4dHNTdHlsZUNvbXBhY3RIZWFkbGluZXttYXgtaGVpZ2h0OjRyZW19Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdEhlYWRsaW5lVHlwb2dyYXBoeUJ1bXAsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVDb21wYWN0SGVhZGxpbmVUeXBvZ3JhcGh5QnVtcHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjQuNHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVDb21wYWN0SGVhZGxpbmVUeXBvZ3JhcGh5QnVtcCwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0VGV4dHNTdHlsZUNvbXBhY3RIZWFkbGluZVR5cG9ncmFwaHlCdW1wey13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdEhlYWRsaW5lVHlwb2dyYXBoeUJ1bXAsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVDb21wYWN0SGVhZGxpbmVUeXBvZ3JhcGh5QnVtcHttYXgtaGVpZ2h0OjQuNHJlbX0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVDb21wYWN0SGVhZGxpbmVTZWFyY2gsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVDb21wYWN0SGVhZGxpbmVTZWFyY2h7Y29sb3I6IzAzMDMwMztmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjhyZW07bGluZS1oZWlnaHQ6Mi42cmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjUuMnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVDb21wYWN0SGVhZGxpbmVTZWFyY2gsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVDb21wYWN0SGVhZGxpbmVTZWFyY2h7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVDb21wYWN0SGVhZGxpbmVTZWFyY2gsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVDb21wYWN0SGVhZGxpbmVTZWFyY2h7bWF4LWhlaWdodDo1LjJyZW07bWFyZ2luLWJvdHRvbTo0cHh9Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9ue2NvbG9yOiM2MDYwNjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo1LjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uey13ZWJraXQtbGluZS1jbGFtcDozO21heC1oZWlnaHQ6bm9uZX19Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9ue21heC1oZWlnaHQ6NS40cmVtfS55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dHNTdHlsZUNvbXBhY3REZXNjcmlwdGlvblR5cG9ncmFwaHlCdW1wLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uVHlwb2dyYXBoeUJ1bXB7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVDb21wYWN0RGVzY3JpcHRpb25UeXBvZ3JhcGh5QnVtcCwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0VGV4dHNTdHlsZUNvbXBhY3REZXNjcmlwdGlvblR5cG9ncmFwaHlCdW1wey13ZWJraXQtbGluZS1jbGFtcDozO21heC1oZWlnaHQ6bm9uZX19Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uVHlwb2dyYXBoeUJ1bXAsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVDb21wYWN0RGVzY3JpcHRpb25UeXBvZ3JhcGh5QnVtcHttYXgtaGVpZ2h0OjZyZW19Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdFNlY29uZGFyeURlc2NyaXB0aW9uLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlQ29tcGFjdFNlY29uZGFyeURlc2NyaXB0aW9ue2NvbG9yOiM2MDYwNjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo1LjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdFNlY29uZGFyeURlc2NyaXB0aW9uLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlQ29tcGFjdFNlY29uZGFyeURlc2NyaXB0aW9uey13ZWJraXQtbGluZS1jbGFtcDozO21heC1oZWlnaHQ6bm9uZX19Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdFNlY29uZGFyeURlc2NyaXB0aW9uLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlQ29tcGFjdFNlY29uZGFyeURlc2NyaXB0aW9ue21heC1oZWlnaHQ6NS40cmVtfS55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dHNTdHlsZUNvbXBhY3RTZWNvbmRhcnlEZXNjcmlwdGlvblR5cG9ncmFwaHlCdW1wLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlQ29tcGFjdFNlY29uZGFyeURlc2NyaXB0aW9uVHlwb2dyYXBoeUJ1bXB7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVDb21wYWN0U2Vjb25kYXJ5RGVzY3JpcHRpb25UeXBvZ3JhcGh5QnVtcCwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0VGV4dHNTdHlsZUNvbXBhY3RTZWNvbmRhcnlEZXNjcmlwdGlvblR5cG9ncmFwaHlCdW1wey13ZWJraXQtbGluZS1jbGFtcDozO21heC1oZWlnaHQ6bm9uZX19Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdFNlY29uZGFyeURlc2NyaXB0aW9uVHlwb2dyYXBoeUJ1bXAsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVDb21wYWN0U2Vjb25kYXJ5RGVzY3JpcHRpb25UeXBvZ3JhcGh5QnVtcHttYXgtaGVpZ2h0OjZyZW19Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uU2VhcmNoLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uU2VhcmNoe2NvbG9yOiM2MDYwNjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo1LjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uU2VhcmNoLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uU2VhcmNoey13ZWJraXQtbGluZS1jbGFtcDozO21heC1oZWlnaHQ6bm9uZX19Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uU2VhcmNoLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlQ29tcGFjdERlc2NyaXB0aW9uU2VhcmNoe21heC1oZWlnaHQ6NS40cmVtfS55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dHNTdHlsZVN0YW5kYXJkSGVhZGxpbmUsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5le3BhZGRpbmctdG9wOnZhcigtLWZlZWQtYWQtbWV0YWRhdGEtdG9wLXBhZGRpbmcpO21hcmdpbi1ib3R0b206NHB4O2NvbG9yOiMwMzAzMDM7LW1vei1ib3gtZmxleDoxO2ZsZXg6MSAxIGF1dG87Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo1MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo0LjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlU3RhbmRhcmRIZWFkbGluZSwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0VGV4dHNTdHlsZVN0YW5kYXJkSGVhZGxpbmV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5lLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlU3RhbmRhcmRIZWFkbGluZXttYXgtaGVpZ2h0OjQuNHJlbX0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5lV2F0Y2hOZXh0LC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlU3RhbmRhcmRIZWFkbGluZVdhdGNoTmV4dHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo1MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo0cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dHNTdHlsZVN0YW5kYXJkSGVhZGxpbmVXYXRjaE5leHQsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5lV2F0Y2hOZXh0ey13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlU3RhbmRhcmRIZWFkbGluZVdhdGNoTmV4dCwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0VGV4dHNTdHlsZVN0YW5kYXJkSGVhZGxpbmVXYXRjaE5leHR7bWF4LWhlaWdodDo0cmVtfS55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dHNTdHlsZVN0YW5kYXJkSGVhZGxpbmVUeXBvZ3JhcGh5QnVtcCwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0VGV4dHNTdHlsZVN0YW5kYXJkSGVhZGxpbmVUeXBvZ3JhcGh5QnVtcHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjhyZW07bGluZS1oZWlnaHQ6Mi42cmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjUuMnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5lVHlwb2dyYXBoeUJ1bXAsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5lVHlwb2dyYXBoeUJ1bXB7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5lVHlwb2dyYXBoeUJ1bXAsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5lVHlwb2dyYXBoeUJ1bXB7bWF4LWhlaWdodDo1LjJyZW19Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlU3RhbmRhcmRIZWFkbGluZVR5cG9ncmFwaHlCdW1wVjIsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5lVHlwb2dyYXBoeUJ1bXBWMntmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToycmVtO2xpbmUtaGVpZ2h0OjIuOHJlbTtmb250LXdlaWdodDo5MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo1LjZyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlU3RhbmRhcmRIZWFkbGluZVR5cG9ncmFwaHlCdW1wVjIsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5lVHlwb2dyYXBoeUJ1bXBWMnstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fUBtZWRpYSAobWF4LXdpZHRoOjUyNy45cHgpey55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dHNTdHlsZVN0YW5kYXJkSGVhZGxpbmVUeXBvZ3JhcGh5QnVtcFYyLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlU3RhbmRhcmRIZWFkbGluZVR5cG9ncmFwaHlCdW1wVjJ7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS44cmVtO2xpbmUtaGVpZ2h0OjIuNnJlbTtmb250LXdlaWdodDo5MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo1LjJyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlU3RhbmRhcmRIZWFkbGluZVR5cG9ncmFwaHlCdW1wVjIsLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5lVHlwb2dyYXBoeUJ1bXBWMnstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fX0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVTdGFuZGFyZEhlYWRsaW5lVHlwb2dyYXBoeUJ1bXBWMiwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0VGV4dHNTdHlsZVN0YW5kYXJkSGVhZGxpbmVUeXBvZ3JhcGh5QnVtcFYye21heC1oZWlnaHQ6NS42cmVtfUBtZWRpYSAobWF4LXdpZHRoOjUyNy45cHgpey55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dHNTdHlsZVN0YW5kYXJkSGVhZGxpbmVUeXBvZ3JhcGh5QnVtcFYyLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlU3RhbmRhcmRIZWFkbGluZVR5cG9ncmFwaHlCdW1wVjJ7bWF4LWhlaWdodDo1LjJyZW19fS55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dHNTdHlsZVN0YW5kYXJkRGVzY3JpcHRpb24sLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVTdGFuZGFyZERlc2NyaXB0aW9ue21hcmdpbi1ib3R0b206NHB4O2NvbG9yOiM2MDYwNjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVTdGFuZGFyZERlc2NyaXB0aW9uLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlU3RhbmRhcmREZXNjcmlwdGlvbnstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50VGV4dHNTdHlsZVN0YW5kYXJkRGVzY3JpcHRpb24sLnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdFRleHRzU3R5bGVTdGFuZGFyZERlc2NyaXB0aW9ue21heC1oZWlnaHQ6NHJlbX0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVTdGFuZGFyZFNlY29uZGFyeURlc2NyaXB0aW9uLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlU3RhbmRhcmRTZWNvbmRhcnlEZXNjcmlwdGlvbntjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0d0ZlZWRBZE1ldGFkYXRhVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRUZXh0c1N0eWxlU3RhbmRhcmRTZWNvbmRhcnlEZXNjcmlwdGlvbiwueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0VGV4dHNTdHlsZVN0YW5kYXJkU2Vjb25kYXJ5RGVzY3JpcHRpb257LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXR3RmVlZEFkTWV0YWRhdGFWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudFRleHRzU3R5bGVTdGFuZGFyZFNlY29uZGFyeURlc2NyaXB0aW9uLC55dHdGZWVkQWRNZXRhZGF0YVZpZXdNb2RlbEhvc3RUZXh0c1N0eWxlU3RhbmRhcmRTZWNvbmRhcnlEZXNjcmlwdGlvbnttYXgtaGVpZ2h0OjRyZW19Lnl0d0FkRGlzY2xvc3VyZUJhbm5lclZpZXdNb2RlbEhvc3R7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC42KTtib3JkZXItcmFkaXVzOjRweDtkaXNwbGF5Oi1tb3otaW5saW5lLWJveDtkaXNwbGF5OmlubGluZS1mbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O21heC13aWR0aDozMTJweDtwYWRkaW5nOjhweH0ueXR3QWREaXNjbG9zdXJlQmFubmVyVmlld01vZGVsSG9zdEhhc0FjY2VudHstbW96LWJvcmRlci1zdGFydDo0cHggc29saWQgdmFyKC0tYWQtZGlzY2xvc3VyZS1hY2NlbnQtY29sb3IpO2JvcmRlci1pbmxpbmUtc3RhcnQ6NHB4IHNvbGlkIHZhcigtLWFkLWRpc2Nsb3N1cmUtYWNjZW50LWNvbG9yKX0ueXR3QWREaXNjbG9zdXJlQmFubmVyVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnR7Y3Vyc29yOnBvaW50ZXJ9Lnl0d0FkRGlzY2xvc3VyZUJhbm5lclZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50OmZvY3VzLXZpc2libGV7b3V0bGluZToycHggc29saWQgI2ZmZjtvdXRsaW5lLW9mZnNldDoycHh9Lnl0d0FkRGlzY2xvc3VyZUJhbm5lclZpZXdNb2RlbFRleHR7YmFja2dyb3VuZDpub25lO2NvbG9yOiNmZmY7LW1vei1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRGbGV4aWJsZUFjdGlvbnNWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRGbGV4aWJsZUFjdGlvbnNWaWV3TW9kZWxBY3Rpb25Sb3d7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dEZsZXhpYmxlQWN0aW9uc1ZpZXdNb2RlbEFjdGlvblJvdzpub3QoOmxhc3QtY2hpbGQpe3BhZGRpbmctYm90dG9tOjhweH0ueXRGbGV4aWJsZUFjdGlvbnNWaWV3TW9kZWxBY3Rpb246bm90KDpsYXN0LWNoaWxkKTpub3QoOmVtcHR5KXtwYWRkaW5nLXJpZ2h0OjhweH0ueXRGbGV4aWJsZUFjdGlvbnNWaWV3TW9kZWxBY3Rpb25Sb3dBY3Rpb257bWluLXdpZHRoOjA7LW1vei1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxO2ZsZXgtYmFzaXM6MH0ueXRGbGV4aWJsZUFjdGlvbnNWaWV3TW9kZWxBY3Rpb25Sb3dBY3Rpb246ZW1wdHl7LW1vei1ib3gtZmxleDowO2ZsZXgtZ3JvdzowfS55dEZsZXhpYmxlQWN0aW9uc1ZpZXdNb2RlbEFjdGlvbkludHJpbnNpY1dpZHRoey1tb3otYm94LWZsZXg6MDtmbGV4LWdyb3c6MDtmbGV4LWJhc2lzOmF1dG99Lnl0RmxleGlibGVBY3Rpb25zVmlld01vZGVsQWN0aW9uUm93QWN0aW9uRmVhdHVyZVBob25le2ZsZXgtYmFzaXM6dW5zZXQ7bWluLXdpZHRoOnVuc2V0fS55dEZsZXhpYmxlQWN0aW9uc1ZpZXdNb2RlbEFjdGlvbkljb25Pbmx5QnV0dG9uey1tb3otYm94LWZsZXg6MDtmbGV4Om5vbmV9Lnl0RmxleGlibGVBY3Rpb25zVmlld01vZGVsSW5saW5ley1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93fS55dEZsZXhpYmxlQWN0aW9uc1ZpZXdNb2RlbFNjcm9sbGFibGV7b3ZlcmZsb3c6YXV0byBoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93LXk6YXV0bztzY3JvbGxiYXItY29sb3I6dHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7c2Nyb2xsYmFyLXdpZHRoOnRoaW59Lnl0RmxleGlibGVBY3Rpb25zVmlld01vZGVsU2Nyb2xsYWJsZTo6LXdlYmtpdC1zY3JvbGxiYXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudDt3aWR0aDo4cHh9Lnl0RmxleGlibGVBY3Rpb25zVmlld01vZGVsU2Nyb2xsYWJsZTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7aGVpZ2h0OjU2cHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0ueXRGbGV4aWJsZUFjdGlvbnNWaWV3TW9kZWxTY3JvbGxhYmxlOmhvdmVye3Njcm9sbGJhci1jb2xvcjojOTA5MDkwIHRyYW5zcGFyZW50fS55dEZsZXhpYmxlQWN0aW9uc1ZpZXdNb2RlbFNjcm9sbGFibGU6aG92ZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6IzkwOTA5MH0ueXRGbGV4aWJsZUFjdGlvbnNWaWV3TW9kZWxGbGV4V3JhcHtmbGV4LXdyYXA6d3JhcDtyb3ctZ2FwOjhweH0ueXRGbGV4aWJsZUFjdGlvbnNWaWV3TW9kZWxKdXN0aWZ5Q29udGVudFN0YXJ0ey1tb3otYm94LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnR9Lnl0RmxleGlibGVBY3Rpb25zVmlld01vZGVsSnVzdGlmeUNvbnRlbnRFbmR7LW1vei1ib3gtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS55dEZsZXhpYmxlQWN0aW9uc1ZpZXdNb2RlbENlbnRlcmVkIC55dEZsZXhpYmxlQWN0aW9uc1ZpZXdNb2RlbEFjdGlvbiwueXRGbGV4aWJsZUFjdGlvbnNWaWV3TW9kZWxDZW50ZXJlZCAueXRGbGV4aWJsZUFjdGlvbnNWaWV3TW9kZWxBY3Rpb25Sb3d7ZmxleC1iYXNpczowOy1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MTttaW4td2lkdGg6MH0ueXRFbmdhZ2VtZW50QmFyVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dEVuZ2FnZW1lbnRCYXJWaWV3TW9kZWxFbmdhZ2VtZW50QmFyV3JhcHBlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdztoZWlnaHQ6NDhweDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dExvY2t1cEF0dGFjaG1lbnRzVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1mbGV4OjE7ZmxleDoxOy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRMb2NrdXBBdHRhY2htZW50c1ZpZXdNb2RlbEF0dGFjaG1lbnR7bWFyZ2luLXRvcDoxMnB4O21pbi13aWR0aDowfS55dExvY2t1cEF0dGFjaG1lbnRzVmlld01vZGVsRXhwYW5kYWJsZU1ldGFkYXRhe3BhZGRpbmctdG9wOjRweH0ueXR3Q2Fyb3VzZWxBZENhcmRDb2xsZWN0aW9uVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleH0ueXR3Q2Fyb3VzZWxBZENhcmRDb2xsZWN0aW9uVmlld01vZGVsRnVsbEhlaWdodEJ1dHRvbntoZWlnaHQ6MTAwJX0ueXR3Q2Fyb3VzZWxBZENhcmRDb2xsZWN0aW9uVmlld01vZGVsRnVsbEhlaWdodEJ1dHRvbj4ueXRTcGVjQnV0dG9uU2hhcGVOZXh0SG9zdHtoZWlnaHQ6MTAwJTtib3JkZXItcmFkaXVzOjEycHh9Lnl0d0Nhcm91c2VsQWRDYXJkQ29sbGVjdGlvblZpZXdNb2RlbE1ldGFkYXRhQXR0YWNobWVudENhcm91c2Vse2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O2dhcDoxMnB4O292ZXJmbG93LXg6YXV0bztzY3JvbGxiYXItd2lkdGg6bm9uZX0ueXR3Q2Fyb3VzZWxBZENhcmRDb2xsZWN0aW9uVmlld01vZGVsTWV0YWRhdGFBdHRhY2htZW50Q2Fyb3VzZWw6Oi13ZWJraXQtc2Nyb2xsYmFye2Rpc3BsYXk6bm9uZX0ueXR3Q2Fyb3VzZWxBZENhcmRDb2xsZWN0aW9uVmlld01vZGVsTWV0YWRhdGFBdHRhY2htZW50Q2Fyb3VzZWxJdGVte3dpZHRoOjk2cHg7ZmxleC1zaHJpbms6MDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleH0ueXR3Q2Fyb3VzZWxBZENhcmRDb2xsZWN0aW9uVmlld01vZGVsTWV0YWRhdGFBdHRhY2htZW50Q2Fyb3VzZWxXcmFwcGVye3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7d2lkdGg6MTAwJX0ueXR3Q2Fyb3VzZWxBZENhcmRDb2xsZWN0aW9uVmlld01vZGVsUGFkZGxle3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6MTt3aWR0aDozNnB4O2hlaWdodDozNnB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3gtc2hhZG93OjAgMnB4IDRweCByZ2JhKDAsMCwwLDAuMjUpO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXR3Q2Fyb3VzZWxBZENhcmRDb2xsZWN0aW9uVmlld01vZGVsUGFkZGxlTGVmdHtsZWZ0Oi0xNnB4fS55dHdDYXJvdXNlbEFkQ2FyZENvbGxlY3Rpb25WaWV3TW9kZWxQYWRkbGVSaWdodHtyaWdodDotMTZweH0ueXR3Q2Fyb3VzZWxBZENhcmRJbWFnZVZpZXdNb2RlbEhvc3QsLnl0d0Nhcm91c2VsQWRDYXJkSW1hZ2VWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudHthc3BlY3QtcmF0aW86MTtib3JkZXItcmFkaXVzOjhweDtvdmVyZmxvdzpoaWRkZW47bWF4LWhlaWdodDoxMDAlO21heC13aWR0aDoxMDAlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MTthbGlnbi1zZWxmOnN0cmV0Y2g7Y3Vyc29yOnBvaW50ZXI7cG9zaXRpb246cmVsYXRpdmV9Lnl0d0Nhcm91c2VsQWRDYXJkSW1hZ2VWaWV3TW9kZWxIb3N0OmFmdGVyLC55dHdDYXJvdXNlbEFkQ2FyZEltYWdlVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnQ6YWZ0ZXJ7Y29udGVudDoiIjtiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7d2lsbC1jaGFuZ2U6b3BhY2l0eTtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowfS55dHdDYXJvdXNlbEFkQ2FyZEltYWdlVmlld01vZGVsSG9zdDpob3ZlcjphZnRlciwueXR3Q2Fyb3VzZWxBZENhcmRJbWFnZVZpZXdNb2RlbEhvc3RJc0NsaWNrYWJsZUFkQ29tcG9uZW50OmhvdmVyOmFmdGVye29wYWNpdHk6LjF9Lnl0d0Nhcm91c2VsQWRDYXJkSW1hZ2VWaWV3TW9kZWxIb3N0Q2FyZEJhZGdlLC55dHdDYXJvdXNlbEFkQ2FyZEltYWdlVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRDYXJkQmFkZ2V7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4fS55dHdBZENhcmRCYWRnZVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9jaztoZWlnaHQ6MThweDtwYWRkaW5nOjRweDtiYWNrZ3JvdW5kLWNvbG9yOndoaXRlO2JvcmRlci1yYWRpdXM6MCAwIDRweH0ueXR3QWRJbWFnZVZpZXdNb2RlbEhvc3QsLnl0d0FkSW1hZ2VWaWV3TW9kZWxIb3N0SXNDbGlja2FibGVBZENvbXBvbmVudHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlfS55dHdBZEltYWdlVmlld01vZGVsSG9zdEltYWdlQ29udGFpbmVyLC55dHdBZEltYWdlVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRJbWFnZUNvbnRhaW5lcnt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6aW5saW5lLWJsb2NrfS55dHdBZEltYWdlVmlld01vZGVsSG9zdEltYWdlLC55dHdBZEltYWdlVmlld01vZGVsSG9zdElzQ2xpY2thYmxlQWRDb21wb25lbnRJbWFnZXt2aXNpYmlsaXR5OmluaGVyaXR9Lnl0d0FkSW1hZ2VWaWV3TW9kZWxIb3N0SW5HcmlkVmlld3t3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3Bvc2l0aW9uOmFic29sdXRlfS55dHdBZEltYWdlVmlld01vZGVsSG9zdEluR3JpZFZpZXdJbWFnZUNvbnRhaW5lcnt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6aW5saW5lLWJsb2NrfS55dHdBZEltYWdlVmlld01vZGVsSG9zdEluR3JpZFZpZXdJbWFnZXt2aXNpYmlsaXR5OmluaGVyaXR9Lnl0d0FkSW1hZ2VWaWV3TW9kZWxIb3N0QWREaXNjbG9zdXJlQmFubmVyQ29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDo4cHg7bGVmdDo4cHg7ei1pbmRleDoxfS55dHdIb3Jpem9udGFsQ2Fyb3VzZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOnN0cmV0Y2g7YWxpZ24taXRlbXM6c3RyZXRjaDt3aWR0aDoxMDAlO292ZXJmbG93OmhpZGRlbn0ueXR3SG9yaXpvbnRhbENhcm91c2VsQ2Fyb3VzZWxXcmFwcGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3dpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVufS55dHdIb3Jpem9udGFsQ2Fyb3VzZWxDYXJvdXNlbElubmVyV3JhcHBlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7d2lkdGg6MTAwJX0ueXR3SG9yaXpvbnRhbENhcm91c2VsQW5pbWF0aW5ne3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTAwJSl9Lnl0d0hvcml6b250YWxDYXJvdXNlbENhcm91c2VsSXRlbXtmbGV4LXNocmluazowfS55dHdIb3Jpem9udGFsQ2Fyb3VzZWxOZXh0QnV0dG9ue2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Y3Vyc29yOnBvaW50ZXI7bWFyZ2luLWxlZnQ6OHB4fS55dHdBZEJ1dHRvbkdyb3VwVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtmbGV4LWJhc2lzOjEwMCU7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXR3QWRCdXR0b25Hcm91cFZpZXdNb2RlbEhvc3RQcmltYXJ5QnV0dG9uey1tb3otYm94LWZsZXg6MTtmbGV4OjF9Lnl0d0FkQnV0dG9uR3JvdXBWaWV3TW9kZWxIb3N0U2Vjb25kYXJ5QnV0dG9ue21hcmdpbi1yaWdodDo0cHg7LW1vei1ib3gtZmxleDoxO2ZsZXg6MX0ueXR3QWRCdXR0b25Hcm91cFZpZXdNb2RlbEhvc3RDb21wYWN0V2lkdGh7ZmxleC1iYXNpczowO21pbi13aWR0aDoyMDBweDt3aWR0aDo1MCU7Z2FwOjEycHh9Lnl0d0FkQnV0dG9uR3JvdXBWaWV3TW9kZWxIb3N0Q29tcGFjdFdpZHRoU2Vjb25kYXJ5QnV0dG9ue21hcmdpbi1yaWdodDowfS55dHdBZEJ1dHRvblZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9jaztoZWlnaHQ6LW1vei1tYXgtY29udGVudDtoZWlnaHQ6bWF4LWNvbnRlbnR9Lnl0d0FkQnV0dG9uVmlld01vZGVsSG9zdEhhc0FuaW1hdGlvbnt0cmFuc2l0aW9uOm9wYWNpdHksaGVpZ2h0O3RyYW5zaXRpb24tZHVyYXRpb246LjNzfS55dHdBZEJ1dHRvblZpZXdNb2RlbEhvc3RDb21wYWN0V2lkdGh7ZmxleC1iYXNpczowO3dpZHRoOi1tb3otbWF4LWNvbnRlbnQ7d2lkdGg6bWF4LWNvbnRlbnQ7bWluLXdpZHRoOjI1JX0ueXR3QWRCdXR0b25WaWV3TW9kZWxIb3N0Q29udGVudFdpZHRoe3dpZHRoOi1tb3otbWF4LWNvbnRlbnQ7d2lkdGg6bWF4LWNvbnRlbnR9Lnl0d0FkQnV0dG9uVmlld01vZGVsU2hvd3tvcGFjaXR5OjF9Lnl0d0FkQnV0dG9uVmlld01vZGVsSGlkZXtvcGFjaXR5OjB9Lnl0d0FkQnV0dG9uVmlld01vZGVsRnVsbEhlaWdodHtoZWlnaHQ6YXV0b30ueXR3QWRCdXR0b25WaWV3TW9kZWxOb0hlaWdodHtoZWlnaHQ6MH0ueXRTbGltbGluZVN1cnZleVZpZXdNb2RlbEhvc3R7cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyLXJhZGl1czoxMnB4O2JhY2tncm91bmQtY29sb3I6I2ZmZjtib3gtc2hhZG93OjAgMnB4IDEwcHggcmdiYSgwLDAsMCwwLjI1KTttYXJnaW4tdG9wOjI0cHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21heC1oZWlnaHQ6MzAwcHg7dHJhbnNpdGlvbjptYXgtaGVpZ2h0IC4zcyxtYXJnaW4gLjNzLG9wYWNpdHkgLjNzfS55dFNsaW1saW5lU3VydmV5Vmlld01vZGVsSG9zdDpiZWZvcmV7Y29udGVudDoiIjtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Ym94LXNoYWRvdzowIDAgNHB4IHJnYmEoMCwwLDAsMC4yNSk7cG9zaXRpb246YWJzb2x1dGU7bWFyZ2luLWxlZnQ6LTEycHg7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDt0b3A6LTEycHg7bGVmdDo1MCU7dHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyl9Lnl0U2xpbWxpbmVTdXJ2ZXlWaWV3TW9kZWxDb2xsYXBzZWR7bWF4LWhlaWdodDowO21hcmdpbi10b3A6MDtvcGFjaXR5OjB9Lnl0U2xpbWxpbmVTdXJ2ZXlWaWV3TW9kZWxDb2xsYXBzZWQ6YmVmb3Jle29wYWNpdHk6MH0ueXRTbGltbGluZVN1cnZleVZpZXdNb2RlbENvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlci1yYWRpdXM6MTJweDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7cGFkZGluZzo4cHggMTJweDtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmV9Lnl0U2xpbWxpbmVTdXJ2ZXlWaWV3TW9kZWxIZWFkZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59Lnl0U2xpbWxpbmVTdXJ2ZXlWaWV3TW9kZWxUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjIuMnJlbX0ueXRTbGltbGluZVN1cnZleVZpZXdNb2RlbEFuc3dlcnN7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59Lnl0U2xpbWxpbmVTdXJ2ZXlWaWV3TW9kZWxJY29ue2hlaWdodDozNnB4O3dpZHRoOjM2cHh9Lnl0U2xpbWxpbmVTdXJ2ZXlWaWV3TW9kZWxBbnN3ZXJzVGV4dHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbjtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRUYWJsZVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlfS55dFRhYmxlVmlld01vZGVsUm93e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO21hcmdpbi1ib3R0b206OHB4fS55dFRhYmxlVmlld01vZGVsUm93Qm90dG9tQm9yZGVye3BhZGRpbmctYm90dG9tOjhweH0ueXRUYWJsZVZpZXdNb2RlbFJvd0JvdHRvbUJvcmRlcjpub3QoOmxhc3QtY2hpbGQpe2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKX0ueXRUYWJsZVZpZXdNb2RlbENlbGx7Y29sb3I6IzYwNjA2MDt0ZXh0LWFsaWduOnJpZ2h0O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRUYWJsZVZpZXdNb2RlbFJvd0xhYmVse2NvbG9yOiMwMzAzMDM7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dERpc2NsYWltZXJJdGVtVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrO2NvbG9yOiM2MDYwNjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MXJlbTtsaW5lLWhlaWdodDoxLjZyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFJlc3BvbnNlQWN0aW9uc1ZpZXdNb2RlbEhvc3R7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRSZXNwb25zZUFjdGlvbnNWaWV3TW9kZWxUZXh0e2Rpc3BsYXk6YmxvY2t9Lnl0UmVzcG9uc2VBY3Rpb25zVmlld01vZGVsVGV4dExlZnR7bWFyZ2luLXJpZ2h0OjE2cHh9Lnl0UmVzcG9uc2VBY3Rpb25zVmlld01vZGVsVGV4dFJpZ2h0e21hcmdpbi1sZWZ0OjE2cHh9Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbEhvc3RIaWRkZW57ZGlzcGxheTpub25lfS55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94O3dpZHRoOi1tb3otZml0LWNvbnRlbnQ7d2lkdGg6Zml0LWNvbnRlbnQ7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDAsMCwwLDAuMSl9Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0TWVkaWFDYXJke2JvcmRlci1yYWRpdXM6MzJweDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtwYWRkaW5nOjI0cHh9Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0Q2FyZHstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1yYWRpdXM6MTZweDtwYWRkaW5nOjAgMTZweH0ueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRQaWxsey1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0UGlsbC55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdFNtYWxsTGF5b3V0e21heC13aWR0aDo5MCU7aGVpZ2h0OjQwcHg7Ym9yZGVyLXJhZGl1czoyMHB4O3BhZGRpbmc6NHB4IDE2cHggNHB4IDRweH0ueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRQaWxsLnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0U21hbGxMYXlvdXQgLnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsTGVhZGluZ0FjY2Vzc29yeXtoZWlnaHQ6MzJweDt3aWR0aDozMnB4fS55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdFBpbGwueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRTbWFsbExheW91dC55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdFRleHRPbmx5e3BhZGRpbmc6OHB4IDE2cHh9Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0UGlsbC55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdERlZmF1bHRMYXlvdXR7aGVpZ2h0OjQ4cHg7Ym9yZGVyLXJhZGl1czoyNHB4O21heC13aWR0aDo1MDBweDtwYWRkaW5nOjZweCAxNnB4IDZweCA2cHh9Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0UGlsbC55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdERlZmF1bHRMYXlvdXQgLnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsTGVhZGluZ0FjY2Vzc29yeXtoZWlnaHQ6MzZweDt3aWR0aDozNnB4fS55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdFBpbGwueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHREZWZhdWx0TGF5b3V0Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0VGV4dE9ubHl7cGFkZGluZzoxNnB4IDI0cHh9Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsTGVhZGluZ0FjY2Vzc29yeXtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ZmxleC1zaHJpbms6MH0ueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRQaWxsIC55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbExlYWRpbmdBY2Nlc3Nvcnl7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMDUpO21hcmdpbi1yaWdodDo4cHh9Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0Q2FyZCAueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxMZWFkaW5nQWNjZXNzb3J5e21hcmdpbi1yaWdodDoxMnB4fS55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbExlYWRpbmdBY2Nlc3NvcnlSb3RhdGVMZWZ0e3RyYW5zZm9ybTpyb3RhdGUoLTNkZWcpfS55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbExlYWRpbmdBY2Nlc3NvcnlSb3RhdGVSaWdodHt0cmFuc2Zvcm06cm90YXRlKDNkZWcpfS55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbEVuYWJsZVpvb206aG92ZXIgLnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsTGVhZGluZ0ltYWdle3RyYW5zZm9ybTpzY2FsZSgxLjA4KX1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246bm8tcHJlZmVyZW5jZSl7Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsRW5hYmxlWm9vbSAueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxMZWFkaW5nSW1hZ2V7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGN1YmljLWJlemllciguMDUsMCwwLDEpfX0ueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRUZXh0V3JhcHBlcnttaW4td2lkdGg6MH0ueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRUZXh0e2NvbG9yOiMwMzAzMDM7LW1vei1ib3gtZmxleDoxO2ZsZXg6MSAxIGF1dG87bWluLXdpZHRoOjB9Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0U21hbGxMYXlvdXQgLnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0VGV4dHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo1MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0RGVmYXVsdExheW91dCAueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRUZXh0e2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO3doaXRlLXNwYWNlOm5vd3JhcDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFNlY29uZGFyeUxhYmVse3BhZGRpbmctYm90dG9tOjRweDtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO3doaXRlLXNwYWNlOm5vd3JhcDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdE1lZGlhQ2FyZCAueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxMZWFkaW5nQWNjZXNzb3J5e21hcmdpbi1yaWdodDowO2JvcmRlci1yYWRpdXM6MTZweDtvdmVyZmxvdzpoaWRkZW59Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0TWVkaWFDYXJkIC55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdFRleHRXcmFwcGVye3BhZGRpbmctdG9wOjEycHh9Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0Q2FyZC55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdFNtYWxsTGF5b3V0e3dpZHRoOjEwMCU7bWluLWhlaWdodDo1NnB4fS55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdENhcmQueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRTbWFsbExheW91dCAueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRUZXh0e2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0Q2FyZC55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdFNtYWxsTGF5b3V0IC55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdFRleHR7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRDYXJkLnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0RGVmYXVsdExheW91dHt3aWR0aDoxMDAlO21pbi1oZWlnaHQ6NjhweH0ueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRDYXJkLnl0U3VnZ2VzdGVkUHJvbXB0Vmlld01vZGVsUHJvbXB0RGVmYXVsdExheW91dCAueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHRUZXh0e2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NC40cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdENhcmQueXRTdWdnZXN0ZWRQcm9tcHRWaWV3TW9kZWxQcm9tcHREZWZhdWx0TGF5b3V0IC55dFN1Z2dlc3RlZFByb21wdFZpZXdNb2RlbFByb21wdFRleHR7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRMb2NrdXBWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWZsZXg6MTtmbGV4OjE7cG9zaXRpb246cmVsYXRpdmU7Y3Vyc29yOnBvaW50ZXI7bWluLXdpZHRoOjA7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50fS55dExvY2t1cFZpZXdNb2RlbEZsZXhOb25ley1tb3otYm94LWZsZXg6MDtmbGV4Om5vbmV9Lnl0TG9ja3VwVmlld01vZGVsV3JhcHBlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59Lnl0TG9ja3VwVmlld01vZGVsRW5kb3JzZW1lbnR7cG9zaXRpb246YWJzb2x1dGU7dG9wOi0yMHB4O2NvbG9yOiM2MDYwNjB9Lnl0TG9ja3VwVmlld01vZGVsTWV0YWRhdGF7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7bWluLXdpZHRoOjA7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS55dExvY2t1cFZpZXdNb2RlbENlbnRlcmVkIC55dExvY2t1cFZpZXdNb2RlbE1ldGFkYXRhey1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0TG9ja3VwVmlld01vZGVsQWRkTWFyZ2luc3ttYXJnaW4tcmlnaHQ6MTJweDttYXJnaW4tbGVmdDoxMnB4fS55dExvY2t1cFZpZXdNb2RlbEZ1bGxibGVlZCAueXRMb2NrdXBWaWV3TW9kZWxNZXRhZGF0YXttYXJnaW4tbGVmdDoxMnB4O21hcmdpbi1yaWdodDoxMnB4fS55dExvY2t1cFZpZXdNb2RlbENvbnRlbnRJbWFnZXtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aW5oZXJpdDstbW96LWJveC1kaXJlY3Rpb246aW5oZXJpdDtmbGV4LWRpcmVjdGlvbjppbmhlcml0fS55dExvY2t1cFZpZXdNb2RlbENpbmVtYXRpY3tib3JkZXItcmFkaXVzOjEycHg7b3ZlcmZsb3c6aGlkZGVufS55dExvY2t1cFZpZXdNb2RlbFZlcnRpY2Fsey1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRMb2NrdXBWaWV3TW9kZWxWZXJ0aWNhbCAueXRMb2NrdXBWaWV3TW9kZWxDb250ZW50SW1hZ2V7cGFkZGluZy1ib3R0b206OHB4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0TG9ja3VwVmlld01vZGVsVmVydGljYWwueXRMb2NrdXBWaWV3TW9kZWxSaWNoR3JpZExlZ2FjeU1hcmdpbiAueXRMb2NrdXBWaWV3TW9kZWxDb250ZW50SW1hZ2V7cGFkZGluZy1ib3R0b206MTJweH0ueXRMb2NrdXBWaWV3TW9kZWxIb3Jpem9udGFsey1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O2hlaWdodDppbmhlcml0fS55dExvY2t1cFZpZXdNb2RlbEhvcml6b250YWwgLnl0TG9ja3VwVmlld01vZGVsQ29udGVudEltYWdle2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWZsZXg6MDtmbGV4Om5vbmU7cGFkZGluZy1yaWdodDoxNnB4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWF4LXdpZHRoOjUwMHB4fS55dExvY2t1cFZpZXdNb2RlbEhvcml6b250YWwgLnl0TG9ja3VwVmlld01vZGVsTWV0YWRhdGF7LW1vei1ib3gtZmxleDoxO2ZsZXg6MX0ueXRMb2NrdXBWaWV3TW9kZWxIb3Jpem9udGFsLnl0TG9ja3VwVmlld01vZGVsQ29sbGVjdGlvblN0YWNrMXtwb3NpdGlvbjpyZWxhdGl2ZTttYXJnaW4tdG9wOjZweH0ueXRMb2NrdXBWaWV3TW9kZWxIb3Jpem9udGFsLnl0TG9ja3VwVmlld01vZGVsQ29sbGVjdGlvblN0YWNrMntwb3NpdGlvbjpyZWxhdGl2ZTttYXJnaW4tdG9wOjEwcHh9Lnl0TG9ja3VwVmlld01vZGVsSG9yaXpvbnRhbC55dExvY2t1cFZpZXdNb2RlbENvbXBhY3QgLnl0TG9ja3VwVmlld01vZGVsQ29udGVudEltYWdle3BhZGRpbmctcmlnaHQ6OHB4fS55dExvY2t1cFZpZXdNb2RlbFNpbmdsZUNvbHVtbkdyaWQueXRMb2NrdXBWaWV3TW9kZWxDb2xsZWN0aW9uU3RhY2sxe3Bvc2l0aW9uOnJlbGF0aXZlO21hcmdpbi10b3A6NnB4fS55dExvY2t1cFZpZXdNb2RlbFNpbmdsZUNvbHVtbkdyaWQueXRMb2NrdXBWaWV3TW9kZWxDb2xsZWN0aW9uU3RhY2sye3Bvc2l0aW9uOnJlbGF0aXZlO21hcmdpbi10b3A6MTBweH0ueXRMb2NrdXBWaWV3TW9kZWxJbkNhcmQueXRMb2NrdXBWaWV3TW9kZWxDb2xsZWN0aW9uU3RhY2sxe3Bvc2l0aW9uOnJlbGF0aXZlO21hcmdpbi10b3A6NnB4fS55dExvY2t1cFZpZXdNb2RlbEluQ2FyZC55dExvY2t1cFZpZXdNb2RlbENvbGxlY3Rpb25TdGFjazJ7cG9zaXRpb246cmVsYXRpdmU7bWFyZ2luLXRvcDoxMHB4fS55dExvY2t1cFZpZXdNb2RlbE1ldGFkYXRhT25UaHVtYm5haWx7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3Bvc2l0aW9uOnJlbGF0aXZlfS55dExvY2t1cFZpZXdNb2RlbE1ldGFkYXRhT25UaHVtYm5haWwgLnl0TG9ja3VwVmlld01vZGVsTWV0YWRhdGF7LW1vei1ib3gtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO3RvcDo1MCU7cGFkZGluZzo4cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gdG9wLHJnYmEoMCwwLDAsMC44KSAwLHJnYmEoMCwwLDAsMCkgMTAwJSl9Lnl0TG9ja3VwVmlld01vZGVsTWV0YWRhdGFPblRodW1ibmFpbC55dExvY2t1cFZpZXdNb2RlbENpbmVtYXRpYyAueXRMb2NrdXBWaWV3TW9kZWxDb250ZW50SW1hZ2V7aGVpZ2h0OjU1JX0ueXRMb2NrdXBWaWV3TW9kZWxNZXRhZGF0YU9uVGh1bWJuYWlsLnl0TG9ja3VwVmlld01vZGVsQ2luZW1hdGljIC55dExvY2t1cFZpZXdNb2RlbE1ldGFkYXRhe2hlaWdodDo3NSU7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLHRyYW5zcGFyZW50IDAsIzMzMyA1MCUpO3RvcDphdXRvfS55dExvY2t1cFZpZXdNb2RlbENhcmR7Ym9yZGVyLXJhZGl1czoxMnB4O292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4wNSl9Lnl0TG9ja3VwVmlld01vZGVsUHJvdGVjdEJhY2tncm91bmR7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyl9Lnl0U3Vic2NyaWJlQnV0dG9uVmlld01vZGVsSG9zdHtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDttYXgtd2lkdGg6MTAwJX0ueXRTdWJzY3JpYmVCdXR0b25WaWV3TW9kZWxIb3N0Q2FuQW5pbWF0ZVdpZHRoe3RyYW5zaXRpb246d2lkdGggLjVzIGVhc2V9Lnl0U3Vic2NyaWJlQnV0dG9uVmlld01vZGVsSG9zdEhpZGRlbntkaXNwbGF5Om5vbmV9Lnl0U3Vic2NyaWJlQnV0dG9uVmlld01vZGVsSW52aXNpYmxle3Bvc2l0aW9uOmFic29sdXRlO3Zpc2liaWxpdHk6aGlkZGVuO3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0U3Vic2NyaWJlQnV0dG9uVmlld01vZGVsQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4fS55dFN1YnNjcmliZUJ1dHRvblZpZXdNb2RlbEFuaW1hdGVkQWN0aW9uV3JhcHBlcnttYXgtd2lkdGg6MTAwJX0ueXRTdWJzY3JpYmVCdXR0b25WaWV3TW9kZWxBbmltYXRlZEFjdGlvbldyYXBwZXJJc0FuaW1hdGluZywueXRTdWJzY3JpYmVCdXR0b25WaWV3TW9kZWxTdGF0aWNXaWR0aHt3aWR0aDoxMDAlfS55dENvbGxlY3Rpb25zU3RhY2tSZWxhdGl2ZVN0YWNre3Bvc2l0aW9uOnJlbGF0aXZlfS55dENvbGxlY3Rpb25zU3RhY2tTcGFjZXJ7aGVpZ2h0OjVweH0ueXRDb2xsZWN0aW9uc1N0YWNrU3BhY2VyRG91YmxlU3RhY2t7aGVpZ2h0OjlweH0ueXRDb2xsZWN0aW9uc1N0YWNrQ29sbGVjdGlvblN0YWNrMntiYWNrZ3JvdW5kLWNvbG9yOiM2MDYwNjA7b3BhY2l0eTo1MCU7cG9zaXRpb246YWJzb2x1dGU7dG9wOi04cHg7d2lkdGg6Y2FsYygxMDAlIC0gMjRweCk7aGVpZ2h0OjEwMCU7bGVmdDoxMnB4O3JpZ2h0OjEycHg7Ym9yZGVyLXJhZGl1czoxMnB4fUBtZWRpYSAobWluLWFzcGVjdC1yYXRpbzoxMy85KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1pbi13aWR0aDo5MzFweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey55dENvbGxlY3Rpb25zU3RhY2tDb2xsZWN0aW9uU3RhY2syUmVzcG9uc2l2ZU1vZGV7ZGlzcGxheTpub25lfX0ueXRDb2xsZWN0aW9uc1N0YWNrQ29sbGVjdGlvblN0YWNrMk1hc2t7bWFyZ2luLXRvcDotMXB4O21hc2staW1hZ2U6bGluZWFyLWdyYWRpZW50KDE4MGRlZyx0cmFuc3BhcmVudCAwLHRyYW5zcGFyZW50IDFweCxibGFjayAwLGJsYWNrIDRweCx0cmFuc3BhcmVudCAwLHRyYW5zcGFyZW50IDZweCxibGFjayAwLGJsYWNrIDhweCx0cmFuc3BhcmVudCAwLHRyYW5zcGFyZW50IDEwcHgsYmxhY2sgMCl9Lnl0Q29sbGVjdGlvbnNTdGFja0NvbGxlY3Rpb25TdGFjazF7YmFja2dyb3VuZC1jb2xvcjojNjA2MDYwO21hcmdpbi10b3A6LTFweDtib3JkZXItdG9wOjFweCBzb2xpZCAjZmZmfS55dENvbGxlY3Rpb25zU3RhY2tDb2xsZWN0aW9uU3RhY2sxU21hbGx7cG9zaXRpb246YWJzb2x1dGU7dG9wOi00cHg7d2lkdGg6Y2FsYygxMDAlIC0gMTZweCk7aGVpZ2h0OjEwMCU7bGVmdDo4cHg7cmlnaHQ6OHB4O2JvcmRlci1yYWRpdXM6NHB4fS55dENvbGxlY3Rpb25zU3RhY2tDb2xsZWN0aW9uU3RhY2sxTWVkaXVte3Bvc2l0aW9uOmFic29sdXRlO3RvcDotNHB4O3dpZHRoOmNhbGMoMTAwJSAtIDE2cHgpO2hlaWdodDoxMDAlO2xlZnQ6OHB4O3JpZ2h0OjhweDtib3JkZXItcmFkaXVzOjhweH0ueXRDb2xsZWN0aW9uc1N0YWNrQ29sbGVjdGlvblN0YWNrMUxhcmdle3Bvc2l0aW9uOmFic29sdXRlO3RvcDotNHB4O3dpZHRoOmNhbGMoMTAwJSAtIDE2cHgpO2hlaWdodDoxMDAlO2xlZnQ6OHB4O3JpZ2h0OjhweDtib3JkZXItcmFkaXVzOjEycHh9Lnl0Q29sbGVjdGlvbnNTdGFja0NvbGxlY3Rpb25TdGFjazFNYXNre21hc2staW1hZ2U6bGluZWFyLWdyYWRpZW50KDE4MGRlZyx0cmFuc3BhcmVudCAwLHRyYW5zcGFyZW50IDFweCxibGFjayAwLGJsYWNrIDRweCx0cmFuc3BhcmVudCAwLHRyYW5zcGFyZW50IDZweCxibGFjayAwKTtib3JkZXItdG9wOm5vbmV9Lnl0UHJvZmlsZUljb25Ib3N0e2Rpc3BsYXk6aW5saW5lLWJsb2NrO292ZXJmbG93OmhpZGRlbjtmbGV4LXNocmluazowO2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjEpfS55dFByb2ZpbGVJY29uSG9zdDpoYXMoLnl0UHJvZmlsZUljb25JbWFnZSl7YmFja2dyb3VuZC1jb2xvcjp1bnNldH0ueXRQcm9maWxlSWNvbkltYWdle3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9Lnl0TWV0YWRhdGFCYWRnZVJlbmRlcmVySG9zdCsueXRNZXRhZGF0YUJhZGdlUmVuZGVyZXJIb3N0e21hcmdpbi1sZWZ0OjRweH0ueXR3U3RhbmRhbG9uZVlwY0JhZGdlUmVuZGVyZXJIb3N0e21hcmdpbi1sZWZ0OjRweH0ueXR3U3RhbmRhbG9uZVlwY0JhZGdlUmVuZGVyZXJTdGFuZGFsb25lWXBjTW9kZXJuQmFkZ2V7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3d9Lnl0d1N0YW5kYWxvbmVZcGNCYWRnZVJlbmRlcmVyU3RhbmRhbG9uZVlwY0Rpc2NvdW50VGV4dEJhZGdle21hcmdpbi1yaWdodDo0cHg7dGV4dC1kZWNvcmF0aW9uOmxpbmUtdGhyb3VnaH0ueXR3VGV4dEJhZGdlUmVuZGVyZXJIb3N0Ky55dHdUZXh0QmFkZ2VSZW5kZXJlckhvc3R7bWFyZ2luLWxlZnQ6NHB4fS5ZdG1CYWRnZUFuZEJ5bGluZVJlbmRlcmVySG9zdHstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0OjNlbTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO292ZXJmbG93OmhpZGRlbn1AbWVkaWEgKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpey5ZdG1CYWRnZUFuZEJ5bGluZVJlbmRlcmVySG9zdHtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6bm9uZTtvdmVyZmxvdzp2aXNpYmxlfX0uWXRtQmFkZ2VBbmRCeWxpbmVSZW5kZXJlckhvc3RbZGF0YS1pcy1hbGwtYmFkZ2VzPXRydWVde21hcmdpbi10b3A6NHB4fS5ZdG1CYWRnZUFuZEJ5bGluZVJlbmRlcmVySG9zdCB5dG0tYmFkZ2Utc3VwcG9ydGVkLXJlbmRlcmVye3Bvc2l0aW9uOnJlbGF0aXZlfS5ZdG1CYWRnZUFuZEJ5bGluZVJlbmRlcmVyU21hbGxMb2NrdXB7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtbGluZS1jbGFtcDoxfS5ZdG1CYWRnZUFuZEJ5bGluZVJlbmRlcmVyU21hbGxMb2NrdXBEaXZ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9Lll0bUJhZGdlQW5kQnlsaW5lUmVuZGVyZXJIb3N0IC5ZdG1CYWRnZUFuZEJ5bGluZVJlbmRlcmVyU21hbGxMb2NrdXBTcGFue2Rpc3BsYXk6YmxvY2s7bGluZS1oZWlnaHQ6MS4yNTttYXgtaGVpZ2h0OjEuMjVlbTtvdmVyZmxvdzpoaWRkZW47d2hpdGUtc3BhY2U6cHJlO3dvcmQtYnJlYWs6YnJlYWstd29yZDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS5ZdG1CYWRnZUFuZEJ5bGluZVJlbmRlcmVySXRlbUJhZGdlLC5ZdG1CYWRnZUFuZEJ5bGluZVJlbmRlcmVySXRlbUJ5bGluZSwuWXRtQmFkZ2VBbmRCeWxpbmVSZW5kZXJlclNlcGFyYXRvcnttYXJnaW4tcmlnaHQ6NHB4fS5ZdG1CYWRnZUFuZEJ5bGluZVJlbmRlcmVySXRlbUJ5bGluZXtmb250LXNpemU6MS4ycmVtO2Rpc3BsYXk6aW5saW5lO29wYWNpdHk6LjZ9Lll0bUJhZGdlQW5kQnlsaW5lUmVuZGVyZXJJdGVtQmFkZ2V7ZGlzcGxheTppbmxpbmUtYmxvY2t9Lll0bUJhZGdlQW5kQnlsaW5lUmVuZGVyZXJTZXBhcmF0b3J7Zm9udC1zaXplOjEuMnJlbTtvcGFjaXR5Oi42fS5ZdG1CYWRnZVN1cHBvcnRlZFJlbmRlcmVySG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleH0uWXRtQmFkZ2VTdXBwb3J0ZWRSZW5kZXJlckhvc3Q+eXQtbWV0YWRhdGEtYmFkZ2UtcmVuZGVyZXJ7bWluLXdpZHRoOjA7ZmxleC1zaHJpbms6MTAwMDB9Lll0bUJhZGdlU3VwcG9ydGVkUmVuZGVyZXJIb3N0Pnl0LW1ldGFkYXRhLWJhZGdlLXJlbmRlcmVyOmZpcnN0LWNoaWxke2ZsZXgtc2hyaW5rOjF9Lll0bUJhZGdlU3VwcG9ydGVkUmVuZGVyZXJIb3N0IHl0bS1iYWRnZXtkaXNwbGF5OmJsb2NrO292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30uWXRtUHJpdmFjeUJhZGdlUmVuZGVyZXJIb3N0e21hcmdpbi1sZWZ0OjRweH0uWXRtQ2hhbm5lbFRodW1ibmFpbFdpdGhMaW5rUmVuZGVyZXJIb3N0e2Rpc3BsYXk6YmxvY2t9Lll0bUNoYW5uZWxUaHVtYm5haWxXaXRoTGlua1JlbmRlcmVySWNvbntoZWlnaHQ6NDBweDt3aWR0aDo0MHB4fWxhenktbGlzdCB5dG0tbWVkaWEtaXRlbXtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6MDttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW59bGF6eS1saXN0IHl0bS1tZWRpYS1pdGVtIC5tZWRpYS1pdGVtLXRodW1ibmFpbC1jb250YWluZXJ7cGFkZGluZzowIDEycHh9bGF6eS1saXN0IHl0bS1tZWRpYS1pdGVtIC5tZWRpYS1pdGVtLWRldGFpbHN7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxO21pbi13aWR0aDowO3BhZGRpbmctbGVmdDowO21hcmdpbi10b3A6NHB4fXl0bS1tZWRpYS1pdGVtIC51cHBlci1kZXRhaWxzey1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDttYXJnaW4tYm90dG9tOjhweH1sYXp5LWxpc3QgeXRtLW1lZGlhLWl0ZW0gLm1lZGlhLWNoYW5uZWx7bWFyZ2luLXRvcDo4cHh9eXRtLW1lZGlhLWl0ZW0gLnVwcGVyLWRldGFpbHMgLm1lZGlhLWNoYW5uZWwseXRtLW1lZGlhLWl0ZW1bdXNlLXZlcnRpY2FsLWxheW91dF0gLnVwcGVyLWRldGFpbHMgLm1lZGlhLWNoYW5uZWx7bWFyZ2luLXRvcDowfXl0bS1tZWRpYS1pdGVtIC51cHBlci1kZXRhaWxzIHl0bS1wcm9maWxlLWljb257ZGlzcGxheTpibG9jaztoZWlnaHQ6MzZweDt3aWR0aDozNnB4fWxhenktbGlzdCB5dG0tbWVkaWEtaXRlbSAubWVkaWEtaXRlbS1tZXRhZGF0YXttYXJnaW4tdG9wOjhweH1sYXp5LWxpc3QgLml0ZW0geXRtLW1lZGlhLWl0ZW17bWFyZ2luLXRvcDowO21hcmdpbi1ib3R0b206MTJweH1sYXp5LWxpc3QgeXRtLW1lZGlhLWl0ZW0gLnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2V7bWFyZ2luOjAgLTEycHh9QGtleWZyYW1lcyBtZXRhZGF0YS1ib3VuY2V7MCUsdG97dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCl9MjAlLDgwJXt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMTIwcHgpfX15dG0tbWVkaWEtaXRlbSAubWV0YWRhdGEtc2Nyb2xsLWNvbnRhaW5lcntvdmVyZmxvdzphdXRvO3Njcm9sbC1zbmFwLXR5cGU6eCBtYW5kYXRvcnk7c2Nyb2xsYmFyLXdpZHRoOm5vbmV9eXRtLW1lZGlhLWl0ZW0gLm1ldGFkYXRhLWNvbnRlbnQtY29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3dpZHRoOjIwMCV9eXRtLW1lZGlhLWl0ZW0gLm1ldGFkYXRhLWNvbnRlbnQtY29udGFpbmVyLmJvdW5jZXthbmltYXRpb24tbmFtZTptZXRhZGF0YS1ib3VuY2U7YW5pbWF0aW9uLWR1cmF0aW9uOjNzO2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6MX15dG0tbWVkaWEtaXRlbSAuc2Nyb2xsLXZpZXd7d2lkdGg6NTAlO3Njcm9sbC1zbmFwLWFsaWduOnN0YXJ0fXl0bS1tZWRpYS1pdGVtIC5zY3JvbGwtZG90cy1jb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxMDAlfXl0bS1tZWRpYS1pdGVtIC5zY3JvbGwtZG90e2hlaWdodDo0cHg7d2lkdGg6NHB4O2JvcmRlcjoxcHggc29saWQgIzAzMDMwMztib3JkZXItcmFkaXVzOjUwJTttYXJnaW46MCAzcHh9eXRtLW1lZGlhLWl0ZW0gLnNjcm9sbC1kb3QuYWN0aXZle2JhY2tncm91bmQtY29sb3I6IzAzMDMwM315dG0tbWVkaWEtaXRlbXtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6MCAxMnB4O21pbi13aWR0aDowfXl0bS1tZWRpYS1pdGVtW3VzZS12ZXJ0aWNhbC1sYXlvdXRde3BhZGRpbmc6MH15dG0tbWVkaWEtaXRlbVt1c2UtdmVydGljYWwtbGF5b3V0XSAubWVkaWEtaXRlbS1tZXRhZGF0YXttYXJnaW4tdG9wOjhweH15dG0tbWVkaWEtaXRlbVt1c2UtdmVydGljYWwtbGF5b3V0XSAudXBwZXItZGV0YWlscyAubWVkaWEtaXRlbS1tZXRhZGF0YXttYXJnaW4tdG9wOjA7YWxpZ24tc2VsZjpjZW50ZXJ9eXRtLW1lZGlhLWl0ZW1bdXNlLXZlcnRpY2FsLWxheW91dF0gLm1lZGlhLWNoYW5uZWx7bWFyZ2luLXRvcDo4cHh9eXRtLW1lZGlhLWl0ZW0+YXtkaXNwbGF5OmJsb2NrfS5tZWRpYS1pdGVtLXRodW1ibmFpbC1jb250YWluZXJ7cG9zaXRpb246cmVsYXRpdmV9Lm1lZGlhLWl0ZW0tdGh1bWJuYWlsLWNvbnRhaW5lci5zdGFja2VkOm5vdCgubXVsdGktY29sdW1uLWZlZWQpe21hcmdpbi1sZWZ0OjEycHg7bWFyZ2luLXJpZ2h0OjEycHg7cG9zaXRpb246cmVsYXRpdmU7bWFyZ2luLXRvcDoxMHB4fS5tZWRpYS1pdGVtLXRodW1ibmFpbC1jb250YWluZXIubXVsdGktY29sdW1uLWZlZWR7bWFyZ2luLXRvcDotMnB4fUBtZWRpYSAobWluLWFzcGVjdC1yYXRpbzoxMy85KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1pbi13aWR0aDo5MzFweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey5tZWRpYS1pdGVtLXRodW1ibmFpbC1jb250YWluZXIuc3RhY2tlZDpub3QoLm11bHRpLWNvbHVtbi1mZWVkKXttYXJnaW4tbGVmdDp1bnNldDttYXJnaW4tcmlnaHQ6dW5zZXR9Lm1lZGlhLWl0ZW0tdGh1bWJuYWlsLWNvbnRhaW5lci5zdGFja2VkOm5vdCgubXVsdGktY29sdW1uLWZlZWQpe21hcmdpbi10b3A6NHB4fXl0bS1tZWRpYS1pdGVtIC5tZWRpYS1pdGVtLWxhbmRzY2FwZS1zdGFja3tkaXNwbGF5Om5vbmV9eXRtLW1lZGlhLWl0ZW0gLm1lZGlhLWl0ZW0tZGV0YWlscy5zdGFja2Vke21hcmdpbi10b3A6NHB4fX1AbWVkaWEgKG1pbi13aWR0aDo1NTBweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7eXRtLW1lZGlhLWl0ZW0gLm1lZGlhLWl0ZW0tZGV0YWlscy5zdGFja2VkLXBsYXlsaXN0e21hcmdpbi1sZWZ0OjRweH19Lm1lZGlhLWl0ZW0tYW5pbWF0ZWQtdGh1bWJuYWlsLC5tZWRpYS1pdGVtLXRodW1ibmFpbC1zbGlkZXNob3d7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3dpZHRoOjEwMCV9LmlubGluZS1ieWxpbmUtY2hhbm5lbC1uYW1le21hcmdpbi1ib3R0b206M3B4fS5tZWRpYS1pdGVtLW1ldGFkYXRhe2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MTstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47bWluLXdpZHRoOjB9Lm1lZGlhLWl0ZW0taGVhZGxpbmV7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7bWF4LWhlaWdodDoyLjVlbTstd2Via2l0LWxpbmUtY2xhbXA6MjtvdmVyZmxvdzpoaWRkZW47bGluZS1oZWlnaHQ6MS4yNTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2ZvbnQtd2VpZ2h0OjQwMDttYXJnaW46MCAwIDNweDtmb250LXNpemU6MS40cmVtfS5tZWRpYS1pdGVtLXRvcC1iYWRnZXMgeXQtbWV0YWRhdGEtYmFkZ2UtcmVuZGVyZXJ7ZGlzcGxheTpibG9ja30ubWVkaWEtaWNvbntoZWlnaHQ6NDBweDt3aWR0aDo0MHB4fS5tZWRpYS1jaGFubmVse2ZsZXgtc2hyaW5rOjB9Lm1lZGlhLWl0ZW0taW5mbyx5dG0tbWVkaWEtaXRlbSAubWVkaWEtaXRlbS1kZXRhaWxzey1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MTttaW4td2lkdGg6MH0ubWVkaWEtaXRlbS1pbmZve2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDttYXJnaW4tbGVmdDoxMnB4fS5tZWRpYS1pdGVtLWRldGFpbHMuc21hbGwtbG9ja3VwLC5tZWRpYS1pdGVtLWluZm9bbm8tY2hhbm5lbC1hdmF0YXI9dHJ1ZV17bWFyZ2luLWxlZnQ6MDttYXJnaW4tcmlnaHQ6MH0ubWVkaWEtaXRlbS1kZXRhaWxzLmZlYXR1cmUtcGhvbmUtbWluaW1hbC1sb2NrdXBzIC5tZWRpYS1pdGVtLWluZm97bWFyZ2luLWxlZnQ6OHB4O21hcmdpbi1yaWdodDo4cHh9Lm1lZGlhLWl0ZW0tZGV0YWlscyAubWVkaWEtaXRlbS1pbmZvW25vLWNoYW5uZWwtYXZhdGFyPXRydWVdW3VzZS1tb2Rlcm4tY29sbGVjdGlvbnM9dHJ1ZV17bWFyZ2luLWxlZnQ6NHB4fS5tZWRpYS1pdGVtLWhlYWRsaW5lLXBsYWNlaG9sZGVye2hlaWdodDoxNnB4O21heC13aWR0aDozMDBweDttYXJnaW4tYm90dG9tOjhweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItcmFkaXVzOjJweH0ubWVkaWEtaXRlbS1oZWFkbGluZS1wbGFjZWhvbGRlcjpudGgtY2hpbGQoMil7d2lkdGg6MTIwcHg7bWFyZ2luLWJvdHRvbTo4cHh9Lm1lZGlhLWl0ZW0tZW5kb3JzZW1lbnQtY29udGFpbmVye2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS42cmVtfUBtZWRpYSAobWluLXdpZHRoOjMwMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1pbi13aWR0aDozMDBweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7Lm1lZGlhLWl0ZW0tZW5kb3JzZW1lbnQtY29udGFpbmVye2xldHRlci1zcGFjaW5nOi4wMmVtfX0ubWVkaWEtaXRlbS1lbmRvcnNlbWVudC1jb250YWluZXJ7bWFyZ2luLWJvdHRvbTotNHB4O2NvbG9yOiMwMzAzMDM7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS5tZWRpYS1pdGVtLWVuZG9yc2VtZW50LWNvbnRhaW5lcj4ubWVkaWEtaXRlbS1zZWNvbmRhcnktaGVhZGxpbmV7cGFkZGluZy10b3A6OHB4fS5tZWRpYS1pdGVtLWVuZG9yc2VtZW50LWNvbnRhaW5lcj4ubWVkaWEtaXRlbS1zZWNvbmRhcnktaGVhZGxpbmU+c3Bhbnstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7ZGlzcGxheTotd2Via2l0LWJveDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczttYXgtaGVpZ2h0OjMuMnJlbTstd2Via2l0LWxpbmUtY2xhbXA6MjtsaW5lLWNsYW1wOjJ9Lm1lZGlhLWl0ZW0tZW5kb3JzZW1lbnQtY29udGFpbmVyPi5tZWRpYS1pdGVtLXNlY29uZGFyeS1oZWFkbGluZT5zcGFuPnN0cm9uZ3tmb250LXdlaWdodDo3MDB9Lm1lZGlhLWl0ZW0tc3ViaGVhZC1wbGFjZWhvbGRlcntoZWlnaHQ6MTZweDt3aWR0aDoxMjBweDttYXJnaW4tYm90dG9tOjNweDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xKTtib3JkZXItcmFkaXVzOjJweH0ubWVkaWEtaXRlbS1tZW51e2ZsZXgtc2hyaW5rOjB9Lm1lZGlhLWl0ZW0tYnlsaW5le3VuaWNvZGUtYmlkaTotbW96LWlzb2xhdGU7dW5pY29kZS1iaWRpOmlzb2xhdGV9eXRtLW1lZGlhLWl0ZW0gLm1lZGlhLWl0ZW0tZGV0YWlscy5mZWF0dXJlLXBob25lLW1pbmltYWwtbG9ja3VwcyAubWVkaWEtY2hhbm5lbHtkaXNwbGF5Om5vbmV9eXRtLW1lZGlhLWl0ZW0gLm1lZGlhLWl0ZW0tZGV0YWlsc3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDttYXJnaW4tdG9wOjEycHh9eXRtLW1lZGlhLWl0ZW1bdXNlLXZlcnRpY2FsLWxheW91dF0gLm1lZGlhLWl0ZW0tZGV0YWlsc3ttYXJnaW4tdG9wOjRweH15dG0tYnJvd3NlIGxhenktbGlzdCB5dG0taXRlbS1zZWN0aW9uLXJlbmRlcmVyOmZpcnN0LW9mLXR5cGUgeXRtLW1lZGlhLWl0ZW17bWFyZ2luOjB9eXRtLWJyb3dzZSB5dG0taXRlbS1zZWN0aW9uLXJlbmRlcmVyOmZpcnN0LW9mLXR5cGUgeXRtLW1lZGlhLWl0ZW17bWFyZ2luOi0xMnB4IDAgMH15dG0tbWVkaWEtaXRlbSAudmlkZW8tdGh1bWJuYWlsLW92ZXJsYXktc2lkZXt3aWR0aDozMyV9QG1lZGlhIChtYXgtd2lkdGg6NTQ5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpe2xhenktbGlzdCB5dG0tbWVkaWEtaXRlbSAubWVkaWEtaXRlbS1kZXRhaWxze3BhZGRpbmctbGVmdDoxMnB4fWxhenktbGlzdCB5dG0tbWVkaWEtaXRlbS5iaWctc2hvcnRzLXNpbmdsZXRvbiAubWVkaWEtaXRlbS10aHVtYm5haWwtY29udGFpbmVye3BhZGRpbmc6MH1sYXp5LWxpc3QgeXRtLW1lZGlhLWl0ZW0uYmlnLXNob3J0cy1zaW5nbGV0b24gLnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2V7bWFyZ2luOjB9fUBtZWRpYSAobWluLXdpZHRoOjU1MHB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KXt5dG0tYnJvd3NlIHl0bS1pdGVtLXNlY3Rpb24tcmVuZGVyZXI6Zmlyc3Qtb2YtdHlwZSB5dG0tcHJvbW90ZWQtdmlkZW8tcmVuZGVyZXIgeXRtLW1lZGlhLWl0ZW17bWFyZ2luLXRvcDowfWxhenktbGlzdCB5dG0tbWVkaWEtaXRlbXtwYWRkaW5nOjAgMTJweH1sYXp5LWxpc3QgLml0ZW0geXRtLW1lZGlhLWl0ZW17bWFyZ2luLXRvcDoxMnB4fWxhenktbGlzdCB5dG0tbWVkaWEtaXRlbSAubWVkaWEtaXRlbS10aHVtYm5haWwtY29udGFpbmVye3BhZGRpbmc6MH1sYXp5LWxpc3QgeXRtLW1lZGlhLWl0ZW0gLnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2V7bWFyZ2luOjB9fUBtZWRpYSAobWluLWFzcGVjdC1yYXRpbzoxMy85KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1pbi13aWR0aDo5MzFweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpe3l0bS1tZWRpYS1pdGVtOm5vdChbdXNlLXZlcnRpY2FsLWxheW91dF0pe2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O21pbi13aWR0aDowfXl0bS1tZWRpYS1pdGVtOm5vdChbdXNlLXZlcnRpY2FsLWxheW91dF0pIC5tZWRpYS1pdGVtLXRodW1ibmFpbC1jb250YWluZXJ7ZmxleC1zaHJpbms6MH15dG0tbWVkaWEtaXRlbTpub3QoW3VzZS12ZXJ0aWNhbC1sYXlvdXRdKSAudmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1sYXJnZXt3aWR0aDoyMDBweDtoZWlnaHQ6MTEycHg7cGFkZGluZy1ib3R0b206MH15dG0tbWVkaWEtaXRlbTpub3QoW3VzZS12ZXJ0aWNhbC1sYXlvdXRdKSAubWVkaWEtaXRlbS1kZXRhaWxzey1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttYXJnaW46MCAxMnB4O21pbi13aWR0aDowO3dpZHRoOjEwMCV9eXRtLW1lZGlhLWl0ZW06bm90KFt1c2UtdmVydGljYWwtbGF5b3V0XSkgLm1lZGlhLWl0ZW0taW5mb3stbW96LWJveC1mbGV4OjA7ZmxleC1ncm93OjB9eXRtLW1lZGlhLWl0ZW06bm90KFt1c2UtdmVydGljYWwtbGF5b3V0XSkgLm1lZGlhLWl0ZW0tbWV0YWRhdGF7bWFyZ2luLWJvdHRvbToycHg7bWF4LWhlaWdodDo3MHB4O292ZXJmbG93OmhpZGRlbjttaW4td2lkdGg6MH15dG0tbWVkaWEtaXRlbVt1c2UtdmVydGljYWwtbGF5b3V0XSAubWVkaWEtaXRlbS1oZWFkbGluZXttYXJnaW4tYm90dG9tOjhweH15dG0tbWVkaWEtaXRlbTpub3QoW3VzZS12ZXJ0aWNhbC1sYXlvdXRdKSAubWVkaWEtY2hhbm5lbHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjE7LW1vei1ib3gtb3JkaW5hbC1ncm91cDoyO29yZGVyOjE7d2lkdGg6MTAwJX15dG0tbWVkaWEtaXRlbTpub3QoW3VzZS12ZXJ0aWNhbC1sYXlvdXRdKSAubWVkaWEtaXRlbS1leHRyYS1lbmRwb2ludHstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjF9bGF6eS1saXN0IHl0bS1tZWRpYS1pdGVte3BhZGRpbmc6MCAxMnB4fWxhenktbGlzdCAuaXRlbSB5dG0tbWVkaWEtaXRlbXttYXJnaW4tdG9wOjEycHh9bGF6eS1saXN0IHl0bS1tZWRpYS1pdGVtIC5tZWRpYS1pdGVtLXRodW1ibmFpbC1jb250YWluZXJ7cGFkZGluZzowfWxhenktbGlzdCB5dG0tbWVkaWEtaXRlbSAubWVkaWEtY2hhbm5lbHttYXJnaW4tdG9wOjB9bGF6eS1saXN0IHl0bS1tZWRpYS1pdGVtIC5tZWRpYS1pdGVtLW1ldGFkYXRhe21hcmdpbi10b3A6MH15dG0tYnJvd3NlIHl0bS1pdGVtLXNlY3Rpb24tcmVuZGVyZXI6Zmlyc3Qtb2YtdHlwZSB5dG0tbWVkaWEtaXRlbTpub3QoW3VzZS12ZXJ0aWNhbC1sYXlvdXRdKXttYXJnaW4tdG9wOjB9eXRtLWJyb3dzZSBsYXp5LWxpc3QgeXRtLWl0ZW0tc2VjdGlvbi1yZW5kZXJlcjpmaXJzdC1vZi10eXBlIHl0bS1tZWRpYS1pdGVtOm5vdChbdXNlLXZlcnRpY2FsLWxheW91dF0pe21hcmdpbi10b3A6MTJweH15dG0tYnJvd3NlIGxhenktbGlzdCB5dG0taXRlbS1zZWN0aW9uLXJlbmRlcmVyOmZpcnN0LW9mLXR5cGUgeXRtLXByb21vdGVkLXZpZGVvLXJlbmRlcmVyIHl0bS1tZWRpYS1pdGVtOm5vdChbdXNlLXZlcnRpY2FsLWxheW91dF0pe21hcmdpbi10b3A6MH1sYXp5LWxpc3QgeXRtLW1lZGlhLWl0ZW0gLnZpZGVvLXRodW1ibmFpbC1jb250YWluZXItbGFyZ2V7bWFyZ2luOjB9eXRtLW1lZGlhLWl0ZW06bm90KFt1c2UtdmVydGljYWwtbGF5b3V0XSkgLm1lZGlhLWl0ZW0taW5mb3ttYXJnaW4tbGVmdDowfXl0bS1tZWRpYS1pdGVtOm5vdChbdXNlLXZlcnRpY2FsLWxheW91dF0pIC5tZWRpYS1pdGVtLWRldGFpbHMuc3RhY2tlZC1wbGF5bGlzdHttYXJnaW4tdG9wOjRweH15dG0tbWVkaWEtaXRlbTpub3QoW3VzZS12ZXJ0aWNhbC1sYXlvdXRdKSAubWVkaWEtaXRlbS1kZXRhaWxzLnN0YWNrZWR7bWFyZ2luLXRvcDo0cHh9fUBtZWRpYSAobWF4LXdpZHRoOjkzMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7bGF6eS1saXN0IHl0bS1tZWRpYS1pdGVte3BhZGRpbmc6MCAxMnB4fWxhenktbGlzdCAuaXRlbSB5dG0tbWVkaWEtaXRlbXttYXJnaW4tdG9wOjEycHh9eXRtLWJyb3dzZSBsYXp5LWxpc3QgeXRtLWl0ZW0tc2VjdGlvbi1yZW5kZXJlcjpmaXJzdC1vZi10eXBlIHl0bS1wcm9tb3RlZC12aWRlby1yZW5kZXJlciB5dG0tbWVkaWEtaXRlbTpub3QoW3VzZS12ZXJ0aWNhbC1sYXlvdXRdKXttYXJnaW4tdG9wOjEycHh9fUBtZWRpYSAobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7eXRtLW1lZGlhLWl0ZW17cGFkZGluZzowIDhweH15dG0tbWVkaWEtaXRlbSAubWVkaWEtaXRlbS1kZXRhaWxze21hcmdpbi10b3A6MTJweDttYXJnaW4tYm90dG9tOjEycHh9eXRtLWJyb3dzZSB5dG0taXRlbS1zZWN0aW9uLXJlbmRlcmVyOmZpcnN0LW9mLXR5cGUgeXRtLW1lZGlhLWl0ZW17bWFyZ2luLXRvcDo4cHh9bGF6eS1saXN0IHl0bS1tZWRpYS1pdGVte3BhZGRpbmc6MCA4cHh9bGF6eS1saXN0IC5pdGVtIHl0bS1tZWRpYS1pdGVte21hcmdpbi1ib3R0b206MH1sYXp5LWxpc3QgeXRtLW1lZGlhLWl0ZW0gLm1lZGlhLWl0ZW0tdGh1bWJuYWlsLWNvbnRhaW5lcntwYWRkaW5nOjB9bGF6eS1saXN0IHl0bS1tZWRpYS1pdGVtIC5tZWRpYS1pdGVtLW1ldGFkYXRhe21hcmdpbi10b3A6MH1sYXp5LWxpc3QgeXRtLW1lZGlhLWl0ZW0gLm1lZGlhLWl0ZW0tZGV0YWlsc3ttYXJnaW4tdG9wOjEycHg7bWFyZ2luLWJvdHRvbTo0cHg7cGFkZGluZy1sZWZ0OjB9eXRtLWJyb3dzZSBsYXp5LWxpc3QgeXRtLW1lZGlhLWl0ZW0gLm1lZGlhLWl0ZW0tZGV0YWlsc3ttYXJnaW4tYm90dG9tOjB9eXRtLWJyb3dzZSBsYXp5LWxpc3QgeXRtLWl0ZW0tc2VjdGlvbi1yZW5kZXJlcjpmaXJzdC1vZi10eXBlIHl0bS1tZWRpYS1pdGVte21hcmdpbi10b3A6OHB4fWxhenktbGlzdCB5dG0tbWVkaWEtaXRlbSAudmlkZW8tdGh1bWJuYWlsLWNvbnRhaW5lci1sYXJnZXttYXJnaW46MH15dG0tYnJvd3NlIGxhenktbGlzdCB5dG0taXRlbS1zZWN0aW9uLXJlbmRlcmVyOmZpcnN0LW9mLXR5cGUgeXRtLXByb21vdGVkLXZpZGVvLXJlbmRlcmVyIHl0bS1tZWRpYS1pdGVtOm5vdChbdXNlLXZlcnRpY2FsLWxheW91dF0pe21hcmdpbi10b3A6OHB4fX1AbWVkaWEgKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7bGF6eS1saXN0IC5pdGVtIHl0bS1tZWRpYS1pdGVte21hcmdpbi10b3A6OHB4fX1AbWVkaWEgKG1pbi13aWR0aDozMDBweCkgYW5kIChtYXgtd2lkdGg6MzMwcHgpe2xhenktbGlzdCB5dG0tbWVkaWEtaXRlbXtwYWRkaW5nOjAgMTJweH1sYXp5LWxpc3QgeXRtLW1lZGlhLWl0ZW0gLm1lZGlhLWl0ZW0tdGh1bWJuYWlsLWNvbnRhaW5lcntwYWRkaW5nOjB9bGF6eS1saXN0IHl0bS1tZWRpYS1pdGVtIC52aWRlby10aHVtYm5haWwtY29udGFpbmVyLWxhcmdle21hcmdpbjowfXl0bS1icm93c2UgbGF6eS1saXN0IHl0bS1pdGVtLXNlY3Rpb24tcmVuZGVyZXI6Zmlyc3Qtb2YtdHlwZSB5dG0tcHJvbW90ZWQtdmlkZW8tcmVuZGVyZXIgeXRtLW1lZGlhLWl0ZW06bm90KFt1c2UtdmVydGljYWwtbGF5b3V0XSl7bWFyZ2luLXRvcDowfX15dG0tbWVkaWEtaXRlbS5zbWFsbC1sb2NrdXB7bWFyZ2luLXJpZ2h0OjA7cGFkZGluZy1sZWZ0OjA7d2lkdGg6MTYwcHh9eXRtLW1lZGlhLWl0ZW0uc21hbGwtbG9ja3VwIC5tZWRpYS1pdGVtLWhlYWRsaW5le2ZvbnQtd2VpZ2h0OjQwMH15dG0tdGh1bWJuYWlsLW92ZXJsYXktaWNvbi1yZW5kZXJlcnstbW96LWJveC1zaXppbmc6Y29udGVudC1ib3g7Ym94LXNpemluZzpjb250ZW50LWJveH15dG0tdGh1bWJuYWlsLW92ZXJsYXktaWNvbi1yZW5kZXJlcjpub3QoW2ljb24tcG9zaXRpb249VEhVTUJOQUlMX09WRVJMQVlfSUNPTl9SRU5ERVJFUl9JQ09OX1BPU0lUSU9OX0JPVFRPTV9MRUZUX0NPUk5FUl0pey1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjMpfXl0bS10aHVtYm5haWwtb3ZlcmxheS1pY29uLXJlbmRlcmVyW2ljb24tcG9zaXRpb249VEhVTUJOQUlMX09WRVJMQVlfSUNPTl9SRU5ERVJFUl9JQ09OX1BPU0lUSU9OX0JPVFRPTV9MRUZUX0NPUk5FUl17cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO2JvdHRvbTowO21hcmdpbjo1cHg7cGFkZGluZzoxcHg7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JvcmRlci1yYWRpdXM6NTAlfVtpY29uLXN0eWxlPVRIVU1CTkFJTF9PVkVSTEFZX0lDT05fUkVOREVSRVJfSUNPTl9TVFlMRV9GSUxMRURdIGMzLWljb257ZGlzcGxheTpibG9jaztwYWRkaW5nOjFweDt3aWR0aDoxLjJyZW07aGVpZ2h0OjEuMnJlbX15dG0tdGh1bWJuYWlsLW92ZXJsYXktaWNvbi1yZW5kZXJlcjpub3QoW2ljb24tc3R5bGU9VEhVTUJOQUlMX09WRVJMQVlfSUNPTl9SRU5ERVJFUl9JQ09OX1NUWUxFX0ZJTExFRF0pIGMzLWljb257d2lkdGg6MnJlbTtoZWlnaHQ6MnJlbX15dG0tdGh1bWJuYWlsLW92ZXJsYXktaWNvbi1yZW5kZXJlcltpY29uLXN0eWxlPVRIVU1CTkFJTF9PVkVSTEFZX0lDT05fUkVOREVSRVJfSUNPTl9TVFlMRV9GSUxMRURdIGMzLWljb24gcGF0aHtmaWxsOiMwMDB9eXRtLXRodW1ibmFpbC1vdmVybGF5LWljb24tcmVuZGVyZXI6bm90KFtpY29uLXN0eWxlPVRIVU1CTkFJTF9PVkVSTEFZX0lDT05fUkVOREVSRVJfSUNPTl9TVFlMRV9GSUxMRURdKSBjMy1pY29uIHBhdGh7ZmlsbDojZmZmfS5ZdG1UaHVtYm5haWxPdmVybGF5UmVzdW1lUGxheWJhY2tSZW5kZXJlckhvc3R7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlO2hlaWdodDo0cHg7YmFja2dyb3VuZC1jb2xvcjojOTA5MDkwO3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowfS5ZdG1UaHVtYm5haWxPdmVybGF5UmVzdW1lUGxheWJhY2tSZW5kZXJlclRodW1ibmFpbE92ZXJsYXlSZXN1bWVQbGF5YmFja1Byb2dyZXNze2hlaWdodDo0cHg7bGVmdDowO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLCNmMDMgODAlLCNmZjI3OTEpfXl0bS12aWRlby13aXRoLWNvbnRleHQtcmVuZGVyZXJ7ZGlzcGxheTpibG9ja31AbWVkaWEgKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtYXgtd2lkdGg6Mjk5cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpe3l0bS12aWRlby13aXRoLWNvbnRleHQtcmVuZGVyZXIuZmVlZC1pdGVte21hcmdpbi1ib3R0b206MTZweH19QG1lZGlhIChtaW4td2lkdGg6MzAwcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKSwobWluLXdpZHRoOjMwMHB4KSBhbmQgKG9yaWVudGF0aW9uOnBvcnRyYWl0KXt5dG0tdmlkZW8td2l0aC1jb250ZXh0LXJlbmRlcmVyLmZlZWQtaXRlbXttYXJnaW4tYm90dG9tOjI0cHh9fUBtZWRpYSAobWF4LXdpZHRoOjI5OXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksKG1heC13aWR0aDoyOTlweCkgYW5kIChvcmllbnRhdGlvbjpwb3J0cmFpdCl7eXRtLXZpZGVvLXdpdGgtY29udGV4dC1yZW5kZXJlci5hZGFwdGl2ZS1mZWVkLWl0ZW17bWFyZ2luLWJvdHRvbToxNnB4fX1AbWVkaWEgKG1pbi13aWR0aDozMDBweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpLChtaW4td2lkdGg6MzAwcHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpe3l0bS12aWRlby13aXRoLWNvbnRleHQtcmVuZGVyZXIuYWRhcHRpdmUtZmVlZC1pdGVte21hcmdpbi1ib3R0b206MjRweH19QG1lZGlhIChtaW4tYXNwZWN0LXJhdGlvOjEzLzkpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKSwobWluLXdpZHRoOjkzMXB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSl7eXRtLXZpZGVvLXdpdGgtY29udGV4dC1yZW5kZXJlci5hZGFwdGl2ZS1mZWVkLWl0ZW17bWFyZ2luLWJvdHRvbToxMnB4fX1sYXp5LWxpc3QgeXRtLXZpZGVvLXdpdGgtY29udGV4dC1yZW5kZXJlci5pdGVte21hcmdpbi10b3A6MH0udmlkZW9UaHVtYm5haWxHcm91cE92ZXJsYXlCb3R0b21MZWZ0UmlnaHRHcm91cHt3aWR0aDoxMDAlO2JvdHRvbTowO3Bvc2l0aW9uOmFic29sdXRlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0udmlkZW9UaHVtYm5haWxHcm91cFJlc3VtZVBsYXliYWNrey1tb3otYm94LW9yZGluYWwtZ3JvdXA6MjtvcmRlcjoxfS52aWRlb1RodW1ibmFpbEdyb3VwVGltZVN0YXR1c3tyaWdodDowO2JvdHRvbTowO3Bvc2l0aW9uOmFic29sdXRlfS52aWRlb1RodW1ibmFpbEdyb3VwT3ZlcmxheUxlZnRSaWdodEdyb3Vwe3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7Ym90dG9tOjA7aGVpZ2h0OjEwMCV9LnZpZGVvVGh1bWJuYWlsR3JvdXBPdmVybGF5Q2VudGVye3RvcDowO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO3Bvc2l0aW9uOmFic29sdXRlfS55dERpYWxvZ1ZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXREaWFsb2dWaWV3TW9kZWxSZXNldFNwYWNpbmdbZGlhbG9nXVtkaWFsb2dde3BhZGRpbmc6MDttYXJnaW46MH0ueXR3QWNjb3VudExpbmtCdXR0b25WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0d0FjY291bnRMaW5rQnV0dG9uVmlld01vZGVsSG9zdE1pbldpZHRoIC55dFNwZWNCdXR0b25TaGFwZU5leHRIb3N0e21pbi13aWR0aDoxMjBweH0ueXRUZXh0RmllbGRWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0Q3JlYXRlUGxheWxpc3REaWFsb2dGb3JtVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrO21hcmdpbi10b3A6MTJweH0ueXRDcmVhdGVQbGF5bGlzdERpYWxvZ0Zvcm1WaWV3TW9kZWxUaXRsZUZpZWxkLC55dENyZWF0ZVBsYXlsaXN0RGlhbG9nRm9ybVZpZXdNb2RlbFZpc2liaWxpdHlGaWVsZHttYXJnaW4tYm90dG9tOjEycHh9Lnl0RHJvcGRvd25WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0RHJvcGRvd25WaWV3TW9kZWxEcm9wZG93bkNvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7aGVpZ2h0OjU2cHg7cGFkZGluZzo4cHggMTJweDtib3JkZXItcmFkaXVzOjhweDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKTtjdXJzb3I6cG9pbnRlcn0ueXREcm9wZG93blZpZXdNb2RlbERyb3Bkb3duQ29udGFpbmVyRXJyb3JCb3JkZXJ7Ym9yZGVyLWNvbG9yOiNjMzAwMjd9Lnl0RHJvcGRvd25WaWV3TW9kZWxEcm9wZG93bkNvbnRhaW5lckRpc2FibGVke2JvcmRlcjowO2NvbG9yOiM5MDkwOTA7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMDUpO2N1cnNvcjpkZWZhdWx0fS55dERyb3Bkb3duVmlld01vZGVsVGV4dHstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjE7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0RHJvcGRvd25WaWV3TW9kZWxMYWJlbHtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dERyb3Bkb3duVmlld01vZGVsTGFiZWxFcnJvcntjb2xvcjojYzMwMDI3fS55dERyb3Bkb3duVmlld01vZGVsVGl0bGV7Y29sb3I6IzAzMDMwMztmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXREcm9wZG93blZpZXdNb2RlbFRpdGxlUGxhY2Vob2xkZXJ7Y29sb3I6IzkwOTA5MH0ueXREcm9wZG93blZpZXdNb2RlbENoZXZyb25Eb3due2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Y29sb3I6IzAzMDMwM30ueXREcm9wZG93blZpZXdNb2RlbENoZXZyb25Eb3duRGlzYWJsZWR7Y29sb3I6IzkwOTA5MH0ueXREcm9wZG93blZpZXdNb2RlbFN1cHBvcnR7bWFyZ2luLXRvcDo0cHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXREcm9wZG93blZpZXdNb2RlbFN1cHBvcnRIaW50e2NvbG9yOiM2MDYwNjB9Lnl0RHJvcGRvd25WaWV3TW9kZWxTdXBwb3J0RXJyb3J7Y29sb3I6I2MzMDAyN30ueXREcm9wZG93blZpZXdNb2RlbFN1cHBvcnRJY29ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoxNnB4O3dpZHRoOjE2cHh9Lnl0RHJvcGRvd25WaWV3TW9kZWxTdXBwb3J0VGV4dHttYXJnaW4tbGVmdDo0cHh9eXRtLWNoaXAtY2xvdWQtY2hpcC1yZW5kZXJlcntjdXJzb3I6cG9pbnRlcjtvdXRsaW5lOm5vbmU7b3ZlcmZsb3c6aGlkZGVuOy1tb3otdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfXl0bS1jaGlwLWNsb3VkLWNoaXAtcmVuZGVyZXIgLmNoaXAtY29udGFpbmVye2hlaWdodDozMnB4O21pbi13aWR0aDo0OHB4O3RleHQtYWxpZ246Y2VudGVyO3BhZGRpbmc6MCAxMnB4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyLXJhZGl1czo4cHg7Ym9yZGVyOjB9eXRtLWNoaXAtY2xvdWQtY2hpcC1yZW5kZXJlciAuY2hpcC1jb250YWluZXIuY2hpcC1uby12ZXJ0aWNhbC1wYWRkaW5ne3BhZGRpbmc6MH15dG0tY2hpcC1jbG91ZC1jaGlwLXJlbmRlcmVyIC5jaGlwLWNvbnRhaW5lcjpoYXMoYzMtaWNvbil7cGFkZGluZy1sZWZ0OjhweH15dG0tY2hpcC1jbG91ZC1jaGlwLXJlbmRlcmVyIC5jaGlwLWNvbnRhaW5lci5saWdodC1lZmZlY3R7cG9zaXRpb246cmVsYXRpdmV9eXRtLWNoaXAtY2xvdWQtY2hpcC1yZW5kZXJlcltjaGlwLXN0eWxlPVNUWUxFX0RFRkFVTFRdIC5jaGlwLWNvbnRhaW5lcix5dG0tY2hpcC1jbG91ZC1jaGlwLXJlbmRlcmVyW2NoaXAtc3R5bGU9U1RZTEVfSE9NRV9GSUxURVJdIC5jaGlwLWNvbnRhaW5lcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4wNSk7Y29sb3I6IzAzMDMwMzt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjVzIGN1YmljLWJlemllciguMDUsMCwwLDEpfXl0bS1jaGlwLWNsb3VkLWNoaXAtcmVuZGVyZXJbY2hpcC1zdHlsZT1TVFlMRV9ERUZBVUxUXSAuY2hpcC1jb250YWluZXI+YzMtaWNvbix5dG0tY2hpcC1jbG91ZC1jaGlwLXJlbmRlcmVyW2NoaXAtc3R5bGU9U1RZTEVfSE9NRV9GSUxURVJdIC5jaGlwLWNvbnRhaW5lcj5jMy1pY29ue2hlaWdodDoxOHB4O3dpZHRoOjE4cHg7cGFkZGluZy1yaWdodDo0cHh9eXRtLWNoaXAtY2xvdWQtY2hpcC1yZW5kZXJlcltjaGlwLXN0eWxlPVNUWUxFX0RFRkFVTFRdLnNlbGVjdGVkIC5jaGlwLWNvbnRhaW5lcix5dG0tY2hpcC1jbG91ZC1jaGlwLXJlbmRlcmVyW2NoaXAtc3R5bGU9U1RZTEVfSE9NRV9GSUxURVJdLnNlbGVjdGVkIC5jaGlwLWNvbnRhaW5lcntiYWNrZ3JvdW5kLWNvbG9yOiMwMzAzMDM7Y29sb3I6I2ZmZn15dG0tY2hpcC1jbG91ZC1jaGlwLXJlbmRlcmVyIC5jaGlwLXRleHR7bWF4LXdpZHRoOjIwcmVtO292ZXJmbG93OmhpZGRlbjt3aGl0ZS1zcGFjZTpub3dyYXA7dGV4dC1vdmVyZmxvdzplbGxpcHNpc315dG0tY2hpcC1jbG91ZC1jaGlwLXJlbmRlcmVyIC5jaGlwLXRleHQubW9kZXJue2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjUwMH15dG0tY2hpcC1jbG91ZC1jaGlwLXJlbmRlcmVyW2NoaXAtc3R5bGU9U1RZTEVfRVhQTE9SRV9MQVVOQ0hFUl9DSElQXSAuY2hpcC1jb250YWluZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMDUpO2JvcmRlci1yYWRpdXM6MnB4O2JvcmRlcjowO3BhZGRpbmc6MCAxMnB4IDAgNnB4fXl0bS1jaGlwLWNsb3VkLWNoaXAtcmVuZGVyZXJbY2hpcC1zdHlsZT1TVFlMRV9FWFBMT1JFX0xBVU5DSEVSX0NISVBdIC5jaGlwLWNvbnRhaW5lcj5jMy1pY29ue3BhZGRpbmctcmlnaHQ6NHB4fXl0bS1jaGlwLWNsb3VkLWNoaXAtcmVuZGVyZXJbY2hpcC1zdHlsZT1TVFlMRV9FWFBMT1JFX0xBVU5DSEVSX0NISVBdLm1vcmUtZHJhd2VyIC5jaGlwLWNvbnRhaW5lcntwYWRkaW5nOjA7bWluLXdpZHRoOjQ4cHh9eXRtLWNoaXAtY2xvdWQtY2hpcC1yZW5kZXJlcltjaGlwLXN0eWxlPVNUWUxFX0VYUExPUkVfTEFVTkNIRVJfQ0hJUF0ubW9yZS1kcmF3ZXIgLmNoaXAtY29udGFpbmVyPmMzLWljb257cGFkZGluZy1yaWdodDowfXl0bS1jaGlwLWNsb3VkLWNoaXAtcmVuZGVyZXIgLmVsZXZhdGVkLWNvbnRlbnR7ei1pbmRleDoxfS55dG1DaGlwc1NoZWxmVmlld01vZGVsSG9zdHstLWNoaXBzLXNoZWxmLXNpZGUtbWFyZ2luOjhweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47bWFyZ2luLWJvdHRvbToyNHB4fS55dG1DaGlwc1NoZWxmVmlld01vZGVsQ2hpcHNTaGVsZkhlYWRlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjttYXJnaW46OHB4IDRweCA4cHggdmFyKC0tY2hpcHMtc2hlbGYtc2lkZS1tYXJnaW4pfS55dG1DaGlwc1NoZWxmVmlld01vZGVsQ2hpcHNTaGVsZkNvbnRlbnR7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXA7cGFkZGluZy1sZWZ0OmNhbGModmFyKC0tY2hpcHMtc2hlbGYtc2lkZS1tYXJnaW4pIC0gNHB4KTtwYWRkaW5nLXJpZ2h0OjEycHg7bWFyZ2luLWJvdHRvbToxNnB4O21heC1oZWlnaHQ6ODBweDtvdmVyZmxvdzpoaWRkZW59Lnl0bUNoaXBzU2hlbGZWaWV3TW9kZWxDaGlwc1NoZWxmVGl0bGV7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7bWF4LWhlaWdodDoyLjVlbTstd2Via2l0LWxpbmUtY2xhbXA6MjtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpcztmb250LXdlaWdodDo0MDA7bWFyZ2luOjAgMCAzcHg7Zm9udC1zaXplOjEuNHJlbTtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MS4yNTttYXJnaW46MDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjhyZW07bGluZS1oZWlnaHQ6Mi42cmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRtQ2hpcHNTaGVsZlZpZXdNb2RlbENoaXBzU2hlbGZJdGVte21hcmdpbjowIDRweCA4cHh9Lnl0bUNoaXBzU2hlbGZWaWV3TW9kZWxNZW51QnV0dG9ue21hcmdpbi1sZWZ0OjhweH0ueXRtQ2hpcHNTaGVsZlZpZXdNb2RlbElzSW5uZXJDaGlwc1NoZWxme21hcmdpbi1ib3R0b206MH0ueXRtQ2hpcHNTaGVsZlZpZXdNb2RlbEVuYWJsZUFuaW1hdGlvbnstLWNoaXBzLXNoZWxmLWhlaWdodDowO292ZXJmbG93OmhpZGRlbjtvcGFjaXR5OjA7aGVpZ2h0OnZhcigtLWNoaXBzLXNoZWxmLWhlaWdodCk7dHJhbnNpdGlvbjpvcGFjaXR5IC41cyxoZWlnaHQgLjNzfS55dG1DaGlwc1NoZWxmVmlld01vZGVsRW5hYmxlQW5pbWF0aW9uLmV4cGFuZGVke29wYWNpdHk6MX0ueXRtQ2hpcHNTaGVsZlZpZXdNb2RlbElzSW5uZXJDaGlwc1NoZWxmQ29udGVudHttYXJnaW4tYm90dG9tOjB9Lnl0bUNoaXBzU2hlbGZWaWV3TW9kZWxJc0hvcml6b250YWxseVNjcm9sbGFibGV7bWF4LWhlaWdodDo0MHB4O292ZXJmbG93LXg6YXV0bztmbGV4LXdyYXA6bm93cmFwO3Njcm9sbGJhci13aWR0aDpub25lfS55dExpc3RJdGVtVmlld0NvdW50Vmlld01vZGVsSG9zdHtjb2xvcjojMDMwMzAzO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NC40cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExpc3RJdGVtVmlld0NvdW50Vmlld01vZGVsSG9zdHstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dExpc3RJdGVtVmlld0NvdW50Vmlld01vZGVsSG9zdHttYXgtaGVpZ2h0OjQuNHJlbX0ueXRDb21tdW5pdHlFZHVWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2s7cGFkZGluZy1ib3R0b206MTZweH0ueXRDb21tdW5pdHlFZHVWaWV3TW9kZWxIZWFkZXJ7cG9zaXRpb246cmVsYXRpdmU7bWFyZ2luLWJvdHRvbToyNHB4fS55dENvbW11bml0eUVkdVZpZXdNb2RlbFRpdGxlSW1hZ2V7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJX0ueXRDb21tdW5pdHlFZHVWaWV3TW9kZWxBdmF0YXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRDb21tdW5pdHlFZHVWaWV3TW9kZWxUaXRsZXtkaXNwbGF5OmJsb2NrO21hcmdpbjowIDI0cHggMTZweDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyLjRyZW07bGluZS1oZWlnaHQ6My4ycmVtO2ZvbnQtd2VpZ2h0OjcwMH1AbWVkaWEgKG1heC13aWR0aDo1MjcuOXB4KXsueXRDb21tdW5pdHlFZHVWaWV3TW9kZWxUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToycmVtO2xpbmUtaGVpZ2h0OjIuOHJlbTtmb250LXdlaWdodDo3MDB9fS55dENvbW11bml0eUVkdVZpZXdNb2RlbFRpdGxle3RleHQtYWxpZ246Y2VudGVyfS55dENvbW11bml0eUVkdVZpZXdNb2RlbENvbnRlbnR7cGFkZGluZy1sZWZ0Ojc4cHh9Lnl0Q29tbXVuaXR5RWR1Vmlld01vZGVsTGVhcm5Nb3Jle2NvbG9yOiMwNjVmZDQ7dGV4dC1hbGlnbjpzdGFydDt0ZXh0LWRlY29yYXRpb246bm9uZTtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRDb21tdW5pdHlFZHVWaWV3TW9kZWxFZHVjYXRpb25hbFRleHRTZXR7dGV4dC1hbGlnbjpzdGFydH0ueXRDb21tdW5pdHlFZHVWaWV3TW9kZWxQcmltYXJ5VGV4dHtkaXNwbGF5OmJsb2NrO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NTAwfS55dENvbW11bml0eUVkdVZpZXdNb2RlbFNlY29uZGFyeVRleHR7ZGlzcGxheTpibG9jazttYXJnaW4tYm90dG9tOjI0cHg7Y29sb3I6IzYwNjA2MDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDB9Lnl0QXZhdGFyU3RhY2tWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1pbmxpbmUtYm94O2Rpc3BsYXk6aW5saW5lLWZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRBdmF0YXJTdGFja1ZpZXdNb2RlbEF2YXRhcnN7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOnJldmVyc2U7ZmxleC1kaXJlY3Rpb246cm93LXJldmVyc2V9Lnl0QXZhdGFyU3RhY2tWaWV3TW9kZWxBdmF0YXJTaXplVGlueTpub3QoOmxhc3QtY2hpbGQpe21hcmdpbi1sZWZ0Oi04cHh9Lnl0QXZhdGFyU3RhY2tWaWV3TW9kZWxBdmF0YXJTaXplRXh0cmFTbWFsbDpub3QoOmxhc3QtY2hpbGQpe21hcmdpbi1sZWZ0Oi04cHh9Lnl0QXZhdGFyU3RhY2tWaWV3TW9kZWxBdmF0YXJTaXplU21hbGw6bm90KDpsYXN0LWNoaWxkKXttYXJnaW4tbGVmdDotOHB4fS55dEF2YXRhclN0YWNrVmlld01vZGVsQXZhdGFyU2l6ZU1lZGl1bTpub3QoOmxhc3QtY2hpbGQpe21hcmdpbi1sZWZ0Oi04cHh9Lnl0QXZhdGFyU3RhY2tWaWV3TW9kZWxBdmF0YXJTaXplNDg6bm90KDpsYXN0LWNoaWxkKXttYXJnaW4tbGVmdDotOHB4fS55dEF2YXRhclN0YWNrVmlld01vZGVsQXZhdGFyU2l6ZUxhcmdlOm5vdCg6bGFzdC1jaGlsZCl7bWFyZ2luLWxlZnQ6LThweH0ueXRBdmF0YXJTdGFja1ZpZXdNb2RlbEF2YXRhclNpemVFeHRyYUxhcmdlOm5vdCg6bGFzdC1jaGlsZCl7bWFyZ2luLWxlZnQ6LThweH0ueXRBdmF0YXJTdGFja1ZpZXdNb2RlbEF2YXRhclNpemVFeHRyYUV4dHJhTGFyZ2U6bm90KDpsYXN0LWNoaWxkKXttYXJnaW4tbGVmdDotOHB4fS55dEF2YXRhclN0YWNrVmlld01vZGVsQXZhdGFyU2l6ZUdpYW50Om5vdCg6bGFzdC1jaGlsZCl7bWFyZ2luLWxlZnQ6LThweH0ueXRBdmF0YXJTdGFja1ZpZXdNb2RlbEF2YXRhclNpemVSZXNwb25zaXZlOm5vdCg6bGFzdC1jaGlsZCl7bWFyZ2luLWxlZnQ6LThweH0ueXRBdmF0YXJTdGFja1ZpZXdNb2RlbFRleHRDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA1KTttYXJnaW46MnB4IDA7bWFyZ2luLWxlZnQ6LThweDtib3JkZXI6MnB4IHNvbGlkICNmZmZ9Lnl0QXZhdGFyU3RhY2tWaWV3TW9kZWxUZXh0Q29udGFpbmVyVGhpbkJvcmRlcnttYXJnaW4tdG9wOjNweDttYXJnaW4tYm90dG9tOjNweDtib3JkZXItd2lkdGg6MXB4fS55dEF2YXRhclN0YWNrVmlld01vZGVsVGV4dENvbnRhaW5lclRoaW5Cb3JkZXJPdmVybGF5e2JvcmRlcjoxcHggc29saWQgI2ZmZjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC4yKX0ueXRBdmF0YXJTdGFja1ZpZXdNb2RlbEF2YXRhckRlY29yYXRlZFRleHR7Y29sb3I6IzYwNjA2MDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo1MDB9Lnl0QXZhdGFyU3RhY2tWaWV3TW9kZWxBdmF0YXJTdGFja1RleHR7bWFyZ2luLWxlZnQ6OHB4O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6MS44cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dEF2YXRhclN0YWNrVmlld01vZGVsQXZhdGFyU3RhY2tUZXh0ey13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0QXZhdGFyU3RhY2tWaWV3TW9kZWxBdmF0YXJTdGFja1RleHR7bWF4LWhlaWdodDoxLjhyZW19Lnl0QXZhdGFyU3RhY2tWaWV3TW9kZWxBdmF0YXJTdGFja1RleHQ6Zmlyc3QtY2hpbGR7bWFyZ2luLWxlZnQ6MH0ueXRBdmF0YXJTdGFja1ZpZXdNb2RlbFRhcHBhYmxle2N1cnNvcjpwb2ludGVyfS55dEF2YXRhclN0YWNrVmlld01vZGVsQXZhdGFyQnV0dG9ue21hcmdpbjo0cHggMH0ueXRBdmF0YXJTdGFja1ZpZXdNb2RlbElzT3ZlcmxheXtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjJweDttYXJnaW4tcmlnaHQ6MnB4fS55dEF2YXRhclN0YWNrVmlld01vZGVsTWVkaXVtVGV4dCAueXRBdmF0YXJTdGFja1ZpZXdNb2RlbEF2YXRhclN0YWNrVGV4dHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoycmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dEF2YXRhclN0YWNrVmlld01vZGVsTWVkaXVtVGV4dCAueXRBdmF0YXJTdGFja1ZpZXdNb2RlbEF2YXRhclN0YWNrVGV4dHstd2Via2l0LWxpbmUtY2xhbXA6MTttYXgtaGVpZ2h0Om5vbmV9fS55dEF2YXRhclN0YWNrVmlld01vZGVsTWVkaXVtVGV4dCAueXRBdmF0YXJTdGFja1ZpZXdNb2RlbEF2YXRhclN0YWNrVGV4dHttYXgtaGVpZ2h0OjJyZW19Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhUm93e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7bWFyZ2luLXRvcDoycHg7b3ZlcmZsb3c6aGlkZGVuO21pbi13aWR0aDowO21heC13aWR0aDoxMDAlfS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhUm93OmZvY3VzLXZpc2libGV7b3V0bGluZToycHggc29saWQgY3VycmVudENvbG9yO291dGxpbmUtb2Zmc2V0OjJweDtib3JkZXItcmFkaXVzOjRweH0ueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxBdmF0YXJTdGFja3ttaW4td2lkdGg6MDttYXgtd2lkdGg6MTAwJX0ueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YVJvd01ldGFkYXRhUm93SW5saW5le2Rpc3BsYXk6LW1vei1pbmxpbmUtYm94O2Rpc3BsYXk6aW5saW5lLWZsZXh9Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWV0YWRhdGFSb3dNZXRhZGF0YVJvd1BhZGRpbmd7cGFkZGluZzo4cHggMH0ueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YVJvd01ldGFkYXRhUm93V3JhcHtmbGV4LXdyYXA6d3JhcH0ueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxCYWRnZXttYXJnaW4tcmlnaHQ6NHB4fS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbEljb257bWFyZ2luLWxlZnQ6NHB4Oy1tb3otYm94LWZsZXg6MDtmbGV4Om5vbmV9Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTGVhZGluZ0ljb257bWFyZ2luLXJpZ2h0OjRweDstbW96LWJveC1mbGV4OjA7ZmxleDpub25lfS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbFNwYWNlcntoZWlnaHQ6NnB4fS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhVGV4dHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMDt3aGl0ZS1zcGFjZTpub3dyYXA7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YVRleHRMYXN0UGFydHtvdmVyZmxvdzpoaWRkZW47bWluLXdpZHRoOjB9Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWV0YWRhdGFUZXh0TWF4TGluZXMwe2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhVGV4dE1heExpbmVzMntmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjMuNnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YVRleHRNYXhMaW5lczJ7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YVRleHRNYXhMaW5lczJ7bWF4LWhlaWdodDozLjZyZW19Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWV0YWRhdGFUZXh0TWF4TGluZXMze2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NS40cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhVGV4dE1heExpbmVzM3std2Via2l0LWxpbmUtY2xhbXA6MzttYXgtaGVpZ2h0Om5vbmV9fS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhVGV4dE1heExpbmVzM3ttYXgtaGVpZ2h0OjUuNHJlbX0ueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YVRleHRNYXhMaW5lczR7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo3LjJyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWV0YWRhdGFUZXh0TWF4TGluZXM0ey13ZWJraXQtbGluZS1jbGFtcDo0O21heC1oZWlnaHQ6bm9uZX19Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWV0YWRhdGFUZXh0TWF4TGluZXM0e21heC1oZWlnaHQ6Ny4ycmVtfS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbERlbGltaXRlcnttYXJnaW46MCA0cHg7dmVydGljYWwtYWxpZ246bWlkZGxlO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbERlbGltaXRlclN0YW5kYWxvbmV7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLXRvcDoycHh9Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsSW5saW5le3doaXRlLXNwYWNlOm5vcm1hbH0ueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxJbmxpbmUgLnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWV0YWRhdGFSb3d7dmVydGljYWwtYWxpZ246bWlkZGxlfS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbFRhcHBhYmxle2N1cnNvcjpwb2ludGVyfS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1lZGl1bVRleHQgLnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWV0YWRhdGFUZXh0e2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDt3aGl0ZS1zcGFjZTpub3dyYXA7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZWRpdW1UZXh0IC55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhVGV4dE1heExpbmVzMHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDB9Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWVkaXVtVGV4dCAueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YVRleHRNYXhMaW5lczJ7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZWRpdW1UZXh0IC55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhVGV4dE1heExpbmVzMnstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1lZGl1bVRleHQgLnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWV0YWRhdGFUZXh0TWF4TGluZXMye21heC1oZWlnaHQ6NHJlbX0ueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZWRpdW1UZXh0IC55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhVGV4dE1heExpbmVzM3tmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo2cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1lZGl1bVRleHQgLnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWV0YWRhdGFUZXh0TWF4TGluZXMzey13ZWJraXQtbGluZS1jbGFtcDozO21heC1oZWlnaHQ6bm9uZX19Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWVkaXVtVGV4dCAueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YVRleHRNYXhMaW5lczN7bWF4LWhlaWdodDo2cmVtfS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1lZGl1bVRleHQgLnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWV0YWRhdGFUZXh0TWF4TGluZXM0e2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjhyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWVkaXVtVGV4dCAueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YVRleHRNYXhMaW5lczR7LXdlYmtpdC1saW5lLWNsYW1wOjQ7bWF4LWhlaWdodDpub25lfX0ueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxNZWRpdW1UZXh0IC55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhVGV4dE1heExpbmVzNHttYXgtaGVpZ2h0OjhyZW19Lnl0Q29udGVudE1ldGFkYXRhVmlld01vZGVsTWVkaXVtVGV4dCAueXRDb250ZW50TWV0YWRhdGFWaWV3TW9kZWxEZWxpbWl0ZXJ7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dENvbnRlbnRNZXRhZGF0YVZpZXdNb2RlbENlbnRlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRDb250ZW50TGlzdEl0ZW1WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS55dENvbnRlbnRMaXN0SXRlbVZpZXdNb2RlbENvbnRlbnRMaXN0SXRlbVdyYXBwZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjttYXJnaW4tbGVmdDoxNnB4fS55dENvbnRlbnRMaXN0SXRlbVZpZXdNb2RlbEltYWdlQ29udGFpbmVye21hcmdpbi10b3A6OHB4O21hcmdpbi1ib3R0b206OHB4O21hcmdpbi1yaWdodDoxMnB4fS55dENvbnRlbnRMaXN0SXRlbVZpZXdNb2RlbGltYWdlQ2xhc3NOYW1le2JvcmRlci1yYWRpdXM6OHB4fS55dENvbnRlbnRMaXN0SXRlbVZpZXdNb2RlbFRpdGxlTWV0YWRhdGFXcmFwcGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRDb250ZW50TGlzdEl0ZW1WaWV3TW9kZWxNZXRhZGF0YXtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dENvbnRlbnRMaXN0SXRlbVZpZXdNb2RlbFRpdGxle2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O2NvbG9yOiMwMzAzMDM7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwfS55dENvbnRlbnRMaXN0SXRlbVZpZXdNb2RlbFByb21pbmVudFRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjIuNHJlbTtsaW5lLWhlaWdodDozLjJyZW07Zm9udC13ZWlnaHQ6NzAwfUBtZWRpYSAobWF4LXdpZHRoOjUyNy45cHgpey55dENvbnRlbnRMaXN0SXRlbVZpZXdNb2RlbFByb21pbmVudFRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjJyZW07bGluZS1oZWlnaHQ6Mi44cmVtO2ZvbnQtd2VpZ2h0OjcwMH19Lnl0Q29udGVudExpc3RJdGVtVmlld01vZGVsQWN0aW9uQnV0dG9ue2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O21hcmdpbi1yaWdodDoxNnB4fS55dENvbnRlbnRMaXN0SXRlbVZpZXdNb2RlbFRhcHBhYmxle2N1cnNvcjpwb2ludGVyfS55dERlY29yYXRlZEF2YXRhclZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRSZWVsQ2hhbm5lbEJhclZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtjb2xvcjp2YXIoLS1yZWVsLW1ldGFkYXRhLWNvbG9yLCNmZmYpfS55dFJlZWxDaGFubmVsQmFyVmlld01vZGVsQ2hhbm5lbE5hbWV7cGFkZGluZzowIDhweDt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6MnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRSZWVsQ2hhbm5lbEJhclZpZXdNb2RlbENoYW5uZWxOYW1ley13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0UmVlbENoYW5uZWxCYXJWaWV3TW9kZWxDaGFubmVsTmFtZXttYXgtaGVpZ2h0OjJyZW19QG1lZGlhIChtYXgtd2lkdGg6Mjk5LjlweCl7Lnl0UmVlbENoYW5uZWxCYXJWaWV3TW9kZWxDaGFubmVsTmFtZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjMuNnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRSZWVsQ2hhbm5lbEJhclZpZXdNb2RlbENoYW5uZWxOYW1ley13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0UmVlbENoYW5uZWxCYXJWaWV3TW9kZWxDaGFubmVsTmFtZXttYXgtaGVpZ2h0OjMuNnJlbX19QG1lZGlhIChtYXgtd2lkdGg6Mjk5LjlweCl7Lnl0UmVlbENoYW5uZWxCYXJWaWV3TW9kZWxSZWVsU3Vic2NyaWJlQnV0dG9ue2Rpc3BsYXk6bm9uZX19QG1lZGlhIChtYXgtd2lkdGg6Mjk5LjlweCl7Lnl0UmVlbENoYW5uZWxCYXJWaWV3TW9kZWxSZWVsU3BvbnNvckJ1dHRvbntkaXNwbGF5Om5vbmV9fS55dFByZWZlcnJlZExhbmd1YWdlU2V0dGluZ3NQYW5lbFZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRBbmltYXRlZEFzc2V0Vmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dEFuaW1hdGVkQXNzZXRWaWV3TW9kZWxGaWxse3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9Lnl0QWxlcnRCYW5uZXJWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O2NvbG9yOiMwMzAzMDM7Ym9yZGVyLXJhZGl1czoxMnB4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9QG1lZGlhIChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0QWxlcnRCYW5uZXJWaWV3TW9kZWxIb3N0e2JvcmRlcjoxcHggc29saWQgQnV0dG9uQm9yZGVyfX0ueXRBbGVydEJhbm5lclZpZXdNb2RlbE5hcnJvd3stbW96LWJveC1hbGlnbjpzdGFydDthbGlnbi1pdGVtczpzdGFydH0ueXRBbGVydEJhbm5lclZpZXdNb2RlbE5hcnJvdyAueXRBbGVydEJhbm5lclZpZXdNb2RlbE91dGVyQ29udGFpbmVyey1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1hbGlnbjpub3JtYWw7YWxpZ24taXRlbXM6bm9ybWFsfS55dEFsZXJ0QmFubmVyVmlld01vZGVsTmFycm93IC55dEFsZXJ0QmFubmVyVmlld01vZGVsQWN0aW9uQnV0dG9ue21hcmdpbjowIDAgMTJweH0ueXRBbGVydEJhbm5lclZpZXdNb2RlbEZ1bGxibGVlZHtib3JkZXItcmFkaXVzOjB9Lnl0QWxlcnRCYW5uZXJWaWV3TW9kZWxJbmZvcm1hdGlvbmFse2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA1KX0ueXRBbGVydEJhbm5lclZpZXdNb2RlbFRpbWVTZW5zaXRpdmV7YmFja2dyb3VuZC1jb2xvcjojZGVmMWZmfS55dEFsZXJ0QmFubmVyVmlld01vZGVsV2FybmluZ3tiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjU1LDg1LDExOSwwLjIpfS55dEFsZXJ0QmFubmVyVmlld01vZGVsRGlzbWlzc2Vke2Rpc3BsYXk6bm9uZX0ueXRBbGVydEJhbm5lclZpZXdNb2RlbE91dGVyQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtZmxleDoxO2ZsZXg6MX0ueXRBbGVydEJhbm5lclZpZXdNb2RlbE91dGVyQ29udGFpbmVyOmZpcnN0LWNoaWxke3BhZGRpbmctbGVmdDoxMnB4fS55dEFsZXJ0QmFubmVyVmlld01vZGVsT3V0ZXJDb250YWluZXI6bGFzdC1jaGlsZHtwYWRkaW5nLXJpZ2h0OjEycHh9Lnl0QWxlcnRCYW5uZXJWaWV3TW9kZWxDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7cGFkZGluZzoxMnB4IDA7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1mbGV4OjE7ZmxleDoxfS55dEFsZXJ0QmFubmVyVmlld01vZGVsSWNvbntwYWRkaW5nOjEycHh9Lnl0QWxlcnRCYW5uZXJWaWV3TW9kZWxDb250ZW50e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRBbGVydEJhbm5lclZpZXdNb2RlbEhlYWRpbmd7cGFkZGluZzowO21hcmdpbjowO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRBbGVydEJhbm5lclZpZXdNb2RlbEJvZHl7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dEFsZXJ0QmFubmVyVmlld01vZGVsQWN0aW9uQnV0dG9ue21hcmdpbjo2cHggMCA2cHggMTJweH0ueXRBbGVydEJhbm5lclZpZXdNb2RlbERpc21pc3NCdXR0b257bWFyZ2luOjZweH0ueXRBbGVydEJhbm5lclZpZXdNb2RlbElzSW5SaWNoR3JpZHttYXJnaW4tYm90dG9tOjE2cHh9LmRpdmlkZXJWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4fS5kaXZpZGVyVmlld01vZGVsSW5zZXRUaGluUGFkZGluZ3twYWRkaW5nOjE2cHh9LmRpdmlkZXJWaWV3TW9kZWxCYXNlRGl2aWRlcntoZWlnaHQ6MXB4O3dpZHRoOjEwMCU7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMSl9LmRpdmlkZXJWaWV3TW9kZWxCYXNlRGl2aWRlckZ1bGxCbGVlZDRweHtoZWlnaHQ6NHB4fS5kaXZpZGVyVmlld01vZGVsQmFzZURpdmlkZXJGdWxsQmxlZWQ4cHh7aGVpZ2h0OjhweH0uZGl2aWRlclZpZXdNb2RlbEJhc2VEaXZpZGVyRnVsbEJsZWVkMTJweHtoZWlnaHQ6MTJweH0uZGl2aWRlclZpZXdNb2RlbEJhc2VEaXZpZGVyRnVsbEJsZWVkVGhpY2t7aGVpZ2h0OjZweH0ueXRUaHVtYm5haWxCYWRnZVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRUaHVtYm5haWxWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJTtvdmVyZmxvdzpoaWRkZW47aGVpZ2h0OjB9Lnl0VGh1bWJuYWlsVmlld01vZGVsQ2luZW1hdGlje2JhY2tncm91bmQtY29sb3I6IzAwMH0ueXRUaHVtYm5haWxWaWV3TW9kZWxBc3BlY3RSYXRpbzE2Qnk5e3BhZGRpbmctdG9wOjU2LjI1JX0ueXRUaHVtYm5haWxWaWV3TW9kZWxBc3BlY3RSYXRpbzJCeTN7cGFkZGluZy10b3A6MTUwJX0ueXRUaHVtYm5haWxWaWV3TW9kZWxTaG9ydHNBc3BlY3RSYXRpbzlCeTE2e3BhZGRpbmctdG9wOjE3OCV9Lnl0VGh1bWJuYWlsVmlld01vZGVsQXNwZWN0UmF0aW8xQnkxe3BhZGRpbmctdG9wOjEwMCV9Lnl0VGh1bWJuYWlsVmlld01vZGVsU21hbGx7Ym9yZGVyLXJhZGl1czo0cHh9Lnl0VGh1bWJuYWlsVmlld01vZGVsTWVkaXVte2JvcmRlci1yYWRpdXM6OHB4fS55dFRodW1ibmFpbFZpZXdNb2RlbExhcmdle2JvcmRlci1yYWRpdXM6MTJweH0ueXRUaHVtYm5haWxWaWV3TW9kZWxJbWFnZXtwb3NpdGlvbjphYnNvbHV0ZTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTt0b3A6NTAlO2xlZnQ6MDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlfS55dFRodW1ibmFpbFZpZXdNb2RlbEJsdXJyZWRJbWFnZXtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2hlaWdodDoyMDAlO2ZpbHRlcjpibHVyKDMwcHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0yNSUpfS55dFRodW1ibmFpbFZpZXdNb2RlbEhpZ2hsaWdodEVmZmVjdHtib3gtc2hhZG93OjAgMCA3cHggMnB4ICMwZjBmMGY7b3V0bGluZTpzb2xpZCAxcHggI2ZmZn0ueXRUaHVtYm5haWxWaWV3TW9kZWxIb3N0QWREaXNjbG9zdXJlQmFubmVyQ29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3RvcDo4cHg7bGVmdDo4cHg7ei1pbmRleDoxfS55dFBpbmtpbmdOc0hvc3R7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjB9Lnl0UGlua2luZ05zUGlua2luZ0xlZnR7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3dpZHRoOjRweDtoZWlnaHQ6MTAwJX0ueXRQaW5raW5nTnNQaW5raW5nUmlnaHR7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt3aWR0aDo0cHg7aGVpZ2h0OjEwMCV9Lnl0UGlua2luZ05zUGlua2luZ3tmaWxsOiNmZmZ9Lnl0VGh1bWJuYWlsT3ZlcmxheUJ1dHRvblZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRUaHVtYm5haWxPdmVybGF5QnV0dG9uVmlld01vZGVsQnV0dG9ue3Bvc2l0aW9uOmFic29sdXRlfS55dFRodW1ibmFpbE92ZXJsYXlCdXR0b25WaWV3TW9kZWxCdXR0b25Cb3R0b21FbmRQb3NpdGlvbntib3R0b206NHB4O3JpZ2h0OjRweH0ueXRUaHVtYm5haWxPdmVybGF5QnV0dG9uVmlld01vZGVsQnV0dG9uVG9wRW5kUG9zaXRpb257dG9wOjhweDtyaWdodDo4cHh9Lnl0VGh1bWJuYWlsT3ZlcmxheUJ1dHRvblZpZXdNb2RlbEJ1dHRvbkxlZ2FjeUljb257cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjhweDtyaWdodDo4cHh9Lnl0VGh1bWJuYWlsT3ZlcmxheVByb2dyZXNzQmFySG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDt3aWR0aDoxMDAlfS55dFRodW1ibmFpbE92ZXJsYXlQcm9ncmVzc0Jhckhvc3RTbWFsbHttYXJnaW4tYm90dG9tOjJweH0ueXRUaHVtYm5haWxPdmVybGF5UHJvZ3Jlc3NCYXJIb3N0TWVkaXVte21hcmdpbi1ib3R0b206NHB4fS55dFRodW1ibmFpbE92ZXJsYXlQcm9ncmVzc0Jhckhvc3RMYXJnZXttYXJnaW4tYm90dG9tOjhweH0ueXRUaHVtYm5haWxPdmVybGF5UHJvZ3Jlc3NCYXJIb3N0UHJvZ3Jlc3NCYXJ7d2lkdGg6MTAwJTtib3JkZXItcmFkaXVzOjJweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzttYXJnaW46MCA4cHggNHB4IDEycHh9Lnl0VGh1bWJuYWlsT3ZlcmxheVByb2dyZXNzQmFySG9zdFByb2dyZXNzQmFyU2VnbWVudHtmbGV4LXNocmluazowfS55dFRodW1ibmFpbE92ZXJsYXlQcm9ncmVzc0Jhckhvc3RQcm9ncmVzc0JhckFjdGl2ZVNlZ21lbnR7YmFja2dyb3VuZC1jb2xvcjojZmZmO2hlaWdodDo2cHh9Lnl0VGh1bWJuYWlsT3ZlcmxheVByb2dyZXNzQmFySG9zdFByb2dyZXNzQmFySW5hY3RpdmVTZWdtZW50e2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjMpO2hlaWdodDo0cHg7Ym9yZGVyLXJhZGl1czoycHggMCAwIDJweDttYXJnaW4tcmlnaHQ6MnB4O21hcmdpbi1sZWZ0OjJweDttYXJnaW4tdG9wOjJweH0ueXRUaHVtYm5haWxPdmVybGF5UHJvZ3Jlc3NCYXJIb3N0UHJvZ3Jlc3NCYXJGaXhlZFRvQm90dG9te3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO21hcmdpbjowO292ZXJmbG93OmhpZGRlbjt6LWluZGV4OjF9Lnl0VGh1bWJuYWlsT3ZlcmxheVByb2dyZXNzQmFySG9zdFByb2dyZXNzQmFyRml4ZWRUb0JvdHRvbUFjdGl2ZVNlZ21lbnR7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyk7aGVpZ2h0OjZweDttYXJnaW4tdG9wOjB9Lnl0VGh1bWJuYWlsT3ZlcmxheVByb2dyZXNzQmFySG9zdFByb2dyZXNzQmFyRml4ZWRUb0JvdHRvbUluYWN0aXZlU2VnbWVudHtiYWNrZ3JvdW5kLWNvbG9yOiM5MDkwOTA7Ym9yZGVyLXJhZGl1czowfS55dFRodW1ibmFpbE92ZXJsYXlQcm9ncmVzc0Jhckhvc3RQcm9ncmVzc0JhckxlZnRTZWdtZW50e2JvcmRlci1yYWRpdXM6MnB4IDAgMCAycHh9Lnl0VGh1bWJuYWlsT3ZlcmxheVByb2dyZXNzQmFySG9zdFByb2dyZXNzQmFyUmlnaHRTZWdtZW50e2JvcmRlci1yYWRpdXM6MCAycHggMnB4IDA7LW1vei1ib3gtZmxleDoxO2ZsZXg6MX0ueXRUaHVtYm5haWxPdmVybGF5UHJvZ3Jlc3NCYXJIb3N0UHJvZ3Jlc3NCYXJDb250YWluZXJ7cG9zaXRpb246cmVsYXRpdmV9Lnl0VGh1bWJuYWlsT3ZlcmxheVByb2dyZXNzQmFySG9zdFdhdGNoZWRQcm9ncmVzc0JhcntoZWlnaHQ6NHB4O21hcmdpbjowIDRweCA0cHggOHB4O2JhY2tncm91bmQtY29sb3I6IzkwOTA5MDt3aWR0aDoxMDAlO2JvcmRlci1yYWRpdXM6MnB4O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O292ZXJmbG93OmhpZGRlbn0ueXRUaHVtYm5haWxPdmVybGF5UHJvZ3Jlc3NCYXJIb3N0V2F0Y2hlZFByb2dyZXNzQmFyU2VnbWVudHtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZywjZjAzIDgwJSwjZmYyNzkxKX0ueXRUaHVtYm5haWxPdmVybGF5UHJvZ3Jlc3NCYXJIb3N0VXNlTGVnYWN5QmFye3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO21hcmdpbjowO2JvcmRlci1yYWRpdXM6MH0ueXRUaHVtYm5haWxPdmVybGF5UHJvZ3Jlc3NCYXJIb3N0TGFiZWx7cG9zaXRpb246YWJzb2x1dGU7YmFja2dyb3VuZC1jb2xvcjojZmZmO2NvbG9yOiMwMzAzMDM7cGFkZGluZzowIDRweDtib3R0b206MTZweDtsZWZ0Oi0xMHB4O2JvcmRlci1yYWRpdXM6NHB4O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NTAwfS55dFRodW1ibmFpbE92ZXJsYXlQcm9ncmVzc0Jhckhvc3RMYWJlbFRyaWFuZ2xle3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbToxMnB4O2xlZnQ6LTVweDtoZWlnaHQ6MDt3aWR0aDowO2JvcmRlci1sZWZ0OjVweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmlnaHQ6NXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci10b3A6NXB4IHNvbGlkICNmZmZ9Lnl0VGh1bWJuYWlsT3ZlcmxheVRpdGxlVmlld01vZGVsSG9zdHtwb3NpdGlvbjphYnNvbHV0ZTtwYWRkaW5nOjEycHggMTJweCAxNnB4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3d9Lnl0VGh1bWJuYWlsT3ZlcmxheVRpdGxlVmlld01vZGVsTGVhZGluZ0NvbnRlbnR7bWFyZ2luLXJpZ2h0OjhweH0ueXRUaHVtYm5haWxPdmVybGF5VGl0bGVWaWV3TW9kZWxQb3NpdGlvblRvcHt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudChyZ2JhKDAsMCwwLDAuNiksdHJhbnNwYXJlbnQpfS55dFRodW1ibmFpbE92ZXJsYXlUaXRsZVZpZXdNb2RlbFBvc2l0aW9uQm90dG9te2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRyYW5zcGFyZW50LHJnYmEoMCwwLDAsMC42KSl9Lnl0VGh1bWJuYWlsT3ZlcmxheVRpdGxlVmlld01vZGVsVGl0bGV7Y29sb3I6I2ZmZjtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo1MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoycmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dFRodW1ibmFpbE92ZXJsYXlUaXRsZVZpZXdNb2RlbFRpdGxley13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0VGh1bWJuYWlsT3ZlcmxheVRpdGxlVmlld01vZGVsVGl0bGVNYXhMaW5lczJ7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRUaHVtYm5haWxPdmVybGF5VGl0bGVWaWV3TW9kZWxUaXRsZU1heExpbmVzMnstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dFRodW1ibmFpbE92ZXJsYXlUaXRsZVZpZXdNb2RlbFN1YnRpdGxle2NvbG9yOiNmZmY7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6MnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRUaHVtYm5haWxPdmVybGF5VGl0bGVWaWV3TW9kZWxTdWJ0aXRsZXstd2Via2l0LWxpbmUtY2xhbXA6MTttYXgtaGVpZ2h0Om5vbmV9fS55dFZvdGluZ1ZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9Lnl0Vm90aW5nVmlld01vZGVsVm90ZUNvdW50e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7bWFyZ2luOjAgOHB4O2NvbG9yOiMwMzAzMDM7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFZvdGluZ1ZpZXdNb2RlbFZvdGVDb3VudERpc2FibGVke2NvbG9yOiM5MDkwOTB9Lnl0ZEZlZWRGaWx0ZXJDaGlwUmVuYW1lRm9ybVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9jaztwYWRkaW5nOjE2cHggMjRweH0ueXRMaW5lYXJMYXlvdXRWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0TGluZWFyTGF5b3V0Vmlld01vZGVsQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4fS55dExpbmVhckxheW91dFZpZXdNb2RlbFZlcnRpY2Fsey1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRMaW5lYXJMYXlvdXRWaWV3TW9kZWxIb3Jpem9udGFsey1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93fS55dExpbmVhckxheW91dFZpZXdNb2RlbEZsZXhEaXJlY3Rpb25Db2x1bW57LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS55dExpbmVhckxheW91dFZpZXdNb2RlbEZsZXhEaXJlY3Rpb25Db2x1bW5SZXZlcnNley1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246cmV2ZXJzZTtmbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZX0ueXRMaW5lYXJMYXlvdXRWaWV3TW9kZWxGbGV4RGlyZWN0aW9uUm93ey1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93fS55dExpbmVhckxheW91dFZpZXdNb2RlbEZsZXhEaXJlY3Rpb25Sb3dSZXZlcnNley1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpyZXZlcnNlO2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlfS55dExpbmVhckxheW91dFZpZXdNb2RlbEp1c3RpZnlDb250ZW50Q2VudGVyey1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9Lnl0TGluZWFyTGF5b3V0Vmlld01vZGVsSnVzdGlmeUNvbnRlbnRGbGV4RW5key1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0ueXRMaW5lYXJMYXlvdXRWaWV3TW9kZWxKdXN0aWZ5Q29udGVudFNwYWNlQXJvdW5ke2p1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmR9Lnl0TGluZWFyTGF5b3V0Vmlld01vZGVsSnVzdGlmeUNvbnRlbnRCZXR3ZWVuey1tb3otYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0ueXRMaW5lYXJMYXlvdXRWaWV3TW9kZWxKdXN0aWZ5Q29udGVudFNwYWNlRXZlbmx5ey1tb3otYm94LXBhY2s6c3BhY2UtZXZlbmx5O2p1c3RpZnktY29udGVudDpzcGFjZS1ldmVubHl9Lnl0TGluZWFyTGF5b3V0Vmlld01vZGVsSnVzdGlmeUNvbnRlbnRGbGV4U3RhcnR7LW1vei1ib3gtcGFjazpzdGFydDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0ueXRMaW5lYXJMYXlvdXRWaWV3TW9kZWxBbGlnbkl0ZW1zU3RhcnR7LW1vei1ib3gtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0ueXRMaW5lYXJMYXlvdXRWaWV3TW9kZWxBbGlnbkl0ZW1zRW5key1tb3otYm94LWFsaWduOmVuZDthbGlnbi1pdGVtczpmbGV4LWVuZH0ueXRMaW5lYXJMYXlvdXRWaWV3TW9kZWxBbGlnbkl0ZW1zQ2VudGVyey1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0TGluZWFyTGF5b3V0Vmlld01vZGVsQWxpZ25JdGVtc0Jhc2VsaW5lRmlyc3R7LW1vei1ib3gtYWxpZ246Zmlyc3QgYmFzZWxpbmU7YWxpZ24taXRlbXM6Zmlyc3QgYmFzZWxpbmV9Lnl0TGluZWFyTGF5b3V0Vmlld01vZGVsQWxpZ25JdGVtc0Jhc2VsaW5lTGFzdHstbW96LWJveC1hbGlnbjpsYXN0IGJhc2VsaW5lO2FsaWduLWl0ZW1zOmxhc3QgYmFzZWxpbmV9Lnl0TGluZWFyTGF5b3V0Vmlld01vZGVsQWxpZ25JdGVtc1N0cmV0Y2h7LW1vei1ib3gtYWxpZ246c3RyZXRjaDthbGlnbi1pdGVtczpzdHJldGNofS55dExpbmVhckxheW91dFZpZXdNb2RlbEZsZXhXcmFwV3JhcHtmbGV4LXdyYXA6d3JhcH0ueXRMaW5lYXJMYXlvdXRWaWV3TW9kZWxGbGV4V3JhcFdyYXBSZXZlcnNle2ZsZXgtd3JhcDp3cmFwLXJldmVyc2V9Lnl0TGluZWFyTGF5b3V0Vmlld01vZGVsVGh1bWJuYWlsSXRlbXt3aWR0aDoxMDAlfS55dERpYWxvZ0hlYWRlclZpZXdNb2RlbFRpdGxle21hcmdpbjowO21heC1oZWlnaHQ6dW5zZXR9Lnl0RGlhbG9nSGVhZGVyVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1zaHJpbms6MDtwYWRkaW5nOjI0cHggMjRweCA4cHh9Lnl0RGlhbG9nSGVhZGVyVmlld01vZGVsSG9zdERpc2FibGVQYWRkaW5ne3BhZGRpbmc6MH0ueXREaWFsb2dIZWFkZXJWaWV3TW9kZWxIb3N0Q2VudGVyZWR7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXREaWFsb2dIZWFkZXJWaWV3TW9kZWxCYW5uZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjttYXJnaW4tYm90dG9tOjI0cHh9Lnl0RGlhbG9nSGVhZGVyVmlld01vZGVsQmFubmVyRnVsbEJsZWVke21hcmdpbi1sZWZ0Oi0yNHB4O21hcmdpbi1yaWdodDotMjRweDttYXJnaW4tdG9wOi0yNHB4fS55dERpYWxvZ0hlYWRlclZpZXdNb2RlbEJhbm5lckltYWdley1tb3otYm94LWZsZXg6MTtmbGV4OjF9Lnl0RGlhbG9nSGVhZGVyVmlld01vZGVsQ3VzdG9tQXNzZXRDb250YWluZXJ7bWFyZ2luOjJweCAwIDEycHggNnB4fS55dERpYWxvZ0hlYWRlclZpZXdNb2RlbEN1c3RvbUFzc2V0Q29udGFpbmVyQ2VudGVyZWR7bWFyZ2luLWxlZnQ6MH0ueXREaWFsb2dIZWFkZXJWaWV3TW9kZWxIZWFkZXJCbG9ja3stbW96LWJveC1hbGlnbjpzdGFydDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2FsaWduLXNlbGY6c3RyZXRjaDtjb2xvcjojMDMwMzAzO21hcmdpbi1ib3R0b206MTZweH0ueXREaWFsb2dIZWFkZXJWaWV3TW9kZWxIZWFkZXJCbG9ja0NlbnRlcmVke2FsaWduLXNlbGY6Y2VudGVyfS55dERpYWxvZ0hlYWRlclZpZXdNb2RlbFRleHR7Y29sb3I6IzAzMDMwMzstbW96LWJveC1mbGV4OjE7ZmxleDoxO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjJyZW07bGluZS1oZWlnaHQ6Mi44cmVtO2ZvbnQtd2VpZ2h0OjcwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjUuNnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXREaWFsb2dIZWFkZXJWaWV3TW9kZWxUZXh0ey13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0RGlhbG9nSGVhZGVyVmlld01vZGVsVGV4dHttYXgtaGVpZ2h0OjUuNnJlbX0ueXRPdmVybGF5UG9sbFN0aWNrZXJIb3N0ey0tcHJpbWFyeS1zdXJmYWNlOiNmYWNhZGU7LS1yYWlzZWQtc3VyZmFjZTojZGUxZTdlOy0tc2Vjb25kYXJ5LXN1cmZhY2U6I2RlMWU3ZTstLXByaW1hcnktdGV4dDojMTAxY2E3Oy0tc2Vjb25kYXJ5LXRleHQ6IzAwNzstLW9yaWdpbmFsLXdpZHRoOjIyMDstLW9yaWdpbmFsLWhlaWdodDoyMDU7LS1zY2FsZWQtd2lkdGg6MjIwO2ZvbnQtc2l6ZTpjYWxjKHZhcigtLXN0aWNrZXItd2lkdGgpL3ZhcigtLW9yaWdpbmFsLXdpZHRoKSoxOHB4KTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDstbW96LWJveC1wYWNrOmp1c3RpZnk7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47ZmxleC1zaHJpbms6MDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2JvcmRlci1yYWRpdXM6MTAlO3BhZGRpbmc6MWVtIGNhbGModmFyKC0tb3JpZ2luYWwtaGVpZ2h0KS92YXIoLS1vcmlnaW5hbC13aWR0aCkqMWVtKTtwb2ludGVyLWV2ZW50czpub25lO292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXByaW1hcnktc3VyZmFjZSk7Y29sb3I6dmFyKC0tcHJpbWFyeS10ZXh0KX0ueXRPdmVybGF5UG9sbFN0aWNrZXJRdWVzdGlvblRleHR7Zm9udC1mYW1pbHk6Um9ib3RvLHNhbnMtc2VyaWY7Zm9udC1zaXplOjFlbTtsaW5lLWhlaWdodDoxLjIyMjIyMjIyMjJlbTtmb250LXdlaWdodDo3MDB9Lnl0T3ZlcmxheVBvbGxTdGlja2VyUG9sbENob2ljZXt3aWR0aDoxMDAlfS55dE92ZXJsYXlQb2xsU3RpY2tlclZvdGVDb3VudHtmb250LWZhbWlseTpSb2JvdG8sc2Fucy1zZXJpZjtmb250LXNpemU6LjU1NTU1NTU1NTZlbTtsaW5lLWhlaWdodDoxZW07Zm9udC13ZWlnaHQ6NDAwfS55dE92ZXJsYXlQb2xsU3RpY2tlckRlYnVnU3R5bGV7b3BhY2l0eTouNztib3JkZXI6MXB4IHNvbGlkIHJlZH1AcHJvcGVydHkgLS1wb2xsLWNob2ljZS1wZXJjZW50YWdle3N5bnRheDoiPG51bWJlcj4iO2luaGVyaXRzOmZhbHNlO2luaXRpYWwtdmFsdWU6MH0ueXRPdmVybGF5UG9sbFN0aWNrZXJDaG9pY2VIb3N0e2Rpc3BsYXk6YmxvY2s7Zm9udC1zaXplOmNhbGModmFyKC0tc3RpY2tlci13aWR0aCkvdmFyKC0tb3JpZ2luYWwtd2lkdGgpKjE4cHgpOy0tZGlzcGxheWVkLXBlcmNlbnRhZ2U6MH0ueXRPdmVybGF5UG9sbFN0aWNrZXJDaG9pY2VVbnN0eWxlUmFkaW9CdXR0b257LW1vei1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lOy13ZWJraXQtYXBwZWFyYW5jZTpub25lO29wYWNpdHk6MDttYXJnaW46MDtwb2ludGVyLWV2ZW50czpub25lfS55dE92ZXJsYXlQb2xsU3RpY2tlckNob2ljZVBvbGxDaG9pY2V7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjt3aWR0aDoxMDAlO2JvcmRlcjouMTExMTExMTExMWVtIHNvbGlkIHZhcigtLXJhaXNlZC1zdXJmYWNlKTtwYWRkaW5nOjAgLjMzMzMzMzMzMzNlbTtoZWlnaHQ6M2VtO2JhY2tncm91bmQtY29sb3I6dmFyKC0tcmFpc2VkLXN1cmZhY2UpO2JvcmRlci1yYWRpdXM6LjVlbTstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6dmFyKC0tc2Vjb25kYXJ5LXRleHQpO2ZvbnQtZmFtaWx5OlJvYm90byxzYW5zLXNlcmlmO2ZvbnQtc2l6ZTouNzc3Nzc3Nzc3OGVtO2ZvbnQtd2VpZ2h0OjUwMDtwb2ludGVyLWV2ZW50czphdXRvO3RyYW5zaXRpb246LS1wb2xsLWNob2ljZS1wZXJjZW50YWdlIC4yNXMgZWFzZS1pbi1vdXR9Lnl0T3ZlcmxheVBvbGxTdGlja2VyQ2hvaWNlU2hvd1ZvdGVQZXJjZW50YWdle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LHZhcigtLXJhaXNlZC1zdXJmYWNlKSBjYWxjKHZhcigtLXBvbGwtY2hvaWNlLXBlcmNlbnRhZ2UsIDEwMCkqMSUpLHZhcigtLXByaW1hcnktc3VyZmFjZSkgY2FsYyh2YXIoLS1wb2xsLWNob2ljZS1wZXJjZW50YWdlLCAxMDApKjElKSk7LS1wb2xsLWNob2ljZS1wZXJjZW50YWdlOnZhcigtLWRpc3BsYXllZC1wZXJjZW50YWdlKX0ueXRPdmVybGF5UG9sbFN0aWNrZXJDaG9pY2VQb2xsQ2hvaWNlU2VsZWN0ZWR7LS1wb2xsLWNob2ljZS1wZXJjZW50YWdlOnZhcigtLWRpc3BsYXllZC1wZXJjZW50YWdlKTtib3JkZXI6LjExMTExMTExMTFlbSBzb2xpZCB2YXIoLS1wcmltYXJ5LXRleHQpfS55dE92ZXJsYXlQb2xsU3RpY2tlckNob2ljZVBvbGxDaG9pY2VUZXh0ey1tb3otYm94LWZsZXg6NDtmbGV4OjQ7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDozZW07d2hpdGUtc3BhY2U6bm9ybWFsO292ZXJmbG93OmhpZGRlbn0ueXRPdmVybGF5UG9sbFN0aWNrZXJDaG9pY2VWb3RlUGVyY2VudGFnZXstbW96LWJveC1mbGV4OjE7ZmxleDoxO3RleHQtYWxpZ246cmlnaHR9Lnl0Y2lDb252ZXJzYXRpb25WaWRlb0lkZWFDYXJkVmlld01vZGVsSG9zdHtjb2xvcjojMDMwMzAzO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstLWljb24tY29sb3I6Y3VycmVudGNvbG9yfS55dGNpQ29udmVyc2F0aW9uVmlkZW9JZGVhQ2FyZFZpZXdNb2RlbENhcmR7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3BhZGRpbmc6MTZweH0ueXRjaUNvbnZlcnNhdGlvblZpZGVvSWRlYUNhcmRWaWV3TW9kZWxBY3Rpb25zQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtwYWRkaW5nLXRvcDoyNHB4fS55dGNpQ29udmVyc2F0aW9uVmlkZW9JZGVhQ2FyZFZpZXdNb2RlbElkZWFBdHRyaWJ1dGlvbntmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMDtjb2xvcjojNjA2MDYwO3BhZGRpbmctYm90dG9tOjMycHg7Zm9udC13ZWlnaHQ6NzAwfS55dGNpQ29udmVyc2F0aW9uVmlkZW9JZGVhQ2FyZFZpZXdNb2RlbElkZWFOYW1le2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuOHJlbTtsaW5lLWhlaWdodDoyLjZyZW07Zm9udC13ZWlnaHQ6NTAwO3BhZGRpbmctYm90dG9tOjhweH0ueXRjaUNvbnZlcnNhdGlvblZpZGVvSWRlYUNhcmRWaWV3TW9kZWxJZGVhU3VtbWFyeXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMDtjb2xvcjojNjA2MDYwO2ZvbnQtc2l6ZToxLjNyZW19Lnl0SW5zdGFsbG1lbnRBZ3JlZW1lbnRzVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47cGFkZGluZzoxMHB4IDEycHh9Lnl0SW5zdGFsbG1lbnRBZ3JlZW1lbnRzVmlld01vZGVsQWdyZWVtZW50Um93e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O3dpZHRoOjEwMCU7cGFkZGluZy1ib3R0b206MTBweDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dEluc3RhbGxtZW50QWdyZWVtZW50c1ZpZXdNb2RlbEFncmVlbWVudExhYmVse2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwOy1tb3otYm94LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXgtYmFzaXM6MTAwJX0ueXRJbnN0YWxsbWVudEFncmVlbWVudHNWaWV3TW9kZWxBZ3JlZW1lbnRCdXR0b257LW1vei1ib3gtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kOy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRUaGVtZWRJbWFnZVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9jaztjb2xvcjojMDMwMzAzfS55dFVwc2VsbE9mZmVyVGFibGVDZWxsQ29udGVudFZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0ZXh0LWFsaWduOmNlbnRlcjttYXJnaW4tYm90dG9tOjJweDtjb2xvcjojMDMwMzAzO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRVcHNlbGxPZmZlclRhYmxlQ2VsbENvbnRlbnRWaWV3TW9kZWxVcHNlbGxPZmZlclRhYmxlQ2VsbFRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRVcHNlbGxPZmZlclRhYmxlQ2VsbENvbnRlbnRWaWV3TW9kZWxWaXN1YWxseUhpZGRlbkFjY2Vzc2liaWxpdHl7Ym9yZGVyOjA7Y2xpcDpyZWN0KDAgMCAwIDApO2hlaWdodDoxcHg7bWFyZ2luOi0xcHg7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6MDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxcHg7d2hpdGUtc3BhY2U6bm93cmFwfS55dFVwc2VsbE9mZmVyVGFibGVDZWxsQ29udGVudFZpZXdNb2RlbFVwc2VsbE9mZmVyVGFibGVDZWxsU3VidGl0bGV7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwfS55dFVwc2VsbE9mZmVyVGFibGVDZWxsQ29udGVudFZpZXdNb2RlbFVwc2VsbE9mZmVyVGFibGVDZWxsSW5mb1RleHR7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MXJlbTtsaW5lLWhlaWdodDoxLjZyZW07Zm9udC13ZWlnaHQ6NDAwO21hcmdpbi10b3A6LTRweH0ueXRVcHNlbGxPZmZlclRhYmxlQ2VsbENvbnRlbnRWaWV3TW9kZWxVcHNlbGxPZmZlclRhYmxlQ2VsbEZlYXR1cmVEZXNjcmlwdGlvbnttYXgtd2lkdGg6bm9uZTt0ZXh0LWFsaWduOmxlZnQ7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwO21hcmdpbi1sZWZ0OjhweH0ueXRVcHNlbGxPZmZlclRhYmxlQ2VsbENvbnRlbnRWaWV3TW9kZWxVcHNlbGxPZmZlclRhYmxlQ2VsbEljb257ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtjb2xvcjojMDMwMzAzfS55dFVwc2VsbE9mZmVyVGFibGVDZWxsQ29udGVudFZpZXdNb2RlbFVwc2VsbE9mZmVyVGFibGVDZWxsTm90ZXtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjFyZW07bGluZS1oZWlnaHQ6MS42cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRVcHNlbGxPZmZlclRhYmxlQ2VsbFZpZXdNb2RlbENlbGxXcmFwcGVye2hlaWdodDoxMDAlOy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDttYXJnaW46YXV0b30ueXRVcHNlbGxPZmZlclRhYmxlQ2VsbFZpZXdNb2RlbENlbGxXcmFwcGVySGVhZGVyQ2VsbHstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpzdGFydDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dFVwc2VsbE9mZmVyVGFibGVDZWxsVmlld01vZGVsQ2VsbFdyYXBwZXJDb250ZW50Q2VsbHstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXRVcHNlbGxPZmZlclRhYmxlQ2VsbFZpZXdNb2RlbENlbGxXcmFwcGVySGVhZGVyUm93Q2VsbHstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOnN0YXJ0O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fS55dFVwc2VsbE9mZmVyVGFibGVSb3dWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MjEwcHggMWZyO2dyaWQtZ2FwOjA7Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgwLDAsMCwwLjEpfUBtZWRpYSAobWF4LXdpZHRoOjU3MHB4KXsueXRVcHNlbGxPZmZlclRhYmxlUm93Vmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59fS55dFVwc2VsbE9mZmVyVGFibGVSb3dWaWV3TW9kZWxIb3N0Rmlyc3RSb3d7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoyMTBweCAxZnI7Z3JpZC1nYXA6MH1AbWVkaWEgKG1heC13aWR0aDo1NzBweCl7Lnl0VXBzZWxsT2ZmZXJUYWJsZVJvd1ZpZXdNb2RlbEhvc3RGaXJzdFJvd3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59fS55dFVwc2VsbE9mZmVyVGFibGVSb3dWaWV3TW9kZWxVcHNlbGxPZmZlclRhYmxlUm93SGVhZGVyQ2VsbHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6c3RhcnQ7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjthbGlnbi1zZWxmOmNlbnRlcjt3aWR0aDoxMDAlO2hlaWdodDotbW96LWZpdC1jb250ZW50O2hlaWdodDpmaXQtY29udGVudDtwYWRkaW5nLXRvcDo4cHg7cGFkZGluZy1ib3R0b206OHB4fUBtZWRpYSAobWF4LXdpZHRoOjU3MHB4KXsueXRVcHNlbGxPZmZlclRhYmxlUm93Vmlld01vZGVsVXBzZWxsT2ZmZXJUYWJsZVJvd0hlYWRlckNlbGx7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtoZWlnaHQ6bm9uZX19Lnl0VXBzZWxsT2ZmZXJUYWJsZVJvd1ZpZXdNb2RlbFVwc2VsbE9mZmVyVGFibGVGaXJzdFJvd0NlbGx7cGFkZGluZy10b3A6NHB4O3BhZGRpbmctYm90dG9tOjRweH0ueXRVcHNlbGxPZmZlclRhYmxlUm93Vmlld01vZGVsVXBzZWxsT2ZmZXJUYWJsZVJvd0NvbnRlbnRDZWxse2hlaWdodDotbW96LWZpdC1jb250ZW50O2hlaWdodDpmaXQtY29udGVudDtwYWRkaW5nLXRvcDo4cHg7cGFkZGluZy1ib3R0b206OHB4fUBtZWRpYSAobWF4LXdpZHRoOjU3MHB4KXsueXRVcHNlbGxPZmZlclRhYmxlUm93Vmlld01vZGVsVXBzZWxsT2ZmZXJUYWJsZVJvd0NvbnRlbnRDZWxse2JvcmRlci10b3A6bm9uZX19Lnl0VXBzZWxsT2ZmZXJUYWJsZVJvd1ZpZXdNb2RlbFVwc2VsbE9mZmVyVGFibGVSb3dDb250ZW50Q2VsbHN7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoYXV0by1maXQsbWlubWF4KDk1cHgsMWZyKSk7Z3JpZC1nYXA6MH0ueXRVcHNlbGxPZmZlclRhYmxlVmlld01vZGVsSG9zdHt0ZXh0LWFsaWduOmNlbnRlcn0ueXRVcHNlbGxPZmZlclRhYmxlVmlld01vZGVsVXBzZWxsT2ZmZXJUYWJsZVJvd3N7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWF4LXdpZHRoOjUxMnB4fS55dFVwc2VsbFZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9jaztwYWRkaW5nOjI0cHg7bWF4LXdpZHRoOjM3NXB4fS55dFVwc2VsbFZpZXdNb2RlbEhvc3ROb1BhZGRpbmd7cGFkZGluZzowO3BhZGRpbmctdG9wOjI0cHh9Lnl0VXBzZWxsVmlld01vZGVsSG9zdFdpZGV7bWF4LXdpZHRoOjUxMnB4fS55dFVwc2VsbFZpZXdNb2RlbEhvc3RVcHNlbGxMb2dve3dpZHRoOjEyNHB4fUBtZWRpYSAoZm9yY2VkLWNvbG9yczphY3RpdmUpey55dFVwc2VsbFZpZXdNb2RlbEhvc3RVcHNlbGxMb2dve2ZvcmNlZC1jb2xvci1hZGp1c3Q6bm9uZTtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7cGFkZGluZzo2cHg7Ym9yZGVyLXJhZGl1czo0cHh9fS55dFVwc2VsbFZpZXdNb2RlbEhvc3RVcHNlbGxUaXRsZXtwYWRkaW5nLXRvcDoyNHB4O2NvbG9yOiMwMzAzMDM7Zm9udC1mYW1pbHk6WW91VHViZSBTYW5zLFJvYm90byxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyLjRyZW07bGluZS1oZWlnaHQ6My4ycmVtO2ZvbnQtd2VpZ2h0OjcwMH0ueXRVcHNlbGxWaWV3TW9kZWxIb3N0VXBzZWxsVGl0bGU6Zm9jdXMsLnl0VXBzZWxsVmlld01vZGVsSG9zdFVwc2VsbFRpdGxlOmZvY3VzLXZpc2libGV7b3V0bGluZTpub25lfS55dFVwc2VsbFZpZXdNb2RlbEhvc3RVcHNlbGxTdWJ0aXRsZVNlY3Rpb257cGFkZGluZzowfS55dFVwc2VsbFZpZXdNb2RlbEhvc3RVcHNlbGxTdWJ0aXRsZVNlY3Rpb25TdWJ0aXRsZXtwYWRkaW5nLXRvcDo4cHg7Y29sb3I6IzAzMDMwMztmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRVcHNlbGxWaWV3TW9kZWxIb3N0VXBzZWxsU3VidGl0bGVTZWN0aW9uU3VidGl0bGVTZWNvbmRhcnl7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFVwc2VsbFZpZXdNb2RlbEhvc3RVcHNlbGxCZW5lZml0SW5mb1NlY3Rpb257cGFkZGluZy10b3A6NHB4fS55dFVwc2VsbFZpZXdNb2RlbEhvc3RVcHNlbGxCZW5lZml0SW5mb1NlY3Rpb25JY29ue2ZsZXgtc2hyaW5rOjA7bWFyZ2luLXJpZ2h0OjE2cHh9Lnl0VXBzZWxsVmlld01vZGVsSG9zdFVwc2VsbEJlbmVmaXRJbmZvU2VjdGlvbkJlbmVmaXRJbmZve2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3BhZGRpbmctdG9wOjEycHg7Y29sb3I6IzAzMDMwMztmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRVcHNlbGxWaWV3TW9kZWxIb3N0VXBzZWxsT2ZmZXJUYWJsZVNlY3Rpb257cGFkZGluZy10b3A6NHB4fS55dFVwc2VsbFZpZXdNb2RlbEhvc3RVcHNlbGxMZWdhbEluZm9TZWN0aW9ue3BhZGRpbmctdG9wOjEycHh9Lnl0VXBzZWxsVmlld01vZGVsSG9zdFVwc2VsbExlZ2FsSW5mb1NlY3Rpb25MZWdhbEluZm97cGFkZGluZy10b3A6NHB4O2NvbG9yOiM2MDYwNjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFVwc2VsbFZpZXdNb2RlbEhvc3RVcHNlbGxMZWdhbEluZm9TZWN0aW9uTGVnYWxJbmZvU21hbGxlcntmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxcmVtO2xpbmUtaGVpZ2h0OjEuNnJlbTtmb250LXdlaWdodDo0MDB9Lnl0TWluaUFwcFNjb3JlQ2hhbGxlbmdlVmlld01vZGVsSG9zdHtwYWRkaW5nOjI0cHggMjRweCA4cHg7d2lkdGg6YXV0bztkaXNwbGF5OmJsb2NrfS55dE1pbmlBcHBTY29yZUNoYWxsZW5nZVZpZXdNb2RlbFNjb3JlUmFkaWFse2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjt3aWR0aDoxMDAlO2hlaWdodDoxNDhweDtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRNaW5pQXBwU2NvcmVDaGFsbGVuZ2VWaWV3TW9kZWxTY29yZVJhZGlhbDpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt0cmFuc2Zvcm0tb3JpZ2luOmNlbnRlcjtib3JkZXItcmFkaXVzOjMxcHg7bWFzay1pbWFnZTpyYWRpYWwtZ3JhZGllbnQocmdiKDAsMCwwKSAyMCUsdHJhbnNwYXJlbnQgNjAlKTtmaWx0ZXI6Ymx1cigycHgpO2JhY2tncm91bmQ6cmVwZWF0aW5nLWNvbmljLWdyYWRpZW50KGZyb20gMGRlZywjZjdkN2M1IDBkZWcgMTBkZWcsdHJhbnNwYXJlbnQgMTBkZWcgMjBkZWcpfS55dE1pbmlBcHBTY29yZUNoYWxsZW5nZVZpZXdNb2RlbERhcmtTY29yZVJhZGlhbDpiZWZvcmV7YmFja2dyb3VuZDpyZXBlYXRpbmctY29uaWMtZ3JhZGllbnQoZnJvbSAwZGVnLCM0MjRmNWQgMGRlZyAxMGRlZyx0cmFuc3BhcmVudCAxMGRlZyAyMGRlZyl9Lnl0TWluaUFwcFNjb3JlQ2hhbGxlbmdlVmlld01vZGVsVGl0bGV7Y29sb3I6IzAzMDMwMzt0ZXh0LWFsaWduOmNlbnRlcjtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToycmVtO2xpbmUtaGVpZ2h0OjIuOHJlbTtmb250LXdlaWdodDo3MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo1LjZyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0TWluaUFwcFNjb3JlQ2hhbGxlbmdlVmlld01vZGVsVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRNaW5pQXBwU2NvcmVDaGFsbGVuZ2VWaWV3TW9kZWxUaXRsZXttYXgtaGVpZ2h0OjUuNnJlbX0ueXRNaW5pQXBwU2NvcmVDaGFsbGVuZ2VWaWV3TW9kZWxTdWJ0aXRsZXtjb2xvcjojNjA2MDYwO3BhZGRpbmc6OHB4IDA7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6MnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRNaW5pQXBwU2NvcmVDaGFsbGVuZ2VWaWV3TW9kZWxTdWJ0aXRsZXstd2Via2l0LWxpbmUtY2xhbXA6MTttYXgtaGVpZ2h0Om5vbmV9fS55dE1pbmlBcHBTY29yZUNoYWxsZW5nZVZpZXdNb2RlbFN1YnRpdGxle21heC1oZWlnaHQ6MnJlbX0ueXRNaW5pQXBwU2NvcmVDaGFsbGVuZ2VWaWV3TW9kZWxTY29yZXtjb2xvcjojMDMwMzAzO21pbi13aWR0aDo4MnB4O3BhZGRpbmc6MCAxNnB4O2hlaWdodDo2MnB4O2JvcmRlci1yYWRpdXM6MzFweDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7ZGlzcGxheTpncmlkOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7dGV4dC1hbGlnbjpjZW50ZXI7cG9zaXRpb246cmVsYXRpdmU7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6My4ycmVtO2xpbmUtaGVpZ2h0OjQuNHJlbTtmb250LXdlaWdodDo5MDB9Lnl0TWluaUFwcFNjb3JlQ2hhbGxlbmdlVmlld01vZGVsUHJvbXB0e2NvbG9yOiM2MDYwNjA7cGFkZGluZy10b3A6OHB4O3RleHQtd3JhcDp3cmFwO3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRUcnVuY2F0ZWRUZXh0SG9zdHtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmF1dG87Y29sb3I6IzYwNjA2MDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRUcnVuY2F0ZWRUZXh0VHJ1bmNhdGVkVGV4dENvbnRlbnR7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZX0ueXRUcnVuY2F0ZWRUZXh0VHJ1bmNhdGVkVGV4dENvbnRlbnQueXRUcnVuY2F0ZWRUZXh0SGlkZGVuVGV4dENvbnRlbnR7dmlzaWJpbGl0eTpoaWRkZW47cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3BvaW50ZXItZXZlbnRzOm5vbmV9Lnl0VHJ1bmNhdGVkVGV4dElubGluZUJ1dHRvbnt2aXNpYmlsaXR5OmhpZGRlbjtib3JkZXI6bm9uZTttYXJnaW46MDtwYWRkaW5nOjA7Y3Vyc29yOnBvaW50ZXI7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjojMDMwMzAzO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NTAwfS55dFRydW5jYXRlZFRleHRBYnNvbHV0ZUJ1dHRvbntwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtyaWdodDowO2JvcmRlcjpub25lO21hcmdpbjowO3BhZGRpbmc6MDtjdXJzb3I6cG9pbnRlcjtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOiMwMzAzMDM7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo1MDB9Lnl0VHJ1bmNhdGVkVGV4dEJvdHRvbUJ1dHRvbntmbG9hdDpyaWdodDtib3JkZXI6bm9uZTttYXJnaW46MDtwYWRkaW5nOjA7Y3Vyc29yOnBvaW50ZXI7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjojMDMwMzAzO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NTAwfS55dFRydW5jYXRlZFRleHRPdmVybGF5e2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KX0ueXRUcnVuY2F0ZWRUZXh0T3ZlcmxheSAueXRUcnVuY2F0ZWRUZXh0QWJzb2x1dGVCdXR0b24sLnl0VHJ1bmNhdGVkVGV4dE92ZXJsYXkgLnl0VHJ1bmNhdGVkVGV4dEJvdHRvbUJ1dHRvbiwueXRUcnVuY2F0ZWRUZXh0T3ZlcmxheSAueXRUcnVuY2F0ZWRUZXh0SW5saW5lQnV0dG9ue2NvbG9yOiNmZmZ9Lnl0VHJ1bmNhdGVkVGV4dEhpZGRlbntkaXNwbGF5Om5vbmV9Lnl0VHJ1bmNhdGVkVGV4dE1lZGl1bVRleHR7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFRydW5jYXRlZFRleHRNZWRpdW1UZXh0IC55dFRydW5jYXRlZFRleHRBYnNvbHV0ZUJ1dHRvbiwueXRUcnVuY2F0ZWRUZXh0TWVkaXVtVGV4dCAueXRUcnVuY2F0ZWRUZXh0Qm90dG9tQnV0dG9uLC55dFRydW5jYXRlZFRleHRNZWRpdW1UZXh0IC55dFRydW5jYXRlZFRleHRJbmxpbmVCdXR0b257Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwfS55dFRydW5jYXRlZFRleHRMYXJnZVRleHR7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo0MDB9Lnl0VHJ1bmNhdGVkVGV4dExhcmdlVGV4dCAueXRUcnVuY2F0ZWRUZXh0QWJzb2x1dGVCdXR0b24sLnl0VHJ1bmNhdGVkVGV4dExhcmdlVGV4dCAueXRUcnVuY2F0ZWRUZXh0Qm90dG9tQnV0dG9uLC55dFRydW5jYXRlZFRleHRMYXJnZVRleHQgLnl0VHJ1bmNhdGVkVGV4dElubGluZUJ1dHRvbntmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRUcnVuY2F0ZWRUZXh0UHJpbWFyeVRleHR7Y29sb3I6IzAzMDMwM30ueXRUcnVuY2F0ZWRUZXh0UHJpbWFyeVRleHQgLnl0VHJ1bmNhdGVkVGV4dEFic29sdXRlQnV0dG9uLC55dFRydW5jYXRlZFRleHRQcmltYXJ5VGV4dCAueXRUcnVuY2F0ZWRUZXh0Qm90dG9tQnV0dG9uLC55dFRydW5jYXRlZFRleHRQcmltYXJ5VGV4dCAueXRUcnVuY2F0ZWRUZXh0SW5saW5lQnV0dG9ue2NvbG9yOiM2MDYwNjB9Lnl0RGVzY3JpcHRpb25QcmV2aWV3Vmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dERlc2NyaXB0aW9uUHJldmlld1ZpZXdNb2RlbENsaWNrYWJsZXtjdXJzb3I6cG9pbnRlcn0ueXREZXNjcmlwdGlvblByZXZpZXdWaWV3TW9kZWxEZXNjcmlwdGlvbntkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmF1dG87Y29sb3I6IzYwNjA2MDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXREZXNjcmlwdGlvblByZXZpZXdWaWV3TW9kZWxEZXNjcmlwdGlvbk1lZGl1bVRleHR7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dERlc2NyaXB0aW9uUHJldmlld1ZpZXdNb2RlbElzT3ZlcmxheSAueXREZXNjcmlwdGlvblByZXZpZXdWaWV3TW9kZWxEZXNjcmlwdGlvbntjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuNyl9Lnl0QmFzaWNDb250ZW50Vmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrO3doaXRlLXNwYWNlOnByZS1saW5lO3dvcmQtYnJlYWs6YnJlYWstd29yZH0ueXRCYXNpY0NvbnRlbnRWaWV3TW9kZWxIZWFkbGluZXtjb2xvcjojMDMwMzAzO21hcmdpbi1ib3R0b206MTJweDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToycmVtO2xpbmUtaGVpZ2h0OjIuOHJlbTtmb250LXdlaWdodDo3MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo1LjZyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0QmFzaWNDb250ZW50Vmlld01vZGVsSGVhZGxpbmV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRCYXNpY0NvbnRlbnRWaWV3TW9kZWxIZWFkbGluZXttYXgtaGVpZ2h0OjUuNnJlbX0ueXRCYXNpY0NvbnRlbnRWaWV3TW9kZWxQYXJhZ3JhcGhIZWFkbGluZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjhyZW07bGluZS1oZWlnaHQ6Mi42cmVtO2ZvbnQtd2VpZ2h0OjcwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjUuMnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRCYXNpY0NvbnRlbnRWaWV3TW9kZWxQYXJhZ3JhcGhIZWFkbGluZXstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dEJhc2ljQ29udGVudFZpZXdNb2RlbFBhcmFncmFwaEhlYWRsaW5le21heC1oZWlnaHQ6NS4ycmVtO2NvbG9yOiMwMzAzMDM7bWFyZ2luLWJvdHRvbTo4cHh9Lnl0QmFzaWNDb250ZW50Vmlld01vZGVsUGFyYWdyYXBoOm5vdCg6bGFzdC1jaGlsZCl7bWFyZ2luLWJvdHRvbToxMnB4fS55dEJhc2ljQ29udGVudFZpZXdNb2RlbFBhcmFncmFwaENvbnRlbnR7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRCYXNpY0NvbnRlbnRWaWV3TW9kZWxQYXJhZ3JhcGhBc3NldHtkaXNwbGF5OmJsb2NrO21hcmdpbi1yaWdodDoxMnB4fS55dEJhc2ljQ29udGVudFZpZXdNb2RlbFBhcmFncmFwaFRleHR7LW1vei1ib3gtZmxleDoxO2ZsZXgtZ3JvdzoxO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRCYXNpY0NvbnRlbnRWaWV3TW9kZWxQYXJhZ3JhcGhUZXh0UHJpbWFyeXtjb2xvcjojMDMwMzAzfS55dEJhc2ljQ29udGVudFZpZXdNb2RlbFBhcmFncmFwaFRleHRCb2xke2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjUwMH0ueXRDaW5lbWF0aWNDb250YWluZXJWaWV3TW9kZWxIb3N0e3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtib3R0b206MDtyaWdodDowO292ZXJmbG93OmhpZGRlbn0ueXRDaW5lbWF0aWNDb250YWluZXJWaWV3TW9kZWxCYWNrZ3JvdW5kSW1hZ2V7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MjAwJTttYXgtd2lkdGg6MjAwJTtoZWlnaHQ6YXV0bzt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtMjUlKSB0cmFuc2xhdGVZKC0yNSUpO29wYWNpdHk6Ljc7ZmlsdGVyOmJsdXIoMzBweCl9Lnl0Q2luZW1hdGljQ29udGFpbmVyVmlld01vZGVsQmFja2dyb3VuZEdyYWRpZW50e3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9Lnl0Q2luZW1hdGljQ29udGFpbmVyVmlld01vZGVsRmFkZVRvVGhlbWVDb250YWluZXJ7aGVpZ2h0OjEwMCV9QG1lZGlhIChtaW4td2lkdGg6ODQwcHgpey55dENpbmVtYXRpY0NvbnRhaW5lclZpZXdNb2RlbEZhZGVUb1RoZW1lQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6ZW5kO2p1c3RpZnktY29udGVudDpmbGV4LWVuZH19Lnl0Q2luZW1hdGljQ29udGFpbmVyVmlld01vZGVsRmFkZVRvVGhlbWVJbWFnZXtvcGFjaXR5Oi44O3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7b2JqZWN0LWZpdDpjb3Zlcn1AbWVkaWEgKGZvcmNlZC1jb2xvcnM6YWN0aXZlKXsueXRDaW5lbWF0aWNDb250YWluZXJWaWV3TW9kZWxGYWRlVG9UaGVtZUltYWdle2Rpc3BsYXk6bm9uZX19Lnl0Q2luZW1hdGljQ29udGFpbmVyVmlld01vZGVsRmFkZVRvVGhlbWVJbWFnZUNvbnRhaW5lcntwb3NpdGlvbjpyZWxhdGl2ZTtyaWdodDphdXRvO2hlaWdodDoxMDAlO21pbi13aWR0aDo1MCV9QG1lZGlhIChtaW4td2lkdGg6ODQwcHgpey55dENpbmVtYXRpY0NvbnRhaW5lclZpZXdNb2RlbEZhZGVUb1RoZW1lSW1hZ2VDb250YWluZXJ7cmlnaHQ6LTgwcHh9fS55dENpbmVtYXRpY0NvbnRhaW5lclZpZXdNb2RlbEZhZGVUb1RoZW1lSW1hZ2VHcmFkdWFsQmx1cntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb2ludGVyLWV2ZW50czpub25lfS55dENpbmVtYXRpY0NvbnRhaW5lclZpZXdNb2RlbEZhZGVUb1RoZW1lR3JhZGllbnR7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtsZWZ0OjA7dG9wOjB9Lnl0Q29sbGVjdGlvblRodW1ibmFpbFZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlfS55dENvbGxlY3Rpb25UaHVtYm5haWxWaWV3TW9kZWxIb3N0SGFzU3RhY2tze2JvcmRlci10b3A6MXB4IHNvbGlkICNmZmY7bWFyZ2luLXRvcDotMXB4fS55dENvbGxlY3Rpb25UaHVtYm5haWxWaWV3TW9kZWxTbGlkZXNob3d7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjB9Lnl0Q29sbGVjdGlvblRodW1ibmFpbFNsaWRlc2hvd0hvc3R7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpyZWxhdGl2ZX0ueXRDb2xsZWN0aW9uVGh1bWJuYWlsU2xpZGVzaG93U2xpZGVzaG93VGh1bWJuYWlse3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjhzIGVhc2V9Lnl0Q29sbGVjdGlvblRodW1ibmFpbFNsaWRlc2hvd1NsaWRlc2hvd1RodW1ibmFpbEZpcnN0U2xpZGV7cG9zaXRpb246cmVsYXRpdmV9Lnl0Q29sbGVjdGlvblRodW1ibmFpbFNsaWRlc2hvd1NsaWRlc2hvd1RodW1ibmFpbFNob3dTbGlkZXtvcGFjaXR5OjF9Lnl0RG93bmxvYWRCdXR0b25WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0RG93bmxvYWRCdXR0b25WaWV3TW9kZWxIb3N0IHBhdGgub2ZmbGluZS1kb3dubG9hZGluZy1wcm9ncmVzc3tzdHJva2U6IzNlYTZmZn0ueXREb3dubG9hZEJ1dHRvblZpZXdNb2RlbEhvc3QgcGF0aC5vZmZsaW5lLWRvd25sb2FkaW5nLWJhY2tncm91bmR7c3Ryb2tlOiMwNjVmZDR9Lnl0RG93bmxvYWRCdXR0b25WaWV3TW9kZWxJc0hpZGRlbntkaXNwbGF5Om5vbmV9Lnl0Rm9ybUZvb3RlclZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRSYWRpb0J1dHRvbkl0ZW1WaWV3TW9kZWxIb3N0e3dpZHRoOjEwMCV9Lnl0UmFkaW9CdXR0b25JdGVtVmlld01vZGVsTGFiZWx7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1mbGV4OjE7ZmxleC1ncm93OjE7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS55dFJhZGlvQnV0dG9uSXRlbVZpZXdNb2RlbERpc2FibGVkIC55dFJhZGlvQnV0dG9uSXRlbVZpZXdNb2RlbExhYmVse2NvbG9yOiM2MDYwNjB9Lnl0UmFkaW9CdXR0b25JdGVtVmlld01vZGVsU3ViVGV4dCwueXRSYWRpb0J1dHRvbkl0ZW1WaWV3TW9kZWxTdXBlcmxhYmVse2NvbG9yOiM2MDYwNjA7ZGlzcGxheTpibG9jaztmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRSYWRpb0J1dHRvbkl0ZW1WaWV3TW9kZWxTdWJUaXRsZXttYXJnaW4tYm90dG9tOjhweH0ueXRSYWRpb0J1dHRvbkl0ZW1WaWV3TW9kZWxUcmFpbGluZ0FjY2Vzc29yeXtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRSYWRpb0J1dHRvbkl0ZW1WaWV3TW9kZWxUcmFpbGluZ0NvbnRhaW5lcnstbW96LW1hcmdpbi1zdGFydDo4cHg7bWFyZ2luLWlubGluZS1zdGFydDo4cHg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleH0ueXRTZWxlY3Rpb25MaXN0SXRlbUZvcm1WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0U2VsZWN0aW9uTGlzdEl0ZW1Gb3JtVmlld01vZGVsUGFyYWdyYXBoe21hcmdpbi1ib3R0b206MTJweDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDB9Lnl0U3VibWl0QnV0dG9uVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dEF0dHJpYnV0aW9uVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO21pbi13aWR0aDowfS55dEF0dHJpYnV0aW9uVmlld01vZGVsQXR0cmlidXRpb25UZXh0e2JhY2tncm91bmQtY29sb3I6dW5zZXQ7Ym9yZGVyLXN0eWxlOnVuc2V0O2ZsZXgtc2hyaW5rOjE7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7bWF4LWhlaWdodDoxLjhyZW19Lnl0QXR0cmlidXRpb25WaWV3TW9kZWxTdWZmaXh7bWFyZ2luLWxlZnQ6NHB4O2JhY2tncm91bmQtY29sb3I6dW5zZXQ7Ym9yZGVyLXN0eWxlOnVuc2V0O2ZsZXgtc2hyaW5rOjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7d2hpdGUtc3BhY2U6bm93cmFwO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7bWF4LWhlaWdodDoxLjhyZW19Lnl0QXR0cmlidXRpb25WaWV3TW9kZWxBdHRyaWJ1dGlvbkltYWdle21hcmdpbi1yaWdodDo4cHg7LW1vei1ib3gtZmxleDowO2ZsZXg6bm9uZX0ueXRBdHRyaWJ1dGlvblZpZXdNb2RlbEJhZGdle21hcmdpbi1yaWdodDo0cHg7LW1vei1ib3gtZmxleDowO2ZsZXg6bm9uZX0ueXRBdHRyaWJ1dGlvblZpZXdNb2RlbFRhcHBhYmxle2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXN0eWxlOm5vbmU7cGFkZGluZzowO2N1cnNvcjpwb2ludGVyO2NvbG9yOmluaGVyaXQ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjttaW4td2lkdGg6MH0ueXRBdHRyaWJ1dGlvblZpZXdNb2RlbE1lZGl1bVRleHQgLnl0QXR0cmlidXRpb25WaWV3TW9kZWxBdHRyaWJ1dGlvblRleHQsLnl0QXR0cmlidXRpb25WaWV3TW9kZWxNZWRpdW1UZXh0IC55dEF0dHJpYnV0aW9uVmlld01vZGVsQmFkZ2UsLnl0QXR0cmlidXRpb25WaWV3TW9kZWxNZWRpdW1UZXh0IC55dEF0dHJpYnV0aW9uVmlld01vZGVsU3VmZml4e2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazt3aGl0ZS1zcGFjZTpub3dyYXA7dGV4dC1vdmVyZmxvdzplbGxpcHNpczttYXgtaGVpZ2h0OjJyZW19Lnl0QXR0cmlidXRpb25WaWV3TW9kZWxIZWF2eVRleHQgLnl0QXR0cmlidXRpb25WaWV3TW9kZWxBdHRyaWJ1dGlvblRleHQsLnl0QXR0cmlidXRpb25WaWV3TW9kZWxIZWF2eVRleHQgLnl0QXR0cmlidXRpb25WaWV3TW9kZWxCYWRnZSwueXRBdHRyaWJ1dGlvblZpZXdNb2RlbEhlYXZ5VGV4dCAueXRBdHRyaWJ1dGlvblZpZXdNb2RlbFN1ZmZpeHtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazt3aGl0ZS1zcGFjZTpub3dyYXA7dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7cG9zaXRpb246cmVsYXRpdmU7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7bWluLXdpZHRoOjA7LS15dC1hdHRyaWJ1dGVkLXN0cmluZy1saW5rLWhvdmVyLWNvbG9yOiMwMzAzMDN9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxIb3N0Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxNb3ZlTG9ja3VwT3ZlcmZsb3dNZW51VG9Cb3R0b21SaWdodHtwb3NpdGlvbjpzdGF0aWN9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxIZWFkaW5nUmVzZXR7bWFyZ2luOjA7cGFkZGluZzowO2JvcmRlcjowO21heC1oZWlnaHQ6dW5zZXR9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUZXh0Q29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttaW4td2lkdGg6MH0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbEF2YXRhcnttYXJnaW4tcmlnaHQ6MTJweDtkaXNwbGF5Om5vbmV9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxVcGRhdGVkQXZhdGFyTWFyZ2lue21hcmdpbi1yaWdodDo4cHh9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXt0ZXh0LWRlY29yYXRpb246bm9uZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7Y29sb3I6IzAzMDMwM30ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbEhhc01lbnVCdXR0b24gLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXtwYWRkaW5nLXJpZ2h0OjI0cHh9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YXtjb2xvcjojNjA2MDYwfS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsTWVudUJ1dHRvbntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTZweDtyaWdodDotMTBweH0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbEF0dHJpYnV0aW9ue21hcmdpbi10b3A6MnB4O2NvbG9yOiM2MDYwNjB9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxTdGFuZGFyZCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbEF2YXRhcntkaXNwbGF5OmJsb2NrfS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsTWVudUJ1dHRvbi55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsQm90dG9tUmlnaHR7dG9wOnVuc2V0O3JpZ2h0OjA7Ym90dG9tOjA7dHJhbnNmb3JtOm5vbmU7b3BhY2l0eTowfUBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpuby1wcmVmZXJlbmNlKXsueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbE1lbnVCdXR0b24ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbEJvdHRvbVJpZ2h0e3RyYW5zaXRpb246b3BhY2l0eSAuMnN9fS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsTWVudUJ1dHRvbi55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVmlzaWJsZXtvcGFjaXR5OjF9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxNZW51QnV0dG9uOmZvY3VzLXdpdGhpbntvcGFjaXR5OjF9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxDYXJke21hcmdpbjo0cHggMH0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFZlcnRpY2FsLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxDZW50ZXJlZHstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVmVydGljYWwueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbENlbnRlcmVkIC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7cGFkZGluZy1yaWdodDowfS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVmVydGljYWwueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbENlbnRlcmVkIC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGV4dENvbnRhaW5lcnstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyfS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVmVydGljYWwueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbENlbnRlcmVkIC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsQXR0cmlidXRpb257bWFyZ2luLXRvcDoxMnB4fS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVmVydGljYWwueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbENhcmR7bWFyZ2luOjAgOHB4IDhweH0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbE92ZXJsYXl7LS15dC1hdHRyaWJ1dGVkLXN0cmluZy1saW5rLWhvdmVyLWNvbG9yOiNmZmZ9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxPdmVybGF5IC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsTWV0YWRhdGEsLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxPdmVybGF5IC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7Y29sb3I6I2ZmZn0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRodW1ibmFpbE92ZXJsYXl7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRodW1ibmFpbE92ZXJsYXkueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbENhcmR7bWFyZ2luOjRweH0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRodW1ibmFpbE92ZXJsYXkgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxBdmF0YXJ7bWFyZ2luLXJpZ2h0OjhweH0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRodW1ibmFpbE92ZXJsYXkgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YSwueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRodW1ibmFpbE92ZXJsYXkgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXtwYWRkaW5nLXJpZ2h0OjhweH0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRodW1ibmFpbE92ZXJsYXkgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUZXh0Q29udGFpbmVyey1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MX0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRodW1ibmFpbE92ZXJsYXkgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxNZW51QnV0dG9ue3Bvc2l0aW9uOnVuc2V0fS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsSG9yaXpvbnRhbCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbEF2YXRhcntkaXNwbGF5Om5vbmV9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxIb3Jpem9udGFsLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxDZW50ZXJlZCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRleHRDb250YWluZXJ7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nLXJpZ2h0OjI4cHh9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxIb3Jpem9udGFsLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxDZW50ZXJlZCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxle3BhZGRpbmctcmlnaHQ6MH0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbEhvcml6b250YWwueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbENlbnRlcmVkIC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsTWVudUJ1dHRvbnt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpfS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsU3RhbmRhcmQgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjQuNHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFN0YW5kYXJkIC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFN0YW5kYXJkIC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7bWF4LWhlaWdodDo0LjRyZW19Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxTdGFuZGFyZC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVHlwb2dyYXBoeUJ1bXAgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjhyZW07bGluZS1oZWlnaHQ6Mi42cmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjUuMnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFN0YW5kYXJkLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUeXBvZ3JhcGh5QnVtcCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxley13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxTdGFuZGFyZC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVHlwb2dyYXBoeUJ1bXAgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXttYXgtaGVpZ2h0OjUuMnJlbX0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFN0YW5kYXJkLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxMZWdhY3lUeXBvZ3JhcGh5IC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS44cmVtO2xpbmUtaGVpZ2h0OjIuNnJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo1LjJyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxTdGFuZGFyZC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsTGVnYWN5VHlwb2dyYXBoeSAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxley13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxTdGFuZGFyZC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsTGVnYWN5VHlwb2dyYXBoeSAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxle21heC1oZWlnaHQ6NS4ycmVtfS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsU3RhbmRhcmQueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFJpY2hHcmlkTGVnYWN5VHlwb2dyYXBoeSAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NC40cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsU3RhbmRhcmQueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFJpY2hHcmlkTGVnYWN5VHlwb2dyYXBoeSAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxley13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxTdGFuZGFyZC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsUmljaEdyaWRMZWdhY3lUeXBvZ3JhcGh5IC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7bWF4LWhlaWdodDo0LjRyZW19Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxTdGFuZGFyZC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGVNYXhMaW5lczEgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjIuMnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFN0YW5kYXJkLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZU1heExpbmVzMSAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxley13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxTdGFuZGFyZC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGVNYXhMaW5lczEgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXttYXgtaGVpZ2h0OjIuMnJlbX0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFN0YW5kYXJkLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZU1heExpbmVzMyAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6Ni42cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsU3RhbmRhcmQueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxlTWF4TGluZXMzIC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjM7bWF4LWhlaWdodDpub25lfX0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFN0YW5kYXJkLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZU1heExpbmVzMyAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxle21heC1oZWlnaHQ6Ni42cmVtfS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsQ29tcGFjdCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjUwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxDb21wYWN0IC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbENvbXBhY3QgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXttYXgtaGVpZ2h0OjRyZW19Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxDb21wYWN0Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUeXBvZ3JhcGh5QnVtcCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NC40cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsQ29tcGFjdC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVHlwb2dyYXBoeUJ1bXAgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsQ29tcGFjdC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVHlwb2dyYXBoeUJ1bXAgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXttYXgtaGVpZ2h0OjQuNHJlbX0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbENvbXBhY3QueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFJpY2hHcmlkTGVnYWN5VHlwb2dyYXBoeSAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NC40cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsQ29tcGFjdC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsUmljaEdyaWRMZWdhY3lUeXBvZ3JhcGh5IC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbENvbXBhY3QueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFJpY2hHcmlkTGVnYWN5VHlwb2dyYXBoeSAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxle21heC1oZWlnaHQ6NC40cmVtfS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsQ29tcGFjdC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGVNYXhMaW5lczMgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo1MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo2cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsQ29tcGFjdC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGVNYXhMaW5lczMgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXstd2Via2l0LWxpbmUtY2xhbXA6MzttYXgtaGVpZ2h0Om5vbmV9fS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsQ29tcGFjdC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGVNYXhMaW5lczMgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXttYXgtaGVpZ2h0OjZyZW19Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaW55IC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo1MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDozLjZyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaW55IC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpbnkgLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUaXRsZXttYXgtaGVpZ2h0OjMuNnJlbX0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbENlbnRlcmVkQ29sdW1uey1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LWZsZXg6MTtmbGV4OjF9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxDZW50ZXJlZENvbHVtbiAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbEF2YXRhcnttYXJnaW4tcmlnaHQ6MDtkaXNwbGF5OmJsb2NrfS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsQ2VudGVyZWRDb2x1bW4gLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxNZXRhZGF0YSwueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbENlbnRlcmVkQ29sdW1uIC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsVGl0bGV7cGFkZGluZy1yaWdodDowfS55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsQ2VudGVyZWRDb2x1bW4gLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxUZXh0Q29udGFpbmVyey1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MTstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxDZW50ZXJlZENvbHVtbiAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhey1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxNb3ZlTG9ja3VwT3ZlcmZsb3dNZW51VG9Cb3R0b21SaWdodCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRleHRDb250YWluZXIsLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxNb3ZlTG9ja3VwT3ZlcmZsb3dNZW51VG9Cb3R0b21SaWdodCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbFRpdGxle3BhZGRpbmctcmlnaHQ6MH0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbE1vdmVMb2NrdXBPdmVyZmxvd01lbnVUb0JvdHRvbVJpZ2h0IC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsTWVudUJ1dHRvbnt6LWluZGV4OjE7Ym9yZGVyLXJhZGl1czo1MCV9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxNb3ZlTG9ja3VwT3ZlcmZsb3dNZW51VG9Cb3R0b21SaWdodCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbE1lbnVCdXR0b246YWZ0ZXIsLnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxNb3ZlTG9ja3VwT3ZlcmZsb3dNZW51VG9Cb3R0b21SaWdodCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbE1lbnVCdXR0b246YmVmb3Jle2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6LTE1JTtib3JkZXItcmFkaXVzOjUwJX0ueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbE1vdmVMb2NrdXBPdmVyZmxvd01lbnVUb0JvdHRvbVJpZ2h0IC55dExvY2t1cE1ldGFkYXRhVmlld01vZGVsTWVudUJ1dHRvbjpiZWZvcmV7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCNmZmYgNjAlLHRyYW5zcGFyZW50IDEwMCUpO3otaW5kZXg6LTJ9Lnl0TG9ja3VwTWV0YWRhdGFWaWV3TW9kZWxNb3ZlTG9ja3VwT3ZlcmZsb3dNZW51VG9Cb3R0b21SaWdodCAueXRMb2NrdXBNZXRhZGF0YVZpZXdNb2RlbE1lbnVCdXR0b246YWZ0ZXJ7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlLHZhcigtLXl0LWxvY2t1cC1tZXRhZGF0YS10aGVtZWQtbWVudS1idXR0b24tYWRkaXRpdmUtYmFja2dyb3VuZCx0cmFuc3BhcmVudCkgNjAlLHRyYW5zcGFyZW50IDEwMCUpO3otaW5kZXg6LTF9Lnl0Rm9ybVBhbmVsRm9vdGVyVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dERpYWxvZ0ltYWdlQ29udGVudFZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS55dERpYWxvZ0ltYWdlQ29udGVudFZpZXdNb2RlbEltYWdle21hcmdpbi1pbmxpbmU6YXV0bzstbW96LWJveC1mbGV4OjA7ZmxleC1ncm93OjA7ZmxleC1zaHJpbms6MX0ueXREaWFsb2dJbWFnZUNvbnRlbnRWaWV3TW9kZWxEZXNjcmlwdGlvbnttYXJnaW4tdG9wOjE2cHg7dGV4dC1hbGlnbjpjZW50ZXI7dGV4dC13cmFwOmJhbGFuY2U7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dEFuaW1hdGVkVGh1bWJuYWlsT3ZlcmxheVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9jaztwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDtyaWdodDowO2xlZnQ6MH0ueXRUaHVtYm5haWxCb3R0b21PdmVybGF5Vmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDstbW96LWJveC1hbGlnbjplbmQ7YWxpZ24taXRlbXM6ZmxleC1lbmQ7LW1vei1ib3gtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS55dFRodW1ibmFpbEJvdHRvbU92ZXJsYXlWaWV3TW9kZWxIb3N0QmFja2dyb3VuZHstbW96LWJveC1mbGV4OjE7ZmxleDoxO2ZsZXgtYmFzaXM6MC4wMDAwMDAwMDFweDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7aGVpZ2h0OjY4cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQscmdiYSgwLDAsMCwwLjYpKX0ueXRUaHVtYm5haWxCb3R0b21PdmVybGF5Vmlld01vZGVsQmFkZ2VDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3d9Lnl0VGh1bWJuYWlsQm90dG9tT3ZlcmxheVZpZXdNb2RlbEJhZGdlQ29udGFpbmVyU21hbGx7cGFkZGluZzowIDJweCAycHggMH0ueXRUaHVtYm5haWxCb3R0b21PdmVybGF5Vmlld01vZGVsQmFkZ2VDb250YWluZXJTbWFsbExlZ2FjeXtwYWRkaW5nOjAgMnB4IDRweCAwfS55dFRodW1ibmFpbEJvdHRvbU92ZXJsYXlWaWV3TW9kZWxCYWRnZUNvbnRhaW5lck1lZGl1bXtwYWRkaW5nOjAgNHB4IDRweCAwfS55dFRodW1ibmFpbEJvdHRvbU92ZXJsYXlWaWV3TW9kZWxCYWRnZUNvbnRhaW5lckxhcmdle3BhZGRpbmc6MCA4cHggOHB4IDB9Lnl0VGh1bWJuYWlsQm90dG9tT3ZlcmxheVZpZXdNb2RlbEJhZGdlQ29udGFpbmVyQ2xpcHttYXJnaW4tcmlnaHQ6NHB4fS55dFRodW1ibmFpbEJvdHRvbU92ZXJsYXlWaWV3TW9kZWxCYWRnZXttYXJnaW4tbGVmdDo0cHh9Lnl0VGh1bWJuYWlsSG92ZXJPdmVybGF5Vmlld01vZGVsSG9zdHtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcztwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtjdXJzb3I6cG9pbnRlcn0ueXRUaHVtYm5haWxIb3Zlck92ZXJsYXlWaWV3TW9kZWxIb3N0OmZvY3VzLC55dFRodW1ibmFpbEhvdmVyT3ZlcmxheVZpZXdNb2RlbEhvc3Q6Zm9jdXMtd2l0aGluLC55dFRodW1ibmFpbEhvdmVyT3ZlcmxheVZpZXdNb2RlbEhvc3Q6aG92ZXJ7b3BhY2l0eToxfS55dFRodW1ibmFpbEhvdmVyT3ZlcmxheVZpZXdNb2RlbEhvc3RGb3JjZUhvdmVye29wYWNpdHk6MTt0cmFuc2l0aW9uOm5vbmV9Lnl0VGh1bWJuYWlsSG92ZXJPdmVybGF5Vmlld01vZGVsU2NyaW17ZGlzcGxheTpibG9jaztwb3NpdGlvbjpyZWxhdGl2ZTtoZWlnaHQ6MTAwJX0ueXRUaHVtYm5haWxIb3Zlck92ZXJsYXlWaWV3TW9kZWxTdHlsZUNvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxMDAlfS55dFRodW1ibmFpbEhvdmVyT3ZlcmxheVZpZXdNb2RlbFN0eWxlQnV0dG9ue2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpO3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbToxNnB4O3JpZ2h0OjE2cHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2hlaWdodDozNnB4O2JvcmRlci1yYWRpdXM6MThweDtwYWRkaW5nOjAgMTZweH0ueXRUaHVtYm5haWxIb3Zlck92ZXJsYXlWaWV3TW9kZWxUZXh0e21hcmdpbjo0cHg7Y29sb3I6I2ZmZjtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDB9Lnl0VGh1bWJuYWlsSG92ZXJPdmVybGF5Vmlld01vZGVsSWNvbnttYXJnaW46NHB4O2NvbG9yOiNmZmY7ZmlsbDojZmZmO2hlaWdodDoyNHB4fS55dFRodW1ibmFpbEhvdmVyT3ZlcmxheVRvZ2dsZUFjdGlvbnNWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O3RvcDowO3JpZ2h0OjA7cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoyMDA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7cGFkZGluZzowIDAgNHB4IDRweDtwb2ludGVyLWV2ZW50czpub25lfS55dFRodW1ibmFpbEhvdmVyT3ZlcmxheVRvZ2dsZUFjdGlvbnNWaWV3TW9kZWxIaWRkZW57dmlzaWJpbGl0eTpoaWRkZW59Lnl0VGh1bWJuYWlsSG92ZXJPdmVybGF5VG9nZ2xlQWN0aW9uc1ZpZXdNb2RlbEhpZGRlbkdhdGVke29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lfS55dFRodW1ibmFpbEhvdmVyT3ZlcmxheVRvZ2dsZUFjdGlvbnNWaWV3TW9kZWxCdXR0b257cGFkZGluZzo0cHggNHB4IDAgMDtwb2ludGVyLWV2ZW50czphdXRvfS55dFRodW1ibmFpbEhvdmVyT3ZlcmxheVRvZ2dsZUFjdGlvbnNWaWV3TW9kZWxPdmVybGF5QmFja2dyb3VuZHtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC42KX0ueXRUaHVtYm5haWxIb3Zlck92ZXJsYXlUb2dnbGVBY3Rpb25zVmlld01vZGVsVG9wRW5kVmVydGljYWx7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LXBhY2s6c3RhcnQ7anVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7LW1vei1ib3gtYWxpZ246ZW5kO2FsaWduLWl0ZW1zOmZsZXgtZW5kfS55dFRodW1ibmFpbEhvdmVyT3ZlcmxheVRvZ2dsZUFjdGlvbnNWaWV3TW9kZWxCb3R0b21FbmRWZXJ0aWNhbHstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtcGFjazplbmQ7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kOy1tb3otYm94LWFsaWduOmVuZDthbGlnbi1pdGVtczpmbGV4LWVuZH0ueXRUaHVtYm5haWxIb3Zlck92ZXJsYXlUb2dnbGVBY3Rpb25zVmlld01vZGVsVG9wRW5kSG9yaXpvbnRhbHstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7LW1vei1ib3gtYWxpZ246c3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0ueXRUaHVtYm5haWxPdmVybGF5QmFkZ2VWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93O3Bvc2l0aW9uOmFic29sdXRlfS55dFRodW1ibmFpbE92ZXJsYXlCYWRnZVZpZXdNb2RlbFNtYWxse21hcmdpbjoycHh9Lnl0VGh1bWJuYWlsT3ZlcmxheUJhZGdlVmlld01vZGVsTWVkaXVte21hcmdpbjo0cHh9Lnl0VGh1bWJuYWlsT3ZlcmxheUJhZGdlVmlld01vZGVsTGFyZ2V7bWFyZ2luOjhweH0ueXRUaHVtYm5haWxPdmVybGF5QmFkZ2VWaWV3TW9kZWxUb3BTdGFydHt0b3A6MDtsZWZ0OjB9Lnl0VGh1bWJuYWlsT3ZlcmxheUJhZGdlVmlld01vZGVsVG9wU3RhcnQgLnl0VGh1bWJuYWlsT3ZlcmxheUJhZGdlVmlld01vZGVsQmFkZ2V7bWFyZ2luLXJpZ2h0OjRweH0ueXRUaHVtYm5haWxPdmVybGF5QmFkZ2VWaWV3TW9kZWxCb3R0b21FbmR7Ym90dG9tOjA7cmlnaHQ6MH0ueXRUaHVtYm5haWxPdmVybGF5QmFkZ2VWaWV3TW9kZWxCb3R0b21FbmQgLnl0VGh1bWJuYWlsT3ZlcmxheUJhZGdlVmlld01vZGVsQmFkZ2V7bWFyZ2luLWxlZnQ6NHB4fS55dFRodW1ibmFpbE92ZXJsYXlCYWRnZVZpZXdNb2RlbENsaXAueXRUaHVtYm5haWxPdmVybGF5QmFkZ2VWaWV3TW9kZWxCb3R0b21FbmQgLnl0VGh1bWJuYWlsT3ZlcmxheUJhZGdlVmlld01vZGVsQmFkZ2U6bGFzdC1jaGlsZHttYXJnaW4tcmlnaHQ6NHB4fS55dFRodW1ibmFpbE92ZXJsYXlGdWxsVmlld01vZGVsSG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpfS55dFRodW1ibmFpbE92ZXJsYXlGdWxsVmlld01vZGVsVGV4dHttYXJnaW46NHB4O2NvbG9yOiNmZmY7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFRodW1ibmFpbE92ZXJsYXlGdWxsVmlld01vZGVsSWNvbnttYXJnaW46NHB4O2NvbG9yOiNmZmY7ZmlsbDojZmZmO2hlaWdodDoyNHB4fS55dENvbnRlbnRQcmV2aWV3SW1hZ2VWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpyZWxhdGl2ZX0ueXRDb250ZW50UHJldmlld0ltYWdlVmlld01vZGVsQ2lyY2xlSW1hZ2V7Ym9yZGVyLXJhZGl1czo1MCV9Lnl0Q29udGVudFByZXZpZXdJbWFnZVZpZXdNb2RlbEV4dHJhU21hbGxSb3VuZGVkSW1hZ2V7Ym9yZGVyLXJhZGl1czoycHh9Lnl0Q29udGVudFByZXZpZXdJbWFnZVZpZXdNb2RlbFNtYWxsUm91bmRlZEltYWdle2JvcmRlci1yYWRpdXM6NHB4fS55dENvbnRlbnRQcmV2aWV3SW1hZ2VWaWV3TW9kZWxMYXJnZVJvdW5kZWRJbWFnZXtib3JkZXItcmFkaXVzOjhweH0ueXRDb250ZW50UHJldmlld0ltYWdlVmlld01vZGVsVGFwcGFibGV7Y3Vyc29yOnBvaW50ZXJ9Lnl0SW5saW5lRXhwYW5kZXJWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2s7Y3Vyc29yOnBvaW50ZXJ9Lnl0SW5saW5lRXhwYW5kZXJWaWV3TW9kZWxIZWFkZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0SW5saW5lRXhwYW5kZXJWaWV3TW9kZWxCdXR0b257dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjI1cyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleH0ueXRJbmxpbmVFeHBhbmRlclZpZXdNb2RlbEJ1dHRvbkV4cGFuZGVke3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0ueXRJbmxpbmVFeHBhbmRlclZpZXdNb2RlbEJ1dHRvbkNvbnRyb2xsZWR7cG9pbnRlci1ldmVudHM6bm9uZX0ueXRJbmxpbmVFeHBhbmRlclZpZXdNb2RlbEJvZHl7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtcm93czowZnI7dHJhbnNpdGlvbjpncmlkLXRlbXBsYXRlLXJvd3MgLjM1cyBjdWJpYy1iZXppZXIoLjA1LDAsMCwxKX0ueXRJbmxpbmVFeHBhbmRlclZpZXdNb2RlbEJvZHlFeHBhbmRlZHtncmlkLXRlbXBsYXRlLXJvd3M6MWZyfS55dElubGluZUV4cGFuZGVyVmlld01vZGVsQm9keUNvbnRlbnR7b3ZlcmZsb3c6aGlkZGVufS55dFNoZWxmSGVhZGVyTGF5b3V0SG9zdHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1mbGV4OjE7ZmxleDoxOy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttaW4taGVpZ2h0OjQ4cHg7cGFkZGluZzo4cHggMTJweDstbW96LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Lnl0U2hlbGZIZWFkZXJMYXlvdXRPcHRpb25hbE1lZGl1bUxheW91dFBhZGRpbmd7cGFkZGluZzowIDAgMTZweCA4cHh9QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7Lnl0U2hlbGZIZWFkZXJMYXlvdXRPcHRpb25hbE1lZGl1bUxheW91dFBhZGRpbmd7cGFkZGluZzo4cHggMTJweH19Lnl0U2hlbGZIZWFkZXJMYXlvdXRIZWFkZXJSb3d7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1mbGV4OjE7ZmxleDoxfS55dFNoZWxmSGVhZGVyTGF5b3V0UmVzcG9uc2l2ZXttaW4taGVpZ2h0OjU2cHh9QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7Lnl0U2hlbGZIZWFkZXJMYXlvdXRSZXNwb25zaXZle21pbi1oZWlnaHQ6NDhweH19Lnl0U2hlbGZIZWFkZXJMYXlvdXROYXJyb3d7bWluLWhlaWdodDo0OHB4fS55dFNoZWxmSGVhZGVyTGF5b3V0RGlzYWJsZUhvcml6b250YWxQYWRkaW5ne3BhZGRpbmctbGVmdDowO3BhZGRpbmctcmlnaHQ6MH0ueXRTaGVsZkhlYWRlckxheW91dERpc2FibGVWZXJ0aWNhbFBhZGRpbmd7cGFkZGluZy10b3A6MDtwYWRkaW5nLWJvdHRvbTowfS55dFNoZWxmSGVhZGVyTGF5b3V0TGVhZGluZ0ljb257bWFyZ2luLXJpZ2h0OjI0cHg7Y29sb3I6IzAzMDMwMztoZWlnaHQ6MjRweDt3aWR0aDoyNHB4fS55dFNoZWxmSGVhZGVyTGF5b3V0TGVhZGluZ0ltYWdle21hcmdpbi1yaWdodDoxMnB4O21heC1oZWlnaHQ6MzZweDttYXgtd2lkdGg6MzZweDtjb2xvcjojMDMwMzAzfS55dFNoZWxmSGVhZGVyTGF5b3V0TGVhZGluZ0ltYWdlQ2lyY3VsYXJJbWFnZXtib3JkZXItcmFkaXVzOjUwJTtvdmVyZmxvdzpoaWRkZW59Lnl0U2hlbGZIZWFkZXJMYXlvdXRMYWJlbENvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1mbGV4OjE7ZmxleDoxOy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRTaGVsZkhlYWRlckxheW91dFRpdGxlUm93e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmJhc2VsaW5lO2FsaWduLWl0ZW1zOmJhc2VsaW5lfS55dFNoZWxmSGVhZGVyTGF5b3V0VGl0bGV7Y29sb3I6IzAzMDMwMztwYWRkaW5nOjA7bWFyZ2luOjB9Lnl0U2hlbGZIZWFkZXJMYXlvdXRUaXRsZVR5cG9ncmFwaHl7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MnJlbTtsaW5lLWhlaWdodDoyLjhyZW07Zm9udC13ZWlnaHQ6NzAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NS42cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dFNoZWxmSGVhZGVyTGF5b3V0VGl0bGVUeXBvZ3JhcGh5ey13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7Lnl0U2hlbGZIZWFkZXJMYXlvdXRUaXRsZVR5cG9ncmFwaHl7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS44cmVtO2xpbmUtaGVpZ2h0OjIuNnJlbTtmb250LXdlaWdodDo3MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo1LjJyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0U2hlbGZIZWFkZXJMYXlvdXRUaXRsZVR5cG9ncmFwaHl7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX19Lnl0U2hlbGZIZWFkZXJMYXlvdXRUaXRsZVR5cG9ncmFwaHl7bWF4LWhlaWdodDo1LjZyZW19QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7Lnl0U2hlbGZIZWFkZXJMYXlvdXRUaXRsZVR5cG9ncmFwaHl7bWF4LWhlaWdodDo1LjJyZW19fS55dFNoZWxmSGVhZGVyTGF5b3V0U21hbGxUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjhyZW07bGluZS1oZWlnaHQ6Mi42cmVtO2ZvbnQtd2VpZ2h0OjcwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjUuMnJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRTaGVsZkhlYWRlckxheW91dFNtYWxsVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjI7bWF4LWhlaWdodDpub25lfX0ueXRTaGVsZkhlYWRlckxheW91dFNtYWxsVGl0bGV7bWF4LWhlaWdodDo1LjJyZW19Lnl0U2hlbGZIZWFkZXJMYXlvdXREZXRhaWx7bWFyZ2luLWxlZnQ6MTJweDtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6Mi4ycmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dFNoZWxmSGVhZGVyTGF5b3V0RGV0YWlsey13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0U2hlbGZIZWFkZXJMYXlvdXREZXRhaWx7bWF4LWhlaWdodDoyLjJyZW19QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7Lnl0U2hlbGZIZWFkZXJMYXlvdXREZXRhaWx7ZGlzcGxheTpub25lfX0ueXRTaGVsZkhlYWRlckxheW91dFN1YmxhYmVse2NvbG9yOiM2MDYwNjA7cGFkZGluZy10b3A6MnB4fS55dFNoZWxmSGVhZGVyTGF5b3V0U3VibGFiZWxUeXBvZ3JhcGh5e2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6My42cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dFNoZWxmSGVhZGVyTGF5b3V0U3VibGFiZWxUeXBvZ3JhcGh5ey13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0U2hlbGZIZWFkZXJMYXlvdXRTdWJsYWJlbFR5cG9ncmFwaHl7bWF4LWhlaWdodDozLjZyZW19Lnl0U2hlbGZIZWFkZXJMYXlvdXRTdXBlcmxhYmVse2NvbG9yOiM2MDYwNjA7cGFkZGluZy1ib3R0b206MnB4O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6My42cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dFNoZWxmSGVhZGVyTGF5b3V0U3VwZXJsYWJlbHstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dFNoZWxmSGVhZGVyTGF5b3V0U3VwZXJsYWJlbHttYXgtaGVpZ2h0OjMuNnJlbX0ueXRTaGVsZkhlYWRlckxheW91dFRyYWlsaW5nQWN0aW9uc3ttYXJnaW4tbGVmdDoxMnB4fS55dFNoZWxmSGVhZGVyTGF5b3V0SXNPdmVybGF5e2NvbG9yOmluaGVyaXR9Lnl0U2hlbGZIZWFkZXJMYXlvdXRJc092ZXJsYXkgLnl0U2hlbGZIZWFkZXJMYXlvdXRUaXRsZXtjb2xvcjojZmZmfS55dFNoZWxmSGVhZGVyTGF5b3V0SXNPdmVybGF5IC55dFNoZWxmSGVhZGVyTGF5b3V0U3VibGFiZWx7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwwLjcpfS55dFNoZWxmSGVhZGVyTGF5b3V0VGFwcGFibGV7Y3Vyc29yOnBvaW50ZXJ9Lnl0U2hlbGZIZWFkZXJMYXlvdXRIb3ZlcmFibGU6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMDUpfS55dFNoZWxmSGVhZGVyTGF5b3V0Qm90dG9tQWNjZXNzb3J5e21hcmdpbi10b3A6OHB4fS55dE1hcnF1ZWVTY3JvbGx7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dE1hcnF1ZWVTY3JvbGxIb3N0e2Rpc3BsYXk6YmxvY2s7b3ZlcmZsb3c6aGlkZGVufS55dE1hcnF1ZWVTY3JvbGxBbmltYXRpb25FbmFibGVke2FuaW1hdGlvbjpzY3JvbGxpbmctcGFyZW50IDE2cyBsaW5lYXIgM3MgaW5maW5pdGU7YW5pbWF0aW9uLWZpbGwtbW9kZTpiYWNrd2FyZHM7YW5pbWF0aW9uLW5hbWU6c2Nyb2xsaW5nLXBhcmVudH0ueXRNYXJxdWVlU2Nyb2xsSW5uZXJDb250YWluZXJ7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTotbW96LWlubGluZS1ib3g7ZGlzcGxheTppbmxpbmUtZmxleH1Aa2V5ZnJhbWVzIHNjcm9sbGluZy1wYXJlbnR7dG97dHJhbnNmb3JtOnRyYW5zbGF0ZVgodmFyKC0tbWFycXVlZS10cmFuc2xhdGUsMCkpfX0ueXRNYXJxdWVlU2Nyb2xsRHVwbGljYXRlU3RyaW5nLC55dE1hcnF1ZWVTY3JvbGxQcmltYXJ5U3RyaW5ne2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRNYXJxdWVlU2Nyb2xsSG9zdExhcmdlIC55dE1hcnF1ZWVTY3JvbGxEdXBsaWNhdGVTdHJpbmcsLnl0TWFycXVlZVNjcm9sbEhvc3RMYXJnZSAueXRNYXJxdWVlU2Nyb2xsUHJpbWFyeVN0cmluZ3tmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjZyZW07bGluZS1oZWlnaHQ6Mi4ycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRSZWVsU291bmRNZXRhZGF0YVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja31AbWVkaWEgKG1heC13aWR0aDoyOTkuOXB4KXsueXRSZWVsU291bmRNZXRhZGF0YVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpub25lfX0ueXRSZWVsU291bmRNZXRhZGF0YVZpZXdNb2RlbE1ldGFkYXRhQ29udGFpbmVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Y3Vyc29yOnBvaW50ZXJ9Lnl0UmVlbFNvdW5kTWV0YWRhdGFWaWV3TW9kZWxJY29ue21hcmdpbi1yaWdodDo0cHg7Y29sb3I6dmFyKC0tcmVlbC1tZXRhZGF0YS1jb2xvciwjZmZmKTtoZWlnaHQ6MTZweDt3aWR0aDoxNnB4fS55dFJlZWxTb3VuZE1ldGFkYXRhVmlld01vZGVsTWFycXVlZUNvbnRhaW5lcntjb2xvcjp2YXIoLS1yZWVsLW1ldGFkYXRhLWNvbG9yLCNmZmYpO292ZXJmbG93OmhpZGRlbjstbW96LWJveC1mbGV4OjE7ZmxleDoxO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRSZWVsU291bmRNZXRhZGF0YVZpZXdNb2RlbEhvc3RMYXJnZXtkaXNwbGF5OmJsb2NrfS55dFJlZWxTb3VuZE1ldGFkYXRhVmlld01vZGVsSG9zdExhcmdlIC55dFJlZWxTb3VuZE1ldGFkYXRhVmlld01vZGVsSWNvbnt3aWR0aDoyMnB4O2hlaWdodDoyMnB4O21hcmdpbi1yaWdodDo4cHh9Lnl0U21hcnRJbWF0aW9uc0NvbnRlbnR7ZGlzcGxheTpibG9ja30ueXRTbWFydEltYXRpb25zRXhwZXJpbWVudEVuYWJsZWR7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpibG9ja30ueXRTbWFydEltYXRpb25zRXhwZXJpbWVudEVuYWJsZWQgLnl0U21hcnRJbWF0aW9uc0NvbnRlbnR7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxO2JvcmRlci1yYWRpdXM6MThweH0ueXRTbWFydEltYXRpb25zQm9yZGVye3otaW5kZXg6MTtib3JkZXItcmFkaXVzOjIycHg7cG9zaXRpb246YWJzb2x1dGU7b3ZlcmZsb3c6aGlkZGVuO3RvcDotM3B4O2xlZnQ6LTNweDtib3R0b206LTNweDtyaWdodDotM3B4fS55dFNtYXJ0SW1hdGlvbnNCb3JkZXJHcmFkaWVudHtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC41cyBlYXNlfS55dFNtYXJ0SW1hdGlvbnNBY3RpdmVCb3JkZXIgLnl0U21hcnRJbWF0aW9uc0JvcmRlckdyYWRpZW50e29wYWNpdHk6MX0ueXRTbWFydEltYXRpb25zQWN0aXZlQmFja2dyb3VuZCAueXRTbWFydEltYXRpb25zQ29udGVudHtiYWNrZ3JvdW5kOiNmZmZ9Lnl0U21hcnRJbWF0aW9uc0VuYWJsZU1hc2tpbmcgLnl0U21hcnRJbWF0aW9uc0JvcmRlcntwYWRkaW5nOjNweDstd2Via2l0LW1hc2s6bGluZWFyLWdyYWRpZW50KCNmZmYgMCAwKSBjb250ZW50LWJveCxsaW5lYXItZ3JhZGllbnQoI2ZmZiAwIDApO21hc2stY29tcG9zaXRlOmV4Y2x1ZGV9Lnl0U21hcnRJbWF0aW9uc0VuYWJsZU1hc2tpbmcgLnl0U21hcnRJbWF0aW9uc0JvcmRlckdyYWRpZW50e3dpZHRoOmNhbGMoMTAwJSArIDEycHgpO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTNweCwtM3B4KX0ueXRTbWFydEltYXRpb25zRW5hYmxlTWFza2luZyAueXRTbWFydEltYXRpb25zQ29udGVudHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS55dFNtYXJ0SW1hdGlvbnNJbnZpc2libGUgLnl0U21hcnRJbWF0aW9uc0JvcmRlciwueXRTbWFydEltYXRpb25zSW52aXNpYmxlIC55dFNtYXJ0SW1hdGlvbnNCb3JkZXJHcmFkaWVudHtvcGFjaXR5Oi4wMDF9Lnl0RGlzbGlrZUJ1dHRvblZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRMaWtlQnV0dG9uVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dFN3aXRjaEJ1dHRvblZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRTd2l0Y2hCdXR0b25WaWV3TW9kZWxCdXR0b257cGFkZGluZzowO2JvcmRlcjpub25lO291dGxpbmU6bm9uZTtmb250OmluaGVyaXQ7dGV4dC10cmFuc2Zvcm06aW5oZXJpdDtjb2xvcjppbmhlcml0O2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9Lnl0U3dpdGNoQnV0dG9uVmlld01vZGVsVGFwcGFibGV7Y3Vyc29yOnBvaW50ZXJ9Lnl0U3dpdGNoU2hhcGVIb3N0e2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjQwcHg7aGVpZ2h0OjI0cHg7ZmxleC1zaHJpbms6MH0ueXRTd2l0Y2hTaGFwZVRyYWNre3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjQwcHg7aGVpZ2h0OjI0cHg7Ym9yZGVyLXJhZGl1czoxMnB4O2JhY2tncm91bmQtY29sb3I6IzkwOTA5MDt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjE1c30ueXRTd2l0Y2hTaGFwZVRyYWNrQWN0aXZle2JhY2tncm91bmQtY29sb3I6IzBmMGYwZjt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjE1c30ueXRTd2l0Y2hTaGFwZVRyYWNrRGlzYWJsZWR7b3BhY2l0eTouM30ueXRTd2l0Y2hTaGFwZUtub2J7cG9zaXRpb246YWJzb2x1dGU7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZC1jb2xvcjojZmZmO3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHg7dG9wOjJweDt0cmFuc2Zvcm06dHJhbnNsYXRlWCgycHgpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xNXN9Lnl0U3dpdGNoU2hhcGVLbm9iQWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGVYKDE4cHgpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xNXN9QG1lZGlhIChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7Lnl0U3dpdGNoU2hhcGVUcmFja3tvdXRsaW5lOjFweCBzb2xpZCAjOTA5MDkwfS55dFN3aXRjaFNoYXBlVHJhY2tBY3RpdmV7b3V0bGluZToycHggc29saWQgIzAzMDMwMztiYWNrZ3JvdW5kLWNvbG9yOkJ1dHRvblRleHR9Lnl0U3dpdGNoU2hhcGVLbm9ie291dGxpbmU6MXB4IHNvbGlkICMwMzAzMDN9fS55dFNwZWNBdmF0YXJTaGFwZUhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0ueXRTcGVjQXZhdGFyU2hhcGVCdXR0b257ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlO2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7Ym9yZGVyLXN0eWxlOm5vbmV9Lnl0U3BlY0F2YXRhclNoYXBlVGFwcGFibGV7Y3Vyc29yOnBvaW50ZXJ9Lnl0U3BlY0F2YXRhclNoYXBlQnV0dG9uVGlueXt3aWR0aDoxNnB4O2hlaWdodDoxNnB4fS55dFNwZWNBdmF0YXJTaGFwZUJ1dHRvbkV4dHJhU21hbGx7d2lkdGg6MjRweDtoZWlnaHQ6MjRweH0ueXRTcGVjQXZhdGFyU2hhcGVCdXR0b25TbWFsbHt3aWR0aDozMnB4O2hlaWdodDozMnB4fS55dFNwZWNBdmF0YXJTaGFwZUJ1dHRvbk1lZGl1bXt3aWR0aDozNnB4O2hlaWdodDozNnB4fS55dFNwZWNBdmF0YXJTaGFwZUJ1dHRvbjQ4e3dpZHRoOjQ4cHg7aGVpZ2h0OjQ4cHh9Lnl0U3BlY0F2YXRhclNoYXBlQnV0dG9uTGFyZ2V7d2lkdGg6NTZweDtoZWlnaHQ6NTZweH0ueXRTcGVjQXZhdGFyU2hhcGVCdXR0b25FeHRyYUxhcmdle3dpZHRoOjcycHg7aGVpZ2h0OjcycHh9Lnl0U3BlY0F2YXRhclNoYXBlQnV0dG9uRXh0cmFFeHRyYUxhcmdle3dpZHRoOjEyMHB4O2hlaWdodDoxMjBweH0ueXRTcGVjQXZhdGFyU2hhcGVCdXR0b25HaWFudHt3aWR0aDoxNjBweDtoZWlnaHQ6MTYwcHh9Lnl0U3BlY0F2YXRhclNoYXBlQnV0dG9uUmVzcG9uc2l2ZXt3aWR0aDoxMjhweDtoZWlnaHQ6MTI4cHh9Lnl0U3BlY0F2YXRhclNoYXBlQnV0dG9uSW5DbHVzdGVyU2l6ZTE4e3dpZHRoOjE4cHg7aGVpZ2h0OjE4cHh9Lnl0U3BlY0F2YXRhclNoYXBlQnV0dG9uSW5DbHVzdGVyU2l6ZTIwe3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHh9Lnl0U3BlY0F2YXRhclNoYXBlQnV0dG9uSW5DbHVzdGVyU2l6ZTIye3dpZHRoOjIycHg7aGVpZ2h0OjIycHh9Lnl0U3BlY0F2YXRhclNoYXBlQnV0dG9uSW5DbHVzdGVyU2l6ZTI0e3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHh9Lnl0U3BlY0F2YXRhclNoYXBlSW1hZ2V7Ym9yZGVyLXJhZGl1czo1MCV9Lnl0U3BlY0F2YXRhclNoYXBlQWRzQXBwe2JvcmRlci1yYWRpdXM6MjAlfS55dFNwZWNBdmF0YXJTaGFwZUluc2NyaWJlZFNxdWFyZXt0cmFuc2Zvcm06c2NhbGUoMS40MTQyMTM1NjI0KX0ueXRTcGVjQXZhdGFyU2hhcGVJbWFnZU92ZXJsYXlze292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MH0ueXRTcGVjQXZhdGFyU2hhcGVTdG9yaWVzV2F0Y2hlZHtib3JkZXI6MnB4IHNvbGlkICM5MDkwOTA7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1yYWRpdXM6NTAlfS55dFNwZWNBdmF0YXJTaGFwZVN0b3JpZXNVbndhdGNoZWR7Ym9yZGVyOjJweCBzb2xpZCAjZTEwMDJkO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtib3JkZXItcmFkaXVzOjUwJX0ueXRTcGVjQXZhdGFyU2hhcGVMaXZlUmluZ3tkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyLXJhZGl1czo1MCV9Lnl0U3BlY0F2YXRhclNoYXBlTGl2ZVJpbmc6YWZ0ZXJ7Ym9yZGVyLXJhZGl1czo1MCU7cGFkZGluZzoycHg7cG9zaXRpb246YWJzb2x1dGU7Y29udGVudDoiIjtpbnNldDotNHB4O21hc2s6bGluZWFyLWdyYWRpZW50KCNmZmYgMCAwKSBjb250ZW50LWJveCxsaW5lYXItZ3JhZGllbnQoI2ZmZiAwIDApOy13ZWJraXQtbWFzazpsaW5lYXItZ3JhZGllbnQoI2ZmZiAwIDApIGNvbnRlbnQtYm94LGxpbmVhci1ncmFkaWVudCgjZmZmIDAgMCk7bWFzay1jb21wb3NpdGU6ZXhjbHVkZTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byB0b3AgcmlnaHQsI2UxMDAyZCA2MCUsI2UwMTM3OCA4NSUpfS55dFNwZWNBdmF0YXJTaGFwZU9uU2VsZWN0Qm9yZGVye2JvcmRlcjoxcHggc29saWQgIzBmMGYwZjtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyLXJhZGl1czo1MCV9Lnl0U3BlY0F2YXRhclNoYXBlQmFja2dyb3VuZEJvcmRlcntib3JkZXI6MnB4IHNvbGlkICNmZmY7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1yYWRpdXM6NTAlfS55dFNwZWNBdmF0YXJTaGFwZUJhY2tncm91bmRCb3JkZXJUaGlue2JvcmRlcjoxcHggc29saWQgI2ZmZjtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyLXJhZGl1czo1MCV9Lnl0U3BlY0F2YXRhclNoYXBlV2hpdGVCb3JkZXJ7Ym9yZGVyOjJweCBzb2xpZCAjZmZmO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtib3JkZXItcmFkaXVzOjUwJX0ueXRTcGVjQXZhdGFyU2hhcGVXaGl0ZUJvcmRlclRoaW57Ym9yZGVyLXdpZHRoOjFweH0ueXRTcGVjQXZhdGFyU2hhcGVJc092ZXJsYXkueXRTcGVjQXZhdGFyU2hhcGVCYWNrZ3JvdW5kQm9yZGVyLC55dFNwZWNBdmF0YXJTaGFwZUlzT3ZlcmxheS55dFNwZWNBdmF0YXJTaGFwZUJhY2tncm91bmRCb3JkZXJUaGlue2JvcmRlci1jb2xvcjojZmZmfS55dFNwZWNBdmF0YXJTaGFwZUxpdmVCYWRnZVRleHR7cGFkZGluZzowIDJweDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7dmlzaWJpbGl0eTpoaWRkZW47Y29sb3I6I2ZmZjt6LWluZGV4OjE7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MXJlbTtsaW5lLWhlaWdodDoxLjZyZW07Zm9udC13ZWlnaHQ6NTAwO3doaXRlLXNwYWNlOm5vd3JhcH0ueXRTcGVjQXZhdGFyU2hhcGVMaXZlQmFkZ2VJY29ue21heC13aWR0aDoxNnB4O3BhZGRpbmc6MCAycHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2NvbG9yOiNmZmZ9Lnl0U3BlY0F2YXRhclNoYXBlTGl2ZUJhZGdle2JvcmRlci1yYWRpdXM6NHB4O3RleHQtYWxpZ246Y2VudGVyO2JhY2tncm91bmQtY29sb3I6I2UxMDAyZDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOi00cHh9Lnl0U3BlY0F2YXRhclNoYXBlTGl2ZUJhZGdlU21hbGx7bWF4LXdpZHRoOjMycHg7aGVpZ2h0OjEzcHh9Lnl0U3BlY0F2YXRhclNoYXBlTGl2ZUJhZGdlTWVkaXVte21heC13aWR0aDozNnB4O2hlaWdodDoxNHB4fS55dFNwZWNBdmF0YXJTaGFwZUxpdmVCYWRnZUxhcmdle21heC13aWR0aDo1MnB4O2hlaWdodDoxNHB4fS55dFNwZWNBdmF0YXJTaGFwZUxpdmVCYWRnZUV4dHJhTGFyZ2V7Ym9yZGVyLXJhZGl1czo0cHg7bWF4LXdpZHRoOjY4cHg7aGVpZ2h0OjE2cHh9Lnl0U3BlY0F2YXRhclNoYXBlTGl2ZUJhZGdlRXh0cmFMYXJnZSAueXRTcGVjQXZhdGFyU2hhcGVMaXZlQmFkZ2VJY29ue21heC13aWR0aDoyNHB4O3BhZGRpbmc6MCA0cHh9Lnl0U3BlY0F2YXRhclNoYXBlTGl2ZUJhZGdlRXh0cmFMYXJnZSAueXRTcGVjQXZhdGFyU2hhcGVMaXZlQmFkZ2VUZXh0e3BhZGRpbmc6MCA0cHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo1MDB9Lnl0U3BlY0F2YXRhclNoYXBlTmV3Q29udGVudHtiYWNrZ3JvdW5kLWNvbG9yOiMwNjVmZDR9Lnl0U3BlY0F2YXRhclNoYXBlTGl2ZURvdHtiYWNrZ3JvdW5kLWNvbG9yOiNlMTAwMmR9Lnl0U3BlY0F2YXRhclNoYXBlU3F1YXJle2JvcmRlci1yYWRpdXM6MTJweDtvdmVyZmxvdzpoaWRkZW59Lnl0U3BlY0F2YXRhclNoYXBlQmFkZ2VJY29uQ29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7Y29sb3I6IzAzMDMwM30ueXRTcGVjQXZhdGFyU2hhcGVCYWRnZUljb25Db250YWluZXJUaW55e3JpZ2h0Oi04cHg7dG9wOjA7Ym90dG9tOjA7bWFyZ2luOmF1dG87d2lkdGg6MTZweDtoZWlnaHQ6MTZweH0ueXRTcGVjQXZhdGFyU2hhcGVCYWRnZUljb25Db250YWluZXJUaW55IC55dFNwZWNBdmF0YXJTaGFwZUJhZGdlSWNvbnt3aWR0aDoxMnB4O2hlaWdodDoxMnB4fS55dFNwZWNBdmF0YXJTaGFwZUJhZGdlSWNvbkNvbnRhaW5lckV4dHJhU21hbGx7cmlnaHQ6LThweDt0b3A6MDtib3R0b206MDttYXJnaW46YXV0bzt3aWR0aDoxNnB4O2hlaWdodDoxNnB4fS55dFNwZWNBdmF0YXJTaGFwZUJhZGdlSWNvbkNvbnRhaW5lckV4dHJhU21hbGwgLnl0U3BlY0F2YXRhclNoYXBlQmFkZ2VJY29ue3dpZHRoOjEycHg7aGVpZ2h0OjEycHh9Lnl0U3BlY0F2YXRhclNoYXBlQmFkZ2VJY29uQ29udGFpbmVyU21hbGx7Ym90dG9tOi0ycHg7cmlnaHQ6LTJweDt3aWR0aDoxNnB4O2hlaWdodDoxNnB4fS55dFNwZWNBdmF0YXJTaGFwZUJhZGdlSWNvbkNvbnRhaW5lclNtYWxsIC55dFNwZWNBdmF0YXJTaGFwZUJhZGdlSWNvbnt3aWR0aDoxMnB4O2hlaWdodDoxMnB4fS55dFNwZWNBdmF0YXJTaGFwZUJhZGdlSWNvbkNvbnRhaW5lck1lZGl1bXtib3R0b206LTJweDtyaWdodDotMnB4O3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHh9Lnl0U3BlY0F2YXRhclNoYXBlQmFkZ2VJY29uQ29udGFpbmVyTWVkaXVtIC55dFNwZWNBdmF0YXJTaGFwZUJhZGdlSWNvbnt3aWR0aDoxMnB4O2hlaWdodDoxMnB4fS55dFNwZWNBdmF0YXJTaGFwZUJhZGdlSWNvbkNvbnRhaW5lcjQ4e2JvdHRvbTotMnB4O3JpZ2h0Oi0ycHg7d2lkdGg6MjRweDtoZWlnaHQ6MjRweH0ueXRTcGVjQXZhdGFyU2hhcGVCYWRnZUljb25Db250YWluZXI0OCAueXRTcGVjQXZhdGFyU2hhcGVCYWRnZUljb257d2lkdGg6MjBweDtoZWlnaHQ6MjBweH0ueXRTcGVjQXZhdGFyU2hhcGVCYWRnZUljb25Db250YWluZXJMYXJnZXtib3R0b206LTJweDtyaWdodDotMnB4O3dpZHRoOjI0cHg7aGVpZ2h0OjI0cHh9Lnl0U3BlY0F2YXRhclNoYXBlQmFkZ2VJY29uQ29udGFpbmVyTGFyZ2UgLnl0U3BlY0F2YXRhclNoYXBlQmFkZ2VJY29ue3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHh9Lnl0U3BlY0F2YXRhclNoYXBlQmFkZ2VJY29uQ29udGFpbmVyRXh0cmFMYXJnZXtib3R0b206LTJweDtyaWdodDotMnB4O3dpZHRoOjI4cHg7aGVpZ2h0OjI4cHh9Lnl0U3BlY0F2YXRhclNoYXBlQmFkZ2VJY29uQ29udGFpbmVyRXh0cmFMYXJnZSAueXRTcGVjQXZhdGFyU2hhcGVCYWRnZUljb257d2lkdGg6MjRweDtoZWlnaHQ6MjRweH0ueXRTcGVjQXZhdGFyU2hhcGVCYWRnZUljb25Db250YWluZXJFeHRyYUV4dHJhTGFyZ2V7Ym90dG9tOi00cHg7cmlnaHQ6LTRweDt3aWR0aDo0NHB4O2hlaWdodDo0NHB4fS55dFNwZWNBdmF0YXJTaGFwZUJhZGdlSWNvbkNvbnRhaW5lckV4dHJhRXh0cmFMYXJnZSAueXRTcGVjQXZhdGFyU2hhcGVCYWRnZUljb257d2lkdGg6MzZweDtoZWlnaHQ6MzZweH0ueXRTcGVjQXZhdGFyU2hhcGVCYWRnZUljb25Db250YWluZXJHaWFudHtib3R0b206LTRweDtyaWdodDotNHB4O3dpZHRoOjU2cHg7aGVpZ2h0OjU2cHh9Lnl0U3BlY0F2YXRhclNoYXBlQmFkZ2VJY29uQ29udGFpbmVyR2lhbnQgLnl0U3BlY0F2YXRhclNoYXBlQmFkZ2VJY29ue3dpZHRoOjQ4cHg7aGVpZ2h0OjQ4cHh9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZVRpbnl7bWFyZ2luOjJweDtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHh9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZVRpbnkgLnl0U3BlY0F2YXRhclNoYXBlTGl2ZURvdCwueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplVGlueSAueXRTcGVjQXZhdGFyU2hhcGVOZXdDb250ZW50e3Bvc2l0aW9uOmFic29sdXRlO2JvcmRlcjoycHggc29saWQgI2ZmZjtib3JkZXItcmFkaXVzOjUwJTtib3R0b206LTEuNjY0cHg7cmlnaHQ6LTEuNjY0cHg7d2lkdGg6OHB4O2hlaWdodDo4cHh9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZVRpbnkueXRTcGVjQXZhdGFyU2hhcGVOb01hcmdpbnttYXJnaW46MH0ueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplRXh0cmFTbWFsbHttYXJnaW46MnB4O3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MjRweDtoZWlnaHQ6MjRweH0ueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplRXh0cmFTbWFsbCAueXRTcGVjQXZhdGFyU2hhcGVMaXZlRG90LC55dFNwZWNBdmF0YXJTaGFwZUF2YXRhclNpemVFeHRyYVNtYWxsIC55dFNwZWNBdmF0YXJTaGFwZU5ld0NvbnRlbnR7cG9zaXRpb246YWJzb2x1dGU7Ym9yZGVyOjJweCBzb2xpZCAjZmZmO2JvcmRlci1yYWRpdXM6NTAlO2JvdHRvbTotMS40OTZweDtyaWdodDotMS40OTZweDt3aWR0aDoxMHB4O2hlaWdodDoxMHB4fS55dFNwZWNBdmF0YXJTaGFwZUF2YXRhclNpemVFeHRyYVNtYWxsLnl0U3BlY0F2YXRhclNoYXBlTm9NYXJnaW57bWFyZ2luOjB9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZVNtYWxse21hcmdpbjoycHg7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDozMnB4O2hlaWdodDozMnB4fS55dFNwZWNBdmF0YXJTaGFwZUF2YXRhclNpemVTbWFsbCAueXRTcGVjQXZhdGFyU2hhcGVMaXZlRG90LC55dFNwZWNBdmF0YXJTaGFwZUF2YXRhclNpemVTbWFsbCAueXRTcGVjQXZhdGFyU2hhcGVOZXdDb250ZW50e3Bvc2l0aW9uOmFic29sdXRlO2JvcmRlcjoycHggc29saWQgI2ZmZjtib3JkZXItcmFkaXVzOjUwJTtib3R0b206LS44MjhweDtyaWdodDotLjgyOHB4O3dpZHRoOjExcHg7aGVpZ2h0OjExcHh9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZVNtYWxsLnl0U3BlY0F2YXRhclNoYXBlTm9NYXJnaW57bWFyZ2luOjB9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZU1lZGl1bXttYXJnaW46MnB4O3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MzZweDtoZWlnaHQ6MzZweH0ueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplTWVkaXVtIC55dFNwZWNBdmF0YXJTaGFwZUxpdmVEb3QsLnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZU1lZGl1bSAueXRTcGVjQXZhdGFyU2hhcGVOZXdDb250ZW50e3Bvc2l0aW9uOmFic29sdXRlO2JvcmRlcjoycHggc29saWQgI2ZmZjtib3JkZXItcmFkaXVzOjUwJTtib3R0b206LS43NDRweDtyaWdodDotLjc0NHB4O3dpZHRoOjEycHg7aGVpZ2h0OjEycHh9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZU1lZGl1bS55dFNwZWNBdmF0YXJTaGFwZU5vTWFyZ2lue21hcmdpbjowfS55dFNwZWNBdmF0YXJTaGFwZUF2YXRhclNpemU0OHttYXJnaW46MnB4O3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6NDhweDtoZWlnaHQ6NDhweH0ueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplNDggLnl0U3BlY0F2YXRhclNoYXBlTGl2ZURvdCwueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplNDggLnl0U3BlY0F2YXRhclNoYXBlTmV3Q29udGVudHtwb3NpdGlvbjphYnNvbHV0ZTtib3JkZXI6MnB4IHNvbGlkICNmZmY7Ym9yZGVyLXJhZGl1czo1MCU7Ym90dG9tOi41MDhweDtyaWdodDouNTA4cHg7d2lkdGg6MTNweDtoZWlnaHQ6MTNweH0ueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplNDgueXRTcGVjQXZhdGFyU2hhcGVOb01hcmdpbnttYXJnaW46MH0ueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplTGFyZ2V7bWFyZ2luOjJweDtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjU2cHg7aGVpZ2h0OjU2cHh9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZUxhcmdlIC55dFNwZWNBdmF0YXJTaGFwZUxpdmVEb3QsLnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZUxhcmdlIC55dFNwZWNBdmF0YXJTaGFwZU5ld0NvbnRlbnR7cG9zaXRpb246YWJzb2x1dGU7Ym9yZGVyOjJweCBzb2xpZCAjZmZmO2JvcmRlci1yYWRpdXM6NTAlO2JvdHRvbTouNjc2cHg7cmlnaHQ6LjY3NnB4O3dpZHRoOjE1cHg7aGVpZ2h0OjE1cHh9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZUxhcmdlLnl0U3BlY0F2YXRhclNoYXBlTm9NYXJnaW57bWFyZ2luOjB9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZUV4dHJhTGFyZ2V7bWFyZ2luOjJweDtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjcycHg7aGVpZ2h0OjcycHh9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZUV4dHJhTGFyZ2UgLnl0U3BlY0F2YXRhclNoYXBlTGl2ZURvdCwueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplRXh0cmFMYXJnZSAueXRTcGVjQXZhdGFyU2hhcGVOZXdDb250ZW50e3Bvc2l0aW9uOmFic29sdXRlO2JvcmRlcjoycHggc29saWQgI2ZmZjtib3JkZXItcmFkaXVzOjUwJTtib3R0b206MS41MTJweDtyaWdodDoxLjUxMnB4O3dpZHRoOjE4cHg7aGVpZ2h0OjE4cHh9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZUV4dHJhTGFyZ2UueXRTcGVjQXZhdGFyU2hhcGVOb01hcmdpbnttYXJnaW46MH0ueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplRXh0cmFFeHRyYUxhcmdle21hcmdpbjoycHg7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxMjBweDtoZWlnaHQ6MTIwcHh9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZUV4dHJhRXh0cmFMYXJnZSAueXRTcGVjQXZhdGFyU2hhcGVMaXZlRG90LC55dFNwZWNBdmF0YXJTaGFwZUF2YXRhclNpemVFeHRyYUV4dHJhTGFyZ2UgLnl0U3BlY0F2YXRhclNoYXBlTmV3Q29udGVudHtwb3NpdGlvbjphYnNvbHV0ZTtib3JkZXI6MnB4IHNvbGlkICNmZmY7Ym9yZGVyLXJhZGl1czo1MCU7Ym90dG9tOjguNTJweDtyaWdodDo4LjUycHg7d2lkdGg6MThweDtoZWlnaHQ6MThweH0ueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplRXh0cmFFeHRyYUxhcmdlLnl0U3BlY0F2YXRhclNoYXBlTm9NYXJnaW57bWFyZ2luOjB9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZUdpYW50e21hcmdpbjoycHg7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxNjBweDtoZWlnaHQ6MTYwcHh9Lnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZUdpYW50IC55dFNwZWNBdmF0YXJTaGFwZUxpdmVEb3QsLnl0U3BlY0F2YXRhclNoYXBlQXZhdGFyU2l6ZUdpYW50IC55dFNwZWNBdmF0YXJTaGFwZU5ld0NvbnRlbnR7cG9zaXRpb246YWJzb2x1dGU7Ym9yZGVyOjJweCBzb2xpZCAjZmZmO2JvcmRlci1yYWRpdXM6NTAlO2JvdHRvbToxNC4zNnB4O3JpZ2h0OjE0LjM2cHg7d2lkdGg6MThweDtoZWlnaHQ6MThweH0ueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplR2lhbnQueXRTcGVjQXZhdGFyU2hhcGVOb01hcmdpbnttYXJnaW46MH0ueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplUmVzcG9uc2l2ZXttYXJnaW46MnB4O3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MTI4cHg7aGVpZ2h0OjEyOHB4O21heC13aWR0aDoxNDRweH0ueXRTcGVjQXZhdGFyU2hhcGVBdmF0YXJTaXplUmVzcG9uc2l2ZS55dFNwZWNBdmF0YXJTaGFwZU5vTWFyZ2lue21hcmdpbjowfS55dFNwZWNBdmF0YXJTaGFwZUF2YXRhckluQ2x1c3RlclNpemUxOHt3aWR0aDoxOHB4O2hlaWdodDoxOHB4fS55dFNwZWNBdmF0YXJTaGFwZUF2YXRhckluQ2x1c3RlclNpemUyMHt3aWR0aDoyMHB4O2hlaWdodDoyMHB4fS55dFNwZWNBdmF0YXJTaGFwZUF2YXRhckluQ2x1c3RlclNpemUyMnt3aWR0aDoyMnB4O2hlaWdodDoyMnB4fS55dFNwZWNBdmF0YXJTaGFwZUF2YXRhckluQ2x1c3RlclNpemUyNHt3aWR0aDoyNHB4O2hlaWdodDoyNHB4fS55dGZjWW91dGhCYXNpY1NlY3Rpb25IZWFkZXJWaWV3TW9kZWxIb3N0ey1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7cGFkZGluZzoxMnB4fS55dGZjWW91dGhCYXNpY1NlY3Rpb25IZWFkZXJWaWV3TW9kZWxEaXNhYmxlSG9yaXpvbnRhbFBhZGRpbmd7cGFkZGluZzoxMnB4IDB9Lnl0ZmNZb3V0aEJhc2ljU2VjdGlvbkhlYWRlclZpZXdNb2RlbEJhZGdle2NvbG9yOiM2MDYwNjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MXJlbTtsaW5lLWhlaWdodDoxLjZyZW07Zm9udC13ZWlnaHQ6NDAwfS55dGZjWW91dGhCYXNpY1NlY3Rpb25IZWFkZXJWaWV3TW9kZWxEZXNjcmlwdGlvbntjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRmY1lvdXRoQmFzaWNTZWN0aW9uSGVhZGVyVmlld01vZGVsQ2xpY2thYmxlRGVzY3JpcHRpb257Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo1MDB9Lnl0ZmNZb3V0aEJhc2ljU2VjdGlvbkhlYWRlclZpZXdNb2RlbERldGFpbHN7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21hcmdpbjo0cHh9Lnl0ZmNZb3V0aEJhc2ljU2VjdGlvbkhlYWRlclZpZXdNb2RlbEltYWdle2hlaWdodDo3MnB4O3dpZHRoOjcycHh9Lnl0ZmNZb3V0aEJhc2ljU2VjdGlvbkhlYWRlclZpZXdNb2RlbExlYWRpbmd7ZmxleC1zaHJpbms6MDttYXJnaW46OHB4IDEycHggOHB4IDB9Lnl0ZmNZb3V0aEJhc2ljU2VjdGlvbkhlYWRlclZpZXdNb2RlbE1ldGFkYXRhe2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6NHB4fS55dGZjWW91dGhCYXNpY1NlY3Rpb25IZWFkZXJWaWV3TW9kZWxTdWJ0aXRsZXtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjFyZW07bGluZS1oZWlnaHQ6MS42cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRmY1lvdXRoQmFzaWNTZWN0aW9uSGVhZGVyVmlld01vZGVsVGl0bGV7Y29sb3I6IzAzMDMwMzttYXJnaW46MDtwYWRkaW5nOjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS44cmVtO2xpbmUtaGVpZ2h0OjIuNnJlbTtmb250LXdlaWdodDo3MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDo1LjJyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0ZmNZb3V0aEJhc2ljU2VjdGlvbkhlYWRlclZpZXdNb2RlbFRpdGxley13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0ZmNZb3V0aEJhc2ljU2VjdGlvbkhlYWRlclZpZXdNb2RlbFRpdGxle21heC1oZWlnaHQ6NS4ycmVtfS55dGZjWW91dGhTZWN0aW9uQm9keVZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS55dGZjWW91dGhTZWN0aW9uQm9keVZpZXdNb2RlbEF2YXRhclN0YWNre21hcmdpbjowIGF1dG99Lnl0ZmNZb3V0aFNlY3Rpb25Cb2R5Vmlld01vZGVsSXRlbXtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xKTtib3JkZXItcmFkaXVzOjEycHh9Lnl0ZmNZb3V0aFNlY3Rpb25Cb2R5Vmlld01vZGVsRGVzY3JpcHRpb257Y29sb3I6IzYwNjA2MDtwYWRkaW5nOjEycHggMTJweCAxNnB4O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRDb250aW51YXRpb25JdGVtVmlld01vZGVsSG9zdHtkaXNwbGF5OmJsb2NrfS55dENoYW5uZWxBdHRyaWJ1dGlvblZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9jaztjb2xvcjojZmZmO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCk7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDQwLDQwLDQwLDAuNik7cGFkZGluZzoxNnB4Oy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsMC4xKTtib3JkZXItcmFkaXVzOjEycHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dENoYW5uZWxBdHRyaWJ1dGlvblZpZXdNb2RlbFVwcGVye2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9Lnl0Q2hhbm5lbEF0dHJpYnV0aW9uVmlld01vZGVsQ2hhbm5lbFRpdGxley1tb3otcGFkZGluZy1zdGFydDoxMnB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjEycHh9Lnl0Q2hhbm5lbEF0dHJpYnV0aW9uVmlld01vZGVsQm90dG9te3BhZGRpbmctdG9wOjE2cHh9Lnl0SW5mb1BhbmVsT3ZlcnZpZXdWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O2NvbG9yOiNmZmY7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuNil9Lnl0SW5mb1BhbmVsT3ZlcnZpZXdWaWV3TW9kZWxIb3N0V2Vie2JvcmRlci1yYWRpdXM6MCAwIDEycHggMTJweH0ueXRJbmZvUGFuZWxPdmVydmlld1ZpZXdNb2RlbEhvc3RFeHRyYWN0T3ZlcmxheXttYXgtd2lkdGg6NDgwcHg7Y29sb3I6dmFyKC0tcmVlbC1tZXRhZGF0YS1jb2xvciwjZmZmKTtiYWNrZ3JvdW5kOiNkZWYxZmY7Ym9yZGVyLXJhZGl1czoxMnB4O21hcmdpbjowIDhweH0ueXRJbmZvUGFuZWxPdmVydmlld1ZpZXdNb2RlbEhvc3RCdXR0b257ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O3BhZGRpbmc6MTZweH0ueXRJbmZvUGFuZWxPdmVydmlld1ZpZXdNb2RlbEZvcndhcmRBY3Rpb25JY29ue21hcmdpbi1sZWZ0OmF1dG99Lnl0UmVlbFBsYXllck92ZXJsYXlWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjstbW96LWJveC1hbGlnbjplbmQ7YWxpZ24taXRlbXM6ZmxleC1lbmQ7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJX0ueXRSZWVsUGxheWVyT3ZlcmxheVZpZXdNb2RlbEhvcml6b250YWxDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuOy1tb3otYm94LWFsaWduOmVuZDthbGlnbi1pdGVtczpmbGV4LWVuZDt3aWR0aDoxMDAlfS55dFJlZWxQbGF5ZXJPdmVybGF5Vmlld01vZGVsTWV0YWRhdGFDb250YWluZXJ7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21pbi13aWR0aDowO3dpZHRoOjEwMCU7cG9pbnRlci1ldmVudHM6YXV0bztiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgwZGVnLHJnYmEoMCwwLDAsLjQpLHRyYW5zcGFyZW50KTt6LWluZGV4OjE7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMXB4IDRweCByZ2JhKDAsMCwwLDAuMykpfS55dFJlZWxQbGF5ZXJPdmVybGF5Vmlld01vZGVsTWV0YWRhdGFDb250YWluZXJSb3VuZGVke2JvcmRlci1yYWRpdXM6MCAwIDEycHggMTJweH0ueXRSZWVsUGxheWVyT3ZlcmxheVZpZXdNb2RlbE1ldGFkYXRhQ29udGFpbmVyTWV0YXBhbmVse21pbi13aWR0aDowO3BhZGRpbmc6MCAwIDE2cHggMTZweH0ueXRSZWVsUGxheWVyT3ZlcmxheVZpZXdNb2RlbEFjdGlvbnNDb250YWluZXJ7cG9pbnRlci1ldmVudHM6YXV0bztkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjplbmQ7YWxpZ24taXRlbXM6ZmxleC1lbmQ7aGVpZ2h0OjEwMCU7cGFkZGluZzowIDEycHggOHB4O2ZpbHRlcjpkcm9wLXNoYWRvdygwIDFweCA0cHggcmdiYSgwLDAsMCwwLjMpKX0ueXRSZWVsUGxheWVyT3ZlcmxheVZpZXdNb2RlbEhvc3RNd2ViIC55dFJlZWxQbGF5ZXJPdmVybGF5Vmlld01vZGVsQWN0aW9uc0NvbnRhaW5lcntwYWRkaW5nOjAgNHB4IDE2cHggNHB4O2ZpbHRlcjp1bnNldH0ueXRSZWVsUGxheWVyT3ZlcmxheVZpZXdNb2RlbEhvc3RNd2ViIC55dFJlZWxQbGF5ZXJPdmVybGF5Vmlld01vZGVsTWV0YWRhdGFDb250YWluZXJ7YmFja2dyb3VuZDpub25lfS55dFJlZWxQbGF5ZXJPdmVybGF5Vmlld01vZGVsSG9zdEhpZGV7dmlzaWJpbGl0eTpoaWRkZW59Lnl0UmVlbFBsYXllck92ZXJsYXlWaWV3TW9kZWxIb3N0RXh0cmFjdE92ZXJsYXkgLnl0UmVlbFBsYXllck92ZXJsYXlWaWV3TW9kZWxNZXRhZGF0YUNvbnRhaW5lcnt3aWR0aDpjYWxjKCgxMDAlIC0gbWF4KHZhcigtLXl0ZC1zaG9ydHMtcGxheWVyLXdpZHRoKSwgMzE1cHgpKS8yKTttYXJnaW4tcmlnaHQ6bWF4KHZhcigtLXl0ZC1zaG9ydHMtcGxheWVyLXdpZHRoKSwzMTVweCk7YmFja2dyb3VuZC1pbWFnZTpub25lO2ZpbHRlcjp1bnNldDtib3JkZXItcmFkaXVzOjB9Lnl0UmVlbFBsYXllck92ZXJsYXlWaWV3TW9kZWxIb3N0RXh0cmFjdE92ZXJsYXkgLnl0UmVlbFBsYXllck92ZXJsYXlWaWV3TW9kZWxBY3Rpb25zQ29udGFpbmVyey1tb3otYm94LWZsZXg6MTtmbGV4LWdyb3c6MX0ueXRSZWVsUGxheWVyT3ZlcmxheVZpZXdNb2RlbEhvc3RFeHRyYWN0QWN0aW9uQmFyIC55dFJlZWxQbGF5ZXJPdmVybGF5Vmlld01vZGVsTWV0YWRhdGFDb250YWluZXJNZXRhcGFuZWx7cGFkZGluZy1yaWdodDoxNnB4fS55dFJlZWxQbGF5ZXJPdmVybGF5Vmlld01vZGVsSG9zdEV4dHJhY3RBY3Rpb25CYXIgLnl0UmVlbFBsYXllck92ZXJsYXlWaWV3TW9kZWxBY3Rpb25zQ29udGFpbmVye3BhZGRpbmctYm90dG9tOjA7ZmlsdGVyOnVuc2V0fS55dFJlZWxQbGF5ZXJPdmVybGF5Vmlld01vZGVsSG9zdDpub3QoLnl0UmVlbFBsYXllck92ZXJsYXlWaWV3TW9kZWxIb3N0RXh0cmFjdE92ZXJsYXkpW3Nob3ctc2NydWJiZXJdIC55dFJlZWxQbGF5ZXJPdmVybGF5Vmlld01vZGVsTWV0YWRhdGFDb250YWluZXJ7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAuNXN9Lnl0ZnpGYW56b25lU2NoZWR1bGVkSW5mb1ZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7cGFkZGluZzozMnB4IDEycHggMjBweH0ueXRmekZhbnpvbmVTY2hlZHVsZWRJbmZvVmlld01vZGVsQXZhdGFye21hcmdpbi1ib3R0b206OHB4fS55dGZ6RmFuem9uZVNjaGVkdWxlZEluZm9WaWV3TW9kZWxUaXRsZXt0ZXh0LWFsaWduOmNlbnRlcjttYXJnaW4tYm90dG9tOjEwcHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MnJlbTtsaW5lLWhlaWdodDoyLjhyZW07Zm9udC13ZWlnaHQ6NzAwfS55dGZ6RmFuem9uZVNjaGVkdWxlZEluZm9WaWV3TW9kZWxEZXNjcmlwdGlvbntjb2xvcjojNjA2MDYwO3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS5pbnRlcnN0aXRpYWxWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1hbGlnbjpzdGFydDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2JvcmRlci1yYWRpdXM6aW5oZXJpdH0uaW50ZXJzdGl0aWFsVmlld01vZGVsRXJyb3JTY3JlZW5SZWRlc2lnbkRpc2FibGVke3BhZGRpbmc6MTZweH1AbWVkaWEgKG1heC13aWR0aDo1MjcuOXB4KXsuaW50ZXJzdGl0aWFsVmlld01vZGVsRXJyb3JTY3JlZW5SZWRlc2lnbkRpc2FibGVke292ZXJmbG93LXk6c2Nyb2xsfX0uaW50ZXJzdGl0aWFsVmlld01vZGVsRXJyb3JTY3JlZW5SZWRlc2lnbkVuYWJsZWR7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtjb250YWluZXItdHlwZTpzaXplfS5pbnRlcnN0aXRpYWxWaWV3TW9kZWxNb2RlbENvbnRhaW5lcntwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO21pbi1oZWlnaHQ6MDtvdmVyZmxvdzpoaWRkZW47YmFja2dyb3VuZC1jb2xvcjojMGYwZjBmOy1tb3otcGFkZGluZy1zdGFydDoxMiU7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MTIlOy1tb3otYm94LXNpemluZzpib3JkZXItYm94O2JveC1zaXppbmc6Ym9yZGVyLWJveDtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtib3gtc2hhZG93OjAgMCAwIDFweCByZ2JhKDAsMCwwLDAuMSk7Ym9yZGVyLXJhZGl1czppbmhlcml0fS5pbnRlcnN0aXRpYWxWaWV3TW9kZWxNb2RlbENvbnRhaW5lcjpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1jb2xvcjojMGYwZjBmO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDkwZGVnLHRyYW5zcGFyZW50IDAsdHJhbnNwYXJlbnQgMzUlLHJnYmEoMTcwLDksMTcwLC4yKSAwLHJnYmEoMTY5LDAsMjU1LC4yKSA4NCUscmdiYSgyNTQsNzAsMTYwLC4yKSk7bWFzay1pbWFnZTpyYWRpYWwtZ3JhZGllbnQoMjclIDU4JSBhdCA3NyUgNTAlLCMwZjBmMGYgMCx0cmFuc3BhcmVudCAxMDAlKX1bZGlyPXJ0bF0gLmludGVyc3RpdGlhbFZpZXdNb2RlbE1vZGVsQ29udGFpbmVyOmJlZm9yZXttYXNrLWltYWdlOnJhZGlhbC1ncmFkaWVudCgyNyUgNTglIGF0IDIzJSA1MCUsIzBmMGYwZiAwLHRyYW5zcGFyZW50IDEwMCUpfS5pbnRlcnN0aXRpYWxWaWV3TW9kZWxNb2RlbENvbnRhaW5lcjpiZWZvcmV7bWFzay1yZXBlYXQ6bm8tcmVwZWF0fS5pbnRlcnN0aXRpYWxWaWV3TW9kZWxGbGV4SXRlbXt3aWR0aDoxMDAlO21hcmdpbjo4cHggMH0uaW50ZXJzdGl0aWFsVmlld01vZGVsTG9nb0NvbnRhaW5lcntwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxNSU7bWluLXdpZHRoOjk2cHh9LmludGVyc3RpdGlhbFZpZXdNb2RlbExvZ29Db250YWluZXI6YmVmb3Jle2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztwYWRkaW5nLXRvcDoyMi43MjclfS5pbnRlcnN0aXRpYWxWaWV3TW9kZWxMb2dvSW1hZ2V7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7aW5zZXQtaW5saW5lLXN0YXJ0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvdmVyZmxvdzp2aXNpYmxlfUBtZWRpYSAoZm9yY2VkLWNvbG9yczphY3RpdmUpey5pbnRlcnN0aXRpYWxWaWV3TW9kZWxMb2dvSW1hZ2V7Zm9yY2VkLWNvbG9yLWFkanVzdDpub25lOy1tcy1oaWdoLWNvbnRyYXN0LWFkanVzdDpub25lfX1AbWVkaWEgKGZvcmNlZC1jb2xvcnM6YWN0aXZlKSBhbmQgKHByZWZlcnMtY29sb3Itc2NoZW1lOmxpZ2h0KXsuaW50ZXJzdGl0aWFsVmlld01vZGVsTG9nb0ltYWdle2ZpbHRlcjppbnZlcnQoMSkgaHVlLXJvdGF0ZSgxODBkZWcpfX0uaW50ZXJzdGl0aWFsVmlld01vZGVsQnV0dG9uQ29udGFpbmVye21heC13aWR0aDo0MyU7bWFyZ2luLXRvcDo4cHg7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7ZmxleC13cmFwOndyYXB9LmludGVyc3RpdGlhbFZpZXdNb2RlbEJ1dHRvbkl0ZW17d2lkdGg6YXV0b30uaW50ZXJzdGl0aWFsVmlld01vZGVsQnV0dG9uSXRlbTpub3QoOmxhc3QtY2hpbGQpey1tb3otbWFyZ2luLWVuZDo4cHg7bWFyZ2luLWlubGluZS1lbmQ6OHB4O21hcmdpbi1ib3R0b206OHB4fUBtZWRpYSAoZm9yY2VkLWNvbG9yczphY3RpdmUpey5pbnRlcnN0aXRpYWxWaWV3TW9kZWxCdXR0b25JdGVtIC55dFNwZWNCdXR0b25TaGFwZU5leHRIb3N0e2JvcmRlcjoxcHggc29saWQgY3VycmVudENvbG9yfX0uaW50ZXJzdGl0aWFsVmlld01vZGVsUHJpbWFyeUJ1dHRvbkl0ZW0sLmludGVyc3RpdGlhbFZpZXdNb2RlbFNlY29uZGFyeUJ1dHRvbkl0ZW17bWF4LXdpZHRoOjEwMCV9LmludGVyc3RpdGlhbFZpZXdNb2RlbFRleHRUaXRsZXtjb2xvcjojZmZmO21heC13aWR0aDo0MyU7cG9zaXRpb246cmVsYXRpdmU7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6Mi44cmVtO2xpbmUtaGVpZ2h0OjMuOHJlbTtmb250LXdlaWdodDo3MDB9QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7LmludGVyc3RpdGlhbFZpZXdNb2RlbFRleHRUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyLjRyZW07bGluZS1oZWlnaHQ6My4ycmVtO2ZvbnQtd2VpZ2h0OjcwMH19LmludGVyc3RpdGlhbFZpZXdNb2RlbFRleHREZXNjcmlwdGlvbntjb2xvcjojNjA2MDYwO21heC13aWR0aDo0MyU7cG9zaXRpb246cmVsYXRpdmU7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo0MDB9LmludGVyc3RpdGlhbFZpZXdNb2RlbEludGVyc3RpdGlhbEljb257dGV4dC1hbGlnbjpjZW50ZXJ9QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7LmludGVyc3RpdGlhbFZpZXdNb2RlbEljb25JbWFnZXt3aWR0aDoyNSU7b2JqZWN0LWZpdDpjb250YWlufX0uaW50ZXJzdGl0aWFsVmlld01vZGVsSW50ZXJzdGl0aWFsVGl0bGV7Y29sb3I6I2ZmZjtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyLjRyZW07bGluZS1oZWlnaHQ6My4ycmVtO2ZvbnQtd2VpZ2h0OjcwMH1AbWVkaWEgKG1heC13aWR0aDo1MjcuOXB4KXsuaW50ZXJzdGl0aWFsVmlld01vZGVsSW50ZXJzdGl0aWFsVGl0bGV7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MnJlbTtsaW5lLWhlaWdodDoyLjhyZW07Zm9udC13ZWlnaHQ6NzAwfX0uaW50ZXJzdGl0aWFsVmlld01vZGVsSW50ZXJzdGl0aWFsRGVzY3JpcHRpb257Y29sb3I6I2ZmZjtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDB9LmludGVyc3RpdGlhbFZpZXdNb2RlbElsbHVzdHJhdGlvbkNvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO2luc2V0LWlubGluZS1lbmQ6MTIlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3dpZHRoOjMwJTttYXgtd2lkdGg6NDAwcHh9LmludGVyc3RpdGlhbFZpZXdNb2RlbElsbHVzdHJhdGlvbkltYWdle3dpZHRoOjEwMCU7aGVpZ2h0OmF1dG99QG1lZGlhIChmb3JjZWQtY29sb3JzOmFjdGl2ZSl7LmludGVyc3RpdGlhbFZpZXdNb2RlbElsbHVzdHJhdGlvbkltYWdle2ZvcmNlZC1jb2xvci1hZGp1c3Q6bm9uZTstbXMtaGlnaC1jb250cmFzdC1hZGp1c3Q6bm9uZX19QG1lZGlhIChmb3JjZWQtY29sb3JzOmFjdGl2ZSkgYW5kIChwcmVmZXJzLWNvbG9yLXNjaGVtZTpsaWdodCl7LmludGVyc3RpdGlhbFZpZXdNb2RlbElsbHVzdHJhdGlvbkltYWdle2ZpbHRlcjppbnZlcnQoMSkgaHVlLXJvdGF0ZSgxODBkZWcpfX0uaW50ZXJzdGl0aWFsVmlld01vZGVsRXJyb3JDb2RlQ29udGFpbmVye3Bvc2l0aW9uOmFic29sdXRlO3BhZGRpbmc6NHB4IDEycHg7Ym90dG9tOjhweDtpbnNldC1pbmxpbmUtZW5kOjhweDtib3JkZXItcmFkaXVzOjEycHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LDAuMSk7Y29sb3I6I2ZmZjtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDB9LmludGVyc3RpdGlhbFZpZXdNb2RlbExheW91dFBvcnRyYWl0IC5pbnRlcnN0aXRpYWxWaWV3TW9kZWxNb2RlbENvbnRhaW5lcnstbW96LWJveC1wYWNrOmVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7cGFkZGluZy1ib3R0b206bWF4KDEyJSw0MnB4KTtwYWRkaW5nLWlubGluZToxNnB4fS5pbnRlcnN0aXRpYWxWaWV3TW9kZWxMYXlvdXRQb3J0cmFpdCAuaW50ZXJzdGl0aWFsVmlld01vZGVsTG9nb0NvbnRhaW5lcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTZweDtpbnNldC1pbmxpbmUtc3RhcnQ6MTZweH0uaW50ZXJzdGl0aWFsVmlld01vZGVsTGF5b3V0UG9ydHJhaXQgLmludGVyc3RpdGlhbFZpZXdNb2RlbEJ1dHRvbkNvbnRhaW5lcnttYXgtd2lkdGg6MTAwJTtmbGV4LXdyYXA6d3JhcH0uaW50ZXJzdGl0aWFsVmlld01vZGVsTGF5b3V0UG9ydHJhaXQgLmludGVyc3RpdGlhbFZpZXdNb2RlbEJ1dHRvbkl0ZW06bm90KDpsYXN0LWNoaWxkKXstbW96LW1hcmdpbi1lbmQ6MDttYXJnaW4taW5saW5lLWVuZDowO21hcmdpbi1ibG9jay1lbmQ6MTZweH0uaW50ZXJzdGl0aWFsVmlld01vZGVsTGF5b3V0UG9ydHJhaXQgLmludGVyc3RpdGlhbFZpZXdNb2RlbFByaW1hcnlCdXR0b25JdGVtLC5pbnRlcnN0aXRpYWxWaWV3TW9kZWxMYXlvdXRQb3J0cmFpdCAuaW50ZXJzdGl0aWFsVmlld01vZGVsU2Vjb25kYXJ5QnV0dG9uSXRlbXt3aWR0aDoxMDAlO21heC13aWR0aDoxMDAlfS5pbnRlcnN0aXRpYWxWaWV3TW9kZWxMYXlvdXRQb3J0cmFpdCAuaW50ZXJzdGl0aWFsVmlld01vZGVsVGV4dERlc2NyaXB0aW9uLC5pbnRlcnN0aXRpYWxWaWV3TW9kZWxMYXlvdXRQb3J0cmFpdCAuaW50ZXJzdGl0aWFsVmlld01vZGVsVGV4dFRpdGxle21heC13aWR0aDoxMDAlfS5pbnRlcnN0aXRpYWxWaWV3TW9kZWxMYXlvdXRQb3J0cmFpdCAuaW50ZXJzdGl0aWFsVmlld01vZGVsSWxsdXN0cmF0aW9uQ29udGFpbmVye2Rpc3BsYXk6bm9uZX0uaW50ZXJzdGl0aWFsVmlld01vZGVsTGF5b3V0U21hbGwgLmludGVyc3RpdGlhbFZpZXdNb2RlbE1vZGVsQ29udGFpbmVye3BhZGRpbmc6MTZweH0uaW50ZXJzdGl0aWFsVmlld01vZGVsTGF5b3V0U21hbGwgLmludGVyc3RpdGlhbFZpZXdNb2RlbEJ1dHRvbkNvbnRhaW5lcnttYXgtd2lkdGg6MTAwJX0uaW50ZXJzdGl0aWFsVmlld01vZGVsTGF5b3V0U21hbGwgLmludGVyc3RpdGlhbFZpZXdNb2RlbFRleHRUaXRsZXttYXgtd2lkdGg6MTAwJTtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToyLjRyZW07bGluZS1oZWlnaHQ6My4ycmVtO2ZvbnQtd2VpZ2h0OjcwMH1AbWVkaWEgKG1heC13aWR0aDo1MjcuOXB4KXsuaW50ZXJzdGl0aWFsVmlld01vZGVsTGF5b3V0U21hbGwgLmludGVyc3RpdGlhbFZpZXdNb2RlbFRleHRUaXRsZXtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToycmVtO2xpbmUtaGVpZ2h0OjIuOHJlbTtmb250LXdlaWdodDo3MDB9fS5pbnRlcnN0aXRpYWxWaWV3TW9kZWxMYXlvdXRTbWFsbCAuaW50ZXJzdGl0aWFsVmlld01vZGVsRXJyb3JDb2RlQ29udGFpbmVyLC5pbnRlcnN0aXRpYWxWaWV3TW9kZWxMYXlvdXRTbWFsbCAuaW50ZXJzdGl0aWFsVmlld01vZGVsSWxsdXN0cmF0aW9uQ29udGFpbmVyLC5pbnRlcnN0aXRpYWxWaWV3TW9kZWxMYXlvdXRTbWFsbCAuaW50ZXJzdGl0aWFsVmlld01vZGVsU2Vjb25kYXJ5QnV0dG9uSXRlbSwuaW50ZXJzdGl0aWFsVmlld01vZGVsTGF5b3V0U21hbGwgLmludGVyc3RpdGlhbFZpZXdNb2RlbFRleHREZXNjcmlwdGlvbntkaXNwbGF5Om5vbmV9LmludGVyc3RpdGlhbFZpZXdNb2RlbExheW91dEZ1bGxXaWR0aCAuaW50ZXJzdGl0aWFsVmlld01vZGVsQnV0dG9uQ29udGFpbmVye21heC13aWR0aDo3NiV9LmludGVyc3RpdGlhbFZpZXdNb2RlbExheW91dEZ1bGxXaWR0aCAuaW50ZXJzdGl0aWFsVmlld01vZGVsVGV4dFRpdGxle21heC13aWR0aDo3NiU7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6Mi40cmVtO2xpbmUtaGVpZ2h0OjMuMnJlbTtmb250LXdlaWdodDo3MDB9QG1lZGlhIChtYXgtd2lkdGg6NTI3LjlweCl7LmludGVyc3RpdGlhbFZpZXdNb2RlbExheW91dEZ1bGxXaWR0aCAuaW50ZXJzdGl0aWFsVmlld01vZGVsVGV4dFRpdGxle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjJyZW07bGluZS1oZWlnaHQ6Mi44cmVtO2ZvbnQtd2VpZ2h0OjcwMH19LmludGVyc3RpdGlhbFZpZXdNb2RlbExheW91dEZ1bGxXaWR0aCAuaW50ZXJzdGl0aWFsVmlld01vZGVsVGV4dERlc2NyaXB0aW9ue21heC13aWR0aDo3NiU7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS5pbnRlcnN0aXRpYWxWaWV3TW9kZWxIaWRlRXJyb3JDb2RlIC5pbnRlcnN0aXRpYWxWaWV3TW9kZWxFcnJvckNvZGVDb250YWluZXIsLmludGVyc3RpdGlhbFZpZXdNb2RlbExheW91dEZ1bGxXaWR0aCAuaW50ZXJzdGl0aWFsVmlld01vZGVsSWxsdXN0cmF0aW9uQ29udGFpbmVye2Rpc3BsYXk6bm9uZX0ueXR3UGxheWVyRGlzY2xvc3VyZVZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXh9Lnl0d1BsYXllckRpc2Nsb3N1cmVWaWV3TW9kZWxFbmRwb2ludHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO21heC13aWR0aDo1MTZweDtjb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpO2JvcmRlci1yYWRpdXM6NHB4O2JvcmRlci1sZWZ0OjRweCBzb2xpZCAjM2VhNmZmO3BhZGRpbmc6NnB4IDAgNnB4IDZweDt0ZXh0LWRlY29yYXRpb246bm9uZX0ueXR3UGxheWVyRGlzY2xvc3VyZVZpZXdNb2RlbEltYWdley1tb3otYm94LWZsZXg6MDtmbGV4Om5vbmU7bWFyZ2luOjRweDtoZWlnaHQ6NDhweDt3aWR0aDo0OHB4fS55dHdQbGF5ZXJEaXNjbG9zdXJlVmlld01vZGVsRXh0cmFjdE92ZXJsYXkgLnl0d1BsYXllckRpc2Nsb3N1cmVWaWV3TW9kZWxFbmRwb2ludHtjb2xvcjp2YXIoLS1yZWVsLW1ldGFkYXRhLWNvbG9yKTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4wNSl9Lnl0d1BsYXllckRpc2Nsb3N1cmVWaWV3TW9kZWxUaXRsZXttYXJnaW46MCA0cHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwfS55dHdQbGF5ZXJEaXNjbG9zdXJlVmlld01vZGVsVGV4dHttYXJnaW46MCA0cHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS4ycmVtO2xpbmUtaGVpZ2h0OjEuOHJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDozLjZyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0d1BsYXllckRpc2Nsb3N1cmVWaWV3TW9kZWxUZXh0ey13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0d1BsYXllckRpc2Nsb3N1cmVWaWV3TW9kZWxUZXh0e21heC1oZWlnaHQ6My42cmVtfS55dHdQbGF5ZXJEaXNjbG9zdXJlVmlld01vZGVsRGl2aWRlcnttYXJnaW46MnB4IDRweDtib3JkZXItdG9wOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMyl9Lnl0Q29sbGFib3JhdGl2ZVBsYXlsaXN0SW52aXRlTWVzc2FnZVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRDb2xsYWJvcmF0aXZlUGxheWxpc3RJbnZpdGVNZXNzYWdlVmlld01vZGVsQWNjb3VudFNlY3Rpb25IZWFkZXJUZXh0e2NvbG9yOiMwMzAzMDM7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NTAwfS55dENvbGxhYm9yYXRpdmVQbGF5bGlzdEludml0ZU1lc3NhZ2VWaWV3TW9kZWxBY2NvdW50V3JhcHBlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDtwYWRkaW5nOjhweCAwOy1tb3otYm94LWFsaWduOnN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjEycHg7YWxpZ24tc2VsZjpzdHJldGNofS55dENvbGxhYm9yYXRpdmVQbGF5bGlzdEludml0ZU1lc3NhZ2VWaWV3TW9kZWxBY2NvdW50VGV4dHtjb2xvcjojMDMwMzAzO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOy1tb3otYm94LWFsaWduOnN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7LW1vei1ib3gtZmxleDoxO2ZsZXg6MSAwIDA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dENvbGxhYm9yYXRpdmVQbGF5bGlzdEludml0ZU1lc3NhZ2VWaWV3TW9kZWxIYW5kbGV7Y29sb3I6IzYwNjA2MDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMH0ueXRDb2xsYWJvcmF0aXZlUGxheWxpc3RJbnZpdGVNZXNzYWdlVmlld01vZGVsSW52aXRlTWVzc2FnZVdyYXBwZXJ7Y29sb3I6IzAzMDMwMzttYXJnaW4tYm90dG9tOjEycHg7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS40cmVtO2xpbmUtaGVpZ2h0OjJyZW07Zm9udC13ZWlnaHQ6NDAwfS55dENvbGxhYm9yYXRpdmVQbGF5bGlzdEludml0ZU1lc3NhZ2VWaWV3TW9kZWxUZXJtc09mU2VydmljZXtjb2xvcjojNjA2MDYwO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFJlZWxDYXJvdXNlbFZpZXdNb2RlbEhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50Omhvcml6b250YWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpyb3c7Z2FwOjRweH0ueXRSZWVsQ2Fyb3VzZWxWaWV3TW9kZWxIb3N0QnV0dG9ue21pbi13aWR0aDowfS55dFJlZWxDYXJvdXNlbFZpZXdNb2RlbEhvc3RCdXR0b24gYzMtaWNvbnt3aWR0aDppbmhlcml0O2hlaWdodDppbmhlcml0fS55dFJlZWxDYXJvdXNlbFZpZXdNb2RlbEhvc3RCdXR0b25NYXhXaWR0aHttYXgtd2lkdGg6NTAlfS55dFJlZWxNdWx0aUZvcm1hdExpbmtWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7aGVpZ2h0OjMwcHh9Lnl0UmVlbE11bHRpRm9ybWF0TGlua1ZpZXdNb2RlbEhvc3RUYWxse2hlaWdodDozNnB4fUBtZWRpYSAobWF4LXdpZHRoOjI5OS45cHgpey55dFJlZWxNdWx0aUZvcm1hdExpbmtWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6bm9uZX19Lnl0UmVlbE11bHRpRm9ybWF0TGlua1ZpZXdNb2RlbEVuZHBvaW50e3Bvc2l0aW9uOnJlbGF0aXZlO21hcmdpbi10b3A6MDtkaXNwbGF5OmlubGluZS1ibG9jaztjdXJzb3I6cG9pbnRlcjt0ZXh0LWRlY29yYXRpb246bm9uZTtjb2xvcjp2YXIoLS1yZWVsLW1ldGFkYXRhLWNvbG9yLCNmZmYpfS55dFJlZWxNdWx0aUZvcm1hdExpbmtWaWV3TW9kZWxMaW5re21hcmdpbi1yaWdodDo0OHB4O21hcmdpbi1ib3R0b206MDtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjRyZW07bGluZS1oZWlnaHQ6MnJlbTtmb250LXdlaWdodDo0MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoycmVtO21heC1oZWlnaHQ6MnJlbX0ueXRSZWVsTXVsdGlGb3JtYXRMaW5rVmlld01vZGVsSWNvbnttYXJnaW4tcmlnaHQ6NnB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZTtoZWlnaHQ6MTZweDt3aWR0aDoxNnB4fS55dFJlZWxNdWx0aUZvcm1hdExpbmtWaWV3TW9kZWxUaXRsZXt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9Lnl0UmVlbE11bHRpRm9ybWF0TGlua1ZpZXdNb2RlbEhvc3RMYXJnZSwueXRSZWVsTXVsdGlGb3JtYXRMaW5rVmlld01vZGVsSG9zdExhcmdlIC55dFJlZWxNdWx0aUZvcm1hdExpbmtWaWV3TW9kZWxUYWxse2hlaWdodDp1bnNldH0ueXRSZWVsTXVsdGlGb3JtYXRMaW5rVmlld01vZGVsSG9zdExhcmdlIC55dFJlZWxNdWx0aUZvcm1hdExpbmtWaWV3TW9kZWxJY29ue3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHg7bWFyZ2luLXJpZ2h0OjhweH0ueXRTaG9ydHNEaXNjbG9zdXJlc1ZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9ja30ueXRTaG9ydHNEaXNjbG9zdXJlc1ZpZXdNb2RlbFNob3J0c0Rpc2Nsb3N1cmVzVGV4dHtjb2xvcjp2YXIoLS1yZWVsLW1ldGFkYXRhLWNvbG9yLCNmZmYpO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dFNob3J0c1N1Z2dlc3RlZEFjdGlvblZpZXdNb2RlbFN0YXRpY0hvc3R7ZGlzcGxheTotbW96LWlubGluZS1ib3g7ZGlzcGxheTppbmxpbmUtZmxleDtwb3NpdGlvbjpyZWxhdGl2ZTstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1yYWRpdXM6MThweH1AbWVkaWEgKG1heC13aWR0aDoyOTkuOXB4KXsueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxTdGF0aWNIb3N0e2Rpc3BsYXk6bm9uZX19Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsU3RhdGljSG9zdDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4zKX0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxTdGF0aWNIb3N0Q29udGFpbmVye2Rpc3BsYXk6LW1vei1pbmxpbmUtYm94O2Rpc3BsYXk6aW5saW5lLWZsZXg7cG9zaXRpb246cmVsYXRpdmU7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtwYWRkaW5nOjAgMTZweDtoZWlnaHQ6MzZweDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjE4cHg7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuNik7Y29sb3I6I2ZmZjtjdXJzb3I6cG9pbnRlcn0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxTdGF0aWNIb3N0VGV4dFNlY3Rpb257ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LWFsaWduOnN0YXJ0O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7dGV4dC1hbGlnbjpsZWZ0O2ZsZXgtc2hyaW5rOjE7LW1vei1wYWRkaW5nLXN0YXJ0OjhweDtwYWRkaW5nLWlubGluZS1zdGFydDo4cHh9Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsU3RhdGljSG9zdFByaW1hcnlUZXh0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4O2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjRyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsU3RhdGljSG9zdFByaW1hcnlUZXh0ey13ZWJraXQtbGluZS1jbGFtcDoyO21heC1oZWlnaHQ6bm9uZX19Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsU3RhdGljSG9zdFByaW1hcnlUZXh0e21heC1oZWlnaHQ6NHJlbX0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxTdGF0aWNIb3N0TGVhZGluZ1NlY3Rpb257bWF4LXdpZHRoOjEwMCU7bWFyZ2luLXJpZ2h0OjA7bWFyZ2luLWxlZnQ6MH0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxTdGF0aWNIb3N0TGVhZGluZ0ltYWdle21heC13aWR0aDoxMDAlO21heC1oZWlnaHQ6MTAwJTstbW96LXBhZGRpbmctc3RhcnQ6NHB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjRweDtoZWlnaHQ6MjRweDt3aWR0aDoyNHB4fS55dFNob3J0c1N1Z2dlc3RlZEFjdGlvblZpZXdNb2RlbFN0YXRpY0hvc3RMZWFkaW5nSWNvbnttYXgtd2lkdGg6MTAwJTttYXgtaGVpZ2h0OjEwMCU7LW1vei1wYWRkaW5nLXN0YXJ0OjhweDtwYWRkaW5nLWlubGluZS1zdGFydDo4cHg7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxEeW5hbWljSG9zdHtkaXNwbGF5Oi1tb3otaW5saW5lLWJveDtkaXNwbGF5OmlubGluZS1mbGV4O3Bvc2l0aW9uOnJlbGF0aXZlOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXJ9QG1lZGlhIChtYXgtd2lkdGg6Mjk5LjlweCl7Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRHluYW1pY0hvc3R7ZGlzcGxheTpub25lfX0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxEeW5hbWljSG9zdEZpeGVkSGVpZ2h0QXV0b3toZWlnaHQ6YXV0b30ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxEeW5hbWljSG9zdEhpZGRlbntvcGFjaXR5OjB9Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRHluYW1pY0hvc3RTaG93bnthbmltYXRpb246ZmFkZUluIC41cyBlYXNlLWluLW91dDtvcGFjaXR5OjF9Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRHluYW1pY0hvc3RVc2VSb3VuZEJvcmRlcntib3JkZXItcmFkaXVzOjI4cHh9Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRHluYW1pY0hvc3RSb3VuZEFsbENvcm5lcnN7Ym9yZGVyLXJhZGl1czo4cHh9Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRHluYW1pY0hvc3RPbmx5Um91bmRMZWFkaW5nQ29ybmVyc3tib3JkZXItdG9wLWxlZnQtcmFkaXVzOjhweDtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjhweH0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxEeW5hbWljSG9zdENvbnRhaW5lcntkaXNwbGF5Oi1tb3otaW5saW5lLWJveDtkaXNwbGF5OmlubGluZS1mbGV4O3Bvc2l0aW9uOnJlbGF0aXZlOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyOm5vbmU7bWF4LWhlaWdodDo1MnB4O3BhZGRpbmc6OHB4O2JhY2tncm91bmQtY29sb3I6cmdiYSg0MCw0MCw0MCwwLjYpO2NvbG9yOnZhcigtLXJlZWwtbWV0YWRhdGEtY29sb3IsI2ZmZik7Y3Vyc29yOnBvaW50ZXJ9Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRHluYW1pY0hvc3RDb250YWluZXI6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuNik7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fS55dFNob3J0c1N1Z2dlc3RlZEFjdGlvblZpZXdNb2RlbER5bmFtaWNIb3N0Q29sbGFwc2VkTGVhZGluZ1NlY3Rpb257Ym9yZGVyLXJhZGl1czo0cHg7ZmxleC1zaHJpbms6MDttYXJnaW4tcmlnaHQ6MH0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxEeW5hbWljSG9zdEV4cGFuZGVkTGVhZGluZ1NlY3Rpb257bWFyZ2luLXJpZ2h0OjB9Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRHluYW1pY0hvc3RDb2xsYXBzZWRMZWFkaW5nSW1hZ2V7bWF4LXdpZHRoOjEwMCU7bWF4LWhlaWdodDoxMDAlO2JvcmRlci1yYWRpdXM6NHB4Oy1tb3otcGFkZGluZy1zdGFydDo0cHg7cGFkZGluZy1pbmxpbmUtc3RhcnQ6NHB4O2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRHluYW1pY0hvc3RFeHBhbmRlZExlYWRpbmdJbWFnZXttYXgtd2lkdGg6MTAwJTttYXgtaGVpZ2h0OjEwMCU7Ym9yZGVyLXJhZGl1czo0cHg7d2lkdGg6MjhweDtoZWlnaHQ6MjhweDstbW96LXBhZGRpbmctc3RhcnQ6OHB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjhweH0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxEeW5hbWljSG9zdENvbGxhcHNlZExlYWRpbmdJY29uey1tb3otcGFkZGluZy1zdGFydDo4cHg7cGFkZGluZy1pbmxpbmUtc3RhcnQ6OHB4O2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRHluYW1pY0hvc3RFeHBhbmRlZExlYWRpbmdJY29ue3BhZGRpbmc6NHB4O2JvcmRlci1yYWRpdXM6NHB4Oy1tb3otcGFkZGluZy1zdGFydDo4cHg7cGFkZGluZy1pbmxpbmUtc3RhcnQ6OHB4Oy1tb3otYm94LXNpemluZzpjb250ZW50LWJveDtib3gtc2l6aW5nOmNvbnRlbnQtYm94O2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRHluYW1pY0hvc3RDb2xsYXBzZWRTZWNvbmRhcnl7b3BhY2l0eTowO2Rpc3BsYXk6bm9uZX0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxEeW5hbWljSG9zdEV4cGFuZGVkU2Vjb25kYXJ5e2FuaW1hdGlvbjpmYWRlSW4gLjI1cyBlYXNlLWluLW91dDtvcGFjaXR5OjE7bWFyZ2luLXRvcDotMnB4O2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsMC43KTtmb250LWZhbWlseTpSb2JvdG8sIkFyaWFsIixzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxLjJyZW07bGluZS1oZWlnaHQ6MS44cmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjEuOHJlbTtkaXNwbGF5OmJveDtkaXNwbGF5Oi13ZWJraXQtYm94Oy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vcm1hbH1Ac3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDoxKXsueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxEeW5hbWljSG9zdEV4cGFuZGVkU2Vjb25kYXJ5ey13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRHluYW1pY0hvc3RFeHBhbmRlZFNlY29uZGFyeXttYXgtaGVpZ2h0OjEuOHJlbX0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxEeW5hbWljSG9zdENvbGxhcHNlZFRyYWlsaW5nU2VjdGlvbntjdXJzb3I6cG9pbnRlcjtwb3NpdGlvbjpyZWxhdGl2ZTtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoNDAsNDAsNDAsMC42KTtib3JkZXItcmFkaXVzOjAgOHB4IDhweCAwO2JvcmRlci1sZWZ0OjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMyk7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjstbW96LWJveC1wYWNrOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjI0cHg7aGVpZ2h0OjQwcHg7cGFkZGluZzowfS55dFNob3J0c1N1Z2dlc3RlZEFjdGlvblZpZXdNb2RlbER5bmFtaWNIb3N0Q29sbGFwc2VkVHJhaWxpbmdTZWN0aW9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpfS55dFNob3J0c1N1Z2dlc3RlZEFjdGlvblZpZXdNb2RlbER5bmFtaWNIb3N0RXhwYW5kZWRUcmFpbGluZ1NlY3Rpb257Y3Vyc29yOnBvaW50ZXI7cG9zaXRpb246cmVsYXRpdmU7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDQwLDQwLDQwLDAuNik7Ym9yZGVyLXJhZGl1czowIDhweCA4cHggMDtib3JkZXItbGVmdDoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjMpO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtoZWlnaHQ6NDBweDt3aWR0aDoyNHB4O3BhZGRpbmc6MH0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxEeW5hbWljSG9zdEV4cGFuZGVkVHJhaWxpbmdTZWN0aW9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjYpfS55dFNob3J0c1N1Z2dlc3RlZEFjdGlvblZpZXdNb2RlbER5bmFtaWNIb3N0VHJhaWxpbmdJY29ue2NvbG9yOnZhcigtLXJlZWwtbWV0YWRhdGEtY29sb3IsI2ZmZik7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxFeHRyYWN0T3ZlcmxheXtkaXNwbGF5Oi1tb3otaW5saW5lLWJveDtkaXNwbGF5OmlubGluZS1mbGV4fS55dFNob3J0c1N1Z2dlc3RlZEFjdGlvblZpZXdNb2RlbEV4dHJhY3RPdmVybGF5Q29udGFpbmVye2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA1KX0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxFeHRyYWN0T3ZlcmxheUNvbnRhaW5lcjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xKX0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxFeHRyYWN0T3ZlcmxheUNvbGxhcHNlZFRyYWlsaW5nU2VjdGlvbntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4wNSk7Y29sb3I6dmFyKC0tcmVlbC1tZXRhZGF0YS1jb2xvciwjMDMwMzAzKX0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxFeHRyYWN0T3ZlcmxheUNvbGxhcHNlZFRyYWlsaW5nU2VjdGlvbjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC4xKX0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxFeHRyYWN0T3ZlcmxheUV4cGFuZGVkVHJhaWxpbmdTZWN0aW9ue2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjA1KTtjb2xvcjp2YXIoLS1yZWVsLW1ldGFkYXRhLWNvbG9yLCMwMzAzMDMpfS55dFNob3J0c1N1Z2dlc3RlZEFjdGlvblZpZXdNb2RlbEV4dHJhY3RPdmVybGF5RXhwYW5kZWRUcmFpbGluZ1NlY3Rpb246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuMSl9Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRXhwYW5zaXZlQ29udGFpbmVye2NvbG9yOnZhcigtLXJlZWwtbWV0YWRhdGEtY29sb3IsIzAzMDMwMyk7bWF4LXdpZHRoOjQ4MHB4fS55dFNob3J0c1N1Z2dlc3RlZEFjdGlvblZpZXdNb2RlbEV4cGFuc2l2ZUNvbnRhaW5lclByaW1hcnlUZXh0e2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjJyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRXhwYW5zaXZlQ29udGFpbmVyUHJpbWFyeVRleHR7LXdlYmtpdC1saW5lLWNsYW1wOjE7bWF4LWhlaWdodDpub25lfX0ueXRTaG9ydHNTdWdnZXN0ZWRBY3Rpb25WaWV3TW9kZWxFeHBhbnNpdmVDb250YWluZXJQcmltYXJ5VGV4dHttYXgtaGVpZ2h0OjJyZW19Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRXhwYW5zaXZlQ29udGFpbmVyRXhwYW5kZWRTZWNvbmRhcnl7Y29sb3I6cmdiYShmcm9tIHZhcigtLXJlZWwtbWV0YWRhdGEtY29sb3IsIzAzMDMwMykgciBnIGIvLjcpO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6MS44cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dFNob3J0c1N1Z2dlc3RlZEFjdGlvblZpZXdNb2RlbEV4cGFuc2l2ZUNvbnRhaW5lckV4cGFuZGVkU2Vjb25kYXJ5ey13ZWJraXQtbGluZS1jbGFtcDoxO21heC1oZWlnaHQ6bm9uZX19Lnl0U2hvcnRzU3VnZ2VzdGVkQWN0aW9uVmlld01vZGVsRXhwYW5zaXZlQ29udGFpbmVyRXhwYW5kZWRTZWNvbmRhcnl7bWF4LWhlaWdodDoxLjhyZW19QGtleWZyYW1lcyBmYWRlSW57MCV7b3BhY2l0eTowfXRve29wYWNpdHk6MX19Lnl0U2hvcnRzVmlkZW9UaXRsZVZpZXdNb2RlbEhvc3R7ZGlzcGxheTpibG9jaztjb2xvcjp2YXIoLS1yZWVsLW1ldGFkYXRhLWNvbG9yLCNmZmYpfS55dFNob3J0c1ZpZGVvVGl0bGVWaWV3TW9kZWxIb3N0Q2xpY2thYmxle2N1cnNvcjpwb2ludGVyfS55dFNob3J0c1ZpZGVvVGl0bGVWaWV3TW9kZWxTaG9ydHNWaWRlb1RpdGxle21hcmdpbjowO3BvaW50ZXItZXZlbnRzOmF1dG87d29yZC1icmVhazpicmVhay13b3JkO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNHJlbTtsaW5lLWhlaWdodDoycmVtO2ZvbnQtd2VpZ2h0OjQwMDtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTpibG9jazttYXgtaGVpZ2h0OjJyZW07ZGlzcGxheTpib3g7ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3JtYWx9QHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6MSl7Lnl0U2hvcnRzVmlkZW9UaXRsZVZpZXdNb2RlbFNob3J0c1ZpZGVvVGl0bGV7LXdlYmtpdC1saW5lLWNsYW1wOjE7bWF4LWhlaWdodDpub25lfX0ueXRTaG9ydHNWaWRlb1RpdGxlVmlld01vZGVsU2hvcnRzVmlkZW9UaXRsZXttYXgtaGVpZ2h0OjJyZW07bWF4LWhlaWdodDpub25lOy13ZWJraXQtbGluZS1jbGFtcDp2YXIoLS15dC1zaG9ydHMtdmlkZW8tdGl0bGUtbWF4LWxpbmVzLDEpfS55dFNob3J0c1ZpZGVvVGl0bGVWaWV3TW9kZWxTaG9ydHNWaWRlb1RpdGxlTGFyZ2V7bWFyZ2luOjA7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MnJlbTtsaW5lLWhlaWdodDoyLjhyZW07Zm9udC13ZWlnaHQ6NzAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6Mi44cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dFNob3J0c1ZpZGVvVGl0bGVWaWV3TW9kZWxTaG9ydHNWaWRlb1RpdGxlTGFyZ2V7LXdlYmtpdC1saW5lLWNsYW1wOjE7bWF4LWhlaWdodDpub25lfX1AbWVkaWEgKG1heC13aWR0aDo1MjcuOXB4KXsueXRTaG9ydHNWaWRlb1RpdGxlVmlld01vZGVsU2hvcnRzVmlkZW9UaXRsZUxhcmdle2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuOHJlbTtsaW5lLWhlaWdodDoyLjZyZW07Zm9udC13ZWlnaHQ6NzAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6Mi42cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dFNob3J0c1ZpZGVvVGl0bGVWaWV3TW9kZWxTaG9ydHNWaWRlb1RpdGxlTGFyZ2V7LXdlYmtpdC1saW5lLWNsYW1wOjE7bWF4LWhlaWdodDpub25lfX19Lnl0U2hvcnRzVmlkZW9UaXRsZVZpZXdNb2RlbFNob3J0c1ZpZGVvVGl0bGVMYXJnZXttYXgtaGVpZ2h0OjIuOHJlbX1AbWVkaWEgKG1heC13aWR0aDo1MjcuOXB4KXsueXRTaG9ydHNWaWRlb1RpdGxlVmlld01vZGVsU2hvcnRzVmlkZW9UaXRsZUxhcmdle21heC1oZWlnaHQ6Mi42cmVtfX0ueXRTaG9ydHNWaWRlb1RpdGxlVmlld01vZGVsU2hvcnRzVmlkZW9UaXRsZUxhcmdle21heC1oZWlnaHQ6bm9uZTstd2Via2l0LWxpbmUtY2xhbXA6dmFyKC0teXQtc2hvcnRzLXZpZGVvLXRpdGxlLW1heC1saW5lcywxKX0ueXRBY2Nlc3NDb25maXJtYXRpb25WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0QWNjZXNzQ29uZmlybWF0aW9uVmlld01vZGVsQ29udGVudHtkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtZGlyZWN0aW9uOm5vcm1hbDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47LW1vei1ib3gtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtwYWRkaW5nOjI0cHggMTJweCAwfS55dEFjY2Vzc0NvbmZpcm1hdGlvblZpZXdNb2RlbEF2YXRhcnttYXJnaW4tYm90dG9tOjE2cHh9Lnl0QWNjZXNzQ29uZmlybWF0aW9uVmlld01vZGVsVGl0bGV7dGV4dC1hbGlnbjpjZW50ZXI7bWFyZ2luLWJvdHRvbTo4cHg7Zm9udC1mYW1pbHk6WW91VHViZSBTYW5zLFJvYm90byxzYW5zLXNlcmlmO2ZvbnQtc2l6ZTozLjJyZW07bGluZS1oZWlnaHQ6NC40cmVtO2ZvbnQtd2VpZ2h0OjcwMH0ueXRBY2Nlc3NDb25maXJtYXRpb25WaWV3TW9kZWxTdWJ0aXRsZXtjb2xvcjojNjA2MDYwO3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dER1YWxBdmF0YXJWaWV3TW9kZWxIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0ueXREdWFsQXZhdGFyVmlld01vZGVsQXZhdGFyc0NvbnRhaW5lcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LWZsZXg6MDtmbGV4LWdyb3c6MDtmbGV4LXNocmluazowO2dhcDp2YXIoLS15dC1kdWFsLWF2YXRhci12aWV3LW1vZGVsLWJhZGdlLWN1dG91dC1yYWRpdXMpO21hc2staW1hZ2U6cmFkaWFsLWdyYWRpZW50KGNpcmNsZSB2YXIoLS15dC1kdWFsLWF2YXRhci12aWV3LW1vZGVsLWJhZGdlLWN1dG91dC1yYWRpdXMpLHRyYW5zcGFyZW50IDEwMCUsYmxhY2sgMCl9Lnl0RHVhbEF2YXRhclZpZXdNb2RlbEJhZGdle3Bvc2l0aW9uOmFic29sdXRlfS55dEltYWdlU3RpY2tlckhvc3R7ZGlzcGxheTpibG9jaztwb3NpdGlvbjpyZWxhdGl2ZX0ueXRJbWFnZVN0aWNrZXJJbWFnZUNvcHl7cG9zaXRpb246YWJzb2x1dGU7ZmlsdGVyOmJyaWdodG5lc3MoMCkgaW52ZXJ0KDEpfS55dEltYWdlU3RpY2tlckltYWdlQWN0dWFse3Bvc2l0aW9uOnJlbGF0aXZlfS55dE92ZXJsYXlQcm9kdWN0U3RpY2tlckhvc3R7ZGlzcGxheTotbW96LWJveDtkaXNwbGF5OmZsZXg7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246Y29sdW1uOy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCAycHggcmdiYSgwLDAsMCwwLjMpKX0ueXRPdmVybGF5UHJvZHVjdFN0aWNrZXJUaXRsZUJ1dHRvbntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6YXV0bztwYWRkaW5nOjRweCA0cHggNHB4IDhweDtib3JkZXItcmFkaXVzOjRweDtjb2xvcjojNjA2MDYwO2JhY2tncm91bmQtY29sb3I6I2ZmZn0ueXRPdmVybGF5UHJvZHVjdFN0aWNrZXJJbWFnZUNvbnRhaW5lcntwb3NpdGlvbjpyZWxhdGl2ZX0ueXRPdmVybGF5UHJvZHVjdFN0aWNrZXJPcGVuSWNvbntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjhweDtwYWRkaW5nOjJweDtib3JkZXItcmFkaXVzOjRweDtjb2xvcjojNjA2MDYwO2JhY2tncm91bmQtY29sb3I6I2ZmZjtoZWlnaHQ6MTZweDt3aWR0aDoxNnB4fS55dE92ZXJsYXlTdGlja2VySG9zdHstLXN0aWNrZXItd2lkdGg6MTAwO2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246YWJzb2x1dGU7dHJhbnNmb3JtLW9yaWdpbjp0b3AgbGVmdDtwb2ludGVyLWV2ZW50czphbGw7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyLXJhZGl1czo2cHh9Lnl0T3ZlcmxheVN0aWNrZXJIb3N0Pjpvbmx5LWNoaWxke2hlaWdodDoxMDAlO3dpZHRoOjEwMCU7LW1vei1ib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym94LXNpemluZzpib3JkZXItYm94fS55dE92ZXJsYXlTdGlja2VySG9zdFJlbGF0aXZle3Bvc2l0aW9uOnJlbGF0aXZlfS55dFN1YnNjcmliZVBsdXNCdXR0b25WaWV3TW9kZWxIb3N0e2Rpc3BsYXk6YmxvY2t9Lnl0U3VydmV5SWNvbnNIb3N0e2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDp2ZXJ0aWNhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0ueXRTdXJ2ZXlJY29uc0hlYWRlcntkaXNwbGF5Oi1tb3otYm94O2Rpc3BsYXk6ZmxleDstbW96LWJveC1vcmllbnQ6aG9yaXpvbnRhbDstbW96LWJveC1kaXJlY3Rpb246bm9ybWFsO2ZsZXgtZGlyZWN0aW9uOnJvdzstbW96LWJveC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tb3otYm94LXBhY2s6anVzdGlmeTtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0ueXRTdXJ2ZXlJY29uc1RpdGxle2NvbG9yOiMwMzAzMDM7Zm9udC1mYW1pbHk6Um9ib3RvLCJBcmlhbCIsc2Fucy1zZXJpZjtmb250LXNpemU6MS42cmVtO2xpbmUtaGVpZ2h0OjIuMnJlbTtmb250LXdlaWdodDo1MDA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6YmxvY2s7bWF4LWhlaWdodDoyLjJyZW07bWF4LWhlaWdodDoyLjJyZW19Lnl0U3VydmV5SWNvbnNBbnN3ZXJze2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS55dFN1cnZleUljb25zSWNvbntjb2xvcjojMDMwMzAzO3dpZHRoOjM2cHg7aGVpZ2h0OjM2cHg7bWFyZ2luOi02cHh9Lnl0U3VydmV5SWNvbnNBbnN3ZXJzVGV4dHtjb2xvcjojMDMwMzAzO2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTpmbGV4Oy1tb3otYm94LW9yaWVudDpob3Jpem9udGFsOy1tb3otYm94LWRpcmVjdGlvbjpub3JtYWw7ZmxleC1kaXJlY3Rpb246cm93Oy1tb3otYm94LWFsaWduOmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7LW1vei1ib3gtcGFjazpqdXN0aWZ5O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuMnJlbTtsaW5lLWhlaWdodDoxLjhyZW07Zm9udC13ZWlnaHQ6NDAwfS55dExpc3RJdGVtTGlrZUNvdW50Vmlld01vZGVsSG9zdHtjb2xvcjojMDMwMzAzO2ZvbnQtZmFtaWx5OlJvYm90bywiQXJpYWwiLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEuNnJlbTtsaW5lLWhlaWdodDoyLjJyZW07Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjtkaXNwbGF5OmJsb2NrO21heC1oZWlnaHQ6NC40cmVtO2Rpc3BsYXk6Ym94O2Rpc3BsYXk6LXdlYmtpdC1ib3g7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm9ybWFsfUBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOjEpey55dExpc3RJdGVtTGlrZUNvdW50Vmlld01vZGVsSG9zdHstd2Via2l0LWxpbmUtY2xhbXA6MjttYXgtaGVpZ2h0Om5vbmV9fS55dExpc3RJdGVtTGlrZUNvdW50Vmlld01vZGVsSG9zdHttYXgtaGVpZ2h0OjQuNHJlbX1zZW50aW5lbHt9"}},"time_used":50,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":24,"receive":26,"ssl":0},"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.119.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/Gc2en3nHxA4","date":"2026-07-27T04:24:18.292Z","timestamp":1785126258292,"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: 1794\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":1794,"data":"[\"O43z0dpjhgX20SCx4KAo\",\"$E4w5jOhRAAYuiqQtDoreQPKg8JKIq9GnAEABEArZ1EYb3Dc0ugGHZw5TegEwsZpphCRvUS2PaFYyUejWl3OQRUnRd3kttZqfEs0C1VnMa9qHs855bd4FmuMbngAAAQ_OAAAAGfQBB-IAUsnycdP8a-ojqWspQSTMH89XMIr9zYBL6IT7GBLj_EqzNEIMONn2sGlQsFrCFmhYXhF1zFQ-IrmpCUrmziwXhnVt7wh2YZMJ3zERBBRw0GbkiRMFBG2FjWog97RNsUd7DPQ3OBgoRaYJ8eMNR-S6FYVaThejREjRX7By4MEPkBYy7lKKZxuNUqzIemwNDBW3Kw9C0L7GkOlj0pR7BA9qajUf4lcNn1XY5tEsIGZHwDw0byvMetaEPAsAaZRTALQictZf1RJs6M0Pz7IhSJiP-C_VdNkObY1RSW8VMGiTjk1Rv-45hoZsNz4EY9m5Wq_YYQ8sPoxA1Ks6IhT3EdUQr_TYRzwaeMBzCqpfi014JD67_eklW9c9QCz84r5g63xnNNHIX1TYfBpnRrmYNy-EQ4iMz2oLHk-Uy1tjxVxovy_fsah5gY42UsTWNeGjo7zdgns4KYKX3Y-RcBCPnTx2lUWoc6lcpTDfP5KN3A9z5DQBjFO_tbC1vU2i4o7-po1i97ek1yqQ0_X9o87nZUTidynZjSfH5paMAceyS5w_le8E2vIhreBRAVqq-c66n5JRq5LhVYEnSKm-hM3dm8a4s7Iqcry1slC2P9YdqMhs2Qr2YozbFGU8SZ8-yxdJcR4fUm-CHcpoYgdeBcq3GPjxIlKIGB5pGudqHC1MupPfNq6w4lKfB1bnb7_oXXWxJv7Yp4H-IoMJxwrL7hmqUPF_k4aZ2Uyr2Octk0wJ4KwaoklXE4L_goKBLzHfPa7oipEzz5UrhVxJF209gkncbLkahaZOgyxO53bTRMT2-H34128iqiKDVwhiM86a-UR0KoO40AOgK-QoQ6bUMfgGpGQEYYZyVabIgwNOS1wViDzwHHqii0YOKAf-QWJXLy5yyhSGpGQbHOsH85Xmd_ODQuf1Uw1Dd90zuV4bicXta0-z0JWPZWovM1kvQs4XuCW-c2l7IMZJicqkqvSUxqKHDLf_YRhnL52YOOkfXUNnr9MuvDrZyLn1JS7WOLjCxpis0AoFcidiDKsFLJFGLIi3ChrkAMpX6HW69-GG5Rk9Hdtpxchdi6rZ3MMStP0nRA0DKSEZ4fqYkrFoj-3GYuy3Ii4Y5kojC_-l-JhxbxQCPyx8aGBmvj-24W0KzFA1RLO6ubE-J6o66JPnWMLTpc-OnIdRQmDbkpDmBpNICCl6I3YZRak4FCu2nIyAur4ZZSQvjyQ-m4oTkowZLUM8oyU8Wg6qmD4tzhQOg8RCEF7gfgdOWpXCo_jV20YCiDfOYaHfv3qTj65RUmdfUHu9ouiPkTFogE4sd3e8neSUT4gOoZXfVyMG7-eWrRM--Id-UlSXt8HT1lbsY8jQKUS0i1yYsikt-8LCj0TapneEmlBUVQ7p0s9OvYdmnlXyPGvYloKGX-rnRrUQQ1ixClZrHtrhbVzPsKabRDaTXjQTicAiAVgXJhLqkGnfi5PggwV1yHNRlJc4g_dBzqQX1Yr-PUzqKI_BkiSwUfHu2lMo7wL19FnQvmcxQ43KwZIRJHKafReqiiVWHO0yOTOwgUmBvhs_fEaXXYbdLyIYzWKMIOtYSlEAGqf8AaLxK0qvtkNaDqhnHXL75H7AaibuF9lYdE9nDxb71AZgZg\"]"}},"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 04:24:18 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":"a4bb20e52295901d4a0ab9c56b57d38d","sha1":"3ef7c1caa22c1084e2600b91648966f088acd613","sha256":"365b0d7a94e93cd3819ecefbb0827ba10a10bba66d44649ea7ef2cefea8c8829","sha512":"0796f867958e72e65b93b4ca1014ee92945d621955e1f4d5cced739fee6c1d607fc652f710b853dd4ca604f9e322866e5fb8261250884b1f11837085db78c229","ssdeep":"","tlshash":"07b01270594c383486223600f356206201159ef1edc08d47d57d07e28667ee64126021","first_seen":"2026-07-27T04:25:12.764369Z","last_seen":"2026-07-27T04:25:12.764369Z","times_seen":1,"resource_available":false,"data":"WyIzVlNldzJ6STZPcDFSV25jSDVZNHhvVzNOWlAxcmMyaUdhQ3dMMDV1alVxTFBvekU2aTRUMUg4T2VST21oMit4ek5PMDQ5N0JTVmIvdGs2TW5NVT0iLDQzMjAwLDEwMF0="}},"time_used":24,"timings":{"blocked":-1,"dns":0,"connect":0,"send":2,"wait":22,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCAVU.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.696Z","timestamp":1785126258696,"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 /crypto/XTVCAVU.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 04:24:18 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: \"13cbdc9d6de138108a17ccb176a4f81f\"\r\nlast-modified: Tue, 22 Jul 2025 13:00:00 GMT\r\ncdn-cachedat: 08/09/2025 14:30:18\r\nx-amz-id-2: 3KwXOWy1eslw+4OfBm8svaHD22vu0e19MHKlG0JbBUhda7ktcSbvzV2ptsJw4Qxapj/oRQbxrcBxP4dvqqWMsuYTQbIuilWy3X6fwtIMaR0=\r\nx-amz-request-id: 5AX7HJASAKM1EA8R\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 13cbdc9d6de138108a17ccb176a4f81f\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: a12d1b99fd6b98bfdb26c43a649b33e2\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":348,"size_decoded":1213,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (348), with no line terminators","md5":"13cbdc9d6de138108a17ccb176a4f81f","sha1":"7cacc65964eee1c7b0aa559339d7ef6109ca789d","sha256":"827af10a072d0e455bf9c49328da6ea8c8d927d5d9bc7139cdd8162eaaf4bb34","sha512":"78833009ff279fe009a1a3f8a8e758b370dfd7440c0fdced85c925d3e09b4931bbbdcc4c42ee723e2db60e12337665447dab36197331cb830e7fe8e125636949","ssdeep":"","tlshash":"a9e0c0ef77acc40ca113c2f15739a09201fe70b5b15405b8a0523975b5872da5c13e9d","first_seen":"2025-08-02T16:04:41.363251Z","last_seen":"2026-07-27T05:33:43.702719Z","times_seen":331,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMyRTNBRkUiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTUgNnY0LjM0TDEzLjYyIDEySDExdi0uNzVoMi42N1Y3LjEyaC0uM2wtMy44NSA0LjYyYS43MS43MSAwIDAgMS0uNTQuMjZIN3YtMS41aDEuN0wxMi41OCA2SDE1Wm0tNCAxLjVIOS4zTDUuNSAxMkgzVjcuNzJMNC4zMyA2djQuN2guMzNMOC40IDYuMjdBLjcxLjcxIDAgMCAxIDguOTUgNkgxMXYxLjVaIiBmaWxsPSIjZmZmIi8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCANIMEC.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.805Z","timestamp":1785126258805,"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 /crypto/XTVCANIMEC.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 04:24:18 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: \"10684aa60eb3f9fcff33ab4ba2f5aeaf\"\r\nlast-modified: Tue, 25 Feb 2025 16:53:28 GMT\r\nx-amz-id-2: 9u8ZMATthzNdPDnW698a03JqxbGksj4KI6714u228dekLzx2j/2qoDMnmtrMmiJ+eqwjSve9Dwo=\r\nx-amz-request-id: 3WXS60TZ5J8APGSZ\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 10684aa60eb3f9fcff33ab4ba2f5aeaf\r\ncdn-proxyver: 1.57\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 06/15/2026 11:15:33\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 7f0840d9ba62f68daf7b6eff1bbbd505\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":11626,"size_decoded":5501,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (11626), with no line terminators","md5":"10684aa60eb3f9fcff33ab4ba2f5aeaf","sha1":"9265b8519c014758815209643d5a578ca84e9143","sha256":"e680e7115e56a1186e4529c96b27aef8f84ab127678a7347b6e9aa173bfa10a6","sha512":"41cefa84d16129153dd63d33b02c3c8c5dfda931d6478130436a094ba4a57331908e317588df0c9ea71342e108b610ebdd4c244548ac5373802c6fa26cca06ff","ssdeep":"192:PiBY2MPh8XRLtDzsSntBx0KTO22QDpbssjbxUCN10qZCZhQ/bIjzPWWv:PcVJXFhnt5ZF4s3xUC6QDCv","tlshash":"e4329da5154ca25c1843bb5dc7bfd9e1330e50a5b09a91d82effe7a8e00f6d5ed83824","first_seen":"2025-06-07T11:10:04.293112Z","last_seen":"2026-07-27T07:05:43.284284Z","times_seen":121,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJtMTAuNjIgNC4yNy0uMS4wOGE0Ljg5IDQuODkgMCAxIDAtMi4zMiA5LjQ4bC4wNC4xMWE1LjAzIDUuMDMgMCAwIDEtMy4zLTcuODUgNS4wMyA1LjAzIDAgMCAxIDUuNjgtMS44MloiIGZpbGw9IiM4QzVGMTMiLz48cGF0aCBkPSJNMTAuNTIgNC4zNWMuMy4xLjYxLjIzLjkuNC4yNC4xNS40OC4zLjcxLjQ4LjAzLjAyLjA2IDAgLjEtLjA0YTUgNSAwIDAgMSAxLjc2IDMuNjF2LS4wNmMwLS4wMSAwLS4wMi0uMDItLjAxaC0uMDVjLS4wMSAwLS4wMi4wMS0uMDIuMDMtLjAxLjIxLS4wMS40NS0uMDMuNjRhNC44NiA0Ljg2IDAgMCAxLTEuMDEgMi42bC0uNjUtLjY2YS4wMy4wMyAwIDAgMC0uMDQgMCAxMy44MyAxMy44MyAwIDAgMS0uNDIuNTJsLS4zNy4zYTMuMjcgMy4yNyAwIDAgMS0uNzMuNDUuMDQuMDQgMCAwIDAgMCAuMDNsLjQ5Ljc2YTQuODYgNC44NiAwIDAgMS0zLjY5LjI0IDE0Ljg4IDE0Ljg4IDAgMCAxLTEuMTEtMS43MiAzLjk1IDMuOTUgMCAwIDAgNC4wMy43OGwtLjAxLS4wM2MtLjAzLS4wMS0uMDQtLjAzLS4wMy0uMDRsLjExLS4wNWEzLjkgMy45IDAgMCAwIDEuODItMS40OWwuMS0uMTRjLjA0IDAgLjA4LS4wMi4xLS4wNWE0LjQ0IDQuNDQgMCAwIDAgLjQ5LTEuOCAzLjk1IDMuOTUgMCAwIDAtNS45OC0zLjQ4IDYuMyA2LjMgMCAwIDAtLjU1LS43NiA0LjgyIDQuODIgMCAwIDEgNC4xLS41MVoiIGZpbGw9IiNGRkQzNzQiLz48cGF0aCBkPSJNMTIuMjMgNS4xOWMtLjA0LjA0LS4wNy4wNi0uMS4wNGE3Ljk2IDcuOTYgMCAwIDAtLjcxLS40OGMtLjI5LS4xNy0uNi0uMy0uOS0uNGwuMS0uMDguMTYuMDZjLjU0LjIgMS4wMi40OSAxLjQ1Ljg2WiIgZmlsbD0iI0JBODk0MiIvPjxwYXRoIGQ9Ik02LjQyIDQuODZhMTYuOCAxNi44IDAgMCAxIC41NC43NmMtLjI4LjE3LS41My4zNy0uNzYuNmE2LjA1IDYuMDUgMCAwIDEtLjYyLS43Yy4yNi0uMjUuNTQtLjQ3Ljg0LS42NloiIGZpbGw9IiNGRkRGQjAiLz48cGF0aCBkPSJNMTIuODkgOS42MmgtLjAzYy0uMDIgMC0uMDMgMC0uMDItLjAyIDAtLjE1LjAyLS4yNi4wMy0uMzVhMy44NCAzLjg0IDAgMSAwLTcuNDcuOTggMy44NiAzLjg2IDAgMCAwIDIuNyAyLjVsLjAzLjA0Yy4wMy4wNS4wMy4wOC4wMS4wOWEzLjk1IDMuOTUgMCAxIDEgNC43NS0zLjI0WiIgZmlsbD0iIzY2M0EwRCIvPjxwYXRoIGQ9Ik0xMi44OSA5LjYyYy0uMDQuMjItLjEuNDQtLjE2LjY1aC0uMDVjLS4wMy4wNy0uMDcuMTQtLjEuMjQtLjA2LjE0LS4xNC4zLS4yMy40NGwtLjA4LjE0YS41NS41NSAwIDAgMS0uMTUtLjE2IDMuNyAzLjcgMCAwIDAgLjU0LTIuMiAzLjYzIDMuNjMgMCAwIDAtMS4zNy0yLjU0di4wM2EzLjU5IDMuNTkgMCAwIDAtMy44NS0uNDJsLS4xOS0uMjJhMy44IDMuOCAwIDAgMSAzLjU0LS4wMSAzLjg0IDMuODQgMCAwIDEgMi4wNSA0LjAzYzAgLjAyIDAgLjAzLjAyLjAyaC4wM1oiIGZpbGw9IiNCMDczMUEiLz48cGF0aCBkPSJtMTIuMDUgMTAuODYtLjQ2LS41VjYuODljLS4wMS0uMDgtLjA0LS4xMy0uMS0uMTdsLS4wOC0uMDRhMzEwLjMzIDMxMC4zMyAwIDAgMC0xLjg2LjAybC0uMDEuMDJjMC0uMDItLjAxLS4wMy0uMDMtLjAzYS4yNy4yNyAwIDAgMC0uMDkuMDNjLS4wMiAwLS4wMy4wMy0uMDMuMDUtLjA0IDAtLjA4LjA0LS4xMy4xLS4wNC0uMTItLjEzLS4xOC0uMjUtLjE4bC0uNzgtLjAxLS43LS43OGEuMDUuMDUgMCAwIDAtLjA3LS4wMWwtLjEuMDQtLjAyLS4wMmMuMzMtLjE5LjY4LS4zMiAxLjA1LS4zOGwuMi0uMDMuNDEtLjAzYTMuNTYgMy41NiAwIDAgMSAzLjA1IDUuNFoiIGZpbGw9IiNCMDczMUEiLz48cGF0aCBkPSJNNS41OCA1LjUyYTE5LjE3IDE5LjE3IDAgMCAwIC42Mi43IDMuOTUgMy45NSAwIDAgMC0xLjE0IDMuMDMuNTQuNTQgMCAwIDEtLjA2LS4xMmwtLjAzLS4xMWMtLjItLjUzLS40LTEuMDgtLjU4LTEuNjMuMjUtLjcyLjY1LTEuMzQgMS4xOS0xLjg3WiIgZmlsbD0iI0ZGRDM3NCIvPjxwYXRoIGQ9Im03LjI1IDUuNTguMi4yMkM3IDYgNi42MiA2LjMgNi4zIDYuNjlsLS4xNi0uMjRhMy45IDMuOSAwIDAgMSAxLjEtLjg3WiIgZmlsbD0iI0UyOUUzRCIvPjxwYXRoIGQ9Ik04LjIzIDYuNjdhMTEzOS41NiAxMTM5LjU2IDAgMCAxLTEuNi4wMWMtLjA3IDAtLjEzLjEtLjE4LjE0di4wMmEuMzIuMzIgMCAwIDEtLjA4LS4xYy4yOC0uMzMuNjEtLjYgMS0uODJsLjEtLjA0YS4wNS4wNSAwIDAgMSAuMDUuMDFsLjcuNzhaIiBmaWxsPSIjRTI5RTNEIi8+PHBhdGggZD0ibTcuMzQgNS45LjAyLjAyYTMuNSAzLjUgMCAwIDAtMS43NyAzLjYgMy41NSAzLjU1IDAgMCAwIDEuMjIgMi4yYzAgLjAyIDAgLjAyLS4wMi4wMmEzLjU0IDMuNTQgMCAwIDEgLjU1LTUuODRaIiBmaWxsPSIjOEM1RjEzIi8+PHBhdGggZD0ibTEyLjEyIDEwLjkzLS4xOC4yNWMtLjI4LjM3LS42Mi42Ny0xIC45LS4wMi4wMS0uMDMgMC0uMDMtLjAxYTMuNiAzLjYgMCAwIDAgLjM3LTUuODguMDMuMDMgMCAwIDEgLjAyIDBoLjAyYTMuNjMgMy42MyAwIDAgMSAuOCA0Ljc0WiIgZmlsbD0iIzY2M0EwRCIvPjxwYXRoIGQ9Im02LjE1IDYuNDUuMTYuMjQtLjMzLjQ1YTMuNiAzLjYgMCAwIDAgMS44NiA1LjI0aC4wMnYtLjAyYy0uNC0uMTUtLjc1LS4zNS0xLjA3LS42Mi4wMSAwIC4wMiAwIC4wMi0uMDJsLS4wMS0uMDJhMy41NSAzLjU1IDAgMCAxLS40My00Ljk1bC4wOC4xaC4wMi0uMDF2LjAxYTEzOS4wNCAxMzkuMDQgMCAwIDAgMCAxLjY3aC4wMmMtLjAyLjAyLS4wMS4wNSAwIC4wN2EuNS41IDAgMCAwIC4wNy4wNSA5MjguNCA5MjguNCAwIDAgMSAuODUuMDJsLjA2LjAzaC4wMmEuMTIuMTIgMCAwIDEtLjA2LjAyIDE0OS43NiAxNDkuNzYgMCAwIDEtLjg4Ljg4Yy0uMDUuMDUtLjA4LjEtLjA5LjE3YTg5LjA1IDg5LjA1IDAgMCAwIC4wMyAxLjM2Yy4wNC4wOS4xMS4xMy4yLjEzaDEuM2MuMTYgMCAuMjYtLjE1LjM2LS4yNWEyMzEuMTMgMjMxLjEzIDAgMCAxIC42Mi0uNThsLjI4LjR2LjAxaC4wMmMuMDEuMDkgMCAuMjIuMDMuMyAwIC4wMS4wMS4wMi4wMy4wMnYuMDNhLjMuMyAwIDAgMCAuMjMuMDhsLjc0IDEuMDVhLjEzLjEzIDAgMCAwLS4wNy4wM3YuMDJjMCAuMDIuMDIuMDIuMDQuMDEuMjItLjA4LjQ0LS4xOS42NS0uMzEgMCAuMDEgMCAuMDIuMDIuMDJhMi45IDIuOSAwIDAgMS0uNTguMy4wMy4wMyAwIDAgMCAwIC4wMmwuMS4xNHYuMDNsLS4xMi4wNWE0LjEzIDQuMTMgMCAwIDEtMS40Ni4yMWMtLjE3IDAtLjM3LS4wMy0uNTItLjA0LS4wNiAwLS4xMi0uMDMtLjE4LS4wNGgtLjA0bC0uMDMtLjAyYTMuODYgMy44NiAwIDAgMS0xLjk1LTYuMjlaIiBmaWxsPSIjQjA3MzFBIi8+PHBhdGggZD0ibTguMjMgNi42Ny43OC4wMS4wNC4xMy4wMi4wMmguMDZhLjA3LjA3IDAgMCAxIC4wNi4wNWwuMDMuMWguMDFsLjAzLS4xMmMuMDUtLjA2LjEtLjEuMTMtLjFsLjA2LjFjMCAuMDIuMDEuMDIuMDIuMDFsLjA2LS4wNC4wMS0uMDJ2LS4xbC4wMS0uMDIuMDItLjAyaDEuODRsLjA5LjA0LS4wNi4xdi4wM2MuMDMgMCAuMDUuMDIuMDYuMDRoLjA5djMuNDlhNjMuNDMgNjMuNDMgMCAwIDAtLjAyLjczbC0uMDctLjAyYTU0LjcgNTQuNyAwIDAgMSAwLS44NGMwLS4xLS4xMy0uMTQtLjE1LS4yNFY4YTI2Ljg1IDI2Ljg1IDAgMCAwLS4wMS0xLjFIOS41OGMtLjAzIDAtLjA2LjAxLS4xLjA2bC0uNDYuNDZhLjA1LjA1IDAgMCAxLS4wNyAwbC0uMTctLjE2YS4wNC4wNCAwIDAgMSAwLS4wNmwuMi0uMmEuMjguMjggMCAwIDAgLjA4LS4wOHYtLjAyaC0uNjFjLS4wMy0uMDYtLjA4LS4xLS4xNC0uMUg2LjY5bC0uMDYtLjEzaC4wMWwxLjU5LS4wMVoiIGZpbGw9IiM2NjNBMEQiLz48cGF0aCBkPSJNOS41NCA2Ljcxdi4xbC0uMDEuMDItLjA2LjA0aC0uMDJsLS4wNi0uMTFjMC0uMDIgMC0uMDQuMDMtLjA1YS4yNy4yNyAwIDAgMSAuMDktLjAzYy4wMiAwIC4wMyAwIC4wMy4wM1pNMTEuNiA2Ljg4aC0uMWEuMTcuMTcgMCAwIDAtLjA1LS4wNGMtLjAxIDAtLjAyLS4wMi0uMDEtLjAzbC4wNi0uMWMuMDUuMDQuMDguMS4xLjE3WiIgZmlsbD0iI0ZGRDM3NCIvPjxwYXRoIGQ9Ik04LjQ1IDYuOWEyMzguNzQgMjM4Ljc0IDAgMCAwLTEuNzYuMDR2LjAybC4wMS4wMS4wNC4wNC4wMS4wMnYxLjMxYS4wMy4wMyAwIDAgMCAuMDMuMDNoLjdjLjA1IDAgLjA4LS4wMi4xLS4wNmwxLjEtMS4wOC4xOS0uMThDOC45IDcgOC45MyA3IDguOTcgN2wtLjE5LjJhLjA0LjA0IDAgMCAwIDAgLjA2bC4xNy4xNmEuMDUuMDUgMCAwIDAgLjA3IDBsLjQ3LS40Ni4wMS4wNHYuMDJsLS41My41My0xLjE2IDEuMTctLjAyLjAxLS4xLjAzVjguN2EuMzIuMzIgMCAwIDAtLjA3LS4wNmMuMDItLjAzLjAyLS4wNi4wMS0uMDggMC0uMDItLjAyLS4wMy0uMDMtLjAzYS4yLjIgMCAwIDEtLjA3IDBjLjAyLS4wNy0uMDItLjExLS4xLS4xYTMwLjE0IDMwLjE0IDAgMCAxLS43Mi0uMDIuMDUuMDUgMCAwIDEtLjAyLS4wNFY3LjNjMC0uMDUtLjAyLS4xLS4wNi0uMTZ2LS4wMmwtLjAxLS4xNi4wMi0uMDRWNi45YS4xNy4xNyAwIDAgMCAuMDUtLjA3SDguM2MuMDYgMCAuMS4wMy4xNC4wOVoiIGZpbGw9IiNCMDczMUEiLz48cGF0aCBkPSJtNi40NyA2Ljg1LjE1LjF2LjE2bC4wMS4wMmMuMDQuMDYuMDYuMTEuMDYuMTZhMTUzLjY5IDE1My42OSAwIDAgMSAuMDIgMS4xMy4wNS4wNSAwIDAgMCAuMDMuMDFoLjdjLjA3IDAgLjEuMDQuMS4xaC0uODZsLS4wNS0uMDVINi42bC0uMTIuMDYtLjAyLS4wMVY4LjVhMTM5LjA0IDEzOS4wNCAwIDAgMSAwLTEuNjZaIiBmaWxsPSIjNjYzQTBEIi8+PHBhdGggZD0iTTguOTggN2MtLjA1IDAtLjA4LjAxLS4xMS4wNWwtLjE5LjE4di0uMDZjLS4wMy0uMDQtLjA2LS4wNC0uMSAwYTU3NzUuNzYgNTc3NS43NiAwIDAgMS0xLjEgMS4xbC4wMS4wNGMuMDMuMDMuMDYuMDQuMSAwLS4wMy4wNC0uMDYuMDYtLjEuMDZhMTAwLjM1IDEwMC4zNSAwIDAgMC0uNzMtLjAxVjcuMjhsLjA3LjA4YS4wMS4wMSAwIDAgMCAuMDEgMCAuMDEuMDEgMCAwIDAgMC0uMDF2LS4yYzAtLjA2LjA0LS4wOC4xLS4wOGEyNTMuNjYgMjUzLjY2IDAgMCAwIDEuNDQgMGMuMTguMDIuMjItLjAyLjEtLjA5aC4yM2MuMTEgMCAuMi0uMDEuMjctLjA2aC4wOHYuMDFhLjI4LjI4IDAgMCAxLS4wOC4wOFpNOS41OCA2Ljkxdi4wNWwuMDIuMDFoLjQ0YS4yLjIgMCAwIDEtLjA3LjAybC0uMDEuMDJ2LjAyYzAgLjAxIDAgLjAyLjAyLjAySDEwbC0uMzMuMDJhLjE3LjE3IDAgMCAwLS4xMi4wNmwtLjUuNWMuMDItLjAyLjAxLS4wNCAwLS4wNWEuMTguMTggMCAwIDAtLjA5LS4wMmwuNTMtLjUzdi0uMDJsLS4wMS0uMDRjLjAzLS4wNS4wNi0uMDYuMS0uMDZaIiBmaWxsPSIjRkZEMzc0Ii8+PHBhdGggZD0ibTExLjUgMTEuMDgtLjEuMDVIOS41N2EuMTQuMTQgMCAwIDEtLjEyLS4wNSAxMDMuNzIgMTAzLjcyIDAgMCAwLS4wMS0xLjExYy0uMDQtLjA1LS4wOS0uMDYtLjE1LS4wM2wtLjQ4LjVhLjMxLjMxIDAgMCAwLS4wNy0uMTRoLS4wM2wtLjcuN2EuMS4xIDAgMCAxLS4wNy4wM0g2LjdhLjAyLjAyIDAgMCAxIDAtLjAyVjkuOGwuMDUtLjAxdjEuMTRhLjAzLjAzIDAgMCAwIC4wNC4wM2gxLjE2bC4wMy0uMDEuODMtLjgyLjY0LS42NGMuMDMtLjAyLjA1LS4wNi4xLS4wNmEuMDMuMDMgMCAwIDEgLjAyLjA0djEuNDloMS43MWMuMDIgMCAuMDMgMCAuMDMtLjAzVjcuMDFhLjA0LjA0IDAgMCAwLS4wNC0uMDNIOS42bC0uMDEtLjAyVjYuOWgxLjc1bC4wMS4wMmEyNy4wMyAyNy4wMyAwIDAgMSAwIDEuMnYuMTdhNTk1LjU0IDU5NS41NCAwIDAgMCAwIDEuN2MuMDIuMS4xNi4xMy4xNi4yNGE0My4zNSA0My4zNSAwIDAgMSAwIC44NFoiIGZpbGw9IiNCMDczMUEiLz48cGF0aCBkPSJNMTEuMzEgNy44NHYuMDdhLjA0LjA0IDAgMCAxLS4wNS4wNGgtLjAyYy0uMDUtLjAzLS4wNi0uMDYtLjA2LS4xMWE0OS40IDQ5LjQgMCAwIDEtLjAxLS43NmgtMS4wNGwtLjEyLS4wM2gtLjAzYy0uMDIgMC0uMDIgMC0uMDItLjAydi0uMDJMOS45NyA3YS4yLjIgMCAwIDAgLjA3LS4wMmgxLjIzYS4wNC4wNCAwIDAgMSAuMDMuMDRsLjAxLjgzWiIgZmlsbD0iI0ZGRjJERiIvPjxwYXRoIGQ9Ik0xMC4xMyA3LjA5Yy0uMTUuMDItLjMuMDItLjQ1LjAxLS4wNSAwLS4wOC4wMS0uMTIuMDUtLjA3LjEtLjE3LjE4LS4yMi4yMy0uMDguMS0uMTcuMTgtLjI1LjI2bC0xLjIgMS4yMi0xLjAyIDEuMDFoLS4wMXYtLjAybDEuMDEtMS4wMiAxLjItMS4yLjQ5LS41YS4xNy4xNyAwIDAgMSAuMTItLjA2Yy4xMSAwIC4yMiAwIC4zMy0uMDIuMDMgMCAuMDcgMCAuMTIuMDRaIiBmaWxsPSIjRTI5RTNEIi8+PHBhdGggZD0iTTExLjMxIDcuODR2Mi4xOWwtLjEtLjA5YS4wMi4wMiAwIDAgMC0uMDIgMCAuMDEuMDEgMCAwIDAgMCAuMDJ2Ljg4bC0uMDIuMDJIOS43NGwtLjAxLS4wMXYtLjAyaDEuNDJ2LS4wMmE2NS43MiA2NS43MiAwIDAgMSAwLS44OUE0MjkuNjIgNDI5LjYyIDAgMCAwIDkuMSA3LjYzbC4yNS0uMjVjLjA1LS4wNS4xNS0uMTQuMjItLjIzLjA0LS4wNC4wNy0uMDUuMTMtLjA1LjE0LjAxLjMgMCAuNDQtLjAxbDEuMDQtLjAxdi4wMWwuMDEuNzVjMCAuMDUuMDEuMDguMDYuMWEuMDQuMDQgMCAwIDAgLjA1IDBsLjAxLS4wMy4wMS0uMDdaIiBmaWxsPSIjRkZEMzc0Ii8+PHBhdGggZD0iTTcuODIgNy45YTEwLjUzIDEwLjUzIDAgMCAxLS4zOC4zM3YtLjAxbC0uNTMtLjc2YS4xOC4xOCAwIDAgMS0uMDQtLjF2LS4yM2EuMDMuMDMgMCAwIDEgLjAzLS4wMmgxLjY4YTQyOS44NyA0MjkuODcgMCAwIDEtLjc3Ljc5Wk0xMS4xNSA3LjExdi43M2EuMDEuMDEgMCAwIDEtLjAxLjAxbC0uOTctLjcyVjcuMWguOTdhLjAxLjAxIDAgMCAxIC4wMS4wMVoiIGZpbGw9IiNGRkYyREYiLz48cGF0aCBkPSJNNC4zOSA3LjM5Yy4xOC41NS4zNyAxLjEuNTggMS42MyAwIDAgMCAuMDQuMDMuMS4wMi4wNS4wMy4wOS4wNi4xM2EzLjk0IDMuOTQgMCAwIDAgMS4yNyAyLjY4Yy4zMy41OS43IDEuMTYgMS4xMiAxLjcxQTQuOSA0LjkgMCAwIDEgNC40IDcuNFoiIGZpbGw9IiNFMjlFM0QiLz48cGF0aCBkPSJtOC45NyA3LjU2LjA4LjAyYy4wMi4wMS4wMy4wMy4wMi4wNGwtMS4yIDEuMmEuMTQuMTQgMCAwIDEtLjA0LS4wNC4wMy4wMyAwIDAgMC0uMDMtLjAxSDcuOGMtLjA3LjA1LS4xMy4xLS4xOC4xNmwtLjY1LjY2LS4yLjJINi43di0uMDNsMS0xIC4wOS0uMDIuMDItLjAxIDEuMTYtMS4xN1pNMTEuMyAxMC4wM3YuOWMwIC4wMiAwIC4wMy0uMDIuMDNoLTEuN3YtMS41YS4wMy4wMyAwIDAgMC0uMDQtLjAzYy0uMDQgMC0uMDYuMDQtLjA5LjA2bC0uNjQuNjRjLS4wNC4wMS0uMDctLjAxLS4wOC0uMDZ2LS4wM2E0MC40NyA0MC40NyAwIDAgMSAuOS0uODljLjAzLS4wNC4wNC0uMDMuMDQuMDJ2MS42OGEuMDEuMDEgMCAwIDAgLjAxIDBoLjAxVjkuMWMwLS4wMyAwLS4wNC0uMDMtLjAxbC0uOTMuOTNjLS4wMi4wMi0uMDMuMDEtLjA0IDBsLS44LTEuMTYgMS4yLTEuMjJhNDI1LjEgNDI1LjEgMCAwIDEgMi4wNiAyLjI4di4xYTY1LjczIDY1LjczIDAgMCAwLS4wMi44aC0xLjR2LjA0aDEuNDRsLjAxLS4wMnYtLjg5YS4wMi4wMiAwIDAgMSAuMDItLjAxbC4xLjA5WiIgZmlsbD0iI0ZGRjJERiIvPjxwYXRoIGQ9Ik03LjUzIDguNTRhLjIuMiAwIDAgMCAuMDcgMGwuMDMuMDMtLjE2LjFjLS4wMSAwLS4wMi4wMS0uMDEuMDNsLS4wNi0uMDJoLS4wM2E5MjguNDggOTI4LjQ4IDAgMCAwLS44Mi0uMDNjLjA1LS4wMi4xLS4wNi4xMy0uMTJoLjg1WiIgZmlsbD0iI0UyOUUzRCIvPjxwYXRoIGQ9Ik03LjYzIDguNTd2LjA4Yy0uMDMuMDUtLjA4LjA3LS4xNS4wNWgtLjAybC4wMS0uMDMuMTYtLjFaIiBmaWxsPSIjRkZERkIwIi8+PHBhdGggZD0iTTcuNyA4Ljc3YTEwOS41OCAxMDkuNTggMCAwIDAtMSAxLjAzVjExYS4wMi4wMiAwIDAgMCAwIC4wM2gxLjI1YS4xLjEgMCAwIDAgLjA3LS4wM2wuNy0uN2guMDNjLjAzLjA0LjA2LjA4LjA3LjEzbC0uNjcuNjhhLjA3LjA3IDAgMCAxLS4wNS4wMkg2LjcyYy0uMDctLjA1LS4wNS0uMDctLjA2LS4xMyAwLS4wMi0uMDEtLjAyLS4wMi0uMDFsLS4xNy4xLS4wMS0uMDJ2LTEuM2MwLS4wNy4wMy0uMTIuMDgtLjE3YTE0OS40NCAxNDkuNDQgMCAwIDAgLjg4LS44OGMuMDIgMCAuMDQgMCAuMDYtLjAyLjA3LjAyLjEyIDAgLjE0LS4wNWwuMDcuMDZ2LjA2WiIgZmlsbD0iIzY2M0EwRCIvPjxwYXRoIGQ9Ik0xNCA4Ljh2LjMyYTUgNSAwIDAgMS01Ljc2IDQuODJsLS4wNC0uMS40OC4wNWE0Ljg2IDQuODYgMCAwIDAgNC4xOC0xLjljLjU5LS43Ni45My0xLjYyIDEuMDEtMi42LjAyLS4xOC4wMi0uNDIuMDMtLjYzIDAtLjAyIDAtLjAyLjAyLS4wM2guMDVsLjAyLjAxdi4wNloiIGZpbGw9IiNCQTg5NDIiLz48cGF0aCBkPSJNNy44NyA4LjgzIDYuODYgOS44NXYuMDJoLjAxbDEuMDEtMS4wMS44MSAxLjE2Yy4wMS4wMS4wMi4wMi4wNCAwbC45My0uOTNjLjAzLS4wMy4wNC0uMDIuMDQuMDF2MS43NWgtLjAzVjkuMTdjMC0uMDUtLjAxLS4wNi0uMDUtLjAybC0uMTUuMTdhNDAuNDUgNDAuNDUgMCAwIDAtLjc0Ljc1Yy4wMS4wNS4wNC4wNy4wOC4wNmwtLjgzLjgyYS4wNS4wNSAwIDAgMS0uMDMuMDFINi43OWEuMDMuMDMgMCAwIDEtLjA0LS4wM1Y5Ljc5Yy4wOC0uMDYuMTUtLjEzLjIxLS4ybC42NS0uNjZhMS4wNCAxLjA0IDAgMCAxIC4yLS4xNi4wMy4wMyAwIDAgMSAuMDEgMGwuMDEuMDFjMCAuMDIuMDIuMDMuMDQuMDVaIiBmaWxsPSIjRkZEMzc0Ii8+PHBhdGggZD0ibTkuNDQgMTAuMDItLjE1LjEzYS4wOS4wOSAwIDAgMS0uMDQtLjAydi0uMDNsLjA1LS4xNmMuMDYtLjAzLjExLS4wMi4xNS4wM3YuMDVaIiBmaWxsPSIjRkZERkIwIi8+PHBhdGggZD0ibTkuMyA5Ljk0LS4wNi4xNnYuMDNsLjA1LjAyLS4wMi4wNGE2Ny4wNiA2Ny4wNiAwIDAgMC0uMDIuNjVsLS4zLS40MWEuMDIuMDIgMCAwIDAgMC0uMDEuMDIuMDIgMCAwIDAtLjAyIDBsLS42LjU5Yy0uMS4xLS4yLjI2LS4zNS4yNmgtMS4zbC4wNC0uMTVIOC4xYS4wOC4wOCAwIDAgMCAuMDUtLjAxbC42Ny0uNjguNDgtLjQ5WiIgZmlsbD0iI0UyOUUzRCIvPjxwYXRoIGQ9Im05LjQ0IDEwLjAyLjAyLjAxdjEuMDVsLS4xNC4wOGMtLjAyIDAtLjAzIDAtLjAzLS4wMi0uMDQtLjA4LS4wMi0uMjEtLjAyLS4zYTY3LjA2IDY3LjA2IDAgMCAxIC4wMi0uNjlsLjE1LS4xM1oiIGZpbGw9IiM2NjNBMEQiLz48cGF0aCBkPSJNMTIuNzMgMTAuMjdjLS4wOC4yMy0uMTcuNDQtLjI4LjYzLS4wMS4wMy0uMDUuMDUtLjEuMDUuMS0uMTUuMTctLjMuMjMtLjQ0YTMuMTUgMy4xNSAwIDAgMSAuMTItLjI0aC4wM1pNMTIuMDUgMTAuODZsLS4xMi4xOGEzLjU1IDMuNTUgMCAwIDEtMS42NCAxLjI4bC0uNzQtMS4wNWgxLjgyYy4wOSAwIC4xNi0uMDUuMi0uMTR2LS4wM2MuMDIgMCAuMDItLjAzLjAyLS4wNnYtLjY3bC40Ni41WiIgZmlsbD0iI0UyOUUzRCIvPjxwYXRoIGQ9Ik0xMi4xMiAxMC45M2MuMDQuMDcuMDkuMTIuMTUuMTZhMy45IDMuOSAwIDAgMS0xLjgzIDEuNXYtLjA0YS45Ny45NyAwIDAgMC0uMS0uMTV2LS4wMWEuMDMuMDMgMCAwIDEgLjAzLS4wMiAzLjcgMy43IDAgMCAwIDEuNzUtMS40NFoiIGZpbGw9IiNFMjlFM0QiLz48cGF0aCBkPSJtNi43MiAxMS4xMi0uMDMuMTRhLjIyLjIyIDAgMCAxLS4yMS0uMTN2LS4wNGwuMTYtLjFoLjAyYzAgLjA3IDAgLjEuMDYuMTNaIiBmaWxsPSIjRkZEMzc0Ii8+PHBhdGggZD0iTTkuNDYgMTEuMDhjLjAyLjAzLjA2LjA1LjEyLjA1aDEuODFjLjAzIDAgLjA2LS4wMi4xMS0uMDVsLjA3LjAydi4wM2MtLjA0LjEtLjExLjE0LS4yLjE0SDkuNTVhLjMuMyAwIDAgMS0uMjMtLjA4di0uMDNsLjE0LS4wOFpNMTIuODYgMTJhNC44NCA0Ljg0IDAgMCAxLTEuNzIgMS40bC0uNDktLjc2YS4wNC4wNCAwIDAgMSAwLS4wNWguMDJjLjI2LS4xMi41LS4yNi43LS40My4xNy0uMTMuMjctLjIuMzgtLjNhMTQuMjggMTQuMjggMCAwIDAgLjQ1LS41MmguMDFsLjY1LjY2WiIgZmlsbD0iI0ZGREZCMCIvPjxwYXRoIGQ9Ik05LjczIDEyLjM1di4wM0g5LjdhNS4zOSA1LjM5IDAgMCAwLS4xMi4wM3YuMDFsLjEzLS4wMi4wMi4wMXYuMDJsLS4wMS4wMi0uMTQuMDR2LjAxbC4xLS4wM2MuMDMgMCAuMDQgMCAuMDYuMDJ2LjAyYzAgLjAyIDAgLjAyLS4wMi4wM2wtLjIyLjA0YS4wMy4wMyAwIDAgMS0uMDMtLjAzdi0uMThsLjAyLS4wMS4xOS0uMDNjLjAyIDAgLjA0IDAgLjA0LjAyWiIgZmlsbD0iI0ZGRDM3NCIvPjxwYXRoIGQ9Im05LjM3IDEyLjYuMDgtLjAzLjAxLS4wMXYtLjE4bC4wMi4wOXYuMDhhLjAzLjAzIDAgMCAwIC4wMy4wM2wuMjItLjA0Yy4wMiAwIC4wMy0uMDEuMDMtLjAzbC0uMDEtLjAyYS4wNS4wNSAwIDAgMC0uMDYtLjAybC0uMS4wM3YtLjAxbC4xNC0uMDQuMDEtLjAydi0uMDJoLS4wMmwtLjEzLjAydi0uMDJhNi4xNCA2LjE0IDAgMCAxIC4xNC0uMDN2LS4wM2guMDNsLjAzLjE2YS4wNS4wNSAwIDAgMS0uMDQuMDZsLS4zMy4wNWMtLjAyIDAtLjA0LS4wMS0uMDUtLjAzWiIgZmlsbD0iIzhDNUYxMyIvPjxwYXRoIGQ9Ik04LjkxIDEyLjQzdi0uMDFoLS4wMnYuMTdsLS4wMy4wMUg4LjhjLS4wNCAwLS4wNi0uMDItLjA3LS4wNkg4Ljd2LjAzbC0uMDIuMDEtLjItLjAyYy0uMDEgMC0uMDIgMC0uMDItLjAydi0uMDNjMC0uMDEgMC0uMDItLjAyLS4wMWwtLjA5LjA0LS4wNC0uMDFhLjA0LjA0IDAgMCAxLS4wMS0uMDR2LS4wMmwuMDItLjAxYy4wMy0uMDIuMS0uMDUuMTUtLjFoLjA1bC4yLjAxYy4wMiAwIC4wMi4wMS4wMy4wMnYuMDRhLjAyLjAyIDAgMCAwIC4wMy4wMXYtLjAzYzAtLjAyLjAyLS4wMi4wMy0uMDJIOS4wMnYuMkw5IDEyLjZoLS4wOHYtLjE3Wk05LjQ3IDEyLjM4bC0uMDEuMTctLjAxLjAyLS4wOC4wMmgtLjAxdi0uMDZoLS4wMmMtLjAzLjA1LS4wNy4wNy0uMTIuMDdhLjA2LjA2IDAgMCAxLS4wMy0uMDVsLS4wMi0uMDEtLjAyLjA0YzAgLjAyIDAgLjAyLS4wMi4wMmgtLjA3bC0uMDEtLjAxdi0uMThsLjAxLS4wMmMuMDgtLjAyLjE0IDAgLjE3LjA2YS4wMi4wMiAwIDAgMCAuMDMgMGMuMDUtLjA4LjExLS4xLjItLjA3WiIgZmlsbD0iI0ZGRDM3NCIvPjxwYXRoIGQ9Im04LjU3IDEyLjQ2LjAxLjA5LjAyLS4wOHYtLjA4bC0uMDMuMDdaIiBmaWxsPSIjOEM1RjEzIi8+PHBhdGggZD0iTTkuMzYgMTIuNTljLS4wNi4wNS0uMS4wNS0uMTQgMCAuMDUuMDEuMDkgMCAuMTItLjA2aC4wMnYuMDZaIiBmaWxsPSIjNjYzQTBEIi8+PHBhdGggZD0iTTEwLjMzIDEyLjYzYy0uMDEuMDEgMCAuMDMuMDMuMDR2LjAzczAgLjAyLS4wMi4wMmEzLjc3IDMuNzcgMCAwIDEtMi4yLjE0Yy4wMi0uMDEuMDItLjA0IDAtLjFoLjAzbC4xOC4wNGMuMTUgMCAuMzUuMDQuNTIuMDQuMyAwIC41MSAwIC42NS0uMDIuMjMtLjAyLjUtLjA5LjgxLS4yWiIgZmlsbD0iI0JBODk0MiIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0iYSIgeDE9IjMuMzUiIHkxPSIzLjEyIiB4Mj0iMjEuOSIgeTI9IjI0LjQzIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iIzFBMUUyMSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzA2MDYwQSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjwvc3ZnPg=="}},"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.gstatic.com/s/raleway/v37/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaorCIPrE.woff2","fqdn":"fonts.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.67","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.476Z","timestamp":1785126256476,"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/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaorCIPrE.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://besttrader.live\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: 22408\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Thu, 23 Jul 2026 03:09:35 GMT\r\nexpires: Fri, 23 Jul 2027 03:09:35 GMT\r\ncache-control: public, max-age=31536000\r\nage: 350081\r\nlast-modified: Tue, 09 Sep 2025 19:08:35 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":22408,"size_decoded":23221,"mime_type":"font/woff2","magic":"Web Open Font Format (Version 2), TrueType, length 22408, version 1.0","md5":"0356ccdd005fb948a82524959711e09d","sha1":"53c790e3e53b4ee0311bb85f7969e93b3dcc4bba","sha256":"2318962e7930f55b45907ee85a6b6165ca3bba437b05ca17068a5c876d3de18b","sha512":"330c7c8d324aca658650758476dcd1752b084695b1f93904d65f0d4ff95cbd66898b86cd8b473ee8d369712aef941748aeacb39aed7de6193c66f87476eaaaed","ssdeep":"384:UsjBKOV7I/lyUaL6tXEeSpW1VE4VTxZKRRF817TccvOf5sKJBc69B7KqZ9y95eJj:hNKOI/lyUaL4EdWvveF6Xcqw5bBc69Us","tlshash":"6ba2d0dbc5a90793fe1d4238d150a0f572f83f8ed8f4a425d4da28258ab39fb48a5137","first_seen":"2025-05-29T22:06:11.578464Z","last_seen":"2026-07-27T05:21:09.10052Z","times_seen":7408,"resource_available":false,"data":"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"}},"time_used":59,"timings":{"blocked":-1,"dns":3,"connect":32,"send":0,"wait":17,"receive":7,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/80097.0a3cfdc2802879522aec.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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.237Z","timestamp":1785126257237,"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-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/80097.0a3cfdc2802879522aec.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/ticker-tape/?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 04:24:17 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-1a12\"\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:46\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 9ae00c5a757fd7421cdb35fd41dd04e5\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":6674,"size_decoded":2450,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (6674), with no line terminators","md5":"f0f634ef413698b5d2803a87d22f7371","sha1":"ab445a3dad78a0af77a6322c79837164dfd71745","sha256":"1e4004685024a3a4b841fc7a40ed6764efd60d076fe2e0c80cdbbf12774e9185","sha512":"47e707e11fa655ed28f08621ee8c795d8b011467a77b8d0d9c5f726095defe1ed1bfaf8cc7cfdd1b9aaa695fd7547e66f982736269473037353f153cdb81e031","ssdeep":"96:DLRLhVLZjin09Bfgc0H3IFtxsIRH0kq7fDvLNvqK/VmTqX:lLA0Ic0H4FtxV10kq7fDvL9qK/VmTc","tlshash":"c4d14622531ea0ff2177aa294bdc4f0f4e35d5a1d6a2760c93192b940b8f7fc47e560a","first_seen":"2026-07-16T11:36:17.8282Z","last_seen":"2026-07-27T07:05:45.383127Z","times_seen":598,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtOEhRSjojMDAwMDstLV8xLThIUUo6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCl9W2RhdGEtdGhlbWU9ZGFya117LS1fMC04SFFKOiMwMDAwOy0tXzEtOEhRSjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKX1hLnR2LXRpY2tlci1pdGVtLXRhcGV7b3ZlcmZsb3c6aGlkZGVufS50di10aWNrZXItaXRlbS10YXBle2JveC1zaXppbmc6Ym9yZGVyLWJveDtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpO2Rpc3BsYXk6aW5saW5lLWZsZXg7ZmxleDowIDAgYXV0bztmb250LXNpemU6MTZweDtoZWlnaHQ6NDRweDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzoxMHB4IDB9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di10aWNrZXItaXRlbS10YXBlOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tY29sb3ItYmctcHJpbWFyeS1ob3Zlcil9fS50di10aWNrZXItaXRlbS10YXBle291dGxpbmU6bm9uZTtvdmVyZmxvdzp2aXNpYmxlO3Bvc2l0aW9uOnJlbGF0aXZlfS50di10aWNrZXItaXRlbS10YXBlOmZvY3Vze291dGxpbmU6bm9uZX0udHYtdGlja2VyLWl0ZW0tdGFwZTpmb2N1cy12aXNpYmxle291dGxpbmU6bm9uZX0udHYtdGlja2VyLWl0ZW0tdGFwZTphZnRlcntib3JkZXItc3R5bGU6c29saWQ7Ym9yZGVyLXdpZHRoOjJweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29udGVudDoiIjtkaXNwbGF5Om5vbmU7aGVpZ2h0OjEwMCU7aW5zZXQtaW5saW5lLXN0YXJ0OjA7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxMDAlO3otaW5kZXg6MX0udHYtdGlja2VyLWl0ZW0tdGFwZTpmb2N1czphZnRlcntkaXNwbGF5OmJsb2NrfS50di10aWNrZXItaXRlbS10YXBlOmZvY3VzLXZpc2libGU6YWZ0ZXJ7ZGlzcGxheTpibG9ja30udHYtdGlja2VyLWl0ZW0tdGFwZTpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpOmFmdGVye2Rpc3BsYXk6bm9uZX0udHYtdGlja2VyLWl0ZW0tdGFwZTphZnRlcntib3JkZXItY29sb3I6dmFyKC0tY29sb3ItZm9jdXMtb3V0bGluZS1jb2xvci1ibHVlKTtib3JkZXItcmFkaXVzOjJweH0udHYtdGlja2VyLWl0ZW0tdGFwZV9fYm9yZGVyLXdyYXBwZXJ7Ym9yZGVyLWlubGluZS1lbmQ6MXB4IHNvbGlkIHZhcigtLWNvbG9yLWRpdmlkZXIpO2JveC1zaXppbmc6Ym9yZGVyLWJveDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDtwYWRkaW5nLWlubGluZS1zdGFydDoxNnB4O3dpZHRoOjEwMCV9LnR2LXRpY2tlci1pdGVtLXRhcGVfX2JvcmRlci13cmFwcGVyLC50di10aWNrZXItaXRlbS10YXBlX19pbm5lci13cmFwcGVye2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7aGVpZ2h0OjEwMCV9LnR2LXRpY2tlci1pdGVtLXRhcGVfX2NoYW5nZS13cmFwcGVyLC50di10aWNrZXItaXRlbS10YXBlX19sYXN0LXdyYXBwZXIsLnR2LXRpY2tlci1pdGVtLXRhcGVfX3Nob3J0LW5hbWUtd3JhcHBlcntkaXNwbGF5OmZsZXh9LnR2LXRpY2tlci1pdGVtLXRhcGVfX3Nob3J0LW5hbWUtd3JhcHBlcnttYXJnaW4taW5saW5lLWVuZDoxMnB4fS50di10aWNrZXItaXRlbS10YXBlX19pY29uLXdyYXBwZXIsLnR2LXRpY2tlci1pdGVtLXRhcGVfX3N5bWJvbHthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTpmbGV4fS50di10aWNrZXItaXRlbS10YXBlX19pY29ue21hcmdpbi1pbmxpbmUtZW5kOjhweH0udHYtdGlja2VyLWl0ZW0tdGFwZV9fc2hvcnQtbmFtZXtmb250LXdlaWdodDo3MDA7d2hpdGUtc3BhY2U6bm93cmFwfS50di10aWNrZXItaXRlbS10YXBlX19sYXN0e2JvcmRlci1yYWRpdXM6M3B4O21hcmdpbjotMXB4IC0ycHg7cGFkZGluZzoxcHggMnB4O3RyYW5zaXRpb24tZHVyYXRpb246LjM1czt0cmFuc2l0aW9uLXByb3BlcnR5OmJhY2tncm91bmR9LnR2LXRpY2tlci1pdGVtLXRhcGVfX2xhc3QtLWdyb3dpbmd7Y29sb3I6dmFyKC0tY29sb3ItZ3Jvd2luZyl9LnR2LXRpY2tlci1pdGVtLXRhcGVfX2xhc3QtLWZhbGxpbmd7Y29sb3I6dmFyKC0tY29sb3ItZmFsbGluZyl9LnR2LXRpY2tlci1pdGVtLXRhcGVfX2NoYW5nZS13cmFwcGVye21hcmdpbi1pbmxpbmUtc3RhcnQ6MTJweH0udHYtdGlja2VyLWl0ZW0tdGFwZV9fY2hhbmdlLXdyYXBwZXItLXVwe2NvbG9yOnZhcigtLWNvbG9yLWdyb3dpbmcpfS50di10aWNrZXItaXRlbS10YXBlX19jaGFuZ2Utd3JhcHBlci0tZG93bntjb2xvcjp2YXIoLS1jb2xvci1mYWxsaW5nKX0udHYtdGlja2VyLWl0ZW0tdGFwZV9fY2hhbmdlLWFicywudHYtdGlja2VyLWl0ZW0tdGFwZV9fY2hhbmdlLXB0e2RpcmVjdGlvbjpsdHJ9LnR2LXRpY2tlci1pdGVtLXRhcGUtLWNvbXBhY3R7Zm9udC1zaXplOjE0cHg7aGVpZ2h0OjcycHh9LnR2LXRpY2tlci1pdGVtLXRhcGUtLWNvbXBhY3QgLnR2LXRpY2tlci1pdGVtLXRhcGVfX2lubmVyLXdyYXBwZXJ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LnR2LXRpY2tlci1pdGVtLXRhcGUtLWNvbXBhY3QgLnR2LXRpY2tlci1pdGVtLXRhcGVfX3Nob3J0LW5hbWUtd3JhcHBlcnttYXJnaW4taW5saW5lLWVuZDowfS50di10aWNrZXItaXRlbS10YXBlLS1jb21wYWN0IC50di10aWNrZXItaXRlbS10YXBlX19zeW1ib2x7bWFyZ2luLWJvdHRvbTo0cHh9LnR2LXRpY2tlci1pdGVtLXRhcGUtLWNvbXBhY3QgLnR2LXRpY2tlci1pdGVtLXRhcGVfX3Nob3J0LW5hbWV7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NDAwfS50di10aWNrZXItaXRlbS10YXBlLS1jb21wYWN0IC50di10aWNrZXItaXRlbS10YXBlX19sYXN0e2ZvbnQtd2VpZ2h0OjcwMH0udHYtdGlja2VyLWl0ZW0tdGFwZS0tY29tcGFjdCAudHYtdGlja2VyLWl0ZW0tdGFwZV9faWNvbnttYXJnaW4taW5saW5lLWVuZDo2cHh9LnR2LXRpY2tlci1pdGVtLXRhcGUtLWNvbXBhY3QgLnR2LXRpY2tlci1pdGVtLXRhcGVfX2NoYW5nZS13cmFwcGVye21hcmdpbi1pbmxpbmUtc3RhcnQ6MH0udHYtdGlja2VyLWl0ZW0tdGFwZS0tY29tcGFjdCAudHYtdGlja2VyLWl0ZW0tdGFwZV9fY2hhbmdlLXdyYXBwZXItLWRvd24sLnR2LXRpY2tlci1pdGVtLXRhcGUtLWNvbXBhY3QgLnR2LXRpY2tlci1pdGVtLXRhcGVfX2NoYW5nZS13cmFwcGVyLS11cHttYXJnaW4tbGVmdDotN3B4fS50di10aWNrZXItaXRlbS10YXBlLS1za2VsZXRvbntwb2ludGVyLWV2ZW50czpub25lO3dpZHRoOjM0NnB4fS50di10aWNrZXItaXRlbS10YXBlLS1za2VsZXRvbiAudHYtdGlja2VyLWl0ZW0tdGFwZV9fYm9yZGVyLXdyYXBwZXJ7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjB9LnR2LXRpY2tlci1pdGVtLXRhcGUtLXNrZWxldG9uIC50di10aWNrZXItaXRlbS10YXBlX19jaGFuZ2Utd3JhcHBlciwudHYtdGlja2VyLWl0ZW0tdGFwZS0tc2tlbGV0b24gLnR2LXRpY2tlci1pdGVtLXRhcGVfX2xhc3Qtd3JhcHBlciwudHYtdGlja2VyLWl0ZW0tdGFwZS0tc2tlbGV0b24gLnR2LXRpY2tlci1pdGVtLXRhcGVfX3Nob3J0LW5hbWUtd3JhcHBlcntiYWNrZ3JvdW5kOnZhcigtLV8xLThIUUopO2JvcmRlci1yYWRpdXM6NnB4O2hlaWdodDoxNnB4fS50di10aWNrZXItaXRlbS10YXBlLS1za2VsZXRvbiAudHYtdGlja2VyLWl0ZW0tdGFwZV9fc2hvcnQtbmFtZS13cmFwcGVye3dpZHRoOjEwMHB4fS50di10aWNrZXItaXRlbS10YXBlLS1za2VsZXRvbiAudHYtdGlja2VyLWl0ZW0tdGFwZV9fbGFzdC13cmFwcGVye3dpZHRoOjcwcHh9LnR2LXRpY2tlci1pdGVtLXRhcGUtLXNrZWxldG9uIC50di10aWNrZXItaXRlbS10YXBlX19jaGFuZ2Utd3JhcHBlcnt3aWR0aDoxMTBweH0udHYtdGlja2VyLWl0ZW0tdGFwZS0tc2tlbGV0b24udHYtdGlja2VyLWl0ZW0tdGFwZS0tY29tcGFjdHt3aWR0aDoxMjVweH0udHYtdGlja2VyLWl0ZW0tdGFwZS0tc2tlbGV0b24udHYtdGlja2VyLWl0ZW0tdGFwZS0tY29tcGFjdCAudHYtdGlja2VyLWl0ZW0tdGFwZV9fY2hhbmdlLXdyYXBwZXIsLnR2LXRpY2tlci1pdGVtLXRhcGUtLXNrZWxldG9uLnR2LXRpY2tlci1pdGVtLXRhcGUtLWNvbXBhY3QgLnR2LXRpY2tlci1pdGVtLXRhcGVfX2xhc3Qtd3JhcHBlciwudHYtdGlja2VyLWl0ZW0tdGFwZS0tc2tlbGV0b24udHYtdGlja2VyLWl0ZW0tdGFwZS0tY29tcGFjdCAudHYtdGlja2VyLWl0ZW0tdGFwZV9fc2hvcnQtbmFtZS13cmFwcGVye2hlaWdodDoxMnB4fS50di10aWNrZXItaXRlbS10YXBlLS1za2VsZXRvbi50di10aWNrZXItaXRlbS10YXBlLS1jb21wYWN0IC50di10aWNrZXItaXRlbS10YXBlX19sYXN0LXdyYXBwZXIsLnR2LXRpY2tlci1pdGVtLXRhcGUtLXNrZWxldG9uLnR2LXRpY2tlci1pdGVtLXRhcGUtLWNvbXBhY3QgLnR2LXRpY2tlci1pdGVtLXRhcGVfX3Nob3J0LW5hbWUtd3JhcHBlcnt3aWR0aDo3MnB4fS50di10aWNrZXItaXRlbS10YXBlLS1za2VsZXRvbi50di10aWNrZXItaXRlbS10YXBlLS1jb21wYWN0IC50di10aWNrZXItaXRlbS10YXBlX19jaGFuZ2Utd3JhcHBlcnt3aWR0aDo5MnB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtdGlja2VyLWl0ZW0tdGFwZS0tdHJhbnNwYXJlbnQ6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1fMC04SFFKKX19LnR2LXRpY2tlci1pdGVtLXRhcGUtLXRyYW5zcGFyZW50IC50di10aWNrZXItaXRlbS10YXBlX19ib3JkZXItd3JhcHBlcntib3JkZXItaW5saW5lLWVuZC1jb2xvcjp2YXIoLS1jb2xvci1kaXZpZGVyKX0udHYtdGlja2VyLWl0ZW0tdGFwZV9fc3ltYm9sLWV4Y2xhbWF0aW9uLW1hcmt7YWxpZ24tc2VsZjpjZW50ZXI7YmFja2dyb3VuZDp1cmwoImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMCcgaGVpZ2h0PScxMCcgdmlld0JveD0nMCAwIDEwIDEwJyUzRSUzQ3BhdGggZmlsbD0nJTIzZmY0YTY4JyBkPSdNNSAxMEE1IDUgMCAxIDAgNSAwYTUgNSAwIDAgMCAwIDEwbS0uNS0zaDFjLjYgMCAuNiAxIDAgMWgtMWMtLjYgMC0uNi0xIDAtMU00IDJoMnYybC0uNSAyaC0xTDQgNHonLyUzRSUzQy9zdmclM0UiKSA1MCUgbm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZTpjb250YWluO2N1cnNvcjpkZWZhdWx0O2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoxNnB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6NXB4O3dpZHRoOjE2cHh9LnRpY2tlclRhcGUtTl9reXBqdDl7b3ZlcmZsb3c6aGlkZGVufS50aWNrZXJUYXBlLU5fa3lwanQ5Lm5vQXV0b1Njcm9sbC1OX2t5cGp0OXtvdmVyZmxvdy14OnNjcm9sbH1Ac3VwcG9ydHMgKC1tb3otYXBwZWFyYW5jZTpub25lKXsudGlja2VyVGFwZS1OX2t5cGp0OS5ub0F1dG9TY3JvbGwtTl9reXBqdDl7c2Nyb2xsYmFyLXdpZHRoOm5vbmV9fS50aWNrZXJUYXBlLU5fa3lwanQ5Lm5vQXV0b1Njcm9sbC1OX2t5cGp0OS5zYi1zY3JvbGxiYXItd3JhcHtkaXNwbGF5Om5vbmV9LnRpY2tlclRhcGUtTl9reXBqdDkubm9BdXRvU2Nyb2xsLU5fa3lwanQ5Ojotd2Via2l0LXNjcm9sbGJhcntkaXNwbGF5Om5vbmU7aGVpZ2h0OjA7d2lkdGg6MH0udGlja2VyVGFwZS1OX2t5cGp0OS5ub0F1dG9TY3JvbGwtTl9reXBqdDk6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iLC50aWNrZXJUYXBlLU5fa3lwanQ5Lm5vQXV0b1Njcm9sbC1OX2t5cGp0OTo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2t7ZGlzcGxheTpub25lfS50aWNrZXJUYXBlLU5fa3lwanQ5Lm5vQXV0b1Njcm9sbC1OX2t5cGp0OTo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVye2Rpc3BsYXk6bm9uZX0udGlja2VyVGFwZS1OX2t5cGp0OS5ub0F1dG9TY3JvbGwtTl9reXBqdDkgLnRhcGUtTl9reXBqdDl7YW5pbWF0aW9uOm5vbmV9QG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LnRpY2tlclRhcGUtTl9reXBqdDl7b3ZlcmZsb3cteDpzY3JvbGx9QHN1cHBvcnRzICgtbW96LWFwcGVhcmFuY2U6bm9uZSl7LnRpY2tlclRhcGUtTl9reXBqdDl7c2Nyb2xsYmFyLXdpZHRoOm5vbmV9fS50aWNrZXJUYXBlLU5fa3lwanQ5LnNiLXNjcm9sbGJhci13cmFwe2Rpc3BsYXk6bm9uZX0udGlja2VyVGFwZS1OX2t5cGp0OTo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lO2hlaWdodDowO3dpZHRoOjB9LnRpY2tlclRhcGUtTl9reXBqdDk6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iLC50aWNrZXJUYXBlLU5fa3lwanQ5Ojotd2Via2l0LXNjcm9sbGJhci10cmFja3tkaXNwbGF5Om5vbmV9LnRpY2tlclRhcGUtTl9reXBqdDk6Oi13ZWJraXQtc2Nyb2xsYmFyLWNvcm5lcntkaXNwbGF5Om5vbmV9fS50YXBlLU5fa3lwanQ5e2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6aW5maW5pdGU7YW5pbWF0aW9uLXBsYXktc3RhdGU6cnVubmluZzthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmxpbmVhcjtkaXNwbGF5OmZsZXg7ZmxleDowIDAgYXV0b31AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnRhcGUtTl9reXBqdDk6aG92ZXJ7YW5pbWF0aW9uLXBsYXktc3RhdGU6cGF1c2VkfX1AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsudGFwZS1OX2t5cGp0OXthbmltYXRpb24tcGxheS1zdGF0ZTpwYXVzZWR9fS5oZWFkLU5fa3lwanQ5LC5za2VsZXRvbi1OX2t5cGp0OSwudGFpbC1OX2t5cGp0OXtkaXNwbGF5OmZsZXg7ZmxleDowIDAgYXV0b30="}},"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.tradingview-widget.com/static/bundles/embed/76577.f73a01e1f00043622b65.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.364Z","timestamp":1785126257364,"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-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/76577.f73a01e1f00043622b65.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/crypto-mkt-screener/?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 04:24:17 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-12b22\"\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:20:17\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 6d3ed44643337629093644d82336fbb0\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":76578,"size_decoded":29340,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (3072)","md5":"6a57b1deb31991bb129476b06e9cad11","sha1":"d00dffa870d90063d146679279b23729d7cc0bb2","sha256":"4ba69451c43dc3871ed3f2b689d739650d0189c1095c65a1e4c3050c3ca9a662","sha512":"73f9b1560727a29f3cfe717e938a390645a6bb2cae109ebddc8e909a042a048adc3d51bccd2be01a77a3839b742c0edf3283489d06d79bb43e3d75bc2974df1e","ssdeep":"768:VXEgvhG7/2KArEGBxc1lmprTmMAo58FRGdfycQKRAppcS+oLAMzpOXYq9EqLN6e:V5G7/0r9HqlmprTmMAw8FRGdfycNAgVf","tlshash":"7873f8cdb281b46546e7a1b0803f550bf23a6998700d8488f235e8e97c7ca5ea177f7d","first_seen":"2026-07-25T03:24:57.112206Z","last_seen":"2026-07-27T07:14:43.749745Z","times_seen":132,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s3NjU3N10sezEzMDY5OSh0LGUsbil7InVzZSBzdHJpY3QiO24uZChlLHtjb25maWd1cmVTdG9yZTooKT0+TyxjcmVhdGVBc3luY1RodW5rOigpPT5qLGNyZWF0ZVNsaWNlOigpPT5rfSk7dmFyIGkscj1uKDMyNzIzOSksbz0obigzNjQzNTApLG4oNzg3NzI0KSkscz1uKDk1Mzc0OSksYT0oaT1mdW5jdGlvbih0LGUpe3JldHVybiBpPU9iamVjdC5zZXRQcm90b3R5cGVPZnx8e19fcHJvdG9fXzpbXX1pbnN0YW5jZW9mIEFycmF5JiZmdW5jdGlvbih0LGUpe3QuX19wcm90b19fPWV9fHxmdW5jdGlvbih0LGUpe2Zvcih2YXIgbiBpbiBlKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLG4pJiYodFtuXT1lW25dKX0saSh0LGUpfSxmdW5jdGlvbih0LGUpe2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBlJiZudWxsIT09ZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJDbGFzcyBleHRlbmRzIHZhbHVlICIrU3RyaW5nKGUpKyIgaXMgbm90IGEgY29uc3RydWN0b3Igb3IgbnVsbCIpO2Z1bmN0aW9uIG4oKXt0aGlzLmNvbnN0cnVjdG9yPXR9aSh0LGUpLHQucHJvdG90eXBlPW51bGw9PT1lP09iamVjdC5jcmVhdGUoZSk6KG4ucHJvdG90eXBlPWUucHJvdG90eXBlLG5ldyBuKX0pLHU9ZnVuY3Rpb24odCxlKXt2YXIgbixpLHIsbyxzPXtsYWJlbDowLHNlbnQ6ZnVuY3Rpb24oKXtpZigxJnJbMF0pdGhyb3cgclsxXTtyZXR1cm4gclsxXX0sdHJ5czpbXSxvcHM6W119O3JldHVybiBvPXtuZXh0OmEoMCksdGhyb3c6YSgxKSxyZXR1cm46YSgyKX0sImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmKG9bU3ltYm9sLml0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiB0aGlzfSksbztmdW5jdGlvbiBhKG8pe3JldHVybiBmdW5jdGlvbihhKXtyZXR1cm4gZnVuY3Rpb24obyl7aWYobil0aHJvdyBuZXcgVHlwZUVycm9yKCJHZW5lcmF0b3IgaXMgYWxyZWFkeSBleGVjdXRpbmcuIik7Zm9yKDtzOyl0cnl7aWYobj0xLGkmJihyPTImb1swXT9pLnJldHVybjpvWzBdP2kudGhyb3d8fCgocj1pLnJldHVybikmJnIuY2FsbChpKSwwKTppLm5leHQpJiYhKHI9ci5jYWxsKGksb1sxXSkpLmRvbmUpcmV0dXJuIHI7c3dpdGNoKGk9MCxyJiYobz1bMiZvWzBdLHIudmFsdWVdKSxvWzBdKXtjYXNlIDA6Y2FzZSAxOnI9bzticmVhaztjYXNlIDQ6cmV0dXJuIHMubGFiZWwrKyx7dmFsdWU6b1sxXSxkb25lOiExfTtjYXNlIDU6cy5sYWJlbCsrLGk9b1sxXSxvPVswXTtjb250aW51ZTtjYXNlIDc6bz1zLm9wcy5wb3AoKSxzLnRyeXMucG9wKCk7Y29udGludWU7ZGVmYXVsdDppZighKHI9cy50cnlzLChyPXIubGVuZ3RoPjAmJnJbci5sZW5ndGgtMV0pfHw2IT09b1swXSYmMiE9PW9bMF0pKXtzPTA7Y29udGludWV9aWYoMz09PW9bMF0mJighcnx8b1sxXT5yWzBdJiZvWzFdPHJbM10pKXtzLmxhYmVsPW9bMV07YnJlYWt9aWYoNj09PW9bMF0mJnMubGFiZWw8clsxXSl7cy5sYWJlbD1yWzFdLHI9bzticmVha31pZihyJiZzLmxhYmVsPHJbMl0pe3MubGFiZWw9clsyXSxzLm9wcy5wdXNoKG8pO2JyZWFrfXJbMl0mJnMub3BzLnBvcCgpLHMudHJ5cy5wb3AoKTtjb250aW51ZX1vPWUuY2FsbCh0LHMpfWNhdGNoKHQpe289WzYsdF0saT0wfWZpbmFsbHl7bj1yPTB9aWYoNSZvWzBdKXRocm93IG9bMV07cmV0dXJue3ZhbHVlOm9bMF0/b1sxXTp2b2lkIDAsZG9uZTohMH19KFtvLGFdKX19fSxsPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPTAsaT1lLmxlbmd0aCxyPXQubGVuZ3RoO248aTtuKysscisrKXRbcl09ZVtuXTtyZXR1cm4gdH0sYz1PYmplY3QuZGVmaW5lUHJvcGVydHksZj1PYmplY3QuZGVmaW5lUHJvcGVydGllcyxoPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzLGQ9T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyxwPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHksdj1PYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLGc9ZnVuY3Rpb24odCxlLG4pe3JldHVybiBlIGluIHQ/Yyh0LGUse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOm59KTp0W2VdPW59LG09ZnVuY3Rpb24odCxlKXtmb3IodmFyIG4gaW4gZXx8KGU9e30pKXAuY2FsbChlLG4pJiZnKHQsbixlW25dKTtpZihkKWZvcih2YXIgaT0wLHI9ZChlKTtpPHIubGVuZ3RoO2krKyl7bj1yW2ldO3YuY2FsbChlLG4pJiZnKHQsbixlW25dKX1yZXR1cm4gdH0seT1mdW5jdGlvbih0LGUpe3JldHVybiBmKHQsaChlKSl9LGI9InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJndpbmRvdy5fX1JFRFVYX0RFVlRPT0xTX0VYVEVOU0lPTl9DT01QT1NFX18/d2luZG93Ll9fUkVEVVhfREVWVE9PTFNfRVhURU5TSU9OX0NPTVBPU0VfXzpmdW5jdGlvbigpe2lmKDAhPT1hcmd1bWVudHMubGVuZ3RoKXJldHVybiJvYmplY3QiPT10eXBlb2YgYXJndW1lbnRzWzBdP28uY29tcG9zZTpvLmNvbXBvc2UuYXBwbHkobnVsbCxhcmd1bWVudHMpfTsidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmd2luZG93Ll9fUkVEVVhfREVWVE9PTFNfRVhURU5TSU9OX18mJndpbmRvdy5fX1JFRFVYX0RFVlRPT0xTX0VYVEVOU0lPTl9fO2Z1bmN0aW9uIF8odCl7aWYoIm9iamVjdCIhPXR5cGVvZiB0fHxudWxsPT09dClyZXR1cm4hMTtmb3IodmFyIGU9dDtudWxsIT09T2JqZWN0LmdldFByb3RvdHlwZU9mKGUpOyllPU9iamVjdC5nZXRQcm90b3R5cGVPZihlKTtyZXR1cm4gT2JqZWN0LmdldFByb3RvdHlwZU9mKHQpPT09ZX12YXIgdz1mdW5jdGlvbih0KXtmdW5jdGlvbiBlKCl7Zm9yKHZhciBuPVtdLGk9MDtpPGFyZ3VtZW50cy5sZW5ndGg7aSsrKW5baV09YXJndW1lbnRzW2ldO3ZhciByPXQuYXBwbHkodGhpcyxuKXx8dGhpcztyZXR1cm4gT2JqZWN0LnNldFByb3RvdHlwZU9mKHIsZS5wcm90b3R5cGUpLHJ9cmV0dXJuIGEoZSx0KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxTeW1ib2wuc3BlY2llcyx7Z2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGV9LGVudW1lcmFibGU6ITEsY29uZmlndXJhYmxlOiEwfSksCmUucHJvdG90eXBlLmNvbmNhdD1mdW5jdGlvbigpe2Zvcih2YXIgZT1bXSxuPTA7bjxhcmd1bWVudHMubGVuZ3RoO24rKyllW25dPWFyZ3VtZW50c1tuXTtyZXR1cm4gdC5wcm90b3R5cGUuY29uY2F0LmFwcGx5KHRoaXMsZSl9LGUucHJvdG90eXBlLnByZXBlbmQ9ZnVuY3Rpb24oKXtmb3IodmFyIHQ9W10sbj0wO248YXJndW1lbnRzLmxlbmd0aDtuKyspdFtuXT1hcmd1bWVudHNbbl07cmV0dXJuIDE9PT10Lmxlbmd0aCYmQXJyYXkuaXNBcnJheSh0WzBdKT9uZXcoZS5iaW5kLmFwcGx5KGUsbChbdm9pZCAwXSx0WzBdLmNvbmNhdCh0aGlzKSkpKTpuZXcoZS5iaW5kLmFwcGx5KGUsbChbdm9pZCAwXSx0LmNvbmNhdCh0aGlzKSkpKX0sZX0oQXJyYXkpO2Z1bmN0aW9uIHgoKXtyZXR1cm4gZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKHQpe3ZvaWQgMD09PXQmJih0PXt9KTt2YXIgZT10LnRodW5rLG49dm9pZCAwPT09ZXx8ZSxpPSh0LmltbXV0YWJsZUNoZWNrLHQuc2VyaWFsaXphYmxlQ2hlY2ssbmV3IHcpO24mJigiYm9vbGVhbiI9PXR5cGVvZiBuP2kucHVzaChzLmRlZmF1bHQpOmkucHVzaChzLmRlZmF1bHQud2l0aEV4dHJhQXJndW1lbnQobi5leHRyYUFyZ3VtZW50KSkpOzA7cmV0dXJuIGl9KHQpfX1mdW5jdGlvbiBPKHQpe3ZhciBlLG49eCgpLGk9dHx8e30scj1pLnJlZHVjZXIscz12b2lkIDA9PT1yP3ZvaWQgMDpyLGE9aS5taWRkbGV3YXJlLHU9dm9pZCAwPT09YT9uKCk6YSxjPWkuZGV2VG9vbHMsZj12b2lkIDA9PT1jfHxjLGg9aS5wcmVsb2FkZWRTdGF0ZSxkPXZvaWQgMD09PWg/dm9pZCAwOmgscD1pLmVuaGFuY2Vycyx2PXZvaWQgMD09PXA/dm9pZCAwOnA7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHMpZT1zO2Vsc2V7aWYoIV8ocykpdGhyb3cgbmV3IEVycm9yKCcicmVkdWNlciIgaXMgYSByZXF1aXJlZCBhcmd1bWVudCwgYW5kIG11c3QgYmUgYSBmdW5jdGlvbiBvciBhbiBvYmplY3Qgb2YgZnVuY3Rpb25zIHRoYXQgY2FuIGJlIHBhc3NlZCB0byBjb21iaW5lUmVkdWNlcnMnKTtlPSgwLG8uY29tYmluZVJlZHVjZXJzKShzKX12YXIgZz11OyJmdW5jdGlvbiI9PXR5cGVvZiBnJiYoZz1nKG4pKTt2YXIgeT1vLmFwcGx5TWlkZGxld2FyZS5hcHBseSh2b2lkIDAsZyksdz1vLmNvbXBvc2U7ZiYmKHc9YihtKHt0cmFjZTohMX0sIm9iamVjdCI9PXR5cGVvZiBmJiZmKSkpO3ZhciBPPVt5XTtBcnJheS5pc0FycmF5KHYpP089bChbeV0sdik6ImZ1bmN0aW9uIj09dHlwZW9mIHYmJihPPXYoTykpO3ZhciBFPXcuYXBwbHkodm9pZCAwLE8pO3JldHVybigwLG8uY3JlYXRlU3RvcmUpKGUsZCxFKX1mdW5jdGlvbiBFKHQsZSl7ZnVuY3Rpb24gbigpe2Zvcih2YXIgbj1bXSxpPTA7aTxhcmd1bWVudHMubGVuZ3RoO2krKyluW2ldPWFyZ3VtZW50c1tpXTtpZihlKXt2YXIgcj1lLmFwcGx5KHZvaWQgMCxuKTtpZighcil0aHJvdyBuZXcgRXJyb3IoInByZXBhcmVBY3Rpb24gZGlkIG5vdCByZXR1cm4gYW4gb2JqZWN0Iik7cmV0dXJuIG0obSh7dHlwZTp0LHBheWxvYWQ6ci5wYXlsb2FkfSwibWV0YSJpbiByJiZ7bWV0YTpyLm1ldGF9KSwiZXJyb3IiaW4gciYme2Vycm9yOnIuZXJyb3J9KX1yZXR1cm57dHlwZTp0LHBheWxvYWQ6blswXX19cmV0dXJuIG4udG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4iIit0fSxuLnR5cGU9dCxuLm1hdGNoPWZ1bmN0aW9uKGUpe3JldHVybiBlLnR5cGU9PT10fSxufWZ1bmN0aW9uIEModCl7dmFyIGUsbj17fSxpPVtdLHI9e2FkZENhc2U6ZnVuY3Rpb24odCxlKXt2YXIgaT0ic3RyaW5nIj09dHlwZW9mIHQ/dDp0LnR5cGU7aWYoaSBpbiBuKXRocm93IG5ldyBFcnJvcigiYWRkQ2FzZSBjYW5ub3QgYmUgY2FsbGVkIHdpdGggdHdvIHJlZHVjZXJzIGZvciB0aGUgc2FtZSBhY3Rpb24gdHlwZSIpO3JldHVybiBuW2ldPWUscn0sYWRkTWF0Y2hlcjpmdW5jdGlvbih0LGUpe3JldHVybiBpLnB1c2goe21hdGNoZXI6dCxyZWR1Y2VyOmV9KSxyfSxhZGREZWZhdWx0Q2FzZTpmdW5jdGlvbih0KXtyZXR1cm4gZT10LHJ9fTtyZXR1cm4gdChyKSxbbixpLGVdfWZ1bmN0aW9uIGsodCl7dmFyIGU9dC5uYW1lLG49dC5pbml0aWFsU3RhdGU7aWYoIWUpdGhyb3cgbmV3IEVycm9yKCJgbmFtZWAgaXMgYSByZXF1aXJlZCBvcHRpb24gZm9yIGNyZWF0ZVNsaWNlIik7dmFyIGk9dC5yZWR1Y2Vyc3x8e30sbz0iZnVuY3Rpb24iPT10eXBlb2YgdC5leHRyYVJlZHVjZXJzP0ModC5leHRyYVJlZHVjZXJzKTpbdC5leHRyYVJlZHVjZXJzXSxzPW9bMF0sYT12b2lkIDA9PT1zP3t9OnMsdT1vWzFdLGM9dm9pZCAwPT09dT9bXTp1LGY9b1syXSxoPXZvaWQgMD09PWY/dm9pZCAwOmYsZD1PYmplY3Qua2V5cyhpKSxwPXt9LHY9e30sZz17fTtkLmZvckVhY2goKGZ1bmN0aW9uKHQpe3ZhciBuLHIsbz1pW3RdLHM9ZSsiLyIrdDsicmVkdWNlciJpbiBvPyhuPW8ucmVkdWNlcixyPW8ucHJlcGFyZSk6bj1vLHBbdF09bix2W3NdPW4sZ1t0XT1yP0UocyxyKTpFKHMpfSkpO3ZhciB5PWZ1bmN0aW9uKHQsZSxuLGkpe3ZvaWQgMD09PW4mJihuPVtdKTt2YXIgbz0iZnVuY3Rpb24iPT10eXBlb2YgZT9DKGUpOltlLG4saV0scz1vWzBdLGE9b1sxXSx1PW9bMl0sYz0oMCxyLmRlZmF1bHQpKHQsKGZ1bmN0aW9uKCl7fSkpO3JldHVybiBmdW5jdGlvbih0LGUpe3ZvaWQgMD09PXQmJih0PWMpO3ZhciBuPWwoW3NbZS50eXBlXV0sYS5maWx0ZXIoKGZ1bmN0aW9uKHQpe3JldHVybigwLHQubWF0Y2hlcikoZSl9KSkubWFwKChmdW5jdGlvbih0KXtyZXR1cm4gdC5yZWR1Y2VyfSkpKTtyZXR1cm4gMD09PW4uZmlsdGVyKChmdW5jdGlvbih0KXtyZXR1cm4hIXR9KSkubGVuZ3RoJiYobj1bdV0pLG4ucmVkdWNlKChmdW5jdGlvbih0LG4pe2lmKG4pe3ZhciBpO2lmKCgwLHIuaXNEcmFmdCkodCkpcmV0dXJuIHZvaWQgMD09PShpPW4odCxlKSk/dDppO2lmKCgwLHIuaXNEcmFmdGFibGUpKHQpKXJldHVybigwLHIuZGVmYXVsdCkodCwoZnVuY3Rpb24odCl7cmV0dXJuIG4odCxlKX0pKTtpZih2b2lkIDA9PT0oaT1uKHQsZSkpKXtpZihudWxsPT09dClyZXR1cm4gdAo7dGhyb3cgRXJyb3IoIkEgY2FzZSByZWR1Y2VyIG9uIGEgbm9uLWRyYWZ0YWJsZSB2YWx1ZSBtdXN0IG5vdCByZXR1cm4gdW5kZWZpbmVkIil9cmV0dXJuIGl9cmV0dXJuIHR9KSx0KX19KG4sbShtKHt9LGEpLHYpLGMsaCk7cmV0dXJue25hbWU6ZSxyZWR1Y2VyOnksYWN0aW9uczpnLGNhc2VSZWR1Y2VyczpwfX12YXIgUz1mdW5jdGlvbih0KXt2b2lkIDA9PT10JiYodD0yMSk7Zm9yKHZhciBlPSIiLG49dDtuLS07KWUrPSJNb2R1bGVTeW1iaGFzT3duUHItMDEyMzQ1Njc4OUFCQ0RFRkdITlJWZmdjdGlVdnpfS3FZVEprTHhwWlhJalFXIls2NCpNYXRoLnJhbmRvbSgpfDBdO3JldHVybiBlfSxEPVsibmFtZSIsIm1lc3NhZ2UiLCJzdGFjayIsImNvZGUiXSxNPWZ1bmN0aW9uKHQsZSl7dGhpcy5wYXlsb2FkPXQsdGhpcy5tZXRhPWV9LFA9ZnVuY3Rpb24odCxlKXt0aGlzLnBheWxvYWQ9dCx0aGlzLm1ldGE9ZX0sQT1mdW5jdGlvbih0KXtpZigib2JqZWN0Ij09dHlwZW9mIHQmJm51bGwhPT10KXtmb3IodmFyIGU9e30sbj0wLGk9RDtuPGkubGVuZ3RoO24rKyl7dmFyIHI9aVtuXTsic3RyaW5nIj09dHlwZW9mIHRbcl0mJihlW3JdPXRbcl0pfXJldHVybiBlfXJldHVybnttZXNzYWdlOlN0cmluZyh0KX19O2Z1bmN0aW9uIGoodCxlLG4pe3ZhciBpPUUodCsiL2Z1bGZpbGxlZCIsKGZ1bmN0aW9uKHQsZSxuLGkpe3JldHVybntwYXlsb2FkOnQsbWV0YTp5KG0oe30saXx8e30pLHthcmc6bixyZXF1ZXN0SWQ6ZSxyZXF1ZXN0U3RhdHVzOiJmdWxmaWxsZWQifSl9fSkpLHI9RSh0KyIvcGVuZGluZyIsKGZ1bmN0aW9uKHQsZSxuKXtyZXR1cm57cGF5bG9hZDp2b2lkIDAsbWV0YTp5KG0oe30sbnx8e30pLHthcmc6ZSxyZXF1ZXN0SWQ6dCxyZXF1ZXN0U3RhdHVzOiJwZW5kaW5nIn0pfX0pKSxvPUUodCsiL3JlamVjdGVkIiwoZnVuY3Rpb24odCxlLGkscixvKXtyZXR1cm57cGF5bG9hZDpyLGVycm9yOihuJiZuLnNlcmlhbGl6ZUVycm9yfHxBKSh0fHwiUmVqZWN0ZWQiKSxtZXRhOnkobSh7fSxvfHx7fSkse2FyZzppLHJlcXVlc3RJZDplLHJlamVjdGVkV2l0aFZhbHVlOiEhcixyZXF1ZXN0U3RhdHVzOiJyZWplY3RlZCIsYWJvcnRlZDoiQWJvcnRFcnJvciI9PT0obnVsbD09dD92b2lkIDA6dC5uYW1lKSxjb25kaXRpb246IkNvbmRpdGlvbkVycm9yIj09PShudWxsPT10P3ZvaWQgMDp0Lm5hbWUpfSl9fSkpLHM9InVuZGVmaW5lZCIhPXR5cGVvZiBBYm9ydENvbnRyb2xsZXI/QWJvcnRDb250cm9sbGVyOmZ1bmN0aW9uKCl7ZnVuY3Rpb24gdCgpe3RoaXMuc2lnbmFsPXthYm9ydGVkOiExLGFkZEV2ZW50TGlzdGVuZXI6ZnVuY3Rpb24oKXt9LGRpc3BhdGNoRXZlbnQ6ZnVuY3Rpb24oKXtyZXR1cm4hMX0sb25hYm9ydDpmdW5jdGlvbigpe30scmVtb3ZlRXZlbnRMaXN0ZW5lcjpmdW5jdGlvbigpe319fXJldHVybiB0LnByb3RvdHlwZS5hYm9ydD1mdW5jdGlvbigpezB9LHR9KCk7cmV0dXJuIE9iamVjdC5hc3NpZ24oKGZ1bmN0aW9uKHQpe3JldHVybiBmdW5jdGlvbihhLGwsYyl7dmFyIGYsaCxkPShudWxsIT0oZj1udWxsPT1uP3ZvaWQgMDpuLmlkR2VuZXJhdG9yKT9mOlMpKCkscD1uZXcgcyx2PW5ldyBQcm9taXNlKChmdW5jdGlvbih0LGUpe3JldHVybiBwLnNpZ25hbC5hZGRFdmVudExpc3RlbmVyKCJhYm9ydCIsKGZ1bmN0aW9uKCl7cmV0dXJuIGUoe25hbWU6IkFib3J0RXJyb3IiLG1lc3NhZ2U6aHx8IkFib3J0ZWQifSl9KSl9KSksZz0hMTt2YXIgbT1mdW5jdGlvbigpe3JldHVybiBzPXRoaXMsZj1udWxsLGg9ZnVuY3Rpb24oKXt2YXIgcyxmLGg7cmV0dXJuIHUodGhpcywoZnVuY3Rpb24odSl7c3dpdGNoKHUubGFiZWwpe2Nhc2UgMDppZih1LnRyeXMucHVzaChbMCwyLCwzXSksbiYmbi5jb25kaXRpb24mJiExPT09bi5jb25kaXRpb24odCx7Z2V0U3RhdGU6bCxleHRyYTpjfSkpdGhyb3d7bmFtZToiQ29uZGl0aW9uRXJyb3IiLG1lc3NhZ2U6IkFib3J0ZWQgZHVlIHRvIGNvbmRpdGlvbiBjYWxsYmFjayByZXR1cm5pbmcgZmFsc2UuIn07cmV0dXJuIGc9ITAsYShyKGQsdCxudWxsPT0ocz1udWxsPT1uP3ZvaWQgMDpuLmdldFBlbmRpbmdNZXRhKT92b2lkIDA6cy5jYWxsKG4se3JlcXVlc3RJZDpkLGFyZzp0fSx7Z2V0U3RhdGU6bCxleHRyYTpjfSkpKSxbNCxQcm9taXNlLnJhY2UoW3YsUHJvbWlzZS5yZXNvbHZlKGUodCx7ZGlzcGF0Y2g6YSxnZXRTdGF0ZTpsLGV4dHJhOmMscmVxdWVzdElkOmQsc2lnbmFsOnAuc2lnbmFsLHJlamVjdFdpdGhWYWx1ZTpmdW5jdGlvbih0LGUpe3JldHVybiBuZXcgTSh0LGUpfSxmdWxmaWxsV2l0aFZhbHVlOmZ1bmN0aW9uKHQsZSl7cmV0dXJuIG5ldyBQKHQsZSl9fSkpLnRoZW4oKGZ1bmN0aW9uKGUpe2lmKGUgaW5zdGFuY2VvZiBNKXRocm93IGU7cmV0dXJuIGUgaW5zdGFuY2VvZiBQP2koZS5wYXlsb2FkLGQsdCxlLm1ldGEpOmkoZSxkLHQpfSkpXSldO2Nhc2UgMTpyZXR1cm4gZj11LnNlbnQoKSxbMywzXTtjYXNlIDI6cmV0dXJuIGg9dS5zZW50KCksZj1oIGluc3RhbmNlb2YgTT9vKG51bGwsZCx0LGgucGF5bG9hZCxoLm1ldGEpOm8oaCxkLHQpLFszLDNdO2Nhc2UgMzpyZXR1cm4gbiYmIW4uZGlzcGF0Y2hDb25kaXRpb25SZWplY3Rpb24mJm8ubWF0Y2goZikmJmYubWV0YS5jb25kaXRpb258fGEoZiksWzIsZl19fSkpfSxuZXcgUHJvbWlzZSgoZnVuY3Rpb24odCxlKXt2YXIgbj1mdW5jdGlvbih0KXt0cnl7cihoLm5leHQodCkpfWNhdGNoKHQpe2UodCl9fSxpPWZ1bmN0aW9uKHQpe3RyeXtyKGgudGhyb3codCkpfWNhdGNoKHQpe2UodCl9fSxyPWZ1bmN0aW9uKGUpe3JldHVybiBlLmRvbmU/dChlLnZhbHVlKTpQcm9taXNlLnJlc29sdmUoZS52YWx1ZSkudGhlbihuLGkpfTtyKChoPWguYXBwbHkocyxmKSkubmV4dCgpKX0pKTt2YXIgcyxmLGh9KCk7cmV0dXJuIE9iamVjdC5hc3NpZ24obSx7YWJvcnQ6ZnVuY3Rpb24odCl7ZyYmKGg9dCxwLmFib3J0KCkpfSxyZXF1ZXN0SWQ6ZCxhcmc6dCx1bndyYXA6ZnVuY3Rpb24oKXtyZXR1cm4gbS50aGVuKFQpfX0pfX0pLHtwZW5kaW5nOnIscmVqZWN0ZWQ6byxmdWxmaWxsZWQ6aSx0eXBlUHJlZml4OnR9KX1mdW5jdGlvbiBUKHQpewppZih0Lm1ldGEmJnQubWV0YS5yZWplY3RlZFdpdGhWYWx1ZSl0aHJvdyB0LnBheWxvYWQ7aWYodC5lcnJvcil0aHJvdyB0LmVycm9yO3JldHVybiB0LnBheWxvYWR9KDAsci5lbmFibGVFUzUpKCl9LDg1MzMzNih0LGUpe3ZhciBuLGkscjtpPVtlXSxuPWZ1bmN0aW9uKHQpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBlKHQpe2lmKEFycmF5LmlzQXJyYXkodCkpe2Zvcih2YXIgZT0wLG49QXJyYXkodC5sZW5ndGgpO2U8dC5sZW5ndGg7ZSsrKW5bZV09dFtlXTtyZXR1cm4gbn1yZXR1cm4gQXJyYXkuZnJvbSh0KX1PYmplY3QuZGVmaW5lUHJvcGVydHkodCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49ITE7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cpe3ZhciBpPXtnZXQgcGFzc2l2ZSgpe249ITB9fTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigidGVzdFBhc3NpdmUiLG51bGwsaSksd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRlc3RQYXNzaXZlIixudWxsLGkpfXZhciByPSJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiZ3aW5kb3cubmF2aWdhdG9yJiZ3aW5kb3cubmF2aWdhdG9yLnBsYXRmb3JtJiYvaVAoYWR8aG9uZXxvZCkvLnRlc3Qod2luZG93Lm5hdmlnYXRvci5wbGF0Zm9ybSksbz1bXSxzPSExLGE9LTEsdT12b2lkIDAsbD12b2lkIDAsYz1mdW5jdGlvbih0KXtyZXR1cm4gby5zb21lKChmdW5jdGlvbihlKXtyZXR1cm4hKCFlLm9wdGlvbnMuYWxsb3dUb3VjaE1vdmV8fCFlLm9wdGlvbnMuYWxsb3dUb3VjaE1vdmUodCkpfSkpfSxmPWZ1bmN0aW9uKHQpe3ZhciBlPXR8fHdpbmRvdy5ldmVudDtyZXR1cm4hIWMoZS50YXJnZXQpfHwxPGUudG91Y2hlcy5sZW5ndGh8fChlLnByZXZlbnREZWZhdWx0JiZlLnByZXZlbnREZWZhdWx0KCksITEpfSxoPWZ1bmN0aW9uKCl7c2V0VGltZW91dCgoZnVuY3Rpb24oKXt2b2lkIDAhPT1sJiYoZG9jdW1lbnQuYm9keS5zdHlsZS5wYWRkaW5nUmlnaHQ9bCxsPXZvaWQgMCksdm9pZCAwIT09dSYmKGRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3c9dSx1PXZvaWQgMCl9KSl9O3QuZGlzYWJsZUJvZHlTY3JvbGw9ZnVuY3Rpb24odCxpKXtpZihyKXtpZighdClyZXR1cm4gdm9pZCBjb25zb2xlLmVycm9yKCJkaXNhYmxlQm9keVNjcm9sbCB1bnN1Y2Nlc3NmdWwgLSB0YXJnZXRFbGVtZW50IG11c3QgYmUgcHJvdmlkZWQgd2hlbiBjYWxsaW5nIGRpc2FibGVCb2R5U2Nyb2xsIG9uIElPUyBkZXZpY2VzLiIpO2lmKHQmJiFvLnNvbWUoKGZ1bmN0aW9uKGUpe3JldHVybiBlLnRhcmdldEVsZW1lbnQ9PT10fSkpKXt2YXIgaD17dGFyZ2V0RWxlbWVudDp0LG9wdGlvbnM6aXx8e319O289W10uY29uY2F0KGUobyksW2hdKSx0Lm9udG91Y2hzdGFydD1mdW5jdGlvbih0KXsxPT09dC50YXJnZXRUb3VjaGVzLmxlbmd0aCYmKGE9dC50YXJnZXRUb3VjaGVzWzBdLmNsaWVudFkpfSx0Lm9udG91Y2htb3ZlPWZ1bmN0aW9uKGUpe3ZhciBuLGkscixvOzE9PT1lLnRhcmdldFRvdWNoZXMubGVuZ3RoJiYoaT10LG89KG49ZSkudGFyZ2V0VG91Y2hlc1swXS5jbGllbnRZLWEsIWMobi50YXJnZXQpJiYoaSYmMD09PWkuc2Nyb2xsVG9wJiYwPG98fChyPWkpJiZyLnNjcm9sbEhlaWdodC1yLnNjcm9sbFRvcDw9ci5jbGllbnRIZWlnaHQmJm88MD9mKG4pOm4uc3RvcFByb3BhZ2F0aW9uKCkpKX0sc3x8KGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsZixuP3twYXNzaXZlOiExfTp2b2lkIDApLHM9ITApfX1lbHNle3A9aSxzZXRUaW1lb3V0KChmdW5jdGlvbigpe2lmKHZvaWQgMD09PWwpe3ZhciB0PSEhcCYmITA9PT1wLnJlc2VydmVTY3JvbGxCYXJHYXAsZT13aW5kb3cuaW5uZXJXaWR0aC1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGg7dCYmMDxlJiYobD1kb2N1bWVudC5ib2R5LnN0eWxlLnBhZGRpbmdSaWdodCxkb2N1bWVudC5ib2R5LnN0eWxlLnBhZGRpbmdSaWdodD1lKyJweCIpfXZvaWQgMD09PXUmJih1PWRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3csZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvdz0iaGlkZGVuIil9KSk7dmFyIGQ9e3RhcmdldEVsZW1lbnQ6dCxvcHRpb25zOml8fHt9fTtvPVtdLmNvbmNhdChlKG8pLFtkXSl9dmFyIHB9LHQuY2xlYXJBbGxCb2R5U2Nyb2xsTG9ja3M9ZnVuY3Rpb24oKXtyPyhvLmZvckVhY2goKGZ1bmN0aW9uKHQpe3QudGFyZ2V0RWxlbWVudC5vbnRvdWNoc3RhcnQ9bnVsbCx0LnRhcmdldEVsZW1lbnQub250b3VjaG1vdmU9bnVsbH0pKSxzJiYoZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIixmLG4/e3Bhc3NpdmU6ITF9OnZvaWQgMCkscz0hMSksbz1bXSxhPS0xKTooaCgpLG89W10pfSx0LmVuYWJsZUJvZHlTY3JvbGw9ZnVuY3Rpb24odCl7aWYocil7aWYoIXQpcmV0dXJuIHZvaWQgY29uc29sZS5lcnJvcigiZW5hYmxlQm9keVNjcm9sbCB1bnN1Y2Nlc3NmdWwgLSB0YXJnZXRFbGVtZW50IG11c3QgYmUgcHJvdmlkZWQgd2hlbiBjYWxsaW5nIGVuYWJsZUJvZHlTY3JvbGwgb24gSU9TIGRldmljZXMuIik7dC5vbnRvdWNoc3RhcnQ9bnVsbCx0Lm9udG91Y2htb3ZlPW51bGwsbz1vLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIGUudGFyZ2V0RWxlbWVudCE9PXR9KSkscyYmMD09PW8ubGVuZ3RoJiYoZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIixmLG4/e3Bhc3NpdmU6ITF9OnZvaWQgMCkscz0hMSl9ZWxzZSAxPT09by5sZW5ndGgmJm9bMF0udGFyZ2V0RWxlbWVudD09PXQ/KGgoKSxvPVtdKTpvPW8uZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gZS50YXJnZXRFbGVtZW50IT09dH0pKX19LHZvaWQgMD09PShyPSJmdW5jdGlvbiI9PXR5cGVvZiBuP24uYXBwbHkoZSxpKTpuKXx8KHQuZXhwb3J0cz1yKX0sMzI3MjM5KHQsZSxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaSh0KXtmb3IodmFyIGU9YXJndW1lbnRzLmxlbmd0aCxuPUFycmF5KGU+MT9lLTE6MCksaT0xO2k8ZTtpKyspbltpLTFdPWFyZ3VtZW50c1tpXQo7dGhyb3cgRXJyb3IoIltJbW1lcl0gbWluaWZpZWQgZXJyb3IgbnI6ICIrdCsobi5sZW5ndGg/IiAiK24ubWFwKChmdW5jdGlvbih0KXtyZXR1cm4iJyIrdCsiJyJ9KSkuam9pbigiLCIpOiIiKSsiLiBGaW5kIHRoZSBmdWxsIGVycm9yIGF0OiBodHRwczovL2JpdC5seS8zY1hFS1dmIil9ZnVuY3Rpb24gcih0KXtyZXR1cm4hIXQmJiEhdFtYXX1mdW5jdGlvbiBvKHQpe3JldHVybiEhdCYmKGZ1bmN0aW9uKHQpe2lmKCF0fHwib2JqZWN0IiE9dHlwZW9mIHQpcmV0dXJuITE7dmFyIGU9T2JqZWN0LmdldFByb3RvdHlwZU9mKHQpO2lmKG51bGw9PT1lKXJldHVybiEwO3ZhciBuPU9iamVjdC5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsImNvbnN0cnVjdG9yIikmJmUuY29uc3RydWN0b3I7cmV0dXJuIG49PT1PYmplY3R8fCJmdW5jdGlvbiI9PXR5cGVvZiBuJiZGdW5jdGlvbi50b1N0cmluZy5jYWxsKG4pPT09WX0odCl8fEFycmF5LmlzQXJyYXkodCl8fCEhdFtLXXx8ISF0LmNvbnN0cnVjdG9yW0tdfHxkKHQpfHxwKHQpKX1mdW5jdGlvbiBzKHQpe3JldHVybiByKHQpfHxpKDIzLHQpLHRbWF0udH1mdW5jdGlvbiBhKHQsZSxuKXt2b2lkIDA9PT1uJiYobj0hMSksMD09PXUodCk/KG4/T2JqZWN0LmtleXM6JCkodCkuZm9yRWFjaCgoZnVuY3Rpb24oaSl7biYmInN5bWJvbCI9PXR5cGVvZiBpfHxlKGksdFtpXSx0KX0pKTp0LmZvckVhY2goKGZ1bmN0aW9uKG4saSl7cmV0dXJuIGUoaSxuLHQpfSkpfWZ1bmN0aW9uIHUodCl7dmFyIGU9dFtYXTtyZXR1cm4gZT9lLmk+Mz9lLmktNDplLmk6QXJyYXkuaXNBcnJheSh0KT8xOmQodCk/MjpwKHQpPzM6MH1mdW5jdGlvbiBsKHQsZSl7cmV0dXJuIDI9PT11KHQpP3QuaGFzKGUpOk9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0LGUpfWZ1bmN0aW9uIGModCxlKXtyZXR1cm4gMj09PXUodCk/dC5nZXQoZSk6dFtlXX1mdW5jdGlvbiBmKHQsZSxuKXt2YXIgaT11KHQpOzI9PT1pP3Quc2V0KGUsbik6Mz09PWk/KHQuZGVsZXRlKGUpLHQuYWRkKG4pKTp0W2VdPW59ZnVuY3Rpb24gaCh0LGUpe3JldHVybiB0PT09ZT8wIT09dHx8MS90PT0xL2U6dCE9dCYmZSE9ZX1mdW5jdGlvbiBkKHQpe3JldHVybiBVJiZ0IGluc3RhbmNlb2YgTWFwfWZ1bmN0aW9uIHAodCl7cmV0dXJuIHomJnQgaW5zdGFuY2VvZiBTZXR9ZnVuY3Rpb24gdih0KXtyZXR1cm4gdC5vfHx0LnR9ZnVuY3Rpb24gZyh0KXtpZihBcnJheS5pc0FycmF5KHQpKXJldHVybiBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbCh0KTt2YXIgZT1RKHQpO2RlbGV0ZSBlW1hdO2Zvcih2YXIgbj0kKGUpLGk9MDtpPG4ubGVuZ3RoO2krKyl7dmFyIHI9bltpXSxvPWVbcl07ITE9PT1vLndyaXRhYmxlJiYoby53cml0YWJsZT0hMCxvLmNvbmZpZ3VyYWJsZT0hMCksKG8uZ2V0fHxvLnNldCkmJihlW3JdPXtjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsZW51bWVyYWJsZTpvLmVudW1lcmFibGUsdmFsdWU6dFtyXX0pfXJldHVybiBPYmplY3QuY3JlYXRlKE9iamVjdC5nZXRQcm90b3R5cGVPZih0KSxlKX1mdW5jdGlvbiBtKHQsZSl7cmV0dXJuIHZvaWQgMD09PWUmJihlPSExKSxiKHQpfHxyKHQpfHwhbyh0KXx8KHUodCk+MSYmKHQuc2V0PXQuYWRkPXQuY2xlYXI9dC5kZWxldGU9eSksT2JqZWN0LmZyZWV6ZSh0KSxlJiZhKHQsKGZ1bmN0aW9uKHQsZSl7cmV0dXJuIG0oZSwhMCl9KSwhMCkpLHR9ZnVuY3Rpb24geSgpe2koMil9ZnVuY3Rpb24gYih0KXtyZXR1cm4gbnVsbD09dHx8Im9iamVjdCIhPXR5cGVvZiB0fHxPYmplY3QuaXNGcm96ZW4odCl9ZnVuY3Rpb24gXyh0KXt2YXIgZT1KW3RdO3JldHVybiBlfHxpKDE4LHQpLGV9ZnVuY3Rpb24gdyh0LGUpe0pbdF18fChKW3RdPWUpfWZ1bmN0aW9uIHgoKXtyZXR1cm4gQn1mdW5jdGlvbiBPKHQsZSl7ZSYmKF8oIlBhdGNoZXMiKSx0LnU9W10sdC5zPVtdLHQudj1lKX1mdW5jdGlvbiBFKHQpe0ModCksdC5wLmZvckVhY2goUyksdC5wPW51bGx9ZnVuY3Rpb24gQyh0KXt0PT09QiYmKEI9dC5sKX1mdW5jdGlvbiBrKHQpe3JldHVybiBCPXtwOltdLGw6QixoOnQsbTohMCxfOjB9fWZ1bmN0aW9uIFModCl7dmFyIGU9dFtYXTswPT09ZS5pfHwxPT09ZS5pP2UuaigpOmUuTz0hMH1mdW5jdGlvbiBEKHQsZSl7ZS5fPWUucC5sZW5ndGg7dmFyIG49ZS5wWzBdLHI9dm9pZCAwIT09dCYmdCE9PW47cmV0dXJuIGUuaC5nfHxfKCJFUzUiKS5TKGUsdCxyKSxyPyhuW1hdLlAmJihFKGUpLGkoNCkpLG8odCkmJih0PU0oZSx0KSxlLmx8fEEoZSx0KSksZS51JiZfKCJQYXRjaGVzIikuTShuW1hdLHQsZS51LGUucykpOnQ9TShlLG4sW10pLEUoZSksZS51JiZlLnYoZS51LGUucyksdCE9PUc/dDp2b2lkIDB9ZnVuY3Rpb24gTSh0LGUsbil7aWYoYihlKSlyZXR1cm4gZTt2YXIgaT1lW1hdO2lmKCFpKXJldHVybiBhKGUsKGZ1bmN0aW9uKHIsbyl7cmV0dXJuIFAodCxpLGUscixvLG4pfSksITApLGU7aWYoaS5BIT09dClyZXR1cm4gZTtpZighaS5QKXJldHVybiBBKHQsaS50LCEwKSxpLnQ7aWYoIWkuSSl7aS5JPSEwLGkuQS5fLS07dmFyIHI9ND09PWkuaXx8NT09PWkuaT9pLm89ZyhpLmspOmkubzthKDM9PT1pLmk/bmV3IFNldChyKTpyLChmdW5jdGlvbihlLG8pe3JldHVybiBQKHQsaSxyLGUsbyxuKX0pKSxBKHQsciwhMSksbiYmdC51JiZfKCJQYXRjaGVzIikuUihpLG4sdC51LHQucyl9cmV0dXJuIGkub31mdW5jdGlvbiBQKHQsZSxuLGkscyxhKXtpZihyKHMpKXt2YXIgdT1NKHQscyxhJiZlJiYzIT09ZS5pJiYhbChlLkQsaSk/YS5jb25jYXQoaSk6dm9pZCAwKTtpZihmKG4saSx1KSwhcih1KSlyZXR1cm47dC5tPSExfWlmKG8ocykmJiFiKHMpKXtpZighdC5oLkYmJnQuXzwxKXJldHVybjtNKHQscyksZSYmZS5BLmx8fEEodCxzKX19ZnVuY3Rpb24gQSh0LGUsbil7dm9pZCAwPT09biYmKG49ITEpLHQuaC5GJiZ0Lm0mJm0oZSxuKX1mdW5jdGlvbiBqKHQsZSl7dmFyIG49dFtYXTtyZXR1cm4obj92KG4pOnQpW2VdfWZ1bmN0aW9uIFQodCxlKXtpZihlIGluIHQpZm9yKHZhciBuPU9iamVjdC5nZXRQcm90b3R5cGVPZih0KTtuOyl7CnZhciBpPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobixlKTtpZihpKXJldHVybiBpO249T2JqZWN0LmdldFByb3RvdHlwZU9mKG4pfX1mdW5jdGlvbiBOKHQpe3QuUHx8KHQuUD0hMCx0LmwmJk4odC5sKSl9ZnVuY3Rpb24gSSh0KXt0Lm98fCh0Lm89Zyh0LnQpKX1mdW5jdGlvbiBMKHQsZSxuKXt2YXIgaT1kKGUpP18oIk1hcFNldCIpLk4oZSxuKTpwKGUpP18oIk1hcFNldCIpLlQoZSxuKTp0Lmc/ZnVuY3Rpb24odCxlKXt2YXIgbj1BcnJheS5pc0FycmF5KHQpLGk9e2k6bj8xOjAsQTplP2UuQTp4KCksUDohMSxJOiExLEQ6e30sbDplLHQsazpudWxsLG86bnVsbCxqOm51bGwsQzohMX0scj1pLG89WjtuJiYocj1baV0sbz10dCk7dmFyIHM9UHJveHkucmV2b2NhYmxlKHIsbyksYT1zLnJldm9rZSx1PXMucHJveHk7cmV0dXJuIGkuaz11LGkuaj1hLHV9KGUsbik6XygiRVM1IikuSihlLG4pO3JldHVybihuP24uQTp4KCkpLnAucHVzaChpKSxpfWZ1bmN0aW9uIFYodCl7cmV0dXJuIHIodCl8fGkoMjIsdCksZnVuY3Rpb24gdChlKXtpZighbyhlKSlyZXR1cm4gZTt2YXIgbixpPWVbWF0scj11KGUpO2lmKGkpe2lmKCFpLlAmJihpLmk8NHx8IV8oIkVTNSIpLksoaSkpKXJldHVybiBpLnQ7aS5JPSEwLG49UihlLHIpLGkuST0hMX1lbHNlIG49UihlLHIpO3JldHVybiBhKG4sKGZ1bmN0aW9uKGUscil7aSYmYyhpLnQsZSk9PT1yfHxmKG4sZSx0KHIpKX0pKSwzPT09cj9uZXcgU2V0KG4pOm59KHQpfWZ1bmN0aW9uIFIodCxlKXtzd2l0Y2goZSl7Y2FzZSAyOnJldHVybiBuZXcgTWFwKHQpO2Nhc2UgMzpyZXR1cm4gQXJyYXkuZnJvbSh0KX1yZXR1cm4gZyh0KX1mdW5jdGlvbiBXKCl7ZnVuY3Rpb24gdCh0LGUpe3ZhciBuPW9bdF07cmV0dXJuIG4/bi5lbnVtZXJhYmxlPWU6b1t0XT1uPXtjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTplLGdldDpmdW5jdGlvbigpe3ZhciBlPXRoaXNbWF07cmV0dXJuIFouZ2V0KGUsdCl9LHNldDpmdW5jdGlvbihlKXt2YXIgbj10aGlzW1hdO1ouc2V0KG4sdCxlKX19LG59ZnVuY3Rpb24gZSh0KXtmb3IodmFyIGU9dC5sZW5ndGgtMTtlPj0wO2UtLSl7dmFyIHI9dFtlXVtYXTtpZighci5QKXN3aXRjaChyLmkpe2Nhc2UgNTppKHIpJiZOKHIpO2JyZWFrO2Nhc2UgNDpuKHIpJiZOKHIpfX19ZnVuY3Rpb24gbih0KXtmb3IodmFyIGU9dC50LG49dC5rLGk9JChuKSxyPWkubGVuZ3RoLTE7cj49MDtyLS0pe3ZhciBvPWlbcl07aWYobyE9PVgpe3ZhciBzPWVbb107aWYodm9pZCAwPT09cyYmIWwoZSxvKSlyZXR1cm4hMDt2YXIgYT1uW29dLHU9YSYmYVtYXTtpZih1P3UudCE9PXM6IWgoYSxzKSlyZXR1cm4hMH19dmFyIGM9ISFlW1hdO3JldHVybiBpLmxlbmd0aCE9PSQoZSkubGVuZ3RoKyhjPzA6MSl9ZnVuY3Rpb24gaSh0KXt2YXIgZT10Lms7aWYoZS5sZW5ndGghPT10LnQubGVuZ3RoKXJldHVybiEwO3ZhciBuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZSxlLmxlbmd0aC0xKTtyZXR1cm4hKCFufHxuLmdldCl9dmFyIG89e307dygiRVM1Iix7SjpmdW5jdGlvbihlLG4pe3ZhciBpPUFycmF5LmlzQXJyYXkoZSkscj1mdW5jdGlvbihlLG4pe2lmKGUpe2Zvcih2YXIgaT1BcnJheShuLmxlbmd0aCkscj0wO3I8bi5sZW5ndGg7cisrKU9iamVjdC5kZWZpbmVQcm9wZXJ0eShpLCIiK3IsdChyLCEwKSk7cmV0dXJuIGl9dmFyIG89UShuKTtkZWxldGUgb1tYXTtmb3IodmFyIHM9JChvKSxhPTA7YTxzLmxlbmd0aDthKyspe3ZhciB1PXNbYV07b1t1XT10KHUsZXx8ISFvW3VdLmVudW1lcmFibGUpfXJldHVybiBPYmplY3QuY3JlYXRlKE9iamVjdC5nZXRQcm90b3R5cGVPZihuKSxvKX0oaSxlKSxvPXtpOmk/NTo0LEE6bj9uLkE6eCgpLFA6ITEsSTohMSxEOnt9LGw6bix0OmUsazpyLG86bnVsbCxPOiExLEM6ITF9O3JldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkocixYLHt2YWx1ZTpvLHdyaXRhYmxlOiEwfSkscn0sUzpmdW5jdGlvbih0LG4sbyl7bz9yKG4pJiZuW1hdLkE9PT10JiZlKHQucCk6KHQudSYmZnVuY3Rpb24gdChlKXtpZihlJiYib2JqZWN0Ij09dHlwZW9mIGUpe3ZhciBuPWVbWF07aWYobil7dmFyIHI9bi50LG89bi5rLHM9bi5ELHU9bi5pO2lmKDQ9PT11KWEobywoZnVuY3Rpb24oZSl7ZSE9PVgmJih2b2lkIDAhPT1yW2VdfHxsKHIsZSk/c1tlXXx8dChvW2VdKTooc1tlXT0hMCxOKG4pKSl9KSksYShyLChmdW5jdGlvbih0KXt2b2lkIDAhPT1vW3RdfHxsKG8sdCl8fChzW3RdPSExLE4obikpfSkpO2Vsc2UgaWYoNT09PXUpe2lmKGkobikmJihOKG4pLHMubGVuZ3RoPSEwKSxvLmxlbmd0aDxyLmxlbmd0aClmb3IodmFyIGM9by5sZW5ndGg7YzxyLmxlbmd0aDtjKyspc1tjXT0hMTtlbHNlIGZvcih2YXIgZj1yLmxlbmd0aDtmPG8ubGVuZ3RoO2YrKylzW2ZdPSEwO2Zvcih2YXIgaD1NYXRoLm1pbihvLmxlbmd0aCxyLmxlbmd0aCksZD0wO2Q8aDtkKyspdm9pZCAwPT09c1tkXSYmdChvW2RdKX19fX0odC5wWzBdKSxlKHQucCkpfSxLOmZ1bmN0aW9uKHQpe3JldHVybiA0PT09dC5pP24odCk6aSh0KX19KX1uLmQoZSx7ZGVmYXVsdDooKT0+cnQsZW5hYmxlRVM1OigpPT5XLGlzRHJhZnQ6KCk9PnIsaXNEcmFmdGFibGU6KCk9Pm8sb3JpZ2luYWw6KCk9PnN9KTt2YXIgRixCLEg9InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sKCJ4IiksVT0idW5kZWZpbmVkIiE9dHlwZW9mIE1hcCx6PSJ1bmRlZmluZWQiIT10eXBlb2YgU2V0LHE9InVuZGVmaW5lZCIhPXR5cGVvZiBQcm94eSYmdm9pZCAwIT09UHJveHkucmV2b2NhYmxlJiYidW5kZWZpbmVkIiE9dHlwZW9mIFJlZmxlY3QsRz1IP1N5bWJvbC5mb3IoImltbWVyLW5vdGhpbmciKTooKEY9e30pWyJpbW1lci1ub3RoaW5nIl09ITAsRiksSz1IP1N5bWJvbC5mb3IoImltbWVyLWRyYWZ0YWJsZSIpOiJfXyRpbW1lcl9kcmFmdGFibGUiLFg9SD9TeW1ib2wuZm9yKCJpbW1lci1zdGF0ZSIpOiJfXyRpbW1lcl9zdGF0ZSIsWT0oInVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJlN5bWJvbC5pdGVyYXRvciwKIiIrT2JqZWN0LnByb3RvdHlwZS5jb25zdHJ1Y3RvciksJD0idW5kZWZpbmVkIiE9dHlwZW9mIFJlZmxlY3QmJlJlZmxlY3Qub3duS2V5cz9SZWZsZWN0Lm93bktleXM6dm9pZCAwIT09T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scz9mdW5jdGlvbih0KXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXModCkuY29uY2F0KE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModCkpfTpPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyxRPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzfHxmdW5jdGlvbih0KXt2YXIgZT17fTtyZXR1cm4gJCh0KS5mb3JFYWNoKChmdW5jdGlvbihuKXtlW25dPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxuKX0pKSxlfSxKPXt9LFo9e2dldDpmdW5jdGlvbih0LGUpe2lmKGU9PT1YKXJldHVybiB0O3ZhciBuPXYodCk7aWYoIWwobixlKSlyZXR1cm4gZnVuY3Rpb24odCxlLG4pe3ZhciBpLHI9VChlLG4pO3JldHVybiByPyJ2YWx1ZSJpbiByP3IudmFsdWU6bnVsbD09PShpPXIuZ2V0KXx8dm9pZCAwPT09aT92b2lkIDA6aS5jYWxsKHQuayk6dm9pZCAwfSh0LG4sZSk7dmFyIGk9bltlXTtyZXR1cm4gdC5JfHwhbyhpKT9pOmk9PT1qKHQudCxlKT8oSSh0KSx0Lm9bZV09TCh0LkEuaCxpLHQpKTppfSxoYXM6ZnVuY3Rpb24odCxlKXtyZXR1cm4gZSBpbiB2KHQpfSxvd25LZXlzOmZ1bmN0aW9uKHQpe3JldHVybiBSZWZsZWN0Lm93bktleXModih0KSl9LHNldDpmdW5jdGlvbih0LGUsbil7dmFyIGk9VCh2KHQpLGUpO2lmKG51bGw9PWk/dm9pZCAwOmkuc2V0KXJldHVybiBpLnNldC5jYWxsKHQuayxuKSwhMDtpZighdC5QKXt2YXIgcj1qKHYodCksZSksbz1udWxsPT1yP3ZvaWQgMDpyW1hdO2lmKG8mJm8udD09PW4pcmV0dXJuIHQub1tlXT1uLHQuRFtlXT0hMSwhMDtpZihoKG4scikmJih2b2lkIDAhPT1ufHxsKHQudCxlKSkpcmV0dXJuITA7SSh0KSxOKHQpfXJldHVybiB0Lm9bZV09PT1uJiYibnVtYmVyIiE9dHlwZW9mIG4mJih2b2lkIDAhPT1ufHxlIGluIHQubyl8fCh0Lm9bZV09bix0LkRbZV09ITAsITApfSxkZWxldGVQcm9wZXJ0eTpmdW5jdGlvbih0LGUpe3JldHVybiB2b2lkIDAhPT1qKHQudCxlKXx8ZSBpbiB0LnQ/KHQuRFtlXT0hMSxJKHQpLE4odCkpOmRlbGV0ZSB0LkRbZV0sdC5vJiZkZWxldGUgdC5vW2VdLCEwfSxnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I6ZnVuY3Rpb24odCxlKXt2YXIgbj12KHQpLGk9UmVmbGVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobixlKTtyZXR1cm4gaT97d3JpdGFibGU6ITAsY29uZmlndXJhYmxlOjEhPT10Lml8fCJsZW5ndGgiIT09ZSxlbnVtZXJhYmxlOmkuZW51bWVyYWJsZSx2YWx1ZTpuW2VdfTppfSxkZWZpbmVQcm9wZXJ0eTpmdW5jdGlvbigpe2koMTEpfSxnZXRQcm90b3R5cGVPZjpmdW5jdGlvbih0KXtyZXR1cm4gT2JqZWN0LmdldFByb3RvdHlwZU9mKHQudCl9LHNldFByb3RvdHlwZU9mOmZ1bmN0aW9uKCl7aSgxMil9fSx0dD17fTthKFosKGZ1bmN0aW9uKHQsZSl7dHRbdF09ZnVuY3Rpb24oKXtyZXR1cm4gYXJndW1lbnRzWzBdPWFyZ3VtZW50c1swXVswXSxlLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19KSksdHQuZGVsZXRlUHJvcGVydHk9ZnVuY3Rpb24odCxlKXtyZXR1cm4gWi5kZWxldGVQcm9wZXJ0eS5jYWxsKHRoaXMsdFswXSxlKX0sdHQuc2V0PWZ1bmN0aW9uKHQsZSxuKXtyZXR1cm4gWi5zZXQuY2FsbCh0aGlzLHRbMF0sZSxuLHRbMF0pfTt2YXIgZXQ9ZnVuY3Rpb24oKXtmdW5jdGlvbiB0KHQpe3ZhciBlPXRoaXM7dGhpcy5nPXEsdGhpcy5GPSEwLHRoaXMucHJvZHVjZT1mdW5jdGlvbih0LG4scil7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHQmJiJmdW5jdGlvbiIhPXR5cGVvZiBuKXt2YXIgcz1uO249dDt2YXIgYT1lO3JldHVybiBmdW5jdGlvbih0KXt2YXIgZT10aGlzO3ZvaWQgMD09PXQmJih0PXMpO2Zvcih2YXIgaT1hcmd1bWVudHMubGVuZ3RoLHI9QXJyYXkoaT4xP2ktMTowKSxvPTE7bzxpO28rKylyW28tMV09YXJndW1lbnRzW29dO3JldHVybiBhLnByb2R1Y2UodCwoZnVuY3Rpb24odCl7dmFyIGk7cmV0dXJuKGk9bikuY2FsbC5hcHBseShpLFtlLHRdLmNvbmNhdChyKSl9KSl9fXZhciB1O2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBuJiZpKDYpLHZvaWQgMCE9PXImJiJmdW5jdGlvbiIhPXR5cGVvZiByJiZpKDcpLG8odCkpe3ZhciBsPWsoZSksYz1MKGUsdCx2b2lkIDApLGY9ITA7dHJ5e3U9bihjKSxmPSExfWZpbmFsbHl7Zj9FKGwpOkMobCl9cmV0dXJuInVuZGVmaW5lZCIhPXR5cGVvZiBQcm9taXNlJiZ1IGluc3RhbmNlb2YgUHJvbWlzZT91LnRoZW4oKGZ1bmN0aW9uKHQpe3JldHVybiBPKGwsciksRCh0LGwpfSksKGZ1bmN0aW9uKHQpe3Rocm93IEUobCksdH0pKTooTyhsLHIpLEQodSxsKSl9aWYoIXR8fCJvYmplY3QiIT10eXBlb2YgdCl7aWYoKHU9bih0KSk9PT1HKXJldHVybjtyZXR1cm4gdm9pZCAwPT09dSYmKHU9dCksZS5GJiZtKHUsITApLHV9aSgyMSx0KX0sdGhpcy5wcm9kdWNlV2l0aFBhdGNoZXM9ZnVuY3Rpb24odCxuKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgdD9mdW5jdGlvbihuKXtmb3IodmFyIGk9YXJndW1lbnRzLmxlbmd0aCxyPUFycmF5KGk+MT9pLTE6MCksbz0xO288aTtvKyspcltvLTFdPWFyZ3VtZW50c1tvXTtyZXR1cm4gZS5wcm9kdWNlV2l0aFBhdGNoZXMobiwoZnVuY3Rpb24oZSl7cmV0dXJuIHQuYXBwbHkodm9pZCAwLFtlXS5jb25jYXQocikpfSkpfTpbZS5wcm9kdWNlKHQsbiwoZnVuY3Rpb24odCxlKXtpPXQscj1lfSkpLGkscl07dmFyIGkscn0sImJvb2xlYW4iPT10eXBlb2YobnVsbD09dD92b2lkIDA6dC51c2VQcm94aWVzKSYmdGhpcy5zZXRVc2VQcm94aWVzKHQudXNlUHJveGllcyksImJvb2xlYW4iPT10eXBlb2YobnVsbD09dD92b2lkIDA6dC5hdXRvRnJlZXplKSYmdGhpcy5zZXRBdXRvRnJlZXplKHQuYXV0b0ZyZWV6ZSl9dmFyIGU9dC5wcm90b3R5cGU7cmV0dXJuIGUuY3JlYXRlRHJhZnQ9ZnVuY3Rpb24odCl7byh0KXx8aSg4KSxyKHQpJiYodD1WKHQpKTt2YXIgZT1rKHRoaXMpLG49TCh0aGlzLHQsdm9pZCAwKQo7cmV0dXJuIG5bWF0uQz0hMCxDKGUpLG59LGUuZmluaXNoRHJhZnQ9ZnVuY3Rpb24odCxlKXt2YXIgbj0odCYmdFtYXSkuQTtyZXR1cm4gTyhuLGUpLEQodm9pZCAwLG4pfSxlLnNldEF1dG9GcmVlemU9ZnVuY3Rpb24odCl7dGhpcy5GPXR9LGUuc2V0VXNlUHJveGllcz1mdW5jdGlvbih0KXt0JiYhcSYmaSgyMCksdGhpcy5nPXR9LGUuYXBwbHlQYXRjaGVzPWZ1bmN0aW9uKHQsZSl7dmFyIG47Zm9yKG49ZS5sZW5ndGgtMTtuPj0wO24tLSl7dmFyIGk9ZVtuXTtpZigwPT09aS5wYXRoLmxlbmd0aCYmInJlcGxhY2UiPT09aS5vcCl7dD1pLnZhbHVlO2JyZWFrfX1uPi0xJiYoZT1lLnNsaWNlKG4rMSkpO3ZhciBvPV8oIlBhdGNoZXMiKS4kO3JldHVybiByKHQpP28odCxlKTp0aGlzLnByb2R1Y2UodCwoZnVuY3Rpb24odCl7cmV0dXJuIG8odCxlKX0pKX0sdH0oKSxudD1uZXcgZXQsaXQ9bnQucHJvZHVjZTtudC5wcm9kdWNlV2l0aFBhdGNoZXMuYmluZChudCksbnQuc2V0QXV0b0ZyZWV6ZS5iaW5kKG50KSxudC5zZXRVc2VQcm94aWVzLmJpbmQobnQpLG50LmFwcGx5UGF0Y2hlcy5iaW5kKG50KSxudC5jcmVhdGVEcmFmdC5iaW5kKG50KSxudC5maW5pc2hEcmFmdC5iaW5kKG50KTtjb25zdCBydD1pdH0sODE1NzI4KHQsZSxuKXt2YXIgaSxyLG8scz1uKDQ4MjUwNCk7IWZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO3I9W24oNDgyNTA0KSxuKDIxMDk3MSksbigxODYyMzQpLG4oMTY4NzAxKV0saT1mdW5jdGlvbih0KXt2YXIgZT0idWktZWZmZWN0cy0iLG49InVpLWVmZmVjdHMtc3R5bGUiLGk9InVpLWVmZmVjdHMtYW5pbWF0ZWQiO3JldHVybiB0LmVmZmVjdHM9e2VmZmVjdDp7fX0sZnVuY3Rpb24oKXt2YXIgZSxuPVsiYWRkIiwicmVtb3ZlIiwidG9nZ2xlIl0saT17Ym9yZGVyOjEsYm9yZGVyQm90dG9tOjEsYm9yZGVyQ29sb3I6MSxib3JkZXJMZWZ0OjEsYm9yZGVyUmlnaHQ6MSxib3JkZXJUb3A6MSxib3JkZXJXaWR0aDoxLG1hcmdpbjoxLHBhZGRpbmc6MX07ZnVuY3Rpb24gcih0KXtyZXR1cm4gdC5yZXBsYWNlKC8tKFtcZGEtel0pL2dpLChmdW5jdGlvbih0LGUpe3JldHVybiBlLnRvVXBwZXJDYXNlKCl9KSl9ZnVuY3Rpb24gbyh0KXt2YXIgZSxuLGk9dC5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3P3Qub3duZXJEb2N1bWVudC5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlKHQsbnVsbCk6dC5jdXJyZW50U3R5bGUsbz17fTtpZihpJiZpLmxlbmd0aCYmaVswXSYmaVtpWzBdXSlmb3Iobj1pLmxlbmd0aDtuLS07KSJzdHJpbmciPT10eXBlb2YgaVtlPWlbbl1dJiYob1tyKGUpXT1pW2VdKTtlbHNlIGZvcihlIGluIGkpInN0cmluZyI9PXR5cGVvZiBpW2VdJiYob1tlXT1pW2VdKTtyZXR1cm4gb31mdW5jdGlvbiBhKGUsbil7dmFyIHIsbyxzPXt9O2ZvcihyIGluIG4pbz1uW3JdLGVbcl0hPT1vJiYoaVtyXXx8IXQuZnguc3RlcFtyXSYmaXNOYU4ocGFyc2VGbG9hdChvKSl8fChzW3JdPW8pKTtyZXR1cm4gc310LmVhY2goWyJib3JkZXJMZWZ0U3R5bGUiLCJib3JkZXJSaWdodFN0eWxlIiwiYm9yZGVyQm90dG9tU3R5bGUiLCJib3JkZXJUb3BTdHlsZSJdLChmdW5jdGlvbihlLG4pe3QuZnguc3RlcFtuXT1mdW5jdGlvbih0KXsoIm5vbmUiIT09dC5lbmQmJiF0LnNldEF0dHJ8fDE9PT10LnBvcyYmIXQuc2V0QXR0cikmJihzLnN0eWxlKHQuZWxlbSxuLHQuZW5kKSx0LnNldEF0dHI9ITApfX0pKSx0LmZuLmFkZEJhY2t8fCh0LmZuLmFkZEJhY2s9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuYWRkKG51bGw9PXQ/dGhpcy5wcmV2T2JqZWN0OnRoaXMucHJldk9iamVjdC5maWx0ZXIodCkpfSksdC5lZmZlY3RzLmFuaW1hdGVDbGFzcz1mdW5jdGlvbihlLGkscixzKXt2YXIgdT10LnNwZWVkKGkscixzKTtyZXR1cm4gdGhpcy5xdWV1ZSgoZnVuY3Rpb24oKXt2YXIgaSxyPXQodGhpcykscz1yLmF0dHIoImNsYXNzIil8fCIiLGw9dS5jaGlsZHJlbj9yLmZpbmQoIioiKS5hZGRCYWNrKCk6cjtsPWwubWFwKChmdW5jdGlvbigpe3JldHVybntlbDp0KHRoaXMpLHN0YXJ0Om8odGhpcyl9fSkpLChpPWZ1bmN0aW9uKCl7dC5lYWNoKG4sKGZ1bmN0aW9uKHQsbil7ZVtuXSYmcltuKyJDbGFzcyJdKGVbbl0pfSkpfSkoKSxsPWwubWFwKChmdW5jdGlvbigpe3JldHVybiB0aGlzLmVuZD1vKHRoaXMuZWxbMF0pLHRoaXMuZGlmZj1hKHRoaXMuc3RhcnQsdGhpcy5lbmQpLHRoaXN9KSksci5hdHRyKCJjbGFzcyIscyksbD1sLm1hcCgoZnVuY3Rpb24oKXt2YXIgZT10aGlzLG49dC5EZWZlcnJlZCgpLGk9dC5leHRlbmQoe30sdSx7cXVldWU6ITEsY29tcGxldGU6ZnVuY3Rpb24oKXtuLnJlc29sdmUoZSl9fSk7cmV0dXJuIHRoaXMuZWwuYW5pbWF0ZSh0aGlzLmRpZmYsaSksbi5wcm9taXNlKCl9KSksdC53aGVuLmFwcGx5KHQsbC5nZXQoKSkuZG9uZSgoZnVuY3Rpb24oKXtpKCksdC5lYWNoKGFyZ3VtZW50cywoZnVuY3Rpb24oKXt2YXIgZT10aGlzLmVsO3QuZWFjaCh0aGlzLmRpZmYsKGZ1bmN0aW9uKHQpe2UuY3NzKHQsIiIpfSkpfSkpLHUuY29tcGxldGUuY2FsbChyWzBdKX0pKX0pKX0sdC5mbi5leHRlbmQoe2FkZENsYXNzOihlPXQuZm4uYWRkQ2xhc3MsZnVuY3Rpb24obixpLHIsbyl7cmV0dXJuIGk/dC5lZmZlY3RzLmFuaW1hdGVDbGFzcy5jYWxsKHRoaXMse2FkZDpufSxpLHIsbyk6ZS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9KSxyZW1vdmVDbGFzczpmdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24obixpLHIsbyl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg+MT90LmVmZmVjdHMuYW5pbWF0ZUNsYXNzLmNhbGwodGhpcyx7cmVtb3ZlOm59LGkscixvKTplLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19KHQuZm4ucmVtb3ZlQ2xhc3MpLHRvZ2dsZUNsYXNzOmZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbihuLGkscixvLHMpe3JldHVybiJib29sZWFuIj09dHlwZW9mIGl8fHZvaWQgMD09PWk/cj90LmVmZmVjdHMuYW5pbWF0ZUNsYXNzLmNhbGwodGhpcyxpP3thZGQ6bn06e3JlbW92ZTpufSxyLG8scyk6ZS5hcHBseSh0aGlzLGFyZ3VtZW50cyk6dC5lZmZlY3RzLmFuaW1hdGVDbGFzcy5jYWxsKHRoaXMse3RvZ2dsZTpufSxpLHIsbykKfX0odC5mbi50b2dnbGVDbGFzcyksc3dpdGNoQ2xhc3M6ZnVuY3Rpb24oZSxuLGkscixvKXtyZXR1cm4gdC5lZmZlY3RzLmFuaW1hdGVDbGFzcy5jYWxsKHRoaXMse2FkZDpuLHJlbW92ZTplfSxpLHIsbyl9fSl9KCksZnVuY3Rpb24oKXt2YXIgcjtmdW5jdGlvbiBvKGUsbixpLHIpe3JldHVybiB0LmlzUGxhaW5PYmplY3QoZSkmJihuPWUsZT1lLmVmZmVjdCksZT17ZWZmZWN0OmV9LG51bGw9PW4mJihuPXt9KSwiZnVuY3Rpb24iPT10eXBlb2YgbiYmKHI9bixpPW51bGwsbj17fSksKCJudW1iZXIiPT10eXBlb2Ygbnx8dC5meC5zcGVlZHNbbl0pJiYocj1pLGk9bixuPXt9KSwiZnVuY3Rpb24iPT10eXBlb2YgaSYmKHI9aSxpPW51bGwpLG4mJnQuZXh0ZW5kKGUsbiksaT1pfHxuLmR1cmF0aW9uLGUuZHVyYXRpb249dC5meC5vZmY/MDoibnVtYmVyIj09dHlwZW9mIGk/aTppIGluIHQuZnguc3BlZWRzP3QuZnguc3BlZWRzW2ldOnQuZnguc3BlZWRzLl9kZWZhdWx0LGUuY29tcGxldGU9cnx8bi5jb21wbGV0ZSxlfWZ1bmN0aW9uIHMoZSl7cmV0dXJuIShlJiYibnVtYmVyIiE9dHlwZW9mIGUmJiF0LmZ4LnNwZWVkc1tlXSl8fCgic3RyaW5nIj09dHlwZW9mIGUmJiF0LmVmZmVjdHMuZWZmZWN0W2VdfHwoImZ1bmN0aW9uIj09dHlwZW9mIGV8fCJvYmplY3QiPT10eXBlb2YgZSYmIWUuZWZmZWN0KSl9ZnVuY3Rpb24gYSh0LGUpe3ZhciBuPWUub3V0ZXJXaWR0aCgpLGk9ZS5vdXRlckhlaWdodCgpLHI9L15yZWN0XCgoLT9cZCpcLj9cZCpweHwtP1xkKyV8YXV0byksP1xzKigtP1xkKlwuP1xkKnB4fC0/XGQrJXxhdXRvKSw/XHMqKC0/XGQqXC4/XGQqcHh8LT9cZCslfGF1dG8pLD9ccyooLT9cZCpcLj9cZCpweHwtP1xkKyV8YXV0bylcKSQvLmV4ZWModCl8fFsiIiwwLG4saSwwXTtyZXR1cm57dG9wOnBhcnNlRmxvYXQoclsxXSl8fDAscmlnaHQ6ImF1dG8iPT09clsyXT9uOnBhcnNlRmxvYXQoclsyXSksYm90dG9tOiJhdXRvIj09PXJbM10/aTpwYXJzZUZsb2F0KHJbM10pLGxlZnQ6cGFyc2VGbG9hdChyWzRdKXx8MH19dC5leHByJiZ0LmV4cHIucHNldWRvcyYmdC5leHByLnBzZXVkb3MuYW5pbWF0ZWQmJih0LmV4cHIucHNldWRvcy5hbmltYXRlZD0ocj10LmV4cHIucHNldWRvcy5hbmltYXRlZCxmdW5jdGlvbihlKXtyZXR1cm4hIXQoZSkuZGF0YShpKXx8cihlKX0pKSwhMSE9PXQudWlCYWNrQ29tcGF0JiZ0LmV4dGVuZCh0LmVmZmVjdHMse3NhdmU6ZnVuY3Rpb24odCxuKXtmb3IodmFyIGk9MCxyPW4ubGVuZ3RoO2k8cjtpKyspbnVsbCE9PW5baV0mJnQuZGF0YShlK25baV0sdFswXS5zdHlsZVtuW2ldXSl9LHJlc3RvcmU6ZnVuY3Rpb24odCxuKXtmb3IodmFyIGkscj0wLG89bi5sZW5ndGg7cjxvO3IrKyludWxsIT09bltyXSYmKGk9dC5kYXRhKGUrbltyXSksdC5jc3MobltyXSxpKSl9LHNldE1vZGU6ZnVuY3Rpb24odCxlKXtyZXR1cm4idG9nZ2xlIj09PWUmJihlPXQuaXMoIjpoaWRkZW4iKT8ic2hvdyI6ImhpZGUiKSxlfSxjcmVhdGVXcmFwcGVyOmZ1bmN0aW9uKGUpe2lmKGUucGFyZW50KCkuaXMoIi51aS1lZmZlY3RzLXdyYXBwZXIiKSlyZXR1cm4gZS5wYXJlbnQoKTt2YXIgbj17d2lkdGg6ZS5vdXRlcldpZHRoKCEwKSxoZWlnaHQ6ZS5vdXRlckhlaWdodCghMCksZmxvYXQ6ZS5jc3MoImZsb2F0Iil9LGk9dCgiPGRpdj48L2Rpdj4iKS5hZGRDbGFzcygidWktZWZmZWN0cy13cmFwcGVyIikuY3NzKHtmb250U2l6ZToiMTAwJSIsYmFja2dyb3VuZDoidHJhbnNwYXJlbnQiLGJvcmRlcjoibm9uZSIsbWFyZ2luOjAscGFkZGluZzowfSkscj17d2lkdGg6ZS53aWR0aCgpLGhlaWdodDplLmhlaWdodCgpfSxvPWRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7dHJ5e28uaWR9Y2F0Y2godCl7bz1kb2N1bWVudC5ib2R5fXJldHVybiBlLndyYXAoaSksKGVbMF09PT1vfHx0LmNvbnRhaW5zKGVbMF0sbykpJiZ0KG8pLnRyaWdnZXIoImZvY3VzIiksaT1lLnBhcmVudCgpLCJzdGF0aWMiPT09ZS5jc3MoInBvc2l0aW9uIik/KGkuY3NzKHtwb3NpdGlvbjoicmVsYXRpdmUifSksZS5jc3Moe3Bvc2l0aW9uOiJyZWxhdGl2ZSJ9KSk6KHQuZXh0ZW5kKG4se3Bvc2l0aW9uOmUuY3NzKCJwb3NpdGlvbiIpLHpJbmRleDplLmNzcygiei1pbmRleCIpfSksdC5lYWNoKFsidG9wIiwibGVmdCIsImJvdHRvbSIsInJpZ2h0Il0sKGZ1bmN0aW9uKHQsaSl7bltpXT1lLmNzcyhpKSxpc05hTihwYXJzZUludChuW2ldLDEwKSkmJihuW2ldPSJhdXRvIil9KSksZS5jc3Moe3Bvc2l0aW9uOiJyZWxhdGl2ZSIsdG9wOjAsbGVmdDowLHJpZ2h0OiJhdXRvIixib3R0b206ImF1dG8ifSkpLGUuY3NzKHIpLGkuY3NzKG4pLnNob3coKX0scmVtb3ZlV3JhcHBlcjpmdW5jdGlvbihlKXt2YXIgbj1kb2N1bWVudC5hY3RpdmVFbGVtZW50O3JldHVybiBlLnBhcmVudCgpLmlzKCIudWktZWZmZWN0cy13cmFwcGVyIikmJihlLnBhcmVudCgpLnJlcGxhY2VXaXRoKGUpLChlWzBdPT09bnx8dC5jb250YWlucyhlWzBdLG4pKSYmdChuKS50cmlnZ2VyKCJmb2N1cyIpKSxlfX0pLHQuZXh0ZW5kKHQuZWZmZWN0cyx7dmVyc2lvbjoiMS4xMy4yIixkZWZpbmU6ZnVuY3Rpb24oZSxuLGkpe3JldHVybiBpfHwoaT1uLG49ImVmZmVjdCIpLHQuZWZmZWN0cy5lZmZlY3RbZV09aSx0LmVmZmVjdHMuZWZmZWN0W2VdLm1vZGU9bixpfSxzY2FsZWREaW1lbnNpb25zOmZ1bmN0aW9uKHQsZSxuKXtpZigwPT09ZSlyZXR1cm57aGVpZ2h0OjAsd2lkdGg6MCxvdXRlckhlaWdodDowLG91dGVyV2lkdGg6MH07dmFyIGk9Imhvcml6b250YWwiIT09bj8oZXx8MTAwKS8xMDA6MSxyPSJ2ZXJ0aWNhbCIhPT1uPyhlfHwxMDApLzEwMDoxO3JldHVybntoZWlnaHQ6dC5oZWlnaHQoKSpyLHdpZHRoOnQud2lkdGgoKSppLG91dGVySGVpZ2h0OnQub3V0ZXJIZWlnaHQoKSpyLG91dGVyV2lkdGg6dC5vdXRlcldpZHRoKCkqaX19LGNsaXBUb0JveDpmdW5jdGlvbih0KXtyZXR1cm57d2lkdGg6dC5jbGlwLnJpZ2h0LXQuY2xpcC5sZWZ0LGhlaWdodDp0LmNsaXAuYm90dG9tLXQuY2xpcC50b3AsbGVmdDp0LmNsaXAubGVmdCx0b3A6dC5jbGlwLnRvcH19LHVuc2hpZnQ6ZnVuY3Rpb24odCxlLG4pewp2YXIgaT10LnF1ZXVlKCk7ZT4xJiZpLnNwbGljZS5hcHBseShpLFsxLDBdLmNvbmNhdChpLnNwbGljZShlLG4pKSksdC5kZXF1ZXVlKCl9LHNhdmVTdHlsZTpmdW5jdGlvbih0KXt0LmRhdGEobix0WzBdLnN0eWxlLmNzc1RleHQpfSxyZXN0b3JlU3R5bGU6ZnVuY3Rpb24odCl7dFswXS5zdHlsZS5jc3NUZXh0PXQuZGF0YShuKXx8IiIsdC5yZW1vdmVEYXRhKG4pfSxtb2RlOmZ1bmN0aW9uKHQsZSl7dmFyIG49dC5pcygiOmhpZGRlbiIpO3JldHVybiJ0b2dnbGUiPT09ZSYmKGU9bj8ic2hvdyI6ImhpZGUiKSwobj8iaGlkZSI9PT1lOiJzaG93Ij09PWUpJiYoZT0ibm9uZSIpLGV9LGdldEJhc2VsaW5lOmZ1bmN0aW9uKHQsZSl7dmFyIG4saTtzd2l0Y2godFswXSl7Y2FzZSJ0b3AiOm49MDticmVhaztjYXNlIm1pZGRsZSI6bj0uNTticmVhaztjYXNlImJvdHRvbSI6bj0xO2JyZWFrO2RlZmF1bHQ6bj10WzBdL2UuaGVpZ2h0fXN3aXRjaCh0WzFdKXtjYXNlImxlZnQiOmk9MDticmVhaztjYXNlImNlbnRlciI6aT0uNTticmVhaztjYXNlInJpZ2h0IjppPTE7YnJlYWs7ZGVmYXVsdDppPXRbMV0vZS53aWR0aH1yZXR1cm57eDppLHk6bn19LGNyZWF0ZVBsYWNlaG9sZGVyOmZ1bmN0aW9uKG4pe3ZhciBpLHI9bi5jc3MoInBvc2l0aW9uIiksbz1uLnBvc2l0aW9uKCk7cmV0dXJuIG4uY3NzKHttYXJnaW5Ub3A6bi5jc3MoIm1hcmdpblRvcCIpLG1hcmdpbkJvdHRvbTpuLmNzcygibWFyZ2luQm90dG9tIiksbWFyZ2luTGVmdDpuLmNzcygibWFyZ2luTGVmdCIpLG1hcmdpblJpZ2h0Om4uY3NzKCJtYXJnaW5SaWdodCIpfSkub3V0ZXJXaWR0aChuLm91dGVyV2lkdGgoKSkub3V0ZXJIZWlnaHQobi5vdXRlckhlaWdodCgpKSwvXihzdGF0aWN8cmVsYXRpdmUpLy50ZXN0KHIpJiYocj0iYWJzb2x1dGUiLGk9dCgiPCIrblswXS5ub2RlTmFtZSsiPiIpLmluc2VydEFmdGVyKG4pLmNzcyh7ZGlzcGxheTovXihpbmxpbmV8cnVieSkvLnRlc3Qobi5jc3MoImRpc3BsYXkiKSk/ImlubGluZS1ibG9jayI6ImJsb2NrIix2aXNpYmlsaXR5OiJoaWRkZW4iLG1hcmdpblRvcDpuLmNzcygibWFyZ2luVG9wIiksbWFyZ2luQm90dG9tOm4uY3NzKCJtYXJnaW5Cb3R0b20iKSxtYXJnaW5MZWZ0Om4uY3NzKCJtYXJnaW5MZWZ0IiksbWFyZ2luUmlnaHQ6bi5jc3MoIm1hcmdpblJpZ2h0IiksZmxvYXQ6bi5jc3MoImZsb2F0Iil9KS5vdXRlcldpZHRoKG4ub3V0ZXJXaWR0aCgpKS5vdXRlckhlaWdodChuLm91dGVySGVpZ2h0KCkpLmFkZENsYXNzKCJ1aS1lZmZlY3RzLXBsYWNlaG9sZGVyIiksbi5kYXRhKGUrInBsYWNlaG9sZGVyIixpKSksbi5jc3Moe3Bvc2l0aW9uOnIsbGVmdDpvLmxlZnQsdG9wOm8udG9wfSksaX0scmVtb3ZlUGxhY2Vob2xkZXI6ZnVuY3Rpb24odCl7dmFyIG49ZSsicGxhY2Vob2xkZXIiLGk9dC5kYXRhKG4pO2kmJihpLnJlbW92ZSgpLHQucmVtb3ZlRGF0YShuKSl9LGNsZWFuVXA6ZnVuY3Rpb24oZSl7dC5lZmZlY3RzLnJlc3RvcmVTdHlsZShlKSx0LmVmZmVjdHMucmVtb3ZlUGxhY2Vob2xkZXIoZSl9LHNldFRyYW5zaXRpb246ZnVuY3Rpb24oZSxuLGkscil7cmV0dXJuIHI9cnx8e30sdC5lYWNoKG4sKGZ1bmN0aW9uKHQsbil7dmFyIG89ZS5jc3NVbml0KG4pO29bMF0+MCYmKHJbbl09b1swXSppK29bMV0pfSkpLHJ9fSksdC5mbi5leHRlbmQoe2VmZmVjdDpmdW5jdGlvbigpe3ZhciBlPW8uYXBwbHkodGhpcyxhcmd1bWVudHMpLG49dC5lZmZlY3RzLmVmZmVjdFtlLmVmZmVjdF0scj1uLm1vZGUscz1lLnF1ZXVlLGE9c3x8ImZ4Iix1PWUuY29tcGxldGUsbD1lLm1vZGUsYz1bXSxmPWZ1bmN0aW9uKGUpe3ZhciBuPXQodGhpcyksbz10LmVmZmVjdHMubW9kZShuLGwpfHxyO24uZGF0YShpLCEwKSxjLnB1c2gobyksciYmKCJzaG93Ij09PW98fG89PT1yJiYiaGlkZSI9PT1vKSYmbi5zaG93KCksciYmIm5vbmUiPT09b3x8dC5lZmZlY3RzLnNhdmVTdHlsZShuKSwiZnVuY3Rpb24iPT10eXBlb2YgZSYmZSgpfTtpZih0LmZ4Lm9mZnx8IW4pcmV0dXJuIGw/dGhpc1tsXShlLmR1cmF0aW9uLHUpOnRoaXMuZWFjaCgoZnVuY3Rpb24oKXt1JiZ1LmNhbGwodGhpcyl9KSk7ZnVuY3Rpb24gaChvKXt2YXIgcz10KHRoaXMpO2Z1bmN0aW9uIGEoKXtzLnJlbW92ZURhdGEoaSksdC5lZmZlY3RzLmNsZWFuVXAocyksImhpZGUiPT09ZS5tb2RlJiZzLmhpZGUoKSxmKCl9ZnVuY3Rpb24gZigpeyJmdW5jdGlvbiI9PXR5cGVvZiB1JiZ1LmNhbGwoc1swXSksImZ1bmN0aW9uIj09dHlwZW9mIG8mJm8oKX1lLm1vZGU9Yy5zaGlmdCgpLCExPT09dC51aUJhY2tDb21wYXR8fHI/Im5vbmUiPT09ZS5tb2RlPyhzW2xdKCksZigpKTpuLmNhbGwoc1swXSxlLGEpOihzLmlzKCI6aGlkZGVuIik/ImhpZGUiPT09bDoic2hvdyI9PT1sKT8oc1tsXSgpLGYoKSk6bi5jYWxsKHNbMF0sZSxmKX1yZXR1cm4hMT09PXM/dGhpcy5lYWNoKGYpLmVhY2goaCk6dGhpcy5xdWV1ZShhLGYpLnF1ZXVlKGEsaCl9LHNob3c6ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKHMoZSkpcmV0dXJuIHQuYXBwbHkodGhpcyxhcmd1bWVudHMpO3ZhciBuPW8uYXBwbHkodGhpcyxhcmd1bWVudHMpO3JldHVybiBuLm1vZGU9InNob3ciLHRoaXMuZWZmZWN0LmNhbGwodGhpcyxuKX19KHQuZm4uc2hvdyksaGlkZTpmdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSl7aWYocyhlKSlyZXR1cm4gdC5hcHBseSh0aGlzLGFyZ3VtZW50cyk7dmFyIG49by5hcHBseSh0aGlzLGFyZ3VtZW50cyk7cmV0dXJuIG4ubW9kZT0iaGlkZSIsdGhpcy5lZmZlY3QuY2FsbCh0aGlzLG4pfX0odC5mbi5oaWRlKSx0b2dnbGU6ZnVuY3Rpb24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe2lmKHMoZSl8fCJib29sZWFuIj09dHlwZW9mIGUpcmV0dXJuIHQuYXBwbHkodGhpcyxhcmd1bWVudHMpO3ZhciBuPW8uYXBwbHkodGhpcyxhcmd1bWVudHMpO3JldHVybiBuLm1vZGU9InRvZ2dsZSIsdGhpcy5lZmZlY3QuY2FsbCh0aGlzLG4pfX0odC5mbi50b2dnbGUpLGNzc1VuaXQ6ZnVuY3Rpb24oZSl7dmFyIG49dGhpcy5jc3MoZSksaT1bXQo7cmV0dXJuIHQuZWFjaChbImVtIiwicHgiLCIlIiwicHQiXSwoZnVuY3Rpb24odCxlKXtuLmluZGV4T2YoZSk+MCYmKGk9W3BhcnNlRmxvYXQobiksZV0pfSkpLGl9LGNzc0NsaXA6ZnVuY3Rpb24odCl7cmV0dXJuIHQ/dGhpcy5jc3MoImNsaXAiLCJyZWN0KCIrdC50b3ArInB4ICIrdC5yaWdodCsicHggIit0LmJvdHRvbSsicHggIit0LmxlZnQrInB4KSIpOmEodGhpcy5jc3MoImNsaXAiKSx0aGlzKX0sdHJhbnNmZXI6ZnVuY3Rpb24oZSxuKXt2YXIgaT10KHRoaXMpLHI9dChlLnRvKSxvPSJmaXhlZCI9PT1yLmNzcygicG9zaXRpb24iKSxzPXQoImJvZHkiKSxhPW8/cy5zY3JvbGxUb3AoKTowLHU9bz9zLnNjcm9sbExlZnQoKTowLGw9ci5vZmZzZXQoKSxjPXt0b3A6bC50b3AtYSxsZWZ0OmwubGVmdC11LGhlaWdodDpyLmlubmVySGVpZ2h0KCksd2lkdGg6ci5pbm5lcldpZHRoKCl9LGY9aS5vZmZzZXQoKSxoPXQoIjxkaXYgY2xhc3M9J3VpLWVmZmVjdHMtdHJhbnNmZXInPjwvZGl2PiIpO2guYXBwZW5kVG8oImJvZHkiKS5hZGRDbGFzcyhlLmNsYXNzTmFtZSkuY3NzKHt0b3A6Zi50b3AtYSxsZWZ0OmYubGVmdC11LGhlaWdodDppLmlubmVySGVpZ2h0KCksd2lkdGg6aS5pbm5lcldpZHRoKCkscG9zaXRpb246bz8iZml4ZWQiOiJhYnNvbHV0ZSJ9KS5hbmltYXRlKGMsZS5kdXJhdGlvbixlLmVhc2luZywoZnVuY3Rpb24oKXtoLnJlbW92ZSgpLCJmdW5jdGlvbiI9PXR5cGVvZiBuJiZuKCl9KSl9fSksdC5meC5zdGVwLmNsaXA9ZnVuY3Rpb24oZSl7ZS5jbGlwSW5pdHx8KGUuc3RhcnQ9dChlLmVsZW0pLmNzc0NsaXAoKSwic3RyaW5nIj09dHlwZW9mIGUuZW5kJiYoZS5lbmQ9YShlLmVuZCxlLmVsZW0pKSxlLmNsaXBJbml0PSEwKSx0KGUuZWxlbSkuY3NzQ2xpcCh7dG9wOmUucG9zKihlLmVuZC50b3AtZS5zdGFydC50b3ApK2Uuc3RhcnQudG9wLHJpZ2h0OmUucG9zKihlLmVuZC5yaWdodC1lLnN0YXJ0LnJpZ2h0KStlLnN0YXJ0LnJpZ2h0LGJvdHRvbTplLnBvcyooZS5lbmQuYm90dG9tLWUuc3RhcnQuYm90dG9tKStlLnN0YXJ0LmJvdHRvbSxsZWZ0OmUucG9zKihlLmVuZC5sZWZ0LWUuc3RhcnQubGVmdCkrZS5zdGFydC5sZWZ0fSl9fSgpLGZ1bmN0aW9uKCl7dmFyIGU9e307dC5lYWNoKFsiUXVhZCIsIkN1YmljIiwiUXVhcnQiLCJRdWludCIsIkV4cG8iXSwoZnVuY3Rpb24odCxuKXtlW25dPWZ1bmN0aW9uKGUpe3JldHVybiBNYXRoLnBvdyhlLHQrMil9fSkpLHQuZXh0ZW5kKGUse1NpbmU6ZnVuY3Rpb24odCl7cmV0dXJuIDEtTWF0aC5jb3ModCpNYXRoLlBJLzIpfSxDaXJjOmZ1bmN0aW9uKHQpe3JldHVybiAxLU1hdGguc3FydCgxLXQqdCl9LEVsYXN0aWM6ZnVuY3Rpb24odCl7cmV0dXJuIDA9PT10fHwxPT09dD90Oi1NYXRoLnBvdygyLDgqKHQtMSkpKk1hdGguc2luKCg4MCoodC0xKS03LjUpKk1hdGguUEkvMTUpfSxCYWNrOmZ1bmN0aW9uKHQpe3JldHVybiB0KnQqKDMqdC0yKX0sQm91bmNlOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZSxuPTQ7dDwoKGU9TWF0aC5wb3coMiwtLW4pKS0xKS8xMTspO3JldHVybiAxL01hdGgucG93KDQsMy1uKS03LjU2MjUqTWF0aC5wb3coKDMqZS0yKS8yMi10LDIpfX0pLHQuZWFjaChlLChmdW5jdGlvbihlLG4pe3QuZWFzaW5nWyJlYXNlSW4iK2VdPW4sdC5lYXNpbmdbImVhc2VPdXQiK2VdPWZ1bmN0aW9uKHQpe3JldHVybiAxLW4oMS10KX0sdC5lYXNpbmdbImVhc2VJbk91dCIrZV09ZnVuY3Rpb24odCl7cmV0dXJuIHQ8LjU/bigyKnQpLzI6MS1uKC0yKnQrMikvMn19KSl9KCksdC5lZmZlY3RzfSx2b2lkIDA9PT0obz0iZnVuY3Rpb24iPT10eXBlb2YgaT9pLmFwcGx5KGUscik6aSl8fCh0LmV4cG9ydHM9byl9KCl9LDI5MzI3MSh0LGUsbil7dmFyIGkscixvOyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0IjtyPVtuKDQ4MjUwNCksbigxNjg3MDEpXSx2b2lkIDA9PT0obz0iZnVuY3Rpb24iPT10eXBlb2YoaT1mdW5jdGlvbih0KXtyZXR1cm4gdC51aS5pZT0hIS9tc2llIFtcdy5dKy8uZXhlYyhuYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkpfSk/aS5hcHBseShlLHIpOmkpfHwodC5leHBvcnRzPW8pfSgpfSw0MDYwNzIodCxlLG4pe3ZhciBpLHIsbzshZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7cj1bbig0ODI1MDQpLG4oMTY4NzAxKV0sdm9pZCAwPT09KG89ImZ1bmN0aW9uIj09dHlwZW9mKGk9ZnVuY3Rpb24odCl7dC5leHByLnBzZXVkb3N8fCh0LmV4cHIucHNldWRvcz10LmV4cHJbIjoiXSk7dC51bmlxdWVTb3J0fHwodC51bmlxdWVTb3J0PXQudW5pcXVlKTtpZighdC5lc2NhcGVTZWxlY3Rvcil7dmFyIGU9LyhbXDAtXHgxZlx4N2ZdfF4tP1xkKXxeLSR8W15ceDgwLVx1RkZGRlx3LV0vZyxuPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIGU/IlwwIj09PXQ/Iu+/vSI6dC5zbGljZSgwLC0xKSsiXFwiK3QuY2hhckNvZGVBdCh0Lmxlbmd0aC0xKS50b1N0cmluZygxNikrIiAiOiJcXCIrdH07dC5lc2NhcGVTZWxlY3Rvcj1mdW5jdGlvbih0KXtyZXR1cm4odCsiIikucmVwbGFjZShlLG4pfX10LmZuLmV2ZW4mJnQuZm4ub2RkfHx0LmZuLmV4dGVuZCh7ZXZlbjpmdW5jdGlvbigpe3JldHVybiB0aGlzLmZpbHRlcigoZnVuY3Rpb24odCl7cmV0dXJuIHQlMj09MH0pKX0sb2RkOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZmlsdGVyKChmdW5jdGlvbih0KXtyZXR1cm4gdCUyPT0xfSkpfX0pfSk/aS5hcHBseShlLHIpOmkpfHwodC5leHBvcnRzPW8pfSgpfSwyMTA5NzEodCxlLG4pe3ZhciBpLHIsbzshZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7cj1bbig0ODI1MDQpLG4oMTY4NzAxKV0sdm9pZCAwPT09KG89ImZ1bmN0aW9uIj09dHlwZW9mKGk9ZnVuY3Rpb24odCl7fSk/aS5hcHBseShlLHIpOmkpfHwodC5leHBvcnRzPW8pfSgpfSw3MTY5OSh0LGUsbil7dmFyIGkscixvOyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0IjtyPVtuKDQ4MjUwNCksbigxNjg3MDEpXSx2b2lkIDA9PT0obz0iZnVuY3Rpb24iPT10eXBlb2YoaT1mdW5jdGlvbih0KXtyZXR1cm4gdC51aS5rZXlDb2RlPXtCQUNLU1BBQ0U6OCxDT01NQToxODgsREVMRVRFOjQ2LERPV046NDAsRU5EOjM1LEVOVEVSOjEzLApFU0NBUEU6MjcsSE9NRTozNixMRUZUOjM3LFBBR0VfRE9XTjozNCxQQUdFX1VQOjMzLFBFUklPRDoxOTAsUklHSFQ6MzksU1BBQ0U6MzIsVEFCOjksVVA6Mzh9fSk/aS5hcHBseShlLHIpOmkpfHwodC5leHBvcnRzPW8pfSgpfSwxODYyMzQodCxlLG4pe3ZhciBpLHIsbztyPVtuKDQ4MjUwNCldLGk9ZnVuY3Rpb24odCxlKXt2YXIgbixpPSJiYWNrZ3JvdW5kQ29sb3IgYm9yZGVyQm90dG9tQ29sb3IgYm9yZGVyTGVmdENvbG9yIGJvcmRlclJpZ2h0Q29sb3IgYm9yZGVyVG9wQ29sb3IgY29sb3IgY29sdW1uUnVsZUNvbG9yIG91dGxpbmVDb2xvciB0ZXh0RGVjb3JhdGlvbkNvbG9yIHRleHRFbXBoYXNpc0NvbG9yIixyPXt9LG89ci50b1N0cmluZyxzPS9eKFtcLStdKT1ccyooXGQrXC4/XGQqKS8sYT1be3JlOi9yZ2JhP1woXHMqKFxkezEsM30pXHMqLFxzKihcZHsxLDN9KVxzKixccyooXGR7MSwzfSlccyooPzosXHMqKFxkPyg/OlwuXGQrKT8pXHMqKT9cKS8scGFyc2U6ZnVuY3Rpb24odCl7cmV0dXJuW3RbMV0sdFsyXSx0WzNdLHRbNF1dfX0se3JlOi9yZ2JhP1woXHMqKFxkKyg/OlwuXGQrKT8pXCVccyosXHMqKFxkKyg/OlwuXGQrKT8pXCVccyosXHMqKFxkKyg/OlwuXGQrKT8pXCVccyooPzosXHMqKFxkPyg/OlwuXGQrKT8pXHMqKT9cKS8scGFyc2U6ZnVuY3Rpb24odCl7cmV0dXJuWzIuNTUqdFsxXSwyLjU1KnRbMl0sMi41NSp0WzNdLHRbNF1dfX0se3JlOi8jKFthLWYwLTldezJ9KShbYS1mMC05XXsyfSkoW2EtZjAtOV17Mn0pKFthLWYwLTldezJ9KT8vLHBhcnNlOmZ1bmN0aW9uKHQpe3JldHVybltwYXJzZUludCh0WzFdLDE2KSxwYXJzZUludCh0WzJdLDE2KSxwYXJzZUludCh0WzNdLDE2KSx0WzRdPyhwYXJzZUludCh0WzRdLDE2KS8yNTUpLnRvRml4ZWQoMik6MV19fSx7cmU6LyMoW2EtZjAtOV0pKFthLWYwLTldKShbYS1mMC05XSkoW2EtZjAtOV0pPy8scGFyc2U6ZnVuY3Rpb24odCl7cmV0dXJuW3BhcnNlSW50KHRbMV0rdFsxXSwxNikscGFyc2VJbnQodFsyXSt0WzJdLDE2KSxwYXJzZUludCh0WzNdK3RbM10sMTYpLHRbNF0/KHBhcnNlSW50KHRbNF0rdFs0XSwxNikvMjU1KS50b0ZpeGVkKDIpOjFdfX0se3JlOi9oc2xhP1woXHMqKFxkKyg/OlwuXGQrKT8pXHMqLFxzKihcZCsoPzpcLlxkKyk/KVwlXHMqLFxzKihcZCsoPzpcLlxkKyk/KVwlXHMqKD86LFxzKihcZD8oPzpcLlxkKyk/KVxzKik/XCkvLHNwYWNlOiJoc2xhIixwYXJzZTpmdW5jdGlvbih0KXtyZXR1cm5bdFsxXSx0WzJdLzEwMCx0WzNdLzEwMCx0WzRdXX19XSx1PXQuQ29sb3I9ZnVuY3Rpb24oZSxuLGkscil7cmV0dXJuIG5ldyB0LkNvbG9yLmZuLnBhcnNlKGUsbixpLHIpfSxsPXtyZ2JhOntwcm9wczp7cmVkOntpZHg6MCx0eXBlOiJieXRlIn0sZ3JlZW46e2lkeDoxLHR5cGU6ImJ5dGUifSxibHVlOntpZHg6Mix0eXBlOiJieXRlIn19fSxoc2xhOntwcm9wczp7aHVlOntpZHg6MCx0eXBlOiJkZWdyZWVzIn0sc2F0dXJhdGlvbjp7aWR4OjEsdHlwZToicGVyY2VudCJ9LGxpZ2h0bmVzczp7aWR4OjIsdHlwZToicGVyY2VudCJ9fX19LGM9e2J5dGU6e2Zsb29yOiEwLG1heDoyNTV9LHBlcmNlbnQ6e21heDoxfSxkZWdyZWVzOnttb2Q6MzYwLGZsb29yOiEwfX0sZj11LnN1cHBvcnQ9e30saD10KCI8cD4iKVswXSxkPXQuZWFjaDtmdW5jdGlvbiBwKHQpe3JldHVybiBudWxsPT10P3QrIiI6Im9iamVjdCI9PXR5cGVvZiB0P3Jbby5jYWxsKHQpXXx8Im9iamVjdCI6dHlwZW9mIHR9ZnVuY3Rpb24gdih0LGUsbil7dmFyIGk9Y1tlLnR5cGVdfHx7fTtyZXR1cm4gbnVsbD09dD9ufHwhZS5kZWY/bnVsbDplLmRlZjoodD1pLmZsb29yP35+dDpwYXJzZUZsb2F0KHQpLGlzTmFOKHQpP2UuZGVmOmkubW9kPyh0K2kubW9kKSVpLm1vZDpNYXRoLm1pbihpLm1heCxNYXRoLm1heCgwLHQpKSl9ZnVuY3Rpb24gZyhlKXt2YXIgaT11KCkscj1pLl9yZ2JhPVtdO3JldHVybiBlPWUudG9Mb3dlckNhc2UoKSxkKGEsKGZ1bmN0aW9uKHQsbil7dmFyIG8scz1uLnJlLmV4ZWMoZSksYT1zJiZuLnBhcnNlKHMpLHU9bi5zcGFjZXx8InJnYmEiO2lmKGEpcmV0dXJuIG89aVt1XShhKSxpW2xbdV0uY2FjaGVdPW9bbFt1XS5jYWNoZV0scj1pLl9yZ2JhPW8uX3JnYmEsITF9KSksci5sZW5ndGg/KCIwLDAsMCwwIj09PXIuam9pbigpJiZ0LmV4dGVuZChyLG4udHJhbnNwYXJlbnQpLGkpOm5bZV19ZnVuY3Rpb24gbSh0LGUsbil7cmV0dXJuIDYqKG49KG4rMSklMSk8MT90KyhlLXQpKm4qNjoyKm48MT9lOjMqbjwyP3QrKGUtdCkqKDIvMy1uKSo2OnR9aC5zdHlsZS5jc3NUZXh0PSJiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMSwxLDEsLjUpIixmLnJnYmE9aC5zdHlsZS5iYWNrZ3JvdW5kQ29sb3IuaW5kZXhPZigicmdiYSIpPi0xLGQobCwoZnVuY3Rpb24odCxlKXtlLmNhY2hlPSJfIit0LGUucHJvcHMuYWxwaGE9e2lkeDozLHR5cGU6InBlcmNlbnQiLGRlZjoxfX0pKSx0LmVhY2goIkJvb2xlYW4gTnVtYmVyIFN0cmluZyBGdW5jdGlvbiBBcnJheSBEYXRlIFJlZ0V4cCBPYmplY3QgRXJyb3IgU3ltYm9sIi5zcGxpdCgiICIpLChmdW5jdGlvbih0LGUpe3JbIltvYmplY3QgIitlKyJdIl09ZS50b0xvd2VyQ2FzZSgpfSkpLHUuZm49dC5leHRlbmQodS5wcm90b3R5cGUse3BhcnNlOmZ1bmN0aW9uKGkscixvLHMpe2lmKGk9PT1lKXJldHVybiB0aGlzLl9yZ2JhPVtudWxsLG51bGwsbnVsbCxudWxsXSx0aGlzOyhpLmpxdWVyeXx8aS5ub2RlVHlwZSkmJihpPXQoaSkuY3NzKHIpLHI9ZSk7dmFyIGE9dGhpcyxjPXAoaSksZj10aGlzLl9yZ2JhPVtdO3JldHVybiByIT09ZSYmKGk9W2kscixvLHNdLGM9ImFycmF5IiksInN0cmluZyI9PT1jP3RoaXMucGFyc2UoZyhpKXx8bi5fZGVmYXVsdCk6ImFycmF5Ij09PWM/KGQobC5yZ2JhLnByb3BzLChmdW5jdGlvbih0LGUpe2ZbZS5pZHhdPXYoaVtlLmlkeF0sZSl9KSksdGhpcyk6Im9iamVjdCI9PT1jPyhkKGwsaSBpbnN0YW5jZW9mIHU/ZnVuY3Rpb24odCxlKXtpW2UuY2FjaGVdJiYoYVtlLmNhY2hlXT1pW2UuY2FjaGVdLnNsaWNlKCkpfTpmdW5jdGlvbihlLG4pe3ZhciByPW4uY2FjaGUKO2Qobi5wcm9wcywoZnVuY3Rpb24odCxlKXtpZighYVtyXSYmbi50byl7aWYoImFscGhhIj09PXR8fG51bGw9PWlbdF0pcmV0dXJuO2Fbcl09bi50byhhLl9yZ2JhKX1hW3JdW2UuaWR4XT12KGlbdF0sZSwhMCl9KSksYVtyXSYmdC5pbkFycmF5KG51bGwsYVtyXS5zbGljZSgwLDMpKTwwJiYobnVsbD09YVtyXVszXSYmKGFbcl1bM109MSksbi5mcm9tJiYoYS5fcmdiYT1uLmZyb20oYVtyXSkpKX0pLHRoaXMpOnZvaWQgMH0saXM6ZnVuY3Rpb24odCl7dmFyIGU9dSh0KSxuPSEwLGk9dGhpcztyZXR1cm4gZChsLChmdW5jdGlvbih0LHIpe3ZhciBvLHM9ZVtyLmNhY2hlXTtyZXR1cm4gcyYmKG89aVtyLmNhY2hlXXx8ci50byYmci50byhpLl9yZ2JhKXx8W10sZChyLnByb3BzLChmdW5jdGlvbih0LGUpe2lmKG51bGwhPXNbZS5pZHhdKXJldHVybiBuPXNbZS5pZHhdPT09b1tlLmlkeF19KSkpLG59KSksbn0sX3NwYWNlOmZ1bmN0aW9uKCl7dmFyIHQ9W10sZT10aGlzO3JldHVybiBkKGwsKGZ1bmN0aW9uKG4saSl7ZVtpLmNhY2hlXSYmdC5wdXNoKG4pfSkpLHQucG9wKCl9LHRyYW5zaXRpb246ZnVuY3Rpb24odCxlKXt2YXIgbj11KHQpLGk9bi5fc3BhY2UoKSxyPWxbaV0sbz0wPT09dGhpcy5hbHBoYSgpP3UoInRyYW5zcGFyZW50Iik6dGhpcyxzPW9bci5jYWNoZV18fHIudG8oby5fcmdiYSksYT1zLnNsaWNlKCk7cmV0dXJuIG49bltyLmNhY2hlXSxkKHIucHJvcHMsKGZ1bmN0aW9uKHQsaSl7dmFyIHI9aS5pZHgsbz1zW3JdLHU9bltyXSxsPWNbaS50eXBlXXx8e307bnVsbCE9PXUmJihudWxsPT09bz9hW3JdPXU6KGwubW9kJiYodS1vPmwubW9kLzI/bys9bC5tb2Q6by11PmwubW9kLzImJihvLT1sLm1vZCkpLGFbcl09digodS1vKSplK28saSkpKX0pKSx0aGlzW2ldKGEpfSxibGVuZDpmdW5jdGlvbihlKXtpZigxPT09dGhpcy5fcmdiYVszXSlyZXR1cm4gdGhpczt2YXIgbj10aGlzLl9yZ2JhLnNsaWNlKCksaT1uLnBvcCgpLHI9dShlKS5fcmdiYTtyZXR1cm4gdSh0Lm1hcChuLChmdW5jdGlvbih0LGUpe3JldHVybigxLWkpKnJbZV0raSp0fSkpKX0sdG9SZ2JhU3RyaW5nOmZ1bmN0aW9uKCl7dmFyIGU9InJnYmEoIixuPXQubWFwKHRoaXMuX3JnYmEsKGZ1bmN0aW9uKHQsZSl7cmV0dXJuIG51bGwhPXQ/dDplPjI/MTowfSkpO3JldHVybiAxPT09blszXSYmKG4ucG9wKCksZT0icmdiKCIpLGUrbi5qb2luKCkrIikifSx0b0hzbGFTdHJpbmc6ZnVuY3Rpb24oKXt2YXIgZT0iaHNsYSgiLG49dC5tYXAodGhpcy5oc2xhKCksKGZ1bmN0aW9uKHQsZSl7cmV0dXJuIG51bGw9PXQmJih0PWU+Mj8xOjApLGUmJmU8MyYmKHQ9TWF0aC5yb3VuZCgxMDAqdCkrIiUiKSx0fSkpO3JldHVybiAxPT09blszXSYmKG4ucG9wKCksZT0iaHNsKCIpLGUrbi5qb2luKCkrIikifSx0b0hleFN0cmluZzpmdW5jdGlvbihlKXt2YXIgbj10aGlzLl9yZ2JhLnNsaWNlKCksaT1uLnBvcCgpO3JldHVybiBlJiZuLnB1c2gofn4oMjU1KmkpKSwiIyIrdC5tYXAobiwoZnVuY3Rpb24odCl7cmV0dXJuIDE9PT0odD0odHx8MCkudG9TdHJpbmcoMTYpKS5sZW5ndGg/IjAiK3Q6dH0pKS5qb2luKCIiKX0sdG9TdHJpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gMD09PXRoaXMuX3JnYmFbM10/InRyYW5zcGFyZW50Ijp0aGlzLnRvUmdiYVN0cmluZygpfX0pLHUuZm4ucGFyc2UucHJvdG90eXBlPXUuZm4sbC5oc2xhLnRvPWZ1bmN0aW9uKHQpe2lmKG51bGw9PXRbMF18fG51bGw9PXRbMV18fG51bGw9PXRbMl0pcmV0dXJuW251bGwsbnVsbCxudWxsLHRbM11dO3ZhciBlLG4saT10WzBdLzI1NSxyPXRbMV0vMjU1LG89dFsyXS8yNTUscz10WzNdLGE9TWF0aC5tYXgoaSxyLG8pLHU9TWF0aC5taW4oaSxyLG8pLGw9YS11LGM9YSt1LGY9LjUqYztyZXR1cm4gZT11PT09YT8wOmk9PT1hPzYwKihyLW8pL2wrMzYwOnI9PT1hPzYwKihvLWkpL2wrMTIwOjYwKihpLXIpL2wrMjQwLG49MD09PWw/MDpmPD0uNT9sL2M6bC8oMi1jKSxbTWF0aC5yb3VuZChlKSUzNjAsbixmLHM/PzFdfSxsLmhzbGEuZnJvbT1mdW5jdGlvbih0KXtpZihudWxsPT10WzBdfHxudWxsPT10WzFdfHxudWxsPT10WzJdKXJldHVybltudWxsLG51bGwsbnVsbCx0WzNdXTt2YXIgZT10WzBdLzM2MCxuPXRbMV0saT10WzJdLHI9dFszXSxvPWk8PS41P2kqKDErbik6aStuLWkqbixzPTIqaS1vO3JldHVybltNYXRoLnJvdW5kKDI1NSptKHMsbyxlKzEvMykpLE1hdGgucm91bmQoMjU1Km0ocyxvLGUpKSxNYXRoLnJvdW5kKDI1NSptKHMsbyxlLTEvMykpLHJdfSxkKGwsKGZ1bmN0aW9uKHQsbil7dmFyIGk9bi5wcm9wcyxyPW4uY2FjaGUsbz1uLnRvLGE9bi5mcm9tO3UuZm5bdF09ZnVuY3Rpb24odCl7aWYobyYmIXRoaXNbcl0mJih0aGlzW3JdPW8odGhpcy5fcmdiYSkpLHQ9PT1lKXJldHVybiB0aGlzW3JdLnNsaWNlKCk7dmFyIG4scz1wKHQpLGw9ImFycmF5Ij09PXN8fCJvYmplY3QiPT09cz90OmFyZ3VtZW50cyxjPXRoaXNbcl0uc2xpY2UoKTtyZXR1cm4gZChpLChmdW5jdGlvbih0LGUpe3ZhciBuPWxbIm9iamVjdCI9PT1zP3Q6ZS5pZHhdO251bGw9PW4mJihuPWNbZS5pZHhdKSxjW2UuaWR4XT12KG4sZSl9KSksYT8oKG49dShhKGMpKSlbcl09YyxuKTp1KGMpfSxkKGksKGZ1bmN0aW9uKGUsbil7dS5mbltlXXx8KHUuZm5bZV09ZnVuY3Rpb24oaSl7dmFyIHIsbyxhLHUsbD1wKGkpO3JldHVybiBvPShyPXRoaXNbdT0iYWxwaGEiPT09ZT90aGlzLl9oc2xhPyJoc2xhIjoicmdiYSI6dF0oKSlbbi5pZHhdLCJ1bmRlZmluZWQiPT09bD9vOigiZnVuY3Rpb24iPT09bCYmKGw9cChpPWkuY2FsbCh0aGlzLG8pKSksbnVsbD09aSYmbi5lbXB0eT90aGlzOigic3RyaW5nIj09PWwmJihhPXMuZXhlYyhpKSkmJihpPW8rcGFyc2VGbG9hdChhWzJdKSooIisiPT09YVsxXT8xOi0xKSkscltuLmlkeF09aSx0aGlzW3VdKHIpKSl9KX0pKX0pKSx1Lmhvb2s9ZnVuY3Rpb24oZSl7dmFyIG49ZS5zcGxpdCgiICIpO2QobiwoZnVuY3Rpb24oZSxuKXt0LmNzc0hvb2tzW25dPXtzZXQ6ZnVuY3Rpb24oZSxpKXt2YXIgcixvLHM9IiI7aWYoInRyYW5zcGFyZW50IiE9PWkmJigic3RyaW5nIiE9PXAoaSl8fChyPWcoaSkpKSl7CmlmKGk9dShyfHxpKSwhZi5yZ2JhJiYxIT09aS5fcmdiYVszXSl7Zm9yKG89ImJhY2tncm91bmRDb2xvciI9PT1uP2UucGFyZW50Tm9kZTplOygiIj09PXN8fCJ0cmFuc3BhcmVudCI9PT1zKSYmbyYmby5zdHlsZTspdHJ5e3M9dC5jc3MobywiYmFja2dyb3VuZENvbG9yIiksbz1vLnBhcmVudE5vZGV9Y2F0Y2godCl7fWk9aS5ibGVuZChzJiYidHJhbnNwYXJlbnQiIT09cz9zOiJfZGVmYXVsdCIpfWk9aS50b1JnYmFTdHJpbmcoKX10cnl7ZS5zdHlsZVtuXT1pfWNhdGNoKHQpe319fSx0LmZ4LnN0ZXBbbl09ZnVuY3Rpb24oZSl7ZS5jb2xvckluaXR8fChlLnN0YXJ0PXUoZS5lbGVtLG4pLGUuZW5kPXUoZS5lbmQpLGUuY29sb3JJbml0PSEwKSx0LmNzc0hvb2tzW25dLnNldChlLmVsZW0sZS5zdGFydC50cmFuc2l0aW9uKGUuZW5kLGUucG9zKSl9fSkpfSx1Lmhvb2soaSksdC5jc3NIb29rcy5ib3JkZXJDb2xvcj17ZXhwYW5kOmZ1bmN0aW9uKHQpe3ZhciBlPXt9O3JldHVybiBkKFsiVG9wIiwiUmlnaHQiLCJCb3R0b20iLCJMZWZ0Il0sKGZ1bmN0aW9uKG4saSl7ZVsiYm9yZGVyIitpKyJDb2xvciJdPXR9KSksZX19LG49dC5Db2xvci5uYW1lcz17YXF1YToiIzAwZmZmZiIsYmxhY2s6IiMwMDAwMDAiLGJsdWU6IiMwMDAwZmYiLGZ1Y2hzaWE6IiNmZjAwZmYiLGdyYXk6IiM4MDgwODAiLGdyZWVuOiIjMDA4MDAwIixsaW1lOiIjMDBmZjAwIixtYXJvb246IiM4MDAwMDAiLG5hdnk6IiMwMDAwODAiLG9saXZlOiIjODA4MDAwIixwdXJwbGU6IiM4MDAwODAiLHJlZDoiI2ZmMDAwMCIsc2lsdmVyOiIjYzBjMGMwIix0ZWFsOiIjMDA4MDgwIix3aGl0ZToiI2ZmZmZmZiIseWVsbG93OiIjZmZmZjAwIix0cmFuc3BhcmVudDpbbnVsbCxudWxsLG51bGwsMF0sX2RlZmF1bHQ6IiNmZmZmZmYifX0sdm9pZCAwPT09KG89ImZ1bmN0aW9uIj09dHlwZW9mIGk/aS5hcHBseShlLHIpOmkpfHwodC5leHBvcnRzPW8pfSwxNjg3MDEodCxlLG4pe3ZhciBpLHIsbzshZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7cj1bbig0ODI1MDQpXSx2b2lkIDA9PT0obz0iZnVuY3Rpb24iPT10eXBlb2YoaT1mdW5jdGlvbih0KXtyZXR1cm4gdC51aT10LnVpfHx7fSx0LnVpLnZlcnNpb249IjEuMTMuMiJ9KT9pLmFwcGx5KGUscik6aSl8fCh0LmV4cG9ydHM9byl9KCl9LDY2NjM0OSh0LGUsbil7dmFyIGkscixvOyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0IjtyPVtuKDQ4MjUwNCksbigxNjg3MDEpXSxpPWZ1bmN0aW9uKHQpe3ZhciBlPTAsbj1BcnJheS5wcm90b3R5cGUuaGFzT3duUHJvcGVydHksaT1BcnJheS5wcm90b3R5cGUuc2xpY2U7cmV0dXJuIHQuY2xlYW5EYXRhPWZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbihuKXt2YXIgaSxyLG87Zm9yKG89MDtudWxsIT0ocj1uW29dKTtvKyspKGk9dC5fZGF0YShyLCJldmVudHMiKSkmJmkucmVtb3ZlJiZ0KHIpLnRyaWdnZXJIYW5kbGVyKCJyZW1vdmUiKTtlKG4pfX0odC5jbGVhbkRhdGEpLHQud2lkZ2V0PWZ1bmN0aW9uKGUsbixpKXt2YXIgcixvLHMsYT17fSx1PWUuc3BsaXQoIi4iKVswXSxsPXUrIi0iKyhlPWUuc3BsaXQoIi4iKVsxXSk7cmV0dXJuIGl8fChpPW4sbj10LldpZGdldCksQXJyYXkuaXNBcnJheShpKSYmKGk9dC5leHRlbmQuYXBwbHkobnVsbCxbe31dLmNvbmNhdChpKSkpLHQuZXhwci5wc2V1ZG9zW2wudG9Mb3dlckNhc2UoKV09ZnVuY3Rpb24oZSl7cmV0dXJuISF0LmRhdGEoZSxsKX0sdFt1XT10W3VdfHx7fSxyPXRbdV1bZV0sbz10W3VdW2VdPWZ1bmN0aW9uKHQsZSl7aWYoIXRoaXN8fCF0aGlzLl9jcmVhdGVXaWRnZXQpcmV0dXJuIG5ldyBvKHQsZSk7YXJndW1lbnRzLmxlbmd0aCYmdGhpcy5fY3JlYXRlV2lkZ2V0KHQsZSl9LHQuZXh0ZW5kKG8scix7dmVyc2lvbjppLnZlcnNpb24sX3Byb3RvOnQuZXh0ZW5kKHt9LGkpLF9jaGlsZENvbnN0cnVjdG9yczpbXX0pLChzPW5ldyBuKS5vcHRpb25zPXQud2lkZ2V0LmV4dGVuZCh7fSxzLm9wdGlvbnMpLHQuZWFjaChpLChmdW5jdGlvbih0LGUpe2FbdF09ImZ1bmN0aW9uIj09dHlwZW9mIGU/ZnVuY3Rpb24oKXtmdW5jdGlvbiBpKCl7cmV0dXJuIG4ucHJvdG90eXBlW3RdLmFwcGx5KHRoaXMsYXJndW1lbnRzKX1mdW5jdGlvbiByKGUpe3JldHVybiBuLnByb3RvdHlwZVt0XS5hcHBseSh0aGlzLGUpfXJldHVybiBmdW5jdGlvbigpe3ZhciB0LG49dGhpcy5fc3VwZXIsbz10aGlzLl9zdXBlckFwcGx5O3JldHVybiB0aGlzLl9zdXBlcj1pLHRoaXMuX3N1cGVyQXBwbHk9cix0PWUuYXBwbHkodGhpcyxhcmd1bWVudHMpLHRoaXMuX3N1cGVyPW4sdGhpcy5fc3VwZXJBcHBseT1vLHR9fSgpOmV9KSksby5wcm90b3R5cGU9dC53aWRnZXQuZXh0ZW5kKHMse3dpZGdldEV2ZW50UHJlZml4OnImJnMud2lkZ2V0RXZlbnRQcmVmaXh8fGV9LGEse2NvbnN0cnVjdG9yOm8sbmFtZXNwYWNlOnUsd2lkZ2V0TmFtZTplLHdpZGdldEZ1bGxOYW1lOmx9KSxyPyh0LmVhY2goci5fY2hpbGRDb25zdHJ1Y3RvcnMsKGZ1bmN0aW9uKGUsbil7dmFyIGk9bi5wcm90b3R5cGU7dC53aWRnZXQoaS5uYW1lc3BhY2UrIi4iK2kud2lkZ2V0TmFtZSxvLG4uX3Byb3RvKX0pKSxkZWxldGUgci5fY2hpbGRDb25zdHJ1Y3RvcnMpOm4uX2NoaWxkQ29uc3RydWN0b3JzLnB1c2gobyksdC53aWRnZXQuYnJpZGdlKGUsbyksb30sdC53aWRnZXQuZXh0ZW5kPWZ1bmN0aW9uKGUpe2Zvcih2YXIgcixvLHM9aS5jYWxsKGFyZ3VtZW50cywxKSxhPTAsdT1zLmxlbmd0aDthPHU7YSsrKWZvcihyIGluIHNbYV0pbz1zW2FdW3JdLG4uY2FsbChzW2FdLHIpJiZ2b2lkIDAhPT1vJiYodC5pc1BsYWluT2JqZWN0KG8pP2Vbcl09dC5pc1BsYWluT2JqZWN0KGVbcl0pP3Qud2lkZ2V0LmV4dGVuZCh7fSxlW3JdLG8pOnQud2lkZ2V0LmV4dGVuZCh7fSxvKTplW3JdPW8pO3JldHVybiBlfSx0LndpZGdldC5icmlkZ2U9ZnVuY3Rpb24oZSxuKXt2YXIgcj1uLnByb3RvdHlwZS53aWRnZXRGdWxsTmFtZXx8ZTt0LmZuW2VdPWZ1bmN0aW9uKG8pe3ZhciBzPSJzdHJpbmciPT10eXBlb2YgbyxhPWkuY2FsbChhcmd1bWVudHMsMSksdT10aGlzCjtyZXR1cm4gcz90aGlzLmxlbmd0aHx8Imluc3RhbmNlIiE9PW8/dGhpcy5lYWNoKChmdW5jdGlvbigpe3ZhciBuLGk9dC5kYXRhKHRoaXMscik7cmV0dXJuImluc3RhbmNlIj09PW8/KHU9aSwhMSk6aT8iZnVuY3Rpb24iIT10eXBlb2YgaVtvXXx8Il8iPT09by5jaGFyQXQoMCk/dC5lcnJvcigibm8gc3VjaCBtZXRob2QgJyIrbysiJyBmb3IgIitlKyIgd2lkZ2V0IGluc3RhbmNlIik6KG49aVtvXS5hcHBseShpLGEpKSE9PWkmJnZvaWQgMCE9PW4/KHU9biYmbi5qcXVlcnk/dS5wdXNoU3RhY2sobi5nZXQoKSk6biwhMSk6dm9pZCAwOnQuZXJyb3IoImNhbm5vdCBjYWxsIG1ldGhvZHMgb24gIitlKyIgcHJpb3IgdG8gaW5pdGlhbGl6YXRpb247IGF0dGVtcHRlZCB0byBjYWxsIG1ldGhvZCAnIitvKyInIil9KSk6dT12b2lkIDA6KGEubGVuZ3RoJiYobz10LndpZGdldC5leHRlbmQuYXBwbHkobnVsbCxbb10uY29uY2F0KGEpKSksdGhpcy5lYWNoKChmdW5jdGlvbigpe3ZhciBlPXQuZGF0YSh0aGlzLHIpO2U/KGUub3B0aW9uKG98fHt9KSxlLl9pbml0JiZlLl9pbml0KCkpOnQuZGF0YSh0aGlzLHIsbmV3IG4obyx0aGlzKSl9KSkpLHV9fSx0LldpZGdldD1mdW5jdGlvbigpe30sdC5XaWRnZXQuX2NoaWxkQ29uc3RydWN0b3JzPVtdLHQuV2lkZ2V0LnByb3RvdHlwZT17d2lkZ2V0TmFtZToid2lkZ2V0Iix3aWRnZXRFdmVudFByZWZpeDoiIixkZWZhdWx0RWxlbWVudDoiPGRpdj4iLG9wdGlvbnM6e2NsYXNzZXM6e30sZGlzYWJsZWQ6ITEsY3JlYXRlOm51bGx9LF9jcmVhdGVXaWRnZXQ6ZnVuY3Rpb24obixpKXtpPXQoaXx8dGhpcy5kZWZhdWx0RWxlbWVudHx8dGhpcylbMF0sdGhpcy5lbGVtZW50PXQoaSksdGhpcy51dWlkPWUrKyx0aGlzLmV2ZW50TmFtZXNwYWNlPSIuIit0aGlzLndpZGdldE5hbWUrdGhpcy51dWlkLHRoaXMuYmluZGluZ3M9dCgpLHRoaXMuaG92ZXJhYmxlPXQoKSx0aGlzLmZvY3VzYWJsZT10KCksdGhpcy5jbGFzc2VzRWxlbWVudExvb2t1cD17fSxpIT09dGhpcyYmKHQuZGF0YShpLHRoaXMud2lkZ2V0RnVsbE5hbWUsdGhpcyksdGhpcy5fb24oITAsdGhpcy5lbGVtZW50LHtyZW1vdmU6ZnVuY3Rpb24odCl7dC50YXJnZXQ9PT1pJiZ0aGlzLmRlc3Ryb3koKX19KSx0aGlzLmRvY3VtZW50PXQoaS5zdHlsZT9pLm93bmVyRG9jdW1lbnQ6aS5kb2N1bWVudHx8aSksdGhpcy53aW5kb3c9dCh0aGlzLmRvY3VtZW50WzBdLmRlZmF1bHRWaWV3fHx0aGlzLmRvY3VtZW50WzBdLnBhcmVudFdpbmRvdykpLHRoaXMub3B0aW9ucz10LndpZGdldC5leHRlbmQoe30sdGhpcy5vcHRpb25zLHRoaXMuX2dldENyZWF0ZU9wdGlvbnMoKSxuKSx0aGlzLl9jcmVhdGUoKSx0aGlzLm9wdGlvbnMuZGlzYWJsZWQmJnRoaXMuX3NldE9wdGlvbkRpc2FibGVkKHRoaXMub3B0aW9ucy5kaXNhYmxlZCksdGhpcy5fdHJpZ2dlcigiY3JlYXRlIixudWxsLHRoaXMuX2dldENyZWF0ZUV2ZW50RGF0YSgpKSx0aGlzLl9pbml0KCl9LF9nZXRDcmVhdGVPcHRpb25zOmZ1bmN0aW9uKCl7cmV0dXJue319LF9nZXRDcmVhdGVFdmVudERhdGE6dC5ub29wLF9jcmVhdGU6dC5ub29wLF9pbml0OnQubm9vcCxkZXN0cm95OmZ1bmN0aW9uKCl7dmFyIGU9dGhpczt0aGlzLl9kZXN0cm95KCksdC5lYWNoKHRoaXMuY2xhc3Nlc0VsZW1lbnRMb29rdXAsKGZ1bmN0aW9uKHQsbil7ZS5fcmVtb3ZlQ2xhc3Mobix0KX0pKSx0aGlzLmVsZW1lbnQub2ZmKHRoaXMuZXZlbnROYW1lc3BhY2UpLnJlbW92ZURhdGEodGhpcy53aWRnZXRGdWxsTmFtZSksdGhpcy53aWRnZXQoKS5vZmYodGhpcy5ldmVudE5hbWVzcGFjZSkucmVtb3ZlQXR0cigiYXJpYS1kaXNhYmxlZCIpLHRoaXMuYmluZGluZ3Mub2ZmKHRoaXMuZXZlbnROYW1lc3BhY2UpfSxfZGVzdHJveTp0Lm5vb3Asd2lkZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZWxlbWVudH0sb3B0aW9uOmZ1bmN0aW9uKGUsbil7dmFyIGkscixvLHM9ZTtpZigwPT09YXJndW1lbnRzLmxlbmd0aClyZXR1cm4gdC53aWRnZXQuZXh0ZW5kKHt9LHRoaXMub3B0aW9ucyk7aWYoInN0cmluZyI9PXR5cGVvZiBlKWlmKHM9e30saT1lLnNwbGl0KCIuIiksZT1pLnNoaWZ0KCksaS5sZW5ndGgpe2ZvcihyPXNbZV09dC53aWRnZXQuZXh0ZW5kKHt9LHRoaXMub3B0aW9uc1tlXSksbz0wO288aS5sZW5ndGgtMTtvKyspcltpW29dXT1yW2lbb11dfHx7fSxyPXJbaVtvXV07aWYoZT1pLnBvcCgpLDE9PT1hcmd1bWVudHMubGVuZ3RoKXJldHVybiB2b2lkIDA9PT1yW2VdP251bGw6cltlXTtyW2VdPW59ZWxzZXtpZigxPT09YXJndW1lbnRzLmxlbmd0aClyZXR1cm4gdm9pZCAwPT09dGhpcy5vcHRpb25zW2VdP251bGw6dGhpcy5vcHRpb25zW2VdO3NbZV09bn1yZXR1cm4gdGhpcy5fc2V0T3B0aW9ucyhzKSx0aGlzfSxfc2V0T3B0aW9uczpmdW5jdGlvbih0KXt2YXIgZTtmb3IoZSBpbiB0KXRoaXMuX3NldE9wdGlvbihlLHRbZV0pO3JldHVybiB0aGlzfSxfc2V0T3B0aW9uOmZ1bmN0aW9uKHQsZSl7cmV0dXJuImNsYXNzZXMiPT09dCYmdGhpcy5fc2V0T3B0aW9uQ2xhc3NlcyhlKSx0aGlzLm9wdGlvbnNbdF09ZSwiZGlzYWJsZWQiPT09dCYmdGhpcy5fc2V0T3B0aW9uRGlzYWJsZWQoZSksdGhpc30sX3NldE9wdGlvbkNsYXNzZXM6ZnVuY3Rpb24oZSl7dmFyIG4saSxyO2ZvcihuIGluIGUpcj10aGlzLmNsYXNzZXNFbGVtZW50TG9va3VwW25dLGVbbl0hPT10aGlzLm9wdGlvbnMuY2xhc3Nlc1tuXSYmciYmci5sZW5ndGgmJihpPXQoci5nZXQoKSksdGhpcy5fcmVtb3ZlQ2xhc3MocixuKSxpLmFkZENsYXNzKHRoaXMuX2NsYXNzZXMoe2VsZW1lbnQ6aSxrZXlzOm4sY2xhc3NlczplLGFkZDohMH0pKSl9LF9zZXRPcHRpb25EaXNhYmxlZDpmdW5jdGlvbih0KXt0aGlzLl90b2dnbGVDbGFzcyh0aGlzLndpZGdldCgpLHRoaXMud2lkZ2V0RnVsbE5hbWUrIi1kaXNhYmxlZCIsbnVsbCwhIXQpLHQmJih0aGlzLl9yZW1vdmVDbGFzcyh0aGlzLmhvdmVyYWJsZSxudWxsLCJ1aS1zdGF0ZS1ob3ZlciIpLHRoaXMuX3JlbW92ZUNsYXNzKHRoaXMuZm9jdXNhYmxlLG51bGwsInVpLXN0YXRlLWZvY3VzIikpfSwKZW5hYmxlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX3NldE9wdGlvbnMoe2Rpc2FibGVkOiExfSl9LGRpc2FibGU6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fc2V0T3B0aW9ucyh7ZGlzYWJsZWQ6ITB9KX0sX2NsYXNzZXM6ZnVuY3Rpb24oZSl7dmFyIG49W10saT10aGlzO2Z1bmN0aW9uIHIoKXt2YXIgbj1bXTtlLmVsZW1lbnQuZWFjaCgoZnVuY3Rpb24oZSxyKXt0Lm1hcChpLmNsYXNzZXNFbGVtZW50TG9va3VwLChmdW5jdGlvbih0KXtyZXR1cm4gdH0pKS5zb21lKChmdW5jdGlvbih0KXtyZXR1cm4gdC5pcyhyKX0pKXx8bi5wdXNoKHIpfSkpLGkuX29uKHQobikse3JlbW92ZToiX3VudHJhY2tDbGFzc2VzRWxlbWVudCJ9KX1mdW5jdGlvbiBvKG8scyl7dmFyIGEsdTtmb3IodT0wO3U8by5sZW5ndGg7dSsrKWE9aS5jbGFzc2VzRWxlbWVudExvb2t1cFtvW3VdXXx8dCgpLGUuYWRkPyhyKCksYT10KHQudW5pcXVlU29ydChhLmdldCgpLmNvbmNhdChlLmVsZW1lbnQuZ2V0KCkpKSkpOmE9dChhLm5vdChlLmVsZW1lbnQpLmdldCgpKSxpLmNsYXNzZXNFbGVtZW50TG9va3VwW29bdV1dPWEsbi5wdXNoKG9bdV0pLHMmJmUuY2xhc3Nlc1tvW3VdXSYmbi5wdXNoKGUuY2xhc3Nlc1tvW3VdXSl9cmV0dXJuKGU9dC5leHRlbmQoe2VsZW1lbnQ6dGhpcy5lbGVtZW50LGNsYXNzZXM6dGhpcy5vcHRpb25zLmNsYXNzZXN8fHt9fSxlKSkua2V5cyYmbyhlLmtleXMubWF0Y2goL1xTKy9nKXx8W10sITApLGUuZXh0cmEmJm8oZS5leHRyYS5tYXRjaCgvXFMrL2cpfHxbXSksbi5qb2luKCIgIil9LF91bnRyYWNrQ2xhc3Nlc0VsZW1lbnQ6ZnVuY3Rpb24oZSl7dmFyIG49dGhpczt0LmVhY2gobi5jbGFzc2VzRWxlbWVudExvb2t1cCwoZnVuY3Rpb24oaSxyKXstMSE9PXQuaW5BcnJheShlLnRhcmdldCxyKSYmKG4uY2xhc3Nlc0VsZW1lbnRMb29rdXBbaV09dChyLm5vdChlLnRhcmdldCkuZ2V0KCkpKX0pKSx0aGlzLl9vZmYodChlLnRhcmdldCkpfSxfcmVtb3ZlQ2xhc3M6ZnVuY3Rpb24odCxlLG4pe3JldHVybiB0aGlzLl90b2dnbGVDbGFzcyh0LGUsbiwhMSl9LF9hZGRDbGFzczpmdW5jdGlvbih0LGUsbil7cmV0dXJuIHRoaXMuX3RvZ2dsZUNsYXNzKHQsZSxuLCEwKX0sX3RvZ2dsZUNsYXNzOmZ1bmN0aW9uKHQsZSxuLGkpe2k9ImJvb2xlYW4iPT10eXBlb2YgaT9pOm47dmFyIHI9InN0cmluZyI9PXR5cGVvZiB0fHxudWxsPT09dCxvPXtleHRyYTpyP2U6bixrZXlzOnI/dDplLGVsZW1lbnQ6cj90aGlzLmVsZW1lbnQ6dCxhZGQ6aX07cmV0dXJuIG8uZWxlbWVudC50b2dnbGVDbGFzcyh0aGlzLl9jbGFzc2VzKG8pLGkpLHRoaXN9LF9vbjpmdW5jdGlvbihlLG4saSl7dmFyIHIsbz10aGlzOyJib29sZWFuIiE9dHlwZW9mIGUmJihpPW4sbj1lLGU9ITEpLGk/KG49cj10KG4pLHRoaXMuYmluZGluZ3M9dGhpcy5iaW5kaW5ncy5hZGQobikpOihpPW4sbj10aGlzLmVsZW1lbnQscj10aGlzLndpZGdldCgpKSx0LmVhY2goaSwoZnVuY3Rpb24oaSxzKXtmdW5jdGlvbiBhKCl7aWYoZXx8ITAhPT1vLm9wdGlvbnMuZGlzYWJsZWQmJiF0KHRoaXMpLmhhc0NsYXNzKCJ1aS1zdGF0ZS1kaXNhYmxlZCIpKXJldHVybigic3RyaW5nIj09dHlwZW9mIHM/b1tzXTpzKS5hcHBseShvLGFyZ3VtZW50cyl9InN0cmluZyIhPXR5cGVvZiBzJiYoYS5ndWlkPXMuZ3VpZD1zLmd1aWR8fGEuZ3VpZHx8dC5ndWlkKyspO3ZhciB1PWkubWF0Y2goL14oW1x3Oi1dKilccyooLiopJC8pLGw9dVsxXStvLmV2ZW50TmFtZXNwYWNlLGM9dVsyXTtjP3Iub24obCxjLGEpOm4ub24obCxhKX0pKX0sX29mZjpmdW5jdGlvbihlLG4pe249KG58fCIiKS5zcGxpdCgiICIpLmpvaW4odGhpcy5ldmVudE5hbWVzcGFjZSsiICIpK3RoaXMuZXZlbnROYW1lc3BhY2UsZS5vZmYobiksdGhpcy5iaW5kaW5ncz10KHRoaXMuYmluZGluZ3Mubm90KGUpLmdldCgpKSx0aGlzLmZvY3VzYWJsZT10KHRoaXMuZm9jdXNhYmxlLm5vdChlKS5nZXQoKSksdGhpcy5ob3ZlcmFibGU9dCh0aGlzLmhvdmVyYWJsZS5ub3QoZSkuZ2V0KCkpfSxfZGVsYXk6ZnVuY3Rpb24odCxlKXtmdW5jdGlvbiBuKCl7cmV0dXJuKCJzdHJpbmciPT10eXBlb2YgdD9pW3RdOnQpLmFwcGx5KGksYXJndW1lbnRzKX12YXIgaT10aGlzO3JldHVybiBzZXRUaW1lb3V0KG4sZXx8MCl9LF9ob3ZlcmFibGU6ZnVuY3Rpb24oZSl7dGhpcy5ob3ZlcmFibGU9dGhpcy5ob3ZlcmFibGUuYWRkKGUpLHRoaXMuX29uKGUse21vdXNlZW50ZXI6ZnVuY3Rpb24oZSl7dGhpcy5fYWRkQ2xhc3ModChlLmN1cnJlbnRUYXJnZXQpLG51bGwsInVpLXN0YXRlLWhvdmVyIil9LG1vdXNlbGVhdmU6ZnVuY3Rpb24oZSl7dGhpcy5fcmVtb3ZlQ2xhc3ModChlLmN1cnJlbnRUYXJnZXQpLG51bGwsInVpLXN0YXRlLWhvdmVyIil9fSl9LF9mb2N1c2FibGU6ZnVuY3Rpb24oZSl7dGhpcy5mb2N1c2FibGU9dGhpcy5mb2N1c2FibGUuYWRkKGUpLHRoaXMuX29uKGUse2ZvY3VzaW46ZnVuY3Rpb24oZSl7dGhpcy5fYWRkQ2xhc3ModChlLmN1cnJlbnRUYXJnZXQpLG51bGwsInVpLXN0YXRlLWZvY3VzIil9LGZvY3Vzb3V0OmZ1bmN0aW9uKGUpe3RoaXMuX3JlbW92ZUNsYXNzKHQoZS5jdXJyZW50VGFyZ2V0KSxudWxsLCJ1aS1zdGF0ZS1mb2N1cyIpfX0pfSxfdHJpZ2dlcjpmdW5jdGlvbihlLG4saSl7dmFyIHIsbyxzPXRoaXMub3B0aW9uc1tlXTtpZihpPWl8fHt9LChuPXQuRXZlbnQobikpLnR5cGU9KGU9PT10aGlzLndpZGdldEV2ZW50UHJlZml4P2U6dGhpcy53aWRnZXRFdmVudFByZWZpeCtlKS50b0xvd2VyQ2FzZSgpLG4udGFyZ2V0PXRoaXMuZWxlbWVudFswXSxvPW4ub3JpZ2luYWxFdmVudClmb3IociBpbiBvKXIgaW4gbnx8KG5bcl09b1tyXSk7cmV0dXJuIHRoaXMuZWxlbWVudC50cmlnZ2VyKG4saSksISgiZnVuY3Rpb24iPT10eXBlb2YgcyYmITE9PT1zLmFwcGx5KHRoaXMuZWxlbWVudFswXSxbbl0uY29uY2F0KGkpKXx8bi5pc0RlZmF1bHRQcmV2ZW50ZWQoKSl9fSx0LmVhY2goe3Nob3c6ImZhZGVJbiIsaGlkZToiZmFkZU91dCJ9LChmdW5jdGlvbihlLG4pe3QuV2lkZ2V0LnByb3RvdHlwZVsiXyIrZV09ZnVuY3Rpb24oaSxyLG8pewp2YXIgczsic3RyaW5nIj09dHlwZW9mIHImJihyPXtlZmZlY3Q6cn0pO3ZhciBhPXI/ITA9PT1yfHwibnVtYmVyIj09dHlwZW9mIHI/bjpyLmVmZmVjdHx8bjplOyJudW1iZXIiPT10eXBlb2Yocj1yfHx7fSk/cj17ZHVyYXRpb246cn06ITA9PT1yJiYocj17fSkscz0hdC5pc0VtcHR5T2JqZWN0KHIpLHIuY29tcGxldGU9byxyLmRlbGF5JiZpLmRlbGF5KHIuZGVsYXkpLHMmJnQuZWZmZWN0cyYmdC5lZmZlY3RzLmVmZmVjdFthXT9pW2VdKHIpOmEhPT1lJiZpW2FdP2lbYV0oci5kdXJhdGlvbixyLmVhc2luZyxvKTppLnF1ZXVlKChmdW5jdGlvbihuKXt0KHRoaXMpW2VdKCksbyYmby5jYWxsKGlbMF0pLG4oKX0pKX19KSksdC53aWRnZXR9LHZvaWQgMD09PShvPSJmdW5jdGlvbiI9PXR5cGVvZiBpP2kuYXBwbHkoZSxyKTppKXx8KHQuZXhwb3J0cz1vKX0oKX0sMjg5MTMyKHQsZSxuKXt2YXIgaSxyLG87IWZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO3I9W24oNDgyNTA0KSxuKDI5MzI3MSksbigxNjg3MDEpLG4oNjY2MzQ5KV0sdm9pZCAwPT09KG89ImZ1bmN0aW9uIj09dHlwZW9mKGk9ZnVuY3Rpb24odCl7dmFyIGU9ITE7cmV0dXJuIHQoZG9jdW1lbnQpLm9uKCJtb3VzZXVwIiwoZnVuY3Rpb24oKXtlPSExfSkpLHQud2lkZ2V0KCJ1aS5tb3VzZSIse3ZlcnNpb246IjEuMTMuMiIsb3B0aW9uczp7Y2FuY2VsOiJpbnB1dCwgdGV4dGFyZWEsIGJ1dHRvbiwgc2VsZWN0LCBvcHRpb24iLGRpc3RhbmNlOjEsZGVsYXk6MH0sX21vdXNlSW5pdDpmdW5jdGlvbigpe3ZhciBlPXRoaXM7dGhpcy5lbGVtZW50Lm9uKCJtb3VzZWRvd24uIit0aGlzLndpZGdldE5hbWUsKGZ1bmN0aW9uKHQpe3JldHVybiBlLl9tb3VzZURvd24odCl9KSkub24oImNsaWNrLiIrdGhpcy53aWRnZXROYW1lLChmdW5jdGlvbihuKXtpZighMD09PXQuZGF0YShuLnRhcmdldCxlLndpZGdldE5hbWUrIi5wcmV2ZW50Q2xpY2tFdmVudCIpKXJldHVybiB0LnJlbW92ZURhdGEobi50YXJnZXQsZS53aWRnZXROYW1lKyIucHJldmVudENsaWNrRXZlbnQiKSxuLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpLCExfSkpLHRoaXMuc3RhcnRlZD0hMX0sX21vdXNlRGVzdHJveTpmdW5jdGlvbigpe3RoaXMuZWxlbWVudC5vZmYoIi4iK3RoaXMud2lkZ2V0TmFtZSksdGhpcy5fbW91c2VNb3ZlRGVsZWdhdGUmJnRoaXMuZG9jdW1lbnQub2ZmKCJtb3VzZW1vdmUuIit0aGlzLndpZGdldE5hbWUsdGhpcy5fbW91c2VNb3ZlRGVsZWdhdGUpLm9mZigibW91c2V1cC4iK3RoaXMud2lkZ2V0TmFtZSx0aGlzLl9tb3VzZVVwRGVsZWdhdGUpfSxfbW91c2VEb3duOmZ1bmN0aW9uKG4pe2lmKCFlKXt0aGlzLl9tb3VzZU1vdmVkPSExLHRoaXMuX21vdXNlU3RhcnRlZCYmdGhpcy5fbW91c2VVcChuKSx0aGlzLl9tb3VzZURvd25FdmVudD1uO3ZhciBpPXRoaXMscj0xPT09bi53aGljaCxvPSEoInN0cmluZyIhPXR5cGVvZiB0aGlzLm9wdGlvbnMuY2FuY2VsfHwhbi50YXJnZXQubm9kZU5hbWUpJiZ0KG4udGFyZ2V0KS5jbG9zZXN0KHRoaXMub3B0aW9ucy5jYW5jZWwpLmxlbmd0aDtyZXR1cm4hKHImJiFvJiZ0aGlzLl9tb3VzZUNhcHR1cmUobikpfHwodGhpcy5tb3VzZURlbGF5TWV0PSF0aGlzLm9wdGlvbnMuZGVsYXksdGhpcy5tb3VzZURlbGF5TWV0fHwodGhpcy5fbW91c2VEZWxheVRpbWVyPXNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7aS5tb3VzZURlbGF5TWV0PSEwfSksdGhpcy5vcHRpb25zLmRlbGF5KSksdGhpcy5fbW91c2VEaXN0YW5jZU1ldChuKSYmdGhpcy5fbW91c2VEZWxheU1ldChuKSYmKHRoaXMuX21vdXNlU3RhcnRlZD0hMSE9PXRoaXMuX21vdXNlU3RhcnQobiksIXRoaXMuX21vdXNlU3RhcnRlZCk/KG4ucHJldmVudERlZmF1bHQoKSwhMCk6KCEwPT09dC5kYXRhKG4udGFyZ2V0LHRoaXMud2lkZ2V0TmFtZSsiLnByZXZlbnRDbGlja0V2ZW50IikmJnQucmVtb3ZlRGF0YShuLnRhcmdldCx0aGlzLndpZGdldE5hbWUrIi5wcmV2ZW50Q2xpY2tFdmVudCIpLHRoaXMuX21vdXNlTW92ZURlbGVnYXRlPWZ1bmN0aW9uKHQpe3JldHVybiBpLl9tb3VzZU1vdmUodCl9LHRoaXMuX21vdXNlVXBEZWxlZ2F0ZT1mdW5jdGlvbih0KXtyZXR1cm4gaS5fbW91c2VVcCh0KX0sdGhpcy5kb2N1bWVudC5vbigibW91c2Vtb3ZlLiIrdGhpcy53aWRnZXROYW1lLHRoaXMuX21vdXNlTW92ZURlbGVnYXRlKS5vbigibW91c2V1cC4iK3RoaXMud2lkZ2V0TmFtZSx0aGlzLl9tb3VzZVVwRGVsZWdhdGUpLG4ucHJldmVudERlZmF1bHQoKSxlPSEwLCEwKSl9fSxfbW91c2VNb3ZlOmZ1bmN0aW9uKGUpe2lmKHRoaXMuX21vdXNlTW92ZWQpe2lmKHQudWkuaWUmJighZG9jdW1lbnQuZG9jdW1lbnRNb2RlfHxkb2N1bWVudC5kb2N1bWVudE1vZGU8OSkmJiFlLmJ1dHRvbilyZXR1cm4gdGhpcy5fbW91c2VVcChlKTtpZighZS53aGljaClpZihlLm9yaWdpbmFsRXZlbnQuYWx0S2V5fHxlLm9yaWdpbmFsRXZlbnQuY3RybEtleXx8ZS5vcmlnaW5hbEV2ZW50Lm1ldGFLZXl8fGUub3JpZ2luYWxFdmVudC5zaGlmdEtleSl0aGlzLmlnbm9yZU1pc3NpbmdXaGljaD0hMDtlbHNlIGlmKCF0aGlzLmlnbm9yZU1pc3NpbmdXaGljaClyZXR1cm4gdGhpcy5fbW91c2VVcChlKX1yZXR1cm4oZS53aGljaHx8ZS5idXR0b24pJiYodGhpcy5fbW91c2VNb3ZlZD0hMCksdGhpcy5fbW91c2VTdGFydGVkPyh0aGlzLl9tb3VzZURyYWcoZSksZS5wcmV2ZW50RGVmYXVsdCgpKToodGhpcy5fbW91c2VEaXN0YW5jZU1ldChlKSYmdGhpcy5fbW91c2VEZWxheU1ldChlKSYmKHRoaXMuX21vdXNlU3RhcnRlZD0hMSE9PXRoaXMuX21vdXNlU3RhcnQodGhpcy5fbW91c2VEb3duRXZlbnQsZSksdGhpcy5fbW91c2VTdGFydGVkP3RoaXMuX21vdXNlRHJhZyhlKTp0aGlzLl9tb3VzZVVwKGUpKSwhdGhpcy5fbW91c2VTdGFydGVkKX0sX21vdXNlVXA6ZnVuY3Rpb24obil7dGhpcy5kb2N1bWVudC5vZmYoIm1vdXNlbW92ZS4iK3RoaXMud2lkZ2V0TmFtZSx0aGlzLl9tb3VzZU1vdmVEZWxlZ2F0ZSkub2ZmKCJtb3VzZXVwLiIrdGhpcy53aWRnZXROYW1lLHRoaXMuX21vdXNlVXBEZWxlZ2F0ZSksCnRoaXMuX21vdXNlU3RhcnRlZCYmKHRoaXMuX21vdXNlU3RhcnRlZD0hMSxuLnRhcmdldD09PXRoaXMuX21vdXNlRG93bkV2ZW50LnRhcmdldCYmdC5kYXRhKG4udGFyZ2V0LHRoaXMud2lkZ2V0TmFtZSsiLnByZXZlbnRDbGlja0V2ZW50IiwhMCksdGhpcy5fbW91c2VTdG9wKG4pKSx0aGlzLl9tb3VzZURlbGF5VGltZXImJihjbGVhclRpbWVvdXQodGhpcy5fbW91c2VEZWxheVRpbWVyKSxkZWxldGUgdGhpcy5fbW91c2VEZWxheVRpbWVyKSx0aGlzLmlnbm9yZU1pc3NpbmdXaGljaD0hMSxlPSExLG4ucHJldmVudERlZmF1bHQoKX0sX21vdXNlRGlzdGFuY2VNZXQ6ZnVuY3Rpb24odCl7cmV0dXJuIE1hdGgubWF4KE1hdGguYWJzKHRoaXMuX21vdXNlRG93bkV2ZW50LnBhZ2VYLXQucGFnZVgpLE1hdGguYWJzKHRoaXMuX21vdXNlRG93bkV2ZW50LnBhZ2VZLXQucGFnZVkpKT49dGhpcy5vcHRpb25zLmRpc3RhbmNlfSxfbW91c2VEZWxheU1ldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLm1vdXNlRGVsYXlNZXR9LF9tb3VzZVN0YXJ0OmZ1bmN0aW9uKCl7fSxfbW91c2VEcmFnOmZ1bmN0aW9uKCl7fSxfbW91c2VTdG9wOmZ1bmN0aW9uKCl7fSxfbW91c2VDYXB0dXJlOmZ1bmN0aW9uKCl7cmV0dXJuITB9fSl9KT9pLmFwcGx5KGUscik6aSl8fCh0LmV4cG9ydHM9byl9KCl9LDEyMTYzNCh0LGUsbil7dmFyIGkscixvOyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0IjtyPVtuKDQ4MjUwNCksbigyODkxMzIpLG4oNzE2OTkpLG4oMTY4NzAxKSxuKDY2NjM0OSldLGk9ZnVuY3Rpb24odCl7cmV0dXJuIHQud2lkZ2V0KCJ1aS5zbGlkZXIiLHQudWkubW91c2Use3ZlcnNpb246IjEuMTMuMiIsd2lkZ2V0RXZlbnRQcmVmaXg6InNsaWRlIixvcHRpb25zOnthbmltYXRlOiExLGNsYXNzZXM6eyJ1aS1zbGlkZXIiOiJ1aS1jb3JuZXItYWxsIiwidWktc2xpZGVyLWhhbmRsZSI6InVpLWNvcm5lci1hbGwiLCJ1aS1zbGlkZXItcmFuZ2UiOiJ1aS1jb3JuZXItYWxsIHVpLXdpZGdldC1oZWFkZXIifSxkaXN0YW5jZTowLG1heDoxMDAsbWluOjAsb3JpZW50YXRpb246Imhvcml6b250YWwiLHJhbmdlOiExLHN0ZXA6MSx2YWx1ZTowLHZhbHVlczpudWxsLGNoYW5nZTpudWxsLHNsaWRlOm51bGwsc3RhcnQ6bnVsbCxzdG9wOm51bGx9LG51bVBhZ2VzOjUsX2NyZWF0ZTpmdW5jdGlvbigpe3RoaXMuX2tleVNsaWRpbmc9ITEsdGhpcy5fbW91c2VTbGlkaW5nPSExLHRoaXMuX2FuaW1hdGVPZmY9ITAsdGhpcy5faGFuZGxlSW5kZXg9bnVsbCx0aGlzLl9kZXRlY3RPcmllbnRhdGlvbigpLHRoaXMuX21vdXNlSW5pdCgpLHRoaXMuX2NhbGN1bGF0ZU5ld01heCgpLHRoaXMuX2FkZENsYXNzKCJ1aS1zbGlkZXIgdWktc2xpZGVyLSIrdGhpcy5vcmllbnRhdGlvbiwidWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IiksdGhpcy5fcmVmcmVzaCgpLHRoaXMuX2FuaW1hdGVPZmY9ITF9LF9yZWZyZXNoOmZ1bmN0aW9uKCl7dGhpcy5fY3JlYXRlUmFuZ2UoKSx0aGlzLl9jcmVhdGVIYW5kbGVzKCksdGhpcy5fc2V0dXBFdmVudHMoKSx0aGlzLl9yZWZyZXNoVmFsdWUoKX0sX2NyZWF0ZUhhbmRsZXM6ZnVuY3Rpb24oKXt2YXIgZSxuLGk9dGhpcy5vcHRpb25zLHI9dGhpcy5lbGVtZW50LmZpbmQoIi51aS1zbGlkZXItaGFuZGxlIiksbz0iPHNwYW4gdGFiaW5kZXg9JzAnPjwvc3Bhbj4iLHM9W107Zm9yKG49aS52YWx1ZXMmJmkudmFsdWVzLmxlbmd0aHx8MSxyLmxlbmd0aD5uJiYoci5zbGljZShuKS5yZW1vdmUoKSxyPXIuc2xpY2UoMCxuKSksZT1yLmxlbmd0aDtlPG47ZSsrKXMucHVzaChvKTt0aGlzLmhhbmRsZXM9ci5hZGQodChzLmpvaW4oIiIpKS5hcHBlbmRUbyh0aGlzLmVsZW1lbnQpKSx0aGlzLl9hZGRDbGFzcyh0aGlzLmhhbmRsZXMsInVpLXNsaWRlci1oYW5kbGUiLCJ1aS1zdGF0ZS1kZWZhdWx0IiksdGhpcy5oYW5kbGU9dGhpcy5oYW5kbGVzLmVxKDApLHRoaXMuaGFuZGxlcy5lYWNoKChmdW5jdGlvbihlKXt0KHRoaXMpLmRhdGEoInVpLXNsaWRlci1oYW5kbGUtaW5kZXgiLGUpLmF0dHIoInRhYkluZGV4IiwwKX0pKX0sX2NyZWF0ZVJhbmdlOmZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5vcHRpb25zO2UucmFuZ2U/KCEwPT09ZS5yYW5nZSYmKGUudmFsdWVzP2UudmFsdWVzLmxlbmd0aCYmMiE9PWUudmFsdWVzLmxlbmd0aD9lLnZhbHVlcz1bZS52YWx1ZXNbMF0sZS52YWx1ZXNbMF1dOkFycmF5LmlzQXJyYXkoZS52YWx1ZXMpJiYoZS52YWx1ZXM9ZS52YWx1ZXMuc2xpY2UoMCkpOmUudmFsdWVzPVt0aGlzLl92YWx1ZU1pbigpLHRoaXMuX3ZhbHVlTWluKCldKSx0aGlzLnJhbmdlJiZ0aGlzLnJhbmdlLmxlbmd0aD8odGhpcy5fcmVtb3ZlQ2xhc3ModGhpcy5yYW5nZSwidWktc2xpZGVyLXJhbmdlLW1pbiB1aS1zbGlkZXItcmFuZ2UtbWF4IiksdGhpcy5yYW5nZS5jc3Moe2xlZnQ6IiIsYm90dG9tOiIifSkpOih0aGlzLnJhbmdlPXQoIjxkaXY+IikuYXBwZW5kVG8odGhpcy5lbGVtZW50KSx0aGlzLl9hZGRDbGFzcyh0aGlzLnJhbmdlLCJ1aS1zbGlkZXItcmFuZ2UiKSksIm1pbiIhPT1lLnJhbmdlJiYibWF4IiE9PWUucmFuZ2V8fHRoaXMuX2FkZENsYXNzKHRoaXMucmFuZ2UsInVpLXNsaWRlci1yYW5nZS0iK2UucmFuZ2UpKToodGhpcy5yYW5nZSYmdGhpcy5yYW5nZS5yZW1vdmUoKSx0aGlzLnJhbmdlPW51bGwpfSxfc2V0dXBFdmVudHM6ZnVuY3Rpb24oKXt0aGlzLl9vZmYodGhpcy5oYW5kbGVzKSx0aGlzLl9vbih0aGlzLmhhbmRsZXMsdGhpcy5faGFuZGxlRXZlbnRzKSx0aGlzLl9ob3ZlcmFibGUodGhpcy5oYW5kbGVzKSx0aGlzLl9mb2N1c2FibGUodGhpcy5oYW5kbGVzKX0sX2Rlc3Ryb3k6ZnVuY3Rpb24oKXt0aGlzLmhhbmRsZXMucmVtb3ZlKCksdGhpcy5yYW5nZSYmdGhpcy5yYW5nZS5yZW1vdmUoKSx0aGlzLl9tb3VzZURlc3Ryb3koKX0sX21vdXNlQ2FwdHVyZTpmdW5jdGlvbihlKXt2YXIgbixpLHIsbyxzLGEsdSxsPXRoaXMsYz10aGlzLm9wdGlvbnM7cmV0dXJuIWMuZGlzYWJsZWQmJih0aGlzLmVsZW1lbnRTaXplPXt3aWR0aDp0aGlzLmVsZW1lbnQub3V0ZXJXaWR0aCgpLGhlaWdodDp0aGlzLmVsZW1lbnQub3V0ZXJIZWlnaHQoKQp9LHRoaXMuZWxlbWVudE9mZnNldD10aGlzLmVsZW1lbnQub2Zmc2V0KCksbj17eDplLnBhZ2VYLHk6ZS5wYWdlWX0saT10aGlzLl9ub3JtVmFsdWVGcm9tTW91c2Uobikscj10aGlzLl92YWx1ZU1heCgpLXRoaXMuX3ZhbHVlTWluKCkrMSx0aGlzLmhhbmRsZXMuZWFjaCgoZnVuY3Rpb24oZSl7dmFyIG49TWF0aC5hYnMoaS1sLnZhbHVlcyhlKSk7KHI+bnx8cj09PW4mJihlPT09bC5fbGFzdENoYW5nZWRWYWx1ZXx8bC52YWx1ZXMoZSk9PT1jLm1pbikpJiYocj1uLG89dCh0aGlzKSxzPWUpfSkpLCExIT09dGhpcy5fc3RhcnQoZSxzKSYmKHRoaXMuX21vdXNlU2xpZGluZz0hMCx0aGlzLl9oYW5kbGVJbmRleD1zLHRoaXMuX2FkZENsYXNzKG8sbnVsbCwidWktc3RhdGUtYWN0aXZlIiksby50cmlnZ2VyKCJmb2N1cyIpLGE9by5vZmZzZXQoKSx1PSF0KGUudGFyZ2V0KS5wYXJlbnRzKCkuYWRkQmFjaygpLmlzKCIudWktc2xpZGVyLWhhbmRsZSIpLHRoaXMuX2NsaWNrT2Zmc2V0PXU/e2xlZnQ6MCx0b3A6MH06e2xlZnQ6ZS5wYWdlWC1hLmxlZnQtby53aWR0aCgpLzIsdG9wOmUucGFnZVktYS50b3Atby5oZWlnaHQoKS8yLShwYXJzZUludChvLmNzcygiYm9yZGVyVG9wV2lkdGgiKSwxMCl8fDApLShwYXJzZUludChvLmNzcygiYm9yZGVyQm90dG9tV2lkdGgiKSwxMCl8fDApKyhwYXJzZUludChvLmNzcygibWFyZ2luVG9wIiksMTApfHwwKX0sdGhpcy5oYW5kbGVzLmhhc0NsYXNzKCJ1aS1zdGF0ZS1ob3ZlciIpfHx0aGlzLl9zbGlkZShlLHMsaSksdGhpcy5fYW5pbWF0ZU9mZj0hMCwhMCkpfSxfbW91c2VTdGFydDpmdW5jdGlvbigpe3JldHVybiEwfSxfbW91c2VEcmFnOmZ1bmN0aW9uKHQpe3ZhciBlPXt4OnQucGFnZVgseTp0LnBhZ2VZfSxuPXRoaXMuX25vcm1WYWx1ZUZyb21Nb3VzZShlKTtyZXR1cm4gdGhpcy5fc2xpZGUodCx0aGlzLl9oYW5kbGVJbmRleCxuKSwhMX0sX21vdXNlU3RvcDpmdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fcmVtb3ZlQ2xhc3ModGhpcy5oYW5kbGVzLG51bGwsInVpLXN0YXRlLWFjdGl2ZSIpLHRoaXMuX21vdXNlU2xpZGluZz0hMSx0aGlzLl9zdG9wKHQsdGhpcy5faGFuZGxlSW5kZXgpLHRoaXMuX2NoYW5nZSh0LHRoaXMuX2hhbmRsZUluZGV4KSx0aGlzLl9oYW5kbGVJbmRleD1udWxsLHRoaXMuX2NsaWNrT2Zmc2V0PW51bGwsdGhpcy5fYW5pbWF0ZU9mZj0hMSwhMX0sX2RldGVjdE9yaWVudGF0aW9uOmZ1bmN0aW9uKCl7dGhpcy5vcmllbnRhdGlvbj0idmVydGljYWwiPT09dGhpcy5vcHRpb25zLm9yaWVudGF0aW9uPyJ2ZXJ0aWNhbCI6Imhvcml6b250YWwifSxfbm9ybVZhbHVlRnJvbU1vdXNlOmZ1bmN0aW9uKHQpe3ZhciBlLG4saSxyLG87cmV0dXJuImhvcml6b250YWwiPT09dGhpcy5vcmllbnRhdGlvbj8oZT10aGlzLmVsZW1lbnRTaXplLndpZHRoLG49dC54LXRoaXMuZWxlbWVudE9mZnNldC5sZWZ0LSh0aGlzLl9jbGlja09mZnNldD90aGlzLl9jbGlja09mZnNldC5sZWZ0OjApKTooZT10aGlzLmVsZW1lbnRTaXplLmhlaWdodCxuPXQueS10aGlzLmVsZW1lbnRPZmZzZXQudG9wLSh0aGlzLl9jbGlja09mZnNldD90aGlzLl9jbGlja09mZnNldC50b3A6MCkpLChpPW4vZSk+MSYmKGk9MSksaTwwJiYoaT0wKSwidmVydGljYWwiPT09dGhpcy5vcmllbnRhdGlvbiYmKGk9MS1pKSxyPXRoaXMuX3ZhbHVlTWF4KCktdGhpcy5fdmFsdWVNaW4oKSxvPXRoaXMuX3ZhbHVlTWluKCkraSpyLHRoaXMuX3RyaW1BbGlnblZhbHVlKG8pfSxfdWlIYXNoOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaT17aGFuZGxlOnRoaXMuaGFuZGxlc1t0XSxoYW5kbGVJbmRleDp0LHZhbHVlOnZvaWQgMCE9PWU/ZTp0aGlzLnZhbHVlKCl9O3JldHVybiB0aGlzLl9oYXNNdWx0aXBsZVZhbHVlcygpJiYoaS52YWx1ZT12b2lkIDAhPT1lP2U6dGhpcy52YWx1ZXModCksaS52YWx1ZXM9bnx8dGhpcy52YWx1ZXMoKSksaX0sX2hhc011bHRpcGxlVmFsdWVzOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMub3B0aW9ucy52YWx1ZXMmJnRoaXMub3B0aW9ucy52YWx1ZXMubGVuZ3RofSxfc3RhcnQ6ZnVuY3Rpb24odCxlKXtyZXR1cm4gdGhpcy5fdHJpZ2dlcigic3RhcnQiLHQsdGhpcy5fdWlIYXNoKGUpKX0sX3NsaWRlOmZ1bmN0aW9uKHQsZSxuKXt2YXIgaSxyPXRoaXMudmFsdWUoKSxvPXRoaXMudmFsdWVzKCk7dGhpcy5faGFzTXVsdGlwbGVWYWx1ZXMoKSYmKGk9dGhpcy52YWx1ZXMoZT8wOjEpLHI9dGhpcy52YWx1ZXMoZSksMj09PXRoaXMub3B0aW9ucy52YWx1ZXMubGVuZ3RoJiYhMD09PXRoaXMub3B0aW9ucy5yYW5nZSYmKG49MD09PWU/TWF0aC5taW4oaSxuKTpNYXRoLm1heChpLG4pKSxvW2VdPW4pLG4hPT1yJiYhMSE9PXRoaXMuX3RyaWdnZXIoInNsaWRlIix0LHRoaXMuX3VpSGFzaChlLG4sbykpJiYodGhpcy5faGFzTXVsdGlwbGVWYWx1ZXMoKT90aGlzLnZhbHVlcyhlLG4pOnRoaXMudmFsdWUobikpfSxfc3RvcDpmdW5jdGlvbih0LGUpe3RoaXMuX3RyaWdnZXIoInN0b3AiLHQsdGhpcy5fdWlIYXNoKGUpKX0sX2NoYW5nZTpmdW5jdGlvbih0LGUpe3RoaXMuX2tleVNsaWRpbmd8fHRoaXMuX21vdXNlU2xpZGluZ3x8KHRoaXMuX2xhc3RDaGFuZ2VkVmFsdWU9ZSx0aGlzLl90cmlnZ2VyKCJjaGFuZ2UiLHQsdGhpcy5fdWlIYXNoKGUpKSl9LHZhbHVlOmZ1bmN0aW9uKHQpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoPyh0aGlzLm9wdGlvbnMudmFsdWU9dGhpcy5fdHJpbUFsaWduVmFsdWUodCksdGhpcy5fcmVmcmVzaFZhbHVlKCksdm9pZCB0aGlzLl9jaGFuZ2UobnVsbCwwKSk6dGhpcy5fdmFsdWUoKX0sdmFsdWVzOmZ1bmN0aW9uKHQsZSl7dmFyIG4saSxyO2lmKGFyZ3VtZW50cy5sZW5ndGg+MSlyZXR1cm4gdGhpcy5vcHRpb25zLnZhbHVlc1t0XT10aGlzLl90cmltQWxpZ25WYWx1ZShlKSx0aGlzLl9yZWZyZXNoVmFsdWUoKSx2b2lkIHRoaXMuX2NoYW5nZShudWxsLHQpO2lmKCFhcmd1bWVudHMubGVuZ3RoKXJldHVybiB0aGlzLl92YWx1ZXMoKQo7aWYoIUFycmF5LmlzQXJyYXkoYXJndW1lbnRzWzBdKSlyZXR1cm4gdGhpcy5faGFzTXVsdGlwbGVWYWx1ZXMoKT90aGlzLl92YWx1ZXModCk6dGhpcy52YWx1ZSgpO2ZvcihuPXRoaXMub3B0aW9ucy52YWx1ZXMsaT1hcmd1bWVudHNbMF0scj0wO3I8bi5sZW5ndGg7cis9MSluW3JdPXRoaXMuX3RyaW1BbGlnblZhbHVlKGlbcl0pLHRoaXMuX2NoYW5nZShudWxsLHIpO3RoaXMuX3JlZnJlc2hWYWx1ZSgpfSxfc2V0T3B0aW9uOmZ1bmN0aW9uKHQsZSl7dmFyIG4saT0wO3N3aXRjaCgicmFuZ2UiPT09dCYmITA9PT10aGlzLm9wdGlvbnMucmFuZ2UmJigibWluIj09PWU/KHRoaXMub3B0aW9ucy52YWx1ZT10aGlzLl92YWx1ZXMoMCksdGhpcy5vcHRpb25zLnZhbHVlcz1udWxsKToibWF4Ij09PWUmJih0aGlzLm9wdGlvbnMudmFsdWU9dGhpcy5fdmFsdWVzKHRoaXMub3B0aW9ucy52YWx1ZXMubGVuZ3RoLTEpLHRoaXMub3B0aW9ucy52YWx1ZXM9bnVsbCkpLEFycmF5LmlzQXJyYXkodGhpcy5vcHRpb25zLnZhbHVlcykmJihpPXRoaXMub3B0aW9ucy52YWx1ZXMubGVuZ3RoKSx0aGlzLl9zdXBlcih0LGUpLHQpe2Nhc2Uib3JpZW50YXRpb24iOnRoaXMuX2RldGVjdE9yaWVudGF0aW9uKCksdGhpcy5fcmVtb3ZlQ2xhc3MoInVpLXNsaWRlci1ob3Jpem9udGFsIHVpLXNsaWRlci12ZXJ0aWNhbCIpLl9hZGRDbGFzcygidWktc2xpZGVyLSIrdGhpcy5vcmllbnRhdGlvbiksdGhpcy5fcmVmcmVzaFZhbHVlKCksdGhpcy5vcHRpb25zLnJhbmdlJiZ0aGlzLl9yZWZyZXNoUmFuZ2UoZSksdGhpcy5oYW5kbGVzLmNzcygiaG9yaXpvbnRhbCI9PT1lPyJib3R0b20iOiJsZWZ0IiwiIik7YnJlYWs7Y2FzZSJ2YWx1ZSI6dGhpcy5fYW5pbWF0ZU9mZj0hMCx0aGlzLl9yZWZyZXNoVmFsdWUoKSx0aGlzLl9jaGFuZ2UobnVsbCwwKSx0aGlzLl9hbmltYXRlT2ZmPSExO2JyZWFrO2Nhc2UidmFsdWVzIjpmb3IodGhpcy5fYW5pbWF0ZU9mZj0hMCx0aGlzLl9yZWZyZXNoVmFsdWUoKSxuPWktMTtuPj0wO24tLSl0aGlzLl9jaGFuZ2UobnVsbCxuKTt0aGlzLl9hbmltYXRlT2ZmPSExO2JyZWFrO2Nhc2Uic3RlcCI6Y2FzZSJtaW4iOmNhc2UibWF4Ijp0aGlzLl9hbmltYXRlT2ZmPSEwLHRoaXMuX2NhbGN1bGF0ZU5ld01heCgpLHRoaXMuX3JlZnJlc2hWYWx1ZSgpLHRoaXMuX2FuaW1hdGVPZmY9ITE7YnJlYWs7Y2FzZSJyYW5nZSI6dGhpcy5fYW5pbWF0ZU9mZj0hMCx0aGlzLl9yZWZyZXNoKCksdGhpcy5fYW5pbWF0ZU9mZj0hMX19LF9zZXRPcHRpb25EaXNhYmxlZDpmdW5jdGlvbih0KXt0aGlzLl9zdXBlcih0KSx0aGlzLl90b2dnbGVDbGFzcyhudWxsLCJ1aS1zdGF0ZS1kaXNhYmxlZCIsISF0KX0sX3ZhbHVlOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5vcHRpb25zLnZhbHVlO3JldHVybiB0PXRoaXMuX3RyaW1BbGlnblZhbHVlKHQpfSxfdmFsdWVzOmZ1bmN0aW9uKHQpe3ZhciBlLG4saTtpZihhcmd1bWVudHMubGVuZ3RoKXJldHVybiBlPXRoaXMub3B0aW9ucy52YWx1ZXNbdF0sZT10aGlzLl90cmltQWxpZ25WYWx1ZShlKTtpZih0aGlzLl9oYXNNdWx0aXBsZVZhbHVlcygpKXtmb3Iobj10aGlzLm9wdGlvbnMudmFsdWVzLnNsaWNlKCksaT0wO2k8bi5sZW5ndGg7aSs9MSluW2ldPXRoaXMuX3RyaW1BbGlnblZhbHVlKG5baV0pO3JldHVybiBufXJldHVybltdfSxfdHJpbUFsaWduVmFsdWU6ZnVuY3Rpb24odCl7aWYodDw9dGhpcy5fdmFsdWVNaW4oKSlyZXR1cm4gdGhpcy5fdmFsdWVNaW4oKTtpZih0Pj10aGlzLl92YWx1ZU1heCgpKXJldHVybiB0aGlzLl92YWx1ZU1heCgpO3ZhciBlPXRoaXMub3B0aW9ucy5zdGVwPjA/dGhpcy5vcHRpb25zLnN0ZXA6MSxuPSh0LXRoaXMuX3ZhbHVlTWluKCkpJWUsaT10LW47cmV0dXJuIDIqTWF0aC5hYnMobik+PWUmJihpKz1uPjA/ZTotZSkscGFyc2VGbG9hdChpLnRvRml4ZWQoNSkpfSxfY2FsY3VsYXRlTmV3TWF4OmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5vcHRpb25zLm1heCxlPXRoaXMuX3ZhbHVlTWluKCksbj10aGlzLm9wdGlvbnMuc3RlcDsodD1NYXRoLnJvdW5kKCh0LWUpL24pKm4rZSk+dGhpcy5vcHRpb25zLm1heCYmKHQtPW4pLHRoaXMubWF4PXBhcnNlRmxvYXQodC50b0ZpeGVkKHRoaXMuX3ByZWNpc2lvbigpKSl9LF9wcmVjaXNpb246ZnVuY3Rpb24oKXt2YXIgdD10aGlzLl9wcmVjaXNpb25PZih0aGlzLm9wdGlvbnMuc3RlcCk7cmV0dXJuIG51bGwhPT10aGlzLm9wdGlvbnMubWluJiYodD1NYXRoLm1heCh0LHRoaXMuX3ByZWNpc2lvbk9mKHRoaXMub3B0aW9ucy5taW4pKSksdH0sX3ByZWNpc2lvbk9mOmZ1bmN0aW9uKHQpe3ZhciBlPXQudG9TdHJpbmcoKSxuPWUuaW5kZXhPZigiLiIpO3JldHVybi0xPT09bj8wOmUubGVuZ3RoLW4tMX0sX3ZhbHVlTWluOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMub3B0aW9ucy5taW59LF92YWx1ZU1heDpmdW5jdGlvbigpe3JldHVybiB0aGlzLm1heH0sX3JlZnJlc2hSYW5nZTpmdW5jdGlvbih0KXsidmVydGljYWwiPT09dCYmdGhpcy5yYW5nZS5jc3Moe3dpZHRoOiIiLGxlZnQ6IiJ9KSwiaG9yaXpvbnRhbCI9PT10JiZ0aGlzLnJhbmdlLmNzcyh7aGVpZ2h0OiIiLGJvdHRvbToiIn0pfSxfcmVmcmVzaFZhbHVlOmZ1bmN0aW9uKCl7dmFyIGUsbixpLHIsbyxzPXRoaXMub3B0aW9ucy5yYW5nZSxhPXRoaXMub3B0aW9ucyx1PXRoaXMsbD0hdGhpcy5fYW5pbWF0ZU9mZiYmYS5hbmltYXRlLGM9e307dGhpcy5faGFzTXVsdGlwbGVWYWx1ZXMoKT90aGlzLmhhbmRsZXMuZWFjaCgoZnVuY3Rpb24oaSl7bj0odS52YWx1ZXMoaSktdS5fdmFsdWVNaW4oKSkvKHUuX3ZhbHVlTWF4KCktdS5fdmFsdWVNaW4oKSkqMTAwLGNbImhvcml6b250YWwiPT09dS5vcmllbnRhdGlvbj8ibGVmdCI6ImJvdHRvbSJdPW4rIiUiLHQodGhpcykuc3RvcCgxLDEpW2w/ImFuaW1hdGUiOiJjc3MiXShjLGEuYW5pbWF0ZSksITA9PT11Lm9wdGlvbnMucmFuZ2UmJigiaG9yaXpvbnRhbCI9PT11Lm9yaWVudGF0aW9uPygwPT09aSYmdS5yYW5nZS5zdG9wKDEsMSlbbD8iYW5pbWF0ZSI6ImNzcyJdKHtsZWZ0Om4rIiUifSxhLmFuaW1hdGUpLAoxPT09aSYmdS5yYW5nZVtsPyJhbmltYXRlIjoiY3NzIl0oe3dpZHRoOm4tZSsiJSJ9LHtxdWV1ZTohMSxkdXJhdGlvbjphLmFuaW1hdGV9KSk6KDA9PT1pJiZ1LnJhbmdlLnN0b3AoMSwxKVtsPyJhbmltYXRlIjoiY3NzIl0oe2JvdHRvbTpuKyIlIn0sYS5hbmltYXRlKSwxPT09aSYmdS5yYW5nZVtsPyJhbmltYXRlIjoiY3NzIl0oe2hlaWdodDpuLWUrIiUifSx7cXVldWU6ITEsZHVyYXRpb246YS5hbmltYXRlfSkpKSxlPW59KSk6KGk9dGhpcy52YWx1ZSgpLHI9dGhpcy5fdmFsdWVNaW4oKSxvPXRoaXMuX3ZhbHVlTWF4KCksbj1vIT09cj8oaS1yKS8oby1yKSoxMDA6MCxjWyJob3Jpem9udGFsIj09PXRoaXMub3JpZW50YXRpb24/ImxlZnQiOiJib3R0b20iXT1uKyIlIix0aGlzLmhhbmRsZS5zdG9wKDEsMSlbbD8iYW5pbWF0ZSI6ImNzcyJdKGMsYS5hbmltYXRlKSwibWluIj09PXMmJiJob3Jpem9udGFsIj09PXRoaXMub3JpZW50YXRpb24mJnRoaXMucmFuZ2Uuc3RvcCgxLDEpW2w/ImFuaW1hdGUiOiJjc3MiXSh7d2lkdGg6bisiJSJ9LGEuYW5pbWF0ZSksIm1heCI9PT1zJiYiaG9yaXpvbnRhbCI9PT10aGlzLm9yaWVudGF0aW9uJiZ0aGlzLnJhbmdlLnN0b3AoMSwxKVtsPyJhbmltYXRlIjoiY3NzIl0oe3dpZHRoOjEwMC1uKyIlIn0sYS5hbmltYXRlKSwibWluIj09PXMmJiJ2ZXJ0aWNhbCI9PT10aGlzLm9yaWVudGF0aW9uJiZ0aGlzLnJhbmdlLnN0b3AoMSwxKVtsPyJhbmltYXRlIjoiY3NzIl0oe2hlaWdodDpuKyIlIn0sYS5hbmltYXRlKSwibWF4Ij09PXMmJiJ2ZXJ0aWNhbCI9PT10aGlzLm9yaWVudGF0aW9uJiZ0aGlzLnJhbmdlLnN0b3AoMSwxKVtsPyJhbmltYXRlIjoiY3NzIl0oe2hlaWdodDoxMDAtbisiJSJ9LGEuYW5pbWF0ZSkpfSxfaGFuZGxlRXZlbnRzOntrZXlkb3duOmZ1bmN0aW9uKGUpe3ZhciBuLGkscixvPXQoZS50YXJnZXQpLmRhdGEoInVpLXNsaWRlci1oYW5kbGUtaW5kZXgiKTtzd2l0Y2goZS5rZXlDb2RlKXtjYXNlIHQudWkua2V5Q29kZS5IT01FOmNhc2UgdC51aS5rZXlDb2RlLkVORDpjYXNlIHQudWkua2V5Q29kZS5QQUdFX1VQOmNhc2UgdC51aS5rZXlDb2RlLlBBR0VfRE9XTjpjYXNlIHQudWkua2V5Q29kZS5VUDpjYXNlIHQudWkua2V5Q29kZS5SSUdIVDpjYXNlIHQudWkua2V5Q29kZS5ET1dOOmNhc2UgdC51aS5rZXlDb2RlLkxFRlQ6aWYoZS5wcmV2ZW50RGVmYXVsdCgpLCF0aGlzLl9rZXlTbGlkaW5nJiYodGhpcy5fa2V5U2xpZGluZz0hMCx0aGlzLl9hZGRDbGFzcyh0KGUudGFyZ2V0KSxudWxsLCJ1aS1zdGF0ZS1hY3RpdmUiKSwhMT09PXRoaXMuX3N0YXJ0KGUsbykpKXJldHVybn1zd2l0Y2gocj10aGlzLm9wdGlvbnMuc3RlcCxuPWk9dGhpcy5faGFzTXVsdGlwbGVWYWx1ZXMoKT90aGlzLnZhbHVlcyhvKTp0aGlzLnZhbHVlKCksZS5rZXlDb2RlKXtjYXNlIHQudWkua2V5Q29kZS5IT01FOmk9dGhpcy5fdmFsdWVNaW4oKTticmVhaztjYXNlIHQudWkua2V5Q29kZS5FTkQ6aT10aGlzLl92YWx1ZU1heCgpO2JyZWFrO2Nhc2UgdC51aS5rZXlDb2RlLlBBR0VfVVA6aT10aGlzLl90cmltQWxpZ25WYWx1ZShuKyh0aGlzLl92YWx1ZU1heCgpLXRoaXMuX3ZhbHVlTWluKCkpL3RoaXMubnVtUGFnZXMpO2JyZWFrO2Nhc2UgdC51aS5rZXlDb2RlLlBBR0VfRE9XTjppPXRoaXMuX3RyaW1BbGlnblZhbHVlKG4tKHRoaXMuX3ZhbHVlTWF4KCktdGhpcy5fdmFsdWVNaW4oKSkvdGhpcy5udW1QYWdlcyk7YnJlYWs7Y2FzZSB0LnVpLmtleUNvZGUuVVA6Y2FzZSB0LnVpLmtleUNvZGUuUklHSFQ6aWYobj09PXRoaXMuX3ZhbHVlTWF4KCkpcmV0dXJuO2k9dGhpcy5fdHJpbUFsaWduVmFsdWUobityKTticmVhaztjYXNlIHQudWkua2V5Q29kZS5ET1dOOmNhc2UgdC51aS5rZXlDb2RlLkxFRlQ6aWYobj09PXRoaXMuX3ZhbHVlTWluKCkpcmV0dXJuO2k9dGhpcy5fdHJpbUFsaWduVmFsdWUobi1yKX10aGlzLl9zbGlkZShlLG8saSl9LGtleXVwOmZ1bmN0aW9uKGUpe3ZhciBuPXQoZS50YXJnZXQpLmRhdGEoInVpLXNsaWRlci1oYW5kbGUtaW5kZXgiKTt0aGlzLl9rZXlTbGlkaW5nJiYodGhpcy5fa2V5U2xpZGluZz0hMSx0aGlzLl9zdG9wKGUsbiksdGhpcy5fY2hhbmdlKGUsbiksdGhpcy5fcmVtb3ZlQ2xhc3ModChlLnRhcmdldCksbnVsbCwidWktc3RhdGUtYWN0aXZlIikpfX19KX0sdm9pZCAwPT09KG89ImZ1bmN0aW9uIj09dHlwZW9mIGk/aS5hcHBseShlLHIpOmkpfHwodC5leHBvcnRzPW8pfSgpfSw0OTE4Nih0LGUpe3ZhciBuLGkscixvO289ZnVuY3Rpb24odCl7dmFyIGU9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZyxuPUFycmF5LmlzQXJyYXl8fGZ1bmN0aW9uKHQpe3JldHVybiJbb2JqZWN0IEFycmF5XSI9PT1lLmNhbGwodCl9O2Z1bmN0aW9uIGkodCl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIHR9ZnVuY3Rpb24gcih0KXtyZXR1cm4gdC5yZXBsYWNlKC9bXC1cW1xde30oKSorPy4sXFxcXiR8I1xzXS9nLCJcXCQmIil9ZnVuY3Rpb24gbyh0LGUpe3JldHVybiBudWxsIT10JiYib2JqZWN0Ij09dHlwZW9mIHQmJmUgaW4gdH12YXIgcz1SZWdFeHAucHJvdG90eXBlLnRlc3QsYT0vXFMvO2Z1bmN0aW9uIHUodCl7cmV0dXJuIWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHMuY2FsbCh0LGUpfShhLHQpfXZhciBsPXsiJiI6IiZhbXA7IiwiPCI6IiZsdDsiLCI+IjoiJmd0OyIsJyInOiImcXVvdDsiLCInIjoiJiMzOTsiLCIvIjoiJiN4MkY7IiwiYCI6IiYjeDYwOyIsIj0iOiImI3gzRDsifSxjPS9ccyovLGY9L1xzKy8saD0vXHMqPS8sZD0vXHMqXH0vLHA9LyN8XF58XC98Pnxce3wmfD18IS87ZnVuY3Rpb24gdih0KXt0aGlzLnN0cmluZz10LHRoaXMudGFpbD10LHRoaXMucG9zPTB9ZnVuY3Rpb24gZyh0LGUpe3RoaXMudmlldz10LHRoaXMuY2FjaGU9eyIuIjp0aGlzLnZpZXd9LHRoaXMucGFyZW50PWV9ZnVuY3Rpb24gbSgpe3RoaXMuY2FjaGU9e319di5wcm90b3R5cGUuZW9zPWZ1bmN0aW9uKCl7cmV0dXJuIiI9PT10aGlzLnRhaWx9LHYucHJvdG90eXBlLnNjYW49ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy50YWlsLm1hdGNoKHQpO2lmKCFlfHwwIT09ZS5pbmRleClyZXR1cm4iIgo7dmFyIG49ZVswXTtyZXR1cm4gdGhpcy50YWlsPXRoaXMudGFpbC5zdWJzdHJpbmcobi5sZW5ndGgpLHRoaXMucG9zKz1uLmxlbmd0aCxufSx2LnByb3RvdHlwZS5zY2FuVW50aWw9ZnVuY3Rpb24odCl7dmFyIGUsbj10aGlzLnRhaWwuc2VhcmNoKHQpO3N3aXRjaChuKXtjYXNlLTE6ZT10aGlzLnRhaWwsdGhpcy50YWlsPSIiO2JyZWFrO2Nhc2UgMDplPSIiO2JyZWFrO2RlZmF1bHQ6ZT10aGlzLnRhaWwuc3Vic3RyaW5nKDAsbiksdGhpcy50YWlsPXRoaXMudGFpbC5zdWJzdHJpbmcobil9cmV0dXJuIHRoaXMucG9zKz1lLmxlbmd0aCxlfSxnLnByb3RvdHlwZS5wdXNoPWZ1bmN0aW9uKHQpe3JldHVybiBuZXcgZyh0LHRoaXMpfSxnLnByb3RvdHlwZS5sb29rdXA9ZnVuY3Rpb24odCl7dmFyIGUsbj10aGlzLmNhY2hlO2lmKG4uaGFzT3duUHJvcGVydHkodCkpZT1uW3RdO2Vsc2V7Zm9yKHZhciByLHMsYT10aGlzLHU9ITE7YTspe2lmKHQuaW5kZXhPZigiLiIpPjApZm9yKGU9YS52aWV3LHI9dC5zcGxpdCgiLiIpLHM9MDtudWxsIT1lJiZzPHIubGVuZ3RoOylzPT09ci5sZW5ndGgtMSYmKHU9byhlLHJbc10pKSxlPWVbcltzKytdXTtlbHNlIGU9YS52aWV3W3RdLHU9byhhLnZpZXcsdCk7aWYodSlicmVhazthPWEucGFyZW50fW5bdF09ZX1yZXR1cm4gaShlKSYmKGU9ZS5jYWxsKHRoaXMudmlldykpLGV9LG0ucHJvdG90eXBlLmNsZWFyQ2FjaGU9ZnVuY3Rpb24oKXt0aGlzLmNhY2hlPXt9fSxtLnByb3RvdHlwZS5wYXJzZT1mdW5jdGlvbihlLGkpe3ZhciBvPXRoaXMuY2FjaGUscz1vW2VdO3JldHVybiBudWxsPT1zJiYocz1vW2VdPWZ1bmN0aW9uKGUsaSl7aWYoIWUpcmV0dXJuW107dmFyIG8scyxhLGw9W10sZz1bXSxtPVtdLHk9ITEsYj0hMTtmdW5jdGlvbiBfKCl7aWYoeSYmIWIpZm9yKDttLmxlbmd0aDspZGVsZXRlIGdbbS5wb3AoKV07ZWxzZSBtPVtdO3k9ITEsYj0hMX1mdW5jdGlvbiB3KHQpe2lmKCJzdHJpbmciPT10eXBlb2YgdCYmKHQ9dC5zcGxpdChmLDIpKSwhbih0KXx8MiE9PXQubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCB0YWdzOiAiK3QpO289bmV3IFJlZ0V4cChyKHRbMF0pKyJcXHMqIikscz1uZXcgUmVnRXhwKCJcXHMqIityKHRbMV0pKSxhPW5ldyBSZWdFeHAoIlxccyoiK3IoIn0iK3RbMV0pKX13KGl8fHQudGFncyk7Zm9yKHZhciB4LE8sRSxDLGssUyxEPW5ldyB2KGUpOyFELmVvcygpOyl7aWYoeD1ELnBvcyxFPUQuc2NhblVudGlsKG8pKWZvcih2YXIgTT0wLFA9RS5sZW5ndGg7TTxQOysrTSl1KEM9RS5jaGFyQXQoTSkpP20ucHVzaChnLmxlbmd0aCk6Yj0hMCxnLnB1c2goWyJ0ZXh0IixDLHgseCsxXSkseCs9MSwiXG4iPT09QyYmXygpO2lmKCFELnNjYW4obykpYnJlYWs7aWYoeT0hMCxPPUQuc2NhbihwKXx8Im5hbWUiLEQuc2NhbihjKSwiPSI9PT1PPyhFPUQuc2NhblVudGlsKGgpLEQuc2NhbihoKSxELnNjYW5VbnRpbChzKSk6InsiPT09Tz8oRT1ELnNjYW5VbnRpbChhKSxELnNjYW4oZCksRC5zY2FuVW50aWwocyksTz0iJiIpOkU9RC5zY2FuVW50aWwocyksIUQuc2NhbihzKSl0aHJvdyBuZXcgRXJyb3IoIlVuY2xvc2VkIHRhZyBhdCAiK0QucG9zKTtpZihrPVtPLEUseCxELnBvc10sZy5wdXNoKGspLCIjIj09PU98fCJeIj09PU8pbC5wdXNoKGspO2Vsc2UgaWYoIi8iPT09Tyl7aWYoIShTPWwucG9wKCkpKXRocm93IG5ldyBFcnJvcignVW5vcGVuZWQgc2VjdGlvbiAiJytFKyciIGF0ICcreCk7aWYoU1sxXSE9PUUpdGhyb3cgbmV3IEVycm9yKCdVbmNsb3NlZCBzZWN0aW9uICInK1NbMV0rJyIgYXQgJyt4KX1lbHNlIm5hbWUiPT09T3x8InsiPT09T3x8IiYiPT09Tz9iPSEwOiI9Ij09PU8mJncoRSl9aWYoUz1sLnBvcCgpKXRocm93IG5ldyBFcnJvcignVW5jbG9zZWQgc2VjdGlvbiAiJytTWzFdKyciIGF0ICcrRC5wb3MpO3JldHVybiBmdW5jdGlvbih0KXtmb3IodmFyIGUsbj1bXSxpPW4scj1bXSxvPTAscz10Lmxlbmd0aDtvPHM7KytvKXN3aXRjaCgoZT10W29dKVswXSl7Y2FzZSIjIjpjYXNlIl4iOmkucHVzaChlKSxyLnB1c2goZSksaT1lWzRdPVtdO2JyZWFrO2Nhc2UiLyI6ci5wb3AoKVs1XT1lWzJdLGk9ci5sZW5ndGg+MD9yW3IubGVuZ3RoLTFdWzRdOm47YnJlYWs7ZGVmYXVsdDppLnB1c2goZSl9cmV0dXJuIG59KGZ1bmN0aW9uKHQpe2Zvcih2YXIgZSxuLGk9W10scj0wLG89dC5sZW5ndGg7cjxvOysrcikoZT10W3JdKSYmKCJ0ZXh0Ij09PWVbMF0mJm4mJiJ0ZXh0Ij09PW5bMF0/KG5bMV0rPWVbMV0sblszXT1lWzNdKTooaS5wdXNoKGUpLG49ZSkpO3JldHVybiBpfShnKSl9KGUsaSkpLHN9LG0ucHJvdG90eXBlLnJlbmRlcj1mdW5jdGlvbih0LGUsbil7dmFyIGk9dGhpcy5wYXJzZSh0KSxyPWUgaW5zdGFuY2VvZiBnP2U6bmV3IGcoZSk7cmV0dXJuIHRoaXMucmVuZGVyVG9rZW5zKGkscixuLHQpfSxtLnByb3RvdHlwZS5yZW5kZXJUb2tlbnM9ZnVuY3Rpb24odCxlLG4saSl7Zm9yKHZhciByLG8scyxhPSIiLHU9MCxsPXQubGVuZ3RoO3U8bDsrK3Upcz12b2lkIDAsIiMiPT09KG89KHI9dFt1XSlbMF0pP3M9dGhpcy5yZW5kZXJTZWN0aW9uKHIsZSxuLGkpOiJeIj09PW8/cz10aGlzLnJlbmRlckludmVydGVkKHIsZSxuLGkpOiI+Ij09PW8/cz10aGlzLnJlbmRlclBhcnRpYWwocixlLG4saSk6IiYiPT09bz9zPXRoaXMudW5lc2NhcGVkVmFsdWUocixlKToibmFtZSI9PT1vP3M9dGhpcy5lc2NhcGVkVmFsdWUocixlKToidGV4dCI9PT1vJiYocz10aGlzLnJhd1ZhbHVlKHIpKSx2b2lkIDAhPT1zJiYoYSs9cyk7cmV0dXJuIGF9LG0ucHJvdG90eXBlLnJlbmRlclNlY3Rpb249ZnVuY3Rpb24odCxlLHIsbyl7dmFyIHM9dGhpcyxhPSIiLHU9ZS5sb29rdXAodFsxXSk7aWYodSl7aWYobih1KSlmb3IodmFyIGw9MCxjPXUubGVuZ3RoO2w8YzsrK2wpYSs9dGhpcy5yZW5kZXJUb2tlbnModFs0XSxlLnB1c2godVtsXSkscixvKTtlbHNlIGlmKCJvYmplY3QiPT10eXBlb2YgdXx8InN0cmluZyI9PXR5cGVvZiB1fHwibnVtYmVyIj09dHlwZW9mIHUpYSs9dGhpcy5yZW5kZXJUb2tlbnModFs0XSxlLnB1c2godSkscixvKTtlbHNlIGlmKGkodSkpewppZigic3RyaW5nIiE9dHlwZW9mIG8pdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgdXNlIGhpZ2hlci1vcmRlciBzZWN0aW9ucyB3aXRob3V0IHRoZSBvcmlnaW5hbCB0ZW1wbGF0ZSIpO251bGwhPSh1PXUuY2FsbChlLnZpZXcsby5zbGljZSh0WzNdLHRbNV0pLChmdW5jdGlvbih0KXtyZXR1cm4gcy5yZW5kZXIodCxlLHIpfSkpKSYmKGErPXUpfWVsc2UgYSs9dGhpcy5yZW5kZXJUb2tlbnModFs0XSxlLHIsbyk7cmV0dXJuIGF9fSxtLnByb3RvdHlwZS5yZW5kZXJJbnZlcnRlZD1mdW5jdGlvbih0LGUsaSxyKXt2YXIgbz1lLmxvb2t1cCh0WzFdKTtpZighb3x8bihvKSYmMD09PW8ubGVuZ3RoKXJldHVybiB0aGlzLnJlbmRlclRva2Vucyh0WzRdLGUsaSxyKX0sbS5wcm90b3R5cGUucmVuZGVyUGFydGlhbD1mdW5jdGlvbih0LGUsbil7aWYobil7dmFyIHI9aShuKT9uKHRbMV0pOm5bdFsxXV07cmV0dXJuIG51bGwhPXI/dGhpcy5yZW5kZXJUb2tlbnModGhpcy5wYXJzZShyKSxlLG4scik6dm9pZCAwfX0sbS5wcm90b3R5cGUudW5lc2NhcGVkVmFsdWU9ZnVuY3Rpb24odCxlKXt2YXIgbj1lLmxvb2t1cCh0WzFdKTtpZihudWxsIT1uKXJldHVybiBufSxtLnByb3RvdHlwZS5lc2NhcGVkVmFsdWU9ZnVuY3Rpb24oZSxuKXt2YXIgaT1uLmxvb2t1cChlWzFdKTtpZihudWxsIT1pKXJldHVybiB0LmVzY2FwZShpKX0sbS5wcm90b3R5cGUucmF3VmFsdWU9ZnVuY3Rpb24odCl7cmV0dXJuIHRbMV19LHQubmFtZT0ibXVzdGFjaGUuanMiLHQudmVyc2lvbj0iMi4yLjEiLHQudGFncz1bInt7IiwifX0iXTt2YXIgeT1uZXcgbTt0LmNsZWFyQ2FjaGU9ZnVuY3Rpb24oKXtyZXR1cm4geS5jbGVhckNhY2hlKCl9LHQucGFyc2U9ZnVuY3Rpb24odCxlKXtyZXR1cm4geS5wYXJzZSh0LGUpfSx0LnJlbmRlcj1mdW5jdGlvbih0LGUsaSl7aWYoInN0cmluZyIhPXR5cGVvZiB0KXRocm93IG5ldyBUeXBlRXJyb3IoJ0ludmFsaWQgdGVtcGxhdGUhIFRlbXBsYXRlIHNob3VsZCBiZSBhICJzdHJpbmciIGJ1dCAiJysobihyPXQpPyJhcnJheSI6dHlwZW9mIHIpKyciIHdhcyBnaXZlbiBhcyB0aGUgZmlyc3QgYXJndW1lbnQgZm9yIG11c3RhY2hlI3JlbmRlcih0ZW1wbGF0ZSwgdmlldywgcGFydGlhbHMpJyk7dmFyIHI7cmV0dXJuIHkucmVuZGVyKHQsZSxpKX0sdC50b19odG1sPWZ1bmN0aW9uKGUsbixyLG8pe3ZhciBzPXQucmVuZGVyKGUsbixyKTtpZighaShvKSlyZXR1cm4gcztvKHMpfSx0LmVzY2FwZT1mdW5jdGlvbih0KXtyZXR1cm4gU3RyaW5nKHQpLnJlcGxhY2UoL1smPD4iJ2A9XC9dL2csKGZ1bmN0aW9uKHQpe3JldHVybiBsW3RdfSkpfSx0LlNjYW5uZXI9dix0LkNvbnRleHQ9Zyx0LldyaXRlcj1tfSxlJiYic3RyaW5nIiE9dHlwZW9mIGUubm9kZU5hbWU/byhlKTooaT1bZV0sdm9pZCAwPT09KHI9ImZ1bmN0aW9uIj09dHlwZW9mKG49byk/bi5hcHBseShlLGkpOm4pfHwodC5leHBvcnRzPXIpKX0sMzIwNDAzKHQsZSl7InVzZSBzdHJpY3QiO3ZhciBuLGk9ISgidW5kZWZpbmVkIj09dHlwZW9mIHdpbmRvd3x8IXdpbmRvdy5kb2N1bWVudHx8IXdpbmRvdy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KTtmdW5jdGlvbiByKCl7aWYobilyZXR1cm4gbjtpZighaXx8IXdpbmRvdy5kb2N1bWVudC5ib2R5KXJldHVybiJpbmRldGVybWluYXRlIjt2YXIgdD13aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7cmV0dXJuIHQuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIkFCQ0QiKSksdC5kaXI9InJ0bCIsdC5zdHlsZS5mb250U2l6ZT0iMTRweCIsdC5zdHlsZS53aWR0aD0iNHB4Iix0LnN0eWxlLmhlaWdodD0iMXB4Iix0LnN0eWxlLnBvc2l0aW9uPSJhYnNvbHV0ZSIsdC5zdHlsZS50b3A9Ii0xMDAwcHgiLHQuc3R5bGUub3ZlcmZsb3c9InNjcm9sbCIsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZCh0KSxuPSJyZXZlcnNlIix0LnNjcm9sbExlZnQ+MD9uPSJkZWZhdWx0IjoodC5zY3JvbGxMZWZ0PTEsMD09PXQuc2Nyb2xsTGVmdCYmKG49Im5lZ2F0aXZlIikpLGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQodCksbn1lLmdldE5vcm1hbGl6ZWRTY3JvbGxMZWZ0PWZ1bmN0aW9uKHQsZSl7dmFyIG49dC5zY3JvbGxMZWZ0O2lmKCJydGwiIT09ZSlyZXR1cm4gbjt2YXIgaT1yKCk7aWYoImluZGV0ZXJtaW5hdGUiPT09aSlyZXR1cm4gTnVtYmVyLk5hTjtzd2l0Y2goaSl7Y2FzZSJuZWdhdGl2ZSI6cmV0dXJuIHQuc2Nyb2xsV2lkdGgtdC5jbGllbnRXaWR0aCtuO2Nhc2UicmV2ZXJzZSI6cmV0dXJuIHQuc2Nyb2xsV2lkdGgtdC5jbGllbnRXaWR0aC1ufXJldHVybiBufX0sODI5MTgwKHQsZSxuKXsidXNlIHN0cmljdCI7bi5yKGUpO3ZhciBpPW4oNjAxODQxKTtjb25zdCByPS97KFx3Kyl9L2csbz0veyhcZCspfS9nO1N0cmluZy5wcm90b3R5cGUuZm9ybWF0PWZ1bmN0aW9uKC4uLnQpe2NvbnN0IGU9KDAsaS5pc09iamVjdCkodFswXSksbj1lP3I6byxzPWU/KGUsbik9Pntjb25zdCBpPXRbMF07cmV0dXJuIHZvaWQgMCE9PWlbbl0/aVtuXTplfTooZSxuKT0+e2NvbnN0IGk9cGFyc2VJbnQobiwxMCkscj10W2ldO3JldHVybiB2b2lkIDAhPT1yP3I6ZX07cmV0dXJuIHRoaXMucmVwbGFjZShuLHMpfX0sMzYzMjY5KHQsZSxuKXsidXNlIHN0cmljdCI7bi5kKGUse21vYmlsZXRvdWNoOigpPT5yLHNldENsYXNzZXM6KCk9PnMsdG91Y2g6KCk9Pm99KTt2YXIgaT1uKDczODQ1OCk7Y29uc3Qgcj1pLm1vYmlsZXRvdWNoLG89aS50b3VjaDtmdW5jdGlvbiBzKCl7ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC5hZGQoaS50b3VjaD8iZmVhdHVyZS10b3VjaCI6ImZlYXR1cmUtbm8tdG91Y2giLGkubW9iaWxldG91Y2g/ImZlYXR1cmUtbW9iaWxldG91Y2giOiJmZWF0dXJlLW5vLW1vYmlsZXRvdWNoIil9fSwzMTg5NzQodCxlLG4peyJ1c2Ugc3RyaWN0IjtuLmQoZSx7Q2hlY2tNb2JpbGU6KCk9PmMsaXNEZXNrdG9wQXBwOigpPT51LGlzTGludXg6KCk9PmEsaXNNYWM6KCk9PnMsaXNTYWZhcmk6KCk9PmgsaXNTeW1waG9ueUVtYmVkOigpPT5sLG9uR29Qcm86KCk9PmQsCm9uV2lkZ2V0OigpPT5yLm9uV2lkZ2V0LHN1cHBvcnRUb3VjaDooKT0+Zn0pO3ZhciBpPW4oNzM4NDU4KSxyPW4oMzc3MjI2KTtjb25zdCBvPXdpbmRvdy5UcmFkaW5nVmlldz13aW5kb3cuVHJhZGluZ1ZpZXd8fHt9O2Z1bmN0aW9uIHMoKXtyZXR1cm4gaS5pc01hY31mdW5jdGlvbiBhKCl7cmV0dXJuIGkuaXNMaW51eH1mdW5jdGlvbiB1KCl7cmV0dXJuL1RWRGVza3RvcC9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCl9ZnVuY3Rpb24gbCgpe3JldHVybiBvLmlzU3ltcGhvbnl8fCExfWNvbnN0IGM9e0FuZHJvaWQ6KCk9PmkuaXNBbmRyb2lkLEJsYWNrQmVycnk6KCk9PmkuaXNCbGFja0JlcnJ5LGlPUzooKT0+aS5pc0lPUyxPcGVyYTooKT0+aS5pc09wZXJhTWluaSxpc0lQYWQ6KCk9PmkuaXNJUGFkLGFueTooKT0+aS5pc0FueU1vYmlsZX07ZnVuY3Rpb24gZigpe3JldHVybiBpLm1vYmlsZXRvdWNofHxpLnRvdWNofHxpLmlzQW55TW9iaWxlfW8uaXNNb2JpbGU9YyxvLm9uV2lkZ2V0PXIub25XaWRnZXQ7aS5pc0Nocm9tZSxpLmlzRkYsaS5pc0VkZ2U7Y29uc3QgaD1pLmlzU2FmYXJpO2Z1bmN0aW9uIGQoKXtyZXR1cm4iL3ByaWNpbmcvIj09PXdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZX19LDMzNjMzNCh0LGUsbil7InVzZSBzdHJpY3QiO3ZhciBpPW4oMTI5MzY1KTtlLmNyZWF0ZVJvb3Q9aS5jcmVhdGVSb290LGkuaHlkcmF0ZVJvb3R9LDEyOTM2NSh0LGUsbil7InVzZSBzdHJpY3QiOyFmdW5jdGlvbiB0KCl7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18mJiJmdW5jdGlvbiI9PXR5cGVvZiBfX1JFQUNUX0RFVlRPT0xTX0dMT0JBTF9IT09LX18uY2hlY2tEQ0UpdHJ5e19fUkVBQ1RfREVWVE9PTFNfR0xPQkFMX0hPT0tfXy5jaGVja0RDRSh0KX1jYXRjaCh0KXtjb25zb2xlLmVycm9yKHQpfX0oKSx0LmV4cG9ydHM9big1MzIzODcpfSw3Nzk0NzQodCxlLG4peyJ1c2Ugc3RyaWN0Ijt0LmV4cG9ydHM9bigxMjI3NDkpfSw5ODY3MDUodCxlLG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1uKDQ4MjUwNCkscj1uKDM2MzI2OSkubW9iaWxldG91Y2g7IWZ1bmN0aW9uKHQsZSxuKXtmdW5jdGlvbiBpKGkscil7cj1yfHxpK247dmFyIG89dCgpLHM9aSsiLiIrcisiLXNwZWNpYWwtZXZlbnQiO2Z1bmN0aW9uIGEoZSl7dChvKS5lYWNoKChmdW5jdGlvbigpe3ZhciBuPXQodGhpcyk7dGhpcz09PWUudGFyZ2V0fHxuLmhhcyhlLnRhcmdldCkubGVuZ3RofHxuLnRyaWdnZXJIYW5kbGVyKHIsW2UudGFyZ2V0XSl9KSl9dC5ldmVudC5zcGVjaWFsW3JdPXtzZXR1cDpmdW5jdGlvbigpe2RlbGV0ZShvPW8uYWRkKHRoaXMpKS5wcmV2T2JqZWN0LDE9PT1vLmxlbmd0aCYmdChlKS5iaW5kKHMsYSl9LHRlYXJkb3duOmZ1bmN0aW9uKCl7ZGVsZXRlKG89by5ub3QodGhpcykpLnByZXZPYmplY3QsMD09PW8ubGVuZ3RoJiZ0KGUpLnVuYmluZChzKX0sYWRkOmZ1bmN0aW9uKHQpe3ZhciBlPXQuaGFuZGxlcjt0LmhhbmRsZXI9ZnVuY3Rpb24odCxuKXt0LnRhcmdldD1uLGUuYXBwbHkodGhpcyxhcmd1bWVudHMpfX19fXQubWFwKCJjbGljayBkYmxjbGljayBtb3VzZW1vdmUgbW91c2Vkb3duIG1vdXNldXAgbW91c2VvdmVyIG1vdXNlb3V0IGNoYW5nZSBzZWxlY3Qgc3VibWl0IGtleWRvd24ga2V5cHJlc3Mga2V5dXAiLnNwbGl0KCIgIiksKGZ1bmN0aW9uKHQpe2kodCl9KSksaSgiZm9jdXNpbiIsImZvY3VzIituKSxpKCJmb2N1c291dCIsImJsdXIiK24pLHImJihpKCJ0b3VjaHN0YXJ0IiwibW91c2Vkb3duIituKSxpKCJ0b3VjaG1vdmUiLCJtb3VzZW1vdmUiK24pLGkoInRvdWNoZW5kIiwibW91c2V1cCIrbikpLHQuYWRkT3V0c2lkZUV2ZW50PWl9KGksZG9jdW1lbnQsIm91dHNpZGUiKX0sOTM0MTkodCxlLG4peyJ1c2Ugc3RyaWN0IjtuKDQwNjA3Mil9LDM2NDgzOCh0LGUsbil7InVzZSBzdHJpY3QiO24oOTM0MTkpLG4oNjY2MzQ5KSxuKDI4OTEzMil9LDcxMTk3OSh0LGUsbil7InVzZSBzdHJpY3QiO3ZhciBpLHIsbyxzLGE9big0ODI1MDQpO3I9KGk9YSkod2luZG93KSxvPWkoZG9jdW1lbnQpLHM9ZnVuY3Rpb24odCl7dmFyIGU9YS5kYXRhKHQudGFyZ2V0KTtlLmxvY2FsU2Nyb2xsP3QudGFyZ2V0LnNjcm9sbFRvcD50LnRhcmdldC5zY3JvbGxIZWlnaHQtaSh0LnRhcmdldCkuaGVpZ2h0KCktKGUudG9sZXJhbmNlfHwxOTApJiZpKHRoaXMpLnRyaWdnZXIoInNjcm9sbHRvZW5kIik6ci5zY3JvbGxUb3AoKT5vLmhlaWdodCgpLXIuaW5uZXJIZWlnaHQoKS0oZS50b2xlcmFuY2V8fDE5MCkmJmkodGhpcykudHJpZ2dlcigic2Nyb2xsdG9lbmQiKX0saS5ldmVudC5zcGVjaWFsLnNjcm9sbHRvZW5kPXtzZXR1cDpmdW5jdGlvbih0LGUpe2kodGhpcykuYmluZCgic2Nyb2xsLnNjcm9sbHRvZW5kIixzKX0sdGVhcmRvd246ZnVuY3Rpb24odCl7aSh0aGlzKS51bmJpbmQoInNjcm9sbC5zY3JvbGx0b2VuZCIscyl9fSxhLmV2ZW50LnNwZWNpYWwuc2Nyb2xsdG89e2JpbmRUeXBlOiJzY3JvbGwiLGhhbmRsZTpmdW5jdGlvbih0KXt2YXIgZT10LmhhbmRsZU9iajt0LnNjcm9sbERhdGF8fCh0LnNjcm9sbERhdGE9e3Njcm9sbFRvcDpyLnNjcm9sbFRvcCgpfSk7dmFyIG49bnVsbDtpZigibnVtYmVyIj09dHlwZW9mIHQuZGF0YS50byluPXQuc2Nyb2xsRGF0YS5zY3JvbGxUb3A+dC5kYXRhLnRvLSh0LmRhdGEudG9sZXJhbmNlfHwwKTtlbHNle2lmKCJib3R0b20iIT09dC5kYXRhLnRvKXRocm93IG5ldyBFcnJvcignU3BlY2lhbCBldmVudCBzY3JvbGx0bzogcHJvcGVydHkgInRvIiBoYXMgdW5leHBlY3RlZCB2YWx1ZScpO3Quc2Nyb2xsRGF0YS5ib3R0b21PZmZzZXR8fCh0LnNjcm9sbERhdGEuYm90dG9tT2Zmc2V0PW8uaGVpZ2h0KCktci5pbm5lckhlaWdodCgpKSxuPXQuc2Nyb2xsRGF0YS5zY3JvbGxUb3A+dC5zY3JvbGxEYXRhLmJvdHRvbU9mZnNldC0odC5kYXRhLnRvbGVyYW5jZXx8MCl9dmFyIGk9QXJyYXkucHJvdG90eXBlLnNsaWNlLmFwcGx5KGFyZ3VtZW50cyk7cmV0dXJuIG4/KGkucHVzaCghMCksCmUuaGFuZGxlci5hcHBseSh0aGlzLGkpKTp0LmRhdGEudHdvd2F5PyhpLnB1c2goITEpLGUuaGFuZGxlci5hcHBseSh0aGlzLGkpKTp2b2lkIDB9fX0sODcyODgxKHQsZSxuKXsidXNlIHN0cmljdCI7bi5kKGUse2RlZmF1bHQ6KCk9Pk19KTt2YXIgaT1uKDg4NjUxNCkscj1uKDI2OTM2Nik7Y29uc3Qgbz1mdW5jdGlvbih0LGUpe2Zvcih2YXIgbj0tMSxpPW51bGw9PXQ/MDp0Lmxlbmd0aDsrK248aTspaWYoZSh0W25dLG4sdCkpcmV0dXJuITA7cmV0dXJuITF9O3ZhciBzPW4oNzEyODAxKTtjb25zdCBhPWZ1bmN0aW9uKHQsZSxuLGksYSx1KXt2YXIgbD0xJm4sYz10Lmxlbmd0aCxmPWUubGVuZ3RoO2lmKGMhPWYmJiEobCYmZj5jKSlyZXR1cm4hMTt2YXIgaD11LmdldCh0KSxkPXUuZ2V0KGUpO2lmKGgmJmQpcmV0dXJuIGg9PWUmJmQ9PXQ7dmFyIHA9LTEsdj0hMCxnPTImbj9uZXcgci5kZWZhdWx0OnZvaWQgMDtmb3IodS5zZXQodCxlKSx1LnNldChlLHQpOysrcDxjOyl7dmFyIG09dFtwXSx5PWVbcF07aWYoaSl2YXIgYj1sP2koeSxtLHAsZSx0LHUpOmkobSx5LHAsdCxlLHUpO2lmKHZvaWQgMCE9PWIpe2lmKGIpY29udGludWU7dj0hMTticmVha31pZihnKXtpZighbyhlLChmdW5jdGlvbih0LGUpe2lmKCEoMCxzLmRlZmF1bHQpKGcsZSkmJihtPT09dHx8YShtLHQsbixpLHUpKSlyZXR1cm4gZy5wdXNoKGUpfSkpKXt2PSExO2JyZWFrfX1lbHNlIGlmKG0hPT15JiYhYShtLHksbixpLHUpKXt2PSExO2JyZWFrfX1yZXR1cm4gdS5kZWxldGUodCksdS5kZWxldGUoZSksdn07dmFyIHU9big4NzI5OTkpLGw9big4NjUzMzApLGM9big5MTA3NzgpO2NvbnN0IGY9ZnVuY3Rpb24odCl7dmFyIGU9LTEsbj1BcnJheSh0LnNpemUpO3JldHVybiB0LmZvckVhY2goKGZ1bmN0aW9uKHQsaSl7blsrK2VdPVtpLHRdfSkpLG59O3ZhciBoPW4oOTcyMDE3KSxkPXUuZGVmYXVsdD91LmRlZmF1bHQucHJvdG90eXBlOnZvaWQgMCxwPWQ/ZC52YWx1ZU9mOnZvaWQgMDtjb25zdCB2PWZ1bmN0aW9uKHQsZSxuLGkscixvLHMpe3N3aXRjaChuKXtjYXNlIltvYmplY3QgRGF0YVZpZXddIjppZih0LmJ5dGVMZW5ndGghPWUuYnl0ZUxlbmd0aHx8dC5ieXRlT2Zmc2V0IT1lLmJ5dGVPZmZzZXQpcmV0dXJuITE7dD10LmJ1ZmZlcixlPWUuYnVmZmVyO2Nhc2UiW29iamVjdCBBcnJheUJ1ZmZlcl0iOnJldHVybiEodC5ieXRlTGVuZ3RoIT1lLmJ5dGVMZW5ndGh8fCFvKG5ldyBsLmRlZmF1bHQodCksbmV3IGwuZGVmYXVsdChlKSkpO2Nhc2UiW29iamVjdCBCb29sZWFuXSI6Y2FzZSJbb2JqZWN0IERhdGVdIjpjYXNlIltvYmplY3QgTnVtYmVyXSI6cmV0dXJuKDAsYy5kZWZhdWx0KSgrdCwrZSk7Y2FzZSJbb2JqZWN0IEVycm9yXSI6cmV0dXJuIHQubmFtZT09ZS5uYW1lJiZ0Lm1lc3NhZ2U9PWUubWVzc2FnZTtjYXNlIltvYmplY3QgUmVnRXhwXSI6Y2FzZSJbb2JqZWN0IFN0cmluZ10iOnJldHVybiB0PT1lKyIiO2Nhc2UiW29iamVjdCBNYXBdIjp2YXIgdT1mO2Nhc2UiW29iamVjdCBTZXRdIjp2YXIgZD0xJmk7aWYodXx8KHU9aC5kZWZhdWx0KSx0LnNpemUhPWUuc2l6ZSYmIWQpcmV0dXJuITE7dmFyIHY9cy5nZXQodCk7aWYodilyZXR1cm4gdj09ZTtpfD0yLHMuc2V0KHQsZSk7dmFyIGc9YSh1KHQpLHUoZSksaSxyLG8scyk7cmV0dXJuIHMuZGVsZXRlKHQpLGc7Y2FzZSJbb2JqZWN0IFN5bWJvbF0iOmlmKHApcmV0dXJuIHAuY2FsbCh0KT09cC5jYWxsKGUpfXJldHVybiExfTt2YXIgZz1uKDgwNjI0MCksbT1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2NvbnN0IHk9ZnVuY3Rpb24odCxlLG4saSxyLG8pe3ZhciBzPTEmbixhPSgwLGcuZGVmYXVsdCkodCksdT1hLmxlbmd0aDtpZih1IT0oMCxnLmRlZmF1bHQpKGUpLmxlbmd0aCYmIXMpcmV0dXJuITE7Zm9yKHZhciBsPXU7bC0tOyl7dmFyIGM9YVtsXTtpZighKHM/YyBpbiBlOm0uY2FsbChlLGMpKSlyZXR1cm4hMX12YXIgZj1vLmdldCh0KSxoPW8uZ2V0KGUpO2lmKGYmJmgpcmV0dXJuIGY9PWUmJmg9PXQ7dmFyIGQ9ITA7by5zZXQodCxlKSxvLnNldChlLHQpO2Zvcih2YXIgcD1zOysrbDx1Oyl7dmFyIHY9dFtjPWFbbF1dLHk9ZVtjXTtpZihpKXZhciBiPXM/aSh5LHYsYyxlLHQsbyk6aSh2LHksYyx0LGUsbyk7aWYoISh2b2lkIDA9PT1iP3Y9PT15fHxyKHYseSxuLGksbyk6Yikpe2Q9ITE7YnJlYWt9cHx8KHA9ImNvbnN0cnVjdG9yIj09Yyl9aWYoZCYmIXApe3ZhciBfPXQuY29uc3RydWN0b3Isdz1lLmNvbnN0cnVjdG9yO189PXd8fCEoImNvbnN0cnVjdG9yImluIHQpfHwhKCJjb25zdHJ1Y3RvciJpbiBlKXx8ImZ1bmN0aW9uIj09dHlwZW9mIF8mJl8gaW5zdGFuY2VvZiBfJiYiZnVuY3Rpb24iPT10eXBlb2YgdyYmdyBpbnN0YW5jZW9mIHd8fChkPSExKX1yZXR1cm4gby5kZWxldGUodCksby5kZWxldGUoZSksZH07dmFyIGI9big5Njk3ODUpLF89bigyOTU2MzUpLHc9big2NTkwMTgpLHg9bigxNjUyNjcpLE89IltvYmplY3QgQXJndW1lbnRzXSIsRT0iW29iamVjdCBBcnJheV0iLEM9IltvYmplY3QgT2JqZWN0XSIsaz1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O2NvbnN0IFM9ZnVuY3Rpb24odCxlLG4scixvLHMpe3ZhciB1PSgwLF8uZGVmYXVsdCkodCksbD0oMCxfLmRlZmF1bHQpKGUpLGM9dT9FOigwLGIuZGVmYXVsdCkodCksZj1sP0U6KDAsYi5kZWZhdWx0KShlKSxoPShjPWM9PU8/QzpjKT09QyxkPShmPWY9PU8/QzpmKT09QyxwPWM9PWY7aWYocCYmKDAsdy5kZWZhdWx0KSh0KSl7aWYoISgwLHcuZGVmYXVsdCkoZSkpcmV0dXJuITE7dT0hMCxoPSExfWlmKHAmJiFoKXJldHVybiBzfHwocz1uZXcgaS5kZWZhdWx0KSx1fHwoMCx4LmRlZmF1bHQpKHQpP2EodCxlLG4scixvLHMpOnYodCxlLGMsbixyLG8scyk7aWYoISgxJm4pKXt2YXIgZz1oJiZrLmNhbGwodCwiX193cmFwcGVkX18iKSxtPWQmJmsuY2FsbChlLCJfX3dyYXBwZWRfXyIpO2lmKGd8fG0pe3ZhciBTPWc/dC52YWx1ZSgpOnQsRD1tP2UudmFsdWUoKTplO3JldHVybiBzfHwocz1uZXcgaS5kZWZhdWx0KSxvKFMsRCxuLHIscyl9fXJldHVybiEhcCYmKHN8fChzPW5ldyBpLmRlZmF1bHQpLAp5KHQsZSxuLHIsbyxzKSl9O3ZhciBEPW4oMzYwNjIwKTtjb25zdCBNPWZ1bmN0aW9uIHQoZSxuLGkscixvKXtyZXR1cm4gZT09PW58fChudWxsPT1lfHxudWxsPT1ufHwhKDAsRC5kZWZhdWx0KShlKSYmISgwLEQuZGVmYXVsdCkobik/ZSE9ZSYmbiE9bjpTKGUsbixpLHIsdCxvKSl9fSwxNjc1MDIodCxlLG4peyJ1c2Ugc3RyaWN0IjtuLmQoZSx7ZGVmYXVsdDooKT0+cn0pO3ZhciBpPW4oODcyODgxKTtjb25zdCByPWZ1bmN0aW9uKHQsZSl7cmV0dXJuKDAsaS5kZWZhdWx0KSh0LGUpfX19XSk7"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCMONAD.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.664Z","timestamp":1785126258664,"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 /crypto/XTVCMONAD.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 04:24:18 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: \"76eb4295049d7e7b8beea94c25d96655\"\r\nlast-modified: Thu, 22 Jan 2026 15:07:52 GMT\r\nx-amz-id-2: WEax/weNn2lxjWqOOEmnxiduQEnmENNuGHZ16k9vOQSKn3YB3gipHCJ/44kluVJDrhyp4c7Ximo=\r\nx-amz-request-id: HRPJYQE1QXTJ9EHC\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 76eb4295049d7e7b8beea94c25d96655\r\ncdn-proxyver: 1.43\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 01/22/2026 16:39:46\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 5725d7bd7419823787f897c5cec71361\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":1549,"size_decoded":1718,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1549), with no line terminators","md5":"76eb4295049d7e7b8beea94c25d96655","sha1":"af6b3d2e4f8d4cabef47fd61e6a545778bf6e35b","sha256":"dc03da0afd3b41eba3257f8ac58102bf3375c85341f6020422106d338b0ca718","sha512":"4037f6f51c52031f15208eaf87ebee7f29ac5d63be4bfae94f0e8b6ac137de49ee69d559a8ad339145dcc293b8e425a8465c01976ba6f376767f717f8db74fb7","ssdeep":"","tlshash":"9731c1759718d13d1843c26cdf7550a1320f64edb1be42b9e1ef8bb4304f599e716528","first_seen":"2026-01-24T12:40:42.037465Z","last_seen":"2026-07-27T07:05:43.300774Z","times_seen":449,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiM2RTU0RkYiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTMuOTYgOC45YTMuOTEgMy45MSAwIDAgMS0uOSAxLjcxYy0uNTcuNzMtMS4yMyAxLjQtMiAyLS4zOC4zMS0uNzcuNTgtMS4xNi43OS0uNDcuMjUtLjg3LjMzLTEuMi4yNS0uMzEtLjA4LS42NS0uMjQtMS4wMi0uNDdhMTEuMzcgMTEuMzcgMCAwIDEtMi43LTIuNDUgNi4xNSA2LjE1IDAgMCAxLS44LTEuMjNBMi4wMiAyLjAyIDAgMCAxIDQgOC45NmMtLjAyLS4xOSAwLS4zNy4wNi0uNTMuMTQtLjM3LjM1LS43NC42Mi0xLjEuOC0xLjA5IDEuNzYtMiAyLjg3LTIuNzYuMy0uMi42Mi0uMzcuOTQtLjQ5LjM2LS4xMy43NS0uMSAxLjE3LjA5LjM1LjE2LjcxLjM4IDEuMDguNjUuOTkuNzMgMS44NSAxLjU5IDIuNTggMi41OS4xNC4xOS4yOC40My40My43My4xMy4yNS4yLjUuMi43NloiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMTEuNjYgOS44NGE3LjQ0IDcuNDQgMCAwIDAtMS4zMy0yLjU2Yy0uMzQtLjQtLjgtLjU0LTEuMzYtLjM5YTcuNSA3LjUgMCAwIDAtMS45OCAxLjA1Yy0uMzcuMjgtLjU2LjY4LS41OCAxLjE5LS4xLS4yMi0uMTktLjQ1LS4yNS0uNjgtLjA2LS4yLS4wNi0uMzYgMC0uNDYuMDUtLjA4LjEzLS4xNi4yMy0uMjUuMzEtLjMuNzktLjYxIDEuNDItLjk3LjY2LS4zNyAxLjIyLS42IDEuNjktLjdhLjUuNSAwIDAgMSAuNDIuMDhjLjEyLjA5LjI0LjIxLjM3LjM3YTEwLjQgMTAuNCAwIDAgMSAxLjQ2IDIuNTdjLjEyLjM0LjA5LjU4LS4xLjc1WiIgZmlsbD0iIzY1NEVFNiIvPjxwYXRoIGQ9Ik0xMS42NiA5Ljg0Yy0uMTYuMTYtLjMzLjMtLjUyLjQzLS41LjM2LTEuMDcuNy0xLjcuOTktLjMyLjE2LS42Ni4yNy0xIC4zNWEuNDQuNDQgMCAwIDEtLjM4LS4wN2MtLjItLjE0LS40Mi0uNC0uNjgtLjc1LS4zNy0uNTMtLjctMS4wOC0uOTctMS42Ni4wMi0uNTEuMi0uOS41OC0xLjE5YTcuNSA3LjUgMCAwIDEgMS41Mi0uOWMuMTItLjA1LjI4LS4xLjQ2LS4xNS41Ni0uMTUgMS4wMi0uMDIgMS4zNi4zOWE3LjQ0IDcuNDQgMCAwIDEgMS4zMyAyLjU2WiIgZmlsbD0iIzZFNTRGRiIvPjxwYXRoIGQ9Ik00IDguOTZjLjA0LjE5LjEuMzcuMTguNTQuMTguMzkuNDUuOC44IDEuMjJhMTEuMzcgMTEuMzcgMCAwIDAgMi43IDIuNDZjLjM3LjIzLjcuMzkgMS4wMS40Ny4zNC4wOC43NCAwIDEuMi0uMjUuNC0uMjEuOC0uNDggMS4xOC0uNzkuNzYtLjYgMS40Mi0xLjI3IDItMiAuNTItLjY2LjgyLTEuMjMuODktMS43MWEuMS4xIDAgMCAxIC4wMy4wM2wuMDEuMDRjLS4xLjYtLjMxIDEuMTUtLjY1IDEuNjZhMTAuNDUgMTAuNDUgMCAwIDEtMi4zMiAyLjQ4Yy0uNTYuNDQtMS4wNi43Mi0xLjUuODMtLjc2LjE4LTEuNTctLjA0LTIuNDQtLjY3YTEwLjM3IDEwLjM3IDAgMCAxLTIuMzMtMi4zNkE0LjA2IDQuMDYgMCAwIDEgNCA4Ljk2WiIgZmlsbD0iIzY1NEVFNiIvPjwvc3ZnPg=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCTHETA.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.686Z","timestamp":1785126258686,"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 /crypto/XTVCTHETA.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 04:24:18 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: \"ded94894ee8ffa6745217d85d8efc0e4\"\r\nlast-modified: Wed, 08 Sep 2021 09:03:51 GMT\r\ncdn-cachedat: 08/14/2025 09:12:55\r\nx-amz-id-2: VeEYf5QMUDjkrmAXByJz91b7NkGT+LbNXSpxt4/eYMAZ5CcgaVndqCMTohKvfCIu4hv1r8rMXNk=\r\nx-amz-request-id: 2VJXT324TFX9DSDM\r\nx-amz-meta-hash: ded94894ee8ffa6745217d85d8efc0e4\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: d5dafe4df1d4b7873539911fd2c0a7f7\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":562,"size_decoded":1246,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (562), with no line terminators","md5":"ded94894ee8ffa6745217d85d8efc0e4","sha1":"e797c48d74d158ae8a06a5fcf6d7d6e4b24314d2","sha256":"d27744e6f5b26c6ffd6502ceb2883ee17c0574be1cf8b187d7ad3d191fb467fe","sha512":"16097b8bc4457e4c0f3bd889e7e32e6abcb189ab0225eb22522ff25e9870ad3b1e370f445166249205466ac02a22fd83b811a3aa6deda285a01dc14909b102e8","ssdeep":"","tlshash":"9df0e1b8e638c87ed40ac1fcd964549600aa20c9e0c703e9f1807f1e71441c71c08fc5","first_seen":"2023-05-02T00:44:00Z","last_seen":"2026-07-27T07:05:43.308303Z","times_seen":840,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSJ1cmwoI3BhaW50MF9saW5lYXIpIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMTIgNEg2djEwaDZWNHpNNSA0djEwbDEgMWg2bDEtMVY0bC0xLTFINkw1IDR6IiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTguNSA3SDd2MWg0VjdIOS41VjVoLTF2MnpNOC41IDExSDd2LTFoNHYxSDkuNXYyaC0xdi0yeiIgZmlsbD0iI2ZmZiIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQwX2xpbmVhciIgeDE9Ii0yLjM2IiB5MT0iMS4zNTUiIHgyPSIxMC42MzUiIHkyPSIyMy4wMiIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiMyQUI4RTYiLz48c3RvcCBvZmZzZXQ9Ii41MyIgc3RvcC1jb2xvcj0iIzI5Q0FEMiIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzJFRTRCRSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjwvc3ZnPg=="}},"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/shared-CgMCAfor.js","fqdn":"widget-v3.smartsuppcdn.com","domain":"smartsuppcdn.com","tld":"com"},"ip":{"addr":"185.76.9.11","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:20.268Z","timestamp":1785126260268,"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-CgMCAfor.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://besttrader.live\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 04:24:20 GMT\r\ncontent-type: application/javascript\r\naccess-control-allow-origin: *\r\ncache-control: max-age=31536000, public, immutable\r\netag: W/\"6a4cb803-42705\"\r\nexpires: Wed, 07 Jul 2027 08:30:00 GMT\r\nlast-modified: Tue, 07 Jul 2026 08:25:39 GMT\r\nx-77-nzt: k44Z00O4HzhnED2e2kFXKbBB4A28s/0ElksmhX+6of1Vt/1JkTE6C5egkAutbilvDb422U4\r\nx-77-nzt-ray: e2f754201b235a1474dd666ab64f5710\r\nx-77-cache: HIT\r\nx-77-age: 1713222\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":92592,"mime_type":"application/javascript","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (44710)","md5":"06c5668b0e6d3383e096c45abdbedf9d","sha1":"8d64309e8ec50da59f799336c11685ca7fd15ecc","sha256":"2724b50edb69a23cc951a77f775727b960c857d18d58cfa9a47fe5c094d9b99a","sha512":"c4a86d25f4e86be36db19539b4e3efc70500a48b9664349043d76a1451f8536c8bed7fe22f8ca790fb3ac7e26fa7efbfc37e0c927687966dc08a02442e15f85c","ssdeep":"6144:mLjnOEIL18ad2jJKaQo+tRkYcuBaay+moJG:iOEIZRd29lqj4n+moY","tlshash":"53443ad53294b035439b51e6906f1106f33e5c58580d812cf269ede678baec8a2f7fb8","first_seen":"2026-07-07T11:50:17.748529Z","last_seen":"2026-07-27T07:05:43.330797Z","times_seen":1788,"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/bix2YXJpYWJsZXM6dS52YXJpYWJsZXMsd2lkZ2V0VmVyc2lvbjpgMy4wYCx2aXNpdHM6dHMoKSxpc1dpZGdldFZpc2libGU6QShSXyksaXNXaWRnZXRPcGVuOkEoWCkscGFnZVVybDpobChyLGMpLHBhZ2VUaXRsZTpmbygpLmRvY3VtZW50LnRpdGxlLGRvbWFpbjpmbygpLmxvY2F0aW9uLmhvc3RuYW1lfHxgdW5rbm93bmAscmVmZXJlcjpmbygpLmRvY3VtZW50LnJlZmVycmVyLGJ1bmRsZVZlcnNpb246YGMwNmQ0NWMzM2UwOTk4ZWYyZDMwNDYyZmI1Nzg3OTYzM2MxZGY1Y2FgfX0seWw9KGUsdCk9PntsZXR7aXNQcmV2aWV3TW9kZTpufT1WLmdldE9wdGlvbnMoKTshZSYmdCE9PUEoZmwpJiYhbiYmKGdsKCksQShYKSYmWC5zZXQoITEpKSxmbC5zZXQodCl9LGJsPSgoKT0+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+ZS5yZW1vdmVFdmVudExpc3RlbmVyKGBwb3BzdGF0ZWAsdCkpKX0saF89KCk9PntsZXQgZT1CKCkuX3NtYXJ0c3VwcHx8e307ZS5hcHBWZXJzaW9uPWAwLjAuMWAsZS5jb21taXRIYXNoPWBjMDZkNDVjMzNlMDk5OGVmMmQzMDQ2MmZiNTc4Nzk2MzNjMWRmNWNhYCxlLmNvbW1pdEluZm89YGMwNmQ0NWMzM2UwOTk4ZWYyZDMwNDYyZmI1Nzg3OTYzM2MxZGY1Y2EgLSBNZXJnZSBwdWxsIHJlcXVlc3QgIzQ1MiBmcm9tIHNtYXJ0c3VwcC9kZXZlbG9wIC0gMjAyNi0wNy0wNyAxMDoyMjoyOCArMDIwMGAsQigpLl9zbWFydHN1cHA9ZX0sZ189KGU9amcuRGVmYXVsdCk9PntsZXR7d2lkZ2V0VjNVcmw6dH09Vi5nZXRPcHRpb25zKCksbj1uZXcgQXVkaW8oYCR7dH0vYXNzZXRzL3NvdW5kcy8ke2V9YCk7cmV0dXJuIG4uY3Jvc3NPcmlnaW49YGFub255bW91c2Asbi5sb2FkKCksbn0sX189ZT0+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+e3BiKGUsdCkmJklnLnNldCh0KX0sWmI9KGUsdCk9PntfYihlLHQpJiZxLnJlbG9hZENsaWVudCh0KX0sUWI9KGUsdCk9PntwYihlLHQpJiZxLnJlbG9hZENsaWVudCh2b2lkIDAsdCl9LCRiPShlLHQpPT57aWYoIXZiKGUsdCkpcmV0dXJuO2xldHtpZDpuLC4uLnJ9PXQ7JGwudXBkYXRlSWRlbnRpdHkobixyKX0sZXg9e3ZlcnNpb246YGMwNmQ0NWMzM2UwOTk4ZWYyZDMwNDYyZmI1Nzg3OTYzM2MxZGY1Y2FgLGV4ZWN1dGU6ZT0+e2xldCB0PWVbMF07aWYodHlwZW9mIHQ9PWBmdW5jdGlvbmApe3J4KHQpO3JldHVybn1pZighZGIodCkpe2JiKFN0cmluZyh0KSk7cmV0dXJufW54KHQsZVsxXSwuLi5lLnNsaWNlKDIpKX0sZXhlYzpmdW5jdGlvbiguLi5lKXt0aGlzLmV4ZWN1dGUoZSl9fSx0eD17WyQuQ2hhdE9wZW5dOkRiLFskLkNoYXRDbG9zZV06T2IsWyQuQ2hhdFNob3ddOmtiLFskLkNoYXRIaWRlXTpBYixbJC5DaGF0TWVzc2FnZV06TmIsWyQuQ2hhdFNlbmRdOlBiLFskLkxhbmd1YWdlXTpqYixbJC5UaGVtZUNvbG9yXTpNYixbJC5IZWFkZXJTdHlsZV06SmIsWyQuT25dOkZiLFskLlZhcmlhYmxlc106SWIsWyQuQ29udGFjdERhdGFdOnpiLFskLk5hbWVdOkxiLFskLkdyb3VwXTpSYixbJC5FbWFpbF06TGIsWyQuUGhvbmVdOkxiLFskLkFuYWx5dGljc0NvbnNlbnRdOkJiLFskLk1hcmtldGluZ0NvbnNlbnRdOlZiLFskLkh0bWxBcHBseV06bnVsbCxbJC5PcGVuUmF0ZUZvcm1dOkhiLFskLk9wZW5BdXRoRm9ybV06VWIsWyQuV2lkZ2V0U3RhdHVzXTpXYixbJC5UcmFuc2xhdGlvbnNdOkdiLFskLkF1dGhGb3JtRmllbGRzXTpLYixbJC5CdXR0b25TdHlsZV06cWIsWyQuUHJldmlld1RyYW5zbGF0ZV06WWIsWyQuRGlzYWJsZUNvbm5lY3Rpb25TdGF0dXNdOlhiLFskLlJlbG9hZFdpdGhNb2NrRGF0YV06WmIsWyQuUmVsb2FkXTpRYixbJC5Cb3RJZGVudGl0eVVwZGF0ZV06JGJ9LG54PShlLHQsLi4ubik9PntsZXQgcj10eFtlXTtpZihyPT09dm9pZCAwKXtiYihlKTtyZXR1cm59ciE9PW51bGwmJihyKGUsdCwuLi5uKSx2byhg8J+nmeKAjeKZgu+4j1tBUEldICR7ZX0ke3Q/YDpgOmBgfWAsdD8/YGApKX0scng9ZT0+e0EoQ18pP2UoKTpYbC5wdXNoKGUpfTt0eXBlb2Ygd2luZG93PGB1YCYmKCh3aW5kb3cuX19zdmVsdGU/Pz17fSkudj8/PW5ldyBTZXQpLmFkZChgNWApO3ZhciBpeD1lPT5lO2Z1bmN0aW9uIGF4KGUpe2xldCB0PWUtMTtyZXR1cm4gdCp0KnQrMX1mdW5jdGlvbiBveChlKXtsZXQgdD10eXBlb2YgZT09YHN0cmluZ2AmJmUubWF0Y2goL15ccyooLT9bXGQuXSspKFteXHNdKilccyokLyk7cmV0dXJuIHQ/W3BhcnNlRmxvYXQodFsxXSksdFsyXXx8YHB4YF06W2UsYHB4YF19ZnVuY3Rpb24gc3goZSx7ZGVsYXk6dD0wLGR1cmF0aW9uOm49NDAwLGVhc2luZzpyPWl4fT17fSl7bGV0IGk9K2dldENvbXB1dGVkU3R5bGUoZSkub3BhY2l0eTtyZXR1cm57ZGVsYXk6dCxkdXJhdGlvbjpuLGVhc2luZzpyLGNzczplPT5gb3BhY2l0eTogJHtlKml9YH19ZnVuY3Rpb24gY3goZSx7ZGVsYXk6dD0wLGR1cmF0aW9uOm49NDAwLGVhc2luZzpyPWF4LHg6aT0wLHk6YT0wLG9wYWNpdHk6bz0wfT17fSl7bGV0IHM9Z2V0Q29tcHV0ZWRTdHlsZShlKSxjPStzLm9wYWNpdHksbD1zLnRyYW5zZm9ybT09PWBub25lYD9gYDpzLnRyYW5zZm9ybSx1PWMqKDEtbyksW2QsZl09b3goaSksW3AsbV09b3goYSk7cmV0dXJue2RlbGF5OnQsZHVyYXRpb246bixlYXNpbmc6cixjc3M6KGUsdCk9PmAKCQkJdHJhbnNmb3JtOiAke2x9IHRyYW5zbGF0ZSgkeygxLWUpKmR9JHtmfSwgJHsoMS1lKSpwfSR7bX0pOwoJCQlvcGFjaXR5OiAke2MtdSp0fWB9fWZ1bmN0aW9uIGx4KGUse2RlbGF5OnQ9MCxkdXJhdGlvbjpuPTQwMCxlYXNpbmc6cj1heCxheGlzOmk9YHlgfT17fSl7bGV0IGE9Z2V0Q29tcHV0ZWRTdHlsZShlKSxvPSthLm9wYWNpdHkscz1pPT09YHlgP2BoZWlnaHRgOmB3aWR0aGAsYz1wYXJzZUZsb2F0KGFbc10pLGw9aT09PWB5YD9bYHRvcGAsYGJvdHRvbWBdOltgbGVmdGAsYHJpZ2h0YF0sdT1sLm1hcChlPT5gJHtlWzBdLnRvVXBwZXJDYXNlKCl9JHtlLnNsaWNlKDEpfWApLGQ9cGFyc2VGbG9hdChhW2BwYWRkaW5nJHt1WzBdfWBdKSxmPXBhcnNlRmxvYXQoYVtgcGFkZGluZyR7dVsxXX1gXSkscD1wYXJzZUZsb2F0KGFbYG1hcmdpbiR7dVswXX1gXSksbT1wYXJzZUZsb2F0KGFbYG1hcmdpbiR7dVsxXX1gXSksaD1wYXJzZUZsb2F0KGFbYGJvcmRlciR7dVswXX1XaWR0aGBdKSxnPXBhcnNlRmxvYXQoYVtgYm9yZGVyJHt1WzFdfVdpZHRoYF0pO3JldHVybntkZWxheTp0LGR1cmF0aW9uOm4sZWFzaW5nOnIsY3NzOmU9PmBvdmVyZmxvdzogaGlkZGVuO29wYWNpdHk6ICR7TWF0aC5taW4oZSoyMCwxKSpvfTske3N9OiAke2UqY31weDtwYWRkaW5nLSR7bFswXX06ICR7ZSpkfXB4O3BhZGRpbmctJHtsWzFdfTogJHtlKmZ9cHg7bWFyZ2luLSR7bFswXX06ICR7ZSpwfXB4O21hcmdpbi0ke2xbMV19OiAke2UqbX1weDtib3JkZXItJHtsWzBdfS13aWR0aDogJHtlKmh9cHg7Ym9yZGVyLSR7bFsxXX0td2lkdGg6ICR7ZSpnfXB4O21pbi0ke3N9OiAwYH19ZnVuY3Rpb24gdXgoZSx7ZGVsYXk6dD0wLGR1cmF0aW9uOm49NDAwLGVhc2luZzpyPWF4LHN0YXJ0Omk9MCxvcGFjaXR5OmE9MH09e30pe2xldCBvPWdldENvbXB1dGVkU3R5bGUoZSkscz0rby5vcGFjaXR5LGM9by50cmFuc2Zvcm09PT1gbm9uZWA/YGA6by50cmFuc2Zvcm0sbD0xLWksdT1zKigxLWEpO3JldHVybntkZWxheTp0LGR1cmF0aW9uOm4sZWFzaW5nOnIsY3NzOihlLHQpPT5gCgkJCXRyYW5zZm9ybTogJHtjfSBzY2FsZSgkezEtbCp0fSk7CgkJCW9wYWNpdHk6ICR7cy11KnR9CgkJYH19YXQoKTt2YXIgZHg9d2koYDxkaXY+PC9kaXY+YCk7ZnVuY3Rpb24gZngoZSx0KXtsdCh0LCEwKTtsZXQgbj1vbyh0LGBoZWlnaHRgLDMsMjApLHI9b28odCxgd2lkdGhgLDMsYDEwMCVgKSxpPW9vKHQsYGNvbG9yU2NoZW1lYCwzLGBncmF5YCksYT1vbyh0LGByb3VuZGVkU3R5bGVgLDMsYHJvdW5kZWQtZnVsbGApLG89Zm4oKCk9PmAke2EoKX0gYW5pbWF0ZS1wdWxzZWApO3ZhciBzPWR4KCk7bGV0IGM7cHIoZT0+e2JhKHMsMSxtYShbUihvKSxpKCk9PT1gZ3JheWAmJmBiZy1ncmF5LTIwMGAsaSgpPT09YGRhcmtHcmF5YCYmYGJnLWdyYXktMzAwYF0pKSxjPVNhKHMsYGAsYyxlKX0sWygpPT4oe2hlaWdodDpteShuKCkpLHdpZHRoOkZ1KHIoKSk/bXkocigpKTpyKCl9KV0pLGtpKGUscyksdXQoKX1mdW5jdGlvbiBweChlLHQpe2xldCBuPW9vKHQsYHNpemVgLDMsMjApO2Z4KGUse2NvbG9yU2NoZW1lOmBkYXJrR3JheWAsZ2V0IHdpZHRoKCl7cmV0dXJuIG4oKX0sZ2V0IGhlaWdodCgpe3JldHVybiBuKCl9fSl9dmFyIG14PUVpKGA8c3ZnPjxwYXRoIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMiIgZD0iTTE4IDZMNiAxOE02IDZsMTIgMTIiPjwvcGF0aD48L3N2Zz5gKTtmdW5jdGlvbiBoeChlLHQpe2xldCBuPXJvKHQsW2AkJHNsb3RzYCxgJCRldmVudHNgLGAkJGxlZ2FjeWBdKTt2YXIgcj1teCgpO1ZhKHIsKCk9Pih7dmlld0JveDpgMCAwIDI0IDI0YCx3aWR0aDpgMS4yZW1gLGhlaWdodDpgMS4yZW1gLC4uLm59KSksa2koZSxyKX12YXIgZ3g9d2koYDxidXR0b24gdHlwZT0iYnV0dG9uIiB0YWJpbmRleD0iMCI+PGRpdj48IT48L2Rpdj48L2J1dHRvbj5gKTtmdW5jdGlvbiBfeChlLHQpe2x0KHQsITApO2xldCBuPW9vKHQsYGljb25PcmllbnRhdGlvbmAsMyxgcmlnaHRgKSxyPW9vKHQsYGljb25BbmltYXRpb25gLDMsYG5vbmVgKSxpPW9vKHQsYGljb25TY2FsZWAsMywhMSksYT1vbyh0LGBzaXplYCwzLGBtZGApLG89b28odCxgdmFyaWFudGAsMyxgZ2hvc3RgKSxzPW9vKHQsYGZvY3VzYCwzLGBwcmltYXJ5YCksYz1mbigoKT0+bigpPT09YHJpZ2h0YD8xOi0xKSxsPWZuKCgpPT5pKCk/MS40OjEuMiksdT1mbigoKT0+dC5pY29uKSxkPWU9PntlLnN0b3BQcm9wYWdhdGlvbigpLHQub25DbGljayYmdC5vbkNsaWNrKGUpfTt2YXIgZj1neCgpLHA9Vm4oZik7JGkoVm4ocCksKCk9PlIodSksKGUsdCk9Pnt0KGUse3dpZHRoOmAxZW1gLGhlaWdodDpgMWVtYH0pfSksWGUocCksWGUoZikscHIoZT0+e2JhKGYsMSxlLGBzdmVsdGUteXdvZm1sYCksZi5kaXNhYmxlZD10LmRpc2FibGVkLHphKGYsYGRhdGEtdGVzdGlkYCx0LnRlc3RJZCksemEoZixgYXJpYS1sYWJlbGAsdC5pY29uRGVzY3JpcHRpb24pLHphKGYsYGFyaWEtZGlzYWJsZWRgLHQuZGlzYWJsZWQpLGJhKHAsMSxtYShbYHctZnVsbCBoLWZ1bGwgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXJgLHIoKT09PWBzcGluYCYmYGFuaW1hdGUtc3BpbmBdKSksU2EocCxgdHJhbnNmb3JtOiBzY2FsZSgke1IobCl9KSBzY2FsZVgoJHtSKGMpfSk7YCl9LFsoKT0+bWEoW2BidG4gYnRuLSR7bygpfSBidG4tJHthKCl9YCwhIXQuZGlzYWJsZWQmJmBidG4tZGlzYWJsZWRgLGlzKCk/YGN1cnNvci1hdXRvYDpgY3Vyc29yLXBvaW50ZXJgLHMoKT09PWBwcmltYXJ5YCYmYGJ1dHRvbi1mb2N1c2AscygpPT09YHNlY29uZGFyeWAmJmBidXR0b24tZm9jdXMtc2Vjb25kYXJ5YF0pXSksZ2koYGNsaWNrYCxmLGQpLGtpKGUsZiksdXQoKX1faShbYGNsaWNrYF0pO2V4cG9ydHtkXyBhcyAkLGp0IGFzICRpLFNsIGFzICRuLGFvIGFzICRyLCRmIGFzICR0LCRfIGFzIEEsZ2kgYXMgQWksc2QgYXMgQW4sc3MgYXMgQXIsVGggYXMgQXQsS18gYXMgQixWbiBhcyBCaSxVdSBhcyBCbixqbyBhcyBCcixIcCBhcyBCdCxGeSBhcyBDLElpIGFzIENpLF9kIGFzIENuLGJzIGFzIENyLHpoIGFzIEN0LG95IGFzIEQsRWkgYXMgRGksbmQgYXMgRG4sX3MgYXMgRHIsTWggYXMgRHQsbXkgYXMgRSx3aSBhcyBFaSxlZCBhcyBFbixocyBhcyBFcixGaCBhcyBFdCxKXyBhcyBGLCRyIGFzIEZpLEt1IGFzIEZuLHpvIGFzIEZyLFpwIGFzIEZ0LE9fIGFzIEcsVG4gYXMgR2ksJGwgYXMgR24scG8gYXMgR3IsenAgYXMgR3QsTl8gYXMgSCxVbiBhcyBIaSxMdSBhcyBIbix5byBhcyBIcixNcCBhcyBIdCxYIGFzIEkscHIgYXMgSWksWXUgYXMgSW4sVm8gYXMgSXIsWXAgYXMgSXQsbV8gYXMgSixwbiBhcyBKaSxIbCBhcyBKbix6IGFzIEpyLFJwIGFzIEp0LGdfIGFzIEssQ24gYXMgS2ksWWwgYXMgS24sQiBhcyBLcixKIGFzIEt0LEdfIGFzIEwsb3IgYXMgTGkscXUgYXMgTG4sQm8gYXMgTHIsWHAgYXMgTHQscnYgYXMgTSxwaSBhcyBNaSxpZCBhcyBNbixhcyBhcyBNcixFaCBhcyBNdCxZXyBhcyBOLFIgYXMgTmksWnUgYXMgTm4saXMgYXMgTnIsaWggYXMgTnQsYXkgYXMgTyxEaSBhcyBPaSxsZCBhcyBPbixscyBhcyBPcixraCBhcyBPdCxXXyBhcyBQLFhyIGFzIFBpLEd1IGFzIFBuLEpvIGFzIFByLGFtIGFzIFB0LGlfIGFzIFEsUHQgYXMgUWksd2wgYXMgUW4scm8gYXMgUXIsT3AgYXMgUXQsVV8gYXMgUixjciBhcyBSaSxXdSBhcyBSbixVIGFzIFJyLFdwIGFzIFJ0LFB5IGFzIFMsamkgYXMgU2ksZ2QgYXMgU24seXMgYXMgU3IsYWcgYXMgU3QsZ3kgYXMgVCxPaSBhcyBUaSx1ZCBhcyBUbixmcyBhcyBUcixJaCBhcyBUdCxqXyBhcyBVLGpuIGFzIFVpLE11IGFzIFVuLFYgYXMgVXIsQnAgYXMgVXQsTV8gYXMgVixIbiBhcyBWaSxWdSBhcyBWbixIIGFzIFZyLFZwIGFzIFZ0LERfIGFzIFcsd24gYXMgV2kscSBhcyBXbix2byBhcyBXcixGcCBhcyBXdCxzXyBhcyBYLE10IGFzIFhpLFJsIGFzIFhuLHNvIGFzIFhyLElwIGFzIFh0LHBfIGFzIFksZm4gYXMgWWksVyBhcyBZbixjbyBhcyBZcixQcCBhcyBZdCxhXyBhcyBaLEF0IGFzIFppLENsIGFzIFpuLG9vIGFzIFpyLGtwIGFzIFp0LFJ5IGFzIF8sR2kgYXMgX2ksVGQgYXMgX24sTmMgYXMgX3IsdWcgYXMgX3Qsc3ggYXMgYSxsdCBhcyBhYSxWYSBhcyBhaSxCZiBhcyBhbixsbCBhcyBhcixVZyBhcyBhdCxOeSBhcyBiLFJpIGFzIGJpLHlkIGFzIGJuLENzIGFzIGJyLGlnIGFzIGJ0LGx4IGFzIGMsWGUgYXMgY2EsVGEgYXMgY2ksU2YgYXMgY24sUWMgYXMgY3IsVmcgYXMgY3QsSHkgYXMgZCxtYSBhcyBkaSxHZCBhcyBkbixXYyBhcyBkcixOZyBhcyBkdCxrIGFzIGVhLGVvIGFzIGVpLGVwIGFzIGVuLGJsIGFzIGVyLG9fIGFzIGV0LHp5IGFzIGYsdWEgYXMgZmksVmQgYXMgZm4sR2MgYXMgZnIsT2cgYXMgZnQsR3kgYXMgZyxaaSBhcyBnaSx3ZCBhcyBnbixCYyBhcyBncix5ZyBhcyBndCxWeSBhcyBoLFFpIGFzIGhpLEVkIGFzIGhuLHpjIGFzIGhyLFRnIGFzIGh0LGZ4IGFzIGksdXQgYXMgaWEscWEgYXMgaWksRmYgYXMgaW4sc2wgYXMgaXIsdF8gYXMgaXQsaXYgYXMgaixoaSBhcyBqaSxmZCBhcyBqbix1cyBhcyBqcixEaCBhcyBqdCxldiBhcyBrLF9pIGFzIGtpLGNkIGFzIGtuLGNzIGFzIGtyLE9oIGFzIGt0LGV4IGFzIGwseCBhcyBsYSxTYSBhcyBsaSxiZiBhcyBsbixVYyBhcyBscixMZyBhcyBsdCxxeSBhcyBtLCRpIGFzIG1pLHpkIGFzIG1uLFZjIGFzIG1yLERnIGFzIG10LGh4IGFzIG4sTyBhcyBuYSxZYSBhcyBuaSxxZiBhcyBubix1bCBhcyBucixjXyBhcyBudCxjeCBhcyBvLGN0IGFzIG9hLHphIGFzIG9pLHpmIGFzIG9uLG9sIGFzIG9yLEhnIGFzIG90LFd5IGFzIHAsY2EgYXMgcGksSGQgYXMgcG4sSGMgYXMgcHIsRWcgYXMgcHQsaF8gYXMgcSxPbiBhcyBxaSxLbCBhcyBxbixtbyBhcyBxcixOcCBhcyBxdCxweCBhcyByLHN0IGFzIHJhLEphIGFzIHJpLFVmIGFzIHJuLGNsIGFzIHJyLGxfIGFzIHJ0LHV4IGFzIHMsWmUgYXMgc2EsTGEgYXMgc2ksRGYgYXMgc24sbmwgYXMgc3IsQmcgYXMgc3QsX3ggYXMgdCxBIGFzIHRhLCRhIGFzIHRpLFRwIGFzIHRuLGRsIGFzIHRyLHJfIGFzIHR0LEx5IGFzIHUsdSBhcyB1YSxiYSBhcyB1aSxSZCBhcyB1bixLYyBhcyB1cixGZyBhcyB1dCxKeSBhcyB2LFZpIGFzIHZpLFNkIGFzIHZuLFBjIGFzIHZyLHJnIGFzIHZ0LER5IGFzIHcsa2kgYXMgd2ksJHUgYXMgd24sZ3MgYXMgd3IsTGggYXMgd3QsSXkgYXMgeCxNaSBhcyB4aSx4ZCBhcyB4bix4cyBhcyB4cixvZyBhcyB4dCxNeSBhcyB5LEJpIGFzIHlpLGJkIGFzIHluLE1jIGFzIHlyLFZoIGFzIHl0LFZfIGFzIHosWG4gYXMgemksSHUgYXMgem4sTG8gYXMgenIsVXAgYXMgenR9OwovLyMgc291cmNlTWFwcGluZ1VSTD1zaGFyZWQtQ2dNQ0Fmb3IuanMubWFw"}},"time_used":17,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":17,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/js/counter.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.059Z","timestamp":1785126256059,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /js/counter.js HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: application/javascript\r\nx-accel-version: 0.01\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: W/\"295-6071c9ab07c00\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":661,"size_decoded":501,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with CRLF line terminators","md5":"10a591844653b3c507ac061491e9da73","sha1":"0813a0e1cd897be6e70e2b01ebdb2a0141e45706","sha256":"f9c65b907c5fbb6268d3037d655dbcc568e88ae430cfa98bc3576a9c92d777b0","sha512":"185f5a7833d640a3460d0caa4fa9c18bd575f3f4d1674701c206c3b2a7a536b4ad50f9649c46f4686f0538f8f0e8e9cf3855b53734ea02e8e5e2207df96be69d","ssdeep":"","tlshash":"d701969c8a570090ac36e7a97b6b5624eae367131009d44fb6dcb2401ff3a2cc099fdd","first_seen":"2023-03-09T10:05:20Z","last_seen":"2026-07-27T04:25:12.772044Z","times_seen":185,"resource_available":true,"data":"JChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKXsNCgkgLy8gKmNvdW50ZXIqDQogICAgICB2YXIgY291bnRlcnMgPSAkKCIuY291bnRpcyIpOw0KICAgICAgdmFyIGNvdW50ZXJzUXVhbnRpdHkgPSBjb3VudGVycy5sZW5ndGg7DQogICAgICB2YXIgY291bnRlciA9IFtdOw0KDQogICAgICBmb3IgKGkgPSAwOyBpIDwgY291bnRlcnNRdWFudGl0eTsgaSsrKSB7DQogICAgICAgIGNvdW50ZXJbaV0gPSBwYXJzZUludChjb3VudGVyc1tpXS5pbm5lckhUTUwpOw0KICAgICAgfQ0KDQogICAgICB2YXIgY291bnQgPSBmdW5jdGlvbihzdGFydCwgdmFsdWUsIGlkKSB7DQogICAgICAgIHZhciBsb2NhbFN0YXJ0ID0gc3RhcnQ7DQogICAgICAgIHNldEludGVydmFsKGZ1bmN0aW9uKCkgew0KICAgICAgICAgIGlmIChsb2NhbFN0YXJ0IDwgdmFsdWUpIHsNCiAgICAgICAgICAgIGxvY2FsU3RhcnQrKzsNCiAgICAgICAgICAgIGNvdW50ZXJzW2lkXS5pbm5lckhUTUwgPSBsb2NhbFN0YXJ0Ow0KICAgICAgICAgIH0NCiAgICAgICAgfSwgMSk7DQogICAgICB9DQoNCiAgICAgIGZvciAoaiA9IDA7IGogPCBjb3VudGVyc1F1YW50aXR5OyBqKyspIHsNCiAgICAgICAgY291bnQoMCwgY291bnRlcltqXSwgaik7DQogICAgICB9DQogICAgIC8vIGVuZCBvZiBjb3VudGVyDQoNCn0pOw=="}},"time_used":345,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":345,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/images/sep3.png","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.090Z","timestamp":1785126256090,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/sep3.png HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/png\r\ncontent-length: 1912\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-778\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":1912,"size_decoded":2160,"mime_type":"image/png","magic":"PNG image data, 87 x 78, 8-bit/color RGBA, non-interlaced","md5":"c241af88cbd90e099f3683d0119a8fdb","sha1":"d3d026faa11a9ea754a985436dfe931d3fd96097","sha256":"55524868d86b4973d711f8e8d3216ba35eb6e1d5537e38775d81b1ffca1a141f","sha512":"eb464eeee802ce64b1aa14e0a25fc35b6bf72274411acca18dade2ec6bb5d24f2e73857bec6b0259b8328d4979bda6cdec7406bfe6b166c32e1e85be622f4a70","ssdeep":"","tlshash":"94411b1ef960a9018087d9b23dd7d07f1c3d495388d8f2e6f8cbc53905142f6556e8da","first_seen":"2025-08-09T17:53:17.878652Z","last_seen":"2026-07-27T04:25:12.772671Z","times_seen":11,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAFcAAABOCAYAAABVEYo/AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyNpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDE0IDc5LjE1MTQ4MSwgMjAxMy8wMy8xMy0xMjowOToxNSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChNYWNpbnRvc2gpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkZFODk1N0Y1QjQ4MjExRTVCRjIwRjA1QTAxMTBFQTg5IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkZFODk1N0Y2QjQ4MjExRTVCRjIwRjA1QTAxMTBFQTg5Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6RkU4OTU3RjNCNDgyMTFFNUJGMjBGMDVBMDExMEVBODkiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6RkU4OTU3RjRCNDgyMTFFNUJGMjBGMDVBMDExMEVBODkiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7vz5cmAAAD60lEQVR42uydbYgNURjHz+ze1abdsstFUWxtu6TkZUnWayKKUhSbT5JSfPBBiCjiA0pC25bygbxEig+0if1CUvLyZS0hL+22LEloP2Bd/8c8W7N379zdM/fMnbtznn/92nvvzJwz99+Z5zznzM65TiqVKlZK7QDbwVgl6gGvwVlwDKSCFuTA3AP4u188zahDYF8u5nZKi/XVVzAyF3NT4mF2j4IeWOTzeYoviTFceJyZAA7nElt1Wy4F8p0Wxte9Jluun7mjwWfLzE2CrnyY6yg7ZdSLIumvwpOYK+YOWlXgAiguhJNJxMjYYeAqmAk6CiHbiVPLPc7GKp4raYh89BGTbGEduJz2WTeYD55ElS3Ewdxa8AiUZ9jWDmZo5OySink0HFzxMZY0HlzjeCwxV1OnwdQB9qHQcEpibvSjKwkLMogQiblirpgrEnPFXDFXJOaKuV618EiplztD1dxCHP7+UX3vJND7Ehn+mlH6LZqEhAWRmCvmirkiMVfMDZwD35U811yumZ4D93hSNclzDefAxRIW+qsr7fL+HseYG1VYyFZnGNskLEi2EPzS77LN3DDDQr4vfQkLEhZERpQwdLmbODZf2xxpuRIWRKbDQqyzJ2m5MW65jtgmLVdH1eAc6EwbVWaik/etDmpu0iJj6ZmJp2AcqFcDr89Qz8bSMQuzJ56ZdZRGxZbwHHSDORrHrGCf6NgyMBksAVXe/fzM/QsOgmSMTKwDTeCNz3du1Sir1aeMt1wH1RXrNW68He9acCmPqSfdjmogc+kuQHnMzW0Dk/Jcfxt1aNct6LRqIqizli6Tbcq9i7ompi04SMrZBN6B1eAFsxws0qmTzKWwsJERuaIFMe4rd9G2x8p98r1M09z/HZoNZul8yQ+cy7ZnaP2U17YUsrm5VuiEWOcvMEW5C2XSVb2eBxdk+C3e55vMigXTQzaWtBk0erZ9UZpPv0vL7atnYDq/ps59E1gM5oFK7RMVc/vtt4A7M6/o36aWgiNq4PUdxNws+glOgvOcgnk1ArwCo8LI/2wQpVx7eFT3UbkLE9V4OrN7YSXXg1Wz8p8PNdHyM3HDQNk0/7CFswMSLXFLKz+t8uxTGXVYiCp5dnI8n4tgAze6aWAi+AQecBmz+HVCzNU/n1YOCc2c83q1jENERdRhYahqCoeX2fx+N6dhilOyCp3CwhpEvFTuYmr51G2DZdWBUjCX07BSDhEFn+cW+tyCMdkSFsTcEPU+gjo7bDG3MYI6T9gScylF26rcn8lJpg11f+dYdgmP6npFK57ST/I0Opb9wAlNI+5is3+Alar/pLiuaKXTm2wwmUmTO2dowz8BBgAxTEZyQI8dZgAAAABJRU5ErkJggg=="}},"time_used":333,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":314,"receive":19,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","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/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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.350Z","timestamp":1785126257350,"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-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/crypto-mkt-screener/?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 04:24:17 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: 6f8aef692d37cabe5029c8390dd2aa08\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":45612,"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-27T07:05:43.287718Z","times_seen":2243,"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":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/s/player/7a7969c2/www-player.css","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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/Gc2en3nHxA4","date":"2026-07-27T04:24:16.892Z","timestamp":1785126256892,"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/Gc2en3nHxA4\r\nCookie: __Secure-YNID=20.YT=E5bZH_lP1NArLG48t6lRj9oeecW0xyEFe9u0ebWOb-g-_JffSEAYD96vgiz84ztWu4jL2Qub3iqTQ2XsVrmUelh8bL2Z51wNDSmop6dn1VykM86DS3aVeEn7QG8EY9Ml3wvuvcssa43xkqpG8yaId8urAjrXhYEfGQpbtjPMaEJoztxh0chYc1U5XnLeSKOglaDLkUb_VvEZq4QcOK6PKm2QcEJ7YaKMvNNnRY4v3GMNcZEy2NrRIXXQEQI5D8IEV_am0BM4s0b23dnIOVfMyNQVyW0u7xAK0Ni0sYaQe1TWl0KmDEjJm310XaYqlpGcnfGpZpknLRrb4GiekJ28gg; YSC=nYVVApPxeLY; __Secure-ROLLOUT_TOKEN=CL_qp-jW2sbDnwEQ_4Clw4HylQMY_4Clw4HylQM%3D; VISITOR_INFO1_LIVE=8BWjCSfd-OY; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgGA%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: 420928\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-27T07:05:42.979901Z","times_seen":4683,"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":45,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":14,"receive":31,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCGRAM.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.550Z","timestamp":1785126258550,"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 /crypto/XTVCGRAM.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 04:24:18 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=300,s-maxage=180\r\ncontent-encoding: zstd\r\netag: \"43508822bc58d57597b9c0df6452f4ba\"\r\nlast-modified: Thu, 11 Jun 2026 12:57:14 GMT\r\nx-amz-id-2: K07V1gAvNXTmaxT6WmQAOiyfbf7/gWfOY9/TstLcA+kg8GctfCiT4Rt7Jp3KFt7Xt0y/lQhtHUY826brkMAtTP6i6ZjkFM/k\r\nx-amz-request-id: MJ8F37WM024D930Q\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 43508822bc58d57597b9c0df6452f4ba\r\nx-amz-version-id: s0_BWoimf8.1Nxz9yN6ZynqDe9T2EgoB\r\ncdn-proxyver: 1.55\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 06/12/2026 06:27:38\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: dc4b733e4fca28e248ede601470aeabf\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":739,"size_decoded":1427,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (739), with no line terminators","md5":"43508822bc58d57597b9c0df6452f4ba","sha1":"4d3d6f3886101200164a1db04c73204fe0838ca2","sha256":"f4d7fb4190bf196b2d5e8d71c594832640764bf41b93ef1eec34df53bbd46d1a","sha512":"c00e44fb4049a95c53964790e2b281c768af705488d1bdafd57e83cfe6f15e2350e2764f90ee7fae7762e7eda2bf9bdab6436dbd4d6862fc929dfa8a882455b8","ssdeep":"","tlshash":"3b0149a60618e62d89ca939dd330d1f1229f309af1bb59e8bec697e86106c90e806050","first_seen":"2026-06-18T10:30:00.978401Z","last_seen":"2026-07-27T07:05:43.36704Z","times_seen":144,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMzMEExRjUiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTAuOTMgNWMuNSAwIC43NiAwIC45OC4wNy4yLjA2LjM5LjE2LjU1LjI5LjE4LjE1LjMyLjM1LjU5Ljc2bDEuMiAxLjhjLjE4LjI4LjI3LjQxLjMuNTUuMDEuMTMgMCAuMjYtLjA1LjM4LS4wNi4xMy0uMTcuMjQtLjQuNDdsLTQuNDYgNC4zMmMtLjIuMi0uMy4zLS40My4zNGEuNTQuNTQgMCAwIDEtLjMyIDBjLS4xMi0uMDQtLjIzLS4xNC0uNDMtLjM0TDQgOS4zMmMtLjI0LS4yMy0uMzUtLjM0LS40LS40N2EuNjguNjggMCAwIDEtLjA1LS4zOGMuMDItLjE0LjExLS4yNy4zLS41NGwxLjE5LTEuODFjLjI3LS40LjQtLjYxLjU5LS43Ni4xNi0uMTMuMzUtLjIzLjU1LS4zQzYuNCA1IDYuNjYgNSA3LjE3IDVoMy43NlptLjA4IDJhLjE3LjE3IDAgMCAwLS4zIDBsLS4zNyAxYS4yMi4yMiAwIDAgMS0uMTMuMTJsLTEgLjM3YS4xNy4xNyAwIDAgMCAwIC4zbDEgLjM3Yy4wNi4wMy4xLjA3LjEzLjEzbC4zNiAxYy4wNi4xNC4yNi4xNC4zMSAwbC4zNy0xYy4wMi0uMDYuMDctLjEuMTMtLjEzbC45OS0uMzZhLjE3LjE3IDAgMCAwIDAtLjMxbC0xLS4zN2EuMjIuMjIgMCAwIDEtLjEyLS4xM0wxMS4wMSA3WiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCDOT.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.617Z","timestamp":1785126258617,"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 /crypto/XTVCDOT.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 04:24:18 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: \"5c3425bc5ca77a5b0a1c7c2d69adbba9\"\r\nlast-modified: Fri, 24 Dec 2021 14:02:23 GMT\r\ncdn-cachedat: 08/09/2025 14:29:15\r\nx-amz-id-2: OxCry/qPj1PJyuuXX1m7IFe3T8VSQpNh6mZSFTLS31PkDomfm1UdEZxScMQDEUzwCx+grHERQw4=\r\nx-amz-request-id: NSJJB0YAXKTRVPWV\r\nx-amz-meta-hash: 5c3425bc5ca77a5b0a1c7c2d69adbba9\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: 0700858802f8706e63535f7ee1162ea4\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":727,"size_decoded":1276,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (727), with no line terminators","md5":"5c3425bc5ca77a5b0a1c7c2d69adbba9","sha1":"6d00bda83b03db41bdd22270e18645e417e9c13f","sha256":"064fe2a79db51d731a0bef816a0efac059c57ab55a6c264bfdbf5eeb5e49a443","sha512":"95dd6404285a84b786191f257bbb38e4384751950159186bfb1345f97fb27e1eb8dd670d2340dc498d730fac100e39ffc2a21810be0e7ea87c73e9ea00b12b01","ssdeep":"","tlshash":"bb016416c204ca38ad0bc12edd6890f7a1078cd5bd8e10e3a6f25a60b0cf5cafc54e38","first_seen":"2023-05-02T00:43:59Z","last_seen":"2026-07-27T07:05:43.292855Z","times_seen":1508,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjE4IiBoZWlnaHQ9IjE4IiB2aWV3Qm94PSIwIDAgMTggMTgiPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTEgNWMwIC41NS0uOSAxLTIgMXMtMi0uNDUtMi0xIC45LTEgMi0xIDIgLjQ1IDIgMXptMi42NiAzLjUyYy40OC0uMjYuNDUtMS4xNy0uMDgtMi4wNC0uNTMtLjg2LTEuMzUtMS4zNC0xLjg0LTEuMDgtLjQ4LjI2LS40NSAxLjE4LjA4IDIuMDQuNTMuODYgMS4zNSAxLjM1IDEuODQgMS4wOHpNNi4yNiA1LjRjLjQ5LjI2LjQ1IDEuMTgtLjA4IDIuMDQtLjUzLjg2LTEuMzUgMS4zNS0xLjg0IDEuMDgtLjQ4LS4yNi0uNDQtMS4xNy4wOC0yLjA0LjUzLS44NiAxLjM2LTEuMzQgMS44NC0xLjA4ek0xMSAxM2MwIC41NS0uOSAxLTIgMXMtMi0uNDUtMi0xIC45LTEgMi0xIDIgLjQ1IDIgMXptMi41OC0xLjU4Yy41My0uODcuNTYtMS43OC4wOC0yLjA0LS40OS0uMjctMS4zLjIyLTEuODQgMS4wOC0uNTMuODYtLjU2IDEuNzgtLjA4IDIuMDQuNDkuMjYgMS4zMS0uMjIgMS44NC0xLjA4em0tNy40LS44NmMuNTMuODYuNTcgMS43OC4wOCAyLjA0LS40OC4yNi0xLjMtLjIyLTEuODMtMS4wOC0uNTMtLjg3LS41Ny0xLjc4LS4wOC0yLjA0LjQ4LS4yNyAxLjMuMjIgMS44MyAxLjA4eiIgZmlsbD0iI0U2MDA3QSIvPjwvc3ZnPg=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCSKRS.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.723Z","timestamp":1785126258723,"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 /crypto/XTVCSKRS.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 04:24:18 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: \"cb7dee13e1d6836897c22440fc9adfeb\"\r\nlast-modified: Mon, 09 Mar 2026 08:09:44 GMT\r\nx-amz-id-2: Gt2abLp9Edonpd0KUFc/7CHW+4TYTUvdfSmX5Pf12T9cwzAkwRMpQqE/62LuJi49E9+qSqcJaHI=\r\nx-amz-request-id: G7Z7366HX0GEA7B6\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: cb7dee13e1d6836897c22440fc9adfeb\r\ncdn-proxyver: 1.43\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 03/09/2026 08:38:10\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: c9f15002cdf96df60598ff4bf53bb29f\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":1125,"size_decoded":1590,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1125), with no line terminators","md5":"cb7dee13e1d6836897c22440fc9adfeb","sha1":"b05059023dfeef9902c331396423bd8b0f2df711","sha256":"3fd22cbf79e7bcfe68e55b0fba6fbb40107c9ea8722f620ae65d3c44c6baf160","sha512":"ab26944ce58b927a2850f639d93be80e9e8366ab20ecfe8d431ec015c64e1e229d482a3508de847cf284081078d6e52304a09a83801cf2ae27a4868f81057c5f","ssdeep":"","tlshash":"932123fcd54cd93ccc43d59ce7759564130e60adb02783ead4df8b7d50294c6e416854","first_seen":"2026-03-10T03:52:02.111504Z","last_seen":"2026-07-27T07:05:43.364827Z","times_seen":375,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNNi42NyAxMC44N3YuMDFjLjA0LjI5LjE1LjU1LjMyLjguMTcuMjMuMzkuNDMuNjUuNTlhMy4xNCAzLjE0IDAgMCAwIDMuMjItLjF2MS41NWwtLjAyLjAxYTYuMDEgNi4wMSAwIDAgMS0zLjA1LjEyIDMuOTQgMy45NCAwIDAgMS0xLjY3LS44IDMuMTMgMy4xMyAwIDAgMS0xLjEtMi4yaDEuNjNsLjAyLjAyWm0uNDktNC44OHYuMDJjLS4xMS4xNi0uMTkuMzItLjIxLjQ3LS4wOC40OC4wMi44My4zIDEuMDZhMyAzIDAgMCAwIDEuMTIuNDljLjI2LjA3LjguMTcgMS42LjMxLjQzLjA4Ljg5LjIgMS4zOC4zOC4zOC4xMy43LjMzLjk3LjYuMy4yNy40OS42LjU4Ljk1YTIuOCAyLjggMCAwIDEtLjEgMS43M2wtLjAxLjAxSDExVjEyYy4yMi0uMjguMy0uNi4yNy0uOTYtLjA1LS4zOC0uMjYtLjY3LS42NS0uODctLjE4LS4xLS4zMy0uMTYtLjQ3LS4yLS4zOC0uMS0xLS4yMi0xLjg0LS4zN2E4Ljk3IDguOTcgMCAwIDEtMS4yOC0uMzJjLS4yMS0uMDctLjQtLjE1LS41Ny0uMjRhMi41IDIuNSAwIDAgMS0uOC0uNjcgMiAyIDAgMCAxLS40LS45MkEyLjk0IDIuOTQgMCAwIDEgNS4zNyA2aDEuNzdabS42My0xLjg4YTUuNiA1LjYgMCAwIDEgMi4yNi4wMSAzLjcgMy43IDAgMCAxIDEuODUuOTMgMi43NSAyLjc1IDAgMCAxIC44NyAxLjhIMTEuMWwtLjAxLS4wMWExLjggMS44IDAgMCAwLS44OC0xLjE1IDIuODcgMi44NyAwIDAgMC0yLjAzLS4yNSAxLjkzIDEuOTMgMCAwIDAtLjg2LjRsLS4wMS0uMDFWNC4yM2guMDFjLjIxLS4wNy4zNi0uMS40Ni0uMTNaIiBmaWxsPSIjZmZmIi8+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJhIiB4MT0iMy4zNSIgeTE9IjMuMTIiIHgyPSIyMS45IiB5Mj0iMjQuNDMiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjMUExRTIxIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMDYwNjBBIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PC9zdmc+"}},"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":"besttrader.live/slick/slick-theme.css","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.031Z","timestamp":1785126256031,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /slick/slick-theme.css HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: text/css\r\nlast-modified: Sat, 07 Oct 2023 09:01:37 GMT\r\netag: W/\"65211e71-c49\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":3145,"size_decoded":993,"mime_type":"text/css","magic":"Unicode text, UTF-8 text","md5":"78dbc5293212e70c58bc8e5aec6e1450","sha1":"303deb4c2d454646d4cff4f4a9ecb54efbf3b70e","sha256":"dc830233ffee5ff516b627e1ec2078bd6f20cdf1ec0b5599b10ea46b7a5e3fce","sha512":"286f448e26dcdcdf4d1f36866b2c30c01d94873910e006da8a5d8f2cea8216190f7826f0b513828a4b0b8cc5c9920e66b733ced269ad0ac867e50316a2f6e4cc","ssdeep":"","tlshash":"6951ef985ab3a742101690903be7472477cbb0131629d8acff95638c8fce0d8ead934e","first_seen":"2023-05-02T00:43:59Z","last_seen":"2026-07-27T04:25:12.776568Z","times_seen":27,"resource_available":false,"data":"QGNoYXJzZXQgJ1VURi04JzsKLyogU2xpZGVyICovCi5zbGljay1sb2FkaW5nIC5zbGljay1saXN0CnsKICAgIGJhY2tncm91bmQ6ICNmZmYgdXJsKCdhamF4LWxvYWRlci5naWYnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDsKfQoKLyogSWNvbnMgKi8KQGZvbnQtZmFjZQp7CiAgICBmb250LWZhbWlseTogJ3NsaWNrJzsKICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7CiAgICBmb250LXN0eWxlOiBub3JtYWw7CgogICAgc3JjOiB1cmwoJ2ZvbnRzL3NsaWNrLmVvdCcpOwogICAgc3JjOiB1cmwoJ2ZvbnRzL3NsaWNrZDQxZGQ0MWRkNDFkLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIHVybCgnZm9udHMvc2xpY2sud29mZicpIGZvcm1hdCgnd29mZicpLCB1cmwoJ2ZvbnRzL3NsaWNrLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSwgdXJsKCdmb250cy9zbGljay5zdmcjc2xpY2snKSBmb3JtYXQoJ3N2ZycpOwp9Ci8qIEFycm93cyAqLwouc2xpY2stcHJldiwKLnNsaWNrLW5leHQKewogICAgZm9udC1zaXplOiAwOwogICAgbGluZS1oZWlnaHQ6IDA7CgogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgdG9wOiA1MCU7CgogICAgZGlzcGxheTogYmxvY2s7CgogICAgd2lkdGg6IDIwcHg7CiAgICBoZWlnaHQ6IDIwcHg7CiAgICBwYWRkaW5nOiAwOwogICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTsKICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTsKICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpOwoKICAgIGN1cnNvcjogcG9pbnRlcjsKCiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7CiAgICBib3JkZXI6IG5vbmU7CiAgICBvdXRsaW5lOiBub25lOwogICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7Cn0KLnNsaWNrLXByZXY6aG92ZXIsCi5zbGljay1wcmV2OmZvY3VzLAouc2xpY2stbmV4dDpob3ZlciwKLnNsaWNrLW5leHQ6Zm9jdXMKewogICAgY29sb3I6IHRyYW5zcGFyZW50OwogICAgb3V0bGluZTogbm9uZTsKICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50Owp9Ci5zbGljay1wcmV2OmhvdmVyOmJlZm9yZSwKLnNsaWNrLXByZXY6Zm9jdXM6YmVmb3JlLAouc2xpY2stbmV4dDpob3ZlcjpiZWZvcmUsCi5zbGljay1uZXh0OmZvY3VzOmJlZm9yZQp7CiAgICBvcGFjaXR5OiAxOwp9Ci5zbGljay1wcmV2LnNsaWNrLWRpc2FibGVkOmJlZm9yZSwKLnNsaWNrLW5leHQuc2xpY2stZGlzYWJsZWQ6YmVmb3JlCnsKICAgIG9wYWNpdHk6IC4yNTsKfQoKLnNsaWNrLXByZXY6YmVmb3JlLAouc2xpY2stbmV4dDpiZWZvcmUKewogICAgZm9udC1mYW1pbHk6ICdzbGljayc7CiAgICBmb250LXNpemU6IDIwcHg7CiAgICBsaW5lLWhlaWdodDogMTsKCiAgICBvcGFjaXR5OiAuNzU7CiAgICBjb2xvcjogd2hpdGU7CgogICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7CiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOwp9Cgouc2xpY2stcHJldgp7CiAgICBsZWZ0OiAtMjVweDsKfQpbZGlyPSdydGwnXSAuc2xpY2stcHJldgp7CiAgICByaWdodDogLTI1cHg7CiAgICBsZWZ0OiBhdXRvOwp9Ci5zbGljay1wcmV2OmJlZm9yZQp7CiAgICBjb250ZW50OiAn4oaQJzsKfQpbZGlyPSdydGwnXSAuc2xpY2stcHJldjpiZWZvcmUKewogICAgY29udGVudDogJ+KGkic7Cn0KCi5zbGljay1uZXh0CnsKICAgIHJpZ2h0OiAtMjVweDsKfQpbZGlyPSdydGwnXSAuc2xpY2stbmV4dAp7CiAgICByaWdodDogYXV0bzsKICAgIGxlZnQ6IC0yNXB4Owp9Ci5zbGljay1uZXh0OmJlZm9yZQp7CiAgICBjb250ZW50OiAn4oaSJzsKfQpbZGlyPSdydGwnXSAuc2xpY2stbmV4dDpiZWZvcmUKewogICAgY29udGVudDogJ+KGkCc7Cn0KCi8qIERvdHMgKi8KLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIKewogICAgbWFyZ2luLWJvdHRvbTogMzBweDsKfQoKLnNsaWNrLWRvdHMKewogICAgcG9zaXRpb246IGFic29sdXRlOwogICAgYm90dG9tOiAtMjVweDsKCiAgICBkaXNwbGF5OiBibG9jazsKCiAgICB3aWR0aDogMTAwJTsKICAgIHBhZGRpbmc6IDA7CiAgICBtYXJnaW46IDA7CgogICAgbGlzdC1zdHlsZTogbm9uZTsKCiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7Cn0KLnNsaWNrLWRvdHMgbGkKewogICAgcG9zaXRpb246IHJlbGF0aXZlOwoKICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKCiAgICB3aWR0aDogMjBweDsKICAgIGhlaWdodDogMjBweDsKICAgIG1hcmdpbjogMCA1cHg7CiAgICBwYWRkaW5nOiAwOwoKICAgIGN1cnNvcjogcG9pbnRlcjsKfQouc2xpY2stZG90cyBsaSBidXR0b24KewogICAgZm9udC1zaXplOiAwOwogICAgbGluZS1oZWlnaHQ6IDA7CgogICAgZGlzcGxheTogYmxvY2s7CgogICAgd2lkdGg6IDIwcHg7CiAgICBoZWlnaHQ6IDIwcHg7CiAgICBwYWRkaW5nOiA1cHg7CgogICAgY3Vyc29yOiBwb2ludGVyOwoKICAgIGNvbG9yOiB0cmFuc3BhcmVudDsKICAgIGJvcmRlcjogMDsKICAgIG91dGxpbmU6IG5vbmU7CiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKfQouc2xpY2stZG90cyBsaSBidXR0b246aG92ZXIsCi5zbGljay1kb3RzIGxpIGJ1dHRvbjpmb2N1cwp7CiAgICBvdXRsaW5lOiBub25lOwp9Ci5zbGljay1kb3RzIGxpIGJ1dHRvbjpob3ZlcjpiZWZvcmUsCi5zbGljay1kb3RzIGxpIGJ1dHRvbjpmb2N1czpiZWZvcmUKewogICAgb3BhY2l0eTogMTsKfQouc2xpY2stZG90cyBsaSBidXR0b246YmVmb3JlCnsKICAgIGZvbnQtZmFtaWx5OiAnc2xpY2snOwogICAgZm9udC1zaXplOiA2cHg7CiAgICBsaW5lLWhlaWdodDogMjBweDsKCiAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICB0b3A6IDA7CiAgICBsZWZ0OiAwOwoKICAgIHdpZHRoOiAyMHB4OwogICAgaGVpZ2h0OiAyMHB4OwoKICAgIGNvbnRlbnQ6ICfigKInOwogICAgdGV4dC1hbGlnbjogY2VudGVyOwoKICAgIG9wYWNpdHk6IC4yNTsKICAgIGNvbG9yOiBibGFjazsKCiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsKICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7Cn0KLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUKewogICAgb3BhY2l0eTogLjc1OwogICAgY29sb3I6IGJsYWNrOwp9Cg=="}},"time_used":101,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":101,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/demo/moment.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/demo/index.html","date":"2026-07-27T04:24:16.850Z","timestamp":1785126256850,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /demo/moment.js HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/demo/index.html\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: W/\"65211e70-17d56\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":97622,"size_decoded":23085,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with CRLF line terminators","md5":"4b664d03b6c57a7b6773f5a93e15b66e","sha1":"db7615e7a91a6b154a1c6a4cbee1084819fc866e","sha256":"0970616062df1476eaa67ae724ec3a843f759a3e0dbe7e435227f646ee70b5db","sha512":"ba5958b72b4df4a64466b5cdd7ab6a3ca8179cef34a517107016830c35aca771562c0ebdf9fae81f769c2bb2ac0153a7da2beaaead2b8fdfd9e89880e4e165aa","ssdeep":"1536:S64o/hT+6JGXxc0z/2/LjhSbEydRQ6Uucjo:S64ad+YWb7d1rcjo","tlshash":"c0935096994724134ab26738cf9f5409ff298633120a8605bced92d42f75d2943affec","first_seen":"2026-07-27T03:36:45.092588Z","last_seen":"2026-07-27T04:25:12.777279Z","times_seen":2,"resource_available":true,"data":"Ly8hIG1vbWVudC5qcw0KLy8hIHZlcnNpb24gOiAyLjEwLjYNCi8vISBhdXRob3JzIDogVGltIFdvb2QsIElza3JlbiBDaGVybmV2LCBNb21lbnQuanMgY29udHJpYnV0b3JzDQovLyEgbGljZW5zZSA6IE1JVA0KLy8hIG1vbWVudGpzLmNvbQ0KDQooZnVuY3Rpb24oZ2xvYmFsLCBmYWN0b3J5KSB7DQogIHR5cGVvZiBleHBvcnRzID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlICE9PSAidW5kZWZpbmVkIg0KICAgID8gKG1vZHVsZS5leHBvcnRzID0gZmFjdG9yeSgpKQ0KICAgIDogdHlwZW9mIGRlZmluZSA9PT0gImZ1bmN0aW9uIiAmJiBkZWZpbmUuYW1kDQogICAgPyBkZWZpbmUoZmFjdG9yeSkNCiAgICA6IChnbG9iYWwubW9tZW50ID0gZmFjdG9yeSgpKTsNCn0pKHRoaXMsIGZ1bmN0aW9uKCkgew0KICAidXNlIHN0cmljdCI7DQoNCiAgdmFyIGhvb2tDYWxsYmFjazsNCg0KICBmdW5jdGlvbiB1dGlsc19ob29rc19faG9va3MoKSB7DQogICAgcmV0dXJuIGhvb2tDYWxsYmFjay5hcHBseShudWxsLCBhcmd1bWVudHMpOw0KICB9DQoNCiAgLy8gVGhpcyBpcyBkb25lIHRvIHJlZ2lzdGVyIHRoZSBtZXRob2QgY2FsbGVkIHdpdGggbW9tZW50KCkNCiAgLy8gd2l0aG91dCBjcmVhdGluZyBjaXJjdWxhciBkZXBlbmRlbmNpZXMuDQogIGZ1bmN0aW9uIHNldEhvb2tDYWxsYmFjayhjYWxsYmFjaykgew0KICAgIGhvb2tDYWxsYmFjayA9IGNhbGxiYWNrOw0KICB9DQoNCiAgZnVuY3Rpb24gaXNBcnJheShpbnB1dCkgew0KICAgIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoaW5wdXQpID09PSAiW29iamVjdCBBcnJheV0iOw0KICB9DQoNCiAgZnVuY3Rpb24gaXNEYXRlKGlucHV0KSB7DQogICAgcmV0dXJuICgNCiAgICAgIGlucHV0IGluc3RhbmNlb2YgRGF0ZSB8fA0KICAgICAgT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGlucHV0KSA9PT0gIltvYmplY3QgRGF0ZV0iDQogICAgKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIG1hcChhcnIsIGZuKSB7DQogICAgdmFyIHJlcyA9IFtdLA0KICAgICAgaTsNCiAgICBmb3IgKGkgPSAwOyBpIDwgYXJyLmxlbmd0aDsgKytpKSB7DQogICAgICByZXMucHVzaChmbihhcnJbaV0sIGkpKTsNCiAgICB9DQogICAgcmV0dXJuIHJlczsNCiAgfQ0KDQogIGZ1bmN0aW9uIGhhc093blByb3AoYSwgYikgew0KICAgIHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYSwgYik7DQogIH0NCg0KICBmdW5jdGlvbiBleHRlbmQoYSwgYikgew0KICAgIGZvciAodmFyIGkgaW4gYikgew0KICAgICAgaWYgKGhhc093blByb3AoYiwgaSkpIHsNCiAgICAgICAgYVtpXSA9IGJbaV07DQogICAgICB9DQogICAgfQ0KDQogICAgaWYgKGhhc093blByb3AoYiwgInRvU3RyaW5nIikpIHsNCiAgICAgIGEudG9TdHJpbmcgPSBiLnRvU3RyaW5nOw0KICAgIH0NCg0KICAgIGlmIChoYXNPd25Qcm9wKGIsICJ2YWx1ZU9mIikpIHsNCiAgICAgIGEudmFsdWVPZiA9IGIudmFsdWVPZjsNCiAgICB9DQoNCiAgICByZXR1cm4gYTsNCiAgfQ0KDQogIGZ1bmN0aW9uIGNyZWF0ZV91dGNfX2NyZWF0ZVVUQyhpbnB1dCwgZm9ybWF0LCBsb2NhbGUsIHN0cmljdCkgew0KICAgIHJldHVybiBjcmVhdGVMb2NhbE9yVVRDKGlucHV0LCBmb3JtYXQsIGxvY2FsZSwgc3RyaWN0LCB0cnVlKS51dGMoKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIGRlZmF1bHRQYXJzaW5nRmxhZ3MoKSB7DQogICAgLy8gV2UgbmVlZCB0byBkZWVwIGNsb25lIHRoaXMgb2JqZWN0Lg0KICAgIHJldHVybiB7DQogICAgICBlbXB0eTogZmFsc2UsDQogICAgICB1bnVzZWRUb2tlbnM6IFtdLA0KICAgICAgdW51c2VkSW5wdXQ6IFtdLA0KICAgICAgb3ZlcmZsb3c6IC0yLA0KICAgICAgY2hhcnNMZWZ0T3ZlcjogMCwNCiAgICAgIG51bGxJbnB1dDogZmFsc2UsDQogICAgICBpbnZhbGlkTW9udGg6IG51bGwsDQogICAgICBpbnZhbGlkRm9ybWF0OiBmYWxzZSwNCiAgICAgIHVzZXJJbnZhbGlkYXRlZDogZmFsc2UsDQogICAgICBpc286IGZhbHNlDQogICAgfTsNCiAgfQ0KDQogIGZ1bmN0aW9uIGdldFBhcnNpbmdGbGFncyhtKSB7DQogICAgaWYgKG0uX3BmID09IG51bGwpIHsNCiAgICAgIG0uX3BmID0gZGVmYXVsdFBhcnNpbmdGbGFncygpOw0KICAgIH0NCiAgICByZXR1cm4gbS5fcGY7DQogIH0NCg0KICBmdW5jdGlvbiB2YWxpZF9faXNWYWxpZChtKSB7DQogICAgaWYgKG0uX2lzVmFsaWQgPT0gbnVsbCkgew0KICAgICAgdmFyIGZsYWdzID0gZ2V0UGFyc2luZ0ZsYWdzKG0pOw0KICAgICAgbS5faXNWYWxpZCA9DQogICAgICAgICFpc05hTihtLl9kLmdldFRpbWUoKSkgJiYNCiAgICAgICAgZmxhZ3Mub3ZlcmZsb3cgPCAwICYmDQogICAgICAgICFmbGFncy5lbXB0eSAmJg0KICAgICAgICAhZmxhZ3MuaW52YWxpZE1vbnRoICYmDQogICAgICAgICFmbGFncy5pbnZhbGlkV2Vla2RheSAmJg0KICAgICAgICAhZmxhZ3MubnVsbElucHV0ICYmDQogICAgICAgICFmbGFncy5pbnZhbGlkRm9ybWF0ICYmDQogICAgICAgICFmbGFncy51c2VySW52YWxpZGF0ZWQ7DQoNCiAgICAgIGlmIChtLl9zdHJpY3QpIHsNCiAgICAgICAgbS5faXNWYWxpZCA9DQogICAgICAgICAgbS5faXNWYWxpZCAmJg0KICAgICAgICAgIGZsYWdzLmNoYXJzTGVmdE92ZXIgPT09IDAgJiYNCiAgICAgICAgICBmbGFncy51bnVzZWRUb2tlbnMubGVuZ3RoID09PSAwICYmDQogICAgICAgICAgZmxhZ3MuYmlnSG91ciA9PT0gdW5kZWZpbmVkOw0KICAgICAgfQ0KICAgIH0NCiAgICByZXR1cm4gbS5faXNWYWxpZDsNCiAgfQ0KDQogIGZ1bmN0aW9uIHZhbGlkX19jcmVhdGVJbnZhbGlkKGZsYWdzKSB7DQogICAgdmFyIG0gPSBjcmVhdGVfdXRjX19jcmVhdGVVVEMoTmFOKTsNCiAgICBpZiAoZmxhZ3MgIT0gbnVsbCkgew0KICAgICAgZXh0ZW5kKGdldFBhcnNpbmdGbGFncyhtKSwgZmxhZ3MpOw0KICAgIH0gZWxzZSB7DQogICAgICBnZXRQYXJzaW5nRmxhZ3MobSkudXNlckludmFsaWRhdGVkID0gdHJ1ZTsNCiAgICB9DQoNCiAgICByZXR1cm4gbTsNCiAgfQ0KDQogIHZhciBtb21lbnRQcm9wZXJ0aWVzID0gKHV0aWxzX2hvb2tzX19ob29rcy5tb21lbnRQcm9wZXJ0aWVzID0gW10pOw0KDQogIGZ1bmN0aW9uIGNvcHlDb25maWcodG8sIGZyb20pIHsNCiAgICB2YXIgaSwgcHJvcCwgdmFsOw0KDQogICAgaWYgKHR5cGVvZiBmcm9tLl9pc0FNb21lbnRPYmplY3QgIT09ICJ1bmRlZmluZWQiKSB7DQogICAgICB0by5faXNBTW9tZW50T2JqZWN0ID0gZnJvbS5faXNBTW9tZW50T2JqZWN0Ow0KICAgIH0NCiAgICBpZiAodHlwZW9mIGZyb20uX2kgIT09ICJ1bmRlZmluZWQiKSB7DQogICAgICB0by5faSA9IGZyb20uX2k7DQogICAgfQ0KICAgIGlmICh0eXBlb2YgZnJvbS5fZiAhPT0gInVuZGVmaW5lZCIpIHsNCiAgICAgIHRvLl9mID0gZnJvbS5fZjsNCiAgICB9DQogICAgaWYgKHR5cGVvZiBmcm9tLl9sICE9PSAidW5kZWZpbmVkIikgew0KICAgICAgdG8uX2wgPSBmcm9tLl9sOw0KICAgIH0NCiAgICBpZiAodHlwZW9mIGZyb20uX3N0cmljdCAhPT0gInVuZGVmaW5lZCIpIHsNCiAgICAgIHRvLl9zdHJpY3QgPSBmcm9tLl9zdHJpY3Q7DQogICAgfQ0KICAgIGlmICh0eXBlb2YgZnJvbS5fdHptICE9PSAidW5kZWZpbmVkIikgew0KICAgICAgdG8uX3R6bSA9IGZyb20uX3R6bTsNCiAgICB9DQogICAgaWYgKHR5cGVvZiBmcm9tLl9pc1VUQyAhPT0gInVuZGVmaW5lZCIpIHsNCiAgICAgIHRvLl9pc1VUQyA9IGZyb20uX2lzVVRDOw0KICAgIH0NCiAgICBpZiAodHlwZW9mIGZyb20uX29mZnNldCAhPT0gInVuZGVmaW5lZCIpIHsNCiAgICAgIHRvLl9vZmZzZXQgPSBmcm9tLl9vZmZzZXQ7DQogICAgfQ0KICAgIGlmICh0eXBlb2YgZnJvbS5fcGYgIT09ICJ1bmRlZmluZWQiKSB7DQogICAgICB0by5fcGYgPSBnZXRQYXJzaW5nRmxhZ3MoZnJvbSk7DQogICAgfQ0KICAgIGlmICh0eXBlb2YgZnJvbS5fbG9jYWxlICE9PSAidW5kZWZpbmVkIikgew0KICAgICAgdG8uX2xvY2FsZSA9IGZyb20uX2xvY2FsZTsNCiAgICB9DQoNCiAgICBpZiAobW9tZW50UHJvcGVydGllcy5sZW5ndGggPiAwKSB7DQogICAgICBmb3IgKGkgaW4gbW9tZW50UHJvcGVydGllcykgew0KICAgICAgICBwcm9wID0gbW9tZW50UHJvcGVydGllc1tpXTsNCiAgICAgICAgdmFsID0gZnJvbVtwcm9wXTsNCiAgICAgICAgaWYgKHR5cGVvZiB2YWwgIT09ICJ1bmRlZmluZWQiKSB7DQogICAgICAgICAgdG9bcHJvcF0gPSB2YWw7DQogICAgICAgIH0NCiAgICAgIH0NCiAgICB9DQoNCiAgICByZXR1cm4gdG87DQogIH0NCg0KICB2YXIgdXBkYXRlSW5Qcm9ncmVzcyA9IGZhbHNlOw0KDQogIC8vIE1vbWVudCBwcm90b3R5cGUgb2JqZWN0DQogIGZ1bmN0aW9uIE1vbWVudChjb25maWcpIHsNCiAgICBjb3B5Q29uZmlnKHRoaXMsIGNvbmZpZyk7DQogICAgdGhpcy5fZCA9IG5ldyBEYXRlKGNvbmZpZy5fZCAhPSBudWxsID8gY29uZmlnLl9kLmdldFRpbWUoKSA6IE5hTik7DQogICAgLy8gUHJldmVudCBpbmZpbml0ZSBsb29wIGluIGNhc2UgdXBkYXRlT2Zmc2V0IGNyZWF0ZXMgbmV3IG1vbWVudA0KICAgIC8vIG9iamVjdHMuDQogICAgaWYgKHVwZGF0ZUluUHJvZ3Jlc3MgPT09IGZhbHNlKSB7DQogICAgICB1cGRhdGVJblByb2dyZXNzID0gdHJ1ZTsNCiAgICAgIHV0aWxzX2hvb2tzX19ob29rcy51cGRhdGVPZmZzZXQodGhpcyk7DQogICAgICB1cGRhdGVJblByb2dyZXNzID0gZmFsc2U7DQogICAgfQ0KICB9DQoNCiAgZnVuY3Rpb24gaXNNb21lbnQob2JqKSB7DQogICAgcmV0dXJuICgNCiAgICAgIG9iaiBpbnN0YW5jZW9mIE1vbWVudCB8fCAob2JqICE9IG51bGwgJiYgb2JqLl9pc0FNb21lbnRPYmplY3QgIT0gbnVsbCkNCiAgICApOw0KICB9DQoNCiAgZnVuY3Rpb24gYWJzRmxvb3IobnVtYmVyKSB7DQogICAgaWYgKG51bWJlciA8IDApIHsNCiAgICAgIHJldHVybiBNYXRoLmNlaWwobnVtYmVyKTsNCiAgICB9IGVsc2Ugew0KICAgICAgcmV0dXJuIE1hdGguZmxvb3IobnVtYmVyKTsNCiAgICB9DQogIH0NCg0KICBmdW5jdGlvbiB0b0ludChhcmd1bWVudEZvckNvZXJjaW9uKSB7DQogICAgdmFyIGNvZXJjZWROdW1iZXIgPSArYXJndW1lbnRGb3JDb2VyY2lvbiwNCiAgICAgIHZhbHVlID0gMDsNCg0KICAgIGlmIChjb2VyY2VkTnVtYmVyICE9PSAwICYmIGlzRmluaXRlKGNvZXJjZWROdW1iZXIpKSB7DQogICAgICB2YWx1ZSA9IGFic0Zsb29yKGNvZXJjZWROdW1iZXIpOw0KICAgIH0NCg0KICAgIHJldHVybiB2YWx1ZTsNCiAgfQ0KDQogIGZ1bmN0aW9uIGNvbXBhcmVBcnJheXMoYXJyYXkxLCBhcnJheTIsIGRvbnRDb252ZXJ0KSB7DQogICAgdmFyIGxlbiA9IE1hdGgubWluKGFycmF5MS5sZW5ndGgsIGFycmF5Mi5sZW5ndGgpLA0KICAgICAgbGVuZ3RoRGlmZiA9IE1hdGguYWJzKGFycmF5MS5sZW5ndGggLSBhcnJheTIubGVuZ3RoKSwNCiAgICAgIGRpZmZzID0gMCwNCiAgICAgIGk7DQogICAgZm9yIChpID0gMDsgaSA8IGxlbjsgaSsrKSB7DQogICAgICBpZiAoDQogICAgICAgIChkb250Q29udmVydCAmJiBhcnJheTFbaV0gIT09IGFycmF5MltpXSkgfHwNCiAgICAgICAgKCFkb250Q29udmVydCAmJiB0b0ludChhcnJheTFbaV0pICE9PSB0b0ludChhcnJheTJbaV0pKQ0KICAgICAgKSB7DQogICAgICAgIGRpZmZzKys7DQogICAgICB9DQogICAgfQ0KICAgIHJldHVybiBkaWZmcyArIGxlbmd0aERpZmY7DQogIH0NCg0KICBmdW5jdGlvbiBMb2NhbGUoKSB7fQ0KDQogIHZhciBsb2NhbGVzID0ge307DQogIHZhciBnbG9iYWxMb2NhbGU7DQoNCiAgZnVuY3Rpb24gbm9ybWFsaXplTG9jYWxlKGtleSkgew0KICAgIHJldHVybiBrZXkgPyBrZXkudG9Mb3dlckNhc2UoKS5yZXBsYWNlKCJfIiwgIi0iKSA6IGtleTsNCiAgfQ0KDQogIC8vIHBpY2sgdGhlIGxvY2FsZSBmcm9tIHRoZSBhcnJheQ0KICAvLyB0cnkgWydlbi1hdScsICdlbi1nYiddIGFzICdlbi1hdScsICdlbi1nYicsICdlbicsIGFzIGluIG1vdmUgdGhyb3VnaCB0aGUgbGlzdCB0cnlpbmcgZWFjaA0KICAvLyBzdWJzdHJpbmcgZnJvbSBtb3N0IHNwZWNpZmljIHRvIGxlYXN0LCBidXQgbW92ZSB0byB0aGUgbmV4dCBhcnJheSBpdGVtIGlmIGl0J3MgYSBtb3JlIHNwZWNpZmljIHZhcmlhbnQgdGhhbiB0aGUgY3VycmVudCByb290DQogIGZ1bmN0aW9uIGNob29zZUxvY2FsZShuYW1lcykgew0KICAgIHZhciBpID0gMCwNCiAgICAgIGosDQogICAgICBuZXh0LA0KICAgICAgbG9jYWxlLA0KICAgICAgc3BsaXQ7DQoNCiAgICB3aGlsZSAoaSA8IG5hbWVzLmxlbmd0aCkgew0KICAgICAgc3BsaXQgPSBub3JtYWxpemVMb2NhbGUobmFtZXNbaV0pLnNwbGl0KCItIik7DQogICAgICBqID0gc3BsaXQubGVuZ3RoOw0KICAgICAgbmV4dCA9IG5vcm1hbGl6ZUxvY2FsZShuYW1lc1tpICsgMV0pOw0KICAgICAgbmV4dCA9IG5leHQgPyBuZXh0LnNwbGl0KCItIikgOiBudWxsOw0KICAgICAgd2hpbGUgKGogPiAwKSB7DQogICAgICAgIGxvY2FsZSA9IGxvYWRMb2NhbGUoc3BsaXQuc2xpY2UoMCwgaikuam9pbigiLSIpKTsNCiAgICAgICAgaWYgKGxvY2FsZSkgew0KICAgICAgICAgIHJldHVybiBsb2NhbGU7DQogICAgICAgIH0NCiAgICAgICAgaWYgKA0KICAgICAgICAgIG5leHQgJiYNCiAgICAgICAgICBuZXh0Lmxlbmd0aCA+PSBqICYmDQogICAgICAgICAgY29tcGFyZUFycmF5cyhzcGxpdCwgbmV4dCwgdHJ1ZSkgPj0gaiAtIDENCiAgICAgICAgKSB7DQogICAgICAgICAgLy90aGUgbmV4dCBhcnJheSBpdGVtIGlzIGJldHRlciB0aGFuIGEgc2hhbGxvd2VyIHN1YnN0cmluZyBvZiB0aGlzIG9uZQ0KICAgICAgICAgIGJyZWFrOw0KICAgICAgICB9DQogICAgICAgIGotLTsNCiAgICAgIH0NCiAgICAgIGkrKzsNCiAgICB9DQogICAgcmV0dXJuIG51bGw7DQogIH0NCg0KICBmdW5jdGlvbiBsb2FkTG9jYWxlKG5hbWUpIHsNCiAgICB2YXIgb2xkTG9jYWxlID0gbnVsbDsNCiAgICAvLyBUT0RPOiBGaW5kIGEgYmV0dGVyIHdheSB0byByZWdpc3RlciBhbmQgbG9hZCBhbGwgdGhlIGxvY2FsZXMgaW4gTm9kZQ0KICAgIGlmICgNCiAgICAgICFsb2NhbGVzW25hbWVdICYmDQogICAgICB0eXBlb2YgbW9kdWxlICE9PSAidW5kZWZpbmVkIiAmJg0KICAgICAgbW9kdWxlICYmDQogICAgICBtb2R1bGUuZXhwb3J0cw0KICAgICkgew0KICAgICAgdHJ5IHsNCiAgICAgICAgb2xkTG9jYWxlID0gZ2xvYmFsTG9jYWxlLl9hYmJyOw0KICAgICAgICByZXF1aXJlKCIuL2xvY2FsZS8iICsgbmFtZSk7DQogICAgICAgIC8vIGJlY2F1c2UgZGVmaW5lTG9jYWxlIGN1cnJlbnRseSBhbHNvIHNldHMgdGhlIGdsb2JhbCBsb2NhbGUsIHdlDQogICAgICAgIC8vIHdhbnQgdG8gdW5kbyB0aGF0IGZvciBsYXp5IGxvYWRlZCBsb2NhbGVzDQogICAgICAgIGxvY2FsZV9sb2NhbGVzX19nZXRTZXRHbG9iYWxMb2NhbGUob2xkTG9jYWxlKTsNCiAgICAgIH0gY2F0Y2ggKGUpIHt9DQogICAgfQ0KICAgIHJldHVybiBsb2NhbGVzW25hbWVdOw0KICB9DQoNCiAgLy8gVGhpcyBmdW5jdGlvbiB3aWxsIGxvYWQgbG9jYWxlIGFuZCB0aGVuIHNldCB0aGUgZ2xvYmFsIGxvY2FsZS4gIElmDQogIC8vIG5vIGFyZ3VtZW50cyBhcmUgcGFzc2VkIGluLCBpdCB3aWxsIHNpbXBseSByZXR1cm4gdGhlIGN1cnJlbnQgZ2xvYmFsDQogIC8vIGxvY2FsZSBrZXkuDQogIGZ1bmN0aW9uIGxvY2FsZV9sb2NhbGVzX19nZXRTZXRHbG9iYWxMb2NhbGUoa2V5LCB2YWx1ZXMpIHsNCiAgICB2YXIgZGF0YTsNCiAgICBpZiAoa2V5KSB7DQogICAgICBpZiAodHlwZW9mIHZhbHVlcyA9PT0gInVuZGVmaW5lZCIpIHsNCiAgICAgICAgZGF0YSA9IGxvY2FsZV9sb2NhbGVzX19nZXRMb2NhbGUoa2V5KTsNCiAgICAgIH0gZWxzZSB7DQogICAgICAgIGRhdGEgPSBkZWZpbmVMb2NhbGUoa2V5LCB2YWx1ZXMpOw0KICAgICAgfQ0KDQogICAgICBpZiAoZGF0YSkgew0KICAgICAgICAvLyBtb21lbnQuZHVyYXRpb24uX2xvY2FsZSA9IG1vbWVudC5fbG9jYWxlID0gZGF0YTsNCiAgICAgICAgZ2xvYmFsTG9jYWxlID0gZGF0YTsNCiAgICAgIH0NCiAgICB9DQoNCiAgICByZXR1cm4gZ2xvYmFsTG9jYWxlLl9hYmJyOw0KICB9DQoNCiAgZnVuY3Rpb24gZGVmaW5lTG9jYWxlKG5hbWUsIHZhbHVlcykgew0KICAgIGlmICh2YWx1ZXMgIT09IG51bGwpIHsNCiAgICAgIHZhbHVlcy5hYmJyID0gbmFtZTsNCiAgICAgIGxvY2FsZXNbbmFtZV0gPSBsb2NhbGVzW25hbWVdIHx8IG5ldyBMb2NhbGUoKTsNCiAgICAgIGxvY2FsZXNbbmFtZV0uc2V0KHZhbHVlcyk7DQoNCiAgICAgIC8vIGJhY2t3YXJkcyBjb21wYXQgZm9yIG5vdzogYWxzbyBzZXQgdGhlIGxvY2FsZQ0KICAgICAgbG9jYWxlX2xvY2FsZXNfX2dldFNldEdsb2JhbExvY2FsZShuYW1lKTsNCg0KICAgICAgcmV0dXJuIGxvY2FsZXNbbmFtZV07DQogICAgfSBlbHNlIHsNCiAgICAgIC8vIHVzZWZ1bCBmb3IgdGVzdGluZw0KICAgICAgZGVsZXRlIGxvY2FsZXNbbmFtZV07DQogICAgICByZXR1cm4gbnVsbDsNCiAgICB9DQogIH0NCg0KICAvLyByZXR1cm5zIGxvY2FsZSBkYXRhDQogIGZ1bmN0aW9uIGxvY2FsZV9sb2NhbGVzX19nZXRMb2NhbGUoa2V5KSB7DQogICAgdmFyIGxvY2FsZTsNCg0KICAgIGlmIChrZXkgJiYga2V5Ll9sb2NhbGUgJiYga2V5Ll9sb2NhbGUuX2FiYnIpIHsNCiAgICAgIGtleSA9IGtleS5fbG9jYWxlLl9hYmJyOw0KICAgIH0NCg0KICAgIGlmICgha2V5KSB7DQogICAgICByZXR1cm4gZ2xvYmFsTG9jYWxlOw0KICAgIH0NCg0KICAgIGlmICghaXNBcnJheShrZXkpKSB7DQogICAgICAvL3Nob3J0LWNpcmN1aXQgZXZlcnl0aGluZyBlbHNlDQogICAgICBsb2NhbGUgPSBsb2FkTG9jYWxlKGtleSk7DQogICAgICBpZiAobG9jYWxlKSB7DQogICAgICAgIHJldHVybiBsb2NhbGU7DQogICAgICB9DQogICAgICBrZXkgPSBba2V5XTsNCiAgICB9DQoNCiAgICByZXR1cm4gY2hvb3NlTG9jYWxlKGtleSk7DQogIH0NCg0KICB2YXIgYWxpYXNlcyA9IHt9Ow0KDQogIGZ1bmN0aW9uIGFkZFVuaXRBbGlhcyh1bml0LCBzaG9ydGhhbmQpIHsNCiAgICB2YXIgbG93ZXJDYXNlID0gdW5pdC50b0xvd2VyQ2FzZSgpOw0KICAgIGFsaWFzZXNbbG93ZXJDYXNlXSA9IGFsaWFzZXNbbG93ZXJDYXNlICsgInMiXSA9IGFsaWFzZXNbc2hvcnRoYW5kXSA9IHVuaXQ7DQogIH0NCg0KICBmdW5jdGlvbiBub3JtYWxpemVVbml0cyh1bml0cykgew0KICAgIHJldHVybiB0eXBlb2YgdW5pdHMgPT09ICJzdHJpbmciDQogICAgICA/IGFsaWFzZXNbdW5pdHNdIHx8IGFsaWFzZXNbdW5pdHMudG9Mb3dlckNhc2UoKV0NCiAgICAgIDogdW5kZWZpbmVkOw0KICB9DQoNCiAgZnVuY3Rpb24gbm9ybWFsaXplT2JqZWN0VW5pdHMoaW5wdXRPYmplY3QpIHsNCiAgICB2YXIgbm9ybWFsaXplZElucHV0ID0ge30sDQogICAgICBub3JtYWxpemVkUHJvcCwNCiAgICAgIHByb3A7DQoNCiAgICBmb3IgKHByb3AgaW4gaW5wdXRPYmplY3QpIHsNCiAgICAgIGlmIChoYXNPd25Qcm9wKGlucHV0T2JqZWN0LCBwcm9wKSkgew0KICAgICAgICBub3JtYWxpemVkUHJvcCA9IG5vcm1hbGl6ZVVuaXRzKHByb3ApOw0KICAgICAgICBpZiAobm9ybWFsaXplZFByb3ApIHsNCiAgICAgICAgICBub3JtYWxpemVkSW5wdXRbbm9ybWFsaXplZFByb3BdID0gaW5wdXRPYmplY3RbcHJvcF07DQogICAgICAgIH0NCiAgICAgIH0NCiAgICB9DQoNCiAgICByZXR1cm4gbm9ybWFsaXplZElucHV0Ow0KICB9DQoNCiAgZnVuY3Rpb24gbWFrZUdldFNldCh1bml0LCBrZWVwVGltZSkgew0KICAgIHJldHVybiBmdW5jdGlvbih2YWx1ZSkgew0KICAgICAgaWYgKHZhbHVlICE9IG51bGwpIHsNCiAgICAgICAgZ2V0X3NldF9fc2V0KHRoaXMsIHVuaXQsIHZhbHVlKTsNCiAgICAgICAgdXRpbHNfaG9va3NfX2hvb2tzLnVwZGF0ZU9mZnNldCh0aGlzLCBrZWVwVGltZSk7DQogICAgICAgIHJldHVybiB0aGlzOw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgcmV0dXJuIGdldF9zZXRfX2dldCh0aGlzLCB1bml0KTsNCiAgICAgIH0NCiAgICB9Ow0KICB9DQoNCiAgZnVuY3Rpb24gZ2V0X3NldF9fZ2V0KG1vbSwgdW5pdCkgew0KICAgIHJldHVybiBtb20uX2RbImdldCIgKyAobW9tLl9pc1VUQyA/ICJVVEMiIDogIiIpICsgdW5pdF0oKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIGdldF9zZXRfX3NldChtb20sIHVuaXQsIHZhbHVlKSB7DQogICAgcmV0dXJuIG1vbS5fZFsic2V0IiArIChtb20uX2lzVVRDID8gIlVUQyIgOiAiIikgKyB1bml0XSh2YWx1ZSk7DQogIH0NCg0KICAvLyBNT01FTlRTDQoNCiAgZnVuY3Rpb24gZ2V0U2V0KHVuaXRzLCB2YWx1ZSkgew0KICAgIHZhciB1bml0Ow0KICAgIGlmICh0eXBlb2YgdW5pdHMgPT09ICJvYmplY3QiKSB7DQogICAgICBmb3IgKHVuaXQgaW4gdW5pdHMpIHsNCiAgICAgICAgdGhpcy5zZXQodW5pdCwgdW5pdHNbdW5pdF0pOw0KICAgICAgfQ0KICAgIH0gZWxzZSB7DQogICAgICB1bml0cyA9IG5vcm1hbGl6ZVVuaXRzKHVuaXRzKTsNCiAgICAgIGlmICh0eXBlb2YgdGhpc1t1bml0c10gPT09ICJmdW5jdGlvbiIpIHsNCiAgICAgICAgcmV0dXJuIHRoaXNbdW5pdHNdKHZhbHVlKTsNCiAgICAgIH0NCiAgICB9DQogICAgcmV0dXJuIHRoaXM7DQogIH0NCg0KICBmdW5jdGlvbiB6ZXJvRmlsbChudW1iZXIsIHRhcmdldExlbmd0aCwgZm9yY2VTaWduKSB7DQogICAgdmFyIGFic051bWJlciA9ICIiICsgTWF0aC5hYnMobnVtYmVyKSwNCiAgICAgIHplcm9zVG9GaWxsID0gdGFyZ2V0TGVuZ3RoIC0gYWJzTnVtYmVyLmxlbmd0aCwNCiAgICAgIHNpZ24gPSBudW1iZXIgPj0gMDsNCiAgICByZXR1cm4gKA0KICAgICAgKHNpZ24gPyAoZm9yY2VTaWduID8gIisiIDogIiIpIDogIi0iKSArDQogICAgICBNYXRoLnBvdygxMCwgTWF0aC5tYXgoMCwgemVyb3NUb0ZpbGwpKQ0KICAgICAgICAudG9TdHJpbmcoKQ0KICAgICAgICAuc3Vic3RyKDEpICsNCiAgICAgIGFic051bWJlcg0KICAgICk7DQogIH0NCg0KICB2YXIgZm9ybWF0dGluZ1Rva2VucyA9IC8oXFtbXlxbXSpcXSl8KFxcKT8oTW98TU0/TT9NP3xEb3xERERvfEREP0Q/RD98ZGRkP2Q/fGRvP3x3W298d10/fFdbb3xXXT98UXxZWVlZWVl8WVlZWVl8WVlZWXxZWXxnZyhnZ2c/KT98R0coR0dHPyk/fGV8RXxhfEF8aGg/fEhIP3xtbT98c3M/fFN7MSw5fXx4fFh8eno/fFpaP3wuKS9nOw0KDQogIHZhciBsb2NhbEZvcm1hdHRpbmdUb2tlbnMgPSAvKFxbW15cW10qXF0pfChcXCk/KExUU3xMVHxMTD9MP0w/fGx7MSw0fSkvZzsNCg0KICB2YXIgZm9ybWF0RnVuY3Rpb25zID0ge307DQoNCiAgdmFyIGZvcm1hdFRva2VuRnVuY3Rpb25zID0ge307DQoNCiAgLy8gdG9rZW46ICAgICdNJw0KICAvLyBwYWRkZWQ6ICAgWydNTScsIDJdDQogIC8vIG9yZGluYWw6ICAnTW8nDQogIC8vIGNhbGxiYWNrOiBmdW5jdGlvbiAoKSB7IHRoaXMubW9udGgoKSArIDEgfQ0KICBmdW5jdGlvbiBhZGRGb3JtYXRUb2tlbih0b2tlbiwgcGFkZGVkLCBvcmRpbmFsLCBjYWxsYmFjaykgew0KICAgIHZhciBmdW5jID0gY2FsbGJhY2s7DQogICAgaWYgKHR5cGVvZiBjYWxsYmFjayA9PT0gInN0cmluZyIpIHsNCiAgICAgIGZ1bmMgPSBmdW5jdGlvbigpIHsNCiAgICAgICAgcmV0dXJuIHRoaXNbY2FsbGJhY2tdKCk7DQogICAgICB9Ow0KICAgIH0NCiAgICBpZiAodG9rZW4pIHsNCiAgICAgIGZvcm1hdFRva2VuRnVuY3Rpb25zW3Rva2VuXSA9IGZ1bmM7DQogICAgfQ0KICAgIGlmIChwYWRkZWQpIHsNCiAgICAgIGZvcm1hdFRva2VuRnVuY3Rpb25zW3BhZGRlZFswXV0gPSBmdW5jdGlvbigpIHsNCiAgICAgICAgcmV0dXJuIHplcm9GaWxsKGZ1bmMuYXBwbHkodGhpcywgYXJndW1lbnRzKSwgcGFkZGVkWzFdLCBwYWRkZWRbMl0pOw0KICAgICAgfTsNCiAgICB9DQogICAgaWYgKG9yZGluYWwpIHsNCiAgICAgIGZvcm1hdFRva2VuRnVuY3Rpb25zW29yZGluYWxdID0gZnVuY3Rpb24oKSB7DQogICAgICAgIHJldHVybiB0aGlzLmxvY2FsZURhdGEoKS5vcmRpbmFsKGZ1bmMuYXBwbHkodGhpcywgYXJndW1lbnRzKSwgdG9rZW4pOw0KICAgICAgfTsNCiAgICB9DQogIH0NCg0KICBmdW5jdGlvbiByZW1vdmVGb3JtYXR0aW5nVG9rZW5zKGlucHV0KSB7DQogICAgaWYgKGlucHV0Lm1hdGNoKC9cW1tcc1xTXS8pKSB7DQogICAgICByZXR1cm4gaW5wdXQucmVwbGFjZSgvXlxbfFxdJC9nLCAiIik7DQogICAgfQ0KICAgIHJldHVybiBpbnB1dC5yZXBsYWNlKC9cXC9nLCAiIik7DQogIH0NCg0KICBmdW5jdGlvbiBtYWtlRm9ybWF0RnVuY3Rpb24oZm9ybWF0KSB7DQogICAgdmFyIGFycmF5ID0gZm9ybWF0Lm1hdGNoKGZvcm1hdHRpbmdUb2tlbnMpLA0KICAgICAgaSwNCiAgICAgIGxlbmd0aDsNCg0KICAgIGZvciAoaSA9IDAsIGxlbmd0aCA9IGFycmF5Lmxlbmd0aDsgaSA8IGxlbmd0aDsgaSsrKSB7DQogICAgICBpZiAoZm9ybWF0VG9rZW5GdW5jdGlvbnNbYXJyYXlbaV1dKSB7DQogICAgICAgIGFycmF5W2ldID0gZm9ybWF0VG9rZW5GdW5jdGlvbnNbYXJyYXlbaV1dOw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgYXJyYXlbaV0gPSByZW1vdmVGb3JtYXR0aW5nVG9rZW5zKGFycmF5W2ldKTsNCiAgICAgIH0NCiAgICB9DQoNCiAgICByZXR1cm4gZnVuY3Rpb24obW9tKSB7DQogICAgICB2YXIgb3V0cHV0ID0gIiI7DQogICAgICBmb3IgKGkgPSAwOyBpIDwgbGVuZ3RoOyBpKyspIHsNCiAgICAgICAgb3V0cHV0ICs9DQogICAgICAgICAgYXJyYXlbaV0gaW5zdGFuY2VvZiBGdW5jdGlvbiA/IGFycmF5W2ldLmNhbGwobW9tLCBmb3JtYXQpIDogYXJyYXlbaV07DQogICAgICB9DQogICAgICByZXR1cm4gb3V0cHV0Ow0KICAgIH07DQogIH0NCg0KICAvLyBmb3JtYXQgZGF0ZSB1c2luZyBuYXRpdmUgZGF0ZSBvYmplY3QNCiAgZnVuY3Rpb24gZm9ybWF0TW9tZW50KG0sIGZvcm1hdCkgew0KICAgIGlmICghbS5pc1ZhbGlkKCkpIHsNCiAgICAgIHJldHVybiBtLmxvY2FsZURhdGEoKS5pbnZhbGlkRGF0ZSgpOw0KICAgIH0NCg0KICAgIGZvcm1hdCA9IGV4cGFuZEZvcm1hdChmb3JtYXQsIG0ubG9jYWxlRGF0YSgpKTsNCiAgICBmb3JtYXRGdW5jdGlvbnNbZm9ybWF0XSA9DQogICAgICBmb3JtYXRGdW5jdGlvbnNbZm9ybWF0XSB8fCBtYWtlRm9ybWF0RnVuY3Rpb24oZm9ybWF0KTsNCg0KICAgIHJldHVybiBmb3JtYXRGdW5jdGlvbnNbZm9ybWF0XShtKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIGV4cGFuZEZvcm1hdChmb3JtYXQsIGxvY2FsZSkgew0KICAgIHZhciBpID0gNTsNCg0KICAgIGZ1bmN0aW9uIHJlcGxhY2VMb25nRGF0ZUZvcm1hdFRva2VucyhpbnB1dCkgew0KICAgICAgcmV0dXJuIGxvY2FsZS5sb25nRGF0ZUZvcm1hdChpbnB1dCkgfHwgaW5wdXQ7DQogICAgfQ0KDQogICAgbG9jYWxGb3JtYXR0aW5nVG9rZW5zLmxhc3RJbmRleCA9IDA7DQogICAgd2hpbGUgKGkgPj0gMCAmJiBsb2NhbEZvcm1hdHRpbmdUb2tlbnMudGVzdChmb3JtYXQpKSB7DQogICAgICBmb3JtYXQgPSBmb3JtYXQucmVwbGFjZSgNCiAgICAgICAgbG9jYWxGb3JtYXR0aW5nVG9rZW5zLA0KICAgICAgICByZXBsYWNlTG9uZ0RhdGVGb3JtYXRUb2tlbnMNCiAgICAgICk7DQogICAgICBsb2NhbEZvcm1hdHRpbmdUb2tlbnMubGFzdEluZGV4ID0gMDsNCiAgICAgIGkgLT0gMTsNCiAgICB9DQoNCiAgICByZXR1cm4gZm9ybWF0Ow0KICB9DQoNCiAgdmFyIG1hdGNoMSA9IC9cZC87IC8vICAgICAgIDAgLSA5DQogIHZhciBtYXRjaDIgPSAvXGRcZC87IC8vICAgICAgMDAgLSA5OQ0KICB2YXIgbWF0Y2gzID0gL1xkezN9LzsgLy8gICAgIDAwMCAtIDk5OQ0KICB2YXIgbWF0Y2g0ID0gL1xkezR9LzsgLy8gICAgMDAwMCAtIDk5OTkNCiAgdmFyIG1hdGNoNiA9IC9bKy1dP1xkezZ9LzsgLy8gLTk5OTk5OSAtIDk5OTk5OQ0KICB2YXIgbWF0Y2gxdG8yID0gL1xkXGQ/LzsgLy8gICAgICAgMCAtIDk5DQogIHZhciBtYXRjaDF0bzMgPSAvXGR7MSwzfS87IC8vICAgICAgIDAgLSA5OTkNCiAgdmFyIG1hdGNoMXRvNCA9IC9cZHsxLDR9LzsgLy8gICAgICAgMCAtIDk5OTkNCiAgdmFyIG1hdGNoMXRvNiA9IC9bKy1dP1xkezEsNn0vOyAvLyAtOTk5OTk5IC0gOTk5OTk5DQoNCiAgdmFyIG1hdGNoVW5zaWduZWQgPSAvXGQrLzsgLy8gICAgICAgMCAtIGluZg0KICB2YXIgbWF0Y2hTaWduZWQgPSAvWystXT9cZCsvOyAvLyAgICAtaW5mIC0gaW5mDQoNCiAgdmFyIG1hdGNoT2Zmc2V0ID0gL1p8WystXVxkXGQ6P1xkXGQvZ2k7IC8vICswMDowMCAtMDA6MDAgKzAwMDAgLTAwMDAgb3IgWg0KDQogIHZhciBtYXRjaFRpbWVzdGFtcCA9IC9bKy1dP1xkKyhcLlxkezEsM30pPy87IC8vIDEyMzQ1Njc4OSAxMjM0NTY3ODkuMTIzDQoNCiAgLy8gYW55IHdvcmQgKG9yIHR3bykgY2hhcmFjdGVycyBvciBudW1iZXJzIGluY2x1ZGluZyB0d28vdGhyZWUgd29yZCBtb250aCBpbiBhcmFiaWMuDQogIHZhciBtYXRjaFdvcmQgPSAvWzAtOV0qWydhLXpcdTAwQTAtXHUwNUZGXHUwNzAwLVx1RDdGRlx1RjkwMC1cdUZEQ0ZcdUZERjAtXHVGRkVGXSt8W1x1MDYwMC1cdTA2RkZcL10rKFxzKj9bXHUwNjAwLVx1MDZGRl0rKXsxLDJ9L2k7DQoNCiAgdmFyIHJlZ2V4ZXMgPSB7fTsNCg0KICBmdW5jdGlvbiBpc0Z1bmN0aW9uKHN0aCkgew0KICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9tb21lbnQvbW9tZW50L2lzc3Vlcy8yMzI1DQogICAgcmV0dXJuICgNCiAgICAgIHR5cGVvZiBzdGggPT09ICJmdW5jdGlvbiIgJiYNCiAgICAgIE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChzdGgpID09PSAiW29iamVjdCBGdW5jdGlvbl0iDQogICAgKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIGFkZFJlZ2V4VG9rZW4odG9rZW4sIHJlZ2V4LCBzdHJpY3RSZWdleCkgew0KICAgIHJlZ2V4ZXNbdG9rZW5dID0gaXNGdW5jdGlvbihyZWdleCkNCiAgICAgID8gcmVnZXgNCiAgICAgIDogZnVuY3Rpb24oaXNTdHJpY3QpIHsNCiAgICAgICAgICByZXR1cm4gaXNTdHJpY3QgJiYgc3RyaWN0UmVnZXggPyBzdHJpY3RSZWdleCA6IHJlZ2V4Ow0KICAgICAgICB9Ow0KICB9DQoNCiAgZnVuY3Rpb24gZ2V0UGFyc2VSZWdleEZvclRva2VuKHRva2VuLCBjb25maWcpIHsNCiAgICBpZiAoIWhhc093blByb3AocmVnZXhlcywgdG9rZW4pKSB7DQogICAgICByZXR1cm4gbmV3IFJlZ0V4cCh1bmVzY2FwZUZvcm1hdCh0b2tlbikpOw0KICAgIH0NCg0KICAgIHJldHVybiByZWdleGVzW3Rva2VuXShjb25maWcuX3N0cmljdCwgY29uZmlnLl9sb2NhbGUpOw0KICB9DQoNCiAgLy8gQ29kZSBmcm9tIGh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMzU2MTQ5My9pcy10aGVyZS1hLXJlZ2V4cC1lc2NhcGUtZnVuY3Rpb24taW4tamF2YXNjcmlwdA0KICBmdW5jdGlvbiB1bmVzY2FwZUZvcm1hdChzKSB7DQogICAgcmV0dXJuIHMNCiAgICAgIC5yZXBsYWNlKCJcXCIsICIiKQ0KICAgICAgLnJlcGxhY2UoL1xcKFxbKXxcXChcXSl8XFsoW15cXVxbXSopXF18XFwoLikvZywgZnVuY3Rpb24oDQogICAgICAgIG1hdGNoZWQsDQogICAgICAgIHAxLA0KICAgICAgICBwMiwNCiAgICAgICAgcDMsDQogICAgICAgIHA0DQogICAgICApIHsNCiAgICAgICAgcmV0dXJuIHAxIHx8IHAyIHx8IHAzIHx8IHA0Ow0KICAgICAgfSkNCiAgICAgIC5yZXBsYWNlKC9bLVwvXFxeJCorPy4oKXxbXF17fV0vZywgIlxcJCYiKTsNCiAgfQ0KDQogIHZhciB0b2tlbnMgPSB7fTsNCg0KICBmdW5jdGlvbiBhZGRQYXJzZVRva2VuKHRva2VuLCBjYWxsYmFjaykgew0KICAgIHZhciBpLA0KICAgICAgZnVuYyA9IGNhbGxiYWNrOw0KICAgIGlmICh0eXBlb2YgdG9rZW4gPT09ICJzdHJpbmciKSB7DQogICAgICB0b2tlbiA9IFt0b2tlbl07DQogICAgfQ0KICAgIGlmICh0eXBlb2YgY2FsbGJhY2sgPT09ICJudW1iZXIiKSB7DQogICAgICBmdW5jID0gZnVuY3Rpb24oaW5wdXQsIGFycmF5KSB7DQogICAgICAgIGFycmF5W2NhbGxiYWNrXSA9IHRvSW50KGlucHV0KTsNCiAgICAgIH07DQogICAgfQ0KICAgIGZvciAoaSA9IDA7IGkgPCB0b2tlbi5sZW5ndGg7IGkrKykgew0KICAgICAgdG9rZW5zW3Rva2VuW2ldXSA9IGZ1bmM7DQogICAgfQ0KICB9DQoNCiAgZnVuY3Rpb24gYWRkV2Vla1BhcnNlVG9rZW4odG9rZW4sIGNhbGxiYWNrKSB7DQogICAgYWRkUGFyc2VUb2tlbih0b2tlbiwgZnVuY3Rpb24oaW5wdXQsIGFycmF5LCBjb25maWcsIHRva2VuKSB7DQogICAgICBjb25maWcuX3cgPSBjb25maWcuX3cgfHwge307DQogICAgICBjYWxsYmFjayhpbnB1dCwgY29uZmlnLl93LCBjb25maWcsIHRva2VuKTsNCiAgICB9KTsNCiAgfQ0KDQogIGZ1bmN0aW9uIGFkZFRpbWVUb0FycmF5RnJvbVRva2VuKHRva2VuLCBpbnB1dCwgY29uZmlnKSB7DQogICAgaWYgKGlucHV0ICE9IG51bGwgJiYgaGFzT3duUHJvcCh0b2tlbnMsIHRva2VuKSkgew0KICAgICAgdG9rZW5zW3Rva2VuXShpbnB1dCwgY29uZmlnLl9hLCBjb25maWcsIHRva2VuKTsNCiAgICB9DQogIH0NCg0KICB2YXIgWUVBUiA9IDA7DQogIHZhciBNT05USCA9IDE7DQogIHZhciBEQVRFID0gMjsNCiAgdmFyIEhPVVIgPSAzOw0KICB2YXIgTUlOVVRFID0gNDsNCiAgdmFyIFNFQ09ORCA9IDU7DQogIHZhciBNSUxMSVNFQ09ORCA9IDY7DQoNCiAgZnVuY3Rpb24gZGF5c0luTW9udGgoeWVhciwgbW9udGgpIHsNCiAgICByZXR1cm4gbmV3IERhdGUoRGF0ZS5VVEMoeWVhciwgbW9udGggKyAxLCAwKSkuZ2V0VVRDRGF0ZSgpOw0KICB9DQoNCiAgLy8gRk9STUFUVElORw0KDQogIGFkZEZvcm1hdFRva2VuKCJNIiwgWyJNTSIsIDJdLCAiTW8iLCBmdW5jdGlvbigpIHsNCiAgICByZXR1cm4gdGhpcy5tb250aCgpICsgMTsNCiAgfSk7DQoNCiAgYWRkRm9ybWF0VG9rZW4oIk1NTSIsIDAsIDAsIGZ1bmN0aW9uKGZvcm1hdCkgew0KICAgIHJldHVybiB0aGlzLmxvY2FsZURhdGEoKS5tb250aHNTaG9ydCh0aGlzLCBmb3JtYXQpOw0KICB9KTsNCg0KICBhZGRGb3JtYXRUb2tlbigiTU1NTSIsIDAsIDAsIGZ1bmN0aW9uKGZvcm1hdCkgew0KICAgIHJldHVybiB0aGlzLmxvY2FsZURhdGEoKS5tb250aHModGhpcywgZm9ybWF0KTsNCiAgfSk7DQoNCiAgLy8gQUxJQVNFUw0KDQogIGFkZFVuaXRBbGlhcygibW9udGgiLCAiTSIpOw0KDQogIC8vIFBBUlNJTkcNCg0KICBhZGRSZWdleFRva2VuKCJNIiwgbWF0Y2gxdG8yKTsNCiAgYWRkUmVnZXhUb2tlbigiTU0iLCBtYXRjaDF0bzIsIG1hdGNoMik7DQogIGFkZFJlZ2V4VG9rZW4oIk1NTSIsIG1hdGNoV29yZCk7DQogIGFkZFJlZ2V4VG9rZW4oIk1NTU0iLCBtYXRjaFdvcmQpOw0KDQogIGFkZFBhcnNlVG9rZW4oWyJNIiwgIk1NIl0sIGZ1bmN0aW9uKGlucHV0LCBhcnJheSkgew0KICAgIGFycmF5W01PTlRIXSA9IHRvSW50KGlucHV0KSAtIDE7DQogIH0pOw0KDQogIGFkZFBhcnNlVG9rZW4oWyJNTU0iLCAiTU1NTSJdLCBmdW5jdGlvbihpbnB1dCwgYXJyYXksIGNvbmZpZywgdG9rZW4pIHsNCiAgICB2YXIgbW9udGggPSBjb25maWcuX2xvY2FsZS5tb250aHNQYXJzZShpbnB1dCwgdG9rZW4sIGNvbmZpZy5fc3RyaWN0KTsNCiAgICAvLyBpZiB3ZSBkaWRuJ3QgZmluZCBhIG1vbnRoIG5hbWUsIG1hcmsgdGhlIGRhdGUgYXMgaW52YWxpZC4NCiAgICBpZiAobW9udGggIT0gbnVsbCkgew0KICAgICAgYXJyYXlbTU9OVEhdID0gbW9udGg7DQogICAgfSBlbHNlIHsNCiAgICAgIGdldFBhcnNpbmdGbGFncyhjb25maWcpLmludmFsaWRNb250aCA9IGlucHV0Ow0KICAgIH0NCiAgfSk7DQoNCiAgLy8gTE9DQUxFUw0KDQogIHZhciBkZWZhdWx0TG9jYWxlTW9udGhzID0gIkphbnVhcnlfRmVicnVhcnlfTWFyY2hfQXByaWxfTWF5X0p1bmVfSnVseV9BdWd1c3RfU2VwdGVtYmVyX09jdG9iZXJfTm92ZW1iZXJfRGVjZW1iZXIiLnNwbGl0KA0KICAgICJfIg0KICApOw0KICBmdW5jdGlvbiBsb2NhbGVNb250aHMobSkgew0KICAgIHJldHVybiB0aGlzLl9tb250aHNbbS5tb250aCgpXTsNCiAgfQ0KDQogIHZhciBkZWZhdWx0TG9jYWxlTW9udGhzU2hvcnQgPSAiSmFuX0ZlYl9NYXJfQXByX01heV9KdW5fSnVsX0F1Z19TZXBfT2N0X05vdl9EZWMiLnNwbGl0KA0KICAgICJfIg0KICApOw0KICBmdW5jdGlvbiBsb2NhbGVNb250aHNTaG9ydChtKSB7DQogICAgcmV0dXJuIHRoaXMuX21vbnRoc1Nob3J0W20ubW9udGgoKV07DQogIH0NCg0KICBmdW5jdGlvbiBsb2NhbGVNb250aHNQYXJzZShtb250aE5hbWUsIGZvcm1hdCwgc3RyaWN0KSB7DQogICAgdmFyIGksIG1vbSwgcmVnZXg7DQoNCiAgICBpZiAoIXRoaXMuX21vbnRoc1BhcnNlKSB7DQogICAgICB0aGlzLl9tb250aHNQYXJzZSA9IFtdOw0KICAgICAgdGhpcy5fbG9uZ01vbnRoc1BhcnNlID0gW107DQogICAgICB0aGlzLl9zaG9ydE1vbnRoc1BhcnNlID0gW107DQogICAgfQ0KDQogICAgZm9yIChpID0gMDsgaSA8IDEyOyBpKyspIHsNCiAgICAgIC8vIG1ha2UgdGhlIHJlZ2V4IGlmIHdlIGRvbid0IGhhdmUgaXQgYWxyZWFkeQ0KICAgICAgbW9tID0gY3JlYXRlX3V0Y19fY3JlYXRlVVRDKFsyMDAwLCBpXSk7DQogICAgICBpZiAoc3RyaWN0ICYmICF0aGlzLl9sb25nTW9udGhzUGFyc2VbaV0pIHsNCiAgICAgICAgdGhpcy5fbG9uZ01vbnRoc1BhcnNlW2ldID0gbmV3IFJlZ0V4cCgNCiAgICAgICAgICAiXiIgKyB0aGlzLm1vbnRocyhtb20sICIiKS5yZXBsYWNlKCIuIiwgIiIpICsgIiQiLA0KICAgICAgICAgICJpIg0KICAgICAgICApOw0KICAgICAgICB0aGlzLl9zaG9ydE1vbnRoc1BhcnNlW2ldID0gbmV3IFJlZ0V4cCgNCiAgICAgICAgICAiXiIgKyB0aGlzLm1vbnRoc1Nob3J0KG1vbSwgIiIpLnJlcGxhY2UoIi4iLCAiIikgKyAiJCIsDQogICAgICAgICAgImkiDQogICAgICAgICk7DQogICAgICB9DQogICAgICBpZiAoIXN0cmljdCAmJiAhdGhpcy5fbW9udGhzUGFyc2VbaV0pIHsNCiAgICAgICAgcmVnZXggPSAiXiIgKyB0aGlzLm1vbnRocyhtb20sICIiKSArICJ8XiIgKyB0aGlzLm1vbnRoc1Nob3J0KG1vbSwgIiIpOw0KICAgICAgICB0aGlzLl9tb250aHNQYXJzZVtpXSA9IG5ldyBSZWdFeHAocmVnZXgucmVwbGFjZSgiLiIsICIiKSwgImkiKTsNCiAgICAgIH0NCiAgICAgIC8vIHRlc3QgdGhlIHJlZ2V4DQogICAgICBpZiAoDQogICAgICAgIHN0cmljdCAmJg0KICAgICAgICBmb3JtYXQgPT09ICJNTU1NIiAmJg0KICAgICAgICB0aGlzLl9sb25nTW9udGhzUGFyc2VbaV0udGVzdChtb250aE5hbWUpDQogICAgICApIHsNCiAgICAgICAgcmV0dXJuIGk7DQogICAgICB9IGVsc2UgaWYgKA0KICAgICAgICBzdHJpY3QgJiYNCiAgICAgICAgZm9ybWF0ID09PSAiTU1NIiAmJg0KICAgICAgICB0aGlzLl9zaG9ydE1vbnRoc1BhcnNlW2ldLnRlc3QobW9udGhOYW1lKQ0KICAgICAgKSB7DQogICAgICAgIHJldHVybiBpOw0KICAgICAgfSBlbHNlIGlmICghc3RyaWN0ICYmIHRoaXMuX21vbnRoc1BhcnNlW2ldLnRlc3QobW9udGhOYW1lKSkgew0KICAgICAgICByZXR1cm4gaTsNCiAgICAgIH0NCiAgICB9DQogIH0NCg0KICAvLyBNT01FTlRTDQoNCiAgZnVuY3Rpb24gc2V0TW9udGgobW9tLCB2YWx1ZSkgew0KICAgIHZhciBkYXlPZk1vbnRoOw0KDQogICAgLy8gVE9ETzogTW92ZSB0aGlzIG91dCBvZiBoZXJlIQ0KICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICJzdHJpbmciKSB7DQogICAgICB2YWx1ZSA9IG1vbS5sb2NhbGVEYXRhKCkubW9udGhzUGFyc2UodmFsdWUpOw0KICAgICAgLy8gVE9ETzogQW5vdGhlciBzaWxlbnQgZmFpbHVyZT8NCiAgICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICJudW1iZXIiKSB7DQogICAgICAgIHJldHVybiBtb207DQogICAgICB9DQogICAgfQ0KDQogICAgZGF5T2ZNb250aCA9IE1hdGgubWluKG1vbS5kYXRlKCksIGRheXNJbk1vbnRoKG1vbS55ZWFyKCksIHZhbHVlKSk7DQogICAgbW9tLl9kWyJzZXQiICsgKG1vbS5faXNVVEMgPyAiVVRDIiA6ICIiKSArICJNb250aCJdKHZhbHVlLCBkYXlPZk1vbnRoKTsNCiAgICByZXR1cm4gbW9tOw0KICB9DQoNCiAgZnVuY3Rpb24gZ2V0U2V0TW9udGgodmFsdWUpIHsNCiAgICBpZiAodmFsdWUgIT0gbnVsbCkgew0KICAgICAgc2V0TW9udGgodGhpcywgdmFsdWUpOw0KICAgICAgdXRpbHNfaG9va3NfX2hvb2tzLnVwZGF0ZU9mZnNldCh0aGlzLCB0cnVlKTsNCiAgICAgIHJldHVybiB0aGlzOw0KICAgIH0gZWxzZSB7DQogICAgICByZXR1cm4gZ2V0X3NldF9fZ2V0KHRoaXMsICJNb250aCIpOw0KICAgIH0NCiAgfQ0KDQogIGZ1bmN0aW9uIGdldERheXNJbk1vbnRoKCkgew0KICAgIHJldHVybiBkYXlzSW5Nb250aCh0aGlzLnllYXIoKSwgdGhpcy5tb250aCgpKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIGNoZWNrT3ZlcmZsb3cobSkgew0KICAgIHZhciBvdmVyZmxvdzsNCiAgICB2YXIgYSA9IG0uX2E7DQoNCiAgICBpZiAoYSAmJiBnZXRQYXJzaW5nRmxhZ3MobSkub3ZlcmZsb3cgPT09IC0yKSB7DQogICAgICBvdmVyZmxvdyA9DQogICAgICAgIGFbTU9OVEhdIDwgMCB8fCBhW01PTlRIXSA+IDExDQogICAgICAgICAgPyBNT05USA0KICAgICAgICAgIDogYVtEQVRFXSA8IDEgfHwgYVtEQVRFXSA+IGRheXNJbk1vbnRoKGFbWUVBUl0sIGFbTU9OVEhdKQ0KICAgICAgICAgID8gREFURQ0KICAgICAgICAgIDogYVtIT1VSXSA8IDAgfHwNCiAgICAgICAgICAgIGFbSE9VUl0gPiAyNCB8fA0KICAgICAgICAgICAgKGFbSE9VUl0gPT09IDI0ICYmDQogICAgICAgICAgICAgIChhW01JTlVURV0gIT09IDAgfHwgYVtTRUNPTkRdICE9PSAwIHx8IGFbTUlMTElTRUNPTkRdICE9PSAwKSkNCiAgICAgICAgICA/IEhPVVINCiAgICAgICAgICA6IGFbTUlOVVRFXSA8IDAgfHwgYVtNSU5VVEVdID4gNTkNCiAgICAgICAgICA/IE1JTlVURQ0KICAgICAgICAgIDogYVtTRUNPTkRdIDwgMCB8fCBhW1NFQ09ORF0gPiA1OQ0KICAgICAgICAgID8gU0VDT05EDQogICAgICAgICAgOiBhW01JTExJU0VDT05EXSA8IDAgfHwgYVtNSUxMSVNFQ09ORF0gPiA5OTkNCiAgICAgICAgICA/IE1JTExJU0VDT05EDQogICAgICAgICAgOiAtMTsNCg0KICAgICAgaWYgKA0KICAgICAgICBnZXRQYXJzaW5nRmxhZ3MobSkuX292ZXJmbG93RGF5T2ZZZWFyICYmDQogICAgICAgIChvdmVyZmxvdyA8IFlFQVIgfHwgb3ZlcmZsb3cgPiBEQVRFKQ0KICAgICAgKSB7DQogICAgICAgIG92ZXJmbG93ID0gREFURTsNCiAgICAgIH0NCg0KICAgICAgZ2V0UGFyc2luZ0ZsYWdzKG0pLm92ZXJmbG93ID0gb3ZlcmZsb3c7DQogICAgfQ0KDQogICAgcmV0dXJuIG07DQogIH0NCg0KICBmdW5jdGlvbiB3YXJuKG1zZykgew0KICAgIGlmICgNCiAgICAgIHV0aWxzX2hvb2tzX19ob29rcy5zdXBwcmVzc0RlcHJlY2F0aW9uV2FybmluZ3MgPT09IGZhbHNlICYmDQogICAgICB0eXBlb2YgY29uc29sZSAhPT0gInVuZGVmaW5lZCIgJiYNCiAgICAgIGNvbnNvbGUud2Fybg0KICAgICkgew0KICAgICAgY29uc29sZS53YXJuKCJEZXByZWNhdGlvbiB3YXJuaW5nOiAiICsgbXNnKTsNCiAgICB9DQogIH0NCg0KICBmdW5jdGlvbiBkZXByZWNhdGUobXNnLCBmbikgew0KICAgIHZhciBmaXJzdFRpbWUgPSB0cnVlOw0KDQogICAgcmV0dXJuIGV4dGVuZChmdW5jdGlvbigpIHsNCiAgICAgIGlmIChmaXJzdFRpbWUpIHsNCiAgICAgICAgd2Fybihtc2cgKyAiXG4iICsgbmV3IEVycm9yKCkuc3RhY2spOw0KICAgICAgICBmaXJzdFRpbWUgPSBmYWxzZTsNCiAgICAgIH0NCiAgICAgIHJldHVybiBmbi5hcHBseSh0aGlzLCBhcmd1bWVudHMpOw0KICAgIH0sIGZuKTsNCiAgfQ0KDQogIHZhciBkZXByZWNhdGlvbnMgPSB7fTsNCg0KICBmdW5jdGlvbiBkZXByZWNhdGVTaW1wbGUobmFtZSwgbXNnKSB7DQogICAgaWYgKCFkZXByZWNhdGlvbnNbbmFtZV0pIHsNCiAgICAgIHdhcm4obXNnKTsNCiAgICAgIGRlcHJlY2F0aW9uc1tuYW1lXSA9IHRydWU7DQogICAgfQ0KICB9DQoNCiAgdXRpbHNfaG9va3NfX2hvb2tzLnN1cHByZXNzRGVwcmVjYXRpb25XYXJuaW5ncyA9IGZhbHNlOw0KDQogIHZhciBmcm9tX3N0cmluZ19faXNvUmVnZXggPSAvXlxzKig/OlsrLV1cZHs2fXxcZHs0fSktKD86KFxkXGQtXGRcZCl8KFdcZFxkJCl8KFdcZFxkLVxkKXwoXGRcZFxkKSkoKFR8ICkoXGRcZCg6XGRcZCg6XGRcZChcLlxkKyk/KT8pPyk/KFtcK1wtXVxkXGQoPzo6P1xkXGQpP3xccypaKT8pPyQvOw0KDQogIHZhciBpc29EYXRlcyA9IFsNCiAgICBbIllZWVlZWS1NTS1ERCIsIC9bKy1dXGR7Nn0tXGR7Mn0tXGR7Mn0vXSwNCiAgICBbIllZWVktTU0tREQiLCAvXGR7NH0tXGR7Mn0tXGR7Mn0vXSwNCiAgICBbIkdHR0ctW1ddV1ctRSIsIC9cZHs0fS1XXGR7Mn0tXGQvXSwNCiAgICBbIkdHR0ctW1ddV1ciLCAvXGR7NH0tV1xkezJ9L10sDQogICAgWyJZWVlZLURERCIsIC9cZHs0fS1cZHszfS9dDQogIF07DQoNCiAgLy8gaXNvIHRpbWUgZm9ybWF0cyBhbmQgcmVnZXhlcw0KICB2YXIgaXNvVGltZXMgPSBbDQogICAgWyJISDptbTpzcy5TU1NTIiwgLyhUfCApXGRcZDpcZFxkOlxkXGRcLlxkKy9dLA0KICAgIFsiSEg6bW06c3MiLCAvKFR8IClcZFxkOlxkXGQ6XGRcZC9dLA0KICAgIFsiSEg6bW0iLCAvKFR8IClcZFxkOlxkXGQvXSwNCiAgICBbIkhIIiwgLyhUfCApXGRcZC9dDQogIF07DQoNCiAgdmFyIGFzcE5ldEpzb25SZWdleCA9IC9eXC8/RGF0ZVwoKFwtP1xkKykvaTsNCg0KICAvLyBkYXRlIGZyb20gaXNvIGZvcm1hdA0KICBmdW5jdGlvbiBjb25maWdGcm9tSVNPKGNvbmZpZykgew0KICAgIHZhciBpLA0KICAgICAgbCwNCiAgICAgIHN0cmluZyA9IGNvbmZpZy5faSwNCiAgICAgIG1hdGNoID0gZnJvbV9zdHJpbmdfX2lzb1JlZ2V4LmV4ZWMoc3RyaW5nKTsNCg0KICAgIGlmIChtYXRjaCkgew0KICAgICAgZ2V0UGFyc2luZ0ZsYWdzKGNvbmZpZykuaXNvID0gdHJ1ZTsNCiAgICAgIGZvciAoaSA9IDAsIGwgPSBpc29EYXRlcy5sZW5ndGg7IGkgPCBsOyBpKyspIHsNCiAgICAgICAgaWYgKGlzb0RhdGVzW2ldWzFdLmV4ZWMoc3RyaW5nKSkgew0KICAgICAgICAgIGNvbmZpZy5fZiA9IGlzb0RhdGVzW2ldWzBdOw0KICAgICAgICAgIGJyZWFrOw0KICAgICAgICB9DQogICAgICB9DQogICAgICBmb3IgKGkgPSAwLCBsID0gaXNvVGltZXMubGVuZ3RoOyBpIDwgbDsgaSsrKSB7DQogICAgICAgIGlmIChpc29UaW1lc1tpXVsxXS5leGVjKHN0cmluZykpIHsNCiAgICAgICAgICAvLyBtYXRjaFs2XSBzaG91bGQgYmUgJ1QnIG9yIHNwYWNlDQogICAgICAgICAgY29uZmlnLl9mICs9IChtYXRjaFs2XSB8fCAiICIpICsgaXNvVGltZXNbaV1bMF07DQogICAgICAgICAgYnJlYWs7DQogICAgICAgIH0NCiAgICAgIH0NCiAgICAgIGlmIChzdHJpbmcubWF0Y2gobWF0Y2hPZmZzZXQpKSB7DQogICAgICAgIGNvbmZpZy5fZiArPSAiWiI7DQogICAgICB9DQogICAgICBjb25maWdGcm9tU3RyaW5nQW5kRm9ybWF0KGNvbmZpZyk7DQogICAgfSBlbHNlIHsNCiAgICAgIGNvbmZpZy5faXNWYWxpZCA9IGZhbHNlOw0KICAgIH0NCiAgfQ0KDQogIC8vIGRhdGUgZnJvbSBpc28gZm9ybWF0IG9yIGZhbGxiYWNrDQogIGZ1bmN0aW9uIGNvbmZpZ0Zyb21TdHJpbmcoY29uZmlnKSB7DQogICAgdmFyIG1hdGNoZWQgPSBhc3BOZXRKc29uUmVnZXguZXhlYyhjb25maWcuX2kpOw0KDQogICAgaWYgKG1hdGNoZWQgIT09IG51bGwpIHsNCiAgICAgIGNvbmZpZy5fZCA9IG5ldyBEYXRlKCttYXRjaGVkWzFdKTsNCiAgICAgIHJldHVybjsNCiAgICB9DQoNCiAgICBjb25maWdGcm9tSVNPKGNvbmZpZyk7DQogICAgaWYgKGNvbmZpZy5faXNWYWxpZCA9PT0gZmFsc2UpIHsNCiAgICAgIGRlbGV0ZSBjb25maWcuX2lzVmFsaWQ7DQogICAgICB1dGlsc19ob29rc19faG9va3MuY3JlYXRlRnJvbUlucHV0RmFsbGJhY2soY29uZmlnKTsNCiAgICB9DQogIH0NCg0KICB1dGlsc19ob29rc19faG9va3MuY3JlYXRlRnJvbUlucHV0RmFsbGJhY2sgPSBkZXByZWNhdGUoDQogICAgIm1vbWVudCBjb25zdHJ1Y3Rpb24gZmFsbHMgYmFjayB0byBqcyBEYXRlLiBUaGlzIGlzICIgKw0KICAgICAgImRpc2NvdXJhZ2VkIGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgbWFqb3IgIiArDQogICAgICAicmVsZWFzZS4gUGxlYXNlIHJlZmVyIHRvICIgKw0KICAgICAgImh0dHBzOi8vZ2l0aHViLmNvbS9tb21lbnQvbW9tZW50L2lzc3Vlcy8xNDA3IGZvciBtb3JlIGluZm8uIiwNCiAgICBmdW5jdGlvbihjb25maWcpIHsNCiAgICAgIGNvbmZpZy5fZCA9IG5ldyBEYXRlKGNvbmZpZy5faSArIChjb25maWcuX3VzZVVUQyA/ICIgVVRDIiA6ICIiKSk7DQogICAgfQ0KICApOw0KDQogIGZ1bmN0aW9uIGNyZWF0ZURhdGUoeSwgbSwgZCwgaCwgTSwgcywgbXMpIHsNCiAgICAvL2Nhbid0IGp1c3QgYXBwbHkoKSB0byBjcmVhdGUgYSBkYXRlOg0KICAgIC8vaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xODEzNDgvaW5zdGFudGlhdGluZy1hLWphdmFzY3JpcHQtb2JqZWN0LWJ5LWNhbGxpbmctcHJvdG90eXBlLWNvbnN0cnVjdG9yLWFwcGx5DQogICAgdmFyIGRhdGUgPSBuZXcgRGF0ZSh5LCBtLCBkLCBoLCBNLCBzLCBtcyk7DQoNCiAgICAvL3RoZSBkYXRlIGNvbnN0cnVjdG9yIGRvZXNuJ3QgYWNjZXB0IHllYXJzIDwgMTk3MA0KICAgIGlmICh5IDwgMTk3MCkgew0KICAgICAgZGF0ZS5zZXRGdWxsWWVhcih5KTsNCiAgICB9DQogICAgcmV0dXJuIGRhdGU7DQogIH0NCg0KICBmdW5jdGlvbiBjcmVhdGVVVENEYXRlKHkpIHsNCiAgICB2YXIgZGF0ZSA9IG5ldyBEYXRlKERhdGUuVVRDLmFwcGx5KG51bGwsIGFyZ3VtZW50cykpOw0KICAgIGlmICh5IDwgMTk3MCkgew0KICAgICAgZGF0ZS5zZXRVVENGdWxsWWVhcih5KTsNCiAgICB9DQogICAgcmV0dXJuIGRhdGU7DQogIH0NCg0KICBhZGRGb3JtYXRUb2tlbigwLCBbIllZIiwgMl0sIDAsIGZ1bmN0aW9uKCkgew0KICAgIHJldHVybiB0aGlzLnllYXIoKSAlIDEwMDsNCiAgfSk7DQoNCiAgYWRkRm9ybWF0VG9rZW4oMCwgWyJZWVlZIiwgNF0sIDAsICJ5ZWFyIik7DQogIGFkZEZvcm1hdFRva2VuKDAsIFsiWVlZWVkiLCA1XSwgMCwgInllYXIiKTsNCiAgYWRkRm9ybWF0VG9rZW4oMCwgWyJZWVlZWVkiLCA2LCB0cnVlXSwgMCwgInllYXIiKTsNCg0KICAvLyBBTElBU0VTDQoNCiAgYWRkVW5pdEFsaWFzKCJ5ZWFyIiwgInkiKTsNCg0KICAvLyBQQVJTSU5HDQoNCiAgYWRkUmVnZXhUb2tlbigiWSIsIG1hdGNoU2lnbmVkKTsNCiAgYWRkUmVnZXhUb2tlbigiWVkiLCBtYXRjaDF0bzIsIG1hdGNoMik7DQogIGFkZFJlZ2V4VG9rZW4oIllZWVkiLCBtYXRjaDF0bzQsIG1hdGNoNCk7DQogIGFkZFJlZ2V4VG9rZW4oIllZWVlZIiwgbWF0Y2gxdG82LCBtYXRjaDYpOw0KICBhZGRSZWdleFRva2VuKCJZWVlZWVkiLCBtYXRjaDF0bzYsIG1hdGNoNik7DQoNCiAgYWRkUGFyc2VUb2tlbihbIllZWVlZIiwgIllZWVlZWSJdLCBZRUFSKTsNCiAgYWRkUGFyc2VUb2tlbigiWVlZWSIsIGZ1bmN0aW9uKGlucHV0LCBhcnJheSkgew0KICAgIGFycmF5W1lFQVJdID0NCiAgICAgIGlucHV0Lmxlbmd0aCA9PT0gMg0KICAgICAgICA/IHV0aWxzX2hvb2tzX19ob29rcy5wYXJzZVR3b0RpZ2l0WWVhcihpbnB1dCkNCiAgICAgICAgOiB0b0ludChpbnB1dCk7DQogIH0pOw0KICBhZGRQYXJzZVRva2VuKCJZWSIsIGZ1bmN0aW9uKGlucHV0LCBhcnJheSkgew0KICAgIGFycmF5W1lFQVJdID0gdXRpbHNfaG9va3NfX2hvb2tzLnBhcnNlVHdvRGlnaXRZZWFyKGlucHV0KTsNCiAgfSk7DQoNCiAgLy8gSEVMUEVSUw0KDQogIGZ1bmN0aW9uIGRheXNJblllYXIoeWVhcikgew0KICAgIHJldHVybiBpc0xlYXBZZWFyKHllYXIpID8gMzY2IDogMzY1Ow0KICB9DQoNCiAgZnVuY3Rpb24gaXNMZWFwWWVhcih5ZWFyKSB7DQogICAgcmV0dXJuICh5ZWFyICUgNCA9PT0gMCAmJiB5ZWFyICUgMTAwICE9PSAwKSB8fCB5ZWFyICUgNDAwID09PSAwOw0KICB9DQoNCiAgLy8gSE9PS1MNCg0KICB1dGlsc19ob29rc19faG9va3MucGFyc2VUd29EaWdpdFllYXIgPSBmdW5jdGlvbihpbnB1dCkgew0KICAgIHJldHVybiB0b0ludChpbnB1dCkgKyAodG9JbnQoaW5wdXQpID4gNjggPyAxOTAwIDogMjAwMCk7DQogIH07DQoNCiAgLy8gTU9NRU5UUw0KDQogIHZhciBnZXRTZXRZZWFyID0gbWFrZUdldFNldCgiRnVsbFllYXIiLCBmYWxzZSk7DQoNCiAgZnVuY3Rpb24gZ2V0SXNMZWFwWWVhcigpIHsNCiAgICByZXR1cm4gaXNMZWFwWWVhcih0aGlzLnllYXIoKSk7DQogIH0NCg0KICBhZGRGb3JtYXRUb2tlbigidyIsIFsid3ciLCAyXSwgIndvIiwgIndlZWsiKTsNCiAgYWRkRm9ybWF0VG9rZW4oIlciLCBbIldXIiwgMl0sICJXbyIsICJpc29XZWVrIik7DQoNCiAgLy8gQUxJQVNFUw0KDQogIGFkZFVuaXRBbGlhcygid2VlayIsICJ3Iik7DQogIGFkZFVuaXRBbGlhcygiaXNvV2VlayIsICJXIik7DQoNCiAgLy8gUEFSU0lORw0KDQogIGFkZFJlZ2V4VG9rZW4oInciLCBtYXRjaDF0bzIpOw0KICBhZGRSZWdleFRva2VuKCJ3dyIsIG1hdGNoMXRvMiwgbWF0Y2gyKTsNCiAgYWRkUmVnZXhUb2tlbigiVyIsIG1hdGNoMXRvMik7DQogIGFkZFJlZ2V4VG9rZW4oIldXIiwgbWF0Y2gxdG8yLCBtYXRjaDIpOw0KDQogIGFkZFdlZWtQYXJzZVRva2VuKFsidyIsICJ3dyIsICJXIiwgIldXIl0sIGZ1bmN0aW9uKA0KICAgIGlucHV0LA0KICAgIHdlZWssDQogICAgY29uZmlnLA0KICAgIHRva2VuDQogICkgew0KICAgIHdlZWtbdG9rZW4uc3Vic3RyKDAsIDEpXSA9IHRvSW50KGlucHV0KTsNCiAgfSk7DQoNCiAgLy8gSEVMUEVSUw0KDQogIC8vIGZpcnN0RGF5T2ZXZWVrICAgICAgIDAgPSBzdW4sIDYgPSBzYXQNCiAgLy8gICAgICAgICAgICAgICAgICAgICAgdGhlIGRheSBvZiB0aGUgd2VlayB0aGF0IHN0YXJ0cyB0aGUgd2Vlaw0KICAvLyAgICAgICAgICAgICAgICAgICAgICAodXN1YWxseSBzdW5kYXkgb3IgbW9uZGF5KQ0KICAvLyBmaXJzdERheU9mV2Vla09mWWVhciAwID0gc3VuLCA2ID0gc2F0DQogIC8vICAgICAgICAgICAgICAgICAgICAgIHRoZSBmaXJzdCB3ZWVrIGlzIHRoZSB3ZWVrIHRoYXQgY29udGFpbnMgdGhlIGZpcnN0DQogIC8vICAgICAgICAgICAgICAgICAgICAgIG9mIHRoaXMgZGF5IG9mIHRoZSB3ZWVrDQogIC8vICAgICAgICAgICAgICAgICAgICAgIChlZy4gSVNPIHdlZWtzIHVzZSB0aHVyc2RheSAoNCkpDQogIGZ1bmN0aW9uIHdlZWtPZlllYXIobW9tLCBmaXJzdERheU9mV2VlaywgZmlyc3REYXlPZldlZWtPZlllYXIpIHsNCiAgICB2YXIgZW5kID0gZmlyc3REYXlPZldlZWtPZlllYXIgLSBmaXJzdERheU9mV2VlaywNCiAgICAgIGRheXNUb0RheU9mV2VlayA9IGZpcnN0RGF5T2ZXZWVrT2ZZZWFyIC0gbW9tLmRheSgpLA0KICAgICAgYWRqdXN0ZWRNb21lbnQ7DQoNCiAgICBpZiAoZGF5c1RvRGF5T2ZXZWVrID4gZW5kKSB7DQogICAgICBkYXlzVG9EYXlPZldlZWsgLT0gNzsNCiAgICB9DQoNCiAgICBpZiAoZGF5c1RvRGF5T2ZXZWVrIDwgZW5kIC0gNykgew0KICAgICAgZGF5c1RvRGF5T2ZXZWVrICs9IDc7DQogICAgfQ0KDQogICAgYWRqdXN0ZWRNb21lbnQgPSBsb2NhbF9fY3JlYXRlTG9jYWwobW9tKS5hZGQoZGF5c1RvRGF5T2ZXZWVrLCAiZCIpOw0KICAgIHJldHVybiB7DQogICAgICB3ZWVrOiBNYXRoLmNlaWwoYWRqdXN0ZWRNb21lbnQuZGF5T2ZZZWFyKCkgLyA3KSwNCiAgICAgIHllYXI6IGFkanVzdGVkTW9tZW50LnllYXIoKQ0KICAgIH07DQogIH0NCg0KICAvLyBMT0NBTEVTDQoNCiAgZnVuY3Rpb24gbG9jYWxlV2Vlayhtb20pIHsNCiAgICByZXR1cm4gd2Vla09mWWVhcihtb20sIHRoaXMuX3dlZWsuZG93LCB0aGlzLl93ZWVrLmRveSkud2VlazsNCiAgfQ0KDQogIHZhciBkZWZhdWx0TG9jYWxlV2VlayA9IHsNCiAgICBkb3c6IDAsIC8vIFN1bmRheSBpcyB0aGUgZmlyc3QgZGF5IG9mIHRoZSB3ZWVrLg0KICAgIGRveTogNiAvLyBUaGUgd2VlayB0aGF0IGNvbnRhaW5zIEphbiAxc3QgaXMgdGhlIGZpcnN0IHdlZWsgb2YgdGhlIHllYXIuDQogIH07DQoNCiAgZnVuY3Rpb24gbG9jYWxlRmlyc3REYXlPZldlZWsoKSB7DQogICAgcmV0dXJuIHRoaXMuX3dlZWsuZG93Ow0KICB9DQoNCiAgZnVuY3Rpb24gbG9jYWxlRmlyc3REYXlPZlllYXIoKSB7DQogICAgcmV0dXJuIHRoaXMuX3dlZWsuZG95Ow0KICB9DQoNCiAgLy8gTU9NRU5UUw0KDQogIGZ1bmN0aW9uIGdldFNldFdlZWsoaW5wdXQpIHsNCiAgICB2YXIgd2VlayA9IHRoaXMubG9jYWxlRGF0YSgpLndlZWsodGhpcyk7DQogICAgcmV0dXJuIGlucHV0ID09IG51bGwgPyB3ZWVrIDogdGhpcy5hZGQoKGlucHV0IC0gd2VlaykgKiA3LCAiZCIpOw0KICB9DQoNCiAgZnVuY3Rpb24gZ2V0U2V0SVNPV2VlayhpbnB1dCkgew0KICAgIHZhciB3ZWVrID0gd2Vla09mWWVhcih0aGlzLCAxLCA0KS53ZWVrOw0KICAgIHJldHVybiBpbnB1dCA9PSBudWxsID8gd2VlayA6IHRoaXMuYWRkKChpbnB1dCAtIHdlZWspICogNywgImQiKTsNCiAgfQ0KDQogIGFkZEZvcm1hdFRva2VuKCJEREQiLCBbIkREREQiLCAzXSwgIkRERG8iLCAiZGF5T2ZZZWFyIik7DQoNCiAgLy8gQUxJQVNFUw0KDQogIGFkZFVuaXRBbGlhcygiZGF5T2ZZZWFyIiwgIkRERCIpOw0KDQogIC8vIFBBUlNJTkcNCg0KICBhZGRSZWdleFRva2VuKCJEREQiLCBtYXRjaDF0bzMpOw0KICBhZGRSZWdleFRva2VuKCJEREREIiwgbWF0Y2gzKTsNCiAgYWRkUGFyc2VUb2tlbihbIkRERCIsICJEREREIl0sIGZ1bmN0aW9uKGlucHV0LCBhcnJheSwgY29uZmlnKSB7DQogICAgY29uZmlnLl9kYXlPZlllYXIgPSB0b0ludChpbnB1dCk7DQogIH0pOw0KDQogIC8vIEhFTFBFUlMNCg0KICAvL2h0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvSVNPX3dlZWtfZGF0ZSNDYWxjdWxhdGluZ19hX2RhdGVfZ2l2ZW5fdGhlX3llYXIuMkNfd2Vla19udW1iZXJfYW5kX3dlZWtkYXkNCiAgZnVuY3Rpb24gZGF5T2ZZZWFyRnJvbVdlZWtzKA0KICAgIHllYXIsDQogICAgd2VlaywNCiAgICB3ZWVrZGF5LA0KICAgIGZpcnN0RGF5T2ZXZWVrT2ZZZWFyLA0KICAgIGZpcnN0RGF5T2ZXZWVrDQogICkgew0KICAgIHZhciB3ZWVrMUphbiA9IDYgKyBmaXJzdERheU9mV2VlayAtIGZpcnN0RGF5T2ZXZWVrT2ZZZWFyLA0KICAgICAgamFuWCA9IGNyZWF0ZVVUQ0RhdGUoeWVhciwgMCwgMSArIHdlZWsxSmFuKSwNCiAgICAgIGQgPSBqYW5YLmdldFVUQ0RheSgpLA0KICAgICAgZGF5T2ZZZWFyOw0KICAgIGlmIChkIDwgZmlyc3REYXlPZldlZWspIHsNCiAgICAgIGQgKz0gNzsNCiAgICB9DQoNCiAgICB3ZWVrZGF5ID0gd2Vla2RheSAhPSBudWxsID8gMSAqIHdlZWtkYXkgOiBmaXJzdERheU9mV2VlazsNCg0KICAgIGRheU9mWWVhciA9IDEgKyB3ZWVrMUphbiArIDcgKiAod2VlayAtIDEpIC0gZCArIHdlZWtkYXk7DQoNCiAgICByZXR1cm4gew0KICAgICAgeWVhcjogZGF5T2ZZZWFyID4gMCA/IHllYXIgOiB5ZWFyIC0gMSwNCiAgICAgIGRheU9mWWVhcjogZGF5T2ZZZWFyID4gMCA/IGRheU9mWWVhciA6IGRheXNJblllYXIoeWVhciAtIDEpICsgZGF5T2ZZZWFyDQogICAgfTsNCiAgfQ0KDQogIC8vIE1PTUVOVFMNCg0KICBmdW5jdGlvbiBnZXRTZXREYXlPZlllYXIoaW5wdXQpIHsNCiAgICB2YXIgZGF5T2ZZZWFyID0NCiAgICAgIE1hdGgucm91bmQoDQogICAgICAgICh0aGlzLmNsb25lKCkuc3RhcnRPZigiZGF5IikgLSB0aGlzLmNsb25lKCkuc3RhcnRPZigieWVhciIpKSAvIDg2NGU1DQogICAgICApICsgMTsNCiAgICByZXR1cm4gaW5wdXQgPT0gbnVsbCA/IGRheU9mWWVhciA6IHRoaXMuYWRkKGlucHV0IC0gZGF5T2ZZZWFyLCAiZCIpOw0KICB9DQoNCiAgLy8gUGljayB0aGUgZmlyc3QgZGVmaW5lZCBvZiB0d28gb3IgdGhyZWUgYXJndW1lbnRzLg0KICBmdW5jdGlvbiBkZWZhdWx0cyhhLCBiLCBjKSB7DQogICAgaWYgKGEgIT0gbnVsbCkgew0KICAgICAgcmV0dXJuIGE7DQogICAgfQ0KICAgIGlmIChiICE9IG51bGwpIHsNCiAgICAgIHJldHVybiBiOw0KICAgIH0NCiAgICByZXR1cm4gYzsNCiAgfQ0KDQogIGZ1bmN0aW9uIGN1cnJlbnREYXRlQXJyYXkoY29uZmlnKSB7DQogICAgdmFyIG5vdyA9IG5ldyBEYXRlKCk7DQogICAgaWYgKGNvbmZpZy5fdXNlVVRDKSB7DQogICAgICByZXR1cm4gW25vdy5nZXRVVENGdWxsWWVhcigpLCBub3cuZ2V0VVRDTW9udGgoKSwgbm93LmdldFVUQ0RhdGUoKV07DQogICAgfQ0KICAgIHJldHVybiBbbm93LmdldEZ1bGxZZWFyKCksIG5vdy5nZXRNb250aCgpLCBub3cuZ2V0RGF0ZSgpXTsNCiAgfQ0KDQogIC8vIGNvbnZlcnQgYW4gYXJyYXkgdG8gYSBkYXRlLg0KICAvLyB0aGUgYXJyYXkgc2hvdWxkIG1pcnJvciB0aGUgcGFyYW1ldGVycyBiZWxvdw0KICAvLyBub3RlOiBhbGwgdmFsdWVzIHBhc3QgdGhlIHllYXIgYXJlIG9wdGlvbmFsIGFuZCB3aWxsIGRlZmF1bHQgdG8gdGhlIGxvd2VzdCBwb3NzaWJsZSB2YWx1ZS4NCiAgLy8gW3llYXIsIG1vbnRoLCBkYXkgLCBob3VyLCBtaW51dGUsIHNlY29uZCwgbWlsbGlzZWNvbmRdDQogIGZ1bmN0aW9uIGNvbmZpZ0Zyb21BcnJheShjb25maWcpIHsNCiAgICB2YXIgaSwNCiAgICAgIGRhdGUsDQogICAgICBpbnB1dCA9IFtdLA0KICAgICAgY3VycmVudERhdGUsDQogICAgICB5ZWFyVG9Vc2U7DQoNCiAgICBpZiAoY29uZmlnLl9kKSB7DQogICAgICByZXR1cm47DQogICAgfQ0KDQogICAgY3VycmVudERhdGUgPSBjdXJyZW50RGF0ZUFycmF5KGNvbmZpZyk7DQoNCiAgICAvL2NvbXB1dGUgZGF5IG9mIHRoZSB5ZWFyIGZyb20gd2Vla3MgYW5kIHdlZWtkYXlzDQogICAgaWYgKGNvbmZpZy5fdyAmJiBjb25maWcuX2FbREFURV0gPT0gbnVsbCAmJiBjb25maWcuX2FbTU9OVEhdID09IG51bGwpIHsNCiAgICAgIGRheU9mWWVhckZyb21XZWVrSW5mbyhjb25maWcpOw0KICAgIH0NCg0KICAgIC8vaWYgdGhlIGRheSBvZiB0aGUgeWVhciBpcyBzZXQsIGZpZ3VyZSBvdXQgd2hhdCBpdCBpcw0KICAgIGlmIChjb25maWcuX2RheU9mWWVhcikgew0KICAgICAgeWVhclRvVXNlID0gZGVmYXVsdHMoY29uZmlnLl9hW1lFQVJdLCBjdXJyZW50RGF0ZVtZRUFSXSk7DQoNCiAgICAgIGlmIChjb25maWcuX2RheU9mWWVhciA+IGRheXNJblllYXIoeWVhclRvVXNlKSkgew0KICAgICAgICBnZXRQYXJzaW5nRmxhZ3MoY29uZmlnKS5fb3ZlcmZsb3dEYXlPZlllYXIgPSB0cnVlOw0KICAgICAgfQ0KDQogICAgICBkYXRlID0gY3JlYXRlVVRDRGF0ZSh5ZWFyVG9Vc2UsIDAsIGNvbmZpZy5fZGF5T2ZZZWFyKTsNCiAgICAgIGNvbmZpZy5fYVtNT05USF0gPSBkYXRlLmdldFVUQ01vbnRoKCk7DQogICAgICBjb25maWcuX2FbREFURV0gPSBkYXRlLmdldFVUQ0RhdGUoKTsNCiAgICB9DQoNCiAgICAvLyBEZWZhdWx0IHRvIGN1cnJlbnQgZGF0ZS4NCiAgICAvLyAqIGlmIG5vIHllYXIsIG1vbnRoLCBkYXkgb2YgbW9udGggYXJlIGdpdmVuLCBkZWZhdWx0IHRvIHRvZGF5DQogICAgLy8gKiBpZiBkYXkgb2YgbW9udGggaXMgZ2l2ZW4sIGRlZmF1bHQgbW9udGggYW5kIHllYXINCiAgICAvLyAqIGlmIG1vbnRoIGlzIGdpdmVuLCBkZWZhdWx0IG9ubHkgeWVhcg0KICAgIC8vICogaWYgeWVhciBpcyBnaXZlbiwgZG9uJ3QgZGVmYXVsdCBhbnl0aGluZw0KICAgIGZvciAoaSA9IDA7IGkgPCAzICYmIGNvbmZpZy5fYVtpXSA9PSBudWxsOyArK2kpIHsNCiAgICAgIGNvbmZpZy5fYVtpXSA9IGlucHV0W2ldID0gY3VycmVudERhdGVbaV07DQogICAgfQ0KDQogICAgLy8gWmVybyBvdXQgd2hhdGV2ZXIgd2FzIG5vdCBkZWZhdWx0ZWQsIGluY2x1ZGluZyB0aW1lDQogICAgZm9yICg7IGkgPCA3OyBpKyspIHsNCiAgICAgIGNvbmZpZy5fYVtpXSA9IGlucHV0W2ldID0NCiAgICAgICAgY29uZmlnLl9hW2ldID09IG51bGwgPyAoaSA9PT0gMiA/IDEgOiAwKSA6IGNvbmZpZy5fYVtpXTsNCiAgICB9DQoNCiAgICAvLyBDaGVjayBmb3IgMjQ6MDA6MDAuMDAwDQogICAgaWYgKA0KICAgICAgY29uZmlnLl9hW0hPVVJdID09PSAyNCAmJg0KICAgICAgY29uZmlnLl9hW01JTlVURV0gPT09IDAgJiYNCiAgICAgIGNvbmZpZy5fYVtTRUNPTkRdID09PSAwICYmDQogICAgICBjb25maWcuX2FbTUlMTElTRUNPTkRdID09PSAwDQogICAgKSB7DQogICAgICBjb25maWcuX25leHREYXkgPSB0cnVlOw0KICAgICAgY29uZmlnLl9hW0hPVVJdID0gMDsNCiAgICB9DQoNCiAgICBjb25maWcuX2QgPSAoY29uZmlnLl91c2VVVEMgPyBjcmVhdGVVVENEYXRlIDogY3JlYXRlRGF0ZSkuYXBwbHkoDQogICAgICBudWxsLA0KICAgICAgaW5wdXQNCiAgICApOw0KICAgIC8vIEFwcGx5IHRpbWV6b25lIG9mZnNldCBmcm9tIGlucHV0LiBUaGUgYWN0dWFsIHV0Y09mZnNldCBjYW4gYmUgY2hhbmdlZA0KICAgIC8vIHdpdGggcGFyc2Vab25lLg0KICAgIGlmIChjb25maWcuX3R6bSAhPSBudWxsKSB7DQogICAgICBjb25maWcuX2Quc2V0VVRDTWludXRlcyhjb25maWcuX2QuZ2V0VVRDTWludXRlcygpIC0gY29uZmlnLl90em0pOw0KICAgIH0NCg0KICAgIGlmIChjb25maWcuX25leHREYXkpIHsNCiAgICAgIGNvbmZpZy5fYVtIT1VSXSA9IDI0Ow0KICAgIH0NCiAgfQ0KDQogIGZ1bmN0aW9uIGRheU9mWWVhckZyb21XZWVrSW5mbyhjb25maWcpIHsNCiAgICB2YXIgdywgd2Vla1llYXIsIHdlZWssIHdlZWtkYXksIGRvdywgZG95LCB0ZW1wOw0KDQogICAgdyA9IGNvbmZpZy5fdzsNCiAgICBpZiAody5HRyAhPSBudWxsIHx8IHcuVyAhPSBudWxsIHx8IHcuRSAhPSBudWxsKSB7DQogICAgICBkb3cgPSAxOw0KICAgICAgZG95ID0gNDsNCg0KICAgICAgLy8gVE9ETzogV2UgbmVlZCB0byB0YWtlIHRoZSBjdXJyZW50IGlzb1dlZWtZZWFyLCBidXQgdGhhdCBkZXBlbmRzIG9uDQogICAgICAvLyBob3cgd2UgaW50ZXJwcmV0IG5vdyAobG9jYWwsIHV0YywgZml4ZWQgb2Zmc2V0KS4gU28gY3JlYXRlDQogICAgICAvLyBhIG5vdyB2ZXJzaW9uIG9mIGN1cnJlbnQgY29uZmlnICh0YWtlIGxvY2FsL3V0Yy9vZmZzZXQgZmxhZ3MsIGFuZA0KICAgICAgLy8gY3JlYXRlIG5vdykuDQogICAgICB3ZWVrWWVhciA9IGRlZmF1bHRzKA0KICAgICAgICB3LkdHLA0KICAgICAgICBjb25maWcuX2FbWUVBUl0sDQogICAgICAgIHdlZWtPZlllYXIobG9jYWxfX2NyZWF0ZUxvY2FsKCksIDEsIDQpLnllYXINCiAgICAgICk7DQogICAgICB3ZWVrID0gZGVmYXVsdHMody5XLCAxKTsNCiAgICAgIHdlZWtkYXkgPSBkZWZhdWx0cyh3LkUsIDEpOw0KICAgIH0gZWxzZSB7DQogICAgICBkb3cgPSBjb25maWcuX2xvY2FsZS5fd2Vlay5kb3c7DQogICAgICBkb3kgPSBjb25maWcuX2xvY2FsZS5fd2Vlay5kb3k7DQoNCiAgICAgIHdlZWtZZWFyID0gZGVmYXVsdHMoDQogICAgICAgIHcuZ2csDQogICAgICAgIGNvbmZpZy5fYVtZRUFSXSwNCiAgICAgICAgd2Vla09mWWVhcihsb2NhbF9fY3JlYXRlTG9jYWwoKSwgZG93LCBkb3kpLnllYXINCiAgICAgICk7DQogICAgICB3ZWVrID0gZGVmYXVsdHMody53LCAxKTsNCg0KICAgICAgaWYgKHcuZCAhPSBudWxsKSB7DQogICAgICAgIC8vIHdlZWtkYXkgLS0gbG93IGRheSBudW1iZXJzIGFyZSBjb25zaWRlcmVkIG5leHQgd2Vlaw0KICAgICAgICB3ZWVrZGF5ID0gdy5kOw0KICAgICAgICBpZiAod2Vla2RheSA8IGRvdykgew0KICAgICAgICAgICsrd2VlazsNCiAgICAgICAgfQ0KICAgICAgfSBlbHNlIGlmICh3LmUgIT0gbnVsbCkgew0KICAgICAgICAvLyBsb2NhbCB3ZWVrZGF5IC0tIGNvdW50aW5nIHN0YXJ0cyBmcm9tIGJlZ2luaW5nIG9mIHdlZWsNCiAgICAgICAgd2Vla2RheSA9IHcuZSArIGRvdzsNCiAgICAgIH0gZWxzZSB7DQogICAgICAgIC8vIGRlZmF1bHQgdG8gYmVnaW5pbmcgb2Ygd2Vlaw0KICAgICAgICB3ZWVrZGF5ID0gZG93Ow0KICAgICAgfQ0KICAgIH0NCiAgICB0ZW1wID0gZGF5T2ZZZWFyRnJvbVdlZWtzKHdlZWtZZWFyLCB3ZWVrLCB3ZWVrZGF5LCBkb3ksIGRvdyk7DQoNCiAgICBjb25maWcuX2FbWUVBUl0gPSB0ZW1wLnllYXI7DQogICAgY29uZmlnLl9kYXlPZlllYXIgPSB0ZW1wLmRheU9mWWVhcjsNCiAgfQ0KDQogIHV0aWxzX2hvb2tzX19ob29rcy5JU09fODYwMSA9IGZ1bmN0aW9uKCkge307DQoNCiAgLy8gZGF0ZSBmcm9tIHN0cmluZyBhbmQgZm9ybWF0IHN0cmluZw0KICBmdW5jdGlvbiBjb25maWdGcm9tU3RyaW5nQW5kRm9ybWF0KGNvbmZpZykgew0KICAgIC8vIFRPRE86IE1vdmUgdGhpcyB0byBhbm90aGVyIHBhcnQgb2YgdGhlIGNyZWF0aW9uIGZsb3cgdG8gcHJldmVudCBjaXJjdWxhciBkZXBzDQogICAgaWYgKGNvbmZpZy5fZiA9PT0gdXRpbHNfaG9va3NfX2hvb2tzLklTT184NjAxKSB7DQogICAgICBjb25maWdGcm9tSVNPKGNvbmZpZyk7DQogICAgICByZXR1cm47DQogICAgfQ0KDQogICAgY29uZmlnLl9hID0gW107DQogICAgZ2V0UGFyc2luZ0ZsYWdzKGNvbmZpZykuZW1wdHkgPSB0cnVlOw0KDQogICAgLy8gVGhpcyBhcnJheSBpcyB1c2VkIHRvIG1ha2UgYSBEYXRlLCBlaXRoZXIgd2l0aCBgbmV3IERhdGVgIG9yIGBEYXRlLlVUQ2ANCiAgICB2YXIgc3RyaW5nID0gIiIgKyBjb25maWcuX2ksDQogICAgICBpLA0KICAgICAgcGFyc2VkSW5wdXQsDQogICAgICB0b2tlbnMsDQogICAgICB0b2tlbiwNCiAgICAgIHNraXBwZWQsDQogICAgICBzdHJpbmdMZW5ndGggPSBzdHJpbmcubGVuZ3RoLA0KICAgICAgdG90YWxQYXJzZWRJbnB1dExlbmd0aCA9IDA7DQoNCiAgICB0b2tlbnMgPQ0KICAgICAgZXhwYW5kRm9ybWF0KGNvbmZpZy5fZiwgY29uZmlnLl9sb2NhbGUpLm1hdGNoKGZvcm1hdHRpbmdUb2tlbnMpIHx8IFtdOw0KDQogICAgZm9yIChpID0gMDsgaSA8IHRva2Vucy5sZW5ndGg7IGkrKykgew0KICAgICAgdG9rZW4gPSB0b2tlbnNbaV07DQogICAgICBwYXJzZWRJbnB1dCA9IChzdHJpbmcubWF0Y2goZ2V0UGFyc2VSZWdleEZvclRva2VuKHRva2VuLCBjb25maWcpKSB8fA0KICAgICAgICBbXSlbMF07DQogICAgICBpZiAocGFyc2VkSW5wdXQpIHsNCiAgICAgICAgc2tpcHBlZCA9IHN0cmluZy5zdWJzdHIoMCwgc3RyaW5nLmluZGV4T2YocGFyc2VkSW5wdXQpKTsNCiAgICAgICAgaWYgKHNraXBwZWQubGVuZ3RoID4gMCkgew0KICAgICAgICAgIGdldFBhcnNpbmdGbGFncyhjb25maWcpLnVudXNlZElucHV0LnB1c2goc2tpcHBlZCk7DQogICAgICAgIH0NCiAgICAgICAgc3RyaW5nID0gc3RyaW5nLnNsaWNlKHN0cmluZy5pbmRleE9mKHBhcnNlZElucHV0KSArIHBhcnNlZElucHV0Lmxlbmd0aCk7DQogICAgICAgIHRvdGFsUGFyc2VkSW5wdXRMZW5ndGggKz0gcGFyc2VkSW5wdXQubGVuZ3RoOw0KICAgICAgfQ0KICAgICAgLy8gZG9uJ3QgcGFyc2UgaWYgaXQncyBub3QgYSBrbm93biB0b2tlbg0KICAgICAgaWYgKGZvcm1hdFRva2VuRnVuY3Rpb25zW3Rva2VuXSkgew0KICAgICAgICBpZiAocGFyc2VkSW5wdXQpIHsNCiAgICAgICAgICBnZXRQYXJzaW5nRmxhZ3MoY29uZmlnKS5lbXB0eSA9IGZhbHNlOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgIGdldFBhcnNpbmdGbGFncyhjb25maWcpLnVudXNlZFRva2Vucy5wdXNoKHRva2VuKTsNCiAgICAgICAgfQ0KICAgICAgICBhZGRUaW1lVG9BcnJheUZyb21Ub2tlbih0b2tlbiwgcGFyc2VkSW5wdXQsIGNvbmZpZyk7DQogICAgICB9IGVsc2UgaWYgKGNvbmZpZy5fc3RyaWN0ICYmICFwYXJzZWRJbnB1dCkgew0KICAgICAgICBnZXRQYXJzaW5nRmxhZ3MoY29uZmlnKS51bnVzZWRUb2tlbnMucHVzaCh0b2tlbik7DQogICAgICB9DQogICAgfQ0KDQogICAgLy8gYWRkIHJlbWFpbmluZyB1bnBhcnNlZCBpbnB1dCBsZW5ndGggdG8gdGhlIHN0cmluZw0KICAgIGdldFBhcnNpbmdGbGFncyhjb25maWcpLmNoYXJzTGVmdE92ZXIgPQ0KICAgICAgc3RyaW5nTGVuZ3RoIC0gdG90YWxQYXJzZWRJbnB1dExlbmd0aDsNCiAgICBpZiAoc3RyaW5nLmxlbmd0aCA+IDApIHsNCiAgICAgIGdldFBhcnNpbmdGbGFncyhjb25maWcpLnVudXNlZElucHV0LnB1c2goc3RyaW5nKTsNCiAgICB9DQoNCiAgICAvLyBjbGVhciBfMTJoIGZsYWcgaWYgaG91ciBpcyA8PSAxMg0KICAgIGlmICgNCiAgICAgIGdldFBhcnNpbmdGbGFncyhjb25maWcpLmJpZ0hvdXIgPT09IHRydWUgJiYNCiAgICAgIGNvbmZpZy5fYVtIT1VSXSA8PSAxMiAmJg0KICAgICAgY29uZmlnLl9hW0hPVVJdID4gMA0KICAgICkgew0KICAgICAgZ2V0UGFyc2luZ0ZsYWdzKGNvbmZpZykuYmlnSG91ciA9IHVuZGVmaW5lZDsNCiAgICB9DQogICAgLy8gaGFuZGxlIG1lcmlkaWVtDQogICAgY29uZmlnLl9hW0hPVVJdID0gbWVyaWRpZW1GaXhXcmFwKA0KICAgICAgY29uZmlnLl9sb2NhbGUsDQogICAgICBjb25maWcuX2FbSE9VUl0sDQogICAgICBjb25maWcuX21lcmlkaWVtDQogICAgKTsNCg0KICAgIGNvbmZpZ0Zyb21BcnJheShjb25maWcpOw0KICAgIGNoZWNrT3ZlcmZsb3coY29uZmlnKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIG1lcmlkaWVtRml4V3JhcChsb2NhbGUsIGhvdXIsIG1lcmlkaWVtKSB7DQogICAgdmFyIGlzUG07DQoNCiAgICBpZiAobWVyaWRpZW0gPT0gbnVsbCkgew0KICAgICAgLy8gbm90aGluZyB0byBkbw0KICAgICAgcmV0dXJuIGhvdXI7DQogICAgfQ0KICAgIGlmIChsb2NhbGUubWVyaWRpZW1Ib3VyICE9IG51bGwpIHsNCiAgICAgIHJldHVybiBsb2NhbGUubWVyaWRpZW1Ib3VyKGhvdXIsIG1lcmlkaWVtKTsNCiAgICB9IGVsc2UgaWYgKGxvY2FsZS5pc1BNICE9IG51bGwpIHsNCiAgICAgIC8vIEZhbGxiYWNrDQogICAgICBpc1BtID0gbG9jYWxlLmlzUE0obWVyaWRpZW0pOw0KICAgICAgaWYgKGlzUG0gJiYgaG91ciA8IDEyKSB7DQogICAgICAgIGhvdXIgKz0gMTI7DQogICAgICB9DQogICAgICBpZiAoIWlzUG0gJiYgaG91ciA9PT0gMTIpIHsNCiAgICAgICAgaG91ciA9IDA7DQogICAgICB9DQogICAgICByZXR1cm4gaG91cjsNCiAgICB9IGVsc2Ugew0KICAgICAgLy8gdGhpcyBpcyBub3Qgc3VwcG9zZWQgdG8gaGFwcGVuDQogICAgICByZXR1cm4gaG91cjsNCiAgICB9DQogIH0NCg0KICBmdW5jdGlvbiBjb25maWdGcm9tU3RyaW5nQW5kQXJyYXkoY29uZmlnKSB7DQogICAgdmFyIHRlbXBDb25maWcsIGJlc3RNb21lbnQsIHNjb3JlVG9CZWF0LCBpLCBjdXJyZW50U2NvcmU7DQoNCiAgICBpZiAoY29uZmlnLl9mLmxlbmd0aCA9PT0gMCkgew0KICAgICAgZ2V0UGFyc2luZ0ZsYWdzKGNvbmZpZykuaW52YWxpZEZvcm1hdCA9IHRydWU7DQogICAgICBjb25maWcuX2QgPSBuZXcgRGF0ZShOYU4pOw0KICAgICAgcmV0dXJuOw0KICAgIH0NCg0KICAgIGZvciAoaSA9IDA7IGkgPCBjb25maWcuX2YubGVuZ3RoOyBpKyspIHsNCiAgICAgIGN1cnJlbnRTY29yZSA9IDA7DQogICAgICB0ZW1wQ29uZmlnID0gY29weUNvbmZpZyh7fSwgY29uZmlnKTsNCiAgICAgIGlmIChjb25maWcuX3VzZVVUQyAhPSBudWxsKSB7DQogICAgICAgIHRlbXBDb25maWcuX3VzZVVUQyA9IGNvbmZpZy5fdXNlVVRDOw0KICAgICAgfQ0KICAgICAgdGVtcENvbmZpZy5fZiA9IGNvbmZpZy5fZltpXTsNCiAgICAgIGNvbmZpZ0Zyb21TdHJpbmdBbmRGb3JtYXQodGVtcENvbmZpZyk7DQoNCiAgICAgIGlmICghdmFsaWRfX2lzVmFsaWQodGVtcENvbmZpZykpIHsNCiAgICAgICAgY29udGludWU7DQogICAgICB9DQoNCiAgICAgIC8vIGlmIHRoZXJlIGlzIGFueSBpbnB1dCB0aGF0IHdhcyBub3QgcGFyc2VkIGFkZCBhIHBlbmFsdHkgZm9yIHRoYXQgZm9ybWF0DQogICAgICBjdXJyZW50U2NvcmUgKz0gZ2V0UGFyc2luZ0ZsYWdzKHRlbXBDb25maWcpLmNoYXJzTGVmdE92ZXI7DQoNCiAgICAgIC8vb3IgdG9rZW5zDQogICAgICBjdXJyZW50U2NvcmUgKz0gZ2V0UGFyc2luZ0ZsYWdzKHRlbXBDb25maWcpLnVudXNlZFRva2Vucy5sZW5ndGggKiAxMDsNCg0KICAgICAgZ2V0UGFyc2luZ0ZsYWdzKHRlbXBDb25maWcpLnNjb3JlID0gY3VycmVudFNjb3JlOw0KDQogICAgICBpZiAoc2NvcmVUb0JlYXQgPT0gbnVsbCB8fCBjdXJyZW50U2NvcmUgPCBzY29yZVRvQmVhdCkgew0KICAgICAgICBzY29yZVRvQmVhdCA9IGN1cnJlbnRTY29yZTsNCiAgICAgICAgYmVzdE1vbWVudCA9IHRlbXBDb25maWc7DQogICAgICB9DQogICAgfQ0KDQogICAgZXh0ZW5kKGNvbmZpZywgYmVzdE1vbWVudCB8fCB0ZW1wQ29uZmlnKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIGNvbmZpZ0Zyb21PYmplY3QoY29uZmlnKSB7DQogICAgaWYgKGNvbmZpZy5fZCkgew0KICAgICAgcmV0dXJuOw0KICAgIH0NCg0KICAgIHZhciBpID0gbm9ybWFsaXplT2JqZWN0VW5pdHMoY29uZmlnLl9pKTsNCiAgICBjb25maWcuX2EgPSBbDQogICAgICBpLnllYXIsDQogICAgICBpLm1vbnRoLA0KICAgICAgaS5kYXkgfHwgaS5kYXRlLA0KICAgICAgaS5ob3VyLA0KICAgICAgaS5taW51dGUsDQogICAgICBpLnNlY29uZCwNCiAgICAgIGkubWlsbGlzZWNvbmQNCiAgICBdOw0KDQogICAgY29uZmlnRnJvbUFycmF5KGNvbmZpZyk7DQogIH0NCg0KICBmdW5jdGlvbiBjcmVhdGVGcm9tQ29uZmlnKGNvbmZpZykgew0KICAgIHZhciByZXMgPSBuZXcgTW9tZW50KGNoZWNrT3ZlcmZsb3cocHJlcGFyZUNvbmZpZyhjb25maWcpKSk7DQogICAgaWYgKHJlcy5fbmV4dERheSkgew0KICAgICAgLy8gQWRkaW5nIGlzIHNtYXJ0IGVub3VnaCBhcm91bmQgRFNUDQogICAgICByZXMuYWRkKDEsICJkIik7DQogICAgICByZXMuX25leHREYXkgPSB1bmRlZmluZWQ7DQogICAgfQ0KDQogICAgcmV0dXJuIHJlczsNCiAgfQ0KDQogIGZ1bmN0aW9uIHByZXBhcmVDb25maWcoY29uZmlnKSB7DQogICAgdmFyIGlucHV0ID0gY29uZmlnLl9pLA0KICAgICAgZm9ybWF0ID0gY29uZmlnLl9mOw0KDQogICAgY29uZmlnLl9sb2NhbGUgPSBjb25maWcuX2xvY2FsZSB8fCBsb2NhbGVfbG9jYWxlc19fZ2V0TG9jYWxlKGNvbmZpZy5fbCk7DQoNCiAgICBpZiAoaW5wdXQgPT09IG51bGwgfHwgKGZvcm1hdCA9PT0gdW5kZWZpbmVkICYmIGlucHV0ID09PSAiIikpIHsNCiAgICAgIHJldHVybiB2YWxpZF9fY3JlYXRlSW52YWxpZCh7IG51bGxJbnB1dDogdHJ1ZSB9KTsNCiAgICB9DQoNCiAgICBpZiAodHlwZW9mIGlucHV0ID09PSAic3RyaW5nIikgew0KICAgICAgY29uZmlnLl9pID0gaW5wdXQgPSBjb25maWcuX2xvY2FsZS5wcmVwYXJzZShpbnB1dCk7DQogICAgfQ0KDQogICAgaWYgKGlzTW9tZW50KGlucHV0KSkgew0KICAgICAgcmV0dXJuIG5ldyBNb21lbnQoY2hlY2tPdmVyZmxvdyhpbnB1dCkpOw0KICAgIH0gZWxzZSBpZiAoaXNBcnJheShmb3JtYXQpKSB7DQogICAgICBjb25maWdGcm9tU3RyaW5nQW5kQXJyYXkoY29uZmlnKTsNCiAgICB9IGVsc2UgaWYgKGZvcm1hdCkgew0KICAgICAgY29uZmlnRnJvbVN0cmluZ0FuZEZvcm1hdChjb25maWcpOw0KICAgIH0gZWxzZSBpZiAoaXNEYXRlKGlucHV0KSkgew0KICAgICAgY29uZmlnLl9kID0gaW5wdXQ7DQogICAgfSBlbHNlIHsNCiAgICAgIGNvbmZpZ0Zyb21JbnB1dChjb25maWcpOw0KICAgIH0NCg0KICAgIHJldHVybiBjb25maWc7DQogIH0NCg0KICBmdW5jdGlvbiBjb25maWdGcm9tSW5wdXQoY29uZmlnKSB7DQogICAgdmFyIGlucHV0ID0gY29uZmlnLl9pOw0KICAgIGlmIChpbnB1dCA9PT0gdW5kZWZpbmVkKSB7DQogICAgICBjb25maWcuX2QgPSBuZXcgRGF0ZSgpOw0KICAgIH0gZWxzZSBpZiAoaXNEYXRlKGlucHV0KSkgew0KICAgICAgY29uZmlnLl9kID0gbmV3IERhdGUoK2lucHV0KTsNCiAgICB9IGVsc2UgaWYgKHR5cGVvZiBpbnB1dCA9PT0gInN0cmluZyIpIHsNCiAgICAgIGNvbmZpZ0Zyb21TdHJpbmcoY29uZmlnKTsNCiAgICB9IGVsc2UgaWYgKGlzQXJyYXkoaW5wdXQpKSB7DQogICAgICBjb25maWcuX2EgPSBtYXAoaW5wdXQuc2xpY2UoMCksIGZ1bmN0aW9uKG9iaikgew0KICAgICAgICByZXR1cm4gcGFyc2VJbnQob2JqLCAxMCk7DQogICAgICB9KTsNCiAgICAgIGNvbmZpZ0Zyb21BcnJheShjb25maWcpOw0KICAgIH0gZWxzZSBpZiAodHlwZW9mIGlucHV0ID09PSAib2JqZWN0Iikgew0KICAgICAgY29uZmlnRnJvbU9iamVjdChjb25maWcpOw0KICAgIH0gZWxzZSBpZiAodHlwZW9mIGlucHV0ID09PSAibnVtYmVyIikgew0KICAgICAgLy8gZnJvbSBtaWxsaXNlY29uZHMNCiAgICAgIGNvbmZpZy5fZCA9IG5ldyBEYXRlKGlucHV0KTsNCiAgICB9IGVsc2Ugew0KICAgICAgdXRpbHNfaG9va3NfX2hvb2tzLmNyZWF0ZUZyb21JbnB1dEZhbGxiYWNrKGNvbmZpZyk7DQogICAgfQ0KICB9DQoNCiAgZnVuY3Rpb24gY3JlYXRlTG9jYWxPclVUQyhpbnB1dCwgZm9ybWF0LCBsb2NhbGUsIHN0cmljdCwgaXNVVEMpIHsNCiAgICB2YXIgYyA9IHt9Ow0KDQogICAgaWYgKHR5cGVvZiBsb2NhbGUgPT09ICJib29sZWFuIikgew0KICAgICAgc3RyaWN0ID0gbG9jYWxlOw0KICAgICAgbG9jYWxlID0gdW5kZWZpbmVkOw0KICAgIH0NCiAgICAvLyBvYmplY3QgY29uc3RydWN0aW9uIG11c3QgYmUgZG9uZSB0aGlzIHdheS4NCiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vbW9tZW50L21vbWVudC9pc3N1ZXMvMTQyMw0KICAgIGMuX2lzQU1vbWVudE9iamVjdCA9IHRydWU7DQogICAgYy5fdXNlVVRDID0gYy5faXNVVEMgPSBpc1VUQzsNCiAgICBjLl9sID0gbG9jYWxlOw0KICAgIGMuX2kgPSBpbnB1dDsNCiAgICBjLl9mID0gZm9ybWF0Ow0KICAgIGMuX3N0cmljdCA9IHN0cmljdDsNCg0KICAgIHJldHVybiBjcmVhdGVGcm9tQ29uZmlnKGMpOw0KICB9DQoNCiAgZnVuY3Rpb24gbG9jYWxfX2NyZWF0ZUxvY2FsKGlucHV0LCBmb3JtYXQsIGxvY2FsZSwgc3RyaWN0KSB7DQogICAgcmV0dXJuIGNyZWF0ZUxvY2FsT3JVVEMoaW5wdXQsIGZvcm1hdCwgbG9jYWxlLCBzdHJpY3QsIGZhbHNlKTsNCiAgfQ0KDQogIHZhciBwcm90b3R5cGVNaW4gPSBkZXByZWNhdGUoDQogICAgIm1vbWVudCgpLm1pbiBpcyBkZXByZWNhdGVkLCB1c2UgbW9tZW50Lm1pbiBpbnN0ZWFkLiBodHRwczovL2dpdGh1Yi5jb20vbW9tZW50L21vbWVudC9pc3N1ZXMvMTU0OCIsDQogICAgZnVuY3Rpb24oKSB7DQogICAgICB2YXIgb3RoZXIgPSBsb2NhbF9fY3JlYXRlTG9jYWwuYXBwbHkobnVsbCwgYXJndW1lbnRzKTsNCiAgICAgIHJldHVybiBvdGhlciA8IHRoaXMgPyB0aGlzIDogb3RoZXI7DQogICAgfQ0KICApOw0KDQogIHZhciBwcm90b3R5cGVNYXggPSBkZXByZWNhdGUoDQogICAgIm1vbWVudCgpLm1heCBpcyBkZXByZWNhdGVkLCB1c2UgbW9tZW50Lm1heCBpbnN0ZWFkLiBodHRwczovL2dpdGh1Yi5jb20vbW9tZW50L21vbWVudC9pc3N1ZXMvMTU0OCIsDQogICAgZnVuY3Rpb24oKSB7DQogICAgICB2YXIgb3RoZXIgPSBsb2NhbF9fY3JlYXRlTG9jYWwuYXBwbHkobnVsbCwgYXJndW1lbnRzKTsNCiAgICAgIHJldHVybiBvdGhlciA+IHRoaXMgPyB0aGlzIDogb3RoZXI7DQogICAgfQ0KICApOw0KDQogIC8vIFBpY2sgYSBtb21lbnQgbSBmcm9tIG1vbWVudHMgc28gdGhhdCBtW2ZuXShvdGhlcikgaXMgdHJ1ZSBmb3IgYWxsDQogIC8vIG90aGVyLiBUaGlzIHJlbGllcyBvbiB0aGUgZnVuY3Rpb24gZm4gdG8gYmUgdHJhbnNpdGl2ZS4NCiAgLy8NCiAgLy8gbW9tZW50cyBzaG91bGQgZWl0aGVyIGJlIGFuIGFycmF5IG9mIG1vbWVudCBvYmplY3RzIG9yIGFuIGFycmF5LCB3aG9zZQ0KICAvLyBmaXJzdCBlbGVtZW50IGlzIGFuIGFycmF5IG9mIG1vbWVudCBvYmplY3RzLg0KICBmdW5jdGlvbiBwaWNrQnkoZm4sIG1vbWVudHMpIHsNCiAgICB2YXIgcmVzLCBpOw0KICAgIGlmIChtb21lbnRzLmxlbmd0aCA9PT0gMSAmJiBpc0FycmF5KG1vbWVudHNbMF0pKSB7DQogICAgICBtb21lbnRzID0gbW9tZW50c1swXTsNCiAgICB9DQogICAgaWYgKCFtb21lbnRzLmxlbmd0aCkgew0KICAgICAgcmV0dXJuIGxvY2FsX19jcmVhdGVMb2NhbCgpOw0KICAgIH0NCiAgICByZXMgPSBtb21lbnRzWzBdOw0KICAgIGZvciAoaSA9IDE7IGkgPCBtb21lbnRzLmxlbmd0aDsgKytpKSB7DQogICAgICBpZiAoIW1vbWVudHNbaV0uaXNWYWxpZCgpIHx8IG1vbWVudHNbaV1bZm5dKHJlcykpIHsNCiAgICAgICAgcmVzID0gbW9tZW50c1tpXTsNCiAgICAgIH0NCiAgICB9DQogICAgcmV0dXJuIHJlczsNCiAgfQ0KDQogIC8vIFRPRE86IFVzZSBbXS5zb3J0IGluc3RlYWQ/DQogIGZ1bmN0aW9uIG1pbigpIHsNCiAgICB2YXIgYXJncyA9IFtdLnNsaWNlLmNhbGwoYXJndW1lbnRzLCAwKTsNCg0KICAgIHJldHVybiBwaWNrQnkoImlzQmVmb3JlIiwgYXJncyk7DQogIH0NCg0KICBmdW5jdGlvbiBtYXgoKSB7DQogICAgdmFyIGFyZ3MgPSBbXS5zbGljZS5jYWxsKGFyZ3VtZW50cywgMCk7DQoNCiAgICByZXR1cm4gcGlja0J5KCJpc0FmdGVyIiwgYXJncyk7DQogIH0NCg0KICBmdW5jdGlvbiBEdXJhdGlvbihkdXJhdGlvbikgew0KICAgIHZhciBub3JtYWxpemVkSW5wdXQgPSBub3JtYWxpemVPYmplY3RVbml0cyhkdXJhdGlvbiksDQogICAgICB5ZWFycyA9IG5vcm1hbGl6ZWRJbnB1dC55ZWFyIHx8IDAsDQogICAgICBxdWFydGVycyA9IG5vcm1hbGl6ZWRJbnB1dC5xdWFydGVyIHx8IDAsDQogICAgICBtb250aHMgPSBub3JtYWxpemVkSW5wdXQubW9udGggfHwgMCwNCiAgICAgIHdlZWtzID0gbm9ybWFsaXplZElucHV0LndlZWsgfHwgMCwNCiAgICAgIGRheXMgPSBub3JtYWxpemVkSW5wdXQuZGF5IHx8IDAsDQogICAgICBob3VycyA9IG5vcm1hbGl6ZWRJbnB1dC5ob3VyIHx8IDAsDQogICAgICBtaW51dGVzID0gbm9ybWFsaXplZElucHV0Lm1pbnV0ZSB8fCAwLA0KICAgICAgc2Vjb25kcyA9IG5vcm1hbGl6ZWRJbnB1dC5zZWNvbmQgfHwgMCwNCiAgICAgIG1pbGxpc2Vjb25kcyA9IG5vcm1hbGl6ZWRJbnB1dC5taWxsaXNlY29uZCB8fCAwOw0KDQogICAgLy8gcmVwcmVzZW50YXRpb24gZm9yIGRhdGVBZGRSZW1vdmUNCiAgICB0aGlzLl9taWxsaXNlY29uZHMgPQ0KICAgICAgK21pbGxpc2Vjb25kcyArDQogICAgICBzZWNvbmRzICogMWUzICsgLy8gMTAwMA0KICAgICAgbWludXRlcyAqIDZlNCArIC8vIDEwMDAgKiA2MA0KICAgICAgaG91cnMgKiAzNmU1OyAvLyAxMDAwICogNjAgKiA2MA0KICAgIC8vIEJlY2F1c2Ugb2YgZGF0ZUFkZFJlbW92ZSB0cmVhdHMgMjQgaG91cnMgYXMgZGlmZmVyZW50IGZyb20gYQ0KICAgIC8vIGRheSB3aGVuIHdvcmtpbmcgYXJvdW5kIERTVCwgd2UgbmVlZCB0byBzdG9yZSB0aGVtIHNlcGFyYXRlbHkNCiAgICB0aGlzLl9kYXlzID0gK2RheXMgKyB3ZWVrcyAqIDc7DQogICAgLy8gSXQgaXMgaW1wb3NzaWJsZSB0cmFuc2xhdGUgbW9udGhzIGludG8gZGF5cyB3aXRob3V0IGtub3dpbmcNCiAgICAvLyB3aGljaCBtb250aHMgeW91IGFyZSBhcmUgdGFsa2luZyBhYm91dCwgc28gd2UgaGF2ZSB0byBzdG9yZQ0KICAgIC8vIGl0IHNlcGFyYXRlbHkuDQogICAgdGhpcy5fbW9udGhzID0gK21vbnRocyArIHF1YXJ0ZXJzICogMyArIHllYXJzICogMTI7DQoNCiAgICB0aGlzLl9kYXRhID0ge307DQoNCiAgICB0aGlzLl9sb2NhbGUgPSBsb2NhbGVfbG9jYWxlc19fZ2V0TG9jYWxlKCk7DQoNCiAgICB0aGlzLl9idWJibGUoKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIGlzRHVyYXRpb24ob2JqKSB7DQogICAgcmV0dXJuIG9iaiBpbnN0YW5jZW9mIER1cmF0aW9uOw0KICB9DQoNCiAgZnVuY3Rpb24gb2Zmc2V0KHRva2VuLCBzZXBhcmF0b3IpIHsNCiAgICBhZGRGb3JtYXRUb2tlbih0b2tlbiwgMCwgMCwgZnVuY3Rpb24oKSB7DQogICAgICB2YXIgb2Zmc2V0ID0gdGhpcy51dGNPZmZzZXQoKTsNCiAgICAgIHZhciBzaWduID0gIisiOw0KICAgICAgaWYgKG9mZnNldCA8IDApIHsNCiAgICAgICAgb2Zmc2V0ID0gLW9mZnNldDsNCiAgICAgICAgc2lnbiA9ICItIjsNCiAgICAgIH0NCiAgICAgIHJldHVybiAoDQogICAgICAgIHNpZ24gKw0KICAgICAgICB6ZXJvRmlsbCh+fihvZmZzZXQgLyA2MCksIDIpICsNCiAgICAgICAgc2VwYXJhdG9yICsNCiAgICAgICAgemVyb0ZpbGwofn5vZmZzZXQgJSA2MCwgMikNCiAgICAgICk7DQogICAgfSk7DQogIH0NCg0KICBvZmZzZXQoIloiLCAiOiIpOw0KICBvZmZzZXQoIlpaIiwgIiIpOw0KDQogIC8vIFBBUlNJTkcNCg0KICBhZGRSZWdleFRva2VuKCJaIiwgbWF0Y2hPZmZzZXQpOw0KICBhZGRSZWdleFRva2VuKCJaWiIsIG1hdGNoT2Zmc2V0KTsNCiAgYWRkUGFyc2VUb2tlbihbIloiLCAiWloiXSwgZnVuY3Rpb24oaW5wdXQsIGFycmF5LCBjb25maWcpIHsNCiAgICBjb25maWcuX3VzZVVUQyA9IHRydWU7DQogICAgY29uZmlnLl90em0gPSBvZmZzZXRGcm9tU3RyaW5nKGlucHV0KTsNCiAgfSk7DQoNCiAgLy8gSEVMUEVSUw0KDQogIC8vIHRpbWV6b25lIGNodW5rZXINCiAgLy8gJysxMDowMCcgPiBbJzEwJywgICcwMCddDQogIC8vICctMTUzMCcgID4gWyctMTUnLCAnMzAnXQ0KICB2YXIgY2h1bmtPZmZzZXQgPSAvKFtcK1wtXXxcZFxkKS9naTsNCg0KICBmdW5jdGlvbiBvZmZzZXRGcm9tU3RyaW5nKHN0cmluZykgew0KICAgIHZhciBtYXRjaGVzID0gKHN0cmluZyB8fCAiIikubWF0Y2gobWF0Y2hPZmZzZXQpIHx8IFtdOw0KICAgIHZhciBjaHVuayA9IG1hdGNoZXNbbWF0Y2hlcy5sZW5ndGggLSAxXSB8fCBbXTsNCiAgICB2YXIgcGFydHMgPSAoY2h1bmsgKyAiIikubWF0Y2goY2h1bmtPZmZzZXQpIHx8IFsiLSIsIDAsIDBdOw0KICAgIHZhciBtaW51dGVzID0gKyhwYXJ0c1sxXSAqIDYwKSArIHRvSW50KHBhcnRzWzJdKTsNCg0KICAgIHJldHVybiBwYXJ0c1swXSA9PT0gIisiID8gbWludXRlcyA6IC1taW51dGVzOw0KICB9DQoNCiAgLy8gUmV0dXJuIGEgbW9tZW50IGZyb20gaW5wdXQsIHRoYXQgaXMgbG9jYWwvdXRjL3pvbmUgZXF1aXZhbGVudCB0byBtb2RlbC4NCiAgZnVuY3Rpb24gY2xvbmVXaXRoT2Zmc2V0KGlucHV0LCBtb2RlbCkgew0KICAgIHZhciByZXMsIGRpZmY7DQogICAgaWYgKG1vZGVsLl9pc1VUQykgew0KICAgICAgcmVzID0gbW9kZWwuY2xvbmUoKTsNCiAgICAgIGRpZmYgPQ0KICAgICAgICAoaXNNb21lbnQoaW5wdXQpIHx8IGlzRGF0ZShpbnB1dCkNCiAgICAgICAgICA/ICtpbnB1dA0KICAgICAgICAgIDogK2xvY2FsX19jcmVhdGVMb2NhbChpbnB1dCkpIC0gK3JlczsNCiAgICAgIC8vIFVzZSBsb3ctbGV2ZWwgYXBpLCBiZWNhdXNlIHRoaXMgZm4gaXMgbG93LWxldmVsIGFwaS4NCiAgICAgIHJlcy5fZC5zZXRUaW1lKCtyZXMuX2QgKyBkaWZmKTsNCiAgICAgIHV0aWxzX2hvb2tzX19ob29rcy51cGRhdGVPZmZzZXQocmVzLCBmYWxzZSk7DQogICAgICByZXR1cm4gcmVzOw0KICAgIH0gZWxzZSB7DQogICAgICByZXR1cm4gbG9jYWxfX2NyZWF0ZUxvY2FsKGlucHV0KS5sb2NhbCgpOw0KICAgIH0NCiAgfQ0KDQogIGZ1bmN0aW9uIGdldERhdGVPZmZzZXQobSkgew0KICAgIC8vIE9uIEZpcmVmb3guMjQgRGF0ZSNnZXRUaW1lem9uZU9mZnNldCByZXR1cm5zIGEgZmxvYXRpbmcgcG9pbnQuDQogICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL21vbWVudC9tb21lbnQvcHVsbC8xODcxDQogICAgcmV0dXJuIC1NYXRoLnJvdW5kKG0uX2QuZ2V0VGltZXpvbmVPZmZzZXQoKSAvIDE1KSAqIDE1Ow0KICB9DQoNCiAgLy8gSE9PS1MNCg0KICAvLyBUaGlzIGZ1bmN0aW9uIHdpbGwgYmUgY2FsbGVkIHdoZW5ldmVyIGEgbW9tZW50IGlzIG11dGF0ZWQuDQogIC8vIEl0IGlzIGludGVuZGVkIHRvIGtlZXAgdGhlIG9mZnNldCBpbiBzeW5jIHdpdGggdGhlIHRpbWV6b25lLg0KICB1dGlsc19ob29rc19faG9va3MudXBkYXRlT2Zmc2V0ID0gZnVuY3Rpb24oKSB7fTsNCg0KICAvLyBNT01FTlRTDQoNCiAgLy8ga2VlcExvY2FsVGltZSA9IHRydWUgbWVhbnMgb25seSBjaGFuZ2UgdGhlIHRpbWV6b25lLCB3aXRob3V0DQogIC8vIGFmZmVjdGluZyB0aGUgbG9jYWwgaG91ci4gU28gNTozMToyNiArMDMwMCAtLVt1dGNPZmZzZXQoMiwgdHJ1ZSldLS0+DQogIC8vIDU6MzE6MjYgKzAyMDAgSXQgaXMgcG9zc2libGUgdGhhdCA1OjMxOjI2IGRvZXNuJ3QgZXhpc3Qgd2l0aCBvZmZzZXQNCiAgLy8gKzAyMDAsIHNvIHdlIGFkanVzdCB0aGUgdGltZSBhcyBuZWVkZWQsIHRvIGJlIHZhbGlkLg0KICAvLw0KICAvLyBLZWVwaW5nIHRoZSB0aW1lIGFjdHVhbGx5IGFkZHMvc3VidHJhY3RzIChvbmUgaG91cikNCiAgLy8gZnJvbSB0aGUgYWN0dWFsIHJlcHJlc2VudGVkIHRpbWUuIFRoYXQgaXMgd2h5IHdlIGNhbGwgdXBkYXRlT2Zmc2V0DQogIC8vIGEgc2Vjb25kIHRpbWUuIEluIGNhc2UgaXQgd2FudHMgdXMgdG8gY2hhbmdlIHRoZSBvZmZzZXQgYWdhaW4NCiAgLy8gX2NoYW5nZUluUHJvZ3Jlc3MgPT0gdHJ1ZSBjYXNlLCB0aGVuIHdlIGhhdmUgdG8gYWRqdXN0LCBiZWNhdXNlDQogIC8vIHRoZXJlIGlzIG5vIHN1Y2ggdGltZSBpbiB0aGUgZ2l2ZW4gdGltZXpvbmUuDQogIGZ1bmN0aW9uIGdldFNldE9mZnNldChpbnB1dCwga2VlcExvY2FsVGltZSkgew0KICAgIHZhciBvZmZzZXQgPSB0aGlzLl9vZmZzZXQgfHwgMCwNCiAgICAgIGxvY2FsQWRqdXN0Ow0KICAgIGlmIChpbnB1dCAhPSBudWxsKSB7DQogICAgICBpZiAodHlwZW9mIGlucHV0ID09PSAic3RyaW5nIikgew0KICAgICAgICBpbnB1dCA9IG9mZnNldEZyb21TdHJpbmcoaW5wdXQpOw0KICAgICAgfQ0KICAgICAgaWYgKE1hdGguYWJzKGlucHV0KSA8IDE2KSB7DQogICAgICAgIGlucHV0ID0gaW5wdXQgKiA2MDsNCiAgICAgIH0NCiAgICAgIGlmICghdGhpcy5faXNVVEMgJiYga2VlcExvY2FsVGltZSkgew0KICAgICAgICBsb2NhbEFkanVzdCA9IGdldERhdGVPZmZzZXQodGhpcyk7DQogICAgICB9DQogICAgICB0aGlzLl9vZmZzZXQgPSBpbnB1dDsNCiAgICAgIHRoaXMuX2lzVVRDID0gdHJ1ZTsNCiAgICAgIGlmIChsb2NhbEFkanVzdCAhPSBudWxsKSB7DQogICAgICAgIHRoaXMuYWRkKGxvY2FsQWRqdXN0LCAibSIpOw0KICAgICAgfQ0KICAgICAgaWYgKG9mZnNldCAhPT0gaW5wdXQpIHsNCiAgICAgICAgaWYgKCFrZWVwTG9jYWxUaW1lIHx8IHRoaXMuX2NoYW5nZUluUHJvZ3Jlc3MpIHsNCiAgICAgICAgICBhZGRfc3VidHJhY3RfX2FkZFN1YnRyYWN0KA0KICAgICAgICAgICAgdGhpcywNCiAgICAgICAgICAgIGNyZWF0ZV9fY3JlYXRlRHVyYXRpb24oaW5wdXQgLSBvZmZzZXQsICJtIiksDQogICAgICAgICAgICAxLA0KICAgICAgICAgICAgZmFsc2UNCiAgICAgICAgICApOw0KICAgICAgICB9IGVsc2UgaWYgKCF0aGlzLl9jaGFuZ2VJblByb2dyZXNzKSB7DQogICAgICAgICAgdGhpcy5fY2hhbmdlSW5Qcm9ncmVzcyA9IHRydWU7DQogICAgICAgICAgdXRpbHNfaG9va3NfX2hvb2tzLnVwZGF0ZU9mZnNldCh0aGlzLCB0cnVlKTsNCiAgICAgICAgICB0aGlzLl9jaGFuZ2VJblByb2dyZXNzID0gbnVsbDsNCiAgICAgICAgfQ0KICAgICAgfQ0KICAgICAgcmV0dXJuIHRoaXM7DQogICAgfSBlbHNlIHsNCiAgICAgIHJldHVybiB0aGlzLl9pc1VUQyA/IG9mZnNldCA6IGdldERhdGVPZmZzZXQodGhpcyk7DQogICAgfQ0KICB9DQoNCiAgZnVuY3Rpb24gZ2V0U2V0Wm9uZShpbnB1dCwga2VlcExvY2FsVGltZSkgew0KICAgIGlmIChpbnB1dCAhPSBudWxsKSB7DQogICAgICBpZiAodHlwZW9mIGlucHV0ICE9PSAic3RyaW5nIikgew0KICAgICAgICBpbnB1dCA9IC1pbnB1dDsNCiAgICAgIH0NCg0KICAgICAgdGhpcy51dGNPZmZzZXQoaW5wdXQsIGtlZXBMb2NhbFRpbWUpOw0KDQogICAgICByZXR1cm4gdGhpczsNCiAgICB9IGVsc2Ugew0KICAgICAgcmV0dXJuIC10aGlzLnV0Y09mZnNldCgpOw0KICAgIH0NCiAgfQ0KDQogIGZ1bmN0aW9uIHNldE9mZnNldFRvVVRDKGtlZXBMb2NhbFRpbWUpIHsNCiAgICByZXR1cm4gdGhpcy51dGNPZmZzZXQoMCwga2VlcExvY2FsVGltZSk7DQogIH0NCg0KICBmdW5jdGlvbiBzZXRPZmZzZXRUb0xvY2FsKGtlZXBMb2NhbFRpbWUpIHsNCiAgICBpZiAodGhpcy5faXNVVEMpIHsNCiAgICAgIHRoaXMudXRjT2Zmc2V0KDAsIGtlZXBMb2NhbFRpbWUpOw0KICAgICAgdGhpcy5faXNVVEMgPSBmYWxzZTsNCg0KICAgICAgaWYgKGtlZXBMb2NhbFRpbWUpIHsNCiAgICAgICAgdGhpcy5zdWJ0cmFjdChnZXREYXRlT2Zmc2V0KHRoaXMpLCAibSIpOw0KICAgICAgfQ0KICAgIH0NCiAgICByZXR1cm4gdGhpczsNCiAgfQ0KDQogIGZ1bmN0aW9uIHNldE9mZnNldFRvUGFyc2VkT2Zmc2V0KCkgew0KICAgIGlmICh0aGlzLl90em0pIHsNCiAgICAgIHRoaXMudXRjT2Zmc2V0KHRoaXMuX3R6bSk7DQogICAgfSBlbHNlIGlmICh0eXBlb2YgdGhpcy5faSA9PT0gInN0cmluZyIpIHsNCiAgICAgIHRoaXMudXRjT2Zmc2V0KG9mZnNldEZyb21TdHJpbmcodGhpcy5faSkpOw0KICAgIH0NCiAgICByZXR1cm4gdGhpczsNCiAgfQ0KDQogIGZ1bmN0aW9uIGhhc0FsaWduZWRIb3VyT2Zmc2V0KGlucHV0KSB7DQogICAgaW5wdXQgPSBpbnB1dCA/IGxvY2FsX19jcmVhdGVMb2NhbChpbnB1dCkudXRjT2Zmc2V0KCkgOiAwOw0KDQogICAgcmV0dXJuICh0aGlzLnV0Y09mZnNldCgpIC0gaW5wdXQpICUgNjAgPT09IDA7DQogIH0NCg0KICBmdW5jdGlvbiBpc0RheWxpZ2h0U2F2aW5nVGltZSgpIHsNCiAgICByZXR1cm4gKA0KICAgICAgdGhpcy51dGNPZmZzZXQoKSA+DQogICAgICAgIHRoaXMuY2xvbmUoKQ0KICAgICAgICAgIC5tb250aCgwKQ0KICAgICAgICAgIC51dGNPZmZzZXQoKSB8fA0KICAgICAgdGhpcy51dGNPZmZzZXQoKSA+DQogICAgICAgIHRoaXMuY2xvbmUoKQ0KICAgICAgICAgIC5tb250aCg1KQ0KICAgICAgICAgIC51dGNPZmZzZXQoKQ0KICAgICk7DQogIH0NCg0KICBmdW5jdGlvbiBpc0RheWxpZ2h0U2F2aW5nVGltZVNoaWZ0ZWQoKSB7DQogICAgaWYgKHR5cGVvZiB0aGlzLl9pc0RTVFNoaWZ0ZWQgIT09ICJ1bmRlZmluZWQiKSB7DQogICAgICByZXR1cm4gdGhpcy5faXNEU1RTaGlmdGVkOw0KICAgIH0NCg0KICAgIHZhciBjID0ge307DQoNCiAgICBjb3B5Q29uZmlnKGMsIHRoaXMpOw0KICAgIGMgPSBwcmVwYXJlQ29uZmlnKGMpOw0KDQogICAgaWYgKGMuX2EpIHsNCiAgICAgIHZhciBvdGhlciA9IGMuX2lzVVRDDQogICAgICAgID8gY3JlYXRlX3V0Y19fY3JlYXRlVVRDKGMuX2EpDQogICAgICAgIDogbG9jYWxfX2NyZWF0ZUxvY2FsKGMuX2EpOw0KICAgICAgdGhpcy5faXNEU1RTaGlmdGVkID0NCiAgICAgICAgdGhpcy5pc1ZhbGlkKCkgJiYgY29tcGFyZUFycmF5cyhjLl9hLCBvdGhlci50b0FycmF5KCkpID4gMDsNCiAgICB9IGVsc2Ugew0KICAgICAgdGhpcy5faXNEU1RTaGlmdGVkID0gZmFsc2U7DQogICAgfQ0KDQogICAgcmV0dXJuIHRoaXMuX2lzRFNUU2hpZnRlZDsNCiAgfQ0KDQogIGZ1bmN0aW9uIGlzTG9jYWwoKSB7DQogICAgcmV0dXJuICF0aGlzLl9pc1VUQzsNCiAgfQ0KDQogIGZ1bmN0aW9uIGlzVXRjT2Zmc2V0KCkgew0KICAgIHJldHVybiB0aGlzLl9pc1VUQzsNCiAgfQ0KDQogIGZ1bmN0aW9uIGlzVXRjKCkgew0KICAgIHJldHVybiB0aGlzLl9pc1VUQyAmJiB0aGlzLl9vZmZzZXQgPT09IDA7DQogIH0NCg0KICB2YXIgYXNwTmV0UmVnZXggPSAvKFwtKT8oPzooXGQqKVwuKT8oXGQrKVw6KFxkKykoPzpcOihcZCspXC4/KFxkezN9KT8pPy87DQoNCiAgLy8gZnJvbSBodHRwOi8vZG9jcy5jbG9zdXJlLWxpYnJhcnkuZ29vZ2xlY29kZS5jb20vZ2l0L2Nsb3N1cmVfZ29vZ19kYXRlX2RhdGUuanMuc291cmNlLmh0bWwNCiAgLy8gc29tZXdoYXQgbW9yZSBpbiBsaW5lIHdpdGggNC40LjMuMiAyMDA0IHNwZWMsIGJ1dCBhbGxvd3MgZGVjaW1hbCBhbnl3aGVyZQ0KICB2YXIgY3JlYXRlX19pc29SZWdleCA9IC9eKC0pP1AoPzooPzooWzAtOSwuXSopWSk/KD86KFswLTksLl0qKU0pPyg/OihbMC05LC5dKilEKT8oPzpUKD86KFswLTksLl0qKUgpPyg/OihbMC05LC5dKilNKT8oPzooWzAtOSwuXSopUyk/KT98KFswLTksLl0qKVcpJC87DQoNCiAgZnVuY3Rpb24gY3JlYXRlX19jcmVhdGVEdXJhdGlvbihpbnB1dCwga2V5KSB7DQogICAgdmFyIGR1cmF0aW9uID0gaW5wdXQsDQogICAgICAvLyBtYXRjaGluZyBhZ2FpbnN0IHJlZ2V4cCBpcyBleHBlbnNpdmUsIGRvIGl0IG9uIGRlbWFuZA0KICAgICAgbWF0Y2ggPSBudWxsLA0KICAgICAgc2lnbiwNCiAgICAgIHJldCwNCiAgICAgIGRpZmZSZXM7DQoNCiAgICBpZiAoaXNEdXJhdGlvbihpbnB1dCkpIHsNCiAgICAgIGR1cmF0aW9uID0gew0KICAgICAgICBtczogaW5wdXQuX21pbGxpc2Vjb25kcywNCiAgICAgICAgZDogaW5wdXQuX2RheXMsDQogICAgICAgIE06IGlucHV0Ll9tb250aHMNCiAgICAgIH07DQogICAgfSBlbHNlIGlmICh0eXBlb2YgaW5wdXQgPT09ICJudW1iZXIiKSB7DQogICAgICBkdXJhdGlvbiA9IHt9Ow0KICAgICAgaWYgKGtleSkgew0KICAgICAgICBkdXJhdGlvbltrZXldID0gaW5wdXQ7DQogICAgICB9IGVsc2Ugew0KICAgICAgICBkdXJhdGlvbi5taWxsaXNlY29uZHMgPSBpbnB1dDsNCiAgICAgIH0NCiAgICB9IGVsc2UgaWYgKCEhKG1hdGNoID0gYXNwTmV0UmVnZXguZXhlYyhpbnB1dCkpKSB7DQogICAgICBzaWduID0gbWF0Y2hbMV0gPT09ICItIiA/IC0xIDogMTsNCiAgICAgIGR1cmF0aW9uID0gew0KICAgICAgICB5OiAwLA0KICAgICAgICBkOiB0b0ludChtYXRjaFtEQVRFXSkgKiBzaWduLA0KICAgICAgICBoOiB0b0ludChtYXRjaFtIT1VSXSkgKiBzaWduLA0KICAgICAgICBtOiB0b0ludChtYXRjaFtNSU5VVEVdKSAqIHNpZ24sDQogICAgICAgIHM6IHRvSW50KG1hdGNoW1NFQ09ORF0pICogc2lnbiwNCiAgICAgICAgbXM6IHRvSW50KG1hdGNoW01JTExJU0VDT05EXSkgKiBzaWduDQogICAgICB9Ow0KICAgIH0gZWxzZSBpZiAoISEobWF0Y2ggPSBjcmVhdGVfX2lzb1JlZ2V4LmV4ZWMoaW5wdXQpKSkgew0KICAgICAgc2lnbiA9IG1hdGNoWzFdID09PSAiLSIgPyAtMSA6IDE7DQogICAgICBkdXJhdGlvbiA9IHsNCiAgICAgICAgeTogcGFyc2VJc28obWF0Y2hbMl0sIHNpZ24pLA0KICAgICAgICBNOiBwYXJzZUlzbyhtYXRjaFszXSwgc2lnbiksDQogICAgICAgIGQ6IHBhcnNlSXNvKG1hdGNoWzRdLCBzaWduKSwNCiAgICAgICAgaDogcGFyc2VJc28obWF0Y2hbNV0sIHNpZ24pLA0KICAgICAgICBtOiBwYXJzZUlzbyhtYXRjaFs2XSwgc2lnbiksDQogICAgICAgIHM6IHBhcnNlSXNvKG1hdGNoWzddLCBzaWduKSwNCiAgICAgICAgdzogcGFyc2VJc28obWF0Y2hbOF0sIHNpZ24pDQogICAgICB9Ow0KICAgIH0gZWxzZSBpZiAoZHVyYXRpb24gPT0gbnVsbCkgew0KICAgICAgLy8gY2hlY2tzIGZvciBudWxsIG9yIHVuZGVmaW5lZA0KICAgICAgZHVyYXRpb24gPSB7fTsNCiAgICB9IGVsc2UgaWYgKA0KICAgICAgdHlwZW9mIGR1cmF0aW9uID09PSAib2JqZWN0IiAmJg0KICAgICAgKCJmcm9tIiBpbiBkdXJhdGlvbiB8fCAidG8iIGluIGR1cmF0aW9uKQ0KICAgICkgew0KICAgICAgZGlmZlJlcyA9IG1vbWVudHNEaWZmZXJlbmNlKA0KICAgICAgICBsb2NhbF9fY3JlYXRlTG9jYWwoZHVyYXRpb24uZnJvbSksDQogICAgICAgIGxvY2FsX19jcmVhdGVMb2NhbChkdXJhdGlvbi50bykNCiAgICAgICk7DQoNCiAgICAgIGR1cmF0aW9uID0ge307DQogICAgICBkdXJhdGlvbi5tcyA9IGRpZmZSZXMubWlsbGlzZWNvbmRzOw0KICAgICAgZHVyYXRpb24uTSA9IGRpZmZSZXMubW9udGhzOw0KICAgIH0NCg0KICAgIHJldCA9IG5ldyBEdXJhdGlvbihkdXJhdGlvbik7DQoNCiAgICBpZiAoaXNEdXJhdGlvbihpbnB1dCkgJiYgaGFzT3duUHJvcChpbnB1dCwgIl9sb2NhbGUiKSkgew0KICAgICAgcmV0Ll9sb2NhbGUgPSBpbnB1dC5fbG9jYWxlOw0KICAgIH0NCg0KICAgIHJldHVybiByZXQ7DQogIH0NCg0KICBjcmVhdGVfX2NyZWF0ZUR1cmF0aW9uLmZuID0gRHVyYXRpb24ucHJvdG90eXBlOw0KDQogIGZ1bmN0aW9uIHBhcnNlSXNvKGlucCwgc2lnbikgew0KICAgIC8vIFdlJ2Qgbm9ybWFsbHkgdXNlIH5+aW5wIGZvciB0aGlzLCBidXQgdW5mb3J0dW5hdGVseSBpdCBhbHNvDQogICAgLy8gY29udmVydHMgZmxvYXRzIHRvIGludHMuDQogICAgLy8gaW5wIG1heSBiZSB1bmRlZmluZWQsIHNvIGNhcmVmdWwgY2FsbGluZyByZXBsYWNlIG9uIGl0Lg0KICAgIHZhciByZXMgPSBpbnAgJiYgcGFyc2VGbG9hdChpbnAucmVwbGFjZSgiLCIsICIuIikpOw0KICAgIC8vIGFwcGx5IHNpZ24gd2hpbGUgd2UncmUgYXQgaXQNCiAgICByZXR1cm4gKGlzTmFOKHJlcykgPyAwIDogcmVzKSAqIHNpZ247DQogIH0NCg0KICBmdW5jdGlvbiBwb3NpdGl2ZU1vbWVudHNEaWZmZXJlbmNlKGJhc2UsIG90aGVyKSB7DQogICAgdmFyIHJlcyA9IHsgbWlsbGlzZWNvbmRzOiAwLCBtb250aHM6IDAgfTsNCg0KICAgIHJlcy5tb250aHMgPQ0KICAgICAgb3RoZXIubW9udGgoKSAtIGJhc2UubW9udGgoKSArIChvdGhlci55ZWFyKCkgLSBiYXNlLnllYXIoKSkgKiAxMjsNCiAgICBpZiAoDQogICAgICBiYXNlDQogICAgICAgIC5jbG9uZSgpDQogICAgICAgIC5hZGQocmVzLm1vbnRocywgIk0iKQ0KICAgICAgICAuaXNBZnRlcihvdGhlcikNCiAgICApIHsNCiAgICAgIC0tcmVzLm1vbnRoczsNCiAgICB9DQoNCiAgICByZXMubWlsbGlzZWNvbmRzID0gK290aGVyIC0gK2Jhc2UuY2xvbmUoKS5hZGQocmVzLm1vbnRocywgIk0iKTsNCg0KICAgIHJldHVybiByZXM7DQogIH0NCg0KICBmdW5jdGlvbiBtb21lbnRzRGlmZmVyZW5jZShiYXNlLCBvdGhlcikgew0KICAgIHZhciByZXM7DQogICAgb3RoZXIgPSBjbG9uZVdpdGhPZmZzZXQob3RoZXIsIGJhc2UpOw0KICAgIGlmIChiYXNlLmlzQmVmb3JlKG90aGVyKSkgew0KICAgICAgcmVzID0gcG9zaXRpdmVNb21lbnRzRGlmZmVyZW5jZShiYXNlLCBvdGhlcik7DQogICAgfSBlbHNlIHsNCiAgICAgIHJlcyA9IHBvc2l0aXZlTW9tZW50c0RpZmZlcmVuY2Uob3RoZXIsIGJhc2UpOw0KICAgICAgcmVzLm1pbGxpc2Vjb25kcyA9IC1yZXMubWlsbGlzZWNvbmRzOw0KICAgICAgcmVzLm1vbnRocyA9IC1yZXMubW9udGhzOw0KICAgIH0NCg0KICAgIHJldHVybiByZXM7DQogIH0NCg0KICBmdW5jdGlvbiBjcmVhdGVBZGRlcihkaXJlY3Rpb24sIG5hbWUpIHsNCiAgICByZXR1cm4gZnVuY3Rpb24odmFsLCBwZXJpb2QpIHsNCiAgICAgIHZhciBkdXIsIHRtcDsNCiAgICAgIC8vaW52ZXJ0IHRoZSBhcmd1bWVudHMsIGJ1dCBjb21wbGFpbiBhYm91dCBpdA0KICAgICAgaWYgKHBlcmlvZCAhPT0gbnVsbCAmJiAhaXNOYU4oK3BlcmlvZCkpIHsNCiAgICAgICAgZGVwcmVjYXRlU2ltcGxlKA0KICAgICAgICAgIG5hbWUsDQogICAgICAgICAgIm1vbWVudCgpLiIgKw0KICAgICAgICAgICAgbmFtZSArDQogICAgICAgICAgICAiKHBlcmlvZCwgbnVtYmVyKSBpcyBkZXByZWNhdGVkLiBQbGVhc2UgdXNlIG1vbWVudCgpLiIgKw0KICAgICAgICAgICAgbmFtZSArDQogICAgICAgICAgICAiKG51bWJlciwgcGVyaW9kKS4iDQogICAgICAgICk7DQogICAgICAgIHRtcCA9IHZhbDsNCiAgICAgICAgdmFsID0gcGVyaW9kOw0KICAgICAgICBwZXJpb2QgPSB0bXA7DQogICAgICB9DQoNCiAgICAgIHZhbCA9IHR5cGVvZiB2YWwgPT09ICJzdHJpbmciID8gK3ZhbCA6IHZhbDsNCiAgICAgIGR1ciA9IGNyZWF0ZV9fY3JlYXRlRHVyYXRpb24odmFsLCBwZXJpb2QpOw0KICAgICAgYWRkX3N1YnRyYWN0X19hZGRTdWJ0cmFjdCh0aGlzLCBkdXIsIGRpcmVjdGlvbik7DQogICAgICByZXR1cm4gdGhpczsNCiAgICB9Ow0KICB9DQoNCiAgZnVuY3Rpb24gYWRkX3N1YnRyYWN0X19hZGRTdWJ0cmFjdChtb20sIGR1cmF0aW9uLCBpc0FkZGluZywgdXBkYXRlT2Zmc2V0KSB7DQogICAgdmFyIG1pbGxpc2Vjb25kcyA9IGR1cmF0aW9uLl9taWxsaXNlY29uZHMsDQogICAgICBkYXlzID0gZHVyYXRpb24uX2RheXMsDQogICAgICBtb250aHMgPSBkdXJhdGlvbi5fbW9udGhzOw0KICAgIHVwZGF0ZU9mZnNldCA9IHVwZGF0ZU9mZnNldCA9PSBudWxsID8gdHJ1ZSA6IHVwZGF0ZU9mZnNldDsNCg0KICAgIGlmIChtaWxsaXNlY29uZHMpIHsNCiAgICAgIG1vbS5fZC5zZXRUaW1lKCttb20uX2QgKyBtaWxsaXNlY29uZHMgKiBpc0FkZGluZyk7DQogICAgfQ0KICAgIGlmIChkYXlzKSB7DQogICAgICBnZXRfc2V0X19zZXQobW9tLCAiRGF0ZSIsIGdldF9zZXRfX2dldChtb20sICJEYXRlIikgKyBkYXlzICogaXNBZGRpbmcpOw0KICAgIH0NCiAgICBpZiAobW9udGhzKSB7DQogICAgICBzZXRNb250aChtb20sIGdldF9zZXRfX2dldChtb20sICJNb250aCIpICsgbW9udGhzICogaXNBZGRpbmcpOw0KICAgIH0NCiAgICBpZiAodXBkYXRlT2Zmc2V0KSB7DQogICAgICB1dGlsc19ob29rc19faG9va3MudXBkYXRlT2Zmc2V0KG1vbSwgZGF5cyB8fCBtb250aHMpOw0KICAgIH0NCiAgfQ0KDQogIHZhciBhZGRfc3VidHJhY3RfX2FkZCA9IGNyZWF0ZUFkZGVyKDEsICJhZGQiKTsNCiAgdmFyIGFkZF9zdWJ0cmFjdF9fc3VidHJhY3QgPSBjcmVhdGVBZGRlcigtMSwgInN1YnRyYWN0Iik7DQoNCiAgZnVuY3Rpb24gbW9tZW50X2NhbGVuZGFyX19jYWxlbmRhcih0aW1lLCBmb3JtYXRzKSB7DQogICAgLy8gV2Ugd2FudCB0byBjb21wYXJlIHRoZSBzdGFydCBvZiB0b2RheSwgdnMgdGhpcy4NCiAgICAvLyBHZXR0aW5nIHN0YXJ0LW9mLXRvZGF5IGRlcGVuZHMgb24gd2hldGhlciB3ZSdyZSBsb2NhbC91dGMvb2Zmc2V0IG9yIG5vdC4NCiAgICB2YXIgbm93ID0gdGltZSB8fCBsb2NhbF9fY3JlYXRlTG9jYWwoKSwNCiAgICAgIHNvZCA9IGNsb25lV2l0aE9mZnNldChub3csIHRoaXMpLnN0YXJ0T2YoImRheSIpLA0KICAgICAgZGlmZiA9IHRoaXMuZGlmZihzb2QsICJkYXlzIiwgdHJ1ZSksDQogICAgICBmb3JtYXQgPQ0KICAgICAgICBkaWZmIDwgLTYNCiAgICAgICAgICA/ICJzYW1lRWxzZSINCiAgICAgICAgICA6IGRpZmYgPCAtMQ0KICAgICAgICAgID8gImxhc3RXZWVrIg0KICAgICAgICAgIDogZGlmZiA8IDANCiAgICAgICAgICA/ICJsYXN0RGF5Ig0KICAgICAgICAgIDogZGlmZiA8IDENCiAgICAgICAgICA/ICJzYW1lRGF5Ig0KICAgICAgICAgIDogZGlmZiA8IDINCiAgICAgICAgICA/ICJuZXh0RGF5Ig0KICAgICAgICAgIDogZGlmZiA8IDcNCiAgICAgICAgICA/ICJuZXh0V2VlayINCiAgICAgICAgICA6ICJzYW1lRWxzZSI7DQogICAgcmV0dXJuIHRoaXMuZm9ybWF0KA0KICAgICAgKGZvcm1hdHMgJiYgZm9ybWF0c1tmb3JtYXRdKSB8fA0KICAgICAgICB0aGlzLmxvY2FsZURhdGEoKS5jYWxlbmRhcihmb3JtYXQsIHRoaXMsIGxvY2FsX19jcmVhdGVMb2NhbChub3cpKQ0KICAgICk7DQogIH0NCg0KICBmdW5jdGlvbiBjbG9uZSgpIHsNCiAgICByZXR1cm4gbmV3IE1vbWVudCh0aGlzKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIGlzQWZ0ZXIoaW5wdXQsIHVuaXRzKSB7DQogICAgdmFyIGlucHV0TXM7DQogICAgdW5pdHMgPSBub3JtYWxpemVVbml0cygNCiAgICAgIHR5cGVvZiB1bml0cyAhPT0gInVuZGVmaW5lZCIgPyB1bml0cyA6ICJtaWxsaXNlY29uZCINCiAgICApOw0KICAgIGlmICh1bml0cyA9PT0gIm1pbGxpc2Vjb25kIikgew0KICAgICAgaW5wdXQgPSBpc01vbWVudChpbnB1dCkgPyBpbnB1dCA6IGxvY2FsX19jcmVhdGVMb2NhbChpbnB1dCk7DQogICAgICByZXR1cm4gK3RoaXMgPiAraW5wdXQ7DQogICAgfSBlbHNlIHsNCiAgICAgIGlucHV0TXMgPSBpc01vbWVudChpbnB1dCkgPyAraW5wdXQgOiArbG9jYWxfX2NyZWF0ZUxvY2FsKGlucHV0KTsNCiAgICAgIHJldHVybiBpbnB1dE1zIDwgK3RoaXMuY2xvbmUoKS5zdGFydE9mKHVuaXRzKTsNCiAgICB9DQogIH0NCg0KICBmdW5jdGlvbiBpc0JlZm9yZShpbnB1dCwgdW5pdHMpIHsNCiAgICB2YXIgaW5wdXRNczsNCiAgICB1bml0cyA9IG5vcm1hbGl6ZVVuaXRzKA0KICAgICAgdHlwZW9mIHVuaXRzICE9PSAidW5kZWZpbmVkIiA/IHVuaXRzIDogIm1pbGxpc2Vjb25kIg0KICAgICk7DQogICAgaWYgKHVuaXRzID09PSAibWlsbGlzZWNvbmQiKSB7DQogICAgICBpbnB1dCA9IGlzTW9tZW50KGlucHV0KSA/IGlucHV0IDogbG9jYWxfX2NyZWF0ZUxvY2FsKGlucHV0KTsNCiAgICAgIHJldHVybiArdGhpcyA8ICtpbnB1dDsNCiAgICB9IGVsc2Ugew0KICAgICAgaW5wdXRNcyA9IGlzTW9tZW50KGlucHV0KSA/ICtpbnB1dCA6ICtsb2NhbF9fY3JlYXRlTG9jYWwoaW5wdXQpOw0KICAgICAgcmV0dXJuICt0aGlzLmNsb25lKCkuZW5kT2YodW5pdHMpIDwgaW5wdXRNczsNCiAgICB9DQogIH0NCg0KICBmdW5jdGlvbiBpc0JldHdlZW4oZnJvbSwgdG8sIHVuaXRzKSB7DQogICAgcmV0dXJuIHRoaXMuaXNBZnRlcihmcm9tLCB1bml0cykgJiYgdGhpcy5pc0JlZm9yZSh0bywgdW5pdHMpOw0KICB9DQoNCiAgZnVuY3Rpb24gaXNTYW1lKGlucHV0LCB1bml0cykgew0KICAgIHZhciBpbnB1dE1zOw0KICAgIHVuaXRzID0gbm9ybWFsaXplVW5pdHModW5pdHMgfHwgIm1pbGxpc2Vjb25kIik7DQogICAgaWYgKHVuaXRzID09PSAibWlsbGlzZWNvbmQiKSB7DQogICAgICBpbnB1dCA9IGlzTW9tZW50KGlucHV0KSA/IGlucHV0IDogbG9jYWxfX2NyZWF0ZUxvY2FsKGlucHV0KTsNCiAgICAgIHJldHVybiArdGhpcyA9PT0gK2lucHV0Ow0KICAgIH0gZWxzZSB7DQogICAgICBpbnB1dE1zID0gK2xvY2FsX19jcmVhdGVMb2NhbChpbnB1dCk7DQogICAgICByZXR1cm4gKA0KICAgICAgICArdGhpcy5jbG9uZSgpLnN0YXJ0T2YodW5pdHMpIDw9IGlucHV0TXMgJiYNCiAgICAgICAgaW5wdXRNcyA8PSArdGhpcy5jbG9uZSgpLmVuZE9mKHVuaXRzKQ0KICAgICAgKTsNCiAgICB9DQogIH0NCg0KICBmdW5jdGlvbiBkaWZmKGlucHV0LCB1bml0cywgYXNGbG9hdCkgew0KICAgIHZhciB0aGF0ID0gY2xvbmVXaXRoT2Zmc2V0KGlucHV0LCB0aGlzKSwNCiAgICAgIHpvbmVEZWx0YSA9ICh0aGF0LnV0Y09mZnNldCgpIC0gdGhpcy51dGNPZmZzZXQoKSkgKiA2ZTQsDQogICAgICBkZWx0YSwNCiAgICAgIG91dHB1dDsNCg0KICAgIHVuaXRzID0gbm9ybWFsaXplVW5pdHModW5pdHMpOw0KDQogICAgaWYgKHVuaXRzID09PSAieWVhciIgfHwgdW5pdHMgPT09ICJtb250aCIgfHwgdW5pdHMgPT09ICJxdWFydGVyIikgew0KICAgICAgb3V0cHV0ID0gbW9udGhEaWZmKHRoaXMsIHRoYXQpOw0KICAgICAgaWYgKHVuaXRzID09PSAicXVhcnRlciIpIHsNCiAgICAgICAgb3V0cHV0ID0gb3V0cHV0IC8gMzsNCiAgICAgIH0gZWxzZSBpZiAodW5pdHMgPT09ICJ5ZWFyIikgew0KICAgICAgICBvdXRwdXQgPSBvdXRwdXQgLyAxMjsNCiAgICAgIH0NCiAgICB9IGVsc2Ugew0KICAgICAgZGVsdGEgPSB0aGlzIC0gdGhhdDsNCiAgICAgIG91dHB1dCA9DQogICAgICAgIHVuaXRzID09PSAic2Vjb25kIg0KICAgICAgICAgID8gZGVsdGEgLyAxZTMgLy8gMTAwMA0KICAgICAgICAgIDogdW5pdHMgPT09ICJtaW51dGUiDQogICAgICAgICAgPyBkZWx0YSAvIDZlNCAvLyAxMDAwICogNjANCiAgICAgICAgICA6IHVuaXRzID09PSAiaG91ciINCiAgICAgICAgICA/IGRlbHRhIC8gMzZlNSAvLyAxMDAwICogNjAgKiA2MA0KICAgICAgICAgIDogdW5pdHMgPT09ICJkYXkiDQogICAgICAgICAgPyAoZGVsdGEgLSB6b25lRGVsdGEpIC8gODY0ZTUgLy8gMTAwMCAqIDYwICogNjAgKiAyNCwgbmVnYXRlIGRzdA0KICAgICAgICAgIDogdW5pdHMgPT09ICJ3ZWVrIg0KICAgICAgICAgID8gKGRlbHRhIC0gem9uZURlbHRhKSAvIDYwNDhlNSAvLyAxMDAwICogNjAgKiA2MCAqIDI0ICogNywgbmVnYXRlIGRzdA0KICAgICAgICAgIDogZGVsdGE7DQogICAgfQ0KICAgIHJldHVybiBhc0Zsb2F0ID8gb3V0cHV0IDogYWJzRmxvb3Iob3V0cHV0KTsNCiAgfQ0KDQogIGZ1bmN0aW9uIG1vbnRoRGlmZihhLCBiKSB7DQogICAgLy8gZGlmZmVyZW5jZSBpbiBtb250aHMNCiAgICB2YXIgd2hvbGVNb250aERpZmYgPSAoYi55ZWFyKCkgLSBhLnllYXIoKSkgKiAxMiArIChiLm1vbnRoKCkgLSBhLm1vbnRoKCkpLA0KICAgICAgLy8gYiBpcyBpbiAoYW5jaG9yIC0gMSBtb250aCwgYW5jaG9yICsgMSBtb250aCkNCiAgICAgIGFuY2hvciA9IGEuY2xvbmUoKS5hZGQod2hvbGVNb250aERpZmYsICJtb250aHMiKSwNCiAgICAgIGFuY2hvcjIsDQogICAgICBhZGp1c3Q7DQoNCiAgICBpZiAoYiAtIGFuY2hvciA8IDApIHsNCiAgICAgIGFuY2hvcjIgPSBhLmNsb25lKCkuYWRkKHdob2xlTW9udGhEaWZmIC0gMSwgIm1vbnRocyIpOw0KICAgICAgLy8gbGluZWFyIGFjcm9zcyB0aGUgbW9udGgNCiAgICAgIGFkanVzdCA9IChiIC0gYW5jaG9yKSAvIChhbmNob3IgLSBhbmNob3IyKTsNCiAgICB9IGVsc2Ugew0KICAgICAgYW5jaG9yMiA9IGEuY2xvbmUoKS5hZGQod2hvbGVNb250aERpZmYgKyAxLCAibW9udGhzIik7DQogICAgICAvLyBsaW5lYXIgYWNyb3NzIHRoZSBtb250aA0KICAgICAgYWRqdXN0ID0gKGIgLSBhbmNob3IpIC8gKGFuY2hvcjIgLSBhbmNob3IpOw0KICAgIH0NCg0KICAgIHJldHVybiAtKHdob2xlTW9udGhEaWZmICsgYWRqdXN0KTsNCiAgfQ0KDQogIHV0aWxzX2hvb2tzX19ob29rcy5kZWZhdWx0Rm9ybWF0ID0gIllZWVktTU0tRERUSEg6bW06c3NaIjsNCg0KICBmdW5jdGlvbiB0b1N0cmluZygpIHsNCiAgICByZXR1cm4gdGhpcy5jbG9uZSgpDQogICAgICAubG9jYWxlKCJlbiIpDQogICAgICAuZm9ybWF0KCJkZGQgTU1NIEREIFlZWVkgSEg6bW06c3MgW0dNVF1aWiIpOw0KICB9DQoNCiAgZnVuY3Rpb24gbW9tZW50X2Zvcm1hdF9fdG9JU09TdHJpbmcoKSB7DQogICAgdmFyIG0gPSB0aGlzLmNsb25lKCkudXRjKCk7DQogICAgaWYgKDAgPCBtLnllYXIoKSAmJiBtLnllYXIoKSA8PSA5OTk5KSB7DQogICAgICBpZiAoImZ1bmN0aW9uIiA9PT0gdHlwZW9mIERhdGUucHJvdG90eXBlLnRvSVNPU3RyaW5nKSB7DQogICAgICAgIC8vIG5hdGl2ZSBpbXBsZW1lbnRhdGlvbiBpcyB+NTB4IGZhc3RlciwgdXNlIGl0IHdoZW4gd2UgY2FuDQogICAgICAgIHJldHVybiB0aGlzLnRvRGF0ZSgpLnRvSVNPU3RyaW5nKCk7DQogICAgICB9IGVsc2Ugew0KICAgICAgICByZXR1cm4gZm9ybWF0TW9tZW50KG0sICJZWVlZLU1NLUREW1RdSEg6bW06c3MuU1NTW1pdIik7DQogICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgIHJldHVybiBmb3JtYXRNb21lbnQobSwgIllZWVlZWS1NTS1ERFtUXUhIOm1tOnNzLlNTU1taXSIpOw0KICAgIH0NCiAgfQ0KDQogIGZ1bmN0aW9uIGZvcm1hdChpbnB1dFN0cmluZykgew0KICAgIHZhciBvdXRwdXQgPSBmb3JtYXRNb21lbnQoDQogICAgICB0aGlzLA0KICAgICAgaW5wdXRTdHJpbmcgfHwgdXRpbHNfaG9va3NfX2hvb2tzLmRlZmF1bHRGb3JtYXQNCiAgICApOw0KICAgIHJldHVybiB0aGlzLmxvY2FsZURhdGEoKS5wb3N0Zm9ybWF0KG91dHB1dCk7DQogIH0NCg0KICBmdW5jdGlvbiBmcm9tKHRpbWUsIHdpdGhvdXRTdWZmaXgpIHsNCiAgICBpZiAoIXRoaXMuaXNWYWxpZCgpKSB7DQogICAgICByZXR1cm4gdGhpcy5sb2NhbGVEYXRhKCkuaW52YWxpZERhdGUoKTsNCiAgICB9DQogICAgcmV0dXJuIGNyZWF0ZV9fY3JlYXRlRHVyYXRpb24oeyB0bzogdGhpcywgZnJvbTogdGltZSB9KQ0KICAgICAgLmxvY2FsZSh0aGlzLmxvY2FsZSgpKQ0KICAgICAgLmh1bWFuaXplKCF3aXRob3V0U3VmZml4KTsNCiAgfQ0KDQogIGZ1bmN0aW9uIGZyb21Ob3cod2l0aG91dFN1ZmZpeCkgew0KICAgIHJldHVybiB0aGlzLmZyb20obG9jYWxfX2NyZWF0ZUxvY2FsKCksIHdpdGhvdXRTdWZmaXgpOw0KICB9DQoNCiAgZnVuY3Rpb24gdG8odGltZSwgd2l0aG91dFN1ZmZpeCkgew0KICAgIGlmICghdGhpcy5pc1ZhbGlkKCkpIHsNCiAgICAgIHJldHVybiB0aGlzLmxvY2FsZURhdGEoKS5pbnZhbGlkRGF0ZSgpOw0KICAgIH0NCiAgICByZXR1cm4gY3JlYXRlX19jcmVhdGVEdXJhdGlvbih7IGZyb206IHRoaXMsIHRvOiB0aW1lIH0pDQogICAgICAubG9jYWxlKHRoaXMubG9jYWxlKCkpDQogICAgICAuaHVtYW5pemUoIXdpdGhvdXRTdWZmaXgpOw0KICB9DQoNCiAgZnVuY3Rpb24gdG9Ob3cod2l0aG91dFN1ZmZpeCkgew0KICAgIHJldHVybiB0aGlzLnRvKGxvY2FsX19jcmVhdGVMb2NhbCgpLCB3aXRob3V0U3VmZml4KTsNCiAgfQ0KDQogIGZ1bmN0aW9uIGxvY2FsZShrZXkpIHsNCiAgICB2YXIgbmV3TG9jYWxlRGF0YTsNCg0KICAgIGlmIChrZXkgPT09IHVuZGVmaW5lZCkgew0KICAgICAgcmV0dXJuIHRoaXMuX2xvY2FsZS5fYWJicjsNCiAgICB9IGVsc2Ugew0KICAgICAgbmV3TG9jYWxlRGF0YSA9IGxvY2FsZV9sb2NhbGVzX19nZXRMb2NhbGUoa2V5KTsNCiAgICAgIGlmIChuZXdMb2NhbGVEYXRhICE9IG51bGwpIHsNCiAgICAgICAgdGhpcy5fbG9jYWxlID0gbmV3TG9jYWxlRGF0YTsNCiAgICAgIH0NCiAgICAgIHJldHVybiB0aGlzOw0KICAgIH0NCiAgfQ0KDQogIHZhciBsYW5nID0gZGVwcmVjYXRlKA0KICAgICJtb21lbnQoKS5sYW5nKCkgaXMgZGVwcmVjYXRlZC4gSW5zdGVhZCwgdXNlIG1vbWVudCgpLmxvY2FsZURhdGEoKSB0byBnZXQgdGhlIGxhbmd1YWdlIGNvbmZpZ3VyYXRpb24uIFVzZSBtb21lbnQoKS5sb2NhbGUoKSB0byBjaGFuZ2UgbGFuZ3VhZ2VzLiIsDQogICAgZnVuY3Rpb24oa2V5KSB7DQogICAgICBpZiAoa2V5ID09PSB1bmRlZmluZWQpIHsNCiAgICAgICAgcmV0dXJuIHRoaXMubG9jYWxlRGF0YSgpOw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgcmV0dXJuIHRoaXMubG9jYWxlKGtleSk7DQogICAgICB9DQogICAgfQ0KICApOw0KDQogIGZ1bmN0aW9uIGxvY2FsZURhdGEoKSB7DQogICAgcmV0dXJuIHRoaXMuX2xvY2FsZTsNCiAgfQ0KDQogIGZ1bmN0aW9uIHN0YXJ0T2YodW5pdHMpIHsNCiAgICB1bml0cyA9IG5vcm1hbGl6ZVVuaXRzKHVuaXRzKTsNCiAgICAvLyB0aGUgZm9sbG93aW5nIHN3aXRjaCBpbnRlbnRpb25hbGx5IG9taXRzIGJyZWFrIGtleXdvcmRzDQogICAgLy8gdG8gdXRpbGl6ZSBmYWxsaW5nIHRocm91Z2ggdGhlIGNhc2VzLg0KICAgIHN3aXRjaCAodW5pdHMpIHsNCiAgICAgIGNhc2UgInllYXIiOg0KICAgICAgICB0aGlzLm1vbnRoKDApOw0KICAgICAgLyogZmFsbHMgdGhyb3VnaCAqLw0KICAgICAgY2FzZSAicXVhcnRlciI6DQogICAgICBjYXNlICJtb250aCI6DQogICAgICAgIHRoaXMuZGF0ZSgxKTsNCiAgICAgIC8qIGZhbGxzIHRocm91Z2ggKi8NCiAgICAgIGNhc2UgIndlZWsiOg0KICAgICAgY2FzZSAiaXNvV2VlayI6DQogICAgICBjYXNlICJkYXkiOg0KICAgICAgICB0aGlzLmhvdXJzKDApOw0KICAgICAgLyogZmFsbHMgdGhyb3VnaCAqLw0KICAgICAgY2FzZSAiaG91ciI6DQogICAgICAgIHRoaXMubWludXRlcygwKTsNCiAgICAgIC8qIGZhbGxzIHRocm91Z2ggKi8NCiAgICAgIGNhc2UgIm1pbnV0ZSI6DQogICAgICAgIHRoaXMuc2Vjb25kcygwKTsNCiAgICAgIC8qIGZhbGxzIHRocm91Z2ggKi8NCiAgICAgIGNhc2UgInNlY29uZCI6DQogICAgICAgIHRoaXMubWlsbGlzZWNvbmRzKDApOw0KICAgIH0NCg0KICAgIC8vIHdlZWtzIGFyZSBhIHNwZWNpYWwgY2FzZQ0KICAgIGlmICh1bml0cyA9PT0gIndlZWsiKSB7DQogICAgICB0aGlzLndlZWtkYXkoMCk7DQogICAgfQ0KICAgIGlmICh1bml0cyA9PT0gImlzb1dlZWsiKSB7DQogICAgICB0aGlzLmlzb1dlZWtkYXkoMSk7DQogICAgfQ0KDQogICAgLy8gcXVhcnRlcnMgYXJlIGFsc28gc3BlY2lhbA0KICAgIGlmICh1bml0cyA9PT0gInF1YXJ0ZXIiKSB7DQogICAgICB0aGlzLm1vbnRoKE1hdGguZmxvb3IodGhpcy5tb250aCgpIC8gMykgKiAzKTsNCiAgICB9DQoNCiAgICByZXR1cm4gdGhpczsNCiAgfQ0KDQogIGZ1bmN0aW9uIGVuZE9mKHVuaXRzKSB7DQogICAgdW5pdHMgPSBub3JtYWxpemVVbml0cyh1bml0cyk7DQogICAgaWYgKHVuaXRzID09PSB1bmRlZmluZWQgfHwgdW5pdHMgPT09ICJtaWxsaXNlY29uZCIpIHsNCiAgICAgIHJldHVybiB0aGlzOw0KICAgIH0NCiAgICByZXR1cm4gdGhpcy5zdGFydE9mKHVuaXRzKQ0KICAgICAgLmFkZCgxLCB1bml0cyA9PT0gImlzb1dlZWsiID8gIndlZWsiIDogdW5pdHMpDQogICAgICAuc3VidHJhY3QoMSwgIm1zIik7DQogIH0NCg0KICBmdW5jdGlvbiB0b190eXBlX192YWx1ZU9mKCkgew0KICAgIHJldHVybiArdGhpcy5fZCAtICh0aGlzLl9vZmZzZXQgfHwgMCkgKiA2MDAwMDsNCiAgfQ0KDQogIGZ1bmN0aW9uIHVuaXgoKSB7DQogICAgcmV0dXJuIE1hdGguZmxvb3IoK3RoaXMgLyAxMDAwKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIHRvRGF0ZSgpIHsNCiAgICByZXR1cm4gdGhpcy5fb2Zmc2V0ID8gbmV3IERhdGUoK3RoaXMpIDogdGhpcy5fZDsNCiAgfQ0KDQogIGZ1bmN0aW9uIHRvQXJyYXkoKSB7DQogICAgdmFyIG0gPSB0aGlzOw0KICAgIHJldHVybiBbDQogICAgICBtLnllYXIoKSwNCiAgICAgIG0ubW9udGgoKSwNCiAgICAgIG0uZGF0ZSgpLA0KICAgICAgbS5ob3VyKCksDQogICAgICBtLm1pbnV0ZSgpLA0KICAgICAgbS5zZWNvbmQoKSwNCiAgICAgIG0ubWlsbGlzZWNvbmQoKQ0KICAgIF07DQogIH0NCg0KICBmdW5jdGlvbiB0b09iamVjdCgpIHsNCiAgICB2YXIgbSA9IHRoaXM7DQogICAgcmV0dXJuIHsNCiAgICAgIHllYXJzOiBtLnllYXIoKSwNCiAgICAgIG1vbnRoczogbS5tb250aCgpLA0KICAgICAgZGF0ZTogbS5kYXRlKCksDQogICAgICBob3VyczogbS5ob3VycygpLA0KICAgICAgbWludXRlczogbS5taW51dGVzKCksDQogICAgICBzZWNvbmRzOiBtLnNlY29uZHMoKSwNCiAgICAgIG1pbGxpc2Vjb25kczogbS5taWxsaXNlY29uZHMoKQ0KICAgIH07DQogIH0NCg0KICBmdW5jdGlvbiBtb21lbnRfdmFsaWRfX2lzVmFsaWQoKSB7DQogICAgcmV0dXJuIHZhbGlkX19pc1ZhbGlkKHRoaXMpOw0KICB9DQoNCiAgZnVuY3Rpb24gcGFyc2luZ0ZsYWdzKCkgew0KICAgIHJldHVybiBleHRlbmQoe30sIGdldFBhcnNpbmdGbGFncyh0aGlzKSk7DQogIH0NCg0KICBmdW5jdGlvbiBpbnZhbGlkQXQoKSB7DQogICAgcmV0dXJuIGdldFBhcnNpbmdGbGFncyh0aGlzKS5vdmVyZmxvdzsNCiAgfQ0KDQogIGFkZEZvcm1hdFRva2VuKDAsIFsiZ2ciLCAyXSwgMCwgZnVuY3Rpb24oKSB7DQogICAgcmV0dXJuIHRoaXMud2Vla1llYXIoKSAlIDEwMDsNCiAgfSk7DQoNCiAgYWRkRm9ybWF0VG9rZW4oMCwgWyJHRyIsIDJdLCAwLCBmdW5jdGlvbigpIHsNCiAgICByZXR1cm4gdGhpcy5pc29XZWVrWWVhcigpICUgMTAwOw0KICB9KTsNCg0KICBmdW5jdGlvbiBhZGRXZWVrWWVhckZvcm1hdFRva2VuKHRva2VuLCBnZXR0ZXIpIHsNCiAgICBhZGRGb3JtYXRUb2tlbigwLCBbdG9rZW4sIHRva2VuLmxlbmd0aF0sIDAsIGdldHRlcik7DQogIH0NCg0KICBhZGRXZWVrWWVhckZvcm1hdFRva2VuKCJnZ2dnIiwgIndlZWtZZWFyIik7DQogIGFkZFdlZWtZZWFyRm9ybWF0VG9rZW4oImdnZ2dnIiwgIndlZWtZZWFyIik7DQogIGFkZFdlZWtZZWFyRm9ybWF0VG9rZW4oIkdHR0ciLCAiaXNvV2Vla1llYXIiKTsNCiAgYWRkV2Vla1llYXJGb3JtYXRUb2tlbigiR0dHR0ciLCAiaXNvV2Vla1llYXIiKTsNCg0KICAvLyBBTElBU0VTDQoNCiAgYWRkVW5pdEFsaWFzKCJ3ZWVrWWVhciIsICJnZyIpOw0KICBhZGRVbml0QWxpYXMoImlzb1dlZWtZZWFyIiwgIkdHIik7DQoNCiAgLy8gUEFSU0lORw0KDQogIGFkZFJlZ2V4VG9rZW4oIkciLCBtYXRjaFNpZ25lZCk7DQogIGFkZFJlZ2V4VG9rZW4oImciLCBtYXRjaFNpZ25lZCk7DQogIGFkZFJlZ2V4VG9rZW4oIkdHIiwgbWF0Y2gxdG8yLCBtYXRjaDIpOw0KICBhZGRSZWdleFRva2VuKCJnZyIsIG1hdGNoMXRvMiwgbWF0Y2gyKTsNCiAgYWRkUmVnZXhUb2tlbigiR0dHRyIsIG1hdGNoMXRvNCwgbWF0Y2g0KTsNCiAgYWRkUmVnZXhUb2tlbigiZ2dnZyIsIG1hdGNoMXRvNCwgbWF0Y2g0KTsNCiAgYWRkUmVnZXhUb2tlbigiR0dHR0ciLCBtYXRjaDF0bzYsIG1hdGNoNik7DQogIGFkZFJlZ2V4VG9rZW4oImdnZ2dnIiwgbWF0Y2gxdG82LCBtYXRjaDYpOw0KDQogIGFkZFdlZWtQYXJzZVRva2VuKFsiZ2dnZyIsICJnZ2dnZyIsICJHR0dHIiwgIkdHR0dHIl0sIGZ1bmN0aW9uKA0KICAgIGlucHV0LA0KICAgIHdlZWssDQogICAgY29uZmlnLA0KICAgIHRva2VuDQogICkgew0KICAgIHdlZWtbdG9rZW4uc3Vic3RyKDAsIDIpXSA9IHRvSW50KGlucHV0KTsNCiAgfSk7DQoNCiAgYWRkV2Vla1BhcnNlVG9rZW4oWyJnZyIsICJHRyJdLCBmdW5jdGlvbihpbnB1dCwgd2VlaywgY29uZmlnLCB0b2tlbikgew0KICAgIHdlZWtbdG9rZW5dID0gdXRpbHNfaG9va3NfX2hvb2tzLnBhcnNlVHdvRGlnaXRZZWFyKGlucHV0KTsNCiAgfSk7DQoNCiAgLy8gSEVMUEVSUw0KDQogIGZ1bmN0aW9uIHdlZWtzSW5ZZWFyKHllYXIsIGRvdywgZG95KSB7DQogICAgcmV0dXJuIHdlZWtPZlllYXIoDQogICAgICBsb2NhbF9fY3JlYXRlTG9jYWwoW3llYXIsIDExLCAzMSArIGRvdyAtIGRveV0pLA0KICAgICAgZG93LA0KICAgICAgZG95DQogICAgKS53ZWVrOw0KICB9DQoNCiAgLy8gTU9NRU5UUw0KDQogIGZ1bmN0aW9uIGdldFNldFdlZWtZZWFyKGlucHV0KSB7DQogICAgdmFyIHllYXIgPSB3ZWVrT2ZZZWFyKA0KICAgICAgdGhpcywNCiAgICAgIHRoaXMubG9jYWxlRGF0YSgpLl93ZWVrLmRvdywNCiAgICAgIHRoaXMubG9jYWxlRGF0YSgpLl93ZWVrLmRveQ0KICAgICkueWVhcjsNCiAgICByZXR1cm4gaW5wdXQgPT0gbnVsbCA/IHllYXIgOiB0aGlzLmFkZChpbnB1dCAtIHllYXIsICJ5Iik7DQogIH0NCg0KICBmdW5jdGlvbiBnZXRTZXRJU09XZWVrWWVhcihpbnB1dCkgew0KICAgIHZhciB5ZWFyID0gd2Vla09mWWVhcih0aGlzLCAxLCA0KS55ZWFyOw0KICAgIHJldHVybiBpbnB1dCA9PSBudWxsID8geWVhciA6IHRoaXMuYWRkKGlucHV0IC0geWVhciwgInkiKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIGdldElTT1dlZWtzSW5ZZWFyKCkgew0KICAgIHJldHVybiB3ZWVrc0luWWVhcih0aGlzLnllYXIoKSwgMSwgNCk7DQogIH0NCg0KICBmdW5jdGlvbiBnZXRXZWVrc0luWWVhcigpIHsNCiAgICB2YXIgd2Vla0luZm8gPSB0aGlzLmxvY2FsZURhdGEoKS5fd2VlazsNCiAgICByZXR1cm4gd2Vla3NJblllYXIodGhpcy55ZWFyKCksIHdlZWtJbmZvLmRvdywgd2Vla0luZm8uZG95KTsNCiAgfQ0KDQogIGFkZEZvcm1hdFRva2VuKCJRIiwgMCwgMCwgInF1YXJ0ZXIiKTsNCg0KICAvLyBBTElBU0VTDQoNCiAgYWRkVW5pdEFsaWFzKCJxdWFydGVyIiwgIlEiKTsNCg0KICAvLyBQQVJTSU5HDQoNCiAgYWRkUmVnZXhUb2tlbigiUSIsIG1hdGNoMSk7DQogIGFkZFBhcnNlVG9rZW4oIlEiLCBmdW5jdGlvbihpbnB1dCwgYXJyYXkpIHsNCiAgICBhcnJheVtNT05USF0gPSAodG9JbnQoaW5wdXQpIC0gMSkgKiAzOw0KICB9KTsNCg0KICAvLyBNT01FTlRTDQoNCiAgZnVuY3Rpb24gZ2V0U2V0UXVhcnRlcihpbnB1dCkgew0KICAgIHJldHVybiBpbnB1dCA9PSBudWxsDQogICAgICA/IE1hdGguY2VpbCgodGhpcy5tb250aCgpICsgMSkgLyAzKQ0KICAgICAgOiB0aGlzLm1vbnRoKChpbnB1dCAtIDEpICogMyArICh0aGlzLm1vbnRoKCkgJSAzKSk7DQogIH0NCg0KICBhZGRGb3JtYXRUb2tlbigiRCIsIFsiREQiLCAyXSwgIkRvIiwgImRhdGUiKTsNCg0KICAvLyBBTElBU0VTDQoNCiAgYWRkVW5pdEFsaWFzKCJkYXRlIiwgIkQiKTsNCg0KICAvLyBQQVJTSU5HDQoNCiAgYWRkUmVnZXhUb2tlbigiRCIsIG1hdGNoMXRvMik7DQogIGFkZFJlZ2V4VG9rZW4oIkREIiwgbWF0Y2gxdG8yLCBtYXRjaDIpOw0KICBhZGRSZWdleFRva2VuKCJEbyIsIGZ1bmN0aW9uKGlzU3RyaWN0LCBsb2NhbGUpIHsNCiAgICByZXR1cm4gaXNTdHJpY3QgPyBsb2NhbGUuX29yZGluYWxQYXJzZSA6IGxvY2FsZS5fb3JkaW5hbFBhcnNlTGVuaWVudDsNCiAgfSk7DQoNCiAgYWRkUGFyc2VUb2tlbihbIkQiLCAiREQiXSwgREFURSk7DQogIGFkZFBhcnNlVG9rZW4oIkRvIiwgZnVuY3Rpb24oaW5wdXQsIGFycmF5KSB7DQogICAgYXJyYXlbREFURV0gPSB0b0ludChpbnB1dC5tYXRjaChtYXRjaDF0bzIpWzBdLCAxMCk7DQogIH0pOw0KDQogIC8vIE1PTUVOVFMNCg0KICB2YXIgZ2V0U2V0RGF5T2ZNb250aCA9IG1ha2VHZXRTZXQoIkRhdGUiLCB0cnVlKTsNCg0KICBhZGRGb3JtYXRUb2tlbigiZCIsIDAsICJkbyIsICJkYXkiKTsNCg0KICBhZGRGb3JtYXRUb2tlbigiZGQiLCAwLCAwLCBmdW5jdGlvbihmb3JtYXQpIHsNCiAgICByZXR1cm4gdGhpcy5sb2NhbGVEYXRhKCkud2Vla2RheXNNaW4odGhpcywgZm9ybWF0KTsNCiAgfSk7DQoNCiAgYWRkRm9ybWF0VG9rZW4oImRkZCIsIDAsIDAsIGZ1bmN0aW9uKGZvcm1hdCkgew0KICAgIHJldHVybiB0aGlzLmxvY2FsZURhdGEoKS53ZWVrZGF5c1Nob3J0KHRoaXMsIGZvcm1hdCk7DQogIH0pOw0KDQogIGFkZEZvcm1hdFRva2VuKCJkZGRkIiwgMCwgMCwgZnVuY3Rpb24oZm9ybWF0KSB7DQogICAgcmV0dXJuIHRoaXMubG9jYWxlRGF0YSgpLndlZWtkYXlzKHRoaXMsIGZvcm1hdCk7DQogIH0pOw0KDQogIGFkZEZvcm1hdFRva2VuKCJlIiwgMCwgMCwgIndlZWtkYXkiKTsNCiAgYWRkRm9ybWF0VG9rZW4oIkUiLCAwLCAwLCAiaXNvV2Vla2RheSIpOw0KDQogIC8vIEFMSUFTRVMNCg0KICBhZGRVbml0QWxpYXMoImRheSIsICJkIik7DQogIGFkZFVuaXRBbGlhcygid2Vla2RheSIsICJlIik7DQogIGFkZFVuaXRBbGlhcygiaXNvV2Vla2RheSIsICJFIik7DQoNCiAgLy8gUEFSU0lORw0KDQogIGFkZFJlZ2V4VG9rZW4oImQiLCBtYXRjaDF0bzIpOw0KICBhZGRSZWdleFRva2VuKCJlIiwgbWF0Y2gxdG8yKTsNCiAgYWRkUmVnZXhUb2tlbigiRSIsIG1hdGNoMXRvMik7DQogIGFkZFJlZ2V4VG9rZW4oImRkIiwgbWF0Y2hXb3JkKTsNCiAgYWRkUmVnZXhUb2tlbigiZGRkIiwgbWF0Y2hXb3JkKTsNCiAgYWRkUmVnZXhUb2tlbigiZGRkZCIsIG1hdGNoV29yZCk7DQoNCiAgYWRkV2Vla1BhcnNlVG9rZW4oWyJkZCIsICJkZGQiLCAiZGRkZCJdLCBmdW5jdGlvbihpbnB1dCwgd2VlaywgY29uZmlnKSB7DQogICAgdmFyIHdlZWtkYXkgPSBjb25maWcuX2xvY2FsZS53ZWVrZGF5c1BhcnNlKGlucHV0KTsNCiAgICAvLyBpZiB3ZSBkaWRuJ3QgZ2V0IGEgd2Vla2RheSBuYW1lLCBtYXJrIHRoZSBkYXRlIGFzIGludmFsaWQNCiAgICBpZiAod2Vla2RheSAhPSBudWxsKSB7DQogICAgICB3ZWVrLmQgPSB3ZWVrZGF5Ow0KICAgIH0gZWxzZSB7DQogICAgICBnZXRQYXJzaW5nRmxhZ3MoY29uZmlnKS5pbnZhbGlkV2Vla2RheSA9IGlucHV0Ow0KICAgIH0NCiAgfSk7DQoNCiAgYWRkV2Vla1BhcnNlVG9rZW4oWyJkIiwgImUiLCAiRSJdLCBmdW5jdGlvbihpbnB1dCwgd2VlaywgY29uZmlnLCB0b2tlbikgew0KICAgIHdlZWtbdG9rZW5dID0gdG9JbnQoaW5wdXQpOw0KICB9KTsNCg0KICAvLyBIRUxQRVJTDQoNCiAgZnVuY3Rpb24gcGFyc2VXZWVrZGF5KGlucHV0LCBsb2NhbGUpIHsNCiAgICBpZiAodHlwZW9mIGlucHV0ICE9PSAic3RyaW5nIikgew0KICAgICAgcmV0dXJuIGlucHV0Ow0KICAgIH0NCg0KICAgIGlmICghaXNOYU4oaW5wdXQpKSB7DQogICAgICByZXR1cm4gcGFyc2VJbnQoaW5wdXQsIDEwKTsNCiAgICB9DQoNCiAgICBpbnB1dCA9IGxvY2FsZS53ZWVrZGF5c1BhcnNlKGlucHV0KTsNCiAgICBpZiAodHlwZW9mIGlucHV0ID09PSAibnVtYmVyIikgew0KICAgICAgcmV0dXJuIGlucHV0Ow0KICAgIH0NCg0KICAgIHJldHVybiBudWxsOw0KICB9DQoNCiAgLy8gTE9DQUxFUw0KDQogIHZhciBkZWZhdWx0TG9jYWxlV2Vla2RheXMgPSAiU3VuZGF5X01vbmRheV9UdWVzZGF5X1dlZG5lc2RheV9UaHVyc2RheV9GcmlkYXlfU2F0dXJkYXkiLnNwbGl0KA0KICAgICJfIg0KICApOw0KICBmdW5jdGlvbiBsb2NhbGVXZWVrZGF5cyhtKSB7DQogICAgcmV0dXJuIHRoaXMuX3dlZWtkYXlzW20uZGF5KCldOw0KICB9DQoNCiAgdmFyIGRlZmF1bHRMb2NhbGVXZWVrZGF5c1Nob3J0ID0gIlN1bl9Nb25fVHVlX1dlZF9UaHVfRnJpX1NhdCIuc3BsaXQoIl8iKTsNCiAgZnVuY3Rpb24gbG9jYWxlV2Vla2RheXNTaG9ydChtKSB7DQogICAgcmV0dXJuIHRoaXMuX3dlZWtkYXlzU2hvcnRbbS5kYXkoKV07DQogIH0NCg0KICB2YXIgZGVmYXVsdExvY2FsZVdlZWtkYXlzTWluID0gIlN1X01vX1R1X1dlX1RoX0ZyX1NhIi5zcGxpdCgiXyIpOw0KICBmdW5jdGlvbiBsb2NhbGVXZWVrZGF5c01pbihtKSB7DQogICAgcmV0dXJuIHRoaXMuX3dlZWtkYXlzTWluW20uZGF5KCldOw0KICB9DQoNCiAgZnVuY3Rpb24gbG9jYWxlV2Vla2RheXNQYXJzZSh3ZWVrZGF5TmFtZSkgew0KICAgIHZhciBpLCBtb20sIHJlZ2V4Ow0KDQogICAgdGhpcy5fd2Vla2RheXNQYXJzZSA9IHRoaXMuX3dlZWtkYXlzUGFyc2UgfHwgW107DQoNCiAgICBmb3IgKGkgPSAwOyBpIDwgNzsgaSsrKSB7DQogICAgICAvLyBtYWtlIHRoZSByZWdleCBpZiB3ZSBkb24ndCBoYXZlIGl0IGFscmVhZHkNCiAgICAgIGlmICghdGhpcy5fd2Vla2RheXNQYXJzZVtpXSkgew0KICAgICAgICBtb20gPSBsb2NhbF9fY3JlYXRlTG9jYWwoWzIwMDAsIDFdKS5kYXkoaSk7DQogICAgICAgIHJlZ2V4ID0NCiAgICAgICAgICAiXiIgKw0KICAgICAgICAgIHRoaXMud2Vla2RheXMobW9tLCAiIikgKw0KICAgICAgICAgICJ8XiIgKw0KICAgICAgICAgIHRoaXMud2Vla2RheXNTaG9ydChtb20sICIiKSArDQogICAgICAgICAgInxeIiArDQogICAgICAgICAgdGhpcy53ZWVrZGF5c01pbihtb20sICIiKTsNCiAgICAgICAgdGhpcy5fd2Vla2RheXNQYXJzZVtpXSA9IG5ldyBSZWdFeHAocmVnZXgucmVwbGFjZSgiLiIsICIiKSwgImkiKTsNCiAgICAgIH0NCiAgICAgIC8vIHRlc3QgdGhlIHJlZ2V4DQogICAgICBpZiAodGhpcy5fd2Vla2RheXNQYXJzZVtpXS50ZXN0KHdlZWtkYXlOYW1lKSkgew0KICAgICAgICByZXR1cm4gaTsNCiAgICAgIH0NCiAgICB9DQogIH0NCg0KICAvLyBNT01FTlRTDQoNCiAgZnVuY3Rpb24gZ2V0U2V0RGF5T2ZXZWVrKGlucHV0KSB7DQogICAgdmFyIGRheSA9IHRoaXMuX2lzVVRDID8gdGhpcy5fZC5nZXRVVENEYXkoKSA6IHRoaXMuX2QuZ2V0RGF5KCk7DQogICAgaWYgKGlucHV0ICE9IG51bGwpIHsNCiAgICAgIGlucHV0ID0gcGFyc2VXZWVrZGF5KGlucHV0LCB0aGlzLmxvY2FsZURhdGEoKSk7DQogICAgICByZXR1cm4gdGhpcy5hZGQoaW5wdXQgLSBkYXksICJkIik7DQogICAgfSBlbHNlIHsNCiAgICAgIHJldHVybiBkYXk7DQogICAgfQ0KICB9DQoNCiAgZnVuY3Rpb24gZ2V0U2V0TG9jYWxlRGF5T2ZXZWVrKGlucHV0KSB7DQogICAgdmFyIHdlZWtkYXkgPSAodGhpcy5kYXkoKSArIDcgLSB0aGlzLmxvY2FsZURhdGEoKS5fd2Vlay5kb3cpICUgNzsNCiAgICByZXR1cm4gaW5wdXQgPT0gbnVsbCA/IHdlZWtkYXkgOiB0aGlzLmFkZChpbnB1dCAtIHdlZWtkYXksICJkIik7DQogIH0NCg0KICBmdW5jdGlvbiBnZXRTZXRJU09EYXlPZldlZWsoaW5wdXQpIHsNCiAgICAvLyBiZWhhdmVzIHRoZSBzYW1lIGFzIG1vbWVudCNkYXkgZXhjZXB0DQogICAgLy8gYXMgYSBnZXR0ZXIsIHJldHVybnMgNyBpbnN0ZWFkIG9mIDAgKDEtNyByYW5nZSBpbnN0ZWFkIG9mIDAtNikNCiAgICAvLyBhcyBhIHNldHRlciwgc3VuZGF5IHNob3VsZCBiZWxvbmcgdG8gdGhlIHByZXZpb3VzIHdlZWsuDQogICAgcmV0dXJuIGlucHV0ID09IG51bGwNCiAgICAgID8gdGhpcy5kYXkoKSB8fCA3DQogICAgICA6IHRoaXMuZGF5KHRoaXMuZGF5KCkgJSA3ID8gaW5wdXQgOiBpbnB1dCAtIDcpOw0KICB9DQoNCiAgYWRkRm9ybWF0VG9rZW4oIkgiLCBbIkhIIiwgMl0sIDAsICJob3VyIik7DQogIGFkZEZvcm1hdFRva2VuKCJoIiwgWyJoaCIsIDJdLCAwLCBmdW5jdGlvbigpIHsNCiAgICByZXR1cm4gdGhpcy5ob3VycygpICUgMTIgfHwgMTI7DQogIH0pOw0KDQogIGZ1bmN0aW9uIG1lcmlkaWVtKHRva2VuLCBsb3dlcmNhc2UpIHsNCiAgICBhZGRGb3JtYXRUb2tlbih0b2tlbiwgMCwgMCwgZnVuY3Rpb24oKSB7DQogICAgICByZXR1cm4gdGhpcy5sb2NhbGVEYXRhKCkubWVyaWRpZW0oDQogICAgICAgIHRoaXMuaG91cnMoKSwNCiAgICAgICAgdGhpcy5taW51dGVzKCksDQogICAgICAgIGxvd2VyY2FzZQ0KICAgICAgKTsNCiAgICB9KTsNCiAgfQ0KDQogIG1lcmlkaWVtKCJhIiwgdHJ1ZSk7DQogIG1lcmlkaWVtKCJBIiwgZmFsc2UpOw0KDQogIC8vIEFMSUFTRVMNCg0KICBhZGRVbml0QWxpYXMoImhvdXIiLCAiaCIpOw0KDQogIC8vIFBBUlNJTkcNCg0KICBmdW5jdGlvbiBtYXRjaE1lcmlkaWVtKGlzU3RyaWN0LCBsb2NhbGUpIHsNCiAgICByZXR1cm4gbG9jYWxlLl9tZXJpZGllbVBhcnNlOw0KICB9DQoNCiAgYWRkUmVnZXhUb2tlbigiYSIsIG1hdGNoTWVyaWRpZW0pOw0KICBhZGRSZWdleFRva2VuKCJBIiwgbWF0Y2hNZXJpZGllbSk7DQogIGFkZFJlZ2V4VG9rZW4oIkgiLCBtYXRjaDF0bzIpOw0KICBhZGRSZWdleFRva2VuKCJoIiwgbWF0Y2gxdG8yKTsNCiAgYWRkUmVnZXhUb2tlbigiSEgiLCBtYXRjaDF0bzIsIG1hdGNoMik7DQogIGFkZFJlZ2V4VG9rZW4oImhoIiwgbWF0Y2gxdG8yLCBtYXRjaDIpOw0KDQogIGFkZFBhcnNlVG9rZW4oWyJIIiwgIkhIIl0sIEhPVVIpOw0KICBhZGRQYXJzZVRva2VuKFsiYSIsICJBIl0sIGZ1bmN0aW9uKGlucHV0LCBhcnJheSwgY29uZmlnKSB7DQogICAgY29uZmlnLl9pc1BtID0gY29uZmlnLl9sb2NhbGUuaXNQTShpbnB1dCk7DQogICAgY29uZmlnLl9tZXJpZGllbSA9IGlucHV0Ow0KICB9KTsNCiAgYWRkUGFyc2VUb2tlbihbImgiLCAiaGgiXSwgZnVuY3Rpb24oaW5wdXQsIGFycmF5LCBjb25maWcpIHsNCiAgICBhcnJheVtIT1VSXSA9IHRvSW50KGlucHV0KTsNCiAgICBnZXRQYXJzaW5nRmxhZ3MoY29uZmlnKS5iaWdIb3VyID0gdHJ1ZTsNCiAgfSk7DQoNCiAgLy8gTE9DQUxFUw0KDQogIGZ1bmN0aW9uIGxvY2FsZUlzUE0oaW5wdXQpIHsNCiAgICAvLyBJRTggUXVpcmtzIE1vZGUgJiBJRTcgU3RhbmRhcmRzIE1vZGUgZG8gbm90IGFsbG93IGFjY2Vzc2luZyBzdHJpbmdzIGxpa2UgYXJyYXlzDQogICAgLy8gVXNpbmcgY2hhckF0IHNob3VsZCBiZSBtb3JlIGNvbXBhdGlibGUuDQogICAgcmV0dXJuIChpbnB1dCArICIiKS50b0xvd2VyQ2FzZSgpLmNoYXJBdCgwKSA9PT0gInAiOw0KICB9DQoNCiAgdmFyIGRlZmF1bHRMb2NhbGVNZXJpZGllbVBhcnNlID0gL1thcF1cLj9tP1wuPy9pOw0KICBmdW5jdGlvbiBsb2NhbGVNZXJpZGllbShob3VycywgbWludXRlcywgaXNMb3dlcikgew0KICAgIGlmIChob3VycyA+IDExKSB7DQogICAgICByZXR1cm4gaXNMb3dlciA/ICJwbSIgOiAiUE0iOw0KICAgIH0gZWxzZSB7DQogICAgICByZXR1cm4gaXNMb3dlciA/ICJhbSIgOiAiQU0iOw0KICAgIH0NCiAgfQ0KDQogIC8vIE1PTUVOVFMNCg0KICAvLyBTZXR0aW5nIHRoZSBob3VyIHNob3VsZCBrZWVwIHRoZSB0aW1lLCBiZWNhdXNlIHRoZSB1c2VyIGV4cGxpY2l0bHkNCiAgLy8gc3BlY2lmaWVkIHdoaWNoIGhvdXIgaGUgd2FudHMuIFNvIHRyeWluZyB0byBtYWludGFpbiB0aGUgc2FtZSBob3VyIChpbg0KICAvLyBhIG5ldyB0aW1lem9uZSkgbWFrZXMgc2Vuc2UuIEFkZGluZy9zdWJ0cmFjdGluZyBob3VycyBkb2VzIG5vdCBmb2xsb3cNCiAgLy8gdGhpcyBydWxlLg0KICB2YXIgZ2V0U2V0SG91ciA9IG1ha2VHZXRTZXQoIkhvdXJzIiwgdHJ1ZSk7DQoNCiAgYWRkRm9ybWF0VG9rZW4oIm0iLCBbIm1tIiwgMl0sIDAsICJtaW51dGUiKTsNCg0KICAvLyBBTElBU0VTDQoNCiAgYWRkVW5pdEFsaWFzKCJtaW51dGUiLCAibSIpOw0KDQogIC8vIFBBUlNJTkcNCg0KICBhZGRSZWdleFRva2VuKCJtIiwgbWF0Y2gxdG8yKTsNCiAgYWRkUmVnZXhUb2tlbigibW0iLCBtYXRjaDF0bzIsIG1hdGNoMik7DQogIGFkZFBhcnNlVG9rZW4oWyJtIiwgIm1tIl0sIE1JTlVURSk7DQoNCiAgLy8gTU9NRU5UUw0KDQogIHZhciBnZXRTZXRNaW51dGUgPSBtYWtlR2V0U2V0KCJNaW51dGVzIiwgZmFsc2UpOw0KDQogIGFkZEZvcm1hdFRva2VuKCJzIiwgWyJzcyIsIDJdLCAwLCAic2Vjb25kIik7DQoNCiAgLy8gQUxJQVNFUw0KDQogIGFkZFVuaXRBbGlhcygic2Vjb25kIiwgInMiKTsNCg0KICAvLyBQQVJTSU5HDQoNCiAgYWRkUmVnZXhUb2tlbigicyIsIG1hdGNoMXRvMik7DQogIGFkZFJlZ2V4VG9rZW4oInNzIiwgbWF0Y2gxdG8yLCBtYXRjaDIpOw0KICBhZGRQYXJzZVRva2VuKFsicyIsICJzcyJdLCBTRUNPTkQpOw0KDQogIC8vIE1PTUVOVFMNCg0KICB2YXIgZ2V0U2V0U2Vjb25kID0gbWFrZUdldFNldCgiU2Vjb25kcyIsIGZhbHNlKTsNCg0KICBhZGRGb3JtYXRUb2tlbigiUyIsIDAsIDAsIGZ1bmN0aW9uKCkgew0KICAgIHJldHVybiB+fih0aGlzLm1pbGxpc2Vjb25kKCkgLyAxMDApOw0KICB9KTsNCg0KICBhZGRGb3JtYXRUb2tlbigwLCBbIlNTIiwgMl0sIDAsIGZ1bmN0aW9uKCkgew0KICAgIHJldHVybiB+fih0aGlzLm1pbGxpc2Vjb25kKCkgLyAxMCk7DQogIH0pOw0KDQogIGFkZEZvcm1hdFRva2VuKDAsIFsiU1NTIiwgM10sIDAsICJtaWxsaXNlY29uZCIpOw0KICBhZGRGb3JtYXRUb2tlbigwLCBbIlNTU1MiLCA0XSwgMCwgZnVuY3Rpb24oKSB7DQogICAgcmV0dXJuIHRoaXMubWlsbGlzZWNvbmQoKSAqIDEwOw0KICB9KTsNCiAgYWRkRm9ybWF0VG9rZW4oMCwgWyJTU1NTUyIsIDVdLCAwLCBmdW5jdGlvbigpIHsNCiAgICByZXR1cm4gdGhpcy5taWxsaXNlY29uZCgpICogMTAwOw0KICB9KTsNCiAgYWRkRm9ybWF0VG9rZW4oMCwgWyJTU1NTU1MiLCA2XSwgMCwgZnVuY3Rpb24oKSB7DQogICAgcmV0dXJuIHRoaXMubWlsbGlzZWNvbmQoKSAqIDEwMDA7DQogIH0pOw0KICBhZGRGb3JtYXRUb2tlbigwLCBbIlNTU1NTU1MiLCA3XSwgMCwgZnVuY3Rpb24oKSB7DQogICAgcmV0dXJuIHRoaXMubWlsbGlzZWNvbmQoKSAqIDEwMDAwOw0KICB9KTsNCiAgYWRkRm9ybWF0VG9rZW4oMCwgWyJTU1NTU1NTUyIsIDhdLCAwLCBmdW5jdGlvbigpIHsNCiAgICByZXR1cm4gdGhpcy5taWxsaXNlY29uZCgpICogMTAwMDAwOw0KICB9KTsNCiAgYWRkRm9ybWF0VG9rZW4oMCwgWyJTU1NTU1NTU1MiLCA5XSwgMCwgZnVuY3Rpb24oKSB7DQogICAgcmV0dXJuIHRoaXMubWlsbGlzZWNvbmQoKSAqIDEwMDAwMDA7DQogIH0pOw0KDQogIC8vIEFMSUFTRVMNCg0KICBhZGRVbml0QWxpYXMoIm1pbGxpc2Vjb25kIiwgIm1zIik7DQoNCiAgLy8gUEFSU0lORw0KDQogIGFkZFJlZ2V4VG9rZW4oIlMiLCBtYXRjaDF0bzMsIG1hdGNoMSk7DQogIGFkZFJlZ2V4VG9rZW4oIlNTIiwgbWF0Y2gxdG8zLCBtYXRjaDIpOw0KICBhZGRSZWdleFRva2VuKCJTU1MiLCBtYXRjaDF0bzMsIG1hdGNoMyk7DQoNCiAgdmFyIHRva2VuOw0KICBmb3IgKHRva2VuID0gIlNTU1MiOyB0b2tlbi5sZW5ndGggPD0gOTsgdG9rZW4gKz0gIlMiKSB7DQogICAgYWRkUmVnZXhUb2tlbih0b2tlbiwgbWF0Y2hVbnNpZ25lZCk7DQogIH0NCg0KICBmdW5jdGlvbiBwYXJzZU1zKGlucHV0LCBhcnJheSkgew0KICAgIGFycmF5W01JTExJU0VDT05EXSA9IHRvSW50KCgiMC4iICsgaW5wdXQpICogMTAwMCk7DQogIH0NCg0KICBmb3IgKHRva2VuID0gIlMiOyB0b2tlbi5sZW5ndGggPD0gOTsgdG9rZW4gKz0gIlMiKSB7DQogICAgYWRkUGFyc2VUb2tlbih0b2tlbiwgcGFyc2VNcyk7DQogIH0NCiAgLy8gTU9NRU5UUw0KDQogIHZhciBnZXRTZXRNaWxsaXNlY29uZCA9IG1ha2VHZXRTZXQoIk1pbGxpc2Vjb25kcyIsIGZhbHNlKTsNCg0KICBhZGRGb3JtYXRUb2tlbigieiIsIDAsIDAsICJ6b25lQWJiciIpOw0KICBhZGRGb3JtYXRUb2tlbigienoiLCAwLCAwLCAiem9uZU5hbWUiKTsNCg0KICAvLyBNT01FTlRTDQoNCiAgZnVuY3Rpb24gZ2V0Wm9uZUFiYnIoKSB7DQogICAgcmV0dXJuIHRoaXMuX2lzVVRDID8gIlVUQyIgOiAiIjsNCiAgfQ0KDQogIGZ1bmN0aW9uIGdldFpvbmVOYW1lKCkgew0KICAgIHJldHVybiB0aGlzLl9pc1VUQyA/ICJDb29yZGluYXRlZCBVbml2ZXJzYWwgVGltZSIgOiAiIjsNCiAgfQ0KDQogIHZhciBtb21lbnRQcm90b3R5cGVfX3Byb3RvID0gTW9tZW50LnByb3RvdHlwZTsNCg0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLmFkZCA9IGFkZF9zdWJ0cmFjdF9fYWRkOw0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLmNhbGVuZGFyID0gbW9tZW50X2NhbGVuZGFyX19jYWxlbmRhcjsNCiAgbW9tZW50UHJvdG90eXBlX19wcm90by5jbG9uZSA9IGNsb25lOw0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLmRpZmYgPSBkaWZmOw0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLmVuZE9mID0gZW5kT2Y7DQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8uZm9ybWF0ID0gZm9ybWF0Ow0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLmZyb20gPSBmcm9tOw0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLmZyb21Ob3cgPSBmcm9tTm93Ow0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLnRvID0gdG87DQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8udG9Ob3cgPSB0b05vdzsNCiAgbW9tZW50UHJvdG90eXBlX19wcm90by5nZXQgPSBnZXRTZXQ7DQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8uaW52YWxpZEF0ID0gaW52YWxpZEF0Ow0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLmlzQWZ0ZXIgPSBpc0FmdGVyOw0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLmlzQmVmb3JlID0gaXNCZWZvcmU7DQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8uaXNCZXR3ZWVuID0gaXNCZXR3ZWVuOw0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLmlzU2FtZSA9IGlzU2FtZTsNCiAgbW9tZW50UHJvdG90eXBlX19wcm90by5pc1ZhbGlkID0gbW9tZW50X3ZhbGlkX19pc1ZhbGlkOw0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLmxhbmcgPSBsYW5nOw0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLmxvY2FsZSA9IGxvY2FsZTsNCiAgbW9tZW50UHJvdG90eXBlX19wcm90by5sb2NhbGVEYXRhID0gbG9jYWxlRGF0YTsNCiAgbW9tZW50UHJvdG90eXBlX19wcm90by5tYXggPSBwcm90b3R5cGVNYXg7DQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8ubWluID0gcHJvdG90eXBlTWluOw0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLnBhcnNpbmdGbGFncyA9IHBhcnNpbmdGbGFnczsNCiAgbW9tZW50UHJvdG90eXBlX19wcm90by5zZXQgPSBnZXRTZXQ7DQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8uc3RhcnRPZiA9IHN0YXJ0T2Y7DQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8uc3VidHJhY3QgPSBhZGRfc3VidHJhY3RfX3N1YnRyYWN0Ow0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLnRvQXJyYXkgPSB0b0FycmF5Ow0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLnRvT2JqZWN0ID0gdG9PYmplY3Q7DQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8udG9EYXRlID0gdG9EYXRlOw0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLnRvSVNPU3RyaW5nID0gbW9tZW50X2Zvcm1hdF9fdG9JU09TdHJpbmc7DQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8udG9KU09OID0gbW9tZW50X2Zvcm1hdF9fdG9JU09TdHJpbmc7DQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8udG9TdHJpbmcgPSB0b1N0cmluZzsNCiAgbW9tZW50UHJvdG90eXBlX19wcm90by51bml4ID0gdW5peDsNCiAgbW9tZW50UHJvdG90eXBlX19wcm90by52YWx1ZU9mID0gdG9fdHlwZV9fdmFsdWVPZjsNCg0KICAvLyBZZWFyDQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8ueWVhciA9IGdldFNldFllYXI7DQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8uaXNMZWFwWWVhciA9IGdldElzTGVhcFllYXI7DQoNCiAgLy8gV2VlayBZZWFyDQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8ud2Vla1llYXIgPSBnZXRTZXRXZWVrWWVhcjsNCiAgbW9tZW50UHJvdG90eXBlX19wcm90by5pc29XZWVrWWVhciA9IGdldFNldElTT1dlZWtZZWFyOw0KDQogIC8vIFF1YXJ0ZXINCiAgbW9tZW50UHJvdG90eXBlX19wcm90by5xdWFydGVyID0gbW9tZW50UHJvdG90eXBlX19wcm90by5xdWFydGVycyA9IGdldFNldFF1YXJ0ZXI7DQoNCiAgLy8gTW9udGgNCiAgbW9tZW50UHJvdG90eXBlX19wcm90by5tb250aCA9IGdldFNldE1vbnRoOw0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLmRheXNJbk1vbnRoID0gZ2V0RGF5c0luTW9udGg7DQoNCiAgLy8gV2Vlaw0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLndlZWsgPSBtb21lbnRQcm90b3R5cGVfX3Byb3RvLndlZWtzID0gZ2V0U2V0V2VlazsNCiAgbW9tZW50UHJvdG90eXBlX19wcm90by5pc29XZWVrID0gbW9tZW50UHJvdG90eXBlX19wcm90by5pc29XZWVrcyA9IGdldFNldElTT1dlZWs7DQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8ud2Vla3NJblllYXIgPSBnZXRXZWVrc0luWWVhcjsNCiAgbW9tZW50UHJvdG90eXBlX19wcm90by5pc29XZWVrc0luWWVhciA9IGdldElTT1dlZWtzSW5ZZWFyOw0KDQogIC8vIERheQ0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLmRhdGUgPSBnZXRTZXREYXlPZk1vbnRoOw0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLmRheSA9IG1vbWVudFByb3RvdHlwZV9fcHJvdG8uZGF5cyA9IGdldFNldERheU9mV2VlazsNCiAgbW9tZW50UHJvdG90eXBlX19wcm90by53ZWVrZGF5ID0gZ2V0U2V0TG9jYWxlRGF5T2ZXZWVrOw0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLmlzb1dlZWtkYXkgPSBnZXRTZXRJU09EYXlPZldlZWs7DQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8uZGF5T2ZZZWFyID0gZ2V0U2V0RGF5T2ZZZWFyOw0KDQogIC8vIEhvdXINCiAgbW9tZW50UHJvdG90eXBlX19wcm90by5ob3VyID0gbW9tZW50UHJvdG90eXBlX19wcm90by5ob3VycyA9IGdldFNldEhvdXI7DQoNCiAgLy8gTWludXRlDQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8ubWludXRlID0gbW9tZW50UHJvdG90eXBlX19wcm90by5taW51dGVzID0gZ2V0U2V0TWludXRlOw0KDQogIC8vIFNlY29uZA0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLnNlY29uZCA9IG1vbWVudFByb3RvdHlwZV9fcHJvdG8uc2Vjb25kcyA9IGdldFNldFNlY29uZDsNCg0KICAvLyBNaWxsaXNlY29uZA0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLm1pbGxpc2Vjb25kID0gbW9tZW50UHJvdG90eXBlX19wcm90by5taWxsaXNlY29uZHMgPSBnZXRTZXRNaWxsaXNlY29uZDsNCg0KICAvLyBPZmZzZXQNCiAgbW9tZW50UHJvdG90eXBlX19wcm90by51dGNPZmZzZXQgPSBnZXRTZXRPZmZzZXQ7DQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8udXRjID0gc2V0T2Zmc2V0VG9VVEM7DQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8ubG9jYWwgPSBzZXRPZmZzZXRUb0xvY2FsOw0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLnBhcnNlWm9uZSA9IHNldE9mZnNldFRvUGFyc2VkT2Zmc2V0Ow0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLmhhc0FsaWduZWRIb3VyT2Zmc2V0ID0gaGFzQWxpZ25lZEhvdXJPZmZzZXQ7DQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8uaXNEU1QgPSBpc0RheWxpZ2h0U2F2aW5nVGltZTsNCiAgbW9tZW50UHJvdG90eXBlX19wcm90by5pc0RTVFNoaWZ0ZWQgPSBpc0RheWxpZ2h0U2F2aW5nVGltZVNoaWZ0ZWQ7DQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8uaXNMb2NhbCA9IGlzTG9jYWw7DQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8uaXNVdGNPZmZzZXQgPSBpc1V0Y09mZnNldDsNCiAgbW9tZW50UHJvdG90eXBlX19wcm90by5pc1V0YyA9IGlzVXRjOw0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLmlzVVRDID0gaXNVdGM7DQoNCiAgLy8gVGltZXpvbmUNCiAgbW9tZW50UHJvdG90eXBlX19wcm90by56b25lQWJiciA9IGdldFpvbmVBYmJyOw0KICBtb21lbnRQcm90b3R5cGVfX3Byb3RvLnpvbmVOYW1lID0gZ2V0Wm9uZU5hbWU7DQoNCiAgLy8gRGVwcmVjYXRpb25zDQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8uZGF0ZXMgPSBkZXByZWNhdGUoDQogICAgImRhdGVzIGFjY2Vzc29yIGlzIGRlcHJlY2F0ZWQuIFVzZSBkYXRlIGluc3RlYWQuIiwNCiAgICBnZXRTZXREYXlPZk1vbnRoDQogICk7DQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8ubW9udGhzID0gZGVwcmVjYXRlKA0KICAgICJtb250aHMgYWNjZXNzb3IgaXMgZGVwcmVjYXRlZC4gVXNlIG1vbnRoIGluc3RlYWQiLA0KICAgIGdldFNldE1vbnRoDQogICk7DQogIG1vbWVudFByb3RvdHlwZV9fcHJvdG8ueWVhcnMgPSBkZXByZWNhdGUoDQogICAgInllYXJzIGFjY2Vzc29yIGlzIGRlcHJlY2F0ZWQuIFVzZSB5ZWFyIGluc3RlYWQiLA0KICAgIGdldFNldFllYXINCiAgKTsNCiAgbW9tZW50UHJvdG90eXBlX19wcm90by56b25lID0gZGVwcmVjYXRlKA0KICAgICJtb21lbnQoKS56b25lIGlzIGRlcHJlY2F0ZWQsIHVzZSBtb21lbnQoKS51dGNPZmZzZXQgaW5zdGVhZC4gaHR0cHM6Ly9naXRodWIuY29tL21vbWVudC9tb21lbnQvaXNzdWVzLzE3NzkiLA0KICAgIGdldFNldFpvbmUNCiAgKTsNCg0KICB2YXIgbW9tZW50UHJvdG90eXBlID0gbW9tZW50UHJvdG90eXBlX19wcm90bzsNCg0KICBmdW5jdGlvbiBtb21lbnRfX2NyZWF0ZVVuaXgoaW5wdXQpIHsNCiAgICByZXR1cm4gbG9jYWxfX2NyZWF0ZUxvY2FsKGlucHV0ICogMTAwMCk7DQogIH0NCg0KICBmdW5jdGlvbiBtb21lbnRfX2NyZWF0ZUluWm9uZSgpIHsNCiAgICByZXR1cm4gbG9jYWxfX2NyZWF0ZUxvY2FsLmFwcGx5KG51bGwsIGFyZ3VtZW50cykucGFyc2Vab25lKCk7DQogIH0NCg0KICB2YXIgZGVmYXVsdENhbGVuZGFyID0gew0KICAgIHNhbWVEYXk6ICJbVG9kYXkgYXRdIExUIiwNCiAgICBuZXh0RGF5OiAiW1RvbW9ycm93IGF0XSBMVCIsDQogICAgbmV4dFdlZWs6ICJkZGRkIFthdF0gTFQiLA0KICAgIGxhc3REYXk6ICJbWWVzdGVyZGF5IGF0XSBMVCIsDQogICAgbGFzdFdlZWs6ICJbTGFzdF0gZGRkZCBbYXRdIExUIiwNCiAgICBzYW1lRWxzZTogIkwiDQogIH07DQoNCiAgZnVuY3Rpb24gbG9jYWxlX2NhbGVuZGFyX19jYWxlbmRhcihrZXksIG1vbSwgbm93KSB7DQogICAgdmFyIG91dHB1dCA9IHRoaXMuX2NhbGVuZGFyW2tleV07DQogICAgcmV0dXJuIHR5cGVvZiBvdXRwdXQgPT09ICJmdW5jdGlvbiIgPyBvdXRwdXQuY2FsbChtb20sIG5vdykgOiBvdXRwdXQ7DQogIH0NCg0KICB2YXIgZGVmYXVsdExvbmdEYXRlRm9ybWF0ID0gew0KICAgIExUUzogImg6bW06c3MgQSIsDQogICAgTFQ6ICJoOm1tIEEiLA0KICAgIEw6ICJNTS9ERC9ZWVlZIiwNCiAgICBMTDogIk1NTU0gRCwgWVlZWSIsDQogICAgTExMOiAiTU1NTSBELCBZWVlZIGg6bW0gQSIsDQogICAgTExMTDogImRkZGQsIE1NTU0gRCwgWVlZWSBoOm1tIEEiDQogIH07DQoNCiAgZnVuY3Rpb24gbG9uZ0RhdGVGb3JtYXQoa2V5KSB7DQogICAgdmFyIGZvcm1hdCA9IHRoaXMuX2xvbmdEYXRlRm9ybWF0W2tleV0sDQogICAgICBmb3JtYXRVcHBlciA9IHRoaXMuX2xvbmdEYXRlRm9ybWF0W2tleS50b1VwcGVyQ2FzZSgpXTsNCg0KICAgIGlmIChmb3JtYXQgfHwgIWZvcm1hdFVwcGVyKSB7DQogICAgICByZXR1cm4gZm9ybWF0Ow0KICAgIH0NCg0KICAgIHRoaXMuX2xvbmdEYXRlRm9ybWF0W2tleV0gPSBmb3JtYXRVcHBlci5yZXBsYWNlKA0KICAgICAgL01NTU18TU18RER8ZGRkZC9nLA0KICAgICAgZnVuY3Rpb24odmFsKSB7DQogICAgICAgIHJldHVybiB2YWwuc2xpY2UoMSk7DQogICAgICB9DQogICAgKTsNCg0KICAgIHJldHVybiB0aGlzLl9sb25nRGF0ZUZvcm1hdFtrZXldOw0KICB9DQoNCiAgdmFyIGRlZmF1bHRJbnZhbGlkRGF0ZSA9ICJJbnZhbGlkIGRhdGUiOw0KDQogIGZ1bmN0aW9uIGludmFsaWREYXRlKCkgew0KICAgIHJldHVybiB0aGlzLl9pbnZhbGlkRGF0ZTsNCiAgfQ0KDQogIHZhciBkZWZhdWx0T3JkaW5hbCA9ICIlZCI7DQogIHZhciBkZWZhdWx0T3JkaW5hbFBhcnNlID0gL1xkezEsMn0vOw0KDQogIGZ1bmN0aW9uIG9yZGluYWwobnVtYmVyKSB7DQogICAgcmV0dXJuIHRoaXMuX29yZGluYWwucmVwbGFjZSgiJWQiLCBudW1iZXIpOw0KICB9DQoNCiAgZnVuY3Rpb24gcHJlUGFyc2VQb3N0Rm9ybWF0KHN0cmluZykgew0KICAgIHJldHVybiBzdHJpbmc7DQogIH0NCg0KICB2YXIgZGVmYXVsdFJlbGF0aXZlVGltZSA9IHsNCiAgICBmdXR1cmU6ICJpbiAlcyIsDQogICAgcGFzdDogIiVzIGFnbyIsDQogICAgczogImEgZmV3IHNlY29uZHMiLA0KICAgIG06ICJhIG1pbnV0ZSIsDQogICAgbW06ICIlZCBtaW51dGVzIiwNCiAgICBoOiAiYW4gaG91ciIsDQogICAgaGg6ICIlZCBob3VycyIsDQogICAgZDogImEgZGF5IiwNCiAgICBkZDogIiVkIGRheXMiLA0KICAgIE06ICJhIG1vbnRoIiwNCiAgICBNTTogIiVkIG1vbnRocyIsDQogICAgeTogImEgeWVhciIsDQogICAgeXk6ICIlZCB5ZWFycyINCiAgfTsNCg0KICBmdW5jdGlvbiByZWxhdGl2ZV9fcmVsYXRpdmVUaW1lKG51bWJlciwgd2l0aG91dFN1ZmZpeCwgc3RyaW5nLCBpc0Z1dHVyZSkgew0KICAgIHZhciBvdXRwdXQgPSB0aGlzLl9yZWxhdGl2ZVRpbWVbc3RyaW5nXTsNCiAgICByZXR1cm4gdHlwZW9mIG91dHB1dCA9PT0gImZ1bmN0aW9uIg0KICAgICAgPyBvdXRwdXQobnVtYmVyLCB3aXRob3V0U3VmZml4LCBzdHJpbmcsIGlzRnV0dXJlKQ0KICAgICAgOiBvdXRwdXQucmVwbGFjZSgvJWQvaSwgbnVtYmVyKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIHBhc3RGdXR1cmUoZGlmZiwgb3V0cHV0KSB7DQogICAgdmFyIGZvcm1hdCA9IHRoaXMuX3JlbGF0aXZlVGltZVtkaWZmID4gMCA/ICJmdXR1cmUiIDogInBhc3QiXTsNCiAgICByZXR1cm4gdHlwZW9mIGZvcm1hdCA9PT0gImZ1bmN0aW9uIg0KICAgICAgPyBmb3JtYXQob3V0cHV0KQ0KICAgICAgOiBmb3JtYXQucmVwbGFjZSgvJXMvaSwgb3V0cHV0KTsNCiAgfQ0KDQogIGZ1bmN0aW9uIGxvY2FsZV9zZXRfX3NldChjb25maWcpIHsNCiAgICB2YXIgcHJvcCwgaTsNCiAgICBmb3IgKGkgaW4gY29uZmlnKSB7DQogICAgICBwcm9wID0gY29uZmlnW2ldOw0KICAgICAgaWYgKHR5cGVvZiBwcm9wID09PSAiZnVuY3Rpb24iKSB7DQogICAgICAgIHRoaXNbaV0gPSBwcm9wOw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgdGhpc1siXyIgKyBpXSA9IHByb3A7DQogICAgICB9DQogICAgfQ0KICAgIC8vIExlbmllbnQgb3JkaW5hbCBwYXJzaW5nIGFjY2VwdHMganVzdCBhIG51bWJlciBpbiBhZGRpdGlvbiB0bw0KICAgIC8vIG51bWJlciArIChwb3NzaWJseSkgc3R1ZmYgY29taW5nIGZyb20gX29yZGluYWxQYXJzZUxlbmllbnQuDQogICAgdGhpcy5fb3JkaW5hbFBhcnNlTGVuaWVudCA9IG5ldyBSZWdFeHAoDQogICAgICB0aGlzLl9vcmRpbmFsUGFyc2Uuc291cmNlICsgInwiICsgL1xkezEsMn0vLnNvdXJjZQ0KICAgICk7DQogIH0NCg0KICB2YXIgcHJvdG90eXBlX19wcm90byA9IExvY2FsZS5wcm90b3R5cGU7DQoNCiAgcHJvdG90eXBlX19wcm90by5fY2FsZW5kYXIgPSBkZWZhdWx0Q2FsZW5kYXI7DQogIHByb3RvdHlwZV9fcHJvdG8uY2FsZW5kYXIgPSBsb2NhbGVfY2FsZW5kYXJfX2NhbGVuZGFyOw0KICBwcm90b3R5cGVfX3Byb3RvLl9sb25nRGF0ZUZvcm1hdCA9IGRlZmF1bHRMb25nRGF0ZUZvcm1hdDsNCiAgcHJvdG90eXBlX19wcm90by5sb25nRGF0ZUZvcm1hdCA9IGxvbmdEYXRlRm9ybWF0Ow0KICBwcm90b3R5cGVfX3Byb3RvLl9pbnZhbGlkRGF0ZSA9IGRlZmF1bHRJbnZhbGlkRGF0ZTsNCiAgcHJvdG90eXBlX19wcm90by5pbnZhbGlkRGF0ZSA9IGludmFsaWREYXRlOw0KICBwcm90b3R5cGVfX3Byb3RvLl9vcmRpbmFsID0gZGVmYXVsdE9yZGluYWw7DQogIHByb3RvdHlwZV9fcHJvdG8ub3JkaW5hbCA9IG9yZGluYWw7DQogIHByb3RvdHlwZV9fcHJvdG8uX29yZGluYWxQYXJzZSA9IGRlZmF1bHRPcmRpbmFsUGFyc2U7DQogIHByb3RvdHlwZV9fcHJvdG8ucHJlcGFyc2UgPSBwcmVQYXJzZVBvc3RGb3JtYXQ7DQogIHByb3RvdHlwZV9fcHJvdG8ucG9zdGZvcm1hdCA9IHByZVBhcnNlUG9zdEZvcm1hdDsNCiAgcHJvdG90eXBlX19wcm90by5fcmVsYXRpdmVUaW1lID0gZGVmYXVsdFJlbGF0aXZlVGltZTsNCiAgcHJvdG90eXBlX19wcm90by5yZWxhdGl2ZVRpbWUgPSByZWxhdGl2ZV9fcmVsYXRpdmVUaW1lOw0KICBwcm90b3R5cGVfX3Byb3RvLnBhc3RGdXR1cmUgPSBwYXN0RnV0dXJlOw0KICBwcm90b3R5cGVfX3Byb3RvLnNldCA9IGxvY2FsZV9zZXRfX3NldDsNCg0KICAvLyBNb250aA0KICBwcm90b3R5cGVfX3Byb3RvLm1vbnRocyA9IGxvY2FsZU1vbnRoczsNCiAgcHJvdG90eXBlX19wcm90by5fbW9udGhzID0gZGVmYXVsdExvY2FsZU1vbnRoczsNCiAgcHJvdG90eXBlX19wcm90by5tb250aHNTaG9ydCA9IGxvY2FsZU1vbnRoc1Nob3J0Ow0KICBwcm90b3R5cGVfX3Byb3RvLl9tb250aHNTaG9ydCA9IGRlZmF1bHRMb2NhbGVNb250aHNTaG9ydDsNCiAgcHJvdG90eXBlX19wcm90by5tb250aHNQYXJzZSA9IGxvY2FsZU1vbnRoc1BhcnNlOw0KDQogIC8vIFdlZWsNCiAgcHJvdG90eXBlX19wcm90by53ZWVrID0gbG9jYWxlV2VlazsNCiAgcHJvdG90eXBlX19wcm90by5fd2VlayA9IGRlZmF1bHRMb2NhbGVXZWVrOw0KICBwcm90b3R5cGVfX3Byb3RvLmZpcnN0RGF5T2ZZZWFyID0gbG9jYWxlRmlyc3REYXlPZlllYXI7DQogIHByb3RvdHlwZV9fcHJvdG8uZmlyc3REYXlPZldlZWsgPSBsb2NhbGVGaXJzdERheU9mV2VlazsNCg0KICAvLyBEYXkgb2YgV2Vlaw0KICBwcm90b3R5cGVfX3Byb3RvLndlZWtkYXlzID0gbG9jYWxlV2Vla2RheXM7DQogIHByb3RvdHlwZV9fcHJvdG8uX3dlZWtkYXlzID0gZGVmYXVsdExvY2FsZVdlZWtkYXlzOw0KICBwcm90b3R5cGVfX3Byb3RvLndlZWtkYXlzTWluID0gbG9jYWxlV2Vla2RheXNNaW47DQogIHByb3RvdHlwZV9fcHJvdG8uX3dlZWtkYXlzTWluID0gZGVmYXVsdExvY2FsZVdlZWtkYXlzTWluOw0KICBwcm90b3R5cGVfX3Byb3RvLndlZWtkYXlzU2hvcnQgPSBsb2NhbGVXZWVrZGF5c1Nob3J0Ow0KICBwcm90b3R5cGVfX3Byb3RvLl93ZWVrZGF5c1Nob3J0ID0gZGVmYXVsdExvY2FsZVdlZWtkYXlzU2hvcnQ7DQogIHByb3RvdHlwZV9fcHJvdG8ud2Vla2RheXNQYXJzZSA9IGxvY2FsZVdlZWtkYXlzUGFyc2U7DQoNCiAgLy8gSG91cnMNCiAgcHJvdG90eXBlX19wcm90by5pc1BNID0gbG9jYWxlSXNQTTsNCiAgcHJvdG90eXBlX19wcm90by5fbWVyaWRpZW1QYXJzZSA9IGRlZmF1bHRMb2NhbGVNZXJpZGllbVBhcnNlOw0KICBwcm90b3R5cGVfX3Byb3RvLm1lcmlkaWVtID0gbG9jYWxlTWVyaWRpZW07DQoNCiAgZnVuY3Rpb24gbGlzdHNfX2dldChmb3JtYXQsIGluZGV4LCBmaWVsZCwgc2V0dGVyKSB7DQogICAgdmFyIGxvY2FsZSA9IGxvY2FsZV9sb2NhbGVzX19nZXRMb2NhbGUoKTsNCiAgICB2YXIgdXRjID0gY3JlYXRlX3V0Y19fY3JlYXRlVVRDKCkuc2V0KHNldHRlciwgaW5kZXgpOw0KICAgIHJldHVybiBsb2NhbGVbZmllbGRdKHV0YywgZm9ybWF0KTsNCiAgfQ0KDQogIGZ1bmN0aW9uIGxpc3QoZm9ybWF0LCBpbmRleCwgZmllbGQsIGNvdW50LCBzZXR0ZXIpIHsNCiAgICBpZiAodHlwZW9mIGZvcm1hdCA9PT0gIm51bWJlciIpIHsNCiAgICAgIGluZGV4ID0gZm9ybWF0Ow0KICAgICAgZm9ybWF0ID0gdW5kZWZpbmVkOw0KICAgIH0NCg0KICAgIGZvcm1hdCA9IGZvcm1hdCB8fCAiIjsNCg0KICAgIGlmIChpbmRleCAhPSBudWxsKSB7DQogICAgICByZXR1cm4gbGlzdHNfX2dldChmb3JtYXQsIGluZGV4LCBmaWVsZCwgc2V0dGVyKTsNCiAgICB9DQoNCiAgICB2YXIgaTsNCiAgICB2YXIgb3V0ID0gW107DQogICAgZm9yIChpID0gMDsgaSA8IGNvdW50OyBpKyspIHsNCiAgICAgIG91dFtpXSA9IGxpc3RzX19nZXQoZm9ybWF0LCBpLCBmaWVsZCwgc2V0dGVyKTsNCiAgICB9DQogICAgcmV0dXJuIG91dDsNCiAgfQ0KDQogIGZ1bmN0aW9uIGxpc3RzX19saXN0TW9udGhzKGZvcm1hdCwgaW5kZXgpIHsNCiAgICByZXR1cm4gbGlzdChmb3JtYXQsIGluZGV4LCAibW9udGhzIiwgMTIsICJtb250aCIpOw0KICB9DQoNCiAgZnVuY3Rpb24gbGlzdHNfX2xpc3RNb250aHNTaG9ydChmb3JtYXQsIGluZGV4KSB7DQogICAgcmV0dXJuIGxpc3QoZm9ybWF0LCBpbmRleCwgIm1vbnRoc1Nob3J0IiwgMTIsICJtb250aCIpOw0KICB9DQoNCiAgZnVuY3Rpb24gbGlzdHNfX2xpc3RXZWVrZGF5cyhmb3JtYXQsIGluZGV4KSB7DQogICAgcmV0dXJuIGxpc3QoZm9ybWF0LCBpbmRleCwgIndlZWtkYXlzIiwgNywgImRheSIpOw0KICB9DQoNCiAgZnVuY3Rpb24gbGlzdHNfX2xpc3RXZWVrZGF5c1Nob3J0KGZvcm1hdCwgaW5kZXgpIHsNCiAgICByZXR1cm4gbGlzdChmb3JtYXQsIGluZGV4LCAid2Vla2RheXNTaG9ydCIsIDcsICJkYXkiKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIGxpc3RzX19saXN0V2Vla2RheXNNaW4oZm9ybWF0LCBpbmRleCkgew0KICAgIHJldHVybiBsaXN0KGZvcm1hdCwgaW5kZXgsICJ3ZWVrZGF5c01pbiIsIDcsICJkYXkiKTsNCiAgfQ0KDQogIGxvY2FsZV9sb2NhbGVzX19nZXRTZXRHbG9iYWxMb2NhbGUoImVuIiwgew0KICAgIG9yZGluYWxQYXJzZTogL1xkezEsMn0odGh8c3R8bmR8cmQpLywNCiAgICBvcmRpbmFsOiBmdW5jdGlvbihudW1iZXIpIHsNCiAgICAgIHZhciBiID0gbnVtYmVyICUgMTAsDQogICAgICAgIG91dHB1dCA9DQogICAgICAgICAgdG9JbnQoKG51bWJlciAlIDEwMCkgLyAxMCkgPT09IDENCiAgICAgICAgICAgID8gInRoIg0KICAgICAgICAgICAgOiBiID09PSAxDQogICAgICAgICAgICA/ICJzdCINCiAgICAgICAgICAgIDogYiA9PT0gMg0KICAgICAgICAgICAgPyAibmQiDQogICAgICAgICAgICA6IGIgPT09IDMNCiAgICAgICAgICAgID8gInJkIg0KICAgICAgICAgICAgOiAidGgiOw0KICAgICAgcmV0dXJuIG51bWJlciArIG91dHB1dDsNCiAgICB9DQogIH0pOw0KDQogIC8vIFNpZGUgZWZmZWN0IGltcG9ydHMNCiAgdXRpbHNfaG9va3NfX2hvb2tzLmxhbmcgPSBkZXByZWNhdGUoDQogICAgIm1vbWVudC5sYW5nIGlzIGRlcHJlY2F0ZWQuIFVzZSBtb21lbnQubG9jYWxlIGluc3RlYWQuIiwNCiAgICBsb2NhbGVfbG9jYWxlc19fZ2V0U2V0R2xvYmFsTG9jYWxlDQogICk7DQogIHV0aWxzX2hvb2tzX19ob29rcy5sYW5nRGF0YSA9IGRlcHJlY2F0ZSgNCiAgICAibW9tZW50LmxhbmdEYXRhIGlzIGRlcHJlY2F0ZWQuIFVzZSBtb21lbnQubG9jYWxlRGF0YSBpbnN0ZWFkLiIsDQogICAgbG9jYWxlX2xvY2FsZXNfX2dldExvY2FsZQ0KICApOw0KDQogIHZhciBtYXRoQWJzID0gTWF0aC5hYnM7DQoNCiAgZnVuY3Rpb24gZHVyYXRpb25fYWJzX19hYnMoKSB7DQogICAgdmFyIGRhdGEgPSB0aGlzLl9kYXRhOw0KDQogICAgdGhpcy5fbWlsbGlzZWNvbmRzID0gbWF0aEFicyh0aGlzLl9taWxsaXNlY29uZHMpOw0KICAgIHRoaXMuX2RheXMgPSBtYXRoQWJzKHRoaXMuX2RheXMpOw0KICAgIHRoaXMuX21vbnRocyA9IG1hdGhBYnModGhpcy5fbW9udGhzKTsNCg0KICAgIGRhdGEubWlsbGlzZWNvbmRzID0gbWF0aEFicyhkYXRhLm1pbGxpc2Vjb25kcyk7DQogICAgZGF0YS5zZWNvbmRzID0gbWF0aEFicyhkYXRhLnNlY29uZHMpOw0KICAgIGRhdGEubWludXRlcyA9IG1hdGhBYnMoZGF0YS5taW51dGVzKTsNCiAgICBkYXRhLmhvdXJzID0gbWF0aEFicyhkYXRhLmhvdXJzKTsNCiAgICBkYXRhLm1vbnRocyA9IG1hdGhBYnMoZGF0YS5tb250aHMpOw0KICAgIGRhdGEueWVhcnMgPSBtYXRoQWJzKGRhdGEueWVhcnMpOw0KDQogICAgcmV0dXJuIHRoaXM7DQogIH0NCg0KICBmdW5jdGlvbiBkdXJhdGlvbl9hZGRfc3VidHJhY3RfX2FkZFN1YnRyYWN0KA0KICAgIGR1cmF0aW9uLA0KICAgIGlucHV0LA0KICAgIHZhbHVlLA0KICAgIGRpcmVjdGlvbg0KICApIHsNCiAgICB2YXIgb3RoZXIgPSBjcmVhdGVfX2NyZWF0ZUR1cmF0aW9uKGlucHV0LCB2YWx1ZSk7DQoNCiAgICBkdXJhdGlvbi5fbWlsbGlzZWNvbmRzICs9IGRpcmVjdGlvbiAqIG90aGVyLl9taWxsaXNlY29uZHM7DQogICAgZHVyYXRpb24uX2RheXMgKz0gZGlyZWN0aW9uICogb3RoZXIuX2RheXM7DQogICAgZHVyYXRpb24uX21vbnRocyArPSBkaXJlY3Rpb24gKiBvdGhlci5fbW9udGhzOw0KDQogICAgcmV0dXJuIGR1cmF0aW9uLl9idWJibGUoKTsNCiAgfQ0KDQogIC8vIHN1cHBvcnRzIG9ubHkgMi4wLXN0eWxlIGFkZCgxLCAncycpIG9yIGFkZChkdXJhdGlvbikNCiAgZnVuY3Rpb24gZHVyYXRpb25fYWRkX3N1YnRyYWN0X19hZGQoaW5wdXQsIHZhbHVlKSB7DQogICAgcmV0dXJuIGR1cmF0aW9uX2FkZF9zdWJ0cmFjdF9fYWRkU3VidHJhY3QodGhpcywgaW5wdXQsIHZhbHVlLCAxKTsNCiAgfQ0KDQogIC8vIHN1cHBvcnRzIG9ubHkgMi4wLXN0eWxlIHN1YnRyYWN0KDEsICdzJykgb3Igc3VidHJhY3QoZHVyYXRpb24pDQogIGZ1bmN0aW9uIGR1cmF0aW9uX2FkZF9zdWJ0cmFjdF9fc3VidHJhY3QoaW5wdXQsIHZhbHVlKSB7DQogICAgcmV0dXJuIGR1cmF0aW9uX2FkZF9zdWJ0cmFjdF9fYWRkU3VidHJhY3QodGhpcywgaW5wdXQsIHZhbHVlLCAtMSk7DQogIH0NCg0KICBmdW5jdGlvbiBhYnNDZWlsKG51bWJlcikgew0KICAgIGlmIChudW1iZXIgPCAwKSB7DQogICAgICByZXR1cm4gTWF0aC5mbG9vcihudW1iZXIpOw0KICAgIH0gZWxzZSB7DQogICAgICByZXR1cm4gTWF0aC5jZWlsKG51bWJlcik7DQogICAgfQ0KICB9DQoNCiAgZnVuY3Rpb24gYnViYmxlKCkgew0KICAgIHZhciBtaWxsaXNlY29uZHMgPSB0aGlzLl9taWxsaXNlY29uZHM7DQogICAgdmFyIGRheXMgPSB0aGlzLl9kYXlzOw0KICAgIHZhciBtb250aHMgPSB0aGlzLl9tb250aHM7DQogICAgdmFyIGRhdGEgPSB0aGlzLl9kYXRhOw0KICAgIHZhciBzZWNvbmRzLCBtaW51dGVzLCBob3VycywgeWVhcnMsIG1vbnRoc0Zyb21EYXlzOw0KDQogICAgLy8gaWYgd2UgaGF2ZSBhIG1peCBvZiBwb3NpdGl2ZSBhbmQgbmVnYXRpdmUgdmFsdWVzLCBidWJibGUgZG93biBmaXJzdA0KICAgIC8vIGNoZWNrOiBodHRwczovL2dpdGh1Yi5jb20vbW9tZW50L21vbWVudC9pc3N1ZXMvMjE2Ng0KICAgIGlmICgNCiAgICAgICEoDQogICAgICAgIChtaWxsaXNlY29uZHMgPj0gMCAmJiBkYXlzID49IDAgJiYgbW9udGhzID49IDApIHx8DQogICAgICAgIChtaWxsaXNlY29uZHMgPD0gMCAmJiBkYXlzIDw9IDAgJiYgbW9udGhzIDw9IDApDQogICAgICApDQogICAgKSB7DQogICAgICBtaWxsaXNlY29uZHMgKz0gYWJzQ2VpbChtb250aHNUb0RheXMobW9udGhzKSArIGRheXMpICogODY0ZTU7DQogICAgICBkYXlzID0gMDsNCiAgICAgIG1vbnRocyA9IDA7DQogICAgfQ0KDQogICAgLy8gVGhlIGZvbGxvd2luZyBjb2RlIGJ1YmJsZXMgdXAgdmFsdWVzLCBzZWUgdGhlIHRlc3RzIGZvcg0KICAgIC8vIGV4YW1wbGVzIG9mIHdoYXQgdGhhdCBtZWFucy4NCiAgICBkYXRhLm1pbGxpc2Vjb25kcyA9IG1pbGxpc2Vjb25kcyAlIDEwMDA7DQoNCiAgICBzZWNvbmRzID0gYWJzRmxvb3IobWlsbGlzZWNvbmRzIC8gMTAwMCk7DQogICAgZGF0YS5zZWNvbmRzID0gc2Vjb25kcyAlIDYwOw0KDQogICAgbWludXRlcyA9IGFic0Zsb29yKHNlY29uZHMgLyA2MCk7DQogICAgZGF0YS5taW51dGVzID0gbWludXRlcyAlIDYwOw0KDQogICAgaG91cnMgPSBhYnNGbG9vcihtaW51dGVzIC8gNjApOw0KICAgIGRhdGEuaG91cnMgPSBob3VycyAlIDI0Ow0KDQogICAgZGF5cyArPSBhYnNGbG9vcihob3VycyAvIDI0KTsNCg0KICAgIC8vIGNvbnZlcnQgZGF5cyB0byBtb250aHMNCiAgICBtb250aHNGcm9tRGF5cyA9IGFic0Zsb29yKGRheXNUb01vbnRocyhkYXlzKSk7DQogICAgbW9udGhzICs9IG1vbnRoc0Zyb21EYXlzOw0KICAgIGRheXMgLT0gYWJzQ2VpbChtb250aHNUb0RheXMobW9udGhzRnJvbURheXMpKTsNCg0KICAgIC8vIDEyIG1vbnRocyAtPiAxIHllYXINCiAgICB5ZWFycyA9IGFic0Zsb29yKG1vbnRocyAvIDEyKTsNCiAgICBtb250aHMgJT0gMTI7DQoNCiAgICBkYXRhLmRheXMgPSBkYXlzOw0KICAgIGRhdGEubW9udGhzID0gbW9udGhzOw0KICAgIGRhdGEueWVhcnMgPSB5ZWFyczsNCg0KICAgIHJldHVybiB0aGlzOw0KICB9DQoNCiAgZnVuY3Rpb24gZGF5c1RvTW9udGhzKGRheXMpIHsNCiAgICAvLyA0MDAgeWVhcnMgaGF2ZSAxNDYwOTcgZGF5cyAodGFraW5nIGludG8gYWNjb3VudCBsZWFwIHllYXIgcnVsZXMpDQogICAgLy8gNDAwIHllYXJzIGhhdmUgMTIgbW9udGhzID09PSA0ODAwDQogICAgcmV0dXJuIChkYXlzICogNDgwMCkgLyAxNDYwOTc7DQogIH0NCg0KICBmdW5jdGlvbiBtb250aHNUb0RheXMobW9udGhzKSB7DQogICAgLy8gdGhlIHJldmVyc2Ugb2YgZGF5c1RvTW9udGhzDQogICAgcmV0dXJuIChtb250aHMgKiAxNDYwOTcpIC8gNDgwMDsNCiAgfQ0KDQogIGZ1bmN0aW9uIGFzKHVuaXRzKSB7DQogICAgdmFyIGRheXM7DQogICAgdmFyIG1vbnRoczsNCiAgICB2YXIgbWlsbGlzZWNvbmRzID0gdGhpcy5fbWlsbGlzZWNvbmRzOw0KDQogICAgdW5pdHMgPSBub3JtYWxpemVVbml0cyh1bml0cyk7DQoNCiAgICBpZiAodW5pdHMgPT09ICJtb250aCIgfHwgdW5pdHMgPT09ICJ5ZWFyIikgew0KICAgICAgZGF5cyA9IHRoaXMuX2RheXMgKyBtaWxsaXNlY29uZHMgLyA4NjRlNTsNCiAgICAgIG1vbnRocyA9IHRoaXMuX21vbnRocyArIGRheXNUb01vbnRocyhkYXlzKTsNCiAgICAgIHJldHVybiB1bml0cyA9PT0gIm1vbnRoIiA/IG1vbnRocyA6IG1vbnRocyAvIDEyOw0KICAgIH0gZWxzZSB7DQogICAgICAvLyBoYW5kbGUgbWlsbGlzZWNvbmRzIHNlcGFyYXRlbHkgYmVjYXVzZSBvZiBmbG9hdGluZyBwb2ludCBtYXRoIGVycm9ycyAoaXNzdWUgIzE4NjcpDQogICAgICBkYXlzID0gdGhpcy5fZGF5cyArIE1hdGgucm91bmQobW9udGhzVG9EYXlzKHRoaXMuX21vbnRocykpOw0KICAgICAgc3dpdGNoICh1bml0cykgew0KICAgICAgICBjYXNlICJ3ZWVrIjoNCiAgICAgICAgICByZXR1cm4gZGF5cyAvIDcgKyBtaWxsaXNlY29uZHMgLyA2MDQ4ZTU7DQogICAgICAgIGNhc2UgImRheSI6DQogICAgICAgICAgcmV0dXJuIGRheXMgKyBtaWxsaXNlY29uZHMgLyA4NjRlNTsNCiAgICAgICAgY2FzZSAiaG91ciI6DQogICAgICAgICAgcmV0dXJuIGRheXMgKiAyNCArIG1pbGxpc2Vjb25kcyAvIDM2ZTU7DQogICAgICAgIGNhc2UgIm1pbnV0ZSI6DQogICAgICAgICAgcmV0dXJuIGRheXMgKiAxNDQwICsgbWlsbGlzZWNvbmRzIC8gNmU0Ow0KICAgICAgICBjYXNlICJzZWNvbmQiOg0KICAgICAgICAgIHJldHVybiBkYXlzICogODY0MDAgKyBtaWxsaXNlY29uZHMgLyAxMDAwOw0KICAgICAgICAvLyBNYXRoLmZsb29yIHByZXZlbnRzIGZsb2F0aW5nIHBvaW50IG1hdGggZXJyb3JzIGhlcmUNCiAgICAgICAgY2FzZSAibWlsbGlzZWNvbmQiOg0KICAgICAgICAgIHJldHVybiBNYXRoLmZsb29yKGRheXMgKiA4NjRlNSkgKyBtaWxsaXNlY29uZHM7DQogICAgICAgIGRlZmF1bHQ6DQogICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJVbmtub3duIHVuaXQgIiArIHVuaXRzKTsNCiAgICAgIH0NCiAgICB9DQogIH0NCg0KICAvLyBUT0RPOiBVc2UgdGhpcy5hcygnbXMnKT8NCiAgZnVuY3Rpb24gZHVyYXRpb25fYXNfX3ZhbHVlT2YoKSB7DQogICAgcmV0dXJuICgNCiAgICAgIHRoaXMuX21pbGxpc2Vjb25kcyArDQogICAgICB0aGlzLl9kYXlzICogODY0ZTUgKw0KICAgICAgKHRoaXMuX21vbnRocyAlIDEyKSAqIDI1OTJlNiArDQogICAgICB0b0ludCh0aGlzLl9tb250aHMgLyAxMikgKiAzMTUzNmU2DQogICAgKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIG1ha2VBcyhhbGlhcykgew0KICAgIHJldHVybiBmdW5jdGlvbigpIHsNCiAgICAgIHJldHVybiB0aGlzLmFzKGFsaWFzKTsNCiAgICB9Ow0KICB9DQoNCiAgdmFyIGFzTWlsbGlzZWNvbmRzID0gbWFrZUFzKCJtcyIpOw0KICB2YXIgYXNTZWNvbmRzID0gbWFrZUFzKCJzIik7DQogIHZhciBhc01pbnV0ZXMgPSBtYWtlQXMoIm0iKTsNCiAgdmFyIGFzSG91cnMgPSBtYWtlQXMoImgiKTsNCiAgdmFyIGFzRGF5cyA9IG1ha2VBcygiZCIpOw0KICB2YXIgYXNXZWVrcyA9IG1ha2VBcygidyIpOw0KICB2YXIgYXNNb250aHMgPSBtYWtlQXMoIk0iKTsNCiAgdmFyIGFzWWVhcnMgPSBtYWtlQXMoInkiKTsNCg0KICBmdW5jdGlvbiBkdXJhdGlvbl9nZXRfX2dldCh1bml0cykgew0KICAgIHVuaXRzID0gbm9ybWFsaXplVW5pdHModW5pdHMpOw0KICAgIHJldHVybiB0aGlzW3VuaXRzICsgInMiXSgpOw0KICB9DQoNCiAgZnVuY3Rpb24gbWFrZUdldHRlcihuYW1lKSB7DQogICAgcmV0dXJuIGZ1bmN0aW9uKCkgew0KICAgICAgcmV0dXJuIHRoaXMuX2RhdGFbbmFtZV07DQogICAgfTsNCiAgfQ0KDQogIHZhciBtaWxsaXNlY29uZHMgPSBtYWtlR2V0dGVyKCJtaWxsaXNlY29uZHMiKTsNCiAgdmFyIHNlY29uZHMgPSBtYWtlR2V0dGVyKCJzZWNvbmRzIik7DQogIHZhciBtaW51dGVzID0gbWFrZUdldHRlcigibWludXRlcyIpOw0KICB2YXIgaG91cnMgPSBtYWtlR2V0dGVyKCJob3VycyIpOw0KICB2YXIgZGF5cyA9IG1ha2VHZXR0ZXIoImRheXMiKTsNCiAgdmFyIG1vbnRocyA9IG1ha2VHZXR0ZXIoIm1vbnRocyIpOw0KICB2YXIgeWVhcnMgPSBtYWtlR2V0dGVyKCJ5ZWFycyIpOw0KDQogIGZ1bmN0aW9uIHdlZWtzKCkgew0KICAgIHJldHVybiBhYnNGbG9vcih0aGlzLmRheXMoKSAvIDcpOw0KICB9DQoNCiAgdmFyIHJvdW5kID0gTWF0aC5yb3VuZDsNCiAgdmFyIHRocmVzaG9sZHMgPSB7DQogICAgczogNDUsIC8vIHNlY29uZHMgdG8gbWludXRlDQogICAgbTogNDUsIC8vIG1pbnV0ZXMgdG8gaG91cg0KICAgIGg6IDIyLCAvLyBob3VycyB0byBkYXkNCiAgICBkOiAyNiwgLy8gZGF5cyB0byBtb250aA0KICAgIE06IDExIC8vIG1vbnRocyB0byB5ZWFyDQogIH07DQoNCiAgLy8gaGVscGVyIGZ1bmN0aW9uIGZvciBtb21lbnQuZm4uZnJvbSwgbW9tZW50LmZuLmZyb21Ob3csIGFuZCBtb21lbnQuZHVyYXRpb24uZm4uaHVtYW5pemUNCiAgZnVuY3Rpb24gc3Vic3RpdHV0ZVRpbWVBZ28oc3RyaW5nLCBudW1iZXIsIHdpdGhvdXRTdWZmaXgsIGlzRnV0dXJlLCBsb2NhbGUpIHsNCiAgICByZXR1cm4gbG9jYWxlLnJlbGF0aXZlVGltZShudW1iZXIgfHwgMSwgISF3aXRob3V0U3VmZml4LCBzdHJpbmcsIGlzRnV0dXJlKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIGR1cmF0aW9uX2h1bWFuaXplX19yZWxhdGl2ZVRpbWUoDQogICAgcG9zTmVnRHVyYXRpb24sDQogICAgd2l0aG91dFN1ZmZpeCwNCiAgICBsb2NhbGUNCiAgKSB7DQogICAgdmFyIGR1cmF0aW9uID0gY3JlYXRlX19jcmVhdGVEdXJhdGlvbihwb3NOZWdEdXJhdGlvbikuYWJzKCk7DQogICAgdmFyIHNlY29uZHMgPSByb3VuZChkdXJhdGlvbi5hcygicyIpKTsNCiAgICB2YXIgbWludXRlcyA9IHJvdW5kKGR1cmF0aW9uLmFzKCJtIikpOw0KICAgIHZhciBob3VycyA9IHJvdW5kKGR1cmF0aW9uLmFzKCJoIikpOw0KICAgIHZhciBkYXlzID0gcm91bmQoZHVyYXRpb24uYXMoImQiKSk7DQogICAgdmFyIG1vbnRocyA9IHJvdW5kKGR1cmF0aW9uLmFzKCJNIikpOw0KICAgIHZhciB5ZWFycyA9IHJvdW5kKGR1cmF0aW9uLmFzKCJ5IikpOw0KDQogICAgdmFyIGEgPSAoc2Vjb25kcyA8IHRocmVzaG9sZHMucyAmJiBbInMiLCBzZWNvbmRzXSkgfHwNCiAgICAgIChtaW51dGVzID09PSAxICYmIFsibSJdKSB8fA0KICAgICAgKG1pbnV0ZXMgPCB0aHJlc2hvbGRzLm0gJiYgWyJtbSIsIG1pbnV0ZXNdKSB8fA0KICAgICAgKGhvdXJzID09PSAxICYmIFsiaCJdKSB8fA0KICAgICAgKGhvdXJzIDwgdGhyZXNob2xkcy5oICYmIFsiaGgiLCBob3Vyc10pIHx8DQogICAgICAoZGF5cyA9PT0gMSAmJiBbImQiXSkgfHwNCiAgICAgIChkYXlzIDwgdGhyZXNob2xkcy5kICYmIFsiZGQiLCBkYXlzXSkgfHwNCiAgICAgIChtb250aHMgPT09IDEgJiYgWyJNIl0pIHx8DQogICAgICAobW9udGhzIDwgdGhyZXNob2xkcy5NICYmIFsiTU0iLCBtb250aHNdKSB8fA0KICAgICAgKHllYXJzID09PSAxICYmIFsieSJdKSB8fCBbInl5IiwgeWVhcnNdOw0KDQogICAgYVsyXSA9IHdpdGhvdXRTdWZmaXg7DQogICAgYVszXSA9ICtwb3NOZWdEdXJhdGlvbiA+IDA7DQogICAgYVs0XSA9IGxvY2FsZTsNCiAgICByZXR1cm4gc3Vic3RpdHV0ZVRpbWVBZ28uYXBwbHkobnVsbCwgYSk7DQogIH0NCg0KICAvLyBUaGlzIGZ1bmN0aW9uIGFsbG93cyB5b3UgdG8gc2V0IGEgdGhyZXNob2xkIGZvciByZWxhdGl2ZSB0aW1lIHN0cmluZ3MNCiAgZnVuY3Rpb24gZHVyYXRpb25faHVtYW5pemVfX2dldFNldFJlbGF0aXZlVGltZVRocmVzaG9sZCh0aHJlc2hvbGQsIGxpbWl0KSB7DQogICAgaWYgKHRocmVzaG9sZHNbdGhyZXNob2xkXSA9PT0gdW5kZWZpbmVkKSB7DQogICAgICByZXR1cm4gZmFsc2U7DQogICAgfQ0KICAgIGlmIChsaW1pdCA9PT0gdW5kZWZpbmVkKSB7DQogICAgICByZXR1cm4gdGhyZXNob2xkc1t0aHJlc2hvbGRdOw0KICAgIH0NCiAgICB0aHJlc2hvbGRzW3RocmVzaG9sZF0gPSBsaW1pdDsNCiAgICByZXR1cm4gdHJ1ZTsNCiAgfQ0KDQogIGZ1bmN0aW9uIGh1bWFuaXplKHdpdGhTdWZmaXgpIHsNCiAgICB2YXIgbG9jYWxlID0gdGhpcy5sb2NhbGVEYXRhKCk7DQogICAgdmFyIG91dHB1dCA9IGR1cmF0aW9uX2h1bWFuaXplX19yZWxhdGl2ZVRpbWUodGhpcywgIXdpdGhTdWZmaXgsIGxvY2FsZSk7DQoNCiAgICBpZiAod2l0aFN1ZmZpeCkgew0KICAgICAgb3V0cHV0ID0gbG9jYWxlLnBhc3RGdXR1cmUoK3RoaXMsIG91dHB1dCk7DQogICAgfQ0KDQogICAgcmV0dXJuIGxvY2FsZS5wb3N0Zm9ybWF0KG91dHB1dCk7DQogIH0NCg0KICB2YXIgaXNvX3N0cmluZ19fYWJzID0gTWF0aC5hYnM7DQoNCiAgZnVuY3Rpb24gaXNvX3N0cmluZ19fdG9JU09TdHJpbmcoKSB7DQogICAgLy8gZm9yIElTTyBzdHJpbmdzIHdlIGRvIG5vdCB1c2UgdGhlIG5vcm1hbCBidWJibGluZyBydWxlczoNCiAgICAvLyAgKiBtaWxsaXNlY29uZHMgYnViYmxlIHVwIHVudGlsIHRoZXkgYmVjb21lIGhvdXJzDQogICAgLy8gICogZGF5cyBkbyBub3QgYnViYmxlIGF0IGFsbA0KICAgIC8vICAqIG1vbnRocyBidWJibGUgdXAgdW50aWwgdGhleSBiZWNvbWUgeWVhcnMNCiAgICAvLyBUaGlzIGlzIGJlY2F1c2UgdGhlcmUgaXMgbm8gY29udGV4dC1mcmVlIGNvbnZlcnNpb24gYmV0d2VlbiBob3VycyBhbmQgZGF5cw0KICAgIC8vICh0aGluayBvZiBjbG9jayBjaGFuZ2VzKQ0KICAgIC8vIGFuZCBhbHNvIG5vdCBiZXR3ZWVuIGRheXMgYW5kIG1vbnRocyAoMjgtMzEgZGF5cyBwZXIgbW9udGgpDQogICAgdmFyIHNlY29uZHMgPSBpc29fc3RyaW5nX19hYnModGhpcy5fbWlsbGlzZWNvbmRzKSAvIDEwMDA7DQogICAgdmFyIGRheXMgPSBpc29fc3RyaW5nX19hYnModGhpcy5fZGF5cyk7DQogICAgdmFyIG1vbnRocyA9IGlzb19zdHJpbmdfX2Ficyh0aGlzLl9tb250aHMpOw0KICAgIHZhciBtaW51dGVzLCBob3VycywgeWVhcnM7DQoNCiAgICAvLyAzNjAwIHNlY29uZHMgLT4gNjAgbWludXRlcyAtPiAxIGhvdXINCiAgICBtaW51dGVzID0gYWJzRmxvb3Ioc2Vjb25kcyAvIDYwKTsNCiAgICBob3VycyA9IGFic0Zsb29yKG1pbnV0ZXMgLyA2MCk7DQogICAgc2Vjb25kcyAlPSA2MDsNCiAgICBtaW51dGVzICU9IDYwOw0KDQogICAgLy8gMTIgbW9udGhzIC0+IDEgeWVhcg0KICAgIHllYXJzID0gYWJzRmxvb3IobW9udGhzIC8gMTIpOw0KICAgIG1vbnRocyAlPSAxMjsNCg0KICAgIC8vIGluc3BpcmVkIGJ5IGh0dHBzOi8vZ2l0aHViLmNvbS9kb3JkaWxsZS9tb21lbnQtaXNvZHVyYXRpb24vYmxvYi9tYXN0ZXIvbW9tZW50Lmlzb2R1cmF0aW9uLmpzDQogICAgdmFyIFkgPSB5ZWFyczsNCiAgICB2YXIgTSA9IG1vbnRoczsNCiAgICB2YXIgRCA9IGRheXM7DQogICAgdmFyIGggPSBob3VyczsNCiAgICB2YXIgbSA9IG1pbnV0ZXM7DQogICAgdmFyIHMgPSBzZWNvbmRzOw0KICAgIHZhciB0b3RhbCA9IHRoaXMuYXNTZWNvbmRzKCk7DQoNCiAgICBpZiAoIXRvdGFsKSB7DQogICAgICAvLyB0aGlzIGlzIHRoZSBzYW1lIGFzIEMjJ3MgKE5vZGEpIGFuZCBweXRob24gKGlzb2RhdGUpLi4uDQogICAgICAvLyBidXQgbm90IG90aGVyIEpTIChnb29nLmRhdGUpDQogICAgICByZXR1cm4gIlAwRCI7DQogICAgfQ0KDQogICAgcmV0dXJuICgNCiAgICAgICh0b3RhbCA8IDAgPyAiLSIgOiAiIikgKw0KICAgICAgIlAiICsNCiAgICAgIChZID8gWSArICJZIiA6ICIiKSArDQogICAgICAoTSA/IE0gKyAiTSIgOiAiIikgKw0KICAgICAgKEQgPyBEICsgIkQiIDogIiIpICsNCiAgICAgIChoIHx8IG0gfHwgcyA/ICJUIiA6ICIiKSArDQogICAgICAoaCA/IGggKyAiSCIgOiAiIikgKw0KICAgICAgKG0gPyBtICsgIk0iIDogIiIpICsNCiAgICAgIChzID8gcyArICJTIiA6ICIiKQ0KICAgICk7DQogIH0NCg0KICB2YXIgZHVyYXRpb25fcHJvdG90eXBlX19wcm90byA9IER1cmF0aW9uLnByb3RvdHlwZTsNCg0KICBkdXJhdGlvbl9wcm90b3R5cGVfX3Byb3RvLmFicyA9IGR1cmF0aW9uX2Fic19fYWJzOw0KICBkdXJhdGlvbl9wcm90b3R5cGVfX3Byb3RvLmFkZCA9IGR1cmF0aW9uX2FkZF9zdWJ0cmFjdF9fYWRkOw0KICBkdXJhdGlvbl9wcm90b3R5cGVfX3Byb3RvLnN1YnRyYWN0ID0gZHVyYXRpb25fYWRkX3N1YnRyYWN0X19zdWJ0cmFjdDsNCiAgZHVyYXRpb25fcHJvdG90eXBlX19wcm90by5hcyA9IGFzOw0KICBkdXJhdGlvbl9wcm90b3R5cGVfX3Byb3RvLmFzTWlsbGlzZWNvbmRzID0gYXNNaWxsaXNlY29uZHM7DQogIGR1cmF0aW9uX3Byb3RvdHlwZV9fcHJvdG8uYXNTZWNvbmRzID0gYXNTZWNvbmRzOw0KICBkdXJhdGlvbl9wcm90b3R5cGVfX3Byb3RvLmFzTWludXRlcyA9IGFzTWludXRlczsNCiAgZHVyYXRpb25fcHJvdG90eXBlX19wcm90by5hc0hvdXJzID0gYXNIb3VyczsNCiAgZHVyYXRpb25fcHJvdG90eXBlX19wcm90by5hc0RheXMgPSBhc0RheXM7DQogIGR1cmF0aW9uX3Byb3RvdHlwZV9fcHJvdG8uYXNXZWVrcyA9IGFzV2Vla3M7DQogIGR1cmF0aW9uX3Byb3RvdHlwZV9fcHJvdG8uYXNNb250aHMgPSBhc01vbnRoczsNCiAgZHVyYXRpb25fcHJvdG90eXBlX19wcm90by5hc1llYXJzID0gYXNZZWFyczsNCiAgZHVyYXRpb25fcHJvdG90eXBlX19wcm90by52YWx1ZU9mID0gZHVyYXRpb25fYXNfX3ZhbHVlT2Y7DQogIGR1cmF0aW9uX3Byb3RvdHlwZV9fcHJvdG8uX2J1YmJsZSA9IGJ1YmJsZTsNCiAgZHVyYXRpb25fcHJvdG90eXBlX19wcm90by5nZXQgPSBkdXJhdGlvbl9nZXRfX2dldDsNCiAgZHVyYXRpb25fcHJvdG90eXBlX19wcm90by5taWxsaXNlY29uZHMgPSBtaWxsaXNlY29uZHM7DQogIGR1cmF0aW9uX3Byb3RvdHlwZV9fcHJvdG8uc2Vjb25kcyA9IHNlY29uZHM7DQogIGR1cmF0aW9uX3Byb3RvdHlwZV9fcHJvdG8ubWludXRlcyA9IG1pbnV0ZXM7DQogIGR1cmF0aW9uX3Byb3RvdHlwZV9fcHJvdG8uaG91cnMgPSBob3VyczsNCiAgZHVyYXRpb25fcHJvdG90eXBlX19wcm90by5kYXlzID0gZGF5czsNCiAgZHVyYXRpb25fcHJvdG90eXBlX19wcm90by53ZWVrcyA9IHdlZWtzOw0KICBkdXJhdGlvbl9wcm90b3R5cGVfX3Byb3RvLm1vbnRocyA9IG1vbnRoczsNCiAgZHVyYXRpb25fcHJvdG90eXBlX19wcm90by55ZWFycyA9IHllYXJzOw0KICBkdXJhdGlvbl9wcm90b3R5cGVfX3Byb3RvLmh1bWFuaXplID0gaHVtYW5pemU7DQogIGR1cmF0aW9uX3Byb3RvdHlwZV9fcHJvdG8udG9JU09TdHJpbmcgPSBpc29fc3RyaW5nX190b0lTT1N0cmluZzsNCiAgZHVyYXRpb25fcHJvdG90eXBlX19wcm90by50b1N0cmluZyA9IGlzb19zdHJpbmdfX3RvSVNPU3RyaW5nOw0KICBkdXJhdGlvbl9wcm90b3R5cGVfX3Byb3RvLnRvSlNPTiA9IGlzb19zdHJpbmdfX3RvSVNPU3RyaW5nOw0KICBkdXJhdGlvbl9wcm90b3R5cGVfX3Byb3RvLmxvY2FsZSA9IGxvY2FsZTsNCiAgZHVyYXRpb25fcHJvdG90eXBlX19wcm90by5sb2NhbGVEYXRhID0gbG9jYWxlRGF0YTsNCg0KICAvLyBEZXByZWNhdGlvbnMNCiAgZHVyYXRpb25fcHJvdG90eXBlX19wcm90by50b0lzb1N0cmluZyA9IGRlcHJlY2F0ZSgNCiAgICAidG9Jc29TdHJpbmcoKSBpcyBkZXByZWNhdGVkLiBQbGVhc2UgdXNlIHRvSVNPU3RyaW5nKCkgaW5zdGVhZCAobm90aWNlIHRoZSBjYXBpdGFscykiLA0KICAgIGlzb19zdHJpbmdfX3RvSVNPU3RyaW5nDQogICk7DQogIGR1cmF0aW9uX3Byb3RvdHlwZV9fcHJvdG8ubGFuZyA9IGxhbmc7DQoNCiAgLy8gU2lkZSBlZmZlY3QgaW1wb3J0cw0KDQogIGFkZEZvcm1hdFRva2VuKCJYIiwgMCwgMCwgInVuaXgiKTsNCiAgYWRkRm9ybWF0VG9rZW4oIngiLCAwLCAwLCAidmFsdWVPZiIpOw0KDQogIC8vIFBBUlNJTkcNCg0KICBhZGRSZWdleFRva2VuKCJ4IiwgbWF0Y2hTaWduZWQpOw0KICBhZGRSZWdleFRva2VuKCJYIiwgbWF0Y2hUaW1lc3RhbXApOw0KICBhZGRQYXJzZVRva2VuKCJYIiwgZnVuY3Rpb24oaW5wdXQsIGFycmF5LCBjb25maWcpIHsNCiAgICBjb25maWcuX2QgPSBuZXcgRGF0ZShwYXJzZUZsb2F0KGlucHV0LCAxMCkgKiAxMDAwKTsNCiAgfSk7DQogIGFkZFBhcnNlVG9rZW4oIngiLCBmdW5jdGlvbihpbnB1dCwgYXJyYXksIGNvbmZpZykgew0KICAgIGNvbmZpZy5fZCA9IG5ldyBEYXRlKHRvSW50KGlucHV0KSk7DQogIH0pOw0KDQogIC8vIFNpZGUgZWZmZWN0IGltcG9ydHMNCg0KICB1dGlsc19ob29rc19faG9va3MudmVyc2lvbiA9ICIyLjEwLjYiOw0KDQogIHNldEhvb2tDYWxsYmFjayhsb2NhbF9fY3JlYXRlTG9jYWwpOw0KDQogIHV0aWxzX2hvb2tzX19ob29rcy5mbiA9IG1vbWVudFByb3RvdHlwZTsNCiAgdXRpbHNfaG9va3NfX2hvb2tzLm1pbiA9IG1pbjsNCiAgdXRpbHNfaG9va3NfX2hvb2tzLm1heCA9IG1heDsNCiAgdXRpbHNfaG9va3NfX2hvb2tzLnV0YyA9IGNyZWF0ZV91dGNfX2NyZWF0ZVVUQzsNCiAgdXRpbHNfaG9va3NfX2hvb2tzLnVuaXggPSBtb21lbnRfX2NyZWF0ZVVuaXg7DQogIHV0aWxzX2hvb2tzX19ob29rcy5tb250aHMgPSBsaXN0c19fbGlzdE1vbnRoczsNCiAgdXRpbHNfaG9va3NfX2hvb2tzLmlzRGF0ZSA9IGlzRGF0ZTsNCiAgdXRpbHNfaG9va3NfX2hvb2tzLmxvY2FsZSA9IGxvY2FsZV9sb2NhbGVzX19nZXRTZXRHbG9iYWxMb2NhbGU7DQogIHV0aWxzX2hvb2tzX19ob29rcy5pbnZhbGlkID0gdmFsaWRfX2NyZWF0ZUludmFsaWQ7DQogIHV0aWxzX2hvb2tzX19ob29rcy5kdXJhdGlvbiA9IGNyZWF0ZV9fY3JlYXRlRHVyYXRpb247DQogIHV0aWxzX2hvb2tzX19ob29rcy5pc01vbWVudCA9IGlzTW9tZW50Ow0KICB1dGlsc19ob29rc19faG9va3Mud2Vla2RheXMgPSBsaXN0c19fbGlzdFdlZWtkYXlzOw0KICB1dGlsc19ob29rc19faG9va3MucGFyc2Vab25lID0gbW9tZW50X19jcmVhdGVJblpvbmU7DQogIHV0aWxzX2hvb2tzX19ob29rcy5sb2NhbGVEYXRhID0gbG9jYWxlX2xvY2FsZXNfX2dldExvY2FsZTsNCiAgdXRpbHNfaG9va3NfX2hvb2tzLmlzRHVyYXRpb24gPSBpc0R1cmF0aW9uOw0KICB1dGlsc19ob29rc19faG9va3MubW9udGhzU2hvcnQgPSBsaXN0c19fbGlzdE1vbnRoc1Nob3J0Ow0KICB1dGlsc19ob29rc19faG9va3Mud2Vla2RheXNNaW4gPSBsaXN0c19fbGlzdFdlZWtkYXlzTWluOw0KICB1dGlsc19ob29rc19faG9va3MuZGVmaW5lTG9jYWxlID0gZGVmaW5lTG9jYWxlOw0KICB1dGlsc19ob29rc19faG9va3Mud2Vla2RheXNTaG9ydCA9IGxpc3RzX19saXN0V2Vla2RheXNTaG9ydDsNCiAgdXRpbHNfaG9va3NfX2hvb2tzLm5vcm1hbGl6ZVVuaXRzID0gbm9ybWFsaXplVW5pdHM7DQogIHV0aWxzX2hvb2tzX19ob29rcy5yZWxhdGl2ZVRpbWVUaHJlc2hvbGQgPSBkdXJhdGlvbl9odW1hbml6ZV9fZ2V0U2V0UmVsYXRpdmVUaW1lVGhyZXNob2xkOw0KDQogIHZhciBfbW9tZW50ID0gdXRpbHNfaG9va3NfX2hvb2tzOw0KDQogIHJldHVybiBfbW9tZW50Ow0KfSk7DQo="}},"time_used":271,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":271,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":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/br=1/rs=AGKMywEu2TQUzdSF0AcsFBMUrFqyurKluw/m=root,base","fqdn":"www.youtube.com","domain":"youtube.com","tld":"com"},"ip":{"addr":"142.251.153.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/Gc2en3nHxA4","date":"2026-07-27T04:24:16.897Z","timestamp":1785126256897,"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/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/Gc2en3nHxA4\r\nCookie: __Secure-YNID=20.YT=E5bZH_lP1NArLG48t6lRj9oeecW0xyEFe9u0ebWOb-g-_JffSEAYD96vgiz84ztWu4jL2Qub3iqTQ2XsVrmUelh8bL2Z51wNDSmop6dn1VykM86DS3aVeEn7QG8EY9Ml3wvuvcssa43xkqpG8yaId8urAjrXhYEfGQpbtjPMaEJoztxh0chYc1U5XnLeSKOglaDLkUb_VvEZq4QcOK6PKm2QcEJ7YaKMvNNnRY4v3GMNcZEy2NrRIXXQEQI5D8IEV_am0BM4s0b23dnIOVfMyNQVyW0u7xAK0Ni0sYaQe1TWl0KmDEjJm310XaYqlpGcnfGpZpknLRrb4GiekJ28gg; YSC=nYVVApPxeLY; __Secure-ROLLOUT_TOKEN=CL_qp-jW2sbDnwEQ_4Clw4HylQMY_4Clw4HylQM%3D; VISITOR_INFO1_LIVE=8BWjCSfd-OY; VISITOR_PRIVACY_METADATA=CgJOTxIiEh4SHAsMDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicgGA%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:42 GMT\r\nexpires: Sat, 24 Jul 2027 12:56:42 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: 228454\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-27T07:05:42.930195Z","times_seen":986,"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":67,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":32,"receive":35,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/75304.174496dbf62bc90db59a.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.303Z","timestamp":1785126257303,"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-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/75304.174496dbf62bc90db59a.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/crypto-mkt-screener/?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 04:24:17 GMT\r\ncontent-type: text/css; charset=utf-8\r\ncontent-length: 32\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: \"6a58ab11-20\"\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:40\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 7818ed82f0549cadbb18b8783948cb8b\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":32,"size_decoded":816,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with no line terminators","md5":"10831c7be3a76a74645935347043e2b5","sha1":"b94e8e987207e65fcaacb92d7fe9b6abae350446","sha256":"02392cb348576ae4401ed04ea67dc7a708f88cf080b321001192ee8fdfbee047","sha512":"41692d9ad3993dc97c90842a9f189a9a277965aef5fd1d867477557e363ee994e2b1b5d574c54d283206deedf65ad81600a071f6be8114830168dcbfb724f32b","ssdeep":"","tlshash":"bb8004d170053c3c00077000053340c7dc5140c1cd731451500453415f140750103510","first_seen":"2023-06-28T13:47:54Z","last_seen":"2026-07-27T07:05:43.379625Z","times_seen":1372,"resource_available":false,"data":"LnVpLWRyYWdnYWJsZXt0b3VjaC1hY3Rpb246bm9uZX0="}},"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":"wss","addr":"wss://widgetdata.tradingview.com/socket.io/websocket?from=embed-widget%2Fticker-tape%2F\u0026date=2026-07-24T11%3A40%3A08\u0026page-uri=besttrader.live%2F\u0026ancestor-origin=besttrader.live\u0026api_key=tradingview","fqdn":"widgetdata.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"93.123.102.179","port":443,"asn":199524,"as":"G-Core Labs S.A.","country":"United Kingdom","country_code":"GB"},"is_navigation_request":false,"resource_type":"websocket","requested_by":"https://www.tradingview-widget.com/embed-widget/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.556Z","timestamp":1785126257556,"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%2Fticker-tape%2F\u0026date=2026-07-24T11%3A40%3A08\u0026page-uri=besttrader.live%2F\u0026ancestor-origin=besttrader.live\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: p78XfU9w7ntAfrX5AJXZgA==\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 04:24:17 GMT\r\nConnection: upgrade\r\nsec-websocket-accept: rILIfC3VDOvwDX5tPFYEgLOishA=\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-27T07:04:52.530819Z","times_seen":17558191,"resource_available":true,"data":""}},"time_used":85,"timings":{"blocked":-1,"dns":4,"connect":24,"send":0,"wait":24,"receive":0,"ssl":31},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCCSPR.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.757Z","timestamp":1785126258757,"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 /crypto/XTVCCSPR.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 04:24:18 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: \"527954e4a4647ee1f0479f5be79cbff0\"\r\nlast-modified: Wed, 08 Sep 2021 09:03:46 GMT\r\ncdn-cachedat: 08/09/2025 15:57:42\r\nx-amz-id-2: NUjwQNyl6iVOON/5T7C9humr33G0yQoH9n5Jqf6UsX2PRNDbCGDbp9sUyUkjJfiHLOfiPnmf+M8=\r\nx-amz-request-id: 5795DRQS7EKZ59HM\r\nx-amz-meta-hash: 527954e4a4647ee1f0479f5be79cbff0\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: 7669035962e4ba95940cc2ae04cef69e\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":2384,"size_decoded":1895,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (2384), with no line terminators","md5":"527954e4a4647ee1f0479f5be79cbff0","sha1":"4e3273d7709e56fc914d694fb64da78b275c8c82","sha256":"fadfa72da0badb13ef2220a0a41c6eb94895d964fa7588df4b46c0c78c0eef87","sha512":"4a46ff0d7448e2e7c1c13af93eedf773e6d25af3737ea81b961b87908f387bb6e94addb16057de0b539e94abf88e4b3c26a249d62656ceb4a1fde3595c11d8b9","ssdeep":"","tlshash":"9341e066e600e71daaa1c847db708061210e64cab2e9f68d19e7d769e81fccdfe50438","first_seen":"2025-05-09T18:26:18.358043Z","last_seen":"2026-07-27T07:05:43.242884Z","times_seen":392,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjE4IiBoZWlnaHQ9IjE4Ij48cGF0aCBmaWxsPSIjRkYwMDEyIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTEwLjMgNC4wOGEuODIuODIgMCAwMC4wMy0uMjNjMC0uNDctLjQtLjg1LS45LS44NS0uNDkgMC0uODkuMzgtLjg5Ljg1IDAgLjI2LjEyLjQ4LjMuNjRsLS45Ny44OGEuOS45IDAgMDAtLjQ2LS4yNXYtLjZhLjYzLjYzIDAgMDAuNDctLjZjMC0uMzQtLjMtLjYyLS42NS0uNjJhLjY0LjY0IDAgMDAtLjY2LjYzYzAgLjMzLjI4LjYuNjIuNjJ2LjU1YS44Ny44NyAwIDAwLS44Ni44NmMwIC4xNC4wMy4yNy4xLjM5bC0xLjQ3LjY3YS44Ni44NiAwIDAwLS4yMi0uMjdsLjYtMS4wM2guMTJjLjM2IDAgLjY2LS4yNy42Ni0uNjIgMC0uMzQtLjMtLjYyLS42Ni0uNjJhLjY0LjY0IDAgMDAtLjY1LjYyYzAgLjI0LjEzLjQ0LjMzLjU1bC0uNTguOThhLjkyLjkyIDAgMDAtLjQxLS4xYy0uNSAwLS45LjM5LS45Ljg2cy40Ljg1LjkuODVjLjA4IDAgLjE3LS4wMS4yNS0uMDNsLjY5IDEuMjRhLjg1Ljg1IDAgMDAtLjI5LjQ2bC0uNS0uMTdhLjY0LjY0IDAgMDAtLjY1LS43MS42NC42NCAwIDAwLS42NS42MmMwIC4zNS4zLjYzLjY1LjYzLjI2IDAgLjQ4LS4xNC41OS0uMzRsLjU0LjE4Yy4wMi4yNy4xNS41LjM2LjY1bC0uMzMuNGEuNjcuNjcgMCAwMC0uNDItLjE1LjY0LjY0IDAgMDAtLjY2LjYzYzAgLjM0LjMuNjIuNjYuNjIuMzYgMCAuNjUtLjI4LjY1LS42MmEuNi42IDAgMDAtLjA5LS4zMWwuMzgtLjQ3Yy4xLjA0LjIxLjA3LjMzLjA3bC4yNCAxLjVhLjg1Ljg1IDAgMDAtLjU0Ljc5YzAgLjQ3LjQuODUuOS44NS4yNyAwIC41LS4xMS42Ny0uM2wxLjIuNWEuNjQuNjQgMCAwMC42NS43MmMuMzUgMCAuNjUtLjI4LjY1LS42MyAwLS4zNC0uMy0uNjItLjY2LS42MmEuNjYuNjYgMCAwMC0uNTcuMzNsLTEuMTQtLjQ3Yy4wNC0uMDkuMDgtLjE5LjA5LS4zbDEuNTMtLjM2Yy4xNS4yNC40NC40Ljc2LjQuMiAwIC4zOC0uMDYuNTMtLjE2bC41Ny40NmEuNi42IDAgMDAtLjAzLjJjMCAuMzUuMjkuNjMuNjUuNjMuMzYgMCAuNjYtLjI4LjY2LS42MyAwLS4zNC0uMy0uNjItLjY2LS42Mi0uMiAwLS40LjEtLjUxLjI0bC0uNTItLjQzYy4wNi0uMDcuMS0uMTUuMTQtLjIzbDIuNDIuMTFjLjAxLjMzLjMuNi42Ni42LjM2IDAgLjY1LS4yOC42NS0uNjIgMC0uMzUtLjMtLjYzLS42NS0uNjMtLjMgMC0uNTUuMTktLjYzLjQ0bC0yLjQtLjFhLjgyLjgyIDAgMDAtLjAxLS4zMWwuODQtLjQ1Yy4xMi4xNC4zLjIzLjUuMjMuMzYgMCAuNjYtLjI4LjY2LS42MyAwLS4zNC0uMy0uNjItLjY2LS42MmEuNjQuNjQgMCAwMC0uNjUuNjJjMCAuMDguMDEuMTUuMDQuMjJsLS44MS40M2EuOS45IDAgMDAtLjgtLjQ1Yy0uNDkgMC0uODkuMzgtLjg5Ljg1IDAgLjA5LjAyLjE3LjA0LjI1bC0xLjQ0LjM1YS44NC44NCAwIDAwLS4yNy0uNWwuMjktLjM1LjE2LjAyYy4zNiAwIC42NS0uMjguNjUtLjYyIDAtLjM1LS4yOS0uNjMtLjY1LS42M2EuNjQuNjQgMCAwMC0uNjYuNjNjMCAuMjEuMTIuNC4zLjUxbC0uMjcuMzJhLjkyLjkyIDAgMDAtLjU3LS4xbC0uMjQtMS40NmMuNC0uMDkuNy0uNDMuNy0uODMgMC0uNDgtLjQtLjg2LS45LS44NmEuOTIuOTIgMCAwMC0uNDEuMWwtLjY3LTEuMmEuODguODggMCAwMC4yOC0uMjZsLjU5LjE0YS42NC42NCAwIDAwLjY1LjY4Yy4zNiAwIC42Ni0uMjguNjYtLjYyIDAtLjM1LS4zLS42My0uNjYtLjYzLS4yNiAwLS41LjE1LS42LjM3TDUgNy42OGEuODIuODIgMCAwMC4wMy0uNDZsMS41My0uN2MuMTYuMTguNC4zLjY3LjMuNSAwIC45LS4zOS45LS44NiAwLS4xNS0uMDQtLjMtLjEyLS40MmwxLjAyLS45M2MuMDkuMDQuMTguMDcuMjguMDl2LjQyYS42My42MyAwIDAwLS41Mi42MmMwIC4zNC4zLjYyLjY2LjYyLjM2IDAgLjY1LS4yOC42NS0uNjNhLjY0LjY0IDAgMDAtLjU3LS42MnYtLjRjLjEtLjAxLjE4LS4wNC4yNy0uMDdsMS4xMiAxLjI0Yy0uMS4xMy0uMTUuMy0uMTUuNDggMCAuNDcuNC44NS45Ljg1LjQ4IDAgLjg5LS4zOC44OS0uODUgMC0uMS0uMDItLjItLjA1LS4yOGwuMy0uMTdjLjExLjE0LjI5LjIyLjQ5LjIyLjM2IDAgLjY1LS4yOC42NS0uNjIgMC0uMzUtLjI5LS42My0uNjUtLjYzYS42NC42NCAwIDAwLS42Ni42M2MwIC4wOC4wMi4xNS4wNS4yMmwtLjI4LjE2YS45LjkgMCAwMC0uNzUtLjM4LjkyLjkyIDAgMDAtLjU5LjJMOS45OCA0LjU0Yy4xLS4wNy4xOC0uMTUuMjQtLjI2bC45MS4xOGMuMDguMjcuMzMuNDcuNjQuNDcuMzYgMCAuNjUtLjI4LjY1LS42MyAwLS4zNC0uMy0uNjItLjY1LS42MmEuNjQuNjQgMCAwMC0uNjYuNTdsLS44LS4xNnoiIGZpbGw9IiNmZmYiLz48L3N2Zz4="}},"time_used":1,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":1,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3.tradingview.com/external-embedding/embed-widget-market-overview.html","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://besttrader.live/","date":"2026-07-27T04:24:16.042Z","timestamp":1785126256042,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 21 Oct 2025 00:00:00 GMT","end":"Tue, 17 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"C4:FE:64:00:30:2A:CD:16:30:95:7E:E1:70:D1:31:3A:D6:33:3A:CC","sha256":"87:D2:67:7D:3E:02:F0:3B:58:BD:38:17:DA:FE:73:C0:CA:25:F9:58:CC:11:14:E0:3A:6E:C3:58:84:9E:BF:52"}}},"request":{"raw":"GET /external-embedding/embed-widget-market-overview.html 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://besttrader.live/\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 403 \r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: application/xml\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1837468\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 3000\r\ncache-control: no-cache\r\nx-amz-request-id: VVQCC7C4WYS9YSD6\r\nx-amz-id-2: aj7akN4h5Z9gKmhrYanShKqbtG1QlYBu1ub7hP2VzvVGEORjb4/a1L+jLWnr+v3BAWnMyTA1PY4=\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 403\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncontent-security-policy: default-src 'none'\r\ncdn-cachedat: 07/27/2026 04:24:16\r\ncdn-status: 403\r\ncdn-requesttime: 0\r\ncdn-requestid: 861c4b641ed41c28ee94743aa30cecf8\r\ncdn-cache: MISS\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"403","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":0,"size_decoded":0,"mime_type":"application/xml","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T07:04:52.530819Z","times_seen":17558191,"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":"besttrader.live/images/icon/diamond.png","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.086Z","timestamp":1785126256086,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/icon/diamond.png HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/png\r\ncontent-length: 2658\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-a62\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":2658,"size_decoded":2906,"mime_type":"image/png","magic":"PNG image data, 40 x 40, 8-bit/color RGBA, non-interlaced","md5":"111311d57e918fc751f03941d62cb2f5","sha1":"cb0b6718ff360e5b1d8fec7d704ed1ebcd02007c","sha256":"afafb261e70c313c0b51bfc01ce66d3ea6730bacdf78f5e1c1c6ce3e55697fce","sha512":"131e3b7cdcb777f543ea6e70fc8d17e42b361fe10dd1ef719543751d187dbb096f85b09c2635d852a7f4366461739393da1670611c0e830d1228dd56232e530f","ssdeep":"","tlshash":"55519105f923ac128a4afa146ef991872a338bc0ca806045fdda985738201fecc4e2c3","first_seen":"2023-05-02T00:43:59Z","last_seen":"2026-07-27T04:25:12.780607Z","times_seen":23,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAHXGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDggNzkuMTY0MDM2LCAyMDE5LzA4LzEzLTAxOjA2OjU3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjEuMCAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDIwLTAyLTE2VDIzOjE0OjA1KzAxOjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyMC0wNC0wNFQxOTo1MTo1OSswMTowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyMC0wNC0wNFQxOTo1MTo1OSswMTowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpkYjRlMzNjMC0wZWMxLWMzNGEtYjU0ZC1kOTNmYzY1Mzg2NDgiIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDo2YjBkYjQ2Ni1hMjcxLTVhNDgtOGQzNi1hZTc1Y2FjNzM4MGIiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo4MzlkYmVlZS03ZGVkLTU1NGMtYjUzZi00Y2I5ZDgyZWExZGEiPiA8cGhvdG9zaG9wOkRvY3VtZW50QW5jZXN0b3JzPiA8cmRmOkJhZz4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6ZDJjODYxMDAtYzEzZC1jMjQ3LWE2MTAtZmRkM2RkN2Y3NDMzPC9yZGY6bGk+IDwvcmRmOkJhZz4gPC9waG90b3Nob3A6RG9jdW1lbnRBbmNlc3RvcnM+IDx4bXBNTTpIaXN0b3J5PiA8cmRmOlNlcT4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNyZWF0ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6ODM5ZGJlZWUtN2RlZC01NTRjLWI1M2YtNGNiOWQ4MmVhMWRhIiBzdEV2dDp3aGVuPSIyMDIwLTAyLTE2VDIzOjE0OjA1KzAxOjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgMjEuMCAoV2luZG93cykiLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjkwYzg5MThlLTRlOWItMDM0Ny1iMjhhLTM4NWE3ZWY4ODg3MiIgc3RFdnQ6d2hlbj0iMjAyMC0wMi0xN1QwMTowMjowOCswMTowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIxLjAgKFdpbmRvd3MpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDpkYjRlMzNjMC0wZWMxLWMzNGEtYjU0ZC1kOTNmYzY1Mzg2NDgiIHN0RXZ0OndoZW49IjIwMjAtMDQtMDRUMTk6NTE6NTkrMDE6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMS4wIChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6ugr0ZAAACrElEQVRYw+2YzUtVQRjG76YPUfILUjQjhTTETeLHysoPNCGwL60/QQUp8uoyUhFt07JARHDnTrBFgeLCK9JCUIRALcONIkbeAjUl9fi+8BwZhpk5c73XVDiLB8/MPGfe35mZ+573GHAcJ3CWFfABfUAf0Ac8A4CPhzcSScukv6SwpB3Sb1I2KQD1khyFN4z+L6RL7I0KkCbIIgVxXYvJVXoKsCd4GL7+ZvDfhOc9qTQawDlMeA/tDkWwZgS7i/Yk2rxCfxT+fIwH0V5nb8SAdFO/MOkW6QL6x4T+HgRLJ+0J/Z3oL5TgatEv78ZURIB0Q6PiyT9hLB7tabRZSwr/A4w9Q7sD7XzNtvdZAZLxvuHstMJTTkrDdcjgLwCUC3vd4GW9MgJiQsdDlYJ/0MO7RkoFXILHD8dVjQmQnzCHdEWja6Qbgj+PlGTw5wmph4/GHQDr/Jkc32uLUyxzY4ZwBk1KwI8oXjUuzcmey6YV5Bw2gaXe1ug5vCNI3NsW2sfO8H3zmvs45orNCl7F2dGdkVn4HlmcJ1dLgKvw8BXbphnelkXDRO72blgCPgTguGacc2hJpImaz8MPzYTv4OmxgNsCXKrBU3LcV12SJjWEhePgBdgNwG7bbY2omqEJkkmrunxo2DZXFwH4SzFWFatyK1Px4v+IsWoD3GfAVSnGGqIutyTIW6R/QoADYXU2NYBlGB+V+ptUeTDqihrVyY4QqBGBPijgfmIsTup/qUvUMSn5adLbQrCvCJSrAHyDsS6hr930JonZNwmqGbkA/S4BupX1LtpvvV51Mf1oosnrEHgcwVoEuBD6XM+A7l19ol91FOAFAFJQ4h+VTMLqhUzFxIl/dlKQ10K1vABAN/3MeFU7/wOQVYS/baQhXNcjyZ8uoP+fBR/QB/QBzzngIUdAqyvPuSv1AAAAAElFTkSuQmCC"}},"time_used":338,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":318,"receive":20,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCCOW.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.699Z","timestamp":1785126258699,"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 /crypto/XTVCCOW.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 04:24:18 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: \"cd88e15c4b1840e7d56a77740c4b63be\"\r\nlast-modified: Tue, 16 Aug 2022 08:48:00 GMT\r\ncdn-cachedat: 08/09/2025 14:29:30\r\nx-amz-id-2: geLtZ+gP+lwaMIjIiqa+Avq7Bm3qL9ZHEalJbhUsLs9yWGMmpIcyPuR1+Lx6wuJV5HXgwNvK+2A=\r\nx-amz-request-id: ZBNA2WX5CDHJRY56\r\nx-amz-meta-hash: cd88e15c4b1840e7d56a77740c4b63be\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: 76deb2dcd70ffd11c301dd582633ff8d\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":1712,"size_decoded":1787,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1712), with no line terminators","md5":"cd88e15c4b1840e7d56a77740c4b63be","sha1":"0553a4eb2fd568158cd157999e7ec2946a9551f7","sha256":"34444757c42fee87f7408eb3a3e928a04913f4ac1c9e89aab3d76969b14d625b","sha512":"ad8acbb3d27d9e0b21224c14de87c7b8bc08efe97f9b1cfa668efa82b099c97ee8e2db1cd769a4c9ab4f9cc318e4e5fbf514f6811a24aee5fcb49e8160bc9db5","ssdeep":"","tlshash":"86311127d084d47bcd43c12cee3081a3610f54eae5df92ea95a3936a348a4c7d944b5c","first_seen":"2025-06-07T11:10:04.292033Z","last_seen":"2026-07-27T07:05:43.340416Z","times_seen":623,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYXowNWNpMDIxKSIgZD0iTTAgMGgxOHYxOEgweiIvPjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0ibTUuMDIgNiAxLjEzLTEuNS0yLjIyLjY4LS40MS42My4zNyAxLjMyIDEuMDcuNDktMS41NS4yNkwzIDkuMTRsMS4zNi42IDEuMDItLjMuMTQgMS4xNyAxLjM1IDIuOTRMOSAxNWwyLjEzLTEuNDUgMS4zNS0yLjk0LjE0LTEuMTggMS4wMi4zIDEuMzYtLjYtLjQtMS4yNS0xLjU2LS4yNiAxLjA3LS40OS4zNy0xLjMyLS40LS42My0yLjIzLS42OEwxMi45OCA2bC0uNS4xMy0xLjk1LTEuMzJMOSA1IDcuNDcgNC44IDUuNTMgNi4xM2wtLjUxLS4xMlpNMy42OSA4LjE5bDEuNjYtLjI5djEuMmwtLjk2LjI4LS45Ni0uNDIuMjYtLjc3Wk01Ljc0IDYuNHYuOTVsMS4xMi41Nkw4LjcgNS4zbC0xLjEzLS4xM0w1Ljc0IDYuNFptLjIgNC4xMy0uMTctMS4xOCAxLjM5LS4zLjQ3IDEuNTQtLjkgMS43NC0uOC0xLjhaTTQuNzggNi4zbC41Ni4xNnYuOTVsLTEuMDQtLjQ3LjQ4LS42NFptLS44Mi0uMjMuMTUuNTQuMzEtLjQxLS40Ni0uMTNabTEuMjctLjk0LS42Ljc4TDQgNS43M2wuMTctLjI2IDEuMDgtLjMzWk03LjIgOC4wMiA5IDUuNDZsMS43OSAyLjU2LS4yLjYySDcuNGwtLjE5LS42MlptMy45My0uMSAxLjEyLS41N1Y2LjRsLTEuODItMS4yNC0xLjEzLjEzIDEuODMgMi42MlptLjEzIDQuNDJ2LS4wMWwuOC0xLjguMTYtMS4xOC0xLjM5LS4zLS40NyAxLjU0LjkgMS43NVptMS4zOC00Ljkydi0uOTVsLjU2LS4xNi40OC42NC0xLjA0LjQ3Wm0xLjIzLS44LS4zMS0uNDEuNDYtLjEzLS4xNS41NFptLS41My0uNy42Ni0uMTktLjE3LS4yNi0xLjA4LS4zMy42Ljc4Wm0tLjcgMy4xN3YtMS4ybDEuNjYuMjkuMjYuNzctLjk2LjQyLS45Ni0uMjhabS0yLjExIDIuNi41NiAxLjA4LS4xNy4zNi0xLjUzLS40My4yLS4xOS4yMi0uMTZ2LS4wM2wuNzItLjY0Wm0uMTUgMS43Mkw5IDE0LjU3IDcuMzEgMTMuNCA5IDEyLjk0bDEuNjkuNDdaTTkuNSAxMi4xNmwtLjUuMzktLjUtLjM4LS4wMy0uMS0uNDItMS4zNGgxLjlsLS40MyAxLjM4LS4wMi4wNVptLTIuMDQtLjQ4LS41NiAxLjA5LjE3LjM2IDEuNTMtLjQzLS4yLS4xOS0uMjItLjE2di0uMDNsLS43Mi0uNjRabTIuNi0xLjI4SDcuOTRsLS40Mi0xLjM2aDIuOTRsLS40MiAxLjM2WiIgZmlsbD0idXJsKCNiejA1Y2kwMjEpIi8+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJhejA1Y2kwMjEiIHgxPSIzLjM1IiB5MT0iMy4xMiIgeDI9IjIxLjkiIHkyPSIyNC40MyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiMxQTFFMjEiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMwNjA2MEEiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCBpZD0iYnowNWNpMDIxIiB4MT0iMTUiIHkxPSI5Ljc1IiB4Mj0iMyIgeTI9IjkuNzUiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjRjg2Ii8+PHN0b3Agb2Zmc2V0PSIuNDkiIHN0b3AtY29sb3I9IiNBNUE5REIiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNGRUZFRkYiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4="}},"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":"besttrader.live/cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.052Z","timestamp":1785126256052,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: W/\"65211e70-520c\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":21004,"size_decoded":7399,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (20831)","md5":"56456db9d72a4b380ed3cb63095e6022","sha1":"6dbce88aee15b42f29083df7a07513cf3b486ba0","sha256":"66f3a07e1fa9b64a686b66381e4458dbc8abf3dbbff954720c4eec07b84411c2","sha512":"e56bd96b837b26add354d0a9e2b8dc04c95cea94f7959ee05718ed23a224296fae22d49afab160b45963bd99c2c501a3f12517e431eb68a13a327ff8b262b50a","ssdeep":"384:kmQkLrwVOyzirVyKnxRsIB9Db5HjiWn8xHOxvRVgD75zBY5vImg3FzGpL9ARdOgS:vLsgyziJp3Db5OxHOxvYD73Y5vQzyL9p","tlshash":"1992b4cc3294b06643a791a7a0af960fb2339875610e9410f19df2d97c30ef9a13bc79","first_seen":"2023-03-07T01:06:27Z","last_seen":"2026-07-27T06:59:18.326572Z","times_seen":19750,"resource_available":true,"data":"LyoKIENvcHlyaWdodCAoQykgRmVkZXJpY28gWml2b2xvIDIwMTkKIERpc3RyaWJ1dGVkIHVuZGVyIHRoZSBNSVQgTGljZW5zZSAobGljZW5zZSB0ZXJtcyBhcmUgYXQgaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVCkuCiAqLyhmdW5jdGlvbihlLHQpeydvYmplY3QnPT10eXBlb2YgZXhwb3J0cyYmJ3VuZGVmaW5lZCchPXR5cGVvZiBtb2R1bGU/bW9kdWxlLmV4cG9ydHM9dCgpOidmdW5jdGlvbic9PXR5cGVvZiBkZWZpbmUmJmRlZmluZS5hbWQ/ZGVmaW5lKHQpOmUuUG9wcGVyPXQoKX0pKHRoaXMsZnVuY3Rpb24oKXsndXNlIHN0cmljdCc7ZnVuY3Rpb24gZShlKXtyZXR1cm4gZSYmJ1tvYmplY3QgRnVuY3Rpb25dJz09PXt9LnRvU3RyaW5nLmNhbGwoZSl9ZnVuY3Rpb24gdChlLHQpe2lmKDEhPT1lLm5vZGVUeXBlKXJldHVybltdO3ZhciBvPWUub3duZXJEb2N1bWVudC5kZWZhdWx0VmlldyxuPW8uZ2V0Q29tcHV0ZWRTdHlsZShlLG51bGwpO3JldHVybiB0P25bdF06bn1mdW5jdGlvbiBvKGUpe3JldHVybidIVE1MJz09PWUubm9kZU5hbWU/ZTplLnBhcmVudE5vZGV8fGUuaG9zdH1mdW5jdGlvbiBuKGUpe2lmKCFlKXJldHVybiBkb2N1bWVudC5ib2R5O3N3aXRjaChlLm5vZGVOYW1lKXtjYXNlJ0hUTUwnOmNhc2UnQk9EWSc6cmV0dXJuIGUub3duZXJEb2N1bWVudC5ib2R5O2Nhc2UnI2RvY3VtZW50JzpyZXR1cm4gZS5ib2R5O312YXIgaT10KGUpLHI9aS5vdmVyZmxvdyxwPWkub3ZlcmZsb3dYLHM9aS5vdmVyZmxvd1k7cmV0dXJuIC8oYXV0b3xzY3JvbGx8b3ZlcmxheSkvLnRlc3QocitzK3ApP2U6bihvKGUpKX1mdW5jdGlvbiByKGUpe3JldHVybiAxMT09PWU/cGU6MTA9PT1lP3NlOnBlfHxzZX1mdW5jdGlvbiBwKGUpe2lmKCFlKXJldHVybiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ7Zm9yKHZhciBvPXIoMTApP2RvY3VtZW50LmJvZHk6bnVsbCxuPWUub2Zmc2V0UGFyZW50fHxudWxsO249PT1vJiZlLm5leHRFbGVtZW50U2libGluZzspbj0oZT1lLm5leHRFbGVtZW50U2libGluZykub2Zmc2V0UGFyZW50O3ZhciBpPW4mJm4ubm9kZU5hbWU7cmV0dXJuIGkmJidCT0RZJyE9PWkmJidIVE1MJyE9PWk/LTEhPT1bJ1RIJywnVEQnLCdUQUJMRSddLmluZGV4T2Yobi5ub2RlTmFtZSkmJidzdGF0aWMnPT09dChuLCdwb3NpdGlvbicpP3Aobik6bjplP2Uub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ6ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50fWZ1bmN0aW9uIHMoZSl7dmFyIHQ9ZS5ub2RlTmFtZTtyZXR1cm4nQk9EWSchPT10JiYoJ0hUTUwnPT09dHx8cChlLmZpcnN0RWxlbWVudENoaWxkKT09PWUpfWZ1bmN0aW9uIGQoZSl7cmV0dXJuIG51bGw9PT1lLnBhcmVudE5vZGU/ZTpkKGUucGFyZW50Tm9kZSl9ZnVuY3Rpb24gYShlLHQpe2lmKCFlfHwhZS5ub2RlVHlwZXx8IXR8fCF0Lm5vZGVUeXBlKXJldHVybiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ7dmFyIG89ZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbih0KSZOb2RlLkRPQ1VNRU5UX1BPU0lUSU9OX0ZPTExPV0lORyxuPW8/ZTp0LGk9bz90OmUscj1kb2N1bWVudC5jcmVhdGVSYW5nZSgpO3Iuc2V0U3RhcnQobiwwKSxyLnNldEVuZChpLDApO3ZhciBsPXIuY29tbW9uQW5jZXN0b3JDb250YWluZXI7aWYoZSE9PWwmJnQhPT1sfHxuLmNvbnRhaW5zKGkpKXJldHVybiBzKGwpP2w6cChsKTt2YXIgZj1kKGUpO3JldHVybiBmLmhvc3Q/YShmLmhvc3QsdCk6YShlLGQodCkuaG9zdCl9ZnVuY3Rpb24gbChlKXt2YXIgdD0xPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06J3RvcCcsbz0ndG9wJz09PXQ/J3Njcm9sbFRvcCc6J3Njcm9sbExlZnQnLG49ZS5ub2RlTmFtZTtpZignQk9EWSc9PT1ufHwnSFRNTCc9PT1uKXt2YXIgaT1lLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LHI9ZS5vd25lckRvY3VtZW50LnNjcm9sbGluZ0VsZW1lbnR8fGk7cmV0dXJuIHJbb119cmV0dXJuIGVbb119ZnVuY3Rpb24gZihlLHQpe3ZhciBvPTI8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzJdJiZhcmd1bWVudHNbMl0sbj1sKHQsJ3RvcCcpLGk9bCh0LCdsZWZ0Jykscj1vPy0xOjE7cmV0dXJuIGUudG9wKz1uKnIsZS5ib3R0b20rPW4qcixlLmxlZnQrPWkqcixlLnJpZ2h0Kz1pKnIsZX1mdW5jdGlvbiBtKGUsdCl7dmFyIG89J3gnPT09dD8nTGVmdCc6J1RvcCcsbj0nTGVmdCc9PW8/J1JpZ2h0JzonQm90dG9tJztyZXR1cm4gcGFyc2VGbG9hdChlWydib3JkZXInK28rJ1dpZHRoJ10sMTApK3BhcnNlRmxvYXQoZVsnYm9yZGVyJytuKydXaWR0aCddLDEwKX1mdW5jdGlvbiBoKGUsdCxvLG4pe3JldHVybiBlZSh0WydvZmZzZXQnK2VdLHRbJ3Njcm9sbCcrZV0sb1snY2xpZW50JytlXSxvWydvZmZzZXQnK2VdLG9bJ3Njcm9sbCcrZV0scigxMCk/cGFyc2VJbnQob1snb2Zmc2V0JytlXSkrcGFyc2VJbnQoblsnbWFyZ2luJysoJ0hlaWdodCc9PT1lPydUb3AnOidMZWZ0JyldKStwYXJzZUludChuWydtYXJnaW4nKygnSGVpZ2h0Jz09PWU/J0JvdHRvbSc6J1JpZ2h0JyldKTowKX1mdW5jdGlvbiBjKGUpe3ZhciB0PWUuYm9keSxvPWUuZG9jdW1lbnRFbGVtZW50LG49cigxMCkmJmdldENvbXB1dGVkU3R5bGUobyk7cmV0dXJue2hlaWdodDpoKCdIZWlnaHQnLHQsbyxuKSx3aWR0aDpoKCdXaWR0aCcsdCxvLG4pfX1mdW5jdGlvbiBnKGUpe3JldHVybiBmZSh7fSxlLHtyaWdodDplLmxlZnQrZS53aWR0aCxib3R0b206ZS50b3ArZS5oZWlnaHR9KX1mdW5jdGlvbiB1KGUpe3ZhciBvPXt9O3RyeXtpZihyKDEwKSl7bz1lLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO3ZhciBuPWwoZSwndG9wJyksaT1sKGUsJ2xlZnQnKTtvLnRvcCs9bixvLmxlZnQrPWksby5ib3R0b20rPW4sby5yaWdodCs9aX1lbHNlIG89ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKX1jYXRjaCh0KXt9dmFyIHA9e2xlZnQ6by5sZWZ0LHRvcDpvLnRvcCx3aWR0aDpvLnJpZ2h0LW8ubGVmdCxoZWlnaHQ6by5ib3R0b20tby50b3B9LHM9J0hUTUwnPT09ZS5ub2RlTmFtZT9jKGUub3duZXJEb2N1bWVudCk6e30sZD1zLndpZHRofHxlLmNsaWVudFdpZHRofHxwLnJpZ2h0LXAubGVmdCxhPXMuaGVpZ2h0fHxlLmNsaWVudEhlaWdodHx8cC5ib3R0b20tcC50b3AsZj1lLm9mZnNldFdpZHRoLWQsaD1lLm9mZnNldEhlaWdodC1hO2lmKGZ8fGgpe3ZhciB1PXQoZSk7Zi09bSh1LCd4JyksaC09bSh1LCd5JykscC53aWR0aC09ZixwLmhlaWdodC09aH1yZXR1cm4gZyhwKX1mdW5jdGlvbiBiKGUsbyl7dmFyIGk9Mjxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0mJmFyZ3VtZW50c1syXSxwPXIoMTApLHM9J0hUTUwnPT09by5ub2RlTmFtZSxkPXUoZSksYT11KG8pLGw9bihlKSxtPXQobyksaD1wYXJzZUZsb2F0KG0uYm9yZGVyVG9wV2lkdGgsMTApLGM9cGFyc2VGbG9hdChtLmJvcmRlckxlZnRXaWR0aCwxMCk7aSYmcyYmKGEudG9wPWVlKGEudG9wLDApLGEubGVmdD1lZShhLmxlZnQsMCkpO3ZhciBiPWcoe3RvcDpkLnRvcC1hLnRvcC1oLGxlZnQ6ZC5sZWZ0LWEubGVmdC1jLHdpZHRoOmQud2lkdGgsaGVpZ2h0OmQuaGVpZ2h0fSk7aWYoYi5tYXJnaW5Ub3A9MCxiLm1hcmdpbkxlZnQ9MCwhcCYmcyl7dmFyIHc9cGFyc2VGbG9hdChtLm1hcmdpblRvcCwxMCkseT1wYXJzZUZsb2F0KG0ubWFyZ2luTGVmdCwxMCk7Yi50b3AtPWgtdyxiLmJvdHRvbS09aC13LGIubGVmdC09Yy15LGIucmlnaHQtPWMteSxiLm1hcmdpblRvcD13LGIubWFyZ2luTGVmdD15fXJldHVybihwJiYhaT9vLmNvbnRhaW5zKGwpOm89PT1sJiYnQk9EWSchPT1sLm5vZGVOYW1lKSYmKGI9ZihiLG8pKSxifWZ1bmN0aW9uIHcoZSl7dmFyIHQ9MTxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0mJmFyZ3VtZW50c1sxXSxvPWUub3duZXJEb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsbj1iKGUsbyksaT1lZShvLmNsaWVudFdpZHRoLHdpbmRvdy5pbm5lcldpZHRofHwwKSxyPWVlKG8uY2xpZW50SGVpZ2h0LHdpbmRvdy5pbm5lckhlaWdodHx8MCkscD10PzA6bChvKSxzPXQ/MDpsKG8sJ2xlZnQnKSxkPXt0b3A6cC1uLnRvcCtuLm1hcmdpblRvcCxsZWZ0OnMtbi5sZWZ0K24ubWFyZ2luTGVmdCx3aWR0aDppLGhlaWdodDpyfTtyZXR1cm4gZyhkKX1mdW5jdGlvbiB5KGUpe3ZhciBuPWUubm9kZU5hbWU7aWYoJ0JPRFknPT09bnx8J0hUTUwnPT09bilyZXR1cm4hMTtpZignZml4ZWQnPT09dChlLCdwb3NpdGlvbicpKXJldHVybiEwO3ZhciBpPW8oZSk7cmV0dXJuISFpJiZ5KGkpfWZ1bmN0aW9uIEUoZSl7aWYoIWV8fCFlLnBhcmVudEVsZW1lbnR8fHIoKSlyZXR1cm4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O2Zvcih2YXIgbz1lLnBhcmVudEVsZW1lbnQ7byYmJ25vbmUnPT09dChvLCd0cmFuc2Zvcm0nKTspbz1vLnBhcmVudEVsZW1lbnQ7cmV0dXJuIG98fGRvY3VtZW50LmRvY3VtZW50RWxlbWVudH1mdW5jdGlvbiB2KGUsdCxpLHIpe3ZhciBwPTQ8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzRdJiZhcmd1bWVudHNbNF0scz17dG9wOjAsbGVmdDowfSxkPXA/RShlKTphKGUsdCk7aWYoJ3ZpZXdwb3J0Jz09PXIpcz13KGQscCk7ZWxzZXt2YXIgbDsnc2Nyb2xsUGFyZW50Jz09PXI/KGw9bihvKHQpKSwnQk9EWSc9PT1sLm5vZGVOYW1lJiYobD1lLm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KSk6J3dpbmRvdyc9PT1yP2w9ZS5vd25lckRvY3VtZW50LmRvY3VtZW50RWxlbWVudDpsPXI7dmFyIGY9YihsLGQscCk7aWYoJ0hUTUwnPT09bC5ub2RlTmFtZSYmIXkoZCkpe3ZhciBtPWMoZS5vd25lckRvY3VtZW50KSxoPW0uaGVpZ2h0LGc9bS53aWR0aDtzLnRvcCs9Zi50b3AtZi5tYXJnaW5Ub3Ascy5ib3R0b209aCtmLnRvcCxzLmxlZnQrPWYubGVmdC1mLm1hcmdpbkxlZnQscy5yaWdodD1nK2YubGVmdH1lbHNlIHM9Zn1pPWl8fDA7dmFyIHU9J251bWJlcic9PXR5cGVvZiBpO3JldHVybiBzLmxlZnQrPXU/aTppLmxlZnR8fDAscy50b3ArPXU/aTppLnRvcHx8MCxzLnJpZ2h0LT11P2k6aS5yaWdodHx8MCxzLmJvdHRvbS09dT9pOmkuYm90dG9tfHwwLHN9ZnVuY3Rpb24geChlKXt2YXIgdD1lLndpZHRoLG89ZS5oZWlnaHQ7cmV0dXJuIHQqb31mdW5jdGlvbiBPKGUsdCxvLG4saSl7dmFyIHI9NTxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbNV0/YXJndW1lbnRzWzVdOjA7aWYoLTE9PT1lLmluZGV4T2YoJ2F1dG8nKSlyZXR1cm4gZTt2YXIgcD12KG8sbixyLGkpLHM9e3RvcDp7d2lkdGg6cC53aWR0aCxoZWlnaHQ6dC50b3AtcC50b3B9LHJpZ2h0Ont3aWR0aDpwLnJpZ2h0LXQucmlnaHQsaGVpZ2h0OnAuaGVpZ2h0fSxib3R0b206e3dpZHRoOnAud2lkdGgsaGVpZ2h0OnAuYm90dG9tLXQuYm90dG9tfSxsZWZ0Ont3aWR0aDp0LmxlZnQtcC5sZWZ0LGhlaWdodDpwLmhlaWdodH19LGQ9T2JqZWN0LmtleXMocykubWFwKGZ1bmN0aW9uKGUpe3JldHVybiBmZSh7a2V5OmV9LHNbZV0se2FyZWE6eChzW2VdKX0pfSkuc29ydChmdW5jdGlvbihlLHQpe3JldHVybiB0LmFyZWEtZS5hcmVhfSksYT1kLmZpbHRlcihmdW5jdGlvbihlKXt2YXIgdD1lLndpZHRoLG49ZS5oZWlnaHQ7cmV0dXJuIHQ+PW8uY2xpZW50V2lkdGgmJm4+PW8uY2xpZW50SGVpZ2h0fSksbD0wPGEubGVuZ3RoP2FbMF0ua2V5OmRbMF0ua2V5LGY9ZS5zcGxpdCgnLScpWzFdO3JldHVybiBsKyhmPyctJytmOicnKX1mdW5jdGlvbiBMKGUsdCxvKXt2YXIgbj0zPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNbM106bnVsbCxpPW4/RSh0KTphKHQsbyk7cmV0dXJuIGIobyxpLG4pfWZ1bmN0aW9uIFMoZSl7dmFyIHQ9ZS5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3LG89dC5nZXRDb21wdXRlZFN0eWxlKGUpLG49cGFyc2VGbG9hdChvLm1hcmdpblRvcHx8MCkrcGFyc2VGbG9hdChvLm1hcmdpbkJvdHRvbXx8MCksaT1wYXJzZUZsb2F0KG8ubWFyZ2luTGVmdHx8MCkrcGFyc2VGbG9hdChvLm1hcmdpblJpZ2h0fHwwKSxyPXt3aWR0aDplLm9mZnNldFdpZHRoK2ksaGVpZ2h0OmUub2Zmc2V0SGVpZ2h0K259O3JldHVybiByfWZ1bmN0aW9uIFQoZSl7dmFyIHQ9e2xlZnQ6J3JpZ2h0JyxyaWdodDonbGVmdCcsYm90dG9tOid0b3AnLHRvcDonYm90dG9tJ307cmV0dXJuIGUucmVwbGFjZSgvbGVmdHxyaWdodHxib3R0b218dG9wL2csZnVuY3Rpb24oZSl7cmV0dXJuIHRbZV19KX1mdW5jdGlvbiBEKGUsdCxvKXtvPW8uc3BsaXQoJy0nKVswXTt2YXIgbj1TKGUpLGk9e3dpZHRoOm4ud2lkdGgsaGVpZ2h0Om4uaGVpZ2h0fSxyPS0xIT09WydyaWdodCcsJ2xlZnQnXS5pbmRleE9mKG8pLHA9cj8ndG9wJzonbGVmdCcscz1yPydsZWZ0JzondG9wJyxkPXI/J2hlaWdodCc6J3dpZHRoJyxhPXI/J3dpZHRoJzonaGVpZ2h0JztyZXR1cm4gaVtwXT10W3BdK3RbZF0vMi1uW2RdLzIsaVtzXT1vPT09cz90W3NdLW5bYV06dFtUKHMpXSxpfWZ1bmN0aW9uIEMoZSx0KXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLmZpbmQ/ZS5maW5kKHQpOmUuZmlsdGVyKHQpWzBdfWZ1bmN0aW9uIE4oZSx0LG8pe2lmKEFycmF5LnByb3RvdHlwZS5maW5kSW5kZXgpcmV0dXJuIGUuZmluZEluZGV4KGZ1bmN0aW9uKGUpe3JldHVybiBlW3RdPT09b30pO3ZhciBuPUMoZSxmdW5jdGlvbihlKXtyZXR1cm4gZVt0XT09PW99KTtyZXR1cm4gZS5pbmRleE9mKG4pfWZ1bmN0aW9uIFAodCxvLG4pe3ZhciBpPXZvaWQgMD09PW4/dDp0LnNsaWNlKDAsTih0LCduYW1lJyxuKSk7cmV0dXJuIGkuZm9yRWFjaChmdW5jdGlvbih0KXt0WydmdW5jdGlvbiddJiZjb25zb2xlLndhcm4oJ2Btb2RpZmllci5mdW5jdGlvbmAgaXMgZGVwcmVjYXRlZCwgdXNlIGBtb2RpZmllci5mbmAhJyk7dmFyIG49dFsnZnVuY3Rpb24nXXx8dC5mbjt0LmVuYWJsZWQmJmUobikmJihvLm9mZnNldHMucG9wcGVyPWcoby5vZmZzZXRzLnBvcHBlciksby5vZmZzZXRzLnJlZmVyZW5jZT1nKG8ub2Zmc2V0cy5yZWZlcmVuY2UpLG89bihvLHQpKX0pLG99ZnVuY3Rpb24gaygpe2lmKCF0aGlzLnN0YXRlLmlzRGVzdHJveWVkKXt2YXIgZT17aW5zdGFuY2U6dGhpcyxzdHlsZXM6e30sYXJyb3dTdHlsZXM6e30sYXR0cmlidXRlczp7fSxmbGlwcGVkOiExLG9mZnNldHM6e319O2Uub2Zmc2V0cy5yZWZlcmVuY2U9TCh0aGlzLnN0YXRlLHRoaXMucG9wcGVyLHRoaXMucmVmZXJlbmNlLHRoaXMub3B0aW9ucy5wb3NpdGlvbkZpeGVkKSxlLnBsYWNlbWVudD1PKHRoaXMub3B0aW9ucy5wbGFjZW1lbnQsZS5vZmZzZXRzLnJlZmVyZW5jZSx0aGlzLnBvcHBlcix0aGlzLnJlZmVyZW5jZSx0aGlzLm9wdGlvbnMubW9kaWZpZXJzLmZsaXAuYm91bmRhcmllc0VsZW1lbnQsdGhpcy5vcHRpb25zLm1vZGlmaWVycy5mbGlwLnBhZGRpbmcpLGUub3JpZ2luYWxQbGFjZW1lbnQ9ZS5wbGFjZW1lbnQsZS5wb3NpdGlvbkZpeGVkPXRoaXMub3B0aW9ucy5wb3NpdGlvbkZpeGVkLGUub2Zmc2V0cy5wb3BwZXI9RCh0aGlzLnBvcHBlcixlLm9mZnNldHMucmVmZXJlbmNlLGUucGxhY2VtZW50KSxlLm9mZnNldHMucG9wcGVyLnBvc2l0aW9uPXRoaXMub3B0aW9ucy5wb3NpdGlvbkZpeGVkPydmaXhlZCc6J2Fic29sdXRlJyxlPVAodGhpcy5tb2RpZmllcnMsZSksdGhpcy5zdGF0ZS5pc0NyZWF0ZWQ/dGhpcy5vcHRpb25zLm9uVXBkYXRlKGUpOih0aGlzLnN0YXRlLmlzQ3JlYXRlZD0hMCx0aGlzLm9wdGlvbnMub25DcmVhdGUoZSkpfX1mdW5jdGlvbiBXKGUsdCl7cmV0dXJuIGUuc29tZShmdW5jdGlvbihlKXt2YXIgbz1lLm5hbWUsbj1lLmVuYWJsZWQ7cmV0dXJuIG4mJm89PT10fSl9ZnVuY3Rpb24gSChlKXtmb3IodmFyIHQ9WyExLCdtcycsJ1dlYmtpdCcsJ01veicsJ08nXSxvPWUuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkrZS5zbGljZSgxKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3ZhciBpPXRbbl0scj1pPycnK2krbzplO2lmKCd1bmRlZmluZWQnIT10eXBlb2YgZG9jdW1lbnQuYm9keS5zdHlsZVtyXSlyZXR1cm4gcn1yZXR1cm4gbnVsbH1mdW5jdGlvbiBCKCl7cmV0dXJuIHRoaXMuc3RhdGUuaXNEZXN0cm95ZWQ9ITAsVyh0aGlzLm1vZGlmaWVycywnYXBwbHlTdHlsZScpJiYodGhpcy5wb3BwZXIucmVtb3ZlQXR0cmlidXRlKCd4LXBsYWNlbWVudCcpLHRoaXMucG9wcGVyLnN0eWxlLnBvc2l0aW9uPScnLHRoaXMucG9wcGVyLnN0eWxlLnRvcD0nJyx0aGlzLnBvcHBlci5zdHlsZS5sZWZ0PScnLHRoaXMucG9wcGVyLnN0eWxlLnJpZ2h0PScnLHRoaXMucG9wcGVyLnN0eWxlLmJvdHRvbT0nJyx0aGlzLnBvcHBlci5zdHlsZS53aWxsQ2hhbmdlPScnLHRoaXMucG9wcGVyLnN0eWxlW0goJ3RyYW5zZm9ybScpXT0nJyksdGhpcy5kaXNhYmxlRXZlbnRMaXN0ZW5lcnMoKSx0aGlzLm9wdGlvbnMucmVtb3ZlT25EZXN0cm95JiZ0aGlzLnBvcHBlci5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHRoaXMucG9wcGVyKSx0aGlzfWZ1bmN0aW9uIEEoZSl7dmFyIHQ9ZS5vd25lckRvY3VtZW50O3JldHVybiB0P3QuZGVmYXVsdFZpZXc6d2luZG93fWZ1bmN0aW9uIE0oZSx0LG8saSl7dmFyIHI9J0JPRFknPT09ZS5ub2RlTmFtZSxwPXI/ZS5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3OmU7cC5hZGRFdmVudExpc3RlbmVyKHQsbyx7cGFzc2l2ZTohMH0pLHJ8fE0obihwLnBhcmVudE5vZGUpLHQsbyxpKSxpLnB1c2gocCl9ZnVuY3Rpb24gRihlLHQsbyxpKXtvLnVwZGF0ZUJvdW5kPWksQShlKS5hZGRFdmVudExpc3RlbmVyKCdyZXNpemUnLG8udXBkYXRlQm91bmQse3Bhc3NpdmU6ITB9KTt2YXIgcj1uKGUpO3JldHVybiBNKHIsJ3Njcm9sbCcsby51cGRhdGVCb3VuZCxvLnNjcm9sbFBhcmVudHMpLG8uc2Nyb2xsRWxlbWVudD1yLG8uZXZlbnRzRW5hYmxlZD0hMCxvfWZ1bmN0aW9uIEkoKXt0aGlzLnN0YXRlLmV2ZW50c0VuYWJsZWR8fCh0aGlzLnN0YXRlPUYodGhpcy5yZWZlcmVuY2UsdGhpcy5vcHRpb25zLHRoaXMuc3RhdGUsdGhpcy5zY2hlZHVsZVVwZGF0ZSkpfWZ1bmN0aW9uIFIoZSx0KXtyZXR1cm4gQShlKS5yZW1vdmVFdmVudExpc3RlbmVyKCdyZXNpemUnLHQudXBkYXRlQm91bmQpLHQuc2Nyb2xsUGFyZW50cy5mb3JFYWNoKGZ1bmN0aW9uKGUpe2UucmVtb3ZlRXZlbnRMaXN0ZW5lcignc2Nyb2xsJyx0LnVwZGF0ZUJvdW5kKX0pLHQudXBkYXRlQm91bmQ9bnVsbCx0LnNjcm9sbFBhcmVudHM9W10sdC5zY3JvbGxFbGVtZW50PW51bGwsdC5ldmVudHNFbmFibGVkPSExLHR9ZnVuY3Rpb24gVSgpe3RoaXMuc3RhdGUuZXZlbnRzRW5hYmxlZCYmKGNhbmNlbEFuaW1hdGlvbkZyYW1lKHRoaXMuc2NoZWR1bGVVcGRhdGUpLHRoaXMuc3RhdGU9Uih0aGlzLnJlZmVyZW5jZSx0aGlzLnN0YXRlKSl9ZnVuY3Rpb24gWShlKXtyZXR1cm4nJyE9PWUmJiFpc05hTihwYXJzZUZsb2F0KGUpKSYmaXNGaW5pdGUoZSl9ZnVuY3Rpb24gaihlLHQpe09iamVjdC5rZXlzKHQpLmZvckVhY2goZnVuY3Rpb24obyl7dmFyIG49Jyc7LTEhPT1bJ3dpZHRoJywnaGVpZ2h0JywndG9wJywncmlnaHQnLCdib3R0b20nLCdsZWZ0J10uaW5kZXhPZihvKSYmWSh0W29dKSYmKG49J3B4JyksZS5zdHlsZVtvXT10W29dK259KX1mdW5jdGlvbiBWKGUsdCl7T2JqZWN0LmtleXModCkuZm9yRWFjaChmdW5jdGlvbihvKXt2YXIgbj10W29dOyExPT09bj9lLnJlbW92ZUF0dHJpYnV0ZShvKTplLnNldEF0dHJpYnV0ZShvLHRbb10pfSl9ZnVuY3Rpb24gcShlLHQpe3ZhciBvPWUub2Zmc2V0cyxuPW8ucG9wcGVyLGk9by5yZWZlcmVuY2Uscj0kLHA9ZnVuY3Rpb24oZSl7cmV0dXJuIGV9LHM9cihpLndpZHRoKSxkPXIobi53aWR0aCksYT0tMSE9PVsnbGVmdCcsJ3JpZ2h0J10uaW5kZXhPZihlLnBsYWNlbWVudCksbD0tMSE9PWUucGxhY2VtZW50LmluZGV4T2YoJy0nKSxmPXQ/YXx8bHx8cyUyPT1kJTI/cjpaOnAsbT10P3I6cDtyZXR1cm57bGVmdDpmKDE9PXMlMiYmMT09ZCUyJiYhbCYmdD9uLmxlZnQtMTpuLmxlZnQpLHRvcDptKG4udG9wKSxib3R0b206bShuLmJvdHRvbSkscmlnaHQ6ZihuLnJpZ2h0KX19ZnVuY3Rpb24gSyhlLHQsbyl7dmFyIG49QyhlLGZ1bmN0aW9uKGUpe3ZhciBvPWUubmFtZTtyZXR1cm4gbz09PXR9KSxpPSEhbiYmZS5zb21lKGZ1bmN0aW9uKGUpe3JldHVybiBlLm5hbWU9PT1vJiZlLmVuYWJsZWQmJmUub3JkZXI8bi5vcmRlcn0pO2lmKCFpKXt2YXIgcj0nYCcrdCsnYCc7Y29uc29sZS53YXJuKCdgJytvKydgJysnIG1vZGlmaWVyIGlzIHJlcXVpcmVkIGJ5ICcrcisnIG1vZGlmaWVyIGluIG9yZGVyIHRvIHdvcmssIGJlIHN1cmUgdG8gaW5jbHVkZSBpdCBiZWZvcmUgJytyKychJyl9cmV0dXJuIGl9ZnVuY3Rpb24geihlKXtyZXR1cm4nZW5kJz09PWU/J3N0YXJ0Jzonc3RhcnQnPT09ZT8nZW5kJzplfWZ1bmN0aW9uIEcoZSl7dmFyIHQ9MTxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0mJmFyZ3VtZW50c1sxXSxvPWNlLmluZGV4T2YoZSksbj1jZS5zbGljZShvKzEpLmNvbmNhdChjZS5zbGljZSgwLG8pKTtyZXR1cm4gdD9uLnJldmVyc2UoKTpufWZ1bmN0aW9uIF8oZSx0LG8sbil7dmFyIGk9ZS5tYXRjaCgvKCg/OlwtfFwrKT9cZCpcLj9cZCopKC4qKS8pLHI9K2lbMV0scD1pWzJdO2lmKCFyKXJldHVybiBlO2lmKDA9PT1wLmluZGV4T2YoJyUnKSl7dmFyIHM7c3dpdGNoKHApe2Nhc2UnJXAnOnM9bzticmVhaztjYXNlJyUnOmNhc2UnJXInOmRlZmF1bHQ6cz1uO312YXIgZD1nKHMpO3JldHVybiBkW3RdLzEwMCpyfWlmKCd2aCc9PT1wfHwndncnPT09cCl7dmFyIGE7cmV0dXJuIGE9J3ZoJz09PXA/ZWUoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCx3aW5kb3cuaW5uZXJIZWlnaHR8fDApOmVlKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aCx3aW5kb3cuaW5uZXJXaWR0aHx8MCksYS8xMDAqcn1yZXR1cm4gcn1mdW5jdGlvbiBYKGUsdCxvLG4pe3ZhciBpPVswLDBdLHI9LTEhPT1bJ3JpZ2h0JywnbGVmdCddLmluZGV4T2YobikscD1lLnNwbGl0KC8oXCt8XC0pLykubWFwKGZ1bmN0aW9uKGUpe3JldHVybiBlLnRyaW0oKX0pLHM9cC5pbmRleE9mKEMocCxmdW5jdGlvbihlKXtyZXR1cm4tMSE9PWUuc2VhcmNoKC8sfFxzLyl9KSk7cFtzXSYmLTE9PT1wW3NdLmluZGV4T2YoJywnKSYmY29uc29sZS53YXJuKCdPZmZzZXRzIHNlcGFyYXRlZCBieSB3aGl0ZSBzcGFjZShzKSBhcmUgZGVwcmVjYXRlZCwgdXNlIGEgY29tbWEgKCwpIGluc3RlYWQuJyk7dmFyIGQ9L1xzKixccyp8XHMrLyxhPS0xPT09cz9bcF06W3Auc2xpY2UoMCxzKS5jb25jYXQoW3Bbc10uc3BsaXQoZClbMF1dKSxbcFtzXS5zcGxpdChkKVsxXV0uY29uY2F0KHAuc2xpY2UocysxKSldO3JldHVybiBhPWEubWFwKGZ1bmN0aW9uKGUsbil7dmFyIGk9KDE9PT1uPyFyOnIpPydoZWlnaHQnOid3aWR0aCcscD0hMTtyZXR1cm4gZS5yZWR1Y2UoZnVuY3Rpb24oZSx0KXtyZXR1cm4nJz09PWVbZS5sZW5ndGgtMV0mJi0xIT09WycrJywnLSddLmluZGV4T2YodCk/KGVbZS5sZW5ndGgtMV09dCxwPSEwLGUpOnA/KGVbZS5sZW5ndGgtMV0rPXQscD0hMSxlKTplLmNvbmNhdCh0KX0sW10pLm1hcChmdW5jdGlvbihlKXtyZXR1cm4gXyhlLGksdCxvKX0pfSksYS5mb3JFYWNoKGZ1bmN0aW9uKGUsdCl7ZS5mb3JFYWNoKGZ1bmN0aW9uKG8sbil7WShvKSYmKGlbdF0rPW8qKCctJz09PWVbbi0xXT8tMToxKSl9KX0pLGl9ZnVuY3Rpb24gSihlLHQpe3ZhciBvLG49dC5vZmZzZXQsaT1lLnBsYWNlbWVudCxyPWUub2Zmc2V0cyxwPXIucG9wcGVyLHM9ci5yZWZlcmVuY2UsZD1pLnNwbGl0KCctJylbMF07cmV0dXJuIG89WSgrbik/WytuLDBdOlgobixwLHMsZCksJ2xlZnQnPT09ZD8ocC50b3ArPW9bMF0scC5sZWZ0LT1vWzFdKToncmlnaHQnPT09ZD8ocC50b3ArPW9bMF0scC5sZWZ0Kz1vWzFdKTondG9wJz09PWQ/KHAubGVmdCs9b1swXSxwLnRvcC09b1sxXSk6J2JvdHRvbSc9PT1kJiYocC5sZWZ0Kz1vWzBdLHAudG9wKz1vWzFdKSxlLnBvcHBlcj1wLGV9Zm9yKHZhciBRPU1hdGgubWluLFo9TWF0aC5mbG9vciwkPU1hdGgucm91bmQsZWU9TWF0aC5tYXgsdGU9J3VuZGVmaW5lZCchPXR5cGVvZiB3aW5kb3cmJid1bmRlZmluZWQnIT10eXBlb2YgZG9jdW1lbnQsb2U9WydFZGdlJywnVHJpZGVudCcsJ0ZpcmVmb3gnXSxuZT0wLGllPTA7aWU8b2UubGVuZ3RoO2llKz0xKWlmKHRlJiYwPD1uYXZpZ2F0b3IudXNlckFnZW50LmluZGV4T2Yob2VbaWVdKSl7bmU9MTticmVha312YXIgaT10ZSYmd2luZG93LlByb21pc2UscmU9aT9mdW5jdGlvbihlKXt2YXIgdD0hMTtyZXR1cm4gZnVuY3Rpb24oKXt0fHwodD0hMCx3aW5kb3cuUHJvbWlzZS5yZXNvbHZlKCkudGhlbihmdW5jdGlvbigpe3Q9ITEsZSgpfSkpfX06ZnVuY3Rpb24oZSl7dmFyIHQ9ITE7cmV0dXJuIGZ1bmN0aW9uKCl7dHx8KHQ9ITAsc2V0VGltZW91dChmdW5jdGlvbigpe3Q9ITEsZSgpfSxuZSkpfX0scGU9dGUmJiEhKHdpbmRvdy5NU0lucHV0TWV0aG9kQ29udGV4dCYmZG9jdW1lbnQuZG9jdW1lbnRNb2RlKSxzZT10ZSYmL01TSUUgMTAvLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCksZGU9ZnVuY3Rpb24oZSx0KXtpZighKGUgaW5zdGFuY2VvZiB0KSl0aHJvdyBuZXcgVHlwZUVycm9yKCdDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb24nKX0sYWU9ZnVuY3Rpb24oKXtmdW5jdGlvbiBlKGUsdCl7Zm9yKHZhciBvLG49MDtuPHQubGVuZ3RoO24rKylvPXRbbl0sby5lbnVtZXJhYmxlPW8uZW51bWVyYWJsZXx8ITEsby5jb25maWd1cmFibGU9ITAsJ3ZhbHVlJ2luIG8mJihvLndyaXRhYmxlPSEwKSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxvLmtleSxvKX1yZXR1cm4gZnVuY3Rpb24odCxvLG4pe3JldHVybiBvJiZlKHQucHJvdG90eXBlLG8pLG4mJmUodCxuKSx0fX0oKSxsZT1mdW5jdGlvbihlLHQsbyl7cmV0dXJuIHQgaW4gZT9PYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHt2YWx1ZTpvLGVudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwfSk6ZVt0XT1vLGV9LGZlPU9iamVjdC5hc3NpZ258fGZ1bmN0aW9uKGUpe2Zvcih2YXIgdCxvPTE7bzxhcmd1bWVudHMubGVuZ3RoO28rKylmb3IodmFyIG4gaW4gdD1hcmd1bWVudHNbb10sdClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxuKSYmKGVbbl09dFtuXSk7cmV0dXJuIGV9LG1lPXRlJiYvRmlyZWZveC9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCksaGU9WydhdXRvLXN0YXJ0JywnYXV0bycsJ2F1dG8tZW5kJywndG9wLXN0YXJ0JywndG9wJywndG9wLWVuZCcsJ3JpZ2h0LXN0YXJ0JywncmlnaHQnLCdyaWdodC1lbmQnLCdib3R0b20tZW5kJywnYm90dG9tJywnYm90dG9tLXN0YXJ0JywnbGVmdC1lbmQnLCdsZWZ0JywnbGVmdC1zdGFydCddLGNlPWhlLnNsaWNlKDMpLGdlPXtGTElQOidmbGlwJyxDTE9DS1dJU0U6J2Nsb2Nrd2lzZScsQ09VTlRFUkNMT0NLV0lTRTonY291bnRlcmNsb2Nrd2lzZSd9LHVlPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gdChvLG4pe3ZhciBpPXRoaXMscj0yPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06e307ZGUodGhpcyx0KSx0aGlzLnNjaGVkdWxlVXBkYXRlPWZ1bmN0aW9uKCl7cmV0dXJuIHJlcXVlc3RBbmltYXRpb25GcmFtZShpLnVwZGF0ZSl9LHRoaXMudXBkYXRlPXJlKHRoaXMudXBkYXRlLmJpbmQodGhpcykpLHRoaXMub3B0aW9ucz1mZSh7fSx0LkRlZmF1bHRzLHIpLHRoaXMuc3RhdGU9e2lzRGVzdHJveWVkOiExLGlzQ3JlYXRlZDohMSxzY3JvbGxQYXJlbnRzOltdfSx0aGlzLnJlZmVyZW5jZT1vJiZvLmpxdWVyeT9vWzBdOm8sdGhpcy5wb3BwZXI9biYmbi5qcXVlcnk/blswXTpuLHRoaXMub3B0aW9ucy5tb2RpZmllcnM9e30sT2JqZWN0LmtleXMoZmUoe30sdC5EZWZhdWx0cy5tb2RpZmllcnMsci5tb2RpZmllcnMpKS5mb3JFYWNoKGZ1bmN0aW9uKGUpe2kub3B0aW9ucy5tb2RpZmllcnNbZV09ZmUoe30sdC5EZWZhdWx0cy5tb2RpZmllcnNbZV18fHt9LHIubW9kaWZpZXJzP3IubW9kaWZpZXJzW2VdOnt9KX0pLHRoaXMubW9kaWZpZXJzPU9iamVjdC5rZXlzKHRoaXMub3B0aW9ucy5tb2RpZmllcnMpLm1hcChmdW5jdGlvbihlKXtyZXR1cm4gZmUoe25hbWU6ZX0saS5vcHRpb25zLm1vZGlmaWVyc1tlXSl9KS5zb3J0KGZ1bmN0aW9uKGUsdCl7cmV0dXJuIGUub3JkZXItdC5vcmRlcn0pLHRoaXMubW9kaWZpZXJzLmZvckVhY2goZnVuY3Rpb24odCl7dC5lbmFibGVkJiZlKHQub25Mb2FkKSYmdC5vbkxvYWQoaS5yZWZlcmVuY2UsaS5wb3BwZXIsaS5vcHRpb25zLHQsaS5zdGF0ZSl9KSx0aGlzLnVwZGF0ZSgpO3ZhciBwPXRoaXMub3B0aW9ucy5ldmVudHNFbmFibGVkO3AmJnRoaXMuZW5hYmxlRXZlbnRMaXN0ZW5lcnMoKSx0aGlzLnN0YXRlLmV2ZW50c0VuYWJsZWQ9cH1yZXR1cm4gYWUodCxbe2tleTondXBkYXRlJyx2YWx1ZTpmdW5jdGlvbigpe3JldHVybiBrLmNhbGwodGhpcyl9fSx7a2V5OidkZXN0cm95Jyx2YWx1ZTpmdW5jdGlvbigpe3JldHVybiBCLmNhbGwodGhpcyl9fSx7a2V5OidlbmFibGVFdmVudExpc3RlbmVycycsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4gSS5jYWxsKHRoaXMpfX0se2tleTonZGlzYWJsZUV2ZW50TGlzdGVuZXJzJyx2YWx1ZTpmdW5jdGlvbigpe3JldHVybiBVLmNhbGwodGhpcyl9fV0pLHR9KCk7cmV0dXJuIHVlLlV0aWxzPSgndW5kZWZpbmVkJz09dHlwZW9mIHdpbmRvdz9nbG9iYWw6d2luZG93KS5Qb3BwZXJVdGlscyx1ZS5wbGFjZW1lbnRzPWhlLHVlLkRlZmF1bHRzPXtwbGFjZW1lbnQ6J2JvdHRvbScscG9zaXRpb25GaXhlZDohMSxldmVudHNFbmFibGVkOiEwLHJlbW92ZU9uRGVzdHJveTohMSxvbkNyZWF0ZTpmdW5jdGlvbigpe30sb25VcGRhdGU6ZnVuY3Rpb24oKXt9LG1vZGlmaWVyczp7c2hpZnQ6e29yZGVyOjEwMCxlbmFibGVkOiEwLGZuOmZ1bmN0aW9uKGUpe3ZhciB0PWUucGxhY2VtZW50LG89dC5zcGxpdCgnLScpWzBdLG49dC5zcGxpdCgnLScpWzFdO2lmKG4pe3ZhciBpPWUub2Zmc2V0cyxyPWkucmVmZXJlbmNlLHA9aS5wb3BwZXIscz0tMSE9PVsnYm90dG9tJywndG9wJ10uaW5kZXhPZihvKSxkPXM/J2xlZnQnOid0b3AnLGE9cz8nd2lkdGgnOidoZWlnaHQnLGw9e3N0YXJ0OmxlKHt9LGQscltkXSksZW5kOmxlKHt9LGQscltkXStyW2FdLXBbYV0pfTtlLm9mZnNldHMucG9wcGVyPWZlKHt9LHAsbFtuXSl9cmV0dXJuIGV9fSxvZmZzZXQ6e29yZGVyOjIwMCxlbmFibGVkOiEwLGZuOkosb2Zmc2V0OjB9LHByZXZlbnRPdmVyZmxvdzp7b3JkZXI6MzAwLGVuYWJsZWQ6ITAsZm46ZnVuY3Rpb24oZSx0KXt2YXIgbz10LmJvdW5kYXJpZXNFbGVtZW50fHxwKGUuaW5zdGFuY2UucG9wcGVyKTtlLmluc3RhbmNlLnJlZmVyZW5jZT09PW8mJihvPXAobykpO3ZhciBuPUgoJ3RyYW5zZm9ybScpLGk9ZS5pbnN0YW5jZS5wb3BwZXIuc3R5bGUscj1pLnRvcCxzPWkubGVmdCxkPWlbbl07aS50b3A9JycsaS5sZWZ0PScnLGlbbl09Jyc7dmFyIGE9dihlLmluc3RhbmNlLnBvcHBlcixlLmluc3RhbmNlLnJlZmVyZW5jZSx0LnBhZGRpbmcsbyxlLnBvc2l0aW9uRml4ZWQpO2kudG9wPXIsaS5sZWZ0PXMsaVtuXT1kLHQuYm91bmRhcmllcz1hO3ZhciBsPXQucHJpb3JpdHksZj1lLm9mZnNldHMucG9wcGVyLG09e3ByaW1hcnk6ZnVuY3Rpb24oZSl7dmFyIG89ZltlXTtyZXR1cm4gZltlXTxhW2VdJiYhdC5lc2NhcGVXaXRoUmVmZXJlbmNlJiYobz1lZShmW2VdLGFbZV0pKSxsZSh7fSxlLG8pfSxzZWNvbmRhcnk6ZnVuY3Rpb24oZSl7dmFyIG89J3JpZ2h0Jz09PWU/J2xlZnQnOid0b3AnLG49ZltvXTtyZXR1cm4gZltlXT5hW2VdJiYhdC5lc2NhcGVXaXRoUmVmZXJlbmNlJiYobj1RKGZbb10sYVtlXS0oJ3JpZ2h0Jz09PWU/Zi53aWR0aDpmLmhlaWdodCkpKSxsZSh7fSxvLG4pfX07cmV0dXJuIGwuZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdD0tMT09PVsnbGVmdCcsJ3RvcCddLmluZGV4T2YoZSk/J3NlY29uZGFyeSc6J3ByaW1hcnknO2Y9ZmUoe30sZixtW3RdKGUpKX0pLGUub2Zmc2V0cy5wb3BwZXI9ZixlfSxwcmlvcml0eTpbJ2xlZnQnLCdyaWdodCcsJ3RvcCcsJ2JvdHRvbSddLHBhZGRpbmc6NSxib3VuZGFyaWVzRWxlbWVudDonc2Nyb2xsUGFyZW50J30sa2VlcFRvZ2V0aGVyOntvcmRlcjo0MDAsZW5hYmxlZDohMCxmbjpmdW5jdGlvbihlKXt2YXIgdD1lLm9mZnNldHMsbz10LnBvcHBlcixuPXQucmVmZXJlbmNlLGk9ZS5wbGFjZW1lbnQuc3BsaXQoJy0nKVswXSxyPVoscD0tMSE9PVsndG9wJywnYm90dG9tJ10uaW5kZXhPZihpKSxzPXA/J3JpZ2h0JzonYm90dG9tJyxkPXA/J2xlZnQnOid0b3AnLGE9cD8nd2lkdGgnOidoZWlnaHQnO3JldHVybiBvW3NdPHIobltkXSkmJihlLm9mZnNldHMucG9wcGVyW2RdPXIobltkXSktb1thXSksb1tkXT5yKG5bc10pJiYoZS5vZmZzZXRzLnBvcHBlcltkXT1yKG5bc10pKSxlfX0sYXJyb3c6e29yZGVyOjUwMCxlbmFibGVkOiEwLGZuOmZ1bmN0aW9uKGUsbyl7dmFyIG47aWYoIUsoZS5pbnN0YW5jZS5tb2RpZmllcnMsJ2Fycm93Jywna2VlcFRvZ2V0aGVyJykpcmV0dXJuIGU7dmFyIGk9by5lbGVtZW50O2lmKCdzdHJpbmcnPT10eXBlb2YgaSl7aWYoaT1lLmluc3RhbmNlLnBvcHBlci5xdWVyeVNlbGVjdG9yKGkpLCFpKXJldHVybiBlO31lbHNlIGlmKCFlLmluc3RhbmNlLnBvcHBlci5jb250YWlucyhpKSlyZXR1cm4gY29uc29sZS53YXJuKCdXQVJOSU5HOiBgYXJyb3cuZWxlbWVudGAgbXVzdCBiZSBjaGlsZCBvZiBpdHMgcG9wcGVyIGVsZW1lbnQhJyksZTt2YXIgcj1lLnBsYWNlbWVudC5zcGxpdCgnLScpWzBdLHA9ZS5vZmZzZXRzLHM9cC5wb3BwZXIsZD1wLnJlZmVyZW5jZSxhPS0xIT09WydsZWZ0JywncmlnaHQnXS5pbmRleE9mKHIpLGw9YT8naGVpZ2h0Jzond2lkdGgnLGY9YT8nVG9wJzonTGVmdCcsbT1mLnRvTG93ZXJDYXNlKCksaD1hPydsZWZ0JzondG9wJyxjPWE/J2JvdHRvbSc6J3JpZ2h0Jyx1PVMoaSlbbF07ZFtjXS11PHNbbV0mJihlLm9mZnNldHMucG9wcGVyW21dLT1zW21dLShkW2NdLXUpKSxkW21dK3U+c1tjXSYmKGUub2Zmc2V0cy5wb3BwZXJbbV0rPWRbbV0rdS1zW2NdKSxlLm9mZnNldHMucG9wcGVyPWcoZS5vZmZzZXRzLnBvcHBlcik7dmFyIGI9ZFttXStkW2xdLzItdS8yLHc9dChlLmluc3RhbmNlLnBvcHBlcikseT1wYXJzZUZsb2F0KHdbJ21hcmdpbicrZl0sMTApLEU9cGFyc2VGbG9hdCh3Wydib3JkZXInK2YrJ1dpZHRoJ10sMTApLHY9Yi1lLm9mZnNldHMucG9wcGVyW21dLXktRTtyZXR1cm4gdj1lZShRKHNbbF0tdSx2KSwwKSxlLmFycm93RWxlbWVudD1pLGUub2Zmc2V0cy5hcnJvdz0obj17fSxsZShuLG0sJCh2KSksbGUobixoLCcnKSxuKSxlfSxlbGVtZW50OidbeC1hcnJvd10nfSxmbGlwOntvcmRlcjo2MDAsZW5hYmxlZDohMCxmbjpmdW5jdGlvbihlLHQpe2lmKFcoZS5pbnN0YW5jZS5tb2RpZmllcnMsJ2lubmVyJykpcmV0dXJuIGU7aWYoZS5mbGlwcGVkJiZlLnBsYWNlbWVudD09PWUub3JpZ2luYWxQbGFjZW1lbnQpcmV0dXJuIGU7dmFyIG89dihlLmluc3RhbmNlLnBvcHBlcixlLmluc3RhbmNlLnJlZmVyZW5jZSx0LnBhZGRpbmcsdC5ib3VuZGFyaWVzRWxlbWVudCxlLnBvc2l0aW9uRml4ZWQpLG49ZS5wbGFjZW1lbnQuc3BsaXQoJy0nKVswXSxpPVQobikscj1lLnBsYWNlbWVudC5zcGxpdCgnLScpWzFdfHwnJyxwPVtdO3N3aXRjaCh0LmJlaGF2aW9yKXtjYXNlIGdlLkZMSVA6cD1bbixpXTticmVhaztjYXNlIGdlLkNMT0NLV0lTRTpwPUcobik7YnJlYWs7Y2FzZSBnZS5DT1VOVEVSQ0xPQ0tXSVNFOnA9RyhuLCEwKTticmVhaztkZWZhdWx0OnA9dC5iZWhhdmlvcjt9cmV0dXJuIHAuZm9yRWFjaChmdW5jdGlvbihzLGQpe2lmKG4hPT1zfHxwLmxlbmd0aD09PWQrMSlyZXR1cm4gZTtuPWUucGxhY2VtZW50LnNwbGl0KCctJylbMF0saT1UKG4pO3ZhciBhPWUub2Zmc2V0cy5wb3BwZXIsbD1lLm9mZnNldHMucmVmZXJlbmNlLGY9WixtPSdsZWZ0Jz09PW4mJmYoYS5yaWdodCk+ZihsLmxlZnQpfHwncmlnaHQnPT09biYmZihhLmxlZnQpPGYobC5yaWdodCl8fCd0b3AnPT09biYmZihhLmJvdHRvbSk+ZihsLnRvcCl8fCdib3R0b20nPT09biYmZihhLnRvcCk8ZihsLmJvdHRvbSksaD1mKGEubGVmdCk8ZihvLmxlZnQpLGM9ZihhLnJpZ2h0KT5mKG8ucmlnaHQpLGc9ZihhLnRvcCk8ZihvLnRvcCksdT1mKGEuYm90dG9tKT5mKG8uYm90dG9tKSxiPSdsZWZ0Jz09PW4mJmh8fCdyaWdodCc9PT1uJiZjfHwndG9wJz09PW4mJmd8fCdib3R0b20nPT09biYmdSx3PS0xIT09Wyd0b3AnLCdib3R0b20nXS5pbmRleE9mKG4pLHk9ISF0LmZsaXBWYXJpYXRpb25zJiYodyYmJ3N0YXJ0Jz09PXImJmh8fHcmJidlbmQnPT09ciYmY3x8IXcmJidzdGFydCc9PT1yJiZnfHwhdyYmJ2VuZCc9PT1yJiZ1KTsobXx8Ynx8eSkmJihlLmZsaXBwZWQ9ITAsKG18fGIpJiYobj1wW2QrMV0pLHkmJihyPXoocikpLGUucGxhY2VtZW50PW4rKHI/Jy0nK3I6JycpLGUub2Zmc2V0cy5wb3BwZXI9ZmUoe30sZS5vZmZzZXRzLnBvcHBlcixEKGUuaW5zdGFuY2UucG9wcGVyLGUub2Zmc2V0cy5yZWZlcmVuY2UsZS5wbGFjZW1lbnQpKSxlPVAoZS5pbnN0YW5jZS5tb2RpZmllcnMsZSwnZmxpcCcpKX0pLGV9LGJlaGF2aW9yOidmbGlwJyxwYWRkaW5nOjUsYm91bmRhcmllc0VsZW1lbnQ6J3ZpZXdwb3J0J30saW5uZXI6e29yZGVyOjcwMCxlbmFibGVkOiExLGZuOmZ1bmN0aW9uKGUpe3ZhciB0PWUucGxhY2VtZW50LG89dC5zcGxpdCgnLScpWzBdLG49ZS5vZmZzZXRzLGk9bi5wb3BwZXIscj1uLnJlZmVyZW5jZSxwPS0xIT09WydsZWZ0JywncmlnaHQnXS5pbmRleE9mKG8pLHM9LTE9PT1bJ3RvcCcsJ2xlZnQnXS5pbmRleE9mKG8pO3JldHVybiBpW3A/J2xlZnQnOid0b3AnXT1yW29dLShzP2lbcD8nd2lkdGgnOidoZWlnaHQnXTowKSxlLnBsYWNlbWVudD1UKHQpLGUub2Zmc2V0cy5wb3BwZXI9ZyhpKSxlfX0saGlkZTp7b3JkZXI6ODAwLGVuYWJsZWQ6ITAsZm46ZnVuY3Rpb24oZSl7aWYoIUsoZS5pbnN0YW5jZS5tb2RpZmllcnMsJ2hpZGUnLCdwcmV2ZW50T3ZlcmZsb3cnKSlyZXR1cm4gZTt2YXIgdD1lLm9mZnNldHMucmVmZXJlbmNlLG89QyhlLmluc3RhbmNlLm1vZGlmaWVycyxmdW5jdGlvbihlKXtyZXR1cm4ncHJldmVudE92ZXJmbG93Jz09PWUubmFtZX0pLmJvdW5kYXJpZXM7aWYodC5ib3R0b208by50b3B8fHQubGVmdD5vLnJpZ2h0fHx0LnRvcD5vLmJvdHRvbXx8dC5yaWdodDxvLmxlZnQpe2lmKCEwPT09ZS5oaWRlKXJldHVybiBlO2UuaGlkZT0hMCxlLmF0dHJpYnV0ZXNbJ3gtb3V0LW9mLWJvdW5kYXJpZXMnXT0nJ31lbHNle2lmKCExPT09ZS5oaWRlKXJldHVybiBlO2UuaGlkZT0hMSxlLmF0dHJpYnV0ZXNbJ3gtb3V0LW9mLWJvdW5kYXJpZXMnXT0hMX1yZXR1cm4gZX19LGNvbXB1dGVTdHlsZTp7b3JkZXI6ODUwLGVuYWJsZWQ6ITAsZm46ZnVuY3Rpb24oZSx0KXt2YXIgbz10Lngsbj10LnksaT1lLm9mZnNldHMucG9wcGVyLHI9QyhlLmluc3RhbmNlLm1vZGlmaWVycyxmdW5jdGlvbihlKXtyZXR1cm4nYXBwbHlTdHlsZSc9PT1lLm5hbWV9KS5ncHVBY2NlbGVyYXRpb247dm9pZCAwIT09ciYmY29uc29sZS53YXJuKCdXQVJOSU5HOiBgZ3B1QWNjZWxlcmF0aW9uYCBvcHRpb24gbW92ZWQgdG8gYGNvbXB1dGVTdHlsZWAgbW9kaWZpZXIgYW5kIHdpbGwgbm90IGJlIHN1cHBvcnRlZCBpbiBmdXR1cmUgdmVyc2lvbnMgb2YgUG9wcGVyLmpzIScpO3ZhciBzLGQsYT12b2lkIDA9PT1yP3QuZ3B1QWNjZWxlcmF0aW9uOnIsbD1wKGUuaW5zdGFuY2UucG9wcGVyKSxmPXUobCksbT17cG9zaXRpb246aS5wb3NpdGlvbn0saD1xKGUsMj53aW5kb3cuZGV2aWNlUGl4ZWxSYXRpb3x8IW1lKSxjPSdib3R0b20nPT09bz8ndG9wJzonYm90dG9tJyxnPSdyaWdodCc9PT1uPydsZWZ0JzoncmlnaHQnLGI9SCgndHJhbnNmb3JtJyk7aWYoZD0nYm90dG9tJz09Yz8nSFRNTCc9PT1sLm5vZGVOYW1lPy1sLmNsaWVudEhlaWdodCtoLmJvdHRvbTotZi5oZWlnaHQraC5ib3R0b206aC50b3Ascz0ncmlnaHQnPT1nPydIVE1MJz09PWwubm9kZU5hbWU/LWwuY2xpZW50V2lkdGgraC5yaWdodDotZi53aWR0aCtoLnJpZ2h0OmgubGVmdCxhJiZiKW1bYl09J3RyYW5zbGF0ZTNkKCcrcysncHgsICcrZCsncHgsIDApJyxtW2NdPTAsbVtnXT0wLG0ud2lsbENoYW5nZT0ndHJhbnNmb3JtJztlbHNle3ZhciB3PSdib3R0b20nPT1jPy0xOjEseT0ncmlnaHQnPT1nPy0xOjE7bVtjXT1kKncsbVtnXT1zKnksbS53aWxsQ2hhbmdlPWMrJywgJytnfXZhciBFPXsieC1wbGFjZW1lbnQiOmUucGxhY2VtZW50fTtyZXR1cm4gZS5hdHRyaWJ1dGVzPWZlKHt9LEUsZS5hdHRyaWJ1dGVzKSxlLnN0eWxlcz1mZSh7fSxtLGUuc3R5bGVzKSxlLmFycm93U3R5bGVzPWZlKHt9LGUub2Zmc2V0cy5hcnJvdyxlLmFycm93U3R5bGVzKSxlfSxncHVBY2NlbGVyYXRpb246ITAseDonYm90dG9tJyx5OidyaWdodCd9LGFwcGx5U3R5bGU6e29yZGVyOjkwMCxlbmFibGVkOiEwLGZuOmZ1bmN0aW9uKGUpe3JldHVybiBqKGUuaW5zdGFuY2UucG9wcGVyLGUuc3R5bGVzKSxWKGUuaW5zdGFuY2UucG9wcGVyLGUuYXR0cmlidXRlcyksZS5hcnJvd0VsZW1lbnQmJk9iamVjdC5rZXlzKGUuYXJyb3dTdHlsZXMpLmxlbmd0aCYmaihlLmFycm93RWxlbWVudCxlLmFycm93U3R5bGVzKSxlfSxvbkxvYWQ6ZnVuY3Rpb24oZSx0LG8sbixpKXt2YXIgcj1MKGksdCxlLG8ucG9zaXRpb25GaXhlZCkscD1PKG8ucGxhY2VtZW50LHIsdCxlLG8ubW9kaWZpZXJzLmZsaXAuYm91bmRhcmllc0VsZW1lbnQsby5tb2RpZmllcnMuZmxpcC5wYWRkaW5nKTtyZXR1cm4gdC5zZXRBdHRyaWJ1dGUoJ3gtcGxhY2VtZW50JyxwKSxqKHQse3Bvc2l0aW9uOm8ucG9zaXRpb25GaXhlZD8nZml4ZWQnOidhYnNvbHV0ZSd9KSxvfSxncHVBY2NlbGVyYXRpb246dm9pZCAwfX19LHVlfSk7Ci8vIyBzb3VyY2VNYXBwaW5nVVJMPXBvcHBlci5taW4uanMubWFwCg=="}},"time_used":353,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":353,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s3.tradingview.com/external-embedding/embed-widget-market-overview.html","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://besttrader.live/","date":"2026-07-27T04:24:16.632Z","timestamp":1785126256632,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"x25519","signature_name":"RSA-PSS-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"*.tradingview.com","organization":""},"issuer":{"commonName":"DigiCert Global G2 TLS RSA SHA256 2020 CA1","organization":"DigiCert Inc"},"validity":{"start":"Tue, 21 Oct 2025 00:00:00 GMT","end":"Tue, 17 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"C4:FE:64:00:30:2A:CD:16:30:95:7E:E1:70:D1:31:3A:D6:33:3A:CC","sha256":"87:D2:67:7D:3E:02:F0:3B:58:BD:38:17:DA:FE:73:C0:CA:25:F9:58:CC:11:14:E0:3A:6E:C3:58:84:9E:BF:52"}}},"request":{"raw":"GET /external-embedding/embed-widget-market-overview.html 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://besttrader.live/\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 403 \r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: application/xml\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1837468\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 3000\r\ncache-control: no-cache\r\nx-amz-request-id: VVQDMCDH6GAE1XAS\r\nx-amz-id-2: RSdbDgwEpyNaytlIOLvu3Hu59NtBcKRhKin/I7Omh+BIy/2Hz6tNnQzNHfM6LygKckWUPxXaOzU=\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 403\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncontent-security-policy: default-src 'none'\r\ncdn-cachedat: 07/27/2026 04:24:16\r\ncdn-status: 403\r\ncdn-requesttime: 0\r\ncdn-requestid: 3710c2568365666aeb40f664bb487bb7\r\ncdn-cache: MISS\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"403","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":0,"size_decoded":0,"mime_type":"application/xml","magic":"","md5":"d41d8cd98f00b204e9800998ecf8427e","sha1":"da39a3ee5e6b4b0d3255bfef95601890afd80709","sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","sha512":"cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e","ssdeep":"","tlshash":"","first_seen":"0001-01-01T00:00:00Z","last_seen":"2026-07-27T07:04:52.530819Z","times_seen":17558191,"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":"besttrader.live/demo/jquery.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/demo/index.html","date":"2026-07-27T04:24:16.849Z","timestamp":1785126256849,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /demo/jquery.js HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/demo/index.html\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: W/\"65211e70-413ba\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":267194,"size_decoded":74168,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text","md5":"46836bbc603c9565b5cc061100ccbac8","sha1":"38e82b4f24bf9f7e678a1d69a4e635363ce711ab","sha256":"d7a71d3dd740e95755227ba6446a3a21b8af6c4444f29ec2411dc7cd306e10b0","sha512":"5816dd29029e21015aaead61acec4d2ff827a744ea876e5f9f4cf75f5a68f9e8fc8ae1e11dda7a4a1f65fad8211b0e4bd5bb2fb738deb922ac2fcd115b75dd63","ssdeep":"6144:otah6/m+TCtrlTzcvkv2YmDezK8gB7arFy0GPL/g+71FIPfDTAAI1+V1:xVv2YmDQysFyCAsPfnAAIkV1","tlshash":"6144b5d8f78d112e423231aaac2f12cdb77dd171560458aebd4d597c24a083d82faf7a","first_seen":"2023-03-07T12:07:50Z","last_seen":"2026-07-27T04:25:12.783406Z","times_seen":387,"resource_available":true,"data":"LyohCiAqIGpRdWVyeSBKYXZhU2NyaXB0IExpYnJhcnkgdjMuMS4xCiAqIGh0dHBzOi8vanF1ZXJ5LmNvbS8KICoKICogSW5jbHVkZXMgU2l6emxlLmpzCiAqIGh0dHBzOi8vc2l6emxlanMuY29tLwogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UKICogaHR0cHM6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICoKICogRGF0ZTogMjAxNi0wOS0yMlQyMjozMFoKICovCiggZnVuY3Rpb24oIGdsb2JhbCwgZmFjdG9yeSApIHsKCgkidXNlIHN0cmljdCI7CgoJaWYgKCB0eXBlb2YgbW9kdWxlID09PSAib2JqZWN0IiAmJiB0eXBlb2YgbW9kdWxlLmV4cG9ydHMgPT09ICJvYmplY3QiICkgewoKCQkvLyBGb3IgQ29tbW9uSlMgYW5kIENvbW1vbkpTLWxpa2UgZW52aXJvbm1lbnRzIHdoZXJlIGEgcHJvcGVyIGB3aW5kb3dgCgkJLy8gaXMgcHJlc2VudCwgZXhlY3V0ZSB0aGUgZmFjdG9yeSBhbmQgZ2V0IGpRdWVyeS4KCQkvLyBGb3IgZW52aXJvbm1lbnRzIHRoYXQgZG8gbm90IGhhdmUgYSBgd2luZG93YCB3aXRoIGEgYGRvY3VtZW50YAoJCS8vIChzdWNoIGFzIE5vZGUuanMpLCBleHBvc2UgYSBmYWN0b3J5IGFzIG1vZHVsZS5leHBvcnRzLgoJCS8vIFRoaXMgYWNjZW50dWF0ZXMgdGhlIG5lZWQgZm9yIHRoZSBjcmVhdGlvbiBvZiBhIHJlYWwgYHdpbmRvd2AuCgkJLy8gZS5nLiB2YXIgalF1ZXJ5ID0gcmVxdWlyZSgianF1ZXJ5Iikod2luZG93KTsKCQkvLyBTZWUgdGlja2V0ICMxNDU0OSBmb3IgbW9yZSBpbmZvLgoJCW1vZHVsZS5leHBvcnRzID0gZ2xvYmFsLmRvY3VtZW50ID8KCQkJZmFjdG9yeSggZ2xvYmFsLCB0cnVlICkgOgoJCQlmdW5jdGlvbiggdyApIHsKCQkJCWlmICggIXcuZG9jdW1lbnQgKSB7CgkJCQkJdGhyb3cgbmV3IEVycm9yKCAialF1ZXJ5IHJlcXVpcmVzIGEgd2luZG93IHdpdGggYSBkb2N1bWVudCIgKTsKCQkJCX0KCQkJCXJldHVybiBmYWN0b3J5KCB3ICk7CgkJCX07Cgl9IGVsc2UgewoJCWZhY3RvcnkoIGdsb2JhbCApOwoJfQoKLy8gUGFzcyB0aGlzIGlmIHdpbmRvdyBpcyBub3QgZGVmaW5lZCB5ZXQKfSApKCB0eXBlb2Ygd2luZG93ICE9PSAidW5kZWZpbmVkIiA/IHdpbmRvdyA6IHRoaXMsIGZ1bmN0aW9uKCB3aW5kb3csIG5vR2xvYmFsICkgewoKLy8gRWRnZSA8PSAxMiAtIDEzKywgRmlyZWZveCA8PTE4IC0gNDUrLCBJRSAxMCAtIDExLCBTYWZhcmkgNS4xIC0gOSssIGlPUyA2IC0gOS4xCi8vIHRocm93IGV4Y2VwdGlvbnMgd2hlbiBub24tc3RyaWN0IGNvZGUgKGUuZy4sIEFTUC5ORVQgNC41KSBhY2Nlc3NlcyBzdHJpY3QgbW9kZQovLyBhcmd1bWVudHMuY2FsbGVlLmNhbGxlciAodHJhYy0xMzMzNSkuIEJ1dCBhcyBvZiBqUXVlcnkgMy4wICgyMDE2KSwgc3RyaWN0IG1vZGUgc2hvdWxkIGJlIGNvbW1vbgovLyBlbm91Z2ggdGhhdCBhbGwgc3VjaCBhdHRlbXB0cyBhcmUgZ3VhcmRlZCBpbiBhIHRyeSBibG9jay4KInVzZSBzdHJpY3QiOwoKdmFyIGFyciA9IFtdOwoKdmFyIGRvY3VtZW50ID0gd2luZG93LmRvY3VtZW50OwoKdmFyIGdldFByb3RvID0gT2JqZWN0LmdldFByb3RvdHlwZU9mOwoKdmFyIHNsaWNlID0gYXJyLnNsaWNlOwoKdmFyIGNvbmNhdCA9IGFyci5jb25jYXQ7Cgp2YXIgcHVzaCA9IGFyci5wdXNoOwoKdmFyIGluZGV4T2YgPSBhcnIuaW5kZXhPZjsKCnZhciBjbGFzczJ0eXBlID0ge307Cgp2YXIgdG9TdHJpbmcgPSBjbGFzczJ0eXBlLnRvU3RyaW5nOwoKdmFyIGhhc093biA9IGNsYXNzMnR5cGUuaGFzT3duUHJvcGVydHk7Cgp2YXIgZm5Ub1N0cmluZyA9IGhhc093bi50b1N0cmluZzsKCnZhciBPYmplY3RGdW5jdGlvblN0cmluZyA9IGZuVG9TdHJpbmcuY2FsbCggT2JqZWN0ICk7Cgp2YXIgc3VwcG9ydCA9IHt9OwoKCgoJZnVuY3Rpb24gRE9NRXZhbCggY29kZSwgZG9jICkgewoJCWRvYyA9IGRvYyB8fCBkb2N1bWVudDsKCgkJdmFyIHNjcmlwdCA9IGRvYy5jcmVhdGVFbGVtZW50KCAic2NyaXB0IiApOwoKCQlzY3JpcHQudGV4dCA9IGNvZGU7CgkJZG9jLmhlYWQuYXBwZW5kQ2hpbGQoIHNjcmlwdCApLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoIHNjcmlwdCApOwoJfQovKiBnbG9iYWwgU3ltYm9sICovCi8vIERlZmluaW5nIHRoaXMgZ2xvYmFsIGluIC5lc2xpbnRyYy5qc29uIHdvdWxkIGNyZWF0ZSBhIGRhbmdlciBvZiB1c2luZyB0aGUgZ2xvYmFsCi8vIHVuZ3VhcmRlZCBpbiBhbm90aGVyIHBsYWNlLCBpdCBzZWVtcyBzYWZlciB0byBkZWZpbmUgZ2xvYmFsIG9ubHkgZm9yIHRoaXMgbW9kdWxlCgoKCnZhcgoJdmVyc2lvbiA9ICIzLjEuMSIsCgoJLy8gRGVmaW5lIGEgbG9jYWwgY29weSBvZiBqUXVlcnkKCWpRdWVyeSA9IGZ1bmN0aW9uKCBzZWxlY3RvciwgY29udGV4dCApIHsKCgkJLy8gVGhlIGpRdWVyeSBvYmplY3QgaXMgYWN0dWFsbHkganVzdCB0aGUgaW5pdCBjb25zdHJ1Y3RvciAnZW5oYW5jZWQnCgkJLy8gTmVlZCBpbml0IGlmIGpRdWVyeSBpcyBjYWxsZWQgKGp1c3QgYWxsb3cgZXJyb3IgdG8gYmUgdGhyb3duIGlmIG5vdCBpbmNsdWRlZCkKCQlyZXR1cm4gbmV3IGpRdWVyeS5mbi5pbml0KCBzZWxlY3RvciwgY29udGV4dCApOwoJfSwKCgkvLyBTdXBwb3J0OiBBbmRyb2lkIDw9NC4wIG9ubHkKCS8vIE1ha2Ugc3VyZSB3ZSB0cmltIEJPTSBhbmQgTkJTUAoJcnRyaW0gPSAvXltcc1x1RkVGRlx4QTBdK3xbXHNcdUZFRkZceEEwXSskL2csCgoJLy8gTWF0Y2hlcyBkYXNoZWQgc3RyaW5nIGZvciBjYW1lbGl6aW5nCglybXNQcmVmaXggPSAvXi1tcy0vLAoJcmRhc2hBbHBoYSA9IC8tKFthLXpdKS9nLAoKCS8vIFVzZWQgYnkgalF1ZXJ5LmNhbWVsQ2FzZSBhcyBjYWxsYmFjayB0byByZXBsYWNlKCkKCWZjYW1lbENhc2UgPSBmdW5jdGlvbiggYWxsLCBsZXR0ZXIgKSB7CgkJcmV0dXJuIGxldHRlci50b1VwcGVyQ2FzZSgpOwoJfTsKCmpRdWVyeS5mbiA9IGpRdWVyeS5wcm90b3R5cGUgPSB7CgoJLy8gVGhlIGN1cnJlbnQgdmVyc2lvbiBvZiBqUXVlcnkgYmVpbmcgdXNlZAoJanF1ZXJ5OiB2ZXJzaW9uLAoKCWNvbnN0cnVjdG9yOiBqUXVlcnksCgoJLy8gVGhlIGRlZmF1bHQgbGVuZ3RoIG9mIGEgalF1ZXJ5IG9iamVjdCBpcyAwCglsZW5ndGg6IDAsCgoJdG9BcnJheTogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHNsaWNlLmNhbGwoIHRoaXMgKTsKCX0sCgoJLy8gR2V0IHRoZSBOdGggZWxlbWVudCBpbiB0aGUgbWF0Y2hlZCBlbGVtZW50IHNldCBPUgoJLy8gR2V0IHRoZSB3aG9sZSBtYXRjaGVkIGVsZW1lbnQgc2V0IGFzIGEgY2xlYW4gYXJyYXkKCWdldDogZnVuY3Rpb24oIG51bSApIHsKCgkJLy8gUmV0dXJuIGFsbCB0aGUgZWxlbWVudHMgaW4gYSBjbGVhbiBhcnJheQoJCWlmICggbnVtID09IG51bGwgKSB7CgkJCXJldHVybiBzbGljZS5jYWxsKCB0aGlzICk7CgkJfQoKCQkvLyBSZXR1cm4ganVzdCB0aGUgb25lIGVsZW1lbnQgZnJvbSB0aGUgc2V0CgkJcmV0dXJuIG51bSA8IDAgPyB0aGlzWyBudW0gKyB0aGlzLmxlbmd0aCBdIDogdGhpc1sgbnVtIF07Cgl9LAoKCS8vIFRha2UgYW4gYXJyYXkgb2YgZWxlbWVudHMgYW5kIHB1c2ggaXQgb250byB0aGUgc3RhY2sKCS8vIChyZXR1cm5pbmcgdGhlIG5ldyBtYXRjaGVkIGVsZW1lbnQgc2V0KQoJcHVzaFN0YWNrOiBmdW5jdGlvbiggZWxlbXMgKSB7CgoJCS8vIEJ1aWxkIGEgbmV3IGpRdWVyeSBtYXRjaGVkIGVsZW1lbnQgc2V0CgkJdmFyIHJldCA9IGpRdWVyeS5tZXJnZSggdGhpcy5jb25zdHJ1Y3RvcigpLCBlbGVtcyApOwoKCQkvLyBBZGQgdGhlIG9sZCBvYmplY3Qgb250byB0aGUgc3RhY2sgKGFzIGEgcmVmZXJlbmNlKQoJCXJldC5wcmV2T2JqZWN0ID0gdGhpczsKCgkJLy8gUmV0dXJuIHRoZSBuZXdseS1mb3JtZWQgZWxlbWVudCBzZXQKCQlyZXR1cm4gcmV0OwoJfSwKCgkvLyBFeGVjdXRlIGEgY2FsbGJhY2sgZm9yIGV2ZXJ5IGVsZW1lbnQgaW4gdGhlIG1hdGNoZWQgc2V0LgoJZWFjaDogZnVuY3Rpb24oIGNhbGxiYWNrICkgewoJCXJldHVybiBqUXVlcnkuZWFjaCggdGhpcywgY2FsbGJhY2sgKTsKCX0sCgoJbWFwOiBmdW5jdGlvbiggY2FsbGJhY2sgKSB7CgkJcmV0dXJuIHRoaXMucHVzaFN0YWNrKCBqUXVlcnkubWFwKCB0aGlzLCBmdW5jdGlvbiggZWxlbSwgaSApIHsKCQkJcmV0dXJuIGNhbGxiYWNrLmNhbGwoIGVsZW0sIGksIGVsZW0gKTsKCQl9ICkgKTsKCX0sCgoJc2xpY2U6IGZ1bmN0aW9uKCkgewoJCXJldHVybiB0aGlzLnB1c2hTdGFjayggc2xpY2UuYXBwbHkoIHRoaXMsIGFyZ3VtZW50cyApICk7Cgl9LAoKCWZpcnN0OiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gdGhpcy5lcSggMCApOwoJfSwKCglsYXN0OiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gdGhpcy5lcSggLTEgKTsKCX0sCgoJZXE6IGZ1bmN0aW9uKCBpICkgewoJCXZhciBsZW4gPSB0aGlzLmxlbmd0aCwKCQkJaiA9ICtpICsgKCBpIDwgMCA/IGxlbiA6IDAgKTsKCQlyZXR1cm4gdGhpcy5wdXNoU3RhY2soIGogPj0gMCAmJiBqIDwgbGVuID8gWyB0aGlzWyBqIF0gXSA6IFtdICk7Cgl9LAoKCWVuZDogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMucHJldk9iamVjdCB8fCB0aGlzLmNvbnN0cnVjdG9yKCk7Cgl9LAoKCS8vIEZvciBpbnRlcm5hbCB1c2Ugb25seS4KCS8vIEJlaGF2ZXMgbGlrZSBhbiBBcnJheSdzIG1ldGhvZCwgbm90IGxpa2UgYSBqUXVlcnkgbWV0aG9kLgoJcHVzaDogcHVzaCwKCXNvcnQ6IGFyci5zb3J0LAoJc3BsaWNlOiBhcnIuc3BsaWNlCn07CgpqUXVlcnkuZXh0ZW5kID0galF1ZXJ5LmZuLmV4dGVuZCA9IGZ1bmN0aW9uKCkgewoJdmFyIG9wdGlvbnMsIG5hbWUsIHNyYywgY29weSwgY29weUlzQXJyYXksIGNsb25lLAoJCXRhcmdldCA9IGFyZ3VtZW50c1sgMCBdIHx8IHt9LAoJCWkgPSAxLAoJCWxlbmd0aCA9IGFyZ3VtZW50cy5sZW5ndGgsCgkJZGVlcCA9IGZhbHNlOwoKCS8vIEhhbmRsZSBhIGRlZXAgY29weSBzaXR1YXRpb24KCWlmICggdHlwZW9mIHRhcmdldCA9PT0gImJvb2xlYW4iICkgewoJCWRlZXAgPSB0YXJnZXQ7CgoJCS8vIFNraXAgdGhlIGJvb2xlYW4gYW5kIHRoZSB0YXJnZXQKCQl0YXJnZXQgPSBhcmd1bWVudHNbIGkgXSB8fCB7fTsKCQlpKys7Cgl9CgoJLy8gSGFuZGxlIGNhc2Ugd2hlbiB0YXJnZXQgaXMgYSBzdHJpbmcgb3Igc29tZXRoaW5nIChwb3NzaWJsZSBpbiBkZWVwIGNvcHkpCglpZiAoIHR5cGVvZiB0YXJnZXQgIT09ICJvYmplY3QiICYmICFqUXVlcnkuaXNGdW5jdGlvbiggdGFyZ2V0ICkgKSB7CgkJdGFyZ2V0ID0ge307Cgl9CgoJLy8gRXh0ZW5kIGpRdWVyeSBpdHNlbGYgaWYgb25seSBvbmUgYXJndW1lbnQgaXMgcGFzc2VkCglpZiAoIGkgPT09IGxlbmd0aCApIHsKCQl0YXJnZXQgPSB0aGlzOwoJCWktLTsKCX0KCglmb3IgKCA7IGkgPCBsZW5ndGg7IGkrKyApIHsKCgkJLy8gT25seSBkZWFsIHdpdGggbm9uLW51bGwvdW5kZWZpbmVkIHZhbHVlcwoJCWlmICggKCBvcHRpb25zID0gYXJndW1lbnRzWyBpIF0gKSAhPSBudWxsICkgewoKCQkJLy8gRXh0ZW5kIHRoZSBiYXNlIG9iamVjdAoJCQlmb3IgKCBuYW1lIGluIG9wdGlvbnMgKSB7CgkJCQlzcmMgPSB0YXJnZXRbIG5hbWUgXTsKCQkJCWNvcHkgPSBvcHRpb25zWyBuYW1lIF07CgoJCQkJLy8gUHJldmVudCBuZXZlci1lbmRpbmcgbG9vcAoJCQkJaWYgKCB0YXJnZXQgPT09IGNvcHkgKSB7CgkJCQkJY29udGludWU7CgkJCQl9CgoJCQkJLy8gUmVjdXJzZSBpZiB3ZSdyZSBtZXJnaW5nIHBsYWluIG9iamVjdHMgb3IgYXJyYXlzCgkJCQlpZiAoIGRlZXAgJiYgY29weSAmJiAoIGpRdWVyeS5pc1BsYWluT2JqZWN0KCBjb3B5ICkgfHwKCQkJCQkoIGNvcHlJc0FycmF5ID0galF1ZXJ5LmlzQXJyYXkoIGNvcHkgKSApICkgKSB7CgoJCQkJCWlmICggY29weUlzQXJyYXkgKSB7CgkJCQkJCWNvcHlJc0FycmF5ID0gZmFsc2U7CgkJCQkJCWNsb25lID0gc3JjICYmIGpRdWVyeS5pc0FycmF5KCBzcmMgKSA/IHNyYyA6IFtdOwoKCQkJCQl9IGVsc2UgewoJCQkJCQljbG9uZSA9IHNyYyAmJiBqUXVlcnkuaXNQbGFpbk9iamVjdCggc3JjICkgPyBzcmMgOiB7fTsKCQkJCQl9CgoJCQkJCS8vIE5ldmVyIG1vdmUgb3JpZ2luYWwgb2JqZWN0cywgY2xvbmUgdGhlbQoJCQkJCXRhcmdldFsgbmFtZSBdID0galF1ZXJ5LmV4dGVuZCggZGVlcCwgY2xvbmUsIGNvcHkgKTsKCgkJCQkvLyBEb24ndCBicmluZyBpbiB1bmRlZmluZWQgdmFsdWVzCgkJCQl9IGVsc2UgaWYgKCBjb3B5ICE9PSB1bmRlZmluZWQgKSB7CgkJCQkJdGFyZ2V0WyBuYW1lIF0gPSBjb3B5OwoJCQkJfQoJCQl9CgkJfQoJfQoKCS8vIFJldHVybiB0aGUgbW9kaWZpZWQgb2JqZWN0CglyZXR1cm4gdGFyZ2V0Owp9OwoKalF1ZXJ5LmV4dGVuZCggewoKCS8vIFVuaXF1ZSBmb3IgZWFjaCBjb3B5IG9mIGpRdWVyeSBvbiB0aGUgcGFnZQoJZXhwYW5kbzogImpRdWVyeSIgKyAoIHZlcnNpb24gKyBNYXRoLnJhbmRvbSgpICkucmVwbGFjZSggL1xEL2csICIiICksCgoJLy8gQXNzdW1lIGpRdWVyeSBpcyByZWFkeSB3aXRob3V0IHRoZSByZWFkeSBtb2R1bGUKCWlzUmVhZHk6IHRydWUsCgoJZXJyb3I6IGZ1bmN0aW9uKCBtc2cgKSB7CgkJdGhyb3cgbmV3IEVycm9yKCBtc2cgKTsKCX0sCgoJbm9vcDogZnVuY3Rpb24oKSB7fSwKCglpc0Z1bmN0aW9uOiBmdW5jdGlvbiggb2JqICkgewoJCXJldHVybiBqUXVlcnkudHlwZSggb2JqICkgPT09ICJmdW5jdGlvbiI7Cgl9LAoKCWlzQXJyYXk6IEFycmF5LmlzQXJyYXksCgoJaXNXaW5kb3c6IGZ1bmN0aW9uKCBvYmogKSB7CgkJcmV0dXJuIG9iaiAhPSBudWxsICYmIG9iaiA9PT0gb2JqLndpbmRvdzsKCX0sCgoJaXNOdW1lcmljOiBmdW5jdGlvbiggb2JqICkgewoKCQkvLyBBcyBvZiBqUXVlcnkgMy4wLCBpc051bWVyaWMgaXMgbGltaXRlZCB0bwoJCS8vIHN0cmluZ3MgYW5kIG51bWJlcnMgKHByaW1pdGl2ZXMgb3Igb2JqZWN0cykKCQkvLyB0aGF0IGNhbiBiZSBjb2VyY2VkIHRvIGZpbml0ZSBudW1iZXJzIChnaC0yNjYyKQoJCXZhciB0eXBlID0galF1ZXJ5LnR5cGUoIG9iaiApOwoJCXJldHVybiAoIHR5cGUgPT09ICJudW1iZXIiIHx8IHR5cGUgPT09ICJzdHJpbmciICkgJiYKCgkJCS8vIHBhcnNlRmxvYXQgTmFOcyBudW1lcmljLWNhc3QgZmFsc2UgcG9zaXRpdmVzICgiIikKCQkJLy8gLi4uYnV0IG1pc2ludGVycHJldHMgbGVhZGluZy1udW1iZXIgc3RyaW5ncywgcGFydGljdWxhcmx5IGhleCBsaXRlcmFscyAoIjB4Li4uIikKCQkJLy8gc3VidHJhY3Rpb24gZm9yY2VzIGluZmluaXRpZXMgdG8gTmFOCgkJCSFpc05hTiggb2JqIC0gcGFyc2VGbG9hdCggb2JqICkgKTsKCX0sCgoJaXNQbGFpbk9iamVjdDogZnVuY3Rpb24oIG9iaiApIHsKCQl2YXIgcHJvdG8sIEN0b3I7CgoJCS8vIERldGVjdCBvYnZpb3VzIG5lZ2F0aXZlcwoJCS8vIFVzZSB0b1N0cmluZyBpbnN0ZWFkIG9mIGpRdWVyeS50eXBlIHRvIGNhdGNoIGhvc3Qgb2JqZWN0cwoJCWlmICggIW9iaiB8fCB0b1N0cmluZy5jYWxsKCBvYmogKSAhPT0gIltvYmplY3QgT2JqZWN0XSIgKSB7CgkJCXJldHVybiBmYWxzZTsKCQl9CgoJCXByb3RvID0gZ2V0UHJvdG8oIG9iaiApOwoKCQkvLyBPYmplY3RzIHdpdGggbm8gcHJvdG90eXBlIChlLmcuLCBgT2JqZWN0LmNyZWF0ZSggbnVsbCApYCkgYXJlIHBsYWluCgkJaWYgKCAhcHJvdG8gKSB7CgkJCXJldHVybiB0cnVlOwoJCX0KCgkJLy8gT2JqZWN0cyB3aXRoIHByb3RvdHlwZSBhcmUgcGxhaW4gaWZmIHRoZXkgd2VyZSBjb25zdHJ1Y3RlZCBieSBhIGdsb2JhbCBPYmplY3QgZnVuY3Rpb24KCQlDdG9yID0gaGFzT3duLmNhbGwoIHByb3RvLCAiY29uc3RydWN0b3IiICkgJiYgcHJvdG8uY29uc3RydWN0b3I7CgkJcmV0dXJuIHR5cGVvZiBDdG9yID09PSAiZnVuY3Rpb24iICYmIGZuVG9TdHJpbmcuY2FsbCggQ3RvciApID09PSBPYmplY3RGdW5jdGlvblN0cmluZzsKCX0sCgoJaXNFbXB0eU9iamVjdDogZnVuY3Rpb24oIG9iaiApIHsKCgkJLyogZXNsaW50LWRpc2FibGUgbm8tdW51c2VkLXZhcnMgKi8KCQkvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2VzbGludC9lc2xpbnQvaXNzdWVzLzYxMjUKCQl2YXIgbmFtZTsKCgkJZm9yICggbmFtZSBpbiBvYmogKSB7CgkJCXJldHVybiBmYWxzZTsKCQl9CgkJcmV0dXJuIHRydWU7Cgl9LAoKCXR5cGU6IGZ1bmN0aW9uKCBvYmogKSB7CgkJaWYgKCBvYmogPT0gbnVsbCApIHsKCQkJcmV0dXJuIG9iaiArICIiOwoJCX0KCgkJLy8gU3VwcG9ydDogQW5kcm9pZCA8PTIuMyBvbmx5IChmdW5jdGlvbmlzaCBSZWdFeHApCgkJcmV0dXJuIHR5cGVvZiBvYmogPT09ICJvYmplY3QiIHx8IHR5cGVvZiBvYmogPT09ICJmdW5jdGlvbiIgPwoJCQljbGFzczJ0eXBlWyB0b1N0cmluZy5jYWxsKCBvYmogKSBdIHx8ICJvYmplY3QiIDoKCQkJdHlwZW9mIG9iajsKCX0sCgoJLy8gRXZhbHVhdGVzIGEgc2NyaXB0IGluIGEgZ2xvYmFsIGNvbnRleHQKCWdsb2JhbEV2YWw6IGZ1bmN0aW9uKCBjb2RlICkgewoJCURPTUV2YWwoIGNvZGUgKTsKCX0sCgoJLy8gQ29udmVydCBkYXNoZWQgdG8gY2FtZWxDYXNlOyB1c2VkIGJ5IHRoZSBjc3MgYW5kIGRhdGEgbW9kdWxlcwoJLy8gU3VwcG9ydDogSUUgPD05IC0gMTEsIEVkZ2UgMTIgLSAxMwoJLy8gTWljcm9zb2Z0IGZvcmdvdCB0byBodW1wIHRoZWlyIHZlbmRvciBwcmVmaXggKCM5NTcyKQoJY2FtZWxDYXNlOiBmdW5jdGlvbiggc3RyaW5nICkgewoJCXJldHVybiBzdHJpbmcucmVwbGFjZSggcm1zUHJlZml4LCAibXMtIiApLnJlcGxhY2UoIHJkYXNoQWxwaGEsIGZjYW1lbENhc2UgKTsKCX0sCgoJbm9kZU5hbWU6IGZ1bmN0aW9uKCBlbGVtLCBuYW1lICkgewoJCXJldHVybiBlbGVtLm5vZGVOYW1lICYmIGVsZW0ubm9kZU5hbWUudG9Mb3dlckNhc2UoKSA9PT0gbmFtZS50b0xvd2VyQ2FzZSgpOwoJfSwKCgllYWNoOiBmdW5jdGlvbiggb2JqLCBjYWxsYmFjayApIHsKCQl2YXIgbGVuZ3RoLCBpID0gMDsKCgkJaWYgKCBpc0FycmF5TGlrZSggb2JqICkgKSB7CgkJCWxlbmd0aCA9IG9iai5sZW5ndGg7CgkJCWZvciAoIDsgaSA8IGxlbmd0aDsgaSsrICkgewoJCQkJaWYgKCBjYWxsYmFjay5jYWxsKCBvYmpbIGkgXSwgaSwgb2JqWyBpIF0gKSA9PT0gZmFsc2UgKSB7CgkJCQkJYnJlYWs7CgkJCQl9CgkJCX0KCQl9IGVsc2UgewoJCQlmb3IgKCBpIGluIG9iaiApIHsKCQkJCWlmICggY2FsbGJhY2suY2FsbCggb2JqWyBpIF0sIGksIG9ialsgaSBdICkgPT09IGZhbHNlICkgewoJCQkJCWJyZWFrOwoJCQkJfQoJCQl9CgkJfQoKCQlyZXR1cm4gb2JqOwoJfSwKCgkvLyBTdXBwb3J0OiBBbmRyb2lkIDw9NC4wIG9ubHkKCXRyaW06IGZ1bmN0aW9uKCB0ZXh0ICkgewoJCXJldHVybiB0ZXh0ID09IG51bGwgPwoJCQkiIiA6CgkJCSggdGV4dCArICIiICkucmVwbGFjZSggcnRyaW0sICIiICk7Cgl9LAoKCS8vIHJlc3VsdHMgaXMgZm9yIGludGVybmFsIHVzYWdlIG9ubHkKCW1ha2VBcnJheTogZnVuY3Rpb24oIGFyciwgcmVzdWx0cyApIHsKCQl2YXIgcmV0ID0gcmVzdWx0cyB8fCBbXTsKCgkJaWYgKCBhcnIgIT0gbnVsbCApIHsKCQkJaWYgKCBpc0FycmF5TGlrZSggT2JqZWN0KCBhcnIgKSApICkgewoJCQkJalF1ZXJ5Lm1lcmdlKCByZXQsCgkJCQkJdHlwZW9mIGFyciA9PT0gInN0cmluZyIgPwoJCQkJCVsgYXJyIF0gOiBhcnIKCQkJCSk7CgkJCX0gZWxzZSB7CgkJCQlwdXNoLmNhbGwoIHJldCwgYXJyICk7CgkJCX0KCQl9CgoJCXJldHVybiByZXQ7Cgl9LAoKCWluQXJyYXk6IGZ1bmN0aW9uKCBlbGVtLCBhcnIsIGkgKSB7CgkJcmV0dXJuIGFyciA9PSBudWxsID8gLTEgOiBpbmRleE9mLmNhbGwoIGFyciwgZWxlbSwgaSApOwoJfSwKCgkvLyBTdXBwb3J0OiBBbmRyb2lkIDw9NC4wIG9ubHksIFBoYW50b21KUyAxIG9ubHkKCS8vIHB1c2guYXBwbHkoXywgYXJyYXlsaWtlKSB0aHJvd3Mgb24gYW5jaWVudCBXZWJLaXQKCW1lcmdlOiBmdW5jdGlvbiggZmlyc3QsIHNlY29uZCApIHsKCQl2YXIgbGVuID0gK3NlY29uZC5sZW5ndGgsCgkJCWogPSAwLAoJCQlpID0gZmlyc3QubGVuZ3RoOwoKCQlmb3IgKCA7IGogPCBsZW47IGorKyApIHsKCQkJZmlyc3RbIGkrKyBdID0gc2Vjb25kWyBqIF07CgkJfQoKCQlmaXJzdC5sZW5ndGggPSBpOwoKCQlyZXR1cm4gZmlyc3Q7Cgl9LAoKCWdyZXA6IGZ1bmN0aW9uKCBlbGVtcywgY2FsbGJhY2ssIGludmVydCApIHsKCQl2YXIgY2FsbGJhY2tJbnZlcnNlLAoJCQltYXRjaGVzID0gW10sCgkJCWkgPSAwLAoJCQlsZW5ndGggPSBlbGVtcy5sZW5ndGgsCgkJCWNhbGxiYWNrRXhwZWN0ID0gIWludmVydDsKCgkJLy8gR28gdGhyb3VnaCB0aGUgYXJyYXksIG9ubHkgc2F2aW5nIHRoZSBpdGVtcwoJCS8vIHRoYXQgcGFzcyB0aGUgdmFsaWRhdG9yIGZ1bmN0aW9uCgkJZm9yICggOyBpIDwgbGVuZ3RoOyBpKysgKSB7CgkJCWNhbGxiYWNrSW52ZXJzZSA9ICFjYWxsYmFjayggZWxlbXNbIGkgXSwgaSApOwoJCQlpZiAoIGNhbGxiYWNrSW52ZXJzZSAhPT0gY2FsbGJhY2tFeHBlY3QgKSB7CgkJCQltYXRjaGVzLnB1c2goIGVsZW1zWyBpIF0gKTsKCQkJfQoJCX0KCgkJcmV0dXJuIG1hdGNoZXM7Cgl9LAoKCS8vIGFyZyBpcyBmb3IgaW50ZXJuYWwgdXNhZ2Ugb25seQoJbWFwOiBmdW5jdGlvbiggZWxlbXMsIGNhbGxiYWNrLCBhcmcgKSB7CgkJdmFyIGxlbmd0aCwgdmFsdWUsCgkJCWkgPSAwLAoJCQlyZXQgPSBbXTsKCgkJLy8gR28gdGhyb3VnaCB0aGUgYXJyYXksIHRyYW5zbGF0aW5nIGVhY2ggb2YgdGhlIGl0ZW1zIHRvIHRoZWlyIG5ldyB2YWx1ZXMKCQlpZiAoIGlzQXJyYXlMaWtlKCBlbGVtcyApICkgewoJCQlsZW5ndGggPSBlbGVtcy5sZW5ndGg7CgkJCWZvciAoIDsgaSA8IGxlbmd0aDsgaSsrICkgewoJCQkJdmFsdWUgPSBjYWxsYmFjayggZWxlbXNbIGkgXSwgaSwgYXJnICk7CgoJCQkJaWYgKCB2YWx1ZSAhPSBudWxsICkgewoJCQkJCXJldC5wdXNoKCB2YWx1ZSApOwoJCQkJfQoJCQl9CgoJCS8vIEdvIHRocm91Z2ggZXZlcnkga2V5IG9uIHRoZSBvYmplY3QsCgkJfSBlbHNlIHsKCQkJZm9yICggaSBpbiBlbGVtcyApIHsKCQkJCXZhbHVlID0gY2FsbGJhY2soIGVsZW1zWyBpIF0sIGksIGFyZyApOwoKCQkJCWlmICggdmFsdWUgIT0gbnVsbCApIHsKCQkJCQlyZXQucHVzaCggdmFsdWUgKTsKCQkJCX0KCQkJfQoJCX0KCgkJLy8gRmxhdHRlbiBhbnkgbmVzdGVkIGFycmF5cwoJCXJldHVybiBjb25jYXQuYXBwbHkoIFtdLCByZXQgKTsKCX0sCgoJLy8gQSBnbG9iYWwgR1VJRCBjb3VudGVyIGZvciBvYmplY3RzCglndWlkOiAxLAoKCS8vIEJpbmQgYSBmdW5jdGlvbiB0byBhIGNvbnRleHQsIG9wdGlvbmFsbHkgcGFydGlhbGx5IGFwcGx5aW5nIGFueQoJLy8gYXJndW1lbnRzLgoJcHJveHk6IGZ1bmN0aW9uKCBmbiwgY29udGV4dCApIHsKCQl2YXIgdG1wLCBhcmdzLCBwcm94eTsKCgkJaWYgKCB0eXBlb2YgY29udGV4dCA9PT0gInN0cmluZyIgKSB7CgkJCXRtcCA9IGZuWyBjb250ZXh0IF07CgkJCWNvbnRleHQgPSBmbjsKCQkJZm4gPSB0bXA7CgkJfQoKCQkvLyBRdWljayBjaGVjayB0byBkZXRlcm1pbmUgaWYgdGFyZ2V0IGlzIGNhbGxhYmxlLCBpbiB0aGUgc3BlYwoJCS8vIHRoaXMgdGhyb3dzIGEgVHlwZUVycm9yLCBidXQgd2Ugd2lsbCBqdXN0IHJldHVybiB1bmRlZmluZWQuCgkJaWYgKCAhalF1ZXJ5LmlzRnVuY3Rpb24oIGZuICkgKSB7CgkJCXJldHVybiB1bmRlZmluZWQ7CgkJfQoKCQkvLyBTaW11bGF0ZWQgYmluZAoJCWFyZ3MgPSBzbGljZS5jYWxsKCBhcmd1bWVudHMsIDIgKTsKCQlwcm94eSA9IGZ1bmN0aW9uKCkgewoJCQlyZXR1cm4gZm4uYXBwbHkoIGNvbnRleHQgfHwgdGhpcywgYXJncy5jb25jYXQoIHNsaWNlLmNhbGwoIGFyZ3VtZW50cyApICkgKTsKCQl9OwoKCQkvLyBTZXQgdGhlIGd1aWQgb2YgdW5pcXVlIGhhbmRsZXIgdG8gdGhlIHNhbWUgb2Ygb3JpZ2luYWwgaGFuZGxlciwgc28gaXQgY2FuIGJlIHJlbW92ZWQKCQlwcm94eS5ndWlkID0gZm4uZ3VpZCA9IGZuLmd1aWQgfHwgalF1ZXJ5Lmd1aWQrKzsKCgkJcmV0dXJuIHByb3h5OwoJfSwKCglub3c6IERhdGUubm93LAoKCS8vIGpRdWVyeS5zdXBwb3J0IGlzIG5vdCB1c2VkIGluIENvcmUgYnV0IG90aGVyIHByb2plY3RzIGF0dGFjaCB0aGVpcgoJLy8gcHJvcGVydGllcyB0byBpdCBzbyBpdCBuZWVkcyB0byBleGlzdC4KCXN1cHBvcnQ6IHN1cHBvcnQKfSApOwoKaWYgKCB0eXBlb2YgU3ltYm9sID09PSAiZnVuY3Rpb24iICkgewoJalF1ZXJ5LmZuWyBTeW1ib2wuaXRlcmF0b3IgXSA9IGFyclsgU3ltYm9sLml0ZXJhdG9yIF07Cn0KCi8vIFBvcHVsYXRlIHRoZSBjbGFzczJ0eXBlIG1hcApqUXVlcnkuZWFjaCggIkJvb2xlYW4gTnVtYmVyIFN0cmluZyBGdW5jdGlvbiBBcnJheSBEYXRlIFJlZ0V4cCBPYmplY3QgRXJyb3IgU3ltYm9sIi5zcGxpdCggIiAiICksCmZ1bmN0aW9uKCBpLCBuYW1lICkgewoJY2xhc3MydHlwZVsgIltvYmplY3QgIiArIG5hbWUgKyAiXSIgXSA9IG5hbWUudG9Mb3dlckNhc2UoKTsKfSApOwoKZnVuY3Rpb24gaXNBcnJheUxpa2UoIG9iaiApIHsKCgkvLyBTdXBwb3J0OiByZWFsIGlPUyA4LjIgb25seSAobm90IHJlcHJvZHVjaWJsZSBpbiBzaW11bGF0b3IpCgkvLyBgaW5gIGNoZWNrIHVzZWQgdG8gcHJldmVudCBKSVQgZXJyb3IgKGdoLTIxNDUpCgkvLyBoYXNPd24gaXNuJ3QgdXNlZCBoZXJlIGR1ZSB0byBmYWxzZSBuZWdhdGl2ZXMKCS8vIHJlZ2FyZGluZyBOb2RlbGlzdCBsZW5ndGggaW4gSUUKCXZhciBsZW5ndGggPSAhIW9iaiAmJiAibGVuZ3RoIiBpbiBvYmogJiYgb2JqLmxlbmd0aCwKCQl0eXBlID0galF1ZXJ5LnR5cGUoIG9iaiApOwoKCWlmICggdHlwZSA9PT0gImZ1bmN0aW9uIiB8fCBqUXVlcnkuaXNXaW5kb3coIG9iaiApICkgewoJCXJldHVybiBmYWxzZTsKCX0KCglyZXR1cm4gdHlwZSA9PT0gImFycmF5IiB8fCBsZW5ndGggPT09IDAgfHwKCQl0eXBlb2YgbGVuZ3RoID09PSAibnVtYmVyIiAmJiBsZW5ndGggPiAwICYmICggbGVuZ3RoIC0gMSApIGluIG9iajsKfQp2YXIgU2l6emxlID0KLyohCiAqIFNpenpsZSBDU1MgU2VsZWN0b3IgRW5naW5lIHYyLjMuMwogKiBodHRwczovL3NpenpsZWpzLmNvbS8KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICoKICogRGF0ZTogMjAxNi0wOC0wOAogKi8KKGZ1bmN0aW9uKCB3aW5kb3cgKSB7Cgp2YXIgaSwKCXN1cHBvcnQsCglFeHByLAoJZ2V0VGV4dCwKCWlzWE1MLAoJdG9rZW5pemUsCgljb21waWxlLAoJc2VsZWN0LAoJb3V0ZXJtb3N0Q29udGV4dCwKCXNvcnRJbnB1dCwKCWhhc0R1cGxpY2F0ZSwKCgkvLyBMb2NhbCBkb2N1bWVudCB2YXJzCglzZXREb2N1bWVudCwKCWRvY3VtZW50LAoJZG9jRWxlbSwKCWRvY3VtZW50SXNIVE1MLAoJcmJ1Z2d5UVNBLAoJcmJ1Z2d5TWF0Y2hlcywKCW1hdGNoZXMsCgljb250YWlucywKCgkvLyBJbnN0YW5jZS1zcGVjaWZpYyBkYXRhCglleHBhbmRvID0gInNpenpsZSIgKyAxICogbmV3IERhdGUoKSwKCXByZWZlcnJlZERvYyA9IHdpbmRvdy5kb2N1bWVudCwKCWRpcnJ1bnMgPSAwLAoJZG9uZSA9IDAsCgljbGFzc0NhY2hlID0gY3JlYXRlQ2FjaGUoKSwKCXRva2VuQ2FjaGUgPSBjcmVhdGVDYWNoZSgpLAoJY29tcGlsZXJDYWNoZSA9IGNyZWF0ZUNhY2hlKCksCglzb3J0T3JkZXIgPSBmdW5jdGlvbiggYSwgYiApIHsKCQlpZiAoIGEgPT09IGIgKSB7CgkJCWhhc0R1cGxpY2F0ZSA9IHRydWU7CgkJfQoJCXJldHVybiAwOwoJfSwKCgkvLyBJbnN0YW5jZSBtZXRob2RzCgloYXNPd24gPSAoe30pLmhhc093blByb3BlcnR5LAoJYXJyID0gW10sCglwb3AgPSBhcnIucG9wLAoJcHVzaF9uYXRpdmUgPSBhcnIucHVzaCwKCXB1c2ggPSBhcnIucHVzaCwKCXNsaWNlID0gYXJyLnNsaWNlLAoJLy8gVXNlIGEgc3RyaXBwZWQtZG93biBpbmRleE9mIGFzIGl0J3MgZmFzdGVyIHRoYW4gbmF0aXZlCgkvLyBodHRwczovL2pzcGVyZi5jb20vdGhvci1pbmRleG9mLXZzLWZvci81CglpbmRleE9mID0gZnVuY3Rpb24oIGxpc3QsIGVsZW0gKSB7CgkJdmFyIGkgPSAwLAoJCQlsZW4gPSBsaXN0Lmxlbmd0aDsKCQlmb3IgKCA7IGkgPCBsZW47IGkrKyApIHsKCQkJaWYgKCBsaXN0W2ldID09PSBlbGVtICkgewoJCQkJcmV0dXJuIGk7CgkJCX0KCQl9CgkJcmV0dXJuIC0xOwoJfSwKCglib29sZWFucyA9ICJjaGVja2VkfHNlbGVjdGVkfGFzeW5jfGF1dG9mb2N1c3xhdXRvcGxheXxjb250cm9sc3xkZWZlcnxkaXNhYmxlZHxoaWRkZW58aXNtYXB8bG9vcHxtdWx0aXBsZXxvcGVufHJlYWRvbmx5fHJlcXVpcmVkfHNjb3BlZCIsCgoJLy8gUmVndWxhciBleHByZXNzaW9ucwoKCS8vIGh0dHA6Ly93d3cudzMub3JnL1RSL2NzczMtc2VsZWN0b3JzLyN3aGl0ZXNwYWNlCgl3aGl0ZXNwYWNlID0gIltcXHgyMFxcdFxcclxcblxcZl0iLAoKCS8vIGh0dHA6Ly93d3cudzMub3JnL1RSL0NTUzIxL3N5bmRhdGEuaHRtbCN2YWx1ZS1kZWYtaWRlbnRpZmllcgoJaWRlbnRpZmllciA9ICIoPzpcXFxcLnxbXFx3LV18W15cMC1cXHhhMF0pKyIsCgoJLy8gQXR0cmlidXRlIHNlbGVjdG9yczogaHR0cDovL3d3dy53My5vcmcvVFIvc2VsZWN0b3JzLyNhdHRyaWJ1dGUtc2VsZWN0b3JzCglhdHRyaWJ1dGVzID0gIlxcWyIgKyB3aGl0ZXNwYWNlICsgIiooIiArIGlkZW50aWZpZXIgKyAiKSg/OiIgKyB3aGl0ZXNwYWNlICsKCQkvLyBPcGVyYXRvciAoY2FwdHVyZSAyKQoJCSIqKFsqXiR8IX5dPz0pIiArIHdoaXRlc3BhY2UgKwoJCS8vICJBdHRyaWJ1dGUgdmFsdWVzIG11c3QgYmUgQ1NTIGlkZW50aWZpZXJzIFtjYXB0dXJlIDVdIG9yIHN0cmluZ3MgW2NhcHR1cmUgMyBvciBjYXB0dXJlIDRdIgoJCSIqKD86JygoPzpcXFxcLnxbXlxcXFwnXSkqKSd8XCIoKD86XFxcXC58W15cXFxcXCJdKSopXCJ8KCIgKyBpZGVudGlmaWVyICsgIikpfCkiICsgd2hpdGVzcGFjZSArCgkJIipcXF0iLAoKCXBzZXVkb3MgPSAiOigiICsgaWRlbnRpZmllciArICIpKD86XFwoKCIgKwoJCS8vIFRvIHJlZHVjZSB0aGUgbnVtYmVyIG9mIHNlbGVjdG9ycyBuZWVkaW5nIHRva2VuaXplIGluIHRoZSBwcmVGaWx0ZXIsIHByZWZlciBhcmd1bWVudHM6CgkJLy8gMS4gcXVvdGVkIChjYXB0dXJlIDM7IGNhcHR1cmUgNCBvciBjYXB0dXJlIDUpCgkJIignKCg/OlxcXFwufFteXFxcXCddKSopJ3xcIigoPzpcXFxcLnxbXlxcXFxcIl0pKilcIil8IiArCgkJLy8gMi4gc2ltcGxlIChjYXB0dXJlIDYpCgkJIigoPzpcXFxcLnxbXlxcXFwoKVtcXF1dfCIgKyBhdHRyaWJ1dGVzICsgIikqKXwiICsKCQkvLyAzLiBhbnl0aGluZyBlbHNlIChjYXB0dXJlIDIpCgkJIi4qIiArCgkJIilcXCl8KSIsCgoJLy8gTGVhZGluZyBhbmQgbm9uLWVzY2FwZWQgdHJhaWxpbmcgd2hpdGVzcGFjZSwgY2FwdHVyaW5nIHNvbWUgbm9uLXdoaXRlc3BhY2UgY2hhcmFjdGVycyBwcmVjZWRpbmcgdGhlIGxhdHRlcgoJcndoaXRlc3BhY2UgPSBuZXcgUmVnRXhwKCB3aGl0ZXNwYWNlICsgIisiLCAiZyIgKSwKCXJ0cmltID0gbmV3IFJlZ0V4cCggIl4iICsgd2hpdGVzcGFjZSArICIrfCgoPzpefFteXFxcXF0pKD86XFxcXC4pKikiICsgd2hpdGVzcGFjZSArICIrJCIsICJnIiApLAoKCXJjb21tYSA9IG5ldyBSZWdFeHAoICJeIiArIHdoaXRlc3BhY2UgKyAiKiwiICsgd2hpdGVzcGFjZSArICIqIiApLAoJcmNvbWJpbmF0b3JzID0gbmV3IFJlZ0V4cCggIl4iICsgd2hpdGVzcGFjZSArICIqKFs+K35dfCIgKyB3aGl0ZXNwYWNlICsgIikiICsgd2hpdGVzcGFjZSArICIqIiApLAoKCXJhdHRyaWJ1dGVRdW90ZXMgPSBuZXcgUmVnRXhwKCAiPSIgKyB3aGl0ZXNwYWNlICsgIiooW15cXF0nXCJdKj8pIiArIHdoaXRlc3BhY2UgKyAiKlxcXSIsICJnIiApLAoKCXJwc2V1ZG8gPSBuZXcgUmVnRXhwKCBwc2V1ZG9zICksCglyaWRlbnRpZmllciA9IG5ldyBSZWdFeHAoICJeIiArIGlkZW50aWZpZXIgKyAiJCIgKSwKCgltYXRjaEV4cHIgPSB7CgkJIklEIjogbmV3IFJlZ0V4cCggIl4jKCIgKyBpZGVudGlmaWVyICsgIikiICksCgkJIkNMQVNTIjogbmV3IFJlZ0V4cCggIl5cXC4oIiArIGlkZW50aWZpZXIgKyAiKSIgKSwKCQkiVEFHIjogbmV3IFJlZ0V4cCggIl4oIiArIGlkZW50aWZpZXIgKyAifFsqXSkiICksCgkJIkFUVFIiOiBuZXcgUmVnRXhwKCAiXiIgKyBhdHRyaWJ1dGVzICksCgkJIlBTRVVETyI6IG5ldyBSZWdFeHAoICJeIiArIHBzZXVkb3MgKSwKCQkiQ0hJTEQiOiBuZXcgUmVnRXhwKCAiXjoob25seXxmaXJzdHxsYXN0fG50aHxudGgtbGFzdCktKGNoaWxkfG9mLXR5cGUpKD86XFwoIiArIHdoaXRlc3BhY2UgKwoJCQkiKihldmVufG9kZHwoKFsrLV18KShcXGQqKW58KSIgKyB3aGl0ZXNwYWNlICsgIiooPzooWystXXwpIiArIHdoaXRlc3BhY2UgKwoJCQkiKihcXGQrKXwpKSIgKyB3aGl0ZXNwYWNlICsgIipcXCl8KSIsICJpIiApLAoJCSJib29sIjogbmV3IFJlZ0V4cCggIl4oPzoiICsgYm9vbGVhbnMgKyAiKSQiLCAiaSIgKSwKCQkvLyBGb3IgdXNlIGluIGxpYnJhcmllcyBpbXBsZW1lbnRpbmcgLmlzKCkKCQkvLyBXZSB1c2UgdGhpcyBmb3IgUE9TIG1hdGNoaW5nIGluIGBzZWxlY3RgCgkJIm5lZWRzQ29udGV4dCI6IG5ldyBSZWdFeHAoICJeIiArIHdoaXRlc3BhY2UgKyAiKls+K35dfDooZXZlbnxvZGR8ZXF8Z3R8bHR8bnRofGZpcnN0fGxhc3QpKD86XFwoIiArCgkJCXdoaXRlc3BhY2UgKyAiKigoPzotXFxkKT9cXGQqKSIgKyB3aGl0ZXNwYWNlICsgIipcXCl8KSg/PVteLV18JCkiLCAiaSIgKQoJfSwKCglyaW5wdXRzID0gL14oPzppbnB1dHxzZWxlY3R8dGV4dGFyZWF8YnV0dG9uKSQvaSwKCXJoZWFkZXIgPSAvXmhcZCQvaSwKCglybmF0aXZlID0gL15bXntdK1x7XHMqXFtuYXRpdmUgXHcvLAoKCS8vIEVhc2lseS1wYXJzZWFibGUvcmV0cmlldmFibGUgSUQgb3IgVEFHIG9yIENMQVNTIHNlbGVjdG9ycwoJcnF1aWNrRXhwciA9IC9eKD86IyhbXHctXSspfChcdyspfFwuKFtcdy1dKykpJC8sCgoJcnNpYmxpbmcgPSAvWyt+XS8sCgoJLy8gQ1NTIGVzY2FwZXMKCS8vIGh0dHA6Ly93d3cudzMub3JnL1RSL0NTUzIxL3N5bmRhdGEuaHRtbCNlc2NhcGVkLWNoYXJhY3RlcnMKCXJ1bmVzY2FwZSA9IG5ldyBSZWdFeHAoICJcXFxcKFtcXGRhLWZdezEsNn0iICsgd2hpdGVzcGFjZSArICI/fCgiICsgd2hpdGVzcGFjZSArICIpfC4pIiwgImlnIiApLAoJZnVuZXNjYXBlID0gZnVuY3Rpb24oIF8sIGVzY2FwZWQsIGVzY2FwZWRXaGl0ZXNwYWNlICkgewoJCXZhciBoaWdoID0gIjB4IiArIGVzY2FwZWQgLSAweDEwMDAwOwoJCS8vIE5hTiBtZWFucyBub24tY29kZXBvaW50CgkJLy8gU3VwcG9ydDogRmlyZWZveDwyNAoJCS8vIFdvcmthcm91bmQgZXJyb25lb3VzIG51bWVyaWMgaW50ZXJwcmV0YXRpb24gb2YgKyIweCIKCQlyZXR1cm4gaGlnaCAhPT0gaGlnaCB8fCBlc2NhcGVkV2hpdGVzcGFjZSA/CgkJCWVzY2FwZWQgOgoJCQloaWdoIDwgMCA/CgkJCQkvLyBCTVAgY29kZXBvaW50CgkJCQlTdHJpbmcuZnJvbUNoYXJDb2RlKCBoaWdoICsgMHgxMDAwMCApIDoKCQkJCS8vIFN1cHBsZW1lbnRhbCBQbGFuZSBjb2RlcG9pbnQgKHN1cnJvZ2F0ZSBwYWlyKQoJCQkJU3RyaW5nLmZyb21DaGFyQ29kZSggaGlnaCA+PiAxMCB8IDB4RDgwMCwgaGlnaCAmIDB4M0ZGIHwgMHhEQzAwICk7Cgl9LAoKCS8vIENTUyBzdHJpbmcvaWRlbnRpZmllciBzZXJpYWxpemF0aW9uCgkvLyBodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvY3Nzb20vI2NvbW1vbi1zZXJpYWxpemluZy1pZGlvbXMKCXJjc3Nlc2NhcGUgPSAvKFtcMC1ceDFmXHg3Zl18Xi0/XGQpfF4tJHxbXlwwLVx4MWZceDdmLVx1RkZGRlx3LV0vZywKCWZjc3Nlc2NhcGUgPSBmdW5jdGlvbiggY2gsIGFzQ29kZVBvaW50ICkgewoJCWlmICggYXNDb2RlUG9pbnQgKSB7CgoJCQkvLyBVKzAwMDAgTlVMTCBiZWNvbWVzIFUrRkZGRCBSRVBMQUNFTUVOVCBDSEFSQUNURVIKCQkJaWYgKCBjaCA9PT0gIlwwIiApIHsKCQkJCXJldHVybiAiXHVGRkZEIjsKCQkJfQoKCQkJLy8gQ29udHJvbCBjaGFyYWN0ZXJzIGFuZCAoZGVwZW5kZW50IHVwb24gcG9zaXRpb24pIG51bWJlcnMgZ2V0IGVzY2FwZWQgYXMgY29kZSBwb2ludHMKCQkJcmV0dXJuIGNoLnNsaWNlKCAwLCAtMSApICsgIlxcIiArIGNoLmNoYXJDb2RlQXQoIGNoLmxlbmd0aCAtIDEgKS50b1N0cmluZyggMTYgKSArICIgIjsKCQl9CgoJCS8vIE90aGVyIHBvdGVudGlhbGx5LXNwZWNpYWwgQVNDSUkgY2hhcmFjdGVycyBnZXQgYmFja3NsYXNoLWVzY2FwZWQKCQlyZXR1cm4gIlxcIiArIGNoOwoJfSwKCgkvLyBVc2VkIGZvciBpZnJhbWVzCgkvLyBTZWUgc2V0RG9jdW1lbnQoKQoJLy8gUmVtb3ZpbmcgdGhlIGZ1bmN0aW9uIHdyYXBwZXIgY2F1c2VzIGEgIlBlcm1pc3Npb24gRGVuaWVkIgoJLy8gZXJyb3IgaW4gSUUKCXVubG9hZEhhbmRsZXIgPSBmdW5jdGlvbigpIHsKCQlzZXREb2N1bWVudCgpOwoJfSwKCglkaXNhYmxlZEFuY2VzdG9yID0gYWRkQ29tYmluYXRvcigKCQlmdW5jdGlvbiggZWxlbSApIHsKCQkJcmV0dXJuIGVsZW0uZGlzYWJsZWQgPT09IHRydWUgJiYgKCJmb3JtIiBpbiBlbGVtIHx8ICJsYWJlbCIgaW4gZWxlbSk7CgkJfSwKCQl7IGRpcjogInBhcmVudE5vZGUiLCBuZXh0OiAibGVnZW5kIiB9CgkpOwoKLy8gT3B0aW1pemUgZm9yIHB1c2guYXBwbHkoIF8sIE5vZGVMaXN0ICkKdHJ5IHsKCXB1c2guYXBwbHkoCgkJKGFyciA9IHNsaWNlLmNhbGwoIHByZWZlcnJlZERvYy5jaGlsZE5vZGVzICkpLAoJCXByZWZlcnJlZERvYy5jaGlsZE5vZGVzCgkpOwoJLy8gU3VwcG9ydDogQW5kcm9pZDw0LjAKCS8vIERldGVjdCBzaWxlbnRseSBmYWlsaW5nIHB1c2guYXBwbHkKCWFyclsgcHJlZmVycmVkRG9jLmNoaWxkTm9kZXMubGVuZ3RoIF0ubm9kZVR5cGU7Cn0gY2F0Y2ggKCBlICkgewoJcHVzaCA9IHsgYXBwbHk6IGFyci5sZW5ndGggPwoKCQkvLyBMZXZlcmFnZSBzbGljZSBpZiBwb3NzaWJsZQoJCWZ1bmN0aW9uKCB0YXJnZXQsIGVscyApIHsKCQkJcHVzaF9uYXRpdmUuYXBwbHkoIHRhcmdldCwgc2xpY2UuY2FsbChlbHMpICk7CgkJfSA6CgoJCS8vIFN1cHBvcnQ6IElFPDkKCQkvLyBPdGhlcndpc2UgYXBwZW5kIGRpcmVjdGx5CgkJZnVuY3Rpb24oIHRhcmdldCwgZWxzICkgewoJCQl2YXIgaiA9IHRhcmdldC5sZW5ndGgsCgkJCQlpID0gMDsKCQkJLy8gQ2FuJ3QgdHJ1c3QgTm9kZUxpc3QubGVuZ3RoCgkJCXdoaWxlICggKHRhcmdldFtqKytdID0gZWxzW2krK10pICkge30KCQkJdGFyZ2V0Lmxlbmd0aCA9IGogLSAxOwoJCX0KCX07Cn0KCmZ1bmN0aW9uIFNpenpsZSggc2VsZWN0b3IsIGNvbnRleHQsIHJlc3VsdHMsIHNlZWQgKSB7Cgl2YXIgbSwgaSwgZWxlbSwgbmlkLCBtYXRjaCwgZ3JvdXBzLCBuZXdTZWxlY3RvciwKCQluZXdDb250ZXh0ID0gY29udGV4dCAmJiBjb250ZXh0Lm93bmVyRG9jdW1lbnQsCgoJCS8vIG5vZGVUeXBlIGRlZmF1bHRzIHRvIDksIHNpbmNlIGNvbnRleHQgZGVmYXVsdHMgdG8gZG9jdW1lbnQKCQlub2RlVHlwZSA9IGNvbnRleHQgPyBjb250ZXh0Lm5vZGVUeXBlIDogOTsKCglyZXN1bHRzID0gcmVzdWx0cyB8fCBbXTsKCgkvLyBSZXR1cm4gZWFybHkgZnJvbSBjYWxscyB3aXRoIGludmFsaWQgc2VsZWN0b3Igb3IgY29udGV4dAoJaWYgKCB0eXBlb2Ygc2VsZWN0b3IgIT09ICJzdHJpbmciIHx8ICFzZWxlY3RvciB8fAoJCW5vZGVUeXBlICE9PSAxICYmIG5vZGVUeXBlICE9PSA5ICYmIG5vZGVUeXBlICE9PSAxMSApIHsKCgkJcmV0dXJuIHJlc3VsdHM7Cgl9CgoJLy8gVHJ5IHRvIHNob3J0Y3V0IGZpbmQgb3BlcmF0aW9ucyAoYXMgb3Bwb3NlZCB0byBmaWx0ZXJzKSBpbiBIVE1MIGRvY3VtZW50cwoJaWYgKCAhc2VlZCApIHsKCgkJaWYgKCAoIGNvbnRleHQgPyBjb250ZXh0Lm93bmVyRG9jdW1lbnQgfHwgY29udGV4dCA6IHByZWZlcnJlZERvYyApICE9PSBkb2N1bWVudCApIHsKCQkJc2V0RG9jdW1lbnQoIGNvbnRleHQgKTsKCQl9CgkJY29udGV4dCA9IGNvbnRleHQgfHwgZG9jdW1lbnQ7CgoJCWlmICggZG9jdW1lbnRJc0hUTUwgKSB7CgoJCQkvLyBJZiB0aGUgc2VsZWN0b3IgaXMgc3VmZmljaWVudGx5IHNpbXBsZSwgdHJ5IHVzaW5nIGEgImdldCpCeSoiIERPTSBtZXRob2QKCQkJLy8gKGV4Y2VwdGluZyBEb2N1bWVudEZyYWdtZW50IGNvbnRleHQsIHdoZXJlIHRoZSBtZXRob2RzIGRvbid0IGV4aXN0KQoJCQlpZiAoIG5vZGVUeXBlICE9PSAxMSAmJiAobWF0Y2ggPSBycXVpY2tFeHByLmV4ZWMoIHNlbGVjdG9yICkpICkgewoKCQkJCS8vIElEIHNlbGVjdG9yCgkJCQlpZiAoIChtID0gbWF0Y2hbMV0pICkgewoKCQkJCQkvLyBEb2N1bWVudCBjb250ZXh0CgkJCQkJaWYgKCBub2RlVHlwZSA9PT0gOSApIHsKCQkJCQkJaWYgKCAoZWxlbSA9IGNvbnRleHQuZ2V0RWxlbWVudEJ5SWQoIG0gKSkgKSB7CgoJCQkJCQkJLy8gU3VwcG9ydDogSUUsIE9wZXJhLCBXZWJraXQKCQkJCQkJCS8vIFRPRE86IGlkZW50aWZ5IHZlcnNpb25zCgkJCQkJCQkvLyBnZXRFbGVtZW50QnlJZCBjYW4gbWF0Y2ggZWxlbWVudHMgYnkgbmFtZSBpbnN0ZWFkIG9mIElECgkJCQkJCQlpZiAoIGVsZW0uaWQgPT09IG0gKSB7CgkJCQkJCQkJcmVzdWx0cy5wdXNoKCBlbGVtICk7CgkJCQkJCQkJcmV0dXJuIHJlc3VsdHM7CgkJCQkJCQl9CgkJCQkJCX0gZWxzZSB7CgkJCQkJCQlyZXR1cm4gcmVzdWx0czsKCQkJCQkJfQoKCQkJCQkvLyBFbGVtZW50IGNvbnRleHQKCQkJCQl9IGVsc2UgewoKCQkJCQkJLy8gU3VwcG9ydDogSUUsIE9wZXJhLCBXZWJraXQKCQkJCQkJLy8gVE9ETzogaWRlbnRpZnkgdmVyc2lvbnMKCQkJCQkJLy8gZ2V0RWxlbWVudEJ5SWQgY2FuIG1hdGNoIGVsZW1lbnRzIGJ5IG5hbWUgaW5zdGVhZCBvZiBJRAoJCQkJCQlpZiAoIG5ld0NvbnRleHQgJiYgKGVsZW0gPSBuZXdDb250ZXh0LmdldEVsZW1lbnRCeUlkKCBtICkpICYmCgkJCQkJCQljb250YWlucyggY29udGV4dCwgZWxlbSApICYmCgkJCQkJCQllbGVtLmlkID09PSBtICkgewoKCQkJCQkJCXJlc3VsdHMucHVzaCggZWxlbSApOwoJCQkJCQkJcmV0dXJuIHJlc3VsdHM7CgkJCQkJCX0KCQkJCQl9CgoJCQkJLy8gVHlwZSBzZWxlY3RvcgoJCQkJfSBlbHNlIGlmICggbWF0Y2hbMl0gKSB7CgkJCQkJcHVzaC5hcHBseSggcmVzdWx0cywgY29udGV4dC5nZXRFbGVtZW50c0J5VGFnTmFtZSggc2VsZWN0b3IgKSApOwoJCQkJCXJldHVybiByZXN1bHRzOwoKCQkJCS8vIENsYXNzIHNlbGVjdG9yCgkJCQl9IGVsc2UgaWYgKCAobSA9IG1hdGNoWzNdKSAmJiBzdXBwb3J0LmdldEVsZW1lbnRzQnlDbGFzc05hbWUgJiYKCQkJCQljb250ZXh0LmdldEVsZW1lbnRzQnlDbGFzc05hbWUgKSB7CgoJCQkJCXB1c2guYXBwbHkoIHJlc3VsdHMsIGNvbnRleHQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSggbSApICk7CgkJCQkJcmV0dXJuIHJlc3VsdHM7CgkJCQl9CgkJCX0KCgkJCS8vIFRha2UgYWR2YW50YWdlIG9mIHF1ZXJ5U2VsZWN0b3JBbGwKCQkJaWYgKCBzdXBwb3J0LnFzYSAmJgoJCQkJIWNvbXBpbGVyQ2FjaGVbIHNlbGVjdG9yICsgIiAiIF0gJiYKCQkJCSghcmJ1Z2d5UVNBIHx8ICFyYnVnZ3lRU0EudGVzdCggc2VsZWN0b3IgKSkgKSB7CgoJCQkJaWYgKCBub2RlVHlwZSAhPT0gMSApIHsKCQkJCQluZXdDb250ZXh0ID0gY29udGV4dDsKCQkJCQluZXdTZWxlY3RvciA9IHNlbGVjdG9yOwoKCQkJCS8vIHFTQSBsb29rcyBvdXRzaWRlIEVsZW1lbnQgY29udGV4dCwgd2hpY2ggaXMgbm90IHdoYXQgd2Ugd2FudAoJCQkJLy8gVGhhbmtzIHRvIEFuZHJldyBEdXBvbnQgZm9yIHRoaXMgd29ya2Fyb3VuZCB0ZWNobmlxdWUKCQkJCS8vIFN1cHBvcnQ6IElFIDw9OAoJCQkJLy8gRXhjbHVkZSBvYmplY3QgZWxlbWVudHMKCQkJCX0gZWxzZSBpZiAoIGNvbnRleHQubm9kZU5hbWUudG9Mb3dlckNhc2UoKSAhPT0gIm9iamVjdCIgKSB7CgoJCQkJCS8vIENhcHR1cmUgdGhlIGNvbnRleHQgSUQsIHNldHRpbmcgaXQgZmlyc3QgaWYgbmVjZXNzYXJ5CgkJCQkJaWYgKCAobmlkID0gY29udGV4dC5nZXRBdHRyaWJ1dGUoICJpZCIgKSkgKSB7CgkJCQkJCW5pZCA9IG5pZC5yZXBsYWNlKCByY3NzZXNjYXBlLCBmY3NzZXNjYXBlICk7CgkJCQkJfSBlbHNlIHsKCQkJCQkJY29udGV4dC5zZXRBdHRyaWJ1dGUoICJpZCIsIChuaWQgPSBleHBhbmRvKSApOwoJCQkJCX0KCgkJCQkJLy8gUHJlZml4IGV2ZXJ5IHNlbGVjdG9yIGluIHRoZSBsaXN0CgkJCQkJZ3JvdXBzID0gdG9rZW5pemUoIHNlbGVjdG9yICk7CgkJCQkJaSA9IGdyb3Vwcy5sZW5ndGg7CgkJCQkJd2hpbGUgKCBpLS0gKSB7CgkJCQkJCWdyb3Vwc1tpXSA9ICIjIiArIG5pZCArICIgIiArIHRvU2VsZWN0b3IoIGdyb3Vwc1tpXSApOwoJCQkJCX0KCQkJCQluZXdTZWxlY3RvciA9IGdyb3Vwcy5qb2luKCAiLCIgKTsKCgkJCQkJLy8gRXhwYW5kIGNvbnRleHQgZm9yIHNpYmxpbmcgc2VsZWN0b3JzCgkJCQkJbmV3Q29udGV4dCA9IHJzaWJsaW5nLnRlc3QoIHNlbGVjdG9yICkgJiYgdGVzdENvbnRleHQoIGNvbnRleHQucGFyZW50Tm9kZSApIHx8CgkJCQkJCWNvbnRleHQ7CgkJCQl9CgoJCQkJaWYgKCBuZXdTZWxlY3RvciApIHsKCQkJCQl0cnkgewoJCQkJCQlwdXNoLmFwcGx5KCByZXN1bHRzLAoJCQkJCQkJbmV3Q29udGV4dC5xdWVyeVNlbGVjdG9yQWxsKCBuZXdTZWxlY3RvciApCgkJCQkJCSk7CgkJCQkJCXJldHVybiByZXN1bHRzOwoJCQkJCX0gY2F0Y2ggKCBxc2FFcnJvciApIHsKCQkJCQl9IGZpbmFsbHkgewoJCQkJCQlpZiAoIG5pZCA9PT0gZXhwYW5kbyApIHsKCQkJCQkJCWNvbnRleHQucmVtb3ZlQXR0cmlidXRlKCAiaWQiICk7CgkJCQkJCX0KCQkJCQl9CgkJCQl9CgkJCX0KCQl9Cgl9CgoJLy8gQWxsIG90aGVycwoJcmV0dXJuIHNlbGVjdCggc2VsZWN0b3IucmVwbGFjZSggcnRyaW0sICIkMSIgKSwgY29udGV4dCwgcmVzdWx0cywgc2VlZCApOwp9CgovKioKICogQ3JlYXRlIGtleS12YWx1ZSBjYWNoZXMgb2YgbGltaXRlZCBzaXplCiAqIEByZXR1cm5zIHtmdW5jdGlvbihzdHJpbmcsIG9iamVjdCl9IFJldHVybnMgdGhlIE9iamVjdCBkYXRhIGFmdGVyIHN0b3JpbmcgaXQgb24gaXRzZWxmIHdpdGgKICoJcHJvcGVydHkgbmFtZSB0aGUgKHNwYWNlLXN1ZmZpeGVkKSBzdHJpbmcgYW5kIChpZiB0aGUgY2FjaGUgaXMgbGFyZ2VyIHRoYW4gRXhwci5jYWNoZUxlbmd0aCkKICoJZGVsZXRpbmcgdGhlIG9sZGVzdCBlbnRyeQogKi8KZnVuY3Rpb24gY3JlYXRlQ2FjaGUoKSB7Cgl2YXIga2V5cyA9IFtdOwoKCWZ1bmN0aW9uIGNhY2hlKCBrZXksIHZhbHVlICkgewoJCS8vIFVzZSAoa2V5ICsgIiAiKSB0byBhdm9pZCBjb2xsaXNpb24gd2l0aCBuYXRpdmUgcHJvdG90eXBlIHByb3BlcnRpZXMgKHNlZSBJc3N1ZSAjMTU3KQoJCWlmICgga2V5cy5wdXNoKCBrZXkgKyAiICIgKSA+IEV4cHIuY2FjaGVMZW5ndGggKSB7CgkJCS8vIE9ubHkga2VlcCB0aGUgbW9zdCByZWNlbnQgZW50cmllcwoJCQlkZWxldGUgY2FjaGVbIGtleXMuc2hpZnQoKSBdOwoJCX0KCQlyZXR1cm4gKGNhY2hlWyBrZXkgKyAiICIgXSA9IHZhbHVlKTsKCX0KCXJldHVybiBjYWNoZTsKfQoKLyoqCiAqIE1hcmsgYSBmdW5jdGlvbiBmb3Igc3BlY2lhbCB1c2UgYnkgU2l6emxlCiAqIEBwYXJhbSB7RnVuY3Rpb259IGZuIFRoZSBmdW5jdGlvbiB0byBtYXJrCiAqLwpmdW5jdGlvbiBtYXJrRnVuY3Rpb24oIGZuICkgewoJZm5bIGV4cGFuZG8gXSA9IHRydWU7CglyZXR1cm4gZm47Cn0KCi8qKgogKiBTdXBwb3J0IHRlc3RpbmcgdXNpbmcgYW4gZWxlbWVudAogKiBAcGFyYW0ge0Z1bmN0aW9ufSBmbiBQYXNzZWQgdGhlIGNyZWF0ZWQgZWxlbWVudCBhbmQgcmV0dXJucyBhIGJvb2xlYW4gcmVzdWx0CiAqLwpmdW5jdGlvbiBhc3NlcnQoIGZuICkgewoJdmFyIGVsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZmllbGRzZXQiKTsKCgl0cnkgewoJCXJldHVybiAhIWZuKCBlbCApOwoJfSBjYXRjaCAoZSkgewoJCXJldHVybiBmYWxzZTsKCX0gZmluYWxseSB7CgkJLy8gUmVtb3ZlIGZyb20gaXRzIHBhcmVudCBieSBkZWZhdWx0CgkJaWYgKCBlbC5wYXJlbnROb2RlICkgewoJCQllbC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKCBlbCApOwoJCX0KCQkvLyByZWxlYXNlIG1lbW9yeSBpbiBJRQoJCWVsID0gbnVsbDsKCX0KfQoKLyoqCiAqIEFkZHMgdGhlIHNhbWUgaGFuZGxlciBmb3IgYWxsIG9mIHRoZSBzcGVjaWZpZWQgYXR0cnMKICogQHBhcmFtIHtTdHJpbmd9IGF0dHJzIFBpcGUtc2VwYXJhdGVkIGxpc3Qgb2YgYXR0cmlidXRlcwogKiBAcGFyYW0ge0Z1bmN0aW9ufSBoYW5kbGVyIFRoZSBtZXRob2QgdGhhdCB3aWxsIGJlIGFwcGxpZWQKICovCmZ1bmN0aW9uIGFkZEhhbmRsZSggYXR0cnMsIGhhbmRsZXIgKSB7Cgl2YXIgYXJyID0gYXR0cnMuc3BsaXQoInwiKSwKCQlpID0gYXJyLmxlbmd0aDsKCgl3aGlsZSAoIGktLSApIHsKCQlFeHByLmF0dHJIYW5kbGVbIGFycltpXSBdID0gaGFuZGxlcjsKCX0KfQoKLyoqCiAqIENoZWNrcyBkb2N1bWVudCBvcmRlciBvZiB0d28gc2libGluZ3MKICogQHBhcmFtIHtFbGVtZW50fSBhCiAqIEBwYXJhbSB7RWxlbWVudH0gYgogKiBAcmV0dXJucyB7TnVtYmVyfSBSZXR1cm5zIGxlc3MgdGhhbiAwIGlmIGEgcHJlY2VkZXMgYiwgZ3JlYXRlciB0aGFuIDAgaWYgYSBmb2xsb3dzIGIKICovCmZ1bmN0aW9uIHNpYmxpbmdDaGVjayggYSwgYiApIHsKCXZhciBjdXIgPSBiICYmIGEsCgkJZGlmZiA9IGN1ciAmJiBhLm5vZGVUeXBlID09PSAxICYmIGIubm9kZVR5cGUgPT09IDEgJiYKCQkJYS5zb3VyY2VJbmRleCAtIGIuc291cmNlSW5kZXg7CgoJLy8gVXNlIElFIHNvdXJjZUluZGV4IGlmIGF2YWlsYWJsZSBvbiBib3RoIG5vZGVzCglpZiAoIGRpZmYgKSB7CgkJcmV0dXJuIGRpZmY7Cgl9CgoJLy8gQ2hlY2sgaWYgYiBmb2xsb3dzIGEKCWlmICggY3VyICkgewoJCXdoaWxlICggKGN1ciA9IGN1ci5uZXh0U2libGluZykgKSB7CgkJCWlmICggY3VyID09PSBiICkgewoJCQkJcmV0dXJuIC0xOwoJCQl9CgkJfQoJfQoKCXJldHVybiBhID8gMSA6IC0xOwp9CgovKioKICogUmV0dXJucyBhIGZ1bmN0aW9uIHRvIHVzZSBpbiBwc2V1ZG9zIGZvciBpbnB1dCB0eXBlcwogKiBAcGFyYW0ge1N0cmluZ30gdHlwZQogKi8KZnVuY3Rpb24gY3JlYXRlSW5wdXRQc2V1ZG8oIHR5cGUgKSB7CglyZXR1cm4gZnVuY3Rpb24oIGVsZW0gKSB7CgkJdmFyIG5hbWUgPSBlbGVtLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7CgkJcmV0dXJuIG5hbWUgPT09ICJpbnB1dCIgJiYgZWxlbS50eXBlID09PSB0eXBlOwoJfTsKfQoKLyoqCiAqIFJldHVybnMgYSBmdW5jdGlvbiB0byB1c2UgaW4gcHNldWRvcyBmb3IgYnV0dG9ucwogKiBAcGFyYW0ge1N0cmluZ30gdHlwZQogKi8KZnVuY3Rpb24gY3JlYXRlQnV0dG9uUHNldWRvKCB0eXBlICkgewoJcmV0dXJuIGZ1bmN0aW9uKCBlbGVtICkgewoJCXZhciBuYW1lID0gZWxlbS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpOwoJCXJldHVybiAobmFtZSA9PT0gImlucHV0IiB8fCBuYW1lID09PSAiYnV0dG9uIikgJiYgZWxlbS50eXBlID09PSB0eXBlOwoJfTsKfQoKLyoqCiAqIFJldHVybnMgYSBmdW5jdGlvbiB0byB1c2UgaW4gcHNldWRvcyBmb3IgOmVuYWJsZWQvOmRpc2FibGVkCiAqIEBwYXJhbSB7Qm9vbGVhbn0gZGlzYWJsZWQgdHJ1ZSBmb3IgOmRpc2FibGVkOyBmYWxzZSBmb3IgOmVuYWJsZWQKICovCmZ1bmN0aW9uIGNyZWF0ZURpc2FibGVkUHNldWRvKCBkaXNhYmxlZCApIHsKCgkvLyBLbm93biA6ZGlzYWJsZWQgZmFsc2UgcG9zaXRpdmVzOiBmaWVsZHNldFtkaXNhYmxlZF0gPiBsZWdlbmQ6bnRoLW9mLXR5cGUobisyKSA6Y2FuLWRpc2FibGUKCXJldHVybiBmdW5jdGlvbiggZWxlbSApIHsKCgkJLy8gT25seSBjZXJ0YWluIGVsZW1lbnRzIGNhbiBtYXRjaCA6ZW5hYmxlZCBvciA6ZGlzYWJsZWQKCQkvLyBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9zY3JpcHRpbmcuaHRtbCNzZWxlY3Rvci1lbmFibGVkCgkJLy8gaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2Uvc2NyaXB0aW5nLmh0bWwjc2VsZWN0b3ItZGlzYWJsZWQKCQlpZiAoICJmb3JtIiBpbiBlbGVtICkgewoKCQkJLy8gQ2hlY2sgZm9yIGluaGVyaXRlZCBkaXNhYmxlZG5lc3Mgb24gcmVsZXZhbnQgbm9uLWRpc2FibGVkIGVsZW1lbnRzOgoJCQkvLyAqIGxpc3RlZCBmb3JtLWFzc29jaWF0ZWQgZWxlbWVudHMgaW4gYSBkaXNhYmxlZCBmaWVsZHNldAoJCQkvLyAgIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL2Zvcm1zLmh0bWwjY2F0ZWdvcnktbGlzdGVkCgkJCS8vICAgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvZm9ybXMuaHRtbCNjb25jZXB0LWZlLWRpc2FibGVkCgkJCS8vICogb3B0aW9uIGVsZW1lbnRzIGluIGEgZGlzYWJsZWQgb3B0Z3JvdXAKCQkJLy8gICBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9mb3Jtcy5odG1sI2NvbmNlcHQtb3B0aW9uLWRpc2FibGVkCgkJCS8vIEFsbCBzdWNoIGVsZW1lbnRzIGhhdmUgYSAiZm9ybSIgcHJvcGVydHkuCgkJCWlmICggZWxlbS5wYXJlbnROb2RlICYmIGVsZW0uZGlzYWJsZWQgPT09IGZhbHNlICkgewoKCQkJCS8vIE9wdGlvbiBlbGVtZW50cyBkZWZlciB0byBhIHBhcmVudCBvcHRncm91cCBpZiBwcmVzZW50CgkJCQlpZiAoICJsYWJlbCIgaW4gZWxlbSApIHsKCQkJCQlpZiAoICJsYWJlbCIgaW4gZWxlbS5wYXJlbnROb2RlICkgewoJCQkJCQlyZXR1cm4gZWxlbS5wYXJlbnROb2RlLmRpc2FibGVkID09PSBkaXNhYmxlZDsKCQkJCQl9IGVsc2UgewoJCQkJCQlyZXR1cm4gZWxlbS5kaXNhYmxlZCA9PT0gZGlzYWJsZWQ7CgkJCQkJfQoJCQkJfQoKCQkJCS8vIFN1cHBvcnQ6IElFIDYgLSAxMQoJCQkJLy8gVXNlIHRoZSBpc0Rpc2FibGVkIHNob3J0Y3V0IHByb3BlcnR5IHRvIGNoZWNrIGZvciBkaXNhYmxlZCBmaWVsZHNldCBhbmNlc3RvcnMKCQkJCXJldHVybiBlbGVtLmlzRGlzYWJsZWQgPT09IGRpc2FibGVkIHx8CgoJCQkJCS8vIFdoZXJlIHRoZXJlIGlzIG5vIGlzRGlzYWJsZWQsIGNoZWNrIG1hbnVhbGx5CgkJCQkJLyoganNoaW50IC1XMDE4ICovCgkJCQkJZWxlbS5pc0Rpc2FibGVkICE9PSAhZGlzYWJsZWQgJiYKCQkJCQkJZGlzYWJsZWRBbmNlc3RvciggZWxlbSApID09PSBkaXNhYmxlZDsKCQkJfQoKCQkJcmV0dXJuIGVsZW0uZGlzYWJsZWQgPT09IGRpc2FibGVkOwoKCQkvLyBUcnkgdG8gd2lubm93IG91dCBlbGVtZW50cyB0aGF0IGNhbid0IGJlIGRpc2FibGVkIGJlZm9yZSB0cnVzdGluZyB0aGUgZGlzYWJsZWQgcHJvcGVydHkuCgkJLy8gU29tZSB2aWN0aW1zIGdldCBjYXVnaHQgaW4gb3VyIG5ldCAobGFiZWwsIGxlZ2VuZCwgbWVudSwgdHJhY2spLCBidXQgaXQgc2hvdWxkbid0CgkJLy8gZXZlbiBleGlzdCBvbiB0aGVtLCBsZXQgYWxvbmUgaGF2ZSBhIGJvb2xlYW4gdmFsdWUuCgkJfSBlbHNlIGlmICggImxhYmVsIiBpbiBlbGVtICkgewoJCQlyZXR1cm4gZWxlbS5kaXNhYmxlZCA9PT0gZGlzYWJsZWQ7CgkJfQoKCQkvLyBSZW1haW5pbmcgZWxlbWVudHMgYXJlIG5laXRoZXIgOmVuYWJsZWQgbm9yIDpkaXNhYmxlZAoJCXJldHVybiBmYWxzZTsKCX07Cn0KCi8qKgogKiBSZXR1cm5zIGEgZnVuY3Rpb24gdG8gdXNlIGluIHBzZXVkb3MgZm9yIHBvc2l0aW9uYWxzCiAqIEBwYXJhbSB7RnVuY3Rpb259IGZuCiAqLwpmdW5jdGlvbiBjcmVhdGVQb3NpdGlvbmFsUHNldWRvKCBmbiApIHsKCXJldHVybiBtYXJrRnVuY3Rpb24oZnVuY3Rpb24oIGFyZ3VtZW50ICkgewoJCWFyZ3VtZW50ID0gK2FyZ3VtZW50OwoJCXJldHVybiBtYXJrRnVuY3Rpb24oZnVuY3Rpb24oIHNlZWQsIG1hdGNoZXMgKSB7CgkJCXZhciBqLAoJCQkJbWF0Y2hJbmRleGVzID0gZm4oIFtdLCBzZWVkLmxlbmd0aCwgYXJndW1lbnQgKSwKCQkJCWkgPSBtYXRjaEluZGV4ZXMubGVuZ3RoOwoKCQkJLy8gTWF0Y2ggZWxlbWVudHMgZm91bmQgYXQgdGhlIHNwZWNpZmllZCBpbmRleGVzCgkJCXdoaWxlICggaS0tICkgewoJCQkJaWYgKCBzZWVkWyAoaiA9IG1hdGNoSW5kZXhlc1tpXSkgXSApIHsKCQkJCQlzZWVkW2pdID0gIShtYXRjaGVzW2pdID0gc2VlZFtqXSk7CgkJCQl9CgkJCX0KCQl9KTsKCX0pOwp9CgovKioKICogQ2hlY2tzIGEgbm9kZSBmb3IgdmFsaWRpdHkgYXMgYSBTaXp6bGUgY29udGV4dAogKiBAcGFyYW0ge0VsZW1lbnR8T2JqZWN0PX0gY29udGV4dAogKiBAcmV0dXJucyB7RWxlbWVudHxPYmplY3R8Qm9vbGVhbn0gVGhlIGlucHV0IG5vZGUgaWYgYWNjZXB0YWJsZSwgb3RoZXJ3aXNlIGEgZmFsc3kgdmFsdWUKICovCmZ1bmN0aW9uIHRlc3RDb250ZXh0KCBjb250ZXh0ICkgewoJcmV0dXJuIGNvbnRleHQgJiYgdHlwZW9mIGNvbnRleHQuZ2V0RWxlbWVudHNCeVRhZ05hbWUgIT09ICJ1bmRlZmluZWQiICYmIGNvbnRleHQ7Cn0KCi8vIEV4cG9zZSBzdXBwb3J0IHZhcnMgZm9yIGNvbnZlbmllbmNlCnN1cHBvcnQgPSBTaXp6bGUuc3VwcG9ydCA9IHt9OwoKLyoqCiAqIERldGVjdHMgWE1MIG5vZGVzCiAqIEBwYXJhbSB7RWxlbWVudHxPYmplY3R9IGVsZW0gQW4gZWxlbWVudCBvciBhIGRvY3VtZW50CiAqIEByZXR1cm5zIHtCb29sZWFufSBUcnVlIGlmZiBlbGVtIGlzIGEgbm9uLUhUTUwgWE1MIG5vZGUKICovCmlzWE1MID0gU2l6emxlLmlzWE1MID0gZnVuY3Rpb24oIGVsZW0gKSB7CgkvLyBkb2N1bWVudEVsZW1lbnQgaXMgdmVyaWZpZWQgZm9yIGNhc2VzIHdoZXJlIGl0IGRvZXNuJ3QgeWV0IGV4aXN0CgkvLyAoc3VjaCBhcyBsb2FkaW5nIGlmcmFtZXMgaW4gSUUgLSAjNDgzMykKCXZhciBkb2N1bWVudEVsZW1lbnQgPSBlbGVtICYmIChlbGVtLm93bmVyRG9jdW1lbnQgfHwgZWxlbSkuZG9jdW1lbnRFbGVtZW50OwoJcmV0dXJuIGRvY3VtZW50RWxlbWVudCA/IGRvY3VtZW50RWxlbWVudC5ub2RlTmFtZSAhPT0gIkhUTUwiIDogZmFsc2U7Cn07CgovKioKICogU2V0cyBkb2N1bWVudC1yZWxhdGVkIHZhcmlhYmxlcyBvbmNlIGJhc2VkIG9uIHRoZSBjdXJyZW50IGRvY3VtZW50CiAqIEBwYXJhbSB7RWxlbWVudHxPYmplY3R9IFtkb2NdIEFuIGVsZW1lbnQgb3IgZG9jdW1lbnQgb2JqZWN0IHRvIHVzZSB0byBzZXQgdGhlIGRvY3VtZW50CiAqIEByZXR1cm5zIHtPYmplY3R9IFJldHVybnMgdGhlIGN1cnJlbnQgZG9jdW1lbnQKICovCnNldERvY3VtZW50ID0gU2l6emxlLnNldERvY3VtZW50ID0gZnVuY3Rpb24oIG5vZGUgKSB7Cgl2YXIgaGFzQ29tcGFyZSwgc3ViV2luZG93LAoJCWRvYyA9IG5vZGUgPyBub2RlLm93bmVyRG9jdW1lbnQgfHwgbm9kZSA6IHByZWZlcnJlZERvYzsKCgkvLyBSZXR1cm4gZWFybHkgaWYgZG9jIGlzIGludmFsaWQgb3IgYWxyZWFkeSBzZWxlY3RlZAoJaWYgKCBkb2MgPT09IGRvY3VtZW50IHx8IGRvYy5ub2RlVHlwZSAhPT0gOSB8fCAhZG9jLmRvY3VtZW50RWxlbWVudCApIHsKCQlyZXR1cm4gZG9jdW1lbnQ7Cgl9CgoJLy8gVXBkYXRlIGdsb2JhbCB2YXJpYWJsZXMKCWRvY3VtZW50ID0gZG9jOwoJZG9jRWxlbSA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDsKCWRvY3VtZW50SXNIVE1MID0gIWlzWE1MKCBkb2N1bWVudCApOwoKCS8vIFN1cHBvcnQ6IElFIDktMTEsIEVkZ2UKCS8vIEFjY2Vzc2luZyBpZnJhbWUgZG9jdW1lbnRzIGFmdGVyIHVubG9hZCB0aHJvd3MgInBlcm1pc3Npb24gZGVuaWVkIiBlcnJvcnMgKGpRdWVyeSAjMTM5MzYpCglpZiAoIHByZWZlcnJlZERvYyAhPT0gZG9jdW1lbnQgJiYKCQkoc3ViV2luZG93ID0gZG9jdW1lbnQuZGVmYXVsdFZpZXcpICYmIHN1YldpbmRvdy50b3AgIT09IHN1YldpbmRvdyApIHsKCgkJLy8gU3VwcG9ydDogSUUgMTEsIEVkZ2UKCQlpZiAoIHN1YldpbmRvdy5hZGRFdmVudExpc3RlbmVyICkgewoJCQlzdWJXaW5kb3cuYWRkRXZlbnRMaXN0ZW5lciggInVubG9hZCIsIHVubG9hZEhhbmRsZXIsIGZhbHNlICk7CgoJCS8vIFN1cHBvcnQ6IElFIDkgLSAxMCBvbmx5CgkJfSBlbHNlIGlmICggc3ViV2luZG93LmF0dGFjaEV2ZW50ICkgewoJCQlzdWJXaW5kb3cuYXR0YWNoRXZlbnQoICJvbnVubG9hZCIsIHVubG9hZEhhbmRsZXIgKTsKCQl9Cgl9CgoJLyogQXR0cmlidXRlcwoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwoKCS8vIFN1cHBvcnQ6IElFPDgKCS8vIFZlcmlmeSB0aGF0IGdldEF0dHJpYnV0ZSByZWFsbHkgcmV0dXJucyBhdHRyaWJ1dGVzIGFuZCBub3QgcHJvcGVydGllcwoJLy8gKGV4Y2VwdGluZyBJRTggYm9vbGVhbnMpCglzdXBwb3J0LmF0dHJpYnV0ZXMgPSBhc3NlcnQoZnVuY3Rpb24oIGVsICkgewoJCWVsLmNsYXNzTmFtZSA9ICJpIjsKCQlyZXR1cm4gIWVsLmdldEF0dHJpYnV0ZSgiY2xhc3NOYW1lIik7Cgl9KTsKCgkvKiBnZXRFbGVtZW50KHMpQnkqCgktLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovCgoJLy8gQ2hlY2sgaWYgZ2V0RWxlbWVudHNCeVRhZ05hbWUoIioiKSByZXR1cm5zIG9ubHkgZWxlbWVudHMKCXN1cHBvcnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUgPSBhc3NlcnQoZnVuY3Rpb24oIGVsICkgewoJCWVsLmFwcGVuZENoaWxkKCBkb2N1bWVudC5jcmVhdGVDb21tZW50KCIiKSApOwoJCXJldHVybiAhZWwuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIioiKS5sZW5ndGg7Cgl9KTsKCgkvLyBTdXBwb3J0OiBJRTw5CglzdXBwb3J0LmdldEVsZW1lbnRzQnlDbGFzc05hbWUgPSBybmF0aXZlLnRlc3QoIGRvY3VtZW50LmdldEVsZW1lbnRzQnlDbGFzc05hbWUgKTsKCgkvLyBTdXBwb3J0OiBJRTwxMAoJLy8gQ2hlY2sgaWYgZ2V0RWxlbWVudEJ5SWQgcmV0dXJucyBlbGVtZW50cyBieSBuYW1lCgkvLyBUaGUgYnJva2VuIGdldEVsZW1lbnRCeUlkIG1ldGhvZHMgZG9uJ3QgcGljayB1cCBwcm9ncmFtbWF0aWNhbGx5LXNldCBuYW1lcywKCS8vIHNvIHVzZSBhIHJvdW5kYWJvdXQgZ2V0RWxlbWVudHNCeU5hbWUgdGVzdAoJc3VwcG9ydC5nZXRCeUlkID0gYXNzZXJ0KGZ1bmN0aW9uKCBlbCApIHsKCQlkb2NFbGVtLmFwcGVuZENoaWxkKCBlbCApLmlkID0gZXhwYW5kbzsKCQlyZXR1cm4gIWRvY3VtZW50LmdldEVsZW1lbnRzQnlOYW1lIHx8ICFkb2N1bWVudC5nZXRFbGVtZW50c0J5TmFtZSggZXhwYW5kbyApLmxlbmd0aDsKCX0pOwoKCS8vIElEIGZpbHRlciBhbmQgZmluZAoJaWYgKCBzdXBwb3J0LmdldEJ5SWQgKSB7CgkJRXhwci5maWx0ZXJbIklEIl0gPSBmdW5jdGlvbiggaWQgKSB7CgkJCXZhciBhdHRySWQgPSBpZC5yZXBsYWNlKCBydW5lc2NhcGUsIGZ1bmVzY2FwZSApOwoJCQlyZXR1cm4gZnVuY3Rpb24oIGVsZW0gKSB7CgkJCQlyZXR1cm4gZWxlbS5nZXRBdHRyaWJ1dGUoImlkIikgPT09IGF0dHJJZDsKCQkJfTsKCQl9OwoJCUV4cHIuZmluZFsiSUQiXSA9IGZ1bmN0aW9uKCBpZCwgY29udGV4dCApIHsKCQkJaWYgKCB0eXBlb2YgY29udGV4dC5nZXRFbGVtZW50QnlJZCAhPT0gInVuZGVmaW5lZCIgJiYgZG9jdW1lbnRJc0hUTUwgKSB7CgkJCQl2YXIgZWxlbSA9IGNvbnRleHQuZ2V0RWxlbWVudEJ5SWQoIGlkICk7CgkJCQlyZXR1cm4gZWxlbSA/IFsgZWxlbSBdIDogW107CgkJCX0KCQl9OwoJfSBlbHNlIHsKCQlFeHByLmZpbHRlclsiSUQiXSA9ICBmdW5jdGlvbiggaWQgKSB7CgkJCXZhciBhdHRySWQgPSBpZC5yZXBsYWNlKCBydW5lc2NhcGUsIGZ1bmVzY2FwZSApOwoJCQlyZXR1cm4gZnVuY3Rpb24oIGVsZW0gKSB7CgkJCQl2YXIgbm9kZSA9IHR5cGVvZiBlbGVtLmdldEF0dHJpYnV0ZU5vZGUgIT09ICJ1bmRlZmluZWQiICYmCgkJCQkJZWxlbS5nZXRBdHRyaWJ1dGVOb2RlKCJpZCIpOwoJCQkJcmV0dXJuIG5vZGUgJiYgbm9kZS52YWx1ZSA9PT0gYXR0cklkOwoJCQl9OwoJCX07CgoJCS8vIFN1cHBvcnQ6IElFIDYgLSA3IG9ubHkKCQkvLyBnZXRFbGVtZW50QnlJZCBpcyBub3QgcmVsaWFibGUgYXMgYSBmaW5kIHNob3J0Y3V0CgkJRXhwci5maW5kWyJJRCJdID0gZnVuY3Rpb24oIGlkLCBjb250ZXh0ICkgewoJCQlpZiAoIHR5cGVvZiBjb250ZXh0LmdldEVsZW1lbnRCeUlkICE9PSAidW5kZWZpbmVkIiAmJiBkb2N1bWVudElzSFRNTCApIHsKCQkJCXZhciBub2RlLCBpLCBlbGVtcywKCQkJCQllbGVtID0gY29udGV4dC5nZXRFbGVtZW50QnlJZCggaWQgKTsKCgkJCQlpZiAoIGVsZW0gKSB7CgoJCQkJCS8vIFZlcmlmeSB0aGUgaWQgYXR0cmlidXRlCgkJCQkJbm9kZSA9IGVsZW0uZ2V0QXR0cmlidXRlTm9kZSgiaWQiKTsKCQkJCQlpZiAoIG5vZGUgJiYgbm9kZS52YWx1ZSA9PT0gaWQgKSB7CgkJCQkJCXJldHVybiBbIGVsZW0gXTsKCQkJCQl9CgoJCQkJCS8vIEZhbGwgYmFjayBvbiBnZXRFbGVtZW50c0J5TmFtZQoJCQkJCWVsZW1zID0gY29udGV4dC5nZXRFbGVtZW50c0J5TmFtZSggaWQgKTsKCQkJCQlpID0gMDsKCQkJCQl3aGlsZSAoIChlbGVtID0gZWxlbXNbaSsrXSkgKSB7CgkJCQkJCW5vZGUgPSBlbGVtLmdldEF0dHJpYnV0ZU5vZGUoImlkIik7CgkJCQkJCWlmICggbm9kZSAmJiBub2RlLnZhbHVlID09PSBpZCApIHsKCQkJCQkJCXJldHVybiBbIGVsZW0gXTsKCQkJCQkJfQoJCQkJCX0KCQkJCX0KCgkJCQlyZXR1cm4gW107CgkJCX0KCQl9OwoJfQoKCS8vIFRhZwoJRXhwci5maW5kWyJUQUciXSA9IHN1cHBvcnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUgPwoJCWZ1bmN0aW9uKCB0YWcsIGNvbnRleHQgKSB7CgkJCWlmICggdHlwZW9mIGNvbnRleHQuZ2V0RWxlbWVudHNCeVRhZ05hbWUgIT09ICJ1bmRlZmluZWQiICkgewoJCQkJcmV0dXJuIGNvbnRleHQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIHRhZyApOwoKCQkJLy8gRG9jdW1lbnRGcmFnbWVudCBub2RlcyBkb24ndCBoYXZlIGdFQlROCgkJCX0gZWxzZSBpZiAoIHN1cHBvcnQucXNhICkgewoJCQkJcmV0dXJuIGNvbnRleHQucXVlcnlTZWxlY3RvckFsbCggdGFnICk7CgkJCX0KCQl9IDoKCgkJZnVuY3Rpb24oIHRhZywgY29udGV4dCApIHsKCQkJdmFyIGVsZW0sCgkJCQl0bXAgPSBbXSwKCQkJCWkgPSAwLAoJCQkJLy8gQnkgaGFwcHkgY29pbmNpZGVuY2UsIGEgKGJyb2tlbikgZ0VCVE4gYXBwZWFycyBvbiBEb2N1bWVudEZyYWdtZW50IG5vZGVzIHRvbwoJCQkJcmVzdWx0cyA9IGNvbnRleHQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoIHRhZyApOwoKCQkJLy8gRmlsdGVyIG91dCBwb3NzaWJsZSBjb21tZW50cwoJCQlpZiAoIHRhZyA9PT0gIioiICkgewoJCQkJd2hpbGUgKCAoZWxlbSA9IHJlc3VsdHNbaSsrXSkgKSB7CgkJCQkJaWYgKCBlbGVtLm5vZGVUeXBlID09PSAxICkgewoJCQkJCQl0bXAucHVzaCggZWxlbSApOwoJCQkJCX0KCQkJCX0KCgkJCQlyZXR1cm4gdG1wOwoJCQl9CgkJCXJldHVybiByZXN1bHRzOwoJCX07CgoJLy8gQ2xhc3MKCUV4cHIuZmluZFsiQ0xBU1MiXSA9IHN1cHBvcnQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSAmJiBmdW5jdGlvbiggY2xhc3NOYW1lLCBjb250ZXh0ICkgewoJCWlmICggdHlwZW9mIGNvbnRleHQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSAhPT0gInVuZGVmaW5lZCIgJiYgZG9jdW1lbnRJc0hUTUwgKSB7CgkJCXJldHVybiBjb250ZXh0LmdldEVsZW1lbnRzQnlDbGFzc05hbWUoIGNsYXNzTmFtZSApOwoJCX0KCX07CgoJLyogUVNBL21hdGNoZXNTZWxlY3RvcgoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwoKCS8vIFFTQSBhbmQgbWF0Y2hlc1NlbGVjdG9yIHN1cHBvcnQKCgkvLyBtYXRjaGVzU2VsZWN0b3IoOmFjdGl2ZSkgcmVwb3J0cyBmYWxzZSB3aGVuIHRydWUgKElFOS9PcGVyYSAxMS41KQoJcmJ1Z2d5TWF0Y2hlcyA9IFtdOwoKCS8vIHFTYSg6Zm9jdXMpIHJlcG9ydHMgZmFsc2Ugd2hlbiB0cnVlIChDaHJvbWUgMjEpCgkvLyBXZSBhbGxvdyB0aGlzIGJlY2F1c2Ugb2YgYSBidWcgaW4gSUU4LzkgdGhhdCB0aHJvd3MgYW4gZXJyb3IKCS8vIHdoZW5ldmVyIGBkb2N1bWVudC5hY3RpdmVFbGVtZW50YCBpcyBhY2Nlc3NlZCBvbiBhbiBpZnJhbWUKCS8vIFNvLCB3ZSBhbGxvdyA6Zm9jdXMgdG8gcGFzcyB0aHJvdWdoIFFTQSBhbGwgdGhlIHRpbWUgdG8gYXZvaWQgdGhlIElFIGVycm9yCgkvLyBTZWUgaHR0cHM6Ly9idWdzLmpxdWVyeS5jb20vdGlja2V0LzEzMzc4CglyYnVnZ3lRU0EgPSBbXTsKCglpZiAoIChzdXBwb3J0LnFzYSA9IHJuYXRpdmUudGVzdCggZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCApKSApIHsKCQkvLyBCdWlsZCBRU0EgcmVnZXgKCQkvLyBSZWdleCBzdHJhdGVneSBhZG9wdGVkIGZyb20gRGllZ28gUGVyaW5pCgkJYXNzZXJ0KGZ1bmN0aW9uKCBlbCApIHsKCQkJLy8gU2VsZWN0IGlzIHNldCB0byBlbXB0eSBzdHJpbmcgb24gcHVycG9zZQoJCQkvLyBUaGlzIGlzIHRvIHRlc3QgSUUncyB0cmVhdG1lbnQgb2Ygbm90IGV4cGxpY2l0bHkKCQkJLy8gc2V0dGluZyBhIGJvb2xlYW4gY29udGVudCBhdHRyaWJ1dGUsCgkJCS8vIHNpbmNlIGl0cyBwcmVzZW5jZSBzaG91bGQgYmUgZW5vdWdoCgkJCS8vIGh0dHBzOi8vYnVncy5qcXVlcnkuY29tL3RpY2tldC8xMjM1OQoJCQlkb2NFbGVtLmFwcGVuZENoaWxkKCBlbCApLmlubmVySFRNTCA9ICI8YSBpZD0nIiArIGV4cGFuZG8gKyAiJz48L2E+IiArCgkJCQkiPHNlbGVjdCBpZD0nIiArIGV4cGFuZG8gKyAiLVxyXFwnIG1zYWxsb3djYXB0dXJlPScnPiIgKwoJCQkJIjxvcHRpb24gc2VsZWN0ZWQ9Jyc+PC9vcHRpb24+PC9zZWxlY3Q+IjsKCgkJCS8vIFN1cHBvcnQ6IElFOCwgT3BlcmEgMTEtMTIuMTYKCQkJLy8gTm90aGluZyBzaG91bGQgYmUgc2VsZWN0ZWQgd2hlbiBlbXB0eSBzdHJpbmdzIGZvbGxvdyBePSBvciAkPSBvciAqPQoJCQkvLyBUaGUgdGVzdCBhdHRyaWJ1dGUgbXVzdCBiZSB1bmtub3duIGluIE9wZXJhIGJ1dCAic2FmZSIgZm9yIFdpblJUCgkJCS8vIGh0dHBzOi8vbXNkbi5taWNyb3NvZnQuY29tL2VuLXVzL2xpYnJhcnkvaWUvaGg0NjUzODguYXNweCNhdHRyaWJ1dGVfc2VjdGlvbgoJCQlpZiAoIGVsLnF1ZXJ5U2VsZWN0b3JBbGwoIlttc2FsbG93Y2FwdHVyZV49JyddIikubGVuZ3RoICkgewoJCQkJcmJ1Z2d5UVNBLnB1c2goICJbKl4kXT0iICsgd2hpdGVzcGFjZSArICIqKD86Jyd8XCJcIikiICk7CgkJCX0KCgkJCS8vIFN1cHBvcnQ6IElFOAoJCQkvLyBCb29sZWFuIGF0dHJpYnV0ZXMgYW5kICJ2YWx1ZSIgYXJlIG5vdCB0cmVhdGVkIGNvcnJlY3RseQoJCQlpZiAoICFlbC5xdWVyeVNlbGVjdG9yQWxsKCJbc2VsZWN0ZWRdIikubGVuZ3RoICkgewoJCQkJcmJ1Z2d5UVNBLnB1c2goICJcXFsiICsgd2hpdGVzcGFjZSArICIqKD86dmFsdWV8IiArIGJvb2xlYW5zICsgIikiICk7CgkJCX0KCgkJCS8vIFN1cHBvcnQ6IENocm9tZTwyOSwgQW5kcm9pZDw0LjQsIFNhZmFyaTw3LjArLCBpT1M8Ny4wKywgUGhhbnRvbUpTPDEuOS44KwoJCQlpZiAoICFlbC5xdWVyeVNlbGVjdG9yQWxsKCAiW2lkfj0iICsgZXhwYW5kbyArICItXSIgKS5sZW5ndGggKSB7CgkJCQlyYnVnZ3lRU0EucHVzaCgifj0iKTsKCQkJfQoKCQkJLy8gV2Via2l0L09wZXJhIC0gOmNoZWNrZWQgc2hvdWxkIHJldHVybiBzZWxlY3RlZCBvcHRpb24gZWxlbWVudHMKCQkJLy8gaHR0cDovL3d3dy53My5vcmcvVFIvMjAxMS9SRUMtY3NzMy1zZWxlY3RvcnMtMjAxMTA5MjkvI2NoZWNrZWQKCQkJLy8gSUU4IHRocm93cyBlcnJvciBoZXJlIGFuZCB3aWxsIG5vdCBzZWUgbGF0ZXIgdGVzdHMKCQkJaWYgKCAhZWwucXVlcnlTZWxlY3RvckFsbCgiOmNoZWNrZWQiKS5sZW5ndGggKSB7CgkJCQlyYnVnZ3lRU0EucHVzaCgiOmNoZWNrZWQiKTsKCQkJfQoKCQkJLy8gU3VwcG9ydDogU2FmYXJpIDgrLCBpT1MgOCsKCQkJLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzNjg1MQoJCQkvLyBJbi1wYWdlIGBzZWxlY3RvciNpZCBzaWJsaW5nLWNvbWJpbmF0b3Igc2VsZWN0b3JgIGZhaWxzCgkJCWlmICggIWVsLnF1ZXJ5U2VsZWN0b3JBbGwoICJhIyIgKyBleHBhbmRvICsgIisqIiApLmxlbmd0aCApIHsKCQkJCXJidWdneVFTQS5wdXNoKCIuIy4rWyt+XSIpOwoJCQl9CgkJfSk7CgoJCWFzc2VydChmdW5jdGlvbiggZWwgKSB7CgkJCWVsLmlubmVySFRNTCA9ICI8YSBocmVmPScnIGRpc2FibGVkPSdkaXNhYmxlZCc+PC9hPiIgKwoJCQkJIjxzZWxlY3QgZGlzYWJsZWQ9J2Rpc2FibGVkJz48b3B0aW9uLz48L3NlbGVjdD4iOwoKCQkJLy8gU3VwcG9ydDogV2luZG93cyA4IE5hdGl2ZSBBcHBzCgkJCS8vIFRoZSB0eXBlIGFuZCBuYW1lIGF0dHJpYnV0ZXMgYXJlIHJlc3RyaWN0ZWQgZHVyaW5nIC5pbm5lckhUTUwgYXNzaWdubWVudAoJCQl2YXIgaW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpOwoJCQlpbnB1dC5zZXRBdHRyaWJ1dGUoICJ0eXBlIiwgImhpZGRlbiIgKTsKCQkJZWwuYXBwZW5kQ2hpbGQoIGlucHV0ICkuc2V0QXR0cmlidXRlKCAibmFtZSIsICJEIiApOwoKCQkJLy8gU3VwcG9ydDogSUU4CgkJCS8vIEVuZm9yY2UgY2FzZS1zZW5zaXRpdml0eSBvZiBuYW1lIGF0dHJpYnV0ZQoJCQlpZiAoIGVsLnF1ZXJ5U2VsZWN0b3JBbGwoIltuYW1lPWRdIikubGVuZ3RoICkgewoJCQkJcmJ1Z2d5UVNBLnB1c2goICJuYW1lIiArIHdoaXRlc3BhY2UgKyAiKlsqXiR8IX5dPz0iICk7CgkJCX0KCgkJCS8vIEZGIDMuNSAtIDplbmFibGVkLzpkaXNhYmxlZCBhbmQgaGlkZGVuIGVsZW1lbnRzIChoaWRkZW4gZWxlbWVudHMgYXJlIHN0aWxsIGVuYWJsZWQpCgkJCS8vIElFOCB0aHJvd3MgZXJyb3IgaGVyZSBhbmQgd2lsbCBub3Qgc2VlIGxhdGVyIHRlc3RzCgkJCWlmICggZWwucXVlcnlTZWxlY3RvckFsbCgiOmVuYWJsZWQiKS5sZW5ndGggIT09IDIgKSB7CgkJCQlyYnVnZ3lRU0EucHVzaCggIjplbmFibGVkIiwgIjpkaXNhYmxlZCIgKTsKCQkJfQoKCQkJLy8gU3VwcG9ydDogSUU5LTExKwoJCQkvLyBJRSdzIDpkaXNhYmxlZCBzZWxlY3RvciBkb2VzIG5vdCBwaWNrIHVwIHRoZSBjaGlsZHJlbiBvZiBkaXNhYmxlZCBmaWVsZHNldHMKCQkJZG9jRWxlbS5hcHBlbmRDaGlsZCggZWwgKS5kaXNhYmxlZCA9IHRydWU7CgkJCWlmICggZWwucXVlcnlTZWxlY3RvckFsbCgiOmRpc2FibGVkIikubGVuZ3RoICE9PSAyICkgewoJCQkJcmJ1Z2d5UVNBLnB1c2goICI6ZW5hYmxlZCIsICI6ZGlzYWJsZWQiICk7CgkJCX0KCgkJCS8vIE9wZXJhIDEwLTExIGRvZXMgbm90IHRocm93IG9uIHBvc3QtY29tbWEgaW52YWxpZCBwc2V1ZG9zCgkJCWVsLnF1ZXJ5U2VsZWN0b3JBbGwoIiosOngiKTsKCQkJcmJ1Z2d5UVNBLnB1c2goIiwuKjoiKTsKCQl9KTsKCX0KCglpZiAoIChzdXBwb3J0Lm1hdGNoZXNTZWxlY3RvciA9IHJuYXRpdmUudGVzdCggKG1hdGNoZXMgPSBkb2NFbGVtLm1hdGNoZXMgfHwKCQlkb2NFbGVtLndlYmtpdE1hdGNoZXNTZWxlY3RvciB8fAoJCWRvY0VsZW0ubW96TWF0Y2hlc1NlbGVjdG9yIHx8CgkJZG9jRWxlbS5vTWF0Y2hlc1NlbGVjdG9yIHx8CgkJZG9jRWxlbS5tc01hdGNoZXNTZWxlY3RvcikgKSkgKSB7CgoJCWFzc2VydChmdW5jdGlvbiggZWwgKSB7CgkJCS8vIENoZWNrIHRvIHNlZSBpZiBpdCdzIHBvc3NpYmxlIHRvIGRvIG1hdGNoZXNTZWxlY3RvcgoJCQkvLyBvbiBhIGRpc2Nvbm5lY3RlZCBub2RlIChJRSA5KQoJCQlzdXBwb3J0LmRpc2Nvbm5lY3RlZE1hdGNoID0gbWF0Y2hlcy5jYWxsKCBlbCwgIioiICk7CgoJCQkvLyBUaGlzIHNob3VsZCBmYWlsIHdpdGggYW4gZXhjZXB0aW9uCgkJCS8vIEdlY2tvIGRvZXMgbm90IGVycm9yLCByZXR1cm5zIGZhbHNlIGluc3RlYWQKCQkJbWF0Y2hlcy5jYWxsKCBlbCwgIltzIT0nJ106eCIgKTsKCQkJcmJ1Z2d5TWF0Y2hlcy5wdXNoKCAiIT0iLCBwc2V1ZG9zICk7CgkJfSk7Cgl9CgoJcmJ1Z2d5UVNBID0gcmJ1Z2d5UVNBLmxlbmd0aCAmJiBuZXcgUmVnRXhwKCByYnVnZ3lRU0Euam9pbigifCIpICk7CglyYnVnZ3lNYXRjaGVzID0gcmJ1Z2d5TWF0Y2hlcy5sZW5ndGggJiYgbmV3IFJlZ0V4cCggcmJ1Z2d5TWF0Y2hlcy5qb2luKCJ8IikgKTsKCgkvKiBDb250YWlucwoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwoJaGFzQ29tcGFyZSA9IHJuYXRpdmUudGVzdCggZG9jRWxlbS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbiApOwoKCS8vIEVsZW1lbnQgY29udGFpbnMgYW5vdGhlcgoJLy8gUHVycG9zZWZ1bGx5IHNlbGYtZXhjbHVzaXZlCgkvLyBBcyBpbiwgYW4gZWxlbWVudCBkb2VzIG5vdCBjb250YWluIGl0c2VsZgoJY29udGFpbnMgPSBoYXNDb21wYXJlIHx8IHJuYXRpdmUudGVzdCggZG9jRWxlbS5jb250YWlucyApID8KCQlmdW5jdGlvbiggYSwgYiApIHsKCQkJdmFyIGFkb3duID0gYS5ub2RlVHlwZSA9PT0gOSA/IGEuZG9jdW1lbnRFbGVtZW50IDogYSwKCQkJCWJ1cCA9IGIgJiYgYi5wYXJlbnROb2RlOwoJCQlyZXR1cm4gYSA9PT0gYnVwIHx8ICEhKCBidXAgJiYgYnVwLm5vZGVUeXBlID09PSAxICYmICgKCQkJCWFkb3duLmNvbnRhaW5zID8KCQkJCQlhZG93bi5jb250YWlucyggYnVwICkgOgoJCQkJCWEuY29tcGFyZURvY3VtZW50UG9zaXRpb24gJiYgYS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbiggYnVwICkgJiAxNgoJCQkpKTsKCQl9IDoKCQlmdW5jdGlvbiggYSwgYiApIHsKCQkJaWYgKCBiICkgewoJCQkJd2hpbGUgKCAoYiA9IGIucGFyZW50Tm9kZSkgKSB7CgkJCQkJaWYgKCBiID09PSBhICkgewoJCQkJCQlyZXR1cm4gdHJ1ZTsKCQkJCQl9CgkJCQl9CgkJCX0KCQkJcmV0dXJuIGZhbHNlOwoJCX07CgoJLyogU29ydGluZwoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLwoKCS8vIERvY3VtZW50IG9yZGVyIHNvcnRpbmcKCXNvcnRPcmRlciA9IGhhc0NvbXBhcmUgPwoJZnVuY3Rpb24oIGEsIGIgKSB7CgoJCS8vIEZsYWcgZm9yIGR1cGxpY2F0ZSByZW1vdmFsCgkJaWYgKCBhID09PSBiICkgewoJCQloYXNEdXBsaWNhdGUgPSB0cnVlOwoJCQlyZXR1cm4gMDsKCQl9CgoJCS8vIFNvcnQgb24gbWV0aG9kIGV4aXN0ZW5jZSBpZiBvbmx5IG9uZSBpbnB1dCBoYXMgY29tcGFyZURvY3VtZW50UG9zaXRpb24KCQl2YXIgY29tcGFyZSA9ICFhLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uIC0gIWIuY29tcGFyZURvY3VtZW50UG9zaXRpb247CgkJaWYgKCBjb21wYXJlICkgewoJCQlyZXR1cm4gY29tcGFyZTsKCQl9CgoJCS8vIENhbGN1bGF0ZSBwb3NpdGlvbiBpZiBib3RoIGlucHV0cyBiZWxvbmcgdG8gdGhlIHNhbWUgZG9jdW1lbnQKCQljb21wYXJlID0gKCBhLm93bmVyRG9jdW1lbnQgfHwgYSApID09PSAoIGIub3duZXJEb2N1bWVudCB8fCBiICkgPwoJCQlhLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKCBiICkgOgoKCQkJLy8gT3RoZXJ3aXNlIHdlIGtub3cgdGhleSBhcmUgZGlzY29ubmVjdGVkCgkJCTE7CgoJCS8vIERpc2Nvbm5lY3RlZCBub2RlcwoJCWlmICggY29tcGFyZSAmIDEgfHwKCQkJKCFzdXBwb3J0LnNvcnREZXRhY2hlZCAmJiBiLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKCBhICkgPT09IGNvbXBhcmUpICkgewoKCQkJLy8gQ2hvb3NlIHRoZSBmaXJzdCBlbGVtZW50IHRoYXQgaXMgcmVsYXRlZCB0byBvdXIgcHJlZmVycmVkIGRvY3VtZW50CgkJCWlmICggYSA9PT0gZG9jdW1lbnQgfHwgYS5vd25lckRvY3VtZW50ID09PSBwcmVmZXJyZWREb2MgJiYgY29udGFpbnMocHJlZmVycmVkRG9jLCBhKSApIHsKCQkJCXJldHVybiAtMTsKCQkJfQoJCQlpZiAoIGIgPT09IGRvY3VtZW50IHx8IGIub3duZXJEb2N1bWVudCA9PT0gcHJlZmVycmVkRG9jICYmIGNvbnRhaW5zKHByZWZlcnJlZERvYywgYikgKSB7CgkJCQlyZXR1cm4gMTsKCQkJfQoKCQkJLy8gTWFpbnRhaW4gb3JpZ2luYWwgb3JkZXIKCQkJcmV0dXJuIHNvcnRJbnB1dCA/CgkJCQkoIGluZGV4T2YoIHNvcnRJbnB1dCwgYSApIC0gaW5kZXhPZiggc29ydElucHV0LCBiICkgKSA6CgkJCQkwOwoJCX0KCgkJcmV0dXJuIGNvbXBhcmUgJiA0ID8gLTEgOiAxOwoJfSA6CglmdW5jdGlvbiggYSwgYiApIHsKCQkvLyBFeGl0IGVhcmx5IGlmIHRoZSBub2RlcyBhcmUgaWRlbnRpY2FsCgkJaWYgKCBhID09PSBiICkgewoJCQloYXNEdXBsaWNhdGUgPSB0cnVlOwoJCQlyZXR1cm4gMDsKCQl9CgoJCXZhciBjdXIsCgkJCWkgPSAwLAoJCQlhdXAgPSBhLnBhcmVudE5vZGUsCgkJCWJ1cCA9IGIucGFyZW50Tm9kZSwKCQkJYXAgPSBbIGEgXSwKCQkJYnAgPSBbIGIgXTsKCgkJLy8gUGFyZW50bGVzcyBub2RlcyBhcmUgZWl0aGVyIGRvY3VtZW50cyBvciBkaXNjb25uZWN0ZWQKCQlpZiAoICFhdXAgfHwgIWJ1cCApIHsKCQkJcmV0dXJuIGEgPT09IGRvY3VtZW50ID8gLTEgOgoJCQkJYiA9PT0gZG9jdW1lbnQgPyAxIDoKCQkJCWF1cCA/IC0xIDoKCQkJCWJ1cCA/IDEgOgoJCQkJc29ydElucHV0ID8KCQkJCSggaW5kZXhPZiggc29ydElucHV0LCBhICkgLSBpbmRleE9mKCBzb3J0SW5wdXQsIGIgKSApIDoKCQkJCTA7CgoJCS8vIElmIHRoZSBub2RlcyBhcmUgc2libGluZ3MsIHdlIGNhbiBkbyBhIHF1aWNrIGNoZWNrCgkJfSBlbHNlIGlmICggYXVwID09PSBidXAgKSB7CgkJCXJldHVybiBzaWJsaW5nQ2hlY2soIGEsIGIgKTsKCQl9CgoJCS8vIE90aGVyd2lzZSB3ZSBuZWVkIGZ1bGwgbGlzdHMgb2YgdGhlaXIgYW5jZXN0b3JzIGZvciBjb21wYXJpc29uCgkJY3VyID0gYTsKCQl3aGlsZSAoIChjdXIgPSBjdXIucGFyZW50Tm9kZSkgKSB7CgkJCWFwLnVuc2hpZnQoIGN1ciApOwoJCX0KCQljdXIgPSBiOwoJCXdoaWxlICggKGN1ciA9IGN1ci5wYXJlbnROb2RlKSApIHsKCQkJYnAudW5zaGlmdCggY3VyICk7CgkJfQoKCQkvLyBXYWxrIGRvd24gdGhlIHRyZWUgbG9va2luZyBmb3IgYSBkaXNjcmVwYW5jeQoJCXdoaWxlICggYXBbaV0gPT09IGJwW2ldICkgewoJCQlpKys7CgkJfQoKCQlyZXR1cm4gaSA/CgkJCS8vIERvIGEgc2libGluZyBjaGVjayBpZiB0aGUgbm9kZXMgaGF2ZSBhIGNvbW1vbiBhbmNlc3RvcgoJCQlzaWJsaW5nQ2hlY2soIGFwW2ldLCBicFtpXSApIDoKCgkJCS8vIE90aGVyd2lzZSBub2RlcyBpbiBvdXIgZG9jdW1lbnQgc29ydCBmaXJzdAoJCQlhcFtpXSA9PT0gcHJlZmVycmVkRG9jID8gLTEgOgoJCQlicFtpXSA9PT0gcHJlZmVycmVkRG9jID8gMSA6CgkJCTA7Cgl9OwoKCXJldHVybiBkb2N1bWVudDsKfTsKClNpenpsZS5tYXRjaGVzID0gZnVuY3Rpb24oIGV4cHIsIGVsZW1lbnRzICkgewoJcmV0dXJuIFNpenpsZSggZXhwciwgbnVsbCwgbnVsbCwgZWxlbWVudHMgKTsKfTsKClNpenpsZS5tYXRjaGVzU2VsZWN0b3IgPSBmdW5jdGlvbiggZWxlbSwgZXhwciApIHsKCS8vIFNldCBkb2N1bWVudCB2YXJzIGlmIG5lZWRlZAoJaWYgKCAoIGVsZW0ub3duZXJEb2N1bWVudCB8fCBlbGVtICkgIT09IGRvY3VtZW50ICkgewoJCXNldERvY3VtZW50KCBlbGVtICk7Cgl9CgoJLy8gTWFrZSBzdXJlIHRoYXQgYXR0cmlidXRlIHNlbGVjdG9ycyBhcmUgcXVvdGVkCglleHByID0gZXhwci5yZXBsYWNlKCByYXR0cmlidXRlUXVvdGVzLCAiPSckMSddIiApOwoKCWlmICggc3VwcG9ydC5tYXRjaGVzU2VsZWN0b3IgJiYgZG9jdW1lbnRJc0hUTUwgJiYKCQkhY29tcGlsZXJDYWNoZVsgZXhwciArICIgIiBdICYmCgkJKCAhcmJ1Z2d5TWF0Y2hlcyB8fCAhcmJ1Z2d5TWF0Y2hlcy50ZXN0KCBleHByICkgKSAmJgoJCSggIXJidWdneVFTQSAgICAgfHwgIXJidWdneVFTQS50ZXN0KCBleHByICkgKSApIHsKCgkJdHJ5IHsKCQkJdmFyIHJldCA9IG1hdGNoZXMuY2FsbCggZWxlbSwgZXhwciApOwoKCQkJLy8gSUUgOSdzIG1hdGNoZXNTZWxlY3RvciByZXR1cm5zIGZhbHNlIG9uIGRpc2Nvbm5lY3RlZCBub2RlcwoJCQlpZiAoIHJldCB8fCBzdXBwb3J0LmRpc2Nvbm5lY3RlZE1hdGNoIHx8CgkJCQkJLy8gQXMgd2VsbCwgZGlzY29ubmVjdGVkIG5vZGVzIGFyZSBzYWlkIHRvIGJlIGluIGEgZG9jdW1lbnQKCQkJCQkvLyBmcmFnbWVudCBpbiBJRSA5CgkJCQkJZWxlbS5kb2N1bWVudCAmJiBlbGVtLmRvY3VtZW50Lm5vZGVUeXBlICE9PSAxMSApIHsKCQkJCXJldHVybiByZXQ7CgkJCX0KCQl9IGNhdGNoIChlKSB7fQoJfQoKCXJldHVybiBTaXp6bGUoIGV4cHIsIGRvY3VtZW50LCBudWxsLCBbIGVsZW0gXSApLmxlbmd0aCA+IDA7Cn07CgpTaXp6bGUuY29udGFpbnMgPSBmdW5jdGlvbiggY29udGV4dCwgZWxlbSApIHsKCS8vIFNldCBkb2N1bWVudCB2YXJzIGlmIG5lZWRlZAoJaWYgKCAoIGNvbnRleHQub3duZXJEb2N1bWVudCB8fCBjb250ZXh0ICkgIT09IGRvY3VtZW50ICkgewoJCXNldERvY3VtZW50KCBjb250ZXh0ICk7Cgl9CglyZXR1cm4gY29udGFpbnMoIGNvbnRleHQsIGVsZW0gKTsKfTsKClNpenpsZS5hdHRyID0gZnVuY3Rpb24oIGVsZW0sIG5hbWUgKSB7CgkvLyBTZXQgZG9jdW1lbnQgdmFycyBpZiBuZWVkZWQKCWlmICggKCBlbGVtLm93bmVyRG9jdW1lbnQgfHwgZWxlbSApICE9PSBkb2N1bWVudCApIHsKCQlzZXREb2N1bWVudCggZWxlbSApOwoJfQoKCXZhciBmbiA9IEV4cHIuYXR0ckhhbmRsZVsgbmFtZS50b0xvd2VyQ2FzZSgpIF0sCgkJLy8gRG9uJ3QgZ2V0IGZvb2xlZCBieSBPYmplY3QucHJvdG90eXBlIHByb3BlcnRpZXMgKGpRdWVyeSAjMTM4MDcpCgkJdmFsID0gZm4gJiYgaGFzT3duLmNhbGwoIEV4cHIuYXR0ckhhbmRsZSwgbmFtZS50b0xvd2VyQ2FzZSgpICkgPwoJCQlmbiggZWxlbSwgbmFtZSwgIWRvY3VtZW50SXNIVE1MICkgOgoJCQl1bmRlZmluZWQ7CgoJcmV0dXJuIHZhbCAhPT0gdW5kZWZpbmVkID8KCQl2YWwgOgoJCXN1cHBvcnQuYXR0cmlidXRlcyB8fCAhZG9jdW1lbnRJc0hUTUwgPwoJCQllbGVtLmdldEF0dHJpYnV0ZSggbmFtZSApIDoKCQkJKHZhbCA9IGVsZW0uZ2V0QXR0cmlidXRlTm9kZShuYW1lKSkgJiYgdmFsLnNwZWNpZmllZCA/CgkJCQl2YWwudmFsdWUgOgoJCQkJbnVsbDsKfTsKClNpenpsZS5lc2NhcGUgPSBmdW5jdGlvbiggc2VsICkgewoJcmV0dXJuIChzZWwgKyAiIikucmVwbGFjZSggcmNzc2VzY2FwZSwgZmNzc2VzY2FwZSApOwp9OwoKU2l6emxlLmVycm9yID0gZnVuY3Rpb24oIG1zZyApIHsKCXRocm93IG5ldyBFcnJvciggIlN5bnRheCBlcnJvciwgdW5yZWNvZ25pemVkIGV4cHJlc3Npb246ICIgKyBtc2cgKTsKfTsKCi8qKgogKiBEb2N1bWVudCBzb3J0aW5nIGFuZCByZW1vdmluZyBkdXBsaWNhdGVzCiAqIEBwYXJhbSB7QXJyYXlMaWtlfSByZXN1bHRzCiAqLwpTaXp6bGUudW5pcXVlU29ydCA9IGZ1bmN0aW9uKCByZXN1bHRzICkgewoJdmFyIGVsZW0sCgkJZHVwbGljYXRlcyA9IFtdLAoJCWogPSAwLAoJCWkgPSAwOwoKCS8vIFVubGVzcyB3ZSAqa25vdyogd2UgY2FuIGRldGVjdCBkdXBsaWNhdGVzLCBhc3N1bWUgdGhlaXIgcHJlc2VuY2UKCWhhc0R1cGxpY2F0ZSA9ICFzdXBwb3J0LmRldGVjdER1cGxpY2F0ZXM7Cglzb3J0SW5wdXQgPSAhc3VwcG9ydC5zb3J0U3RhYmxlICYmIHJlc3VsdHMuc2xpY2UoIDAgKTsKCXJlc3VsdHMuc29ydCggc29ydE9yZGVyICk7CgoJaWYgKCBoYXNEdXBsaWNhdGUgKSB7CgkJd2hpbGUgKCAoZWxlbSA9IHJlc3VsdHNbaSsrXSkgKSB7CgkJCWlmICggZWxlbSA9PT0gcmVzdWx0c1sgaSBdICkgewoJCQkJaiA9IGR1cGxpY2F0ZXMucHVzaCggaSApOwoJCQl9CgkJfQoJCXdoaWxlICggai0tICkgewoJCQlyZXN1bHRzLnNwbGljZSggZHVwbGljYXRlc1sgaiBdLCAxICk7CgkJfQoJfQoKCS8vIENsZWFyIGlucHV0IGFmdGVyIHNvcnRpbmcgdG8gcmVsZWFzZSBvYmplY3RzCgkvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2pxdWVyeS9zaXp6bGUvcHVsbC8yMjUKCXNvcnRJbnB1dCA9IG51bGw7CgoJcmV0dXJuIHJlc3VsdHM7Cn07CgovKioKICogVXRpbGl0eSBmdW5jdGlvbiBmb3IgcmV0cmlldmluZyB0aGUgdGV4dCB2YWx1ZSBvZiBhbiBhcnJheSBvZiBET00gbm9kZXMKICogQHBhcmFtIHtBcnJheXxFbGVtZW50fSBlbGVtCiAqLwpnZXRUZXh0ID0gU2l6emxlLmdldFRleHQgPSBmdW5jdGlvbiggZWxlbSApIHsKCXZhciBub2RlLAoJCXJldCA9ICIiLAoJCWkgPSAwLAoJCW5vZGVUeXBlID0gZWxlbS5ub2RlVHlwZTsKCglpZiAoICFub2RlVHlwZSApIHsKCQkvLyBJZiBubyBub2RlVHlwZSwgdGhpcyBpcyBleHBlY3RlZCB0byBiZSBhbiBhcnJheQoJCXdoaWxlICggKG5vZGUgPSBlbGVtW2krK10pICkgewoJCQkvLyBEbyBub3QgdHJhdmVyc2UgY29tbWVudCBub2RlcwoJCQlyZXQgKz0gZ2V0VGV4dCggbm9kZSApOwoJCX0KCX0gZWxzZSBpZiAoIG5vZGVUeXBlID09PSAxIHx8IG5vZGVUeXBlID09PSA5IHx8IG5vZGVUeXBlID09PSAxMSApIHsKCQkvLyBVc2UgdGV4dENvbnRlbnQgZm9yIGVsZW1lbnRzCgkJLy8gaW5uZXJUZXh0IHVzYWdlIHJlbW92ZWQgZm9yIGNvbnNpc3RlbmN5IG9mIG5ldyBsaW5lcyAoalF1ZXJ5ICMxMTE1MykKCQlpZiAoIHR5cGVvZiBlbGVtLnRleHRDb250ZW50ID09PSAic3RyaW5nIiApIHsKCQkJcmV0dXJuIGVsZW0udGV4dENvbnRlbnQ7CgkJfSBlbHNlIHsKCQkJLy8gVHJhdmVyc2UgaXRzIGNoaWxkcmVuCgkJCWZvciAoIGVsZW0gPSBlbGVtLmZpcnN0Q2hpbGQ7IGVsZW07IGVsZW0gPSBlbGVtLm5leHRTaWJsaW5nICkgewoJCQkJcmV0ICs9IGdldFRleHQoIGVsZW0gKTsKCQkJfQoJCX0KCX0gZWxzZSBpZiAoIG5vZGVUeXBlID09PSAzIHx8IG5vZGVUeXBlID09PSA0ICkgewoJCXJldHVybiBlbGVtLm5vZGVWYWx1ZTsKCX0KCS8vIERvIG5vdCBpbmNsdWRlIGNvbW1lbnQgb3IgcHJvY2Vzc2luZyBpbnN0cnVjdGlvbiBub2RlcwoKCXJldHVybiByZXQ7Cn07CgpFeHByID0gU2l6emxlLnNlbGVjdG9ycyA9IHsKCgkvLyBDYW4gYmUgYWRqdXN0ZWQgYnkgdGhlIHVzZXIKCWNhY2hlTGVuZ3RoOiA1MCwKCgljcmVhdGVQc2V1ZG86IG1hcmtGdW5jdGlvbiwKCgltYXRjaDogbWF0Y2hFeHByLAoKCWF0dHJIYW5kbGU6IHt9LAoKCWZpbmQ6IHt9LAoKCXJlbGF0aXZlOiB7CgkJIj4iOiB7IGRpcjogInBhcmVudE5vZGUiLCBmaXJzdDogdHJ1ZSB9LAoJCSIgIjogeyBkaXI6ICJwYXJlbnROb2RlIiB9LAoJCSIrIjogeyBkaXI6ICJwcmV2aW91c1NpYmxpbmciLCBmaXJzdDogdHJ1ZSB9LAoJCSJ+IjogeyBkaXI6ICJwcmV2aW91c1NpYmxpbmciIH0KCX0sCgoJcHJlRmlsdGVyOiB7CgkJIkFUVFIiOiBmdW5jdGlvbiggbWF0Y2ggKSB7CgkJCW1hdGNoWzFdID0gbWF0Y2hbMV0ucmVwbGFjZSggcnVuZXNjYXBlLCBmdW5lc2NhcGUgKTsKCgkJCS8vIE1vdmUgdGhlIGdpdmVuIHZhbHVlIHRvIG1hdGNoWzNdIHdoZXRoZXIgcXVvdGVkIG9yIHVucXVvdGVkCgkJCW1hdGNoWzNdID0gKCBtYXRjaFszXSB8fCBtYXRjaFs0XSB8fCBtYXRjaFs1XSB8fCAiIiApLnJlcGxhY2UoIHJ1bmVzY2FwZSwgZnVuZXNjYXBlICk7CgoJCQlpZiAoIG1hdGNoWzJdID09PSAifj0iICkgewoJCQkJbWF0Y2hbM10gPSAiICIgKyBtYXRjaFszXSArICIgIjsKCQkJfQoKCQkJcmV0dXJuIG1hdGNoLnNsaWNlKCAwLCA0ICk7CgkJfSwKCgkJIkNISUxEIjogZnVuY3Rpb24oIG1hdGNoICkgewoJCQkvKiBtYXRjaGVzIGZyb20gbWF0Y2hFeHByWyJDSElMRCJdCgkJCQkxIHR5cGUgKG9ubHl8bnRofC4uLikKCQkJCTIgd2hhdCAoY2hpbGR8b2YtdHlwZSkKCQkJCTMgYXJndW1lbnQgKGV2ZW58b2RkfFxkKnxcZCpuKFsrLV1cZCspP3wuLi4pCgkJCQk0IHhuLWNvbXBvbmVudCBvZiB4bit5IGFyZ3VtZW50IChbKy1dP1xkKm58KQoJCQkJNSBzaWduIG9mIHhuLWNvbXBvbmVudAoJCQkJNiB4IG9mIHhuLWNvbXBvbmVudAoJCQkJNyBzaWduIG9mIHktY29tcG9uZW50CgkJCQk4IHkgb2YgeS1jb21wb25lbnQKCQkJKi8KCQkJbWF0Y2hbMV0gPSBtYXRjaFsxXS50b0xvd2VyQ2FzZSgpOwoKCQkJaWYgKCBtYXRjaFsxXS5zbGljZSggMCwgMyApID09PSAibnRoIiApIHsKCQkJCS8vIG50aC0qIHJlcXVpcmVzIGFyZ3VtZW50CgkJCQlpZiAoICFtYXRjaFszXSApIHsKCQkJCQlTaXp6bGUuZXJyb3IoIG1hdGNoWzBdICk7CgkJCQl9CgoJCQkJLy8gbnVtZXJpYyB4IGFuZCB5IHBhcmFtZXRlcnMgZm9yIEV4cHIuZmlsdGVyLkNISUxECgkJCQkvLyByZW1lbWJlciB0aGF0IGZhbHNlL3RydWUgY2FzdCByZXNwZWN0aXZlbHkgdG8gMC8xCgkJCQltYXRjaFs0XSA9ICsoIG1hdGNoWzRdID8gbWF0Y2hbNV0gKyAobWF0Y2hbNl0gfHwgMSkgOiAyICogKCBtYXRjaFszXSA9PT0gImV2ZW4iIHx8IG1hdGNoWzNdID09PSAib2RkIiApICk7CgkJCQltYXRjaFs1XSA9ICsoICggbWF0Y2hbN10gKyBtYXRjaFs4XSApIHx8IG1hdGNoWzNdID09PSAib2RkIiApOwoKCQkJLy8gb3RoZXIgdHlwZXMgcHJvaGliaXQgYXJndW1lbnRzCgkJCX0gZWxzZSBpZiAoIG1hdGNoWzNdICkgewoJCQkJU2l6emxlLmVycm9yKCBtYXRjaFswXSApOwoJCQl9CgoJCQlyZXR1cm4gbWF0Y2g7CgkJfSwKCgkJIlBTRVVETyI6IGZ1bmN0aW9uKCBtYXRjaCApIHsKCQkJdmFyIGV4Y2VzcywKCQkJCXVucXVvdGVkID0gIW1hdGNoWzZdICYmIG1hdGNoWzJdOwoKCQkJaWYgKCBtYXRjaEV4cHJbIkNISUxEIl0udGVzdCggbWF0Y2hbMF0gKSApIHsKCQkJCXJldHVybiBudWxsOwoJCQl9CgoJCQkvLyBBY2NlcHQgcXVvdGVkIGFyZ3VtZW50cyBhcy1pcwoJCQlpZiAoIG1hdGNoWzNdICkgewoJCQkJbWF0Y2hbMl0gPSBtYXRjaFs0XSB8fCBtYXRjaFs1XSB8fCAiIjsKCgkJCS8vIFN0cmlwIGV4Y2VzcyBjaGFyYWN0ZXJzIGZyb20gdW5xdW90ZWQgYXJndW1lbnRzCgkJCX0gZWxzZSBpZiAoIHVucXVvdGVkICYmIHJwc2V1ZG8udGVzdCggdW5xdW90ZWQgKSAmJgoJCQkJLy8gR2V0IGV4Y2VzcyBmcm9tIHRva2VuaXplIChyZWN1cnNpdmVseSkKCQkJCShleGNlc3MgPSB0b2tlbml6ZSggdW5xdW90ZWQsIHRydWUgKSkgJiYKCQkJCS8vIGFkdmFuY2UgdG8gdGhlIG5leHQgY2xvc2luZyBwYXJlbnRoZXNpcwoJCQkJKGV4Y2VzcyA9IHVucXVvdGVkLmluZGV4T2YoICIpIiwgdW5xdW90ZWQubGVuZ3RoIC0gZXhjZXNzICkgLSB1bnF1b3RlZC5sZW5ndGgpICkgewoKCQkJCS8vIGV4Y2VzcyBpcyBhIG5lZ2F0aXZlIGluZGV4CgkJCQltYXRjaFswXSA9IG1hdGNoWzBdLnNsaWNlKCAwLCBleGNlc3MgKTsKCQkJCW1hdGNoWzJdID0gdW5xdW90ZWQuc2xpY2UoIDAsIGV4Y2VzcyApOwoJCQl9CgoJCQkvLyBSZXR1cm4gb25seSBjYXB0dXJlcyBuZWVkZWQgYnkgdGhlIHBzZXVkbyBmaWx0ZXIgbWV0aG9kICh0eXBlIGFuZCBhcmd1bWVudCkKCQkJcmV0dXJuIG1hdGNoLnNsaWNlKCAwLCAzICk7CgkJfQoJfSwKCglmaWx0ZXI6IHsKCgkJIlRBRyI6IGZ1bmN0aW9uKCBub2RlTmFtZVNlbGVjdG9yICkgewoJCQl2YXIgbm9kZU5hbWUgPSBub2RlTmFtZVNlbGVjdG9yLnJlcGxhY2UoIHJ1bmVzY2FwZSwgZnVuZXNjYXBlICkudG9Mb3dlckNhc2UoKTsKCQkJcmV0dXJuIG5vZGVOYW1lU2VsZWN0b3IgPT09ICIqIiA/CgkJCQlmdW5jdGlvbigpIHsgcmV0dXJuIHRydWU7IH0gOgoJCQkJZnVuY3Rpb24oIGVsZW0gKSB7CgkJCQkJcmV0dXJuIGVsZW0ubm9kZU5hbWUgJiYgZWxlbS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpID09PSBub2RlTmFtZTsKCQkJCX07CgkJfSwKCgkJIkNMQVNTIjogZnVuY3Rpb24oIGNsYXNzTmFtZSApIHsKCQkJdmFyIHBhdHRlcm4gPSBjbGFzc0NhY2hlWyBjbGFzc05hbWUgKyAiICIgXTsKCgkJCXJldHVybiBwYXR0ZXJuIHx8CgkJCQkocGF0dGVybiA9IG5ldyBSZWdFeHAoICIoXnwiICsgd2hpdGVzcGFjZSArICIpIiArIGNsYXNzTmFtZSArICIoIiArIHdoaXRlc3BhY2UgKyAifCQpIiApKSAmJgoJCQkJY2xhc3NDYWNoZSggY2xhc3NOYW1lLCBmdW5jdGlvbiggZWxlbSApIHsKCQkJCQlyZXR1cm4gcGF0dGVybi50ZXN0KCB0eXBlb2YgZWxlbS5jbGFzc05hbWUgPT09ICJzdHJpbmciICYmIGVsZW0uY2xhc3NOYW1lIHx8IHR5cGVvZiBlbGVtLmdldEF0dHJpYnV0ZSAhPT0gInVuZGVmaW5lZCIgJiYgZWxlbS5nZXRBdHRyaWJ1dGUoImNsYXNzIikgfHwgIiIgKTsKCQkJCX0pOwoJCX0sCgoJCSJBVFRSIjogZnVuY3Rpb24oIG5hbWUsIG9wZXJhdG9yLCBjaGVjayApIHsKCQkJcmV0dXJuIGZ1bmN0aW9uKCBlbGVtICkgewoJCQkJdmFyIHJlc3VsdCA9IFNpenpsZS5hdHRyKCBlbGVtLCBuYW1lICk7CgoJCQkJaWYgKCByZXN1bHQgPT0gbnVsbCApIHsKCQkJCQlyZXR1cm4gb3BlcmF0b3IgPT09ICIhPSI7CgkJCQl9CgkJCQlpZiAoICFvcGVyYXRvciApIHsKCQkJCQlyZXR1cm4gdHJ1ZTsKCQkJCX0KCgkJCQlyZXN1bHQgKz0gIiI7CgoJCQkJcmV0dXJuIG9wZXJhdG9yID09PSAiPSIgPyByZXN1bHQgPT09IGNoZWNrIDoKCQkJCQlvcGVyYXRvciA9PT0gIiE9IiA/IHJlc3VsdCAhPT0gY2hlY2sgOgoJCQkJCW9wZXJhdG9yID09PSAiXj0iID8gY2hlY2sgJiYgcmVzdWx0LmluZGV4T2YoIGNoZWNrICkgPT09IDAgOgoJCQkJCW9wZXJhdG9yID09PSAiKj0iID8gY2hlY2sgJiYgcmVzdWx0LmluZGV4T2YoIGNoZWNrICkgPiAtMSA6CgkJCQkJb3BlcmF0b3IgPT09ICIkPSIgPyBjaGVjayAmJiByZXN1bHQuc2xpY2UoIC1jaGVjay5sZW5ndGggKSA9PT0gY2hlY2sgOgoJCQkJCW9wZXJhdG9yID09PSAifj0iID8gKCAiICIgKyByZXN1bHQucmVwbGFjZSggcndoaXRlc3BhY2UsICIgIiApICsgIiAiICkuaW5kZXhPZiggY2hlY2sgKSA+IC0xIDoKCQkJCQlvcGVyYXRvciA9PT0gInw9IiA/IHJlc3VsdCA9PT0gY2hlY2sgfHwgcmVzdWx0LnNsaWNlKCAwLCBjaGVjay5sZW5ndGggKyAxICkgPT09IGNoZWNrICsgIi0iIDoKCQkJCQlmYWxzZTsKCQkJfTsKCQl9LAoKCQkiQ0hJTEQiOiBmdW5jdGlvbiggdHlwZSwgd2hhdCwgYXJndW1lbnQsIGZpcnN0LCBsYXN0ICkgewoJCQl2YXIgc2ltcGxlID0gdHlwZS5zbGljZSggMCwgMyApICE9PSAibnRoIiwKCQkJCWZvcndhcmQgPSB0eXBlLnNsaWNlKCAtNCApICE9PSAibGFzdCIsCgkJCQlvZlR5cGUgPSB3aGF0ID09PSAib2YtdHlwZSI7CgoJCQlyZXR1cm4gZmlyc3QgPT09IDEgJiYgbGFzdCA9PT0gMCA/CgoJCQkJLy8gU2hvcnRjdXQgZm9yIDpudGgtKihuKQoJCQkJZnVuY3Rpb24oIGVsZW0gKSB7CgkJCQkJcmV0dXJuICEhZWxlbS5wYXJlbnROb2RlOwoJCQkJfSA6CgoJCQkJZnVuY3Rpb24oIGVsZW0sIGNvbnRleHQsIHhtbCApIHsKCQkJCQl2YXIgY2FjaGUsIHVuaXF1ZUNhY2hlLCBvdXRlckNhY2hlLCBub2RlLCBub2RlSW5kZXgsIHN0YXJ0LAoJCQkJCQlkaXIgPSBzaW1wbGUgIT09IGZvcndhcmQgPyAibmV4dFNpYmxpbmciIDogInByZXZpb3VzU2libGluZyIsCgkJCQkJCXBhcmVudCA9IGVsZW0ucGFyZW50Tm9kZSwKCQkJCQkJbmFtZSA9IG9mVHlwZSAmJiBlbGVtLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCksCgkJCQkJCXVzZUNhY2hlID0gIXhtbCAmJiAhb2ZUeXBlLAoJCQkJCQlkaWZmID0gZmFsc2U7CgoJCQkJCWlmICggcGFyZW50ICkgewoKCQkJCQkJLy8gOihmaXJzdHxsYXN0fG9ubHkpLShjaGlsZHxvZi10eXBlKQoJCQkJCQlpZiAoIHNpbXBsZSApIHsKCQkJCQkJCXdoaWxlICggZGlyICkgewoJCQkJCQkJCW5vZGUgPSBlbGVtOwoJCQkJCQkJCXdoaWxlICggKG5vZGUgPSBub2RlWyBkaXIgXSkgKSB7CgkJCQkJCQkJCWlmICggb2ZUeXBlID8KCQkJCQkJCQkJCW5vZGUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSA9PT0gbmFtZSA6CgkJCQkJCQkJCQlub2RlLm5vZGVUeXBlID09PSAxICkgewoKCQkJCQkJCQkJCXJldHVybiBmYWxzZTsKCQkJCQkJCQkJfQoJCQkJCQkJCX0KCQkJCQkJCQkvLyBSZXZlcnNlIGRpcmVjdGlvbiBmb3IgOm9ubHktKiAoaWYgd2UgaGF2ZW4ndCB5ZXQgZG9uZSBzbykKCQkJCQkJCQlzdGFydCA9IGRpciA9IHR5cGUgPT09ICJvbmx5IiAmJiAhc3RhcnQgJiYgIm5leHRTaWJsaW5nIjsKCQkJCQkJCX0KCQkJCQkJCXJldHVybiB0cnVlOwoJCQkJCQl9CgoJCQkJCQlzdGFydCA9IFsgZm9yd2FyZCA/IHBhcmVudC5maXJzdENoaWxkIDogcGFyZW50Lmxhc3RDaGlsZCBdOwoKCQkJCQkJLy8gbm9uLXhtbCA6bnRoLWNoaWxkKC4uLikgc3RvcmVzIGNhY2hlIGRhdGEgb24gYHBhcmVudGAKCQkJCQkJaWYgKCBmb3J3YXJkICYmIHVzZUNhY2hlICkgewoKCQkJCQkJCS8vIFNlZWsgYGVsZW1gIGZyb20gYSBwcmV2aW91c2x5LWNhY2hlZCBpbmRleAoKCQkJCQkJCS8vIC4uLmluIGEgZ3ppcC1mcmllbmRseSB3YXkKCQkJCQkJCW5vZGUgPSBwYXJlbnQ7CgkJCQkJCQlvdXRlckNhY2hlID0gbm9kZVsgZXhwYW5kbyBdIHx8IChub2RlWyBleHBhbmRvIF0gPSB7fSk7CgoJCQkJCQkJLy8gU3VwcG9ydDogSUUgPDkgb25seQoJCQkJCQkJLy8gRGVmZW5kIGFnYWluc3QgY2xvbmVkIGF0dHJvcGVydGllcyAoalF1ZXJ5IGdoLTE3MDkpCgkJCQkJCQl1bmlxdWVDYWNoZSA9IG91dGVyQ2FjaGVbIG5vZGUudW5pcXVlSUQgXSB8fAoJCQkJCQkJCShvdXRlckNhY2hlWyBub2RlLnVuaXF1ZUlEIF0gPSB7fSk7CgoJCQkJCQkJY2FjaGUgPSB1bmlxdWVDYWNoZVsgdHlwZSBdIHx8IFtdOwoJCQkJCQkJbm9kZUluZGV4ID0gY2FjaGVbIDAgXSA9PT0gZGlycnVucyAmJiBjYWNoZVsgMSBdOwoJCQkJCQkJZGlmZiA9IG5vZGVJbmRleCAmJiBjYWNoZVsgMiBdOwoJCQkJCQkJbm9kZSA9IG5vZGVJbmRleCAmJiBwYXJlbnQuY2hpbGROb2Rlc1sgbm9kZUluZGV4IF07CgoJCQkJCQkJd2hpbGUgKCAobm9kZSA9ICsrbm9kZUluZGV4ICYmIG5vZGUgJiYgbm9kZVsgZGlyIF0gfHwKCgkJCQkJCQkJLy8gRmFsbGJhY2sgdG8gc2Vla2luZyBgZWxlbWAgZnJvbSB0aGUgc3RhcnQKCQkJCQkJCQkoZGlmZiA9IG5vZGVJbmRleCA9IDApIHx8IHN0YXJ0LnBvcCgpKSApIHsKCgkJCQkJCQkJLy8gV2hlbiBmb3VuZCwgY2FjaGUgaW5kZXhlcyBvbiBgcGFyZW50YCBhbmQgYnJlYWsKCQkJCQkJCQlpZiAoIG5vZGUubm9kZVR5cGUgPT09IDEgJiYgKytkaWZmICYmIG5vZGUgPT09IGVsZW0gKSB7CgkJCQkJCQkJCXVuaXF1ZUNhY2hlWyB0eXBlIF0gPSBbIGRpcnJ1bnMsIG5vZGVJbmRleCwgZGlmZiBdOwoJCQkJCQkJCQlicmVhazsKCQkJCQkJCQl9CgkJCQkJCQl9CgoJCQkJCQl9IGVsc2UgewoJCQkJCQkJLy8gVXNlIHByZXZpb3VzbHktY2FjaGVkIGVsZW1lbnQgaW5kZXggaWYgYXZhaWxhYmxlCgkJCQkJCQlpZiAoIHVzZUNhY2hlICkgewoJCQkJCQkJCS8vIC4uLmluIGEgZ3ppcC1mcmllbmRseSB3YXkKCQkJCQkJCQlub2RlID0gZWxlbTsKCQkJCQkJCQlvdXRlckNhY2hlID0gbm9kZVsgZXhwYW5kbyBdIHx8IChub2RlWyBleHBhbmRvIF0gPSB7fSk7CgoJCQkJCQkJCS8vIFN1cHBvcnQ6IElFIDw5IG9ubHkKCQkJCQkJCQkvLyBEZWZlbmQgYWdhaW5zdCBjbG9uZWQgYXR0cm9wZXJ0aWVzIChqUXVlcnkgZ2gtMTcwOSkKCQkJCQkJCQl1bmlxdWVDYWNoZSA9IG91dGVyQ2FjaGVbIG5vZGUudW5pcXVlSUQgXSB8fAoJCQkJCQkJCQkob3V0ZXJDYWNoZVsgbm9kZS51bmlxdWVJRCBdID0ge30pOwoKCQkJCQkJCQljYWNoZSA9IHVuaXF1ZUNhY2hlWyB0eXBlIF0gfHwgW107CgkJCQkJCQkJbm9kZUluZGV4ID0gY2FjaGVbIDAgXSA9PT0gZGlycnVucyAmJiBjYWNoZVsgMSBdOwoJCQkJCQkJCWRpZmYgPSBub2RlSW5kZXg7CgkJCQkJCQl9CgoJCQkJCQkJLy8geG1sIDpudGgtY2hpbGQoLi4uKQoJCQkJCQkJLy8gb3IgOm50aC1sYXN0LWNoaWxkKC4uLikgb3IgOm50aCgtbGFzdCk/LW9mLXR5cGUoLi4uKQoJCQkJCQkJaWYgKCBkaWZmID09PSBmYWxzZSApIHsKCQkJCQkJCQkvLyBVc2UgdGhlIHNhbWUgbG9vcCBhcyBhYm92ZSB0byBzZWVrIGBlbGVtYCBmcm9tIHRoZSBzdGFydAoJCQkJCQkJCXdoaWxlICggKG5vZGUgPSArK25vZGVJbmRleCAmJiBub2RlICYmIG5vZGVbIGRpciBdIHx8CgkJCQkJCQkJCShkaWZmID0gbm9kZUluZGV4ID0gMCkgfHwgc3RhcnQucG9wKCkpICkgewoKCQkJCQkJCQkJaWYgKCAoIG9mVHlwZSA/CgkJCQkJCQkJCQlub2RlLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkgPT09IG5hbWUgOgoJCQkJCQkJCQkJbm9kZS5ub2RlVHlwZSA9PT0gMSApICYmCgkJCQkJCQkJCQkrK2RpZmYgKSB7CgoJCQkJCQkJCQkJLy8gQ2FjaGUgdGhlIGluZGV4IG9mIGVhY2ggZW5jb3VudGVyZWQgZWxlbWVudAoJCQkJCQkJCQkJaWYgKCB1c2VDYWNoZSApIHsKCQkJCQkJCQkJCQlvdXRlckNhY2hlID0gbm9kZVsgZXhwYW5kbyBdIHx8IChub2RlWyBleHBhbmRvIF0gPSB7fSk7CgoJCQkJCQkJCQkJCS8vIFN1cHBvcnQ6IElFIDw5IG9ubHkKCQkJCQkJCQkJCQkvLyBEZWZlbmQgYWdhaW5zdCBjbG9uZWQgYXR0cm9wZXJ0aWVzIChqUXVlcnkgZ2gtMTcwOSkKCQkJCQkJCQkJCQl1bmlxdWVDYWNoZSA9IG91dGVyQ2FjaGVbIG5vZGUudW5pcXVlSUQgXSB8fAoJCQkJCQkJCQkJCQkob3V0ZXJDYWNoZVsgbm9kZS51bmlxdWVJRCBdID0ge30pOwoKCQkJCQkJCQkJCQl1bmlxdWVDYWNoZVsgdHlwZSBdID0gWyBkaXJydW5zLCBkaWZmIF07CgkJCQkJCQkJCQl9CgoJCQkJCQkJCQkJaWYgKCBub2RlID09PSBlbGVtICkgewoJCQkJCQkJCQkJCWJyZWFrOwoJCQkJCQkJCQkJfQoJCQkJCQkJCQl9CgkJCQkJCQkJfQoJCQkJCQkJfQoJCQkJCQl9CgoJCQkJCQkvLyBJbmNvcnBvcmF0ZSB0aGUgb2Zmc2V0LCB0aGVuIGNoZWNrIGFnYWluc3QgY3ljbGUgc2l6ZQoJCQkJCQlkaWZmIC09IGxhc3Q7CgkJCQkJCXJldHVybiBkaWZmID09PSBmaXJzdCB8fCAoIGRpZmYgJSBmaXJzdCA9PT0gMCAmJiBkaWZmIC8gZmlyc3QgPj0gMCApOwoJCQkJCX0KCQkJCX07CgkJfSwKCgkJIlBTRVVETyI6IGZ1bmN0aW9uKCBwc2V1ZG8sIGFyZ3VtZW50ICkgewoJCQkvLyBwc2V1ZG8tY2xhc3MgbmFtZXMgYXJlIGNhc2UtaW5zZW5zaXRpdmUKCQkJLy8gaHR0cDovL3d3dy53My5vcmcvVFIvc2VsZWN0b3JzLyNwc2V1ZG8tY2xhc3NlcwoJCQkvLyBQcmlvcml0aXplIGJ5IGNhc2Ugc2Vuc2l0aXZpdHkgaW4gY2FzZSBjdXN0b20gcHNldWRvcyBhcmUgYWRkZWQgd2l0aCB1cHBlcmNhc2UgbGV0dGVycwoJCQkvLyBSZW1lbWJlciB0aGF0IHNldEZpbHRlcnMgaW5oZXJpdHMgZnJvbSBwc2V1ZG9zCgkJCXZhciBhcmdzLAoJCQkJZm4gPSBFeHByLnBzZXVkb3NbIHBzZXVkbyBdIHx8IEV4cHIuc2V0RmlsdGVyc1sgcHNldWRvLnRvTG93ZXJDYXNlKCkgXSB8fAoJCQkJCVNpenpsZS5lcnJvciggInVuc3VwcG9ydGVkIHBzZXVkbzogIiArIHBzZXVkbyApOwoKCQkJLy8gVGhlIHVzZXIgbWF5IHVzZSBjcmVhdGVQc2V1ZG8gdG8gaW5kaWNhdGUgdGhhdAoJCQkvLyBhcmd1bWVudHMgYXJlIG5lZWRlZCB0byBjcmVhdGUgdGhlIGZpbHRlciBmdW5jdGlvbgoJCQkvLyBqdXN0IGFzIFNpenpsZSBkb2VzCgkJCWlmICggZm5bIGV4cGFuZG8gXSApIHsKCQkJCXJldHVybiBmbiggYXJndW1lbnQgKTsKCQkJfQoKCQkJLy8gQnV0IG1haW50YWluIHN1cHBvcnQgZm9yIG9sZCBzaWduYXR1cmVzCgkJCWlmICggZm4ubGVuZ3RoID4gMSApIHsKCQkJCWFyZ3MgPSBbIHBzZXVkbywgcHNldWRvLCAiIiwgYXJndW1lbnQgXTsKCQkJCXJldHVybiBFeHByLnNldEZpbHRlcnMuaGFzT3duUHJvcGVydHkoIHBzZXVkby50b0xvd2VyQ2FzZSgpICkgPwoJCQkJCW1hcmtGdW5jdGlvbihmdW5jdGlvbiggc2VlZCwgbWF0Y2hlcyApIHsKCQkJCQkJdmFyIGlkeCwKCQkJCQkJCW1hdGNoZWQgPSBmbiggc2VlZCwgYXJndW1lbnQgKSwKCQkJCQkJCWkgPSBtYXRjaGVkLmxlbmd0aDsKCQkJCQkJd2hpbGUgKCBpLS0gKSB7CgkJCQkJCQlpZHggPSBpbmRleE9mKCBzZWVkLCBtYXRjaGVkW2ldICk7CgkJCQkJCQlzZWVkWyBpZHggXSA9ICEoIG1hdGNoZXNbIGlkeCBdID0gbWF0Y2hlZFtpXSApOwoJCQkJCQl9CgkJCQkJfSkgOgoJCQkJCWZ1bmN0aW9uKCBlbGVtICkgewoJCQkJCQlyZXR1cm4gZm4oIGVsZW0sIDAsIGFyZ3MgKTsKCQkJCQl9OwoJCQl9CgoJCQlyZXR1cm4gZm47CgkJfQoJfSwKCglwc2V1ZG9zOiB7CgkJLy8gUG90ZW50aWFsbHkgY29tcGxleCBwc2V1ZG9zCgkJIm5vdCI6IG1hcmtGdW5jdGlvbihmdW5jdGlvbiggc2VsZWN0b3IgKSB7CgkJCS8vIFRyaW0gdGhlIHNlbGVjdG9yIHBhc3NlZCB0byBjb21waWxlCgkJCS8vIHRvIGF2b2lkIHRyZWF0aW5nIGxlYWRpbmcgYW5kIHRyYWlsaW5nCgkJCS8vIHNwYWNlcyBhcyBjb21iaW5hdG9ycwoJCQl2YXIgaW5wdXQgPSBbXSwKCQkJCXJlc3VsdHMgPSBbXSwKCQkJCW1hdGNoZXIgPSBjb21waWxlKCBzZWxlY3Rvci5yZXBsYWNlKCBydHJpbSwgIiQxIiApICk7CgoJCQlyZXR1cm4gbWF0Y2hlclsgZXhwYW5kbyBdID8KCQkJCW1hcmtGdW5jdGlvbihmdW5jdGlvbiggc2VlZCwgbWF0Y2hlcywgY29udGV4dCwgeG1sICkgewoJCQkJCXZhciBlbGVtLAoJCQkJCQl1bm1hdGNoZWQgPSBtYXRjaGVyKCBzZWVkLCBudWxsLCB4bWwsIFtdICksCgkJCQkJCWkgPSBzZWVkLmxlbmd0aDsKCgkJCQkJLy8gTWF0Y2ggZWxlbWVudHMgdW5tYXRjaGVkIGJ5IGBtYXRjaGVyYAoJCQkJCXdoaWxlICggaS0tICkgewoJCQkJCQlpZiAoIChlbGVtID0gdW5tYXRjaGVkW2ldKSApIHsKCQkJCQkJCXNlZWRbaV0gPSAhKG1hdGNoZXNbaV0gPSBlbGVtKTsKCQkJCQkJfQoJCQkJCX0KCQkJCX0pIDoKCQkJCWZ1bmN0aW9uKCBlbGVtLCBjb250ZXh0LCB4bWwgKSB7CgkJCQkJaW5wdXRbMF0gPSBlbGVtOwoJCQkJCW1hdGNoZXIoIGlucHV0LCBudWxsLCB4bWwsIHJlc3VsdHMgKTsKCQkJCQkvLyBEb24ndCBrZWVwIHRoZSBlbGVtZW50IChpc3N1ZSAjMjk5KQoJCQkJCWlucHV0WzBdID0gbnVsbDsKCQkJCQlyZXR1cm4gIXJlc3VsdHMucG9wKCk7CgkJCQl9OwoJCX0pLAoKCQkiaGFzIjogbWFya0Z1bmN0aW9uKGZ1bmN0aW9uKCBzZWxlY3RvciApIHsKCQkJcmV0dXJuIGZ1bmN0aW9uKCBlbGVtICkgewoJCQkJcmV0dXJuIFNpenpsZSggc2VsZWN0b3IsIGVsZW0gKS5sZW5ndGggPiAwOwoJCQl9OwoJCX0pLAoKCQkiY29udGFpbnMiOiBtYXJrRnVuY3Rpb24oZnVuY3Rpb24oIHRleHQgKSB7CgkJCXRleHQgPSB0ZXh0LnJlcGxhY2UoIHJ1bmVzY2FwZSwgZnVuZXNjYXBlICk7CgkJCXJldHVybiBmdW5jdGlvbiggZWxlbSApIHsKCQkJCXJldHVybiAoIGVsZW0udGV4dENvbnRlbnQgfHwgZWxlbS5pbm5lclRleHQgfHwgZ2V0VGV4dCggZWxlbSApICkuaW5kZXhPZiggdGV4dCApID4gLTE7CgkJCX07CgkJfSksCgoJCS8vICJXaGV0aGVyIGFuIGVsZW1lbnQgaXMgcmVwcmVzZW50ZWQgYnkgYSA6bGFuZygpIHNlbGVjdG9yCgkJLy8gaXMgYmFzZWQgc29sZWx5IG9uIHRoZSBlbGVtZW50J3MgbGFuZ3VhZ2UgdmFsdWUKCQkvLyBiZWluZyBlcXVhbCB0byB0aGUgaWRlbnRpZmllciBDLAoJCS8vIG9yIGJlZ2lubmluZyB3aXRoIHRoZSBpZGVudGlmaWVyIEMgaW1tZWRpYXRlbHkgZm9sbG93ZWQgYnkgIi0iLgoJCS8vIFRoZSBtYXRjaGluZyBvZiBDIGFnYWluc3QgdGhlIGVsZW1lbnQncyBsYW5ndWFnZSB2YWx1ZSBpcyBwZXJmb3JtZWQgY2FzZS1pbnNlbnNpdGl2ZWx5LgoJCS8vIFRoZSBpZGVudGlmaWVyIEMgZG9lcyBub3QgaGF2ZSB0byBiZSBhIHZhbGlkIGxhbmd1YWdlIG5hbWUuIgoJCS8vIGh0dHA6Ly93d3cudzMub3JnL1RSL3NlbGVjdG9ycy8jbGFuZy1wc2V1ZG8KCQkibGFuZyI6IG1hcmtGdW5jdGlvbiggZnVuY3Rpb24oIGxhbmcgKSB7CgkJCS8vIGxhbmcgdmFsdWUgbXVzdCBiZSBhIHZhbGlkIGlkZW50aWZpZXIKCQkJaWYgKCAhcmlkZW50aWZpZXIudGVzdChsYW5nIHx8ICIiKSApIHsKCQkJCVNpenpsZS5lcnJvciggInVuc3VwcG9ydGVkIGxhbmc6ICIgKyBsYW5nICk7CgkJCX0KCQkJbGFuZyA9IGxhbmcucmVwbGFjZSggcnVuZXNjYXBlLCBmdW5lc2NhcGUgKS50b0xvd2VyQ2FzZSgpOwoJCQlyZXR1cm4gZnVuY3Rpb24oIGVsZW0gKSB7CgkJCQl2YXIgZWxlbUxhbmc7CgkJCQlkbyB7CgkJCQkJaWYgKCAoZWxlbUxhbmcgPSBkb2N1bWVudElzSFRNTCA/CgkJCQkJCWVsZW0ubGFuZyA6CgkJCQkJCWVsZW0uZ2V0QXR0cmlidXRlKCJ4bWw6bGFuZyIpIHx8IGVsZW0uZ2V0QXR0cmlidXRlKCJsYW5nIikpICkgewoKCQkJCQkJZWxlbUxhbmcgPSBlbGVtTGFuZy50b0xvd2VyQ2FzZSgpOwoJCQkJCQlyZXR1cm4gZWxlbUxhbmcgPT09IGxhbmcgfHwgZWxlbUxhbmcuaW5kZXhPZiggbGFuZyArICItIiApID09PSAwOwoJCQkJCX0KCQkJCX0gd2hpbGUgKCAoZWxlbSA9IGVsZW0ucGFyZW50Tm9kZSkgJiYgZWxlbS5ub2RlVHlwZSA9PT0gMSApOwoJCQkJcmV0dXJuIGZhbHNlOwoJCQl9OwoJCX0pLAoKCQkvLyBNaXNjZWxsYW5lb3VzCgkJInRhcmdldCI6IGZ1bmN0aW9uKCBlbGVtICkgewoJCQl2YXIgaGFzaCA9IHdpbmRvdy5sb2NhdGlvbiAmJiB3aW5kb3cubG9jYXRpb24uaGFzaDsKCQkJcmV0dXJuIGhhc2ggJiYgaGFzaC5zbGljZSggMSApID09PSBlbGVtLmlkOwoJCX0sCgoJCSJyb290IjogZnVuY3Rpb24oIGVsZW0gKSB7CgkJCXJldHVybiBlbGVtID09PSBkb2NFbGVtOwoJCX0sCgoJCSJmb2N1cyI6IGZ1bmN0aW9uKCBlbGVtICkgewoJCQlyZXR1cm4gZWxlbSA9PT0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudCAmJiAoIWRvY3VtZW50Lmhhc0ZvY3VzIHx8IGRvY3VtZW50Lmhhc0ZvY3VzKCkpICYmICEhKGVsZW0udHlwZSB8fCBlbGVtLmhyZWYgfHwgfmVsZW0udGFiSW5kZXgpOwoJCX0sCgoJCS8vIEJvb2xlYW4gcHJvcGVydGllcwoJCSJlbmFibGVkIjogY3JlYXRlRGlzYWJsZWRQc2V1ZG8oIGZhbHNlICksCgkJImRpc2FibGVkIjogY3JlYXRlRGlzYWJsZWRQc2V1ZG8oIHRydWUgKSwKCgkJImNoZWNrZWQiOiBmdW5jdGlvbiggZWxlbSApIHsKCQkJLy8gSW4gQ1NTMywgOmNoZWNrZWQgc2hvdWxkIHJldHVybiBib3RoIGNoZWNrZWQgYW5kIHNlbGVjdGVkIGVsZW1lbnRzCgkJCS8vIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMTEvUkVDLWNzczMtc2VsZWN0b3JzLTIwMTEwOTI5LyNjaGVja2VkCgkJCXZhciBub2RlTmFtZSA9IGVsZW0ubm9kZU5hbWUudG9Mb3dlckNhc2UoKTsKCQkJcmV0dXJuIChub2RlTmFtZSA9PT0gImlucHV0IiAmJiAhIWVsZW0uY2hlY2tlZCkgfHwgKG5vZGVOYW1lID09PSAib3B0aW9uIiAmJiAhIWVsZW0uc2VsZWN0ZWQpOwoJCX0sCgoJCSJzZWxlY3RlZCI6IGZ1bmN0aW9uKCBlbGVtICkgewoJCQkvLyBBY2Nlc3NpbmcgdGhpcyBwcm9wZXJ0eSBtYWtlcyBzZWxlY3RlZC1ieS1kZWZhdWx0CgkJCS8vIG9wdGlvbnMgaW4gU2FmYXJpIHdvcmsgcHJvcGVybHkKCQkJaWYgKCBlbGVtLnBhcmVudE5vZGUgKSB7CgkJCQllbGVtLnBhcmVudE5vZGUuc2VsZWN0ZWRJbmRleDsKCQkJfQoKCQkJcmV0dXJuIGVsZW0uc2VsZWN0ZWQgPT09IHRydWU7CgkJfSwKCgkJLy8gQ29udGVudHMKCQkiZW1wdHkiOiBmdW5jdGlvbiggZWxlbSApIHsKCQkJLy8gaHR0cDovL3d3dy53My5vcmcvVFIvc2VsZWN0b3JzLyNlbXB0eS1wc2V1ZG8KCQkJLy8gOmVtcHR5IGlzIG5lZ2F0ZWQgYnkgZWxlbWVudCAoMSkgb3IgY29udGVudCBub2RlcyAodGV4dDogMzsgY2RhdGE6IDQ7IGVudGl0eSByZWY6IDUpLAoJCQkvLyAgIGJ1dCBub3QgYnkgb3RoZXJzIChjb21tZW50OiA4OyBwcm9jZXNzaW5nIGluc3RydWN0aW9uOiA3OyBldGMuKQoJCQkvLyBub2RlVHlwZSA8IDYgd29ya3MgYmVjYXVzZSBhdHRyaWJ1dGVzICgyKSBkbyBub3QgYXBwZWFyIGFzIGNoaWxkcmVuCgkJCWZvciAoIGVsZW0gPSBlbGVtLmZpcnN0Q2hpbGQ7IGVsZW07IGVsZW0gPSBlbGVtLm5leHRTaWJsaW5nICkgewoJCQkJaWYgKCBlbGVtLm5vZGVUeXBlIDwgNiApIHsKCQkJCQlyZXR1cm4gZmFsc2U7CgkJCQl9CgkJCX0KCQkJcmV0dXJuIHRydWU7CgkJfSwKCgkJInBhcmVudCI6IGZ1bmN0aW9uKCBlbGVtICkgewoJCQlyZXR1cm4gIUV4cHIucHNldWRvc1siZW1wdHkiXSggZWxlbSApOwoJCX0sCgoJCS8vIEVsZW1lbnQvaW5wdXQgdHlwZXMKCQkiaGVhZGVyIjogZnVuY3Rpb24oIGVsZW0gKSB7CgkJCXJldHVybiByaGVhZGVyLnRlc3QoIGVsZW0ubm9kZU5hbWUgKTsKCQl9LAoKCQkiaW5wdXQiOiBmdW5jdGlvbiggZWxlbSApIHsKCQkJcmV0dXJuIHJpbnB1dHMudGVzdCggZWxlbS5ub2RlTmFtZSApOwoJCX0sCgoJCSJidXR0b24iOiBmdW5jdGlvbiggZWxlbSApIHsKCQkJdmFyIG5hbWUgPSBlbGVtLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7CgkJCXJldHVybiBuYW1lID09PSAiaW5wdXQiICYmIGVsZW0udHlwZSA9PT0gImJ1dHRvbiIgfHwgbmFtZSA9PT0gImJ1dHRvbiI7CgkJfSwKCgkJInRleHQiOiBmdW5jdGlvbiggZWxlbSApIHsKCQkJdmFyIGF0dHI7CgkJCXJldHVybiBlbGVtLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkgPT09ICJpbnB1dCIgJiYKCQkJCWVsZW0udHlwZSA9PT0gInRleHQiICYmCgoJCQkJLy8gU3VwcG9ydDogSUU8OAoJCQkJLy8gTmV3IEhUTUw1IGF0dHJpYnV0ZSB2YWx1ZXMgKGUuZy4sICJzZWFyY2giKSBhcHBlYXIgd2l0aCBlbGVtLnR5cGUgPT09ICJ0ZXh0IgoJCQkJKCAoYXR0ciA9IGVsZW0uZ2V0QXR0cmlidXRlKCJ0eXBlIikpID09IG51bGwgfHwgYXR0ci50b0xvd2VyQ2FzZSgpID09PSAidGV4dCIgKTsKCQl9LAoKCQkvLyBQb3NpdGlvbi1pbi1jb2xsZWN0aW9uCgkJImZpcnN0IjogY3JlYXRlUG9zaXRpb25hbFBzZXVkbyhmdW5jdGlvbigpIHsKCQkJcmV0dXJuIFsgMCBdOwoJCX0pLAoKCQkibGFzdCI6IGNyZWF0ZVBvc2l0aW9uYWxQc2V1ZG8oZnVuY3Rpb24oIG1hdGNoSW5kZXhlcywgbGVuZ3RoICkgewoJCQlyZXR1cm4gWyBsZW5ndGggLSAxIF07CgkJfSksCgoJCSJlcSI6IGNyZWF0ZVBvc2l0aW9uYWxQc2V1ZG8oZnVuY3Rpb24oIG1hdGNoSW5kZXhlcywgbGVuZ3RoLCBhcmd1bWVudCApIHsKCQkJcmV0dXJuIFsgYXJndW1lbnQgPCAwID8gYXJndW1lbnQgKyBsZW5ndGggOiBhcmd1bWVudCBdOwoJCX0pLAoKCQkiZXZlbiI6IGNyZWF0ZVBvc2l0aW9uYWxQc2V1ZG8oZnVuY3Rpb24oIG1hdGNoSW5kZXhlcywgbGVuZ3RoICkgewoJCQl2YXIgaSA9IDA7CgkJCWZvciAoIDsgaSA8IGxlbmd0aDsgaSArPSAyICkgewoJCQkJbWF0Y2hJbmRleGVzLnB1c2goIGkgKTsKCQkJfQoJCQlyZXR1cm4gbWF0Y2hJbmRleGVzOwoJCX0pLAoKCQkib2RkIjogY3JlYXRlUG9zaXRpb25hbFBzZXVkbyhmdW5jdGlvbiggbWF0Y2hJbmRleGVzLCBsZW5ndGggKSB7CgkJCXZhciBpID0gMTsKCQkJZm9yICggOyBpIDwgbGVuZ3RoOyBpICs9IDIgKSB7CgkJCQltYXRjaEluZGV4ZXMucHVzaCggaSApOwoJCQl9CgkJCXJldHVybiBtYXRjaEluZGV4ZXM7CgkJfSksCgoJCSJsdCI6IGNyZWF0ZVBvc2l0aW9uYWxQc2V1ZG8oZnVuY3Rpb24oIG1hdGNoSW5kZXhlcywgbGVuZ3RoLCBhcmd1bWVudCApIHsKCQkJdmFyIGkgPSBhcmd1bWVudCA8IDAgPyBhcmd1bWVudCArIGxlbmd0aCA6IGFyZ3VtZW50OwoJCQlmb3IgKCA7IC0taSA+PSAwOyApIHsKCQkJCW1hdGNoSW5kZXhlcy5wdXNoKCBpICk7CgkJCX0KCQkJcmV0dXJuIG1hdGNoSW5kZXhlczsKCQl9KSwKCgkJImd0IjogY3JlYXRlUG9zaXRpb25hbFBzZXVkbyhmdW5jdGlvbiggbWF0Y2hJbmRleGVzLCBsZW5ndGgsIGFyZ3VtZW50ICkgewoJCQl2YXIgaSA9IGFyZ3VtZW50IDwgMCA/IGFyZ3VtZW50ICsgbGVuZ3RoIDogYXJndW1lbnQ7CgkJCWZvciAoIDsgKytpIDwgbGVuZ3RoOyApIHsKCQkJCW1hdGNoSW5kZXhlcy5wdXNoKCBpICk7CgkJCX0KCQkJcmV0dXJuIG1hdGNoSW5kZXhlczsKCQl9KQoJfQp9OwoKRXhwci5wc2V1ZG9zWyJudGgiXSA9IEV4cHIucHNldWRvc1siZXEiXTsKCi8vIEFkZCBidXR0b24vaW5wdXQgdHlwZSBwc2V1ZG9zCmZvciAoIGkgaW4geyByYWRpbzogdHJ1ZSwgY2hlY2tib3g6IHRydWUsIGZpbGU6IHRydWUsIHBhc3N3b3JkOiB0cnVlLCBpbWFnZTogdHJ1ZSB9ICkgewoJRXhwci5wc2V1ZG9zWyBpIF0gPSBjcmVhdGVJbnB1dFBzZXVkbyggaSApOwp9CmZvciAoIGkgaW4geyBzdWJtaXQ6IHRydWUsIHJlc2V0OiB0cnVlIH0gKSB7CglFeHByLnBzZXVkb3NbIGkgXSA9IGNyZWF0ZUJ1dHRvblBzZXVkbyggaSApOwp9CgovLyBFYXN5IEFQSSBmb3IgY3JlYXRpbmcgbmV3IHNldEZpbHRlcnMKZnVuY3Rpb24gc2V0RmlsdGVycygpIHt9CnNldEZpbHRlcnMucHJvdG90eXBlID0gRXhwci5maWx0ZXJzID0gRXhwci5wc2V1ZG9zOwpFeHByLnNldEZpbHRlcnMgPSBuZXcgc2V0RmlsdGVycygpOwoKdG9rZW5pemUgPSBTaXp6bGUudG9rZW5pemUgPSBmdW5jdGlvbiggc2VsZWN0b3IsIHBhcnNlT25seSApIHsKCXZhciBtYXRjaGVkLCBtYXRjaCwgdG9rZW5zLCB0eXBlLAoJCXNvRmFyLCBncm91cHMsIHByZUZpbHRlcnMsCgkJY2FjaGVkID0gdG9rZW5DYWNoZVsgc2VsZWN0b3IgKyAiICIgXTsKCglpZiAoIGNhY2hlZCApIHsKCQlyZXR1cm4gcGFyc2VPbmx5ID8gMCA6IGNhY2hlZC5zbGljZSggMCApOwoJfQoKCXNvRmFyID0gc2VsZWN0b3I7Cglncm91cHMgPSBbXTsKCXByZUZpbHRlcnMgPSBFeHByLnByZUZpbHRlcjsKCgl3aGlsZSAoIHNvRmFyICkgewoKCQkvLyBDb21tYSBhbmQgZmlyc3QgcnVuCgkJaWYgKCAhbWF0Y2hlZCB8fCAobWF0Y2ggPSByY29tbWEuZXhlYyggc29GYXIgKSkgKSB7CgkJCWlmICggbWF0Y2ggKSB7CgkJCQkvLyBEb24ndCBjb25zdW1lIHRyYWlsaW5nIGNvbW1hcyBhcyB2YWxpZAoJCQkJc29GYXIgPSBzb0Zhci5zbGljZSggbWF0Y2hbMF0ubGVuZ3RoICkgfHwgc29GYXI7CgkJCX0KCQkJZ3JvdXBzLnB1c2goICh0b2tlbnMgPSBbXSkgKTsKCQl9CgoJCW1hdGNoZWQgPSBmYWxzZTsKCgkJLy8gQ29tYmluYXRvcnMKCQlpZiAoIChtYXRjaCA9IHJjb21iaW5hdG9ycy5leGVjKCBzb0ZhciApKSApIHsKCQkJbWF0Y2hlZCA9IG1hdGNoLnNoaWZ0KCk7CgkJCXRva2Vucy5wdXNoKHsKCQkJCXZhbHVlOiBtYXRjaGVkLAoJCQkJLy8gQ2FzdCBkZXNjZW5kYW50IGNvbWJpbmF0b3JzIHRvIHNwYWNlCgkJCQl0eXBlOiBtYXRjaFswXS5yZXBsYWNlKCBydHJpbSwgIiAiICkKCQkJfSk7CgkJCXNvRmFyID0gc29GYXIuc2xpY2UoIG1hdGNoZWQubGVuZ3RoICk7CgkJfQoKCQkvLyBGaWx0ZXJzCgkJZm9yICggdHlwZSBpbiBFeHByLmZpbHRlciApIHsKCQkJaWYgKCAobWF0Y2ggPSBtYXRjaEV4cHJbIHR5cGUgXS5leGVjKCBzb0ZhciApKSAmJiAoIXByZUZpbHRlcnNbIHR5cGUgXSB8fAoJCQkJKG1hdGNoID0gcHJlRmlsdGVyc1sgdHlwZSBdKCBtYXRjaCApKSkgKSB7CgkJCQltYXRjaGVkID0gbWF0Y2guc2hpZnQoKTsKCQkJCXRva2Vucy5wdXNoKHsKCQkJCQl2YWx1ZTogbWF0Y2hlZCwKCQkJCQl0eXBlOiB0eXBlLAoJCQkJCW1hdGNoZXM6IG1hdGNoCgkJCQl9KTsKCQkJCXNvRmFyID0gc29GYXIuc2xpY2UoIG1hdGNoZWQubGVuZ3RoICk7CgkJCX0KCQl9CgoJCWlmICggIW1hdGNoZWQgKSB7CgkJCWJyZWFrOwoJCX0KCX0KCgkvLyBSZXR1cm4gdGhlIGxlbmd0aCBvZiB0aGUgaW52YWxpZCBleGNlc3MKCS8vIGlmIHdlJ3JlIGp1c3QgcGFyc2luZwoJLy8gT3RoZXJ3aXNlLCB0aHJvdyBhbiBlcnJvciBvciByZXR1cm4gdG9rZW5zCglyZXR1cm4gcGFyc2VPbmx5ID8KCQlzb0Zhci5sZW5ndGggOgoJCXNvRmFyID8KCQkJU2l6emxlLmVycm9yKCBzZWxlY3RvciApIDoKCQkJLy8gQ2FjaGUgdGhlIHRva2VucwoJCQl0b2tlbkNhY2hlKCBzZWxlY3RvciwgZ3JvdXBzICkuc2xpY2UoIDAgKTsKfTsKCmZ1bmN0aW9uIHRvU2VsZWN0b3IoIHRva2VucyApIHsKCXZhciBpID0gMCwKCQlsZW4gPSB0b2tlbnMubGVuZ3RoLAoJCXNlbGVjdG9yID0gIiI7Cglmb3IgKCA7IGkgPCBsZW47IGkrKyApIHsKCQlzZWxlY3RvciArPSB0b2tlbnNbaV0udmFsdWU7Cgl9CglyZXR1cm4gc2VsZWN0b3I7Cn0KCmZ1bmN0aW9uIGFkZENvbWJpbmF0b3IoIG1hdGNoZXIsIGNvbWJpbmF0b3IsIGJhc2UgKSB7Cgl2YXIgZGlyID0gY29tYmluYXRvci5kaXIsCgkJc2tpcCA9IGNvbWJpbmF0b3IubmV4dCwKCQlrZXkgPSBza2lwIHx8IGRpciwKCQljaGVja05vbkVsZW1lbnRzID0gYmFzZSAmJiBrZXkgPT09ICJwYXJlbnROb2RlIiwKCQlkb25lTmFtZSA9IGRvbmUrKzsKCglyZXR1cm4gY29tYmluYXRvci5maXJzdCA/CgkJLy8gQ2hlY2sgYWdhaW5zdCBjbG9zZXN0IGFuY2VzdG9yL3ByZWNlZGluZyBlbGVtZW50CgkJZnVuY3Rpb24oIGVsZW0sIGNvbnRleHQsIHhtbCApIHsKCQkJd2hpbGUgKCAoZWxlbSA9IGVsZW1bIGRpciBdKSApIHsKCQkJCWlmICggZWxlbS5ub2RlVHlwZSA9PT0gMSB8fCBjaGVja05vbkVsZW1lbnRzICkgewoJCQkJCXJldHVybiBtYXRjaGVyKCBlbGVtLCBjb250ZXh0LCB4bWwgKTsKCQkJCX0KCQkJfQoJCQlyZXR1cm4gZmFsc2U7CgkJfSA6CgoJCS8vIENoZWNrIGFnYWluc3QgYWxsIGFuY2VzdG9yL3ByZWNlZGluZyBlbGVtZW50cwoJCWZ1bmN0aW9uKCBlbGVtLCBjb250ZXh0LCB4bWwgKSB7CgkJCXZhciBvbGRDYWNoZSwgdW5pcXVlQ2FjaGUsIG91dGVyQ2FjaGUsCgkJCQluZXdDYWNoZSA9IFsgZGlycnVucywgZG9uZU5hbWUgXTsKCgkJCS8vIFdlIGNhbid0IHNldCBhcmJpdHJhcnkgZGF0YSBvbiBYTUwgbm9kZXMsIHNvIHRoZXkgZG9uJ3QgYmVuZWZpdCBmcm9tIGNvbWJpbmF0b3IgY2FjaGluZwoJCQlpZiAoIHhtbCApIHsKCQkJCXdoaWxlICggKGVsZW0gPSBlbGVtWyBkaXIgXSkgKSB7CgkJCQkJaWYgKCBlbGVtLm5vZGVUeXBlID09PSAxIHx8IGNoZWNrTm9uRWxlbWVudHMgKSB7CgkJCQkJCWlmICggbWF0Y2hlciggZWxlbSwgY29udGV4dCwgeG1sICkgKSB7CgkJCQkJCQlyZXR1cm4gdHJ1ZTsKCQkJCQkJfQoJCQkJCX0KCQkJCX0KCQkJfSBlbHNlIHsKCQkJCXdoaWxlICggKGVsZW0gPSBlbGVtWyBkaXIgXSkgKSB7CgkJCQkJaWYgKCBlbGVtLm5vZGVUeXBlID09PSAxIHx8IGNoZWNrTm9uRWxlbWVudHMgKSB7CgkJCQkJCW91dGVyQ2FjaGUgPSBlbGVtWyBleHBhbmRvIF0gfHwgKGVsZW1bIGV4cGFuZG8gXSA9IHt9KTsKCgkJCQkJCS8vIFN1cHBvcnQ6IElFIDw5IG9ubHkKCQkJCQkJLy8gRGVmZW5kIGFnYWluc3QgY2xvbmVkIGF0dHJvcGVydGllcyAoalF1ZXJ5IGdoLTE3MDkpCgkJCQkJCXVuaXF1ZUNhY2hlID0gb3V0ZXJDYWNoZVsgZWxlbS51bmlxdWVJRCBdIHx8IChvdXRlckNhY2hlWyBlbGVtLnVuaXF1ZUlEIF0gPSB7fSk7CgoJCQkJCQlpZiAoIHNraXAgJiYgc2tpcCA9PT0gZWxlbS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpICkgewoJCQkJCQkJZWxlbSA9IGVsZW1bIGRpciBdIHx8IGVsZW07CgkJCQkJCX0gZWxzZSBpZiAoIChvbGRDYWNoZSA9IHVuaXF1ZUNhY2hlWyBrZXkgXSkgJiYKCQkJCQkJCW9sZENhY2hlWyAwIF0gPT09IGRpcnJ1bnMgJiYgb2xkQ2FjaGVbIDEgXSA9PT0gZG9uZU5hbWUgKSB7CgoJCQkJCQkJLy8gQXNzaWduIHRvIG5ld0NhY2hlIHNvIHJlc3VsdHMgYmFjay1wcm9wYWdhdGUgdG8gcHJldmlvdXMgZWxlbWVudHMKCQkJCQkJCXJldHVybiAobmV3Q2FjaGVbIDIgXSA9IG9sZENhY2hlWyAyIF0pOwoJCQkJCQl9IGVsc2UgewoJCQkJCQkJLy8gUmV1c2UgbmV3Y2FjaGUgc28gcmVzdWx0cyBiYWNrLXByb3BhZ2F0ZSB0byBwcmV2aW91cyBlbGVtZW50cwoJCQkJCQkJdW5pcXVlQ2FjaGVbIGtleSBdID0gbmV3Q2FjaGU7CgoJCQkJCQkJLy8gQSBtYXRjaCBtZWFucyB3ZSdyZSBkb25lOyBhIGZhaWwgbWVhbnMgd2UgaGF2ZSB0byBrZWVwIGNoZWNraW5nCgkJCQkJCQlpZiAoIChuZXdDYWNoZVsgMiBdID0gbWF0Y2hlciggZWxlbSwgY29udGV4dCwgeG1sICkpICkgewoJCQkJCQkJCXJldHVybiB0cnVlOwoJCQkJCQkJfQoJCQkJCQl9CgkJCQkJfQoJCQkJfQoJCQl9CgkJCXJldHVybiBmYWxzZTsKCQl9Owp9CgpmdW5jdGlvbiBlbGVtZW50TWF0Y2hlciggbWF0Y2hlcnMgKSB7CglyZXR1cm4gbWF0Y2hlcnMubGVuZ3RoID4gMSA/CgkJZnVuY3Rpb24oIGVsZW0sIGNvbnRleHQsIHhtbCApIHsKCQkJdmFyIGkgPSBtYXRjaGVycy5sZW5ndGg7CgkJCXdoaWxlICggaS0tICkgewoJCQkJaWYgKCAhbWF0Y2hlcnNbaV0oIGVsZW0sIGNvbnRleHQsIHhtbCApICkgewoJCQkJCXJldHVybiBmYWxzZTsKCQkJCX0KCQkJfQoJCQlyZXR1cm4gdHJ1ZTsKCQl9IDoKCQltYXRjaGVyc1swXTsKfQoKZnVuY3Rpb24gbXVsdGlwbGVDb250ZXh0cyggc2VsZWN0b3IsIGNvbnRleHRzLCByZXN1bHRzICkgewoJdmFyIGkgPSAwLAoJCWxlbiA9IGNvbnRleHRzLmxlbmd0aDsKCWZvciAoIDsgaSA8IGxlbjsgaSsrICkgewoJCVNpenpsZSggc2VsZWN0b3IsIGNvbnRleHRzW2ldLCByZXN1bHRzICk7Cgl9CglyZXR1cm4gcmVzdWx0czsKfQoKZnVuY3Rpb24gY29uZGVuc2UoIHVubWF0Y2hlZCwgbWFwLCBmaWx0ZXIsIGNvbnRleHQsIHhtbCApIHsKCXZhciBlbGVtLAoJCW5ld1VubWF0Y2hlZCA9IFtdLAoJCWkgPSAwLAoJCWxlbiA9IHVubWF0Y2hlZC5sZW5ndGgsCgkJbWFwcGVkID0gbWFwICE9IG51bGw7CgoJZm9yICggOyBpIDwgbGVuOyBpKysgKSB7CgkJaWYgKCAoZWxlbSA9IHVubWF0Y2hlZFtpXSkgKSB7CgkJCWlmICggIWZpbHRlciB8fCBmaWx0ZXIoIGVsZW0sIGNvbnRleHQsIHhtbCApICkgewoJCQkJbmV3VW5tYXRjaGVkLnB1c2goIGVsZW0gKTsKCQkJCWlmICggbWFwcGVkICkgewoJCQkJCW1hcC5wdXNoKCBpICk7CgkJCQl9CgkJCX0KCQl9Cgl9CgoJcmV0dXJuIG5ld1VubWF0Y2hlZDsKfQoKZnVuY3Rpb24gc2V0TWF0Y2hlciggcHJlRmlsdGVyLCBzZWxlY3RvciwgbWF0Y2hlciwgcG9zdEZpbHRlciwgcG9zdEZpbmRlciwgcG9zdFNlbGVjdG9yICkgewoJaWYgKCBwb3N0RmlsdGVyICYmICFwb3N0RmlsdGVyWyBleHBhbmRvIF0gKSB7CgkJcG9zdEZpbHRlciA9IHNldE1hdGNoZXIoIHBvc3RGaWx0ZXIgKTsKCX0KCWlmICggcG9zdEZpbmRlciAmJiAhcG9zdEZpbmRlclsgZXhwYW5kbyBdICkgewoJCXBvc3RGaW5kZXIgPSBzZXRNYXRjaGVyKCBwb3N0RmluZGVyLCBwb3N0U2VsZWN0b3IgKTsKCX0KCXJldHVybiBtYXJrRnVuY3Rpb24oZnVuY3Rpb24oIHNlZWQsIHJlc3VsdHMsIGNvbnRleHQsIHhtbCApIHsKCQl2YXIgdGVtcCwgaSwgZWxlbSwKCQkJcHJlTWFwID0gW10sCgkJCXBvc3RNYXAgPSBbXSwKCQkJcHJlZXhpc3RpbmcgPSByZXN1bHRzLmxlbmd0aCwKCgkJCS8vIEdldCBpbml0aWFsIGVsZW1lbnRzIGZyb20gc2VlZCBvciBjb250ZXh0CgkJCWVsZW1zID0gc2VlZCB8fCBtdWx0aXBsZUNvbnRleHRzKCBzZWxlY3RvciB8fCAiKiIsIGNvbnRleHQubm9kZVR5cGUgPyBbIGNvbnRleHQgXSA6IGNvbnRleHQsIFtdICksCgoJCQkvLyBQcmVmaWx0ZXIgdG8gZ2V0IG1hdGNoZXIgaW5wdXQsIHByZXNlcnZpbmcgYSBtYXAgZm9yIHNlZWQtcmVzdWx0cyBzeW5jaHJvbml6YXRpb24KCQkJbWF0Y2hlckluID0gcHJlRmlsdGVyICYmICggc2VlZCB8fCAhc2VsZWN0b3IgKSA/CgkJCQljb25kZW5zZSggZWxlbXMsIHByZU1hcCwgcHJlRmlsdGVyLCBjb250ZXh0LCB4bWwgKSA6CgkJCQllbGVtcywKCgkJCW1hdGNoZXJPdXQgPSBtYXRjaGVyID8KCQkJCS8vIElmIHdlIGhhdmUgYSBwb3N0RmluZGVyLCBvciBmaWx0ZXJlZCBzZWVkLCBvciBub24tc2VlZCBwb3N0RmlsdGVyIG9yIHByZWV4aXN0aW5nIHJlc3VsdHMsCgkJCQlwb3N0RmluZGVyIHx8ICggc2VlZCA/IHByZUZpbHRlciA6IHByZWV4aXN0aW5nIHx8IHBvc3RGaWx0ZXIgKSA/CgoJCQkJCS8vIC4uLmludGVybWVkaWF0ZSBwcm9jZXNzaW5nIGlzIG5lY2Vzc2FyeQoJCQkJCVtdIDoKCgkJCQkJLy8gLi4ub3RoZXJ3aXNlIHVzZSByZXN1bHRzIGRpcmVjdGx5CgkJCQkJcmVzdWx0cyA6CgkJCQltYXRjaGVySW47CgoJCS8vIEZpbmQgcHJpbWFyeSBtYXRjaGVzCgkJaWYgKCBtYXRjaGVyICkgewoJCQltYXRjaGVyKCBtYXRjaGVySW4sIG1hdGNoZXJPdXQsIGNvbnRleHQsIHhtbCApOwoJCX0KCgkJLy8gQXBwbHkgcG9zdEZpbHRlcgoJCWlmICggcG9zdEZpbHRlciApIHsKCQkJdGVtcCA9IGNvbmRlbnNlKCBtYXRjaGVyT3V0LCBwb3N0TWFwICk7CgkJCXBvc3RGaWx0ZXIoIHRlbXAsIFtdLCBjb250ZXh0LCB4bWwgKTsKCgkJCS8vIFVuLW1hdGNoIGZhaWxpbmcgZWxlbWVudHMgYnkgbW92aW5nIHRoZW0gYmFjayB0byBtYXRjaGVySW4KCQkJaSA9IHRlbXAubGVuZ3RoOwoJCQl3aGlsZSAoIGktLSApIHsKCQkJCWlmICggKGVsZW0gPSB0ZW1wW2ldKSApIHsKCQkJCQltYXRjaGVyT3V0WyBwb3N0TWFwW2ldIF0gPSAhKG1hdGNoZXJJblsgcG9zdE1hcFtpXSBdID0gZWxlbSk7CgkJCQl9CgkJCX0KCQl9CgoJCWlmICggc2VlZCApIHsKCQkJaWYgKCBwb3N0RmluZGVyIHx8IHByZUZpbHRlciApIHsKCQkJCWlmICggcG9zdEZpbmRlciApIHsKCQkJCQkvLyBHZXQgdGhlIGZpbmFsIG1hdGNoZXJPdXQgYnkgY29uZGVuc2luZyB0aGlzIGludGVybWVkaWF0ZSBpbnRvIHBvc3RGaW5kZXIgY29udGV4dHMKCQkJCQl0ZW1wID0gW107CgkJCQkJaSA9IG1hdGNoZXJPdXQubGVuZ3RoOwoJCQkJCXdoaWxlICggaS0tICkgewoJCQkJCQlpZiAoIChlbGVtID0gbWF0Y2hlck91dFtpXSkgKSB7CgkJCQkJCQkvLyBSZXN0b3JlIG1hdGNoZXJJbiBzaW5jZSBlbGVtIGlzIG5vdCB5ZXQgYSBmaW5hbCBtYXRjaAoJCQkJCQkJdGVtcC5wdXNoKCAobWF0Y2hlckluW2ldID0gZWxlbSkgKTsKCQkJCQkJfQoJCQkJCX0KCQkJCQlwb3N0RmluZGVyKCBudWxsLCAobWF0Y2hlck91dCA9IFtdKSwgdGVtcCwgeG1sICk7CgkJCQl9CgoJCQkJLy8gTW92ZSBtYXRjaGVkIGVsZW1lbnRzIGZyb20gc2VlZCB0byByZXN1bHRzIHRvIGtlZXAgdGhlbSBzeW5jaHJvbml6ZWQKCQkJCWkgPSBtYXRjaGVyT3V0Lmxlbmd0aDsKCQkJCXdoaWxlICggaS0tICkgewoJCQkJCWlmICggKGVsZW0gPSBtYXRjaGVyT3V0W2ldKSAmJgoJCQkJCQkodGVtcCA9IHBvc3RGaW5kZXIgPyBpbmRleE9mKCBzZWVkLCBlbGVtICkgOiBwcmVNYXBbaV0pID4gLTEgKSB7CgoJCQkJCQlzZWVkW3RlbXBdID0gIShyZXN1bHRzW3RlbXBdID0gZWxlbSk7CgkJCQkJfQoJCQkJfQoJCQl9CgoJCS8vIEFkZCBlbGVtZW50cyB0byByZXN1bHRzLCB0aHJvdWdoIHBvc3RGaW5kZXIgaWYgZGVmaW5lZAoJCX0gZWxzZSB7CgkJCW1hdGNoZXJPdXQgPSBjb25kZW5zZSgKCQkJCW1hdGNoZXJPdXQgPT09IHJlc3VsdHMgPwoJCQkJCW1hdGNoZXJPdXQuc3BsaWNlKCBwcmVleGlzdGluZywgbWF0Y2hlck91dC5sZW5ndGggKSA6CgkJCQkJbWF0Y2hlck91dAoJCQkpOwoJCQlpZiAoIHBvc3RGaW5kZXIgKSB7CgkJCQlwb3N0RmluZGVyKCBudWxsLCByZXN1bHRzLCBtYXRjaGVyT3V0LCB4bWwgKTsKCQkJfSBlbHNlIHsKCQkJCXB1c2guYXBwbHkoIHJlc3VsdHMsIG1hdGNoZXJPdXQgKTsKCQkJfQoJCX0KCX0pOwp9CgpmdW5jdGlvbiBtYXRjaGVyRnJvbVRva2VucyggdG9rZW5zICkgewoJdmFyIGNoZWNrQ29udGV4dCwgbWF0Y2hlciwgaiwKCQlsZW4gPSB0b2tlbnMubGVuZ3RoLAoJCWxlYWRpbmdSZWxhdGl2ZSA9IEV4cHIucmVsYXRpdmVbIHRva2Vuc1swXS50eXBlIF0sCgkJaW1wbGljaXRSZWxhdGl2ZSA9IGxlYWRpbmdSZWxhdGl2ZSB8fCBFeHByLnJlbGF0aXZlWyIgIl0sCgkJaSA9IGxlYWRpbmdSZWxhdGl2ZSA/IDEgOiAwLAoKCQkvLyBUaGUgZm91bmRhdGlvbmFsIG1hdGNoZXIgZW5zdXJlcyB0aGF0IGVsZW1lbnRzIGFyZSByZWFjaGFibGUgZnJvbSB0b3AtbGV2ZWwgY29udGV4dChzKQoJCW1hdGNoQ29udGV4dCA9IGFkZENvbWJpbmF0b3IoIGZ1bmN0aW9uKCBlbGVtICkgewoJCQlyZXR1cm4gZWxlbSA9PT0gY2hlY2tDb250ZXh0OwoJCX0sIGltcGxpY2l0UmVsYXRpdmUsIHRydWUgKSwKCQltYXRjaEFueUNvbnRleHQgPSBhZGRDb21iaW5hdG9yKCBmdW5jdGlvbiggZWxlbSApIHsKCQkJcmV0dXJuIGluZGV4T2YoIGNoZWNrQ29udGV4dCwgZWxlbSApID4gLTE7CgkJfSwgaW1wbGljaXRSZWxhdGl2ZSwgdHJ1ZSApLAoJCW1hdGNoZXJzID0gWyBmdW5jdGlvbiggZWxlbSwgY29udGV4dCwgeG1sICkgewoJCQl2YXIgcmV0ID0gKCAhbGVhZGluZ1JlbGF0aXZlICYmICggeG1sIHx8IGNvbnRleHQgIT09IG91dGVybW9zdENvbnRleHQgKSApIHx8ICgKCQkJCShjaGVja0NvbnRleHQgPSBjb250ZXh0KS5ub2RlVHlwZSA/CgkJCQkJbWF0Y2hDb250ZXh0KCBlbGVtLCBjb250ZXh0LCB4bWwgKSA6CgkJCQkJbWF0Y2hBbnlDb250ZXh0KCBlbGVtLCBjb250ZXh0LCB4bWwgKSApOwoJCQkvLyBBdm9pZCBoYW5naW5nIG9udG8gZWxlbWVudCAoaXNzdWUgIzI5OSkKCQkJY2hlY2tDb250ZXh0ID0gbnVsbDsKCQkJcmV0dXJuIHJldDsKCQl9IF07CgoJZm9yICggOyBpIDwgbGVuOyBpKysgKSB7CgkJaWYgKCAobWF0Y2hlciA9IEV4cHIucmVsYXRpdmVbIHRva2Vuc1tpXS50eXBlIF0pICkgewoJCQltYXRjaGVycyA9IFsgYWRkQ29tYmluYXRvcihlbGVtZW50TWF0Y2hlciggbWF0Y2hlcnMgKSwgbWF0Y2hlcikgXTsKCQl9IGVsc2UgewoJCQltYXRjaGVyID0gRXhwci5maWx0ZXJbIHRva2Vuc1tpXS50eXBlIF0uYXBwbHkoIG51bGwsIHRva2Vuc1tpXS5tYXRjaGVzICk7CgoJCQkvLyBSZXR1cm4gc3BlY2lhbCB1cG9uIHNlZWluZyBhIHBvc2l0aW9uYWwgbWF0Y2hlcgoJCQlpZiAoIG1hdGNoZXJbIGV4cGFuZG8gXSApIHsKCQkJCS8vIEZpbmQgdGhlIG5leHQgcmVsYXRpdmUgb3BlcmF0b3IgKGlmIGFueSkgZm9yIHByb3BlciBoYW5kbGluZwoJCQkJaiA9ICsraTsKCQkJCWZvciAoIDsgaiA8IGxlbjsgaisrICkgewoJCQkJCWlmICggRXhwci5yZWxhdGl2ZVsgdG9rZW5zW2pdLnR5cGUgXSApIHsKCQkJCQkJYnJlYWs7CgkJCQkJfQoJCQkJfQoJCQkJcmV0dXJuIHNldE1hdGNoZXIoCgkJCQkJaSA+IDEgJiYgZWxlbWVudE1hdGNoZXIoIG1hdGNoZXJzICksCgkJCQkJaSA+IDEgJiYgdG9TZWxlY3RvcigKCQkJCQkJLy8gSWYgdGhlIHByZWNlZGluZyB0b2tlbiB3YXMgYSBkZXNjZW5kYW50IGNvbWJpbmF0b3IsIGluc2VydCBhbiBpbXBsaWNpdCBhbnktZWxlbWVudCBgKmAKCQkJCQkJdG9rZW5zLnNsaWNlKCAwLCBpIC0gMSApLmNvbmNhdCh7IHZhbHVlOiB0b2tlbnNbIGkgLSAyIF0udHlwZSA9PT0gIiAiID8gIioiIDogIiIgfSkKCQkJCQkpLnJlcGxhY2UoIHJ0cmltLCAiJDEiICksCgkJCQkJbWF0Y2hlciwKCQkJCQlpIDwgaiAmJiBtYXRjaGVyRnJvbVRva2VucyggdG9rZW5zLnNsaWNlKCBpLCBqICkgKSwKCQkJCQlqIDwgbGVuICYmIG1hdGNoZXJGcm9tVG9rZW5zKCAodG9rZW5zID0gdG9rZW5zLnNsaWNlKCBqICkpICksCgkJCQkJaiA8IGxlbiAmJiB0b1NlbGVjdG9yKCB0b2tlbnMgKQoJCQkJKTsKCQkJfQoJCQltYXRjaGVycy5wdXNoKCBtYXRjaGVyICk7CgkJfQoJfQoKCXJldHVybiBlbGVtZW50TWF0Y2hlciggbWF0Y2hlcnMgKTsKfQoKZnVuY3Rpb24gbWF0Y2hlckZyb21Hcm91cE1hdGNoZXJzKCBlbGVtZW50TWF0Y2hlcnMsIHNldE1hdGNoZXJzICkgewoJdmFyIGJ5U2V0ID0gc2V0TWF0Y2hlcnMubGVuZ3RoID4gMCwKCQlieUVsZW1lbnQgPSBlbGVtZW50TWF0Y2hlcnMubGVuZ3RoID4gMCwKCQlzdXBlck1hdGNoZXIgPSBmdW5jdGlvbiggc2VlZCwgY29udGV4dCwgeG1sLCByZXN1bHRzLCBvdXRlcm1vc3QgKSB7CgkJCXZhciBlbGVtLCBqLCBtYXRjaGVyLAoJCQkJbWF0Y2hlZENvdW50ID0gMCwKCQkJCWkgPSAiMCIsCgkJCQl1bm1hdGNoZWQgPSBzZWVkICYmIFtdLAoJCQkJc2V0TWF0Y2hlZCA9IFtdLAoJCQkJY29udGV4dEJhY2t1cCA9IG91dGVybW9zdENvbnRleHQsCgkJCQkvLyBXZSBtdXN0IGFsd2F5cyBoYXZlIGVpdGhlciBzZWVkIGVsZW1lbnRzIG9yIG91dGVybW9zdCBjb250ZXh0CgkJCQllbGVtcyA9IHNlZWQgfHwgYnlFbGVtZW50ICYmIEV4cHIuZmluZFsiVEFHIl0oICIqIiwgb3V0ZXJtb3N0ICksCgkJCQkvLyBVc2UgaW50ZWdlciBkaXJydW5zIGlmZiB0aGlzIGlzIHRoZSBvdXRlcm1vc3QgbWF0Y2hlcgoJCQkJZGlycnVuc1VuaXF1ZSA9IChkaXJydW5zICs9IGNvbnRleHRCYWNrdXAgPT0gbnVsbCA/IDEgOiBNYXRoLnJhbmRvbSgpIHx8IDAuMSksCgkJCQlsZW4gPSBlbGVtcy5sZW5ndGg7CgoJCQlpZiAoIG91dGVybW9zdCApIHsKCQkJCW91dGVybW9zdENvbnRleHQgPSBjb250ZXh0ID09PSBkb2N1bWVudCB8fCBjb250ZXh0IHx8IG91dGVybW9zdDsKCQkJfQoKCQkJLy8gQWRkIGVsZW1lbnRzIHBhc3NpbmcgZWxlbWVudE1hdGNoZXJzIGRpcmVjdGx5IHRvIHJlc3VsdHMKCQkJLy8gU3VwcG9ydDogSUU8OSwgU2FmYXJpCgkJCS8vIFRvbGVyYXRlIE5vZGVMaXN0IHByb3BlcnRpZXMgKElFOiAibGVuZ3RoIjsgU2FmYXJpOiA8bnVtYmVyPikgbWF0Y2hpbmcgZWxlbWVudHMgYnkgaWQKCQkJZm9yICggOyBpICE9PSBsZW4gJiYgKGVsZW0gPSBlbGVtc1tpXSkgIT0gbnVsbDsgaSsrICkgewoJCQkJaWYgKCBieUVsZW1lbnQgJiYgZWxlbSApIHsKCQkJCQlqID0gMDsKCQkJCQlpZiAoICFjb250ZXh0ICYmIGVsZW0ub3duZXJEb2N1bWVudCAhPT0gZG9jdW1lbnQgKSB7CgkJCQkJCXNldERvY3VtZW50KCBlbGVtICk7CgkJCQkJCXhtbCA9ICFkb2N1bWVudElzSFRNTDsKCQkJCQl9CgkJCQkJd2hpbGUgKCAobWF0Y2hlciA9IGVsZW1lbnRNYXRjaGVyc1tqKytdKSApIHsKCQkJCQkJaWYgKCBtYXRjaGVyKCBlbGVtLCBjb250ZXh0IHx8IGRvY3VtZW50LCB4bWwpICkgewoJCQkJCQkJcmVzdWx0cy5wdXNoKCBlbGVtICk7CgkJCQkJCQlicmVhazsKCQkJCQkJfQoJCQkJCX0KCQkJCQlpZiAoIG91dGVybW9zdCApIHsKCQkJCQkJZGlycnVucyA9IGRpcnJ1bnNVbmlxdWU7CgkJCQkJfQoJCQkJfQoKCQkJCS8vIFRyYWNrIHVubWF0Y2hlZCBlbGVtZW50cyBmb3Igc2V0IGZpbHRlcnMKCQkJCWlmICggYnlTZXQgKSB7CgkJCQkJLy8gVGhleSB3aWxsIGhhdmUgZ29uZSB0aHJvdWdoIGFsbCBwb3NzaWJsZSBtYXRjaGVycwoJCQkJCWlmICggKGVsZW0gPSAhbWF0Y2hlciAmJiBlbGVtKSApIHsKCQkJCQkJbWF0Y2hlZENvdW50LS07CgkJCQkJfQoKCQkJCQkvLyBMZW5ndGhlbiB0aGUgYXJyYXkgZm9yIGV2ZXJ5IGVsZW1lbnQsIG1hdGNoZWQgb3Igbm90CgkJCQkJaWYgKCBzZWVkICkgewoJCQkJCQl1bm1hdGNoZWQucHVzaCggZWxlbSApOwoJCQkJCX0KCQkJCX0KCQkJfQoKCQkJLy8gYGlgIGlzIG5vdyB0aGUgY291bnQgb2YgZWxlbWVudHMgdmlzaXRlZCBhYm92ZSwgYW5kIGFkZGluZyBpdCB0byBgbWF0Y2hlZENvdW50YAoJCQkvLyBtYWtlcyB0aGUgbGF0dGVyIG5vbm5lZ2F0aXZlLgoJCQltYXRjaGVkQ291bnQgKz0gaTsKCgkJCS8vIEFwcGx5IHNldCBmaWx0ZXJzIHRvIHVubWF0Y2hlZCBlbGVtZW50cwoJCQkvLyBOT1RFOiBUaGlzIGNhbiBiZSBza2lwcGVkIGlmIHRoZXJlIGFyZSBubyB1bm1hdGNoZWQgZWxlbWVudHMgKGkuZS4sIGBtYXRjaGVkQ291bnRgCgkJCS8vIGVxdWFscyBgaWApLCB1bmxlc3Mgd2UgZGlkbid0IHZpc2l0IF9hbnlfIGVsZW1lbnRzIGluIHRoZSBhYm92ZSBsb29wIGJlY2F1c2Ugd2UgaGF2ZQoJCQkvLyBubyBlbGVtZW50IG1hdGNoZXJzIGFuZCBubyBzZWVkLgoJCQkvLyBJbmNyZW1lbnRpbmcgYW4gaW5pdGlhbGx5LXN0cmluZyAiMCIgYGlgIGFsbG93cyBgaWAgdG8gcmVtYWluIGEgc3RyaW5nIG9ubHkgaW4gdGhhdAoJCQkvLyBjYXNlLCB3aGljaCB3aWxsIHJlc3VsdCBpbiBhICIwMCIgYG1hdGNoZWRDb3VudGAgdGhhdCBkaWZmZXJzIGZyb20gYGlgIGJ1dCBpcyBhbHNvCgkJCS8vIG51bWVyaWNhbGx5IHplcm8uCgkJCWlmICggYnlTZXQgJiYgaSAhPT0gbWF0Y2hlZENvdW50ICkgewoJCQkJaiA9IDA7CgkJCQl3aGlsZSAoIChtYXRjaGVyID0gc2V0TWF0Y2hlcnNbaisrXSkgKSB7CgkJCQkJbWF0Y2hlciggdW5tYXRjaGVkLCBzZXRNYXRjaGVkLCBjb250ZXh0LCB4bWwgKTsKCQkJCX0KCgkJCQlpZiAoIHNlZWQgKSB7CgkJCQkJLy8gUmVpbnRlZ3JhdGUgZWxlbWVudCBtYXRjaGVzIHRvIGVsaW1pbmF0ZSB0aGUgbmVlZCBmb3Igc29ydGluZwoJCQkJCWlmICggbWF0Y2hlZENvdW50ID4gMCApIHsKCQkJCQkJd2hpbGUgKCBpLS0gKSB7CgkJCQkJCQlpZiAoICEodW5tYXRjaGVkW2ldIHx8IHNldE1hdGNoZWRbaV0pICkgewoJCQkJCQkJCXNldE1hdGNoZWRbaV0gPSBwb3AuY2FsbCggcmVzdWx0cyApOwoJCQkJCQkJfQoJCQkJCQl9CgkJCQkJfQoKCQkJCQkvLyBEaXNjYXJkIGluZGV4IHBsYWNlaG9sZGVyIHZhbHVlcyB0byBnZXQgb25seSBhY3R1YWwgbWF0Y2hlcwoJCQkJCXNldE1hdGNoZWQgPSBjb25kZW5zZSggc2V0TWF0Y2hlZCApOwoJCQkJfQoKCQkJCS8vIEFkZCBtYXRjaGVzIHRvIHJlc3VsdHMKCQkJCXB1c2guYXBwbHkoIHJlc3VsdHMsIHNldE1hdGNoZWQgKTsKCgkJCQkvLyBTZWVkbGVzcyBzZXQgbWF0Y2hlcyBzdWNjZWVkaW5nIG11bHRpcGxlIHN1Y2Nlc3NmdWwgbWF0Y2hlcnMgc3RpcHVsYXRlIHNvcnRpbmcKCQkJCWlmICggb3V0ZXJtb3N0ICYmICFzZWVkICYmIHNldE1hdGNoZWQubGVuZ3RoID4gMCAmJgoJCQkJCSggbWF0Y2hlZENvdW50ICsgc2V0TWF0Y2hlcnMubGVuZ3RoICkgPiAxICkgewoKCQkJCQlTaXp6bGUudW5pcXVlU29ydCggcmVzdWx0cyApOwoJCQkJfQoJCQl9CgoJCQkvLyBPdmVycmlkZSBtYW5pcHVsYXRpb24gb2YgZ2xvYmFscyBieSBuZXN0ZWQgbWF0Y2hlcnMKCQkJaWYgKCBvdXRlcm1vc3QgKSB7CgkJCQlkaXJydW5zID0gZGlycnVuc1VuaXF1ZTsKCQkJCW91dGVybW9zdENvbnRleHQgPSBjb250ZXh0QmFja3VwOwoJCQl9CgoJCQlyZXR1cm4gdW5tYXRjaGVkOwoJCX07CgoJcmV0dXJuIGJ5U2V0ID8KCQltYXJrRnVuY3Rpb24oIHN1cGVyTWF0Y2hlciApIDoKCQlzdXBlck1hdGNoZXI7Cn0KCmNvbXBpbGUgPSBTaXp6bGUuY29tcGlsZSA9IGZ1bmN0aW9uKCBzZWxlY3RvciwgbWF0Y2ggLyogSW50ZXJuYWwgVXNlIE9ubHkgKi8gKSB7Cgl2YXIgaSwKCQlzZXRNYXRjaGVycyA9IFtdLAoJCWVsZW1lbnRNYXRjaGVycyA9IFtdLAoJCWNhY2hlZCA9IGNvbXBpbGVyQ2FjaGVbIHNlbGVjdG9yICsgIiAiIF07CgoJaWYgKCAhY2FjaGVkICkgewoJCS8vIEdlbmVyYXRlIGEgZnVuY3Rpb24gb2YgcmVjdXJzaXZlIGZ1bmN0aW9ucyB0aGF0IGNhbiBiZSB1c2VkIHRvIGNoZWNrIGVhY2ggZWxlbWVudAoJCWlmICggIW1hdGNoICkgewoJCQltYXRjaCA9IHRva2VuaXplKCBzZWxlY3RvciApOwoJCX0KCQlpID0gbWF0Y2gubGVuZ3RoOwoJCXdoaWxlICggaS0tICkgewoJCQljYWNoZWQgPSBtYXRjaGVyRnJvbVRva2VucyggbWF0Y2hbaV0gKTsKCQkJaWYgKCBjYWNoZWRbIGV4cGFuZG8gXSApIHsKCQkJCXNldE1hdGNoZXJzLnB1c2goIGNhY2hlZCApOwoJCQl9IGVsc2UgewoJCQkJZWxlbWVudE1hdGNoZXJzLnB1c2goIGNhY2hlZCApOwoJCQl9CgkJfQoKCQkvLyBDYWNoZSB0aGUgY29tcGlsZWQgZnVuY3Rpb24KCQljYWNoZWQgPSBjb21waWxlckNhY2hlKCBzZWxlY3RvciwgbWF0Y2hlckZyb21Hcm91cE1hdGNoZXJzKCBlbGVtZW50TWF0Y2hlcnMsIHNldE1hdGNoZXJzICkgKTsKCgkJLy8gU2F2ZSBzZWxlY3RvciBhbmQgdG9rZW5pemF0aW9uCgkJY2FjaGVkLnNlbGVjdG9yID0gc2VsZWN0b3I7Cgl9CglyZXR1cm4gY2FjaGVkOwp9OwoKLyoqCiAqIEEgbG93LWxldmVsIHNlbGVjdGlvbiBmdW5jdGlvbiB0aGF0IHdvcmtzIHdpdGggU2l6emxlJ3MgY29tcGlsZWQKICogIHNlbGVjdG9yIGZ1bmN0aW9ucwogKiBAcGFyYW0ge1N0cmluZ3xGdW5jdGlvbn0gc2VsZWN0b3IgQSBzZWxlY3RvciBvciBhIHByZS1jb21waWxlZAogKiAgc2VsZWN0b3IgZnVuY3Rpb24gYnVpbHQgd2l0aCBTaXp6bGUuY29tcGlsZQogKiBAcGFyYW0ge0VsZW1lbnR9IGNvbnRleHQKICogQHBhcmFtIHtBcnJheX0gW3Jlc3VsdHNdCiAqIEBwYXJhbSB7QXJyYXl9IFtzZWVkXSBBIHNldCBvZiBlbGVtZW50cyB0byBtYXRjaCBhZ2FpbnN0CiAqLwpzZWxlY3QgPSBTaXp6bGUuc2VsZWN0ID0gZnVuY3Rpb24oIHNlbGVjdG9yLCBjb250ZXh0LCByZXN1bHRzLCBzZWVkICkgewoJdmFyIGksIHRva2VucywgdG9rZW4sIHR5cGUsIGZpbmQsCgkJY29tcGlsZWQgPSB0eXBlb2Ygc2VsZWN0b3IgPT09ICJmdW5jdGlvbiIgJiYgc2VsZWN0b3IsCgkJbWF0Y2ggPSAhc2VlZCAmJiB0b2tlbml6ZSggKHNlbGVjdG9yID0gY29tcGlsZWQuc2VsZWN0b3IgfHwgc2VsZWN0b3IpICk7CgoJcmVzdWx0cyA9IHJlc3VsdHMgfHwgW107CgoJLy8gVHJ5IHRvIG1pbmltaXplIG9wZXJhdGlvbnMgaWYgdGhlcmUgaXMgb25seSBvbmUgc2VsZWN0b3IgaW4gdGhlIGxpc3QgYW5kIG5vIHNlZWQKCS8vICh0aGUgbGF0dGVyIG9mIHdoaWNoIGd1YXJhbnRlZXMgdXMgY29udGV4dCkKCWlmICggbWF0Y2gubGVuZ3RoID09PSAxICkgewoKCQkvLyBSZWR1Y2UgY29udGV4dCBpZiB0aGUgbGVhZGluZyBjb21wb3VuZCBzZWxlY3RvciBpcyBhbiBJRAoJCXRva2VucyA9IG1hdGNoWzBdID0gbWF0Y2hbMF0uc2xpY2UoIDAgKTsKCQlpZiAoIHRva2Vucy5sZW5ndGggPiAyICYmICh0b2tlbiA9IHRva2Vuc1swXSkudHlwZSA9PT0gIklEIiAmJgoJCQkJY29udGV4dC5ub2RlVHlwZSA9PT0gOSAmJiBkb2N1bWVudElzSFRNTCAmJiBFeHByLnJlbGF0aXZlWyB0b2tlbnNbMV0udHlwZSBdICkgewoKCQkJY29udGV4dCA9ICggRXhwci5maW5kWyJJRCJdKCB0b2tlbi5tYXRjaGVzWzBdLnJlcGxhY2UocnVuZXNjYXBlLCBmdW5lc2NhcGUpLCBjb250ZXh0ICkgfHwgW10gKVswXTsKCQkJaWYgKCAhY29udGV4dCApIHsKCQkJCXJldHVybiByZXN1bHRzOwoKCQkJLy8gUHJlY29tcGlsZWQgbWF0Y2hlcnMgd2lsbCBzdGlsbCB2ZXJpZnkgYW5jZXN0cnksIHNvIHN0ZXAgdXAgYSBsZXZlbAoJCQl9IGVsc2UgaWYgKCBjb21waWxlZCApIHsKCQkJCWNvbnRleHQgPSBjb250ZXh0LnBhcmVudE5vZGU7CgkJCX0KCgkJCXNlbGVjdG9yID0gc2VsZWN0b3Iuc2xpY2UoIHRva2Vucy5zaGlmdCgpLnZhbHVlLmxlbmd0aCApOwoJCX0KCgkJLy8gRmV0Y2ggYSBzZWVkIHNldCBmb3IgcmlnaHQtdG8tbGVmdCBtYXRjaGluZwoJCWkgPSBtYXRjaEV4cHJbIm5lZWRzQ29udGV4dCJdLnRlc3QoIHNlbGVjdG9yICkgPyAwIDogdG9rZW5zLmxlbmd0aDsKCQl3aGlsZSAoIGktLSApIHsKCQkJdG9rZW4gPSB0b2tlbnNbaV07CgoJCQkvLyBBYm9ydCBpZiB3ZSBoaXQgYSBjb21iaW5hdG9yCgkJCWlmICggRXhwci5yZWxhdGl2ZVsgKHR5cGUgPSB0b2tlbi50eXBlKSBdICkgewoJCQkJYnJlYWs7CgkJCX0KCQkJaWYgKCAoZmluZCA9IEV4cHIuZmluZFsgdHlwZSBdKSApIHsKCQkJCS8vIFNlYXJjaCwgZXhwYW5kaW5nIGNvbnRleHQgZm9yIGxlYWRpbmcgc2libGluZyBjb21iaW5hdG9ycwoJCQkJaWYgKCAoc2VlZCA9IGZpbmQoCgkJCQkJdG9rZW4ubWF0Y2hlc1swXS5yZXBsYWNlKCBydW5lc2NhcGUsIGZ1bmVzY2FwZSApLAoJCQkJCXJzaWJsaW5nLnRlc3QoIHRva2Vuc1swXS50eXBlICkgJiYgdGVzdENvbnRleHQoIGNvbnRleHQucGFyZW50Tm9kZSApIHx8IGNvbnRleHQKCQkJCSkpICkgewoKCQkJCQkvLyBJZiBzZWVkIGlzIGVtcHR5IG9yIG5vIHRva2VucyByZW1haW4sIHdlIGNhbiByZXR1cm4gZWFybHkKCQkJCQl0b2tlbnMuc3BsaWNlKCBpLCAxICk7CgkJCQkJc2VsZWN0b3IgPSBzZWVkLmxlbmd0aCAmJiB0b1NlbGVjdG9yKCB0b2tlbnMgKTsKCQkJCQlpZiAoICFzZWxlY3RvciApIHsKCQkJCQkJcHVzaC5hcHBseSggcmVzdWx0cywgc2VlZCApOwoJCQkJCQlyZXR1cm4gcmVzdWx0czsKCQkJCQl9CgoJCQkJCWJyZWFrOwoJCQkJfQoJCQl9CgkJfQoJfQoKCS8vIENvbXBpbGUgYW5kIGV4ZWN1dGUgYSBmaWx0ZXJpbmcgZnVuY3Rpb24gaWYgb25lIGlzIG5vdCBwcm92aWRlZAoJLy8gUHJvdmlkZSBgbWF0Y2hgIHRvIGF2b2lkIHJldG9rZW5pemF0aW9uIGlmIHdlIG1vZGlmaWVkIHRoZSBzZWxlY3RvciBhYm92ZQoJKCBjb21waWxlZCB8fCBjb21waWxlKCBzZWxlY3RvciwgbWF0Y2ggKSApKAoJCXNlZWQsCgkJY29udGV4dCwKCQkhZG9jdW1lbnRJc0hUTUwsCgkJcmVzdWx0cywKCQkhY29udGV4dCB8fCByc2libGluZy50ZXN0KCBzZWxlY3RvciApICYmIHRlc3RDb250ZXh0KCBjb250ZXh0LnBhcmVudE5vZGUgKSB8fCBjb250ZXh0CgkpOwoJcmV0dXJuIHJlc3VsdHM7Cn07CgovLyBPbmUtdGltZSBhc3NpZ25tZW50cwoKLy8gU29ydCBzdGFiaWxpdHkKc3VwcG9ydC5zb3J0U3RhYmxlID0gZXhwYW5kby5zcGxpdCgiIikuc29ydCggc29ydE9yZGVyICkuam9pbigiIikgPT09IGV4cGFuZG87CgovLyBTdXBwb3J0OiBDaHJvbWUgMTQtMzUrCi8vIEFsd2F5cyBhc3N1bWUgZHVwbGljYXRlcyBpZiB0aGV5IGFyZW4ndCBwYXNzZWQgdG8gdGhlIGNvbXBhcmlzb24gZnVuY3Rpb24Kc3VwcG9ydC5kZXRlY3REdXBsaWNhdGVzID0gISFoYXNEdXBsaWNhdGU7CgovLyBJbml0aWFsaXplIGFnYWluc3QgdGhlIGRlZmF1bHQgZG9jdW1lbnQKc2V0RG9jdW1lbnQoKTsKCi8vIFN1cHBvcnQ6IFdlYmtpdDw1MzcuMzIgLSBTYWZhcmkgNi4wLjMvQ2hyb21lIDI1IChmaXhlZCBpbiBDaHJvbWUgMjcpCi8vIERldGFjaGVkIG5vZGVzIGNvbmZvdW5kaW5nbHkgZm9sbG93ICplYWNoIG90aGVyKgpzdXBwb3J0LnNvcnREZXRhY2hlZCA9IGFzc2VydChmdW5jdGlvbiggZWwgKSB7CgkvLyBTaG91bGQgcmV0dXJuIDEsIGJ1dCByZXR1cm5zIDQgKGZvbGxvd2luZykKCXJldHVybiBlbC5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbiggZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZmllbGRzZXQiKSApICYgMTsKfSk7CgovLyBTdXBwb3J0OiBJRTw4Ci8vIFByZXZlbnQgYXR0cmlidXRlL3Byb3BlcnR5ICJpbnRlcnBvbGF0aW9uIgovLyBodHRwczovL21zZG4ubWljcm9zb2Z0LmNvbS9lbi11cy9saWJyYXJ5L21zNTM2NDI5JTI4VlMuODUlMjkuYXNweAppZiAoICFhc3NlcnQoZnVuY3Rpb24oIGVsICkgewoJZWwuaW5uZXJIVE1MID0gIjxhIGhyZWY9JyMnPjwvYT4iOwoJcmV0dXJuIGVsLmZpcnN0Q2hpbGQuZ2V0QXR0cmlidXRlKCJocmVmIikgPT09ICIjIiA7Cn0pICkgewoJYWRkSGFuZGxlKCAidHlwZXxocmVmfGhlaWdodHx3aWR0aCIsIGZ1bmN0aW9uKCBlbGVtLCBuYW1lLCBpc1hNTCApIHsKCQlpZiAoICFpc1hNTCApIHsKCQkJcmV0dXJuIGVsZW0uZ2V0QXR0cmlidXRlKCBuYW1lLCBuYW1lLnRvTG93ZXJDYXNlKCkgPT09ICJ0eXBlIiA/IDEgOiAyICk7CgkJfQoJfSk7Cn0KCi8vIFN1cHBvcnQ6IElFPDkKLy8gVXNlIGRlZmF1bHRWYWx1ZSBpbiBwbGFjZSBvZiBnZXRBdHRyaWJ1dGUoInZhbHVlIikKaWYgKCAhc3VwcG9ydC5hdHRyaWJ1dGVzIHx8ICFhc3NlcnQoZnVuY3Rpb24oIGVsICkgewoJZWwuaW5uZXJIVE1MID0gIjxpbnB1dC8+IjsKCWVsLmZpcnN0Q2hpbGQuc2V0QXR0cmlidXRlKCAidmFsdWUiLCAiIiApOwoJcmV0dXJuIGVsLmZpcnN0Q2hpbGQuZ2V0QXR0cmlidXRlKCAidmFsdWUiICkgPT09ICIiOwp9KSApIHsKCWFkZEhhbmRsZSggInZhbHVlIiwgZnVuY3Rpb24oIGVsZW0sIG5hbWUsIGlzWE1MICkgewoJCWlmICggIWlzWE1MICYmIGVsZW0ubm9kZU5hbWUudG9Mb3dlckNhc2UoKSA9PT0gImlucHV0IiApIHsKCQkJcmV0dXJuIGVsZW0uZGVmYXVsdFZhbHVlOwoJCX0KCX0pOwp9CgovLyBTdXBwb3J0OiBJRTw5Ci8vIFVzZSBnZXRBdHRyaWJ1dGVOb2RlIHRvIGZldGNoIGJvb2xlYW5zIHdoZW4gZ2V0QXR0cmlidXRlIGxpZXMKaWYgKCAhYXNzZXJ0KGZ1bmN0aW9uKCBlbCApIHsKCXJldHVybiBlbC5nZXRBdHRyaWJ1dGUoImRpc2FibGVkIikgPT0gbnVsbDsKfSkgKSB7CglhZGRIYW5kbGUoIGJvb2xlYW5zLCBmdW5jdGlvbiggZWxlbSwgbmFtZSwgaXNYTUwgKSB7CgkJdmFyIHZhbDsKCQlpZiAoICFpc1hNTCApIHsKCQkJcmV0dXJuIGVsZW1bIG5hbWUgXSA9PT0gdHJ1ZSA/IG5hbWUudG9Mb3dlckNhc2UoKSA6CgkJCQkJKHZhbCA9IGVsZW0uZ2V0QXR0cmlidXRlTm9kZSggbmFtZSApKSAmJiB2YWwuc3BlY2lmaWVkID8KCQkJCQl2YWwudmFsdWUgOgoJCQkJbnVsbDsKCQl9Cgl9KTsKfQoKcmV0dXJuIFNpenpsZTsKCn0pKCB3aW5kb3cgKTsKCgoKalF1ZXJ5LmZpbmQgPSBTaXp6bGU7CmpRdWVyeS5leHByID0gU2l6emxlLnNlbGVjdG9yczsKCi8vIERlcHJlY2F0ZWQKalF1ZXJ5LmV4cHJbICI6IiBdID0galF1ZXJ5LmV4cHIucHNldWRvczsKalF1ZXJ5LnVuaXF1ZVNvcnQgPSBqUXVlcnkudW5pcXVlID0gU2l6emxlLnVuaXF1ZVNvcnQ7CmpRdWVyeS50ZXh0ID0gU2l6emxlLmdldFRleHQ7CmpRdWVyeS5pc1hNTERvYyA9IFNpenpsZS5pc1hNTDsKalF1ZXJ5LmNvbnRhaW5zID0gU2l6emxlLmNvbnRhaW5zOwpqUXVlcnkuZXNjYXBlU2VsZWN0b3IgPSBTaXp6bGUuZXNjYXBlOwoKCgoKdmFyIGRpciA9IGZ1bmN0aW9uKCBlbGVtLCBkaXIsIHVudGlsICkgewoJdmFyIG1hdGNoZWQgPSBbXSwKCQl0cnVuY2F0ZSA9IHVudGlsICE9PSB1bmRlZmluZWQ7CgoJd2hpbGUgKCAoIGVsZW0gPSBlbGVtWyBkaXIgXSApICYmIGVsZW0ubm9kZVR5cGUgIT09IDkgKSB7CgkJaWYgKCBlbGVtLm5vZGVUeXBlID09PSAxICkgewoJCQlpZiAoIHRydW5jYXRlICYmIGpRdWVyeSggZWxlbSApLmlzKCB1bnRpbCApICkgewoJCQkJYnJlYWs7CgkJCX0KCQkJbWF0Y2hlZC5wdXNoKCBlbGVtICk7CgkJfQoJfQoJcmV0dXJuIG1hdGNoZWQ7Cn07CgoKdmFyIHNpYmxpbmdzID0gZnVuY3Rpb24oIG4sIGVsZW0gKSB7Cgl2YXIgbWF0Y2hlZCA9IFtdOwoKCWZvciAoIDsgbjsgbiA9IG4ubmV4dFNpYmxpbmcgKSB7CgkJaWYgKCBuLm5vZGVUeXBlID09PSAxICYmIG4gIT09IGVsZW0gKSB7CgkJCW1hdGNoZWQucHVzaCggbiApOwoJCX0KCX0KCglyZXR1cm4gbWF0Y2hlZDsKfTsKCgp2YXIgcm5lZWRzQ29udGV4dCA9IGpRdWVyeS5leHByLm1hdGNoLm5lZWRzQ29udGV4dDsKCnZhciByc2luZ2xlVGFnID0gKCAvXjwoW2Etel1bXlwvXDA+Olx4MjBcdFxyXG5cZl0qKVtceDIwXHRcclxuXGZdKlwvPz4oPzo8XC9cMT58KSQvaSApOwoKCgp2YXIgcmlzU2ltcGxlID0gL14uW146I1xbXC4sXSokLzsKCi8vIEltcGxlbWVudCB0aGUgaWRlbnRpY2FsIGZ1bmN0aW9uYWxpdHkgZm9yIGZpbHRlciBhbmQgbm90CmZ1bmN0aW9uIHdpbm5vdyggZWxlbWVudHMsIHF1YWxpZmllciwgbm90ICkgewoJaWYgKCBqUXVlcnkuaXNGdW5jdGlvbiggcXVhbGlmaWVyICkgKSB7CgkJcmV0dXJuIGpRdWVyeS5ncmVwKCBlbGVtZW50cywgZnVuY3Rpb24oIGVsZW0sIGkgKSB7CgkJCXJldHVybiAhIXF1YWxpZmllci5jYWxsKCBlbGVtLCBpLCBlbGVtICkgIT09IG5vdDsKCQl9ICk7Cgl9CgoJLy8gU2luZ2xlIGVsZW1lbnQKCWlmICggcXVhbGlmaWVyLm5vZGVUeXBlICkgewoJCXJldHVybiBqUXVlcnkuZ3JlcCggZWxlbWVudHMsIGZ1bmN0aW9uKCBlbGVtICkgewoJCQlyZXR1cm4gKCBlbGVtID09PSBxdWFsaWZpZXIgKSAhPT0gbm90OwoJCX0gKTsKCX0KCgkvLyBBcnJheWxpa2Ugb2YgZWxlbWVudHMgKGpRdWVyeSwgYXJndW1lbnRzLCBBcnJheSkKCWlmICggdHlwZW9mIHF1YWxpZmllciAhPT0gInN0cmluZyIgKSB7CgkJcmV0dXJuIGpRdWVyeS5ncmVwKCBlbGVtZW50cywgZnVuY3Rpb24oIGVsZW0gKSB7CgkJCXJldHVybiAoIGluZGV4T2YuY2FsbCggcXVhbGlmaWVyLCBlbGVtICkgPiAtMSApICE9PSBub3Q7CgkJfSApOwoJfQoKCS8vIFNpbXBsZSBzZWxlY3RvciB0aGF0IGNhbiBiZSBmaWx0ZXJlZCBkaXJlY3RseSwgcmVtb3Zpbmcgbm9uLUVsZW1lbnRzCglpZiAoIHJpc1NpbXBsZS50ZXN0KCBxdWFsaWZpZXIgKSApIHsKCQlyZXR1cm4galF1ZXJ5LmZpbHRlciggcXVhbGlmaWVyLCBlbGVtZW50cywgbm90ICk7Cgl9CgoJLy8gQ29tcGxleCBzZWxlY3RvciwgY29tcGFyZSB0aGUgdHdvIHNldHMsIHJlbW92aW5nIG5vbi1FbGVtZW50cwoJcXVhbGlmaWVyID0galF1ZXJ5LmZpbHRlciggcXVhbGlmaWVyLCBlbGVtZW50cyApOwoJcmV0dXJuIGpRdWVyeS5ncmVwKCBlbGVtZW50cywgZnVuY3Rpb24oIGVsZW0gKSB7CgkJcmV0dXJuICggaW5kZXhPZi5jYWxsKCBxdWFsaWZpZXIsIGVsZW0gKSA+IC0xICkgIT09IG5vdCAmJiBlbGVtLm5vZGVUeXBlID09PSAxOwoJfSApOwp9CgpqUXVlcnkuZmlsdGVyID0gZnVuY3Rpb24oIGV4cHIsIGVsZW1zLCBub3QgKSB7Cgl2YXIgZWxlbSA9IGVsZW1zWyAwIF07CgoJaWYgKCBub3QgKSB7CgkJZXhwciA9ICI6bm90KCIgKyBleHByICsgIikiOwoJfQoKCWlmICggZWxlbXMubGVuZ3RoID09PSAxICYmIGVsZW0ubm9kZVR5cGUgPT09IDEgKSB7CgkJcmV0dXJuIGpRdWVyeS5maW5kLm1hdGNoZXNTZWxlY3RvciggZWxlbSwgZXhwciApID8gWyBlbGVtIF0gOiBbXTsKCX0KCglyZXR1cm4galF1ZXJ5LmZpbmQubWF0Y2hlcyggZXhwciwgalF1ZXJ5LmdyZXAoIGVsZW1zLCBmdW5jdGlvbiggZWxlbSApIHsKCQlyZXR1cm4gZWxlbS5ub2RlVHlwZSA9PT0gMTsKCX0gKSApOwp9OwoKalF1ZXJ5LmZuLmV4dGVuZCggewoJZmluZDogZnVuY3Rpb24oIHNlbGVjdG9yICkgewoJCXZhciBpLCByZXQsCgkJCWxlbiA9IHRoaXMubGVuZ3RoLAoJCQlzZWxmID0gdGhpczsKCgkJaWYgKCB0eXBlb2Ygc2VsZWN0b3IgIT09ICJzdHJpbmciICkgewoJCQlyZXR1cm4gdGhpcy5wdXNoU3RhY2soIGpRdWVyeSggc2VsZWN0b3IgKS5maWx0ZXIoIGZ1bmN0aW9uKCkgewoJCQkJZm9yICggaSA9IDA7IGkgPCBsZW47IGkrKyApIHsKCQkJCQlpZiAoIGpRdWVyeS5jb250YWlucyggc2VsZlsgaSBdLCB0aGlzICkgKSB7CgkJCQkJCXJldHVybiB0cnVlOwoJCQkJCX0KCQkJCX0KCQkJfSApICk7CgkJfQoKCQlyZXQgPSB0aGlzLnB1c2hTdGFjayggW10gKTsKCgkJZm9yICggaSA9IDA7IGkgPCBsZW47IGkrKyApIHsKCQkJalF1ZXJ5LmZpbmQoIHNlbGVjdG9yLCBzZWxmWyBpIF0sIHJldCApOwoJCX0KCgkJcmV0dXJuIGxlbiA+IDEgPyBqUXVlcnkudW5pcXVlU29ydCggcmV0ICkgOiByZXQ7Cgl9LAoJZmlsdGVyOiBmdW5jdGlvbiggc2VsZWN0b3IgKSB7CgkJcmV0dXJuIHRoaXMucHVzaFN0YWNrKCB3aW5ub3coIHRoaXMsIHNlbGVjdG9yIHx8IFtdLCBmYWxzZSApICk7Cgl9LAoJbm90OiBmdW5jdGlvbiggc2VsZWN0b3IgKSB7CgkJcmV0dXJuIHRoaXMucHVzaFN0YWNrKCB3aW5ub3coIHRoaXMsIHNlbGVjdG9yIHx8IFtdLCB0cnVlICkgKTsKCX0sCglpczogZnVuY3Rpb24oIHNlbGVjdG9yICkgewoJCXJldHVybiAhIXdpbm5vdygKCQkJdGhpcywKCgkJCS8vIElmIHRoaXMgaXMgYSBwb3NpdGlvbmFsL3JlbGF0aXZlIHNlbGVjdG9yLCBjaGVjayBtZW1iZXJzaGlwIGluIHRoZSByZXR1cm5lZCBzZXQKCQkJLy8gc28gJCgicDpmaXJzdCIpLmlzKCJwOmxhc3QiKSB3b24ndCByZXR1cm4gdHJ1ZSBmb3IgYSBkb2Mgd2l0aCB0d28gInAiLgoJCQl0eXBlb2Ygc2VsZWN0b3IgPT09ICJzdHJpbmciICYmIHJuZWVkc0NvbnRleHQudGVzdCggc2VsZWN0b3IgKSA/CgkJCQlqUXVlcnkoIHNlbGVjdG9yICkgOgoJCQkJc2VsZWN0b3IgfHwgW10sCgkJCWZhbHNlCgkJKS5sZW5ndGg7Cgl9Cn0gKTsKCgovLyBJbml0aWFsaXplIGEgalF1ZXJ5IG9iamVjdAoKCi8vIEEgY2VudHJhbCByZWZlcmVuY2UgdG8gdGhlIHJvb3QgalF1ZXJ5KGRvY3VtZW50KQp2YXIgcm9vdGpRdWVyeSwKCgkvLyBBIHNpbXBsZSB3YXkgdG8gY2hlY2sgZm9yIEhUTUwgc3RyaW5ncwoJLy8gUHJpb3JpdGl6ZSAjaWQgb3ZlciA8dGFnPiB0byBhdm9pZCBYU1MgdmlhIGxvY2F0aW9uLmhhc2ggKCM5NTIxKQoJLy8gU3RyaWN0IEhUTUwgcmVjb2duaXRpb24gKCMxMTI5MDogbXVzdCBzdGFydCB3aXRoIDwpCgkvLyBTaG9ydGN1dCBzaW1wbGUgI2lkIGNhc2UgZm9yIHNwZWVkCglycXVpY2tFeHByID0gL14oPzpccyooPFtcd1xXXSs+KVtePl0qfCMoW1x3LV0rKSkkLywKCglpbml0ID0galF1ZXJ5LmZuLmluaXQgPSBmdW5jdGlvbiggc2VsZWN0b3IsIGNvbnRleHQsIHJvb3QgKSB7CgkJdmFyIG1hdGNoLCBlbGVtOwoKCQkvLyBIQU5ETEU6ICQoIiIpLCAkKG51bGwpLCAkKHVuZGVmaW5lZCksICQoZmFsc2UpCgkJaWYgKCAhc2VsZWN0b3IgKSB7CgkJCXJldHVybiB0aGlzOwoJCX0KCgkJLy8gTWV0aG9kIGluaXQoKSBhY2NlcHRzIGFuIGFsdGVybmF0ZSByb290alF1ZXJ5CgkJLy8gc28gbWlncmF0ZSBjYW4gc3VwcG9ydCBqUXVlcnkuc3ViIChnaC0yMTAxKQoJCXJvb3QgPSByb290IHx8IHJvb3RqUXVlcnk7CgoJCS8vIEhhbmRsZSBIVE1MIHN0cmluZ3MKCQlpZiAoIHR5cGVvZiBzZWxlY3RvciA9PT0gInN0cmluZyIgKSB7CgkJCWlmICggc2VsZWN0b3JbIDAgXSA9PT0gIjwiICYmCgkJCQlzZWxlY3Rvclsgc2VsZWN0b3IubGVuZ3RoIC0gMSBdID09PSAiPiIgJiYKCQkJCXNlbGVjdG9yLmxlbmd0aCA+PSAzICkgewoKCQkJCS8vIEFzc3VtZSB0aGF0IHN0cmluZ3MgdGhhdCBzdGFydCBhbmQgZW5kIHdpdGggPD4gYXJlIEhUTUwgYW5kIHNraXAgdGhlIHJlZ2V4IGNoZWNrCgkJCQltYXRjaCA9IFsgbnVsbCwgc2VsZWN0b3IsIG51bGwgXTsKCgkJCX0gZWxzZSB7CgkJCQltYXRjaCA9IHJxdWlja0V4cHIuZXhlYyggc2VsZWN0b3IgKTsKCQkJfQoKCQkJLy8gTWF0Y2ggaHRtbCBvciBtYWtlIHN1cmUgbm8gY29udGV4dCBpcyBzcGVjaWZpZWQgZm9yICNpZAoJCQlpZiAoIG1hdGNoICYmICggbWF0Y2hbIDEgXSB8fCAhY29udGV4dCApICkgewoKCQkJCS8vIEhBTkRMRTogJChodG1sKSAtPiAkKGFycmF5KQoJCQkJaWYgKCBtYXRjaFsgMSBdICkgewoJCQkJCWNvbnRleHQgPSBjb250ZXh0IGluc3RhbmNlb2YgalF1ZXJ5ID8gY29udGV4dFsgMCBdIDogY29udGV4dDsKCgkJCQkJLy8gT3B0aW9uIHRvIHJ1biBzY3JpcHRzIGlzIHRydWUgZm9yIGJhY2stY29tcGF0CgkJCQkJLy8gSW50ZW50aW9uYWxseSBsZXQgdGhlIGVycm9yIGJlIHRocm93biBpZiBwYXJzZUhUTUwgaXMgbm90IHByZXNlbnQKCQkJCQlqUXVlcnkubWVyZ2UoIHRoaXMsIGpRdWVyeS5wYXJzZUhUTUwoCgkJCQkJCW1hdGNoWyAxIF0sCgkJCQkJCWNvbnRleHQgJiYgY29udGV4dC5ub2RlVHlwZSA/IGNvbnRleHQub3duZXJEb2N1bWVudCB8fCBjb250ZXh0IDogZG9jdW1lbnQsCgkJCQkJCXRydWUKCQkJCQkpICk7CgoJCQkJCS8vIEhBTkRMRTogJChodG1sLCBwcm9wcykKCQkJCQlpZiAoIHJzaW5nbGVUYWcudGVzdCggbWF0Y2hbIDEgXSApICYmIGpRdWVyeS5pc1BsYWluT2JqZWN0KCBjb250ZXh0ICkgKSB7CgkJCQkJCWZvciAoIG1hdGNoIGluIGNvbnRleHQgKSB7CgoJCQkJCQkJLy8gUHJvcGVydGllcyBvZiBjb250ZXh0IGFyZSBjYWxsZWQgYXMgbWV0aG9kcyBpZiBwb3NzaWJsZQoJCQkJCQkJaWYgKCBqUXVlcnkuaXNGdW5jdGlvbiggdGhpc1sgbWF0Y2ggXSApICkgewoJCQkJCQkJCXRoaXNbIG1hdGNoIF0oIGNvbnRleHRbIG1hdGNoIF0gKTsKCgkJCQkJCQkvLyAuLi5hbmQgb3RoZXJ3aXNlIHNldCBhcyBhdHRyaWJ1dGVzCgkJCQkJCQl9IGVsc2UgewoJCQkJCQkJCXRoaXMuYXR0ciggbWF0Y2gsIGNvbnRleHRbIG1hdGNoIF0gKTsKCQkJCQkJCX0KCQkJCQkJfQoJCQkJCX0KCgkJCQkJcmV0dXJuIHRoaXM7CgoJCQkJLy8gSEFORExFOiAkKCNpZCkKCQkJCX0gZWxzZSB7CgkJCQkJZWxlbSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCBtYXRjaFsgMiBdICk7CgoJCQkJCWlmICggZWxlbSApIHsKCgkJCQkJCS8vIEluamVjdCB0aGUgZWxlbWVudCBkaXJlY3RseSBpbnRvIHRoZSBqUXVlcnkgb2JqZWN0CgkJCQkJCXRoaXNbIDAgXSA9IGVsZW07CgkJCQkJCXRoaXMubGVuZ3RoID0gMTsKCQkJCQl9CgkJCQkJcmV0dXJuIHRoaXM7CgkJCQl9CgoJCQkvLyBIQU5ETEU6ICQoZXhwciwgJCguLi4pKQoJCQl9IGVsc2UgaWYgKCAhY29udGV4dCB8fCBjb250ZXh0LmpxdWVyeSApIHsKCQkJCXJldHVybiAoIGNvbnRleHQgfHwgcm9vdCApLmZpbmQoIHNlbGVjdG9yICk7CgoJCQkvLyBIQU5ETEU6ICQoZXhwciwgY29udGV4dCkKCQkJLy8gKHdoaWNoIGlzIGp1c3QgZXF1aXZhbGVudCB0bzogJChjb250ZXh0KS5maW5kKGV4cHIpCgkJCX0gZWxzZSB7CgkJCQlyZXR1cm4gdGhpcy5jb25zdHJ1Y3RvciggY29udGV4dCApLmZpbmQoIHNlbGVjdG9yICk7CgkJCX0KCgkJLy8gSEFORExFOiAkKERPTUVsZW1lbnQpCgkJfSBlbHNlIGlmICggc2VsZWN0b3Iubm9kZVR5cGUgKSB7CgkJCXRoaXNbIDAgXSA9IHNlbGVjdG9yOwoJCQl0aGlzLmxlbmd0aCA9IDE7CgkJCXJldHVybiB0aGlzOwoKCQkvLyBIQU5ETEU6ICQoZnVuY3Rpb24pCgkJLy8gU2hvcnRjdXQgZm9yIGRvY3VtZW50IHJlYWR5CgkJfSBlbHNlIGlmICggalF1ZXJ5LmlzRnVuY3Rpb24oIHNlbGVjdG9yICkgKSB7CgkJCXJldHVybiByb290LnJlYWR5ICE9PSB1bmRlZmluZWQgPwoJCQkJcm9vdC5yZWFkeSggc2VsZWN0b3IgKSA6CgoJCQkJLy8gRXhlY3V0ZSBpbW1lZGlhdGVseSBpZiByZWFkeSBpcyBub3QgcHJlc2VudAoJCQkJc2VsZWN0b3IoIGpRdWVyeSApOwoJCX0KCgkJcmV0dXJuIGpRdWVyeS5tYWtlQXJyYXkoIHNlbGVjdG9yLCB0aGlzICk7Cgl9OwoKLy8gR2l2ZSB0aGUgaW5pdCBmdW5jdGlvbiB0aGUgalF1ZXJ5IHByb3RvdHlwZSBmb3IgbGF0ZXIgaW5zdGFudGlhdGlvbgppbml0LnByb3RvdHlwZSA9IGpRdWVyeS5mbjsKCi8vIEluaXRpYWxpemUgY2VudHJhbCByZWZlcmVuY2UKcm9vdGpRdWVyeSA9IGpRdWVyeSggZG9jdW1lbnQgKTsKCgp2YXIgcnBhcmVudHNwcmV2ID0gL14oPzpwYXJlbnRzfHByZXYoPzpVbnRpbHxBbGwpKS8sCgoJLy8gTWV0aG9kcyBndWFyYW50ZWVkIHRvIHByb2R1Y2UgYSB1bmlxdWUgc2V0IHdoZW4gc3RhcnRpbmcgZnJvbSBhIHVuaXF1ZSBzZXQKCWd1YXJhbnRlZWRVbmlxdWUgPSB7CgkJY2hpbGRyZW46IHRydWUsCgkJY29udGVudHM6IHRydWUsCgkJbmV4dDogdHJ1ZSwKCQlwcmV2OiB0cnVlCgl9OwoKalF1ZXJ5LmZuLmV4dGVuZCggewoJaGFzOiBmdW5jdGlvbiggdGFyZ2V0ICkgewoJCXZhciB0YXJnZXRzID0galF1ZXJ5KCB0YXJnZXQsIHRoaXMgKSwKCQkJbCA9IHRhcmdldHMubGVuZ3RoOwoKCQlyZXR1cm4gdGhpcy5maWx0ZXIoIGZ1bmN0aW9uKCkgewoJCQl2YXIgaSA9IDA7CgkJCWZvciAoIDsgaSA8IGw7IGkrKyApIHsKCQkJCWlmICggalF1ZXJ5LmNvbnRhaW5zKCB0aGlzLCB0YXJnZXRzWyBpIF0gKSApIHsKCQkJCQlyZXR1cm4gdHJ1ZTsKCQkJCX0KCQkJfQoJCX0gKTsKCX0sCgoJY2xvc2VzdDogZnVuY3Rpb24oIHNlbGVjdG9ycywgY29udGV4dCApIHsKCQl2YXIgY3VyLAoJCQlpID0gMCwKCQkJbCA9IHRoaXMubGVuZ3RoLAoJCQltYXRjaGVkID0gW10sCgkJCXRhcmdldHMgPSB0eXBlb2Ygc2VsZWN0b3JzICE9PSAic3RyaW5nIiAmJiBqUXVlcnkoIHNlbGVjdG9ycyApOwoKCQkvLyBQb3NpdGlvbmFsIHNlbGVjdG9ycyBuZXZlciBtYXRjaCwgc2luY2UgdGhlcmUncyBubyBfc2VsZWN0aW9uXyBjb250ZXh0CgkJaWYgKCAhcm5lZWRzQ29udGV4dC50ZXN0KCBzZWxlY3RvcnMgKSApIHsKCQkJZm9yICggOyBpIDwgbDsgaSsrICkgewoJCQkJZm9yICggY3VyID0gdGhpc1sgaSBdOyBjdXIgJiYgY3VyICE9PSBjb250ZXh0OyBjdXIgPSBjdXIucGFyZW50Tm9kZSApIHsKCgkJCQkJLy8gQWx3YXlzIHNraXAgZG9jdW1lbnQgZnJhZ21lbnRzCgkJCQkJaWYgKCBjdXIubm9kZVR5cGUgPCAxMSAmJiAoIHRhcmdldHMgPwoJCQkJCQl0YXJnZXRzLmluZGV4KCBjdXIgKSA+IC0xIDoKCgkJCQkJCS8vIERvbid0IHBhc3Mgbm9uLWVsZW1lbnRzIHRvIFNpenpsZQoJCQkJCQljdXIubm9kZVR5cGUgPT09IDEgJiYKCQkJCQkJCWpRdWVyeS5maW5kLm1hdGNoZXNTZWxlY3RvciggY3VyLCBzZWxlY3RvcnMgKSApICkgewoKCQkJCQkJbWF0Y2hlZC5wdXNoKCBjdXIgKTsKCQkJCQkJYnJlYWs7CgkJCQkJfQoJCQkJfQoJCQl9CgkJfQoKCQlyZXR1cm4gdGhpcy5wdXNoU3RhY2soIG1hdGNoZWQubGVuZ3RoID4gMSA/IGpRdWVyeS51bmlxdWVTb3J0KCBtYXRjaGVkICkgOiBtYXRjaGVkICk7Cgl9LAoKCS8vIERldGVybWluZSB0aGUgcG9zaXRpb24gb2YgYW4gZWxlbWVudCB3aXRoaW4gdGhlIHNldAoJaW5kZXg6IGZ1bmN0aW9uKCBlbGVtICkgewoKCQkvLyBObyBhcmd1bWVudCwgcmV0dXJuIGluZGV4IGluIHBhcmVudAoJCWlmICggIWVsZW0gKSB7CgkJCXJldHVybiAoIHRoaXNbIDAgXSAmJiB0aGlzWyAwIF0ucGFyZW50Tm9kZSApID8gdGhpcy5maXJzdCgpLnByZXZBbGwoKS5sZW5ndGggOiAtMTsKCQl9CgoJCS8vIEluZGV4IGluIHNlbGVjdG9yCgkJaWYgKCB0eXBlb2YgZWxlbSA9PT0gInN0cmluZyIgKSB7CgkJCXJldHVybiBpbmRleE9mLmNhbGwoIGpRdWVyeSggZWxlbSApLCB0aGlzWyAwIF0gKTsKCQl9CgoJCS8vIExvY2F0ZSB0aGUgcG9zaXRpb24gb2YgdGhlIGRlc2lyZWQgZWxlbWVudAoJCXJldHVybiBpbmRleE9mLmNhbGwoIHRoaXMsCgoJCQkvLyBJZiBpdCByZWNlaXZlcyBhIGpRdWVyeSBvYmplY3QsIHRoZSBmaXJzdCBlbGVtZW50IGlzIHVzZWQKCQkJZWxlbS5qcXVlcnkgPyBlbGVtWyAwIF0gOiBlbGVtCgkJKTsKCX0sCgoJYWRkOiBmdW5jdGlvbiggc2VsZWN0b3IsIGNvbnRleHQgKSB7CgkJcmV0dXJuIHRoaXMucHVzaFN0YWNrKAoJCQlqUXVlcnkudW5pcXVlU29ydCgKCQkJCWpRdWVyeS5tZXJnZSggdGhpcy5nZXQoKSwgalF1ZXJ5KCBzZWxlY3RvciwgY29udGV4dCApICkKCQkJKQoJCSk7Cgl9LAoKCWFkZEJhY2s6IGZ1bmN0aW9uKCBzZWxlY3RvciApIHsKCQlyZXR1cm4gdGhpcy5hZGQoIHNlbGVjdG9yID09IG51bGwgPwoJCQl0aGlzLnByZXZPYmplY3QgOiB0aGlzLnByZXZPYmplY3QuZmlsdGVyKCBzZWxlY3RvciApCgkJKTsKCX0KfSApOwoKZnVuY3Rpb24gc2libGluZyggY3VyLCBkaXIgKSB7Cgl3aGlsZSAoICggY3VyID0gY3VyWyBkaXIgXSApICYmIGN1ci5ub2RlVHlwZSAhPT0gMSApIHt9CglyZXR1cm4gY3VyOwp9CgpqUXVlcnkuZWFjaCggewoJcGFyZW50OiBmdW5jdGlvbiggZWxlbSApIHsKCQl2YXIgcGFyZW50ID0gZWxlbS5wYXJlbnROb2RlOwoJCXJldHVybiBwYXJlbnQgJiYgcGFyZW50Lm5vZGVUeXBlICE9PSAxMSA/IHBhcmVudCA6IG51bGw7Cgl9LAoJcGFyZW50czogZnVuY3Rpb24oIGVsZW0gKSB7CgkJcmV0dXJuIGRpciggZWxlbSwgInBhcmVudE5vZGUiICk7Cgl9LAoJcGFyZW50c1VudGlsOiBmdW5jdGlvbiggZWxlbSwgaSwgdW50aWwgKSB7CgkJcmV0dXJuIGRpciggZWxlbSwgInBhcmVudE5vZGUiLCB1bnRpbCApOwoJfSwKCW5leHQ6IGZ1bmN0aW9uKCBlbGVtICkgewoJCXJldHVybiBzaWJsaW5nKCBlbGVtLCAibmV4dFNpYmxpbmciICk7Cgl9LAoJcHJldjogZnVuY3Rpb24oIGVsZW0gKSB7CgkJcmV0dXJuIHNpYmxpbmcoIGVsZW0sICJwcmV2aW91c1NpYmxpbmciICk7Cgl9LAoJbmV4dEFsbDogZnVuY3Rpb24oIGVsZW0gKSB7CgkJcmV0dXJuIGRpciggZWxlbSwgIm5leHRTaWJsaW5nIiApOwoJfSwKCXByZXZBbGw6IGZ1bmN0aW9uKCBlbGVtICkgewoJCXJldHVybiBkaXIoIGVsZW0sICJwcmV2aW91c1NpYmxpbmciICk7Cgl9LAoJbmV4dFVudGlsOiBmdW5jdGlvbiggZWxlbSwgaSwgdW50aWwgKSB7CgkJcmV0dXJuIGRpciggZWxlbSwgIm5leHRTaWJsaW5nIiwgdW50aWwgKTsKCX0sCglwcmV2VW50aWw6IGZ1bmN0aW9uKCBlbGVtLCBpLCB1bnRpbCApIHsKCQlyZXR1cm4gZGlyKCBlbGVtLCAicHJldmlvdXNTaWJsaW5nIiwgdW50aWwgKTsKCX0sCglzaWJsaW5nczogZnVuY3Rpb24oIGVsZW0gKSB7CgkJcmV0dXJuIHNpYmxpbmdzKCAoIGVsZW0ucGFyZW50Tm9kZSB8fCB7fSApLmZpcnN0Q2hpbGQsIGVsZW0gKTsKCX0sCgljaGlsZHJlbjogZnVuY3Rpb24oIGVsZW0gKSB7CgkJcmV0dXJuIHNpYmxpbmdzKCBlbGVtLmZpcnN0Q2hpbGQgKTsKCX0sCgljb250ZW50czogZnVuY3Rpb24oIGVsZW0gKSB7CgkJcmV0dXJuIGVsZW0uY29udGVudERvY3VtZW50IHx8IGpRdWVyeS5tZXJnZSggW10sIGVsZW0uY2hpbGROb2RlcyApOwoJfQp9LCBmdW5jdGlvbiggbmFtZSwgZm4gKSB7CglqUXVlcnkuZm5bIG5hbWUgXSA9IGZ1bmN0aW9uKCB1bnRpbCwgc2VsZWN0b3IgKSB7CgkJdmFyIG1hdGNoZWQgPSBqUXVlcnkubWFwKCB0aGlzLCBmbiwgdW50aWwgKTsKCgkJaWYgKCBuYW1lLnNsaWNlKCAtNSApICE9PSAiVW50aWwiICkgewoJCQlzZWxlY3RvciA9IHVudGlsOwoJCX0KCgkJaWYgKCBzZWxlY3RvciAmJiB0eXBlb2Ygc2VsZWN0b3IgPT09ICJzdHJpbmciICkgewoJCQltYXRjaGVkID0galF1ZXJ5LmZpbHRlciggc2VsZWN0b3IsIG1hdGNoZWQgKTsKCQl9CgoJCWlmICggdGhpcy5sZW5ndGggPiAxICkgewoKCQkJLy8gUmVtb3ZlIGR1cGxpY2F0ZXMKCQkJaWYgKCAhZ3VhcmFudGVlZFVuaXF1ZVsgbmFtZSBdICkgewoJCQkJalF1ZXJ5LnVuaXF1ZVNvcnQoIG1hdGNoZWQgKTsKCQkJfQoKCQkJLy8gUmV2ZXJzZSBvcmRlciBmb3IgcGFyZW50cyogYW5kIHByZXYtZGVyaXZhdGl2ZXMKCQkJaWYgKCBycGFyZW50c3ByZXYudGVzdCggbmFtZSApICkgewoJCQkJbWF0Y2hlZC5yZXZlcnNlKCk7CgkJCX0KCQl9CgoJCXJldHVybiB0aGlzLnB1c2hTdGFjayggbWF0Y2hlZCApOwoJfTsKfSApOwp2YXIgcm5vdGh0bWx3aGl0ZSA9ICggL1teXHgyMFx0XHJcblxmXSsvZyApOwoKCgovLyBDb252ZXJ0IFN0cmluZy1mb3JtYXR0ZWQgb3B0aW9ucyBpbnRvIE9iamVjdC1mb3JtYXR0ZWQgb25lcwpmdW5jdGlvbiBjcmVhdGVPcHRpb25zKCBvcHRpb25zICkgewoJdmFyIG9iamVjdCA9IHt9OwoJalF1ZXJ5LmVhY2goIG9wdGlvbnMubWF0Y2goIHJub3RodG1sd2hpdGUgKSB8fCBbXSwgZnVuY3Rpb24oIF8sIGZsYWcgKSB7CgkJb2JqZWN0WyBmbGFnIF0gPSB0cnVlOwoJfSApOwoJcmV0dXJuIG9iamVjdDsKfQoKLyoKICogQ3JlYXRlIGEgY2FsbGJhY2sgbGlzdCB1c2luZyB0aGUgZm9sbG93aW5nIHBhcmFtZXRlcnM6CiAqCiAqCW9wdGlvbnM6IGFuIG9wdGlvbmFsIGxpc3Qgb2Ygc3BhY2Utc2VwYXJhdGVkIG9wdGlvbnMgdGhhdCB3aWxsIGNoYW5nZSBob3cKICoJCQl0aGUgY2FsbGJhY2sgbGlzdCBiZWhhdmVzIG9yIGEgbW9yZSB0cmFkaXRpb25hbCBvcHRpb24gb2JqZWN0CiAqCiAqIEJ5IGRlZmF1bHQgYSBjYWxsYmFjayBsaXN0IHdpbGwgYWN0IGxpa2UgYW4gZXZlbnQgY2FsbGJhY2sgbGlzdCBhbmQgY2FuIGJlCiAqICJmaXJlZCIgbXVsdGlwbGUgdGltZXMuCiAqCiAqIFBvc3NpYmxlIG9wdGlvbnM6CiAqCiAqCW9uY2U6CQkJd2lsbCBlbnN1cmUgdGhlIGNhbGxiYWNrIGxpc3QgY2FuIG9ubHkgYmUgZmlyZWQgb25jZSAobGlrZSBhIERlZmVycmVkKQogKgogKgltZW1vcnk6CQkJd2lsbCBrZWVwIHRyYWNrIG9mIHByZXZpb3VzIHZhbHVlcyBhbmQgd2lsbCBjYWxsIGFueSBjYWxsYmFjayBhZGRlZAogKgkJCQkJYWZ0ZXIgdGhlIGxpc3QgaGFzIGJlZW4gZmlyZWQgcmlnaHQgYXdheSB3aXRoIHRoZSBsYXRlc3QgIm1lbW9yaXplZCIKICoJCQkJCXZhbHVlcyAobGlrZSBhIERlZmVycmVkKQogKgogKgl1bmlxdWU6CQkJd2lsbCBlbnN1cmUgYSBjYWxsYmFjayBjYW4gb25seSBiZSBhZGRlZCBvbmNlIChubyBkdXBsaWNhdGUgaW4gdGhlIGxpc3QpCiAqCiAqCXN0b3BPbkZhbHNlOglpbnRlcnJ1cHQgY2FsbGluZ3Mgd2hlbiBhIGNhbGxiYWNrIHJldHVybnMgZmFsc2UKICoKICovCmpRdWVyeS5DYWxsYmFja3MgPSBmdW5jdGlvbiggb3B0aW9ucyApIHsKCgkvLyBDb252ZXJ0IG9wdGlvbnMgZnJvbSBTdHJpbmctZm9ybWF0dGVkIHRvIE9iamVjdC1mb3JtYXR0ZWQgaWYgbmVlZGVkCgkvLyAod2UgY2hlY2sgaW4gY2FjaGUgZmlyc3QpCglvcHRpb25zID0gdHlwZW9mIG9wdGlvbnMgPT09ICJzdHJpbmciID8KCQljcmVhdGVPcHRpb25zKCBvcHRpb25zICkgOgoJCWpRdWVyeS5leHRlbmQoIHt9LCBvcHRpb25zICk7CgoJdmFyIC8vIEZsYWcgdG8ga25vdyBpZiBsaXN0IGlzIGN1cnJlbnRseSBmaXJpbmcKCQlmaXJpbmcsCgoJCS8vIExhc3QgZmlyZSB2YWx1ZSBmb3Igbm9uLWZvcmdldHRhYmxlIGxpc3RzCgkJbWVtb3J5LAoKCQkvLyBGbGFnIHRvIGtub3cgaWYgbGlzdCB3YXMgYWxyZWFkeSBmaXJlZAoJCWZpcmVkLAoKCQkvLyBGbGFnIHRvIHByZXZlbnQgZmlyaW5nCgkJbG9ja2VkLAoKCQkvLyBBY3R1YWwgY2FsbGJhY2sgbGlzdAoJCWxpc3QgPSBbXSwKCgkJLy8gUXVldWUgb2YgZXhlY3V0aW9uIGRhdGEgZm9yIHJlcGVhdGFibGUgbGlzdHMKCQlxdWV1ZSA9IFtdLAoKCQkvLyBJbmRleCBvZiBjdXJyZW50bHkgZmlyaW5nIGNhbGxiYWNrIChtb2RpZmllZCBieSBhZGQvcmVtb3ZlIGFzIG5lZWRlZCkKCQlmaXJpbmdJbmRleCA9IC0xLAoKCQkvLyBGaXJlIGNhbGxiYWNrcwoJCWZpcmUgPSBmdW5jdGlvbigpIHsKCgkJCS8vIEVuZm9yY2Ugc2luZ2xlLWZpcmluZwoJCQlsb2NrZWQgPSBvcHRpb25zLm9uY2U7CgoJCQkvLyBFeGVjdXRlIGNhbGxiYWNrcyBmb3IgYWxsIHBlbmRpbmcgZXhlY3V0aW9ucywKCQkJLy8gcmVzcGVjdGluZyBmaXJpbmdJbmRleCBvdmVycmlkZXMgYW5kIHJ1bnRpbWUgY2hhbmdlcwoJCQlmaXJlZCA9IGZpcmluZyA9IHRydWU7CgkJCWZvciAoIDsgcXVldWUubGVuZ3RoOyBmaXJpbmdJbmRleCA9IC0xICkgewoJCQkJbWVtb3J5ID0gcXVldWUuc2hpZnQoKTsKCQkJCXdoaWxlICggKytmaXJpbmdJbmRleCA8IGxpc3QubGVuZ3RoICkgewoKCQkJCQkvLyBSdW4gY2FsbGJhY2sgYW5kIGNoZWNrIGZvciBlYXJseSB0ZXJtaW5hdGlvbgoJCQkJCWlmICggbGlzdFsgZmlyaW5nSW5kZXggXS5hcHBseSggbWVtb3J5WyAwIF0sIG1lbW9yeVsgMSBdICkgPT09IGZhbHNlICYmCgkJCQkJCW9wdGlvbnMuc3RvcE9uRmFsc2UgKSB7CgoJCQkJCQkvLyBKdW1wIHRvIGVuZCBhbmQgZm9yZ2V0IHRoZSBkYXRhIHNvIC5hZGQgZG9lc24ndCByZS1maXJlCgkJCQkJCWZpcmluZ0luZGV4ID0gbGlzdC5sZW5ndGg7CgkJCQkJCW1lbW9yeSA9IGZhbHNlOwoJCQkJCX0KCQkJCX0KCQkJfQoKCQkJLy8gRm9yZ2V0IHRoZSBkYXRhIGlmIHdlJ3JlIGRvbmUgd2l0aCBpdAoJCQlpZiAoICFvcHRpb25zLm1lbW9yeSApIHsKCQkJCW1lbW9yeSA9IGZhbHNlOwoJCQl9CgoJCQlmaXJpbmcgPSBmYWxzZTsKCgkJCS8vIENsZWFuIHVwIGlmIHdlJ3JlIGRvbmUgZmlyaW5nIGZvciBnb29kCgkJCWlmICggbG9ja2VkICkgewoKCQkJCS8vIEtlZXAgYW4gZW1wdHkgbGlzdCBpZiB3ZSBoYXZlIGRhdGEgZm9yIGZ1dHVyZSBhZGQgY2FsbHMKCQkJCWlmICggbWVtb3J5ICkgewoJCQkJCWxpc3QgPSBbXTsKCgkJCQkvLyBPdGhlcndpc2UsIHRoaXMgb2JqZWN0IGlzIHNwZW50CgkJCQl9IGVsc2UgewoJCQkJCWxpc3QgPSAiIjsKCQkJCX0KCQkJfQoJCX0sCgoJCS8vIEFjdHVhbCBDYWxsYmFja3Mgb2JqZWN0CgkJc2VsZiA9IHsKCgkJCS8vIEFkZCBhIGNhbGxiYWNrIG9yIGEgY29sbGVjdGlvbiBvZiBjYWxsYmFja3MgdG8gdGhlIGxpc3QKCQkJYWRkOiBmdW5jdGlvbigpIHsKCQkJCWlmICggbGlzdCApIHsKCgkJCQkJLy8gSWYgd2UgaGF2ZSBtZW1vcnkgZnJvbSBhIHBhc3QgcnVuLCB3ZSBzaG91bGQgZmlyZSBhZnRlciBhZGRpbmcKCQkJCQlpZiAoIG1lbW9yeSAmJiAhZmlyaW5nICkgewoJCQkJCQlmaXJpbmdJbmRleCA9IGxpc3QubGVuZ3RoIC0gMTsKCQkJCQkJcXVldWUucHVzaCggbWVtb3J5ICk7CgkJCQkJfQoKCQkJCQkoIGZ1bmN0aW9uIGFkZCggYXJncyApIHsKCQkJCQkJalF1ZXJ5LmVhY2goIGFyZ3MsIGZ1bmN0aW9uKCBfLCBhcmcgKSB7CgkJCQkJCQlpZiAoIGpRdWVyeS5pc0Z1bmN0aW9uKCBhcmcgKSApIHsKCQkJCQkJCQlpZiAoICFvcHRpb25zLnVuaXF1ZSB8fCAhc2VsZi5oYXMoIGFyZyApICkgewoJCQkJCQkJCQlsaXN0LnB1c2goIGFyZyApOwoJCQkJCQkJCX0KCQkJCQkJCX0gZWxzZSBpZiAoIGFyZyAmJiBhcmcubGVuZ3RoICYmIGpRdWVyeS50eXBlKCBhcmcgKSAhPT0gInN0cmluZyIgKSB7CgoJCQkJCQkJCS8vIEluc3BlY3QgcmVjdXJzaXZlbHkKCQkJCQkJCQlhZGQoIGFyZyApOwoJCQkJCQkJfQoJCQkJCQl9ICk7CgkJCQkJfSApKCBhcmd1bWVudHMgKTsKCgkJCQkJaWYgKCBtZW1vcnkgJiYgIWZpcmluZyApIHsKCQkJCQkJZmlyZSgpOwoJCQkJCX0KCQkJCX0KCQkJCXJldHVybiB0aGlzOwoJCQl9LAoKCQkJLy8gUmVtb3ZlIGEgY2FsbGJhY2sgZnJvbSB0aGUgbGlzdAoJCQlyZW1vdmU6IGZ1bmN0aW9uKCkgewoJCQkJalF1ZXJ5LmVhY2goIGFyZ3VtZW50cywgZnVuY3Rpb24oIF8sIGFyZyApIHsKCQkJCQl2YXIgaW5kZXg7CgkJCQkJd2hpbGUgKCAoIGluZGV4ID0galF1ZXJ5LmluQXJyYXkoIGFyZywgbGlzdCwgaW5kZXggKSApID4gLTEgKSB7CgkJCQkJCWxpc3Quc3BsaWNlKCBpbmRleCwgMSApOwoKCQkJCQkJLy8gSGFuZGxlIGZpcmluZyBpbmRleGVzCgkJCQkJCWlmICggaW5kZXggPD0gZmlyaW5nSW5kZXggKSB7CgkJCQkJCQlmaXJpbmdJbmRleC0tOwoJCQkJCQl9CgkJCQkJfQoJCQkJfSApOwoJCQkJcmV0dXJuIHRoaXM7CgkJCX0sCgoJCQkvLyBDaGVjayBpZiBhIGdpdmVuIGNhbGxiYWNrIGlzIGluIHRoZSBsaXN0LgoJCQkvLyBJZiBubyBhcmd1bWVudCBpcyBnaXZlbiwgcmV0dXJuIHdoZXRoZXIgb3Igbm90IGxpc3QgaGFzIGNhbGxiYWNrcyBhdHRhY2hlZC4KCQkJaGFzOiBmdW5jdGlvbiggZm4gKSB7CgkJCQlyZXR1cm4gZm4gPwoJCQkJCWpRdWVyeS5pbkFycmF5KCBmbiwgbGlzdCApID4gLTEgOgoJCQkJCWxpc3QubGVuZ3RoID4gMDsKCQkJfSwKCgkJCS8vIFJlbW92ZSBhbGwgY2FsbGJhY2tzIGZyb20gdGhlIGxpc3QKCQkJZW1wdHk6IGZ1bmN0aW9uKCkgewoJCQkJaWYgKCBsaXN0ICkgewoJCQkJCWxpc3QgPSBbXTsKCQkJCX0KCQkJCXJldHVybiB0aGlzOwoJCQl9LAoKCQkJLy8gRGlzYWJsZSAuZmlyZSBhbmQgLmFkZAoJCQkvLyBBYm9ydCBhbnkgY3VycmVudC9wZW5kaW5nIGV4ZWN1dGlvbnMKCQkJLy8gQ2xlYXIgYWxsIGNhbGxiYWNrcyBhbmQgdmFsdWVzCgkJCWRpc2FibGU6IGZ1bmN0aW9uKCkgewoJCQkJbG9ja2VkID0gcXVldWUgPSBbXTsKCQkJCWxpc3QgPSBtZW1vcnkgPSAiIjsKCQkJCXJldHVybiB0aGlzOwoJCQl9LAoJCQlkaXNhYmxlZDogZnVuY3Rpb24oKSB7CgkJCQlyZXR1cm4gIWxpc3Q7CgkJCX0sCgoJCQkvLyBEaXNhYmxlIC5maXJlCgkJCS8vIEFsc28gZGlzYWJsZSAuYWRkIHVubGVzcyB3ZSBoYXZlIG1lbW9yeSAoc2luY2UgaXQgd291bGQgaGF2ZSBubyBlZmZlY3QpCgkJCS8vIEFib3J0IGFueSBwZW5kaW5nIGV4ZWN1dGlvbnMKCQkJbG9jazogZnVuY3Rpb24oKSB7CgkJCQlsb2NrZWQgPSBxdWV1ZSA9IFtdOwoJCQkJaWYgKCAhbWVtb3J5ICYmICFmaXJpbmcgKSB7CgkJCQkJbGlzdCA9IG1lbW9yeSA9ICIiOwoJCQkJfQoJCQkJcmV0dXJuIHRoaXM7CgkJCX0sCgkJCWxvY2tlZDogZnVuY3Rpb24oKSB7CgkJCQlyZXR1cm4gISFsb2NrZWQ7CgkJCX0sCgoJCQkvLyBDYWxsIGFsbCBjYWxsYmFja3Mgd2l0aCB0aGUgZ2l2ZW4gY29udGV4dCBhbmQgYXJndW1lbnRzCgkJCWZpcmVXaXRoOiBmdW5jdGlvbiggY29udGV4dCwgYXJncyApIHsKCQkJCWlmICggIWxvY2tlZCApIHsKCQkJCQlhcmdzID0gYXJncyB8fCBbXTsKCQkJCQlhcmdzID0gWyBjb250ZXh0LCBhcmdzLnNsaWNlID8gYXJncy5zbGljZSgpIDogYXJncyBdOwoJCQkJCXF1ZXVlLnB1c2goIGFyZ3MgKTsKCQkJCQlpZiAoICFmaXJpbmcgKSB7CgkJCQkJCWZpcmUoKTsKCQkJCQl9CgkJCQl9CgkJCQlyZXR1cm4gdGhpczsKCQkJfSwKCgkJCS8vIENhbGwgYWxsIHRoZSBjYWxsYmFja3Mgd2l0aCB0aGUgZ2l2ZW4gYXJndW1lbnRzCgkJCWZpcmU6IGZ1bmN0aW9uKCkgewoJCQkJc2VsZi5maXJlV2l0aCggdGhpcywgYXJndW1lbnRzICk7CgkJCQlyZXR1cm4gdGhpczsKCQkJfSwKCgkJCS8vIFRvIGtub3cgaWYgdGhlIGNhbGxiYWNrcyBoYXZlIGFscmVhZHkgYmVlbiBjYWxsZWQgYXQgbGVhc3Qgb25jZQoJCQlmaXJlZDogZnVuY3Rpb24oKSB7CgkJCQlyZXR1cm4gISFmaXJlZDsKCQkJfQoJCX07CgoJcmV0dXJuIHNlbGY7Cn07CgoKZnVuY3Rpb24gSWRlbnRpdHkoIHYgKSB7CglyZXR1cm4gdjsKfQpmdW5jdGlvbiBUaHJvd2VyKCBleCApIHsKCXRocm93IGV4Owp9CgpmdW5jdGlvbiBhZG9wdFZhbHVlKCB2YWx1ZSwgcmVzb2x2ZSwgcmVqZWN0ICkgewoJdmFyIG1ldGhvZDsKCgl0cnkgewoKCQkvLyBDaGVjayBmb3IgcHJvbWlzZSBhc3BlY3QgZmlyc3QgdG8gcHJpdmlsZWdlIHN5bmNocm9ub3VzIGJlaGF2aW9yCgkJaWYgKCB2YWx1ZSAmJiBqUXVlcnkuaXNGdW5jdGlvbiggKCBtZXRob2QgPSB2YWx1ZS5wcm9taXNlICkgKSApIHsKCQkJbWV0aG9kLmNhbGwoIHZhbHVlICkuZG9uZSggcmVzb2x2ZSApLmZhaWwoIHJlamVjdCApOwoKCQkvLyBPdGhlciB0aGVuYWJsZXMKCQl9IGVsc2UgaWYgKCB2YWx1ZSAmJiBqUXVlcnkuaXNGdW5jdGlvbiggKCBtZXRob2QgPSB2YWx1ZS50aGVuICkgKSApIHsKCQkJbWV0aG9kLmNhbGwoIHZhbHVlLCByZXNvbHZlLCByZWplY3QgKTsKCgkJLy8gT3RoZXIgbm9uLXRoZW5hYmxlcwoJCX0gZWxzZSB7CgoJCQkvLyBTdXBwb3J0OiBBbmRyb2lkIDQuMCBvbmx5CgkJCS8vIFN0cmljdCBtb2RlIGZ1bmN0aW9ucyBpbnZva2VkIHdpdGhvdXQgLmNhbGwvLmFwcGx5IGdldCBnbG9iYWwtb2JqZWN0IGNvbnRleHQKCQkJcmVzb2x2ZS5jYWxsKCB1bmRlZmluZWQsIHZhbHVlICk7CgkJfQoKCS8vIEZvciBQcm9taXNlcy9BKywgY29udmVydCBleGNlcHRpb25zIGludG8gcmVqZWN0aW9ucwoJLy8gU2luY2UgalF1ZXJ5LndoZW4gZG9lc24ndCB1bndyYXAgdGhlbmFibGVzLCB3ZSBjYW4gc2tpcCB0aGUgZXh0cmEgY2hlY2tzIGFwcGVhcmluZyBpbgoJLy8gRGVmZXJyZWQjdGhlbiB0byBjb25kaXRpb25hbGx5IHN1cHByZXNzIHJlamVjdGlvbi4KCX0gY2F0Y2ggKCB2YWx1ZSApIHsKCgkJLy8gU3VwcG9ydDogQW5kcm9pZCA0LjAgb25seQoJCS8vIFN0cmljdCBtb2RlIGZ1bmN0aW9ucyBpbnZva2VkIHdpdGhvdXQgLmNhbGwvLmFwcGx5IGdldCBnbG9iYWwtb2JqZWN0IGNvbnRleHQKCQlyZWplY3QuY2FsbCggdW5kZWZpbmVkLCB2YWx1ZSApOwoJfQp9CgpqUXVlcnkuZXh0ZW5kKCB7CgoJRGVmZXJyZWQ6IGZ1bmN0aW9uKCBmdW5jICkgewoJCXZhciB0dXBsZXMgPSBbCgoJCQkJLy8gYWN0aW9uLCBhZGQgbGlzdGVuZXIsIGNhbGxiYWNrcywKCQkJCS8vIC4uLiAudGhlbiBoYW5kbGVycywgYXJndW1lbnQgaW5kZXgsIFtmaW5hbCBzdGF0ZV0KCQkJCVsgIm5vdGlmeSIsICJwcm9ncmVzcyIsIGpRdWVyeS5DYWxsYmFja3MoICJtZW1vcnkiICksCgkJCQkJalF1ZXJ5LkNhbGxiYWNrcyggIm1lbW9yeSIgKSwgMiBdLAoJCQkJWyAicmVzb2x2ZSIsICJkb25lIiwgalF1ZXJ5LkNhbGxiYWNrcyggIm9uY2UgbWVtb3J5IiApLAoJCQkJCWpRdWVyeS5DYWxsYmFja3MoICJvbmNlIG1lbW9yeSIgKSwgMCwgInJlc29sdmVkIiBdLAoJCQkJWyAicmVqZWN0IiwgImZhaWwiLCBqUXVlcnkuQ2FsbGJhY2tzKCAib25jZSBtZW1vcnkiICksCgkJCQkJalF1ZXJ5LkNhbGxiYWNrcyggIm9uY2UgbWVtb3J5IiApLCAxLCAicmVqZWN0ZWQiIF0KCQkJXSwKCQkJc3RhdGUgPSAicGVuZGluZyIsCgkJCXByb21pc2UgPSB7CgkJCQlzdGF0ZTogZnVuY3Rpb24oKSB7CgkJCQkJcmV0dXJuIHN0YXRlOwoJCQkJfSwKCQkJCWFsd2F5czogZnVuY3Rpb24oKSB7CgkJCQkJZGVmZXJyZWQuZG9uZSggYXJndW1lbnRzICkuZmFpbCggYXJndW1lbnRzICk7CgkJCQkJcmV0dXJuIHRoaXM7CgkJCQl9LAoJCQkJImNhdGNoIjogZnVuY3Rpb24oIGZuICkgewoJCQkJCXJldHVybiBwcm9taXNlLnRoZW4oIG51bGwsIGZuICk7CgkJCQl9LAoKCQkJCS8vIEtlZXAgcGlwZSBmb3IgYmFjay1jb21wYXQKCQkJCXBpcGU6IGZ1bmN0aW9uKCAvKiBmbkRvbmUsIGZuRmFpbCwgZm5Qcm9ncmVzcyAqLyApIHsKCQkJCQl2YXIgZm5zID0gYXJndW1lbnRzOwoKCQkJCQlyZXR1cm4galF1ZXJ5LkRlZmVycmVkKCBmdW5jdGlvbiggbmV3RGVmZXIgKSB7CgkJCQkJCWpRdWVyeS5lYWNoKCB0dXBsZXMsIGZ1bmN0aW9uKCBpLCB0dXBsZSApIHsKCgkJCQkJCQkvLyBNYXAgdHVwbGVzIChwcm9ncmVzcywgZG9uZSwgZmFpbCkgdG8gYXJndW1lbnRzIChkb25lLCBmYWlsLCBwcm9ncmVzcykKCQkJCQkJCXZhciBmbiA9IGpRdWVyeS5pc0Z1bmN0aW9uKCBmbnNbIHR1cGxlWyA0IF0gXSApICYmIGZuc1sgdHVwbGVbIDQgXSBdOwoKCQkJCQkJCS8vIGRlZmVycmVkLnByb2dyZXNzKGZ1bmN0aW9uKCkgeyBiaW5kIHRvIG5ld0RlZmVyIG9yIG5ld0RlZmVyLm5vdGlmeSB9KQoJCQkJCQkJLy8gZGVmZXJyZWQuZG9uZShmdW5jdGlvbigpIHsgYmluZCB0byBuZXdEZWZlciBvciBuZXdEZWZlci5yZXNvbHZlIH0pCgkJCQkJCQkvLyBkZWZlcnJlZC5mYWlsKGZ1bmN0aW9uKCkgeyBiaW5kIHRvIG5ld0RlZmVyIG9yIG5ld0RlZmVyLnJlamVjdCB9KQoJCQkJCQkJZGVmZXJyZWRbIHR1cGxlWyAxIF0gXSggZnVuY3Rpb24oKSB7CgkJCQkJCQkJdmFyIHJldHVybmVkID0gZm4gJiYgZm4uYXBwbHkoIHRoaXMsIGFyZ3VtZW50cyApOwoJCQkJCQkJCWlmICggcmV0dXJuZWQgJiYgalF1ZXJ5LmlzRnVuY3Rpb24oIHJldHVybmVkLnByb21pc2UgKSApIHsKCQkJCQkJCQkJcmV0dXJuZWQucHJvbWlzZSgpCgkJCQkJCQkJCQkucHJvZ3Jlc3MoIG5ld0RlZmVyLm5vdGlmeSApCgkJCQkJCQkJCQkuZG9uZSggbmV3RGVmZXIucmVzb2x2ZSApCgkJCQkJCQkJCQkuZmFpbCggbmV3RGVmZXIucmVqZWN0ICk7CgkJCQkJCQkJfSBlbHNlIHsKCQkJCQkJCQkJbmV3RGVmZXJbIHR1cGxlWyAwIF0gKyAiV2l0aCIgXSgKCQkJCQkJCQkJCXRoaXMsCgkJCQkJCQkJCQlmbiA/IFsgcmV0dXJuZWQgXSA6IGFyZ3VtZW50cwoJCQkJCQkJCQkpOwoJCQkJCQkJCX0KCQkJCQkJCX0gKTsKCQkJCQkJfSApOwoJCQkJCQlmbnMgPSBudWxsOwoJCQkJCX0gKS5wcm9taXNlKCk7CgkJCQl9LAoJCQkJdGhlbjogZnVuY3Rpb24oIG9uRnVsZmlsbGVkLCBvblJlamVjdGVkLCBvblByb2dyZXNzICkgewoJCQkJCXZhciBtYXhEZXB0aCA9IDA7CgkJCQkJZnVuY3Rpb24gcmVzb2x2ZSggZGVwdGgsIGRlZmVycmVkLCBoYW5kbGVyLCBzcGVjaWFsICkgewoJCQkJCQlyZXR1cm4gZnVuY3Rpb24oKSB7CgkJCQkJCQl2YXIgdGhhdCA9IHRoaXMsCgkJCQkJCQkJYXJncyA9IGFyZ3VtZW50cywKCQkJCQkJCQltaWdodFRocm93ID0gZnVuY3Rpb24oKSB7CgkJCQkJCQkJCXZhciByZXR1cm5lZCwgdGhlbjsKCgkJCQkJCQkJCS8vIFN1cHBvcnQ6IFByb21pc2VzL0ErIHNlY3Rpb24gMi4zLjMuMy4zCgkJCQkJCQkJCS8vIGh0dHBzOi8vcHJvbWlzZXNhcGx1cy5jb20vI3BvaW50LTU5CgkJCQkJCQkJCS8vIElnbm9yZSBkb3VibGUtcmVzb2x1dGlvbiBhdHRlbXB0cwoJCQkJCQkJCQlpZiAoIGRlcHRoIDwgbWF4RGVwdGggKSB7CgkJCQkJCQkJCQlyZXR1cm47CgkJCQkJCQkJCX0KCgkJCQkJCQkJCXJldHVybmVkID0gaGFuZGxlci5hcHBseSggdGhhdCwgYXJncyApOwoKCQkJCQkJCQkJLy8gU3VwcG9ydDogUHJvbWlzZXMvQSsgc2VjdGlvbiAyLjMuMQoJCQkJCQkJCQkvLyBodHRwczovL3Byb21pc2VzYXBsdXMuY29tLyNwb2ludC00OAoJCQkJCQkJCQlpZiAoIHJldHVybmVkID09PSBkZWZlcnJlZC5wcm9taXNlKCkgKSB7CgkJCQkJCQkJCQl0aHJvdyBuZXcgVHlwZUVycm9yKCAiVGhlbmFibGUgc2VsZi1yZXNvbHV0aW9uIiApOwoJCQkJCQkJCQl9CgoJCQkJCQkJCQkvLyBTdXBwb3J0OiBQcm9taXNlcy9BKyBzZWN0aW9ucyAyLjMuMy4xLCAzLjUKCQkJCQkJCQkJLy8gaHR0cHM6Ly9wcm9taXNlc2FwbHVzLmNvbS8jcG9pbnQtNTQKCQkJCQkJCQkJLy8gaHR0cHM6Ly9wcm9taXNlc2FwbHVzLmNvbS8jcG9pbnQtNzUKCQkJCQkJCQkJLy8gUmV0cmlldmUgYHRoZW5gIG9ubHkgb25jZQoJCQkJCQkJCQl0aGVuID0gcmV0dXJuZWQgJiYKCgkJCQkJCQkJCQkvLyBTdXBwb3J0OiBQcm9taXNlcy9BKyBzZWN0aW9uIDIuMy40CgkJCQkJCQkJCQkvLyBodHRwczovL3Byb21pc2VzYXBsdXMuY29tLyNwb2ludC02NAoJCQkJCQkJCQkJLy8gT25seSBjaGVjayBvYmplY3RzIGFuZCBmdW5jdGlvbnMgZm9yIHRoZW5hYmlsaXR5CgkJCQkJCQkJCQkoIHR5cGVvZiByZXR1cm5lZCA9PT0gIm9iamVjdCIgfHwKCQkJCQkJCQkJCQl0eXBlb2YgcmV0dXJuZWQgPT09ICJmdW5jdGlvbiIgKSAmJgoJCQkJCQkJCQkJcmV0dXJuZWQudGhlbjsKCgkJCQkJCQkJCS8vIEhhbmRsZSBhIHJldHVybmVkIHRoZW5hYmxlCgkJCQkJCQkJCWlmICggalF1ZXJ5LmlzRnVuY3Rpb24oIHRoZW4gKSApIHsKCgkJCQkJCQkJCQkvLyBTcGVjaWFsIHByb2Nlc3NvcnMgKG5vdGlmeSkganVzdCB3YWl0IGZvciByZXNvbHV0aW9uCgkJCQkJCQkJCQlpZiAoIHNwZWNpYWwgKSB7CgkJCQkJCQkJCQkJdGhlbi5jYWxsKAoJCQkJCQkJCQkJCQlyZXR1cm5lZCwKCQkJCQkJCQkJCQkJcmVzb2x2ZSggbWF4RGVwdGgsIGRlZmVycmVkLCBJZGVudGl0eSwgc3BlY2lhbCApLAoJCQkJCQkJCQkJCQlyZXNvbHZlKCBtYXhEZXB0aCwgZGVmZXJyZWQsIFRocm93ZXIsIHNwZWNpYWwgKQoJCQkJCQkJCQkJCSk7CgoJCQkJCQkJCQkJLy8gTm9ybWFsIHByb2Nlc3NvcnMgKHJlc29sdmUpIGFsc28gaG9vayBpbnRvIHByb2dyZXNzCgkJCQkJCQkJCQl9IGVsc2UgewoKCQkJCQkJCQkJCQkvLyAuLi5hbmQgZGlzcmVnYXJkIG9sZGVyIHJlc29sdXRpb24gdmFsdWVzCgkJCQkJCQkJCQkJbWF4RGVwdGgrKzsKCgkJCQkJCQkJCQkJdGhlbi5jYWxsKAoJCQkJCQkJCQkJCQlyZXR1cm5lZCwKCQkJCQkJCQkJCQkJcmVzb2x2ZSggbWF4RGVwdGgsIGRlZmVycmVkLCBJZGVudGl0eSwgc3BlY2lhbCApLAoJCQkJCQkJCQkJCQlyZXNvbHZlKCBtYXhEZXB0aCwgZGVmZXJyZWQsIFRocm93ZXIsIHNwZWNpYWwgKSwKCQkJCQkJCQkJCQkJcmVzb2x2ZSggbWF4RGVwdGgsIGRlZmVycmVkLCBJZGVudGl0eSwKCQkJCQkJCQkJCQkJCWRlZmVycmVkLm5vdGlmeVdpdGggKQoJCQkJCQkJCQkJCSk7CgkJCQkJCQkJCQl9CgoJCQkJCQkJCQkvLyBIYW5kbGUgYWxsIG90aGVyIHJldHVybmVkIHZhbHVlcwoJCQkJCQkJCQl9IGVsc2UgewoKCQkJCQkJCQkJCS8vIE9ubHkgc3Vic3RpdHV0ZSBoYW5kbGVycyBwYXNzIG9uIGNvbnRleHQKCQkJCQkJCQkJCS8vIGFuZCBtdWx0aXBsZSB2YWx1ZXMgKG5vbi1zcGVjIGJlaGF2aW9yKQoJCQkJCQkJCQkJaWYgKCBoYW5kbGVyICE9PSBJZGVudGl0eSApIHsKCQkJCQkJCQkJCQl0aGF0ID0gdW5kZWZpbmVkOwoJCQkJCQkJCQkJCWFyZ3MgPSBbIHJldHVybmVkIF07CgkJCQkJCQkJCQl9CgoJCQkJCQkJCQkJLy8gUHJvY2VzcyB0aGUgdmFsdWUocykKCQkJCQkJCQkJCS8vIERlZmF1bHQgcHJvY2VzcyBpcyByZXNvbHZlCgkJCQkJCQkJCQkoIHNwZWNpYWwgfHwgZGVmZXJyZWQucmVzb2x2ZVdpdGggKSggdGhhdCwgYXJncyApOwoJCQkJCQkJCQl9CgkJCQkJCQkJfSwKCgkJCQkJCQkJLy8gT25seSBub3JtYWwgcHJvY2Vzc29ycyAocmVzb2x2ZSkgY2F0Y2ggYW5kIHJlamVjdCBleGNlcHRpb25zCgkJCQkJCQkJcHJvY2VzcyA9IHNwZWNpYWwgPwoJCQkJCQkJCQltaWdodFRocm93IDoKCQkJCQkJCQkJZnVuY3Rpb24oKSB7CgkJCQkJCQkJCQl0cnkgewoJCQkJCQkJCQkJCW1pZ2h0VGhyb3coKTsKCQkJCQkJCQkJCX0gY2F0Y2ggKCBlICkgewoKCQkJCQkJCQkJCQlpZiAoIGpRdWVyeS5EZWZlcnJlZC5leGNlcHRpb25Ib29rICkgewoJCQkJCQkJCQkJCQlqUXVlcnkuRGVmZXJyZWQuZXhjZXB0aW9uSG9vayggZSwKCQkJCQkJCQkJCQkJCXByb2Nlc3Muc3RhY2tUcmFjZSApOwoJCQkJCQkJCQkJCX0KCgkJCQkJCQkJCQkJLy8gU3VwcG9ydDogUHJvbWlzZXMvQSsgc2VjdGlvbiAyLjMuMy4zLjQuMQoJCQkJCQkJCQkJCS8vIGh0dHBzOi8vcHJvbWlzZXNhcGx1cy5jb20vI3BvaW50LTYxCgkJCQkJCQkJCQkJLy8gSWdub3JlIHBvc3QtcmVzb2x1dGlvbiBleGNlcHRpb25zCgkJCQkJCQkJCQkJaWYgKCBkZXB0aCArIDEgPj0gbWF4RGVwdGggKSB7CgoJCQkJCQkJCQkJCQkvLyBPbmx5IHN1YnN0aXR1dGUgaGFuZGxlcnMgcGFzcyBvbiBjb250ZXh0CgkJCQkJCQkJCQkJCS8vIGFuZCBtdWx0aXBsZSB2YWx1ZXMgKG5vbi1zcGVjIGJlaGF2aW9yKQoJCQkJCQkJCQkJCQlpZiAoIGhhbmRsZXIgIT09IFRocm93ZXIgKSB7CgkJCQkJCQkJCQkJCQl0aGF0ID0gdW5kZWZpbmVkOwoJCQkJCQkJCQkJCQkJYXJncyA9IFsgZSBdOwoJCQkJCQkJCQkJCQl9CgoJCQkJCQkJCQkJCQlkZWZlcnJlZC5yZWplY3RXaXRoKCB0aGF0LCBhcmdzICk7CgkJCQkJCQkJCQkJfQoJCQkJCQkJCQkJfQoJCQkJCQkJCQl9OwoKCQkJCQkJCS8vIFN1cHBvcnQ6IFByb21pc2VzL0ErIHNlY3Rpb24gMi4zLjMuMy4xCgkJCQkJCQkvLyBodHRwczovL3Byb21pc2VzYXBsdXMuY29tLyNwb2ludC01NwoJCQkJCQkJLy8gUmUtcmVzb2x2ZSBwcm9taXNlcyBpbW1lZGlhdGVseSB0byBkb2RnZSBmYWxzZSByZWplY3Rpb24gZnJvbQoJCQkJCQkJLy8gc3Vic2VxdWVudCBlcnJvcnMKCQkJCQkJCWlmICggZGVwdGggKSB7CgkJCQkJCQkJcHJvY2VzcygpOwoJCQkJCQkJfSBlbHNlIHsKCgkJCQkJCQkJLy8gQ2FsbCBhbiBvcHRpb25hbCBob29rIHRvIHJlY29yZCB0aGUgc3RhY2ssIGluIGNhc2Ugb2YgZXhjZXB0aW9uCgkJCQkJCQkJLy8gc2luY2UgaXQncyBvdGhlcndpc2UgbG9zdCB3aGVuIGV4ZWN1dGlvbiBnb2VzIGFzeW5jCgkJCQkJCQkJaWYgKCBqUXVlcnkuRGVmZXJyZWQuZ2V0U3RhY2tIb29rICkgewoJCQkJCQkJCQlwcm9jZXNzLnN0YWNrVHJhY2UgPSBqUXVlcnkuRGVmZXJyZWQuZ2V0U3RhY2tIb29rKCk7CgkJCQkJCQkJfQoJCQkJCQkJCXdpbmRvdy5zZXRUaW1lb3V0KCBwcm9jZXNzICk7CgkJCQkJCQl9CgkJCQkJCX07CgkJCQkJfQoKCQkJCQlyZXR1cm4galF1ZXJ5LkRlZmVycmVkKCBmdW5jdGlvbiggbmV3RGVmZXIgKSB7CgoJCQkJCQkvLyBwcm9ncmVzc19oYW5kbGVycy5hZGQoIC4uLiApCgkJCQkJCXR1cGxlc1sgMCBdWyAzIF0uYWRkKAoJCQkJCQkJcmVzb2x2ZSgKCQkJCQkJCQkwLAoJCQkJCQkJCW5ld0RlZmVyLAoJCQkJCQkJCWpRdWVyeS5pc0Z1bmN0aW9uKCBvblByb2dyZXNzICkgPwoJCQkJCQkJCQlvblByb2dyZXNzIDoKCQkJCQkJCQkJSWRlbnRpdHksCgkJCQkJCQkJbmV3RGVmZXIubm90aWZ5V2l0aAoJCQkJCQkJKQoJCQkJCQkpOwoKCQkJCQkJLy8gZnVsZmlsbGVkX2hhbmRsZXJzLmFkZCggLi4uICkKCQkJCQkJdHVwbGVzWyAxIF1bIDMgXS5hZGQoCgkJCQkJCQlyZXNvbHZlKAoJCQkJCQkJCTAsCgkJCQkJCQkJbmV3RGVmZXIsCgkJCQkJCQkJalF1ZXJ5LmlzRnVuY3Rpb24oIG9uRnVsZmlsbGVkICkgPwoJCQkJCQkJCQlvbkZ1bGZpbGxlZCA6CgkJCQkJCQkJCUlkZW50aXR5CgkJCQkJCQkpCgkJCQkJCSk7CgoJCQkJCQkvLyByZWplY3RlZF9oYW5kbGVycy5hZGQoIC4uLiApCgkJCQkJCXR1cGxlc1sgMiBdWyAzIF0uYWRkKAoJCQkJCQkJcmVzb2x2ZSgKCQkJCQkJCQkwLAoJCQkJCQkJCW5ld0RlZmVyLAoJCQkJCQkJCWpRdWVyeS5pc0Z1bmN0aW9uKCBvblJlamVjdGVkICkgPwoJCQkJCQkJCQlvblJlamVjdGVkIDoKCQkJCQkJCQkJVGhyb3dlcgoJCQkJCQkJKQoJCQkJCQkpOwoJCQkJCX0gKS5wcm9taXNlKCk7CgkJCQl9LAoKCQkJCS8vIEdldCBhIHByb21pc2UgZm9yIHRoaXMgZGVmZXJyZWQKCQkJCS8vIElmIG9iaiBpcyBwcm92aWRlZCwgdGhlIHByb21pc2UgYXNwZWN0IGlzIGFkZGVkIHRvIHRoZSBvYmplY3QKCQkJCXByb21pc2U6IGZ1bmN0aW9uKCBvYmogKSB7CgkJCQkJcmV0dXJuIG9iaiAhPSBudWxsID8galF1ZXJ5LmV4dGVuZCggb2JqLCBwcm9taXNlICkgOiBwcm9taXNlOwoJCQkJfQoJCQl9LAoJCQlkZWZlcnJlZCA9IHt9OwoKCQkvLyBBZGQgbGlzdC1zcGVjaWZpYyBtZXRob2RzCgkJalF1ZXJ5LmVhY2goIHR1cGxlcywgZnVuY3Rpb24oIGksIHR1cGxlICkgewoJCQl2YXIgbGlzdCA9IHR1cGxlWyAyIF0sCgkJCQlzdGF0ZVN0cmluZyA9IHR1cGxlWyA1IF07CgoJCQkvLyBwcm9taXNlLnByb2dyZXNzID0gbGlzdC5hZGQKCQkJLy8gcHJvbWlzZS5kb25lID0gbGlzdC5hZGQKCQkJLy8gcHJvbWlzZS5mYWlsID0gbGlzdC5hZGQKCQkJcHJvbWlzZVsgdHVwbGVbIDEgXSBdID0gbGlzdC5hZGQ7CgoJCQkvLyBIYW5kbGUgc3RhdGUKCQkJaWYgKCBzdGF0ZVN0cmluZyApIHsKCQkJCWxpc3QuYWRkKAoJCQkJCWZ1bmN0aW9uKCkgewoKCQkJCQkJLy8gc3RhdGUgPSAicmVzb2x2ZWQiIChpLmUuLCBmdWxmaWxsZWQpCgkJCQkJCS8vIHN0YXRlID0gInJlamVjdGVkIgoJCQkJCQlzdGF0ZSA9IHN0YXRlU3RyaW5nOwoJCQkJCX0sCgoJCQkJCS8vIHJlamVjdGVkX2NhbGxiYWNrcy5kaXNhYmxlCgkJCQkJLy8gZnVsZmlsbGVkX2NhbGxiYWNrcy5kaXNhYmxlCgkJCQkJdHVwbGVzWyAzIC0gaSBdWyAyIF0uZGlzYWJsZSwKCgkJCQkJLy8gcHJvZ3Jlc3NfY2FsbGJhY2tzLmxvY2sKCQkJCQl0dXBsZXNbIDAgXVsgMiBdLmxvY2sKCQkJCSk7CgkJCX0KCgkJCS8vIHByb2dyZXNzX2hhbmRsZXJzLmZpcmUKCQkJLy8gZnVsZmlsbGVkX2hhbmRsZXJzLmZpcmUKCQkJLy8gcmVqZWN0ZWRfaGFuZGxlcnMuZmlyZQoJCQlsaXN0LmFkZCggdHVwbGVbIDMgXS5maXJlICk7CgoJCQkvLyBkZWZlcnJlZC5ub3RpZnkgPSBmdW5jdGlvbigpIHsgZGVmZXJyZWQubm90aWZ5V2l0aCguLi4pIH0KCQkJLy8gZGVmZXJyZWQucmVzb2x2ZSA9IGZ1bmN0aW9uKCkgeyBkZWZlcnJlZC5yZXNvbHZlV2l0aCguLi4pIH0KCQkJLy8gZGVmZXJyZWQucmVqZWN0ID0gZnVuY3Rpb24oKSB7IGRlZmVycmVkLnJlamVjdFdpdGgoLi4uKSB9CgkJCWRlZmVycmVkWyB0dXBsZVsgMCBdIF0gPSBmdW5jdGlvbigpIHsKCQkJCWRlZmVycmVkWyB0dXBsZVsgMCBdICsgIldpdGgiIF0oIHRoaXMgPT09IGRlZmVycmVkID8gdW5kZWZpbmVkIDogdGhpcywgYXJndW1lbnRzICk7CgkJCQlyZXR1cm4gdGhpczsKCQkJfTsKCgkJCS8vIGRlZmVycmVkLm5vdGlmeVdpdGggPSBsaXN0LmZpcmVXaXRoCgkJCS8vIGRlZmVycmVkLnJlc29sdmVXaXRoID0gbGlzdC5maXJlV2l0aAoJCQkvLyBkZWZlcnJlZC5yZWplY3RXaXRoID0gbGlzdC5maXJlV2l0aAoJCQlkZWZlcnJlZFsgdHVwbGVbIDAgXSArICJXaXRoIiBdID0gbGlzdC5maXJlV2l0aDsKCQl9ICk7CgoJCS8vIE1ha2UgdGhlIGRlZmVycmVkIGEgcHJvbWlzZQoJCXByb21pc2UucHJvbWlzZSggZGVmZXJyZWQgKTsKCgkJLy8gQ2FsbCBnaXZlbiBmdW5jIGlmIGFueQoJCWlmICggZnVuYyApIHsKCQkJZnVuYy5jYWxsKCBkZWZlcnJlZCwgZGVmZXJyZWQgKTsKCQl9CgoJCS8vIEFsbCBkb25lIQoJCXJldHVybiBkZWZlcnJlZDsKCX0sCgoJLy8gRGVmZXJyZWQgaGVscGVyCgl3aGVuOiBmdW5jdGlvbiggc2luZ2xlVmFsdWUgKSB7CgkJdmFyCgoJCQkvLyBjb3VudCBvZiB1bmNvbXBsZXRlZCBzdWJvcmRpbmF0ZXMKCQkJcmVtYWluaW5nID0gYXJndW1lbnRzLmxlbmd0aCwKCgkJCS8vIGNvdW50IG9mIHVucHJvY2Vzc2VkIGFyZ3VtZW50cwoJCQlpID0gcmVtYWluaW5nLAoKCQkJLy8gc3Vib3JkaW5hdGUgZnVsZmlsbG1lbnQgZGF0YQoJCQlyZXNvbHZlQ29udGV4dHMgPSBBcnJheSggaSApLAoJCQlyZXNvbHZlVmFsdWVzID0gc2xpY2UuY2FsbCggYXJndW1lbnRzICksCgoJCQkvLyB0aGUgbWFzdGVyIERlZmVycmVkCgkJCW1hc3RlciA9IGpRdWVyeS5EZWZlcnJlZCgpLAoKCQkJLy8gc3Vib3JkaW5hdGUgY2FsbGJhY2sgZmFjdG9yeQoJCQl1cGRhdGVGdW5jID0gZnVuY3Rpb24oIGkgKSB7CgkJCQlyZXR1cm4gZnVuY3Rpb24oIHZhbHVlICkgewoJCQkJCXJlc29sdmVDb250ZXh0c1sgaSBdID0gdGhpczsKCQkJCQlyZXNvbHZlVmFsdWVzWyBpIF0gPSBhcmd1bWVudHMubGVuZ3RoID4gMSA/IHNsaWNlLmNhbGwoIGFyZ3VtZW50cyApIDogdmFsdWU7CgkJCQkJaWYgKCAhKCAtLXJlbWFpbmluZyApICkgewoJCQkJCQltYXN0ZXIucmVzb2x2ZVdpdGgoIHJlc29sdmVDb250ZXh0cywgcmVzb2x2ZVZhbHVlcyApOwoJCQkJCX0KCQkJCX07CgkJCX07CgoJCS8vIFNpbmdsZS0gYW5kIGVtcHR5IGFyZ3VtZW50cyBhcmUgYWRvcHRlZCBsaWtlIFByb21pc2UucmVzb2x2ZQoJCWlmICggcmVtYWluaW5nIDw9IDEgKSB7CgkJCWFkb3B0VmFsdWUoIHNpbmdsZVZhbHVlLCBtYXN0ZXIuZG9uZSggdXBkYXRlRnVuYyggaSApICkucmVzb2x2ZSwgbWFzdGVyLnJlamVjdCApOwoKCQkJLy8gVXNlIC50aGVuKCkgdG8gdW53cmFwIHNlY29uZGFyeSB0aGVuYWJsZXMgKGNmLiBnaC0zMDAwKQoJCQlpZiAoIG1hc3Rlci5zdGF0ZSgpID09PSAicGVuZGluZyIgfHwKCQkJCWpRdWVyeS5pc0Z1bmN0aW9uKCByZXNvbHZlVmFsdWVzWyBpIF0gJiYgcmVzb2x2ZVZhbHVlc1sgaSBdLnRoZW4gKSApIHsKCgkJCQlyZXR1cm4gbWFzdGVyLnRoZW4oKTsKCQkJfQoJCX0KCgkJLy8gTXVsdGlwbGUgYXJndW1lbnRzIGFyZSBhZ2dyZWdhdGVkIGxpa2UgUHJvbWlzZS5hbGwgYXJyYXkgZWxlbWVudHMKCQl3aGlsZSAoIGktLSApIHsKCQkJYWRvcHRWYWx1ZSggcmVzb2x2ZVZhbHVlc1sgaSBdLCB1cGRhdGVGdW5jKCBpICksIG1hc3Rlci5yZWplY3QgKTsKCQl9CgoJCXJldHVybiBtYXN0ZXIucHJvbWlzZSgpOwoJfQp9ICk7CgoKLy8gVGhlc2UgdXN1YWxseSBpbmRpY2F0ZSBhIHByb2dyYW1tZXIgbWlzdGFrZSBkdXJpbmcgZGV2ZWxvcG1lbnQsCi8vIHdhcm4gYWJvdXQgdGhlbSBBU0FQIHJhdGhlciB0aGFuIHN3YWxsb3dpbmcgdGhlbSBieSBkZWZhdWx0Lgp2YXIgcmVycm9yTmFtZXMgPSAvXihFdmFsfEludGVybmFsfFJhbmdlfFJlZmVyZW5jZXxTeW50YXh8VHlwZXxVUkkpRXJyb3IkLzsKCmpRdWVyeS5EZWZlcnJlZC5leGNlcHRpb25Ib29rID0gZnVuY3Rpb24oIGVycm9yLCBzdGFjayApIHsKCgkvLyBTdXBwb3J0OiBJRSA4IC0gOSBvbmx5CgkvLyBDb25zb2xlIGV4aXN0cyB3aGVuIGRldiB0b29scyBhcmUgb3Blbiwgd2hpY2ggY2FuIGhhcHBlbiBhdCBhbnkgdGltZQoJaWYgKCB3aW5kb3cuY29uc29sZSAmJiB3aW5kb3cuY29uc29sZS53YXJuICYmIGVycm9yICYmIHJlcnJvck5hbWVzLnRlc3QoIGVycm9yLm5hbWUgKSApIHsKCQl3aW5kb3cuY29uc29sZS53YXJuKCAialF1ZXJ5LkRlZmVycmVkIGV4Y2VwdGlvbjogIiArIGVycm9yLm1lc3NhZ2UsIGVycm9yLnN0YWNrLCBzdGFjayApOwoJfQp9OwoKCgoKalF1ZXJ5LnJlYWR5RXhjZXB0aW9uID0gZnVuY3Rpb24oIGVycm9yICkgewoJd2luZG93LnNldFRpbWVvdXQoIGZ1bmN0aW9uKCkgewoJCXRocm93IGVycm9yOwoJfSApOwp9OwoKCgoKLy8gVGhlIGRlZmVycmVkIHVzZWQgb24gRE9NIHJlYWR5CnZhciByZWFkeUxpc3QgPSBqUXVlcnkuRGVmZXJyZWQoKTsKCmpRdWVyeS5mbi5yZWFkeSA9IGZ1bmN0aW9uKCBmbiApIHsKCglyZWFkeUxpc3QKCQkudGhlbiggZm4gKQoKCQkvLyBXcmFwIGpRdWVyeS5yZWFkeUV4Y2VwdGlvbiBpbiBhIGZ1bmN0aW9uIHNvIHRoYXQgdGhlIGxvb2t1cAoJCS8vIGhhcHBlbnMgYXQgdGhlIHRpbWUgb2YgZXJyb3IgaGFuZGxpbmcgaW5zdGVhZCBvZiBjYWxsYmFjawoJCS8vIHJlZ2lzdHJhdGlvbi4KCQkuY2F0Y2goIGZ1bmN0aW9uKCBlcnJvciApIHsKCQkJalF1ZXJ5LnJlYWR5RXhjZXB0aW9uKCBlcnJvciApOwoJCX0gKTsKCglyZXR1cm4gdGhpczsKfTsKCmpRdWVyeS5leHRlbmQoIHsKCgkvLyBJcyB0aGUgRE9NIHJlYWR5IHRvIGJlIHVzZWQ/IFNldCB0byB0cnVlIG9uY2UgaXQgb2NjdXJzLgoJaXNSZWFkeTogZmFsc2UsCgoJLy8gQSBjb3VudGVyIHRvIHRyYWNrIGhvdyBtYW55IGl0ZW1zIHRvIHdhaXQgZm9yIGJlZm9yZQoJLy8gdGhlIHJlYWR5IGV2ZW50IGZpcmVzLiBTZWUgIzY3ODEKCXJlYWR5V2FpdDogMSwKCgkvLyBIb2xkIChvciByZWxlYXNlKSB0aGUgcmVhZHkgZXZlbnQKCWhvbGRSZWFkeTogZnVuY3Rpb24oIGhvbGQgKSB7CgkJaWYgKCBob2xkICkgewoJCQlqUXVlcnkucmVhZHlXYWl0Kys7CgkJfSBlbHNlIHsKCQkJalF1ZXJ5LnJlYWR5KCB0cnVlICk7CgkJfQoJfSwKCgkvLyBIYW5kbGUgd2hlbiB0aGUgRE9NIGlzIHJlYWR5CglyZWFkeTogZnVuY3Rpb24oIHdhaXQgKSB7CgoJCS8vIEFib3J0IGlmIHRoZXJlIGFyZSBwZW5kaW5nIGhvbGRzIG9yIHdlJ3JlIGFscmVhZHkgcmVhZHkKCQlpZiAoIHdhaXQgPT09IHRydWUgPyAtLWpRdWVyeS5yZWFkeVdhaXQgOiBqUXVlcnkuaXNSZWFkeSApIHsKCQkJcmV0dXJuOwoJCX0KCgkJLy8gUmVtZW1iZXIgdGhhdCB0aGUgRE9NIGlzIHJlYWR5CgkJalF1ZXJ5LmlzUmVhZHkgPSB0cnVlOwoKCQkvLyBJZiBhIG5vcm1hbCBET00gUmVhZHkgZXZlbnQgZmlyZWQsIGRlY3JlbWVudCwgYW5kIHdhaXQgaWYgbmVlZCBiZQoJCWlmICggd2FpdCAhPT0gdHJ1ZSAmJiAtLWpRdWVyeS5yZWFkeVdhaXQgPiAwICkgewoJCQlyZXR1cm47CgkJfQoKCQkvLyBJZiB0aGVyZSBhcmUgZnVuY3Rpb25zIGJvdW5kLCB0byBleGVjdXRlCgkJcmVhZHlMaXN0LnJlc29sdmVXaXRoKCBkb2N1bWVudCwgWyBqUXVlcnkgXSApOwoJfQp9ICk7CgpqUXVlcnkucmVhZHkudGhlbiA9IHJlYWR5TGlzdC50aGVuOwoKLy8gVGhlIHJlYWR5IGV2ZW50IGhhbmRsZXIgYW5kIHNlbGYgY2xlYW51cCBtZXRob2QKZnVuY3Rpb24gY29tcGxldGVkKCkgewoJZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lciggIkRPTUNvbnRlbnRMb2FkZWQiLCBjb21wbGV0ZWQgKTsKCXdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCAibG9hZCIsIGNvbXBsZXRlZCApOwoJalF1ZXJ5LnJlYWR5KCk7Cn0KCi8vIENhdGNoIGNhc2VzIHdoZXJlICQoZG9jdW1lbnQpLnJlYWR5KCkgaXMgY2FsbGVkCi8vIGFmdGVyIHRoZSBicm93c2VyIGV2ZW50IGhhcyBhbHJlYWR5IG9jY3VycmVkLgovLyBTdXBwb3J0OiBJRSA8PTkgLSAxMCBvbmx5Ci8vIE9sZGVyIElFIHNvbWV0aW1lcyBzaWduYWxzICJpbnRlcmFjdGl2ZSIgdG9vIHNvb24KaWYgKCBkb2N1bWVudC5yZWFkeVN0YXRlID09PSAiY29tcGxldGUiIHx8CgkoIGRvY3VtZW50LnJlYWR5U3RhdGUgIT09ICJsb2FkaW5nIiAmJiAhZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmRvU2Nyb2xsICkgKSB7CgoJLy8gSGFuZGxlIGl0IGFzeW5jaHJvbm91c2x5IHRvIGFsbG93IHNjcmlwdHMgdGhlIG9wcG9ydHVuaXR5IHRvIGRlbGF5IHJlYWR5Cgl3aW5kb3cuc2V0VGltZW91dCggalF1ZXJ5LnJlYWR5ICk7Cgp9IGVsc2UgewoKCS8vIFVzZSB0aGUgaGFuZHkgZXZlbnQgY2FsbGJhY2sKCWRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoICJET01Db250ZW50TG9hZGVkIiwgY29tcGxldGVkICk7CgoJLy8gQSBmYWxsYmFjayB0byB3aW5kb3cub25sb2FkLCB0aGF0IHdpbGwgYWx3YXlzIHdvcmsKCXdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCAibG9hZCIsIGNvbXBsZXRlZCApOwp9CgoKCgovLyBNdWx0aWZ1bmN0aW9uYWwgbWV0aG9kIHRvIGdldCBhbmQgc2V0IHZhbHVlcyBvZiBhIGNvbGxlY3Rpb24KLy8gVGhlIHZhbHVlL3MgY2FuIG9wdGlvbmFsbHkgYmUgZXhlY3V0ZWQgaWYgaXQncyBhIGZ1bmN0aW9uCnZhciBhY2Nlc3MgPSBmdW5jdGlvbiggZWxlbXMsIGZuLCBrZXksIHZhbHVlLCBjaGFpbmFibGUsIGVtcHR5R2V0LCByYXcgKSB7Cgl2YXIgaSA9IDAsCgkJbGVuID0gZWxlbXMubGVuZ3RoLAoJCWJ1bGsgPSBrZXkgPT0gbnVsbDsKCgkvLyBTZXRzIG1hbnkgdmFsdWVzCglpZiAoIGpRdWVyeS50eXBlKCBrZXkgKSA9PT0gIm9iamVjdCIgKSB7CgkJY2hhaW5hYmxlID0gdHJ1ZTsKCQlmb3IgKCBpIGluIGtleSApIHsKCQkJYWNjZXNzKCBlbGVtcywgZm4sIGksIGtleVsgaSBdLCB0cnVlLCBlbXB0eUdldCwgcmF3ICk7CgkJfQoKCS8vIFNldHMgb25lIHZhbHVlCgl9IGVsc2UgaWYgKCB2YWx1ZSAhPT0gdW5kZWZpbmVkICkgewoJCWNoYWluYWJsZSA9IHRydWU7CgoJCWlmICggIWpRdWVyeS5pc0Z1bmN0aW9uKCB2YWx1ZSApICkgewoJCQlyYXcgPSB0cnVlOwoJCX0KCgkJaWYgKCBidWxrICkgewoKCQkJLy8gQnVsayBvcGVyYXRpb25zIHJ1biBhZ2FpbnN0IHRoZSBlbnRpcmUgc2V0CgkJCWlmICggcmF3ICkgewoJCQkJZm4uY2FsbCggZWxlbXMsIHZhbHVlICk7CgkJCQlmbiA9IG51bGw7CgoJCQkvLyAuLi5leGNlcHQgd2hlbiBleGVjdXRpbmcgZnVuY3Rpb24gdmFsdWVzCgkJCX0gZWxzZSB7CgkJCQlidWxrID0gZm47CgkJCQlmbiA9IGZ1bmN0aW9uKCBlbGVtLCBrZXksIHZhbHVlICkgewoJCQkJCXJldHVybiBidWxrLmNhbGwoIGpRdWVyeSggZWxlbSApLCB2YWx1ZSApOwoJCQkJfTsKCQkJfQoJCX0KCgkJaWYgKCBmbiApIHsKCQkJZm9yICggOyBpIDwgbGVuOyBpKysgKSB7CgkJCQlmbigKCQkJCQllbGVtc1sgaSBdLCBrZXksIHJhdyA/CgkJCQkJdmFsdWUgOgoJCQkJCXZhbHVlLmNhbGwoIGVsZW1zWyBpIF0sIGksIGZuKCBlbGVtc1sgaSBdLCBrZXkgKSApCgkJCQkpOwoJCQl9CgkJfQoJfQoKCWlmICggY2hhaW5hYmxlICkgewoJCXJldHVybiBlbGVtczsKCX0KCgkvLyBHZXRzCglpZiAoIGJ1bGsgKSB7CgkJcmV0dXJuIGZuLmNhbGwoIGVsZW1zICk7Cgl9CgoJcmV0dXJuIGxlbiA/IGZuKCBlbGVtc1sgMCBdLCBrZXkgKSA6IGVtcHR5R2V0Owp9Owp2YXIgYWNjZXB0RGF0YSA9IGZ1bmN0aW9uKCBvd25lciApIHsKCgkvLyBBY2NlcHRzIG9ubHk6CgkvLyAgLSBOb2RlCgkvLyAgICAtIE5vZGUuRUxFTUVOVF9OT0RFCgkvLyAgICAtIE5vZGUuRE9DVU1FTlRfTk9ERQoJLy8gIC0gT2JqZWN0CgkvLyAgICAtIEFueQoJcmV0dXJuIG93bmVyLm5vZGVUeXBlID09PSAxIHx8IG93bmVyLm5vZGVUeXBlID09PSA5IHx8ICEoICtvd25lci5ub2RlVHlwZSApOwp9OwoKCgoKZnVuY3Rpb24gRGF0YSgpIHsKCXRoaXMuZXhwYW5kbyA9IGpRdWVyeS5leHBhbmRvICsgRGF0YS51aWQrKzsKfQoKRGF0YS51aWQgPSAxOwoKRGF0YS5wcm90b3R5cGUgPSB7CgoJY2FjaGU6IGZ1bmN0aW9uKCBvd25lciApIHsKCgkJLy8gQ2hlY2sgaWYgdGhlIG93bmVyIG9iamVjdCBhbHJlYWR5IGhhcyBhIGNhY2hlCgkJdmFyIHZhbHVlID0gb3duZXJbIHRoaXMuZXhwYW5kbyBdOwoKCQkvLyBJZiBub3QsIGNyZWF0ZSBvbmUKCQlpZiAoICF2YWx1ZSApIHsKCQkJdmFsdWUgPSB7fTsKCgkJCS8vIFdlIGNhbiBhY2NlcHQgZGF0YSBmb3Igbm9uLWVsZW1lbnQgbm9kZXMgaW4gbW9kZXJuIGJyb3dzZXJzLAoJCQkvLyBidXQgd2Ugc2hvdWxkIG5vdCwgc2VlICM4MzM1LgoJCQkvLyBBbHdheXMgcmV0dXJuIGFuIGVtcHR5IG9iamVjdC4KCQkJaWYgKCBhY2NlcHREYXRhKCBvd25lciApICkgewoKCQkJCS8vIElmIGl0IGlzIGEgbm9kZSB1bmxpa2VseSB0byBiZSBzdHJpbmdpZnktZWQgb3IgbG9vcGVkIG92ZXIKCQkJCS8vIHVzZSBwbGFpbiBhc3NpZ25tZW50CgkJCQlpZiAoIG93bmVyLm5vZGVUeXBlICkgewoJCQkJCW93bmVyWyB0aGlzLmV4cGFuZG8gXSA9IHZhbHVlOwoKCQkJCS8vIE90aGVyd2lzZSBzZWN1cmUgaXQgaW4gYSBub24tZW51bWVyYWJsZSBwcm9wZXJ0eQoJCQkJLy8gY29uZmlndXJhYmxlIG11c3QgYmUgdHJ1ZSB0byBhbGxvdyB0aGUgcHJvcGVydHkgdG8gYmUKCQkJCS8vIGRlbGV0ZWQgd2hlbiBkYXRhIGlzIHJlbW92ZWQKCQkJCX0gZWxzZSB7CgkJCQkJT2JqZWN0LmRlZmluZVByb3BlcnR5KCBvd25lciwgdGhpcy5leHBhbmRvLCB7CgkJCQkJCXZhbHVlOiB2YWx1ZSwKCQkJCQkJY29uZmlndXJhYmxlOiB0cnVlCgkJCQkJfSApOwoJCQkJfQoJCQl9CgkJfQoKCQlyZXR1cm4gdmFsdWU7Cgl9LAoJc2V0OiBmdW5jdGlvbiggb3duZXIsIGRhdGEsIHZhbHVlICkgewoJCXZhciBwcm9wLAoJCQljYWNoZSA9IHRoaXMuY2FjaGUoIG93bmVyICk7CgoJCS8vIEhhbmRsZTogWyBvd25lciwga2V5LCB2YWx1ZSBdIGFyZ3MKCQkvLyBBbHdheXMgdXNlIGNhbWVsQ2FzZSBrZXkgKGdoLTIyNTcpCgkJaWYgKCB0eXBlb2YgZGF0YSA9PT0gInN0cmluZyIgKSB7CgkJCWNhY2hlWyBqUXVlcnkuY2FtZWxDYXNlKCBkYXRhICkgXSA9IHZhbHVlOwoKCQkvLyBIYW5kbGU6IFsgb3duZXIsIHsgcHJvcGVydGllcyB9IF0gYXJncwoJCX0gZWxzZSB7CgoJCQkvLyBDb3B5IHRoZSBwcm9wZXJ0aWVzIG9uZS1ieS1vbmUgdG8gdGhlIGNhY2hlIG9iamVjdAoJCQlmb3IgKCBwcm9wIGluIGRhdGEgKSB7CgkJCQljYWNoZVsgalF1ZXJ5LmNhbWVsQ2FzZSggcHJvcCApIF0gPSBkYXRhWyBwcm9wIF07CgkJCX0KCQl9CgkJcmV0dXJuIGNhY2hlOwoJfSwKCWdldDogZnVuY3Rpb24oIG93bmVyLCBrZXkgKSB7CgkJcmV0dXJuIGtleSA9PT0gdW5kZWZpbmVkID8KCQkJdGhpcy5jYWNoZSggb3duZXIgKSA6CgoJCQkvLyBBbHdheXMgdXNlIGNhbWVsQ2FzZSBrZXkgKGdoLTIyNTcpCgkJCW93bmVyWyB0aGlzLmV4cGFuZG8gXSAmJiBvd25lclsgdGhpcy5leHBhbmRvIF1bIGpRdWVyeS5jYW1lbENhc2UoIGtleSApIF07Cgl9LAoJYWNjZXNzOiBmdW5jdGlvbiggb3duZXIsIGtleSwgdmFsdWUgKSB7CgoJCS8vIEluIGNhc2VzIHdoZXJlIGVpdGhlcjoKCQkvLwoJCS8vICAgMS4gTm8ga2V5IHdhcyBzcGVjaWZpZWQKCQkvLyAgIDIuIEEgc3RyaW5nIGtleSB3YXMgc3BlY2lmaWVkLCBidXQgbm8gdmFsdWUgcHJvdmlkZWQKCQkvLwoJCS8vIFRha2UgdGhlICJyZWFkIiBwYXRoIGFuZCBhbGxvdyB0aGUgZ2V0IG1ldGhvZCB0byBkZXRlcm1pbmUKCQkvLyB3aGljaCB2YWx1ZSB0byByZXR1cm4sIHJlc3BlY3RpdmVseSBlaXRoZXI6CgkJLy8KCQkvLyAgIDEuIFRoZSBlbnRpcmUgY2FjaGUgb2JqZWN0CgkJLy8gICAyLiBUaGUgZGF0YSBzdG9yZWQgYXQgdGhlIGtleQoJCS8vCgkJaWYgKCBrZXkgPT09IHVuZGVmaW5lZCB8fAoJCQkJKCAoIGtleSAmJiB0eXBlb2Yga2V5ID09PSAic3RyaW5nIiApICYmIHZhbHVlID09PSB1bmRlZmluZWQgKSApIHsKCgkJCXJldHVybiB0aGlzLmdldCggb3duZXIsIGtleSApOwoJCX0KCgkJLy8gV2hlbiB0aGUga2V5IGlzIG5vdCBhIHN0cmluZywgb3IgYm90aCBhIGtleSBhbmQgdmFsdWUKCQkvLyBhcmUgc3BlY2lmaWVkLCBzZXQgb3IgZXh0ZW5kIChleGlzdGluZyBvYmplY3RzKSB3aXRoIGVpdGhlcjoKCQkvLwoJCS8vICAgMS4gQW4gb2JqZWN0IG9mIHByb3BlcnRpZXMKCQkvLyAgIDIuIEEga2V5IGFuZCB2YWx1ZQoJCS8vCgkJdGhpcy5zZXQoIG93bmVyLCBrZXksIHZhbHVlICk7CgoJCS8vIFNpbmNlIHRoZSAic2V0IiBwYXRoIGNhbiBoYXZlIHR3byBwb3NzaWJsZSBlbnRyeSBwb2ludHMKCQkvLyByZXR1cm4gdGhlIGV4cGVjdGVkIGRhdGEgYmFzZWQgb24gd2hpY2ggcGF0aCB3YXMgdGFrZW5bKl0KCQlyZXR1cm4gdmFsdWUgIT09IHVuZGVmaW5lZCA/IHZhbHVlIDoga2V5OwoJfSwKCXJlbW92ZTogZnVuY3Rpb24oIG93bmVyLCBrZXkgKSB7CgkJdmFyIGksCgkJCWNhY2hlID0gb3duZXJbIHRoaXMuZXhwYW5kbyBdOwoKCQlpZiAoIGNhY2hlID09PSB1bmRlZmluZWQgKSB7CgkJCXJldHVybjsKCQl9CgoJCWlmICgga2V5ICE9PSB1bmRlZmluZWQgKSB7CgoJCQkvLyBTdXBwb3J0IGFycmF5IG9yIHNwYWNlIHNlcGFyYXRlZCBzdHJpbmcgb2Yga2V5cwoJCQlpZiAoIGpRdWVyeS5pc0FycmF5KCBrZXkgKSApIHsKCgkJCQkvLyBJZiBrZXkgaXMgYW4gYXJyYXkgb2Yga2V5cy4uLgoJCQkJLy8gV2UgYWx3YXlzIHNldCBjYW1lbENhc2Uga2V5cywgc28gcmVtb3ZlIHRoYXQuCgkJCQlrZXkgPSBrZXkubWFwKCBqUXVlcnkuY2FtZWxDYXNlICk7CgkJCX0gZWxzZSB7CgkJCQlrZXkgPSBqUXVlcnkuY2FtZWxDYXNlKCBrZXkgKTsKCgkJCQkvLyBJZiBhIGtleSB3aXRoIHRoZSBzcGFjZXMgZXhpc3RzLCB1c2UgaXQuCgkJCQkvLyBPdGhlcndpc2UsIGNyZWF0ZSBhbiBhcnJheSBieSBtYXRjaGluZyBub24td2hpdGVzcGFjZQoJCQkJa2V5ID0ga2V5IGluIGNhY2hlID8KCQkJCQlbIGtleSBdIDoKCQkJCQkoIGtleS5tYXRjaCggcm5vdGh0bWx3aGl0ZSApIHx8IFtdICk7CgkJCX0KCgkJCWkgPSBrZXkubGVuZ3RoOwoKCQkJd2hpbGUgKCBpLS0gKSB7CgkJCQlkZWxldGUgY2FjaGVbIGtleVsgaSBdIF07CgkJCX0KCQl9CgoJCS8vIFJlbW92ZSB0aGUgZXhwYW5kbyBpZiB0aGVyZSdzIG5vIG1vcmUgZGF0YQoJCWlmICgga2V5ID09PSB1bmRlZmluZWQgfHwgalF1ZXJ5LmlzRW1wdHlPYmplY3QoIGNhY2hlICkgKSB7CgoJCQkvLyBTdXBwb3J0OiBDaHJvbWUgPD0zNSAtIDQ1CgkJCS8vIFdlYmtpdCAmIEJsaW5rIHBlcmZvcm1hbmNlIHN1ZmZlcnMgd2hlbiBkZWxldGluZyBwcm9wZXJ0aWVzCgkJCS8vIGZyb20gRE9NIG5vZGVzLCBzbyBzZXQgdG8gdW5kZWZpbmVkIGluc3RlYWQKCQkJLy8gaHR0cHM6Ly9idWdzLmNocm9taXVtLm9yZy9wL2Nocm9taXVtL2lzc3Vlcy9kZXRhaWw/aWQ9Mzc4NjA3IChidWcgcmVzdHJpY3RlZCkKCQkJaWYgKCBvd25lci5ub2RlVHlwZSApIHsKCQkJCW93bmVyWyB0aGlzLmV4cGFuZG8gXSA9IHVuZGVmaW5lZDsKCQkJfSBlbHNlIHsKCQkJCWRlbGV0ZSBvd25lclsgdGhpcy5leHBhbmRvIF07CgkJCX0KCQl9Cgl9LAoJaGFzRGF0YTogZnVuY3Rpb24oIG93bmVyICkgewoJCXZhciBjYWNoZSA9IG93bmVyWyB0aGlzLmV4cGFuZG8gXTsKCQlyZXR1cm4gY2FjaGUgIT09IHVuZGVmaW5lZCAmJiAhalF1ZXJ5LmlzRW1wdHlPYmplY3QoIGNhY2hlICk7Cgl9Cn07CnZhciBkYXRhUHJpdiA9IG5ldyBEYXRhKCk7Cgp2YXIgZGF0YVVzZXIgPSBuZXcgRGF0YSgpOwoKCgovLwlJbXBsZW1lbnRhdGlvbiBTdW1tYXJ5Ci8vCi8vCTEuIEVuZm9yY2UgQVBJIHN1cmZhY2UgYW5kIHNlbWFudGljIGNvbXBhdGliaWxpdHkgd2l0aCAxLjkueCBicmFuY2gKLy8JMi4gSW1wcm92ZSB0aGUgbW9kdWxlJ3MgbWFpbnRhaW5hYmlsaXR5IGJ5IHJlZHVjaW5nIHRoZSBzdG9yYWdlCi8vCQlwYXRocyB0byBhIHNpbmdsZSBtZWNoYW5pc20uCi8vCTMuIFVzZSB0aGUgc2FtZSBzaW5nbGUgbWVjaGFuaXNtIHRvIHN1cHBvcnQgInByaXZhdGUiIGFuZCAidXNlciIgZGF0YS4KLy8JNC4gX05ldmVyXyBleHBvc2UgInByaXZhdGUiIGRhdGEgdG8gdXNlciBjb2RlIChUT0RPOiBEcm9wIF9kYXRhLCBfcmVtb3ZlRGF0YSkKLy8JNS4gQXZvaWQgZXhwb3NpbmcgaW1wbGVtZW50YXRpb24gZGV0YWlscyBvbiB1c2VyIG9iamVjdHMgKGVnLiBleHBhbmRvIHByb3BlcnRpZXMpCi8vCTYuIFByb3ZpZGUgYSBjbGVhciBwYXRoIGZvciBpbXBsZW1lbnRhdGlvbiB1cGdyYWRlIHRvIFdlYWtNYXAgaW4gMjAxNAoKdmFyIHJicmFjZSA9IC9eKD86XHtbXHdcV10qXH18XFtbXHdcV10qXF0pJC8sCglybXVsdGlEYXNoID0gL1tBLVpdL2c7CgpmdW5jdGlvbiBnZXREYXRhKCBkYXRhICkgewoJaWYgKCBkYXRhID09PSAidHJ1ZSIgKSB7CgkJcmV0dXJuIHRydWU7Cgl9CgoJaWYgKCBkYXRhID09PSAiZmFsc2UiICkgewoJCXJldHVybiBmYWxzZTsKCX0KCglpZiAoIGRhdGEgPT09ICJudWxsIiApIHsKCQlyZXR1cm4gbnVsbDsKCX0KCgkvLyBPbmx5IGNvbnZlcnQgdG8gYSBudW1iZXIgaWYgaXQgZG9lc24ndCBjaGFuZ2UgdGhlIHN0cmluZwoJaWYgKCBkYXRhID09PSArZGF0YSArICIiICkgewoJCXJldHVybiArZGF0YTsKCX0KCglpZiAoIHJicmFjZS50ZXN0KCBkYXRhICkgKSB7CgkJcmV0dXJuIEpTT04ucGFyc2UoIGRhdGEgKTsKCX0KCglyZXR1cm4gZGF0YTsKfQoKZnVuY3Rpb24gZGF0YUF0dHIoIGVsZW0sIGtleSwgZGF0YSApIHsKCXZhciBuYW1lOwoKCS8vIElmIG5vdGhpbmcgd2FzIGZvdW5kIGludGVybmFsbHksIHRyeSB0byBmZXRjaCBhbnkKCS8vIGRhdGEgZnJvbSB0aGUgSFRNTDUgZGF0YS0qIGF0dHJpYnV0ZQoJaWYgKCBkYXRhID09PSB1bmRlZmluZWQgJiYgZWxlbS5ub2RlVHlwZSA9PT0gMSApIHsKCQluYW1lID0gImRhdGEtIiArIGtleS5yZXBsYWNlKCBybXVsdGlEYXNoLCAiLSQmIiApLnRvTG93ZXJDYXNlKCk7CgkJZGF0YSA9IGVsZW0uZ2V0QXR0cmlidXRlKCBuYW1lICk7CgoJCWlmICggdHlwZW9mIGRhdGEgPT09ICJzdHJpbmciICkgewoJCQl0cnkgewoJCQkJZGF0YSA9IGdldERhdGEoIGRhdGEgKTsKCQkJfSBjYXRjaCAoIGUgKSB7fQoKCQkJLy8gTWFrZSBzdXJlIHdlIHNldCB0aGUgZGF0YSBzbyBpdCBpc24ndCBjaGFuZ2VkIGxhdGVyCgkJCWRhdGFVc2VyLnNldCggZWxlbSwga2V5LCBkYXRhICk7CgkJfSBlbHNlIHsKCQkJZGF0YSA9IHVuZGVmaW5lZDsKCQl9Cgl9CglyZXR1cm4gZGF0YTsKfQoKalF1ZXJ5LmV4dGVuZCggewoJaGFzRGF0YTogZnVuY3Rpb24oIGVsZW0gKSB7CgkJcmV0dXJuIGRhdGFVc2VyLmhhc0RhdGEoIGVsZW0gKSB8fCBkYXRhUHJpdi5oYXNEYXRhKCBlbGVtICk7Cgl9LAoKCWRhdGE6IGZ1bmN0aW9uKCBlbGVtLCBuYW1lLCBkYXRhICkgewoJCXJldHVybiBkYXRhVXNlci5hY2Nlc3MoIGVsZW0sIG5hbWUsIGRhdGEgKTsKCX0sCgoJcmVtb3ZlRGF0YTogZnVuY3Rpb24oIGVsZW0sIG5hbWUgKSB7CgkJZGF0YVVzZXIucmVtb3ZlKCBlbGVtLCBuYW1lICk7Cgl9LAoKCS8vIFRPRE86IE5vdyB0aGF0IGFsbCBjYWxscyB0byBfZGF0YSBhbmQgX3JlbW92ZURhdGEgaGF2ZSBiZWVuIHJlcGxhY2VkCgkvLyB3aXRoIGRpcmVjdCBjYWxscyB0byBkYXRhUHJpdiBtZXRob2RzLCB0aGVzZSBjYW4gYmUgZGVwcmVjYXRlZC4KCV9kYXRhOiBmdW5jdGlvbiggZWxlbSwgbmFtZSwgZGF0YSApIHsKCQlyZXR1cm4gZGF0YVByaXYuYWNjZXNzKCBlbGVtLCBuYW1lLCBkYXRhICk7Cgl9LAoKCV9yZW1vdmVEYXRhOiBmdW5jdGlvbiggZWxlbSwgbmFtZSApIHsKCQlkYXRhUHJpdi5yZW1vdmUoIGVsZW0sIG5hbWUgKTsKCX0KfSApOwoKalF1ZXJ5LmZuLmV4dGVuZCggewoJZGF0YTogZnVuY3Rpb24oIGtleSwgdmFsdWUgKSB7CgkJdmFyIGksIG5hbWUsIGRhdGEsCgkJCWVsZW0gPSB0aGlzWyAwIF0sCgkJCWF0dHJzID0gZWxlbSAmJiBlbGVtLmF0dHJpYnV0ZXM7CgoJCS8vIEdldHMgYWxsIHZhbHVlcwoJCWlmICgga2V5ID09PSB1bmRlZmluZWQgKSB7CgkJCWlmICggdGhpcy5sZW5ndGggKSB7CgkJCQlkYXRhID0gZGF0YVVzZXIuZ2V0KCBlbGVtICk7CgoJCQkJaWYgKCBlbGVtLm5vZGVUeXBlID09PSAxICYmICFkYXRhUHJpdi5nZXQoIGVsZW0sICJoYXNEYXRhQXR0cnMiICkgKSB7CgkJCQkJaSA9IGF0dHJzLmxlbmd0aDsKCQkJCQl3aGlsZSAoIGktLSApIHsKCgkJCQkJCS8vIFN1cHBvcnQ6IElFIDExIG9ubHkKCQkJCQkJLy8gVGhlIGF0dHJzIGVsZW1lbnRzIGNhbiBiZSBudWxsICgjMTQ4OTQpCgkJCQkJCWlmICggYXR0cnNbIGkgXSApIHsKCQkJCQkJCW5hbWUgPSBhdHRyc1sgaSBdLm5hbWU7CgkJCQkJCQlpZiAoIG5hbWUuaW5kZXhPZiggImRhdGEtIiApID09PSAwICkgewoJCQkJCQkJCW5hbWUgPSBqUXVlcnkuY2FtZWxDYXNlKCBuYW1lLnNsaWNlKCA1ICkgKTsKCQkJCQkJCQlkYXRhQXR0ciggZWxlbSwgbmFtZSwgZGF0YVsgbmFtZSBdICk7CgkJCQkJCQl9CgkJCQkJCX0KCQkJCQl9CgkJCQkJZGF0YVByaXYuc2V0KCBlbGVtLCAiaGFzRGF0YUF0dHJzIiwgdHJ1ZSApOwoJCQkJfQoJCQl9CgoJCQlyZXR1cm4gZGF0YTsKCQl9CgoJCS8vIFNldHMgbXVsdGlwbGUgdmFsdWVzCgkJaWYgKCB0eXBlb2Yga2V5ID09PSAib2JqZWN0IiApIHsKCQkJcmV0dXJuIHRoaXMuZWFjaCggZnVuY3Rpb24oKSB7CgkJCQlkYXRhVXNlci5zZXQoIHRoaXMsIGtleSApOwoJCQl9ICk7CgkJfQoKCQlyZXR1cm4gYWNjZXNzKCB0aGlzLCBmdW5jdGlvbiggdmFsdWUgKSB7CgkJCXZhciBkYXRhOwoKCQkJLy8gVGhlIGNhbGxpbmcgalF1ZXJ5IG9iamVjdCAoZWxlbWVudCBtYXRjaGVzKSBpcyBub3QgZW1wdHkKCQkJLy8gKGFuZCB0aGVyZWZvcmUgaGFzIGFuIGVsZW1lbnQgYXBwZWFycyBhdCB0aGlzWyAwIF0pIGFuZCB0aGUKCQkJLy8gYHZhbHVlYCBwYXJhbWV0ZXIgd2FzIG5vdCB1bmRlZmluZWQuIEFuIGVtcHR5IGpRdWVyeSBvYmplY3QKCQkJLy8gd2lsbCByZXN1bHQgaW4gYHVuZGVmaW5lZGAgZm9yIGVsZW0gPSB0aGlzWyAwIF0gd2hpY2ggd2lsbAoJCQkvLyB0aHJvdyBhbiBleGNlcHRpb24gaWYgYW4gYXR0ZW1wdCB0byByZWFkIGEgZGF0YSBjYWNoZSBpcyBtYWRlLgoJCQlpZiAoIGVsZW0gJiYgdmFsdWUgPT09IHVuZGVmaW5lZCApIHsKCgkJCQkvLyBBdHRlbXB0IHRvIGdldCBkYXRhIGZyb20gdGhlIGNhY2hlCgkJCQkvLyBUaGUga2V5IHdpbGwgYWx3YXlzIGJlIGNhbWVsQ2FzZWQgaW4gRGF0YQoJCQkJZGF0YSA9IGRhdGFVc2VyLmdldCggZWxlbSwga2V5ICk7CgkJCQlpZiAoIGRhdGEgIT09IHVuZGVmaW5lZCApIHsKCQkJCQlyZXR1cm4gZGF0YTsKCQkJCX0KCgkJCQkvLyBBdHRlbXB0IHRvICJkaXNjb3ZlciIgdGhlIGRhdGEgaW4KCQkJCS8vIEhUTUw1IGN1c3RvbSBkYXRhLSogYXR0cnMKCQkJCWRhdGEgPSBkYXRhQXR0ciggZWxlbSwga2V5ICk7CgkJCQlpZiAoIGRhdGEgIT09IHVuZGVmaW5lZCApIHsKCQkJCQlyZXR1cm4gZGF0YTsKCQkJCX0KCgkJCQkvLyBXZSB0cmllZCByZWFsbHkgaGFyZCwgYnV0IHRoZSBkYXRhIGRvZXNuJ3QgZXhpc3QuCgkJCQlyZXR1cm47CgkJCX0KCgkJCS8vIFNldCB0aGUgZGF0YS4uLgoJCQl0aGlzLmVhY2goIGZ1bmN0aW9uKCkgewoKCQkJCS8vIFdlIGFsd2F5cyBzdG9yZSB0aGUgY2FtZWxDYXNlZCBrZXkKCQkJCWRhdGFVc2VyLnNldCggdGhpcywga2V5LCB2YWx1ZSApOwoJCQl9ICk7CgkJfSwgbnVsbCwgdmFsdWUsIGFyZ3VtZW50cy5sZW5ndGggPiAxLCBudWxsLCB0cnVlICk7Cgl9LAoKCXJlbW92ZURhdGE6IGZ1bmN0aW9uKCBrZXkgKSB7CgkJcmV0dXJuIHRoaXMuZWFjaCggZnVuY3Rpb24oKSB7CgkJCWRhdGFVc2VyLnJlbW92ZSggdGhpcywga2V5ICk7CgkJfSApOwoJfQp9ICk7CgoKalF1ZXJ5LmV4dGVuZCggewoJcXVldWU6IGZ1bmN0aW9uKCBlbGVtLCB0eXBlLCBkYXRhICkgewoJCXZhciBxdWV1ZTsKCgkJaWYgKCBlbGVtICkgewoJCQl0eXBlID0gKCB0eXBlIHx8ICJmeCIgKSArICJxdWV1ZSI7CgkJCXF1ZXVlID0gZGF0YVByaXYuZ2V0KCBlbGVtLCB0eXBlICk7CgoJCQkvLyBTcGVlZCB1cCBkZXF1ZXVlIGJ5IGdldHRpbmcgb3V0IHF1aWNrbHkgaWYgdGhpcyBpcyBqdXN0IGEgbG9va3VwCgkJCWlmICggZGF0YSApIHsKCQkJCWlmICggIXF1ZXVlIHx8IGpRdWVyeS5pc0FycmF5KCBkYXRhICkgKSB7CgkJCQkJcXVldWUgPSBkYXRhUHJpdi5hY2Nlc3MoIGVsZW0sIHR5cGUsIGpRdWVyeS5tYWtlQXJyYXkoIGRhdGEgKSApOwoJCQkJfSBlbHNlIHsKCQkJCQlxdWV1ZS5wdXNoKCBkYXRhICk7CgkJCQl9CgkJCX0KCQkJcmV0dXJuIHF1ZXVlIHx8IFtdOwoJCX0KCX0sCgoJZGVxdWV1ZTogZnVuY3Rpb24oIGVsZW0sIHR5cGUgKSB7CgkJdHlwZSA9IHR5cGUgfHwgImZ4IjsKCgkJdmFyIHF1ZXVlID0galF1ZXJ5LnF1ZXVlKCBlbGVtLCB0eXBlICksCgkJCXN0YXJ0TGVuZ3RoID0gcXVldWUubGVuZ3RoLAoJCQlmbiA9IHF1ZXVlLnNoaWZ0KCksCgkJCWhvb2tzID0galF1ZXJ5Ll9xdWV1ZUhvb2tzKCBlbGVtLCB0eXBlICksCgkJCW5leHQgPSBmdW5jdGlvbigpIHsKCQkJCWpRdWVyeS5kZXF1ZXVlKCBlbGVtLCB0eXBlICk7CgkJCX07CgoJCS8vIElmIHRoZSBmeCBxdWV1ZSBpcyBkZXF1ZXVlZCwgYWx3YXlzIHJlbW92ZSB0aGUgcHJvZ3Jlc3Mgc2VudGluZWwKCQlpZiAoIGZuID09PSAiaW5wcm9ncmVzcyIgKSB7CgkJCWZuID0gcXVldWUuc2hpZnQoKTsKCQkJc3RhcnRMZW5ndGgtLTsKCQl9CgoJCWlmICggZm4gKSB7CgoJCQkvLyBBZGQgYSBwcm9ncmVzcyBzZW50aW5lbCB0byBwcmV2ZW50IHRoZSBmeCBxdWV1ZSBmcm9tIGJlaW5nCgkJCS8vIGF1dG9tYXRpY2FsbHkgZGVxdWV1ZWQKCQkJaWYgKCB0eXBlID09PSAiZngiICkgewoJCQkJcXVldWUudW5zaGlmdCggImlucHJvZ3Jlc3MiICk7CgkJCX0KCgkJCS8vIENsZWFyIHVwIHRoZSBsYXN0IHF1ZXVlIHN0b3AgZnVuY3Rpb24KCQkJZGVsZXRlIGhvb2tzLnN0b3A7CgkJCWZuLmNhbGwoIGVsZW0sIG5leHQsIGhvb2tzICk7CgkJfQoKCQlpZiAoICFzdGFydExlbmd0aCAmJiBob29rcyApIHsKCQkJaG9va3MuZW1wdHkuZmlyZSgpOwoJCX0KCX0sCgoJLy8gTm90IHB1YmxpYyAtIGdlbmVyYXRlIGEgcXVldWVIb29rcyBvYmplY3QsIG9yIHJldHVybiB0aGUgY3VycmVudCBvbmUKCV9xdWV1ZUhvb2tzOiBmdW5jdGlvbiggZWxlbSwgdHlwZSApIHsKCQl2YXIga2V5ID0gdHlwZSArICJxdWV1ZUhvb2tzIjsKCQlyZXR1cm4gZGF0YVByaXYuZ2V0KCBlbGVtLCBrZXkgKSB8fCBkYXRhUHJpdi5hY2Nlc3MoIGVsZW0sIGtleSwgewoJCQllbXB0eTogalF1ZXJ5LkNhbGxiYWNrcyggIm9uY2UgbWVtb3J5IiApLmFkZCggZnVuY3Rpb24oKSB7CgkJCQlkYXRhUHJpdi5yZW1vdmUoIGVsZW0sIFsgdHlwZSArICJxdWV1ZSIsIGtleSBdICk7CgkJCX0gKQoJCX0gKTsKCX0KfSApOwoKalF1ZXJ5LmZuLmV4dGVuZCggewoJcXVldWU6IGZ1bmN0aW9uKCB0eXBlLCBkYXRhICkgewoJCXZhciBzZXR0ZXIgPSAyOwoKCQlpZiAoIHR5cGVvZiB0eXBlICE9PSAic3RyaW5nIiApIHsKCQkJZGF0YSA9IHR5cGU7CgkJCXR5cGUgPSAiZngiOwoJCQlzZXR0ZXItLTsKCQl9CgoJCWlmICggYXJndW1lbnRzLmxlbmd0aCA8IHNldHRlciApIHsKCQkJcmV0dXJuIGpRdWVyeS5xdWV1ZSggdGhpc1sgMCBdLCB0eXBlICk7CgkJfQoKCQlyZXR1cm4gZGF0YSA9PT0gdW5kZWZpbmVkID8KCQkJdGhpcyA6CgkJCXRoaXMuZWFjaCggZnVuY3Rpb24oKSB7CgkJCQl2YXIgcXVldWUgPSBqUXVlcnkucXVldWUoIHRoaXMsIHR5cGUsIGRhdGEgKTsKCgkJCQkvLyBFbnN1cmUgYSBob29rcyBmb3IgdGhpcyBxdWV1ZQoJCQkJalF1ZXJ5Ll9xdWV1ZUhvb2tzKCB0aGlzLCB0eXBlICk7CgoJCQkJaWYgKCB0eXBlID09PSAiZngiICYmIHF1ZXVlWyAwIF0gIT09ICJpbnByb2dyZXNzIiApIHsKCQkJCQlqUXVlcnkuZGVxdWV1ZSggdGhpcywgdHlwZSApOwoJCQkJfQoJCQl9ICk7Cgl9LAoJZGVxdWV1ZTogZnVuY3Rpb24oIHR5cGUgKSB7CgkJcmV0dXJuIHRoaXMuZWFjaCggZnVuY3Rpb24oKSB7CgkJCWpRdWVyeS5kZXF1ZXVlKCB0aGlzLCB0eXBlICk7CgkJfSApOwoJfSwKCWNsZWFyUXVldWU6IGZ1bmN0aW9uKCB0eXBlICkgewoJCXJldHVybiB0aGlzLnF1ZXVlKCB0eXBlIHx8ICJmeCIsIFtdICk7Cgl9LAoKCS8vIEdldCBhIHByb21pc2UgcmVzb2x2ZWQgd2hlbiBxdWV1ZXMgb2YgYSBjZXJ0YWluIHR5cGUKCS8vIGFyZSBlbXB0aWVkIChmeCBpcyB0aGUgdHlwZSBieSBkZWZhdWx0KQoJcHJvbWlzZTogZnVuY3Rpb24oIHR5cGUsIG9iaiApIHsKCQl2YXIgdG1wLAoJCQljb3VudCA9IDEsCgkJCWRlZmVyID0galF1ZXJ5LkRlZmVycmVkKCksCgkJCWVsZW1lbnRzID0gdGhpcywKCQkJaSA9IHRoaXMubGVuZ3RoLAoJCQlyZXNvbHZlID0gZnVuY3Rpb24oKSB7CgkJCQlpZiAoICEoIC0tY291bnQgKSApIHsKCQkJCQlkZWZlci5yZXNvbHZlV2l0aCggZWxlbWVudHMsIFsgZWxlbWVudHMgXSApOwoJCQkJfQoJCQl9OwoKCQlpZiAoIHR5cGVvZiB0eXBlICE9PSAic3RyaW5nIiApIHsKCQkJb2JqID0gdHlwZTsKCQkJdHlwZSA9IHVuZGVmaW5lZDsKCQl9CgkJdHlwZSA9IHR5cGUgfHwgImZ4IjsKCgkJd2hpbGUgKCBpLS0gKSB7CgkJCXRtcCA9IGRhdGFQcml2LmdldCggZWxlbWVudHNbIGkgXSwgdHlwZSArICJxdWV1ZUhvb2tzIiApOwoJCQlpZiAoIHRtcCAmJiB0bXAuZW1wdHkgKSB7CgkJCQljb3VudCsrOwoJCQkJdG1wLmVtcHR5LmFkZCggcmVzb2x2ZSApOwoJCQl9CgkJfQoJCXJlc29sdmUoKTsKCQlyZXR1cm4gZGVmZXIucHJvbWlzZSggb2JqICk7Cgl9Cn0gKTsKdmFyIHBudW0gPSAoIC9bKy1dPyg/OlxkKlwufClcZCsoPzpbZUVdWystXT9cZCt8KS8gKS5zb3VyY2U7Cgp2YXIgcmNzc051bSA9IG5ldyBSZWdFeHAoICJeKD86KFsrLV0pPXwpKCIgKyBwbnVtICsgIikoW2EteiVdKikkIiwgImkiICk7CgoKdmFyIGNzc0V4cGFuZCA9IFsgIlRvcCIsICJSaWdodCIsICJCb3R0b20iLCAiTGVmdCIgXTsKCnZhciBpc0hpZGRlbldpdGhpblRyZWUgPSBmdW5jdGlvbiggZWxlbSwgZWwgKSB7CgoJCS8vIGlzSGlkZGVuV2l0aGluVHJlZSBtaWdodCBiZSBjYWxsZWQgZnJvbSBqUXVlcnkjZmlsdGVyIGZ1bmN0aW9uOwoJCS8vIGluIHRoYXQgY2FzZSwgZWxlbWVudCB3aWxsIGJlIHNlY29uZCBhcmd1bWVudAoJCWVsZW0gPSBlbCB8fCBlbGVtOwoKCQkvLyBJbmxpbmUgc3R5bGUgdHJ1bXBzIGFsbAoJCXJldHVybiBlbGVtLnN0eWxlLmRpc3BsYXkgPT09ICJub25lIiB8fAoJCQllbGVtLnN0eWxlLmRpc3BsYXkgPT09ICIiICYmCgoJCQkvLyBPdGhlcndpc2UsIGNoZWNrIGNvbXB1dGVkIHN0eWxlCgkJCS8vIFN1cHBvcnQ6IEZpcmVmb3ggPD00MyAtIDQ1CgkJCS8vIERpc2Nvbm5lY3RlZCBlbGVtZW50cyBjYW4gaGF2ZSBjb21wdXRlZCBkaXNwbGF5OiBub25lLCBzbyBmaXJzdCBjb25maXJtIHRoYXQgZWxlbSBpcwoJCQkvLyBpbiB0aGUgZG9jdW1lbnQuCgkJCWpRdWVyeS5jb250YWlucyggZWxlbS5vd25lckRvY3VtZW50LCBlbGVtICkgJiYKCgkJCWpRdWVyeS5jc3MoIGVsZW0sICJkaXNwbGF5IiApID09PSAibm9uZSI7Cgl9OwoKdmFyIHN3YXAgPSBmdW5jdGlvbiggZWxlbSwgb3B0aW9ucywgY2FsbGJhY2ssIGFyZ3MgKSB7Cgl2YXIgcmV0LCBuYW1lLAoJCW9sZCA9IHt9OwoKCS8vIFJlbWVtYmVyIHRoZSBvbGQgdmFsdWVzLCBhbmQgaW5zZXJ0IHRoZSBuZXcgb25lcwoJZm9yICggbmFtZSBpbiBvcHRpb25zICkgewoJCW9sZFsgbmFtZSBdID0gZWxlbS5zdHlsZVsgbmFtZSBdOwoJCWVsZW0uc3R5bGVbIG5hbWUgXSA9IG9wdGlvbnNbIG5hbWUgXTsKCX0KCglyZXQgPSBjYWxsYmFjay5hcHBseSggZWxlbSwgYXJncyB8fCBbXSApOwoKCS8vIFJldmVydCB0aGUgb2xkIHZhbHVlcwoJZm9yICggbmFtZSBpbiBvcHRpb25zICkgewoJCWVsZW0uc3R5bGVbIG5hbWUgXSA9IG9sZFsgbmFtZSBdOwoJfQoKCXJldHVybiByZXQ7Cn07CgoKCgpmdW5jdGlvbiBhZGp1c3RDU1MoIGVsZW0sIHByb3AsIHZhbHVlUGFydHMsIHR3ZWVuICkgewoJdmFyIGFkanVzdGVkLAoJCXNjYWxlID0gMSwKCQltYXhJdGVyYXRpb25zID0gMjAsCgkJY3VycmVudFZhbHVlID0gdHdlZW4gPwoJCQlmdW5jdGlvbigpIHsKCQkJCXJldHVybiB0d2Vlbi5jdXIoKTsKCQkJfSA6CgkJCWZ1bmN0aW9uKCkgewoJCQkJcmV0dXJuIGpRdWVyeS5jc3MoIGVsZW0sIHByb3AsICIiICk7CgkJCX0sCgkJaW5pdGlhbCA9IGN1cnJlbnRWYWx1ZSgpLAoJCXVuaXQgPSB2YWx1ZVBhcnRzICYmIHZhbHVlUGFydHNbIDMgXSB8fCAoIGpRdWVyeS5jc3NOdW1iZXJbIHByb3AgXSA/ICIiIDogInB4IiApLAoKCQkvLyBTdGFydGluZyB2YWx1ZSBjb21wdXRhdGlvbiBpcyByZXF1aXJlZCBmb3IgcG90ZW50aWFsIHVuaXQgbWlzbWF0Y2hlcwoJCWluaXRpYWxJblVuaXQgPSAoIGpRdWVyeS5jc3NOdW1iZXJbIHByb3AgXSB8fCB1bml0ICE9PSAicHgiICYmICtpbml0aWFsICkgJiYKCQkJcmNzc051bS5leGVjKCBqUXVlcnkuY3NzKCBlbGVtLCBwcm9wICkgKTsKCglpZiAoIGluaXRpYWxJblVuaXQgJiYgaW5pdGlhbEluVW5pdFsgMyBdICE9PSB1bml0ICkgewoKCQkvLyBUcnVzdCB1bml0cyByZXBvcnRlZCBieSBqUXVlcnkuY3NzCgkJdW5pdCA9IHVuaXQgfHwgaW5pdGlhbEluVW5pdFsgMyBdOwoKCQkvLyBNYWtlIHN1cmUgd2UgdXBkYXRlIHRoZSB0d2VlbiBwcm9wZXJ0aWVzIGxhdGVyIG9uCgkJdmFsdWVQYXJ0cyA9IHZhbHVlUGFydHMgfHwgW107CgoJCS8vIEl0ZXJhdGl2ZWx5IGFwcHJveGltYXRlIGZyb20gYSBub256ZXJvIHN0YXJ0aW5nIHBvaW50CgkJaW5pdGlhbEluVW5pdCA9ICtpbml0aWFsIHx8IDE7CgoJCWRvIHsKCgkJCS8vIElmIHByZXZpb3VzIGl0ZXJhdGlvbiB6ZXJvZWQgb3V0LCBkb3VibGUgdW50aWwgd2UgZ2V0ICpzb21ldGhpbmcqLgoJCQkvLyBVc2Ugc3RyaW5nIGZvciBkb3VibGluZyBzbyB3ZSBkb24ndCBhY2NpZGVudGFsbHkgc2VlIHNjYWxlIGFzIHVuY2hhbmdlZCBiZWxvdwoJCQlzY2FsZSA9IHNjYWxlIHx8ICIuNSI7CgoJCQkvLyBBZGp1c3QgYW5kIGFwcGx5CgkJCWluaXRpYWxJblVuaXQgPSBpbml0aWFsSW5Vbml0IC8gc2NhbGU7CgkJCWpRdWVyeS5zdHlsZSggZWxlbSwgcHJvcCwgaW5pdGlhbEluVW5pdCArIHVuaXQgKTsKCgkJLy8gVXBkYXRlIHNjYWxlLCB0b2xlcmF0aW5nIHplcm8gb3IgTmFOIGZyb20gdHdlZW4uY3VyKCkKCQkvLyBCcmVhayB0aGUgbG9vcCBpZiBzY2FsZSBpcyB1bmNoYW5nZWQgb3IgcGVyZmVjdCwgb3IgaWYgd2UndmUganVzdCBoYWQgZW5vdWdoLgoJCX0gd2hpbGUgKAoJCQlzY2FsZSAhPT0gKCBzY2FsZSA9IGN1cnJlbnRWYWx1ZSgpIC8gaW5pdGlhbCApICYmIHNjYWxlICE9PSAxICYmIC0tbWF4SXRlcmF0aW9ucwoJCSk7Cgl9CgoJaWYgKCB2YWx1ZVBhcnRzICkgewoJCWluaXRpYWxJblVuaXQgPSAraW5pdGlhbEluVW5pdCB8fCAraW5pdGlhbCB8fCAwOwoKCQkvLyBBcHBseSByZWxhdGl2ZSBvZmZzZXQgKCs9Ly09KSBpZiBzcGVjaWZpZWQKCQlhZGp1c3RlZCA9IHZhbHVlUGFydHNbIDEgXSA/CgkJCWluaXRpYWxJblVuaXQgKyAoIHZhbHVlUGFydHNbIDEgXSArIDEgKSAqIHZhbHVlUGFydHNbIDIgXSA6CgkJCSt2YWx1ZVBhcnRzWyAyIF07CgkJaWYgKCB0d2VlbiApIHsKCQkJdHdlZW4udW5pdCA9IHVuaXQ7CgkJCXR3ZWVuLnN0YXJ0ID0gaW5pdGlhbEluVW5pdDsKCQkJdHdlZW4uZW5kID0gYWRqdXN0ZWQ7CgkJfQoJfQoJcmV0dXJuIGFkanVzdGVkOwp9CgoKdmFyIGRlZmF1bHREaXNwbGF5TWFwID0ge307CgpmdW5jdGlvbiBnZXREZWZhdWx0RGlzcGxheSggZWxlbSApIHsKCXZhciB0ZW1wLAoJCWRvYyA9IGVsZW0ub3duZXJEb2N1bWVudCwKCQlub2RlTmFtZSA9IGVsZW0ubm9kZU5hbWUsCgkJZGlzcGxheSA9IGRlZmF1bHREaXNwbGF5TWFwWyBub2RlTmFtZSBdOwoKCWlmICggZGlzcGxheSApIHsKCQlyZXR1cm4gZGlzcGxheTsKCX0KCgl0ZW1wID0gZG9jLmJvZHkuYXBwZW5kQ2hpbGQoIGRvYy5jcmVhdGVFbGVtZW50KCBub2RlTmFtZSApICk7CglkaXNwbGF5ID0galF1ZXJ5LmNzcyggdGVtcCwgImRpc3BsYXkiICk7CgoJdGVtcC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKCB0ZW1wICk7CgoJaWYgKCBkaXNwbGF5ID09PSAibm9uZSIgKSB7CgkJZGlzcGxheSA9ICJibG9jayI7Cgl9CglkZWZhdWx0RGlzcGxheU1hcFsgbm9kZU5hbWUgXSA9IGRpc3BsYXk7CgoJcmV0dXJuIGRpc3BsYXk7Cn0KCmZ1bmN0aW9uIHNob3dIaWRlKCBlbGVtZW50cywgc2hvdyApIHsKCXZhciBkaXNwbGF5LCBlbGVtLAoJCXZhbHVlcyA9IFtdLAoJCWluZGV4ID0gMCwKCQlsZW5ndGggPSBlbGVtZW50cy5sZW5ndGg7CgoJLy8gRGV0ZXJtaW5lIG5ldyBkaXNwbGF5IHZhbHVlIGZvciBlbGVtZW50cyB0aGF0IG5lZWQgdG8gY2hhbmdlCglmb3IgKCA7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCsrICkgewoJCWVsZW0gPSBlbGVtZW50c1sgaW5kZXggXTsKCQlpZiAoICFlbGVtLnN0eWxlICkgewoJCQljb250aW51ZTsKCQl9CgoJCWRpc3BsYXkgPSBlbGVtLnN0eWxlLmRpc3BsYXk7CgkJaWYgKCBzaG93ICkgewoKCQkJLy8gU2luY2Ugd2UgZm9yY2UgdmlzaWJpbGl0eSB1cG9uIGNhc2NhZGUtaGlkZGVuIGVsZW1lbnRzLCBhbiBpbW1lZGlhdGUgKGFuZCBzbG93KQoJCQkvLyBjaGVjayBpcyByZXF1aXJlZCBpbiB0aGlzIGZpcnN0IGxvb3AgdW5sZXNzIHdlIGhhdmUgYSBub25lbXB0eSBkaXNwbGF5IHZhbHVlIChlaXRoZXIKCQkJLy8gaW5saW5lIG9yIGFib3V0LXRvLWJlLXJlc3RvcmVkKQoJCQlpZiAoIGRpc3BsYXkgPT09ICJub25lIiApIHsKCQkJCXZhbHVlc1sgaW5kZXggXSA9IGRhdGFQcml2LmdldCggZWxlbSwgImRpc3BsYXkiICkgfHwgbnVsbDsKCQkJCWlmICggIXZhbHVlc1sgaW5kZXggXSApIHsKCQkJCQllbGVtLnN0eWxlLmRpc3BsYXkgPSAiIjsKCQkJCX0KCQkJfQoJCQlpZiAoIGVsZW0uc3R5bGUuZGlzcGxheSA9PT0gIiIgJiYgaXNIaWRkZW5XaXRoaW5UcmVlKCBlbGVtICkgKSB7CgkJCQl2YWx1ZXNbIGluZGV4IF0gPSBnZXREZWZhdWx0RGlzcGxheSggZWxlbSApOwoJCQl9CgkJfSBlbHNlIHsKCQkJaWYgKCBkaXNwbGF5ICE9PSAibm9uZSIgKSB7CgkJCQl2YWx1ZXNbIGluZGV4IF0gPSAibm9uZSI7CgoJCQkJLy8gUmVtZW1iZXIgd2hhdCB3ZSdyZSBvdmVyd3JpdGluZwoJCQkJZGF0YVByaXYuc2V0KCBlbGVtLCAiZGlzcGxheSIsIGRpc3BsYXkgKTsKCQkJfQoJCX0KCX0KCgkvLyBTZXQgdGhlIGRpc3BsYXkgb2YgdGhlIGVsZW1lbnRzIGluIGEgc2Vjb25kIGxvb3AgdG8gYXZvaWQgY29uc3RhbnQgcmVmbG93Cglmb3IgKCBpbmRleCA9IDA7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCsrICkgewoJCWlmICggdmFsdWVzWyBpbmRleCBdICE9IG51bGwgKSB7CgkJCWVsZW1lbnRzWyBpbmRleCBdLnN0eWxlLmRpc3BsYXkgPSB2YWx1ZXNbIGluZGV4IF07CgkJfQoJfQoKCXJldHVybiBlbGVtZW50czsKfQoKalF1ZXJ5LmZuLmV4dGVuZCggewoJc2hvdzogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHNob3dIaWRlKCB0aGlzLCB0cnVlICk7Cgl9LAoJaGlkZTogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHNob3dIaWRlKCB0aGlzICk7Cgl9LAoJdG9nZ2xlOiBmdW5jdGlvbiggc3RhdGUgKSB7CgkJaWYgKCB0eXBlb2Ygc3RhdGUgPT09ICJib29sZWFuIiApIHsKCQkJcmV0dXJuIHN0YXRlID8gdGhpcy5zaG93KCkgOiB0aGlzLmhpZGUoKTsKCQl9CgoJCXJldHVybiB0aGlzLmVhY2goIGZ1bmN0aW9uKCkgewoJCQlpZiAoIGlzSGlkZGVuV2l0aGluVHJlZSggdGhpcyApICkgewoJCQkJalF1ZXJ5KCB0aGlzICkuc2hvdygpOwoJCQl9IGVsc2UgewoJCQkJalF1ZXJ5KCB0aGlzICkuaGlkZSgpOwoJCQl9CgkJfSApOwoJfQp9ICk7CnZhciByY2hlY2thYmxlVHlwZSA9ICggL14oPzpjaGVja2JveHxyYWRpbykkL2kgKTsKCnZhciBydGFnTmFtZSA9ICggLzwoW2Etel1bXlwvXDA+XHgyMFx0XHJcblxmXSspL2kgKTsKCnZhciByc2NyaXB0VHlwZSA9ICggL14kfFwvKD86amF2YXxlY21hKXNjcmlwdC9pICk7CgoKCi8vIFdlIGhhdmUgdG8gY2xvc2UgdGhlc2UgdGFncyB0byBzdXBwb3J0IFhIVE1MICgjMTMyMDApCnZhciB3cmFwTWFwID0gewoKCS8vIFN1cHBvcnQ6IElFIDw9OSBvbmx5CglvcHRpb246IFsgMSwgIjxzZWxlY3QgbXVsdGlwbGU9J211bHRpcGxlJz4iLCAiPC9zZWxlY3Q+IiBdLAoKCS8vIFhIVE1MIHBhcnNlcnMgZG8gbm90IG1hZ2ljYWxseSBpbnNlcnQgZWxlbWVudHMgaW4gdGhlCgkvLyBzYW1lIHdheSB0aGF0IHRhZyBzb3VwIHBhcnNlcnMgZG8uIFNvIHdlIGNhbm5vdCBzaG9ydGVuCgkvLyB0aGlzIGJ5IG9taXR0aW5nIDx0Ym9keT4gb3Igb3RoZXIgcmVxdWlyZWQgZWxlbWVudHMuCgl0aGVhZDogWyAxLCAiPHRhYmxlPiIsICI8L3RhYmxlPiIgXSwKCWNvbDogWyAyLCAiPHRhYmxlPjxjb2xncm91cD4iLCAiPC9jb2xncm91cD48L3RhYmxlPiIgXSwKCXRyOiBbIDIsICI8dGFibGU+PHRib2R5PiIsICI8L3Rib2R5PjwvdGFibGU+IiBdLAoJdGQ6IFsgMywgIjx0YWJsZT48dGJvZHk+PHRyPiIsICI8L3RyPjwvdGJvZHk+PC90YWJsZT4iIF0sCgoJX2RlZmF1bHQ6IFsgMCwgIiIsICIiIF0KfTsKCi8vIFN1cHBvcnQ6IElFIDw9OSBvbmx5CndyYXBNYXAub3B0Z3JvdXAgPSB3cmFwTWFwLm9wdGlvbjsKCndyYXBNYXAudGJvZHkgPSB3cmFwTWFwLnRmb290ID0gd3JhcE1hcC5jb2xncm91cCA9IHdyYXBNYXAuY2FwdGlvbiA9IHdyYXBNYXAudGhlYWQ7CndyYXBNYXAudGggPSB3cmFwTWFwLnRkOwoKCmZ1bmN0aW9uIGdldEFsbCggY29udGV4dCwgdGFnICkgewoKCS8vIFN1cHBvcnQ6IElFIDw9OSAtIDExIG9ubHkKCS8vIFVzZSB0eXBlb2YgdG8gYXZvaWQgemVyby1hcmd1bWVudCBtZXRob2QgaW52b2NhdGlvbiBvbiBob3N0IG9iamVjdHMgKCMxNTE1MSkKCXZhciByZXQ7CgoJaWYgKCB0eXBlb2YgY29udGV4dC5nZXRFbGVtZW50c0J5VGFnTmFtZSAhPT0gInVuZGVmaW5lZCIgKSB7CgkJcmV0ID0gY29udGV4dC5nZXRFbGVtZW50c0J5VGFnTmFtZSggdGFnIHx8ICIqIiApOwoKCX0gZWxzZSBpZiAoIHR5cGVvZiBjb250ZXh0LnF1ZXJ5U2VsZWN0b3JBbGwgIT09ICJ1bmRlZmluZWQiICkgewoJCXJldCA9IGNvbnRleHQucXVlcnlTZWxlY3RvckFsbCggdGFnIHx8ICIqIiApOwoKCX0gZWxzZSB7CgkJcmV0ID0gW107Cgl9CgoJaWYgKCB0YWcgPT09IHVuZGVmaW5lZCB8fCB0YWcgJiYgalF1ZXJ5Lm5vZGVOYW1lKCBjb250ZXh0LCB0YWcgKSApIHsKCQlyZXR1cm4galF1ZXJ5Lm1lcmdlKCBbIGNvbnRleHQgXSwgcmV0ICk7Cgl9CgoJcmV0dXJuIHJldDsKfQoKCi8vIE1hcmsgc2NyaXB0cyBhcyBoYXZpbmcgYWxyZWFkeSBiZWVuIGV2YWx1YXRlZApmdW5jdGlvbiBzZXRHbG9iYWxFdmFsKCBlbGVtcywgcmVmRWxlbWVudHMgKSB7Cgl2YXIgaSA9IDAsCgkJbCA9IGVsZW1zLmxlbmd0aDsKCglmb3IgKCA7IGkgPCBsOyBpKysgKSB7CgkJZGF0YVByaXYuc2V0KAoJCQllbGVtc1sgaSBdLAoJCQkiZ2xvYmFsRXZhbCIsCgkJCSFyZWZFbGVtZW50cyB8fCBkYXRhUHJpdi5nZXQoIHJlZkVsZW1lbnRzWyBpIF0sICJnbG9iYWxFdmFsIiApCgkJKTsKCX0KfQoKCnZhciByaHRtbCA9IC88fCYjP1x3KzsvOwoKZnVuY3Rpb24gYnVpbGRGcmFnbWVudCggZWxlbXMsIGNvbnRleHQsIHNjcmlwdHMsIHNlbGVjdGlvbiwgaWdub3JlZCApIHsKCXZhciBlbGVtLCB0bXAsIHRhZywgd3JhcCwgY29udGFpbnMsIGosCgkJZnJhZ21lbnQgPSBjb250ZXh0LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSwKCQlub2RlcyA9IFtdLAoJCWkgPSAwLAoJCWwgPSBlbGVtcy5sZW5ndGg7CgoJZm9yICggOyBpIDwgbDsgaSsrICkgewoJCWVsZW0gPSBlbGVtc1sgaSBdOwoKCQlpZiAoIGVsZW0gfHwgZWxlbSA9PT0gMCApIHsKCgkJCS8vIEFkZCBub2RlcyBkaXJlY3RseQoJCQlpZiAoIGpRdWVyeS50eXBlKCBlbGVtICkgPT09ICJvYmplY3QiICkgewoKCQkJCS8vIFN1cHBvcnQ6IEFuZHJvaWQgPD00LjAgb25seSwgUGhhbnRvbUpTIDEgb25seQoJCQkJLy8gcHVzaC5hcHBseShfLCBhcnJheWxpa2UpIHRocm93cyBvbiBhbmNpZW50IFdlYktpdAoJCQkJalF1ZXJ5Lm1lcmdlKCBub2RlcywgZWxlbS5ub2RlVHlwZSA/IFsgZWxlbSBdIDogZWxlbSApOwoKCQkJLy8gQ29udmVydCBub24taHRtbCBpbnRvIGEgdGV4dCBub2RlCgkJCX0gZWxzZSBpZiAoICFyaHRtbC50ZXN0KCBlbGVtICkgKSB7CgkJCQlub2Rlcy5wdXNoKCBjb250ZXh0LmNyZWF0ZVRleHROb2RlKCBlbGVtICkgKTsKCgkJCS8vIENvbnZlcnQgaHRtbCBpbnRvIERPTSBub2RlcwoJCQl9IGVsc2UgewoJCQkJdG1wID0gdG1wIHx8IGZyYWdtZW50LmFwcGVuZENoaWxkKCBjb250ZXh0LmNyZWF0ZUVsZW1lbnQoICJkaXYiICkgKTsKCgkJCQkvLyBEZXNlcmlhbGl6ZSBhIHN0YW5kYXJkIHJlcHJlc2VudGF0aW9uCgkJCQl0YWcgPSAoIHJ0YWdOYW1lLmV4ZWMoIGVsZW0gKSB8fCBbICIiLCAiIiBdIClbIDEgXS50b0xvd2VyQ2FzZSgpOwoJCQkJd3JhcCA9IHdyYXBNYXBbIHRhZyBdIHx8IHdyYXBNYXAuX2RlZmF1bHQ7CgkJCQl0bXAuaW5uZXJIVE1MID0gd3JhcFsgMSBdICsgalF1ZXJ5Lmh0bWxQcmVmaWx0ZXIoIGVsZW0gKSArIHdyYXBbIDIgXTsKCgkJCQkvLyBEZXNjZW5kIHRocm91Z2ggd3JhcHBlcnMgdG8gdGhlIHJpZ2h0IGNvbnRlbnQKCQkJCWogPSB3cmFwWyAwIF07CgkJCQl3aGlsZSAoIGotLSApIHsKCQkJCQl0bXAgPSB0bXAubGFzdENoaWxkOwoJCQkJfQoKCQkJCS8vIFN1cHBvcnQ6IEFuZHJvaWQgPD00LjAgb25seSwgUGhhbnRvbUpTIDEgb25seQoJCQkJLy8gcHVzaC5hcHBseShfLCBhcnJheWxpa2UpIHRocm93cyBvbiBhbmNpZW50IFdlYktpdAoJCQkJalF1ZXJ5Lm1lcmdlKCBub2RlcywgdG1wLmNoaWxkTm9kZXMgKTsKCgkJCQkvLyBSZW1lbWJlciB0aGUgdG9wLWxldmVsIGNvbnRhaW5lcgoJCQkJdG1wID0gZnJhZ21lbnQuZmlyc3RDaGlsZDsKCgkJCQkvLyBFbnN1cmUgdGhlIGNyZWF0ZWQgbm9kZXMgYXJlIG9ycGhhbmVkICgjMTIzOTIpCgkJCQl0bXAudGV4dENvbnRlbnQgPSAiIjsKCQkJfQoJCX0KCX0KCgkvLyBSZW1vdmUgd3JhcHBlciBmcm9tIGZyYWdtZW50CglmcmFnbWVudC50ZXh0Q29udGVudCA9ICIiOwoKCWkgPSAwOwoJd2hpbGUgKCAoIGVsZW0gPSBub2Rlc1sgaSsrIF0gKSApIHsKCgkJLy8gU2tpcCBlbGVtZW50cyBhbHJlYWR5IGluIHRoZSBjb250ZXh0IGNvbGxlY3Rpb24gKHRyYWMtNDA4NykKCQlpZiAoIHNlbGVjdGlvbiAmJiBqUXVlcnkuaW5BcnJheSggZWxlbSwgc2VsZWN0aW9uICkgPiAtMSApIHsKCQkJaWYgKCBpZ25vcmVkICkgewoJCQkJaWdub3JlZC5wdXNoKCBlbGVtICk7CgkJCX0KCQkJY29udGludWU7CgkJfQoKCQljb250YWlucyA9IGpRdWVyeS5jb250YWlucyggZWxlbS5vd25lckRvY3VtZW50LCBlbGVtICk7CgoJCS8vIEFwcGVuZCB0byBmcmFnbWVudAoJCXRtcCA9IGdldEFsbCggZnJhZ21lbnQuYXBwZW5kQ2hpbGQoIGVsZW0gKSwgInNjcmlwdCIgKTsKCgkJLy8gUHJlc2VydmUgc2NyaXB0IGV2YWx1YXRpb24gaGlzdG9yeQoJCWlmICggY29udGFpbnMgKSB7CgkJCXNldEdsb2JhbEV2YWwoIHRtcCApOwoJCX0KCgkJLy8gQ2FwdHVyZSBleGVjdXRhYmxlcwoJCWlmICggc2NyaXB0cyApIHsKCQkJaiA9IDA7CgkJCXdoaWxlICggKCBlbGVtID0gdG1wWyBqKysgXSApICkgewoJCQkJaWYgKCByc2NyaXB0VHlwZS50ZXN0KCBlbGVtLnR5cGUgfHwgIiIgKSApIHsKCQkJCQlzY3JpcHRzLnB1c2goIGVsZW0gKTsKCQkJCX0KCQkJfQoJCX0KCX0KCglyZXR1cm4gZnJhZ21lbnQ7Cn0KCgooIGZ1bmN0aW9uKCkgewoJdmFyIGZyYWdtZW50ID0gZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpLAoJCWRpdiA9IGZyYWdtZW50LmFwcGVuZENoaWxkKCBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCAiZGl2IiApICksCgkJaW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCAiaW5wdXQiICk7CgoJLy8gU3VwcG9ydDogQW5kcm9pZCA0LjAgLSA0LjMgb25seQoJLy8gQ2hlY2sgc3RhdGUgbG9zdCBpZiB0aGUgbmFtZSBpcyBzZXQgKCMxMTIxNykKCS8vIFN1cHBvcnQ6IFdpbmRvd3MgV2ViIEFwcHMgKFdXQSkKCS8vIGBuYW1lYCBhbmQgYHR5cGVgIG11c3QgdXNlIC5zZXRBdHRyaWJ1dGUgZm9yIFdXQSAoIzE0OTAxKQoJaW5wdXQuc2V0QXR0cmlidXRlKCAidHlwZSIsICJyYWRpbyIgKTsKCWlucHV0LnNldEF0dHJpYnV0ZSggImNoZWNrZWQiLCAiY2hlY2tlZCIgKTsKCWlucHV0LnNldEF0dHJpYnV0ZSggIm5hbWUiLCAidCIgKTsKCglkaXYuYXBwZW5kQ2hpbGQoIGlucHV0ICk7CgoJLy8gU3VwcG9ydDogQW5kcm9pZCA8PTQuMSBvbmx5CgkvLyBPbGRlciBXZWJLaXQgZG9lc24ndCBjbG9uZSBjaGVja2VkIHN0YXRlIGNvcnJlY3RseSBpbiBmcmFnbWVudHMKCXN1cHBvcnQuY2hlY2tDbG9uZSA9IGRpdi5jbG9uZU5vZGUoIHRydWUgKS5jbG9uZU5vZGUoIHRydWUgKS5sYXN0Q2hpbGQuY2hlY2tlZDsKCgkvLyBTdXBwb3J0OiBJRSA8PTExIG9ubHkKCS8vIE1ha2Ugc3VyZSB0ZXh0YXJlYSAoYW5kIGNoZWNrYm94KSBkZWZhdWx0VmFsdWUgaXMgcHJvcGVybHkgY2xvbmVkCglkaXYuaW5uZXJIVE1MID0gIjx0ZXh0YXJlYT54PC90ZXh0YXJlYT4iOwoJc3VwcG9ydC5ub0Nsb25lQ2hlY2tlZCA9ICEhZGl2LmNsb25lTm9kZSggdHJ1ZSApLmxhc3RDaGlsZC5kZWZhdWx0VmFsdWU7Cn0gKSgpOwp2YXIgZG9jdW1lbnRFbGVtZW50ID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50OwoKCgp2YXIKCXJrZXlFdmVudCA9IC9ea2V5LywKCXJtb3VzZUV2ZW50ID0gL14oPzptb3VzZXxwb2ludGVyfGNvbnRleHRtZW51fGRyYWd8ZHJvcCl8Y2xpY2svLAoJcnR5cGVuYW1lc3BhY2UgPSAvXihbXi5dKikoPzpcLiguKyl8KS87CgpmdW5jdGlvbiByZXR1cm5UcnVlKCkgewoJcmV0dXJuIHRydWU7Cn0KCmZ1bmN0aW9uIHJldHVybkZhbHNlKCkgewoJcmV0dXJuIGZhbHNlOwp9CgovLyBTdXBwb3J0OiBJRSA8PTkgb25seQovLyBTZWUgIzEzMzkzIGZvciBtb3JlIGluZm8KZnVuY3Rpb24gc2FmZUFjdGl2ZUVsZW1lbnQoKSB7Cgl0cnkgewoJCXJldHVybiBkb2N1bWVudC5hY3RpdmVFbGVtZW50OwoJfSBjYXRjaCAoIGVyciApIHsgfQp9CgpmdW5jdGlvbiBvbiggZWxlbSwgdHlwZXMsIHNlbGVjdG9yLCBkYXRhLCBmbiwgb25lICkgewoJdmFyIG9yaWdGbiwgdHlwZTsKCgkvLyBUeXBlcyBjYW4gYmUgYSBtYXAgb2YgdHlwZXMvaGFuZGxlcnMKCWlmICggdHlwZW9mIHR5cGVzID09PSAib2JqZWN0IiApIHsKCgkJLy8gKCB0eXBlcy1PYmplY3QsIHNlbGVjdG9yLCBkYXRhICkKCQlpZiAoIHR5cGVvZiBzZWxlY3RvciAhPT0gInN0cmluZyIgKSB7CgoJCQkvLyAoIHR5cGVzLU9iamVjdCwgZGF0YSApCgkJCWRhdGEgPSBkYXRhIHx8IHNlbGVjdG9yOwoJCQlzZWxlY3RvciA9IHVuZGVmaW5lZDsKCQl9CgkJZm9yICggdHlwZSBpbiB0eXBlcyApIHsKCQkJb24oIGVsZW0sIHR5cGUsIHNlbGVjdG9yLCBkYXRhLCB0eXBlc1sgdHlwZSBdLCBvbmUgKTsKCQl9CgkJcmV0dXJuIGVsZW07Cgl9CgoJaWYgKCBkYXRhID09IG51bGwgJiYgZm4gPT0gbnVsbCApIHsKCgkJLy8gKCB0eXBlcywgZm4gKQoJCWZuID0gc2VsZWN0b3I7CgkJZGF0YSA9IHNlbGVjdG9yID0gdW5kZWZpbmVkOwoJfSBlbHNlIGlmICggZm4gPT0gbnVsbCApIHsKCQlpZiAoIHR5cGVvZiBzZWxlY3RvciA9PT0gInN0cmluZyIgKSB7CgoJCQkvLyAoIHR5cGVzLCBzZWxlY3RvciwgZm4gKQoJCQlmbiA9IGRhdGE7CgkJCWRhdGEgPSB1bmRlZmluZWQ7CgkJfSBlbHNlIHsKCgkJCS8vICggdHlwZXMsIGRhdGEsIGZuICkKCQkJZm4gPSBkYXRhOwoJCQlkYXRhID0gc2VsZWN0b3I7CgkJCXNlbGVjdG9yID0gdW5kZWZpbmVkOwoJCX0KCX0KCWlmICggZm4gPT09IGZhbHNlICkgewoJCWZuID0gcmV0dXJuRmFsc2U7Cgl9IGVsc2UgaWYgKCAhZm4gKSB7CgkJcmV0dXJuIGVsZW07Cgl9CgoJaWYgKCBvbmUgPT09IDEgKSB7CgkJb3JpZ0ZuID0gZm47CgkJZm4gPSBmdW5jdGlvbiggZXZlbnQgKSB7CgoJCQkvLyBDYW4gdXNlIGFuIGVtcHR5IHNldCwgc2luY2UgZXZlbnQgY29udGFpbnMgdGhlIGluZm8KCQkJalF1ZXJ5KCkub2ZmKCBldmVudCApOwoJCQlyZXR1cm4gb3JpZ0ZuLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKTsKCQl9OwoKCQkvLyBVc2Ugc2FtZSBndWlkIHNvIGNhbGxlciBjYW4gcmVtb3ZlIHVzaW5nIG9yaWdGbgoJCWZuLmd1aWQgPSBvcmlnRm4uZ3VpZCB8fCAoIG9yaWdGbi5ndWlkID0galF1ZXJ5Lmd1aWQrKyApOwoJfQoJcmV0dXJuIGVsZW0uZWFjaCggZnVuY3Rpb24oKSB7CgkJalF1ZXJ5LmV2ZW50LmFkZCggdGhpcywgdHlwZXMsIGZuLCBkYXRhLCBzZWxlY3RvciApOwoJfSApOwp9CgovKgogKiBIZWxwZXIgZnVuY3Rpb25zIGZvciBtYW5hZ2luZyBldmVudHMgLS0gbm90IHBhcnQgb2YgdGhlIHB1YmxpYyBpbnRlcmZhY2UuCiAqIFByb3BzIHRvIERlYW4gRWR3YXJkcycgYWRkRXZlbnQgbGlicmFyeSBmb3IgbWFueSBvZiB0aGUgaWRlYXMuCiAqLwpqUXVlcnkuZXZlbnQgPSB7CgoJZ2xvYmFsOiB7fSwKCglhZGQ6IGZ1bmN0aW9uKCBlbGVtLCB0eXBlcywgaGFuZGxlciwgZGF0YSwgc2VsZWN0b3IgKSB7CgoJCXZhciBoYW5kbGVPYmpJbiwgZXZlbnRIYW5kbGUsIHRtcCwKCQkJZXZlbnRzLCB0LCBoYW5kbGVPYmosCgkJCXNwZWNpYWwsIGhhbmRsZXJzLCB0eXBlLCBuYW1lc3BhY2VzLCBvcmlnVHlwZSwKCQkJZWxlbURhdGEgPSBkYXRhUHJpdi5nZXQoIGVsZW0gKTsKCgkJLy8gRG9uJ3QgYXR0YWNoIGV2ZW50cyB0byBub0RhdGEgb3IgdGV4dC9jb21tZW50IG5vZGVzIChidXQgYWxsb3cgcGxhaW4gb2JqZWN0cykKCQlpZiAoICFlbGVtRGF0YSApIHsKCQkJcmV0dXJuOwoJCX0KCgkJLy8gQ2FsbGVyIGNhbiBwYXNzIGluIGFuIG9iamVjdCBvZiBjdXN0b20gZGF0YSBpbiBsaWV1IG9mIHRoZSBoYW5kbGVyCgkJaWYgKCBoYW5kbGVyLmhhbmRsZXIgKSB7CgkJCWhhbmRsZU9iakluID0gaGFuZGxlcjsKCQkJaGFuZGxlciA9IGhhbmRsZU9iakluLmhhbmRsZXI7CgkJCXNlbGVjdG9yID0gaGFuZGxlT2JqSW4uc2VsZWN0b3I7CgkJfQoKCQkvLyBFbnN1cmUgdGhhdCBpbnZhbGlkIHNlbGVjdG9ycyB0aHJvdyBleGNlcHRpb25zIGF0IGF0dGFjaCB0aW1lCgkJLy8gRXZhbHVhdGUgYWdhaW5zdCBkb2N1bWVudEVsZW1lbnQgaW4gY2FzZSBlbGVtIGlzIGEgbm9uLWVsZW1lbnQgbm9kZSAoZS5nLiwgZG9jdW1lbnQpCgkJaWYgKCBzZWxlY3RvciApIHsKCQkJalF1ZXJ5LmZpbmQubWF0Y2hlc1NlbGVjdG9yKCBkb2N1bWVudEVsZW1lbnQsIHNlbGVjdG9yICk7CgkJfQoKCQkvLyBNYWtlIHN1cmUgdGhhdCB0aGUgaGFuZGxlciBoYXMgYSB1bmlxdWUgSUQsIHVzZWQgdG8gZmluZC9yZW1vdmUgaXQgbGF0ZXIKCQlpZiAoICFoYW5kbGVyLmd1aWQgKSB7CgkJCWhhbmRsZXIuZ3VpZCA9IGpRdWVyeS5ndWlkKys7CgkJfQoKCQkvLyBJbml0IHRoZSBlbGVtZW50J3MgZXZlbnQgc3RydWN0dXJlIGFuZCBtYWluIGhhbmRsZXIsIGlmIHRoaXMgaXMgdGhlIGZpcnN0CgkJaWYgKCAhKCBldmVudHMgPSBlbGVtRGF0YS5ldmVudHMgKSApIHsKCQkJZXZlbnRzID0gZWxlbURhdGEuZXZlbnRzID0ge307CgkJfQoJCWlmICggISggZXZlbnRIYW5kbGUgPSBlbGVtRGF0YS5oYW5kbGUgKSApIHsKCQkJZXZlbnRIYW5kbGUgPSBlbGVtRGF0YS5oYW5kbGUgPSBmdW5jdGlvbiggZSApIHsKCgkJCQkvLyBEaXNjYXJkIHRoZSBzZWNvbmQgZXZlbnQgb2YgYSBqUXVlcnkuZXZlbnQudHJpZ2dlcigpIGFuZAoJCQkJLy8gd2hlbiBhbiBldmVudCBpcyBjYWxsZWQgYWZ0ZXIgYSBwYWdlIGhhcyB1bmxvYWRlZAoJCQkJcmV0dXJuIHR5cGVvZiBqUXVlcnkgIT09ICJ1bmRlZmluZWQiICYmIGpRdWVyeS5ldmVudC50cmlnZ2VyZWQgIT09IGUudHlwZSA/CgkJCQkJalF1ZXJ5LmV2ZW50LmRpc3BhdGNoLmFwcGx5KCBlbGVtLCBhcmd1bWVudHMgKSA6IHVuZGVmaW5lZDsKCQkJfTsKCQl9CgoJCS8vIEhhbmRsZSBtdWx0aXBsZSBldmVudHMgc2VwYXJhdGVkIGJ5IGEgc3BhY2UKCQl0eXBlcyA9ICggdHlwZXMgfHwgIiIgKS5tYXRjaCggcm5vdGh0bWx3aGl0ZSApIHx8IFsgIiIgXTsKCQl0ID0gdHlwZXMubGVuZ3RoOwoJCXdoaWxlICggdC0tICkgewoJCQl0bXAgPSBydHlwZW5hbWVzcGFjZS5leGVjKCB0eXBlc1sgdCBdICkgfHwgW107CgkJCXR5cGUgPSBvcmlnVHlwZSA9IHRtcFsgMSBdOwoJCQluYW1lc3BhY2VzID0gKCB0bXBbIDIgXSB8fCAiIiApLnNwbGl0KCAiLiIgKS5zb3J0KCk7CgoJCQkvLyBUaGVyZSAqbXVzdCogYmUgYSB0eXBlLCBubyBhdHRhY2hpbmcgbmFtZXNwYWNlLW9ubHkgaGFuZGxlcnMKCQkJaWYgKCAhdHlwZSApIHsKCQkJCWNvbnRpbnVlOwoJCQl9CgoJCQkvLyBJZiBldmVudCBjaGFuZ2VzIGl0cyB0eXBlLCB1c2UgdGhlIHNwZWNpYWwgZXZlbnQgaGFuZGxlcnMgZm9yIHRoZSBjaGFuZ2VkIHR5cGUKCQkJc3BlY2lhbCA9IGpRdWVyeS5ldmVudC5zcGVjaWFsWyB0eXBlIF0gfHwge307CgoJCQkvLyBJZiBzZWxlY3RvciBkZWZpbmVkLCBkZXRlcm1pbmUgc3BlY2lhbCBldmVudCBhcGkgdHlwZSwgb3RoZXJ3aXNlIGdpdmVuIHR5cGUKCQkJdHlwZSA9ICggc2VsZWN0b3IgPyBzcGVjaWFsLmRlbGVnYXRlVHlwZSA6IHNwZWNpYWwuYmluZFR5cGUgKSB8fCB0eXBlOwoKCQkJLy8gVXBkYXRlIHNwZWNpYWwgYmFzZWQgb24gbmV3bHkgcmVzZXQgdHlwZQoJCQlzcGVjaWFsID0galF1ZXJ5LmV2ZW50LnNwZWNpYWxbIHR5cGUgXSB8fCB7fTsKCgkJCS8vIGhhbmRsZU9iaiBpcyBwYXNzZWQgdG8gYWxsIGV2ZW50IGhhbmRsZXJzCgkJCWhhbmRsZU9iaiA9IGpRdWVyeS5leHRlbmQoIHsKCQkJCXR5cGU6IHR5cGUsCgkJCQlvcmlnVHlwZTogb3JpZ1R5cGUsCgkJCQlkYXRhOiBkYXRhLAoJCQkJaGFuZGxlcjogaGFuZGxlciwKCQkJCWd1aWQ6IGhhbmRsZXIuZ3VpZCwKCQkJCXNlbGVjdG9yOiBzZWxlY3RvciwKCQkJCW5lZWRzQ29udGV4dDogc2VsZWN0b3IgJiYgalF1ZXJ5LmV4cHIubWF0Y2gubmVlZHNDb250ZXh0LnRlc3QoIHNlbGVjdG9yICksCgkJCQluYW1lc3BhY2U6IG5hbWVzcGFjZXMuam9pbiggIi4iICkKCQkJfSwgaGFuZGxlT2JqSW4gKTsKCgkJCS8vIEluaXQgdGhlIGV2ZW50IGhhbmRsZXIgcXVldWUgaWYgd2UncmUgdGhlIGZpcnN0CgkJCWlmICggISggaGFuZGxlcnMgPSBldmVudHNbIHR5cGUgXSApICkgewoJCQkJaGFuZGxlcnMgPSBldmVudHNbIHR5cGUgXSA9IFtdOwoJCQkJaGFuZGxlcnMuZGVsZWdhdGVDb3VudCA9IDA7CgoJCQkJLy8gT25seSB1c2UgYWRkRXZlbnRMaXN0ZW5lciBpZiB0aGUgc3BlY2lhbCBldmVudHMgaGFuZGxlciByZXR1cm5zIGZhbHNlCgkJCQlpZiAoICFzcGVjaWFsLnNldHVwIHx8CgkJCQkJc3BlY2lhbC5zZXR1cC5jYWxsKCBlbGVtLCBkYXRhLCBuYW1lc3BhY2VzLCBldmVudEhhbmRsZSApID09PSBmYWxzZSApIHsKCgkJCQkJaWYgKCBlbGVtLmFkZEV2ZW50TGlzdGVuZXIgKSB7CgkJCQkJCWVsZW0uYWRkRXZlbnRMaXN0ZW5lciggdHlwZSwgZXZlbnRIYW5kbGUgKTsKCQkJCQl9CgkJCQl9CgkJCX0KCgkJCWlmICggc3BlY2lhbC5hZGQgKSB7CgkJCQlzcGVjaWFsLmFkZC5jYWxsKCBlbGVtLCBoYW5kbGVPYmogKTsKCgkJCQlpZiAoICFoYW5kbGVPYmouaGFuZGxlci5ndWlkICkgewoJCQkJCWhhbmRsZU9iai5oYW5kbGVyLmd1aWQgPSBoYW5kbGVyLmd1aWQ7CgkJCQl9CgkJCX0KCgkJCS8vIEFkZCB0byB0aGUgZWxlbWVudCdzIGhhbmRsZXIgbGlzdCwgZGVsZWdhdGVzIGluIGZyb250CgkJCWlmICggc2VsZWN0b3IgKSB7CgkJCQloYW5kbGVycy5zcGxpY2UoIGhhbmRsZXJzLmRlbGVnYXRlQ291bnQrKywgMCwgaGFuZGxlT2JqICk7CgkJCX0gZWxzZSB7CgkJCQloYW5kbGVycy5wdXNoKCBoYW5kbGVPYmogKTsKCQkJfQoKCQkJLy8gS2VlcCB0cmFjayBvZiB3aGljaCBldmVudHMgaGF2ZSBldmVyIGJlZW4gdXNlZCwgZm9yIGV2ZW50IG9wdGltaXphdGlvbgoJCQlqUXVlcnkuZXZlbnQuZ2xvYmFsWyB0eXBlIF0gPSB0cnVlOwoJCX0KCgl9LAoKCS8vIERldGFjaCBhbiBldmVudCBvciBzZXQgb2YgZXZlbnRzIGZyb20gYW4gZWxlbWVudAoJcmVtb3ZlOiBmdW5jdGlvbiggZWxlbSwgdHlwZXMsIGhhbmRsZXIsIHNlbGVjdG9yLCBtYXBwZWRUeXBlcyApIHsKCgkJdmFyIGosIG9yaWdDb3VudCwgdG1wLAoJCQlldmVudHMsIHQsIGhhbmRsZU9iaiwKCQkJc3BlY2lhbCwgaGFuZGxlcnMsIHR5cGUsIG5hbWVzcGFjZXMsIG9yaWdUeXBlLAoJCQllbGVtRGF0YSA9IGRhdGFQcml2Lmhhc0RhdGEoIGVsZW0gKSAmJiBkYXRhUHJpdi5nZXQoIGVsZW0gKTsKCgkJaWYgKCAhZWxlbURhdGEgfHwgISggZXZlbnRzID0gZWxlbURhdGEuZXZlbnRzICkgKSB7CgkJCXJldHVybjsKCQl9CgoJCS8vIE9uY2UgZm9yIGVhY2ggdHlwZS5uYW1lc3BhY2UgaW4gdHlwZXM7IHR5cGUgbWF5IGJlIG9taXR0ZWQKCQl0eXBlcyA9ICggdHlwZXMgfHwgIiIgKS5tYXRjaCggcm5vdGh0bWx3aGl0ZSApIHx8IFsgIiIgXTsKCQl0ID0gdHlwZXMubGVuZ3RoOwoJCXdoaWxlICggdC0tICkgewoJCQl0bXAgPSBydHlwZW5hbWVzcGFjZS5leGVjKCB0eXBlc1sgdCBdICkgfHwgW107CgkJCXR5cGUgPSBvcmlnVHlwZSA9IHRtcFsgMSBdOwoJCQluYW1lc3BhY2VzID0gKCB0bXBbIDIgXSB8fCAiIiApLnNwbGl0KCAiLiIgKS5zb3J0KCk7CgoJCQkvLyBVbmJpbmQgYWxsIGV2ZW50cyAob24gdGhpcyBuYW1lc3BhY2UsIGlmIHByb3ZpZGVkKSBmb3IgdGhlIGVsZW1lbnQKCQkJaWYgKCAhdHlwZSApIHsKCQkJCWZvciAoIHR5cGUgaW4gZXZlbnRzICkgewoJCQkJCWpRdWVyeS5ldmVudC5yZW1vdmUoIGVsZW0sIHR5cGUgKyB0eXBlc1sgdCBdLCBoYW5kbGVyLCBzZWxlY3RvciwgdHJ1ZSApOwoJCQkJfQoJCQkJY29udGludWU7CgkJCX0KCgkJCXNwZWNpYWwgPSBqUXVlcnkuZXZlbnQuc3BlY2lhbFsgdHlwZSBdIHx8IHt9OwoJCQl0eXBlID0gKCBzZWxlY3RvciA/IHNwZWNpYWwuZGVsZWdhdGVUeXBlIDogc3BlY2lhbC5iaW5kVHlwZSApIHx8IHR5cGU7CgkJCWhhbmRsZXJzID0gZXZlbnRzWyB0eXBlIF0gfHwgW107CgkJCXRtcCA9IHRtcFsgMiBdICYmCgkJCQluZXcgUmVnRXhwKCAiKF58XFwuKSIgKyBuYW1lc3BhY2VzLmpvaW4oICJcXC4oPzouKlxcLnwpIiApICsgIihcXC58JCkiICk7CgoJCQkvLyBSZW1vdmUgbWF0Y2hpbmcgZXZlbnRzCgkJCW9yaWdDb3VudCA9IGogPSBoYW5kbGVycy5sZW5ndGg7CgkJCXdoaWxlICggai0tICkgewoJCQkJaGFuZGxlT2JqID0gaGFuZGxlcnNbIGogXTsKCgkJCQlpZiAoICggbWFwcGVkVHlwZXMgfHwgb3JpZ1R5cGUgPT09IGhhbmRsZU9iai5vcmlnVHlwZSApICYmCgkJCQkJKCAhaGFuZGxlciB8fCBoYW5kbGVyLmd1aWQgPT09IGhhbmRsZU9iai5ndWlkICkgJiYKCQkJCQkoICF0bXAgfHwgdG1wLnRlc3QoIGhhbmRsZU9iai5uYW1lc3BhY2UgKSApICYmCgkJCQkJKCAhc2VsZWN0b3IgfHwgc2VsZWN0b3IgPT09IGhhbmRsZU9iai5zZWxlY3RvciB8fAoJCQkJCQlzZWxlY3RvciA9PT0gIioqIiAmJiBoYW5kbGVPYmouc2VsZWN0b3IgKSApIHsKCQkJCQloYW5kbGVycy5zcGxpY2UoIGosIDEgKTsKCgkJCQkJaWYgKCBoYW5kbGVPYmouc2VsZWN0b3IgKSB7CgkJCQkJCWhhbmRsZXJzLmRlbGVnYXRlQ291bnQtLTsKCQkJCQl9CgkJCQkJaWYgKCBzcGVjaWFsLnJlbW92ZSApIHsKCQkJCQkJc3BlY2lhbC5yZW1vdmUuY2FsbCggZWxlbSwgaGFuZGxlT2JqICk7CgkJCQkJfQoJCQkJfQoJCQl9CgoJCQkvLyBSZW1vdmUgZ2VuZXJpYyBldmVudCBoYW5kbGVyIGlmIHdlIHJlbW92ZWQgc29tZXRoaW5nIGFuZCBubyBtb3JlIGhhbmRsZXJzIGV4aXN0CgkJCS8vIChhdm9pZHMgcG90ZW50aWFsIGZvciBlbmRsZXNzIHJlY3Vyc2lvbiBkdXJpbmcgcmVtb3ZhbCBvZiBzcGVjaWFsIGV2ZW50IGhhbmRsZXJzKQoJCQlpZiAoIG9yaWdDb3VudCAmJiAhaGFuZGxlcnMubGVuZ3RoICkgewoJCQkJaWYgKCAhc3BlY2lhbC50ZWFyZG93biB8fAoJCQkJCXNwZWNpYWwudGVhcmRvd24uY2FsbCggZWxlbSwgbmFtZXNwYWNlcywgZWxlbURhdGEuaGFuZGxlICkgPT09IGZhbHNlICkgewoKCQkJCQlqUXVlcnkucmVtb3ZlRXZlbnQoIGVsZW0sIHR5cGUsIGVsZW1EYXRhLmhhbmRsZSApOwoJCQkJfQoKCQkJCWRlbGV0ZSBldmVudHNbIHR5cGUgXTsKCQkJfQoJCX0KCgkJLy8gUmVtb3ZlIGRhdGEgYW5kIHRoZSBleHBhbmRvIGlmIGl0J3Mgbm8gbG9uZ2VyIHVzZWQKCQlpZiAoIGpRdWVyeS5pc0VtcHR5T2JqZWN0KCBldmVudHMgKSApIHsKCQkJZGF0YVByaXYucmVtb3ZlKCBlbGVtLCAiaGFuZGxlIGV2ZW50cyIgKTsKCQl9Cgl9LAoKCWRpc3BhdGNoOiBmdW5jdGlvbiggbmF0aXZlRXZlbnQgKSB7CgoJCS8vIE1ha2UgYSB3cml0YWJsZSBqUXVlcnkuRXZlbnQgZnJvbSB0aGUgbmF0aXZlIGV2ZW50IG9iamVjdAoJCXZhciBldmVudCA9IGpRdWVyeS5ldmVudC5maXgoIG5hdGl2ZUV2ZW50ICk7CgoJCXZhciBpLCBqLCByZXQsIG1hdGNoZWQsIGhhbmRsZU9iaiwgaGFuZGxlclF1ZXVlLAoJCQlhcmdzID0gbmV3IEFycmF5KCBhcmd1bWVudHMubGVuZ3RoICksCgkJCWhhbmRsZXJzID0gKCBkYXRhUHJpdi5nZXQoIHRoaXMsICJldmVudHMiICkgfHwge30gKVsgZXZlbnQudHlwZSBdIHx8IFtdLAoJCQlzcGVjaWFsID0galF1ZXJ5LmV2ZW50LnNwZWNpYWxbIGV2ZW50LnR5cGUgXSB8fCB7fTsKCgkJLy8gVXNlIHRoZSBmaXgtZWQgalF1ZXJ5LkV2ZW50IHJhdGhlciB0aGFuIHRoZSAocmVhZC1vbmx5KSBuYXRpdmUgZXZlbnQKCQlhcmdzWyAwIF0gPSBldmVudDsKCgkJZm9yICggaSA9IDE7IGkgPCBhcmd1bWVudHMubGVuZ3RoOyBpKysgKSB7CgkJCWFyZ3NbIGkgXSA9IGFyZ3VtZW50c1sgaSBdOwoJCX0KCgkJZXZlbnQuZGVsZWdhdGVUYXJnZXQgPSB0aGlzOwoKCQkvLyBDYWxsIHRoZSBwcmVEaXNwYXRjaCBob29rIGZvciB0aGUgbWFwcGVkIHR5cGUsIGFuZCBsZXQgaXQgYmFpbCBpZiBkZXNpcmVkCgkJaWYgKCBzcGVjaWFsLnByZURpc3BhdGNoICYmIHNwZWNpYWwucHJlRGlzcGF0Y2guY2FsbCggdGhpcywgZXZlbnQgKSA9PT0gZmFsc2UgKSB7CgkJCXJldHVybjsKCQl9CgoJCS8vIERldGVybWluZSBoYW5kbGVycwoJCWhhbmRsZXJRdWV1ZSA9IGpRdWVyeS5ldmVudC5oYW5kbGVycy5jYWxsKCB0aGlzLCBldmVudCwgaGFuZGxlcnMgKTsKCgkJLy8gUnVuIGRlbGVnYXRlcyBmaXJzdDsgdGhleSBtYXkgd2FudCB0byBzdG9wIHByb3BhZ2F0aW9uIGJlbmVhdGggdXMKCQlpID0gMDsKCQl3aGlsZSAoICggbWF0Y2hlZCA9IGhhbmRsZXJRdWV1ZVsgaSsrIF0gKSAmJiAhZXZlbnQuaXNQcm9wYWdhdGlvblN0b3BwZWQoKSApIHsKCQkJZXZlbnQuY3VycmVudFRhcmdldCA9IG1hdGNoZWQuZWxlbTsKCgkJCWogPSAwOwoJCQl3aGlsZSAoICggaGFuZGxlT2JqID0gbWF0Y2hlZC5oYW5kbGVyc1sgaisrIF0gKSAmJgoJCQkJIWV2ZW50LmlzSW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkKCkgKSB7CgoJCQkJLy8gVHJpZ2dlcmVkIGV2ZW50IG11c3QgZWl0aGVyIDEpIGhhdmUgbm8gbmFtZXNwYWNlLCBvciAyKSBoYXZlIG5hbWVzcGFjZShzKQoJCQkJLy8gYSBzdWJzZXQgb3IgZXF1YWwgdG8gdGhvc2UgaW4gdGhlIGJvdW5kIGV2ZW50IChib3RoIGNhbiBoYXZlIG5vIG5hbWVzcGFjZSkuCgkJCQlpZiAoICFldmVudC5ybmFtZXNwYWNlIHx8IGV2ZW50LnJuYW1lc3BhY2UudGVzdCggaGFuZGxlT2JqLm5hbWVzcGFjZSApICkgewoKCQkJCQlldmVudC5oYW5kbGVPYmogPSBoYW5kbGVPYmo7CgkJCQkJZXZlbnQuZGF0YSA9IGhhbmRsZU9iai5kYXRhOwoKCQkJCQlyZXQgPSAoICggalF1ZXJ5LmV2ZW50LnNwZWNpYWxbIGhhbmRsZU9iai5vcmlnVHlwZSBdIHx8IHt9ICkuaGFuZGxlIHx8CgkJCQkJCWhhbmRsZU9iai5oYW5kbGVyICkuYXBwbHkoIG1hdGNoZWQuZWxlbSwgYXJncyApOwoKCQkJCQlpZiAoIHJldCAhPT0gdW5kZWZpbmVkICkgewoJCQkJCQlpZiAoICggZXZlbnQucmVzdWx0ID0gcmV0ICkgPT09IGZhbHNlICkgewoJCQkJCQkJZXZlbnQucHJldmVudERlZmF1bHQoKTsKCQkJCQkJCWV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOwoJCQkJCQl9CgkJCQkJfQoJCQkJfQoJCQl9CgkJfQoKCQkvLyBDYWxsIHRoZSBwb3N0RGlzcGF0Y2ggaG9vayBmb3IgdGhlIG1hcHBlZCB0eXBlCgkJaWYgKCBzcGVjaWFsLnBvc3REaXNwYXRjaCApIHsKCQkJc3BlY2lhbC5wb3N0RGlzcGF0Y2guY2FsbCggdGhpcywgZXZlbnQgKTsKCQl9CgoJCXJldHVybiBldmVudC5yZXN1bHQ7Cgl9LAoKCWhhbmRsZXJzOiBmdW5jdGlvbiggZXZlbnQsIGhhbmRsZXJzICkgewoJCXZhciBpLCBoYW5kbGVPYmosIHNlbCwgbWF0Y2hlZEhhbmRsZXJzLCBtYXRjaGVkU2VsZWN0b3JzLAoJCQloYW5kbGVyUXVldWUgPSBbXSwKCQkJZGVsZWdhdGVDb3VudCA9IGhhbmRsZXJzLmRlbGVnYXRlQ291bnQsCgkJCWN1ciA9IGV2ZW50LnRhcmdldDsKCgkJLy8gRmluZCBkZWxlZ2F0ZSBoYW5kbGVycwoJCWlmICggZGVsZWdhdGVDb3VudCAmJgoKCQkJLy8gU3VwcG9ydDogSUUgPD05CgkJCS8vIEJsYWNrLWhvbGUgU1ZHIDx1c2U+IGluc3RhbmNlIHRyZWVzICh0cmFjLTEzMTgwKQoJCQljdXIubm9kZVR5cGUgJiYKCgkJCS8vIFN1cHBvcnQ6IEZpcmVmb3ggPD00MgoJCQkvLyBTdXBwcmVzcyBzcGVjLXZpb2xhdGluZyBjbGlja3MgaW5kaWNhdGluZyBhIG5vbi1wcmltYXJ5IHBvaW50ZXIgYnV0dG9uICh0cmFjLTM4NjEpCgkJCS8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9ET00tTGV2ZWwtMy1FdmVudHMvI2V2ZW50LXR5cGUtY2xpY2sKCQkJLy8gU3VwcG9ydDogSUUgMTEgb25seQoJCQkvLyAuLi5idXQgbm90IGFycm93IGtleSAiY2xpY2tzIiBvZiByYWRpbyBpbnB1dHMsIHdoaWNoIGNhbiBoYXZlIGBidXR0b25gIC0xIChnaC0yMzQzKQoJCQkhKCBldmVudC50eXBlID09PSAiY2xpY2siICYmIGV2ZW50LmJ1dHRvbiA+PSAxICkgKSB7CgoJCQlmb3IgKCA7IGN1ciAhPT0gdGhpczsgY3VyID0gY3VyLnBhcmVudE5vZGUgfHwgdGhpcyApIHsKCgkJCQkvLyBEb24ndCBjaGVjayBub24tZWxlbWVudHMgKCMxMzIwOCkKCQkJCS8vIERvbid0IHByb2Nlc3MgY2xpY2tzIG9uIGRpc2FibGVkIGVsZW1lbnRzICgjNjkxMSwgIzgxNjUsICMxMTM4MiwgIzExNzY0KQoJCQkJaWYgKCBjdXIubm9kZVR5cGUgPT09IDEgJiYgISggZXZlbnQudHlwZSA9PT0gImNsaWNrIiAmJiBjdXIuZGlzYWJsZWQgPT09IHRydWUgKSApIHsKCQkJCQltYXRjaGVkSGFuZGxlcnMgPSBbXTsKCQkJCQltYXRjaGVkU2VsZWN0b3JzID0ge307CgkJCQkJZm9yICggaSA9IDA7IGkgPCBkZWxlZ2F0ZUNvdW50OyBpKysgKSB7CgkJCQkJCWhhbmRsZU9iaiA9IGhhbmRsZXJzWyBpIF07CgoJCQkJCQkvLyBEb24ndCBjb25mbGljdCB3aXRoIE9iamVjdC5wcm90b3R5cGUgcHJvcGVydGllcyAoIzEzMjAzKQoJCQkJCQlzZWwgPSBoYW5kbGVPYmouc2VsZWN0b3IgKyAiICI7CgoJCQkJCQlpZiAoIG1hdGNoZWRTZWxlY3RvcnNbIHNlbCBdID09PSB1bmRlZmluZWQgKSB7CgkJCQkJCQltYXRjaGVkU2VsZWN0b3JzWyBzZWwgXSA9IGhhbmRsZU9iai5uZWVkc0NvbnRleHQgPwoJCQkJCQkJCWpRdWVyeSggc2VsLCB0aGlzICkuaW5kZXgoIGN1ciApID4gLTEgOgoJCQkJCQkJCWpRdWVyeS5maW5kKCBzZWwsIHRoaXMsIG51bGwsIFsgY3VyIF0gKS5sZW5ndGg7CgkJCQkJCX0KCQkJCQkJaWYgKCBtYXRjaGVkU2VsZWN0b3JzWyBzZWwgXSApIHsKCQkJCQkJCW1hdGNoZWRIYW5kbGVycy5wdXNoKCBoYW5kbGVPYmogKTsKCQkJCQkJfQoJCQkJCX0KCQkJCQlpZiAoIG1hdGNoZWRIYW5kbGVycy5sZW5ndGggKSB7CgkJCQkJCWhhbmRsZXJRdWV1ZS5wdXNoKCB7IGVsZW06IGN1ciwgaGFuZGxlcnM6IG1hdGNoZWRIYW5kbGVycyB9ICk7CgkJCQkJfQoJCQkJfQoJCQl9CgkJfQoKCQkvLyBBZGQgdGhlIHJlbWFpbmluZyAoZGlyZWN0bHktYm91bmQpIGhhbmRsZXJzCgkJY3VyID0gdGhpczsKCQlpZiAoIGRlbGVnYXRlQ291bnQgPCBoYW5kbGVycy5sZW5ndGggKSB7CgkJCWhhbmRsZXJRdWV1ZS5wdXNoKCB7IGVsZW06IGN1ciwgaGFuZGxlcnM6IGhhbmRsZXJzLnNsaWNlKCBkZWxlZ2F0ZUNvdW50ICkgfSApOwoJCX0KCgkJcmV0dXJuIGhhbmRsZXJRdWV1ZTsKCX0sCgoJYWRkUHJvcDogZnVuY3Rpb24oIG5hbWUsIGhvb2sgKSB7CgkJT2JqZWN0LmRlZmluZVByb3BlcnR5KCBqUXVlcnkuRXZlbnQucHJvdG90eXBlLCBuYW1lLCB7CgkJCWVudW1lcmFibGU6IHRydWUsCgkJCWNvbmZpZ3VyYWJsZTogdHJ1ZSwKCgkJCWdldDogalF1ZXJ5LmlzRnVuY3Rpb24oIGhvb2sgKSA/CgkJCQlmdW5jdGlvbigpIHsKCQkJCQlpZiAoIHRoaXMub3JpZ2luYWxFdmVudCApIHsKCQkJCQkJCXJldHVybiBob29rKCB0aGlzLm9yaWdpbmFsRXZlbnQgKTsKCQkJCQl9CgkJCQl9IDoKCQkJCWZ1bmN0aW9uKCkgewoJCQkJCWlmICggdGhpcy5vcmlnaW5hbEV2ZW50ICkgewoJCQkJCQkJcmV0dXJuIHRoaXMub3JpZ2luYWxFdmVudFsgbmFtZSBdOwoJCQkJCX0KCQkJCX0sCgoJCQlzZXQ6IGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQkJCU9iamVjdC5kZWZpbmVQcm9wZXJ0eSggdGhpcywgbmFtZSwgewoJCQkJCWVudW1lcmFibGU6IHRydWUsCgkJCQkJY29uZmlndXJhYmxlOiB0cnVlLAoJCQkJCXdyaXRhYmxlOiB0cnVlLAoJCQkJCXZhbHVlOiB2YWx1ZQoJCQkJfSApOwoJCQl9CgkJfSApOwoJfSwKCglmaXg6IGZ1bmN0aW9uKCBvcmlnaW5hbEV2ZW50ICkgewoJCXJldHVybiBvcmlnaW5hbEV2ZW50WyBqUXVlcnkuZXhwYW5kbyBdID8KCQkJb3JpZ2luYWxFdmVudCA6CgkJCW5ldyBqUXVlcnkuRXZlbnQoIG9yaWdpbmFsRXZlbnQgKTsKCX0sCgoJc3BlY2lhbDogewoJCWxvYWQ6IHsKCgkJCS8vIFByZXZlbnQgdHJpZ2dlcmVkIGltYWdlLmxvYWQgZXZlbnRzIGZyb20gYnViYmxpbmcgdG8gd2luZG93LmxvYWQKCQkJbm9CdWJibGU6IHRydWUKCQl9LAoJCWZvY3VzOiB7CgoJCQkvLyBGaXJlIG5hdGl2ZSBldmVudCBpZiBwb3NzaWJsZSBzbyBibHVyL2ZvY3VzIHNlcXVlbmNlIGlzIGNvcnJlY3QKCQkJdHJpZ2dlcjogZnVuY3Rpb24oKSB7CgkJCQlpZiAoIHRoaXMgIT09IHNhZmVBY3RpdmVFbGVtZW50KCkgJiYgdGhpcy5mb2N1cyApIHsKCQkJCQl0aGlzLmZvY3VzKCk7CgkJCQkJcmV0dXJuIGZhbHNlOwoJCQkJfQoJCQl9LAoJCQlkZWxlZ2F0ZVR5cGU6ICJmb2N1c2luIgoJCX0sCgkJYmx1cjogewoJCQl0cmlnZ2VyOiBmdW5jdGlvbigpIHsKCQkJCWlmICggdGhpcyA9PT0gc2FmZUFjdGl2ZUVsZW1lbnQoKSAmJiB0aGlzLmJsdXIgKSB7CgkJCQkJdGhpcy5ibHVyKCk7CgkJCQkJcmV0dXJuIGZhbHNlOwoJCQkJfQoJCQl9LAoJCQlkZWxlZ2F0ZVR5cGU6ICJmb2N1c291dCIKCQl9LAoJCWNsaWNrOiB7CgoJCQkvLyBGb3IgY2hlY2tib3gsIGZpcmUgbmF0aXZlIGV2ZW50IHNvIGNoZWNrZWQgc3RhdGUgd2lsbCBiZSByaWdodAoJCQl0cmlnZ2VyOiBmdW5jdGlvbigpIHsKCQkJCWlmICggdGhpcy50eXBlID09PSAiY2hlY2tib3giICYmIHRoaXMuY2xpY2sgJiYgalF1ZXJ5Lm5vZGVOYW1lKCB0aGlzLCAiaW5wdXQiICkgKSB7CgkJCQkJdGhpcy5jbGljaygpOwoJCQkJCXJldHVybiBmYWxzZTsKCQkJCX0KCQkJfSwKCgkJCS8vIEZvciBjcm9zcy1icm93c2VyIGNvbnNpc3RlbmN5LCBkb24ndCBmaXJlIG5hdGl2ZSAuY2xpY2soKSBvbiBsaW5rcwoJCQlfZGVmYXVsdDogZnVuY3Rpb24oIGV2ZW50ICkgewoJCQkJcmV0dXJuIGpRdWVyeS5ub2RlTmFtZSggZXZlbnQudGFyZ2V0LCAiYSIgKTsKCQkJfQoJCX0sCgoJCWJlZm9yZXVubG9hZDogewoJCQlwb3N0RGlzcGF0Y2g6IGZ1bmN0aW9uKCBldmVudCApIHsKCgkJCQkvLyBTdXBwb3J0OiBGaXJlZm94IDIwKwoJCQkJLy8gRmlyZWZveCBkb2Vzbid0IGFsZXJ0IGlmIHRoZSByZXR1cm5WYWx1ZSBmaWVsZCBpcyBub3Qgc2V0LgoJCQkJaWYgKCBldmVudC5yZXN1bHQgIT09IHVuZGVmaW5lZCAmJiBldmVudC5vcmlnaW5hbEV2ZW50ICkgewoJCQkJCWV2ZW50Lm9yaWdpbmFsRXZlbnQucmV0dXJuVmFsdWUgPSBldmVudC5yZXN1bHQ7CgkJCQl9CgkJCX0KCQl9Cgl9Cn07CgpqUXVlcnkucmVtb3ZlRXZlbnQgPSBmdW5jdGlvbiggZWxlbSwgdHlwZSwgaGFuZGxlICkgewoKCS8vIFRoaXMgImlmIiBpcyBuZWVkZWQgZm9yIHBsYWluIG9iamVjdHMKCWlmICggZWxlbS5yZW1vdmVFdmVudExpc3RlbmVyICkgewoJCWVsZW0ucmVtb3ZlRXZlbnRMaXN0ZW5lciggdHlwZSwgaGFuZGxlICk7Cgl9Cn07CgpqUXVlcnkuRXZlbnQgPSBmdW5jdGlvbiggc3JjLCBwcm9wcyApIHsKCgkvLyBBbGxvdyBpbnN0YW50aWF0aW9uIHdpdGhvdXQgdGhlICduZXcnIGtleXdvcmQKCWlmICggISggdGhpcyBpbnN0YW5jZW9mIGpRdWVyeS5FdmVudCApICkgewoJCXJldHVybiBuZXcgalF1ZXJ5LkV2ZW50KCBzcmMsIHByb3BzICk7Cgl9CgoJLy8gRXZlbnQgb2JqZWN0CglpZiAoIHNyYyAmJiBzcmMudHlwZSApIHsKCQl0aGlzLm9yaWdpbmFsRXZlbnQgPSBzcmM7CgkJdGhpcy50eXBlID0gc3JjLnR5cGU7CgoJCS8vIEV2ZW50cyBidWJibGluZyB1cCB0aGUgZG9jdW1lbnQgbWF5IGhhdmUgYmVlbiBtYXJrZWQgYXMgcHJldmVudGVkCgkJLy8gYnkgYSBoYW5kbGVyIGxvd2VyIGRvd24gdGhlIHRyZWU7IHJlZmxlY3QgdGhlIGNvcnJlY3QgdmFsdWUuCgkJdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQgPSBzcmMuZGVmYXVsdFByZXZlbnRlZCB8fAoJCQkJc3JjLmRlZmF1bHRQcmV2ZW50ZWQgPT09IHVuZGVmaW5lZCAmJgoKCQkJCS8vIFN1cHBvcnQ6IEFuZHJvaWQgPD0yLjMgb25seQoJCQkJc3JjLnJldHVyblZhbHVlID09PSBmYWxzZSA/CgkJCXJldHVyblRydWUgOgoJCQlyZXR1cm5GYWxzZTsKCgkJLy8gQ3JlYXRlIHRhcmdldCBwcm9wZXJ0aWVzCgkJLy8gU3VwcG9ydDogU2FmYXJpIDw9NiAtIDcgb25seQoJCS8vIFRhcmdldCBzaG91bGQgbm90IGJlIGEgdGV4dCBub2RlICgjNTA0LCAjMTMxNDMpCgkJdGhpcy50YXJnZXQgPSAoIHNyYy50YXJnZXQgJiYgc3JjLnRhcmdldC5ub2RlVHlwZSA9PT0gMyApID8KCQkJc3JjLnRhcmdldC5wYXJlbnROb2RlIDoKCQkJc3JjLnRhcmdldDsKCgkJdGhpcy5jdXJyZW50VGFyZ2V0ID0gc3JjLmN1cnJlbnRUYXJnZXQ7CgkJdGhpcy5yZWxhdGVkVGFyZ2V0ID0gc3JjLnJlbGF0ZWRUYXJnZXQ7CgoJLy8gRXZlbnQgdHlwZQoJfSBlbHNlIHsKCQl0aGlzLnR5cGUgPSBzcmM7Cgl9CgoJLy8gUHV0IGV4cGxpY2l0bHkgcHJvdmlkZWQgcHJvcGVydGllcyBvbnRvIHRoZSBldmVudCBvYmplY3QKCWlmICggcHJvcHMgKSB7CgkJalF1ZXJ5LmV4dGVuZCggdGhpcywgcHJvcHMgKTsKCX0KCgkvLyBDcmVhdGUgYSB0aW1lc3RhbXAgaWYgaW5jb21pbmcgZXZlbnQgZG9lc24ndCBoYXZlIG9uZQoJdGhpcy50aW1lU3RhbXAgPSBzcmMgJiYgc3JjLnRpbWVTdGFtcCB8fCBqUXVlcnkubm93KCk7CgoJLy8gTWFyayBpdCBhcyBmaXhlZAoJdGhpc1sgalF1ZXJ5LmV4cGFuZG8gXSA9IHRydWU7Cn07CgovLyBqUXVlcnkuRXZlbnQgaXMgYmFzZWQgb24gRE9NMyBFdmVudHMgYXMgc3BlY2lmaWVkIGJ5IHRoZSBFQ01BU2NyaXB0IExhbmd1YWdlIEJpbmRpbmcKLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMDMvV0QtRE9NLUxldmVsLTMtRXZlbnRzLTIwMDMwMzMxL2VjbWEtc2NyaXB0LWJpbmRpbmcuaHRtbApqUXVlcnkuRXZlbnQucHJvdG90eXBlID0gewoJY29uc3RydWN0b3I6IGpRdWVyeS5FdmVudCwKCWlzRGVmYXVsdFByZXZlbnRlZDogcmV0dXJuRmFsc2UsCglpc1Byb3BhZ2F0aW9uU3RvcHBlZDogcmV0dXJuRmFsc2UsCglpc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZDogcmV0dXJuRmFsc2UsCglpc1NpbXVsYXRlZDogZmFsc2UsCgoJcHJldmVudERlZmF1bHQ6IGZ1bmN0aW9uKCkgewoJCXZhciBlID0gdGhpcy5vcmlnaW5hbEV2ZW50OwoKCQl0aGlzLmlzRGVmYXVsdFByZXZlbnRlZCA9IHJldHVyblRydWU7CgoJCWlmICggZSAmJiAhdGhpcy5pc1NpbXVsYXRlZCApIHsKCQkJZS5wcmV2ZW50RGVmYXVsdCgpOwoJCX0KCX0sCglzdG9wUHJvcGFnYXRpb246IGZ1bmN0aW9uKCkgewoJCXZhciBlID0gdGhpcy5vcmlnaW5hbEV2ZW50OwoKCQl0aGlzLmlzUHJvcGFnYXRpb25TdG9wcGVkID0gcmV0dXJuVHJ1ZTsKCgkJaWYgKCBlICYmICF0aGlzLmlzU2ltdWxhdGVkICkgewoJCQllLnN0b3BQcm9wYWdhdGlvbigpOwoJCX0KCX0sCglzdG9wSW1tZWRpYXRlUHJvcGFnYXRpb246IGZ1bmN0aW9uKCkgewoJCXZhciBlID0gdGhpcy5vcmlnaW5hbEV2ZW50OwoKCQl0aGlzLmlzSW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkID0gcmV0dXJuVHJ1ZTsKCgkJaWYgKCBlICYmICF0aGlzLmlzU2ltdWxhdGVkICkgewoJCQllLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpOwoJCX0KCgkJdGhpcy5zdG9wUHJvcGFnYXRpb24oKTsKCX0KfTsKCi8vIEluY2x1ZGVzIGFsbCBjb21tb24gZXZlbnQgcHJvcHMgaW5jbHVkaW5nIEtleUV2ZW50IGFuZCBNb3VzZUV2ZW50IHNwZWNpZmljIHByb3BzCmpRdWVyeS5lYWNoKCB7CglhbHRLZXk6IHRydWUsCglidWJibGVzOiB0cnVlLAoJY2FuY2VsYWJsZTogdHJ1ZSwKCWNoYW5nZWRUb3VjaGVzOiB0cnVlLAoJY3RybEtleTogdHJ1ZSwKCWRldGFpbDogdHJ1ZSwKCWV2ZW50UGhhc2U6IHRydWUsCgltZXRhS2V5OiB0cnVlLAoJcGFnZVg6IHRydWUsCglwYWdlWTogdHJ1ZSwKCXNoaWZ0S2V5OiB0cnVlLAoJdmlldzogdHJ1ZSwKCSJjaGFyIjogdHJ1ZSwKCWNoYXJDb2RlOiB0cnVlLAoJa2V5OiB0cnVlLAoJa2V5Q29kZTogdHJ1ZSwKCWJ1dHRvbjogdHJ1ZSwKCWJ1dHRvbnM6IHRydWUsCgljbGllbnRYOiB0cnVlLAoJY2xpZW50WTogdHJ1ZSwKCW9mZnNldFg6IHRydWUsCglvZmZzZXRZOiB0cnVlLAoJcG9pbnRlcklkOiB0cnVlLAoJcG9pbnRlclR5cGU6IHRydWUsCglzY3JlZW5YOiB0cnVlLAoJc2NyZWVuWTogdHJ1ZSwKCXRhcmdldFRvdWNoZXM6IHRydWUsCgl0b0VsZW1lbnQ6IHRydWUsCgl0b3VjaGVzOiB0cnVlLAoKCXdoaWNoOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdmFyIGJ1dHRvbiA9IGV2ZW50LmJ1dHRvbjsKCgkJLy8gQWRkIHdoaWNoIGZvciBrZXkgZXZlbnRzCgkJaWYgKCBldmVudC53aGljaCA9PSBudWxsICYmIHJrZXlFdmVudC50ZXN0KCBldmVudC50eXBlICkgKSB7CgkJCXJldHVybiBldmVudC5jaGFyQ29kZSAhPSBudWxsID8gZXZlbnQuY2hhckNvZGUgOiBldmVudC5rZXlDb2RlOwoJCX0KCgkJLy8gQWRkIHdoaWNoIGZvciBjbGljazogMSA9PT0gbGVmdDsgMiA9PT0gbWlkZGxlOyAzID09PSByaWdodAoJCWlmICggIWV2ZW50LndoaWNoICYmIGJ1dHRvbiAhPT0gdW5kZWZpbmVkICYmIHJtb3VzZUV2ZW50LnRlc3QoIGV2ZW50LnR5cGUgKSApIHsKCQkJaWYgKCBidXR0b24gJiAxICkgewoJCQkJcmV0dXJuIDE7CgkJCX0KCgkJCWlmICggYnV0dG9uICYgMiApIHsKCQkJCXJldHVybiAzOwoJCQl9CgoJCQlpZiAoIGJ1dHRvbiAmIDQgKSB7CgkJCQlyZXR1cm4gMjsKCQkJfQoKCQkJcmV0dXJuIDA7CgkJfQoKCQlyZXR1cm4gZXZlbnQud2hpY2g7Cgl9Cn0sIGpRdWVyeS5ldmVudC5hZGRQcm9wICk7CgovLyBDcmVhdGUgbW91c2VlbnRlci9sZWF2ZSBldmVudHMgdXNpbmcgbW91c2VvdmVyL291dCBhbmQgZXZlbnQtdGltZSBjaGVja3MKLy8gc28gdGhhdCBldmVudCBkZWxlZ2F0aW9uIHdvcmtzIGluIGpRdWVyeS4KLy8gRG8gdGhlIHNhbWUgZm9yIHBvaW50ZXJlbnRlci9wb2ludGVybGVhdmUgYW5kIHBvaW50ZXJvdmVyL3BvaW50ZXJvdXQKLy8KLy8gU3VwcG9ydDogU2FmYXJpIDcgb25seQovLyBTYWZhcmkgc2VuZHMgbW91c2VlbnRlciB0b28gb2Z0ZW47IHNlZToKLy8gaHR0cHM6Ly9idWdzLmNocm9taXVtLm9yZy9wL2Nocm9taXVtL2lzc3Vlcy9kZXRhaWw/aWQ9NDcwMjU4Ci8vIGZvciB0aGUgZGVzY3JpcHRpb24gb2YgdGhlIGJ1ZyAoaXQgZXhpc3RlZCBpbiBvbGRlciBDaHJvbWUgdmVyc2lvbnMgYXMgd2VsbCkuCmpRdWVyeS5lYWNoKCB7Cgltb3VzZWVudGVyOiAibW91c2VvdmVyIiwKCW1vdXNlbGVhdmU6ICJtb3VzZW91dCIsCglwb2ludGVyZW50ZXI6ICJwb2ludGVyb3ZlciIsCglwb2ludGVybGVhdmU6ICJwb2ludGVyb3V0Igp9LCBmdW5jdGlvbiggb3JpZywgZml4ICkgewoJalF1ZXJ5LmV2ZW50LnNwZWNpYWxbIG9yaWcgXSA9IHsKCQlkZWxlZ2F0ZVR5cGU6IGZpeCwKCQliaW5kVHlwZTogZml4LAoKCQloYW5kbGU6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJdmFyIHJldCwKCQkJCXRhcmdldCA9IHRoaXMsCgkJCQlyZWxhdGVkID0gZXZlbnQucmVsYXRlZFRhcmdldCwKCQkJCWhhbmRsZU9iaiA9IGV2ZW50LmhhbmRsZU9iajsKCgkJCS8vIEZvciBtb3VzZWVudGVyL2xlYXZlIGNhbGwgdGhlIGhhbmRsZXIgaWYgcmVsYXRlZCBpcyBvdXRzaWRlIHRoZSB0YXJnZXQuCgkJCS8vIE5COiBObyByZWxhdGVkVGFyZ2V0IGlmIHRoZSBtb3VzZSBsZWZ0L2VudGVyZWQgdGhlIGJyb3dzZXIgd2luZG93CgkJCWlmICggIXJlbGF0ZWQgfHwgKCByZWxhdGVkICE9PSB0YXJnZXQgJiYgIWpRdWVyeS5jb250YWlucyggdGFyZ2V0LCByZWxhdGVkICkgKSApIHsKCQkJCWV2ZW50LnR5cGUgPSBoYW5kbGVPYmoub3JpZ1R5cGU7CgkJCQlyZXQgPSBoYW5kbGVPYmouaGFuZGxlci5hcHBseSggdGhpcywgYXJndW1lbnRzICk7CgkJCQlldmVudC50eXBlID0gZml4OwoJCQl9CgkJCXJldHVybiByZXQ7CgkJfQoJfTsKfSApOwoKalF1ZXJ5LmZuLmV4dGVuZCggewoKCW9uOiBmdW5jdGlvbiggdHlwZXMsIHNlbGVjdG9yLCBkYXRhLCBmbiApIHsKCQlyZXR1cm4gb24oIHRoaXMsIHR5cGVzLCBzZWxlY3RvciwgZGF0YSwgZm4gKTsKCX0sCglvbmU6IGZ1bmN0aW9uKCB0eXBlcywgc2VsZWN0b3IsIGRhdGEsIGZuICkgewoJCXJldHVybiBvbiggdGhpcywgdHlwZXMsIHNlbGVjdG9yLCBkYXRhLCBmbiwgMSApOwoJfSwKCW9mZjogZnVuY3Rpb24oIHR5cGVzLCBzZWxlY3RvciwgZm4gKSB7CgkJdmFyIGhhbmRsZU9iaiwgdHlwZTsKCQlpZiAoIHR5cGVzICYmIHR5cGVzLnByZXZlbnREZWZhdWx0ICYmIHR5cGVzLmhhbmRsZU9iaiApIHsKCgkJCS8vICggZXZlbnQgKSAgZGlzcGF0Y2hlZCBqUXVlcnkuRXZlbnQKCQkJaGFuZGxlT2JqID0gdHlwZXMuaGFuZGxlT2JqOwoJCQlqUXVlcnkoIHR5cGVzLmRlbGVnYXRlVGFyZ2V0ICkub2ZmKAoJCQkJaGFuZGxlT2JqLm5hbWVzcGFjZSA/CgkJCQkJaGFuZGxlT2JqLm9yaWdUeXBlICsgIi4iICsgaGFuZGxlT2JqLm5hbWVzcGFjZSA6CgkJCQkJaGFuZGxlT2JqLm9yaWdUeXBlLAoJCQkJaGFuZGxlT2JqLnNlbGVjdG9yLAoJCQkJaGFuZGxlT2JqLmhhbmRsZXIKCQkJKTsKCQkJcmV0dXJuIHRoaXM7CgkJfQoJCWlmICggdHlwZW9mIHR5cGVzID09PSAib2JqZWN0IiApIHsKCgkJCS8vICggdHlwZXMtb2JqZWN0IFssIHNlbGVjdG9yXSApCgkJCWZvciAoIHR5cGUgaW4gdHlwZXMgKSB7CgkJCQl0aGlzLm9mZiggdHlwZSwgc2VsZWN0b3IsIHR5cGVzWyB0eXBlIF0gKTsKCQkJfQoJCQlyZXR1cm4gdGhpczsKCQl9CgkJaWYgKCBzZWxlY3RvciA9PT0gZmFsc2UgfHwgdHlwZW9mIHNlbGVjdG9yID09PSAiZnVuY3Rpb24iICkgewoKCQkJLy8gKCB0eXBlcyBbLCBmbl0gKQoJCQlmbiA9IHNlbGVjdG9yOwoJCQlzZWxlY3RvciA9IHVuZGVmaW5lZDsKCQl9CgkJaWYgKCBmbiA9PT0gZmFsc2UgKSB7CgkJCWZuID0gcmV0dXJuRmFsc2U7CgkJfQoJCXJldHVybiB0aGlzLmVhY2goIGZ1bmN0aW9uKCkgewoJCQlqUXVlcnkuZXZlbnQucmVtb3ZlKCB0aGlzLCB0eXBlcywgZm4sIHNlbGVjdG9yICk7CgkJfSApOwoJfQp9ICk7CgoKdmFyCgoJLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiAqLwoKCS8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vZXNsaW50L2VzbGludC9pc3N1ZXMvMzIyOQoJcnhodG1sVGFnID0gLzwoPyFhcmVhfGJyfGNvbHxlbWJlZHxocnxpbWd8aW5wdXR8bGlua3xtZXRhfHBhcmFtKSgoW2Etel1bXlwvXDA+XHgyMFx0XHJcblxmXSopW14+XSopXC8+L2dpLAoKCS8qIGVzbGludC1lbmFibGUgKi8KCgkvLyBTdXBwb3J0OiBJRSA8PTEwIC0gMTEsIEVkZ2UgMTIgLSAxMwoJLy8gSW4gSUUvRWRnZSB1c2luZyByZWdleCBncm91cHMgaGVyZSBjYXVzZXMgc2V2ZXJlIHNsb3dkb3ducy4KCS8vIFNlZSBodHRwczovL2Nvbm5lY3QubWljcm9zb2Z0LmNvbS9JRS9mZWVkYmFjay9kZXRhaWxzLzE3MzY1MTIvCglybm9Jbm5lcmh0bWwgPSAvPHNjcmlwdHw8c3R5bGV8PGxpbmsvaSwKCgkvLyBjaGVja2VkPSJjaGVja2VkIiBvciBjaGVja2VkCglyY2hlY2tlZCA9IC9jaGVja2VkXHMqKD86W149XXw9XHMqLmNoZWNrZWQuKS9pLAoJcnNjcmlwdFR5cGVNYXNrZWQgPSAvXnRydWVcLyguKikvLAoJcmNsZWFuU2NyaXB0ID0gL15ccyo8ISg/OlxbQ0RBVEFcW3wtLSl8KD86XF1cXXwtLSk+XHMqJC9nOwoKZnVuY3Rpb24gbWFuaXB1bGF0aW9uVGFyZ2V0KCBlbGVtLCBjb250ZW50ICkgewoJaWYgKCBqUXVlcnkubm9kZU5hbWUoIGVsZW0sICJ0YWJsZSIgKSAmJgoJCWpRdWVyeS5ub2RlTmFtZSggY29udGVudC5ub2RlVHlwZSAhPT0gMTEgPyBjb250ZW50IDogY29udGVudC5maXJzdENoaWxkLCAidHIiICkgKSB7CgoJCXJldHVybiBlbGVtLmdldEVsZW1lbnRzQnlUYWdOYW1lKCAidGJvZHkiIClbIDAgXSB8fCBlbGVtOwoJfQoKCXJldHVybiBlbGVtOwp9CgovLyBSZXBsYWNlL3Jlc3RvcmUgdGhlIHR5cGUgYXR0cmlidXRlIG9mIHNjcmlwdCBlbGVtZW50cyBmb3Igc2FmZSBET00gbWFuaXB1bGF0aW9uCmZ1bmN0aW9uIGRpc2FibGVTY3JpcHQoIGVsZW0gKSB7CgllbGVtLnR5cGUgPSAoIGVsZW0uZ2V0QXR0cmlidXRlKCAidHlwZSIgKSAhPT0gbnVsbCApICsgIi8iICsgZWxlbS50eXBlOwoJcmV0dXJuIGVsZW07Cn0KZnVuY3Rpb24gcmVzdG9yZVNjcmlwdCggZWxlbSApIHsKCXZhciBtYXRjaCA9IHJzY3JpcHRUeXBlTWFza2VkLmV4ZWMoIGVsZW0udHlwZSApOwoKCWlmICggbWF0Y2ggKSB7CgkJZWxlbS50eXBlID0gbWF0Y2hbIDEgXTsKCX0gZWxzZSB7CgkJZWxlbS5yZW1vdmVBdHRyaWJ1dGUoICJ0eXBlIiApOwoJfQoKCXJldHVybiBlbGVtOwp9CgpmdW5jdGlvbiBjbG9uZUNvcHlFdmVudCggc3JjLCBkZXN0ICkgewoJdmFyIGksIGwsIHR5cGUsIHBkYXRhT2xkLCBwZGF0YUN1ciwgdWRhdGFPbGQsIHVkYXRhQ3VyLCBldmVudHM7CgoJaWYgKCBkZXN0Lm5vZGVUeXBlICE9PSAxICkgewoJCXJldHVybjsKCX0KCgkvLyAxLiBDb3B5IHByaXZhdGUgZGF0YTogZXZlbnRzLCBoYW5kbGVycywgZXRjLgoJaWYgKCBkYXRhUHJpdi5oYXNEYXRhKCBzcmMgKSApIHsKCQlwZGF0YU9sZCA9IGRhdGFQcml2LmFjY2Vzcyggc3JjICk7CgkJcGRhdGFDdXIgPSBkYXRhUHJpdi5zZXQoIGRlc3QsIHBkYXRhT2xkICk7CgkJZXZlbnRzID0gcGRhdGFPbGQuZXZlbnRzOwoKCQlpZiAoIGV2ZW50cyApIHsKCQkJZGVsZXRlIHBkYXRhQ3VyLmhhbmRsZTsKCQkJcGRhdGFDdXIuZXZlbnRzID0ge307CgoJCQlmb3IgKCB0eXBlIGluIGV2ZW50cyApIHsKCQkJCWZvciAoIGkgPSAwLCBsID0gZXZlbnRzWyB0eXBlIF0ubGVuZ3RoOyBpIDwgbDsgaSsrICkgewoJCQkJCWpRdWVyeS5ldmVudC5hZGQoIGRlc3QsIHR5cGUsIGV2ZW50c1sgdHlwZSBdWyBpIF0gKTsKCQkJCX0KCQkJfQoJCX0KCX0KCgkvLyAyLiBDb3B5IHVzZXIgZGF0YQoJaWYgKCBkYXRhVXNlci5oYXNEYXRhKCBzcmMgKSApIHsKCQl1ZGF0YU9sZCA9IGRhdGFVc2VyLmFjY2Vzcyggc3JjICk7CgkJdWRhdGFDdXIgPSBqUXVlcnkuZXh0ZW5kKCB7fSwgdWRhdGFPbGQgKTsKCgkJZGF0YVVzZXIuc2V0KCBkZXN0LCB1ZGF0YUN1ciApOwoJfQp9CgovLyBGaXggSUUgYnVncywgc2VlIHN1cHBvcnQgdGVzdHMKZnVuY3Rpb24gZml4SW5wdXQoIHNyYywgZGVzdCApIHsKCXZhciBub2RlTmFtZSA9IGRlc3Qubm9kZU5hbWUudG9Mb3dlckNhc2UoKTsKCgkvLyBGYWlscyB0byBwZXJzaXN0IHRoZSBjaGVja2VkIHN0YXRlIG9mIGEgY2xvbmVkIGNoZWNrYm94IG9yIHJhZGlvIGJ1dHRvbi4KCWlmICggbm9kZU5hbWUgPT09ICJpbnB1dCIgJiYgcmNoZWNrYWJsZVR5cGUudGVzdCggc3JjLnR5cGUgKSApIHsKCQlkZXN0LmNoZWNrZWQgPSBzcmMuY2hlY2tlZDsKCgkvLyBGYWlscyB0byByZXR1cm4gdGhlIHNlbGVjdGVkIG9wdGlvbiB0byB0aGUgZGVmYXVsdCBzZWxlY3RlZCBzdGF0ZSB3aGVuIGNsb25pbmcgb3B0aW9ucwoJfSBlbHNlIGlmICggbm9kZU5hbWUgPT09ICJpbnB1dCIgfHwgbm9kZU5hbWUgPT09ICJ0ZXh0YXJlYSIgKSB7CgkJZGVzdC5kZWZhdWx0VmFsdWUgPSBzcmMuZGVmYXVsdFZhbHVlOwoJfQp9CgpmdW5jdGlvbiBkb21NYW5pcCggY29sbGVjdGlvbiwgYXJncywgY2FsbGJhY2ssIGlnbm9yZWQgKSB7CgoJLy8gRmxhdHRlbiBhbnkgbmVzdGVkIGFycmF5cwoJYXJncyA9IGNvbmNhdC5hcHBseSggW10sIGFyZ3MgKTsKCgl2YXIgZnJhZ21lbnQsIGZpcnN0LCBzY3JpcHRzLCBoYXNTY3JpcHRzLCBub2RlLCBkb2MsCgkJaSA9IDAsCgkJbCA9IGNvbGxlY3Rpb24ubGVuZ3RoLAoJCWlOb0Nsb25lID0gbCAtIDEsCgkJdmFsdWUgPSBhcmdzWyAwIF0sCgkJaXNGdW5jdGlvbiA9IGpRdWVyeS5pc0Z1bmN0aW9uKCB2YWx1ZSApOwoKCS8vIFdlIGNhbid0IGNsb25lTm9kZSBmcmFnbWVudHMgdGhhdCBjb250YWluIGNoZWNrZWQsIGluIFdlYktpdAoJaWYgKCBpc0Z1bmN0aW9uIHx8CgkJCSggbCA+IDEgJiYgdHlwZW9mIHZhbHVlID09PSAic3RyaW5nIiAmJgoJCQkJIXN1cHBvcnQuY2hlY2tDbG9uZSAmJiByY2hlY2tlZC50ZXN0KCB2YWx1ZSApICkgKSB7CgkJcmV0dXJuIGNvbGxlY3Rpb24uZWFjaCggZnVuY3Rpb24oIGluZGV4ICkgewoJCQl2YXIgc2VsZiA9IGNvbGxlY3Rpb24uZXEoIGluZGV4ICk7CgkJCWlmICggaXNGdW5jdGlvbiApIHsKCQkJCWFyZ3NbIDAgXSA9IHZhbHVlLmNhbGwoIHRoaXMsIGluZGV4LCBzZWxmLmh0bWwoKSApOwoJCQl9CgkJCWRvbU1hbmlwKCBzZWxmLCBhcmdzLCBjYWxsYmFjaywgaWdub3JlZCApOwoJCX0gKTsKCX0KCglpZiAoIGwgKSB7CgkJZnJhZ21lbnQgPSBidWlsZEZyYWdtZW50KCBhcmdzLCBjb2xsZWN0aW9uWyAwIF0ub3duZXJEb2N1bWVudCwgZmFsc2UsIGNvbGxlY3Rpb24sIGlnbm9yZWQgKTsKCQlmaXJzdCA9IGZyYWdtZW50LmZpcnN0Q2hpbGQ7CgoJCWlmICggZnJhZ21lbnQuY2hpbGROb2Rlcy5sZW5ndGggPT09IDEgKSB7CgkJCWZyYWdtZW50ID0gZmlyc3Q7CgkJfQoKCQkvLyBSZXF1aXJlIGVpdGhlciBuZXcgY29udGVudCBvciBhbiBpbnRlcmVzdCBpbiBpZ25vcmVkIGVsZW1lbnRzIHRvIGludm9rZSB0aGUgY2FsbGJhY2sKCQlpZiAoIGZpcnN0IHx8IGlnbm9yZWQgKSB7CgkJCXNjcmlwdHMgPSBqUXVlcnkubWFwKCBnZXRBbGwoIGZyYWdtZW50LCAic2NyaXB0IiApLCBkaXNhYmxlU2NyaXB0ICk7CgkJCWhhc1NjcmlwdHMgPSBzY3JpcHRzLmxlbmd0aDsKCgkJCS8vIFVzZSB0aGUgb3JpZ2luYWwgZnJhZ21lbnQgZm9yIHRoZSBsYXN0IGl0ZW0KCQkJLy8gaW5zdGVhZCBvZiB0aGUgZmlyc3QgYmVjYXVzZSBpdCBjYW4gZW5kIHVwCgkJCS8vIGJlaW5nIGVtcHRpZWQgaW5jb3JyZWN0bHkgaW4gY2VydGFpbiBzaXR1YXRpb25zICgjODA3MCkuCgkJCWZvciAoIDsgaSA8IGw7IGkrKyApIHsKCQkJCW5vZGUgPSBmcmFnbWVudDsKCgkJCQlpZiAoIGkgIT09IGlOb0Nsb25lICkgewoJCQkJCW5vZGUgPSBqUXVlcnkuY2xvbmUoIG5vZGUsIHRydWUsIHRydWUgKTsKCgkJCQkJLy8gS2VlcCByZWZlcmVuY2VzIHRvIGNsb25lZCBzY3JpcHRzIGZvciBsYXRlciByZXN0b3JhdGlvbgoJCQkJCWlmICggaGFzU2NyaXB0cyApIHsKCgkJCQkJCS8vIFN1cHBvcnQ6IEFuZHJvaWQgPD00LjAgb25seSwgUGhhbnRvbUpTIDEgb25seQoJCQkJCQkvLyBwdXNoLmFwcGx5KF8sIGFycmF5bGlrZSkgdGhyb3dzIG9uIGFuY2llbnQgV2ViS2l0CgkJCQkJCWpRdWVyeS5tZXJnZSggc2NyaXB0cywgZ2V0QWxsKCBub2RlLCAic2NyaXB0IiApICk7CgkJCQkJfQoJCQkJfQoKCQkJCWNhbGxiYWNrLmNhbGwoIGNvbGxlY3Rpb25bIGkgXSwgbm9kZSwgaSApOwoJCQl9CgoJCQlpZiAoIGhhc1NjcmlwdHMgKSB7CgkJCQlkb2MgPSBzY3JpcHRzWyBzY3JpcHRzLmxlbmd0aCAtIDEgXS5vd25lckRvY3VtZW50OwoKCQkJCS8vIFJlZW5hYmxlIHNjcmlwdHMKCQkJCWpRdWVyeS5tYXAoIHNjcmlwdHMsIHJlc3RvcmVTY3JpcHQgKTsKCgkJCQkvLyBFdmFsdWF0ZSBleGVjdXRhYmxlIHNjcmlwdHMgb24gZmlyc3QgZG9jdW1lbnQgaW5zZXJ0aW9uCgkJCQlmb3IgKCBpID0gMDsgaSA8IGhhc1NjcmlwdHM7IGkrKyApIHsKCQkJCQlub2RlID0gc2NyaXB0c1sgaSBdOwoJCQkJCWlmICggcnNjcmlwdFR5cGUudGVzdCggbm9kZS50eXBlIHx8ICIiICkgJiYKCQkJCQkJIWRhdGFQcml2LmFjY2Vzcyggbm9kZSwgImdsb2JhbEV2YWwiICkgJiYKCQkJCQkJalF1ZXJ5LmNvbnRhaW5zKCBkb2MsIG5vZGUgKSApIHsKCgkJCQkJCWlmICggbm9kZS5zcmMgKSB7CgoJCQkJCQkJLy8gT3B0aW9uYWwgQUpBWCBkZXBlbmRlbmN5LCBidXQgd29uJ3QgcnVuIHNjcmlwdHMgaWYgbm90IHByZXNlbnQKCQkJCQkJCWlmICggalF1ZXJ5Ll9ldmFsVXJsICkgewoJCQkJCQkJCWpRdWVyeS5fZXZhbFVybCggbm9kZS5zcmMgKTsKCQkJCQkJCX0KCQkJCQkJfSBlbHNlIHsKCQkJCQkJCURPTUV2YWwoIG5vZGUudGV4dENvbnRlbnQucmVwbGFjZSggcmNsZWFuU2NyaXB0LCAiIiApLCBkb2MgKTsKCQkJCQkJfQoJCQkJCX0KCQkJCX0KCQkJfQoJCX0KCX0KCglyZXR1cm4gY29sbGVjdGlvbjsKfQoKZnVuY3Rpb24gcmVtb3ZlKCBlbGVtLCBzZWxlY3Rvciwga2VlcERhdGEgKSB7Cgl2YXIgbm9kZSwKCQlub2RlcyA9IHNlbGVjdG9yID8galF1ZXJ5LmZpbHRlciggc2VsZWN0b3IsIGVsZW0gKSA6IGVsZW0sCgkJaSA9IDA7CgoJZm9yICggOyAoIG5vZGUgPSBub2Rlc1sgaSBdICkgIT0gbnVsbDsgaSsrICkgewoJCWlmICggIWtlZXBEYXRhICYmIG5vZGUubm9kZVR5cGUgPT09IDEgKSB7CgkJCWpRdWVyeS5jbGVhbkRhdGEoIGdldEFsbCggbm9kZSApICk7CgkJfQoKCQlpZiAoIG5vZGUucGFyZW50Tm9kZSApIHsKCQkJaWYgKCBrZWVwRGF0YSAmJiBqUXVlcnkuY29udGFpbnMoIG5vZGUub3duZXJEb2N1bWVudCwgbm9kZSApICkgewoJCQkJc2V0R2xvYmFsRXZhbCggZ2V0QWxsKCBub2RlLCAic2NyaXB0IiApICk7CgkJCX0KCQkJbm9kZS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKCBub2RlICk7CgkJfQoJfQoKCXJldHVybiBlbGVtOwp9CgpqUXVlcnkuZXh0ZW5kKCB7CglodG1sUHJlZmlsdGVyOiBmdW5jdGlvbiggaHRtbCApIHsKCQlyZXR1cm4gaHRtbC5yZXBsYWNlKCByeGh0bWxUYWcsICI8JDE+PC8kMj4iICk7Cgl9LAoKCWNsb25lOiBmdW5jdGlvbiggZWxlbSwgZGF0YUFuZEV2ZW50cywgZGVlcERhdGFBbmRFdmVudHMgKSB7CgkJdmFyIGksIGwsIHNyY0VsZW1lbnRzLCBkZXN0RWxlbWVudHMsCgkJCWNsb25lID0gZWxlbS5jbG9uZU5vZGUoIHRydWUgKSwKCQkJaW5QYWdlID0galF1ZXJ5LmNvbnRhaW5zKCBlbGVtLm93bmVyRG9jdW1lbnQsIGVsZW0gKTsKCgkJLy8gRml4IElFIGNsb25pbmcgaXNzdWVzCgkJaWYgKCAhc3VwcG9ydC5ub0Nsb25lQ2hlY2tlZCAmJiAoIGVsZW0ubm9kZVR5cGUgPT09IDEgfHwgZWxlbS5ub2RlVHlwZSA9PT0gMTEgKSAmJgoJCQkJIWpRdWVyeS5pc1hNTERvYyggZWxlbSApICkgewoKCQkJLy8gV2UgZXNjaGV3IFNpenpsZSBoZXJlIGZvciBwZXJmb3JtYW5jZSByZWFzb25zOiBodHRwczovL2pzcGVyZi5jb20vZ2V0YWxsLXZzLXNpenpsZS8yCgkJCWRlc3RFbGVtZW50cyA9IGdldEFsbCggY2xvbmUgKTsKCQkJc3JjRWxlbWVudHMgPSBnZXRBbGwoIGVsZW0gKTsKCgkJCWZvciAoIGkgPSAwLCBsID0gc3JjRWxlbWVudHMubGVuZ3RoOyBpIDwgbDsgaSsrICkgewoJCQkJZml4SW5wdXQoIHNyY0VsZW1lbnRzWyBpIF0sIGRlc3RFbGVtZW50c1sgaSBdICk7CgkJCX0KCQl9CgoJCS8vIENvcHkgdGhlIGV2ZW50cyBmcm9tIHRoZSBvcmlnaW5hbCB0byB0aGUgY2xvbmUKCQlpZiAoIGRhdGFBbmRFdmVudHMgKSB7CgkJCWlmICggZGVlcERhdGFBbmRFdmVudHMgKSB7CgkJCQlzcmNFbGVtZW50cyA9IHNyY0VsZW1lbnRzIHx8IGdldEFsbCggZWxlbSApOwoJCQkJZGVzdEVsZW1lbnRzID0gZGVzdEVsZW1lbnRzIHx8IGdldEFsbCggY2xvbmUgKTsKCgkJCQlmb3IgKCBpID0gMCwgbCA9IHNyY0VsZW1lbnRzLmxlbmd0aDsgaSA8IGw7IGkrKyApIHsKCQkJCQljbG9uZUNvcHlFdmVudCggc3JjRWxlbWVudHNbIGkgXSwgZGVzdEVsZW1lbnRzWyBpIF0gKTsKCQkJCX0KCQkJfSBlbHNlIHsKCQkJCWNsb25lQ29weUV2ZW50KCBlbGVtLCBjbG9uZSApOwoJCQl9CgkJfQoKCQkvLyBQcmVzZXJ2ZSBzY3JpcHQgZXZhbHVhdGlvbiBoaXN0b3J5CgkJZGVzdEVsZW1lbnRzID0gZ2V0QWxsKCBjbG9uZSwgInNjcmlwdCIgKTsKCQlpZiAoIGRlc3RFbGVtZW50cy5sZW5ndGggPiAwICkgewoJCQlzZXRHbG9iYWxFdmFsKCBkZXN0RWxlbWVudHMsICFpblBhZ2UgJiYgZ2V0QWxsKCBlbGVtLCAic2NyaXB0IiApICk7CgkJfQoKCQkvLyBSZXR1cm4gdGhlIGNsb25lZCBzZXQKCQlyZXR1cm4gY2xvbmU7Cgl9LAoKCWNsZWFuRGF0YTogZnVuY3Rpb24oIGVsZW1zICkgewoJCXZhciBkYXRhLCBlbGVtLCB0eXBlLAoJCQlzcGVjaWFsID0galF1ZXJ5LmV2ZW50LnNwZWNpYWwsCgkJCWkgPSAwOwoKCQlmb3IgKCA7ICggZWxlbSA9IGVsZW1zWyBpIF0gKSAhPT0gdW5kZWZpbmVkOyBpKysgKSB7CgkJCWlmICggYWNjZXB0RGF0YSggZWxlbSApICkgewoJCQkJaWYgKCAoIGRhdGEgPSBlbGVtWyBkYXRhUHJpdi5leHBhbmRvIF0gKSApIHsKCQkJCQlpZiAoIGRhdGEuZXZlbnRzICkgewoJCQkJCQlmb3IgKCB0eXBlIGluIGRhdGEuZXZlbnRzICkgewoJCQkJCQkJaWYgKCBzcGVjaWFsWyB0eXBlIF0gKSB7CgkJCQkJCQkJalF1ZXJ5LmV2ZW50LnJlbW92ZSggZWxlbSwgdHlwZSApOwoKCQkJCQkJCS8vIFRoaXMgaXMgYSBzaG9ydGN1dCB0byBhdm9pZCBqUXVlcnkuZXZlbnQucmVtb3ZlJ3Mgb3ZlcmhlYWQKCQkJCQkJCX0gZWxzZSB7CgkJCQkJCQkJalF1ZXJ5LnJlbW92ZUV2ZW50KCBlbGVtLCB0eXBlLCBkYXRhLmhhbmRsZSApOwoJCQkJCQkJfQoJCQkJCQl9CgkJCQkJfQoKCQkJCQkvLyBTdXBwb3J0OiBDaHJvbWUgPD0zNSAtIDQ1KwoJCQkJCS8vIEFzc2lnbiB1bmRlZmluZWQgaW5zdGVhZCBvZiB1c2luZyBkZWxldGUsIHNlZSBEYXRhI3JlbW92ZQoJCQkJCWVsZW1bIGRhdGFQcml2LmV4cGFuZG8gXSA9IHVuZGVmaW5lZDsKCQkJCX0KCQkJCWlmICggZWxlbVsgZGF0YVVzZXIuZXhwYW5kbyBdICkgewoKCQkJCQkvLyBTdXBwb3J0OiBDaHJvbWUgPD0zNSAtIDQ1KwoJCQkJCS8vIEFzc2lnbiB1bmRlZmluZWQgaW5zdGVhZCBvZiB1c2luZyBkZWxldGUsIHNlZSBEYXRhI3JlbW92ZQoJCQkJCWVsZW1bIGRhdGFVc2VyLmV4cGFuZG8gXSA9IHVuZGVmaW5lZDsKCQkJCX0KCQkJfQoJCX0KCX0KfSApOwoKalF1ZXJ5LmZuLmV4dGVuZCggewoJZGV0YWNoOiBmdW5jdGlvbiggc2VsZWN0b3IgKSB7CgkJcmV0dXJuIHJlbW92ZSggdGhpcywgc2VsZWN0b3IsIHRydWUgKTsKCX0sCgoJcmVtb3ZlOiBmdW5jdGlvbiggc2VsZWN0b3IgKSB7CgkJcmV0dXJuIHJlbW92ZSggdGhpcywgc2VsZWN0b3IgKTsKCX0sCgoJdGV4dDogZnVuY3Rpb24oIHZhbHVlICkgewoJCXJldHVybiBhY2Nlc3MoIHRoaXMsIGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQkJcmV0dXJuIHZhbHVlID09PSB1bmRlZmluZWQgPwoJCQkJalF1ZXJ5LnRleHQoIHRoaXMgKSA6CgkJCQl0aGlzLmVtcHR5KCkuZWFjaCggZnVuY3Rpb24oKSB7CgkJCQkJaWYgKCB0aGlzLm5vZGVUeXBlID09PSAxIHx8IHRoaXMubm9kZVR5cGUgPT09IDExIHx8IHRoaXMubm9kZVR5cGUgPT09IDkgKSB7CgkJCQkJCXRoaXMudGV4dENvbnRlbnQgPSB2YWx1ZTsKCQkJCQl9CgkJCQl9ICk7CgkJfSwgbnVsbCwgdmFsdWUsIGFyZ3VtZW50cy5sZW5ndGggKTsKCX0sCgoJYXBwZW5kOiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gZG9tTWFuaXAoIHRoaXMsIGFyZ3VtZW50cywgZnVuY3Rpb24oIGVsZW0gKSB7CgkJCWlmICggdGhpcy5ub2RlVHlwZSA9PT0gMSB8fCB0aGlzLm5vZGVUeXBlID09PSAxMSB8fCB0aGlzLm5vZGVUeXBlID09PSA5ICkgewoJCQkJdmFyIHRhcmdldCA9IG1hbmlwdWxhdGlvblRhcmdldCggdGhpcywgZWxlbSApOwoJCQkJdGFyZ2V0LmFwcGVuZENoaWxkKCBlbGVtICk7CgkJCX0KCQl9ICk7Cgl9LAoKCXByZXBlbmQ6IGZ1bmN0aW9uKCkgewoJCXJldHVybiBkb21NYW5pcCggdGhpcywgYXJndW1lbnRzLCBmdW5jdGlvbiggZWxlbSApIHsKCQkJaWYgKCB0aGlzLm5vZGVUeXBlID09PSAxIHx8IHRoaXMubm9kZVR5cGUgPT09IDExIHx8IHRoaXMubm9kZVR5cGUgPT09IDkgKSB7CgkJCQl2YXIgdGFyZ2V0ID0gbWFuaXB1bGF0aW9uVGFyZ2V0KCB0aGlzLCBlbGVtICk7CgkJCQl0YXJnZXQuaW5zZXJ0QmVmb3JlKCBlbGVtLCB0YXJnZXQuZmlyc3RDaGlsZCApOwoJCQl9CgkJfSApOwoJfSwKCgliZWZvcmU6IGZ1bmN0aW9uKCkgewoJCXJldHVybiBkb21NYW5pcCggdGhpcywgYXJndW1lbnRzLCBmdW5jdGlvbiggZWxlbSApIHsKCQkJaWYgKCB0aGlzLnBhcmVudE5vZGUgKSB7CgkJCQl0aGlzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKCBlbGVtLCB0aGlzICk7CgkJCX0KCQl9ICk7Cgl9LAoKCWFmdGVyOiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gZG9tTWFuaXAoIHRoaXMsIGFyZ3VtZW50cywgZnVuY3Rpb24oIGVsZW0gKSB7CgkJCWlmICggdGhpcy5wYXJlbnROb2RlICkgewoJCQkJdGhpcy5wYXJlbnROb2RlLmluc2VydEJlZm9yZSggZWxlbSwgdGhpcy5uZXh0U2libGluZyApOwoJCQl9CgkJfSApOwoJfSwKCgllbXB0eTogZnVuY3Rpb24oKSB7CgkJdmFyIGVsZW0sCgkJCWkgPSAwOwoKCQlmb3IgKCA7ICggZWxlbSA9IHRoaXNbIGkgXSApICE9IG51bGw7IGkrKyApIHsKCQkJaWYgKCBlbGVtLm5vZGVUeXBlID09PSAxICkgewoKCQkJCS8vIFByZXZlbnQgbWVtb3J5IGxlYWtzCgkJCQlqUXVlcnkuY2xlYW5EYXRhKCBnZXRBbGwoIGVsZW0sIGZhbHNlICkgKTsKCgkJCQkvLyBSZW1vdmUgYW55IHJlbWFpbmluZyBub2RlcwoJCQkJZWxlbS50ZXh0Q29udGVudCA9ICIiOwoJCQl9CgkJfQoKCQlyZXR1cm4gdGhpczsKCX0sCgoJY2xvbmU6IGZ1bmN0aW9uKCBkYXRhQW5kRXZlbnRzLCBkZWVwRGF0YUFuZEV2ZW50cyApIHsKCQlkYXRhQW5kRXZlbnRzID0gZGF0YUFuZEV2ZW50cyA9PSBudWxsID8gZmFsc2UgOiBkYXRhQW5kRXZlbnRzOwoJCWRlZXBEYXRhQW5kRXZlbnRzID0gZGVlcERhdGFBbmRFdmVudHMgPT0gbnVsbCA/IGRhdGFBbmRFdmVudHMgOiBkZWVwRGF0YUFuZEV2ZW50czsKCgkJcmV0dXJuIHRoaXMubWFwKCBmdW5jdGlvbigpIHsKCQkJcmV0dXJuIGpRdWVyeS5jbG9uZSggdGhpcywgZGF0YUFuZEV2ZW50cywgZGVlcERhdGFBbmRFdmVudHMgKTsKCQl9ICk7Cgl9LAoKCWh0bWw6IGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQlyZXR1cm4gYWNjZXNzKCB0aGlzLCBmdW5jdGlvbiggdmFsdWUgKSB7CgkJCXZhciBlbGVtID0gdGhpc1sgMCBdIHx8IHt9LAoJCQkJaSA9IDAsCgkJCQlsID0gdGhpcy5sZW5ndGg7CgoJCQlpZiAoIHZhbHVlID09PSB1bmRlZmluZWQgJiYgZWxlbS5ub2RlVHlwZSA9PT0gMSApIHsKCQkJCXJldHVybiBlbGVtLmlubmVySFRNTDsKCQkJfQoKCQkJLy8gU2VlIGlmIHdlIGNhbiB0YWtlIGEgc2hvcnRjdXQgYW5kIGp1c3QgdXNlIGlubmVySFRNTAoJCQlpZiAoIHR5cGVvZiB2YWx1ZSA9PT0gInN0cmluZyIgJiYgIXJub0lubmVyaHRtbC50ZXN0KCB2YWx1ZSApICYmCgkJCQkhd3JhcE1hcFsgKCBydGFnTmFtZS5leGVjKCB2YWx1ZSApIHx8IFsgIiIsICIiIF0gKVsgMSBdLnRvTG93ZXJDYXNlKCkgXSApIHsKCgkJCQl2YWx1ZSA9IGpRdWVyeS5odG1sUHJlZmlsdGVyKCB2YWx1ZSApOwoKCQkJCXRyeSB7CgkJCQkJZm9yICggOyBpIDwgbDsgaSsrICkgewoJCQkJCQllbGVtID0gdGhpc1sgaSBdIHx8IHt9OwoKCQkJCQkJLy8gUmVtb3ZlIGVsZW1lbnQgbm9kZXMgYW5kIHByZXZlbnQgbWVtb3J5IGxlYWtzCgkJCQkJCWlmICggZWxlbS5ub2RlVHlwZSA9PT0gMSApIHsKCQkJCQkJCWpRdWVyeS5jbGVhbkRhdGEoIGdldEFsbCggZWxlbSwgZmFsc2UgKSApOwoJCQkJCQkJZWxlbS5pbm5lckhUTUwgPSB2YWx1ZTsKCQkJCQkJfQoJCQkJCX0KCgkJCQkJZWxlbSA9IDA7CgoJCQkJLy8gSWYgdXNpbmcgaW5uZXJIVE1MIHRocm93cyBhbiBleGNlcHRpb24sIHVzZSB0aGUgZmFsbGJhY2sgbWV0aG9kCgkJCQl9IGNhdGNoICggZSApIHt9CgkJCX0KCgkJCWlmICggZWxlbSApIHsKCQkJCXRoaXMuZW1wdHkoKS5hcHBlbmQoIHZhbHVlICk7CgkJCX0KCQl9LCBudWxsLCB2YWx1ZSwgYXJndW1lbnRzLmxlbmd0aCApOwoJfSwKCglyZXBsYWNlV2l0aDogZnVuY3Rpb24oKSB7CgkJdmFyIGlnbm9yZWQgPSBbXTsKCgkJLy8gTWFrZSB0aGUgY2hhbmdlcywgcmVwbGFjaW5nIGVhY2ggbm9uLWlnbm9yZWQgY29udGV4dCBlbGVtZW50IHdpdGggdGhlIG5ldyBjb250ZW50CgkJcmV0dXJuIGRvbU1hbmlwKCB0aGlzLCBhcmd1bWVudHMsIGZ1bmN0aW9uKCBlbGVtICkgewoJCQl2YXIgcGFyZW50ID0gdGhpcy5wYXJlbnROb2RlOwoKCQkJaWYgKCBqUXVlcnkuaW5BcnJheSggdGhpcywgaWdub3JlZCApIDwgMCApIHsKCQkJCWpRdWVyeS5jbGVhbkRhdGEoIGdldEFsbCggdGhpcyApICk7CgkJCQlpZiAoIHBhcmVudCApIHsKCQkJCQlwYXJlbnQucmVwbGFjZUNoaWxkKCBlbGVtLCB0aGlzICk7CgkJCQl9CgkJCX0KCgkJLy8gRm9yY2UgY2FsbGJhY2sgaW52b2NhdGlvbgoJCX0sIGlnbm9yZWQgKTsKCX0KfSApOwoKalF1ZXJ5LmVhY2goIHsKCWFwcGVuZFRvOiAiYXBwZW5kIiwKCXByZXBlbmRUbzogInByZXBlbmQiLAoJaW5zZXJ0QmVmb3JlOiAiYmVmb3JlIiwKCWluc2VydEFmdGVyOiAiYWZ0ZXIiLAoJcmVwbGFjZUFsbDogInJlcGxhY2VXaXRoIgp9LCBmdW5jdGlvbiggbmFtZSwgb3JpZ2luYWwgKSB7CglqUXVlcnkuZm5bIG5hbWUgXSA9IGZ1bmN0aW9uKCBzZWxlY3RvciApIHsKCQl2YXIgZWxlbXMsCgkJCXJldCA9IFtdLAoJCQlpbnNlcnQgPSBqUXVlcnkoIHNlbGVjdG9yICksCgkJCWxhc3QgPSBpbnNlcnQubGVuZ3RoIC0gMSwKCQkJaSA9IDA7CgoJCWZvciAoIDsgaSA8PSBsYXN0OyBpKysgKSB7CgkJCWVsZW1zID0gaSA9PT0gbGFzdCA/IHRoaXMgOiB0aGlzLmNsb25lKCB0cnVlICk7CgkJCWpRdWVyeSggaW5zZXJ0WyBpIF0gKVsgb3JpZ2luYWwgXSggZWxlbXMgKTsKCgkJCS8vIFN1cHBvcnQ6IEFuZHJvaWQgPD00LjAgb25seSwgUGhhbnRvbUpTIDEgb25seQoJCQkvLyAuZ2V0KCkgYmVjYXVzZSBwdXNoLmFwcGx5KF8sIGFycmF5bGlrZSkgdGhyb3dzIG9uIGFuY2llbnQgV2ViS2l0CgkJCXB1c2guYXBwbHkoIHJldCwgZWxlbXMuZ2V0KCkgKTsKCQl9CgoJCXJldHVybiB0aGlzLnB1c2hTdGFjayggcmV0ICk7Cgl9Owp9ICk7CnZhciBybWFyZ2luID0gKCAvXm1hcmdpbi8gKTsKCnZhciBybnVtbm9ucHggPSBuZXcgUmVnRXhwKCAiXigiICsgcG51bSArICIpKD8hcHgpW2EteiVdKyQiLCAiaSIgKTsKCnZhciBnZXRTdHlsZXMgPSBmdW5jdGlvbiggZWxlbSApIHsKCgkJLy8gU3VwcG9ydDogSUUgPD0xMSBvbmx5LCBGaXJlZm94IDw9MzAgKCMxNTA5OCwgIzE0MTUwKQoJCS8vIElFIHRocm93cyBvbiBlbGVtZW50cyBjcmVhdGVkIGluIHBvcHVwcwoJCS8vIEZGIG1lYW53aGlsZSB0aHJvd3Mgb24gZnJhbWUgZWxlbWVudHMgdGhyb3VnaCAiZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZSIKCQl2YXIgdmlldyA9IGVsZW0ub3duZXJEb2N1bWVudC5kZWZhdWx0VmlldzsKCgkJaWYgKCAhdmlldyB8fCAhdmlldy5vcGVuZXIgKSB7CgkJCXZpZXcgPSB3aW5kb3c7CgkJfQoKCQlyZXR1cm4gdmlldy5nZXRDb21wdXRlZFN0eWxlKCBlbGVtICk7Cgl9OwoKCgooIGZ1bmN0aW9uKCkgewoKCS8vIEV4ZWN1dGluZyBib3RoIHBpeGVsUG9zaXRpb24gJiBib3hTaXppbmdSZWxpYWJsZSB0ZXN0cyByZXF1aXJlIG9ubHkgb25lIGxheW91dAoJLy8gc28gdGhleSdyZSBleGVjdXRlZCBhdCB0aGUgc2FtZSB0aW1lIHRvIHNhdmUgdGhlIHNlY29uZCBjb21wdXRhdGlvbi4KCWZ1bmN0aW9uIGNvbXB1dGVTdHlsZVRlc3RzKCkgewoKCQkvLyBUaGlzIGlzIGEgc2luZ2xldG9uLCB3ZSBuZWVkIHRvIGV4ZWN1dGUgaXQgb25seSBvbmNlCgkJaWYgKCAhZGl2ICkgewoJCQlyZXR1cm47CgkJfQoKCQlkaXYuc3R5bGUuY3NzVGV4dCA9CgkJCSJib3gtc2l6aW5nOmJvcmRlci1ib3g7IiArCgkJCSJwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmJsb2NrOyIgKwoJCQkibWFyZ2luOmF1dG87Ym9yZGVyOjFweDtwYWRkaW5nOjFweDsiICsKCQkJInRvcDoxJTt3aWR0aDo1MCUiOwoJCWRpdi5pbm5lckhUTUwgPSAiIjsKCQlkb2N1bWVudEVsZW1lbnQuYXBwZW5kQ2hpbGQoIGNvbnRhaW5lciApOwoKCQl2YXIgZGl2U3R5bGUgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZSggZGl2ICk7CgkJcGl4ZWxQb3NpdGlvblZhbCA9IGRpdlN0eWxlLnRvcCAhPT0gIjElIjsKCgkJLy8gU3VwcG9ydDogQW5kcm9pZCA0LjAgLSA0LjMgb25seSwgRmlyZWZveCA8PTMgLSA0NAoJCXJlbGlhYmxlTWFyZ2luTGVmdFZhbCA9IGRpdlN0eWxlLm1hcmdpbkxlZnQgPT09ICIycHgiOwoJCWJveFNpemluZ1JlbGlhYmxlVmFsID0gZGl2U3R5bGUud2lkdGggPT09ICI0cHgiOwoKCQkvLyBTdXBwb3J0OiBBbmRyb2lkIDQuMCAtIDQuMyBvbmx5CgkJLy8gU29tZSBzdHlsZXMgY29tZSBiYWNrIHdpdGggcGVyY2VudGFnZSB2YWx1ZXMsIGV2ZW4gdGhvdWdoIHRoZXkgc2hvdWxkbid0CgkJZGl2LnN0eWxlLm1hcmdpblJpZ2h0ID0gIjUwJSI7CgkJcGl4ZWxNYXJnaW5SaWdodFZhbCA9IGRpdlN0eWxlLm1hcmdpblJpZ2h0ID09PSAiNHB4IjsKCgkJZG9jdW1lbnRFbGVtZW50LnJlbW92ZUNoaWxkKCBjb250YWluZXIgKTsKCgkJLy8gTnVsbGlmeSB0aGUgZGl2IHNvIGl0IHdvdWxkbid0IGJlIHN0b3JlZCBpbiB0aGUgbWVtb3J5IGFuZAoJCS8vIGl0IHdpbGwgYWxzbyBiZSBhIHNpZ24gdGhhdCBjaGVja3MgYWxyZWFkeSBwZXJmb3JtZWQKCQlkaXYgPSBudWxsOwoJfQoKCXZhciBwaXhlbFBvc2l0aW9uVmFsLCBib3hTaXppbmdSZWxpYWJsZVZhbCwgcGl4ZWxNYXJnaW5SaWdodFZhbCwgcmVsaWFibGVNYXJnaW5MZWZ0VmFsLAoJCWNvbnRhaW5lciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoICJkaXYiICksCgkJZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCggImRpdiIgKTsKCgkvLyBGaW5pc2ggZWFybHkgaW4gbGltaXRlZCAobm9uLWJyb3dzZXIpIGVudmlyb25tZW50cwoJaWYgKCAhZGl2LnN0eWxlICkgewoJCXJldHVybjsKCX0KCgkvLyBTdXBwb3J0OiBJRSA8PTkgLSAxMSBvbmx5CgkvLyBTdHlsZSBvZiBjbG9uZWQgZWxlbWVudCBhZmZlY3RzIHNvdXJjZSBlbGVtZW50IGNsb25lZCAoIzg5MDgpCglkaXYuc3R5bGUuYmFja2dyb3VuZENsaXAgPSAiY29udGVudC1ib3giOwoJZGl2LmNsb25lTm9kZSggdHJ1ZSApLnN0eWxlLmJhY2tncm91bmRDbGlwID0gIiI7CglzdXBwb3J0LmNsZWFyQ2xvbmVTdHlsZSA9IGRpdi5zdHlsZS5iYWNrZ3JvdW5kQ2xpcCA9PT0gImNvbnRlbnQtYm94IjsKCgljb250YWluZXIuc3R5bGUuY3NzVGV4dCA9ICJib3JkZXI6MDt3aWR0aDo4cHg7aGVpZ2h0OjA7dG9wOjA7bGVmdDotOTk5OXB4OyIgKwoJCSJwYWRkaW5nOjA7bWFyZ2luLXRvcDoxcHg7cG9zaXRpb246YWJzb2x1dGUiOwoJY29udGFpbmVyLmFwcGVuZENoaWxkKCBkaXYgKTsKCglqUXVlcnkuZXh0ZW5kKCBzdXBwb3J0LCB7CgkJcGl4ZWxQb3NpdGlvbjogZnVuY3Rpb24oKSB7CgkJCWNvbXB1dGVTdHlsZVRlc3RzKCk7CgkJCXJldHVybiBwaXhlbFBvc2l0aW9uVmFsOwoJCX0sCgkJYm94U2l6aW5nUmVsaWFibGU6IGZ1bmN0aW9uKCkgewoJCQljb21wdXRlU3R5bGVUZXN0cygpOwoJCQlyZXR1cm4gYm94U2l6aW5nUmVsaWFibGVWYWw7CgkJfSwKCQlwaXhlbE1hcmdpblJpZ2h0OiBmdW5jdGlvbigpIHsKCQkJY29tcHV0ZVN0eWxlVGVzdHMoKTsKCQkJcmV0dXJuIHBpeGVsTWFyZ2luUmlnaHRWYWw7CgkJfSwKCQlyZWxpYWJsZU1hcmdpbkxlZnQ6IGZ1bmN0aW9uKCkgewoJCQljb21wdXRlU3R5bGVUZXN0cygpOwoJCQlyZXR1cm4gcmVsaWFibGVNYXJnaW5MZWZ0VmFsOwoJCX0KCX0gKTsKfSApKCk7CgoKZnVuY3Rpb24gY3VyQ1NTKCBlbGVtLCBuYW1lLCBjb21wdXRlZCApIHsKCXZhciB3aWR0aCwgbWluV2lkdGgsIG1heFdpZHRoLCByZXQsCgkJc3R5bGUgPSBlbGVtLnN0eWxlOwoKCWNvbXB1dGVkID0gY29tcHV0ZWQgfHwgZ2V0U3R5bGVzKCBlbGVtICk7CgoJLy8gU3VwcG9ydDogSUUgPD05IG9ubHkKCS8vIGdldFByb3BlcnR5VmFsdWUgaXMgb25seSBuZWVkZWQgZm9yIC5jc3MoJ2ZpbHRlcicpICgjMTI1MzcpCglpZiAoIGNvbXB1dGVkICkgewoJCXJldCA9IGNvbXB1dGVkLmdldFByb3BlcnR5VmFsdWUoIG5hbWUgKSB8fCBjb21wdXRlZFsgbmFtZSBdOwoKCQlpZiAoIHJldCA9PT0gIiIgJiYgIWpRdWVyeS5jb250YWlucyggZWxlbS5vd25lckRvY3VtZW50LCBlbGVtICkgKSB7CgkJCXJldCA9IGpRdWVyeS5zdHlsZSggZWxlbSwgbmFtZSApOwoJCX0KCgkJLy8gQSB0cmlidXRlIHRvIHRoZSAiYXdlc29tZSBoYWNrIGJ5IERlYW4gRWR3YXJkcyIKCQkvLyBBbmRyb2lkIEJyb3dzZXIgcmV0dXJucyBwZXJjZW50YWdlIGZvciBzb21lIHZhbHVlcywKCQkvLyBidXQgd2lkdGggc2VlbXMgdG8gYmUgcmVsaWFibHkgcGl4ZWxzLgoJCS8vIFRoaXMgaXMgYWdhaW5zdCB0aGUgQ1NTT00gZHJhZnQgc3BlYzoKCQkvLyBodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvY3Nzb20vI3Jlc29sdmVkLXZhbHVlcwoJCWlmICggIXN1cHBvcnQucGl4ZWxNYXJnaW5SaWdodCgpICYmIHJudW1ub25weC50ZXN0KCByZXQgKSAmJiBybWFyZ2luLnRlc3QoIG5hbWUgKSApIHsKCgkJCS8vIFJlbWVtYmVyIHRoZSBvcmlnaW5hbCB2YWx1ZXMKCQkJd2lkdGggPSBzdHlsZS53aWR0aDsKCQkJbWluV2lkdGggPSBzdHlsZS5taW5XaWR0aDsKCQkJbWF4V2lkdGggPSBzdHlsZS5tYXhXaWR0aDsKCgkJCS8vIFB1dCBpbiB0aGUgbmV3IHZhbHVlcyB0byBnZXQgYSBjb21wdXRlZCB2YWx1ZSBvdXQKCQkJc3R5bGUubWluV2lkdGggPSBzdHlsZS5tYXhXaWR0aCA9IHN0eWxlLndpZHRoID0gcmV0OwoJCQlyZXQgPSBjb21wdXRlZC53aWR0aDsKCgkJCS8vIFJldmVydCB0aGUgY2hhbmdlZCB2YWx1ZXMKCQkJc3R5bGUud2lkdGggPSB3aWR0aDsKCQkJc3R5bGUubWluV2lkdGggPSBtaW5XaWR0aDsKCQkJc3R5bGUubWF4V2lkdGggPSBtYXhXaWR0aDsKCQl9Cgl9CgoJcmV0dXJuIHJldCAhPT0gdW5kZWZpbmVkID8KCgkJLy8gU3VwcG9ydDogSUUgPD05IC0gMTEgb25seQoJCS8vIElFIHJldHVybnMgekluZGV4IHZhbHVlIGFzIGFuIGludGVnZXIuCgkJcmV0ICsgIiIgOgoJCXJldDsKfQoKCmZ1bmN0aW9uIGFkZEdldEhvb2tJZiggY29uZGl0aW9uRm4sIGhvb2tGbiApIHsKCgkvLyBEZWZpbmUgdGhlIGhvb2ssIHdlJ2xsIGNoZWNrIG9uIHRoZSBmaXJzdCBydW4gaWYgaXQncyByZWFsbHkgbmVlZGVkLgoJcmV0dXJuIHsKCQlnZXQ6IGZ1bmN0aW9uKCkgewoJCQlpZiAoIGNvbmRpdGlvbkZuKCkgKSB7CgoJCQkJLy8gSG9vayBub3QgbmVlZGVkIChvciBpdCdzIG5vdCBwb3NzaWJsZSB0byB1c2UgaXQgZHVlCgkJCQkvLyB0byBtaXNzaW5nIGRlcGVuZGVuY3kpLCByZW1vdmUgaXQuCgkJCQlkZWxldGUgdGhpcy5nZXQ7CgkJCQlyZXR1cm47CgkJCX0KCgkJCS8vIEhvb2sgbmVlZGVkOyByZWRlZmluZSBpdCBzbyB0aGF0IHRoZSBzdXBwb3J0IHRlc3QgaXMgbm90IGV4ZWN1dGVkIGFnYWluLgoJCQlyZXR1cm4gKCB0aGlzLmdldCA9IGhvb2tGbiApLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKTsKCQl9Cgl9Owp9CgoKdmFyCgoJLy8gU3dhcHBhYmxlIGlmIGRpc3BsYXkgaXMgbm9uZSBvciBzdGFydHMgd2l0aCB0YWJsZQoJLy8gZXhjZXB0ICJ0YWJsZSIsICJ0YWJsZS1jZWxsIiwgb3IgInRhYmxlLWNhcHRpb24iCgkvLyBTZWUgaGVyZSBmb3IgZGlzcGxheSB2YWx1ZXM6IGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvQ1NTL2Rpc3BsYXkKCXJkaXNwbGF5c3dhcCA9IC9eKG5vbmV8dGFibGUoPyEtY1tlYV0pLispLywKCWNzc1Nob3cgPSB7IHBvc2l0aW9uOiAiYWJzb2x1dGUiLCB2aXNpYmlsaXR5OiAiaGlkZGVuIiwgZGlzcGxheTogImJsb2NrIiB9LAoJY3NzTm9ybWFsVHJhbnNmb3JtID0gewoJCWxldHRlclNwYWNpbmc6ICIwIiwKCQlmb250V2VpZ2h0OiAiNDAwIgoJfSwKCgljc3NQcmVmaXhlcyA9IFsgIldlYmtpdCIsICJNb3oiLCAibXMiIF0sCgllbXB0eVN0eWxlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCggImRpdiIgKS5zdHlsZTsKCi8vIFJldHVybiBhIGNzcyBwcm9wZXJ0eSBtYXBwZWQgdG8gYSBwb3RlbnRpYWxseSB2ZW5kb3IgcHJlZml4ZWQgcHJvcGVydHkKZnVuY3Rpb24gdmVuZG9yUHJvcE5hbWUoIG5hbWUgKSB7CgoJLy8gU2hvcnRjdXQgZm9yIG5hbWVzIHRoYXQgYXJlIG5vdCB2ZW5kb3IgcHJlZml4ZWQKCWlmICggbmFtZSBpbiBlbXB0eVN0eWxlICkgewoJCXJldHVybiBuYW1lOwoJfQoKCS8vIENoZWNrIGZvciB2ZW5kb3IgcHJlZml4ZWQgbmFtZXMKCXZhciBjYXBOYW1lID0gbmFtZVsgMCBdLnRvVXBwZXJDYXNlKCkgKyBuYW1lLnNsaWNlKCAxICksCgkJaSA9IGNzc1ByZWZpeGVzLmxlbmd0aDsKCgl3aGlsZSAoIGktLSApIHsKCQluYW1lID0gY3NzUHJlZml4ZXNbIGkgXSArIGNhcE5hbWU7CgkJaWYgKCBuYW1lIGluIGVtcHR5U3R5bGUgKSB7CgkJCXJldHVybiBuYW1lOwoJCX0KCX0KfQoKZnVuY3Rpb24gc2V0UG9zaXRpdmVOdW1iZXIoIGVsZW0sIHZhbHVlLCBzdWJ0cmFjdCApIHsKCgkvLyBBbnkgcmVsYXRpdmUgKCsvLSkgdmFsdWVzIGhhdmUgYWxyZWFkeSBiZWVuCgkvLyBub3JtYWxpemVkIGF0IHRoaXMgcG9pbnQKCXZhciBtYXRjaGVzID0gcmNzc051bS5leGVjKCB2YWx1ZSApOwoJcmV0dXJuIG1hdGNoZXMgPwoKCQkvLyBHdWFyZCBhZ2FpbnN0IHVuZGVmaW5lZCAic3VidHJhY3QiLCBlLmcuLCB3aGVuIHVzZWQgYXMgaW4gY3NzSG9va3MKCQlNYXRoLm1heCggMCwgbWF0Y2hlc1sgMiBdIC0gKCBzdWJ0cmFjdCB8fCAwICkgKSArICggbWF0Y2hlc1sgMyBdIHx8ICJweCIgKSA6CgkJdmFsdWU7Cn0KCmZ1bmN0aW9uIGF1Z21lbnRXaWR0aE9ySGVpZ2h0KCBlbGVtLCBuYW1lLCBleHRyYSwgaXNCb3JkZXJCb3gsIHN0eWxlcyApIHsKCXZhciBpLAoJCXZhbCA9IDA7CgoJLy8gSWYgd2UgYWxyZWFkeSBoYXZlIHRoZSByaWdodCBtZWFzdXJlbWVudCwgYXZvaWQgYXVnbWVudGF0aW9uCglpZiAoIGV4dHJhID09PSAoIGlzQm9yZGVyQm94ID8gImJvcmRlciIgOiAiY29udGVudCIgKSApIHsKCQlpID0gNDsKCgkvLyBPdGhlcndpc2UgaW5pdGlhbGl6ZSBmb3IgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbCBwcm9wZXJ0aWVzCgl9IGVsc2UgewoJCWkgPSBuYW1lID09PSAid2lkdGgiID8gMSA6IDA7Cgl9CgoJZm9yICggOyBpIDwgNDsgaSArPSAyICkgewoKCQkvLyBCb3RoIGJveCBtb2RlbHMgZXhjbHVkZSBtYXJnaW4sIHNvIGFkZCBpdCBpZiB3ZSB3YW50IGl0CgkJaWYgKCBleHRyYSA9PT0gIm1hcmdpbiIgKSB7CgkJCXZhbCArPSBqUXVlcnkuY3NzKCBlbGVtLCBleHRyYSArIGNzc0V4cGFuZFsgaSBdLCB0cnVlLCBzdHlsZXMgKTsKCQl9CgoJCWlmICggaXNCb3JkZXJCb3ggKSB7CgoJCQkvLyBib3JkZXItYm94IGluY2x1ZGVzIHBhZGRpbmcsIHNvIHJlbW92ZSBpdCBpZiB3ZSB3YW50IGNvbnRlbnQKCQkJaWYgKCBleHRyYSA9PT0gImNvbnRlbnQiICkgewoJCQkJdmFsIC09IGpRdWVyeS5jc3MoIGVsZW0sICJwYWRkaW5nIiArIGNzc0V4cGFuZFsgaSBdLCB0cnVlLCBzdHlsZXMgKTsKCQkJfQoKCQkJLy8gQXQgdGhpcyBwb2ludCwgZXh0cmEgaXNuJ3QgYm9yZGVyIG5vciBtYXJnaW4sIHNvIHJlbW92ZSBib3JkZXIKCQkJaWYgKCBleHRyYSAhPT0gIm1hcmdpbiIgKSB7CgkJCQl2YWwgLT0galF1ZXJ5LmNzcyggZWxlbSwgImJvcmRlciIgKyBjc3NFeHBhbmRbIGkgXSArICJXaWR0aCIsIHRydWUsIHN0eWxlcyApOwoJCQl9CgkJfSBlbHNlIHsKCgkJCS8vIEF0IHRoaXMgcG9pbnQsIGV4dHJhIGlzbid0IGNvbnRlbnQsIHNvIGFkZCBwYWRkaW5nCgkJCXZhbCArPSBqUXVlcnkuY3NzKCBlbGVtLCAicGFkZGluZyIgKyBjc3NFeHBhbmRbIGkgXSwgdHJ1ZSwgc3R5bGVzICk7CgoJCQkvLyBBdCB0aGlzIHBvaW50LCBleHRyYSBpc24ndCBjb250ZW50IG5vciBwYWRkaW5nLCBzbyBhZGQgYm9yZGVyCgkJCWlmICggZXh0cmEgIT09ICJwYWRkaW5nIiApIHsKCQkJCXZhbCArPSBqUXVlcnkuY3NzKCBlbGVtLCAiYm9yZGVyIiArIGNzc0V4cGFuZFsgaSBdICsgIldpZHRoIiwgdHJ1ZSwgc3R5bGVzICk7CgkJCX0KCQl9Cgl9CgoJcmV0dXJuIHZhbDsKfQoKZnVuY3Rpb24gZ2V0V2lkdGhPckhlaWdodCggZWxlbSwgbmFtZSwgZXh0cmEgKSB7CgoJLy8gU3RhcnQgd2l0aCBvZmZzZXQgcHJvcGVydHksIHdoaWNoIGlzIGVxdWl2YWxlbnQgdG8gdGhlIGJvcmRlci1ib3ggdmFsdWUKCXZhciB2YWwsCgkJdmFsdWVJc0JvcmRlckJveCA9IHRydWUsCgkJc3R5bGVzID0gZ2V0U3R5bGVzKCBlbGVtICksCgkJaXNCb3JkZXJCb3ggPSBqUXVlcnkuY3NzKCBlbGVtLCAiYm94U2l6aW5nIiwgZmFsc2UsIHN0eWxlcyApID09PSAiYm9yZGVyLWJveCI7CgoJLy8gU3VwcG9ydDogSUUgPD0xMSBvbmx5CgkvLyBSdW5uaW5nIGdldEJvdW5kaW5nQ2xpZW50UmVjdCBvbiBhIGRpc2Nvbm5lY3RlZCBub2RlCgkvLyBpbiBJRSB0aHJvd3MgYW4gZXJyb3IuCglpZiAoIGVsZW0uZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGggKSB7CgkJdmFsID0gZWxlbS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKVsgbmFtZSBdOwoJfQoKCS8vIFNvbWUgbm9uLWh0bWwgZWxlbWVudHMgcmV0dXJuIHVuZGVmaW5lZCBmb3Igb2Zmc2V0V2lkdGgsIHNvIGNoZWNrIGZvciBudWxsL3VuZGVmaW5lZAoJLy8gc3ZnIC0gaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjQ5Mjg1CgkvLyBNYXRoTUwgLSBodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD00OTE2NjgKCWlmICggdmFsIDw9IDAgfHwgdmFsID09IG51bGwgKSB7CgoJCS8vIEZhbGwgYmFjayB0byBjb21wdXRlZCB0aGVuIHVuY29tcHV0ZWQgY3NzIGlmIG5lY2Vzc2FyeQoJCXZhbCA9IGN1ckNTUyggZWxlbSwgbmFtZSwgc3R5bGVzICk7CgkJaWYgKCB2YWwgPCAwIHx8IHZhbCA9PSBudWxsICkgewoJCQl2YWwgPSBlbGVtLnN0eWxlWyBuYW1lIF07CgkJfQoKCQkvLyBDb21wdXRlZCB1bml0IGlzIG5vdCBwaXhlbHMuIFN0b3AgaGVyZSBhbmQgcmV0dXJuLgoJCWlmICggcm51bW5vbnB4LnRlc3QoIHZhbCApICkgewoJCQlyZXR1cm4gdmFsOwoJCX0KCgkJLy8gQ2hlY2sgZm9yIHN0eWxlIGluIGNhc2UgYSBicm93c2VyIHdoaWNoIHJldHVybnMgdW5yZWxpYWJsZSB2YWx1ZXMKCQkvLyBmb3IgZ2V0Q29tcHV0ZWRTdHlsZSBzaWxlbnRseSBmYWxscyBiYWNrIHRvIHRoZSByZWxpYWJsZSBlbGVtLnN0eWxlCgkJdmFsdWVJc0JvcmRlckJveCA9IGlzQm9yZGVyQm94ICYmCgkJCSggc3VwcG9ydC5ib3hTaXppbmdSZWxpYWJsZSgpIHx8IHZhbCA9PT0gZWxlbS5zdHlsZVsgbmFtZSBdICk7CgoJCS8vIE5vcm1hbGl6ZSAiIiwgYXV0bywgYW5kIHByZXBhcmUgZm9yIGV4dHJhCgkJdmFsID0gcGFyc2VGbG9hdCggdmFsICkgfHwgMDsKCX0KCgkvLyBVc2UgdGhlIGFjdGl2ZSBib3gtc2l6aW5nIG1vZGVsIHRvIGFkZC9zdWJ0cmFjdCBpcnJlbGV2YW50IHN0eWxlcwoJcmV0dXJuICggdmFsICsKCQlhdWdtZW50V2lkdGhPckhlaWdodCgKCQkJZWxlbSwKCQkJbmFtZSwKCQkJZXh0cmEgfHwgKCBpc0JvcmRlckJveCA/ICJib3JkZXIiIDogImNvbnRlbnQiICksCgkJCXZhbHVlSXNCb3JkZXJCb3gsCgkJCXN0eWxlcwoJCSkKCSkgKyAicHgiOwp9CgpqUXVlcnkuZXh0ZW5kKCB7CgoJLy8gQWRkIGluIHN0eWxlIHByb3BlcnR5IGhvb2tzIGZvciBvdmVycmlkaW5nIHRoZSBkZWZhdWx0CgkvLyBiZWhhdmlvciBvZiBnZXR0aW5nIGFuZCBzZXR0aW5nIGEgc3R5bGUgcHJvcGVydHkKCWNzc0hvb2tzOiB7CgkJb3BhY2l0eTogewoJCQlnZXQ6IGZ1bmN0aW9uKCBlbGVtLCBjb21wdXRlZCApIHsKCQkJCWlmICggY29tcHV0ZWQgKSB7CgoJCQkJCS8vIFdlIHNob3VsZCBhbHdheXMgZ2V0IGEgbnVtYmVyIGJhY2sgZnJvbSBvcGFjaXR5CgkJCQkJdmFyIHJldCA9IGN1ckNTUyggZWxlbSwgIm9wYWNpdHkiICk7CgkJCQkJcmV0dXJuIHJldCA9PT0gIiIgPyAiMSIgOiByZXQ7CgkJCQl9CgkJCX0KCQl9Cgl9LAoKCS8vIERvbid0IGF1dG9tYXRpY2FsbHkgYWRkICJweCIgdG8gdGhlc2UgcG9zc2libHktdW5pdGxlc3MgcHJvcGVydGllcwoJY3NzTnVtYmVyOiB7CgkJImFuaW1hdGlvbkl0ZXJhdGlvbkNvdW50IjogdHJ1ZSwKCQkiY29sdW1uQ291bnQiOiB0cnVlLAoJCSJmaWxsT3BhY2l0eSI6IHRydWUsCgkJImZsZXhHcm93IjogdHJ1ZSwKCQkiZmxleFNocmluayI6IHRydWUsCgkJImZvbnRXZWlnaHQiOiB0cnVlLAoJCSJsaW5lSGVpZ2h0IjogdHJ1ZSwKCQkib3BhY2l0eSI6IHRydWUsCgkJIm9yZGVyIjogdHJ1ZSwKCQkib3JwaGFucyI6IHRydWUsCgkJIndpZG93cyI6IHRydWUsCgkJInpJbmRleCI6IHRydWUsCgkJInpvb20iOiB0cnVlCgl9LAoKCS8vIEFkZCBpbiBwcm9wZXJ0aWVzIHdob3NlIG5hbWVzIHlvdSB3aXNoIHRvIGZpeCBiZWZvcmUKCS8vIHNldHRpbmcgb3IgZ2V0dGluZyB0aGUgdmFsdWUKCWNzc1Byb3BzOiB7CgkJImZsb2F0IjogImNzc0Zsb2F0IgoJfSwKCgkvLyBHZXQgYW5kIHNldCB0aGUgc3R5bGUgcHJvcGVydHkgb24gYSBET00gTm9kZQoJc3R5bGU6IGZ1bmN0aW9uKCBlbGVtLCBuYW1lLCB2YWx1ZSwgZXh0cmEgKSB7CgoJCS8vIERvbid0IHNldCBzdHlsZXMgb24gdGV4dCBhbmQgY29tbWVudCBub2RlcwoJCWlmICggIWVsZW0gfHwgZWxlbS5ub2RlVHlwZSA9PT0gMyB8fCBlbGVtLm5vZGVUeXBlID09PSA4IHx8ICFlbGVtLnN0eWxlICkgewoJCQlyZXR1cm47CgkJfQoKCQkvLyBNYWtlIHN1cmUgdGhhdCB3ZSdyZSB3b3JraW5nIHdpdGggdGhlIHJpZ2h0IG5hbWUKCQl2YXIgcmV0LCB0eXBlLCBob29rcywKCQkJb3JpZ05hbWUgPSBqUXVlcnkuY2FtZWxDYXNlKCBuYW1lICksCgkJCXN0eWxlID0gZWxlbS5zdHlsZTsKCgkJbmFtZSA9IGpRdWVyeS5jc3NQcm9wc1sgb3JpZ05hbWUgXSB8fAoJCQkoIGpRdWVyeS5jc3NQcm9wc1sgb3JpZ05hbWUgXSA9IHZlbmRvclByb3BOYW1lKCBvcmlnTmFtZSApIHx8IG9yaWdOYW1lICk7CgoJCS8vIEdldHMgaG9vayBmb3IgdGhlIHByZWZpeGVkIHZlcnNpb24sIHRoZW4gdW5wcmVmaXhlZCB2ZXJzaW9uCgkJaG9va3MgPSBqUXVlcnkuY3NzSG9va3NbIG5hbWUgXSB8fCBqUXVlcnkuY3NzSG9va3NbIG9yaWdOYW1lIF07CgoJCS8vIENoZWNrIGlmIHdlJ3JlIHNldHRpbmcgYSB2YWx1ZQoJCWlmICggdmFsdWUgIT09IHVuZGVmaW5lZCApIHsKCQkJdHlwZSA9IHR5cGVvZiB2YWx1ZTsKCgkJCS8vIENvbnZlcnQgIis9IiBvciAiLT0iIHRvIHJlbGF0aXZlIG51bWJlcnMgKCM3MzQ1KQoJCQlpZiAoIHR5cGUgPT09ICJzdHJpbmciICYmICggcmV0ID0gcmNzc051bS5leGVjKCB2YWx1ZSApICkgJiYgcmV0WyAxIF0gKSB7CgkJCQl2YWx1ZSA9IGFkanVzdENTUyggZWxlbSwgbmFtZSwgcmV0ICk7CgoJCQkJLy8gRml4ZXMgYnVnICM5MjM3CgkJCQl0eXBlID0gIm51bWJlciI7CgkJCX0KCgkJCS8vIE1ha2Ugc3VyZSB0aGF0IG51bGwgYW5kIE5hTiB2YWx1ZXMgYXJlbid0IHNldCAoIzcxMTYpCgkJCWlmICggdmFsdWUgPT0gbnVsbCB8fCB2YWx1ZSAhPT0gdmFsdWUgKSB7CgkJCQlyZXR1cm47CgkJCX0KCgkJCS8vIElmIGEgbnVtYmVyIHdhcyBwYXNzZWQgaW4sIGFkZCB0aGUgdW5pdCAoZXhjZXB0IGZvciBjZXJ0YWluIENTUyBwcm9wZXJ0aWVzKQoJCQlpZiAoIHR5cGUgPT09ICJudW1iZXIiICkgewoJCQkJdmFsdWUgKz0gcmV0ICYmIHJldFsgMyBdIHx8ICggalF1ZXJ5LmNzc051bWJlclsgb3JpZ05hbWUgXSA/ICIiIDogInB4IiApOwoJCQl9CgoJCQkvLyBiYWNrZ3JvdW5kLSogcHJvcHMgYWZmZWN0IG9yaWdpbmFsIGNsb25lJ3MgdmFsdWVzCgkJCWlmICggIXN1cHBvcnQuY2xlYXJDbG9uZVN0eWxlICYmIHZhbHVlID09PSAiIiAmJiBuYW1lLmluZGV4T2YoICJiYWNrZ3JvdW5kIiApID09PSAwICkgewoJCQkJc3R5bGVbIG5hbWUgXSA9ICJpbmhlcml0IjsKCQkJfQoKCQkJLy8gSWYgYSBob29rIHdhcyBwcm92aWRlZCwgdXNlIHRoYXQgdmFsdWUsIG90aGVyd2lzZSBqdXN0IHNldCB0aGUgc3BlY2lmaWVkIHZhbHVlCgkJCWlmICggIWhvb2tzIHx8ICEoICJzZXQiIGluIGhvb2tzICkgfHwKCQkJCSggdmFsdWUgPSBob29rcy5zZXQoIGVsZW0sIHZhbHVlLCBleHRyYSApICkgIT09IHVuZGVmaW5lZCApIHsKCgkJCQlzdHlsZVsgbmFtZSBdID0gdmFsdWU7CgkJCX0KCgkJfSBlbHNlIHsKCgkJCS8vIElmIGEgaG9vayB3YXMgcHJvdmlkZWQgZ2V0IHRoZSBub24tY29tcHV0ZWQgdmFsdWUgZnJvbSB0aGVyZQoJCQlpZiAoIGhvb2tzICYmICJnZXQiIGluIGhvb2tzICYmCgkJCQkoIHJldCA9IGhvb2tzLmdldCggZWxlbSwgZmFsc2UsIGV4dHJhICkgKSAhPT0gdW5kZWZpbmVkICkgewoKCQkJCXJldHVybiByZXQ7CgkJCX0KCgkJCS8vIE90aGVyd2lzZSBqdXN0IGdldCB0aGUgdmFsdWUgZnJvbSB0aGUgc3R5bGUgb2JqZWN0CgkJCXJldHVybiBzdHlsZVsgbmFtZSBdOwoJCX0KCX0sCgoJY3NzOiBmdW5jdGlvbiggZWxlbSwgbmFtZSwgZXh0cmEsIHN0eWxlcyApIHsKCQl2YXIgdmFsLCBudW0sIGhvb2tzLAoJCQlvcmlnTmFtZSA9IGpRdWVyeS5jYW1lbENhc2UoIG5hbWUgKTsKCgkJLy8gTWFrZSBzdXJlIHRoYXQgd2UncmUgd29ya2luZyB3aXRoIHRoZSByaWdodCBuYW1lCgkJbmFtZSA9IGpRdWVyeS5jc3NQcm9wc1sgb3JpZ05hbWUgXSB8fAoJCQkoIGpRdWVyeS5jc3NQcm9wc1sgb3JpZ05hbWUgXSA9IHZlbmRvclByb3BOYW1lKCBvcmlnTmFtZSApIHx8IG9yaWdOYW1lICk7CgoJCS8vIFRyeSBwcmVmaXhlZCBuYW1lIGZvbGxvd2VkIGJ5IHRoZSB1bnByZWZpeGVkIG5hbWUKCQlob29rcyA9IGpRdWVyeS5jc3NIb29rc1sgbmFtZSBdIHx8IGpRdWVyeS5jc3NIb29rc1sgb3JpZ05hbWUgXTsKCgkJLy8gSWYgYSBob29rIHdhcyBwcm92aWRlZCBnZXQgdGhlIGNvbXB1dGVkIHZhbHVlIGZyb20gdGhlcmUKCQlpZiAoIGhvb2tzICYmICJnZXQiIGluIGhvb2tzICkgewoJCQl2YWwgPSBob29rcy5nZXQoIGVsZW0sIHRydWUsIGV4dHJhICk7CgkJfQoKCQkvLyBPdGhlcndpc2UsIGlmIGEgd2F5IHRvIGdldCB0aGUgY29tcHV0ZWQgdmFsdWUgZXhpc3RzLCB1c2UgdGhhdAoJCWlmICggdmFsID09PSB1bmRlZmluZWQgKSB7CgkJCXZhbCA9IGN1ckNTUyggZWxlbSwgbmFtZSwgc3R5bGVzICk7CgkJfQoKCQkvLyBDb252ZXJ0ICJub3JtYWwiIHRvIGNvbXB1dGVkIHZhbHVlCgkJaWYgKCB2YWwgPT09ICJub3JtYWwiICYmIG5hbWUgaW4gY3NzTm9ybWFsVHJhbnNmb3JtICkgewoJCQl2YWwgPSBjc3NOb3JtYWxUcmFuc2Zvcm1bIG5hbWUgXTsKCQl9CgoJCS8vIE1ha2UgbnVtZXJpYyBpZiBmb3JjZWQgb3IgYSBxdWFsaWZpZXIgd2FzIHByb3ZpZGVkIGFuZCB2YWwgbG9va3MgbnVtZXJpYwoJCWlmICggZXh0cmEgPT09ICIiIHx8IGV4dHJhICkgewoJCQludW0gPSBwYXJzZUZsb2F0KCB2YWwgKTsKCQkJcmV0dXJuIGV4dHJhID09PSB0cnVlIHx8IGlzRmluaXRlKCBudW0gKSA/IG51bSB8fCAwIDogdmFsOwoJCX0KCQlyZXR1cm4gdmFsOwoJfQp9ICk7CgpqUXVlcnkuZWFjaCggWyAiaGVpZ2h0IiwgIndpZHRoIiBdLCBmdW5jdGlvbiggaSwgbmFtZSApIHsKCWpRdWVyeS5jc3NIb29rc1sgbmFtZSBdID0gewoJCWdldDogZnVuY3Rpb24oIGVsZW0sIGNvbXB1dGVkLCBleHRyYSApIHsKCQkJaWYgKCBjb21wdXRlZCApIHsKCgkJCQkvLyBDZXJ0YWluIGVsZW1lbnRzIGNhbiBoYXZlIGRpbWVuc2lvbiBpbmZvIGlmIHdlIGludmlzaWJseSBzaG93IHRoZW0KCQkJCS8vIGJ1dCBpdCBtdXN0IGhhdmUgYSBjdXJyZW50IGRpc3BsYXkgc3R5bGUgdGhhdCB3b3VsZCBiZW5lZml0CgkJCQlyZXR1cm4gcmRpc3BsYXlzd2FwLnRlc3QoIGpRdWVyeS5jc3MoIGVsZW0sICJkaXNwbGF5IiApICkgJiYKCgkJCQkJLy8gU3VwcG9ydDogU2FmYXJpIDgrCgkJCQkJLy8gVGFibGUgY29sdW1ucyBpbiBTYWZhcmkgaGF2ZSBub24temVybyBvZmZzZXRXaWR0aCAmIHplcm8KCQkJCQkvLyBnZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCB1bmxlc3MgZGlzcGxheSBpcyBjaGFuZ2VkLgoJCQkJCS8vIFN1cHBvcnQ6IElFIDw9MTEgb25seQoJCQkJCS8vIFJ1bm5pbmcgZ2V0Qm91bmRpbmdDbGllbnRSZWN0IG9uIGEgZGlzY29ubmVjdGVkIG5vZGUKCQkJCQkvLyBpbiBJRSB0aHJvd3MgYW4gZXJyb3IuCgkJCQkJKCAhZWxlbS5nZXRDbGllbnRSZWN0cygpLmxlbmd0aCB8fCAhZWxlbS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aCApID8KCQkJCQkJc3dhcCggZWxlbSwgY3NzU2hvdywgZnVuY3Rpb24oKSB7CgkJCQkJCQlyZXR1cm4gZ2V0V2lkdGhPckhlaWdodCggZWxlbSwgbmFtZSwgZXh0cmEgKTsKCQkJCQkJfSApIDoKCQkJCQkJZ2V0V2lkdGhPckhlaWdodCggZWxlbSwgbmFtZSwgZXh0cmEgKTsKCQkJfQoJCX0sCgoJCXNldDogZnVuY3Rpb24oIGVsZW0sIHZhbHVlLCBleHRyYSApIHsKCQkJdmFyIG1hdGNoZXMsCgkJCQlzdHlsZXMgPSBleHRyYSAmJiBnZXRTdHlsZXMoIGVsZW0gKSwKCQkJCXN1YnRyYWN0ID0gZXh0cmEgJiYgYXVnbWVudFdpZHRoT3JIZWlnaHQoCgkJCQkJZWxlbSwKCQkJCQluYW1lLAoJCQkJCWV4dHJhLAoJCQkJCWpRdWVyeS5jc3MoIGVsZW0sICJib3hTaXppbmciLCBmYWxzZSwgc3R5bGVzICkgPT09ICJib3JkZXItYm94IiwKCQkJCQlzdHlsZXMKCQkJCSk7CgoJCQkvLyBDb252ZXJ0IHRvIHBpeGVscyBpZiB2YWx1ZSBhZGp1c3RtZW50IGlzIG5lZWRlZAoJCQlpZiAoIHN1YnRyYWN0ICYmICggbWF0Y2hlcyA9IHJjc3NOdW0uZXhlYyggdmFsdWUgKSApICYmCgkJCQkoIG1hdGNoZXNbIDMgXSB8fCAicHgiICkgIT09ICJweCIgKSB7CgoJCQkJZWxlbS5zdHlsZVsgbmFtZSBdID0gdmFsdWU7CgkJCQl2YWx1ZSA9IGpRdWVyeS5jc3MoIGVsZW0sIG5hbWUgKTsKCQkJfQoKCQkJcmV0dXJuIHNldFBvc2l0aXZlTnVtYmVyKCBlbGVtLCB2YWx1ZSwgc3VidHJhY3QgKTsKCQl9Cgl9Owp9ICk7CgpqUXVlcnkuY3NzSG9va3MubWFyZ2luTGVmdCA9IGFkZEdldEhvb2tJZiggc3VwcG9ydC5yZWxpYWJsZU1hcmdpbkxlZnQsCglmdW5jdGlvbiggZWxlbSwgY29tcHV0ZWQgKSB7CgkJaWYgKCBjb21wdXRlZCApIHsKCQkJcmV0dXJuICggcGFyc2VGbG9hdCggY3VyQ1NTKCBlbGVtLCAibWFyZ2luTGVmdCIgKSApIHx8CgkJCQllbGVtLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmxlZnQgLQoJCQkJCXN3YXAoIGVsZW0sIHsgbWFyZ2luTGVmdDogMCB9LCBmdW5jdGlvbigpIHsKCQkJCQkJcmV0dXJuIGVsZW0uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkubGVmdDsKCQkJCQl9ICkKCQkJCSkgKyAicHgiOwoJCX0KCX0KKTsKCi8vIFRoZXNlIGhvb2tzIGFyZSB1c2VkIGJ5IGFuaW1hdGUgdG8gZXhwYW5kIHByb3BlcnRpZXMKalF1ZXJ5LmVhY2goIHsKCW1hcmdpbjogIiIsCglwYWRkaW5nOiAiIiwKCWJvcmRlcjogIldpZHRoIgp9LCBmdW5jdGlvbiggcHJlZml4LCBzdWZmaXggKSB7CglqUXVlcnkuY3NzSG9va3NbIHByZWZpeCArIHN1ZmZpeCBdID0gewoJCWV4cGFuZDogZnVuY3Rpb24oIHZhbHVlICkgewoJCQl2YXIgaSA9IDAsCgkJCQlleHBhbmRlZCA9IHt9LAoKCQkJCS8vIEFzc3VtZXMgYSBzaW5nbGUgbnVtYmVyIGlmIG5vdCBhIHN0cmluZwoJCQkJcGFydHMgPSB0eXBlb2YgdmFsdWUgPT09ICJzdHJpbmciID8gdmFsdWUuc3BsaXQoICIgIiApIDogWyB2YWx1ZSBdOwoKCQkJZm9yICggOyBpIDwgNDsgaSsrICkgewoJCQkJZXhwYW5kZWRbIHByZWZpeCArIGNzc0V4cGFuZFsgaSBdICsgc3VmZml4IF0gPQoJCQkJCXBhcnRzWyBpIF0gfHwgcGFydHNbIGkgLSAyIF0gfHwgcGFydHNbIDAgXTsKCQkJfQoKCQkJcmV0dXJuIGV4cGFuZGVkOwoJCX0KCX07CgoJaWYgKCAhcm1hcmdpbi50ZXN0KCBwcmVmaXggKSApIHsKCQlqUXVlcnkuY3NzSG9va3NbIHByZWZpeCArIHN1ZmZpeCBdLnNldCA9IHNldFBvc2l0aXZlTnVtYmVyOwoJfQp9ICk7CgpqUXVlcnkuZm4uZXh0ZW5kKCB7Cgljc3M6IGZ1bmN0aW9uKCBuYW1lLCB2YWx1ZSApIHsKCQlyZXR1cm4gYWNjZXNzKCB0aGlzLCBmdW5jdGlvbiggZWxlbSwgbmFtZSwgdmFsdWUgKSB7CgkJCXZhciBzdHlsZXMsIGxlbiwKCQkJCW1hcCA9IHt9LAoJCQkJaSA9IDA7CgoJCQlpZiAoIGpRdWVyeS5pc0FycmF5KCBuYW1lICkgKSB7CgkJCQlzdHlsZXMgPSBnZXRTdHlsZXMoIGVsZW0gKTsKCQkJCWxlbiA9IG5hbWUubGVuZ3RoOwoKCQkJCWZvciAoIDsgaSA8IGxlbjsgaSsrICkgewoJCQkJCW1hcFsgbmFtZVsgaSBdIF0gPSBqUXVlcnkuY3NzKCBlbGVtLCBuYW1lWyBpIF0sIGZhbHNlLCBzdHlsZXMgKTsKCQkJCX0KCgkJCQlyZXR1cm4gbWFwOwoJCQl9CgoJCQlyZXR1cm4gdmFsdWUgIT09IHVuZGVmaW5lZCA/CgkJCQlqUXVlcnkuc3R5bGUoIGVsZW0sIG5hbWUsIHZhbHVlICkgOgoJCQkJalF1ZXJ5LmNzcyggZWxlbSwgbmFtZSApOwoJCX0sIG5hbWUsIHZhbHVlLCBhcmd1bWVudHMubGVuZ3RoID4gMSApOwoJfQp9ICk7CgoKZnVuY3Rpb24gVHdlZW4oIGVsZW0sIG9wdGlvbnMsIHByb3AsIGVuZCwgZWFzaW5nICkgewoJcmV0dXJuIG5ldyBUd2Vlbi5wcm90b3R5cGUuaW5pdCggZWxlbSwgb3B0aW9ucywgcHJvcCwgZW5kLCBlYXNpbmcgKTsKfQpqUXVlcnkuVHdlZW4gPSBUd2VlbjsKClR3ZWVuLnByb3RvdHlwZSA9IHsKCWNvbnN0cnVjdG9yOiBUd2VlbiwKCWluaXQ6IGZ1bmN0aW9uKCBlbGVtLCBvcHRpb25zLCBwcm9wLCBlbmQsIGVhc2luZywgdW5pdCApIHsKCQl0aGlzLmVsZW0gPSBlbGVtOwoJCXRoaXMucHJvcCA9IHByb3A7CgkJdGhpcy5lYXNpbmcgPSBlYXNpbmcgfHwgalF1ZXJ5LmVhc2luZy5fZGVmYXVsdDsKCQl0aGlzLm9wdGlvbnMgPSBvcHRpb25zOwoJCXRoaXMuc3RhcnQgPSB0aGlzLm5vdyA9IHRoaXMuY3VyKCk7CgkJdGhpcy5lbmQgPSBlbmQ7CgkJdGhpcy51bml0ID0gdW5pdCB8fCAoIGpRdWVyeS5jc3NOdW1iZXJbIHByb3AgXSA/ICIiIDogInB4IiApOwoJfSwKCWN1cjogZnVuY3Rpb24oKSB7CgkJdmFyIGhvb2tzID0gVHdlZW4ucHJvcEhvb2tzWyB0aGlzLnByb3AgXTsKCgkJcmV0dXJuIGhvb2tzICYmIGhvb2tzLmdldCA/CgkJCWhvb2tzLmdldCggdGhpcyApIDoKCQkJVHdlZW4ucHJvcEhvb2tzLl9kZWZhdWx0LmdldCggdGhpcyApOwoJfSwKCXJ1bjogZnVuY3Rpb24oIHBlcmNlbnQgKSB7CgkJdmFyIGVhc2VkLAoJCQlob29rcyA9IFR3ZWVuLnByb3BIb29rc1sgdGhpcy5wcm9wIF07CgoJCWlmICggdGhpcy5vcHRpb25zLmR1cmF0aW9uICkgewoJCQl0aGlzLnBvcyA9IGVhc2VkID0galF1ZXJ5LmVhc2luZ1sgdGhpcy5lYXNpbmcgXSgKCQkJCXBlcmNlbnQsIHRoaXMub3B0aW9ucy5kdXJhdGlvbiAqIHBlcmNlbnQsIDAsIDEsIHRoaXMub3B0aW9ucy5kdXJhdGlvbgoJCQkpOwoJCX0gZWxzZSB7CgkJCXRoaXMucG9zID0gZWFzZWQgPSBwZXJjZW50OwoJCX0KCQl0aGlzLm5vdyA9ICggdGhpcy5lbmQgLSB0aGlzLnN0YXJ0ICkgKiBlYXNlZCArIHRoaXMuc3RhcnQ7CgoJCWlmICggdGhpcy5vcHRpb25zLnN0ZXAgKSB7CgkJCXRoaXMub3B0aW9ucy5zdGVwLmNhbGwoIHRoaXMuZWxlbSwgdGhpcy5ub3csIHRoaXMgKTsKCQl9CgoJCWlmICggaG9va3MgJiYgaG9va3Muc2V0ICkgewoJCQlob29rcy5zZXQoIHRoaXMgKTsKCQl9IGVsc2UgewoJCQlUd2Vlbi5wcm9wSG9va3MuX2RlZmF1bHQuc2V0KCB0aGlzICk7CgkJfQoJCXJldHVybiB0aGlzOwoJfQp9OwoKVHdlZW4ucHJvdG90eXBlLmluaXQucHJvdG90eXBlID0gVHdlZW4ucHJvdG90eXBlOwoKVHdlZW4ucHJvcEhvb2tzID0gewoJX2RlZmF1bHQ6IHsKCQlnZXQ6IGZ1bmN0aW9uKCB0d2VlbiApIHsKCQkJdmFyIHJlc3VsdDsKCgkJCS8vIFVzZSBhIHByb3BlcnR5IG9uIHRoZSBlbGVtZW50IGRpcmVjdGx5IHdoZW4gaXQgaXMgbm90IGEgRE9NIGVsZW1lbnQsCgkJCS8vIG9yIHdoZW4gdGhlcmUgaXMgbm8gbWF0Y2hpbmcgc3R5bGUgcHJvcGVydHkgdGhhdCBleGlzdHMuCgkJCWlmICggdHdlZW4uZWxlbS5ub2RlVHlwZSAhPT0gMSB8fAoJCQkJdHdlZW4uZWxlbVsgdHdlZW4ucHJvcCBdICE9IG51bGwgJiYgdHdlZW4uZWxlbS5zdHlsZVsgdHdlZW4ucHJvcCBdID09IG51bGwgKSB7CgkJCQlyZXR1cm4gdHdlZW4uZWxlbVsgdHdlZW4ucHJvcCBdOwoJCQl9CgoJCQkvLyBQYXNzaW5nIGFuIGVtcHR5IHN0cmluZyBhcyBhIDNyZCBwYXJhbWV0ZXIgdG8gLmNzcyB3aWxsIGF1dG9tYXRpY2FsbHkKCQkJLy8gYXR0ZW1wdCBhIHBhcnNlRmxvYXQgYW5kIGZhbGxiYWNrIHRvIGEgc3RyaW5nIGlmIHRoZSBwYXJzZSBmYWlscy4KCQkJLy8gU2ltcGxlIHZhbHVlcyBzdWNoIGFzICIxMHB4IiBhcmUgcGFyc2VkIHRvIEZsb2F0OwoJCQkvLyBjb21wbGV4IHZhbHVlcyBzdWNoIGFzICJyb3RhdGUoMXJhZCkiIGFyZSByZXR1cm5lZCBhcy1pcy4KCQkJcmVzdWx0ID0galF1ZXJ5LmNzcyggdHdlZW4uZWxlbSwgdHdlZW4ucHJvcCwgIiIgKTsKCgkJCS8vIEVtcHR5IHN0cmluZ3MsIG51bGwsIHVuZGVmaW5lZCBhbmQgImF1dG8iIGFyZSBjb252ZXJ0ZWQgdG8gMC4KCQkJcmV0dXJuICFyZXN1bHQgfHwgcmVzdWx0ID09PSAiYXV0byIgPyAwIDogcmVzdWx0OwoJCX0sCgkJc2V0OiBmdW5jdGlvbiggdHdlZW4gKSB7CgoJCQkvLyBVc2Ugc3RlcCBob29rIGZvciBiYWNrIGNvbXBhdC4KCQkJLy8gVXNlIGNzc0hvb2sgaWYgaXRzIHRoZXJlLgoJCQkvLyBVc2UgLnN0eWxlIGlmIGF2YWlsYWJsZSBhbmQgdXNlIHBsYWluIHByb3BlcnRpZXMgd2hlcmUgYXZhaWxhYmxlLgoJCQlpZiAoIGpRdWVyeS5meC5zdGVwWyB0d2Vlbi5wcm9wIF0gKSB7CgkJCQlqUXVlcnkuZnguc3RlcFsgdHdlZW4ucHJvcCBdKCB0d2VlbiApOwoJCQl9IGVsc2UgaWYgKCB0d2Vlbi5lbGVtLm5vZGVUeXBlID09PSAxICYmCgkJCQkoIHR3ZWVuLmVsZW0uc3R5bGVbIGpRdWVyeS5jc3NQcm9wc1sgdHdlZW4ucHJvcCBdIF0gIT0gbnVsbCB8fAoJCQkJCWpRdWVyeS5jc3NIb29rc1sgdHdlZW4ucHJvcCBdICkgKSB7CgkJCQlqUXVlcnkuc3R5bGUoIHR3ZWVuLmVsZW0sIHR3ZWVuLnByb3AsIHR3ZWVuLm5vdyArIHR3ZWVuLnVuaXQgKTsKCQkJfSBlbHNlIHsKCQkJCXR3ZWVuLmVsZW1bIHR3ZWVuLnByb3AgXSA9IHR3ZWVuLm5vdzsKCQkJfQoJCX0KCX0KfTsKCi8vIFN1cHBvcnQ6IElFIDw9OSBvbmx5Ci8vIFBhbmljIGJhc2VkIGFwcHJvYWNoIHRvIHNldHRpbmcgdGhpbmdzIG9uIGRpc2Nvbm5lY3RlZCBub2RlcwpUd2Vlbi5wcm9wSG9va3Muc2Nyb2xsVG9wID0gVHdlZW4ucHJvcEhvb2tzLnNjcm9sbExlZnQgPSB7CglzZXQ6IGZ1bmN0aW9uKCB0d2VlbiApIHsKCQlpZiAoIHR3ZWVuLmVsZW0ubm9kZVR5cGUgJiYgdHdlZW4uZWxlbS5wYXJlbnROb2RlICkgewoJCQl0d2Vlbi5lbGVtWyB0d2Vlbi5wcm9wIF0gPSB0d2Vlbi5ub3c7CgkJfQoJfQp9OwoKalF1ZXJ5LmVhc2luZyA9IHsKCWxpbmVhcjogZnVuY3Rpb24oIHAgKSB7CgkJcmV0dXJuIHA7Cgl9LAoJc3dpbmc6IGZ1bmN0aW9uKCBwICkgewoJCXJldHVybiAwLjUgLSBNYXRoLmNvcyggcCAqIE1hdGguUEkgKSAvIDI7Cgl9LAoJX2RlZmF1bHQ6ICJzd2luZyIKfTsKCmpRdWVyeS5meCA9IFR3ZWVuLnByb3RvdHlwZS5pbml0OwoKLy8gQmFjayBjb21wYXQgPDEuOCBleHRlbnNpb24gcG9pbnQKalF1ZXJ5LmZ4LnN0ZXAgPSB7fTsKCgoKCnZhcgoJZnhOb3csIHRpbWVySWQsCglyZnh0eXBlcyA9IC9eKD86dG9nZ2xlfHNob3d8aGlkZSkkLywKCXJydW4gPSAvcXVldWVIb29rcyQvOwoKZnVuY3Rpb24gcmFmKCkgewoJaWYgKCB0aW1lcklkICkgewoJCXdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoIHJhZiApOwoJCWpRdWVyeS5meC50aWNrKCk7Cgl9Cn0KCi8vIEFuaW1hdGlvbnMgY3JlYXRlZCBzeW5jaHJvbm91c2x5IHdpbGwgcnVuIHN5bmNocm9ub3VzbHkKZnVuY3Rpb24gY3JlYXRlRnhOb3coKSB7Cgl3aW5kb3cuc2V0VGltZW91dCggZnVuY3Rpb24oKSB7CgkJZnhOb3cgPSB1bmRlZmluZWQ7Cgl9ICk7CglyZXR1cm4gKCBmeE5vdyA9IGpRdWVyeS5ub3coKSApOwp9CgovLyBHZW5lcmF0ZSBwYXJhbWV0ZXJzIHRvIGNyZWF0ZSBhIHN0YW5kYXJkIGFuaW1hdGlvbgpmdW5jdGlvbiBnZW5GeCggdHlwZSwgaW5jbHVkZVdpZHRoICkgewoJdmFyIHdoaWNoLAoJCWkgPSAwLAoJCWF0dHJzID0geyBoZWlnaHQ6IHR5cGUgfTsKCgkvLyBJZiB3ZSBpbmNsdWRlIHdpZHRoLCBzdGVwIHZhbHVlIGlzIDEgdG8gZG8gYWxsIGNzc0V4cGFuZCB2YWx1ZXMsCgkvLyBvdGhlcndpc2Ugc3RlcCB2YWx1ZSBpcyAyIHRvIHNraXAgb3ZlciBMZWZ0IGFuZCBSaWdodAoJaW5jbHVkZVdpZHRoID0gaW5jbHVkZVdpZHRoID8gMSA6IDA7Cglmb3IgKCA7IGkgPCA0OyBpICs9IDIgLSBpbmNsdWRlV2lkdGggKSB7CgkJd2hpY2ggPSBjc3NFeHBhbmRbIGkgXTsKCQlhdHRyc1sgIm1hcmdpbiIgKyB3aGljaCBdID0gYXR0cnNbICJwYWRkaW5nIiArIHdoaWNoIF0gPSB0eXBlOwoJfQoKCWlmICggaW5jbHVkZVdpZHRoICkgewoJCWF0dHJzLm9wYWNpdHkgPSBhdHRycy53aWR0aCA9IHR5cGU7Cgl9CgoJcmV0dXJuIGF0dHJzOwp9CgpmdW5jdGlvbiBjcmVhdGVUd2VlbiggdmFsdWUsIHByb3AsIGFuaW1hdGlvbiApIHsKCXZhciB0d2VlbiwKCQljb2xsZWN0aW9uID0gKCBBbmltYXRpb24udHdlZW5lcnNbIHByb3AgXSB8fCBbXSApLmNvbmNhdCggQW5pbWF0aW9uLnR3ZWVuZXJzWyAiKiIgXSApLAoJCWluZGV4ID0gMCwKCQlsZW5ndGggPSBjb2xsZWN0aW9uLmxlbmd0aDsKCWZvciAoIDsgaW5kZXggPCBsZW5ndGg7IGluZGV4KysgKSB7CgkJaWYgKCAoIHR3ZWVuID0gY29sbGVjdGlvblsgaW5kZXggXS5jYWxsKCBhbmltYXRpb24sIHByb3AsIHZhbHVlICkgKSApIHsKCgkJCS8vIFdlJ3JlIGRvbmUgd2l0aCB0aGlzIHByb3BlcnR5CgkJCXJldHVybiB0d2VlbjsKCQl9Cgl9Cn0KCmZ1bmN0aW9uIGRlZmF1bHRQcmVmaWx0ZXIoIGVsZW0sIHByb3BzLCBvcHRzICkgewoJdmFyIHByb3AsIHZhbHVlLCB0b2dnbGUsIGhvb2tzLCBvbGRmaXJlLCBwcm9wVHdlZW4sIHJlc3RvcmVEaXNwbGF5LCBkaXNwbGF5LAoJCWlzQm94ID0gIndpZHRoIiBpbiBwcm9wcyB8fCAiaGVpZ2h0IiBpbiBwcm9wcywKCQlhbmltID0gdGhpcywKCQlvcmlnID0ge30sCgkJc3R5bGUgPSBlbGVtLnN0eWxlLAoJCWhpZGRlbiA9IGVsZW0ubm9kZVR5cGUgJiYgaXNIaWRkZW5XaXRoaW5UcmVlKCBlbGVtICksCgkJZGF0YVNob3cgPSBkYXRhUHJpdi5nZXQoIGVsZW0sICJmeHNob3ciICk7CgoJLy8gUXVldWUtc2tpcHBpbmcgYW5pbWF0aW9ucyBoaWphY2sgdGhlIGZ4IGhvb2tzCglpZiAoICFvcHRzLnF1ZXVlICkgewoJCWhvb2tzID0galF1ZXJ5Ll9xdWV1ZUhvb2tzKCBlbGVtLCAiZngiICk7CgkJaWYgKCBob29rcy51bnF1ZXVlZCA9PSBudWxsICkgewoJCQlob29rcy51bnF1ZXVlZCA9IDA7CgkJCW9sZGZpcmUgPSBob29rcy5lbXB0eS5maXJlOwoJCQlob29rcy5lbXB0eS5maXJlID0gZnVuY3Rpb24oKSB7CgkJCQlpZiAoICFob29rcy51bnF1ZXVlZCApIHsKCQkJCQlvbGRmaXJlKCk7CgkJCQl9CgkJCX07CgkJfQoJCWhvb2tzLnVucXVldWVkKys7CgoJCWFuaW0uYWx3YXlzKCBmdW5jdGlvbigpIHsKCgkJCS8vIEVuc3VyZSB0aGUgY29tcGxldGUgaGFuZGxlciBpcyBjYWxsZWQgYmVmb3JlIHRoaXMgY29tcGxldGVzCgkJCWFuaW0uYWx3YXlzKCBmdW5jdGlvbigpIHsKCQkJCWhvb2tzLnVucXVldWVkLS07CgkJCQlpZiAoICFqUXVlcnkucXVldWUoIGVsZW0sICJmeCIgKS5sZW5ndGggKSB7CgkJCQkJaG9va3MuZW1wdHkuZmlyZSgpOwoJCQkJfQoJCQl9ICk7CgkJfSApOwoJfQoKCS8vIERldGVjdCBzaG93L2hpZGUgYW5pbWF0aW9ucwoJZm9yICggcHJvcCBpbiBwcm9wcyApIHsKCQl2YWx1ZSA9IHByb3BzWyBwcm9wIF07CgkJaWYgKCByZnh0eXBlcy50ZXN0KCB2YWx1ZSApICkgewoJCQlkZWxldGUgcHJvcHNbIHByb3AgXTsKCQkJdG9nZ2xlID0gdG9nZ2xlIHx8IHZhbHVlID09PSAidG9nZ2xlIjsKCQkJaWYgKCB2YWx1ZSA9PT0gKCBoaWRkZW4gPyAiaGlkZSIgOiAic2hvdyIgKSApIHsKCgkJCQkvLyBQcmV0ZW5kIHRvIGJlIGhpZGRlbiBpZiB0aGlzIGlzIGEgInNob3ciIGFuZAoJCQkJLy8gdGhlcmUgaXMgc3RpbGwgZGF0YSBmcm9tIGEgc3RvcHBlZCBzaG93L2hpZGUKCQkJCWlmICggdmFsdWUgPT09ICJzaG93IiAmJiBkYXRhU2hvdyAmJiBkYXRhU2hvd1sgcHJvcCBdICE9PSB1bmRlZmluZWQgKSB7CgkJCQkJaGlkZGVuID0gdHJ1ZTsKCgkJCQkvLyBJZ25vcmUgYWxsIG90aGVyIG5vLW9wIHNob3cvaGlkZSBkYXRhCgkJCQl9IGVsc2UgewoJCQkJCWNvbnRpbnVlOwoJCQkJfQoJCQl9CgkJCW9yaWdbIHByb3AgXSA9IGRhdGFTaG93ICYmIGRhdGFTaG93WyBwcm9wIF0gfHwgalF1ZXJ5LnN0eWxlKCBlbGVtLCBwcm9wICk7CgkJfQoJfQoKCS8vIEJhaWwgb3V0IGlmIHRoaXMgaXMgYSBuby1vcCBsaWtlIC5oaWRlKCkuaGlkZSgpCglwcm9wVHdlZW4gPSAhalF1ZXJ5LmlzRW1wdHlPYmplY3QoIHByb3BzICk7CglpZiAoICFwcm9wVHdlZW4gJiYgalF1ZXJ5LmlzRW1wdHlPYmplY3QoIG9yaWcgKSApIHsKCQlyZXR1cm47Cgl9CgoJLy8gUmVzdHJpY3QgIm92ZXJmbG93IiBhbmQgImRpc3BsYXkiIHN0eWxlcyBkdXJpbmcgYm94IGFuaW1hdGlvbnMKCWlmICggaXNCb3ggJiYgZWxlbS5ub2RlVHlwZSA9PT0gMSApIHsKCgkJLy8gU3VwcG9ydDogSUUgPD05IC0gMTEsIEVkZ2UgMTIgLSAxMwoJCS8vIFJlY29yZCBhbGwgMyBvdmVyZmxvdyBhdHRyaWJ1dGVzIGJlY2F1c2UgSUUgZG9lcyBub3QgaW5mZXIgdGhlIHNob3J0aGFuZAoJCS8vIGZyb20gaWRlbnRpY2FsbHktdmFsdWVkIG92ZXJmbG93WCBhbmQgb3ZlcmZsb3dZCgkJb3B0cy5vdmVyZmxvdyA9IFsgc3R5bGUub3ZlcmZsb3csIHN0eWxlLm92ZXJmbG93WCwgc3R5bGUub3ZlcmZsb3dZIF07CgoJCS8vIElkZW50aWZ5IGEgZGlzcGxheSB0eXBlLCBwcmVmZXJyaW5nIG9sZCBzaG93L2hpZGUgZGF0YSBvdmVyIHRoZSBDU1MgY2FzY2FkZQoJCXJlc3RvcmVEaXNwbGF5ID0gZGF0YVNob3cgJiYgZGF0YVNob3cuZGlzcGxheTsKCQlpZiAoIHJlc3RvcmVEaXNwbGF5ID09IG51bGwgKSB7CgkJCXJlc3RvcmVEaXNwbGF5ID0gZGF0YVByaXYuZ2V0KCBlbGVtLCAiZGlzcGxheSIgKTsKCQl9CgkJZGlzcGxheSA9IGpRdWVyeS5jc3MoIGVsZW0sICJkaXNwbGF5IiApOwoJCWlmICggZGlzcGxheSA9PT0gIm5vbmUiICkgewoJCQlpZiAoIHJlc3RvcmVEaXNwbGF5ICkgewoJCQkJZGlzcGxheSA9IHJlc3RvcmVEaXNwbGF5OwoJCQl9IGVsc2UgewoKCQkJCS8vIEdldCBub25lbXB0eSB2YWx1ZShzKSBieSB0ZW1wb3JhcmlseSBmb3JjaW5nIHZpc2liaWxpdHkKCQkJCXNob3dIaWRlKCBbIGVsZW0gXSwgdHJ1ZSApOwoJCQkJcmVzdG9yZURpc3BsYXkgPSBlbGVtLnN0eWxlLmRpc3BsYXkgfHwgcmVzdG9yZURpc3BsYXk7CgkJCQlkaXNwbGF5ID0galF1ZXJ5LmNzcyggZWxlbSwgImRpc3BsYXkiICk7CgkJCQlzaG93SGlkZSggWyBlbGVtIF0gKTsKCQkJfQoJCX0KCgkJLy8gQW5pbWF0ZSBpbmxpbmUgZWxlbWVudHMgYXMgaW5saW5lLWJsb2NrCgkJaWYgKCBkaXNwbGF5ID09PSAiaW5saW5lIiB8fCBkaXNwbGF5ID09PSAiaW5saW5lLWJsb2NrIiAmJiByZXN0b3JlRGlzcGxheSAhPSBudWxsICkgewoJCQlpZiAoIGpRdWVyeS5jc3MoIGVsZW0sICJmbG9hdCIgKSA9PT0gIm5vbmUiICkgewoKCQkJCS8vIFJlc3RvcmUgdGhlIG9yaWdpbmFsIGRpc3BsYXkgdmFsdWUgYXQgdGhlIGVuZCBvZiBwdXJlIHNob3cvaGlkZSBhbmltYXRpb25zCgkJCQlpZiAoICFwcm9wVHdlZW4gKSB7CgkJCQkJYW5pbS5kb25lKCBmdW5jdGlvbigpIHsKCQkJCQkJc3R5bGUuZGlzcGxheSA9IHJlc3RvcmVEaXNwbGF5OwoJCQkJCX0gKTsKCQkJCQlpZiAoIHJlc3RvcmVEaXNwbGF5ID09IG51bGwgKSB7CgkJCQkJCWRpc3BsYXkgPSBzdHlsZS5kaXNwbGF5OwoJCQkJCQlyZXN0b3JlRGlzcGxheSA9IGRpc3BsYXkgPT09ICJub25lIiA/ICIiIDogZGlzcGxheTsKCQkJCQl9CgkJCQl9CgkJCQlzdHlsZS5kaXNwbGF5ID0gImlubGluZS1ibG9jayI7CgkJCX0KCQl9Cgl9CgoJaWYgKCBvcHRzLm92ZXJmbG93ICkgewoJCXN0eWxlLm92ZXJmbG93ID0gImhpZGRlbiI7CgkJYW5pbS5hbHdheXMoIGZ1bmN0aW9uKCkgewoJCQlzdHlsZS5vdmVyZmxvdyA9IG9wdHMub3ZlcmZsb3dbIDAgXTsKCQkJc3R5bGUub3ZlcmZsb3dYID0gb3B0cy5vdmVyZmxvd1sgMSBdOwoJCQlzdHlsZS5vdmVyZmxvd1kgPSBvcHRzLm92ZXJmbG93WyAyIF07CgkJfSApOwoJfQoKCS8vIEltcGxlbWVudCBzaG93L2hpZGUgYW5pbWF0aW9ucwoJcHJvcFR3ZWVuID0gZmFsc2U7Cglmb3IgKCBwcm9wIGluIG9yaWcgKSB7CgoJCS8vIEdlbmVyYWwgc2hvdy9oaWRlIHNldHVwIGZvciB0aGlzIGVsZW1lbnQgYW5pbWF0aW9uCgkJaWYgKCAhcHJvcFR3ZWVuICkgewoJCQlpZiAoIGRhdGFTaG93ICkgewoJCQkJaWYgKCAiaGlkZGVuIiBpbiBkYXRhU2hvdyApIHsKCQkJCQloaWRkZW4gPSBkYXRhU2hvdy5oaWRkZW47CgkJCQl9CgkJCX0gZWxzZSB7CgkJCQlkYXRhU2hvdyA9IGRhdGFQcml2LmFjY2VzcyggZWxlbSwgImZ4c2hvdyIsIHsgZGlzcGxheTogcmVzdG9yZURpc3BsYXkgfSApOwoJCQl9CgoJCQkvLyBTdG9yZSBoaWRkZW4vdmlzaWJsZSBmb3IgdG9nZ2xlIHNvIGAuc3RvcCgpLnRvZ2dsZSgpYCAicmV2ZXJzZXMiCgkJCWlmICggdG9nZ2xlICkgewoJCQkJZGF0YVNob3cuaGlkZGVuID0gIWhpZGRlbjsKCQkJfQoKCQkJLy8gU2hvdyBlbGVtZW50cyBiZWZvcmUgYW5pbWF0aW5nIHRoZW0KCQkJaWYgKCBoaWRkZW4gKSB7CgkJCQlzaG93SGlkZSggWyBlbGVtIF0sIHRydWUgKTsKCQkJfQoKCQkJLyogZXNsaW50LWRpc2FibGUgbm8tbG9vcC1mdW5jICovCgoJCQlhbmltLmRvbmUoIGZ1bmN0aW9uKCkgewoKCQkJLyogZXNsaW50LWVuYWJsZSBuby1sb29wLWZ1bmMgKi8KCgkJCQkvLyBUaGUgZmluYWwgc3RlcCBvZiBhICJoaWRlIiBhbmltYXRpb24gaXMgYWN0dWFsbHkgaGlkaW5nIHRoZSBlbGVtZW50CgkJCQlpZiAoICFoaWRkZW4gKSB7CgkJCQkJc2hvd0hpZGUoIFsgZWxlbSBdICk7CgkJCQl9CgkJCQlkYXRhUHJpdi5yZW1vdmUoIGVsZW0sICJmeHNob3ciICk7CgkJCQlmb3IgKCBwcm9wIGluIG9yaWcgKSB7CgkJCQkJalF1ZXJ5LnN0eWxlKCBlbGVtLCBwcm9wLCBvcmlnWyBwcm9wIF0gKTsKCQkJCX0KCQkJfSApOwoJCX0KCgkJLy8gUGVyLXByb3BlcnR5IHNldHVwCgkJcHJvcFR3ZWVuID0gY3JlYXRlVHdlZW4oIGhpZGRlbiA/IGRhdGFTaG93WyBwcm9wIF0gOiAwLCBwcm9wLCBhbmltICk7CgkJaWYgKCAhKCBwcm9wIGluIGRhdGFTaG93ICkgKSB7CgkJCWRhdGFTaG93WyBwcm9wIF0gPSBwcm9wVHdlZW4uc3RhcnQ7CgkJCWlmICggaGlkZGVuICkgewoJCQkJcHJvcFR3ZWVuLmVuZCA9IHByb3BUd2Vlbi5zdGFydDsKCQkJCXByb3BUd2Vlbi5zdGFydCA9IDA7CgkJCX0KCQl9Cgl9Cn0KCmZ1bmN0aW9uIHByb3BGaWx0ZXIoIHByb3BzLCBzcGVjaWFsRWFzaW5nICkgewoJdmFyIGluZGV4LCBuYW1lLCBlYXNpbmcsIHZhbHVlLCBob29rczsKCgkvLyBjYW1lbENhc2UsIHNwZWNpYWxFYXNpbmcgYW5kIGV4cGFuZCBjc3NIb29rIHBhc3MKCWZvciAoIGluZGV4IGluIHByb3BzICkgewoJCW5hbWUgPSBqUXVlcnkuY2FtZWxDYXNlKCBpbmRleCApOwoJCWVhc2luZyA9IHNwZWNpYWxFYXNpbmdbIG5hbWUgXTsKCQl2YWx1ZSA9IHByb3BzWyBpbmRleCBdOwoJCWlmICggalF1ZXJ5LmlzQXJyYXkoIHZhbHVlICkgKSB7CgkJCWVhc2luZyA9IHZhbHVlWyAxIF07CgkJCXZhbHVlID0gcHJvcHNbIGluZGV4IF0gPSB2YWx1ZVsgMCBdOwoJCX0KCgkJaWYgKCBpbmRleCAhPT0gbmFtZSApIHsKCQkJcHJvcHNbIG5hbWUgXSA9IHZhbHVlOwoJCQlkZWxldGUgcHJvcHNbIGluZGV4IF07CgkJfQoKCQlob29rcyA9IGpRdWVyeS5jc3NIb29rc1sgbmFtZSBdOwoJCWlmICggaG9va3MgJiYgImV4cGFuZCIgaW4gaG9va3MgKSB7CgkJCXZhbHVlID0gaG9va3MuZXhwYW5kKCB2YWx1ZSApOwoJCQlkZWxldGUgcHJvcHNbIG5hbWUgXTsKCgkJCS8vIE5vdCBxdWl0ZSAkLmV4dGVuZCwgdGhpcyB3b24ndCBvdmVyd3JpdGUgZXhpc3Rpbmcga2V5cy4KCQkJLy8gUmV1c2luZyAnaW5kZXgnIGJlY2F1c2Ugd2UgaGF2ZSB0aGUgY29ycmVjdCAibmFtZSIKCQkJZm9yICggaW5kZXggaW4gdmFsdWUgKSB7CgkJCQlpZiAoICEoIGluZGV4IGluIHByb3BzICkgKSB7CgkJCQkJcHJvcHNbIGluZGV4IF0gPSB2YWx1ZVsgaW5kZXggXTsKCQkJCQlzcGVjaWFsRWFzaW5nWyBpbmRleCBdID0gZWFzaW5nOwoJCQkJfQoJCQl9CgkJfSBlbHNlIHsKCQkJc3BlY2lhbEVhc2luZ1sgbmFtZSBdID0gZWFzaW5nOwoJCX0KCX0KfQoKZnVuY3Rpb24gQW5pbWF0aW9uKCBlbGVtLCBwcm9wZXJ0aWVzLCBvcHRpb25zICkgewoJdmFyIHJlc3VsdCwKCQlzdG9wcGVkLAoJCWluZGV4ID0gMCwKCQlsZW5ndGggPSBBbmltYXRpb24ucHJlZmlsdGVycy5sZW5ndGgsCgkJZGVmZXJyZWQgPSBqUXVlcnkuRGVmZXJyZWQoKS5hbHdheXMoIGZ1bmN0aW9uKCkgewoKCQkJLy8gRG9uJ3QgbWF0Y2ggZWxlbSBpbiB0aGUgOmFuaW1hdGVkIHNlbGVjdG9yCgkJCWRlbGV0ZSB0aWNrLmVsZW07CgkJfSApLAoJCXRpY2sgPSBmdW5jdGlvbigpIHsKCQkJaWYgKCBzdG9wcGVkICkgewoJCQkJcmV0dXJuIGZhbHNlOwoJCQl9CgkJCXZhciBjdXJyZW50VGltZSA9IGZ4Tm93IHx8IGNyZWF0ZUZ4Tm93KCksCgkJCQlyZW1haW5pbmcgPSBNYXRoLm1heCggMCwgYW5pbWF0aW9uLnN0YXJ0VGltZSArIGFuaW1hdGlvbi5kdXJhdGlvbiAtIGN1cnJlbnRUaW1lICksCgoJCQkJLy8gU3VwcG9ydDogQW5kcm9pZCAyLjMgb25seQoJCQkJLy8gQXJjaGFpYyBjcmFzaCBidWcgd29uJ3QgYWxsb3cgdXMgdG8gdXNlIGAxIC0gKCAwLjUgfHwgMCApYCAoIzEyNDk3KQoJCQkJdGVtcCA9IHJlbWFpbmluZyAvIGFuaW1hdGlvbi5kdXJhdGlvbiB8fCAwLAoJCQkJcGVyY2VudCA9IDEgLSB0ZW1wLAoJCQkJaW5kZXggPSAwLAoJCQkJbGVuZ3RoID0gYW5pbWF0aW9uLnR3ZWVucy5sZW5ndGg7CgoJCQlmb3IgKCA7IGluZGV4IDwgbGVuZ3RoOyBpbmRleCsrICkgewoJCQkJYW5pbWF0aW9uLnR3ZWVuc1sgaW5kZXggXS5ydW4oIHBlcmNlbnQgKTsKCQkJfQoKCQkJZGVmZXJyZWQubm90aWZ5V2l0aCggZWxlbSwgWyBhbmltYXRpb24sIHBlcmNlbnQsIHJlbWFpbmluZyBdICk7CgoJCQlpZiAoIHBlcmNlbnQgPCAxICYmIGxlbmd0aCApIHsKCQkJCXJldHVybiByZW1haW5pbmc7CgkJCX0gZWxzZSB7CgkJCQlkZWZlcnJlZC5yZXNvbHZlV2l0aCggZWxlbSwgWyBhbmltYXRpb24gXSApOwoJCQkJcmV0dXJuIGZhbHNlOwoJCQl9CgkJfSwKCQlhbmltYXRpb24gPSBkZWZlcnJlZC5wcm9taXNlKCB7CgkJCWVsZW06IGVsZW0sCgkJCXByb3BzOiBqUXVlcnkuZXh0ZW5kKCB7fSwgcHJvcGVydGllcyApLAoJCQlvcHRzOiBqUXVlcnkuZXh0ZW5kKCB0cnVlLCB7CgkJCQlzcGVjaWFsRWFzaW5nOiB7fSwKCQkJCWVhc2luZzogalF1ZXJ5LmVhc2luZy5fZGVmYXVsdAoJCQl9LCBvcHRpb25zICksCgkJCW9yaWdpbmFsUHJvcGVydGllczogcHJvcGVydGllcywKCQkJb3JpZ2luYWxPcHRpb25zOiBvcHRpb25zLAoJCQlzdGFydFRpbWU6IGZ4Tm93IHx8IGNyZWF0ZUZ4Tm93KCksCgkJCWR1cmF0aW9uOiBvcHRpb25zLmR1cmF0aW9uLAoJCQl0d2VlbnM6IFtdLAoJCQljcmVhdGVUd2VlbjogZnVuY3Rpb24oIHByb3AsIGVuZCApIHsKCQkJCXZhciB0d2VlbiA9IGpRdWVyeS5Ud2VlbiggZWxlbSwgYW5pbWF0aW9uLm9wdHMsIHByb3AsIGVuZCwKCQkJCQkJYW5pbWF0aW9uLm9wdHMuc3BlY2lhbEVhc2luZ1sgcHJvcCBdIHx8IGFuaW1hdGlvbi5vcHRzLmVhc2luZyApOwoJCQkJYW5pbWF0aW9uLnR3ZWVucy5wdXNoKCB0d2VlbiApOwoJCQkJcmV0dXJuIHR3ZWVuOwoJCQl9LAoJCQlzdG9wOiBmdW5jdGlvbiggZ290b0VuZCApIHsKCQkJCXZhciBpbmRleCA9IDAsCgoJCQkJCS8vIElmIHdlIGFyZSBnb2luZyB0byB0aGUgZW5kLCB3ZSB3YW50IHRvIHJ1biBhbGwgdGhlIHR3ZWVucwoJCQkJCS8vIG90aGVyd2lzZSB3ZSBza2lwIHRoaXMgcGFydAoJCQkJCWxlbmd0aCA9IGdvdG9FbmQgPyBhbmltYXRpb24udHdlZW5zLmxlbmd0aCA6IDA7CgkJCQlpZiAoIHN0b3BwZWQgKSB7CgkJCQkJcmV0dXJuIHRoaXM7CgkJCQl9CgkJCQlzdG9wcGVkID0gdHJ1ZTsKCQkJCWZvciAoIDsgaW5kZXggPCBsZW5ndGg7IGluZGV4KysgKSB7CgkJCQkJYW5pbWF0aW9uLnR3ZWVuc1sgaW5kZXggXS5ydW4oIDEgKTsKCQkJCX0KCgkJCQkvLyBSZXNvbHZlIHdoZW4gd2UgcGxheWVkIHRoZSBsYXN0IGZyYW1lOyBvdGhlcndpc2UsIHJlamVjdAoJCQkJaWYgKCBnb3RvRW5kICkgewoJCQkJCWRlZmVycmVkLm5vdGlmeVdpdGgoIGVsZW0sIFsgYW5pbWF0aW9uLCAxLCAwIF0gKTsKCQkJCQlkZWZlcnJlZC5yZXNvbHZlV2l0aCggZWxlbSwgWyBhbmltYXRpb24sIGdvdG9FbmQgXSApOwoJCQkJfSBlbHNlIHsKCQkJCQlkZWZlcnJlZC5yZWplY3RXaXRoKCBlbGVtLCBbIGFuaW1hdGlvbiwgZ290b0VuZCBdICk7CgkJCQl9CgkJCQlyZXR1cm4gdGhpczsKCQkJfQoJCX0gKSwKCQlwcm9wcyA9IGFuaW1hdGlvbi5wcm9wczsKCglwcm9wRmlsdGVyKCBwcm9wcywgYW5pbWF0aW9uLm9wdHMuc3BlY2lhbEVhc2luZyApOwoKCWZvciAoIDsgaW5kZXggPCBsZW5ndGg7IGluZGV4KysgKSB7CgkJcmVzdWx0ID0gQW5pbWF0aW9uLnByZWZpbHRlcnNbIGluZGV4IF0uY2FsbCggYW5pbWF0aW9uLCBlbGVtLCBwcm9wcywgYW5pbWF0aW9uLm9wdHMgKTsKCQlpZiAoIHJlc3VsdCApIHsKCQkJaWYgKCBqUXVlcnkuaXNGdW5jdGlvbiggcmVzdWx0LnN0b3AgKSApIHsKCQkJCWpRdWVyeS5fcXVldWVIb29rcyggYW5pbWF0aW9uLmVsZW0sIGFuaW1hdGlvbi5vcHRzLnF1ZXVlICkuc3RvcCA9CgkJCQkJalF1ZXJ5LnByb3h5KCByZXN1bHQuc3RvcCwgcmVzdWx0ICk7CgkJCX0KCQkJcmV0dXJuIHJlc3VsdDsKCQl9Cgl9CgoJalF1ZXJ5Lm1hcCggcHJvcHMsIGNyZWF0ZVR3ZWVuLCBhbmltYXRpb24gKTsKCglpZiAoIGpRdWVyeS5pc0Z1bmN0aW9uKCBhbmltYXRpb24ub3B0cy5zdGFydCApICkgewoJCWFuaW1hdGlvbi5vcHRzLnN0YXJ0LmNhbGwoIGVsZW0sIGFuaW1hdGlvbiApOwoJfQoKCWpRdWVyeS5meC50aW1lcigKCQlqUXVlcnkuZXh0ZW5kKCB0aWNrLCB7CgkJCWVsZW06IGVsZW0sCgkJCWFuaW06IGFuaW1hdGlvbiwKCQkJcXVldWU6IGFuaW1hdGlvbi5vcHRzLnF1ZXVlCgkJfSApCgkpOwoKCS8vIGF0dGFjaCBjYWxsYmFja3MgZnJvbSBvcHRpb25zCglyZXR1cm4gYW5pbWF0aW9uLnByb2dyZXNzKCBhbmltYXRpb24ub3B0cy5wcm9ncmVzcyApCgkJLmRvbmUoIGFuaW1hdGlvbi5vcHRzLmRvbmUsIGFuaW1hdGlvbi5vcHRzLmNvbXBsZXRlICkKCQkuZmFpbCggYW5pbWF0aW9uLm9wdHMuZmFpbCApCgkJLmFsd2F5cyggYW5pbWF0aW9uLm9wdHMuYWx3YXlzICk7Cn0KCmpRdWVyeS5BbmltYXRpb24gPSBqUXVlcnkuZXh0ZW5kKCBBbmltYXRpb24sIHsKCgl0d2VlbmVyczogewoJCSIqIjogWyBmdW5jdGlvbiggcHJvcCwgdmFsdWUgKSB7CgkJCXZhciB0d2VlbiA9IHRoaXMuY3JlYXRlVHdlZW4oIHByb3AsIHZhbHVlICk7CgkJCWFkanVzdENTUyggdHdlZW4uZWxlbSwgcHJvcCwgcmNzc051bS5leGVjKCB2YWx1ZSApLCB0d2VlbiApOwoJCQlyZXR1cm4gdHdlZW47CgkJfSBdCgl9LAoKCXR3ZWVuZXI6IGZ1bmN0aW9uKCBwcm9wcywgY2FsbGJhY2sgKSB7CgkJaWYgKCBqUXVlcnkuaXNGdW5jdGlvbiggcHJvcHMgKSApIHsKCQkJY2FsbGJhY2sgPSBwcm9wczsKCQkJcHJvcHMgPSBbICIqIiBdOwoJCX0gZWxzZSB7CgkJCXByb3BzID0gcHJvcHMubWF0Y2goIHJub3RodG1sd2hpdGUgKTsKCQl9CgoJCXZhciBwcm9wLAoJCQlpbmRleCA9IDAsCgkJCWxlbmd0aCA9IHByb3BzLmxlbmd0aDsKCgkJZm9yICggOyBpbmRleCA8IGxlbmd0aDsgaW5kZXgrKyApIHsKCQkJcHJvcCA9IHByb3BzWyBpbmRleCBdOwoJCQlBbmltYXRpb24udHdlZW5lcnNbIHByb3AgXSA9IEFuaW1hdGlvbi50d2VlbmVyc1sgcHJvcCBdIHx8IFtdOwoJCQlBbmltYXRpb24udHdlZW5lcnNbIHByb3AgXS51bnNoaWZ0KCBjYWxsYmFjayApOwoJCX0KCX0sCgoJcHJlZmlsdGVyczogWyBkZWZhdWx0UHJlZmlsdGVyIF0sCgoJcHJlZmlsdGVyOiBmdW5jdGlvbiggY2FsbGJhY2ssIHByZXBlbmQgKSB7CgkJaWYgKCBwcmVwZW5kICkgewoJCQlBbmltYXRpb24ucHJlZmlsdGVycy51bnNoaWZ0KCBjYWxsYmFjayApOwoJCX0gZWxzZSB7CgkJCUFuaW1hdGlvbi5wcmVmaWx0ZXJzLnB1c2goIGNhbGxiYWNrICk7CgkJfQoJfQp9ICk7CgpqUXVlcnkuc3BlZWQgPSBmdW5jdGlvbiggc3BlZWQsIGVhc2luZywgZm4gKSB7Cgl2YXIgb3B0ID0gc3BlZWQgJiYgdHlwZW9mIHNwZWVkID09PSAib2JqZWN0IiA/IGpRdWVyeS5leHRlbmQoIHt9LCBzcGVlZCApIDogewoJCWNvbXBsZXRlOiBmbiB8fCAhZm4gJiYgZWFzaW5nIHx8CgkJCWpRdWVyeS5pc0Z1bmN0aW9uKCBzcGVlZCApICYmIHNwZWVkLAoJCWR1cmF0aW9uOiBzcGVlZCwKCQllYXNpbmc6IGZuICYmIGVhc2luZyB8fCBlYXNpbmcgJiYgIWpRdWVyeS5pc0Z1bmN0aW9uKCBlYXNpbmcgKSAmJiBlYXNpbmcKCX07CgoJLy8gR28gdG8gdGhlIGVuZCBzdGF0ZSBpZiBmeCBhcmUgb2ZmIG9yIGlmIGRvY3VtZW50IGlzIGhpZGRlbgoJaWYgKCBqUXVlcnkuZngub2ZmIHx8IGRvY3VtZW50LmhpZGRlbiApIHsKCQlvcHQuZHVyYXRpb24gPSAwOwoKCX0gZWxzZSB7CgkJaWYgKCB0eXBlb2Ygb3B0LmR1cmF0aW9uICE9PSAibnVtYmVyIiApIHsKCQkJaWYgKCBvcHQuZHVyYXRpb24gaW4galF1ZXJ5LmZ4LnNwZWVkcyApIHsKCQkJCW9wdC5kdXJhdGlvbiA9IGpRdWVyeS5meC5zcGVlZHNbIG9wdC5kdXJhdGlvbiBdOwoKCQkJfSBlbHNlIHsKCQkJCW9wdC5kdXJhdGlvbiA9IGpRdWVyeS5meC5zcGVlZHMuX2RlZmF1bHQ7CgkJCX0KCQl9Cgl9CgoJLy8gTm9ybWFsaXplIG9wdC5xdWV1ZSAtIHRydWUvdW5kZWZpbmVkL251bGwgLT4gImZ4IgoJaWYgKCBvcHQucXVldWUgPT0gbnVsbCB8fCBvcHQucXVldWUgPT09IHRydWUgKSB7CgkJb3B0LnF1ZXVlID0gImZ4IjsKCX0KCgkvLyBRdWV1ZWluZwoJb3B0Lm9sZCA9IG9wdC5jb21wbGV0ZTsKCglvcHQuY29tcGxldGUgPSBmdW5jdGlvbigpIHsKCQlpZiAoIGpRdWVyeS5pc0Z1bmN0aW9uKCBvcHQub2xkICkgKSB7CgkJCW9wdC5vbGQuY2FsbCggdGhpcyApOwoJCX0KCgkJaWYgKCBvcHQucXVldWUgKSB7CgkJCWpRdWVyeS5kZXF1ZXVlKCB0aGlzLCBvcHQucXVldWUgKTsKCQl9Cgl9OwoKCXJldHVybiBvcHQ7Cn07CgpqUXVlcnkuZm4uZXh0ZW5kKCB7CglmYWRlVG86IGZ1bmN0aW9uKCBzcGVlZCwgdG8sIGVhc2luZywgY2FsbGJhY2sgKSB7CgoJCS8vIFNob3cgYW55IGhpZGRlbiBlbGVtZW50cyBhZnRlciBzZXR0aW5nIG9wYWNpdHkgdG8gMAoJCXJldHVybiB0aGlzLmZpbHRlciggaXNIaWRkZW5XaXRoaW5UcmVlICkuY3NzKCAib3BhY2l0eSIsIDAgKS5zaG93KCkKCgkJCS8vIEFuaW1hdGUgdG8gdGhlIHZhbHVlIHNwZWNpZmllZAoJCQkuZW5kKCkuYW5pbWF0ZSggeyBvcGFjaXR5OiB0byB9LCBzcGVlZCwgZWFzaW5nLCBjYWxsYmFjayApOwoJfSwKCWFuaW1hdGU6IGZ1bmN0aW9uKCBwcm9wLCBzcGVlZCwgZWFzaW5nLCBjYWxsYmFjayApIHsKCQl2YXIgZW1wdHkgPSBqUXVlcnkuaXNFbXB0eU9iamVjdCggcHJvcCApLAoJCQlvcHRhbGwgPSBqUXVlcnkuc3BlZWQoIHNwZWVkLCBlYXNpbmcsIGNhbGxiYWNrICksCgkJCWRvQW5pbWF0aW9uID0gZnVuY3Rpb24oKSB7CgoJCQkJLy8gT3BlcmF0ZSBvbiBhIGNvcHkgb2YgcHJvcCBzbyBwZXItcHJvcGVydHkgZWFzaW5nIHdvbid0IGJlIGxvc3QKCQkJCXZhciBhbmltID0gQW5pbWF0aW9uKCB0aGlzLCBqUXVlcnkuZXh0ZW5kKCB7fSwgcHJvcCApLCBvcHRhbGwgKTsKCgkJCQkvLyBFbXB0eSBhbmltYXRpb25zLCBvciBmaW5pc2hpbmcgcmVzb2x2ZXMgaW1tZWRpYXRlbHkKCQkJCWlmICggZW1wdHkgfHwgZGF0YVByaXYuZ2V0KCB0aGlzLCAiZmluaXNoIiApICkgewoJCQkJCWFuaW0uc3RvcCggdHJ1ZSApOwoJCQkJfQoJCQl9OwoJCQlkb0FuaW1hdGlvbi5maW5pc2ggPSBkb0FuaW1hdGlvbjsKCgkJcmV0dXJuIGVtcHR5IHx8IG9wdGFsbC5xdWV1ZSA9PT0gZmFsc2UgPwoJCQl0aGlzLmVhY2goIGRvQW5pbWF0aW9uICkgOgoJCQl0aGlzLnF1ZXVlKCBvcHRhbGwucXVldWUsIGRvQW5pbWF0aW9uICk7Cgl9LAoJc3RvcDogZnVuY3Rpb24oIHR5cGUsIGNsZWFyUXVldWUsIGdvdG9FbmQgKSB7CgkJdmFyIHN0b3BRdWV1ZSA9IGZ1bmN0aW9uKCBob29rcyApIHsKCQkJdmFyIHN0b3AgPSBob29rcy5zdG9wOwoJCQlkZWxldGUgaG9va3Muc3RvcDsKCQkJc3RvcCggZ290b0VuZCApOwoJCX07CgoJCWlmICggdHlwZW9mIHR5cGUgIT09ICJzdHJpbmciICkgewoJCQlnb3RvRW5kID0gY2xlYXJRdWV1ZTsKCQkJY2xlYXJRdWV1ZSA9IHR5cGU7CgkJCXR5cGUgPSB1bmRlZmluZWQ7CgkJfQoJCWlmICggY2xlYXJRdWV1ZSAmJiB0eXBlICE9PSBmYWxzZSApIHsKCQkJdGhpcy5xdWV1ZSggdHlwZSB8fCAiZngiLCBbXSApOwoJCX0KCgkJcmV0dXJuIHRoaXMuZWFjaCggZnVuY3Rpb24oKSB7CgkJCXZhciBkZXF1ZXVlID0gdHJ1ZSwKCQkJCWluZGV4ID0gdHlwZSAhPSBudWxsICYmIHR5cGUgKyAicXVldWVIb29rcyIsCgkJCQl0aW1lcnMgPSBqUXVlcnkudGltZXJzLAoJCQkJZGF0YSA9IGRhdGFQcml2LmdldCggdGhpcyApOwoKCQkJaWYgKCBpbmRleCApIHsKCQkJCWlmICggZGF0YVsgaW5kZXggXSAmJiBkYXRhWyBpbmRleCBdLnN0b3AgKSB7CgkJCQkJc3RvcFF1ZXVlKCBkYXRhWyBpbmRleCBdICk7CgkJCQl9CgkJCX0gZWxzZSB7CgkJCQlmb3IgKCBpbmRleCBpbiBkYXRhICkgewoJCQkJCWlmICggZGF0YVsgaW5kZXggXSAmJiBkYXRhWyBpbmRleCBdLnN0b3AgJiYgcnJ1bi50ZXN0KCBpbmRleCApICkgewoJCQkJCQlzdG9wUXVldWUoIGRhdGFbIGluZGV4IF0gKTsKCQkJCQl9CgkJCQl9CgkJCX0KCgkJCWZvciAoIGluZGV4ID0gdGltZXJzLmxlbmd0aDsgaW5kZXgtLTsgKSB7CgkJCQlpZiAoIHRpbWVyc1sgaW5kZXggXS5lbGVtID09PSB0aGlzICYmCgkJCQkJKCB0eXBlID09IG51bGwgfHwgdGltZXJzWyBpbmRleCBdLnF1ZXVlID09PSB0eXBlICkgKSB7CgoJCQkJCXRpbWVyc1sgaW5kZXggXS5hbmltLnN0b3AoIGdvdG9FbmQgKTsKCQkJCQlkZXF1ZXVlID0gZmFsc2U7CgkJCQkJdGltZXJzLnNwbGljZSggaW5kZXgsIDEgKTsKCQkJCX0KCQkJfQoKCQkJLy8gU3RhcnQgdGhlIG5leHQgaW4gdGhlIHF1ZXVlIGlmIHRoZSBsYXN0IHN0ZXAgd2Fzbid0IGZvcmNlZC4KCQkJLy8gVGltZXJzIGN1cnJlbnRseSB3aWxsIGNhbGwgdGhlaXIgY29tcGxldGUgY2FsbGJhY2tzLCB3aGljaAoJCQkvLyB3aWxsIGRlcXVldWUgYnV0IG9ubHkgaWYgdGhleSB3ZXJlIGdvdG9FbmQuCgkJCWlmICggZGVxdWV1ZSB8fCAhZ290b0VuZCApIHsKCQkJCWpRdWVyeS5kZXF1ZXVlKCB0aGlzLCB0eXBlICk7CgkJCX0KCQl9ICk7Cgl9LAoJZmluaXNoOiBmdW5jdGlvbiggdHlwZSApIHsKCQlpZiAoIHR5cGUgIT09IGZhbHNlICkgewoJCQl0eXBlID0gdHlwZSB8fCAiZngiOwoJCX0KCQlyZXR1cm4gdGhpcy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJdmFyIGluZGV4LAoJCQkJZGF0YSA9IGRhdGFQcml2LmdldCggdGhpcyApLAoJCQkJcXVldWUgPSBkYXRhWyB0eXBlICsgInF1ZXVlIiBdLAoJCQkJaG9va3MgPSBkYXRhWyB0eXBlICsgInF1ZXVlSG9va3MiIF0sCgkJCQl0aW1lcnMgPSBqUXVlcnkudGltZXJzLAoJCQkJbGVuZ3RoID0gcXVldWUgPyBxdWV1ZS5sZW5ndGggOiAwOwoKCQkJLy8gRW5hYmxlIGZpbmlzaGluZyBmbGFnIG9uIHByaXZhdGUgZGF0YQoJCQlkYXRhLmZpbmlzaCA9IHRydWU7CgoJCQkvLyBFbXB0eSB0aGUgcXVldWUgZmlyc3QKCQkJalF1ZXJ5LnF1ZXVlKCB0aGlzLCB0eXBlLCBbXSApOwoKCQkJaWYgKCBob29rcyAmJiBob29rcy5zdG9wICkgewoJCQkJaG9va3Muc3RvcC5jYWxsKCB0aGlzLCB0cnVlICk7CgkJCX0KCgkJCS8vIExvb2sgZm9yIGFueSBhY3RpdmUgYW5pbWF0aW9ucywgYW5kIGZpbmlzaCB0aGVtCgkJCWZvciAoIGluZGV4ID0gdGltZXJzLmxlbmd0aDsgaW5kZXgtLTsgKSB7CgkJCQlpZiAoIHRpbWVyc1sgaW5kZXggXS5lbGVtID09PSB0aGlzICYmIHRpbWVyc1sgaW5kZXggXS5xdWV1ZSA9PT0gdHlwZSApIHsKCQkJCQl0aW1lcnNbIGluZGV4IF0uYW5pbS5zdG9wKCB0cnVlICk7CgkJCQkJdGltZXJzLnNwbGljZSggaW5kZXgsIDEgKTsKCQkJCX0KCQkJfQoKCQkJLy8gTG9vayBmb3IgYW55IGFuaW1hdGlvbnMgaW4gdGhlIG9sZCBxdWV1ZSBhbmQgZmluaXNoIHRoZW0KCQkJZm9yICggaW5kZXggPSAwOyBpbmRleCA8IGxlbmd0aDsgaW5kZXgrKyApIHsKCQkJCWlmICggcXVldWVbIGluZGV4IF0gJiYgcXVldWVbIGluZGV4IF0uZmluaXNoICkgewoJCQkJCXF1ZXVlWyBpbmRleCBdLmZpbmlzaC5jYWxsKCB0aGlzICk7CgkJCQl9CgkJCX0KCgkJCS8vIFR1cm4gb2ZmIGZpbmlzaGluZyBmbGFnCgkJCWRlbGV0ZSBkYXRhLmZpbmlzaDsKCQl9ICk7Cgl9Cn0gKTsKCmpRdWVyeS5lYWNoKCBbICJ0b2dnbGUiLCAic2hvdyIsICJoaWRlIiBdLCBmdW5jdGlvbiggaSwgbmFtZSApIHsKCXZhciBjc3NGbiA9IGpRdWVyeS5mblsgbmFtZSBdOwoJalF1ZXJ5LmZuWyBuYW1lIF0gPSBmdW5jdGlvbiggc3BlZWQsIGVhc2luZywgY2FsbGJhY2sgKSB7CgkJcmV0dXJuIHNwZWVkID09IG51bGwgfHwgdHlwZW9mIHNwZWVkID09PSAiYm9vbGVhbiIgPwoJCQljc3NGbi5hcHBseSggdGhpcywgYXJndW1lbnRzICkgOgoJCQl0aGlzLmFuaW1hdGUoIGdlbkZ4KCBuYW1lLCB0cnVlICksIHNwZWVkLCBlYXNpbmcsIGNhbGxiYWNrICk7Cgl9Owp9ICk7CgovLyBHZW5lcmF0ZSBzaG9ydGN1dHMgZm9yIGN1c3RvbSBhbmltYXRpb25zCmpRdWVyeS5lYWNoKCB7CglzbGlkZURvd246IGdlbkZ4KCAic2hvdyIgKSwKCXNsaWRlVXA6IGdlbkZ4KCAiaGlkZSIgKSwKCXNsaWRlVG9nZ2xlOiBnZW5GeCggInRvZ2dsZSIgKSwKCWZhZGVJbjogeyBvcGFjaXR5OiAic2hvdyIgfSwKCWZhZGVPdXQ6IHsgb3BhY2l0eTogImhpZGUiIH0sCglmYWRlVG9nZ2xlOiB7IG9wYWNpdHk6ICJ0b2dnbGUiIH0KfSwgZnVuY3Rpb24oIG5hbWUsIHByb3BzICkgewoJalF1ZXJ5LmZuWyBuYW1lIF0gPSBmdW5jdGlvbiggc3BlZWQsIGVhc2luZywgY2FsbGJhY2sgKSB7CgkJcmV0dXJuIHRoaXMuYW5pbWF0ZSggcHJvcHMsIHNwZWVkLCBlYXNpbmcsIGNhbGxiYWNrICk7Cgl9Owp9ICk7CgpqUXVlcnkudGltZXJzID0gW107CmpRdWVyeS5meC50aWNrID0gZnVuY3Rpb24oKSB7Cgl2YXIgdGltZXIsCgkJaSA9IDAsCgkJdGltZXJzID0galF1ZXJ5LnRpbWVyczsKCglmeE5vdyA9IGpRdWVyeS5ub3coKTsKCglmb3IgKCA7IGkgPCB0aW1lcnMubGVuZ3RoOyBpKysgKSB7CgkJdGltZXIgPSB0aW1lcnNbIGkgXTsKCgkJLy8gQ2hlY2tzIHRoZSB0aW1lciBoYXMgbm90IGFscmVhZHkgYmVlbiByZW1vdmVkCgkJaWYgKCAhdGltZXIoKSAmJiB0aW1lcnNbIGkgXSA9PT0gdGltZXIgKSB7CgkJCXRpbWVycy5zcGxpY2UoIGktLSwgMSApOwoJCX0KCX0KCglpZiAoICF0aW1lcnMubGVuZ3RoICkgewoJCWpRdWVyeS5meC5zdG9wKCk7Cgl9CglmeE5vdyA9IHVuZGVmaW5lZDsKfTsKCmpRdWVyeS5meC50aW1lciA9IGZ1bmN0aW9uKCB0aW1lciApIHsKCWpRdWVyeS50aW1lcnMucHVzaCggdGltZXIgKTsKCWlmICggdGltZXIoKSApIHsKCQlqUXVlcnkuZnguc3RhcnQoKTsKCX0gZWxzZSB7CgkJalF1ZXJ5LnRpbWVycy5wb3AoKTsKCX0KfTsKCmpRdWVyeS5meC5pbnRlcnZhbCA9IDEzOwpqUXVlcnkuZnguc3RhcnQgPSBmdW5jdGlvbigpIHsKCWlmICggIXRpbWVySWQgKSB7CgkJdGltZXJJZCA9IHdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUgPwoJCQl3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKCByYWYgKSA6CgkJCXdpbmRvdy5zZXRJbnRlcnZhbCggalF1ZXJ5LmZ4LnRpY2ssIGpRdWVyeS5meC5pbnRlcnZhbCApOwoJfQp9OwoKalF1ZXJ5LmZ4LnN0b3AgPSBmdW5jdGlvbigpIHsKCWlmICggd2luZG93LmNhbmNlbEFuaW1hdGlvbkZyYW1lICkgewoJCXdpbmRvdy5jYW5jZWxBbmltYXRpb25GcmFtZSggdGltZXJJZCApOwoJfSBlbHNlIHsKCQl3aW5kb3cuY2xlYXJJbnRlcnZhbCggdGltZXJJZCApOwoJfQoKCXRpbWVySWQgPSBudWxsOwp9OwoKalF1ZXJ5LmZ4LnNwZWVkcyA9IHsKCXNsb3c6IDYwMCwKCWZhc3Q6IDIwMCwKCgkvLyBEZWZhdWx0IHNwZWVkCglfZGVmYXVsdDogNDAwCn07CgoKLy8gQmFzZWQgb2ZmIG9mIHRoZSBwbHVnaW4gYnkgQ2xpbnQgSGVsZmVycywgd2l0aCBwZXJtaXNzaW9uLgovLyBodHRwczovL3dlYi5hcmNoaXZlLm9yZy93ZWIvMjAxMDAzMjQwMTQ3NDcvaHR0cDovL2JsaW5kc2lnbmFscy5jb20vaW5kZXgucGhwLzIwMDkvMDcvanF1ZXJ5LWRlbGF5LwpqUXVlcnkuZm4uZGVsYXkgPSBmdW5jdGlvbiggdGltZSwgdHlwZSApIHsKCXRpbWUgPSBqUXVlcnkuZnggPyBqUXVlcnkuZnguc3BlZWRzWyB0aW1lIF0gfHwgdGltZSA6IHRpbWU7Cgl0eXBlID0gdHlwZSB8fCAiZngiOwoKCXJldHVybiB0aGlzLnF1ZXVlKCB0eXBlLCBmdW5jdGlvbiggbmV4dCwgaG9va3MgKSB7CgkJdmFyIHRpbWVvdXQgPSB3aW5kb3cuc2V0VGltZW91dCggbmV4dCwgdGltZSApOwoJCWhvb2tzLnN0b3AgPSBmdW5jdGlvbigpIHsKCQkJd2luZG93LmNsZWFyVGltZW91dCggdGltZW91dCApOwoJCX07Cgl9ICk7Cn07CgoKKCBmdW5jdGlvbigpIHsKCXZhciBpbnB1dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoICJpbnB1dCIgKSwKCQlzZWxlY3QgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCAic2VsZWN0IiApLAoJCW9wdCA9IHNlbGVjdC5hcHBlbmRDaGlsZCggZG9jdW1lbnQuY3JlYXRlRWxlbWVudCggIm9wdGlvbiIgKSApOwoKCWlucHV0LnR5cGUgPSAiY2hlY2tib3giOwoKCS8vIFN1cHBvcnQ6IEFuZHJvaWQgPD00LjMgb25seQoJLy8gRGVmYXVsdCB2YWx1ZSBmb3IgYSBjaGVja2JveCBzaG91bGQgYmUgIm9uIgoJc3VwcG9ydC5jaGVja09uID0gaW5wdXQudmFsdWUgIT09ICIiOwoKCS8vIFN1cHBvcnQ6IElFIDw9MTEgb25seQoJLy8gTXVzdCBhY2Nlc3Mgc2VsZWN0ZWRJbmRleCB0byBtYWtlIGRlZmF1bHQgb3B0aW9ucyBzZWxlY3QKCXN1cHBvcnQub3B0U2VsZWN0ZWQgPSBvcHQuc2VsZWN0ZWQ7CgoJLy8gU3VwcG9ydDogSUUgPD0xMSBvbmx5CgkvLyBBbiBpbnB1dCBsb3NlcyBpdHMgdmFsdWUgYWZ0ZXIgYmVjb21pbmcgYSByYWRpbwoJaW5wdXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCAiaW5wdXQiICk7CglpbnB1dC52YWx1ZSA9ICJ0IjsKCWlucHV0LnR5cGUgPSAicmFkaW8iOwoJc3VwcG9ydC5yYWRpb1ZhbHVlID0gaW5wdXQudmFsdWUgPT09ICJ0IjsKfSApKCk7CgoKdmFyIGJvb2xIb29rLAoJYXR0ckhhbmRsZSA9IGpRdWVyeS5leHByLmF0dHJIYW5kbGU7CgpqUXVlcnkuZm4uZXh0ZW5kKCB7CglhdHRyOiBmdW5jdGlvbiggbmFtZSwgdmFsdWUgKSB7CgkJcmV0dXJuIGFjY2VzcyggdGhpcywgalF1ZXJ5LmF0dHIsIG5hbWUsIHZhbHVlLCBhcmd1bWVudHMubGVuZ3RoID4gMSApOwoJfSwKCglyZW1vdmVBdHRyOiBmdW5jdGlvbiggbmFtZSApIHsKCQlyZXR1cm4gdGhpcy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJalF1ZXJ5LnJlbW92ZUF0dHIoIHRoaXMsIG5hbWUgKTsKCQl9ICk7Cgl9Cn0gKTsKCmpRdWVyeS5leHRlbmQoIHsKCWF0dHI6IGZ1bmN0aW9uKCBlbGVtLCBuYW1lLCB2YWx1ZSApIHsKCQl2YXIgcmV0LCBob29rcywKCQkJblR5cGUgPSBlbGVtLm5vZGVUeXBlOwoKCQkvLyBEb24ndCBnZXQvc2V0IGF0dHJpYnV0ZXMgb24gdGV4dCwgY29tbWVudCBhbmQgYXR0cmlidXRlIG5vZGVzCgkJaWYgKCBuVHlwZSA9PT0gMyB8fCBuVHlwZSA9PT0gOCB8fCBuVHlwZSA9PT0gMiApIHsKCQkJcmV0dXJuOwoJCX0KCgkJLy8gRmFsbGJhY2sgdG8gcHJvcCB3aGVuIGF0dHJpYnV0ZXMgYXJlIG5vdCBzdXBwb3J0ZWQKCQlpZiAoIHR5cGVvZiBlbGVtLmdldEF0dHJpYnV0ZSA9PT0gInVuZGVmaW5lZCIgKSB7CgkJCXJldHVybiBqUXVlcnkucHJvcCggZWxlbSwgbmFtZSwgdmFsdWUgKTsKCQl9CgoJCS8vIEF0dHJpYnV0ZSBob29rcyBhcmUgZGV0ZXJtaW5lZCBieSB0aGUgbG93ZXJjYXNlIHZlcnNpb24KCQkvLyBHcmFiIG5lY2Vzc2FyeSBob29rIGlmIG9uZSBpcyBkZWZpbmVkCgkJaWYgKCBuVHlwZSAhPT0gMSB8fCAhalF1ZXJ5LmlzWE1MRG9jKCBlbGVtICkgKSB7CgkJCWhvb2tzID0galF1ZXJ5LmF0dHJIb29rc1sgbmFtZS50b0xvd2VyQ2FzZSgpIF0gfHwKCQkJCSggalF1ZXJ5LmV4cHIubWF0Y2guYm9vbC50ZXN0KCBuYW1lICkgPyBib29sSG9vayA6IHVuZGVmaW5lZCApOwoJCX0KCgkJaWYgKCB2YWx1ZSAhPT0gdW5kZWZpbmVkICkgewoJCQlpZiAoIHZhbHVlID09PSBudWxsICkgewoJCQkJalF1ZXJ5LnJlbW92ZUF0dHIoIGVsZW0sIG5hbWUgKTsKCQkJCXJldHVybjsKCQkJfQoKCQkJaWYgKCBob29rcyAmJiAic2V0IiBpbiBob29rcyAmJgoJCQkJKCByZXQgPSBob29rcy5zZXQoIGVsZW0sIHZhbHVlLCBuYW1lICkgKSAhPT0gdW5kZWZpbmVkICkgewoJCQkJcmV0dXJuIHJldDsKCQkJfQoKCQkJZWxlbS5zZXRBdHRyaWJ1dGUoIG5hbWUsIHZhbHVlICsgIiIgKTsKCQkJcmV0dXJuIHZhbHVlOwoJCX0KCgkJaWYgKCBob29rcyAmJiAiZ2V0IiBpbiBob29rcyAmJiAoIHJldCA9IGhvb2tzLmdldCggZWxlbSwgbmFtZSApICkgIT09IG51bGwgKSB7CgkJCXJldHVybiByZXQ7CgkJfQoKCQlyZXQgPSBqUXVlcnkuZmluZC5hdHRyKCBlbGVtLCBuYW1lICk7CgoJCS8vIE5vbi1leGlzdGVudCBhdHRyaWJ1dGVzIHJldHVybiBudWxsLCB3ZSBub3JtYWxpemUgdG8gdW5kZWZpbmVkCgkJcmV0dXJuIHJldCA9PSBudWxsID8gdW5kZWZpbmVkIDogcmV0OwoJfSwKCglhdHRySG9va3M6IHsKCQl0eXBlOiB7CgkJCXNldDogZnVuY3Rpb24oIGVsZW0sIHZhbHVlICkgewoJCQkJaWYgKCAhc3VwcG9ydC5yYWRpb1ZhbHVlICYmIHZhbHVlID09PSAicmFkaW8iICYmCgkJCQkJalF1ZXJ5Lm5vZGVOYW1lKCBlbGVtLCAiaW5wdXQiICkgKSB7CgkJCQkJdmFyIHZhbCA9IGVsZW0udmFsdWU7CgkJCQkJZWxlbS5zZXRBdHRyaWJ1dGUoICJ0eXBlIiwgdmFsdWUgKTsKCQkJCQlpZiAoIHZhbCApIHsKCQkJCQkJZWxlbS52YWx1ZSA9IHZhbDsKCQkJCQl9CgkJCQkJcmV0dXJuIHZhbHVlOwoJCQkJfQoJCQl9CgkJfQoJfSwKCglyZW1vdmVBdHRyOiBmdW5jdGlvbiggZWxlbSwgdmFsdWUgKSB7CgkJdmFyIG5hbWUsCgkJCWkgPSAwLAoKCQkJLy8gQXR0cmlidXRlIG5hbWVzIGNhbiBjb250YWluIG5vbi1IVE1MIHdoaXRlc3BhY2UgY2hhcmFjdGVycwoJCQkvLyBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9zeW50YXguaHRtbCNhdHRyaWJ1dGVzLTIKCQkJYXR0ck5hbWVzID0gdmFsdWUgJiYgdmFsdWUubWF0Y2goIHJub3RodG1sd2hpdGUgKTsKCgkJaWYgKCBhdHRyTmFtZXMgJiYgZWxlbS5ub2RlVHlwZSA9PT0gMSApIHsKCQkJd2hpbGUgKCAoIG5hbWUgPSBhdHRyTmFtZXNbIGkrKyBdICkgKSB7CgkJCQllbGVtLnJlbW92ZUF0dHJpYnV0ZSggbmFtZSApOwoJCQl9CgkJfQoJfQp9ICk7CgovLyBIb29rcyBmb3IgYm9vbGVhbiBhdHRyaWJ1dGVzCmJvb2xIb29rID0gewoJc2V0OiBmdW5jdGlvbiggZWxlbSwgdmFsdWUsIG5hbWUgKSB7CgkJaWYgKCB2YWx1ZSA9PT0gZmFsc2UgKSB7CgoJCQkvLyBSZW1vdmUgYm9vbGVhbiBhdHRyaWJ1dGVzIHdoZW4gc2V0IHRvIGZhbHNlCgkJCWpRdWVyeS5yZW1vdmVBdHRyKCBlbGVtLCBuYW1lICk7CgkJfSBlbHNlIHsKCQkJZWxlbS5zZXRBdHRyaWJ1dGUoIG5hbWUsIG5hbWUgKTsKCQl9CgkJcmV0dXJuIG5hbWU7Cgl9Cn07CgpqUXVlcnkuZWFjaCggalF1ZXJ5LmV4cHIubWF0Y2guYm9vbC5zb3VyY2UubWF0Y2goIC9cdysvZyApLCBmdW5jdGlvbiggaSwgbmFtZSApIHsKCXZhciBnZXR0ZXIgPSBhdHRySGFuZGxlWyBuYW1lIF0gfHwgalF1ZXJ5LmZpbmQuYXR0cjsKCglhdHRySGFuZGxlWyBuYW1lIF0gPSBmdW5jdGlvbiggZWxlbSwgbmFtZSwgaXNYTUwgKSB7CgkJdmFyIHJldCwgaGFuZGxlLAoJCQlsb3dlcmNhc2VOYW1lID0gbmFtZS50b0xvd2VyQ2FzZSgpOwoKCQlpZiAoICFpc1hNTCApIHsKCgkJCS8vIEF2b2lkIGFuIGluZmluaXRlIGxvb3AgYnkgdGVtcG9yYXJpbHkgcmVtb3ZpbmcgdGhpcyBmdW5jdGlvbiBmcm9tIHRoZSBnZXR0ZXIKCQkJaGFuZGxlID0gYXR0ckhhbmRsZVsgbG93ZXJjYXNlTmFtZSBdOwoJCQlhdHRySGFuZGxlWyBsb3dlcmNhc2VOYW1lIF0gPSByZXQ7CgkJCXJldCA9IGdldHRlciggZWxlbSwgbmFtZSwgaXNYTUwgKSAhPSBudWxsID8KCQkJCWxvd2VyY2FzZU5hbWUgOgoJCQkJbnVsbDsKCQkJYXR0ckhhbmRsZVsgbG93ZXJjYXNlTmFtZSBdID0gaGFuZGxlOwoJCX0KCQlyZXR1cm4gcmV0OwoJfTsKfSApOwoKCgoKdmFyIHJmb2N1c2FibGUgPSAvXig/OmlucHV0fHNlbGVjdHx0ZXh0YXJlYXxidXR0b24pJC9pLAoJcmNsaWNrYWJsZSA9IC9eKD86YXxhcmVhKSQvaTsKCmpRdWVyeS5mbi5leHRlbmQoIHsKCXByb3A6IGZ1bmN0aW9uKCBuYW1lLCB2YWx1ZSApIHsKCQlyZXR1cm4gYWNjZXNzKCB0aGlzLCBqUXVlcnkucHJvcCwgbmFtZSwgdmFsdWUsIGFyZ3VtZW50cy5sZW5ndGggPiAxICk7Cgl9LAoKCXJlbW92ZVByb3A6IGZ1bmN0aW9uKCBuYW1lICkgewoJCXJldHVybiB0aGlzLmVhY2goIGZ1bmN0aW9uKCkgewoJCQlkZWxldGUgdGhpc1sgalF1ZXJ5LnByb3BGaXhbIG5hbWUgXSB8fCBuYW1lIF07CgkJfSApOwoJfQp9ICk7CgpqUXVlcnkuZXh0ZW5kKCB7Cglwcm9wOiBmdW5jdGlvbiggZWxlbSwgbmFtZSwgdmFsdWUgKSB7CgkJdmFyIHJldCwgaG9va3MsCgkJCW5UeXBlID0gZWxlbS5ub2RlVHlwZTsKCgkJLy8gRG9uJ3QgZ2V0L3NldCBwcm9wZXJ0aWVzIG9uIHRleHQsIGNvbW1lbnQgYW5kIGF0dHJpYnV0ZSBub2RlcwoJCWlmICggblR5cGUgPT09IDMgfHwgblR5cGUgPT09IDggfHwgblR5cGUgPT09IDIgKSB7CgkJCXJldHVybjsKCQl9CgoJCWlmICggblR5cGUgIT09IDEgfHwgIWpRdWVyeS5pc1hNTERvYyggZWxlbSApICkgewoKCQkJLy8gRml4IG5hbWUgYW5kIGF0dGFjaCBob29rcwoJCQluYW1lID0galF1ZXJ5LnByb3BGaXhbIG5hbWUgXSB8fCBuYW1lOwoJCQlob29rcyA9IGpRdWVyeS5wcm9wSG9va3NbIG5hbWUgXTsKCQl9CgoJCWlmICggdmFsdWUgIT09IHVuZGVmaW5lZCApIHsKCQkJaWYgKCBob29rcyAmJiAic2V0IiBpbiBob29rcyAmJgoJCQkJKCByZXQgPSBob29rcy5zZXQoIGVsZW0sIHZhbHVlLCBuYW1lICkgKSAhPT0gdW5kZWZpbmVkICkgewoJCQkJcmV0dXJuIHJldDsKCQkJfQoKCQkJcmV0dXJuICggZWxlbVsgbmFtZSBdID0gdmFsdWUgKTsKCQl9CgoJCWlmICggaG9va3MgJiYgImdldCIgaW4gaG9va3MgJiYgKCByZXQgPSBob29rcy5nZXQoIGVsZW0sIG5hbWUgKSApICE9PSBudWxsICkgewoJCQlyZXR1cm4gcmV0OwoJCX0KCgkJcmV0dXJuIGVsZW1bIG5hbWUgXTsKCX0sCgoJcHJvcEhvb2tzOiB7CgkJdGFiSW5kZXg6IHsKCQkJZ2V0OiBmdW5jdGlvbiggZWxlbSApIHsKCgkJCQkvLyBTdXBwb3J0OiBJRSA8PTkgLSAxMSBvbmx5CgkJCQkvLyBlbGVtLnRhYkluZGV4IGRvZXNuJ3QgYWx3YXlzIHJldHVybiB0aGUKCQkJCS8vIGNvcnJlY3QgdmFsdWUgd2hlbiBpdCBoYXNuJ3QgYmVlbiBleHBsaWNpdGx5IHNldAoJCQkJLy8gaHR0cHM6Ly93ZWIuYXJjaGl2ZS5vcmcvd2ViLzIwMTQxMTE2MjMzMzQ3L2h0dHA6Ly9mbHVpZHByb2plY3Qub3JnL2Jsb2cvMjAwOC8wMS8wOS9nZXR0aW5nLXNldHRpbmctYW5kLXJlbW92aW5nLXRhYmluZGV4LXZhbHVlcy13aXRoLWphdmFzY3JpcHQvCgkJCQkvLyBVc2UgcHJvcGVyIGF0dHJpYnV0ZSByZXRyaWV2YWwoIzEyMDcyKQoJCQkJdmFyIHRhYmluZGV4ID0galF1ZXJ5LmZpbmQuYXR0ciggZWxlbSwgInRhYmluZGV4IiApOwoKCQkJCWlmICggdGFiaW5kZXggKSB7CgkJCQkJcmV0dXJuIHBhcnNlSW50KCB0YWJpbmRleCwgMTAgKTsKCQkJCX0KCgkJCQlpZiAoCgkJCQkJcmZvY3VzYWJsZS50ZXN0KCBlbGVtLm5vZGVOYW1lICkgfHwKCQkJCQlyY2xpY2thYmxlLnRlc3QoIGVsZW0ubm9kZU5hbWUgKSAmJgoJCQkJCWVsZW0uaHJlZgoJCQkJKSB7CgkJCQkJcmV0dXJuIDA7CgkJCQl9CgoJCQkJcmV0dXJuIC0xOwoJCQl9CgkJfQoJfSwKCglwcm9wRml4OiB7CgkJImZvciI6ICJodG1sRm9yIiwKCQkiY2xhc3MiOiAiY2xhc3NOYW1lIgoJfQp9ICk7CgovLyBTdXBwb3J0OiBJRSA8PTExIG9ubHkKLy8gQWNjZXNzaW5nIHRoZSBzZWxlY3RlZEluZGV4IHByb3BlcnR5Ci8vIGZvcmNlcyB0aGUgYnJvd3NlciB0byByZXNwZWN0IHNldHRpbmcgc2VsZWN0ZWQKLy8gb24gdGhlIG9wdGlvbgovLyBUaGUgZ2V0dGVyIGVuc3VyZXMgYSBkZWZhdWx0IG9wdGlvbiBpcyBzZWxlY3RlZAovLyB3aGVuIGluIGFuIG9wdGdyb3VwCi8vIGVzbGludCBydWxlICJuby11bnVzZWQtZXhwcmVzc2lvbnMiIGlzIGRpc2FibGVkIGZvciB0aGlzIGNvZGUKLy8gc2luY2UgaXQgY29uc2lkZXJzIHN1Y2ggYWNjZXNzaW9ucyBub29wCmlmICggIXN1cHBvcnQub3B0U2VsZWN0ZWQgKSB7CglqUXVlcnkucHJvcEhvb2tzLnNlbGVjdGVkID0gewoJCWdldDogZnVuY3Rpb24oIGVsZW0gKSB7CgoJCQkvKiBlc2xpbnQgbm8tdW51c2VkLWV4cHJlc3Npb25zOiAib2ZmIiAqLwoKCQkJdmFyIHBhcmVudCA9IGVsZW0ucGFyZW50Tm9kZTsKCQkJaWYgKCBwYXJlbnQgJiYgcGFyZW50LnBhcmVudE5vZGUgKSB7CgkJCQlwYXJlbnQucGFyZW50Tm9kZS5zZWxlY3RlZEluZGV4OwoJCQl9CgkJCXJldHVybiBudWxsOwoJCX0sCgkJc2V0OiBmdW5jdGlvbiggZWxlbSApIHsKCgkJCS8qIGVzbGludCBuby11bnVzZWQtZXhwcmVzc2lvbnM6ICJvZmYiICovCgoJCQl2YXIgcGFyZW50ID0gZWxlbS5wYXJlbnROb2RlOwoJCQlpZiAoIHBhcmVudCApIHsKCQkJCXBhcmVudC5zZWxlY3RlZEluZGV4OwoKCQkJCWlmICggcGFyZW50LnBhcmVudE5vZGUgKSB7CgkJCQkJcGFyZW50LnBhcmVudE5vZGUuc2VsZWN0ZWRJbmRleDsKCQkJCX0KCQkJfQoJCX0KCX07Cn0KCmpRdWVyeS5lYWNoKCBbCgkidGFiSW5kZXgiLAoJInJlYWRPbmx5IiwKCSJtYXhMZW5ndGgiLAoJImNlbGxTcGFjaW5nIiwKCSJjZWxsUGFkZGluZyIsCgkicm93U3BhbiIsCgkiY29sU3BhbiIsCgkidXNlTWFwIiwKCSJmcmFtZUJvcmRlciIsCgkiY29udGVudEVkaXRhYmxlIgpdLCBmdW5jdGlvbigpIHsKCWpRdWVyeS5wcm9wRml4WyB0aGlzLnRvTG93ZXJDYXNlKCkgXSA9IHRoaXM7Cn0gKTsKCgoKCgkvLyBTdHJpcCBhbmQgY29sbGFwc2Ugd2hpdGVzcGFjZSBhY2NvcmRpbmcgdG8gSFRNTCBzcGVjCgkvLyBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9pbmZyYXN0cnVjdHVyZS5odG1sI3N0cmlwLWFuZC1jb2xsYXBzZS13aGl0ZXNwYWNlCglmdW5jdGlvbiBzdHJpcEFuZENvbGxhcHNlKCB2YWx1ZSApIHsKCQl2YXIgdG9rZW5zID0gdmFsdWUubWF0Y2goIHJub3RodG1sd2hpdGUgKSB8fCBbXTsKCQlyZXR1cm4gdG9rZW5zLmpvaW4oICIgIiApOwoJfQoKCmZ1bmN0aW9uIGdldENsYXNzKCBlbGVtICkgewoJcmV0dXJuIGVsZW0uZ2V0QXR0cmlidXRlICYmIGVsZW0uZ2V0QXR0cmlidXRlKCAiY2xhc3MiICkgfHwgIiI7Cn0KCmpRdWVyeS5mbi5leHRlbmQoIHsKCWFkZENsYXNzOiBmdW5jdGlvbiggdmFsdWUgKSB7CgkJdmFyIGNsYXNzZXMsIGVsZW0sIGN1ciwgY3VyVmFsdWUsIGNsYXp6LCBqLCBmaW5hbFZhbHVlLAoJCQlpID0gMDsKCgkJaWYgKCBqUXVlcnkuaXNGdW5jdGlvbiggdmFsdWUgKSApIHsKCQkJcmV0dXJuIHRoaXMuZWFjaCggZnVuY3Rpb24oIGogKSB7CgkJCQlqUXVlcnkoIHRoaXMgKS5hZGRDbGFzcyggdmFsdWUuY2FsbCggdGhpcywgaiwgZ2V0Q2xhc3MoIHRoaXMgKSApICk7CgkJCX0gKTsKCQl9CgoJCWlmICggdHlwZW9mIHZhbHVlID09PSAic3RyaW5nIiAmJiB2YWx1ZSApIHsKCQkJY2xhc3NlcyA9IHZhbHVlLm1hdGNoKCBybm90aHRtbHdoaXRlICkgfHwgW107CgoJCQl3aGlsZSAoICggZWxlbSA9IHRoaXNbIGkrKyBdICkgKSB7CgkJCQljdXJWYWx1ZSA9IGdldENsYXNzKCBlbGVtICk7CgkJCQljdXIgPSBlbGVtLm5vZGVUeXBlID09PSAxICYmICggIiAiICsgc3RyaXBBbmRDb2xsYXBzZSggY3VyVmFsdWUgKSArICIgIiApOwoKCQkJCWlmICggY3VyICkgewoJCQkJCWogPSAwOwoJCQkJCXdoaWxlICggKCBjbGF6eiA9IGNsYXNzZXNbIGorKyBdICkgKSB7CgkJCQkJCWlmICggY3VyLmluZGV4T2YoICIgIiArIGNsYXp6ICsgIiAiICkgPCAwICkgewoJCQkJCQkJY3VyICs9IGNsYXp6ICsgIiAiOwoJCQkJCQl9CgkJCQkJfQoKCQkJCQkvLyBPbmx5IGFzc2lnbiBpZiBkaWZmZXJlbnQgdG8gYXZvaWQgdW5uZWVkZWQgcmVuZGVyaW5nLgoJCQkJCWZpbmFsVmFsdWUgPSBzdHJpcEFuZENvbGxhcHNlKCBjdXIgKTsKCQkJCQlpZiAoIGN1clZhbHVlICE9PSBmaW5hbFZhbHVlICkgewoJCQkJCQllbGVtLnNldEF0dHJpYnV0ZSggImNsYXNzIiwgZmluYWxWYWx1ZSApOwoJCQkJCX0KCQkJCX0KCQkJfQoJCX0KCgkJcmV0dXJuIHRoaXM7Cgl9LAoKCXJlbW92ZUNsYXNzOiBmdW5jdGlvbiggdmFsdWUgKSB7CgkJdmFyIGNsYXNzZXMsIGVsZW0sIGN1ciwgY3VyVmFsdWUsIGNsYXp6LCBqLCBmaW5hbFZhbHVlLAoJCQlpID0gMDsKCgkJaWYgKCBqUXVlcnkuaXNGdW5jdGlvbiggdmFsdWUgKSApIHsKCQkJcmV0dXJuIHRoaXMuZWFjaCggZnVuY3Rpb24oIGogKSB7CgkJCQlqUXVlcnkoIHRoaXMgKS5yZW1vdmVDbGFzcyggdmFsdWUuY2FsbCggdGhpcywgaiwgZ2V0Q2xhc3MoIHRoaXMgKSApICk7CgkJCX0gKTsKCQl9CgoJCWlmICggIWFyZ3VtZW50cy5sZW5ndGggKSB7CgkJCXJldHVybiB0aGlzLmF0dHIoICJjbGFzcyIsICIiICk7CgkJfQoKCQlpZiAoIHR5cGVvZiB2YWx1ZSA9PT0gInN0cmluZyIgJiYgdmFsdWUgKSB7CgkJCWNsYXNzZXMgPSB2YWx1ZS5tYXRjaCggcm5vdGh0bWx3aGl0ZSApIHx8IFtdOwoKCQkJd2hpbGUgKCAoIGVsZW0gPSB0aGlzWyBpKysgXSApICkgewoJCQkJY3VyVmFsdWUgPSBnZXRDbGFzcyggZWxlbSApOwoKCQkJCS8vIFRoaXMgZXhwcmVzc2lvbiBpcyBoZXJlIGZvciBiZXR0ZXIgY29tcHJlc3NpYmlsaXR5IChzZWUgYWRkQ2xhc3MpCgkJCQljdXIgPSBlbGVtLm5vZGVUeXBlID09PSAxICYmICggIiAiICsgc3RyaXBBbmRDb2xsYXBzZSggY3VyVmFsdWUgKSArICIgIiApOwoKCQkJCWlmICggY3VyICkgewoJCQkJCWogPSAwOwoJCQkJCXdoaWxlICggKCBjbGF6eiA9IGNsYXNzZXNbIGorKyBdICkgKSB7CgoJCQkJCQkvLyBSZW1vdmUgKmFsbCogaW5zdGFuY2VzCgkJCQkJCXdoaWxlICggY3VyLmluZGV4T2YoICIgIiArIGNsYXp6ICsgIiAiICkgPiAtMSApIHsKCQkJCQkJCWN1ciA9IGN1ci5yZXBsYWNlKCAiICIgKyBjbGF6eiArICIgIiwgIiAiICk7CgkJCQkJCX0KCQkJCQl9CgoJCQkJCS8vIE9ubHkgYXNzaWduIGlmIGRpZmZlcmVudCB0byBhdm9pZCB1bm5lZWRlZCByZW5kZXJpbmcuCgkJCQkJZmluYWxWYWx1ZSA9IHN0cmlwQW5kQ29sbGFwc2UoIGN1ciApOwoJCQkJCWlmICggY3VyVmFsdWUgIT09IGZpbmFsVmFsdWUgKSB7CgkJCQkJCWVsZW0uc2V0QXR0cmlidXRlKCAiY2xhc3MiLCBmaW5hbFZhbHVlICk7CgkJCQkJfQoJCQkJfQoJCQl9CgkJfQoKCQlyZXR1cm4gdGhpczsKCX0sCgoJdG9nZ2xlQ2xhc3M6IGZ1bmN0aW9uKCB2YWx1ZSwgc3RhdGVWYWwgKSB7CgkJdmFyIHR5cGUgPSB0eXBlb2YgdmFsdWU7CgoJCWlmICggdHlwZW9mIHN0YXRlVmFsID09PSAiYm9vbGVhbiIgJiYgdHlwZSA9PT0gInN0cmluZyIgKSB7CgkJCXJldHVybiBzdGF0ZVZhbCA/IHRoaXMuYWRkQ2xhc3MoIHZhbHVlICkgOiB0aGlzLnJlbW92ZUNsYXNzKCB2YWx1ZSApOwoJCX0KCgkJaWYgKCBqUXVlcnkuaXNGdW5jdGlvbiggdmFsdWUgKSApIHsKCQkJcmV0dXJuIHRoaXMuZWFjaCggZnVuY3Rpb24oIGkgKSB7CgkJCQlqUXVlcnkoIHRoaXMgKS50b2dnbGVDbGFzcygKCQkJCQl2YWx1ZS5jYWxsKCB0aGlzLCBpLCBnZXRDbGFzcyggdGhpcyApLCBzdGF0ZVZhbCApLAoJCQkJCXN0YXRlVmFsCgkJCQkpOwoJCQl9ICk7CgkJfQoKCQlyZXR1cm4gdGhpcy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJdmFyIGNsYXNzTmFtZSwgaSwgc2VsZiwgY2xhc3NOYW1lczsKCgkJCWlmICggdHlwZSA9PT0gInN0cmluZyIgKSB7CgoJCQkJLy8gVG9nZ2xlIGluZGl2aWR1YWwgY2xhc3MgbmFtZXMKCQkJCWkgPSAwOwoJCQkJc2VsZiA9IGpRdWVyeSggdGhpcyApOwoJCQkJY2xhc3NOYW1lcyA9IHZhbHVlLm1hdGNoKCBybm90aHRtbHdoaXRlICkgfHwgW107CgoJCQkJd2hpbGUgKCAoIGNsYXNzTmFtZSA9IGNsYXNzTmFtZXNbIGkrKyBdICkgKSB7CgoJCQkJCS8vIENoZWNrIGVhY2ggY2xhc3NOYW1lIGdpdmVuLCBzcGFjZSBzZXBhcmF0ZWQgbGlzdAoJCQkJCWlmICggc2VsZi5oYXNDbGFzcyggY2xhc3NOYW1lICkgKSB7CgkJCQkJCXNlbGYucmVtb3ZlQ2xhc3MoIGNsYXNzTmFtZSApOwoJCQkJCX0gZWxzZSB7CgkJCQkJCXNlbGYuYWRkQ2xhc3MoIGNsYXNzTmFtZSApOwoJCQkJCX0KCQkJCX0KCgkJCS8vIFRvZ2dsZSB3aG9sZSBjbGFzcyBuYW1lCgkJCX0gZWxzZSBpZiAoIHZhbHVlID09PSB1bmRlZmluZWQgfHwgdHlwZSA9PT0gImJvb2xlYW4iICkgewoJCQkJY2xhc3NOYW1lID0gZ2V0Q2xhc3MoIHRoaXMgKTsKCQkJCWlmICggY2xhc3NOYW1lICkgewoKCQkJCQkvLyBTdG9yZSBjbGFzc05hbWUgaWYgc2V0CgkJCQkJZGF0YVByaXYuc2V0KCB0aGlzLCAiX19jbGFzc05hbWVfXyIsIGNsYXNzTmFtZSApOwoJCQkJfQoKCQkJCS8vIElmIHRoZSBlbGVtZW50IGhhcyBhIGNsYXNzIG5hbWUgb3IgaWYgd2UncmUgcGFzc2VkIGBmYWxzZWAsCgkJCQkvLyB0aGVuIHJlbW92ZSB0aGUgd2hvbGUgY2xhc3NuYW1lIChpZiB0aGVyZSB3YXMgb25lLCB0aGUgYWJvdmUgc2F2ZWQgaXQpLgoJCQkJLy8gT3RoZXJ3aXNlIGJyaW5nIGJhY2sgd2hhdGV2ZXIgd2FzIHByZXZpb3VzbHkgc2F2ZWQgKGlmIGFueXRoaW5nKSwKCQkJCS8vIGZhbGxpbmcgYmFjayB0byB0aGUgZW1wdHkgc3RyaW5nIGlmIG5vdGhpbmcgd2FzIHN0b3JlZC4KCQkJCWlmICggdGhpcy5zZXRBdHRyaWJ1dGUgKSB7CgkJCQkJdGhpcy5zZXRBdHRyaWJ1dGUoICJjbGFzcyIsCgkJCQkJCWNsYXNzTmFtZSB8fCB2YWx1ZSA9PT0gZmFsc2UgPwoJCQkJCQkiIiA6CgkJCQkJCWRhdGFQcml2LmdldCggdGhpcywgIl9fY2xhc3NOYW1lX18iICkgfHwgIiIKCQkJCQkpOwoJCQkJfQoJCQl9CgkJfSApOwoJfSwKCgloYXNDbGFzczogZnVuY3Rpb24oIHNlbGVjdG9yICkgewoJCXZhciBjbGFzc05hbWUsIGVsZW0sCgkJCWkgPSAwOwoKCQljbGFzc05hbWUgPSAiICIgKyBzZWxlY3RvciArICIgIjsKCQl3aGlsZSAoICggZWxlbSA9IHRoaXNbIGkrKyBdICkgKSB7CgkJCWlmICggZWxlbS5ub2RlVHlwZSA9PT0gMSAmJgoJCQkJKCAiICIgKyBzdHJpcEFuZENvbGxhcHNlKCBnZXRDbGFzcyggZWxlbSApICkgKyAiICIgKS5pbmRleE9mKCBjbGFzc05hbWUgKSA+IC0xICkgewoJCQkJCXJldHVybiB0cnVlOwoJCQl9CgkJfQoKCQlyZXR1cm4gZmFsc2U7Cgl9Cn0gKTsKCgoKCnZhciBycmV0dXJuID0gL1xyL2c7CgpqUXVlcnkuZm4uZXh0ZW5kKCB7Cgl2YWw6IGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQl2YXIgaG9va3MsIHJldCwgaXNGdW5jdGlvbiwKCQkJZWxlbSA9IHRoaXNbIDAgXTsKCgkJaWYgKCAhYXJndW1lbnRzLmxlbmd0aCApIHsKCQkJaWYgKCBlbGVtICkgewoJCQkJaG9va3MgPSBqUXVlcnkudmFsSG9va3NbIGVsZW0udHlwZSBdIHx8CgkJCQkJalF1ZXJ5LnZhbEhvb2tzWyBlbGVtLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkgXTsKCgkJCQlpZiAoIGhvb2tzICYmCgkJCQkJImdldCIgaW4gaG9va3MgJiYKCQkJCQkoIHJldCA9IGhvb2tzLmdldCggZWxlbSwgInZhbHVlIiApICkgIT09IHVuZGVmaW5lZAoJCQkJKSB7CgkJCQkJcmV0dXJuIHJldDsKCQkJCX0KCgkJCQlyZXQgPSBlbGVtLnZhbHVlOwoKCQkJCS8vIEhhbmRsZSBtb3N0IGNvbW1vbiBzdHJpbmcgY2FzZXMKCQkJCWlmICggdHlwZW9mIHJldCA9PT0gInN0cmluZyIgKSB7CgkJCQkJcmV0dXJuIHJldC5yZXBsYWNlKCBycmV0dXJuLCAiIiApOwoJCQkJfQoKCQkJCS8vIEhhbmRsZSBjYXNlcyB3aGVyZSB2YWx1ZSBpcyBudWxsL3VuZGVmIG9yIG51bWJlcgoJCQkJcmV0dXJuIHJldCA9PSBudWxsID8gIiIgOiByZXQ7CgkJCX0KCgkJCXJldHVybjsKCQl9CgoJCWlzRnVuY3Rpb24gPSBqUXVlcnkuaXNGdW5jdGlvbiggdmFsdWUgKTsKCgkJcmV0dXJuIHRoaXMuZWFjaCggZnVuY3Rpb24oIGkgKSB7CgkJCXZhciB2YWw7CgoJCQlpZiAoIHRoaXMubm9kZVR5cGUgIT09IDEgKSB7CgkJCQlyZXR1cm47CgkJCX0KCgkJCWlmICggaXNGdW5jdGlvbiApIHsKCQkJCXZhbCA9IHZhbHVlLmNhbGwoIHRoaXMsIGksIGpRdWVyeSggdGhpcyApLnZhbCgpICk7CgkJCX0gZWxzZSB7CgkJCQl2YWwgPSB2YWx1ZTsKCQkJfQoKCQkJLy8gVHJlYXQgbnVsbC91bmRlZmluZWQgYXMgIiI7IGNvbnZlcnQgbnVtYmVycyB0byBzdHJpbmcKCQkJaWYgKCB2YWwgPT0gbnVsbCApIHsKCQkJCXZhbCA9ICIiOwoKCQkJfSBlbHNlIGlmICggdHlwZW9mIHZhbCA9PT0gIm51bWJlciIgKSB7CgkJCQl2YWwgKz0gIiI7CgoJCQl9IGVsc2UgaWYgKCBqUXVlcnkuaXNBcnJheSggdmFsICkgKSB7CgkJCQl2YWwgPSBqUXVlcnkubWFwKCB2YWwsIGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQkJCQlyZXR1cm4gdmFsdWUgPT0gbnVsbCA/ICIiIDogdmFsdWUgKyAiIjsKCQkJCX0gKTsKCQkJfQoKCQkJaG9va3MgPSBqUXVlcnkudmFsSG9va3NbIHRoaXMudHlwZSBdIHx8IGpRdWVyeS52YWxIb29rc1sgdGhpcy5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpIF07CgoJCQkvLyBJZiBzZXQgcmV0dXJucyB1bmRlZmluZWQsIGZhbGwgYmFjayB0byBub3JtYWwgc2V0dGluZwoJCQlpZiAoICFob29rcyB8fCAhKCAic2V0IiBpbiBob29rcyApIHx8IGhvb2tzLnNldCggdGhpcywgdmFsLCAidmFsdWUiICkgPT09IHVuZGVmaW5lZCApIHsKCQkJCXRoaXMudmFsdWUgPSB2YWw7CgkJCX0KCQl9ICk7Cgl9Cn0gKTsKCmpRdWVyeS5leHRlbmQoIHsKCXZhbEhvb2tzOiB7CgkJb3B0aW9uOiB7CgkJCWdldDogZnVuY3Rpb24oIGVsZW0gKSB7CgoJCQkJdmFyIHZhbCA9IGpRdWVyeS5maW5kLmF0dHIoIGVsZW0sICJ2YWx1ZSIgKTsKCQkJCXJldHVybiB2YWwgIT0gbnVsbCA/CgkJCQkJdmFsIDoKCgkJCQkJLy8gU3VwcG9ydDogSUUgPD0xMCAtIDExIG9ubHkKCQkJCQkvLyBvcHRpb24udGV4dCB0aHJvd3MgZXhjZXB0aW9ucyAoIzE0Njg2LCAjMTQ4NTgpCgkJCQkJLy8gU3RyaXAgYW5kIGNvbGxhcHNlIHdoaXRlc3BhY2UKCQkJCQkvLyBodHRwczovL2h0bWwuc3BlYy53aGF0d2cub3JnLyNzdHJpcC1hbmQtY29sbGFwc2Utd2hpdGVzcGFjZQoJCQkJCXN0cmlwQW5kQ29sbGFwc2UoIGpRdWVyeS50ZXh0KCBlbGVtICkgKTsKCQkJfQoJCX0sCgkJc2VsZWN0OiB7CgkJCWdldDogZnVuY3Rpb24oIGVsZW0gKSB7CgkJCQl2YXIgdmFsdWUsIG9wdGlvbiwgaSwKCQkJCQlvcHRpb25zID0gZWxlbS5vcHRpb25zLAoJCQkJCWluZGV4ID0gZWxlbS5zZWxlY3RlZEluZGV4LAoJCQkJCW9uZSA9IGVsZW0udHlwZSA9PT0gInNlbGVjdC1vbmUiLAoJCQkJCXZhbHVlcyA9IG9uZSA/IG51bGwgOiBbXSwKCQkJCQltYXggPSBvbmUgPyBpbmRleCArIDEgOiBvcHRpb25zLmxlbmd0aDsKCgkJCQlpZiAoIGluZGV4IDwgMCApIHsKCQkJCQlpID0gbWF4OwoKCQkJCX0gZWxzZSB7CgkJCQkJaSA9IG9uZSA/IGluZGV4IDogMDsKCQkJCX0KCgkJCQkvLyBMb29wIHRocm91Z2ggYWxsIHRoZSBzZWxlY3RlZCBvcHRpb25zCgkJCQlmb3IgKCA7IGkgPCBtYXg7IGkrKyApIHsKCQkJCQlvcHRpb24gPSBvcHRpb25zWyBpIF07CgoJCQkJCS8vIFN1cHBvcnQ6IElFIDw9OSBvbmx5CgkJCQkJLy8gSUU4LTkgZG9lc24ndCB1cGRhdGUgc2VsZWN0ZWQgYWZ0ZXIgZm9ybSByZXNldCAoIzI1NTEpCgkJCQkJaWYgKCAoIG9wdGlvbi5zZWxlY3RlZCB8fCBpID09PSBpbmRleCApICYmCgoJCQkJCQkJLy8gRG9uJ3QgcmV0dXJuIG9wdGlvbnMgdGhhdCBhcmUgZGlzYWJsZWQgb3IgaW4gYSBkaXNhYmxlZCBvcHRncm91cAoJCQkJCQkJIW9wdGlvbi5kaXNhYmxlZCAmJgoJCQkJCQkJKCAhb3B0aW9uLnBhcmVudE5vZGUuZGlzYWJsZWQgfHwKCQkJCQkJCQkhalF1ZXJ5Lm5vZGVOYW1lKCBvcHRpb24ucGFyZW50Tm9kZSwgIm9wdGdyb3VwIiApICkgKSB7CgoJCQkJCQkvLyBHZXQgdGhlIHNwZWNpZmljIHZhbHVlIGZvciB0aGUgb3B0aW9uCgkJCQkJCXZhbHVlID0galF1ZXJ5KCBvcHRpb24gKS52YWwoKTsKCgkJCQkJCS8vIFdlIGRvbid0IG5lZWQgYW4gYXJyYXkgZm9yIG9uZSBzZWxlY3RzCgkJCQkJCWlmICggb25lICkgewoJCQkJCQkJcmV0dXJuIHZhbHVlOwoJCQkJCQl9CgoJCQkJCQkvLyBNdWx0aS1TZWxlY3RzIHJldHVybiBhbiBhcnJheQoJCQkJCQl2YWx1ZXMucHVzaCggdmFsdWUgKTsKCQkJCQl9CgkJCQl9CgoJCQkJcmV0dXJuIHZhbHVlczsKCQkJfSwKCgkJCXNldDogZnVuY3Rpb24oIGVsZW0sIHZhbHVlICkgewoJCQkJdmFyIG9wdGlvblNldCwgb3B0aW9uLAoJCQkJCW9wdGlvbnMgPSBlbGVtLm9wdGlvbnMsCgkJCQkJdmFsdWVzID0galF1ZXJ5Lm1ha2VBcnJheSggdmFsdWUgKSwKCQkJCQlpID0gb3B0aW9ucy5sZW5ndGg7CgoJCQkJd2hpbGUgKCBpLS0gKSB7CgkJCQkJb3B0aW9uID0gb3B0aW9uc1sgaSBdOwoKCQkJCQkvKiBlc2xpbnQtZGlzYWJsZSBuby1jb25kLWFzc2lnbiAqLwoKCQkJCQlpZiAoIG9wdGlvbi5zZWxlY3RlZCA9CgkJCQkJCWpRdWVyeS5pbkFycmF5KCBqUXVlcnkudmFsSG9va3Mub3B0aW9uLmdldCggb3B0aW9uICksIHZhbHVlcyApID4gLTEKCQkJCQkpIHsKCQkJCQkJb3B0aW9uU2V0ID0gdHJ1ZTsKCQkJCQl9CgoJCQkJCS8qIGVzbGludC1lbmFibGUgbm8tY29uZC1hc3NpZ24gKi8KCQkJCX0KCgkJCQkvLyBGb3JjZSBicm93c2VycyB0byBiZWhhdmUgY29uc2lzdGVudGx5IHdoZW4gbm9uLW1hdGNoaW5nIHZhbHVlIGlzIHNldAoJCQkJaWYgKCAhb3B0aW9uU2V0ICkgewoJCQkJCWVsZW0uc2VsZWN0ZWRJbmRleCA9IC0xOwoJCQkJfQoJCQkJcmV0dXJuIHZhbHVlczsKCQkJfQoJCX0KCX0KfSApOwoKLy8gUmFkaW9zIGFuZCBjaGVja2JveGVzIGdldHRlci9zZXR0ZXIKalF1ZXJ5LmVhY2goIFsgInJhZGlvIiwgImNoZWNrYm94IiBdLCBmdW5jdGlvbigpIHsKCWpRdWVyeS52YWxIb29rc1sgdGhpcyBdID0gewoJCXNldDogZnVuY3Rpb24oIGVsZW0sIHZhbHVlICkgewoJCQlpZiAoIGpRdWVyeS5pc0FycmF5KCB2YWx1ZSApICkgewoJCQkJcmV0dXJuICggZWxlbS5jaGVja2VkID0galF1ZXJ5LmluQXJyYXkoIGpRdWVyeSggZWxlbSApLnZhbCgpLCB2YWx1ZSApID4gLTEgKTsKCQkJfQoJCX0KCX07CglpZiAoICFzdXBwb3J0LmNoZWNrT24gKSB7CgkJalF1ZXJ5LnZhbEhvb2tzWyB0aGlzIF0uZ2V0ID0gZnVuY3Rpb24oIGVsZW0gKSB7CgkJCXJldHVybiBlbGVtLmdldEF0dHJpYnV0ZSggInZhbHVlIiApID09PSBudWxsID8gIm9uIiA6IGVsZW0udmFsdWU7CgkJfTsKCX0KfSApOwoKCgoKLy8gUmV0dXJuIGpRdWVyeSBmb3IgYXR0cmlidXRlcy1vbmx5IGluY2x1c2lvbgoKCnZhciByZm9jdXNNb3JwaCA9IC9eKD86Zm9jdXNpbmZvY3VzfGZvY3Vzb3V0Ymx1cikkLzsKCmpRdWVyeS5leHRlbmQoIGpRdWVyeS5ldmVudCwgewoKCXRyaWdnZXI6IGZ1bmN0aW9uKCBldmVudCwgZGF0YSwgZWxlbSwgb25seUhhbmRsZXJzICkgewoKCQl2YXIgaSwgY3VyLCB0bXAsIGJ1YmJsZVR5cGUsIG9udHlwZSwgaGFuZGxlLCBzcGVjaWFsLAoJCQlldmVudFBhdGggPSBbIGVsZW0gfHwgZG9jdW1lbnQgXSwKCQkJdHlwZSA9IGhhc093bi5jYWxsKCBldmVudCwgInR5cGUiICkgPyBldmVudC50eXBlIDogZXZlbnQsCgkJCW5hbWVzcGFjZXMgPSBoYXNPd24uY2FsbCggZXZlbnQsICJuYW1lc3BhY2UiICkgPyBldmVudC5uYW1lc3BhY2Uuc3BsaXQoICIuIiApIDogW107CgoJCWN1ciA9IHRtcCA9IGVsZW0gPSBlbGVtIHx8IGRvY3VtZW50OwoKCQkvLyBEb24ndCBkbyBldmVudHMgb24gdGV4dCBhbmQgY29tbWVudCBub2RlcwoJCWlmICggZWxlbS5ub2RlVHlwZSA9PT0gMyB8fCBlbGVtLm5vZGVUeXBlID09PSA4ICkgewoJCQlyZXR1cm47CgkJfQoKCQkvLyBmb2N1cy9ibHVyIG1vcnBocyB0byBmb2N1c2luL291dDsgZW5zdXJlIHdlJ3JlIG5vdCBmaXJpbmcgdGhlbSByaWdodCBub3cKCQlpZiAoIHJmb2N1c01vcnBoLnRlc3QoIHR5cGUgKyBqUXVlcnkuZXZlbnQudHJpZ2dlcmVkICkgKSB7CgkJCXJldHVybjsKCQl9CgoJCWlmICggdHlwZS5pbmRleE9mKCAiLiIgKSA+IC0xICkgewoKCQkJLy8gTmFtZXNwYWNlZCB0cmlnZ2VyOyBjcmVhdGUgYSByZWdleHAgdG8gbWF0Y2ggZXZlbnQgdHlwZSBpbiBoYW5kbGUoKQoJCQluYW1lc3BhY2VzID0gdHlwZS5zcGxpdCggIi4iICk7CgkJCXR5cGUgPSBuYW1lc3BhY2VzLnNoaWZ0KCk7CgkJCW5hbWVzcGFjZXMuc29ydCgpOwoJCX0KCQlvbnR5cGUgPSB0eXBlLmluZGV4T2YoICI6IiApIDwgMCAmJiAib24iICsgdHlwZTsKCgkJLy8gQ2FsbGVyIGNhbiBwYXNzIGluIGEgalF1ZXJ5LkV2ZW50IG9iamVjdCwgT2JqZWN0LCBvciBqdXN0IGFuIGV2ZW50IHR5cGUgc3RyaW5nCgkJZXZlbnQgPSBldmVudFsgalF1ZXJ5LmV4cGFuZG8gXSA/CgkJCWV2ZW50IDoKCQkJbmV3IGpRdWVyeS5FdmVudCggdHlwZSwgdHlwZW9mIGV2ZW50ID09PSAib2JqZWN0IiAmJiBldmVudCApOwoKCQkvLyBUcmlnZ2VyIGJpdG1hc2s6ICYgMSBmb3IgbmF0aXZlIGhhbmRsZXJzOyAmIDIgZm9yIGpRdWVyeSAoYWx3YXlzIHRydWUpCgkJZXZlbnQuaXNUcmlnZ2VyID0gb25seUhhbmRsZXJzID8gMiA6IDM7CgkJZXZlbnQubmFtZXNwYWNlID0gbmFtZXNwYWNlcy5qb2luKCAiLiIgKTsKCQlldmVudC5ybmFtZXNwYWNlID0gZXZlbnQubmFtZXNwYWNlID8KCQkJbmV3IFJlZ0V4cCggIihefFxcLikiICsgbmFtZXNwYWNlcy5qb2luKCAiXFwuKD86LipcXC58KSIgKSArICIoXFwufCQpIiApIDoKCQkJbnVsbDsKCgkJLy8gQ2xlYW4gdXAgdGhlIGV2ZW50IGluIGNhc2UgaXQgaXMgYmVpbmcgcmV1c2VkCgkJZXZlbnQucmVzdWx0ID0gdW5kZWZpbmVkOwoJCWlmICggIWV2ZW50LnRhcmdldCApIHsKCQkJZXZlbnQudGFyZ2V0ID0gZWxlbTsKCQl9CgoJCS8vIENsb25lIGFueSBpbmNvbWluZyBkYXRhIGFuZCBwcmVwZW5kIHRoZSBldmVudCwgY3JlYXRpbmcgdGhlIGhhbmRsZXIgYXJnIGxpc3QKCQlkYXRhID0gZGF0YSA9PSBudWxsID8KCQkJWyBldmVudCBdIDoKCQkJalF1ZXJ5Lm1ha2VBcnJheSggZGF0YSwgWyBldmVudCBdICk7CgoJCS8vIEFsbG93IHNwZWNpYWwgZXZlbnRzIHRvIGRyYXcgb3V0c2lkZSB0aGUgbGluZXMKCQlzcGVjaWFsID0galF1ZXJ5LmV2ZW50LnNwZWNpYWxbIHR5cGUgXSB8fCB7fTsKCQlpZiAoICFvbmx5SGFuZGxlcnMgJiYgc3BlY2lhbC50cmlnZ2VyICYmIHNwZWNpYWwudHJpZ2dlci5hcHBseSggZWxlbSwgZGF0YSApID09PSBmYWxzZSApIHsKCQkJcmV0dXJuOwoJCX0KCgkJLy8gRGV0ZXJtaW5lIGV2ZW50IHByb3BhZ2F0aW9uIHBhdGggaW4gYWR2YW5jZSwgcGVyIFczQyBldmVudHMgc3BlYyAoIzk5NTEpCgkJLy8gQnViYmxlIHVwIHRvIGRvY3VtZW50LCB0aGVuIHRvIHdpbmRvdzsgd2F0Y2ggZm9yIGEgZ2xvYmFsIG93bmVyRG9jdW1lbnQgdmFyICgjOTcyNCkKCQlpZiAoICFvbmx5SGFuZGxlcnMgJiYgIXNwZWNpYWwubm9CdWJibGUgJiYgIWpRdWVyeS5pc1dpbmRvdyggZWxlbSApICkgewoKCQkJYnViYmxlVHlwZSA9IHNwZWNpYWwuZGVsZWdhdGVUeXBlIHx8IHR5cGU7CgkJCWlmICggIXJmb2N1c01vcnBoLnRlc3QoIGJ1YmJsZVR5cGUgKyB0eXBlICkgKSB7CgkJCQljdXIgPSBjdXIucGFyZW50Tm9kZTsKCQkJfQoJCQlmb3IgKCA7IGN1cjsgY3VyID0gY3VyLnBhcmVudE5vZGUgKSB7CgkJCQlldmVudFBhdGgucHVzaCggY3VyICk7CgkJCQl0bXAgPSBjdXI7CgkJCX0KCgkJCS8vIE9ubHkgYWRkIHdpbmRvdyBpZiB3ZSBnb3QgdG8gZG9jdW1lbnQgKGUuZy4sIG5vdCBwbGFpbiBvYmogb3IgZGV0YWNoZWQgRE9NKQoJCQlpZiAoIHRtcCA9PT0gKCBlbGVtLm93bmVyRG9jdW1lbnQgfHwgZG9jdW1lbnQgKSApIHsKCQkJCWV2ZW50UGF0aC5wdXNoKCB0bXAuZGVmYXVsdFZpZXcgfHwgdG1wLnBhcmVudFdpbmRvdyB8fCB3aW5kb3cgKTsKCQkJfQoJCX0KCgkJLy8gRmlyZSBoYW5kbGVycyBvbiB0aGUgZXZlbnQgcGF0aAoJCWkgPSAwOwoJCXdoaWxlICggKCBjdXIgPSBldmVudFBhdGhbIGkrKyBdICkgJiYgIWV2ZW50LmlzUHJvcGFnYXRpb25TdG9wcGVkKCkgKSB7CgoJCQlldmVudC50eXBlID0gaSA+IDEgPwoJCQkJYnViYmxlVHlwZSA6CgkJCQlzcGVjaWFsLmJpbmRUeXBlIHx8IHR5cGU7CgoJCQkvLyBqUXVlcnkgaGFuZGxlcgoJCQloYW5kbGUgPSAoIGRhdGFQcml2LmdldCggY3VyLCAiZXZlbnRzIiApIHx8IHt9IClbIGV2ZW50LnR5cGUgXSAmJgoJCQkJZGF0YVByaXYuZ2V0KCBjdXIsICJoYW5kbGUiICk7CgkJCWlmICggaGFuZGxlICkgewoJCQkJaGFuZGxlLmFwcGx5KCBjdXIsIGRhdGEgKTsKCQkJfQoKCQkJLy8gTmF0aXZlIGhhbmRsZXIKCQkJaGFuZGxlID0gb250eXBlICYmIGN1clsgb250eXBlIF07CgkJCWlmICggaGFuZGxlICYmIGhhbmRsZS5hcHBseSAmJiBhY2NlcHREYXRhKCBjdXIgKSApIHsKCQkJCWV2ZW50LnJlc3VsdCA9IGhhbmRsZS5hcHBseSggY3VyLCBkYXRhICk7CgkJCQlpZiAoIGV2ZW50LnJlc3VsdCA9PT0gZmFsc2UgKSB7CgkJCQkJZXZlbnQucHJldmVudERlZmF1bHQoKTsKCQkJCX0KCQkJfQoJCX0KCQlldmVudC50eXBlID0gdHlwZTsKCgkJLy8gSWYgbm9ib2R5IHByZXZlbnRlZCB0aGUgZGVmYXVsdCBhY3Rpb24sIGRvIGl0IG5vdwoJCWlmICggIW9ubHlIYW5kbGVycyAmJiAhZXZlbnQuaXNEZWZhdWx0UHJldmVudGVkKCkgKSB7CgoJCQlpZiAoICggIXNwZWNpYWwuX2RlZmF1bHQgfHwKCQkJCXNwZWNpYWwuX2RlZmF1bHQuYXBwbHkoIGV2ZW50UGF0aC5wb3AoKSwgZGF0YSApID09PSBmYWxzZSApICYmCgkJCQlhY2NlcHREYXRhKCBlbGVtICkgKSB7CgoJCQkJLy8gQ2FsbCBhIG5hdGl2ZSBET00gbWV0aG9kIG9uIHRoZSB0YXJnZXQgd2l0aCB0aGUgc2FtZSBuYW1lIGFzIHRoZSBldmVudC4KCQkJCS8vIERvbid0IGRvIGRlZmF1bHQgYWN0aW9ucyBvbiB3aW5kb3csIHRoYXQncyB3aGVyZSBnbG9iYWwgdmFyaWFibGVzIGJlICgjNjE3MCkKCQkJCWlmICggb250eXBlICYmIGpRdWVyeS5pc0Z1bmN0aW9uKCBlbGVtWyB0eXBlIF0gKSAmJiAhalF1ZXJ5LmlzV2luZG93KCBlbGVtICkgKSB7CgoJCQkJCS8vIERvbid0IHJlLXRyaWdnZXIgYW4gb25GT08gZXZlbnQgd2hlbiB3ZSBjYWxsIGl0cyBGT08oKSBtZXRob2QKCQkJCQl0bXAgPSBlbGVtWyBvbnR5cGUgXTsKCgkJCQkJaWYgKCB0bXAgKSB7CgkJCQkJCWVsZW1bIG9udHlwZSBdID0gbnVsbDsKCQkJCQl9CgoJCQkJCS8vIFByZXZlbnQgcmUtdHJpZ2dlcmluZyBvZiB0aGUgc2FtZSBldmVudCwgc2luY2Ugd2UgYWxyZWFkeSBidWJibGVkIGl0IGFib3ZlCgkJCQkJalF1ZXJ5LmV2ZW50LnRyaWdnZXJlZCA9IHR5cGU7CgkJCQkJZWxlbVsgdHlwZSBdKCk7CgkJCQkJalF1ZXJ5LmV2ZW50LnRyaWdnZXJlZCA9IHVuZGVmaW5lZDsKCgkJCQkJaWYgKCB0bXAgKSB7CgkJCQkJCWVsZW1bIG9udHlwZSBdID0gdG1wOwoJCQkJCX0KCQkJCX0KCQkJfQoJCX0KCgkJcmV0dXJuIGV2ZW50LnJlc3VsdDsKCX0sCgoJLy8gUGlnZ3liYWNrIG9uIGEgZG9ub3IgZXZlbnQgdG8gc2ltdWxhdGUgYSBkaWZmZXJlbnQgb25lCgkvLyBVc2VkIG9ubHkgZm9yIGBmb2N1cyhpbiB8IG91dClgIGV2ZW50cwoJc2ltdWxhdGU6IGZ1bmN0aW9uKCB0eXBlLCBlbGVtLCBldmVudCApIHsKCQl2YXIgZSA9IGpRdWVyeS5leHRlbmQoCgkJCW5ldyBqUXVlcnkuRXZlbnQoKSwKCQkJZXZlbnQsCgkJCXsKCQkJCXR5cGU6IHR5cGUsCgkJCQlpc1NpbXVsYXRlZDogdHJ1ZQoJCQl9CgkJKTsKCgkJalF1ZXJ5LmV2ZW50LnRyaWdnZXIoIGUsIG51bGwsIGVsZW0gKTsKCX0KCn0gKTsKCmpRdWVyeS5mbi5leHRlbmQoIHsKCgl0cmlnZ2VyOiBmdW5jdGlvbiggdHlwZSwgZGF0YSApIHsKCQlyZXR1cm4gdGhpcy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJalF1ZXJ5LmV2ZW50LnRyaWdnZXIoIHR5cGUsIGRhdGEsIHRoaXMgKTsKCQl9ICk7Cgl9LAoJdHJpZ2dlckhhbmRsZXI6IGZ1bmN0aW9uKCB0eXBlLCBkYXRhICkgewoJCXZhciBlbGVtID0gdGhpc1sgMCBdOwoJCWlmICggZWxlbSApIHsKCQkJcmV0dXJuIGpRdWVyeS5ldmVudC50cmlnZ2VyKCB0eXBlLCBkYXRhLCBlbGVtLCB0cnVlICk7CgkJfQoJfQp9ICk7CgoKalF1ZXJ5LmVhY2goICggImJsdXIgZm9jdXMgZm9jdXNpbiBmb2N1c291dCByZXNpemUgc2Nyb2xsIGNsaWNrIGRibGNsaWNrICIgKwoJIm1vdXNlZG93biBtb3VzZXVwIG1vdXNlbW92ZSBtb3VzZW92ZXIgbW91c2VvdXQgbW91c2VlbnRlciBtb3VzZWxlYXZlICIgKwoJImNoYW5nZSBzZWxlY3Qgc3VibWl0IGtleWRvd24ga2V5cHJlc3Mga2V5dXAgY29udGV4dG1lbnUiICkuc3BsaXQoICIgIiApLAoJZnVuY3Rpb24oIGksIG5hbWUgKSB7CgoJLy8gSGFuZGxlIGV2ZW50IGJpbmRpbmcKCWpRdWVyeS5mblsgbmFtZSBdID0gZnVuY3Rpb24oIGRhdGEsIGZuICkgewoJCXJldHVybiBhcmd1bWVudHMubGVuZ3RoID4gMCA/CgkJCXRoaXMub24oIG5hbWUsIG51bGwsIGRhdGEsIGZuICkgOgoJCQl0aGlzLnRyaWdnZXIoIG5hbWUgKTsKCX07Cn0gKTsKCmpRdWVyeS5mbi5leHRlbmQoIHsKCWhvdmVyOiBmdW5jdGlvbiggZm5PdmVyLCBmbk91dCApIHsKCQlyZXR1cm4gdGhpcy5tb3VzZWVudGVyKCBmbk92ZXIgKS5tb3VzZWxlYXZlKCBmbk91dCB8fCBmbk92ZXIgKTsKCX0KfSApOwoKCgoKc3VwcG9ydC5mb2N1c2luID0gIm9uZm9jdXNpbiIgaW4gd2luZG93OwoKCi8vIFN1cHBvcnQ6IEZpcmVmb3ggPD00NAovLyBGaXJlZm94IGRvZXNuJ3QgaGF2ZSBmb2N1cyhpbiB8IG91dCkgZXZlbnRzCi8vIFJlbGF0ZWQgdGlja2V0IC0gaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njg3Nzg3Ci8vCi8vIFN1cHBvcnQ6IENocm9tZSA8PTQ4IC0gNDksIFNhZmFyaSA8PTkuMCAtIDkuMQovLyBmb2N1cyhpbiB8IG91dCkgZXZlbnRzIGZpcmUgYWZ0ZXIgZm9jdXMgJiBibHVyIGV2ZW50cywKLy8gd2hpY2ggaXMgc3BlYyB2aW9sYXRpb24gLSBodHRwOi8vd3d3LnczLm9yZy9UUi9ET00tTGV2ZWwtMy1FdmVudHMvI2V2ZW50cy1mb2N1c2V2ZW50LWV2ZW50LW9yZGVyCi8vIFJlbGF0ZWQgdGlja2V0IC0gaHR0cHM6Ly9idWdzLmNocm9taXVtLm9yZy9wL2Nocm9taXVtL2lzc3Vlcy9kZXRhaWw/aWQ9NDQ5ODU3CmlmICggIXN1cHBvcnQuZm9jdXNpbiApIHsKCWpRdWVyeS5lYWNoKCB7IGZvY3VzOiAiZm9jdXNpbiIsIGJsdXI6ICJmb2N1c291dCIgfSwgZnVuY3Rpb24oIG9yaWcsIGZpeCApIHsKCgkJLy8gQXR0YWNoIGEgc2luZ2xlIGNhcHR1cmluZyBoYW5kbGVyIG9uIHRoZSBkb2N1bWVudCB3aGlsZSBzb21lb25lIHdhbnRzIGZvY3VzaW4vZm9jdXNvdXQKCQl2YXIgaGFuZGxlciA9IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJalF1ZXJ5LmV2ZW50LnNpbXVsYXRlKCBmaXgsIGV2ZW50LnRhcmdldCwgalF1ZXJ5LmV2ZW50LmZpeCggZXZlbnQgKSApOwoJCX07CgoJCWpRdWVyeS5ldmVudC5zcGVjaWFsWyBmaXggXSA9IHsKCQkJc2V0dXA6IGZ1bmN0aW9uKCkgewoJCQkJdmFyIGRvYyA9IHRoaXMub3duZXJEb2N1bWVudCB8fCB0aGlzLAoJCQkJCWF0dGFjaGVzID0gZGF0YVByaXYuYWNjZXNzKCBkb2MsIGZpeCApOwoKCQkJCWlmICggIWF0dGFjaGVzICkgewoJCQkJCWRvYy5hZGRFdmVudExpc3RlbmVyKCBvcmlnLCBoYW5kbGVyLCB0cnVlICk7CgkJCQl9CgkJCQlkYXRhUHJpdi5hY2Nlc3MoIGRvYywgZml4LCAoIGF0dGFjaGVzIHx8IDAgKSArIDEgKTsKCQkJfSwKCQkJdGVhcmRvd246IGZ1bmN0aW9uKCkgewoJCQkJdmFyIGRvYyA9IHRoaXMub3duZXJEb2N1bWVudCB8fCB0aGlzLAoJCQkJCWF0dGFjaGVzID0gZGF0YVByaXYuYWNjZXNzKCBkb2MsIGZpeCApIC0gMTsKCgkJCQlpZiAoICFhdHRhY2hlcyApIHsKCQkJCQlkb2MucmVtb3ZlRXZlbnRMaXN0ZW5lciggb3JpZywgaGFuZGxlciwgdHJ1ZSApOwoJCQkJCWRhdGFQcml2LnJlbW92ZSggZG9jLCBmaXggKTsKCgkJCQl9IGVsc2UgewoJCQkJCWRhdGFQcml2LmFjY2VzcyggZG9jLCBmaXgsIGF0dGFjaGVzICk7CgkJCQl9CgkJCX0KCQl9OwoJfSApOwp9CnZhciBsb2NhdGlvbiA9IHdpbmRvdy5sb2NhdGlvbjsKCnZhciBub25jZSA9IGpRdWVyeS5ub3coKTsKCnZhciBycXVlcnkgPSAoIC9cPy8gKTsKCgoKLy8gQ3Jvc3MtYnJvd3NlciB4bWwgcGFyc2luZwpqUXVlcnkucGFyc2VYTUwgPSBmdW5jdGlvbiggZGF0YSApIHsKCXZhciB4bWw7CglpZiAoICFkYXRhIHx8IHR5cGVvZiBkYXRhICE9PSAic3RyaW5nIiApIHsKCQlyZXR1cm4gbnVsbDsKCX0KCgkvLyBTdXBwb3J0OiBJRSA5IC0gMTEgb25seQoJLy8gSUUgdGhyb3dzIG9uIHBhcnNlRnJvbVN0cmluZyB3aXRoIGludmFsaWQgaW5wdXQuCgl0cnkgewoJCXhtbCA9ICggbmV3IHdpbmRvdy5ET01QYXJzZXIoKSApLnBhcnNlRnJvbVN0cmluZyggZGF0YSwgInRleHQveG1sIiApOwoJfSBjYXRjaCAoIGUgKSB7CgkJeG1sID0gdW5kZWZpbmVkOwoJfQoKCWlmICggIXhtbCB8fCB4bWwuZ2V0RWxlbWVudHNCeVRhZ05hbWUoICJwYXJzZXJlcnJvciIgKS5sZW5ndGggKSB7CgkJalF1ZXJ5LmVycm9yKCAiSW52YWxpZCBYTUw6ICIgKyBkYXRhICk7Cgl9CglyZXR1cm4geG1sOwp9OwoKCnZhcgoJcmJyYWNrZXQgPSAvXFtcXSQvLAoJckNSTEYgPSAvXHI/XG4vZywKCXJzdWJtaXR0ZXJUeXBlcyA9IC9eKD86c3VibWl0fGJ1dHRvbnxpbWFnZXxyZXNldHxmaWxlKSQvaSwKCXJzdWJtaXR0YWJsZSA9IC9eKD86aW5wdXR8c2VsZWN0fHRleHRhcmVhfGtleWdlbikvaTsKCmZ1bmN0aW9uIGJ1aWxkUGFyYW1zKCBwcmVmaXgsIG9iaiwgdHJhZGl0aW9uYWwsIGFkZCApIHsKCXZhciBuYW1lOwoKCWlmICggalF1ZXJ5LmlzQXJyYXkoIG9iaiApICkgewoKCQkvLyBTZXJpYWxpemUgYXJyYXkgaXRlbS4KCQlqUXVlcnkuZWFjaCggb2JqLCBmdW5jdGlvbiggaSwgdiApIHsKCQkJaWYgKCB0cmFkaXRpb25hbCB8fCByYnJhY2tldC50ZXN0KCBwcmVmaXggKSApIHsKCgkJCQkvLyBUcmVhdCBlYWNoIGFycmF5IGl0ZW0gYXMgYSBzY2FsYXIuCgkJCQlhZGQoIHByZWZpeCwgdiApOwoKCQkJfSBlbHNlIHsKCgkJCQkvLyBJdGVtIGlzIG5vbi1zY2FsYXIgKGFycmF5IG9yIG9iamVjdCksIGVuY29kZSBpdHMgbnVtZXJpYyBpbmRleC4KCQkJCWJ1aWxkUGFyYW1zKAoJCQkJCXByZWZpeCArICJbIiArICggdHlwZW9mIHYgPT09ICJvYmplY3QiICYmIHYgIT0gbnVsbCA/IGkgOiAiIiApICsgIl0iLAoJCQkJCXYsCgkJCQkJdHJhZGl0aW9uYWwsCgkJCQkJYWRkCgkJCQkpOwoJCQl9CgkJfSApOwoKCX0gZWxzZSBpZiAoICF0cmFkaXRpb25hbCAmJiBqUXVlcnkudHlwZSggb2JqICkgPT09ICJvYmplY3QiICkgewoKCQkvLyBTZXJpYWxpemUgb2JqZWN0IGl0ZW0uCgkJZm9yICggbmFtZSBpbiBvYmogKSB7CgkJCWJ1aWxkUGFyYW1zKCBwcmVmaXggKyAiWyIgKyBuYW1lICsgIl0iLCBvYmpbIG5hbWUgXSwgdHJhZGl0aW9uYWwsIGFkZCApOwoJCX0KCgl9IGVsc2UgewoKCQkvLyBTZXJpYWxpemUgc2NhbGFyIGl0ZW0uCgkJYWRkKCBwcmVmaXgsIG9iaiApOwoJfQp9CgovLyBTZXJpYWxpemUgYW4gYXJyYXkgb2YgZm9ybSBlbGVtZW50cyBvciBhIHNldCBvZgovLyBrZXkvdmFsdWVzIGludG8gYSBxdWVyeSBzdHJpbmcKalF1ZXJ5LnBhcmFtID0gZnVuY3Rpb24oIGEsIHRyYWRpdGlvbmFsICkgewoJdmFyIHByZWZpeCwKCQlzID0gW10sCgkJYWRkID0gZnVuY3Rpb24oIGtleSwgdmFsdWVPckZ1bmN0aW9uICkgewoKCQkJLy8gSWYgdmFsdWUgaXMgYSBmdW5jdGlvbiwgaW52b2tlIGl0IGFuZCB1c2UgaXRzIHJldHVybiB2YWx1ZQoJCQl2YXIgdmFsdWUgPSBqUXVlcnkuaXNGdW5jdGlvbiggdmFsdWVPckZ1bmN0aW9uICkgPwoJCQkJdmFsdWVPckZ1bmN0aW9uKCkgOgoJCQkJdmFsdWVPckZ1bmN0aW9uOwoKCQkJc1sgcy5sZW5ndGggXSA9IGVuY29kZVVSSUNvbXBvbmVudCgga2V5ICkgKyAiPSIgKwoJCQkJZW5jb2RlVVJJQ29tcG9uZW50KCB2YWx1ZSA9PSBudWxsID8gIiIgOiB2YWx1ZSApOwoJCX07CgoJLy8gSWYgYW4gYXJyYXkgd2FzIHBhc3NlZCBpbiwgYXNzdW1lIHRoYXQgaXQgaXMgYW4gYXJyYXkgb2YgZm9ybSBlbGVtZW50cy4KCWlmICggalF1ZXJ5LmlzQXJyYXkoIGEgKSB8fCAoIGEuanF1ZXJ5ICYmICFqUXVlcnkuaXNQbGFpbk9iamVjdCggYSApICkgKSB7CgoJCS8vIFNlcmlhbGl6ZSB0aGUgZm9ybSBlbGVtZW50cwoJCWpRdWVyeS5lYWNoKCBhLCBmdW5jdGlvbigpIHsKCQkJYWRkKCB0aGlzLm5hbWUsIHRoaXMudmFsdWUgKTsKCQl9ICk7CgoJfSBlbHNlIHsKCgkJLy8gSWYgdHJhZGl0aW9uYWwsIGVuY29kZSB0aGUgIm9sZCIgd2F5ICh0aGUgd2F5IDEuMy4yIG9yIG9sZGVyCgkJLy8gZGlkIGl0KSwgb3RoZXJ3aXNlIGVuY29kZSBwYXJhbXMgcmVjdXJzaXZlbHkuCgkJZm9yICggcHJlZml4IGluIGEgKSB7CgkJCWJ1aWxkUGFyYW1zKCBwcmVmaXgsIGFbIHByZWZpeCBdLCB0cmFkaXRpb25hbCwgYWRkICk7CgkJfQoJfQoKCS8vIFJldHVybiB0aGUgcmVzdWx0aW5nIHNlcmlhbGl6YXRpb24KCXJldHVybiBzLmpvaW4oICImIiApOwp9OwoKalF1ZXJ5LmZuLmV4dGVuZCggewoJc2VyaWFsaXplOiBmdW5jdGlvbigpIHsKCQlyZXR1cm4galF1ZXJ5LnBhcmFtKCB0aGlzLnNlcmlhbGl6ZUFycmF5KCkgKTsKCX0sCglzZXJpYWxpemVBcnJheTogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMubWFwKCBmdW5jdGlvbigpIHsKCgkJCS8vIENhbiBhZGQgcHJvcEhvb2sgZm9yICJlbGVtZW50cyIgdG8gZmlsdGVyIG9yIGFkZCBmb3JtIGVsZW1lbnRzCgkJCXZhciBlbGVtZW50cyA9IGpRdWVyeS5wcm9wKCB0aGlzLCAiZWxlbWVudHMiICk7CgkJCXJldHVybiBlbGVtZW50cyA/IGpRdWVyeS5tYWtlQXJyYXkoIGVsZW1lbnRzICkgOiB0aGlzOwoJCX0gKQoJCS5maWx0ZXIoIGZ1bmN0aW9uKCkgewoJCQl2YXIgdHlwZSA9IHRoaXMudHlwZTsKCgkJCS8vIFVzZSAuaXMoICI6ZGlzYWJsZWQiICkgc28gdGhhdCBmaWVsZHNldFtkaXNhYmxlZF0gd29ya3MKCQkJcmV0dXJuIHRoaXMubmFtZSAmJiAhalF1ZXJ5KCB0aGlzICkuaXMoICI6ZGlzYWJsZWQiICkgJiYKCQkJCXJzdWJtaXR0YWJsZS50ZXN0KCB0aGlzLm5vZGVOYW1lICkgJiYgIXJzdWJtaXR0ZXJUeXBlcy50ZXN0KCB0eXBlICkgJiYKCQkJCSggdGhpcy5jaGVja2VkIHx8ICFyY2hlY2thYmxlVHlwZS50ZXN0KCB0eXBlICkgKTsKCQl9ICkKCQkubWFwKCBmdW5jdGlvbiggaSwgZWxlbSApIHsKCQkJdmFyIHZhbCA9IGpRdWVyeSggdGhpcyApLnZhbCgpOwoKCQkJaWYgKCB2YWwgPT0gbnVsbCApIHsKCQkJCXJldHVybiBudWxsOwoJCQl9CgoJCQlpZiAoIGpRdWVyeS5pc0FycmF5KCB2YWwgKSApIHsKCQkJCXJldHVybiBqUXVlcnkubWFwKCB2YWwsIGZ1bmN0aW9uKCB2YWwgKSB7CgkJCQkJcmV0dXJuIHsgbmFtZTogZWxlbS5uYW1lLCB2YWx1ZTogdmFsLnJlcGxhY2UoIHJDUkxGLCAiXHJcbiIgKSB9OwoJCQkJfSApOwoJCQl9CgoJCQlyZXR1cm4geyBuYW1lOiBlbGVtLm5hbWUsIHZhbHVlOiB2YWwucmVwbGFjZSggckNSTEYsICJcclxuIiApIH07CgkJfSApLmdldCgpOwoJfQp9ICk7CgoKdmFyCglyMjAgPSAvJTIwL2csCglyaGFzaCA9IC8jLiokLywKCXJhbnRpQ2FjaGUgPSAvKFs/Jl0pXz1bXiZdKi8sCglyaGVhZGVycyA9IC9eKC4qPyk6WyBcdF0qKFteXHJcbl0qKSQvbWcsCgoJLy8gIzc2NTMsICM4MTI1LCAjODE1MjogbG9jYWwgcHJvdG9jb2wgZGV0ZWN0aW9uCglybG9jYWxQcm90b2NvbCA9IC9eKD86YWJvdXR8YXBwfGFwcC1zdG9yYWdlfC4rLWV4dGVuc2lvbnxmaWxlfHJlc3x3aWRnZXQpOiQvLAoJcm5vQ29udGVudCA9IC9eKD86R0VUfEhFQUQpJC8sCglycHJvdG9jb2wgPSAvXlwvXC8vLAoKCS8qIFByZWZpbHRlcnMKCSAqIDEpIFRoZXkgYXJlIHVzZWZ1bCB0byBpbnRyb2R1Y2UgY3VzdG9tIGRhdGFUeXBlcyAoc2VlIGFqYXgvanNvbnAuanMgZm9yIGFuIGV4YW1wbGUpCgkgKiAyKSBUaGVzZSBhcmUgY2FsbGVkOgoJICogICAgLSBCRUZPUkUgYXNraW5nIGZvciBhIHRyYW5zcG9ydAoJICogICAgLSBBRlRFUiBwYXJhbSBzZXJpYWxpemF0aW9uIChzLmRhdGEgaXMgYSBzdHJpbmcgaWYgcy5wcm9jZXNzRGF0YSBpcyB0cnVlKQoJICogMykga2V5IGlzIHRoZSBkYXRhVHlwZQoJICogNCkgdGhlIGNhdGNoYWxsIHN5bWJvbCAiKiIgY2FuIGJlIHVzZWQKCSAqIDUpIGV4ZWN1dGlvbiB3aWxsIHN0YXJ0IHdpdGggdHJhbnNwb3J0IGRhdGFUeXBlIGFuZCBUSEVOIGNvbnRpbnVlIGRvd24gdG8gIioiIGlmIG5lZWRlZAoJICovCglwcmVmaWx0ZXJzID0ge30sCgoJLyogVHJhbnNwb3J0cyBiaW5kaW5ncwoJICogMSkga2V5IGlzIHRoZSBkYXRhVHlwZQoJICogMikgdGhlIGNhdGNoYWxsIHN5bWJvbCAiKiIgY2FuIGJlIHVzZWQKCSAqIDMpIHNlbGVjdGlvbiB3aWxsIHN0YXJ0IHdpdGggdHJhbnNwb3J0IGRhdGFUeXBlIGFuZCBUSEVOIGdvIHRvICIqIiBpZiBuZWVkZWQKCSAqLwoJdHJhbnNwb3J0cyA9IHt9LAoKCS8vIEF2b2lkIGNvbW1lbnQtcHJvbG9nIGNoYXIgc2VxdWVuY2UgKCMxMDA5OCk7IG11c3QgYXBwZWFzZSBsaW50IGFuZCBldmFkZSBjb21wcmVzc2lvbgoJYWxsVHlwZXMgPSAiKi8iLmNvbmNhdCggIioiICksCgoJLy8gQW5jaG9yIHRhZyBmb3IgcGFyc2luZyB0aGUgZG9jdW1lbnQgb3JpZ2luCglvcmlnaW5BbmNob3IgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCAiYSIgKTsKCW9yaWdpbkFuY2hvci5ocmVmID0gbG9jYXRpb24uaHJlZjsKCi8vIEJhc2UgImNvbnN0cnVjdG9yIiBmb3IgalF1ZXJ5LmFqYXhQcmVmaWx0ZXIgYW5kIGpRdWVyeS5hamF4VHJhbnNwb3J0CmZ1bmN0aW9uIGFkZFRvUHJlZmlsdGVyc09yVHJhbnNwb3J0cyggc3RydWN0dXJlICkgewoKCS8vIGRhdGFUeXBlRXhwcmVzc2lvbiBpcyBvcHRpb25hbCBhbmQgZGVmYXVsdHMgdG8gIioiCglyZXR1cm4gZnVuY3Rpb24oIGRhdGFUeXBlRXhwcmVzc2lvbiwgZnVuYyApIHsKCgkJaWYgKCB0eXBlb2YgZGF0YVR5cGVFeHByZXNzaW9uICE9PSAic3RyaW5nIiApIHsKCQkJZnVuYyA9IGRhdGFUeXBlRXhwcmVzc2lvbjsKCQkJZGF0YVR5cGVFeHByZXNzaW9uID0gIioiOwoJCX0KCgkJdmFyIGRhdGFUeXBlLAoJCQlpID0gMCwKCQkJZGF0YVR5cGVzID0gZGF0YVR5cGVFeHByZXNzaW9uLnRvTG93ZXJDYXNlKCkubWF0Y2goIHJub3RodG1sd2hpdGUgKSB8fCBbXTsKCgkJaWYgKCBqUXVlcnkuaXNGdW5jdGlvbiggZnVuYyApICkgewoKCQkJLy8gRm9yIGVhY2ggZGF0YVR5cGUgaW4gdGhlIGRhdGFUeXBlRXhwcmVzc2lvbgoJCQl3aGlsZSAoICggZGF0YVR5cGUgPSBkYXRhVHlwZXNbIGkrKyBdICkgKSB7CgoJCQkJLy8gUHJlcGVuZCBpZiByZXF1ZXN0ZWQKCQkJCWlmICggZGF0YVR5cGVbIDAgXSA9PT0gIisiICkgewoJCQkJCWRhdGFUeXBlID0gZGF0YVR5cGUuc2xpY2UoIDEgKSB8fCAiKiI7CgkJCQkJKCBzdHJ1Y3R1cmVbIGRhdGFUeXBlIF0gPSBzdHJ1Y3R1cmVbIGRhdGFUeXBlIF0gfHwgW10gKS51bnNoaWZ0KCBmdW5jICk7CgoJCQkJLy8gT3RoZXJ3aXNlIGFwcGVuZAoJCQkJfSBlbHNlIHsKCQkJCQkoIHN0cnVjdHVyZVsgZGF0YVR5cGUgXSA9IHN0cnVjdHVyZVsgZGF0YVR5cGUgXSB8fCBbXSApLnB1c2goIGZ1bmMgKTsKCQkJCX0KCQkJfQoJCX0KCX07Cn0KCi8vIEJhc2UgaW5zcGVjdGlvbiBmdW5jdGlvbiBmb3IgcHJlZmlsdGVycyBhbmQgdHJhbnNwb3J0cwpmdW5jdGlvbiBpbnNwZWN0UHJlZmlsdGVyc09yVHJhbnNwb3J0cyggc3RydWN0dXJlLCBvcHRpb25zLCBvcmlnaW5hbE9wdGlvbnMsIGpxWEhSICkgewoKCXZhciBpbnNwZWN0ZWQgPSB7fSwKCQlzZWVraW5nVHJhbnNwb3J0ID0gKCBzdHJ1Y3R1cmUgPT09IHRyYW5zcG9ydHMgKTsKCglmdW5jdGlvbiBpbnNwZWN0KCBkYXRhVHlwZSApIHsKCQl2YXIgc2VsZWN0ZWQ7CgkJaW5zcGVjdGVkWyBkYXRhVHlwZSBdID0gdHJ1ZTsKCQlqUXVlcnkuZWFjaCggc3RydWN0dXJlWyBkYXRhVHlwZSBdIHx8IFtdLCBmdW5jdGlvbiggXywgcHJlZmlsdGVyT3JGYWN0b3J5ICkgewoJCQl2YXIgZGF0YVR5cGVPclRyYW5zcG9ydCA9IHByZWZpbHRlck9yRmFjdG9yeSggb3B0aW9ucywgb3JpZ2luYWxPcHRpb25zLCBqcVhIUiApOwoJCQlpZiAoIHR5cGVvZiBkYXRhVHlwZU9yVHJhbnNwb3J0ID09PSAic3RyaW5nIiAmJgoJCQkJIXNlZWtpbmdUcmFuc3BvcnQgJiYgIWluc3BlY3RlZFsgZGF0YVR5cGVPclRyYW5zcG9ydCBdICkgewoKCQkJCW9wdGlvbnMuZGF0YVR5cGVzLnVuc2hpZnQoIGRhdGFUeXBlT3JUcmFuc3BvcnQgKTsKCQkJCWluc3BlY3QoIGRhdGFUeXBlT3JUcmFuc3BvcnQgKTsKCQkJCXJldHVybiBmYWxzZTsKCQkJfSBlbHNlIGlmICggc2Vla2luZ1RyYW5zcG9ydCApIHsKCQkJCXJldHVybiAhKCBzZWxlY3RlZCA9IGRhdGFUeXBlT3JUcmFuc3BvcnQgKTsKCQkJfQoJCX0gKTsKCQlyZXR1cm4gc2VsZWN0ZWQ7Cgl9CgoJcmV0dXJuIGluc3BlY3QoIG9wdGlvbnMuZGF0YVR5cGVzWyAwIF0gKSB8fCAhaW5zcGVjdGVkWyAiKiIgXSAmJiBpbnNwZWN0KCAiKiIgKTsKfQoKLy8gQSBzcGVjaWFsIGV4dGVuZCBmb3IgYWpheCBvcHRpb25zCi8vIHRoYXQgdGFrZXMgImZsYXQiIG9wdGlvbnMgKG5vdCB0byBiZSBkZWVwIGV4dGVuZGVkKQovLyBGaXhlcyAjOTg4NwpmdW5jdGlvbiBhamF4RXh0ZW5kKCB0YXJnZXQsIHNyYyApIHsKCXZhciBrZXksIGRlZXAsCgkJZmxhdE9wdGlvbnMgPSBqUXVlcnkuYWpheFNldHRpbmdzLmZsYXRPcHRpb25zIHx8IHt9OwoKCWZvciAoIGtleSBpbiBzcmMgKSB7CgkJaWYgKCBzcmNbIGtleSBdICE9PSB1bmRlZmluZWQgKSB7CgkJCSggZmxhdE9wdGlvbnNbIGtleSBdID8gdGFyZ2V0IDogKCBkZWVwIHx8ICggZGVlcCA9IHt9ICkgKSApWyBrZXkgXSA9IHNyY1sga2V5IF07CgkJfQoJfQoJaWYgKCBkZWVwICkgewoJCWpRdWVyeS5leHRlbmQoIHRydWUsIHRhcmdldCwgZGVlcCApOwoJfQoKCXJldHVybiB0YXJnZXQ7Cn0KCi8qIEhhbmRsZXMgcmVzcG9uc2VzIHRvIGFuIGFqYXggcmVxdWVzdDoKICogLSBmaW5kcyB0aGUgcmlnaHQgZGF0YVR5cGUgKG1lZGlhdGVzIGJldHdlZW4gY29udGVudC10eXBlIGFuZCBleHBlY3RlZCBkYXRhVHlwZSkKICogLSByZXR1cm5zIHRoZSBjb3JyZXNwb25kaW5nIHJlc3BvbnNlCiAqLwpmdW5jdGlvbiBhamF4SGFuZGxlUmVzcG9uc2VzKCBzLCBqcVhIUiwgcmVzcG9uc2VzICkgewoKCXZhciBjdCwgdHlwZSwgZmluYWxEYXRhVHlwZSwgZmlyc3REYXRhVHlwZSwKCQljb250ZW50cyA9IHMuY29udGVudHMsCgkJZGF0YVR5cGVzID0gcy5kYXRhVHlwZXM7CgoJLy8gUmVtb3ZlIGF1dG8gZGF0YVR5cGUgYW5kIGdldCBjb250ZW50LXR5cGUgaW4gdGhlIHByb2Nlc3MKCXdoaWxlICggZGF0YVR5cGVzWyAwIF0gPT09ICIqIiApIHsKCQlkYXRhVHlwZXMuc2hpZnQoKTsKCQlpZiAoIGN0ID09PSB1bmRlZmluZWQgKSB7CgkJCWN0ID0gcy5taW1lVHlwZSB8fCBqcVhIUi5nZXRSZXNwb25zZUhlYWRlciggIkNvbnRlbnQtVHlwZSIgKTsKCQl9Cgl9CgoJLy8gQ2hlY2sgaWYgd2UncmUgZGVhbGluZyB3aXRoIGEga25vd24gY29udGVudC10eXBlCglpZiAoIGN0ICkgewoJCWZvciAoIHR5cGUgaW4gY29udGVudHMgKSB7CgkJCWlmICggY29udGVudHNbIHR5cGUgXSAmJiBjb250ZW50c1sgdHlwZSBdLnRlc3QoIGN0ICkgKSB7CgkJCQlkYXRhVHlwZXMudW5zaGlmdCggdHlwZSApOwoJCQkJYnJlYWs7CgkJCX0KCQl9Cgl9CgoJLy8gQ2hlY2sgdG8gc2VlIGlmIHdlIGhhdmUgYSByZXNwb25zZSBmb3IgdGhlIGV4cGVjdGVkIGRhdGFUeXBlCglpZiAoIGRhdGFUeXBlc1sgMCBdIGluIHJlc3BvbnNlcyApIHsKCQlmaW5hbERhdGFUeXBlID0gZGF0YVR5cGVzWyAwIF07Cgl9IGVsc2UgewoKCQkvLyBUcnkgY29udmVydGlibGUgZGF0YVR5cGVzCgkJZm9yICggdHlwZSBpbiByZXNwb25zZXMgKSB7CgkJCWlmICggIWRhdGFUeXBlc1sgMCBdIHx8IHMuY29udmVydGVyc1sgdHlwZSArICIgIiArIGRhdGFUeXBlc1sgMCBdIF0gKSB7CgkJCQlmaW5hbERhdGFUeXBlID0gdHlwZTsKCQkJCWJyZWFrOwoJCQl9CgkJCWlmICggIWZpcnN0RGF0YVR5cGUgKSB7CgkJCQlmaXJzdERhdGFUeXBlID0gdHlwZTsKCQkJfQoJCX0KCgkJLy8gT3IganVzdCB1c2UgZmlyc3Qgb25lCgkJZmluYWxEYXRhVHlwZSA9IGZpbmFsRGF0YVR5cGUgfHwgZmlyc3REYXRhVHlwZTsKCX0KCgkvLyBJZiB3ZSBmb3VuZCBhIGRhdGFUeXBlCgkvLyBXZSBhZGQgdGhlIGRhdGFUeXBlIHRvIHRoZSBsaXN0IGlmIG5lZWRlZAoJLy8gYW5kIHJldHVybiB0aGUgY29ycmVzcG9uZGluZyByZXNwb25zZQoJaWYgKCBmaW5hbERhdGFUeXBlICkgewoJCWlmICggZmluYWxEYXRhVHlwZSAhPT0gZGF0YVR5cGVzWyAwIF0gKSB7CgkJCWRhdGFUeXBlcy51bnNoaWZ0KCBmaW5hbERhdGFUeXBlICk7CgkJfQoJCXJldHVybiByZXNwb25zZXNbIGZpbmFsRGF0YVR5cGUgXTsKCX0KfQoKLyogQ2hhaW4gY29udmVyc2lvbnMgZ2l2ZW4gdGhlIHJlcXVlc3QgYW5kIHRoZSBvcmlnaW5hbCByZXNwb25zZQogKiBBbHNvIHNldHMgdGhlIHJlc3BvbnNlWFhYIGZpZWxkcyBvbiB0aGUganFYSFIgaW5zdGFuY2UKICovCmZ1bmN0aW9uIGFqYXhDb252ZXJ0KCBzLCByZXNwb25zZSwganFYSFIsIGlzU3VjY2VzcyApIHsKCXZhciBjb252MiwgY3VycmVudCwgY29udiwgdG1wLCBwcmV2LAoJCWNvbnZlcnRlcnMgPSB7fSwKCgkJLy8gV29yayB3aXRoIGEgY29weSBvZiBkYXRhVHlwZXMgaW4gY2FzZSB3ZSBuZWVkIHRvIG1vZGlmeSBpdCBmb3IgY29udmVyc2lvbgoJCWRhdGFUeXBlcyA9IHMuZGF0YVR5cGVzLnNsaWNlKCk7CgoJLy8gQ3JlYXRlIGNvbnZlcnRlcnMgbWFwIHdpdGggbG93ZXJjYXNlZCBrZXlzCglpZiAoIGRhdGFUeXBlc1sgMSBdICkgewoJCWZvciAoIGNvbnYgaW4gcy5jb252ZXJ0ZXJzICkgewoJCQljb252ZXJ0ZXJzWyBjb252LnRvTG93ZXJDYXNlKCkgXSA9IHMuY29udmVydGVyc1sgY29udiBdOwoJCX0KCX0KCgljdXJyZW50ID0gZGF0YVR5cGVzLnNoaWZ0KCk7CgoJLy8gQ29udmVydCB0byBlYWNoIHNlcXVlbnRpYWwgZGF0YVR5cGUKCXdoaWxlICggY3VycmVudCApIHsKCgkJaWYgKCBzLnJlc3BvbnNlRmllbGRzWyBjdXJyZW50IF0gKSB7CgkJCWpxWEhSWyBzLnJlc3BvbnNlRmllbGRzWyBjdXJyZW50IF0gXSA9IHJlc3BvbnNlOwoJCX0KCgkJLy8gQXBwbHkgdGhlIGRhdGFGaWx0ZXIgaWYgcHJvdmlkZWQKCQlpZiAoICFwcmV2ICYmIGlzU3VjY2VzcyAmJiBzLmRhdGFGaWx0ZXIgKSB7CgkJCXJlc3BvbnNlID0gcy5kYXRhRmlsdGVyKCByZXNwb25zZSwgcy5kYXRhVHlwZSApOwoJCX0KCgkJcHJldiA9IGN1cnJlbnQ7CgkJY3VycmVudCA9IGRhdGFUeXBlcy5zaGlmdCgpOwoKCQlpZiAoIGN1cnJlbnQgKSB7CgoJCQkvLyBUaGVyZSdzIG9ubHkgd29yayB0byBkbyBpZiBjdXJyZW50IGRhdGFUeXBlIGlzIG5vbi1hdXRvCgkJCWlmICggY3VycmVudCA9PT0gIioiICkgewoKCQkJCWN1cnJlbnQgPSBwcmV2OwoKCQkJLy8gQ29udmVydCByZXNwb25zZSBpZiBwcmV2IGRhdGFUeXBlIGlzIG5vbi1hdXRvIGFuZCBkaWZmZXJzIGZyb20gY3VycmVudAoJCQl9IGVsc2UgaWYgKCBwcmV2ICE9PSAiKiIgJiYgcHJldiAhPT0gY3VycmVudCApIHsKCgkJCQkvLyBTZWVrIGEgZGlyZWN0IGNvbnZlcnRlcgoJCQkJY29udiA9IGNvbnZlcnRlcnNbIHByZXYgKyAiICIgKyBjdXJyZW50IF0gfHwgY29udmVydGVyc1sgIiogIiArIGN1cnJlbnQgXTsKCgkJCQkvLyBJZiBub25lIGZvdW5kLCBzZWVrIGEgcGFpcgoJCQkJaWYgKCAhY29udiApIHsKCQkJCQlmb3IgKCBjb252MiBpbiBjb252ZXJ0ZXJzICkgewoKCQkJCQkJLy8gSWYgY29udjIgb3V0cHV0cyBjdXJyZW50CgkJCQkJCXRtcCA9IGNvbnYyLnNwbGl0KCAiICIgKTsKCQkJCQkJaWYgKCB0bXBbIDEgXSA9PT0gY3VycmVudCApIHsKCgkJCQkJCQkvLyBJZiBwcmV2IGNhbiBiZSBjb252ZXJ0ZWQgdG8gYWNjZXB0ZWQgaW5wdXQKCQkJCQkJCWNvbnYgPSBjb252ZXJ0ZXJzWyBwcmV2ICsgIiAiICsgdG1wWyAwIF0gXSB8fAoJCQkJCQkJCWNvbnZlcnRlcnNbICIqICIgKyB0bXBbIDAgXSBdOwoJCQkJCQkJaWYgKCBjb252ICkgewoKCQkJCQkJCQkvLyBDb25kZW5zZSBlcXVpdmFsZW5jZSBjb252ZXJ0ZXJzCgkJCQkJCQkJaWYgKCBjb252ID09PSB0cnVlICkgewoJCQkJCQkJCQljb252ID0gY29udmVydGVyc1sgY29udjIgXTsKCgkJCQkJCQkJLy8gT3RoZXJ3aXNlLCBpbnNlcnQgdGhlIGludGVybWVkaWF0ZSBkYXRhVHlwZQoJCQkJCQkJCX0gZWxzZSBpZiAoIGNvbnZlcnRlcnNbIGNvbnYyIF0gIT09IHRydWUgKSB7CgkJCQkJCQkJCWN1cnJlbnQgPSB0bXBbIDAgXTsKCQkJCQkJCQkJZGF0YVR5cGVzLnVuc2hpZnQoIHRtcFsgMSBdICk7CgkJCQkJCQkJfQoJCQkJCQkJCWJyZWFrOwoJCQkJCQkJfQoJCQkJCQl9CgkJCQkJfQoJCQkJfQoKCQkJCS8vIEFwcGx5IGNvbnZlcnRlciAoaWYgbm90IGFuIGVxdWl2YWxlbmNlKQoJCQkJaWYgKCBjb252ICE9PSB0cnVlICkgewoKCQkJCQkvLyBVbmxlc3MgZXJyb3JzIGFyZSBhbGxvd2VkIHRvIGJ1YmJsZSwgY2F0Y2ggYW5kIHJldHVybiB0aGVtCgkJCQkJaWYgKCBjb252ICYmIHMudGhyb3dzICkgewoJCQkJCQlyZXNwb25zZSA9IGNvbnYoIHJlc3BvbnNlICk7CgkJCQkJfSBlbHNlIHsKCQkJCQkJdHJ5IHsKCQkJCQkJCXJlc3BvbnNlID0gY29udiggcmVzcG9uc2UgKTsKCQkJCQkJfSBjYXRjaCAoIGUgKSB7CgkJCQkJCQlyZXR1cm4gewoJCQkJCQkJCXN0YXRlOiAicGFyc2VyZXJyb3IiLAoJCQkJCQkJCWVycm9yOiBjb252ID8gZSA6ICJObyBjb252ZXJzaW9uIGZyb20gIiArIHByZXYgKyAiIHRvICIgKyBjdXJyZW50CgkJCQkJCQl9OwoJCQkJCQl9CgkJCQkJfQoJCQkJfQoJCQl9CgkJfQoJfQoKCXJldHVybiB7IHN0YXRlOiAic3VjY2VzcyIsIGRhdGE6IHJlc3BvbnNlIH07Cn0KCmpRdWVyeS5leHRlbmQoIHsKCgkvLyBDb3VudGVyIGZvciBob2xkaW5nIHRoZSBudW1iZXIgb2YgYWN0aXZlIHF1ZXJpZXMKCWFjdGl2ZTogMCwKCgkvLyBMYXN0LU1vZGlmaWVkIGhlYWRlciBjYWNoZSBmb3IgbmV4dCByZXF1ZXN0CglsYXN0TW9kaWZpZWQ6IHt9LAoJZXRhZzoge30sCgoJYWpheFNldHRpbmdzOiB7CgkJdXJsOiBsb2NhdGlvbi5ocmVmLAoJCXR5cGU6ICJHRVQiLAoJCWlzTG9jYWw6IHJsb2NhbFByb3RvY29sLnRlc3QoIGxvY2F0aW9uLnByb3RvY29sICksCgkJZ2xvYmFsOiB0cnVlLAoJCXByb2Nlc3NEYXRhOiB0cnVlLAoJCWFzeW5jOiB0cnVlLAoJCWNvbnRlbnRUeXBlOiAiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkOyBjaGFyc2V0PVVURi04IiwKCgkJLyoKCQl0aW1lb3V0OiAwLAoJCWRhdGE6IG51bGwsCgkJZGF0YVR5cGU6IG51bGwsCgkJdXNlcm5hbWU6IG51bGwsCgkJcGFzc3dvcmQ6IG51bGwsCgkJY2FjaGU6IG51bGwsCgkJdGhyb3dzOiBmYWxzZSwKCQl0cmFkaXRpb25hbDogZmFsc2UsCgkJaGVhZGVyczoge30sCgkJKi8KCgkJYWNjZXB0czogewoJCQkiKiI6IGFsbFR5cGVzLAoJCQl0ZXh0OiAidGV4dC9wbGFpbiIsCgkJCWh0bWw6ICJ0ZXh0L2h0bWwiLAoJCQl4bWw6ICJhcHBsaWNhdGlvbi94bWwsIHRleHQveG1sIiwKCQkJanNvbjogImFwcGxpY2F0aW9uL2pzb24sIHRleHQvamF2YXNjcmlwdCIKCQl9LAoKCQljb250ZW50czogewoJCQl4bWw6IC9cYnhtbFxiLywKCQkJaHRtbDogL1xiaHRtbC8sCgkJCWpzb246IC9cYmpzb25cYi8KCQl9LAoKCQlyZXNwb25zZUZpZWxkczogewoJCQl4bWw6ICJyZXNwb25zZVhNTCIsCgkJCXRleHQ6ICJyZXNwb25zZVRleHQiLAoJCQlqc29uOiAicmVzcG9uc2VKU09OIgoJCX0sCgoJCS8vIERhdGEgY29udmVydGVycwoJCS8vIEtleXMgc2VwYXJhdGUgc291cmNlIChvciBjYXRjaGFsbCAiKiIpIGFuZCBkZXN0aW5hdGlvbiB0eXBlcyB3aXRoIGEgc2luZ2xlIHNwYWNlCgkJY29udmVydGVyczogewoKCQkJLy8gQ29udmVydCBhbnl0aGluZyB0byB0ZXh0CgkJCSIqIHRleHQiOiBTdHJpbmcsCgoJCQkvLyBUZXh0IHRvIGh0bWwgKHRydWUgPSBubyB0cmFuc2Zvcm1hdGlvbikKCQkJInRleHQgaHRtbCI6IHRydWUsCgoJCQkvLyBFdmFsdWF0ZSB0ZXh0IGFzIGEganNvbiBleHByZXNzaW9uCgkJCSJ0ZXh0IGpzb24iOiBKU09OLnBhcnNlLAoKCQkJLy8gUGFyc2UgdGV4dCBhcyB4bWwKCQkJInRleHQgeG1sIjogalF1ZXJ5LnBhcnNlWE1MCgkJfSwKCgkJLy8gRm9yIG9wdGlvbnMgdGhhdCBzaG91bGRuJ3QgYmUgZGVlcCBleHRlbmRlZDoKCQkvLyB5b3UgY2FuIGFkZCB5b3VyIG93biBjdXN0b20gb3B0aW9ucyBoZXJlIGlmCgkJLy8gYW5kIHdoZW4geW91IGNyZWF0ZSBvbmUgdGhhdCBzaG91bGRuJ3QgYmUKCQkvLyBkZWVwIGV4dGVuZGVkIChzZWUgYWpheEV4dGVuZCkKCQlmbGF0T3B0aW9uczogewoJCQl1cmw6IHRydWUsCgkJCWNvbnRleHQ6IHRydWUKCQl9Cgl9LAoKCS8vIENyZWF0ZXMgYSBmdWxsIGZsZWRnZWQgc2V0dGluZ3Mgb2JqZWN0IGludG8gdGFyZ2V0CgkvLyB3aXRoIGJvdGggYWpheFNldHRpbmdzIGFuZCBzZXR0aW5ncyBmaWVsZHMuCgkvLyBJZiB0YXJnZXQgaXMgb21pdHRlZCwgd3JpdGVzIGludG8gYWpheFNldHRpbmdzLgoJYWpheFNldHVwOiBmdW5jdGlvbiggdGFyZ2V0LCBzZXR0aW5ncyApIHsKCQlyZXR1cm4gc2V0dGluZ3MgPwoKCQkJLy8gQnVpbGRpbmcgYSBzZXR0aW5ncyBvYmplY3QKCQkJYWpheEV4dGVuZCggYWpheEV4dGVuZCggdGFyZ2V0LCBqUXVlcnkuYWpheFNldHRpbmdzICksIHNldHRpbmdzICkgOgoKCQkJLy8gRXh0ZW5kaW5nIGFqYXhTZXR0aW5ncwoJCQlhamF4RXh0ZW5kKCBqUXVlcnkuYWpheFNldHRpbmdzLCB0YXJnZXQgKTsKCX0sCgoJYWpheFByZWZpbHRlcjogYWRkVG9QcmVmaWx0ZXJzT3JUcmFuc3BvcnRzKCBwcmVmaWx0ZXJzICksCglhamF4VHJhbnNwb3J0OiBhZGRUb1ByZWZpbHRlcnNPclRyYW5zcG9ydHMoIHRyYW5zcG9ydHMgKSwKCgkvLyBNYWluIG1ldGhvZAoJYWpheDogZnVuY3Rpb24oIHVybCwgb3B0aW9ucyApIHsKCgkJLy8gSWYgdXJsIGlzIGFuIG9iamVjdCwgc2ltdWxhdGUgcHJlLTEuNSBzaWduYXR1cmUKCQlpZiAoIHR5cGVvZiB1cmwgPT09ICJvYmplY3QiICkgewoJCQlvcHRpb25zID0gdXJsOwoJCQl1cmwgPSB1bmRlZmluZWQ7CgkJfQoKCQkvLyBGb3JjZSBvcHRpb25zIHRvIGJlIGFuIG9iamVjdAoJCW9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwoKCQl2YXIgdHJhbnNwb3J0LAoKCQkJLy8gVVJMIHdpdGhvdXQgYW50aS1jYWNoZSBwYXJhbQoJCQljYWNoZVVSTCwKCgkJCS8vIFJlc3BvbnNlIGhlYWRlcnMKCQkJcmVzcG9uc2VIZWFkZXJzU3RyaW5nLAoJCQlyZXNwb25zZUhlYWRlcnMsCgoJCQkvLyB0aW1lb3V0IGhhbmRsZQoJCQl0aW1lb3V0VGltZXIsCgoJCQkvLyBVcmwgY2xlYW51cCB2YXIKCQkJdXJsQW5jaG9yLAoKCQkJLy8gUmVxdWVzdCBzdGF0ZSAoYmVjb21lcyBmYWxzZSB1cG9uIHNlbmQgYW5kIHRydWUgdXBvbiBjb21wbGV0aW9uKQoJCQljb21wbGV0ZWQsCgoJCQkvLyBUbyBrbm93IGlmIGdsb2JhbCBldmVudHMgYXJlIHRvIGJlIGRpc3BhdGNoZWQKCQkJZmlyZUdsb2JhbHMsCgoJCQkvLyBMb29wIHZhcmlhYmxlCgkJCWksCgoJCQkvLyB1bmNhY2hlZCBwYXJ0IG9mIHRoZSB1cmwKCQkJdW5jYWNoZWQsCgoJCQkvLyBDcmVhdGUgdGhlIGZpbmFsIG9wdGlvbnMgb2JqZWN0CgkJCXMgPSBqUXVlcnkuYWpheFNldHVwKCB7fSwgb3B0aW9ucyApLAoKCQkJLy8gQ2FsbGJhY2tzIGNvbnRleHQKCQkJY2FsbGJhY2tDb250ZXh0ID0gcy5jb250ZXh0IHx8IHMsCgoJCQkvLyBDb250ZXh0IGZvciBnbG9iYWwgZXZlbnRzIGlzIGNhbGxiYWNrQ29udGV4dCBpZiBpdCBpcyBhIERPTSBub2RlIG9yIGpRdWVyeSBjb2xsZWN0aW9uCgkJCWdsb2JhbEV2ZW50Q29udGV4dCA9IHMuY29udGV4dCAmJgoJCQkJKCBjYWxsYmFja0NvbnRleHQubm9kZVR5cGUgfHwgY2FsbGJhY2tDb250ZXh0LmpxdWVyeSApID8KCQkJCQlqUXVlcnkoIGNhbGxiYWNrQ29udGV4dCApIDoKCQkJCQlqUXVlcnkuZXZlbnQsCgoJCQkvLyBEZWZlcnJlZHMKCQkJZGVmZXJyZWQgPSBqUXVlcnkuRGVmZXJyZWQoKSwKCQkJY29tcGxldGVEZWZlcnJlZCA9IGpRdWVyeS5DYWxsYmFja3MoICJvbmNlIG1lbW9yeSIgKSwKCgkJCS8vIFN0YXR1cy1kZXBlbmRlbnQgY2FsbGJhY2tzCgkJCXN0YXR1c0NvZGUgPSBzLnN0YXR1c0NvZGUgfHwge30sCgoJCQkvLyBIZWFkZXJzICh0aGV5IGFyZSBzZW50IGFsbCBhdCBvbmNlKQoJCQlyZXF1ZXN0SGVhZGVycyA9IHt9LAoJCQlyZXF1ZXN0SGVhZGVyc05hbWVzID0ge30sCgoJCQkvLyBEZWZhdWx0IGFib3J0IG1lc3NhZ2UKCQkJc3RyQWJvcnQgPSAiY2FuY2VsZWQiLAoKCQkJLy8gRmFrZSB4aHIKCQkJanFYSFIgPSB7CgkJCQlyZWFkeVN0YXRlOiAwLAoKCQkJCS8vIEJ1aWxkcyBoZWFkZXJzIGhhc2h0YWJsZSBpZiBuZWVkZWQKCQkJCWdldFJlc3BvbnNlSGVhZGVyOiBmdW5jdGlvbigga2V5ICkgewoJCQkJCXZhciBtYXRjaDsKCQkJCQlpZiAoIGNvbXBsZXRlZCApIHsKCQkJCQkJaWYgKCAhcmVzcG9uc2VIZWFkZXJzICkgewoJCQkJCQkJcmVzcG9uc2VIZWFkZXJzID0ge307CgkJCQkJCQl3aGlsZSAoICggbWF0Y2ggPSByaGVhZGVycy5leGVjKCByZXNwb25zZUhlYWRlcnNTdHJpbmcgKSApICkgewoJCQkJCQkJCXJlc3BvbnNlSGVhZGVyc1sgbWF0Y2hbIDEgXS50b0xvd2VyQ2FzZSgpIF0gPSBtYXRjaFsgMiBdOwoJCQkJCQkJfQoJCQkJCQl9CgkJCQkJCW1hdGNoID0gcmVzcG9uc2VIZWFkZXJzWyBrZXkudG9Mb3dlckNhc2UoKSBdOwoJCQkJCX0KCQkJCQlyZXR1cm4gbWF0Y2ggPT0gbnVsbCA/IG51bGwgOiBtYXRjaDsKCQkJCX0sCgoJCQkJLy8gUmF3IHN0cmluZwoJCQkJZ2V0QWxsUmVzcG9uc2VIZWFkZXJzOiBmdW5jdGlvbigpIHsKCQkJCQlyZXR1cm4gY29tcGxldGVkID8gcmVzcG9uc2VIZWFkZXJzU3RyaW5nIDogbnVsbDsKCQkJCX0sCgoJCQkJLy8gQ2FjaGVzIHRoZSBoZWFkZXIKCQkJCXNldFJlcXVlc3RIZWFkZXI6IGZ1bmN0aW9uKCBuYW1lLCB2YWx1ZSApIHsKCQkJCQlpZiAoIGNvbXBsZXRlZCA9PSBudWxsICkgewoJCQkJCQluYW1lID0gcmVxdWVzdEhlYWRlcnNOYW1lc1sgbmFtZS50b0xvd2VyQ2FzZSgpIF0gPQoJCQkJCQkJcmVxdWVzdEhlYWRlcnNOYW1lc1sgbmFtZS50b0xvd2VyQ2FzZSgpIF0gfHwgbmFtZTsKCQkJCQkJcmVxdWVzdEhlYWRlcnNbIG5hbWUgXSA9IHZhbHVlOwoJCQkJCX0KCQkJCQlyZXR1cm4gdGhpczsKCQkJCX0sCgoJCQkJLy8gT3ZlcnJpZGVzIHJlc3BvbnNlIGNvbnRlbnQtdHlwZSBoZWFkZXIKCQkJCW92ZXJyaWRlTWltZVR5cGU6IGZ1bmN0aW9uKCB0eXBlICkgewoJCQkJCWlmICggY29tcGxldGVkID09IG51bGwgKSB7CgkJCQkJCXMubWltZVR5cGUgPSB0eXBlOwoJCQkJCX0KCQkJCQlyZXR1cm4gdGhpczsKCQkJCX0sCgoJCQkJLy8gU3RhdHVzLWRlcGVuZGVudCBjYWxsYmFja3MKCQkJCXN0YXR1c0NvZGU6IGZ1bmN0aW9uKCBtYXAgKSB7CgkJCQkJdmFyIGNvZGU7CgkJCQkJaWYgKCBtYXAgKSB7CgkJCQkJCWlmICggY29tcGxldGVkICkgewoKCQkJCQkJCS8vIEV4ZWN1dGUgdGhlIGFwcHJvcHJpYXRlIGNhbGxiYWNrcwoJCQkJCQkJanFYSFIuYWx3YXlzKCBtYXBbIGpxWEhSLnN0YXR1cyBdICk7CgkJCQkJCX0gZWxzZSB7CgoJCQkJCQkJLy8gTGF6eS1hZGQgdGhlIG5ldyBjYWxsYmFja3MgaW4gYSB3YXkgdGhhdCBwcmVzZXJ2ZXMgb2xkIG9uZXMKCQkJCQkJCWZvciAoIGNvZGUgaW4gbWFwICkgewoJCQkJCQkJCXN0YXR1c0NvZGVbIGNvZGUgXSA9IFsgc3RhdHVzQ29kZVsgY29kZSBdLCBtYXBbIGNvZGUgXSBdOwoJCQkJCQkJfQoJCQkJCQl9CgkJCQkJfQoJCQkJCXJldHVybiB0aGlzOwoJCQkJfSwKCgkJCQkvLyBDYW5jZWwgdGhlIHJlcXVlc3QKCQkJCWFib3J0OiBmdW5jdGlvbiggc3RhdHVzVGV4dCApIHsKCQkJCQl2YXIgZmluYWxUZXh0ID0gc3RhdHVzVGV4dCB8fCBzdHJBYm9ydDsKCQkJCQlpZiAoIHRyYW5zcG9ydCApIHsKCQkJCQkJdHJhbnNwb3J0LmFib3J0KCBmaW5hbFRleHQgKTsKCQkJCQl9CgkJCQkJZG9uZSggMCwgZmluYWxUZXh0ICk7CgkJCQkJcmV0dXJuIHRoaXM7CgkJCQl9CgkJCX07CgoJCS8vIEF0dGFjaCBkZWZlcnJlZHMKCQlkZWZlcnJlZC5wcm9taXNlKCBqcVhIUiApOwoKCQkvLyBBZGQgcHJvdG9jb2wgaWYgbm90IHByb3ZpZGVkIChwcmVmaWx0ZXJzIG1pZ2h0IGV4cGVjdCBpdCkKCQkvLyBIYW5kbGUgZmFsc3kgdXJsIGluIHRoZSBzZXR0aW5ncyBvYmplY3QgKCMxMDA5MzogY29uc2lzdGVuY3kgd2l0aCBvbGQgc2lnbmF0dXJlKQoJCS8vIFdlIGFsc28gdXNlIHRoZSB1cmwgcGFyYW1ldGVyIGlmIGF2YWlsYWJsZQoJCXMudXJsID0gKCAoIHVybCB8fCBzLnVybCB8fCBsb2NhdGlvbi5ocmVmICkgKyAiIiApCgkJCS5yZXBsYWNlKCBycHJvdG9jb2wsIGxvY2F0aW9uLnByb3RvY29sICsgIi8vIiApOwoKCQkvLyBBbGlhcyBtZXRob2Qgb3B0aW9uIHRvIHR5cGUgYXMgcGVyIHRpY2tldCAjMTIwMDQKCQlzLnR5cGUgPSBvcHRpb25zLm1ldGhvZCB8fCBvcHRpb25zLnR5cGUgfHwgcy5tZXRob2QgfHwgcy50eXBlOwoKCQkvLyBFeHRyYWN0IGRhdGFUeXBlcyBsaXN0CgkJcy5kYXRhVHlwZXMgPSAoIHMuZGF0YVR5cGUgfHwgIioiICkudG9Mb3dlckNhc2UoKS5tYXRjaCggcm5vdGh0bWx3aGl0ZSApIHx8IFsgIiIgXTsKCgkJLy8gQSBjcm9zcy1kb21haW4gcmVxdWVzdCBpcyBpbiBvcmRlciB3aGVuIHRoZSBvcmlnaW4gZG9lc24ndCBtYXRjaCB0aGUgY3VycmVudCBvcmlnaW4uCgkJaWYgKCBzLmNyb3NzRG9tYWluID09IG51bGwgKSB7CgkJCXVybEFuY2hvciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoICJhIiApOwoKCQkJLy8gU3VwcG9ydDogSUUgPD04IC0gMTEsIEVkZ2UgMTIgLSAxMwoJCQkvLyBJRSB0aHJvd3MgZXhjZXB0aW9uIG9uIGFjY2Vzc2luZyB0aGUgaHJlZiBwcm9wZXJ0eSBpZiB1cmwgaXMgbWFsZm9ybWVkLAoJCQkvLyBlLmcuIGh0dHA6Ly9leGFtcGxlLmNvbTo4MHgvCgkJCXRyeSB7CgkJCQl1cmxBbmNob3IuaHJlZiA9IHMudXJsOwoKCQkJCS8vIFN1cHBvcnQ6IElFIDw9OCAtIDExIG9ubHkKCQkJCS8vIEFuY2hvcidzIGhvc3QgcHJvcGVydHkgaXNuJ3QgY29ycmVjdGx5IHNldCB3aGVuIHMudXJsIGlzIHJlbGF0aXZlCgkJCQl1cmxBbmNob3IuaHJlZiA9IHVybEFuY2hvci5ocmVmOwoJCQkJcy5jcm9zc0RvbWFpbiA9IG9yaWdpbkFuY2hvci5wcm90b2NvbCArICIvLyIgKyBvcmlnaW5BbmNob3IuaG9zdCAhPT0KCQkJCQl1cmxBbmNob3IucHJvdG9jb2wgKyAiLy8iICsgdXJsQW5jaG9yLmhvc3Q7CgkJCX0gY2F0Y2ggKCBlICkgewoKCQkJCS8vIElmIHRoZXJlIGlzIGFuIGVycm9yIHBhcnNpbmcgdGhlIFVSTCwgYXNzdW1lIGl0IGlzIGNyb3NzRG9tYWluLAoJCQkJLy8gaXQgY2FuIGJlIHJlamVjdGVkIGJ5IHRoZSB0cmFuc3BvcnQgaWYgaXQgaXMgaW52YWxpZAoJCQkJcy5jcm9zc0RvbWFpbiA9IHRydWU7CgkJCX0KCQl9CgoJCS8vIENvbnZlcnQgZGF0YSBpZiBub3QgYWxyZWFkeSBhIHN0cmluZwoJCWlmICggcy5kYXRhICYmIHMucHJvY2Vzc0RhdGEgJiYgdHlwZW9mIHMuZGF0YSAhPT0gInN0cmluZyIgKSB7CgkJCXMuZGF0YSA9IGpRdWVyeS5wYXJhbSggcy5kYXRhLCBzLnRyYWRpdGlvbmFsICk7CgkJfQoKCQkvLyBBcHBseSBwcmVmaWx0ZXJzCgkJaW5zcGVjdFByZWZpbHRlcnNPclRyYW5zcG9ydHMoIHByZWZpbHRlcnMsIHMsIG9wdGlvbnMsIGpxWEhSICk7CgoJCS8vIElmIHJlcXVlc3Qgd2FzIGFib3J0ZWQgaW5zaWRlIGEgcHJlZmlsdGVyLCBzdG9wIHRoZXJlCgkJaWYgKCBjb21wbGV0ZWQgKSB7CgkJCXJldHVybiBqcVhIUjsKCQl9CgoJCS8vIFdlIGNhbiBmaXJlIGdsb2JhbCBldmVudHMgYXMgb2Ygbm93IGlmIGFza2VkIHRvCgkJLy8gRG9uJ3QgZmlyZSBldmVudHMgaWYgalF1ZXJ5LmV2ZW50IGlzIHVuZGVmaW5lZCBpbiBhbiBBTUQtdXNhZ2Ugc2NlbmFyaW8gKCMxNTExOCkKCQlmaXJlR2xvYmFscyA9IGpRdWVyeS5ldmVudCAmJiBzLmdsb2JhbDsKCgkJLy8gV2F0Y2ggZm9yIGEgbmV3IHNldCBvZiByZXF1ZXN0cwoJCWlmICggZmlyZUdsb2JhbHMgJiYgalF1ZXJ5LmFjdGl2ZSsrID09PSAwICkgewoJCQlqUXVlcnkuZXZlbnQudHJpZ2dlciggImFqYXhTdGFydCIgKTsKCQl9CgoJCS8vIFVwcGVyY2FzZSB0aGUgdHlwZQoJCXMudHlwZSA9IHMudHlwZS50b1VwcGVyQ2FzZSgpOwoKCQkvLyBEZXRlcm1pbmUgaWYgcmVxdWVzdCBoYXMgY29udGVudAoJCXMuaGFzQ29udGVudCA9ICFybm9Db250ZW50LnRlc3QoIHMudHlwZSApOwoKCQkvLyBTYXZlIHRoZSBVUkwgaW4gY2FzZSB3ZSdyZSB0b3lpbmcgd2l0aCB0aGUgSWYtTW9kaWZpZWQtU2luY2UKCQkvLyBhbmQvb3IgSWYtTm9uZS1NYXRjaCBoZWFkZXIgbGF0ZXIgb24KCQkvLyBSZW1vdmUgaGFzaCB0byBzaW1wbGlmeSB1cmwgbWFuaXB1bGF0aW9uCgkJY2FjaGVVUkwgPSBzLnVybC5yZXBsYWNlKCByaGFzaCwgIiIgKTsKCgkJLy8gTW9yZSBvcHRpb25zIGhhbmRsaW5nIGZvciByZXF1ZXN0cyB3aXRoIG5vIGNvbnRlbnQKCQlpZiAoICFzLmhhc0NvbnRlbnQgKSB7CgoJCQkvLyBSZW1lbWJlciB0aGUgaGFzaCBzbyB3ZSBjYW4gcHV0IGl0IGJhY2sKCQkJdW5jYWNoZWQgPSBzLnVybC5zbGljZSggY2FjaGVVUkwubGVuZ3RoICk7CgoJCQkvLyBJZiBkYXRhIGlzIGF2YWlsYWJsZSwgYXBwZW5kIGRhdGEgdG8gdXJsCgkJCWlmICggcy5kYXRhICkgewoJCQkJY2FjaGVVUkwgKz0gKCBycXVlcnkudGVzdCggY2FjaGVVUkwgKSA/ICImIiA6ICI/IiApICsgcy5kYXRhOwoKCQkJCS8vICM5NjgyOiByZW1vdmUgZGF0YSBzbyB0aGF0IGl0J3Mgbm90IHVzZWQgaW4gYW4gZXZlbnR1YWwgcmV0cnkKCQkJCWRlbGV0ZSBzLmRhdGE7CgkJCX0KCgkJCS8vIEFkZCBvciB1cGRhdGUgYW50aS1jYWNoZSBwYXJhbSBpZiBuZWVkZWQKCQkJaWYgKCBzLmNhY2hlID09PSBmYWxzZSApIHsKCQkJCWNhY2hlVVJMID0gY2FjaGVVUkwucmVwbGFjZSggcmFudGlDYWNoZSwgIiQxIiApOwoJCQkJdW5jYWNoZWQgPSAoIHJxdWVyeS50ZXN0KCBjYWNoZVVSTCApID8gIiYiIDogIj8iICkgKyAiXz0iICsgKCBub25jZSsrICkgKyB1bmNhY2hlZDsKCQkJfQoKCQkJLy8gUHV0IGhhc2ggYW5kIGFudGktY2FjaGUgb24gdGhlIFVSTCB0aGF0IHdpbGwgYmUgcmVxdWVzdGVkIChnaC0xNzMyKQoJCQlzLnVybCA9IGNhY2hlVVJMICsgdW5jYWNoZWQ7CgoJCS8vIENoYW5nZSAnJTIwJyB0byAnKycgaWYgdGhpcyBpcyBlbmNvZGVkIGZvcm0gYm9keSBjb250ZW50IChnaC0yNjU4KQoJCX0gZWxzZSBpZiAoIHMuZGF0YSAmJiBzLnByb2Nlc3NEYXRhICYmCgkJCSggcy5jb250ZW50VHlwZSB8fCAiIiApLmluZGV4T2YoICJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiICkgPT09IDAgKSB7CgkJCXMuZGF0YSA9IHMuZGF0YS5yZXBsYWNlKCByMjAsICIrIiApOwoJCX0KCgkJLy8gU2V0IHRoZSBJZi1Nb2RpZmllZC1TaW5jZSBhbmQvb3IgSWYtTm9uZS1NYXRjaCBoZWFkZXIsIGlmIGluIGlmTW9kaWZpZWQgbW9kZS4KCQlpZiAoIHMuaWZNb2RpZmllZCApIHsKCQkJaWYgKCBqUXVlcnkubGFzdE1vZGlmaWVkWyBjYWNoZVVSTCBdICkgewoJCQkJanFYSFIuc2V0UmVxdWVzdEhlYWRlciggIklmLU1vZGlmaWVkLVNpbmNlIiwgalF1ZXJ5Lmxhc3RNb2RpZmllZFsgY2FjaGVVUkwgXSApOwoJCQl9CgkJCWlmICggalF1ZXJ5LmV0YWdbIGNhY2hlVVJMIF0gKSB7CgkJCQlqcVhIUi5zZXRSZXF1ZXN0SGVhZGVyKCAiSWYtTm9uZS1NYXRjaCIsIGpRdWVyeS5ldGFnWyBjYWNoZVVSTCBdICk7CgkJCX0KCQl9CgoJCS8vIFNldCB0aGUgY29ycmVjdCBoZWFkZXIsIGlmIGRhdGEgaXMgYmVpbmcgc2VudAoJCWlmICggcy5kYXRhICYmIHMuaGFzQ29udGVudCAmJiBzLmNvbnRlbnRUeXBlICE9PSBmYWxzZSB8fCBvcHRpb25zLmNvbnRlbnRUeXBlICkgewoJCQlqcVhIUi5zZXRSZXF1ZXN0SGVhZGVyKCAiQ29udGVudC1UeXBlIiwgcy5jb250ZW50VHlwZSApOwoJCX0KCgkJLy8gU2V0IHRoZSBBY2NlcHRzIGhlYWRlciBmb3IgdGhlIHNlcnZlciwgZGVwZW5kaW5nIG9uIHRoZSBkYXRhVHlwZQoJCWpxWEhSLnNldFJlcXVlc3RIZWFkZXIoCgkJCSJBY2NlcHQiLAoJCQlzLmRhdGFUeXBlc1sgMCBdICYmIHMuYWNjZXB0c1sgcy5kYXRhVHlwZXNbIDAgXSBdID8KCQkJCXMuYWNjZXB0c1sgcy5kYXRhVHlwZXNbIDAgXSBdICsKCQkJCQkoIHMuZGF0YVR5cGVzWyAwIF0gIT09ICIqIiA/ICIsICIgKyBhbGxUeXBlcyArICI7IHE9MC4wMSIgOiAiIiApIDoKCQkJCXMuYWNjZXB0c1sgIioiIF0KCQkpOwoKCQkvLyBDaGVjayBmb3IgaGVhZGVycyBvcHRpb24KCQlmb3IgKCBpIGluIHMuaGVhZGVycyApIHsKCQkJanFYSFIuc2V0UmVxdWVzdEhlYWRlciggaSwgcy5oZWFkZXJzWyBpIF0gKTsKCQl9CgoJCS8vIEFsbG93IGN1c3RvbSBoZWFkZXJzL21pbWV0eXBlcyBhbmQgZWFybHkgYWJvcnQKCQlpZiAoIHMuYmVmb3JlU2VuZCAmJgoJCQkoIHMuYmVmb3JlU2VuZC5jYWxsKCBjYWxsYmFja0NvbnRleHQsIGpxWEhSLCBzICkgPT09IGZhbHNlIHx8IGNvbXBsZXRlZCApICkgewoKCQkJLy8gQWJvcnQgaWYgbm90IGRvbmUgYWxyZWFkeSBhbmQgcmV0dXJuCgkJCXJldHVybiBqcVhIUi5hYm9ydCgpOwoJCX0KCgkJLy8gQWJvcnRpbmcgaXMgbm8gbG9uZ2VyIGEgY2FuY2VsbGF0aW9uCgkJc3RyQWJvcnQgPSAiYWJvcnQiOwoKCQkvLyBJbnN0YWxsIGNhbGxiYWNrcyBvbiBkZWZlcnJlZHMKCQljb21wbGV0ZURlZmVycmVkLmFkZCggcy5jb21wbGV0ZSApOwoJCWpxWEhSLmRvbmUoIHMuc3VjY2VzcyApOwoJCWpxWEhSLmZhaWwoIHMuZXJyb3IgKTsKCgkJLy8gR2V0IHRyYW5zcG9ydAoJCXRyYW5zcG9ydCA9IGluc3BlY3RQcmVmaWx0ZXJzT3JUcmFuc3BvcnRzKCB0cmFuc3BvcnRzLCBzLCBvcHRpb25zLCBqcVhIUiApOwoKCQkvLyBJZiBubyB0cmFuc3BvcnQsIHdlIGF1dG8tYWJvcnQKCQlpZiAoICF0cmFuc3BvcnQgKSB7CgkJCWRvbmUoIC0xLCAiTm8gVHJhbnNwb3J0IiApOwoJCX0gZWxzZSB7CgkJCWpxWEhSLnJlYWR5U3RhdGUgPSAxOwoKCQkJLy8gU2VuZCBnbG9iYWwgZXZlbnQKCQkJaWYgKCBmaXJlR2xvYmFscyApIHsKCQkJCWdsb2JhbEV2ZW50Q29udGV4dC50cmlnZ2VyKCAiYWpheFNlbmQiLCBbIGpxWEhSLCBzIF0gKTsKCQkJfQoKCQkJLy8gSWYgcmVxdWVzdCB3YXMgYWJvcnRlZCBpbnNpZGUgYWpheFNlbmQsIHN0b3AgdGhlcmUKCQkJaWYgKCBjb21wbGV0ZWQgKSB7CgkJCQlyZXR1cm4ganFYSFI7CgkJCX0KCgkJCS8vIFRpbWVvdXQKCQkJaWYgKCBzLmFzeW5jICYmIHMudGltZW91dCA+IDAgKSB7CgkJCQl0aW1lb3V0VGltZXIgPSB3aW5kb3cuc2V0VGltZW91dCggZnVuY3Rpb24oKSB7CgkJCQkJanFYSFIuYWJvcnQoICJ0aW1lb3V0IiApOwoJCQkJfSwgcy50aW1lb3V0ICk7CgkJCX0KCgkJCXRyeSB7CgkJCQljb21wbGV0ZWQgPSBmYWxzZTsKCQkJCXRyYW5zcG9ydC5zZW5kKCByZXF1ZXN0SGVhZGVycywgZG9uZSApOwoJCQl9IGNhdGNoICggZSApIHsKCgkJCQkvLyBSZXRocm93IHBvc3QtY29tcGxldGlvbiBleGNlcHRpb25zCgkJCQlpZiAoIGNvbXBsZXRlZCApIHsKCQkJCQl0aHJvdyBlOwoJCQkJfQoKCQkJCS8vIFByb3BhZ2F0ZSBvdGhlcnMgYXMgcmVzdWx0cwoJCQkJZG9uZSggLTEsIGUgKTsKCQkJfQoJCX0KCgkJLy8gQ2FsbGJhY2sgZm9yIHdoZW4gZXZlcnl0aGluZyBpcyBkb25lCgkJZnVuY3Rpb24gZG9uZSggc3RhdHVzLCBuYXRpdmVTdGF0dXNUZXh0LCByZXNwb25zZXMsIGhlYWRlcnMgKSB7CgkJCXZhciBpc1N1Y2Nlc3MsIHN1Y2Nlc3MsIGVycm9yLCByZXNwb25zZSwgbW9kaWZpZWQsCgkJCQlzdGF0dXNUZXh0ID0gbmF0aXZlU3RhdHVzVGV4dDsKCgkJCS8vIElnbm9yZSByZXBlYXQgaW52b2NhdGlvbnMKCQkJaWYgKCBjb21wbGV0ZWQgKSB7CgkJCQlyZXR1cm47CgkJCX0KCgkJCWNvbXBsZXRlZCA9IHRydWU7CgoJCQkvLyBDbGVhciB0aW1lb3V0IGlmIGl0IGV4aXN0cwoJCQlpZiAoIHRpbWVvdXRUaW1lciApIHsKCQkJCXdpbmRvdy5jbGVhclRpbWVvdXQoIHRpbWVvdXRUaW1lciApOwoJCQl9CgoJCQkvLyBEZXJlZmVyZW5jZSB0cmFuc3BvcnQgZm9yIGVhcmx5IGdhcmJhZ2UgY29sbGVjdGlvbgoJCQkvLyAobm8gbWF0dGVyIGhvdyBsb25nIHRoZSBqcVhIUiBvYmplY3Qgd2lsbCBiZSB1c2VkKQoJCQl0cmFuc3BvcnQgPSB1bmRlZmluZWQ7CgoJCQkvLyBDYWNoZSByZXNwb25zZSBoZWFkZXJzCgkJCXJlc3BvbnNlSGVhZGVyc1N0cmluZyA9IGhlYWRlcnMgfHwgIiI7CgoJCQkvLyBTZXQgcmVhZHlTdGF0ZQoJCQlqcVhIUi5yZWFkeVN0YXRlID0gc3RhdHVzID4gMCA/IDQgOiAwOwoKCQkJLy8gRGV0ZXJtaW5lIGlmIHN1Y2Nlc3NmdWwKCQkJaXNTdWNjZXNzID0gc3RhdHVzID49IDIwMCAmJiBzdGF0dXMgPCAzMDAgfHwgc3RhdHVzID09PSAzMDQ7CgoJCQkvLyBHZXQgcmVzcG9uc2UgZGF0YQoJCQlpZiAoIHJlc3BvbnNlcyApIHsKCQkJCXJlc3BvbnNlID0gYWpheEhhbmRsZVJlc3BvbnNlcyggcywganFYSFIsIHJlc3BvbnNlcyApOwoJCQl9CgoJCQkvLyBDb252ZXJ0IG5vIG1hdHRlciB3aGF0ICh0aGF0IHdheSByZXNwb25zZVhYWCBmaWVsZHMgYXJlIGFsd2F5cyBzZXQpCgkJCXJlc3BvbnNlID0gYWpheENvbnZlcnQoIHMsIHJlc3BvbnNlLCBqcVhIUiwgaXNTdWNjZXNzICk7CgoJCQkvLyBJZiBzdWNjZXNzZnVsLCBoYW5kbGUgdHlwZSBjaGFpbmluZwoJCQlpZiAoIGlzU3VjY2VzcyApIHsKCgkJCQkvLyBTZXQgdGhlIElmLU1vZGlmaWVkLVNpbmNlIGFuZC9vciBJZi1Ob25lLU1hdGNoIGhlYWRlciwgaWYgaW4gaWZNb2RpZmllZCBtb2RlLgoJCQkJaWYgKCBzLmlmTW9kaWZpZWQgKSB7CgkJCQkJbW9kaWZpZWQgPSBqcVhIUi5nZXRSZXNwb25zZUhlYWRlciggIkxhc3QtTW9kaWZpZWQiICk7CgkJCQkJaWYgKCBtb2RpZmllZCApIHsKCQkJCQkJalF1ZXJ5Lmxhc3RNb2RpZmllZFsgY2FjaGVVUkwgXSA9IG1vZGlmaWVkOwoJCQkJCX0KCQkJCQltb2RpZmllZCA9IGpxWEhSLmdldFJlc3BvbnNlSGVhZGVyKCAiZXRhZyIgKTsKCQkJCQlpZiAoIG1vZGlmaWVkICkgewoJCQkJCQlqUXVlcnkuZXRhZ1sgY2FjaGVVUkwgXSA9IG1vZGlmaWVkOwoJCQkJCX0KCQkJCX0KCgkJCQkvLyBpZiBubyBjb250ZW50CgkJCQlpZiAoIHN0YXR1cyA9PT0gMjA0IHx8IHMudHlwZSA9PT0gIkhFQUQiICkgewoJCQkJCXN0YXR1c1RleHQgPSAibm9jb250ZW50IjsKCgkJCQkvLyBpZiBub3QgbW9kaWZpZWQKCQkJCX0gZWxzZSBpZiAoIHN0YXR1cyA9PT0gMzA0ICkgewoJCQkJCXN0YXR1c1RleHQgPSAibm90bW9kaWZpZWQiOwoKCQkJCS8vIElmIHdlIGhhdmUgZGF0YSwgbGV0J3MgY29udmVydCBpdAoJCQkJfSBlbHNlIHsKCQkJCQlzdGF0dXNUZXh0ID0gcmVzcG9uc2Uuc3RhdGU7CgkJCQkJc3VjY2VzcyA9IHJlc3BvbnNlLmRhdGE7CgkJCQkJZXJyb3IgPSByZXNwb25zZS5lcnJvcjsKCQkJCQlpc1N1Y2Nlc3MgPSAhZXJyb3I7CgkJCQl9CgkJCX0gZWxzZSB7CgoJCQkJLy8gRXh0cmFjdCBlcnJvciBmcm9tIHN0YXR1c1RleHQgYW5kIG5vcm1hbGl6ZSBmb3Igbm9uLWFib3J0cwoJCQkJZXJyb3IgPSBzdGF0dXNUZXh0OwoJCQkJaWYgKCBzdGF0dXMgfHwgIXN0YXR1c1RleHQgKSB7CgkJCQkJc3RhdHVzVGV4dCA9ICJlcnJvciI7CgkJCQkJaWYgKCBzdGF0dXMgPCAwICkgewoJCQkJCQlzdGF0dXMgPSAwOwoJCQkJCX0KCQkJCX0KCQkJfQoKCQkJLy8gU2V0IGRhdGEgZm9yIHRoZSBmYWtlIHhociBvYmplY3QKCQkJanFYSFIuc3RhdHVzID0gc3RhdHVzOwoJCQlqcVhIUi5zdGF0dXNUZXh0ID0gKCBuYXRpdmVTdGF0dXNUZXh0IHx8IHN0YXR1c1RleHQgKSArICIiOwoKCQkJLy8gU3VjY2Vzcy9FcnJvcgoJCQlpZiAoIGlzU3VjY2VzcyApIHsKCQkJCWRlZmVycmVkLnJlc29sdmVXaXRoKCBjYWxsYmFja0NvbnRleHQsIFsgc3VjY2Vzcywgc3RhdHVzVGV4dCwganFYSFIgXSApOwoJCQl9IGVsc2UgewoJCQkJZGVmZXJyZWQucmVqZWN0V2l0aCggY2FsbGJhY2tDb250ZXh0LCBbIGpxWEhSLCBzdGF0dXNUZXh0LCBlcnJvciBdICk7CgkJCX0KCgkJCS8vIFN0YXR1cy1kZXBlbmRlbnQgY2FsbGJhY2tzCgkJCWpxWEhSLnN0YXR1c0NvZGUoIHN0YXR1c0NvZGUgKTsKCQkJc3RhdHVzQ29kZSA9IHVuZGVmaW5lZDsKCgkJCWlmICggZmlyZUdsb2JhbHMgKSB7CgkJCQlnbG9iYWxFdmVudENvbnRleHQudHJpZ2dlciggaXNTdWNjZXNzID8gImFqYXhTdWNjZXNzIiA6ICJhamF4RXJyb3IiLAoJCQkJCVsganFYSFIsIHMsIGlzU3VjY2VzcyA/IHN1Y2Nlc3MgOiBlcnJvciBdICk7CgkJCX0KCgkJCS8vIENvbXBsZXRlCgkJCWNvbXBsZXRlRGVmZXJyZWQuZmlyZVdpdGgoIGNhbGxiYWNrQ29udGV4dCwgWyBqcVhIUiwgc3RhdHVzVGV4dCBdICk7CgoJCQlpZiAoIGZpcmVHbG9iYWxzICkgewoJCQkJZ2xvYmFsRXZlbnRDb250ZXh0LnRyaWdnZXIoICJhamF4Q29tcGxldGUiLCBbIGpxWEhSLCBzIF0gKTsKCgkJCQkvLyBIYW5kbGUgdGhlIGdsb2JhbCBBSkFYIGNvdW50ZXIKCQkJCWlmICggISggLS1qUXVlcnkuYWN0aXZlICkgKSB7CgkJCQkJalF1ZXJ5LmV2ZW50LnRyaWdnZXIoICJhamF4U3RvcCIgKTsKCQkJCX0KCQkJfQoJCX0KCgkJcmV0dXJuIGpxWEhSOwoJfSwKCglnZXRKU09OOiBmdW5jdGlvbiggdXJsLCBkYXRhLCBjYWxsYmFjayApIHsKCQlyZXR1cm4galF1ZXJ5LmdldCggdXJsLCBkYXRhLCBjYWxsYmFjaywgImpzb24iICk7Cgl9LAoKCWdldFNjcmlwdDogZnVuY3Rpb24oIHVybCwgY2FsbGJhY2sgKSB7CgkJcmV0dXJuIGpRdWVyeS5nZXQoIHVybCwgdW5kZWZpbmVkLCBjYWxsYmFjaywgInNjcmlwdCIgKTsKCX0KfSApOwoKalF1ZXJ5LmVhY2goIFsgImdldCIsICJwb3N0IiBdLCBmdW5jdGlvbiggaSwgbWV0aG9kICkgewoJalF1ZXJ5WyBtZXRob2QgXSA9IGZ1bmN0aW9uKCB1cmwsIGRhdGEsIGNhbGxiYWNrLCB0eXBlICkgewoKCQkvLyBTaGlmdCBhcmd1bWVudHMgaWYgZGF0YSBhcmd1bWVudCB3YXMgb21pdHRlZAoJCWlmICggalF1ZXJ5LmlzRnVuY3Rpb24oIGRhdGEgKSApIHsKCQkJdHlwZSA9IHR5cGUgfHwgY2FsbGJhY2s7CgkJCWNhbGxiYWNrID0gZGF0YTsKCQkJZGF0YSA9IHVuZGVmaW5lZDsKCQl9CgoJCS8vIFRoZSB1cmwgY2FuIGJlIGFuIG9wdGlvbnMgb2JqZWN0ICh3aGljaCB0aGVuIG11c3QgaGF2ZSAudXJsKQoJCXJldHVybiBqUXVlcnkuYWpheCggalF1ZXJ5LmV4dGVuZCggewoJCQl1cmw6IHVybCwKCQkJdHlwZTogbWV0aG9kLAoJCQlkYXRhVHlwZTogdHlwZSwKCQkJZGF0YTogZGF0YSwKCQkJc3VjY2VzczogY2FsbGJhY2sKCQl9LCBqUXVlcnkuaXNQbGFpbk9iamVjdCggdXJsICkgJiYgdXJsICkgKTsKCX07Cn0gKTsKCgpqUXVlcnkuX2V2YWxVcmwgPSBmdW5jdGlvbiggdXJsICkgewoJcmV0dXJuIGpRdWVyeS5hamF4KCB7CgkJdXJsOiB1cmwsCgoJCS8vIE1ha2UgdGhpcyBleHBsaWNpdCwgc2luY2UgdXNlciBjYW4gb3ZlcnJpZGUgdGhpcyB0aHJvdWdoIGFqYXhTZXR1cCAoIzExMjY0KQoJCXR5cGU6ICJHRVQiLAoJCWRhdGFUeXBlOiAic2NyaXB0IiwKCQljYWNoZTogdHJ1ZSwKCQlhc3luYzogZmFsc2UsCgkJZ2xvYmFsOiBmYWxzZSwKCQkidGhyb3dzIjogdHJ1ZQoJfSApOwp9OwoKCmpRdWVyeS5mbi5leHRlbmQoIHsKCXdyYXBBbGw6IGZ1bmN0aW9uKCBodG1sICkgewoJCXZhciB3cmFwOwoKCQlpZiAoIHRoaXNbIDAgXSApIHsKCQkJaWYgKCBqUXVlcnkuaXNGdW5jdGlvbiggaHRtbCApICkgewoJCQkJaHRtbCA9IGh0bWwuY2FsbCggdGhpc1sgMCBdICk7CgkJCX0KCgkJCS8vIFRoZSBlbGVtZW50cyB0byB3cmFwIHRoZSB0YXJnZXQgYXJvdW5kCgkJCXdyYXAgPSBqUXVlcnkoIGh0bWwsIHRoaXNbIDAgXS5vd25lckRvY3VtZW50ICkuZXEoIDAgKS5jbG9uZSggdHJ1ZSApOwoKCQkJaWYgKCB0aGlzWyAwIF0ucGFyZW50Tm9kZSApIHsKCQkJCXdyYXAuaW5zZXJ0QmVmb3JlKCB0aGlzWyAwIF0gKTsKCQkJfQoKCQkJd3JhcC5tYXAoIGZ1bmN0aW9uKCkgewoJCQkJdmFyIGVsZW0gPSB0aGlzOwoKCQkJCXdoaWxlICggZWxlbS5maXJzdEVsZW1lbnRDaGlsZCApIHsKCQkJCQllbGVtID0gZWxlbS5maXJzdEVsZW1lbnRDaGlsZDsKCQkJCX0KCgkJCQlyZXR1cm4gZWxlbTsKCQkJfSApLmFwcGVuZCggdGhpcyApOwoJCX0KCgkJcmV0dXJuIHRoaXM7Cgl9LAoKCXdyYXBJbm5lcjogZnVuY3Rpb24oIGh0bWwgKSB7CgkJaWYgKCBqUXVlcnkuaXNGdW5jdGlvbiggaHRtbCApICkgewoJCQlyZXR1cm4gdGhpcy5lYWNoKCBmdW5jdGlvbiggaSApIHsKCQkJCWpRdWVyeSggdGhpcyApLndyYXBJbm5lciggaHRtbC5jYWxsKCB0aGlzLCBpICkgKTsKCQkJfSApOwoJCX0KCgkJcmV0dXJuIHRoaXMuZWFjaCggZnVuY3Rpb24oKSB7CgkJCXZhciBzZWxmID0galF1ZXJ5KCB0aGlzICksCgkJCQljb250ZW50cyA9IHNlbGYuY29udGVudHMoKTsKCgkJCWlmICggY29udGVudHMubGVuZ3RoICkgewoJCQkJY29udGVudHMud3JhcEFsbCggaHRtbCApOwoKCQkJfSBlbHNlIHsKCQkJCXNlbGYuYXBwZW5kKCBodG1sICk7CgkJCX0KCQl9ICk7Cgl9LAoKCXdyYXA6IGZ1bmN0aW9uKCBodG1sICkgewoJCXZhciBpc0Z1bmN0aW9uID0galF1ZXJ5LmlzRnVuY3Rpb24oIGh0bWwgKTsKCgkJcmV0dXJuIHRoaXMuZWFjaCggZnVuY3Rpb24oIGkgKSB7CgkJCWpRdWVyeSggdGhpcyApLndyYXBBbGwoIGlzRnVuY3Rpb24gPyBodG1sLmNhbGwoIHRoaXMsIGkgKSA6IGh0bWwgKTsKCQl9ICk7Cgl9LAoKCXVud3JhcDogZnVuY3Rpb24oIHNlbGVjdG9yICkgewoJCXRoaXMucGFyZW50KCBzZWxlY3RvciApLm5vdCggImJvZHkiICkuZWFjaCggZnVuY3Rpb24oKSB7CgkJCWpRdWVyeSggdGhpcyApLnJlcGxhY2VXaXRoKCB0aGlzLmNoaWxkTm9kZXMgKTsKCQl9ICk7CgkJcmV0dXJuIHRoaXM7Cgl9Cn0gKTsKCgpqUXVlcnkuZXhwci5wc2V1ZG9zLmhpZGRlbiA9IGZ1bmN0aW9uKCBlbGVtICkgewoJcmV0dXJuICFqUXVlcnkuZXhwci5wc2V1ZG9zLnZpc2libGUoIGVsZW0gKTsKfTsKalF1ZXJ5LmV4cHIucHNldWRvcy52aXNpYmxlID0gZnVuY3Rpb24oIGVsZW0gKSB7CglyZXR1cm4gISEoIGVsZW0ub2Zmc2V0V2lkdGggfHwgZWxlbS5vZmZzZXRIZWlnaHQgfHwgZWxlbS5nZXRDbGllbnRSZWN0cygpLmxlbmd0aCApOwp9OwoKCgoKalF1ZXJ5LmFqYXhTZXR0aW5ncy54aHIgPSBmdW5jdGlvbigpIHsKCXRyeSB7CgkJcmV0dXJuIG5ldyB3aW5kb3cuWE1MSHR0cFJlcXVlc3QoKTsKCX0gY2F0Y2ggKCBlICkge30KfTsKCnZhciB4aHJTdWNjZXNzU3RhdHVzID0gewoKCQkvLyBGaWxlIHByb3RvY29sIGFsd2F5cyB5aWVsZHMgc3RhdHVzIGNvZGUgMCwgYXNzdW1lIDIwMAoJCTA6IDIwMCwKCgkJLy8gU3VwcG9ydDogSUUgPD05IG9ubHkKCQkvLyAjMTQ1MDogc29tZXRpbWVzIElFIHJldHVybnMgMTIyMyB3aGVuIGl0IHNob3VsZCBiZSAyMDQKCQkxMjIzOiAyMDQKCX0sCgl4aHJTdXBwb3J0ZWQgPSBqUXVlcnkuYWpheFNldHRpbmdzLnhocigpOwoKc3VwcG9ydC5jb3JzID0gISF4aHJTdXBwb3J0ZWQgJiYgKCAid2l0aENyZWRlbnRpYWxzIiBpbiB4aHJTdXBwb3J0ZWQgKTsKc3VwcG9ydC5hamF4ID0geGhyU3VwcG9ydGVkID0gISF4aHJTdXBwb3J0ZWQ7CgpqUXVlcnkuYWpheFRyYW5zcG9ydCggZnVuY3Rpb24oIG9wdGlvbnMgKSB7Cgl2YXIgY2FsbGJhY2ssIGVycm9yQ2FsbGJhY2s7CgoJLy8gQ3Jvc3MgZG9tYWluIG9ubHkgYWxsb3dlZCBpZiBzdXBwb3J0ZWQgdGhyb3VnaCBYTUxIdHRwUmVxdWVzdAoJaWYgKCBzdXBwb3J0LmNvcnMgfHwgeGhyU3VwcG9ydGVkICYmICFvcHRpb25zLmNyb3NzRG9tYWluICkgewoJCXJldHVybiB7CgkJCXNlbmQ6IGZ1bmN0aW9uKCBoZWFkZXJzLCBjb21wbGV0ZSApIHsKCQkJCXZhciBpLAoJCQkJCXhociA9IG9wdGlvbnMueGhyKCk7CgoJCQkJeGhyLm9wZW4oCgkJCQkJb3B0aW9ucy50eXBlLAoJCQkJCW9wdGlvbnMudXJsLAoJCQkJCW9wdGlvbnMuYXN5bmMsCgkJCQkJb3B0aW9ucy51c2VybmFtZSwKCQkJCQlvcHRpb25zLnBhc3N3b3JkCgkJCQkpOwoKCQkJCS8vIEFwcGx5IGN1c3RvbSBmaWVsZHMgaWYgcHJvdmlkZWQKCQkJCWlmICggb3B0aW9ucy54aHJGaWVsZHMgKSB7CgkJCQkJZm9yICggaSBpbiBvcHRpb25zLnhockZpZWxkcyApIHsKCQkJCQkJeGhyWyBpIF0gPSBvcHRpb25zLnhockZpZWxkc1sgaSBdOwoJCQkJCX0KCQkJCX0KCgkJCQkvLyBPdmVycmlkZSBtaW1lIHR5cGUgaWYgbmVlZGVkCgkJCQlpZiAoIG9wdGlvbnMubWltZVR5cGUgJiYgeGhyLm92ZXJyaWRlTWltZVR5cGUgKSB7CgkJCQkJeGhyLm92ZXJyaWRlTWltZVR5cGUoIG9wdGlvbnMubWltZVR5cGUgKTsKCQkJCX0KCgkJCQkvLyBYLVJlcXVlc3RlZC1XaXRoIGhlYWRlcgoJCQkJLy8gRm9yIGNyb3NzLWRvbWFpbiByZXF1ZXN0cywgc2VlaW5nIGFzIGNvbmRpdGlvbnMgZm9yIGEgcHJlZmxpZ2h0IGFyZQoJCQkJLy8gYWtpbiB0byBhIGppZ3NhdyBwdXp6bGUsIHdlIHNpbXBseSBuZXZlciBzZXQgaXQgdG8gYmUgc3VyZS4KCQkJCS8vIChpdCBjYW4gYWx3YXlzIGJlIHNldCBvbiBhIHBlci1yZXF1ZXN0IGJhc2lzIG9yIGV2ZW4gdXNpbmcgYWpheFNldHVwKQoJCQkJLy8gRm9yIHNhbWUtZG9tYWluIHJlcXVlc3RzLCB3b24ndCBjaGFuZ2UgaGVhZGVyIGlmIGFscmVhZHkgcHJvdmlkZWQuCgkJCQlpZiAoICFvcHRpb25zLmNyb3NzRG9tYWluICYmICFoZWFkZXJzWyAiWC1SZXF1ZXN0ZWQtV2l0aCIgXSApIHsKCQkJCQloZWFkZXJzWyAiWC1SZXF1ZXN0ZWQtV2l0aCIgXSA9ICJYTUxIdHRwUmVxdWVzdCI7CgkJCQl9CgoJCQkJLy8gU2V0IGhlYWRlcnMKCQkJCWZvciAoIGkgaW4gaGVhZGVycyApIHsKCQkJCQl4aHIuc2V0UmVxdWVzdEhlYWRlciggaSwgaGVhZGVyc1sgaSBdICk7CgkJCQl9CgoJCQkJLy8gQ2FsbGJhY2sKCQkJCWNhbGxiYWNrID0gZnVuY3Rpb24oIHR5cGUgKSB7CgkJCQkJcmV0dXJuIGZ1bmN0aW9uKCkgewoJCQkJCQlpZiAoIGNhbGxiYWNrICkgewoJCQkJCQkJY2FsbGJhY2sgPSBlcnJvckNhbGxiYWNrID0geGhyLm9ubG9hZCA9CgkJCQkJCQkJeGhyLm9uZXJyb3IgPSB4aHIub25hYm9ydCA9IHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBudWxsOwoKCQkJCQkJCWlmICggdHlwZSA9PT0gImFib3J0IiApIHsKCQkJCQkJCQl4aHIuYWJvcnQoKTsKCQkJCQkJCX0gZWxzZSBpZiAoIHR5cGUgPT09ICJlcnJvciIgKSB7CgoJCQkJCQkJCS8vIFN1cHBvcnQ6IElFIDw9OSBvbmx5CgkJCQkJCQkJLy8gT24gYSBtYW51YWwgbmF0aXZlIGFib3J0LCBJRTkgdGhyb3dzCgkJCQkJCQkJLy8gZXJyb3JzIG9uIGFueSBwcm9wZXJ0eSBhY2Nlc3MgdGhhdCBpcyBub3QgcmVhZHlTdGF0ZQoJCQkJCQkJCWlmICggdHlwZW9mIHhoci5zdGF0dXMgIT09ICJudW1iZXIiICkgewoJCQkJCQkJCQljb21wbGV0ZSggMCwgImVycm9yIiApOwoJCQkJCQkJCX0gZWxzZSB7CgkJCQkJCQkJCWNvbXBsZXRlKAoKCQkJCQkJCQkJCS8vIEZpbGU6IHByb3RvY29sIGFsd2F5cyB5aWVsZHMgc3RhdHVzIDA7IHNlZSAjODYwNSwgIzE0MjA3CgkJCQkJCQkJCQl4aHIuc3RhdHVzLAoJCQkJCQkJCQkJeGhyLnN0YXR1c1RleHQKCQkJCQkJCQkJKTsKCQkJCQkJCQl9CgkJCQkJCQl9IGVsc2UgewoJCQkJCQkJCWNvbXBsZXRlKAoJCQkJCQkJCQl4aHJTdWNjZXNzU3RhdHVzWyB4aHIuc3RhdHVzIF0gfHwgeGhyLnN0YXR1cywKCQkJCQkJCQkJeGhyLnN0YXR1c1RleHQsCgoJCQkJCQkJCQkvLyBTdXBwb3J0OiBJRSA8PTkgb25seQoJCQkJCQkJCQkvLyBJRTkgaGFzIG5vIFhIUjIgYnV0IHRocm93cyBvbiBiaW5hcnkgKHRyYWMtMTE0MjYpCgkJCQkJCQkJCS8vIEZvciBYSFIyIG5vbi10ZXh0LCBsZXQgdGhlIGNhbGxlciBoYW5kbGUgaXQgKGdoLTI0OTgpCgkJCQkJCQkJCSggeGhyLnJlc3BvbnNlVHlwZSB8fCAidGV4dCIgKSAhPT0gInRleHQiICB8fAoJCQkJCQkJCQl0eXBlb2YgeGhyLnJlc3BvbnNlVGV4dCAhPT0gInN0cmluZyIgPwoJCQkJCQkJCQkJeyBiaW5hcnk6IHhoci5yZXNwb25zZSB9IDoKCQkJCQkJCQkJCXsgdGV4dDogeGhyLnJlc3BvbnNlVGV4dCB9LAoJCQkJCQkJCQl4aHIuZ2V0QWxsUmVzcG9uc2VIZWFkZXJzKCkKCQkJCQkJCQkpOwoJCQkJCQkJfQoJCQkJCQl9CgkJCQkJfTsKCQkJCX07CgoJCQkJLy8gTGlzdGVuIHRvIGV2ZW50cwoJCQkJeGhyLm9ubG9hZCA9IGNhbGxiYWNrKCk7CgkJCQllcnJvckNhbGxiYWNrID0geGhyLm9uZXJyb3IgPSBjYWxsYmFjayggImVycm9yIiApOwoKCQkJCS8vIFN1cHBvcnQ6IElFIDkgb25seQoJCQkJLy8gVXNlIG9ucmVhZHlzdGF0ZWNoYW5nZSB0byByZXBsYWNlIG9uYWJvcnQKCQkJCS8vIHRvIGhhbmRsZSB1bmNhdWdodCBhYm9ydHMKCQkJCWlmICggeGhyLm9uYWJvcnQgIT09IHVuZGVmaW5lZCApIHsKCQkJCQl4aHIub25hYm9ydCA9IGVycm9yQ2FsbGJhY2s7CgkJCQl9IGVsc2UgewoJCQkJCXhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbigpIHsKCgkJCQkJCS8vIENoZWNrIHJlYWR5U3RhdGUgYmVmb3JlIHRpbWVvdXQgYXMgaXQgY2hhbmdlcwoJCQkJCQlpZiAoIHhoci5yZWFkeVN0YXRlID09PSA0ICkgewoKCQkJCQkJCS8vIEFsbG93IG9uZXJyb3IgdG8gYmUgY2FsbGVkIGZpcnN0LAoJCQkJCQkJLy8gYnV0IHRoYXQgd2lsbCBub3QgaGFuZGxlIGEgbmF0aXZlIGFib3J0CgkJCQkJCQkvLyBBbHNvLCBzYXZlIGVycm9yQ2FsbGJhY2sgdG8gYSB2YXJpYWJsZQoJCQkJCQkJLy8gYXMgeGhyLm9uZXJyb3IgY2Fubm90IGJlIGFjY2Vzc2VkCgkJCQkJCQl3aW5kb3cuc2V0VGltZW91dCggZnVuY3Rpb24oKSB7CgkJCQkJCQkJaWYgKCBjYWxsYmFjayApIHsKCQkJCQkJCQkJZXJyb3JDYWxsYmFjaygpOwoJCQkJCQkJCX0KCQkJCQkJCX0gKTsKCQkJCQkJfQoJCQkJCX07CgkJCQl9CgoJCQkJLy8gQ3JlYXRlIHRoZSBhYm9ydCBjYWxsYmFjawoJCQkJY2FsbGJhY2sgPSBjYWxsYmFjayggImFib3J0IiApOwoKCQkJCXRyeSB7CgoJCQkJCS8vIERvIHNlbmQgdGhlIHJlcXVlc3QgKHRoaXMgbWF5IHJhaXNlIGFuIGV4Y2VwdGlvbikKCQkJCQl4aHIuc2VuZCggb3B0aW9ucy5oYXNDb250ZW50ICYmIG9wdGlvbnMuZGF0YSB8fCBudWxsICk7CgkJCQl9IGNhdGNoICggZSApIHsKCgkJCQkJLy8gIzE0NjgzOiBPbmx5IHJldGhyb3cgaWYgdGhpcyBoYXNuJ3QgYmVlbiBub3RpZmllZCBhcyBhbiBlcnJvciB5ZXQKCQkJCQlpZiAoIGNhbGxiYWNrICkgewoJCQkJCQl0aHJvdyBlOwoJCQkJCX0KCQkJCX0KCQkJfSwKCgkJCWFib3J0OiBmdW5jdGlvbigpIHsKCQkJCWlmICggY2FsbGJhY2sgKSB7CgkJCQkJY2FsbGJhY2soKTsKCQkJCX0KCQkJfQoJCX07Cgl9Cn0gKTsKCgoKCi8vIFByZXZlbnQgYXV0by1leGVjdXRpb24gb2Ygc2NyaXB0cyB3aGVuIG5vIGV4cGxpY2l0IGRhdGFUeXBlIHdhcyBwcm92aWRlZCAoU2VlIGdoLTI0MzIpCmpRdWVyeS5hamF4UHJlZmlsdGVyKCBmdW5jdGlvbiggcyApIHsKCWlmICggcy5jcm9zc0RvbWFpbiApIHsKCQlzLmNvbnRlbnRzLnNjcmlwdCA9IGZhbHNlOwoJfQp9ICk7CgovLyBJbnN0YWxsIHNjcmlwdCBkYXRhVHlwZQpqUXVlcnkuYWpheFNldHVwKCB7CglhY2NlcHRzOiB7CgkJc2NyaXB0OiAidGV4dC9qYXZhc2NyaXB0LCBhcHBsaWNhdGlvbi9qYXZhc2NyaXB0LCAiICsKCQkJImFwcGxpY2F0aW9uL2VjbWFzY3JpcHQsIGFwcGxpY2F0aW9uL3gtZWNtYXNjcmlwdCIKCX0sCgljb250ZW50czogewoJCXNjcmlwdDogL1xiKD86amF2YXxlY21hKXNjcmlwdFxiLwoJfSwKCWNvbnZlcnRlcnM6IHsKCQkidGV4dCBzY3JpcHQiOiBmdW5jdGlvbiggdGV4dCApIHsKCQkJalF1ZXJ5Lmdsb2JhbEV2YWwoIHRleHQgKTsKCQkJcmV0dXJuIHRleHQ7CgkJfQoJfQp9ICk7CgovLyBIYW5kbGUgY2FjaGUncyBzcGVjaWFsIGNhc2UgYW5kIGNyb3NzRG9tYWluCmpRdWVyeS5hamF4UHJlZmlsdGVyKCAic2NyaXB0IiwgZnVuY3Rpb24oIHMgKSB7CglpZiAoIHMuY2FjaGUgPT09IHVuZGVmaW5lZCApIHsKCQlzLmNhY2hlID0gZmFsc2U7Cgl9CglpZiAoIHMuY3Jvc3NEb21haW4gKSB7CgkJcy50eXBlID0gIkdFVCI7Cgl9Cn0gKTsKCi8vIEJpbmQgc2NyaXB0IHRhZyBoYWNrIHRyYW5zcG9ydApqUXVlcnkuYWpheFRyYW5zcG9ydCggInNjcmlwdCIsIGZ1bmN0aW9uKCBzICkgewoKCS8vIFRoaXMgdHJhbnNwb3J0IG9ubHkgZGVhbHMgd2l0aCBjcm9zcyBkb21haW4gcmVxdWVzdHMKCWlmICggcy5jcm9zc0RvbWFpbiApIHsKCQl2YXIgc2NyaXB0LCBjYWxsYmFjazsKCQlyZXR1cm4gewoJCQlzZW5kOiBmdW5jdGlvbiggXywgY29tcGxldGUgKSB7CgkJCQlzY3JpcHQgPSBqUXVlcnkoICI8c2NyaXB0PiIgKS5wcm9wKCB7CgkJCQkJY2hhcnNldDogcy5zY3JpcHRDaGFyc2V0LAoJCQkJCXNyYzogcy51cmwKCQkJCX0gKS5vbigKCQkJCQkibG9hZCBlcnJvciIsCgkJCQkJY2FsbGJhY2sgPSBmdW5jdGlvbiggZXZ0ICkgewoJCQkJCQlzY3JpcHQucmVtb3ZlKCk7CgkJCQkJCWNhbGxiYWNrID0gbnVsbDsKCQkJCQkJaWYgKCBldnQgKSB7CgkJCQkJCQljb21wbGV0ZSggZXZ0LnR5cGUgPT09ICJlcnJvciIgPyA0MDQgOiAyMDAsIGV2dC50eXBlICk7CgkJCQkJCX0KCQkJCQl9CgkJCQkpOwoKCQkJCS8vIFVzZSBuYXRpdmUgRE9NIG1hbmlwdWxhdGlvbiB0byBhdm9pZCBvdXIgZG9tTWFuaXAgQUpBWCB0cmlja2VyeQoJCQkJZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZCggc2NyaXB0WyAwIF0gKTsKCQkJfSwKCQkJYWJvcnQ6IGZ1bmN0aW9uKCkgewoJCQkJaWYgKCBjYWxsYmFjayApIHsKCQkJCQljYWxsYmFjaygpOwoJCQkJfQoJCQl9CgkJfTsKCX0KfSApOwoKCgoKdmFyIG9sZENhbGxiYWNrcyA9IFtdLAoJcmpzb25wID0gLyg9KVw/KD89JnwkKXxcP1w/LzsKCi8vIERlZmF1bHQganNvbnAgc2V0dGluZ3MKalF1ZXJ5LmFqYXhTZXR1cCggewoJanNvbnA6ICJjYWxsYmFjayIsCglqc29ucENhbGxiYWNrOiBmdW5jdGlvbigpIHsKCQl2YXIgY2FsbGJhY2sgPSBvbGRDYWxsYmFja3MucG9wKCkgfHwgKCBqUXVlcnkuZXhwYW5kbyArICJfIiArICggbm9uY2UrKyApICk7CgkJdGhpc1sgY2FsbGJhY2sgXSA9IHRydWU7CgkJcmV0dXJuIGNhbGxiYWNrOwoJfQp9ICk7CgovLyBEZXRlY3QsIG5vcm1hbGl6ZSBvcHRpb25zIGFuZCBpbnN0YWxsIGNhbGxiYWNrcyBmb3IganNvbnAgcmVxdWVzdHMKalF1ZXJ5LmFqYXhQcmVmaWx0ZXIoICJqc29uIGpzb25wIiwgZnVuY3Rpb24oIHMsIG9yaWdpbmFsU2V0dGluZ3MsIGpxWEhSICkgewoKCXZhciBjYWxsYmFja05hbWUsIG92ZXJ3cml0dGVuLCByZXNwb25zZUNvbnRhaW5lciwKCQlqc29uUHJvcCA9IHMuanNvbnAgIT09IGZhbHNlICYmICggcmpzb25wLnRlc3QoIHMudXJsICkgPwoJCQkidXJsIiA6CgkJCXR5cGVvZiBzLmRhdGEgPT09ICJzdHJpbmciICYmCgkJCQkoIHMuY29udGVudFR5cGUgfHwgIiIgKQoJCQkJCS5pbmRleE9mKCAiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIiApID09PSAwICYmCgkJCQlyanNvbnAudGVzdCggcy5kYXRhICkgJiYgImRhdGEiCgkJKTsKCgkvLyBIYW5kbGUgaWZmIHRoZSBleHBlY3RlZCBkYXRhIHR5cGUgaXMgImpzb25wIiBvciB3ZSBoYXZlIGEgcGFyYW1ldGVyIHRvIHNldAoJaWYgKCBqc29uUHJvcCB8fCBzLmRhdGFUeXBlc1sgMCBdID09PSAianNvbnAiICkgewoKCQkvLyBHZXQgY2FsbGJhY2sgbmFtZSwgcmVtZW1iZXJpbmcgcHJlZXhpc3RpbmcgdmFsdWUgYXNzb2NpYXRlZCB3aXRoIGl0CgkJY2FsbGJhY2tOYW1lID0gcy5qc29ucENhbGxiYWNrID0galF1ZXJ5LmlzRnVuY3Rpb24oIHMuanNvbnBDYWxsYmFjayApID8KCQkJcy5qc29ucENhbGxiYWNrKCkgOgoJCQlzLmpzb25wQ2FsbGJhY2s7CgoJCS8vIEluc2VydCBjYWxsYmFjayBpbnRvIHVybCBvciBmb3JtIGRhdGEKCQlpZiAoIGpzb25Qcm9wICkgewoJCQlzWyBqc29uUHJvcCBdID0gc1sganNvblByb3AgXS5yZXBsYWNlKCByanNvbnAsICIkMSIgKyBjYWxsYmFja05hbWUgKTsKCQl9IGVsc2UgaWYgKCBzLmpzb25wICE9PSBmYWxzZSApIHsKCQkJcy51cmwgKz0gKCBycXVlcnkudGVzdCggcy51cmwgKSA/ICImIiA6ICI/IiApICsgcy5qc29ucCArICI9IiArIGNhbGxiYWNrTmFtZTsKCQl9CgoJCS8vIFVzZSBkYXRhIGNvbnZlcnRlciB0byByZXRyaWV2ZSBqc29uIGFmdGVyIHNjcmlwdCBleGVjdXRpb24KCQlzLmNvbnZlcnRlcnNbICJzY3JpcHQganNvbiIgXSA9IGZ1bmN0aW9uKCkgewoJCQlpZiAoICFyZXNwb25zZUNvbnRhaW5lciApIHsKCQkJCWpRdWVyeS5lcnJvciggY2FsbGJhY2tOYW1lICsgIiB3YXMgbm90IGNhbGxlZCIgKTsKCQkJfQoJCQlyZXR1cm4gcmVzcG9uc2VDb250YWluZXJbIDAgXTsKCQl9OwoKCQkvLyBGb3JjZSBqc29uIGRhdGFUeXBlCgkJcy5kYXRhVHlwZXNbIDAgXSA9ICJqc29uIjsKCgkJLy8gSW5zdGFsbCBjYWxsYmFjawoJCW92ZXJ3cml0dGVuID0gd2luZG93WyBjYWxsYmFja05hbWUgXTsKCQl3aW5kb3dbIGNhbGxiYWNrTmFtZSBdID0gZnVuY3Rpb24oKSB7CgkJCXJlc3BvbnNlQ29udGFpbmVyID0gYXJndW1lbnRzOwoJCX07CgoJCS8vIENsZWFuLXVwIGZ1bmN0aW9uIChmaXJlcyBhZnRlciBjb252ZXJ0ZXJzKQoJCWpxWEhSLmFsd2F5cyggZnVuY3Rpb24oKSB7CgoJCQkvLyBJZiBwcmV2aW91cyB2YWx1ZSBkaWRuJ3QgZXhpc3QgLSByZW1vdmUgaXQKCQkJaWYgKCBvdmVyd3JpdHRlbiA9PT0gdW5kZWZpbmVkICkgewoJCQkJalF1ZXJ5KCB3aW5kb3cgKS5yZW1vdmVQcm9wKCBjYWxsYmFja05hbWUgKTsKCgkJCS8vIE90aGVyd2lzZSByZXN0b3JlIHByZWV4aXN0aW5nIHZhbHVlCgkJCX0gZWxzZSB7CgkJCQl3aW5kb3dbIGNhbGxiYWNrTmFtZSBdID0gb3ZlcndyaXR0ZW47CgkJCX0KCgkJCS8vIFNhdmUgYmFjayBhcyBmcmVlCgkJCWlmICggc1sgY2FsbGJhY2tOYW1lIF0gKSB7CgoJCQkJLy8gTWFrZSBzdXJlIHRoYXQgcmUtdXNpbmcgdGhlIG9wdGlvbnMgZG9lc24ndCBzY3JldyB0aGluZ3MgYXJvdW5kCgkJCQlzLmpzb25wQ2FsbGJhY2sgPSBvcmlnaW5hbFNldHRpbmdzLmpzb25wQ2FsbGJhY2s7CgoJCQkJLy8gU2F2ZSB0aGUgY2FsbGJhY2sgbmFtZSBmb3IgZnV0dXJlIHVzZQoJCQkJb2xkQ2FsbGJhY2tzLnB1c2goIGNhbGxiYWNrTmFtZSApOwoJCQl9CgoJCQkvLyBDYWxsIGlmIGl0IHdhcyBhIGZ1bmN0aW9uIGFuZCB3ZSBoYXZlIGEgcmVzcG9uc2UKCQkJaWYgKCByZXNwb25zZUNvbnRhaW5lciAmJiBqUXVlcnkuaXNGdW5jdGlvbiggb3ZlcndyaXR0ZW4gKSApIHsKCQkJCW92ZXJ3cml0dGVuKCByZXNwb25zZUNvbnRhaW5lclsgMCBdICk7CgkJCX0KCgkJCXJlc3BvbnNlQ29udGFpbmVyID0gb3ZlcndyaXR0ZW4gPSB1bmRlZmluZWQ7CgkJfSApOwoKCQkvLyBEZWxlZ2F0ZSB0byBzY3JpcHQKCQlyZXR1cm4gInNjcmlwdCI7Cgl9Cn0gKTsKCgoKCi8vIFN1cHBvcnQ6IFNhZmFyaSA4IG9ubHkKLy8gSW4gU2FmYXJpIDggZG9jdW1lbnRzIGNyZWF0ZWQgdmlhIGRvY3VtZW50LmltcGxlbWVudGF0aW9uLmNyZWF0ZUhUTUxEb2N1bWVudAovLyBjb2xsYXBzZSBzaWJsaW5nIGZvcm1zOiB0aGUgc2Vjb25kIG9uZSBiZWNvbWVzIGEgY2hpbGQgb2YgdGhlIGZpcnN0IG9uZS4KLy8gQmVjYXVzZSBvZiB0aGF0LCB0aGlzIHNlY3VyaXR5IG1lYXN1cmUgaGFzIHRvIGJlIGRpc2FibGVkIGluIFNhZmFyaSA4LgovLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM3MzM3CnN1cHBvcnQuY3JlYXRlSFRNTERvY3VtZW50ID0gKCBmdW5jdGlvbigpIHsKCXZhciBib2R5ID0gZG9jdW1lbnQuaW1wbGVtZW50YXRpb24uY3JlYXRlSFRNTERvY3VtZW50KCAiIiApLmJvZHk7Cglib2R5LmlubmVySFRNTCA9ICI8Zm9ybT48L2Zvcm0+PGZvcm0+PC9mb3JtPiI7CglyZXR1cm4gYm9keS5jaGlsZE5vZGVzLmxlbmd0aCA9PT0gMjsKfSApKCk7CgoKLy8gQXJndW1lbnQgImRhdGEiIHNob3VsZCBiZSBzdHJpbmcgb2YgaHRtbAovLyBjb250ZXh0IChvcHRpb25hbCk6IElmIHNwZWNpZmllZCwgdGhlIGZyYWdtZW50IHdpbGwgYmUgY3JlYXRlZCBpbiB0aGlzIGNvbnRleHQsCi8vIGRlZmF1bHRzIHRvIGRvY3VtZW50Ci8vIGtlZXBTY3JpcHRzIChvcHRpb25hbCk6IElmIHRydWUsIHdpbGwgaW5jbHVkZSBzY3JpcHRzIHBhc3NlZCBpbiB0aGUgaHRtbCBzdHJpbmcKalF1ZXJ5LnBhcnNlSFRNTCA9IGZ1bmN0aW9uKCBkYXRhLCBjb250ZXh0LCBrZWVwU2NyaXB0cyApIHsKCWlmICggdHlwZW9mIGRhdGEgIT09ICJzdHJpbmciICkgewoJCXJldHVybiBbXTsKCX0KCWlmICggdHlwZW9mIGNvbnRleHQgPT09ICJib29sZWFuIiApIHsKCQlrZWVwU2NyaXB0cyA9IGNvbnRleHQ7CgkJY29udGV4dCA9IGZhbHNlOwoJfQoKCXZhciBiYXNlLCBwYXJzZWQsIHNjcmlwdHM7CgoJaWYgKCAhY29udGV4dCApIHsKCgkJLy8gU3RvcCBzY3JpcHRzIG9yIGlubGluZSBldmVudCBoYW5kbGVycyBmcm9tIGJlaW5nIGV4ZWN1dGVkIGltbWVkaWF0ZWx5CgkJLy8gYnkgdXNpbmcgZG9jdW1lbnQuaW1wbGVtZW50YXRpb24KCQlpZiAoIHN1cHBvcnQuY3JlYXRlSFRNTERvY3VtZW50ICkgewoJCQljb250ZXh0ID0gZG9jdW1lbnQuaW1wbGVtZW50YXRpb24uY3JlYXRlSFRNTERvY3VtZW50KCAiIiApOwoKCQkJLy8gU2V0IHRoZSBiYXNlIGhyZWYgZm9yIHRoZSBjcmVhdGVkIGRvY3VtZW50CgkJCS8vIHNvIGFueSBwYXJzZWQgZWxlbWVudHMgd2l0aCBVUkxzCgkJCS8vIGFyZSBiYXNlZCBvbiB0aGUgZG9jdW1lbnQncyBVUkwgKGdoLTI5NjUpCgkJCWJhc2UgPSBjb250ZXh0LmNyZWF0ZUVsZW1lbnQoICJiYXNlIiApOwoJCQliYXNlLmhyZWYgPSBkb2N1bWVudC5sb2NhdGlvbi5ocmVmOwoJCQljb250ZXh0LmhlYWQuYXBwZW5kQ2hpbGQoIGJhc2UgKTsKCQl9IGVsc2UgewoJCQljb250ZXh0ID0gZG9jdW1lbnQ7CgkJfQoJfQoKCXBhcnNlZCA9IHJzaW5nbGVUYWcuZXhlYyggZGF0YSApOwoJc2NyaXB0cyA9ICFrZWVwU2NyaXB0cyAmJiBbXTsKCgkvLyBTaW5nbGUgdGFnCglpZiAoIHBhcnNlZCApIHsKCQlyZXR1cm4gWyBjb250ZXh0LmNyZWF0ZUVsZW1lbnQoIHBhcnNlZFsgMSBdICkgXTsKCX0KCglwYXJzZWQgPSBidWlsZEZyYWdtZW50KCBbIGRhdGEgXSwgY29udGV4dCwgc2NyaXB0cyApOwoKCWlmICggc2NyaXB0cyAmJiBzY3JpcHRzLmxlbmd0aCApIHsKCQlqUXVlcnkoIHNjcmlwdHMgKS5yZW1vdmUoKTsKCX0KCglyZXR1cm4galF1ZXJ5Lm1lcmdlKCBbXSwgcGFyc2VkLmNoaWxkTm9kZXMgKTsKfTsKCgovKioKICogTG9hZCBhIHVybCBpbnRvIGEgcGFnZQogKi8KalF1ZXJ5LmZuLmxvYWQgPSBmdW5jdGlvbiggdXJsLCBwYXJhbXMsIGNhbGxiYWNrICkgewoJdmFyIHNlbGVjdG9yLCB0eXBlLCByZXNwb25zZSwKCQlzZWxmID0gdGhpcywKCQlvZmYgPSB1cmwuaW5kZXhPZiggIiAiICk7CgoJaWYgKCBvZmYgPiAtMSApIHsKCQlzZWxlY3RvciA9IHN0cmlwQW5kQ29sbGFwc2UoIHVybC5zbGljZSggb2ZmICkgKTsKCQl1cmwgPSB1cmwuc2xpY2UoIDAsIG9mZiApOwoJfQoKCS8vIElmIGl0J3MgYSBmdW5jdGlvbgoJaWYgKCBqUXVlcnkuaXNGdW5jdGlvbiggcGFyYW1zICkgKSB7CgoJCS8vIFdlIGFzc3VtZSB0aGF0IGl0J3MgdGhlIGNhbGxiYWNrCgkJY2FsbGJhY2sgPSBwYXJhbXM7CgkJcGFyYW1zID0gdW5kZWZpbmVkOwoKCS8vIE90aGVyd2lzZSwgYnVpbGQgYSBwYXJhbSBzdHJpbmcKCX0gZWxzZSBpZiAoIHBhcmFtcyAmJiB0eXBlb2YgcGFyYW1zID09PSAib2JqZWN0IiApIHsKCQl0eXBlID0gIlBPU1QiOwoJfQoKCS8vIElmIHdlIGhhdmUgZWxlbWVudHMgdG8gbW9kaWZ5LCBtYWtlIHRoZSByZXF1ZXN0CglpZiAoIHNlbGYubGVuZ3RoID4gMCApIHsKCQlqUXVlcnkuYWpheCggewoJCQl1cmw6IHVybCwKCgkJCS8vIElmICJ0eXBlIiB2YXJpYWJsZSBpcyB1bmRlZmluZWQsIHRoZW4gIkdFVCIgbWV0aG9kIHdpbGwgYmUgdXNlZC4KCQkJLy8gTWFrZSB2YWx1ZSBvZiB0aGlzIGZpZWxkIGV4cGxpY2l0IHNpbmNlCgkJCS8vIHVzZXIgY2FuIG92ZXJyaWRlIGl0IHRocm91Z2ggYWpheFNldHVwIG1ldGhvZAoJCQl0eXBlOiB0eXBlIHx8ICJHRVQiLAoJCQlkYXRhVHlwZTogImh0bWwiLAoJCQlkYXRhOiBwYXJhbXMKCQl9ICkuZG9uZSggZnVuY3Rpb24oIHJlc3BvbnNlVGV4dCApIHsKCgkJCS8vIFNhdmUgcmVzcG9uc2UgZm9yIHVzZSBpbiBjb21wbGV0ZSBjYWxsYmFjawoJCQlyZXNwb25zZSA9IGFyZ3VtZW50czsKCgkJCXNlbGYuaHRtbCggc2VsZWN0b3IgPwoKCQkJCS8vIElmIGEgc2VsZWN0b3Igd2FzIHNwZWNpZmllZCwgbG9jYXRlIHRoZSByaWdodCBlbGVtZW50cyBpbiBhIGR1bW15IGRpdgoJCQkJLy8gRXhjbHVkZSBzY3JpcHRzIHRvIGF2b2lkIElFICdQZXJtaXNzaW9uIERlbmllZCcgZXJyb3JzCgkJCQlqUXVlcnkoICI8ZGl2PiIgKS5hcHBlbmQoIGpRdWVyeS5wYXJzZUhUTUwoIHJlc3BvbnNlVGV4dCApICkuZmluZCggc2VsZWN0b3IgKSA6CgoJCQkJLy8gT3RoZXJ3aXNlIHVzZSB0aGUgZnVsbCByZXN1bHQKCQkJCXJlc3BvbnNlVGV4dCApOwoKCQkvLyBJZiB0aGUgcmVxdWVzdCBzdWNjZWVkcywgdGhpcyBmdW5jdGlvbiBnZXRzICJkYXRhIiwgInN0YXR1cyIsICJqcVhIUiIKCQkvLyBidXQgdGhleSBhcmUgaWdub3JlZCBiZWNhdXNlIHJlc3BvbnNlIHdhcyBzZXQgYWJvdmUuCgkJLy8gSWYgaXQgZmFpbHMsIHRoaXMgZnVuY3Rpb24gZ2V0cyAianFYSFIiLCAic3RhdHVzIiwgImVycm9yIgoJCX0gKS5hbHdheXMoIGNhbGxiYWNrICYmIGZ1bmN0aW9uKCBqcVhIUiwgc3RhdHVzICkgewoJCQlzZWxmLmVhY2goIGZ1bmN0aW9uKCkgewoJCQkJY2FsbGJhY2suYXBwbHkoIHRoaXMsIHJlc3BvbnNlIHx8IFsganFYSFIucmVzcG9uc2VUZXh0LCBzdGF0dXMsIGpxWEhSIF0gKTsKCQkJfSApOwoJCX0gKTsKCX0KCglyZXR1cm4gdGhpczsKfTsKCgoKCi8vIEF0dGFjaCBhIGJ1bmNoIG9mIGZ1bmN0aW9ucyBmb3IgaGFuZGxpbmcgY29tbW9uIEFKQVggZXZlbnRzCmpRdWVyeS5lYWNoKCBbCgkiYWpheFN0YXJ0IiwKCSJhamF4U3RvcCIsCgkiYWpheENvbXBsZXRlIiwKCSJhamF4RXJyb3IiLAoJImFqYXhTdWNjZXNzIiwKCSJhamF4U2VuZCIKXSwgZnVuY3Rpb24oIGksIHR5cGUgKSB7CglqUXVlcnkuZm5bIHR5cGUgXSA9IGZ1bmN0aW9uKCBmbiApIHsKCQlyZXR1cm4gdGhpcy5vbiggdHlwZSwgZm4gKTsKCX07Cn0gKTsKCgoKCmpRdWVyeS5leHByLnBzZXVkb3MuYW5pbWF0ZWQgPSBmdW5jdGlvbiggZWxlbSApIHsKCXJldHVybiBqUXVlcnkuZ3JlcCggalF1ZXJ5LnRpbWVycywgZnVuY3Rpb24oIGZuICkgewoJCXJldHVybiBlbGVtID09PSBmbi5lbGVtOwoJfSApLmxlbmd0aDsKfTsKCgoKCi8qKgogKiBHZXRzIGEgd2luZG93IGZyb20gYW4gZWxlbWVudAogKi8KZnVuY3Rpb24gZ2V0V2luZG93KCBlbGVtICkgewoJcmV0dXJuIGpRdWVyeS5pc1dpbmRvdyggZWxlbSApID8gZWxlbSA6IGVsZW0ubm9kZVR5cGUgPT09IDkgJiYgZWxlbS5kZWZhdWx0VmlldzsKfQoKalF1ZXJ5Lm9mZnNldCA9IHsKCXNldE9mZnNldDogZnVuY3Rpb24oIGVsZW0sIG9wdGlvbnMsIGkgKSB7CgkJdmFyIGN1clBvc2l0aW9uLCBjdXJMZWZ0LCBjdXJDU1NUb3AsIGN1clRvcCwgY3VyT2Zmc2V0LCBjdXJDU1NMZWZ0LCBjYWxjdWxhdGVQb3NpdGlvbiwKCQkJcG9zaXRpb24gPSBqUXVlcnkuY3NzKCBlbGVtLCAicG9zaXRpb24iICksCgkJCWN1ckVsZW0gPSBqUXVlcnkoIGVsZW0gKSwKCQkJcHJvcHMgPSB7fTsKCgkJLy8gU2V0IHBvc2l0aW9uIGZpcnN0LCBpbi1jYXNlIHRvcC9sZWZ0IGFyZSBzZXQgZXZlbiBvbiBzdGF0aWMgZWxlbQoJCWlmICggcG9zaXRpb24gPT09ICJzdGF0aWMiICkgewoJCQllbGVtLnN0eWxlLnBvc2l0aW9uID0gInJlbGF0aXZlIjsKCQl9CgoJCWN1ck9mZnNldCA9IGN1ckVsZW0ub2Zmc2V0KCk7CgkJY3VyQ1NTVG9wID0galF1ZXJ5LmNzcyggZWxlbSwgInRvcCIgKTsKCQljdXJDU1NMZWZ0ID0galF1ZXJ5LmNzcyggZWxlbSwgImxlZnQiICk7CgkJY2FsY3VsYXRlUG9zaXRpb24gPSAoIHBvc2l0aW9uID09PSAiYWJzb2x1dGUiIHx8IHBvc2l0aW9uID09PSAiZml4ZWQiICkgJiYKCQkJKCBjdXJDU1NUb3AgKyBjdXJDU1NMZWZ0ICkuaW5kZXhPZiggImF1dG8iICkgPiAtMTsKCgkJLy8gTmVlZCB0byBiZSBhYmxlIHRvIGNhbGN1bGF0ZSBwb3NpdGlvbiBpZiBlaXRoZXIKCQkvLyB0b3Agb3IgbGVmdCBpcyBhdXRvIGFuZCBwb3NpdGlvbiBpcyBlaXRoZXIgYWJzb2x1dGUgb3IgZml4ZWQKCQlpZiAoIGNhbGN1bGF0ZVBvc2l0aW9uICkgewoJCQljdXJQb3NpdGlvbiA9IGN1ckVsZW0ucG9zaXRpb24oKTsKCQkJY3VyVG9wID0gY3VyUG9zaXRpb24udG9wOwoJCQljdXJMZWZ0ID0gY3VyUG9zaXRpb24ubGVmdDsKCgkJfSBlbHNlIHsKCQkJY3VyVG9wID0gcGFyc2VGbG9hdCggY3VyQ1NTVG9wICkgfHwgMDsKCQkJY3VyTGVmdCA9IHBhcnNlRmxvYXQoIGN1ckNTU0xlZnQgKSB8fCAwOwoJCX0KCgkJaWYgKCBqUXVlcnkuaXNGdW5jdGlvbiggb3B0aW9ucyApICkgewoKCQkJLy8gVXNlIGpRdWVyeS5leHRlbmQgaGVyZSB0byBhbGxvdyBtb2RpZmljYXRpb24gb2YgY29vcmRpbmF0ZXMgYXJndW1lbnQgKGdoLTE4NDgpCgkJCW9wdGlvbnMgPSBvcHRpb25zLmNhbGwoIGVsZW0sIGksIGpRdWVyeS5leHRlbmQoIHt9LCBjdXJPZmZzZXQgKSApOwoJCX0KCgkJaWYgKCBvcHRpb25zLnRvcCAhPSBudWxsICkgewoJCQlwcm9wcy50b3AgPSAoIG9wdGlvbnMudG9wIC0gY3VyT2Zmc2V0LnRvcCApICsgY3VyVG9wOwoJCX0KCQlpZiAoIG9wdGlvbnMubGVmdCAhPSBudWxsICkgewoJCQlwcm9wcy5sZWZ0ID0gKCBvcHRpb25zLmxlZnQgLSBjdXJPZmZzZXQubGVmdCApICsgY3VyTGVmdDsKCQl9CgoJCWlmICggInVzaW5nIiBpbiBvcHRpb25zICkgewoJCQlvcHRpb25zLnVzaW5nLmNhbGwoIGVsZW0sIHByb3BzICk7CgoJCX0gZWxzZSB7CgkJCWN1ckVsZW0uY3NzKCBwcm9wcyApOwoJCX0KCX0KfTsKCmpRdWVyeS5mbi5leHRlbmQoIHsKCW9mZnNldDogZnVuY3Rpb24oIG9wdGlvbnMgKSB7CgoJCS8vIFByZXNlcnZlIGNoYWluaW5nIGZvciBzZXR0ZXIKCQlpZiAoIGFyZ3VtZW50cy5sZW5ndGggKSB7CgkJCXJldHVybiBvcHRpb25zID09PSB1bmRlZmluZWQgPwoJCQkJdGhpcyA6CgkJCQl0aGlzLmVhY2goIGZ1bmN0aW9uKCBpICkgewoJCQkJCWpRdWVyeS5vZmZzZXQuc2V0T2Zmc2V0KCB0aGlzLCBvcHRpb25zLCBpICk7CgkJCQl9ICk7CgkJfQoKCQl2YXIgZG9jRWxlbSwgd2luLCByZWN0LCBkb2MsCgkJCWVsZW0gPSB0aGlzWyAwIF07CgoJCWlmICggIWVsZW0gKSB7CgkJCXJldHVybjsKCQl9CgoJCS8vIFN1cHBvcnQ6IElFIDw9MTEgb25seQoJCS8vIFJ1bm5pbmcgZ2V0Qm91bmRpbmdDbGllbnRSZWN0IG9uIGEKCQkvLyBkaXNjb25uZWN0ZWQgbm9kZSBpbiBJRSB0aHJvd3MgYW4gZXJyb3IKCQlpZiAoICFlbGVtLmdldENsaWVudFJlY3RzKCkubGVuZ3RoICkgewoJCQlyZXR1cm4geyB0b3A6IDAsIGxlZnQ6IDAgfTsKCQl9CgoJCXJlY3QgPSBlbGVtLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpOwoKCQkvLyBNYWtlIHN1cmUgZWxlbWVudCBpcyBub3QgaGlkZGVuIChkaXNwbGF5OiBub25lKQoJCWlmICggcmVjdC53aWR0aCB8fCByZWN0LmhlaWdodCApIHsKCQkJZG9jID0gZWxlbS5vd25lckRvY3VtZW50OwoJCQl3aW4gPSBnZXRXaW5kb3coIGRvYyApOwoJCQlkb2NFbGVtID0gZG9jLmRvY3VtZW50RWxlbWVudDsKCgkJCXJldHVybiB7CgkJCQl0b3A6IHJlY3QudG9wICsgd2luLnBhZ2VZT2Zmc2V0IC0gZG9jRWxlbS5jbGllbnRUb3AsCgkJCQlsZWZ0OiByZWN0LmxlZnQgKyB3aW4ucGFnZVhPZmZzZXQgLSBkb2NFbGVtLmNsaWVudExlZnQKCQkJfTsKCQl9CgoJCS8vIFJldHVybiB6ZXJvcyBmb3IgZGlzY29ubmVjdGVkIGFuZCBoaWRkZW4gZWxlbWVudHMgKGdoLTIzMTApCgkJcmV0dXJuIHJlY3Q7Cgl9LAoKCXBvc2l0aW9uOiBmdW5jdGlvbigpIHsKCQlpZiAoICF0aGlzWyAwIF0gKSB7CgkJCXJldHVybjsKCQl9CgoJCXZhciBvZmZzZXRQYXJlbnQsIG9mZnNldCwKCQkJZWxlbSA9IHRoaXNbIDAgXSwKCQkJcGFyZW50T2Zmc2V0ID0geyB0b3A6IDAsIGxlZnQ6IDAgfTsKCgkJLy8gRml4ZWQgZWxlbWVudHMgYXJlIG9mZnNldCBmcm9tIHdpbmRvdyAocGFyZW50T2Zmc2V0ID0ge3RvcDowLCBsZWZ0OiAwfSwKCQkvLyBiZWNhdXNlIGl0IGlzIGl0cyBvbmx5IG9mZnNldCBwYXJlbnQKCQlpZiAoIGpRdWVyeS5jc3MoIGVsZW0sICJwb3NpdGlvbiIgKSA9PT0gImZpeGVkIiApIHsKCgkJCS8vIEFzc3VtZSBnZXRCb3VuZGluZ0NsaWVudFJlY3QgaXMgdGhlcmUgd2hlbiBjb21wdXRlZCBwb3NpdGlvbiBpcyBmaXhlZAoJCQlvZmZzZXQgPSBlbGVtLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpOwoKCQl9IGVsc2UgewoKCQkJLy8gR2V0ICpyZWFsKiBvZmZzZXRQYXJlbnQKCQkJb2Zmc2V0UGFyZW50ID0gdGhpcy5vZmZzZXRQYXJlbnQoKTsKCgkJCS8vIEdldCBjb3JyZWN0IG9mZnNldHMKCQkJb2Zmc2V0ID0gdGhpcy5vZmZzZXQoKTsKCQkJaWYgKCAhalF1ZXJ5Lm5vZGVOYW1lKCBvZmZzZXRQYXJlbnRbIDAgXSwgImh0bWwiICkgKSB7CgkJCQlwYXJlbnRPZmZzZXQgPSBvZmZzZXRQYXJlbnQub2Zmc2V0KCk7CgkJCX0KCgkJCS8vIEFkZCBvZmZzZXRQYXJlbnQgYm9yZGVycwoJCQlwYXJlbnRPZmZzZXQgPSB7CgkJCQl0b3A6IHBhcmVudE9mZnNldC50b3AgKyBqUXVlcnkuY3NzKCBvZmZzZXRQYXJlbnRbIDAgXSwgImJvcmRlclRvcFdpZHRoIiwgdHJ1ZSApLAoJCQkJbGVmdDogcGFyZW50T2Zmc2V0LmxlZnQgKyBqUXVlcnkuY3NzKCBvZmZzZXRQYXJlbnRbIDAgXSwgImJvcmRlckxlZnRXaWR0aCIsIHRydWUgKQoJCQl9OwoJCX0KCgkJLy8gU3VidHJhY3QgcGFyZW50IG9mZnNldHMgYW5kIGVsZW1lbnQgbWFyZ2lucwoJCXJldHVybiB7CgkJCXRvcDogb2Zmc2V0LnRvcCAtIHBhcmVudE9mZnNldC50b3AgLSBqUXVlcnkuY3NzKCBlbGVtLCAibWFyZ2luVG9wIiwgdHJ1ZSApLAoJCQlsZWZ0OiBvZmZzZXQubGVmdCAtIHBhcmVudE9mZnNldC5sZWZ0IC0galF1ZXJ5LmNzcyggZWxlbSwgIm1hcmdpbkxlZnQiLCB0cnVlICkKCQl9OwoJfSwKCgkvLyBUaGlzIG1ldGhvZCB3aWxsIHJldHVybiBkb2N1bWVudEVsZW1lbnQgaW4gdGhlIGZvbGxvd2luZyBjYXNlczoKCS8vIDEpIEZvciB0aGUgZWxlbWVudCBpbnNpZGUgdGhlIGlmcmFtZSB3aXRob3V0IG9mZnNldFBhcmVudCwgdGhpcyBtZXRob2Qgd2lsbCByZXR1cm4KCS8vICAgIGRvY3VtZW50RWxlbWVudCBvZiB0aGUgcGFyZW50IHdpbmRvdwoJLy8gMikgRm9yIHRoZSBoaWRkZW4gb3IgZGV0YWNoZWQgZWxlbWVudAoJLy8gMykgRm9yIGJvZHkgb3IgaHRtbCBlbGVtZW50LCBpLmUuIGluIGNhc2Ugb2YgdGhlIGh0bWwgbm9kZSAtIGl0IHdpbGwgcmV0dXJuIGl0c2VsZgoJLy8KCS8vIGJ1dCB0aG9zZSBleGNlcHRpb25zIHdlcmUgbmV2ZXIgcHJlc2VudGVkIGFzIGEgcmVhbCBsaWZlIHVzZS1jYXNlcwoJLy8gYW5kIG1pZ2h0IGJlIGNvbnNpZGVyZWQgYXMgbW9yZSBwcmVmZXJhYmxlIHJlc3VsdHMuCgkvLwoJLy8gVGhpcyBsb2dpYywgaG93ZXZlciwgaXMgbm90IGd1YXJhbnRlZWQgYW5kIGNhbiBjaGFuZ2UgYXQgYW55IHBvaW50IGluIHRoZSBmdXR1cmUKCW9mZnNldFBhcmVudDogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMubWFwKCBmdW5jdGlvbigpIHsKCQkJdmFyIG9mZnNldFBhcmVudCA9IHRoaXMub2Zmc2V0UGFyZW50OwoKCQkJd2hpbGUgKCBvZmZzZXRQYXJlbnQgJiYgalF1ZXJ5LmNzcyggb2Zmc2V0UGFyZW50LCAicG9zaXRpb24iICkgPT09ICJzdGF0aWMiICkgewoJCQkJb2Zmc2V0UGFyZW50ID0gb2Zmc2V0UGFyZW50Lm9mZnNldFBhcmVudDsKCQkJfQoKCQkJcmV0dXJuIG9mZnNldFBhcmVudCB8fCBkb2N1bWVudEVsZW1lbnQ7CgkJfSApOwoJfQp9ICk7CgovLyBDcmVhdGUgc2Nyb2xsTGVmdCBhbmQgc2Nyb2xsVG9wIG1ldGhvZHMKalF1ZXJ5LmVhY2goIHsgc2Nyb2xsTGVmdDogInBhZ2VYT2Zmc2V0Iiwgc2Nyb2xsVG9wOiAicGFnZVlPZmZzZXQiIH0sIGZ1bmN0aW9uKCBtZXRob2QsIHByb3AgKSB7Cgl2YXIgdG9wID0gInBhZ2VZT2Zmc2V0IiA9PT0gcHJvcDsKCglqUXVlcnkuZm5bIG1ldGhvZCBdID0gZnVuY3Rpb24oIHZhbCApIHsKCQlyZXR1cm4gYWNjZXNzKCB0aGlzLCBmdW5jdGlvbiggZWxlbSwgbWV0aG9kLCB2YWwgKSB7CgkJCXZhciB3aW4gPSBnZXRXaW5kb3coIGVsZW0gKTsKCgkJCWlmICggdmFsID09PSB1bmRlZmluZWQgKSB7CgkJCQlyZXR1cm4gd2luID8gd2luWyBwcm9wIF0gOiBlbGVtWyBtZXRob2QgXTsKCQkJfQoKCQkJaWYgKCB3aW4gKSB7CgkJCQl3aW4uc2Nyb2xsVG8oCgkJCQkJIXRvcCA/IHZhbCA6IHdpbi5wYWdlWE9mZnNldCwKCQkJCQl0b3AgPyB2YWwgOiB3aW4ucGFnZVlPZmZzZXQKCQkJCSk7CgoJCQl9IGVsc2UgewoJCQkJZWxlbVsgbWV0aG9kIF0gPSB2YWw7CgkJCX0KCQl9LCBtZXRob2QsIHZhbCwgYXJndW1lbnRzLmxlbmd0aCApOwoJfTsKfSApOwoKLy8gU3VwcG9ydDogU2FmYXJpIDw9NyAtIDkuMSwgQ2hyb21lIDw9MzcgLSA0OQovLyBBZGQgdGhlIHRvcC9sZWZ0IGNzc0hvb2tzIHVzaW5nIGpRdWVyeS5mbi5wb3NpdGlvbgovLyBXZWJraXQgYnVnOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjkwODQKLy8gQmxpbmsgYnVnOiBodHRwczovL2J1Z3MuY2hyb21pdW0ub3JnL3AvY2hyb21pdW0vaXNzdWVzL2RldGFpbD9pZD01ODkzNDcKLy8gZ2V0Q29tcHV0ZWRTdHlsZSByZXR1cm5zIHBlcmNlbnQgd2hlbiBzcGVjaWZpZWQgZm9yIHRvcC9sZWZ0L2JvdHRvbS9yaWdodDsKLy8gcmF0aGVyIHRoYW4gbWFrZSB0aGUgY3NzIG1vZHVsZSBkZXBlbmQgb24gdGhlIG9mZnNldCBtb2R1bGUsIGp1c3QgY2hlY2sgZm9yIGl0IGhlcmUKalF1ZXJ5LmVhY2goIFsgInRvcCIsICJsZWZ0IiBdLCBmdW5jdGlvbiggaSwgcHJvcCApIHsKCWpRdWVyeS5jc3NIb29rc1sgcHJvcCBdID0gYWRkR2V0SG9va0lmKCBzdXBwb3J0LnBpeGVsUG9zaXRpb24sCgkJZnVuY3Rpb24oIGVsZW0sIGNvbXB1dGVkICkgewoJCQlpZiAoIGNvbXB1dGVkICkgewoJCQkJY29tcHV0ZWQgPSBjdXJDU1MoIGVsZW0sIHByb3AgKTsKCgkJCQkvLyBJZiBjdXJDU1MgcmV0dXJucyBwZXJjZW50YWdlLCBmYWxsYmFjayB0byBvZmZzZXQKCQkJCXJldHVybiBybnVtbm9ucHgudGVzdCggY29tcHV0ZWQgKSA/CgkJCQkJalF1ZXJ5KCBlbGVtICkucG9zaXRpb24oKVsgcHJvcCBdICsgInB4IiA6CgkJCQkJY29tcHV0ZWQ7CgkJCX0KCQl9CgkpOwp9ICk7CgoKLy8gQ3JlYXRlIGlubmVySGVpZ2h0LCBpbm5lcldpZHRoLCBoZWlnaHQsIHdpZHRoLCBvdXRlckhlaWdodCBhbmQgb3V0ZXJXaWR0aCBtZXRob2RzCmpRdWVyeS5lYWNoKCB7IEhlaWdodDogImhlaWdodCIsIFdpZHRoOiAid2lkdGgiIH0sIGZ1bmN0aW9uKCBuYW1lLCB0eXBlICkgewoJalF1ZXJ5LmVhY2goIHsgcGFkZGluZzogImlubmVyIiArIG5hbWUsIGNvbnRlbnQ6IHR5cGUsICIiOiAib3V0ZXIiICsgbmFtZSB9LAoJCWZ1bmN0aW9uKCBkZWZhdWx0RXh0cmEsIGZ1bmNOYW1lICkgewoKCQkvLyBNYXJnaW4gaXMgb25seSBmb3Igb3V0ZXJIZWlnaHQsIG91dGVyV2lkdGgKCQlqUXVlcnkuZm5bIGZ1bmNOYW1lIF0gPSBmdW5jdGlvbiggbWFyZ2luLCB2YWx1ZSApIHsKCQkJdmFyIGNoYWluYWJsZSA9IGFyZ3VtZW50cy5sZW5ndGggJiYgKCBkZWZhdWx0RXh0cmEgfHwgdHlwZW9mIG1hcmdpbiAhPT0gImJvb2xlYW4iICksCgkJCQlleHRyYSA9IGRlZmF1bHRFeHRyYSB8fCAoIG1hcmdpbiA9PT0gdHJ1ZSB8fCB2YWx1ZSA9PT0gdHJ1ZSA/ICJtYXJnaW4iIDogImJvcmRlciIgKTsKCgkJCXJldHVybiBhY2Nlc3MoIHRoaXMsIGZ1bmN0aW9uKCBlbGVtLCB0eXBlLCB2YWx1ZSApIHsKCQkJCXZhciBkb2M7CgoJCQkJaWYgKCBqUXVlcnkuaXNXaW5kb3coIGVsZW0gKSApIHsKCgkJCQkJLy8gJCggd2luZG93ICkub3V0ZXJXaWR0aC9IZWlnaHQgcmV0dXJuIHcvaCBpbmNsdWRpbmcgc2Nyb2xsYmFycyAoZ2gtMTcyOSkKCQkJCQlyZXR1cm4gZnVuY05hbWUuaW5kZXhPZiggIm91dGVyIiApID09PSAwID8KCQkJCQkJZWxlbVsgImlubmVyIiArIG5hbWUgXSA6CgkJCQkJCWVsZW0uZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50WyAiY2xpZW50IiArIG5hbWUgXTsKCQkJCX0KCgkJCQkvLyBHZXQgZG9jdW1lbnQgd2lkdGggb3IgaGVpZ2h0CgkJCQlpZiAoIGVsZW0ubm9kZVR5cGUgPT09IDkgKSB7CgkJCQkJZG9jID0gZWxlbS5kb2N1bWVudEVsZW1lbnQ7CgoJCQkJCS8vIEVpdGhlciBzY3JvbGxbV2lkdGgvSGVpZ2h0XSBvciBvZmZzZXRbV2lkdGgvSGVpZ2h0XSBvciBjbGllbnRbV2lkdGgvSGVpZ2h0XSwKCQkJCQkvLyB3aGljaGV2ZXIgaXMgZ3JlYXRlc3QKCQkJCQlyZXR1cm4gTWF0aC5tYXgoCgkJCQkJCWVsZW0uYm9keVsgInNjcm9sbCIgKyBuYW1lIF0sIGRvY1sgInNjcm9sbCIgKyBuYW1lIF0sCgkJCQkJCWVsZW0uYm9keVsgIm9mZnNldCIgKyBuYW1lIF0sIGRvY1sgIm9mZnNldCIgKyBuYW1lIF0sCgkJCQkJCWRvY1sgImNsaWVudCIgKyBuYW1lIF0KCQkJCQkpOwoJCQkJfQoKCQkJCXJldHVybiB2YWx1ZSA9PT0gdW5kZWZpbmVkID8KCgkJCQkJLy8gR2V0IHdpZHRoIG9yIGhlaWdodCBvbiB0aGUgZWxlbWVudCwgcmVxdWVzdGluZyBidXQgbm90IGZvcmNpbmcgcGFyc2VGbG9hdAoJCQkJCWpRdWVyeS5jc3MoIGVsZW0sIHR5cGUsIGV4dHJhICkgOgoKCQkJCQkvLyBTZXQgd2lkdGggb3IgaGVpZ2h0IG9uIHRoZSBlbGVtZW50CgkJCQkJalF1ZXJ5LnN0eWxlKCBlbGVtLCB0eXBlLCB2YWx1ZSwgZXh0cmEgKTsKCQkJfSwgdHlwZSwgY2hhaW5hYmxlID8gbWFyZ2luIDogdW5kZWZpbmVkLCBjaGFpbmFibGUgKTsKCQl9OwoJfSApOwp9ICk7CgoKalF1ZXJ5LmZuLmV4dGVuZCggewoKCWJpbmQ6IGZ1bmN0aW9uKCB0eXBlcywgZGF0YSwgZm4gKSB7CgkJcmV0dXJuIHRoaXMub24oIHR5cGVzLCBudWxsLCBkYXRhLCBmbiApOwoJfSwKCXVuYmluZDogZnVuY3Rpb24oIHR5cGVzLCBmbiApIHsKCQlyZXR1cm4gdGhpcy5vZmYoIHR5cGVzLCBudWxsLCBmbiApOwoJfSwKCglkZWxlZ2F0ZTogZnVuY3Rpb24oIHNlbGVjdG9yLCB0eXBlcywgZGF0YSwgZm4gKSB7CgkJcmV0dXJuIHRoaXMub24oIHR5cGVzLCBzZWxlY3RvciwgZGF0YSwgZm4gKTsKCX0sCgl1bmRlbGVnYXRlOiBmdW5jdGlvbiggc2VsZWN0b3IsIHR5cGVzLCBmbiApIHsKCgkJLy8gKCBuYW1lc3BhY2UgKSBvciAoIHNlbGVjdG9yLCB0eXBlcyBbLCBmbl0gKQoJCXJldHVybiBhcmd1bWVudHMubGVuZ3RoID09PSAxID8KCQkJdGhpcy5vZmYoIHNlbGVjdG9yLCAiKioiICkgOgoJCQl0aGlzLm9mZiggdHlwZXMsIHNlbGVjdG9yIHx8ICIqKiIsIGZuICk7Cgl9Cn0gKTsKCmpRdWVyeS5wYXJzZUpTT04gPSBKU09OLnBhcnNlOwoKCgoKLy8gUmVnaXN0ZXIgYXMgYSBuYW1lZCBBTUQgbW9kdWxlLCBzaW5jZSBqUXVlcnkgY2FuIGJlIGNvbmNhdGVuYXRlZCB3aXRoIG90aGVyCi8vIGZpbGVzIHRoYXQgbWF5IHVzZSBkZWZpbmUsIGJ1dCBub3QgdmlhIGEgcHJvcGVyIGNvbmNhdGVuYXRpb24gc2NyaXB0IHRoYXQKLy8gdW5kZXJzdGFuZHMgYW5vbnltb3VzIEFNRCBtb2R1bGVzLiBBIG5hbWVkIEFNRCBpcyBzYWZlc3QgYW5kIG1vc3Qgcm9idXN0Ci8vIHdheSB0byByZWdpc3Rlci4gTG93ZXJjYXNlIGpxdWVyeSBpcyB1c2VkIGJlY2F1c2UgQU1EIG1vZHVsZSBuYW1lcyBhcmUKLy8gZGVyaXZlZCBmcm9tIGZpbGUgbmFtZXMsIGFuZCBqUXVlcnkgaXMgbm9ybWFsbHkgZGVsaXZlcmVkIGluIGEgbG93ZXJjYXNlCi8vIGZpbGUgbmFtZS4gRG8gdGhpcyBhZnRlciBjcmVhdGluZyB0aGUgZ2xvYmFsIHNvIHRoYXQgaWYgYW4gQU1EIG1vZHVsZSB3YW50cwovLyB0byBjYWxsIG5vQ29uZmxpY3QgdG8gaGlkZSB0aGlzIHZlcnNpb24gb2YgalF1ZXJ5LCBpdCB3aWxsIHdvcmsuCgovLyBOb3RlIHRoYXQgZm9yIG1heGltdW0gcG9ydGFiaWxpdHksIGxpYnJhcmllcyB0aGF0IGFyZSBub3QgalF1ZXJ5IHNob3VsZAovLyBkZWNsYXJlIHRoZW1zZWx2ZXMgYXMgYW5vbnltb3VzIG1vZHVsZXMsIGFuZCBhdm9pZCBzZXR0aW5nIGEgZ2xvYmFsIGlmIGFuCi8vIEFNRCBsb2FkZXIgaXMgcHJlc2VudC4galF1ZXJ5IGlzIGEgc3BlY2lhbCBjYXNlLiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlCi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9qcmJ1cmtlL3JlcXVpcmVqcy93aWtpL1VwZGF0aW5nLWV4aXN0aW5nLWxpYnJhcmllcyN3aWtpLWFub24KCmlmICggdHlwZW9mIGRlZmluZSA9PT0gImZ1bmN0aW9uIiAmJiBkZWZpbmUuYW1kICkgewoJZGVmaW5lKCAianF1ZXJ5IiwgW10sIGZ1bmN0aW9uKCkgewoJCXJldHVybiBqUXVlcnk7Cgl9ICk7Cn0KCgoKCnZhcgoKCS8vIE1hcCBvdmVyIGpRdWVyeSBpbiBjYXNlIG9mIG92ZXJ3cml0ZQoJX2pRdWVyeSA9IHdpbmRvdy5qUXVlcnksCgoJLy8gTWFwIG92ZXIgdGhlICQgaW4gY2FzZSBvZiBvdmVyd3JpdGUKCV8kID0gd2luZG93LiQ7CgpqUXVlcnkubm9Db25mbGljdCA9IGZ1bmN0aW9uKCBkZWVwICkgewoJaWYgKCB3aW5kb3cuJCA9PT0galF1ZXJ5ICkgewoJCXdpbmRvdy4kID0gXyQ7Cgl9CgoJaWYgKCBkZWVwICYmIHdpbmRvdy5qUXVlcnkgPT09IGpRdWVyeSApIHsKCQl3aW5kb3cualF1ZXJ5ID0gX2pRdWVyeTsKCX0KCglyZXR1cm4galF1ZXJ5Owp9OwoKLy8gRXhwb3NlIGpRdWVyeSBhbmQgJCBpZGVudGlmaWVycywgZXZlbiBpbiBBTUQKLy8gKCM3MTAyI2NvbW1lbnQ6MTAsIGh0dHBzOi8vZ2l0aHViLmNvbS9qcXVlcnkvanF1ZXJ5L3B1bGwvNTU3KQovLyBhbmQgQ29tbW9uSlMgZm9yIGJyb3dzZXIgZW11bGF0b3JzICgjMTM1NjYpCmlmICggIW5vR2xvYmFsICkgewoJd2luZG93LmpRdWVyeSA9IHdpbmRvdy4kID0galF1ZXJ5Owp9CgoKCgoKcmV0dXJuIGpRdWVyeTsKfSApOwo="}},"time_used":118,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":118,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/demo/arrow-call.svg","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/demo/index.html","date":"2026-07-27T04:24:16.857Z","timestamp":1785126256857,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /demo/arrow-call.svg HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/demo/index.html\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/svg+xml\r\ncontent-length: 761\r\nx-accel-version: 0.01\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"2f9-6071c9ab07c00\"\r\naccept-ranges: bytes\r\nx-powered-by: PleskLin\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":761,"size_decoded":1040,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"fdf35395df443e4a565ecc7338e717f3","sha1":"a1c9c2200e27def304711ae7a233149a36de32d6","sha256":"cfd565708d5a0a18c6376a0601e82158a21f6a5991244eba7cc9098cf9d5b39a","sha512":"8fe36644c5d71492543c3e0ca8d2ec262b9ba3811f56bbc80426dee83b8537a29ab689d20f5f89b0fdedd0c8d49d92f1d931dd328c7fc8425fe23c47de9e50a8","ssdeep":"","tlshash":"7501d07b43b4023458490b6c9e6461dc337097667230c1d87b9e2915df02993207127b","first_seen":"2023-05-30T11:35:28Z","last_seen":"2026-07-27T07:19:51.016635Z","times_seen":109,"resource_available":false,"data":"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzNSIgaGVpZ2h0PSIyOCIgdmlld0JveD0iMCAwIDM1IDI4Ij4KICA8ZGVmcz4KICAgIDxzdHlsZT4KICAgICAgLmNscy0xIHsKICAgICAgICBmaWxsOiAjZmZmOwogICAgICAgIGZpbGwtcnVsZTogZXZlbm9kZDsKICAgICAgfQogICAgPC9zdHlsZT4KICA8L2RlZnM+CiAgPHBhdGggY2xhc3M9ImNscy0xIiBkPSJNMTMuOTQ4LDE0LjdMNC4zMzYsMjUuNDE0YTIuNTA5LDIuNTA5LDAsMCwxLTMuNTA1LjIxMywyLjQxOSwyLjQxOSwwLDAsMS0uMjE4LTMuNDVMMTIuMTI5LDkuMzQ2YTIuNDU5LDIuNDU5LDAsMCwxLDEuODg5LS44MjUsMi41LDIuNSwwLDAsMSwxLjg3Ljg2NWwzLjMyMywzLjg3Myw2LjEwNy03LjNMMTkuNiwxLjEzMywzMy44NCwwLDM1LDE0LjE1bC01LjkyLTVMMjEuMTUyLDE4LjYzYTIuNSwyLjUsMCwwLDEtMS45Ljg4OCwyLjQ2NCwyLjQ2NCwwLDAsMS0xLjkxMi0uODY3Wk02LDI4LjAxNGg4LjAxMVYxOUw2LDI3LjU1NnYwLjQ1OFptMTUuNzU5LTYuMjMzQTMuOTgzLDMuOTgzLDAsMCwxLDE5LjYzLDIyLjk0Yy0xLjA3NC4xODQtMi43NDYtLjk4Mi0zLjYtMS42MDlMMTYuMDExLDI3Ljk5LDI1LDI4bDAuMDExLTEwLjAwNkEzOC43MDcsMzguNzA3LDAsMCwxLDIxLjc1OSwyMS43ODFabTcuMi04Ljc3Mi0xLjk1NCwyLjRWMjhoNy45OGwtMC4wMzMtMTAuNDJDMzMuMzEzLDE2LjIyLDI4Ljk2LDEzLjAwOSwyOC45NiwxMy4wMDlaIi8+Cjwvc3ZnPgo="}},"time_used":356,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":356,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/49518.081f9637b94ee62a6e6f.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.297Z","timestamp":1785126257297,"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-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/49518.081f9637b94ee62a6e6f.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/crypto-mkt-screener/?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 04:24:17 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-14e9\"\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:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: f5b1bfa3a14229088d7d75510ad934b5\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":5353,"size_decoded":1929,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (5353), with no line terminators","md5":"d7a9f60b8ae2b7f3ca613c9e5b32c1be","sha1":"96edacc2eaf0e2cf90be1c863bcdf71fce951db7","sha256":"62105e79933d1412be7816bc118e665a99e90c3d846b5e3282d35372ec43018a","sha512":"be8a4d2d71a8547c7dd2aa502370f205f86911c5def4816629a2da7cd82f3786e92dd78ecc49e89a9af136891ed67fb875ef4fcddcc07ccc31b5f51d430f4da3","ssdeep":"48:DVGIKVGI0GIKZGIpGIoVGIRGIqGIuGIjVGI0QVGIZGITZGI0LGI06GIHGI8GI/G7:D81CWQbawWxrGn5W+orw57Ur6Mpk98","tlshash":"12b1f676e8201aa675ba5a192380fad45034d022bf219ffff3c568168dcf1c6789381d","first_seen":"2026-03-24T10:46:27.490841Z","last_seen":"2026-07-27T07:05:43.322988Z","times_seen":1449,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtNmFuTTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLV8xLTZhbk06dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1fMi02YW5NOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tXzMtNmFuTTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLV80LTZhbk06dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1fNS02YW5NOnZhcigtLWNvbG9yLXdoaXRlKTstLV82LTZhbk06dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1fNy02YW5NOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03MDApOy0tXzgtNmFuTTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKTstLV85LTZhbk06dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCl9W2RhdGEtdGhlbWU9ZGFya117LS1fMC02YW5NOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tXzEtNmFuTTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLV8yLTZhbk06dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1fMy02YW5NOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tXzQtNmFuTTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKTstLV81LTZhbk06dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7LS1fNi02YW5NOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tXzctNmFuTTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLV84LTZhbk06dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7LS1fOS02YW5NOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApfS50di1jb250cm9sLWNoZWNrYm94ey13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudH0udHYtY29udHJvbC1jaGVja2JveC0taW4tYWN0aW9uc3ttYXgtd2lkdGg6NTAlfUBtZWRpYSAobWF4LXdpZHRoOjQ3OXB4KXsudHYtY29udHJvbC1jaGVja2JveC0taW4tYWN0aW9uc3ttYXgtd2lkdGg6bm9uZX19LnR2LWNvbnRyb2wtY2hlY2tib3gsLnR2LWNvbnRyb2wtY2hlY2tib3hfX2xhYmVse2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0udHYtY29udHJvbC1jaGVja2JveC0tbm93cmFwLC50di1jb250cm9sLWNoZWNrYm94X19sYWJlbC0tbm93cmFwe3doaXRlLXNwYWNlOm5vd3JhcH0udHYtY29udHJvbC1jaGVja2JveF9faW5wdXR7aGVpZ2h0OjE4cHg7aW5zZXQtaW5saW5lLXN0YXJ0OjA7b3BhY2l0eTowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3dpZHRoOjE4cHh9LnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveHtib3JkZXItcmFkaXVzOjNweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTpibG9jaztoZWlnaHQ6MThweDtsaW5lLWhlaWdodDoxO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4zNXMgZWFzZTt3aWR0aDoxOHB4fS50di1jb250cm9sLWNoZWNrYm94X19ib3g6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6aW5pdGlhbDtib3JkZXItcmFkaXVzOjNweDtpbnNldC1pbmxpbmUtc3RhcnQ6NTAlO21hcmdpbi10b3A6LTlweDttYXJnaW4taW5saW5lLXN0YXJ0Oi05cHg7dG9wOjUwJTt0cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjM1cyBlYXNlLGJhY2tncm91bmQtY29sb3IgLjM1cyBlYXNlLGJvcmRlci1yYWRpdXMgLjM1cyBlYXNlfS50di1jb250cm9sLWNoZWNrYm94X19ib3g6YWZ0ZXIsLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveDpiZWZvcmV7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxOHB4O3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjE4cHh9LnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveDphZnRlcntib3JkZXItY29sb3I6dmFyKC0tXzAtNmFuTSk7Ym9yZGVyLXJhZGl1czozcHg7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDoxcHg7Ym94LXNpemluZzpib3JkZXItYm94O2luc2V0LWlubGluZS1zdGFydDowO3RvcDowO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4zNXMgZWFzZX0udHYtY29udHJvbC1jaGVja2JveF9fYm94IHN2Z3tkaXNwbGF5OmJsb2NrO2hlaWdodDoxMnB4O2luc2V0LWlubGluZS1zdGFydDo1MCU7bWFyZ2luLXRvcDotNnB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6LTZweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3dpZHRoOjEycHg7c3Ryb2tlOiMwMDAwO3RyYW5zZm9ybTpzY2FsZSgwKTt0cmFuc2l0aW9uOnN0cm9rZSAuMzVzIGVhc2UgMW1zLHRyYW5zZm9ybSAuMzVzIGVhc2UgMW1zfS50di1jb250cm9sLWNoZWNrYm94X19sYWJlbHttYXJnaW4taW5saW5lLWVuZDoxMHB4O3doaXRlLXNwYWNlOm5vcm1hbH0udHYtY29udHJvbC1jaGVja2JveF9fbGFiZWwtLXR3by1saW5lc3t3aWR0aDoxNTVweH0udHYtY29udHJvbC1jaGVja2JveF9fbGFiZWwtLW5vd3JhcHt3aGl0ZS1zcGFjZTpub3dyYXB9LnR2LWNvbnRyb2wtY2hlY2tib3hfX2xhYmVsLS1saWwtbGluZS1oZWlnaHR7bGluZS1oZWlnaHQ6MTZweDttYXgtd2lkdGg6ODAlO21pbi13aWR0aDo0NSV9LnR2LWNvbnRyb2wtY2hlY2tib3hfX2xhYmVsKy50di1jb250cm9sLWNoZWNrYm94e21hcmdpbi1pbmxpbmUtc3RhcnQ6MH0udHYtY29udHJvbC1jaGVja2JveCsudHYtY29udHJvbC1jaGVja2JveF9fbGFiZWx7bWFyZ2luLWlubGluZS1lbmQ6MDttYXJnaW4taW5saW5lLXN0YXJ0OjEwcHg7bWF4LXdpZHRoOmNhbGMoMTAwJSAtIDFleCAtIDI4cHgpfS50di1jb250cm9sLWNoZWNrYm94OmFjdGl2ZSAudHYtY29udHJvbC1jaGVja2JveF9fYm94LC50di1jb250cm9sLWNoZWNrYm94X19pbnB1dDpmb2N1cysudHYtY29udHJvbC1jaGVja2JveF9fYm94e3dpbGwtY2hhbmdlOmJhY2tncm91bmQtY29sb3J9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1jb250cm9sLWNoZWNrYm94OmhvdmVyIC50di1jb250cm9sLWNoZWNrYm94X19ib3h7d2lsbC1jaGFuZ2U6YmFja2dyb3VuZC1jb2xvcn19LnR2LWNvbnRyb2wtY2hlY2tib3g6YWN0aXZlIC50di1jb250cm9sLWNoZWNrYm94X19ib3g6YmVmb3JlLC50di1jb250cm9sLWNoZWNrYm94X19pbnB1dDpmb2N1cysudHYtY29udHJvbC1jaGVja2JveF9fYm94OmJlZm9yZXt3aWxsLWNoYW5nZTp0cmFuc2Zvcm0sYm9yZGVyLXJhZGl1c31AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWNvbnRyb2wtY2hlY2tib3g6aG92ZXIgLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveDpiZWZvcmV7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtLGJvcmRlci1yYWRpdXN9fS50di1jb250cm9sLWNoZWNrYm94OmFjdGl2ZSAudHYtY29udHJvbC1jaGVja2JveF9fYm94OmFmdGVyLC50di1jb250cm9sLWNoZWNrYm94X19pbnB1dDpmb2N1cysudHYtY29udHJvbC1jaGVja2JveF9fYm94OmFmdGVye3dpbGwtY2hhbmdlOmJvcmRlci1jb2xvcn1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWNvbnRyb2wtY2hlY2tib3g6aG92ZXIgLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveDphZnRlcntib3JkZXItY29sb3I6dmFyKC0tXzEtNmFuTSk7d2lsbC1jaGFuZ2U6Ym9yZGVyLWNvbG9yfX0udHYtY29udHJvbC1jaGVja2JveDphY3RpdmUgLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveDphZnRlciwudHYtY29udHJvbC1jaGVja2JveF9faW5wdXQ6Zm9jdXMrLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveDphZnRlcntib3JkZXItY29sb3I6dmFyKC0tXzItNmFuTSl9LnR2LWNvbnRyb2wtY2hlY2tib3hfX2lucHV0OmNoZWNrZWQrLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8zLTZhbk0pfS50di1jb250cm9sLWNoZWNrYm94X19pbnB1dDpjaGVja2VkKy50di1jb250cm9sLWNoZWNrYm94X19ib3gsLnR2LWNvbnRyb2wtY2hlY2tib3hfX2lucHV0OmNoZWNrZWQrLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveDphZnRlciwudHYtY29udHJvbC1jaGVja2JveF9faW5wdXQ6Y2hlY2tlZCsudHYtY29udHJvbC1jaGVja2JveF9fYm94OmJlZm9yZXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjIxNSwuNjEsLjM1NSwxKX0udHYtY29udHJvbC1jaGVja2JveF9faW5wdXQ6Y2hlY2tlZCsudHYtY29udHJvbC1jaGVja2JveF9fYm94OmJlZm9yZXtib3JkZXItcmFkaXVzOjUwJTt0cmFuc2Zvcm06c2NhbGUoMCl9LnR2LWNvbnRyb2wtY2hlY2tib3hfX2lucHV0OmNoZWNrZWQrLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveDphZnRlcntib3JkZXItY29sb3I6dmFyKC0tXzQtNmFuTSl9LnR2LWNvbnRyb2wtY2hlY2tib3hfX2lucHV0OmNoZWNrZWQrLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveCBzdmd7c3Ryb2tlOnZhcigtLV81LTZhbk0pO3RyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2l0aW9uLWRlbGF5Ojg3LjVtczt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjIxNSwuNjEsLjM1NSwxKTt3aWxsLWNoYW5nZTpzdHJva2UsdHJhbnNmb3JtfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtY29udHJvbC1jaGVja2JveDpob3ZlciAudHYtY29udHJvbC1jaGVja2JveF9faW5wdXQ6Y2hlY2tlZCsudHYtY29udHJvbC1jaGVja2JveF9fYm94e2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzYtNmFuTSl9LnR2LWNvbnRyb2wtY2hlY2tib3g6aG92ZXIgLnR2LWNvbnRyb2wtY2hlY2tib3hfX2lucHV0OmNoZWNrZWQrLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveDphZnRlcntib3JkZXItY29sb3I6dmFyKC0tXzctNmFuTSl9fS50di1jb250cm9sLWNoZWNrYm94OmFjdGl2ZSAudHYtY29udHJvbC1jaGVja2JveF9faW5wdXQ6Y2hlY2tlZCsudHYtY29udHJvbC1jaGVja2JveF9fYm94LC50di1jb250cm9sLWNoZWNrYm94X19pbnB1dDpmb2N1cy12aXNpYmxlOmNoZWNrZWQrLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV84LTZhbk0pfS50di1jb250cm9sLWNoZWNrYm94OmFjdGl2ZSAudHYtY29udHJvbC1jaGVja2JveF9faW5wdXQ6Y2hlY2tlZCsudHYtY29udHJvbC1jaGVja2JveF9fYm94OmFmdGVyLC50di1jb250cm9sLWNoZWNrYm94X19pbnB1dDpmb2N1cy12aXNpYmxlOmNoZWNrZWQrLnR2LWNvbnRyb2wtY2hlY2tib3hfX2JveDphZnRlcntib3JkZXItY29sb3I6dmFyKC0tXzktNmFuTSl9LnR2LWNvbnRyb2wtY2hlY2tib3hfX2lucHV0W2Rpc2FibGVkXSsudHYtY29udHJvbC1jaGVja2JveF9fYm94e29wYWNpdHk6LjV9LnR2LWNvbnRyb2wtY2hlY2tib3guaS1lcnJvciAudHYtY29udHJvbC1jaGVja2JveF9fYm94OmFmdGVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApfQ=="}},"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.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.99","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/Gc2en3nHxA4","date":"2026-07-27T04:24:17.822Z","timestamp":1785126257822,"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 /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/2 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, 20 Jul 2026 10:01:47 GMT\r\nexpires: Tue, 20 Jul 2027 10:01:47 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: 584550\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":478,"size_decoded":1017,"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-27T07:05:42.965561Z","times_seen":46980,"resource_available":false,"data":"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2NyA2MCIgZmlsbD0iIj48cGF0aCBkPSJNNjMgMTQuODdhNy44ODUgNy44ODUgMCAwMC01LjU2LTUuNTZDNTIuNTQgOCAzMi44OCA4IDMyLjg4IDhTMTMuMjMgOCA4LjMyIDkuMzFjLTIuNy43Mi00LjgzIDIuODUtNS41NiA1LjU2QzEuNDUgMTkuNzcgMS40NSAzMCAxLjQ1IDMwczAgMTAuMjMgMS4zMSAxNS4xM2MuNzIgMi43IDIuODUgNC44MyA1LjU2IDUuNTZDMTMuMjMgNTIgMzIuODggNTIgMzIuODggNTJzMTkuNjYgMCAyNC41Ni0xLjMxYzIuNy0uNzIgNC44My0yLjg1IDUuNTYtNS41NkM2NC4zMSA0MC4yMyA2NC4zMSAzMCA2NC4zMSAzMHMwLTEwLjIzLTEuMzEtMTUuMTN6Ij48L3BhdGg+PHBhdGggZmlsbD0iI0ZGRiIgY2xhc3M9ImxvZ28tYXJyb3ciIGQ9Ik0yNi42IDM5LjQzTDQyLjkzIDMwIDI2LjYgMjAuNTd6Ij48L3BhdGg+PC9zdmc+Cg=="}},"time_used":64,"timings":{"blocked":-1,"dns":2,"connect":16,"send":0,"wait":16,"receive":0,"ssl":30},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/noti/fakeanimate.css","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.038Z","timestamp":1785126256038,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /noti/fakeanimate.css HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: text/css\r\nlast-modified: Sat, 07 Oct 2023 09:01:37 GMT\r\netag: W/\"65211e71-4242\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":16962,"size_decoded":2703,"mime_type":"text/css","magic":"ASCII text, with very long lines (16755), with CRLF line terminators","md5":"eab7261f4b1791d54131f5bb80d243e5","sha1":"1e6d01f7ab2987cb29f8e11f2fbae31f2e4ad8c8","sha256":"eaf5aea140f3e48516c27cd9c4a1b49b1cac780055ca2eaed084fcd75eb07e58","sha512":"f3b623f075b2d0586e7b53afb18f4e72a1a15c7a62bd06e6d801294ae4d23f874cd0aad077fe5c6e573eca57d1a7a34570f8214eab6744c0af8fc071842049ce","ssdeep":"192:uRq6Vn0u6SBWTRNS3DW5WfW4vLYz3i6PSz/hQQHL:uE6VHTgH4vLYz3i6PSbhTr","tlshash":"45725d4c4e50105941a60773dac89fac863dcbdb68722cef3396588f4b457ee23ea617","first_seen":"2023-04-07T08:25:33Z","last_seen":"2026-07-27T06:47:12.145956Z","times_seen":2956,"resource_available":false,"data":"QGNoYXJzZXQgIlVURi04IjsNCg0KLyohDQogKiBhbmltYXRlLmNzcyAtaHR0cDovL2RhbmVkZW4ubWUvYW5pbWF0ZQ0KICogVmVyc2lvbiAtIDMuNS4yDQogKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UgLSBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUDQogKg0KICogQ29weXJpZ2h0IChjKSAyMDE3IERhbmllbCBFZGVuDQogKi8NCg0KLmFuaW1hdGVke2FuaW1hdGlvbi1kdXJhdGlvbjoxczthbmltYXRpb24tZmlsbC1tb2RlOmJvdGh9LmFuaW1hdGVkLmluZmluaXRle2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6aW5maW5pdGV9LmFuaW1hdGVkLmhpbmdle2FuaW1hdGlvbi1kdXJhdGlvbjoyc30uYW5pbWF0ZWQuYm91bmNlSW4sLmFuaW1hdGVkLmJvdW5jZU91dCwuYW5pbWF0ZWQuZmxpcE91dFgsLmFuaW1hdGVkLmZsaXBPdXRZe2FuaW1hdGlvbi1kdXJhdGlvbjouNzVzfUBrZXlmcmFtZXMgYm91bmNlezAlLDIwJSw1MyUsODAlLHRve2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9NDAlLDQzJXthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNzU1LC4wNSwuODU1LC4wNik7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTMwcHgsMCl9NzAle2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC43NTUsLjA1LC44NTUsLjA2KTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTVweCwwKX05MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTRweCwwKX19LmJvdW5jZXthbmltYXRpb24tbmFtZTpib3VuY2U7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXIgYm90dG9tfUBrZXlmcmFtZXMgZmxhc2h7MCUsNTAlLHRve29wYWNpdHk6MX0yNSUsNzUle29wYWNpdHk6MH19LmZsYXNoe2FuaW1hdGlvbi1uYW1lOmZsYXNofUBrZXlmcmFtZXMgcHVsc2V7MCV7dHJhbnNmb3JtOnNjYWxlWCgxKX01MCV7dHJhbnNmb3JtOnNjYWxlM2QoMS4wNSwxLjA1LDEuMDUpfXRve3RyYW5zZm9ybTpzY2FsZVgoMSl9fS5wdWxzZXthbmltYXRpb24tbmFtZTpwdWxzZX1Aa2V5ZnJhbWVzIHJ1YmJlckJhbmR7MCV7dHJhbnNmb3JtOnNjYWxlWCgxKX0zMCV7dHJhbnNmb3JtOnNjYWxlM2QoMS4yNSwuNzUsMSl9NDAle3RyYW5zZm9ybTpzY2FsZTNkKC43NSwxLjI1LDEpfTUwJXt0cmFuc2Zvcm06c2NhbGUzZCgxLjE1LC44NSwxKX02NSV7dHJhbnNmb3JtOnNjYWxlM2QoLjk1LDEuMDUsMSl9NzUle3RyYW5zZm9ybTpzY2FsZTNkKDEuMDUsLjk1LDEpfXRve3RyYW5zZm9ybTpzY2FsZVgoMSl9fS5ydWJiZXJCYW5ke2FuaW1hdGlvbi1uYW1lOnJ1YmJlckJhbmR9QGtleWZyYW1lcyBzaGFrZXswJSx0b3t0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX0xMCUsMzAlLDUwJSw3MCUsOTAle3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTBweCwwLDApfTIwJSw0MCUsNjAlLDgwJXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTBweCwwLDApfX0uc2hha2V7YW5pbWF0aW9uLW5hbWU6c2hha2V9QGtleWZyYW1lcyBoZWFkU2hha2V7MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCl9Ni41JXt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNnB4KSByb3RhdGVZKC05ZGVnKX0xOC41JXt0cmFuc2Zvcm06dHJhbnNsYXRlWCg1cHgpIHJvdGF0ZVkoN2RlZyl9MzEuNSV7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTNweCkgcm90YXRlWSgtNWRlZyl9NDMuNSV7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMnB4KSByb3RhdGVZKDNkZWcpfTUwJXt0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKX19LmhlYWRTaGFrZXthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW4tb3V0O2FuaW1hdGlvbi1uYW1lOmhlYWRTaGFrZX1Aa2V5ZnJhbWVzIHN3aW5nezIwJXt0cmFuc2Zvcm06cm90YXRlKDE1ZGVnKX00MCV7dHJhbnNmb3JtOnJvdGF0ZSgtMTBkZWcpfTYwJXt0cmFuc2Zvcm06cm90YXRlKDVkZWcpfTgwJXt0cmFuc2Zvcm06cm90YXRlKC01ZGVnKX10b3t0cmFuc2Zvcm06cm90YXRlKDBkZWcpfX0uc3dpbmd7dHJhbnNmb3JtLW9yaWdpbjp0b3AgY2VudGVyO2FuaW1hdGlvbi1uYW1lOnN3aW5nfUBrZXlmcmFtZXMgdGFkYXswJXt0cmFuc2Zvcm06c2NhbGVYKDEpfTEwJSwyMCV7dHJhbnNmb3JtOnNjYWxlM2QoLjksLjksLjkpIHJvdGF0ZSgtM2RlZyl9MzAlLDUwJSw3MCUsOTAle3RyYW5zZm9ybTpzY2FsZTNkKDEuMSwxLjEsMS4xKSByb3RhdGUoM2RlZyl9NDAlLDYwJSw4MCV7dHJhbnNmb3JtOnNjYWxlM2QoMS4xLDEuMSwxLjEpIHJvdGF0ZSgtM2RlZyl9dG97dHJhbnNmb3JtOnNjYWxlWCgxKX19LnRhZGF7YW5pbWF0aW9uLW5hbWU6dGFkYX1Aa2V5ZnJhbWVzIHdvYmJsZXswJXt0cmFuc2Zvcm06bm9uZX0xNSV7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0yNSUsMCwwKSByb3RhdGUoLTVkZWcpfTMwJXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMjAlLDAsMCkgcm90YXRlKDNkZWcpfTQ1JXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTE1JSwwLDApIHJvdGF0ZSgtM2RlZyl9NjAle3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMCUsMCwwKSByb3RhdGUoMmRlZyl9NzUle3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtNSUsMCwwKSByb3RhdGUoLTFkZWcpfXRve3RyYW5zZm9ybTpub25lfX0ud29iYmxle2FuaW1hdGlvbi1uYW1lOndvYmJsZX1Aa2V5ZnJhbWVzIGplbGxvezAlLDExLjElLHRve3RyYW5zZm9ybTpub25lfTIyLjIle3RyYW5zZm9ybTpza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpfTMzLjMle3RyYW5zZm9ybTpza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKX00NC40JXt0cmFuc2Zvcm06c2tld1goLTMuMTI1ZGVnKSBza2V3WSgtMy4xMjVkZWcpfTU1LjUle3RyYW5zZm9ybTpza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZyl9NjYuNiV7dHJhbnNmb3JtOnNrZXdYKC0uNzgxMjVkZWcpIHNrZXdZKC0uNzgxMjVkZWcpfTc3Ljcle3RyYW5zZm9ybTpza2V3WCguMzkwNjI1ZGVnKSBza2V3WSguMzkwNjI1ZGVnKX04OC44JXt0cmFuc2Zvcm06c2tld1goLS4xOTUzMTI1ZGVnKSBza2V3WSgtLjE5NTMxMjVkZWcpfX0uamVsbG97YW5pbWF0aW9uLW5hbWU6amVsbG87dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXJ9QGtleWZyYW1lcyBib3VuY2VJbnswJSwyMCUsNDAlLDYwJSw4MCUsdG97YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjIxNSwuNjEsLjM1NSwxKX0wJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlM2QoLjMsLjMsLjMpfTIwJXt0cmFuc2Zvcm06c2NhbGUzZCgxLjEsMS4xLDEuMSl9NDAle3RyYW5zZm9ybTpzY2FsZTNkKC45LC45LC45KX02MCV7b3BhY2l0eToxO3RyYW5zZm9ybTpzY2FsZTNkKDEuMDMsMS4wMywxLjAzKX04MCV7dHJhbnNmb3JtOnNjYWxlM2QoLjk3LC45NywuOTcpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06c2NhbGVYKDEpfX0uYm91bmNlSW57YW5pbWF0aW9uLW5hbWU6Ym91bmNlSW59QGtleWZyYW1lcyBib3VuY2VJbkRvd257MCUsNjAlLDc1JSw5MCUsdG97YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjIxNSwuNjEsLjM1NSwxKX0wJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTMwMDBweCwwKX02MCV7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDI1cHgsMCl9NzUle3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0xMHB4LDApfTkwJXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCw1cHgsMCl9dG97dHJhbnNmb3JtOm5vbmV9fS5ib3VuY2VJbkRvd257YW5pbWF0aW9uLW5hbWU6Ym91bmNlSW5Eb3dufUBrZXlmcmFtZXMgYm91bmNlSW5MZWZ0ezAlLDYwJSw3NSUsOTAlLHRve2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSl9MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMzAwMHB4LDAsMCl9NjAle29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMjVweCwwLDApfTc1JXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwcHgsMCwwKX05MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDVweCwwLDApfXRve3RyYW5zZm9ybTpub25lfX0uYm91bmNlSW5MZWZ0e2FuaW1hdGlvbi1uYW1lOmJvdW5jZUluTGVmdH1Aa2V5ZnJhbWVzIGJvdW5jZUluUmlnaHR7MCUsNjAlLDc1JSw5MCUsdG97YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjIxNSwuNjEsLjM1NSwxKX0wJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDMwMDBweCwwLDApfTYwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC0yNXB4LDAsMCl9NzUle3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMHB4LDAsMCl9OTAle3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtNXB4LDAsMCl9dG97dHJhbnNmb3JtOm5vbmV9fS5ib3VuY2VJblJpZ2h0e2FuaW1hdGlvbi1uYW1lOmJvdW5jZUluUmlnaHR9QGtleWZyYW1lcyBib3VuY2VJblVwezAlLDYwJSw3NSUsOTAlLHRve2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSl9MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDMwMDBweCwwKX02MCV7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC0yMHB4LDApfTc1JXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMHB4LDApfTkwJXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtNXB4LDApfXRve3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfX0uYm91bmNlSW5VcHthbmltYXRpb24tbmFtZTpib3VuY2VJblVwfUBrZXlmcmFtZXMgYm91bmNlT3V0ezIwJXt0cmFuc2Zvcm06c2NhbGUzZCguOSwuOSwuOSl9NTAlLDU1JXtvcGFjaXR5OjE7dHJhbnNmb3JtOnNjYWxlM2QoMS4xLDEuMSwxLjEpfXRve29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGUzZCguMywuMywuMyl9fS5ib3VuY2VPdXR7YW5pbWF0aW9uLW5hbWU6Ym91bmNlT3V0fUBrZXlmcmFtZXMgYm91bmNlT3V0RG93bnsyMCV7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTBweCwwKX00MCUsNDUle29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMjBweCwwKX10b3tvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMjAwMHB4LDApfX0uYm91bmNlT3V0RG93bnthbmltYXRpb24tbmFtZTpib3VuY2VPdXREb3dufUBrZXlmcmFtZXMgYm91bmNlT3V0TGVmdHsyMCV7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgyMHB4LDAsMCl9dG97b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMjAwMHB4LDAsMCl9fS5ib3VuY2VPdXRMZWZ0e2FuaW1hdGlvbi1uYW1lOmJvdW5jZU91dExlZnR9QGtleWZyYW1lcyBib3VuY2VPdXRSaWdodHsyMCV7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMjBweCwwLDApfXRve29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMjAwMHB4LDAsMCl9fS5ib3VuY2VPdXRSaWdodHthbmltYXRpb24tbmFtZTpib3VuY2VPdXRSaWdodH1Aa2V5ZnJhbWVzIGJvdW5jZU91dFVwezIwJXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTBweCwwKX00MCUsNDUle29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwyMHB4LDApfXRve29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMjAwMHB4LDApfX0uYm91bmNlT3V0VXB7YW5pbWF0aW9uLW5hbWU6Ym91bmNlT3V0VXB9QGtleWZyYW1lcyBmYWRlSW57MCV7b3BhY2l0eTowfXRve29wYWNpdHk6MX19LmZhZGVJbnthbmltYXRpb24tbmFtZTpmYWRlSW59QGtleWZyYW1lcyBmYWRlSW5Eb3duezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTAwJSwwKX10b3tvcGFjaXR5OjE7dHJhbnNmb3JtOm5vbmV9fS5mYWRlSW5Eb3due2FuaW1hdGlvbi1uYW1lOmZhZGVJbkRvd259QGtleWZyYW1lcyBmYWRlSW5Eb3duQmlnezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMjAwMHB4LDApfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06bm9uZX19LmZhZGVJbkRvd25CaWd7YW5pbWF0aW9uLW5hbWU6ZmFkZUluRG93bkJpZ31Aa2V5ZnJhbWVzIGZhZGVJbkxlZnR7MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06bm9uZX19LmZhZGVJbkxlZnR7YW5pbWF0aW9uLW5hbWU6ZmFkZUluTGVmdH1Aa2V5ZnJhbWVzIGZhZGVJbkxlZnRCaWd7MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMjAwMHB4LDAsMCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTpub25lfX0uZmFkZUluTGVmdEJpZ3thbmltYXRpb24tbmFtZTpmYWRlSW5MZWZ0QmlnfUBrZXlmcmFtZXMgZmFkZUluUmlnaHR7MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgxMDAlLDAsMCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTpub25lfX0uZmFkZUluUmlnaHR7YW5pbWF0aW9uLW5hbWU6ZmFkZUluUmlnaHR9QGtleWZyYW1lcyBmYWRlSW5SaWdodEJpZ3swJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDIwMDBweCwwLDApfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06bm9uZX19LmZhZGVJblJpZ2h0Qmlne2FuaW1hdGlvbi1uYW1lOmZhZGVJblJpZ2h0QmlnfUBrZXlmcmFtZXMgZmFkZUluVXB7MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwMCUsMCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTpub25lfX0uZmFkZUluVXB7YW5pbWF0aW9uLW5hbWU6ZmFkZUluVXB9QGtleWZyYW1lcyBmYWRlSW5VcEJpZ3swJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMjAwMHB4LDApfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06bm9uZX19LmZhZGVJblVwQmlne2FuaW1hdGlvbi1uYW1lOmZhZGVJblVwQmlnfUBrZXlmcmFtZXMgZmFkZU91dHswJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowfX0uZmFkZU91dHthbmltYXRpb24tbmFtZTpmYWRlT3V0fUBrZXlmcmFtZXMgZmFkZU91dERvd257MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwxMDAlLDApfX0uZmFkZU91dERvd257YW5pbWF0aW9uLW5hbWU6ZmFkZU91dERvd259QGtleWZyYW1lcyBmYWRlT3V0RG93bkJpZ3swJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDIwMDBweCwwKX19LmZhZGVPdXREb3duQmlne2FuaW1hdGlvbi1uYW1lOmZhZGVPdXREb3duQmlnfUBrZXlmcmFtZXMgZmFkZU91dExlZnR7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMCUsMCwwKX19LmZhZGVPdXRMZWZ0e2FuaW1hdGlvbi1uYW1lOmZhZGVPdXRMZWZ0fUBrZXlmcmFtZXMgZmFkZU91dExlZnRCaWd7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTIwMDBweCwwLDApfX0uZmFkZU91dExlZnRCaWd7YW5pbWF0aW9uLW5hbWU6ZmFkZU91dExlZnRCaWd9QGtleWZyYW1lcyBmYWRlT3V0UmlnaHR7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApfX0uZmFkZU91dFJpZ2h0e2FuaW1hdGlvbi1uYW1lOmZhZGVPdXRSaWdodH1Aa2V5ZnJhbWVzIGZhZGVPdXRSaWdodEJpZ3swJXtvcGFjaXR5OjF9dG97b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgyMDAwcHgsMCwwKX19LmZhZGVPdXRSaWdodEJpZ3thbmltYXRpb24tbmFtZTpmYWRlT3V0UmlnaHRCaWd9QGtleWZyYW1lcyBmYWRlT3V0VXB7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMTAwJSwwKX19LmZhZGVPdXRVcHthbmltYXRpb24tbmFtZTpmYWRlT3V0VXB9QGtleWZyYW1lcyBmYWRlT3V0VXBCaWd7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtMjAwMHB4LDApfX0uZmFkZU91dFVwQmlne2FuaW1hdGlvbi1uYW1lOmZhZGVPdXRVcEJpZ31Aa2V5ZnJhbWVzIGZsaXB7MCV7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC0xdHVybik7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLW91dH00MCV7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGVaKDE1MHB4KSByb3RhdGVZKC0xOTBkZWcpO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1vdXR9NTAle3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlWigxNTBweCkgcm90YXRlWSgtMTcwZGVnKTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW59ODAle3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCguOTUsLjk1LC45NSk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWlufXRve3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWlufX0uYW5pbWF0ZWQuZmxpcHstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6dmlzaWJsZTtiYWNrZmFjZS12aXNpYmlsaXR5OnZpc2libGU7YW5pbWF0aW9uLW5hbWU6ZmxpcH1Aa2V5ZnJhbWVzIGZsaXBJblh7MCV7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDkwZGVnKTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW47b3BhY2l0eTowfTQwJXt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTIwZGVnKTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW59NjAle3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgxMGRlZyk7b3BhY2l0eToxfTgwJXt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTVkZWcpfXRve3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCl9fS5mbGlwSW5Yey13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTp2aXNpYmxlIWltcG9ydGFudDtiYWNrZmFjZS12aXNpYmlsaXR5OnZpc2libGUhaW1wb3J0YW50O2FuaW1hdGlvbi1uYW1lOmZsaXBJblh9QGtleWZyYW1lcyBmbGlwSW5ZezAle3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSg5MGRlZyk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWluO29wYWNpdHk6MH00MCV7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC0yMGRlZyk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLWlufTYwJXt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMTBkZWcpO29wYWNpdHk6MX04MCV7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC01ZGVnKX10b3t0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpfX0uZmxpcEluWXstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6dmlzaWJsZSFpbXBvcnRhbnQ7YmFja2ZhY2UtdmlzaWJpbGl0eTp2aXNpYmxlIWltcG9ydGFudDthbmltYXRpb24tbmFtZTpmbGlwSW5ZfUBrZXlmcmFtZXMgZmxpcE91dFh7MCV7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KX0zMCV7dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKC0yMGRlZyk7b3BhY2l0eToxfXRve3RyYW5zZm9ybTpwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCg5MGRlZyk7b3BhY2l0eTowfX0uZmxpcE91dFh7YW5pbWF0aW9uLW5hbWU6ZmxpcE91dFg7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OnZpc2libGUhaW1wb3J0YW50O2JhY2tmYWNlLXZpc2liaWxpdHk6dmlzaWJsZSFpbXBvcnRhbnR9QGtleWZyYW1lcyBmbGlwT3V0WXswJXt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpfTMwJXt0cmFuc2Zvcm06cGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoLTE1ZGVnKTtvcGFjaXR5OjF9dG97dHJhbnNmb3JtOnBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDkwZGVnKTtvcGFjaXR5OjB9fS5mbGlwT3V0WXstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6dmlzaWJsZSFpbXBvcnRhbnQ7YmFja2ZhY2UtdmlzaWJpbGl0eTp2aXNpYmxlIWltcG9ydGFudDthbmltYXRpb24tbmFtZTpmbGlwT3V0WX1Aa2V5ZnJhbWVzIGxpZ2h0U3BlZWRJbnswJXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApIHNrZXdYKC0zMGRlZyk7b3BhY2l0eTowfTYwJXt0cmFuc2Zvcm06c2tld1goMjBkZWcpO29wYWNpdHk6MX04MCV7dHJhbnNmb3JtOnNrZXdYKC01ZGVnKTtvcGFjaXR5OjF9dG97dHJhbnNmb3JtOm5vbmU7b3BhY2l0eToxfX0ubGlnaHRTcGVlZElue2FuaW1hdGlvbi1uYW1lOmxpZ2h0U3BlZWRJbjthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2Utb3V0fUBrZXlmcmFtZXMgbGlnaHRTcGVlZE91dHswJXtvcGFjaXR5OjF9dG97dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMCUsMCwwKSBza2V3WCgzMGRlZyk7b3BhY2l0eTowfX0ubGlnaHRTcGVlZE91dHthbmltYXRpb24tbmFtZTpsaWdodFNwZWVkT3V0O2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbn1Aa2V5ZnJhbWVzIHJvdGF0ZUluezAle3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyO3RyYW5zZm9ybTpyb3RhdGUoLTIwMGRlZyk7b3BhY2l0eTowfXRve3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyO3RyYW5zZm9ybTpub25lO29wYWNpdHk6MX19LnJvdGF0ZUlue2FuaW1hdGlvbi1uYW1lOnJvdGF0ZUlufUBrZXlmcmFtZXMgcm90YXRlSW5Eb3duTGVmdHswJXt0cmFuc2Zvcm0tb3JpZ2luOmxlZnQgYm90dG9tO3RyYW5zZm9ybTpyb3RhdGUoLTQ1ZGVnKTtvcGFjaXR5OjB9dG97dHJhbnNmb3JtLW9yaWdpbjpsZWZ0IGJvdHRvbTt0cmFuc2Zvcm06bm9uZTtvcGFjaXR5OjF9fS5yb3RhdGVJbkRvd25MZWZ0e2FuaW1hdGlvbi1uYW1lOnJvdGF0ZUluRG93bkxlZnR9QGtleWZyYW1lcyByb3RhdGVJbkRvd25SaWdodHswJXt0cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0IGJvdHRvbTt0cmFuc2Zvcm06cm90YXRlKDQ1ZGVnKTtvcGFjaXR5OjB9dG97dHJhbnNmb3JtLW9yaWdpbjpyaWdodCBib3R0b207dHJhbnNmb3JtOm5vbmU7b3BhY2l0eToxfX0ucm90YXRlSW5Eb3duUmlnaHR7YW5pbWF0aW9uLW5hbWU6cm90YXRlSW5Eb3duUmlnaHR9QGtleWZyYW1lcyByb3RhdGVJblVwTGVmdHswJXt0cmFuc2Zvcm0tb3JpZ2luOmxlZnQgYm90dG9tO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpO29wYWNpdHk6MH10b3t0cmFuc2Zvcm0tb3JpZ2luOmxlZnQgYm90dG9tO3RyYW5zZm9ybTpub25lO29wYWNpdHk6MX19LnJvdGF0ZUluVXBMZWZ0e2FuaW1hdGlvbi1uYW1lOnJvdGF0ZUluVXBMZWZ0fUBrZXlmcmFtZXMgcm90YXRlSW5VcFJpZ2h0ezAle3RyYW5zZm9ybS1vcmlnaW46cmlnaHQgYm90dG9tO3RyYW5zZm9ybTpyb3RhdGUoLTkwZGVnKTtvcGFjaXR5OjB9dG97dHJhbnNmb3JtLW9yaWdpbjpyaWdodCBib3R0b207dHJhbnNmb3JtOm5vbmU7b3BhY2l0eToxfX0ucm90YXRlSW5VcFJpZ2h0e2FuaW1hdGlvbi1uYW1lOnJvdGF0ZUluVXBSaWdodH1Aa2V5ZnJhbWVzIHJvdGF0ZU91dHswJXt0cmFuc2Zvcm0tb3JpZ2luOmNlbnRlcjtvcGFjaXR5OjF9dG97dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXI7dHJhbnNmb3JtOnJvdGF0ZSgyMDBkZWcpO29wYWNpdHk6MH19LnJvdGF0ZU91dHthbmltYXRpb24tbmFtZTpyb3RhdGVPdXR9QGtleWZyYW1lcyByb3RhdGVPdXREb3duTGVmdHswJXt0cmFuc2Zvcm0tb3JpZ2luOmxlZnQgYm90dG9tO29wYWNpdHk6MX10b3t0cmFuc2Zvcm0tb3JpZ2luOmxlZnQgYm90dG9tO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpO29wYWNpdHk6MH19LnJvdGF0ZU91dERvd25MZWZ0e2FuaW1hdGlvbi1uYW1lOnJvdGF0ZU91dERvd25MZWZ0fUBrZXlmcmFtZXMgcm90YXRlT3V0RG93blJpZ2h0ezAle3RyYW5zZm9ybS1vcmlnaW46cmlnaHQgYm90dG9tO29wYWNpdHk6MX10b3t0cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0IGJvdHRvbTt0cmFuc2Zvcm06cm90YXRlKC00NWRlZyk7b3BhY2l0eTowfX0ucm90YXRlT3V0RG93blJpZ2h0e2FuaW1hdGlvbi1uYW1lOnJvdGF0ZU91dERvd25SaWdodH1Aa2V5ZnJhbWVzIHJvdGF0ZU91dFVwTGVmdHswJXt0cmFuc2Zvcm0tb3JpZ2luOmxlZnQgYm90dG9tO29wYWNpdHk6MX10b3t0cmFuc2Zvcm0tb3JpZ2luOmxlZnQgYm90dG9tO3RyYW5zZm9ybTpyb3RhdGUoLTQ1ZGVnKTtvcGFjaXR5OjB9fS5yb3RhdGVPdXRVcExlZnR7YW5pbWF0aW9uLW5hbWU6cm90YXRlT3V0VXBMZWZ0fUBrZXlmcmFtZXMgcm90YXRlT3V0VXBSaWdodHswJXt0cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0IGJvdHRvbTtvcGFjaXR5OjF9dG97dHJhbnNmb3JtLW9yaWdpbjpyaWdodCBib3R0b207dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyk7b3BhY2l0eTowfX0ucm90YXRlT3V0VXBSaWdodHthbmltYXRpb24tbmFtZTpyb3RhdGVPdXRVcFJpZ2h0fUBrZXlmcmFtZXMgaGluZ2V7MCV7dHJhbnNmb3JtLW9yaWdpbjp0b3AgbGVmdDthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW4tb3V0fTIwJSw2MCV7dHJhbnNmb3JtOnJvdGF0ZSg4MGRlZyk7dHJhbnNmb3JtLW9yaWdpbjp0b3AgbGVmdDthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW4tb3V0fTQwJSw4MCV7dHJhbnNmb3JtOnJvdGF0ZSg2MGRlZyk7dHJhbnNmb3JtLW9yaWdpbjp0b3AgbGVmdDthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2UtaW4tb3V0O29wYWNpdHk6MX10b3t0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCw3MDBweCwwKTtvcGFjaXR5OjB9fS5oaW5nZXthbmltYXRpb24tbmFtZTpoaW5nZX1Aa2V5ZnJhbWVzIGphY2tJblRoZUJveHswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKC4xKSByb3RhdGUoMzBkZWcpO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyIGJvdHRvbX01MCV7dHJhbnNmb3JtOnJvdGF0ZSgtMTBkZWcpfTcwJXt0cmFuc2Zvcm06cm90YXRlKDNkZWcpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06c2NhbGUoMSl9fS5qYWNrSW5UaGVCb3h7YW5pbWF0aW9uLW5hbWU6amFja0luVGhlQm94fUBrZXlmcmFtZXMgcm9sbEluezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMCUsMCwwKSByb3RhdGUoLTEyMGRlZyl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTpub25lfX0ucm9sbElue2FuaW1hdGlvbi1uYW1lOnJvbGxJbn1Aa2V5ZnJhbWVzIHJvbGxPdXR7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApIHJvdGF0ZSgxMjBkZWcpfX0ucm9sbE91dHthbmltYXRpb24tbmFtZTpyb2xsT3V0fUBrZXlmcmFtZXMgem9vbUluezAle29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGUzZCguMywuMywuMyl9NTAle29wYWNpdHk6MX19Lnpvb21JbnthbmltYXRpb24tbmFtZTp6b29tSW59QGtleWZyYW1lcyB6b29tSW5Eb3duezAle29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGUzZCguMSwuMSwuMSkgdHJhbnNsYXRlM2QoMCwtMTAwMHB4LDApO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC41NSwuMDU1LC42NzUsLjE5KX02MCV7b3BhY2l0eToxO3RyYW5zZm9ybTpzY2FsZTNkKC40NzUsLjQ3NSwuNDc1KSB0cmFuc2xhdGUzZCgwLDYwcHgsMCk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjE3NSwuODg1LC4zMiwxKX19Lnpvb21JbkRvd257YW5pbWF0aW9uLW5hbWU6em9vbUluRG93bn1Aa2V5ZnJhbWVzIHpvb21JbkxlZnR7MCV7b3BhY2l0eTowO3RyYW5zZm9ybTpzY2FsZTNkKC4xLC4xLC4xKSB0cmFuc2xhdGUzZCgtMTAwMHB4LDAsMCk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjU1LC4wNTUsLjY3NSwuMTkpfTYwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnNjYWxlM2QoLjQ3NSwuNDc1LC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsMCwwKTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMTc1LC44ODUsLjMyLDEpfX0uem9vbUluTGVmdHthbmltYXRpb24tbmFtZTp6b29tSW5MZWZ0fUBrZXlmcmFtZXMgem9vbUluUmlnaHR7MCV7b3BhY2l0eTowO3RyYW5zZm9ybTpzY2FsZTNkKC4xLC4xLC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsMCwwKTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNTUsLjA1NSwuNjc1LC4xOSl9NjAle29wYWNpdHk6MTt0cmFuc2Zvcm06c2NhbGUzZCguNDc1LC40NzUsLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsMCwwKTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMTc1LC44ODUsLjMyLDEpfX0uem9vbUluUmlnaHR7YW5pbWF0aW9uLW5hbWU6em9vbUluUmlnaHR9QGtleWZyYW1lcyB6b29tSW5VcHswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlM2QoLjEsLjEsLjEpIHRyYW5zbGF0ZTNkKDAsMTAwMHB4LDApO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC41NSwuMDU1LC42NzUsLjE5KX02MCV7b3BhY2l0eToxO3RyYW5zZm9ybTpzY2FsZTNkKC40NzUsLjQ3NSwuNDc1KSB0cmFuc2xhdGUzZCgwLC02MHB4LDApO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4xNzUsLjg4NSwuMzIsMSl9fS56b29tSW5VcHthbmltYXRpb24tbmFtZTp6b29tSW5VcH1Aa2V5ZnJhbWVzIHpvb21PdXR7MCV7b3BhY2l0eToxfTUwJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlM2QoLjMsLjMsLjMpfXRve29wYWNpdHk6MH19Lnpvb21PdXR7YW5pbWF0aW9uLW5hbWU6em9vbU91dH1Aa2V5ZnJhbWVzIHpvb21PdXREb3duezQwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnNjYWxlM2QoLjQ3NSwuNDc1LC40NzUpIHRyYW5zbGF0ZTNkKDAsLTYwcHgsMCk7YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjU1LC4wNTUsLjY3NSwuMTkpfXRve29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGUzZCguMSwuMSwuMSkgdHJhbnNsYXRlM2QoMCwyMDAwcHgsMCk7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXIgYm90dG9tO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4xNzUsLjg4NSwuMzIsMSl9fS56b29tT3V0RG93bnthbmltYXRpb24tbmFtZTp6b29tT3V0RG93bn1Aa2V5ZnJhbWVzIHpvb21PdXRMZWZ0ezQwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnNjYWxlM2QoLjQ3NSwuNDc1LC40NzUpIHRyYW5zbGF0ZTNkKDQycHgsMCwwKX10b3tvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LDAsMCk7dHJhbnNmb3JtLW9yaWdpbjpsZWZ0IGNlbnRlcn19Lnpvb21PdXRMZWZ0e2FuaW1hdGlvbi1uYW1lOnpvb21PdXRMZWZ0fUBrZXlmcmFtZXMgem9vbU91dFJpZ2h0ezQwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnNjYWxlM2QoLjQ3NSwuNDc1LC40NzUpIHRyYW5zbGF0ZTNkKC00MnB4LDAsMCl9dG97b3BhY2l0eTowO3RyYW5zZm9ybTpzY2FsZSguMSkgdHJhbnNsYXRlM2QoMjAwMHB4LDAsMCk7dHJhbnNmb3JtLW9yaWdpbjpyaWdodCBjZW50ZXJ9fS56b29tT3V0UmlnaHR7YW5pbWF0aW9uLW5hbWU6em9vbU91dFJpZ2h0fUBrZXlmcmFtZXMgem9vbU91dFVwezQwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnNjYWxlM2QoLjQ3NSwuNDc1LC40NzUpIHRyYW5zbGF0ZTNkKDAsNjBweCwwKTthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNTUsLjA1NSwuNjc1LC4xOSl9dG97b3BhY2l0eTowO3RyYW5zZm9ybTpzY2FsZTNkKC4xLC4xLC4xKSB0cmFuc2xhdGUzZCgwLC0yMDAwcHgsMCk7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXIgYm90dG9tO2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4xNzUsLjg4NSwuMzIsMSl9fS56b29tT3V0VXB7YW5pbWF0aW9uLW5hbWU6em9vbU91dFVwfUBrZXlmcmFtZXMgc2xpZGVJbkRvd257MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCk7dmlzaWJpbGl0eTp2aXNpYmxlfXRve3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfX0uc2xpZGVJbkRvd257YW5pbWF0aW9uLW5hbWU6c2xpZGVJbkRvd259QGtleWZyYW1lcyBzbGlkZUluTGVmdHswJXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTEwMCUsMCwwKTt2aXNpYmlsaXR5OnZpc2libGV9dG97dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9fS5zbGlkZUluTGVmdHthbmltYXRpb24tbmFtZTpzbGlkZUluTGVmdH1Aa2V5ZnJhbWVzIHNsaWRlSW5SaWdodHswJXt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMTAwJSwwLDApO3Zpc2liaWxpdHk6dmlzaWJsZX10b3t0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX19LnNsaWRlSW5SaWdodHthbmltYXRpb24tbmFtZTpzbGlkZUluUmlnaHR9QGtleWZyYW1lcyBzbGlkZUluVXB7MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMTAwJSwwKTt2aXNpYmlsaXR5OnZpc2libGV9dG97dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9fS5zbGlkZUluVXB7YW5pbWF0aW9uLW5hbWU6c2xpZGVJblVwfUBrZXlmcmFtZXMgc2xpZGVPdXREb3duezAle3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfXRve3Zpc2liaWxpdHk6aGlkZGVuO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDEwMCUsMCl9fS5zbGlkZU91dERvd257YW5pbWF0aW9uLW5hbWU6c2xpZGVPdXREb3dufUBrZXlmcmFtZXMgc2xpZGVPdXRMZWZ0ezAle3RyYW5zZm9ybTp0cmFuc2xhdGVaKDApfXRve3Zpc2liaWxpdHk6aGlkZGVuO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtMTAwJSwwLDApfX0uc2xpZGVPdXRMZWZ0e2FuaW1hdGlvbi1uYW1lOnNsaWRlT3V0TGVmdH1Aa2V5ZnJhbWVzIHNsaWRlT3V0UmlnaHR7MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9dG97dmlzaWJpbGl0eTpoaWRkZW47dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDEwMCUsMCwwKX19LnNsaWRlT3V0UmlnaHR7YW5pbWF0aW9uLW5hbWU6c2xpZGVPdXRSaWdodH1Aa2V5ZnJhbWVzIHNsaWRlT3V0VXB7MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9dG97dmlzaWJpbGl0eTpoaWRkZW47dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTEwMCUsMCl9fS5zbGlkZU91dFVwe2FuaW1hdGlvbi1uYW1lOnNsaWRlT3V0VXB9"}},"time_used":365,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":365,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","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/43792.e1bd06112404f0901a66.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.320Z","timestamp":1785126257320,"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-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/43792.e1bd06112404f0901a66.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/crypto-mkt-screener/?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 04:24:17 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: \"6a608293-fa2\"\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:24\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: c99d4bea405ce25057ab92ef2158cd9a\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":4002,"size_decoded":1797,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (4002), with no line terminators","md5":"132394741fdf9302124f840e6c3a925d","sha1":"59267f8b0edd10201baaabda8807c79d9b9c3642","sha256":"8157f6ce008ce1e225eb1af407cc0fa0cff8f6155386f2da7e90a74c37091048","sha512":"63359d8ac07c4cd882722bc630255d64b699f4f548c64e2558f6d95f25c6e75f0b5645fee034885862797dfedaf95df80c12f73ec2d41c159177c19470c40f6d","ssdeep":"","tlshash":"bd819cbcea50d8770d5fa63e0398d06c3994b213ee26ab57ffa0d10144d7be6419a70e","first_seen":"2026-07-22T16:00:00.457602Z","last_seen":"2026-07-27T07:05:43.393663Z","times_seen":185,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtUk00Xzp2YXIoLS1jb2xvci13aGl0ZSk7LS1fMS1STTRfOnZhcigtLWNvbG9yLXJpcGUtcmVkLWEyMDApOy0tXzItUk00Xzp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApOy0tXzMtUk00Xzp2YXIoLS1jb2xvci10di1ibHVlLWE0MDApOy0tXzQtUk00Xzp2YXIoLS1jb2xvci10di1ibHVlLTkwMCk7LS1fNS1STTRfOnZhcigtLWNvbG9yLWlndWFuYS1ncmVlbi0zMDApOy0tXzYtUk00Xzp2YXIoLS1jb2xvci1pZ3VhbmEtZ3JlZW4tNjAwKTstLV83LVJNNF86dmFyKC0tY29sb3ItYmFuYW5hLXllbGxvdy03MDApOy0tXzgtUk00Xzp2YXIoLS1jb2xvci1iYW5hbmEteWVsbG93LTkwMCk7LS1fOS1STTRfOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtMzAwKTstLV8xMC1STTRfOnZhcigtLWNvbG9yLWdyYXBlcy1wdXJwbGUtNzAwKTstLV8xMS1STTRfOnZhcigtLWNvbG9yLXNreS1ibHVlLWE0MDApOy0tXzEyLVJNNF86dmFyKC0tY29sb3Itc2t5LWJsdWUtYTcwMCk7LS1fMTMtUk00Xzp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTIwMCk7LS1fMTQtUk00Xzp2YXIoLS1jb2xvci1iZXJyeS1waW5rLTQwMCl9W2RhdGEtdGhlbWU9ZGFya117LS1fMC1STTRfOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tXzEtUk00Xzp2YXIoLS1jb2xvci1yaXBlLXJlZC1hMjAwKTstLV8yLVJNNF86dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKTstLV8zLVJNNF86dmFyKC0tY29sb3ItdHYtYmx1ZS1hNDAwKTstLV80LVJNNF86dmFyKC0tY29sb3ItdHYtYmx1ZS05MDApOy0tXzUtUk00Xzp2YXIoLS1jb2xvci1pZ3VhbmEtZ3JlZW4tMzAwKTstLV82LVJNNF86dmFyKC0tY29sb3ItaWd1YW5hLWdyZWVuLTYwMCk7LS1fNy1STTRfOnZhcigtLWNvbG9yLWJhbmFuYS15ZWxsb3ctNzAwKTstLV84LVJNNF86dmFyKC0tY29sb3ItYmFuYW5hLXllbGxvdy05MDApOy0tXzktUk00Xzp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTMwMCk7LS1fMTAtUk00Xzp2YXIoLS1jb2xvci1ncmFwZXMtcHVycGxlLTcwMCk7LS1fMTEtUk00Xzp2YXIoLS1jb2xvci1za3ktYmx1ZS1hNDAwKTstLV8xMi1STTRfOnZhcigtLWNvbG9yLXNreS1ibHVlLWE3MDApOy0tXzEzLVJNNF86dmFyKC0tY29sb3ItYmVycnktcGluay0yMDApOy0tXzE0LVJNNF86dmFyKC0tY29sb3ItYmVycnktcGluay00MDApfS53cmFwLUdoRGpYekJ4e2Rpc3BsYXk6aW5saW5lLWZsZXg7cG9zaXRpb246cmVsYXRpdmV9LndyYXAtR2hEalh6Qng6YmVmb3Jle2JvcmRlci1yYWRpdXM6NTAlO2NvbnRlbnQ6bm9uZTtoZWlnaHQ6MTAwJTtpbnNldC1pbmxpbmUtc3RhcnQ6MDtvdXRsaW5lOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKSBub25lIDJweDtvdXRsaW5lLW9mZnNldDotNHB4O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MTAwJX0ud3JhcC1HaERqWHpCeDpmb2N1cy12aXNpYmxlOmJlZm9yZXtjb250ZW50OiIiO291dGxpbmUtc3R5bGU6c29saWR9LndyYXAtR2hEalh6QnggLmlucHV0LUdoRGpYekJ4e2N1cnNvcjpwb2ludGVyO2hlaWdodDoxMDAlO2luc2V0LWlubGluZS1zdGFydDowO29wYWNpdHk6MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxMDAlfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsud3JhcC1HaERqWHpCeCAuaW5wdXQtR2hEalh6Qng6aG92ZXI6bm90KDpjaGVja2VkKSsuYm94LUdoRGpYekJ4IC5ob3ZlckRvdC1HaERqWHpCeHtkaXNwbGF5OmJsb2NrfX0uYm94LUdoRGpYekJ4e2hlaWdodDoxNnB4O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTZweH0uYm94LUdoRGpYekJ4LnJlZC1HaERqWHpCeHtjb2xvcjp2YXIoLS1fMS1STTRfKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmJveC1HaERqWHpCeC5yZWQtR2hEalh6Qng6aG92ZXJ7Y29sb3I6dmFyKC0tXzItUk00Xyl9fS5ib3gtR2hEalh6QnguYmx1ZS1HaERqWHpCeHtjb2xvcjp2YXIoLS1fMy1STTRfKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmJveC1HaERqWHpCeC5ibHVlLUdoRGpYekJ4OmhvdmVye2NvbG9yOnZhcigtLV80LVJNNF8pfX0uYm94LUdoRGpYekJ4LmdyZWVuLUdoRGpYekJ4e2NvbG9yOnZhcigtLV81LVJNNF8pfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsuYm94LUdoRGpYekJ4LmdyZWVuLUdoRGpYekJ4OmhvdmVye2NvbG9yOnZhcigtLV82LVJNNF8pfX0uYm94LUdoRGpYekJ4Lm9yYW5nZS1HaERqWHpCeHtjb2xvcjp2YXIoLS1fNy1STTRfKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmJveC1HaERqWHpCeC5vcmFuZ2UtR2hEalh6Qng6aG92ZXJ7Y29sb3I6dmFyKC0tXzgtUk00Xyl9fS5ib3gtR2hEalh6QngucHVycGxlLUdoRGpYekJ4e2NvbG9yOnZhcigtLV85LVJNNF8pfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsuYm94LUdoRGpYekJ4LnB1cnBsZS1HaERqWHpCeDpob3Zlcntjb2xvcjp2YXIoLS1fMTAtUk00Xyl9fS5ib3gtR2hEalh6QnguY3lhbi1HaERqWHpCeHtjb2xvcjp2YXIoLS1fMTEtUk00Xyl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5ib3gtR2hEalh6QnguY3lhbi1HaERqWHpCeDpob3Zlcntjb2xvcjp2YXIoLS1fMTItUk00Xyl9fS5ib3gtR2hEalh6QngucGluay1HaERqWHpCeHtjb2xvcjp2YXIoLS1fMTMtUk00Xyl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5ib3gtR2hEalh6QngucGluay1HaERqWHpCeDpob3Zlcntjb2xvcjp2YXIoLS1fMTQtUk00Xyl9fS5ib3gtR2hEalh6QngubGFyZ2UtR2hEalh6Qnh7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ucGlja2VyRG90LUdoRGpYekJ4e2JhY2tncm91bmQtY29sb3I6Y3VycmVudENvbG9yO2JvcmRlci1yYWRpdXM6NTAlO2hlaWdodDoxMDAlO3dpZHRoOjEwMCV9LmhvdmVyRG90LUdoRGpYekJ4e2NvbG9yOnZhcigtLV8wLVJNNF8pO2Rpc3BsYXk6bm9uZTtvcGFjaXR5Oi41fVtkYXRhLXRoZW1lPWxpZ2h0XXstLV8wLXlNSEM6dmFyKC0tY29sb3Itd2hpdGUpfVtkYXRhLXRoZW1lPWRhcmtdey0tXzAteU1IQzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKX0ud3JhcHBlci1WbmVRVm9OdntwYWRkaW5nLWJsb2NrOjEwcHggMTBweDtwYWRkaW5nLWlubGluZTo2cHggMTBweH0ud3JhcHBlci1WbmVRVm9OdiAuc2VsZWN0b3ItVm5lUVZvTnZ7YWxpZ24taXRlbXM6Y2VudGVyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzAteU1IQyk7Ym9yZGVyLXJhZGl1czo0cHg7Ym94LXNoYWRvdzowIDAgNnB4IDAgdmFyKC0tY29sb3Itb3RoZXItc2hhZG93LXNlY29uZGFyeS1uZXV0cmFsLWxpZ2h0KTtkaXNwbGF5OmlubGluZS1mbGV4O3BhZGRpbmc6NHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS53cmFwcGVyLVZuZVFWb052IC5zZWxlY3Rvci1WbmVRVm9OdiAuYXJyb3dMZWZ0LVZuZVFWb052e2hlaWdodDoxMnB4O2luc2V0LWlubGluZS1zdGFydDotMTJweDtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTt3aWR0aDoxMnB4fS53cmFwcGVyLVZuZVFWb052IC5zZWxlY3Rvci1WbmVRVm9OdiAuYXJyb3dMZWZ0LVZuZVFWb052OmFmdGVye2JhY2tncm91bmQ6dmFyKC0tXzAteU1IQyk7Ym94LXNoYWRvdzowIDAgNnB4IDAgdmFyKC0tY29sb3Itb3RoZXItc2hhZG93LXNlY29uZGFyeS1uZXV0cmFsLWxpZ2h0KTtjb250ZW50OiIiO2hlaWdodDoxMnB4O2luc2V0LWlubGluZS1zdGFydDo5cHg7cG9zaXRpb246YWJzb2x1dGU7dHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyk7d2lkdGg6MTJweH0ud3JhcHBlci1WbmVRVm9OdiAuc2VsZWN0b3ItVm5lUVZvTnYgLmFycm93TGVmdC1WbmVRVm9OdjphZnRlcjpkaXIocnRsKXt0cmFuc2Zvcm06cm90YXRlKC00NWRlZyl9LmNvbG9yU2VsZWN0QnV0dG9uLVZuZVFWb052e3BhZGRpbmc6NHB4fS5wb3B1cC1WbmVRVm9Odntwb3NpdGlvbjpmaXhlZDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTt6LWluZGV4OjEwMDB9"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCGMTGOMININGTOKEN.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.690Z","timestamp":1785126258690,"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 /crypto/XTVCGMTGOMININGTOKEN.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 04:24:18 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: \"d0f47528a5652c0a39065ff5e3035eeb\"\r\nlast-modified: Fri, 05 Nov 2021 11:07:32 GMT\r\ncdn-cachedat: 08/14/2025 09:16:49\r\nx-amz-id-2: xXxdqS+WlnSWU63sAkxx/plTXKwn268c54m3TEpx+6zNyBnh+2sDqWdpP2Agjr9ssFHwAKmB+KM=\r\nx-amz-request-id: A4M98F92D02X8GAQ\r\nx-amz-meta-hash: d0f47528a5652c0a39065ff5e3035eeb\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: e55b79001347747b9437ca4d1444bab9\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":676,"size_decoded":1324,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (676), with no line terminators","md5":"d0f47528a5652c0a39065ff5e3035eeb","sha1":"94150fc7187290169ed4b27ed06366cab43fd505","sha256":"594d60342ea6297f3b5fc8c392809b7e595f30a98e6763b7d39f44ed6df4ed11","sha512":"48886afbc02d884443529002bf925fc43c8420532dd8a7d940abebb2b36e198c67d7decc2c0e312f2b15c1e8a2345133ce87cd38e9f75e873a5f751211dc7e9f","ssdeep":"","tlshash":"0301fe76cf09686ef61b4568ffa294b1500d30eeb1904395e1609a3bd0847c2d918524","first_seen":"2025-04-11T11:28:49.265547Z","last_seen":"2026-07-27T07:05:43.304075Z","times_seen":770,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjE4IiBoZWlnaHQ9IjE4Ij48cGF0aCBmaWxsPSJ1cmwoI2FkaWFyZ2lweikiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTIuNjMgOWwxLjAyIDEuNDNhNSA1IDAgMDEtMiAyLjc0IDQuODcgNC44NyAwIDAxLTYuMjYtLjY5IDUuMDMgNS4wMyAwIDAxMi4yNy04LjMxYzEuMTEtLjMgMi4zLS4yIDMuMzQuM0E0LjUgNC41IDAgMDExMy41MiA3SDExLjljLS42LTEuMDktMS44NS0xLjQzLTIuOTUtMS40NGEzLjMgMy4zIDAgMDAtMy40IDMuNzUgMy40MyAzLjQzIDAgMDAzLjQgMy4xMyAzLjQ0IDMuNDQgMCAwMDMuMjItMmwtMS4wNS0xLjQ1IDEuMDUtMS41NWgxLjQ4TDEyLjYzIDl6bS0yLjIgMGwxLjE1IDEuNTZIMTAuMUw4Ljk1IDlsMS4xNS0xLjU2aDEuNDhMMTAuNDQgOXoiIGZpbGw9IiNmZmYiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImFkaWFyZ2lweiIgeDE9IjMuMzUiIHkxPSIzLjEyIiB4Mj0iMjEuOSIgeTI9IjI0LjQzIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iIzFBMUUyMSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzA2MDYwQSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjwvc3ZnPg=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCXYO.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.733Z","timestamp":1785126258733,"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 /crypto/XTVCXYO.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 04:24:18 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: \"5018e6db5282f7bef2cc50d7480dd7b8\"\r\nlast-modified: Wed, 08 Sep 2021 09:01:46 GMT\r\ncdn-cachedat: 08/09/2025 14:29:48\r\nx-amz-id-2: N86FEsnYRwNtmnyNz9jRKG9TLC3/EF7JnaX9oYVsbMW1STpM1rN1MeOdbQDi8i7kGGDo38Mlh8s=\r\nx-amz-request-id: EZEBHGCC5Q3GBQ74\r\nx-amz-meta-hash: 5018e6db5282f7bef2cc50d7480dd7b8\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: e1213ed19b96219e368bd9fcb23b7840\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":1072,"size_decoded":1420,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1072), with no line terminators","md5":"5018e6db5282f7bef2cc50d7480dd7b8","sha1":"08e2b2e2e25c1ae8c6caa1f102352112c59008ce","sha256":"3ce79f5b31f12bb94977d11992558c7a3be61dedea17059aef673e14332090ff","sha512":"944dfeea93194dcd8fca5857bf793ff1289fde0890186b417c6957293956b97e3bfbbf4a99d81f73d5804440c527b916bf71f4d94854e496aec24a91bc444025","ssdeep":"","tlshash":"2c11f3de374c6084c84c0b5de7af21a5e40e31dede2986ce60158c05ab35ae73405d68","first_seen":"2025-04-11T11:28:49.203223Z","last_seen":"2026-07-27T07:05:43.350862Z","times_seen":460,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjMzEzQjU5IiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTExLjk4OCA0SDUuOTYzTDMgOC45OTIgNS45NjMgMTRoNi4wMjVMMTUgOC45OTIgMTEuOTg4IDR6IiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTEwLjg2IDQuNzE0SDYuNTQzbC44MiAxLjE4NCAzLjQ5Ny0xLjE4NHpNNC4yMzggOC4yODVMNi4zIDQuOTNsLjY5MiAxLjE3LTIuNzU1IDIuMTg1ek0xMi40MTMgOC43OGwtLjg0Ny0zLjg3OC00LjA1MSAxLjE4MSA0Ljg5OCAyLjY5N3pNNi45OSA2LjM2NkwzLjg2IDkuMDUzbDMuMTMgMi42MDFWNi4zNjd6TTcuMzEyIDYuMzA0djUuNDczbDUuMTI4LTIuNzM2LTUuMTI4LTIuNzM3ek0xNC4xMjEgOC44ODVsLTIuMTI1LTMuNDI4Ljc3NyAzLjQyOGgxLjM0OHpNMTQuMTQzIDkuMjE3bC0yLjE3MiAzLjQ5LjcyOC0zLjQ5aDEuNDQ0ek0xMi4zMjMgOS40MTRsLTQuNzY4IDIuNjIzIDMuOTggMS4yNDguNzg4LTMuODcxek02LjI3NiAxMy4xNjNMNC4yOCA5LjgzOWwyLjY1NiAyLjE3OC0uNjYgMS4xNDZ6TTEwLjY4IDEzLjI4NUg2LjU3bC42MDYtMS4wODUgMy41MDIgMS4wODV6IiBmaWxsPSIjMzEzQjU5Ii8+PGVsbGlwc2UgY3g9IjcuMjUiIGN5PSI2LjA5NSIgcng9Ii45OCIgcnk9Ii45MzMiIGZpbGw9IiNmZmYiLz48ZWxsaXBzZSBjeD0iNy4xNjkiIGN5PSIxMi4wNDgiIHJ4PSIxLjA2IiByeT0iMS4wMSIgZmlsbD0iI2ZmZiIvPjxlbGxpcHNlIGN4PSIxMi41NjkiIGN5PSI5LjA1MiIgcng9IjEuMTgiIHJ5PSIxLjEyNCIgZmlsbD0iI2ZmZiIvPjxlbGxpcHNlIGN4PSI3LjI1IiBjeT0iNi4wOTUiIHJ4PSIuNjkxIiByeT0iLjY1OCIgZmlsbD0iIzMxM0I1OSIvPjxlbGxpcHNlIGN4PSI3LjE3IiBjeT0iMTIuMDQ4IiByeD0iLjc0NyIgcnk9Ii43MTIiIGZpbGw9IiMzMTNCNTkiLz48ZWxsaXBzZSBjeD0iMTIuNTY5IiBjeT0iOS4wNTEiIHJ4PSIuODMyIiByeT0iLjc5MiIgZmlsbD0iIzMxM0I1OSIvPjwvc3ZnPg=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCCVC.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.785Z","timestamp":1785126258785,"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 /crypto/XTVCCVC.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 04:24:18 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: \"cb35033fe32c759dd7726cd6bc99328a\"\r\nlast-modified: Tue, 22 Nov 2022 13:38:25 GMT\r\ncdn-cachedat: 08/09/2025 14:29:30\r\nx-amz-id-2: xik47Tb2bsMUNaDbkOsrbfH491M0yO/Zs96XpoLJIv9EaylfCLUrJQmKZw0H23w+v3JxYh+ci5A=\r\nx-amz-request-id: TR6J3MTDPMA140PD\r\nx-amz-meta-hash: cb35033fe32c759dd7726cd6bc99328a\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: 7294553a45d04f6fcc62c64e0afc8f45\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":517,"size_decoded":1230,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (517), with no line terminators","md5":"cb35033fe32c759dd7726cd6bc99328a","sha1":"425ce46b120cff53f4e5dd13b5a33df27be06ed3","sha256":"919e1cc22c564243cb86e877c42650a50157aca87f6cf2fadfda4e64dbb3385c","sha512":"e2f7c443fe17551552c733ce2b4925428bc5cdcc5a3535992d0991e3d67cbaf79b07aef3e7de711f4bd3a4b60fb8dd6859279cfd585d7daf3413ff1f0c253b6c","ssdeep":"","tlshash":"95f0c9bf1adc890c941307795c3523d9238fb061e3ca82f9708ddbb4610a2ebad42d18","first_seen":"2026-04-10T14:31:13.684648Z","last_seen":"2026-07-27T07:05:43.3678Z","times_seen":206,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMyRjBEMzAiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNOS44OSAxM2MxLjU3IDAgMi45MS0xLjIgMy4xMS0yLjczVjEwaDFjLS4yIDIuMDktMS45NyA0LTQuMTIgNEg4LjEzQTQuMTMgNC4xMyAwIDAgMSA0IDkuODdWOC4xM0E0LjE0IDQuMTQgMCAwIDEgOC4xMyA0aDEuNzVDMTIuMDMgNCAxMy44IDUuOTEgMTQgOGgtMWMtLjItMS41Mi0xLjU0LTMtMy4xMS0zSDguMTRBMy4xNiAzLjE2IDAgMCAwIDUgOC4xM3YxLjc0QzUgMTEuNTggNi40MiAxMyA4LjE0IDEzaDEuNzVabS0uOS02Yy41NiAwIDEgLjM3IDEgMUgxMGMwIC40NC0uMjIuODQtLjU0IDEuMDNMOS44MyAxMUg4LjE3bC4zNy0xLjk3QTEuMiAxLjIgMCAwIDEgOCA4YzAtLjYzLjQ1LTEgMS0xWiIgZmlsbD0iI0ZGNkI0RCIvPjwvc3ZnPg=="}},"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":"bootstrap.smartsuppchat.com/widget/569449356e26fcee4d78dc899a55908552835872.json","fqdn":"bootstrap.smartsuppchat.com","domain":"smartsuppchat.com","tld":"com"},"ip":{"addr":"3.69.194.231","port":443,"asn":16509,"as":"AMAZON-02","country":"Germany","country_code":"DE"},"is_navigation_request":false,"resource_type":"xhr","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:20.067Z","timestamp":1785126260067,"http_version":"HTTP/2","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":"*.smartsuppchat.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Tue, 02 Dec 2025 00:00:00 GMT","end":"Wed, 30 Dec 2026 23:59:59 GMT"},"fingerprint":{"sha1":"DC:47:26:FC:2D:4B:14:19:23:BC:B7:70:14:DA:60:A6:21:B0:1E:81","sha256":"0D:5E:FD:70:25:9E:DE:DD:47:CF:0C:58:1C:08:A2:A1:05:AC:A6:7E:0C:43:6F:50:E7:49:E0:A1:60:D0:0E:0F"}}},"request":{"raw":"GET /widget/569449356e26fcee4d78dc899a55908552835872.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://besttrader.live\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://besttrader.live/\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 04:24:20 GMT\r\ncontent-type: application/json; charset=utf-8\r\nx-version: 6cb79abf75047496934c7756b55ec6f26e7d2373\r\nvary: Accept-Encoding\r\naccess-control-allow-origin: *\r\ncache-control: private, max-age=0, must-revalidate\r\nx-hit: redis\r\netag: \"4c7-B/6NfaaDpZne/g/uc5qfSnm44ZA\"\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":null,"data":{"size":1223,"size_decoded":879,"mime_type":"application/json; charset=utf-8","magic":"JSON text data","md5":"1623b3b9e850c9c1491c70aef8d248c2","sha1":"07fe8d7da683a599defe0fee739a9f4a79b8e190","sha256":"b5b4d35c58c664f860fdab342e28e4f7337c31f56e8da3582e65972af84deb9e","sha512":"bcfb7323cde3f50f57c38880ba4f962f1f35f106a93074f2f3da73256fe2b54698c6065b11f1bc93d6f74811f6d2543fc6f5aa7afea2e5df1ff45b4f25fcc6d2","ssdeep":"","tlshash":"5321766d4a6822fd5245c7d6c5047a036bacdcb371003e7eea0d0a0e70db2e6223646b","first_seen":"2026-06-06T06:44:39.646667Z","last_seen":"2026-07-27T07:05:43.271136Z","times_seen":1534,"resource_available":false,"data":"eyJhaVJhdGluZ0VuYWJsZWQiOnRydWUsImFsbG93ZWREb21haW5zIjpbXSwiYnV0dG9uU3R5bGUiOiJncmVldGluZyIsImNvbG9yIjoiIzEyMzNkZiIsImNvbG9yMiI6bnVsbCwiY29sb3JHcmFkaWVudCI6dHJ1ZSwiY29uc2VudE1vZGVFbmFibGVkIjpmYWxzZSwiY3Jvc3NEb21haW5FbmFibGVkIjpmYWxzZSwiY3VzdG9tQnJhbmRpbmdFbmFibGVkIjpmYWxzZSwiY3VzdG9tQnJhbmRpbmdMaW5rIjoiIiwiY3VzdG9tQnJhbmRpbmdUZXh0IjoiIiwiZW1haWxDb250cm9sIjp0cnVlLCJmZWF0dXJlcyI6eyJhcGkiOmZhbHNlLCJjdXN0b21pemUiOmZhbHNlLCJnYSI6ZmFsc2UsImdyb3VwcyI6ZmFsc2UsInJhdGluZyI6ZmFsc2UsIndoaXRlTGFiZWwiOmZhbHNlfSwiZ29vZ2xlQW5hbHl0aWNzRW5hYmxlZCI6ZmFsc2UsImdvb2dsZUFuYWx5dGljc01hbnVhbCI6ZmFsc2UsImdvb2dsZUFuYWx5dGljc01lYXN1cmVtZW50SWRzIjpbXSwiZ3JvdXBTZWxlY3RFbmFibGVkIjpmYWxzZSwiaGVhZGVyU3R5bGUiOiJzdGFuZGFyZCIsImhpZGVPZmZsaW5lQ2hhdCI6ZmFsc2UsImhpZGVXaWRnZXQiOmZhbHNlLCJob3N0Ijoid2Vic29ja2V0LXZpc2l0b3JzLnNtYXJ0c3VwcC5jb20iLCJpbnRlcm5hbEFuYWx5dGljc0VuYWJsZWQiOmZhbHNlLCJpc0Jsb2NrZWQiOmZhbHNlLCJsYW5nIjoiZW4iLCJtb2JpbGVQb3B1cHNFbmFibGVkIjp0cnVlLCJuYW1lQ29udHJvbCI6dHJ1ZSwibnVtYmVyQ29udHJvbCI6ZmFsc2UsIm9wZW5PblRyaWdnZXIiOmZhbHNlLCJvcmllbnRhdGlvbiI6InJpZ2h0IiwicGFja2FnZU5hbWUiOiJmcmVlIiwicG9wdXBUZXh0YXJlYUVuYWJsZWQiOmZhbHNlLCJwcml2YWN5Tm90aWNlQ2hlY2tSZXF1aXJlZCI6ZmFsc2UsInByaXZhY3lOb3RpY2VFbmFibGVkIjp0cnVlLCJwcml2YWN5Tm90aWNlVXJsIjoiIiwicmF0aW5nRW5hYmxlZCI6ZmFsc2UsInJlcXVpcmVMb2dpbiI6ZmFsc2UsInRyYW5zbGF0ZXMiOnt9LCJ1cmxDYXJkc0VuYWJsZWQiOnRydWUsIndpZGdldFZlcnNpb24iOjMsImhhc0ludGVybmFsQXBpIjpmYWxzZSwiY29uZmlnIjp7fSwiYnJvd3NlckxhbmciOiJlbiIsIndpZGdldFRyYWNrZXJVcmwiOiJodHRwczovL3dpZGdldC10cmFja2VyLnNtYXJ0c3VwcC5jb20iLCJ0cmFuc2xhdGlvbnNCYXNlVXJsIjoiaHR0cHM6Ly90cmFuc2xhdGlvbnMuc21hcnRzdXBwY2RuLmNvbSIsIndpZGdldFRyYWNrZXJFbmFibGVkIjpmYWxzZX0="}},"time_used":88,"timings":{"blocked":-1,"dns":3,"connect":25,"send":0,"wait":29,"receive":0,"ssl":31},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/demo/chart.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/demo/index.html","date":"2026-07-27T04:24:16.853Z","timestamp":1785126256853,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /demo/chart.js HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/demo/index.html\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: W/\"65211e70-95b2\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":38322,"size_decoded":7636,"mime_type":"application/javascript","magic":"Unicode text, UTF-8 text, with CRLF line terminators","md5":"91110a5c4a823116627728c5abd44b94","sha1":"378889c73e7f8d554e93c2a69118a031e30ebdae","sha256":"8f0322f4b50bf6d6d4ae65f3c79710d036e3f66be2be642d3632680f4445d49a","sha512":"ebc5684a74b2b6adfd0758bdc6968171104df92d5d0f76bf56a11ad421065363e57800c7c96eb2dcbadcadbd49d5b3bba489dea20b99e2cd78227494097760be","ssdeep":"768:cTk2JbAIF4lK5e+nZLbS0FBRv1g8sOvPrzy9vwnchaqcxB0Qcu6E0N0C0h:DldUZ","tlshash":"db03eb4a976d1a36d4723329af0b1748fb62553b0a07eaad397ca3d01f7052601bdfb4","first_seen":"2026-07-27T03:36:45.027484Z","last_seen":"2026-07-27T04:25:12.789657Z","times_seen":2,"resource_available":true,"data":"ZnVuY3Rpb24gQ2hhcnQocGFyZW50LCBzZXJ2ZXJUaW1lKSB7DQogIHRoaXMuY2FuZGxlcyA9IFtdOw0KICB0aGlzLm9yZGVycyA9IFtdOw0KICB0aGlzLnRvT3JkZXJzQ2xvc2VkID0gW107DQogIHRoaXMub3JkZXJzQ2xvc2VkID0ge307DQogIHRoaXMucGFyZW50ID0gcGFyZW50Ow0KICB0aGlzLnByaWNlUHkgPSAwOw0KICB0aGlzLnByaWNlT2Zmc2V0ID0gMDsNCiAgdGhpcy5jYW5kbGVXaWR0aFRvID0gOTsNCiAgdGhpcy5jYW5kbGVzRnJlZVNwYWNlVG8gPSAzOw0KICB0aGlzLmNhbmRsZVdpZHRoID0gOTsNCiAgdGhpcy5jYW5kbGVzRnJlZVNwYWNlID0gMzsNCiAgdGhpcy5jYW5kbGVzT2Zmc2V0ID0gMDsNCiAgdGhpcy5zcGVlZCA9IDA7DQogIHRoaXMuYmx1ciA9IDEwOw0KICB0aGlzLmJsdXJQbHVzID0gdHJ1ZTsNCiAgdGhpcy5sV2hlZWwgPSBzZXJ2ZXJUaW1lLm5vdygpOw0KICB0aGlzLnRvQ2xpY2sgPSBbXTsNCiAgdGhpcy5jbGljayA9IFtdOw0KICB0aGlzLnNlcnZlclRpbWUgPSBzZXJ2ZXJUaW1lOw0KICB0aGlzLm5vdyA9IHNlcnZlclRpbWUubm93KCk7DQogIHRoaXMubGFzdERyYWcgPSBEYXRlLm5vdygpOw0KfQ0KLy9DaGFydC5wcm90b3R5cGUucmVtb3ZlID0gZnVuY3Rpb24gKCkgew0KLy8gICAgaWYodGhpcy5iZ0NhbnZhcykgew0KLy8gICAgICAgIHRoaXMucGFyZW50LnJlbW92ZUNoaWxkKHRoaXMuYmdDYW52YXMpOw0KLy8gICAgICAgIHRoaXMuYmdDYW52YXMucmVtb3ZlKCk7DQovLyAgICB9DQovLyAgICBpZih0aGlzLm1haW5DYW52YXMpIHsNCi8vICAgICAgICB0aGlzLnBhcmVudC5yZW1vdmVDaGlsZCh0aGlzLm1haW5DYW52YXMpOw0KLy8gICAgICAgIHRoaXMubWFpbkNhbnZhcy5yZW1vdmUoKTsNCi8vICAgIH0NCi8vICAgIGlmKHRoaXMuZnJvbnRDYW52YXMpIHsNCi8vICAgICAgICB0aGlzLnBhcmVudC5yZW1vdmVDaGlsZCh0aGlzLmZyb250Q2FudmFzKTsNCi8vICAgICAgICB0aGlzLmZyb250Q2FudmFzLnJlbW92ZSgpOw0KLy8gICAgfQ0KLy99Ow0KQ2hhcnQucHJvdG90eXBlLmluaXQgPSBmdW5jdGlvbigpIHsNCiAgdGhpcy5iZ0NhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImNhbnZhcyIpOw0KICB0aGlzLm1haW5DYW52YXMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJjYW52YXMiKTsNCiAgdGhpcy5mcm9udENhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImNhbnZhcyIpOw0KICB0aGlzLmJnQ2FudmFzLmNsYXNzTmFtZSA9ICJjdC1jaGFydCBjdC1jaGFydC1iZyI7DQogIHRoaXMubWFpbkNhbnZhcy5jbGFzc05hbWUgPSAiY3QtY2hhcnQgY3QtY2hhcnQtbWFpbiI7DQogIHRoaXMuZnJvbnRDYW52YXMuY2xhc3NOYW1lID0gImN0LWNoYXJ0IGN0LWNoYXJ0LWZyb250IjsNCiAgdGhpcy5wYXJlbnQuYXBwZW5kQ2hpbGQodGhpcy5iZ0NhbnZhcyk7DQogIHRoaXMucGFyZW50LmFwcGVuZENoaWxkKHRoaXMubWFpbkNhbnZhcyk7DQogIHRoaXMucGFyZW50LmFwcGVuZENoaWxkKHRoaXMuZnJvbnRDYW52YXMpOw0KICB0aGlzLm1haW5DYW52YXMuc3R5bGUuekluZGV4ID0gMTAwOw0KDQogIHRoaXMuYmdDYW52YXMud2lkdGggPSB0aGlzLnBhcmVudC5jbGllbnRXaWR0aDsNCiAgdGhpcy5tYWluQ2FudmFzLndpZHRoID0gdGhpcy5wYXJlbnQuY2xpZW50V2lkdGg7DQogIHRoaXMuZnJvbnRDYW52YXMud2lkdGggPSB0aGlzLnBhcmVudC5jbGllbnRXaWR0aDsNCg0KICB0aGlzLmJnQ2FudmFzLmhlaWdodCA9IHRoaXMucGFyZW50LmNsaWVudEhlaWdodDsNCiAgdGhpcy5tYWluQ2FudmFzLmhlaWdodCA9IHRoaXMucGFyZW50LmNsaWVudEhlaWdodDsNCiAgdGhpcy5mcm9udENhbnZhcy5oZWlnaHQgPSB0aGlzLnBhcmVudC5jbGllbnRIZWlnaHQ7DQoNCiAgdGhpcy5tYWluQ2FudmFzQ3R4ID0gdGhpcy5tYWluQ2FudmFzLmdldENvbnRleHQoIjJkIik7DQoNCiAgdGhpcy5jYW5kbGVzUGVyUGFnZSA9IE1hdGguY2VpbCgNCiAgICB0aGlzLm1haW5DYW52YXMuY2xpZW50V2lkdGggLyAodGhpcy5jYW5kbGVzRnJlZVNwYWNlICogMiArIHRoaXMuY2FuZGxlV2lkdGgpDQogICk7DQogIHRoaXMuaGVpZ2h0ID0gdGhpcy5wYXJlbnQuY2xpZW50SGVpZ2h0Ow0KICB0aGlzLndpZHRoID0gdGhpcy5wYXJlbnQuY2xpZW50V2lkdGg7DQoNCiAgdGhpcy5tb3VzZVBvc1ByaWNlID0gbmV3IFByaWNlTGluZSh0aGlzLm1haW5DYW52YXNDdHgsIHRoaXMpOw0KICB0aGlzLm1vdXNlUG9zVGltZSA9IG5ldyBUaW1lTGluZSh0aGlzLm1haW5DYW52YXNDdHgsIHRoaXMpOw0KICB2YXIgJHRoaXMgPSB0aGlzOw0KICB0aGlzLm9mZnNldCA9IDA7DQoNCiAgdGhpcy5jbGllbnRXaWR0aCA9IHRoaXMubWFpbkNhbnZhcy5jbGllbnRXaWR0aDsNCiAgdGhpcy5jbGllbnRIZWlnaHQgPSB0aGlzLm1haW5DYW52YXMuY2xpZW50SGVpZ2h0Ow0KDQogIHRoaXMuY29uZmlnID0gew0KICAgIGNoYXJ0OiB7DQogICAgICBiZzogIiMxRjIzMkUiLA0KICAgICAgbGluZWFyOiB7DQogICAgICAgIGNvbG9yOiAiIzAyQjZGMiIsDQogICAgICAgIGJnOiBbIiMxRDUwNkIiLCAiIzFGMjgzNCJdLA0KICAgICAgICBwb2ludDogew0KICAgICAgICAgIGJnOiAiI0ZGRkZGRiIsDQogICAgICAgICAgc2hhZG93OiAiIzU1NkU3OCINCiAgICAgICAgfQ0KICAgICAgfQ0KICAgIH0sDQogICAgdGltZUxpbmU6IHsNCiAgICAgIGJnOiAiIzFGMjMyRSIsDQogICAgICBsaW5lOiB7DQogICAgICAgIGNvbG9yOiAiIzcyOEM5NiIsDQogICAgICAgIGxpbmVEYXNoOiBbNCwgMV0NCiAgICAgIH0sDQogICAgICB0ZXh0OiB7DQogICAgICAgIGNvbG9yOiAiIzcyOEI5NiIsDQogICAgICAgIGZvbnQ6ICIxMnB4IEFyaWFsIiwNCiAgICAgICAgZm9ybWF0OiAiSEg6bW06c3MiDQogICAgICB9DQogICAgfSwNCiAgICBwcmljZUxpbmU6IHsNCiAgICAgIGxpbmU6IHsNCiAgICAgICAgY29sb3I6ICIjNzI4Qzk2IiwNCiAgICAgICAgbGluZURhc2g6IFs0LCAxXQ0KICAgICAgfSwNCiAgICAgIHRleHQ6IHsNCiAgICAgICAgY29sb3I6ICIjNzI4Qzk2IiwNCiAgICAgICAgZm9udDogIjE1cHggQXJpYWwiDQogICAgICB9DQogICAgfSwNCiAgICBjdXJyZW50VGltZTogew0KICAgICAgbGluZTogew0KICAgICAgICBjb2xvcjogIiMzQjQzNTkiDQogICAgICB9LA0KICAgICAgdGV4dDogew0KICAgICAgICBmb3JtYXQ6ICJISDptbTpzcyIsDQogICAgICAgIGJnOiAiIzNCNDM1OSIsDQogICAgICAgIGZvbnQ6ICIxMnB4IEFyaWFsIiwNCiAgICAgICAgY29sb3I6ICIjRjdGN0Y4Ig0KICAgICAgfQ0KICAgIH0sDQogICAgY3VycmVudFByaWNlOiB7DQogICAgICBiZzogIiNGNzRBNUMiLA0KICAgICAgbGluZTogew0KICAgICAgICBjb2xvcjogIiNGNzRBNUMiDQogICAgICB9LA0KICAgICAgdGV4dDogew0KICAgICAgICBmb250OiAiMTJweCBBcmlhbCIsDQogICAgICAgIGNvbG9yOiAiI2ZmZiINCiAgICAgIH0NCiAgICB9LA0KICAgIG1vdXNlUG9zOiB7DQogICAgICBiZzogIiMzQjQzNTkiDQogICAgfSwNCiAgICBjbG9jazogew0KICAgICAgY29sb3I6ICIjN0Y5Q0E3IiwNCiAgICAgIGZvbnQ6ICIyMHB4IEFyaWFsIiwNCiAgICAgIGZvcm1hdDogIm1tOnNzIg0KICAgIH0sDQogICAgb3JkZXI6IHsNCiAgICAgIGNhbGw6IHsNCiAgICAgICAgY29sb3I6ICIjNkNBOTI0Ig0KICAgICAgfSwNCiAgICAgIHB1dDogew0KICAgICAgICBjb2xvcjogIiNGNzRBNUMiDQogICAgICB9LA0KICAgICAgbGluZURhc2g6IFs0LCAxXSwNCiAgICAgIGZvbnQ6ICIxMnB4IEFyaWFsIiwNCiAgICAgIHByaWNlOiB7DQogICAgICAgIGZvbnQ6ICJib2xkIDEycHggQXJpYWwiDQogICAgICB9LA0KICAgICAgdGltZTogew0KICAgICAgICBmb250OiAiMTJweCBBcmlhbCIsDQogICAgICAgIGZvcm1hdDogIkhIOm1tOnNzIg0KICAgICAgfQ0KICAgIH0sDQogICAgaW1hZ2VEZWQ6IHsNCiAgICAgIHRleHQ6ICJUaW1lIGV4cGlyYXRpb24iLA0KICAgICAgdGV4dFBvc1g6IC0xMCwNCiAgICAgIHRleHRQb3NZOiAxNywNCiAgICAgIGNvbG9yOiAiI0E2Mzk0NyIsDQogICAgICBmb250OiAiMTVweCBBcmlhbCINCiAgICB9LA0KICAgIGltYWdlRW5kOiB7DQogICAgICB0ZXh0OiAiVGltZSBleHBpcmF0aW9uIiwNCiAgICAgIHRleHRQb3NYOiAtMTAsDQogICAgICB0ZXh0UG9zWTogMTcsDQogICAgICBjb2xvcjogIiNBNjM5NDciLA0KICAgICAgZm9udDogIjEzcHggQXJpYWwiDQogICAgfSwNCiAgICBlbmRMaW5lOiB7DQogICAgICBsaW5lU3R5bGU6ICIjOTkwRjE0IiwNCiAgICAgIGxpbmVEYXNoOiBbNCwgMV0NCiAgICB9DQogIH07DQoNCiAgdGhpcy5pbWFnZURlZCA9IG5ldyBJbWFnZSgpOw0KICB0aGlzLmltYWdlRW5kID0gbmV3IEltYWdlKCk7DQogIHsNCiAgICB2YXIgYnVmQ2FudmFzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiY2FudmFzIik7DQogICAgYnVmQ2FudmFzLmhlaWdodCA9IDIwMDsNCg0KICAgIHZhciBidWYgPSBidWZDYW52YXMuZ2V0Q29udGV4dCgiMmQiKTsNCg0KICAgIGJ1Zi5zYXZlKCk7DQogICAgYnVmLnJvdGF0ZSgoMyAqIE1hdGguUEkpIC8gMik7DQogICAgYnVmLmZvbnQgPSB0aGlzLmNvbmZpZy5pbWFnZURlZC5mb250Ow0KICAgIGJ1Zi5maWxsU3R5bGUgPSB0aGlzLmNvbmZpZy5pbWFnZURlZC5jb2xvcjsNCiAgICBidWYudGV4dEFsaWduID0gInJpZ2h0IjsNCiAgICBidWYuZmlsbFRleHQoDQogICAgICB0aGlzLmNvbmZpZy5pbWFnZURlZC50ZXh0LA0KICAgICAgdGhpcy5jb25maWcuaW1hZ2VEZWQudGV4dFBvc1gsDQogICAgICB0aGlzLmNvbmZpZy5pbWFnZURlZC50ZXh0UG9zWQ0KICAgICk7DQogICAgdGhpcy5pbWFnZURlZC5zcmMgPSBidWZDYW52YXMudG9EYXRhVVJMKCk7DQogICAgYnVmLnJlc3RvcmUoKTsNCg0KICAgIGJ1Zi5zYXZlKCk7DQogICAgLy9idWYucm90YXRlKC0zICogTWF0aC5QSSAvIDIpOw0KICAgIGJ1Zi5jbGVhclJlY3QoLTEsIC0xLCBidWZDYW52YXMuaGVpZ2h0ICsgMiwgYnVmQ2FudmFzLndpZHRoICsgMik7DQogICAgYnVmLnJlc3RvcmUoKTsNCg0KICAgIGJ1Zi5zYXZlKCk7DQogICAgYnVmLnJvdGF0ZSgoMyAqIE1hdGguUEkpIC8gMik7DQoNCiAgICAvL2J1Zi5jbGVhclJlY3QoMCwgMCwgYnVmQ2FudmFzLndpZHRoLCBidWZDYW52YXMuaGVpZ2h0KTsNCiAgICAvL2J1Zi5jbGVhclJlY3QoLTIwMCwgLTIwMCwgMzAwLCAzMDApOw0KICAgIC8vYnVmLnJvdGF0ZSgzICogTWF0aC5QSSAvIDIpOw0KDQogICAgYnVmLmZvbnQgPSB0aGlzLmNvbmZpZy5pbWFnZUVuZC5mb250Ow0KDQogICAgYnVmLmZpbGxTdHlsZSA9IHRoaXMuY29uZmlnLmltYWdlRW5kLmNvbG9yOw0KICAgIGJ1Zi50ZXh0QWxpZ24gPSAicmlnaHQiOw0KICAgIGJ1Zi5maWxsVGV4dCgNCiAgICAgIHRoaXMuY29uZmlnLmltYWdlRW5kLnRleHQsDQogICAgICB0aGlzLmNvbmZpZy5pbWFnZUVuZC50ZXh0UG9zWCwNCiAgICAgIHRoaXMuY29uZmlnLmltYWdlRW5kLnRleHRQb3NZDQogICAgKTsNCiAgICB0aGlzLmltYWdlRW5kLnNyYyA9IGJ1ZkNhbnZhcy50b0RhdGFVUkwoKTsNCiAgICBidWYucmVzdG9yZSgpOw0KICAgIGJ1ZkNhbnZhcy5yZW1vdmUoKTsNCiAgfQ0KDQogIHRoaXMuZW5kTGluZSA9IG5ldyBFbmRMaW5lKHRoaXMubWFpbkNhbnZhc0N0eCwgdGhpcywgew0KICAgIGxpbmVTdHlsZTogdGhpcy5jb25maWcuZW5kTGluZS5saW5lU3R5bGUsDQogICAgbGluZURhc2g6IHRoaXMuY29uZmlnLmVuZExpbmUubGluZURhc2gsDQogICAgbGluZU5hbWU6IHRoaXMuaW1hZ2VFbmQsDQogICAgZGlzcGxheVRpbWU6IGZhbHNlDQogIH0pOw0KDQogIHRoaXMuc2Nyb2xsT24gPSBmYWxzZTsNCiAgdGhpcy5tYWluQ2FudmFzLm9ubW91c2Vkb3duID0gZnVuY3Rpb24oZSkgew0KICAgIHZhciBldnQgPSBlIHx8IGV2ZW50Ow0KICAgICR0aGlzLmRyYWdnaW5nID0gdHJ1ZTsNCiAgICAkdGhpcy5sYXN0WCA9IGV2dC5vZmZzZXRYOw0KICAgICR0aGlzLm9mZnNldCA9IDA7DQogICAgJHRoaXMudHJhbnNsYXRlVGltZSA9ICR0aGlzLm5vdzsNCiAgICAkdGhpcy50cmFuc2xhdGVUbyA9IDA7DQogICAgaWYgKHdpbmRvdy5nZXRTZWxlY3Rpb24pIHsNCiAgICAgIGlmICh3aW5kb3cuZ2V0U2VsZWN0aW9uKCkuZW1wdHkpIHsNCiAgICAgICAgLy8gQ2hyb21lDQogICAgICAgIHdpbmRvdy5nZXRTZWxlY3Rpb24oKS5lbXB0eSgpOw0KICAgICAgfSBlbHNlIGlmICh3aW5kb3cuZ2V0U2VsZWN0aW9uKCkucmVtb3ZlQWxsUmFuZ2VzKSB7DQogICAgICAgIC8vIEZpcmVmb3gNCiAgICAgICAgd2luZG93LmdldFNlbGVjdGlvbigpLnJlbW92ZUFsbFJhbmdlcygpOw0KICAgICAgfQ0KICAgIH0gZWxzZSBpZiAoZG9jdW1lbnQuc2VsZWN0aW9uKSB7DQogICAgICAvLyBJRT8NCiAgICAgIGRvY3VtZW50LnNlbGVjdGlvbi5lbXB0eSgpOw0KICAgIH0NCiAgfTsNCg0KICB0aGlzLm1haW5DYW52YXMub25jbGljayA9IGZ1bmN0aW9uKGUpIHsNCiAgICAkdGhpcy5zY3JvbGxPbiA9IHRydWU7DQogICAgZm9yICh2YXIgaSA9IDA7IGkgPCAkdGhpcy5jbGljay5sZW5ndGg7IGkrKykgew0KICAgICAgdmFyIG9iID0gJHRoaXMuY2xpY2tbaV07DQogICAgICBpZiAoDQogICAgICAgIG9iLnhzIDw9IGUub2Zmc2V0WCAmJg0KICAgICAgICBlLm9mZnNldFggPD0gb2IueGUgJiYNCiAgICAgICAgb2IueXMgPD0gZS5vZmZzZXRZICYmDQogICAgICAgIGUub2Zmc2V0WSA8PSBvYi55ZQ0KICAgICAgKSB7DQogICAgICAgIG9iLmZuKCk7DQogICAgICB9DQogICAgfQ0KICB9Ow0KDQogIHRoaXMubWFpbkNhbnZhcy5vbm1vdXNlbW92ZSA9IGZ1bmN0aW9uKGUpIHsNCiAgICB2YXIgZXZ0ID0gZSB8fCBldmVudDsNCiAgICAkdGhpcy5tb3VzZVggPSBldnQub2Zmc2V0WDsNCiAgICAkdGhpcy5tb3VzZVkgPSBldnQub2Zmc2V0WTsNCiAgICAkdGhpcy5sYXN0RHJhZyA9ICR0aGlzLm5vdzsNCiAgICBpZiAoJHRoaXMuZHJhZ2dpbmcpIHsNCiAgICAgIHZhciBkZWx0YSA9IGV2dC5vZmZzZXRYIC0gJHRoaXMubGFzdFg7DQogICAgICAkdGhpcy5sYXN0WCA9IGV2dC5vZmZzZXRYOw0KICAgICAgJHRoaXMuc2Nyb2xsWChkZWx0YSk7DQogICAgICAkdGhpcy50cmFuc2xhdGVUbyArPSBkZWx0YTsNCiAgICB9DQogIH07DQoNCiAgdGhpcy5tYWluQ2FudmFzLm9ubW91c2V1cCA9IGZ1bmN0aW9uKCkgew0KICAgIGlmICgkdGhpcy5kcmFnZ2luZykgew0KICAgICAgJHRoaXMuc3BlZWQgPSBNYXRoLnJvdW5kKA0KICAgICAgICAoMTAwMCAqICR0aGlzLnRyYW5zbGF0ZVRvKSAvDQogICAgICAgICAgTWF0aC5wb3coJHRoaXMubm93IC0gJHRoaXMudHJhbnNsYXRlVGltZSwgMikNCiAgICAgICk7DQogICAgfQ0KICAgICR0aGlzLmRyYWdnaW5nID0gZmFsc2U7DQogIH07DQogIHRoaXMubWFpbkNhbnZhcy5vbm1vdXNlbGVhdmUgPSBmdW5jdGlvbigpIHsNCiAgICAkdGhpcy5kcmFnZ2luZyA9IGZhbHNlOw0KICAgICR0aGlzLnNjcm9sbE9uID0gZmFsc2U7DQogIH07DQoNCiAgdmFyIG9uV2hlZWwgPSBmdW5jdGlvbihlKSB7DQogICAgZSA9IGUgfHwgd2luZG93LmV2ZW50Ow0KICAgIGlmICghJHRoaXMuc2Nyb2xsT24pIHsNCiAgICAgIHJldHVybjsNCiAgICB9DQogICAgdmFyIGRlbHRhID0gZS5kZWx0YVkgfHwgZS5kZXRhaWwgfHwgZS53aGVlbERlbHRhOw0KICAgIHZhciBtb3YgPSAxOw0KICAgIGlmICgkdGhpcy5ub3cgLSAkdGhpcy5sV2hlZWwgPCAxMDAwKSB7DQogICAgICBtb3YgPSBNYXRoLnJvdW5kKDEwMDAgLyAoJHRoaXMubm93IC0gJHRoaXMubFdoZWVsKSk7DQogICAgICBpZiAobW92ID4gNSkgew0KICAgICAgICBtb3YgPSA1Ow0KICAgICAgfQ0KICAgIH0NCiAgICAkdGhpcy5sV2hlZWwgPSAkdGhpcy5ub3c7DQogICAgaWYgKGRlbHRhID4gMCkgew0KICAgICAgJHRoaXMuY2FuZGxlV2lkdGhUbyAtPSBtb3Y7DQogICAgICBpZiAoJHRoaXMuY2FuZGxlV2lkdGhUbyA8PSAwKSB7DQogICAgICAgICR0aGlzLmNhbmRsZVdpZHRoVG8gPSAxOw0KICAgICAgfQ0KICAgIH0gZWxzZSBpZiAoZGVsdGEgPCAwKSB7DQogICAgICAkdGhpcy5jYW5kbGVXaWR0aFRvICs9IG1vdjsNCiAgICB9DQogICAgJHRoaXMuY2FuZGxlc0ZyZWVTcGFjZVRvID0gTWF0aC5yb3VuZCgkdGhpcy5jYW5kbGVXaWR0aFRvIC8gMyk7DQogICAgaWYgKCR0aGlzLmNhbmRsZXNGcmVlU3BhY2VUbyA8IDEpIHsNCiAgICAgICR0aGlzLmNhbmRsZXNGcmVlU3BhY2VUbyA9IDE7DQogICAgfQ0KICAgIGlmICgkdGhpcy5jYW5kbGVzRnJlZVNwYWNlVG8gPiAzKSB7DQogICAgICAkdGhpcy5jYW5kbGVzRnJlZVNwYWNlVG8gPSAzOw0KICAgIH0NCiAgICBlLnByZXZlbnREZWZhdWx0ID8gZS5wcmV2ZW50RGVmYXVsdCgpIDogKGUucmV0dXJuVmFsdWUgPSBmYWxzZSk7DQogIH07DQoNCiAgaWYgKHRoaXMubWFpbkNhbnZhcy5hZGRFdmVudExpc3RlbmVyKSB7DQogICAgaWYgKCJvbndoZWVsIiBpbiBkb2N1bWVudCkgew0KICAgICAgLy8gSUU5KywgRkYxNyssIENoMzErDQogICAgICB0aGlzLm1haW5DYW52YXMuYWRkRXZlbnRMaXN0ZW5lcigid2hlZWwiLCBvbldoZWVsKTsNCiAgICB9IGVsc2UgaWYgKCJvbm1vdXNld2hlZWwiIGluIGRvY3VtZW50KSB7DQogICAgICAvLyDRg9GB0YLQsNGA0LXQstGI0LjQuSDQstCw0YDQuNCw0L3RgiDRgdC+0LHRi9GC0LjRjw0KICAgICAgdGhpcy5tYWluQ2FudmFzLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNld2hlZWwiLCBvbldoZWVsKTsNCiAgICB9IGVsc2Ugew0KICAgICAgLy8gRmlyZWZveCA8IDE3DQogICAgICB0aGlzLm1haW5DYW52YXMuYWRkRXZlbnRMaXN0ZW5lcigiTW96TW91c2VQaXhlbFNjcm9sbCIsIG9uV2hlZWwpOw0KICAgIH0NCiAgfSBlbHNlIHsNCiAgICAvLyBJRTgtDQogICAgdGhpcy5tYWluQ2FudmFzLmF0dGFjaEV2ZW50KCJvbm1vdXNld2hlZWwiLCBvbldoZWVsKTsNCiAgfQ0KfTsNCkNoYXJ0LnByb3RvdHlwZS5zY3JvbGxYID0gZnVuY3Rpb24oZGVsdGEpIHsNCiAgdmFyICR0aGlzID0gdGhpczsNCiAgJHRoaXMub2Zmc2V0ICs9IGRlbHRhOw0KICBpZiAoDQogICAgTWF0aC5hYnMoJHRoaXMub2Zmc2V0KSA+PQ0KICAgICR0aGlzLmNhbmRsZVdpZHRoICsgJHRoaXMuY2FuZGxlc0ZyZWVTcGFjZSAqIDINCiAgKSB7DQogICAgdmFyIG1vdkNhbmRsZSA9IE1hdGguZmxvb3IoDQogICAgICAkdGhpcy5vZmZzZXQgLyAoJHRoaXMuY2FuZGxlV2lkdGggKyAkdGhpcy5jYW5kbGVzRnJlZVNwYWNlICogMikNCiAgICApOw0KICAgIGlmICgkdGhpcy5jYW5kbGVzT2Zmc2V0ICsgbW92Q2FuZGxlIDwgMikgew0KICAgICAgJHRoaXMub2Zmc2V0IC09IGRlbHRhOw0KICAgICAgcmV0dXJuOw0KICAgIH0NCiAgICBpZiAoJHRoaXMuY2FuZGxlc09mZnNldCArIG1vdkNhbmRsZSA+PSAkdGhpcy5jYW5kbGVzLmxlbmd0aCkgew0KICAgICAgJHRoaXMub2Zmc2V0IC09IGRlbHRhOw0KICAgICAgcmV0dXJuOw0KICAgIH0NCg0KICAgICR0aGlzLmNhbmRsZXNPZmZzZXQgKz0gbW92Q2FuZGxlOw0KICAgICR0aGlzLm9mZnNldCAtPQ0KICAgICAgbW92Q2FuZGxlICogKCR0aGlzLmNhbmRsZVdpZHRoICsgJHRoaXMuY2FuZGxlc0ZyZWVTcGFjZSAqIDIpOw0KICB9DQp9Ow0KQ2hhcnQucHJvdG90eXBlLmdldFggPSBmdW5jdGlvbih0aW1lKSB7DQogIGlmICghdGhpcy5jYW5kbGVzU2hvdyB8fCB0aGlzLmNhbmRsZXNTaG93Lmxlbmd0aCA9PSAwKSB7DQogICAgcmV0dXJuIDA7DQogIH0NCiAgdmFyIHNzID0gMDsNCiAgdmFyIHMgPSB0aGlzLmNhbmRsZXNTaG93Lmxlbmd0aCAvIDI7DQogIHZhciBzbCA9IHRoaXMuY2FuZGxlc1Nob3cubGVuZ3RoIC0gMTsNCiAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLmNhbmRsZXNTaG93Lmxlbmd0aDsgaSsrKSB7DQogICAgdmFyIGNhbmRsZSA9IHRoaXMuY2FuZGxlc1Nob3dbTWF0aC5yb3VuZChzKV07DQogICAgaWYgKCFjYW5kbGUgJiYgTWF0aC5yb3VuZChzKSA9PT0gMSkgew0KICAgICAgcyA9IDA7DQogICAgICBjb250aW51ZTsNCiAgICB9DQogICAgaWYgKGNhbmRsZS50aW1lSWQgKyAxMDAwID4gdGltZSAmJiB0aW1lID49IGNhbmRsZS50aW1lSWQpIHsNCiAgICAgIHJldHVybiBjYW5kbGUucG9zWDsNCiAgICB9IGVsc2UgaWYgKHRpbWUgPCBjYW5kbGUudGltZUlkKSB7DQogICAgICBzbCA9IHM7DQogICAgICBzID0gc3MgKyAoc2wgLSBzcykgLyAyOw0KICAgIH0gZWxzZSBpZiAodGltZSA+IGNhbmRsZS50aW1lSWQpIHsNCiAgICAgIHNzID0gczsNCiAgICAgIHMgPSBzcyArIChzbCAtIHNzKSAvIDI7DQogICAgfQ0KICB9DQogIHZhciBsYyA9IHRoaXMuY2FuZGxlc1Nob3dbdGhpcy5jYW5kbGVzU2hvdy5sZW5ndGggLSAxXTsNCiAgaWYgKGxjLnRpbWVJZCA8IHRpbWUpIHsNCiAgICByZXR1cm4gKA0KICAgICAgdGhpcy5sYXN0UG9zWCArDQogICAgICAoKHRoaXMuY2FuZGxlV2lkdGggKyB0aGlzLmNhbmRsZXNGcmVlU3BhY2UgKiAyKSAvIDEwMDApICoNCiAgICAgICAgKHRpbWUgLSB0aGlzLm5vdykNCiAgICApOw0KICB9DQogIHJldHVybiAwOw0KfTsNCkNoYXJ0LnByb3RvdHlwZS5nZXRZID0gZnVuY3Rpb24ocHJpY2UpIHsNCiAgcmV0dXJuIHRoaXMuaGVpZ2h0IC0gKHByaWNlICogdGhpcy5wcmljZVB5IC0gdGhpcy5wcmljZU9mZnNldCk7DQp9Ow0KQ2hhcnQucHJvdG90eXBlLmdldFByaWNlID0gZnVuY3Rpb24oeSkgew0KICByZXR1cm4gKHRoaXMuaGVpZ2h0IC0geSArIHRoaXMucHJpY2VPZmZzZXQpIC8gdGhpcy5wcmljZVB5Ow0KfTsNCkNoYXJ0LnByb3RvdHlwZS5nZXRUaW1lID0gZnVuY3Rpb24oeCkgew0KICBpZiAoIXRoaXMuY2FuZGxlc1Nob3cgfHwgdGhpcy5jYW5kbGVzU2hvdy5sZW5ndGggPT0gMCkgew0KICAgIHJldHVybiB0aGlzLm5vdzsNCiAgfQ0KICB2YXIgem9uZSA9IHRoaXMuY2FuZGxlV2lkdGggLyAyICsgdGhpcy5jYW5kbGVzRnJlZVNwYWNlOw0KICB2YXIgc3MgPSAwOw0KICB2YXIgcyA9IE1hdGgucm91bmQodGhpcy5jYW5kbGVzU2hvdy5sZW5ndGggLyAyKTsNCiAgdmFyIHNsID0gdGhpcy5jYW5kbGVzU2hvdy5sZW5ndGggLSAxOw0KICBmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMuY2FuZGxlc1Nob3cubGVuZ3RoOyBpKyspIHsNCiAgICB2YXIgY2FuZGxlID0gdGhpcy5jYW5kbGVzU2hvd1tNYXRoLnJvdW5kKHMpXTsNCiAgICBpZiAoIWNhbmRsZSAmJiBNYXRoLnJvdW5kKHMpID09PSAxKSB7DQogICAgICBzID0gMDsNCiAgICAgIGNvbnRpbnVlOw0KICAgIH0NCiAgICBpZiAoY2FuZGxlLnBvc1ggKyB6b25lID49IHggJiYgeCA+PSBjYW5kbGUucG9zWCAtIHpvbmUpIHsNCiAgICAgIHJldHVybiBjYW5kbGUudGltZUlkOw0KICAgIH0gZWxzZSBpZiAoeCA8IGNhbmRsZS5wb3NYKSB7DQogICAgICBzbCA9IHM7DQogICAgICBzID0gc3MgKyBNYXRoLnJvdW5kKChzbCAtIHNzKSAvIDIpOw0KICAgIH0gZWxzZSBpZiAoeCA+IGNhbmRsZS5wb3NYKSB7DQogICAgICBzcyA9IHM7DQogICAgICBzID0gc3MgKyBNYXRoLnJvdW5kKChzbCAtIHNzKSAvIDIpOw0KICAgIH0NCiAgfQ0KICB2YXIgbGMgPSB0aGlzLmNhbmRsZXNTaG93W3RoaXMuY2FuZGxlc1Nob3cubGVuZ3RoIC0gMV07DQogIGlmIChsYy5wb3NYIDwgeCkgew0KICAgIC8vdmFyIGRkID0geCAtIChsYy5wb3NYICsgdGhpcy5jYW5kbGVXaWR0aCArIHRoaXMuY2FuZGxlc0ZyZWVTcGFjZSAqIDIpOw0KICAgIHZhciBkZCA9IHggLSB0aGlzLmxhc3RQb3NYOw0KICAgIHJldHVybiAoDQogICAgICB0aGlzLm5vdyArICgxMDAwICogZGQpIC8gKHRoaXMuY2FuZGxlV2lkdGggKyB0aGlzLmNhbmRsZXNGcmVlU3BhY2UgKiAyKQ0KICAgICk7DQogIH0NCn07DQoNCkNoYXJ0LnByb3RvdHlwZS5hbmltYXRlID0gZnVuY3Rpb24oKSB7DQogIHRoaXMubm93ID0gdGhpcy5zZXJ2ZXJUaW1lLm5vdygpOw0KDQogIGlmICghdGhpcy5tYWluQ2FudmFzQ3R4KSB7DQogICAgcmV0dXJuOw0KICB9DQogIGlmICh0aGlzLnByZXBhcmVkT3JkZXIuc3ltYm9sID09PSAiVFJBREVfT0ZGIikgew0KICAgIHJldHVybjsNCiAgfQ0KDQogIHRoaXMuY2FuZGxlc0ZyZWVTcGFjZSArPQ0KICAgICh0aGlzLmNhbmRsZXNGcmVlU3BhY2VUbyAtIHRoaXMuY2FuZGxlc0ZyZWVTcGFjZSkgLyA1Ow0KICB0aGlzLmNhbmRsZVdpZHRoICs9ICh0aGlzLmNhbmRsZVdpZHRoVG8gLSB0aGlzLmNhbmRsZVdpZHRoKSAvIDU7DQogIHRoaXMuY2FuZGxlc1BlclBhZ2UgPSBNYXRoLmNlaWwoDQogICAgdGhpcy5jbGllbnRXaWR0aCAvICh0aGlzLmNhbmRsZXNGcmVlU3BhY2UgKiAyICsgdGhpcy5jYW5kbGVXaWR0aCkNCiAgKTsNCg0KICAvL3RoaXMudGltZVB4ID0gdGhpcy5tYWluQ2FudmFzLmNsaWVudFdpZHRoIC8gdGhpcy50aW1lV2lkdGg7DQogIHZhciBjYW5kbGUgPSB0aGlzLmNhbmRsZXNbMF07DQogIHZhciB0aW1lUlIgPSBNYXRoLmZsb29yKHRoaXMubm93IC8gMTAwMCkgKiAxMDAwOw0KICBpZiAoY2FuZGxlICYmIGNhbmRsZS50aW1lSWQgPCB0aW1lUlIpIHsNCiAgICB2YXIgY2FuZGxlMiA9IG5ldyBDYW5kbGUoDQogICAgICB0aW1lUlIsDQogICAgICBjYW5kbGUuY2xvc2UsDQogICAgICBjYW5kbGUuY2xvc2UsDQogICAgICBjYW5kbGUuY2xvc2UsDQogICAgICBjYW5kbGUuY2xvc2UsDQogICAgICB0cnVlDQogICAgKTsNCiAgICBjYW5kbGUyLmNsb3NlVG8gPSBjYW5kbGUyLmNsb3NlOw0KICAgIGNhbmRsZTIub3BlblRvID0gY2FuZGxlMi5vcGVuOw0KICAgIGNhbmRsZTIubWluVG8gPSBjYW5kbGUyLm1pbjsNCiAgICBjYW5kbGUyLm1heFRvID0gY2FuZGxlMi5tYXg7DQogICAgY2FuZGxlMi5hbmltYXRpb24gPSAxMjA7DQogICAgdGhpcy5hZGRDYW5kbGVzKGNhbmRsZTIpOw0KICB9DQogIHRoaXMubWFpbkNhbnZhc0N0eC5jbGVhclJlY3QoMCwgMCwgdGhpcy53aWR0aCwgdGhpcy5oZWlnaHQpOw0KDQogIHRoaXMuZHJhd1ByaWNlcygpOw0KICB0aGlzLmRyYXdUaW1lcygpOw0KICB0aGlzLmRyYXdDYW5kbGVzKCk7DQoNCiAgaWYgKA0KICAgIHRoaXMucHJlcGFyZWRPcmRlciAmJg0KICAgIHRoaXMucHJlcGFyZWRPcmRlci50aW1lRnJhbWUgJiYNCiAgICAoIXRoaXMucHJlcGFyZWRPcmRlci5vcHRpb25FbmQgfHwgdGhpcy5ub3cgPj0gdGhpcy5wcmVwYXJlZE9yZGVyLm9wdGlvbkVuZCkNCiAgKSB7DQogICAgLy9pZighdGhpcy5vcHRpb25FbmQpIHsNCiAgICB0aGlzLnByZXBhcmVkT3JkZXIub3B0aW9uT2ZmID0gdGhpcy5ub3cgKyB0aGlzLnByZXBhcmVkT3JkZXIudGltZUZyYW1lOw0KICAgIHRoaXMucHJlcGFyZWRPcmRlci5vcHRpb25PZmYgPQ0KICAgICAgTWF0aC5yb3VuZCh0aGlzLnByZXBhcmVkT3JkZXIub3B0aW9uT2ZmIC8gMTAwMCkgKiAxMDAwOw0KICAgIHRoaXMucHJlcGFyZWRPcmRlci5vcHRpb25FbmQgPSBNYXRoLnJvdW5kKA0KICAgICAgdGhpcy5ub3cgKyB0aGlzLnByZXBhcmVkT3JkZXIudGltZUZyYW1lIC0gdGhpcy5wcmVwYXJlZE9yZGVyLnRpbWVPZmYNCiAgICApOw0KICAgIHRoaXMucHJlcGFyZWRPcmRlci5vcHRpb25FbmQgPQ0KICAgICAgTWF0aC5yb3VuZCh0aGlzLnByZXBhcmVkT3JkZXIub3B0aW9uRW5kIC8gMTAwMCkgKiAxMDAwOw0KICB9DQoNCiAgdGhpcy5lbmRMaW5lLmRyYXcodGhpcy5wcmVwYXJlZE9yZGVyLm9wdGlvbkVuZCk7DQoNCiAgdmFyIHRleHQgPSBtb21lbnQodGhpcy5wcmVwYXJlZE9yZGVyLm9wdGlvbkVuZCAtIERhdGUubm93KCkpDQogICAgLnV0YygpDQogICAgLmZvcm1hdCh0aGlzLmNvbmZpZy5jbG9jay5mb3JtYXQpOw0KICB0aGlzLm1haW5DYW52YXNDdHguZm9udCA9IHRoaXMuY29uZmlnLmNsb2NrLmZvbnQ7DQogIHZhciB3MSA9IHRoaXMubWFpbkNhbnZhc0N0eC5tZWFzdXJlVGV4dCh0ZXh0KS53aWR0aDsNCiAgdGhpcy5tYWluQ2FudmFzQ3R4LmZpbGxTdHlsZSA9IHRoaXMuY29uZmlnLmNoYXJ0LmJnOw0KDQogIHRoaXMubWFpbkNhbnZhc0N0eC5maWxsUmVjdCh0aGlzLndpZHRoIC8gMiAtIDIgLSB3MSAvIDIsIDAsIHcxLCAzMCk7DQoNCiAgdGhpcy5tYWluQ2FudmFzQ3R4LmJlZ2luUGF0aCgpOw0KICB0aGlzLm1haW5DYW52YXNDdHguZmlsbFN0eWxlID0gdGhpcy5jb25maWcuY2xvY2suY29sb3I7DQogIHRoaXMubWFpbkNhbnZhc0N0eC50ZXh0QWxpZ24gPSAiY2VudGVyIjsNCiAgdGhpcy5tYWluQ2FudmFzQ3R4LmZpbGxUZXh0KHRleHQsIHRoaXMud2lkdGggLyAyIC0gMiwgMzApOw0KDQogIHZhciBvcmRlckJ1ZiA9IFtdOw0KICB2YXIgb3JkZXIgPSB0aGlzLm9yZGVycy5wb3AoKTsNCiAgdmFyIGNsb3NlZE9yZCA9IFtdOw0KICB3aGlsZSAob3JkZXIpIHsNCiAgICBpZiAodGhpcy5ub3cgPCBvcmRlci5lbmRUaW1lKSB7DQogICAgICBvcmRlckJ1Zi51bnNoaWZ0KG9yZGVyKTsNCiAgICAgIHZhciBjb2xvcjsNCiAgICAgIGlmIChvcmRlci5jYWxsKSB7DQogICAgICAgIGNvbG9yID0gdGhpcy5jb25maWcub3JkZXIuY2FsbC5jb2xvcjsNCiAgICAgIH0gZWxzZSB7DQogICAgICAgIGNvbG9yID0gdGhpcy5jb25maWcub3JkZXIucHV0LmNvbG9yOw0KICAgICAgfQ0KICAgICAgbmV3IEVuZExpbmUodGhpcy5tYWluQ2FudmFzQ3R4LCB0aGlzLCB7DQogICAgICAgIGxpbmVTdHlsZTogY29sb3IsDQogICAgICAgIGJnU3R5bGU6IHRoaXMuY29uZmlnLnRpbWVMaW5lLmJnLA0KICAgICAgICBsaW5lRGFzaDogdGhpcy5jb25maWcub3JkZXIubGluZURhc2gNCiAgICAgIH0pLmRyYXcoDQogICAgICAgIG9yZGVyLmVuZFRpbWUsDQogICAgICAgIG9yZGVyLm9wZW5QcmljZS50b0ZpeGVkKDUpLA0KICAgICAgICBvcmRlci5jYWxsLA0KICAgICAgICBvcmRlci5zdGFydFRpbWUsDQogICAgICAgIG9yZGVyLmVuZFRpbWUsDQogICAgICAgIG9yZGVyLmFtb3VudC50b0ZpeGVkKDIpICsgIiAiICsgb3JkZXIuY3VycmVuY3kNCiAgICAgICk7DQogICAgfSBlbHNlIHsNCiAgICAgIGNsb3NlZE9yZC5wdXNoKG9yZGVyKTsNCiAgICB9DQogICAgb3JkZXIgPSB0aGlzLm9yZGVycy5wb3AoKTsNCiAgfQ0KICBpZiAoY2xvc2VkT3JkLmxlbmd0aCA+IDApIHsNCiAgICB2YXIgY3AgPSB0aGlzLmNhbmRsZXNbMF07DQogICAgb3JkZXIgPSBjbG9zZWRPcmQucG9wKCk7DQogICAgdmFyIHdpbiA9IDA7DQogICAgd2hpbGUgKG9yZGVyKSB7DQogICAgICBpZiAob3JkZXIuY2FsbCAmJiBvcmRlci5vcGVuUHJpY2UgPCBjcC5jbG9zZSkgew0KICAgICAgICB3aW4gKz0gOTsNCiAgICAgIH0gZWxzZSBpZiAoIW9yZGVyLmNhbGwgJiYgb3JkZXIub3BlblByaWNlID4gY3AuY2xvc2UpIHsNCiAgICAgICAgd2luICs9IDk7DQogICAgICB9IGVsc2UgaWYgKG9yZGVyLm9wZW5QcmljZSA9PT0gY3AuY2xvc2UpIHsNCiAgICAgICAgd2luICs9IDA7DQogICAgICB9IGVsc2Ugew0KICAgICAgICB3aW4gLT0gMTA7DQogICAgICB9DQogICAgICBvcmRlciA9IGNsb3NlZE9yZC5wb3AoKTsNCiAgICB9DQogICAgdmFyIGUxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNoYXJ0LWhvbGRlciIpOw0KDQogICAgdmFyIGUyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndpbl9hbXQiKTsNCiAgICBlMi5pbm5lckhUTUwgPSB3aW47DQoNCiAgICBpZiAod2luID49IDApIHsNCiAgICAgIGUxLmNsYXNzTmFtZSArPSAiIGRlYWwtZmluaXNoZWQiOw0KICAgIH0gZWxzZSB7DQogICAgICBlMS5jbGFzc05hbWUgKz0gIiBkZWFsLWZpbmlzaGVkIGxvb3NlIjsNCiAgICB9DQogIH0NCg0KICBvcmRlciA9IHRoaXMudG9PcmRlcnNDbG9zZWQucG9wKCk7DQogIHdoaWxlIChvcmRlcikgew0KICAgIHRoaXMub3JkZXJzQ2xvc2VkW29yZGVyLmVuZFRpbWVdLmNvdW50Kys7DQogICAgdGhpcy5vcmRlcnNDbG9zZWRbb3JkZXIuZW5kVGltZV0uYW1vdW50ICs9IG9yZGVyLnByb2ZpdDsNCiAgICBvcmRlciA9IHRoaXMudG9PcmRlcnNDbG9zZWQucG9wKCk7DQogIH0NCiAgZm9yICh2YXIgb3JkZXJJZCBpbiB0aGlzLm9yZGVyc0Nsb3NlZCkgew0KICAgIGlmICh0aGlzLm9yZGVyc0Nsb3NlZC5oYXNPd25Qcm9wZXJ0eShvcmRlcklkKSkgew0KICAgICAgdGhpcy5vcmRlcnNDbG9zZWRbb3JkZXJJZF0uZHJhdygpOw0KICAgIH0NCiAgfQ0KDQogIHRoaXMub3JkZXJzID0gb3JkZXJCdWY7DQoNCiAgdGhpcy5tb3VzZVBvc1ByaWNlLmRyYXcoDQogICAgY2FuZGxlLmNsb3NlLA0KICAgIHRoaXMuZ2V0WShjYW5kbGUuY2xvc2UpLA0KICAgIHRoaXMuY29uZmlnLmN1cnJlbnRQcmljZS5iZw0KICApOw0KDQogIGlmICgNCiAgICB0aGlzLm1vdXNlWSA+IDEwICYmDQogICAgdGhpcy5tb3VzZVkgPCB0aGlzLmhlaWdodCAtIDEwICYmDQogICAgdGhpcy5tb3VzZVggPiAxMCAmJg0KICAgIHRoaXMubW91c2VYIDwgdGhpcy53aWR0aCAtIDEwDQogICkgew0KICAgIHRoaXMubW91c2VQb3NQcmljZS5kcmF3KA0KICAgICAgdGhpcy5nZXRQcmljZSh0aGlzLm1vdXNlWSksDQogICAgICB0aGlzLm1vdXNlWSwNCiAgICAgIHRoaXMuY29uZmlnLm1vdXNlUG9zLmJnDQogICAgKTsNCiAgICB0aGlzLm1vdXNlUG9zVGltZS5kcmF3KHRoaXMuZ2V0VGltZSh0aGlzLm1vdXNlWCkpOw0KICB9DQogIGlmICghdGhpcy5kcmFnZ2luZyAmJiBNYXRoLmFicyh0aGlzLnNwZWVkKSA+IDIpIHsNCiAgICB0aGlzLnNwZWVkIC09IHRoaXMuc3BlZWQgLyAyMDsNCiAgICB0aGlzLnNjcm9sbFgodGhpcy5zcGVlZCk7DQogIH0NCg0KICB0aGlzLmNsaWNrID0gdGhpcy50b0NsaWNrOw0KICB0aGlzLnRvQ2xpY2sgPSBbXTsNCn07DQpDaGFydC5wcm90b3R5cGUuZHJhd1ByaWNlcyA9IGZ1bmN0aW9uKCkgew0KICB2YXIgY3R4ID0gdGhpcy5tYWluQ2FudmFzQ3R4Ow0KICBjdHguc2F2ZSgpOw0KICB2YXIgc3RlcCA9IDc1Ow0KICBjdHguZm9udCA9IHRoaXMuY29uZmlnLnByaWNlTGluZS50ZXh0LmZvbnQ7DQogIGZvciAodmFyIHB5ID0gc3RlcDsgcHkgPCB0aGlzLmhlaWdodDsgcHkgKz0gc3RlcCkgew0KICAgIGN0eC5iZWdpblBhdGgoKTsNCiAgICBjdHgubW92ZVRvKDAsIHB5KTsNCiAgICBjdHgubGluZVRvKHRoaXMud2lkdGgsIHB5KTsNCiAgICBjdHguc3Ryb2tlU3R5bGUgPSB0aGlzLmNvbmZpZy5wcmljZUxpbmUubGluZS5jb2xvcjsNCiAgICBjdHgubGluZVdpZHRoID0gMTsNCiAgICBjdHguc2V0TGluZURhc2godGhpcy5jb25maWcucHJpY2VMaW5lLmxpbmUubGluZURhc2gpOw0KICAgIGN0eC5zdHJva2UoKTsNCiAgICBjdHguYmVnaW5QYXRoKCk7DQogICAgY3R4LmZpbGxTdHlsZSA9IHRoaXMuY29uZmlnLnByaWNlTGluZS50ZXh0LmNvbG9yOw0KICAgIGN0eC50ZXh0QWxpZ24gPSAicmlnaHQiOw0KICAgIGN0eC5maWxsVGV4dCh0aGlzLmdldFByaWNlKHB5KS50b0ZpeGVkKDUpLCB0aGlzLndpZHRoIC0gMTAsIHB5IC0gNSk7DQogIH0NCiAgY3R4LnJlc3RvcmUoKTsNCn07DQpDaGFydC5wcm90b3R5cGUuZHJhd1RpbWVzID0gZnVuY3Rpb24oKSB7DQogIHZhciBjdHggPSB0aGlzLm1haW5DYW52YXNDdHg7DQogIHZhciBzdGVwID0gNzU7DQogIGN0eC5zYXZlKCk7DQogIGN0eC5maWxsU3R5bGUgPSB0aGlzLmNvbmZpZy50aW1lTGluZS5iZzsNCiAgY3R4Lm1vdmVUbygwLCB0aGlzLmhlaWdodCk7DQogIGN0eC5saW5lVG8oMCwgdGhpcy5oZWlnaHQgLSAyMCk7DQogIGN0eC5saW5lVG8odGhpcy53aWR0aCwgdGhpcy5oZWlnaHQgLSAyMCk7DQogIGN0eC5saW5lVG8odGhpcy53aWR0aCwgdGhpcy5oZWlnaHQpOw0KICBjdHgubGluZVRvKDAsIHRoaXMuaGVpZ2h0KTsNCiAgY3R4LmZpbGwoKTsNCg0KICBmb3IgKHZhciBweCA9IHN0ZXA7IHB4IDwgdGhpcy53aWR0aDsgcHggKz0gc3RlcCkgew0KICAgIGN0eC5iZWdpblBhdGgoKTsNCiAgICBjdHgubW92ZVRvKHB4LCAyMCk7DQogICAgY3R4LmxpbmVUbyhweCwgdGhpcy5oZWlnaHQgLSAyMCk7DQogICAgY3R4LnN0cm9rZVN0eWxlID0gdGhpcy5jb25maWcudGltZUxpbmUubGluZS5jb2xvcjsNCiAgICBjdHgubGluZVdpZHRoID0gMTsNCiAgICBjdHguc2V0TGluZURhc2godGhpcy5jb25maWcudGltZUxpbmUubGluZS5saW5lRGFzaCk7DQogICAgY3R4LnN0cm9rZSgpOw0KICAgIGN0eC5iZWdpblBhdGgoKTsNCiAgICBjdHguZm9udCA9IHRoaXMuY29uZmlnLnRpbWVMaW5lLnRleHQuZm9udDsNCiAgICBjdHguZmlsbFN0eWxlID0gdGhpcy5jb25maWcudGltZUxpbmUudGV4dC5jb2xvcjsNCiAgICBjdHgudGV4dEFsaWduID0gImNlbnRlciI7DQogICAgY3R4LmZpbGxUZXh0KA0KICAgICAgbW9tZW50KHRoaXMuZ2V0VGltZShweCkpDQogICAgICAgIC51dGMoKQ0KICAgICAgICAuZm9ybWF0KHRoaXMuY29uZmlnLnRpbWVMaW5lLnRleHQuZm9ybWF0KSwNCiAgICAgIHB4LA0KICAgICAgdGhpcy5oZWlnaHQgLSA1DQogICAgKTsNCiAgfQ0KICBjdHgucmVzdG9yZSgpOw0KfTsNCg0KQ2hhcnQucHJvdG90eXBlLmRyYXdDYW5kbGVzID0gZnVuY3Rpb24oKSB7DQogIGlmICghdGhpcy5tYWluQ2FudmFzQ3R4KSB7DQogICAgcmV0dXJuOw0KICB9DQogIC8vdmFyIGNhbmRsZXMgPSB0aGlzLmNhbmRsZXM7DQogIHRoaXMuY2FuZGxlc1Nob3cgPSBbXTsNCiAgZm9yICgNCiAgICB2YXIgY2kgPSB0aGlzLmNhbmRsZXNPZmZzZXQ7DQogICAgY2kgPj0gdGhpcy5jYW5kbGVzT2Zmc2V0IC0gdGhpcy5jYW5kbGVzUGVyUGFnZSAmJiBjaSA+PSAwOw0KICAgIGNpLS0NCiAgKSB7DQogICAgdmFyIGNhbmRsZTIgPSB0aGlzLmNhbmRsZXNbY2ldOw0KICAgIGlmIChjYW5kbGUyKSB7DQogICAgICB0aGlzLmNhbmRsZXNTaG93LnB1c2goY2FuZGxlMik7DQogICAgfSBlbHNlIHsNCiAgICAgIHRoaXMuY2FuZGxlc1Nob3cucHVzaCh0aGlzLmNhbmRsZXNbdGhpcy5jYW5kbGVzLmxlbmd0aCAtIDFdKTsNCiAgICB9DQogIH0NCiAgaWYgKHRoaXMuY2FuZGxlc1Nob3cubGVuZ3RoID09IDApIHsNCiAgICByZXR1cm47DQogIH0NCg0KICB2YXIgbWluUHJpY2UgPSB0aGlzLmNhbmRsZXNTaG93WzBdLm1pbjsNCiAgdmFyIG1heFByaWNlID0gdGhpcy5jYW5kbGVzU2hvd1swXS5tYXg7DQogIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5jYW5kbGVzU2hvdy5sZW5ndGg7IGkrKykgew0KICAgIHZhciBjYW5kbGUgPSB0aGlzLmNhbmRsZXNTaG93W2ldOw0KICAgIGNhbmRsZS5kcmF3KHRoaXMubWFpbkNhbnZhc0N0eCwgdGhpcywgaSwgdGhpcy5jYW5kbGVzU2hvdy5sZW5ndGgpOw0KICAgIGlmIChtaW5QcmljZSA+IGNhbmRsZS5taW4pIHsNCiAgICAgIG1pblByaWNlID0gY2FuZGxlLm1pbjsNCiAgICB9DQogICAgaWYgKG1heFByaWNlIDwgY2FuZGxlLm1heCkgew0KICAgICAgbWF4UHJpY2UgPSBjYW5kbGUubWF4Ow0KICAgIH0NCiAgfQ0KICB2YXIgbENhbmRsZSA9IHRoaXMuY2FuZGxlc1Nob3dbdGhpcy5jYW5kbGVzU2hvdy5sZW5ndGggLSAxXTsNCiAgaWYgKHRoaXMubGFzdERyYWcgKyAyMDAwIDwgdGhpcy5ub3cgJiYgbENhbmRsZS5wb3NYID4gdGhpcy53aWR0aCAqIDAuNzUpIHsNCiAgICBpZiAoDQogICAgICB0aGlzLmNhbmRsZXNPZmZzZXQgPA0KICAgICAgdGhpcy53aWR0aCAvICh0aGlzLmNhbmRsZXNGcmVlU3BhY2UgKiAyICsgdGhpcy5jYW5kbGVXaWR0aCkNCiAgICApIHsNCiAgICAgIHRoaXMubGFzdERyYWcgPSB0aGlzLm5vdzsNCiAgICAgIHRoaXMuc3BlZWQgLT0NCiAgICAgICAgTWF0aC5hYnMobENhbmRsZS5wb3NYIC0gdGhpcy53aWR0aCAqIDAuNSkgLw0KICAgICAgICAodGhpcy5jYW5kbGVXaWR0aCArIHRoaXMuY2FuZGxlc0ZyZWVTcGFjZSAqIDIpOw0KICAgIH0gZWxzZSBpZiAodGhpcy5ub3cgLSB0aGlzLmxhc3REcmF3ID4gMTAwMCkgew0KICAgICAgdGhpcy5sYXN0RHJhZyA9IHRoaXMubm93Ow0KICAgICAgdGhpcy5jYW5kbGVzT2Zmc2V0ID0gNTsNCiAgICB9DQogIH0NCiAgdGhpcy5sYXN0RHJhdyA9IHRoaXMubm93Ow0KDQogIHZhciBkaWYgPSBtYXhQcmljZSAtIG1pblByaWNlOw0KICBpZiAoZGlmID09IDApIHsNCiAgICB2YXIgc3BsaXQgPSBtYXhQcmljZS50b1N0cmluZygpLnNwbGl0KCIuIik7DQogICAgaWYgKHNwbGl0Lmxlbmd0aCA9PSAyKSB7DQogICAgICBkaWYgPSBNYXRoLnBvdygwLjEsIHNwbGl0WzFdLmxlbmd0aCk7DQogICAgfSBlbHNlIHsNCiAgICAgIGRpZiA9IDE7DQogICAgfQ0KICB9DQogIG1heFByaWNlID0gbWF4UHJpY2UgKyBkaWYgKiAwLjI7DQogIG1pblByaWNlID0gbWluUHJpY2UgLSBkaWYgKiAwLjE1Ow0KICBpZiAodGhpcy5taW5QcmljZSAmJiB0aGlzLm1heFByaWNlKSB7DQogICAgdGhpcy5taW5QcmljZSAtPSAodGhpcy5taW5QcmljZSAtIG1pblByaWNlKSAvIDU7DQogICAgdGhpcy5tYXhQcmljZSAtPSAodGhpcy5tYXhQcmljZSAtIG1heFByaWNlKSAvIDU7DQogIH0gZWxzZSB7DQogICAgdGhpcy5taW5QcmljZSA9IG1pblByaWNlOw0KICAgIHRoaXMubWF4UHJpY2UgPSBtYXhQcmljZTsNCiAgfQ0KICBkaWYgPSB0aGlzLm1heFByaWNlIC0gdGhpcy5taW5QcmljZTsNCg0KICB0aGlzLnByaWNlUHkgPSB0aGlzLmNsaWVudEhlaWdodCAvIGRpZjsNCiAgdGhpcy5wcmljZU9mZnNldCA9IHRoaXMubWluUHJpY2UgKiB0aGlzLnByaWNlUHk7DQp9Ow0KQ2hhcnQucHJvdG90eXBlLnJlZ0NsaWNrID0gZnVuY3Rpb24oY2xpY2tNZSkgew0KICB0aGlzLnRvQ2xpY2sucHVzaChjbGlja01lKTsNCn07DQpDaGFydC5wcm90b3R5cGUub25UaWNrID0gZnVuY3Rpb24odGljaykgew0KICB2YXIgY2FuZGxlID0gdGhpcy5jYW5kbGVzWzBdOw0KICBpZiAoY2FuZGxlICYmIGNhbmRsZS50aW1lSWQgPT0gTWF0aC5mbG9vcih0aWNrLnRpbWVJZCAvIDEwMDApICogMTAwMCkgew0KICAgIGlmIChjYW5kbGUuZmFrZSkgew0KICAgICAgY2FuZGxlLmZha2UgPSBmYWxzZTsNCiAgICAgIGNhbmRsZS5vcGVuID0gdGljay5hdmc7DQogICAgICBjYW5kbGUub3BlblRvID0gdGljay5hdmc7DQogICAgICBjYW5kbGUubWluVG8gPSB0aWNrLmF2ZzsNCiAgICAgIGNhbmRsZS5tYXhUbyA9IHRpY2suYXZnOw0KICAgICAgY2FuZGxlLmNsb3NlVG8gPSB0aWNrLmF2ZzsNCiAgICAgIGNhbmRsZS5hbmltYXRpb24gPSAxOw0KICAgIH0NCiAgICBjYW5kbGUuYW5pbWF0aW9uID0gMTsNCiAgICBjYW5kbGUuY2xvc2VUbyA9IHRpY2suYXZnOw0KICAgIGlmIChjYW5kbGUubWF4IDwgdGljay5hdmcpIHsNCiAgICAgIGNhbmRsZS5tYXhUbyA9IHRpY2suYXZnOw0KICAgICAgY2FuZGxlLm1heCA9IHRpY2suYXZnOw0KICAgIH0gZWxzZSBpZiAoY2FuZGxlLm1pbiA+IHRpY2suYXZnKSB7DQogICAgICBjYW5kbGUubWluVG8gPSB0aWNrLmF2ZzsNCiAgICAgIGNhbmRsZS5taW4gPSB0aWNrLmF2ZzsNCiAgICB9DQogIH0NCn07DQpDaGFydC5wcm90b3R5cGUuX2FkZENhbmRsZSA9IGZ1bmN0aW9uKGNhbmRsZSkgew0KICB2YXIgY247DQogIGlmIChjYW5kbGUgaW5zdGFuY2VvZiBDYW5kbGUpIHsNCiAgICBjbiA9IGNhbmRsZTsNCiAgfSBlbHNlIHsNCiAgICBjbiA9IG5ldyBDYW5kbGUoDQogICAgICBjYW5kbGUudGltZUlkLA0KICAgICAgY2FuZGxlLm9wZW4sDQogICAgICBjYW5kbGUuY2xvc2UsDQogICAgICBjYW5kbGUubWluLA0KICAgICAgY2FuZGxlLm1heA0KICAgICk7DQogIH0NCiAgaWYgKHRoaXMuY2FuZGxlcy5sZW5ndGggPT0gMCkgew0KICAgIHRoaXMuY2FuZGxlcy5wdXNoKGNuKTsNCiAgfSBlbHNlIGlmICh0aGlzLmNhbmRsZXNbMF0udGltZUlkIDwgY24udGltZUlkKSB7DQogICAgdGhpcy5jYW5kbGVzLnVuc2hpZnQoY24pOw0KICAgIHRoaXMuY2FuZGxlc09mZnNldCsrOw0KICB9IGVsc2UgaWYgKHRoaXMuY2FuZGxlc1t0aGlzLmNhbmRsZXMubGVuZ3RoIC0gMV0udGltZUlkID4gY24udGltZUlkKSB7DQogICAgdGhpcy5jYW5kbGVzLnB1c2goY24pOw0KICB9IGVsc2Ugew0KICAgIGZvciAodmFyIGkgPSAwOyBpIDwgMzA7IGkrKykgew0KICAgICAgaWYgKHRoaXMuY2FuZGxlc1tpXSAmJiB0aGlzLmNhbmRsZXNbaV0udGltZUlkID09IGNuLnRpbWVJZCkgew0KICAgICAgICB2YXIgb2xkID0gdGhpcy5jYW5kbGVzW2ldOw0KDQogICAgICAgIGNuLmFuaW1hdGlvbiA9IDIwMDsNCiAgICAgICAgY24ubWluVG8gPSBjbi5taW47DQogICAgICAgIGNuLm1heFRvID0gY24ubWF4Ow0KICAgICAgICBjbi5vcGVuVG8gPSBjbi5vcGVuOw0KICAgICAgICBjbi5jbG9zZVRvID0gY24uY2xvc2U7DQogICAgICAgIGNuLmNsb3NlID0gb2xkLmNsb3NlOw0KICAgICAgICB0aGlzLmNhbmRsZXNbaV0gPSBjbjsNCiAgICAgICAgYnJlYWs7DQogICAgICB9DQogICAgfQ0KICB9DQp9Ow0KQ2hhcnQucHJvdG90eXBlLmFkZENhbmRsZXMgPSBmdW5jdGlvbihjYW5kbGVzKSB7DQogIHZhciAkdGhpcyA9IHRoaXM7DQogIGlmIChjYW5kbGVzIGluc3RhbmNlb2YgQXJyYXkpIHsNCiAgICBjYW5kbGVzLmZvckVhY2goZnVuY3Rpb24oY2FuZGxlKSB7DQogICAgICAkdGhpcy5fYWRkQ2FuZGxlKGNhbmRsZSk7DQogICAgfSk7DQogIH0gZWxzZSB7DQogICAgJHRoaXMuX2FkZENhbmRsZShjYW5kbGVzKTsNCiAgfQ0KfTsNCg0KZnVuY3Rpb24gVGltZUxpbmUoY3R4LCBjaGFydCkgew0KICB0aGlzLmN0eCA9IGN0eDsNCiAgdGhpcy5jaGFydCA9IGNoYXJ0Ow0KfQ0KVGltZUxpbmUucHJvdG90eXBlLmRyYXcgPSBmdW5jdGlvbih0aW1lKSB7DQogIHRoaXMuY3R4LmJlZ2luUGF0aCgpOw0KICB0aGlzLmN0eC5zdHJva2VTdHlsZSA9IHRoaXMuY2hhcnQuY29uZmlnLmN1cnJlbnRUaW1lLmxpbmUuY29sb3I7DQogIHRoaXMuY3R4LmxpbmVXaWR0aCA9IDE7DQoNCiAgdGhpcy5jdHgubW92ZVRvKHRoaXMuY2hhcnQubW91c2VYLCAwKTsNCiAgdGhpcy5jdHgubGluZVRvKHRoaXMuY2hhcnQubW91c2VYLCB0aGlzLmNoYXJ0LmhlaWdodCk7DQogIHRoaXMuY3R4LnN0cm9rZSgpOw0KDQogIHRoaXMuY3R4LmJlZ2luUGF0aCgpOw0KICB2YXIgcGFnZ2luZyA9IDEwOw0KICB2YXIgaGVpZ2h0ID0gMjA7DQoNCiAgdmFyIHRleHQgPSBtb21lbnQodGltZSkNCiAgICAudXRjKCkNCiAgICAuZm9ybWF0KHRoaXMuY2hhcnQuY29uZmlnLmN1cnJlbnRUaW1lLnRleHQuZm9ybWF0KTsNCiAgdmFyIHcxID0gdGhpcy5jdHgubWVhc3VyZVRleHQodGV4dCkud2lkdGg7DQogIHRoaXMuY3R4LmJlZ2luUGF0aCgpOw0KICB0aGlzLmN0eC5maWxsU3R5bGUgPSB0aGlzLmNoYXJ0LmNvbmZpZy5jdXJyZW50VGltZS50ZXh0LmJnOw0KICB0aGlzLmN0eC5maWxsUmVjdCgNCiAgICB0aGlzLmNoYXJ0Lm1vdXNlWCAtIHcxIC8gMiAtIHBhZ2dpbmcsDQogICAgdGhpcy5jaGFydC5oZWlnaHQgLSBoZWlnaHQsDQogICAgdzEgKyBwYWdnaW5nICsgcGFnZ2luZywNCiAgICBoZWlnaHQNCiAgKTsNCg0KICB0aGlzLmN0eC5maWxsU3R5bGUgPSB0aGlzLmNoYXJ0LmNvbmZpZy5jdXJyZW50VGltZS50ZXh0LmNvbG9yOw0KDQogIHRoaXMuY3R4LmZvbnQgPSB0aGlzLmNoYXJ0LmNvbmZpZy5jdXJyZW50VGltZS50ZXh0LmZvbnQ7DQogIHRoaXMuY3R4LnRleHRBbGlnbiA9ICJjZW50ZXIiOw0KICB0aGlzLmN0eC5maWxsVGV4dCh0ZXh0LCB0aGlzLmNoYXJ0Lm1vdXNlWCwgdGhpcy5jaGFydC5oZWlnaHQgLSA1KTsNCn07DQoNCmZ1bmN0aW9uIFByaWNlTGluZShjdHgsIGNoYXJ0KSB7DQogIHRoaXMuY3R4ID0gY3R4Ow0KICB0aGlzLmNoYXJ0ID0gY2hhcnQ7DQp9DQoNClByaWNlTGluZS5wcm90b3R5cGUuZHJhdyA9IGZ1bmN0aW9uKHByaWNlLCBhdmdQeCwgYmdDb2xvcikgew0KICAvL3ZhciBhdmdQeCA9IHRoaXMuY2hhcnQuZ2V0WShwcmljZSk7DQogIC8vdmFyIGF2Z1B4ID0gdGhpcy5jaGFydC5tb3VzZVk7DQogIHRoaXMuY3R4LmJlZ2luUGF0aCgpOw0KICB0aGlzLmN0eC5zdHJva2VTdHlsZSA9IGJnQ29sb3I7DQogIHRoaXMuY3R4LmxpbmVXaWR0aCA9IDE7DQogIHRoaXMuY3R4Lm1vdmVUbygwLCBhdmdQeCk7DQogIHRoaXMuY3R4LmxpbmVUbyh0aGlzLmNoYXJ0LndpZHRoIC0gMTAsIGF2Z1B4KTsNCiAgdGhpcy5jdHguc3Ryb2tlKCk7DQoNCiAgdGhpcy5jdHgubW92ZVRvKHRoaXMuY2hhcnQud2lkdGggLSA5MCwgYXZnUHgpOw0KICAvLyAgICAgICAgdGhpcy5jdHgubGluZVRvKHRoaXMuY2hhcnQud2lkdGggLSA4NSwgYXZnUHggKyA1KTsNCiAgdGhpcy5jdHgubGluZVRvKHRoaXMuY2hhcnQud2lkdGggLSA4NSwgYXZnUHggKyAxMik7DQogIHRoaXMuY3R4LmxpbmVUbyh0aGlzLmNoYXJ0LndpZHRoIC0gMTAsIGF2Z1B4ICsgMTIpOw0KICB0aGlzLmN0eC5saW5lVG8odGhpcy5jaGFydC53aWR0aCAtIDEwLCBhdmdQeCAtIDEyKTsNCiAgdGhpcy5jdHgubGluZVRvKHRoaXMuY2hhcnQud2lkdGggLSA4NSwgYXZnUHggLSAxMik7DQogIC8vICAgICAgICB0aGlzLmN0eC5saW5lVG8odGhpcy5jaGFydC53aWR0aCAtIDg1LCBhdmdQeCAtIDUpOw0KICB0aGlzLmN0eC5maWxsU3R5bGUgPSBiZ0NvbG9yOw0KICB0aGlzLmN0eC5maWxsKCk7DQoNCiAgdGhpcy5jdHguZm9udCA9IHRoaXMuY2hhcnQuY29uZmlnLmN1cnJlbnRQcmljZS50ZXh0LmZvbnQ7DQogIHRoaXMuY3R4LmZpbGxTdHlsZSA9IHRoaXMuY2hhcnQuY29uZmlnLmN1cnJlbnRQcmljZS50ZXh0LmNvbG9yOw0KICB0aGlzLmN0eC50ZXh0QWxpZ24gPSAibGVmdCI7DQogIHRoaXMuY3R4LmZpbGxUZXh0KHByaWNlLnRvRml4ZWQoNSksIHRoaXMuY2hhcnQud2lkdGggLSA4MCwgYXZnUHggKyA0KTsNCn07DQpmdW5jdGlvbiBFbmRMaW5lKGN0eCwgY2hhcnQsIGNvbmZpZykgew0KICB0aGlzLmN0eCA9IGN0eDsNCiAgdGhpcy5jaGFydCA9IGNoYXJ0Ow0KICBpZiAoY29uZmlnKSB7DQogICAgaWYgKGNvbmZpZy5iZ1N0eWxlKSB7DQogICAgfQ0KICAgIGlmIChjb25maWcuYmdTdHlsZSkgew0KICAgICAgdGhpcy5iZ1N0eWxlID0gY29uZmlnLmJnU3R5bGU7DQogICAgfQ0KICAgIGlmIChjb25maWcubGluZURhc2gpIHsNCiAgICAgIHRoaXMubGluZURhc2ggPSBjb25maWcubGluZURhc2g7DQogICAgfQ0KICAgIGlmIChjb25maWcubGluZVN0eWxlKSB7DQogICAgICB0aGlzLmxpbmVTdHlsZSA9IGNvbmZpZy5saW5lU3R5bGU7DQogICAgfQ0KICAgIGlmIChjb25maWcubGluZU5hbWUpIHsNCiAgICAgIHRoaXMubGluZU5hbWUgPSBjb25maWcubGluZU5hbWU7DQogICAgfQ0KICAgIGlmIChjb25maWcuZGlzcGxheVRpbWUpIHsNCiAgICAgIHRoaXMuZGlzcGxheVRpbWUgPSBjb25maWcuZGlzcGxheVRpbWU7DQogICAgfQ0KICB9DQp9DQpFbmRMaW5lLnByb3RvdHlwZS5kcmF3ID0gZnVuY3Rpb24oDQogIHRpbWUsDQogIHByaWNlLA0KICBjYWxsLA0KICBzdGFydFRpbWUsDQogIGVuZFRpbWUsDQogIGFtb3VudA0KKSB7DQogIHRoaXMuY3R4LnNhdmUoKTsNCiAgdGhpcy5jdHguYmVnaW5QYXRoKCk7DQogIHZhciB0aW1lVG9DbG9zZSA9IHRpbWU7DQogIHZhciB0VmFsMiA9IHRoaXMuY2hhcnQuZ2V0WCh0aW1lKTsNCiAgdGhpcy5jdHgubW92ZVRvKHRWYWwyLCAwKTsNCiAgdGhpcy5jdHgubGluZVRvKHRWYWwyLCB0aGlzLmNoYXJ0LmhlaWdodCAtIDIwKTsNCiAgdGhpcy5jdHguc3Ryb2tlU3R5bGUgPSB0aGlzLmxpbmVTdHlsZTsNCiAgdGhpcy5jdHgubGluZVdpZHRoID0gMTsNCiAgaWYgKHRoaXMubGluZURhc2gpIHsNCiAgICB0aGlzLmN0eC5zZXRMaW5lRGFzaCh0aGlzLmxpbmVEYXNoKTsNCiAgfQ0KDQogIHRoaXMuY3R4LnN0cm9rZSgpOw0KICBpZiAodGhpcy5saW5lTmFtZSkgew0KICAgIHRoaXMuY3R4LmRyYXdJbWFnZSh0aGlzLmxpbmVOYW1lLCB0VmFsMiAtIDI1LCB0aGlzLmNoYXJ0LmhlaWdodCAtIDE0NSk7DQogIH0NCg0KICB0aGlzLmN0eC5iZWdpblBhdGgoKTsNCiAgdmFyIG51bWJlciA9IHRpbWVUb0Nsb3NlIC0gdGhpcy5jaGFydC5ub3c7DQogIGlmIChudW1iZXIgPCAwKSB7DQogICAgbnVtYmVyID0gMDsNCiAgfQ0KDQogIHRoaXMuY3R4LnJlc3RvcmUoKTsNCiAgaWYgKHByaWNlKSB7DQogICAgdGhpcy5jdHguYmVnaW5QYXRoKCk7DQogICAgdGhpcy5jdHguZm9udCA9IHRoaXMuY2hhcnQuY29uZmlnLm9yZGVyLnRpbWUuZm9udDsNCiAgICB2YXIgY2xvc2VUZXh0ID0gbW9tZW50KHRpbWUpDQogICAgICAudXRjKCkNCiAgICAgIC5mb3JtYXQodGhpcy5jaGFydC5jb25maWcub3JkZXIudGltZS5mb3JtYXQpOw0KICAgIHZhciB3MiA9IHRoaXMuY3R4Lm1lYXN1cmVUZXh0KGNsb3NlVGV4dCk7DQogICAgdGhpcy5jdHguZmlsbFN0eWxlID0gdGhpcy5iZ1N0eWxlOw0KICAgIHRoaXMuY3R4LmZpbGxSZWN0KA0KICAgICAgdFZhbDIgLSB3Mi53aWR0aCAvIDIsDQogICAgICB0aGlzLmNoYXJ0LmhlaWdodCAtIDIwLA0KICAgICAgdzIud2lkdGgsDQogICAgICAyMA0KICAgICk7DQoNCiAgICB0aGlzLmN0eC5iZWdpblBhdGgoKTsNCiAgICB0aGlzLmN0eC5maWxsU3R5bGUgPSB0aGlzLmxpbmVTdHlsZTsNCiAgICB0aGlzLmN0eC50ZXh0QWxpZ24gPSAiY2VudGVyIjsNCg0KICAgIHRoaXMuY3R4LmZpbGxUZXh0KGNsb3NlVGV4dCwgdFZhbDIsIHRoaXMuY2hhcnQuaGVpZ2h0IC0gNSk7DQoNCiAgICB2YXIgc3RhcnRUWCA9IHRoaXMuY2hhcnQuZ2V0WChzdGFydFRpbWUpOw0KICAgIHZhciBlbmRUWCA9IHRoaXMuY2hhcnQuZ2V0WChlbmRUaW1lKTsNCiAgICB2YXIgcHJpY2VZID0gdGhpcy5jaGFydC5nZXRZKHByaWNlKTsNCg0KICAgIC8vY3R4LmFyYyhzdGFydFRYLCBwcmljZVksIDQsIDAsIDIgKiBNYXRoLlBJLCBmYWxzZSk7DQogICAgdGhpcy5jdHguYXJjKGVuZFRYLCBwcmljZVksIDQsIDAsIDIgKiBNYXRoLlBJLCBmYWxzZSk7DQogICAgdGhpcy5jdHguZmlsbFN0eWxlID0gdGhpcy5saW5lU3R5bGU7DQogICAgdGhpcy5jdHguZmlsbCgpOw0KICAgIHRoaXMuY3R4LmJlZ2luUGF0aCgpOw0KICAgIHRoaXMuY3R4Lm1vdmVUbyhzdGFydFRYLCBwcmljZVkpOw0KICAgIGlmIChjYWxsKSB7DQogICAgICB0aGlzLmN0eC5saW5lVG8oc3RhcnRUWCArIDE1LCBwcmljZVkgLSAxNSk7DQogICAgICB0aGlzLmN0eC5saW5lVG8oc3RhcnRUWCArIDMwLCBwcmljZVkpOw0KICAgICAgdGhpcy5jdHgubGluZVRvKHN0YXJ0VFgsIHByaWNlWSk7DQogICAgICB0aGlzLmN0eC5maWxsQ29sb3IgPSB0aGlzLmxpbmVTdHlsZTsNCiAgICAgIHRoaXMuY3R4LmZpbGwoKTsNCiAgICAgIHRoaXMuY3R4LmJlZ2luUGF0aCgpOw0KICAgICAgdGhpcy5jdHguZm9udCA9IHRoaXMuY2hhcnQuY29uZmlnLm9yZGVyLnByaWNlLmZvbnQ7DQogICAgICB0aGlzLmN0eC5maWxsU3R5bGUgPSB0aGlzLmxpbmVTdHlsZTsNCiAgICAgIHRoaXMuY3R4LnRleHRBbGlnbiA9ICJsZWZ0IjsNCiAgICAgIHRoaXMuY3R4LmZpbGxUZXh0KHByaWNlLCBzdGFydFRYICsgMzAsIHByaWNlWSAtIDUpOw0KICAgICAgdGhpcy5jdHguZmlsbFRleHQoYW1vdW50LCBzdGFydFRYICsgMzAsIHByaWNlWSArIDE1KTsNCiAgICB9IGVsc2Ugew0KICAgICAgdGhpcy5jdHgubGluZVRvKHN0YXJ0VFggKyAxNSwgcHJpY2VZICsgMTUpOw0KICAgICAgdGhpcy5jdHgubGluZVRvKHN0YXJ0VFggKyAzMCwgcHJpY2VZKTsNCiAgICAgIHRoaXMuY3R4LmxpbmVUbyhzdGFydFRYLCBwcmljZVkpOw0KICAgICAgdGhpcy5jdHguZmlsbENvbG9yID0gdGhpcy5saW5lU3R5bGU7DQogICAgICB0aGlzLmN0eC5maWxsKCk7DQogICAgICB0aGlzLmN0eC5iZWdpblBhdGgoKTsNCiAgICAgIHRoaXMuY3R4LmZvbnQgPSB0aGlzLmNoYXJ0LmNvbmZpZy5vcmRlci5wcmljZS5mb250Ow0KICAgICAgdGhpcy5jdHguZmlsbFN0eWxlID0gdGhpcy5saW5lU3R5bGU7DQogICAgICB0aGlzLmN0eC50ZXh0QWxpZ24gPSAibGVmdCI7DQogICAgICB0aGlzLmN0eC5maWxsVGV4dChwcmljZSwgc3RhcnRUWCArIDMwLCBwcmljZVkgKyAxNSk7DQogICAgICB0aGlzLmN0eC5maWxsVGV4dChhbW91bnQsIHN0YXJ0VFggKyAzMCwgcHJpY2VZIC0gNSk7DQogICAgfQ0KICAgIHRoaXMuY3R4LmJlZ2luUGF0aCgpOw0KICAgIHRoaXMuY3R4LnN0cm9rZVN0eWxlID0gdGhpcy5saW5lU3R5bGU7DQogICAgdGhpcy5jdHgubGluZVdpZHRoID0gMjsNCiAgICB0aGlzLmN0eC5tb3ZlVG8oc3RhcnRUWCwgcHJpY2VZKTsNCiAgICB0aGlzLmN0eC5saW5lVG8oZW5kVFgsIHByaWNlWSk7DQogICAgdGhpcy5jdHguc3Ryb2tlKCk7DQogIH0NCn07DQoNCmZ1bmN0aW9uIENhbmRsZSh0aW1lSWQsIG9wZW4sIGNsb3NlLCBtaW4sIG1heCwgZmFrZSkgew0KICB0aGlzLnRpbWVJZCA9IHRpbWVJZDsNCiAgdGhpcy5vcGVuID0gb3BlbjsNCiAgdGhpcy5jbG9zZSA9IGNsb3NlOw0KICB0aGlzLm1pbiA9IG1pbjsNCiAgdGhpcy5tYXggPSBtYXg7DQogIHRoaXMucG9zID0gMDsNCiAgdGhpcy5hbmltYXRpb24gPSAwOw0KICB0aGlzLmZha2UgPSBmYWtlOw0KfQ0KQ2FuZGxlLnByb3RvdHlwZS5kcmF3ID0gZnVuY3Rpb24oY3R4LCBjaGFydCwgbnIsIHRvdGFsKSB7DQogIHZhciBvZmZzZXQgPQ0KICAgIG5yICogKGNoYXJ0LmNhbmRsZVdpZHRoICsgMiAqIGNoYXJ0LmNhbmRsZXNGcmVlU3BhY2UpICsgY2hhcnQub2Zmc2V0Ow0KICBpZiAodGhpcy5hbmltYXRpb24gPT0gMCkgew0KICAgIHRoaXMuY2xvc2VUbyA9IHRoaXMuY2xvc2U7DQogICAgdGhpcy5taW5UbyA9IHRoaXMubWluOw0KICAgIHRoaXMubWF4VG8gPSB0aGlzLm1heDsNCiAgICB0aGlzLmNsb3NlID0gdGhpcy5vcGVuOw0KICAgIHRoaXMubWluID0gdGhpcy5vcGVuOw0KICAgIHRoaXMubWF4ID0gdGhpcy5vcGVuOw0KICAgIHRoaXMuZmlyc3QgPSBmYWxzZTsNCiAgfQ0KICBpZiAodGhpcy5hbmltYXRpb24gPT0gMTIwKSB7DQogICAgdGhpcy5jbG9zZSA9IHRoaXMuY2xvc2VUbzsNCiAgICB0aGlzLm1pbiA9IHRoaXMubWluVG87DQogICAgdGhpcy5tYXggPSB0aGlzLm1heFRvOw0KICB9IGVsc2UgaWYgKHRoaXMuYW5pbWF0aW9uIDwgMTIwKSB7DQogICAgdGhpcy5jbG9zZSArPSAodGhpcy5jbG9zZVRvIC0gdGhpcy5jbG9zZSkgLyA1Ow0KICAgIHRoaXMubWluICs9ICh0aGlzLm1pblRvIC0gdGhpcy5taW4pIC8gNTsNCiAgICB0aGlzLm1heCArPSAodGhpcy5tYXhUbyAtIHRoaXMubWF4KSAvIDU7DQogIH0NCiAgdGhpcy5hbmltYXRpb24rKzsNCiAgdGhpcy5wb3NYID0gb2Zmc2V0IC0gY2hhcnQuY2FuZGxlV2lkdGggLSBjaGFydC5jYW5kbGVzRnJlZVNwYWNlICogMjsNCiAgdmFyIGQgPSBjaGFydC5ub3c7DQogIHZhciBtaWxpID0gZCAtIHRoaXMudGltZUlkOw0KICBpZiAobnIgPT0gdG90YWwgLSAxKSB7DQogICAgdmFyIHdUb3RhbCA9DQogICAgICAoY2hhcnQuY2FuZGxlV2lkdGggKyBjaGFydC5jYW5kbGVzRnJlZVNwYWNlICogMikgKiAwLjAwMSAqIG1pbGk7DQogICAgY2hhcnQubGFzdFBvc1ggPQ0KICAgICAgb2Zmc2V0ICsgd1RvdGFsIC0gY2hhcnQuY2FuZGxlV2lkdGggLSBjaGFydC5jYW5kbGVzRnJlZVNwYWNlICogMjsNCiAgfQ0KICB0aGlzLmRyYXdMaW5lKGN0eCwgY2hhcnQsIG9mZnNldCwgbnIsIHRvdGFsKTsNCn07DQpDYW5kbGUucHJvdG90eXBlLmRyYXdMaW5lID0gZnVuY3Rpb24oY3R4LCBjaGFydCwgb2Zmc2V0LCBuciwgdG90YWwpIHsNCiAgaWYgKG5yID09IDApIHsNCiAgICBjdHguYmVnaW5QYXRoKCk7DQogICAgY3R4LnN0cm9rZVN0eWxlID0gY2hhcnQuY29uZmlnLmNoYXJ0LmxpbmVhci5jb2xvcjsNCiAgICBjdHgubGluZVdpZHRoID0gNDsNCiAgICBjdHgubW92ZVRvKHRoaXMucG9zWCwgY2hhcnQuZ2V0WSh0aGlzLm9wZW4pKTsNCiAgfQ0KICBpZiAobnIgPD0gdG90YWwgLSAxKSB7DQogICAgY3R4LmxpbmVUbyh0aGlzLnBvc1gsIGNoYXJ0LmdldFkodGhpcy5vcGVuKSk7DQogIH0NCiAgaWYgKG5yID09IHRvdGFsIC0gMSkgew0KICAgIGN0eC5saW5lVG8oY2hhcnQubGFzdFBvc1gsIGNoYXJ0LmdldFkodGhpcy5jbG9zZSkpOw0KICAgIGN0eC5zdHJva2UoKTsNCg0KICAgIHZhciBncmQgPSBjdHguY3JlYXRlTGluZWFyR3JhZGllbnQoMCwgMCwgMCwgY2hhcnQuaGVpZ2h0IC0gMjApOw0KDQogICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjaGFydC5jb25maWcuY2hhcnQubGluZWFyLmJnLmxlbmd0aDsgaSsrKSB7DQogICAgICBncmQuYWRkQ29sb3JTdG9wKGksIGNoYXJ0LmNvbmZpZy5jaGFydC5saW5lYXIuYmdbaV0pOw0KICAgIH0NCiAgICBjdHguZmlsbFN0eWxlID0gZ3JkOw0KICAgIGN0eC5saW5lVG8oY2hhcnQubGFzdFBvc1gsIGNoYXJ0LmhlaWdodCAtIDIwKTsNCiAgICBjdHgubGluZVRvKDAsIGNoYXJ0LmhlaWdodCAtIDIwKTsNCiAgICBjdHguc2F2ZSgpOw0KICAgIGN0eC5maWxsKCk7DQogICAgY3R4LnJlc3RvcmUoKTsNCg0KICAgIGN0eC5zYXZlKCk7DQogICAgY3R4LmJlZ2luUGF0aCgpOw0KICAgIGN0eC5zaGFkb3dDb2xvciA9IGNoYXJ0LmNvbmZpZy5jaGFydC5saW5lYXIucG9pbnQuc2hhZG93Ow0KICAgIGN0eC5maWxsU3R5bGUgPSBjaGFydC5jb25maWcuY2hhcnQubGluZWFyLnBvaW50LmJnOw0KICAgIGlmIChjaGFydC5ibHVyUGx1cykgew0KICAgICAgY2hhcnQuYmx1ciArPSA0MCAvIDYwOw0KICAgICAgaWYgKGNoYXJ0LmJsdXIgPiAyMCkgew0KICAgICAgICBjaGFydC5ibHVyUGx1cyA9IGZhbHNlOw0KICAgICAgfQ0KICAgIH0gZWxzZSB7DQogICAgICBjaGFydC5ibHVyIC09IDQwIC8gNjA7DQogICAgICBpZiAoY2hhcnQuYmx1ciA8IDEpIHsNCiAgICAgICAgY2hhcnQuYmx1clBsdXMgPSB0cnVlOw0KICAgICAgfQ0KICAgIH0NCiAgICBjdHguYXJjKA0KICAgICAgY2hhcnQubGFzdFBvc1gsDQogICAgICBjaGFydC5nZXRZKHRoaXMuY2xvc2UpLA0KICAgICAgY2hhcnQuYmx1ciAvIDggKyAxLA0KICAgICAgMCwNCiAgICAgIDIgKiBNYXRoLlBJLA0KICAgICAgZmFsc2UNCiAgICApOw0KICAgIGN0eC5zaGFkb3dCbHVyID0gY2hhcnQuYmx1cjsNCiAgICBjdHguZmlsbCgpOw0KDQogICAgY3R4LnJlc3RvcmUoKTsNCiAgfQ0KfTsNCg0KZnVuY3Rpb24gVGljayh0aW1lLCBwcmljZSkgew0KICByZXR1cm4gew0KICAgIHByaWNlOiBwcmljZSwNCiAgICB0aW1lOiB0aW1lDQogIH07DQp9DQoNCi8qKg0KICogcmVxdWVzdEFuaW0gc2hpbSBsYXllciBieSBQYXVsIElyaXNoDQogKiBGaW5kcyB0aGUgZmlyc3QgQVBJIHRoYXQgd29ya3MgdG8gb3B0aW1pemUgdGhlIGFuaW1hdGlvbiBsb29wLA0KICogb3RoZXJ3aXNlIGRlZmF1bHRzIHRvIHNldFRpbWVvdXQoKS4NCiAqLw0Kd2luZG93LnJlcXVlc3RBbmltRnJhbWUgPSAoZnVuY3Rpb24oKSB7DQogIHJldHVybiAoDQogICAgd2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZSB8fA0KICAgIHdpbmRvdy53ZWJraXRSZXF1ZXN0QW5pbWF0aW9uRnJhbWUgfHwNCiAgICB3aW5kb3cubW96UmVxdWVzdEFuaW1hdGlvbkZyYW1lIHx8DQogICAgd2luZG93Lm9SZXF1ZXN0QW5pbWF0aW9uRnJhbWUgfHwNCiAgICB3aW5kb3cubXNSZXF1ZXN0QW5pbWF0aW9uRnJhbWUgfHwNCiAgICBmdW5jdGlvbihjYWxsYmFjaykgew0KICAgICAgd2luZG93LnNldFRpbWVvdXQoY2FsbGJhY2ssIDEwMDAgLyA2MCk7DQogICAgfQ0KICApOw0KfSkoKTsNCg0KY2ggPSB7DQogIGxpbms6IGZ1bmN0aW9uKGVsZW1lbnQpIHsNCiAgICB2YXIgY2hhcnQ7DQogICAgdmFyIGFuaW1hdGVTdG9wID0gZmFsc2U7DQogICAgdmFyIHNlcnZlclRpbWUgPSB7DQogICAgICBub3c6IERhdGUubm93DQogICAgfTsNCiAgICB2YXIgcHJlcGFyZWRPcmRlciA9IHsNCiAgICAgIHN5bWJvbDogIkVVUi9VU0QiLA0KICAgICAgb3B0aW9uT2ZmOiBNYXRoLnJvdW5kKERhdGUubm93KCkgLyAxMDAwKSAqIDEwMDAgKyAxMDAwMCwNCiAgICAgIG9wdGlvbkVuZDogTWF0aC5yb3VuZChEYXRlLm5vdygpIC8gMTAwMCkgKiAxMDAwICsgMTAwMDAsDQogICAgICB0aW1lRnJhbWU6IDEwMDAwLA0KICAgICAgdGltZU9mZjogMA0KICAgIH07DQoNCiAgICBjaGFydCA9IG5ldyBDaGFydChlbGVtZW50LCBzZXJ2ZXJUaW1lKTsNCiAgICBjaGFydC5wcmVwYXJlZE9yZGVyID0gcHJlcGFyZWRPcmRlcjsNCiAgICB2YXIgc3ltYm9sID0gcHJlcGFyZWRPcmRlci5zeW1ib2w7DQogICAgY2hhcnQuY2FuZGxlc09mZnNldCA9IDEwOw0KICAgIGNoYXJ0LmluaXQoKTsNCg0KICAgIHZhciBwcCA9IDEwOS43NzsNCiAgICB2YXIgY2FuZGxlc0FkZCA9IFsNCiAgICAgIHsNCiAgICAgICAgdGltZUlkOiBNYXRoLnJvdW5kKERhdGUubm93KCkgLyAxMDAwKSAqIDEwMDAsDQogICAgICAgIGNsb3NlOiBwcCwNCiAgICAgICAgb3BlbjogcHAsDQogICAgICAgIG1pbjogcHAsDQogICAgICAgIG1heDogcHANCiAgICAgIH0NCiAgICBdOw0KICAgIGZvciAoaSA9IDA7IGkgPD0gMjA7IGkrKykgew0KICAgICAgdmFyIGNwID0gY2FuZGxlc0FkZFtpXTsNCiAgICAgIHBwID0gY3AuY2xvc2UgKyBNYXRoLnJvdW5kKChNYXRoLnJhbmRvbSgpIC0gMC41KSAqIDQpIC8gMTAwMDsNCiAgICAgIGNhbmRsZXNBZGQucHVzaCh7DQogICAgICAgIHRpbWVJZDogY3AudGltZUlkIC0gNTAwLA0KICAgICAgICBjbG9zZTogcHAsDQogICAgICAgIG9wZW46IHBwLA0KICAgICAgICBtaW46IHBwLA0KICAgICAgICBtYXg6IHBwDQogICAgICB9KTsNCiAgICB9DQogICAgY2hhcnQuYWRkQ2FuZGxlcyhjYW5kbGVzQWRkKTsNCg0KICAgIHNldEludGVydmFsKGZ1bmN0aW9uKHN0b21wKSB7DQogICAgICB2YXIgY3AgPSBjaGFydC5jYW5kbGVzWzBdOw0KICAgICAgdmFyIG1QID0gMDsNCiAgICAgIHZhciBtUF9DQUxMID0gMDsNCiAgICAgIHZhciBtUF9QVVQgPSAwOw0KICAgICAgdmFyIG1jID0gMDsNCiAgICAgIHZhciBtQ19DQUxMID0gMDsNCiAgICAgIHZhciBtQ19QVVQgPSAwOw0KICAgICAgdmFyIG1hcmthUGl6ZGVjID0gMDsNCiAgICAgIGZvciAoaSA9IDA7IGkgPCBjaGFydC5vcmRlcnMubGVuZ3RoOyBpKyspIHsNCiAgICAgICAgdmFyIG8gPSBjaGFydC5vcmRlcnNbaV07DQogICAgICAgIGlmIChvLmNhbGwgJiYgby5lbmRUaW1lID4gRGF0ZS5ub3coKSkgew0KICAgICAgICAgIG1jKys7DQogICAgICAgICAgbVBfQ0FMTCArPSBvLm9wZW5QcmljZTsNCiAgICAgICAgICBtQ19DQUxMKys7DQogICAgICAgIH0gZWxzZSBpZiAoDQogICAgICAgICAgIW8uY2FsbCAmJg0KICAgICAgICAgIG8uZW5kVGltZSA+IERhdGUubm93KCkgJiYNCiAgICAgICAgICBjcC5jbG9zZSA+IG8ub3BlblByaWNlDQogICAgICAgICkgew0KICAgICAgICAgIG1jLS07DQogICAgICAgICAgbVBfUFVUICs9IG8ub3BlblByaWNlOw0KICAgICAgICAgIG1DX1BVVCsrOw0KICAgICAgICB9DQogICAgICB9DQogICAgICBpZiAobWMgPiAwKSB7DQogICAgICAgIG1QID0gbVBfQ0FMTCAvIG1DX0NBTEw7DQogICAgICAgIGlmIChtUCA+IGNwLmNsb3NlKSB7DQogICAgICAgICAgbWFya2FQaXpkZWMgPSAxOw0KICAgICAgICB9DQogICAgICB9IGVsc2UgaWYgKG1jIDwgMCkgew0KICAgICAgICBtUCA9IG1QX1BVVCAvIG1DX1BVVDsNCiAgICAgICAgaWYgKG1QIDwgY3AuY2xvc2UpIHsNCiAgICAgICAgICBtYXJrYVBpemRlYyA9IC0xOw0KICAgICAgICB9DQogICAgICB9DQogICAgICB2YXIgcHAgPQ0KICAgICAgICBjcC5jbG9zZSArDQogICAgICAgIE1hdGgucm91bmQoKE1hdGgucmFuZG9tKCkgLSAwLjUgKyBtYXJrYVBpemRlYyAqIDAuMSkgKiA0KSAvIDEwMDA7DQogICAgICBjaGFydC5vblRpY2soew0KICAgICAgICB0aW1lSWQ6IERhdGUubm93KCksDQogICAgICAgIGNsb3NlOiBwcCwNCiAgICAgICAgb3BlbjogcHAsDQogICAgICAgIG1pbjogcHAsDQogICAgICAgIG1heDogcHAsDQogICAgICAgIGF2ZzogcHANCiAgICAgIH0pOw0KICAgIH0sIDUwMCk7DQoNCiAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYnRuX2NhbGwiKS5vbmNsaWNrID0gZnVuY3Rpb24oKSB7DQogICAgICBjaGFydC5vcmRlcnMucHVzaCh7DQogICAgICAgIGlkOiAxLA0KICAgICAgICBzdGF0dXM6ICJTVEFSVEVEIiwNCiAgICAgICAgYW1vdW50OiAxMCwNCiAgICAgICAgc3RhcnRUaW1lOiBEYXRlLm5vdygpLA0KICAgICAgICBlbmRUaW1lOiBwcmVwYXJlZE9yZGVyLm9wdGlvbkVuZCwNCiAgICAgICAgb3BlblByaWNlOiBjaGFydC5jYW5kbGVzWzBdLmNsb3NlLA0KICAgICAgICBzeW1ib2w6IHByZXBhcmVkT3JkZXIuc3ltYm9sLA0KICAgICAgICBjdXJyZW5jeTogIlVTRCIsDQogICAgICAgIGNhbGw6IHRydWUNCiAgICAgIH0pOw0KICAgIH07DQogICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJ0bl9wdXQiKS5vbmNsaWNrID0gZnVuY3Rpb24oKSB7DQogICAgICBjaGFydC5vcmRlcnMucHVzaCh7DQogICAgICAgIGlkOiAxLA0KICAgICAgICBzdGF0dXM6ICJTVEFSVEVEIiwNCiAgICAgICAgYW1vdW50OiAxMCwNCiAgICAgICAgc3RhcnRUaW1lOiBEYXRlLm5vdygpLA0KICAgICAgICBlbmRUaW1lOiBwcmVwYXJlZE9yZGVyLm9wdGlvbkVuZCwNCiAgICAgICAgb3BlblByaWNlOiBjaGFydC5jYW5kbGVzWzBdLmNsb3NlLA0KICAgICAgICBzeW1ib2w6IHByZXBhcmVkT3JkZXIuc3ltYm9sLA0KICAgICAgICBjdXJyZW5jeTogIlVTRCIsDQogICAgICAgIGNhbGw6IGZhbHNlDQogICAgICB9KTsNCiAgICB9Ow0KICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJBcHBsZSIpLm9uY2xpY2sgPSBmdW5jdGlvbigpIHsNCiAgICAgIHZhciBwcCA9IDEwOS43NzsNCiAgICAgIHZhciBjYW5kbGVzQWRkID0gWw0KICAgICAgICB7DQogICAgICAgICAgdGltZUlkOiBNYXRoLnJvdW5kKERhdGUubm93KCkgLyAxMDAwKSAqIDEwMDAsDQogICAgICAgICAgY2xvc2U6IHBwLA0KICAgICAgICAgIG9wZW46IHBwLA0KICAgICAgICAgIG1pbjogcHAsDQogICAgICAgICAgbWF4OiBwcA0KICAgICAgICB9DQogICAgICBdOw0KICAgICAgZm9yIChpID0gMDsgaSA8PSAyMDsgaSsrKSB7DQogICAgICAgIHZhciBjcCA9IGNhbmRsZXNBZGRbaV07DQogICAgICAgIHBwID0gY3AuY2xvc2UgKyBNYXRoLnJvdW5kKChNYXRoLnJhbmRvbSgpIC0gMC41KSAqIDQpIC8gMTAwMDsNCiAgICAgICAgY2FuZGxlc0FkZC5wdXNoKHsNCiAgICAgICAgICB0aW1lSWQ6IGNwLnRpbWVJZCAtIDUwMCwNCiAgICAgICAgICBjbG9zZTogcHAsDQogICAgICAgICAgb3BlbjogcHAsDQogICAgICAgICAgbWluOiBwcCwNCiAgICAgICAgICBtYXg6IHBwDQogICAgICAgIH0pOw0KICAgICAgfQ0KICAgICAgY2hhcnQuY2FuZGxlcyA9IFtdOw0KICAgICAgY2hhcnQuYWRkQ2FuZGxlcyhjYW5kbGVzQWRkKTsNCiAgICAgIHZhciBlMSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJFVVJVU0QiKTsNCiAgICAgIHZhciBlMiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJHQVpQUk9NIik7DQogICAgICB2YXIgZTMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiQXBwbGUiKTsNCiAgICAgIGUxLmNsYXNzTmFtZSA9IGUxLmNsYXNzTmFtZS5yZXBsYWNlKCJ1aS1zdGF0ZS1hY3RpdmUiLCAiIik7DQogICAgICBlMi5jbGFzc05hbWUgPSBlMi5jbGFzc05hbWUucmVwbGFjZSgidWktc3RhdGUtYWN0aXZlIiwgIiIpOw0KICAgICAgZTMuY2xhc3NOYW1lID0gZTMuY2xhc3NOYW1lICs9ICIgdWktc3RhdGUtYWN0aXZlIjsNCiAgICAgIGNoYXJ0LmNhbmRsZVdpZHRoVG8gPSA5Ow0KICAgICAgY2hhcnQuY2FuZGxlc0ZyZWVTcGFjZVRvID0gMzsNCiAgICAgIGNoYXJ0LmNhbmRsZXNPZmZzZXQgPSAxMDsNCiAgICB9Ow0KICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJHQVpQUk9NIikub25jbGljayA9IGZ1bmN0aW9uKCkgew0KICAgICAgdmFyIHBwID0gMTQ4Ljc7DQogICAgICB2YXIgY2FuZGxlc0FkZCA9IFsNCiAgICAgICAgew0KICAgICAgICAgIHRpbWVJZDogTWF0aC5yb3VuZChEYXRlLm5vdygpIC8gMTAwMCkgKiAxMDAwLA0KICAgICAgICAgIGNsb3NlOiBwcCwNCiAgICAgICAgICBvcGVuOiBwcCwNCiAgICAgICAgICBtaW46IHBwLA0KICAgICAgICAgIG1heDogcHANCiAgICAgICAgfQ0KICAgICAgXTsNCiAgICAgIGZvciAoaSA9IDA7IGkgPD0gMjA7IGkrKykgew0KICAgICAgICB2YXIgY3AgPSBjYW5kbGVzQWRkW2ldOw0KICAgICAgICBwcCA9IGNwLmNsb3NlICsgTWF0aC5yb3VuZCgoTWF0aC5yYW5kb20oKSAtIDAuNSkgKiA0KSAvIDEwMDA7DQogICAgICAgIGNhbmRsZXNBZGQucHVzaCh7DQogICAgICAgICAgdGltZUlkOiBjcC50aW1lSWQgLSA1MDAsDQogICAgICAgICAgY2xvc2U6IHBwLA0KICAgICAgICAgIG9wZW46IHBwLA0KICAgICAgICAgIG1pbjogcHAsDQogICAgICAgICAgbWF4OiBwcA0KICAgICAgICB9KTsNCiAgICAgIH0NCiAgICAgIGNoYXJ0LmNhbmRsZXMgPSBbXTsNCiAgICAgIGNoYXJ0LmFkZENhbmRsZXMoY2FuZGxlc0FkZCk7DQogICAgICB2YXIgZTEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiRVVSVVNEIik7DQogICAgICB2YXIgZTIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiQXBwbGUiKTsNCiAgICAgIHZhciBlMyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJHQVpQUk9NIik7DQogICAgICBlMS5jbGFzc05hbWUgPSBlMS5jbGFzc05hbWUucmVwbGFjZSgidWktc3RhdGUtYWN0aXZlIiwgIiIpOw0KICAgICAgZTIuY2xhc3NOYW1lID0gZTIuY2xhc3NOYW1lLnJlcGxhY2UoInVpLXN0YXRlLWFjdGl2ZSIsICIiKTsNCiAgICAgIGUzLmNsYXNzTmFtZSA9IGUzLmNsYXNzTmFtZSArPSAiIHVpLXN0YXRlLWFjdGl2ZSI7DQogICAgICBjaGFydC5jYW5kbGVXaWR0aFRvID0gOTsNCiAgICAgIGNoYXJ0LmNhbmRsZXNGcmVlU3BhY2VUbyA9IDM7DQogICAgICBjaGFydC5jYW5kbGVzT2Zmc2V0ID0gMTA7DQogICAgfTsNCg0KICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJFVVJVU0QiKS5vbmNsaWNrID0gZnVuY3Rpb24oKSB7DQogICAgICB2YXIgcHAgPSAxLjE0Ow0KICAgICAgdmFyIGNhbmRsZXNBZGQgPSBbDQogICAgICAgIHsNCiAgICAgICAgICB0aW1lSWQ6IE1hdGgucm91bmQoRGF0ZS5ub3coKSAvIDEwMDApICogMTAwMCwNCiAgICAgICAgICBjbG9zZTogcHAsDQogICAgICAgICAgb3BlbjogcHAsDQogICAgICAgICAgbWluOiBwcCwNCiAgICAgICAgICBtYXg6IHBwDQogICAgICAgIH0NCiAgICAgIF07DQogICAgICBmb3IgKGkgPSAwOyBpIDw9IDIwOyBpKyspIHsNCiAgICAgICAgdmFyIGNwID0gY2FuZGxlc0FkZFtpXTsNCiAgICAgICAgcHAgPSBjcC5jbG9zZSArIE1hdGgucm91bmQoKE1hdGgucmFuZG9tKCkgLSAwLjUpICogNCkgLyAxMDAwOw0KICAgICAgICBjYW5kbGVzQWRkLnB1c2goew0KICAgICAgICAgIHRpbWVJZDogY3AudGltZUlkIC0gNTAwLA0KICAgICAgICAgIGNsb3NlOiBwcCwNCiAgICAgICAgICBvcGVuOiBwcCwNCiAgICAgICAgICBtaW46IHBwLA0KICAgICAgICAgIG1heDogcHANCiAgICAgICAgfSk7DQogICAgICB9DQogICAgICBjaGFydC5jYW5kbGVzID0gW107DQogICAgICBjaGFydC5hZGRDYW5kbGVzKGNhbmRsZXNBZGQpOw0KICAgICAgdmFyIGUxID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIkFwcGxlIik7DQogICAgICB2YXIgZTIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiR0FaUFJPTSIpOw0KICAgICAgdmFyIGUzID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIkVVUlVTRCIpOw0KICAgICAgZTEuY2xhc3NOYW1lID0gZTEuY2xhc3NOYW1lLnJlcGxhY2UoInVpLXN0YXRlLWFjdGl2ZSIsICIiKTsNCiAgICAgIGUyLmNsYXNzTmFtZSA9IGUyLmNsYXNzTmFtZS5yZXBsYWNlKCJ1aS1zdGF0ZS1hY3RpdmUiLCAiIik7DQogICAgICBlMy5jbGFzc05hbWUgPSBlMy5jbGFzc05hbWUgKz0gIiB1aS1zdGF0ZS1hY3RpdmUiOw0KICAgICAgY2hhcnQuY2FuZGxlV2lkdGhUbyA9IDk7DQogICAgICBjaGFydC5jYW5kbGVzRnJlZVNwYWNlVG8gPSAzOw0KICAgICAgY2hhcnQuY2FuZGxlc09mZnNldCA9IDEwOw0KICAgIH07DQogICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlc3RhcnQtY2hhcnQiKS5vbmNsaWNrID0gZnVuY3Rpb24oKSB7DQogICAgICB2YXIgZTEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2hhcnQtaG9sZGVyIik7DQogICAgICBlMS5jbGFzc05hbWUgPSBlMS5jbGFzc05hbWUucmVwbGFjZSgiZGVhbC1maW5pc2hlZCIsICIiKTsNCiAgICAgIGUxLmNsYXNzTmFtZSA9IGUxLmNsYXNzTmFtZS5yZXBsYWNlKCJsb29zZSIsICIiKTsNCiAgICAgIGNoYXJ0Lm9yZGVycyA9IFtdOw0KICAgIH07DQoNCiAgICB2YXIgYW5pbWF0ZSA9IGZ1bmN0aW9uKCkgew0KICAgICAgaWYgKGFuaW1hdGVTdG9wKSB7DQogICAgICAgIHJldHVybjsNCiAgICAgIH0NCiAgICAgIGNoYXJ0LmFuaW1hdGUoKTsNCiAgICAgIHJlcXVlc3RBbmltRnJhbWUoYW5pbWF0ZSk7DQogICAgfTsNCiAgICBhbmltYXRlKCk7DQogIH0NCn07DQooZnVuY3Rpb24oKSB7DQogIGNoLmxpbmsoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNoYXJ0LW0iKSk7DQp9KSgpOw0K"}},"time_used":359,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":359,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCCCCA.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.543Z","timestamp":1785126258543,"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 /crypto/XTVCCCCA.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 04:24:18 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: \"9e76495c33c6a65d3789889d0a3f11b7\"\r\nlast-modified: Wed, 21 Jan 2026 16:22:03 GMT\r\nx-amz-id-2: zKBPvWqfnZbxEezOG3BSOqp0qKc3jwr65MCBt6Vuht5tOw/ivu3PMvYTcJj3JxEqWs37FzJBooZcqR82BYzRAksMocWHWkY/2nPZ71l1KHM=\r\nx-amz-request-id: RD31WFQS1P71WA46\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 9e76495c33c6a65d3789889d0a3f11b7\r\ncdn-proxyver: 1.43\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 01/21/2026 16:38:34\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: b05f2aee02ac235dd63f6a7e4f237f5b\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":1971,"size_decoded":1668,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1971), with no line terminators","md5":"9e76495c33c6a65d3789889d0a3f11b7","sha1":"a6909abbd8cc3e251cf124ead129e66f8d8f5a92","sha256":"a504703e4b45afdd0b515507c4b015290726ddbe894edc58b903abba5dc8f86c","sha512":"a7d08009538ca32ae3338ae75584d9d5dcd2d32aee4eff4f834739c2cce7594cb1118b25b4271aab61324e28194e01af8f1afa1682d51b169b5c40294b62a641","ssdeep":"","tlshash":"5b419dfada1d982fe1abc2bddd424062220d41e6b5c14365e6a5df6e38645c31d0db60","first_seen":"2026-04-18T05:26:19.855189Z","last_seen":"2026-07-27T07:05:43.245618Z","times_seen":237,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTEuMjMgNC43IDEzIDYuNDNsLTEuMzUgMS4yN2MtMS43Ny0xLjY3LTMuNjMtMS4xNi00LjM0LS43YTMuMjIgMy4yMiAwIDAgMC0uMiAzLjgyYzEuMjguOTggMy4xNy40IDMuOTYgMGwuNTgtLjU4TDEzIDExLjU4bC0xLjM1IDEuMzFhMy43MiAzLjcyIDAgMCAxLTQuNzIuNDhsLTEuMDktMS4xM2EzLjgxIDMuODEgMCAwIDEtMS4zLTUuMjJsMS4zLTEuMzFjMS43Mi0yLjUgNC4zMS0xLjcyIDUuMzktMS4wMloiIGZpbGw9InVybCgjYikiLz48cGF0aCBkPSJNNS44NCA1LjdjMS43Mi0yLjQ5IDQuMzEtMS43IDUuMzktMWwxLjExIDEuMDktMS44OCAxLjFhMy4zNyAzLjM3IDAgMCAwLTMuMTUuMTMgMy4yMiAzLjIyIDAgMCAwLS4yIDMuOGMuMTYuMTMuMzQuMjMuNTIuMzFsLS4wNS4xMmMtLjcyLS4xNy0yLjMzLS42Ni0zLTEuMzEtLjQ1LS40Ni0uNDktMS42MS0uMS0yLjgzbC4wNS0uMSAxLjMtMS4zWiIgZmlsbD0idXJsKCNjKSIvPjxwYXRoIGQ9Ik01LjgzIDUuNzJjLS41MiAxLjA3LTEgMy42MyAxLjM0IDUuMTdoLjAyYzEuMjcuOSAzLjA5LjM0IDMuODYtLjA2LS44MS45OC0yLjg1IDIuNDMtNS4xOCAxLjQzbC0uMDMtLjAyYTMuODEgMy44MSAwIDAgMS0xLjMtNS4yMmwxLjI5LTEuM1oiIGZpbGw9InVybCgjZCkiLz48cGF0aCBkPSJNNy4yIDcuMTRhNCA0IDAgMCAxIDUuMi0xLjNsLjYuNi0xLjM1IDEuMjdjLTEuNzctMS42Ny0zLjYzLTEuMTYtNC4zNC0uN2wtLjEuMTNaIiBmaWxsPSJ1cmwoI2UpIi8+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJhIiB4MT0iMy4zNSIgeTE9IjMuMTIiIHgyPSIyMS45IiB5Mj0iMjQuNDMiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjMUExRTIxIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMDYwNjBBIi8+PC9saW5lYXJHcmFkaWVudD48bGluZWFyR3JhZGllbnQgaWQ9ImIiIHgxPSIxMS4yNSIgeTE9IjExLjM4IiB4Mj0iNS40IiB5Mj0iMTMuMTUiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjRjRGRjk3Ii8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjOTI5OTVCIi8+PC9saW5lYXJHcmFkaWVudD48bGluZWFyR3JhZGllbnQgaWQ9ImMiIHgxPSIxMS41NyIgeTE9IjQuNDciIHgyPSI4LjQiIHkyPSIxMS44OSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiM5Mjk5NUIiLz48c3RvcCBvZmZzZXQ9Ii4yOSIgc3RvcC1jb2xvcj0iI0YyRkQ5NiIvPjxzdG9wIG9mZnNldD0iLjciIHN0b3AtY29sb3I9IiNGNEZGOTciLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiM5Mjk5NUIiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCBpZD0iZCIgeDE9IjUuNDkiIHkxPSI1LjMiIHgyPSI5LjgxIiB5Mj0iMTIuOTUiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjOTI5OTVCIi8+PHN0b3Agb2Zmc2V0PSIuMjkiIHN0b3AtY29sb3I9IiNGNEZGOTciLz48c3RvcCBvZmZzZXQ9Ii42OCIgc3RvcC1jb2xvcj0iI0Y0RkY5NyIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzkyOTk1QiIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IGlkPSJlIiB4MT0iMTEuNTYiIHkxPSI3LjcxIiB4Mj0iNy4yMiIgeTI9IjYuODUiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjRjRGRjk3Ii8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjOTI5OTVCIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCAVAX.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.577Z","timestamp":1785126258577,"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 /crypto/XTVCAVAX.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 04:24:18 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: \"1068619ee4397121a2b2e3ffb47ede01\"\r\nlast-modified: Thu, 22 Dec 2022 07:05:32 GMT\r\ncdn-cachedat: 08/09/2025 14:29:30\r\nx-amz-id-2: HL026Ye6V4Ium+6EDCsqQYYvW9leOQrUPr56erHN8fTRaM73C7CMUkax86iQ4iWUxYuUlfdcTSk=\r\nx-amz-request-id: T8R1903P8XBH8JNW\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 1068619ee4397121a2b2e3ffb47ede01\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: c70109c21994ce39701b1582d5d58fa3\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":687,"size_decoded":1334,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (687), with no line terminators","md5":"1068619ee4397121a2b2e3ffb47ede01","sha1":"c1cf70c2a3cebffcf12944b6f528a388c9c0b32e","sha256":"79075e994e4e949bac3086c290811124a7d56b62cfa840c04523f59479ebe5c6","sha512":"a7976e492e25e1d13f53d9cddddb6544f083ddaa1ff67827046632879d9a347458b2f73a5f721f41bac5baaa310d827be58d9225d80d52624fd603a1ca57691b","ssdeep":"","tlshash":"0a01c64a3204c38d4c42830cc7b6c4e222ae609ab1fae7e826eb4b59704f8d0f800429","first_seen":"2023-05-02T00:43:59Z","last_seen":"2026-07-27T07:05:43.338982Z","times_seen":1516,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNFODQxNDIiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNNi41MSAxMkg0LjgzYy0uMzYgMC0uNTMgMC0uNjQtLjA2YS4zOC4zOCAwIDAgMS0uMTktLjNjMC0uMTIuMDgtLjI1LjI2LS41M2w0LjE1LTYuNmMuMTctLjI4LjI2LS40Mi4zOC0uNDdhLjQ3LjQ3IDAgMCAxIC4zOCAwYy4xMi4wNS4yLjIuMzguNDdsLjg2IDEuMzVjLjIuMy4yOS40Ni4zMy42Mi4wNS4xNy4wNS4zNiAwIC41My0uMDQuMTYtLjE0LjMxLS4zMy42Mkw4LjIzIDExLjF2LjAxYy0uMi4zLS4zLjQ2LS40My41OGExLjMgMS4zIDAgMCAxLS41Mi4yN2MtLjE4LjA0LS4zNy4wNC0uNzcuMDRabTQuMjUgMGgyLjRjLjM2IDAgLjU0IDAgLjY1LS4wNmEuMzguMzggMCAwIDAgLjE5LS4zYzAtLjEyLS4wOC0uMjUtLjI1LS41bC0uMDEtLjA0LTEuMjEtMS44Ni0uMDEtLjAyYy0uMTctLjI2LS4yNi0uMzktLjM3LS40NGEuNDcuNDcgMCAwIDAtLjM5IDBjLS4xLjA1LS4yLjItLjM3LjQ3bC0xLjIgMS44NmMtLjE4LjI4LS4yNy40MS0uMjcuNTMuMDEuMTIuMDguMjMuMi4zLjEuMDYuMjguMDYuNjQuMDZaIiBmaWxsPSIjZmZmIi8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCCAKE.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.651Z","timestamp":1785126258651,"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 /crypto/XTVCCAKE.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 04:24:18 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: \"b59b3a710a6b85e6d5fba9e3ca09d7e9\"\r\nlast-modified: Wed, 08 Sep 2021 09:03:43 GMT\r\ncdn-cachedat: 08/09/2025 14:33:15\r\nx-amz-id-2: zAtJY/mchkeyGf2cUsyEFR9r3JQ7mP/nN/ptCW01YnjdnZSL4rmcP2lt5WycHog6/GmABjPoZ7cQYKyR+O7Vh7fvWxSw9cEHH0xWzUZFW7o=\r\nx-amz-request-id: 1JMZHFAADB5QAQWB\r\nx-amz-meta-hash: b59b3a710a6b85e6d5fba9e3ca09d7e9\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: 2148de687a70f370e5fa2d37d2d0cb07\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":1309,"size_decoded":1492,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1309), with no line terminators","md5":"b59b3a710a6b85e6d5fba9e3ca09d7e9","sha1":"aa09e1a95caf8a560369bdc6abc014f3da1139d8","sha256":"7b39590f10280a32c82b2b29328a3580b1b01b65882f27a6c9e08692c9819e4d","sha512":"3d755f4e52560048e5c3b41a9e8b84b31da4037b23b5a0455b71aa84f719a30ec22ae2552bf37663f4b2a7ec650642ebeca5c1249c8f89aebbae2bb8a9025b4c","ssdeep":"","tlshash":"952101e9e74c629422cf8464ce696254802f60eff6a603cdf1829b33f6665daf402d34","first_seen":"2024-02-03T16:17:41Z","last_seen":"2026-07-27T07:05:43.327442Z","times_seen":792,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjE4IiBoZWlnaHQ9IjE4Ij48cGF0aCBmaWxsPSIjMzdDQkQ0IiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTUuNzQgNS43NmMtLjItLjgxLjM0LTEuNjMgMS4xNi0xLjc1YTEuNCAxLjQgMCAwMTEuNTggMS4zNGwuMDUgMS4xNmE3LjQ2IDcuNDYgMCAwMS44NCAwbC4wNS0xLjE2QTEuNCAxLjQgMCAwMTExIDQuMDFjLjgyLjEyIDEuMzYuOTQgMS4xNSAxLjc1bC0uMzMgMS4zM2MxLjI2LjU4IDIuMSAxLjU0IDIuMTggMi42NHYuOTZDMTMuOTQgMTIuNTMgMTEuNzIgMTQgOSAxNGMtMi43IDAtNC45LTEuNDUtNS0zLjI3di0uODVjMC0xLjEzLjgyLTIuMTQgMi4wOS0yLjc1bC0uMzUtMS4zN3oiIGZpbGw9IiNDQTdENDUiLz48cGF0aCBkPSJNOC4xMyA2Ljk2bC0uMDYtMS41OWEuOTguOTggMCAwMC0xLjExLS45NC45OS45OSAwIDAwLS44MSAxLjIzbC40MiAxLjctLjMuMTVjLTEuMTkuNTgtMS44NSAxLjQ2LTEuODUgMi4zN3YuODNjLjA0LjczLjUgMS40NCAxLjMzIDEuOThhNiA2IDAgMDAzLjI1Ljg5YzEuMyAwIDIuNDQtLjM1IDMuMjctLjkuODMtLjU1IDEuMjktMS4yNyAxLjMxLTJ2LS45MmMtLjA2LS44OC0uNzUtMS43NC0xLjkzLTIuMjlsLS4zMi0uMTUuNDItMS42NmEuOTkuOTkgMCAwMC0uOC0xLjIzLjk4Ljk4IDAgMDAtMS4xMi45NGwtLjA2IDEuNTgtLjQyLS4wMmE3LjA3IDcuMDcgMCAwMC0uOCAwbC0uNDIuMDN6TTE0IDkuNzN2Ljk3Yy0uMDYgMS44My0yLjI4IDMuMy01IDMuMy0yLjcgMC00LjktMS40NS01LTMuMjd2LS44NWMwLTEuMTMuODItMi4xNCAyLjA5LTIuNzVsLS4zNS0xLjM3Yy0uMi0uODEuMzQtMS42MyAxLjE2LTEuNzVhMS40IDEuNCAwIDAxMS41OCAxLjM0bC4wNSAxLjE2YTcuNDMgNy40MyAwIDAxLjg0IDBsLjA1LTEuMTZBMS40IDEuNCAwIDAxMTEgNC4wMWMuODIuMTIgMS4zNi45NCAxLjE1IDEuNzVsLS4zMyAxLjMzYzEuMjYuNTggMi4xIDEuNTQgMi4xOCAyLjY0eiIgZmlsbD0iIzUyMkQwQiIvPjxlbGxpcHNlIGN4PSI5IiBjeT0iMTAuNDEiIHJ4PSI0LjY3IiByeT0iMy4xNyIgZmlsbD0iI0ZCRDk4NCIvPjxlbGxpcHNlIGN4PSI5IiBjeT0iOS45OSIgcng9IjQuNjciIHJ5PSIyLjg4IiBmaWxsPSIjQ0E3RDQ1Ii8+PGVsbGlwc2UgY3g9IjcuMDQiIGN5PSI5Ljg4IiByeD0iLjU0IiByeT0iLjg1IiBmaWxsPSIjNTIyRDBCIi8+PGVsbGlwc2UgY3g9IjEwLjk2IiBjeT0iOS44OCIgcng9Ii41NCIgcnk9Ii44NSIgZmlsbD0iIzUyMkQwQiIvPjwvc3ZnPg=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCOCEAN.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.703Z","timestamp":1785126258703,"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 /crypto/XTVCOCEAN.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 04:24:18 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: \"cc7815f4ac4e0157cb025b3cef607738\"\r\nlast-modified: Mon, 19 Feb 2024 08:04:57 GMT\r\ncdn-cachedat: 08/09/2025 14:33:50\r\nx-amz-id-2: VyvsPlJcQ0HHdTZEcw+odXA13zAb3AZXkLKe+hFaBFF82XY8pU5R6bSHHyTjxvqNL/1cump3S7k=\r\nx-amz-request-id: Z5X0H9668S6ZF04N\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: cc7815f4ac4e0157cb025b3cef607738\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: 1ef988d417abd0ee773a5d8326611de2\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":2236,"size_decoded":1695,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (2236), with no line terminators","md5":"cc7815f4ac4e0157cb025b3cef607738","sha1":"72a35dd6e71356e769194eabee28c3df3003f58a","sha256":"bccd474af8f20b13db9492fe60fb88bcdcb91f39ebe8d54bdfe7ba69f64e24a0","sha512":"d008ef212a94697e442c251da2afdefc86f560f31506f831fabeb1bcb6a898a8e8ad7a911d751c4a6b48c5368a9f6aa4093637a3d654600540837dc5fe4db91e","ssdeep":"","tlshash":"46416937e84c556e86e7d3e9eb329411738d0c48f0ebe3966afd47b12083990e736424","first_seen":"2025-08-03T22:21:09.338439Z","last_seen":"2026-07-27T05:33:43.521024Z","times_seen":47,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYWp3aXd6ZWlyKSIgZD0iTTAgMGgxOHYxOEgweiIvPjxwYXRoIGQ9Ik01LjI4IDguODFjMCAuMy0uMjQuNTMtLjU0LjUzYS41My41MyAwIDAgMS0uNTQtLjUzYzAtLjI5LjI0LS41My41NC0uNTMuMyAwIC41NC4yNC41NC41M1ptOC41NSAwYzAgLjMtLjI1LjUzLS41NC41M2EuNTMuNTMgMCAwIDEtLjU0LS41M2MwLS4yOS4yNC0uNTMuNTQtLjUzLjMgMCAuNTQuMjQuNTQuNTNabS00LjI4IDIuMWMwIC4zLS4yNC41My0uNTQuNTNhLjUzLjUzIDAgMCAxLS41My0uNTMuNTMuNTMgMCAwIDEgMS4wOCAwWk03LjQgOS44OGMwIC4yOS0uMjQuNTMtLjU0LjUzYS41My41MyAwIDAgMS0uNTMtLjUzLjUzLjUzIDAgMSAxIDEuMDggMFptNC4yNyAwYS41My41MyAwIDAgMS0xLjA4IDBjMC0uMy4yNS0uNTQuNTUtLjU0LjMgMCAuNTMuMjQuNTMuNTRabS02LjU3LjU0YS4zNi4zNiAwIDAgMS0uNzMgMGMwLS4yLjE3LS4zNi4zNy0uMzYuMiAwIC4zNi4xNi4zNi4zNlptOC41NSAwYS4zNi4zNiAwIDAgMS0uNzMgMGMwLS4yLjE3LS4zNi4zNy0uMzYuMiAwIC4zNi4xNi4zNi4zNlptLTQuMjcgMi4xM2MwIC4yLS4xNi4zNi0uMzcuMzZhLjM2LjM2IDAgMCAxLS4zNi0uMzYuMzYuMzYgMCAwIDEgLjczIDBabS0yLjE1LTEuMDZjMCAuMi0uMTcuMzUtLjM3LjM1YS4zNi4zNiAwIDAgMS0uMzYtLjM1LjM2LjM2IDAgMCAxIC43MyAwWm00LjI3IDBjMCAuMi0uMTYuMzUtLjM2LjM1YS4zNi4zNiAwIDAgMS0uMzctLjM1YzAtLjIuMTctLjM2LjM3LS4zNi4yIDAgLjM2LjE2LjM2LjM2Wm0tNi41Ny4yYzAgLjEtLjA4LjE4LS4xOS4xOGEuMTkuMTkgMCAwIDEtLjE5LS4xOGMwLS4xLjA5LS4xOS4yLS4xOS4xIDAgLjE4LjA4LjE4LjE5Wm04LjU1IDBjMCAuMS0uMDkuMTgtLjIuMThhLjE5LjE5IDAgMCAxLS4xOC0uMThjMC0uMS4wOC0uMTkuMTktLjE5LjEgMCAuMTkuMDguMTkuMTlaTTkuMiAxMy44YzAgLjEtLjA4LjE5LS4xOS4xOWEuMTkuMTkgMCAwIDEtLjE4LS4xOWMwLS4xLjA4LS4xOC4xOC0uMTguMSAwIC4yLjA4LjIuMThabS0yLjE1LTEuMDZjMCAuMS0uMDguMTktLjE5LjE5YS4xOS4xOSAwIDAgMS0uMTktLjE5YzAtLjEuMDktLjE5LjItLjE5LjEgMCAuMTguMDkuMTguMTlabTQuMjggMGMwIC4xLS4wOS4xOS0uMi4xOWEuMTkuMTkgMCAwIDEtLjE4LS4xOWMwLS4xLjA4LS4xOS4xOS0uMTkuMSAwIC4xOS4wOS4xOS4xOVptLTEuNi04LjAzYzAgLjQtLjMzLjcyLS43My43MmEuNzIuNzIgMCAwIDEtLjczLS43MmMwLS40LjMzLS43Mi43My0uNzIuNCAwIC43My4zMi43My43MlptMCAyLjEyYzAgLjQtLjMzLjcyLS43My43MmEuNzIuNzIgMCAwIDEtLjczLS43MmMwLS40LjMzLS43MS43My0uNzEuNCAwIC43My4zMi43My43MVptMCAyLjFjMCAuNC0uMzMuNzItLjczLjcyYS43Mi43MiAwIDAgMS0uNzMtLjcyYzAtLjQuMzMtLjcyLjczLS43Mi40IDAgLjczLjMzLjczLjcyWk0xNCA2Ljg0YzAgLjQtLjMzLjcyLS43My43MmEuNzIuNzIgMCAwIDEtLjcyLS43MmMwLS40LjMyLS43MS43Mi0uNzEuNCAwIC43My4zMi43My43MVptLTguNTUgMGEuNzIuNzIgMCAwIDEtMS40NSAwYzAtLjQuMzMtLjcxLjczLS43MS40IDAgLjcyLjMyLjcyLjcxWk03LjYgNS43OGEuNzIuNzIgMCAwIDEtMS40NSAwYzAtLjQuMzMtLjcyLjczLS43Mi40IDAgLjcyLjMyLjcyLjcyWm0wIDIuMWEuNzIuNzIgMCAwIDEtMS40NSAwYzAtLjQuMzMtLjcyLjczLS43Mi40IDAgLjcyLjMyLjcyLjcyWm00LjI4LTIuMWMwIC40LS4zMy43Mi0uNzMuNzJhLjcyLjcyIDAgMCAxLS43My0uNzJjMC0uNC4zMy0uNzIuNzMtLjcyLjQgMCAuNzMuMzIuNzMuNzJabTAgMi4xYzAgLjQtLjMzLjcyLS43My43MmEuNzIuNzIgMCAwIDEtLjczLS43MmMwLS40LjMzLS43Mi43My0uNzIuNCAwIC43My4zMi43My43MloiIGZpbGw9IiNmZmYiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImFqd2l3emVpciIgeDE9IjMuMzUiIHkxPSIzLjEyIiB4Mj0iMjEuOSIgeTI9IjI0LjQzIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iIzFBMUUyMSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzA2MDYwQSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjwvc3ZnPg=="}},"time_used":133,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":133,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCCKB.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.725Z","timestamp":1785126258725,"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 /crypto/XTVCCKB.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 04:24:18 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: \"4de76af1f9c45d7a14b7d937909349b6\"\r\nlast-modified: Thu, 07 Mar 2024 07:52:13 GMT\r\ncdn-cachedat: 08/09/2025 14:33:50\r\nx-amz-id-2: zWjZ4u540CR8uMsbLMz4PylZY8a+Dmit4FRljxAE3UC7QcQRtP+NODGuE7qvTXC9WMx6AFtje2Q=\r\nx-amz-request-id: 4KY02ZJ2YMRN2EXF\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 4de76af1f9c45d7a14b7d937909349b6\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: 17088642aa597721c32cc99b85e1bcff\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":426,"size_decoded":1231,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (426), with no line terminators","md5":"4de76af1f9c45d7a14b7d937909349b6","sha1":"4883276ac109abfe69bb8145955ed8c702343103","sha256":"5232b3645557d6325932808a7538224434ff58edbbc3af4a08b86cd8b2f05770","sha512":"016382250de32c8d5c6102a60c655deaf7ea3711d63b882e78058c1b62321cd95816f19eb4ba2892b38a4cf255f6939f111a48024b17ce2da3da4c24ab815da9","ssdeep":"","tlshash":"5ee0233acd2c4c1fe105c178fb5014d62049109fc0410265e1d12f2e21457c31c04e90","first_seen":"2024-03-19T05:40:56Z","last_seen":"2026-07-27T07:05:43.392375Z","times_seen":790,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYTRranR5M3pnKSIgZD0iTTAgMGgxOHYxOEgweiIvPjxwYXRoIGQ9Ik03IDEzSDVWNWwzLjcxIDRIN3Y0Wm00LThoMnY4TDkuMjkgOUgxMVY1WiIgZmlsbD0iI2ZmZiIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0iYTRranR5M3pnIiB4MT0iMy4zNSIgeTE9IjMuMTIiIHgyPSIyMS45IiB5Mj0iMjQuNDMiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjMUExRTIxIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMDYwNjBBIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PC9zdmc+"}},"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":"besttrader.live/js/jquery-3.2.1.min.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.027Z","timestamp":1785126256027,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /js/jquery-3.2.1.min.js HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: W/\"65211e70-15283\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":86659,"size_decoded":29620,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (32058)","md5":"c9f5aeeca3ad37bf2aa006139b935f0a","sha1":"1055018c28ab41087ef9ccefe411606893dabea2","sha256":"87083882cc6015984eb0411a99d3981817f5dc5c90ba24f0940420c5548d82de","sha512":"dcff2b5c2b8625d3593a7531ff4ddcd633939cc9f7acfeb79c18a9e6038fdaa99487960075502f159d44f902d965b0b5aed32b41bfa66a1dc07d85b5d5152b58","ssdeep":"1536:YNhEyjjTikEJO4edXXe9J578go6MWX2xkj8e4c4j2ll2AckaXEP6n15HZ+FhFcQ7:uxc2yjx4j2uX/kcQDU8Cu9","tlshash":"4483e6d9b2c67062977730b950bf410bb17a98dab44c8c60f158d9d47eb8a8d907bf2c","first_seen":"2023-03-07T01:02:00Z","last_seen":"2026-07-27T07:03:18.946584Z","times_seen":98372,"resource_available":true,"data":"LyohIGpRdWVyeSB2My4yLjEgfCAoYykgSlMgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzIHwganF1ZXJ5Lm9yZy9saWNlbnNlICovCiFmdW5jdGlvbihhLGIpeyJ1c2Ugc3RyaWN0Ijsib2JqZWN0Ij09dHlwZW9mIG1vZHVsZSYmIm9iamVjdCI9PXR5cGVvZiBtb2R1bGUuZXhwb3J0cz9tb2R1bGUuZXhwb3J0cz1hLmRvY3VtZW50P2IoYSwhMCk6ZnVuY3Rpb24oYSl7aWYoIWEuZG9jdW1lbnQpdGhyb3cgbmV3IEVycm9yKCJqUXVlcnkgcmVxdWlyZXMgYSB3aW5kb3cgd2l0aCBhIGRvY3VtZW50Iik7cmV0dXJuIGIoYSl9OmIoYSl9KCJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3dpbmRvdzp0aGlzLGZ1bmN0aW9uKGEsYil7InVzZSBzdHJpY3QiO3ZhciBjPVtdLGQ9YS5kb2N1bWVudCxlPU9iamVjdC5nZXRQcm90b3R5cGVPZixmPWMuc2xpY2UsZz1jLmNvbmNhdCxoPWMucHVzaCxpPWMuaW5kZXhPZixqPXt9LGs9ai50b1N0cmluZyxsPWouaGFzT3duUHJvcGVydHksbT1sLnRvU3RyaW5nLG49bS5jYWxsKE9iamVjdCksbz17fTtmdW5jdGlvbiBwKGEsYil7Yj1ifHxkO3ZhciBjPWIuY3JlYXRlRWxlbWVudCgic2NyaXB0Iik7Yy50ZXh0PWEsYi5oZWFkLmFwcGVuZENoaWxkKGMpLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoYyl9dmFyIHE9IjMuMi4xIixyPWZ1bmN0aW9uKGEsYil7cmV0dXJuIG5ldyByLmZuLmluaXQoYSxiKX0scz0vXltcc1x1RkVGRlx4QTBdK3xbXHNcdUZFRkZceEEwXSskL2csdD0vXi1tcy0vLHU9Ly0oW2Etel0pL2csdj1mdW5jdGlvbihhLGIpe3JldHVybiBiLnRvVXBwZXJDYXNlKCl9O3IuZm49ci5wcm90b3R5cGU9e2pxdWVyeTpxLGNvbnN0cnVjdG9yOnIsbGVuZ3RoOjAsdG9BcnJheTpmdW5jdGlvbigpe3JldHVybiBmLmNhbGwodGhpcyl9LGdldDpmdW5jdGlvbihhKXtyZXR1cm4gbnVsbD09YT9mLmNhbGwodGhpcyk6YTwwP3RoaXNbYSt0aGlzLmxlbmd0aF06dGhpc1thXX0scHVzaFN0YWNrOmZ1bmN0aW9uKGEpe3ZhciBiPXIubWVyZ2UodGhpcy5jb25zdHJ1Y3RvcigpLGEpO3JldHVybiBiLnByZXZPYmplY3Q9dGhpcyxifSxlYWNoOmZ1bmN0aW9uKGEpe3JldHVybiByLmVhY2godGhpcyxhKX0sbWFwOmZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnB1c2hTdGFjayhyLm1hcCh0aGlzLGZ1bmN0aW9uKGIsYyl7cmV0dXJuIGEuY2FsbChiLGMsYil9KSl9LHNsaWNlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucHVzaFN0YWNrKGYuYXBwbHkodGhpcyxhcmd1bWVudHMpKX0sZmlyc3Q6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lcSgwKX0sbGFzdDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmVxKC0xKX0sZXE6ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5sZW5ndGgsYz0rYSsoYTwwP2I6MCk7cmV0dXJuIHRoaXMucHVzaFN0YWNrKGM+PTAmJmM8Yj9bdGhpc1tjXV06W10pfSxlbmQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5wcmV2T2JqZWN0fHx0aGlzLmNvbnN0cnVjdG9yKCl9LHB1c2g6aCxzb3J0OmMuc29ydCxzcGxpY2U6Yy5zcGxpY2V9LHIuZXh0ZW5kPXIuZm4uZXh0ZW5kPWZ1bmN0aW9uKCl7dmFyIGEsYixjLGQsZSxmLGc9YXJndW1lbnRzWzBdfHx7fSxoPTEsaT1hcmd1bWVudHMubGVuZ3RoLGo9ITE7Zm9yKCJib29sZWFuIj09dHlwZW9mIGcmJihqPWcsZz1hcmd1bWVudHNbaF18fHt9LGgrKyksIm9iamVjdCI9PXR5cGVvZiBnfHxyLmlzRnVuY3Rpb24oZyl8fChnPXt9KSxoPT09aSYmKGc9dGhpcyxoLS0pO2g8aTtoKyspaWYobnVsbCE9KGE9YXJndW1lbnRzW2hdKSlmb3IoYiBpbiBhKWM9Z1tiXSxkPWFbYl0sZyE9PWQmJihqJiZkJiYoci5pc1BsYWluT2JqZWN0KGQpfHwoZT1BcnJheS5pc0FycmF5KGQpKSk/KGU/KGU9ITEsZj1jJiZBcnJheS5pc0FycmF5KGMpP2M6W10pOmY9YyYmci5pc1BsYWluT2JqZWN0KGMpP2M6e30sZ1tiXT1yLmV4dGVuZChqLGYsZCkpOnZvaWQgMCE9PWQmJihnW2JdPWQpKTtyZXR1cm4gZ30sci5leHRlbmQoe2V4cGFuZG86ImpRdWVyeSIrKHErTWF0aC5yYW5kb20oKSkucmVwbGFjZSgvXEQvZywiIiksaXNSZWFkeTohMCxlcnJvcjpmdW5jdGlvbihhKXt0aHJvdyBuZXcgRXJyb3IoYSl9LG5vb3A6ZnVuY3Rpb24oKXt9LGlzRnVuY3Rpb246ZnVuY3Rpb24oYSl7cmV0dXJuImZ1bmN0aW9uIj09PXIudHlwZShhKX0saXNXaW5kb3c6ZnVuY3Rpb24oYSl7cmV0dXJuIG51bGwhPWEmJmE9PT1hLndpbmRvd30saXNOdW1lcmljOmZ1bmN0aW9uKGEpe3ZhciBiPXIudHlwZShhKTtyZXR1cm4oIm51bWJlciI9PT1ifHwic3RyaW5nIj09PWIpJiYhaXNOYU4oYS1wYXJzZUZsb2F0KGEpKX0saXNQbGFpbk9iamVjdDpmdW5jdGlvbihhKXt2YXIgYixjO3JldHVybiEoIWF8fCJbb2JqZWN0IE9iamVjdF0iIT09ay5jYWxsKGEpKSYmKCEoYj1lKGEpKXx8KGM9bC5jYWxsKGIsImNvbnN0cnVjdG9yIikmJmIuY29uc3RydWN0b3IsImZ1bmN0aW9uIj09dHlwZW9mIGMmJm0uY2FsbChjKT09PW4pKX0saXNFbXB0eU9iamVjdDpmdW5jdGlvbihhKXt2YXIgYjtmb3IoYiBpbiBhKXJldHVybiExO3JldHVybiEwfSx0eXBlOmZ1bmN0aW9uKGEpe3JldHVybiBudWxsPT1hP2ErIiI6Im9iamVjdCI9PXR5cGVvZiBhfHwiZnVuY3Rpb24iPT10eXBlb2YgYT9qW2suY2FsbChhKV18fCJvYmplY3QiOnR5cGVvZiBhfSxnbG9iYWxFdmFsOmZ1bmN0aW9uKGEpe3AoYSl9LGNhbWVsQ2FzZTpmdW5jdGlvbihhKXtyZXR1cm4gYS5yZXBsYWNlKHQsIm1zLSIpLnJlcGxhY2UodSx2KX0sZWFjaDpmdW5jdGlvbihhLGIpe3ZhciBjLGQ9MDtpZih3KGEpKXtmb3IoYz1hLmxlbmd0aDtkPGM7ZCsrKWlmKGIuY2FsbChhW2RdLGQsYVtkXSk9PT0hMSlicmVha31lbHNlIGZvcihkIGluIGEpaWYoYi5jYWxsKGFbZF0sZCxhW2RdKT09PSExKWJyZWFrO3JldHVybiBhfSx0cmltOmZ1bmN0aW9uKGEpe3JldHVybiBudWxsPT1hPyIiOihhKyIiKS5yZXBsYWNlKHMsIiIpfSxtYWtlQXJyYXk6ZnVuY3Rpb24oYSxiKXt2YXIgYz1ifHxbXTtyZXR1cm4gbnVsbCE9YSYmKHcoT2JqZWN0KGEpKT9yLm1lcmdlKGMsInN0cmluZyI9PXR5cGVvZiBhP1thXTphKTpoLmNhbGwoYyxhKSksY30saW5BcnJheTpmdW5jdGlvbihhLGIsYyl7cmV0dXJuIG51bGw9PWI/LTE6aS5jYWxsKGIsYSxjKX0sbWVyZ2U6ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9K2IubGVuZ3RoLGQ9MCxlPWEubGVuZ3RoO2Q8YztkKyspYVtlKytdPWJbZF07cmV0dXJuIGEubGVuZ3RoPWUsYX0sZ3JlcDpmdW5jdGlvbihhLGIsYyl7Zm9yKHZhciBkLGU9W10sZj0wLGc9YS5sZW5ndGgsaD0hYztmPGc7ZisrKWQ9IWIoYVtmXSxmKSxkIT09aCYmZS5wdXNoKGFbZl0pO3JldHVybiBlfSxtYXA6ZnVuY3Rpb24oYSxiLGMpe3ZhciBkLGUsZj0wLGg9W107aWYodyhhKSlmb3IoZD1hLmxlbmd0aDtmPGQ7ZisrKWU9YihhW2ZdLGYsYyksbnVsbCE9ZSYmaC5wdXNoKGUpO2Vsc2UgZm9yKGYgaW4gYSllPWIoYVtmXSxmLGMpLG51bGwhPWUmJmgucHVzaChlKTtyZXR1cm4gZy5hcHBseShbXSxoKX0sZ3VpZDoxLHByb3h5OmZ1bmN0aW9uKGEsYil7dmFyIGMsZCxlO2lmKCJzdHJpbmciPT10eXBlb2YgYiYmKGM9YVtiXSxiPWEsYT1jKSxyLmlzRnVuY3Rpb24oYSkpcmV0dXJuIGQ9Zi5jYWxsKGFyZ3VtZW50cywyKSxlPWZ1bmN0aW9uKCl7cmV0dXJuIGEuYXBwbHkoYnx8dGhpcyxkLmNvbmNhdChmLmNhbGwoYXJndW1lbnRzKSkpfSxlLmd1aWQ9YS5ndWlkPWEuZ3VpZHx8ci5ndWlkKyssZX0sbm93OkRhdGUubm93LHN1cHBvcnQ6b30pLCJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJihyLmZuW1N5bWJvbC5pdGVyYXRvcl09Y1tTeW1ib2wuaXRlcmF0b3JdKSxyLmVhY2goIkJvb2xlYW4gTnVtYmVyIFN0cmluZyBGdW5jdGlvbiBBcnJheSBEYXRlIFJlZ0V4cCBPYmplY3QgRXJyb3IgU3ltYm9sIi5zcGxpdCgiICIpLGZ1bmN0aW9uKGEsYil7alsiW29iamVjdCAiK2IrIl0iXT1iLnRvTG93ZXJDYXNlKCl9KTtmdW5jdGlvbiB3KGEpe3ZhciBiPSEhYSYmImxlbmd0aCJpbiBhJiZhLmxlbmd0aCxjPXIudHlwZShhKTtyZXR1cm4iZnVuY3Rpb24iIT09YyYmIXIuaXNXaW5kb3coYSkmJigiYXJyYXkiPT09Y3x8MD09PWJ8fCJudW1iZXIiPT10eXBlb2YgYiYmYj4wJiZiLTEgaW4gYSl9dmFyIHg9ZnVuY3Rpb24oYSl7dmFyIGIsYyxkLGUsZixnLGgsaSxqLGssbCxtLG4sbyxwLHEscixzLHQsdT0ic2l6emxlIisxKm5ldyBEYXRlLHY9YS5kb2N1bWVudCx3PTAseD0wLHk9aGEoKSx6PWhhKCksQT1oYSgpLEI9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYT09PWImJihsPSEwKSwwfSxDPXt9Lmhhc093blByb3BlcnR5LEQ9W10sRT1ELnBvcCxGPUQucHVzaCxHPUQucHVzaCxIPUQuc2xpY2UsST1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYz0wLGQ9YS5sZW5ndGg7YzxkO2MrKylpZihhW2NdPT09YilyZXR1cm4gYztyZXR1cm4tMX0sSj0iY2hlY2tlZHxzZWxlY3RlZHxhc3luY3xhdXRvZm9jdXN8YXV0b3BsYXl8Y29udHJvbHN8ZGVmZXJ8ZGlzYWJsZWR8aGlkZGVufGlzbWFwfGxvb3B8bXVsdGlwbGV8b3BlbnxyZWFkb25seXxyZXF1aXJlZHxzY29wZWQiLEs9IltcXHgyMFxcdFxcclxcblxcZl0iLEw9Iig/OlxcXFwufFtcXHctXXxbXlwwLVxceGEwXSkrIixNPSJcXFsiK0srIiooIitMKyIpKD86IitLKyIqKFsqXiR8IX5dPz0pIitLKyIqKD86JygoPzpcXFxcLnxbXlxcXFwnXSkqKSd8XCIoKD86XFxcXC58W15cXFxcXCJdKSopXCJ8KCIrTCsiKSl8KSIrSysiKlxcXSIsTj0iOigiK0wrIikoPzpcXCgoKCcoKD86XFxcXC58W15cXFxcJ10pKiknfFwiKCg/OlxcXFwufFteXFxcXFwiXSkqKVwiKXwoKD86XFxcXC58W15cXFxcKClbXFxdXXwiK00rIikqKXwuKilcXCl8KSIsTz1uZXcgUmVnRXhwKEsrIisiLCJnIiksUD1uZXcgUmVnRXhwKCJeIitLKyIrfCgoPzpefFteXFxcXF0pKD86XFxcXC4pKikiK0srIiskIiwiZyIpLFE9bmV3IFJlZ0V4cCgiXiIrSysiKiwiK0srIioiKSxSPW5ldyBSZWdFeHAoIl4iK0srIiooWz4rfl18IitLKyIpIitLKyIqIiksUz1uZXcgUmVnRXhwKCI9IitLKyIqKFteXFxdJ1wiXSo/KSIrSysiKlxcXSIsImciKSxUPW5ldyBSZWdFeHAoTiksVT1uZXcgUmVnRXhwKCJeIitMKyIkIiksVj17SUQ6bmV3IFJlZ0V4cCgiXiMoIitMKyIpIiksQ0xBU1M6bmV3IFJlZ0V4cCgiXlxcLigiK0wrIikiKSxUQUc6bmV3IFJlZ0V4cCgiXigiK0wrInxbKl0pIiksQVRUUjpuZXcgUmVnRXhwKCJeIitNKSxQU0VVRE86bmV3IFJlZ0V4cCgiXiIrTiksQ0hJTEQ6bmV3IFJlZ0V4cCgiXjoob25seXxmaXJzdHxsYXN0fG50aHxudGgtbGFzdCktKGNoaWxkfG9mLXR5cGUpKD86XFwoIitLKyIqKGV2ZW58b2RkfCgoWystXXwpKFxcZCopbnwpIitLKyIqKD86KFsrLV18KSIrSysiKihcXGQrKXwpKSIrSysiKlxcKXwpIiwiaSIpLGJvb2w6bmV3IFJlZ0V4cCgiXig/OiIrSisiKSQiLCJpIiksbmVlZHNDb250ZXh0Om5ldyBSZWdFeHAoIl4iK0srIipbPit+XXw6KGV2ZW58b2RkfGVxfGd0fGx0fG50aHxmaXJzdHxsYXN0KSg/OlxcKCIrSysiKigoPzotXFxkKT9cXGQqKSIrSysiKlxcKXwpKD89W14tXXwkKSIsImkiKX0sVz0vXig/OmlucHV0fHNlbGVjdHx0ZXh0YXJlYXxidXR0b24pJC9pLFg9L15oXGQkL2ksWT0vXltee10rXHtccypcW25hdGl2ZSBcdy8sWj0vXig/OiMoW1x3LV0rKXwoXHcrKXxcLihbXHctXSspKSQvLCQ9L1srfl0vLF89bmV3IFJlZ0V4cCgiXFxcXChbXFxkYS1mXXsxLDZ9IitLKyI/fCgiK0srIil8LikiLCJpZyIpLGFhPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD0iMHgiK2ItNjU1MzY7cmV0dXJuIGQhPT1kfHxjP2I6ZDwwP1N0cmluZy5mcm9tQ2hhckNvZGUoZCs2NTUzNik6U3RyaW5nLmZyb21DaGFyQ29kZShkPj4xMHw1NTI5NiwxMDIzJmR8NTYzMjApfSxiYT0vKFtcMC1ceDFmXHg3Zl18Xi0/XGQpfF4tJHxbXlwwLVx4MWZceDdmLVx1RkZGRlx3LV0vZyxjYT1mdW5jdGlvbihhLGIpe3JldHVybiBiPyJcMCI9PT1hPyJcdWZmZmQiOmEuc2xpY2UoMCwtMSkrIlxcIithLmNoYXJDb2RlQXQoYS5sZW5ndGgtMSkudG9TdHJpbmcoMTYpKyIgIjoiXFwiK2F9LGRhPWZ1bmN0aW9uKCl7bSgpfSxlYT10YShmdW5jdGlvbihhKXtyZXR1cm4gYS5kaXNhYmxlZD09PSEwJiYoImZvcm0iaW4gYXx8ImxhYmVsImluIGEpfSx7ZGlyOiJwYXJlbnROb2RlIixuZXh0OiJsZWdlbmQifSk7dHJ5e0cuYXBwbHkoRD1ILmNhbGwodi5jaGlsZE5vZGVzKSx2LmNoaWxkTm9kZXMpLERbdi5jaGlsZE5vZGVzLmxlbmd0aF0ubm9kZVR5cGV9Y2F0Y2goZmEpe0c9e2FwcGx5OkQubGVuZ3RoP2Z1bmN0aW9uKGEsYil7Ri5hcHBseShhLEguY2FsbChiKSl9OmZ1bmN0aW9uKGEsYil7dmFyIGM9YS5sZW5ndGgsZD0wO3doaWxlKGFbYysrXT1iW2QrK10pO2EubGVuZ3RoPWMtMX19fWZ1bmN0aW9uIGdhKGEsYixkLGUpe3ZhciBmLGgsaixrLGwsbyxyLHM9YiYmYi5vd25lckRvY3VtZW50LHc9Yj9iLm5vZGVUeXBlOjk7aWYoZD1kfHxbXSwic3RyaW5nIiE9dHlwZW9mIGF8fCFhfHwxIT09dyYmOSE9PXcmJjExIT09dylyZXR1cm4gZDtpZighZSYmKChiP2Iub3duZXJEb2N1bWVudHx8Yjp2KSE9PW4mJm0oYiksYj1ifHxuLHApKXtpZigxMSE9PXcmJihsPVouZXhlYyhhKSkpaWYoZj1sWzFdKXtpZig5PT09dyl7aWYoIShqPWIuZ2V0RWxlbWVudEJ5SWQoZikpKXJldHVybiBkO2lmKGouaWQ9PT1mKXJldHVybiBkLnB1c2goaiksZH1lbHNlIGlmKHMmJihqPXMuZ2V0RWxlbWVudEJ5SWQoZikpJiZ0KGIsaikmJmouaWQ9PT1mKXJldHVybiBkLnB1c2goaiksZH1lbHNle2lmKGxbMl0pcmV0dXJuIEcuYXBwbHkoZCxiLmdldEVsZW1lbnRzQnlUYWdOYW1lKGEpKSxkO2lmKChmPWxbM10pJiZjLmdldEVsZW1lbnRzQnlDbGFzc05hbWUmJmIuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSlyZXR1cm4gRy5hcHBseShkLGIuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShmKSksZH1pZihjLnFzYSYmIUFbYSsiICJdJiYoIXF8fCFxLnRlc3QoYSkpKXtpZigxIT09dylzPWIscj1hO2Vsc2UgaWYoIm9iamVjdCIhPT1iLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpeyhrPWIuZ2V0QXR0cmlidXRlKCJpZCIpKT9rPWsucmVwbGFjZShiYSxjYSk6Yi5zZXRBdHRyaWJ1dGUoImlkIixrPXUpLG89ZyhhKSxoPW8ubGVuZ3RoO3doaWxlKGgtLSlvW2hdPSIjIitrKyIgIitzYShvW2hdKTtyPW8uam9pbigiLCIpLHM9JC50ZXN0KGEpJiZxYShiLnBhcmVudE5vZGUpfHxifWlmKHIpdHJ5e3JldHVybiBHLmFwcGx5KGQscy5xdWVyeVNlbGVjdG9yQWxsKHIpKSxkfWNhdGNoKHgpe31maW5hbGx5e2s9PT11JiZiLnJlbW92ZUF0dHJpYnV0ZSgiaWQiKX19fXJldHVybiBpKGEucmVwbGFjZShQLCIkMSIpLGIsZCxlKX1mdW5jdGlvbiBoYSgpe3ZhciBhPVtdO2Z1bmN0aW9uIGIoYyxlKXtyZXR1cm4gYS5wdXNoKGMrIiAiKT5kLmNhY2hlTGVuZ3RoJiZkZWxldGUgYlthLnNoaWZ0KCldLGJbYysiICJdPWV9cmV0dXJuIGJ9ZnVuY3Rpb24gaWEoYSl7cmV0dXJuIGFbdV09ITAsYX1mdW5jdGlvbiBqYShhKXt2YXIgYj1uLmNyZWF0ZUVsZW1lbnQoImZpZWxkc2V0Iik7dHJ5e3JldHVybiEhYShiKX1jYXRjaChjKXtyZXR1cm4hMX1maW5hbGx5e2IucGFyZW50Tm9kZSYmYi5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGIpLGI9bnVsbH19ZnVuY3Rpb24ga2EoYSxiKXt2YXIgYz1hLnNwbGl0KCJ8IiksZT1jLmxlbmd0aDt3aGlsZShlLS0pZC5hdHRySGFuZGxlW2NbZV1dPWJ9ZnVuY3Rpb24gbGEoYSxiKXt2YXIgYz1iJiZhLGQ9YyYmMT09PWEubm9kZVR5cGUmJjE9PT1iLm5vZGVUeXBlJiZhLnNvdXJjZUluZGV4LWIuc291cmNlSW5kZXg7aWYoZClyZXR1cm4gZDtpZihjKXdoaWxlKGM9Yy5uZXh0U2libGluZylpZihjPT09YilyZXR1cm4tMTtyZXR1cm4gYT8xOi0xfWZ1bmN0aW9uIG1hKGEpe3JldHVybiBmdW5jdGlvbihiKXt2YXIgYz1iLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuImlucHV0Ij09PWMmJmIudHlwZT09PWF9fWZ1bmN0aW9uIG5hKGEpe3JldHVybiBmdW5jdGlvbihiKXt2YXIgYz1iLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuKCJpbnB1dCI9PT1jfHwiYnV0dG9uIj09PWMpJiZiLnR5cGU9PT1hfX1mdW5jdGlvbiBvYShhKXtyZXR1cm4gZnVuY3Rpb24oYil7cmV0dXJuImZvcm0iaW4gYj9iLnBhcmVudE5vZGUmJmIuZGlzYWJsZWQ9PT0hMT8ibGFiZWwiaW4gYj8ibGFiZWwiaW4gYi5wYXJlbnROb2RlP2IucGFyZW50Tm9kZS5kaXNhYmxlZD09PWE6Yi5kaXNhYmxlZD09PWE6Yi5pc0Rpc2FibGVkPT09YXx8Yi5pc0Rpc2FibGVkIT09IWEmJmVhKGIpPT09YTpiLmRpc2FibGVkPT09YToibGFiZWwiaW4gYiYmYi5kaXNhYmxlZD09PWF9fWZ1bmN0aW9uIHBhKGEpe3JldHVybiBpYShmdW5jdGlvbihiKXtyZXR1cm4gYj0rYixpYShmdW5jdGlvbihjLGQpe3ZhciBlLGY9YShbXSxjLmxlbmd0aCxiKSxnPWYubGVuZ3RoO3doaWxlKGctLSljW2U9ZltnXV0mJihjW2VdPSEoZFtlXT1jW2VdKSl9KX0pfWZ1bmN0aW9uIHFhKGEpe3JldHVybiBhJiYidW5kZWZpbmVkIiE9dHlwZW9mIGEuZ2V0RWxlbWVudHNCeVRhZ05hbWUmJmF9Yz1nYS5zdXBwb3J0PXt9LGY9Z2EuaXNYTUw9ZnVuY3Rpb24oYSl7dmFyIGI9YSYmKGEub3duZXJEb2N1bWVudHx8YSkuZG9jdW1lbnRFbGVtZW50O3JldHVybiEhYiYmIkhUTUwiIT09Yi5ub2RlTmFtZX0sbT1nYS5zZXREb2N1bWVudD1mdW5jdGlvbihhKXt2YXIgYixlLGc9YT9hLm93bmVyRG9jdW1lbnR8fGE6djtyZXR1cm4gZyE9PW4mJjk9PT1nLm5vZGVUeXBlJiZnLmRvY3VtZW50RWxlbWVudD8obj1nLG89bi5kb2N1bWVudEVsZW1lbnQscD0hZihuKSx2IT09biYmKGU9bi5kZWZhdWx0VmlldykmJmUudG9wIT09ZSYmKGUuYWRkRXZlbnRMaXN0ZW5lcj9lLmFkZEV2ZW50TGlzdGVuZXIoInVubG9hZCIsZGEsITEpOmUuYXR0YWNoRXZlbnQmJmUuYXR0YWNoRXZlbnQoIm9udW5sb2FkIixkYSkpLGMuYXR0cmlidXRlcz1qYShmdW5jdGlvbihhKXtyZXR1cm4gYS5jbGFzc05hbWU9ImkiLCFhLmdldEF0dHJpYnV0ZSgiY2xhc3NOYW1lIil9KSxjLmdldEVsZW1lbnRzQnlUYWdOYW1lPWphKGZ1bmN0aW9uKGEpe3JldHVybiBhLmFwcGVuZENoaWxkKG4uY3JlYXRlQ29tbWVudCgiIikpLCFhLmdldEVsZW1lbnRzQnlUYWdOYW1lKCIqIikubGVuZ3RofSksYy5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lPVkudGVzdChuLmdldEVsZW1lbnRzQnlDbGFzc05hbWUpLGMuZ2V0QnlJZD1qYShmdW5jdGlvbihhKXtyZXR1cm4gby5hcHBlbmRDaGlsZChhKS5pZD11LCFuLmdldEVsZW1lbnRzQnlOYW1lfHwhbi5nZXRFbGVtZW50c0J5TmFtZSh1KS5sZW5ndGh9KSxjLmdldEJ5SWQ/KGQuZmlsdGVyLklEPWZ1bmN0aW9uKGEpe3ZhciBiPWEucmVwbGFjZShfLGFhKTtyZXR1cm4gZnVuY3Rpb24oYSl7cmV0dXJuIGEuZ2V0QXR0cmlidXRlKCJpZCIpPT09Yn19LGQuZmluZC5JRD1mdW5jdGlvbihhLGIpe2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgYi5nZXRFbGVtZW50QnlJZCYmcCl7dmFyIGM9Yi5nZXRFbGVtZW50QnlJZChhKTtyZXR1cm4gYz9bY106W119fSk6KGQuZmlsdGVyLklEPWZ1bmN0aW9uKGEpe3ZhciBiPWEucmVwbGFjZShfLGFhKTtyZXR1cm4gZnVuY3Rpb24oYSl7dmFyIGM9InVuZGVmaW5lZCIhPXR5cGVvZiBhLmdldEF0dHJpYnV0ZU5vZGUmJmEuZ2V0QXR0cmlidXRlTm9kZSgiaWQiKTtyZXR1cm4gYyYmYy52YWx1ZT09PWJ9fSxkLmZpbmQuSUQ9ZnVuY3Rpb24oYSxiKXtpZigidW5kZWZpbmVkIiE9dHlwZW9mIGIuZ2V0RWxlbWVudEJ5SWQmJnApe3ZhciBjLGQsZSxmPWIuZ2V0RWxlbWVudEJ5SWQoYSk7aWYoZil7aWYoYz1mLmdldEF0dHJpYnV0ZU5vZGUoImlkIiksYyYmYy52YWx1ZT09PWEpcmV0dXJuW2ZdO2U9Yi5nZXRFbGVtZW50c0J5TmFtZShhKSxkPTA7d2hpbGUoZj1lW2QrK10paWYoYz1mLmdldEF0dHJpYnV0ZU5vZGUoImlkIiksYyYmYy52YWx1ZT09PWEpcmV0dXJuW2ZdfXJldHVybltdfX0pLGQuZmluZC5UQUc9Yy5nZXRFbGVtZW50c0J5VGFnTmFtZT9mdW5jdGlvbihhLGIpe3JldHVybiJ1bmRlZmluZWQiIT10eXBlb2YgYi5nZXRFbGVtZW50c0J5VGFnTmFtZT9iLmdldEVsZW1lbnRzQnlUYWdOYW1lKGEpOmMucXNhP2IucXVlcnlTZWxlY3RvckFsbChhKTp2b2lkIDB9OmZ1bmN0aW9uKGEsYil7dmFyIGMsZD1bXSxlPTAsZj1iLmdldEVsZW1lbnRzQnlUYWdOYW1lKGEpO2lmKCIqIj09PWEpe3doaWxlKGM9ZltlKytdKTE9PT1jLm5vZGVUeXBlJiZkLnB1c2goYyk7cmV0dXJuIGR9cmV0dXJuIGZ9LGQuZmluZC5DTEFTUz1jLmdldEVsZW1lbnRzQnlDbGFzc05hbWUmJmZ1bmN0aW9uKGEsYil7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBiLmdldEVsZW1lbnRzQnlDbGFzc05hbWUmJnApcmV0dXJuIGIuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShhKX0scj1bXSxxPVtdLChjLnFzYT1ZLnRlc3Qobi5xdWVyeVNlbGVjdG9yQWxsKSkmJihqYShmdW5jdGlvbihhKXtvLmFwcGVuZENoaWxkKGEpLmlubmVySFRNTD0iPGEgaWQ9JyIrdSsiJz48L2E+PHNlbGVjdCBpZD0nIit1KyItXHJcXCcgbXNhbGxvd2NhcHR1cmU9Jyc+PG9wdGlvbiBzZWxlY3RlZD0nJz48L29wdGlvbj48L3NlbGVjdD4iLGEucXVlcnlTZWxlY3RvckFsbCgiW21zYWxsb3djYXB0dXJlXj0nJ10iKS5sZW5ndGgmJnEucHVzaCgiWypeJF09IitLKyIqKD86Jyd8XCJcIikiKSxhLnF1ZXJ5U2VsZWN0b3JBbGwoIltzZWxlY3RlZF0iKS5sZW5ndGh8fHEucHVzaCgiXFxbIitLKyIqKD86dmFsdWV8IitKKyIpIiksYS5xdWVyeVNlbGVjdG9yQWxsKCJbaWR+PSIrdSsiLV0iKS5sZW5ndGh8fHEucHVzaCgifj0iKSxhLnF1ZXJ5U2VsZWN0b3JBbGwoIjpjaGVja2VkIikubGVuZ3RofHxxLnB1c2goIjpjaGVja2VkIiksYS5xdWVyeVNlbGVjdG9yQWxsKCJhIyIrdSsiKyoiKS5sZW5ndGh8fHEucHVzaCgiLiMuK1srfl0iKX0pLGphKGZ1bmN0aW9uKGEpe2EuaW5uZXJIVE1MPSI8YSBocmVmPScnIGRpc2FibGVkPSdkaXNhYmxlZCc+PC9hPjxzZWxlY3QgZGlzYWJsZWQ9J2Rpc2FibGVkJz48b3B0aW9uLz48L3NlbGVjdD4iO3ZhciBiPW4uY3JlYXRlRWxlbWVudCgiaW5wdXQiKTtiLnNldEF0dHJpYnV0ZSgidHlwZSIsImhpZGRlbiIpLGEuYXBwZW5kQ2hpbGQoYikuc2V0QXR0cmlidXRlKCJuYW1lIiwiRCIpLGEucXVlcnlTZWxlY3RvckFsbCgiW25hbWU9ZF0iKS5sZW5ndGgmJnEucHVzaCgibmFtZSIrSysiKlsqXiR8IX5dPz0iKSwyIT09YS5xdWVyeVNlbGVjdG9yQWxsKCI6ZW5hYmxlZCIpLmxlbmd0aCYmcS5wdXNoKCI6ZW5hYmxlZCIsIjpkaXNhYmxlZCIpLG8uYXBwZW5kQ2hpbGQoYSkuZGlzYWJsZWQ9ITAsMiE9PWEucXVlcnlTZWxlY3RvckFsbCgiOmRpc2FibGVkIikubGVuZ3RoJiZxLnB1c2goIjplbmFibGVkIiwiOmRpc2FibGVkIiksYS5xdWVyeVNlbGVjdG9yQWxsKCIqLDp4IikscS5wdXNoKCIsLio6Iil9KSksKGMubWF0Y2hlc1NlbGVjdG9yPVkudGVzdChzPW8ubWF0Y2hlc3x8by53ZWJraXRNYXRjaGVzU2VsZWN0b3J8fG8ubW96TWF0Y2hlc1NlbGVjdG9yfHxvLm9NYXRjaGVzU2VsZWN0b3J8fG8ubXNNYXRjaGVzU2VsZWN0b3IpKSYmamEoZnVuY3Rpb24oYSl7Yy5kaXNjb25uZWN0ZWRNYXRjaD1zLmNhbGwoYSwiKiIpLHMuY2FsbChhLCJbcyE9JyddOngiKSxyLnB1c2goIiE9IixOKX0pLHE9cS5sZW5ndGgmJm5ldyBSZWdFeHAocS5qb2luKCJ8IikpLHI9ci5sZW5ndGgmJm5ldyBSZWdFeHAoci5qb2luKCJ8IikpLGI9WS50ZXN0KG8uY29tcGFyZURvY3VtZW50UG9zaXRpb24pLHQ9Ynx8WS50ZXN0KG8uY29udGFpbnMpP2Z1bmN0aW9uKGEsYil7dmFyIGM9OT09PWEubm9kZVR5cGU/YS5kb2N1bWVudEVsZW1lbnQ6YSxkPWImJmIucGFyZW50Tm9kZTtyZXR1cm4gYT09PWR8fCEoIWR8fDEhPT1kLm5vZGVUeXBlfHwhKGMuY29udGFpbnM/Yy5jb250YWlucyhkKTphLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uJiYxNiZhLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKGQpKSl9OmZ1bmN0aW9uKGEsYil7aWYoYil3aGlsZShiPWIucGFyZW50Tm9kZSlpZihiPT09YSlyZXR1cm4hMDtyZXR1cm4hMX0sQj1iP2Z1bmN0aW9uKGEsYil7aWYoYT09PWIpcmV0dXJuIGw9ITAsMDt2YXIgZD0hYS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbi0hYi5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbjtyZXR1cm4gZD9kOihkPShhLm93bmVyRG9jdW1lbnR8fGEpPT09KGIub3duZXJEb2N1bWVudHx8Yik/YS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihiKToxLDEmZHx8IWMuc29ydERldGFjaGVkJiZiLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKGEpPT09ZD9hPT09bnx8YS5vd25lckRvY3VtZW50PT09diYmdCh2LGEpPy0xOmI9PT1ufHxiLm93bmVyRG9jdW1lbnQ9PT12JiZ0KHYsYik/MTprP0koayxhKS1JKGssYik6MDo0JmQ/LTE6MSl9OmZ1bmN0aW9uKGEsYil7aWYoYT09PWIpcmV0dXJuIGw9ITAsMDt2YXIgYyxkPTAsZT1hLnBhcmVudE5vZGUsZj1iLnBhcmVudE5vZGUsZz1bYV0saD1bYl07aWYoIWV8fCFmKXJldHVybiBhPT09bj8tMTpiPT09bj8xOmU/LTE6Zj8xOms/SShrLGEpLUkoayxiKTowO2lmKGU9PT1mKXJldHVybiBsYShhLGIpO2M9YTt3aGlsZShjPWMucGFyZW50Tm9kZSlnLnVuc2hpZnQoYyk7Yz1iO3doaWxlKGM9Yy5wYXJlbnROb2RlKWgudW5zaGlmdChjKTt3aGlsZShnW2RdPT09aFtkXSlkKys7cmV0dXJuIGQ/bGEoZ1tkXSxoW2RdKTpnW2RdPT09dj8tMTpoW2RdPT09dj8xOjB9LG4pOm59LGdhLm1hdGNoZXM9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gZ2EoYSxudWxsLG51bGwsYil9LGdhLm1hdGNoZXNTZWxlY3Rvcj1mdW5jdGlvbihhLGIpe2lmKChhLm93bmVyRG9jdW1lbnR8fGEpIT09biYmbShhKSxiPWIucmVwbGFjZShTLCI9JyQxJ10iKSxjLm1hdGNoZXNTZWxlY3RvciYmcCYmIUFbYisiICJdJiYoIXJ8fCFyLnRlc3QoYikpJiYoIXF8fCFxLnRlc3QoYikpKXRyeXt2YXIgZD1zLmNhbGwoYSxiKTtpZihkfHxjLmRpc2Nvbm5lY3RlZE1hdGNofHxhLmRvY3VtZW50JiYxMSE9PWEuZG9jdW1lbnQubm9kZVR5cGUpcmV0dXJuIGR9Y2F0Y2goZSl7fXJldHVybiBnYShiLG4sbnVsbCxbYV0pLmxlbmd0aD4wfSxnYS5jb250YWlucz1mdW5jdGlvbihhLGIpe3JldHVybihhLm93bmVyRG9jdW1lbnR8fGEpIT09biYmbShhKSx0KGEsYil9LGdhLmF0dHI9ZnVuY3Rpb24oYSxiKXsoYS5vd25lckRvY3VtZW50fHxhKSE9PW4mJm0oYSk7dmFyIGU9ZC5hdHRySGFuZGxlW2IudG9Mb3dlckNhc2UoKV0sZj1lJiZDLmNhbGwoZC5hdHRySGFuZGxlLGIudG9Mb3dlckNhc2UoKSk/ZShhLGIsIXApOnZvaWQgMDtyZXR1cm4gdm9pZCAwIT09Zj9mOmMuYXR0cmlidXRlc3x8IXA/YS5nZXRBdHRyaWJ1dGUoYik6KGY9YS5nZXRBdHRyaWJ1dGVOb2RlKGIpKSYmZi5zcGVjaWZpZWQ/Zi52YWx1ZTpudWxsfSxnYS5lc2NhcGU9ZnVuY3Rpb24oYSl7cmV0dXJuKGErIiIpLnJlcGxhY2UoYmEsY2EpfSxnYS5lcnJvcj1mdW5jdGlvbihhKXt0aHJvdyBuZXcgRXJyb3IoIlN5bnRheCBlcnJvciwgdW5yZWNvZ25pemVkIGV4cHJlc3Npb246ICIrYSl9LGdhLnVuaXF1ZVNvcnQ9ZnVuY3Rpb24oYSl7dmFyIGIsZD1bXSxlPTAsZj0wO2lmKGw9IWMuZGV0ZWN0RHVwbGljYXRlcyxrPSFjLnNvcnRTdGFibGUmJmEuc2xpY2UoMCksYS5zb3J0KEIpLGwpe3doaWxlKGI9YVtmKytdKWI9PT1hW2ZdJiYoZT1kLnB1c2goZikpO3doaWxlKGUtLSlhLnNwbGljZShkW2VdLDEpfXJldHVybiBrPW51bGwsYX0sZT1nYS5nZXRUZXh0PWZ1bmN0aW9uKGEpe3ZhciBiLGM9IiIsZD0wLGY9YS5ub2RlVHlwZTtpZihmKXtpZigxPT09Znx8OT09PWZ8fDExPT09Zil7aWYoInN0cmluZyI9PXR5cGVvZiBhLnRleHRDb250ZW50KXJldHVybiBhLnRleHRDb250ZW50O2ZvcihhPWEuZmlyc3RDaGlsZDthO2E9YS5uZXh0U2libGluZyljKz1lKGEpfWVsc2UgaWYoMz09PWZ8fDQ9PT1mKXJldHVybiBhLm5vZGVWYWx1ZX1lbHNlIHdoaWxlKGI9YVtkKytdKWMrPWUoYik7cmV0dXJuIGN9LGQ9Z2Euc2VsZWN0b3JzPXtjYWNoZUxlbmd0aDo1MCxjcmVhdGVQc2V1ZG86aWEsbWF0Y2g6VixhdHRySGFuZGxlOnt9LGZpbmQ6e30scmVsYXRpdmU6eyI+Ijp7ZGlyOiJwYXJlbnROb2RlIixmaXJzdDohMH0sIiAiOntkaXI6InBhcmVudE5vZGUifSwiKyI6e2RpcjoicHJldmlvdXNTaWJsaW5nIixmaXJzdDohMH0sIn4iOntkaXI6InByZXZpb3VzU2libGluZyJ9fSxwcmVGaWx0ZXI6e0FUVFI6ZnVuY3Rpb24oYSl7cmV0dXJuIGFbMV09YVsxXS5yZXBsYWNlKF8sYWEpLGFbM109KGFbM118fGFbNF18fGFbNV18fCIiKS5yZXBsYWNlKF8sYWEpLCJ+PSI9PT1hWzJdJiYoYVszXT0iICIrYVszXSsiICIpLGEuc2xpY2UoMCw0KX0sQ0hJTEQ6ZnVuY3Rpb24oYSl7cmV0dXJuIGFbMV09YVsxXS50b0xvd2VyQ2FzZSgpLCJudGgiPT09YVsxXS5zbGljZSgwLDMpPyhhWzNdfHxnYS5lcnJvcihhWzBdKSxhWzRdPSsoYVs0XT9hWzVdKyhhWzZdfHwxKToyKigiZXZlbiI9PT1hWzNdfHwib2RkIj09PWFbM10pKSxhWzVdPSsoYVs3XSthWzhdfHwib2RkIj09PWFbM10pKTphWzNdJiZnYS5lcnJvcihhWzBdKSxhfSxQU0VVRE86ZnVuY3Rpb24oYSl7dmFyIGIsYz0hYVs2XSYmYVsyXTtyZXR1cm4gVi5DSElMRC50ZXN0KGFbMF0pP251bGw6KGFbM10/YVsyXT1hWzRdfHxhWzVdfHwiIjpjJiZULnRlc3QoYykmJihiPWcoYywhMCkpJiYoYj1jLmluZGV4T2YoIikiLGMubGVuZ3RoLWIpLWMubGVuZ3RoKSYmKGFbMF09YVswXS5zbGljZSgwLGIpLGFbMl09Yy5zbGljZSgwLGIpKSxhLnNsaWNlKDAsMykpfX0sZmlsdGVyOntUQUc6ZnVuY3Rpb24oYSl7dmFyIGI9YS5yZXBsYWNlKF8sYWEpLnRvTG93ZXJDYXNlKCk7cmV0dXJuIioiPT09YT9mdW5jdGlvbigpe3JldHVybiEwfTpmdW5jdGlvbihhKXtyZXR1cm4gYS5ub2RlTmFtZSYmYS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpPT09Yn19LENMQVNTOmZ1bmN0aW9uKGEpe3ZhciBiPXlbYSsiICJdO3JldHVybiBifHwoYj1uZXcgUmVnRXhwKCIoXnwiK0srIikiK2ErIigiK0srInwkKSIpKSYmeShhLGZ1bmN0aW9uKGEpe3JldHVybiBiLnRlc3QoInN0cmluZyI9PXR5cGVvZiBhLmNsYXNzTmFtZSYmYS5jbGFzc05hbWV8fCJ1bmRlZmluZWQiIT10eXBlb2YgYS5nZXRBdHRyaWJ1dGUmJmEuZ2V0QXR0cmlidXRlKCJjbGFzcyIpfHwiIil9KX0sQVRUUjpmdW5jdGlvbihhLGIsYyl7cmV0dXJuIGZ1bmN0aW9uKGQpe3ZhciBlPWdhLmF0dHIoZCxhKTtyZXR1cm4gbnVsbD09ZT8iIT0iPT09YjohYnx8KGUrPSIiLCI9Ij09PWI/ZT09PWM6IiE9Ij09PWI/ZSE9PWM6Il49Ij09PWI/YyYmMD09PWUuaW5kZXhPZihjKToiKj0iPT09Yj9jJiZlLmluZGV4T2YoYyk+LTE6IiQ9Ij09PWI/YyYmZS5zbGljZSgtYy5sZW5ndGgpPT09Yzoifj0iPT09Yj8oIiAiK2UucmVwbGFjZShPLCIgIikrIiAiKS5pbmRleE9mKGMpPi0xOiJ8PSI9PT1iJiYoZT09PWN8fGUuc2xpY2UoMCxjLmxlbmd0aCsxKT09PWMrIi0iKSl9fSxDSElMRDpmdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmPSJudGgiIT09YS5zbGljZSgwLDMpLGc9Imxhc3QiIT09YS5zbGljZSgtNCksaD0ib2YtdHlwZSI9PT1iO3JldHVybiAxPT09ZCYmMD09PWU/ZnVuY3Rpb24oYSl7cmV0dXJuISFhLnBhcmVudE5vZGV9OmZ1bmN0aW9uKGIsYyxpKXt2YXIgaixrLGwsbSxuLG8scD1mIT09Zz8ibmV4dFNpYmxpbmciOiJwcmV2aW91c1NpYmxpbmciLHE9Yi5wYXJlbnROb2RlLHI9aCYmYi5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpLHM9IWkmJiFoLHQ9ITE7aWYocSl7aWYoZil7d2hpbGUocCl7bT1iO3doaWxlKG09bVtwXSlpZihoP20ubm9kZU5hbWUudG9Mb3dlckNhc2UoKT09PXI6MT09PW0ubm9kZVR5cGUpcmV0dXJuITE7bz1wPSJvbmx5Ij09PWEmJiFvJiYibmV4dFNpYmxpbmcifXJldHVybiEwfWlmKG89W2c/cS5maXJzdENoaWxkOnEubGFzdENoaWxkXSxnJiZzKXttPXEsbD1tW3VdfHwobVt1XT17fSksaz1sW20udW5pcXVlSURdfHwobFttLnVuaXF1ZUlEXT17fSksaj1rW2FdfHxbXSxuPWpbMF09PT13JiZqWzFdLHQ9biYmalsyXSxtPW4mJnEuY2hpbGROb2Rlc1tuXTt3aGlsZShtPSsrbiYmbSYmbVtwXXx8KHQ9bj0wKXx8by5wb3AoKSlpZigxPT09bS5ub2RlVHlwZSYmKyt0JiZtPT09Yil7a1thXT1bdyxuLHRdO2JyZWFrfX1lbHNlIGlmKHMmJihtPWIsbD1tW3VdfHwobVt1XT17fSksaz1sW20udW5pcXVlSURdfHwobFttLnVuaXF1ZUlEXT17fSksaj1rW2FdfHxbXSxuPWpbMF09PT13JiZqWzFdLHQ9biksdD09PSExKXdoaWxlKG09KytuJiZtJiZtW3BdfHwodD1uPTApfHxvLnBvcCgpKWlmKChoP20ubm9kZU5hbWUudG9Mb3dlckNhc2UoKT09PXI6MT09PW0ubm9kZVR5cGUpJiYrK3QmJihzJiYobD1tW3VdfHwobVt1XT17fSksaz1sW20udW5pcXVlSURdfHwobFttLnVuaXF1ZUlEXT17fSksa1thXT1bdyx0XSksbT09PWIpKWJyZWFrO3JldHVybiB0LT1lLHQ9PT1kfHx0JWQ9PT0wJiZ0L2Q+PTB9fX0sUFNFVURPOmZ1bmN0aW9uKGEsYil7dmFyIGMsZT1kLnBzZXVkb3NbYV18fGQuc2V0RmlsdGVyc1thLnRvTG93ZXJDYXNlKCldfHxnYS5lcnJvcigidW5zdXBwb3J0ZWQgcHNldWRvOiAiK2EpO3JldHVybiBlW3VdP2UoYik6ZS5sZW5ndGg+MT8oYz1bYSxhLCIiLGJdLGQuc2V0RmlsdGVycy5oYXNPd25Qcm9wZXJ0eShhLnRvTG93ZXJDYXNlKCkpP2lhKGZ1bmN0aW9uKGEsYyl7dmFyIGQsZj1lKGEsYiksZz1mLmxlbmd0aDt3aGlsZShnLS0pZD1JKGEsZltnXSksYVtkXT0hKGNbZF09ZltnXSl9KTpmdW5jdGlvbihhKXtyZXR1cm4gZShhLDAsYyl9KTplfX0scHNldWRvczp7bm90OmlhKGZ1bmN0aW9uKGEpe3ZhciBiPVtdLGM9W10sZD1oKGEucmVwbGFjZShQLCIkMSIpKTtyZXR1cm4gZFt1XT9pYShmdW5jdGlvbihhLGIsYyxlKXt2YXIgZixnPWQoYSxudWxsLGUsW10pLGg9YS5sZW5ndGg7d2hpbGUoaC0tKShmPWdbaF0pJiYoYVtoXT0hKGJbaF09ZikpfSk6ZnVuY3Rpb24oYSxlLGYpe3JldHVybiBiWzBdPWEsZChiLG51bGwsZixjKSxiWzBdPW51bGwsIWMucG9wKCl9fSksaGFzOmlhKGZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbihiKXtyZXR1cm4gZ2EoYSxiKS5sZW5ndGg+MH19KSxjb250YWluczppYShmdW5jdGlvbihhKXtyZXR1cm4gYT1hLnJlcGxhY2UoXyxhYSksZnVuY3Rpb24oYil7cmV0dXJuKGIudGV4dENvbnRlbnR8fGIuaW5uZXJUZXh0fHxlKGIpKS5pbmRleE9mKGEpPi0xfX0pLGxhbmc6aWEoZnVuY3Rpb24oYSl7cmV0dXJuIFUudGVzdChhfHwiIil8fGdhLmVycm9yKCJ1bnN1cHBvcnRlZCBsYW5nOiAiK2EpLGE9YS5yZXBsYWNlKF8sYWEpLnRvTG93ZXJDYXNlKCksZnVuY3Rpb24oYil7dmFyIGM7ZG8gaWYoYz1wP2IubGFuZzpiLmdldEF0dHJpYnV0ZSgieG1sOmxhbmciKXx8Yi5nZXRBdHRyaWJ1dGUoImxhbmciKSlyZXR1cm4gYz1jLnRvTG93ZXJDYXNlKCksYz09PWF8fDA9PT1jLmluZGV4T2YoYSsiLSIpO3doaWxlKChiPWIucGFyZW50Tm9kZSkmJjE9PT1iLm5vZGVUeXBlKTtyZXR1cm4hMX19KSx0YXJnZXQ6ZnVuY3Rpb24oYil7dmFyIGM9YS5sb2NhdGlvbiYmYS5sb2NhdGlvbi5oYXNoO3JldHVybiBjJiZjLnNsaWNlKDEpPT09Yi5pZH0scm9vdDpmdW5jdGlvbihhKXtyZXR1cm4gYT09PW99LGZvY3VzOmZ1bmN0aW9uKGEpe3JldHVybiBhPT09bi5hY3RpdmVFbGVtZW50JiYoIW4uaGFzRm9jdXN8fG4uaGFzRm9jdXMoKSkmJiEhKGEudHlwZXx8YS5ocmVmfHx+YS50YWJJbmRleCl9LGVuYWJsZWQ6b2EoITEpLGRpc2FibGVkOm9hKCEwKSxjaGVja2VkOmZ1bmN0aW9uKGEpe3ZhciBiPWEubm9kZU5hbWUudG9Mb3dlckNhc2UoKTtyZXR1cm4iaW5wdXQiPT09YiYmISFhLmNoZWNrZWR8fCJvcHRpb24iPT09YiYmISFhLnNlbGVjdGVkfSxzZWxlY3RlZDpmdW5jdGlvbihhKXtyZXR1cm4gYS5wYXJlbnROb2RlJiZhLnBhcmVudE5vZGUuc2VsZWN0ZWRJbmRleCxhLnNlbGVjdGVkPT09ITB9LGVtcHR5OmZ1bmN0aW9uKGEpe2ZvcihhPWEuZmlyc3RDaGlsZDthO2E9YS5uZXh0U2libGluZylpZihhLm5vZGVUeXBlPDYpcmV0dXJuITE7cmV0dXJuITB9LHBhcmVudDpmdW5jdGlvbihhKXtyZXR1cm4hZC5wc2V1ZG9zLmVtcHR5KGEpfSxoZWFkZXI6ZnVuY3Rpb24oYSl7cmV0dXJuIFgudGVzdChhLm5vZGVOYW1lKX0saW5wdXQ6ZnVuY3Rpb24oYSl7cmV0dXJuIFcudGVzdChhLm5vZGVOYW1lKX0sYnV0dG9uOmZ1bmN0aW9uKGEpe3ZhciBiPWEubm9kZU5hbWUudG9Mb3dlckNhc2UoKTtyZXR1cm4iaW5wdXQiPT09YiYmImJ1dHRvbiI9PT1hLnR5cGV8fCJidXR0b24iPT09Yn0sdGV4dDpmdW5jdGlvbihhKXt2YXIgYjtyZXR1cm4iaW5wdXQiPT09YS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpJiYidGV4dCI9PT1hLnR5cGUmJihudWxsPT0oYj1hLmdldEF0dHJpYnV0ZSgidHlwZSIpKXx8InRleHQiPT09Yi50b0xvd2VyQ2FzZSgpKX0sZmlyc3Q6cGEoZnVuY3Rpb24oKXtyZXR1cm5bMF19KSxsYXN0OnBhKGZ1bmN0aW9uKGEsYil7cmV0dXJuW2ItMV19KSxlcTpwYShmdW5jdGlvbihhLGIsYyl7cmV0dXJuW2M8MD9jK2I6Y119KSxldmVuOnBhKGZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPTA7YzxiO2MrPTIpYS5wdXNoKGMpO3JldHVybiBhfSksb2RkOnBhKGZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPTE7YzxiO2MrPTIpYS5wdXNoKGMpO3JldHVybiBhfSksbHQ6cGEoZnVuY3Rpb24oYSxiLGMpe2Zvcih2YXIgZD1jPDA/YytiOmM7LS1kPj0wOylhLnB1c2goZCk7cmV0dXJuIGF9KSxndDpwYShmdW5jdGlvbihhLGIsYyl7Zm9yKHZhciBkPWM8MD9jK2I6YzsrK2Q8YjspYS5wdXNoKGQpO3JldHVybiBhfSl9fSxkLnBzZXVkb3MubnRoPWQucHNldWRvcy5lcTtmb3IoYiBpbntyYWRpbzohMCxjaGVja2JveDohMCxmaWxlOiEwLHBhc3N3b3JkOiEwLGltYWdlOiEwfSlkLnBzZXVkb3NbYl09bWEoYik7Zm9yKGIgaW57c3VibWl0OiEwLHJlc2V0OiEwfSlkLnBzZXVkb3NbYl09bmEoYik7ZnVuY3Rpb24gcmEoKXt9cmEucHJvdG90eXBlPWQuZmlsdGVycz1kLnBzZXVkb3MsZC5zZXRGaWx0ZXJzPW5ldyByYSxnPWdhLnRva2VuaXplPWZ1bmN0aW9uKGEsYil7dmFyIGMsZSxmLGcsaCxpLGosaz16W2ErIiAiXTtpZihrKXJldHVybiBiPzA6ay5zbGljZSgwKTtoPWEsaT1bXSxqPWQucHJlRmlsdGVyO3doaWxlKGgpe2MmJiEoZT1RLmV4ZWMoaCkpfHwoZSYmKGg9aC5zbGljZShlWzBdLmxlbmd0aCl8fGgpLGkucHVzaChmPVtdKSksYz0hMSwoZT1SLmV4ZWMoaCkpJiYoYz1lLnNoaWZ0KCksZi5wdXNoKHt2YWx1ZTpjLHR5cGU6ZVswXS5yZXBsYWNlKFAsIiAiKX0pLGg9aC5zbGljZShjLmxlbmd0aCkpO2ZvcihnIGluIGQuZmlsdGVyKSEoZT1WW2ddLmV4ZWMoaCkpfHxqW2ddJiYhKGU9altnXShlKSl8fChjPWUuc2hpZnQoKSxmLnB1c2goe3ZhbHVlOmMsdHlwZTpnLG1hdGNoZXM6ZX0pLGg9aC5zbGljZShjLmxlbmd0aCkpO2lmKCFjKWJyZWFrfXJldHVybiBiP2gubGVuZ3RoOmg/Z2EuZXJyb3IoYSk6eihhLGkpLnNsaWNlKDApfTtmdW5jdGlvbiBzYShhKXtmb3IodmFyIGI9MCxjPWEubGVuZ3RoLGQ9IiI7YjxjO2IrKylkKz1hW2JdLnZhbHVlO3JldHVybiBkfWZ1bmN0aW9uIHRhKGEsYixjKXt2YXIgZD1iLmRpcixlPWIubmV4dCxmPWV8fGQsZz1jJiYicGFyZW50Tm9kZSI9PT1mLGg9eCsrO3JldHVybiBiLmZpcnN0P2Z1bmN0aW9uKGIsYyxlKXt3aGlsZShiPWJbZF0paWYoMT09PWIubm9kZVR5cGV8fGcpcmV0dXJuIGEoYixjLGUpO3JldHVybiExfTpmdW5jdGlvbihiLGMsaSl7dmFyIGosayxsLG09W3csaF07aWYoaSl7d2hpbGUoYj1iW2RdKWlmKCgxPT09Yi5ub2RlVHlwZXx8ZykmJmEoYixjLGkpKXJldHVybiEwfWVsc2Ugd2hpbGUoYj1iW2RdKWlmKDE9PT1iLm5vZGVUeXBlfHxnKWlmKGw9Ylt1XXx8KGJbdV09e30pLGs9bFtiLnVuaXF1ZUlEXXx8KGxbYi51bmlxdWVJRF09e30pLGUmJmU9PT1iLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpYj1iW2RdfHxiO2Vsc2V7aWYoKGo9a1tmXSkmJmpbMF09PT13JiZqWzFdPT09aClyZXR1cm4gbVsyXT1qWzJdO2lmKGtbZl09bSxtWzJdPWEoYixjLGkpKXJldHVybiEwfXJldHVybiExfX1mdW5jdGlvbiB1YShhKXtyZXR1cm4gYS5sZW5ndGg+MT9mdW5jdGlvbihiLGMsZCl7dmFyIGU9YS5sZW5ndGg7d2hpbGUoZS0tKWlmKCFhW2VdKGIsYyxkKSlyZXR1cm4hMTtyZXR1cm4hMH06YVswXX1mdW5jdGlvbiB2YShhLGIsYyl7Zm9yKHZhciBkPTAsZT1iLmxlbmd0aDtkPGU7ZCsrKWdhKGEsYltkXSxjKTtyZXR1cm4gY31mdW5jdGlvbiB3YShhLGIsYyxkLGUpe2Zvcih2YXIgZixnPVtdLGg9MCxpPWEubGVuZ3RoLGo9bnVsbCE9YjtoPGk7aCsrKShmPWFbaF0pJiYoYyYmIWMoZixkLGUpfHwoZy5wdXNoKGYpLGomJmIucHVzaChoKSkpO3JldHVybiBnfWZ1bmN0aW9uIHhhKGEsYixjLGQsZSxmKXtyZXR1cm4gZCYmIWRbdV0mJihkPXhhKGQpKSxlJiYhZVt1XSYmKGU9eGEoZSxmKSksaWEoZnVuY3Rpb24oZixnLGgsaSl7dmFyIGosayxsLG09W10sbj1bXSxvPWcubGVuZ3RoLHA9Znx8dmEoYnx8IioiLGgubm9kZVR5cGU/W2hdOmgsW10pLHE9IWF8fCFmJiZiP3A6d2EocCxtLGEsaCxpKSxyPWM/ZXx8KGY/YTpvfHxkKT9bXTpnOnE7aWYoYyYmYyhxLHIsaCxpKSxkKXtqPXdhKHIsbiksZChqLFtdLGgsaSksaz1qLmxlbmd0aDt3aGlsZShrLS0pKGw9altrXSkmJihyW25ba11dPSEocVtuW2tdXT1sKSl9aWYoZil7aWYoZXx8YSl7aWYoZSl7aj1bXSxrPXIubGVuZ3RoO3doaWxlKGstLSkobD1yW2tdKSYmai5wdXNoKHFba109bCk7ZShudWxsLHI9W10saixpKX1rPXIubGVuZ3RoO3doaWxlKGstLSkobD1yW2tdKSYmKGo9ZT9JKGYsbCk6bVtrXSk+LTEmJihmW2pdPSEoZ1tqXT1sKSl9fWVsc2Ugcj13YShyPT09Zz9yLnNwbGljZShvLHIubGVuZ3RoKTpyKSxlP2UobnVsbCxnLHIsaSk6Ry5hcHBseShnLHIpfSl9ZnVuY3Rpb24geWEoYSl7Zm9yKHZhciBiLGMsZSxmPWEubGVuZ3RoLGc9ZC5yZWxhdGl2ZVthWzBdLnR5cGVdLGg9Z3x8ZC5yZWxhdGl2ZVsiICJdLGk9Zz8xOjAsaz10YShmdW5jdGlvbihhKXtyZXR1cm4gYT09PWJ9LGgsITApLGw9dGEoZnVuY3Rpb24oYSl7cmV0dXJuIEkoYixhKT4tMX0saCwhMCksbT1bZnVuY3Rpb24oYSxjLGQpe3ZhciBlPSFnJiYoZHx8YyE9PWopfHwoKGI9Yykubm9kZVR5cGU/ayhhLGMsZCk6bChhLGMsZCkpO3JldHVybiBiPW51bGwsZX1dO2k8ZjtpKyspaWYoYz1kLnJlbGF0aXZlW2FbaV0udHlwZV0pbT1bdGEodWEobSksYyldO2Vsc2V7aWYoYz1kLmZpbHRlclthW2ldLnR5cGVdLmFwcGx5KG51bGwsYVtpXS5tYXRjaGVzKSxjW3VdKXtmb3IoZT0rK2k7ZTxmO2UrKylpZihkLnJlbGF0aXZlW2FbZV0udHlwZV0pYnJlYWs7cmV0dXJuIHhhKGk+MSYmdWEobSksaT4xJiZzYShhLnNsaWNlKDAsaS0xKS5jb25jYXQoe3ZhbHVlOiIgIj09PWFbaS0yXS50eXBlPyIqIjoiIn0pKS5yZXBsYWNlKFAsIiQxIiksYyxpPGUmJnlhKGEuc2xpY2UoaSxlKSksZTxmJiZ5YShhPWEuc2xpY2UoZSkpLGU8ZiYmc2EoYSkpfW0ucHVzaChjKX1yZXR1cm4gdWEobSl9ZnVuY3Rpb24gemEoYSxiKXt2YXIgYz1iLmxlbmd0aD4wLGU9YS5sZW5ndGg+MCxmPWZ1bmN0aW9uKGYsZyxoLGksayl7dmFyIGwsbyxxLHI9MCxzPSIwIix0PWYmJltdLHU9W10sdj1qLHg9Znx8ZSYmZC5maW5kLlRBRygiKiIsaykseT13Kz1udWxsPT12PzE6TWF0aC5yYW5kb20oKXx8LjEsej14Lmxlbmd0aDtmb3IoayYmKGo9Zz09PW58fGd8fGspO3MhPT16JiZudWxsIT0obD14W3NdKTtzKyspe2lmKGUmJmwpe289MCxnfHxsLm93bmVyRG9jdW1lbnQ9PT1ufHwobShsKSxoPSFwKTt3aGlsZShxPWFbbysrXSlpZihxKGwsZ3x8bixoKSl7aS5wdXNoKGwpO2JyZWFrfWsmJih3PXkpfWMmJigobD0hcSYmbCkmJnItLSxmJiZ0LnB1c2gobCkpfWlmKHIrPXMsYyYmcyE9PXIpe289MDt3aGlsZShxPWJbbysrXSlxKHQsdSxnLGgpO2lmKGYpe2lmKHI+MCl3aGlsZShzLS0pdFtzXXx8dVtzXXx8KHVbc109RS5jYWxsKGkpKTt1PXdhKHUpfUcuYXBwbHkoaSx1KSxrJiYhZiYmdS5sZW5ndGg+MCYmcitiLmxlbmd0aD4xJiZnYS51bmlxdWVTb3J0KGkpfXJldHVybiBrJiYodz15LGo9diksdH07cmV0dXJuIGM/aWEoZik6Zn1yZXR1cm4gaD1nYS5jb21waWxlPWZ1bmN0aW9uKGEsYil7dmFyIGMsZD1bXSxlPVtdLGY9QVthKyIgIl07aWYoIWYpe2J8fChiPWcoYSkpLGM9Yi5sZW5ndGg7d2hpbGUoYy0tKWY9eWEoYltjXSksZlt1XT9kLnB1c2goZik6ZS5wdXNoKGYpO2Y9QShhLHphKGUsZCkpLGYuc2VsZWN0b3I9YX1yZXR1cm4gZn0saT1nYS5zZWxlY3Q9ZnVuY3Rpb24oYSxiLGMsZSl7dmFyIGYsaSxqLGssbCxtPSJmdW5jdGlvbiI9PXR5cGVvZiBhJiZhLG49IWUmJmcoYT1tLnNlbGVjdG9yfHxhKTtpZihjPWN8fFtdLDE9PT1uLmxlbmd0aCl7aWYoaT1uWzBdPW5bMF0uc2xpY2UoMCksaS5sZW5ndGg+MiYmIklEIj09PShqPWlbMF0pLnR5cGUmJjk9PT1iLm5vZGVUeXBlJiZwJiZkLnJlbGF0aXZlW2lbMV0udHlwZV0pe2lmKGI9KGQuZmluZC5JRChqLm1hdGNoZXNbMF0ucmVwbGFjZShfLGFhKSxiKXx8W10pWzBdLCFiKXJldHVybiBjO20mJihiPWIucGFyZW50Tm9kZSksYT1hLnNsaWNlKGkuc2hpZnQoKS52YWx1ZS5sZW5ndGgpfWY9Vi5uZWVkc0NvbnRleHQudGVzdChhKT8wOmkubGVuZ3RoO3doaWxlKGYtLSl7aWYoaj1pW2ZdLGQucmVsYXRpdmVbaz1qLnR5cGVdKWJyZWFrO2lmKChsPWQuZmluZFtrXSkmJihlPWwoai5tYXRjaGVzWzBdLnJlcGxhY2UoXyxhYSksJC50ZXN0KGlbMF0udHlwZSkmJnFhKGIucGFyZW50Tm9kZSl8fGIpKSl7aWYoaS5zcGxpY2UoZiwxKSxhPWUubGVuZ3RoJiZzYShpKSwhYSlyZXR1cm4gRy5hcHBseShjLGUpLGM7YnJlYWt9fX1yZXR1cm4obXx8aChhLG4pKShlLGIsIXAsYywhYnx8JC50ZXN0KGEpJiZxYShiLnBhcmVudE5vZGUpfHxiKSxjfSxjLnNvcnRTdGFibGU9dS5zcGxpdCgiIikuc29ydChCKS5qb2luKCIiKT09PXUsYy5kZXRlY3REdXBsaWNhdGVzPSEhbCxtKCksYy5zb3J0RGV0YWNoZWQ9amEoZnVuY3Rpb24oYSl7cmV0dXJuIDEmYS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihuLmNyZWF0ZUVsZW1lbnQoImZpZWxkc2V0IikpfSksamEoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaW5uZXJIVE1MPSI8YSBocmVmPScjJz48L2E+IiwiIyI9PT1hLmZpcnN0Q2hpbGQuZ2V0QXR0cmlidXRlKCJocmVmIil9KXx8a2EoInR5cGV8aHJlZnxoZWlnaHR8d2lkdGgiLGZ1bmN0aW9uKGEsYixjKXtpZighYylyZXR1cm4gYS5nZXRBdHRyaWJ1dGUoYiwidHlwZSI9PT1iLnRvTG93ZXJDYXNlKCk/MToyKX0pLGMuYXR0cmlidXRlcyYmamEoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaW5uZXJIVE1MPSI8aW5wdXQvPiIsYS5maXJzdENoaWxkLnNldEF0dHJpYnV0ZSgidmFsdWUiLCIiKSwiIj09PWEuZmlyc3RDaGlsZC5nZXRBdHRyaWJ1dGUoInZhbHVlIil9KXx8a2EoInZhbHVlIixmdW5jdGlvbihhLGIsYyl7aWYoIWMmJiJpbnB1dCI9PT1hLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpcmV0dXJuIGEuZGVmYXVsdFZhbHVlfSksamEoZnVuY3Rpb24oYSl7cmV0dXJuIG51bGw9PWEuZ2V0QXR0cmlidXRlKCJkaXNhYmxlZCIpfSl8fGthKEosZnVuY3Rpb24oYSxiLGMpe3ZhciBkO2lmKCFjKXJldHVybiBhW2JdPT09ITA/Yi50b0xvd2VyQ2FzZSgpOihkPWEuZ2V0QXR0cmlidXRlTm9kZShiKSkmJmQuc3BlY2lmaWVkP2QudmFsdWU6bnVsbH0pLGdhfShhKTtyLmZpbmQ9eCxyLmV4cHI9eC5zZWxlY3RvcnMsci5leHByWyI6Il09ci5leHByLnBzZXVkb3Msci51bmlxdWVTb3J0PXIudW5pcXVlPXgudW5pcXVlU29ydCxyLnRleHQ9eC5nZXRUZXh0LHIuaXNYTUxEb2M9eC5pc1hNTCxyLmNvbnRhaW5zPXguY29udGFpbnMsci5lc2NhcGVTZWxlY3Rvcj14LmVzY2FwZTt2YXIgeT1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9W10sZT12b2lkIDAhPT1jO3doaWxlKChhPWFbYl0pJiY5IT09YS5ub2RlVHlwZSlpZigxPT09YS5ub2RlVHlwZSl7aWYoZSYmcihhKS5pcyhjKSlicmVhaztkLnB1c2goYSl9cmV0dXJuIGR9LHo9ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9W107YTthPWEubmV4dFNpYmxpbmcpMT09PWEubm9kZVR5cGUmJmEhPT1iJiZjLnB1c2goYSk7cmV0dXJuIGN9LEE9ci5leHByLm1hdGNoLm5lZWRzQ29udGV4dDtmdW5jdGlvbiBCKGEsYil7cmV0dXJuIGEubm9kZU5hbWUmJmEubm9kZU5hbWUudG9Mb3dlckNhc2UoKT09PWIudG9Mb3dlckNhc2UoKX12YXIgQz0vXjwoW2Etel1bXlwvXDA+Olx4MjBcdFxyXG5cZl0qKVtceDIwXHRcclxuXGZdKlwvPz4oPzo8XC9cMT58KSQvaSxEPS9eLlteOiNcW1wuLF0qJC87ZnVuY3Rpb24gRShhLGIsYyl7cmV0dXJuIHIuaXNGdW5jdGlvbihiKT9yLmdyZXAoYSxmdW5jdGlvbihhLGQpe3JldHVybiEhYi5jYWxsKGEsZCxhKSE9PWN9KTpiLm5vZGVUeXBlP3IuZ3JlcChhLGZ1bmN0aW9uKGEpe3JldHVybiBhPT09YiE9PWN9KToic3RyaW5nIiE9dHlwZW9mIGI/ci5ncmVwKGEsZnVuY3Rpb24oYSl7cmV0dXJuIGkuY2FsbChiLGEpPi0xIT09Y30pOkQudGVzdChiKT9yLmZpbHRlcihiLGEsYyk6KGI9ci5maWx0ZXIoYixhKSxyLmdyZXAoYSxmdW5jdGlvbihhKXtyZXR1cm4gaS5jYWxsKGIsYSk+LTEhPT1jJiYxPT09YS5ub2RlVHlwZX0pKX1yLmZpbHRlcj1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9YlswXTtyZXR1cm4gYyYmKGE9Ijpub3QoIithKyIpIiksMT09PWIubGVuZ3RoJiYxPT09ZC5ub2RlVHlwZT9yLmZpbmQubWF0Y2hlc1NlbGVjdG9yKGQsYSk/W2RdOltdOnIuZmluZC5tYXRjaGVzKGEsci5ncmVwKGIsZnVuY3Rpb24oYSl7cmV0dXJuIDE9PT1hLm5vZGVUeXBlfSkpfSxyLmZuLmV4dGVuZCh7ZmluZDpmdW5jdGlvbihhKXt2YXIgYixjLGQ9dGhpcy5sZW5ndGgsZT10aGlzO2lmKCJzdHJpbmciIT10eXBlb2YgYSlyZXR1cm4gdGhpcy5wdXNoU3RhY2socihhKS5maWx0ZXIoZnVuY3Rpb24oKXtmb3IoYj0wO2I8ZDtiKyspaWYoci5jb250YWlucyhlW2JdLHRoaXMpKXJldHVybiEwfSkpO2ZvcihjPXRoaXMucHVzaFN0YWNrKFtdKSxiPTA7YjxkO2IrKylyLmZpbmQoYSxlW2JdLGMpO3JldHVybiBkPjE/ci51bmlxdWVTb3J0KGMpOmN9LGZpbHRlcjpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soRSh0aGlzLGF8fFtdLCExKSl9LG5vdDpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soRSh0aGlzLGF8fFtdLCEwKSl9LGlzOmZ1bmN0aW9uKGEpe3JldHVybiEhRSh0aGlzLCJzdHJpbmciPT10eXBlb2YgYSYmQS50ZXN0KGEpP3IoYSk6YXx8W10sITEpLmxlbmd0aH19KTt2YXIgRixHPS9eKD86XHMqKDxbXHdcV10rPilbXj5dKnwjKFtcdy1dKykpJC8sSD1yLmZuLmluaXQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBlLGY7aWYoIWEpcmV0dXJuIHRoaXM7aWYoYz1jfHxGLCJzdHJpbmciPT10eXBlb2YgYSl7aWYoZT0iPCI9PT1hWzBdJiYiPiI9PT1hW2EubGVuZ3RoLTFdJiZhLmxlbmd0aD49Mz9bbnVsbCxhLG51bGxdOkcuZXhlYyhhKSwhZXx8IWVbMV0mJmIpcmV0dXJuIWJ8fGIuanF1ZXJ5PyhifHxjKS5maW5kKGEpOnRoaXMuY29uc3RydWN0b3IoYikuZmluZChhKTtpZihlWzFdKXtpZihiPWIgaW5zdGFuY2VvZiByP2JbMF06YixyLm1lcmdlKHRoaXMsci5wYXJzZUhUTUwoZVsxXSxiJiZiLm5vZGVUeXBlP2Iub3duZXJEb2N1bWVudHx8YjpkLCEwKSksQy50ZXN0KGVbMV0pJiZyLmlzUGxhaW5PYmplY3QoYikpZm9yKGUgaW4gYilyLmlzRnVuY3Rpb24odGhpc1tlXSk/dGhpc1tlXShiW2VdKTp0aGlzLmF0dHIoZSxiW2VdKTtyZXR1cm4gdGhpc31yZXR1cm4gZj1kLmdldEVsZW1lbnRCeUlkKGVbMl0pLGYmJih0aGlzWzBdPWYsdGhpcy5sZW5ndGg9MSksdGhpc31yZXR1cm4gYS5ub2RlVHlwZT8odGhpc1swXT1hLHRoaXMubGVuZ3RoPTEsdGhpcyk6ci5pc0Z1bmN0aW9uKGEpP3ZvaWQgMCE9PWMucmVhZHk/Yy5yZWFkeShhKTphKHIpOnIubWFrZUFycmF5KGEsdGhpcyl9O0gucHJvdG90eXBlPXIuZm4sRj1yKGQpO3ZhciBJPS9eKD86cGFyZW50c3xwcmV2KD86VW50aWx8QWxsKSkvLEo9e2NoaWxkcmVuOiEwLGNvbnRlbnRzOiEwLG5leHQ6ITAscHJldjohMH07ci5mbi5leHRlbmQoe2hhczpmdW5jdGlvbihhKXt2YXIgYj1yKGEsdGhpcyksYz1iLmxlbmd0aDtyZXR1cm4gdGhpcy5maWx0ZXIoZnVuY3Rpb24oKXtmb3IodmFyIGE9MDthPGM7YSsrKWlmKHIuY29udGFpbnModGhpcyxiW2FdKSlyZXR1cm4hMH0pfSxjbG9zZXN0OmZ1bmN0aW9uKGEsYil7dmFyIGMsZD0wLGU9dGhpcy5sZW5ndGgsZj1bXSxnPSJzdHJpbmciIT10eXBlb2YgYSYmcihhKTtpZighQS50ZXN0KGEpKWZvcig7ZDxlO2QrKylmb3IoYz10aGlzW2RdO2MmJmMhPT1iO2M9Yy5wYXJlbnROb2RlKWlmKGMubm9kZVR5cGU8MTEmJihnP2cuaW5kZXgoYyk+LTE6MT09PWMubm9kZVR5cGUmJnIuZmluZC5tYXRjaGVzU2VsZWN0b3IoYyxhKSkpe2YucHVzaChjKTticmVha31yZXR1cm4gdGhpcy5wdXNoU3RhY2soZi5sZW5ndGg+MT9yLnVuaXF1ZVNvcnQoZik6Zil9LGluZGV4OmZ1bmN0aW9uKGEpe3JldHVybiBhPyJzdHJpbmciPT10eXBlb2YgYT9pLmNhbGwocihhKSx0aGlzWzBdKTppLmNhbGwodGhpcyxhLmpxdWVyeT9hWzBdOmEpOnRoaXNbMF0mJnRoaXNbMF0ucGFyZW50Tm9kZT90aGlzLmZpcnN0KCkucHJldkFsbCgpLmxlbmd0aDotMX0sYWRkOmZ1bmN0aW9uKGEsYil7cmV0dXJuIHRoaXMucHVzaFN0YWNrKHIudW5pcXVlU29ydChyLm1lcmdlKHRoaXMuZ2V0KCkscihhLGIpKSkpfSxhZGRCYWNrOmZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmFkZChudWxsPT1hP3RoaXMucHJldk9iamVjdDp0aGlzLnByZXZPYmplY3QuZmlsdGVyKGEpKX19KTtmdW5jdGlvbiBLKGEsYil7d2hpbGUoKGE9YVtiXSkmJjEhPT1hLm5vZGVUeXBlKTtyZXR1cm4gYX1yLmVhY2goe3BhcmVudDpmdW5jdGlvbihhKXt2YXIgYj1hLnBhcmVudE5vZGU7cmV0dXJuIGImJjExIT09Yi5ub2RlVHlwZT9iOm51bGx9LHBhcmVudHM6ZnVuY3Rpb24oYSl7cmV0dXJuIHkoYSwicGFyZW50Tm9kZSIpfSxwYXJlbnRzVW50aWw6ZnVuY3Rpb24oYSxiLGMpe3JldHVybiB5KGEsInBhcmVudE5vZGUiLGMpfSxuZXh0OmZ1bmN0aW9uKGEpe3JldHVybiBLKGEsIm5leHRTaWJsaW5nIil9LHByZXY6ZnVuY3Rpb24oYSl7cmV0dXJuIEsoYSwicHJldmlvdXNTaWJsaW5nIil9LG5leHRBbGw6ZnVuY3Rpb24oYSl7cmV0dXJuIHkoYSwibmV4dFNpYmxpbmciKX0scHJldkFsbDpmdW5jdGlvbihhKXtyZXR1cm4geShhLCJwcmV2aW91c1NpYmxpbmciKX0sbmV4dFVudGlsOmZ1bmN0aW9uKGEsYixjKXtyZXR1cm4geShhLCJuZXh0U2libGluZyIsYyl9LHByZXZVbnRpbDpmdW5jdGlvbihhLGIsYyl7cmV0dXJuIHkoYSwicHJldmlvdXNTaWJsaW5nIixjKX0sc2libGluZ3M6ZnVuY3Rpb24oYSl7cmV0dXJuIHooKGEucGFyZW50Tm9kZXx8e30pLmZpcnN0Q2hpbGQsYSl9LGNoaWxkcmVuOmZ1bmN0aW9uKGEpe3JldHVybiB6KGEuZmlyc3RDaGlsZCl9LGNvbnRlbnRzOmZ1bmN0aW9uKGEpe3JldHVybiBCKGEsImlmcmFtZSIpP2EuY29udGVudERvY3VtZW50OihCKGEsInRlbXBsYXRlIikmJihhPWEuY29udGVudHx8YSksci5tZXJnZShbXSxhLmNoaWxkTm9kZXMpKX19LGZ1bmN0aW9uKGEsYil7ci5mblthXT1mdW5jdGlvbihjLGQpe3ZhciBlPXIubWFwKHRoaXMsYixjKTtyZXR1cm4iVW50aWwiIT09YS5zbGljZSgtNSkmJihkPWMpLGQmJiJzdHJpbmciPT10eXBlb2YgZCYmKGU9ci5maWx0ZXIoZCxlKSksdGhpcy5sZW5ndGg+MSYmKEpbYV18fHIudW5pcXVlU29ydChlKSxJLnRlc3QoYSkmJmUucmV2ZXJzZSgpKSx0aGlzLnB1c2hTdGFjayhlKX19KTt2YXIgTD0vW15ceDIwXHRcclxuXGZdKy9nO2Z1bmN0aW9uIE0oYSl7dmFyIGI9e307cmV0dXJuIHIuZWFjaChhLm1hdGNoKEwpfHxbXSxmdW5jdGlvbihhLGMpe2JbY109ITB9KSxifXIuQ2FsbGJhY2tzPWZ1bmN0aW9uKGEpe2E9InN0cmluZyI9PXR5cGVvZiBhP00oYSk6ci5leHRlbmQoe30sYSk7dmFyIGIsYyxkLGUsZj1bXSxnPVtdLGg9LTEsaT1mdW5jdGlvbigpe2ZvcihlPWV8fGEub25jZSxkPWI9ITA7Zy5sZW5ndGg7aD0tMSl7Yz1nLnNoaWZ0KCk7d2hpbGUoKytoPGYubGVuZ3RoKWZbaF0uYXBwbHkoY1swXSxjWzFdKT09PSExJiZhLnN0b3BPbkZhbHNlJiYoaD1mLmxlbmd0aCxjPSExKX1hLm1lbW9yeXx8KGM9ITEpLGI9ITEsZSYmKGY9Yz9bXToiIil9LGo9e2FkZDpmdW5jdGlvbigpe3JldHVybiBmJiYoYyYmIWImJihoPWYubGVuZ3RoLTEsZy5wdXNoKGMpKSxmdW5jdGlvbiBkKGIpe3IuZWFjaChiLGZ1bmN0aW9uKGIsYyl7ci5pc0Z1bmN0aW9uKGMpP2EudW5pcXVlJiZqLmhhcyhjKXx8Zi5wdXNoKGMpOmMmJmMubGVuZ3RoJiYic3RyaW5nIiE9PXIudHlwZShjKSYmZChjKX0pfShhcmd1bWVudHMpLGMmJiFiJiZpKCkpLHRoaXN9LHJlbW92ZTpmdW5jdGlvbigpe3JldHVybiByLmVhY2goYXJndW1lbnRzLGZ1bmN0aW9uKGEsYil7dmFyIGM7d2hpbGUoKGM9ci5pbkFycmF5KGIsZixjKSk+LTEpZi5zcGxpY2UoYywxKSxjPD1oJiZoLS19KSx0aGlzfSxoYXM6ZnVuY3Rpb24oYSl7cmV0dXJuIGE/ci5pbkFycmF5KGEsZik+LTE6Zi5sZW5ndGg+MH0sZW1wdHk6ZnVuY3Rpb24oKXtyZXR1cm4gZiYmKGY9W10pLHRoaXN9LGRpc2FibGU6ZnVuY3Rpb24oKXtyZXR1cm4gZT1nPVtdLGY9Yz0iIix0aGlzfSxkaXNhYmxlZDpmdW5jdGlvbigpe3JldHVybiFmfSxsb2NrOmZ1bmN0aW9uKCl7cmV0dXJuIGU9Zz1bXSxjfHxifHwoZj1jPSIiKSx0aGlzfSxsb2NrZWQ6ZnVuY3Rpb24oKXtyZXR1cm4hIWV9LGZpcmVXaXRoOmZ1bmN0aW9uKGEsYyl7cmV0dXJuIGV8fChjPWN8fFtdLGM9W2EsYy5zbGljZT9jLnNsaWNlKCk6Y10sZy5wdXNoKGMpLGJ8fGkoKSksdGhpc30sZmlyZTpmdW5jdGlvbigpe3JldHVybiBqLmZpcmVXaXRoKHRoaXMsYXJndW1lbnRzKSx0aGlzfSxmaXJlZDpmdW5jdGlvbigpe3JldHVybiEhZH19O3JldHVybiBqfTtmdW5jdGlvbiBOKGEpe3JldHVybiBhfWZ1bmN0aW9uIE8oYSl7dGhyb3cgYX1mdW5jdGlvbiBQKGEsYixjLGQpe3ZhciBlO3RyeXthJiZyLmlzRnVuY3Rpb24oZT1hLnByb21pc2UpP2UuY2FsbChhKS5kb25lKGIpLmZhaWwoYyk6YSYmci5pc0Z1bmN0aW9uKGU9YS50aGVuKT9lLmNhbGwoYSxiLGMpOmIuYXBwbHkodm9pZCAwLFthXS5zbGljZShkKSl9Y2F0Y2goYSl7Yy5hcHBseSh2b2lkIDAsW2FdKX19ci5leHRlbmQoe0RlZmVycmVkOmZ1bmN0aW9uKGIpe3ZhciBjPVtbIm5vdGlmeSIsInByb2dyZXNzIixyLkNhbGxiYWNrcygibWVtb3J5Iiksci5DYWxsYmFja3MoIm1lbW9yeSIpLDJdLFsicmVzb2x2ZSIsImRvbmUiLHIuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLHIuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLDAsInJlc29sdmVkIl0sWyJyZWplY3QiLCJmYWlsIixyLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSxyLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSwxLCJyZWplY3RlZCJdXSxkPSJwZW5kaW5nIixlPXtzdGF0ZTpmdW5jdGlvbigpe3JldHVybiBkfSxhbHdheXM6ZnVuY3Rpb24oKXtyZXR1cm4gZi5kb25lKGFyZ3VtZW50cykuZmFpbChhcmd1bWVudHMpLHRoaXN9LCJjYXRjaCI6ZnVuY3Rpb24oYSl7cmV0dXJuIGUudGhlbihudWxsLGEpfSxwaXBlOmZ1bmN0aW9uKCl7dmFyIGE9YXJndW1lbnRzO3JldHVybiByLkRlZmVycmVkKGZ1bmN0aW9uKGIpe3IuZWFjaChjLGZ1bmN0aW9uKGMsZCl7dmFyIGU9ci5pc0Z1bmN0aW9uKGFbZFs0XV0pJiZhW2RbNF1dO2ZbZFsxXV0oZnVuY3Rpb24oKXt2YXIgYT1lJiZlLmFwcGx5KHRoaXMsYXJndW1lbnRzKTthJiZyLmlzRnVuY3Rpb24oYS5wcm9taXNlKT9hLnByb21pc2UoKS5wcm9ncmVzcyhiLm5vdGlmeSkuZG9uZShiLnJlc29sdmUpLmZhaWwoYi5yZWplY3QpOmJbZFswXSsiV2l0aCJdKHRoaXMsZT9bYV06YXJndW1lbnRzKX0pfSksYT1udWxsfSkucHJvbWlzZSgpfSx0aGVuOmZ1bmN0aW9uKGIsZCxlKXt2YXIgZj0wO2Z1bmN0aW9uIGcoYixjLGQsZSl7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGg9dGhpcyxpPWFyZ3VtZW50cyxqPWZ1bmN0aW9uKCl7dmFyIGEsajtpZighKGI8Zikpe2lmKGE9ZC5hcHBseShoLGkpLGE9PT1jLnByb21pc2UoKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJUaGVuYWJsZSBzZWxmLXJlc29sdXRpb24iKTtqPWEmJigib2JqZWN0Ij09dHlwZW9mIGF8fCJmdW5jdGlvbiI9PXR5cGVvZiBhKSYmYS50aGVuLHIuaXNGdW5jdGlvbihqKT9lP2ouY2FsbChhLGcoZixjLE4sZSksZyhmLGMsTyxlKSk6KGYrKyxqLmNhbGwoYSxnKGYsYyxOLGUpLGcoZixjLE8sZSksZyhmLGMsTixjLm5vdGlmeVdpdGgpKSk6KGQhPT1OJiYoaD12b2lkIDAsaT1bYV0pLChlfHxjLnJlc29sdmVXaXRoKShoLGkpKX19LGs9ZT9qOmZ1bmN0aW9uKCl7dHJ5e2ooKX1jYXRjaChhKXtyLkRlZmVycmVkLmV4Y2VwdGlvbkhvb2smJnIuRGVmZXJyZWQuZXhjZXB0aW9uSG9vayhhLGsuc3RhY2tUcmFjZSksYisxPj1mJiYoZCE9PU8mJihoPXZvaWQgMCxpPVthXSksYy5yZWplY3RXaXRoKGgsaSkpfX07Yj9rKCk6KHIuRGVmZXJyZWQuZ2V0U3RhY2tIb29rJiYoay5zdGFja1RyYWNlPXIuRGVmZXJyZWQuZ2V0U3RhY2tIb29rKCkpLGEuc2V0VGltZW91dChrKSl9fXJldHVybiByLkRlZmVycmVkKGZ1bmN0aW9uKGEpe2NbMF1bM10uYWRkKGcoMCxhLHIuaXNGdW5jdGlvbihlKT9lOk4sYS5ub3RpZnlXaXRoKSksY1sxXVszXS5hZGQoZygwLGEsci5pc0Z1bmN0aW9uKGIpP2I6TikpLGNbMl1bM10uYWRkKGcoMCxhLHIuaXNGdW5jdGlvbihkKT9kOk8pKX0pLnByb21pc2UoKX0scHJvbWlzZTpmdW5jdGlvbihhKXtyZXR1cm4gbnVsbCE9YT9yLmV4dGVuZChhLGUpOmV9fSxmPXt9O3JldHVybiByLmVhY2goYyxmdW5jdGlvbihhLGIpe3ZhciBnPWJbMl0saD1iWzVdO2VbYlsxXV09Zy5hZGQsaCYmZy5hZGQoZnVuY3Rpb24oKXtkPWh9LGNbMy1hXVsyXS5kaXNhYmxlLGNbMF1bMl0ubG9jayksZy5hZGQoYlszXS5maXJlKSxmW2JbMF1dPWZ1bmN0aW9uKCl7cmV0dXJuIGZbYlswXSsiV2l0aCJdKHRoaXM9PT1mP3ZvaWQgMDp0aGlzLGFyZ3VtZW50cyksdGhpc30sZltiWzBdKyJXaXRoIl09Zy5maXJlV2l0aH0pLGUucHJvbWlzZShmKSxiJiZiLmNhbGwoZixmKSxmfSx3aGVuOmZ1bmN0aW9uKGEpe3ZhciBiPWFyZ3VtZW50cy5sZW5ndGgsYz1iLGQ9QXJyYXkoYyksZT1mLmNhbGwoYXJndW1lbnRzKSxnPXIuRGVmZXJyZWQoKSxoPWZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbihjKXtkW2FdPXRoaXMsZVthXT1hcmd1bWVudHMubGVuZ3RoPjE/Zi5jYWxsKGFyZ3VtZW50cyk6YywtLWJ8fGcucmVzb2x2ZVdpdGgoZCxlKX19O2lmKGI8PTEmJihQKGEsZy5kb25lKGgoYykpLnJlc29sdmUsZy5yZWplY3QsIWIpLCJwZW5kaW5nIj09PWcuc3RhdGUoKXx8ci5pc0Z1bmN0aW9uKGVbY10mJmVbY10udGhlbikpKXJldHVybiBnLnRoZW4oKTt3aGlsZShjLS0pUChlW2NdLGgoYyksZy5yZWplY3QpO3JldHVybiBnLnByb21pc2UoKX19KTt2YXIgUT0vXihFdmFsfEludGVybmFsfFJhbmdlfFJlZmVyZW5jZXxTeW50YXh8VHlwZXxVUkkpRXJyb3IkLztyLkRlZmVycmVkLmV4Y2VwdGlvbkhvb2s9ZnVuY3Rpb24oYixjKXthLmNvbnNvbGUmJmEuY29uc29sZS53YXJuJiZiJiZRLnRlc3QoYi5uYW1lKSYmYS5jb25zb2xlLndhcm4oImpRdWVyeS5EZWZlcnJlZCBleGNlcHRpb246ICIrYi5tZXNzYWdlLGIuc3RhY2ssYyl9LHIucmVhZHlFeGNlcHRpb249ZnVuY3Rpb24oYil7YS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dGhyb3cgYn0pfTt2YXIgUj1yLkRlZmVycmVkKCk7ci5mbi5yZWFkeT1mdW5jdGlvbihhKXtyZXR1cm4gUi50aGVuKGEpWyJjYXRjaCJdKGZ1bmN0aW9uKGEpe3IucmVhZHlFeGNlcHRpb24oYSl9KSx0aGlzfSxyLmV4dGVuZCh7aXNSZWFkeTohMSxyZWFkeVdhaXQ6MSxyZWFkeTpmdW5jdGlvbihhKXsoYT09PSEwPy0tci5yZWFkeVdhaXQ6ci5pc1JlYWR5KXx8KHIuaXNSZWFkeT0hMCxhIT09ITAmJi0tci5yZWFkeVdhaXQ+MHx8Ui5yZXNvbHZlV2l0aChkLFtyXSkpfX0pLHIucmVhZHkudGhlbj1SLnRoZW47ZnVuY3Rpb24gUygpe2QucmVtb3ZlRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsUyksCmEucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsUyksci5yZWFkeSgpfSJjb21wbGV0ZSI9PT1kLnJlYWR5U3RhdGV8fCJsb2FkaW5nIiE9PWQucmVhZHlTdGF0ZSYmIWQuZG9jdW1lbnRFbGVtZW50LmRvU2Nyb2xsP2Euc2V0VGltZW91dChyLnJlYWR5KTooZC5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixTKSxhLmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLFMpKTt2YXIgVD1mdW5jdGlvbihhLGIsYyxkLGUsZixnKXt2YXIgaD0wLGk9YS5sZW5ndGgsaj1udWxsPT1jO2lmKCJvYmplY3QiPT09ci50eXBlKGMpKXtlPSEwO2ZvcihoIGluIGMpVChhLGIsaCxjW2hdLCEwLGYsZyl9ZWxzZSBpZih2b2lkIDAhPT1kJiYoZT0hMCxyLmlzRnVuY3Rpb24oZCl8fChnPSEwKSxqJiYoZz8oYi5jYWxsKGEsZCksYj1udWxsKTooaj1iLGI9ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBqLmNhbGwocihhKSxjKX0pKSxiKSlmb3IoO2g8aTtoKyspYihhW2hdLGMsZz9kOmQuY2FsbChhW2hdLGgsYihhW2hdLGMpKSk7cmV0dXJuIGU/YTpqP2IuY2FsbChhKTppP2IoYVswXSxjKTpmfSxVPWZ1bmN0aW9uKGEpe3JldHVybiAxPT09YS5ub2RlVHlwZXx8OT09PWEubm9kZVR5cGV8fCErYS5ub2RlVHlwZX07ZnVuY3Rpb24gVigpe3RoaXMuZXhwYW5kbz1yLmV4cGFuZG8rVi51aWQrK31WLnVpZD0xLFYucHJvdG90eXBlPXtjYWNoZTpmdW5jdGlvbihhKXt2YXIgYj1hW3RoaXMuZXhwYW5kb107cmV0dXJuIGJ8fChiPXt9LFUoYSkmJihhLm5vZGVUeXBlP2FbdGhpcy5leHBhbmRvXT1iOk9iamVjdC5kZWZpbmVQcm9wZXJ0eShhLHRoaXMuZXhwYW5kbyx7dmFsdWU6Yixjb25maWd1cmFibGU6ITB9KSkpLGJ9LHNldDpmdW5jdGlvbihhLGIsYyl7dmFyIGQsZT10aGlzLmNhY2hlKGEpO2lmKCJzdHJpbmciPT10eXBlb2YgYillW3IuY2FtZWxDYXNlKGIpXT1jO2Vsc2UgZm9yKGQgaW4gYillW3IuY2FtZWxDYXNlKGQpXT1iW2RdO3JldHVybiBlfSxnZXQ6ZnVuY3Rpb24oYSxiKXtyZXR1cm4gdm9pZCAwPT09Yj90aGlzLmNhY2hlKGEpOmFbdGhpcy5leHBhbmRvXSYmYVt0aGlzLmV4cGFuZG9dW3IuY2FtZWxDYXNlKGIpXX0sYWNjZXNzOmZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gdm9pZCAwPT09Ynx8YiYmInN0cmluZyI9PXR5cGVvZiBiJiZ2b2lkIDA9PT1jP3RoaXMuZ2V0KGEsYik6KHRoaXMuc2V0KGEsYixjKSx2b2lkIDAhPT1jP2M6Yil9LHJlbW92ZTpmdW5jdGlvbihhLGIpe3ZhciBjLGQ9YVt0aGlzLmV4cGFuZG9dO2lmKHZvaWQgMCE9PWQpe2lmKHZvaWQgMCE9PWIpe0FycmF5LmlzQXJyYXkoYik/Yj1iLm1hcChyLmNhbWVsQ2FzZSk6KGI9ci5jYW1lbENhc2UoYiksYj1iIGluIGQ/W2JdOmIubWF0Y2goTCl8fFtdKSxjPWIubGVuZ3RoO3doaWxlKGMtLSlkZWxldGUgZFtiW2NdXX0odm9pZCAwPT09Ynx8ci5pc0VtcHR5T2JqZWN0KGQpKSYmKGEubm9kZVR5cGU/YVt0aGlzLmV4cGFuZG9dPXZvaWQgMDpkZWxldGUgYVt0aGlzLmV4cGFuZG9dKX19LGhhc0RhdGE6ZnVuY3Rpb24oYSl7dmFyIGI9YVt0aGlzLmV4cGFuZG9dO3JldHVybiB2b2lkIDAhPT1iJiYhci5pc0VtcHR5T2JqZWN0KGIpfX07dmFyIFc9bmV3IFYsWD1uZXcgVixZPS9eKD86XHtbXHdcV10qXH18XFtbXHdcV10qXF0pJC8sWj0vW0EtWl0vZztmdW5jdGlvbiAkKGEpe3JldHVybiJ0cnVlIj09PWF8fCJmYWxzZSIhPT1hJiYoIm51bGwiPT09YT9udWxsOmE9PT0rYSsiIj8rYTpZLnRlc3QoYSk/SlNPTi5wYXJzZShhKTphKX1mdW5jdGlvbiBfKGEsYixjKXt2YXIgZDtpZih2b2lkIDA9PT1jJiYxPT09YS5ub2RlVHlwZSlpZihkPSJkYXRhLSIrYi5yZXBsYWNlKFosIi0kJiIpLnRvTG93ZXJDYXNlKCksYz1hLmdldEF0dHJpYnV0ZShkKSwic3RyaW5nIj09dHlwZW9mIGMpe3RyeXtjPSQoYyl9Y2F0Y2goZSl7fVguc2V0KGEsYixjKX1lbHNlIGM9dm9pZCAwO3JldHVybiBjfXIuZXh0ZW5kKHtoYXNEYXRhOmZ1bmN0aW9uKGEpe3JldHVybiBYLmhhc0RhdGEoYSl8fFcuaGFzRGF0YShhKX0sZGF0YTpmdW5jdGlvbihhLGIsYyl7cmV0dXJuIFguYWNjZXNzKGEsYixjKX0scmVtb3ZlRGF0YTpmdW5jdGlvbihhLGIpe1gucmVtb3ZlKGEsYil9LF9kYXRhOmZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gVy5hY2Nlc3MoYSxiLGMpfSxfcmVtb3ZlRGF0YTpmdW5jdGlvbihhLGIpe1cucmVtb3ZlKGEsYil9fSksci5mbi5leHRlbmQoe2RhdGE6ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGUsZj10aGlzWzBdLGc9ZiYmZi5hdHRyaWJ1dGVzO2lmKHZvaWQgMD09PWEpe2lmKHRoaXMubGVuZ3RoJiYoZT1YLmdldChmKSwxPT09Zi5ub2RlVHlwZSYmIVcuZ2V0KGYsImhhc0RhdGFBdHRycyIpKSl7Yz1nLmxlbmd0aDt3aGlsZShjLS0pZ1tjXSYmKGQ9Z1tjXS5uYW1lLDA9PT1kLmluZGV4T2YoImRhdGEtIikmJihkPXIuY2FtZWxDYXNlKGQuc2xpY2UoNSkpLF8oZixkLGVbZF0pKSk7Vy5zZXQoZiwiaGFzRGF0YUF0dHJzIiwhMCl9cmV0dXJuIGV9cmV0dXJuIm9iamVjdCI9PXR5cGVvZiBhP3RoaXMuZWFjaChmdW5jdGlvbigpe1guc2V0KHRoaXMsYSl9KTpUKHRoaXMsZnVuY3Rpb24oYil7dmFyIGM7aWYoZiYmdm9pZCAwPT09Yil7aWYoYz1YLmdldChmLGEpLHZvaWQgMCE9PWMpcmV0dXJuIGM7aWYoYz1fKGYsYSksdm9pZCAwIT09YylyZXR1cm4gY31lbHNlIHRoaXMuZWFjaChmdW5jdGlvbigpe1guc2V0KHRoaXMsYSxiKX0pfSxudWxsLGIsYXJndW1lbnRzLmxlbmd0aD4xLG51bGwsITApfSxyZW1vdmVEYXRhOmZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXtYLnJlbW92ZSh0aGlzLGEpfSl9fSksci5leHRlbmQoe3F1ZXVlOmZ1bmN0aW9uKGEsYixjKXt2YXIgZDtpZihhKXJldHVybiBiPShifHwiZngiKSsicXVldWUiLGQ9Vy5nZXQoYSxiKSxjJiYoIWR8fEFycmF5LmlzQXJyYXkoYyk/ZD1XLmFjY2VzcyhhLGIsci5tYWtlQXJyYXkoYykpOmQucHVzaChjKSksZHx8W119LGRlcXVldWU6ZnVuY3Rpb24oYSxiKXtiPWJ8fCJmeCI7dmFyIGM9ci5xdWV1ZShhLGIpLGQ9Yy5sZW5ndGgsZT1jLnNoaWZ0KCksZj1yLl9xdWV1ZUhvb2tzKGEsYiksZz1mdW5jdGlvbigpe3IuZGVxdWV1ZShhLGIpfTsiaW5wcm9ncmVzcyI9PT1lJiYoZT1jLnNoaWZ0KCksZC0tKSxlJiYoImZ4Ij09PWImJmMudW5zaGlmdCgiaW5wcm9ncmVzcyIpLGRlbGV0ZSBmLnN0b3AsZS5jYWxsKGEsZyxmKSksIWQmJmYmJmYuZW1wdHkuZmlyZSgpfSxfcXVldWVIb29rczpmdW5jdGlvbihhLGIpe3ZhciBjPWIrInF1ZXVlSG9va3MiO3JldHVybiBXLmdldChhLGMpfHxXLmFjY2VzcyhhLGMse2VtcHR5OnIuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLmFkZChmdW5jdGlvbigpe1cucmVtb3ZlKGEsW2IrInF1ZXVlIixjXSl9KX0pfX0pLHIuZm4uZXh0ZW5kKHtxdWV1ZTpmdW5jdGlvbihhLGIpe3ZhciBjPTI7cmV0dXJuInN0cmluZyIhPXR5cGVvZiBhJiYoYj1hLGE9ImZ4IixjLS0pLGFyZ3VtZW50cy5sZW5ndGg8Yz9yLnF1ZXVlKHRoaXNbMF0sYSk6dm9pZCAwPT09Yj90aGlzOnRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBjPXIucXVldWUodGhpcyxhLGIpO3IuX3F1ZXVlSG9va3ModGhpcyxhKSwiZngiPT09YSYmImlucHJvZ3Jlc3MiIT09Y1swXSYmci5kZXF1ZXVlKHRoaXMsYSl9KX0sZGVxdWV1ZTpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7ci5kZXF1ZXVlKHRoaXMsYSl9KX0sY2xlYXJRdWV1ZTpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5xdWV1ZShhfHwiZngiLFtdKX0scHJvbWlzZTpmdW5jdGlvbihhLGIpe3ZhciBjLGQ9MSxlPXIuRGVmZXJyZWQoKSxmPXRoaXMsZz10aGlzLmxlbmd0aCxoPWZ1bmN0aW9uKCl7LS1kfHxlLnJlc29sdmVXaXRoKGYsW2ZdKX07InN0cmluZyIhPXR5cGVvZiBhJiYoYj1hLGE9dm9pZCAwKSxhPWF8fCJmeCI7d2hpbGUoZy0tKWM9Vy5nZXQoZltnXSxhKyJxdWV1ZUhvb2tzIiksYyYmYy5lbXB0eSYmKGQrKyxjLmVtcHR5LmFkZChoKSk7cmV0dXJuIGgoKSxlLnByb21pc2UoYil9fSk7dmFyIGFhPS9bKy1dPyg/OlxkKlwufClcZCsoPzpbZUVdWystXT9cZCt8KS8uc291cmNlLGJhPW5ldyBSZWdFeHAoIl4oPzooWystXSk9fCkoIithYSsiKShbYS16JV0qKSQiLCJpIiksY2E9WyJUb3AiLCJSaWdodCIsIkJvdHRvbSIsIkxlZnQiXSxkYT1mdW5jdGlvbihhLGIpe3JldHVybiBhPWJ8fGEsIm5vbmUiPT09YS5zdHlsZS5kaXNwbGF5fHwiIj09PWEuc3R5bGUuZGlzcGxheSYmci5jb250YWlucyhhLm93bmVyRG9jdW1lbnQsYSkmJiJub25lIj09PXIuY3NzKGEsImRpc3BsYXkiKX0sZWE9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGUsZixnPXt9O2ZvcihmIGluIGIpZ1tmXT1hLnN0eWxlW2ZdLGEuc3R5bGVbZl09YltmXTtlPWMuYXBwbHkoYSxkfHxbXSk7Zm9yKGYgaW4gYilhLnN0eWxlW2ZdPWdbZl07cmV0dXJuIGV9O2Z1bmN0aW9uIGZhKGEsYixjLGQpe3ZhciBlLGY9MSxnPTIwLGg9ZD9mdW5jdGlvbigpe3JldHVybiBkLmN1cigpfTpmdW5jdGlvbigpe3JldHVybiByLmNzcyhhLGIsIiIpfSxpPWgoKSxqPWMmJmNbM118fChyLmNzc051bWJlcltiXT8iIjoicHgiKSxrPShyLmNzc051bWJlcltiXXx8InB4IiE9PWomJitpKSYmYmEuZXhlYyhyLmNzcyhhLGIpKTtpZihrJiZrWzNdIT09ail7aj1qfHxrWzNdLGM9Y3x8W10saz0raXx8MTtkbyBmPWZ8fCIuNSIsay89ZixyLnN0eWxlKGEsYixrK2opO3doaWxlKGYhPT0oZj1oKCkvaSkmJjEhPT1mJiYtLWcpfXJldHVybiBjJiYoaz0ra3x8K2l8fDAsZT1jWzFdP2srKGNbMV0rMSkqY1syXTorY1syXSxkJiYoZC51bml0PWosZC5zdGFydD1rLGQuZW5kPWUpKSxlfXZhciBnYT17fTtmdW5jdGlvbiBoYShhKXt2YXIgYixjPWEub3duZXJEb2N1bWVudCxkPWEubm9kZU5hbWUsZT1nYVtkXTtyZXR1cm4gZT9lOihiPWMuYm9keS5hcHBlbmRDaGlsZChjLmNyZWF0ZUVsZW1lbnQoZCkpLGU9ci5jc3MoYiwiZGlzcGxheSIpLGIucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChiKSwibm9uZSI9PT1lJiYoZT0iYmxvY2siKSxnYVtkXT1lLGUpfWZ1bmN0aW9uIGlhKGEsYil7Zm9yKHZhciBjLGQsZT1bXSxmPTAsZz1hLmxlbmd0aDtmPGc7ZisrKWQ9YVtmXSxkLnN0eWxlJiYoYz1kLnN0eWxlLmRpc3BsYXksYj8oIm5vbmUiPT09YyYmKGVbZl09Vy5nZXQoZCwiZGlzcGxheSIpfHxudWxsLGVbZl18fChkLnN0eWxlLmRpc3BsYXk9IiIpKSwiIj09PWQuc3R5bGUuZGlzcGxheSYmZGEoZCkmJihlW2ZdPWhhKGQpKSk6Im5vbmUiIT09YyYmKGVbZl09Im5vbmUiLFcuc2V0KGQsImRpc3BsYXkiLGMpKSk7Zm9yKGY9MDtmPGc7ZisrKW51bGwhPWVbZl0mJihhW2ZdLnN0eWxlLmRpc3BsYXk9ZVtmXSk7cmV0dXJuIGF9ci5mbi5leHRlbmQoe3Nob3c6ZnVuY3Rpb24oKXtyZXR1cm4gaWEodGhpcywhMCl9LGhpZGU6ZnVuY3Rpb24oKXtyZXR1cm4gaWEodGhpcyl9LHRvZ2dsZTpmdW5jdGlvbihhKXtyZXR1cm4iYm9vbGVhbiI9PXR5cGVvZiBhP2E/dGhpcy5zaG93KCk6dGhpcy5oaWRlKCk6dGhpcy5lYWNoKGZ1bmN0aW9uKCl7ZGEodGhpcyk/cih0aGlzKS5zaG93KCk6cih0aGlzKS5oaWRlKCl9KX19KTt2YXIgamE9L14oPzpjaGVja2JveHxyYWRpbykkL2ksa2E9LzwoW2Etel1bXlwvXDA+XHgyMFx0XHJcblxmXSspL2ksbGE9L14kfFwvKD86amF2YXxlY21hKXNjcmlwdC9pLG1hPXtvcHRpb246WzEsIjxzZWxlY3QgbXVsdGlwbGU9J211bHRpcGxlJz4iLCI8L3NlbGVjdD4iXSx0aGVhZDpbMSwiPHRhYmxlPiIsIjwvdGFibGU+Il0sY29sOlsyLCI8dGFibGU+PGNvbGdyb3VwPiIsIjwvY29sZ3JvdXA+PC90YWJsZT4iXSx0cjpbMiwiPHRhYmxlPjx0Ym9keT4iLCI8L3Rib2R5PjwvdGFibGU+Il0sdGQ6WzMsIjx0YWJsZT48dGJvZHk+PHRyPiIsIjwvdHI+PC90Ym9keT48L3RhYmxlPiJdLF9kZWZhdWx0OlswLCIiLCIiXX07bWEub3B0Z3JvdXA9bWEub3B0aW9uLG1hLnRib2R5PW1hLnRmb290PW1hLmNvbGdyb3VwPW1hLmNhcHRpb249bWEudGhlYWQsbWEudGg9bWEudGQ7ZnVuY3Rpb24gbmEoYSxiKXt2YXIgYztyZXR1cm4gYz0idW5kZWZpbmVkIiE9dHlwZW9mIGEuZ2V0RWxlbWVudHNCeVRhZ05hbWU/YS5nZXRFbGVtZW50c0J5VGFnTmFtZShifHwiKiIpOiJ1bmRlZmluZWQiIT10eXBlb2YgYS5xdWVyeVNlbGVjdG9yQWxsP2EucXVlcnlTZWxlY3RvckFsbChifHwiKiIpOltdLHZvaWQgMD09PWJ8fGImJkIoYSxiKT9yLm1lcmdlKFthXSxjKTpjfWZ1bmN0aW9uIG9hKGEsYil7Zm9yKHZhciBjPTAsZD1hLmxlbmd0aDtjPGQ7YysrKVcuc2V0KGFbY10sImdsb2JhbEV2YWwiLCFifHxXLmdldChiW2NdLCJnbG9iYWxFdmFsIikpfXZhciBwYT0vPHwmIz9cdys7LztmdW5jdGlvbiBxYShhLGIsYyxkLGUpe2Zvcih2YXIgZixnLGgsaSxqLGssbD1iLmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSxtPVtdLG49MCxvPWEubGVuZ3RoO248bztuKyspaWYoZj1hW25dLGZ8fDA9PT1mKWlmKCJvYmplY3QiPT09ci50eXBlKGYpKXIubWVyZ2UobSxmLm5vZGVUeXBlP1tmXTpmKTtlbHNlIGlmKHBhLnRlc3QoZikpe2c9Z3x8bC5hcHBlbmRDaGlsZChiLmNyZWF0ZUVsZW1lbnQoImRpdiIpKSxoPShrYS5leGVjKGYpfHxbIiIsIiJdKVsxXS50b0xvd2VyQ2FzZSgpLGk9bWFbaF18fG1hLl9kZWZhdWx0LGcuaW5uZXJIVE1MPWlbMV0rci5odG1sUHJlZmlsdGVyKGYpK2lbMl0saz1pWzBdO3doaWxlKGstLSlnPWcubGFzdENoaWxkO3IubWVyZ2UobSxnLmNoaWxkTm9kZXMpLGc9bC5maXJzdENoaWxkLGcudGV4dENvbnRlbnQ9IiJ9ZWxzZSBtLnB1c2goYi5jcmVhdGVUZXh0Tm9kZShmKSk7bC50ZXh0Q29udGVudD0iIixuPTA7d2hpbGUoZj1tW24rK10paWYoZCYmci5pbkFycmF5KGYsZCk+LTEpZSYmZS5wdXNoKGYpO2Vsc2UgaWYoaj1yLmNvbnRhaW5zKGYub3duZXJEb2N1bWVudCxmKSxnPW5hKGwuYXBwZW5kQ2hpbGQoZiksInNjcmlwdCIpLGomJm9hKGcpLGMpe2s9MDt3aGlsZShmPWdbaysrXSlsYS50ZXN0KGYudHlwZXx8IiIpJiZjLnB1c2goZil9cmV0dXJuIGx9IWZ1bmN0aW9uKCl7dmFyIGE9ZC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCksYj1hLmFwcGVuZENoaWxkKGQuY3JlYXRlRWxlbWVudCgiZGl2IikpLGM9ZC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpO2Muc2V0QXR0cmlidXRlKCJ0eXBlIiwicmFkaW8iKSxjLnNldEF0dHJpYnV0ZSgiY2hlY2tlZCIsImNoZWNrZWQiKSxjLnNldEF0dHJpYnV0ZSgibmFtZSIsInQiKSxiLmFwcGVuZENoaWxkKGMpLG8uY2hlY2tDbG9uZT1iLmNsb25lTm9kZSghMCkuY2xvbmVOb2RlKCEwKS5sYXN0Q2hpbGQuY2hlY2tlZCxiLmlubmVySFRNTD0iPHRleHRhcmVhPng8L3RleHRhcmVhPiIsby5ub0Nsb25lQ2hlY2tlZD0hIWIuY2xvbmVOb2RlKCEwKS5sYXN0Q2hpbGQuZGVmYXVsdFZhbHVlfSgpO3ZhciByYT1kLmRvY3VtZW50RWxlbWVudCxzYT0vXmtleS8sdGE9L14oPzptb3VzZXxwb2ludGVyfGNvbnRleHRtZW51fGRyYWd8ZHJvcCl8Y2xpY2svLHVhPS9eKFteLl0qKSg/OlwuKC4rKXwpLztmdW5jdGlvbiB2YSgpe3JldHVybiEwfWZ1bmN0aW9uIHdhKCl7cmV0dXJuITF9ZnVuY3Rpb24geGEoKXt0cnl7cmV0dXJuIGQuYWN0aXZlRWxlbWVudH1jYXRjaChhKXt9fWZ1bmN0aW9uIHlhKGEsYixjLGQsZSxmKXt2YXIgZyxoO2lmKCJvYmplY3QiPT10eXBlb2YgYil7InN0cmluZyIhPXR5cGVvZiBjJiYoZD1kfHxjLGM9dm9pZCAwKTtmb3IoaCBpbiBiKXlhKGEsaCxjLGQsYltoXSxmKTtyZXR1cm4gYX1pZihudWxsPT1kJiZudWxsPT1lPyhlPWMsZD1jPXZvaWQgMCk6bnVsbD09ZSYmKCJzdHJpbmciPT10eXBlb2YgYz8oZT1kLGQ9dm9pZCAwKTooZT1kLGQ9YyxjPXZvaWQgMCkpLGU9PT0hMSllPXdhO2Vsc2UgaWYoIWUpcmV0dXJuIGE7cmV0dXJuIDE9PT1mJiYoZz1lLGU9ZnVuY3Rpb24oYSl7cmV0dXJuIHIoKS5vZmYoYSksZy5hcHBseSh0aGlzLGFyZ3VtZW50cyl9LGUuZ3VpZD1nLmd1aWR8fChnLmd1aWQ9ci5ndWlkKyspKSxhLmVhY2goZnVuY3Rpb24oKXtyLmV2ZW50LmFkZCh0aGlzLGIsZSxkLGMpfSl9ci5ldmVudD17Z2xvYmFsOnt9LGFkZDpmdW5jdGlvbihhLGIsYyxkLGUpe3ZhciBmLGcsaCxpLGosayxsLG0sbixvLHAscT1XLmdldChhKTtpZihxKXtjLmhhbmRsZXImJihmPWMsYz1mLmhhbmRsZXIsZT1mLnNlbGVjdG9yKSxlJiZyLmZpbmQubWF0Y2hlc1NlbGVjdG9yKHJhLGUpLGMuZ3VpZHx8KGMuZ3VpZD1yLmd1aWQrKyksKGk9cS5ldmVudHMpfHwoaT1xLmV2ZW50cz17fSksKGc9cS5oYW5kbGUpfHwoZz1xLmhhbmRsZT1mdW5jdGlvbihiKXtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIHImJnIuZXZlbnQudHJpZ2dlcmVkIT09Yi50eXBlP3IuZXZlbnQuZGlzcGF0Y2guYXBwbHkoYSxhcmd1bWVudHMpOnZvaWQgMH0pLGI9KGJ8fCIiKS5tYXRjaChMKXx8WyIiXSxqPWIubGVuZ3RoO3doaWxlKGotLSloPXVhLmV4ZWMoYltqXSl8fFtdLG49cD1oWzFdLG89KGhbMl18fCIiKS5zcGxpdCgiLiIpLnNvcnQoKSxuJiYobD1yLmV2ZW50LnNwZWNpYWxbbl18fHt9LG49KGU/bC5kZWxlZ2F0ZVR5cGU6bC5iaW5kVHlwZSl8fG4sbD1yLmV2ZW50LnNwZWNpYWxbbl18fHt9LGs9ci5leHRlbmQoe3R5cGU6bixvcmlnVHlwZTpwLGRhdGE6ZCxoYW5kbGVyOmMsZ3VpZDpjLmd1aWQsc2VsZWN0b3I6ZSxuZWVkc0NvbnRleHQ6ZSYmci5leHByLm1hdGNoLm5lZWRzQ29udGV4dC50ZXN0KGUpLG5hbWVzcGFjZTpvLmpvaW4oIi4iKX0sZiksKG09aVtuXSl8fChtPWlbbl09W10sbS5kZWxlZ2F0ZUNvdW50PTAsbC5zZXR1cCYmbC5zZXR1cC5jYWxsKGEsZCxvLGcpIT09ITF8fGEuYWRkRXZlbnRMaXN0ZW5lciYmYS5hZGRFdmVudExpc3RlbmVyKG4sZykpLGwuYWRkJiYobC5hZGQuY2FsbChhLGspLGsuaGFuZGxlci5ndWlkfHwoay5oYW5kbGVyLmd1aWQ9Yy5ndWlkKSksZT9tLnNwbGljZShtLmRlbGVnYXRlQ291bnQrKywwLGspOm0ucHVzaChrKSxyLmV2ZW50Lmdsb2JhbFtuXT0hMCl9fSxyZW1vdmU6ZnVuY3Rpb24oYSxiLGMsZCxlKXt2YXIgZixnLGgsaSxqLGssbCxtLG4sbyxwLHE9Vy5oYXNEYXRhKGEpJiZXLmdldChhKTtpZihxJiYoaT1xLmV2ZW50cykpe2I9KGJ8fCIiKS5tYXRjaChMKXx8WyIiXSxqPWIubGVuZ3RoO3doaWxlKGotLSlpZihoPXVhLmV4ZWMoYltqXSl8fFtdLG49cD1oWzFdLG89KGhbMl18fCIiKS5zcGxpdCgiLiIpLnNvcnQoKSxuKXtsPXIuZXZlbnQuc3BlY2lhbFtuXXx8e30sbj0oZD9sLmRlbGVnYXRlVHlwZTpsLmJpbmRUeXBlKXx8bixtPWlbbl18fFtdLGg9aFsyXSYmbmV3IFJlZ0V4cCgiKF58XFwuKSIrby5qb2luKCJcXC4oPzouKlxcLnwpIikrIihcXC58JCkiKSxnPWY9bS5sZW5ndGg7d2hpbGUoZi0tKWs9bVtmXSwhZSYmcCE9PWsub3JpZ1R5cGV8fGMmJmMuZ3VpZCE9PWsuZ3VpZHx8aCYmIWgudGVzdChrLm5hbWVzcGFjZSl8fGQmJmQhPT1rLnNlbGVjdG9yJiYoIioqIiE9PWR8fCFrLnNlbGVjdG9yKXx8KG0uc3BsaWNlKGYsMSksay5zZWxlY3RvciYmbS5kZWxlZ2F0ZUNvdW50LS0sbC5yZW1vdmUmJmwucmVtb3ZlLmNhbGwoYSxrKSk7ZyYmIW0ubGVuZ3RoJiYobC50ZWFyZG93biYmbC50ZWFyZG93bi5jYWxsKGEsbyxxLmhhbmRsZSkhPT0hMXx8ci5yZW1vdmVFdmVudChhLG4scS5oYW5kbGUpLGRlbGV0ZSBpW25dKX1lbHNlIGZvcihuIGluIGkpci5ldmVudC5yZW1vdmUoYSxuK2Jbal0sYyxkLCEwKTtyLmlzRW1wdHlPYmplY3QoaSkmJlcucmVtb3ZlKGEsImhhbmRsZSBldmVudHMiKX19LGRpc3BhdGNoOmZ1bmN0aW9uKGEpe3ZhciBiPXIuZXZlbnQuZml4KGEpLGMsZCxlLGYsZyxoLGk9bmV3IEFycmF5KGFyZ3VtZW50cy5sZW5ndGgpLGo9KFcuZ2V0KHRoaXMsImV2ZW50cyIpfHx7fSlbYi50eXBlXXx8W10saz1yLmV2ZW50LnNwZWNpYWxbYi50eXBlXXx8e307Zm9yKGlbMF09YixjPTE7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKylpW2NdPWFyZ3VtZW50c1tjXTtpZihiLmRlbGVnYXRlVGFyZ2V0PXRoaXMsIWsucHJlRGlzcGF0Y2h8fGsucHJlRGlzcGF0Y2guY2FsbCh0aGlzLGIpIT09ITEpe2g9ci5ldmVudC5oYW5kbGVycy5jYWxsKHRoaXMsYixqKSxjPTA7d2hpbGUoKGY9aFtjKytdKSYmIWIuaXNQcm9wYWdhdGlvblN0b3BwZWQoKSl7Yi5jdXJyZW50VGFyZ2V0PWYuZWxlbSxkPTA7d2hpbGUoKGc9Zi5oYW5kbGVyc1tkKytdKSYmIWIuaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQoKSliLnJuYW1lc3BhY2UmJiFiLnJuYW1lc3BhY2UudGVzdChnLm5hbWVzcGFjZSl8fChiLmhhbmRsZU9iaj1nLGIuZGF0YT1nLmRhdGEsZT0oKHIuZXZlbnQuc3BlY2lhbFtnLm9yaWdUeXBlXXx8e30pLmhhbmRsZXx8Zy5oYW5kbGVyKS5hcHBseShmLmVsZW0saSksdm9pZCAwIT09ZSYmKGIucmVzdWx0PWUpPT09ITEmJihiLnByZXZlbnREZWZhdWx0KCksYi5zdG9wUHJvcGFnYXRpb24oKSkpfXJldHVybiBrLnBvc3REaXNwYXRjaCYmay5wb3N0RGlzcGF0Y2guY2FsbCh0aGlzLGIpLGIucmVzdWx0fX0saGFuZGxlcnM6ZnVuY3Rpb24oYSxiKXt2YXIgYyxkLGUsZixnLGg9W10saT1iLmRlbGVnYXRlQ291bnQsaj1hLnRhcmdldDtpZihpJiZqLm5vZGVUeXBlJiYhKCJjbGljayI9PT1hLnR5cGUmJmEuYnV0dG9uPj0xKSlmb3IoO2ohPT10aGlzO2o9ai5wYXJlbnROb2RlfHx0aGlzKWlmKDE9PT1qLm5vZGVUeXBlJiYoImNsaWNrIiE9PWEudHlwZXx8ai5kaXNhYmxlZCE9PSEwKSl7Zm9yKGY9W10sZz17fSxjPTA7YzxpO2MrKylkPWJbY10sZT1kLnNlbGVjdG9yKyIgIix2b2lkIDA9PT1nW2VdJiYoZ1tlXT1kLm5lZWRzQ29udGV4dD9yKGUsdGhpcykuaW5kZXgoaik+LTE6ci5maW5kKGUsdGhpcyxudWxsLFtqXSkubGVuZ3RoKSxnW2VdJiZmLnB1c2goZCk7Zi5sZW5ndGgmJmgucHVzaCh7ZWxlbTpqLGhhbmRsZXJzOmZ9KX1yZXR1cm4gaj10aGlzLGk8Yi5sZW5ndGgmJmgucHVzaCh7ZWxlbTpqLGhhbmRsZXJzOmIuc2xpY2UoaSl9KSxofSxhZGRQcm9wOmZ1bmN0aW9uKGEsYil7T2JqZWN0LmRlZmluZVByb3BlcnR5KHIuRXZlbnQucHJvdG90eXBlLGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLGdldDpyLmlzRnVuY3Rpb24oYik/ZnVuY3Rpb24oKXtpZih0aGlzLm9yaWdpbmFsRXZlbnQpcmV0dXJuIGIodGhpcy5vcmlnaW5hbEV2ZW50KX06ZnVuY3Rpb24oKXtpZih0aGlzLm9yaWdpbmFsRXZlbnQpcmV0dXJuIHRoaXMub3JpZ2luYWxFdmVudFthXX0sc2V0OmZ1bmN0aW9uKGIpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLGEse2VudW1lcmFibGU6ITAsY29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOmJ9KX19KX0sZml4OmZ1bmN0aW9uKGEpe3JldHVybiBhW3IuZXhwYW5kb10/YTpuZXcgci5FdmVudChhKX0sc3BlY2lhbDp7bG9hZDp7bm9CdWJibGU6ITB9LGZvY3VzOnt0cmlnZ2VyOmZ1bmN0aW9uKCl7aWYodGhpcyE9PXhhKCkmJnRoaXMuZm9jdXMpcmV0dXJuIHRoaXMuZm9jdXMoKSwhMX0sZGVsZWdhdGVUeXBlOiJmb2N1c2luIn0sYmx1cjp7dHJpZ2dlcjpmdW5jdGlvbigpe2lmKHRoaXM9PT14YSgpJiZ0aGlzLmJsdXIpcmV0dXJuIHRoaXMuYmx1cigpLCExfSxkZWxlZ2F0ZVR5cGU6ImZvY3Vzb3V0In0sY2xpY2s6e3RyaWdnZXI6ZnVuY3Rpb24oKXtpZigiY2hlY2tib3giPT09dGhpcy50eXBlJiZ0aGlzLmNsaWNrJiZCKHRoaXMsImlucHV0IikpcmV0dXJuIHRoaXMuY2xpY2soKSwhMX0sX2RlZmF1bHQ6ZnVuY3Rpb24oYSl7cmV0dXJuIEIoYS50YXJnZXQsImEiKX19LGJlZm9yZXVubG9hZDp7cG9zdERpc3BhdGNoOmZ1bmN0aW9uKGEpe3ZvaWQgMCE9PWEucmVzdWx0JiZhLm9yaWdpbmFsRXZlbnQmJihhLm9yaWdpbmFsRXZlbnQucmV0dXJuVmFsdWU9YS5yZXN1bHQpfX19fSxyLnJlbW92ZUV2ZW50PWZ1bmN0aW9uKGEsYixjKXthLnJlbW92ZUV2ZW50TGlzdGVuZXImJmEucmVtb3ZlRXZlbnRMaXN0ZW5lcihiLGMpfSxyLkV2ZW50PWZ1bmN0aW9uKGEsYil7cmV0dXJuIHRoaXMgaW5zdGFuY2VvZiByLkV2ZW50PyhhJiZhLnR5cGU/KHRoaXMub3JpZ2luYWxFdmVudD1hLHRoaXMudHlwZT1hLnR5cGUsdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQ9YS5kZWZhdWx0UHJldmVudGVkfHx2b2lkIDA9PT1hLmRlZmF1bHRQcmV2ZW50ZWQmJmEucmV0dXJuVmFsdWU9PT0hMT92YTp3YSx0aGlzLnRhcmdldD1hLnRhcmdldCYmMz09PWEudGFyZ2V0Lm5vZGVUeXBlP2EudGFyZ2V0LnBhcmVudE5vZGU6YS50YXJnZXQsdGhpcy5jdXJyZW50VGFyZ2V0PWEuY3VycmVudFRhcmdldCx0aGlzLnJlbGF0ZWRUYXJnZXQ9YS5yZWxhdGVkVGFyZ2V0KTp0aGlzLnR5cGU9YSxiJiZyLmV4dGVuZCh0aGlzLGIpLHRoaXMudGltZVN0YW1wPWEmJmEudGltZVN0YW1wfHxyLm5vdygpLHZvaWQodGhpc1tyLmV4cGFuZG9dPSEwKSk6bmV3IHIuRXZlbnQoYSxiKX0sci5FdmVudC5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOnIuRXZlbnQsaXNEZWZhdWx0UHJldmVudGVkOndhLGlzUHJvcGFnYXRpb25TdG9wcGVkOndhLGlzSW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkOndhLGlzU2ltdWxhdGVkOiExLHByZXZlbnREZWZhdWx0OmZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5vcmlnaW5hbEV2ZW50O3RoaXMuaXNEZWZhdWx0UHJldmVudGVkPXZhLGEmJiF0aGlzLmlzU2ltdWxhdGVkJiZhLnByZXZlbnREZWZhdWx0KCl9LHN0b3BQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3ZhciBhPXRoaXMub3JpZ2luYWxFdmVudDt0aGlzLmlzUHJvcGFnYXRpb25TdG9wcGVkPXZhLGEmJiF0aGlzLmlzU2ltdWxhdGVkJiZhLnN0b3BQcm9wYWdhdGlvbigpfSxzdG9wSW1tZWRpYXRlUHJvcGFnYXRpb246ZnVuY3Rpb24oKXt2YXIgYT10aGlzLm9yaWdpbmFsRXZlbnQ7dGhpcy5pc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZD12YSxhJiYhdGhpcy5pc1NpbXVsYXRlZCYmYS5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKSx0aGlzLnN0b3BQcm9wYWdhdGlvbigpfX0sci5lYWNoKHthbHRLZXk6ITAsYnViYmxlczohMCxjYW5jZWxhYmxlOiEwLGNoYW5nZWRUb3VjaGVzOiEwLGN0cmxLZXk6ITAsZGV0YWlsOiEwLGV2ZW50UGhhc2U6ITAsbWV0YUtleTohMCxwYWdlWDohMCxwYWdlWTohMCxzaGlmdEtleTohMCx2aWV3OiEwLCJjaGFyIjohMCxjaGFyQ29kZTohMCxrZXk6ITAsa2V5Q29kZTohMCxidXR0b246ITAsYnV0dG9uczohMCxjbGllbnRYOiEwLGNsaWVudFk6ITAsb2Zmc2V0WDohMCxvZmZzZXRZOiEwLHBvaW50ZXJJZDohMCxwb2ludGVyVHlwZTohMCxzY3JlZW5YOiEwLHNjcmVlblk6ITAsdGFyZ2V0VG91Y2hlczohMCx0b0VsZW1lbnQ6ITAsdG91Y2hlczohMCx3aGljaDpmdW5jdGlvbihhKXt2YXIgYj1hLmJ1dHRvbjtyZXR1cm4gbnVsbD09YS53aGljaCYmc2EudGVzdChhLnR5cGUpP251bGwhPWEuY2hhckNvZGU/YS5jaGFyQ29kZTphLmtleUNvZGU6IWEud2hpY2gmJnZvaWQgMCE9PWImJnRhLnRlc3QoYS50eXBlKT8xJmI/MToyJmI/Mzo0JmI/MjowOmEud2hpY2h9fSxyLmV2ZW50LmFkZFByb3ApLHIuZWFjaCh7bW91c2VlbnRlcjoibW91c2VvdmVyIixtb3VzZWxlYXZlOiJtb3VzZW91dCIscG9pbnRlcmVudGVyOiJwb2ludGVyb3ZlciIscG9pbnRlcmxlYXZlOiJwb2ludGVyb3V0In0sZnVuY3Rpb24oYSxiKXtyLmV2ZW50LnNwZWNpYWxbYV09e2RlbGVnYXRlVHlwZTpiLGJpbmRUeXBlOmIsaGFuZGxlOmZ1bmN0aW9uKGEpe3ZhciBjLGQ9dGhpcyxlPWEucmVsYXRlZFRhcmdldCxmPWEuaGFuZGxlT2JqO3JldHVybiBlJiYoZT09PWR8fHIuY29udGFpbnMoZCxlKSl8fChhLnR5cGU9Zi5vcmlnVHlwZSxjPWYuaGFuZGxlci5hcHBseSh0aGlzLGFyZ3VtZW50cyksYS50eXBlPWIpLGN9fX0pLHIuZm4uZXh0ZW5kKHtvbjpmdW5jdGlvbihhLGIsYyxkKXtyZXR1cm4geWEodGhpcyxhLGIsYyxkKX0sb25lOmZ1bmN0aW9uKGEsYixjLGQpe3JldHVybiB5YSh0aGlzLGEsYixjLGQsMSl9LG9mZjpmdW5jdGlvbihhLGIsYyl7dmFyIGQsZTtpZihhJiZhLnByZXZlbnREZWZhdWx0JiZhLmhhbmRsZU9iailyZXR1cm4gZD1hLmhhbmRsZU9iaixyKGEuZGVsZWdhdGVUYXJnZXQpLm9mZihkLm5hbWVzcGFjZT9kLm9yaWdUeXBlKyIuIitkLm5hbWVzcGFjZTpkLm9yaWdUeXBlLGQuc2VsZWN0b3IsZC5oYW5kbGVyKSx0aGlzO2lmKCJvYmplY3QiPT10eXBlb2YgYSl7Zm9yKGUgaW4gYSl0aGlzLm9mZihlLGIsYVtlXSk7cmV0dXJuIHRoaXN9cmV0dXJuIGIhPT0hMSYmImZ1bmN0aW9uIiE9dHlwZW9mIGJ8fChjPWIsYj12b2lkIDApLGM9PT0hMSYmKGM9d2EpLHRoaXMuZWFjaChmdW5jdGlvbigpe3IuZXZlbnQucmVtb3ZlKHRoaXMsYSxjLGIpfSl9fSk7dmFyIHphPS88KD8hYXJlYXxicnxjb2x8ZW1iZWR8aHJ8aW1nfGlucHV0fGxpbmt8bWV0YXxwYXJhbSkoKFthLXpdW15cL1wwPlx4MjBcdFxyXG5cZl0qKVtePl0qKVwvPi9naSxBYT0vPHNjcmlwdHw8c3R5bGV8PGxpbmsvaSxCYT0vY2hlY2tlZFxzKig/OltePV18PVxzKi5jaGVja2VkLikvaSxDYT0vXnRydWVcLyguKikvLERhPS9eXHMqPCEoPzpcW0NEQVRBXFt8LS0pfCg/OlxdXF18LS0pPlxzKiQvZztmdW5jdGlvbiBFYShhLGIpe3JldHVybiBCKGEsInRhYmxlIikmJkIoMTEhPT1iLm5vZGVUeXBlP2I6Yi5maXJzdENoaWxkLCJ0ciIpP3IoIj50Ym9keSIsYSlbMF18fGE6YX1mdW5jdGlvbiBGYShhKXtyZXR1cm4gYS50eXBlPShudWxsIT09YS5nZXRBdHRyaWJ1dGUoInR5cGUiKSkrIi8iK2EudHlwZSxhfWZ1bmN0aW9uIEdhKGEpe3ZhciBiPUNhLmV4ZWMoYS50eXBlKTtyZXR1cm4gYj9hLnR5cGU9YlsxXTphLnJlbW92ZUF0dHJpYnV0ZSgidHlwZSIpLGF9ZnVuY3Rpb24gSGEoYSxiKXt2YXIgYyxkLGUsZixnLGgsaSxqO2lmKDE9PT1iLm5vZGVUeXBlKXtpZihXLmhhc0RhdGEoYSkmJihmPVcuYWNjZXNzKGEpLGc9Vy5zZXQoYixmKSxqPWYuZXZlbnRzKSl7ZGVsZXRlIGcuaGFuZGxlLGcuZXZlbnRzPXt9O2ZvcihlIGluIGopZm9yKGM9MCxkPWpbZV0ubGVuZ3RoO2M8ZDtjKyspci5ldmVudC5hZGQoYixlLGpbZV1bY10pfVguaGFzRGF0YShhKSYmKGg9WC5hY2Nlc3MoYSksaT1yLmV4dGVuZCh7fSxoKSxYLnNldChiLGkpKX19ZnVuY3Rpb24gSWEoYSxiKXt2YXIgYz1iLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7ImlucHV0Ij09PWMmJmphLnRlc3QoYS50eXBlKT9iLmNoZWNrZWQ9YS5jaGVja2VkOiJpbnB1dCIhPT1jJiYidGV4dGFyZWEiIT09Y3x8KGIuZGVmYXVsdFZhbHVlPWEuZGVmYXVsdFZhbHVlKX1mdW5jdGlvbiBKYShhLGIsYyxkKXtiPWcuYXBwbHkoW10sYik7dmFyIGUsZixoLGksaixrLGw9MCxtPWEubGVuZ3RoLG49bS0xLHE9YlswXSxzPXIuaXNGdW5jdGlvbihxKTtpZihzfHxtPjEmJiJzdHJpbmciPT10eXBlb2YgcSYmIW8uY2hlY2tDbG9uZSYmQmEudGVzdChxKSlyZXR1cm4gYS5lYWNoKGZ1bmN0aW9uKGUpe3ZhciBmPWEuZXEoZSk7cyYmKGJbMF09cS5jYWxsKHRoaXMsZSxmLmh0bWwoKSkpLEphKGYsYixjLGQpfSk7aWYobSYmKGU9cWEoYixhWzBdLm93bmVyRG9jdW1lbnQsITEsYSxkKSxmPWUuZmlyc3RDaGlsZCwxPT09ZS5jaGlsZE5vZGVzLmxlbmd0aCYmKGU9ZiksZnx8ZCkpe2ZvcihoPXIubWFwKG5hKGUsInNjcmlwdCIpLEZhKSxpPWgubGVuZ3RoO2w8bTtsKyspaj1lLGwhPT1uJiYoaj1yLmNsb25lKGosITAsITApLGkmJnIubWVyZ2UoaCxuYShqLCJzY3JpcHQiKSkpLGMuY2FsbChhW2xdLGosbCk7aWYoaSlmb3Ioaz1oW2gubGVuZ3RoLTFdLm93bmVyRG9jdW1lbnQsci5tYXAoaCxHYSksbD0wO2w8aTtsKyspaj1oW2xdLGxhLnRlc3Qoai50eXBlfHwiIikmJiFXLmFjY2VzcyhqLCJnbG9iYWxFdmFsIikmJnIuY29udGFpbnMoayxqKSYmKGouc3JjP3IuX2V2YWxVcmwmJnIuX2V2YWxVcmwoai5zcmMpOnAoai50ZXh0Q29udGVudC5yZXBsYWNlKERhLCIiKSxrKSl9cmV0dXJuIGF9ZnVuY3Rpb24gS2EoYSxiLGMpe2Zvcih2YXIgZCxlPWI/ci5maWx0ZXIoYixhKTphLGY9MDtudWxsIT0oZD1lW2ZdKTtmKyspY3x8MSE9PWQubm9kZVR5cGV8fHIuY2xlYW5EYXRhKG5hKGQpKSxkLnBhcmVudE5vZGUmJihjJiZyLmNvbnRhaW5zKGQub3duZXJEb2N1bWVudCxkKSYmb2EobmEoZCwic2NyaXB0IikpLGQucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChkKSk7cmV0dXJuIGF9ci5leHRlbmQoe2h0bWxQcmVmaWx0ZXI6ZnVuY3Rpb24oYSl7cmV0dXJuIGEucmVwbGFjZSh6YSwiPCQxPjwvJDI+Iil9LGNsb25lOmZ1bmN0aW9uKGEsYixjKXt2YXIgZCxlLGYsZyxoPWEuY2xvbmVOb2RlKCEwKSxpPXIuY29udGFpbnMoYS5vd25lckRvY3VtZW50LGEpO2lmKCEoby5ub0Nsb25lQ2hlY2tlZHx8MSE9PWEubm9kZVR5cGUmJjExIT09YS5ub2RlVHlwZXx8ci5pc1hNTERvYyhhKSkpZm9yKGc9bmEoaCksZj1uYShhKSxkPTAsZT1mLmxlbmd0aDtkPGU7ZCsrKUlhKGZbZF0sZ1tkXSk7aWYoYilpZihjKWZvcihmPWZ8fG5hKGEpLGc9Z3x8bmEoaCksZD0wLGU9Zi5sZW5ndGg7ZDxlO2QrKylIYShmW2RdLGdbZF0pO2Vsc2UgSGEoYSxoKTtyZXR1cm4gZz1uYShoLCJzY3JpcHQiKSxnLmxlbmd0aD4wJiZvYShnLCFpJiZuYShhLCJzY3JpcHQiKSksaH0sY2xlYW5EYXRhOmZ1bmN0aW9uKGEpe2Zvcih2YXIgYixjLGQsZT1yLmV2ZW50LnNwZWNpYWwsZj0wO3ZvaWQgMCE9PShjPWFbZl0pO2YrKylpZihVKGMpKXtpZihiPWNbVy5leHBhbmRvXSl7aWYoYi5ldmVudHMpZm9yKGQgaW4gYi5ldmVudHMpZVtkXT9yLmV2ZW50LnJlbW92ZShjLGQpOnIucmVtb3ZlRXZlbnQoYyxkLGIuaGFuZGxlKTtjW1cuZXhwYW5kb109dm9pZCAwfWNbWC5leHBhbmRvXSYmKGNbWC5leHBhbmRvXT12b2lkIDApfX19KSxyLmZuLmV4dGVuZCh7ZGV0YWNoOmZ1bmN0aW9uKGEpe3JldHVybiBLYSh0aGlzLGEsITApfSxyZW1vdmU6ZnVuY3Rpb24oYSl7cmV0dXJuIEthKHRoaXMsYSl9LHRleHQ6ZnVuY3Rpb24oYSl7cmV0dXJuIFQodGhpcyxmdW5jdGlvbihhKXtyZXR1cm4gdm9pZCAwPT09YT9yLnRleHQodGhpcyk6dGhpcy5lbXB0eSgpLmVhY2goZnVuY3Rpb24oKXsxIT09dGhpcy5ub2RlVHlwZSYmMTEhPT10aGlzLm5vZGVUeXBlJiY5IT09dGhpcy5ub2RlVHlwZXx8KHRoaXMudGV4dENvbnRlbnQ9YSl9KX0sbnVsbCxhLGFyZ3VtZW50cy5sZW5ndGgpfSxhcHBlbmQ6ZnVuY3Rpb24oKXtyZXR1cm4gSmEodGhpcyxhcmd1bWVudHMsZnVuY3Rpb24oYSl7aWYoMT09PXRoaXMubm9kZVR5cGV8fDExPT09dGhpcy5ub2RlVHlwZXx8OT09PXRoaXMubm9kZVR5cGUpe3ZhciBiPUVhKHRoaXMsYSk7Yi5hcHBlbmRDaGlsZChhKX19KX0scHJlcGVuZDpmdW5jdGlvbigpe3JldHVybiBKYSh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbihhKXtpZigxPT09dGhpcy5ub2RlVHlwZXx8MTE9PT10aGlzLm5vZGVUeXBlfHw5PT09dGhpcy5ub2RlVHlwZSl7dmFyIGI9RWEodGhpcyxhKTtiLmluc2VydEJlZm9yZShhLGIuZmlyc3RDaGlsZCl9fSl9LGJlZm9yZTpmdW5jdGlvbigpe3JldHVybiBKYSh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbihhKXt0aGlzLnBhcmVudE5vZGUmJnRoaXMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoYSx0aGlzKX0pfSxhZnRlcjpmdW5jdGlvbigpe3JldHVybiBKYSh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbihhKXt0aGlzLnBhcmVudE5vZGUmJnRoaXMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoYSx0aGlzLm5leHRTaWJsaW5nKX0pfSxlbXB0eTpmdW5jdGlvbigpe2Zvcih2YXIgYSxiPTA7bnVsbCE9KGE9dGhpc1tiXSk7YisrKTE9PT1hLm5vZGVUeXBlJiYoci5jbGVhbkRhdGEobmEoYSwhMSkpLGEudGV4dENvbnRlbnQ9IiIpO3JldHVybiB0aGlzfSxjbG9uZTpmdW5jdGlvbihhLGIpe3JldHVybiBhPW51bGwhPWEmJmEsYj1udWxsPT1iP2E6Yix0aGlzLm1hcChmdW5jdGlvbigpe3JldHVybiByLmNsb25lKHRoaXMsYSxiKX0pfSxodG1sOmZ1bmN0aW9uKGEpe3JldHVybiBUKHRoaXMsZnVuY3Rpb24oYSl7dmFyIGI9dGhpc1swXXx8e30sYz0wLGQ9dGhpcy5sZW5ndGg7aWYodm9pZCAwPT09YSYmMT09PWIubm9kZVR5cGUpcmV0dXJuIGIuaW5uZXJIVE1MO2lmKCJzdHJpbmciPT10eXBlb2YgYSYmIUFhLnRlc3QoYSkmJiFtYVsoa2EuZXhlYyhhKXx8WyIiLCIiXSlbMV0udG9Mb3dlckNhc2UoKV0pe2E9ci5odG1sUHJlZmlsdGVyKGEpO3RyeXtmb3IoO2M8ZDtjKyspYj10aGlzW2NdfHx7fSwxPT09Yi5ub2RlVHlwZSYmKHIuY2xlYW5EYXRhKG5hKGIsITEpKSxiLmlubmVySFRNTD1hKTtiPTB9Y2F0Y2goZSl7fX1iJiZ0aGlzLmVtcHR5KCkuYXBwZW5kKGEpfSxudWxsLGEsYXJndW1lbnRzLmxlbmd0aCl9LHJlcGxhY2VXaXRoOmZ1bmN0aW9uKCl7dmFyIGE9W107cmV0dXJuIEphKHRoaXMsYXJndW1lbnRzLGZ1bmN0aW9uKGIpe3ZhciBjPXRoaXMucGFyZW50Tm9kZTtyLmluQXJyYXkodGhpcyxhKTwwJiYoci5jbGVhbkRhdGEobmEodGhpcykpLGMmJmMucmVwbGFjZUNoaWxkKGIsdGhpcykpfSxhKX19KSxyLmVhY2goe2FwcGVuZFRvOiJhcHBlbmQiLHByZXBlbmRUbzoicHJlcGVuZCIsaW5zZXJ0QmVmb3JlOiJiZWZvcmUiLGluc2VydEFmdGVyOiJhZnRlciIscmVwbGFjZUFsbDoicmVwbGFjZVdpdGgifSxmdW5jdGlvbihhLGIpe3IuZm5bYV09ZnVuY3Rpb24oYSl7Zm9yKHZhciBjLGQ9W10sZT1yKGEpLGY9ZS5sZW5ndGgtMSxnPTA7Zzw9ZjtnKyspYz1nPT09Zj90aGlzOnRoaXMuY2xvbmUoITApLHIoZVtnXSlbYl0oYyksaC5hcHBseShkLGMuZ2V0KCkpO3JldHVybiB0aGlzLnB1c2hTdGFjayhkKX19KTt2YXIgTGE9L15tYXJnaW4vLE1hPW5ldyBSZWdFeHAoIl4oIithYSsiKSg/IXB4KVthLXolXSskIiwiaSIpLE5hPWZ1bmN0aW9uKGIpe3ZhciBjPWIub3duZXJEb2N1bWVudC5kZWZhdWx0VmlldztyZXR1cm4gYyYmYy5vcGVuZXJ8fChjPWEpLGMuZ2V0Q29tcHV0ZWRTdHlsZShiKX07IWZ1bmN0aW9uKCl7ZnVuY3Rpb24gYigpe2lmKGkpe2kuc3R5bGUuY3NzVGV4dD0iYm94LXNpemluZzpib3JkZXItYm94O3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6YmxvY2s7bWFyZ2luOmF1dG87Ym9yZGVyOjFweDtwYWRkaW5nOjFweDt0b3A6MSU7d2lkdGg6NTAlIixpLmlubmVySFRNTD0iIixyYS5hcHBlbmRDaGlsZChoKTt2YXIgYj1hLmdldENvbXB1dGVkU3R5bGUoaSk7Yz0iMSUiIT09Yi50b3AsZz0iMnB4Ij09PWIubWFyZ2luTGVmdCxlPSI0cHgiPT09Yi53aWR0aCxpLnN0eWxlLm1hcmdpblJpZ2h0PSI1MCUiLGY9IjRweCI9PT1iLm1hcmdpblJpZ2h0LHJhLnJlbW92ZUNoaWxkKGgpLGk9bnVsbH19dmFyIGMsZSxmLGcsaD1kLmNyZWF0ZUVsZW1lbnQoImRpdiIpLGk9ZC5jcmVhdGVFbGVtZW50KCJkaXYiKTtpLnN0eWxlJiYoaS5zdHlsZS5iYWNrZ3JvdW5kQ2xpcD0iY29udGVudC1ib3giLGkuY2xvbmVOb2RlKCEwKS5zdHlsZS5iYWNrZ3JvdW5kQ2xpcD0iIixvLmNsZWFyQ2xvbmVTdHlsZT0iY29udGVudC1ib3giPT09aS5zdHlsZS5iYWNrZ3JvdW5kQ2xpcCxoLnN0eWxlLmNzc1RleHQ9ImJvcmRlcjowO3dpZHRoOjhweDtoZWlnaHQ6MDt0b3A6MDtsZWZ0Oi05OTk5cHg7cGFkZGluZzowO21hcmdpbi10b3A6MXB4O3Bvc2l0aW9uOmFic29sdXRlIixoLmFwcGVuZENoaWxkKGkpLHIuZXh0ZW5kKG8se3BpeGVsUG9zaXRpb246ZnVuY3Rpb24oKXtyZXR1cm4gYigpLGN9LGJveFNpemluZ1JlbGlhYmxlOmZ1bmN0aW9uKCl7cmV0dXJuIGIoKSxlfSxwaXhlbE1hcmdpblJpZ2h0OmZ1bmN0aW9uKCl7cmV0dXJuIGIoKSxmfSxyZWxpYWJsZU1hcmdpbkxlZnQ6ZnVuY3Rpb24oKXtyZXR1cm4gYigpLGd9fSkpfSgpO2Z1bmN0aW9uIE9hKGEsYixjKXt2YXIgZCxlLGYsZyxoPWEuc3R5bGU7cmV0dXJuIGM9Y3x8TmEoYSksYyYmKGc9Yy5nZXRQcm9wZXJ0eVZhbHVlKGIpfHxjW2JdLCIiIT09Z3x8ci5jb250YWlucyhhLm93bmVyRG9jdW1lbnQsYSl8fChnPXIuc3R5bGUoYSxiKSksIW8ucGl4ZWxNYXJnaW5SaWdodCgpJiZNYS50ZXN0KGcpJiZMYS50ZXN0KGIpJiYoZD1oLndpZHRoLGU9aC5taW5XaWR0aCxmPWgubWF4V2lkdGgsaC5taW5XaWR0aD1oLm1heFdpZHRoPWgud2lkdGg9ZyxnPWMud2lkdGgsaC53aWR0aD1kLGgubWluV2lkdGg9ZSxoLm1heFdpZHRoPWYpKSx2b2lkIDAhPT1nP2crIiI6Z31mdW5jdGlvbiBQYShhLGIpe3JldHVybntnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gYSgpP3ZvaWQgZGVsZXRlIHRoaXMuZ2V0Oih0aGlzLmdldD1iKS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fX12YXIgUWE9L14obm9uZXx0YWJsZSg/IS1jW2VhXSkuKykvLFJhPS9eLS0vLFNhPXtwb3NpdGlvbjoiYWJzb2x1dGUiLHZpc2liaWxpdHk6ImhpZGRlbiIsZGlzcGxheToiYmxvY2sifSxUYT17bGV0dGVyU3BhY2luZzoiMCIsZm9udFdlaWdodDoiNDAwIn0sVWE9WyJXZWJraXQiLCJNb3oiLCJtcyJdLFZhPWQuY3JlYXRlRWxlbWVudCgiZGl2Iikuc3R5bGU7ZnVuY3Rpb24gV2EoYSl7aWYoYSBpbiBWYSlyZXR1cm4gYTt2YXIgYj1hWzBdLnRvVXBwZXJDYXNlKCkrYS5zbGljZSgxKSxjPVVhLmxlbmd0aDt3aGlsZShjLS0paWYoYT1VYVtjXStiLGEgaW4gVmEpcmV0dXJuIGF9ZnVuY3Rpb24gWGEoYSl7dmFyIGI9ci5jc3NQcm9wc1thXTtyZXR1cm4gYnx8KGI9ci5jc3NQcm9wc1thXT1XYShhKXx8YSksYn1mdW5jdGlvbiBZYShhLGIsYyl7dmFyIGQ9YmEuZXhlYyhiKTtyZXR1cm4gZD9NYXRoLm1heCgwLGRbMl0tKGN8fDApKSsoZFszXXx8InB4Iik6Yn1mdW5jdGlvbiBaYShhLGIsYyxkLGUpe3ZhciBmLGc9MDtmb3IoZj1jPT09KGQ/ImJvcmRlciI6ImNvbnRlbnQiKT80OiJ3aWR0aCI9PT1iPzE6MDtmPDQ7Zis9MikibWFyZ2luIj09PWMmJihnKz1yLmNzcyhhLGMrY2FbZl0sITAsZSkpLGQ/KCJjb250ZW50Ij09PWMmJihnLT1yLmNzcyhhLCJwYWRkaW5nIitjYVtmXSwhMCxlKSksIm1hcmdpbiIhPT1jJiYoZy09ci5jc3MoYSwiYm9yZGVyIitjYVtmXSsiV2lkdGgiLCEwLGUpKSk6KGcrPXIuY3NzKGEsInBhZGRpbmciK2NhW2ZdLCEwLGUpLCJwYWRkaW5nIiE9PWMmJihnKz1yLmNzcyhhLCJib3JkZXIiK2NhW2ZdKyJXaWR0aCIsITAsZSkpKTtyZXR1cm4gZ31mdW5jdGlvbiAkYShhLGIsYyl7dmFyIGQsZT1OYShhKSxmPU9hKGEsYixlKSxnPSJib3JkZXItYm94Ij09PXIuY3NzKGEsImJveFNpemluZyIsITEsZSk7cmV0dXJuIE1hLnRlc3QoZik/ZjooZD1nJiYoby5ib3hTaXppbmdSZWxpYWJsZSgpfHxmPT09YS5zdHlsZVtiXSksImF1dG8iPT09ZiYmKGY9YVsib2Zmc2V0IitiWzBdLnRvVXBwZXJDYXNlKCkrYi5zbGljZSgxKV0pLGY9cGFyc2VGbG9hdChmKXx8MCxmK1phKGEsYixjfHwoZz8iYm9yZGVyIjoiY29udGVudCIpLGQsZSkrInB4Iil9ci5leHRlbmQoe2Nzc0hvb2tzOntvcGFjaXR5OntnZXQ6ZnVuY3Rpb24oYSxiKXtpZihiKXt2YXIgYz1PYShhLCJvcGFjaXR5Iik7cmV0dXJuIiI9PT1jPyIxIjpjfX19fSxjc3NOdW1iZXI6e2FuaW1hdGlvbkl0ZXJhdGlvbkNvdW50OiEwLGNvbHVtbkNvdW50OiEwLGZpbGxPcGFjaXR5OiEwLGZsZXhHcm93OiEwLGZsZXhTaHJpbms6ITAsZm9udFdlaWdodDohMCxsaW5lSGVpZ2h0OiEwLG9wYWNpdHk6ITAsb3JkZXI6ITAsb3JwaGFuczohMCx3aWRvd3M6ITAsekluZGV4OiEwLHpvb206ITB9LGNzc1Byb3BzOnsiZmxvYXQiOiJjc3NGbG9hdCJ9LHN0eWxlOmZ1bmN0aW9uKGEsYixjLGQpe2lmKGEmJjMhPT1hLm5vZGVUeXBlJiY4IT09YS5ub2RlVHlwZSYmYS5zdHlsZSl7dmFyIGUsZixnLGg9ci5jYW1lbENhc2UoYiksaT1SYS50ZXN0KGIpLGo9YS5zdHlsZTtyZXR1cm4gaXx8KGI9WGEoaCkpLGc9ci5jc3NIb29rc1tiXXx8ci5jc3NIb29rc1toXSx2b2lkIDA9PT1jP2cmJiJnZXQiaW4gZyYmdm9pZCAwIT09KGU9Zy5nZXQoYSwhMSxkKSk/ZTpqW2JdOihmPXR5cGVvZiBjLCJzdHJpbmciPT09ZiYmKGU9YmEuZXhlYyhjKSkmJmVbMV0mJihjPWZhKGEsYixlKSxmPSJudW1iZXIiKSxudWxsIT1jJiZjPT09YyYmKCJudW1iZXIiPT09ZiYmKGMrPWUmJmVbM118fChyLmNzc051bWJlcltoXT8iIjoicHgiKSksby5jbGVhckNsb25lU3R5bGV8fCIiIT09Y3x8MCE9PWIuaW5kZXhPZigiYmFja2dyb3VuZCIpfHwoaltiXT0iaW5oZXJpdCIpLGcmJiJzZXQiaW4gZyYmdm9pZCAwPT09KGM9Zy5zZXQoYSxjLGQpKXx8KGk/ai5zZXRQcm9wZXJ0eShiLGMpOmpbYl09YykpLHZvaWQgMCl9fSxjc3M6ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGUsZixnLGg9ci5jYW1lbENhc2UoYiksaT1SYS50ZXN0KGIpO3JldHVybiBpfHwoYj1YYShoKSksZz1yLmNzc0hvb2tzW2JdfHxyLmNzc0hvb2tzW2hdLGcmJiJnZXQiaW4gZyYmKGU9Zy5nZXQoYSwhMCxjKSksdm9pZCAwPT09ZSYmKGU9T2EoYSxiLGQpKSwibm9ybWFsIj09PWUmJmIgaW4gVGEmJihlPVRhW2JdKSwiIj09PWN8fGM/KGY9cGFyc2VGbG9hdChlKSxjPT09ITB8fGlzRmluaXRlKGYpP2Z8fDA6ZSk6ZX19KSxyLmVhY2goWyJoZWlnaHQiLCJ3aWR0aCJdLGZ1bmN0aW9uKGEsYil7ci5jc3NIb29rc1tiXT17Z2V0OmZ1bmN0aW9uKGEsYyxkKXtpZihjKXJldHVybiFRYS50ZXN0KHIuY3NzKGEsImRpc3BsYXkiKSl8fGEuZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGgmJmEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGg/JGEoYSxiLGQpOmVhKGEsU2EsZnVuY3Rpb24oKXtyZXR1cm4gJGEoYSxiLGQpfSl9LHNldDpmdW5jdGlvbihhLGMsZCl7dmFyIGUsZj1kJiZOYShhKSxnPWQmJlphKGEsYixkLCJib3JkZXItYm94Ij09PXIuY3NzKGEsImJveFNpemluZyIsITEsZiksZik7cmV0dXJuIGcmJihlPWJhLmV4ZWMoYykpJiYicHgiIT09KGVbM118fCJweCIpJiYoYS5zdHlsZVtiXT1jLGM9ci5jc3MoYSxiKSksWWEoYSxjLGcpfX19KSxyLmNzc0hvb2tzLm1hcmdpbkxlZnQ9UGEoby5yZWxpYWJsZU1hcmdpbkxlZnQsZnVuY3Rpb24oYSxiKXtpZihiKXJldHVybihwYXJzZUZsb2F0KE9hKGEsIm1hcmdpbkxlZnQiKSl8fGEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkubGVmdC1lYShhLHttYXJnaW5MZWZ0OjB9LGZ1bmN0aW9uKCl7cmV0dXJuIGEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkubGVmdH0pKSsicHgifSksci5lYWNoKHttYXJnaW46IiIscGFkZGluZzoiIixib3JkZXI6IldpZHRoIn0sZnVuY3Rpb24oYSxiKXtyLmNzc0hvb2tzW2ErYl09e2V4cGFuZDpmdW5jdGlvbihjKXtmb3IodmFyIGQ9MCxlPXt9LGY9InN0cmluZyI9PXR5cGVvZiBjP2Muc3BsaXQoIiAiKTpbY107ZDw0O2QrKyllW2ErY2FbZF0rYl09ZltkXXx8ZltkLTJdfHxmWzBdO3JldHVybiBlfX0sTGEudGVzdChhKXx8KHIuY3NzSG9va3NbYStiXS5zZXQ9WWEpfSksci5mbi5leHRlbmQoe2NzczpmdW5jdGlvbihhLGIpe3JldHVybiBUKHRoaXMsZnVuY3Rpb24oYSxiLGMpe3ZhciBkLGUsZj17fSxnPTA7aWYoQXJyYXkuaXNBcnJheShiKSl7Zm9yKGQ9TmEoYSksZT1iLmxlbmd0aDtnPGU7ZysrKWZbYltnXV09ci5jc3MoYSxiW2ddLCExLGQpO3JldHVybiBmfXJldHVybiB2b2lkIDAhPT1jP3Iuc3R5bGUoYSxiLGMpOnIuY3NzKGEsYil9LGEsYixhcmd1bWVudHMubGVuZ3RoPjEpfX0pO2Z1bmN0aW9uIF9hKGEsYixjLGQsZSl7cmV0dXJuIG5ldyBfYS5wcm90b3R5cGUuaW5pdChhLGIsYyxkLGUpfXIuVHdlZW49X2EsX2EucHJvdG90eXBlPXtjb25zdHJ1Y3RvcjpfYSxpbml0OmZ1bmN0aW9uKGEsYixjLGQsZSxmKXt0aGlzLmVsZW09YSx0aGlzLnByb3A9Yyx0aGlzLmVhc2luZz1lfHxyLmVhc2luZy5fZGVmYXVsdCx0aGlzLm9wdGlvbnM9Yix0aGlzLnN0YXJ0PXRoaXMubm93PXRoaXMuY3VyKCksdGhpcy5lbmQ9ZCx0aGlzLnVuaXQ9Znx8KHIuY3NzTnVtYmVyW2NdPyIiOiJweCIpfSxjdXI6ZnVuY3Rpb24oKXt2YXIgYT1fYS5wcm9wSG9va3NbdGhpcy5wcm9wXTtyZXR1cm4gYSYmYS5nZXQ/YS5nZXQodGhpcyk6X2EucHJvcEhvb2tzLl9kZWZhdWx0LmdldCh0aGlzKX0scnVuOmZ1bmN0aW9uKGEpe3ZhciBiLGM9X2EucHJvcEhvb2tzW3RoaXMucHJvcF07cmV0dXJuIHRoaXMub3B0aW9ucy5kdXJhdGlvbj90aGlzLnBvcz1iPXIuZWFzaW5nW3RoaXMuZWFzaW5nXShhLHRoaXMub3B0aW9ucy5kdXJhdGlvbiphLDAsMSx0aGlzLm9wdGlvbnMuZHVyYXRpb24pOnRoaXMucG9zPWI9YSx0aGlzLm5vdz0odGhpcy5lbmQtdGhpcy5zdGFydCkqYit0aGlzLnN0YXJ0LHRoaXMub3B0aW9ucy5zdGVwJiZ0aGlzLm9wdGlvbnMuc3RlcC5jYWxsKHRoaXMuZWxlbSx0aGlzLm5vdyx0aGlzKSxjJiZjLnNldD9jLnNldCh0aGlzKTpfYS5wcm9wSG9va3MuX2RlZmF1bHQuc2V0KHRoaXMpLHRoaXN9fSxfYS5wcm90b3R5cGUuaW5pdC5wcm90b3R5cGU9X2EucHJvdG90eXBlLF9hLnByb3BIb29rcz17X2RlZmF1bHQ6e2dldDpmdW5jdGlvbihhKXt2YXIgYjtyZXR1cm4gMSE9PWEuZWxlbS5ub2RlVHlwZXx8bnVsbCE9YS5lbGVtW2EucHJvcF0mJm51bGw9PWEuZWxlbS5zdHlsZVthLnByb3BdP2EuZWxlbVthLnByb3BdOihiPXIuY3NzKGEuZWxlbSxhLnByb3AsIiIpLGImJiJhdXRvIiE9PWI/YjowKX0sc2V0OmZ1bmN0aW9uKGEpe3IuZnguc3RlcFthLnByb3BdP3IuZnguc3RlcFthLnByb3BdKGEpOjEhPT1hLmVsZW0ubm9kZVR5cGV8fG51bGw9PWEuZWxlbS5zdHlsZVtyLmNzc1Byb3BzW2EucHJvcF1dJiYhci5jc3NIb29rc1thLnByb3BdP2EuZWxlbVthLnByb3BdPWEubm93OnIuc3R5bGUoYS5lbGVtLGEucHJvcCxhLm5vdythLnVuaXQpfX19LF9hLnByb3BIb29rcy5zY3JvbGxUb3A9X2EucHJvcEhvb2tzLnNjcm9sbExlZnQ9e3NldDpmdW5jdGlvbihhKXthLmVsZW0ubm9kZVR5cGUmJmEuZWxlbS5wYXJlbnROb2RlJiYoYS5lbGVtW2EucHJvcF09YS5ub3cpfX0sci5lYXNpbmc9e2xpbmVhcjpmdW5jdGlvbihhKXtyZXR1cm4gYX0sc3dpbmc6ZnVuY3Rpb24oYSl7cmV0dXJuLjUtTWF0aC5jb3MoYSpNYXRoLlBJKS8yfSxfZGVmYXVsdDoic3dpbmcifSxyLmZ4PV9hLnByb3RvdHlwZS5pbml0LHIuZnguc3RlcD17fTt2YXIgYWIsYmIsY2I9L14oPzp0b2dnbGV8c2hvd3xoaWRlKSQvLGRiPS9xdWV1ZUhvb2tzJC87ZnVuY3Rpb24gZWIoKXtiYiYmKGQuaGlkZGVuPT09ITEmJmEucmVxdWVzdEFuaW1hdGlvbkZyYW1lP2EucmVxdWVzdEFuaW1hdGlvbkZyYW1lKGViKTphLnNldFRpbWVvdXQoZWIsci5meC5pbnRlcnZhbCksci5meC50aWNrKCkpfWZ1bmN0aW9uIGZiKCl7cmV0dXJuIGEuc2V0VGltZW91dChmdW5jdGlvbigpe2FiPXZvaWQgMH0pLGFiPXIubm93KCl9ZnVuY3Rpb24gZ2IoYSxiKXt2YXIgYyxkPTAsZT17aGVpZ2h0OmF9O2ZvcihiPWI/MTowO2Q8NDtkKz0yLWIpYz1jYVtkXSxlWyJtYXJnaW4iK2NdPWVbInBhZGRpbmciK2NdPWE7cmV0dXJuIGImJihlLm9wYWNpdHk9ZS53aWR0aD1hKSxlfWZ1bmN0aW9uIGhiKGEsYixjKXtmb3IodmFyIGQsZT0oa2IudHdlZW5lcnNbYl18fFtdKS5jb25jYXQoa2IudHdlZW5lcnNbIioiXSksZj0wLGc9ZS5sZW5ndGg7ZjxnO2YrKylpZihkPWVbZl0uY2FsbChjLGIsYSkpcmV0dXJuIGR9ZnVuY3Rpb24gaWIoYSxiLGMpe3ZhciBkLGUsZixnLGgsaSxqLGssbD0id2lkdGgiaW4gYnx8ImhlaWdodCJpbiBiLG09dGhpcyxuPXt9LG89YS5zdHlsZSxwPWEubm9kZVR5cGUmJmRhKGEpLHE9Vy5nZXQoYSwiZnhzaG93Iik7Yy5xdWV1ZXx8KGc9ci5fcXVldWVIb29rcyhhLCJmeCIpLG51bGw9PWcudW5xdWV1ZWQmJihnLnVucXVldWVkPTAsaD1nLmVtcHR5LmZpcmUsZy5lbXB0eS5maXJlPWZ1bmN0aW9uKCl7Zy51bnF1ZXVlZHx8aCgpfSksZy51bnF1ZXVlZCsrLG0uYWx3YXlzKGZ1bmN0aW9uKCl7bS5hbHdheXMoZnVuY3Rpb24oKXtnLnVucXVldWVkLS0sci5xdWV1ZShhLCJmeCIpLmxlbmd0aHx8Zy5lbXB0eS5maXJlKCl9KX0pKTtmb3IoZCBpbiBiKWlmKGU9YltkXSxjYi50ZXN0KGUpKXtpZihkZWxldGUgYltkXSxmPWZ8fCJ0b2dnbGUiPT09ZSxlPT09KHA/ImhpZGUiOiJzaG93Iikpe2lmKCJzaG93IiE9PWV8fCFxfHx2b2lkIDA9PT1xW2RdKWNvbnRpbnVlO3A9ITB9bltkXT1xJiZxW2RdfHxyLnN0eWxlKGEsZCl9aWYoaT0hci5pc0VtcHR5T2JqZWN0KGIpLGl8fCFyLmlzRW1wdHlPYmplY3Qobikpe2wmJjE9PT1hLm5vZGVUeXBlJiYoYy5vdmVyZmxvdz1bby5vdmVyZmxvdyxvLm92ZXJmbG93WCxvLm92ZXJmbG93WV0saj1xJiZxLmRpc3BsYXksbnVsbD09aiYmKGo9Vy5nZXQoYSwiZGlzcGxheSIpKSxrPXIuY3NzKGEsImRpc3BsYXkiKSwibm9uZSI9PT1rJiYoaj9rPWo6KGlhKFthXSwhMCksaj1hLnN0eWxlLmRpc3BsYXl8fGosaz1yLmNzcyhhLCJkaXNwbGF5IiksaWEoW2FdKSkpLCgiaW5saW5lIj09PWt8fCJpbmxpbmUtYmxvY2siPT09ayYmbnVsbCE9aikmJiJub25lIj09PXIuY3NzKGEsImZsb2F0IikmJihpfHwobS5kb25lKGZ1bmN0aW9uKCl7by5kaXNwbGF5PWp9KSxudWxsPT1qJiYoaz1vLmRpc3BsYXksaj0ibm9uZSI9PT1rPyIiOmspKSxvLmRpc3BsYXk9ImlubGluZS1ibG9jayIpKSxjLm92ZXJmbG93JiYoby5vdmVyZmxvdz0iaGlkZGVuIixtLmFsd2F5cyhmdW5jdGlvbigpe28ub3ZlcmZsb3c9Yy5vdmVyZmxvd1swXSxvLm92ZXJmbG93WD1jLm92ZXJmbG93WzFdLG8ub3ZlcmZsb3dZPWMub3ZlcmZsb3dbMl19KSksaT0hMTtmb3IoZCBpbiBuKWl8fChxPyJoaWRkZW4iaW4gcSYmKHA9cS5oaWRkZW4pOnE9Vy5hY2Nlc3MoYSwiZnhzaG93Iix7ZGlzcGxheTpqfSksZiYmKHEuaGlkZGVuPSFwKSxwJiZpYShbYV0sITApLG0uZG9uZShmdW5jdGlvbigpe3B8fGlhKFthXSksVy5yZW1vdmUoYSwiZnhzaG93Iik7Zm9yKGQgaW4gbilyLnN0eWxlKGEsZCxuW2RdKX0pKSxpPWhiKHA/cVtkXTowLGQsbSksZCBpbiBxfHwocVtkXT1pLnN0YXJ0LHAmJihpLmVuZD1pLnN0YXJ0LGkuc3RhcnQ9MCkpfX1mdW5jdGlvbiBqYihhLGIpe3ZhciBjLGQsZSxmLGc7Zm9yKGMgaW4gYSlpZihkPXIuY2FtZWxDYXNlKGMpLGU9YltkXSxmPWFbY10sQXJyYXkuaXNBcnJheShmKSYmKGU9ZlsxXSxmPWFbY109ZlswXSksYyE9PWQmJihhW2RdPWYsZGVsZXRlIGFbY10pLGc9ci5jc3NIb29rc1tkXSxnJiYiZXhwYW5kImluIGcpe2Y9Zy5leHBhbmQoZiksZGVsZXRlIGFbZF07Zm9yKGMgaW4gZiljIGluIGF8fChhW2NdPWZbY10sYltjXT1lKX1lbHNlIGJbZF09ZX1mdW5jdGlvbiBrYihhLGIsYyl7dmFyIGQsZSxmPTAsZz1rYi5wcmVmaWx0ZXJzLmxlbmd0aCxoPXIuRGVmZXJyZWQoKS5hbHdheXMoZnVuY3Rpb24oKXtkZWxldGUgaS5lbGVtfSksaT1mdW5jdGlvbigpe2lmKGUpcmV0dXJuITE7Zm9yKHZhciBiPWFifHxmYigpLGM9TWF0aC5tYXgoMCxqLnN0YXJ0VGltZStqLmR1cmF0aW9uLWIpLGQ9Yy9qLmR1cmF0aW9ufHwwLGY9MS1kLGc9MCxpPWoudHdlZW5zLmxlbmd0aDtnPGk7ZysrKWoudHdlZW5zW2ddLnJ1bihmKTtyZXR1cm4gaC5ub3RpZnlXaXRoKGEsW2osZixjXSksZjwxJiZpP2M6KGl8fGgubm90aWZ5V2l0aChhLFtqLDEsMF0pLGgucmVzb2x2ZVdpdGgoYSxbal0pLCExKX0saj1oLnByb21pc2Uoe2VsZW06YSxwcm9wczpyLmV4dGVuZCh7fSxiKSxvcHRzOnIuZXh0ZW5kKCEwLHtzcGVjaWFsRWFzaW5nOnt9LGVhc2luZzpyLmVhc2luZy5fZGVmYXVsdH0sYyksb3JpZ2luYWxQcm9wZXJ0aWVzOmIsb3JpZ2luYWxPcHRpb25zOmMsc3RhcnRUaW1lOmFifHxmYigpLGR1cmF0aW9uOmMuZHVyYXRpb24sdHdlZW5zOltdLGNyZWF0ZVR3ZWVuOmZ1bmN0aW9uKGIsYyl7dmFyIGQ9ci5Ud2VlbihhLGoub3B0cyxiLGMsai5vcHRzLnNwZWNpYWxFYXNpbmdbYl18fGoub3B0cy5lYXNpbmcpO3JldHVybiBqLnR3ZWVucy5wdXNoKGQpLGR9LHN0b3A6ZnVuY3Rpb24oYil7dmFyIGM9MCxkPWI/ai50d2VlbnMubGVuZ3RoOjA7aWYoZSlyZXR1cm4gdGhpcztmb3IoZT0hMDtjPGQ7YysrKWoudHdlZW5zW2NdLnJ1bigxKTtyZXR1cm4gYj8oaC5ub3RpZnlXaXRoKGEsW2osMSwwXSksaC5yZXNvbHZlV2l0aChhLFtqLGJdKSk6aC5yZWplY3RXaXRoKGEsW2osYl0pLHRoaXN9fSksaz1qLnByb3BzO2ZvcihqYihrLGoub3B0cy5zcGVjaWFsRWFzaW5nKTtmPGc7ZisrKWlmKGQ9a2IucHJlZmlsdGVyc1tmXS5jYWxsKGosYSxrLGoub3B0cykpcmV0dXJuIHIuaXNGdW5jdGlvbihkLnN0b3ApJiYoci5fcXVldWVIb29rcyhqLmVsZW0sai5vcHRzLnF1ZXVlKS5zdG9wPXIucHJveHkoZC5zdG9wLGQpKSxkO3JldHVybiByLm1hcChrLGhiLGopLHIuaXNGdW5jdGlvbihqLm9wdHMuc3RhcnQpJiZqLm9wdHMuc3RhcnQuY2FsbChhLGopLGoucHJvZ3Jlc3Moai5vcHRzLnByb2dyZXNzKS5kb25lKGoub3B0cy5kb25lLGoub3B0cy5jb21wbGV0ZSkuZmFpbChqLm9wdHMuZmFpbCkuYWx3YXlzKGoub3B0cy5hbHdheXMpLHIuZngudGltZXIoci5leHRlbmQoaSx7ZWxlbTphLGFuaW06aixxdWV1ZTpqLm9wdHMucXVldWV9KSksan1yLkFuaW1hdGlvbj1yLmV4dGVuZChrYix7dHdlZW5lcnM6eyIqIjpbZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLmNyZWF0ZVR3ZWVuKGEsYik7cmV0dXJuIGZhKGMuZWxlbSxhLGJhLmV4ZWMoYiksYyksY31dfSx0d2VlbmVyOmZ1bmN0aW9uKGEsYil7ci5pc0Z1bmN0aW9uKGEpPyhiPWEsYT1bIioiXSk6YT1hLm1hdGNoKEwpO2Zvcih2YXIgYyxkPTAsZT1hLmxlbmd0aDtkPGU7ZCsrKWM9YVtkXSxrYi50d2VlbmVyc1tjXT1rYi50d2VlbmVyc1tjXXx8W10sa2IudHdlZW5lcnNbY10udW5zaGlmdChiKX0scHJlZmlsdGVyczpbaWJdLHByZWZpbHRlcjpmdW5jdGlvbihhLGIpe2I/a2IucHJlZmlsdGVycy51bnNoaWZ0KGEpOmtiLnByZWZpbHRlcnMucHVzaChhKX19KSxyLnNwZWVkPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1hJiYib2JqZWN0Ij09dHlwZW9mIGE/ci5leHRlbmQoe30sYSk6e2NvbXBsZXRlOmN8fCFjJiZifHxyLmlzRnVuY3Rpb24oYSkmJmEsZHVyYXRpb246YSxlYXNpbmc6YyYmYnx8YiYmIXIuaXNGdW5jdGlvbihiKSYmYn07cmV0dXJuIHIuZngub2ZmP2QuZHVyYXRpb249MDoibnVtYmVyIiE9dHlwZW9mIGQuZHVyYXRpb24mJihkLmR1cmF0aW9uIGluIHIuZnguc3BlZWRzP2QuZHVyYXRpb249ci5meC5zcGVlZHNbZC5kdXJhdGlvbl06ZC5kdXJhdGlvbj1yLmZ4LnNwZWVkcy5fZGVmYXVsdCksbnVsbCE9ZC5xdWV1ZSYmZC5xdWV1ZSE9PSEwfHwoZC5xdWV1ZT0iZngiKSxkLm9sZD1kLmNvbXBsZXRlLGQuY29tcGxldGU9ZnVuY3Rpb24oKXtyLmlzRnVuY3Rpb24oZC5vbGQpJiZkLm9sZC5jYWxsKHRoaXMpLGQucXVldWUmJnIuZGVxdWV1ZSh0aGlzLGQucXVldWUpfSxkfSxyLmZuLmV4dGVuZCh7ZmFkZVRvOmZ1bmN0aW9uKGEsYixjLGQpe3JldHVybiB0aGlzLmZpbHRlcihkYSkuY3NzKCJvcGFjaXR5IiwwKS5zaG93KCkuZW5kKCkuYW5pbWF0ZSh7b3BhY2l0eTpifSxhLGMsZCl9LGFuaW1hdGU6ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9ci5pc0VtcHR5T2JqZWN0KGEpLGY9ci5zcGVlZChiLGMsZCksZz1mdW5jdGlvbigpe3ZhciBiPWtiKHRoaXMsci5leHRlbmQoe30sYSksZik7KGV8fFcuZ2V0KHRoaXMsImZpbmlzaCIpKSYmYi5zdG9wKCEwKX07cmV0dXJuIGcuZmluaXNoPWcsZXx8Zi5xdWV1ZT09PSExP3RoaXMuZWFjaChnKTp0aGlzLnF1ZXVlKGYucXVldWUsZyl9LHN0b3A6ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWZ1bmN0aW9uKGEpe3ZhciBiPWEuc3RvcDtkZWxldGUgYS5zdG9wLGIoYyl9O3JldHVybiJzdHJpbmciIT10eXBlb2YgYSYmKGM9YixiPWEsYT12b2lkIDApLGImJmEhPT0hMSYmdGhpcy5xdWV1ZShhfHwiZngiLFtdKSx0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgYj0hMCxlPW51bGwhPWEmJmErInF1ZXVlSG9va3MiLGY9ci50aW1lcnMsZz1XLmdldCh0aGlzKTtpZihlKWdbZV0mJmdbZV0uc3RvcCYmZChnW2VdKTtlbHNlIGZvcihlIGluIGcpZ1tlXSYmZ1tlXS5zdG9wJiZkYi50ZXN0KGUpJiZkKGdbZV0pO2ZvcihlPWYubGVuZ3RoO2UtLTspZltlXS5lbGVtIT09dGhpc3x8bnVsbCE9YSYmZltlXS5xdWV1ZSE9PWF8fChmW2VdLmFuaW0uc3RvcChjKSxiPSExLGYuc3BsaWNlKGUsMSkpOyFiJiZjfHxyLmRlcXVldWUodGhpcyxhKX0pfSxmaW5pc2g6ZnVuY3Rpb24oYSl7cmV0dXJuIGEhPT0hMSYmKGE9YXx8ImZ4IiksdGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGIsYz1XLmdldCh0aGlzKSxkPWNbYSsicXVldWUiXSxlPWNbYSsicXVldWVIb29rcyJdLGY9ci50aW1lcnMsZz1kP2QubGVuZ3RoOjA7Zm9yKGMuZmluaXNoPSEwLHIucXVldWUodGhpcyxhLFtdKSxlJiZlLnN0b3AmJmUuc3RvcC5jYWxsKHRoaXMsITApLGI9Zi5sZW5ndGg7Yi0tOylmW2JdLmVsZW09PT10aGlzJiZmW2JdLnF1ZXVlPT09YSYmKGZbYl0uYW5pbS5zdG9wKCEwKSxmLnNwbGljZShiLDEpKTtmb3IoYj0wO2I8ZztiKyspZFtiXSYmZFtiXS5maW5pc2gmJmRbYl0uZmluaXNoLmNhbGwodGhpcyk7ZGVsZXRlIGMuZmluaXNofSl9fSksci5lYWNoKFsidG9nZ2xlIiwic2hvdyIsImhpZGUiXSxmdW5jdGlvbihhLGIpe3ZhciBjPXIuZm5bYl07ci5mbltiXT1mdW5jdGlvbihhLGQsZSl7cmV0dXJuIG51bGw9PWF8fCJib29sZWFuIj09dHlwZW9mIGE/Yy5hcHBseSh0aGlzLGFyZ3VtZW50cyk6dGhpcy5hbmltYXRlKGdiKGIsITApLGEsZCxlKX19KSxyLmVhY2goe3NsaWRlRG93bjpnYigic2hvdyIpLHNsaWRlVXA6Z2IoImhpZGUiKSxzbGlkZVRvZ2dsZTpnYigidG9nZ2xlIiksZmFkZUluOntvcGFjaXR5OiJzaG93In0sZmFkZU91dDp7b3BhY2l0eToiaGlkZSJ9LGZhZGVUb2dnbGU6e29wYWNpdHk6InRvZ2dsZSJ9fSxmdW5jdGlvbihhLGIpe3IuZm5bYV09ZnVuY3Rpb24oYSxjLGQpe3JldHVybiB0aGlzLmFuaW1hdGUoYixhLGMsZCl9fSksci50aW1lcnM9W10sci5meC50aWNrPWZ1bmN0aW9uKCl7dmFyIGEsYj0wLGM9ci50aW1lcnM7Zm9yKGFiPXIubm93KCk7YjxjLmxlbmd0aDtiKyspYT1jW2JdLGEoKXx8Y1tiXSE9PWF8fGMuc3BsaWNlKGItLSwxKTtjLmxlbmd0aHx8ci5meC5zdG9wKCksYWI9dm9pZCAwfSxyLmZ4LnRpbWVyPWZ1bmN0aW9uKGEpe3IudGltZXJzLnB1c2goYSksci5meC5zdGFydCgpfSxyLmZ4LmludGVydmFsPTEzLHIuZnguc3RhcnQ9ZnVuY3Rpb24oKXtiYnx8KGJiPSEwLGViKCkpfSxyLmZ4LnN0b3A9ZnVuY3Rpb24oKXtiYj1udWxsfSxyLmZ4LnNwZWVkcz17c2xvdzo2MDAsZmFzdDoyMDAsX2RlZmF1bHQ6NDAwfSxyLmZuLmRlbGF5PWZ1bmN0aW9uKGIsYyl7cmV0dXJuIGI9ci5meD9yLmZ4LnNwZWVkc1tiXXx8YjpiLGM9Y3x8ImZ4Iix0aGlzLnF1ZXVlKGMsZnVuY3Rpb24oYyxkKXt2YXIgZT1hLnNldFRpbWVvdXQoYyxiKTtkLnN0b3A9ZnVuY3Rpb24oKXthLmNsZWFyVGltZW91dChlKX19KX0sZnVuY3Rpb24oKXt2YXIgYT1kLmNyZWF0ZUVsZW1lbnQoImlucHV0IiksYj1kLmNyZWF0ZUVsZW1lbnQoInNlbGVjdCIpLGM9Yi5hcHBlbmRDaGlsZChkLmNyZWF0ZUVsZW1lbnQoIm9wdGlvbiIpKTthLnR5cGU9ImNoZWNrYm94IixvLmNoZWNrT249IiIhPT1hLnZhbHVlLG8ub3B0U2VsZWN0ZWQ9Yy5zZWxlY3RlZCxhPWQuY3JlYXRlRWxlbWVudCgiaW5wdXQiKSxhLnZhbHVlPSJ0IixhLnR5cGU9InJhZGlvIixvLnJhZGlvVmFsdWU9InQiPT09YS52YWx1ZX0oKTt2YXIgbGIsbWI9ci5leHByLmF0dHJIYW5kbGU7ci5mbi5leHRlbmQoe2F0dHI6ZnVuY3Rpb24oYSxiKXtyZXR1cm4gVCh0aGlzLHIuYXR0cixhLGIsYXJndW1lbnRzLmxlbmd0aD4xKX0scmVtb3ZlQXR0cjpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7ci5yZW1vdmVBdHRyKHRoaXMsYSl9KX19KSxyLmV4dGVuZCh7YXR0cjpmdW5jdGlvbihhLGIsYyl7dmFyIGQsZSxmPWEubm9kZVR5cGU7aWYoMyE9PWYmJjghPT1mJiYyIT09ZilyZXR1cm4idW5kZWZpbmVkIj09dHlwZW9mIGEuZ2V0QXR0cmlidXRlP3IucHJvcChhLGIsYyk6KDE9PT1mJiZyLmlzWE1MRG9jKGEpfHwoZT1yLmF0dHJIb29rc1tiLnRvTG93ZXJDYXNlKCldfHwoci5leHByLm1hdGNoLmJvb2wudGVzdChiKT9sYjp2b2lkIDApKSx2b2lkIDAhPT1jP251bGw9PT1jP3ZvaWQgci5yZW1vdmVBdHRyKGEsYik6ZSYmInNldCJpbiBlJiZ2b2lkIDAhPT0oZD1lLnNldChhLGMsYikpP2Q6KGEuc2V0QXR0cmlidXRlKGIsYysiIiksYyk6ZSYmImdldCJpbiBlJiZudWxsIT09KGQ9ZS5nZXQoYSxiKSk/ZDooZD1yLmZpbmQuYXR0cihhLGIpLApudWxsPT1kP3ZvaWQgMDpkKSl9LGF0dHJIb29rczp7dHlwZTp7c2V0OmZ1bmN0aW9uKGEsYil7aWYoIW8ucmFkaW9WYWx1ZSYmInJhZGlvIj09PWImJkIoYSwiaW5wdXQiKSl7dmFyIGM9YS52YWx1ZTtyZXR1cm4gYS5zZXRBdHRyaWJ1dGUoInR5cGUiLGIpLGMmJihhLnZhbHVlPWMpLGJ9fX19LHJlbW92ZUF0dHI6ZnVuY3Rpb24oYSxiKXt2YXIgYyxkPTAsZT1iJiZiLm1hdGNoKEwpO2lmKGUmJjE9PT1hLm5vZGVUeXBlKXdoaWxlKGM9ZVtkKytdKWEucmVtb3ZlQXR0cmlidXRlKGMpfX0pLGxiPXtzZXQ6ZnVuY3Rpb24oYSxiLGMpe3JldHVybiBiPT09ITE/ci5yZW1vdmVBdHRyKGEsYyk6YS5zZXRBdHRyaWJ1dGUoYyxjKSxjfX0sci5lYWNoKHIuZXhwci5tYXRjaC5ib29sLnNvdXJjZS5tYXRjaCgvXHcrL2cpLGZ1bmN0aW9uKGEsYil7dmFyIGM9bWJbYl18fHIuZmluZC5hdHRyO21iW2JdPWZ1bmN0aW9uKGEsYixkKXt2YXIgZSxmLGc9Yi50b0xvd2VyQ2FzZSgpO3JldHVybiBkfHwoZj1tYltnXSxtYltnXT1lLGU9bnVsbCE9YyhhLGIsZCk/ZzpudWxsLG1iW2ddPWYpLGV9fSk7dmFyIG5iPS9eKD86aW5wdXR8c2VsZWN0fHRleHRhcmVhfGJ1dHRvbikkL2ksb2I9L14oPzphfGFyZWEpJC9pO3IuZm4uZXh0ZW5kKHtwcm9wOmZ1bmN0aW9uKGEsYil7cmV0dXJuIFQodGhpcyxyLnByb3AsYSxiLGFyZ3VtZW50cy5sZW5ndGg+MSl9LHJlbW92ZVByb3A6ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe2RlbGV0ZSB0aGlzW3IucHJvcEZpeFthXXx8YV19KX19KSxyLmV4dGVuZCh7cHJvcDpmdW5jdGlvbihhLGIsYyl7dmFyIGQsZSxmPWEubm9kZVR5cGU7aWYoMyE9PWYmJjghPT1mJiYyIT09ZilyZXR1cm4gMT09PWYmJnIuaXNYTUxEb2MoYSl8fChiPXIucHJvcEZpeFtiXXx8YixlPXIucHJvcEhvb2tzW2JdKSx2b2lkIDAhPT1jP2UmJiJzZXQiaW4gZSYmdm9pZCAwIT09KGQ9ZS5zZXQoYSxjLGIpKT9kOmFbYl09YzplJiYiZ2V0ImluIGUmJm51bGwhPT0oZD1lLmdldChhLGIpKT9kOmFbYl19LHByb3BIb29rczp7dGFiSW5kZXg6e2dldDpmdW5jdGlvbihhKXt2YXIgYj1yLmZpbmQuYXR0cihhLCJ0YWJpbmRleCIpO3JldHVybiBiP3BhcnNlSW50KGIsMTApOm5iLnRlc3QoYS5ub2RlTmFtZSl8fG9iLnRlc3QoYS5ub2RlTmFtZSkmJmEuaHJlZj8wOi0xfX19LHByb3BGaXg6eyJmb3IiOiJodG1sRm9yIiwiY2xhc3MiOiJjbGFzc05hbWUifX0pLG8ub3B0U2VsZWN0ZWR8fChyLnByb3BIb29rcy5zZWxlY3RlZD17Z2V0OmZ1bmN0aW9uKGEpe3ZhciBiPWEucGFyZW50Tm9kZTtyZXR1cm4gYiYmYi5wYXJlbnROb2RlJiZiLnBhcmVudE5vZGUuc2VsZWN0ZWRJbmRleCxudWxsfSxzZXQ6ZnVuY3Rpb24oYSl7dmFyIGI9YS5wYXJlbnROb2RlO2ImJihiLnNlbGVjdGVkSW5kZXgsYi5wYXJlbnROb2RlJiZiLnBhcmVudE5vZGUuc2VsZWN0ZWRJbmRleCl9fSksci5lYWNoKFsidGFiSW5kZXgiLCJyZWFkT25seSIsIm1heExlbmd0aCIsImNlbGxTcGFjaW5nIiwiY2VsbFBhZGRpbmciLCJyb3dTcGFuIiwiY29sU3BhbiIsInVzZU1hcCIsImZyYW1lQm9yZGVyIiwiY29udGVudEVkaXRhYmxlIl0sZnVuY3Rpb24oKXtyLnByb3BGaXhbdGhpcy50b0xvd2VyQ2FzZSgpXT10aGlzfSk7ZnVuY3Rpb24gcGIoYSl7dmFyIGI9YS5tYXRjaChMKXx8W107cmV0dXJuIGIuam9pbigiICIpfWZ1bmN0aW9uIHFiKGEpe3JldHVybiBhLmdldEF0dHJpYnV0ZSYmYS5nZXRBdHRyaWJ1dGUoImNsYXNzIil8fCIifXIuZm4uZXh0ZW5kKHthZGRDbGFzczpmdW5jdGlvbihhKXt2YXIgYixjLGQsZSxmLGcsaCxpPTA7aWYoci5pc0Z1bmN0aW9uKGEpKXJldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oYil7cih0aGlzKS5hZGRDbGFzcyhhLmNhbGwodGhpcyxiLHFiKHRoaXMpKSl9KTtpZigic3RyaW5nIj09dHlwZW9mIGEmJmEpe2I9YS5tYXRjaChMKXx8W107d2hpbGUoYz10aGlzW2krK10paWYoZT1xYihjKSxkPTE9PT1jLm5vZGVUeXBlJiYiICIrcGIoZSkrIiAiKXtnPTA7d2hpbGUoZj1iW2crK10pZC5pbmRleE9mKCIgIitmKyIgIik8MCYmKGQrPWYrIiAiKTtoPXBiKGQpLGUhPT1oJiZjLnNldEF0dHJpYnV0ZSgiY2xhc3MiLGgpfX1yZXR1cm4gdGhpc30scmVtb3ZlQ2xhc3M6ZnVuY3Rpb24oYSl7dmFyIGIsYyxkLGUsZixnLGgsaT0wO2lmKHIuaXNGdW5jdGlvbihhKSlyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKGIpe3IodGhpcykucmVtb3ZlQ2xhc3MoYS5jYWxsKHRoaXMsYixxYih0aGlzKSkpfSk7aWYoIWFyZ3VtZW50cy5sZW5ndGgpcmV0dXJuIHRoaXMuYXR0cigiY2xhc3MiLCIiKTtpZigic3RyaW5nIj09dHlwZW9mIGEmJmEpe2I9YS5tYXRjaChMKXx8W107d2hpbGUoYz10aGlzW2krK10paWYoZT1xYihjKSxkPTE9PT1jLm5vZGVUeXBlJiYiICIrcGIoZSkrIiAiKXtnPTA7d2hpbGUoZj1iW2crK10pd2hpbGUoZC5pbmRleE9mKCIgIitmKyIgIik+LTEpZD1kLnJlcGxhY2UoIiAiK2YrIiAiLCIgIik7aD1wYihkKSxlIT09aCYmYy5zZXRBdHRyaWJ1dGUoImNsYXNzIixoKX19cmV0dXJuIHRoaXN9LHRvZ2dsZUNsYXNzOmZ1bmN0aW9uKGEsYil7dmFyIGM9dHlwZW9mIGE7cmV0dXJuImJvb2xlYW4iPT10eXBlb2YgYiYmInN0cmluZyI9PT1jP2I/dGhpcy5hZGRDbGFzcyhhKTp0aGlzLnJlbW92ZUNsYXNzKGEpOnIuaXNGdW5jdGlvbihhKT90aGlzLmVhY2goZnVuY3Rpb24oYyl7cih0aGlzKS50b2dnbGVDbGFzcyhhLmNhbGwodGhpcyxjLHFiKHRoaXMpLGIpLGIpfSk6dGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGIsZCxlLGY7aWYoInN0cmluZyI9PT1jKXtkPTAsZT1yKHRoaXMpLGY9YS5tYXRjaChMKXx8W107d2hpbGUoYj1mW2QrK10pZS5oYXNDbGFzcyhiKT9lLnJlbW92ZUNsYXNzKGIpOmUuYWRkQ2xhc3MoYil9ZWxzZSB2b2lkIDAhPT1hJiYiYm9vbGVhbiIhPT1jfHwoYj1xYih0aGlzKSxiJiZXLnNldCh0aGlzLCJfX2NsYXNzTmFtZV9fIixiKSx0aGlzLnNldEF0dHJpYnV0ZSYmdGhpcy5zZXRBdHRyaWJ1dGUoImNsYXNzIixifHxhPT09ITE/IiI6Vy5nZXQodGhpcywiX19jbGFzc05hbWVfXyIpfHwiIikpfSl9LGhhc0NsYXNzOmZ1bmN0aW9uKGEpe3ZhciBiLGMsZD0wO2I9IiAiK2ErIiAiO3doaWxlKGM9dGhpc1tkKytdKWlmKDE9PT1jLm5vZGVUeXBlJiYoIiAiK3BiKHFiKGMpKSsiICIpLmluZGV4T2YoYik+LTEpcmV0dXJuITA7cmV0dXJuITF9fSk7dmFyIHJiPS9cci9nO3IuZm4uZXh0ZW5kKHt2YWw6ZnVuY3Rpb24oYSl7dmFyIGIsYyxkLGU9dGhpc1swXTt7aWYoYXJndW1lbnRzLmxlbmd0aClyZXR1cm4gZD1yLmlzRnVuY3Rpb24oYSksdGhpcy5lYWNoKGZ1bmN0aW9uKGMpe3ZhciBlOzE9PT10aGlzLm5vZGVUeXBlJiYoZT1kP2EuY2FsbCh0aGlzLGMscih0aGlzKS52YWwoKSk6YSxudWxsPT1lP2U9IiI6Im51bWJlciI9PXR5cGVvZiBlP2UrPSIiOkFycmF5LmlzQXJyYXkoZSkmJihlPXIubWFwKGUsZnVuY3Rpb24oYSl7cmV0dXJuIG51bGw9PWE/IiI6YSsiIn0pKSxiPXIudmFsSG9va3NbdGhpcy50eXBlXXx8ci52YWxIb29rc1t0aGlzLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCldLGImJiJzZXQiaW4gYiYmdm9pZCAwIT09Yi5zZXQodGhpcyxlLCJ2YWx1ZSIpfHwodGhpcy52YWx1ZT1lKSl9KTtpZihlKXJldHVybiBiPXIudmFsSG9va3NbZS50eXBlXXx8ci52YWxIb29rc1tlLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCldLGImJiJnZXQiaW4gYiYmdm9pZCAwIT09KGM9Yi5nZXQoZSwidmFsdWUiKSk/YzooYz1lLnZhbHVlLCJzdHJpbmciPT10eXBlb2YgYz9jLnJlcGxhY2UocmIsIiIpOm51bGw9PWM/IiI6Yyl9fX0pLHIuZXh0ZW5kKHt2YWxIb29rczp7b3B0aW9uOntnZXQ6ZnVuY3Rpb24oYSl7dmFyIGI9ci5maW5kLmF0dHIoYSwidmFsdWUiKTtyZXR1cm4gbnVsbCE9Yj9iOnBiKHIudGV4dChhKSl9fSxzZWxlY3Q6e2dldDpmdW5jdGlvbihhKXt2YXIgYixjLGQsZT1hLm9wdGlvbnMsZj1hLnNlbGVjdGVkSW5kZXgsZz0ic2VsZWN0LW9uZSI9PT1hLnR5cGUsaD1nP251bGw6W10saT1nP2YrMTplLmxlbmd0aDtmb3IoZD1mPDA/aTpnP2Y6MDtkPGk7ZCsrKWlmKGM9ZVtkXSwoYy5zZWxlY3RlZHx8ZD09PWYpJiYhYy5kaXNhYmxlZCYmKCFjLnBhcmVudE5vZGUuZGlzYWJsZWR8fCFCKGMucGFyZW50Tm9kZSwib3B0Z3JvdXAiKSkpe2lmKGI9cihjKS52YWwoKSxnKXJldHVybiBiO2gucHVzaChiKX1yZXR1cm4gaH0sc2V0OmZ1bmN0aW9uKGEsYil7dmFyIGMsZCxlPWEub3B0aW9ucyxmPXIubWFrZUFycmF5KGIpLGc9ZS5sZW5ndGg7d2hpbGUoZy0tKWQ9ZVtnXSwoZC5zZWxlY3RlZD1yLmluQXJyYXkoci52YWxIb29rcy5vcHRpb24uZ2V0KGQpLGYpPi0xKSYmKGM9ITApO3JldHVybiBjfHwoYS5zZWxlY3RlZEluZGV4PS0xKSxmfX19fSksci5lYWNoKFsicmFkaW8iLCJjaGVja2JveCJdLGZ1bmN0aW9uKCl7ci52YWxIb29rc1t0aGlzXT17c2V0OmZ1bmN0aW9uKGEsYil7aWYoQXJyYXkuaXNBcnJheShiKSlyZXR1cm4gYS5jaGVja2VkPXIuaW5BcnJheShyKGEpLnZhbCgpLGIpPi0xfX0sby5jaGVja09ufHwoci52YWxIb29rc1t0aGlzXS5nZXQ9ZnVuY3Rpb24oYSl7cmV0dXJuIG51bGw9PT1hLmdldEF0dHJpYnV0ZSgidmFsdWUiKT8ib24iOmEudmFsdWV9KX0pO3ZhciBzYj0vXig/OmZvY3VzaW5mb2N1c3xmb2N1c291dGJsdXIpJC87ci5leHRlbmQoci5ldmVudCx7dHJpZ2dlcjpmdW5jdGlvbihiLGMsZSxmKXt2YXIgZyxoLGksaixrLG0sbixvPVtlfHxkXSxwPWwuY2FsbChiLCJ0eXBlIik/Yi50eXBlOmIscT1sLmNhbGwoYiwibmFtZXNwYWNlIik/Yi5uYW1lc3BhY2Uuc3BsaXQoIi4iKTpbXTtpZihoPWk9ZT1lfHxkLDMhPT1lLm5vZGVUeXBlJiY4IT09ZS5ub2RlVHlwZSYmIXNiLnRlc3QocCtyLmV2ZW50LnRyaWdnZXJlZCkmJihwLmluZGV4T2YoIi4iKT4tMSYmKHE9cC5zcGxpdCgiLiIpLHA9cS5zaGlmdCgpLHEuc29ydCgpKSxrPXAuaW5kZXhPZigiOiIpPDAmJiJvbiIrcCxiPWJbci5leHBhbmRvXT9iOm5ldyByLkV2ZW50KHAsIm9iamVjdCI9PXR5cGVvZiBiJiZiKSxiLmlzVHJpZ2dlcj1mPzI6MyxiLm5hbWVzcGFjZT1xLmpvaW4oIi4iKSxiLnJuYW1lc3BhY2U9Yi5uYW1lc3BhY2U/bmV3IFJlZ0V4cCgiKF58XFwuKSIrcS5qb2luKCJcXC4oPzouKlxcLnwpIikrIihcXC58JCkiKTpudWxsLGIucmVzdWx0PXZvaWQgMCxiLnRhcmdldHx8KGIudGFyZ2V0PWUpLGM9bnVsbD09Yz9bYl06ci5tYWtlQXJyYXkoYyxbYl0pLG49ci5ldmVudC5zcGVjaWFsW3BdfHx7fSxmfHwhbi50cmlnZ2VyfHxuLnRyaWdnZXIuYXBwbHkoZSxjKSE9PSExKSl7aWYoIWYmJiFuLm5vQnViYmxlJiYhci5pc1dpbmRvdyhlKSl7Zm9yKGo9bi5kZWxlZ2F0ZVR5cGV8fHAsc2IudGVzdChqK3ApfHwoaD1oLnBhcmVudE5vZGUpO2g7aD1oLnBhcmVudE5vZGUpby5wdXNoKGgpLGk9aDtpPT09KGUub3duZXJEb2N1bWVudHx8ZCkmJm8ucHVzaChpLmRlZmF1bHRWaWV3fHxpLnBhcmVudFdpbmRvd3x8YSl9Zz0wO3doaWxlKChoPW9bZysrXSkmJiFiLmlzUHJvcGFnYXRpb25TdG9wcGVkKCkpYi50eXBlPWc+MT9qOm4uYmluZFR5cGV8fHAsbT0oVy5nZXQoaCwiZXZlbnRzIil8fHt9KVtiLnR5cGVdJiZXLmdldChoLCJoYW5kbGUiKSxtJiZtLmFwcGx5KGgsYyksbT1rJiZoW2tdLG0mJm0uYXBwbHkmJlUoaCkmJihiLnJlc3VsdD1tLmFwcGx5KGgsYyksYi5yZXN1bHQ9PT0hMSYmYi5wcmV2ZW50RGVmYXVsdCgpKTtyZXR1cm4gYi50eXBlPXAsZnx8Yi5pc0RlZmF1bHRQcmV2ZW50ZWQoKXx8bi5fZGVmYXVsdCYmbi5fZGVmYXVsdC5hcHBseShvLnBvcCgpLGMpIT09ITF8fCFVKGUpfHxrJiZyLmlzRnVuY3Rpb24oZVtwXSkmJiFyLmlzV2luZG93KGUpJiYoaT1lW2tdLGkmJihlW2tdPW51bGwpLHIuZXZlbnQudHJpZ2dlcmVkPXAsZVtwXSgpLHIuZXZlbnQudHJpZ2dlcmVkPXZvaWQgMCxpJiYoZVtrXT1pKSksYi5yZXN1bHR9fSxzaW11bGF0ZTpmdW5jdGlvbihhLGIsYyl7dmFyIGQ9ci5leHRlbmQobmV3IHIuRXZlbnQsYyx7dHlwZTphLGlzU2ltdWxhdGVkOiEwfSk7ci5ldmVudC50cmlnZ2VyKGQsbnVsbCxiKX19KSxyLmZuLmV4dGVuZCh7dHJpZ2dlcjpmdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXtyLmV2ZW50LnRyaWdnZXIoYSxiLHRoaXMpfSl9LHRyaWdnZXJIYW5kbGVyOmZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpc1swXTtpZihjKXJldHVybiByLmV2ZW50LnRyaWdnZXIoYSxiLGMsITApfX0pLHIuZWFjaCgiYmx1ciBmb2N1cyBmb2N1c2luIGZvY3Vzb3V0IHJlc2l6ZSBzY3JvbGwgY2xpY2sgZGJsY2xpY2sgbW91c2Vkb3duIG1vdXNldXAgbW91c2Vtb3ZlIG1vdXNlb3ZlciBtb3VzZW91dCBtb3VzZWVudGVyIG1vdXNlbGVhdmUgY2hhbmdlIHNlbGVjdCBzdWJtaXQga2V5ZG93biBrZXlwcmVzcyBrZXl1cCBjb250ZXh0bWVudSIuc3BsaXQoIiAiKSxmdW5jdGlvbihhLGIpe3IuZm5bYl09ZnVuY3Rpb24oYSxjKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aD4wP3RoaXMub24oYixudWxsLGEsYyk6dGhpcy50cmlnZ2VyKGIpfX0pLHIuZm4uZXh0ZW5kKHtob3ZlcjpmdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLm1vdXNlZW50ZXIoYSkubW91c2VsZWF2ZShifHxhKX19KSxvLmZvY3VzaW49Im9uZm9jdXNpbiJpbiBhLG8uZm9jdXNpbnx8ci5lYWNoKHtmb2N1czoiZm9jdXNpbiIsYmx1cjoiZm9jdXNvdXQifSxmdW5jdGlvbihhLGIpe3ZhciBjPWZ1bmN0aW9uKGEpe3IuZXZlbnQuc2ltdWxhdGUoYixhLnRhcmdldCxyLmV2ZW50LmZpeChhKSl9O3IuZXZlbnQuc3BlY2lhbFtiXT17c2V0dXA6ZnVuY3Rpb24oKXt2YXIgZD10aGlzLm93bmVyRG9jdW1lbnR8fHRoaXMsZT1XLmFjY2VzcyhkLGIpO2V8fGQuYWRkRXZlbnRMaXN0ZW5lcihhLGMsITApLFcuYWNjZXNzKGQsYiwoZXx8MCkrMSl9LHRlYXJkb3duOmZ1bmN0aW9uKCl7dmFyIGQ9dGhpcy5vd25lckRvY3VtZW50fHx0aGlzLGU9Vy5hY2Nlc3MoZCxiKS0xO2U/Vy5hY2Nlc3MoZCxiLGUpOihkLnJlbW92ZUV2ZW50TGlzdGVuZXIoYSxjLCEwKSxXLnJlbW92ZShkLGIpKX19fSk7dmFyIHRiPWEubG9jYXRpb24sdWI9ci5ub3coKSx2Yj0vXD8vO3IucGFyc2VYTUw9ZnVuY3Rpb24oYil7dmFyIGM7aWYoIWJ8fCJzdHJpbmciIT10eXBlb2YgYilyZXR1cm4gbnVsbDt0cnl7Yz0obmV3IGEuRE9NUGFyc2VyKS5wYXJzZUZyb21TdHJpbmcoYiwidGV4dC94bWwiKX1jYXRjaChkKXtjPXZvaWQgMH1yZXR1cm4gYyYmIWMuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInBhcnNlcmVycm9yIikubGVuZ3RofHxyLmVycm9yKCJJbnZhbGlkIFhNTDogIitiKSxjfTt2YXIgd2I9L1xbXF0kLyx4Yj0vXHI/XG4vZyx5Yj0vXig/OnN1Ym1pdHxidXR0b258aW1hZ2V8cmVzZXR8ZmlsZSkkL2ksemI9L14oPzppbnB1dHxzZWxlY3R8dGV4dGFyZWF8a2V5Z2VuKS9pO2Z1bmN0aW9uIEFiKGEsYixjLGQpe3ZhciBlO2lmKEFycmF5LmlzQXJyYXkoYikpci5lYWNoKGIsZnVuY3Rpb24oYixlKXtjfHx3Yi50ZXN0KGEpP2QoYSxlKTpBYihhKyJbIisoIm9iamVjdCI9PXR5cGVvZiBlJiZudWxsIT1lP2I6IiIpKyJdIixlLGMsZCl9KTtlbHNlIGlmKGN8fCJvYmplY3QiIT09ci50eXBlKGIpKWQoYSxiKTtlbHNlIGZvcihlIGluIGIpQWIoYSsiWyIrZSsiXSIsYltlXSxjLGQpfXIucGFyYW09ZnVuY3Rpb24oYSxiKXt2YXIgYyxkPVtdLGU9ZnVuY3Rpb24oYSxiKXt2YXIgYz1yLmlzRnVuY3Rpb24oYik/YigpOmI7ZFtkLmxlbmd0aF09ZW5jb2RlVVJJQ29tcG9uZW50KGEpKyI9IitlbmNvZGVVUklDb21wb25lbnQobnVsbD09Yz8iIjpjKX07aWYoQXJyYXkuaXNBcnJheShhKXx8YS5qcXVlcnkmJiFyLmlzUGxhaW5PYmplY3QoYSkpci5lYWNoKGEsZnVuY3Rpb24oKXtlKHRoaXMubmFtZSx0aGlzLnZhbHVlKX0pO2Vsc2UgZm9yKGMgaW4gYSlBYihjLGFbY10sYixlKTtyZXR1cm4gZC5qb2luKCImIil9LHIuZm4uZXh0ZW5kKHtzZXJpYWxpemU6ZnVuY3Rpb24oKXtyZXR1cm4gci5wYXJhbSh0aGlzLnNlcmlhbGl6ZUFycmF5KCkpfSxzZXJpYWxpemVBcnJheTpmdW5jdGlvbigpe3JldHVybiB0aGlzLm1hcChmdW5jdGlvbigpe3ZhciBhPXIucHJvcCh0aGlzLCJlbGVtZW50cyIpO3JldHVybiBhP3IubWFrZUFycmF5KGEpOnRoaXN9KS5maWx0ZXIoZnVuY3Rpb24oKXt2YXIgYT10aGlzLnR5cGU7cmV0dXJuIHRoaXMubmFtZSYmIXIodGhpcykuaXMoIjpkaXNhYmxlZCIpJiZ6Yi50ZXN0KHRoaXMubm9kZU5hbWUpJiYheWIudGVzdChhKSYmKHRoaXMuY2hlY2tlZHx8IWphLnRlc3QoYSkpfSkubWFwKGZ1bmN0aW9uKGEsYil7dmFyIGM9cih0aGlzKS52YWwoKTtyZXR1cm4gbnVsbD09Yz9udWxsOkFycmF5LmlzQXJyYXkoYyk/ci5tYXAoYyxmdW5jdGlvbihhKXtyZXR1cm57bmFtZTpiLm5hbWUsdmFsdWU6YS5yZXBsYWNlKHhiLCJcclxuIil9fSk6e25hbWU6Yi5uYW1lLHZhbHVlOmMucmVwbGFjZSh4YiwiXHJcbiIpfX0pLmdldCgpfX0pO3ZhciBCYj0vJTIwL2csQ2I9LyMuKiQvLERiPS8oWz8mXSlfPVteJl0qLyxFYj0vXiguKj8pOlsgXHRdKihbXlxyXG5dKikkL2dtLEZiPS9eKD86YWJvdXR8YXBwfGFwcC1zdG9yYWdlfC4rLWV4dGVuc2lvbnxmaWxlfHJlc3x3aWRnZXQpOiQvLEdiPS9eKD86R0VUfEhFQUQpJC8sSGI9L15cL1wvLyxJYj17fSxKYj17fSxLYj0iKi8iLmNvbmNhdCgiKiIpLExiPWQuY3JlYXRlRWxlbWVudCgiYSIpO0xiLmhyZWY9dGIuaHJlZjtmdW5jdGlvbiBNYihhKXtyZXR1cm4gZnVuY3Rpb24oYixjKXsic3RyaW5nIiE9dHlwZW9mIGImJihjPWIsYj0iKiIpO3ZhciBkLGU9MCxmPWIudG9Mb3dlckNhc2UoKS5tYXRjaChMKXx8W107aWYoci5pc0Z1bmN0aW9uKGMpKXdoaWxlKGQ9ZltlKytdKSIrIj09PWRbMF0/KGQ9ZC5zbGljZSgxKXx8IioiLChhW2RdPWFbZF18fFtdKS51bnNoaWZ0KGMpKTooYVtkXT1hW2RdfHxbXSkucHVzaChjKX19ZnVuY3Rpb24gTmIoYSxiLGMsZCl7dmFyIGU9e30sZj1hPT09SmI7ZnVuY3Rpb24gZyhoKXt2YXIgaTtyZXR1cm4gZVtoXT0hMCxyLmVhY2goYVtoXXx8W10sZnVuY3Rpb24oYSxoKXt2YXIgaj1oKGIsYyxkKTtyZXR1cm4ic3RyaW5nIiE9dHlwZW9mIGp8fGZ8fGVbal0/Zj8hKGk9aik6dm9pZCAwOihiLmRhdGFUeXBlcy51bnNoaWZ0KGopLGcoaiksITEpfSksaX1yZXR1cm4gZyhiLmRhdGFUeXBlc1swXSl8fCFlWyIqIl0mJmcoIioiKX1mdW5jdGlvbiBPYihhLGIpe3ZhciBjLGQsZT1yLmFqYXhTZXR0aW5ncy5mbGF0T3B0aW9uc3x8e307Zm9yKGMgaW4gYil2b2lkIDAhPT1iW2NdJiYoKGVbY10/YTpkfHwoZD17fSkpW2NdPWJbY10pO3JldHVybiBkJiZyLmV4dGVuZCghMCxhLGQpLGF9ZnVuY3Rpb24gUGIoYSxiLGMpe3ZhciBkLGUsZixnLGg9YS5jb250ZW50cyxpPWEuZGF0YVR5cGVzO3doaWxlKCIqIj09PWlbMF0paS5zaGlmdCgpLHZvaWQgMD09PWQmJihkPWEubWltZVR5cGV8fGIuZ2V0UmVzcG9uc2VIZWFkZXIoIkNvbnRlbnQtVHlwZSIpKTtpZihkKWZvcihlIGluIGgpaWYoaFtlXSYmaFtlXS50ZXN0KGQpKXtpLnVuc2hpZnQoZSk7YnJlYWt9aWYoaVswXWluIGMpZj1pWzBdO2Vsc2V7Zm9yKGUgaW4gYyl7aWYoIWlbMF18fGEuY29udmVydGVyc1tlKyIgIitpWzBdXSl7Zj1lO2JyZWFrfWd8fChnPWUpfWY9Znx8Z31pZihmKXJldHVybiBmIT09aVswXSYmaS51bnNoaWZ0KGYpLGNbZl19ZnVuY3Rpb24gUWIoYSxiLGMsZCl7dmFyIGUsZixnLGgsaSxqPXt9LGs9YS5kYXRhVHlwZXMuc2xpY2UoKTtpZihrWzFdKWZvcihnIGluIGEuY29udmVydGVycylqW2cudG9Mb3dlckNhc2UoKV09YS5jb252ZXJ0ZXJzW2ddO2Y9ay5zaGlmdCgpO3doaWxlKGYpaWYoYS5yZXNwb25zZUZpZWxkc1tmXSYmKGNbYS5yZXNwb25zZUZpZWxkc1tmXV09YiksIWkmJmQmJmEuZGF0YUZpbHRlciYmKGI9YS5kYXRhRmlsdGVyKGIsYS5kYXRhVHlwZSkpLGk9ZixmPWsuc2hpZnQoKSlpZigiKiI9PT1mKWY9aTtlbHNlIGlmKCIqIiE9PWkmJmkhPT1mKXtpZihnPWpbaSsiICIrZl18fGpbIiogIitmXSwhZylmb3IoZSBpbiBqKWlmKGg9ZS5zcGxpdCgiICIpLGhbMV09PT1mJiYoZz1qW2krIiAiK2hbMF1dfHxqWyIqICIraFswXV0pKXtnPT09ITA/Zz1qW2VdOmpbZV0hPT0hMCYmKGY9aFswXSxrLnVuc2hpZnQoaFsxXSkpO2JyZWFrfWlmKGchPT0hMClpZihnJiZhWyJ0aHJvd3MiXSliPWcoYik7ZWxzZSB0cnl7Yj1nKGIpfWNhdGNoKGwpe3JldHVybntzdGF0ZToicGFyc2VyZXJyb3IiLGVycm9yOmc/bDoiTm8gY29udmVyc2lvbiBmcm9tICIraSsiIHRvICIrZn19fXJldHVybntzdGF0ZToic3VjY2VzcyIsZGF0YTpifX1yLmV4dGVuZCh7YWN0aXZlOjAsbGFzdE1vZGlmaWVkOnt9LGV0YWc6e30sYWpheFNldHRpbmdzOnt1cmw6dGIuaHJlZix0eXBlOiJHRVQiLGlzTG9jYWw6RmIudGVzdCh0Yi5wcm90b2NvbCksZ2xvYmFsOiEwLHByb2Nlc3NEYXRhOiEwLGFzeW5jOiEwLGNvbnRlbnRUeXBlOiJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7IGNoYXJzZXQ9VVRGLTgiLGFjY2VwdHM6eyIqIjpLYix0ZXh0OiJ0ZXh0L3BsYWluIixodG1sOiJ0ZXh0L2h0bWwiLHhtbDoiYXBwbGljYXRpb24veG1sLCB0ZXh0L3htbCIsanNvbjoiYXBwbGljYXRpb24vanNvbiwgdGV4dC9qYXZhc2NyaXB0In0sY29udGVudHM6e3htbDovXGJ4bWxcYi8saHRtbDovXGJodG1sLyxqc29uOi9cYmpzb25cYi99LHJlc3BvbnNlRmllbGRzOnt4bWw6InJlc3BvbnNlWE1MIix0ZXh0OiJyZXNwb25zZVRleHQiLGpzb246InJlc3BvbnNlSlNPTiJ9LGNvbnZlcnRlcnM6eyIqIHRleHQiOlN0cmluZywidGV4dCBodG1sIjohMCwidGV4dCBqc29uIjpKU09OLnBhcnNlLCJ0ZXh0IHhtbCI6ci5wYXJzZVhNTH0sZmxhdE9wdGlvbnM6e3VybDohMCxjb250ZXh0OiEwfX0sYWpheFNldHVwOmZ1bmN0aW9uKGEsYil7cmV0dXJuIGI/T2IoT2IoYSxyLmFqYXhTZXR0aW5ncyksYik6T2Ioci5hamF4U2V0dGluZ3MsYSl9LGFqYXhQcmVmaWx0ZXI6TWIoSWIpLGFqYXhUcmFuc3BvcnQ6TWIoSmIpLGFqYXg6ZnVuY3Rpb24oYixjKXsib2JqZWN0Ij09dHlwZW9mIGImJihjPWIsYj12b2lkIDApLGM9Y3x8e307dmFyIGUsZixnLGgsaSxqLGssbCxtLG4sbz1yLmFqYXhTZXR1cCh7fSxjKSxwPW8uY29udGV4dHx8byxxPW8uY29udGV4dCYmKHAubm9kZVR5cGV8fHAuanF1ZXJ5KT9yKHApOnIuZXZlbnQscz1yLkRlZmVycmVkKCksdD1yLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSx1PW8uc3RhdHVzQ29kZXx8e30sdj17fSx3PXt9LHg9ImNhbmNlbGVkIix5PXtyZWFkeVN0YXRlOjAsZ2V0UmVzcG9uc2VIZWFkZXI6ZnVuY3Rpb24oYSl7dmFyIGI7aWYoayl7aWYoIWgpe2g9e307d2hpbGUoYj1FYi5leGVjKGcpKWhbYlsxXS50b0xvd2VyQ2FzZSgpXT1iWzJdfWI9aFthLnRvTG93ZXJDYXNlKCldfXJldHVybiBudWxsPT1iP251bGw6Yn0sZ2V0QWxsUmVzcG9uc2VIZWFkZXJzOmZ1bmN0aW9uKCl7cmV0dXJuIGs/ZzpudWxsfSxzZXRSZXF1ZXN0SGVhZGVyOmZ1bmN0aW9uKGEsYil7cmV0dXJuIG51bGw9PWsmJihhPXdbYS50b0xvd2VyQ2FzZSgpXT13W2EudG9Mb3dlckNhc2UoKV18fGEsdlthXT1iKSx0aGlzfSxvdmVycmlkZU1pbWVUeXBlOmZ1bmN0aW9uKGEpe3JldHVybiBudWxsPT1rJiYoby5taW1lVHlwZT1hKSx0aGlzfSxzdGF0dXNDb2RlOmZ1bmN0aW9uKGEpe3ZhciBiO2lmKGEpaWYoayl5LmFsd2F5cyhhW3kuc3RhdHVzXSk7ZWxzZSBmb3IoYiBpbiBhKXVbYl09W3VbYl0sYVtiXV07cmV0dXJuIHRoaXN9LGFib3J0OmZ1bmN0aW9uKGEpe3ZhciBiPWF8fHg7cmV0dXJuIGUmJmUuYWJvcnQoYiksQSgwLGIpLHRoaXN9fTtpZihzLnByb21pc2UoeSksby51cmw9KChifHxvLnVybHx8dGIuaHJlZikrIiIpLnJlcGxhY2UoSGIsdGIucHJvdG9jb2wrIi8vIiksby50eXBlPWMubWV0aG9kfHxjLnR5cGV8fG8ubWV0aG9kfHxvLnR5cGUsby5kYXRhVHlwZXM9KG8uZGF0YVR5cGV8fCIqIikudG9Mb3dlckNhc2UoKS5tYXRjaChMKXx8WyIiXSxudWxsPT1vLmNyb3NzRG9tYWluKXtqPWQuY3JlYXRlRWxlbWVudCgiYSIpO3RyeXtqLmhyZWY9by51cmwsai5ocmVmPWouaHJlZixvLmNyb3NzRG9tYWluPUxiLnByb3RvY29sKyIvLyIrTGIuaG9zdCE9ai5wcm90b2NvbCsiLy8iK2ouaG9zdH1jYXRjaCh6KXtvLmNyb3NzRG9tYWluPSEwfX1pZihvLmRhdGEmJm8ucHJvY2Vzc0RhdGEmJiJzdHJpbmciIT10eXBlb2Ygby5kYXRhJiYoby5kYXRhPXIucGFyYW0oby5kYXRhLG8udHJhZGl0aW9uYWwpKSxOYihJYixvLGMseSksaylyZXR1cm4geTtsPXIuZXZlbnQmJm8uZ2xvYmFsLGwmJjA9PT1yLmFjdGl2ZSsrJiZyLmV2ZW50LnRyaWdnZXIoImFqYXhTdGFydCIpLG8udHlwZT1vLnR5cGUudG9VcHBlckNhc2UoKSxvLmhhc0NvbnRlbnQ9IUdiLnRlc3Qoby50eXBlKSxmPW8udXJsLnJlcGxhY2UoQ2IsIiIpLG8uaGFzQ29udGVudD9vLmRhdGEmJm8ucHJvY2Vzc0RhdGEmJjA9PT0oby5jb250ZW50VHlwZXx8IiIpLmluZGV4T2YoImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIpJiYoby5kYXRhPW8uZGF0YS5yZXBsYWNlKEJiLCIrIikpOihuPW8udXJsLnNsaWNlKGYubGVuZ3RoKSxvLmRhdGEmJihmKz0odmIudGVzdChmKT8iJiI6Ij8iKStvLmRhdGEsZGVsZXRlIG8uZGF0YSksby5jYWNoZT09PSExJiYoZj1mLnJlcGxhY2UoRGIsIiQxIiksbj0odmIudGVzdChmKT8iJiI6Ij8iKSsiXz0iK3ViKysgK24pLG8udXJsPWYrbiksby5pZk1vZGlmaWVkJiYoci5sYXN0TW9kaWZpZWRbZl0mJnkuc2V0UmVxdWVzdEhlYWRlcigiSWYtTW9kaWZpZWQtU2luY2UiLHIubGFzdE1vZGlmaWVkW2ZdKSxyLmV0YWdbZl0mJnkuc2V0UmVxdWVzdEhlYWRlcigiSWYtTm9uZS1NYXRjaCIsci5ldGFnW2ZdKSksKG8uZGF0YSYmby5oYXNDb250ZW50JiZvLmNvbnRlbnRUeXBlIT09ITF8fGMuY29udGVudFR5cGUpJiZ5LnNldFJlcXVlc3RIZWFkZXIoIkNvbnRlbnQtVHlwZSIsby5jb250ZW50VHlwZSkseS5zZXRSZXF1ZXN0SGVhZGVyKCJBY2NlcHQiLG8uZGF0YVR5cGVzWzBdJiZvLmFjY2VwdHNbby5kYXRhVHlwZXNbMF1dP28uYWNjZXB0c1tvLmRhdGFUeXBlc1swXV0rKCIqIiE9PW8uZGF0YVR5cGVzWzBdPyIsICIrS2IrIjsgcT0wLjAxIjoiIik6by5hY2NlcHRzWyIqIl0pO2ZvcihtIGluIG8uaGVhZGVycyl5LnNldFJlcXVlc3RIZWFkZXIobSxvLmhlYWRlcnNbbV0pO2lmKG8uYmVmb3JlU2VuZCYmKG8uYmVmb3JlU2VuZC5jYWxsKHAseSxvKT09PSExfHxrKSlyZXR1cm4geS5hYm9ydCgpO2lmKHg9ImFib3J0Iix0LmFkZChvLmNvbXBsZXRlKSx5LmRvbmUoby5zdWNjZXNzKSx5LmZhaWwoby5lcnJvciksZT1OYihKYixvLGMseSkpe2lmKHkucmVhZHlTdGF0ZT0xLGwmJnEudHJpZ2dlcigiYWpheFNlbmQiLFt5LG9dKSxrKXJldHVybiB5O28uYXN5bmMmJm8udGltZW91dD4wJiYoaT1hLnNldFRpbWVvdXQoZnVuY3Rpb24oKXt5LmFib3J0KCJ0aW1lb3V0Iil9LG8udGltZW91dCkpO3RyeXtrPSExLGUuc2VuZCh2LEEpfWNhdGNoKHope2lmKGspdGhyb3cgejtBKC0xLHopfX1lbHNlIEEoLTEsIk5vIFRyYW5zcG9ydCIpO2Z1bmN0aW9uIEEoYixjLGQsaCl7dmFyIGosbSxuLHYsdyx4PWM7a3x8KGs9ITAsaSYmYS5jbGVhclRpbWVvdXQoaSksZT12b2lkIDAsZz1ofHwiIix5LnJlYWR5U3RhdGU9Yj4wPzQ6MCxqPWI+PTIwMCYmYjwzMDB8fDMwND09PWIsZCYmKHY9UGIobyx5LGQpKSx2PVFiKG8sdix5LGopLGo/KG8uaWZNb2RpZmllZCYmKHc9eS5nZXRSZXNwb25zZUhlYWRlcigiTGFzdC1Nb2RpZmllZCIpLHcmJihyLmxhc3RNb2RpZmllZFtmXT13KSx3PXkuZ2V0UmVzcG9uc2VIZWFkZXIoImV0YWciKSx3JiYoci5ldGFnW2ZdPXcpKSwyMDQ9PT1ifHwiSEVBRCI9PT1vLnR5cGU/eD0ibm9jb250ZW50IjozMDQ9PT1iP3g9Im5vdG1vZGlmaWVkIjooeD12LnN0YXRlLG09di5kYXRhLG49di5lcnJvcixqPSFuKSk6KG49eCwhYiYmeHx8KHg9ImVycm9yIixiPDAmJihiPTApKSkseS5zdGF0dXM9Yix5LnN0YXR1c1RleHQ9KGN8fHgpKyIiLGo/cy5yZXNvbHZlV2l0aChwLFttLHgseV0pOnMucmVqZWN0V2l0aChwLFt5LHgsbl0pLHkuc3RhdHVzQ29kZSh1KSx1PXZvaWQgMCxsJiZxLnRyaWdnZXIoaj8iYWpheFN1Y2Nlc3MiOiJhamF4RXJyb3IiLFt5LG8saj9tOm5dKSx0LmZpcmVXaXRoKHAsW3kseF0pLGwmJihxLnRyaWdnZXIoImFqYXhDb21wbGV0ZSIsW3ksb10pLC0tci5hY3RpdmV8fHIuZXZlbnQudHJpZ2dlcigiYWpheFN0b3AiKSkpfXJldHVybiB5fSxnZXRKU09OOmZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gci5nZXQoYSxiLGMsImpzb24iKX0sZ2V0U2NyaXB0OmZ1bmN0aW9uKGEsYil7cmV0dXJuIHIuZ2V0KGEsdm9pZCAwLGIsInNjcmlwdCIpfX0pLHIuZWFjaChbImdldCIsInBvc3QiXSxmdW5jdGlvbihhLGIpe3JbYl09ZnVuY3Rpb24oYSxjLGQsZSl7cmV0dXJuIHIuaXNGdW5jdGlvbihjKSYmKGU9ZXx8ZCxkPWMsYz12b2lkIDApLHIuYWpheChyLmV4dGVuZCh7dXJsOmEsdHlwZTpiLGRhdGFUeXBlOmUsZGF0YTpjLHN1Y2Nlc3M6ZH0sci5pc1BsYWluT2JqZWN0KGEpJiZhKSl9fSksci5fZXZhbFVybD1mdW5jdGlvbihhKXtyZXR1cm4gci5hamF4KHt1cmw6YSx0eXBlOiJHRVQiLGRhdGFUeXBlOiJzY3JpcHQiLGNhY2hlOiEwLGFzeW5jOiExLGdsb2JhbDohMSwidGhyb3dzIjohMH0pfSxyLmZuLmV4dGVuZCh7d3JhcEFsbDpmdW5jdGlvbihhKXt2YXIgYjtyZXR1cm4gdGhpc1swXSYmKHIuaXNGdW5jdGlvbihhKSYmKGE9YS5jYWxsKHRoaXNbMF0pKSxiPXIoYSx0aGlzWzBdLm93bmVyRG9jdW1lbnQpLmVxKDApLmNsb25lKCEwKSx0aGlzWzBdLnBhcmVudE5vZGUmJmIuaW5zZXJ0QmVmb3JlKHRoaXNbMF0pLGIubWFwKGZ1bmN0aW9uKCl7dmFyIGE9dGhpczt3aGlsZShhLmZpcnN0RWxlbWVudENoaWxkKWE9YS5maXJzdEVsZW1lbnRDaGlsZDtyZXR1cm4gYX0pLmFwcGVuZCh0aGlzKSksdGhpc30sd3JhcElubmVyOmZ1bmN0aW9uKGEpe3JldHVybiByLmlzRnVuY3Rpb24oYSk/dGhpcy5lYWNoKGZ1bmN0aW9uKGIpe3IodGhpcykud3JhcElubmVyKGEuY2FsbCh0aGlzLGIpKX0pOnRoaXMuZWFjaChmdW5jdGlvbigpe3ZhciBiPXIodGhpcyksYz1iLmNvbnRlbnRzKCk7Yy5sZW5ndGg/Yy53cmFwQWxsKGEpOmIuYXBwZW5kKGEpfSl9LHdyYXA6ZnVuY3Rpb24oYSl7dmFyIGI9ci5pc0Z1bmN0aW9uKGEpO3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oYyl7cih0aGlzKS53cmFwQWxsKGI/YS5jYWxsKHRoaXMsYyk6YSl9KX0sdW53cmFwOmZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLnBhcmVudChhKS5ub3QoImJvZHkiKS5lYWNoKGZ1bmN0aW9uKCl7cih0aGlzKS5yZXBsYWNlV2l0aCh0aGlzLmNoaWxkTm9kZXMpfSksdGhpc319KSxyLmV4cHIucHNldWRvcy5oaWRkZW49ZnVuY3Rpb24oYSl7cmV0dXJuIXIuZXhwci5wc2V1ZG9zLnZpc2libGUoYSl9LHIuZXhwci5wc2V1ZG9zLnZpc2libGU9ZnVuY3Rpb24oYSl7cmV0dXJuISEoYS5vZmZzZXRXaWR0aHx8YS5vZmZzZXRIZWlnaHR8fGEuZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGgpfSxyLmFqYXhTZXR0aW5ncy54aHI9ZnVuY3Rpb24oKXt0cnl7cmV0dXJuIG5ldyBhLlhNTEh0dHBSZXF1ZXN0fWNhdGNoKGIpe319O3ZhciBSYj17MDoyMDAsMTIyMzoyMDR9LFNiPXIuYWpheFNldHRpbmdzLnhocigpO28uY29ycz0hIVNiJiYid2l0aENyZWRlbnRpYWxzImluIFNiLG8uYWpheD1TYj0hIVNiLHIuYWpheFRyYW5zcG9ydChmdW5jdGlvbihiKXt2YXIgYyxkO2lmKG8uY29yc3x8U2ImJiFiLmNyb3NzRG9tYWluKXJldHVybntzZW5kOmZ1bmN0aW9uKGUsZil7dmFyIGcsaD1iLnhocigpO2lmKGgub3BlbihiLnR5cGUsYi51cmwsYi5hc3luYyxiLnVzZXJuYW1lLGIucGFzc3dvcmQpLGIueGhyRmllbGRzKWZvcihnIGluIGIueGhyRmllbGRzKWhbZ109Yi54aHJGaWVsZHNbZ107Yi5taW1lVHlwZSYmaC5vdmVycmlkZU1pbWVUeXBlJiZoLm92ZXJyaWRlTWltZVR5cGUoYi5taW1lVHlwZSksYi5jcm9zc0RvbWFpbnx8ZVsiWC1SZXF1ZXN0ZWQtV2l0aCJdfHwoZVsiWC1SZXF1ZXN0ZWQtV2l0aCJdPSJYTUxIdHRwUmVxdWVzdCIpO2ZvcihnIGluIGUpaC5zZXRSZXF1ZXN0SGVhZGVyKGcsZVtnXSk7Yz1mdW5jdGlvbihhKXtyZXR1cm4gZnVuY3Rpb24oKXtjJiYoYz1kPWgub25sb2FkPWgub25lcnJvcj1oLm9uYWJvcnQ9aC5vbnJlYWR5c3RhdGVjaGFuZ2U9bnVsbCwiYWJvcnQiPT09YT9oLmFib3J0KCk6ImVycm9yIj09PWE/Im51bWJlciIhPXR5cGVvZiBoLnN0YXR1cz9mKDAsImVycm9yIik6ZihoLnN0YXR1cyxoLnN0YXR1c1RleHQpOmYoUmJbaC5zdGF0dXNdfHxoLnN0YXR1cyxoLnN0YXR1c1RleHQsInRleHQiIT09KGgucmVzcG9uc2VUeXBlfHwidGV4dCIpfHwic3RyaW5nIiE9dHlwZW9mIGgucmVzcG9uc2VUZXh0P3tiaW5hcnk6aC5yZXNwb25zZX06e3RleHQ6aC5yZXNwb25zZVRleHR9LGguZ2V0QWxsUmVzcG9uc2VIZWFkZXJzKCkpKX19LGgub25sb2FkPWMoKSxkPWgub25lcnJvcj1jKCJlcnJvciIpLHZvaWQgMCE9PWgub25hYm9ydD9oLm9uYWJvcnQ9ZDpoLm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpezQ9PT1oLnJlYWR5U3RhdGUmJmEuc2V0VGltZW91dChmdW5jdGlvbigpe2MmJmQoKX0pfSxjPWMoImFib3J0Iik7dHJ5e2guc2VuZChiLmhhc0NvbnRlbnQmJmIuZGF0YXx8bnVsbCl9Y2F0Y2goaSl7aWYoYyl0aHJvdyBpfX0sYWJvcnQ6ZnVuY3Rpb24oKXtjJiZjKCl9fX0pLHIuYWpheFByZWZpbHRlcihmdW5jdGlvbihhKXthLmNyb3NzRG9tYWluJiYoYS5jb250ZW50cy5zY3JpcHQ9ITEpfSksci5hamF4U2V0dXAoe2FjY2VwdHM6e3NjcmlwdDoidGV4dC9qYXZhc2NyaXB0LCBhcHBsaWNhdGlvbi9qYXZhc2NyaXB0LCBhcHBsaWNhdGlvbi9lY21hc2NyaXB0LCBhcHBsaWNhdGlvbi94LWVjbWFzY3JpcHQifSxjb250ZW50czp7c2NyaXB0Oi9cYig/OmphdmF8ZWNtYSlzY3JpcHRcYi99LGNvbnZlcnRlcnM6eyJ0ZXh0IHNjcmlwdCI6ZnVuY3Rpb24oYSl7cmV0dXJuIHIuZ2xvYmFsRXZhbChhKSxhfX19KSxyLmFqYXhQcmVmaWx0ZXIoInNjcmlwdCIsZnVuY3Rpb24oYSl7dm9pZCAwPT09YS5jYWNoZSYmKGEuY2FjaGU9ITEpLGEuY3Jvc3NEb21haW4mJihhLnR5cGU9IkdFVCIpfSksci5hamF4VHJhbnNwb3J0KCJzY3JpcHQiLGZ1bmN0aW9uKGEpe2lmKGEuY3Jvc3NEb21haW4pe3ZhciBiLGM7cmV0dXJue3NlbmQ6ZnVuY3Rpb24oZSxmKXtiPXIoIjxzY3JpcHQ+IikucHJvcCh7Y2hhcnNldDphLnNjcmlwdENoYXJzZXQsc3JjOmEudXJsfSkub24oImxvYWQgZXJyb3IiLGM9ZnVuY3Rpb24oYSl7Yi5yZW1vdmUoKSxjPW51bGwsYSYmZigiZXJyb3IiPT09YS50eXBlPzQwNDoyMDAsYS50eXBlKX0pLGQuaGVhZC5hcHBlbmRDaGlsZChiWzBdKX0sYWJvcnQ6ZnVuY3Rpb24oKXtjJiZjKCl9fX19KTt2YXIgVGI9W10sVWI9Lyg9KVw/KD89JnwkKXxcP1w/LztyLmFqYXhTZXR1cCh7anNvbnA6ImNhbGxiYWNrIixqc29ucENhbGxiYWNrOmZ1bmN0aW9uKCl7dmFyIGE9VGIucG9wKCl8fHIuZXhwYW5kbysiXyIrdWIrKztyZXR1cm4gdGhpc1thXT0hMCxhfX0pLHIuYWpheFByZWZpbHRlcigianNvbiBqc29ucCIsZnVuY3Rpb24oYixjLGQpe3ZhciBlLGYsZyxoPWIuanNvbnAhPT0hMSYmKFViLnRlc3QoYi51cmwpPyJ1cmwiOiJzdHJpbmciPT10eXBlb2YgYi5kYXRhJiYwPT09KGIuY29udGVudFR5cGV8fCIiKS5pbmRleE9mKCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiKSYmVWIudGVzdChiLmRhdGEpJiYiZGF0YSIpO2lmKGh8fCJqc29ucCI9PT1iLmRhdGFUeXBlc1swXSlyZXR1cm4gZT1iLmpzb25wQ2FsbGJhY2s9ci5pc0Z1bmN0aW9uKGIuanNvbnBDYWxsYmFjayk/Yi5qc29ucENhbGxiYWNrKCk6Yi5qc29ucENhbGxiYWNrLGg/YltoXT1iW2hdLnJlcGxhY2UoVWIsIiQxIitlKTpiLmpzb25wIT09ITEmJihiLnVybCs9KHZiLnRlc3QoYi51cmwpPyImIjoiPyIpK2IuanNvbnArIj0iK2UpLGIuY29udmVydGVyc1sic2NyaXB0IGpzb24iXT1mdW5jdGlvbigpe3JldHVybiBnfHxyLmVycm9yKGUrIiB3YXMgbm90IGNhbGxlZCIpLGdbMF19LGIuZGF0YVR5cGVzWzBdPSJqc29uIixmPWFbZV0sYVtlXT1mdW5jdGlvbigpe2c9YXJndW1lbnRzfSxkLmFsd2F5cyhmdW5jdGlvbigpe3ZvaWQgMD09PWY/cihhKS5yZW1vdmVQcm9wKGUpOmFbZV09ZixiW2VdJiYoYi5qc29ucENhbGxiYWNrPWMuanNvbnBDYWxsYmFjayxUYi5wdXNoKGUpKSxnJiZyLmlzRnVuY3Rpb24oZikmJmYoZ1swXSksZz1mPXZvaWQgMH0pLCJzY3JpcHQifSksby5jcmVhdGVIVE1MRG9jdW1lbnQ9ZnVuY3Rpb24oKXt2YXIgYT1kLmltcGxlbWVudGF0aW9uLmNyZWF0ZUhUTUxEb2N1bWVudCgiIikuYm9keTtyZXR1cm4gYS5pbm5lckhUTUw9Ijxmb3JtPjwvZm9ybT48Zm9ybT48L2Zvcm0+IiwyPT09YS5jaGlsZE5vZGVzLmxlbmd0aH0oKSxyLnBhcnNlSFRNTD1mdW5jdGlvbihhLGIsYyl7aWYoInN0cmluZyIhPXR5cGVvZiBhKXJldHVybltdOyJib29sZWFuIj09dHlwZW9mIGImJihjPWIsYj0hMSk7dmFyIGUsZixnO3JldHVybiBifHwoby5jcmVhdGVIVE1MRG9jdW1lbnQ/KGI9ZC5pbXBsZW1lbnRhdGlvbi5jcmVhdGVIVE1MRG9jdW1lbnQoIiIpLGU9Yi5jcmVhdGVFbGVtZW50KCJiYXNlIiksZS5ocmVmPWQubG9jYXRpb24uaHJlZixiLmhlYWQuYXBwZW5kQ2hpbGQoZSkpOmI9ZCksZj1DLmV4ZWMoYSksZz0hYyYmW10sZj9bYi5jcmVhdGVFbGVtZW50KGZbMV0pXTooZj1xYShbYV0sYixnKSxnJiZnLmxlbmd0aCYmcihnKS5yZW1vdmUoKSxyLm1lcmdlKFtdLGYuY2hpbGROb2RlcykpfSxyLmZuLmxvYWQ9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkLGUsZixnPXRoaXMsaD1hLmluZGV4T2YoIiAiKTtyZXR1cm4gaD4tMSYmKGQ9cGIoYS5zbGljZShoKSksYT1hLnNsaWNlKDAsaCkpLHIuaXNGdW5jdGlvbihiKT8oYz1iLGI9dm9pZCAwKTpiJiYib2JqZWN0Ij09dHlwZW9mIGImJihlPSJQT1NUIiksZy5sZW5ndGg+MCYmci5hamF4KHt1cmw6YSx0eXBlOmV8fCJHRVQiLGRhdGFUeXBlOiJodG1sIixkYXRhOmJ9KS5kb25lKGZ1bmN0aW9uKGEpe2Y9YXJndW1lbnRzLGcuaHRtbChkP3IoIjxkaXY+IikuYXBwZW5kKHIucGFyc2VIVE1MKGEpKS5maW5kKGQpOmEpfSkuYWx3YXlzKGMmJmZ1bmN0aW9uKGEsYil7Zy5lYWNoKGZ1bmN0aW9uKCl7Yy5hcHBseSh0aGlzLGZ8fFthLnJlc3BvbnNlVGV4dCxiLGFdKX0pfSksdGhpc30sci5lYWNoKFsiYWpheFN0YXJ0IiwiYWpheFN0b3AiLCJhamF4Q29tcGxldGUiLCJhamF4RXJyb3IiLCJhamF4U3VjY2VzcyIsImFqYXhTZW5kIl0sZnVuY3Rpb24oYSxiKXtyLmZuW2JdPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLm9uKGIsYSl9fSksci5leHByLnBzZXVkb3MuYW5pbWF0ZWQ9ZnVuY3Rpb24oYSl7cmV0dXJuIHIuZ3JlcChyLnRpbWVycyxmdW5jdGlvbihiKXtyZXR1cm4gYT09PWIuZWxlbX0pLmxlbmd0aH0sci5vZmZzZXQ9e3NldE9mZnNldDpmdW5jdGlvbihhLGIsYyl7dmFyIGQsZSxmLGcsaCxpLGosaz1yLmNzcyhhLCJwb3NpdGlvbiIpLGw9cihhKSxtPXt9OyJzdGF0aWMiPT09ayYmKGEuc3R5bGUucG9zaXRpb249InJlbGF0aXZlIiksaD1sLm9mZnNldCgpLGY9ci5jc3MoYSwidG9wIiksaT1yLmNzcyhhLCJsZWZ0Iiksaj0oImFic29sdXRlIj09PWt8fCJmaXhlZCI9PT1rKSYmKGYraSkuaW5kZXhPZigiYXV0byIpPi0xLGo/KGQ9bC5wb3NpdGlvbigpLGc9ZC50b3AsZT1kLmxlZnQpOihnPXBhcnNlRmxvYXQoZil8fDAsZT1wYXJzZUZsb2F0KGkpfHwwKSxyLmlzRnVuY3Rpb24oYikmJihiPWIuY2FsbChhLGMsci5leHRlbmQoe30saCkpKSxudWxsIT1iLnRvcCYmKG0udG9wPWIudG9wLWgudG9wK2cpLG51bGwhPWIubGVmdCYmKG0ubGVmdD1iLmxlZnQtaC5sZWZ0K2UpLCJ1c2luZyJpbiBiP2IudXNpbmcuY2FsbChhLG0pOmwuY3NzKG0pfX0sci5mbi5leHRlbmQoe29mZnNldDpmdW5jdGlvbihhKXtpZihhcmd1bWVudHMubGVuZ3RoKXJldHVybiB2b2lkIDA9PT1hP3RoaXM6dGhpcy5lYWNoKGZ1bmN0aW9uKGIpe3Iub2Zmc2V0LnNldE9mZnNldCh0aGlzLGEsYil9KTt2YXIgYixjLGQsZSxmPXRoaXNbMF07aWYoZilyZXR1cm4gZi5nZXRDbGllbnRSZWN0cygpLmxlbmd0aD8oZD1mLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLGI9Zi5vd25lckRvY3VtZW50LGM9Yi5kb2N1bWVudEVsZW1lbnQsZT1iLmRlZmF1bHRWaWV3LHt0b3A6ZC50b3ArZS5wYWdlWU9mZnNldC1jLmNsaWVudFRvcCxsZWZ0OmQubGVmdCtlLnBhZ2VYT2Zmc2V0LWMuY2xpZW50TGVmdH0pOnt0b3A6MCxsZWZ0OjB9fSxwb3NpdGlvbjpmdW5jdGlvbigpe2lmKHRoaXNbMF0pe3ZhciBhLGIsYz10aGlzWzBdLGQ9e3RvcDowLGxlZnQ6MH07cmV0dXJuImZpeGVkIj09PXIuY3NzKGMsInBvc2l0aW9uIik/Yj1jLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpOihhPXRoaXMub2Zmc2V0UGFyZW50KCksYj10aGlzLm9mZnNldCgpLEIoYVswXSwiaHRtbCIpfHwoZD1hLm9mZnNldCgpKSxkPXt0b3A6ZC50b3Arci5jc3MoYVswXSwiYm9yZGVyVG9wV2lkdGgiLCEwKSxsZWZ0OmQubGVmdCtyLmNzcyhhWzBdLCJib3JkZXJMZWZ0V2lkdGgiLCEwKX0pLHt0b3A6Yi50b3AtZC50b3Atci5jc3MoYywibWFyZ2luVG9wIiwhMCksbGVmdDpiLmxlZnQtZC5sZWZ0LXIuY3NzKGMsIm1hcmdpbkxlZnQiLCEwKX19fSxvZmZzZXRQYXJlbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tYXAoZnVuY3Rpb24oKXt2YXIgYT10aGlzLm9mZnNldFBhcmVudDt3aGlsZShhJiYic3RhdGljIj09PXIuY3NzKGEsInBvc2l0aW9uIikpYT1hLm9mZnNldFBhcmVudDtyZXR1cm4gYXx8cmF9KX19KSxyLmVhY2goe3Njcm9sbExlZnQ6InBhZ2VYT2Zmc2V0IixzY3JvbGxUb3A6InBhZ2VZT2Zmc2V0In0sZnVuY3Rpb24oYSxiKXt2YXIgYz0icGFnZVlPZmZzZXQiPT09YjtyLmZuW2FdPWZ1bmN0aW9uKGQpe3JldHVybiBUKHRoaXMsZnVuY3Rpb24oYSxkLGUpe3ZhciBmO3JldHVybiByLmlzV2luZG93KGEpP2Y9YTo5PT09YS5ub2RlVHlwZSYmKGY9YS5kZWZhdWx0Vmlldyksdm9pZCAwPT09ZT9mP2ZbYl06YVtkXTp2b2lkKGY/Zi5zY3JvbGxUbyhjP2YucGFnZVhPZmZzZXQ6ZSxjP2U6Zi5wYWdlWU9mZnNldCk6YVtkXT1lKX0sYSxkLGFyZ3VtZW50cy5sZW5ndGgpfX0pLHIuZWFjaChbInRvcCIsImxlZnQiXSxmdW5jdGlvbihhLGIpe3IuY3NzSG9va3NbYl09UGEoby5waXhlbFBvc2l0aW9uLGZ1bmN0aW9uKGEsYyl7aWYoYylyZXR1cm4gYz1PYShhLGIpLE1hLnRlc3QoYyk/cihhKS5wb3NpdGlvbigpW2JdKyJweCI6Y30pfSksci5lYWNoKHtIZWlnaHQ6ImhlaWdodCIsV2lkdGg6IndpZHRoIn0sZnVuY3Rpb24oYSxiKXtyLmVhY2goe3BhZGRpbmc6ImlubmVyIithLGNvbnRlbnQ6YiwiIjoib3V0ZXIiK2F9LGZ1bmN0aW9uKGMsZCl7ci5mbltkXT1mdW5jdGlvbihlLGYpe3ZhciBnPWFyZ3VtZW50cy5sZW5ndGgmJihjfHwiYm9vbGVhbiIhPXR5cGVvZiBlKSxoPWN8fChlPT09ITB8fGY9PT0hMD8ibWFyZ2luIjoiYm9yZGVyIik7cmV0dXJuIFQodGhpcyxmdW5jdGlvbihiLGMsZSl7dmFyIGY7cmV0dXJuIHIuaXNXaW5kb3coYik/MD09PWQuaW5kZXhPZigib3V0ZXIiKT9iWyJpbm5lciIrYV06Yi5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnRbImNsaWVudCIrYV06OT09PWIubm9kZVR5cGU/KGY9Yi5kb2N1bWVudEVsZW1lbnQsTWF0aC5tYXgoYi5ib2R5WyJzY3JvbGwiK2FdLGZbInNjcm9sbCIrYV0sYi5ib2R5WyJvZmZzZXQiK2FdLGZbIm9mZnNldCIrYV0sZlsiY2xpZW50IithXSkpOnZvaWQgMD09PWU/ci5jc3MoYixjLGgpOnIuc3R5bGUoYixjLGUsaCl9LGIsZz9lOnZvaWQgMCxnKX19KX0pLHIuZm4uZXh0ZW5kKHtiaW5kOmZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gdGhpcy5vbihhLG51bGwsYixjKX0sdW5iaW5kOmZ1bmN0aW9uKGEsYil7cmV0dXJuIHRoaXMub2ZmKGEsbnVsbCxiKX0sZGVsZWdhdGU6ZnVuY3Rpb24oYSxiLGMsZCl7cmV0dXJuIHRoaXMub24oYixhLGMsZCl9LHVuZGVsZWdhdGU6ZnVuY3Rpb24oYSxiLGMpe3JldHVybiAxPT09YXJndW1lbnRzLmxlbmd0aD90aGlzLm9mZihhLCIqKiIpOnRoaXMub2ZmKGIsYXx8IioqIixjKX19KSxyLmhvbGRSZWFkeT1mdW5jdGlvbihhKXthP3IucmVhZHlXYWl0Kys6ci5yZWFkeSghMCl9LHIuaXNBcnJheT1BcnJheS5pc0FycmF5LHIucGFyc2VKU09OPUpTT04ucGFyc2Usci5ub2RlTmFtZT1CLCJmdW5jdGlvbiI9PXR5cGVvZiBkZWZpbmUmJmRlZmluZS5hbWQmJmRlZmluZSgianF1ZXJ5IixbXSxmdW5jdGlvbigpe3JldHVybiByfSk7dmFyIFZiPWEualF1ZXJ5LFdiPWEuJDtyZXR1cm4gci5ub0NvbmZsaWN0PWZ1bmN0aW9uKGIpe3JldHVybiBhLiQ9PT1yJiYoYS4kPVdiKSxiJiZhLmpRdWVyeT09PXImJihhLmpRdWVyeT1WYikscn0sYnx8KGEualF1ZXJ5PWEuJD1yKSxyfSk7Cg=="}},"time_used":187,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":187,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/images/western.png","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.104Z","timestamp":1785126256104,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/western.png HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/png\r\ncontent-length: 6431\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-191f\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":6431,"size_decoded":6680,"mime_type":"image/png","magic":"PNG image data, 319 x 125, 8-bit/color RGBA, non-interlaced","md5":"35ed2991f70f0a49d058aa3dac36c7a8","sha1":"2998a5f40233a291c5c740d286667a7fd1721c37","sha256":"422c8761bb2f512aebe5893e5224396f1ae84d88d34b93e9305bdd24bed3045d","sha512":"8af0cdabdbfef36ad107307786f05166fa3c57b90149495f1f7341e8966a081a661ea299a4cb3b6377cadd3758c7c37bcc5e2c9cfcf91419b5fbb3fcc18f8765","ssdeep":"96:9BSDZ/I09Da01l+gmkyTt6Hk8nTK1ldWRtmQg44c0X+L3a76wfGPpvt:LSDS0tKg9E05TKzYGQn+o36ivt","tlshash":"b4d16d6645a0425dfc46299347891e57cf1e307c346a3bfcece125cb2091b5a6b354e7","first_seen":"2026-07-27T03:36:45.120584Z","last_seen":"2026-07-27T04:25:12.794334Z","times_seen":2,"resource_available":false,"data":"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"}},"time_used":390,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":299,"receive":91,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/images/icon/vip-black-33.png","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.713Z","timestamp":1785126256713,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/icon/vip-black-33.png HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/png\r\ncontent-length: 3222\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-c96\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":3222,"size_decoded":3470,"mime_type":"image/png","magic":"PNG image data, 120 x 120, 8-bit/color RGBA, non-interlaced","md5":"8c6a72ad3174748c144233755b978aaa","sha1":"5ed86b79f29ee80d6b7d01bf5a92b6776c35c559","sha256":"fe620f94f67efea1c6618f7680c706077c63dfeca4717e847e97ec00ce9c73fa","sha512":"0a91071d485aab2fc8706eb99fbfd5a7a834c1e58e4943fc073cfd4822949e6b6a98eabea0ed29bd96d6ad441e33cc19e9b8130a71f57a4e076082ba2c34f5d0","ssdeep":"","tlshash":"1a611a0d8c01e852510afa19eced22b317235f895e81f19a7deded0b6c740f78d0a5a7","first_seen":"2023-05-01T20:32:00Z","last_seen":"2026-07-27T04:25:12.79541Z","times_seen":186,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAHgAAAB4CAYAAAA5ZDbSAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFvGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDggNzkuMTY0MDM2LCAyMDE5LzA4LzEzLTAxOjA2OjU3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjEuMCAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDIwLTAyLTE2VDExOjI2OjUyKzAxOjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyMC0wMi0xN1QwODozNSswMTowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyMC0wMi0xN1QwODozNSswMTowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpiN2M3NDRiYi02YjRiLWVmNGItYjJl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"}},"time_used":98,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":98,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":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.11","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.725Z","timestamp":1785126256725,"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://besttrader.live/\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 04:24:20 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: k2N8YZ4tSrWElf6RE/hnzSXCd03relsfkhXMxnilAvko4OdU8BTNz8Q5XvonNWWIQPhEPGk\r\nx-77-nzt-ray: e2f75420f8117ce874dd666ab6e44b01\r\nx-77-cache: HIT\r\nx-77-age: 33\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-27T07:05:43.369921Z","times_seen":6394,"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":3301,"timings":{"blocked":0,"dns":3,"connect":9,"send":0,"wait":9,"receive":0,"ssl":3279},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/js/jquery-ui.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.767Z","timestamp":1785126256767,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /js/jquery-ui.js HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: W/\"65211e70-7f20a\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":520714,"size_decoded":113478,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (1002)","md5":"97754b3466ac135c3e8d6b197fa9988f","sha1":"8195a501259fae40f5be4bf8a80ddc889d4414c9","sha256":"fe80885ebb5b9776ef48d0ceee8857a0f707104e7ec9e948567d62d61df35629","sha512":"f829ae92b3a145217247af9c22d02236829cb0a9b32dd769753065faf325b1dec5ed4339d8c9039c18381a30703322d2dcbb61ccf3b94fea16b9e3d464460619","ssdeep":"12288:3DdHCcmMj/W/CCk/QRzbrVDDdRv6FtvemHFgymO:3DdHCcmMj/W/CCkIVDDdRiFD","tlshash":"b4b4a6c9f39c266a867a32595c2e42cdb23c8075d600587fbc5d59dc29a883c43bbf79","first_seen":"2023-03-09T10:05:20Z","last_seen":"2026-07-27T06:53:32.309821Z","times_seen":201,"resource_available":true,"data":"LyohIGpRdWVyeSBVSSAtIHYxLjEyLjEgLSAyMDE5LTA2LTAyCiogaHR0cDovL2pxdWVyeXVpLmNvbQoqIEluY2x1ZGVzOiB3aWRnZXQuanMsIHBvc2l0aW9uLmpzLCBkYXRhLmpzLCBkaXNhYmxlLXNlbGVjdGlvbi5qcywgZm9jdXNhYmxlLmpzLCBmb3JtLXJlc2V0LW1peGluLmpzLCBqcXVlcnktMS03LmpzLCBrZXljb2RlLmpzLCBsYWJlbHMuanMsIHNjcm9sbC1wYXJlbnQuanMsIHRhYmJhYmxlLmpzLCB1bmlxdWUtaWQuanMsIHdpZGdldHMvZHJhZ2dhYmxlLmpzLCB3aWRnZXRzL2Ryb3BwYWJsZS5qcywgd2lkZ2V0cy9yZXNpemFibGUuanMsIHdpZGdldHMvc2VsZWN0YWJsZS5qcywgd2lkZ2V0cy9zb3J0YWJsZS5qcywgd2lkZ2V0cy9hY2NvcmRpb24uanMsIHdpZGdldHMvYXV0b2NvbXBsZXRlLmpzLCB3aWRnZXRzL2J1dHRvbi5qcywgd2lkZ2V0cy9jaGVja2JveHJhZGlvLmpzLCB3aWRnZXRzL2NvbnRyb2xncm91cC5qcywgd2lkZ2V0cy9kYXRlcGlja2VyLmpzLCB3aWRnZXRzL2RpYWxvZy5qcywgd2lkZ2V0cy9tZW51LmpzLCB3aWRnZXRzL21vdXNlLmpzLCB3aWRnZXRzL3Byb2dyZXNzYmFyLmpzLCB3aWRnZXRzL3NlbGVjdG1lbnUuanMsIHdpZGdldHMvc2xpZGVyLmpzLCB3aWRnZXRzL3NwaW5uZXIuanMsIHdpZGdldHMvdGFicy5qcywgd2lkZ2V0cy90b29sdGlwLmpzLCBlZmZlY3QuanMsIGVmZmVjdHMvZWZmZWN0LWJsaW5kLmpzLCBlZmZlY3RzL2VmZmVjdC1ib3VuY2UuanMsIGVmZmVjdHMvZWZmZWN0LWNsaXAuanMsIGVmZmVjdHMvZWZmZWN0LWRyb3AuanMsIGVmZmVjdHMvZWZmZWN0LWV4cGxvZGUuanMsIGVmZmVjdHMvZWZmZWN0LWZhZGUuanMsIGVmZmVjdHMvZWZmZWN0LWZvbGQuanMsIGVmZmVjdHMvZWZmZWN0LWhpZ2hsaWdodC5qcywgZWZmZWN0cy9lZmZlY3QtcHVmZi5qcywgZWZmZWN0cy9lZmZlY3QtcHVsc2F0ZS5qcywgZWZmZWN0cy9lZmZlY3Qtc2NhbGUuanMsIGVmZmVjdHMvZWZmZWN0LXNoYWtlLmpzLCBlZmZlY3RzL2VmZmVjdC1zaXplLmpzLCBlZmZlY3RzL2VmZmVjdC1zbGlkZS5qcywgZWZmZWN0cy9lZmZlY3QtdHJhbnNmZXIuanMKKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yczsgTGljZW5zZWQgTUlUICovCgooZnVuY3Rpb24oIGZhY3RvcnkgKSB7CglpZiAoIHR5cGVvZiBkZWZpbmUgPT09ICJmdW5jdGlvbiIgJiYgZGVmaW5lLmFtZCApIHsKCgkJLy8gQU1ELiBSZWdpc3RlciBhcyBhbiBhbm9ueW1vdXMgbW9kdWxlLgoJCWRlZmluZShbICJqcXVlcnkiIF0sIGZhY3RvcnkgKTsKCX0gZWxzZSB7CgoJCS8vIEJyb3dzZXIgZ2xvYmFscwoJCWZhY3RvcnkoIGpRdWVyeSApOwoJfQp9KGZ1bmN0aW9uKCAkICkgewoKJC51aSA9ICQudWkgfHwge307Cgp2YXIgdmVyc2lvbiA9ICQudWkudmVyc2lvbiA9ICIxLjEyLjEiOwoKCi8qIQogKiBqUXVlcnkgVUkgV2lkZ2V0IDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogV2lkZ2V0Ci8vPj5ncm91cDogQ29yZQovLz4+ZGVzY3JpcHRpb246IFByb3ZpZGVzIGEgZmFjdG9yeSBmb3IgY3JlYXRpbmcgc3RhdGVmdWwgd2lkZ2V0cyB3aXRoIGEgY29tbW9uIEFQSS4KLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2pRdWVyeS53aWRnZXQvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS93aWRnZXQvCgoKCnZhciB3aWRnZXRVdWlkID0gMDsKdmFyIHdpZGdldFNsaWNlID0gQXJyYXkucHJvdG90eXBlLnNsaWNlOwoKJC5jbGVhbkRhdGEgPSAoIGZ1bmN0aW9uKCBvcmlnICkgewoJcmV0dXJuIGZ1bmN0aW9uKCBlbGVtcyApIHsKCQl2YXIgZXZlbnRzLCBlbGVtLCBpOwoJCWZvciAoIGkgPSAwOyAoIGVsZW0gPSBlbGVtc1sgaSBdICkgIT0gbnVsbDsgaSsrICkgewoJCQl0cnkgewoKCQkJCS8vIE9ubHkgdHJpZ2dlciByZW1vdmUgd2hlbiBuZWNlc3NhcnkgdG8gc2F2ZSB0aW1lCgkJCQlldmVudHMgPSAkLl9kYXRhKCBlbGVtLCAiZXZlbnRzIiApOwoJCQkJaWYgKCBldmVudHMgJiYgZXZlbnRzLnJlbW92ZSApIHsKCQkJCQkkKCBlbGVtICkudHJpZ2dlckhhbmRsZXIoICJyZW1vdmUiICk7CgkJCQl9CgoJCQkvLyBIdHRwOi8vYnVncy5qcXVlcnkuY29tL3RpY2tldC84MjM1CgkJCX0gY2F0Y2ggKCBlICkge30KCQl9CgkJb3JpZyggZWxlbXMgKTsKCX07Cn0gKSggJC5jbGVhbkRhdGEgKTsKCiQud2lkZ2V0ID0gZnVuY3Rpb24oIG5hbWUsIGJhc2UsIHByb3RvdHlwZSApIHsKCXZhciBleGlzdGluZ0NvbnN0cnVjdG9yLCBjb25zdHJ1Y3RvciwgYmFzZVByb3RvdHlwZTsKCgkvLyBQcm94aWVkUHJvdG90eXBlIGFsbG93cyB0aGUgcHJvdmlkZWQgcHJvdG90eXBlIHRvIHJlbWFpbiB1bm1vZGlmaWVkCgkvLyBzbyB0aGF0IGl0IGNhbiBiZSB1c2VkIGFzIGEgbWl4aW4gZm9yIG11bHRpcGxlIHdpZGdldHMgKCM4ODc2KQoJdmFyIHByb3hpZWRQcm90b3R5cGUgPSB7fTsKCgl2YXIgbmFtZXNwYWNlID0gbmFtZS5zcGxpdCggIi4iIClbIDAgXTsKCW5hbWUgPSBuYW1lLnNwbGl0KCAiLiIgKVsgMSBdOwoJdmFyIGZ1bGxOYW1lID0gbmFtZXNwYWNlICsgIi0iICsgbmFtZTsKCglpZiAoICFwcm90b3R5cGUgKSB7CgkJcHJvdG90eXBlID0gYmFzZTsKCQliYXNlID0gJC5XaWRnZXQ7Cgl9CgoJaWYgKCAkLmlzQXJyYXkoIHByb3RvdHlwZSApICkgewoJCXByb3RvdHlwZSA9ICQuZXh0ZW5kLmFwcGx5KCBudWxsLCBbIHt9IF0uY29uY2F0KCBwcm90b3R5cGUgKSApOwoJfQoKCS8vIENyZWF0ZSBzZWxlY3RvciBmb3IgcGx1Z2luCgkkLmV4cHJbICI6IiBdWyBmdWxsTmFtZS50b0xvd2VyQ2FzZSgpIF0gPSBmdW5jdGlvbiggZWxlbSApIHsKCQlyZXR1cm4gISEkLmRhdGEoIGVsZW0sIGZ1bGxOYW1lICk7Cgl9OwoKCSRbIG5hbWVzcGFjZSBdID0gJFsgbmFtZXNwYWNlIF0gfHwge307CglleGlzdGluZ0NvbnN0cnVjdG9yID0gJFsgbmFtZXNwYWNlIF1bIG5hbWUgXTsKCWNvbnN0cnVjdG9yID0gJFsgbmFtZXNwYWNlIF1bIG5hbWUgXSA9IGZ1bmN0aW9uKCBvcHRpb25zLCBlbGVtZW50ICkgewoKCQkvLyBBbGxvdyBpbnN0YW50aWF0aW9uIHdpdGhvdXQgIm5ldyIga2V5d29yZAoJCWlmICggIXRoaXMuX2NyZWF0ZVdpZGdldCApIHsKCQkJcmV0dXJuIG5ldyBjb25zdHJ1Y3Rvciggb3B0aW9ucywgZWxlbWVudCApOwoJCX0KCgkJLy8gQWxsb3cgaW5zdGFudGlhdGlvbiB3aXRob3V0IGluaXRpYWxpemluZyBmb3Igc2ltcGxlIGluaGVyaXRhbmNlCgkJLy8gbXVzdCB1c2UgIm5ldyIga2V5d29yZCAodGhlIGNvZGUgYWJvdmUgYWx3YXlzIHBhc3NlcyBhcmdzKQoJCWlmICggYXJndW1lbnRzLmxlbmd0aCApIHsKCQkJdGhpcy5fY3JlYXRlV2lkZ2V0KCBvcHRpb25zLCBlbGVtZW50ICk7CgkJfQoJfTsKCgkvLyBFeHRlbmQgd2l0aCB0aGUgZXhpc3RpbmcgY29uc3RydWN0b3IgdG8gY2Fycnkgb3ZlciBhbnkgc3RhdGljIHByb3BlcnRpZXMKCSQuZXh0ZW5kKCBjb25zdHJ1Y3RvciwgZXhpc3RpbmdDb25zdHJ1Y3RvciwgewoJCXZlcnNpb246IHByb3RvdHlwZS52ZXJzaW9uLAoKCQkvLyBDb3B5IHRoZSBvYmplY3QgdXNlZCB0byBjcmVhdGUgdGhlIHByb3RvdHlwZSBpbiBjYXNlIHdlIG5lZWQgdG8KCQkvLyByZWRlZmluZSB0aGUgd2lkZ2V0IGxhdGVyCgkJX3Byb3RvOiAkLmV4dGVuZCgge30sIHByb3RvdHlwZSApLAoKCQkvLyBUcmFjayB3aWRnZXRzIHRoYXQgaW5oZXJpdCBmcm9tIHRoaXMgd2lkZ2V0IGluIGNhc2UgdGhpcyB3aWRnZXQgaXMKCQkvLyByZWRlZmluZWQgYWZ0ZXIgYSB3aWRnZXQgaW5oZXJpdHMgZnJvbSBpdAoJCV9jaGlsZENvbnN0cnVjdG9yczogW10KCX0gKTsKCgliYXNlUHJvdG90eXBlID0gbmV3IGJhc2UoKTsKCgkvLyBXZSBuZWVkIHRvIG1ha2UgdGhlIG9wdGlvbnMgaGFzaCBhIHByb3BlcnR5IGRpcmVjdGx5IG9uIHRoZSBuZXcgaW5zdGFuY2UKCS8vIG90aGVyd2lzZSB3ZSdsbCBtb2RpZnkgdGhlIG9wdGlvbnMgaGFzaCBvbiB0aGUgcHJvdG90eXBlIHRoYXQgd2UncmUKCS8vIGluaGVyaXRpbmcgZnJvbQoJYmFzZVByb3RvdHlwZS5vcHRpb25zID0gJC53aWRnZXQuZXh0ZW5kKCB7fSwgYmFzZVByb3RvdHlwZS5vcHRpb25zICk7CgkkLmVhY2goIHByb3RvdHlwZSwgZnVuY3Rpb24oIHByb3AsIHZhbHVlICkgewoJCWlmICggISQuaXNGdW5jdGlvbiggdmFsdWUgKSApIHsKCQkJcHJveGllZFByb3RvdHlwZVsgcHJvcCBdID0gdmFsdWU7CgkJCXJldHVybjsKCQl9CgkJcHJveGllZFByb3RvdHlwZVsgcHJvcCBdID0gKCBmdW5jdGlvbigpIHsKCQkJZnVuY3Rpb24gX3N1cGVyKCkgewoJCQkJcmV0dXJuIGJhc2UucHJvdG90eXBlWyBwcm9wIF0uYXBwbHkoIHRoaXMsIGFyZ3VtZW50cyApOwoJCQl9CgoJCQlmdW5jdGlvbiBfc3VwZXJBcHBseSggYXJncyApIHsKCQkJCXJldHVybiBiYXNlLnByb3RvdHlwZVsgcHJvcCBdLmFwcGx5KCB0aGlzLCBhcmdzICk7CgkJCX0KCgkJCXJldHVybiBmdW5jdGlvbigpIHsKCQkJCXZhciBfX3N1cGVyID0gdGhpcy5fc3VwZXI7CgkJCQl2YXIgX19zdXBlckFwcGx5ID0gdGhpcy5fc3VwZXJBcHBseTsKCQkJCXZhciByZXR1cm5WYWx1ZTsKCgkJCQl0aGlzLl9zdXBlciA9IF9zdXBlcjsKCQkJCXRoaXMuX3N1cGVyQXBwbHkgPSBfc3VwZXJBcHBseTsKCgkJCQlyZXR1cm5WYWx1ZSA9IHZhbHVlLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKTsKCgkJCQl0aGlzLl9zdXBlciA9IF9fc3VwZXI7CgkJCQl0aGlzLl9zdXBlckFwcGx5ID0gX19zdXBlckFwcGx5OwoKCQkJCXJldHVybiByZXR1cm5WYWx1ZTsKCQkJfTsKCQl9ICkoKTsKCX0gKTsKCWNvbnN0cnVjdG9yLnByb3RvdHlwZSA9ICQud2lkZ2V0LmV4dGVuZCggYmFzZVByb3RvdHlwZSwgewoKCQkvLyBUT0RPOiByZW1vdmUgc3VwcG9ydCBmb3Igd2lkZ2V0RXZlbnRQcmVmaXgKCQkvLyBhbHdheXMgdXNlIHRoZSBuYW1lICsgYSBjb2xvbiBhcyB0aGUgcHJlZml4LCBlLmcuLCBkcmFnZ2FibGU6c3RhcnQKCQkvLyBkb24ndCBwcmVmaXggZm9yIHdpZGdldHMgdGhhdCBhcmVuJ3QgRE9NLWJhc2VkCgkJd2lkZ2V0RXZlbnRQcmVmaXg6IGV4aXN0aW5nQ29uc3RydWN0b3IgPyAoIGJhc2VQcm90b3R5cGUud2lkZ2V0RXZlbnRQcmVmaXggfHwgbmFtZSApIDogbmFtZQoJfSwgcHJveGllZFByb3RvdHlwZSwgewoJCWNvbnN0cnVjdG9yOiBjb25zdHJ1Y3RvciwKCQluYW1lc3BhY2U6IG5hbWVzcGFjZSwKCQl3aWRnZXROYW1lOiBuYW1lLAoJCXdpZGdldEZ1bGxOYW1lOiBmdWxsTmFtZQoJfSApOwoKCS8vIElmIHRoaXMgd2lkZ2V0IGlzIGJlaW5nIHJlZGVmaW5lZCB0aGVuIHdlIG5lZWQgdG8gZmluZCBhbGwgd2lkZ2V0cyB0aGF0CgkvLyBhcmUgaW5oZXJpdGluZyBmcm9tIGl0IGFuZCByZWRlZmluZSBhbGwgb2YgdGhlbSBzbyB0aGF0IHRoZXkgaW5oZXJpdCBmcm9tCgkvLyB0aGUgbmV3IHZlcnNpb24gb2YgdGhpcyB3aWRnZXQuIFdlJ3JlIGVzc2VudGlhbGx5IHRyeWluZyB0byByZXBsYWNlIG9uZQoJLy8gbGV2ZWwgaW4gdGhlIHByb3RvdHlwZSBjaGFpbi4KCWlmICggZXhpc3RpbmdDb25zdHJ1Y3RvciApIHsKCQkkLmVhY2goIGV4aXN0aW5nQ29uc3RydWN0b3IuX2NoaWxkQ29uc3RydWN0b3JzLCBmdW5jdGlvbiggaSwgY2hpbGQgKSB7CgkJCXZhciBjaGlsZFByb3RvdHlwZSA9IGNoaWxkLnByb3RvdHlwZTsKCgkJCS8vIFJlZGVmaW5lIHRoZSBjaGlsZCB3aWRnZXQgdXNpbmcgdGhlIHNhbWUgcHJvdG90eXBlIHRoYXQgd2FzCgkJCS8vIG9yaWdpbmFsbHkgdXNlZCwgYnV0IGluaGVyaXQgZnJvbSB0aGUgbmV3IHZlcnNpb24gb2YgdGhlIGJhc2UKCQkJJC53aWRnZXQoIGNoaWxkUHJvdG90eXBlLm5hbWVzcGFjZSArICIuIiArIGNoaWxkUHJvdG90eXBlLndpZGdldE5hbWUsIGNvbnN0cnVjdG9yLAoJCQkJY2hpbGQuX3Byb3RvICk7CgkJfSApOwoKCQkvLyBSZW1vdmUgdGhlIGxpc3Qgb2YgZXhpc3RpbmcgY2hpbGQgY29uc3RydWN0b3JzIGZyb20gdGhlIG9sZCBjb25zdHJ1Y3RvcgoJCS8vIHNvIHRoZSBvbGQgY2hpbGQgY29uc3RydWN0b3JzIGNhbiBiZSBnYXJiYWdlIGNvbGxlY3RlZAoJCWRlbGV0ZSBleGlzdGluZ0NvbnN0cnVjdG9yLl9jaGlsZENvbnN0cnVjdG9yczsKCX0gZWxzZSB7CgkJYmFzZS5fY2hpbGRDb25zdHJ1Y3RvcnMucHVzaCggY29uc3RydWN0b3IgKTsKCX0KCgkkLndpZGdldC5icmlkZ2UoIG5hbWUsIGNvbnN0cnVjdG9yICk7CgoJcmV0dXJuIGNvbnN0cnVjdG9yOwp9OwoKJC53aWRnZXQuZXh0ZW5kID0gZnVuY3Rpb24oIHRhcmdldCApIHsKCXZhciBpbnB1dCA9IHdpZGdldFNsaWNlLmNhbGwoIGFyZ3VtZW50cywgMSApOwoJdmFyIGlucHV0SW5kZXggPSAwOwoJdmFyIGlucHV0TGVuZ3RoID0gaW5wdXQubGVuZ3RoOwoJdmFyIGtleTsKCXZhciB2YWx1ZTsKCglmb3IgKCA7IGlucHV0SW5kZXggPCBpbnB1dExlbmd0aDsgaW5wdXRJbmRleCsrICkgewoJCWZvciAoIGtleSBpbiBpbnB1dFsgaW5wdXRJbmRleCBdICkgewoJCQl2YWx1ZSA9IGlucHV0WyBpbnB1dEluZGV4IF1bIGtleSBdOwoJCQlpZiAoIGlucHV0WyBpbnB1dEluZGV4IF0uaGFzT3duUHJvcGVydHkoIGtleSApICYmIHZhbHVlICE9PSB1bmRlZmluZWQgKSB7CgoJCQkJLy8gQ2xvbmUgb2JqZWN0cwoJCQkJaWYgKCAkLmlzUGxhaW5PYmplY3QoIHZhbHVlICkgKSB7CgkJCQkJdGFyZ2V0WyBrZXkgXSA9ICQuaXNQbGFpbk9iamVjdCggdGFyZ2V0WyBrZXkgXSApID8KCQkJCQkJJC53aWRnZXQuZXh0ZW5kKCB7fSwgdGFyZ2V0WyBrZXkgXSwgdmFsdWUgKSA6CgoJCQkJCQkvLyBEb24ndCBleHRlbmQgc3RyaW5ncywgYXJyYXlzLCBldGMuIHdpdGggb2JqZWN0cwoJCQkJCQkkLndpZGdldC5leHRlbmQoIHt9LCB2YWx1ZSApOwoKCQkJCS8vIENvcHkgZXZlcnl0aGluZyBlbHNlIGJ5IHJlZmVyZW5jZQoJCQkJfSBlbHNlIHsKCQkJCQl0YXJnZXRbIGtleSBdID0gdmFsdWU7CgkJCQl9CgkJCX0KCQl9Cgl9CglyZXR1cm4gdGFyZ2V0Owp9OwoKJC53aWRnZXQuYnJpZGdlID0gZnVuY3Rpb24oIG5hbWUsIG9iamVjdCApIHsKCXZhciBmdWxsTmFtZSA9IG9iamVjdC5wcm90b3R5cGUud2lkZ2V0RnVsbE5hbWUgfHwgbmFtZTsKCSQuZm5bIG5hbWUgXSA9IGZ1bmN0aW9uKCBvcHRpb25zICkgewoJCXZhciBpc01ldGhvZENhbGwgPSB0eXBlb2Ygb3B0aW9ucyA9PT0gInN0cmluZyI7CgkJdmFyIGFyZ3MgPSB3aWRnZXRTbGljZS5jYWxsKCBhcmd1bWVudHMsIDEgKTsKCQl2YXIgcmV0dXJuVmFsdWUgPSB0aGlzOwoKCQlpZiAoIGlzTWV0aG9kQ2FsbCApIHsKCgkJCS8vIElmIHRoaXMgaXMgYW4gZW1wdHkgY29sbGVjdGlvbiwgd2UgbmVlZCB0byBoYXZlIHRoZSBpbnN0YW5jZSBtZXRob2QKCQkJLy8gcmV0dXJuIHVuZGVmaW5lZCBpbnN0ZWFkIG9mIHRoZSBqUXVlcnkgaW5zdGFuY2UKCQkJaWYgKCAhdGhpcy5sZW5ndGggJiYgb3B0aW9ucyA9PT0gImluc3RhbmNlIiApIHsKCQkJCXJldHVyblZhbHVlID0gdW5kZWZpbmVkOwoJCQl9IGVsc2UgewoJCQkJdGhpcy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCQl2YXIgbWV0aG9kVmFsdWU7CgkJCQkJdmFyIGluc3RhbmNlID0gJC5kYXRhKCB0aGlzLCBmdWxsTmFtZSApOwoKCQkJCQlpZiAoIG9wdGlvbnMgPT09ICJpbnN0YW5jZSIgKSB7CgkJCQkJCXJldHVyblZhbHVlID0gaW5zdGFuY2U7CgkJCQkJCXJldHVybiBmYWxzZTsKCQkJCQl9CgoJCQkJCWlmICggIWluc3RhbmNlICkgewoJCQkJCQlyZXR1cm4gJC5lcnJvciggImNhbm5vdCBjYWxsIG1ldGhvZHMgb24gIiArIG5hbWUgKwoJCQkJCQkJIiBwcmlvciB0byBpbml0aWFsaXphdGlvbjsgIiArCgkJCQkJCQkiYXR0ZW1wdGVkIHRvIGNhbGwgbWV0aG9kICciICsgb3B0aW9ucyArICInIiApOwoJCQkJCX0KCgkJCQkJaWYgKCAhJC5pc0Z1bmN0aW9uKCBpbnN0YW5jZVsgb3B0aW9ucyBdICkgfHwgb3B0aW9ucy5jaGFyQXQoIDAgKSA9PT0gIl8iICkgewoJCQkJCQlyZXR1cm4gJC5lcnJvciggIm5vIHN1Y2ggbWV0aG9kICciICsgb3B0aW9ucyArICInIGZvciAiICsgbmFtZSArCgkJCQkJCQkiIHdpZGdldCBpbnN0YW5jZSIgKTsKCQkJCQl9CgoJCQkJCW1ldGhvZFZhbHVlID0gaW5zdGFuY2VbIG9wdGlvbnMgXS5hcHBseSggaW5zdGFuY2UsIGFyZ3MgKTsKCgkJCQkJaWYgKCBtZXRob2RWYWx1ZSAhPT0gaW5zdGFuY2UgJiYgbWV0aG9kVmFsdWUgIT09IHVuZGVmaW5lZCApIHsKCQkJCQkJcmV0dXJuVmFsdWUgPSBtZXRob2RWYWx1ZSAmJiBtZXRob2RWYWx1ZS5qcXVlcnkgPwoJCQkJCQkJcmV0dXJuVmFsdWUucHVzaFN0YWNrKCBtZXRob2RWYWx1ZS5nZXQoKSApIDoKCQkJCQkJCW1ldGhvZFZhbHVlOwoJCQkJCQlyZXR1cm4gZmFsc2U7CgkJCQkJfQoJCQkJfSApOwoJCQl9CgkJfSBlbHNlIHsKCgkJCS8vIEFsbG93IG11bHRpcGxlIGhhc2hlcyB0byBiZSBwYXNzZWQgb24gaW5pdAoJCQlpZiAoIGFyZ3MubGVuZ3RoICkgewoJCQkJb3B0aW9ucyA9ICQud2lkZ2V0LmV4dGVuZC5hcHBseSggbnVsbCwgWyBvcHRpb25zIF0uY29uY2F0KCBhcmdzICkgKTsKCQkJfQoKCQkJdGhpcy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCXZhciBpbnN0YW5jZSA9ICQuZGF0YSggdGhpcywgZnVsbE5hbWUgKTsKCQkJCWlmICggaW5zdGFuY2UgKSB7CgkJCQkJaW5zdGFuY2Uub3B0aW9uKCBvcHRpb25zIHx8IHt9ICk7CgkJCQkJaWYgKCBpbnN0YW5jZS5faW5pdCApIHsKCQkJCQkJaW5zdGFuY2UuX2luaXQoKTsKCQkJCQl9CgkJCQl9IGVsc2UgewoJCQkJCSQuZGF0YSggdGhpcywgZnVsbE5hbWUsIG5ldyBvYmplY3QoIG9wdGlvbnMsIHRoaXMgKSApOwoJCQkJfQoJCQl9ICk7CgkJfQoKCQlyZXR1cm4gcmV0dXJuVmFsdWU7Cgl9Owp9OwoKJC5XaWRnZXQgPSBmdW5jdGlvbiggLyogb3B0aW9ucywgZWxlbWVudCAqLyApIHt9OwokLldpZGdldC5fY2hpbGRDb25zdHJ1Y3RvcnMgPSBbXTsKCiQuV2lkZ2V0LnByb3RvdHlwZSA9IHsKCXdpZGdldE5hbWU6ICJ3aWRnZXQiLAoJd2lkZ2V0RXZlbnRQcmVmaXg6ICIiLAoJZGVmYXVsdEVsZW1lbnQ6ICI8ZGl2PiIsCgoJb3B0aW9uczogewoJCWNsYXNzZXM6IHt9LAoJCWRpc2FibGVkOiBmYWxzZSwKCgkJLy8gQ2FsbGJhY2tzCgkJY3JlYXRlOiBudWxsCgl9LAoKCV9jcmVhdGVXaWRnZXQ6IGZ1bmN0aW9uKCBvcHRpb25zLCBlbGVtZW50ICkgewoJCWVsZW1lbnQgPSAkKCBlbGVtZW50IHx8IHRoaXMuZGVmYXVsdEVsZW1lbnQgfHwgdGhpcyApWyAwIF07CgkJdGhpcy5lbGVtZW50ID0gJCggZWxlbWVudCApOwoJCXRoaXMudXVpZCA9IHdpZGdldFV1aWQrKzsKCQl0aGlzLmV2ZW50TmFtZXNwYWNlID0gIi4iICsgdGhpcy53aWRnZXROYW1lICsgdGhpcy51dWlkOwoKCQl0aGlzLmJpbmRpbmdzID0gJCgpOwoJCXRoaXMuaG92ZXJhYmxlID0gJCgpOwoJCXRoaXMuZm9jdXNhYmxlID0gJCgpOwoJCXRoaXMuY2xhc3Nlc0VsZW1lbnRMb29rdXAgPSB7fTsKCgkJaWYgKCBlbGVtZW50ICE9PSB0aGlzICkgewoJCQkkLmRhdGEoIGVsZW1lbnQsIHRoaXMud2lkZ2V0RnVsbE5hbWUsIHRoaXMgKTsKCQkJdGhpcy5fb24oIHRydWUsIHRoaXMuZWxlbWVudCwgewoJCQkJcmVtb3ZlOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJCQkJaWYgKCBldmVudC50YXJnZXQgPT09IGVsZW1lbnQgKSB7CgkJCQkJCXRoaXMuZGVzdHJveSgpOwoJCQkJCX0KCQkJCX0KCQkJfSApOwoJCQl0aGlzLmRvY3VtZW50ID0gJCggZWxlbWVudC5zdHlsZSA/CgoJCQkJLy8gRWxlbWVudCB3aXRoaW4gdGhlIGRvY3VtZW50CgkJCQllbGVtZW50Lm93bmVyRG9jdW1lbnQgOgoKCQkJCS8vIEVsZW1lbnQgaXMgd2luZG93IG9yIGRvY3VtZW50CgkJCQllbGVtZW50LmRvY3VtZW50IHx8IGVsZW1lbnQgKTsKCQkJdGhpcy53aW5kb3cgPSAkKCB0aGlzLmRvY3VtZW50WyAwIF0uZGVmYXVsdFZpZXcgfHwgdGhpcy5kb2N1bWVudFsgMCBdLnBhcmVudFdpbmRvdyApOwoJCX0KCgkJdGhpcy5vcHRpb25zID0gJC53aWRnZXQuZXh0ZW5kKCB7fSwKCQkJdGhpcy5vcHRpb25zLAoJCQl0aGlzLl9nZXRDcmVhdGVPcHRpb25zKCksCgkJCW9wdGlvbnMgKTsKCgkJdGhpcy5fY3JlYXRlKCk7CgoJCWlmICggdGhpcy5vcHRpb25zLmRpc2FibGVkICkgewoJCQl0aGlzLl9zZXRPcHRpb25EaXNhYmxlZCggdGhpcy5vcHRpb25zLmRpc2FibGVkICk7CgkJfQoKCQl0aGlzLl90cmlnZ2VyKCAiY3JlYXRlIiwgbnVsbCwgdGhpcy5fZ2V0Q3JlYXRlRXZlbnREYXRhKCkgKTsKCQl0aGlzLl9pbml0KCk7Cgl9LAoKCV9nZXRDcmVhdGVPcHRpb25zOiBmdW5jdGlvbigpIHsKCQlyZXR1cm4ge307Cgl9LAoKCV9nZXRDcmVhdGVFdmVudERhdGE6ICQubm9vcCwKCglfY3JlYXRlOiAkLm5vb3AsCgoJX2luaXQ6ICQubm9vcCwKCglkZXN0cm95OiBmdW5jdGlvbigpIHsKCQl2YXIgdGhhdCA9IHRoaXM7CgoJCXRoaXMuX2Rlc3Ryb3koKTsKCQkkLmVhY2goIHRoaXMuY2xhc3Nlc0VsZW1lbnRMb29rdXAsIGZ1bmN0aW9uKCBrZXksIHZhbHVlICkgewoJCQl0aGF0Ll9yZW1vdmVDbGFzcyggdmFsdWUsIGtleSApOwoJCX0gKTsKCgkJLy8gV2UgY2FuIHByb2JhYmx5IHJlbW92ZSB0aGUgdW5iaW5kIGNhbGxzIGluIDIuMAoJCS8vIGFsbCBldmVudCBiaW5kaW5ncyBzaG91bGQgZ28gdGhyb3VnaCB0aGlzLl9vbigpCgkJdGhpcy5lbGVtZW50CgkJCS5vZmYoIHRoaXMuZXZlbnROYW1lc3BhY2UgKQoJCQkucmVtb3ZlRGF0YSggdGhpcy53aWRnZXRGdWxsTmFtZSApOwoJCXRoaXMud2lkZ2V0KCkKCQkJLm9mZiggdGhpcy5ldmVudE5hbWVzcGFjZSApCgkJCS5yZW1vdmVBdHRyKCAiYXJpYS1kaXNhYmxlZCIgKTsKCgkJLy8gQ2xlYW4gdXAgZXZlbnRzIGFuZCBzdGF0ZXMKCQl0aGlzLmJpbmRpbmdzLm9mZiggdGhpcy5ldmVudE5hbWVzcGFjZSApOwoJfSwKCglfZGVzdHJveTogJC5ub29wLAoKCXdpZGdldDogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMuZWxlbWVudDsKCX0sCgoJb3B0aW9uOiBmdW5jdGlvbigga2V5LCB2YWx1ZSApIHsKCQl2YXIgb3B0aW9ucyA9IGtleTsKCQl2YXIgcGFydHM7CgkJdmFyIGN1ck9wdGlvbjsKCQl2YXIgaTsKCgkJaWYgKCBhcmd1bWVudHMubGVuZ3RoID09PSAwICkgewoKCQkJLy8gRG9uJ3QgcmV0dXJuIGEgcmVmZXJlbmNlIHRvIHRoZSBpbnRlcm5hbCBoYXNoCgkJCXJldHVybiAkLndpZGdldC5leHRlbmQoIHt9LCB0aGlzLm9wdGlvbnMgKTsKCQl9CgoJCWlmICggdHlwZW9mIGtleSA9PT0gInN0cmluZyIgKSB7CgoJCQkvLyBIYW5kbGUgbmVzdGVkIGtleXMsIGUuZy4sICJmb28uYmFyIiA9PiB7IGZvbzogeyBiYXI6IF9fXyB9IH0KCQkJb3B0aW9ucyA9IHt9OwoJCQlwYXJ0cyA9IGtleS5zcGxpdCggIi4iICk7CgkJCWtleSA9IHBhcnRzLnNoaWZ0KCk7CgkJCWlmICggcGFydHMubGVuZ3RoICkgewoJCQkJY3VyT3B0aW9uID0gb3B0aW9uc1sga2V5IF0gPSAkLndpZGdldC5leHRlbmQoIHt9LCB0aGlzLm9wdGlvbnNbIGtleSBdICk7CgkJCQlmb3IgKCBpID0gMDsgaSA8IHBhcnRzLmxlbmd0aCAtIDE7IGkrKyApIHsKCQkJCQljdXJPcHRpb25bIHBhcnRzWyBpIF0gXSA9IGN1ck9wdGlvblsgcGFydHNbIGkgXSBdIHx8IHt9OwoJCQkJCWN1ck9wdGlvbiA9IGN1ck9wdGlvblsgcGFydHNbIGkgXSBdOwoJCQkJfQoJCQkJa2V5ID0gcGFydHMucG9wKCk7CgkJCQlpZiAoIGFyZ3VtZW50cy5sZW5ndGggPT09IDEgKSB7CgkJCQkJcmV0dXJuIGN1ck9wdGlvblsga2V5IF0gPT09IHVuZGVmaW5lZCA/IG51bGwgOiBjdXJPcHRpb25bIGtleSBdOwoJCQkJfQoJCQkJY3VyT3B0aW9uWyBrZXkgXSA9IHZhbHVlOwoJCQl9IGVsc2UgewoJCQkJaWYgKCBhcmd1bWVudHMubGVuZ3RoID09PSAxICkgewoJCQkJCXJldHVybiB0aGlzLm9wdGlvbnNbIGtleSBdID09PSB1bmRlZmluZWQgPyBudWxsIDogdGhpcy5vcHRpb25zWyBrZXkgXTsKCQkJCX0KCQkJCW9wdGlvbnNbIGtleSBdID0gdmFsdWU7CgkJCX0KCQl9CgoJCXRoaXMuX3NldE9wdGlvbnMoIG9wdGlvbnMgKTsKCgkJcmV0dXJuIHRoaXM7Cgl9LAoKCV9zZXRPcHRpb25zOiBmdW5jdGlvbiggb3B0aW9ucyApIHsKCQl2YXIga2V5OwoKCQlmb3IgKCBrZXkgaW4gb3B0aW9ucyApIHsKCQkJdGhpcy5fc2V0T3B0aW9uKCBrZXksIG9wdGlvbnNbIGtleSBdICk7CgkJfQoKCQlyZXR1cm4gdGhpczsKCX0sCgoJX3NldE9wdGlvbjogZnVuY3Rpb24oIGtleSwgdmFsdWUgKSB7CgkJaWYgKCBrZXkgPT09ICJjbGFzc2VzIiApIHsKCQkJdGhpcy5fc2V0T3B0aW9uQ2xhc3NlcyggdmFsdWUgKTsKCQl9CgoJCXRoaXMub3B0aW9uc1sga2V5IF0gPSB2YWx1ZTsKCgkJaWYgKCBrZXkgPT09ICJkaXNhYmxlZCIgKSB7CgkJCXRoaXMuX3NldE9wdGlvbkRpc2FibGVkKCB2YWx1ZSApOwoJCX0KCgkJcmV0dXJuIHRoaXM7Cgl9LAoKCV9zZXRPcHRpb25DbGFzc2VzOiBmdW5jdGlvbiggdmFsdWUgKSB7CgkJdmFyIGNsYXNzS2V5LCBlbGVtZW50cywgY3VycmVudEVsZW1lbnRzOwoKCQlmb3IgKCBjbGFzc0tleSBpbiB2YWx1ZSApIHsKCQkJY3VycmVudEVsZW1lbnRzID0gdGhpcy5jbGFzc2VzRWxlbWVudExvb2t1cFsgY2xhc3NLZXkgXTsKCQkJaWYgKCB2YWx1ZVsgY2xhc3NLZXkgXSA9PT0gdGhpcy5vcHRpb25zLmNsYXNzZXNbIGNsYXNzS2V5IF0gfHwKCQkJCQkhY3VycmVudEVsZW1lbnRzIHx8CgkJCQkJIWN1cnJlbnRFbGVtZW50cy5sZW5ndGggKSB7CgkJCQljb250aW51ZTsKCQkJfQoKCQkJLy8gV2UgYXJlIGRvaW5nIHRoaXMgdG8gY3JlYXRlIGEgbmV3IGpRdWVyeSBvYmplY3QgYmVjYXVzZSB0aGUgX3JlbW92ZUNsYXNzKCkgY2FsbAoJCQkvLyBvbiB0aGUgbmV4dCBsaW5lIGlzIGdvaW5nIHRvIGRlc3Ryb3kgdGhlIHJlZmVyZW5jZSB0byB0aGUgY3VycmVudCBlbGVtZW50cyBiZWluZwoJCQkvLyB0cmFja2VkLiBXZSBuZWVkIHRvIHNhdmUgYSBjb3B5IG9mIHRoaXMgY29sbGVjdGlvbiBzbyB0aGF0IHdlIGNhbiBhZGQgdGhlIG5ldyBjbGFzc2VzCgkJCS8vIGJlbG93LgoJCQllbGVtZW50cyA9ICQoIGN1cnJlbnRFbGVtZW50cy5nZXQoKSApOwoJCQl0aGlzLl9yZW1vdmVDbGFzcyggY3VycmVudEVsZW1lbnRzLCBjbGFzc0tleSApOwoKCQkJLy8gV2UgZG9uJ3QgdXNlIF9hZGRDbGFzcygpIGhlcmUsIGJlY2F1c2UgdGhhdCB1c2VzIHRoaXMub3B0aW9ucy5jbGFzc2VzCgkJCS8vIGZvciBnZW5lcmF0aW5nIHRoZSBzdHJpbmcgb2YgY2xhc3Nlcy4gV2Ugd2FudCB0byB1c2UgdGhlIHZhbHVlIHBhc3NlZCBpbiBmcm9tCgkJCS8vIF9zZXRPcHRpb24oKSwgdGhpcyBpcyB0aGUgbmV3IHZhbHVlIG9mIHRoZSBjbGFzc2VzIG9wdGlvbiB3aGljaCB3YXMgcGFzc2VkIHRvCgkJCS8vIF9zZXRPcHRpb24oKS4gV2UgcGFzcyB0aGlzIHZhbHVlIGRpcmVjdGx5IHRvIF9jbGFzc2VzKCkuCgkJCWVsZW1lbnRzLmFkZENsYXNzKCB0aGlzLl9jbGFzc2VzKCB7CgkJCQllbGVtZW50OiBlbGVtZW50cywKCQkJCWtleXM6IGNsYXNzS2V5LAoJCQkJY2xhc3NlczogdmFsdWUsCgkJCQlhZGQ6IHRydWUKCQkJfSApICk7CgkJfQoJfSwKCglfc2V0T3B0aW9uRGlzYWJsZWQ6IGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQl0aGlzLl90b2dnbGVDbGFzcyggdGhpcy53aWRnZXQoKSwgdGhpcy53aWRnZXRGdWxsTmFtZSArICItZGlzYWJsZWQiLCBudWxsLCAhIXZhbHVlICk7CgoJCS8vIElmIHRoZSB3aWRnZXQgaXMgYmVjb21pbmcgZGlzYWJsZWQsIHRoZW4gbm90aGluZyBpcyBpbnRlcmFjdGl2ZQoJCWlmICggdmFsdWUgKSB7CgkJCXRoaXMuX3JlbW92ZUNsYXNzKCB0aGlzLmhvdmVyYWJsZSwgbnVsbCwgInVpLXN0YXRlLWhvdmVyIiApOwoJCQl0aGlzLl9yZW1vdmVDbGFzcyggdGhpcy5mb2N1c2FibGUsIG51bGwsICJ1aS1zdGF0ZS1mb2N1cyIgKTsKCQl9Cgl9LAoKCWVuYWJsZTogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMuX3NldE9wdGlvbnMoIHsgZGlzYWJsZWQ6IGZhbHNlIH0gKTsKCX0sCgoJZGlzYWJsZTogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMuX3NldE9wdGlvbnMoIHsgZGlzYWJsZWQ6IHRydWUgfSApOwoJfSwKCglfY2xhc3NlczogZnVuY3Rpb24oIG9wdGlvbnMgKSB7CgkJdmFyIGZ1bGwgPSBbXTsKCQl2YXIgdGhhdCA9IHRoaXM7CgoJCW9wdGlvbnMgPSAkLmV4dGVuZCggewoJCQllbGVtZW50OiB0aGlzLmVsZW1lbnQsCgkJCWNsYXNzZXM6IHRoaXMub3B0aW9ucy5jbGFzc2VzIHx8IHt9CgkJfSwgb3B0aW9ucyApOwoKCQlmdW5jdGlvbiBwcm9jZXNzQ2xhc3NTdHJpbmcoIGNsYXNzZXMsIGNoZWNrT3B0aW9uICkgewoJCQl2YXIgY3VycmVudCwgaTsKCQkJZm9yICggaSA9IDA7IGkgPCBjbGFzc2VzLmxlbmd0aDsgaSsrICkgewoJCQkJY3VycmVudCA9IHRoYXQuY2xhc3Nlc0VsZW1lbnRMb29rdXBbIGNsYXNzZXNbIGkgXSBdIHx8ICQoKTsKCQkJCWlmICggb3B0aW9ucy5hZGQgKSB7CgkJCQkJY3VycmVudCA9ICQoICQudW5pcXVlKCBjdXJyZW50LmdldCgpLmNvbmNhdCggb3B0aW9ucy5lbGVtZW50LmdldCgpICkgKSApOwoJCQkJfSBlbHNlIHsKCQkJCQljdXJyZW50ID0gJCggY3VycmVudC5ub3QoIG9wdGlvbnMuZWxlbWVudCApLmdldCgpICk7CgkJCQl9CgkJCQl0aGF0LmNsYXNzZXNFbGVtZW50TG9va3VwWyBjbGFzc2VzWyBpIF0gXSA9IGN1cnJlbnQ7CgkJCQlmdWxsLnB1c2goIGNsYXNzZXNbIGkgXSApOwoJCQkJaWYgKCBjaGVja09wdGlvbiAmJiBvcHRpb25zLmNsYXNzZXNbIGNsYXNzZXNbIGkgXSBdICkgewoJCQkJCWZ1bGwucHVzaCggb3B0aW9ucy5jbGFzc2VzWyBjbGFzc2VzWyBpIF0gXSApOwoJCQkJfQoJCQl9CgkJfQoKCQl0aGlzLl9vbiggb3B0aW9ucy5lbGVtZW50LCB7CgkJCSJyZW1vdmUiOiAiX3VudHJhY2tDbGFzc2VzRWxlbWVudCIKCQl9ICk7CgoJCWlmICggb3B0aW9ucy5rZXlzICkgewoJCQlwcm9jZXNzQ2xhc3NTdHJpbmcoIG9wdGlvbnMua2V5cy5tYXRjaCggL1xTKy9nICkgfHwgW10sIHRydWUgKTsKCQl9CgkJaWYgKCBvcHRpb25zLmV4dHJhICkgewoJCQlwcm9jZXNzQ2xhc3NTdHJpbmcoIG9wdGlvbnMuZXh0cmEubWF0Y2goIC9cUysvZyApIHx8IFtdICk7CgkJfQoKCQlyZXR1cm4gZnVsbC5qb2luKCAiICIgKTsKCX0sCgoJX3VudHJhY2tDbGFzc2VzRWxlbWVudDogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXZhciB0aGF0ID0gdGhpczsKCQkkLmVhY2goIHRoYXQuY2xhc3Nlc0VsZW1lbnRMb29rdXAsIGZ1bmN0aW9uKCBrZXksIHZhbHVlICkgewoJCQlpZiAoICQuaW5BcnJheSggZXZlbnQudGFyZ2V0LCB2YWx1ZSApICE9PSAtMSApIHsKCQkJCXRoYXQuY2xhc3Nlc0VsZW1lbnRMb29rdXBbIGtleSBdID0gJCggdmFsdWUubm90KCBldmVudC50YXJnZXQgKS5nZXQoKSApOwoJCQl9CgkJfSApOwoJfSwKCglfcmVtb3ZlQ2xhc3M6IGZ1bmN0aW9uKCBlbGVtZW50LCBrZXlzLCBleHRyYSApIHsKCQlyZXR1cm4gdGhpcy5fdG9nZ2xlQ2xhc3MoIGVsZW1lbnQsIGtleXMsIGV4dHJhLCBmYWxzZSApOwoJfSwKCglfYWRkQ2xhc3M6IGZ1bmN0aW9uKCBlbGVtZW50LCBrZXlzLCBleHRyYSApIHsKCQlyZXR1cm4gdGhpcy5fdG9nZ2xlQ2xhc3MoIGVsZW1lbnQsIGtleXMsIGV4dHJhLCB0cnVlICk7Cgl9LAoKCV90b2dnbGVDbGFzczogZnVuY3Rpb24oIGVsZW1lbnQsIGtleXMsIGV4dHJhLCBhZGQgKSB7CgkJYWRkID0gKCB0eXBlb2YgYWRkID09PSAiYm9vbGVhbiIgKSA/IGFkZCA6IGV4dHJhOwoJCXZhciBzaGlmdCA9ICggdHlwZW9mIGVsZW1lbnQgPT09ICJzdHJpbmciIHx8IGVsZW1lbnQgPT09IG51bGwgKSwKCQkJb3B0aW9ucyA9IHsKCQkJCWV4dHJhOiBzaGlmdCA/IGtleXMgOiBleHRyYSwKCQkJCWtleXM6IHNoaWZ0ID8gZWxlbWVudCA6IGtleXMsCgkJCQllbGVtZW50OiBzaGlmdCA/IHRoaXMuZWxlbWVudCA6IGVsZW1lbnQsCgkJCQlhZGQ6IGFkZAoJCQl9OwoJCW9wdGlvbnMuZWxlbWVudC50b2dnbGVDbGFzcyggdGhpcy5fY2xhc3Nlcyggb3B0aW9ucyApLCBhZGQgKTsKCQlyZXR1cm4gdGhpczsKCX0sCgoJX29uOiBmdW5jdGlvbiggc3VwcHJlc3NEaXNhYmxlZENoZWNrLCBlbGVtZW50LCBoYW5kbGVycyApIHsKCQl2YXIgZGVsZWdhdGVFbGVtZW50OwoJCXZhciBpbnN0YW5jZSA9IHRoaXM7CgoJCS8vIE5vIHN1cHByZXNzRGlzYWJsZWRDaGVjayBmbGFnLCBzaHVmZmxlIGFyZ3VtZW50cwoJCWlmICggdHlwZW9mIHN1cHByZXNzRGlzYWJsZWRDaGVjayAhPT0gImJvb2xlYW4iICkgewoJCQloYW5kbGVycyA9IGVsZW1lbnQ7CgkJCWVsZW1lbnQgPSBzdXBwcmVzc0Rpc2FibGVkQ2hlY2s7CgkJCXN1cHByZXNzRGlzYWJsZWRDaGVjayA9IGZhbHNlOwoJCX0KCgkJLy8gTm8gZWxlbWVudCBhcmd1bWVudCwgc2h1ZmZsZSBhbmQgdXNlIHRoaXMuZWxlbWVudAoJCWlmICggIWhhbmRsZXJzICkgewoJCQloYW5kbGVycyA9IGVsZW1lbnQ7CgkJCWVsZW1lbnQgPSB0aGlzLmVsZW1lbnQ7CgkJCWRlbGVnYXRlRWxlbWVudCA9IHRoaXMud2lkZ2V0KCk7CgkJfSBlbHNlIHsKCQkJZWxlbWVudCA9IGRlbGVnYXRlRWxlbWVudCA9ICQoIGVsZW1lbnQgKTsKCQkJdGhpcy5iaW5kaW5ncyA9IHRoaXMuYmluZGluZ3MuYWRkKCBlbGVtZW50ICk7CgkJfQoKCQkkLmVhY2goIGhhbmRsZXJzLCBmdW5jdGlvbiggZXZlbnQsIGhhbmRsZXIgKSB7CgkJCWZ1bmN0aW9uIGhhbmRsZXJQcm94eSgpIHsKCgkJCQkvLyBBbGxvdyB3aWRnZXRzIHRvIGN1c3RvbWl6ZSB0aGUgZGlzYWJsZWQgaGFuZGxpbmcKCQkJCS8vIC0gZGlzYWJsZWQgYXMgYW4gYXJyYXkgaW5zdGVhZCBvZiBib29sZWFuCgkJCQkvLyAtIGRpc2FibGVkIGNsYXNzIGFzIG1ldGhvZCBmb3IgZGlzYWJsaW5nIGluZGl2aWR1YWwgcGFydHMKCQkJCWlmICggIXN1cHByZXNzRGlzYWJsZWRDaGVjayAmJgoJCQkJCQkoIGluc3RhbmNlLm9wdGlvbnMuZGlzYWJsZWQgPT09IHRydWUgfHwKCQkJCQkJJCggdGhpcyApLmhhc0NsYXNzKCAidWktc3RhdGUtZGlzYWJsZWQiICkgKSApIHsKCQkJCQlyZXR1cm47CgkJCQl9CgkJCQlyZXR1cm4gKCB0eXBlb2YgaGFuZGxlciA9PT0gInN0cmluZyIgPyBpbnN0YW5jZVsgaGFuZGxlciBdIDogaGFuZGxlciApCgkJCQkJLmFwcGx5KCBpbnN0YW5jZSwgYXJndW1lbnRzICk7CgkJCX0KCgkJCS8vIENvcHkgdGhlIGd1aWQgc28gZGlyZWN0IHVuYmluZGluZyB3b3JrcwoJCQlpZiAoIHR5cGVvZiBoYW5kbGVyICE9PSAic3RyaW5nIiApIHsKCQkJCWhhbmRsZXJQcm94eS5ndWlkID0gaGFuZGxlci5ndWlkID0KCQkJCQloYW5kbGVyLmd1aWQgfHwgaGFuZGxlclByb3h5Lmd1aWQgfHwgJC5ndWlkKys7CgkJCX0KCgkJCXZhciBtYXRjaCA9IGV2ZW50Lm1hdGNoKCAvXihbXHc6LV0qKVxzKiguKikkLyApOwoJCQl2YXIgZXZlbnROYW1lID0gbWF0Y2hbIDEgXSArIGluc3RhbmNlLmV2ZW50TmFtZXNwYWNlOwoJCQl2YXIgc2VsZWN0b3IgPSBtYXRjaFsgMiBdOwoKCQkJaWYgKCBzZWxlY3RvciApIHsKCQkJCWRlbGVnYXRlRWxlbWVudC5vbiggZXZlbnROYW1lLCBzZWxlY3RvciwgaGFuZGxlclByb3h5ICk7CgkJCX0gZWxzZSB7CgkJCQllbGVtZW50Lm9uKCBldmVudE5hbWUsIGhhbmRsZXJQcm94eSApOwoJCQl9CgkJfSApOwoJfSwKCglfb2ZmOiBmdW5jdGlvbiggZWxlbWVudCwgZXZlbnROYW1lICkgewoJCWV2ZW50TmFtZSA9ICggZXZlbnROYW1lIHx8ICIiICkuc3BsaXQoICIgIiApLmpvaW4oIHRoaXMuZXZlbnROYW1lc3BhY2UgKyAiICIgKSArCgkJCXRoaXMuZXZlbnROYW1lc3BhY2U7CgkJZWxlbWVudC5vZmYoIGV2ZW50TmFtZSApLm9mZiggZXZlbnROYW1lICk7CgoJCS8vIENsZWFyIHRoZSBzdGFjayB0byBhdm9pZCBtZW1vcnkgbGVha3MgKCMxMDA1NikKCQl0aGlzLmJpbmRpbmdzID0gJCggdGhpcy5iaW5kaW5ncy5ub3QoIGVsZW1lbnQgKS5nZXQoKSApOwoJCXRoaXMuZm9jdXNhYmxlID0gJCggdGhpcy5mb2N1c2FibGUubm90KCBlbGVtZW50ICkuZ2V0KCkgKTsKCQl0aGlzLmhvdmVyYWJsZSA9ICQoIHRoaXMuaG92ZXJhYmxlLm5vdCggZWxlbWVudCApLmdldCgpICk7Cgl9LAoKCV9kZWxheTogZnVuY3Rpb24oIGhhbmRsZXIsIGRlbGF5ICkgewoJCWZ1bmN0aW9uIGhhbmRsZXJQcm94eSgpIHsKCQkJcmV0dXJuICggdHlwZW9mIGhhbmRsZXIgPT09ICJzdHJpbmciID8gaW5zdGFuY2VbIGhhbmRsZXIgXSA6IGhhbmRsZXIgKQoJCQkJLmFwcGx5KCBpbnN0YW5jZSwgYXJndW1lbnRzICk7CgkJfQoJCXZhciBpbnN0YW5jZSA9IHRoaXM7CgkJcmV0dXJuIHNldFRpbWVvdXQoIGhhbmRsZXJQcm94eSwgZGVsYXkgfHwgMCApOwoJfSwKCglfaG92ZXJhYmxlOiBmdW5jdGlvbiggZWxlbWVudCApIHsKCQl0aGlzLmhvdmVyYWJsZSA9IHRoaXMuaG92ZXJhYmxlLmFkZCggZWxlbWVudCApOwoJCXRoaXMuX29uKCBlbGVtZW50LCB7CgkJCW1vdXNlZW50ZXI6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCXRoaXMuX2FkZENsYXNzKCAkKCBldmVudC5jdXJyZW50VGFyZ2V0ICksIG51bGwsICJ1aS1zdGF0ZS1ob3ZlciIgKTsKCQkJfSwKCQkJbW91c2VsZWF2ZTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCQkJdGhpcy5fcmVtb3ZlQ2xhc3MoICQoIGV2ZW50LmN1cnJlbnRUYXJnZXQgKSwgbnVsbCwgInVpLXN0YXRlLWhvdmVyIiApOwoJCQl9CgkJfSApOwoJfSwKCglfZm9jdXNhYmxlOiBmdW5jdGlvbiggZWxlbWVudCApIHsKCQl0aGlzLmZvY3VzYWJsZSA9IHRoaXMuZm9jdXNhYmxlLmFkZCggZWxlbWVudCApOwoJCXRoaXMuX29uKCBlbGVtZW50LCB7CgkJCWZvY3VzaW46IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCXRoaXMuX2FkZENsYXNzKCAkKCBldmVudC5jdXJyZW50VGFyZ2V0ICksIG51bGwsICJ1aS1zdGF0ZS1mb2N1cyIgKTsKCQkJfSwKCQkJZm9jdXNvdXQ6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCXRoaXMuX3JlbW92ZUNsYXNzKCAkKCBldmVudC5jdXJyZW50VGFyZ2V0ICksIG51bGwsICJ1aS1zdGF0ZS1mb2N1cyIgKTsKCQkJfQoJCX0gKTsKCX0sCgoJX3RyaWdnZXI6IGZ1bmN0aW9uKCB0eXBlLCBldmVudCwgZGF0YSApIHsKCQl2YXIgcHJvcCwgb3JpZzsKCQl2YXIgY2FsbGJhY2sgPSB0aGlzLm9wdGlvbnNbIHR5cGUgXTsKCgkJZGF0YSA9IGRhdGEgfHwge307CgkJZXZlbnQgPSAkLkV2ZW50KCBldmVudCApOwoJCWV2ZW50LnR5cGUgPSAoIHR5cGUgPT09IHRoaXMud2lkZ2V0RXZlbnRQcmVmaXggPwoJCQl0eXBlIDoKCQkJdGhpcy53aWRnZXRFdmVudFByZWZpeCArIHR5cGUgKS50b0xvd2VyQ2FzZSgpOwoKCQkvLyBUaGUgb3JpZ2luYWwgZXZlbnQgbWF5IGNvbWUgZnJvbSBhbnkgZWxlbWVudAoJCS8vIHNvIHdlIG5lZWQgdG8gcmVzZXQgdGhlIHRhcmdldCBvbiB0aGUgbmV3IGV2ZW50CgkJZXZlbnQudGFyZ2V0ID0gdGhpcy5lbGVtZW50WyAwIF07CgoJCS8vIENvcHkgb3JpZ2luYWwgZXZlbnQgcHJvcGVydGllcyBvdmVyIHRvIHRoZSBuZXcgZXZlbnQKCQlvcmlnID0gZXZlbnQub3JpZ2luYWxFdmVudDsKCQlpZiAoIG9yaWcgKSB7CgkJCWZvciAoIHByb3AgaW4gb3JpZyApIHsKCQkJCWlmICggISggcHJvcCBpbiBldmVudCApICkgewoJCQkJCWV2ZW50WyBwcm9wIF0gPSBvcmlnWyBwcm9wIF07CgkJCQl9CgkJCX0KCQl9CgoJCXRoaXMuZWxlbWVudC50cmlnZ2VyKCBldmVudCwgZGF0YSApOwoJCXJldHVybiAhKCAkLmlzRnVuY3Rpb24oIGNhbGxiYWNrICkgJiYKCQkJY2FsbGJhY2suYXBwbHkoIHRoaXMuZWxlbWVudFsgMCBdLCBbIGV2ZW50IF0uY29uY2F0KCBkYXRhICkgKSA9PT0gZmFsc2UgfHwKCQkJZXZlbnQuaXNEZWZhdWx0UHJldmVudGVkKCkgKTsKCX0KfTsKCiQuZWFjaCggeyBzaG93OiAiZmFkZUluIiwgaGlkZTogImZhZGVPdXQiIH0sIGZ1bmN0aW9uKCBtZXRob2QsIGRlZmF1bHRFZmZlY3QgKSB7CgkkLldpZGdldC5wcm90b3R5cGVbICJfIiArIG1ldGhvZCBdID0gZnVuY3Rpb24oIGVsZW1lbnQsIG9wdGlvbnMsIGNhbGxiYWNrICkgewoJCWlmICggdHlwZW9mIG9wdGlvbnMgPT09ICJzdHJpbmciICkgewoJCQlvcHRpb25zID0geyBlZmZlY3Q6IG9wdGlvbnMgfTsKCQl9CgoJCXZhciBoYXNPcHRpb25zOwoJCXZhciBlZmZlY3ROYW1lID0gIW9wdGlvbnMgPwoJCQltZXRob2QgOgoJCQlvcHRpb25zID09PSB0cnVlIHx8IHR5cGVvZiBvcHRpb25zID09PSAibnVtYmVyIiA/CgkJCQlkZWZhdWx0RWZmZWN0IDoKCQkJCW9wdGlvbnMuZWZmZWN0IHx8IGRlZmF1bHRFZmZlY3Q7CgoJCW9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwoJCWlmICggdHlwZW9mIG9wdGlvbnMgPT09ICJudW1iZXIiICkgewoJCQlvcHRpb25zID0geyBkdXJhdGlvbjogb3B0aW9ucyB9OwoJCX0KCgkJaGFzT3B0aW9ucyA9ICEkLmlzRW1wdHlPYmplY3QoIG9wdGlvbnMgKTsKCQlvcHRpb25zLmNvbXBsZXRlID0gY2FsbGJhY2s7CgoJCWlmICggb3B0aW9ucy5kZWxheSApIHsKCQkJZWxlbWVudC5kZWxheSggb3B0aW9ucy5kZWxheSApOwoJCX0KCgkJaWYgKCBoYXNPcHRpb25zICYmICQuZWZmZWN0cyAmJiAkLmVmZmVjdHMuZWZmZWN0WyBlZmZlY3ROYW1lIF0gKSB7CgkJCWVsZW1lbnRbIG1ldGhvZCBdKCBvcHRpb25zICk7CgkJfSBlbHNlIGlmICggZWZmZWN0TmFtZSAhPT0gbWV0aG9kICYmIGVsZW1lbnRbIGVmZmVjdE5hbWUgXSApIHsKCQkJZWxlbWVudFsgZWZmZWN0TmFtZSBdKCBvcHRpb25zLmR1cmF0aW9uLCBvcHRpb25zLmVhc2luZywgY2FsbGJhY2sgKTsKCQl9IGVsc2UgewoJCQllbGVtZW50LnF1ZXVlKCBmdW5jdGlvbiggbmV4dCApIHsKCQkJCSQoIHRoaXMgKVsgbWV0aG9kIF0oKTsKCQkJCWlmICggY2FsbGJhY2sgKSB7CgkJCQkJY2FsbGJhY2suY2FsbCggZWxlbWVudFsgMCBdICk7CgkJCQl9CgkJCQluZXh0KCk7CgkJCX0gKTsKCQl9Cgl9Owp9ICk7Cgp2YXIgd2lkZ2V0ID0gJC53aWRnZXQ7CgoKLyohCiAqIGpRdWVyeSBVSSBQb3NpdGlvbiAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICoKICogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vcG9zaXRpb24vCiAqLwoKLy8+PmxhYmVsOiBQb3NpdGlvbgovLz4+Z3JvdXA6IENvcmUKLy8+PmRlc2NyaXB0aW9uOiBQb3NpdGlvbnMgZWxlbWVudHMgcmVsYXRpdmUgdG8gb3RoZXIgZWxlbWVudHMuCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9wb3NpdGlvbi8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL3Bvc2l0aW9uLwoKCiggZnVuY3Rpb24oKSB7CnZhciBjYWNoZWRTY3JvbGxiYXJXaWR0aCwKCW1heCA9IE1hdGgubWF4LAoJYWJzID0gTWF0aC5hYnMsCglyaG9yaXpvbnRhbCA9IC9sZWZ0fGNlbnRlcnxyaWdodC8sCglydmVydGljYWwgPSAvdG9wfGNlbnRlcnxib3R0b20vLAoJcm9mZnNldCA9IC9bXCtcLV1cZCsoXC5bXGRdKyk/JT8vLAoJcnBvc2l0aW9uID0gL15cdysvLAoJcnBlcmNlbnQgPSAvJSQvLAoJX3Bvc2l0aW9uID0gJC5mbi5wb3NpdGlvbjsKCmZ1bmN0aW9uIGdldE9mZnNldHMoIG9mZnNldHMsIHdpZHRoLCBoZWlnaHQgKSB7CglyZXR1cm4gWwoJCXBhcnNlRmxvYXQoIG9mZnNldHNbIDAgXSApICogKCBycGVyY2VudC50ZXN0KCBvZmZzZXRzWyAwIF0gKSA/IHdpZHRoIC8gMTAwIDogMSApLAoJCXBhcnNlRmxvYXQoIG9mZnNldHNbIDEgXSApICogKCBycGVyY2VudC50ZXN0KCBvZmZzZXRzWyAxIF0gKSA/IGhlaWdodCAvIDEwMCA6IDEgKQoJXTsKfQoKZnVuY3Rpb24gcGFyc2VDc3MoIGVsZW1lbnQsIHByb3BlcnR5ICkgewoJcmV0dXJuIHBhcnNlSW50KCAkLmNzcyggZWxlbWVudCwgcHJvcGVydHkgKSwgMTAgKSB8fCAwOwp9CgpmdW5jdGlvbiBnZXREaW1lbnNpb25zKCBlbGVtICkgewoJdmFyIHJhdyA9IGVsZW1bIDAgXTsKCWlmICggcmF3Lm5vZGVUeXBlID09PSA5ICkgewoJCXJldHVybiB7CgkJCXdpZHRoOiBlbGVtLndpZHRoKCksCgkJCWhlaWdodDogZWxlbS5oZWlnaHQoKSwKCQkJb2Zmc2V0OiB7IHRvcDogMCwgbGVmdDogMCB9CgkJfTsKCX0KCWlmICggJC5pc1dpbmRvdyggcmF3ICkgKSB7CgkJcmV0dXJuIHsKCQkJd2lkdGg6IGVsZW0ud2lkdGgoKSwKCQkJaGVpZ2h0OiBlbGVtLmhlaWdodCgpLAoJCQlvZmZzZXQ6IHsgdG9wOiBlbGVtLnNjcm9sbFRvcCgpLCBsZWZ0OiBlbGVtLnNjcm9sbExlZnQoKSB9CgkJfTsKCX0KCWlmICggcmF3LnByZXZlbnREZWZhdWx0ICkgewoJCXJldHVybiB7CgkJCXdpZHRoOiAwLAoJCQloZWlnaHQ6IDAsCgkJCW9mZnNldDogeyB0b3A6IHJhdy5wYWdlWSwgbGVmdDogcmF3LnBhZ2VYIH0KCQl9OwoJfQoJcmV0dXJuIHsKCQl3aWR0aDogZWxlbS5vdXRlcldpZHRoKCksCgkJaGVpZ2h0OiBlbGVtLm91dGVySGVpZ2h0KCksCgkJb2Zmc2V0OiBlbGVtLm9mZnNldCgpCgl9Owp9CgokLnBvc2l0aW9uID0gewoJc2Nyb2xsYmFyV2lkdGg6IGZ1bmN0aW9uKCkgewoJCWlmICggY2FjaGVkU2Nyb2xsYmFyV2lkdGggIT09IHVuZGVmaW5lZCApIHsKCQkJcmV0dXJuIGNhY2hlZFNjcm9sbGJhcldpZHRoOwoJCX0KCQl2YXIgdzEsIHcyLAoJCQlkaXYgPSAkKCAiPGRpdiAiICsKCQkJCSJzdHlsZT0nZGlzcGxheTpibG9jaztwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDo1MHB4O2hlaWdodDo1MHB4O292ZXJmbG93OmhpZGRlbjsnPiIgKwoJCQkJIjxkaXYgc3R5bGU9J2hlaWdodDoxMDBweDt3aWR0aDphdXRvOyc+PC9kaXY+PC9kaXY+IiApLAoJCQlpbm5lckRpdiA9IGRpdi5jaGlsZHJlbigpWyAwIF07CgoJCSQoICJib2R5IiApLmFwcGVuZCggZGl2ICk7CgkJdzEgPSBpbm5lckRpdi5vZmZzZXRXaWR0aDsKCQlkaXYuY3NzKCAib3ZlcmZsb3ciLCAic2Nyb2xsIiApOwoKCQl3MiA9IGlubmVyRGl2Lm9mZnNldFdpZHRoOwoKCQlpZiAoIHcxID09PSB3MiApIHsKCQkJdzIgPSBkaXZbIDAgXS5jbGllbnRXaWR0aDsKCQl9CgoJCWRpdi5yZW1vdmUoKTsKCgkJcmV0dXJuICggY2FjaGVkU2Nyb2xsYmFyV2lkdGggPSB3MSAtIHcyICk7Cgl9LAoJZ2V0U2Nyb2xsSW5mbzogZnVuY3Rpb24oIHdpdGhpbiApIHsKCQl2YXIgb3ZlcmZsb3dYID0gd2l0aGluLmlzV2luZG93IHx8IHdpdGhpbi5pc0RvY3VtZW50ID8gIiIgOgoJCQkJd2l0aGluLmVsZW1lbnQuY3NzKCAib3ZlcmZsb3cteCIgKSwKCQkJb3ZlcmZsb3dZID0gd2l0aGluLmlzV2luZG93IHx8IHdpdGhpbi5pc0RvY3VtZW50ID8gIiIgOgoJCQkJd2l0aGluLmVsZW1lbnQuY3NzKCAib3ZlcmZsb3cteSIgKSwKCQkJaGFzT3ZlcmZsb3dYID0gb3ZlcmZsb3dYID09PSAic2Nyb2xsIiB8fAoJCQkJKCBvdmVyZmxvd1ggPT09ICJhdXRvIiAmJiB3aXRoaW4ud2lkdGggPCB3aXRoaW4uZWxlbWVudFsgMCBdLnNjcm9sbFdpZHRoICksCgkJCWhhc092ZXJmbG93WSA9IG92ZXJmbG93WSA9PT0gInNjcm9sbCIgfHwKCQkJCSggb3ZlcmZsb3dZID09PSAiYXV0byIgJiYgd2l0aGluLmhlaWdodCA8IHdpdGhpbi5lbGVtZW50WyAwIF0uc2Nyb2xsSGVpZ2h0ICk7CgkJcmV0dXJuIHsKCQkJd2lkdGg6IGhhc092ZXJmbG93WSA/ICQucG9zaXRpb24uc2Nyb2xsYmFyV2lkdGgoKSA6IDAsCgkJCWhlaWdodDogaGFzT3ZlcmZsb3dYID8gJC5wb3NpdGlvbi5zY3JvbGxiYXJXaWR0aCgpIDogMAoJCX07Cgl9LAoJZ2V0V2l0aGluSW5mbzogZnVuY3Rpb24oIGVsZW1lbnQgKSB7CgkJdmFyIHdpdGhpbkVsZW1lbnQgPSAkKCBlbGVtZW50IHx8IHdpbmRvdyApLAoJCQlpc1dpbmRvdyA9ICQuaXNXaW5kb3coIHdpdGhpbkVsZW1lbnRbIDAgXSApLAoJCQlpc0RvY3VtZW50ID0gISF3aXRoaW5FbGVtZW50WyAwIF0gJiYgd2l0aGluRWxlbWVudFsgMCBdLm5vZGVUeXBlID09PSA5LAoJCQloYXNPZmZzZXQgPSAhaXNXaW5kb3cgJiYgIWlzRG9jdW1lbnQ7CgkJcmV0dXJuIHsKCQkJZWxlbWVudDogd2l0aGluRWxlbWVudCwKCQkJaXNXaW5kb3c6IGlzV2luZG93LAoJCQlpc0RvY3VtZW50OiBpc0RvY3VtZW50LAoJCQlvZmZzZXQ6IGhhc09mZnNldCA/ICQoIGVsZW1lbnQgKS5vZmZzZXQoKSA6IHsgbGVmdDogMCwgdG9wOiAwIH0sCgkJCXNjcm9sbExlZnQ6IHdpdGhpbkVsZW1lbnQuc2Nyb2xsTGVmdCgpLAoJCQlzY3JvbGxUb3A6IHdpdGhpbkVsZW1lbnQuc2Nyb2xsVG9wKCksCgkJCXdpZHRoOiB3aXRoaW5FbGVtZW50Lm91dGVyV2lkdGgoKSwKCQkJaGVpZ2h0OiB3aXRoaW5FbGVtZW50Lm91dGVySGVpZ2h0KCkKCQl9OwoJfQp9OwoKJC5mbi5wb3NpdGlvbiA9IGZ1bmN0aW9uKCBvcHRpb25zICkgewoJaWYgKCAhb3B0aW9ucyB8fCAhb3B0aW9ucy5vZiApIHsKCQlyZXR1cm4gX3Bvc2l0aW9uLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKTsKCX0KCgkvLyBNYWtlIGEgY29weSwgd2UgZG9uJ3Qgd2FudCB0byBtb2RpZnkgYXJndW1lbnRzCglvcHRpb25zID0gJC5leHRlbmQoIHt9LCBvcHRpb25zICk7CgoJdmFyIGF0T2Zmc2V0LCB0YXJnZXRXaWR0aCwgdGFyZ2V0SGVpZ2h0LCB0YXJnZXRPZmZzZXQsIGJhc2VQb3NpdGlvbiwgZGltZW5zaW9ucywKCQl0YXJnZXQgPSAkKCBvcHRpb25zLm9mICksCgkJd2l0aGluID0gJC5wb3NpdGlvbi5nZXRXaXRoaW5JbmZvKCBvcHRpb25zLndpdGhpbiApLAoJCXNjcm9sbEluZm8gPSAkLnBvc2l0aW9uLmdldFNjcm9sbEluZm8oIHdpdGhpbiApLAoJCWNvbGxpc2lvbiA9ICggb3B0aW9ucy5jb2xsaXNpb24gfHwgImZsaXAiICkuc3BsaXQoICIgIiApLAoJCW9mZnNldHMgPSB7fTsKCglkaW1lbnNpb25zID0gZ2V0RGltZW5zaW9ucyggdGFyZ2V0ICk7CglpZiAoIHRhcmdldFsgMCBdLnByZXZlbnREZWZhdWx0ICkgewoKCQkvLyBGb3JjZSBsZWZ0IHRvcCB0byBhbGxvdyBmbGlwcGluZwoJCW9wdGlvbnMuYXQgPSAibGVmdCB0b3AiOwoJfQoJdGFyZ2V0V2lkdGggPSBkaW1lbnNpb25zLndpZHRoOwoJdGFyZ2V0SGVpZ2h0ID0gZGltZW5zaW9ucy5oZWlnaHQ7Cgl0YXJnZXRPZmZzZXQgPSBkaW1lbnNpb25zLm9mZnNldDsKCgkvLyBDbG9uZSB0byByZXVzZSBvcmlnaW5hbCB0YXJnZXRPZmZzZXQgbGF0ZXIKCWJhc2VQb3NpdGlvbiA9ICQuZXh0ZW5kKCB7fSwgdGFyZ2V0T2Zmc2V0ICk7CgoJLy8gRm9yY2UgbXkgYW5kIGF0IHRvIGhhdmUgdmFsaWQgaG9yaXpvbnRhbCBhbmQgdmVydGljYWwgcG9zaXRpb25zCgkvLyBpZiBhIHZhbHVlIGlzIG1pc3Npbmcgb3IgaW52YWxpZCwgaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gY2VudGVyCgkkLmVhY2goIFsgIm15IiwgImF0IiBdLCBmdW5jdGlvbigpIHsKCQl2YXIgcG9zID0gKCBvcHRpb25zWyB0aGlzIF0gfHwgIiIgKS5zcGxpdCggIiAiICksCgkJCWhvcml6b250YWxPZmZzZXQsCgkJCXZlcnRpY2FsT2Zmc2V0OwoKCQlpZiAoIHBvcy5sZW5ndGggPT09IDEgKSB7CgkJCXBvcyA9IHJob3Jpem9udGFsLnRlc3QoIHBvc1sgMCBdICkgPwoJCQkJcG9zLmNvbmNhdCggWyAiY2VudGVyIiBdICkgOgoJCQkJcnZlcnRpY2FsLnRlc3QoIHBvc1sgMCBdICkgPwoJCQkJCVsgImNlbnRlciIgXS5jb25jYXQoIHBvcyApIDoKCQkJCQlbICJjZW50ZXIiLCAiY2VudGVyIiBdOwoJCX0KCQlwb3NbIDAgXSA9IHJob3Jpem9udGFsLnRlc3QoIHBvc1sgMCBdICkgPyBwb3NbIDAgXSA6ICJjZW50ZXIiOwoJCXBvc1sgMSBdID0gcnZlcnRpY2FsLnRlc3QoIHBvc1sgMSBdICkgPyBwb3NbIDEgXSA6ICJjZW50ZXIiOwoKCQkvLyBDYWxjdWxhdGUgb2Zmc2V0cwoJCWhvcml6b250YWxPZmZzZXQgPSByb2Zmc2V0LmV4ZWMoIHBvc1sgMCBdICk7CgkJdmVydGljYWxPZmZzZXQgPSByb2Zmc2V0LmV4ZWMoIHBvc1sgMSBdICk7CgkJb2Zmc2V0c1sgdGhpcyBdID0gWwoJCQlob3Jpem9udGFsT2Zmc2V0ID8gaG9yaXpvbnRhbE9mZnNldFsgMCBdIDogMCwKCQkJdmVydGljYWxPZmZzZXQgPyB2ZXJ0aWNhbE9mZnNldFsgMCBdIDogMAoJCV07CgoJCS8vIFJlZHVjZSB0byBqdXN0IHRoZSBwb3NpdGlvbnMgd2l0aG91dCB0aGUgb2Zmc2V0cwoJCW9wdGlvbnNbIHRoaXMgXSA9IFsKCQkJcnBvc2l0aW9uLmV4ZWMoIHBvc1sgMCBdIClbIDAgXSwKCQkJcnBvc2l0aW9uLmV4ZWMoIHBvc1sgMSBdIClbIDAgXQoJCV07Cgl9ICk7CgoJLy8gTm9ybWFsaXplIGNvbGxpc2lvbiBvcHRpb24KCWlmICggY29sbGlzaW9uLmxlbmd0aCA9PT0gMSApIHsKCQljb2xsaXNpb25bIDEgXSA9IGNvbGxpc2lvblsgMCBdOwoJfQoKCWlmICggb3B0aW9ucy5hdFsgMCBdID09PSAicmlnaHQiICkgewoJCWJhc2VQb3NpdGlvbi5sZWZ0ICs9IHRhcmdldFdpZHRoOwoJfSBlbHNlIGlmICggb3B0aW9ucy5hdFsgMCBdID09PSAiY2VudGVyIiApIHsKCQliYXNlUG9zaXRpb24ubGVmdCArPSB0YXJnZXRXaWR0aCAvIDI7Cgl9CgoJaWYgKCBvcHRpb25zLmF0WyAxIF0gPT09ICJib3R0b20iICkgewoJCWJhc2VQb3NpdGlvbi50b3AgKz0gdGFyZ2V0SGVpZ2h0OwoJfSBlbHNlIGlmICggb3B0aW9ucy5hdFsgMSBdID09PSAiY2VudGVyIiApIHsKCQliYXNlUG9zaXRpb24udG9wICs9IHRhcmdldEhlaWdodCAvIDI7Cgl9CgoJYXRPZmZzZXQgPSBnZXRPZmZzZXRzKCBvZmZzZXRzLmF0LCB0YXJnZXRXaWR0aCwgdGFyZ2V0SGVpZ2h0ICk7CgliYXNlUG9zaXRpb24ubGVmdCArPSBhdE9mZnNldFsgMCBdOwoJYmFzZVBvc2l0aW9uLnRvcCArPSBhdE9mZnNldFsgMSBdOwoKCXJldHVybiB0aGlzLmVhY2goIGZ1bmN0aW9uKCkgewoJCXZhciBjb2xsaXNpb25Qb3NpdGlvbiwgdXNpbmcsCgkJCWVsZW0gPSAkKCB0aGlzICksCgkJCWVsZW1XaWR0aCA9IGVsZW0ub3V0ZXJXaWR0aCgpLAoJCQllbGVtSGVpZ2h0ID0gZWxlbS5vdXRlckhlaWdodCgpLAoJCQltYXJnaW5MZWZ0ID0gcGFyc2VDc3MoIHRoaXMsICJtYXJnaW5MZWZ0IiApLAoJCQltYXJnaW5Ub3AgPSBwYXJzZUNzcyggdGhpcywgIm1hcmdpblRvcCIgKSwKCQkJY29sbGlzaW9uV2lkdGggPSBlbGVtV2lkdGggKyBtYXJnaW5MZWZ0ICsgcGFyc2VDc3MoIHRoaXMsICJtYXJnaW5SaWdodCIgKSArCgkJCQlzY3JvbGxJbmZvLndpZHRoLAoJCQljb2xsaXNpb25IZWlnaHQgPSBlbGVtSGVpZ2h0ICsgbWFyZ2luVG9wICsgcGFyc2VDc3MoIHRoaXMsICJtYXJnaW5Cb3R0b20iICkgKwoJCQkJc2Nyb2xsSW5mby5oZWlnaHQsCgkJCXBvc2l0aW9uID0gJC5leHRlbmQoIHt9LCBiYXNlUG9zaXRpb24gKSwKCQkJbXlPZmZzZXQgPSBnZXRPZmZzZXRzKCBvZmZzZXRzLm15LCBlbGVtLm91dGVyV2lkdGgoKSwgZWxlbS5vdXRlckhlaWdodCgpICk7CgoJCWlmICggb3B0aW9ucy5teVsgMCBdID09PSAicmlnaHQiICkgewoJCQlwb3NpdGlvbi5sZWZ0IC09IGVsZW1XaWR0aDsKCQl9IGVsc2UgaWYgKCBvcHRpb25zLm15WyAwIF0gPT09ICJjZW50ZXIiICkgewoJCQlwb3NpdGlvbi5sZWZ0IC09IGVsZW1XaWR0aCAvIDI7CgkJfQoKCQlpZiAoIG9wdGlvbnMubXlbIDEgXSA9PT0gImJvdHRvbSIgKSB7CgkJCXBvc2l0aW9uLnRvcCAtPSBlbGVtSGVpZ2h0OwoJCX0gZWxzZSBpZiAoIG9wdGlvbnMubXlbIDEgXSA9PT0gImNlbnRlciIgKSB7CgkJCXBvc2l0aW9uLnRvcCAtPSBlbGVtSGVpZ2h0IC8gMjsKCQl9CgoJCXBvc2l0aW9uLmxlZnQgKz0gbXlPZmZzZXRbIDAgXTsKCQlwb3NpdGlvbi50b3AgKz0gbXlPZmZzZXRbIDEgXTsKCgkJY29sbGlzaW9uUG9zaXRpb24gPSB7CgkJCW1hcmdpbkxlZnQ6IG1hcmdpbkxlZnQsCgkJCW1hcmdpblRvcDogbWFyZ2luVG9wCgkJfTsKCgkJJC5lYWNoKCBbICJsZWZ0IiwgInRvcCIgXSwgZnVuY3Rpb24oIGksIGRpciApIHsKCQkJaWYgKCAkLnVpLnBvc2l0aW9uWyBjb2xsaXNpb25bIGkgXSBdICkgewoJCQkJJC51aS5wb3NpdGlvblsgY29sbGlzaW9uWyBpIF0gXVsgZGlyIF0oIHBvc2l0aW9uLCB7CgkJCQkJdGFyZ2V0V2lkdGg6IHRhcmdldFdpZHRoLAoJCQkJCXRhcmdldEhlaWdodDogdGFyZ2V0SGVpZ2h0LAoJCQkJCWVsZW1XaWR0aDogZWxlbVdpZHRoLAoJCQkJCWVsZW1IZWlnaHQ6IGVsZW1IZWlnaHQsCgkJCQkJY29sbGlzaW9uUG9zaXRpb246IGNvbGxpc2lvblBvc2l0aW9uLAoJCQkJCWNvbGxpc2lvbldpZHRoOiBjb2xsaXNpb25XaWR0aCwKCQkJCQljb2xsaXNpb25IZWlnaHQ6IGNvbGxpc2lvbkhlaWdodCwKCQkJCQlvZmZzZXQ6IFsgYXRPZmZzZXRbIDAgXSArIG15T2Zmc2V0WyAwIF0sIGF0T2Zmc2V0IFsgMSBdICsgbXlPZmZzZXRbIDEgXSBdLAoJCQkJCW15OiBvcHRpb25zLm15LAoJCQkJCWF0OiBvcHRpb25zLmF0LAoJCQkJCXdpdGhpbjogd2l0aGluLAoJCQkJCWVsZW06IGVsZW0KCQkJCX0gKTsKCQkJfQoJCX0gKTsKCgkJaWYgKCBvcHRpb25zLnVzaW5nICkgewoKCQkJLy8gQWRkcyBmZWVkYmFjayBhcyBzZWNvbmQgYXJndW1lbnQgdG8gdXNpbmcgY2FsbGJhY2ssIGlmIHByZXNlbnQKCQkJdXNpbmcgPSBmdW5jdGlvbiggcHJvcHMgKSB7CgkJCQl2YXIgbGVmdCA9IHRhcmdldE9mZnNldC5sZWZ0IC0gcG9zaXRpb24ubGVmdCwKCQkJCQlyaWdodCA9IGxlZnQgKyB0YXJnZXRXaWR0aCAtIGVsZW1XaWR0aCwKCQkJCQl0b3AgPSB0YXJnZXRPZmZzZXQudG9wIC0gcG9zaXRpb24udG9wLAoJCQkJCWJvdHRvbSA9IHRvcCArIHRhcmdldEhlaWdodCAtIGVsZW1IZWlnaHQsCgkJCQkJZmVlZGJhY2sgPSB7CgkJCQkJCXRhcmdldDogewoJCQkJCQkJZWxlbWVudDogdGFyZ2V0LAoJCQkJCQkJbGVmdDogdGFyZ2V0T2Zmc2V0LmxlZnQsCgkJCQkJCQl0b3A6IHRhcmdldE9mZnNldC50b3AsCgkJCQkJCQl3aWR0aDogdGFyZ2V0V2lkdGgsCgkJCQkJCQloZWlnaHQ6IHRhcmdldEhlaWdodAoJCQkJCQl9LAoJCQkJCQllbGVtZW50OiB7CgkJCQkJCQllbGVtZW50OiBlbGVtLAoJCQkJCQkJbGVmdDogcG9zaXRpb24ubGVmdCwKCQkJCQkJCXRvcDogcG9zaXRpb24udG9wLAoJCQkJCQkJd2lkdGg6IGVsZW1XaWR0aCwKCQkJCQkJCWhlaWdodDogZWxlbUhlaWdodAoJCQkJCQl9LAoJCQkJCQlob3Jpem9udGFsOiByaWdodCA8IDAgPyAibGVmdCIgOiBsZWZ0ID4gMCA/ICJyaWdodCIgOiAiY2VudGVyIiwKCQkJCQkJdmVydGljYWw6IGJvdHRvbSA8IDAgPyAidG9wIiA6IHRvcCA+IDAgPyAiYm90dG9tIiA6ICJtaWRkbGUiCgkJCQkJfTsKCQkJCWlmICggdGFyZ2V0V2lkdGggPCBlbGVtV2lkdGggJiYgYWJzKCBsZWZ0ICsgcmlnaHQgKSA8IHRhcmdldFdpZHRoICkgewoJCQkJCWZlZWRiYWNrLmhvcml6b250YWwgPSAiY2VudGVyIjsKCQkJCX0KCQkJCWlmICggdGFyZ2V0SGVpZ2h0IDwgZWxlbUhlaWdodCAmJiBhYnMoIHRvcCArIGJvdHRvbSApIDwgdGFyZ2V0SGVpZ2h0ICkgewoJCQkJCWZlZWRiYWNrLnZlcnRpY2FsID0gIm1pZGRsZSI7CgkJCQl9CgkJCQlpZiAoIG1heCggYWJzKCBsZWZ0ICksIGFicyggcmlnaHQgKSApID4gbWF4KCBhYnMoIHRvcCApLCBhYnMoIGJvdHRvbSApICkgKSB7CgkJCQkJZmVlZGJhY2suaW1wb3J0YW50ID0gImhvcml6b250YWwiOwoJCQkJfSBlbHNlIHsKCQkJCQlmZWVkYmFjay5pbXBvcnRhbnQgPSAidmVydGljYWwiOwoJCQkJfQoJCQkJb3B0aW9ucy51c2luZy5jYWxsKCB0aGlzLCBwcm9wcywgZmVlZGJhY2sgKTsKCQkJfTsKCQl9CgoJCWVsZW0ub2Zmc2V0KCAkLmV4dGVuZCggcG9zaXRpb24sIHsgdXNpbmc6IHVzaW5nIH0gKSApOwoJfSApOwp9OwoKJC51aS5wb3NpdGlvbiA9IHsKCWZpdDogewoJCWxlZnQ6IGZ1bmN0aW9uKCBwb3NpdGlvbiwgZGF0YSApIHsKCQkJdmFyIHdpdGhpbiA9IGRhdGEud2l0aGluLAoJCQkJd2l0aGluT2Zmc2V0ID0gd2l0aGluLmlzV2luZG93ID8gd2l0aGluLnNjcm9sbExlZnQgOiB3aXRoaW4ub2Zmc2V0LmxlZnQsCgkJCQlvdXRlcldpZHRoID0gd2l0aGluLndpZHRoLAoJCQkJY29sbGlzaW9uUG9zTGVmdCA9IHBvc2l0aW9uLmxlZnQgLSBkYXRhLmNvbGxpc2lvblBvc2l0aW9uLm1hcmdpbkxlZnQsCgkJCQlvdmVyTGVmdCA9IHdpdGhpbk9mZnNldCAtIGNvbGxpc2lvblBvc0xlZnQsCgkJCQlvdmVyUmlnaHQgPSBjb2xsaXNpb25Qb3NMZWZ0ICsgZGF0YS5jb2xsaXNpb25XaWR0aCAtIG91dGVyV2lkdGggLSB3aXRoaW5PZmZzZXQsCgkJCQluZXdPdmVyUmlnaHQ7CgoJCQkvLyBFbGVtZW50IGlzIHdpZGVyIHRoYW4gd2l0aGluCgkJCWlmICggZGF0YS5jb2xsaXNpb25XaWR0aCA+IG91dGVyV2lkdGggKSB7CgoJCQkJLy8gRWxlbWVudCBpcyBpbml0aWFsbHkgb3ZlciB0aGUgbGVmdCBzaWRlIG9mIHdpdGhpbgoJCQkJaWYgKCBvdmVyTGVmdCA+IDAgJiYgb3ZlclJpZ2h0IDw9IDAgKSB7CgkJCQkJbmV3T3ZlclJpZ2h0ID0gcG9zaXRpb24ubGVmdCArIG92ZXJMZWZ0ICsgZGF0YS5jb2xsaXNpb25XaWR0aCAtIG91dGVyV2lkdGggLQoJCQkJCQl3aXRoaW5PZmZzZXQ7CgkJCQkJcG9zaXRpb24ubGVmdCArPSBvdmVyTGVmdCAtIG5ld092ZXJSaWdodDsKCgkJCQkvLyBFbGVtZW50IGlzIGluaXRpYWxseSBvdmVyIHJpZ2h0IHNpZGUgb2Ygd2l0aGluCgkJCQl9IGVsc2UgaWYgKCBvdmVyUmlnaHQgPiAwICYmIG92ZXJMZWZ0IDw9IDAgKSB7CgkJCQkJcG9zaXRpb24ubGVmdCA9IHdpdGhpbk9mZnNldDsKCgkJCQkvLyBFbGVtZW50IGlzIGluaXRpYWxseSBvdmVyIGJvdGggbGVmdCBhbmQgcmlnaHQgc2lkZXMgb2Ygd2l0aGluCgkJCQl9IGVsc2UgewoJCQkJCWlmICggb3ZlckxlZnQgPiBvdmVyUmlnaHQgKSB7CgkJCQkJCXBvc2l0aW9uLmxlZnQgPSB3aXRoaW5PZmZzZXQgKyBvdXRlcldpZHRoIC0gZGF0YS5jb2xsaXNpb25XaWR0aDsKCQkJCQl9IGVsc2UgewoJCQkJCQlwb3NpdGlvbi5sZWZ0ID0gd2l0aGluT2Zmc2V0OwoJCQkJCX0KCQkJCX0KCgkJCS8vIFRvbyBmYXIgbGVmdCAtPiBhbGlnbiB3aXRoIGxlZnQgZWRnZQoJCQl9IGVsc2UgaWYgKCBvdmVyTGVmdCA+IDAgKSB7CgkJCQlwb3NpdGlvbi5sZWZ0ICs9IG92ZXJMZWZ0OwoKCQkJLy8gVG9vIGZhciByaWdodCAtPiBhbGlnbiB3aXRoIHJpZ2h0IGVkZ2UKCQkJfSBlbHNlIGlmICggb3ZlclJpZ2h0ID4gMCApIHsKCQkJCXBvc2l0aW9uLmxlZnQgLT0gb3ZlclJpZ2h0OwoKCQkJLy8gQWRqdXN0IGJhc2VkIG9uIHBvc2l0aW9uIGFuZCBtYXJnaW4KCQkJfSBlbHNlIHsKCQkJCXBvc2l0aW9uLmxlZnQgPSBtYXgoIHBvc2l0aW9uLmxlZnQgLSBjb2xsaXNpb25Qb3NMZWZ0LCBwb3NpdGlvbi5sZWZ0ICk7CgkJCX0KCQl9LAoJCXRvcDogZnVuY3Rpb24oIHBvc2l0aW9uLCBkYXRhICkgewoJCQl2YXIgd2l0aGluID0gZGF0YS53aXRoaW4sCgkJCQl3aXRoaW5PZmZzZXQgPSB3aXRoaW4uaXNXaW5kb3cgPyB3aXRoaW4uc2Nyb2xsVG9wIDogd2l0aGluLm9mZnNldC50b3AsCgkJCQlvdXRlckhlaWdodCA9IGRhdGEud2l0aGluLmhlaWdodCwKCQkJCWNvbGxpc2lvblBvc1RvcCA9IHBvc2l0aW9uLnRvcCAtIGRhdGEuY29sbGlzaW9uUG9zaXRpb24ubWFyZ2luVG9wLAoJCQkJb3ZlclRvcCA9IHdpdGhpbk9mZnNldCAtIGNvbGxpc2lvblBvc1RvcCwKCQkJCW92ZXJCb3R0b20gPSBjb2xsaXNpb25Qb3NUb3AgKyBkYXRhLmNvbGxpc2lvbkhlaWdodCAtIG91dGVySGVpZ2h0IC0gd2l0aGluT2Zmc2V0LAoJCQkJbmV3T3ZlckJvdHRvbTsKCgkJCS8vIEVsZW1lbnQgaXMgdGFsbGVyIHRoYW4gd2l0aGluCgkJCWlmICggZGF0YS5jb2xsaXNpb25IZWlnaHQgPiBvdXRlckhlaWdodCApIHsKCgkJCQkvLyBFbGVtZW50IGlzIGluaXRpYWxseSBvdmVyIHRoZSB0b3Agb2Ygd2l0aGluCgkJCQlpZiAoIG92ZXJUb3AgPiAwICYmIG92ZXJCb3R0b20gPD0gMCApIHsKCQkJCQluZXdPdmVyQm90dG9tID0gcG9zaXRpb24udG9wICsgb3ZlclRvcCArIGRhdGEuY29sbGlzaW9uSGVpZ2h0IC0gb3V0ZXJIZWlnaHQgLQoJCQkJCQl3aXRoaW5PZmZzZXQ7CgkJCQkJcG9zaXRpb24udG9wICs9IG92ZXJUb3AgLSBuZXdPdmVyQm90dG9tOwoKCQkJCS8vIEVsZW1lbnQgaXMgaW5pdGlhbGx5IG92ZXIgYm90dG9tIG9mIHdpdGhpbgoJCQkJfSBlbHNlIGlmICggb3ZlckJvdHRvbSA+IDAgJiYgb3ZlclRvcCA8PSAwICkgewoJCQkJCXBvc2l0aW9uLnRvcCA9IHdpdGhpbk9mZnNldDsKCgkJCQkvLyBFbGVtZW50IGlzIGluaXRpYWxseSBvdmVyIGJvdGggdG9wIGFuZCBib3R0b20gb2Ygd2l0aGluCgkJCQl9IGVsc2UgewoJCQkJCWlmICggb3ZlclRvcCA+IG92ZXJCb3R0b20gKSB7CgkJCQkJCXBvc2l0aW9uLnRvcCA9IHdpdGhpbk9mZnNldCArIG91dGVySGVpZ2h0IC0gZGF0YS5jb2xsaXNpb25IZWlnaHQ7CgkJCQkJfSBlbHNlIHsKCQkJCQkJcG9zaXRpb24udG9wID0gd2l0aGluT2Zmc2V0OwoJCQkJCX0KCQkJCX0KCgkJCS8vIFRvbyBmYXIgdXAgLT4gYWxpZ24gd2l0aCB0b3AKCQkJfSBlbHNlIGlmICggb3ZlclRvcCA+IDAgKSB7CgkJCQlwb3NpdGlvbi50b3AgKz0gb3ZlclRvcDsKCgkJCS8vIFRvbyBmYXIgZG93biAtPiBhbGlnbiB3aXRoIGJvdHRvbSBlZGdlCgkJCX0gZWxzZSBpZiAoIG92ZXJCb3R0b20gPiAwICkgewoJCQkJcG9zaXRpb24udG9wIC09IG92ZXJCb3R0b207CgoJCQkvLyBBZGp1c3QgYmFzZWQgb24gcG9zaXRpb24gYW5kIG1hcmdpbgoJCQl9IGVsc2UgewoJCQkJcG9zaXRpb24udG9wID0gbWF4KCBwb3NpdGlvbi50b3AgLSBjb2xsaXNpb25Qb3NUb3AsIHBvc2l0aW9uLnRvcCApOwoJCQl9CgkJfQoJfSwKCWZsaXA6IHsKCQlsZWZ0OiBmdW5jdGlvbiggcG9zaXRpb24sIGRhdGEgKSB7CgkJCXZhciB3aXRoaW4gPSBkYXRhLndpdGhpbiwKCQkJCXdpdGhpbk9mZnNldCA9IHdpdGhpbi5vZmZzZXQubGVmdCArIHdpdGhpbi5zY3JvbGxMZWZ0LAoJCQkJb3V0ZXJXaWR0aCA9IHdpdGhpbi53aWR0aCwKCQkJCW9mZnNldExlZnQgPSB3aXRoaW4uaXNXaW5kb3cgPyB3aXRoaW4uc2Nyb2xsTGVmdCA6IHdpdGhpbi5vZmZzZXQubGVmdCwKCQkJCWNvbGxpc2lvblBvc0xlZnQgPSBwb3NpdGlvbi5sZWZ0IC0gZGF0YS5jb2xsaXNpb25Qb3NpdGlvbi5tYXJnaW5MZWZ0LAoJCQkJb3ZlckxlZnQgPSBjb2xsaXNpb25Qb3NMZWZ0IC0gb2Zmc2V0TGVmdCwKCQkJCW92ZXJSaWdodCA9IGNvbGxpc2lvblBvc0xlZnQgKyBkYXRhLmNvbGxpc2lvbldpZHRoIC0gb3V0ZXJXaWR0aCAtIG9mZnNldExlZnQsCgkJCQlteU9mZnNldCA9IGRhdGEubXlbIDAgXSA9PT0gImxlZnQiID8KCQkJCQktZGF0YS5lbGVtV2lkdGggOgoJCQkJCWRhdGEubXlbIDAgXSA9PT0gInJpZ2h0IiA/CgkJCQkJCWRhdGEuZWxlbVdpZHRoIDoKCQkJCQkJMCwKCQkJCWF0T2Zmc2V0ID0gZGF0YS5hdFsgMCBdID09PSAibGVmdCIgPwoJCQkJCWRhdGEudGFyZ2V0V2lkdGggOgoJCQkJCWRhdGEuYXRbIDAgXSA9PT0gInJpZ2h0IiA/CgkJCQkJCS1kYXRhLnRhcmdldFdpZHRoIDoKCQkJCQkJMCwKCQkJCW9mZnNldCA9IC0yICogZGF0YS5vZmZzZXRbIDAgXSwKCQkJCW5ld092ZXJSaWdodCwKCQkJCW5ld092ZXJMZWZ0OwoKCQkJaWYgKCBvdmVyTGVmdCA8IDAgKSB7CgkJCQluZXdPdmVyUmlnaHQgPSBwb3NpdGlvbi5sZWZ0ICsgbXlPZmZzZXQgKyBhdE9mZnNldCArIG9mZnNldCArIGRhdGEuY29sbGlzaW9uV2lkdGggLQoJCQkJCW91dGVyV2lkdGggLSB3aXRoaW5PZmZzZXQ7CgkJCQlpZiAoIG5ld092ZXJSaWdodCA8IDAgfHwgbmV3T3ZlclJpZ2h0IDwgYWJzKCBvdmVyTGVmdCApICkgewoJCQkJCXBvc2l0aW9uLmxlZnQgKz0gbXlPZmZzZXQgKyBhdE9mZnNldCArIG9mZnNldDsKCQkJCX0KCQkJfSBlbHNlIGlmICggb3ZlclJpZ2h0ID4gMCApIHsKCQkJCW5ld092ZXJMZWZ0ID0gcG9zaXRpb24ubGVmdCAtIGRhdGEuY29sbGlzaW9uUG9zaXRpb24ubWFyZ2luTGVmdCArIG15T2Zmc2V0ICsKCQkJCQlhdE9mZnNldCArIG9mZnNldCAtIG9mZnNldExlZnQ7CgkJCQlpZiAoIG5ld092ZXJMZWZ0ID4gMCB8fCBhYnMoIG5ld092ZXJMZWZ0ICkgPCBvdmVyUmlnaHQgKSB7CgkJCQkJcG9zaXRpb24ubGVmdCArPSBteU9mZnNldCArIGF0T2Zmc2V0ICsgb2Zmc2V0OwoJCQkJfQoJCQl9CgkJfSwKCQl0b3A6IGZ1bmN0aW9uKCBwb3NpdGlvbiwgZGF0YSApIHsKCQkJdmFyIHdpdGhpbiA9IGRhdGEud2l0aGluLAoJCQkJd2l0aGluT2Zmc2V0ID0gd2l0aGluLm9mZnNldC50b3AgKyB3aXRoaW4uc2Nyb2xsVG9wLAoJCQkJb3V0ZXJIZWlnaHQgPSB3aXRoaW4uaGVpZ2h0LAoJCQkJb2Zmc2V0VG9wID0gd2l0aGluLmlzV2luZG93ID8gd2l0aGluLnNjcm9sbFRvcCA6IHdpdGhpbi5vZmZzZXQudG9wLAoJCQkJY29sbGlzaW9uUG9zVG9wID0gcG9zaXRpb24udG9wIC0gZGF0YS5jb2xsaXNpb25Qb3NpdGlvbi5tYXJnaW5Ub3AsCgkJCQlvdmVyVG9wID0gY29sbGlzaW9uUG9zVG9wIC0gb2Zmc2V0VG9wLAoJCQkJb3ZlckJvdHRvbSA9IGNvbGxpc2lvblBvc1RvcCArIGRhdGEuY29sbGlzaW9uSGVpZ2h0IC0gb3V0ZXJIZWlnaHQgLSBvZmZzZXRUb3AsCgkJCQl0b3AgPSBkYXRhLm15WyAxIF0gPT09ICJ0b3AiLAoJCQkJbXlPZmZzZXQgPSB0b3AgPwoJCQkJCS1kYXRhLmVsZW1IZWlnaHQgOgoJCQkJCWRhdGEubXlbIDEgXSA9PT0gImJvdHRvbSIgPwoJCQkJCQlkYXRhLmVsZW1IZWlnaHQgOgoJCQkJCQkwLAoJCQkJYXRPZmZzZXQgPSBkYXRhLmF0WyAxIF0gPT09ICJ0b3AiID8KCQkJCQlkYXRhLnRhcmdldEhlaWdodCA6CgkJCQkJZGF0YS5hdFsgMSBdID09PSAiYm90dG9tIiA/CgkJCQkJCS1kYXRhLnRhcmdldEhlaWdodCA6CgkJCQkJCTAsCgkJCQlvZmZzZXQgPSAtMiAqIGRhdGEub2Zmc2V0WyAxIF0sCgkJCQluZXdPdmVyVG9wLAoJCQkJbmV3T3ZlckJvdHRvbTsKCQkJaWYgKCBvdmVyVG9wIDwgMCApIHsKCQkJCW5ld092ZXJCb3R0b20gPSBwb3NpdGlvbi50b3AgKyBteU9mZnNldCArIGF0T2Zmc2V0ICsgb2Zmc2V0ICsgZGF0YS5jb2xsaXNpb25IZWlnaHQgLQoJCQkJCW91dGVySGVpZ2h0IC0gd2l0aGluT2Zmc2V0OwoJCQkJaWYgKCBuZXdPdmVyQm90dG9tIDwgMCB8fCBuZXdPdmVyQm90dG9tIDwgYWJzKCBvdmVyVG9wICkgKSB7CgkJCQkJcG9zaXRpb24udG9wICs9IG15T2Zmc2V0ICsgYXRPZmZzZXQgKyBvZmZzZXQ7CgkJCQl9CgkJCX0gZWxzZSBpZiAoIG92ZXJCb3R0b20gPiAwICkgewoJCQkJbmV3T3ZlclRvcCA9IHBvc2l0aW9uLnRvcCAtIGRhdGEuY29sbGlzaW9uUG9zaXRpb24ubWFyZ2luVG9wICsgbXlPZmZzZXQgKyBhdE9mZnNldCArCgkJCQkJb2Zmc2V0IC0gb2Zmc2V0VG9wOwoJCQkJaWYgKCBuZXdPdmVyVG9wID4gMCB8fCBhYnMoIG5ld092ZXJUb3AgKSA8IG92ZXJCb3R0b20gKSB7CgkJCQkJcG9zaXRpb24udG9wICs9IG15T2Zmc2V0ICsgYXRPZmZzZXQgKyBvZmZzZXQ7CgkJCQl9CgkJCX0KCQl9Cgl9LAoJZmxpcGZpdDogewoJCWxlZnQ6IGZ1bmN0aW9uKCkgewoJCQkkLnVpLnBvc2l0aW9uLmZsaXAubGVmdC5hcHBseSggdGhpcywgYXJndW1lbnRzICk7CgkJCSQudWkucG9zaXRpb24uZml0LmxlZnQuYXBwbHkoIHRoaXMsIGFyZ3VtZW50cyApOwoJCX0sCgkJdG9wOiBmdW5jdGlvbigpIHsKCQkJJC51aS5wb3NpdGlvbi5mbGlwLnRvcC5hcHBseSggdGhpcywgYXJndW1lbnRzICk7CgkJCSQudWkucG9zaXRpb24uZml0LnRvcC5hcHBseSggdGhpcywgYXJndW1lbnRzICk7CgkJfQoJfQp9OwoKfSApKCk7Cgp2YXIgcG9zaXRpb24gPSAkLnVpLnBvc2l0aW9uOwoKCi8qIQogKiBqUXVlcnkgVUkgOmRhdGEgMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiA6ZGF0YSBTZWxlY3RvcgovLz4+Z3JvdXA6IENvcmUKLy8+PmRlc2NyaXB0aW9uOiBTZWxlY3RzIGVsZW1lbnRzIHdoaWNoIGhhdmUgZGF0YSBzdG9yZWQgdW5kZXIgdGhlIHNwZWNpZmllZCBrZXkuCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9kYXRhLXNlbGVjdG9yLwoKCnZhciBkYXRhID0gJC5leHRlbmQoICQuZXhwclsgIjoiIF0sIHsKCWRhdGE6ICQuZXhwci5jcmVhdGVQc2V1ZG8gPwoJCSQuZXhwci5jcmVhdGVQc2V1ZG8oIGZ1bmN0aW9uKCBkYXRhTmFtZSApIHsKCQkJcmV0dXJuIGZ1bmN0aW9uKCBlbGVtICkgewoJCQkJcmV0dXJuICEhJC5kYXRhKCBlbGVtLCBkYXRhTmFtZSApOwoJCQl9OwoJCX0gKSA6CgoJCS8vIFN1cHBvcnQ6IGpRdWVyeSA8MS44CgkJZnVuY3Rpb24oIGVsZW0sIGksIG1hdGNoICkgewoJCQlyZXR1cm4gISEkLmRhdGEoIGVsZW0sIG1hdGNoWyAzIF0gKTsKCQl9Cn0gKTsKCi8qIQogKiBqUXVlcnkgVUkgRGlzYWJsZSBTZWxlY3Rpb24gMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiBkaXNhYmxlU2VsZWN0aW9uCi8vPj5ncm91cDogQ29yZQovLz4+ZGVzY3JpcHRpb246IERpc2FibGUgc2VsZWN0aW9uIG9mIHRleHQgY29udGVudCB3aXRoaW4gdGhlIHNldCBvZiBtYXRjaGVkIGVsZW1lbnRzLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vZGlzYWJsZVNlbGVjdGlvbi8KCi8vIFRoaXMgZmlsZSBpcyBkZXByZWNhdGVkCgoKdmFyIGRpc2FibGVTZWxlY3Rpb24gPSAkLmZuLmV4dGVuZCggewoJZGlzYWJsZVNlbGVjdGlvbjogKCBmdW5jdGlvbigpIHsKCQl2YXIgZXZlbnRUeXBlID0gIm9uc2VsZWN0c3RhcnQiIGluIGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoICJkaXYiICkgPwoJCQkic2VsZWN0c3RhcnQiIDoKCQkJIm1vdXNlZG93biI7CgoJCXJldHVybiBmdW5jdGlvbigpIHsKCQkJcmV0dXJuIHRoaXMub24oIGV2ZW50VHlwZSArICIudWktZGlzYWJsZVNlbGVjdGlvbiIsIGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCX0gKTsKCQl9OwoJfSApKCksCgoJZW5hYmxlU2VsZWN0aW9uOiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gdGhpcy5vZmYoICIudWktZGlzYWJsZVNlbGVjdGlvbiIgKTsKCX0KfSApOwoKCi8qIQogKiBqUXVlcnkgVUkgRm9jdXNhYmxlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogOmZvY3VzYWJsZSBTZWxlY3RvcgovLz4+Z3JvdXA6IENvcmUKLy8+PmRlc2NyaXB0aW9uOiBTZWxlY3RzIGVsZW1lbnRzIHdoaWNoIGNhbiBiZSBmb2N1c2VkLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vZm9jdXNhYmxlLXNlbGVjdG9yLwoKCgovLyBTZWxlY3RvcnMKJC51aS5mb2N1c2FibGUgPSBmdW5jdGlvbiggZWxlbWVudCwgaGFzVGFiaW5kZXggKSB7Cgl2YXIgbWFwLCBtYXBOYW1lLCBpbWcsIGZvY3VzYWJsZUlmVmlzaWJsZSwgZmllbGRzZXQsCgkJbm9kZU5hbWUgPSBlbGVtZW50Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7CgoJaWYgKCAiYXJlYSIgPT09IG5vZGVOYW1lICkgewoJCW1hcCA9IGVsZW1lbnQucGFyZW50Tm9kZTsKCQltYXBOYW1lID0gbWFwLm5hbWU7CgkJaWYgKCAhZWxlbWVudC5ocmVmIHx8ICFtYXBOYW1lIHx8IG1hcC5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpICE9PSAibWFwIiApIHsKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCQlpbWcgPSAkKCAiaW1nW3VzZW1hcD0nIyIgKyBtYXBOYW1lICsgIiddIiApOwoJCXJldHVybiBpbWcubGVuZ3RoID4gMCAmJiBpbWcuaXMoICI6dmlzaWJsZSIgKTsKCX0KCglpZiAoIC9eKGlucHV0fHNlbGVjdHx0ZXh0YXJlYXxidXR0b258b2JqZWN0KSQvLnRlc3QoIG5vZGVOYW1lICkgKSB7CgkJZm9jdXNhYmxlSWZWaXNpYmxlID0gIWVsZW1lbnQuZGlzYWJsZWQ7CgoJCWlmICggZm9jdXNhYmxlSWZWaXNpYmxlICkgewoKCQkJLy8gRm9ybSBjb250cm9scyB3aXRoaW4gYSBkaXNhYmxlZCBmaWVsZHNldCBhcmUgZGlzYWJsZWQuCgkJCS8vIEhvd2V2ZXIsIGNvbnRyb2xzIHdpdGhpbiB0aGUgZmllbGRzZXQncyBsZWdlbmQgZG8gbm90IGdldCBkaXNhYmxlZC4KCQkJLy8gU2luY2UgY29udHJvbHMgZ2VuZXJhbGx5IGFyZW4ndCBwbGFjZWQgaW5zaWRlIGxlZ2VuZHMsIHdlIHNraXAKCQkJLy8gdGhpcyBwb3J0aW9uIG9mIHRoZSBjaGVjay4KCQkJZmllbGRzZXQgPSAkKCBlbGVtZW50ICkuY2xvc2VzdCggImZpZWxkc2V0IiApWyAwIF07CgkJCWlmICggZmllbGRzZXQgKSB7CgkJCQlmb2N1c2FibGVJZlZpc2libGUgPSAhZmllbGRzZXQuZGlzYWJsZWQ7CgkJCX0KCQl9Cgl9IGVsc2UgaWYgKCAiYSIgPT09IG5vZGVOYW1lICkgewoJCWZvY3VzYWJsZUlmVmlzaWJsZSA9IGVsZW1lbnQuaHJlZiB8fCBoYXNUYWJpbmRleDsKCX0gZWxzZSB7CgkJZm9jdXNhYmxlSWZWaXNpYmxlID0gaGFzVGFiaW5kZXg7Cgl9CgoJcmV0dXJuIGZvY3VzYWJsZUlmVmlzaWJsZSAmJiAkKCBlbGVtZW50ICkuaXMoICI6dmlzaWJsZSIgKSAmJiB2aXNpYmxlKCAkKCBlbGVtZW50ICkgKTsKfTsKCi8vIFN1cHBvcnQ6IElFIDggb25seQovLyBJRSA4IGRvZXNuJ3QgcmVzb2x2ZSBpbmhlcml0IHRvIHZpc2libGUvaGlkZGVuIGZvciBjb21wdXRlZCB2YWx1ZXMKZnVuY3Rpb24gdmlzaWJsZSggZWxlbWVudCApIHsKCXZhciB2aXNpYmlsaXR5ID0gZWxlbWVudC5jc3MoICJ2aXNpYmlsaXR5IiApOwoJd2hpbGUgKCB2aXNpYmlsaXR5ID09PSAiaW5oZXJpdCIgKSB7CgkJZWxlbWVudCA9IGVsZW1lbnQucGFyZW50KCk7CgkJdmlzaWJpbGl0eSA9IGVsZW1lbnQuY3NzKCAidmlzaWJpbGl0eSIgKTsKCX0KCXJldHVybiB2aXNpYmlsaXR5ICE9PSAiaGlkZGVuIjsKfQoKJC5leHRlbmQoICQuZXhwclsgIjoiIF0sIHsKCWZvY3VzYWJsZTogZnVuY3Rpb24oIGVsZW1lbnQgKSB7CgkJcmV0dXJuICQudWkuZm9jdXNhYmxlKCBlbGVtZW50LCAkLmF0dHIoIGVsZW1lbnQsICJ0YWJpbmRleCIgKSAhPSBudWxsICk7Cgl9Cn0gKTsKCnZhciBmb2N1c2FibGUgPSAkLnVpLmZvY3VzYWJsZTsKCgoKCi8vIFN1cHBvcnQ6IElFOCBPbmx5Ci8vIElFOCBkb2VzIG5vdCBzdXBwb3J0IHRoZSBmb3JtIGF0dHJpYnV0ZSBhbmQgd2hlbiBpdCBpcyBzdXBwbGllZC4gSXQgb3ZlcndyaXRlcyB0aGUgZm9ybSBwcm9wCi8vIHdpdGggYSBzdHJpbmcsIHNvIHdlIG5lZWQgdG8gZmluZCB0aGUgcHJvcGVyIGZvcm0uCnZhciBmb3JtID0gJC5mbi5mb3JtID0gZnVuY3Rpb24oKSB7CglyZXR1cm4gdHlwZW9mIHRoaXNbIDAgXS5mb3JtID09PSAic3RyaW5nIiA/IHRoaXMuY2xvc2VzdCggImZvcm0iICkgOiAkKCB0aGlzWyAwIF0uZm9ybSApOwp9OwoKCi8qIQogKiBqUXVlcnkgVUkgRm9ybSBSZXNldCBNaXhpbiAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IEZvcm0gUmVzZXQgTWl4aW4KLy8+Pmdyb3VwOiBDb3JlCi8vPj5kZXNjcmlwdGlvbjogUmVmcmVzaCBpbnB1dCB3aWRnZXRzIHdoZW4gdGhlaXIgZm9ybSBpcyByZXNldAovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vZm9ybS1yZXNldC1taXhpbi8KCgoKdmFyIGZvcm1SZXNldE1peGluID0gJC51aS5mb3JtUmVzZXRNaXhpbiA9IHsKCV9mb3JtUmVzZXRIYW5kbGVyOiBmdW5jdGlvbigpIHsKCQl2YXIgZm9ybSA9ICQoIHRoaXMgKTsKCgkJLy8gV2FpdCBmb3IgdGhlIGZvcm0gcmVzZXQgdG8gYWN0dWFsbHkgaGFwcGVuIGJlZm9yZSByZWZyZXNoaW5nCgkJc2V0VGltZW91dCggZnVuY3Rpb24oKSB7CgkJCXZhciBpbnN0YW5jZXMgPSBmb3JtLmRhdGEoICJ1aS1mb3JtLXJlc2V0LWluc3RhbmNlcyIgKTsKCQkJJC5lYWNoKCBpbnN0YW5jZXMsIGZ1bmN0aW9uKCkgewoJCQkJdGhpcy5yZWZyZXNoKCk7CgkJCX0gKTsKCQl9ICk7Cgl9LAoKCV9iaW5kRm9ybVJlc2V0SGFuZGxlcjogZnVuY3Rpb24oKSB7CgkJdGhpcy5mb3JtID0gdGhpcy5lbGVtZW50LmZvcm0oKTsKCQlpZiAoICF0aGlzLmZvcm0ubGVuZ3RoICkgewoJCQlyZXR1cm47CgkJfQoKCQl2YXIgaW5zdGFuY2VzID0gdGhpcy5mb3JtLmRhdGEoICJ1aS1mb3JtLXJlc2V0LWluc3RhbmNlcyIgKSB8fCBbXTsKCQlpZiAoICFpbnN0YW5jZXMubGVuZ3RoICkgewoKCQkJLy8gV2UgZG9uJ3QgdXNlIF9vbigpIGhlcmUgYmVjYXVzZSB3ZSB1c2UgYSBzaW5nbGUgZXZlbnQgaGFuZGxlciBwZXIgZm9ybQoJCQl0aGlzLmZvcm0ub24oICJyZXNldC51aS1mb3JtLXJlc2V0IiwgdGhpcy5fZm9ybVJlc2V0SGFuZGxlciApOwoJCX0KCQlpbnN0YW5jZXMucHVzaCggdGhpcyApOwoJCXRoaXMuZm9ybS5kYXRhKCAidWktZm9ybS1yZXNldC1pbnN0YW5jZXMiLCBpbnN0YW5jZXMgKTsKCX0sCgoJX3VuYmluZEZvcm1SZXNldEhhbmRsZXI6IGZ1bmN0aW9uKCkgewoJCWlmICggIXRoaXMuZm9ybS5sZW5ndGggKSB7CgkJCXJldHVybjsKCQl9CgoJCXZhciBpbnN0YW5jZXMgPSB0aGlzLmZvcm0uZGF0YSggInVpLWZvcm0tcmVzZXQtaW5zdGFuY2VzIiApOwoJCWluc3RhbmNlcy5zcGxpY2UoICQuaW5BcnJheSggdGhpcywgaW5zdGFuY2VzICksIDEgKTsKCQlpZiAoIGluc3RhbmNlcy5sZW5ndGggKSB7CgkJCXRoaXMuZm9ybS5kYXRhKCAidWktZm9ybS1yZXNldC1pbnN0YW5jZXMiLCBpbnN0YW5jZXMgKTsKCQl9IGVsc2UgewoJCQl0aGlzLmZvcm0KCQkJCS5yZW1vdmVEYXRhKCAidWktZm9ybS1yZXNldC1pbnN0YW5jZXMiICkKCQkJCS5vZmYoICJyZXNldC51aS1mb3JtLXJlc2V0IiApOwoJCX0KCX0KfTsKCgovKiEKICogalF1ZXJ5IFVJIFN1cHBvcnQgZm9yIGpRdWVyeSBjb3JlIDEuNy54IDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKgogKi8KCi8vPj5sYWJlbDogalF1ZXJ5IDEuNyBTdXBwb3J0Ci8vPj5ncm91cDogQ29yZQovLz4+ZGVzY3JpcHRpb246IFN1cHBvcnQgdmVyc2lvbiAxLjcueCBvZiBqUXVlcnkgY29yZQoKCgovLyBTdXBwb3J0OiBqUXVlcnkgMS43IG9ubHkKLy8gTm90IGEgZ3JlYXQgd2F5IHRvIGNoZWNrIHZlcnNpb25zLCBidXQgc2luY2Ugd2Ugb25seSBzdXBwb3J0IDEuNysgYW5kIG9ubHkKLy8gbmVlZCB0byBkZXRlY3QgPDEuOCwgdGhpcyBpcyBhIHNpbXBsZSBjaGVjayB0aGF0IHNob3VsZCBzdWZmaWNlLiBDaGVja2luZwovLyBmb3IgIjEuNy4iIHdvdWxkIGJlIGEgYml0IHNhZmVyLCBidXQgdGhlIHZlcnNpb24gc3RyaW5nIGlzIDEuNywgbm90IDEuNy4wCi8vIGFuZCB3ZSdsbCBuZXZlciByZWFjaCAxLjcwLjAgKGlmIHdlIGRvLCB3ZSBjZXJ0YWlubHkgd29uJ3QgYmUgc3VwcG9ydGluZwovLyAxLjcgYW55bW9yZSkuIFNlZSAjMTExOTcgZm9yIHdoeSB3ZSdyZSBub3QgdXNpbmcgZmVhdHVyZSBkZXRlY3Rpb24uCmlmICggJC5mbi5qcXVlcnkuc3Vic3RyaW5nKCAwLCAzICkgPT09ICIxLjciICkgewoKCS8vIFNldHRlcnMgZm9yIC5pbm5lcldpZHRoKCksIC5pbm5lckhlaWdodCgpLCAub3V0ZXJXaWR0aCgpLCAub3V0ZXJIZWlnaHQoKQoJLy8gVW5saWtlIGpRdWVyeSBDb3JlIDEuOCssIHRoZXNlIG9ubHkgc3VwcG9ydCBudW1lcmljIHZhbHVlcyB0byBzZXQgdGhlCgkvLyBkaW1lbnNpb25zIGluIHBpeGVscwoJJC5lYWNoKCBbICJXaWR0aCIsICJIZWlnaHQiIF0sIGZ1bmN0aW9uKCBpLCBuYW1lICkgewoJCXZhciBzaWRlID0gbmFtZSA9PT0gIldpZHRoIiA/IFsgIkxlZnQiLCAiUmlnaHQiIF0gOiBbICJUb3AiLCAiQm90dG9tIiBdLAoJCQl0eXBlID0gbmFtZS50b0xvd2VyQ2FzZSgpLAoJCQlvcmlnID0gewoJCQkJaW5uZXJXaWR0aDogJC5mbi5pbm5lcldpZHRoLAoJCQkJaW5uZXJIZWlnaHQ6ICQuZm4uaW5uZXJIZWlnaHQsCgkJCQlvdXRlcldpZHRoOiAkLmZuLm91dGVyV2lkdGgsCgkJCQlvdXRlckhlaWdodDogJC5mbi5vdXRlckhlaWdodAoJCQl9OwoKCQlmdW5jdGlvbiByZWR1Y2UoIGVsZW0sIHNpemUsIGJvcmRlciwgbWFyZ2luICkgewoJCQkkLmVhY2goIHNpZGUsIGZ1bmN0aW9uKCkgewoJCQkJc2l6ZSAtPSBwYXJzZUZsb2F0KCAkLmNzcyggZWxlbSwgInBhZGRpbmciICsgdGhpcyApICkgfHwgMDsKCQkJCWlmICggYm9yZGVyICkgewoJCQkJCXNpemUgLT0gcGFyc2VGbG9hdCggJC5jc3MoIGVsZW0sICJib3JkZXIiICsgdGhpcyArICJXaWR0aCIgKSApIHx8IDA7CgkJCQl9CgkJCQlpZiAoIG1hcmdpbiApIHsKCQkJCQlzaXplIC09IHBhcnNlRmxvYXQoICQuY3NzKCBlbGVtLCAibWFyZ2luIiArIHRoaXMgKSApIHx8IDA7CgkJCQl9CgkJCX0gKTsKCQkJcmV0dXJuIHNpemU7CgkJfQoKCQkkLmZuWyAiaW5uZXIiICsgbmFtZSBdID0gZnVuY3Rpb24oIHNpemUgKSB7CgkJCWlmICggc2l6ZSA9PT0gdW5kZWZpbmVkICkgewoJCQkJcmV0dXJuIG9yaWdbICJpbm5lciIgKyBuYW1lIF0uY2FsbCggdGhpcyApOwoJCQl9CgoJCQlyZXR1cm4gdGhpcy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCSQoIHRoaXMgKS5jc3MoIHR5cGUsIHJlZHVjZSggdGhpcywgc2l6ZSApICsgInB4IiApOwoJCQl9ICk7CgkJfTsKCgkJJC5mblsgIm91dGVyIiArIG5hbWUgXSA9IGZ1bmN0aW9uKCBzaXplLCBtYXJnaW4gKSB7CgkJCWlmICggdHlwZW9mIHNpemUgIT09ICJudW1iZXIiICkgewoJCQkJcmV0dXJuIG9yaWdbICJvdXRlciIgKyBuYW1lIF0uY2FsbCggdGhpcywgc2l6ZSApOwoJCQl9CgoJCQlyZXR1cm4gdGhpcy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCSQoIHRoaXMgKS5jc3MoIHR5cGUsIHJlZHVjZSggdGhpcywgc2l6ZSwgdHJ1ZSwgbWFyZ2luICkgKyAicHgiICk7CgkJCX0gKTsKCQl9OwoJfSApOwoKCSQuZm4uYWRkQmFjayA9IGZ1bmN0aW9uKCBzZWxlY3RvciApIHsKCQlyZXR1cm4gdGhpcy5hZGQoIHNlbGVjdG9yID09IG51bGwgPwoJCQl0aGlzLnByZXZPYmplY3QgOiB0aGlzLnByZXZPYmplY3QuZmlsdGVyKCBzZWxlY3RvciApCgkJKTsKCX07Cn0KCjsKLyohCiAqIGpRdWVyeSBVSSBLZXljb2RlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogS2V5Y29kZQovLz4+Z3JvdXA6IENvcmUKLy8+PmRlc2NyaXB0aW9uOiBQcm92aWRlIGtleWNvZGVzIGFzIGtleW5hbWVzCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9qUXVlcnkudWkua2V5Q29kZS8KCgp2YXIga2V5Y29kZSA9ICQudWkua2V5Q29kZSA9IHsKCUJBQ0tTUEFDRTogOCwKCUNPTU1BOiAxODgsCglERUxFVEU6IDQ2LAoJRE9XTjogNDAsCglFTkQ6IDM1LAoJRU5URVI6IDEzLAoJRVNDQVBFOiAyNywKCUhPTUU6IDM2LAoJTEVGVDogMzcsCglQQUdFX0RPV046IDM0LAoJUEFHRV9VUDogMzMsCglQRVJJT0Q6IDE5MCwKCVJJR0hUOiAzOSwKCVNQQUNFOiAzMiwKCVRBQjogOSwKCVVQOiAzOAp9OwoKCgoKLy8gSW50ZXJuYWwgdXNlIG9ubHkKdmFyIGVzY2FwZVNlbGVjdG9yID0gJC51aS5lc2NhcGVTZWxlY3RvciA9ICggZnVuY3Rpb24oKSB7Cgl2YXIgc2VsZWN0b3JFc2NhcGUgPSAvKFshIiMkJSYnKCkqKywuLzo7PD0+P0BbXF1eYHt8fX5dKS9nOwoJcmV0dXJuIGZ1bmN0aW9uKCBzZWxlY3RvciApIHsKCQlyZXR1cm4gc2VsZWN0b3IucmVwbGFjZSggc2VsZWN0b3JFc2NhcGUsICJcXCQxIiApOwoJfTsKfSApKCk7CgoKLyohCiAqIGpRdWVyeSBVSSBMYWJlbHMgMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiBsYWJlbHMKLy8+Pmdyb3VwOiBDb3JlCi8vPj5kZXNjcmlwdGlvbjogRmluZCBhbGwgdGhlIGxhYmVscyBhc3NvY2lhdGVkIHdpdGggYSBnaXZlbiBpbnB1dAovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vbGFiZWxzLwoKCgp2YXIgbGFiZWxzID0gJC5mbi5sYWJlbHMgPSBmdW5jdGlvbigpIHsKCXZhciBhbmNlc3Rvciwgc2VsZWN0b3IsIGlkLCBsYWJlbHMsIGFuY2VzdG9yczsKCgkvLyBDaGVjayBjb250cm9sLmxhYmVscyBmaXJzdAoJaWYgKCB0aGlzWyAwIF0ubGFiZWxzICYmIHRoaXNbIDAgXS5sYWJlbHMubGVuZ3RoICkgewoJCXJldHVybiB0aGlzLnB1c2hTdGFjayggdGhpc1sgMCBdLmxhYmVscyApOwoJfQoKCS8vIFN1cHBvcnQ6IElFIDw9IDExLCBGRiA8PSAzNywgQW5kcm9pZCA8PSAyLjMgb25seQoJLy8gQWJvdmUgYnJvd3NlcnMgZG8gbm90IHN1cHBvcnQgY29udHJvbC5sYWJlbHMuIEV2ZXJ5dGhpbmcgYmVsb3cgaXMgdG8gc3VwcG9ydCB0aGVtCgkvLyBhcyB3ZWxsIGFzIGRvY3VtZW50IGZyYWdtZW50cy4gY29udHJvbC5sYWJlbHMgZG9lcyBub3Qgd29yayBvbiBkb2N1bWVudCBmcmFnbWVudHMKCWxhYmVscyA9IHRoaXMuZXEoIDAgKS5wYXJlbnRzKCAibGFiZWwiICk7CgoJLy8gTG9vayBmb3IgdGhlIGxhYmVsIGJhc2VkIG9uIHRoZSBpZAoJaWQgPSB0aGlzLmF0dHIoICJpZCIgKTsKCWlmICggaWQgKSB7CgoJCS8vIFdlIGRvbid0IHNlYXJjaCBhZ2FpbnN0IHRoZSBkb2N1bWVudCBpbiBjYXNlIHRoZSBlbGVtZW50CgkJLy8gaXMgZGlzY29ubmVjdGVkIGZyb20gdGhlIERPTQoJCWFuY2VzdG9yID0gdGhpcy5lcSggMCApLnBhcmVudHMoKS5sYXN0KCk7CgoJCS8vIEdldCBhIGZ1bGwgc2V0IG9mIHRvcCBsZXZlbCBhbmNlc3RvcnMKCQlhbmNlc3RvcnMgPSBhbmNlc3Rvci5hZGQoIGFuY2VzdG9yLmxlbmd0aCA/IGFuY2VzdG9yLnNpYmxpbmdzKCkgOiB0aGlzLnNpYmxpbmdzKCkgKTsKCgkJLy8gQ3JlYXRlIGEgc2VsZWN0b3IgZm9yIHRoZSBsYWJlbCBiYXNlZCBvbiB0aGUgaWQKCQlzZWxlY3RvciA9ICJsYWJlbFtmb3I9JyIgKyAkLnVpLmVzY2FwZVNlbGVjdG9yKCBpZCApICsgIiddIjsKCgkJbGFiZWxzID0gbGFiZWxzLmFkZCggYW5jZXN0b3JzLmZpbmQoIHNlbGVjdG9yICkuYWRkQmFjayggc2VsZWN0b3IgKSApOwoKCX0KCgkvLyBSZXR1cm4gd2hhdGV2ZXIgd2UgaGF2ZSBmb3VuZCBmb3IgbGFiZWxzCglyZXR1cm4gdGhpcy5wdXNoU3RhY2soIGxhYmVscyApOwp9OwoKCi8qIQogKiBqUXVlcnkgVUkgU2Nyb2xsIFBhcmVudCAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IHNjcm9sbFBhcmVudAovLz4+Z3JvdXA6IENvcmUKLy8+PmRlc2NyaXB0aW9uOiBHZXQgdGhlIGNsb3Nlc3QgYW5jZXN0b3IgZWxlbWVudCB0aGF0IGlzIHNjcm9sbGFibGUuCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9zY3JvbGxQYXJlbnQvCgoKCnZhciBzY3JvbGxQYXJlbnQgPSAkLmZuLnNjcm9sbFBhcmVudCA9IGZ1bmN0aW9uKCBpbmNsdWRlSGlkZGVuICkgewoJdmFyIHBvc2l0aW9uID0gdGhpcy5jc3MoICJwb3NpdGlvbiIgKSwKCQlleGNsdWRlU3RhdGljUGFyZW50ID0gcG9zaXRpb24gPT09ICJhYnNvbHV0ZSIsCgkJb3ZlcmZsb3dSZWdleCA9IGluY2x1ZGVIaWRkZW4gPyAvKGF1dG98c2Nyb2xsfGhpZGRlbikvIDogLyhhdXRvfHNjcm9sbCkvLAoJCXNjcm9sbFBhcmVudCA9IHRoaXMucGFyZW50cygpLmZpbHRlciggZnVuY3Rpb24oKSB7CgkJCXZhciBwYXJlbnQgPSAkKCB0aGlzICk7CgkJCWlmICggZXhjbHVkZVN0YXRpY1BhcmVudCAmJiBwYXJlbnQuY3NzKCAicG9zaXRpb24iICkgPT09ICJzdGF0aWMiICkgewoJCQkJcmV0dXJuIGZhbHNlOwoJCQl9CgkJCXJldHVybiBvdmVyZmxvd1JlZ2V4LnRlc3QoIHBhcmVudC5jc3MoICJvdmVyZmxvdyIgKSArIHBhcmVudC5jc3MoICJvdmVyZmxvdy15IiApICsKCQkJCXBhcmVudC5jc3MoICJvdmVyZmxvdy14IiApICk7CgkJfSApLmVxKCAwICk7CgoJcmV0dXJuIHBvc2l0aW9uID09PSAiZml4ZWQiIHx8ICFzY3JvbGxQYXJlbnQubGVuZ3RoID8KCQkkKCB0aGlzWyAwIF0ub3duZXJEb2N1bWVudCB8fCBkb2N1bWVudCApIDoKCQlzY3JvbGxQYXJlbnQ7Cn07CgoKLyohCiAqIGpRdWVyeSBVSSBUYWJiYWJsZSAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IDp0YWJiYWJsZSBTZWxlY3RvcgovLz4+Z3JvdXA6IENvcmUKLy8+PmRlc2NyaXB0aW9uOiBTZWxlY3RzIGVsZW1lbnRzIHdoaWNoIGNhbiBiZSB0YWJiZWQgdG8uCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS90YWJiYWJsZS1zZWxlY3Rvci8KCgoKdmFyIHRhYmJhYmxlID0gJC5leHRlbmQoICQuZXhwclsgIjoiIF0sIHsKCXRhYmJhYmxlOiBmdW5jdGlvbiggZWxlbWVudCApIHsKCQl2YXIgdGFiSW5kZXggPSAkLmF0dHIoIGVsZW1lbnQsICJ0YWJpbmRleCIgKSwKCQkJaGFzVGFiaW5kZXggPSB0YWJJbmRleCAhPSBudWxsOwoJCXJldHVybiAoICFoYXNUYWJpbmRleCB8fCB0YWJJbmRleCA+PSAwICkgJiYgJC51aS5mb2N1c2FibGUoIGVsZW1lbnQsIGhhc1RhYmluZGV4ICk7Cgl9Cn0gKTsKCgovKiEKICogalF1ZXJ5IFVJIFVuaXF1ZSBJRCAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IHVuaXF1ZUlkCi8vPj5ncm91cDogQ29yZQovLz4+ZGVzY3JpcHRpb246IEZ1bmN0aW9ucyB0byBnZW5lcmF0ZSBhbmQgcmVtb3ZlIHVuaXF1ZUlkJ3MKLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3VuaXF1ZUlkLwoKCgp2YXIgdW5pcXVlSWQgPSAkLmZuLmV4dGVuZCggewoJdW5pcXVlSWQ6ICggZnVuY3Rpb24oKSB7CgkJdmFyIHV1aWQgPSAwOwoKCQlyZXR1cm4gZnVuY3Rpb24oKSB7CgkJCXJldHVybiB0aGlzLmVhY2goIGZ1bmN0aW9uKCkgewoJCQkJaWYgKCAhdGhpcy5pZCApIHsKCQkJCQl0aGlzLmlkID0gInVpLWlkLSIgKyAoICsrdXVpZCApOwoJCQkJfQoJCQl9ICk7CgkJfTsKCX0gKSgpLAoKCXJlbW92ZVVuaXF1ZUlkOiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gdGhpcy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJaWYgKCAvXnVpLWlkLVxkKyQvLnRlc3QoIHRoaXMuaWQgKSApIHsKCQkJCSQoIHRoaXMgKS5yZW1vdmVBdHRyKCAiaWQiICk7CgkJCX0KCQl9ICk7Cgl9Cn0gKTsKCgoKCi8vIFRoaXMgZmlsZSBpcyBkZXByZWNhdGVkCnZhciBpZSA9ICQudWkuaWUgPSAhIS9tc2llIFtcdy5dKy8uZXhlYyggbmF2aWdhdG9yLnVzZXJBZ2VudC50b0xvd2VyQ2FzZSgpICk7CgovKiEKICogalF1ZXJ5IFVJIE1vdXNlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogTW91c2UKLy8+Pmdyb3VwOiBXaWRnZXRzCi8vPj5kZXNjcmlwdGlvbjogQWJzdHJhY3RzIG1vdXNlLWJhc2VkIGludGVyYWN0aW9ucyB0byBhc3Npc3QgaW4gY3JlYXRpbmcgY2VydGFpbiB3aWRnZXRzLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vbW91c2UvCgoKCnZhciBtb3VzZUhhbmRsZWQgPSBmYWxzZTsKJCggZG9jdW1lbnQgKS5vbiggIm1vdXNldXAiLCBmdW5jdGlvbigpIHsKCW1vdXNlSGFuZGxlZCA9IGZhbHNlOwp9ICk7Cgp2YXIgd2lkZ2V0c01vdXNlID0gJC53aWRnZXQoICJ1aS5tb3VzZSIsIHsKCXZlcnNpb246ICIxLjEyLjEiLAoJb3B0aW9uczogewoJCWNhbmNlbDogImlucHV0LCB0ZXh0YXJlYSwgYnV0dG9uLCBzZWxlY3QsIG9wdGlvbiIsCgkJZGlzdGFuY2U6IDEsCgkJZGVsYXk6IDAKCX0sCglfbW91c2VJbml0OiBmdW5jdGlvbigpIHsKCQl2YXIgdGhhdCA9IHRoaXM7CgoJCXRoaXMuZWxlbWVudAoJCQkub24oICJtb3VzZWRvd24uIiArIHRoaXMud2lkZ2V0TmFtZSwgZnVuY3Rpb24oIGV2ZW50ICkgewoJCQkJcmV0dXJuIHRoYXQuX21vdXNlRG93biggZXZlbnQgKTsKCQkJfSApCgkJCS5vbiggImNsaWNrLiIgKyB0aGlzLndpZGdldE5hbWUsIGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCWlmICggdHJ1ZSA9PT0gJC5kYXRhKCBldmVudC50YXJnZXQsIHRoYXQud2lkZ2V0TmFtZSArICIucHJldmVudENsaWNrRXZlbnQiICkgKSB7CgkJCQkJJC5yZW1vdmVEYXRhKCBldmVudC50YXJnZXQsIHRoYXQud2lkZ2V0TmFtZSArICIucHJldmVudENsaWNrRXZlbnQiICk7CgkJCQkJZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7CgkJCQkJcmV0dXJuIGZhbHNlOwoJCQkJfQoJCQl9ICk7CgoJCXRoaXMuc3RhcnRlZCA9IGZhbHNlOwoJfSwKCgkvLyBUT0RPOiBtYWtlIHN1cmUgZGVzdHJveWluZyBvbmUgaW5zdGFuY2Ugb2YgbW91c2UgZG9lc24ndCBtZXNzIHdpdGgKCS8vIG90aGVyIGluc3RhbmNlcyBvZiBtb3VzZQoJX21vdXNlRGVzdHJveTogZnVuY3Rpb24oKSB7CgkJdGhpcy5lbGVtZW50Lm9mZiggIi4iICsgdGhpcy53aWRnZXROYW1lICk7CgkJaWYgKCB0aGlzLl9tb3VzZU1vdmVEZWxlZ2F0ZSApIHsKCQkJdGhpcy5kb2N1bWVudAoJCQkJLm9mZiggIm1vdXNlbW92ZS4iICsgdGhpcy53aWRnZXROYW1lLCB0aGlzLl9tb3VzZU1vdmVEZWxlZ2F0ZSApCgkJCQkub2ZmKCAibW91c2V1cC4iICsgdGhpcy53aWRnZXROYW1lLCB0aGlzLl9tb3VzZVVwRGVsZWdhdGUgKTsKCQl9Cgl9LAoKCV9tb3VzZURvd246IGZ1bmN0aW9uKCBldmVudCApIHsKCgkJLy8gZG9uJ3QgbGV0IG1vcmUgdGhhbiBvbmUgd2lkZ2V0IGhhbmRsZSBtb3VzZVN0YXJ0CgkJaWYgKCBtb3VzZUhhbmRsZWQgKSB7CgkJCXJldHVybjsKCQl9CgoJCXRoaXMuX21vdXNlTW92ZWQgPSBmYWxzZTsKCgkJLy8gV2UgbWF5IGhhdmUgbWlzc2VkIG1vdXNldXAgKG91dCBvZiB3aW5kb3cpCgkJKCB0aGlzLl9tb3VzZVN0YXJ0ZWQgJiYgdGhpcy5fbW91c2VVcCggZXZlbnQgKSApOwoKCQl0aGlzLl9tb3VzZURvd25FdmVudCA9IGV2ZW50OwoKCQl2YXIgdGhhdCA9IHRoaXMsCgkJCWJ0bklzTGVmdCA9ICggZXZlbnQud2hpY2ggPT09IDEgKSwKCgkJCS8vIGV2ZW50LnRhcmdldC5ub2RlTmFtZSB3b3JrcyBhcm91bmQgYSBidWcgaW4gSUUgOCB3aXRoCgkJCS8vIGRpc2FibGVkIGlucHV0cyAoIzc2MjApCgkJCWVsSXNDYW5jZWwgPSAoIHR5cGVvZiB0aGlzLm9wdGlvbnMuY2FuY2VsID09PSAic3RyaW5nIiAmJiBldmVudC50YXJnZXQubm9kZU5hbWUgPwoJCQkJJCggZXZlbnQudGFyZ2V0ICkuY2xvc2VzdCggdGhpcy5vcHRpb25zLmNhbmNlbCApLmxlbmd0aCA6IGZhbHNlICk7CgkJaWYgKCAhYnRuSXNMZWZ0IHx8IGVsSXNDYW5jZWwgfHwgIXRoaXMuX21vdXNlQ2FwdHVyZSggZXZlbnQgKSApIHsKCQkJcmV0dXJuIHRydWU7CgkJfQoKCQl0aGlzLm1vdXNlRGVsYXlNZXQgPSAhdGhpcy5vcHRpb25zLmRlbGF5OwoJCWlmICggIXRoaXMubW91c2VEZWxheU1ldCApIHsKCQkJdGhpcy5fbW91c2VEZWxheVRpbWVyID0gc2V0VGltZW91dCggZnVuY3Rpb24oKSB7CgkJCQl0aGF0Lm1vdXNlRGVsYXlNZXQgPSB0cnVlOwoJCQl9LCB0aGlzLm9wdGlvbnMuZGVsYXkgKTsKCQl9CgoJCWlmICggdGhpcy5fbW91c2VEaXN0YW5jZU1ldCggZXZlbnQgKSAmJiB0aGlzLl9tb3VzZURlbGF5TWV0KCBldmVudCApICkgewoJCQl0aGlzLl9tb3VzZVN0YXJ0ZWQgPSAoIHRoaXMuX21vdXNlU3RhcnQoIGV2ZW50ICkgIT09IGZhbHNlICk7CgkJCWlmICggIXRoaXMuX21vdXNlU3RhcnRlZCApIHsKCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCQlyZXR1cm4gdHJ1ZTsKCQkJfQoJCX0KCgkJLy8gQ2xpY2sgZXZlbnQgbWF5IG5ldmVyIGhhdmUgZmlyZWQgKEdlY2tvICYgT3BlcmEpCgkJaWYgKCB0cnVlID09PSAkLmRhdGEoIGV2ZW50LnRhcmdldCwgdGhpcy53aWRnZXROYW1lICsgIi5wcmV2ZW50Q2xpY2tFdmVudCIgKSApIHsKCQkJJC5yZW1vdmVEYXRhKCBldmVudC50YXJnZXQsIHRoaXMud2lkZ2V0TmFtZSArICIucHJldmVudENsaWNrRXZlbnQiICk7CgkJfQoKCQkvLyBUaGVzZSBkZWxlZ2F0ZXMgYXJlIHJlcXVpcmVkIHRvIGtlZXAgY29udGV4dAoJCXRoaXMuX21vdXNlTW92ZURlbGVnYXRlID0gZnVuY3Rpb24oIGV2ZW50ICkgewoJCQlyZXR1cm4gdGhhdC5fbW91c2VNb3ZlKCBldmVudCApOwoJCX07CgkJdGhpcy5fbW91c2VVcERlbGVnYXRlID0gZnVuY3Rpb24oIGV2ZW50ICkgewoJCQlyZXR1cm4gdGhhdC5fbW91c2VVcCggZXZlbnQgKTsKCQl9OwoKCQl0aGlzLmRvY3VtZW50CgkJCS5vbiggIm1vdXNlbW92ZS4iICsgdGhpcy53aWRnZXROYW1lLCB0aGlzLl9tb3VzZU1vdmVEZWxlZ2F0ZSApCgkJCS5vbiggIm1vdXNldXAuIiArIHRoaXMud2lkZ2V0TmFtZSwgdGhpcy5fbW91c2VVcERlbGVnYXRlICk7CgoJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgoJCW1vdXNlSGFuZGxlZCA9IHRydWU7CgkJcmV0dXJuIHRydWU7Cgl9LAoKCV9tb3VzZU1vdmU6IGZ1bmN0aW9uKCBldmVudCApIHsKCgkJLy8gT25seSBjaGVjayBmb3IgbW91c2V1cHMgb3V0c2lkZSB0aGUgZG9jdW1lbnQgaWYgeW91J3ZlIG1vdmVkIGluc2lkZSB0aGUgZG9jdW1lbnQKCQkvLyBhdCBsZWFzdCBvbmNlLiBUaGlzIHByZXZlbnRzIHRoZSBmaXJpbmcgb2YgbW91c2V1cCBpbiB0aGUgY2FzZSBvZiBJRTw5LCB3aGljaCB3aWxsCgkJLy8gZmlyZSBhIG1vdXNlbW92ZSBldmVudCBpZiBjb250ZW50IGlzIHBsYWNlZCB1bmRlciB0aGUgY3Vyc29yLiBTZWUgIzc3NzgKCQkvLyBTdXBwb3J0OiBJRSA8OQoJCWlmICggdGhpcy5fbW91c2VNb3ZlZCApIHsKCgkJCS8vIElFIG1vdXNldXAgY2hlY2sgLSBtb3VzZXVwIGhhcHBlbmVkIHdoZW4gbW91c2Ugd2FzIG91dCBvZiB3aW5kb3cKCQkJaWYgKCAkLnVpLmllICYmICggIWRvY3VtZW50LmRvY3VtZW50TW9kZSB8fCBkb2N1bWVudC5kb2N1bWVudE1vZGUgPCA5ICkgJiYKCQkJCQkhZXZlbnQuYnV0dG9uICkgewoJCQkJcmV0dXJuIHRoaXMuX21vdXNlVXAoIGV2ZW50ICk7CgoJCQkvLyBJZnJhbWUgbW91c2V1cCBjaGVjayAtIG1vdXNldXAgb2NjdXJyZWQgaW4gYW5vdGhlciBkb2N1bWVudAoJCQl9IGVsc2UgaWYgKCAhZXZlbnQud2hpY2ggKSB7CgoJCQkJLy8gU3VwcG9ydDogU2FmYXJpIDw9OCAtIDkKCQkJCS8vIFNhZmFyaSBzZXRzIHdoaWNoIHRvIDAgaWYgeW91IHByZXNzIGFueSBvZiB0aGUgZm9sbG93aW5nIGtleXMKCQkJCS8vIGR1cmluZyBhIGRyYWcgKCMxNDQ2MSkKCQkJCWlmICggZXZlbnQub3JpZ2luYWxFdmVudC5hbHRLZXkgfHwgZXZlbnQub3JpZ2luYWxFdmVudC5jdHJsS2V5IHx8CgkJCQkJCWV2ZW50Lm9yaWdpbmFsRXZlbnQubWV0YUtleSB8fCBldmVudC5vcmlnaW5hbEV2ZW50LnNoaWZ0S2V5ICkgewoJCQkJCXRoaXMuaWdub3JlTWlzc2luZ1doaWNoID0gdHJ1ZTsKCQkJCX0gZWxzZSBpZiAoICF0aGlzLmlnbm9yZU1pc3NpbmdXaGljaCApIHsKCQkJCQlyZXR1cm4gdGhpcy5fbW91c2VVcCggZXZlbnQgKTsKCQkJCX0KCQkJfQoJCX0KCgkJaWYgKCBldmVudC53aGljaCB8fCBldmVudC5idXR0b24gKSB7CgkJCXRoaXMuX21vdXNlTW92ZWQgPSB0cnVlOwoJCX0KCgkJaWYgKCB0aGlzLl9tb3VzZVN0YXJ0ZWQgKSB7CgkJCXRoaXMuX21vdXNlRHJhZyggZXZlbnQgKTsKCQkJcmV0dXJuIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJfQoKCQlpZiAoIHRoaXMuX21vdXNlRGlzdGFuY2VNZXQoIGV2ZW50ICkgJiYgdGhpcy5fbW91c2VEZWxheU1ldCggZXZlbnQgKSApIHsKCQkJdGhpcy5fbW91c2VTdGFydGVkID0KCQkJCSggdGhpcy5fbW91c2VTdGFydCggdGhpcy5fbW91c2VEb3duRXZlbnQsIGV2ZW50ICkgIT09IGZhbHNlICk7CgkJCSggdGhpcy5fbW91c2VTdGFydGVkID8gdGhpcy5fbW91c2VEcmFnKCBldmVudCApIDogdGhpcy5fbW91c2VVcCggZXZlbnQgKSApOwoJCX0KCgkJcmV0dXJuICF0aGlzLl9tb3VzZVN0YXJ0ZWQ7Cgl9LAoKCV9tb3VzZVVwOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdGhpcy5kb2N1bWVudAoJCQkub2ZmKCAibW91c2Vtb3ZlLiIgKyB0aGlzLndpZGdldE5hbWUsIHRoaXMuX21vdXNlTW92ZURlbGVnYXRlICkKCQkJLm9mZiggIm1vdXNldXAuIiArIHRoaXMud2lkZ2V0TmFtZSwgdGhpcy5fbW91c2VVcERlbGVnYXRlICk7CgoJCWlmICggdGhpcy5fbW91c2VTdGFydGVkICkgewoJCQl0aGlzLl9tb3VzZVN0YXJ0ZWQgPSBmYWxzZTsKCgkJCWlmICggZXZlbnQudGFyZ2V0ID09PSB0aGlzLl9tb3VzZURvd25FdmVudC50YXJnZXQgKSB7CgkJCQkkLmRhdGEoIGV2ZW50LnRhcmdldCwgdGhpcy53aWRnZXROYW1lICsgIi5wcmV2ZW50Q2xpY2tFdmVudCIsIHRydWUgKTsKCQkJfQoKCQkJdGhpcy5fbW91c2VTdG9wKCBldmVudCApOwoJCX0KCgkJaWYgKCB0aGlzLl9tb3VzZURlbGF5VGltZXIgKSB7CgkJCWNsZWFyVGltZW91dCggdGhpcy5fbW91c2VEZWxheVRpbWVyICk7CgkJCWRlbGV0ZSB0aGlzLl9tb3VzZURlbGF5VGltZXI7CgkJfQoKCQl0aGlzLmlnbm9yZU1pc3NpbmdXaGljaCA9IGZhbHNlOwoJCW1vdXNlSGFuZGxlZCA9IGZhbHNlOwoJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7Cgl9LAoKCV9tb3VzZURpc3RhbmNlTWV0OiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJcmV0dXJuICggTWF0aC5tYXgoCgkJCQlNYXRoLmFicyggdGhpcy5fbW91c2VEb3duRXZlbnQucGFnZVggLSBldmVudC5wYWdlWCApLAoJCQkJTWF0aC5hYnMoIHRoaXMuX21vdXNlRG93bkV2ZW50LnBhZ2VZIC0gZXZlbnQucGFnZVkgKQoJCQkpID49IHRoaXMub3B0aW9ucy5kaXN0YW5jZQoJCSk7Cgl9LAoKCV9tb3VzZURlbGF5TWV0OiBmdW5jdGlvbiggLyogZXZlbnQgKi8gKSB7CgkJcmV0dXJuIHRoaXMubW91c2VEZWxheU1ldDsKCX0sCgoJLy8gVGhlc2UgYXJlIHBsYWNlaG9sZGVyIG1ldGhvZHMsIHRvIGJlIG92ZXJyaWRlbiBieSBleHRlbmRpbmcgcGx1Z2luCglfbW91c2VTdGFydDogZnVuY3Rpb24oIC8qIGV2ZW50ICovICkge30sCglfbW91c2VEcmFnOiBmdW5jdGlvbiggLyogZXZlbnQgKi8gKSB7fSwKCV9tb3VzZVN0b3A6IGZ1bmN0aW9uKCAvKiBldmVudCAqLyApIHt9LAoJX21vdXNlQ2FwdHVyZTogZnVuY3Rpb24oIC8qIGV2ZW50ICovICkgeyByZXR1cm4gdHJ1ZTsgfQp9ICk7CgoKCgovLyAkLnVpLnBsdWdpbiBpcyBkZXByZWNhdGVkLiBVc2UgJC53aWRnZXQoKSBleHRlbnNpb25zIGluc3RlYWQuCnZhciBwbHVnaW4gPSAkLnVpLnBsdWdpbiA9IHsKCWFkZDogZnVuY3Rpb24oIG1vZHVsZSwgb3B0aW9uLCBzZXQgKSB7CgkJdmFyIGksCgkJCXByb3RvID0gJC51aVsgbW9kdWxlIF0ucHJvdG90eXBlOwoJCWZvciAoIGkgaW4gc2V0ICkgewoJCQlwcm90by5wbHVnaW5zWyBpIF0gPSBwcm90by5wbHVnaW5zWyBpIF0gfHwgW107CgkJCXByb3RvLnBsdWdpbnNbIGkgXS5wdXNoKCBbIG9wdGlvbiwgc2V0WyBpIF0gXSApOwoJCX0KCX0sCgljYWxsOiBmdW5jdGlvbiggaW5zdGFuY2UsIG5hbWUsIGFyZ3MsIGFsbG93RGlzY29ubmVjdGVkICkgewoJCXZhciBpLAoJCQlzZXQgPSBpbnN0YW5jZS5wbHVnaW5zWyBuYW1lIF07CgoJCWlmICggIXNldCApIHsKCQkJcmV0dXJuOwoJCX0KCgkJaWYgKCAhYWxsb3dEaXNjb25uZWN0ZWQgJiYgKCAhaW5zdGFuY2UuZWxlbWVudFsgMCBdLnBhcmVudE5vZGUgfHwKCQkJCWluc3RhbmNlLmVsZW1lbnRbIDAgXS5wYXJlbnROb2RlLm5vZGVUeXBlID09PSAxMSApICkgewoJCQlyZXR1cm47CgkJfQoKCQlmb3IgKCBpID0gMDsgaSA8IHNldC5sZW5ndGg7IGkrKyApIHsKCQkJaWYgKCBpbnN0YW5jZS5vcHRpb25zWyBzZXRbIGkgXVsgMCBdIF0gKSB7CgkJCQlzZXRbIGkgXVsgMSBdLmFwcGx5KCBpbnN0YW5jZS5lbGVtZW50LCBhcmdzICk7CgkJCX0KCQl9Cgl9Cn07CgoKCnZhciBzYWZlQWN0aXZlRWxlbWVudCA9ICQudWkuc2FmZUFjdGl2ZUVsZW1lbnQgPSBmdW5jdGlvbiggZG9jdW1lbnQgKSB7Cgl2YXIgYWN0aXZlRWxlbWVudDsKCgkvLyBTdXBwb3J0OiBJRSA5IG9ubHkKCS8vIElFOSB0aHJvd3MgYW4gIlVuc3BlY2lmaWVkIGVycm9yIiBhY2Nlc3NpbmcgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBmcm9tIGFuIDxpZnJhbWU+Cgl0cnkgewoJCWFjdGl2ZUVsZW1lbnQgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50OwoJfSBjYXRjaCAoIGVycm9yICkgewoJCWFjdGl2ZUVsZW1lbnQgPSBkb2N1bWVudC5ib2R5OwoJfQoKCS8vIFN1cHBvcnQ6IElFIDkgLSAxMSBvbmx5CgkvLyBJRSBtYXkgcmV0dXJuIG51bGwgaW5zdGVhZCBvZiBhbiBlbGVtZW50CgkvLyBJbnRlcmVzdGluZ2x5LCB0aGlzIG9ubHkgc2VlbXMgdG8gb2NjdXIgd2hlbiBOT1QgaW4gYW4gaWZyYW1lCglpZiAoICFhY3RpdmVFbGVtZW50ICkgewoJCWFjdGl2ZUVsZW1lbnQgPSBkb2N1bWVudC5ib2R5OwoJfQoKCS8vIFN1cHBvcnQ6IElFIDExIG9ubHkKCS8vIElFMTEgcmV0dXJucyBhIHNlZW1pbmdseSBlbXB0eSBvYmplY3QgaW4gc29tZSBjYXNlcyB3aGVuIGFjY2Vzc2luZwoJLy8gZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBmcm9tIGFuIDxpZnJhbWU+CglpZiAoICFhY3RpdmVFbGVtZW50Lm5vZGVOYW1lICkgewoJCWFjdGl2ZUVsZW1lbnQgPSBkb2N1bWVudC5ib2R5OwoJfQoKCXJldHVybiBhY3RpdmVFbGVtZW50Owp9OwoKCgp2YXIgc2FmZUJsdXIgPSAkLnVpLnNhZmVCbHVyID0gZnVuY3Rpb24oIGVsZW1lbnQgKSB7CgoJLy8gU3VwcG9ydDogSUU5IC0gMTAgb25seQoJLy8gSWYgdGhlIDxib2R5PiBpcyBibHVycmVkLCBJRSB3aWxsIHN3aXRjaCB3aW5kb3dzLCBzZWUgIzk0MjAKCWlmICggZWxlbWVudCAmJiBlbGVtZW50Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkgIT09ICJib2R5IiApIHsKCQkkKCBlbGVtZW50ICkudHJpZ2dlciggImJsdXIiICk7Cgl9Cn07CgoKLyohCiAqIGpRdWVyeSBVSSBEcmFnZ2FibGUgMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiBEcmFnZ2FibGUKLy8+Pmdyb3VwOiBJbnRlcmFjdGlvbnMKLy8+PmRlc2NyaXB0aW9uOiBFbmFibGVzIGRyYWdnaW5nIGZ1bmN0aW9uYWxpdHkgZm9yIGFueSBlbGVtZW50LgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vZHJhZ2dhYmxlLwovLz4+ZGVtb3M6IGh0dHA6Ly9qcXVlcnl1aS5jb20vZHJhZ2dhYmxlLwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvZHJhZ2dhYmxlLmNzcwoKCgokLndpZGdldCggInVpLmRyYWdnYWJsZSIsICQudWkubW91c2UsIHsKCXZlcnNpb246ICIxLjEyLjEiLAoJd2lkZ2V0RXZlbnRQcmVmaXg6ICJkcmFnIiwKCW9wdGlvbnM6IHsKCQlhZGRDbGFzc2VzOiB0cnVlLAoJCWFwcGVuZFRvOiAicGFyZW50IiwKCQlheGlzOiBmYWxzZSwKCQljb25uZWN0VG9Tb3J0YWJsZTogZmFsc2UsCgkJY29udGFpbm1lbnQ6IGZhbHNlLAoJCWN1cnNvcjogImF1dG8iLAoJCWN1cnNvckF0OiBmYWxzZSwKCQlncmlkOiBmYWxzZSwKCQloYW5kbGU6IGZhbHNlLAoJCWhlbHBlcjogIm9yaWdpbmFsIiwKCQlpZnJhbWVGaXg6IGZhbHNlLAoJCW9wYWNpdHk6IGZhbHNlLAoJCXJlZnJlc2hQb3NpdGlvbnM6IGZhbHNlLAoJCXJldmVydDogZmFsc2UsCgkJcmV2ZXJ0RHVyYXRpb246IDUwMCwKCQlzY29wZTogImRlZmF1bHQiLAoJCXNjcm9sbDogdHJ1ZSwKCQlzY3JvbGxTZW5zaXRpdml0eTogMjAsCgkJc2Nyb2xsU3BlZWQ6IDIwLAoJCXNuYXA6IGZhbHNlLAoJCXNuYXBNb2RlOiAiYm90aCIsCgkJc25hcFRvbGVyYW5jZTogMjAsCgkJc3RhY2s6IGZhbHNlLAoJCXpJbmRleDogZmFsc2UsCgoJCS8vIENhbGxiYWNrcwoJCWRyYWc6IG51bGwsCgkJc3RhcnQ6IG51bGwsCgkJc3RvcDogbnVsbAoJfSwKCV9jcmVhdGU6IGZ1bmN0aW9uKCkgewoKCQlpZiAoIHRoaXMub3B0aW9ucy5oZWxwZXIgPT09ICJvcmlnaW5hbCIgKSB7CgkJCXRoaXMuX3NldFBvc2l0aW9uUmVsYXRpdmUoKTsKCQl9CgkJaWYgKCB0aGlzLm9wdGlvbnMuYWRkQ2xhc3NlcyApIHsKCQkJdGhpcy5fYWRkQ2xhc3MoICJ1aS1kcmFnZ2FibGUiICk7CgkJfQoJCXRoaXMuX3NldEhhbmRsZUNsYXNzTmFtZSgpOwoKCQl0aGlzLl9tb3VzZUluaXQoKTsKCX0sCgoJX3NldE9wdGlvbjogZnVuY3Rpb24oIGtleSwgdmFsdWUgKSB7CgkJdGhpcy5fc3VwZXIoIGtleSwgdmFsdWUgKTsKCQlpZiAoIGtleSA9PT0gImhhbmRsZSIgKSB7CgkJCXRoaXMuX3JlbW92ZUhhbmRsZUNsYXNzTmFtZSgpOwoJCQl0aGlzLl9zZXRIYW5kbGVDbGFzc05hbWUoKTsKCQl9Cgl9LAoKCV9kZXN0cm95OiBmdW5jdGlvbigpIHsKCQlpZiAoICggdGhpcy5oZWxwZXIgfHwgdGhpcy5lbGVtZW50ICkuaXMoICIudWktZHJhZ2dhYmxlLWRyYWdnaW5nIiApICkgewoJCQl0aGlzLmRlc3Ryb3lPbkNsZWFyID0gdHJ1ZTsKCQkJcmV0dXJuOwoJCX0KCQl0aGlzLl9yZW1vdmVIYW5kbGVDbGFzc05hbWUoKTsKCQl0aGlzLl9tb3VzZURlc3Ryb3koKTsKCX0sCgoJX21vdXNlQ2FwdHVyZTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXZhciBvID0gdGhpcy5vcHRpb25zOwoKCQkvLyBBbW9uZyBvdGhlcnMsIHByZXZlbnQgYSBkcmFnIG9uIGEgcmVzaXphYmxlLWhhbmRsZQoJCWlmICggdGhpcy5oZWxwZXIgfHwgby5kaXNhYmxlZCB8fAoJCQkJJCggZXZlbnQudGFyZ2V0ICkuY2xvc2VzdCggIi51aS1yZXNpemFibGUtaGFuZGxlIiApLmxlbmd0aCA+IDAgKSB7CgkJCXJldHVybiBmYWxzZTsKCQl9CgoJCS8vUXVpdCBpZiB3ZSdyZSBub3Qgb24gYSB2YWxpZCBoYW5kbGUKCQl0aGlzLmhhbmRsZSA9IHRoaXMuX2dldEhhbmRsZSggZXZlbnQgKTsKCQlpZiAoICF0aGlzLmhhbmRsZSApIHsKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCgkJdGhpcy5fYmx1ckFjdGl2ZUVsZW1lbnQoIGV2ZW50ICk7CgoJCXRoaXMuX2Jsb2NrRnJhbWVzKCBvLmlmcmFtZUZpeCA9PT0gdHJ1ZSA/ICJpZnJhbWUiIDogby5pZnJhbWVGaXggKTsKCgkJcmV0dXJuIHRydWU7CgoJfSwKCglfYmxvY2tGcmFtZXM6IGZ1bmN0aW9uKCBzZWxlY3RvciApIHsKCQl0aGlzLmlmcmFtZUJsb2NrcyA9IHRoaXMuZG9jdW1lbnQuZmluZCggc2VsZWN0b3IgKS5tYXAoIGZ1bmN0aW9uKCkgewoJCQl2YXIgaWZyYW1lID0gJCggdGhpcyApOwoKCQkJcmV0dXJuICQoICI8ZGl2PiIgKQoJCQkJLmNzcyggInBvc2l0aW9uIiwgImFic29sdXRlIiApCgkJCQkuYXBwZW5kVG8oIGlmcmFtZS5wYXJlbnQoKSApCgkJCQkub3V0ZXJXaWR0aCggaWZyYW1lLm91dGVyV2lkdGgoKSApCgkJCQkub3V0ZXJIZWlnaHQoIGlmcmFtZS5vdXRlckhlaWdodCgpICkKCQkJCS5vZmZzZXQoIGlmcmFtZS5vZmZzZXQoKSApWyAwIF07CgkJfSApOwoJfSwKCglfdW5ibG9ja0ZyYW1lczogZnVuY3Rpb24oKSB7CgkJaWYgKCB0aGlzLmlmcmFtZUJsb2NrcyApIHsKCQkJdGhpcy5pZnJhbWVCbG9ja3MucmVtb3ZlKCk7CgkJCWRlbGV0ZSB0aGlzLmlmcmFtZUJsb2NrczsKCQl9Cgl9LAoKCV9ibHVyQWN0aXZlRWxlbWVudDogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXZhciBhY3RpdmVFbGVtZW50ID0gJC51aS5zYWZlQWN0aXZlRWxlbWVudCggdGhpcy5kb2N1bWVudFsgMCBdICksCgkJCXRhcmdldCA9ICQoIGV2ZW50LnRhcmdldCApOwoKCQkvLyBEb24ndCBibHVyIGlmIHRoZSBldmVudCBvY2N1cnJlZCBvbiBhbiBlbGVtZW50IHRoYXQgaXMgd2l0aGluCgkJLy8gdGhlIGN1cnJlbnRseSBmb2N1c2VkIGVsZW1lbnQKCQkvLyBTZWUgIzEwNTI3LCAjMTI0NzIKCQlpZiAoIHRhcmdldC5jbG9zZXN0KCBhY3RpdmVFbGVtZW50ICkubGVuZ3RoICkgewoJCQlyZXR1cm47CgkJfQoKCQkvLyBCbHVyIGFueSBlbGVtZW50IHRoYXQgY3VycmVudGx5IGhhcyBmb2N1cywgc2VlICM0MjYxCgkJJC51aS5zYWZlQmx1ciggYWN0aXZlRWxlbWVudCApOwoJfSwKCglfbW91c2VTdGFydDogZnVuY3Rpb24oIGV2ZW50ICkgewoKCQl2YXIgbyA9IHRoaXMub3B0aW9uczsKCgkJLy9DcmVhdGUgYW5kIGFwcGVuZCB0aGUgdmlzaWJsZSBoZWxwZXIKCQl0aGlzLmhlbHBlciA9IHRoaXMuX2NyZWF0ZUhlbHBlciggZXZlbnQgKTsKCgkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMuaGVscGVyLCAidWktZHJhZ2dhYmxlLWRyYWdnaW5nIiApOwoKCQkvL0NhY2hlIHRoZSBoZWxwZXIgc2l6ZQoJCXRoaXMuX2NhY2hlSGVscGVyUHJvcG9ydGlvbnMoKTsKCgkJLy9JZiBkZG1hbmFnZXIgaXMgdXNlZCBmb3IgZHJvcHBhYmxlcywgc2V0IHRoZSBnbG9iYWwgZHJhZ2dhYmxlCgkJaWYgKCAkLnVpLmRkbWFuYWdlciApIHsKCQkJJC51aS5kZG1hbmFnZXIuY3VycmVudCA9IHRoaXM7CgkJfQoKCQkvKgoJCSAqIC0gUG9zaXRpb24gZ2VuZXJhdGlvbiAtCgkJICogVGhpcyBibG9jayBnZW5lcmF0ZXMgZXZlcnl0aGluZyBwb3NpdGlvbiByZWxhdGVkIC0gaXQncyB0aGUgY29yZSBvZiBkcmFnZ2FibGVzLgoJCSAqLwoKCQkvL0NhY2hlIHRoZSBtYXJnaW5zIG9mIHRoZSBvcmlnaW5hbCBlbGVtZW50CgkJdGhpcy5fY2FjaGVNYXJnaW5zKCk7CgoJCS8vU3RvcmUgdGhlIGhlbHBlcidzIGNzcyBwb3NpdGlvbgoJCXRoaXMuY3NzUG9zaXRpb24gPSB0aGlzLmhlbHBlci5jc3MoICJwb3NpdGlvbiIgKTsKCQl0aGlzLnNjcm9sbFBhcmVudCA9IHRoaXMuaGVscGVyLnNjcm9sbFBhcmVudCggdHJ1ZSApOwoJCXRoaXMub2Zmc2V0UGFyZW50ID0gdGhpcy5oZWxwZXIub2Zmc2V0UGFyZW50KCk7CgkJdGhpcy5oYXNGaXhlZEFuY2VzdG9yID0gdGhpcy5oZWxwZXIucGFyZW50cygpLmZpbHRlciggZnVuY3Rpb24oKSB7CgkJCQlyZXR1cm4gJCggdGhpcyApLmNzcyggInBvc2l0aW9uIiApID09PSAiZml4ZWQiOwoJCQl9ICkubGVuZ3RoID4gMDsKCgkJLy9UaGUgZWxlbWVudCdzIGFic29sdXRlIHBvc2l0aW9uIG9uIHRoZSBwYWdlIG1pbnVzIG1hcmdpbnMKCQl0aGlzLnBvc2l0aW9uQWJzID0gdGhpcy5lbGVtZW50Lm9mZnNldCgpOwoJCXRoaXMuX3JlZnJlc2hPZmZzZXRzKCBldmVudCApOwoKCQkvL0dlbmVyYXRlIHRoZSBvcmlnaW5hbCBwb3NpdGlvbgoJCXRoaXMub3JpZ2luYWxQb3NpdGlvbiA9IHRoaXMucG9zaXRpb24gPSB0aGlzLl9nZW5lcmF0ZVBvc2l0aW9uKCBldmVudCwgZmFsc2UgKTsKCQl0aGlzLm9yaWdpbmFsUGFnZVggPSBldmVudC5wYWdlWDsKCQl0aGlzLm9yaWdpbmFsUGFnZVkgPSBldmVudC5wYWdlWTsKCgkJLy9BZGp1c3QgdGhlIG1vdXNlIG9mZnNldCByZWxhdGl2ZSB0byB0aGUgaGVscGVyIGlmICJjdXJzb3JBdCIgaXMgc3VwcGxpZWQKCQkoIG8uY3Vyc29yQXQgJiYgdGhpcy5fYWRqdXN0T2Zmc2V0RnJvbUhlbHBlciggby5jdXJzb3JBdCApICk7CgoJCS8vU2V0IGEgY29udGFpbm1lbnQgaWYgZ2l2ZW4gaW4gdGhlIG9wdGlvbnMKCQl0aGlzLl9zZXRDb250YWlubWVudCgpOwoKCQkvL1RyaWdnZXIgZXZlbnQgKyBjYWxsYmFja3MKCQlpZiAoIHRoaXMuX3RyaWdnZXIoICJzdGFydCIsIGV2ZW50ICkgPT09IGZhbHNlICkgewoJCQl0aGlzLl9jbGVhcigpOwoJCQlyZXR1cm4gZmFsc2U7CgkJfQoKCQkvL1JlY2FjaGUgdGhlIGhlbHBlciBzaXplCgkJdGhpcy5fY2FjaGVIZWxwZXJQcm9wb3J0aW9ucygpOwoKCQkvL1ByZXBhcmUgdGhlIGRyb3BwYWJsZSBvZmZzZXRzCgkJaWYgKCAkLnVpLmRkbWFuYWdlciAmJiAhby5kcm9wQmVoYXZpb3VyICkgewoJCQkkLnVpLmRkbWFuYWdlci5wcmVwYXJlT2Zmc2V0cyggdGhpcywgZXZlbnQgKTsKCQl9CgoJCS8vIEV4ZWN1dGUgdGhlIGRyYWcgb25jZSAtIHRoaXMgY2F1c2VzIHRoZSBoZWxwZXIgbm90IHRvIGJlIHZpc2libGUgYmVmb3JlIGdldHRpbmcgaXRzCgkJLy8gY29ycmVjdCBwb3NpdGlvbgoJCXRoaXMuX21vdXNlRHJhZyggZXZlbnQsIHRydWUgKTsKCgkJLy8gSWYgdGhlIGRkbWFuYWdlciBpcyB1c2VkIGZvciBkcm9wcGFibGVzLCBpbmZvcm0gdGhlIG1hbmFnZXIgdGhhdCBkcmFnZ2luZyBoYXMgc3RhcnRlZAoJCS8vIChzZWUgIzUwMDMpCgkJaWYgKCAkLnVpLmRkbWFuYWdlciApIHsKCQkJJC51aS5kZG1hbmFnZXIuZHJhZ1N0YXJ0KCB0aGlzLCBldmVudCApOwoJCX0KCgkJcmV0dXJuIHRydWU7Cgl9LAoKCV9yZWZyZXNoT2Zmc2V0czogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXRoaXMub2Zmc2V0ID0gewoJCQl0b3A6IHRoaXMucG9zaXRpb25BYnMudG9wIC0gdGhpcy5tYXJnaW5zLnRvcCwKCQkJbGVmdDogdGhpcy5wb3NpdGlvbkFicy5sZWZ0IC0gdGhpcy5tYXJnaW5zLmxlZnQsCgkJCXNjcm9sbDogZmFsc2UsCgkJCXBhcmVudDogdGhpcy5fZ2V0UGFyZW50T2Zmc2V0KCksCgkJCXJlbGF0aXZlOiB0aGlzLl9nZXRSZWxhdGl2ZU9mZnNldCgpCgkJfTsKCgkJdGhpcy5vZmZzZXQuY2xpY2sgPSB7CgkJCWxlZnQ6IGV2ZW50LnBhZ2VYIC0gdGhpcy5vZmZzZXQubGVmdCwKCQkJdG9wOiBldmVudC5wYWdlWSAtIHRoaXMub2Zmc2V0LnRvcAoJCX07Cgl9LAoKCV9tb3VzZURyYWc6IGZ1bmN0aW9uKCBldmVudCwgbm9Qcm9wYWdhdGlvbiApIHsKCgkJLy8gcmVzZXQgYW55IG5lY2Vzc2FyeSBjYWNoZWQgcHJvcGVydGllcyAoc2VlICM1MDA5KQoJCWlmICggdGhpcy5oYXNGaXhlZEFuY2VzdG9yICkgewoJCQl0aGlzLm9mZnNldC5wYXJlbnQgPSB0aGlzLl9nZXRQYXJlbnRPZmZzZXQoKTsKCQl9CgoJCS8vQ29tcHV0ZSB0aGUgaGVscGVycyBwb3NpdGlvbgoJCXRoaXMucG9zaXRpb24gPSB0aGlzLl9nZW5lcmF0ZVBvc2l0aW9uKCBldmVudCwgdHJ1ZSApOwoJCXRoaXMucG9zaXRpb25BYnMgPSB0aGlzLl9jb252ZXJ0UG9zaXRpb25UbyggImFic29sdXRlIiApOwoKCQkvL0NhbGwgcGx1Z2lucyBhbmQgY2FsbGJhY2tzIGFuZCB1c2UgdGhlIHJlc3VsdGluZyBwb3NpdGlvbiBpZiBzb21ldGhpbmcgaXMgcmV0dXJuZWQKCQlpZiAoICFub1Byb3BhZ2F0aW9uICkgewoJCQl2YXIgdWkgPSB0aGlzLl91aUhhc2goKTsKCQkJaWYgKCB0aGlzLl90cmlnZ2VyKCAiZHJhZyIsIGV2ZW50LCB1aSApID09PSBmYWxzZSApIHsKCQkJCXRoaXMuX21vdXNlVXAoIG5ldyAkLkV2ZW50KCAibW91c2V1cCIsIGV2ZW50ICkgKTsKCQkJCXJldHVybiBmYWxzZTsKCQkJfQoJCQl0aGlzLnBvc2l0aW9uID0gdWkucG9zaXRpb247CgkJfQoKCQl0aGlzLmhlbHBlclsgMCBdLnN0eWxlLmxlZnQgPSB0aGlzLnBvc2l0aW9uLmxlZnQgKyAicHgiOwoJCXRoaXMuaGVscGVyWyAwIF0uc3R5bGUudG9wID0gdGhpcy5wb3NpdGlvbi50b3AgKyAicHgiOwoKCQlpZiAoICQudWkuZGRtYW5hZ2VyICkgewoJCQkkLnVpLmRkbWFuYWdlci5kcmFnKCB0aGlzLCBldmVudCApOwoJCX0KCgkJcmV0dXJuIGZhbHNlOwoJfSwKCglfbW91c2VTdG9wOiBmdW5jdGlvbiggZXZlbnQgKSB7CgoJCS8vSWYgd2UgYXJlIHVzaW5nIGRyb3BwYWJsZXMsIGluZm9ybSB0aGUgbWFuYWdlciBhYm91dCB0aGUgZHJvcAoJCXZhciB0aGF0ID0gdGhpcywKCQkJZHJvcHBlZCA9IGZhbHNlOwoJCWlmICggJC51aS5kZG1hbmFnZXIgJiYgIXRoaXMub3B0aW9ucy5kcm9wQmVoYXZpb3VyICkgewoJCQlkcm9wcGVkID0gJC51aS5kZG1hbmFnZXIuZHJvcCggdGhpcywgZXZlbnQgKTsKCQl9CgoJCS8vaWYgYSBkcm9wIGNvbWVzIGZyb20gb3V0c2lkZSAoYSBzb3J0YWJsZSkKCQlpZiAoIHRoaXMuZHJvcHBlZCApIHsKCQkJZHJvcHBlZCA9IHRoaXMuZHJvcHBlZDsKCQkJdGhpcy5kcm9wcGVkID0gZmFsc2U7CgkJfQoKCQlpZiAoICggdGhpcy5vcHRpb25zLnJldmVydCA9PT0gImludmFsaWQiICYmICFkcm9wcGVkICkgfHwKCQkJCSggdGhpcy5vcHRpb25zLnJldmVydCA9PT0gInZhbGlkIiAmJiBkcm9wcGVkICkgfHwKCQkJCXRoaXMub3B0aW9ucy5yZXZlcnQgPT09IHRydWUgfHwgKCAkLmlzRnVuY3Rpb24oIHRoaXMub3B0aW9ucy5yZXZlcnQgKSAmJgoJCQkJdGhpcy5vcHRpb25zLnJldmVydC5jYWxsKCB0aGlzLmVsZW1lbnQsIGRyb3BwZWQgKSApCgkJKSB7CgkJCSQoIHRoaXMuaGVscGVyICkuYW5pbWF0ZSgKCQkJCXRoaXMub3JpZ2luYWxQb3NpdGlvbiwKCQkJCXBhcnNlSW50KCB0aGlzLm9wdGlvbnMucmV2ZXJ0RHVyYXRpb24sIDEwICksCgkJCQlmdW5jdGlvbigpIHsKCQkJCQlpZiAoIHRoYXQuX3RyaWdnZXIoICJzdG9wIiwgZXZlbnQgKSAhPT0gZmFsc2UgKSB7CgkJCQkJCXRoYXQuX2NsZWFyKCk7CgkJCQkJfQoJCQkJfQoJCQkpOwoJCX0gZWxzZSB7CgkJCWlmICggdGhpcy5fdHJpZ2dlciggInN0b3AiLCBldmVudCApICE9PSBmYWxzZSApIHsKCQkJCXRoaXMuX2NsZWFyKCk7CgkJCX0KCQl9CgoJCXJldHVybiBmYWxzZTsKCX0sCgoJX21vdXNlVXA6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl0aGlzLl91bmJsb2NrRnJhbWVzKCk7CgoJCS8vIElmIHRoZSBkZG1hbmFnZXIgaXMgdXNlZCBmb3IgZHJvcHBhYmxlcywgaW5mb3JtIHRoZSBtYW5hZ2VyIHRoYXQgZHJhZ2dpbmcgaGFzIHN0b3BwZWQKCQkvLyAoc2VlICM1MDAzKQoJCWlmICggJC51aS5kZG1hbmFnZXIgKSB7CgkJCSQudWkuZGRtYW5hZ2VyLmRyYWdTdG9wKCB0aGlzLCBldmVudCApOwoJCX0KCgkJLy8gT25seSBuZWVkIHRvIGZvY3VzIGlmIHRoZSBldmVudCBvY2N1cnJlZCBvbiB0aGUgZHJhZ2dhYmxlIGl0c2VsZiwgc2VlICMxMDUyNwoJCWlmICggdGhpcy5oYW5kbGVFbGVtZW50LmlzKCBldmVudC50YXJnZXQgKSApIHsKCgkJCS8vIFRoZSBpbnRlcmFjdGlvbiBpcyBvdmVyOyB3aGV0aGVyIG9yIG5vdCB0aGUgY2xpY2sgcmVzdWx0ZWQgaW4gYSBkcmFnLAoJCQkvLyBmb2N1cyB0aGUgZWxlbWVudAoJCQl0aGlzLmVsZW1lbnQudHJpZ2dlciggImZvY3VzIiApOwoJCX0KCgkJcmV0dXJuICQudWkubW91c2UucHJvdG90eXBlLl9tb3VzZVVwLmNhbGwoIHRoaXMsIGV2ZW50ICk7Cgl9LAoKCWNhbmNlbDogZnVuY3Rpb24oKSB7CgoJCWlmICggdGhpcy5oZWxwZXIuaXMoICIudWktZHJhZ2dhYmxlLWRyYWdnaW5nIiApICkgewoJCQl0aGlzLl9tb3VzZVVwKCBuZXcgJC5FdmVudCggIm1vdXNldXAiLCB7IHRhcmdldDogdGhpcy5lbGVtZW50WyAwIF0gfSApICk7CgkJfSBlbHNlIHsKCQkJdGhpcy5fY2xlYXIoKTsKCQl9CgoJCXJldHVybiB0aGlzOwoKCX0sCgoJX2dldEhhbmRsZTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXJldHVybiB0aGlzLm9wdGlvbnMuaGFuZGxlID8KCQkJISEkKCBldmVudC50YXJnZXQgKS5jbG9zZXN0KCB0aGlzLmVsZW1lbnQuZmluZCggdGhpcy5vcHRpb25zLmhhbmRsZSApICkubGVuZ3RoIDoKCQkJdHJ1ZTsKCX0sCgoJX3NldEhhbmRsZUNsYXNzTmFtZTogZnVuY3Rpb24oKSB7CgkJdGhpcy5oYW5kbGVFbGVtZW50ID0gdGhpcy5vcHRpb25zLmhhbmRsZSA/CgkJCXRoaXMuZWxlbWVudC5maW5kKCB0aGlzLm9wdGlvbnMuaGFuZGxlICkgOiB0aGlzLmVsZW1lbnQ7CgkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMuaGFuZGxlRWxlbWVudCwgInVpLWRyYWdnYWJsZS1oYW5kbGUiICk7Cgl9LAoKCV9yZW1vdmVIYW5kbGVDbGFzc05hbWU6IGZ1bmN0aW9uKCkgewoJCXRoaXMuX3JlbW92ZUNsYXNzKCB0aGlzLmhhbmRsZUVsZW1lbnQsICJ1aS1kcmFnZ2FibGUtaGFuZGxlIiApOwoJfSwKCglfY3JlYXRlSGVscGVyOiBmdW5jdGlvbiggZXZlbnQgKSB7CgoJCXZhciBvID0gdGhpcy5vcHRpb25zLAoJCQloZWxwZXJJc0Z1bmN0aW9uID0gJC5pc0Z1bmN0aW9uKCBvLmhlbHBlciApLAoJCQloZWxwZXIgPSBoZWxwZXJJc0Z1bmN0aW9uID8KCQkJCSQoIG8uaGVscGVyLmFwcGx5KCB0aGlzLmVsZW1lbnRbIDAgXSwgWyBldmVudCBdICkgKSA6CgkJCQkoIG8uaGVscGVyID09PSAiY2xvbmUiID8KCQkJCQl0aGlzLmVsZW1lbnQuY2xvbmUoKS5yZW1vdmVBdHRyKCAiaWQiICkgOgoJCQkJCXRoaXMuZWxlbWVudCApOwoKCQlpZiAoICFoZWxwZXIucGFyZW50cyggImJvZHkiICkubGVuZ3RoICkgewoJCQloZWxwZXIuYXBwZW5kVG8oICggby5hcHBlbmRUbyA9PT0gInBhcmVudCIgPwoJCQkJdGhpcy5lbGVtZW50WyAwIF0ucGFyZW50Tm9kZSA6CgkJCQlvLmFwcGVuZFRvICkgKTsKCQl9CgoJCS8vIEh0dHA6Ly9idWdzLmpxdWVyeXVpLmNvbS90aWNrZXQvOTQ0NgoJCS8vIGEgaGVscGVyIGZ1bmN0aW9uIGNhbiByZXR1cm4gdGhlIG9yaWdpbmFsIGVsZW1lbnQKCQkvLyB3aGljaCB3b3VsZG4ndCBoYXZlIGJlZW4gc2V0IHRvIHJlbGF0aXZlIGluIF9jcmVhdGUKCQlpZiAoIGhlbHBlcklzRnVuY3Rpb24gJiYgaGVscGVyWyAwIF0gPT09IHRoaXMuZWxlbWVudFsgMCBdICkgewoJCQl0aGlzLl9zZXRQb3NpdGlvblJlbGF0aXZlKCk7CgkJfQoKCQlpZiAoIGhlbHBlclsgMCBdICE9PSB0aGlzLmVsZW1lbnRbIDAgXSAmJgoJCQkJISggLyhmaXhlZHxhYnNvbHV0ZSkvICkudGVzdCggaGVscGVyLmNzcyggInBvc2l0aW9uIiApICkgKSB7CgkJCWhlbHBlci5jc3MoICJwb3NpdGlvbiIsICJhYnNvbHV0ZSIgKTsKCQl9CgoJCXJldHVybiBoZWxwZXI7CgoJfSwKCglfc2V0UG9zaXRpb25SZWxhdGl2ZTogZnVuY3Rpb24oKSB7CgkJaWYgKCAhKCAvXig/OnJ8YXxmKS8gKS50ZXN0KCB0aGlzLmVsZW1lbnQuY3NzKCAicG9zaXRpb24iICkgKSApIHsKCQkJdGhpcy5lbGVtZW50WyAwIF0uc3R5bGUucG9zaXRpb24gPSAicmVsYXRpdmUiOwoJCX0KCX0sCgoJX2FkanVzdE9mZnNldEZyb21IZWxwZXI6IGZ1bmN0aW9uKCBvYmogKSB7CgkJaWYgKCB0eXBlb2Ygb2JqID09PSAic3RyaW5nIiApIHsKCQkJb2JqID0gb2JqLnNwbGl0KCAiICIgKTsKCQl9CgkJaWYgKCAkLmlzQXJyYXkoIG9iaiApICkgewoJCQlvYmogPSB7IGxlZnQ6ICtvYmpbIDAgXSwgdG9wOiArb2JqWyAxIF0gfHwgMCB9OwoJCX0KCQlpZiAoICJsZWZ0IiBpbiBvYmogKSB7CgkJCXRoaXMub2Zmc2V0LmNsaWNrLmxlZnQgPSBvYmoubGVmdCArIHRoaXMubWFyZ2lucy5sZWZ0OwoJCX0KCQlpZiAoICJyaWdodCIgaW4gb2JqICkgewoJCQl0aGlzLm9mZnNldC5jbGljay5sZWZ0ID0gdGhpcy5oZWxwZXJQcm9wb3J0aW9ucy53aWR0aCAtIG9iai5yaWdodCArIHRoaXMubWFyZ2lucy5sZWZ0OwoJCX0KCQlpZiAoICJ0b3AiIGluIG9iaiApIHsKCQkJdGhpcy5vZmZzZXQuY2xpY2sudG9wID0gb2JqLnRvcCArIHRoaXMubWFyZ2lucy50b3A7CgkJfQoJCWlmICggImJvdHRvbSIgaW4gb2JqICkgewoJCQl0aGlzLm9mZnNldC5jbGljay50b3AgPSB0aGlzLmhlbHBlclByb3BvcnRpb25zLmhlaWdodCAtIG9iai5ib3R0b20gKyB0aGlzLm1hcmdpbnMudG9wOwoJCX0KCX0sCgoJX2lzUm9vdE5vZGU6IGZ1bmN0aW9uKCBlbGVtZW50ICkgewoJCXJldHVybiAoIC8oaHRtbHxib2R5KS9pICkudGVzdCggZWxlbWVudC50YWdOYW1lICkgfHwgZWxlbWVudCA9PT0gdGhpcy5kb2N1bWVudFsgMCBdOwoJfSwKCglfZ2V0UGFyZW50T2Zmc2V0OiBmdW5jdGlvbigpIHsKCgkJLy9HZXQgdGhlIG9mZnNldFBhcmVudCBhbmQgY2FjaGUgaXRzIHBvc2l0aW9uCgkJdmFyIHBvID0gdGhpcy5vZmZzZXRQYXJlbnQub2Zmc2V0KCksCgkJCWRvY3VtZW50ID0gdGhpcy5kb2N1bWVudFsgMCBdOwoKCQkvLyBUaGlzIGlzIGEgc3BlY2lhbCBjYXNlIHdoZXJlIHdlIG5lZWQgdG8gbW9kaWZ5IGEgb2Zmc2V0IGNhbGN1bGF0ZWQgb24gc3RhcnQsIHNpbmNlIHRoZQoJCS8vIGZvbGxvd2luZyBoYXBwZW5lZDoKCQkvLyAxLiBUaGUgcG9zaXRpb24gb2YgdGhlIGhlbHBlciBpcyBhYnNvbHV0ZSwgc28gaXQncyBwb3NpdGlvbiBpcyBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZQoJCS8vIG5leHQgcG9zaXRpb25lZCBwYXJlbnQKCQkvLyAyLiBUaGUgYWN0dWFsIG9mZnNldCBwYXJlbnQgaXMgYSBjaGlsZCBvZiB0aGUgc2Nyb2xsIHBhcmVudCwgYW5kIHRoZSBzY3JvbGwgcGFyZW50IGlzbid0CgkJLy8gdGhlIGRvY3VtZW50LCB3aGljaCBtZWFucyB0aGF0IHRoZSBzY3JvbGwgaXMgaW5jbHVkZWQgaW4gdGhlIGluaXRpYWwgY2FsY3VsYXRpb24gb2YgdGhlCgkJLy8gb2Zmc2V0IG9mIHRoZSBwYXJlbnQsIGFuZCBuZXZlciByZWNhbGN1bGF0ZWQgdXBvbiBkcmFnCgkJaWYgKCB0aGlzLmNzc1Bvc2l0aW9uID09PSAiYWJzb2x1dGUiICYmIHRoaXMuc2Nyb2xsUGFyZW50WyAwIF0gIT09IGRvY3VtZW50ICYmCgkJCQkkLmNvbnRhaW5zKCB0aGlzLnNjcm9sbFBhcmVudFsgMCBdLCB0aGlzLm9mZnNldFBhcmVudFsgMCBdICkgKSB7CgkJCXBvLmxlZnQgKz0gdGhpcy5zY3JvbGxQYXJlbnQuc2Nyb2xsTGVmdCgpOwoJCQlwby50b3AgKz0gdGhpcy5zY3JvbGxQYXJlbnQuc2Nyb2xsVG9wKCk7CgkJfQoKCQlpZiAoIHRoaXMuX2lzUm9vdE5vZGUoIHRoaXMub2Zmc2V0UGFyZW50WyAwIF0gKSApIHsKCQkJcG8gPSB7IHRvcDogMCwgbGVmdDogMCB9OwoJCX0KCgkJcmV0dXJuIHsKCQkJdG9wOiBwby50b3AgKyAoIHBhcnNlSW50KCB0aGlzLm9mZnNldFBhcmVudC5jc3MoICJib3JkZXJUb3BXaWR0aCIgKSwgMTAgKSB8fCAwICksCgkJCWxlZnQ6IHBvLmxlZnQgKyAoIHBhcnNlSW50KCB0aGlzLm9mZnNldFBhcmVudC5jc3MoICJib3JkZXJMZWZ0V2lkdGgiICksIDEwICkgfHwgMCApCgkJfTsKCgl9LAoKCV9nZXRSZWxhdGl2ZU9mZnNldDogZnVuY3Rpb24oKSB7CgkJaWYgKCB0aGlzLmNzc1Bvc2l0aW9uICE9PSAicmVsYXRpdmUiICkgewoJCQlyZXR1cm4geyB0b3A6IDAsIGxlZnQ6IDAgfTsKCQl9CgoJCXZhciBwID0gdGhpcy5lbGVtZW50LnBvc2l0aW9uKCksCgkJCXNjcm9sbElzUm9vdE5vZGUgPSB0aGlzLl9pc1Jvb3ROb2RlKCB0aGlzLnNjcm9sbFBhcmVudFsgMCBdICk7CgoJCXJldHVybiB7CgkJCXRvcDogcC50b3AgLSAoIHBhcnNlSW50KCB0aGlzLmhlbHBlci5jc3MoICJ0b3AiICksIDEwICkgfHwgMCApICsKCQkJCSggIXNjcm9sbElzUm9vdE5vZGUgPyB0aGlzLnNjcm9sbFBhcmVudC5zY3JvbGxUb3AoKSA6IDAgKSwKCQkJbGVmdDogcC5sZWZ0IC0gKCBwYXJzZUludCggdGhpcy5oZWxwZXIuY3NzKCAibGVmdCIgKSwgMTAgKSB8fCAwICkgKwoJCQkJKCAhc2Nyb2xsSXNSb290Tm9kZSA/IHRoaXMuc2Nyb2xsUGFyZW50LnNjcm9sbExlZnQoKSA6IDAgKQoJCX07CgoJfSwKCglfY2FjaGVNYXJnaW5zOiBmdW5jdGlvbigpIHsKCQl0aGlzLm1hcmdpbnMgPSB7CgkJCWxlZnQ6ICggcGFyc2VJbnQoIHRoaXMuZWxlbWVudC5jc3MoICJtYXJnaW5MZWZ0IiApLCAxMCApIHx8IDAgKSwKCQkJdG9wOiAoIHBhcnNlSW50KCB0aGlzLmVsZW1lbnQuY3NzKCAibWFyZ2luVG9wIiApLCAxMCApIHx8IDAgKSwKCQkJcmlnaHQ6ICggcGFyc2VJbnQoIHRoaXMuZWxlbWVudC5jc3MoICJtYXJnaW5SaWdodCIgKSwgMTAgKSB8fCAwICksCgkJCWJvdHRvbTogKCBwYXJzZUludCggdGhpcy5lbGVtZW50LmNzcyggIm1hcmdpbkJvdHRvbSIgKSwgMTAgKSB8fCAwICkKCQl9OwoJfSwKCglfY2FjaGVIZWxwZXJQcm9wb3J0aW9uczogZnVuY3Rpb24oKSB7CgkJdGhpcy5oZWxwZXJQcm9wb3J0aW9ucyA9IHsKCQkJd2lkdGg6IHRoaXMuaGVscGVyLm91dGVyV2lkdGgoKSwKCQkJaGVpZ2h0OiB0aGlzLmhlbHBlci5vdXRlckhlaWdodCgpCgkJfTsKCX0sCgoJX3NldENvbnRhaW5tZW50OiBmdW5jdGlvbigpIHsKCgkJdmFyIGlzVXNlclNjcm9sbGFibGUsIGMsIGNlLAoJCQlvID0gdGhpcy5vcHRpb25zLAoJCQlkb2N1bWVudCA9IHRoaXMuZG9jdW1lbnRbIDAgXTsKCgkJdGhpcy5yZWxhdGl2ZUNvbnRhaW5lciA9IG51bGw7CgoJCWlmICggIW8uY29udGFpbm1lbnQgKSB7CgkJCXRoaXMuY29udGFpbm1lbnQgPSBudWxsOwoJCQlyZXR1cm47CgkJfQoKCQlpZiAoIG8uY29udGFpbm1lbnQgPT09ICJ3aW5kb3ciICkgewoJCQl0aGlzLmNvbnRhaW5tZW50ID0gWwoJCQkJJCggd2luZG93ICkuc2Nyb2xsTGVmdCgpIC0gdGhpcy5vZmZzZXQucmVsYXRpdmUubGVmdCAtIHRoaXMub2Zmc2V0LnBhcmVudC5sZWZ0LAoJCQkJJCggd2luZG93ICkuc2Nyb2xsVG9wKCkgLSB0aGlzLm9mZnNldC5yZWxhdGl2ZS50b3AgLSB0aGlzLm9mZnNldC5wYXJlbnQudG9wLAoJCQkJJCggd2luZG93ICkuc2Nyb2xsTGVmdCgpICsgJCggd2luZG93ICkud2lkdGgoKSAtCgkJCQkJdGhpcy5oZWxwZXJQcm9wb3J0aW9ucy53aWR0aCAtIHRoaXMubWFyZ2lucy5sZWZ0LAoJCQkJJCggd2luZG93ICkuc2Nyb2xsVG9wKCkgKwoJCQkJCSggJCggd2luZG93ICkuaGVpZ2h0KCkgfHwgZG9jdW1lbnQuYm9keS5wYXJlbnROb2RlLnNjcm9sbEhlaWdodCApIC0KCQkJCQl0aGlzLmhlbHBlclByb3BvcnRpb25zLmhlaWdodCAtIHRoaXMubWFyZ2lucy50b3AKCQkJXTsKCQkJcmV0dXJuOwoJCX0KCgkJaWYgKCBvLmNvbnRhaW5tZW50ID09PSAiZG9jdW1lbnQiICkgewoJCQl0aGlzLmNvbnRhaW5tZW50ID0gWwoJCQkJMCwKCQkJCTAsCgkJCQkkKCBkb2N1bWVudCApLndpZHRoKCkgLSB0aGlzLmhlbHBlclByb3BvcnRpb25zLndpZHRoIC0gdGhpcy5tYXJnaW5zLmxlZnQsCgkJCQkoICQoIGRvY3VtZW50ICkuaGVpZ2h0KCkgfHwgZG9jdW1lbnQuYm9keS5wYXJlbnROb2RlLnNjcm9sbEhlaWdodCApIC0KCQkJCQl0aGlzLmhlbHBlclByb3BvcnRpb25zLmhlaWdodCAtIHRoaXMubWFyZ2lucy50b3AKCQkJXTsKCQkJcmV0dXJuOwoJCX0KCgkJaWYgKCBvLmNvbnRhaW5tZW50LmNvbnN0cnVjdG9yID09PSBBcnJheSApIHsKCQkJdGhpcy5jb250YWlubWVudCA9IG8uY29udGFpbm1lbnQ7CgkJCXJldHVybjsKCQl9CgoJCWlmICggby5jb250YWlubWVudCA9PT0gInBhcmVudCIgKSB7CgkJCW8uY29udGFpbm1lbnQgPSB0aGlzLmhlbHBlclsgMCBdLnBhcmVudE5vZGU7CgkJfQoKCQljID0gJCggby5jb250YWlubWVudCApOwoJCWNlID0gY1sgMCBdOwoKCQlpZiAoICFjZSApIHsKCQkJcmV0dXJuOwoJCX0KCgkJaXNVc2VyU2Nyb2xsYWJsZSA9IC8oc2Nyb2xsfGF1dG8pLy50ZXN0KCBjLmNzcyggIm92ZXJmbG93IiApICk7CgoJCXRoaXMuY29udGFpbm1lbnQgPSBbCgkJCSggcGFyc2VJbnQoIGMuY3NzKCAiYm9yZGVyTGVmdFdpZHRoIiApLCAxMCApIHx8IDAgKSArCgkJCQkoIHBhcnNlSW50KCBjLmNzcyggInBhZGRpbmdMZWZ0IiApLCAxMCApIHx8IDAgKSwKCQkJKCBwYXJzZUludCggYy5jc3MoICJib3JkZXJUb3BXaWR0aCIgKSwgMTAgKSB8fCAwICkgKwoJCQkJKCBwYXJzZUludCggYy5jc3MoICJwYWRkaW5nVG9wIiApLCAxMCApIHx8IDAgKSwKCQkJKCBpc1VzZXJTY3JvbGxhYmxlID8gTWF0aC5tYXgoIGNlLnNjcm9sbFdpZHRoLCBjZS5vZmZzZXRXaWR0aCApIDogY2Uub2Zmc2V0V2lkdGggKSAtCgkJCQkoIHBhcnNlSW50KCBjLmNzcyggImJvcmRlclJpZ2h0V2lkdGgiICksIDEwICkgfHwgMCApIC0KCQkJCSggcGFyc2VJbnQoIGMuY3NzKCAicGFkZGluZ1JpZ2h0IiApLCAxMCApIHx8IDAgKSAtCgkJCQl0aGlzLmhlbHBlclByb3BvcnRpb25zLndpZHRoIC0KCQkJCXRoaXMubWFyZ2lucy5sZWZ0IC0KCQkJCXRoaXMubWFyZ2lucy5yaWdodCwKCQkJKCBpc1VzZXJTY3JvbGxhYmxlID8gTWF0aC5tYXgoIGNlLnNjcm9sbEhlaWdodCwgY2Uub2Zmc2V0SGVpZ2h0ICkgOiBjZS5vZmZzZXRIZWlnaHQgKSAtCgkJCQkoIHBhcnNlSW50KCBjLmNzcyggImJvcmRlckJvdHRvbVdpZHRoIiApLCAxMCApIHx8IDAgKSAtCgkJCQkoIHBhcnNlSW50KCBjLmNzcyggInBhZGRpbmdCb3R0b20iICksIDEwICkgfHwgMCApIC0KCQkJCXRoaXMuaGVscGVyUHJvcG9ydGlvbnMuaGVpZ2h0IC0KCQkJCXRoaXMubWFyZ2lucy50b3AgLQoJCQkJdGhpcy5tYXJnaW5zLmJvdHRvbQoJCV07CgkJdGhpcy5yZWxhdGl2ZUNvbnRhaW5lciA9IGM7Cgl9LAoKCV9jb252ZXJ0UG9zaXRpb25UbzogZnVuY3Rpb24oIGQsIHBvcyApIHsKCgkJaWYgKCAhcG9zICkgewoJCQlwb3MgPSB0aGlzLnBvc2l0aW9uOwoJCX0KCgkJdmFyIG1vZCA9IGQgPT09ICJhYnNvbHV0ZSIgPyAxIDogLTEsCgkJCXNjcm9sbElzUm9vdE5vZGUgPSB0aGlzLl9pc1Jvb3ROb2RlKCB0aGlzLnNjcm9sbFBhcmVudFsgMCBdICk7CgoJCXJldHVybiB7CgkJCXRvcDogKAoKCQkJCS8vIFRoZSBhYnNvbHV0ZSBtb3VzZSBwb3NpdGlvbgoJCQkJcG9zLnRvcAkrCgoJCQkJLy8gT25seSBmb3IgcmVsYXRpdmUgcG9zaXRpb25lZCBub2RlczogUmVsYXRpdmUgb2Zmc2V0IGZyb20gZWxlbWVudCB0byBvZmZzZXQgcGFyZW50CgkJCQl0aGlzLm9mZnNldC5yZWxhdGl2ZS50b3AgKiBtb2QgKwoKCQkJCS8vIFRoZSBvZmZzZXRQYXJlbnQncyBvZmZzZXQgd2l0aG91dCBib3JkZXJzIChvZmZzZXQgKyBib3JkZXIpCgkJCQl0aGlzLm9mZnNldC5wYXJlbnQudG9wICogbW9kIC0KCQkJCSggKCB0aGlzLmNzc1Bvc2l0aW9uID09PSAiZml4ZWQiID8KCQkJCQktdGhpcy5vZmZzZXQuc2Nyb2xsLnRvcCA6CgkJCQkJKCBzY3JvbGxJc1Jvb3ROb2RlID8gMCA6IHRoaXMub2Zmc2V0LnNjcm9sbC50b3AgKSApICogbW9kICkKCQkJKSwKCQkJbGVmdDogKAoKCQkJCS8vIFRoZSBhYnNvbHV0ZSBtb3VzZSBwb3NpdGlvbgoJCQkJcG9zLmxlZnQgKwoKCQkJCS8vIE9ubHkgZm9yIHJlbGF0aXZlIHBvc2l0aW9uZWQgbm9kZXM6IFJlbGF0aXZlIG9mZnNldCBmcm9tIGVsZW1lbnQgdG8gb2Zmc2V0IHBhcmVudAoJCQkJdGhpcy5vZmZzZXQucmVsYXRpdmUubGVmdCAqIG1vZCArCgoJCQkJLy8gVGhlIG9mZnNldFBhcmVudCdzIG9mZnNldCB3aXRob3V0IGJvcmRlcnMgKG9mZnNldCArIGJvcmRlcikKCQkJCXRoaXMub2Zmc2V0LnBhcmVudC5sZWZ0ICogbW9kCS0KCQkJCSggKCB0aGlzLmNzc1Bvc2l0aW9uID09PSAiZml4ZWQiID8KCQkJCQktdGhpcy5vZmZzZXQuc2Nyb2xsLmxlZnQgOgoJCQkJCSggc2Nyb2xsSXNSb290Tm9kZSA/IDAgOiB0aGlzLm9mZnNldC5zY3JvbGwubGVmdCApICkgKiBtb2QgKQoJCQkpCgkJfTsKCgl9LAoKCV9nZW5lcmF0ZVBvc2l0aW9uOiBmdW5jdGlvbiggZXZlbnQsIGNvbnN0cmFpblBvc2l0aW9uICkgewoKCQl2YXIgY29udGFpbm1lbnQsIGNvLCB0b3AsIGxlZnQsCgkJCW8gPSB0aGlzLm9wdGlvbnMsCgkJCXNjcm9sbElzUm9vdE5vZGUgPSB0aGlzLl9pc1Jvb3ROb2RlKCB0aGlzLnNjcm9sbFBhcmVudFsgMCBdICksCgkJCXBhZ2VYID0gZXZlbnQucGFnZVgsCgkJCXBhZ2VZID0gZXZlbnQucGFnZVk7CgoJCS8vIENhY2hlIHRoZSBzY3JvbGwKCQlpZiAoICFzY3JvbGxJc1Jvb3ROb2RlIHx8ICF0aGlzLm9mZnNldC5zY3JvbGwgKSB7CgkJCXRoaXMub2Zmc2V0LnNjcm9sbCA9IHsKCQkJCXRvcDogdGhpcy5zY3JvbGxQYXJlbnQuc2Nyb2xsVG9wKCksCgkJCQlsZWZ0OiB0aGlzLnNjcm9sbFBhcmVudC5zY3JvbGxMZWZ0KCkKCQkJfTsKCQl9CgoJCS8qCgkJICogLSBQb3NpdGlvbiBjb25zdHJhaW5pbmcgLQoJCSAqIENvbnN0cmFpbiB0aGUgcG9zaXRpb24gdG8gYSBtaXggb2YgZ3JpZCwgY29udGFpbm1lbnQuCgkJICovCgoJCS8vIElmIHdlIGFyZSBub3QgZHJhZ2dpbmcgeWV0LCB3ZSB3b24ndCBjaGVjayBmb3Igb3B0aW9ucwoJCWlmICggY29uc3RyYWluUG9zaXRpb24gKSB7CgkJCWlmICggdGhpcy5jb250YWlubWVudCApIHsKCQkJCWlmICggdGhpcy5yZWxhdGl2ZUNvbnRhaW5lciApIHsKCQkJCQljbyA9IHRoaXMucmVsYXRpdmVDb250YWluZXIub2Zmc2V0KCk7CgkJCQkJY29udGFpbm1lbnQgPSBbCgkJCQkJCXRoaXMuY29udGFpbm1lbnRbIDAgXSArIGNvLmxlZnQsCgkJCQkJCXRoaXMuY29udGFpbm1lbnRbIDEgXSArIGNvLnRvcCwKCQkJCQkJdGhpcy5jb250YWlubWVudFsgMiBdICsgY28ubGVmdCwKCQkJCQkJdGhpcy5jb250YWlubWVudFsgMyBdICsgY28udG9wCgkJCQkJXTsKCQkJCX0gZWxzZSB7CgkJCQkJY29udGFpbm1lbnQgPSB0aGlzLmNvbnRhaW5tZW50OwoJCQkJfQoKCQkJCWlmICggZXZlbnQucGFnZVggLSB0aGlzLm9mZnNldC5jbGljay5sZWZ0IDwgY29udGFpbm1lbnRbIDAgXSApIHsKCQkJCQlwYWdlWCA9IGNvbnRhaW5tZW50WyAwIF0gKyB0aGlzLm9mZnNldC5jbGljay5sZWZ0OwoJCQkJfQoJCQkJaWYgKCBldmVudC5wYWdlWSAtIHRoaXMub2Zmc2V0LmNsaWNrLnRvcCA8IGNvbnRhaW5tZW50WyAxIF0gKSB7CgkJCQkJcGFnZVkgPSBjb250YWlubWVudFsgMSBdICsgdGhpcy5vZmZzZXQuY2xpY2sudG9wOwoJCQkJfQoJCQkJaWYgKCBldmVudC5wYWdlWCAtIHRoaXMub2Zmc2V0LmNsaWNrLmxlZnQgPiBjb250YWlubWVudFsgMiBdICkgewoJCQkJCXBhZ2VYID0gY29udGFpbm1lbnRbIDIgXSArIHRoaXMub2Zmc2V0LmNsaWNrLmxlZnQ7CgkJCQl9CgkJCQlpZiAoIGV2ZW50LnBhZ2VZIC0gdGhpcy5vZmZzZXQuY2xpY2sudG9wID4gY29udGFpbm1lbnRbIDMgXSApIHsKCQkJCQlwYWdlWSA9IGNvbnRhaW5tZW50WyAzIF0gKyB0aGlzLm9mZnNldC5jbGljay50b3A7CgkJCQl9CgkJCX0KCgkJCWlmICggby5ncmlkICkgewoKCQkJCS8vQ2hlY2sgZm9yIGdyaWQgZWxlbWVudHMgc2V0IHRvIDAgdG8gcHJldmVudCBkaXZpZGUgYnkgMCBlcnJvciBjYXVzaW5nIGludmFsaWQKCQkJCS8vIGFyZ3VtZW50IGVycm9ycyBpbiBJRSAoc2VlIHRpY2tldCAjNjk1MCkKCQkJCXRvcCA9IG8uZ3JpZFsgMSBdID8gdGhpcy5vcmlnaW5hbFBhZ2VZICsgTWF0aC5yb3VuZCggKCBwYWdlWSAtCgkJCQkJdGhpcy5vcmlnaW5hbFBhZ2VZICkgLyBvLmdyaWRbIDEgXSApICogby5ncmlkWyAxIF0gOiB0aGlzLm9yaWdpbmFsUGFnZVk7CgkJCQlwYWdlWSA9IGNvbnRhaW5tZW50ID8gKCAoIHRvcCAtIHRoaXMub2Zmc2V0LmNsaWNrLnRvcCA+PSBjb250YWlubWVudFsgMSBdIHx8CgkJCQkJdG9wIC0gdGhpcy5vZmZzZXQuY2xpY2sudG9wID4gY29udGFpbm1lbnRbIDMgXSApID8KCQkJCQkJdG9wIDoKCQkJCQkJKCAoIHRvcCAtIHRoaXMub2Zmc2V0LmNsaWNrLnRvcCA+PSBjb250YWlubWVudFsgMSBdICkgPwoJCQkJCQkJdG9wIC0gby5ncmlkWyAxIF0gOiB0b3AgKyBvLmdyaWRbIDEgXSApICkgOiB0b3A7CgoJCQkJbGVmdCA9IG8uZ3JpZFsgMCBdID8gdGhpcy5vcmlnaW5hbFBhZ2VYICsKCQkJCQlNYXRoLnJvdW5kKCAoIHBhZ2VYIC0gdGhpcy5vcmlnaW5hbFBhZ2VYICkgLyBvLmdyaWRbIDAgXSApICogby5ncmlkWyAwIF0gOgoJCQkJCXRoaXMub3JpZ2luYWxQYWdlWDsKCQkJCXBhZ2VYID0gY29udGFpbm1lbnQgPyAoICggbGVmdCAtIHRoaXMub2Zmc2V0LmNsaWNrLmxlZnQgPj0gY29udGFpbm1lbnRbIDAgXSB8fAoJCQkJCWxlZnQgLSB0aGlzLm9mZnNldC5jbGljay5sZWZ0ID4gY29udGFpbm1lbnRbIDIgXSApID8KCQkJCQkJbGVmdCA6CgkJCQkJCSggKCBsZWZ0IC0gdGhpcy5vZmZzZXQuY2xpY2subGVmdCA+PSBjb250YWlubWVudFsgMCBdICkgPwoJCQkJCQkJbGVmdCAtIG8uZ3JpZFsgMCBdIDogbGVmdCArIG8uZ3JpZFsgMCBdICkgKSA6IGxlZnQ7CgkJCX0KCgkJCWlmICggby5heGlzID09PSAieSIgKSB7CgkJCQlwYWdlWCA9IHRoaXMub3JpZ2luYWxQYWdlWDsKCQkJfQoKCQkJaWYgKCBvLmF4aXMgPT09ICJ4IiApIHsKCQkJCXBhZ2VZID0gdGhpcy5vcmlnaW5hbFBhZ2VZOwoJCQl9CgkJfQoKCQlyZXR1cm4gewoJCQl0b3A6ICgKCgkJCQkvLyBUaGUgYWJzb2x1dGUgbW91c2UgcG9zaXRpb24KCQkJCXBhZ2VZIC0KCgkJCQkvLyBDbGljayBvZmZzZXQgKHJlbGF0aXZlIHRvIHRoZSBlbGVtZW50KQoJCQkJdGhpcy5vZmZzZXQuY2xpY2sudG9wIC0KCgkJCQkvLyBPbmx5IGZvciByZWxhdGl2ZSBwb3NpdGlvbmVkIG5vZGVzOiBSZWxhdGl2ZSBvZmZzZXQgZnJvbSBlbGVtZW50IHRvIG9mZnNldCBwYXJlbnQKCQkJCXRoaXMub2Zmc2V0LnJlbGF0aXZlLnRvcCAtCgoJCQkJLy8gVGhlIG9mZnNldFBhcmVudCdzIG9mZnNldCB3aXRob3V0IGJvcmRlcnMgKG9mZnNldCArIGJvcmRlcikKCQkJCXRoaXMub2Zmc2V0LnBhcmVudC50b3AgKwoJCQkJKCB0aGlzLmNzc1Bvc2l0aW9uID09PSAiZml4ZWQiID8KCQkJCQktdGhpcy5vZmZzZXQuc2Nyb2xsLnRvcCA6CgkJCQkJKCBzY3JvbGxJc1Jvb3ROb2RlID8gMCA6IHRoaXMub2Zmc2V0LnNjcm9sbC50b3AgKSApCgkJCSksCgkJCWxlZnQ6ICgKCgkJCQkvLyBUaGUgYWJzb2x1dGUgbW91c2UgcG9zaXRpb24KCQkJCXBhZ2VYIC0KCgkJCQkvLyBDbGljayBvZmZzZXQgKHJlbGF0aXZlIHRvIHRoZSBlbGVtZW50KQoJCQkJdGhpcy5vZmZzZXQuY2xpY2subGVmdCAtCgoJCQkJLy8gT25seSBmb3IgcmVsYXRpdmUgcG9zaXRpb25lZCBub2RlczogUmVsYXRpdmUgb2Zmc2V0IGZyb20gZWxlbWVudCB0byBvZmZzZXQgcGFyZW50CgkJCQl0aGlzLm9mZnNldC5yZWxhdGl2ZS5sZWZ0IC0KCgkJCQkvLyBUaGUgb2Zmc2V0UGFyZW50J3Mgb2Zmc2V0IHdpdGhvdXQgYm9yZGVycyAob2Zmc2V0ICsgYm9yZGVyKQoJCQkJdGhpcy5vZmZzZXQucGFyZW50LmxlZnQgKwoJCQkJKCB0aGlzLmNzc1Bvc2l0aW9uID09PSAiZml4ZWQiID8KCQkJCQktdGhpcy5vZmZzZXQuc2Nyb2xsLmxlZnQgOgoJCQkJCSggc2Nyb2xsSXNSb290Tm9kZSA/IDAgOiB0aGlzLm9mZnNldC5zY3JvbGwubGVmdCApICkKCQkJKQoJCX07CgoJfSwKCglfY2xlYXI6IGZ1bmN0aW9uKCkgewoJCXRoaXMuX3JlbW92ZUNsYXNzKCB0aGlzLmhlbHBlciwgInVpLWRyYWdnYWJsZS1kcmFnZ2luZyIgKTsKCQlpZiAoIHRoaXMuaGVscGVyWyAwIF0gIT09IHRoaXMuZWxlbWVudFsgMCBdICYmICF0aGlzLmNhbmNlbEhlbHBlclJlbW92YWwgKSB7CgkJCXRoaXMuaGVscGVyLnJlbW92ZSgpOwoJCX0KCQl0aGlzLmhlbHBlciA9IG51bGw7CgkJdGhpcy5jYW5jZWxIZWxwZXJSZW1vdmFsID0gZmFsc2U7CgkJaWYgKCB0aGlzLmRlc3Ryb3lPbkNsZWFyICkgewoJCQl0aGlzLmRlc3Ryb3koKTsKCQl9Cgl9LAoKCS8vIEZyb20gbm93IG9uIGJ1bGsgc3R1ZmYgLSBtYWlubHkgaGVscGVycwoKCV90cmlnZ2VyOiBmdW5jdGlvbiggdHlwZSwgZXZlbnQsIHVpICkgewoJCXVpID0gdWkgfHwgdGhpcy5fdWlIYXNoKCk7CgkJJC51aS5wbHVnaW4uY2FsbCggdGhpcywgdHlwZSwgWyBldmVudCwgdWksIHRoaXMgXSwgdHJ1ZSApOwoKCQkvLyBBYnNvbHV0ZSBwb3NpdGlvbiBhbmQgb2Zmc2V0IChzZWUgIzY4ODQgKSBoYXZlIHRvIGJlIHJlY2FsY3VsYXRlZCBhZnRlciBwbHVnaW5zCgkJaWYgKCAvXihkcmFnfHN0YXJ0fHN0b3ApLy50ZXN0KCB0eXBlICkgKSB7CgkJCXRoaXMucG9zaXRpb25BYnMgPSB0aGlzLl9jb252ZXJ0UG9zaXRpb25UbyggImFic29sdXRlIiApOwoJCQl1aS5vZmZzZXQgPSB0aGlzLnBvc2l0aW9uQWJzOwoJCX0KCQlyZXR1cm4gJC5XaWRnZXQucHJvdG90eXBlLl90cmlnZ2VyLmNhbGwoIHRoaXMsIHR5cGUsIGV2ZW50LCB1aSApOwoJfSwKCglwbHVnaW5zOiB7fSwKCglfdWlIYXNoOiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gewoJCQloZWxwZXI6IHRoaXMuaGVscGVyLAoJCQlwb3NpdGlvbjogdGhpcy5wb3NpdGlvbiwKCQkJb3JpZ2luYWxQb3NpdGlvbjogdGhpcy5vcmlnaW5hbFBvc2l0aW9uLAoJCQlvZmZzZXQ6IHRoaXMucG9zaXRpb25BYnMKCQl9OwoJfQoKfSApOwoKJC51aS5wbHVnaW4uYWRkKCAiZHJhZ2dhYmxlIiwgImNvbm5lY3RUb1NvcnRhYmxlIiwgewoJc3RhcnQ6IGZ1bmN0aW9uKCBldmVudCwgdWksIGRyYWdnYWJsZSApIHsKCQl2YXIgdWlTb3J0YWJsZSA9ICQuZXh0ZW5kKCB7fSwgdWksIHsKCQkJaXRlbTogZHJhZ2dhYmxlLmVsZW1lbnQKCQl9ICk7CgoJCWRyYWdnYWJsZS5zb3J0YWJsZXMgPSBbXTsKCQkkKCBkcmFnZ2FibGUub3B0aW9ucy5jb25uZWN0VG9Tb3J0YWJsZSApLmVhY2goIGZ1bmN0aW9uKCkgewoJCQl2YXIgc29ydGFibGUgPSAkKCB0aGlzICkuc29ydGFibGUoICJpbnN0YW5jZSIgKTsKCgkJCWlmICggc29ydGFibGUgJiYgIXNvcnRhYmxlLm9wdGlvbnMuZGlzYWJsZWQgKSB7CgkJCQlkcmFnZ2FibGUuc29ydGFibGVzLnB1c2goIHNvcnRhYmxlICk7CgoJCQkJLy8gUmVmcmVzaFBvc2l0aW9ucyBpcyBjYWxsZWQgYXQgZHJhZyBzdGFydCB0byByZWZyZXNoIHRoZSBjb250YWluZXJDYWNoZQoJCQkJLy8gd2hpY2ggaXMgdXNlZCBpbiBkcmFnLiBUaGlzIGVuc3VyZXMgaXQncyBpbml0aWFsaXplZCBhbmQgc3luY2hyb25pemVkCgkJCQkvLyB3aXRoIGFueSBjaGFuZ2VzIHRoYXQgbWlnaHQgaGF2ZSBoYXBwZW5lZCBvbiB0aGUgcGFnZSBzaW5jZSBpbml0aWFsaXphdGlvbi4KCQkJCXNvcnRhYmxlLnJlZnJlc2hQb3NpdGlvbnMoKTsKCQkJCXNvcnRhYmxlLl90cmlnZ2VyKCAiYWN0aXZhdGUiLCBldmVudCwgdWlTb3J0YWJsZSApOwoJCQl9CgkJfSApOwoJfSwKCXN0b3A6IGZ1bmN0aW9uKCBldmVudCwgdWksIGRyYWdnYWJsZSApIHsKCQl2YXIgdWlTb3J0YWJsZSA9ICQuZXh0ZW5kKCB7fSwgdWksIHsKCQkJaXRlbTogZHJhZ2dhYmxlLmVsZW1lbnQKCQl9ICk7CgoJCWRyYWdnYWJsZS5jYW5jZWxIZWxwZXJSZW1vdmFsID0gZmFsc2U7CgoJCSQuZWFjaCggZHJhZ2dhYmxlLnNvcnRhYmxlcywgZnVuY3Rpb24oKSB7CgkJCXZhciBzb3J0YWJsZSA9IHRoaXM7CgoJCQlpZiAoIHNvcnRhYmxlLmlzT3ZlciApIHsKCQkJCXNvcnRhYmxlLmlzT3ZlciA9IDA7CgoJCQkJLy8gQWxsb3cgdGhpcyBzb3J0YWJsZSB0byBoYW5kbGUgcmVtb3ZpbmcgdGhlIGhlbHBlcgoJCQkJZHJhZ2dhYmxlLmNhbmNlbEhlbHBlclJlbW92YWwgPSB0cnVlOwoJCQkJc29ydGFibGUuY2FuY2VsSGVscGVyUmVtb3ZhbCA9IGZhbHNlOwoKCQkJCS8vIFVzZSBfc3RvcmVkQ1NTIFRvIHJlc3RvcmUgcHJvcGVydGllcyBpbiB0aGUgc29ydGFibGUsCgkJCQkvLyBhcyB0aGlzIGFsc28gaGFuZGxlcyByZXZlcnQgKCM5Njc1KSBzaW5jZSB0aGUgZHJhZ2dhYmxlCgkJCQkvLyBtYXkgaGF2ZSBtb2RpZmllZCB0aGVtIGluIHVuZXhwZWN0ZWQgd2F5cyAoIzg4MDkpCgkJCQlzb3J0YWJsZS5fc3RvcmVkQ1NTID0gewoJCQkJCXBvc2l0aW9uOiBzb3J0YWJsZS5wbGFjZWhvbGRlci5jc3MoICJwb3NpdGlvbiIgKSwKCQkJCQl0b3A6IHNvcnRhYmxlLnBsYWNlaG9sZGVyLmNzcyggInRvcCIgKSwKCQkJCQlsZWZ0OiBzb3J0YWJsZS5wbGFjZWhvbGRlci5jc3MoICJsZWZ0IiApCgkJCQl9OwoKCQkJCXNvcnRhYmxlLl9tb3VzZVN0b3AoIGV2ZW50ICk7CgoJCQkJLy8gT25jZSBkcmFnIGhhcyBlbmRlZCwgdGhlIHNvcnRhYmxlIHNob3VsZCByZXR1cm4gdG8gdXNpbmcKCQkJCS8vIGl0cyBvcmlnaW5hbCBoZWxwZXIsIG5vdCB0aGUgc2hhcmVkIGhlbHBlciBmcm9tIGRyYWdnYWJsZQoJCQkJc29ydGFibGUub3B0aW9ucy5oZWxwZXIgPSBzb3J0YWJsZS5vcHRpb25zLl9oZWxwZXI7CgkJCX0gZWxzZSB7CgoJCQkJLy8gUHJldmVudCB0aGlzIFNvcnRhYmxlIGZyb20gcmVtb3ZpbmcgdGhlIGhlbHBlci4KCQkJCS8vIEhvd2V2ZXIsIGRvbid0IHNldCB0aGUgZHJhZ2dhYmxlIHRvIHJlbW92ZSB0aGUgaGVscGVyCgkJCQkvLyBlaXRoZXIgYXMgYW5vdGhlciBjb25uZWN0ZWQgU29ydGFibGUgbWF5IHlldCBoYW5kbGUgdGhlIHJlbW92YWwuCgkJCQlzb3J0YWJsZS5jYW5jZWxIZWxwZXJSZW1vdmFsID0gdHJ1ZTsKCgkJCQlzb3J0YWJsZS5fdHJpZ2dlciggImRlYWN0aXZhdGUiLCBldmVudCwgdWlTb3J0YWJsZSApOwoJCQl9CgkJfSApOwoJfSwKCWRyYWc6IGZ1bmN0aW9uKCBldmVudCwgdWksIGRyYWdnYWJsZSApIHsKCQkkLmVhY2goIGRyYWdnYWJsZS5zb3J0YWJsZXMsIGZ1bmN0aW9uKCkgewoJCQl2YXIgaW5uZXJtb3N0SW50ZXJzZWN0aW5nID0gZmFsc2UsCgkJCQlzb3J0YWJsZSA9IHRoaXM7CgoJCQkvLyBDb3B5IG92ZXIgdmFyaWFibGVzIHRoYXQgc29ydGFibGUncyBfaW50ZXJzZWN0c1dpdGggdXNlcwoJCQlzb3J0YWJsZS5wb3NpdGlvbkFicyA9IGRyYWdnYWJsZS5wb3NpdGlvbkFiczsKCQkJc29ydGFibGUuaGVscGVyUHJvcG9ydGlvbnMgPSBkcmFnZ2FibGUuaGVscGVyUHJvcG9ydGlvbnM7CgkJCXNvcnRhYmxlLm9mZnNldC5jbGljayA9IGRyYWdnYWJsZS5vZmZzZXQuY2xpY2s7CgoJCQlpZiAoIHNvcnRhYmxlLl9pbnRlcnNlY3RzV2l0aCggc29ydGFibGUuY29udGFpbmVyQ2FjaGUgKSApIHsKCQkJCWlubmVybW9zdEludGVyc2VjdGluZyA9IHRydWU7CgoJCQkJJC5lYWNoKCBkcmFnZ2FibGUuc29ydGFibGVzLCBmdW5jdGlvbigpIHsKCgkJCQkJLy8gQ29weSBvdmVyIHZhcmlhYmxlcyB0aGF0IHNvcnRhYmxlJ3MgX2ludGVyc2VjdHNXaXRoIHVzZXMKCQkJCQl0aGlzLnBvc2l0aW9uQWJzID0gZHJhZ2dhYmxlLnBvc2l0aW9uQWJzOwoJCQkJCXRoaXMuaGVscGVyUHJvcG9ydGlvbnMgPSBkcmFnZ2FibGUuaGVscGVyUHJvcG9ydGlvbnM7CgkJCQkJdGhpcy5vZmZzZXQuY2xpY2sgPSBkcmFnZ2FibGUub2Zmc2V0LmNsaWNrOwoKCQkJCQlpZiAoIHRoaXMgIT09IHNvcnRhYmxlICYmCgkJCQkJCQl0aGlzLl9pbnRlcnNlY3RzV2l0aCggdGhpcy5jb250YWluZXJDYWNoZSApICYmCgkJCQkJCQkkLmNvbnRhaW5zKCBzb3J0YWJsZS5lbGVtZW50WyAwIF0sIHRoaXMuZWxlbWVudFsgMCBdICkgKSB7CgkJCQkJCWlubmVybW9zdEludGVyc2VjdGluZyA9IGZhbHNlOwoJCQkJCX0KCgkJCQkJcmV0dXJuIGlubmVybW9zdEludGVyc2VjdGluZzsKCQkJCX0gKTsKCQkJfQoKCQkJaWYgKCBpbm5lcm1vc3RJbnRlcnNlY3RpbmcgKSB7CgoJCQkJLy8gSWYgaXQgaW50ZXJzZWN0cywgd2UgdXNlIGEgbGl0dGxlIGlzT3ZlciB2YXJpYWJsZSBhbmQgc2V0IGl0IG9uY2UsCgkJCQkvLyBzbyB0aGF0IHRoZSBtb3ZlLWluIHN0dWZmIGdldHMgZmlyZWQgb25seSBvbmNlLgoJCQkJaWYgKCAhc29ydGFibGUuaXNPdmVyICkgewoJCQkJCXNvcnRhYmxlLmlzT3ZlciA9IDE7CgoJCQkJCS8vIFN0b3JlIGRyYWdnYWJsZSdzIHBhcmVudCBpbiBjYXNlIHdlIG5lZWQgdG8gcmVhcHBlbmQgdG8gaXQgbGF0ZXIuCgkJCQkJZHJhZ2dhYmxlLl9wYXJlbnQgPSB1aS5oZWxwZXIucGFyZW50KCk7CgoJCQkJCXNvcnRhYmxlLmN1cnJlbnRJdGVtID0gdWkuaGVscGVyCgkJCQkJCS5hcHBlbmRUbyggc29ydGFibGUuZWxlbWVudCApCgkJCQkJCS5kYXRhKCAidWktc29ydGFibGUtaXRlbSIsIHRydWUgKTsKCgkJCQkJLy8gU3RvcmUgaGVscGVyIG9wdGlvbiB0byBsYXRlciByZXN0b3JlIGl0CgkJCQkJc29ydGFibGUub3B0aW9ucy5faGVscGVyID0gc29ydGFibGUub3B0aW9ucy5oZWxwZXI7CgoJCQkJCXNvcnRhYmxlLm9wdGlvbnMuaGVscGVyID0gZnVuY3Rpb24oKSB7CgkJCQkJCXJldHVybiB1aS5oZWxwZXJbIDAgXTsKCQkJCQl9OwoKCQkJCQkvLyBGaXJlIHRoZSBzdGFydCBldmVudHMgb2YgdGhlIHNvcnRhYmxlIHdpdGggb3VyIHBhc3NlZCBicm93c2VyIGV2ZW50LAoJCQkJCS8vIGFuZCBvdXIgb3duIGhlbHBlciAoc28gaXQgZG9lc24ndCBjcmVhdGUgYSBuZXcgb25lKQoJCQkJCWV2ZW50LnRhcmdldCA9IHNvcnRhYmxlLmN1cnJlbnRJdGVtWyAwIF07CgkJCQkJc29ydGFibGUuX21vdXNlQ2FwdHVyZSggZXZlbnQsIHRydWUgKTsKCQkJCQlzb3J0YWJsZS5fbW91c2VTdGFydCggZXZlbnQsIHRydWUsIHRydWUgKTsKCgkJCQkJLy8gQmVjYXVzZSB0aGUgYnJvd3NlciBldmVudCBpcyB3YXkgb2ZmIHRoZSBuZXcgYXBwZW5kZWQgcG9ydGxldCwKCQkJCQkvLyBtb2RpZnkgbmVjZXNzYXJ5IHZhcmlhYmxlcyB0byByZWZsZWN0IHRoZSBjaGFuZ2VzCgkJCQkJc29ydGFibGUub2Zmc2V0LmNsaWNrLnRvcCA9IGRyYWdnYWJsZS5vZmZzZXQuY2xpY2sudG9wOwoJCQkJCXNvcnRhYmxlLm9mZnNldC5jbGljay5sZWZ0ID0gZHJhZ2dhYmxlLm9mZnNldC5jbGljay5sZWZ0OwoJCQkJCXNvcnRhYmxlLm9mZnNldC5wYXJlbnQubGVmdCAtPSBkcmFnZ2FibGUub2Zmc2V0LnBhcmVudC5sZWZ0IC0KCQkJCQkJc29ydGFibGUub2Zmc2V0LnBhcmVudC5sZWZ0OwoJCQkJCXNvcnRhYmxlLm9mZnNldC5wYXJlbnQudG9wIC09IGRyYWdnYWJsZS5vZmZzZXQucGFyZW50LnRvcCAtCgkJCQkJCXNvcnRhYmxlLm9mZnNldC5wYXJlbnQudG9wOwoKCQkJCQlkcmFnZ2FibGUuX3RyaWdnZXIoICJ0b1NvcnRhYmxlIiwgZXZlbnQgKTsKCgkJCQkJLy8gSW5mb3JtIGRyYWdnYWJsZSB0aGF0IHRoZSBoZWxwZXIgaXMgaW4gYSB2YWxpZCBkcm9wIHpvbmUsCgkJCQkJLy8gdXNlZCBzb2xlbHkgaW4gdGhlIHJldmVydCBvcHRpb24gdG8gaGFuZGxlICJ2YWxpZC9pbnZhbGlkIi4KCQkJCQlkcmFnZ2FibGUuZHJvcHBlZCA9IHNvcnRhYmxlLmVsZW1lbnQ7CgoJCQkJCS8vIE5lZWQgdG8gcmVmcmVzaFBvc2l0aW9ucyBvZiBhbGwgc29ydGFibGVzIGluIHRoZSBjYXNlIHRoYXQKCQkJCQkvLyBhZGRpbmcgdG8gb25lIHNvcnRhYmxlIGNoYW5nZXMgdGhlIGxvY2F0aW9uIG9mIHRoZSBvdGhlciBzb3J0YWJsZXMgKCM5Njc1KQoJCQkJCSQuZWFjaCggZHJhZ2dhYmxlLnNvcnRhYmxlcywgZnVuY3Rpb24oKSB7CgkJCQkJCXRoaXMucmVmcmVzaFBvc2l0aW9ucygpOwoJCQkJCX0gKTsKCgkJCQkJLy8gSGFjayBzbyByZWNlaXZlL3VwZGF0ZSBjYWxsYmFja3Mgd29yayAobW9zdGx5KQoJCQkJCWRyYWdnYWJsZS5jdXJyZW50SXRlbSA9IGRyYWdnYWJsZS5lbGVtZW50OwoJCQkJCXNvcnRhYmxlLmZyb21PdXRzaWRlID0gZHJhZ2dhYmxlOwoJCQkJfQoKCQkJCWlmICggc29ydGFibGUuY3VycmVudEl0ZW0gKSB7CgkJCQkJc29ydGFibGUuX21vdXNlRHJhZyggZXZlbnQgKTsKCgkJCQkJLy8gQ29weSB0aGUgc29ydGFibGUncyBwb3NpdGlvbiBiZWNhdXNlIHRoZSBkcmFnZ2FibGUncyBjYW4gcG90ZW50aWFsbHkgcmVmbGVjdAoJCQkJCS8vIGEgcmVsYXRpdmUgcG9zaXRpb24sIHdoaWxlIHNvcnRhYmxlIGlzIGFsd2F5cyBhYnNvbHV0ZSwgd2hpY2ggdGhlIGRyYWdnZWQKCQkJCQkvLyBlbGVtZW50IGhhcyBub3cgYmVjb21lLiAoIzg4MDkpCgkJCQkJdWkucG9zaXRpb24gPSBzb3J0YWJsZS5wb3NpdGlvbjsKCQkJCX0KCQkJfSBlbHNlIHsKCgkJCQkvLyBJZiBpdCBkb2Vzbid0IGludGVyc2VjdCB3aXRoIHRoZSBzb3J0YWJsZSwgYW5kIGl0IGludGVyc2VjdGVkIGJlZm9yZSwKCQkJCS8vIHdlIGZha2UgdGhlIGRyYWcgc3RvcCBvZiB0aGUgc29ydGFibGUsIGJ1dCBtYWtlIHN1cmUgaXQgZG9lc24ndCByZW1vdmUKCQkJCS8vIHRoZSBoZWxwZXIgYnkgdXNpbmcgY2FuY2VsSGVscGVyUmVtb3ZhbC4KCQkJCWlmICggc29ydGFibGUuaXNPdmVyICkgewoKCQkJCQlzb3J0YWJsZS5pc092ZXIgPSAwOwoJCQkJCXNvcnRhYmxlLmNhbmNlbEhlbHBlclJlbW92YWwgPSB0cnVlOwoKCQkJCQkvLyBDYWxsaW5nIHNvcnRhYmxlJ3MgbW91c2VTdG9wIHdvdWxkIHRyaWdnZXIgYSByZXZlcnQsCgkJCQkJLy8gc28gcmV2ZXJ0IG11c3QgYmUgdGVtcG9yYXJpbHkgZmFsc2UgdW50aWwgYWZ0ZXIgbW91c2VTdG9wIGlzIGNhbGxlZC4KCQkJCQlzb3J0YWJsZS5vcHRpb25zLl9yZXZlcnQgPSBzb3J0YWJsZS5vcHRpb25zLnJldmVydDsKCQkJCQlzb3J0YWJsZS5vcHRpb25zLnJldmVydCA9IGZhbHNlOwoKCQkJCQlzb3J0YWJsZS5fdHJpZ2dlciggIm91dCIsIGV2ZW50LCBzb3J0YWJsZS5fdWlIYXNoKCBzb3J0YWJsZSApICk7CgkJCQkJc29ydGFibGUuX21vdXNlU3RvcCggZXZlbnQsIHRydWUgKTsKCgkJCQkJLy8gUmVzdG9yZSBzb3J0YWJsZSBiZWhhdmlvcnMgdGhhdCB3ZXJlIG1vZGZpZWQKCQkJCQkvLyB3aGVuIHRoZSBkcmFnZ2FibGUgZW50ZXJlZCB0aGUgc29ydGFibGUgYXJlYSAoIzk0ODEpCgkJCQkJc29ydGFibGUub3B0aW9ucy5yZXZlcnQgPSBzb3J0YWJsZS5vcHRpb25zLl9yZXZlcnQ7CgkJCQkJc29ydGFibGUub3B0aW9ucy5oZWxwZXIgPSBzb3J0YWJsZS5vcHRpb25zLl9oZWxwZXI7CgoJCQkJCWlmICggc29ydGFibGUucGxhY2Vob2xkZXIgKSB7CgkJCQkJCXNvcnRhYmxlLnBsYWNlaG9sZGVyLnJlbW92ZSgpOwoJCQkJCX0KCgkJCQkJLy8gUmVzdG9yZSBhbmQgcmVjYWxjdWxhdGUgdGhlIGRyYWdnYWJsZSdzIG9mZnNldCBjb25zaWRlcmluZyB0aGUgc29ydGFibGUKCQkJCQkvLyBtYXkgaGF2ZSBtb2RpZmllZCB0aGVtIGluIHVuZXhwZWN0ZWQgd2F5cy4gKCM4ODA5LCAjMTA2NjkpCgkJCQkJdWkuaGVscGVyLmFwcGVuZFRvKCBkcmFnZ2FibGUuX3BhcmVudCApOwoJCQkJCWRyYWdnYWJsZS5fcmVmcmVzaE9mZnNldHMoIGV2ZW50ICk7CgkJCQkJdWkucG9zaXRpb24gPSBkcmFnZ2FibGUuX2dlbmVyYXRlUG9zaXRpb24oIGV2ZW50LCB0cnVlICk7CgoJCQkJCWRyYWdnYWJsZS5fdHJpZ2dlciggImZyb21Tb3J0YWJsZSIsIGV2ZW50ICk7CgoJCQkJCS8vIEluZm9ybSBkcmFnZ2FibGUgdGhhdCB0aGUgaGVscGVyIGlzIG5vIGxvbmdlciBpbiBhIHZhbGlkIGRyb3Agem9uZQoJCQkJCWRyYWdnYWJsZS5kcm9wcGVkID0gZmFsc2U7CgoJCQkJCS8vIE5lZWQgdG8gcmVmcmVzaFBvc2l0aW9ucyBvZiBhbGwgc29ydGFibGVzIGp1c3QgaW4gY2FzZSByZW1vdmluZwoJCQkJCS8vIGZyb20gb25lIHNvcnRhYmxlIGNoYW5nZXMgdGhlIGxvY2F0aW9uIG9mIG90aGVyIHNvcnRhYmxlcyAoIzk2NzUpCgkJCQkJJC5lYWNoKCBkcmFnZ2FibGUuc29ydGFibGVzLCBmdW5jdGlvbigpIHsKCQkJCQkJdGhpcy5yZWZyZXNoUG9zaXRpb25zKCk7CgkJCQkJfSApOwoJCQkJfQoJCQl9CgkJfSApOwoJfQp9ICk7CgokLnVpLnBsdWdpbi5hZGQoICJkcmFnZ2FibGUiLCAiY3Vyc29yIiwgewoJc3RhcnQ6IGZ1bmN0aW9uKCBldmVudCwgdWksIGluc3RhbmNlICkgewoJCXZhciB0ID0gJCggImJvZHkiICksCgkJCW8gPSBpbnN0YW5jZS5vcHRpb25zOwoKCQlpZiAoIHQuY3NzKCAiY3Vyc29yIiApICkgewoJCQlvLl9jdXJzb3IgPSB0LmNzcyggImN1cnNvciIgKTsKCQl9CgkJdC5jc3MoICJjdXJzb3IiLCBvLmN1cnNvciApOwoJfSwKCXN0b3A6IGZ1bmN0aW9uKCBldmVudCwgdWksIGluc3RhbmNlICkgewoJCXZhciBvID0gaW5zdGFuY2Uub3B0aW9uczsKCQlpZiAoIG8uX2N1cnNvciApIHsKCQkJJCggImJvZHkiICkuY3NzKCAiY3Vyc29yIiwgby5fY3Vyc29yICk7CgkJfQoJfQp9ICk7CgokLnVpLnBsdWdpbi5hZGQoICJkcmFnZ2FibGUiLCAib3BhY2l0eSIsIHsKCXN0YXJ0OiBmdW5jdGlvbiggZXZlbnQsIHVpLCBpbnN0YW5jZSApIHsKCQl2YXIgdCA9ICQoIHVpLmhlbHBlciApLAoJCQlvID0gaW5zdGFuY2Uub3B0aW9uczsKCQlpZiAoIHQuY3NzKCAib3BhY2l0eSIgKSApIHsKCQkJby5fb3BhY2l0eSA9IHQuY3NzKCAib3BhY2l0eSIgKTsKCQl9CgkJdC5jc3MoICJvcGFjaXR5Iiwgby5vcGFjaXR5ICk7Cgl9LAoJc3RvcDogZnVuY3Rpb24oIGV2ZW50LCB1aSwgaW5zdGFuY2UgKSB7CgkJdmFyIG8gPSBpbnN0YW5jZS5vcHRpb25zOwoJCWlmICggby5fb3BhY2l0eSApIHsKCQkJJCggdWkuaGVscGVyICkuY3NzKCAib3BhY2l0eSIsIG8uX29wYWNpdHkgKTsKCQl9Cgl9Cn0gKTsKCiQudWkucGx1Z2luLmFkZCggImRyYWdnYWJsZSIsICJzY3JvbGwiLCB7CglzdGFydDogZnVuY3Rpb24oIGV2ZW50LCB1aSwgaSApIHsKCQlpZiAoICFpLnNjcm9sbFBhcmVudE5vdEhpZGRlbiApIHsKCQkJaS5zY3JvbGxQYXJlbnROb3RIaWRkZW4gPSBpLmhlbHBlci5zY3JvbGxQYXJlbnQoIGZhbHNlICk7CgkJfQoKCQlpZiAoIGkuc2Nyb2xsUGFyZW50Tm90SGlkZGVuWyAwIF0gIT09IGkuZG9jdW1lbnRbIDAgXSAmJgoJCQkJaS5zY3JvbGxQYXJlbnROb3RIaWRkZW5bIDAgXS50YWdOYW1lICE9PSAiSFRNTCIgKSB7CgkJCWkub3ZlcmZsb3dPZmZzZXQgPSBpLnNjcm9sbFBhcmVudE5vdEhpZGRlbi5vZmZzZXQoKTsKCQl9Cgl9LAoJZHJhZzogZnVuY3Rpb24oIGV2ZW50LCB1aSwgaSAgKSB7CgoJCXZhciBvID0gaS5vcHRpb25zLAoJCQlzY3JvbGxlZCA9IGZhbHNlLAoJCQlzY3JvbGxQYXJlbnQgPSBpLnNjcm9sbFBhcmVudE5vdEhpZGRlblsgMCBdLAoJCQlkb2N1bWVudCA9IGkuZG9jdW1lbnRbIDAgXTsKCgkJaWYgKCBzY3JvbGxQYXJlbnQgIT09IGRvY3VtZW50ICYmIHNjcm9sbFBhcmVudC50YWdOYW1lICE9PSAiSFRNTCIgKSB7CgkJCWlmICggIW8uYXhpcyB8fCBvLmF4aXMgIT09ICJ4IiApIHsKCQkJCWlmICggKCBpLm92ZXJmbG93T2Zmc2V0LnRvcCArIHNjcm9sbFBhcmVudC5vZmZzZXRIZWlnaHQgKSAtIGV2ZW50LnBhZ2VZIDwKCQkJCQkJby5zY3JvbGxTZW5zaXRpdml0eSApIHsKCQkJCQlzY3JvbGxQYXJlbnQuc2Nyb2xsVG9wID0gc2Nyb2xsZWQgPSBzY3JvbGxQYXJlbnQuc2Nyb2xsVG9wICsgby5zY3JvbGxTcGVlZDsKCQkJCX0gZWxzZSBpZiAoIGV2ZW50LnBhZ2VZIC0gaS5vdmVyZmxvd09mZnNldC50b3AgPCBvLnNjcm9sbFNlbnNpdGl2aXR5ICkgewoJCQkJCXNjcm9sbFBhcmVudC5zY3JvbGxUb3AgPSBzY3JvbGxlZCA9IHNjcm9sbFBhcmVudC5zY3JvbGxUb3AgLSBvLnNjcm9sbFNwZWVkOwoJCQkJfQoJCQl9CgoJCQlpZiAoICFvLmF4aXMgfHwgby5heGlzICE9PSAieSIgKSB7CgkJCQlpZiAoICggaS5vdmVyZmxvd09mZnNldC5sZWZ0ICsgc2Nyb2xsUGFyZW50Lm9mZnNldFdpZHRoICkgLSBldmVudC5wYWdlWCA8CgkJCQkJCW8uc2Nyb2xsU2Vuc2l0aXZpdHkgKSB7CgkJCQkJc2Nyb2xsUGFyZW50LnNjcm9sbExlZnQgPSBzY3JvbGxlZCA9IHNjcm9sbFBhcmVudC5zY3JvbGxMZWZ0ICsgby5zY3JvbGxTcGVlZDsKCQkJCX0gZWxzZSBpZiAoIGV2ZW50LnBhZ2VYIC0gaS5vdmVyZmxvd09mZnNldC5sZWZ0IDwgby5zY3JvbGxTZW5zaXRpdml0eSApIHsKCQkJCQlzY3JvbGxQYXJlbnQuc2Nyb2xsTGVmdCA9IHNjcm9sbGVkID0gc2Nyb2xsUGFyZW50LnNjcm9sbExlZnQgLSBvLnNjcm9sbFNwZWVkOwoJCQkJfQoJCQl9CgoJCX0gZWxzZSB7CgoJCQlpZiAoICFvLmF4aXMgfHwgby5heGlzICE9PSAieCIgKSB7CgkJCQlpZiAoIGV2ZW50LnBhZ2VZIC0gJCggZG9jdW1lbnQgKS5zY3JvbGxUb3AoKSA8IG8uc2Nyb2xsU2Vuc2l0aXZpdHkgKSB7CgkJCQkJc2Nyb2xsZWQgPSAkKCBkb2N1bWVudCApLnNjcm9sbFRvcCggJCggZG9jdW1lbnQgKS5zY3JvbGxUb3AoKSAtIG8uc2Nyb2xsU3BlZWQgKTsKCQkJCX0gZWxzZSBpZiAoICQoIHdpbmRvdyApLmhlaWdodCgpIC0gKCBldmVudC5wYWdlWSAtICQoIGRvY3VtZW50ICkuc2Nyb2xsVG9wKCkgKSA8CgkJCQkJCW8uc2Nyb2xsU2Vuc2l0aXZpdHkgKSB7CgkJCQkJc2Nyb2xsZWQgPSAkKCBkb2N1bWVudCApLnNjcm9sbFRvcCggJCggZG9jdW1lbnQgKS5zY3JvbGxUb3AoKSArIG8uc2Nyb2xsU3BlZWQgKTsKCQkJCX0KCQkJfQoKCQkJaWYgKCAhby5heGlzIHx8IG8uYXhpcyAhPT0gInkiICkgewoJCQkJaWYgKCBldmVudC5wYWdlWCAtICQoIGRvY3VtZW50ICkuc2Nyb2xsTGVmdCgpIDwgby5zY3JvbGxTZW5zaXRpdml0eSApIHsKCQkJCQlzY3JvbGxlZCA9ICQoIGRvY3VtZW50ICkuc2Nyb2xsTGVmdCgKCQkJCQkJJCggZG9jdW1lbnQgKS5zY3JvbGxMZWZ0KCkgLSBvLnNjcm9sbFNwZWVkCgkJCQkJKTsKCQkJCX0gZWxzZSBpZiAoICQoIHdpbmRvdyApLndpZHRoKCkgLSAoIGV2ZW50LnBhZ2VYIC0gJCggZG9jdW1lbnQgKS5zY3JvbGxMZWZ0KCkgKSA8CgkJCQkJCW8uc2Nyb2xsU2Vuc2l0aXZpdHkgKSB7CgkJCQkJc2Nyb2xsZWQgPSAkKCBkb2N1bWVudCApLnNjcm9sbExlZnQoCgkJCQkJCSQoIGRvY3VtZW50ICkuc2Nyb2xsTGVmdCgpICsgby5zY3JvbGxTcGVlZAoJCQkJCSk7CgkJCQl9CgkJCX0KCgkJfQoKCQlpZiAoIHNjcm9sbGVkICE9PSBmYWxzZSAmJiAkLnVpLmRkbWFuYWdlciAmJiAhby5kcm9wQmVoYXZpb3VyICkgewoJCQkkLnVpLmRkbWFuYWdlci5wcmVwYXJlT2Zmc2V0cyggaSwgZXZlbnQgKTsKCQl9CgoJfQp9ICk7CgokLnVpLnBsdWdpbi5hZGQoICJkcmFnZ2FibGUiLCAic25hcCIsIHsKCXN0YXJ0OiBmdW5jdGlvbiggZXZlbnQsIHVpLCBpICkgewoKCQl2YXIgbyA9IGkub3B0aW9uczsKCgkJaS5zbmFwRWxlbWVudHMgPSBbXTsKCgkJJCggby5zbmFwLmNvbnN0cnVjdG9yICE9PSBTdHJpbmcgPyAoIG8uc25hcC5pdGVtcyB8fCAiOmRhdGEodWktZHJhZ2dhYmxlKSIgKSA6IG8uc25hcCApCgkJCS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCXZhciAkdCA9ICQoIHRoaXMgKSwKCQkJCQkkbyA9ICR0Lm9mZnNldCgpOwoJCQkJaWYgKCB0aGlzICE9PSBpLmVsZW1lbnRbIDAgXSApIHsKCQkJCQlpLnNuYXBFbGVtZW50cy5wdXNoKCB7CgkJCQkJCWl0ZW06IHRoaXMsCgkJCQkJCXdpZHRoOiAkdC5vdXRlcldpZHRoKCksIGhlaWdodDogJHQub3V0ZXJIZWlnaHQoKSwKCQkJCQkJdG9wOiAkby50b3AsIGxlZnQ6ICRvLmxlZnQKCQkJCQl9ICk7CgkJCQl9CgkJCX0gKTsKCgl9LAoJZHJhZzogZnVuY3Rpb24oIGV2ZW50LCB1aSwgaW5zdCApIHsKCgkJdmFyIHRzLCBicywgbHMsIHJzLCBsLCByLCB0LCBiLCBpLCBmaXJzdCwKCQkJbyA9IGluc3Qub3B0aW9ucywKCQkJZCA9IG8uc25hcFRvbGVyYW5jZSwKCQkJeDEgPSB1aS5vZmZzZXQubGVmdCwgeDIgPSB4MSArIGluc3QuaGVscGVyUHJvcG9ydGlvbnMud2lkdGgsCgkJCXkxID0gdWkub2Zmc2V0LnRvcCwgeTIgPSB5MSArIGluc3QuaGVscGVyUHJvcG9ydGlvbnMuaGVpZ2h0OwoKCQlmb3IgKCBpID0gaW5zdC5zbmFwRWxlbWVudHMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0gKSB7CgoJCQlsID0gaW5zdC5zbmFwRWxlbWVudHNbIGkgXS5sZWZ0IC0gaW5zdC5tYXJnaW5zLmxlZnQ7CgkJCXIgPSBsICsgaW5zdC5zbmFwRWxlbWVudHNbIGkgXS53aWR0aDsKCQkJdCA9IGluc3Quc25hcEVsZW1lbnRzWyBpIF0udG9wIC0gaW5zdC5tYXJnaW5zLnRvcDsKCQkJYiA9IHQgKyBpbnN0LnNuYXBFbGVtZW50c1sgaSBdLmhlaWdodDsKCgkJCWlmICggeDIgPCBsIC0gZCB8fCB4MSA+IHIgKyBkIHx8IHkyIDwgdCAtIGQgfHwgeTEgPiBiICsgZCB8fAoJCQkJCSEkLmNvbnRhaW5zKCBpbnN0LnNuYXBFbGVtZW50c1sgaSBdLml0ZW0ub3duZXJEb2N1bWVudCwKCQkJCQlpbnN0LnNuYXBFbGVtZW50c1sgaSBdLml0ZW0gKSApIHsKCQkJCWlmICggaW5zdC5zbmFwRWxlbWVudHNbIGkgXS5zbmFwcGluZyApIHsKCQkJCQkoIGluc3Qub3B0aW9ucy5zbmFwLnJlbGVhc2UgJiYKCQkJCQkJaW5zdC5vcHRpb25zLnNuYXAucmVsZWFzZS5jYWxsKAoJCQkJCQkJaW5zdC5lbGVtZW50LAoJCQkJCQkJZXZlbnQsCgkJCQkJCQkkLmV4dGVuZCggaW5zdC5fdWlIYXNoKCksIHsgc25hcEl0ZW06IGluc3Quc25hcEVsZW1lbnRzWyBpIF0uaXRlbSB9ICkKCQkJCQkJKSApOwoJCQkJfQoJCQkJaW5zdC5zbmFwRWxlbWVudHNbIGkgXS5zbmFwcGluZyA9IGZhbHNlOwoJCQkJY29udGludWU7CgkJCX0KCgkJCWlmICggby5zbmFwTW9kZSAhPT0gImlubmVyIiApIHsKCQkJCXRzID0gTWF0aC5hYnMoIHQgLSB5MiApIDw9IGQ7CgkJCQlicyA9IE1hdGguYWJzKCBiIC0geTEgKSA8PSBkOwoJCQkJbHMgPSBNYXRoLmFicyggbCAtIHgyICkgPD0gZDsKCQkJCXJzID0gTWF0aC5hYnMoIHIgLSB4MSApIDw9IGQ7CgkJCQlpZiAoIHRzICkgewoJCQkJCXVpLnBvc2l0aW9uLnRvcCA9IGluc3QuX2NvbnZlcnRQb3NpdGlvblRvKCAicmVsYXRpdmUiLCB7CgkJCQkJCXRvcDogdCAtIGluc3QuaGVscGVyUHJvcG9ydGlvbnMuaGVpZ2h0LAoJCQkJCQlsZWZ0OiAwCgkJCQkJfSApLnRvcDsKCQkJCX0KCQkJCWlmICggYnMgKSB7CgkJCQkJdWkucG9zaXRpb24udG9wID0gaW5zdC5fY29udmVydFBvc2l0aW9uVG8oICJyZWxhdGl2ZSIsIHsKCQkJCQkJdG9wOiBiLAoJCQkJCQlsZWZ0OiAwCgkJCQkJfSApLnRvcDsKCQkJCX0KCQkJCWlmICggbHMgKSB7CgkJCQkJdWkucG9zaXRpb24ubGVmdCA9IGluc3QuX2NvbnZlcnRQb3NpdGlvblRvKCAicmVsYXRpdmUiLCB7CgkJCQkJCXRvcDogMCwKCQkJCQkJbGVmdDogbCAtIGluc3QuaGVscGVyUHJvcG9ydGlvbnMud2lkdGgKCQkJCQl9ICkubGVmdDsKCQkJCX0KCQkJCWlmICggcnMgKSB7CgkJCQkJdWkucG9zaXRpb24ubGVmdCA9IGluc3QuX2NvbnZlcnRQb3NpdGlvblRvKCAicmVsYXRpdmUiLCB7CgkJCQkJCXRvcDogMCwKCQkJCQkJbGVmdDogcgoJCQkJCX0gKS5sZWZ0OwoJCQkJfQoJCQl9CgoJCQlmaXJzdCA9ICggdHMgfHwgYnMgfHwgbHMgfHwgcnMgKTsKCgkJCWlmICggby5zbmFwTW9kZSAhPT0gIm91dGVyIiApIHsKCQkJCXRzID0gTWF0aC5hYnMoIHQgLSB5MSApIDw9IGQ7CgkJCQlicyA9IE1hdGguYWJzKCBiIC0geTIgKSA8PSBkOwoJCQkJbHMgPSBNYXRoLmFicyggbCAtIHgxICkgPD0gZDsKCQkJCXJzID0gTWF0aC5hYnMoIHIgLSB4MiApIDw9IGQ7CgkJCQlpZiAoIHRzICkgewoJCQkJCXVpLnBvc2l0aW9uLnRvcCA9IGluc3QuX2NvbnZlcnRQb3NpdGlvblRvKCAicmVsYXRpdmUiLCB7CgkJCQkJCXRvcDogdCwKCQkJCQkJbGVmdDogMAoJCQkJCX0gKS50b3A7CgkJCQl9CgkJCQlpZiAoIGJzICkgewoJCQkJCXVpLnBvc2l0aW9uLnRvcCA9IGluc3QuX2NvbnZlcnRQb3NpdGlvblRvKCAicmVsYXRpdmUiLCB7CgkJCQkJCXRvcDogYiAtIGluc3QuaGVscGVyUHJvcG9ydGlvbnMuaGVpZ2h0LAoJCQkJCQlsZWZ0OiAwCgkJCQkJfSApLnRvcDsKCQkJCX0KCQkJCWlmICggbHMgKSB7CgkJCQkJdWkucG9zaXRpb24ubGVmdCA9IGluc3QuX2NvbnZlcnRQb3NpdGlvblRvKCAicmVsYXRpdmUiLCB7CgkJCQkJCXRvcDogMCwKCQkJCQkJbGVmdDogbAoJCQkJCX0gKS5sZWZ0OwoJCQkJfQoJCQkJaWYgKCBycyApIHsKCQkJCQl1aS5wb3NpdGlvbi5sZWZ0ID0gaW5zdC5fY29udmVydFBvc2l0aW9uVG8oICJyZWxhdGl2ZSIsIHsKCQkJCQkJdG9wOiAwLAoJCQkJCQlsZWZ0OiByIC0gaW5zdC5oZWxwZXJQcm9wb3J0aW9ucy53aWR0aAoJCQkJCX0gKS5sZWZ0OwoJCQkJfQoJCQl9CgoJCQlpZiAoICFpbnN0LnNuYXBFbGVtZW50c1sgaSBdLnNuYXBwaW5nICYmICggdHMgfHwgYnMgfHwgbHMgfHwgcnMgfHwgZmlyc3QgKSApIHsKCQkJCSggaW5zdC5vcHRpb25zLnNuYXAuc25hcCAmJgoJCQkJCWluc3Qub3B0aW9ucy5zbmFwLnNuYXAuY2FsbCgKCQkJCQkJaW5zdC5lbGVtZW50LAoJCQkJCQlldmVudCwKCQkJCQkJJC5leHRlbmQoIGluc3QuX3VpSGFzaCgpLCB7CgkJCQkJCQlzbmFwSXRlbTogaW5zdC5zbmFwRWxlbWVudHNbIGkgXS5pdGVtCgkJCQkJCX0gKSApICk7CgkJCX0KCQkJaW5zdC5zbmFwRWxlbWVudHNbIGkgXS5zbmFwcGluZyA9ICggdHMgfHwgYnMgfHwgbHMgfHwgcnMgfHwgZmlyc3QgKTsKCgkJfQoKCX0KfSApOwoKJC51aS5wbHVnaW4uYWRkKCAiZHJhZ2dhYmxlIiwgInN0YWNrIiwgewoJc3RhcnQ6IGZ1bmN0aW9uKCBldmVudCwgdWksIGluc3RhbmNlICkgewoJCXZhciBtaW4sCgkJCW8gPSBpbnN0YW5jZS5vcHRpb25zLAoJCQlncm91cCA9ICQubWFrZUFycmF5KCAkKCBvLnN0YWNrICkgKS5zb3J0KCBmdW5jdGlvbiggYSwgYiApIHsKCQkJCXJldHVybiAoIHBhcnNlSW50KCAkKCBhICkuY3NzKCAiekluZGV4IiApLCAxMCApIHx8IDAgKSAtCgkJCQkJKCBwYXJzZUludCggJCggYiApLmNzcyggInpJbmRleCIgKSwgMTAgKSB8fCAwICk7CgkJCX0gKTsKCgkJaWYgKCAhZ3JvdXAubGVuZ3RoICkgeyByZXR1cm47IH0KCgkJbWluID0gcGFyc2VJbnQoICQoIGdyb3VwWyAwIF0gKS5jc3MoICJ6SW5kZXgiICksIDEwICkgfHwgMDsKCQkkKCBncm91cCApLmVhY2goIGZ1bmN0aW9uKCBpICkgewoJCQkkKCB0aGlzICkuY3NzKCAiekluZGV4IiwgbWluICsgaSApOwoJCX0gKTsKCQl0aGlzLmNzcyggInpJbmRleCIsICggbWluICsgZ3JvdXAubGVuZ3RoICkgKTsKCX0KfSApOwoKJC51aS5wbHVnaW4uYWRkKCAiZHJhZ2dhYmxlIiwgInpJbmRleCIsIHsKCXN0YXJ0OiBmdW5jdGlvbiggZXZlbnQsIHVpLCBpbnN0YW5jZSApIHsKCQl2YXIgdCA9ICQoIHVpLmhlbHBlciApLAoJCQlvID0gaW5zdGFuY2Uub3B0aW9uczsKCgkJaWYgKCB0LmNzcyggInpJbmRleCIgKSApIHsKCQkJby5fekluZGV4ID0gdC5jc3MoICJ6SW5kZXgiICk7CgkJfQoJCXQuY3NzKCAiekluZGV4Iiwgby56SW5kZXggKTsKCX0sCglzdG9wOiBmdW5jdGlvbiggZXZlbnQsIHVpLCBpbnN0YW5jZSApIHsKCQl2YXIgbyA9IGluc3RhbmNlLm9wdGlvbnM7CgoJCWlmICggby5fekluZGV4ICkgewoJCQkkKCB1aS5oZWxwZXIgKS5jc3MoICJ6SW5kZXgiLCBvLl96SW5kZXggKTsKCQl9Cgl9Cn0gKTsKCnZhciB3aWRnZXRzRHJhZ2dhYmxlID0gJC51aS5kcmFnZ2FibGU7CgoKLyohCiAqIGpRdWVyeSBVSSBEcm9wcGFibGUgMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiBEcm9wcGFibGUKLy8+Pmdyb3VwOiBJbnRlcmFjdGlvbnMKLy8+PmRlc2NyaXB0aW9uOiBFbmFibGVzIGRyb3AgdGFyZ2V0cyBmb3IgZHJhZ2dhYmxlIGVsZW1lbnRzLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vZHJvcHBhYmxlLwovLz4+ZGVtb3M6IGh0dHA6Ly9qcXVlcnl1aS5jb20vZHJvcHBhYmxlLwoKCgokLndpZGdldCggInVpLmRyb3BwYWJsZSIsIHsKCXZlcnNpb246ICIxLjEyLjEiLAoJd2lkZ2V0RXZlbnRQcmVmaXg6ICJkcm9wIiwKCW9wdGlvbnM6IHsKCQlhY2NlcHQ6ICIqIiwKCQlhZGRDbGFzc2VzOiB0cnVlLAoJCWdyZWVkeTogZmFsc2UsCgkJc2NvcGU6ICJkZWZhdWx0IiwKCQl0b2xlcmFuY2U6ICJpbnRlcnNlY3QiLAoKCQkvLyBDYWxsYmFja3MKCQlhY3RpdmF0ZTogbnVsbCwKCQlkZWFjdGl2YXRlOiBudWxsLAoJCWRyb3A6IG51bGwsCgkJb3V0OiBudWxsLAoJCW92ZXI6IG51bGwKCX0sCglfY3JlYXRlOiBmdW5jdGlvbigpIHsKCgkJdmFyIHByb3BvcnRpb25zLAoJCQlvID0gdGhpcy5vcHRpb25zLAoJCQlhY2NlcHQgPSBvLmFjY2VwdDsKCgkJdGhpcy5pc292ZXIgPSBmYWxzZTsKCQl0aGlzLmlzb3V0ID0gdHJ1ZTsKCgkJdGhpcy5hY2NlcHQgPSAkLmlzRnVuY3Rpb24oIGFjY2VwdCApID8gYWNjZXB0IDogZnVuY3Rpb24oIGQgKSB7CgkJCXJldHVybiBkLmlzKCBhY2NlcHQgKTsKCQl9OwoKCQl0aGlzLnByb3BvcnRpb25zID0gZnVuY3Rpb24oIC8qIHZhbHVlVG9Xcml0ZSAqLyApIHsKCQkJaWYgKCBhcmd1bWVudHMubGVuZ3RoICkgewoKCQkJCS8vIFN0b3JlIHRoZSBkcm9wcGFibGUncyBwcm9wb3J0aW9ucwoJCQkJcHJvcG9ydGlvbnMgPSBhcmd1bWVudHNbIDAgXTsKCQkJfSBlbHNlIHsKCgkJCQkvLyBSZXRyaWV2ZSBvciBkZXJpdmUgdGhlIGRyb3BwYWJsZSdzIHByb3BvcnRpb25zCgkJCQlyZXR1cm4gcHJvcG9ydGlvbnMgPwoJCQkJCXByb3BvcnRpb25zIDoKCQkJCQlwcm9wb3J0aW9ucyA9IHsKCQkJCQkJd2lkdGg6IHRoaXMuZWxlbWVudFsgMCBdLm9mZnNldFdpZHRoLAoJCQkJCQloZWlnaHQ6IHRoaXMuZWxlbWVudFsgMCBdLm9mZnNldEhlaWdodAoJCQkJCX07CgkJCX0KCQl9OwoKCQl0aGlzLl9hZGRUb01hbmFnZXIoIG8uc2NvcGUgKTsKCgkJby5hZGRDbGFzc2VzICYmIHRoaXMuX2FkZENsYXNzKCAidWktZHJvcHBhYmxlIiApOwoKCX0sCgoJX2FkZFRvTWFuYWdlcjogZnVuY3Rpb24oIHNjb3BlICkgewoKCQkvLyBBZGQgdGhlIHJlZmVyZW5jZSBhbmQgcG9zaXRpb25zIHRvIHRoZSBtYW5hZ2VyCgkJJC51aS5kZG1hbmFnZXIuZHJvcHBhYmxlc1sgc2NvcGUgXSA9ICQudWkuZGRtYW5hZ2VyLmRyb3BwYWJsZXNbIHNjb3BlIF0gfHwgW107CgkJJC51aS5kZG1hbmFnZXIuZHJvcHBhYmxlc1sgc2NvcGUgXS5wdXNoKCB0aGlzICk7Cgl9LAoKCV9zcGxpY2U6IGZ1bmN0aW9uKCBkcm9wICkgewoJCXZhciBpID0gMDsKCQlmb3IgKCA7IGkgPCBkcm9wLmxlbmd0aDsgaSsrICkgewoJCQlpZiAoIGRyb3BbIGkgXSA9PT0gdGhpcyApIHsKCQkJCWRyb3Auc3BsaWNlKCBpLCAxICk7CgkJCX0KCQl9Cgl9LAoKCV9kZXN0cm95OiBmdW5jdGlvbigpIHsKCQl2YXIgZHJvcCA9ICQudWkuZGRtYW5hZ2VyLmRyb3BwYWJsZXNbIHRoaXMub3B0aW9ucy5zY29wZSBdOwoKCQl0aGlzLl9zcGxpY2UoIGRyb3AgKTsKCX0sCgoJX3NldE9wdGlvbjogZnVuY3Rpb24oIGtleSwgdmFsdWUgKSB7CgoJCWlmICgga2V5ID09PSAiYWNjZXB0IiApIHsKCQkJdGhpcy5hY2NlcHQgPSAkLmlzRnVuY3Rpb24oIHZhbHVlICkgPyB2YWx1ZSA6IGZ1bmN0aW9uKCBkICkgewoJCQkJcmV0dXJuIGQuaXMoIHZhbHVlICk7CgkJCX07CgkJfSBlbHNlIGlmICgga2V5ID09PSAic2NvcGUiICkgewoJCQl2YXIgZHJvcCA9ICQudWkuZGRtYW5hZ2VyLmRyb3BwYWJsZXNbIHRoaXMub3B0aW9ucy5zY29wZSBdOwoKCQkJdGhpcy5fc3BsaWNlKCBkcm9wICk7CgkJCXRoaXMuX2FkZFRvTWFuYWdlciggdmFsdWUgKTsKCQl9CgoJCXRoaXMuX3N1cGVyKCBrZXksIHZhbHVlICk7Cgl9LAoKCV9hY3RpdmF0ZTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXZhciBkcmFnZ2FibGUgPSAkLnVpLmRkbWFuYWdlci5jdXJyZW50OwoKCQl0aGlzLl9hZGRBY3RpdmVDbGFzcygpOwoJCWlmICggZHJhZ2dhYmxlICkgewoJCQl0aGlzLl90cmlnZ2VyKCAiYWN0aXZhdGUiLCBldmVudCwgdGhpcy51aSggZHJhZ2dhYmxlICkgKTsKCQl9Cgl9LAoKCV9kZWFjdGl2YXRlOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdmFyIGRyYWdnYWJsZSA9ICQudWkuZGRtYW5hZ2VyLmN1cnJlbnQ7CgoJCXRoaXMuX3JlbW92ZUFjdGl2ZUNsYXNzKCk7CgkJaWYgKCBkcmFnZ2FibGUgKSB7CgkJCXRoaXMuX3RyaWdnZXIoICJkZWFjdGl2YXRlIiwgZXZlbnQsIHRoaXMudWkoIGRyYWdnYWJsZSApICk7CgkJfQoJfSwKCglfb3ZlcjogZnVuY3Rpb24oIGV2ZW50ICkgewoKCQl2YXIgZHJhZ2dhYmxlID0gJC51aS5kZG1hbmFnZXIuY3VycmVudDsKCgkJLy8gQmFpbCBpZiBkcmFnZ2FibGUgYW5kIGRyb3BwYWJsZSBhcmUgc2FtZSBlbGVtZW50CgkJaWYgKCAhZHJhZ2dhYmxlIHx8ICggZHJhZ2dhYmxlLmN1cnJlbnRJdGVtIHx8CgkJCQlkcmFnZ2FibGUuZWxlbWVudCApWyAwIF0gPT09IHRoaXMuZWxlbWVudFsgMCBdICkgewoJCQlyZXR1cm47CgkJfQoKCQlpZiAoIHRoaXMuYWNjZXB0LmNhbGwoIHRoaXMuZWxlbWVudFsgMCBdLCAoIGRyYWdnYWJsZS5jdXJyZW50SXRlbSB8fAoJCQkJZHJhZ2dhYmxlLmVsZW1lbnQgKSApICkgewoJCQl0aGlzLl9hZGRIb3ZlckNsYXNzKCk7CgkJCXRoaXMuX3RyaWdnZXIoICJvdmVyIiwgZXZlbnQsIHRoaXMudWkoIGRyYWdnYWJsZSApICk7CgkJfQoKCX0sCgoJX291dDogZnVuY3Rpb24oIGV2ZW50ICkgewoKCQl2YXIgZHJhZ2dhYmxlID0gJC51aS5kZG1hbmFnZXIuY3VycmVudDsKCgkJLy8gQmFpbCBpZiBkcmFnZ2FibGUgYW5kIGRyb3BwYWJsZSBhcmUgc2FtZSBlbGVtZW50CgkJaWYgKCAhZHJhZ2dhYmxlIHx8ICggZHJhZ2dhYmxlLmN1cnJlbnRJdGVtIHx8CgkJCQlkcmFnZ2FibGUuZWxlbWVudCApWyAwIF0gPT09IHRoaXMuZWxlbWVudFsgMCBdICkgewoJCQlyZXR1cm47CgkJfQoKCQlpZiAoIHRoaXMuYWNjZXB0LmNhbGwoIHRoaXMuZWxlbWVudFsgMCBdLCAoIGRyYWdnYWJsZS5jdXJyZW50SXRlbSB8fAoJCQkJZHJhZ2dhYmxlLmVsZW1lbnQgKSApICkgewoJCQl0aGlzLl9yZW1vdmVIb3ZlckNsYXNzKCk7CgkJCXRoaXMuX3RyaWdnZXIoICJvdXQiLCBldmVudCwgdGhpcy51aSggZHJhZ2dhYmxlICkgKTsKCQl9CgoJfSwKCglfZHJvcDogZnVuY3Rpb24oIGV2ZW50LCBjdXN0b20gKSB7CgoJCXZhciBkcmFnZ2FibGUgPSBjdXN0b20gfHwgJC51aS5kZG1hbmFnZXIuY3VycmVudCwKCQkJY2hpbGRyZW5JbnRlcnNlY3Rpb24gPSBmYWxzZTsKCgkJLy8gQmFpbCBpZiBkcmFnZ2FibGUgYW5kIGRyb3BwYWJsZSBhcmUgc2FtZSBlbGVtZW50CgkJaWYgKCAhZHJhZ2dhYmxlIHx8ICggZHJhZ2dhYmxlLmN1cnJlbnRJdGVtIHx8CgkJCQlkcmFnZ2FibGUuZWxlbWVudCApWyAwIF0gPT09IHRoaXMuZWxlbWVudFsgMCBdICkgewoJCQlyZXR1cm4gZmFsc2U7CgkJfQoKCQl0aGlzLmVsZW1lbnQKCQkJLmZpbmQoICI6ZGF0YSh1aS1kcm9wcGFibGUpIiApCgkJCS5ub3QoICIudWktZHJhZ2dhYmxlLWRyYWdnaW5nIiApCgkJCS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCXZhciBpbnN0ID0gJCggdGhpcyApLmRyb3BwYWJsZSggImluc3RhbmNlIiApOwoJCQkJaWYgKAoJCQkJCWluc3Qub3B0aW9ucy5ncmVlZHkgJiYKCQkJCQkhaW5zdC5vcHRpb25zLmRpc2FibGVkICYmCgkJCQkJaW5zdC5vcHRpb25zLnNjb3BlID09PSBkcmFnZ2FibGUub3B0aW9ucy5zY29wZSAmJgoJCQkJCWluc3QuYWNjZXB0LmNhbGwoCgkJCQkJCWluc3QuZWxlbWVudFsgMCBdLCAoIGRyYWdnYWJsZS5jdXJyZW50SXRlbSB8fCBkcmFnZ2FibGUuZWxlbWVudCApCgkJCQkJKSAmJgoJCQkJCWludGVyc2VjdCgKCQkJCQkJZHJhZ2dhYmxlLAoJCQkJCQkkLmV4dGVuZCggaW5zdCwgeyBvZmZzZXQ6IGluc3QuZWxlbWVudC5vZmZzZXQoKSB9ICksCgkJCQkJCWluc3Qub3B0aW9ucy50b2xlcmFuY2UsIGV2ZW50CgkJCQkJKQoJCQkJKSB7CgkJCQkJY2hpbGRyZW5JbnRlcnNlY3Rpb24gPSB0cnVlOwoJCQkJCXJldHVybiBmYWxzZTsgfQoJCQl9ICk7CgkJaWYgKCBjaGlsZHJlbkludGVyc2VjdGlvbiApIHsKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCgkJaWYgKCB0aGlzLmFjY2VwdC5jYWxsKCB0aGlzLmVsZW1lbnRbIDAgXSwKCQkJCSggZHJhZ2dhYmxlLmN1cnJlbnRJdGVtIHx8IGRyYWdnYWJsZS5lbGVtZW50ICkgKSApIHsKCQkJdGhpcy5fcmVtb3ZlQWN0aXZlQ2xhc3MoKTsKCQkJdGhpcy5fcmVtb3ZlSG92ZXJDbGFzcygpOwoKCQkJdGhpcy5fdHJpZ2dlciggImRyb3AiLCBldmVudCwgdGhpcy51aSggZHJhZ2dhYmxlICkgKTsKCQkJcmV0dXJuIHRoaXMuZWxlbWVudDsKCQl9CgoJCXJldHVybiBmYWxzZTsKCgl9LAoKCXVpOiBmdW5jdGlvbiggYyApIHsKCQlyZXR1cm4gewoJCQlkcmFnZ2FibGU6ICggYy5jdXJyZW50SXRlbSB8fCBjLmVsZW1lbnQgKSwKCQkJaGVscGVyOiBjLmhlbHBlciwKCQkJcG9zaXRpb246IGMucG9zaXRpb24sCgkJCW9mZnNldDogYy5wb3NpdGlvbkFicwoJCX07Cgl9LAoKCS8vIEV4dGVuc2lvbiBwb2ludHMganVzdCB0byBtYWtlIGJhY2tjb21wYXQgc2FuZSBhbmQgYXZvaWQgZHVwbGljYXRpbmcgbG9naWMKCS8vIFRPRE86IFJlbW92ZSBpbiAxLjEzIGFsb25nIHdpdGggY2FsbCB0byBpdCBiZWxvdwoJX2FkZEhvdmVyQ2xhc3M6IGZ1bmN0aW9uKCkgewoJCXRoaXMuX2FkZENsYXNzKCAidWktZHJvcHBhYmxlLWhvdmVyIiApOwoJfSwKCglfcmVtb3ZlSG92ZXJDbGFzczogZnVuY3Rpb24oKSB7CgkJdGhpcy5fcmVtb3ZlQ2xhc3MoICJ1aS1kcm9wcGFibGUtaG92ZXIiICk7Cgl9LAoKCV9hZGRBY3RpdmVDbGFzczogZnVuY3Rpb24oKSB7CgkJdGhpcy5fYWRkQ2xhc3MoICJ1aS1kcm9wcGFibGUtYWN0aXZlIiApOwoJfSwKCglfcmVtb3ZlQWN0aXZlQ2xhc3M6IGZ1bmN0aW9uKCkgewoJCXRoaXMuX3JlbW92ZUNsYXNzKCAidWktZHJvcHBhYmxlLWFjdGl2ZSIgKTsKCX0KfSApOwoKdmFyIGludGVyc2VjdCA9ICQudWkuaW50ZXJzZWN0ID0gKCBmdW5jdGlvbigpIHsKCWZ1bmN0aW9uIGlzT3ZlckF4aXMoIHgsIHJlZmVyZW5jZSwgc2l6ZSApIHsKCQlyZXR1cm4gKCB4ID49IHJlZmVyZW5jZSApICYmICggeCA8ICggcmVmZXJlbmNlICsgc2l6ZSApICk7Cgl9CgoJcmV0dXJuIGZ1bmN0aW9uKCBkcmFnZ2FibGUsIGRyb3BwYWJsZSwgdG9sZXJhbmNlTW9kZSwgZXZlbnQgKSB7CgoJCWlmICggIWRyb3BwYWJsZS5vZmZzZXQgKSB7CgkJCXJldHVybiBmYWxzZTsKCQl9CgoJCXZhciB4MSA9ICggZHJhZ2dhYmxlLnBvc2l0aW9uQWJzIHx8CgkJCQlkcmFnZ2FibGUucG9zaXRpb24uYWJzb2x1dGUgKS5sZWZ0ICsgZHJhZ2dhYmxlLm1hcmdpbnMubGVmdCwKCQkJeTEgPSAoIGRyYWdnYWJsZS5wb3NpdGlvbkFicyB8fAoJCQkJZHJhZ2dhYmxlLnBvc2l0aW9uLmFic29sdXRlICkudG9wICsgZHJhZ2dhYmxlLm1hcmdpbnMudG9wLAoJCQl4MiA9IHgxICsgZHJhZ2dhYmxlLmhlbHBlclByb3BvcnRpb25zLndpZHRoLAoJCQl5MiA9IHkxICsgZHJhZ2dhYmxlLmhlbHBlclByb3BvcnRpb25zLmhlaWdodCwKCQkJbCA9IGRyb3BwYWJsZS5vZmZzZXQubGVmdCwKCQkJdCA9IGRyb3BwYWJsZS5vZmZzZXQudG9wLAoJCQlyID0gbCArIGRyb3BwYWJsZS5wcm9wb3J0aW9ucygpLndpZHRoLAoJCQliID0gdCArIGRyb3BwYWJsZS5wcm9wb3J0aW9ucygpLmhlaWdodDsKCgkJc3dpdGNoICggdG9sZXJhbmNlTW9kZSApIHsKCQljYXNlICJmaXQiOgoJCQlyZXR1cm4gKCBsIDw9IHgxICYmIHgyIDw9IHIgJiYgdCA8PSB5MSAmJiB5MiA8PSBiICk7CgkJY2FzZSAiaW50ZXJzZWN0IjoKCQkJcmV0dXJuICggbCA8IHgxICsgKCBkcmFnZ2FibGUuaGVscGVyUHJvcG9ydGlvbnMud2lkdGggLyAyICkgJiYgLy8gUmlnaHQgSGFsZgoJCQkJeDIgLSAoIGRyYWdnYWJsZS5oZWxwZXJQcm9wb3J0aW9ucy53aWR0aCAvIDIgKSA8IHIgJiYgLy8gTGVmdCBIYWxmCgkJCQl0IDwgeTEgKyAoIGRyYWdnYWJsZS5oZWxwZXJQcm9wb3J0aW9ucy5oZWlnaHQgLyAyICkgJiYgLy8gQm90dG9tIEhhbGYKCQkJCXkyIC0gKCBkcmFnZ2FibGUuaGVscGVyUHJvcG9ydGlvbnMuaGVpZ2h0IC8gMiApIDwgYiApOyAvLyBUb3AgSGFsZgoJCWNhc2UgInBvaW50ZXIiOgoJCQlyZXR1cm4gaXNPdmVyQXhpcyggZXZlbnQucGFnZVksIHQsIGRyb3BwYWJsZS5wcm9wb3J0aW9ucygpLmhlaWdodCApICYmCgkJCQlpc092ZXJBeGlzKCBldmVudC5wYWdlWCwgbCwgZHJvcHBhYmxlLnByb3BvcnRpb25zKCkud2lkdGggKTsKCQljYXNlICJ0b3VjaCI6CgkJCXJldHVybiAoCgkJCQkoIHkxID49IHQgJiYgeTEgPD0gYiApIHx8IC8vIFRvcCBlZGdlIHRvdWNoaW5nCgkJCQkoIHkyID49IHQgJiYgeTIgPD0gYiApIHx8IC8vIEJvdHRvbSBlZGdlIHRvdWNoaW5nCgkJCQkoIHkxIDwgdCAmJiB5MiA+IGIgKSAvLyBTdXJyb3VuZGVkIHZlcnRpY2FsbHkKCQkJKSAmJiAoCgkJCQkoIHgxID49IGwgJiYgeDEgPD0gciApIHx8IC8vIExlZnQgZWRnZSB0b3VjaGluZwoJCQkJKCB4MiA+PSBsICYmIHgyIDw9IHIgKSB8fCAvLyBSaWdodCBlZGdlIHRvdWNoaW5nCgkJCQkoIHgxIDwgbCAmJiB4MiA+IHIgKSAvLyBTdXJyb3VuZGVkIGhvcml6b250YWxseQoJCQkpOwoJCWRlZmF1bHQ6CgkJCXJldHVybiBmYWxzZTsKCQl9Cgl9Owp9ICkoKTsKCi8qCglUaGlzIG1hbmFnZXIgdHJhY2tzIG9mZnNldHMgb2YgZHJhZ2dhYmxlcyBhbmQgZHJvcHBhYmxlcwoqLwokLnVpLmRkbWFuYWdlciA9IHsKCWN1cnJlbnQ6IG51bGwsCglkcm9wcGFibGVzOiB7ICJkZWZhdWx0IjogW10gfSwKCXByZXBhcmVPZmZzZXRzOiBmdW5jdGlvbiggdCwgZXZlbnQgKSB7CgoJCXZhciBpLCBqLAoJCQltID0gJC51aS5kZG1hbmFnZXIuZHJvcHBhYmxlc1sgdC5vcHRpb25zLnNjb3BlIF0gfHwgW10sCgkJCXR5cGUgPSBldmVudCA/IGV2ZW50LnR5cGUgOiBudWxsLCAvLyB3b3JrYXJvdW5kIGZvciAjMjMxNwoJCQlsaXN0ID0gKCB0LmN1cnJlbnRJdGVtIHx8IHQuZWxlbWVudCApLmZpbmQoICI6ZGF0YSh1aS1kcm9wcGFibGUpIiApLmFkZEJhY2soKTsKCgkJZHJvcHBhYmxlc0xvb3A6IGZvciAoIGkgPSAwOyBpIDwgbS5sZW5ndGg7IGkrKyApIHsKCgkJCS8vIE5vIGRpc2FibGVkIGFuZCBub24tYWNjZXB0ZWQKCQkJaWYgKCBtWyBpIF0ub3B0aW9ucy5kaXNhYmxlZCB8fCAoIHQgJiYgIW1bIGkgXS5hY2NlcHQuY2FsbCggbVsgaSBdLmVsZW1lbnRbIDAgXSwKCQkJCQkoIHQuY3VycmVudEl0ZW0gfHwgdC5lbGVtZW50ICkgKSApICkgewoJCQkJY29udGludWU7CgkJCX0KCgkJCS8vIEZpbHRlciBvdXQgZWxlbWVudHMgaW4gdGhlIGN1cnJlbnQgZHJhZ2dlZCBpdGVtCgkJCWZvciAoIGogPSAwOyBqIDwgbGlzdC5sZW5ndGg7IGorKyApIHsKCQkJCWlmICggbGlzdFsgaiBdID09PSBtWyBpIF0uZWxlbWVudFsgMCBdICkgewoJCQkJCW1bIGkgXS5wcm9wb3J0aW9ucygpLmhlaWdodCA9IDA7CgkJCQkJY29udGludWUgZHJvcHBhYmxlc0xvb3A7CgkJCQl9CgkJCX0KCgkJCW1bIGkgXS52aXNpYmxlID0gbVsgaSBdLmVsZW1lbnQuY3NzKCAiZGlzcGxheSIgKSAhPT0gIm5vbmUiOwoJCQlpZiAoICFtWyBpIF0udmlzaWJsZSApIHsKCQkJCWNvbnRpbnVlOwoJCQl9CgoJCQkvLyBBY3RpdmF0ZSB0aGUgZHJvcHBhYmxlIGlmIHVzZWQgZGlyZWN0bHkgZnJvbSBkcmFnZ2FibGVzCgkJCWlmICggdHlwZSA9PT0gIm1vdXNlZG93biIgKSB7CgkJCQltWyBpIF0uX2FjdGl2YXRlLmNhbGwoIG1bIGkgXSwgZXZlbnQgKTsKCQkJfQoKCQkJbVsgaSBdLm9mZnNldCA9IG1bIGkgXS5lbGVtZW50Lm9mZnNldCgpOwoJCQltWyBpIF0ucHJvcG9ydGlvbnMoIHsKCQkJCXdpZHRoOiBtWyBpIF0uZWxlbWVudFsgMCBdLm9mZnNldFdpZHRoLAoJCQkJaGVpZ2h0OiBtWyBpIF0uZWxlbWVudFsgMCBdLm9mZnNldEhlaWdodAoJCQl9ICk7CgoJCX0KCgl9LAoJZHJvcDogZnVuY3Rpb24oIGRyYWdnYWJsZSwgZXZlbnQgKSB7CgoJCXZhciBkcm9wcGVkID0gZmFsc2U7CgoJCS8vIENyZWF0ZSBhIGNvcHkgb2YgdGhlIGRyb3BwYWJsZXMgaW4gY2FzZSB0aGUgbGlzdCBjaGFuZ2VzIGR1cmluZyB0aGUgZHJvcCAoIzkxMTYpCgkJJC5lYWNoKCAoICQudWkuZGRtYW5hZ2VyLmRyb3BwYWJsZXNbIGRyYWdnYWJsZS5vcHRpb25zLnNjb3BlIF0gfHwgW10gKS5zbGljZSgpLCBmdW5jdGlvbigpIHsKCgkJCWlmICggIXRoaXMub3B0aW9ucyApIHsKCQkJCXJldHVybjsKCQkJfQoJCQlpZiAoICF0aGlzLm9wdGlvbnMuZGlzYWJsZWQgJiYgdGhpcy52aXNpYmxlICYmCgkJCQkJaW50ZXJzZWN0KCBkcmFnZ2FibGUsIHRoaXMsIHRoaXMub3B0aW9ucy50b2xlcmFuY2UsIGV2ZW50ICkgKSB7CgkJCQlkcm9wcGVkID0gdGhpcy5fZHJvcC5jYWxsKCB0aGlzLCBldmVudCApIHx8IGRyb3BwZWQ7CgkJCX0KCgkJCWlmICggIXRoaXMub3B0aW9ucy5kaXNhYmxlZCAmJiB0aGlzLnZpc2libGUgJiYgdGhpcy5hY2NlcHQuY2FsbCggdGhpcy5lbGVtZW50WyAwIF0sCgkJCQkJKCBkcmFnZ2FibGUuY3VycmVudEl0ZW0gfHwgZHJhZ2dhYmxlLmVsZW1lbnQgKSApICkgewoJCQkJdGhpcy5pc291dCA9IHRydWU7CgkJCQl0aGlzLmlzb3ZlciA9IGZhbHNlOwoJCQkJdGhpcy5fZGVhY3RpdmF0ZS5jYWxsKCB0aGlzLCBldmVudCApOwoJCQl9CgoJCX0gKTsKCQlyZXR1cm4gZHJvcHBlZDsKCgl9LAoJZHJhZ1N0YXJ0OiBmdW5jdGlvbiggZHJhZ2dhYmxlLCBldmVudCApIHsKCgkJLy8gTGlzdGVuIGZvciBzY3JvbGxpbmcgc28gdGhhdCBpZiB0aGUgZHJhZ2dpbmcgY2F1c2VzIHNjcm9sbGluZyB0aGUgcG9zaXRpb24gb2YgdGhlCgkJLy8gZHJvcHBhYmxlcyBjYW4gYmUgcmVjYWxjdWxhdGVkIChzZWUgIzUwMDMpCgkJZHJhZ2dhYmxlLmVsZW1lbnQucGFyZW50c1VudGlsKCAiYm9keSIgKS5vbiggInNjcm9sbC5kcm9wcGFibGUiLCBmdW5jdGlvbigpIHsKCQkJaWYgKCAhZHJhZ2dhYmxlLm9wdGlvbnMucmVmcmVzaFBvc2l0aW9ucyApIHsKCQkJCSQudWkuZGRtYW5hZ2VyLnByZXBhcmVPZmZzZXRzKCBkcmFnZ2FibGUsIGV2ZW50ICk7CgkJCX0KCQl9ICk7Cgl9LAoJZHJhZzogZnVuY3Rpb24oIGRyYWdnYWJsZSwgZXZlbnQgKSB7CgoJCS8vIElmIHlvdSBoYXZlIGEgaGlnaGx5IGR5bmFtaWMgcGFnZSwgeW91IG1pZ2h0IHRyeSB0aGlzIG9wdGlvbi4gSXQgcmVuZGVycyBwb3NpdGlvbnMKCQkvLyBldmVyeSB0aW1lIHlvdSBtb3ZlIHRoZSBtb3VzZS4KCQlpZiAoIGRyYWdnYWJsZS5vcHRpb25zLnJlZnJlc2hQb3NpdGlvbnMgKSB7CgkJCSQudWkuZGRtYW5hZ2VyLnByZXBhcmVPZmZzZXRzKCBkcmFnZ2FibGUsIGV2ZW50ICk7CgkJfQoKCQkvLyBSdW4gdGhyb3VnaCBhbGwgZHJvcHBhYmxlcyBhbmQgY2hlY2sgdGhlaXIgcG9zaXRpb25zIGJhc2VkIG9uIHNwZWNpZmljIHRvbGVyYW5jZSBvcHRpb25zCgkJJC5lYWNoKCAkLnVpLmRkbWFuYWdlci5kcm9wcGFibGVzWyBkcmFnZ2FibGUub3B0aW9ucy5zY29wZSBdIHx8IFtdLCBmdW5jdGlvbigpIHsKCgkJCWlmICggdGhpcy5vcHRpb25zLmRpc2FibGVkIHx8IHRoaXMuZ3JlZWR5Q2hpbGQgfHwgIXRoaXMudmlzaWJsZSApIHsKCQkJCXJldHVybjsKCQkJfQoKCQkJdmFyIHBhcmVudEluc3RhbmNlLCBzY29wZSwgcGFyZW50LAoJCQkJaW50ZXJzZWN0cyA9IGludGVyc2VjdCggZHJhZ2dhYmxlLCB0aGlzLCB0aGlzLm9wdGlvbnMudG9sZXJhbmNlLCBldmVudCApLAoJCQkJYyA9ICFpbnRlcnNlY3RzICYmIHRoaXMuaXNvdmVyID8KCQkJCQkiaXNvdXQiIDoKCQkJCQkoIGludGVyc2VjdHMgJiYgIXRoaXMuaXNvdmVyID8gImlzb3ZlciIgOiBudWxsICk7CgkJCWlmICggIWMgKSB7CgkJCQlyZXR1cm47CgkJCX0KCgkJCWlmICggdGhpcy5vcHRpb25zLmdyZWVkeSApIHsKCgkJCQkvLyBmaW5kIGRyb3BwYWJsZSBwYXJlbnRzIHdpdGggc2FtZSBzY29wZQoJCQkJc2NvcGUgPSB0aGlzLm9wdGlvbnMuc2NvcGU7CgkJCQlwYXJlbnQgPSB0aGlzLmVsZW1lbnQucGFyZW50cyggIjpkYXRhKHVpLWRyb3BwYWJsZSkiICkuZmlsdGVyKCBmdW5jdGlvbigpIHsKCQkJCQlyZXR1cm4gJCggdGhpcyApLmRyb3BwYWJsZSggImluc3RhbmNlIiApLm9wdGlvbnMuc2NvcGUgPT09IHNjb3BlOwoJCQkJfSApOwoKCQkJCWlmICggcGFyZW50Lmxlbmd0aCApIHsKCQkJCQlwYXJlbnRJbnN0YW5jZSA9ICQoIHBhcmVudFsgMCBdICkuZHJvcHBhYmxlKCAiaW5zdGFuY2UiICk7CgkJCQkJcGFyZW50SW5zdGFuY2UuZ3JlZWR5Q2hpbGQgPSAoIGMgPT09ICJpc292ZXIiICk7CgkJCQl9CgkJCX0KCgkJCS8vIFdlIGp1c3QgbW92ZWQgaW50byBhIGdyZWVkeSBjaGlsZAoJCQlpZiAoIHBhcmVudEluc3RhbmNlICYmIGMgPT09ICJpc292ZXIiICkgewoJCQkJcGFyZW50SW5zdGFuY2UuaXNvdmVyID0gZmFsc2U7CgkJCQlwYXJlbnRJbnN0YW5jZS5pc291dCA9IHRydWU7CgkJCQlwYXJlbnRJbnN0YW5jZS5fb3V0LmNhbGwoIHBhcmVudEluc3RhbmNlLCBldmVudCApOwoJCQl9CgoJCQl0aGlzWyBjIF0gPSB0cnVlOwoJCQl0aGlzWyBjID09PSAiaXNvdXQiID8gImlzb3ZlciIgOiAiaXNvdXQiIF0gPSBmYWxzZTsKCQkJdGhpc1sgYyA9PT0gImlzb3ZlciIgPyAiX292ZXIiIDogIl9vdXQiIF0uY2FsbCggdGhpcywgZXZlbnQgKTsKCgkJCS8vIFdlIGp1c3QgbW92ZWQgb3V0IG9mIGEgZ3JlZWR5IGNoaWxkCgkJCWlmICggcGFyZW50SW5zdGFuY2UgJiYgYyA9PT0gImlzb3V0IiApIHsKCQkJCXBhcmVudEluc3RhbmNlLmlzb3V0ID0gZmFsc2U7CgkJCQlwYXJlbnRJbnN0YW5jZS5pc292ZXIgPSB0cnVlOwoJCQkJcGFyZW50SW5zdGFuY2UuX292ZXIuY2FsbCggcGFyZW50SW5zdGFuY2UsIGV2ZW50ICk7CgkJCX0KCQl9ICk7CgoJfSwKCWRyYWdTdG9wOiBmdW5jdGlvbiggZHJhZ2dhYmxlLCBldmVudCApIHsKCQlkcmFnZ2FibGUuZWxlbWVudC5wYXJlbnRzVW50aWwoICJib2R5IiApLm9mZiggInNjcm9sbC5kcm9wcGFibGUiICk7CgoJCS8vIENhbGwgcHJlcGFyZU9mZnNldHMgb25lIGZpbmFsIHRpbWUgc2luY2UgSUUgZG9lcyBub3QgZmlyZSByZXR1cm4gc2Nyb2xsIGV2ZW50cyB3aGVuCgkJLy8gb3ZlcmZsb3cgd2FzIGNhdXNlZCBieSBkcmFnIChzZWUgIzUwMDMpCgkJaWYgKCAhZHJhZ2dhYmxlLm9wdGlvbnMucmVmcmVzaFBvc2l0aW9ucyApIHsKCQkJJC51aS5kZG1hbmFnZXIucHJlcGFyZU9mZnNldHMoIGRyYWdnYWJsZSwgZXZlbnQgKTsKCQl9Cgl9Cn07CgovLyBERVBSRUNBVEVECi8vIFRPRE86IHN3aXRjaCByZXR1cm4gYmFjayB0byB3aWRnZXQgZGVjbGFyYXRpb24gYXQgdG9wIG9mIGZpbGUgd2hlbiB0aGlzIGlzIHJlbW92ZWQKaWYgKCAkLnVpQmFja0NvbXBhdCAhPT0gZmFsc2UgKSB7CgoJLy8gQmFja2NvbXBhdCBmb3IgYWN0aXZlQ2xhc3MgYW5kIGhvdmVyQ2xhc3Mgb3B0aW9ucwoJJC53aWRnZXQoICJ1aS5kcm9wcGFibGUiLCAkLnVpLmRyb3BwYWJsZSwgewoJCW9wdGlvbnM6IHsKCQkJaG92ZXJDbGFzczogZmFsc2UsCgkJCWFjdGl2ZUNsYXNzOiBmYWxzZQoJCX0sCgkJX2FkZEFjdGl2ZUNsYXNzOiBmdW5jdGlvbigpIHsKCQkJdGhpcy5fc3VwZXIoKTsKCQkJaWYgKCB0aGlzLm9wdGlvbnMuYWN0aXZlQ2xhc3MgKSB7CgkJCQl0aGlzLmVsZW1lbnQuYWRkQ2xhc3MoIHRoaXMub3B0aW9ucy5hY3RpdmVDbGFzcyApOwoJCQl9CgkJfSwKCQlfcmVtb3ZlQWN0aXZlQ2xhc3M6IGZ1bmN0aW9uKCkgewoJCQl0aGlzLl9zdXBlcigpOwoJCQlpZiAoIHRoaXMub3B0aW9ucy5hY3RpdmVDbGFzcyApIHsKCQkJCXRoaXMuZWxlbWVudC5yZW1vdmVDbGFzcyggdGhpcy5vcHRpb25zLmFjdGl2ZUNsYXNzICk7CgkJCX0KCQl9LAoJCV9hZGRIb3ZlckNsYXNzOiBmdW5jdGlvbigpIHsKCQkJdGhpcy5fc3VwZXIoKTsKCQkJaWYgKCB0aGlzLm9wdGlvbnMuaG92ZXJDbGFzcyApIHsKCQkJCXRoaXMuZWxlbWVudC5hZGRDbGFzcyggdGhpcy5vcHRpb25zLmhvdmVyQ2xhc3MgKTsKCQkJfQoJCX0sCgkJX3JlbW92ZUhvdmVyQ2xhc3M6IGZ1bmN0aW9uKCkgewoJCQl0aGlzLl9zdXBlcigpOwoJCQlpZiAoIHRoaXMub3B0aW9ucy5ob3ZlckNsYXNzICkgewoJCQkJdGhpcy5lbGVtZW50LnJlbW92ZUNsYXNzKCB0aGlzLm9wdGlvbnMuaG92ZXJDbGFzcyApOwoJCQl9CgkJfQoJfSApOwp9Cgp2YXIgd2lkZ2V0c0Ryb3BwYWJsZSA9ICQudWkuZHJvcHBhYmxlOwoKCi8qIQogKiBqUXVlcnkgVUkgUmVzaXphYmxlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogUmVzaXphYmxlCi8vPj5ncm91cDogSW50ZXJhY3Rpb25zCi8vPj5kZXNjcmlwdGlvbjogRW5hYmxlcyByZXNpemUgZnVuY3Rpb25hbGl0eSBmb3IgYW55IGVsZW1lbnQuCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9yZXNpemFibGUvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9yZXNpemFibGUvCi8vPj5jc3Muc3RydWN0dXJlOiAuLi8uLi90aGVtZXMvYmFzZS9jb3JlLmNzcwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvcmVzaXphYmxlLmNzcwovLz4+Y3NzLnRoZW1lOiAuLi8uLi90aGVtZXMvYmFzZS90aGVtZS5jc3MKCgoKJC53aWRnZXQoICJ1aS5yZXNpemFibGUiLCAkLnVpLm1vdXNlLCB7Cgl2ZXJzaW9uOiAiMS4xMi4xIiwKCXdpZGdldEV2ZW50UHJlZml4OiAicmVzaXplIiwKCW9wdGlvbnM6IHsKCQlhbHNvUmVzaXplOiBmYWxzZSwKCQlhbmltYXRlOiBmYWxzZSwKCQlhbmltYXRlRHVyYXRpb246ICJzbG93IiwKCQlhbmltYXRlRWFzaW5nOiAic3dpbmciLAoJCWFzcGVjdFJhdGlvOiBmYWxzZSwKCQlhdXRvSGlkZTogZmFsc2UsCgkJY2xhc3NlczogewoJCQkidWktcmVzaXphYmxlLXNlIjogInVpLWljb24gdWktaWNvbi1ncmlwc21hbGwtZGlhZ29uYWwtc2UiCgkJfSwKCQljb250YWlubWVudDogZmFsc2UsCgkJZ2hvc3Q6IGZhbHNlLAoJCWdyaWQ6IGZhbHNlLAoJCWhhbmRsZXM6ICJlLHMsc2UiLAoJCWhlbHBlcjogZmFsc2UsCgkJbWF4SGVpZ2h0OiBudWxsLAoJCW1heFdpZHRoOiBudWxsLAoJCW1pbkhlaWdodDogMTAsCgkJbWluV2lkdGg6IDEwLAoKCQkvLyBTZWUgIzc5NjAKCQl6SW5kZXg6IDkwLAoKCQkvLyBDYWxsYmFja3MKCQlyZXNpemU6IG51bGwsCgkJc3RhcnQ6IG51bGwsCgkJc3RvcDogbnVsbAoJfSwKCglfbnVtOiBmdW5jdGlvbiggdmFsdWUgKSB7CgkJcmV0dXJuIHBhcnNlRmxvYXQoIHZhbHVlICkgfHwgMDsKCX0sCgoJX2lzTnVtYmVyOiBmdW5jdGlvbiggdmFsdWUgKSB7CgkJcmV0dXJuICFpc05hTiggcGFyc2VGbG9hdCggdmFsdWUgKSApOwoJfSwKCglfaGFzU2Nyb2xsOiBmdW5jdGlvbiggZWwsIGEgKSB7CgoJCWlmICggJCggZWwgKS5jc3MoICJvdmVyZmxvdyIgKSA9PT0gImhpZGRlbiIgKSB7CgkJCXJldHVybiBmYWxzZTsKCQl9CgoJCXZhciBzY3JvbGwgPSAoIGEgJiYgYSA9PT0gImxlZnQiICkgPyAic2Nyb2xsTGVmdCIgOiAic2Nyb2xsVG9wIiwKCQkJaGFzID0gZmFsc2U7CgoJCWlmICggZWxbIHNjcm9sbCBdID4gMCApIHsKCQkJcmV0dXJuIHRydWU7CgkJfQoKCQkvLyBUT0RPOiBkZXRlcm1pbmUgd2hpY2ggY2FzZXMgYWN0dWFsbHkgY2F1c2UgdGhpcyB0byBoYXBwZW4KCQkvLyBpZiB0aGUgZWxlbWVudCBkb2Vzbid0IGhhdmUgdGhlIHNjcm9sbCBzZXQsIHNlZSBpZiBpdCdzIHBvc3NpYmxlIHRvCgkJLy8gc2V0IHRoZSBzY3JvbGwKCQllbFsgc2Nyb2xsIF0gPSAxOwoJCWhhcyA9ICggZWxbIHNjcm9sbCBdID4gMCApOwoJCWVsWyBzY3JvbGwgXSA9IDA7CgkJcmV0dXJuIGhhczsKCX0sCgoJX2NyZWF0ZTogZnVuY3Rpb24oKSB7CgoJCXZhciBtYXJnaW5zLAoJCQlvID0gdGhpcy5vcHRpb25zLAoJCQl0aGF0ID0gdGhpczsKCQl0aGlzLl9hZGRDbGFzcyggInVpLXJlc2l6YWJsZSIgKTsKCgkJJC5leHRlbmQoIHRoaXMsIHsKCQkJX2FzcGVjdFJhdGlvOiAhISggby5hc3BlY3RSYXRpbyApLAoJCQlhc3BlY3RSYXRpbzogby5hc3BlY3RSYXRpbywKCQkJb3JpZ2luYWxFbGVtZW50OiB0aGlzLmVsZW1lbnQsCgkJCV9wcm9wb3J0aW9uYWxseVJlc2l6ZUVsZW1lbnRzOiBbXSwKCQkJX2hlbHBlcjogby5oZWxwZXIgfHwgby5naG9zdCB8fCBvLmFuaW1hdGUgPyBvLmhlbHBlciB8fCAidWktcmVzaXphYmxlLWhlbHBlciIgOiBudWxsCgkJfSApOwoKCQkvLyBXcmFwIHRoZSBlbGVtZW50IGlmIGl0IGNhbm5vdCBob2xkIGNoaWxkIG5vZGVzCgkJaWYgKCB0aGlzLmVsZW1lbnRbIDAgXS5ub2RlTmFtZS5tYXRjaCggL14oY2FudmFzfHRleHRhcmVhfGlucHV0fHNlbGVjdHxidXR0b258aW1nKSQvaSApICkgewoKCQkJdGhpcy5lbGVtZW50LndyYXAoCgkJCQkkKCAiPGRpdiBjbGFzcz0ndWktd3JhcHBlcicgc3R5bGU9J292ZXJmbG93OiBoaWRkZW47Jz48L2Rpdj4iICkuY3NzKCB7CgkJCQkJcG9zaXRpb246IHRoaXMuZWxlbWVudC5jc3MoICJwb3NpdGlvbiIgKSwKCQkJCQl3aWR0aDogdGhpcy5lbGVtZW50Lm91dGVyV2lkdGgoKSwKCQkJCQloZWlnaHQ6IHRoaXMuZWxlbWVudC5vdXRlckhlaWdodCgpLAoJCQkJCXRvcDogdGhpcy5lbGVtZW50LmNzcyggInRvcCIgKSwKCQkJCQlsZWZ0OiB0aGlzLmVsZW1lbnQuY3NzKCAibGVmdCIgKQoJCQkJfSApCgkJCSk7CgoJCQl0aGlzLmVsZW1lbnQgPSB0aGlzLmVsZW1lbnQucGFyZW50KCkuZGF0YSgKCQkJCSJ1aS1yZXNpemFibGUiLCB0aGlzLmVsZW1lbnQucmVzaXphYmxlKCAiaW5zdGFuY2UiICkKCQkJKTsKCgkJCXRoaXMuZWxlbWVudElzV3JhcHBlciA9IHRydWU7CgoJCQltYXJnaW5zID0gewoJCQkJbWFyZ2luVG9wOiB0aGlzLm9yaWdpbmFsRWxlbWVudC5jc3MoICJtYXJnaW5Ub3AiICksCgkJCQltYXJnaW5SaWdodDogdGhpcy5vcmlnaW5hbEVsZW1lbnQuY3NzKCAibWFyZ2luUmlnaHQiICksCgkJCQltYXJnaW5Cb3R0b206IHRoaXMub3JpZ2luYWxFbGVtZW50LmNzcyggIm1hcmdpbkJvdHRvbSIgKSwKCQkJCW1hcmdpbkxlZnQ6IHRoaXMub3JpZ2luYWxFbGVtZW50LmNzcyggIm1hcmdpbkxlZnQiICkKCQkJfTsKCgkJCXRoaXMuZWxlbWVudC5jc3MoIG1hcmdpbnMgKTsKCQkJdGhpcy5vcmlnaW5hbEVsZW1lbnQuY3NzKCAibWFyZ2luIiwgMCApOwoKCQkJLy8gc3VwcG9ydDogU2FmYXJpCgkJCS8vIFByZXZlbnQgU2FmYXJpIHRleHRhcmVhIHJlc2l6ZQoJCQl0aGlzLm9yaWdpbmFsUmVzaXplU3R5bGUgPSB0aGlzLm9yaWdpbmFsRWxlbWVudC5jc3MoICJyZXNpemUiICk7CgkJCXRoaXMub3JpZ2luYWxFbGVtZW50LmNzcyggInJlc2l6ZSIsICJub25lIiApOwoKCQkJdGhpcy5fcHJvcG9ydGlvbmFsbHlSZXNpemVFbGVtZW50cy5wdXNoKCB0aGlzLm9yaWdpbmFsRWxlbWVudC5jc3MoIHsKCQkJCXBvc2l0aW9uOiAic3RhdGljIiwKCQkJCXpvb206IDEsCgkJCQlkaXNwbGF5OiAiYmxvY2siCgkJCX0gKSApOwoKCQkJLy8gU3VwcG9ydDogSUU5CgkJCS8vIGF2b2lkIElFIGp1bXAgKGhhcmQgc2V0IHRoZSBtYXJnaW4pCgkJCXRoaXMub3JpZ2luYWxFbGVtZW50LmNzcyggbWFyZ2lucyApOwoKCQkJdGhpcy5fcHJvcG9ydGlvbmFsbHlSZXNpemUoKTsKCQl9CgoJCXRoaXMuX3NldHVwSGFuZGxlcygpOwoKCQlpZiAoIG8uYXV0b0hpZGUgKSB7CgkJCSQoIHRoaXMuZWxlbWVudCApCgkJCQkub24oICJtb3VzZWVudGVyIiwgZnVuY3Rpb24oKSB7CgkJCQkJaWYgKCBvLmRpc2FibGVkICkgewoJCQkJCQlyZXR1cm47CgkJCQkJfQoJCQkJCXRoYXQuX3JlbW92ZUNsYXNzKCAidWktcmVzaXphYmxlLWF1dG9oaWRlIiApOwoJCQkJCXRoYXQuX2hhbmRsZXMuc2hvdygpOwoJCQkJfSApCgkJCQkub24oICJtb3VzZWxlYXZlIiwgZnVuY3Rpb24oKSB7CgkJCQkJaWYgKCBvLmRpc2FibGVkICkgewoJCQkJCQlyZXR1cm47CgkJCQkJfQoJCQkJCWlmICggIXRoYXQucmVzaXppbmcgKSB7CgkJCQkJCXRoYXQuX2FkZENsYXNzKCAidWktcmVzaXphYmxlLWF1dG9oaWRlIiApOwoJCQkJCQl0aGF0Ll9oYW5kbGVzLmhpZGUoKTsKCQkJCQl9CgkJCQl9ICk7CgkJfQoKCQl0aGlzLl9tb3VzZUluaXQoKTsKCX0sCgoJX2Rlc3Ryb3k6IGZ1bmN0aW9uKCkgewoKCQl0aGlzLl9tb3VzZURlc3Ryb3koKTsKCgkJdmFyIHdyYXBwZXIsCgkJCV9kZXN0cm95ID0gZnVuY3Rpb24oIGV4cCApIHsKCQkJCSQoIGV4cCApCgkJCQkJLnJlbW92ZURhdGEoICJyZXNpemFibGUiICkKCQkJCQkucmVtb3ZlRGF0YSggInVpLXJlc2l6YWJsZSIgKQoJCQkJCS5vZmYoICIucmVzaXphYmxlIiApCgkJCQkJLmZpbmQoICIudWktcmVzaXphYmxlLWhhbmRsZSIgKQoJCQkJCQkucmVtb3ZlKCk7CgkJCX07CgoJCS8vIFRPRE86IFVud3JhcCBhdCBzYW1lIERPTSBwb3NpdGlvbgoJCWlmICggdGhpcy5lbGVtZW50SXNXcmFwcGVyICkgewoJCQlfZGVzdHJveSggdGhpcy5lbGVtZW50ICk7CgkJCXdyYXBwZXIgPSB0aGlzLmVsZW1lbnQ7CgkJCXRoaXMub3JpZ2luYWxFbGVtZW50LmNzcyggewoJCQkJcG9zaXRpb246IHdyYXBwZXIuY3NzKCAicG9zaXRpb24iICksCgkJCQl3aWR0aDogd3JhcHBlci5vdXRlcldpZHRoKCksCgkJCQloZWlnaHQ6IHdyYXBwZXIub3V0ZXJIZWlnaHQoKSwKCQkJCXRvcDogd3JhcHBlci5jc3MoICJ0b3AiICksCgkJCQlsZWZ0OiB3cmFwcGVyLmNzcyggImxlZnQiICkKCQkJfSApLmluc2VydEFmdGVyKCB3cmFwcGVyICk7CgkJCXdyYXBwZXIucmVtb3ZlKCk7CgkJfQoKCQl0aGlzLm9yaWdpbmFsRWxlbWVudC5jc3MoICJyZXNpemUiLCB0aGlzLm9yaWdpbmFsUmVzaXplU3R5bGUgKTsKCQlfZGVzdHJveSggdGhpcy5vcmlnaW5hbEVsZW1lbnQgKTsKCgkJcmV0dXJuIHRoaXM7Cgl9LAoKCV9zZXRPcHRpb246IGZ1bmN0aW9uKCBrZXksIHZhbHVlICkgewoJCXRoaXMuX3N1cGVyKCBrZXksIHZhbHVlICk7CgoJCXN3aXRjaCAoIGtleSApIHsKCQljYXNlICJoYW5kbGVzIjoKCQkJdGhpcy5fcmVtb3ZlSGFuZGxlcygpOwoJCQl0aGlzLl9zZXR1cEhhbmRsZXMoKTsKCQkJYnJlYWs7CgkJZGVmYXVsdDoKCQkJYnJlYWs7CgkJfQoJfSwKCglfc2V0dXBIYW5kbGVzOiBmdW5jdGlvbigpIHsKCQl2YXIgbyA9IHRoaXMub3B0aW9ucywgaGFuZGxlLCBpLCBuLCBobmFtZSwgYXhpcywgdGhhdCA9IHRoaXM7CgkJdGhpcy5oYW5kbGVzID0gby5oYW5kbGVzIHx8CgkJCSggISQoICIudWktcmVzaXphYmxlLWhhbmRsZSIsIHRoaXMuZWxlbWVudCApLmxlbmd0aCA/CgkJCQkiZSxzLHNlIiA6IHsKCQkJCQluOiAiLnVpLXJlc2l6YWJsZS1uIiwKCQkJCQllOiAiLnVpLXJlc2l6YWJsZS1lIiwKCQkJCQlzOiAiLnVpLXJlc2l6YWJsZS1zIiwKCQkJCQl3OiAiLnVpLXJlc2l6YWJsZS13IiwKCQkJCQlzZTogIi51aS1yZXNpemFibGUtc2UiLAoJCQkJCXN3OiAiLnVpLXJlc2l6YWJsZS1zdyIsCgkJCQkJbmU6ICIudWktcmVzaXphYmxlLW5lIiwKCQkJCQludzogIi51aS1yZXNpemFibGUtbnciCgkJCQl9ICk7CgoJCXRoaXMuX2hhbmRsZXMgPSAkKCk7CgkJaWYgKCB0aGlzLmhhbmRsZXMuY29uc3RydWN0b3IgPT09IFN0cmluZyApIHsKCgkJCWlmICggdGhpcy5oYW5kbGVzID09PSAiYWxsIiApIHsKCQkJCXRoaXMuaGFuZGxlcyA9ICJuLGUscyx3LHNlLHN3LG5lLG53IjsKCQkJfQoKCQkJbiA9IHRoaXMuaGFuZGxlcy5zcGxpdCggIiwiICk7CgkJCXRoaXMuaGFuZGxlcyA9IHt9OwoKCQkJZm9yICggaSA9IDA7IGkgPCBuLmxlbmd0aDsgaSsrICkgewoKCQkJCWhhbmRsZSA9ICQudHJpbSggblsgaSBdICk7CgkJCQlobmFtZSA9ICJ1aS1yZXNpemFibGUtIiArIGhhbmRsZTsKCQkJCWF4aXMgPSAkKCAiPGRpdj4iICk7CgkJCQl0aGlzLl9hZGRDbGFzcyggYXhpcywgInVpLXJlc2l6YWJsZS1oYW5kbGUgIiArIGhuYW1lICk7CgoJCQkJYXhpcy5jc3MoIHsgekluZGV4OiBvLnpJbmRleCB9ICk7CgoJCQkJdGhpcy5oYW5kbGVzWyBoYW5kbGUgXSA9ICIudWktcmVzaXphYmxlLSIgKyBoYW5kbGU7CgkJCQl0aGlzLmVsZW1lbnQuYXBwZW5kKCBheGlzICk7CgkJCX0KCgkJfQoKCQl0aGlzLl9yZW5kZXJBeGlzID0gZnVuY3Rpb24oIHRhcmdldCApIHsKCgkJCXZhciBpLCBheGlzLCBwYWRQb3MsIHBhZFdyYXBwZXI7CgoJCQl0YXJnZXQgPSB0YXJnZXQgfHwgdGhpcy5lbGVtZW50OwoKCQkJZm9yICggaSBpbiB0aGlzLmhhbmRsZXMgKSB7CgoJCQkJaWYgKCB0aGlzLmhhbmRsZXNbIGkgXS5jb25zdHJ1Y3RvciA9PT0gU3RyaW5nICkgewoJCQkJCXRoaXMuaGFuZGxlc1sgaSBdID0gdGhpcy5lbGVtZW50LmNoaWxkcmVuKCB0aGlzLmhhbmRsZXNbIGkgXSApLmZpcnN0KCkuc2hvdygpOwoJCQkJfSBlbHNlIGlmICggdGhpcy5oYW5kbGVzWyBpIF0uanF1ZXJ5IHx8IHRoaXMuaGFuZGxlc1sgaSBdLm5vZGVUeXBlICkgewoJCQkJCXRoaXMuaGFuZGxlc1sgaSBdID0gJCggdGhpcy5oYW5kbGVzWyBpIF0gKTsKCQkJCQl0aGlzLl9vbiggdGhpcy5oYW5kbGVzWyBpIF0sIHsgIm1vdXNlZG93biI6IHRoYXQuX21vdXNlRG93biB9ICk7CgkJCQl9CgoJCQkJaWYgKCB0aGlzLmVsZW1lbnRJc1dyYXBwZXIgJiYKCQkJCQkJdGhpcy5vcmlnaW5hbEVsZW1lbnRbIDAgXQoJCQkJCQkJLm5vZGVOYW1lCgkJCQkJCQkubWF0Y2goIC9eKHRleHRhcmVhfGlucHV0fHNlbGVjdHxidXR0b24pJC9pICkgKSB7CgkJCQkJYXhpcyA9ICQoIHRoaXMuaGFuZGxlc1sgaSBdLCB0aGlzLmVsZW1lbnQgKTsKCgkJCQkJcGFkV3JhcHBlciA9IC9zd3xuZXxud3xzZXxufHMvLnRlc3QoIGkgKSA/CgkJCQkJCWF4aXMub3V0ZXJIZWlnaHQoKSA6CgkJCQkJCWF4aXMub3V0ZXJXaWR0aCgpOwoKCQkJCQlwYWRQb3MgPSBbICJwYWRkaW5nIiwKCQkJCQkJL25lfG53fG4vLnRlc3QoIGkgKSA/ICJUb3AiIDoKCQkJCQkJL3NlfHN3fHMvLnRlc3QoIGkgKSA/ICJCb3R0b20iIDoKCQkJCQkJL15lJC8udGVzdCggaSApID8gIlJpZ2h0IiA6ICJMZWZ0IiBdLmpvaW4oICIiICk7CgoJCQkJCXRhcmdldC5jc3MoIHBhZFBvcywgcGFkV3JhcHBlciApOwoKCQkJCQl0aGlzLl9wcm9wb3J0aW9uYWxseVJlc2l6ZSgpOwoJCQkJfQoKCQkJCXRoaXMuX2hhbmRsZXMgPSB0aGlzLl9oYW5kbGVzLmFkZCggdGhpcy5oYW5kbGVzWyBpIF0gKTsKCQkJfQoJCX07CgoJCS8vIFRPRE86IG1ha2UgcmVuZGVyQXhpcyBhIHByb3RvdHlwZSBmdW5jdGlvbgoJCXRoaXMuX3JlbmRlckF4aXMoIHRoaXMuZWxlbWVudCApOwoKCQl0aGlzLl9oYW5kbGVzID0gdGhpcy5faGFuZGxlcy5hZGQoIHRoaXMuZWxlbWVudC5maW5kKCAiLnVpLXJlc2l6YWJsZS1oYW5kbGUiICkgKTsKCQl0aGlzLl9oYW5kbGVzLmRpc2FibGVTZWxlY3Rpb24oKTsKCgkJdGhpcy5faGFuZGxlcy5vbiggIm1vdXNlb3ZlciIsIGZ1bmN0aW9uKCkgewoJCQlpZiAoICF0aGF0LnJlc2l6aW5nICkgewoJCQkJaWYgKCB0aGlzLmNsYXNzTmFtZSApIHsKCQkJCQlheGlzID0gdGhpcy5jbGFzc05hbWUubWF0Y2goIC91aS1yZXNpemFibGUtKHNlfHN3fG5lfG53fG58ZXxzfHcpL2kgKTsKCQkJCX0KCQkJCXRoYXQuYXhpcyA9IGF4aXMgJiYgYXhpc1sgMSBdID8gYXhpc1sgMSBdIDogInNlIjsKCQkJfQoJCX0gKTsKCgkJaWYgKCBvLmF1dG9IaWRlICkgewoJCQl0aGlzLl9oYW5kbGVzLmhpZGUoKTsKCQkJdGhpcy5fYWRkQ2xhc3MoICJ1aS1yZXNpemFibGUtYXV0b2hpZGUiICk7CgkJfQoJfSwKCglfcmVtb3ZlSGFuZGxlczogZnVuY3Rpb24oKSB7CgkJdGhpcy5faGFuZGxlcy5yZW1vdmUoKTsKCX0sCgoJX21vdXNlQ2FwdHVyZTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXZhciBpLCBoYW5kbGUsCgkJCWNhcHR1cmUgPSBmYWxzZTsKCgkJZm9yICggaSBpbiB0aGlzLmhhbmRsZXMgKSB7CgkJCWhhbmRsZSA9ICQoIHRoaXMuaGFuZGxlc1sgaSBdIClbIDAgXTsKCQkJaWYgKCBoYW5kbGUgPT09IGV2ZW50LnRhcmdldCB8fCAkLmNvbnRhaW5zKCBoYW5kbGUsIGV2ZW50LnRhcmdldCApICkgewoJCQkJY2FwdHVyZSA9IHRydWU7CgkJCX0KCQl9CgoJCXJldHVybiAhdGhpcy5vcHRpb25zLmRpc2FibGVkICYmIGNhcHR1cmU7Cgl9LAoKCV9tb3VzZVN0YXJ0OiBmdW5jdGlvbiggZXZlbnQgKSB7CgoJCXZhciBjdXJsZWZ0LCBjdXJ0b3AsIGN1cnNvciwKCQkJbyA9IHRoaXMub3B0aW9ucywKCQkJZWwgPSB0aGlzLmVsZW1lbnQ7CgoJCXRoaXMucmVzaXppbmcgPSB0cnVlOwoKCQl0aGlzLl9yZW5kZXJQcm94eSgpOwoKCQljdXJsZWZ0ID0gdGhpcy5fbnVtKCB0aGlzLmhlbHBlci5jc3MoICJsZWZ0IiApICk7CgkJY3VydG9wID0gdGhpcy5fbnVtKCB0aGlzLmhlbHBlci5jc3MoICJ0b3AiICkgKTsKCgkJaWYgKCBvLmNvbnRhaW5tZW50ICkgewoJCQljdXJsZWZ0ICs9ICQoIG8uY29udGFpbm1lbnQgKS5zY3JvbGxMZWZ0KCkgfHwgMDsKCQkJY3VydG9wICs9ICQoIG8uY29udGFpbm1lbnQgKS5zY3JvbGxUb3AoKSB8fCAwOwoJCX0KCgkJdGhpcy5vZmZzZXQgPSB0aGlzLmhlbHBlci5vZmZzZXQoKTsKCQl0aGlzLnBvc2l0aW9uID0geyBsZWZ0OiBjdXJsZWZ0LCB0b3A6IGN1cnRvcCB9OwoKCQl0aGlzLnNpemUgPSB0aGlzLl9oZWxwZXIgPyB7CgkJCQl3aWR0aDogdGhpcy5oZWxwZXIud2lkdGgoKSwKCQkJCWhlaWdodDogdGhpcy5oZWxwZXIuaGVpZ2h0KCkKCQkJfSA6IHsKCQkJCXdpZHRoOiBlbC53aWR0aCgpLAoJCQkJaGVpZ2h0OiBlbC5oZWlnaHQoKQoJCQl9OwoKCQl0aGlzLm9yaWdpbmFsU2l6ZSA9IHRoaXMuX2hlbHBlciA/IHsKCQkJCXdpZHRoOiBlbC5vdXRlcldpZHRoKCksCgkJCQloZWlnaHQ6IGVsLm91dGVySGVpZ2h0KCkKCQkJfSA6IHsKCQkJCXdpZHRoOiBlbC53aWR0aCgpLAoJCQkJaGVpZ2h0OiBlbC5oZWlnaHQoKQoJCQl9OwoKCQl0aGlzLnNpemVEaWZmID0gewoJCQl3aWR0aDogZWwub3V0ZXJXaWR0aCgpIC0gZWwud2lkdGgoKSwKCQkJaGVpZ2h0OiBlbC5vdXRlckhlaWdodCgpIC0gZWwuaGVpZ2h0KCkKCQl9OwoKCQl0aGlzLm9yaWdpbmFsUG9zaXRpb24gPSB7IGxlZnQ6IGN1cmxlZnQsIHRvcDogY3VydG9wIH07CgkJdGhpcy5vcmlnaW5hbE1vdXNlUG9zaXRpb24gPSB7IGxlZnQ6IGV2ZW50LnBhZ2VYLCB0b3A6IGV2ZW50LnBhZ2VZIH07CgoJCXRoaXMuYXNwZWN0UmF0aW8gPSAoIHR5cGVvZiBvLmFzcGVjdFJhdGlvID09PSAibnVtYmVyIiApID8KCQkJby5hc3BlY3RSYXRpbyA6CgkJCSggKCB0aGlzLm9yaWdpbmFsU2l6ZS53aWR0aCAvIHRoaXMub3JpZ2luYWxTaXplLmhlaWdodCApIHx8IDEgKTsKCgkJY3Vyc29yID0gJCggIi51aS1yZXNpemFibGUtIiArIHRoaXMuYXhpcyApLmNzcyggImN1cnNvciIgKTsKCQkkKCAiYm9keSIgKS5jc3MoICJjdXJzb3IiLCBjdXJzb3IgPT09ICJhdXRvIiA/IHRoaXMuYXhpcyArICItcmVzaXplIiA6IGN1cnNvciApOwoKCQl0aGlzLl9hZGRDbGFzcyggInVpLXJlc2l6YWJsZS1yZXNpemluZyIgKTsKCQl0aGlzLl9wcm9wYWdhdGUoICJzdGFydCIsIGV2ZW50ICk7CgkJcmV0dXJuIHRydWU7Cgl9LAoKCV9tb3VzZURyYWc6IGZ1bmN0aW9uKCBldmVudCApIHsKCgkJdmFyIGRhdGEsIHByb3BzLAoJCQlzbXAgPSB0aGlzLm9yaWdpbmFsTW91c2VQb3NpdGlvbiwKCQkJYSA9IHRoaXMuYXhpcywKCQkJZHggPSAoIGV2ZW50LnBhZ2VYIC0gc21wLmxlZnQgKSB8fCAwLAoJCQlkeSA9ICggZXZlbnQucGFnZVkgLSBzbXAudG9wICkgfHwgMCwKCQkJdHJpZ2dlciA9IHRoaXMuX2NoYW5nZVsgYSBdOwoKCQl0aGlzLl91cGRhdGVQcmV2UHJvcGVydGllcygpOwoKCQlpZiAoICF0cmlnZ2VyICkgewoJCQlyZXR1cm4gZmFsc2U7CgkJfQoKCQlkYXRhID0gdHJpZ2dlci5hcHBseSggdGhpcywgWyBldmVudCwgZHgsIGR5IF0gKTsKCgkJdGhpcy5fdXBkYXRlVmlydHVhbEJvdW5kYXJpZXMoIGV2ZW50LnNoaWZ0S2V5ICk7CgkJaWYgKCB0aGlzLl9hc3BlY3RSYXRpbyB8fCBldmVudC5zaGlmdEtleSApIHsKCQkJZGF0YSA9IHRoaXMuX3VwZGF0ZVJhdGlvKCBkYXRhLCBldmVudCApOwoJCX0KCgkJZGF0YSA9IHRoaXMuX3Jlc3BlY3RTaXplKCBkYXRhLCBldmVudCApOwoKCQl0aGlzLl91cGRhdGVDYWNoZSggZGF0YSApOwoKCQl0aGlzLl9wcm9wYWdhdGUoICJyZXNpemUiLCBldmVudCApOwoKCQlwcm9wcyA9IHRoaXMuX2FwcGx5Q2hhbmdlcygpOwoKCQlpZiAoICF0aGlzLl9oZWxwZXIgJiYgdGhpcy5fcHJvcG9ydGlvbmFsbHlSZXNpemVFbGVtZW50cy5sZW5ndGggKSB7CgkJCXRoaXMuX3Byb3BvcnRpb25hbGx5UmVzaXplKCk7CgkJfQoKCQlpZiAoICEkLmlzRW1wdHlPYmplY3QoIHByb3BzICkgKSB7CgkJCXRoaXMuX3VwZGF0ZVByZXZQcm9wZXJ0aWVzKCk7CgkJCXRoaXMuX3RyaWdnZXIoICJyZXNpemUiLCBldmVudCwgdGhpcy51aSgpICk7CgkJCXRoaXMuX2FwcGx5Q2hhbmdlcygpOwoJCX0KCgkJcmV0dXJuIGZhbHNlOwoJfSwKCglfbW91c2VTdG9wOiBmdW5jdGlvbiggZXZlbnQgKSB7CgoJCXRoaXMucmVzaXppbmcgPSBmYWxzZTsKCQl2YXIgcHIsIGlzdGEsIHNvZmZzZXRoLCBzb2Zmc2V0dywgcywgbGVmdCwgdG9wLAoJCQlvID0gdGhpcy5vcHRpb25zLCB0aGF0ID0gdGhpczsKCgkJaWYgKCB0aGlzLl9oZWxwZXIgKSB7CgoJCQlwciA9IHRoaXMuX3Byb3BvcnRpb25hbGx5UmVzaXplRWxlbWVudHM7CgkJCWlzdGEgPSBwci5sZW5ndGggJiYgKCAvdGV4dGFyZWEvaSApLnRlc3QoIHByWyAwIF0ubm9kZU5hbWUgKTsKCQkJc29mZnNldGggPSBpc3RhICYmIHRoaXMuX2hhc1Njcm9sbCggcHJbIDAgXSwgImxlZnQiICkgPyAwIDogdGhhdC5zaXplRGlmZi5oZWlnaHQ7CgkJCXNvZmZzZXR3ID0gaXN0YSA/IDAgOiB0aGF0LnNpemVEaWZmLndpZHRoOwoKCQkJcyA9IHsKCQkJCXdpZHRoOiAoIHRoYXQuaGVscGVyLndpZHRoKCkgIC0gc29mZnNldHcgKSwKCQkJCWhlaWdodDogKCB0aGF0LmhlbHBlci5oZWlnaHQoKSAtIHNvZmZzZXRoICkKCQkJfTsKCQkJbGVmdCA9ICggcGFyc2VGbG9hdCggdGhhdC5lbGVtZW50LmNzcyggImxlZnQiICkgKSArCgkJCQkoIHRoYXQucG9zaXRpb24ubGVmdCAtIHRoYXQub3JpZ2luYWxQb3NpdGlvbi5sZWZ0ICkgKSB8fCBudWxsOwoJCQl0b3AgPSAoIHBhcnNlRmxvYXQoIHRoYXQuZWxlbWVudC5jc3MoICJ0b3AiICkgKSArCgkJCQkoIHRoYXQucG9zaXRpb24udG9wIC0gdGhhdC5vcmlnaW5hbFBvc2l0aW9uLnRvcCApICkgfHwgbnVsbDsKCgkJCWlmICggIW8uYW5pbWF0ZSApIHsKCQkJCXRoaXMuZWxlbWVudC5jc3MoICQuZXh0ZW5kKCBzLCB7IHRvcDogdG9wLCBsZWZ0OiBsZWZ0IH0gKSApOwoJCQl9CgoJCQl0aGF0LmhlbHBlci5oZWlnaHQoIHRoYXQuc2l6ZS5oZWlnaHQgKTsKCQkJdGhhdC5oZWxwZXIud2lkdGgoIHRoYXQuc2l6ZS53aWR0aCApOwoKCQkJaWYgKCB0aGlzLl9oZWxwZXIgJiYgIW8uYW5pbWF0ZSApIHsKCQkJCXRoaXMuX3Byb3BvcnRpb25hbGx5UmVzaXplKCk7CgkJCX0KCQl9CgoJCSQoICJib2R5IiApLmNzcyggImN1cnNvciIsICJhdXRvIiApOwoKCQl0aGlzLl9yZW1vdmVDbGFzcyggInVpLXJlc2l6YWJsZS1yZXNpemluZyIgKTsKCgkJdGhpcy5fcHJvcGFnYXRlKCAic3RvcCIsIGV2ZW50ICk7CgoJCWlmICggdGhpcy5faGVscGVyICkgewoJCQl0aGlzLmhlbHBlci5yZW1vdmUoKTsKCQl9CgoJCXJldHVybiBmYWxzZTsKCgl9LAoKCV91cGRhdGVQcmV2UHJvcGVydGllczogZnVuY3Rpb24oKSB7CgkJdGhpcy5wcmV2UG9zaXRpb24gPSB7CgkJCXRvcDogdGhpcy5wb3NpdGlvbi50b3AsCgkJCWxlZnQ6IHRoaXMucG9zaXRpb24ubGVmdAoJCX07CgkJdGhpcy5wcmV2U2l6ZSA9IHsKCQkJd2lkdGg6IHRoaXMuc2l6ZS53aWR0aCwKCQkJaGVpZ2h0OiB0aGlzLnNpemUuaGVpZ2h0CgkJfTsKCX0sCgoJX2FwcGx5Q2hhbmdlczogZnVuY3Rpb24oKSB7CgkJdmFyIHByb3BzID0ge307CgoJCWlmICggdGhpcy5wb3NpdGlvbi50b3AgIT09IHRoaXMucHJldlBvc2l0aW9uLnRvcCApIHsKCQkJcHJvcHMudG9wID0gdGhpcy5wb3NpdGlvbi50b3AgKyAicHgiOwoJCX0KCQlpZiAoIHRoaXMucG9zaXRpb24ubGVmdCAhPT0gdGhpcy5wcmV2UG9zaXRpb24ubGVmdCApIHsKCQkJcHJvcHMubGVmdCA9IHRoaXMucG9zaXRpb24ubGVmdCArICJweCI7CgkJfQoJCWlmICggdGhpcy5zaXplLndpZHRoICE9PSB0aGlzLnByZXZTaXplLndpZHRoICkgewoJCQlwcm9wcy53aWR0aCA9IHRoaXMuc2l6ZS53aWR0aCArICJweCI7CgkJfQoJCWlmICggdGhpcy5zaXplLmhlaWdodCAhPT0gdGhpcy5wcmV2U2l6ZS5oZWlnaHQgKSB7CgkJCXByb3BzLmhlaWdodCA9IHRoaXMuc2l6ZS5oZWlnaHQgKyAicHgiOwoJCX0KCgkJdGhpcy5oZWxwZXIuY3NzKCBwcm9wcyApOwoKCQlyZXR1cm4gcHJvcHM7Cgl9LAoKCV91cGRhdGVWaXJ0dWFsQm91bmRhcmllczogZnVuY3Rpb24oIGZvcmNlQXNwZWN0UmF0aW8gKSB7CgkJdmFyIHBNaW5XaWR0aCwgcE1heFdpZHRoLCBwTWluSGVpZ2h0LCBwTWF4SGVpZ2h0LCBiLAoJCQlvID0gdGhpcy5vcHRpb25zOwoKCQliID0gewoJCQltaW5XaWR0aDogdGhpcy5faXNOdW1iZXIoIG8ubWluV2lkdGggKSA/IG8ubWluV2lkdGggOiAwLAoJCQltYXhXaWR0aDogdGhpcy5faXNOdW1iZXIoIG8ubWF4V2lkdGggKSA/IG8ubWF4V2lkdGggOiBJbmZpbml0eSwKCQkJbWluSGVpZ2h0OiB0aGlzLl9pc051bWJlciggby5taW5IZWlnaHQgKSA/IG8ubWluSGVpZ2h0IDogMCwKCQkJbWF4SGVpZ2h0OiB0aGlzLl9pc051bWJlciggby5tYXhIZWlnaHQgKSA/IG8ubWF4SGVpZ2h0IDogSW5maW5pdHkKCQl9OwoKCQlpZiAoIHRoaXMuX2FzcGVjdFJhdGlvIHx8IGZvcmNlQXNwZWN0UmF0aW8gKSB7CgkJCXBNaW5XaWR0aCA9IGIubWluSGVpZ2h0ICogdGhpcy5hc3BlY3RSYXRpbzsKCQkJcE1pbkhlaWdodCA9IGIubWluV2lkdGggLyB0aGlzLmFzcGVjdFJhdGlvOwoJCQlwTWF4V2lkdGggPSBiLm1heEhlaWdodCAqIHRoaXMuYXNwZWN0UmF0aW87CgkJCXBNYXhIZWlnaHQgPSBiLm1heFdpZHRoIC8gdGhpcy5hc3BlY3RSYXRpbzsKCgkJCWlmICggcE1pbldpZHRoID4gYi5taW5XaWR0aCApIHsKCQkJCWIubWluV2lkdGggPSBwTWluV2lkdGg7CgkJCX0KCQkJaWYgKCBwTWluSGVpZ2h0ID4gYi5taW5IZWlnaHQgKSB7CgkJCQliLm1pbkhlaWdodCA9IHBNaW5IZWlnaHQ7CgkJCX0KCQkJaWYgKCBwTWF4V2lkdGggPCBiLm1heFdpZHRoICkgewoJCQkJYi5tYXhXaWR0aCA9IHBNYXhXaWR0aDsKCQkJfQoJCQlpZiAoIHBNYXhIZWlnaHQgPCBiLm1heEhlaWdodCApIHsKCQkJCWIubWF4SGVpZ2h0ID0gcE1heEhlaWdodDsKCQkJfQoJCX0KCQl0aGlzLl92Qm91bmRhcmllcyA9IGI7Cgl9LAoKCV91cGRhdGVDYWNoZTogZnVuY3Rpb24oIGRhdGEgKSB7CgkJdGhpcy5vZmZzZXQgPSB0aGlzLmhlbHBlci5vZmZzZXQoKTsKCQlpZiAoIHRoaXMuX2lzTnVtYmVyKCBkYXRhLmxlZnQgKSApIHsKCQkJdGhpcy5wb3NpdGlvbi5sZWZ0ID0gZGF0YS5sZWZ0OwoJCX0KCQlpZiAoIHRoaXMuX2lzTnVtYmVyKCBkYXRhLnRvcCApICkgewoJCQl0aGlzLnBvc2l0aW9uLnRvcCA9IGRhdGEudG9wOwoJCX0KCQlpZiAoIHRoaXMuX2lzTnVtYmVyKCBkYXRhLmhlaWdodCApICkgewoJCQl0aGlzLnNpemUuaGVpZ2h0ID0gZGF0YS5oZWlnaHQ7CgkJfQoJCWlmICggdGhpcy5faXNOdW1iZXIoIGRhdGEud2lkdGggKSApIHsKCQkJdGhpcy5zaXplLndpZHRoID0gZGF0YS53aWR0aDsKCQl9Cgl9LAoKCV91cGRhdGVSYXRpbzogZnVuY3Rpb24oIGRhdGEgKSB7CgoJCXZhciBjcG9zID0gdGhpcy5wb3NpdGlvbiwKCQkJY3NpemUgPSB0aGlzLnNpemUsCgkJCWEgPSB0aGlzLmF4aXM7CgoJCWlmICggdGhpcy5faXNOdW1iZXIoIGRhdGEuaGVpZ2h0ICkgKSB7CgkJCWRhdGEud2lkdGggPSAoIGRhdGEuaGVpZ2h0ICogdGhpcy5hc3BlY3RSYXRpbyApOwoJCX0gZWxzZSBpZiAoIHRoaXMuX2lzTnVtYmVyKCBkYXRhLndpZHRoICkgKSB7CgkJCWRhdGEuaGVpZ2h0ID0gKCBkYXRhLndpZHRoIC8gdGhpcy5hc3BlY3RSYXRpbyApOwoJCX0KCgkJaWYgKCBhID09PSAic3ciICkgewoJCQlkYXRhLmxlZnQgPSBjcG9zLmxlZnQgKyAoIGNzaXplLndpZHRoIC0gZGF0YS53aWR0aCApOwoJCQlkYXRhLnRvcCA9IG51bGw7CgkJfQoJCWlmICggYSA9PT0gIm53IiApIHsKCQkJZGF0YS50b3AgPSBjcG9zLnRvcCArICggY3NpemUuaGVpZ2h0IC0gZGF0YS5oZWlnaHQgKTsKCQkJZGF0YS5sZWZ0ID0gY3Bvcy5sZWZ0ICsgKCBjc2l6ZS53aWR0aCAtIGRhdGEud2lkdGggKTsKCQl9CgoJCXJldHVybiBkYXRhOwoJfSwKCglfcmVzcGVjdFNpemU6IGZ1bmN0aW9uKCBkYXRhICkgewoKCQl2YXIgbyA9IHRoaXMuX3ZCb3VuZGFyaWVzLAoJCQlhID0gdGhpcy5heGlzLAoJCQlpc21heHcgPSB0aGlzLl9pc051bWJlciggZGF0YS53aWR0aCApICYmIG8ubWF4V2lkdGggJiYgKCBvLm1heFdpZHRoIDwgZGF0YS53aWR0aCApLAoJCQlpc21heGggPSB0aGlzLl9pc051bWJlciggZGF0YS5oZWlnaHQgKSAmJiBvLm1heEhlaWdodCAmJiAoIG8ubWF4SGVpZ2h0IDwgZGF0YS5oZWlnaHQgKSwKCQkJaXNtaW53ID0gdGhpcy5faXNOdW1iZXIoIGRhdGEud2lkdGggKSAmJiBvLm1pbldpZHRoICYmICggby5taW5XaWR0aCA+IGRhdGEud2lkdGggKSwKCQkJaXNtaW5oID0gdGhpcy5faXNOdW1iZXIoIGRhdGEuaGVpZ2h0ICkgJiYgby5taW5IZWlnaHQgJiYgKCBvLm1pbkhlaWdodCA+IGRhdGEuaGVpZ2h0ICksCgkJCWR3ID0gdGhpcy5vcmlnaW5hbFBvc2l0aW9uLmxlZnQgKyB0aGlzLm9yaWdpbmFsU2l6ZS53aWR0aCwKCQkJZGggPSB0aGlzLm9yaWdpbmFsUG9zaXRpb24udG9wICsgdGhpcy5vcmlnaW5hbFNpemUuaGVpZ2h0LAoJCQljdyA9IC9zd3xud3x3Ly50ZXN0KCBhICksIGNoID0gL253fG5lfG4vLnRlc3QoIGEgKTsKCQlpZiAoIGlzbWludyApIHsKCQkJZGF0YS53aWR0aCA9IG8ubWluV2lkdGg7CgkJfQoJCWlmICggaXNtaW5oICkgewoJCQlkYXRhLmhlaWdodCA9IG8ubWluSGVpZ2h0OwoJCX0KCQlpZiAoIGlzbWF4dyApIHsKCQkJZGF0YS53aWR0aCA9IG8ubWF4V2lkdGg7CgkJfQoJCWlmICggaXNtYXhoICkgewoJCQlkYXRhLmhlaWdodCA9IG8ubWF4SGVpZ2h0OwoJCX0KCgkJaWYgKCBpc21pbncgJiYgY3cgKSB7CgkJCWRhdGEubGVmdCA9IGR3IC0gby5taW5XaWR0aDsKCQl9CgkJaWYgKCBpc21heHcgJiYgY3cgKSB7CgkJCWRhdGEubGVmdCA9IGR3IC0gby5tYXhXaWR0aDsKCQl9CgkJaWYgKCBpc21pbmggJiYgY2ggKSB7CgkJCWRhdGEudG9wID0gZGggLSBvLm1pbkhlaWdodDsKCQl9CgkJaWYgKCBpc21heGggJiYgY2ggKSB7CgkJCWRhdGEudG9wID0gZGggLSBvLm1heEhlaWdodDsKCQl9CgoJCS8vIEZpeGluZyBqdW1wIGVycm9yIG9uIHRvcC9sZWZ0IC0gYnVnICMyMzMwCgkJaWYgKCAhZGF0YS53aWR0aCAmJiAhZGF0YS5oZWlnaHQgJiYgIWRhdGEubGVmdCAmJiBkYXRhLnRvcCApIHsKCQkJZGF0YS50b3AgPSBudWxsOwoJCX0gZWxzZSBpZiAoICFkYXRhLndpZHRoICYmICFkYXRhLmhlaWdodCAmJiAhZGF0YS50b3AgJiYgZGF0YS5sZWZ0ICkgewoJCQlkYXRhLmxlZnQgPSBudWxsOwoJCX0KCgkJcmV0dXJuIGRhdGE7Cgl9LAoKCV9nZXRQYWRkaW5nUGx1c0JvcmRlckRpbWVuc2lvbnM6IGZ1bmN0aW9uKCBlbGVtZW50ICkgewoJCXZhciBpID0gMCwKCQkJd2lkdGhzID0gW10sCgkJCWJvcmRlcnMgPSBbCgkJCQllbGVtZW50LmNzcyggImJvcmRlclRvcFdpZHRoIiApLAoJCQkJZWxlbWVudC5jc3MoICJib3JkZXJSaWdodFdpZHRoIiApLAoJCQkJZWxlbWVudC5jc3MoICJib3JkZXJCb3R0b21XaWR0aCIgKSwKCQkJCWVsZW1lbnQuY3NzKCAiYm9yZGVyTGVmdFdpZHRoIiApCgkJCV0sCgkJCXBhZGRpbmdzID0gWwoJCQkJZWxlbWVudC5jc3MoICJwYWRkaW5nVG9wIiApLAoJCQkJZWxlbWVudC5jc3MoICJwYWRkaW5nUmlnaHQiICksCgkJCQllbGVtZW50LmNzcyggInBhZGRpbmdCb3R0b20iICksCgkJCQllbGVtZW50LmNzcyggInBhZGRpbmdMZWZ0IiApCgkJCV07CgoJCWZvciAoIDsgaSA8IDQ7IGkrKyApIHsKCQkJd2lkdGhzWyBpIF0gPSAoIHBhcnNlRmxvYXQoIGJvcmRlcnNbIGkgXSApIHx8IDAgKTsKCQkJd2lkdGhzWyBpIF0gKz0gKCBwYXJzZUZsb2F0KCBwYWRkaW5nc1sgaSBdICkgfHwgMCApOwoJCX0KCgkJcmV0dXJuIHsKCQkJaGVpZ2h0OiB3aWR0aHNbIDAgXSArIHdpZHRoc1sgMiBdLAoJCQl3aWR0aDogd2lkdGhzWyAxIF0gKyB3aWR0aHNbIDMgXQoJCX07Cgl9LAoKCV9wcm9wb3J0aW9uYWxseVJlc2l6ZTogZnVuY3Rpb24oKSB7CgoJCWlmICggIXRoaXMuX3Byb3BvcnRpb25hbGx5UmVzaXplRWxlbWVudHMubGVuZ3RoICkgewoJCQlyZXR1cm47CgkJfQoKCQl2YXIgcHJlbCwKCQkJaSA9IDAsCgkJCWVsZW1lbnQgPSB0aGlzLmhlbHBlciB8fCB0aGlzLmVsZW1lbnQ7CgoJCWZvciAoIDsgaSA8IHRoaXMuX3Byb3BvcnRpb25hbGx5UmVzaXplRWxlbWVudHMubGVuZ3RoOyBpKysgKSB7CgoJCQlwcmVsID0gdGhpcy5fcHJvcG9ydGlvbmFsbHlSZXNpemVFbGVtZW50c1sgaSBdOwoKCQkJLy8gVE9ETzogU2VlbXMgbGlrZSBhIGJ1ZyB0byBjYWNoZSB0aGlzLm91dGVyRGltZW5zaW9ucwoJCQkvLyBjb25zaWRlcmluZyB0aGF0IHdlIGFyZSBpbiBhIGxvb3AuCgkJCWlmICggIXRoaXMub3V0ZXJEaW1lbnNpb25zICkgewoJCQkJdGhpcy5vdXRlckRpbWVuc2lvbnMgPSB0aGlzLl9nZXRQYWRkaW5nUGx1c0JvcmRlckRpbWVuc2lvbnMoIHByZWwgKTsKCQkJfQoKCQkJcHJlbC5jc3MoIHsKCQkJCWhlaWdodDogKCBlbGVtZW50LmhlaWdodCgpIC0gdGhpcy5vdXRlckRpbWVuc2lvbnMuaGVpZ2h0ICkgfHwgMCwKCQkJCXdpZHRoOiAoIGVsZW1lbnQud2lkdGgoKSAtIHRoaXMub3V0ZXJEaW1lbnNpb25zLndpZHRoICkgfHwgMAoJCQl9ICk7CgoJCX0KCgl9LAoKCV9yZW5kZXJQcm94eTogZnVuY3Rpb24oKSB7CgoJCXZhciBlbCA9IHRoaXMuZWxlbWVudCwgbyA9IHRoaXMub3B0aW9uczsKCQl0aGlzLmVsZW1lbnRPZmZzZXQgPSBlbC5vZmZzZXQoKTsKCgkJaWYgKCB0aGlzLl9oZWxwZXIgKSB7CgoJCQl0aGlzLmhlbHBlciA9IHRoaXMuaGVscGVyIHx8ICQoICI8ZGl2IHN0eWxlPSdvdmVyZmxvdzpoaWRkZW47Jz48L2Rpdj4iICk7CgoJCQl0aGlzLl9hZGRDbGFzcyggdGhpcy5oZWxwZXIsIHRoaXMuX2hlbHBlciApOwoJCQl0aGlzLmhlbHBlci5jc3MoIHsKCQkJCXdpZHRoOiB0aGlzLmVsZW1lbnQub3V0ZXJXaWR0aCgpLAoJCQkJaGVpZ2h0OiB0aGlzLmVsZW1lbnQub3V0ZXJIZWlnaHQoKSwKCQkJCXBvc2l0aW9uOiAiYWJzb2x1dGUiLAoJCQkJbGVmdDogdGhpcy5lbGVtZW50T2Zmc2V0LmxlZnQgKyAicHgiLAoJCQkJdG9wOiB0aGlzLmVsZW1lbnRPZmZzZXQudG9wICsgInB4IiwKCQkJCXpJbmRleDogKytvLnpJbmRleCAvL1RPRE86IERvbid0IG1vZGlmeSBvcHRpb24KCQkJfSApOwoKCQkJdGhpcy5oZWxwZXIKCQkJCS5hcHBlbmRUbyggImJvZHkiICkKCQkJCS5kaXNhYmxlU2VsZWN0aW9uKCk7CgoJCX0gZWxzZSB7CgkJCXRoaXMuaGVscGVyID0gdGhpcy5lbGVtZW50OwoJCX0KCgl9LAoKCV9jaGFuZ2U6IHsKCQllOiBmdW5jdGlvbiggZXZlbnQsIGR4ICkgewoJCQlyZXR1cm4geyB3aWR0aDogdGhpcy5vcmlnaW5hbFNpemUud2lkdGggKyBkeCB9OwoJCX0sCgkJdzogZnVuY3Rpb24oIGV2ZW50LCBkeCApIHsKCQkJdmFyIGNzID0gdGhpcy5vcmlnaW5hbFNpemUsIHNwID0gdGhpcy5vcmlnaW5hbFBvc2l0aW9uOwoJCQlyZXR1cm4geyBsZWZ0OiBzcC5sZWZ0ICsgZHgsIHdpZHRoOiBjcy53aWR0aCAtIGR4IH07CgkJfSwKCQluOiBmdW5jdGlvbiggZXZlbnQsIGR4LCBkeSApIHsKCQkJdmFyIGNzID0gdGhpcy5vcmlnaW5hbFNpemUsIHNwID0gdGhpcy5vcmlnaW5hbFBvc2l0aW9uOwoJCQlyZXR1cm4geyB0b3A6IHNwLnRvcCArIGR5LCBoZWlnaHQ6IGNzLmhlaWdodCAtIGR5IH07CgkJfSwKCQlzOiBmdW5jdGlvbiggZXZlbnQsIGR4LCBkeSApIHsKCQkJcmV0dXJuIHsgaGVpZ2h0OiB0aGlzLm9yaWdpbmFsU2l6ZS5oZWlnaHQgKyBkeSB9OwoJCX0sCgkJc2U6IGZ1bmN0aW9uKCBldmVudCwgZHgsIGR5ICkgewoJCQlyZXR1cm4gJC5leHRlbmQoIHRoaXMuX2NoYW5nZS5zLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKSwKCQkJCXRoaXMuX2NoYW5nZS5lLmFwcGx5KCB0aGlzLCBbIGV2ZW50LCBkeCwgZHkgXSApICk7CgkJfSwKCQlzdzogZnVuY3Rpb24oIGV2ZW50LCBkeCwgZHkgKSB7CgkJCXJldHVybiAkLmV4dGVuZCggdGhpcy5fY2hhbmdlLnMuYXBwbHkoIHRoaXMsIGFyZ3VtZW50cyApLAoJCQkJdGhpcy5fY2hhbmdlLncuYXBwbHkoIHRoaXMsIFsgZXZlbnQsIGR4LCBkeSBdICkgKTsKCQl9LAoJCW5lOiBmdW5jdGlvbiggZXZlbnQsIGR4LCBkeSApIHsKCQkJcmV0dXJuICQuZXh0ZW5kKCB0aGlzLl9jaGFuZ2Uubi5hcHBseSggdGhpcywgYXJndW1lbnRzICksCgkJCQl0aGlzLl9jaGFuZ2UuZS5hcHBseSggdGhpcywgWyBldmVudCwgZHgsIGR5IF0gKSApOwoJCX0sCgkJbnc6IGZ1bmN0aW9uKCBldmVudCwgZHgsIGR5ICkgewoJCQlyZXR1cm4gJC5leHRlbmQoIHRoaXMuX2NoYW5nZS5uLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKSwKCQkJCXRoaXMuX2NoYW5nZS53LmFwcGx5KCB0aGlzLCBbIGV2ZW50LCBkeCwgZHkgXSApICk7CgkJfQoJfSwKCglfcHJvcGFnYXRlOiBmdW5jdGlvbiggbiwgZXZlbnQgKSB7CgkJJC51aS5wbHVnaW4uY2FsbCggdGhpcywgbiwgWyBldmVudCwgdGhpcy51aSgpIF0gKTsKCQkoIG4gIT09ICJyZXNpemUiICYmIHRoaXMuX3RyaWdnZXIoIG4sIGV2ZW50LCB0aGlzLnVpKCkgKSApOwoJfSwKCglwbHVnaW5zOiB7fSwKCgl1aTogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHsKCQkJb3JpZ2luYWxFbGVtZW50OiB0aGlzLm9yaWdpbmFsRWxlbWVudCwKCQkJZWxlbWVudDogdGhpcy5lbGVtZW50LAoJCQloZWxwZXI6IHRoaXMuaGVscGVyLAoJCQlwb3NpdGlvbjogdGhpcy5wb3NpdGlvbiwKCQkJc2l6ZTogdGhpcy5zaXplLAoJCQlvcmlnaW5hbFNpemU6IHRoaXMub3JpZ2luYWxTaXplLAoJCQlvcmlnaW5hbFBvc2l0aW9uOiB0aGlzLm9yaWdpbmFsUG9zaXRpb24KCQl9OwoJfQoKfSApOwoKLyoKICogUmVzaXphYmxlIEV4dGVuc2lvbnMKICovCgokLnVpLnBsdWdpbi5hZGQoICJyZXNpemFibGUiLCAiYW5pbWF0ZSIsIHsKCglzdG9wOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdmFyIHRoYXQgPSAkKCB0aGlzICkucmVzaXphYmxlKCAiaW5zdGFuY2UiICksCgkJCW8gPSB0aGF0Lm9wdGlvbnMsCgkJCXByID0gdGhhdC5fcHJvcG9ydGlvbmFsbHlSZXNpemVFbGVtZW50cywKCQkJaXN0YSA9IHByLmxlbmd0aCAmJiAoIC90ZXh0YXJlYS9pICkudGVzdCggcHJbIDAgXS5ub2RlTmFtZSApLAoJCQlzb2Zmc2V0aCA9IGlzdGEgJiYgdGhhdC5faGFzU2Nyb2xsKCBwclsgMCBdLCAibGVmdCIgKSA/IDAgOiB0aGF0LnNpemVEaWZmLmhlaWdodCwKCQkJc29mZnNldHcgPSBpc3RhID8gMCA6IHRoYXQuc2l6ZURpZmYud2lkdGgsCgkJCXN0eWxlID0gewoJCQkJd2lkdGg6ICggdGhhdC5zaXplLndpZHRoIC0gc29mZnNldHcgKSwKCQkJCWhlaWdodDogKCB0aGF0LnNpemUuaGVpZ2h0IC0gc29mZnNldGggKQoJCQl9LAoJCQlsZWZ0ID0gKCBwYXJzZUZsb2F0KCB0aGF0LmVsZW1lbnQuY3NzKCAibGVmdCIgKSApICsKCQkJCSggdGhhdC5wb3NpdGlvbi5sZWZ0IC0gdGhhdC5vcmlnaW5hbFBvc2l0aW9uLmxlZnQgKSApIHx8IG51bGwsCgkJCXRvcCA9ICggcGFyc2VGbG9hdCggdGhhdC5lbGVtZW50LmNzcyggInRvcCIgKSApICsKCQkJCSggdGhhdC5wb3NpdGlvbi50b3AgLSB0aGF0Lm9yaWdpbmFsUG9zaXRpb24udG9wICkgKSB8fCBudWxsOwoKCQl0aGF0LmVsZW1lbnQuYW5pbWF0ZSgKCQkJJC5leHRlbmQoIHN0eWxlLCB0b3AgJiYgbGVmdCA/IHsgdG9wOiB0b3AsIGxlZnQ6IGxlZnQgfSA6IHt9ICksIHsKCQkJCWR1cmF0aW9uOiBvLmFuaW1hdGVEdXJhdGlvbiwKCQkJCWVhc2luZzogby5hbmltYXRlRWFzaW5nLAoJCQkJc3RlcDogZnVuY3Rpb24oKSB7CgoJCQkJCXZhciBkYXRhID0gewoJCQkJCQl3aWR0aDogcGFyc2VGbG9hdCggdGhhdC5lbGVtZW50LmNzcyggIndpZHRoIiApICksCgkJCQkJCWhlaWdodDogcGFyc2VGbG9hdCggdGhhdC5lbGVtZW50LmNzcyggImhlaWdodCIgKSApLAoJCQkJCQl0b3A6IHBhcnNlRmxvYXQoIHRoYXQuZWxlbWVudC5jc3MoICJ0b3AiICkgKSwKCQkJCQkJbGVmdDogcGFyc2VGbG9hdCggdGhhdC5lbGVtZW50LmNzcyggImxlZnQiICkgKQoJCQkJCX07CgoJCQkJCWlmICggcHIgJiYgcHIubGVuZ3RoICkgewoJCQkJCQkkKCBwclsgMCBdICkuY3NzKCB7IHdpZHRoOiBkYXRhLndpZHRoLCBoZWlnaHQ6IGRhdGEuaGVpZ2h0IH0gKTsKCQkJCQl9CgoJCQkJCS8vIFByb3BhZ2F0aW5nIHJlc2l6ZSwgYW5kIHVwZGF0aW5nIHZhbHVlcyBmb3IgZWFjaCBhbmltYXRpb24gc3RlcAoJCQkJCXRoYXQuX3VwZGF0ZUNhY2hlKCBkYXRhICk7CgkJCQkJdGhhdC5fcHJvcGFnYXRlKCAicmVzaXplIiwgZXZlbnQgKTsKCgkJCQl9CgkJCX0KCQkpOwoJfQoKfSApOwoKJC51aS5wbHVnaW4uYWRkKCAicmVzaXphYmxlIiwgImNvbnRhaW5tZW50IiwgewoKCXN0YXJ0OiBmdW5jdGlvbigpIHsKCQl2YXIgZWxlbWVudCwgcCwgY28sIGNoLCBjdywgd2lkdGgsIGhlaWdodCwKCQkJdGhhdCA9ICQoIHRoaXMgKS5yZXNpemFibGUoICJpbnN0YW5jZSIgKSwKCQkJbyA9IHRoYXQub3B0aW9ucywKCQkJZWwgPSB0aGF0LmVsZW1lbnQsCgkJCW9jID0gby5jb250YWlubWVudCwKCQkJY2UgPSAoIG9jIGluc3RhbmNlb2YgJCApID8KCQkJCW9jLmdldCggMCApIDoKCQkJCSggL3BhcmVudC8udGVzdCggb2MgKSApID8gZWwucGFyZW50KCkuZ2V0KCAwICkgOiBvYzsKCgkJaWYgKCAhY2UgKSB7CgkJCXJldHVybjsKCQl9CgoJCXRoYXQuY29udGFpbmVyRWxlbWVudCA9ICQoIGNlICk7CgoJCWlmICggL2RvY3VtZW50Ly50ZXN0KCBvYyApIHx8IG9jID09PSBkb2N1bWVudCApIHsKCQkJdGhhdC5jb250YWluZXJPZmZzZXQgPSB7CgkJCQlsZWZ0OiAwLAoJCQkJdG9wOiAwCgkJCX07CgkJCXRoYXQuY29udGFpbmVyUG9zaXRpb24gPSB7CgkJCQlsZWZ0OiAwLAoJCQkJdG9wOiAwCgkJCX07CgoJCQl0aGF0LnBhcmVudERhdGEgPSB7CgkJCQllbGVtZW50OiAkKCBkb2N1bWVudCApLAoJCQkJbGVmdDogMCwKCQkJCXRvcDogMCwKCQkJCXdpZHRoOiAkKCBkb2N1bWVudCApLndpZHRoKCksCgkJCQloZWlnaHQ6ICQoIGRvY3VtZW50ICkuaGVpZ2h0KCkgfHwgZG9jdW1lbnQuYm9keS5wYXJlbnROb2RlLnNjcm9sbEhlaWdodAoJCQl9OwoJCX0gZWxzZSB7CgkJCWVsZW1lbnQgPSAkKCBjZSApOwoJCQlwID0gW107CgkJCSQoIFsgIlRvcCIsICJSaWdodCIsICJMZWZ0IiwgIkJvdHRvbSIgXSApLmVhY2goIGZ1bmN0aW9uKCBpLCBuYW1lICkgewoJCQkJcFsgaSBdID0gdGhhdC5fbnVtKCBlbGVtZW50LmNzcyggInBhZGRpbmciICsgbmFtZSApICk7CgkJCX0gKTsKCgkJCXRoYXQuY29udGFpbmVyT2Zmc2V0ID0gZWxlbWVudC5vZmZzZXQoKTsKCQkJdGhhdC5jb250YWluZXJQb3NpdGlvbiA9IGVsZW1lbnQucG9zaXRpb24oKTsKCQkJdGhhdC5jb250YWluZXJTaXplID0gewoJCQkJaGVpZ2h0OiAoIGVsZW1lbnQuaW5uZXJIZWlnaHQoKSAtIHBbIDMgXSApLAoJCQkJd2lkdGg6ICggZWxlbWVudC5pbm5lcldpZHRoKCkgLSBwWyAxIF0gKQoJCQl9OwoKCQkJY28gPSB0aGF0LmNvbnRhaW5lck9mZnNldDsKCQkJY2ggPSB0aGF0LmNvbnRhaW5lclNpemUuaGVpZ2h0OwoJCQljdyA9IHRoYXQuY29udGFpbmVyU2l6ZS53aWR0aDsKCQkJd2lkdGggPSAoIHRoYXQuX2hhc1Njcm9sbCAoIGNlLCAibGVmdCIgKSA/IGNlLnNjcm9sbFdpZHRoIDogY3cgKTsKCQkJaGVpZ2h0ID0gKCB0aGF0Ll9oYXNTY3JvbGwgKCBjZSApID8gY2Uuc2Nyb2xsSGVpZ2h0IDogY2ggKSA7CgoJCQl0aGF0LnBhcmVudERhdGEgPSB7CgkJCQllbGVtZW50OiBjZSwKCQkJCWxlZnQ6IGNvLmxlZnQsCgkJCQl0b3A6IGNvLnRvcCwKCQkJCXdpZHRoOiB3aWR0aCwKCQkJCWhlaWdodDogaGVpZ2h0CgkJCX07CgkJfQoJfSwKCglyZXNpemU6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgd29zZXQsIGhvc2V0LCBpc1BhcmVudCwgaXNPZmZzZXRSZWxhdGl2ZSwKCQkJdGhhdCA9ICQoIHRoaXMgKS5yZXNpemFibGUoICJpbnN0YW5jZSIgKSwKCQkJbyA9IHRoYXQub3B0aW9ucywKCQkJY28gPSB0aGF0LmNvbnRhaW5lck9mZnNldCwKCQkJY3AgPSB0aGF0LnBvc2l0aW9uLAoJCQlwUmF0aW8gPSB0aGF0Ll9hc3BlY3RSYXRpbyB8fCBldmVudC5zaGlmdEtleSwKCQkJY29wID0gewoJCQkJdG9wOiAwLAoJCQkJbGVmdDogMAoJCQl9LAoJCQljZSA9IHRoYXQuY29udGFpbmVyRWxlbWVudCwKCQkJY29udGludWVSZXNpemUgPSB0cnVlOwoKCQlpZiAoIGNlWyAwIF0gIT09IGRvY3VtZW50ICYmICggL3N0YXRpYy8gKS50ZXN0KCBjZS5jc3MoICJwb3NpdGlvbiIgKSApICkgewoJCQljb3AgPSBjbzsKCQl9CgoJCWlmICggY3AubGVmdCA8ICggdGhhdC5faGVscGVyID8gY28ubGVmdCA6IDAgKSApIHsKCQkJdGhhdC5zaXplLndpZHRoID0gdGhhdC5zaXplLndpZHRoICsKCQkJCSggdGhhdC5faGVscGVyID8KCQkJCQkoIHRoYXQucG9zaXRpb24ubGVmdCAtIGNvLmxlZnQgKSA6CgkJCQkJKCB0aGF0LnBvc2l0aW9uLmxlZnQgLSBjb3AubGVmdCApICk7CgoJCQlpZiAoIHBSYXRpbyApIHsKCQkJCXRoYXQuc2l6ZS5oZWlnaHQgPSB0aGF0LnNpemUud2lkdGggLyB0aGF0LmFzcGVjdFJhdGlvOwoJCQkJY29udGludWVSZXNpemUgPSBmYWxzZTsKCQkJfQoJCQl0aGF0LnBvc2l0aW9uLmxlZnQgPSBvLmhlbHBlciA/IGNvLmxlZnQgOiAwOwoJCX0KCgkJaWYgKCBjcC50b3AgPCAoIHRoYXQuX2hlbHBlciA/IGNvLnRvcCA6IDAgKSApIHsKCQkJdGhhdC5zaXplLmhlaWdodCA9IHRoYXQuc2l6ZS5oZWlnaHQgKwoJCQkJKCB0aGF0Ll9oZWxwZXIgPwoJCQkJCSggdGhhdC5wb3NpdGlvbi50b3AgLSBjby50b3AgKSA6CgkJCQkJdGhhdC5wb3NpdGlvbi50b3AgKTsKCgkJCWlmICggcFJhdGlvICkgewoJCQkJdGhhdC5zaXplLndpZHRoID0gdGhhdC5zaXplLmhlaWdodCAqIHRoYXQuYXNwZWN0UmF0aW87CgkJCQljb250aW51ZVJlc2l6ZSA9IGZhbHNlOwoJCQl9CgkJCXRoYXQucG9zaXRpb24udG9wID0gdGhhdC5faGVscGVyID8gY28udG9wIDogMDsKCQl9CgoJCWlzUGFyZW50ID0gdGhhdC5jb250YWluZXJFbGVtZW50LmdldCggMCApID09PSB0aGF0LmVsZW1lbnQucGFyZW50KCkuZ2V0KCAwICk7CgkJaXNPZmZzZXRSZWxhdGl2ZSA9IC9yZWxhdGl2ZXxhYnNvbHV0ZS8udGVzdCggdGhhdC5jb250YWluZXJFbGVtZW50LmNzcyggInBvc2l0aW9uIiApICk7CgoJCWlmICggaXNQYXJlbnQgJiYgaXNPZmZzZXRSZWxhdGl2ZSApIHsKCQkJdGhhdC5vZmZzZXQubGVmdCA9IHRoYXQucGFyZW50RGF0YS5sZWZ0ICsgdGhhdC5wb3NpdGlvbi5sZWZ0OwoJCQl0aGF0Lm9mZnNldC50b3AgPSB0aGF0LnBhcmVudERhdGEudG9wICsgdGhhdC5wb3NpdGlvbi50b3A7CgkJfSBlbHNlIHsKCQkJdGhhdC5vZmZzZXQubGVmdCA9IHRoYXQuZWxlbWVudC5vZmZzZXQoKS5sZWZ0OwoJCQl0aGF0Lm9mZnNldC50b3AgPSB0aGF0LmVsZW1lbnQub2Zmc2V0KCkudG9wOwoJCX0KCgkJd29zZXQgPSBNYXRoLmFicyggdGhhdC5zaXplRGlmZi53aWR0aCArCgkJCSggdGhhdC5faGVscGVyID8KCQkJCXRoYXQub2Zmc2V0LmxlZnQgLSBjb3AubGVmdCA6CgkJCQkoIHRoYXQub2Zmc2V0LmxlZnQgLSBjby5sZWZ0ICkgKSApOwoKCQlob3NldCA9IE1hdGguYWJzKCB0aGF0LnNpemVEaWZmLmhlaWdodCArCgkJCSggdGhhdC5faGVscGVyID8KCQkJCXRoYXQub2Zmc2V0LnRvcCAtIGNvcC50b3AgOgoJCQkJKCB0aGF0Lm9mZnNldC50b3AgLSBjby50b3AgKSApICk7CgoJCWlmICggd29zZXQgKyB0aGF0LnNpemUud2lkdGggPj0gdGhhdC5wYXJlbnREYXRhLndpZHRoICkgewoJCQl0aGF0LnNpemUud2lkdGggPSB0aGF0LnBhcmVudERhdGEud2lkdGggLSB3b3NldDsKCQkJaWYgKCBwUmF0aW8gKSB7CgkJCQl0aGF0LnNpemUuaGVpZ2h0ID0gdGhhdC5zaXplLndpZHRoIC8gdGhhdC5hc3BlY3RSYXRpbzsKCQkJCWNvbnRpbnVlUmVzaXplID0gZmFsc2U7CgkJCX0KCQl9CgoJCWlmICggaG9zZXQgKyB0aGF0LnNpemUuaGVpZ2h0ID49IHRoYXQucGFyZW50RGF0YS5oZWlnaHQgKSB7CgkJCXRoYXQuc2l6ZS5oZWlnaHQgPSB0aGF0LnBhcmVudERhdGEuaGVpZ2h0IC0gaG9zZXQ7CgkJCWlmICggcFJhdGlvICkgewoJCQkJdGhhdC5zaXplLndpZHRoID0gdGhhdC5zaXplLmhlaWdodCAqIHRoYXQuYXNwZWN0UmF0aW87CgkJCQljb250aW51ZVJlc2l6ZSA9IGZhbHNlOwoJCQl9CgkJfQoKCQlpZiAoICFjb250aW51ZVJlc2l6ZSApIHsKCQkJdGhhdC5wb3NpdGlvbi5sZWZ0ID0gdGhhdC5wcmV2UG9zaXRpb24ubGVmdDsKCQkJdGhhdC5wb3NpdGlvbi50b3AgPSB0aGF0LnByZXZQb3NpdGlvbi50b3A7CgkJCXRoYXQuc2l6ZS53aWR0aCA9IHRoYXQucHJldlNpemUud2lkdGg7CgkJCXRoYXQuc2l6ZS5oZWlnaHQgPSB0aGF0LnByZXZTaXplLmhlaWdodDsKCQl9Cgl9LAoKCXN0b3A6IGZ1bmN0aW9uKCkgewoJCXZhciB0aGF0ID0gJCggdGhpcyApLnJlc2l6YWJsZSggImluc3RhbmNlIiApLAoJCQlvID0gdGhhdC5vcHRpb25zLAoJCQljbyA9IHRoYXQuY29udGFpbmVyT2Zmc2V0LAoJCQljb3AgPSB0aGF0LmNvbnRhaW5lclBvc2l0aW9uLAoJCQljZSA9IHRoYXQuY29udGFpbmVyRWxlbWVudCwKCQkJaGVscGVyID0gJCggdGhhdC5oZWxwZXIgKSwKCQkJaG8gPSBoZWxwZXIub2Zmc2V0KCksCgkJCXcgPSBoZWxwZXIub3V0ZXJXaWR0aCgpIC0gdGhhdC5zaXplRGlmZi53aWR0aCwKCQkJaCA9IGhlbHBlci5vdXRlckhlaWdodCgpIC0gdGhhdC5zaXplRGlmZi5oZWlnaHQ7CgoJCWlmICggdGhhdC5faGVscGVyICYmICFvLmFuaW1hdGUgJiYgKCAvcmVsYXRpdmUvICkudGVzdCggY2UuY3NzKCAicG9zaXRpb24iICkgKSApIHsKCQkJJCggdGhpcyApLmNzcyggewoJCQkJbGVmdDogaG8ubGVmdCAtIGNvcC5sZWZ0IC0gY28ubGVmdCwKCQkJCXdpZHRoOiB3LAoJCQkJaGVpZ2h0OiBoCgkJCX0gKTsKCQl9CgoJCWlmICggdGhhdC5faGVscGVyICYmICFvLmFuaW1hdGUgJiYgKCAvc3RhdGljLyApLnRlc3QoIGNlLmNzcyggInBvc2l0aW9uIiApICkgKSB7CgkJCSQoIHRoaXMgKS5jc3MoIHsKCQkJCWxlZnQ6IGhvLmxlZnQgLSBjb3AubGVmdCAtIGNvLmxlZnQsCgkJCQl3aWR0aDogdywKCQkJCWhlaWdodDogaAoJCQl9ICk7CgkJfQoJfQp9ICk7CgokLnVpLnBsdWdpbi5hZGQoICJyZXNpemFibGUiLCAiYWxzb1Jlc2l6ZSIsIHsKCglzdGFydDogZnVuY3Rpb24oKSB7CgkJdmFyIHRoYXQgPSAkKCB0aGlzICkucmVzaXphYmxlKCAiaW5zdGFuY2UiICksCgkJCW8gPSB0aGF0Lm9wdGlvbnM7CgoJCSQoIG8uYWxzb1Jlc2l6ZSApLmVhY2goIGZ1bmN0aW9uKCkgewoJCQl2YXIgZWwgPSAkKCB0aGlzICk7CgkJCWVsLmRhdGEoICJ1aS1yZXNpemFibGUtYWxzb3Jlc2l6ZSIsIHsKCQkJCXdpZHRoOiBwYXJzZUZsb2F0KCBlbC53aWR0aCgpICksIGhlaWdodDogcGFyc2VGbG9hdCggZWwuaGVpZ2h0KCkgKSwKCQkJCWxlZnQ6IHBhcnNlRmxvYXQoIGVsLmNzcyggImxlZnQiICkgKSwgdG9wOiBwYXJzZUZsb2F0KCBlbC5jc3MoICJ0b3AiICkgKQoJCQl9ICk7CgkJfSApOwoJfSwKCglyZXNpemU6IGZ1bmN0aW9uKCBldmVudCwgdWkgKSB7CgkJdmFyIHRoYXQgPSAkKCB0aGlzICkucmVzaXphYmxlKCAiaW5zdGFuY2UiICksCgkJCW8gPSB0aGF0Lm9wdGlvbnMsCgkJCW9zID0gdGhhdC5vcmlnaW5hbFNpemUsCgkJCW9wID0gdGhhdC5vcmlnaW5hbFBvc2l0aW9uLAoJCQlkZWx0YSA9IHsKCQkJCWhlaWdodDogKCB0aGF0LnNpemUuaGVpZ2h0IC0gb3MuaGVpZ2h0ICkgfHwgMCwKCQkJCXdpZHRoOiAoIHRoYXQuc2l6ZS53aWR0aCAtIG9zLndpZHRoICkgfHwgMCwKCQkJCXRvcDogKCB0aGF0LnBvc2l0aW9uLnRvcCAtIG9wLnRvcCApIHx8IDAsCgkJCQlsZWZ0OiAoIHRoYXQucG9zaXRpb24ubGVmdCAtIG9wLmxlZnQgKSB8fCAwCgkJCX07CgoJCQkkKCBvLmFsc29SZXNpemUgKS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCXZhciBlbCA9ICQoIHRoaXMgKSwgc3RhcnQgPSAkKCB0aGlzICkuZGF0YSggInVpLXJlc2l6YWJsZS1hbHNvcmVzaXplIiApLCBzdHlsZSA9IHt9LAoJCQkJCWNzcyA9IGVsLnBhcmVudHMoIHVpLm9yaWdpbmFsRWxlbWVudFsgMCBdICkubGVuZ3RoID8KCQkJCQkJCVsgIndpZHRoIiwgImhlaWdodCIgXSA6CgkJCQkJCQlbICJ3aWR0aCIsICJoZWlnaHQiLCAidG9wIiwgImxlZnQiIF07CgoJCQkJJC5lYWNoKCBjc3MsIGZ1bmN0aW9uKCBpLCBwcm9wICkgewoJCQkJCXZhciBzdW0gPSAoIHN0YXJ0WyBwcm9wIF0gfHwgMCApICsgKCBkZWx0YVsgcHJvcCBdIHx8IDAgKTsKCQkJCQlpZiAoIHN1bSAmJiBzdW0gPj0gMCApIHsKCQkJCQkJc3R5bGVbIHByb3AgXSA9IHN1bSB8fCBudWxsOwoJCQkJCX0KCQkJCX0gKTsKCgkJCQllbC5jc3MoIHN0eWxlICk7CgkJCX0gKTsKCX0sCgoJc3RvcDogZnVuY3Rpb24oKSB7CgkJJCggdGhpcyApLnJlbW92ZURhdGEoICJ1aS1yZXNpemFibGUtYWxzb3Jlc2l6ZSIgKTsKCX0KfSApOwoKJC51aS5wbHVnaW4uYWRkKCAicmVzaXphYmxlIiwgImdob3N0IiwgewoKCXN0YXJ0OiBmdW5jdGlvbigpIHsKCgkJdmFyIHRoYXQgPSAkKCB0aGlzICkucmVzaXphYmxlKCAiaW5zdGFuY2UiICksIGNzID0gdGhhdC5zaXplOwoKCQl0aGF0Lmdob3N0ID0gdGhhdC5vcmlnaW5hbEVsZW1lbnQuY2xvbmUoKTsKCQl0aGF0Lmdob3N0LmNzcyggewoJCQlvcGFjaXR5OiAwLjI1LAoJCQlkaXNwbGF5OiAiYmxvY2siLAoJCQlwb3NpdGlvbjogInJlbGF0aXZlIiwKCQkJaGVpZ2h0OiBjcy5oZWlnaHQsCgkJCXdpZHRoOiBjcy53aWR0aCwKCQkJbWFyZ2luOiAwLAoJCQlsZWZ0OiAwLAoJCQl0b3A6IDAKCQl9ICk7CgoJCXRoYXQuX2FkZENsYXNzKCB0aGF0Lmdob3N0LCAidWktcmVzaXphYmxlLWdob3N0IiApOwoKCQkvLyBERVBSRUNBVEVECgkJLy8gVE9ETzogcmVtb3ZlIGFmdGVyIDEuMTIKCQlpZiAoICQudWlCYWNrQ29tcGF0ICE9PSBmYWxzZSAmJiB0eXBlb2YgdGhhdC5vcHRpb25zLmdob3N0ID09PSAic3RyaW5nIiApIHsKCgkJCS8vIEdob3N0IG9wdGlvbgoJCQl0aGF0Lmdob3N0LmFkZENsYXNzKCB0aGlzLm9wdGlvbnMuZ2hvc3QgKTsKCQl9CgoJCXRoYXQuZ2hvc3QuYXBwZW5kVG8oIHRoYXQuaGVscGVyICk7CgoJfSwKCglyZXNpemU6IGZ1bmN0aW9uKCkgewoJCXZhciB0aGF0ID0gJCggdGhpcyApLnJlc2l6YWJsZSggImluc3RhbmNlIiApOwoJCWlmICggdGhhdC5naG9zdCApIHsKCQkJdGhhdC5naG9zdC5jc3MoIHsKCQkJCXBvc2l0aW9uOiAicmVsYXRpdmUiLAoJCQkJaGVpZ2h0OiB0aGF0LnNpemUuaGVpZ2h0LAoJCQkJd2lkdGg6IHRoYXQuc2l6ZS53aWR0aAoJCQl9ICk7CgkJfQoJfSwKCglzdG9wOiBmdW5jdGlvbigpIHsKCQl2YXIgdGhhdCA9ICQoIHRoaXMgKS5yZXNpemFibGUoICJpbnN0YW5jZSIgKTsKCQlpZiAoIHRoYXQuZ2hvc3QgJiYgdGhhdC5oZWxwZXIgKSB7CgkJCXRoYXQuaGVscGVyLmdldCggMCApLnJlbW92ZUNoaWxkKCB0aGF0Lmdob3N0LmdldCggMCApICk7CgkJfQoJfQoKfSApOwoKJC51aS5wbHVnaW4uYWRkKCAicmVzaXphYmxlIiwgImdyaWQiLCB7CgoJcmVzaXplOiBmdW5jdGlvbigpIHsKCQl2YXIgb3V0ZXJEaW1lbnNpb25zLAoJCQl0aGF0ID0gJCggdGhpcyApLnJlc2l6YWJsZSggImluc3RhbmNlIiApLAoJCQlvID0gdGhhdC5vcHRpb25zLAoJCQljcyA9IHRoYXQuc2l6ZSwKCQkJb3MgPSB0aGF0Lm9yaWdpbmFsU2l6ZSwKCQkJb3AgPSB0aGF0Lm9yaWdpbmFsUG9zaXRpb24sCgkJCWEgPSB0aGF0LmF4aXMsCgkJCWdyaWQgPSB0eXBlb2Ygby5ncmlkID09PSAibnVtYmVyIiA/IFsgby5ncmlkLCBvLmdyaWQgXSA6IG8uZ3JpZCwKCQkJZ3JpZFggPSAoIGdyaWRbIDAgXSB8fCAxICksCgkJCWdyaWRZID0gKCBncmlkWyAxIF0gfHwgMSApLAoJCQlveCA9IE1hdGgucm91bmQoICggY3Mud2lkdGggLSBvcy53aWR0aCApIC8gZ3JpZFggKSAqIGdyaWRYLAoJCQlveSA9IE1hdGgucm91bmQoICggY3MuaGVpZ2h0IC0gb3MuaGVpZ2h0ICkgLyBncmlkWSApICogZ3JpZFksCgkJCW5ld1dpZHRoID0gb3Mud2lkdGggKyBveCwKCQkJbmV3SGVpZ2h0ID0gb3MuaGVpZ2h0ICsgb3ksCgkJCWlzTWF4V2lkdGggPSBvLm1heFdpZHRoICYmICggby5tYXhXaWR0aCA8IG5ld1dpZHRoICksCgkJCWlzTWF4SGVpZ2h0ID0gby5tYXhIZWlnaHQgJiYgKCBvLm1heEhlaWdodCA8IG5ld0hlaWdodCApLAoJCQlpc01pbldpZHRoID0gby5taW5XaWR0aCAmJiAoIG8ubWluV2lkdGggPiBuZXdXaWR0aCApLAoJCQlpc01pbkhlaWdodCA9IG8ubWluSGVpZ2h0ICYmICggby5taW5IZWlnaHQgPiBuZXdIZWlnaHQgKTsKCgkJby5ncmlkID0gZ3JpZDsKCgkJaWYgKCBpc01pbldpZHRoICkgewoJCQluZXdXaWR0aCArPSBncmlkWDsKCQl9CgkJaWYgKCBpc01pbkhlaWdodCApIHsKCQkJbmV3SGVpZ2h0ICs9IGdyaWRZOwoJCX0KCQlpZiAoIGlzTWF4V2lkdGggKSB7CgkJCW5ld1dpZHRoIC09IGdyaWRYOwoJCX0KCQlpZiAoIGlzTWF4SGVpZ2h0ICkgewoJCQluZXdIZWlnaHQgLT0gZ3JpZFk7CgkJfQoKCQlpZiAoIC9eKHNlfHN8ZSkkLy50ZXN0KCBhICkgKSB7CgkJCXRoYXQuc2l6ZS53aWR0aCA9IG5ld1dpZHRoOwoJCQl0aGF0LnNpemUuaGVpZ2h0ID0gbmV3SGVpZ2h0OwoJCX0gZWxzZSBpZiAoIC9eKG5lKSQvLnRlc3QoIGEgKSApIHsKCQkJdGhhdC5zaXplLndpZHRoID0gbmV3V2lkdGg7CgkJCXRoYXQuc2l6ZS5oZWlnaHQgPSBuZXdIZWlnaHQ7CgkJCXRoYXQucG9zaXRpb24udG9wID0gb3AudG9wIC0gb3k7CgkJfSBlbHNlIGlmICggL14oc3cpJC8udGVzdCggYSApICkgewoJCQl0aGF0LnNpemUud2lkdGggPSBuZXdXaWR0aDsKCQkJdGhhdC5zaXplLmhlaWdodCA9IG5ld0hlaWdodDsKCQkJdGhhdC5wb3NpdGlvbi5sZWZ0ID0gb3AubGVmdCAtIG94OwoJCX0gZWxzZSB7CgkJCWlmICggbmV3SGVpZ2h0IC0gZ3JpZFkgPD0gMCB8fCBuZXdXaWR0aCAtIGdyaWRYIDw9IDAgKSB7CgkJCQlvdXRlckRpbWVuc2lvbnMgPSB0aGF0Ll9nZXRQYWRkaW5nUGx1c0JvcmRlckRpbWVuc2lvbnMoIHRoaXMgKTsKCQkJfQoKCQkJaWYgKCBuZXdIZWlnaHQgLSBncmlkWSA+IDAgKSB7CgkJCQl0aGF0LnNpemUuaGVpZ2h0ID0gbmV3SGVpZ2h0OwoJCQkJdGhhdC5wb3NpdGlvbi50b3AgPSBvcC50b3AgLSBveTsKCQkJfSBlbHNlIHsKCQkJCW5ld0hlaWdodCA9IGdyaWRZIC0gb3V0ZXJEaW1lbnNpb25zLmhlaWdodDsKCQkJCXRoYXQuc2l6ZS5oZWlnaHQgPSBuZXdIZWlnaHQ7CgkJCQl0aGF0LnBvc2l0aW9uLnRvcCA9IG9wLnRvcCArIG9zLmhlaWdodCAtIG5ld0hlaWdodDsKCQkJfQoJCQlpZiAoIG5ld1dpZHRoIC0gZ3JpZFggPiAwICkgewoJCQkJdGhhdC5zaXplLndpZHRoID0gbmV3V2lkdGg7CgkJCQl0aGF0LnBvc2l0aW9uLmxlZnQgPSBvcC5sZWZ0IC0gb3g7CgkJCX0gZWxzZSB7CgkJCQluZXdXaWR0aCA9IGdyaWRYIC0gb3V0ZXJEaW1lbnNpb25zLndpZHRoOwoJCQkJdGhhdC5zaXplLndpZHRoID0gbmV3V2lkdGg7CgkJCQl0aGF0LnBvc2l0aW9uLmxlZnQgPSBvcC5sZWZ0ICsgb3Mud2lkdGggLSBuZXdXaWR0aDsKCQkJfQoJCX0KCX0KCn0gKTsKCnZhciB3aWRnZXRzUmVzaXphYmxlID0gJC51aS5yZXNpemFibGU7CgoKLyohCiAqIGpRdWVyeSBVSSBTZWxlY3RhYmxlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogU2VsZWN0YWJsZQovLz4+Z3JvdXA6IEludGVyYWN0aW9ucwovLz4+ZGVzY3JpcHRpb246IEFsbG93cyBncm91cHMgb2YgZWxlbWVudHMgdG8gYmUgc2VsZWN0ZWQgd2l0aCB0aGUgbW91c2UuCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9zZWxlY3RhYmxlLwovLz4+ZGVtb3M6IGh0dHA6Ly9qcXVlcnl1aS5jb20vc2VsZWN0YWJsZS8KLy8+PmNzcy5zdHJ1Y3R1cmU6IC4uLy4uL3RoZW1lcy9iYXNlL3NlbGVjdGFibGUuY3NzCgoKCnZhciB3aWRnZXRzU2VsZWN0YWJsZSA9ICQud2lkZ2V0KCAidWkuc2VsZWN0YWJsZSIsICQudWkubW91c2UsIHsKCXZlcnNpb246ICIxLjEyLjEiLAoJb3B0aW9uczogewoJCWFwcGVuZFRvOiAiYm9keSIsCgkJYXV0b1JlZnJlc2g6IHRydWUsCgkJZGlzdGFuY2U6IDAsCgkJZmlsdGVyOiAiKiIsCgkJdG9sZXJhbmNlOiAidG91Y2giLAoKCQkvLyBDYWxsYmFja3MKCQlzZWxlY3RlZDogbnVsbCwKCQlzZWxlY3Rpbmc6IG51bGwsCgkJc3RhcnQ6IG51bGwsCgkJc3RvcDogbnVsbCwKCQl1bnNlbGVjdGVkOiBudWxsLAoJCXVuc2VsZWN0aW5nOiBudWxsCgl9LAoJX2NyZWF0ZTogZnVuY3Rpb24oKSB7CgkJdmFyIHRoYXQgPSB0aGlzOwoKCQl0aGlzLl9hZGRDbGFzcyggInVpLXNlbGVjdGFibGUiICk7CgoJCXRoaXMuZHJhZ2dlZCA9IGZhbHNlOwoKCQkvLyBDYWNoZSBzZWxlY3RlZSBjaGlsZHJlbiBiYXNlZCBvbiBmaWx0ZXIKCQl0aGlzLnJlZnJlc2ggPSBmdW5jdGlvbigpIHsKCQkJdGhhdC5lbGVtZW50UG9zID0gJCggdGhhdC5lbGVtZW50WyAwIF0gKS5vZmZzZXQoKTsKCQkJdGhhdC5zZWxlY3RlZXMgPSAkKCB0aGF0Lm9wdGlvbnMuZmlsdGVyLCB0aGF0LmVsZW1lbnRbIDAgXSApOwoJCQl0aGF0Ll9hZGRDbGFzcyggdGhhdC5zZWxlY3RlZXMsICJ1aS1zZWxlY3RlZSIgKTsKCQkJdGhhdC5zZWxlY3RlZXMuZWFjaCggZnVuY3Rpb24oKSB7CgkJCQl2YXIgJHRoaXMgPSAkKCB0aGlzICksCgkJCQkJc2VsZWN0ZWVPZmZzZXQgPSAkdGhpcy5vZmZzZXQoKSwKCQkJCQlwb3MgPSB7CgkJCQkJCWxlZnQ6IHNlbGVjdGVlT2Zmc2V0LmxlZnQgLSB0aGF0LmVsZW1lbnRQb3MubGVmdCwKCQkJCQkJdG9wOiBzZWxlY3RlZU9mZnNldC50b3AgLSB0aGF0LmVsZW1lbnRQb3MudG9wCgkJCQkJfTsKCQkJCSQuZGF0YSggdGhpcywgInNlbGVjdGFibGUtaXRlbSIsIHsKCQkJCQllbGVtZW50OiB0aGlzLAoJCQkJCSRlbGVtZW50OiAkdGhpcywKCQkJCQlsZWZ0OiBwb3MubGVmdCwKCQkJCQl0b3A6IHBvcy50b3AsCgkJCQkJcmlnaHQ6IHBvcy5sZWZ0ICsgJHRoaXMub3V0ZXJXaWR0aCgpLAoJCQkJCWJvdHRvbTogcG9zLnRvcCArICR0aGlzLm91dGVySGVpZ2h0KCksCgkJCQkJc3RhcnRzZWxlY3RlZDogZmFsc2UsCgkJCQkJc2VsZWN0ZWQ6ICR0aGlzLmhhc0NsYXNzKCAidWktc2VsZWN0ZWQiICksCgkJCQkJc2VsZWN0aW5nOiAkdGhpcy5oYXNDbGFzcyggInVpLXNlbGVjdGluZyIgKSwKCQkJCQl1bnNlbGVjdGluZzogJHRoaXMuaGFzQ2xhc3MoICJ1aS11bnNlbGVjdGluZyIgKQoJCQkJfSApOwoJCQl9ICk7CgkJfTsKCQl0aGlzLnJlZnJlc2goKTsKCgkJdGhpcy5fbW91c2VJbml0KCk7CgoJCXRoaXMuaGVscGVyID0gJCggIjxkaXY+IiApOwoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLmhlbHBlciwgInVpLXNlbGVjdGFibGUtaGVscGVyIiApOwoJfSwKCglfZGVzdHJveTogZnVuY3Rpb24oKSB7CgkJdGhpcy5zZWxlY3RlZXMucmVtb3ZlRGF0YSggInNlbGVjdGFibGUtaXRlbSIgKTsKCQl0aGlzLl9tb3VzZURlc3Ryb3koKTsKCX0sCgoJX21vdXNlU3RhcnQ6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgdGhhdCA9IHRoaXMsCgkJCW9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7CgoJCXRoaXMub3BvcyA9IFsgZXZlbnQucGFnZVgsIGV2ZW50LnBhZ2VZIF07CgkJdGhpcy5lbGVtZW50UG9zID0gJCggdGhpcy5lbGVtZW50WyAwIF0gKS5vZmZzZXQoKTsKCgkJaWYgKCB0aGlzLm9wdGlvbnMuZGlzYWJsZWQgKSB7CgkJCXJldHVybjsKCQl9CgoJCXRoaXMuc2VsZWN0ZWVzID0gJCggb3B0aW9ucy5maWx0ZXIsIHRoaXMuZWxlbWVudFsgMCBdICk7CgoJCXRoaXMuX3RyaWdnZXIoICJzdGFydCIsIGV2ZW50ICk7CgoJCSQoIG9wdGlvbnMuYXBwZW5kVG8gKS5hcHBlbmQoIHRoaXMuaGVscGVyICk7CgoJCS8vIHBvc2l0aW9uIGhlbHBlciAobGFzc28pCgkJdGhpcy5oZWxwZXIuY3NzKCB7CgkJCSJsZWZ0IjogZXZlbnQucGFnZVgsCgkJCSJ0b3AiOiBldmVudC5wYWdlWSwKCQkJIndpZHRoIjogMCwKCQkJImhlaWdodCI6IDAKCQl9ICk7CgoJCWlmICggb3B0aW9ucy5hdXRvUmVmcmVzaCApIHsKCQkJdGhpcy5yZWZyZXNoKCk7CgkJfQoKCQl0aGlzLnNlbGVjdGVlcy5maWx0ZXIoICIudWktc2VsZWN0ZWQiICkuZWFjaCggZnVuY3Rpb24oKSB7CgkJCXZhciBzZWxlY3RlZSA9ICQuZGF0YSggdGhpcywgInNlbGVjdGFibGUtaXRlbSIgKTsKCQkJc2VsZWN0ZWUuc3RhcnRzZWxlY3RlZCA9IHRydWU7CgkJCWlmICggIWV2ZW50Lm1ldGFLZXkgJiYgIWV2ZW50LmN0cmxLZXkgKSB7CgkJCQl0aGF0Ll9yZW1vdmVDbGFzcyggc2VsZWN0ZWUuJGVsZW1lbnQsICJ1aS1zZWxlY3RlZCIgKTsKCQkJCXNlbGVjdGVlLnNlbGVjdGVkID0gZmFsc2U7CgkJCQl0aGF0Ll9hZGRDbGFzcyggc2VsZWN0ZWUuJGVsZW1lbnQsICJ1aS11bnNlbGVjdGluZyIgKTsKCQkJCXNlbGVjdGVlLnVuc2VsZWN0aW5nID0gdHJ1ZTsKCgkJCQkvLyBzZWxlY3RhYmxlIFVOU0VMRUNUSU5HIGNhbGxiYWNrCgkJCQl0aGF0Ll90cmlnZ2VyKCAidW5zZWxlY3RpbmciLCBldmVudCwgewoJCQkJCXVuc2VsZWN0aW5nOiBzZWxlY3RlZS5lbGVtZW50CgkJCQl9ICk7CgkJCX0KCQl9ICk7CgoJCSQoIGV2ZW50LnRhcmdldCApLnBhcmVudHMoKS5hZGRCYWNrKCkuZWFjaCggZnVuY3Rpb24oKSB7CgkJCXZhciBkb1NlbGVjdCwKCQkJCXNlbGVjdGVlID0gJC5kYXRhKCB0aGlzLCAic2VsZWN0YWJsZS1pdGVtIiApOwoJCQlpZiAoIHNlbGVjdGVlICkgewoJCQkJZG9TZWxlY3QgPSAoICFldmVudC5tZXRhS2V5ICYmICFldmVudC5jdHJsS2V5ICkgfHwKCQkJCQkhc2VsZWN0ZWUuJGVsZW1lbnQuaGFzQ2xhc3MoICJ1aS1zZWxlY3RlZCIgKTsKCQkJCXRoYXQuX3JlbW92ZUNsYXNzKCBzZWxlY3RlZS4kZWxlbWVudCwgZG9TZWxlY3QgPyAidWktdW5zZWxlY3RpbmciIDogInVpLXNlbGVjdGVkIiApCgkJCQkJLl9hZGRDbGFzcyggc2VsZWN0ZWUuJGVsZW1lbnQsIGRvU2VsZWN0ID8gInVpLXNlbGVjdGluZyIgOiAidWktdW5zZWxlY3RpbmciICk7CgkJCQlzZWxlY3RlZS51bnNlbGVjdGluZyA9ICFkb1NlbGVjdDsKCQkJCXNlbGVjdGVlLnNlbGVjdGluZyA9IGRvU2VsZWN0OwoJCQkJc2VsZWN0ZWUuc2VsZWN0ZWQgPSBkb1NlbGVjdDsKCgkJCQkvLyBzZWxlY3RhYmxlIChVTilTRUxFQ1RJTkcgY2FsbGJhY2sKCQkJCWlmICggZG9TZWxlY3QgKSB7CgkJCQkJdGhhdC5fdHJpZ2dlciggInNlbGVjdGluZyIsIGV2ZW50LCB7CgkJCQkJCXNlbGVjdGluZzogc2VsZWN0ZWUuZWxlbWVudAoJCQkJCX0gKTsKCQkJCX0gZWxzZSB7CgkJCQkJdGhhdC5fdHJpZ2dlciggInVuc2VsZWN0aW5nIiwgZXZlbnQsIHsKCQkJCQkJdW5zZWxlY3Rpbmc6IHNlbGVjdGVlLmVsZW1lbnQKCQkJCQl9ICk7CgkJCQl9CgkJCQlyZXR1cm4gZmFsc2U7CgkJCX0KCQl9ICk7CgoJfSwKCglfbW91c2VEcmFnOiBmdW5jdGlvbiggZXZlbnQgKSB7CgoJCXRoaXMuZHJhZ2dlZCA9IHRydWU7CgoJCWlmICggdGhpcy5vcHRpb25zLmRpc2FibGVkICkgewoJCQlyZXR1cm47CgkJfQoKCQl2YXIgdG1wLAoJCQl0aGF0ID0gdGhpcywKCQkJb3B0aW9ucyA9IHRoaXMub3B0aW9ucywKCQkJeDEgPSB0aGlzLm9wb3NbIDAgXSwKCQkJeTEgPSB0aGlzLm9wb3NbIDEgXSwKCQkJeDIgPSBldmVudC5wYWdlWCwKCQkJeTIgPSBldmVudC5wYWdlWTsKCgkJaWYgKCB4MSA+IHgyICkgeyB0bXAgPSB4MjsgeDIgPSB4MTsgeDEgPSB0bXA7IH0KCQlpZiAoIHkxID4geTIgKSB7IHRtcCA9IHkyOyB5MiA9IHkxOyB5MSA9IHRtcDsgfQoJCXRoaXMuaGVscGVyLmNzcyggeyBsZWZ0OiB4MSwgdG9wOiB5MSwgd2lkdGg6IHgyIC0geDEsIGhlaWdodDogeTIgLSB5MSB9ICk7CgoJCXRoaXMuc2VsZWN0ZWVzLmVhY2goIGZ1bmN0aW9uKCkgewoJCQl2YXIgc2VsZWN0ZWUgPSAkLmRhdGEoIHRoaXMsICJzZWxlY3RhYmxlLWl0ZW0iICksCgkJCQloaXQgPSBmYWxzZSwKCQkJCW9mZnNldCA9IHt9OwoKCQkJLy9wcmV2ZW50IGhlbHBlciBmcm9tIGJlaW5nIHNlbGVjdGVkIGlmIGFwcGVuZFRvOiBzZWxlY3RhYmxlCgkJCWlmICggIXNlbGVjdGVlIHx8IHNlbGVjdGVlLmVsZW1lbnQgPT09IHRoYXQuZWxlbWVudFsgMCBdICkgewoJCQkJcmV0dXJuOwoJCQl9CgoJCQlvZmZzZXQubGVmdCAgID0gc2VsZWN0ZWUubGVmdCAgICsgdGhhdC5lbGVtZW50UG9zLmxlZnQ7CgkJCW9mZnNldC5yaWdodCAgPSBzZWxlY3RlZS5yaWdodCAgKyB0aGF0LmVsZW1lbnRQb3MubGVmdDsKCQkJb2Zmc2V0LnRvcCAgICA9IHNlbGVjdGVlLnRvcCAgICArIHRoYXQuZWxlbWVudFBvcy50b3A7CgkJCW9mZnNldC5ib3R0b20gPSBzZWxlY3RlZS5ib3R0b20gKyB0aGF0LmVsZW1lbnRQb3MudG9wOwoKCQkJaWYgKCBvcHRpb25zLnRvbGVyYW5jZSA9PT0gInRvdWNoIiApIHsKCQkJCWhpdCA9ICggISggb2Zmc2V0LmxlZnQgPiB4MiB8fCBvZmZzZXQucmlnaHQgPCB4MSB8fCBvZmZzZXQudG9wID4geTIgfHwKICAgICAgICAgICAgICAgICAgICBvZmZzZXQuYm90dG9tIDwgeTEgKSApOwoJCQl9IGVsc2UgaWYgKCBvcHRpb25zLnRvbGVyYW5jZSA9PT0gImZpdCIgKSB7CgkJCQloaXQgPSAoIG9mZnNldC5sZWZ0ID4geDEgJiYgb2Zmc2V0LnJpZ2h0IDwgeDIgJiYgb2Zmc2V0LnRvcCA+IHkxICYmCiAgICAgICAgICAgICAgICAgICAgb2Zmc2V0LmJvdHRvbSA8IHkyICk7CgkJCX0KCgkJCWlmICggaGl0ICkgewoKCQkJCS8vIFNFTEVDVAoJCQkJaWYgKCBzZWxlY3RlZS5zZWxlY3RlZCApIHsKCQkJCQl0aGF0Ll9yZW1vdmVDbGFzcyggc2VsZWN0ZWUuJGVsZW1lbnQsICJ1aS1zZWxlY3RlZCIgKTsKCQkJCQlzZWxlY3RlZS5zZWxlY3RlZCA9IGZhbHNlOwoJCQkJfQoJCQkJaWYgKCBzZWxlY3RlZS51bnNlbGVjdGluZyApIHsKCQkJCQl0aGF0Ll9yZW1vdmVDbGFzcyggc2VsZWN0ZWUuJGVsZW1lbnQsICJ1aS11bnNlbGVjdGluZyIgKTsKCQkJCQlzZWxlY3RlZS51bnNlbGVjdGluZyA9IGZhbHNlOwoJCQkJfQoJCQkJaWYgKCAhc2VsZWN0ZWUuc2VsZWN0aW5nICkgewoJCQkJCXRoYXQuX2FkZENsYXNzKCBzZWxlY3RlZS4kZWxlbWVudCwgInVpLXNlbGVjdGluZyIgKTsKCQkJCQlzZWxlY3RlZS5zZWxlY3RpbmcgPSB0cnVlOwoKCQkJCQkvLyBzZWxlY3RhYmxlIFNFTEVDVElORyBjYWxsYmFjawoJCQkJCXRoYXQuX3RyaWdnZXIoICJzZWxlY3RpbmciLCBldmVudCwgewoJCQkJCQlzZWxlY3Rpbmc6IHNlbGVjdGVlLmVsZW1lbnQKCQkJCQl9ICk7CgkJCQl9CgkJCX0gZWxzZSB7CgoJCQkJLy8gVU5TRUxFQ1QKCQkJCWlmICggc2VsZWN0ZWUuc2VsZWN0aW5nICkgewoJCQkJCWlmICggKCBldmVudC5tZXRhS2V5IHx8IGV2ZW50LmN0cmxLZXkgKSAmJiBzZWxlY3RlZS5zdGFydHNlbGVjdGVkICkgewoJCQkJCQl0aGF0Ll9yZW1vdmVDbGFzcyggc2VsZWN0ZWUuJGVsZW1lbnQsICJ1aS1zZWxlY3RpbmciICk7CgkJCQkJCXNlbGVjdGVlLnNlbGVjdGluZyA9IGZhbHNlOwoJCQkJCQl0aGF0Ll9hZGRDbGFzcyggc2VsZWN0ZWUuJGVsZW1lbnQsICJ1aS1zZWxlY3RlZCIgKTsKCQkJCQkJc2VsZWN0ZWUuc2VsZWN0ZWQgPSB0cnVlOwoJCQkJCX0gZWxzZSB7CgkJCQkJCXRoYXQuX3JlbW92ZUNsYXNzKCBzZWxlY3RlZS4kZWxlbWVudCwgInVpLXNlbGVjdGluZyIgKTsKCQkJCQkJc2VsZWN0ZWUuc2VsZWN0aW5nID0gZmFsc2U7CgkJCQkJCWlmICggc2VsZWN0ZWUuc3RhcnRzZWxlY3RlZCApIHsKCQkJCQkJCXRoYXQuX2FkZENsYXNzKCBzZWxlY3RlZS4kZWxlbWVudCwgInVpLXVuc2VsZWN0aW5nIiApOwoJCQkJCQkJc2VsZWN0ZWUudW5zZWxlY3RpbmcgPSB0cnVlOwoJCQkJCQl9CgoJCQkJCQkvLyBzZWxlY3RhYmxlIFVOU0VMRUNUSU5HIGNhbGxiYWNrCgkJCQkJCXRoYXQuX3RyaWdnZXIoICJ1bnNlbGVjdGluZyIsIGV2ZW50LCB7CgkJCQkJCQl1bnNlbGVjdGluZzogc2VsZWN0ZWUuZWxlbWVudAoJCQkJCQl9ICk7CgkJCQkJfQoJCQkJfQoJCQkJaWYgKCBzZWxlY3RlZS5zZWxlY3RlZCApIHsKCQkJCQlpZiAoICFldmVudC5tZXRhS2V5ICYmICFldmVudC5jdHJsS2V5ICYmICFzZWxlY3RlZS5zdGFydHNlbGVjdGVkICkgewoJCQkJCQl0aGF0Ll9yZW1vdmVDbGFzcyggc2VsZWN0ZWUuJGVsZW1lbnQsICJ1aS1zZWxlY3RlZCIgKTsKCQkJCQkJc2VsZWN0ZWUuc2VsZWN0ZWQgPSBmYWxzZTsKCgkJCQkJCXRoYXQuX2FkZENsYXNzKCBzZWxlY3RlZS4kZWxlbWVudCwgInVpLXVuc2VsZWN0aW5nIiApOwoJCQkJCQlzZWxlY3RlZS51bnNlbGVjdGluZyA9IHRydWU7CgoJCQkJCQkvLyBzZWxlY3RhYmxlIFVOU0VMRUNUSU5HIGNhbGxiYWNrCgkJCQkJCXRoYXQuX3RyaWdnZXIoICJ1bnNlbGVjdGluZyIsIGV2ZW50LCB7CgkJCQkJCQl1bnNlbGVjdGluZzogc2VsZWN0ZWUuZWxlbWVudAoJCQkJCQl9ICk7CgkJCQkJfQoJCQkJfQoJCQl9CgkJfSApOwoKCQlyZXR1cm4gZmFsc2U7Cgl9LAoKCV9tb3VzZVN0b3A6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgdGhhdCA9IHRoaXM7CgoJCXRoaXMuZHJhZ2dlZCA9IGZhbHNlOwoKCQkkKCAiLnVpLXVuc2VsZWN0aW5nIiwgdGhpcy5lbGVtZW50WyAwIF0gKS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJdmFyIHNlbGVjdGVlID0gJC5kYXRhKCB0aGlzLCAic2VsZWN0YWJsZS1pdGVtIiApOwoJCQl0aGF0Ll9yZW1vdmVDbGFzcyggc2VsZWN0ZWUuJGVsZW1lbnQsICJ1aS11bnNlbGVjdGluZyIgKTsKCQkJc2VsZWN0ZWUudW5zZWxlY3RpbmcgPSBmYWxzZTsKCQkJc2VsZWN0ZWUuc3RhcnRzZWxlY3RlZCA9IGZhbHNlOwoJCQl0aGF0Ll90cmlnZ2VyKCAidW5zZWxlY3RlZCIsIGV2ZW50LCB7CgkJCQl1bnNlbGVjdGVkOiBzZWxlY3RlZS5lbGVtZW50CgkJCX0gKTsKCQl9ICk7CgkJJCggIi51aS1zZWxlY3RpbmciLCB0aGlzLmVsZW1lbnRbIDAgXSApLmVhY2goIGZ1bmN0aW9uKCkgewoJCQl2YXIgc2VsZWN0ZWUgPSAkLmRhdGEoIHRoaXMsICJzZWxlY3RhYmxlLWl0ZW0iICk7CgkJCXRoYXQuX3JlbW92ZUNsYXNzKCBzZWxlY3RlZS4kZWxlbWVudCwgInVpLXNlbGVjdGluZyIgKQoJCQkJLl9hZGRDbGFzcyggc2VsZWN0ZWUuJGVsZW1lbnQsICJ1aS1zZWxlY3RlZCIgKTsKCQkJc2VsZWN0ZWUuc2VsZWN0aW5nID0gZmFsc2U7CgkJCXNlbGVjdGVlLnNlbGVjdGVkID0gdHJ1ZTsKCQkJc2VsZWN0ZWUuc3RhcnRzZWxlY3RlZCA9IHRydWU7CgkJCXRoYXQuX3RyaWdnZXIoICJzZWxlY3RlZCIsIGV2ZW50LCB7CgkJCQlzZWxlY3RlZDogc2VsZWN0ZWUuZWxlbWVudAoJCQl9ICk7CgkJfSApOwoJCXRoaXMuX3RyaWdnZXIoICJzdG9wIiwgZXZlbnQgKTsKCgkJdGhpcy5oZWxwZXIucmVtb3ZlKCk7CgoJCXJldHVybiBmYWxzZTsKCX0KCn0gKTsKCgovKiEKICogalF1ZXJ5IFVJIFNvcnRhYmxlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogU29ydGFibGUKLy8+Pmdyb3VwOiBJbnRlcmFjdGlvbnMKLy8+PmRlc2NyaXB0aW9uOiBFbmFibGVzIGl0ZW1zIGluIGEgbGlzdCB0byBiZSBzb3J0ZWQgdXNpbmcgdGhlIG1vdXNlLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vc29ydGFibGUvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9zb3J0YWJsZS8KLy8+PmNzcy5zdHJ1Y3R1cmU6IC4uLy4uL3RoZW1lcy9iYXNlL3NvcnRhYmxlLmNzcwoKCgp2YXIgd2lkZ2V0c1NvcnRhYmxlID0gJC53aWRnZXQoICJ1aS5zb3J0YWJsZSIsICQudWkubW91c2UsIHsKCXZlcnNpb246ICIxLjEyLjEiLAoJd2lkZ2V0RXZlbnRQcmVmaXg6ICJzb3J0IiwKCXJlYWR5OiBmYWxzZSwKCW9wdGlvbnM6IHsKCQlhcHBlbmRUbzogInBhcmVudCIsCgkJYXhpczogZmFsc2UsCgkJY29ubmVjdFdpdGg6IGZhbHNlLAoJCWNvbnRhaW5tZW50OiBmYWxzZSwKCQljdXJzb3I6ICJhdXRvIiwKCQljdXJzb3JBdDogZmFsc2UsCgkJZHJvcE9uRW1wdHk6IHRydWUsCgkJZm9yY2VQbGFjZWhvbGRlclNpemU6IGZhbHNlLAoJCWZvcmNlSGVscGVyU2l6ZTogZmFsc2UsCgkJZ3JpZDogZmFsc2UsCgkJaGFuZGxlOiBmYWxzZSwKCQloZWxwZXI6ICJvcmlnaW5hbCIsCgkJaXRlbXM6ICI+ICoiLAoJCW9wYWNpdHk6IGZhbHNlLAoJCXBsYWNlaG9sZGVyOiBmYWxzZSwKCQlyZXZlcnQ6IGZhbHNlLAoJCXNjcm9sbDogdHJ1ZSwKCQlzY3JvbGxTZW5zaXRpdml0eTogMjAsCgkJc2Nyb2xsU3BlZWQ6IDIwLAoJCXNjb3BlOiAiZGVmYXVsdCIsCgkJdG9sZXJhbmNlOiAiaW50ZXJzZWN0IiwKCQl6SW5kZXg6IDEwMDAsCgoJCS8vIENhbGxiYWNrcwoJCWFjdGl2YXRlOiBudWxsLAoJCWJlZm9yZVN0b3A6IG51bGwsCgkJY2hhbmdlOiBudWxsLAoJCWRlYWN0aXZhdGU6IG51bGwsCgkJb3V0OiBudWxsLAoJCW92ZXI6IG51bGwsCgkJcmVjZWl2ZTogbnVsbCwKCQlyZW1vdmU6IG51bGwsCgkJc29ydDogbnVsbCwKCQlzdGFydDogbnVsbCwKCQlzdG9wOiBudWxsLAoJCXVwZGF0ZTogbnVsbAoJfSwKCglfaXNPdmVyQXhpczogZnVuY3Rpb24oIHgsIHJlZmVyZW5jZSwgc2l6ZSApIHsKCQlyZXR1cm4gKCB4ID49IHJlZmVyZW5jZSApICYmICggeCA8ICggcmVmZXJlbmNlICsgc2l6ZSApICk7Cgl9LAoKCV9pc0Zsb2F0aW5nOiBmdW5jdGlvbiggaXRlbSApIHsKCQlyZXR1cm4gKCAvbGVmdHxyaWdodC8gKS50ZXN0KCBpdGVtLmNzcyggImZsb2F0IiApICkgfHwKCQkJKCAvaW5saW5lfHRhYmxlLWNlbGwvICkudGVzdCggaXRlbS5jc3MoICJkaXNwbGF5IiApICk7Cgl9LAoKCV9jcmVhdGU6IGZ1bmN0aW9uKCkgewoJCXRoaXMuY29udGFpbmVyQ2FjaGUgPSB7fTsKCQl0aGlzLl9hZGRDbGFzcyggInVpLXNvcnRhYmxlIiApOwoKCQkvL0dldCB0aGUgaXRlbXMKCQl0aGlzLnJlZnJlc2goKTsKCgkJLy9MZXQncyBkZXRlcm1pbmUgdGhlIHBhcmVudCdzIG9mZnNldAoJCXRoaXMub2Zmc2V0ID0gdGhpcy5lbGVtZW50Lm9mZnNldCgpOwoKCQkvL0luaXRpYWxpemUgbW91c2UgZXZlbnRzIGZvciBpbnRlcmFjdGlvbgoJCXRoaXMuX21vdXNlSW5pdCgpOwoKCQl0aGlzLl9zZXRIYW5kbGVDbGFzc05hbWUoKTsKCgkJLy9XZSdyZSByZWFkeSB0byBnbwoJCXRoaXMucmVhZHkgPSB0cnVlOwoKCX0sCgoJX3NldE9wdGlvbjogZnVuY3Rpb24oIGtleSwgdmFsdWUgKSB7CgkJdGhpcy5fc3VwZXIoIGtleSwgdmFsdWUgKTsKCgkJaWYgKCBrZXkgPT09ICJoYW5kbGUiICkgewoJCQl0aGlzLl9zZXRIYW5kbGVDbGFzc05hbWUoKTsKCQl9Cgl9LAoKCV9zZXRIYW5kbGVDbGFzc05hbWU6IGZ1bmN0aW9uKCkgewoJCXZhciB0aGF0ID0gdGhpczsKCQl0aGlzLl9yZW1vdmVDbGFzcyggdGhpcy5lbGVtZW50LmZpbmQoICIudWktc29ydGFibGUtaGFuZGxlIiApLCAidWktc29ydGFibGUtaGFuZGxlIiApOwoJCSQuZWFjaCggdGhpcy5pdGVtcywgZnVuY3Rpb24oKSB7CgkJCXRoYXQuX2FkZENsYXNzKAoJCQkJdGhpcy5pbnN0YW5jZS5vcHRpb25zLmhhbmRsZSA/CgkJCQkJdGhpcy5pdGVtLmZpbmQoIHRoaXMuaW5zdGFuY2Uub3B0aW9ucy5oYW5kbGUgKSA6CgkJCQkJdGhpcy5pdGVtLAoJCQkJInVpLXNvcnRhYmxlLWhhbmRsZSIKCQkJKTsKCQl9ICk7Cgl9LAoKCV9kZXN0cm95OiBmdW5jdGlvbigpIHsKCQl0aGlzLl9tb3VzZURlc3Ryb3koKTsKCgkJZm9yICggdmFyIGkgPSB0aGlzLml0ZW1zLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tICkgewoJCQl0aGlzLml0ZW1zWyBpIF0uaXRlbS5yZW1vdmVEYXRhKCB0aGlzLndpZGdldE5hbWUgKyAiLWl0ZW0iICk7CgkJfQoKCQlyZXR1cm4gdGhpczsKCX0sCgoJX21vdXNlQ2FwdHVyZTogZnVuY3Rpb24oIGV2ZW50LCBvdmVycmlkZUhhbmRsZSApIHsKCQl2YXIgY3VycmVudEl0ZW0gPSBudWxsLAoJCQl2YWxpZEhhbmRsZSA9IGZhbHNlLAoJCQl0aGF0ID0gdGhpczsKCgkJaWYgKCB0aGlzLnJldmVydGluZyApIHsKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCgkJaWYgKCB0aGlzLm9wdGlvbnMuZGlzYWJsZWQgfHwgdGhpcy5vcHRpb25zLnR5cGUgPT09ICJzdGF0aWMiICkgewoJCQlyZXR1cm4gZmFsc2U7CgkJfQoKCQkvL1dlIGhhdmUgdG8gcmVmcmVzaCB0aGUgaXRlbXMgZGF0YSBvbmNlIGZpcnN0CgkJdGhpcy5fcmVmcmVzaEl0ZW1zKCBldmVudCApOwoKCQkvL0ZpbmQgb3V0IGlmIHRoZSBjbGlja2VkIG5vZGUgKG9yIG9uZSBvZiBpdHMgcGFyZW50cykgaXMgYSBhY3R1YWwgaXRlbSBpbiB0aGlzLml0ZW1zCgkJJCggZXZlbnQudGFyZ2V0ICkucGFyZW50cygpLmVhY2goIGZ1bmN0aW9uKCkgewoJCQlpZiAoICQuZGF0YSggdGhpcywgdGhhdC53aWRnZXROYW1lICsgIi1pdGVtIiApID09PSB0aGF0ICkgewoJCQkJY3VycmVudEl0ZW0gPSAkKCB0aGlzICk7CgkJCQlyZXR1cm4gZmFsc2U7CgkJCX0KCQl9ICk7CgkJaWYgKCAkLmRhdGEoIGV2ZW50LnRhcmdldCwgdGhhdC53aWRnZXROYW1lICsgIi1pdGVtIiApID09PSB0aGF0ICkgewoJCQljdXJyZW50SXRlbSA9ICQoIGV2ZW50LnRhcmdldCApOwoJCX0KCgkJaWYgKCAhY3VycmVudEl0ZW0gKSB7CgkJCXJldHVybiBmYWxzZTsKCQl9CgkJaWYgKCB0aGlzLm9wdGlvbnMuaGFuZGxlICYmICFvdmVycmlkZUhhbmRsZSApIHsKCQkJJCggdGhpcy5vcHRpb25zLmhhbmRsZSwgY3VycmVudEl0ZW0gKS5maW5kKCAiKiIgKS5hZGRCYWNrKCkuZWFjaCggZnVuY3Rpb24oKSB7CgkJCQlpZiAoIHRoaXMgPT09IGV2ZW50LnRhcmdldCApIHsKCQkJCQl2YWxpZEhhbmRsZSA9IHRydWU7CgkJCQl9CgkJCX0gKTsKCQkJaWYgKCAhdmFsaWRIYW5kbGUgKSB7CgkJCQlyZXR1cm4gZmFsc2U7CgkJCX0KCQl9CgoJCXRoaXMuY3VycmVudEl0ZW0gPSBjdXJyZW50SXRlbTsKCQl0aGlzLl9yZW1vdmVDdXJyZW50c0Zyb21JdGVtcygpOwoJCXJldHVybiB0cnVlOwoKCX0sCgoJX21vdXNlU3RhcnQ6IGZ1bmN0aW9uKCBldmVudCwgb3ZlcnJpZGVIYW5kbGUsIG5vQWN0aXZhdGlvbiApIHsKCgkJdmFyIGksIGJvZHksCgkJCW8gPSB0aGlzLm9wdGlvbnM7CgoJCXRoaXMuY3VycmVudENvbnRhaW5lciA9IHRoaXM7CgoJCS8vV2Ugb25seSBuZWVkIHRvIGNhbGwgcmVmcmVzaFBvc2l0aW9ucywgYmVjYXVzZSB0aGUgcmVmcmVzaEl0ZW1zIGNhbGwgaGFzIGJlZW4gbW92ZWQgdG8KCQkvLyBtb3VzZUNhcHR1cmUKCQl0aGlzLnJlZnJlc2hQb3NpdGlvbnMoKTsKCgkJLy9DcmVhdGUgYW5kIGFwcGVuZCB0aGUgdmlzaWJsZSBoZWxwZXIKCQl0aGlzLmhlbHBlciA9IHRoaXMuX2NyZWF0ZUhlbHBlciggZXZlbnQgKTsKCgkJLy9DYWNoZSB0aGUgaGVscGVyIHNpemUKCQl0aGlzLl9jYWNoZUhlbHBlclByb3BvcnRpb25zKCk7CgoJCS8qCgkJICogLSBQb3NpdGlvbiBnZW5lcmF0aW9uIC0KCQkgKiBUaGlzIGJsb2NrIGdlbmVyYXRlcyBldmVyeXRoaW5nIHBvc2l0aW9uIHJlbGF0ZWQgLSBpdCdzIHRoZSBjb3JlIG9mIGRyYWdnYWJsZXMuCgkJICovCgoJCS8vQ2FjaGUgdGhlIG1hcmdpbnMgb2YgdGhlIG9yaWdpbmFsIGVsZW1lbnQKCQl0aGlzLl9jYWNoZU1hcmdpbnMoKTsKCgkJLy9HZXQgdGhlIG5leHQgc2Nyb2xsaW5nIHBhcmVudAoJCXRoaXMuc2Nyb2xsUGFyZW50ID0gdGhpcy5oZWxwZXIuc2Nyb2xsUGFyZW50KCk7CgoJCS8vVGhlIGVsZW1lbnQncyBhYnNvbHV0ZSBwb3NpdGlvbiBvbiB0aGUgcGFnZSBtaW51cyBtYXJnaW5zCgkJdGhpcy5vZmZzZXQgPSB0aGlzLmN1cnJlbnRJdGVtLm9mZnNldCgpOwoJCXRoaXMub2Zmc2V0ID0gewoJCQl0b3A6IHRoaXMub2Zmc2V0LnRvcCAtIHRoaXMubWFyZ2lucy50b3AsCgkJCWxlZnQ6IHRoaXMub2Zmc2V0LmxlZnQgLSB0aGlzLm1hcmdpbnMubGVmdAoJCX07CgoJCSQuZXh0ZW5kKCB0aGlzLm9mZnNldCwgewoJCQljbGljazogeyAvL1doZXJlIHRoZSBjbGljayBoYXBwZW5lZCwgcmVsYXRpdmUgdG8gdGhlIGVsZW1lbnQKCQkJCWxlZnQ6IGV2ZW50LnBhZ2VYIC0gdGhpcy5vZmZzZXQubGVmdCwKCQkJCXRvcDogZXZlbnQucGFnZVkgLSB0aGlzLm9mZnNldC50b3AKCQkJfSwKCQkJcGFyZW50OiB0aGlzLl9nZXRQYXJlbnRPZmZzZXQoKSwKCgkJCS8vIFRoaXMgaXMgYSByZWxhdGl2ZSB0byBhYnNvbHV0ZSBwb3NpdGlvbiBtaW51cyB0aGUgYWN0dWFsIHBvc2l0aW9uIGNhbGN1bGF0aW9uIC0KCQkJLy8gb25seSB1c2VkIGZvciByZWxhdGl2ZSBwb3NpdGlvbmVkIGhlbHBlcgoJCQlyZWxhdGl2ZTogdGhpcy5fZ2V0UmVsYXRpdmVPZmZzZXQoKQoJCX0gKTsKCgkJLy8gT25seSBhZnRlciB3ZSBnb3QgdGhlIG9mZnNldCwgd2UgY2FuIGNoYW5nZSB0aGUgaGVscGVyJ3MgcG9zaXRpb24gdG8gYWJzb2x1dGUKCQkvLyBUT0RPOiBTdGlsbCBuZWVkIHRvIGZpZ3VyZSBvdXQgYSB3YXkgdG8gbWFrZSByZWxhdGl2ZSBzb3J0aW5nIHBvc3NpYmxlCgkJdGhpcy5oZWxwZXIuY3NzKCAicG9zaXRpb24iLCAiYWJzb2x1dGUiICk7CgkJdGhpcy5jc3NQb3NpdGlvbiA9IHRoaXMuaGVscGVyLmNzcyggInBvc2l0aW9uIiApOwoKCQkvL0dlbmVyYXRlIHRoZSBvcmlnaW5hbCBwb3NpdGlvbgoJCXRoaXMub3JpZ2luYWxQb3NpdGlvbiA9IHRoaXMuX2dlbmVyYXRlUG9zaXRpb24oIGV2ZW50ICk7CgkJdGhpcy5vcmlnaW5hbFBhZ2VYID0gZXZlbnQucGFnZVg7CgkJdGhpcy5vcmlnaW5hbFBhZ2VZID0gZXZlbnQucGFnZVk7CgoJCS8vQWRqdXN0IHRoZSBtb3VzZSBvZmZzZXQgcmVsYXRpdmUgdG8gdGhlIGhlbHBlciBpZiAiY3Vyc29yQXQiIGlzIHN1cHBsaWVkCgkJKCBvLmN1cnNvckF0ICYmIHRoaXMuX2FkanVzdE9mZnNldEZyb21IZWxwZXIoIG8uY3Vyc29yQXQgKSApOwoKCQkvL0NhY2hlIHRoZSBmb3JtZXIgRE9NIHBvc2l0aW9uCgkJdGhpcy5kb21Qb3NpdGlvbiA9IHsKCQkJcHJldjogdGhpcy5jdXJyZW50SXRlbS5wcmV2KClbIDAgXSwKCQkJcGFyZW50OiB0aGlzLmN1cnJlbnRJdGVtLnBhcmVudCgpWyAwIF0KCQl9OwoKCQkvLyBJZiB0aGUgaGVscGVyIGlzIG5vdCB0aGUgb3JpZ2luYWwsIGhpZGUgdGhlIG9yaWdpbmFsIHNvIGl0J3Mgbm90IHBsYXlpbmcgYW55IHJvbGUgZHVyaW5nCgkJLy8gdGhlIGRyYWcsIHdvbid0IGNhdXNlIGFueXRoaW5nIGJhZCB0aGlzIHdheQoJCWlmICggdGhpcy5oZWxwZXJbIDAgXSAhPT0gdGhpcy5jdXJyZW50SXRlbVsgMCBdICkgewoJCQl0aGlzLmN1cnJlbnRJdGVtLmhpZGUoKTsKCQl9CgoJCS8vQ3JlYXRlIHRoZSBwbGFjZWhvbGRlcgoJCXRoaXMuX2NyZWF0ZVBsYWNlaG9sZGVyKCk7CgoJCS8vU2V0IGEgY29udGFpbm1lbnQgaWYgZ2l2ZW4gaW4gdGhlIG9wdGlvbnMKCQlpZiAoIG8uY29udGFpbm1lbnQgKSB7CgkJCXRoaXMuX3NldENvbnRhaW5tZW50KCk7CgkJfQoKCQlpZiAoIG8uY3Vyc29yICYmIG8uY3Vyc29yICE9PSAiYXV0byIgKSB7IC8vIGN1cnNvciBvcHRpb24KCQkJYm9keSA9IHRoaXMuZG9jdW1lbnQuZmluZCggImJvZHkiICk7CgoJCQkvLyBTdXBwb3J0OiBJRQoJCQl0aGlzLnN0b3JlZEN1cnNvciA9IGJvZHkuY3NzKCAiY3Vyc29yIiApOwoJCQlib2R5LmNzcyggImN1cnNvciIsIG8uY3Vyc29yICk7CgoJCQl0aGlzLnN0b3JlZFN0eWxlc2hlZXQgPQoJCQkJJCggIjxzdHlsZT4qeyBjdXJzb3I6ICIgKyBvLmN1cnNvciArICIgIWltcG9ydGFudDsgfTwvc3R5bGU+IiApLmFwcGVuZFRvKCBib2R5ICk7CgkJfQoKCQlpZiAoIG8ub3BhY2l0eSApIHsgLy8gb3BhY2l0eSBvcHRpb24KCQkJaWYgKCB0aGlzLmhlbHBlci5jc3MoICJvcGFjaXR5IiApICkgewoJCQkJdGhpcy5fc3RvcmVkT3BhY2l0eSA9IHRoaXMuaGVscGVyLmNzcyggIm9wYWNpdHkiICk7CgkJCX0KCQkJdGhpcy5oZWxwZXIuY3NzKCAib3BhY2l0eSIsIG8ub3BhY2l0eSApOwoJCX0KCgkJaWYgKCBvLnpJbmRleCApIHsgLy8gekluZGV4IG9wdGlvbgoJCQlpZiAoIHRoaXMuaGVscGVyLmNzcyggInpJbmRleCIgKSApIHsKCQkJCXRoaXMuX3N0b3JlZFpJbmRleCA9IHRoaXMuaGVscGVyLmNzcyggInpJbmRleCIgKTsKCQkJfQoJCQl0aGlzLmhlbHBlci5jc3MoICJ6SW5kZXgiLCBvLnpJbmRleCApOwoJCX0KCgkJLy9QcmVwYXJlIHNjcm9sbGluZwoJCWlmICggdGhpcy5zY3JvbGxQYXJlbnRbIDAgXSAhPT0gdGhpcy5kb2N1bWVudFsgMCBdICYmCgkJCQl0aGlzLnNjcm9sbFBhcmVudFsgMCBdLnRhZ05hbWUgIT09ICJIVE1MIiApIHsKCQkJdGhpcy5vdmVyZmxvd09mZnNldCA9IHRoaXMuc2Nyb2xsUGFyZW50Lm9mZnNldCgpOwoJCX0KCgkJLy9DYWxsIGNhbGxiYWNrcwoJCXRoaXMuX3RyaWdnZXIoICJzdGFydCIsIGV2ZW50LCB0aGlzLl91aUhhc2goKSApOwoKCQkvL1JlY2FjaGUgdGhlIGhlbHBlciBzaXplCgkJaWYgKCAhdGhpcy5fcHJlc2VydmVIZWxwZXJQcm9wb3J0aW9ucyApIHsKCQkJdGhpcy5fY2FjaGVIZWxwZXJQcm9wb3J0aW9ucygpOwoJCX0KCgkJLy9Qb3N0ICJhY3RpdmF0ZSIgZXZlbnRzIHRvIHBvc3NpYmxlIGNvbnRhaW5lcnMKCQlpZiAoICFub0FjdGl2YXRpb24gKSB7CgkJCWZvciAoIGkgPSB0aGlzLmNvbnRhaW5lcnMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0gKSB7CgkJCQl0aGlzLmNvbnRhaW5lcnNbIGkgXS5fdHJpZ2dlciggImFjdGl2YXRlIiwgZXZlbnQsIHRoaXMuX3VpSGFzaCggdGhpcyApICk7CgkJCX0KCQl9CgoJCS8vUHJlcGFyZSBwb3NzaWJsZSBkcm9wcGFibGVzCgkJaWYgKCAkLnVpLmRkbWFuYWdlciApIHsKCQkJJC51aS5kZG1hbmFnZXIuY3VycmVudCA9IHRoaXM7CgkJfQoKCQlpZiAoICQudWkuZGRtYW5hZ2VyICYmICFvLmRyb3BCZWhhdmlvdXIgKSB7CgkJCSQudWkuZGRtYW5hZ2VyLnByZXBhcmVPZmZzZXRzKCB0aGlzLCBldmVudCApOwoJCX0KCgkJdGhpcy5kcmFnZ2luZyA9IHRydWU7CgoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLmhlbHBlciwgInVpLXNvcnRhYmxlLWhlbHBlciIgKTsKCgkJLy8gRXhlY3V0ZSB0aGUgZHJhZyBvbmNlIC0gdGhpcyBjYXVzZXMgdGhlIGhlbHBlciBub3QgdG8gYmUgdmlzaWJsZWJlZm9yZSBnZXR0aW5nIGl0cwoJCS8vIGNvcnJlY3QgcG9zaXRpb24KCQl0aGlzLl9tb3VzZURyYWcoIGV2ZW50ICk7CgkJcmV0dXJuIHRydWU7CgoJfSwKCglfbW91c2VEcmFnOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdmFyIGksIGl0ZW0sIGl0ZW1FbGVtZW50LCBpbnRlcnNlY3Rpb24sCgkJCW8gPSB0aGlzLm9wdGlvbnMsCgkJCXNjcm9sbGVkID0gZmFsc2U7CgoJCS8vQ29tcHV0ZSB0aGUgaGVscGVycyBwb3NpdGlvbgoJCXRoaXMucG9zaXRpb24gPSB0aGlzLl9nZW5lcmF0ZVBvc2l0aW9uKCBldmVudCApOwoJCXRoaXMucG9zaXRpb25BYnMgPSB0aGlzLl9jb252ZXJ0UG9zaXRpb25UbyggImFic29sdXRlIiApOwoKCQlpZiAoICF0aGlzLmxhc3RQb3NpdGlvbkFicyApIHsKCQkJdGhpcy5sYXN0UG9zaXRpb25BYnMgPSB0aGlzLnBvc2l0aW9uQWJzOwoJCX0KCgkJLy9EbyBzY3JvbGxpbmcKCQlpZiAoIHRoaXMub3B0aW9ucy5zY3JvbGwgKSB7CgkJCWlmICggdGhpcy5zY3JvbGxQYXJlbnRbIDAgXSAhPT0gdGhpcy5kb2N1bWVudFsgMCBdICYmCgkJCQkJdGhpcy5zY3JvbGxQYXJlbnRbIDAgXS50YWdOYW1lICE9PSAiSFRNTCIgKSB7CgoJCQkJaWYgKCAoIHRoaXMub3ZlcmZsb3dPZmZzZXQudG9wICsgdGhpcy5zY3JvbGxQYXJlbnRbIDAgXS5vZmZzZXRIZWlnaHQgKSAtCgkJCQkJCWV2ZW50LnBhZ2VZIDwgby5zY3JvbGxTZW5zaXRpdml0eSApIHsKCQkJCQl0aGlzLnNjcm9sbFBhcmVudFsgMCBdLnNjcm9sbFRvcCA9CgkJCQkJCXNjcm9sbGVkID0gdGhpcy5zY3JvbGxQYXJlbnRbIDAgXS5zY3JvbGxUb3AgKyBvLnNjcm9sbFNwZWVkOwoJCQkJfSBlbHNlIGlmICggZXZlbnQucGFnZVkgLSB0aGlzLm92ZXJmbG93T2Zmc2V0LnRvcCA8IG8uc2Nyb2xsU2Vuc2l0aXZpdHkgKSB7CgkJCQkJdGhpcy5zY3JvbGxQYXJlbnRbIDAgXS5zY3JvbGxUb3AgPQoJCQkJCQlzY3JvbGxlZCA9IHRoaXMuc2Nyb2xsUGFyZW50WyAwIF0uc2Nyb2xsVG9wIC0gby5zY3JvbGxTcGVlZDsKCQkJCX0KCgkJCQlpZiAoICggdGhpcy5vdmVyZmxvd09mZnNldC5sZWZ0ICsgdGhpcy5zY3JvbGxQYXJlbnRbIDAgXS5vZmZzZXRXaWR0aCApIC0KCQkJCQkJZXZlbnQucGFnZVggPCBvLnNjcm9sbFNlbnNpdGl2aXR5ICkgewoJCQkJCXRoaXMuc2Nyb2xsUGFyZW50WyAwIF0uc2Nyb2xsTGVmdCA9IHNjcm9sbGVkID0KCQkJCQkJdGhpcy5zY3JvbGxQYXJlbnRbIDAgXS5zY3JvbGxMZWZ0ICsgby5zY3JvbGxTcGVlZDsKCQkJCX0gZWxzZSBpZiAoIGV2ZW50LnBhZ2VYIC0gdGhpcy5vdmVyZmxvd09mZnNldC5sZWZ0IDwgby5zY3JvbGxTZW5zaXRpdml0eSApIHsKCQkJCQl0aGlzLnNjcm9sbFBhcmVudFsgMCBdLnNjcm9sbExlZnQgPSBzY3JvbGxlZCA9CgkJCQkJCXRoaXMuc2Nyb2xsUGFyZW50WyAwIF0uc2Nyb2xsTGVmdCAtIG8uc2Nyb2xsU3BlZWQ7CgkJCQl9CgoJCQl9IGVsc2UgewoKCQkJCWlmICggZXZlbnQucGFnZVkgLSB0aGlzLmRvY3VtZW50LnNjcm9sbFRvcCgpIDwgby5zY3JvbGxTZW5zaXRpdml0eSApIHsKCQkJCQlzY3JvbGxlZCA9IHRoaXMuZG9jdW1lbnQuc2Nyb2xsVG9wKCB0aGlzLmRvY3VtZW50LnNjcm9sbFRvcCgpIC0gby5zY3JvbGxTcGVlZCApOwoJCQkJfSBlbHNlIGlmICggdGhpcy53aW5kb3cuaGVpZ2h0KCkgLSAoIGV2ZW50LnBhZ2VZIC0gdGhpcy5kb2N1bWVudC5zY3JvbGxUb3AoKSApIDwKCQkJCQkJby5zY3JvbGxTZW5zaXRpdml0eSApIHsKCQkJCQlzY3JvbGxlZCA9IHRoaXMuZG9jdW1lbnQuc2Nyb2xsVG9wKCB0aGlzLmRvY3VtZW50LnNjcm9sbFRvcCgpICsgby5zY3JvbGxTcGVlZCApOwoJCQkJfQoKCQkJCWlmICggZXZlbnQucGFnZVggLSB0aGlzLmRvY3VtZW50LnNjcm9sbExlZnQoKSA8IG8uc2Nyb2xsU2Vuc2l0aXZpdHkgKSB7CgkJCQkJc2Nyb2xsZWQgPSB0aGlzLmRvY3VtZW50LnNjcm9sbExlZnQoCgkJCQkJCXRoaXMuZG9jdW1lbnQuc2Nyb2xsTGVmdCgpIC0gby5zY3JvbGxTcGVlZAoJCQkJCSk7CgkJCQl9IGVsc2UgaWYgKCB0aGlzLndpbmRvdy53aWR0aCgpIC0gKCBldmVudC5wYWdlWCAtIHRoaXMuZG9jdW1lbnQuc2Nyb2xsTGVmdCgpICkgPAoJCQkJCQlvLnNjcm9sbFNlbnNpdGl2aXR5ICkgewoJCQkJCXNjcm9sbGVkID0gdGhpcy5kb2N1bWVudC5zY3JvbGxMZWZ0KAoJCQkJCQl0aGlzLmRvY3VtZW50LnNjcm9sbExlZnQoKSArIG8uc2Nyb2xsU3BlZWQKCQkJCQkpOwoJCQkJfQoKCQkJfQoKCQkJaWYgKCBzY3JvbGxlZCAhPT0gZmFsc2UgJiYgJC51aS5kZG1hbmFnZXIgJiYgIW8uZHJvcEJlaGF2aW91ciApIHsKCQkJCSQudWkuZGRtYW5hZ2VyLnByZXBhcmVPZmZzZXRzKCB0aGlzLCBldmVudCApOwoJCQl9CgkJfQoKCQkvL1JlZ2VuZXJhdGUgdGhlIGFic29sdXRlIHBvc2l0aW9uIHVzZWQgZm9yIHBvc2l0aW9uIGNoZWNrcwoJCXRoaXMucG9zaXRpb25BYnMgPSB0aGlzLl9jb252ZXJ0UG9zaXRpb25UbyggImFic29sdXRlIiApOwoKCQkvL1NldCB0aGUgaGVscGVyIHBvc2l0aW9uCgkJaWYgKCAhdGhpcy5vcHRpb25zLmF4aXMgfHwgdGhpcy5vcHRpb25zLmF4aXMgIT09ICJ5IiApIHsKCQkJdGhpcy5oZWxwZXJbIDAgXS5zdHlsZS5sZWZ0ID0gdGhpcy5wb3NpdGlvbi5sZWZ0ICsgInB4IjsKCQl9CgkJaWYgKCAhdGhpcy5vcHRpb25zLmF4aXMgfHwgdGhpcy5vcHRpb25zLmF4aXMgIT09ICJ4IiApIHsKCQkJdGhpcy5oZWxwZXJbIDAgXS5zdHlsZS50b3AgPSB0aGlzLnBvc2l0aW9uLnRvcCArICJweCI7CgkJfQoKCQkvL1JlYXJyYW5nZQoJCWZvciAoIGkgPSB0aGlzLml0ZW1zLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tICkgewoKCQkJLy9DYWNoZSB2YXJpYWJsZXMgYW5kIGludGVyc2VjdGlvbiwgY29udGludWUgaWYgbm8gaW50ZXJzZWN0aW9uCgkJCWl0ZW0gPSB0aGlzLml0ZW1zWyBpIF07CgkJCWl0ZW1FbGVtZW50ID0gaXRlbS5pdGVtWyAwIF07CgkJCWludGVyc2VjdGlvbiA9IHRoaXMuX2ludGVyc2VjdHNXaXRoUG9pbnRlciggaXRlbSApOwoJCQlpZiAoICFpbnRlcnNlY3Rpb24gKSB7CgkJCQljb250aW51ZTsKCQkJfQoKCQkJLy8gT25seSBwdXQgdGhlIHBsYWNlaG9sZGVyIGluc2lkZSB0aGUgY3VycmVudCBDb250YWluZXIsIHNraXAgYWxsCgkJCS8vIGl0ZW1zIGZyb20gb3RoZXIgY29udGFpbmVycy4gVGhpcyB3b3JrcyBiZWNhdXNlIHdoZW4gbW92aW5nCgkJCS8vIGFuIGl0ZW0gZnJvbSBvbmUgY29udGFpbmVyIHRvIGFub3RoZXIgdGhlCgkJCS8vIGN1cnJlbnRDb250YWluZXIgaXMgc3dpdGNoZWQgYmVmb3JlIHRoZSBwbGFjZWhvbGRlciBpcyBtb3ZlZC4KCQkJLy8KCQkJLy8gV2l0aG91dCB0aGlzLCBtb3ZpbmcgaXRlbXMgaW4gInN1Yi1zb3J0YWJsZXMiIGNhbiBjYXVzZQoJCQkvLyB0aGUgcGxhY2Vob2xkZXIgdG8gaml0dGVyIGJldHdlZW4gdGhlIG91dGVyIGFuZCBpbm5lciBjb250YWluZXIuCgkJCWlmICggaXRlbS5pbnN0YW5jZSAhPT0gdGhpcy5jdXJyZW50Q29udGFpbmVyICkgewoJCQkJY29udGludWU7CgkJCX0KCgkJCS8vIENhbm5vdCBpbnRlcnNlY3Qgd2l0aCBpdHNlbGYKCQkJLy8gbm8gdXNlbGVzcyBhY3Rpb25zIHRoYXQgaGF2ZSBiZWVuIGRvbmUgYmVmb3JlCgkJCS8vIG5vIGFjdGlvbiBpZiB0aGUgaXRlbSBtb3ZlZCBpcyB0aGUgcGFyZW50IG9mIHRoZSBpdGVtIGNoZWNrZWQKCQkJaWYgKCBpdGVtRWxlbWVudCAhPT0gdGhpcy5jdXJyZW50SXRlbVsgMCBdICYmCgkJCQl0aGlzLnBsYWNlaG9sZGVyWyBpbnRlcnNlY3Rpb24gPT09IDEgPyAibmV4dCIgOiAicHJldiIgXSgpWyAwIF0gIT09IGl0ZW1FbGVtZW50ICYmCgkJCQkhJC5jb250YWlucyggdGhpcy5wbGFjZWhvbGRlclsgMCBdLCBpdGVtRWxlbWVudCApICYmCgkJCQkoIHRoaXMub3B0aW9ucy50eXBlID09PSAic2VtaS1keW5hbWljIiA/CgkJCQkJISQuY29udGFpbnMoIHRoaXMuZWxlbWVudFsgMCBdLCBpdGVtRWxlbWVudCApIDoKCQkJCQl0cnVlCgkJCQkpCgkJCSkgewoKCQkJCXRoaXMuZGlyZWN0aW9uID0gaW50ZXJzZWN0aW9uID09PSAxID8gImRvd24iIDogInVwIjsKCgkJCQlpZiAoIHRoaXMub3B0aW9ucy50b2xlcmFuY2UgPT09ICJwb2ludGVyIiB8fCB0aGlzLl9pbnRlcnNlY3RzV2l0aFNpZGVzKCBpdGVtICkgKSB7CgkJCQkJdGhpcy5fcmVhcnJhbmdlKCBldmVudCwgaXRlbSApOwoJCQkJfSBlbHNlIHsKCQkJCQlicmVhazsKCQkJCX0KCgkJCQl0aGlzLl90cmlnZ2VyKCAiY2hhbmdlIiwgZXZlbnQsIHRoaXMuX3VpSGFzaCgpICk7CgkJCQlicmVhazsKCQkJfQoJCX0KCgkJLy9Qb3N0IGV2ZW50cyB0byBjb250YWluZXJzCgkJdGhpcy5fY29udGFjdENvbnRhaW5lcnMoIGV2ZW50ICk7CgoJCS8vSW50ZXJjb25uZWN0IHdpdGggZHJvcHBhYmxlcwoJCWlmICggJC51aS5kZG1hbmFnZXIgKSB7CgkJCSQudWkuZGRtYW5hZ2VyLmRyYWcoIHRoaXMsIGV2ZW50ICk7CgkJfQoKCQkvL0NhbGwgY2FsbGJhY2tzCgkJdGhpcy5fdHJpZ2dlciggInNvcnQiLCBldmVudCwgdGhpcy5fdWlIYXNoKCkgKTsKCgkJdGhpcy5sYXN0UG9zaXRpb25BYnMgPSB0aGlzLnBvc2l0aW9uQWJzOwoJCXJldHVybiBmYWxzZTsKCgl9LAoKCV9tb3VzZVN0b3A6IGZ1bmN0aW9uKCBldmVudCwgbm9Qcm9wYWdhdGlvbiApIHsKCgkJaWYgKCAhZXZlbnQgKSB7CgkJCXJldHVybjsKCQl9CgoJCS8vSWYgd2UgYXJlIHVzaW5nIGRyb3BwYWJsZXMsIGluZm9ybSB0aGUgbWFuYWdlciBhYm91dCB0aGUgZHJvcAoJCWlmICggJC51aS5kZG1hbmFnZXIgJiYgIXRoaXMub3B0aW9ucy5kcm9wQmVoYXZpb3VyICkgewoJCQkkLnVpLmRkbWFuYWdlci5kcm9wKCB0aGlzLCBldmVudCApOwoJCX0KCgkJaWYgKCB0aGlzLm9wdGlvbnMucmV2ZXJ0ICkgewoJCQl2YXIgdGhhdCA9IHRoaXMsCgkJCQljdXIgPSB0aGlzLnBsYWNlaG9sZGVyLm9mZnNldCgpLAoJCQkJYXhpcyA9IHRoaXMub3B0aW9ucy5heGlzLAoJCQkJYW5pbWF0aW9uID0ge307CgoJCQlpZiAoICFheGlzIHx8IGF4aXMgPT09ICJ4IiApIHsKCQkJCWFuaW1hdGlvbi5sZWZ0ID0gY3VyLmxlZnQgLSB0aGlzLm9mZnNldC5wYXJlbnQubGVmdCAtIHRoaXMubWFyZ2lucy5sZWZ0ICsKCQkJCQkoIHRoaXMub2Zmc2V0UGFyZW50WyAwIF0gPT09IHRoaXMuZG9jdW1lbnRbIDAgXS5ib2R5ID8KCQkJCQkJMCA6CgkJCQkJCXRoaXMub2Zmc2V0UGFyZW50WyAwIF0uc2Nyb2xsTGVmdAoJCQkJCSk7CgkJCX0KCQkJaWYgKCAhYXhpcyB8fCBheGlzID09PSAieSIgKSB7CgkJCQlhbmltYXRpb24udG9wID0gY3VyLnRvcCAtIHRoaXMub2Zmc2V0LnBhcmVudC50b3AgLSB0aGlzLm1hcmdpbnMudG9wICsKCQkJCQkoIHRoaXMub2Zmc2V0UGFyZW50WyAwIF0gPT09IHRoaXMuZG9jdW1lbnRbIDAgXS5ib2R5ID8KCQkJCQkJMCA6CgkJCQkJCXRoaXMub2Zmc2V0UGFyZW50WyAwIF0uc2Nyb2xsVG9wCgkJCQkJKTsKCQkJfQoJCQl0aGlzLnJldmVydGluZyA9IHRydWU7CgkJCSQoIHRoaXMuaGVscGVyICkuYW5pbWF0ZSgKCQkJCWFuaW1hdGlvbiwKCQkJCXBhcnNlSW50KCB0aGlzLm9wdGlvbnMucmV2ZXJ0LCAxMCApIHx8IDUwMCwKCQkJCWZ1bmN0aW9uKCkgewoJCQkJCXRoYXQuX2NsZWFyKCBldmVudCApOwoJCQkJfQoJCQkpOwoJCX0gZWxzZSB7CgkJCXRoaXMuX2NsZWFyKCBldmVudCwgbm9Qcm9wYWdhdGlvbiApOwoJCX0KCgkJcmV0dXJuIGZhbHNlOwoKCX0sCgoJY2FuY2VsOiBmdW5jdGlvbigpIHsKCgkJaWYgKCB0aGlzLmRyYWdnaW5nICkgewoKCQkJdGhpcy5fbW91c2VVcCggbmV3ICQuRXZlbnQoICJtb3VzZXVwIiwgeyB0YXJnZXQ6IG51bGwgfSApICk7CgoJCQlpZiAoIHRoaXMub3B0aW9ucy5oZWxwZXIgPT09ICJvcmlnaW5hbCIgKSB7CgkJCQl0aGlzLmN1cnJlbnRJdGVtLmNzcyggdGhpcy5fc3RvcmVkQ1NTICk7CgkJCQl0aGlzLl9yZW1vdmVDbGFzcyggdGhpcy5jdXJyZW50SXRlbSwgInVpLXNvcnRhYmxlLWhlbHBlciIgKTsKCQkJfSBlbHNlIHsKCQkJCXRoaXMuY3VycmVudEl0ZW0uc2hvdygpOwoJCQl9CgoJCQkvL1Bvc3QgZGVhY3RpdmF0aW5nIGV2ZW50cyB0byBjb250YWluZXJzCgkJCWZvciAoIHZhciBpID0gdGhpcy5jb250YWluZXJzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tICkgewoJCQkJdGhpcy5jb250YWluZXJzWyBpIF0uX3RyaWdnZXIoICJkZWFjdGl2YXRlIiwgbnVsbCwgdGhpcy5fdWlIYXNoKCB0aGlzICkgKTsKCQkJCWlmICggdGhpcy5jb250YWluZXJzWyBpIF0uY29udGFpbmVyQ2FjaGUub3ZlciApIHsKCQkJCQl0aGlzLmNvbnRhaW5lcnNbIGkgXS5fdHJpZ2dlciggIm91dCIsIG51bGwsIHRoaXMuX3VpSGFzaCggdGhpcyApICk7CgkJCQkJdGhpcy5jb250YWluZXJzWyBpIF0uY29udGFpbmVyQ2FjaGUub3ZlciA9IDA7CgkJCQl9CgkJCX0KCgkJfQoKCQlpZiAoIHRoaXMucGxhY2Vob2xkZXIgKSB7CgoJCQkvLyQodGhpcy5wbGFjZWhvbGRlclswXSkucmVtb3ZlKCk7IHdvdWxkIGhhdmUgYmVlbiB0aGUgalF1ZXJ5IHdheSAtIHVuZm9ydHVuYXRlbHksCgkJCS8vIGl0IHVuYmluZHMgQUxMIGV2ZW50cyBmcm9tIHRoZSBvcmlnaW5hbCBub2RlIQoJCQlpZiAoIHRoaXMucGxhY2Vob2xkZXJbIDAgXS5wYXJlbnROb2RlICkgewoJCQkJdGhpcy5wbGFjZWhvbGRlclsgMCBdLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoIHRoaXMucGxhY2Vob2xkZXJbIDAgXSApOwoJCQl9CgkJCWlmICggdGhpcy5vcHRpb25zLmhlbHBlciAhPT0gIm9yaWdpbmFsIiAmJiB0aGlzLmhlbHBlciAmJgoJCQkJCXRoaXMuaGVscGVyWyAwIF0ucGFyZW50Tm9kZSApIHsKCQkJCXRoaXMuaGVscGVyLnJlbW92ZSgpOwoJCQl9CgoJCQkkLmV4dGVuZCggdGhpcywgewoJCQkJaGVscGVyOiBudWxsLAoJCQkJZHJhZ2dpbmc6IGZhbHNlLAoJCQkJcmV2ZXJ0aW5nOiBmYWxzZSwKCQkJCV9ub0ZpbmFsU29ydDogbnVsbAoJCQl9ICk7CgoJCQlpZiAoIHRoaXMuZG9tUG9zaXRpb24ucHJldiApIHsKCQkJCSQoIHRoaXMuZG9tUG9zaXRpb24ucHJldiApLmFmdGVyKCB0aGlzLmN1cnJlbnRJdGVtICk7CgkJCX0gZWxzZSB7CgkJCQkkKCB0aGlzLmRvbVBvc2l0aW9uLnBhcmVudCApLnByZXBlbmQoIHRoaXMuY3VycmVudEl0ZW0gKTsKCQkJfQoJCX0KCgkJcmV0dXJuIHRoaXM7CgoJfSwKCglzZXJpYWxpemU6IGZ1bmN0aW9uKCBvICkgewoKCQl2YXIgaXRlbXMgPSB0aGlzLl9nZXRJdGVtc0FzalF1ZXJ5KCBvICYmIG8uY29ubmVjdGVkICksCgkJCXN0ciA9IFtdOwoJCW8gPSBvIHx8IHt9OwoKCQkkKCBpdGVtcyApLmVhY2goIGZ1bmN0aW9uKCkgewoJCQl2YXIgcmVzID0gKCAkKCBvLml0ZW0gfHwgdGhpcyApLmF0dHIoIG8uYXR0cmlidXRlIHx8ICJpZCIgKSB8fCAiIiApCgkJCQkubWF0Y2goIG8uZXhwcmVzc2lvbiB8fCAoIC8oLispW1wtPV9dKC4rKS8gKSApOwoJCQlpZiAoIHJlcyApIHsKCQkJCXN0ci5wdXNoKAoJCQkJCSggby5rZXkgfHwgcmVzWyAxIF0gKyAiW10iICkgKwoJCQkJCSI9IiArICggby5rZXkgJiYgby5leHByZXNzaW9uID8gcmVzWyAxIF0gOiByZXNbIDIgXSApICk7CgkJCX0KCQl9ICk7CgoJCWlmICggIXN0ci5sZW5ndGggJiYgby5rZXkgKSB7CgkJCXN0ci5wdXNoKCBvLmtleSArICI9IiApOwoJCX0KCgkJcmV0dXJuIHN0ci5qb2luKCAiJiIgKTsKCgl9LAoKCXRvQXJyYXk6IGZ1bmN0aW9uKCBvICkgewoKCQl2YXIgaXRlbXMgPSB0aGlzLl9nZXRJdGVtc0FzalF1ZXJ5KCBvICYmIG8uY29ubmVjdGVkICksCgkJCXJldCA9IFtdOwoKCQlvID0gbyB8fCB7fTsKCgkJaXRlbXMuZWFjaCggZnVuY3Rpb24oKSB7CgkJCXJldC5wdXNoKCAkKCBvLml0ZW0gfHwgdGhpcyApLmF0dHIoIG8uYXR0cmlidXRlIHx8ICJpZCIgKSB8fCAiIiApOwoJCX0gKTsKCQlyZXR1cm4gcmV0OwoKCX0sCgoJLyogQmUgY2FyZWZ1bCB3aXRoIHRoZSBmb2xsb3dpbmcgY29yZSBmdW5jdGlvbnMgKi8KCV9pbnRlcnNlY3RzV2l0aDogZnVuY3Rpb24oIGl0ZW0gKSB7CgoJCXZhciB4MSA9IHRoaXMucG9zaXRpb25BYnMubGVmdCwKCQkJeDIgPSB4MSArIHRoaXMuaGVscGVyUHJvcG9ydGlvbnMud2lkdGgsCgkJCXkxID0gdGhpcy5wb3NpdGlvbkFicy50b3AsCgkJCXkyID0geTEgKyB0aGlzLmhlbHBlclByb3BvcnRpb25zLmhlaWdodCwKCQkJbCA9IGl0ZW0ubGVmdCwKCQkJciA9IGwgKyBpdGVtLndpZHRoLAoJCQl0ID0gaXRlbS50b3AsCgkJCWIgPSB0ICsgaXRlbS5oZWlnaHQsCgkJCWR5Q2xpY2sgPSB0aGlzLm9mZnNldC5jbGljay50b3AsCgkJCWR4Q2xpY2sgPSB0aGlzLm9mZnNldC5jbGljay5sZWZ0LAoJCQlpc092ZXJFbGVtZW50SGVpZ2h0ID0gKCB0aGlzLm9wdGlvbnMuYXhpcyA9PT0gIngiICkgfHwgKCAoIHkxICsgZHlDbGljayApID4gdCAmJgoJCQkJKCB5MSArIGR5Q2xpY2sgKSA8IGIgKSwKCQkJaXNPdmVyRWxlbWVudFdpZHRoID0gKCB0aGlzLm9wdGlvbnMuYXhpcyA9PT0gInkiICkgfHwgKCAoIHgxICsgZHhDbGljayApID4gbCAmJgoJCQkJKCB4MSArIGR4Q2xpY2sgKSA8IHIgKSwKCQkJaXNPdmVyRWxlbWVudCA9IGlzT3ZlckVsZW1lbnRIZWlnaHQgJiYgaXNPdmVyRWxlbWVudFdpZHRoOwoKCQlpZiAoIHRoaXMub3B0aW9ucy50b2xlcmFuY2UgPT09ICJwb2ludGVyIiB8fAoJCQl0aGlzLm9wdGlvbnMuZm9yY2VQb2ludGVyRm9yQ29udGFpbmVycyB8fAoJCQkoIHRoaXMub3B0aW9ucy50b2xlcmFuY2UgIT09ICJwb2ludGVyIiAmJgoJCQkJdGhpcy5oZWxwZXJQcm9wb3J0aW9uc1sgdGhpcy5mbG9hdGluZyA/ICJ3aWR0aCIgOiAiaGVpZ2h0IiBdID4KCQkJCWl0ZW1bIHRoaXMuZmxvYXRpbmcgPyAid2lkdGgiIDogImhlaWdodCIgXSApCgkJKSB7CgkJCXJldHVybiBpc092ZXJFbGVtZW50OwoJCX0gZWxzZSB7CgoJCQlyZXR1cm4gKCBsIDwgeDEgKyAoIHRoaXMuaGVscGVyUHJvcG9ydGlvbnMud2lkdGggLyAyICkgJiYgLy8gUmlnaHQgSGFsZgoJCQkJeDIgLSAoIHRoaXMuaGVscGVyUHJvcG9ydGlvbnMud2lkdGggLyAyICkgPCByICYmIC8vIExlZnQgSGFsZgoJCQkJdCA8IHkxICsgKCB0aGlzLmhlbHBlclByb3BvcnRpb25zLmhlaWdodCAvIDIgKSAmJiAvLyBCb3R0b20gSGFsZgoJCQkJeTIgLSAoIHRoaXMuaGVscGVyUHJvcG9ydGlvbnMuaGVpZ2h0IC8gMiApIDwgYiApOyAvLyBUb3AgSGFsZgoKCQl9Cgl9LAoKCV9pbnRlcnNlY3RzV2l0aFBvaW50ZXI6IGZ1bmN0aW9uKCBpdGVtICkgewoJCXZhciB2ZXJ0aWNhbERpcmVjdGlvbiwgaG9yaXpvbnRhbERpcmVjdGlvbiwKCQkJaXNPdmVyRWxlbWVudEhlaWdodCA9ICggdGhpcy5vcHRpb25zLmF4aXMgPT09ICJ4IiApIHx8CgkJCQl0aGlzLl9pc092ZXJBeGlzKAoJCQkJCXRoaXMucG9zaXRpb25BYnMudG9wICsgdGhpcy5vZmZzZXQuY2xpY2sudG9wLCBpdGVtLnRvcCwgaXRlbS5oZWlnaHQgKSwKCQkJaXNPdmVyRWxlbWVudFdpZHRoID0gKCB0aGlzLm9wdGlvbnMuYXhpcyA9PT0gInkiICkgfHwKCQkJCXRoaXMuX2lzT3ZlckF4aXMoCgkJCQkJdGhpcy5wb3NpdGlvbkFicy5sZWZ0ICsgdGhpcy5vZmZzZXQuY2xpY2subGVmdCwgaXRlbS5sZWZ0LCBpdGVtLndpZHRoICksCgkJCWlzT3ZlckVsZW1lbnQgPSBpc092ZXJFbGVtZW50SGVpZ2h0ICYmIGlzT3ZlckVsZW1lbnRXaWR0aDsKCgkJaWYgKCAhaXNPdmVyRWxlbWVudCApIHsKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCgkJdmVydGljYWxEaXJlY3Rpb24gPSB0aGlzLl9nZXREcmFnVmVydGljYWxEaXJlY3Rpb24oKTsKCQlob3Jpem9udGFsRGlyZWN0aW9uID0gdGhpcy5fZ2V0RHJhZ0hvcml6b250YWxEaXJlY3Rpb24oKTsKCgkJcmV0dXJuIHRoaXMuZmxvYXRpbmcgPwoJCQkoICggaG9yaXpvbnRhbERpcmVjdGlvbiA9PT0gInJpZ2h0IiB8fCB2ZXJ0aWNhbERpcmVjdGlvbiA9PT0gImRvd24iICkgPyAyIDogMSApCgkJCTogKCB2ZXJ0aWNhbERpcmVjdGlvbiAmJiAoIHZlcnRpY2FsRGlyZWN0aW9uID09PSAiZG93biIgPyAyIDogMSApICk7CgoJfSwKCglfaW50ZXJzZWN0c1dpdGhTaWRlczogZnVuY3Rpb24oIGl0ZW0gKSB7CgoJCXZhciBpc092ZXJCb3R0b21IYWxmID0gdGhpcy5faXNPdmVyQXhpcyggdGhpcy5wb3NpdGlvbkFicy50b3AgKwoJCQkJdGhpcy5vZmZzZXQuY2xpY2sudG9wLCBpdGVtLnRvcCArICggaXRlbS5oZWlnaHQgLyAyICksIGl0ZW0uaGVpZ2h0ICksCgkJCWlzT3ZlclJpZ2h0SGFsZiA9IHRoaXMuX2lzT3ZlckF4aXMoIHRoaXMucG9zaXRpb25BYnMubGVmdCArCgkJCQl0aGlzLm9mZnNldC5jbGljay5sZWZ0LCBpdGVtLmxlZnQgKyAoIGl0ZW0ud2lkdGggLyAyICksIGl0ZW0ud2lkdGggKSwKCQkJdmVydGljYWxEaXJlY3Rpb24gPSB0aGlzLl9nZXREcmFnVmVydGljYWxEaXJlY3Rpb24oKSwKCQkJaG9yaXpvbnRhbERpcmVjdGlvbiA9IHRoaXMuX2dldERyYWdIb3Jpem9udGFsRGlyZWN0aW9uKCk7CgoJCWlmICggdGhpcy5mbG9hdGluZyAmJiBob3Jpem9udGFsRGlyZWN0aW9uICkgewoJCQlyZXR1cm4gKCAoIGhvcml6b250YWxEaXJlY3Rpb24gPT09ICJyaWdodCIgJiYgaXNPdmVyUmlnaHRIYWxmICkgfHwKCQkJCSggaG9yaXpvbnRhbERpcmVjdGlvbiA9PT0gImxlZnQiICYmICFpc092ZXJSaWdodEhhbGYgKSApOwoJCX0gZWxzZSB7CgkJCXJldHVybiB2ZXJ0aWNhbERpcmVjdGlvbiAmJiAoICggdmVydGljYWxEaXJlY3Rpb24gPT09ICJkb3duIiAmJiBpc092ZXJCb3R0b21IYWxmICkgfHwKCQkJCSggdmVydGljYWxEaXJlY3Rpb24gPT09ICJ1cCIgJiYgIWlzT3ZlckJvdHRvbUhhbGYgKSApOwoJCX0KCgl9LAoKCV9nZXREcmFnVmVydGljYWxEaXJlY3Rpb246IGZ1bmN0aW9uKCkgewoJCXZhciBkZWx0YSA9IHRoaXMucG9zaXRpb25BYnMudG9wIC0gdGhpcy5sYXN0UG9zaXRpb25BYnMudG9wOwoJCXJldHVybiBkZWx0YSAhPT0gMCAmJiAoIGRlbHRhID4gMCA/ICJkb3duIiA6ICJ1cCIgKTsKCX0sCgoJX2dldERyYWdIb3Jpem9udGFsRGlyZWN0aW9uOiBmdW5jdGlvbigpIHsKCQl2YXIgZGVsdGEgPSB0aGlzLnBvc2l0aW9uQWJzLmxlZnQgLSB0aGlzLmxhc3RQb3NpdGlvbkFicy5sZWZ0OwoJCXJldHVybiBkZWx0YSAhPT0gMCAmJiAoIGRlbHRhID4gMCA/ICJyaWdodCIgOiAibGVmdCIgKTsKCX0sCgoJcmVmcmVzaDogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXRoaXMuX3JlZnJlc2hJdGVtcyggZXZlbnQgKTsKCQl0aGlzLl9zZXRIYW5kbGVDbGFzc05hbWUoKTsKCQl0aGlzLnJlZnJlc2hQb3NpdGlvbnMoKTsKCQlyZXR1cm4gdGhpczsKCX0sCgoJX2Nvbm5lY3RXaXRoOiBmdW5jdGlvbigpIHsKCQl2YXIgb3B0aW9ucyA9IHRoaXMub3B0aW9uczsKCQlyZXR1cm4gb3B0aW9ucy5jb25uZWN0V2l0aC5jb25zdHJ1Y3RvciA9PT0gU3RyaW5nID8KCQkJWyBvcHRpb25zLmNvbm5lY3RXaXRoIF0gOgoJCQlvcHRpb25zLmNvbm5lY3RXaXRoOwoJfSwKCglfZ2V0SXRlbXNBc2pRdWVyeTogZnVuY3Rpb24oIGNvbm5lY3RlZCApIHsKCgkJdmFyIGksIGosIGN1ciwgaW5zdCwKCQkJaXRlbXMgPSBbXSwKCQkJcXVlcmllcyA9IFtdLAoJCQljb25uZWN0V2l0aCA9IHRoaXMuX2Nvbm5lY3RXaXRoKCk7CgoJCWlmICggY29ubmVjdFdpdGggJiYgY29ubmVjdGVkICkgewoJCQlmb3IgKCBpID0gY29ubmVjdFdpdGgubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0gKSB7CgkJCQljdXIgPSAkKCBjb25uZWN0V2l0aFsgaSBdLCB0aGlzLmRvY3VtZW50WyAwIF0gKTsKCQkJCWZvciAoIGogPSBjdXIubGVuZ3RoIC0gMTsgaiA+PSAwOyBqLS0gKSB7CgkJCQkJaW5zdCA9ICQuZGF0YSggY3VyWyBqIF0sIHRoaXMud2lkZ2V0RnVsbE5hbWUgKTsKCQkJCQlpZiAoIGluc3QgJiYgaW5zdCAhPT0gdGhpcyAmJiAhaW5zdC5vcHRpb25zLmRpc2FibGVkICkgewoJCQkJCQlxdWVyaWVzLnB1c2goIFsgJC5pc0Z1bmN0aW9uKCBpbnN0Lm9wdGlvbnMuaXRlbXMgKSA/CgkJCQkJCQlpbnN0Lm9wdGlvbnMuaXRlbXMuY2FsbCggaW5zdC5lbGVtZW50ICkgOgoJCQkJCQkJJCggaW5zdC5vcHRpb25zLml0ZW1zLCBpbnN0LmVsZW1lbnQgKQoJCQkJCQkJCS5ub3QoICIudWktc29ydGFibGUtaGVscGVyIiApCgkJCQkJCQkJLm5vdCggIi51aS1zb3J0YWJsZS1wbGFjZWhvbGRlciIgKSwgaW5zdCBdICk7CgkJCQkJfQoJCQkJfQoJCQl9CgkJfQoKCQlxdWVyaWVzLnB1c2goIFsgJC5pc0Z1bmN0aW9uKCB0aGlzLm9wdGlvbnMuaXRlbXMgKSA/CgkJCXRoaXMub3B0aW9ucy5pdGVtcwoJCQkJLmNhbGwoIHRoaXMuZWxlbWVudCwgbnVsbCwgeyBvcHRpb25zOiB0aGlzLm9wdGlvbnMsIGl0ZW06IHRoaXMuY3VycmVudEl0ZW0gfSApIDoKCQkJJCggdGhpcy5vcHRpb25zLml0ZW1zLCB0aGlzLmVsZW1lbnQgKQoJCQkJLm5vdCggIi51aS1zb3J0YWJsZS1oZWxwZXIiICkKCQkJCS5ub3QoICIudWktc29ydGFibGUtcGxhY2Vob2xkZXIiICksIHRoaXMgXSApOwoKCQlmdW5jdGlvbiBhZGRJdGVtcygpIHsKCQkJaXRlbXMucHVzaCggdGhpcyApOwoJCX0KCQlmb3IgKCBpID0gcXVlcmllcy5sZW5ndGggLSAxOyBpID49IDA7IGktLSApIHsKCQkJcXVlcmllc1sgaSBdWyAwIF0uZWFjaCggYWRkSXRlbXMgKTsKCQl9CgoJCXJldHVybiAkKCBpdGVtcyApOwoKCX0sCgoJX3JlbW92ZUN1cnJlbnRzRnJvbUl0ZW1zOiBmdW5jdGlvbigpIHsKCgkJdmFyIGxpc3QgPSB0aGlzLmN1cnJlbnRJdGVtLmZpbmQoICI6ZGF0YSgiICsgdGhpcy53aWRnZXROYW1lICsgIi1pdGVtKSIgKTsKCgkJdGhpcy5pdGVtcyA9ICQuZ3JlcCggdGhpcy5pdGVtcywgZnVuY3Rpb24oIGl0ZW0gKSB7CgkJCWZvciAoIHZhciBqID0gMDsgaiA8IGxpc3QubGVuZ3RoOyBqKysgKSB7CgkJCQlpZiAoIGxpc3RbIGogXSA9PT0gaXRlbS5pdGVtWyAwIF0gKSB7CgkJCQkJcmV0dXJuIGZhbHNlOwoJCQkJfQoJCQl9CgkJCXJldHVybiB0cnVlOwoJCX0gKTsKCgl9LAoKCV9yZWZyZXNoSXRlbXM6IGZ1bmN0aW9uKCBldmVudCApIHsKCgkJdGhpcy5pdGVtcyA9IFtdOwoJCXRoaXMuY29udGFpbmVycyA9IFsgdGhpcyBdOwoKCQl2YXIgaSwgaiwgY3VyLCBpbnN0LCB0YXJnZXREYXRhLCBfcXVlcmllcywgaXRlbSwgcXVlcmllc0xlbmd0aCwKCQkJaXRlbXMgPSB0aGlzLml0ZW1zLAoJCQlxdWVyaWVzID0gWyBbICQuaXNGdW5jdGlvbiggdGhpcy5vcHRpb25zLml0ZW1zICkgPwoJCQkJdGhpcy5vcHRpb25zLml0ZW1zLmNhbGwoIHRoaXMuZWxlbWVudFsgMCBdLCBldmVudCwgeyBpdGVtOiB0aGlzLmN1cnJlbnRJdGVtIH0gKSA6CgkJCQkkKCB0aGlzLm9wdGlvbnMuaXRlbXMsIHRoaXMuZWxlbWVudCApLCB0aGlzIF0gXSwKCQkJY29ubmVjdFdpdGggPSB0aGlzLl9jb25uZWN0V2l0aCgpOwoKCQkvL1Nob3VsZG4ndCBiZSBydW4gdGhlIGZpcnN0IHRpbWUgdGhyb3VnaCBkdWUgdG8gbWFzc2l2ZSBzbG93LWRvd24KCQlpZiAoIGNvbm5lY3RXaXRoICYmIHRoaXMucmVhZHkgKSB7CgkJCWZvciAoIGkgPSBjb25uZWN0V2l0aC5sZW5ndGggLSAxOyBpID49IDA7IGktLSApIHsKCQkJCWN1ciA9ICQoIGNvbm5lY3RXaXRoWyBpIF0sIHRoaXMuZG9jdW1lbnRbIDAgXSApOwoJCQkJZm9yICggaiA9IGN1ci5sZW5ndGggLSAxOyBqID49IDA7IGotLSApIHsKCQkJCQlpbnN0ID0gJC5kYXRhKCBjdXJbIGogXSwgdGhpcy53aWRnZXRGdWxsTmFtZSApOwoJCQkJCWlmICggaW5zdCAmJiBpbnN0ICE9PSB0aGlzICYmICFpbnN0Lm9wdGlvbnMuZGlzYWJsZWQgKSB7CgkJCQkJCXF1ZXJpZXMucHVzaCggWyAkLmlzRnVuY3Rpb24oIGluc3Qub3B0aW9ucy5pdGVtcyApID8KCQkJCQkJCWluc3Qub3B0aW9ucy5pdGVtcwoJCQkJCQkJCS5jYWxsKCBpbnN0LmVsZW1lbnRbIDAgXSwgZXZlbnQsIHsgaXRlbTogdGhpcy5jdXJyZW50SXRlbSB9ICkgOgoJCQkJCQkJJCggaW5zdC5vcHRpb25zLml0ZW1zLCBpbnN0LmVsZW1lbnQgKSwgaW5zdCBdICk7CgkJCQkJCXRoaXMuY29udGFpbmVycy5wdXNoKCBpbnN0ICk7CgkJCQkJfQoJCQkJfQoJCQl9CgkJfQoKCQlmb3IgKCBpID0gcXVlcmllcy5sZW5ndGggLSAxOyBpID49IDA7IGktLSApIHsKCQkJdGFyZ2V0RGF0YSA9IHF1ZXJpZXNbIGkgXVsgMSBdOwoJCQlfcXVlcmllcyA9IHF1ZXJpZXNbIGkgXVsgMCBdOwoKCQkJZm9yICggaiA9IDAsIHF1ZXJpZXNMZW5ndGggPSBfcXVlcmllcy5sZW5ndGg7IGogPCBxdWVyaWVzTGVuZ3RoOyBqKysgKSB7CgkJCQlpdGVtID0gJCggX3F1ZXJpZXNbIGogXSApOwoKCQkJCS8vIERhdGEgZm9yIHRhcmdldCBjaGVja2luZyAobW91c2UgbWFuYWdlcikKCQkJCWl0ZW0uZGF0YSggdGhpcy53aWRnZXROYW1lICsgIi1pdGVtIiwgdGFyZ2V0RGF0YSApOwoKCQkJCWl0ZW1zLnB1c2goIHsKCQkJCQlpdGVtOiBpdGVtLAoJCQkJCWluc3RhbmNlOiB0YXJnZXREYXRhLAoJCQkJCXdpZHRoOiAwLCBoZWlnaHQ6IDAsCgkJCQkJbGVmdDogMCwgdG9wOiAwCgkJCQl9ICk7CgkJCX0KCQl9CgoJfSwKCglyZWZyZXNoUG9zaXRpb25zOiBmdW5jdGlvbiggZmFzdCApIHsKCgkJLy8gRGV0ZXJtaW5lIHdoZXRoZXIgaXRlbXMgYXJlIGJlaW5nIGRpc3BsYXllZCBob3Jpem9udGFsbHkKCQl0aGlzLmZsb2F0aW5nID0gdGhpcy5pdGVtcy5sZW5ndGggPwoJCQl0aGlzLm9wdGlvbnMuYXhpcyA9PT0gIngiIHx8IHRoaXMuX2lzRmxvYXRpbmcoIHRoaXMuaXRlbXNbIDAgXS5pdGVtICkgOgoJCQlmYWxzZTsKCgkJLy9UaGlzIGhhcyB0byBiZSByZWRvbmUgYmVjYXVzZSBkdWUgdG8gdGhlIGl0ZW0gYmVpbmcgbW92ZWQgb3V0L2ludG8gdGhlIG9mZnNldFBhcmVudCwKCQkvLyB0aGUgb2Zmc2V0UGFyZW50J3MgcG9zaXRpb24gd2lsbCBjaGFuZ2UKCQlpZiAoIHRoaXMub2Zmc2V0UGFyZW50ICYmIHRoaXMuaGVscGVyICkgewoJCQl0aGlzLm9mZnNldC5wYXJlbnQgPSB0aGlzLl9nZXRQYXJlbnRPZmZzZXQoKTsKCQl9CgoJCXZhciBpLCBpdGVtLCB0LCBwOwoKCQlmb3IgKCBpID0gdGhpcy5pdGVtcy5sZW5ndGggLSAxOyBpID49IDA7IGktLSApIHsKCQkJaXRlbSA9IHRoaXMuaXRlbXNbIGkgXTsKCgkJCS8vV2UgaWdub3JlIGNhbGN1bGF0aW5nIHBvc2l0aW9ucyBvZiBhbGwgY29ubmVjdGVkIGNvbnRhaW5lcnMgd2hlbiB3ZSdyZSBub3Qgb3ZlciB0aGVtCgkJCWlmICggaXRlbS5pbnN0YW5jZSAhPT0gdGhpcy5jdXJyZW50Q29udGFpbmVyICYmIHRoaXMuY3VycmVudENvbnRhaW5lciAmJgoJCQkJCWl0ZW0uaXRlbVsgMCBdICE9PSB0aGlzLmN1cnJlbnRJdGVtWyAwIF0gKSB7CgkJCQljb250aW51ZTsKCQkJfQoKCQkJdCA9IHRoaXMub3B0aW9ucy50b2xlcmFuY2VFbGVtZW50ID8KCQkJCSQoIHRoaXMub3B0aW9ucy50b2xlcmFuY2VFbGVtZW50LCBpdGVtLml0ZW0gKSA6CgkJCQlpdGVtLml0ZW07CgoJCQlpZiAoICFmYXN0ICkgewoJCQkJaXRlbS53aWR0aCA9IHQub3V0ZXJXaWR0aCgpOwoJCQkJaXRlbS5oZWlnaHQgPSB0Lm91dGVySGVpZ2h0KCk7CgkJCX0KCgkJCXAgPSB0Lm9mZnNldCgpOwoJCQlpdGVtLmxlZnQgPSBwLmxlZnQ7CgkJCWl0ZW0udG9wID0gcC50b3A7CgkJfQoKCQlpZiAoIHRoaXMub3B0aW9ucy5jdXN0b20gJiYgdGhpcy5vcHRpb25zLmN1c3RvbS5yZWZyZXNoQ29udGFpbmVycyApIHsKCQkJdGhpcy5vcHRpb25zLmN1c3RvbS5yZWZyZXNoQ29udGFpbmVycy5jYWxsKCB0aGlzICk7CgkJfSBlbHNlIHsKCQkJZm9yICggaSA9IHRoaXMuY29udGFpbmVycy5sZW5ndGggLSAxOyBpID49IDA7IGktLSApIHsKCQkJCXAgPSB0aGlzLmNvbnRhaW5lcnNbIGkgXS5lbGVtZW50Lm9mZnNldCgpOwoJCQkJdGhpcy5jb250YWluZXJzWyBpIF0uY29udGFpbmVyQ2FjaGUubGVmdCA9IHAubGVmdDsKCQkJCXRoaXMuY29udGFpbmVyc1sgaSBdLmNvbnRhaW5lckNhY2hlLnRvcCA9IHAudG9wOwoJCQkJdGhpcy5jb250YWluZXJzWyBpIF0uY29udGFpbmVyQ2FjaGUud2lkdGggPQoJCQkJCXRoaXMuY29udGFpbmVyc1sgaSBdLmVsZW1lbnQub3V0ZXJXaWR0aCgpOwoJCQkJdGhpcy5jb250YWluZXJzWyBpIF0uY29udGFpbmVyQ2FjaGUuaGVpZ2h0ID0KCQkJCQl0aGlzLmNvbnRhaW5lcnNbIGkgXS5lbGVtZW50Lm91dGVySGVpZ2h0KCk7CgkJCX0KCQl9CgoJCXJldHVybiB0aGlzOwoJfSwKCglfY3JlYXRlUGxhY2Vob2xkZXI6IGZ1bmN0aW9uKCB0aGF0ICkgewoJCXRoYXQgPSB0aGF0IHx8IHRoaXM7CgkJdmFyIGNsYXNzTmFtZSwKCQkJbyA9IHRoYXQub3B0aW9uczsKCgkJaWYgKCAhby5wbGFjZWhvbGRlciB8fCBvLnBsYWNlaG9sZGVyLmNvbnN0cnVjdG9yID09PSBTdHJpbmcgKSB7CgkJCWNsYXNzTmFtZSA9IG8ucGxhY2Vob2xkZXI7CgkJCW8ucGxhY2Vob2xkZXIgPSB7CgkJCQllbGVtZW50OiBmdW5jdGlvbigpIHsKCgkJCQkJdmFyIG5vZGVOYW1lID0gdGhhdC5jdXJyZW50SXRlbVsgMCBdLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCksCgkJCQkJCWVsZW1lbnQgPSAkKCAiPCIgKyBub2RlTmFtZSArICI+IiwgdGhhdC5kb2N1bWVudFsgMCBdICk7CgoJCQkJCQl0aGF0Ll9hZGRDbGFzcyggZWxlbWVudCwgInVpLXNvcnRhYmxlLXBsYWNlaG9sZGVyIiwKCQkJCQkJCQljbGFzc05hbWUgfHwgdGhhdC5jdXJyZW50SXRlbVsgMCBdLmNsYXNzTmFtZSApCgkJCQkJCQkuX3JlbW92ZUNsYXNzKCBlbGVtZW50LCAidWktc29ydGFibGUtaGVscGVyIiApOwoKCQkJCQlpZiAoIG5vZGVOYW1lID09PSAidGJvZHkiICkgewoJCQkJCQl0aGF0Ll9jcmVhdGVUclBsYWNlaG9sZGVyKAoJCQkJCQkJdGhhdC5jdXJyZW50SXRlbS5maW5kKCAidHIiICkuZXEoIDAgKSwKCQkJCQkJCSQoICI8dHI+IiwgdGhhdC5kb2N1bWVudFsgMCBdICkuYXBwZW5kVG8oIGVsZW1lbnQgKQoJCQkJCQkpOwoJCQkJCX0gZWxzZSBpZiAoIG5vZGVOYW1lID09PSAidHIiICkgewoJCQkJCQl0aGF0Ll9jcmVhdGVUclBsYWNlaG9sZGVyKCB0aGF0LmN1cnJlbnRJdGVtLCBlbGVtZW50ICk7CgkJCQkJfSBlbHNlIGlmICggbm9kZU5hbWUgPT09ICJpbWciICkgewoJCQkJCQllbGVtZW50LmF0dHIoICJzcmMiLCB0aGF0LmN1cnJlbnRJdGVtLmF0dHIoICJzcmMiICkgKTsKCQkJCQl9CgoJCQkJCWlmICggIWNsYXNzTmFtZSApIHsKCQkJCQkJZWxlbWVudC5jc3MoICJ2aXNpYmlsaXR5IiwgImhpZGRlbiIgKTsKCQkJCQl9CgoJCQkJCXJldHVybiBlbGVtZW50OwoJCQkJfSwKCQkJCXVwZGF0ZTogZnVuY3Rpb24oIGNvbnRhaW5lciwgcCApIHsKCgkJCQkJLy8gMS4gSWYgYSBjbGFzc05hbWUgaXMgc2V0IGFzICdwbGFjZWhvbGRlciBvcHRpb24sIHdlIGRvbid0IGZvcmNlIHNpemVzIC0KCQkJCQkvLyB0aGUgY2xhc3MgaXMgcmVzcG9uc2libGUgZm9yIHRoYXQKCQkJCQkvLyAyLiBUaGUgb3B0aW9uICdmb3JjZVBsYWNlaG9sZGVyU2l6ZSBjYW4gYmUgZW5hYmxlZCB0byBmb3JjZSBpdCBldmVuIGlmIGEKCQkJCQkvLyBjbGFzcyBuYW1lIGlzIHNwZWNpZmllZAoJCQkJCWlmICggY2xhc3NOYW1lICYmICFvLmZvcmNlUGxhY2Vob2xkZXJTaXplICkgewoJCQkJCQlyZXR1cm47CgkJCQkJfQoKCQkJCQkvL0lmIHRoZSBlbGVtZW50IGRvZXNuJ3QgaGF2ZSBhIGFjdHVhbCBoZWlnaHQgYnkgaXRzZWxmICh3aXRob3V0IHN0eWxlcyBjb21pbmcKCQkJCQkvLyBmcm9tIGEgc3R5bGVzaGVldCksIGl0IHJlY2VpdmVzIHRoZSBpbmxpbmUgaGVpZ2h0IGZyb20gdGhlIGRyYWdnZWQgaXRlbQoJCQkJCWlmICggIXAuaGVpZ2h0KCkgKSB7CgkJCQkJCXAuaGVpZ2h0KAoJCQkJCQkJdGhhdC5jdXJyZW50SXRlbS5pbm5lckhlaWdodCgpIC0KCQkJCQkJCXBhcnNlSW50KCB0aGF0LmN1cnJlbnRJdGVtLmNzcyggInBhZGRpbmdUb3AiICkgfHwgMCwgMTAgKSAtCgkJCQkJCQlwYXJzZUludCggdGhhdC5jdXJyZW50SXRlbS5jc3MoICJwYWRkaW5nQm90dG9tIiApIHx8IDAsIDEwICkgKTsKCQkJCQl9CgkJCQkJaWYgKCAhcC53aWR0aCgpICkgewoJCQkJCQlwLndpZHRoKAoJCQkJCQkJdGhhdC5jdXJyZW50SXRlbS5pbm5lcldpZHRoKCkgLQoJCQkJCQkJcGFyc2VJbnQoIHRoYXQuY3VycmVudEl0ZW0uY3NzKCAicGFkZGluZ0xlZnQiICkgfHwgMCwgMTAgKSAtCgkJCQkJCQlwYXJzZUludCggdGhhdC5jdXJyZW50SXRlbS5jc3MoICJwYWRkaW5nUmlnaHQiICkgfHwgMCwgMTAgKSApOwoJCQkJCX0KCQkJCX0KCQkJfTsKCQl9CgoJCS8vQ3JlYXRlIHRoZSBwbGFjZWhvbGRlcgoJCXRoYXQucGxhY2Vob2xkZXIgPSAkKCBvLnBsYWNlaG9sZGVyLmVsZW1lbnQuY2FsbCggdGhhdC5lbGVtZW50LCB0aGF0LmN1cnJlbnRJdGVtICkgKTsKCgkJLy9BcHBlbmQgaXQgYWZ0ZXIgdGhlIGFjdHVhbCBjdXJyZW50IGl0ZW0KCQl0aGF0LmN1cnJlbnRJdGVtLmFmdGVyKCB0aGF0LnBsYWNlaG9sZGVyICk7CgoJCS8vVXBkYXRlIHRoZSBzaXplIG9mIHRoZSBwbGFjZWhvbGRlciAoVE9ETzogTG9naWMgdG8gZnV6enksIHNlZSBsaW5lIDMxNi8zMTcpCgkJby5wbGFjZWhvbGRlci51cGRhdGUoIHRoYXQsIHRoYXQucGxhY2Vob2xkZXIgKTsKCgl9LAoKCV9jcmVhdGVUclBsYWNlaG9sZGVyOiBmdW5jdGlvbiggc291cmNlVHIsIHRhcmdldFRyICkgewoJCXZhciB0aGF0ID0gdGhpczsKCgkJc291cmNlVHIuY2hpbGRyZW4oKS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJJCggIjx0ZD4mIzE2MDs8L3RkPiIsIHRoYXQuZG9jdW1lbnRbIDAgXSApCgkJCQkuYXR0ciggImNvbHNwYW4iLCAkKCB0aGlzICkuYXR0ciggImNvbHNwYW4iICkgfHwgMSApCgkJCQkuYXBwZW5kVG8oIHRhcmdldFRyICk7CgkJfSApOwoJfSwKCglfY29udGFjdENvbnRhaW5lcnM6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgaSwgaiwgZGlzdCwgaXRlbVdpdGhMZWFzdERpc3RhbmNlLCBwb3NQcm9wZXJ0eSwgc2l6ZVByb3BlcnR5LCBjdXIsIG5lYXJCb3R0b20sCgkJCWZsb2F0aW5nLCBheGlzLAoJCQlpbm5lcm1vc3RDb250YWluZXIgPSBudWxsLAoJCQlpbm5lcm1vc3RJbmRleCA9IG51bGw7CgoJCS8vIEdldCBpbm5lcm1vc3QgY29udGFpbmVyIHRoYXQgaW50ZXJzZWN0cyB3aXRoIGl0ZW0KCQlmb3IgKCBpID0gdGhpcy5jb250YWluZXJzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tICkgewoKCQkJLy8gTmV2ZXIgY29uc2lkZXIgYSBjb250YWluZXIgdGhhdCdzIGxvY2F0ZWQgd2l0aGluIHRoZSBpdGVtIGl0c2VsZgoJCQlpZiAoICQuY29udGFpbnMoIHRoaXMuY3VycmVudEl0ZW1bIDAgXSwgdGhpcy5jb250YWluZXJzWyBpIF0uZWxlbWVudFsgMCBdICkgKSB7CgkJCQljb250aW51ZTsKCQkJfQoKCQkJaWYgKCB0aGlzLl9pbnRlcnNlY3RzV2l0aCggdGhpcy5jb250YWluZXJzWyBpIF0uY29udGFpbmVyQ2FjaGUgKSApIHsKCgkJCQkvLyBJZiB3ZSd2ZSBhbHJlYWR5IGZvdW5kIGEgY29udGFpbmVyIGFuZCBpdCdzIG1vcmUgImlubmVyIiB0aGFuIHRoaXMsIHRoZW4gY29udGludWUKCQkJCWlmICggaW5uZXJtb3N0Q29udGFpbmVyICYmCgkJCQkJCSQuY29udGFpbnMoCgkJCQkJCQl0aGlzLmNvbnRhaW5lcnNbIGkgXS5lbGVtZW50WyAwIF0sCgkJCQkJCQlpbm5lcm1vc3RDb250YWluZXIuZWxlbWVudFsgMCBdICkgKSB7CgkJCQkJY29udGludWU7CgkJCQl9CgoJCQkJaW5uZXJtb3N0Q29udGFpbmVyID0gdGhpcy5jb250YWluZXJzWyBpIF07CgkJCQlpbm5lcm1vc3RJbmRleCA9IGk7CgoJCQl9IGVsc2UgewoKCQkJCS8vIGNvbnRhaW5lciBkb2Vzbid0IGludGVyc2VjdC4gdHJpZ2dlciAib3V0IiBldmVudCBpZiBuZWNlc3NhcnkKCQkJCWlmICggdGhpcy5jb250YWluZXJzWyBpIF0uY29udGFpbmVyQ2FjaGUub3ZlciApIHsKCQkJCQl0aGlzLmNvbnRhaW5lcnNbIGkgXS5fdHJpZ2dlciggIm91dCIsIGV2ZW50LCB0aGlzLl91aUhhc2goIHRoaXMgKSApOwoJCQkJCXRoaXMuY29udGFpbmVyc1sgaSBdLmNvbnRhaW5lckNhY2hlLm92ZXIgPSAwOwoJCQkJfQoJCQl9CgoJCX0KCgkJLy8gSWYgbm8gaW50ZXJzZWN0aW5nIGNvbnRhaW5lcnMgZm91bmQsIHJldHVybgoJCWlmICggIWlubmVybW9zdENvbnRhaW5lciApIHsKCQkJcmV0dXJuOwoJCX0KCgkJLy8gTW92ZSB0aGUgaXRlbSBpbnRvIHRoZSBjb250YWluZXIgaWYgaXQncyBub3QgdGhlcmUgYWxyZWFkeQoJCWlmICggdGhpcy5jb250YWluZXJzLmxlbmd0aCA9PT0gMSApIHsKCQkJaWYgKCAhdGhpcy5jb250YWluZXJzWyBpbm5lcm1vc3RJbmRleCBdLmNvbnRhaW5lckNhY2hlLm92ZXIgKSB7CgkJCQl0aGlzLmNvbnRhaW5lcnNbIGlubmVybW9zdEluZGV4IF0uX3RyaWdnZXIoICJvdmVyIiwgZXZlbnQsIHRoaXMuX3VpSGFzaCggdGhpcyApICk7CgkJCQl0aGlzLmNvbnRhaW5lcnNbIGlubmVybW9zdEluZGV4IF0uY29udGFpbmVyQ2FjaGUub3ZlciA9IDE7CgkJCX0KCQl9IGVsc2UgewoKCQkJLy8gV2hlbiBlbnRlcmluZyBhIG5ldyBjb250YWluZXIsIHdlIHdpbGwgZmluZCB0aGUgaXRlbSB3aXRoIHRoZSBsZWFzdCBkaXN0YW5jZSBhbmQKCQkJLy8gYXBwZW5kIG91ciBpdGVtIG5lYXIgaXQKCQkJZGlzdCA9IDEwMDAwOwoJCQlpdGVtV2l0aExlYXN0RGlzdGFuY2UgPSBudWxsOwoJCQlmbG9hdGluZyA9IGlubmVybW9zdENvbnRhaW5lci5mbG9hdGluZyB8fCB0aGlzLl9pc0Zsb2F0aW5nKCB0aGlzLmN1cnJlbnRJdGVtICk7CgkJCXBvc1Byb3BlcnR5ID0gZmxvYXRpbmcgPyAibGVmdCIgOiAidG9wIjsKCQkJc2l6ZVByb3BlcnR5ID0gZmxvYXRpbmcgPyAid2lkdGgiIDogImhlaWdodCI7CgkJCWF4aXMgPSBmbG9hdGluZyA/ICJwYWdlWCIgOiAicGFnZVkiOwoKCQkJZm9yICggaiA9IHRoaXMuaXRlbXMubGVuZ3RoIC0gMTsgaiA+PSAwOyBqLS0gKSB7CgkJCQlpZiAoICEkLmNvbnRhaW5zKAoJCQkJCQl0aGlzLmNvbnRhaW5lcnNbIGlubmVybW9zdEluZGV4IF0uZWxlbWVudFsgMCBdLCB0aGlzLml0ZW1zWyBqIF0uaXRlbVsgMCBdICkKCQkJCSkgewoJCQkJCWNvbnRpbnVlOwoJCQkJfQoJCQkJaWYgKCB0aGlzLml0ZW1zWyBqIF0uaXRlbVsgMCBdID09PSB0aGlzLmN1cnJlbnRJdGVtWyAwIF0gKSB7CgkJCQkJY29udGludWU7CgkJCQl9CgoJCQkJY3VyID0gdGhpcy5pdGVtc1sgaiBdLml0ZW0ub2Zmc2V0KClbIHBvc1Byb3BlcnR5IF07CgkJCQluZWFyQm90dG9tID0gZmFsc2U7CgkJCQlpZiAoIGV2ZW50WyBheGlzIF0gLSBjdXIgPiB0aGlzLml0ZW1zWyBqIF1bIHNpemVQcm9wZXJ0eSBdIC8gMiApIHsKCQkJCQluZWFyQm90dG9tID0gdHJ1ZTsKCQkJCX0KCgkJCQlpZiAoIE1hdGguYWJzKCBldmVudFsgYXhpcyBdIC0gY3VyICkgPCBkaXN0ICkgewoJCQkJCWRpc3QgPSBNYXRoLmFicyggZXZlbnRbIGF4aXMgXSAtIGN1ciApOwoJCQkJCWl0ZW1XaXRoTGVhc3REaXN0YW5jZSA9IHRoaXMuaXRlbXNbIGogXTsKCQkJCQl0aGlzLmRpcmVjdGlvbiA9IG5lYXJCb3R0b20gPyAidXAiIDogImRvd24iOwoJCQkJfQoJCQl9CgoJCQkvL0NoZWNrIGlmIGRyb3BPbkVtcHR5IGlzIGVuYWJsZWQKCQkJaWYgKCAhaXRlbVdpdGhMZWFzdERpc3RhbmNlICYmICF0aGlzLm9wdGlvbnMuZHJvcE9uRW1wdHkgKSB7CgkJCQlyZXR1cm47CgkJCX0KCgkJCWlmICggdGhpcy5jdXJyZW50Q29udGFpbmVyID09PSB0aGlzLmNvbnRhaW5lcnNbIGlubmVybW9zdEluZGV4IF0gKSB7CgkJCQlpZiAoICF0aGlzLmN1cnJlbnRDb250YWluZXIuY29udGFpbmVyQ2FjaGUub3ZlciApIHsKCQkJCQl0aGlzLmNvbnRhaW5lcnNbIGlubmVybW9zdEluZGV4IF0uX3RyaWdnZXIoICJvdmVyIiwgZXZlbnQsIHRoaXMuX3VpSGFzaCgpICk7CgkJCQkJdGhpcy5jdXJyZW50Q29udGFpbmVyLmNvbnRhaW5lckNhY2hlLm92ZXIgPSAxOwoJCQkJfQoJCQkJcmV0dXJuOwoJCQl9CgoJCQlpdGVtV2l0aExlYXN0RGlzdGFuY2UgPwoJCQkJdGhpcy5fcmVhcnJhbmdlKCBldmVudCwgaXRlbVdpdGhMZWFzdERpc3RhbmNlLCBudWxsLCB0cnVlICkgOgoJCQkJdGhpcy5fcmVhcnJhbmdlKCBldmVudCwgbnVsbCwgdGhpcy5jb250YWluZXJzWyBpbm5lcm1vc3RJbmRleCBdLmVsZW1lbnQsIHRydWUgKTsKCQkJdGhpcy5fdHJpZ2dlciggImNoYW5nZSIsIGV2ZW50LCB0aGlzLl91aUhhc2goKSApOwoJCQl0aGlzLmNvbnRhaW5lcnNbIGlubmVybW9zdEluZGV4IF0uX3RyaWdnZXIoICJjaGFuZ2UiLCBldmVudCwgdGhpcy5fdWlIYXNoKCB0aGlzICkgKTsKCQkJdGhpcy5jdXJyZW50Q29udGFpbmVyID0gdGhpcy5jb250YWluZXJzWyBpbm5lcm1vc3RJbmRleCBdOwoKCQkJLy9VcGRhdGUgdGhlIHBsYWNlaG9sZGVyCgkJCXRoaXMub3B0aW9ucy5wbGFjZWhvbGRlci51cGRhdGUoIHRoaXMuY3VycmVudENvbnRhaW5lciwgdGhpcy5wbGFjZWhvbGRlciApOwoKCQkJdGhpcy5jb250YWluZXJzWyBpbm5lcm1vc3RJbmRleCBdLl90cmlnZ2VyKCAib3ZlciIsIGV2ZW50LCB0aGlzLl91aUhhc2goIHRoaXMgKSApOwoJCQl0aGlzLmNvbnRhaW5lcnNbIGlubmVybW9zdEluZGV4IF0uY29udGFpbmVyQ2FjaGUub3ZlciA9IDE7CgkJfQoKCX0sCgoJX2NyZWF0ZUhlbHBlcjogZnVuY3Rpb24oIGV2ZW50ICkgewoKCQl2YXIgbyA9IHRoaXMub3B0aW9ucywKCQkJaGVscGVyID0gJC5pc0Z1bmN0aW9uKCBvLmhlbHBlciApID8KCQkJCSQoIG8uaGVscGVyLmFwcGx5KCB0aGlzLmVsZW1lbnRbIDAgXSwgWyBldmVudCwgdGhpcy5jdXJyZW50SXRlbSBdICkgKSA6CgkJCQkoIG8uaGVscGVyID09PSAiY2xvbmUiID8gdGhpcy5jdXJyZW50SXRlbS5jbG9uZSgpIDogdGhpcy5jdXJyZW50SXRlbSApOwoKCQkvL0FkZCB0aGUgaGVscGVyIHRvIHRoZSBET00gaWYgdGhhdCBkaWRuJ3QgaGFwcGVuIGFscmVhZHkKCQlpZiAoICFoZWxwZXIucGFyZW50cyggImJvZHkiICkubGVuZ3RoICkgewoJCQkkKCBvLmFwcGVuZFRvICE9PSAicGFyZW50IiA/CgkJCQlvLmFwcGVuZFRvIDoKCQkJCXRoaXMuY3VycmVudEl0ZW1bIDAgXS5wYXJlbnROb2RlIClbIDAgXS5hcHBlbmRDaGlsZCggaGVscGVyWyAwIF0gKTsKCQl9CgoJCWlmICggaGVscGVyWyAwIF0gPT09IHRoaXMuY3VycmVudEl0ZW1bIDAgXSApIHsKCQkJdGhpcy5fc3RvcmVkQ1NTID0gewoJCQkJd2lkdGg6IHRoaXMuY3VycmVudEl0ZW1bIDAgXS5zdHlsZS53aWR0aCwKCQkJCWhlaWdodDogdGhpcy5jdXJyZW50SXRlbVsgMCBdLnN0eWxlLmhlaWdodCwKCQkJCXBvc2l0aW9uOiB0aGlzLmN1cnJlbnRJdGVtLmNzcyggInBvc2l0aW9uIiApLAoJCQkJdG9wOiB0aGlzLmN1cnJlbnRJdGVtLmNzcyggInRvcCIgKSwKCQkJCWxlZnQ6IHRoaXMuY3VycmVudEl0ZW0uY3NzKCAibGVmdCIgKQoJCQl9OwoJCX0KCgkJaWYgKCAhaGVscGVyWyAwIF0uc3R5bGUud2lkdGggfHwgby5mb3JjZUhlbHBlclNpemUgKSB7CgkJCWhlbHBlci53aWR0aCggdGhpcy5jdXJyZW50SXRlbS53aWR0aCgpICk7CgkJfQoJCWlmICggIWhlbHBlclsgMCBdLnN0eWxlLmhlaWdodCB8fCBvLmZvcmNlSGVscGVyU2l6ZSApIHsKCQkJaGVscGVyLmhlaWdodCggdGhpcy5jdXJyZW50SXRlbS5oZWlnaHQoKSApOwoJCX0KCgkJcmV0dXJuIGhlbHBlcjsKCgl9LAoKCV9hZGp1c3RPZmZzZXRGcm9tSGVscGVyOiBmdW5jdGlvbiggb2JqICkgewoJCWlmICggdHlwZW9mIG9iaiA9PT0gInN0cmluZyIgKSB7CgkJCW9iaiA9IG9iai5zcGxpdCggIiAiICk7CgkJfQoJCWlmICggJC5pc0FycmF5KCBvYmogKSApIHsKCQkJb2JqID0geyBsZWZ0OiArb2JqWyAwIF0sIHRvcDogK29ialsgMSBdIHx8IDAgfTsKCQl9CgkJaWYgKCAibGVmdCIgaW4gb2JqICkgewoJCQl0aGlzLm9mZnNldC5jbGljay5sZWZ0ID0gb2JqLmxlZnQgKyB0aGlzLm1hcmdpbnMubGVmdDsKCQl9CgkJaWYgKCAicmlnaHQiIGluIG9iaiApIHsKCQkJdGhpcy5vZmZzZXQuY2xpY2subGVmdCA9IHRoaXMuaGVscGVyUHJvcG9ydGlvbnMud2lkdGggLSBvYmoucmlnaHQgKyB0aGlzLm1hcmdpbnMubGVmdDsKCQl9CgkJaWYgKCAidG9wIiBpbiBvYmogKSB7CgkJCXRoaXMub2Zmc2V0LmNsaWNrLnRvcCA9IG9iai50b3AgKyB0aGlzLm1hcmdpbnMudG9wOwoJCX0KCQlpZiAoICJib3R0b20iIGluIG9iaiApIHsKCQkJdGhpcy5vZmZzZXQuY2xpY2sudG9wID0gdGhpcy5oZWxwZXJQcm9wb3J0aW9ucy5oZWlnaHQgLSBvYmouYm90dG9tICsgdGhpcy5tYXJnaW5zLnRvcDsKCQl9Cgl9LAoKCV9nZXRQYXJlbnRPZmZzZXQ6IGZ1bmN0aW9uKCkgewoKCQkvL0dldCB0aGUgb2Zmc2V0UGFyZW50IGFuZCBjYWNoZSBpdHMgcG9zaXRpb24KCQl0aGlzLm9mZnNldFBhcmVudCA9IHRoaXMuaGVscGVyLm9mZnNldFBhcmVudCgpOwoJCXZhciBwbyA9IHRoaXMub2Zmc2V0UGFyZW50Lm9mZnNldCgpOwoKCQkvLyBUaGlzIGlzIGEgc3BlY2lhbCBjYXNlIHdoZXJlIHdlIG5lZWQgdG8gbW9kaWZ5IGEgb2Zmc2V0IGNhbGN1bGF0ZWQgb24gc3RhcnQsIHNpbmNlIHRoZQoJCS8vIGZvbGxvd2luZyBoYXBwZW5lZDoKCQkvLyAxLiBUaGUgcG9zaXRpb24gb2YgdGhlIGhlbHBlciBpcyBhYnNvbHV0ZSwgc28gaXQncyBwb3NpdGlvbiBpcyBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZQoJCS8vIG5leHQgcG9zaXRpb25lZCBwYXJlbnQKCQkvLyAyLiBUaGUgYWN0dWFsIG9mZnNldCBwYXJlbnQgaXMgYSBjaGlsZCBvZiB0aGUgc2Nyb2xsIHBhcmVudCwgYW5kIHRoZSBzY3JvbGwgcGFyZW50IGlzbid0CgkJLy8gdGhlIGRvY3VtZW50LCB3aGljaCBtZWFucyB0aGF0IHRoZSBzY3JvbGwgaXMgaW5jbHVkZWQgaW4gdGhlIGluaXRpYWwgY2FsY3VsYXRpb24gb2YgdGhlCgkJLy8gb2Zmc2V0IG9mIHRoZSBwYXJlbnQsIGFuZCBuZXZlciByZWNhbGN1bGF0ZWQgdXBvbiBkcmFnCgkJaWYgKCB0aGlzLmNzc1Bvc2l0aW9uID09PSAiYWJzb2x1dGUiICYmIHRoaXMuc2Nyb2xsUGFyZW50WyAwIF0gIT09IHRoaXMuZG9jdW1lbnRbIDAgXSAmJgoJCQkJJC5jb250YWlucyggdGhpcy5zY3JvbGxQYXJlbnRbIDAgXSwgdGhpcy5vZmZzZXRQYXJlbnRbIDAgXSApICkgewoJCQlwby5sZWZ0ICs9IHRoaXMuc2Nyb2xsUGFyZW50LnNjcm9sbExlZnQoKTsKCQkJcG8udG9wICs9IHRoaXMuc2Nyb2xsUGFyZW50LnNjcm9sbFRvcCgpOwoJCX0KCgkJLy8gVGhpcyBuZWVkcyB0byBiZSBhY3R1YWxseSBkb25lIGZvciBhbGwgYnJvd3NlcnMsIHNpbmNlIHBhZ2VYL3BhZ2VZIGluY2x1ZGVzIHRoaXMKCQkvLyBpbmZvcm1hdGlvbiB3aXRoIGFuIHVnbHkgSUUgZml4CgkJaWYgKCB0aGlzLm9mZnNldFBhcmVudFsgMCBdID09PSB0aGlzLmRvY3VtZW50WyAwIF0uYm9keSB8fAoJCQkJKCB0aGlzLm9mZnNldFBhcmVudFsgMCBdLnRhZ05hbWUgJiYKCQkJCXRoaXMub2Zmc2V0UGFyZW50WyAwIF0udGFnTmFtZS50b0xvd2VyQ2FzZSgpID09PSAiaHRtbCIgJiYgJC51aS5pZSApICkgewoJCQlwbyA9IHsgdG9wOiAwLCBsZWZ0OiAwIH07CgkJfQoKCQlyZXR1cm4gewoJCQl0b3A6IHBvLnRvcCArICggcGFyc2VJbnQoIHRoaXMub2Zmc2V0UGFyZW50LmNzcyggImJvcmRlclRvcFdpZHRoIiApLCAxMCApIHx8IDAgKSwKCQkJbGVmdDogcG8ubGVmdCArICggcGFyc2VJbnQoIHRoaXMub2Zmc2V0UGFyZW50LmNzcyggImJvcmRlckxlZnRXaWR0aCIgKSwgMTAgKSB8fCAwICkKCQl9OwoKCX0sCgoJX2dldFJlbGF0aXZlT2Zmc2V0OiBmdW5jdGlvbigpIHsKCgkJaWYgKCB0aGlzLmNzc1Bvc2l0aW9uID09PSAicmVsYXRpdmUiICkgewoJCQl2YXIgcCA9IHRoaXMuY3VycmVudEl0ZW0ucG9zaXRpb24oKTsKCQkJcmV0dXJuIHsKCQkJCXRvcDogcC50b3AgLSAoIHBhcnNlSW50KCB0aGlzLmhlbHBlci5jc3MoICJ0b3AiICksIDEwICkgfHwgMCApICsKCQkJCQl0aGlzLnNjcm9sbFBhcmVudC5zY3JvbGxUb3AoKSwKCQkJCWxlZnQ6IHAubGVmdCAtICggcGFyc2VJbnQoIHRoaXMuaGVscGVyLmNzcyggImxlZnQiICksIDEwICkgfHwgMCApICsKCQkJCQl0aGlzLnNjcm9sbFBhcmVudC5zY3JvbGxMZWZ0KCkKCQkJfTsKCQl9IGVsc2UgewoJCQlyZXR1cm4geyB0b3A6IDAsIGxlZnQ6IDAgfTsKCQl9CgoJfSwKCglfY2FjaGVNYXJnaW5zOiBmdW5jdGlvbigpIHsKCQl0aGlzLm1hcmdpbnMgPSB7CgkJCWxlZnQ6ICggcGFyc2VJbnQoIHRoaXMuY3VycmVudEl0ZW0uY3NzKCAibWFyZ2luTGVmdCIgKSwgMTAgKSB8fCAwICksCgkJCXRvcDogKCBwYXJzZUludCggdGhpcy5jdXJyZW50SXRlbS5jc3MoICJtYXJnaW5Ub3AiICksIDEwICkgfHwgMCApCgkJfTsKCX0sCgoJX2NhY2hlSGVscGVyUHJvcG9ydGlvbnM6IGZ1bmN0aW9uKCkgewoJCXRoaXMuaGVscGVyUHJvcG9ydGlvbnMgPSB7CgkJCXdpZHRoOiB0aGlzLmhlbHBlci5vdXRlcldpZHRoKCksCgkJCWhlaWdodDogdGhpcy5oZWxwZXIub3V0ZXJIZWlnaHQoKQoJCX07Cgl9LAoKCV9zZXRDb250YWlubWVudDogZnVuY3Rpb24oKSB7CgoJCXZhciBjZSwgY28sIG92ZXIsCgkJCW8gPSB0aGlzLm9wdGlvbnM7CgkJaWYgKCBvLmNvbnRhaW5tZW50ID09PSAicGFyZW50IiApIHsKCQkJby5jb250YWlubWVudCA9IHRoaXMuaGVscGVyWyAwIF0ucGFyZW50Tm9kZTsKCQl9CgkJaWYgKCBvLmNvbnRhaW5tZW50ID09PSAiZG9jdW1lbnQiIHx8IG8uY29udGFpbm1lbnQgPT09ICJ3aW5kb3ciICkgewoJCQl0aGlzLmNvbnRhaW5tZW50ID0gWwoJCQkJMCAtIHRoaXMub2Zmc2V0LnJlbGF0aXZlLmxlZnQgLSB0aGlzLm9mZnNldC5wYXJlbnQubGVmdCwKCQkJCTAgLSB0aGlzLm9mZnNldC5yZWxhdGl2ZS50b3AgLSB0aGlzLm9mZnNldC5wYXJlbnQudG9wLAoJCQkJby5jb250YWlubWVudCA9PT0gImRvY3VtZW50IiA/CgkJCQkJdGhpcy5kb2N1bWVudC53aWR0aCgpIDoKCQkJCQl0aGlzLndpbmRvdy53aWR0aCgpIC0gdGhpcy5oZWxwZXJQcm9wb3J0aW9ucy53aWR0aCAtIHRoaXMubWFyZ2lucy5sZWZ0LAoJCQkJKCBvLmNvbnRhaW5tZW50ID09PSAiZG9jdW1lbnQiID8KCQkJCQkoIHRoaXMuZG9jdW1lbnQuaGVpZ2h0KCkgfHwgZG9jdW1lbnQuYm9keS5wYXJlbnROb2RlLnNjcm9sbEhlaWdodCApIDoKCQkJCQl0aGlzLndpbmRvdy5oZWlnaHQoKSB8fCB0aGlzLmRvY3VtZW50WyAwIF0uYm9keS5wYXJlbnROb2RlLnNjcm9sbEhlaWdodAoJCQkJKSAtIHRoaXMuaGVscGVyUHJvcG9ydGlvbnMuaGVpZ2h0IC0gdGhpcy5tYXJnaW5zLnRvcAoJCQldOwoJCX0KCgkJaWYgKCAhKCAvXihkb2N1bWVudHx3aW5kb3d8cGFyZW50KSQvICkudGVzdCggby5jb250YWlubWVudCApICkgewoJCQljZSA9ICQoIG8uY29udGFpbm1lbnQgKVsgMCBdOwoJCQljbyA9ICQoIG8uY29udGFpbm1lbnQgKS5vZmZzZXQoKTsKCQkJb3ZlciA9ICggJCggY2UgKS5jc3MoICJvdmVyZmxvdyIgKSAhPT0gImhpZGRlbiIgKTsKCgkJCXRoaXMuY29udGFpbm1lbnQgPSBbCgkJCQljby5sZWZ0ICsgKCBwYXJzZUludCggJCggY2UgKS5jc3MoICJib3JkZXJMZWZ0V2lkdGgiICksIDEwICkgfHwgMCApICsKCQkJCQkoIHBhcnNlSW50KCAkKCBjZSApLmNzcyggInBhZGRpbmdMZWZ0IiApLCAxMCApIHx8IDAgKSAtIHRoaXMubWFyZ2lucy5sZWZ0LAoJCQkJY28udG9wICsgKCBwYXJzZUludCggJCggY2UgKS5jc3MoICJib3JkZXJUb3BXaWR0aCIgKSwgMTAgKSB8fCAwICkgKwoJCQkJCSggcGFyc2VJbnQoICQoIGNlICkuY3NzKCAicGFkZGluZ1RvcCIgKSwgMTAgKSB8fCAwICkgLSB0aGlzLm1hcmdpbnMudG9wLAoJCQkJY28ubGVmdCArICggb3ZlciA/IE1hdGgubWF4KCBjZS5zY3JvbGxXaWR0aCwgY2Uub2Zmc2V0V2lkdGggKSA6IGNlLm9mZnNldFdpZHRoICkgLQoJCQkJCSggcGFyc2VJbnQoICQoIGNlICkuY3NzKCAiYm9yZGVyTGVmdFdpZHRoIiApLCAxMCApIHx8IDAgKSAtCgkJCQkJKCBwYXJzZUludCggJCggY2UgKS5jc3MoICJwYWRkaW5nUmlnaHQiICksIDEwICkgfHwgMCApIC0KCQkJCQl0aGlzLmhlbHBlclByb3BvcnRpb25zLndpZHRoIC0gdGhpcy5tYXJnaW5zLmxlZnQsCgkJCQljby50b3AgKyAoIG92ZXIgPyBNYXRoLm1heCggY2Uuc2Nyb2xsSGVpZ2h0LCBjZS5vZmZzZXRIZWlnaHQgKSA6IGNlLm9mZnNldEhlaWdodCApIC0KCQkJCQkoIHBhcnNlSW50KCAkKCBjZSApLmNzcyggImJvcmRlclRvcFdpZHRoIiApLCAxMCApIHx8IDAgKSAtCgkJCQkJKCBwYXJzZUludCggJCggY2UgKS5jc3MoICJwYWRkaW5nQm90dG9tIiApLCAxMCApIHx8IDAgKSAtCgkJCQkJdGhpcy5oZWxwZXJQcm9wb3J0aW9ucy5oZWlnaHQgLSB0aGlzLm1hcmdpbnMudG9wCgkJCV07CgkJfQoKCX0sCgoJX2NvbnZlcnRQb3NpdGlvblRvOiBmdW5jdGlvbiggZCwgcG9zICkgewoKCQlpZiAoICFwb3MgKSB7CgkJCXBvcyA9IHRoaXMucG9zaXRpb247CgkJfQoJCXZhciBtb2QgPSBkID09PSAiYWJzb2x1dGUiID8gMSA6IC0xLAoJCQlzY3JvbGwgPSB0aGlzLmNzc1Bvc2l0aW9uID09PSAiYWJzb2x1dGUiICYmCgkJCQkhKCB0aGlzLnNjcm9sbFBhcmVudFsgMCBdICE9PSB0aGlzLmRvY3VtZW50WyAwIF0gJiYKCQkJCSQuY29udGFpbnMoIHRoaXMuc2Nyb2xsUGFyZW50WyAwIF0sIHRoaXMub2Zmc2V0UGFyZW50WyAwIF0gKSApID8KCQkJCQl0aGlzLm9mZnNldFBhcmVudCA6CgkJCQkJdGhpcy5zY3JvbGxQYXJlbnQsCgkJCXNjcm9sbElzUm9vdE5vZGUgPSAoIC8oaHRtbHxib2R5KS9pICkudGVzdCggc2Nyb2xsWyAwIF0udGFnTmFtZSApOwoKCQlyZXR1cm4gewoJCQl0b3A6ICgKCgkJCQkvLyBUaGUgYWJzb2x1dGUgbW91c2UgcG9zaXRpb24KCQkJCXBvcy50b3AJKwoKCQkJCS8vIE9ubHkgZm9yIHJlbGF0aXZlIHBvc2l0aW9uZWQgbm9kZXM6IFJlbGF0aXZlIG9mZnNldCBmcm9tIGVsZW1lbnQgdG8gb2Zmc2V0IHBhcmVudAoJCQkJdGhpcy5vZmZzZXQucmVsYXRpdmUudG9wICogbW9kICsKCgkJCQkvLyBUaGUgb2Zmc2V0UGFyZW50J3Mgb2Zmc2V0IHdpdGhvdXQgYm9yZGVycyAob2Zmc2V0ICsgYm9yZGVyKQoJCQkJdGhpcy5vZmZzZXQucGFyZW50LnRvcCAqIG1vZCAtCgkJCQkoICggdGhpcy5jc3NQb3NpdGlvbiA9PT0gImZpeGVkIiA/CgkJCQkJLXRoaXMuc2Nyb2xsUGFyZW50LnNjcm9sbFRvcCgpIDoKCQkJCQkoIHNjcm9sbElzUm9vdE5vZGUgPyAwIDogc2Nyb2xsLnNjcm9sbFRvcCgpICkgKSAqIG1vZCApCgkJCSksCgkJCWxlZnQ6ICgKCgkJCQkvLyBUaGUgYWJzb2x1dGUgbW91c2UgcG9zaXRpb24KCQkJCXBvcy5sZWZ0ICsKCgkJCQkvLyBPbmx5IGZvciByZWxhdGl2ZSBwb3NpdGlvbmVkIG5vZGVzOiBSZWxhdGl2ZSBvZmZzZXQgZnJvbSBlbGVtZW50IHRvIG9mZnNldCBwYXJlbnQKCQkJCXRoaXMub2Zmc2V0LnJlbGF0aXZlLmxlZnQgKiBtb2QgKwoKCQkJCS8vIFRoZSBvZmZzZXRQYXJlbnQncyBvZmZzZXQgd2l0aG91dCBib3JkZXJzIChvZmZzZXQgKyBib3JkZXIpCgkJCQl0aGlzLm9mZnNldC5wYXJlbnQubGVmdCAqIG1vZAktCgkJCQkoICggdGhpcy5jc3NQb3NpdGlvbiA9PT0gImZpeGVkIiA/CgkJCQkJLXRoaXMuc2Nyb2xsUGFyZW50LnNjcm9sbExlZnQoKSA6IHNjcm9sbElzUm9vdE5vZGUgPyAwIDoKCQkJCQlzY3JvbGwuc2Nyb2xsTGVmdCgpICkgKiBtb2QgKQoJCQkpCgkJfTsKCgl9LAoKCV9nZW5lcmF0ZVBvc2l0aW9uOiBmdW5jdGlvbiggZXZlbnQgKSB7CgoJCXZhciB0b3AsIGxlZnQsCgkJCW8gPSB0aGlzLm9wdGlvbnMsCgkJCXBhZ2VYID0gZXZlbnQucGFnZVgsCgkJCXBhZ2VZID0gZXZlbnQucGFnZVksCgkJCXNjcm9sbCA9IHRoaXMuY3NzUG9zaXRpb24gPT09ICJhYnNvbHV0ZSIgJiYKCQkJCSEoIHRoaXMuc2Nyb2xsUGFyZW50WyAwIF0gIT09IHRoaXMuZG9jdW1lbnRbIDAgXSAmJgoJCQkJJC5jb250YWlucyggdGhpcy5zY3JvbGxQYXJlbnRbIDAgXSwgdGhpcy5vZmZzZXRQYXJlbnRbIDAgXSApICkgPwoJCQkJCXRoaXMub2Zmc2V0UGFyZW50IDoKCQkJCQl0aGlzLnNjcm9sbFBhcmVudCwKCQkJCXNjcm9sbElzUm9vdE5vZGUgPSAoIC8oaHRtbHxib2R5KS9pICkudGVzdCggc2Nyb2xsWyAwIF0udGFnTmFtZSApOwoKCQkvLyBUaGlzIGlzIGFub3RoZXIgdmVyeSB3ZWlyZCBzcGVjaWFsIGNhc2UgdGhhdCBvbmx5IGhhcHBlbnMgZm9yIHJlbGF0aXZlIGVsZW1lbnRzOgoJCS8vIDEuIElmIHRoZSBjc3MgcG9zaXRpb24gaXMgcmVsYXRpdmUKCQkvLyAyLiBhbmQgdGhlIHNjcm9sbCBwYXJlbnQgaXMgdGhlIGRvY3VtZW50IG9yIHNpbWlsYXIgdG8gdGhlIG9mZnNldCBwYXJlbnQKCQkvLyB3ZSBoYXZlIHRvIHJlZnJlc2ggdGhlIHJlbGF0aXZlIG9mZnNldCBkdXJpbmcgdGhlIHNjcm9sbCBzbyB0aGVyZSBhcmUgbm8ganVtcHMKCQlpZiAoIHRoaXMuY3NzUG9zaXRpb24gPT09ICJyZWxhdGl2ZSIgJiYgISggdGhpcy5zY3JvbGxQYXJlbnRbIDAgXSAhPT0gdGhpcy5kb2N1bWVudFsgMCBdICYmCgkJCQl0aGlzLnNjcm9sbFBhcmVudFsgMCBdICE9PSB0aGlzLm9mZnNldFBhcmVudFsgMCBdICkgKSB7CgkJCXRoaXMub2Zmc2V0LnJlbGF0aXZlID0gdGhpcy5fZ2V0UmVsYXRpdmVPZmZzZXQoKTsKCQl9CgoJCS8qCgkJICogLSBQb3NpdGlvbiBjb25zdHJhaW5pbmcgLQoJCSAqIENvbnN0cmFpbiB0aGUgcG9zaXRpb24gdG8gYSBtaXggb2YgZ3JpZCwgY29udGFpbm1lbnQuCgkJICovCgoJCWlmICggdGhpcy5vcmlnaW5hbFBvc2l0aW9uICkgeyAvL0lmIHdlIGFyZSBub3QgZHJhZ2dpbmcgeWV0LCB3ZSB3b24ndCBjaGVjayBmb3Igb3B0aW9ucwoKCQkJaWYgKCB0aGlzLmNvbnRhaW5tZW50ICkgewoJCQkJaWYgKCBldmVudC5wYWdlWCAtIHRoaXMub2Zmc2V0LmNsaWNrLmxlZnQgPCB0aGlzLmNvbnRhaW5tZW50WyAwIF0gKSB7CgkJCQkJcGFnZVggPSB0aGlzLmNvbnRhaW5tZW50WyAwIF0gKyB0aGlzLm9mZnNldC5jbGljay5sZWZ0OwoJCQkJfQoJCQkJaWYgKCBldmVudC5wYWdlWSAtIHRoaXMub2Zmc2V0LmNsaWNrLnRvcCA8IHRoaXMuY29udGFpbm1lbnRbIDEgXSApIHsKCQkJCQlwYWdlWSA9IHRoaXMuY29udGFpbm1lbnRbIDEgXSArIHRoaXMub2Zmc2V0LmNsaWNrLnRvcDsKCQkJCX0KCQkJCWlmICggZXZlbnQucGFnZVggLSB0aGlzLm9mZnNldC5jbGljay5sZWZ0ID4gdGhpcy5jb250YWlubWVudFsgMiBdICkgewoJCQkJCXBhZ2VYID0gdGhpcy5jb250YWlubWVudFsgMiBdICsgdGhpcy5vZmZzZXQuY2xpY2subGVmdDsKCQkJCX0KCQkJCWlmICggZXZlbnQucGFnZVkgLSB0aGlzLm9mZnNldC5jbGljay50b3AgPiB0aGlzLmNvbnRhaW5tZW50WyAzIF0gKSB7CgkJCQkJcGFnZVkgPSB0aGlzLmNvbnRhaW5tZW50WyAzIF0gKyB0aGlzLm9mZnNldC5jbGljay50b3A7CgkJCQl9CgkJCX0KCgkJCWlmICggby5ncmlkICkgewoJCQkJdG9wID0gdGhpcy5vcmlnaW5hbFBhZ2VZICsgTWF0aC5yb3VuZCggKCBwYWdlWSAtIHRoaXMub3JpZ2luYWxQYWdlWSApIC8KCQkJCQlvLmdyaWRbIDEgXSApICogby5ncmlkWyAxIF07CgkJCQlwYWdlWSA9IHRoaXMuY29udGFpbm1lbnQgPwoJCQkJCSggKCB0b3AgLSB0aGlzLm9mZnNldC5jbGljay50b3AgPj0gdGhpcy5jb250YWlubWVudFsgMSBdICYmCgkJCQkJCXRvcCAtIHRoaXMub2Zmc2V0LmNsaWNrLnRvcCA8PSB0aGlzLmNvbnRhaW5tZW50WyAzIF0gKSA/CgkJCQkJCQl0b3AgOgoJCQkJCQkJKCAoIHRvcCAtIHRoaXMub2Zmc2V0LmNsaWNrLnRvcCA+PSB0aGlzLmNvbnRhaW5tZW50WyAxIF0gKSA/CgkJCQkJCQkJdG9wIC0gby5ncmlkWyAxIF0gOiB0b3AgKyBvLmdyaWRbIDEgXSApICkgOgoJCQkJCQkJCXRvcDsKCgkJCQlsZWZ0ID0gdGhpcy5vcmlnaW5hbFBhZ2VYICsgTWF0aC5yb3VuZCggKCBwYWdlWCAtIHRoaXMub3JpZ2luYWxQYWdlWCApIC8KCQkJCQlvLmdyaWRbIDAgXSApICogby5ncmlkWyAwIF07CgkJCQlwYWdlWCA9IHRoaXMuY29udGFpbm1lbnQgPwoJCQkJCSggKCBsZWZ0IC0gdGhpcy5vZmZzZXQuY2xpY2subGVmdCA+PSB0aGlzLmNvbnRhaW5tZW50WyAwIF0gJiYKCQkJCQkJbGVmdCAtIHRoaXMub2Zmc2V0LmNsaWNrLmxlZnQgPD0gdGhpcy5jb250YWlubWVudFsgMiBdICkgPwoJCQkJCQkJbGVmdCA6CgkJCQkJCQkoICggbGVmdCAtIHRoaXMub2Zmc2V0LmNsaWNrLmxlZnQgPj0gdGhpcy5jb250YWlubWVudFsgMCBdICkgPwoJCQkJCQkJCWxlZnQgLSBvLmdyaWRbIDAgXSA6IGxlZnQgKyBvLmdyaWRbIDAgXSApICkgOgoJCQkJCQkJCWxlZnQ7CgkJCX0KCgkJfQoKCQlyZXR1cm4gewoJCQl0b3A6ICgKCgkJCQkvLyBUaGUgYWJzb2x1dGUgbW91c2UgcG9zaXRpb24KCQkJCXBhZ2VZIC0KCgkJCQkvLyBDbGljayBvZmZzZXQgKHJlbGF0aXZlIHRvIHRoZSBlbGVtZW50KQoJCQkJdGhpcy5vZmZzZXQuY2xpY2sudG9wIC0KCgkJCQkvLyBPbmx5IGZvciByZWxhdGl2ZSBwb3NpdGlvbmVkIG5vZGVzOiBSZWxhdGl2ZSBvZmZzZXQgZnJvbSBlbGVtZW50IHRvIG9mZnNldCBwYXJlbnQKCQkJCXRoaXMub2Zmc2V0LnJlbGF0aXZlLnRvcCAtCgoJCQkJLy8gVGhlIG9mZnNldFBhcmVudCdzIG9mZnNldCB3aXRob3V0IGJvcmRlcnMgKG9mZnNldCArIGJvcmRlcikKCQkJCXRoaXMub2Zmc2V0LnBhcmVudC50b3AgKwoJCQkJKCAoIHRoaXMuY3NzUG9zaXRpb24gPT09ICJmaXhlZCIgPwoJCQkJCS10aGlzLnNjcm9sbFBhcmVudC5zY3JvbGxUb3AoKSA6CgkJCQkJKCBzY3JvbGxJc1Jvb3ROb2RlID8gMCA6IHNjcm9sbC5zY3JvbGxUb3AoKSApICkgKQoJCQkpLAoJCQlsZWZ0OiAoCgoJCQkJLy8gVGhlIGFic29sdXRlIG1vdXNlIHBvc2l0aW9uCgkJCQlwYWdlWCAtCgoJCQkJLy8gQ2xpY2sgb2Zmc2V0IChyZWxhdGl2ZSB0byB0aGUgZWxlbWVudCkKCQkJCXRoaXMub2Zmc2V0LmNsaWNrLmxlZnQgLQoKCQkJCS8vIE9ubHkgZm9yIHJlbGF0aXZlIHBvc2l0aW9uZWQgbm9kZXM6IFJlbGF0aXZlIG9mZnNldCBmcm9tIGVsZW1lbnQgdG8gb2Zmc2V0IHBhcmVudAoJCQkJdGhpcy5vZmZzZXQucmVsYXRpdmUubGVmdCAtCgoJCQkJLy8gVGhlIG9mZnNldFBhcmVudCdzIG9mZnNldCB3aXRob3V0IGJvcmRlcnMgKG9mZnNldCArIGJvcmRlcikKCQkJCXRoaXMub2Zmc2V0LnBhcmVudC5sZWZ0ICsKCQkJCSggKCB0aGlzLmNzc1Bvc2l0aW9uID09PSAiZml4ZWQiID8KCQkJCQktdGhpcy5zY3JvbGxQYXJlbnQuc2Nyb2xsTGVmdCgpIDoKCQkJCQlzY3JvbGxJc1Jvb3ROb2RlID8gMCA6IHNjcm9sbC5zY3JvbGxMZWZ0KCkgKSApCgkJCSkKCQl9OwoKCX0sCgoJX3JlYXJyYW5nZTogZnVuY3Rpb24oIGV2ZW50LCBpLCBhLCBoYXJkUmVmcmVzaCApIHsKCgkJYSA/IGFbIDAgXS5hcHBlbmRDaGlsZCggdGhpcy5wbGFjZWhvbGRlclsgMCBdICkgOgoJCQlpLml0ZW1bIDAgXS5wYXJlbnROb2RlLmluc2VydEJlZm9yZSggdGhpcy5wbGFjZWhvbGRlclsgMCBdLAoJCQkJKCB0aGlzLmRpcmVjdGlvbiA9PT0gImRvd24iID8gaS5pdGVtWyAwIF0gOiBpLml0ZW1bIDAgXS5uZXh0U2libGluZyApICk7CgoJCS8vVmFyaW91cyB0aGluZ3MgZG9uZSBoZXJlIHRvIGltcHJvdmUgdGhlIHBlcmZvcm1hbmNlOgoJCS8vIDEuIHdlIGNyZWF0ZSBhIHNldFRpbWVvdXQsIHRoYXQgY2FsbHMgcmVmcmVzaFBvc2l0aW9ucwoJCS8vIDIuIG9uIHRoZSBpbnN0YW5jZSwgd2UgaGF2ZSBhIGNvdW50ZXIgdmFyaWFibGUsIHRoYXQgZ2V0J3MgaGlnaGVyIGFmdGVyIGV2ZXJ5IGFwcGVuZAoJCS8vIDMuIG9uIHRoZSBsb2NhbCBzY29wZSwgd2UgY29weSB0aGUgY291bnRlciB2YXJpYWJsZSwgYW5kIGNoZWNrIGluIHRoZSB0aW1lb3V0LAoJCS8vIGlmIGl0J3Mgc3RpbGwgdGhlIHNhbWUKCQkvLyA0LiB0aGlzIGxldHMgb25seSB0aGUgbGFzdCBhZGRpdGlvbiB0byB0aGUgdGltZW91dCBzdGFjayB0aHJvdWdoCgkJdGhpcy5jb3VudGVyID0gdGhpcy5jb3VudGVyID8gKyt0aGlzLmNvdW50ZXIgOiAxOwoJCXZhciBjb3VudGVyID0gdGhpcy5jb3VudGVyOwoKCQl0aGlzLl9kZWxheSggZnVuY3Rpb24oKSB7CgkJCWlmICggY291bnRlciA9PT0gdGhpcy5jb3VudGVyICkgewoKCQkJCS8vUHJlY29tcHV0ZSBhZnRlciBlYWNoIERPTSBpbnNlcnRpb24sIE5PVCBvbiBtb3VzZW1vdmUKCQkJCXRoaXMucmVmcmVzaFBvc2l0aW9ucyggIWhhcmRSZWZyZXNoICk7CgkJCX0KCQl9ICk7CgoJfSwKCglfY2xlYXI6IGZ1bmN0aW9uKCBldmVudCwgbm9Qcm9wYWdhdGlvbiApIHsKCgkJdGhpcy5yZXZlcnRpbmcgPSBmYWxzZTsKCgkJLy8gV2UgZGVsYXkgYWxsIGV2ZW50cyB0aGF0IGhhdmUgdG8gYmUgdHJpZ2dlcmVkIHRvIGFmdGVyIHRoZSBwb2ludCB3aGVyZSB0aGUgcGxhY2Vob2xkZXIKCQkvLyBoYXMgYmVlbiByZW1vdmVkIGFuZCBldmVyeXRoaW5nIGVsc2Ugbm9ybWFsaXplZCBhZ2FpbgoJCXZhciBpLAoJCQlkZWxheWVkVHJpZ2dlcnMgPSBbXTsKCgkJLy8gV2UgZmlyc3QgaGF2ZSB0byB1cGRhdGUgdGhlIGRvbSBwb3NpdGlvbiBvZiB0aGUgYWN0dWFsIGN1cnJlbnRJdGVtCgkJLy8gTm90ZTogZG9uJ3QgZG8gaXQgaWYgdGhlIGN1cnJlbnQgaXRlbSBpcyBhbHJlYWR5IHJlbW92ZWQgKGJ5IGEgdXNlciksIG9yIGl0IGdldHMKCQkvLyByZWFwcGVuZGVkIChzZWUgIzQwODgpCgkJaWYgKCAhdGhpcy5fbm9GaW5hbFNvcnQgJiYgdGhpcy5jdXJyZW50SXRlbS5wYXJlbnQoKS5sZW5ndGggKSB7CgkJCXRoaXMucGxhY2Vob2xkZXIuYmVmb3JlKCB0aGlzLmN1cnJlbnRJdGVtICk7CgkJfQoJCXRoaXMuX25vRmluYWxTb3J0ID0gbnVsbDsKCgkJaWYgKCB0aGlzLmhlbHBlclsgMCBdID09PSB0aGlzLmN1cnJlbnRJdGVtWyAwIF0gKSB7CgkJCWZvciAoIGkgaW4gdGhpcy5fc3RvcmVkQ1NTICkgewoJCQkJaWYgKCB0aGlzLl9zdG9yZWRDU1NbIGkgXSA9PT0gImF1dG8iIHx8IHRoaXMuX3N0b3JlZENTU1sgaSBdID09PSAic3RhdGljIiApIHsKCQkJCQl0aGlzLl9zdG9yZWRDU1NbIGkgXSA9ICIiOwoJCQkJfQoJCQl9CgkJCXRoaXMuY3VycmVudEl0ZW0uY3NzKCB0aGlzLl9zdG9yZWRDU1MgKTsKCQkJdGhpcy5fcmVtb3ZlQ2xhc3MoIHRoaXMuY3VycmVudEl0ZW0sICJ1aS1zb3J0YWJsZS1oZWxwZXIiICk7CgkJfSBlbHNlIHsKCQkJdGhpcy5jdXJyZW50SXRlbS5zaG93KCk7CgkJfQoKCQlpZiAoIHRoaXMuZnJvbU91dHNpZGUgJiYgIW5vUHJvcGFnYXRpb24gKSB7CgkJCWRlbGF5ZWRUcmlnZ2Vycy5wdXNoKCBmdW5jdGlvbiggZXZlbnQgKSB7CgkJCQl0aGlzLl90cmlnZ2VyKCAicmVjZWl2ZSIsIGV2ZW50LCB0aGlzLl91aUhhc2goIHRoaXMuZnJvbU91dHNpZGUgKSApOwoJCQl9ICk7CgkJfQoJCWlmICggKCB0aGlzLmZyb21PdXRzaWRlIHx8CgkJCQl0aGlzLmRvbVBvc2l0aW9uLnByZXYgIT09CgkJCQl0aGlzLmN1cnJlbnRJdGVtLnByZXYoKS5ub3QoICIudWktc29ydGFibGUtaGVscGVyIiApWyAwIF0gfHwKCQkJCXRoaXMuZG9tUG9zaXRpb24ucGFyZW50ICE9PSB0aGlzLmN1cnJlbnRJdGVtLnBhcmVudCgpWyAwIF0gKSAmJiAhbm9Qcm9wYWdhdGlvbiApIHsKCgkJCS8vIFRyaWdnZXIgdXBkYXRlIGNhbGxiYWNrIGlmIHRoZSBET00gcG9zaXRpb24gaGFzIGNoYW5nZWQKCQkJZGVsYXllZFRyaWdnZXJzLnB1c2goIGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCXRoaXMuX3RyaWdnZXIoICJ1cGRhdGUiLCBldmVudCwgdGhpcy5fdWlIYXNoKCkgKTsKCQkJfSApOwoJCX0KCgkJLy8gQ2hlY2sgaWYgdGhlIGl0ZW1zIENvbnRhaW5lciBoYXMgQ2hhbmdlZCBhbmQgdHJpZ2dlciBhcHByb3ByaWF0ZQoJCS8vIGV2ZW50cy4KCQlpZiAoIHRoaXMgIT09IHRoaXMuY3VycmVudENvbnRhaW5lciApIHsKCQkJaWYgKCAhbm9Qcm9wYWdhdGlvbiApIHsKCQkJCWRlbGF5ZWRUcmlnZ2Vycy5wdXNoKCBmdW5jdGlvbiggZXZlbnQgKSB7CgkJCQkJdGhpcy5fdHJpZ2dlciggInJlbW92ZSIsIGV2ZW50LCB0aGlzLl91aUhhc2goKSApOwoJCQkJfSApOwoJCQkJZGVsYXllZFRyaWdnZXJzLnB1c2goICggZnVuY3Rpb24oIGMgKSB7CgkJCQkJcmV0dXJuIGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCQkJYy5fdHJpZ2dlciggInJlY2VpdmUiLCBldmVudCwgdGhpcy5fdWlIYXNoKCB0aGlzICkgKTsKCQkJCQl9OwoJCQkJfSApLmNhbGwoIHRoaXMsIHRoaXMuY3VycmVudENvbnRhaW5lciApICk7CgkJCQlkZWxheWVkVHJpZ2dlcnMucHVzaCggKCBmdW5jdGlvbiggYyApIHsKCQkJCQlyZXR1cm4gZnVuY3Rpb24oIGV2ZW50ICkgewoJCQkJCQljLl90cmlnZ2VyKCAidXBkYXRlIiwgZXZlbnQsIHRoaXMuX3VpSGFzaCggdGhpcyApICk7CgkJCQkJfTsKCQkJCX0gKS5jYWxsKCB0aGlzLCB0aGlzLmN1cnJlbnRDb250YWluZXIgKSApOwoJCQl9CgkJfQoKCQkvL1Bvc3QgZXZlbnRzIHRvIGNvbnRhaW5lcnMKCQlmdW5jdGlvbiBkZWxheUV2ZW50KCB0eXBlLCBpbnN0YW5jZSwgY29udGFpbmVyICkgewoJCQlyZXR1cm4gZnVuY3Rpb24oIGV2ZW50ICkgewoJCQkJY29udGFpbmVyLl90cmlnZ2VyKCB0eXBlLCBldmVudCwgaW5zdGFuY2UuX3VpSGFzaCggaW5zdGFuY2UgKSApOwoJCQl9OwoJCX0KCQlmb3IgKCBpID0gdGhpcy5jb250YWluZXJzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tICkgewoJCQlpZiAoICFub1Byb3BhZ2F0aW9uICkgewoJCQkJZGVsYXllZFRyaWdnZXJzLnB1c2goIGRlbGF5RXZlbnQoICJkZWFjdGl2YXRlIiwgdGhpcywgdGhpcy5jb250YWluZXJzWyBpIF0gKSApOwoJCQl9CgkJCWlmICggdGhpcy5jb250YWluZXJzWyBpIF0uY29udGFpbmVyQ2FjaGUub3ZlciApIHsKCQkJCWRlbGF5ZWRUcmlnZ2Vycy5wdXNoKCBkZWxheUV2ZW50KCAib3V0IiwgdGhpcywgdGhpcy5jb250YWluZXJzWyBpIF0gKSApOwoJCQkJdGhpcy5jb250YWluZXJzWyBpIF0uY29udGFpbmVyQ2FjaGUub3ZlciA9IDA7CgkJCX0KCQl9CgoJCS8vRG8gd2hhdCB3YXMgb3JpZ2luYWxseSBpbiBwbHVnaW5zCgkJaWYgKCB0aGlzLnN0b3JlZEN1cnNvciApIHsKCQkJdGhpcy5kb2N1bWVudC5maW5kKCAiYm9keSIgKS5jc3MoICJjdXJzb3IiLCB0aGlzLnN0b3JlZEN1cnNvciApOwoJCQl0aGlzLnN0b3JlZFN0eWxlc2hlZXQucmVtb3ZlKCk7CgkJfQoJCWlmICggdGhpcy5fc3RvcmVkT3BhY2l0eSApIHsKCQkJdGhpcy5oZWxwZXIuY3NzKCAib3BhY2l0eSIsIHRoaXMuX3N0b3JlZE9wYWNpdHkgKTsKCQl9CgkJaWYgKCB0aGlzLl9zdG9yZWRaSW5kZXggKSB7CgkJCXRoaXMuaGVscGVyLmNzcyggInpJbmRleCIsIHRoaXMuX3N0b3JlZFpJbmRleCA9PT0gImF1dG8iID8gIiIgOiB0aGlzLl9zdG9yZWRaSW5kZXggKTsKCQl9CgoJCXRoaXMuZHJhZ2dpbmcgPSBmYWxzZTsKCgkJaWYgKCAhbm9Qcm9wYWdhdGlvbiApIHsKCQkJdGhpcy5fdHJpZ2dlciggImJlZm9yZVN0b3AiLCBldmVudCwgdGhpcy5fdWlIYXNoKCkgKTsKCQl9CgoJCS8vJCh0aGlzLnBsYWNlaG9sZGVyWzBdKS5yZW1vdmUoKTsgd291bGQgaGF2ZSBiZWVuIHRoZSBqUXVlcnkgd2F5IC0gdW5mb3J0dW5hdGVseSwKCQkvLyBpdCB1bmJpbmRzIEFMTCBldmVudHMgZnJvbSB0aGUgb3JpZ2luYWwgbm9kZSEKCQl0aGlzLnBsYWNlaG9sZGVyWyAwIF0ucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCggdGhpcy5wbGFjZWhvbGRlclsgMCBdICk7CgoJCWlmICggIXRoaXMuY2FuY2VsSGVscGVyUmVtb3ZhbCApIHsKCQkJaWYgKCB0aGlzLmhlbHBlclsgMCBdICE9PSB0aGlzLmN1cnJlbnRJdGVtWyAwIF0gKSB7CgkJCQl0aGlzLmhlbHBlci5yZW1vdmUoKTsKCQkJfQoJCQl0aGlzLmhlbHBlciA9IG51bGw7CgkJfQoKCQlpZiAoICFub1Byb3BhZ2F0aW9uICkgewoJCQlmb3IgKCBpID0gMDsgaSA8IGRlbGF5ZWRUcmlnZ2Vycy5sZW5ndGg7IGkrKyApIHsKCgkJCQkvLyBUcmlnZ2VyIGFsbCBkZWxheWVkIGV2ZW50cwoJCQkJZGVsYXllZFRyaWdnZXJzWyBpIF0uY2FsbCggdGhpcywgZXZlbnQgKTsKCQkJfQoJCQl0aGlzLl90cmlnZ2VyKCAic3RvcCIsIGV2ZW50LCB0aGlzLl91aUhhc2goKSApOwoJCX0KCgkJdGhpcy5mcm9tT3V0c2lkZSA9IGZhbHNlOwoJCXJldHVybiAhdGhpcy5jYW5jZWxIZWxwZXJSZW1vdmFsOwoKCX0sCgoJX3RyaWdnZXI6IGZ1bmN0aW9uKCkgewoJCWlmICggJC5XaWRnZXQucHJvdG90eXBlLl90cmlnZ2VyLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKSA9PT0gZmFsc2UgKSB7CgkJCXRoaXMuY2FuY2VsKCk7CgkJfQoJfSwKCglfdWlIYXNoOiBmdW5jdGlvbiggX2luc3QgKSB7CgkJdmFyIGluc3QgPSBfaW5zdCB8fCB0aGlzOwoJCXJldHVybiB7CgkJCWhlbHBlcjogaW5zdC5oZWxwZXIsCgkJCXBsYWNlaG9sZGVyOiBpbnN0LnBsYWNlaG9sZGVyIHx8ICQoIFtdICksCgkJCXBvc2l0aW9uOiBpbnN0LnBvc2l0aW9uLAoJCQlvcmlnaW5hbFBvc2l0aW9uOiBpbnN0Lm9yaWdpbmFsUG9zaXRpb24sCgkJCW9mZnNldDogaW5zdC5wb3NpdGlvbkFicywKCQkJaXRlbTogaW5zdC5jdXJyZW50SXRlbSwKCQkJc2VuZGVyOiBfaW5zdCA/IF9pbnN0LmVsZW1lbnQgOiBudWxsCgkJfTsKCX0KCn0gKTsKCgovKiEKICogalF1ZXJ5IFVJIEFjY29yZGlvbiAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IEFjY29yZGlvbgovLz4+Z3JvdXA6IFdpZGdldHMKLy8ganNjczpkaXNhYmxlIG1heGltdW1MaW5lTGVuZ3RoCi8vPj5kZXNjcmlwdGlvbjogRGlzcGxheXMgY29sbGFwc2libGUgY29udGVudCBwYW5lbHMgZm9yIHByZXNlbnRpbmcgaW5mb3JtYXRpb24gaW4gYSBsaW1pdGVkIGFtb3VudCBvZiBzcGFjZS4KLy8ganNjczplbmFibGUgbWF4aW11bUxpbmVMZW5ndGgKLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2FjY29yZGlvbi8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL2FjY29yZGlvbi8KLy8+PmNzcy5zdHJ1Y3R1cmU6IC4uLy4uL3RoZW1lcy9iYXNlL2NvcmUuY3NzCi8vPj5jc3Muc3RydWN0dXJlOiAuLi8uLi90aGVtZXMvYmFzZS9hY2NvcmRpb24uY3NzCi8vPj5jc3MudGhlbWU6IC4uLy4uL3RoZW1lcy9iYXNlL3RoZW1lLmNzcwoKCgp2YXIgd2lkZ2V0c0FjY29yZGlvbiA9ICQud2lkZ2V0KCAidWkuYWNjb3JkaW9uIiwgewoJdmVyc2lvbjogIjEuMTIuMSIsCglvcHRpb25zOiB7CgkJYWN0aXZlOiAwLAoJCWFuaW1hdGU6IHt9LAoJCWNsYXNzZXM6IHsKCQkJInVpLWFjY29yZGlvbi1oZWFkZXIiOiAidWktY29ybmVyLXRvcCIsCgkJCSJ1aS1hY2NvcmRpb24taGVhZGVyLWNvbGxhcHNlZCI6ICJ1aS1jb3JuZXItYWxsIiwKCQkJInVpLWFjY29yZGlvbi1jb250ZW50IjogInVpLWNvcm5lci1ib3R0b20iCgkJfSwKCQljb2xsYXBzaWJsZTogZmFsc2UsCgkJZXZlbnQ6ICJjbGljayIsCgkJaGVhZGVyOiAiPiBsaSA+IDpmaXJzdC1jaGlsZCwgPiA6bm90KGxpKTpldmVuIiwKCQloZWlnaHRTdHlsZTogImF1dG8iLAoJCWljb25zOiB7CgkJCWFjdGl2ZUhlYWRlcjogInVpLWljb24tdHJpYW5nbGUtMS1zIiwKCQkJaGVhZGVyOiAidWktaWNvbi10cmlhbmdsZS0xLWUiCgkJfSwKCgkJLy8gQ2FsbGJhY2tzCgkJYWN0aXZhdGU6IG51bGwsCgkJYmVmb3JlQWN0aXZhdGU6IG51bGwKCX0sCgoJaGlkZVByb3BzOiB7CgkJYm9yZGVyVG9wV2lkdGg6ICJoaWRlIiwKCQlib3JkZXJCb3R0b21XaWR0aDogImhpZGUiLAoJCXBhZGRpbmdUb3A6ICJoaWRlIiwKCQlwYWRkaW5nQm90dG9tOiAiaGlkZSIsCgkJaGVpZ2h0OiAiaGlkZSIKCX0sCgoJc2hvd1Byb3BzOiB7CgkJYm9yZGVyVG9wV2lkdGg6ICJzaG93IiwKCQlib3JkZXJCb3R0b21XaWR0aDogInNob3ciLAoJCXBhZGRpbmdUb3A6ICJzaG93IiwKCQlwYWRkaW5nQm90dG9tOiAic2hvdyIsCgkJaGVpZ2h0OiAic2hvdyIKCX0sCgoJX2NyZWF0ZTogZnVuY3Rpb24oKSB7CgkJdmFyIG9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7CgoJCXRoaXMucHJldlNob3cgPSB0aGlzLnByZXZIaWRlID0gJCgpOwoJCXRoaXMuX2FkZENsYXNzKCAidWktYWNjb3JkaW9uIiwgInVpLXdpZGdldCB1aS1oZWxwZXItcmVzZXQiICk7CgkJdGhpcy5lbGVtZW50LmF0dHIoICJyb2xlIiwgInRhYmxpc3QiICk7CgoJCS8vIERvbid0IGFsbG93IGNvbGxhcHNpYmxlOiBmYWxzZSBhbmQgYWN0aXZlOiBmYWxzZSAvIG51bGwKCQlpZiAoICFvcHRpb25zLmNvbGxhcHNpYmxlICYmICggb3B0aW9ucy5hY3RpdmUgPT09IGZhbHNlIHx8IG9wdGlvbnMuYWN0aXZlID09IG51bGwgKSApIHsKCQkJb3B0aW9ucy5hY3RpdmUgPSAwOwoJCX0KCgkJdGhpcy5fcHJvY2Vzc1BhbmVscygpOwoKCQkvLyBoYW5kbGUgbmVnYXRpdmUgdmFsdWVzCgkJaWYgKCBvcHRpb25zLmFjdGl2ZSA8IDAgKSB7CgkJCW9wdGlvbnMuYWN0aXZlICs9IHRoaXMuaGVhZGVycy5sZW5ndGg7CgkJfQoJCXRoaXMuX3JlZnJlc2goKTsKCX0sCgoJX2dldENyZWF0ZUV2ZW50RGF0YTogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHsKCQkJaGVhZGVyOiB0aGlzLmFjdGl2ZSwKCQkJcGFuZWw6ICF0aGlzLmFjdGl2ZS5sZW5ndGggPyAkKCkgOiB0aGlzLmFjdGl2ZS5uZXh0KCkKCQl9OwoJfSwKCglfY3JlYXRlSWNvbnM6IGZ1bmN0aW9uKCkgewoJCXZhciBpY29uLCBjaGlsZHJlbiwKCQkJaWNvbnMgPSB0aGlzLm9wdGlvbnMuaWNvbnM7CgoJCWlmICggaWNvbnMgKSB7CgkJCWljb24gPSAkKCAiPHNwYW4+IiApOwoJCQl0aGlzLl9hZGRDbGFzcyggaWNvbiwgInVpLWFjY29yZGlvbi1oZWFkZXItaWNvbiIsICJ1aS1pY29uICIgKyBpY29ucy5oZWFkZXIgKTsKCQkJaWNvbi5wcmVwZW5kVG8oIHRoaXMuaGVhZGVycyApOwoJCQljaGlsZHJlbiA9IHRoaXMuYWN0aXZlLmNoaWxkcmVuKCAiLnVpLWFjY29yZGlvbi1oZWFkZXItaWNvbiIgKTsKCQkJdGhpcy5fcmVtb3ZlQ2xhc3MoIGNoaWxkcmVuLCBpY29ucy5oZWFkZXIgKQoJCQkJLl9hZGRDbGFzcyggY2hpbGRyZW4sIG51bGwsIGljb25zLmFjdGl2ZUhlYWRlciApCgkJCQkuX2FkZENsYXNzKCB0aGlzLmhlYWRlcnMsICJ1aS1hY2NvcmRpb24taWNvbnMiICk7CgkJfQoJfSwKCglfZGVzdHJveUljb25zOiBmdW5jdGlvbigpIHsKCQl0aGlzLl9yZW1vdmVDbGFzcyggdGhpcy5oZWFkZXJzLCAidWktYWNjb3JkaW9uLWljb25zIiApOwoJCXRoaXMuaGVhZGVycy5jaGlsZHJlbiggIi51aS1hY2NvcmRpb24taGVhZGVyLWljb24iICkucmVtb3ZlKCk7Cgl9LAoKCV9kZXN0cm95OiBmdW5jdGlvbigpIHsKCQl2YXIgY29udGVudHM7CgoJCS8vIENsZWFuIHVwIG1haW4gZWxlbWVudAoJCXRoaXMuZWxlbWVudC5yZW1vdmVBdHRyKCAicm9sZSIgKTsKCgkJLy8gQ2xlYW4gdXAgaGVhZGVycwoJCXRoaXMuaGVhZGVycwoJCQkucmVtb3ZlQXR0ciggInJvbGUgYXJpYS1leHBhbmRlZCBhcmlhLXNlbGVjdGVkIGFyaWEtY29udHJvbHMgdGFiSW5kZXgiICkKCQkJLnJlbW92ZVVuaXF1ZUlkKCk7CgoJCXRoaXMuX2Rlc3Ryb3lJY29ucygpOwoKCQkvLyBDbGVhbiB1cCBjb250ZW50IHBhbmVscwoJCWNvbnRlbnRzID0gdGhpcy5oZWFkZXJzLm5leHQoKQoJCQkuY3NzKCAiZGlzcGxheSIsICIiICkKCQkJLnJlbW92ZUF0dHIoICJyb2xlIGFyaWEtaGlkZGVuIGFyaWEtbGFiZWxsZWRieSIgKQoJCQkucmVtb3ZlVW5pcXVlSWQoKTsKCgkJaWYgKCB0aGlzLm9wdGlvbnMuaGVpZ2h0U3R5bGUgIT09ICJjb250ZW50IiApIHsKCQkJY29udGVudHMuY3NzKCAiaGVpZ2h0IiwgIiIgKTsKCQl9Cgl9LAoKCV9zZXRPcHRpb246IGZ1bmN0aW9uKCBrZXksIHZhbHVlICkgewoJCWlmICgga2V5ID09PSAiYWN0aXZlIiApIHsKCgkJCS8vIF9hY3RpdmF0ZSgpIHdpbGwgaGFuZGxlIGludmFsaWQgdmFsdWVzIGFuZCB1cGRhdGUgdGhpcy5vcHRpb25zCgkJCXRoaXMuX2FjdGl2YXRlKCB2YWx1ZSApOwoJCQlyZXR1cm47CgkJfQoKCQlpZiAoIGtleSA9PT0gImV2ZW50IiApIHsKCQkJaWYgKCB0aGlzLm9wdGlvbnMuZXZlbnQgKSB7CgkJCQl0aGlzLl9vZmYoIHRoaXMuaGVhZGVycywgdGhpcy5vcHRpb25zLmV2ZW50ICk7CgkJCX0KCQkJdGhpcy5fc2V0dXBFdmVudHMoIHZhbHVlICk7CgkJfQoKCQl0aGlzLl9zdXBlcigga2V5LCB2YWx1ZSApOwoKCQkvLyBTZXR0aW5nIGNvbGxhcHNpYmxlOiBmYWxzZSB3aGlsZSBjb2xsYXBzZWQ7IG9wZW4gZmlyc3QgcGFuZWwKCQlpZiAoIGtleSA9PT0gImNvbGxhcHNpYmxlIiAmJiAhdmFsdWUgJiYgdGhpcy5vcHRpb25zLmFjdGl2ZSA9PT0gZmFsc2UgKSB7CgkJCXRoaXMuX2FjdGl2YXRlKCAwICk7CgkJfQoKCQlpZiAoIGtleSA9PT0gImljb25zIiApIHsKCQkJdGhpcy5fZGVzdHJveUljb25zKCk7CgkJCWlmICggdmFsdWUgKSB7CgkJCQl0aGlzLl9jcmVhdGVJY29ucygpOwoJCQl9CgkJfQoJfSwKCglfc2V0T3B0aW9uRGlzYWJsZWQ6IGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQl0aGlzLl9zdXBlciggdmFsdWUgKTsKCgkJdGhpcy5lbGVtZW50LmF0dHIoICJhcmlhLWRpc2FibGVkIiwgdmFsdWUgKTsKCgkJLy8gU3VwcG9ydDogSUU4IE9ubHkKCQkvLyAjNTMzMiAvICM2MDU5IC0gb3BhY2l0eSBkb2Vzbid0IGNhc2NhZGUgdG8gcG9zaXRpb25lZCBlbGVtZW50cyBpbiBJRQoJCS8vIHNvIHdlIG5lZWQgdG8gYWRkIHRoZSBkaXNhYmxlZCBjbGFzcyB0byB0aGUgaGVhZGVycyBhbmQgcGFuZWxzCgkJdGhpcy5fdG9nZ2xlQ2xhc3MoIG51bGwsICJ1aS1zdGF0ZS1kaXNhYmxlZCIsICEhdmFsdWUgKTsKCQl0aGlzLl90b2dnbGVDbGFzcyggdGhpcy5oZWFkZXJzLmFkZCggdGhpcy5oZWFkZXJzLm5leHQoKSApLCBudWxsLCAidWktc3RhdGUtZGlzYWJsZWQiLAoJCQkhIXZhbHVlICk7Cgl9LAoKCV9rZXlkb3duOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJaWYgKCBldmVudC5hbHRLZXkgfHwgZXZlbnQuY3RybEtleSApIHsKCQkJcmV0dXJuOwoJCX0KCgkJdmFyIGtleUNvZGUgPSAkLnVpLmtleUNvZGUsCgkJCWxlbmd0aCA9IHRoaXMuaGVhZGVycy5sZW5ndGgsCgkJCWN1cnJlbnRJbmRleCA9IHRoaXMuaGVhZGVycy5pbmRleCggZXZlbnQudGFyZ2V0ICksCgkJCXRvRm9jdXMgPSBmYWxzZTsKCgkJc3dpdGNoICggZXZlbnQua2V5Q29kZSApIHsKCQljYXNlIGtleUNvZGUuUklHSFQ6CgkJY2FzZSBrZXlDb2RlLkRPV046CgkJCXRvRm9jdXMgPSB0aGlzLmhlYWRlcnNbICggY3VycmVudEluZGV4ICsgMSApICUgbGVuZ3RoIF07CgkJCWJyZWFrOwoJCWNhc2Uga2V5Q29kZS5MRUZUOgoJCWNhc2Uga2V5Q29kZS5VUDoKCQkJdG9Gb2N1cyA9IHRoaXMuaGVhZGVyc1sgKCBjdXJyZW50SW5kZXggLSAxICsgbGVuZ3RoICkgJSBsZW5ndGggXTsKCQkJYnJlYWs7CgkJY2FzZSBrZXlDb2RlLlNQQUNFOgoJCWNhc2Uga2V5Q29kZS5FTlRFUjoKCQkJdGhpcy5fZXZlbnRIYW5kbGVyKCBldmVudCApOwoJCQlicmVhazsKCQljYXNlIGtleUNvZGUuSE9NRToKCQkJdG9Gb2N1cyA9IHRoaXMuaGVhZGVyc1sgMCBdOwoJCQlicmVhazsKCQljYXNlIGtleUNvZGUuRU5EOgoJCQl0b0ZvY3VzID0gdGhpcy5oZWFkZXJzWyBsZW5ndGggLSAxIF07CgkJCWJyZWFrOwoJCX0KCgkJaWYgKCB0b0ZvY3VzICkgewoJCQkkKCBldmVudC50YXJnZXQgKS5hdHRyKCAidGFiSW5kZXgiLCAtMSApOwoJCQkkKCB0b0ZvY3VzICkuYXR0ciggInRhYkluZGV4IiwgMCApOwoJCQkkKCB0b0ZvY3VzICkudHJpZ2dlciggImZvY3VzIiApOwoJCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOwoJCX0KCX0sCgoJX3BhbmVsS2V5RG93bjogZnVuY3Rpb24oIGV2ZW50ICkgewoJCWlmICggZXZlbnQua2V5Q29kZSA9PT0gJC51aS5rZXlDb2RlLlVQICYmIGV2ZW50LmN0cmxLZXkgKSB7CgkJCSQoIGV2ZW50LmN1cnJlbnRUYXJnZXQgKS5wcmV2KCkudHJpZ2dlciggImZvY3VzIiApOwoJCX0KCX0sCgoJcmVmcmVzaDogZnVuY3Rpb24oKSB7CgkJdmFyIG9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7CgkJdGhpcy5fcHJvY2Vzc1BhbmVscygpOwoKCQkvLyBXYXMgY29sbGFwc2VkIG9yIG5vIHBhbmVsCgkJaWYgKCAoIG9wdGlvbnMuYWN0aXZlID09PSBmYWxzZSAmJiBvcHRpb25zLmNvbGxhcHNpYmxlID09PSB0cnVlICkgfHwKCQkJCSF0aGlzLmhlYWRlcnMubGVuZ3RoICkgewoJCQlvcHRpb25zLmFjdGl2ZSA9IGZhbHNlOwoJCQl0aGlzLmFjdGl2ZSA9ICQoKTsKCgkJLy8gYWN0aXZlIGZhbHNlIG9ubHkgd2hlbiBjb2xsYXBzaWJsZSBpcyB0cnVlCgkJfSBlbHNlIGlmICggb3B0aW9ucy5hY3RpdmUgPT09IGZhbHNlICkgewoJCQl0aGlzLl9hY3RpdmF0ZSggMCApOwoKCQkvLyB3YXMgYWN0aXZlLCBidXQgYWN0aXZlIHBhbmVsIGlzIGdvbmUKCQl9IGVsc2UgaWYgKCB0aGlzLmFjdGl2ZS5sZW5ndGggJiYgISQuY29udGFpbnMoIHRoaXMuZWxlbWVudFsgMCBdLCB0aGlzLmFjdGl2ZVsgMCBdICkgKSB7CgoJCQkvLyBhbGwgcmVtYWluaW5nIHBhbmVsIGFyZSBkaXNhYmxlZAoJCQlpZiAoIHRoaXMuaGVhZGVycy5sZW5ndGggPT09IHRoaXMuaGVhZGVycy5maW5kKCAiLnVpLXN0YXRlLWRpc2FibGVkIiApLmxlbmd0aCApIHsKCQkJCW9wdGlvbnMuYWN0aXZlID0gZmFsc2U7CgkJCQl0aGlzLmFjdGl2ZSA9ICQoKTsKCgkJCS8vIGFjdGl2YXRlIHByZXZpb3VzIHBhbmVsCgkJCX0gZWxzZSB7CgkJCQl0aGlzLl9hY3RpdmF0ZSggTWF0aC5tYXgoIDAsIG9wdGlvbnMuYWN0aXZlIC0gMSApICk7CgkJCX0KCgkJLy8gd2FzIGFjdGl2ZSwgYWN0aXZlIHBhbmVsIHN0aWxsIGV4aXN0cwoJCX0gZWxzZSB7CgoJCQkvLyBtYWtlIHN1cmUgYWN0aXZlIGluZGV4IGlzIGNvcnJlY3QKCQkJb3B0aW9ucy5hY3RpdmUgPSB0aGlzLmhlYWRlcnMuaW5kZXgoIHRoaXMuYWN0aXZlICk7CgkJfQoKCQl0aGlzLl9kZXN0cm95SWNvbnMoKTsKCgkJdGhpcy5fcmVmcmVzaCgpOwoJfSwKCglfcHJvY2Vzc1BhbmVsczogZnVuY3Rpb24oKSB7CgkJdmFyIHByZXZIZWFkZXJzID0gdGhpcy5oZWFkZXJzLAoJCQlwcmV2UGFuZWxzID0gdGhpcy5wYW5lbHM7CgoJCXRoaXMuaGVhZGVycyA9IHRoaXMuZWxlbWVudC5maW5kKCB0aGlzLm9wdGlvbnMuaGVhZGVyICk7CgkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMuaGVhZGVycywgInVpLWFjY29yZGlvbi1oZWFkZXIgdWktYWNjb3JkaW9uLWhlYWRlci1jb2xsYXBzZWQiLAoJCQkidWktc3RhdGUtZGVmYXVsdCIgKTsKCgkJdGhpcy5wYW5lbHMgPSB0aGlzLmhlYWRlcnMubmV4dCgpLmZpbHRlciggIjpub3QoLnVpLWFjY29yZGlvbi1jb250ZW50LWFjdGl2ZSkiICkuaGlkZSgpOwoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLnBhbmVscywgInVpLWFjY29yZGlvbi1jb250ZW50IiwgInVpLWhlbHBlci1yZXNldCB1aS13aWRnZXQtY29udGVudCIgKTsKCgkJLy8gQXZvaWQgbWVtb3J5IGxlYWtzICgjMTAwNTYpCgkJaWYgKCBwcmV2UGFuZWxzICkgewoJCQl0aGlzLl9vZmYoIHByZXZIZWFkZXJzLm5vdCggdGhpcy5oZWFkZXJzICkgKTsKCQkJdGhpcy5fb2ZmKCBwcmV2UGFuZWxzLm5vdCggdGhpcy5wYW5lbHMgKSApOwoJCX0KCX0sCgoJX3JlZnJlc2g6IGZ1bmN0aW9uKCkgewoJCXZhciBtYXhIZWlnaHQsCgkJCW9wdGlvbnMgPSB0aGlzLm9wdGlvbnMsCgkJCWhlaWdodFN0eWxlID0gb3B0aW9ucy5oZWlnaHRTdHlsZSwKCQkJcGFyZW50ID0gdGhpcy5lbGVtZW50LnBhcmVudCgpOwoKCQl0aGlzLmFjdGl2ZSA9IHRoaXMuX2ZpbmRBY3RpdmUoIG9wdGlvbnMuYWN0aXZlICk7CgkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMuYWN0aXZlLCAidWktYWNjb3JkaW9uLWhlYWRlci1hY3RpdmUiLCAidWktc3RhdGUtYWN0aXZlIiApCgkJCS5fcmVtb3ZlQ2xhc3MoIHRoaXMuYWN0aXZlLCAidWktYWNjb3JkaW9uLWhlYWRlci1jb2xsYXBzZWQiICk7CgkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMuYWN0aXZlLm5leHQoKSwgInVpLWFjY29yZGlvbi1jb250ZW50LWFjdGl2ZSIgKTsKCQl0aGlzLmFjdGl2ZS5uZXh0KCkuc2hvdygpOwoKCQl0aGlzLmhlYWRlcnMKCQkJLmF0dHIoICJyb2xlIiwgInRhYiIgKQoJCQkuZWFjaCggZnVuY3Rpb24oKSB7CgkJCQl2YXIgaGVhZGVyID0gJCggdGhpcyApLAoJCQkJCWhlYWRlcklkID0gaGVhZGVyLnVuaXF1ZUlkKCkuYXR0ciggImlkIiApLAoJCQkJCXBhbmVsID0gaGVhZGVyLm5leHQoKSwKCQkJCQlwYW5lbElkID0gcGFuZWwudW5pcXVlSWQoKS5hdHRyKCAiaWQiICk7CgkJCQloZWFkZXIuYXR0ciggImFyaWEtY29udHJvbHMiLCBwYW5lbElkICk7CgkJCQlwYW5lbC5hdHRyKCAiYXJpYS1sYWJlbGxlZGJ5IiwgaGVhZGVySWQgKTsKCQkJfSApCgkJCS5uZXh0KCkKCQkJCS5hdHRyKCAicm9sZSIsICJ0YWJwYW5lbCIgKTsKCgkJdGhpcy5oZWFkZXJzCgkJCS5ub3QoIHRoaXMuYWN0aXZlICkKCQkJCS5hdHRyKCB7CgkJCQkJImFyaWEtc2VsZWN0ZWQiOiAiZmFsc2UiLAoJCQkJCSJhcmlhLWV4cGFuZGVkIjogImZhbHNlIiwKCQkJCQl0YWJJbmRleDogLTEKCQkJCX0gKQoJCQkJLm5leHQoKQoJCQkJCS5hdHRyKCB7CgkJCQkJCSJhcmlhLWhpZGRlbiI6ICJ0cnVlIgoJCQkJCX0gKQoJCQkJCS5oaWRlKCk7CgoJCS8vIE1ha2Ugc3VyZSBhdCBsZWFzdCBvbmUgaGVhZGVyIGlzIGluIHRoZSB0YWIgb3JkZXIKCQlpZiAoICF0aGlzLmFjdGl2ZS5sZW5ndGggKSB7CgkJCXRoaXMuaGVhZGVycy5lcSggMCApLmF0dHIoICJ0YWJJbmRleCIsIDAgKTsKCQl9IGVsc2UgewoJCQl0aGlzLmFjdGl2ZS5hdHRyKCB7CgkJCQkiYXJpYS1zZWxlY3RlZCI6ICJ0cnVlIiwKCQkJCSJhcmlhLWV4cGFuZGVkIjogInRydWUiLAoJCQkJdGFiSW5kZXg6IDAKCQkJfSApCgkJCQkubmV4dCgpCgkJCQkJLmF0dHIoIHsKCQkJCQkJImFyaWEtaGlkZGVuIjogImZhbHNlIgoJCQkJCX0gKTsKCQl9CgoJCXRoaXMuX2NyZWF0ZUljb25zKCk7CgoJCXRoaXMuX3NldHVwRXZlbnRzKCBvcHRpb25zLmV2ZW50ICk7CgoJCWlmICggaGVpZ2h0U3R5bGUgPT09ICJmaWxsIiApIHsKCQkJbWF4SGVpZ2h0ID0gcGFyZW50LmhlaWdodCgpOwoJCQl0aGlzLmVsZW1lbnQuc2libGluZ3MoICI6dmlzaWJsZSIgKS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCXZhciBlbGVtID0gJCggdGhpcyApLAoJCQkJCXBvc2l0aW9uID0gZWxlbS5jc3MoICJwb3NpdGlvbiIgKTsKCgkJCQlpZiAoIHBvc2l0aW9uID09PSAiYWJzb2x1dGUiIHx8IHBvc2l0aW9uID09PSAiZml4ZWQiICkgewoJCQkJCXJldHVybjsKCQkJCX0KCQkJCW1heEhlaWdodCAtPSBlbGVtLm91dGVySGVpZ2h0KCB0cnVlICk7CgkJCX0gKTsKCgkJCXRoaXMuaGVhZGVycy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCW1heEhlaWdodCAtPSAkKCB0aGlzICkub3V0ZXJIZWlnaHQoIHRydWUgKTsKCQkJfSApOwoKCQkJdGhpcy5oZWFkZXJzLm5leHQoKQoJCQkJLmVhY2goIGZ1bmN0aW9uKCkgewoJCQkJCSQoIHRoaXMgKS5oZWlnaHQoIE1hdGgubWF4KCAwLCBtYXhIZWlnaHQgLQoJCQkJCQkkKCB0aGlzICkuaW5uZXJIZWlnaHQoKSArICQoIHRoaXMgKS5oZWlnaHQoKSApICk7CgkJCQl9ICkKCQkJCS5jc3MoICJvdmVyZmxvdyIsICJhdXRvIiApOwoJCX0gZWxzZSBpZiAoIGhlaWdodFN0eWxlID09PSAiYXV0byIgKSB7CgkJCW1heEhlaWdodCA9IDA7CgkJCXRoaXMuaGVhZGVycy5uZXh0KCkKCQkJCS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCQl2YXIgaXNWaXNpYmxlID0gJCggdGhpcyApLmlzKCAiOnZpc2libGUiICk7CgkJCQkJaWYgKCAhaXNWaXNpYmxlICkgewoJCQkJCQkkKCB0aGlzICkuc2hvdygpOwoJCQkJCX0KCQkJCQltYXhIZWlnaHQgPSBNYXRoLm1heCggbWF4SGVpZ2h0LCAkKCB0aGlzICkuY3NzKCAiaGVpZ2h0IiwgIiIgKS5oZWlnaHQoKSApOwoJCQkJCWlmICggIWlzVmlzaWJsZSApIHsKCQkJCQkJJCggdGhpcyApLmhpZGUoKTsKCQkJCQl9CgkJCQl9ICkKCQkJCS5oZWlnaHQoIG1heEhlaWdodCApOwoJCX0KCX0sCgoJX2FjdGl2YXRlOiBmdW5jdGlvbiggaW5kZXggKSB7CgkJdmFyIGFjdGl2ZSA9IHRoaXMuX2ZpbmRBY3RpdmUoIGluZGV4IClbIDAgXTsKCgkJLy8gVHJ5aW5nIHRvIGFjdGl2YXRlIHRoZSBhbHJlYWR5IGFjdGl2ZSBwYW5lbAoJCWlmICggYWN0aXZlID09PSB0aGlzLmFjdGl2ZVsgMCBdICkgewoJCQlyZXR1cm47CgkJfQoKCQkvLyBUcnlpbmcgdG8gY29sbGFwc2UsIHNpbXVsYXRlIGEgY2xpY2sgb24gdGhlIGN1cnJlbnRseSBhY3RpdmUgaGVhZGVyCgkJYWN0aXZlID0gYWN0aXZlIHx8IHRoaXMuYWN0aXZlWyAwIF07CgoJCXRoaXMuX2V2ZW50SGFuZGxlciggewoJCQl0YXJnZXQ6IGFjdGl2ZSwKCQkJY3VycmVudFRhcmdldDogYWN0aXZlLAoJCQlwcmV2ZW50RGVmYXVsdDogJC5ub29wCgkJfSApOwoJfSwKCglfZmluZEFjdGl2ZTogZnVuY3Rpb24oIHNlbGVjdG9yICkgewoJCXJldHVybiB0eXBlb2Ygc2VsZWN0b3IgPT09ICJudW1iZXIiID8gdGhpcy5oZWFkZXJzLmVxKCBzZWxlY3RvciApIDogJCgpOwoJfSwKCglfc2V0dXBFdmVudHM6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgZXZlbnRzID0gewoJCQlrZXlkb3duOiAiX2tleWRvd24iCgkJfTsKCQlpZiAoIGV2ZW50ICkgewoJCQkkLmVhY2goIGV2ZW50LnNwbGl0KCAiICIgKSwgZnVuY3Rpb24oIGluZGV4LCBldmVudE5hbWUgKSB7CgkJCQlldmVudHNbIGV2ZW50TmFtZSBdID0gIl9ldmVudEhhbmRsZXIiOwoJCQl9ICk7CgkJfQoKCQl0aGlzLl9vZmYoIHRoaXMuaGVhZGVycy5hZGQoIHRoaXMuaGVhZGVycy5uZXh0KCkgKSApOwoJCXRoaXMuX29uKCB0aGlzLmhlYWRlcnMsIGV2ZW50cyApOwoJCXRoaXMuX29uKCB0aGlzLmhlYWRlcnMubmV4dCgpLCB7IGtleWRvd246ICJfcGFuZWxLZXlEb3duIiB9ICk7CgkJdGhpcy5faG92ZXJhYmxlKCB0aGlzLmhlYWRlcnMgKTsKCQl0aGlzLl9mb2N1c2FibGUoIHRoaXMuaGVhZGVycyApOwoJfSwKCglfZXZlbnRIYW5kbGVyOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdmFyIGFjdGl2ZUNoaWxkcmVuLCBjbGlja2VkQ2hpbGRyZW4sCgkJCW9wdGlvbnMgPSB0aGlzLm9wdGlvbnMsCgkJCWFjdGl2ZSA9IHRoaXMuYWN0aXZlLAoJCQljbGlja2VkID0gJCggZXZlbnQuY3VycmVudFRhcmdldCApLAoJCQljbGlja2VkSXNBY3RpdmUgPSBjbGlja2VkWyAwIF0gPT09IGFjdGl2ZVsgMCBdLAoJCQljb2xsYXBzaW5nID0gY2xpY2tlZElzQWN0aXZlICYmIG9wdGlvbnMuY29sbGFwc2libGUsCgkJCXRvU2hvdyA9IGNvbGxhcHNpbmcgPyAkKCkgOiBjbGlja2VkLm5leHQoKSwKCQkJdG9IaWRlID0gYWN0aXZlLm5leHQoKSwKCQkJZXZlbnREYXRhID0gewoJCQkJb2xkSGVhZGVyOiBhY3RpdmUsCgkJCQlvbGRQYW5lbDogdG9IaWRlLAoJCQkJbmV3SGVhZGVyOiBjb2xsYXBzaW5nID8gJCgpIDogY2xpY2tlZCwKCQkJCW5ld1BhbmVsOiB0b1Nob3cKCQkJfTsKCgkJZXZlbnQucHJldmVudERlZmF1bHQoKTsKCgkJaWYgKAoKCQkJCS8vIGNsaWNrIG9uIGFjdGl2ZSBoZWFkZXIsIGJ1dCBub3QgY29sbGFwc2libGUKCQkJCSggY2xpY2tlZElzQWN0aXZlICYmICFvcHRpb25zLmNvbGxhcHNpYmxlICkgfHwKCgkJCQkvLyBhbGxvdyBjYW5jZWxpbmcgYWN0aXZhdGlvbgoJCQkJKCB0aGlzLl90cmlnZ2VyKCAiYmVmb3JlQWN0aXZhdGUiLCBldmVudCwgZXZlbnREYXRhICkgPT09IGZhbHNlICkgKSB7CgkJCXJldHVybjsKCQl9CgoJCW9wdGlvbnMuYWN0aXZlID0gY29sbGFwc2luZyA/IGZhbHNlIDogdGhpcy5oZWFkZXJzLmluZGV4KCBjbGlja2VkICk7CgoJCS8vIFdoZW4gdGhlIGNhbGwgdG8gLl90b2dnbGUoKSBjb21lcyBhZnRlciB0aGUgY2xhc3MgY2hhbmdlcwoJCS8vIGl0IGNhdXNlcyBhIHZlcnkgb2RkIGJ1ZyBpbiBJRSA4IChzZWUgIzY3MjApCgkJdGhpcy5hY3RpdmUgPSBjbGlja2VkSXNBY3RpdmUgPyAkKCkgOiBjbGlja2VkOwoJCXRoaXMuX3RvZ2dsZSggZXZlbnREYXRhICk7CgoJCS8vIFN3aXRjaCBjbGFzc2VzCgkJLy8gY29ybmVyIGNsYXNzZXMgb24gdGhlIHByZXZpb3VzbHkgYWN0aXZlIGhlYWRlciBzdGF5IGFmdGVyIHRoZSBhbmltYXRpb24KCQl0aGlzLl9yZW1vdmVDbGFzcyggYWN0aXZlLCAidWktYWNjb3JkaW9uLWhlYWRlci1hY3RpdmUiLCAidWktc3RhdGUtYWN0aXZlIiApOwoJCWlmICggb3B0aW9ucy5pY29ucyApIHsKCQkJYWN0aXZlQ2hpbGRyZW4gPSBhY3RpdmUuY2hpbGRyZW4oICIudWktYWNjb3JkaW9uLWhlYWRlci1pY29uIiApOwoJCQl0aGlzLl9yZW1vdmVDbGFzcyggYWN0aXZlQ2hpbGRyZW4sIG51bGwsIG9wdGlvbnMuaWNvbnMuYWN0aXZlSGVhZGVyICkKCQkJCS5fYWRkQ2xhc3MoIGFjdGl2ZUNoaWxkcmVuLCBudWxsLCBvcHRpb25zLmljb25zLmhlYWRlciApOwoJCX0KCgkJaWYgKCAhY2xpY2tlZElzQWN0aXZlICkgewoJCQl0aGlzLl9yZW1vdmVDbGFzcyggY2xpY2tlZCwgInVpLWFjY29yZGlvbi1oZWFkZXItY29sbGFwc2VkIiApCgkJCQkuX2FkZENsYXNzKCBjbGlja2VkLCAidWktYWNjb3JkaW9uLWhlYWRlci1hY3RpdmUiLCAidWktc3RhdGUtYWN0aXZlIiApOwoJCQlpZiAoIG9wdGlvbnMuaWNvbnMgKSB7CgkJCQljbGlja2VkQ2hpbGRyZW4gPSBjbGlja2VkLmNoaWxkcmVuKCAiLnVpLWFjY29yZGlvbi1oZWFkZXItaWNvbiIgKTsKCQkJCXRoaXMuX3JlbW92ZUNsYXNzKCBjbGlja2VkQ2hpbGRyZW4sIG51bGwsIG9wdGlvbnMuaWNvbnMuaGVhZGVyICkKCQkJCQkuX2FkZENsYXNzKCBjbGlja2VkQ2hpbGRyZW4sIG51bGwsIG9wdGlvbnMuaWNvbnMuYWN0aXZlSGVhZGVyICk7CgkJCX0KCgkJCXRoaXMuX2FkZENsYXNzKCBjbGlja2VkLm5leHQoKSwgInVpLWFjY29yZGlvbi1jb250ZW50LWFjdGl2ZSIgKTsKCQl9Cgl9LAoKCV90b2dnbGU6IGZ1bmN0aW9uKCBkYXRhICkgewoJCXZhciB0b1Nob3cgPSBkYXRhLm5ld1BhbmVsLAoJCQl0b0hpZGUgPSB0aGlzLnByZXZTaG93Lmxlbmd0aCA/IHRoaXMucHJldlNob3cgOiBkYXRhLm9sZFBhbmVsOwoKCQkvLyBIYW5kbGUgYWN0aXZhdGluZyBhIHBhbmVsIGR1cmluZyB0aGUgYW5pbWF0aW9uIGZvciBhbm90aGVyIGFjdGl2YXRpb24KCQl0aGlzLnByZXZTaG93LmFkZCggdGhpcy5wcmV2SGlkZSApLnN0b3AoIHRydWUsIHRydWUgKTsKCQl0aGlzLnByZXZTaG93ID0gdG9TaG93OwoJCXRoaXMucHJldkhpZGUgPSB0b0hpZGU7CgoJCWlmICggdGhpcy5vcHRpb25zLmFuaW1hdGUgKSB7CgkJCXRoaXMuX2FuaW1hdGUoIHRvU2hvdywgdG9IaWRlLCBkYXRhICk7CgkJfSBlbHNlIHsKCQkJdG9IaWRlLmhpZGUoKTsKCQkJdG9TaG93LnNob3coKTsKCQkJdGhpcy5fdG9nZ2xlQ29tcGxldGUoIGRhdGEgKTsKCQl9CgoJCXRvSGlkZS5hdHRyKCB7CgkJCSJhcmlhLWhpZGRlbiI6ICJ0cnVlIgoJCX0gKTsKCQl0b0hpZGUucHJldigpLmF0dHIoIHsKCQkJImFyaWEtc2VsZWN0ZWQiOiAiZmFsc2UiLAoJCQkiYXJpYS1leHBhbmRlZCI6ICJmYWxzZSIKCQl9ICk7CgoJCS8vIGlmIHdlJ3JlIHN3aXRjaGluZyBwYW5lbHMsIHJlbW92ZSB0aGUgb2xkIGhlYWRlciBmcm9tIHRoZSB0YWIgb3JkZXIKCQkvLyBpZiB3ZSdyZSBvcGVuaW5nIGZyb20gY29sbGFwc2VkIHN0YXRlLCByZW1vdmUgdGhlIHByZXZpb3VzIGhlYWRlciBmcm9tIHRoZSB0YWIgb3JkZXIKCQkvLyBpZiB3ZSdyZSBjb2xsYXBzaW5nLCB0aGVuIGtlZXAgdGhlIGNvbGxhcHNpbmcgaGVhZGVyIGluIHRoZSB0YWIgb3JkZXIKCQlpZiAoIHRvU2hvdy5sZW5ndGggJiYgdG9IaWRlLmxlbmd0aCApIHsKCQkJdG9IaWRlLnByZXYoKS5hdHRyKCB7CgkJCQkidGFiSW5kZXgiOiAtMSwKCQkJCSJhcmlhLWV4cGFuZGVkIjogImZhbHNlIgoJCQl9ICk7CgkJfSBlbHNlIGlmICggdG9TaG93Lmxlbmd0aCApIHsKCQkJdGhpcy5oZWFkZXJzLmZpbHRlciggZnVuY3Rpb24oKSB7CgkJCQlyZXR1cm4gcGFyc2VJbnQoICQoIHRoaXMgKS5hdHRyKCAidGFiSW5kZXgiICksIDEwICkgPT09IDA7CgkJCX0gKQoJCQkJLmF0dHIoICJ0YWJJbmRleCIsIC0xICk7CgkJfQoKCQl0b1Nob3cKCQkJLmF0dHIoICJhcmlhLWhpZGRlbiIsICJmYWxzZSIgKQoJCQkucHJldigpCgkJCQkuYXR0ciggewoJCQkJCSJhcmlhLXNlbGVjdGVkIjogInRydWUiLAoJCQkJCSJhcmlhLWV4cGFuZGVkIjogInRydWUiLAoJCQkJCXRhYkluZGV4OiAwCgkJCQl9ICk7Cgl9LAoKCV9hbmltYXRlOiBmdW5jdGlvbiggdG9TaG93LCB0b0hpZGUsIGRhdGEgKSB7CgkJdmFyIHRvdGFsLCBlYXNpbmcsIGR1cmF0aW9uLAoJCQl0aGF0ID0gdGhpcywKCQkJYWRqdXN0ID0gMCwKCQkJYm94U2l6aW5nID0gdG9TaG93LmNzcyggImJveC1zaXppbmciICksCgkJCWRvd24gPSB0b1Nob3cubGVuZ3RoICYmCgkJCQkoICF0b0hpZGUubGVuZ3RoIHx8ICggdG9TaG93LmluZGV4KCkgPCB0b0hpZGUuaW5kZXgoKSApICksCgkJCWFuaW1hdGUgPSB0aGlzLm9wdGlvbnMuYW5pbWF0ZSB8fCB7fSwKCQkJb3B0aW9ucyA9IGRvd24gJiYgYW5pbWF0ZS5kb3duIHx8IGFuaW1hdGUsCgkJCWNvbXBsZXRlID0gZnVuY3Rpb24oKSB7CgkJCQl0aGF0Ll90b2dnbGVDb21wbGV0ZSggZGF0YSApOwoJCQl9OwoKCQlpZiAoIHR5cGVvZiBvcHRpb25zID09PSAibnVtYmVyIiApIHsKCQkJZHVyYXRpb24gPSBvcHRpb25zOwoJCX0KCQlpZiAoIHR5cGVvZiBvcHRpb25zID09PSAic3RyaW5nIiApIHsKCQkJZWFzaW5nID0gb3B0aW9uczsKCQl9CgoJCS8vIGZhbGwgYmFjayBmcm9tIG9wdGlvbnMgdG8gYW5pbWF0aW9uIGluIGNhc2Ugb2YgcGFydGlhbCBkb3duIHNldHRpbmdzCgkJZWFzaW5nID0gZWFzaW5nIHx8IG9wdGlvbnMuZWFzaW5nIHx8IGFuaW1hdGUuZWFzaW5nOwoJCWR1cmF0aW9uID0gZHVyYXRpb24gfHwgb3B0aW9ucy5kdXJhdGlvbiB8fCBhbmltYXRlLmR1cmF0aW9uOwoKCQlpZiAoICF0b0hpZGUubGVuZ3RoICkgewoJCQlyZXR1cm4gdG9TaG93LmFuaW1hdGUoIHRoaXMuc2hvd1Byb3BzLCBkdXJhdGlvbiwgZWFzaW5nLCBjb21wbGV0ZSApOwoJCX0KCQlpZiAoICF0b1Nob3cubGVuZ3RoICkgewoJCQlyZXR1cm4gdG9IaWRlLmFuaW1hdGUoIHRoaXMuaGlkZVByb3BzLCBkdXJhdGlvbiwgZWFzaW5nLCBjb21wbGV0ZSApOwoJCX0KCgkJdG90YWwgPSB0b1Nob3cuc2hvdygpLm91dGVySGVpZ2h0KCk7CgkJdG9IaWRlLmFuaW1hdGUoIHRoaXMuaGlkZVByb3BzLCB7CgkJCWR1cmF0aW9uOiBkdXJhdGlvbiwKCQkJZWFzaW5nOiBlYXNpbmcsCgkJCXN0ZXA6IGZ1bmN0aW9uKCBub3csIGZ4ICkgewoJCQkJZngubm93ID0gTWF0aC5yb3VuZCggbm93ICk7CgkJCX0KCQl9ICk7CgkJdG9TaG93CgkJCS5oaWRlKCkKCQkJLmFuaW1hdGUoIHRoaXMuc2hvd1Byb3BzLCB7CgkJCQlkdXJhdGlvbjogZHVyYXRpb24sCgkJCQllYXNpbmc6IGVhc2luZywKCQkJCWNvbXBsZXRlOiBjb21wbGV0ZSwKCQkJCXN0ZXA6IGZ1bmN0aW9uKCBub3csIGZ4ICkgewoJCQkJCWZ4Lm5vdyA9IE1hdGgucm91bmQoIG5vdyApOwoJCQkJCWlmICggZngucHJvcCAhPT0gImhlaWdodCIgKSB7CgkJCQkJCWlmICggYm94U2l6aW5nID09PSAiY29udGVudC1ib3giICkgewoJCQkJCQkJYWRqdXN0ICs9IGZ4Lm5vdzsKCQkJCQkJfQoJCQkJCX0gZWxzZSBpZiAoIHRoYXQub3B0aW9ucy5oZWlnaHRTdHlsZSAhPT0gImNvbnRlbnQiICkgewoJCQkJCQlmeC5ub3cgPSBNYXRoLnJvdW5kKCB0b3RhbCAtIHRvSGlkZS5vdXRlckhlaWdodCgpIC0gYWRqdXN0ICk7CgkJCQkJCWFkanVzdCA9IDA7CgkJCQkJfQoJCQkJfQoJCQl9ICk7Cgl9LAoKCV90b2dnbGVDb21wbGV0ZTogZnVuY3Rpb24oIGRhdGEgKSB7CgkJdmFyIHRvSGlkZSA9IGRhdGEub2xkUGFuZWwsCgkJCXByZXYgPSB0b0hpZGUucHJldigpOwoKCQl0aGlzLl9yZW1vdmVDbGFzcyggdG9IaWRlLCAidWktYWNjb3JkaW9uLWNvbnRlbnQtYWN0aXZlIiApOwoJCXRoaXMuX3JlbW92ZUNsYXNzKCBwcmV2LCAidWktYWNjb3JkaW9uLWhlYWRlci1hY3RpdmUiICkKCQkJLl9hZGRDbGFzcyggcHJldiwgInVpLWFjY29yZGlvbi1oZWFkZXItY29sbGFwc2VkIiApOwoKCQkvLyBXb3JrIGFyb3VuZCBmb3IgcmVuZGVyaW5nIGJ1ZyBpbiBJRSAoIzU0MjEpCgkJaWYgKCB0b0hpZGUubGVuZ3RoICkgewoJCQl0b0hpZGUucGFyZW50KClbIDAgXS5jbGFzc05hbWUgPSB0b0hpZGUucGFyZW50KClbIDAgXS5jbGFzc05hbWU7CgkJfQoJCXRoaXMuX3RyaWdnZXIoICJhY3RpdmF0ZSIsIG51bGwsIGRhdGEgKTsKCX0KfSApOwoKCi8qIQogKiBqUXVlcnkgVUkgTWVudSAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IE1lbnUKLy8+Pmdyb3VwOiBXaWRnZXRzCi8vPj5kZXNjcmlwdGlvbjogQ3JlYXRlcyBuZXN0YWJsZSBtZW51cy4KLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL21lbnUvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9tZW51LwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvY29yZS5jc3MKLy8+PmNzcy5zdHJ1Y3R1cmU6IC4uLy4uL3RoZW1lcy9iYXNlL21lbnUuY3NzCi8vPj5jc3MudGhlbWU6IC4uLy4uL3RoZW1lcy9iYXNlL3RoZW1lLmNzcwoKCgp2YXIgd2lkZ2V0c01lbnUgPSAkLndpZGdldCggInVpLm1lbnUiLCB7Cgl2ZXJzaW9uOiAiMS4xMi4xIiwKCWRlZmF1bHRFbGVtZW50OiAiPHVsPiIsCglkZWxheTogMzAwLAoJb3B0aW9uczogewoJCWljb25zOiB7CgkJCXN1Ym1lbnU6ICJ1aS1pY29uLWNhcmV0LTEtZSIKCQl9LAoJCWl0ZW1zOiAiPiAqIiwKCQltZW51czogInVsIiwKCQlwb3NpdGlvbjogewoJCQlteTogImxlZnQgdG9wIiwKCQkJYXQ6ICJyaWdodCB0b3AiCgkJfSwKCQlyb2xlOiAibWVudSIsCgoJCS8vIENhbGxiYWNrcwoJCWJsdXI6IG51bGwsCgkJZm9jdXM6IG51bGwsCgkJc2VsZWN0OiBudWxsCgl9LAoKCV9jcmVhdGU6IGZ1bmN0aW9uKCkgewoJCXRoaXMuYWN0aXZlTWVudSA9IHRoaXMuZWxlbWVudDsKCgkJLy8gRmxhZyB1c2VkIHRvIHByZXZlbnQgZmlyaW5nIG9mIHRoZSBjbGljayBoYW5kbGVyCgkJLy8gYXMgdGhlIGV2ZW50IGJ1YmJsZXMgdXAgdGhyb3VnaCBuZXN0ZWQgbWVudXMKCQl0aGlzLm1vdXNlSGFuZGxlZCA9IGZhbHNlOwoJCXRoaXMuZWxlbWVudAoJCQkudW5pcXVlSWQoKQoJCQkuYXR0ciggewoJCQkJcm9sZTogdGhpcy5vcHRpb25zLnJvbGUsCgkJCQl0YWJJbmRleDogMAoJCQl9ICk7CgoJCXRoaXMuX2FkZENsYXNzKCAidWktbWVudSIsICJ1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQiICk7CgkJdGhpcy5fb24oIHsKCgkJCS8vIFByZXZlbnQgZm9jdXMgZnJvbSBzdGlja2luZyB0byBsaW5rcyBpbnNpZGUgbWVudSBhZnRlciBjbGlja2luZwoJCQkvLyB0aGVtIChmb2N1cyBzaG91bGQgYWx3YXlzIHN0YXkgb24gVUwgZHVyaW5nIG5hdmlnYXRpb24pLgoJCQkibW91c2Vkb3duIC51aS1tZW51LWl0ZW0iOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOwoJCQl9LAoJCQkiY2xpY2sgLnVpLW1lbnUtaXRlbSI6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCXZhciB0YXJnZXQgPSAkKCBldmVudC50YXJnZXQgKTsKCQkJCXZhciBhY3RpdmUgPSAkKCAkLnVpLnNhZmVBY3RpdmVFbGVtZW50KCB0aGlzLmRvY3VtZW50WyAwIF0gKSApOwoJCQkJaWYgKCAhdGhpcy5tb3VzZUhhbmRsZWQgJiYgdGFyZ2V0Lm5vdCggIi51aS1zdGF0ZS1kaXNhYmxlZCIgKS5sZW5ndGggKSB7CgkJCQkJdGhpcy5zZWxlY3QoIGV2ZW50ICk7CgoJCQkJCS8vIE9ubHkgc2V0IHRoZSBtb3VzZUhhbmRsZWQgZmxhZyBpZiB0aGUgZXZlbnQgd2lsbCBidWJibGUsIHNlZSAjOTQ2OS4KCQkJCQlpZiAoICFldmVudC5pc1Byb3BhZ2F0aW9uU3RvcHBlZCgpICkgewoJCQkJCQl0aGlzLm1vdXNlSGFuZGxlZCA9IHRydWU7CgkJCQkJfQoKCQkJCQkvLyBPcGVuIHN1Ym1lbnUgb24gY2xpY2sKCQkJCQlpZiAoIHRhcmdldC5oYXMoICIudWktbWVudSIgKS5sZW5ndGggKSB7CgkJCQkJCXRoaXMuZXhwYW5kKCBldmVudCApOwoJCQkJCX0gZWxzZSBpZiAoICF0aGlzLmVsZW1lbnQuaXMoICI6Zm9jdXMiICkgJiYKCQkJCQkJCWFjdGl2ZS5jbG9zZXN0KCAiLnVpLW1lbnUiICkubGVuZ3RoICkgewoKCQkJCQkJLy8gUmVkaXJlY3QgZm9jdXMgdG8gdGhlIG1lbnUKCQkJCQkJdGhpcy5lbGVtZW50LnRyaWdnZXIoICJmb2N1cyIsIFsgdHJ1ZSBdICk7CgoJCQkJCQkvLyBJZiB0aGUgYWN0aXZlIGl0ZW0gaXMgb24gdGhlIHRvcCBsZXZlbCwgbGV0IGl0IHN0YXkgYWN0aXZlLgoJCQkJCQkvLyBPdGhlcndpc2UsIGJsdXIgdGhlIGFjdGl2ZSBpdGVtIHNpbmNlIGl0IGlzIG5vIGxvbmdlciB2aXNpYmxlLgoJCQkJCQlpZiAoIHRoaXMuYWN0aXZlICYmIHRoaXMuYWN0aXZlLnBhcmVudHMoICIudWktbWVudSIgKS5sZW5ndGggPT09IDEgKSB7CgkJCQkJCQljbGVhclRpbWVvdXQoIHRoaXMudGltZXIgKTsKCQkJCQkJfQoJCQkJCX0KCQkJCX0KCQkJfSwKCQkJIm1vdXNlZW50ZXIgLnVpLW1lbnUtaXRlbSI6IGZ1bmN0aW9uKCBldmVudCApIHsKCgkJCQkvLyBJZ25vcmUgbW91c2UgZXZlbnRzIHdoaWxlIHR5cGVhaGVhZCBpcyBhY3RpdmUsIHNlZSAjMTA0NTguCgkJCQkvLyBQcmV2ZW50cyBmb2N1c2luZyB0aGUgd3JvbmcgaXRlbSB3aGVuIHR5cGVhaGVhZCBjYXVzZXMgYSBzY3JvbGwgd2hpbGUgdGhlIG1vdXNlCgkJCQkvLyBpcyBvdmVyIGFuIGl0ZW0gaW4gdGhlIG1lbnUKCQkJCWlmICggdGhpcy5wcmV2aW91c0ZpbHRlciApIHsKCQkJCQlyZXR1cm47CgkJCQl9CgoJCQkJdmFyIGFjdHVhbFRhcmdldCA9ICQoIGV2ZW50LnRhcmdldCApLmNsb3Nlc3QoICIudWktbWVudS1pdGVtIiApLAoJCQkJCXRhcmdldCA9ICQoIGV2ZW50LmN1cnJlbnRUYXJnZXQgKTsKCgkJCQkvLyBJZ25vcmUgYnViYmxlZCBldmVudHMgb24gcGFyZW50IGl0ZW1zLCBzZWUgIzExNjQxCgkJCQlpZiAoIGFjdHVhbFRhcmdldFsgMCBdICE9PSB0YXJnZXRbIDAgXSApIHsKCQkJCQlyZXR1cm47CgkJCQl9CgoJCQkJLy8gUmVtb3ZlIHVpLXN0YXRlLWFjdGl2ZSBjbGFzcyBmcm9tIHNpYmxpbmdzIG9mIHRoZSBuZXdseSBmb2N1c2VkIG1lbnUgaXRlbQoJCQkJLy8gdG8gYXZvaWQgYSBqdW1wIGNhdXNlZCBieSBhZGphY2VudCBlbGVtZW50cyBib3RoIGhhdmluZyBhIGNsYXNzIHdpdGggYSBib3JkZXIKCQkJCXRoaXMuX3JlbW92ZUNsYXNzKCB0YXJnZXQuc2libGluZ3MoKS5jaGlsZHJlbiggIi51aS1zdGF0ZS1hY3RpdmUiICksCgkJCQkJbnVsbCwgInVpLXN0YXRlLWFjdGl2ZSIgKTsKCQkJCXRoaXMuZm9jdXMoIGV2ZW50LCB0YXJnZXQgKTsKCQkJfSwKCQkJbW91c2VsZWF2ZTogImNvbGxhcHNlQWxsIiwKCQkJIm1vdXNlbGVhdmUgLnVpLW1lbnUiOiAiY29sbGFwc2VBbGwiLAoJCQlmb2N1czogZnVuY3Rpb24oIGV2ZW50LCBrZWVwQWN0aXZlSXRlbSApIHsKCgkJCQkvLyBJZiB0aGVyZSdzIGFscmVhZHkgYW4gYWN0aXZlIGl0ZW0sIGtlZXAgaXQgYWN0aXZlCgkJCQkvLyBJZiBub3QsIGFjdGl2YXRlIHRoZSBmaXJzdCBpdGVtCgkJCQl2YXIgaXRlbSA9IHRoaXMuYWN0aXZlIHx8IHRoaXMuZWxlbWVudC5maW5kKCB0aGlzLm9wdGlvbnMuaXRlbXMgKS5lcSggMCApOwoKCQkJCWlmICggIWtlZXBBY3RpdmVJdGVtICkgewoJCQkJCXRoaXMuZm9jdXMoIGV2ZW50LCBpdGVtICk7CgkJCQl9CgkJCX0sCgkJCWJsdXI6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCXRoaXMuX2RlbGF5KCBmdW5jdGlvbigpIHsKCQkJCQl2YXIgbm90Q29udGFpbmVkID0gISQuY29udGFpbnMoCgkJCQkJCXRoaXMuZWxlbWVudFsgMCBdLAoJCQkJCQkkLnVpLnNhZmVBY3RpdmVFbGVtZW50KCB0aGlzLmRvY3VtZW50WyAwIF0gKQoJCQkJCSk7CgkJCQkJaWYgKCBub3RDb250YWluZWQgKSB7CgkJCQkJCXRoaXMuY29sbGFwc2VBbGwoIGV2ZW50ICk7CgkJCQkJfQoJCQkJfSApOwoJCQl9LAoJCQlrZXlkb3duOiAiX2tleWRvd24iCgkJfSApOwoKCQl0aGlzLnJlZnJlc2goKTsKCgkJLy8gQ2xpY2tzIG91dHNpZGUgb2YgYSBtZW51IGNvbGxhcHNlIGFueSBvcGVuIG1lbnVzCgkJdGhpcy5fb24oIHRoaXMuZG9jdW1lbnQsIHsKCQkJY2xpY2s6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCWlmICggdGhpcy5fY2xvc2VPbkRvY3VtZW50Q2xpY2soIGV2ZW50ICkgKSB7CgkJCQkJdGhpcy5jb2xsYXBzZUFsbCggZXZlbnQgKTsKCQkJCX0KCgkJCQkvLyBSZXNldCB0aGUgbW91c2VIYW5kbGVkIGZsYWcKCQkJCXRoaXMubW91c2VIYW5kbGVkID0gZmFsc2U7CgkJCX0KCQl9ICk7Cgl9LAoKCV9kZXN0cm95OiBmdW5jdGlvbigpIHsKCQl2YXIgaXRlbXMgPSB0aGlzLmVsZW1lbnQuZmluZCggIi51aS1tZW51LWl0ZW0iICkKCQkJCS5yZW1vdmVBdHRyKCAicm9sZSBhcmlhLWRpc2FibGVkIiApLAoJCQlzdWJtZW51cyA9IGl0ZW1zLmNoaWxkcmVuKCAiLnVpLW1lbnUtaXRlbS13cmFwcGVyIiApCgkJCQkucmVtb3ZlVW5pcXVlSWQoKQoJCQkJLnJlbW92ZUF0dHIoICJ0YWJJbmRleCByb2xlIGFyaWEtaGFzcG9wdXAiICk7CgoJCS8vIERlc3Ryb3kgKHN1YiltZW51cwoJCXRoaXMuZWxlbWVudAoJCQkucmVtb3ZlQXR0ciggImFyaWEtYWN0aXZlZGVzY2VuZGFudCIgKQoJCQkuZmluZCggIi51aS1tZW51IiApLmFkZEJhY2soKQoJCQkJLnJlbW92ZUF0dHIoICJyb2xlIGFyaWEtbGFiZWxsZWRieSBhcmlhLWV4cGFuZGVkIGFyaWEtaGlkZGVuIGFyaWEtZGlzYWJsZWQgIiArCgkJCQkJInRhYkluZGV4IiApCgkJCQkucmVtb3ZlVW5pcXVlSWQoKQoJCQkJLnNob3coKTsKCgkJc3VibWVudXMuY2hpbGRyZW4oKS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJdmFyIGVsZW0gPSAkKCB0aGlzICk7CgkJCWlmICggZWxlbS5kYXRhKCAidWktbWVudS1zdWJtZW51LWNhcmV0IiApICkgewoJCQkJZWxlbS5yZW1vdmUoKTsKCQkJfQoJCX0gKTsKCX0sCgoJX2tleWRvd246IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgbWF0Y2gsIHByZXYsIGNoYXJhY3Rlciwgc2tpcCwKCQkJcHJldmVudERlZmF1bHQgPSB0cnVlOwoKCQlzd2l0Y2ggKCBldmVudC5rZXlDb2RlICkgewoJCWNhc2UgJC51aS5rZXlDb2RlLlBBR0VfVVA6CgkJCXRoaXMucHJldmlvdXNQYWdlKCBldmVudCApOwoJCQlicmVhazsKCQljYXNlICQudWkua2V5Q29kZS5QQUdFX0RPV046CgkJCXRoaXMubmV4dFBhZ2UoIGV2ZW50ICk7CgkJCWJyZWFrOwoJCWNhc2UgJC51aS5rZXlDb2RlLkhPTUU6CgkJCXRoaXMuX21vdmUoICJmaXJzdCIsICJmaXJzdCIsIGV2ZW50ICk7CgkJCWJyZWFrOwoJCWNhc2UgJC51aS5rZXlDb2RlLkVORDoKCQkJdGhpcy5fbW92ZSggImxhc3QiLCAibGFzdCIsIGV2ZW50ICk7CgkJCWJyZWFrOwoJCWNhc2UgJC51aS5rZXlDb2RlLlVQOgoJCQl0aGlzLnByZXZpb3VzKCBldmVudCApOwoJCQlicmVhazsKCQljYXNlICQudWkua2V5Q29kZS5ET1dOOgoJCQl0aGlzLm5leHQoIGV2ZW50ICk7CgkJCWJyZWFrOwoJCWNhc2UgJC51aS5rZXlDb2RlLkxFRlQ6CgkJCXRoaXMuY29sbGFwc2UoIGV2ZW50ICk7CgkJCWJyZWFrOwoJCWNhc2UgJC51aS5rZXlDb2RlLlJJR0hUOgoJCQlpZiAoIHRoaXMuYWN0aXZlICYmICF0aGlzLmFjdGl2ZS5pcyggIi51aS1zdGF0ZS1kaXNhYmxlZCIgKSApIHsKCQkJCXRoaXMuZXhwYW5kKCBldmVudCApOwoJCQl9CgkJCWJyZWFrOwoJCWNhc2UgJC51aS5rZXlDb2RlLkVOVEVSOgoJCWNhc2UgJC51aS5rZXlDb2RlLlNQQUNFOgoJCQl0aGlzLl9hY3RpdmF0ZSggZXZlbnQgKTsKCQkJYnJlYWs7CgkJY2FzZSAkLnVpLmtleUNvZGUuRVNDQVBFOgoJCQl0aGlzLmNvbGxhcHNlKCBldmVudCApOwoJCQlicmVhazsKCQlkZWZhdWx0OgoJCQlwcmV2ZW50RGVmYXVsdCA9IGZhbHNlOwoJCQlwcmV2ID0gdGhpcy5wcmV2aW91c0ZpbHRlciB8fCAiIjsKCQkJc2tpcCA9IGZhbHNlOwoKCQkJLy8gU3VwcG9ydCBudW1iZXIgcGFkIHZhbHVlcwoJCQljaGFyYWN0ZXIgPSBldmVudC5rZXlDb2RlID49IDk2ICYmIGV2ZW50LmtleUNvZGUgPD0gMTA1ID8KCQkJCSggZXZlbnQua2V5Q29kZSAtIDk2ICkudG9TdHJpbmcoKSA6IFN0cmluZy5mcm9tQ2hhckNvZGUoIGV2ZW50LmtleUNvZGUgKTsKCgkJCWNsZWFyVGltZW91dCggdGhpcy5maWx0ZXJUaW1lciApOwoKCQkJaWYgKCBjaGFyYWN0ZXIgPT09IHByZXYgKSB7CgkJCQlza2lwID0gdHJ1ZTsKCQkJfSBlbHNlIHsKCQkJCWNoYXJhY3RlciA9IHByZXYgKyBjaGFyYWN0ZXI7CgkJCX0KCgkJCW1hdGNoID0gdGhpcy5fZmlsdGVyTWVudUl0ZW1zKCBjaGFyYWN0ZXIgKTsKCQkJbWF0Y2ggPSBza2lwICYmIG1hdGNoLmluZGV4KCB0aGlzLmFjdGl2ZS5uZXh0KCkgKSAhPT0gLTEgPwoJCQkJdGhpcy5hY3RpdmUubmV4dEFsbCggIi51aS1tZW51LWl0ZW0iICkgOgoJCQkJbWF0Y2g7CgoJCQkvLyBJZiBubyBtYXRjaGVzIG9uIHRoZSBjdXJyZW50IGZpbHRlciwgcmVzZXQgdG8gdGhlIGxhc3QgY2hhcmFjdGVyIHByZXNzZWQKCQkJLy8gdG8gbW92ZSBkb3duIHRoZSBtZW51IHRvIHRoZSBmaXJzdCBpdGVtIHRoYXQgc3RhcnRzIHdpdGggdGhhdCBjaGFyYWN0ZXIKCQkJaWYgKCAhbWF0Y2gubGVuZ3RoICkgewoJCQkJY2hhcmFjdGVyID0gU3RyaW5nLmZyb21DaGFyQ29kZSggZXZlbnQua2V5Q29kZSApOwoJCQkJbWF0Y2ggPSB0aGlzLl9maWx0ZXJNZW51SXRlbXMoIGNoYXJhY3RlciApOwoJCQl9CgoJCQlpZiAoIG1hdGNoLmxlbmd0aCApIHsKCQkJCXRoaXMuZm9jdXMoIGV2ZW50LCBtYXRjaCApOwoJCQkJdGhpcy5wcmV2aW91c0ZpbHRlciA9IGNoYXJhY3RlcjsKCQkJCXRoaXMuZmlsdGVyVGltZXIgPSB0aGlzLl9kZWxheSggZnVuY3Rpb24oKSB7CgkJCQkJZGVsZXRlIHRoaXMucHJldmlvdXNGaWx0ZXI7CgkJCQl9LCAxMDAwICk7CgkJCX0gZWxzZSB7CgkJCQlkZWxldGUgdGhpcy5wcmV2aW91c0ZpbHRlcjsKCQkJfQoJCX0KCgkJaWYgKCBwcmV2ZW50RGVmYXVsdCApIHsKCQkJZXZlbnQucHJldmVudERlZmF1bHQoKTsKCQl9Cgl9LAoKCV9hY3RpdmF0ZTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCWlmICggdGhpcy5hY3RpdmUgJiYgIXRoaXMuYWN0aXZlLmlzKCAiLnVpLXN0YXRlLWRpc2FibGVkIiApICkgewoJCQlpZiAoIHRoaXMuYWN0aXZlLmNoaWxkcmVuKCAiW2FyaWEtaGFzcG9wdXA9J3RydWUnXSIgKS5sZW5ndGggKSB7CgkJCQl0aGlzLmV4cGFuZCggZXZlbnQgKTsKCQkJfSBlbHNlIHsKCQkJCXRoaXMuc2VsZWN0KCBldmVudCApOwoJCQl9CgkJfQoJfSwKCglyZWZyZXNoOiBmdW5jdGlvbigpIHsKCQl2YXIgbWVudXMsIGl0ZW1zLCBuZXdTdWJtZW51cywgbmV3SXRlbXMsIG5ld1dyYXBwZXJzLAoJCQl0aGF0ID0gdGhpcywKCQkJaWNvbiA9IHRoaXMub3B0aW9ucy5pY29ucy5zdWJtZW51LAoJCQlzdWJtZW51cyA9IHRoaXMuZWxlbWVudC5maW5kKCB0aGlzLm9wdGlvbnMubWVudXMgKTsKCgkJdGhpcy5fdG9nZ2xlQ2xhc3MoICJ1aS1tZW51LWljb25zIiwgbnVsbCwgISF0aGlzLmVsZW1lbnQuZmluZCggIi51aS1pY29uIiApLmxlbmd0aCApOwoKCQkvLyBJbml0aWFsaXplIG5lc3RlZCBtZW51cwoJCW5ld1N1Ym1lbnVzID0gc3VibWVudXMuZmlsdGVyKCAiOm5vdCgudWktbWVudSkiICkKCQkJLmhpZGUoKQoJCQkuYXR0ciggewoJCQkJcm9sZTogdGhpcy5vcHRpb25zLnJvbGUsCgkJCQkiYXJpYS1oaWRkZW4iOiAidHJ1ZSIsCgkJCQkiYXJpYS1leHBhbmRlZCI6ICJmYWxzZSIKCQkJfSApCgkJCS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCXZhciBtZW51ID0gJCggdGhpcyApLAoJCQkJCWl0ZW0gPSBtZW51LnByZXYoKSwKCQkJCQlzdWJtZW51Q2FyZXQgPSAkKCAiPHNwYW4+IiApLmRhdGEoICJ1aS1tZW51LXN1Ym1lbnUtY2FyZXQiLCB0cnVlICk7CgoJCQkJdGhhdC5fYWRkQ2xhc3MoIHN1Ym1lbnVDYXJldCwgInVpLW1lbnUtaWNvbiIsICJ1aS1pY29uICIgKyBpY29uICk7CgkJCQlpdGVtCgkJCQkJLmF0dHIoICJhcmlhLWhhc3BvcHVwIiwgInRydWUiICkKCQkJCQkucHJlcGVuZCggc3VibWVudUNhcmV0ICk7CgkJCQltZW51LmF0dHIoICJhcmlhLWxhYmVsbGVkYnkiLCBpdGVtLmF0dHIoICJpZCIgKSApOwoJCQl9ICk7CgoJCXRoaXMuX2FkZENsYXNzKCBuZXdTdWJtZW51cywgInVpLW1lbnUiLCAidWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWZyb250IiApOwoKCQltZW51cyA9IHN1Ym1lbnVzLmFkZCggdGhpcy5lbGVtZW50ICk7CgkJaXRlbXMgPSBtZW51cy5maW5kKCB0aGlzLm9wdGlvbnMuaXRlbXMgKTsKCgkJLy8gSW5pdGlhbGl6ZSBtZW51LWl0ZW1zIGNvbnRhaW5pbmcgc3BhY2VzIGFuZC9vciBkYXNoZXMgb25seSBhcyBkaXZpZGVycwoJCWl0ZW1zLm5vdCggIi51aS1tZW51LWl0ZW0iICkuZWFjaCggZnVuY3Rpb24oKSB7CgkJCXZhciBpdGVtID0gJCggdGhpcyApOwoJCQlpZiAoIHRoYXQuX2lzRGl2aWRlciggaXRlbSApICkgewoJCQkJdGhhdC5fYWRkQ2xhc3MoIGl0ZW0sICJ1aS1tZW51LWRpdmlkZXIiLCAidWktd2lkZ2V0LWNvbnRlbnQiICk7CgkJCX0KCQl9ICk7CgoJCS8vIERvbid0IHJlZnJlc2ggbGlzdCBpdGVtcyB0aGF0IGFyZSBhbHJlYWR5IGFkYXB0ZWQKCQluZXdJdGVtcyA9IGl0ZW1zLm5vdCggIi51aS1tZW51LWl0ZW0sIC51aS1tZW51LWRpdmlkZXIiICk7CgkJbmV3V3JhcHBlcnMgPSBuZXdJdGVtcy5jaGlsZHJlbigpCgkJCS5ub3QoICIudWktbWVudSIgKQoJCQkJLnVuaXF1ZUlkKCkKCQkJCS5hdHRyKCB7CgkJCQkJdGFiSW5kZXg6IC0xLAoJCQkJCXJvbGU6IHRoaXMuX2l0ZW1Sb2xlKCkKCQkJCX0gKTsKCQl0aGlzLl9hZGRDbGFzcyggbmV3SXRlbXMsICJ1aS1tZW51LWl0ZW0iICkKCQkJLl9hZGRDbGFzcyggbmV3V3JhcHBlcnMsICJ1aS1tZW51LWl0ZW0td3JhcHBlciIgKTsKCgkJLy8gQWRkIGFyaWEtZGlzYWJsZWQgYXR0cmlidXRlIHRvIGFueSBkaXNhYmxlZCBtZW51IGl0ZW0KCQlpdGVtcy5maWx0ZXIoICIudWktc3RhdGUtZGlzYWJsZWQiICkuYXR0ciggImFyaWEtZGlzYWJsZWQiLCAidHJ1ZSIgKTsKCgkJLy8gSWYgdGhlIGFjdGl2ZSBpdGVtIGhhcyBiZWVuIHJlbW92ZWQsIGJsdXIgdGhlIG1lbnUKCQlpZiAoIHRoaXMuYWN0aXZlICYmICEkLmNvbnRhaW5zKCB0aGlzLmVsZW1lbnRbIDAgXSwgdGhpcy5hY3RpdmVbIDAgXSApICkgewoJCQl0aGlzLmJsdXIoKTsKCQl9Cgl9LAoKCV9pdGVtUm9sZTogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHsKCQkJbWVudTogIm1lbnVpdGVtIiwKCQkJbGlzdGJveDogIm9wdGlvbiIKCQl9WyB0aGlzLm9wdGlvbnMucm9sZSBdOwoJfSwKCglfc2V0T3B0aW9uOiBmdW5jdGlvbigga2V5LCB2YWx1ZSApIHsKCQlpZiAoIGtleSA9PT0gImljb25zIiApIHsKCQkJdmFyIGljb25zID0gdGhpcy5lbGVtZW50LmZpbmQoICIudWktbWVudS1pY29uIiApOwoJCQl0aGlzLl9yZW1vdmVDbGFzcyggaWNvbnMsIG51bGwsIHRoaXMub3B0aW9ucy5pY29ucy5zdWJtZW51ICkKCQkJCS5fYWRkQ2xhc3MoIGljb25zLCBudWxsLCB2YWx1ZS5zdWJtZW51ICk7CgkJfQoJCXRoaXMuX3N1cGVyKCBrZXksIHZhbHVlICk7Cgl9LAoKCV9zZXRPcHRpb25EaXNhYmxlZDogZnVuY3Rpb24oIHZhbHVlICkgewoJCXRoaXMuX3N1cGVyKCB2YWx1ZSApOwoKCQl0aGlzLmVsZW1lbnQuYXR0ciggImFyaWEtZGlzYWJsZWQiLCBTdHJpbmcoIHZhbHVlICkgKTsKCQl0aGlzLl90b2dnbGVDbGFzcyggbnVsbCwgInVpLXN0YXRlLWRpc2FibGVkIiwgISF2YWx1ZSApOwoJfSwKCglmb2N1czogZnVuY3Rpb24oIGV2ZW50LCBpdGVtICkgewoJCXZhciBuZXN0ZWQsIGZvY3VzZWQsIGFjdGl2ZVBhcmVudDsKCQl0aGlzLmJsdXIoIGV2ZW50LCBldmVudCAmJiBldmVudC50eXBlID09PSAiZm9jdXMiICk7CgoJCXRoaXMuX3Njcm9sbEludG9WaWV3KCBpdGVtICk7CgoJCXRoaXMuYWN0aXZlID0gaXRlbS5maXJzdCgpOwoKCQlmb2N1c2VkID0gdGhpcy5hY3RpdmUuY2hpbGRyZW4oICIudWktbWVudS1pdGVtLXdyYXBwZXIiICk7CgkJdGhpcy5fYWRkQ2xhc3MoIGZvY3VzZWQsIG51bGwsICJ1aS1zdGF0ZS1hY3RpdmUiICk7CgoJCS8vIE9ubHkgdXBkYXRlIGFyaWEtYWN0aXZlZGVzY2VuZGFudCBpZiB0aGVyZSdzIGEgcm9sZQoJCS8vIG90aGVyd2lzZSB3ZSBhc3N1bWUgZm9jdXMgaXMgbWFuYWdlZCBlbHNld2hlcmUKCQlpZiAoIHRoaXMub3B0aW9ucy5yb2xlICkgewoJCQl0aGlzLmVsZW1lbnQuYXR0ciggImFyaWEtYWN0aXZlZGVzY2VuZGFudCIsIGZvY3VzZWQuYXR0ciggImlkIiApICk7CgkJfQoKCQkvLyBIaWdobGlnaHQgYWN0aXZlIHBhcmVudCBtZW51IGl0ZW0sIGlmIGFueQoJCWFjdGl2ZVBhcmVudCA9IHRoaXMuYWN0aXZlCgkJCS5wYXJlbnQoKQoJCQkJLmNsb3Nlc3QoICIudWktbWVudS1pdGVtIiApCgkJCQkJLmNoaWxkcmVuKCAiLnVpLW1lbnUtaXRlbS13cmFwcGVyIiApOwoJCXRoaXMuX2FkZENsYXNzKCBhY3RpdmVQYXJlbnQsIG51bGwsICJ1aS1zdGF0ZS1hY3RpdmUiICk7CgoJCWlmICggZXZlbnQgJiYgZXZlbnQudHlwZSA9PT0gImtleWRvd24iICkgewoJCQl0aGlzLl9jbG9zZSgpOwoJCX0gZWxzZSB7CgkJCXRoaXMudGltZXIgPSB0aGlzLl9kZWxheSggZnVuY3Rpb24oKSB7CgkJCQl0aGlzLl9jbG9zZSgpOwoJCQl9LCB0aGlzLmRlbGF5ICk7CgkJfQoKCQluZXN0ZWQgPSBpdGVtLmNoaWxkcmVuKCAiLnVpLW1lbnUiICk7CgkJaWYgKCBuZXN0ZWQubGVuZ3RoICYmIGV2ZW50ICYmICggL15tb3VzZS8udGVzdCggZXZlbnQudHlwZSApICkgKSB7CgkJCXRoaXMuX3N0YXJ0T3BlbmluZyggbmVzdGVkICk7CgkJfQoJCXRoaXMuYWN0aXZlTWVudSA9IGl0ZW0ucGFyZW50KCk7CgoJCXRoaXMuX3RyaWdnZXIoICJmb2N1cyIsIGV2ZW50LCB7IGl0ZW06IGl0ZW0gfSApOwoJfSwKCglfc2Nyb2xsSW50b1ZpZXc6IGZ1bmN0aW9uKCBpdGVtICkgewoJCXZhciBib3JkZXJUb3AsIHBhZGRpbmdUb3AsIG9mZnNldCwgc2Nyb2xsLCBlbGVtZW50SGVpZ2h0LCBpdGVtSGVpZ2h0OwoJCWlmICggdGhpcy5faGFzU2Nyb2xsKCkgKSB7CgkJCWJvcmRlclRvcCA9IHBhcnNlRmxvYXQoICQuY3NzKCB0aGlzLmFjdGl2ZU1lbnVbIDAgXSwgImJvcmRlclRvcFdpZHRoIiApICkgfHwgMDsKCQkJcGFkZGluZ1RvcCA9IHBhcnNlRmxvYXQoICQuY3NzKCB0aGlzLmFjdGl2ZU1lbnVbIDAgXSwgInBhZGRpbmdUb3AiICkgKSB8fCAwOwoJCQlvZmZzZXQgPSBpdGVtLm9mZnNldCgpLnRvcCAtIHRoaXMuYWN0aXZlTWVudS5vZmZzZXQoKS50b3AgLSBib3JkZXJUb3AgLSBwYWRkaW5nVG9wOwoJCQlzY3JvbGwgPSB0aGlzLmFjdGl2ZU1lbnUuc2Nyb2xsVG9wKCk7CgkJCWVsZW1lbnRIZWlnaHQgPSB0aGlzLmFjdGl2ZU1lbnUuaGVpZ2h0KCk7CgkJCWl0ZW1IZWlnaHQgPSBpdGVtLm91dGVySGVpZ2h0KCk7CgoJCQlpZiAoIG9mZnNldCA8IDAgKSB7CgkJCQl0aGlzLmFjdGl2ZU1lbnUuc2Nyb2xsVG9wKCBzY3JvbGwgKyBvZmZzZXQgKTsKCQkJfSBlbHNlIGlmICggb2Zmc2V0ICsgaXRlbUhlaWdodCA+IGVsZW1lbnRIZWlnaHQgKSB7CgkJCQl0aGlzLmFjdGl2ZU1lbnUuc2Nyb2xsVG9wKCBzY3JvbGwgKyBvZmZzZXQgLSBlbGVtZW50SGVpZ2h0ICsgaXRlbUhlaWdodCApOwoJCQl9CgkJfQoJfSwKCglibHVyOiBmdW5jdGlvbiggZXZlbnQsIGZyb21Gb2N1cyApIHsKCQlpZiAoICFmcm9tRm9jdXMgKSB7CgkJCWNsZWFyVGltZW91dCggdGhpcy50aW1lciApOwoJCX0KCgkJaWYgKCAhdGhpcy5hY3RpdmUgKSB7CgkJCXJldHVybjsKCQl9CgoJCXRoaXMuX3JlbW92ZUNsYXNzKCB0aGlzLmFjdGl2ZS5jaGlsZHJlbiggIi51aS1tZW51LWl0ZW0td3JhcHBlciIgKSwKCQkJbnVsbCwgInVpLXN0YXRlLWFjdGl2ZSIgKTsKCgkJdGhpcy5fdHJpZ2dlciggImJsdXIiLCBldmVudCwgeyBpdGVtOiB0aGlzLmFjdGl2ZSB9ICk7CgkJdGhpcy5hY3RpdmUgPSBudWxsOwoJfSwKCglfc3RhcnRPcGVuaW5nOiBmdW5jdGlvbiggc3VibWVudSApIHsKCQljbGVhclRpbWVvdXQoIHRoaXMudGltZXIgKTsKCgkJLy8gRG9uJ3Qgb3BlbiBpZiBhbHJlYWR5IG9wZW4gZml4ZXMgYSBGaXJlZm94IGJ1ZyB0aGF0IGNhdXNlZCBhIC41IHBpeGVsCgkJLy8gc2hpZnQgaW4gdGhlIHN1Ym1lbnUgcG9zaXRpb24gd2hlbiBtb3VzaW5nIG92ZXIgdGhlIGNhcmV0IGljb24KCQlpZiAoIHN1Ym1lbnUuYXR0ciggImFyaWEtaGlkZGVuIiApICE9PSAidHJ1ZSIgKSB7CgkJCXJldHVybjsKCQl9CgoJCXRoaXMudGltZXIgPSB0aGlzLl9kZWxheSggZnVuY3Rpb24oKSB7CgkJCXRoaXMuX2Nsb3NlKCk7CgkJCXRoaXMuX29wZW4oIHN1Ym1lbnUgKTsKCQl9LCB0aGlzLmRlbGF5ICk7Cgl9LAoKCV9vcGVuOiBmdW5jdGlvbiggc3VibWVudSApIHsKCQl2YXIgcG9zaXRpb24gPSAkLmV4dGVuZCggewoJCQlvZjogdGhpcy5hY3RpdmUKCQl9LCB0aGlzLm9wdGlvbnMucG9zaXRpb24gKTsKCgkJY2xlYXJUaW1lb3V0KCB0aGlzLnRpbWVyICk7CgkJdGhpcy5lbGVtZW50LmZpbmQoICIudWktbWVudSIgKS5ub3QoIHN1Ym1lbnUucGFyZW50cyggIi51aS1tZW51IiApICkKCQkJLmhpZGUoKQoJCQkuYXR0ciggImFyaWEtaGlkZGVuIiwgInRydWUiICk7CgoJCXN1Ym1lbnUKCQkJLnNob3coKQoJCQkucmVtb3ZlQXR0ciggImFyaWEtaGlkZGVuIiApCgkJCS5hdHRyKCAiYXJpYS1leHBhbmRlZCIsICJ0cnVlIiApCgkJCS5wb3NpdGlvbiggcG9zaXRpb24gKTsKCX0sCgoJY29sbGFwc2VBbGw6IGZ1bmN0aW9uKCBldmVudCwgYWxsICkgewoJCWNsZWFyVGltZW91dCggdGhpcy50aW1lciApOwoJCXRoaXMudGltZXIgPSB0aGlzLl9kZWxheSggZnVuY3Rpb24oKSB7CgoJCQkvLyBJZiB3ZSB3ZXJlIHBhc3NlZCBhbiBldmVudCwgbG9vayBmb3IgdGhlIHN1Ym1lbnUgdGhhdCBjb250YWlucyB0aGUgZXZlbnQKCQkJdmFyIGN1cnJlbnRNZW51ID0gYWxsID8gdGhpcy5lbGVtZW50IDoKCQkJCSQoIGV2ZW50ICYmIGV2ZW50LnRhcmdldCApLmNsb3Nlc3QoIHRoaXMuZWxlbWVudC5maW5kKCAiLnVpLW1lbnUiICkgKTsKCgkJCS8vIElmIHdlIGZvdW5kIG5vIHZhbGlkIHN1Ym1lbnUgYW5jZXN0b3IsIHVzZSB0aGUgbWFpbiBtZW51IHRvIGNsb3NlIGFsbAoJCQkvLyBzdWIgbWVudXMgYW55d2F5CgkJCWlmICggIWN1cnJlbnRNZW51Lmxlbmd0aCApIHsKCQkJCWN1cnJlbnRNZW51ID0gdGhpcy5lbGVtZW50OwoJCQl9CgoJCQl0aGlzLl9jbG9zZSggY3VycmVudE1lbnUgKTsKCgkJCXRoaXMuYmx1ciggZXZlbnQgKTsKCgkJCS8vIFdvcmsgYXJvdW5kIGFjdGl2ZSBpdGVtIHN0YXlpbmcgYWN0aXZlIGFmdGVyIG1lbnUgaXMgYmx1cnJlZAoJCQl0aGlzLl9yZW1vdmVDbGFzcyggY3VycmVudE1lbnUuZmluZCggIi51aS1zdGF0ZS1hY3RpdmUiICksIG51bGwsICJ1aS1zdGF0ZS1hY3RpdmUiICk7CgoJCQl0aGlzLmFjdGl2ZU1lbnUgPSBjdXJyZW50TWVudTsKCQl9LCB0aGlzLmRlbGF5ICk7Cgl9LAoKCS8vIFdpdGggbm8gYXJndW1lbnRzLCBjbG9zZXMgdGhlIGN1cnJlbnRseSBhY3RpdmUgbWVudSAtIGlmIG5vdGhpbmcgaXMgYWN0aXZlCgkvLyBpdCBjbG9zZXMgYWxsIG1lbnVzLiAgSWYgcGFzc2VkIGFuIGFyZ3VtZW50LCBpdCB3aWxsIHNlYXJjaCBmb3IgbWVudXMgQkVMT1cKCV9jbG9zZTogZnVuY3Rpb24oIHN0YXJ0TWVudSApIHsKCQlpZiAoICFzdGFydE1lbnUgKSB7CgkJCXN0YXJ0TWVudSA9IHRoaXMuYWN0aXZlID8gdGhpcy5hY3RpdmUucGFyZW50KCkgOiB0aGlzLmVsZW1lbnQ7CgkJfQoKCQlzdGFydE1lbnUuZmluZCggIi51aS1tZW51IiApCgkJCS5oaWRlKCkKCQkJLmF0dHIoICJhcmlhLWhpZGRlbiIsICJ0cnVlIiApCgkJCS5hdHRyKCAiYXJpYS1leHBhbmRlZCIsICJmYWxzZSIgKTsKCX0sCgoJX2Nsb3NlT25Eb2N1bWVudENsaWNrOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJcmV0dXJuICEkKCBldmVudC50YXJnZXQgKS5jbG9zZXN0KCAiLnVpLW1lbnUiICkubGVuZ3RoOwoJfSwKCglfaXNEaXZpZGVyOiBmdW5jdGlvbiggaXRlbSApIHsKCgkJLy8gTWF0Y2ggaHlwaGVuLCBlbSBkYXNoLCBlbiBkYXNoCgkJcmV0dXJuICEvW15cLVx1MjAxNFx1MjAxM1xzXS8udGVzdCggaXRlbS50ZXh0KCkgKTsKCX0sCgoJY29sbGFwc2U6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgbmV3SXRlbSA9IHRoaXMuYWN0aXZlICYmCgkJCXRoaXMuYWN0aXZlLnBhcmVudCgpLmNsb3Nlc3QoICIudWktbWVudS1pdGVtIiwgdGhpcy5lbGVtZW50ICk7CgkJaWYgKCBuZXdJdGVtICYmIG5ld0l0ZW0ubGVuZ3RoICkgewoJCQl0aGlzLl9jbG9zZSgpOwoJCQl0aGlzLmZvY3VzKCBldmVudCwgbmV3SXRlbSApOwoJCX0KCX0sCgoJZXhwYW5kOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdmFyIG5ld0l0ZW0gPSB0aGlzLmFjdGl2ZSAmJgoJCQl0aGlzLmFjdGl2ZQoJCQkJLmNoaWxkcmVuKCAiLnVpLW1lbnUgIiApCgkJCQkJLmZpbmQoIHRoaXMub3B0aW9ucy5pdGVtcyApCgkJCQkJCS5maXJzdCgpOwoKCQlpZiAoIG5ld0l0ZW0gJiYgbmV3SXRlbS5sZW5ndGggKSB7CgkJCXRoaXMuX29wZW4oIG5ld0l0ZW0ucGFyZW50KCkgKTsKCgkJCS8vIERlbGF5IHNvIEZpcmVmb3ggd2lsbCBub3QgaGlkZSBhY3RpdmVkZXNjZW5kYW50IGNoYW5nZSBpbiBleHBhbmRpbmcgc3VibWVudSBmcm9tIEFUCgkJCXRoaXMuX2RlbGF5KCBmdW5jdGlvbigpIHsKCQkJCXRoaXMuZm9jdXMoIGV2ZW50LCBuZXdJdGVtICk7CgkJCX0gKTsKCQl9Cgl9LAoKCW5leHQ6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl0aGlzLl9tb3ZlKCAibmV4dCIsICJmaXJzdCIsIGV2ZW50ICk7Cgl9LAoKCXByZXZpb3VzOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdGhpcy5fbW92ZSggInByZXYiLCAibGFzdCIsIGV2ZW50ICk7Cgl9LAoKCWlzRmlyc3RJdGVtOiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gdGhpcy5hY3RpdmUgJiYgIXRoaXMuYWN0aXZlLnByZXZBbGwoICIudWktbWVudS1pdGVtIiApLmxlbmd0aDsKCX0sCgoJaXNMYXN0SXRlbTogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMuYWN0aXZlICYmICF0aGlzLmFjdGl2ZS5uZXh0QWxsKCAiLnVpLW1lbnUtaXRlbSIgKS5sZW5ndGg7Cgl9LAoKCV9tb3ZlOiBmdW5jdGlvbiggZGlyZWN0aW9uLCBmaWx0ZXIsIGV2ZW50ICkgewoJCXZhciBuZXh0OwoJCWlmICggdGhpcy5hY3RpdmUgKSB7CgkJCWlmICggZGlyZWN0aW9uID09PSAiZmlyc3QiIHx8IGRpcmVjdGlvbiA9PT0gImxhc3QiICkgewoJCQkJbmV4dCA9IHRoaXMuYWN0aXZlCgkJCQkJWyBkaXJlY3Rpb24gPT09ICJmaXJzdCIgPyAicHJldkFsbCIgOiAibmV4dEFsbCIgXSggIi51aS1tZW51LWl0ZW0iICkKCQkJCQkuZXEoIC0xICk7CgkJCX0gZWxzZSB7CgkJCQluZXh0ID0gdGhpcy5hY3RpdmUKCQkJCQlbIGRpcmVjdGlvbiArICJBbGwiIF0oICIudWktbWVudS1pdGVtIiApCgkJCQkJLmVxKCAwICk7CgkJCX0KCQl9CgkJaWYgKCAhbmV4dCB8fCAhbmV4dC5sZW5ndGggfHwgIXRoaXMuYWN0aXZlICkgewoJCQluZXh0ID0gdGhpcy5hY3RpdmVNZW51LmZpbmQoIHRoaXMub3B0aW9ucy5pdGVtcyApWyBmaWx0ZXIgXSgpOwoJCX0KCgkJdGhpcy5mb2N1cyggZXZlbnQsIG5leHQgKTsKCX0sCgoJbmV4dFBhZ2U6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgaXRlbSwgYmFzZSwgaGVpZ2h0OwoKCQlpZiAoICF0aGlzLmFjdGl2ZSApIHsKCQkJdGhpcy5uZXh0KCBldmVudCApOwoJCQlyZXR1cm47CgkJfQoJCWlmICggdGhpcy5pc0xhc3RJdGVtKCkgKSB7CgkJCXJldHVybjsKCQl9CgkJaWYgKCB0aGlzLl9oYXNTY3JvbGwoKSApIHsKCQkJYmFzZSA9IHRoaXMuYWN0aXZlLm9mZnNldCgpLnRvcDsKCQkJaGVpZ2h0ID0gdGhpcy5lbGVtZW50LmhlaWdodCgpOwoJCQl0aGlzLmFjdGl2ZS5uZXh0QWxsKCAiLnVpLW1lbnUtaXRlbSIgKS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCWl0ZW0gPSAkKCB0aGlzICk7CgkJCQlyZXR1cm4gaXRlbS5vZmZzZXQoKS50b3AgLSBiYXNlIC0gaGVpZ2h0IDwgMDsKCQkJfSApOwoKCQkJdGhpcy5mb2N1cyggZXZlbnQsIGl0ZW0gKTsKCQl9IGVsc2UgewoJCQl0aGlzLmZvY3VzKCBldmVudCwgdGhpcy5hY3RpdmVNZW51LmZpbmQoIHRoaXMub3B0aW9ucy5pdGVtcyApCgkJCQlbICF0aGlzLmFjdGl2ZSA/ICJmaXJzdCIgOiAibGFzdCIgXSgpICk7CgkJfQoJfSwKCglwcmV2aW91c1BhZ2U6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgaXRlbSwgYmFzZSwgaGVpZ2h0OwoJCWlmICggIXRoaXMuYWN0aXZlICkgewoJCQl0aGlzLm5leHQoIGV2ZW50ICk7CgkJCXJldHVybjsKCQl9CgkJaWYgKCB0aGlzLmlzRmlyc3RJdGVtKCkgKSB7CgkJCXJldHVybjsKCQl9CgkJaWYgKCB0aGlzLl9oYXNTY3JvbGwoKSApIHsKCQkJYmFzZSA9IHRoaXMuYWN0aXZlLm9mZnNldCgpLnRvcDsKCQkJaGVpZ2h0ID0gdGhpcy5lbGVtZW50LmhlaWdodCgpOwoJCQl0aGlzLmFjdGl2ZS5wcmV2QWxsKCAiLnVpLW1lbnUtaXRlbSIgKS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCWl0ZW0gPSAkKCB0aGlzICk7CgkJCQlyZXR1cm4gaXRlbS5vZmZzZXQoKS50b3AgLSBiYXNlICsgaGVpZ2h0ID4gMDsKCQkJfSApOwoKCQkJdGhpcy5mb2N1cyggZXZlbnQsIGl0ZW0gKTsKCQl9IGVsc2UgewoJCQl0aGlzLmZvY3VzKCBldmVudCwgdGhpcy5hY3RpdmVNZW51LmZpbmQoIHRoaXMub3B0aW9ucy5pdGVtcyApLmZpcnN0KCkgKTsKCQl9Cgl9LAoKCV9oYXNTY3JvbGw6IGZ1bmN0aW9uKCkgewoJCXJldHVybiB0aGlzLmVsZW1lbnQub3V0ZXJIZWlnaHQoKSA8IHRoaXMuZWxlbWVudC5wcm9wKCAic2Nyb2xsSGVpZ2h0IiApOwoJfSwKCglzZWxlY3Q6IGZ1bmN0aW9uKCBldmVudCApIHsKCgkJLy8gVE9ETzogSXQgc2hvdWxkIG5ldmVyIGJlIHBvc3NpYmxlIHRvIG5vdCBoYXZlIGFuIGFjdGl2ZSBpdGVtIGF0IHRoaXMKCQkvLyBwb2ludCwgYnV0IHRoZSB0ZXN0cyBkb24ndCB0cmlnZ2VyIG1vdXNlZW50ZXIgYmVmb3JlIGNsaWNrLgoJCXRoaXMuYWN0aXZlID0gdGhpcy5hY3RpdmUgfHwgJCggZXZlbnQudGFyZ2V0ICkuY2xvc2VzdCggIi51aS1tZW51LWl0ZW0iICk7CgkJdmFyIHVpID0geyBpdGVtOiB0aGlzLmFjdGl2ZSB9OwoJCWlmICggIXRoaXMuYWN0aXZlLmhhcyggIi51aS1tZW51IiApLmxlbmd0aCApIHsKCQkJdGhpcy5jb2xsYXBzZUFsbCggZXZlbnQsIHRydWUgKTsKCQl9CgkJdGhpcy5fdHJpZ2dlciggInNlbGVjdCIsIGV2ZW50LCB1aSApOwoJfSwKCglfZmlsdGVyTWVudUl0ZW1zOiBmdW5jdGlvbiggY2hhcmFjdGVyICkgewoJCXZhciBlc2NhcGVkQ2hhcmFjdGVyID0gY2hhcmFjdGVyLnJlcGxhY2UoIC9bXC1cW1xde30oKSorPy4sXFxcXiR8I1xzXS9nLCAiXFwkJiIgKSwKCQkJcmVnZXggPSBuZXcgUmVnRXhwKCAiXiIgKyBlc2NhcGVkQ2hhcmFjdGVyLCAiaSIgKTsKCgkJcmV0dXJuIHRoaXMuYWN0aXZlTWVudQoJCQkuZmluZCggdGhpcy5vcHRpb25zLml0ZW1zICkKCgkJCQkvLyBPbmx5IG1hdGNoIG9uIGl0ZW1zLCBub3QgZGl2aWRlcnMgb3Igb3RoZXIgY29udGVudCAoIzEwNTcxKQoJCQkJLmZpbHRlciggIi51aS1tZW51LWl0ZW0iICkKCQkJCQkuZmlsdGVyKCBmdW5jdGlvbigpIHsKCQkJCQkJcmV0dXJuIHJlZ2V4LnRlc3QoCgkJCQkJCQkkLnRyaW0oICQoIHRoaXMgKS5jaGlsZHJlbiggIi51aS1tZW51LWl0ZW0td3JhcHBlciIgKS50ZXh0KCkgKSApOwoJCQkJCX0gKTsKCX0KfSApOwoKCi8qIQogKiBqUXVlcnkgVUkgQXV0b2NvbXBsZXRlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogQXV0b2NvbXBsZXRlCi8vPj5ncm91cDogV2lkZ2V0cwovLz4+ZGVzY3JpcHRpb246IExpc3RzIHN1Z2dlc3RlZCB3b3JkcyBhcyB0aGUgdXNlciBpcyB0eXBpbmcuCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9hdXRvY29tcGxldGUvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9hdXRvY29tcGxldGUvCi8vPj5jc3Muc3RydWN0dXJlOiAuLi8uLi90aGVtZXMvYmFzZS9jb3JlLmNzcwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvYXV0b2NvbXBsZXRlLmNzcwovLz4+Y3NzLnRoZW1lOiAuLi8uLi90aGVtZXMvYmFzZS90aGVtZS5jc3MKCgoKJC53aWRnZXQoICJ1aS5hdXRvY29tcGxldGUiLCB7Cgl2ZXJzaW9uOiAiMS4xMi4xIiwKCWRlZmF1bHRFbGVtZW50OiAiPGlucHV0PiIsCglvcHRpb25zOiB7CgkJYXBwZW5kVG86IG51bGwsCgkJYXV0b0ZvY3VzOiBmYWxzZSwKCQlkZWxheTogMzAwLAoJCW1pbkxlbmd0aDogMSwKCQlwb3NpdGlvbjogewoJCQlteTogImxlZnQgdG9wIiwKCQkJYXQ6ICJsZWZ0IGJvdHRvbSIsCgkJCWNvbGxpc2lvbjogIm5vbmUiCgkJfSwKCQlzb3VyY2U6IG51bGwsCgoJCS8vIENhbGxiYWNrcwoJCWNoYW5nZTogbnVsbCwKCQljbG9zZTogbnVsbCwKCQlmb2N1czogbnVsbCwKCQlvcGVuOiBudWxsLAoJCXJlc3BvbnNlOiBudWxsLAoJCXNlYXJjaDogbnVsbCwKCQlzZWxlY3Q6IG51bGwKCX0sCgoJcmVxdWVzdEluZGV4OiAwLAoJcGVuZGluZzogMCwKCglfY3JlYXRlOiBmdW5jdGlvbigpIHsKCgkJLy8gU29tZSBicm93c2VycyBvbmx5IHJlcGVhdCBrZXlkb3duIGV2ZW50cywgbm90IGtleXByZXNzIGV2ZW50cywKCQkvLyBzbyB3ZSB1c2UgdGhlIHN1cHByZXNzS2V5UHJlc3MgZmxhZyB0byBkZXRlcm1pbmUgaWYgd2UndmUgYWxyZWFkeQoJCS8vIGhhbmRsZWQgdGhlIGtleWRvd24gZXZlbnQuICM3MjY5CgkJLy8gVW5mb3J0dW5hdGVseSB0aGUgY29kZSBmb3IgJiBpbiBrZXlwcmVzcyBpcyB0aGUgc2FtZSBhcyB0aGUgdXAgYXJyb3csCgkJLy8gc28gd2UgdXNlIHRoZSBzdXBwcmVzc0tleVByZXNzUmVwZWF0IGZsYWcgdG8gYXZvaWQgaGFuZGxpbmcga2V5cHJlc3MKCQkvLyBldmVudHMgd2hlbiB3ZSBrbm93IHRoZSBrZXlkb3duIGV2ZW50IHdhcyB1c2VkIHRvIG1vZGlmeSB0aGUKCQkvLyBzZWFyY2ggdGVybS4gIzc3OTkKCQl2YXIgc3VwcHJlc3NLZXlQcmVzcywgc3VwcHJlc3NLZXlQcmVzc1JlcGVhdCwgc3VwcHJlc3NJbnB1dCwKCQkJbm9kZU5hbWUgPSB0aGlzLmVsZW1lbnRbIDAgXS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpLAoJCQlpc1RleHRhcmVhID0gbm9kZU5hbWUgPT09ICJ0ZXh0YXJlYSIsCgkJCWlzSW5wdXQgPSBub2RlTmFtZSA9PT0gImlucHV0IjsKCgkJLy8gVGV4dGFyZWFzIGFyZSBhbHdheXMgbXVsdGktbGluZQoJCS8vIElucHV0cyBhcmUgYWx3YXlzIHNpbmdsZS1saW5lLCBldmVuIGlmIGluc2lkZSBhIGNvbnRlbnRFZGl0YWJsZSBlbGVtZW50CgkJLy8gSUUgYWxzbyB0cmVhdHMgaW5wdXRzIGFzIGNvbnRlbnRFZGl0YWJsZQoJCS8vIEFsbCBvdGhlciBlbGVtZW50IHR5cGVzIGFyZSBkZXRlcm1pbmVkIGJ5IHdoZXRoZXIgb3Igbm90IHRoZXkncmUgY29udGVudEVkaXRhYmxlCgkJdGhpcy5pc011bHRpTGluZSA9IGlzVGV4dGFyZWEgfHwgIWlzSW5wdXQgJiYgdGhpcy5faXNDb250ZW50RWRpdGFibGUoIHRoaXMuZWxlbWVudCApOwoKCQl0aGlzLnZhbHVlTWV0aG9kID0gdGhpcy5lbGVtZW50WyBpc1RleHRhcmVhIHx8IGlzSW5wdXQgPyAidmFsIiA6ICJ0ZXh0IiBdOwoJCXRoaXMuaXNOZXdNZW51ID0gdHJ1ZTsKCgkJdGhpcy5fYWRkQ2xhc3MoICJ1aS1hdXRvY29tcGxldGUtaW5wdXQiICk7CgkJdGhpcy5lbGVtZW50LmF0dHIoICJhdXRvY29tcGxldGUiLCAib2ZmIiApOwoKCQl0aGlzLl9vbiggdGhpcy5lbGVtZW50LCB7CgkJCWtleWRvd246IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCWlmICggdGhpcy5lbGVtZW50LnByb3AoICJyZWFkT25seSIgKSApIHsKCQkJCQlzdXBwcmVzc0tleVByZXNzID0gdHJ1ZTsKCQkJCQlzdXBwcmVzc0lucHV0ID0gdHJ1ZTsKCQkJCQlzdXBwcmVzc0tleVByZXNzUmVwZWF0ID0gdHJ1ZTsKCQkJCQlyZXR1cm47CgkJCQl9CgoJCQkJc3VwcHJlc3NLZXlQcmVzcyA9IGZhbHNlOwoJCQkJc3VwcHJlc3NJbnB1dCA9IGZhbHNlOwoJCQkJc3VwcHJlc3NLZXlQcmVzc1JlcGVhdCA9IGZhbHNlOwoJCQkJdmFyIGtleUNvZGUgPSAkLnVpLmtleUNvZGU7CgkJCQlzd2l0Y2ggKCBldmVudC5rZXlDb2RlICkgewoJCQkJY2FzZSBrZXlDb2RlLlBBR0VfVVA6CgkJCQkJc3VwcHJlc3NLZXlQcmVzcyA9IHRydWU7CgkJCQkJdGhpcy5fbW92ZSggInByZXZpb3VzUGFnZSIsIGV2ZW50ICk7CgkJCQkJYnJlYWs7CgkJCQljYXNlIGtleUNvZGUuUEFHRV9ET1dOOgoJCQkJCXN1cHByZXNzS2V5UHJlc3MgPSB0cnVlOwoJCQkJCXRoaXMuX21vdmUoICJuZXh0UGFnZSIsIGV2ZW50ICk7CgkJCQkJYnJlYWs7CgkJCQljYXNlIGtleUNvZGUuVVA6CgkJCQkJc3VwcHJlc3NLZXlQcmVzcyA9IHRydWU7CgkJCQkJdGhpcy5fa2V5RXZlbnQoICJwcmV2aW91cyIsIGV2ZW50ICk7CgkJCQkJYnJlYWs7CgkJCQljYXNlIGtleUNvZGUuRE9XTjoKCQkJCQlzdXBwcmVzc0tleVByZXNzID0gdHJ1ZTsKCQkJCQl0aGlzLl9rZXlFdmVudCggIm5leHQiLCBldmVudCApOwoJCQkJCWJyZWFrOwoJCQkJY2FzZSBrZXlDb2RlLkVOVEVSOgoKCQkJCQkvLyB3aGVuIG1lbnUgaXMgb3BlbiBhbmQgaGFzIGZvY3VzCgkJCQkJaWYgKCB0aGlzLm1lbnUuYWN0aXZlICkgewoKCQkJCQkJLy8gIzYwNTUgLSBPcGVyYSBzdGlsbCBhbGxvd3MgdGhlIGtleXByZXNzIHRvIG9jY3VyCgkJCQkJCS8vIHdoaWNoIGNhdXNlcyBmb3JtcyB0byBzdWJtaXQKCQkJCQkJc3VwcHJlc3NLZXlQcmVzcyA9IHRydWU7CgkJCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCQkJCXRoaXMubWVudS5zZWxlY3QoIGV2ZW50ICk7CgkJCQkJfQoJCQkJCWJyZWFrOwoJCQkJY2FzZSBrZXlDb2RlLlRBQjoKCQkJCQlpZiAoIHRoaXMubWVudS5hY3RpdmUgKSB7CgkJCQkJCXRoaXMubWVudS5zZWxlY3QoIGV2ZW50ICk7CgkJCQkJfQoJCQkJCWJyZWFrOwoJCQkJY2FzZSBrZXlDb2RlLkVTQ0FQRToKCQkJCQlpZiAoIHRoaXMubWVudS5lbGVtZW50LmlzKCAiOnZpc2libGUiICkgKSB7CgkJCQkJCWlmICggIXRoaXMuaXNNdWx0aUxpbmUgKSB7CgkJCQkJCQl0aGlzLl92YWx1ZSggdGhpcy50ZXJtICk7CgkJCQkJCX0KCQkJCQkJdGhpcy5jbG9zZSggZXZlbnQgKTsKCgkJCQkJCS8vIERpZmZlcmVudCBicm93c2VycyBoYXZlIGRpZmZlcmVudCBkZWZhdWx0IGJlaGF2aW9yIGZvciBlc2NhcGUKCQkJCQkJLy8gU2luZ2xlIHByZXNzIGNhbiBtZWFuIHVuZG8gb3IgY2xlYXIKCQkJCQkJLy8gRG91YmxlIHByZXNzIGluIElFIG1lYW5zIGNsZWFyIHRoZSB3aG9sZSBmb3JtCgkJCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCQkJfQoJCQkJCWJyZWFrOwoJCQkJZGVmYXVsdDoKCQkJCQlzdXBwcmVzc0tleVByZXNzUmVwZWF0ID0gdHJ1ZTsKCgkJCQkJLy8gc2VhcmNoIHRpbWVvdXQgc2hvdWxkIGJlIHRyaWdnZXJlZCBiZWZvcmUgdGhlIGlucHV0IHZhbHVlIGlzIGNoYW5nZWQKCQkJCQl0aGlzLl9zZWFyY2hUaW1lb3V0KCBldmVudCApOwoJCQkJCWJyZWFrOwoJCQkJfQoJCQl9LAoJCQlrZXlwcmVzczogZnVuY3Rpb24oIGV2ZW50ICkgewoJCQkJaWYgKCBzdXBwcmVzc0tleVByZXNzICkgewoJCQkJCXN1cHByZXNzS2V5UHJlc3MgPSBmYWxzZTsKCQkJCQlpZiAoICF0aGlzLmlzTXVsdGlMaW5lIHx8IHRoaXMubWVudS5lbGVtZW50LmlzKCAiOnZpc2libGUiICkgKSB7CgkJCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCQkJfQoJCQkJCXJldHVybjsKCQkJCX0KCQkJCWlmICggc3VwcHJlc3NLZXlQcmVzc1JlcGVhdCApIHsKCQkJCQlyZXR1cm47CgkJCQl9CgoJCQkJLy8gUmVwbGljYXRlIHNvbWUga2V5IGhhbmRsZXJzIHRvIGFsbG93IHRoZW0gdG8gcmVwZWF0IGluIEZpcmVmb3ggYW5kIE9wZXJhCgkJCQl2YXIga2V5Q29kZSA9ICQudWkua2V5Q29kZTsKCQkJCXN3aXRjaCAoIGV2ZW50LmtleUNvZGUgKSB7CgkJCQljYXNlIGtleUNvZGUuUEFHRV9VUDoKCQkJCQl0aGlzLl9tb3ZlKCAicHJldmlvdXNQYWdlIiwgZXZlbnQgKTsKCQkJCQlicmVhazsKCQkJCWNhc2Uga2V5Q29kZS5QQUdFX0RPV046CgkJCQkJdGhpcy5fbW92ZSggIm5leHRQYWdlIiwgZXZlbnQgKTsKCQkJCQlicmVhazsKCQkJCWNhc2Uga2V5Q29kZS5VUDoKCQkJCQl0aGlzLl9rZXlFdmVudCggInByZXZpb3VzIiwgZXZlbnQgKTsKCQkJCQlicmVhazsKCQkJCWNhc2Uga2V5Q29kZS5ET1dOOgoJCQkJCXRoaXMuX2tleUV2ZW50KCAibmV4dCIsIGV2ZW50ICk7CgkJCQkJYnJlYWs7CgkJCQl9CgkJCX0sCgkJCWlucHV0OiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJCQlpZiAoIHN1cHByZXNzSW5wdXQgKSB7CgkJCQkJc3VwcHJlc3NJbnB1dCA9IGZhbHNlOwoJCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCQkJcmV0dXJuOwoJCQkJfQoJCQkJdGhpcy5fc2VhcmNoVGltZW91dCggZXZlbnQgKTsKCQkJfSwKCQkJZm9jdXM6IGZ1bmN0aW9uKCkgewoJCQkJdGhpcy5zZWxlY3RlZEl0ZW0gPSBudWxsOwoJCQkJdGhpcy5wcmV2aW91cyA9IHRoaXMuX3ZhbHVlKCk7CgkJCX0sCgkJCWJsdXI6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCWlmICggdGhpcy5jYW5jZWxCbHVyICkgewoJCQkJCWRlbGV0ZSB0aGlzLmNhbmNlbEJsdXI7CgkJCQkJcmV0dXJuOwoJCQkJfQoKCQkJCWNsZWFyVGltZW91dCggdGhpcy5zZWFyY2hpbmcgKTsKCQkJCXRoaXMuY2xvc2UoIGV2ZW50ICk7CgkJCQl0aGlzLl9jaGFuZ2UoIGV2ZW50ICk7CgkJCX0KCQl9ICk7CgoJCXRoaXMuX2luaXRTb3VyY2UoKTsKCQl0aGlzLm1lbnUgPSAkKCAiPHVsPiIgKQoJCQkuYXBwZW5kVG8oIHRoaXMuX2FwcGVuZFRvKCkgKQoJCQkubWVudSggewoKCQkJCS8vIGRpc2FibGUgQVJJQSBzdXBwb3J0LCB0aGUgbGl2ZSByZWdpb24gdGFrZXMgY2FyZSBvZiB0aGF0CgkJCQlyb2xlOiBudWxsCgkJCX0gKQoJCQkuaGlkZSgpCgkJCS5tZW51KCAiaW5zdGFuY2UiICk7CgoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLm1lbnUuZWxlbWVudCwgInVpLWF1dG9jb21wbGV0ZSIsICJ1aS1mcm9udCIgKTsKCQl0aGlzLl9vbiggdGhpcy5tZW51LmVsZW1lbnQsIHsKCQkJbW91c2Vkb3duOiBmdW5jdGlvbiggZXZlbnQgKSB7CgoJCQkJLy8gcHJldmVudCBtb3ZpbmcgZm9jdXMgb3V0IG9mIHRoZSB0ZXh0IGZpZWxkCgkJCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOwoKCQkJCS8vIElFIGRvZXNuJ3QgcHJldmVudCBtb3ZpbmcgZm9jdXMgZXZlbiB3aXRoIGV2ZW50LnByZXZlbnREZWZhdWx0KCkKCQkJCS8vIHNvIHdlIHNldCBhIGZsYWcgdG8ga25vdyB3aGVuIHdlIHNob3VsZCBpZ25vcmUgdGhlIGJsdXIgZXZlbnQKCQkJCXRoaXMuY2FuY2VsQmx1ciA9IHRydWU7CgkJCQl0aGlzLl9kZWxheSggZnVuY3Rpb24oKSB7CgkJCQkJZGVsZXRlIHRoaXMuY2FuY2VsQmx1cjsKCgkJCQkJLy8gU3VwcG9ydDogSUUgOCBvbmx5CgkJCQkJLy8gUmlnaHQgY2xpY2tpbmcgYSBtZW51IGl0ZW0gb3Igc2VsZWN0aW5nIHRleHQgZnJvbSB0aGUgbWVudSBpdGVtcyB3aWxsCgkJCQkJLy8gcmVzdWx0IGluIGZvY3VzIG1vdmluZyBvdXQgb2YgdGhlIGlucHV0LiBIb3dldmVyLCB3ZSd2ZSBhbHJlYWR5IHJlY2VpdmVkCgkJCQkJLy8gYW5kIGlnbm9yZWQgdGhlIGJsdXIgZXZlbnQgYmVjYXVzZSBvZiB0aGUgY2FuY2VsQmx1ciBmbGFnIHNldCBhYm92ZS4gU28KCQkJCQkvLyB3ZSByZXN0b3JlIGZvY3VzIHRvIGVuc3VyZSB0aGF0IHRoZSBtZW51IGNsb3NlcyBwcm9wZXJseSBiYXNlZCBvbiB0aGUgdXNlcidzCgkJCQkJLy8gbmV4dCBhY3Rpb25zLgoJCQkJCWlmICggdGhpcy5lbGVtZW50WyAwIF0gIT09ICQudWkuc2FmZUFjdGl2ZUVsZW1lbnQoIHRoaXMuZG9jdW1lbnRbIDAgXSApICkgewoJCQkJCQl0aGlzLmVsZW1lbnQudHJpZ2dlciggImZvY3VzIiApOwoJCQkJCX0KCQkJCX0gKTsKCQkJfSwKCQkJbWVudWZvY3VzOiBmdW5jdGlvbiggZXZlbnQsIHVpICkgewoJCQkJdmFyIGxhYmVsLCBpdGVtOwoKCQkJCS8vIHN1cHBvcnQ6IEZpcmVmb3gKCQkJCS8vIFByZXZlbnQgYWNjaWRlbnRhbCBhY3RpdmF0aW9uIG9mIG1lbnUgaXRlbXMgaW4gRmlyZWZveCAoIzcwMjQgIzkxMTgpCgkJCQlpZiAoIHRoaXMuaXNOZXdNZW51ICkgewoJCQkJCXRoaXMuaXNOZXdNZW51ID0gZmFsc2U7CgkJCQkJaWYgKCBldmVudC5vcmlnaW5hbEV2ZW50ICYmIC9ebW91c2UvLnRlc3QoIGV2ZW50Lm9yaWdpbmFsRXZlbnQudHlwZSApICkgewoJCQkJCQl0aGlzLm1lbnUuYmx1cigpOwoKCQkJCQkJdGhpcy5kb2N1bWVudC5vbmUoICJtb3VzZW1vdmUiLCBmdW5jdGlvbigpIHsKCQkJCQkJCSQoIGV2ZW50LnRhcmdldCApLnRyaWdnZXIoIGV2ZW50Lm9yaWdpbmFsRXZlbnQgKTsKCQkJCQkJfSApOwoKCQkJCQkJcmV0dXJuOwoJCQkJCX0KCQkJCX0KCgkJCQlpdGVtID0gdWkuaXRlbS5kYXRhKCAidWktYXV0b2NvbXBsZXRlLWl0ZW0iICk7CgkJCQlpZiAoIGZhbHNlICE9PSB0aGlzLl90cmlnZ2VyKCAiZm9jdXMiLCBldmVudCwgeyBpdGVtOiBpdGVtIH0gKSApIHsKCgkJCQkJLy8gdXNlIHZhbHVlIHRvIG1hdGNoIHdoYXQgd2lsbCBlbmQgdXAgaW4gdGhlIGlucHV0LCBpZiBpdCB3YXMgYSBrZXkgZXZlbnQKCQkJCQlpZiAoIGV2ZW50Lm9yaWdpbmFsRXZlbnQgJiYgL15rZXkvLnRlc3QoIGV2ZW50Lm9yaWdpbmFsRXZlbnQudHlwZSApICkgewoJCQkJCQl0aGlzLl92YWx1ZSggaXRlbS52YWx1ZSApOwoJCQkJCX0KCQkJCX0KCgkJCQkvLyBBbm5vdW5jZSB0aGUgdmFsdWUgaW4gdGhlIGxpdmVSZWdpb24KCQkJCWxhYmVsID0gdWkuaXRlbS5hdHRyKCAiYXJpYS1sYWJlbCIgKSB8fCBpdGVtLnZhbHVlOwoJCQkJaWYgKCBsYWJlbCAmJiAkLnRyaW0oIGxhYmVsICkubGVuZ3RoICkgewoJCQkJCXRoaXMubGl2ZVJlZ2lvbi5jaGlsZHJlbigpLmhpZGUoKTsKCQkJCQkkKCAiPGRpdj4iICkudGV4dCggbGFiZWwgKS5hcHBlbmRUbyggdGhpcy5saXZlUmVnaW9uICk7CgkJCQl9CgkJCX0sCgkJCW1lbnVzZWxlY3Q6IGZ1bmN0aW9uKCBldmVudCwgdWkgKSB7CgkJCQl2YXIgaXRlbSA9IHVpLml0ZW0uZGF0YSggInVpLWF1dG9jb21wbGV0ZS1pdGVtIiApLAoJCQkJCXByZXZpb3VzID0gdGhpcy5wcmV2aW91czsKCgkJCQkvLyBPbmx5IHRyaWdnZXIgd2hlbiBmb2N1cyB3YXMgbG9zdCAoY2xpY2sgb24gbWVudSkKCQkJCWlmICggdGhpcy5lbGVtZW50WyAwIF0gIT09ICQudWkuc2FmZUFjdGl2ZUVsZW1lbnQoIHRoaXMuZG9jdW1lbnRbIDAgXSApICkgewoJCQkJCXRoaXMuZWxlbWVudC50cmlnZ2VyKCAiZm9jdXMiICk7CgkJCQkJdGhpcy5wcmV2aW91cyA9IHByZXZpb3VzOwoKCQkJCQkvLyAjNjEwOSAtIElFIHRyaWdnZXJzIHR3byBmb2N1cyBldmVudHMgYW5kIHRoZSBzZWNvbmQKCQkJCQkvLyBpcyBhc3luY2hyb25vdXMsIHNvIHdlIG5lZWQgdG8gcmVzZXQgdGhlIHByZXZpb3VzCgkJCQkJLy8gdGVybSBzeW5jaHJvbm91c2x5IGFuZCBhc3luY2hyb25vdXNseSA6LSgKCQkJCQl0aGlzLl9kZWxheSggZnVuY3Rpb24oKSB7CgkJCQkJCXRoaXMucHJldmlvdXMgPSBwcmV2aW91czsKCQkJCQkJdGhpcy5zZWxlY3RlZEl0ZW0gPSBpdGVtOwoJCQkJCX0gKTsKCQkJCX0KCgkJCQlpZiAoIGZhbHNlICE9PSB0aGlzLl90cmlnZ2VyKCAic2VsZWN0IiwgZXZlbnQsIHsgaXRlbTogaXRlbSB9ICkgKSB7CgkJCQkJdGhpcy5fdmFsdWUoIGl0ZW0udmFsdWUgKTsKCQkJCX0KCgkJCQkvLyByZXNldCB0aGUgdGVybSBhZnRlciB0aGUgc2VsZWN0IGV2ZW50CgkJCQkvLyB0aGlzIGFsbG93cyBjdXN0b20gc2VsZWN0IGhhbmRsaW5nIHRvIHdvcmsgcHJvcGVybHkKCQkJCXRoaXMudGVybSA9IHRoaXMuX3ZhbHVlKCk7CgoJCQkJdGhpcy5jbG9zZSggZXZlbnQgKTsKCQkJCXRoaXMuc2VsZWN0ZWRJdGVtID0gaXRlbTsKCQkJfQoJCX0gKTsKCgkJdGhpcy5saXZlUmVnaW9uID0gJCggIjxkaXY+IiwgewoJCQlyb2xlOiAic3RhdHVzIiwKCQkJImFyaWEtbGl2ZSI6ICJhc3NlcnRpdmUiLAoJCQkiYXJpYS1yZWxldmFudCI6ICJhZGRpdGlvbnMiCgkJfSApCgkJCS5hcHBlbmRUbyggdGhpcy5kb2N1bWVudFsgMCBdLmJvZHkgKTsKCgkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMubGl2ZVJlZ2lvbiwgbnVsbCwgInVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSIgKTsKCgkJLy8gVHVybmluZyBvZmYgYXV0b2NvbXBsZXRlIHByZXZlbnRzIHRoZSBicm93c2VyIGZyb20gcmVtZW1iZXJpbmcgdGhlCgkJLy8gdmFsdWUgd2hlbiBuYXZpZ2F0aW5nIHRocm91Z2ggaGlzdG9yeSwgc28gd2UgcmUtZW5hYmxlIGF1dG9jb21wbGV0ZQoJCS8vIGlmIHRoZSBwYWdlIGlzIHVubG9hZGVkIGJlZm9yZSB0aGUgd2lkZ2V0IGlzIGRlc3Ryb3llZC4gIzc3OTAKCQl0aGlzLl9vbiggdGhpcy53aW5kb3csIHsKCQkJYmVmb3JldW5sb2FkOiBmdW5jdGlvbigpIHsKCQkJCXRoaXMuZWxlbWVudC5yZW1vdmVBdHRyKCAiYXV0b2NvbXBsZXRlIiApOwoJCQl9CgkJfSApOwoJfSwKCglfZGVzdHJveTogZnVuY3Rpb24oKSB7CgkJY2xlYXJUaW1lb3V0KCB0aGlzLnNlYXJjaGluZyApOwoJCXRoaXMuZWxlbWVudC5yZW1vdmVBdHRyKCAiYXV0b2NvbXBsZXRlIiApOwoJCXRoaXMubWVudS5lbGVtZW50LnJlbW92ZSgpOwoJCXRoaXMubGl2ZVJlZ2lvbi5yZW1vdmUoKTsKCX0sCgoJX3NldE9wdGlvbjogZnVuY3Rpb24oIGtleSwgdmFsdWUgKSB7CgkJdGhpcy5fc3VwZXIoIGtleSwgdmFsdWUgKTsKCQlpZiAoIGtleSA9PT0gInNvdXJjZSIgKSB7CgkJCXRoaXMuX2luaXRTb3VyY2UoKTsKCQl9CgkJaWYgKCBrZXkgPT09ICJhcHBlbmRUbyIgKSB7CgkJCXRoaXMubWVudS5lbGVtZW50LmFwcGVuZFRvKCB0aGlzLl9hcHBlbmRUbygpICk7CgkJfQoJCWlmICgga2V5ID09PSAiZGlzYWJsZWQiICYmIHZhbHVlICYmIHRoaXMueGhyICkgewoJCQl0aGlzLnhoci5hYm9ydCgpOwoJCX0KCX0sCgoJX2lzRXZlbnRUYXJnZXRJbldpZGdldDogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXZhciBtZW51RWxlbWVudCA9IHRoaXMubWVudS5lbGVtZW50WyAwIF07CgoJCXJldHVybiBldmVudC50YXJnZXQgPT09IHRoaXMuZWxlbWVudFsgMCBdIHx8CgkJCWV2ZW50LnRhcmdldCA9PT0gbWVudUVsZW1lbnQgfHwKCQkJJC5jb250YWlucyggbWVudUVsZW1lbnQsIGV2ZW50LnRhcmdldCApOwoJfSwKCglfY2xvc2VPbkNsaWNrT3V0c2lkZTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCWlmICggIXRoaXMuX2lzRXZlbnRUYXJnZXRJbldpZGdldCggZXZlbnQgKSApIHsKCQkJdGhpcy5jbG9zZSgpOwoJCX0KCX0sCgoJX2FwcGVuZFRvOiBmdW5jdGlvbigpIHsKCQl2YXIgZWxlbWVudCA9IHRoaXMub3B0aW9ucy5hcHBlbmRUbzsKCgkJaWYgKCBlbGVtZW50ICkgewoJCQllbGVtZW50ID0gZWxlbWVudC5qcXVlcnkgfHwgZWxlbWVudC5ub2RlVHlwZSA/CgkJCQkkKCBlbGVtZW50ICkgOgoJCQkJdGhpcy5kb2N1bWVudC5maW5kKCBlbGVtZW50ICkuZXEoIDAgKTsKCQl9CgoJCWlmICggIWVsZW1lbnQgfHwgIWVsZW1lbnRbIDAgXSApIHsKCQkJZWxlbWVudCA9IHRoaXMuZWxlbWVudC5jbG9zZXN0KCAiLnVpLWZyb250LCBkaWFsb2ciICk7CgkJfQoKCQlpZiAoICFlbGVtZW50Lmxlbmd0aCApIHsKCQkJZWxlbWVudCA9IHRoaXMuZG9jdW1lbnRbIDAgXS5ib2R5OwoJCX0KCgkJcmV0dXJuIGVsZW1lbnQ7Cgl9LAoKCV9pbml0U291cmNlOiBmdW5jdGlvbigpIHsKCQl2YXIgYXJyYXksIHVybCwKCQkJdGhhdCA9IHRoaXM7CgkJaWYgKCAkLmlzQXJyYXkoIHRoaXMub3B0aW9ucy5zb3VyY2UgKSApIHsKCQkJYXJyYXkgPSB0aGlzLm9wdGlvbnMuc291cmNlOwoJCQl0aGlzLnNvdXJjZSA9IGZ1bmN0aW9uKCByZXF1ZXN0LCByZXNwb25zZSApIHsKCQkJCXJlc3BvbnNlKCAkLnVpLmF1dG9jb21wbGV0ZS5maWx0ZXIoIGFycmF5LCByZXF1ZXN0LnRlcm0gKSApOwoJCQl9OwoJCX0gZWxzZSBpZiAoIHR5cGVvZiB0aGlzLm9wdGlvbnMuc291cmNlID09PSAic3RyaW5nIiApIHsKCQkJdXJsID0gdGhpcy5vcHRpb25zLnNvdXJjZTsKCQkJdGhpcy5zb3VyY2UgPSBmdW5jdGlvbiggcmVxdWVzdCwgcmVzcG9uc2UgKSB7CgkJCQlpZiAoIHRoYXQueGhyICkgewoJCQkJCXRoYXQueGhyLmFib3J0KCk7CgkJCQl9CgkJCQl0aGF0LnhociA9ICQuYWpheCggewoJCQkJCXVybDogdXJsLAoJCQkJCWRhdGE6IHJlcXVlc3QsCgkJCQkJZGF0YVR5cGU6ICJqc29uIiwKCQkJCQlzdWNjZXNzOiBmdW5jdGlvbiggZGF0YSApIHsKCQkJCQkJcmVzcG9uc2UoIGRhdGEgKTsKCQkJCQl9LAoJCQkJCWVycm9yOiBmdW5jdGlvbigpIHsKCQkJCQkJcmVzcG9uc2UoIFtdICk7CgkJCQkJfQoJCQkJfSApOwoJCQl9OwoJCX0gZWxzZSB7CgkJCXRoaXMuc291cmNlID0gdGhpcy5vcHRpb25zLnNvdXJjZTsKCQl9Cgl9LAoKCV9zZWFyY2hUaW1lb3V0OiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJY2xlYXJUaW1lb3V0KCB0aGlzLnNlYXJjaGluZyApOwoJCXRoaXMuc2VhcmNoaW5nID0gdGhpcy5fZGVsYXkoIGZ1bmN0aW9uKCkgewoKCQkJLy8gU2VhcmNoIGlmIHRoZSB2YWx1ZSBoYXMgY2hhbmdlZCwgb3IgaWYgdGhlIHVzZXIgcmV0eXBlcyB0aGUgc2FtZSB2YWx1ZSAoc2VlICM3NDM0KQoJCQl2YXIgZXF1YWxWYWx1ZXMgPSB0aGlzLnRlcm0gPT09IHRoaXMuX3ZhbHVlKCksCgkJCQltZW51VmlzaWJsZSA9IHRoaXMubWVudS5lbGVtZW50LmlzKCAiOnZpc2libGUiICksCgkJCQltb2RpZmllcktleSA9IGV2ZW50LmFsdEtleSB8fCBldmVudC5jdHJsS2V5IHx8IGV2ZW50Lm1ldGFLZXkgfHwgZXZlbnQuc2hpZnRLZXk7CgoJCQlpZiAoICFlcXVhbFZhbHVlcyB8fCAoIGVxdWFsVmFsdWVzICYmICFtZW51VmlzaWJsZSAmJiAhbW9kaWZpZXJLZXkgKSApIHsKCQkJCXRoaXMuc2VsZWN0ZWRJdGVtID0gbnVsbDsKCQkJCXRoaXMuc2VhcmNoKCBudWxsLCBldmVudCApOwoJCQl9CgkJfSwgdGhpcy5vcHRpb25zLmRlbGF5ICk7Cgl9LAoKCXNlYXJjaDogZnVuY3Rpb24oIHZhbHVlLCBldmVudCApIHsKCQl2YWx1ZSA9IHZhbHVlICE9IG51bGwgPyB2YWx1ZSA6IHRoaXMuX3ZhbHVlKCk7CgoJCS8vIEFsd2F5cyBzYXZlIHRoZSBhY3R1YWwgdmFsdWUsIG5vdCB0aGUgb25lIHBhc3NlZCBhcyBhbiBhcmd1bWVudAoJCXRoaXMudGVybSA9IHRoaXMuX3ZhbHVlKCk7CgoJCWlmICggdmFsdWUubGVuZ3RoIDwgdGhpcy5vcHRpb25zLm1pbkxlbmd0aCApIHsKCQkJcmV0dXJuIHRoaXMuY2xvc2UoIGV2ZW50ICk7CgkJfQoKCQlpZiAoIHRoaXMuX3RyaWdnZXIoICJzZWFyY2giLCBldmVudCApID09PSBmYWxzZSApIHsKCQkJcmV0dXJuOwoJCX0KCgkJcmV0dXJuIHRoaXMuX3NlYXJjaCggdmFsdWUgKTsKCX0sCgoJX3NlYXJjaDogZnVuY3Rpb24oIHZhbHVlICkgewoJCXRoaXMucGVuZGluZysrOwoJCXRoaXMuX2FkZENsYXNzKCAidWktYXV0b2NvbXBsZXRlLWxvYWRpbmciICk7CgkJdGhpcy5jYW5jZWxTZWFyY2ggPSBmYWxzZTsKCgkJdGhpcy5zb3VyY2UoIHsgdGVybTogdmFsdWUgfSwgdGhpcy5fcmVzcG9uc2UoKSApOwoJfSwKCglfcmVzcG9uc2U6IGZ1bmN0aW9uKCkgewoJCXZhciBpbmRleCA9ICsrdGhpcy5yZXF1ZXN0SW5kZXg7CgoJCXJldHVybiAkLnByb3h5KCBmdW5jdGlvbiggY29udGVudCApIHsKCQkJaWYgKCBpbmRleCA9PT0gdGhpcy5yZXF1ZXN0SW5kZXggKSB7CgkJCQl0aGlzLl9fcmVzcG9uc2UoIGNvbnRlbnQgKTsKCQkJfQoKCQkJdGhpcy5wZW5kaW5nLS07CgkJCWlmICggIXRoaXMucGVuZGluZyApIHsKCQkJCXRoaXMuX3JlbW92ZUNsYXNzKCAidWktYXV0b2NvbXBsZXRlLWxvYWRpbmciICk7CgkJCX0KCQl9LCB0aGlzICk7Cgl9LAoKCV9fcmVzcG9uc2U6IGZ1bmN0aW9uKCBjb250ZW50ICkgewoJCWlmICggY29udGVudCApIHsKCQkJY29udGVudCA9IHRoaXMuX25vcm1hbGl6ZSggY29udGVudCApOwoJCX0KCQl0aGlzLl90cmlnZ2VyKCAicmVzcG9uc2UiLCBudWxsLCB7IGNvbnRlbnQ6IGNvbnRlbnQgfSApOwoJCWlmICggIXRoaXMub3B0aW9ucy5kaXNhYmxlZCAmJiBjb250ZW50ICYmIGNvbnRlbnQubGVuZ3RoICYmICF0aGlzLmNhbmNlbFNlYXJjaCApIHsKCQkJdGhpcy5fc3VnZ2VzdCggY29udGVudCApOwoJCQl0aGlzLl90cmlnZ2VyKCAib3BlbiIgKTsKCQl9IGVsc2UgewoKCQkJLy8gdXNlIC5fY2xvc2UoKSBpbnN0ZWFkIG9mIC5jbG9zZSgpIHNvIHdlIGRvbid0IGNhbmNlbCBmdXR1cmUgc2VhcmNoZXMKCQkJdGhpcy5fY2xvc2UoKTsKCQl9Cgl9LAoKCWNsb3NlOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdGhpcy5jYW5jZWxTZWFyY2ggPSB0cnVlOwoJCXRoaXMuX2Nsb3NlKCBldmVudCApOwoJfSwKCglfY2xvc2U6IGZ1bmN0aW9uKCBldmVudCApIHsKCgkJLy8gUmVtb3ZlIHRoZSBoYW5kbGVyIHRoYXQgY2xvc2VzIHRoZSBtZW51IG9uIG91dHNpZGUgY2xpY2tzCgkJdGhpcy5fb2ZmKCB0aGlzLmRvY3VtZW50LCAibW91c2Vkb3duIiApOwoKCQlpZiAoIHRoaXMubWVudS5lbGVtZW50LmlzKCAiOnZpc2libGUiICkgKSB7CgkJCXRoaXMubWVudS5lbGVtZW50LmhpZGUoKTsKCQkJdGhpcy5tZW51LmJsdXIoKTsKCQkJdGhpcy5pc05ld01lbnUgPSB0cnVlOwoJCQl0aGlzLl90cmlnZ2VyKCAiY2xvc2UiLCBldmVudCApOwoJCX0KCX0sCgoJX2NoYW5nZTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCWlmICggdGhpcy5wcmV2aW91cyAhPT0gdGhpcy5fdmFsdWUoKSApIHsKCQkJdGhpcy5fdHJpZ2dlciggImNoYW5nZSIsIGV2ZW50LCB7IGl0ZW06IHRoaXMuc2VsZWN0ZWRJdGVtIH0gKTsKCQl9Cgl9LAoKCV9ub3JtYWxpemU6IGZ1bmN0aW9uKCBpdGVtcyApIHsKCgkJLy8gYXNzdW1lIGFsbCBpdGVtcyBoYXZlIHRoZSByaWdodCBmb3JtYXQgd2hlbiB0aGUgZmlyc3QgaXRlbSBpcyBjb21wbGV0ZQoJCWlmICggaXRlbXMubGVuZ3RoICYmIGl0ZW1zWyAwIF0ubGFiZWwgJiYgaXRlbXNbIDAgXS52YWx1ZSApIHsKCQkJcmV0dXJuIGl0ZW1zOwoJCX0KCQlyZXR1cm4gJC5tYXAoIGl0ZW1zLCBmdW5jdGlvbiggaXRlbSApIHsKCQkJaWYgKCB0eXBlb2YgaXRlbSA9PT0gInN0cmluZyIgKSB7CgkJCQlyZXR1cm4gewoJCQkJCWxhYmVsOiBpdGVtLAoJCQkJCXZhbHVlOiBpdGVtCgkJCQl9OwoJCQl9CgkJCXJldHVybiAkLmV4dGVuZCgge30sIGl0ZW0sIHsKCQkJCWxhYmVsOiBpdGVtLmxhYmVsIHx8IGl0ZW0udmFsdWUsCgkJCQl2YWx1ZTogaXRlbS52YWx1ZSB8fCBpdGVtLmxhYmVsCgkJCX0gKTsKCQl9ICk7Cgl9LAoKCV9zdWdnZXN0OiBmdW5jdGlvbiggaXRlbXMgKSB7CgkJdmFyIHVsID0gdGhpcy5tZW51LmVsZW1lbnQuZW1wdHkoKTsKCQl0aGlzLl9yZW5kZXJNZW51KCB1bCwgaXRlbXMgKTsKCQl0aGlzLmlzTmV3TWVudSA9IHRydWU7CgkJdGhpcy5tZW51LnJlZnJlc2goKTsKCgkJLy8gU2l6ZSBhbmQgcG9zaXRpb24gbWVudQoJCXVsLnNob3coKTsKCQl0aGlzLl9yZXNpemVNZW51KCk7CgkJdWwucG9zaXRpb24oICQuZXh0ZW5kKCB7CgkJCW9mOiB0aGlzLmVsZW1lbnQKCQl9LCB0aGlzLm9wdGlvbnMucG9zaXRpb24gKSApOwoKCQlpZiAoIHRoaXMub3B0aW9ucy5hdXRvRm9jdXMgKSB7CgkJCXRoaXMubWVudS5uZXh0KCk7CgkJfQoKCQkvLyBMaXN0ZW4gZm9yIGludGVyYWN0aW9ucyBvdXRzaWRlIG9mIHRoZSB3aWRnZXQgKCM2NjQyKQoJCXRoaXMuX29uKCB0aGlzLmRvY3VtZW50LCB7CgkJCW1vdXNlZG93bjogIl9jbG9zZU9uQ2xpY2tPdXRzaWRlIgoJCX0gKTsKCX0sCgoJX3Jlc2l6ZU1lbnU6IGZ1bmN0aW9uKCkgewoJCXZhciB1bCA9IHRoaXMubWVudS5lbGVtZW50OwoJCXVsLm91dGVyV2lkdGgoIE1hdGgubWF4KAoKCQkJLy8gRmlyZWZveCB3cmFwcyBsb25nIHRleHQgKHBvc3NpYmx5IGEgcm91bmRpbmcgYnVnKQoJCQkvLyBzbyB3ZSBhZGQgMXB4IHRvIGF2b2lkIHRoZSB3cmFwcGluZyAoIzc1MTMpCgkJCXVsLndpZHRoKCAiIiApLm91dGVyV2lkdGgoKSArIDEsCgkJCXRoaXMuZWxlbWVudC5vdXRlcldpZHRoKCkKCQkpICk7Cgl9LAoKCV9yZW5kZXJNZW51OiBmdW5jdGlvbiggdWwsIGl0ZW1zICkgewoJCXZhciB0aGF0ID0gdGhpczsKCQkkLmVhY2goIGl0ZW1zLCBmdW5jdGlvbiggaW5kZXgsIGl0ZW0gKSB7CgkJCXRoYXQuX3JlbmRlckl0ZW1EYXRhKCB1bCwgaXRlbSApOwoJCX0gKTsKCX0sCgoJX3JlbmRlckl0ZW1EYXRhOiBmdW5jdGlvbiggdWwsIGl0ZW0gKSB7CgkJcmV0dXJuIHRoaXMuX3JlbmRlckl0ZW0oIHVsLCBpdGVtICkuZGF0YSggInVpLWF1dG9jb21wbGV0ZS1pdGVtIiwgaXRlbSApOwoJfSwKCglfcmVuZGVySXRlbTogZnVuY3Rpb24oIHVsLCBpdGVtICkgewoJCXJldHVybiAkKCAiPGxpPiIgKQoJCQkuYXBwZW5kKCAkKCAiPGRpdj4iICkudGV4dCggaXRlbS5sYWJlbCApICkKCQkJLmFwcGVuZFRvKCB1bCApOwoJfSwKCglfbW92ZTogZnVuY3Rpb24oIGRpcmVjdGlvbiwgZXZlbnQgKSB7CgkJaWYgKCAhdGhpcy5tZW51LmVsZW1lbnQuaXMoICI6dmlzaWJsZSIgKSApIHsKCQkJdGhpcy5zZWFyY2goIG51bGwsIGV2ZW50ICk7CgkJCXJldHVybjsKCQl9CgkJaWYgKCB0aGlzLm1lbnUuaXNGaXJzdEl0ZW0oKSAmJiAvXnByZXZpb3VzLy50ZXN0KCBkaXJlY3Rpb24gKSB8fAoJCQkJdGhpcy5tZW51LmlzTGFzdEl0ZW0oKSAmJiAvXm5leHQvLnRlc3QoIGRpcmVjdGlvbiApICkgewoKCQkJaWYgKCAhdGhpcy5pc011bHRpTGluZSApIHsKCQkJCXRoaXMuX3ZhbHVlKCB0aGlzLnRlcm0gKTsKCQkJfQoKCQkJdGhpcy5tZW51LmJsdXIoKTsKCQkJcmV0dXJuOwoJCX0KCQl0aGlzLm1lbnVbIGRpcmVjdGlvbiBdKCBldmVudCApOwoJfSwKCgl3aWRnZXQ6IGZ1bmN0aW9uKCkgewoJCXJldHVybiB0aGlzLm1lbnUuZWxlbWVudDsKCX0sCgoJX3ZhbHVlOiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gdGhpcy52YWx1ZU1ldGhvZC5hcHBseSggdGhpcy5lbGVtZW50LCBhcmd1bWVudHMgKTsKCX0sCgoJX2tleUV2ZW50OiBmdW5jdGlvbigga2V5RXZlbnQsIGV2ZW50ICkgewoJCWlmICggIXRoaXMuaXNNdWx0aUxpbmUgfHwgdGhpcy5tZW51LmVsZW1lbnQuaXMoICI6dmlzaWJsZSIgKSApIHsKCQkJdGhpcy5fbW92ZSgga2V5RXZlbnQsIGV2ZW50ICk7CgoJCQkvLyBQcmV2ZW50cyBtb3ZpbmcgY3Vyc29yIHRvIGJlZ2lubmluZy9lbmQgb2YgdGhlIHRleHQgZmllbGQgaW4gc29tZSBicm93c2VycwoJCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOwoJCX0KCX0sCgoJLy8gU3VwcG9ydDogQ2hyb21lIDw9NTAKCS8vIFdlIHNob3VsZCBiZSBhYmxlIHRvIGp1c3QgdXNlIHRoaXMuZWxlbWVudC5wcm9wKCAiaXNDb250ZW50RWRpdGFibGUiICkKCS8vIGJ1dCBoaWRkZW4gZWxlbWVudHMgYWx3YXlzIHJlcG9ydCBmYWxzZSBpbiBDaHJvbWUuCgkvLyBodHRwczovL2NvZGUuZ29vZ2xlLmNvbS9wL2Nocm9taXVtL2lzc3Vlcy9kZXRhaWw/aWQ9MzEzMDgyCglfaXNDb250ZW50RWRpdGFibGU6IGZ1bmN0aW9uKCBlbGVtZW50ICkgewoJCWlmICggIWVsZW1lbnQubGVuZ3RoICkgewoJCQlyZXR1cm4gZmFsc2U7CgkJfQoKCQl2YXIgZWRpdGFibGUgPSBlbGVtZW50LnByb3AoICJjb250ZW50RWRpdGFibGUiICk7CgoJCWlmICggZWRpdGFibGUgPT09ICJpbmhlcml0IiApIHsKCQkgIHJldHVybiB0aGlzLl9pc0NvbnRlbnRFZGl0YWJsZSggZWxlbWVudC5wYXJlbnQoKSApOwoJCX0KCgkJcmV0dXJuIGVkaXRhYmxlID09PSAidHJ1ZSI7Cgl9Cn0gKTsKCiQuZXh0ZW5kKCAkLnVpLmF1dG9jb21wbGV0ZSwgewoJZXNjYXBlUmVnZXg6IGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQlyZXR1cm4gdmFsdWUucmVwbGFjZSggL1tcLVxbXF17fSgpKis/LixcXFxeJHwjXHNdL2csICJcXCQmIiApOwoJfSwKCWZpbHRlcjogZnVuY3Rpb24oIGFycmF5LCB0ZXJtICkgewoJCXZhciBtYXRjaGVyID0gbmV3IFJlZ0V4cCggJC51aS5hdXRvY29tcGxldGUuZXNjYXBlUmVnZXgoIHRlcm0gKSwgImkiICk7CgkJcmV0dXJuICQuZ3JlcCggYXJyYXksIGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQkJcmV0dXJuIG1hdGNoZXIudGVzdCggdmFsdWUubGFiZWwgfHwgdmFsdWUudmFsdWUgfHwgdmFsdWUgKTsKCQl9ICk7Cgl9Cn0gKTsKCi8vIExpdmUgcmVnaW9uIGV4dGVuc2lvbiwgYWRkaW5nIGEgYG1lc3NhZ2VzYCBvcHRpb24KLy8gTk9URTogVGhpcyBpcyBhbiBleHBlcmltZW50YWwgQVBJLiBXZSBhcmUgc3RpbGwgaW52ZXN0aWdhdGluZwovLyBhIGZ1bGwgc29sdXRpb24gZm9yIHN0cmluZyBtYW5pcHVsYXRpb24gYW5kIGludGVybmF0aW9uYWxpemF0aW9uLgokLndpZGdldCggInVpLmF1dG9jb21wbGV0ZSIsICQudWkuYXV0b2NvbXBsZXRlLCB7CglvcHRpb25zOiB7CgkJbWVzc2FnZXM6IHsKCQkJbm9SZXN1bHRzOiAiTm8gc2VhcmNoIHJlc3VsdHMuIiwKCQkJcmVzdWx0czogZnVuY3Rpb24oIGFtb3VudCApIHsKCQkJCXJldHVybiBhbW91bnQgKyAoIGFtb3VudCA+IDEgPyAiIHJlc3VsdHMgYXJlIiA6ICIgcmVzdWx0IGlzIiApICsKCQkJCQkiIGF2YWlsYWJsZSwgdXNlIHVwIGFuZCBkb3duIGFycm93IGtleXMgdG8gbmF2aWdhdGUuIjsKCQkJfQoJCX0KCX0sCgoJX19yZXNwb25zZTogZnVuY3Rpb24oIGNvbnRlbnQgKSB7CgkJdmFyIG1lc3NhZ2U7CgkJdGhpcy5fc3VwZXJBcHBseSggYXJndW1lbnRzICk7CgkJaWYgKCB0aGlzLm9wdGlvbnMuZGlzYWJsZWQgfHwgdGhpcy5jYW5jZWxTZWFyY2ggKSB7CgkJCXJldHVybjsKCQl9CgkJaWYgKCBjb250ZW50ICYmIGNvbnRlbnQubGVuZ3RoICkgewoJCQltZXNzYWdlID0gdGhpcy5vcHRpb25zLm1lc3NhZ2VzLnJlc3VsdHMoIGNvbnRlbnQubGVuZ3RoICk7CgkJfSBlbHNlIHsKCQkJbWVzc2FnZSA9IHRoaXMub3B0aW9ucy5tZXNzYWdlcy5ub1Jlc3VsdHM7CgkJfQoJCXRoaXMubGl2ZVJlZ2lvbi5jaGlsZHJlbigpLmhpZGUoKTsKCQkkKCAiPGRpdj4iICkudGV4dCggbWVzc2FnZSApLmFwcGVuZFRvKCB0aGlzLmxpdmVSZWdpb24gKTsKCX0KfSApOwoKdmFyIHdpZGdldHNBdXRvY29tcGxldGUgPSAkLnVpLmF1dG9jb21wbGV0ZTsKCgovKiEKICogalF1ZXJ5IFVJIENvbnRyb2xncm91cCAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IENvbnRyb2xncm91cAovLz4+Z3JvdXA6IFdpZGdldHMKLy8+PmRlc2NyaXB0aW9uOiBWaXN1YWxseSBncm91cHMgZm9ybSBjb250cm9sIHdpZGdldHMKLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2NvbnRyb2xncm91cC8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL2NvbnRyb2xncm91cC8KLy8+PmNzcy5zdHJ1Y3R1cmU6IC4uLy4uL3RoZW1lcy9iYXNlL2NvcmUuY3NzCi8vPj5jc3Muc3RydWN0dXJlOiAuLi8uLi90aGVtZXMvYmFzZS9jb250cm9sZ3JvdXAuY3NzCi8vPj5jc3MudGhlbWU6IC4uLy4uL3RoZW1lcy9iYXNlL3RoZW1lLmNzcwoKCnZhciBjb250cm9sZ3JvdXBDb3JuZXJSZWdleCA9IC91aS1jb3JuZXItKFthLXpdKXsyLDZ9L2c7Cgp2YXIgd2lkZ2V0c0NvbnRyb2xncm91cCA9ICQud2lkZ2V0KCAidWkuY29udHJvbGdyb3VwIiwgewoJdmVyc2lvbjogIjEuMTIuMSIsCglkZWZhdWx0RWxlbWVudDogIjxkaXY+IiwKCW9wdGlvbnM6IHsKCQlkaXJlY3Rpb246ICJob3Jpem9udGFsIiwKCQlkaXNhYmxlZDogbnVsbCwKCQlvbmx5VmlzaWJsZTogdHJ1ZSwKCQlpdGVtczogewoJCQkiYnV0dG9uIjogImlucHV0W3R5cGU9YnV0dG9uXSwgaW5wdXRbdHlwZT1zdWJtaXRdLCBpbnB1dFt0eXBlPXJlc2V0XSwgYnV0dG9uLCBhIiwKCQkJImNvbnRyb2xncm91cExhYmVsIjogIi51aS1jb250cm9sZ3JvdXAtbGFiZWwiLAoJCQkiY2hlY2tib3hyYWRpbyI6ICJpbnB1dFt0eXBlPSdjaGVja2JveCddLCBpbnB1dFt0eXBlPSdyYWRpbyddIiwKCQkJInNlbGVjdG1lbnUiOiAic2VsZWN0IiwKCQkJInNwaW5uZXIiOiAiLnVpLXNwaW5uZXItaW5wdXQiCgkJfQoJfSwKCglfY3JlYXRlOiBmdW5jdGlvbigpIHsKCQl0aGlzLl9lbmhhbmNlKCk7Cgl9LAoKCS8vIFRvIHN1cHBvcnQgdGhlIGVuaGFuY2VkIG9wdGlvbiBpbiBqUXVlcnkgTW9iaWxlLCB3ZSBpc29sYXRlIERPTSBtYW5pcHVsYXRpb24KCV9lbmhhbmNlOiBmdW5jdGlvbigpIHsKCQl0aGlzLmVsZW1lbnQuYXR0ciggInJvbGUiLCAidG9vbGJhciIgKTsKCQl0aGlzLnJlZnJlc2goKTsKCX0sCgoJX2Rlc3Ryb3k6IGZ1bmN0aW9uKCkgewoJCXRoaXMuX2NhbGxDaGlsZE1ldGhvZCggImRlc3Ryb3kiICk7CgkJdGhpcy5jaGlsZFdpZGdldHMucmVtb3ZlRGF0YSggInVpLWNvbnRyb2xncm91cC1kYXRhIiApOwoJCXRoaXMuZWxlbWVudC5yZW1vdmVBdHRyKCAicm9sZSIgKTsKCQlpZiAoIHRoaXMub3B0aW9ucy5pdGVtcy5jb250cm9sZ3JvdXBMYWJlbCApIHsKCQkJdGhpcy5lbGVtZW50CgkJCQkuZmluZCggdGhpcy5vcHRpb25zLml0ZW1zLmNvbnRyb2xncm91cExhYmVsICkKCQkJCS5maW5kKCAiLnVpLWNvbnRyb2xncm91cC1sYWJlbC1jb250ZW50cyIgKQoJCQkJLmNvbnRlbnRzKCkudW53cmFwKCk7CgkJfQoJfSwKCglfaW5pdFdpZGdldHM6IGZ1bmN0aW9uKCkgewoJCXZhciB0aGF0ID0gdGhpcywKCQkJY2hpbGRXaWRnZXRzID0gW107CgoJCS8vIEZpcnN0IHdlIGl0ZXJhdGUgb3ZlciBlYWNoIG9mIHRoZSBpdGVtcyBvcHRpb25zCgkJJC5lYWNoKCB0aGlzLm9wdGlvbnMuaXRlbXMsIGZ1bmN0aW9uKCB3aWRnZXQsIHNlbGVjdG9yICkgewoJCQl2YXIgbGFiZWxzOwoJCQl2YXIgb3B0aW9ucyA9IHt9OwoKCQkJLy8gTWFrZSBzdXJlIHRoZSB3aWRnZXQgaGFzIGEgc2VsZWN0b3Igc2V0CgkJCWlmICggIXNlbGVjdG9yICkgewoJCQkJcmV0dXJuOwoJCQl9CgoJCQlpZiAoIHdpZGdldCA9PT0gImNvbnRyb2xncm91cExhYmVsIiApIHsKCQkJCWxhYmVscyA9IHRoYXQuZWxlbWVudC5maW5kKCBzZWxlY3RvciApOwoJCQkJbGFiZWxzLmVhY2goIGZ1bmN0aW9uKCkgewoJCQkJCXZhciBlbGVtZW50ID0gJCggdGhpcyApOwoKCQkJCQlpZiAoIGVsZW1lbnQuY2hpbGRyZW4oICIudWktY29udHJvbGdyb3VwLWxhYmVsLWNvbnRlbnRzIiApLmxlbmd0aCApIHsKCQkJCQkJcmV0dXJuOwoJCQkJCX0KCQkJCQllbGVtZW50LmNvbnRlbnRzKCkKCQkJCQkJLndyYXBBbGwoICI8c3BhbiBjbGFzcz0ndWktY29udHJvbGdyb3VwLWxhYmVsLWNvbnRlbnRzJz48L3NwYW4+IiApOwoJCQkJfSApOwoJCQkJdGhhdC5fYWRkQ2xhc3MoIGxhYmVscywgbnVsbCwgInVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1zdGF0ZS1kZWZhdWx0IiApOwoJCQkJY2hpbGRXaWRnZXRzID0gY2hpbGRXaWRnZXRzLmNvbmNhdCggbGFiZWxzLmdldCgpICk7CgkJCQlyZXR1cm47CgkJCX0KCgkJCS8vIE1ha2Ugc3VyZSB0aGUgd2lkZ2V0IGFjdHVhbGx5IGV4aXN0cwoJCQlpZiAoICEkLmZuWyB3aWRnZXQgXSApIHsKCQkJCXJldHVybjsKCQkJfQoKCQkJLy8gV2UgYXNzdW1lIGV2ZXJ5dGhpbmcgaXMgaW4gdGhlIG1pZGRsZSB0byBzdGFydCBiZWNhdXNlIHdlIGNhbid0IGRldGVybWluZQoJCQkvLyBmaXJzdCAvIGxhc3QgZWxlbWVudHMgdW50aWwgYWxsIGVuaGFuY21lbnRzIGFyZSBkb25lLgoJCQlpZiAoIHRoYXRbICJfIiArIHdpZGdldCArICJPcHRpb25zIiBdICkgewoJCQkJb3B0aW9ucyA9IHRoYXRbICJfIiArIHdpZGdldCArICJPcHRpb25zIiBdKCAibWlkZGxlIiApOwoJCQl9IGVsc2UgewoJCQkJb3B0aW9ucyA9IHsgY2xhc3Nlczoge30gfTsKCQkJfQoKCQkJLy8gRmluZCBpbnN0YW5jZXMgb2YgdGhpcyB3aWRnZXQgaW5zaWRlIGNvbnRyb2xncm91cCBhbmQgaW5pdCB0aGVtCgkJCXRoYXQuZWxlbWVudAoJCQkJLmZpbmQoIHNlbGVjdG9yICkKCQkJCS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCQl2YXIgZWxlbWVudCA9ICQoIHRoaXMgKTsKCQkJCQl2YXIgaW5zdGFuY2UgPSBlbGVtZW50WyB3aWRnZXQgXSggImluc3RhbmNlIiApOwoKCQkJCQkvLyBXZSBuZWVkIHRvIGNsb25lIHRoZSBkZWZhdWx0IG9wdGlvbnMgZm9yIHRoaXMgdHlwZSBvZiB3aWRnZXQgdG8gYXZvaWQKCQkJCQkvLyBwb2xsdXRpbmcgdGhlIHZhcmlhYmxlIG9wdGlvbnMgd2hpY2ggaGFzIGEgd2lkZXIgc2NvcGUgdGhhbiBhIHNpbmdsZSB3aWRnZXQuCgkJCQkJdmFyIGluc3RhbmNlT3B0aW9ucyA9ICQud2lkZ2V0LmV4dGVuZCgge30sIG9wdGlvbnMgKTsKCgkJCQkJLy8gSWYgdGhlIGJ1dHRvbiBpcyB0aGUgY2hpbGQgb2YgYSBzcGlubmVyIGlnbm9yZSBpdAoJCQkJCS8vIFRPRE86IEZpbmQgYSBtb3JlIGdlbmVyaWMgc29sdXRpb24KCQkJCQlpZiAoIHdpZGdldCA9PT0gImJ1dHRvbiIgJiYgZWxlbWVudC5wYXJlbnQoICIudWktc3Bpbm5lciIgKS5sZW5ndGggKSB7CgkJCQkJCXJldHVybjsKCQkJCQl9CgoJCQkJCS8vIENyZWF0ZSB0aGUgd2lkZ2V0IGlmIGl0IGRvZXNuJ3QgZXhpc3QKCQkJCQlpZiAoICFpbnN0YW5jZSApIHsKCQkJCQkJaW5zdGFuY2UgPSBlbGVtZW50WyB3aWRnZXQgXSgpWyB3aWRnZXQgXSggImluc3RhbmNlIiApOwoJCQkJCX0KCQkJCQlpZiAoIGluc3RhbmNlICkgewoJCQkJCQlpbnN0YW5jZU9wdGlvbnMuY2xhc3NlcyA9CgkJCQkJCQl0aGF0Ll9yZXNvbHZlQ2xhc3Nlc1ZhbHVlcyggaW5zdGFuY2VPcHRpb25zLmNsYXNzZXMsIGluc3RhbmNlICk7CgkJCQkJfQoJCQkJCWVsZW1lbnRbIHdpZGdldCBdKCBpbnN0YW5jZU9wdGlvbnMgKTsKCgkJCQkJLy8gU3RvcmUgYW4gaW5zdGFuY2Ugb2YgdGhlIGNvbnRyb2xncm91cCB0byBiZSBhYmxlIHRvIHJlZmVyZW5jZQoJCQkJCS8vIGZyb20gdGhlIG91dGVybW9zdCBlbGVtZW50IGZvciBjaGFuZ2luZyBvcHRpb25zIGFuZCByZWZyZXNoCgkJCQkJdmFyIHdpZGdldEVsZW1lbnQgPSBlbGVtZW50WyB3aWRnZXQgXSggIndpZGdldCIgKTsKCQkJCQkkLmRhdGEoIHdpZGdldEVsZW1lbnRbIDAgXSwgInVpLWNvbnRyb2xncm91cC1kYXRhIiwKCQkJCQkJaW5zdGFuY2UgPyBpbnN0YW5jZSA6IGVsZW1lbnRbIHdpZGdldCBdKCAiaW5zdGFuY2UiICkgKTsKCgkJCQkJY2hpbGRXaWRnZXRzLnB1c2goIHdpZGdldEVsZW1lbnRbIDAgXSApOwoJCQkJfSApOwoJCX0gKTsKCgkJdGhpcy5jaGlsZFdpZGdldHMgPSAkKCAkLnVuaXF1ZSggY2hpbGRXaWRnZXRzICkgKTsKCQl0aGlzLl9hZGRDbGFzcyggdGhpcy5jaGlsZFdpZGdldHMsICJ1aS1jb250cm9sZ3JvdXAtaXRlbSIgKTsKCX0sCgoJX2NhbGxDaGlsZE1ldGhvZDogZnVuY3Rpb24oIG1ldGhvZCApIHsKCQl0aGlzLmNoaWxkV2lkZ2V0cy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJdmFyIGVsZW1lbnQgPSAkKCB0aGlzICksCgkJCQlkYXRhID0gZWxlbWVudC5kYXRhKCAidWktY29udHJvbGdyb3VwLWRhdGEiICk7CgkJCWlmICggZGF0YSAmJiBkYXRhWyBtZXRob2QgXSApIHsKCQkJCWRhdGFbIG1ldGhvZCBdKCk7CgkJCX0KCQl9ICk7Cgl9LAoKCV91cGRhdGVDb3JuZXJDbGFzczogZnVuY3Rpb24oIGVsZW1lbnQsIHBvc2l0aW9uICkgewoJCXZhciByZW1vdmUgPSAidWktY29ybmVyLXRvcCB1aS1jb3JuZXItYm90dG9tIHVpLWNvcm5lci1sZWZ0IHVpLWNvcm5lci1yaWdodCB1aS1jb3JuZXItYWxsIjsKCQl2YXIgYWRkID0gdGhpcy5fYnVpbGRTaW1wbGVPcHRpb25zKCBwb3NpdGlvbiwgImxhYmVsIiApLmNsYXNzZXMubGFiZWw7CgoJCXRoaXMuX3JlbW92ZUNsYXNzKCBlbGVtZW50LCBudWxsLCByZW1vdmUgKTsKCQl0aGlzLl9hZGRDbGFzcyggZWxlbWVudCwgbnVsbCwgYWRkICk7Cgl9LAoKCV9idWlsZFNpbXBsZU9wdGlvbnM6IGZ1bmN0aW9uKCBwb3NpdGlvbiwga2V5ICkgewoJCXZhciBkaXJlY3Rpb24gPSB0aGlzLm9wdGlvbnMuZGlyZWN0aW9uID09PSAidmVydGljYWwiOwoJCXZhciByZXN1bHQgPSB7CgkJCWNsYXNzZXM6IHt9CgkJfTsKCQlyZXN1bHQuY2xhc3Nlc1sga2V5IF0gPSB7CgkJCSJtaWRkbGUiOiAiIiwKCQkJImZpcnN0IjogInVpLWNvcm5lci0iICsgKCBkaXJlY3Rpb24gPyAidG9wIiA6ICJsZWZ0IiApLAoJCQkibGFzdCI6ICJ1aS1jb3JuZXItIiArICggZGlyZWN0aW9uID8gImJvdHRvbSIgOiAicmlnaHQiICksCgkJCSJvbmx5IjogInVpLWNvcm5lci1hbGwiCgkJfVsgcG9zaXRpb24gXTsKCgkJcmV0dXJuIHJlc3VsdDsKCX0sCgoJX3NwaW5uZXJPcHRpb25zOiBmdW5jdGlvbiggcG9zaXRpb24gKSB7CgkJdmFyIG9wdGlvbnMgPSB0aGlzLl9idWlsZFNpbXBsZU9wdGlvbnMoIHBvc2l0aW9uLCAidWktc3Bpbm5lciIgKTsKCgkJb3B0aW9ucy5jbGFzc2VzWyAidWktc3Bpbm5lci11cCIgXSA9ICIiOwoJCW9wdGlvbnMuY2xhc3Nlc1sgInVpLXNwaW5uZXItZG93biIgXSA9ICIiOwoKCQlyZXR1cm4gb3B0aW9uczsKCX0sCgoJX2J1dHRvbk9wdGlvbnM6IGZ1bmN0aW9uKCBwb3NpdGlvbiApIHsKCQlyZXR1cm4gdGhpcy5fYnVpbGRTaW1wbGVPcHRpb25zKCBwb3NpdGlvbiwgInVpLWJ1dHRvbiIgKTsKCX0sCgoJX2NoZWNrYm94cmFkaW9PcHRpb25zOiBmdW5jdGlvbiggcG9zaXRpb24gKSB7CgkJcmV0dXJuIHRoaXMuX2J1aWxkU2ltcGxlT3B0aW9ucyggcG9zaXRpb24sICJ1aS1jaGVja2JveHJhZGlvLWxhYmVsIiApOwoJfSwKCglfc2VsZWN0bWVudU9wdGlvbnM6IGZ1bmN0aW9uKCBwb3NpdGlvbiApIHsKCQl2YXIgZGlyZWN0aW9uID0gdGhpcy5vcHRpb25zLmRpcmVjdGlvbiA9PT0gInZlcnRpY2FsIjsKCQlyZXR1cm4gewoJCQl3aWR0aDogZGlyZWN0aW9uID8gImF1dG8iIDogZmFsc2UsCgkJCWNsYXNzZXM6IHsKCQkJCW1pZGRsZTogewoJCQkJCSJ1aS1zZWxlY3RtZW51LWJ1dHRvbi1vcGVuIjogIiIsCgkJCQkJInVpLXNlbGVjdG1lbnUtYnV0dG9uLWNsb3NlZCI6ICIiCgkJCQl9LAoJCQkJZmlyc3Q6IHsKCQkJCQkidWktc2VsZWN0bWVudS1idXR0b24tb3BlbiI6ICJ1aS1jb3JuZXItIiArICggZGlyZWN0aW9uID8gInRvcCIgOiAidGwiICksCgkJCQkJInVpLXNlbGVjdG1lbnUtYnV0dG9uLWNsb3NlZCI6ICJ1aS1jb3JuZXItIiArICggZGlyZWN0aW9uID8gInRvcCIgOiAibGVmdCIgKQoJCQkJfSwKCQkJCWxhc3Q6IHsKCQkJCQkidWktc2VsZWN0bWVudS1idXR0b24tb3BlbiI6IGRpcmVjdGlvbiA/ICIiIDogInVpLWNvcm5lci10ciIsCgkJCQkJInVpLXNlbGVjdG1lbnUtYnV0dG9uLWNsb3NlZCI6ICJ1aS1jb3JuZXItIiArICggZGlyZWN0aW9uID8gImJvdHRvbSIgOiAicmlnaHQiICkKCQkJCX0sCgkJCQlvbmx5OiB7CgkJCQkJInVpLXNlbGVjdG1lbnUtYnV0dG9uLW9wZW4iOiAidWktY29ybmVyLXRvcCIsCgkJCQkJInVpLXNlbGVjdG1lbnUtYnV0dG9uLWNsb3NlZCI6ICJ1aS1jb3JuZXItYWxsIgoJCQkJfQoKCQkJfVsgcG9zaXRpb24gXQoJCX07Cgl9LAoKCV9yZXNvbHZlQ2xhc3Nlc1ZhbHVlczogZnVuY3Rpb24oIGNsYXNzZXMsIGluc3RhbmNlICkgewoJCXZhciByZXN1bHQgPSB7fTsKCQkkLmVhY2goIGNsYXNzZXMsIGZ1bmN0aW9uKCBrZXkgKSB7CgkJCXZhciBjdXJyZW50ID0gaW5zdGFuY2Uub3B0aW9ucy5jbGFzc2VzWyBrZXkgXSB8fCAiIjsKCQkJY3VycmVudCA9ICQudHJpbSggY3VycmVudC5yZXBsYWNlKCBjb250cm9sZ3JvdXBDb3JuZXJSZWdleCwgIiIgKSApOwoJCQlyZXN1bHRbIGtleSBdID0gKCBjdXJyZW50ICsgIiAiICsgY2xhc3Nlc1sga2V5IF0gKS5yZXBsYWNlKCAvXHMrL2csICIgIiApOwoJCX0gKTsKCQlyZXR1cm4gcmVzdWx0OwoJfSwKCglfc2V0T3B0aW9uOiBmdW5jdGlvbigga2V5LCB2YWx1ZSApIHsKCQlpZiAoIGtleSA9PT0gImRpcmVjdGlvbiIgKSB7CgkJCXRoaXMuX3JlbW92ZUNsYXNzKCAidWktY29udHJvbGdyb3VwLSIgKyB0aGlzLm9wdGlvbnMuZGlyZWN0aW9uICk7CgkJfQoKCQl0aGlzLl9zdXBlcigga2V5LCB2YWx1ZSApOwoJCWlmICgga2V5ID09PSAiZGlzYWJsZWQiICkgewoJCQl0aGlzLl9jYWxsQ2hpbGRNZXRob2QoIHZhbHVlID8gImRpc2FibGUiIDogImVuYWJsZSIgKTsKCQkJcmV0dXJuOwoJCX0KCgkJdGhpcy5yZWZyZXNoKCk7Cgl9LAoKCXJlZnJlc2g6IGZ1bmN0aW9uKCkgewoJCXZhciBjaGlsZHJlbiwKCQkJdGhhdCA9IHRoaXM7CgoJCXRoaXMuX2FkZENsYXNzKCAidWktY29udHJvbGdyb3VwIHVpLWNvbnRyb2xncm91cC0iICsgdGhpcy5vcHRpb25zLmRpcmVjdGlvbiApOwoKCQlpZiAoIHRoaXMub3B0aW9ucy5kaXJlY3Rpb24gPT09ICJob3Jpem9udGFsIiApIHsKCQkJdGhpcy5fYWRkQ2xhc3MoIG51bGwsICJ1aS1oZWxwZXItY2xlYXJmaXgiICk7CgkJfQoJCXRoaXMuX2luaXRXaWRnZXRzKCk7CgoJCWNoaWxkcmVuID0gdGhpcy5jaGlsZFdpZGdldHM7CgoJCS8vIFdlIGZpbHRlciBoZXJlIGJlY2F1c2Ugd2UgbmVlZCB0byB0cmFjayBhbGwgY2hpbGRXaWRnZXRzIG5vdCBqdXN0IHRoZSB2aXNpYmxlIG9uZXMKCQlpZiAoIHRoaXMub3B0aW9ucy5vbmx5VmlzaWJsZSApIHsKCQkJY2hpbGRyZW4gPSBjaGlsZHJlbi5maWx0ZXIoICI6dmlzaWJsZSIgKTsKCQl9CgoJCWlmICggY2hpbGRyZW4ubGVuZ3RoICkgewoKCQkJLy8gV2UgZG8gdGhpcyBsYXN0IGJlY2F1c2Ugd2UgbmVlZCB0byBtYWtlIHN1cmUgYWxsIGVuaGFuY21lbnQgaXMgZG9uZQoJCQkvLyBiZWZvcmUgZGV0ZXJtaW5pbmcgZmlyc3QgYW5kIGxhc3QKCQkJJC5lYWNoKCBbICJmaXJzdCIsICJsYXN0IiBdLCBmdW5jdGlvbiggaW5kZXgsIHZhbHVlICkgewoJCQkJdmFyIGluc3RhbmNlID0gY2hpbGRyZW5bIHZhbHVlIF0oKS5kYXRhKCAidWktY29udHJvbGdyb3VwLWRhdGEiICk7CgoJCQkJaWYgKCBpbnN0YW5jZSAmJiB0aGF0WyAiXyIgKyBpbnN0YW5jZS53aWRnZXROYW1lICsgIk9wdGlvbnMiIF0gKSB7CgkJCQkJdmFyIG9wdGlvbnMgPSB0aGF0WyAiXyIgKyBpbnN0YW5jZS53aWRnZXROYW1lICsgIk9wdGlvbnMiIF0oCgkJCQkJCWNoaWxkcmVuLmxlbmd0aCA9PT0gMSA/ICJvbmx5IiA6IHZhbHVlCgkJCQkJKTsKCQkJCQlvcHRpb25zLmNsYXNzZXMgPSB0aGF0Ll9yZXNvbHZlQ2xhc3Nlc1ZhbHVlcyggb3B0aW9ucy5jbGFzc2VzLCBpbnN0YW5jZSApOwoJCQkJCWluc3RhbmNlLmVsZW1lbnRbIGluc3RhbmNlLndpZGdldE5hbWUgXSggb3B0aW9ucyApOwoJCQkJfSBlbHNlIHsKCQkJCQl0aGF0Ll91cGRhdGVDb3JuZXJDbGFzcyggY2hpbGRyZW5bIHZhbHVlIF0oKSwgdmFsdWUgKTsKCQkJCX0KCQkJfSApOwoKCQkJLy8gRmluYWxseSBjYWxsIHRoZSByZWZyZXNoIG1ldGhvZCBvbiBlYWNoIG9mIHRoZSBjaGlsZCB3aWRnZXRzLgoJCQl0aGlzLl9jYWxsQ2hpbGRNZXRob2QoICJyZWZyZXNoIiApOwoJCX0KCX0KfSApOwoKLyohCiAqIGpRdWVyeSBVSSBDaGVja2JveHJhZGlvIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogQ2hlY2tib3hyYWRpbwovLz4+Z3JvdXA6IFdpZGdldHMKLy8+PmRlc2NyaXB0aW9uOiBFbmhhbmNlcyBhIGZvcm0gd2l0aCBtdWx0aXBsZSB0aGVtZWFibGUgY2hlY2tib3hlcyBvciByYWRpbyBidXR0b25zLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vY2hlY2tib3hyYWRpby8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL2NoZWNrYm94cmFkaW8vCi8vPj5jc3Muc3RydWN0dXJlOiAuLi8uLi90aGVtZXMvYmFzZS9jb3JlLmNzcwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvYnV0dG9uLmNzcwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvY2hlY2tib3hyYWRpby5jc3MKLy8+PmNzcy50aGVtZTogLi4vLi4vdGhlbWVzL2Jhc2UvdGhlbWUuY3NzCgoKCiQud2lkZ2V0KCAidWkuY2hlY2tib3hyYWRpbyIsIFsgJC51aS5mb3JtUmVzZXRNaXhpbiwgewoJdmVyc2lvbjogIjEuMTIuMSIsCglvcHRpb25zOiB7CgkJZGlzYWJsZWQ6IG51bGwsCgkJbGFiZWw6IG51bGwsCgkJaWNvbjogdHJ1ZSwKCQljbGFzc2VzOiB7CgkJCSJ1aS1jaGVja2JveHJhZGlvLWxhYmVsIjogInVpLWNvcm5lci1hbGwiLAoJCQkidWktY2hlY2tib3hyYWRpby1pY29uIjogInVpLWNvcm5lci1hbGwiCgkJfQoJfSwKCglfZ2V0Q3JlYXRlT3B0aW9uczogZnVuY3Rpb24oKSB7CgkJdmFyIGRpc2FibGVkLCBsYWJlbHM7CgkJdmFyIHRoYXQgPSB0aGlzOwoJCXZhciBvcHRpb25zID0gdGhpcy5fc3VwZXIoKSB8fCB7fTsKCgkJLy8gV2UgcmVhZCB0aGUgdHlwZSBoZXJlLCBiZWNhdXNlIGl0IG1ha2VzIG1vcmUgc2Vuc2UgdG8gdGhyb3cgYSBlbGVtZW50IHR5cGUgZXJyb3IgZmlyc3QsCgkJLy8gcmF0aGVyIHRoZW4gdGhlIGVycm9yIGZvciBsYWNrIG9mIGEgbGFiZWwuIE9mdGVuIGlmIGl0cyB0aGUgd3JvbmcgdHlwZSwgaXQKCQkvLyB3b24ndCBoYXZlIGEgbGFiZWwgKGUuZy4gY2FsbGluZyBvbiBhIGRpdiwgYnRuLCBldGMpCgkJdGhpcy5fcmVhZFR5cGUoKTsKCgkJbGFiZWxzID0gdGhpcy5lbGVtZW50LmxhYmVscygpOwoKCQkvLyBJZiB0aGVyZSBhcmUgbXVsdGlwbGUgbGFiZWxzLCB1c2UgdGhlIGxhc3Qgb25lCgkJdGhpcy5sYWJlbCA9ICQoIGxhYmVsc1sgbGFiZWxzLmxlbmd0aCAtIDEgXSApOwoJCWlmICggIXRoaXMubGFiZWwubGVuZ3RoICkgewoJCQkkLmVycm9yKCAiTm8gbGFiZWwgZm91bmQgZm9yIGNoZWNrYm94cmFkaW8gd2lkZ2V0IiApOwoJCX0KCgkJdGhpcy5vcmlnaW5hbExhYmVsID0gIiI7CgoJCS8vIFdlIG5lZWQgdG8gZ2V0IHRoZSBsYWJlbCB0ZXh0IGJ1dCB0aGlzIG1heSBhbHNvIG5lZWQgdG8gbWFrZSBzdXJlIGl0IGRvZXMgbm90IGNvbnRhaW4gdGhlCgkJLy8gaW5wdXQgaXRzZWxmLgoJCXRoaXMubGFiZWwuY29udGVudHMoKS5ub3QoIHRoaXMuZWxlbWVudFsgMCBdICkuZWFjaCggZnVuY3Rpb24oKSB7CgoJCQkvLyBUaGUgbGFiZWwgY29udGVudHMgY291bGQgYmUgdGV4dCwgaHRtbCwgb3IgYSBtaXguIFdlIGNvbmNhdCBlYWNoIGVsZW1lbnQgdG8gZ2V0IGEKCQkJLy8gc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBsYWJlbCwgd2l0aG91dCB0aGUgaW5wdXQgYXMgcGFydCBvZiBpdC4KCQkJdGhhdC5vcmlnaW5hbExhYmVsICs9IHRoaXMubm9kZVR5cGUgPT09IDMgPyAkKCB0aGlzICkudGV4dCgpIDogdGhpcy5vdXRlckhUTUw7CgkJfSApOwoKCQkvLyBTZXQgdGhlIGxhYmVsIG9wdGlvbiBpZiB3ZSBmb3VuZCBsYWJlbCB0ZXh0CgkJaWYgKCB0aGlzLm9yaWdpbmFsTGFiZWwgKSB7CgkJCW9wdGlvbnMubGFiZWwgPSB0aGlzLm9yaWdpbmFsTGFiZWw7CgkJfQoKCQlkaXNhYmxlZCA9IHRoaXMuZWxlbWVudFsgMCBdLmRpc2FibGVkOwoJCWlmICggZGlzYWJsZWQgIT0gbnVsbCApIHsKCQkJb3B0aW9ucy5kaXNhYmxlZCA9IGRpc2FibGVkOwoJCX0KCQlyZXR1cm4gb3B0aW9uczsKCX0sCgoJX2NyZWF0ZTogZnVuY3Rpb24oKSB7CgkJdmFyIGNoZWNrZWQgPSB0aGlzLmVsZW1lbnRbIDAgXS5jaGVja2VkOwoKCQl0aGlzLl9iaW5kRm9ybVJlc2V0SGFuZGxlcigpOwoKCQlpZiAoIHRoaXMub3B0aW9ucy5kaXNhYmxlZCA9PSBudWxsICkgewoJCQl0aGlzLm9wdGlvbnMuZGlzYWJsZWQgPSB0aGlzLmVsZW1lbnRbIDAgXS5kaXNhYmxlZDsKCQl9CgoJCXRoaXMuX3NldE9wdGlvbiggImRpc2FibGVkIiwgdGhpcy5vcHRpb25zLmRpc2FibGVkICk7CgkJdGhpcy5fYWRkQ2xhc3MoICJ1aS1jaGVja2JveHJhZGlvIiwgInVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSIgKTsKCQl0aGlzLl9hZGRDbGFzcyggdGhpcy5sYWJlbCwgInVpLWNoZWNrYm94cmFkaW8tbGFiZWwiLCAidWktYnV0dG9uIHVpLXdpZGdldCIgKTsKCgkJaWYgKCB0aGlzLnR5cGUgPT09ICJyYWRpbyIgKSB7CgkJCXRoaXMuX2FkZENsYXNzKCB0aGlzLmxhYmVsLCAidWktY2hlY2tib3hyYWRpby1yYWRpby1sYWJlbCIgKTsKCQl9CgoJCWlmICggdGhpcy5vcHRpb25zLmxhYmVsICYmIHRoaXMub3B0aW9ucy5sYWJlbCAhPT0gdGhpcy5vcmlnaW5hbExhYmVsICkgewoJCQl0aGlzLl91cGRhdGVMYWJlbCgpOwoJCX0gZWxzZSBpZiAoIHRoaXMub3JpZ2luYWxMYWJlbCApIHsKCQkJdGhpcy5vcHRpb25zLmxhYmVsID0gdGhpcy5vcmlnaW5hbExhYmVsOwoJCX0KCgkJdGhpcy5fZW5oYW5jZSgpOwoKCQlpZiAoIGNoZWNrZWQgKSB7CgkJCXRoaXMuX2FkZENsYXNzKCB0aGlzLmxhYmVsLCAidWktY2hlY2tib3hyYWRpby1jaGVja2VkIiwgInVpLXN0YXRlLWFjdGl2ZSIgKTsKCQkJaWYgKCB0aGlzLmljb24gKSB7CgkJCQl0aGlzLl9hZGRDbGFzcyggdGhpcy5pY29uLCBudWxsLCAidWktc3RhdGUtaG92ZXIiICk7CgkJCX0KCQl9CgoJCXRoaXMuX29uKCB7CgkJCWNoYW5nZTogIl90b2dnbGVDbGFzc2VzIiwKCQkJZm9jdXM6IGZ1bmN0aW9uKCkgewoJCQkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMubGFiZWwsIG51bGwsICJ1aS1zdGF0ZS1mb2N1cyB1aS12aXN1YWwtZm9jdXMiICk7CgkJCX0sCgkJCWJsdXI6IGZ1bmN0aW9uKCkgewoJCQkJdGhpcy5fcmVtb3ZlQ2xhc3MoIHRoaXMubGFiZWwsIG51bGwsICJ1aS1zdGF0ZS1mb2N1cyB1aS12aXN1YWwtZm9jdXMiICk7CgkJCX0KCQl9ICk7Cgl9LAoKCV9yZWFkVHlwZTogZnVuY3Rpb24oKSB7CgkJdmFyIG5vZGVOYW1lID0gdGhpcy5lbGVtZW50WyAwIF0ubm9kZU5hbWUudG9Mb3dlckNhc2UoKTsKCQl0aGlzLnR5cGUgPSB0aGlzLmVsZW1lbnRbIDAgXS50eXBlOwoJCWlmICggbm9kZU5hbWUgIT09ICJpbnB1dCIgfHwgIS9yYWRpb3xjaGVja2JveC8udGVzdCggdGhpcy50eXBlICkgKSB7CgkJCSQuZXJyb3IoICJDYW4ndCBjcmVhdGUgY2hlY2tib3hyYWRpbyBvbiBlbGVtZW50Lm5vZGVOYW1lPSIgKyBub2RlTmFtZSArCgkJCQkiIGFuZCBlbGVtZW50LnR5cGU9IiArIHRoaXMudHlwZSApOwoJCX0KCX0sCgoJLy8gU3VwcG9ydCBqUXVlcnkgTW9iaWxlIGVuaGFuY2VkIG9wdGlvbgoJX2VuaGFuY2U6IGZ1bmN0aW9uKCkgewoJCXRoaXMuX3VwZGF0ZUljb24oIHRoaXMuZWxlbWVudFsgMCBdLmNoZWNrZWQgKTsKCX0sCgoJd2lkZ2V0OiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gdGhpcy5sYWJlbDsKCX0sCgoJX2dldFJhZGlvR3JvdXA6IGZ1bmN0aW9uKCkgewoJCXZhciBncm91cDsKCQl2YXIgbmFtZSA9IHRoaXMuZWxlbWVudFsgMCBdLm5hbWU7CgkJdmFyIG5hbWVTZWxlY3RvciA9ICJpbnB1dFtuYW1lPSciICsgJC51aS5lc2NhcGVTZWxlY3RvciggbmFtZSApICsgIiddIjsKCgkJaWYgKCAhbmFtZSApIHsKCQkJcmV0dXJuICQoIFtdICk7CgkJfQoKCQlpZiAoIHRoaXMuZm9ybS5sZW5ndGggKSB7CgkJCWdyb3VwID0gJCggdGhpcy5mb3JtWyAwIF0uZWxlbWVudHMgKS5maWx0ZXIoIG5hbWVTZWxlY3RvciApOwoJCX0gZWxzZSB7CgoJCQkvLyBOb3QgaW5zaWRlIGEgZm9ybSwgY2hlY2sgYWxsIGlucHV0cyB0aGF0IGFsc28gYXJlIG5vdCBpbnNpZGUgYSBmb3JtCgkJCWdyb3VwID0gJCggbmFtZVNlbGVjdG9yICkuZmlsdGVyKCBmdW5jdGlvbigpIHsKCQkJCXJldHVybiAkKCB0aGlzICkuZm9ybSgpLmxlbmd0aCA9PT0gMDsKCQkJfSApOwoJCX0KCgkJcmV0dXJuIGdyb3VwLm5vdCggdGhpcy5lbGVtZW50ICk7Cgl9LAoKCV90b2dnbGVDbGFzc2VzOiBmdW5jdGlvbigpIHsKCQl2YXIgY2hlY2tlZCA9IHRoaXMuZWxlbWVudFsgMCBdLmNoZWNrZWQ7CgkJdGhpcy5fdG9nZ2xlQ2xhc3MoIHRoaXMubGFiZWwsICJ1aS1jaGVja2JveHJhZGlvLWNoZWNrZWQiLCAidWktc3RhdGUtYWN0aXZlIiwgY2hlY2tlZCApOwoKCQlpZiAoIHRoaXMub3B0aW9ucy5pY29uICYmIHRoaXMudHlwZSA9PT0gImNoZWNrYm94IiApIHsKCQkJdGhpcy5fdG9nZ2xlQ2xhc3MoIHRoaXMuaWNvbiwgbnVsbCwgInVpLWljb24tY2hlY2sgdWktc3RhdGUtY2hlY2tlZCIsIGNoZWNrZWQgKQoJCQkJLl90b2dnbGVDbGFzcyggdGhpcy5pY29uLCBudWxsLCAidWktaWNvbi1ibGFuayIsICFjaGVja2VkICk7CgkJfQoKCQlpZiAoIHRoaXMudHlwZSA9PT0gInJhZGlvIiApIHsKCQkJdGhpcy5fZ2V0UmFkaW9Hcm91cCgpCgkJCQkuZWFjaCggZnVuY3Rpb24oKSB7CgkJCQkJdmFyIGluc3RhbmNlID0gJCggdGhpcyApLmNoZWNrYm94cmFkaW8oICJpbnN0YW5jZSIgKTsKCgkJCQkJaWYgKCBpbnN0YW5jZSApIHsKCQkJCQkJaW5zdGFuY2UuX3JlbW92ZUNsYXNzKCBpbnN0YW5jZS5sYWJlbCwKCQkJCQkJCSJ1aS1jaGVja2JveHJhZGlvLWNoZWNrZWQiLCAidWktc3RhdGUtYWN0aXZlIiApOwoJCQkJCX0KCQkJCX0gKTsKCQl9Cgl9LAoKCV9kZXN0cm95OiBmdW5jdGlvbigpIHsKCQl0aGlzLl91bmJpbmRGb3JtUmVzZXRIYW5kbGVyKCk7CgoJCWlmICggdGhpcy5pY29uICkgewoJCQl0aGlzLmljb24ucmVtb3ZlKCk7CgkJCXRoaXMuaWNvblNwYWNlLnJlbW92ZSgpOwoJCX0KCX0sCgoJX3NldE9wdGlvbjogZnVuY3Rpb24oIGtleSwgdmFsdWUgKSB7CgoJCS8vIFdlIGRvbid0IGFsbG93IHRoZSB2YWx1ZSB0byBiZSBzZXQgdG8gbm90aGluZwoJCWlmICgga2V5ID09PSAibGFiZWwiICYmICF2YWx1ZSApIHsKCQkJcmV0dXJuOwoJCX0KCgkJdGhpcy5fc3VwZXIoIGtleSwgdmFsdWUgKTsKCgkJaWYgKCBrZXkgPT09ICJkaXNhYmxlZCIgKSB7CgkJCXRoaXMuX3RvZ2dsZUNsYXNzKCB0aGlzLmxhYmVsLCBudWxsLCAidWktc3RhdGUtZGlzYWJsZWQiLCB2YWx1ZSApOwoJCQl0aGlzLmVsZW1lbnRbIDAgXS5kaXNhYmxlZCA9IHZhbHVlOwoKCQkJLy8gRG9uJ3QgcmVmcmVzaCB3aGVuIHNldHRpbmcgZGlzYWJsZWQKCQkJcmV0dXJuOwoJCX0KCQl0aGlzLnJlZnJlc2goKTsKCX0sCgoJX3VwZGF0ZUljb246IGZ1bmN0aW9uKCBjaGVja2VkICkgewoJCXZhciB0b0FkZCA9ICJ1aS1pY29uIHVpLWljb24tYmFja2dyb3VuZCAiOwoKCQlpZiAoIHRoaXMub3B0aW9ucy5pY29uICkgewoJCQlpZiAoICF0aGlzLmljb24gKSB7CgkJCQl0aGlzLmljb24gPSAkKCAiPHNwYW4+IiApOwoJCQkJdGhpcy5pY29uU3BhY2UgPSAkKCAiPHNwYW4+IDwvc3Bhbj4iICk7CgkJCQl0aGlzLl9hZGRDbGFzcyggdGhpcy5pY29uU3BhY2UsICJ1aS1jaGVja2JveHJhZGlvLWljb24tc3BhY2UiICk7CgkJCX0KCgkJCWlmICggdGhpcy50eXBlID09PSAiY2hlY2tib3giICkgewoJCQkJdG9BZGQgKz0gY2hlY2tlZCA/ICJ1aS1pY29uLWNoZWNrIHVpLXN0YXRlLWNoZWNrZWQiIDogInVpLWljb24tYmxhbmsiOwoJCQkJdGhpcy5fcmVtb3ZlQ2xhc3MoIHRoaXMuaWNvbiwgbnVsbCwgY2hlY2tlZCA/ICJ1aS1pY29uLWJsYW5rIiA6ICJ1aS1pY29uLWNoZWNrIiApOwoJCQl9IGVsc2UgewoJCQkJdG9BZGQgKz0gInVpLWljb24tYmxhbmsiOwoJCQl9CgkJCXRoaXMuX2FkZENsYXNzKCB0aGlzLmljb24sICJ1aS1jaGVja2JveHJhZGlvLWljb24iLCB0b0FkZCApOwoJCQlpZiAoICFjaGVja2VkICkgewoJCQkJdGhpcy5fcmVtb3ZlQ2xhc3MoIHRoaXMuaWNvbiwgbnVsbCwgInVpLWljb24tY2hlY2sgdWktc3RhdGUtY2hlY2tlZCIgKTsKCQkJfQoJCQl0aGlzLmljb24ucHJlcGVuZFRvKCB0aGlzLmxhYmVsICkuYWZ0ZXIoIHRoaXMuaWNvblNwYWNlICk7CgkJfSBlbHNlIGlmICggdGhpcy5pY29uICE9PSB1bmRlZmluZWQgKSB7CgkJCXRoaXMuaWNvbi5yZW1vdmUoKTsKCQkJdGhpcy5pY29uU3BhY2UucmVtb3ZlKCk7CgkJCWRlbGV0ZSB0aGlzLmljb247CgkJfQoJfSwKCglfdXBkYXRlTGFiZWw6IGZ1bmN0aW9uKCkgewoKCQkvLyBSZW1vdmUgdGhlIGNvbnRlbnRzIG9mIHRoZSBsYWJlbCAoIG1pbnVzIHRoZSBpY29uLCBpY29uIHNwYWNlLCBhbmQgaW5wdXQgKQoJCXZhciBjb250ZW50cyA9IHRoaXMubGFiZWwuY29udGVudHMoKS5ub3QoIHRoaXMuZWxlbWVudFsgMCBdICk7CgkJaWYgKCB0aGlzLmljb24gKSB7CgkJCWNvbnRlbnRzID0gY29udGVudHMubm90KCB0aGlzLmljb25bIDAgXSApOwoJCX0KCQlpZiAoIHRoaXMuaWNvblNwYWNlICkgewoJCQljb250ZW50cyA9IGNvbnRlbnRzLm5vdCggdGhpcy5pY29uU3BhY2VbIDAgXSApOwoJCX0KCQljb250ZW50cy5yZW1vdmUoKTsKCgkJdGhpcy5sYWJlbC5hcHBlbmQoIHRoaXMub3B0aW9ucy5sYWJlbCApOwoJfSwKCglyZWZyZXNoOiBmdW5jdGlvbigpIHsKCQl2YXIgY2hlY2tlZCA9IHRoaXMuZWxlbWVudFsgMCBdLmNoZWNrZWQsCgkJCWlzRGlzYWJsZWQgPSB0aGlzLmVsZW1lbnRbIDAgXS5kaXNhYmxlZDsKCgkJdGhpcy5fdXBkYXRlSWNvbiggY2hlY2tlZCApOwoJCXRoaXMuX3RvZ2dsZUNsYXNzKCB0aGlzLmxhYmVsLCAidWktY2hlY2tib3hyYWRpby1jaGVja2VkIiwgInVpLXN0YXRlLWFjdGl2ZSIsIGNoZWNrZWQgKTsKCQlpZiAoIHRoaXMub3B0aW9ucy5sYWJlbCAhPT0gbnVsbCApIHsKCQkJdGhpcy5fdXBkYXRlTGFiZWwoKTsKCQl9CgoJCWlmICggaXNEaXNhYmxlZCAhPT0gdGhpcy5vcHRpb25zLmRpc2FibGVkICkgewoJCQl0aGlzLl9zZXRPcHRpb25zKCB7ICJkaXNhYmxlZCI6IGlzRGlzYWJsZWQgfSApOwoJCX0KCX0KCn0gXSApOwoKdmFyIHdpZGdldHNDaGVja2JveHJhZGlvID0gJC51aS5jaGVja2JveHJhZGlvOwoKCi8qIQogKiBqUXVlcnkgVUkgQnV0dG9uIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogQnV0dG9uCi8vPj5ncm91cDogV2lkZ2V0cwovLz4+ZGVzY3JpcHRpb246IEVuaGFuY2VzIGEgZm9ybSB3aXRoIHRoZW1lYWJsZSBidXR0b25zLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vYnV0dG9uLwovLz4+ZGVtb3M6IGh0dHA6Ly9qcXVlcnl1aS5jb20vYnV0dG9uLwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvY29yZS5jc3MKLy8+PmNzcy5zdHJ1Y3R1cmU6IC4uLy4uL3RoZW1lcy9iYXNlL2J1dHRvbi5jc3MKLy8+PmNzcy50aGVtZTogLi4vLi4vdGhlbWVzL2Jhc2UvdGhlbWUuY3NzCgoKCiQud2lkZ2V0KCAidWkuYnV0dG9uIiwgewoJdmVyc2lvbjogIjEuMTIuMSIsCglkZWZhdWx0RWxlbWVudDogIjxidXR0b24+IiwKCW9wdGlvbnM6IHsKCQljbGFzc2VzOiB7CgkJCSJ1aS1idXR0b24iOiAidWktY29ybmVyLWFsbCIKCQl9LAoJCWRpc2FibGVkOiBudWxsLAoJCWljb246IG51bGwsCgkJaWNvblBvc2l0aW9uOiAiYmVnaW5uaW5nIiwKCQlsYWJlbDogbnVsbCwKCQlzaG93TGFiZWw6IHRydWUKCX0sCgoJX2dldENyZWF0ZU9wdGlvbnM6IGZ1bmN0aW9uKCkgewoJCXZhciBkaXNhYmxlZCwKCgkJCS8vIFRoaXMgaXMgdG8gc3VwcG9ydCBjYXNlcyBsaWtlIGluIGpRdWVyeSBNb2JpbGUgd2hlcmUgdGhlIGJhc2Ugd2lkZ2V0IGRvZXMgaGF2ZQoJCQkvLyBhbiBpbXBsZW1lbnRhdGlvbiBvZiBfZ2V0Q3JlYXRlT3B0aW9ucwoJCQlvcHRpb25zID0gdGhpcy5fc3VwZXIoKSB8fCB7fTsKCgkJdGhpcy5pc0lucHV0ID0gdGhpcy5lbGVtZW50LmlzKCAiaW5wdXQiICk7CgoJCWRpc2FibGVkID0gdGhpcy5lbGVtZW50WyAwIF0uZGlzYWJsZWQ7CgkJaWYgKCBkaXNhYmxlZCAhPSBudWxsICkgewoJCQlvcHRpb25zLmRpc2FibGVkID0gZGlzYWJsZWQ7CgkJfQoKCQl0aGlzLm9yaWdpbmFsTGFiZWwgPSB0aGlzLmlzSW5wdXQgPyB0aGlzLmVsZW1lbnQudmFsKCkgOiB0aGlzLmVsZW1lbnQuaHRtbCgpOwoJCWlmICggdGhpcy5vcmlnaW5hbExhYmVsICkgewoJCQlvcHRpb25zLmxhYmVsID0gdGhpcy5vcmlnaW5hbExhYmVsOwoJCX0KCgkJcmV0dXJuIG9wdGlvbnM7Cgl9LAoKCV9jcmVhdGU6IGZ1bmN0aW9uKCkgewoJCWlmICggIXRoaXMub3B0aW9uLnNob3dMYWJlbCAmICF0aGlzLm9wdGlvbnMuaWNvbiApIHsKCQkJdGhpcy5vcHRpb25zLnNob3dMYWJlbCA9IHRydWU7CgkJfQoKCQkvLyBXZSBoYXZlIHRvIGNoZWNrIHRoZSBvcHRpb24gYWdhaW4gaGVyZSBldmVuIHRob3VnaCB3ZSBkaWQgaW4gX2dldENyZWF0ZU9wdGlvbnMsCgkJLy8gYmVjYXVzZSBudWxsIG1heSBoYXZlIGJlZW4gcGFzc2VkIG9uIGluaXQgd2hpY2ggd291bGQgb3ZlcnJpZGUgd2hhdCB3YXMgc2V0IGluCgkJLy8gX2dldENyZWF0ZU9wdGlvbnMKCQlpZiAoIHRoaXMub3B0aW9ucy5kaXNhYmxlZCA9PSBudWxsICkgewoJCQl0aGlzLm9wdGlvbnMuZGlzYWJsZWQgPSB0aGlzLmVsZW1lbnRbIDAgXS5kaXNhYmxlZCB8fCBmYWxzZTsKCQl9CgoJCXRoaXMuaGFzVGl0bGUgPSAhIXRoaXMuZWxlbWVudC5hdHRyKCAidGl0bGUiICk7CgoJCS8vIENoZWNrIHRvIHNlZSBpZiB0aGUgbGFiZWwgbmVlZHMgdG8gYmUgc2V0IG9yIGlmIGl0cyBhbHJlYWR5IGNvcnJlY3QKCQlpZiAoIHRoaXMub3B0aW9ucy5sYWJlbCAmJiB0aGlzLm9wdGlvbnMubGFiZWwgIT09IHRoaXMub3JpZ2luYWxMYWJlbCApIHsKCQkJaWYgKCB0aGlzLmlzSW5wdXQgKSB7CgkJCQl0aGlzLmVsZW1lbnQudmFsKCB0aGlzLm9wdGlvbnMubGFiZWwgKTsKCQkJfSBlbHNlIHsKCQkJCXRoaXMuZWxlbWVudC5odG1sKCB0aGlzLm9wdGlvbnMubGFiZWwgKTsKCQkJfQoJCX0KCQl0aGlzLl9hZGRDbGFzcyggInVpLWJ1dHRvbiIsICJ1aS13aWRnZXQiICk7CgkJdGhpcy5fc2V0T3B0aW9uKCAiZGlzYWJsZWQiLCB0aGlzLm9wdGlvbnMuZGlzYWJsZWQgKTsKCQl0aGlzLl9lbmhhbmNlKCk7CgoJCWlmICggdGhpcy5lbGVtZW50LmlzKCAiYSIgKSApIHsKCQkJdGhpcy5fb24oIHsKCQkJCSJrZXl1cCI6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCQlpZiAoIGV2ZW50LmtleUNvZGUgPT09ICQudWkua2V5Q29kZS5TUEFDRSApIHsKCQkJCQkJZXZlbnQucHJldmVudERlZmF1bHQoKTsKCgkJCQkJCS8vIFN1cHBvcnQ6IFBoYW50b21KUyA8PSAxLjksIElFIDggT25seQoJCQkJCQkvLyBJZiBhIG5hdGl2ZSBjbGljayBpcyBhdmFpbGFibGUgdXNlIGl0IHNvIHdlIGFjdHVhbGx5IGNhdXNlIG5hdmlnYXRpb24KCQkJCQkJLy8gb3RoZXJ3aXNlIGp1c3QgdHJpZ2dlciBhIGNsaWNrIGV2ZW50CgkJCQkJCWlmICggdGhpcy5lbGVtZW50WyAwIF0uY2xpY2sgKSB7CgkJCQkJCQl0aGlzLmVsZW1lbnRbIDAgXS5jbGljaygpOwoJCQkJCQl9IGVsc2UgewoJCQkJCQkJdGhpcy5lbGVtZW50LnRyaWdnZXIoICJjbGljayIgKTsKCQkJCQkJfQoJCQkJCX0KCQkJCX0KCQkJfSApOwoJCX0KCX0sCgoJX2VuaGFuY2U6IGZ1bmN0aW9uKCkgewoJCWlmICggIXRoaXMuZWxlbWVudC5pcyggImJ1dHRvbiIgKSApIHsKCQkJdGhpcy5lbGVtZW50LmF0dHIoICJyb2xlIiwgImJ1dHRvbiIgKTsKCQl9CgoJCWlmICggdGhpcy5vcHRpb25zLmljb24gKSB7CgkJCXRoaXMuX3VwZGF0ZUljb24oICJpY29uIiwgdGhpcy5vcHRpb25zLmljb24gKTsKCQkJdGhpcy5fdXBkYXRlVG9vbHRpcCgpOwoJCX0KCX0sCgoJX3VwZGF0ZVRvb2x0aXA6IGZ1bmN0aW9uKCkgewoJCXRoaXMudGl0bGUgPSB0aGlzLmVsZW1lbnQuYXR0ciggInRpdGxlIiApOwoKCQlpZiAoICF0aGlzLm9wdGlvbnMuc2hvd0xhYmVsICYmICF0aGlzLnRpdGxlICkgewoJCQl0aGlzLmVsZW1lbnQuYXR0ciggInRpdGxlIiwgdGhpcy5vcHRpb25zLmxhYmVsICk7CgkJfQoJfSwKCglfdXBkYXRlSWNvbjogZnVuY3Rpb24oIG9wdGlvbiwgdmFsdWUgKSB7CgkJdmFyIGljb24gPSBvcHRpb24gIT09ICJpY29uUG9zaXRpb24iLAoJCQlwb3NpdGlvbiA9IGljb24gPyB0aGlzLm9wdGlvbnMuaWNvblBvc2l0aW9uIDogdmFsdWUsCgkJCWRpc3BsYXlCbG9jayA9IHBvc2l0aW9uID09PSAidG9wIiB8fCBwb3NpdGlvbiA9PT0gImJvdHRvbSI7CgoJCS8vIENyZWF0ZSBpY29uCgkJaWYgKCAhdGhpcy5pY29uICkgewoJCQl0aGlzLmljb24gPSAkKCAiPHNwYW4+IiApOwoKCQkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMuaWNvbiwgInVpLWJ1dHRvbi1pY29uIiwgInVpLWljb24iICk7CgoJCQlpZiAoICF0aGlzLm9wdGlvbnMuc2hvd0xhYmVsICkgewoJCQkJdGhpcy5fYWRkQ2xhc3MoICJ1aS1idXR0b24taWNvbi1vbmx5IiApOwoJCQl9CgkJfSBlbHNlIGlmICggaWNvbiApIHsKCgkJCS8vIElmIHdlIGFyZSB1cGRhdGluZyB0aGUgaWNvbiByZW1vdmUgdGhlIG9sZCBpY29uIGNsYXNzCgkJCXRoaXMuX3JlbW92ZUNsYXNzKCB0aGlzLmljb24sIG51bGwsIHRoaXMub3B0aW9ucy5pY29uICk7CgkJfQoKCQkvLyBJZiB3ZSBhcmUgdXBkYXRpbmcgdGhlIGljb24gYWRkIHRoZSBuZXcgaWNvbiBjbGFzcwoJCWlmICggaWNvbiApIHsKCQkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMuaWNvbiwgbnVsbCwgdmFsdWUgKTsKCQl9CgoJCXRoaXMuX2F0dGFjaEljb24oIHBvc2l0aW9uICk7CgoJCS8vIElmIHRoZSBpY29uIGlzIG9uIHRvcCBvciBib3R0b20gd2UgbmVlZCB0byBhZGQgdGhlIHVpLXdpZGdldC1pY29uLWJsb2NrIGNsYXNzIGFuZCByZW1vdmUKCQkvLyB0aGUgaWNvblNwYWNlIGlmIHRoZXJlIGlzIG9uZS4KCQlpZiAoIGRpc3BsYXlCbG9jayApIHsKCQkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMuaWNvbiwgbnVsbCwgInVpLXdpZGdldC1pY29uLWJsb2NrIiApOwoJCQlpZiAoIHRoaXMuaWNvblNwYWNlICkgewoJCQkJdGhpcy5pY29uU3BhY2UucmVtb3ZlKCk7CgkJCX0KCQl9IGVsc2UgewoKCQkJLy8gUG9zaXRpb24gaXMgYmVnaW5uaW5nIG9yIGVuZCBzbyByZW1vdmUgdGhlIHVpLXdpZGdldC1pY29uLWJsb2NrIGNsYXNzIGFuZCBhZGQgdGhlCgkJCS8vIHNwYWNlIGlmIGl0IGRvZXMgbm90IGV4aXN0CgkJCWlmICggIXRoaXMuaWNvblNwYWNlICkgewoJCQkJdGhpcy5pY29uU3BhY2UgPSAkKCAiPHNwYW4+IDwvc3Bhbj4iICk7CgkJCQl0aGlzLl9hZGRDbGFzcyggdGhpcy5pY29uU3BhY2UsICJ1aS1idXR0b24taWNvbi1zcGFjZSIgKTsKCQkJfQoJCQl0aGlzLl9yZW1vdmVDbGFzcyggdGhpcy5pY29uLCBudWxsLCAidWktd2lnZXQtaWNvbi1ibG9jayIgKTsKCQkJdGhpcy5fYXR0YWNoSWNvblNwYWNlKCBwb3NpdGlvbiApOwoJCX0KCX0sCgoJX2Rlc3Ryb3k6IGZ1bmN0aW9uKCkgewoJCXRoaXMuZWxlbWVudC5yZW1vdmVBdHRyKCAicm9sZSIgKTsKCgkJaWYgKCB0aGlzLmljb24gKSB7CgkJCXRoaXMuaWNvbi5yZW1vdmUoKTsKCQl9CgkJaWYgKCB0aGlzLmljb25TcGFjZSApIHsKCQkJdGhpcy5pY29uU3BhY2UucmVtb3ZlKCk7CgkJfQoJCWlmICggIXRoaXMuaGFzVGl0bGUgKSB7CgkJCXRoaXMuZWxlbWVudC5yZW1vdmVBdHRyKCAidGl0bGUiICk7CgkJfQoJfSwKCglfYXR0YWNoSWNvblNwYWNlOiBmdW5jdGlvbiggaWNvblBvc2l0aW9uICkgewoJCXRoaXMuaWNvblsgL14oPzplbmR8Ym90dG9tKS8udGVzdCggaWNvblBvc2l0aW9uICkgPyAiYmVmb3JlIiA6ICJhZnRlciIgXSggdGhpcy5pY29uU3BhY2UgKTsKCX0sCgoJX2F0dGFjaEljb246IGZ1bmN0aW9uKCBpY29uUG9zaXRpb24gKSB7CgkJdGhpcy5lbGVtZW50WyAvXig/OmVuZHxib3R0b20pLy50ZXN0KCBpY29uUG9zaXRpb24gKSA/ICJhcHBlbmQiIDogInByZXBlbmQiIF0oIHRoaXMuaWNvbiApOwoJfSwKCglfc2V0T3B0aW9uczogZnVuY3Rpb24oIG9wdGlvbnMgKSB7CgkJdmFyIG5ld1Nob3dMYWJlbCA9IG9wdGlvbnMuc2hvd0xhYmVsID09PSB1bmRlZmluZWQgPwoJCQkJdGhpcy5vcHRpb25zLnNob3dMYWJlbCA6CgkJCQlvcHRpb25zLnNob3dMYWJlbCwKCQkJbmV3SWNvbiA9IG9wdGlvbnMuaWNvbiA9PT0gdW5kZWZpbmVkID8gdGhpcy5vcHRpb25zLmljb24gOiBvcHRpb25zLmljb247CgoJCWlmICggIW5ld1Nob3dMYWJlbCAmJiAhbmV3SWNvbiApIHsKCQkJb3B0aW9ucy5zaG93TGFiZWwgPSB0cnVlOwoJCX0KCQl0aGlzLl9zdXBlciggb3B0aW9ucyApOwoJfSwKCglfc2V0T3B0aW9uOiBmdW5jdGlvbigga2V5LCB2YWx1ZSApIHsKCQlpZiAoIGtleSA9PT0gImljb24iICkgewoJCQlpZiAoIHZhbHVlICkgewoJCQkJdGhpcy5fdXBkYXRlSWNvbigga2V5LCB2YWx1ZSApOwoJCQl9IGVsc2UgaWYgKCB0aGlzLmljb24gKSB7CgkJCQl0aGlzLmljb24ucmVtb3ZlKCk7CgkJCQlpZiAoIHRoaXMuaWNvblNwYWNlICkgewoJCQkJCXRoaXMuaWNvblNwYWNlLnJlbW92ZSgpOwoJCQkJfQoJCQl9CgkJfQoKCQlpZiAoIGtleSA9PT0gImljb25Qb3NpdGlvbiIgKSB7CgkJCXRoaXMuX3VwZGF0ZUljb24oIGtleSwgdmFsdWUgKTsKCQl9CgoJCS8vIE1ha2Ugc3VyZSB3ZSBjYW4ndCBlbmQgdXAgd2l0aCBhIGJ1dHRvbiB0aGF0IGhhcyBuZWl0aGVyIHRleHQgbm9yIGljb24KCQlpZiAoIGtleSA9PT0gInNob3dMYWJlbCIgKSB7CgkJCQl0aGlzLl90b2dnbGVDbGFzcyggInVpLWJ1dHRvbi1pY29uLW9ubHkiLCBudWxsLCAhdmFsdWUgKTsKCQkJCXRoaXMuX3VwZGF0ZVRvb2x0aXAoKTsKCQl9CgoJCWlmICgga2V5ID09PSAibGFiZWwiICkgewoJCQlpZiAoIHRoaXMuaXNJbnB1dCApIHsKCQkJCXRoaXMuZWxlbWVudC52YWwoIHZhbHVlICk7CgkJCX0gZWxzZSB7CgoJCQkJLy8gSWYgdGhlcmUgaXMgYW4gaWNvbiwgYXBwZW5kIGl0LCBlbHNlIG5vdGhpbmcgdGhlbiBhcHBlbmQgdGhlIHZhbHVlCgkJCQkvLyB0aGlzIGF2b2lkcyByZW1vdmFsIG9mIHRoZSBpY29uIHdoZW4gc2V0dGluZyBsYWJlbCB0ZXh0CgkJCQl0aGlzLmVsZW1lbnQuaHRtbCggdmFsdWUgKTsKCQkJCWlmICggdGhpcy5pY29uICkgewoJCQkJCXRoaXMuX2F0dGFjaEljb24oIHRoaXMub3B0aW9ucy5pY29uUG9zaXRpb24gKTsKCQkJCQl0aGlzLl9hdHRhY2hJY29uU3BhY2UoIHRoaXMub3B0aW9ucy5pY29uUG9zaXRpb24gKTsKCQkJCX0KCQkJfQoJCX0KCgkJdGhpcy5fc3VwZXIoIGtleSwgdmFsdWUgKTsKCgkJaWYgKCBrZXkgPT09ICJkaXNhYmxlZCIgKSB7CgkJCXRoaXMuX3RvZ2dsZUNsYXNzKCBudWxsLCAidWktc3RhdGUtZGlzYWJsZWQiLCB2YWx1ZSApOwoJCQl0aGlzLmVsZW1lbnRbIDAgXS5kaXNhYmxlZCA9IHZhbHVlOwoJCQlpZiAoIHZhbHVlICkgewoJCQkJdGhpcy5lbGVtZW50LmJsdXIoKTsKCQkJfQoJCX0KCX0sCgoJcmVmcmVzaDogZnVuY3Rpb24oKSB7CgoJCS8vIE1ha2Ugc3VyZSB0byBvbmx5IGNoZWNrIGRpc2FibGVkIGlmIGl0cyBhbiBlbGVtZW50IHRoYXQgc3VwcG9ydHMgdGhpcyBvdGhlcndpc2UKCQkvLyBjaGVjayBmb3IgdGhlIGRpc2FibGVkIGNsYXNzIHRvIGRldGVybWluZSBzdGF0ZQoJCXZhciBpc0Rpc2FibGVkID0gdGhpcy5lbGVtZW50LmlzKCAiaW5wdXQsIGJ1dHRvbiIgKSA/CgkJCXRoaXMuZWxlbWVudFsgMCBdLmRpc2FibGVkIDogdGhpcy5lbGVtZW50Lmhhc0NsYXNzKCAidWktYnV0dG9uLWRpc2FibGVkIiApOwoKCQlpZiAoIGlzRGlzYWJsZWQgIT09IHRoaXMub3B0aW9ucy5kaXNhYmxlZCApIHsKCQkJdGhpcy5fc2V0T3B0aW9ucyggeyBkaXNhYmxlZDogaXNEaXNhYmxlZCB9ICk7CgkJfQoKCQl0aGlzLl91cGRhdGVUb29sdGlwKCk7Cgl9Cn0gKTsKCi8vIERFUFJFQ0FURUQKaWYgKCAkLnVpQmFja0NvbXBhdCAhPT0gZmFsc2UgKSB7CgoJLy8gVGV4dCBhbmQgSWNvbnMgb3B0aW9ucwoJJC53aWRnZXQoICJ1aS5idXR0b24iLCAkLnVpLmJ1dHRvbiwgewoJCW9wdGlvbnM6IHsKCQkJdGV4dDogdHJ1ZSwKCQkJaWNvbnM6IHsKCQkJCXByaW1hcnk6IG51bGwsCgkJCQlzZWNvbmRhcnk6IG51bGwKCQkJfQoJCX0sCgoJCV9jcmVhdGU6IGZ1bmN0aW9uKCkgewoJCQlpZiAoIHRoaXMub3B0aW9ucy5zaG93TGFiZWwgJiYgIXRoaXMub3B0aW9ucy50ZXh0ICkgewoJCQkJdGhpcy5vcHRpb25zLnNob3dMYWJlbCA9IHRoaXMub3B0aW9ucy50ZXh0OwoJCQl9CgkJCWlmICggIXRoaXMub3B0aW9ucy5zaG93TGFiZWwgJiYgdGhpcy5vcHRpb25zLnRleHQgKSB7CgkJCQl0aGlzLm9wdGlvbnMudGV4dCA9IHRoaXMub3B0aW9ucy5zaG93TGFiZWw7CgkJCX0KCQkJaWYgKCAhdGhpcy5vcHRpb25zLmljb24gJiYgKCB0aGlzLm9wdGlvbnMuaWNvbnMucHJpbWFyeSB8fAoJCQkJCXRoaXMub3B0aW9ucy5pY29ucy5zZWNvbmRhcnkgKSApIHsKCQkJCWlmICggdGhpcy5vcHRpb25zLmljb25zLnByaW1hcnkgKSB7CgkJCQkJdGhpcy5vcHRpb25zLmljb24gPSB0aGlzLm9wdGlvbnMuaWNvbnMucHJpbWFyeTsKCQkJCX0gZWxzZSB7CgkJCQkJdGhpcy5vcHRpb25zLmljb24gPSB0aGlzLm9wdGlvbnMuaWNvbnMuc2Vjb25kYXJ5OwoJCQkJCXRoaXMub3B0aW9ucy5pY29uUG9zaXRpb24gPSAiZW5kIjsKCQkJCX0KCQkJfSBlbHNlIGlmICggdGhpcy5vcHRpb25zLmljb24gKSB7CgkJCQl0aGlzLm9wdGlvbnMuaWNvbnMucHJpbWFyeSA9IHRoaXMub3B0aW9ucy5pY29uOwoJCQl9CgkJCXRoaXMuX3N1cGVyKCk7CgkJfSwKCgkJX3NldE9wdGlvbjogZnVuY3Rpb24oIGtleSwgdmFsdWUgKSB7CgkJCWlmICgga2V5ID09PSAidGV4dCIgKSB7CgkJCQl0aGlzLl9zdXBlciggInNob3dMYWJlbCIsIHZhbHVlICk7CgkJCQlyZXR1cm47CgkJCX0KCQkJaWYgKCBrZXkgPT09ICJzaG93TGFiZWwiICkgewoJCQkJdGhpcy5vcHRpb25zLnRleHQgPSB2YWx1ZTsKCQkJfQoJCQlpZiAoIGtleSA9PT0gImljb24iICkgewoJCQkJdGhpcy5vcHRpb25zLmljb25zLnByaW1hcnkgPSB2YWx1ZTsKCQkJfQoJCQlpZiAoIGtleSA9PT0gImljb25zIiApIHsKCQkJCWlmICggdmFsdWUucHJpbWFyeSApIHsKCQkJCQl0aGlzLl9zdXBlciggImljb24iLCB2YWx1ZS5wcmltYXJ5ICk7CgkJCQkJdGhpcy5fc3VwZXIoICJpY29uUG9zaXRpb24iLCAiYmVnaW5uaW5nIiApOwoJCQkJfSBlbHNlIGlmICggdmFsdWUuc2Vjb25kYXJ5ICkgewoJCQkJCXRoaXMuX3N1cGVyKCAiaWNvbiIsIHZhbHVlLnNlY29uZGFyeSApOwoJCQkJCXRoaXMuX3N1cGVyKCAiaWNvblBvc2l0aW9uIiwgImVuZCIgKTsKCQkJCX0KCQkJfQoJCQl0aGlzLl9zdXBlckFwcGx5KCBhcmd1bWVudHMgKTsKCQl9Cgl9ICk7CgoJJC5mbi5idXR0b24gPSAoIGZ1bmN0aW9uKCBvcmlnICkgewoJCXJldHVybiBmdW5jdGlvbigpIHsKCQkJaWYgKCAhdGhpcy5sZW5ndGggfHwgKCB0aGlzLmxlbmd0aCAmJiB0aGlzWyAwIF0udGFnTmFtZSAhPT0gIklOUFVUIiApIHx8CgkJCQkJKCB0aGlzLmxlbmd0aCAmJiB0aGlzWyAwIF0udGFnTmFtZSA9PT0gIklOUFVUIiAmJiAoCgkJCQkJCXRoaXMuYXR0ciggInR5cGUiICkgIT09ICJjaGVja2JveCIgJiYgdGhpcy5hdHRyKCAidHlwZSIgKSAhPT0gInJhZGlvIgoJCQkJCSkgKSApIHsKCQkJCXJldHVybiBvcmlnLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKTsKCQkJfQoJCQlpZiAoICEkLnVpLmNoZWNrYm94cmFkaW8gKSB7CgkJCQkkLmVycm9yKCAiQ2hlY2tib3hyYWRpbyB3aWRnZXQgbWlzc2luZyIgKTsKCQkJfQoJCQlpZiAoIGFyZ3VtZW50cy5sZW5ndGggPT09IDAgKSB7CgkJCQlyZXR1cm4gdGhpcy5jaGVja2JveHJhZGlvKCB7CgkJCQkJImljb24iOiBmYWxzZQoJCQkJfSApOwoJCQl9CgkJCXJldHVybiB0aGlzLmNoZWNrYm94cmFkaW8uYXBwbHkoIHRoaXMsIGFyZ3VtZW50cyApOwoJCX07Cgl9ICkoICQuZm4uYnV0dG9uICk7CgoJJC5mbi5idXR0b25zZXQgPSBmdW5jdGlvbigpIHsKCQlpZiAoICEkLnVpLmNvbnRyb2xncm91cCApIHsKCQkJJC5lcnJvciggIkNvbnRyb2xncm91cCB3aWRnZXQgbWlzc2luZyIgKTsKCQl9CgkJaWYgKCBhcmd1bWVudHNbIDAgXSA9PT0gIm9wdGlvbiIgJiYgYXJndW1lbnRzWyAxIF0gPT09ICJpdGVtcyIgJiYgYXJndW1lbnRzWyAyIF0gKSB7CgkJCXJldHVybiB0aGlzLmNvbnRyb2xncm91cC5hcHBseSggdGhpcywKCQkJCVsgYXJndW1lbnRzWyAwIF0sICJpdGVtcy5idXR0b24iLCBhcmd1bWVudHNbIDIgXSBdICk7CgkJfQoJCWlmICggYXJndW1lbnRzWyAwIF0gPT09ICJvcHRpb24iICYmIGFyZ3VtZW50c1sgMSBdID09PSAiaXRlbXMiICkgewoJCQlyZXR1cm4gdGhpcy5jb250cm9sZ3JvdXAuYXBwbHkoIHRoaXMsIFsgYXJndW1lbnRzWyAwIF0sICJpdGVtcy5idXR0b24iIF0gKTsKCQl9CgkJaWYgKCB0eXBlb2YgYXJndW1lbnRzWyAwIF0gPT09ICJvYmplY3QiICYmIGFyZ3VtZW50c1sgMCBdLml0ZW1zICkgewoJCQlhcmd1bWVudHNbIDAgXS5pdGVtcyA9IHsKCQkJCWJ1dHRvbjogYXJndW1lbnRzWyAwIF0uaXRlbXMKCQkJfTsKCQl9CgkJcmV0dXJuIHRoaXMuY29udHJvbGdyb3VwLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKTsKCX07Cn0KCnZhciB3aWRnZXRzQnV0dG9uID0gJC51aS5idXR0b247CgoKLy8ganNjczpkaXNhYmxlIG1heGltdW1MaW5lTGVuZ3RoCi8qIGpzY3M6ZGlzYWJsZSByZXF1aXJlQ2FtZWxDYXNlT3JVcHBlckNhc2VJZGVudGlmaWVycyAqLwovKiEKICogalF1ZXJ5IFVJIERhdGVwaWNrZXIgMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiBEYXRlcGlja2VyCi8vPj5ncm91cDogV2lkZ2V0cwovLz4+ZGVzY3JpcHRpb246IERpc3BsYXlzIGEgY2FsZW5kYXIgZnJvbSBhbiBpbnB1dCBvciBpbmxpbmUgZm9yIHNlbGVjdGluZyBkYXRlcy4KLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2RhdGVwaWNrZXIvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9kYXRlcGlja2VyLwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvY29yZS5jc3MKLy8+PmNzcy5zdHJ1Y3R1cmU6IC4uLy4uL3RoZW1lcy9iYXNlL2RhdGVwaWNrZXIuY3NzCi8vPj5jc3MudGhlbWU6IC4uLy4uL3RoZW1lcy9iYXNlL3RoZW1lLmNzcwoKCgokLmV4dGVuZCggJC51aSwgeyBkYXRlcGlja2VyOiB7IHZlcnNpb246ICIxLjEyLjEiIH0gfSApOwoKdmFyIGRhdGVwaWNrZXJfaW5zdEFjdGl2ZTsKCmZ1bmN0aW9uIGRhdGVwaWNrZXJfZ2V0WmluZGV4KCBlbGVtICkgewoJdmFyIHBvc2l0aW9uLCB2YWx1ZTsKCXdoaWxlICggZWxlbS5sZW5ndGggJiYgZWxlbVsgMCBdICE9PSBkb2N1bWVudCApIHsKCgkJLy8gSWdub3JlIHotaW5kZXggaWYgcG9zaXRpb24gaXMgc2V0IHRvIGEgdmFsdWUgd2hlcmUgei1pbmRleCBpcyBpZ25vcmVkIGJ5IHRoZSBicm93c2VyCgkJLy8gVGhpcyBtYWtlcyBiZWhhdmlvciBvZiB0aGlzIGZ1bmN0aW9uIGNvbnNpc3RlbnQgYWNyb3NzIGJyb3dzZXJzCgkJLy8gV2ViS2l0IGFsd2F5cyByZXR1cm5zIGF1dG8gaWYgdGhlIGVsZW1lbnQgaXMgcG9zaXRpb25lZAoJCXBvc2l0aW9uID0gZWxlbS5jc3MoICJwb3NpdGlvbiIgKTsKCQlpZiAoIHBvc2l0aW9uID09PSAiYWJzb2x1dGUiIHx8IHBvc2l0aW9uID09PSAicmVsYXRpdmUiIHx8IHBvc2l0aW9uID09PSAiZml4ZWQiICkgewoKCQkJLy8gSUUgcmV0dXJucyAwIHdoZW4gekluZGV4IGlzIG5vdCBzcGVjaWZpZWQKCQkJLy8gb3RoZXIgYnJvd3NlcnMgcmV0dXJuIGEgc3RyaW5nCgkJCS8vIHdlIGlnbm9yZSB0aGUgY2FzZSBvZiBuZXN0ZWQgZWxlbWVudHMgd2l0aCBhbiBleHBsaWNpdCB2YWx1ZSBvZiAwCgkJCS8vIDxkaXYgc3R5bGU9InotaW5kZXg6IC0xMDsiPjxkaXYgc3R5bGU9InotaW5kZXg6IDA7Ij48L2Rpdj48L2Rpdj4KCQkJdmFsdWUgPSBwYXJzZUludCggZWxlbS5jc3MoICJ6SW5kZXgiICksIDEwICk7CgkJCWlmICggIWlzTmFOKCB2YWx1ZSApICYmIHZhbHVlICE9PSAwICkgewoJCQkJcmV0dXJuIHZhbHVlOwoJCQl9CgkJfQoJCWVsZW0gPSBlbGVtLnBhcmVudCgpOwoJfQoKCXJldHVybiAwOwp9Ci8qIERhdGUgcGlja2VyIG1hbmFnZXIuCiAgIFVzZSB0aGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoaXMgY2xhc3MsICQuZGF0ZXBpY2tlciwgdG8gaW50ZXJhY3Qgd2l0aCB0aGUgZGF0ZSBwaWNrZXIuCiAgIFNldHRpbmdzIGZvciAoZ3JvdXBzIG9mKSBkYXRlIHBpY2tlcnMgYXJlIG1haW50YWluZWQgaW4gYW4gaW5zdGFuY2Ugb2JqZWN0LAogICBhbGxvd2luZyBtdWx0aXBsZSBkaWZmZXJlbnQgc2V0dGluZ3Mgb24gdGhlIHNhbWUgcGFnZS4gKi8KCmZ1bmN0aW9uIERhdGVwaWNrZXIoKSB7Cgl0aGlzLl9jdXJJbnN0ID0gbnVsbDsgLy8gVGhlIGN1cnJlbnQgaW5zdGFuY2UgaW4gdXNlCgl0aGlzLl9rZXlFdmVudCA9IGZhbHNlOyAvLyBJZiB0aGUgbGFzdCBldmVudCB3YXMgYSBrZXkgZXZlbnQKCXRoaXMuX2Rpc2FibGVkSW5wdXRzID0gW107IC8vIExpc3Qgb2YgZGF0ZSBwaWNrZXIgaW5wdXRzIHRoYXQgaGF2ZSBiZWVuIGRpc2FibGVkCgl0aGlzLl9kYXRlcGlja2VyU2hvd2luZyA9IGZhbHNlOyAvLyBUcnVlIGlmIHRoZSBwb3B1cCBwaWNrZXIgaXMgc2hvd2luZyAsIGZhbHNlIGlmIG5vdAoJdGhpcy5faW5EaWFsb2cgPSBmYWxzZTsgLy8gVHJ1ZSBpZiBzaG93aW5nIHdpdGhpbiBhICJkaWFsb2ciLCBmYWxzZSBpZiBub3QKCXRoaXMuX21haW5EaXZJZCA9ICJ1aS1kYXRlcGlja2VyLWRpdiI7IC8vIFRoZSBJRCBvZiB0aGUgbWFpbiBkYXRlcGlja2VyIGRpdmlzaW9uCgl0aGlzLl9pbmxpbmVDbGFzcyA9ICJ1aS1kYXRlcGlja2VyLWlubGluZSI7IC8vIFRoZSBuYW1lIG9mIHRoZSBpbmxpbmUgbWFya2VyIGNsYXNzCgl0aGlzLl9hcHBlbmRDbGFzcyA9ICJ1aS1kYXRlcGlja2VyLWFwcGVuZCI7IC8vIFRoZSBuYW1lIG9mIHRoZSBhcHBlbmQgbWFya2VyIGNsYXNzCgl0aGlzLl90cmlnZ2VyQ2xhc3MgPSAidWktZGF0ZXBpY2tlci10cmlnZ2VyIjsgLy8gVGhlIG5hbWUgb2YgdGhlIHRyaWdnZXIgbWFya2VyIGNsYXNzCgl0aGlzLl9kaWFsb2dDbGFzcyA9ICJ1aS1kYXRlcGlja2VyLWRpYWxvZyI7IC8vIFRoZSBuYW1lIG9mIHRoZSBkaWFsb2cgbWFya2VyIGNsYXNzCgl0aGlzLl9kaXNhYmxlQ2xhc3MgPSAidWktZGF0ZXBpY2tlci1kaXNhYmxlZCI7IC8vIFRoZSBuYW1lIG9mIHRoZSBkaXNhYmxlZCBjb3ZlcmluZyBtYXJrZXIgY2xhc3MKCXRoaXMuX3Vuc2VsZWN0YWJsZUNsYXNzID0gInVpLWRhdGVwaWNrZXItdW5zZWxlY3RhYmxlIjsgLy8gVGhlIG5hbWUgb2YgdGhlIHVuc2VsZWN0YWJsZSBjZWxsIG1hcmtlciBjbGFzcwoJdGhpcy5fY3VycmVudENsYXNzID0gInVpLWRhdGVwaWNrZXItY3VycmVudC1kYXkiOyAvLyBUaGUgbmFtZSBvZiB0aGUgY3VycmVudCBkYXkgbWFya2VyIGNsYXNzCgl0aGlzLl9kYXlPdmVyQ2xhc3MgPSAidWktZGF0ZXBpY2tlci1kYXlzLWNlbGwtb3ZlciI7IC8vIFRoZSBuYW1lIG9mIHRoZSBkYXkgaG92ZXIgbWFya2VyIGNsYXNzCgl0aGlzLnJlZ2lvbmFsID0gW107IC8vIEF2YWlsYWJsZSByZWdpb25hbCBzZXR0aW5ncywgaW5kZXhlZCBieSBsYW5ndWFnZSBjb2RlCgl0aGlzLnJlZ2lvbmFsWyAiIiBdID0geyAvLyBEZWZhdWx0IHJlZ2lvbmFsIHNldHRpbmdzCgkJY2xvc2VUZXh0OiAiRG9uZSIsIC8vIERpc3BsYXkgdGV4dCBmb3IgY2xvc2UgbGluawoJCXByZXZUZXh0OiAiUHJldiIsIC8vIERpc3BsYXkgdGV4dCBmb3IgcHJldmlvdXMgbW9udGggbGluawoJCW5leHRUZXh0OiAiTmV4dCIsIC8vIERpc3BsYXkgdGV4dCBmb3IgbmV4dCBtb250aCBsaW5rCgkJY3VycmVudFRleHQ6ICJUb2RheSIsIC8vIERpc3BsYXkgdGV4dCBmb3IgY3VycmVudCBtb250aCBsaW5rCgkJbW9udGhOYW1lczogWyAiSmFudWFyeSIsIkZlYnJ1YXJ5IiwiTWFyY2giLCJBcHJpbCIsIk1heSIsIkp1bmUiLAoJCQkiSnVseSIsIkF1Z3VzdCIsIlNlcHRlbWJlciIsIk9jdG9iZXIiLCJOb3ZlbWJlciIsIkRlY2VtYmVyIiBdLCAvLyBOYW1lcyBvZiBtb250aHMgZm9yIGRyb3AtZG93biBhbmQgZm9ybWF0dGluZwoJCW1vbnRoTmFtZXNTaG9ydDogWyAiSmFuIiwgIkZlYiIsICJNYXIiLCAiQXByIiwgIk1heSIsICJKdW4iLCAiSnVsIiwgIkF1ZyIsICJTZXAiLCAiT2N0IiwgIk5vdiIsICJEZWMiIF0sIC8vIEZvciBmb3JtYXR0aW5nCgkJZGF5TmFtZXM6IFsgIlN1bmRheSIsICJNb25kYXkiLCAiVHVlc2RheSIsICJXZWRuZXNkYXkiLCAiVGh1cnNkYXkiLCAiRnJpZGF5IiwgIlNhdHVyZGF5IiBdLCAvLyBGb3IgZm9ybWF0dGluZwoJCWRheU5hbWVzU2hvcnQ6IFsgIlN1biIsICJNb24iLCAiVHVlIiwgIldlZCIsICJUaHUiLCAiRnJpIiwgIlNhdCIgXSwgLy8gRm9yIGZvcm1hdHRpbmcKCQlkYXlOYW1lc01pbjogWyAiU3UiLCJNbyIsIlR1IiwiV2UiLCJUaCIsIkZyIiwiU2EiIF0sIC8vIENvbHVtbiBoZWFkaW5ncyBmb3IgZGF5cyBzdGFydGluZyBhdCBTdW5kYXkKCQl3ZWVrSGVhZGVyOiAiV2siLCAvLyBDb2x1bW4gaGVhZGVyIGZvciB3ZWVrIG9mIHRoZSB5ZWFyCgkJZGF0ZUZvcm1hdDogIm1tL2RkL3l5IiwgLy8gU2VlIGZvcm1hdCBvcHRpb25zIG9uIHBhcnNlRGF0ZQoJCWZpcnN0RGF5OiAwLCAvLyBUaGUgZmlyc3QgZGF5IG9mIHRoZSB3ZWVrLCBTdW4gPSAwLCBNb24gPSAxLCAuLi4KCQlpc1JUTDogZmFsc2UsIC8vIFRydWUgaWYgcmlnaHQtdG8tbGVmdCBsYW5ndWFnZSwgZmFsc2UgaWYgbGVmdC10by1yaWdodAoJCXNob3dNb250aEFmdGVyWWVhcjogZmFsc2UsIC8vIFRydWUgaWYgdGhlIHllYXIgc2VsZWN0IHByZWNlZGVzIG1vbnRoLCBmYWxzZSBmb3IgbW9udGggdGhlbiB5ZWFyCgkJeWVhclN1ZmZpeDogIiIgLy8gQWRkaXRpb25hbCB0ZXh0IHRvIGFwcGVuZCB0byB0aGUgeWVhciBpbiB0aGUgbW9udGggaGVhZGVycwoJfTsKCXRoaXMuX2RlZmF1bHRzID0geyAvLyBHbG9iYWwgZGVmYXVsdHMgZm9yIGFsbCB0aGUgZGF0ZSBwaWNrZXIgaW5zdGFuY2VzCgkJc2hvd09uOiAiZm9jdXMiLCAvLyAiZm9jdXMiIGZvciBwb3B1cCBvbiBmb2N1cywKCQkJLy8gImJ1dHRvbiIgZm9yIHRyaWdnZXIgYnV0dG9uLCBvciAiYm90aCIgZm9yIGVpdGhlcgoJCXNob3dBbmltOiAiZmFkZUluIiwgLy8gTmFtZSBvZiBqUXVlcnkgYW5pbWF0aW9uIGZvciBwb3B1cAoJCXNob3dPcHRpb25zOiB7fSwgLy8gT3B0aW9ucyBmb3IgZW5oYW5jZWQgYW5pbWF0aW9ucwoJCWRlZmF1bHREYXRlOiBudWxsLCAvLyBVc2VkIHdoZW4gZmllbGQgaXMgYmxhbms6IGFjdHVhbCBkYXRlLAoJCQkvLyArLy1udW1iZXIgZm9yIG9mZnNldCBmcm9tIHRvZGF5LCBudWxsIGZvciB0b2RheQoJCWFwcGVuZFRleHQ6ICIiLCAvLyBEaXNwbGF5IHRleHQgZm9sbG93aW5nIHRoZSBpbnB1dCBib3gsIGUuZy4gc2hvd2luZyB0aGUgZm9ybWF0CgkJYnV0dG9uVGV4dDogIi4uLiIsIC8vIFRleHQgZm9yIHRyaWdnZXIgYnV0dG9uCgkJYnV0dG9uSW1hZ2U6ICIiLCAvLyBVUkwgZm9yIHRyaWdnZXIgYnV0dG9uIGltYWdlCgkJYnV0dG9uSW1hZ2VPbmx5OiBmYWxzZSwgLy8gVHJ1ZSBpZiB0aGUgaW1hZ2UgYXBwZWFycyBhbG9uZSwgZmFsc2UgaWYgaXQgYXBwZWFycyBvbiBhIGJ1dHRvbgoJCWhpZGVJZk5vUHJldk5leHQ6IGZhbHNlLCAvLyBUcnVlIHRvIGhpZGUgbmV4dC9wcmV2aW91cyBtb250aCBsaW5rcwoJCQkvLyBpZiBub3QgYXBwbGljYWJsZSwgZmFsc2UgdG8ganVzdCBkaXNhYmxlIHRoZW0KCQluYXZpZ2F0aW9uQXNEYXRlRm9ybWF0OiBmYWxzZSwgLy8gVHJ1ZSBpZiBkYXRlIGZvcm1hdHRpbmcgYXBwbGllZCB0byBwcmV2L3RvZGF5L25leHQgbGlua3MKCQlnb3RvQ3VycmVudDogZmFsc2UsIC8vIFRydWUgaWYgdG9kYXkgbGluayBnb2VzIGJhY2sgdG8gY3VycmVudCBzZWxlY3Rpb24gaW5zdGVhZAoJCWNoYW5nZU1vbnRoOiBmYWxzZSwgLy8gVHJ1ZSBpZiBtb250aCBjYW4gYmUgc2VsZWN0ZWQgZGlyZWN0bHksIGZhbHNlIGlmIG9ubHkgcHJldi9uZXh0CgkJY2hhbmdlWWVhcjogZmFsc2UsIC8vIFRydWUgaWYgeWVhciBjYW4gYmUgc2VsZWN0ZWQgZGlyZWN0bHksIGZhbHNlIGlmIG9ubHkgcHJldi9uZXh0CgkJeWVhclJhbmdlOiAiYy0xMDpjKzEwIiwgLy8gUmFuZ2Ugb2YgeWVhcnMgdG8gZGlzcGxheSBpbiBkcm9wLWRvd24sCgkJCS8vIGVpdGhlciByZWxhdGl2ZSB0byB0b2RheSdzIHllYXIgKC1ubjorbm4pLCByZWxhdGl2ZSB0byBjdXJyZW50bHkgZGlzcGxheWVkIHllYXIKCQkJLy8gKGMtbm46YytubiksIGFic29sdXRlIChubm5uOm5ubm4pLCBvciBhIGNvbWJpbmF0aW9uIG9mIHRoZSBhYm92ZSAobm5ubjotbikKCQlzaG93T3RoZXJNb250aHM6IGZhbHNlLCAvLyBUcnVlIHRvIHNob3cgZGF0ZXMgaW4gb3RoZXIgbW9udGhzLCBmYWxzZSB0byBsZWF2ZSBibGFuawoJCXNlbGVjdE90aGVyTW9udGhzOiBmYWxzZSwgLy8gVHJ1ZSB0byBhbGxvdyBzZWxlY3Rpb24gb2YgZGF0ZXMgaW4gb3RoZXIgbW9udGhzLCBmYWxzZSBmb3IgdW5zZWxlY3RhYmxlCgkJc2hvd1dlZWs6IGZhbHNlLCAvLyBUcnVlIHRvIHNob3cgd2VlayBvZiB0aGUgeWVhciwgZmFsc2UgdG8gbm90IHNob3cgaXQKCQljYWxjdWxhdGVXZWVrOiB0aGlzLmlzbzg2MDFXZWVrLCAvLyBIb3cgdG8gY2FsY3VsYXRlIHRoZSB3ZWVrIG9mIHRoZSB5ZWFyLAoJCQkvLyB0YWtlcyBhIERhdGUgYW5kIHJldHVybnMgdGhlIG51bWJlciBvZiB0aGUgd2VlayBmb3IgaXQKCQlzaG9ydFllYXJDdXRvZmY6ICIrMTAiLCAvLyBTaG9ydCB5ZWFyIHZhbHVlcyA8IHRoaXMgYXJlIGluIHRoZSBjdXJyZW50IGNlbnR1cnksCgkJCS8vID4gdGhpcyBhcmUgaW4gdGhlIHByZXZpb3VzIGNlbnR1cnksCgkJCS8vIHN0cmluZyB2YWx1ZSBzdGFydGluZyB3aXRoICIrIiBmb3IgY3VycmVudCB5ZWFyICsgdmFsdWUKCQltaW5EYXRlOiBudWxsLCAvLyBUaGUgZWFybGllc3Qgc2VsZWN0YWJsZSBkYXRlLCBvciBudWxsIGZvciBubyBsaW1pdAoJCW1heERhdGU6IG51bGwsIC8vIFRoZSBsYXRlc3Qgc2VsZWN0YWJsZSBkYXRlLCBvciBudWxsIGZvciBubyBsaW1pdAoJCWR1cmF0aW9uOiAiZmFzdCIsIC8vIER1cmF0aW9uIG9mIGRpc3BsYXkvY2xvc3VyZQoJCWJlZm9yZVNob3dEYXk6IG51bGwsIC8vIEZ1bmN0aW9uIHRoYXQgdGFrZXMgYSBkYXRlIGFuZCByZXR1cm5zIGFuIGFycmF5IHdpdGgKCQkJLy8gWzBdID0gdHJ1ZSBpZiBzZWxlY3RhYmxlLCBmYWxzZSBpZiBub3QsIFsxXSA9IGN1c3RvbSBDU1MgY2xhc3MgbmFtZShzKSBvciAiIiwKCQkJLy8gWzJdID0gY2VsbCB0aXRsZSAob3B0aW9uYWwpLCBlLmcuICQuZGF0ZXBpY2tlci5ub1dlZWtlbmRzCgkJYmVmb3JlU2hvdzogbnVsbCwgLy8gRnVuY3Rpb24gdGhhdCB0YWtlcyBhbiBpbnB1dCBmaWVsZCBhbmQKCQkJLy8gcmV0dXJucyBhIHNldCBvZiBjdXN0b20gc2V0dGluZ3MgZm9yIHRoZSBkYXRlIHBpY2tlcgoJCW9uU2VsZWN0OiBudWxsLCAvLyBEZWZpbmUgYSBjYWxsYmFjayBmdW5jdGlvbiB3aGVuIGEgZGF0ZSBpcyBzZWxlY3RlZAoJCW9uQ2hhbmdlTW9udGhZZWFyOiBudWxsLCAvLyBEZWZpbmUgYSBjYWxsYmFjayBmdW5jdGlvbiB3aGVuIHRoZSBtb250aCBvciB5ZWFyIGlzIGNoYW5nZWQKCQlvbkNsb3NlOiBudWxsLCAvLyBEZWZpbmUgYSBjYWxsYmFjayBmdW5jdGlvbiB3aGVuIHRoZSBkYXRlcGlja2VyIGlzIGNsb3NlZAoJCW51bWJlck9mTW9udGhzOiAxLCAvLyBOdW1iZXIgb2YgbW9udGhzIHRvIHNob3cgYXQgYSB0aW1lCgkJc2hvd0N1cnJlbnRBdFBvczogMCwgLy8gVGhlIHBvc2l0aW9uIGluIG11bHRpcGUgbW9udGhzIGF0IHdoaWNoIHRvIHNob3cgdGhlIGN1cnJlbnQgbW9udGggKHN0YXJ0aW5nIGF0IDApCgkJc3RlcE1vbnRoczogMSwgLy8gTnVtYmVyIG9mIG1vbnRocyB0byBzdGVwIGJhY2svZm9yd2FyZAoJCXN0ZXBCaWdNb250aHM6IDEyLCAvLyBOdW1iZXIgb2YgbW9udGhzIHRvIHN0ZXAgYmFjay9mb3J3YXJkIGZvciB0aGUgYmlnIGxpbmtzCgkJYWx0RmllbGQ6ICIiLCAvLyBTZWxlY3RvciBmb3IgYW4gYWx0ZXJuYXRlIGZpZWxkIHRvIHN0b3JlIHNlbGVjdGVkIGRhdGVzIGludG8KCQlhbHRGb3JtYXQ6ICIiLCAvLyBUaGUgZGF0ZSBmb3JtYXQgdG8gdXNlIGZvciB0aGUgYWx0ZXJuYXRlIGZpZWxkCgkJY29uc3RyYWluSW5wdXQ6IHRydWUsIC8vIFRoZSBpbnB1dCBpcyBjb25zdHJhaW5lZCBieSB0aGUgY3VycmVudCBkYXRlIGZvcm1hdAoJCXNob3dCdXR0b25QYW5lbDogZmFsc2UsIC8vIFRydWUgdG8gc2hvdyBidXR0b24gcGFuZWwsIGZhbHNlIHRvIG5vdCBzaG93IGl0CgkJYXV0b1NpemU6IGZhbHNlLCAvLyBUcnVlIHRvIHNpemUgdGhlIGlucHV0IGZvciB0aGUgZGF0ZSBmb3JtYXQsIGZhbHNlIHRvIGxlYXZlIGFzIGlzCgkJZGlzYWJsZWQ6IGZhbHNlIC8vIFRoZSBpbml0aWFsIGRpc2FibGVkIHN0YXRlCgl9OwoJJC5leHRlbmQoIHRoaXMuX2RlZmF1bHRzLCB0aGlzLnJlZ2lvbmFsWyAiIiBdICk7Cgl0aGlzLnJlZ2lvbmFsLmVuID0gJC5leHRlbmQoIHRydWUsIHt9LCB0aGlzLnJlZ2lvbmFsWyAiIiBdICk7Cgl0aGlzLnJlZ2lvbmFsWyAiZW4tVVMiIF0gPSAkLmV4dGVuZCggdHJ1ZSwge30sIHRoaXMucmVnaW9uYWwuZW4gKTsKCXRoaXMuZHBEaXYgPSBkYXRlcGlja2VyX2JpbmRIb3ZlciggJCggIjxkaXYgaWQ9JyIgKyB0aGlzLl9tYWluRGl2SWQgKyAiJyBjbGFzcz0ndWktZGF0ZXBpY2tlciB1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQgdWktaGVscGVyLWNsZWFyZml4IHVpLWNvcm5lci1hbGwnPjwvZGl2PiIgKSApOwp9CgokLmV4dGVuZCggRGF0ZXBpY2tlci5wcm90b3R5cGUsIHsKCS8qIENsYXNzIG5hbWUgYWRkZWQgdG8gZWxlbWVudHMgdG8gaW5kaWNhdGUgYWxyZWFkeSBjb25maWd1cmVkIHdpdGggYSBkYXRlIHBpY2tlci4gKi8KCW1hcmtlckNsYXNzTmFtZTogImhhc0RhdGVwaWNrZXIiLAoKCS8vS2VlcCB0cmFjayBvZiB0aGUgbWF4aW11bSBudW1iZXIgb2Ygcm93cyBkaXNwbGF5ZWQgKHNlZSAjNzA0MykKCW1heFJvd3M6IDQsCgoJLy8gVE9ETyByZW5hbWUgdG8gIndpZGdldCIgd2hlbiBzd2l0Y2hpbmcgdG8gd2lkZ2V0IGZhY3RvcnkKCV93aWRnZXREYXRlcGlja2VyOiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gdGhpcy5kcERpdjsKCX0sCgoJLyogT3ZlcnJpZGUgdGhlIGRlZmF1bHQgc2V0dGluZ3MgZm9yIGFsbCBpbnN0YW5jZXMgb2YgdGhlIGRhdGUgcGlja2VyLgoJICogQHBhcmFtICBzZXR0aW5ncyAgb2JqZWN0IC0gdGhlIG5ldyBzZXR0aW5ncyB0byB1c2UgYXMgZGVmYXVsdHMgKGFub255bW91cyBvYmplY3QpCgkgKiBAcmV0dXJuIHRoZSBtYW5hZ2VyIG9iamVjdAoJICovCglzZXREZWZhdWx0czogZnVuY3Rpb24oIHNldHRpbmdzICkgewoJCWRhdGVwaWNrZXJfZXh0ZW5kUmVtb3ZlKCB0aGlzLl9kZWZhdWx0cywgc2V0dGluZ3MgfHwge30gKTsKCQlyZXR1cm4gdGhpczsKCX0sCgoJLyogQXR0YWNoIHRoZSBkYXRlIHBpY2tlciB0byBhIGpRdWVyeSBzZWxlY3Rpb24uCgkgKiBAcGFyYW0gIHRhcmdldAllbGVtZW50IC0gdGhlIHRhcmdldCBpbnB1dCBmaWVsZCBvciBkaXZpc2lvbiBvciBzcGFuCgkgKiBAcGFyYW0gIHNldHRpbmdzICBvYmplY3QgLSB0aGUgbmV3IHNldHRpbmdzIHRvIHVzZSBmb3IgdGhpcyBkYXRlIHBpY2tlciBpbnN0YW5jZSAoYW5vbnltb3VzKQoJICovCglfYXR0YWNoRGF0ZXBpY2tlcjogZnVuY3Rpb24oIHRhcmdldCwgc2V0dGluZ3MgKSB7CgkJdmFyIG5vZGVOYW1lLCBpbmxpbmUsIGluc3Q7CgkJbm9kZU5hbWUgPSB0YXJnZXQubm9kZU5hbWUudG9Mb3dlckNhc2UoKTsKCQlpbmxpbmUgPSAoIG5vZGVOYW1lID09PSAiZGl2IiB8fCBub2RlTmFtZSA9PT0gInNwYW4iICk7CgkJaWYgKCAhdGFyZ2V0LmlkICkgewoJCQl0aGlzLnV1aWQgKz0gMTsKCQkJdGFyZ2V0LmlkID0gImRwIiArIHRoaXMudXVpZDsKCQl9CgkJaW5zdCA9IHRoaXMuX25ld0luc3QoICQoIHRhcmdldCApLCBpbmxpbmUgKTsKCQlpbnN0LnNldHRpbmdzID0gJC5leHRlbmQoIHt9LCBzZXR0aW5ncyB8fCB7fSApOwoJCWlmICggbm9kZU5hbWUgPT09ICJpbnB1dCIgKSB7CgkJCXRoaXMuX2Nvbm5lY3REYXRlcGlja2VyKCB0YXJnZXQsIGluc3QgKTsKCQl9IGVsc2UgaWYgKCBpbmxpbmUgKSB7CgkJCXRoaXMuX2lubGluZURhdGVwaWNrZXIoIHRhcmdldCwgaW5zdCApOwoJCX0KCX0sCgoJLyogQ3JlYXRlIGEgbmV3IGluc3RhbmNlIG9iamVjdC4gKi8KCV9uZXdJbnN0OiBmdW5jdGlvbiggdGFyZ2V0LCBpbmxpbmUgKSB7CgkJdmFyIGlkID0gdGFyZ2V0WyAwIF0uaWQucmVwbGFjZSggLyhbXkEtWmEtejAtOV9cLV0pL2csICJcXFxcJDEiICk7IC8vIGVzY2FwZSBqUXVlcnkgbWV0YSBjaGFycwoJCXJldHVybiB7IGlkOiBpZCwgaW5wdXQ6IHRhcmdldCwgLy8gYXNzb2NpYXRlZCB0YXJnZXQKCQkJc2VsZWN0ZWREYXk6IDAsIHNlbGVjdGVkTW9udGg6IDAsIHNlbGVjdGVkWWVhcjogMCwgLy8gY3VycmVudCBzZWxlY3Rpb24KCQkJZHJhd01vbnRoOiAwLCBkcmF3WWVhcjogMCwgLy8gbW9udGggYmVpbmcgZHJhd24KCQkJaW5saW5lOiBpbmxpbmUsIC8vIGlzIGRhdGVwaWNrZXIgaW5saW5lIG9yIG5vdAoJCQlkcERpdjogKCAhaW5saW5lID8gdGhpcy5kcERpdiA6IC8vIHByZXNlbnRhdGlvbiBkaXYKCQkJZGF0ZXBpY2tlcl9iaW5kSG92ZXIoICQoICI8ZGl2IGNsYXNzPSciICsgdGhpcy5faW5saW5lQ2xhc3MgKyAiIHVpLWRhdGVwaWNrZXIgdWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IHVpLWhlbHBlci1jbGVhcmZpeCB1aS1jb3JuZXItYWxsJz48L2Rpdj4iICkgKSApIH07Cgl9LAoKCS8qIEF0dGFjaCB0aGUgZGF0ZSBwaWNrZXIgdG8gYW4gaW5wdXQgZmllbGQuICovCglfY29ubmVjdERhdGVwaWNrZXI6IGZ1bmN0aW9uKCB0YXJnZXQsIGluc3QgKSB7CgkJdmFyIGlucHV0ID0gJCggdGFyZ2V0ICk7CgkJaW5zdC5hcHBlbmQgPSAkKCBbXSApOwoJCWluc3QudHJpZ2dlciA9ICQoIFtdICk7CgkJaWYgKCBpbnB1dC5oYXNDbGFzcyggdGhpcy5tYXJrZXJDbGFzc05hbWUgKSApIHsKCQkJcmV0dXJuOwoJCX0KCQl0aGlzLl9hdHRhY2htZW50cyggaW5wdXQsIGluc3QgKTsKCQlpbnB1dC5hZGRDbGFzcyggdGhpcy5tYXJrZXJDbGFzc05hbWUgKS5vbiggImtleWRvd24iLCB0aGlzLl9kb0tleURvd24gKS4KCQkJb24oICJrZXlwcmVzcyIsIHRoaXMuX2RvS2V5UHJlc3MgKS5vbiggImtleXVwIiwgdGhpcy5fZG9LZXlVcCApOwoJCXRoaXMuX2F1dG9TaXplKCBpbnN0ICk7CgkJJC5kYXRhKCB0YXJnZXQsICJkYXRlcGlja2VyIiwgaW5zdCApOwoKCQkvL0lmIGRpc2FibGVkIG9wdGlvbiBpcyB0cnVlLCBkaXNhYmxlIHRoZSBkYXRlcGlja2VyIG9uY2UgaXQgaGFzIGJlZW4gYXR0YWNoZWQgdG8gdGhlIGlucHV0IChzZWUgdGlja2V0ICM1NjY1KQoJCWlmICggaW5zdC5zZXR0aW5ncy5kaXNhYmxlZCApIHsKCQkJdGhpcy5fZGlzYWJsZURhdGVwaWNrZXIoIHRhcmdldCApOwoJCX0KCX0sCgoJLyogTWFrZSBhdHRhY2htZW50cyBiYXNlZCBvbiBzZXR0aW5ncy4gKi8KCV9hdHRhY2htZW50czogZnVuY3Rpb24oIGlucHV0LCBpbnN0ICkgewoJCXZhciBzaG93T24sIGJ1dHRvblRleHQsIGJ1dHRvbkltYWdlLAoJCQlhcHBlbmRUZXh0ID0gdGhpcy5fZ2V0KCBpbnN0LCAiYXBwZW5kVGV4dCIgKSwKCQkJaXNSVEwgPSB0aGlzLl9nZXQoIGluc3QsICJpc1JUTCIgKTsKCgkJaWYgKCBpbnN0LmFwcGVuZCApIHsKCQkJaW5zdC5hcHBlbmQucmVtb3ZlKCk7CgkJfQoJCWlmICggYXBwZW5kVGV4dCApIHsKCQkJaW5zdC5hcHBlbmQgPSAkKCAiPHNwYW4gY2xhc3M9JyIgKyB0aGlzLl9hcHBlbmRDbGFzcyArICInPiIgKyBhcHBlbmRUZXh0ICsgIjwvc3Bhbj4iICk7CgkJCWlucHV0WyBpc1JUTCA/ICJiZWZvcmUiIDogImFmdGVyIiBdKCBpbnN0LmFwcGVuZCApOwoJCX0KCgkJaW5wdXQub2ZmKCAiZm9jdXMiLCB0aGlzLl9zaG93RGF0ZXBpY2tlciApOwoKCQlpZiAoIGluc3QudHJpZ2dlciApIHsKCQkJaW5zdC50cmlnZ2VyLnJlbW92ZSgpOwoJCX0KCgkJc2hvd09uID0gdGhpcy5fZ2V0KCBpbnN0LCAic2hvd09uIiApOwoJCWlmICggc2hvd09uID09PSAiZm9jdXMiIHx8IHNob3dPbiA9PT0gImJvdGgiICkgeyAvLyBwb3AtdXAgZGF0ZSBwaWNrZXIgd2hlbiBpbiB0aGUgbWFya2VkIGZpZWxkCgkJCWlucHV0Lm9uKCAiZm9jdXMiLCB0aGlzLl9zaG93RGF0ZXBpY2tlciApOwoJCX0KCQlpZiAoIHNob3dPbiA9PT0gImJ1dHRvbiIgfHwgc2hvd09uID09PSAiYm90aCIgKSB7IC8vIHBvcC11cCBkYXRlIHBpY2tlciB3aGVuIGJ1dHRvbiBjbGlja2VkCgkJCWJ1dHRvblRleHQgPSB0aGlzLl9nZXQoIGluc3QsICJidXR0b25UZXh0IiApOwoJCQlidXR0b25JbWFnZSA9IHRoaXMuX2dldCggaW5zdCwgImJ1dHRvbkltYWdlIiApOwoJCQlpbnN0LnRyaWdnZXIgPSAkKCB0aGlzLl9nZXQoIGluc3QsICJidXR0b25JbWFnZU9ubHkiICkgPwoJCQkJJCggIjxpbWcvPiIgKS5hZGRDbGFzcyggdGhpcy5fdHJpZ2dlckNsYXNzICkuCgkJCQkJYXR0ciggeyBzcmM6IGJ1dHRvbkltYWdlLCBhbHQ6IGJ1dHRvblRleHQsIHRpdGxlOiBidXR0b25UZXh0IH0gKSA6CgkJCQkkKCAiPGJ1dHRvbiB0eXBlPSdidXR0b24nPjwvYnV0dG9uPiIgKS5hZGRDbGFzcyggdGhpcy5fdHJpZ2dlckNsYXNzICkuCgkJCQkJaHRtbCggIWJ1dHRvbkltYWdlID8gYnV0dG9uVGV4dCA6ICQoICI8aW1nLz4iICkuYXR0cigKCQkJCQl7IHNyYzpidXR0b25JbWFnZSwgYWx0OmJ1dHRvblRleHQsIHRpdGxlOmJ1dHRvblRleHQgfSApICkgKTsKCQkJaW5wdXRbIGlzUlRMID8gImJlZm9yZSIgOiAiYWZ0ZXIiIF0oIGluc3QudHJpZ2dlciApOwoJCQlpbnN0LnRyaWdnZXIub24oICJjbGljayIsIGZ1bmN0aW9uKCkgewoJCQkJaWYgKCAkLmRhdGVwaWNrZXIuX2RhdGVwaWNrZXJTaG93aW5nICYmICQuZGF0ZXBpY2tlci5fbGFzdElucHV0ID09PSBpbnB1dFsgMCBdICkgewoJCQkJCSQuZGF0ZXBpY2tlci5faGlkZURhdGVwaWNrZXIoKTsKCQkJCX0gZWxzZSBpZiAoICQuZGF0ZXBpY2tlci5fZGF0ZXBpY2tlclNob3dpbmcgJiYgJC5kYXRlcGlja2VyLl9sYXN0SW5wdXQgIT09IGlucHV0WyAwIF0gKSB7CgkJCQkJJC5kYXRlcGlja2VyLl9oaWRlRGF0ZXBpY2tlcigpOwoJCQkJCSQuZGF0ZXBpY2tlci5fc2hvd0RhdGVwaWNrZXIoIGlucHV0WyAwIF0gKTsKCQkJCX0gZWxzZSB7CgkJCQkJJC5kYXRlcGlja2VyLl9zaG93RGF0ZXBpY2tlciggaW5wdXRbIDAgXSApOwoJCQkJfQoJCQkJcmV0dXJuIGZhbHNlOwoJCQl9ICk7CgkJfQoJfSwKCgkvKiBBcHBseSB0aGUgbWF4aW11bSBsZW5ndGggZm9yIHRoZSBkYXRlIGZvcm1hdC4gKi8KCV9hdXRvU2l6ZTogZnVuY3Rpb24oIGluc3QgKSB7CgkJaWYgKCB0aGlzLl9nZXQoIGluc3QsICJhdXRvU2l6ZSIgKSAmJiAhaW5zdC5pbmxpbmUgKSB7CgkJCXZhciBmaW5kTWF4LCBtYXgsIG1heEksIGksCgkJCQlkYXRlID0gbmV3IERhdGUoIDIwMDksIDEyIC0gMSwgMjAgKSwgLy8gRW5zdXJlIGRvdWJsZSBkaWdpdHMKCQkJCWRhdGVGb3JtYXQgPSB0aGlzLl9nZXQoIGluc3QsICJkYXRlRm9ybWF0IiApOwoKCQkJaWYgKCBkYXRlRm9ybWF0Lm1hdGNoKCAvW0RNXS8gKSApIHsKCQkJCWZpbmRNYXggPSBmdW5jdGlvbiggbmFtZXMgKSB7CgkJCQkJbWF4ID0gMDsKCQkJCQltYXhJID0gMDsKCQkJCQlmb3IgKCBpID0gMDsgaSA8IG5hbWVzLmxlbmd0aDsgaSsrICkgewoJCQkJCQlpZiAoIG5hbWVzWyBpIF0ubGVuZ3RoID4gbWF4ICkgewoJCQkJCQkJbWF4ID0gbmFtZXNbIGkgXS5sZW5ndGg7CgkJCQkJCQltYXhJID0gaTsKCQkJCQkJfQoJCQkJCX0KCQkJCQlyZXR1cm4gbWF4STsKCQkJCX07CgkJCQlkYXRlLnNldE1vbnRoKCBmaW5kTWF4KCB0aGlzLl9nZXQoIGluc3QsICggZGF0ZUZvcm1hdC5tYXRjaCggL01NLyApID8KCQkJCQkibW9udGhOYW1lcyIgOiAibW9udGhOYW1lc1Nob3J0IiApICkgKSApOwoJCQkJZGF0ZS5zZXREYXRlKCBmaW5kTWF4KCB0aGlzLl9nZXQoIGluc3QsICggZGF0ZUZvcm1hdC5tYXRjaCggL0RELyApID8KCQkJCQkiZGF5TmFtZXMiIDogImRheU5hbWVzU2hvcnQiICkgKSApICsgMjAgLSBkYXRlLmdldERheSgpICk7CgkJCX0KCQkJaW5zdC5pbnB1dC5hdHRyKCAic2l6ZSIsIHRoaXMuX2Zvcm1hdERhdGUoIGluc3QsIGRhdGUgKS5sZW5ndGggKTsKCQl9Cgl9LAoKCS8qIEF0dGFjaCBhbiBpbmxpbmUgZGF0ZSBwaWNrZXIgdG8gYSBkaXYuICovCglfaW5saW5lRGF0ZXBpY2tlcjogZnVuY3Rpb24oIHRhcmdldCwgaW5zdCApIHsKCQl2YXIgZGl2U3BhbiA9ICQoIHRhcmdldCApOwoJCWlmICggZGl2U3Bhbi5oYXNDbGFzcyggdGhpcy5tYXJrZXJDbGFzc05hbWUgKSApIHsKCQkJcmV0dXJuOwoJCX0KCQlkaXZTcGFuLmFkZENsYXNzKCB0aGlzLm1hcmtlckNsYXNzTmFtZSApLmFwcGVuZCggaW5zdC5kcERpdiApOwoJCSQuZGF0YSggdGFyZ2V0LCAiZGF0ZXBpY2tlciIsIGluc3QgKTsKCQl0aGlzLl9zZXREYXRlKCBpbnN0LCB0aGlzLl9nZXREZWZhdWx0RGF0ZSggaW5zdCApLCB0cnVlICk7CgkJdGhpcy5fdXBkYXRlRGF0ZXBpY2tlciggaW5zdCApOwoJCXRoaXMuX3VwZGF0ZUFsdGVybmF0ZSggaW5zdCApOwoKCQkvL0lmIGRpc2FibGVkIG9wdGlvbiBpcyB0cnVlLCBkaXNhYmxlIHRoZSBkYXRlcGlja2VyIGJlZm9yZSBzaG93aW5nIGl0IChzZWUgdGlja2V0ICM1NjY1KQoJCWlmICggaW5zdC5zZXR0aW5ncy5kaXNhYmxlZCApIHsKCQkJdGhpcy5fZGlzYWJsZURhdGVwaWNrZXIoIHRhcmdldCApOwoJCX0KCgkJLy8gU2V0IGRpc3BsYXk6YmxvY2sgaW4gcGxhY2Ugb2YgaW5zdC5kcERpdi5zaG93KCkgd2hpY2ggd29uJ3Qgd29yayBvbiBkaXNjb25uZWN0ZWQgZWxlbWVudHMKCQkvLyBodHRwOi8vYnVncy5qcXVlcnl1aS5jb20vdGlja2V0Lzc1NTIgLSBBIERhdGVwaWNrZXIgY3JlYXRlZCBvbiBhIGRldGFjaGVkIGRpdiBoYXMgemVybyBoZWlnaHQKCQlpbnN0LmRwRGl2LmNzcyggImRpc3BsYXkiLCAiYmxvY2siICk7Cgl9LAoKCS8qIFBvcC11cCB0aGUgZGF0ZSBwaWNrZXIgaW4gYSAiZGlhbG9nIiBib3guCgkgKiBAcGFyYW0gIGlucHV0IGVsZW1lbnQgLSBpZ25vcmVkCgkgKiBAcGFyYW0gIGRhdGUJc3RyaW5nIG9yIERhdGUgLSB0aGUgaW5pdGlhbCBkYXRlIHRvIGRpc3BsYXkKCSAqIEBwYXJhbSAgb25TZWxlY3QgIGZ1bmN0aW9uIC0gdGhlIGZ1bmN0aW9uIHRvIGNhbGwgd2hlbiBhIGRhdGUgaXMgc2VsZWN0ZWQKCSAqIEBwYXJhbSAgc2V0dGluZ3MgIG9iamVjdCAtIHVwZGF0ZSB0aGUgZGlhbG9nIGRhdGUgcGlja2VyIGluc3RhbmNlJ3Mgc2V0dGluZ3MgKGFub255bW91cyBvYmplY3QpCgkgKiBAcGFyYW0gIHBvcyBpbnRbMl0gLSBjb29yZGluYXRlcyBmb3IgdGhlIGRpYWxvZydzIHBvc2l0aW9uIHdpdGhpbiB0aGUgc2NyZWVuIG9yCgkgKgkJCQkJZXZlbnQgLSB3aXRoIHgveSBjb29yZGluYXRlcyBvcgoJICoJCQkJCWxlYXZlIGVtcHR5IGZvciBkZWZhdWx0IChzY3JlZW4gY2VudHJlKQoJICogQHJldHVybiB0aGUgbWFuYWdlciBvYmplY3QKCSAqLwoJX2RpYWxvZ0RhdGVwaWNrZXI6IGZ1bmN0aW9uKCBpbnB1dCwgZGF0ZSwgb25TZWxlY3QsIHNldHRpbmdzLCBwb3MgKSB7CgkJdmFyIGlkLCBicm93c2VyV2lkdGgsIGJyb3dzZXJIZWlnaHQsIHNjcm9sbFgsIHNjcm9sbFksCgkJCWluc3QgPSB0aGlzLl9kaWFsb2dJbnN0OyAvLyBpbnRlcm5hbCBpbnN0YW5jZQoKCQlpZiAoICFpbnN0ICkgewoJCQl0aGlzLnV1aWQgKz0gMTsKCQkJaWQgPSAiZHAiICsgdGhpcy51dWlkOwoJCQl0aGlzLl9kaWFsb2dJbnB1dCA9ICQoICI8aW5wdXQgdHlwZT0ndGV4dCcgaWQ9JyIgKyBpZCArCgkJCQkiJyBzdHlsZT0ncG9zaXRpb246IGFic29sdXRlOyB0b3A6IC0xMDBweDsgd2lkdGg6IDBweDsnLz4iICk7CgkJCXRoaXMuX2RpYWxvZ0lucHV0Lm9uKCAia2V5ZG93biIsIHRoaXMuX2RvS2V5RG93biApOwoJCQkkKCAiYm9keSIgKS5hcHBlbmQoIHRoaXMuX2RpYWxvZ0lucHV0ICk7CgkJCWluc3QgPSB0aGlzLl9kaWFsb2dJbnN0ID0gdGhpcy5fbmV3SW5zdCggdGhpcy5fZGlhbG9nSW5wdXQsIGZhbHNlICk7CgkJCWluc3Quc2V0dGluZ3MgPSB7fTsKCQkJJC5kYXRhKCB0aGlzLl9kaWFsb2dJbnB1dFsgMCBdLCAiZGF0ZXBpY2tlciIsIGluc3QgKTsKCQl9CgkJZGF0ZXBpY2tlcl9leHRlbmRSZW1vdmUoIGluc3Quc2V0dGluZ3MsIHNldHRpbmdzIHx8IHt9ICk7CgkJZGF0ZSA9ICggZGF0ZSAmJiBkYXRlLmNvbnN0cnVjdG9yID09PSBEYXRlID8gdGhpcy5fZm9ybWF0RGF0ZSggaW5zdCwgZGF0ZSApIDogZGF0ZSApOwoJCXRoaXMuX2RpYWxvZ0lucHV0LnZhbCggZGF0ZSApOwoKCQl0aGlzLl9wb3MgPSAoIHBvcyA/ICggcG9zLmxlbmd0aCA/IHBvcyA6IFsgcG9zLnBhZ2VYLCBwb3MucGFnZVkgXSApIDogbnVsbCApOwoJCWlmICggIXRoaXMuX3BvcyApIHsKCQkJYnJvd3NlcldpZHRoID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoOwoJCQlicm93c2VySGVpZ2h0ID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodDsKCQkJc2Nyb2xsWCA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxMZWZ0IHx8IGRvY3VtZW50LmJvZHkuc2Nyb2xsTGVmdDsKCQkJc2Nyb2xsWSA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3AgfHwgZG9jdW1lbnQuYm9keS5zY3JvbGxUb3A7CgkJCXRoaXMuX3BvcyA9IC8vIHNob3VsZCB1c2UgYWN0dWFsIHdpZHRoL2hlaWdodCBiZWxvdwoJCQkJWyAoIGJyb3dzZXJXaWR0aCAvIDIgKSAtIDEwMCArIHNjcm9sbFgsICggYnJvd3NlckhlaWdodCAvIDIgKSAtIDE1MCArIHNjcm9sbFkgXTsKCQl9CgoJCS8vIE1vdmUgaW5wdXQgb24gc2NyZWVuIGZvciBmb2N1cywgYnV0IGhpZGRlbiBiZWhpbmQgZGlhbG9nCgkJdGhpcy5fZGlhbG9nSW5wdXQuY3NzKCAibGVmdCIsICggdGhpcy5fcG9zWyAwIF0gKyAyMCApICsgInB4IiApLmNzcyggInRvcCIsIHRoaXMuX3Bvc1sgMSBdICsgInB4IiApOwoJCWluc3Quc2V0dGluZ3Mub25TZWxlY3QgPSBvblNlbGVjdDsKCQl0aGlzLl9pbkRpYWxvZyA9IHRydWU7CgkJdGhpcy5kcERpdi5hZGRDbGFzcyggdGhpcy5fZGlhbG9nQ2xhc3MgKTsKCQl0aGlzLl9zaG93RGF0ZXBpY2tlciggdGhpcy5fZGlhbG9nSW5wdXRbIDAgXSApOwoJCWlmICggJC5ibG9ja1VJICkgewoJCQkkLmJsb2NrVUkoIHRoaXMuZHBEaXYgKTsKCQl9CgkJJC5kYXRhKCB0aGlzLl9kaWFsb2dJbnB1dFsgMCBdLCAiZGF0ZXBpY2tlciIsIGluc3QgKTsKCQlyZXR1cm4gdGhpczsKCX0sCgoJLyogRGV0YWNoIGEgZGF0ZXBpY2tlciBmcm9tIGl0cyBjb250cm9sLgoJICogQHBhcmFtICB0YXJnZXQJZWxlbWVudCAtIHRoZSB0YXJnZXQgaW5wdXQgZmllbGQgb3IgZGl2aXNpb24gb3Igc3BhbgoJICovCglfZGVzdHJveURhdGVwaWNrZXI6IGZ1bmN0aW9uKCB0YXJnZXQgKSB7CgkJdmFyIG5vZGVOYW1lLAoJCQkkdGFyZ2V0ID0gJCggdGFyZ2V0ICksCgkJCWluc3QgPSAkLmRhdGEoIHRhcmdldCwgImRhdGVwaWNrZXIiICk7CgoJCWlmICggISR0YXJnZXQuaGFzQ2xhc3MoIHRoaXMubWFya2VyQ2xhc3NOYW1lICkgKSB7CgkJCXJldHVybjsKCQl9CgoJCW5vZGVOYW1lID0gdGFyZ2V0Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7CgkJJC5yZW1vdmVEYXRhKCB0YXJnZXQsICJkYXRlcGlja2VyIiApOwoJCWlmICggbm9kZU5hbWUgPT09ICJpbnB1dCIgKSB7CgkJCWluc3QuYXBwZW5kLnJlbW92ZSgpOwoJCQlpbnN0LnRyaWdnZXIucmVtb3ZlKCk7CgkJCSR0YXJnZXQucmVtb3ZlQ2xhc3MoIHRoaXMubWFya2VyQ2xhc3NOYW1lICkuCgkJCQlvZmYoICJmb2N1cyIsIHRoaXMuX3Nob3dEYXRlcGlja2VyICkuCgkJCQlvZmYoICJrZXlkb3duIiwgdGhpcy5fZG9LZXlEb3duICkuCgkJCQlvZmYoICJrZXlwcmVzcyIsIHRoaXMuX2RvS2V5UHJlc3MgKS4KCQkJCW9mZiggImtleXVwIiwgdGhpcy5fZG9LZXlVcCApOwoJCX0gZWxzZSBpZiAoIG5vZGVOYW1lID09PSAiZGl2IiB8fCBub2RlTmFtZSA9PT0gInNwYW4iICkgewoJCQkkdGFyZ2V0LnJlbW92ZUNsYXNzKCB0aGlzLm1hcmtlckNsYXNzTmFtZSApLmVtcHR5KCk7CgkJfQoKCQlpZiAoIGRhdGVwaWNrZXJfaW5zdEFjdGl2ZSA9PT0gaW5zdCApIHsKCQkJZGF0ZXBpY2tlcl9pbnN0QWN0aXZlID0gbnVsbDsKCQl9Cgl9LAoKCS8qIEVuYWJsZSB0aGUgZGF0ZSBwaWNrZXIgdG8gYSBqUXVlcnkgc2VsZWN0aW9uLgoJICogQHBhcmFtICB0YXJnZXQJZWxlbWVudCAtIHRoZSB0YXJnZXQgaW5wdXQgZmllbGQgb3IgZGl2aXNpb24gb3Igc3BhbgoJICovCglfZW5hYmxlRGF0ZXBpY2tlcjogZnVuY3Rpb24oIHRhcmdldCApIHsKCQl2YXIgbm9kZU5hbWUsIGlubGluZSwKCQkJJHRhcmdldCA9ICQoIHRhcmdldCApLAoJCQlpbnN0ID0gJC5kYXRhKCB0YXJnZXQsICJkYXRlcGlja2VyIiApOwoKCQlpZiAoICEkdGFyZ2V0Lmhhc0NsYXNzKCB0aGlzLm1hcmtlckNsYXNzTmFtZSApICkgewoJCQlyZXR1cm47CgkJfQoKCQlub2RlTmFtZSA9IHRhcmdldC5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpOwoJCWlmICggbm9kZU5hbWUgPT09ICJpbnB1dCIgKSB7CgkJCXRhcmdldC5kaXNhYmxlZCA9IGZhbHNlOwoJCQlpbnN0LnRyaWdnZXIuZmlsdGVyKCAiYnV0dG9uIiApLgoJCQkJZWFjaCggZnVuY3Rpb24oKSB7IHRoaXMuZGlzYWJsZWQgPSBmYWxzZTsgfSApLmVuZCgpLgoJCQkJZmlsdGVyKCAiaW1nIiApLmNzcyggeyBvcGFjaXR5OiAiMS4wIiwgY3Vyc29yOiAiIiB9ICk7CgkJfSBlbHNlIGlmICggbm9kZU5hbWUgPT09ICJkaXYiIHx8IG5vZGVOYW1lID09PSAic3BhbiIgKSB7CgkJCWlubGluZSA9ICR0YXJnZXQuY2hpbGRyZW4oICIuIiArIHRoaXMuX2lubGluZUNsYXNzICk7CgkJCWlubGluZS5jaGlsZHJlbigpLnJlbW92ZUNsYXNzKCAidWktc3RhdGUtZGlzYWJsZWQiICk7CgkJCWlubGluZS5maW5kKCAic2VsZWN0LnVpLWRhdGVwaWNrZXItbW9udGgsIHNlbGVjdC51aS1kYXRlcGlja2VyLXllYXIiICkuCgkJCQlwcm9wKCAiZGlzYWJsZWQiLCBmYWxzZSApOwoJCX0KCQl0aGlzLl9kaXNhYmxlZElucHV0cyA9ICQubWFwKCB0aGlzLl9kaXNhYmxlZElucHV0cywKCQkJZnVuY3Rpb24oIHZhbHVlICkgeyByZXR1cm4gKCB2YWx1ZSA9PT0gdGFyZ2V0ID8gbnVsbCA6IHZhbHVlICk7IH0gKTsgLy8gZGVsZXRlIGVudHJ5Cgl9LAoKCS8qIERpc2FibGUgdGhlIGRhdGUgcGlja2VyIHRvIGEgalF1ZXJ5IHNlbGVjdGlvbi4KCSAqIEBwYXJhbSAgdGFyZ2V0CWVsZW1lbnQgLSB0aGUgdGFyZ2V0IGlucHV0IGZpZWxkIG9yIGRpdmlzaW9uIG9yIHNwYW4KCSAqLwoJX2Rpc2FibGVEYXRlcGlja2VyOiBmdW5jdGlvbiggdGFyZ2V0ICkgewoJCXZhciBub2RlTmFtZSwgaW5saW5lLAoJCQkkdGFyZ2V0ID0gJCggdGFyZ2V0ICksCgkJCWluc3QgPSAkLmRhdGEoIHRhcmdldCwgImRhdGVwaWNrZXIiICk7CgoJCWlmICggISR0YXJnZXQuaGFzQ2xhc3MoIHRoaXMubWFya2VyQ2xhc3NOYW1lICkgKSB7CgkJCXJldHVybjsKCQl9CgoJCW5vZGVOYW1lID0gdGFyZ2V0Lm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7CgkJaWYgKCBub2RlTmFtZSA9PT0gImlucHV0IiApIHsKCQkJdGFyZ2V0LmRpc2FibGVkID0gdHJ1ZTsKCQkJaW5zdC50cmlnZ2VyLmZpbHRlciggImJ1dHRvbiIgKS4KCQkJCWVhY2goIGZ1bmN0aW9uKCkgeyB0aGlzLmRpc2FibGVkID0gdHJ1ZTsgfSApLmVuZCgpLgoJCQkJZmlsdGVyKCAiaW1nIiApLmNzcyggeyBvcGFjaXR5OiAiMC41IiwgY3Vyc29yOiAiZGVmYXVsdCIgfSApOwoJCX0gZWxzZSBpZiAoIG5vZGVOYW1lID09PSAiZGl2IiB8fCBub2RlTmFtZSA9PT0gInNwYW4iICkgewoJCQlpbmxpbmUgPSAkdGFyZ2V0LmNoaWxkcmVuKCAiLiIgKyB0aGlzLl9pbmxpbmVDbGFzcyApOwoJCQlpbmxpbmUuY2hpbGRyZW4oKS5hZGRDbGFzcyggInVpLXN0YXRlLWRpc2FibGVkIiApOwoJCQlpbmxpbmUuZmluZCggInNlbGVjdC51aS1kYXRlcGlja2VyLW1vbnRoLCBzZWxlY3QudWktZGF0ZXBpY2tlci15ZWFyIiApLgoJCQkJcHJvcCggImRpc2FibGVkIiwgdHJ1ZSApOwoJCX0KCQl0aGlzLl9kaXNhYmxlZElucHV0cyA9ICQubWFwKCB0aGlzLl9kaXNhYmxlZElucHV0cywKCQkJZnVuY3Rpb24oIHZhbHVlICkgeyByZXR1cm4gKCB2YWx1ZSA9PT0gdGFyZ2V0ID8gbnVsbCA6IHZhbHVlICk7IH0gKTsgLy8gZGVsZXRlIGVudHJ5CgkJdGhpcy5fZGlzYWJsZWRJbnB1dHNbIHRoaXMuX2Rpc2FibGVkSW5wdXRzLmxlbmd0aCBdID0gdGFyZ2V0OwoJfSwKCgkvKiBJcyB0aGUgZmlyc3QgZmllbGQgaW4gYSBqUXVlcnkgY29sbGVjdGlvbiBkaXNhYmxlZCBhcyBhIGRhdGVwaWNrZXI/CgkgKiBAcGFyYW0gIHRhcmdldAllbGVtZW50IC0gdGhlIHRhcmdldCBpbnB1dCBmaWVsZCBvciBkaXZpc2lvbiBvciBzcGFuCgkgKiBAcmV0dXJuIGJvb2xlYW4gLSB0cnVlIGlmIGRpc2FibGVkLCBmYWxzZSBpZiBlbmFibGVkCgkgKi8KCV9pc0Rpc2FibGVkRGF0ZXBpY2tlcjogZnVuY3Rpb24oIHRhcmdldCApIHsKCQlpZiAoICF0YXJnZXQgKSB7CgkJCXJldHVybiBmYWxzZTsKCQl9CgkJZm9yICggdmFyIGkgPSAwOyBpIDwgdGhpcy5fZGlzYWJsZWRJbnB1dHMubGVuZ3RoOyBpKysgKSB7CgkJCWlmICggdGhpcy5fZGlzYWJsZWRJbnB1dHNbIGkgXSA9PT0gdGFyZ2V0ICkgewoJCQkJcmV0dXJuIHRydWU7CgkJCX0KCQl9CgkJcmV0dXJuIGZhbHNlOwoJfSwKCgkvKiBSZXRyaWV2ZSB0aGUgaW5zdGFuY2UgZGF0YSBmb3IgdGhlIHRhcmdldCBjb250cm9sLgoJICogQHBhcmFtICB0YXJnZXQgIGVsZW1lbnQgLSB0aGUgdGFyZ2V0IGlucHV0IGZpZWxkIG9yIGRpdmlzaW9uIG9yIHNwYW4KCSAqIEByZXR1cm4gIG9iamVjdCAtIHRoZSBhc3NvY2lhdGVkIGluc3RhbmNlIGRhdGEKCSAqIEB0aHJvd3MgIGVycm9yIGlmIGEgalF1ZXJ5IHByb2JsZW0gZ2V0dGluZyBkYXRhCgkgKi8KCV9nZXRJbnN0OiBmdW5jdGlvbiggdGFyZ2V0ICkgewoJCXRyeSB7CgkJCXJldHVybiAkLmRhdGEoIHRhcmdldCwgImRhdGVwaWNrZXIiICk7CgkJfQoJCWNhdGNoICggZXJyICkgewoJCQl0aHJvdyAiTWlzc2luZyBpbnN0YW5jZSBkYXRhIGZvciB0aGlzIGRhdGVwaWNrZXIiOwoJCX0KCX0sCgoJLyogVXBkYXRlIG9yIHJldHJpZXZlIHRoZSBzZXR0aW5ncyBmb3IgYSBkYXRlIHBpY2tlciBhdHRhY2hlZCB0byBhbiBpbnB1dCBmaWVsZCBvciBkaXZpc2lvbi4KCSAqIEBwYXJhbSAgdGFyZ2V0ICBlbGVtZW50IC0gdGhlIHRhcmdldCBpbnB1dCBmaWVsZCBvciBkaXZpc2lvbiBvciBzcGFuCgkgKiBAcGFyYW0gIG5hbWUJb2JqZWN0IC0gdGhlIG5ldyBzZXR0aW5ncyB0byB1cGRhdGUgb3IKCSAqCQkJCXN0cmluZyAtIHRoZSBuYW1lIG9mIHRoZSBzZXR0aW5nIHRvIGNoYW5nZSBvciByZXRyaWV2ZSwKCSAqCQkJCXdoZW4gcmV0cmlldmluZyBhbHNvICJhbGwiIGZvciBhbGwgaW5zdGFuY2Ugc2V0dGluZ3Mgb3IKCSAqCQkJCSJkZWZhdWx0cyIgZm9yIGFsbCBnbG9iYWwgZGVmYXVsdHMKCSAqIEBwYXJhbSAgdmFsdWUgICBhbnkgLSB0aGUgbmV3IHZhbHVlIGZvciB0aGUgc2V0dGluZwoJICoJCQkJKG9taXQgaWYgYWJvdmUgaXMgYW4gb2JqZWN0IG9yIHRvIHJldHJpZXZlIGEgdmFsdWUpCgkgKi8KCV9vcHRpb25EYXRlcGlja2VyOiBmdW5jdGlvbiggdGFyZ2V0LCBuYW1lLCB2YWx1ZSApIHsKCQl2YXIgc2V0dGluZ3MsIGRhdGUsIG1pbkRhdGUsIG1heERhdGUsCgkJCWluc3QgPSB0aGlzLl9nZXRJbnN0KCB0YXJnZXQgKTsKCgkJaWYgKCBhcmd1bWVudHMubGVuZ3RoID09PSAyICYmIHR5cGVvZiBuYW1lID09PSAic3RyaW5nIiApIHsKCQkJcmV0dXJuICggbmFtZSA9PT0gImRlZmF1bHRzIiA/ICQuZXh0ZW5kKCB7fSwgJC5kYXRlcGlja2VyLl9kZWZhdWx0cyApIDoKCQkJCSggaW5zdCA/ICggbmFtZSA9PT0gImFsbCIgPyAkLmV4dGVuZCgge30sIGluc3Quc2V0dGluZ3MgKSA6CgkJCQl0aGlzLl9nZXQoIGluc3QsIG5hbWUgKSApIDogbnVsbCApICk7CgkJfQoKCQlzZXR0aW5ncyA9IG5hbWUgfHwge307CgkJaWYgKCB0eXBlb2YgbmFtZSA9PT0gInN0cmluZyIgKSB7CgkJCXNldHRpbmdzID0ge307CgkJCXNldHRpbmdzWyBuYW1lIF0gPSB2YWx1ZTsKCQl9CgoJCWlmICggaW5zdCApIHsKCQkJaWYgKCB0aGlzLl9jdXJJbnN0ID09PSBpbnN0ICkgewoJCQkJdGhpcy5faGlkZURhdGVwaWNrZXIoKTsKCQkJfQoKCQkJZGF0ZSA9IHRoaXMuX2dldERhdGVEYXRlcGlja2VyKCB0YXJnZXQsIHRydWUgKTsKCQkJbWluRGF0ZSA9IHRoaXMuX2dldE1pbk1heERhdGUoIGluc3QsICJtaW4iICk7CgkJCW1heERhdGUgPSB0aGlzLl9nZXRNaW5NYXhEYXRlKCBpbnN0LCAibWF4IiApOwoJCQlkYXRlcGlja2VyX2V4dGVuZFJlbW92ZSggaW5zdC5zZXR0aW5ncywgc2V0dGluZ3MgKTsKCgkJCS8vIHJlZm9ybWF0IHRoZSBvbGQgbWluRGF0ZS9tYXhEYXRlIHZhbHVlcyBpZiBkYXRlRm9ybWF0IGNoYW5nZXMgYW5kIGEgbmV3IG1pbkRhdGUvbWF4RGF0ZSBpc24ndCBwcm92aWRlZAoJCQlpZiAoIG1pbkRhdGUgIT09IG51bGwgJiYgc2V0dGluZ3MuZGF0ZUZvcm1hdCAhPT0gdW5kZWZpbmVkICYmIHNldHRpbmdzLm1pbkRhdGUgPT09IHVuZGVmaW5lZCApIHsKCQkJCWluc3Quc2V0dGluZ3MubWluRGF0ZSA9IHRoaXMuX2Zvcm1hdERhdGUoIGluc3QsIG1pbkRhdGUgKTsKCQkJfQoJCQlpZiAoIG1heERhdGUgIT09IG51bGwgJiYgc2V0dGluZ3MuZGF0ZUZvcm1hdCAhPT0gdW5kZWZpbmVkICYmIHNldHRpbmdzLm1heERhdGUgPT09IHVuZGVmaW5lZCApIHsKCQkJCWluc3Quc2V0dGluZ3MubWF4RGF0ZSA9IHRoaXMuX2Zvcm1hdERhdGUoIGluc3QsIG1heERhdGUgKTsKCQkJfQoJCQlpZiAoICJkaXNhYmxlZCIgaW4gc2V0dGluZ3MgKSB7CgkJCQlpZiAoIHNldHRpbmdzLmRpc2FibGVkICkgewoJCQkJCXRoaXMuX2Rpc2FibGVEYXRlcGlja2VyKCB0YXJnZXQgKTsKCQkJCX0gZWxzZSB7CgkJCQkJdGhpcy5fZW5hYmxlRGF0ZXBpY2tlciggdGFyZ2V0ICk7CgkJCQl9CgkJCX0KCQkJdGhpcy5fYXR0YWNobWVudHMoICQoIHRhcmdldCApLCBpbnN0ICk7CgkJCXRoaXMuX2F1dG9TaXplKCBpbnN0ICk7CgkJCXRoaXMuX3NldERhdGUoIGluc3QsIGRhdGUgKTsKCQkJdGhpcy5fdXBkYXRlQWx0ZXJuYXRlKCBpbnN0ICk7CgkJCXRoaXMuX3VwZGF0ZURhdGVwaWNrZXIoIGluc3QgKTsKCQl9Cgl9LAoKCS8vIENoYW5nZSBtZXRob2QgZGVwcmVjYXRlZAoJX2NoYW5nZURhdGVwaWNrZXI6IGZ1bmN0aW9uKCB0YXJnZXQsIG5hbWUsIHZhbHVlICkgewoJCXRoaXMuX29wdGlvbkRhdGVwaWNrZXIoIHRhcmdldCwgbmFtZSwgdmFsdWUgKTsKCX0sCgoJLyogUmVkcmF3IHRoZSBkYXRlIHBpY2tlciBhdHRhY2hlZCB0byBhbiBpbnB1dCBmaWVsZCBvciBkaXZpc2lvbi4KCSAqIEBwYXJhbSAgdGFyZ2V0ICBlbGVtZW50IC0gdGhlIHRhcmdldCBpbnB1dCBmaWVsZCBvciBkaXZpc2lvbiBvciBzcGFuCgkgKi8KCV9yZWZyZXNoRGF0ZXBpY2tlcjogZnVuY3Rpb24oIHRhcmdldCApIHsKCQl2YXIgaW5zdCA9IHRoaXMuX2dldEluc3QoIHRhcmdldCApOwoJCWlmICggaW5zdCApIHsKCQkJdGhpcy5fdXBkYXRlRGF0ZXBpY2tlciggaW5zdCApOwoJCX0KCX0sCgoJLyogU2V0IHRoZSBkYXRlcyBmb3IgYSBqUXVlcnkgc2VsZWN0aW9uLgoJICogQHBhcmFtICB0YXJnZXQgZWxlbWVudCAtIHRoZSB0YXJnZXQgaW5wdXQgZmllbGQgb3IgZGl2aXNpb24gb3Igc3BhbgoJICogQHBhcmFtICBkYXRlCURhdGUgLSB0aGUgbmV3IGRhdGUKCSAqLwoJX3NldERhdGVEYXRlcGlja2VyOiBmdW5jdGlvbiggdGFyZ2V0LCBkYXRlICkgewoJCXZhciBpbnN0ID0gdGhpcy5fZ2V0SW5zdCggdGFyZ2V0ICk7CgkJaWYgKCBpbnN0ICkgewoJCQl0aGlzLl9zZXREYXRlKCBpbnN0LCBkYXRlICk7CgkJCXRoaXMuX3VwZGF0ZURhdGVwaWNrZXIoIGluc3QgKTsKCQkJdGhpcy5fdXBkYXRlQWx0ZXJuYXRlKCBpbnN0ICk7CgkJfQoJfSwKCgkvKiBHZXQgdGhlIGRhdGUocykgZm9yIHRoZSBmaXJzdCBlbnRyeSBpbiBhIGpRdWVyeSBzZWxlY3Rpb24uCgkgKiBAcGFyYW0gIHRhcmdldCBlbGVtZW50IC0gdGhlIHRhcmdldCBpbnB1dCBmaWVsZCBvciBkaXZpc2lvbiBvciBzcGFuCgkgKiBAcGFyYW0gIG5vRGVmYXVsdCBib29sZWFuIC0gdHJ1ZSBpZiBubyBkZWZhdWx0IGRhdGUgaXMgdG8gYmUgdXNlZAoJICogQHJldHVybiBEYXRlIC0gdGhlIGN1cnJlbnQgZGF0ZQoJICovCglfZ2V0RGF0ZURhdGVwaWNrZXI6IGZ1bmN0aW9uKCB0YXJnZXQsIG5vRGVmYXVsdCApIHsKCQl2YXIgaW5zdCA9IHRoaXMuX2dldEluc3QoIHRhcmdldCApOwoJCWlmICggaW5zdCAmJiAhaW5zdC5pbmxpbmUgKSB7CgkJCXRoaXMuX3NldERhdGVGcm9tRmllbGQoIGluc3QsIG5vRGVmYXVsdCApOwoJCX0KCQlyZXR1cm4gKCBpbnN0ID8gdGhpcy5fZ2V0RGF0ZSggaW5zdCApIDogbnVsbCApOwoJfSwKCgkvKiBIYW5kbGUga2V5c3Ryb2tlcy4gKi8KCV9kb0tleURvd246IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgb25TZWxlY3QsIGRhdGVTdHIsIHNlbCwKCQkJaW5zdCA9ICQuZGF0ZXBpY2tlci5fZ2V0SW5zdCggZXZlbnQudGFyZ2V0ICksCgkJCWhhbmRsZWQgPSB0cnVlLAoJCQlpc1JUTCA9IGluc3QuZHBEaXYuaXMoICIudWktZGF0ZXBpY2tlci1ydGwiICk7CgoJCWluc3QuX2tleUV2ZW50ID0gdHJ1ZTsKCQlpZiAoICQuZGF0ZXBpY2tlci5fZGF0ZXBpY2tlclNob3dpbmcgKSB7CgkJCXN3aXRjaCAoIGV2ZW50LmtleUNvZGUgKSB7CgkJCQljYXNlIDk6ICQuZGF0ZXBpY2tlci5faGlkZURhdGVwaWNrZXIoKTsKCQkJCQkJaGFuZGxlZCA9IGZhbHNlOwoJCQkJCQlicmVhazsgLy8gaGlkZSBvbiB0YWIgb3V0CgkJCQljYXNlIDEzOiBzZWwgPSAkKCAidGQuIiArICQuZGF0ZXBpY2tlci5fZGF5T3ZlckNsYXNzICsgIjpub3QoLiIgKwoJCQkJCQkJCQkkLmRhdGVwaWNrZXIuX2N1cnJlbnRDbGFzcyArICIpIiwgaW5zdC5kcERpdiApOwoJCQkJCQlpZiAoIHNlbFsgMCBdICkgewoJCQkJCQkJJC5kYXRlcGlja2VyLl9zZWxlY3REYXkoIGV2ZW50LnRhcmdldCwgaW5zdC5zZWxlY3RlZE1vbnRoLCBpbnN0LnNlbGVjdGVkWWVhciwgc2VsWyAwIF0gKTsKCQkJCQkJfQoKCQkJCQkJb25TZWxlY3QgPSAkLmRhdGVwaWNrZXIuX2dldCggaW5zdCwgIm9uU2VsZWN0IiApOwoJCQkJCQlpZiAoIG9uU2VsZWN0ICkgewoJCQkJCQkJZGF0ZVN0ciA9ICQuZGF0ZXBpY2tlci5fZm9ybWF0RGF0ZSggaW5zdCApOwoKCQkJCQkJCS8vIFRyaWdnZXIgY3VzdG9tIGNhbGxiYWNrCgkJCQkJCQlvblNlbGVjdC5hcHBseSggKCBpbnN0LmlucHV0ID8gaW5zdC5pbnB1dFsgMCBdIDogbnVsbCApLCBbIGRhdGVTdHIsIGluc3QgXSApOwoJCQkJCQl9IGVsc2UgewoJCQkJCQkJJC5kYXRlcGlja2VyLl9oaWRlRGF0ZXBpY2tlcigpOwoJCQkJCQl9CgoJCQkJCQlyZXR1cm4gZmFsc2U7IC8vIGRvbid0IHN1Ym1pdCB0aGUgZm9ybQoJCQkJY2FzZSAyNzogJC5kYXRlcGlja2VyLl9oaWRlRGF0ZXBpY2tlcigpOwoJCQkJCQlicmVhazsgLy8gaGlkZSBvbiBlc2NhcGUKCQkJCWNhc2UgMzM6ICQuZGF0ZXBpY2tlci5fYWRqdXN0RGF0ZSggZXZlbnQudGFyZ2V0LCAoIGV2ZW50LmN0cmxLZXkgPwoJCQkJCQkJLSQuZGF0ZXBpY2tlci5fZ2V0KCBpbnN0LCAic3RlcEJpZ01vbnRocyIgKSA6CgkJCQkJCQktJC5kYXRlcGlja2VyLl9nZXQoIGluc3QsICJzdGVwTW9udGhzIiApICksICJNIiApOwoJCQkJCQlicmVhazsgLy8gcHJldmlvdXMgbW9udGgveWVhciBvbiBwYWdlIHVwLysgY3RybAoJCQkJY2FzZSAzNDogJC5kYXRlcGlja2VyLl9hZGp1c3REYXRlKCBldmVudC50YXJnZXQsICggZXZlbnQuY3RybEtleSA/CgkJCQkJCQkrJC5kYXRlcGlja2VyLl9nZXQoIGluc3QsICJzdGVwQmlnTW9udGhzIiApIDoKCQkJCQkJCSskLmRhdGVwaWNrZXIuX2dldCggaW5zdCwgInN0ZXBNb250aHMiICkgKSwgIk0iICk7CgkJCQkJCWJyZWFrOyAvLyBuZXh0IG1vbnRoL3llYXIgb24gcGFnZSBkb3duLysgY3RybAoJCQkJY2FzZSAzNTogaWYgKCBldmVudC5jdHJsS2V5IHx8IGV2ZW50Lm1ldGFLZXkgKSB7CgkJCQkJCQkkLmRhdGVwaWNrZXIuX2NsZWFyRGF0ZSggZXZlbnQudGFyZ2V0ICk7CgkJCQkJCX0KCQkJCQkJaGFuZGxlZCA9IGV2ZW50LmN0cmxLZXkgfHwgZXZlbnQubWV0YUtleTsKCQkJCQkJYnJlYWs7IC8vIGNsZWFyIG9uIGN0cmwgb3IgY29tbWFuZCArZW5kCgkJCQljYXNlIDM2OiBpZiAoIGV2ZW50LmN0cmxLZXkgfHwgZXZlbnQubWV0YUtleSApIHsKCQkJCQkJCSQuZGF0ZXBpY2tlci5fZ290b1RvZGF5KCBldmVudC50YXJnZXQgKTsKCQkJCQkJfQoJCQkJCQloYW5kbGVkID0gZXZlbnQuY3RybEtleSB8fCBldmVudC5tZXRhS2V5OwoJCQkJCQlicmVhazsgLy8gY3VycmVudCBvbiBjdHJsIG9yIGNvbW1hbmQgK2hvbWUKCQkJCWNhc2UgMzc6IGlmICggZXZlbnQuY3RybEtleSB8fCBldmVudC5tZXRhS2V5ICkgewoJCQkJCQkJJC5kYXRlcGlja2VyLl9hZGp1c3REYXRlKCBldmVudC50YXJnZXQsICggaXNSVEwgPyArMSA6IC0xICksICJEIiApOwoJCQkJCQl9CgkJCQkJCWhhbmRsZWQgPSBldmVudC5jdHJsS2V5IHx8IGV2ZW50Lm1ldGFLZXk7CgoJCQkJCQkvLyAtMSBkYXkgb24gY3RybCBvciBjb21tYW5kICtsZWZ0CgkJCQkJCWlmICggZXZlbnQub3JpZ2luYWxFdmVudC5hbHRLZXkgKSB7CgkJCQkJCQkkLmRhdGVwaWNrZXIuX2FkanVzdERhdGUoIGV2ZW50LnRhcmdldCwgKCBldmVudC5jdHJsS2V5ID8KCQkJCQkJCQktJC5kYXRlcGlja2VyLl9nZXQoIGluc3QsICJzdGVwQmlnTW9udGhzIiApIDoKCQkJCQkJCQktJC5kYXRlcGlja2VyLl9nZXQoIGluc3QsICJzdGVwTW9udGhzIiApICksICJNIiApOwoJCQkJCQl9CgoJCQkJCQkvLyBuZXh0IG1vbnRoL3llYXIgb24gYWx0ICtsZWZ0IG9uIE1hYwoJCQkJCQlicmVhazsKCQkJCWNhc2UgMzg6IGlmICggZXZlbnQuY3RybEtleSB8fCBldmVudC5tZXRhS2V5ICkgewoJCQkJCQkJJC5kYXRlcGlja2VyLl9hZGp1c3REYXRlKCBldmVudC50YXJnZXQsIC03LCAiRCIgKTsKCQkJCQkJfQoJCQkJCQloYW5kbGVkID0gZXZlbnQuY3RybEtleSB8fCBldmVudC5tZXRhS2V5OwoJCQkJCQlicmVhazsgLy8gLTEgd2VlayBvbiBjdHJsIG9yIGNvbW1hbmQgK3VwCgkJCQljYXNlIDM5OiBpZiAoIGV2ZW50LmN0cmxLZXkgfHwgZXZlbnQubWV0YUtleSApIHsKCQkJCQkJCSQuZGF0ZXBpY2tlci5fYWRqdXN0RGF0ZSggZXZlbnQudGFyZ2V0LCAoIGlzUlRMID8gLTEgOiArMSApLCAiRCIgKTsKCQkJCQkJfQoJCQkJCQloYW5kbGVkID0gZXZlbnQuY3RybEtleSB8fCBldmVudC5tZXRhS2V5OwoKCQkJCQkJLy8gKzEgZGF5IG9uIGN0cmwgb3IgY29tbWFuZCArcmlnaHQKCQkJCQkJaWYgKCBldmVudC5vcmlnaW5hbEV2ZW50LmFsdEtleSApIHsKCQkJCQkJCSQuZGF0ZXBpY2tlci5fYWRqdXN0RGF0ZSggZXZlbnQudGFyZ2V0LCAoIGV2ZW50LmN0cmxLZXkgPwoJCQkJCQkJCSskLmRhdGVwaWNrZXIuX2dldCggaW5zdCwgInN0ZXBCaWdNb250aHMiICkgOgoJCQkJCQkJCSskLmRhdGVwaWNrZXIuX2dldCggaW5zdCwgInN0ZXBNb250aHMiICkgKSwgIk0iICk7CgkJCQkJCX0KCgkJCQkJCS8vIG5leHQgbW9udGgveWVhciBvbiBhbHQgK3JpZ2h0CgkJCQkJCWJyZWFrOwoJCQkJY2FzZSA0MDogaWYgKCBldmVudC5jdHJsS2V5IHx8IGV2ZW50Lm1ldGFLZXkgKSB7CgkJCQkJCQkkLmRhdGVwaWNrZXIuX2FkanVzdERhdGUoIGV2ZW50LnRhcmdldCwgKzcsICJEIiApOwoJCQkJCQl9CgkJCQkJCWhhbmRsZWQgPSBldmVudC5jdHJsS2V5IHx8IGV2ZW50Lm1ldGFLZXk7CgkJCQkJCWJyZWFrOyAvLyArMSB3ZWVrIG9uIGN0cmwgb3IgY29tbWFuZCArZG93bgoJCQkJZGVmYXVsdDogaGFuZGxlZCA9IGZhbHNlOwoJCQl9CgkJfSBlbHNlIGlmICggZXZlbnQua2V5Q29kZSA9PT0gMzYgJiYgZXZlbnQuY3RybEtleSApIHsgLy8gZGlzcGxheSB0aGUgZGF0ZSBwaWNrZXIgb24gY3RybCtob21lCgkJCSQuZGF0ZXBpY2tlci5fc2hvd0RhdGVwaWNrZXIoIHRoaXMgKTsKCQl9IGVsc2UgewoJCQloYW5kbGVkID0gZmFsc2U7CgkJfQoKCQlpZiAoIGhhbmRsZWQgKSB7CgkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCWV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOwoJCX0KCX0sCgoJLyogRmlsdGVyIGVudGVyZWQgY2hhcmFjdGVycyAtIGJhc2VkIG9uIGRhdGUgZm9ybWF0LiAqLwoJX2RvS2V5UHJlc3M6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgY2hhcnMsIGNociwKCQkJaW5zdCA9ICQuZGF0ZXBpY2tlci5fZ2V0SW5zdCggZXZlbnQudGFyZ2V0ICk7CgoJCWlmICggJC5kYXRlcGlja2VyLl9nZXQoIGluc3QsICJjb25zdHJhaW5JbnB1dCIgKSApIHsKCQkJY2hhcnMgPSAkLmRhdGVwaWNrZXIuX3Bvc3NpYmxlQ2hhcnMoICQuZGF0ZXBpY2tlci5fZ2V0KCBpbnN0LCAiZGF0ZUZvcm1hdCIgKSApOwoJCQljaHIgPSBTdHJpbmcuZnJvbUNoYXJDb2RlKCBldmVudC5jaGFyQ29kZSA9PSBudWxsID8gZXZlbnQua2V5Q29kZSA6IGV2ZW50LmNoYXJDb2RlICk7CgkJCXJldHVybiBldmVudC5jdHJsS2V5IHx8IGV2ZW50Lm1ldGFLZXkgfHwgKCBjaHIgPCAiICIgfHwgIWNoYXJzIHx8IGNoYXJzLmluZGV4T2YoIGNociApID4gLTEgKTsKCQl9Cgl9LAoKCS8qIFN5bmNocm9uaXNlIG1hbnVhbCBlbnRyeSBhbmQgZmllbGQvYWx0ZXJuYXRlIGZpZWxkLiAqLwoJX2RvS2V5VXA6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgZGF0ZSwKCQkJaW5zdCA9ICQuZGF0ZXBpY2tlci5fZ2V0SW5zdCggZXZlbnQudGFyZ2V0ICk7CgoJCWlmICggaW5zdC5pbnB1dC52YWwoKSAhPT0gaW5zdC5sYXN0VmFsICkgewoJCQl0cnkgewoJCQkJZGF0ZSA9ICQuZGF0ZXBpY2tlci5wYXJzZURhdGUoICQuZGF0ZXBpY2tlci5fZ2V0KCBpbnN0LCAiZGF0ZUZvcm1hdCIgKSwKCQkJCQkoIGluc3QuaW5wdXQgPyBpbnN0LmlucHV0LnZhbCgpIDogbnVsbCApLAoJCQkJCSQuZGF0ZXBpY2tlci5fZ2V0Rm9ybWF0Q29uZmlnKCBpbnN0ICkgKTsKCgkJCQlpZiAoIGRhdGUgKSB7IC8vIG9ubHkgaWYgdmFsaWQKCQkJCQkkLmRhdGVwaWNrZXIuX3NldERhdGVGcm9tRmllbGQoIGluc3QgKTsKCQkJCQkkLmRhdGVwaWNrZXIuX3VwZGF0ZUFsdGVybmF0ZSggaW5zdCApOwoJCQkJCSQuZGF0ZXBpY2tlci5fdXBkYXRlRGF0ZXBpY2tlciggaW5zdCApOwoJCQkJfQoJCQl9CgkJCWNhdGNoICggZXJyICkgewoJCQl9CgkJfQoJCXJldHVybiB0cnVlOwoJfSwKCgkvKiBQb3AtdXAgdGhlIGRhdGUgcGlja2VyIGZvciBhIGdpdmVuIGlucHV0IGZpZWxkLgoJICogSWYgZmFsc2UgcmV0dXJuZWQgZnJvbSBiZWZvcmVTaG93IGV2ZW50IGhhbmRsZXIgZG8gbm90IHNob3cuCgkgKiBAcGFyYW0gIGlucHV0ICBlbGVtZW50IC0gdGhlIGlucHV0IGZpZWxkIGF0dGFjaGVkIHRvIHRoZSBkYXRlIHBpY2tlciBvcgoJICoJCQkJCWV2ZW50IC0gaWYgdHJpZ2dlcmVkIGJ5IGZvY3VzCgkgKi8KCV9zaG93RGF0ZXBpY2tlcjogZnVuY3Rpb24oIGlucHV0ICkgewoJCWlucHV0ID0gaW5wdXQudGFyZ2V0IHx8IGlucHV0OwoJCWlmICggaW5wdXQubm9kZU5hbWUudG9Mb3dlckNhc2UoKSAhPT0gImlucHV0IiApIHsgLy8gZmluZCBmcm9tIGJ1dHRvbi9pbWFnZSB0cmlnZ2VyCgkJCWlucHV0ID0gJCggImlucHV0IiwgaW5wdXQucGFyZW50Tm9kZSApWyAwIF07CgkJfQoKCQlpZiAoICQuZGF0ZXBpY2tlci5faXNEaXNhYmxlZERhdGVwaWNrZXIoIGlucHV0ICkgfHwgJC5kYXRlcGlja2VyLl9sYXN0SW5wdXQgPT09IGlucHV0ICkgeyAvLyBhbHJlYWR5IGhlcmUKCQkJcmV0dXJuOwoJCX0KCgkJdmFyIGluc3QsIGJlZm9yZVNob3csIGJlZm9yZVNob3dTZXR0aW5ncywgaXNGaXhlZCwKCQkJb2Zmc2V0LCBzaG93QW5pbSwgZHVyYXRpb247CgoJCWluc3QgPSAkLmRhdGVwaWNrZXIuX2dldEluc3QoIGlucHV0ICk7CgkJaWYgKCAkLmRhdGVwaWNrZXIuX2N1ckluc3QgJiYgJC5kYXRlcGlja2VyLl9jdXJJbnN0ICE9PSBpbnN0ICkgewoJCQkkLmRhdGVwaWNrZXIuX2N1ckluc3QuZHBEaXYuc3RvcCggdHJ1ZSwgdHJ1ZSApOwoJCQlpZiAoIGluc3QgJiYgJC5kYXRlcGlja2VyLl9kYXRlcGlja2VyU2hvd2luZyApIHsKCQkJCSQuZGF0ZXBpY2tlci5faGlkZURhdGVwaWNrZXIoICQuZGF0ZXBpY2tlci5fY3VySW5zdC5pbnB1dFsgMCBdICk7CgkJCX0KCQl9CgoJCWJlZm9yZVNob3cgPSAkLmRhdGVwaWNrZXIuX2dldCggaW5zdCwgImJlZm9yZVNob3ciICk7CgkJYmVmb3JlU2hvd1NldHRpbmdzID0gYmVmb3JlU2hvdyA/IGJlZm9yZVNob3cuYXBwbHkoIGlucHV0LCBbIGlucHV0LCBpbnN0IF0gKSA6IHt9OwoJCWlmICggYmVmb3JlU2hvd1NldHRpbmdzID09PSBmYWxzZSApIHsKCQkJcmV0dXJuOwoJCX0KCQlkYXRlcGlja2VyX2V4dGVuZFJlbW92ZSggaW5zdC5zZXR0aW5ncywgYmVmb3JlU2hvd1NldHRpbmdzICk7CgoJCWluc3QubGFzdFZhbCA9IG51bGw7CgkJJC5kYXRlcGlja2VyLl9sYXN0SW5wdXQgPSBpbnB1dDsKCQkkLmRhdGVwaWNrZXIuX3NldERhdGVGcm9tRmllbGQoIGluc3QgKTsKCgkJaWYgKCAkLmRhdGVwaWNrZXIuX2luRGlhbG9nICkgeyAvLyBoaWRlIGN1cnNvcgoJCQlpbnB1dC52YWx1ZSA9ICIiOwoJCX0KCQlpZiAoICEkLmRhdGVwaWNrZXIuX3BvcyApIHsgLy8gcG9zaXRpb24gYmVsb3cgaW5wdXQKCQkJJC5kYXRlcGlja2VyLl9wb3MgPSAkLmRhdGVwaWNrZXIuX2ZpbmRQb3MoIGlucHV0ICk7CgkJCSQuZGF0ZXBpY2tlci5fcG9zWyAxIF0gKz0gaW5wdXQub2Zmc2V0SGVpZ2h0OyAvLyBhZGQgdGhlIGhlaWdodAoJCX0KCgkJaXNGaXhlZCA9IGZhbHNlOwoJCSQoIGlucHV0ICkucGFyZW50cygpLmVhY2goIGZ1bmN0aW9uKCkgewoJCQlpc0ZpeGVkIHw9ICQoIHRoaXMgKS5jc3MoICJwb3NpdGlvbiIgKSA9PT0gImZpeGVkIjsKCQkJcmV0dXJuICFpc0ZpeGVkOwoJCX0gKTsKCgkJb2Zmc2V0ID0geyBsZWZ0OiAkLmRhdGVwaWNrZXIuX3Bvc1sgMCBdLCB0b3A6ICQuZGF0ZXBpY2tlci5fcG9zWyAxIF0gfTsKCQkkLmRhdGVwaWNrZXIuX3BvcyA9IG51bGw7CgoJCS8vdG8gYXZvaWQgZmxhc2hlcyBvbiBGaXJlZm94CgkJaW5zdC5kcERpdi5lbXB0eSgpOwoKCQkvLyBkZXRlcm1pbmUgc2l6aW5nIG9mZnNjcmVlbgoJCWluc3QuZHBEaXYuY3NzKCB7IHBvc2l0aW9uOiAiYWJzb2x1dGUiLCBkaXNwbGF5OiAiYmxvY2siLCB0b3A6ICItMTAwMHB4IiB9ICk7CgkJJC5kYXRlcGlja2VyLl91cGRhdGVEYXRlcGlja2VyKCBpbnN0ICk7CgoJCS8vIGZpeCB3aWR0aCBmb3IgZHluYW1pYyBudW1iZXIgb2YgZGF0ZSBwaWNrZXJzCgkJLy8gYW5kIGFkanVzdCBwb3NpdGlvbiBiZWZvcmUgc2hvd2luZwoJCW9mZnNldCA9ICQuZGF0ZXBpY2tlci5fY2hlY2tPZmZzZXQoIGluc3QsIG9mZnNldCwgaXNGaXhlZCApOwoJCWluc3QuZHBEaXYuY3NzKCB7IHBvc2l0aW9uOiAoICQuZGF0ZXBpY2tlci5faW5EaWFsb2cgJiYgJC5ibG9ja1VJID8KCQkJInN0YXRpYyIgOiAoIGlzRml4ZWQgPyAiZml4ZWQiIDogImFic29sdXRlIiApICksIGRpc3BsYXk6ICJub25lIiwKCQkJbGVmdDogb2Zmc2V0LmxlZnQgKyAicHgiLCB0b3A6IG9mZnNldC50b3AgKyAicHgiIH0gKTsKCgkJaWYgKCAhaW5zdC5pbmxpbmUgKSB7CgkJCXNob3dBbmltID0gJC5kYXRlcGlja2VyLl9nZXQoIGluc3QsICJzaG93QW5pbSIgKTsKCQkJZHVyYXRpb24gPSAkLmRhdGVwaWNrZXIuX2dldCggaW5zdCwgImR1cmF0aW9uIiApOwoJCQlpbnN0LmRwRGl2LmNzcyggInotaW5kZXgiLCBkYXRlcGlja2VyX2dldFppbmRleCggJCggaW5wdXQgKSApICsgMSApOwoJCQkkLmRhdGVwaWNrZXIuX2RhdGVwaWNrZXJTaG93aW5nID0gdHJ1ZTsKCgkJCWlmICggJC5lZmZlY3RzICYmICQuZWZmZWN0cy5lZmZlY3RbIHNob3dBbmltIF0gKSB7CgkJCQlpbnN0LmRwRGl2LnNob3coIHNob3dBbmltLCAkLmRhdGVwaWNrZXIuX2dldCggaW5zdCwgInNob3dPcHRpb25zIiApLCBkdXJhdGlvbiApOwoJCQl9IGVsc2UgewoJCQkJaW5zdC5kcERpdlsgc2hvd0FuaW0gfHwgInNob3ciIF0oIHNob3dBbmltID8gZHVyYXRpb24gOiBudWxsICk7CgkJCX0KCgkJCWlmICggJC5kYXRlcGlja2VyLl9zaG91bGRGb2N1c0lucHV0KCBpbnN0ICkgKSB7CgkJCQlpbnN0LmlucHV0LnRyaWdnZXIoICJmb2N1cyIgKTsKCQkJfQoKCQkJJC5kYXRlcGlja2VyLl9jdXJJbnN0ID0gaW5zdDsKCQl9Cgl9LAoKCS8qIEdlbmVyYXRlIHRoZSBkYXRlIHBpY2tlciBjb250ZW50LiAqLwoJX3VwZGF0ZURhdGVwaWNrZXI6IGZ1bmN0aW9uKCBpbnN0ICkgewoJCXRoaXMubWF4Um93cyA9IDQ7IC8vUmVzZXQgdGhlIG1heCBudW1iZXIgb2Ygcm93cyBiZWluZyBkaXNwbGF5ZWQgKHNlZSAjNzA0MykKCQlkYXRlcGlja2VyX2luc3RBY3RpdmUgPSBpbnN0OyAvLyBmb3IgZGVsZWdhdGUgaG92ZXIgZXZlbnRzCgkJaW5zdC5kcERpdi5lbXB0eSgpLmFwcGVuZCggdGhpcy5fZ2VuZXJhdGVIVE1MKCBpbnN0ICkgKTsKCQl0aGlzLl9hdHRhY2hIYW5kbGVycyggaW5zdCApOwoKCQl2YXIgb3JpZ3llYXJzaHRtbCwKCQkJbnVtTW9udGhzID0gdGhpcy5fZ2V0TnVtYmVyT2ZNb250aHMoIGluc3QgKSwKCQkJY29scyA9IG51bU1vbnRoc1sgMSBdLAoJCQl3aWR0aCA9IDE3LAoJCQlhY3RpdmVDZWxsID0gaW5zdC5kcERpdi5maW5kKCAiLiIgKyB0aGlzLl9kYXlPdmVyQ2xhc3MgKyAiIGEiICk7CgoJCWlmICggYWN0aXZlQ2VsbC5sZW5ndGggPiAwICkgewoJCQlkYXRlcGlja2VyX2hhbmRsZU1vdXNlb3Zlci5hcHBseSggYWN0aXZlQ2VsbC5nZXQoIDAgKSApOwoJCX0KCgkJaW5zdC5kcERpdi5yZW1vdmVDbGFzcyggInVpLWRhdGVwaWNrZXItbXVsdGktMiB1aS1kYXRlcGlja2VyLW11bHRpLTMgdWktZGF0ZXBpY2tlci1tdWx0aS00IiApLndpZHRoKCAiIiApOwoJCWlmICggY29scyA+IDEgKSB7CgkJCWluc3QuZHBEaXYuYWRkQ2xhc3MoICJ1aS1kYXRlcGlja2VyLW11bHRpLSIgKyBjb2xzICkuY3NzKCAid2lkdGgiLCAoIHdpZHRoICogY29scyApICsgImVtIiApOwoJCX0KCQlpbnN0LmRwRGl2WyAoIG51bU1vbnRoc1sgMCBdICE9PSAxIHx8IG51bU1vbnRoc1sgMSBdICE9PSAxID8gImFkZCIgOiAicmVtb3ZlIiApICsKCQkJIkNsYXNzIiBdKCAidWktZGF0ZXBpY2tlci1tdWx0aSIgKTsKCQlpbnN0LmRwRGl2WyAoIHRoaXMuX2dldCggaW5zdCwgImlzUlRMIiApID8gImFkZCIgOiAicmVtb3ZlIiApICsKCQkJIkNsYXNzIiBdKCAidWktZGF0ZXBpY2tlci1ydGwiICk7CgoJCWlmICggaW5zdCA9PT0gJC5kYXRlcGlja2VyLl9jdXJJbnN0ICYmICQuZGF0ZXBpY2tlci5fZGF0ZXBpY2tlclNob3dpbmcgJiYgJC5kYXRlcGlja2VyLl9zaG91bGRGb2N1c0lucHV0KCBpbnN0ICkgKSB7CgkJCWluc3QuaW5wdXQudHJpZ2dlciggImZvY3VzIiApOwoJCX0KCgkJLy8gRGVmZmVyZWQgcmVuZGVyIG9mIHRoZSB5ZWFycyBzZWxlY3QgKHRvIGF2b2lkIGZsYXNoZXMgb24gRmlyZWZveCkKCQlpZiAoIGluc3QueWVhcnNodG1sICkgewoJCQlvcmlneWVhcnNodG1sID0gaW5zdC55ZWFyc2h0bWw7CgkJCXNldFRpbWVvdXQoIGZ1bmN0aW9uKCkgewoKCQkJCS8vYXNzdXJlIHRoYXQgaW5zdC55ZWFyc2h0bWwgZGlkbid0IGNoYW5nZS4KCQkJCWlmICggb3JpZ3llYXJzaHRtbCA9PT0gaW5zdC55ZWFyc2h0bWwgJiYgaW5zdC55ZWFyc2h0bWwgKSB7CgkJCQkJaW5zdC5kcERpdi5maW5kKCAic2VsZWN0LnVpLWRhdGVwaWNrZXIteWVhcjpmaXJzdCIgKS5yZXBsYWNlV2l0aCggaW5zdC55ZWFyc2h0bWwgKTsKCQkJCX0KCQkJCW9yaWd5ZWFyc2h0bWwgPSBpbnN0LnllYXJzaHRtbCA9IG51bGw7CgkJCX0sIDAgKTsKCQl9Cgl9LAoKCS8vICM2Njk0IC0gZG9uJ3QgZm9jdXMgdGhlIGlucHV0IGlmIGl0J3MgYWxyZWFkeSBmb2N1c2VkCgkvLyB0aGlzIGJyZWFrcyB0aGUgY2hhbmdlIGV2ZW50IGluIElFCgkvLyBTdXBwb3J0OiBJRSBhbmQgalF1ZXJ5IDwxLjkKCV9zaG91bGRGb2N1c0lucHV0OiBmdW5jdGlvbiggaW5zdCApIHsKCQlyZXR1cm4gaW5zdC5pbnB1dCAmJiBpbnN0LmlucHV0LmlzKCAiOnZpc2libGUiICkgJiYgIWluc3QuaW5wdXQuaXMoICI6ZGlzYWJsZWQiICkgJiYgIWluc3QuaW5wdXQuaXMoICI6Zm9jdXMiICk7Cgl9LAoKCS8qIENoZWNrIHBvc2l0aW9uaW5nIHRvIHJlbWFpbiBvbiBzY3JlZW4uICovCglfY2hlY2tPZmZzZXQ6IGZ1bmN0aW9uKCBpbnN0LCBvZmZzZXQsIGlzRml4ZWQgKSB7CgkJdmFyIGRwV2lkdGggPSBpbnN0LmRwRGl2Lm91dGVyV2lkdGgoKSwKCQkJZHBIZWlnaHQgPSBpbnN0LmRwRGl2Lm91dGVySGVpZ2h0KCksCgkJCWlucHV0V2lkdGggPSBpbnN0LmlucHV0ID8gaW5zdC5pbnB1dC5vdXRlcldpZHRoKCkgOiAwLAoJCQlpbnB1dEhlaWdodCA9IGluc3QuaW5wdXQgPyBpbnN0LmlucHV0Lm91dGVySGVpZ2h0KCkgOiAwLAoJCQl2aWV3V2lkdGggPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGggKyAoIGlzRml4ZWQgPyAwIDogJCggZG9jdW1lbnQgKS5zY3JvbGxMZWZ0KCkgKSwKCQkJdmlld0hlaWdodCA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQgKyAoIGlzRml4ZWQgPyAwIDogJCggZG9jdW1lbnQgKS5zY3JvbGxUb3AoKSApOwoKCQlvZmZzZXQubGVmdCAtPSAoIHRoaXMuX2dldCggaW5zdCwgImlzUlRMIiApID8gKCBkcFdpZHRoIC0gaW5wdXRXaWR0aCApIDogMCApOwoJCW9mZnNldC5sZWZ0IC09ICggaXNGaXhlZCAmJiBvZmZzZXQubGVmdCA9PT0gaW5zdC5pbnB1dC5vZmZzZXQoKS5sZWZ0ICkgPyAkKCBkb2N1bWVudCApLnNjcm9sbExlZnQoKSA6IDA7CgkJb2Zmc2V0LnRvcCAtPSAoIGlzRml4ZWQgJiYgb2Zmc2V0LnRvcCA9PT0gKCBpbnN0LmlucHV0Lm9mZnNldCgpLnRvcCArIGlucHV0SGVpZ2h0ICkgKSA/ICQoIGRvY3VtZW50ICkuc2Nyb2xsVG9wKCkgOiAwOwoKCQkvLyBOb3cgY2hlY2sgaWYgZGF0ZXBpY2tlciBpcyBzaG93aW5nIG91dHNpZGUgd2luZG93IHZpZXdwb3J0IC0gbW92ZSB0byBhIGJldHRlciBwbGFjZSBpZiBzby4KCQlvZmZzZXQubGVmdCAtPSBNYXRoLm1pbiggb2Zmc2V0LmxlZnQsICggb2Zmc2V0LmxlZnQgKyBkcFdpZHRoID4gdmlld1dpZHRoICYmIHZpZXdXaWR0aCA+IGRwV2lkdGggKSA/CgkJCU1hdGguYWJzKCBvZmZzZXQubGVmdCArIGRwV2lkdGggLSB2aWV3V2lkdGggKSA6IDAgKTsKCQlvZmZzZXQudG9wIC09IE1hdGgubWluKCBvZmZzZXQudG9wLCAoIG9mZnNldC50b3AgKyBkcEhlaWdodCA+IHZpZXdIZWlnaHQgJiYgdmlld0hlaWdodCA+IGRwSGVpZ2h0ICkgPwoJCQlNYXRoLmFicyggZHBIZWlnaHQgKyBpbnB1dEhlaWdodCApIDogMCApOwoKCQlyZXR1cm4gb2Zmc2V0OwoJfSwKCgkvKiBGaW5kIGFuIG9iamVjdCdzIHBvc2l0aW9uIG9uIHRoZSBzY3JlZW4uICovCglfZmluZFBvczogZnVuY3Rpb24oIG9iaiApIHsKCQl2YXIgcG9zaXRpb24sCgkJCWluc3QgPSB0aGlzLl9nZXRJbnN0KCBvYmogKSwKCQkJaXNSVEwgPSB0aGlzLl9nZXQoIGluc3QsICJpc1JUTCIgKTsKCgkJd2hpbGUgKCBvYmogJiYgKCBvYmoudHlwZSA9PT0gImhpZGRlbiIgfHwgb2JqLm5vZGVUeXBlICE9PSAxIHx8ICQuZXhwci5maWx0ZXJzLmhpZGRlbiggb2JqICkgKSApIHsKCQkJb2JqID0gb2JqWyBpc1JUTCA/ICJwcmV2aW91c1NpYmxpbmciIDogIm5leHRTaWJsaW5nIiBdOwoJCX0KCgkJcG9zaXRpb24gPSAkKCBvYmogKS5vZmZzZXQoKTsKCQlyZXR1cm4gWyBwb3NpdGlvbi5sZWZ0LCBwb3NpdGlvbi50b3AgXTsKCX0sCgoJLyogSGlkZSB0aGUgZGF0ZSBwaWNrZXIgZnJvbSB2aWV3LgoJICogQHBhcmFtICBpbnB1dCAgZWxlbWVudCAtIHRoZSBpbnB1dCBmaWVsZCBhdHRhY2hlZCB0byB0aGUgZGF0ZSBwaWNrZXIKCSAqLwoJX2hpZGVEYXRlcGlja2VyOiBmdW5jdGlvbiggaW5wdXQgKSB7CgkJdmFyIHNob3dBbmltLCBkdXJhdGlvbiwgcG9zdFByb2Nlc3MsIG9uQ2xvc2UsCgkJCWluc3QgPSB0aGlzLl9jdXJJbnN0OwoKCQlpZiAoICFpbnN0IHx8ICggaW5wdXQgJiYgaW5zdCAhPT0gJC5kYXRhKCBpbnB1dCwgImRhdGVwaWNrZXIiICkgKSApIHsKCQkJcmV0dXJuOwoJCX0KCgkJaWYgKCB0aGlzLl9kYXRlcGlja2VyU2hvd2luZyApIHsKCQkJc2hvd0FuaW0gPSB0aGlzLl9nZXQoIGluc3QsICJzaG93QW5pbSIgKTsKCQkJZHVyYXRpb24gPSB0aGlzLl9nZXQoIGluc3QsICJkdXJhdGlvbiIgKTsKCQkJcG9zdFByb2Nlc3MgPSBmdW5jdGlvbigpIHsKCQkJCSQuZGF0ZXBpY2tlci5fdGlkeURpYWxvZyggaW5zdCApOwoJCQl9OwoKCQkJLy8gREVQUkVDQVRFRDogYWZ0ZXIgQkMgZm9yIDEuOC54ICQuZWZmZWN0c1sgc2hvd0FuaW0gXSBpcyBub3QgbmVlZGVkCgkJCWlmICggJC5lZmZlY3RzICYmICggJC5lZmZlY3RzLmVmZmVjdFsgc2hvd0FuaW0gXSB8fCAkLmVmZmVjdHNbIHNob3dBbmltIF0gKSApIHsKCQkJCWluc3QuZHBEaXYuaGlkZSggc2hvd0FuaW0sICQuZGF0ZXBpY2tlci5fZ2V0KCBpbnN0LCAic2hvd09wdGlvbnMiICksIGR1cmF0aW9uLCBwb3N0UHJvY2VzcyApOwoJCQl9IGVsc2UgewoJCQkJaW5zdC5kcERpdlsgKCBzaG93QW5pbSA9PT0gInNsaWRlRG93biIgPyAic2xpZGVVcCIgOgoJCQkJCSggc2hvd0FuaW0gPT09ICJmYWRlSW4iID8gImZhZGVPdXQiIDogImhpZGUiICkgKSBdKCAoIHNob3dBbmltID8gZHVyYXRpb24gOiBudWxsICksIHBvc3RQcm9jZXNzICk7CgkJCX0KCgkJCWlmICggIXNob3dBbmltICkgewoJCQkJcG9zdFByb2Nlc3MoKTsKCQkJfQoJCQl0aGlzLl9kYXRlcGlja2VyU2hvd2luZyA9IGZhbHNlOwoKCQkJb25DbG9zZSA9IHRoaXMuX2dldCggaW5zdCwgIm9uQ2xvc2UiICk7CgkJCWlmICggb25DbG9zZSApIHsKCQkJCW9uQ2xvc2UuYXBwbHkoICggaW5zdC5pbnB1dCA/IGluc3QuaW5wdXRbIDAgXSA6IG51bGwgKSwgWyAoIGluc3QuaW5wdXQgPyBpbnN0LmlucHV0LnZhbCgpIDogIiIgKSwgaW5zdCBdICk7CgkJCX0KCgkJCXRoaXMuX2xhc3RJbnB1dCA9IG51bGw7CgkJCWlmICggdGhpcy5faW5EaWFsb2cgKSB7CgkJCQl0aGlzLl9kaWFsb2dJbnB1dC5jc3MoIHsgcG9zaXRpb246ICJhYnNvbHV0ZSIsIGxlZnQ6ICIwIiwgdG9wOiAiLTEwMHB4IiB9ICk7CgkJCQlpZiAoICQuYmxvY2tVSSApIHsKCQkJCQkkLnVuYmxvY2tVSSgpOwoJCQkJCSQoICJib2R5IiApLmFwcGVuZCggdGhpcy5kcERpdiApOwoJCQkJfQoJCQl9CgkJCXRoaXMuX2luRGlhbG9nID0gZmFsc2U7CgkJfQoJfSwKCgkvKiBUaWR5IHVwIGFmdGVyIGEgZGlhbG9nIGRpc3BsYXkuICovCglfdGlkeURpYWxvZzogZnVuY3Rpb24oIGluc3QgKSB7CgkJaW5zdC5kcERpdi5yZW1vdmVDbGFzcyggdGhpcy5fZGlhbG9nQ2xhc3MgKS5vZmYoICIudWktZGF0ZXBpY2tlci1jYWxlbmRhciIgKTsKCX0sCgoJLyogQ2xvc2UgZGF0ZSBwaWNrZXIgaWYgY2xpY2tlZCBlbHNld2hlcmUuICovCglfY2hlY2tFeHRlcm5hbENsaWNrOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJaWYgKCAhJC5kYXRlcGlja2VyLl9jdXJJbnN0ICkgewoJCQlyZXR1cm47CgkJfQoKCQl2YXIgJHRhcmdldCA9ICQoIGV2ZW50LnRhcmdldCApLAoJCQlpbnN0ID0gJC5kYXRlcGlja2VyLl9nZXRJbnN0KCAkdGFyZ2V0WyAwIF0gKTsKCgkJaWYgKCAoICggJHRhcmdldFsgMCBdLmlkICE9PSAkLmRhdGVwaWNrZXIuX21haW5EaXZJZCAmJgoJCQkJJHRhcmdldC5wYXJlbnRzKCAiIyIgKyAkLmRhdGVwaWNrZXIuX21haW5EaXZJZCApLmxlbmd0aCA9PT0gMCAmJgoJCQkJISR0YXJnZXQuaGFzQ2xhc3MoICQuZGF0ZXBpY2tlci5tYXJrZXJDbGFzc05hbWUgKSAmJgoJCQkJISR0YXJnZXQuY2xvc2VzdCggIi4iICsgJC5kYXRlcGlja2VyLl90cmlnZ2VyQ2xhc3MgKS5sZW5ndGggJiYKCQkJCSQuZGF0ZXBpY2tlci5fZGF0ZXBpY2tlclNob3dpbmcgJiYgISggJC5kYXRlcGlja2VyLl9pbkRpYWxvZyAmJiAkLmJsb2NrVUkgKSApICkgfHwKCQkJKCAkdGFyZ2V0Lmhhc0NsYXNzKCAkLmRhdGVwaWNrZXIubWFya2VyQ2xhc3NOYW1lICkgJiYgJC5kYXRlcGlja2VyLl9jdXJJbnN0ICE9PSBpbnN0ICkgKSB7CgkJCQkkLmRhdGVwaWNrZXIuX2hpZGVEYXRlcGlja2VyKCk7CgkJfQoJfSwKCgkvKiBBZGp1c3Qgb25lIG9mIHRoZSBkYXRlIHN1Yi1maWVsZHMuICovCglfYWRqdXN0RGF0ZTogZnVuY3Rpb24oIGlkLCBvZmZzZXQsIHBlcmlvZCApIHsKCQl2YXIgdGFyZ2V0ID0gJCggaWQgKSwKCQkJaW5zdCA9IHRoaXMuX2dldEluc3QoIHRhcmdldFsgMCBdICk7CgoJCWlmICggdGhpcy5faXNEaXNhYmxlZERhdGVwaWNrZXIoIHRhcmdldFsgMCBdICkgKSB7CgkJCXJldHVybjsKCQl9CgkJdGhpcy5fYWRqdXN0SW5zdERhdGUoIGluc3QsIG9mZnNldCArCgkJCSggcGVyaW9kID09PSAiTSIgPyB0aGlzLl9nZXQoIGluc3QsICJzaG93Q3VycmVudEF0UG9zIiApIDogMCApLCAvLyB1bmRvIHBvc2l0aW9uaW5nCgkJCXBlcmlvZCApOwoJCXRoaXMuX3VwZGF0ZURhdGVwaWNrZXIoIGluc3QgKTsKCX0sCgoJLyogQWN0aW9uIGZvciBjdXJyZW50IGxpbmsuICovCglfZ290b1RvZGF5OiBmdW5jdGlvbiggaWQgKSB7CgkJdmFyIGRhdGUsCgkJCXRhcmdldCA9ICQoIGlkICksCgkJCWluc3QgPSB0aGlzLl9nZXRJbnN0KCB0YXJnZXRbIDAgXSApOwoKCQlpZiAoIHRoaXMuX2dldCggaW5zdCwgImdvdG9DdXJyZW50IiApICYmIGluc3QuY3VycmVudERheSApIHsKCQkJaW5zdC5zZWxlY3RlZERheSA9IGluc3QuY3VycmVudERheTsKCQkJaW5zdC5kcmF3TW9udGggPSBpbnN0LnNlbGVjdGVkTW9udGggPSBpbnN0LmN1cnJlbnRNb250aDsKCQkJaW5zdC5kcmF3WWVhciA9IGluc3Quc2VsZWN0ZWRZZWFyID0gaW5zdC5jdXJyZW50WWVhcjsKCQl9IGVsc2UgewoJCQlkYXRlID0gbmV3IERhdGUoKTsKCQkJaW5zdC5zZWxlY3RlZERheSA9IGRhdGUuZ2V0RGF0ZSgpOwoJCQlpbnN0LmRyYXdNb250aCA9IGluc3Quc2VsZWN0ZWRNb250aCA9IGRhdGUuZ2V0TW9udGgoKTsKCQkJaW5zdC5kcmF3WWVhciA9IGluc3Quc2VsZWN0ZWRZZWFyID0gZGF0ZS5nZXRGdWxsWWVhcigpOwoJCX0KCQl0aGlzLl9ub3RpZnlDaGFuZ2UoIGluc3QgKTsKCQl0aGlzLl9hZGp1c3REYXRlKCB0YXJnZXQgKTsKCX0sCgoJLyogQWN0aW9uIGZvciBzZWxlY3RpbmcgYSBuZXcgbW9udGgveWVhci4gKi8KCV9zZWxlY3RNb250aFllYXI6IGZ1bmN0aW9uKCBpZCwgc2VsZWN0LCBwZXJpb2QgKSB7CgkJdmFyIHRhcmdldCA9ICQoIGlkICksCgkJCWluc3QgPSB0aGlzLl9nZXRJbnN0KCB0YXJnZXRbIDAgXSApOwoKCQlpbnN0WyAic2VsZWN0ZWQiICsgKCBwZXJpb2QgPT09ICJNIiA/ICJNb250aCIgOiAiWWVhciIgKSBdID0KCQlpbnN0WyAiZHJhdyIgKyAoIHBlcmlvZCA9PT0gIk0iID8gIk1vbnRoIiA6ICJZZWFyIiApIF0gPQoJCQlwYXJzZUludCggc2VsZWN0Lm9wdGlvbnNbIHNlbGVjdC5zZWxlY3RlZEluZGV4IF0udmFsdWUsIDEwICk7CgoJCXRoaXMuX25vdGlmeUNoYW5nZSggaW5zdCApOwoJCXRoaXMuX2FkanVzdERhdGUoIHRhcmdldCApOwoJfSwKCgkvKiBBY3Rpb24gZm9yIHNlbGVjdGluZyBhIGRheS4gKi8KCV9zZWxlY3REYXk6IGZ1bmN0aW9uKCBpZCwgbW9udGgsIHllYXIsIHRkICkgewoJCXZhciBpbnN0LAoJCQl0YXJnZXQgPSAkKCBpZCApOwoKCQlpZiAoICQoIHRkICkuaGFzQ2xhc3MoIHRoaXMuX3Vuc2VsZWN0YWJsZUNsYXNzICkgfHwgdGhpcy5faXNEaXNhYmxlZERhdGVwaWNrZXIoIHRhcmdldFsgMCBdICkgKSB7CgkJCXJldHVybjsKCQl9CgoJCWluc3QgPSB0aGlzLl9nZXRJbnN0KCB0YXJnZXRbIDAgXSApOwoJCWluc3Quc2VsZWN0ZWREYXkgPSBpbnN0LmN1cnJlbnREYXkgPSAkKCAiYSIsIHRkICkuaHRtbCgpOwoJCWluc3Quc2VsZWN0ZWRNb250aCA9IGluc3QuY3VycmVudE1vbnRoID0gbW9udGg7CgkJaW5zdC5zZWxlY3RlZFllYXIgPSBpbnN0LmN1cnJlbnRZZWFyID0geWVhcjsKCQl0aGlzLl9zZWxlY3REYXRlKCBpZCwgdGhpcy5fZm9ybWF0RGF0ZSggaW5zdCwKCQkJaW5zdC5jdXJyZW50RGF5LCBpbnN0LmN1cnJlbnRNb250aCwgaW5zdC5jdXJyZW50WWVhciApICk7Cgl9LAoKCS8qIEVyYXNlIHRoZSBpbnB1dCBmaWVsZCBhbmQgaGlkZSB0aGUgZGF0ZSBwaWNrZXIuICovCglfY2xlYXJEYXRlOiBmdW5jdGlvbiggaWQgKSB7CgkJdmFyIHRhcmdldCA9ICQoIGlkICk7CgkJdGhpcy5fc2VsZWN0RGF0ZSggdGFyZ2V0LCAiIiApOwoJfSwKCgkvKiBVcGRhdGUgdGhlIGlucHV0IGZpZWxkIHdpdGggdGhlIHNlbGVjdGVkIGRhdGUuICovCglfc2VsZWN0RGF0ZTogZnVuY3Rpb24oIGlkLCBkYXRlU3RyICkgewoJCXZhciBvblNlbGVjdCwKCQkJdGFyZ2V0ID0gJCggaWQgKSwKCQkJaW5zdCA9IHRoaXMuX2dldEluc3QoIHRhcmdldFsgMCBdICk7CgoJCWRhdGVTdHIgPSAoIGRhdGVTdHIgIT0gbnVsbCA/IGRhdGVTdHIgOiB0aGlzLl9mb3JtYXREYXRlKCBpbnN0ICkgKTsKCQlpZiAoIGluc3QuaW5wdXQgKSB7CgkJCWluc3QuaW5wdXQudmFsKCBkYXRlU3RyICk7CgkJfQoJCXRoaXMuX3VwZGF0ZUFsdGVybmF0ZSggaW5zdCApOwoKCQlvblNlbGVjdCA9IHRoaXMuX2dldCggaW5zdCwgIm9uU2VsZWN0IiApOwoJCWlmICggb25TZWxlY3QgKSB7CgkJCW9uU2VsZWN0LmFwcGx5KCAoIGluc3QuaW5wdXQgPyBpbnN0LmlucHV0WyAwIF0gOiBudWxsICksIFsgZGF0ZVN0ciwgaW5zdCBdICk7ICAvLyB0cmlnZ2VyIGN1c3RvbSBjYWxsYmFjawoJCX0gZWxzZSBpZiAoIGluc3QuaW5wdXQgKSB7CgkJCWluc3QuaW5wdXQudHJpZ2dlciggImNoYW5nZSIgKTsgLy8gZmlyZSB0aGUgY2hhbmdlIGV2ZW50CgkJfQoKCQlpZiAoIGluc3QuaW5saW5lICkgewoJCQl0aGlzLl91cGRhdGVEYXRlcGlja2VyKCBpbnN0ICk7CgkJfSBlbHNlIHsKCQkJdGhpcy5faGlkZURhdGVwaWNrZXIoKTsKCQkJdGhpcy5fbGFzdElucHV0ID0gaW5zdC5pbnB1dFsgMCBdOwoJCQlpZiAoIHR5cGVvZiggaW5zdC5pbnB1dFsgMCBdICkgIT09ICJvYmplY3QiICkgewoJCQkJaW5zdC5pbnB1dC50cmlnZ2VyKCAiZm9jdXMiICk7IC8vIHJlc3RvcmUgZm9jdXMKCQkJfQoJCQl0aGlzLl9sYXN0SW5wdXQgPSBudWxsOwoJCX0KCX0sCgoJLyogVXBkYXRlIGFueSBhbHRlcm5hdGUgZmllbGQgdG8gc3luY2hyb25pc2Ugd2l0aCB0aGUgbWFpbiBmaWVsZC4gKi8KCV91cGRhdGVBbHRlcm5hdGU6IGZ1bmN0aW9uKCBpbnN0ICkgewoJCXZhciBhbHRGb3JtYXQsIGRhdGUsIGRhdGVTdHIsCgkJCWFsdEZpZWxkID0gdGhpcy5fZ2V0KCBpbnN0LCAiYWx0RmllbGQiICk7CgoJCWlmICggYWx0RmllbGQgKSB7IC8vIHVwZGF0ZSBhbHRlcm5hdGUgZmllbGQgdG9vCgkJCWFsdEZvcm1hdCA9IHRoaXMuX2dldCggaW5zdCwgImFsdEZvcm1hdCIgKSB8fCB0aGlzLl9nZXQoIGluc3QsICJkYXRlRm9ybWF0IiApOwoJCQlkYXRlID0gdGhpcy5fZ2V0RGF0ZSggaW5zdCApOwoJCQlkYXRlU3RyID0gdGhpcy5mb3JtYXREYXRlKCBhbHRGb3JtYXQsIGRhdGUsIHRoaXMuX2dldEZvcm1hdENvbmZpZyggaW5zdCApICk7CgkJCSQoIGFsdEZpZWxkICkudmFsKCBkYXRlU3RyICk7CgkJfQoJfSwKCgkvKiBTZXQgYXMgYmVmb3JlU2hvd0RheSBmdW5jdGlvbiB0byBwcmV2ZW50IHNlbGVjdGlvbiBvZiB3ZWVrZW5kcy4KCSAqIEBwYXJhbSAgZGF0ZSAgRGF0ZSAtIHRoZSBkYXRlIHRvIGN1c3RvbWlzZQoJICogQHJldHVybiBbYm9vbGVhbiwgc3RyaW5nXSAtIGlzIHRoaXMgZGF0ZSBzZWxlY3RhYmxlPywgd2hhdCBpcyBpdHMgQ1NTIGNsYXNzPwoJICovCglub1dlZWtlbmRzOiBmdW5jdGlvbiggZGF0ZSApIHsKCQl2YXIgZGF5ID0gZGF0ZS5nZXREYXkoKTsKCQlyZXR1cm4gWyAoIGRheSA+IDAgJiYgZGF5IDwgNiApLCAiIiBdOwoJfSwKCgkvKiBTZXQgYXMgY2FsY3VsYXRlV2VlayB0byBkZXRlcm1pbmUgdGhlIHdlZWsgb2YgdGhlIHllYXIgYmFzZWQgb24gdGhlIElTTyA4NjAxIGRlZmluaXRpb24uCgkgKiBAcGFyYW0gIGRhdGUgIERhdGUgLSB0aGUgZGF0ZSB0byBnZXQgdGhlIHdlZWsgZm9yCgkgKiBAcmV0dXJuICBudW1iZXIgLSB0aGUgbnVtYmVyIG9mIHRoZSB3ZWVrIHdpdGhpbiB0aGUgeWVhciB0aGF0IGNvbnRhaW5zIHRoaXMgZGF0ZQoJICovCglpc284NjAxV2VlazogZnVuY3Rpb24oIGRhdGUgKSB7CgkJdmFyIHRpbWUsCgkJCWNoZWNrRGF0ZSA9IG5ldyBEYXRlKCBkYXRlLmdldFRpbWUoKSApOwoKCQkvLyBGaW5kIFRodXJzZGF5IG9mIHRoaXMgd2VlayBzdGFydGluZyBvbiBNb25kYXkKCQljaGVja0RhdGUuc2V0RGF0ZSggY2hlY2tEYXRlLmdldERhdGUoKSArIDQgLSAoIGNoZWNrRGF0ZS5nZXREYXkoKSB8fCA3ICkgKTsKCgkJdGltZSA9IGNoZWNrRGF0ZS5nZXRUaW1lKCk7CgkJY2hlY2tEYXRlLnNldE1vbnRoKCAwICk7IC8vIENvbXBhcmUgd2l0aCBKYW4gMQoJCWNoZWNrRGF0ZS5zZXREYXRlKCAxICk7CgkJcmV0dXJuIE1hdGguZmxvb3IoIE1hdGgucm91bmQoICggdGltZSAtIGNoZWNrRGF0ZSApIC8gODY0MDAwMDAgKSAvIDcgKSArIDE7Cgl9LAoKCS8qIFBhcnNlIGEgc3RyaW5nIHZhbHVlIGludG8gYSBkYXRlIG9iamVjdC4KCSAqIFNlZSBmb3JtYXREYXRlIGJlbG93IGZvciB0aGUgcG9zc2libGUgZm9ybWF0cy4KCSAqCgkgKiBAcGFyYW0gIGZvcm1hdCBzdHJpbmcgLSB0aGUgZXhwZWN0ZWQgZm9ybWF0IG9mIHRoZSBkYXRlCgkgKiBAcGFyYW0gIHZhbHVlIHN0cmluZyAtIHRoZSBkYXRlIGluIHRoZSBhYm92ZSBmb3JtYXQKCSAqIEBwYXJhbSAgc2V0dGluZ3MgT2JqZWN0IC0gYXR0cmlidXRlcyBpbmNsdWRlOgoJICoJCQkJCXNob3J0WWVhckN1dG9mZiAgbnVtYmVyIC0gdGhlIGN1dG9mZiB5ZWFyIGZvciBkZXRlcm1pbmluZyB0aGUgY2VudHVyeSAob3B0aW9uYWwpCgkgKgkJCQkJZGF5TmFtZXNTaG9ydAlzdHJpbmdbN10gLSBhYmJyZXZpYXRlZCBuYW1lcyBvZiB0aGUgZGF5cyBmcm9tIFN1bmRheSAob3B0aW9uYWwpCgkgKgkJCQkJZGF5TmFtZXMJCXN0cmluZ1s3XSAtIG5hbWVzIG9mIHRoZSBkYXlzIGZyb20gU3VuZGF5IChvcHRpb25hbCkKCSAqCQkJCQltb250aE5hbWVzU2hvcnQgc3RyaW5nWzEyXSAtIGFiYnJldmlhdGVkIG5hbWVzIG9mIHRoZSBtb250aHMgKG9wdGlvbmFsKQoJICoJCQkJCW1vbnRoTmFtZXMJCXN0cmluZ1sxMl0gLSBuYW1lcyBvZiB0aGUgbW9udGhzIChvcHRpb25hbCkKCSAqIEByZXR1cm4gIERhdGUgLSB0aGUgZXh0cmFjdGVkIGRhdGUgdmFsdWUgb3IgbnVsbCBpZiB2YWx1ZSBpcyBibGFuawoJICovCglwYXJzZURhdGU6IGZ1bmN0aW9uKCBmb3JtYXQsIHZhbHVlLCBzZXR0aW5ncyApIHsKCQlpZiAoIGZvcm1hdCA9PSBudWxsIHx8IHZhbHVlID09IG51bGwgKSB7CgkJCXRocm93ICJJbnZhbGlkIGFyZ3VtZW50cyI7CgkJfQoKCQl2YWx1ZSA9ICggdHlwZW9mIHZhbHVlID09PSAib2JqZWN0IiA/IHZhbHVlLnRvU3RyaW5nKCkgOiB2YWx1ZSArICIiICk7CgkJaWYgKCB2YWx1ZSA9PT0gIiIgKSB7CgkJCXJldHVybiBudWxsOwoJCX0KCgkJdmFyIGlGb3JtYXQsIGRpbSwgZXh0cmEsCgkJCWlWYWx1ZSA9IDAsCgkJCXNob3J0WWVhckN1dG9mZlRlbXAgPSAoIHNldHRpbmdzID8gc2V0dGluZ3Muc2hvcnRZZWFyQ3V0b2ZmIDogbnVsbCApIHx8IHRoaXMuX2RlZmF1bHRzLnNob3J0WWVhckN1dG9mZiwKCQkJc2hvcnRZZWFyQ3V0b2ZmID0gKCB0eXBlb2Ygc2hvcnRZZWFyQ3V0b2ZmVGVtcCAhPT0gInN0cmluZyIgPyBzaG9ydFllYXJDdXRvZmZUZW1wIDoKCQkJCW5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKSAlIDEwMCArIHBhcnNlSW50KCBzaG9ydFllYXJDdXRvZmZUZW1wLCAxMCApICksCgkJCWRheU5hbWVzU2hvcnQgPSAoIHNldHRpbmdzID8gc2V0dGluZ3MuZGF5TmFtZXNTaG9ydCA6IG51bGwgKSB8fCB0aGlzLl9kZWZhdWx0cy5kYXlOYW1lc1Nob3J0LAoJCQlkYXlOYW1lcyA9ICggc2V0dGluZ3MgPyBzZXR0aW5ncy5kYXlOYW1lcyA6IG51bGwgKSB8fCB0aGlzLl9kZWZhdWx0cy5kYXlOYW1lcywKCQkJbW9udGhOYW1lc1Nob3J0ID0gKCBzZXR0aW5ncyA/IHNldHRpbmdzLm1vbnRoTmFtZXNTaG9ydCA6IG51bGwgKSB8fCB0aGlzLl9kZWZhdWx0cy5tb250aE5hbWVzU2hvcnQsCgkJCW1vbnRoTmFtZXMgPSAoIHNldHRpbmdzID8gc2V0dGluZ3MubW9udGhOYW1lcyA6IG51bGwgKSB8fCB0aGlzLl9kZWZhdWx0cy5tb250aE5hbWVzLAoJCQl5ZWFyID0gLTEsCgkJCW1vbnRoID0gLTEsCgkJCWRheSA9IC0xLAoJCQlkb3kgPSAtMSwKCQkJbGl0ZXJhbCA9IGZhbHNlLAoJCQlkYXRlLAoKCQkJLy8gQ2hlY2sgd2hldGhlciBhIGZvcm1hdCBjaGFyYWN0ZXIgaXMgZG91YmxlZAoJCQlsb29rQWhlYWQgPSBmdW5jdGlvbiggbWF0Y2ggKSB7CgkJCQl2YXIgbWF0Y2hlcyA9ICggaUZvcm1hdCArIDEgPCBmb3JtYXQubGVuZ3RoICYmIGZvcm1hdC5jaGFyQXQoIGlGb3JtYXQgKyAxICkgPT09IG1hdGNoICk7CgkJCQlpZiAoIG1hdGNoZXMgKSB7CgkJCQkJaUZvcm1hdCsrOwoJCQkJfQoJCQkJcmV0dXJuIG1hdGNoZXM7CgkJCX0sCgoJCQkvLyBFeHRyYWN0IGEgbnVtYmVyIGZyb20gdGhlIHN0cmluZyB2YWx1ZQoJCQlnZXROdW1iZXIgPSBmdW5jdGlvbiggbWF0Y2ggKSB7CgkJCQl2YXIgaXNEb3VibGVkID0gbG9va0FoZWFkKCBtYXRjaCApLAoJCQkJCXNpemUgPSAoIG1hdGNoID09PSAiQCIgPyAxNCA6ICggbWF0Y2ggPT09ICIhIiA/IDIwIDoKCQkJCQkoIG1hdGNoID09PSAieSIgJiYgaXNEb3VibGVkID8gNCA6ICggbWF0Y2ggPT09ICJvIiA/IDMgOiAyICkgKSApICksCgkJCQkJbWluU2l6ZSA9ICggbWF0Y2ggPT09ICJ5IiA/IHNpemUgOiAxICksCgkJCQkJZGlnaXRzID0gbmV3IFJlZ0V4cCggIl5cXGR7IiArIG1pblNpemUgKyAiLCIgKyBzaXplICsgIn0iICksCgkJCQkJbnVtID0gdmFsdWUuc3Vic3RyaW5nKCBpVmFsdWUgKS5tYXRjaCggZGlnaXRzICk7CgkJCQlpZiAoICFudW0gKSB7CgkJCQkJdGhyb3cgIk1pc3NpbmcgbnVtYmVyIGF0IHBvc2l0aW9uICIgKyBpVmFsdWU7CgkJCQl9CgkJCQlpVmFsdWUgKz0gbnVtWyAwIF0ubGVuZ3RoOwoJCQkJcmV0dXJuIHBhcnNlSW50KCBudW1bIDAgXSwgMTAgKTsKCQkJfSwKCgkJCS8vIEV4dHJhY3QgYSBuYW1lIGZyb20gdGhlIHN0cmluZyB2YWx1ZSBhbmQgY29udmVydCB0byBhbiBpbmRleAoJCQlnZXROYW1lID0gZnVuY3Rpb24oIG1hdGNoLCBzaG9ydE5hbWVzLCBsb25nTmFtZXMgKSB7CgkJCQl2YXIgaW5kZXggPSAtMSwKCQkJCQluYW1lcyA9ICQubWFwKCBsb29rQWhlYWQoIG1hdGNoICkgPyBsb25nTmFtZXMgOiBzaG9ydE5hbWVzLCBmdW5jdGlvbiggdiwgayApIHsKCQkJCQkJcmV0dXJuIFsgWyBrLCB2IF0gXTsKCQkJCQl9ICkuc29ydCggZnVuY3Rpb24oIGEsIGIgKSB7CgkJCQkJCXJldHVybiAtKCBhWyAxIF0ubGVuZ3RoIC0gYlsgMSBdLmxlbmd0aCApOwoJCQkJCX0gKTsKCgkJCQkkLmVhY2goIG5hbWVzLCBmdW5jdGlvbiggaSwgcGFpciApIHsKCQkJCQl2YXIgbmFtZSA9IHBhaXJbIDEgXTsKCQkJCQlpZiAoIHZhbHVlLnN1YnN0ciggaVZhbHVlLCBuYW1lLmxlbmd0aCApLnRvTG93ZXJDYXNlKCkgPT09IG5hbWUudG9Mb3dlckNhc2UoKSApIHsKCQkJCQkJaW5kZXggPSBwYWlyWyAwIF07CgkJCQkJCWlWYWx1ZSArPSBuYW1lLmxlbmd0aDsKCQkJCQkJcmV0dXJuIGZhbHNlOwoJCQkJCX0KCQkJCX0gKTsKCQkJCWlmICggaW5kZXggIT09IC0xICkgewoJCQkJCXJldHVybiBpbmRleCArIDE7CgkJCQl9IGVsc2UgewoJCQkJCXRocm93ICJVbmtub3duIG5hbWUgYXQgcG9zaXRpb24gIiArIGlWYWx1ZTsKCQkJCX0KCQkJfSwKCgkJCS8vIENvbmZpcm0gdGhhdCBhIGxpdGVyYWwgY2hhcmFjdGVyIG1hdGNoZXMgdGhlIHN0cmluZyB2YWx1ZQoJCQljaGVja0xpdGVyYWwgPSBmdW5jdGlvbigpIHsKCQkJCWlmICggdmFsdWUuY2hhckF0KCBpVmFsdWUgKSAhPT0gZm9ybWF0LmNoYXJBdCggaUZvcm1hdCApICkgewoJCQkJCXRocm93ICJVbmV4cGVjdGVkIGxpdGVyYWwgYXQgcG9zaXRpb24gIiArIGlWYWx1ZTsKCQkJCX0KCQkJCWlWYWx1ZSsrOwoJCQl9OwoKCQlmb3IgKCBpRm9ybWF0ID0gMDsgaUZvcm1hdCA8IGZvcm1hdC5sZW5ndGg7IGlGb3JtYXQrKyApIHsKCQkJaWYgKCBsaXRlcmFsICkgewoJCQkJaWYgKCBmb3JtYXQuY2hhckF0KCBpRm9ybWF0ICkgPT09ICInIiAmJiAhbG9va0FoZWFkKCAiJyIgKSApIHsKCQkJCQlsaXRlcmFsID0gZmFsc2U7CgkJCQl9IGVsc2UgewoJCQkJCWNoZWNrTGl0ZXJhbCgpOwoJCQkJfQoJCQl9IGVsc2UgewoJCQkJc3dpdGNoICggZm9ybWF0LmNoYXJBdCggaUZvcm1hdCApICkgewoJCQkJCWNhc2UgImQiOgoJCQkJCQlkYXkgPSBnZXROdW1iZXIoICJkIiApOwoJCQkJCQlicmVhazsKCQkJCQljYXNlICJEIjoKCQkJCQkJZ2V0TmFtZSggIkQiLCBkYXlOYW1lc1Nob3J0LCBkYXlOYW1lcyApOwoJCQkJCQlicmVhazsKCQkJCQljYXNlICJvIjoKCQkJCQkJZG95ID0gZ2V0TnVtYmVyKCAibyIgKTsKCQkJCQkJYnJlYWs7CgkJCQkJY2FzZSAibSI6CgkJCQkJCW1vbnRoID0gZ2V0TnVtYmVyKCAibSIgKTsKCQkJCQkJYnJlYWs7CgkJCQkJY2FzZSAiTSI6CgkJCQkJCW1vbnRoID0gZ2V0TmFtZSggIk0iLCBtb250aE5hbWVzU2hvcnQsIG1vbnRoTmFtZXMgKTsKCQkJCQkJYnJlYWs7CgkJCQkJY2FzZSAieSI6CgkJCQkJCXllYXIgPSBnZXROdW1iZXIoICJ5IiApOwoJCQkJCQlicmVhazsKCQkJCQljYXNlICJAIjoKCQkJCQkJZGF0ZSA9IG5ldyBEYXRlKCBnZXROdW1iZXIoICJAIiApICk7CgkJCQkJCXllYXIgPSBkYXRlLmdldEZ1bGxZZWFyKCk7CgkJCQkJCW1vbnRoID0gZGF0ZS5nZXRNb250aCgpICsgMTsKCQkJCQkJZGF5ID0gZGF0ZS5nZXREYXRlKCk7CgkJCQkJCWJyZWFrOwoJCQkJCWNhc2UgIiEiOgoJCQkJCQlkYXRlID0gbmV3IERhdGUoICggZ2V0TnVtYmVyKCAiISIgKSAtIHRoaXMuX3RpY2tzVG8xOTcwICkgLyAxMDAwMCApOwoJCQkJCQl5ZWFyID0gZGF0ZS5nZXRGdWxsWWVhcigpOwoJCQkJCQltb250aCA9IGRhdGUuZ2V0TW9udGgoKSArIDE7CgkJCQkJCWRheSA9IGRhdGUuZ2V0RGF0ZSgpOwoJCQkJCQlicmVhazsKCQkJCQljYXNlICInIjoKCQkJCQkJaWYgKCBsb29rQWhlYWQoICInIiApICkgewoJCQkJCQkJY2hlY2tMaXRlcmFsKCk7CgkJCQkJCX0gZWxzZSB7CgkJCQkJCQlsaXRlcmFsID0gdHJ1ZTsKCQkJCQkJfQoJCQkJCQlicmVhazsKCQkJCQlkZWZhdWx0OgoJCQkJCQljaGVja0xpdGVyYWwoKTsKCQkJCX0KCQkJfQoJCX0KCgkJaWYgKCBpVmFsdWUgPCB2YWx1ZS5sZW5ndGggKSB7CgkJCWV4dHJhID0gdmFsdWUuc3Vic3RyKCBpVmFsdWUgKTsKCQkJaWYgKCAhL15ccysvLnRlc3QoIGV4dHJhICkgKSB7CgkJCQl0aHJvdyAiRXh0cmEvdW5wYXJzZWQgY2hhcmFjdGVycyBmb3VuZCBpbiBkYXRlOiAiICsgZXh0cmE7CgkJCX0KCQl9CgoJCWlmICggeWVhciA9PT0gLTEgKSB7CgkJCXllYXIgPSBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCk7CgkJfSBlbHNlIGlmICggeWVhciA8IDEwMCApIHsKCQkJeWVhciArPSBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCkgLSBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCkgJSAxMDAgKwoJCQkJKCB5ZWFyIDw9IHNob3J0WWVhckN1dG9mZiA/IDAgOiAtMTAwICk7CgkJfQoKCQlpZiAoIGRveSA+IC0xICkgewoJCQltb250aCA9IDE7CgkJCWRheSA9IGRveTsKCQkJZG8gewoJCQkJZGltID0gdGhpcy5fZ2V0RGF5c0luTW9udGgoIHllYXIsIG1vbnRoIC0gMSApOwoJCQkJaWYgKCBkYXkgPD0gZGltICkgewoJCQkJCWJyZWFrOwoJCQkJfQoJCQkJbW9udGgrKzsKCQkJCWRheSAtPSBkaW07CgkJCX0gd2hpbGUgKCB0cnVlICk7CgkJfQoKCQlkYXRlID0gdGhpcy5fZGF5bGlnaHRTYXZpbmdBZGp1c3QoIG5ldyBEYXRlKCB5ZWFyLCBtb250aCAtIDEsIGRheSApICk7CgkJaWYgKCBkYXRlLmdldEZ1bGxZZWFyKCkgIT09IHllYXIgfHwgZGF0ZS5nZXRNb250aCgpICsgMSAhPT0gbW9udGggfHwgZGF0ZS5nZXREYXRlKCkgIT09IGRheSApIHsKCQkJdGhyb3cgIkludmFsaWQgZGF0ZSI7IC8vIEUuZy4gMzEvMDIvMDAKCQl9CgkJcmV0dXJuIGRhdGU7Cgl9LAoKCS8qIFN0YW5kYXJkIGRhdGUgZm9ybWF0cy4gKi8KCUFUT006ICJ5eS1tbS1kZCIsIC8vIFJGQyAzMzM5IChJU08gODYwMSkKCUNPT0tJRTogIkQsIGRkIE0geXkiLAoJSVNPXzg2MDE6ICJ5eS1tbS1kZCIsCglSRkNfODIyOiAiRCwgZCBNIHkiLAoJUkZDXzg1MDogIkRELCBkZC1NLXkiLAoJUkZDXzEwMzY6ICJELCBkIE0geSIsCglSRkNfMTEyMzogIkQsIGQgTSB5eSIsCglSRkNfMjgyMjogIkQsIGQgTSB5eSIsCglSU1M6ICJELCBkIE0geSIsIC8vIFJGQyA4MjIKCVRJQ0tTOiAiISIsCglUSU1FU1RBTVA6ICJAIiwKCVczQzogInl5LW1tLWRkIiwgLy8gSVNPIDg2MDEKCglfdGlja3NUbzE5NzA6ICggKCAoIDE5NzAgLSAxICkgKiAzNjUgKyBNYXRoLmZsb29yKCAxOTcwIC8gNCApIC0gTWF0aC5mbG9vciggMTk3MCAvIDEwMCApICsKCQlNYXRoLmZsb29yKCAxOTcwIC8gNDAwICkgKSAqIDI0ICogNjAgKiA2MCAqIDEwMDAwMDAwICksCgoJLyogRm9ybWF0IGEgZGF0ZSBvYmplY3QgaW50byBhIHN0cmluZyB2YWx1ZS4KCSAqIFRoZSBmb3JtYXQgY2FuIGJlIGNvbWJpbmF0aW9ucyBvZiB0aGUgZm9sbG93aW5nOgoJICogZCAgLSBkYXkgb2YgbW9udGggKG5vIGxlYWRpbmcgemVybykKCSAqIGRkIC0gZGF5IG9mIG1vbnRoICh0d28gZGlnaXQpCgkgKiBvICAtIGRheSBvZiB5ZWFyIChubyBsZWFkaW5nIHplcm9zKQoJICogb28gLSBkYXkgb2YgeWVhciAodGhyZWUgZGlnaXQpCgkgKiBEICAtIGRheSBuYW1lIHNob3J0CgkgKiBERCAtIGRheSBuYW1lIGxvbmcKCSAqIG0gIC0gbW9udGggb2YgeWVhciAobm8gbGVhZGluZyB6ZXJvKQoJICogbW0gLSBtb250aCBvZiB5ZWFyICh0d28gZGlnaXQpCgkgKiBNICAtIG1vbnRoIG5hbWUgc2hvcnQKCSAqIE1NIC0gbW9udGggbmFtZSBsb25nCgkgKiB5ICAtIHllYXIgKHR3byBkaWdpdCkKCSAqIHl5IC0geWVhciAoZm91ciBkaWdpdCkKCSAqIEAgLSBVbml4IHRpbWVzdGFtcCAobXMgc2luY2UgMDEvMDEvMTk3MCkKCSAqICEgLSBXaW5kb3dzIHRpY2tzICgxMDBucyBzaW5jZSAwMS8wMS8wMDAxKQoJICogIi4uLiIgLSBsaXRlcmFsIHRleHQKCSAqICcnIC0gc2luZ2xlIHF1b3RlCgkgKgoJICogQHBhcmFtICBmb3JtYXQgc3RyaW5nIC0gdGhlIGRlc2lyZWQgZm9ybWF0IG9mIHRoZSBkYXRlCgkgKiBAcGFyYW0gIGRhdGUgRGF0ZSAtIHRoZSBkYXRlIHZhbHVlIHRvIGZvcm1hdAoJICogQHBhcmFtICBzZXR0aW5ncyBPYmplY3QgLSBhdHRyaWJ1dGVzIGluY2x1ZGU6CgkgKgkJCQkJZGF5TmFtZXNTaG9ydAlzdHJpbmdbN10gLSBhYmJyZXZpYXRlZCBuYW1lcyBvZiB0aGUgZGF5cyBmcm9tIFN1bmRheSAob3B0aW9uYWwpCgkgKgkJCQkJZGF5TmFtZXMJCXN0cmluZ1s3XSAtIG5hbWVzIG9mIHRoZSBkYXlzIGZyb20gU3VuZGF5IChvcHRpb25hbCkKCSAqCQkJCQltb250aE5hbWVzU2hvcnQgc3RyaW5nWzEyXSAtIGFiYnJldmlhdGVkIG5hbWVzIG9mIHRoZSBtb250aHMgKG9wdGlvbmFsKQoJICoJCQkJCW1vbnRoTmFtZXMJCXN0cmluZ1sxMl0gLSBuYW1lcyBvZiB0aGUgbW9udGhzIChvcHRpb25hbCkKCSAqIEByZXR1cm4gIHN0cmluZyAtIHRoZSBkYXRlIGluIHRoZSBhYm92ZSBmb3JtYXQKCSAqLwoJZm9ybWF0RGF0ZTogZnVuY3Rpb24oIGZvcm1hdCwgZGF0ZSwgc2V0dGluZ3MgKSB7CgkJaWYgKCAhZGF0ZSApIHsKCQkJcmV0dXJuICIiOwoJCX0KCgkJdmFyIGlGb3JtYXQsCgkJCWRheU5hbWVzU2hvcnQgPSAoIHNldHRpbmdzID8gc2V0dGluZ3MuZGF5TmFtZXNTaG9ydCA6IG51bGwgKSB8fCB0aGlzLl9kZWZhdWx0cy5kYXlOYW1lc1Nob3J0LAoJCQlkYXlOYW1lcyA9ICggc2V0dGluZ3MgPyBzZXR0aW5ncy5kYXlOYW1lcyA6IG51bGwgKSB8fCB0aGlzLl9kZWZhdWx0cy5kYXlOYW1lcywKCQkJbW9udGhOYW1lc1Nob3J0ID0gKCBzZXR0aW5ncyA/IHNldHRpbmdzLm1vbnRoTmFtZXNTaG9ydCA6IG51bGwgKSB8fCB0aGlzLl9kZWZhdWx0cy5tb250aE5hbWVzU2hvcnQsCgkJCW1vbnRoTmFtZXMgPSAoIHNldHRpbmdzID8gc2V0dGluZ3MubW9udGhOYW1lcyA6IG51bGwgKSB8fCB0aGlzLl9kZWZhdWx0cy5tb250aE5hbWVzLAoKCQkJLy8gQ2hlY2sgd2hldGhlciBhIGZvcm1hdCBjaGFyYWN0ZXIgaXMgZG91YmxlZAoJCQlsb29rQWhlYWQgPSBmdW5jdGlvbiggbWF0Y2ggKSB7CgkJCQl2YXIgbWF0Y2hlcyA9ICggaUZvcm1hdCArIDEgPCBmb3JtYXQubGVuZ3RoICYmIGZvcm1hdC5jaGFyQXQoIGlGb3JtYXQgKyAxICkgPT09IG1hdGNoICk7CgkJCQlpZiAoIG1hdGNoZXMgKSB7CgkJCQkJaUZvcm1hdCsrOwoJCQkJfQoJCQkJcmV0dXJuIG1hdGNoZXM7CgkJCX0sCgoJCQkvLyBGb3JtYXQgYSBudW1iZXIsIHdpdGggbGVhZGluZyB6ZXJvIGlmIG5lY2Vzc2FyeQoJCQlmb3JtYXROdW1iZXIgPSBmdW5jdGlvbiggbWF0Y2gsIHZhbHVlLCBsZW4gKSB7CgkJCQl2YXIgbnVtID0gIiIgKyB2YWx1ZTsKCQkJCWlmICggbG9va0FoZWFkKCBtYXRjaCApICkgewoJCQkJCXdoaWxlICggbnVtLmxlbmd0aCA8IGxlbiApIHsKCQkJCQkJbnVtID0gIjAiICsgbnVtOwoJCQkJCX0KCQkJCX0KCQkJCXJldHVybiBudW07CgkJCX0sCgoJCQkvLyBGb3JtYXQgYSBuYW1lLCBzaG9ydCBvciBsb25nIGFzIHJlcXVlc3RlZAoJCQlmb3JtYXROYW1lID0gZnVuY3Rpb24oIG1hdGNoLCB2YWx1ZSwgc2hvcnROYW1lcywgbG9uZ05hbWVzICkgewoJCQkJcmV0dXJuICggbG9va0FoZWFkKCBtYXRjaCApID8gbG9uZ05hbWVzWyB2YWx1ZSBdIDogc2hvcnROYW1lc1sgdmFsdWUgXSApOwoJCQl9LAoJCQlvdXRwdXQgPSAiIiwKCQkJbGl0ZXJhbCA9IGZhbHNlOwoKCQlpZiAoIGRhdGUgKSB7CgkJCWZvciAoIGlGb3JtYXQgPSAwOyBpRm9ybWF0IDwgZm9ybWF0Lmxlbmd0aDsgaUZvcm1hdCsrICkgewoJCQkJaWYgKCBsaXRlcmFsICkgewoJCQkJCWlmICggZm9ybWF0LmNoYXJBdCggaUZvcm1hdCApID09PSAiJyIgJiYgIWxvb2tBaGVhZCggIiciICkgKSB7CgkJCQkJCWxpdGVyYWwgPSBmYWxzZTsKCQkJCQl9IGVsc2UgewoJCQkJCQlvdXRwdXQgKz0gZm9ybWF0LmNoYXJBdCggaUZvcm1hdCApOwoJCQkJCX0KCQkJCX0gZWxzZSB7CgkJCQkJc3dpdGNoICggZm9ybWF0LmNoYXJBdCggaUZvcm1hdCApICkgewoJCQkJCQljYXNlICJkIjoKCQkJCQkJCW91dHB1dCArPSBmb3JtYXROdW1iZXIoICJkIiwgZGF0ZS5nZXREYXRlKCksIDIgKTsKCQkJCQkJCWJyZWFrOwoJCQkJCQljYXNlICJEIjoKCQkJCQkJCW91dHB1dCArPSBmb3JtYXROYW1lKCAiRCIsIGRhdGUuZ2V0RGF5KCksIGRheU5hbWVzU2hvcnQsIGRheU5hbWVzICk7CgkJCQkJCQlicmVhazsKCQkJCQkJY2FzZSAibyI6CgkJCQkJCQlvdXRwdXQgKz0gZm9ybWF0TnVtYmVyKCAibyIsCgkJCQkJCQkJTWF0aC5yb3VuZCggKCBuZXcgRGF0ZSggZGF0ZS5nZXRGdWxsWWVhcigpLCBkYXRlLmdldE1vbnRoKCksIGRhdGUuZ2V0RGF0ZSgpICkuZ2V0VGltZSgpIC0gbmV3IERhdGUoIGRhdGUuZ2V0RnVsbFllYXIoKSwgMCwgMCApLmdldFRpbWUoKSApIC8gODY0MDAwMDAgKSwgMyApOwoJCQkJCQkJYnJlYWs7CgkJCQkJCWNhc2UgIm0iOgoJCQkJCQkJb3V0cHV0ICs9IGZvcm1hdE51bWJlciggIm0iLCBkYXRlLmdldE1vbnRoKCkgKyAxLCAyICk7CgkJCQkJCQlicmVhazsKCQkJCQkJY2FzZSAiTSI6CgkJCQkJCQlvdXRwdXQgKz0gZm9ybWF0TmFtZSggIk0iLCBkYXRlLmdldE1vbnRoKCksIG1vbnRoTmFtZXNTaG9ydCwgbW9udGhOYW1lcyApOwoJCQkJCQkJYnJlYWs7CgkJCQkJCWNhc2UgInkiOgoJCQkJCQkJb3V0cHV0ICs9ICggbG9va0FoZWFkKCAieSIgKSA/IGRhdGUuZ2V0RnVsbFllYXIoKSA6CgkJCQkJCQkJKCBkYXRlLmdldEZ1bGxZZWFyKCkgJSAxMDAgPCAxMCA/ICIwIiA6ICIiICkgKyBkYXRlLmdldEZ1bGxZZWFyKCkgJSAxMDAgKTsKCQkJCQkJCWJyZWFrOwoJCQkJCQljYXNlICJAIjoKCQkJCQkJCW91dHB1dCArPSBkYXRlLmdldFRpbWUoKTsKCQkJCQkJCWJyZWFrOwoJCQkJCQljYXNlICIhIjoKCQkJCQkJCW91dHB1dCArPSBkYXRlLmdldFRpbWUoKSAqIDEwMDAwICsgdGhpcy5fdGlja3NUbzE5NzA7CgkJCQkJCQlicmVhazsKCQkJCQkJY2FzZSAiJyI6CgkJCQkJCQlpZiAoIGxvb2tBaGVhZCggIiciICkgKSB7CgkJCQkJCQkJb3V0cHV0ICs9ICInIjsKCQkJCQkJCX0gZWxzZSB7CgkJCQkJCQkJbGl0ZXJhbCA9IHRydWU7CgkJCQkJCQl9CgkJCQkJCQlicmVhazsKCQkJCQkJZGVmYXVsdDoKCQkJCQkJCW91dHB1dCArPSBmb3JtYXQuY2hhckF0KCBpRm9ybWF0ICk7CgkJCQkJfQoJCQkJfQoJCQl9CgkJfQoJCXJldHVybiBvdXRwdXQ7Cgl9LAoKCS8qIEV4dHJhY3QgYWxsIHBvc3NpYmxlIGNoYXJhY3RlcnMgZnJvbSB0aGUgZGF0ZSBmb3JtYXQuICovCglfcG9zc2libGVDaGFyczogZnVuY3Rpb24oIGZvcm1hdCApIHsKCQl2YXIgaUZvcm1hdCwKCQkJY2hhcnMgPSAiIiwKCQkJbGl0ZXJhbCA9IGZhbHNlLAoKCQkJLy8gQ2hlY2sgd2hldGhlciBhIGZvcm1hdCBjaGFyYWN0ZXIgaXMgZG91YmxlZAoJCQlsb29rQWhlYWQgPSBmdW5jdGlvbiggbWF0Y2ggKSB7CgkJCQl2YXIgbWF0Y2hlcyA9ICggaUZvcm1hdCArIDEgPCBmb3JtYXQubGVuZ3RoICYmIGZvcm1hdC5jaGFyQXQoIGlGb3JtYXQgKyAxICkgPT09IG1hdGNoICk7CgkJCQlpZiAoIG1hdGNoZXMgKSB7CgkJCQkJaUZvcm1hdCsrOwoJCQkJfQoJCQkJcmV0dXJuIG1hdGNoZXM7CgkJCX07CgoJCWZvciAoIGlGb3JtYXQgPSAwOyBpRm9ybWF0IDwgZm9ybWF0Lmxlbmd0aDsgaUZvcm1hdCsrICkgewoJCQlpZiAoIGxpdGVyYWwgKSB7CgkJCQlpZiAoIGZvcm1hdC5jaGFyQXQoIGlGb3JtYXQgKSA9PT0gIiciICYmICFsb29rQWhlYWQoICInIiApICkgewoJCQkJCWxpdGVyYWwgPSBmYWxzZTsKCQkJCX0gZWxzZSB7CgkJCQkJY2hhcnMgKz0gZm9ybWF0LmNoYXJBdCggaUZvcm1hdCApOwoJCQkJfQoJCQl9IGVsc2UgewoJCQkJc3dpdGNoICggZm9ybWF0LmNoYXJBdCggaUZvcm1hdCApICkgewoJCQkJCWNhc2UgImQiOiBjYXNlICJtIjogY2FzZSAieSI6IGNhc2UgIkAiOgoJCQkJCQljaGFycyArPSAiMDEyMzQ1Njc4OSI7CgkJCQkJCWJyZWFrOwoJCQkJCWNhc2UgIkQiOiBjYXNlICJNIjoKCQkJCQkJcmV0dXJuIG51bGw7IC8vIEFjY2VwdCBhbnl0aGluZwoJCQkJCWNhc2UgIiciOgoJCQkJCQlpZiAoIGxvb2tBaGVhZCggIiciICkgKSB7CgkJCQkJCQljaGFycyArPSAiJyI7CgkJCQkJCX0gZWxzZSB7CgkJCQkJCQlsaXRlcmFsID0gdHJ1ZTsKCQkJCQkJfQoJCQkJCQlicmVhazsKCQkJCQlkZWZhdWx0OgoJCQkJCQljaGFycyArPSBmb3JtYXQuY2hhckF0KCBpRm9ybWF0ICk7CgkJCQl9CgkJCX0KCQl9CgkJcmV0dXJuIGNoYXJzOwoJfSwKCgkvKiBHZXQgYSBzZXR0aW5nIHZhbHVlLCBkZWZhdWx0aW5nIGlmIG5lY2Vzc2FyeS4gKi8KCV9nZXQ6IGZ1bmN0aW9uKCBpbnN0LCBuYW1lICkgewoJCXJldHVybiBpbnN0LnNldHRpbmdzWyBuYW1lIF0gIT09IHVuZGVmaW5lZCA/CgkJCWluc3Quc2V0dGluZ3NbIG5hbWUgXSA6IHRoaXMuX2RlZmF1bHRzWyBuYW1lIF07Cgl9LAoKCS8qIFBhcnNlIGV4aXN0aW5nIGRhdGUgYW5kIGluaXRpYWxpc2UgZGF0ZSBwaWNrZXIuICovCglfc2V0RGF0ZUZyb21GaWVsZDogZnVuY3Rpb24oIGluc3QsIG5vRGVmYXVsdCApIHsKCQlpZiAoIGluc3QuaW5wdXQudmFsKCkgPT09IGluc3QubGFzdFZhbCApIHsKCQkJcmV0dXJuOwoJCX0KCgkJdmFyIGRhdGVGb3JtYXQgPSB0aGlzLl9nZXQoIGluc3QsICJkYXRlRm9ybWF0IiApLAoJCQlkYXRlcyA9IGluc3QubGFzdFZhbCA9IGluc3QuaW5wdXQgPyBpbnN0LmlucHV0LnZhbCgpIDogbnVsbCwKCQkJZGVmYXVsdERhdGUgPSB0aGlzLl9nZXREZWZhdWx0RGF0ZSggaW5zdCApLAoJCQlkYXRlID0gZGVmYXVsdERhdGUsCgkJCXNldHRpbmdzID0gdGhpcy5fZ2V0Rm9ybWF0Q29uZmlnKCBpbnN0ICk7CgoJCXRyeSB7CgkJCWRhdGUgPSB0aGlzLnBhcnNlRGF0ZSggZGF0ZUZvcm1hdCwgZGF0ZXMsIHNldHRpbmdzICkgfHwgZGVmYXVsdERhdGU7CgkJfSBjYXRjaCAoIGV2ZW50ICkgewoJCQlkYXRlcyA9ICggbm9EZWZhdWx0ID8gIiIgOiBkYXRlcyApOwoJCX0KCQlpbnN0LnNlbGVjdGVkRGF5ID0gZGF0ZS5nZXREYXRlKCk7CgkJaW5zdC5kcmF3TW9udGggPSBpbnN0LnNlbGVjdGVkTW9udGggPSBkYXRlLmdldE1vbnRoKCk7CgkJaW5zdC5kcmF3WWVhciA9IGluc3Quc2VsZWN0ZWRZZWFyID0gZGF0ZS5nZXRGdWxsWWVhcigpOwoJCWluc3QuY3VycmVudERheSA9ICggZGF0ZXMgPyBkYXRlLmdldERhdGUoKSA6IDAgKTsKCQlpbnN0LmN1cnJlbnRNb250aCA9ICggZGF0ZXMgPyBkYXRlLmdldE1vbnRoKCkgOiAwICk7CgkJaW5zdC5jdXJyZW50WWVhciA9ICggZGF0ZXMgPyBkYXRlLmdldEZ1bGxZZWFyKCkgOiAwICk7CgkJdGhpcy5fYWRqdXN0SW5zdERhdGUoIGluc3QgKTsKCX0sCgoJLyogUmV0cmlldmUgdGhlIGRlZmF1bHQgZGF0ZSBzaG93biBvbiBvcGVuaW5nLiAqLwoJX2dldERlZmF1bHREYXRlOiBmdW5jdGlvbiggaW5zdCApIHsKCQlyZXR1cm4gdGhpcy5fcmVzdHJpY3RNaW5NYXgoIGluc3QsCgkJCXRoaXMuX2RldGVybWluZURhdGUoIGluc3QsIHRoaXMuX2dldCggaW5zdCwgImRlZmF1bHREYXRlIiApLCBuZXcgRGF0ZSgpICkgKTsKCX0sCgoJLyogQSBkYXRlIG1heSBiZSBzcGVjaWZpZWQgYXMgYW4gZXhhY3QgdmFsdWUgb3IgYSByZWxhdGl2ZSBvbmUuICovCglfZGV0ZXJtaW5lRGF0ZTogZnVuY3Rpb24oIGluc3QsIGRhdGUsIGRlZmF1bHREYXRlICkgewoJCXZhciBvZmZzZXROdW1lcmljID0gZnVuY3Rpb24oIG9mZnNldCApIHsKCQkJCXZhciBkYXRlID0gbmV3IERhdGUoKTsKCQkJCWRhdGUuc2V0RGF0ZSggZGF0ZS5nZXREYXRlKCkgKyBvZmZzZXQgKTsKCQkJCXJldHVybiBkYXRlOwoJCQl9LAoJCQlvZmZzZXRTdHJpbmcgPSBmdW5jdGlvbiggb2Zmc2V0ICkgewoJCQkJdHJ5IHsKCQkJCQlyZXR1cm4gJC5kYXRlcGlja2VyLnBhcnNlRGF0ZSggJC5kYXRlcGlja2VyLl9nZXQoIGluc3QsICJkYXRlRm9ybWF0IiApLAoJCQkJCQlvZmZzZXQsICQuZGF0ZXBpY2tlci5fZ2V0Rm9ybWF0Q29uZmlnKCBpbnN0ICkgKTsKCQkJCX0KCQkJCWNhdGNoICggZSApIHsKCgkJCQkJLy8gSWdub3JlCgkJCQl9CgoJCQkJdmFyIGRhdGUgPSAoIG9mZnNldC50b0xvd2VyQ2FzZSgpLm1hdGNoKCAvXmMvICkgPwoJCQkJCSQuZGF0ZXBpY2tlci5fZ2V0RGF0ZSggaW5zdCApIDogbnVsbCApIHx8IG5ldyBEYXRlKCksCgkJCQkJeWVhciA9IGRhdGUuZ2V0RnVsbFllYXIoKSwKCQkJCQltb250aCA9IGRhdGUuZ2V0TW9udGgoKSwKCQkJCQlkYXkgPSBkYXRlLmdldERhdGUoKSwKCQkJCQlwYXR0ZXJuID0gLyhbK1wtXT9bMC05XSspXHMqKGR8RHx3fFd8bXxNfHl8WSk/L2csCgkJCQkJbWF0Y2hlcyA9IHBhdHRlcm4uZXhlYyggb2Zmc2V0ICk7CgoJCQkJd2hpbGUgKCBtYXRjaGVzICkgewoJCQkJCXN3aXRjaCAoIG1hdGNoZXNbIDIgXSB8fCAiZCIgKSB7CgkJCQkJCWNhc2UgImQiIDogY2FzZSAiRCIgOgoJCQkJCQkJZGF5ICs9IHBhcnNlSW50KCBtYXRjaGVzWyAxIF0sIDEwICk7IGJyZWFrOwoJCQkJCQljYXNlICJ3IiA6IGNhc2UgIlciIDoKCQkJCQkJCWRheSArPSBwYXJzZUludCggbWF0Y2hlc1sgMSBdLCAxMCApICogNzsgYnJlYWs7CgkJCQkJCWNhc2UgIm0iIDogY2FzZSAiTSIgOgoJCQkJCQkJbW9udGggKz0gcGFyc2VJbnQoIG1hdGNoZXNbIDEgXSwgMTAgKTsKCQkJCQkJCWRheSA9IE1hdGgubWluKCBkYXksICQuZGF0ZXBpY2tlci5fZ2V0RGF5c0luTW9udGgoIHllYXIsIG1vbnRoICkgKTsKCQkJCQkJCWJyZWFrOwoJCQkJCQljYXNlICJ5IjogY2FzZSAiWSIgOgoJCQkJCQkJeWVhciArPSBwYXJzZUludCggbWF0Y2hlc1sgMSBdLCAxMCApOwoJCQkJCQkJZGF5ID0gTWF0aC5taW4oIGRheSwgJC5kYXRlcGlja2VyLl9nZXREYXlzSW5Nb250aCggeWVhciwgbW9udGggKSApOwoJCQkJCQkJYnJlYWs7CgkJCQkJfQoJCQkJCW1hdGNoZXMgPSBwYXR0ZXJuLmV4ZWMoIG9mZnNldCApOwoJCQkJfQoJCQkJcmV0dXJuIG5ldyBEYXRlKCB5ZWFyLCBtb250aCwgZGF5ICk7CgkJCX0sCgkJCW5ld0RhdGUgPSAoIGRhdGUgPT0gbnVsbCB8fCBkYXRlID09PSAiIiA/IGRlZmF1bHREYXRlIDogKCB0eXBlb2YgZGF0ZSA9PT0gInN0cmluZyIgPyBvZmZzZXRTdHJpbmcoIGRhdGUgKSA6CgkJCQkoIHR5cGVvZiBkYXRlID09PSAibnVtYmVyIiA/ICggaXNOYU4oIGRhdGUgKSA/IGRlZmF1bHREYXRlIDogb2Zmc2V0TnVtZXJpYyggZGF0ZSApICkgOiBuZXcgRGF0ZSggZGF0ZS5nZXRUaW1lKCkgKSApICkgKTsKCgkJbmV3RGF0ZSA9ICggbmV3RGF0ZSAmJiBuZXdEYXRlLnRvU3RyaW5nKCkgPT09ICJJbnZhbGlkIERhdGUiID8gZGVmYXVsdERhdGUgOiBuZXdEYXRlICk7CgkJaWYgKCBuZXdEYXRlICkgewoJCQluZXdEYXRlLnNldEhvdXJzKCAwICk7CgkJCW5ld0RhdGUuc2V0TWludXRlcyggMCApOwoJCQluZXdEYXRlLnNldFNlY29uZHMoIDAgKTsKCQkJbmV3RGF0ZS5zZXRNaWxsaXNlY29uZHMoIDAgKTsKCQl9CgkJcmV0dXJuIHRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KCBuZXdEYXRlICk7Cgl9LAoKCS8qIEhhbmRsZSBzd2l0Y2ggdG8vZnJvbSBkYXlsaWdodCBzYXZpbmcuCgkgKiBIb3VycyBtYXkgYmUgbm9uLXplcm8gb24gZGF5bGlnaHQgc2F2aW5nIGN1dC1vdmVyOgoJICogPiAxMiB3aGVuIG1pZG5pZ2h0IGNoYW5nZW92ZXIsIGJ1dCB0aGVuIGNhbm5vdCBnZW5lcmF0ZQoJICogbWlkbmlnaHQgZGF0ZXRpbWUsIHNvIGp1bXAgdG8gMUFNLCBvdGhlcndpc2UgcmVzZXQuCgkgKiBAcGFyYW0gIGRhdGUgIChEYXRlKSB0aGUgZGF0ZSB0byBjaGVjawoJICogQHJldHVybiAgKERhdGUpIHRoZSBjb3JyZWN0ZWQgZGF0ZQoJICovCglfZGF5bGlnaHRTYXZpbmdBZGp1c3Q6IGZ1bmN0aW9uKCBkYXRlICkgewoJCWlmICggIWRhdGUgKSB7CgkJCXJldHVybiBudWxsOwoJCX0KCQlkYXRlLnNldEhvdXJzKCBkYXRlLmdldEhvdXJzKCkgPiAxMiA/IGRhdGUuZ2V0SG91cnMoKSArIDIgOiAwICk7CgkJcmV0dXJuIGRhdGU7Cgl9LAoKCS8qIFNldCB0aGUgZGF0ZShzKSBkaXJlY3RseS4gKi8KCV9zZXREYXRlOiBmdW5jdGlvbiggaW5zdCwgZGF0ZSwgbm9DaGFuZ2UgKSB7CgkJdmFyIGNsZWFyID0gIWRhdGUsCgkJCW9yaWdNb250aCA9IGluc3Quc2VsZWN0ZWRNb250aCwKCQkJb3JpZ1llYXIgPSBpbnN0LnNlbGVjdGVkWWVhciwKCQkJbmV3RGF0ZSA9IHRoaXMuX3Jlc3RyaWN0TWluTWF4KCBpbnN0LCB0aGlzLl9kZXRlcm1pbmVEYXRlKCBpbnN0LCBkYXRlLCBuZXcgRGF0ZSgpICkgKTsKCgkJaW5zdC5zZWxlY3RlZERheSA9IGluc3QuY3VycmVudERheSA9IG5ld0RhdGUuZ2V0RGF0ZSgpOwoJCWluc3QuZHJhd01vbnRoID0gaW5zdC5zZWxlY3RlZE1vbnRoID0gaW5zdC5jdXJyZW50TW9udGggPSBuZXdEYXRlLmdldE1vbnRoKCk7CgkJaW5zdC5kcmF3WWVhciA9IGluc3Quc2VsZWN0ZWRZZWFyID0gaW5zdC5jdXJyZW50WWVhciA9IG5ld0RhdGUuZ2V0RnVsbFllYXIoKTsKCQlpZiAoICggb3JpZ01vbnRoICE9PSBpbnN0LnNlbGVjdGVkTW9udGggfHwgb3JpZ1llYXIgIT09IGluc3Quc2VsZWN0ZWRZZWFyICkgJiYgIW5vQ2hhbmdlICkgewoJCQl0aGlzLl9ub3RpZnlDaGFuZ2UoIGluc3QgKTsKCQl9CgkJdGhpcy5fYWRqdXN0SW5zdERhdGUoIGluc3QgKTsKCQlpZiAoIGluc3QuaW5wdXQgKSB7CgkJCWluc3QuaW5wdXQudmFsKCBjbGVhciA/ICIiIDogdGhpcy5fZm9ybWF0RGF0ZSggaW5zdCApICk7CgkJfQoJfSwKCgkvKiBSZXRyaWV2ZSB0aGUgZGF0ZShzKSBkaXJlY3RseS4gKi8KCV9nZXREYXRlOiBmdW5jdGlvbiggaW5zdCApIHsKCQl2YXIgc3RhcnREYXRlID0gKCAhaW5zdC5jdXJyZW50WWVhciB8fCAoIGluc3QuaW5wdXQgJiYgaW5zdC5pbnB1dC52YWwoKSA9PT0gIiIgKSA/IG51bGwgOgoJCQl0aGlzLl9kYXlsaWdodFNhdmluZ0FkanVzdCggbmV3IERhdGUoCgkJCWluc3QuY3VycmVudFllYXIsIGluc3QuY3VycmVudE1vbnRoLCBpbnN0LmN1cnJlbnREYXkgKSApICk7CgkJCXJldHVybiBzdGFydERhdGU7Cgl9LAoKCS8qIEF0dGFjaCB0aGUgb254eHggaGFuZGxlcnMuICBUaGVzZSBhcmUgZGVjbGFyZWQgc3RhdGljYWxseSBzbwoJICogdGhleSB3b3JrIHdpdGggc3RhdGljIGNvZGUgdHJhbnNmb3JtZXJzIGxpa2UgQ2FqYS4KCSAqLwoJX2F0dGFjaEhhbmRsZXJzOiBmdW5jdGlvbiggaW5zdCApIHsKCQl2YXIgc3RlcE1vbnRocyA9IHRoaXMuX2dldCggaW5zdCwgInN0ZXBNb250aHMiICksCgkJCWlkID0gIiMiICsgaW5zdC5pZC5yZXBsYWNlKCAvXFxcXC9nLCAiXFwiICk7CgkJaW5zdC5kcERpdi5maW5kKCAiW2RhdGEtaGFuZGxlcl0iICkubWFwKCBmdW5jdGlvbigpIHsKCQkJdmFyIGhhbmRsZXIgPSB7CgkJCQlwcmV2OiBmdW5jdGlvbigpIHsKCQkJCQkkLmRhdGVwaWNrZXIuX2FkanVzdERhdGUoIGlkLCAtc3RlcE1vbnRocywgIk0iICk7CgkJCQl9LAoJCQkJbmV4dDogZnVuY3Rpb24oKSB7CgkJCQkJJC5kYXRlcGlja2VyLl9hZGp1c3REYXRlKCBpZCwgK3N0ZXBNb250aHMsICJNIiApOwoJCQkJfSwKCQkJCWhpZGU6IGZ1bmN0aW9uKCkgewoJCQkJCSQuZGF0ZXBpY2tlci5faGlkZURhdGVwaWNrZXIoKTsKCQkJCX0sCgkJCQl0b2RheTogZnVuY3Rpb24oKSB7CgkJCQkJJC5kYXRlcGlja2VyLl9nb3RvVG9kYXkoIGlkICk7CgkJCQl9LAoJCQkJc2VsZWN0RGF5OiBmdW5jdGlvbigpIHsKCQkJCQkkLmRhdGVwaWNrZXIuX3NlbGVjdERheSggaWQsICt0aGlzLmdldEF0dHJpYnV0ZSggImRhdGEtbW9udGgiICksICt0aGlzLmdldEF0dHJpYnV0ZSggImRhdGEteWVhciIgKSwgdGhpcyApOwoJCQkJCXJldHVybiBmYWxzZTsKCQkJCX0sCgkJCQlzZWxlY3RNb250aDogZnVuY3Rpb24oKSB7CgkJCQkJJC5kYXRlcGlja2VyLl9zZWxlY3RNb250aFllYXIoIGlkLCB0aGlzLCAiTSIgKTsKCQkJCQlyZXR1cm4gZmFsc2U7CgkJCQl9LAoJCQkJc2VsZWN0WWVhcjogZnVuY3Rpb24oKSB7CgkJCQkJJC5kYXRlcGlja2VyLl9zZWxlY3RNb250aFllYXIoIGlkLCB0aGlzLCAiWSIgKTsKCQkJCQlyZXR1cm4gZmFsc2U7CgkJCQl9CgkJCX07CgkJCSQoIHRoaXMgKS5vbiggdGhpcy5nZXRBdHRyaWJ1dGUoICJkYXRhLWV2ZW50IiApLCBoYW5kbGVyWyB0aGlzLmdldEF0dHJpYnV0ZSggImRhdGEtaGFuZGxlciIgKSBdICk7CgkJfSApOwoJfSwKCgkvKiBHZW5lcmF0ZSB0aGUgSFRNTCBmb3IgdGhlIGN1cnJlbnQgc3RhdGUgb2YgdGhlIGRhdGUgcGlja2VyLiAqLwoJX2dlbmVyYXRlSFRNTDogZnVuY3Rpb24oIGluc3QgKSB7CgkJdmFyIG1heERyYXcsIHByZXZUZXh0LCBwcmV2LCBuZXh0VGV4dCwgbmV4dCwgY3VycmVudFRleHQsIGdvdG9EYXRlLAoJCQljb250cm9scywgYnV0dG9uUGFuZWwsIGZpcnN0RGF5LCBzaG93V2VlaywgZGF5TmFtZXMsIGRheU5hbWVzTWluLAoJCQltb250aE5hbWVzLCBtb250aE5hbWVzU2hvcnQsIGJlZm9yZVNob3dEYXksIHNob3dPdGhlck1vbnRocywKCQkJc2VsZWN0T3RoZXJNb250aHMsIGRlZmF1bHREYXRlLCBodG1sLCBkb3csIHJvdywgZ3JvdXAsIGNvbCwgc2VsZWN0ZWREYXRlLAoJCQljb3JuZXJDbGFzcywgY2FsZW5kZXIsIHRoZWFkLCBkYXksIGRheXNJbk1vbnRoLCBsZWFkRGF5cywgY3VyUm93cywgbnVtUm93cywKCQkJcHJpbnREYXRlLCBkUm93LCB0Ym9keSwgZGF5U2V0dGluZ3MsIG90aGVyTW9udGgsIHVuc2VsZWN0YWJsZSwKCQkJdGVtcERhdGUgPSBuZXcgRGF0ZSgpLAoJCQl0b2RheSA9IHRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KAoJCQkJbmV3IERhdGUoIHRlbXBEYXRlLmdldEZ1bGxZZWFyKCksIHRlbXBEYXRlLmdldE1vbnRoKCksIHRlbXBEYXRlLmdldERhdGUoKSApICksIC8vIGNsZWFyIHRpbWUKCQkJaXNSVEwgPSB0aGlzLl9nZXQoIGluc3QsICJpc1JUTCIgKSwKCQkJc2hvd0J1dHRvblBhbmVsID0gdGhpcy5fZ2V0KCBpbnN0LCAic2hvd0J1dHRvblBhbmVsIiApLAoJCQloaWRlSWZOb1ByZXZOZXh0ID0gdGhpcy5fZ2V0KCBpbnN0LCAiaGlkZUlmTm9QcmV2TmV4dCIgKSwKCQkJbmF2aWdhdGlvbkFzRGF0ZUZvcm1hdCA9IHRoaXMuX2dldCggaW5zdCwgIm5hdmlnYXRpb25Bc0RhdGVGb3JtYXQiICksCgkJCW51bU1vbnRocyA9IHRoaXMuX2dldE51bWJlck9mTW9udGhzKCBpbnN0ICksCgkJCXNob3dDdXJyZW50QXRQb3MgPSB0aGlzLl9nZXQoIGluc3QsICJzaG93Q3VycmVudEF0UG9zIiApLAoJCQlzdGVwTW9udGhzID0gdGhpcy5fZ2V0KCBpbnN0LCAic3RlcE1vbnRocyIgKSwKCQkJaXNNdWx0aU1vbnRoID0gKCBudW1Nb250aHNbIDAgXSAhPT0gMSB8fCBudW1Nb250aHNbIDEgXSAhPT0gMSApLAoJCQljdXJyZW50RGF0ZSA9IHRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KCAoICFpbnN0LmN1cnJlbnREYXkgPyBuZXcgRGF0ZSggOTk5OSwgOSwgOSApIDoKCQkJCW5ldyBEYXRlKCBpbnN0LmN1cnJlbnRZZWFyLCBpbnN0LmN1cnJlbnRNb250aCwgaW5zdC5jdXJyZW50RGF5ICkgKSApLAoJCQltaW5EYXRlID0gdGhpcy5fZ2V0TWluTWF4RGF0ZSggaW5zdCwgIm1pbiIgKSwKCQkJbWF4RGF0ZSA9IHRoaXMuX2dldE1pbk1heERhdGUoIGluc3QsICJtYXgiICksCgkJCWRyYXdNb250aCA9IGluc3QuZHJhd01vbnRoIC0gc2hvd0N1cnJlbnRBdFBvcywKCQkJZHJhd1llYXIgPSBpbnN0LmRyYXdZZWFyOwoKCQlpZiAoIGRyYXdNb250aCA8IDAgKSB7CgkJCWRyYXdNb250aCArPSAxMjsKCQkJZHJhd1llYXItLTsKCQl9CgkJaWYgKCBtYXhEYXRlICkgewoJCQltYXhEcmF3ID0gdGhpcy5fZGF5bGlnaHRTYXZpbmdBZGp1c3QoIG5ldyBEYXRlKCBtYXhEYXRlLmdldEZ1bGxZZWFyKCksCgkJCQltYXhEYXRlLmdldE1vbnRoKCkgLSAoIG51bU1vbnRoc1sgMCBdICogbnVtTW9udGhzWyAxIF0gKSArIDEsIG1heERhdGUuZ2V0RGF0ZSgpICkgKTsKCQkJbWF4RHJhdyA9ICggbWluRGF0ZSAmJiBtYXhEcmF3IDwgbWluRGF0ZSA/IG1pbkRhdGUgOiBtYXhEcmF3ICk7CgkJCXdoaWxlICggdGhpcy5fZGF5bGlnaHRTYXZpbmdBZGp1c3QoIG5ldyBEYXRlKCBkcmF3WWVhciwgZHJhd01vbnRoLCAxICkgKSA+IG1heERyYXcgKSB7CgkJCQlkcmF3TW9udGgtLTsKCQkJCWlmICggZHJhd01vbnRoIDwgMCApIHsKCQkJCQlkcmF3TW9udGggPSAxMTsKCQkJCQlkcmF3WWVhci0tOwoJCQkJfQoJCQl9CgkJfQoJCWluc3QuZHJhd01vbnRoID0gZHJhd01vbnRoOwoJCWluc3QuZHJhd1llYXIgPSBkcmF3WWVhcjsKCgkJcHJldlRleHQgPSB0aGlzLl9nZXQoIGluc3QsICJwcmV2VGV4dCIgKTsKCQlwcmV2VGV4dCA9ICggIW5hdmlnYXRpb25Bc0RhdGVGb3JtYXQgPyBwcmV2VGV4dCA6IHRoaXMuZm9ybWF0RGF0ZSggcHJldlRleHQsCgkJCXRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KCBuZXcgRGF0ZSggZHJhd1llYXIsIGRyYXdNb250aCAtIHN0ZXBNb250aHMsIDEgKSApLAoJCQl0aGlzLl9nZXRGb3JtYXRDb25maWcoIGluc3QgKSApICk7CgoJCXByZXYgPSAoIHRoaXMuX2NhbkFkanVzdE1vbnRoKCBpbnN0LCAtMSwgZHJhd1llYXIsIGRyYXdNb250aCApID8KCQkJIjxhIGNsYXNzPSd1aS1kYXRlcGlja2VyLXByZXYgdWktY29ybmVyLWFsbCcgZGF0YS1oYW5kbGVyPSdwcmV2JyBkYXRhLWV2ZW50PSdjbGljayciICsKCQkJIiB0aXRsZT0nIiArIHByZXZUZXh0ICsgIic+PHNwYW4gY2xhc3M9J3VpLWljb24gdWktaWNvbi1jaXJjbGUtdHJpYW5nbGUtIiArICggaXNSVEwgPyAiZSIgOiAidyIgKSArICInPiIgKyBwcmV2VGV4dCArICI8L3NwYW4+PC9hPiIgOgoJCQkoIGhpZGVJZk5vUHJldk5leHQgPyAiIiA6ICI8YSBjbGFzcz0ndWktZGF0ZXBpY2tlci1wcmV2IHVpLWNvcm5lci1hbGwgdWktc3RhdGUtZGlzYWJsZWQnIHRpdGxlPSciICsgcHJldlRleHQgKyAiJz48c3BhbiBjbGFzcz0ndWktaWNvbiB1aS1pY29uLWNpcmNsZS10cmlhbmdsZS0iICsgKCBpc1JUTCA/ICJlIiA6ICJ3IiApICsgIic+IiArIHByZXZUZXh0ICsgIjwvc3Bhbj48L2E+IiApICk7CgoJCW5leHRUZXh0ID0gdGhpcy5fZ2V0KCBpbnN0LCAibmV4dFRleHQiICk7CgkJbmV4dFRleHQgPSAoICFuYXZpZ2F0aW9uQXNEYXRlRm9ybWF0ID8gbmV4dFRleHQgOiB0aGlzLmZvcm1hdERhdGUoIG5leHRUZXh0LAoJCQl0aGlzLl9kYXlsaWdodFNhdmluZ0FkanVzdCggbmV3IERhdGUoIGRyYXdZZWFyLCBkcmF3TW9udGggKyBzdGVwTW9udGhzLCAxICkgKSwKCQkJdGhpcy5fZ2V0Rm9ybWF0Q29uZmlnKCBpbnN0ICkgKSApOwoKCQluZXh0ID0gKCB0aGlzLl9jYW5BZGp1c3RNb250aCggaW5zdCwgKzEsIGRyYXdZZWFyLCBkcmF3TW9udGggKSA/CgkJCSI8YSBjbGFzcz0ndWktZGF0ZXBpY2tlci1uZXh0IHVpLWNvcm5lci1hbGwnIGRhdGEtaGFuZGxlcj0nbmV4dCcgZGF0YS1ldmVudD0nY2xpY2snIiArCgkJCSIgdGl0bGU9JyIgKyBuZXh0VGV4dCArICInPjxzcGFuIGNsYXNzPSd1aS1pY29uIHVpLWljb24tY2lyY2xlLXRyaWFuZ2xlLSIgKyAoIGlzUlRMID8gInciIDogImUiICkgKyAiJz4iICsgbmV4dFRleHQgKyAiPC9zcGFuPjwvYT4iIDoKCQkJKCBoaWRlSWZOb1ByZXZOZXh0ID8gIiIgOiAiPGEgY2xhc3M9J3VpLWRhdGVwaWNrZXItbmV4dCB1aS1jb3JuZXItYWxsIHVpLXN0YXRlLWRpc2FibGVkJyB0aXRsZT0nIiArIG5leHRUZXh0ICsgIic+PHNwYW4gY2xhc3M9J3VpLWljb24gdWktaWNvbi1jaXJjbGUtdHJpYW5nbGUtIiArICggaXNSVEwgPyAidyIgOiAiZSIgKSArICInPiIgKyBuZXh0VGV4dCArICI8L3NwYW4+PC9hPiIgKSApOwoKCQljdXJyZW50VGV4dCA9IHRoaXMuX2dldCggaW5zdCwgImN1cnJlbnRUZXh0IiApOwoJCWdvdG9EYXRlID0gKCB0aGlzLl9nZXQoIGluc3QsICJnb3RvQ3VycmVudCIgKSAmJiBpbnN0LmN1cnJlbnREYXkgPyBjdXJyZW50RGF0ZSA6IHRvZGF5ICk7CgkJY3VycmVudFRleHQgPSAoICFuYXZpZ2F0aW9uQXNEYXRlRm9ybWF0ID8gY3VycmVudFRleHQgOgoJCQl0aGlzLmZvcm1hdERhdGUoIGN1cnJlbnRUZXh0LCBnb3RvRGF0ZSwgdGhpcy5fZ2V0Rm9ybWF0Q29uZmlnKCBpbnN0ICkgKSApOwoKCQljb250cm9scyA9ICggIWluc3QuaW5saW5lID8gIjxidXR0b24gdHlwZT0nYnV0dG9uJyBjbGFzcz0ndWktZGF0ZXBpY2tlci1jbG9zZSB1aS1zdGF0ZS1kZWZhdWx0IHVpLXByaW9yaXR5LXByaW1hcnkgdWktY29ybmVyLWFsbCcgZGF0YS1oYW5kbGVyPSdoaWRlJyBkYXRhLWV2ZW50PSdjbGljayc+IiArCgkJCXRoaXMuX2dldCggaW5zdCwgImNsb3NlVGV4dCIgKSArICI8L2J1dHRvbj4iIDogIiIgKTsKCgkJYnV0dG9uUGFuZWwgPSAoIHNob3dCdXR0b25QYW5lbCApID8gIjxkaXYgY2xhc3M9J3VpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSB1aS13aWRnZXQtY29udGVudCc+IiArICggaXNSVEwgPyBjb250cm9scyA6ICIiICkgKwoJCQkoIHRoaXMuX2lzSW5SYW5nZSggaW5zdCwgZ290b0RhdGUgKSA/ICI8YnV0dG9uIHR5cGU9J2J1dHRvbicgY2xhc3M9J3VpLWRhdGVwaWNrZXItY3VycmVudCB1aS1zdGF0ZS1kZWZhdWx0IHVpLXByaW9yaXR5LXNlY29uZGFyeSB1aS1jb3JuZXItYWxsJyBkYXRhLWhhbmRsZXI9J3RvZGF5JyBkYXRhLWV2ZW50PSdjbGljayciICsKCQkJIj4iICsgY3VycmVudFRleHQgKyAiPC9idXR0b24+IiA6ICIiICkgKyAoIGlzUlRMID8gIiIgOiBjb250cm9scyApICsgIjwvZGl2PiIgOiAiIjsKCgkJZmlyc3REYXkgPSBwYXJzZUludCggdGhpcy5fZ2V0KCBpbnN0LCAiZmlyc3REYXkiICksIDEwICk7CgkJZmlyc3REYXkgPSAoIGlzTmFOKCBmaXJzdERheSApID8gMCA6IGZpcnN0RGF5ICk7CgoJCXNob3dXZWVrID0gdGhpcy5fZ2V0KCBpbnN0LCAic2hvd1dlZWsiICk7CgkJZGF5TmFtZXMgPSB0aGlzLl9nZXQoIGluc3QsICJkYXlOYW1lcyIgKTsKCQlkYXlOYW1lc01pbiA9IHRoaXMuX2dldCggaW5zdCwgImRheU5hbWVzTWluIiApOwoJCW1vbnRoTmFtZXMgPSB0aGlzLl9nZXQoIGluc3QsICJtb250aE5hbWVzIiApOwoJCW1vbnRoTmFtZXNTaG9ydCA9IHRoaXMuX2dldCggaW5zdCwgIm1vbnRoTmFtZXNTaG9ydCIgKTsKCQliZWZvcmVTaG93RGF5ID0gdGhpcy5fZ2V0KCBpbnN0LCAiYmVmb3JlU2hvd0RheSIgKTsKCQlzaG93T3RoZXJNb250aHMgPSB0aGlzLl9nZXQoIGluc3QsICJzaG93T3RoZXJNb250aHMiICk7CgkJc2VsZWN0T3RoZXJNb250aHMgPSB0aGlzLl9nZXQoIGluc3QsICJzZWxlY3RPdGhlck1vbnRocyIgKTsKCQlkZWZhdWx0RGF0ZSA9IHRoaXMuX2dldERlZmF1bHREYXRlKCBpbnN0ICk7CgkJaHRtbCA9ICIiOwoKCQlmb3IgKCByb3cgPSAwOyByb3cgPCBudW1Nb250aHNbIDAgXTsgcm93KysgKSB7CgkJCWdyb3VwID0gIiI7CgkJCXRoaXMubWF4Um93cyA9IDQ7CgkJCWZvciAoIGNvbCA9IDA7IGNvbCA8IG51bU1vbnRoc1sgMSBdOyBjb2wrKyApIHsKCQkJCXNlbGVjdGVkRGF0ZSA9IHRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KCBuZXcgRGF0ZSggZHJhd1llYXIsIGRyYXdNb250aCwgaW5zdC5zZWxlY3RlZERheSApICk7CgkJCQljb3JuZXJDbGFzcyA9ICIgdWktY29ybmVyLWFsbCI7CgkJCQljYWxlbmRlciA9ICIiOwoJCQkJaWYgKCBpc011bHRpTW9udGggKSB7CgkJCQkJY2FsZW5kZXIgKz0gIjxkaXYgY2xhc3M9J3VpLWRhdGVwaWNrZXItZ3JvdXAiOwoJCQkJCWlmICggbnVtTW9udGhzWyAxIF0gPiAxICkgewoJCQkJCQlzd2l0Y2ggKCBjb2wgKSB7CgkJCQkJCQljYXNlIDA6IGNhbGVuZGVyICs9ICIgdWktZGF0ZXBpY2tlci1ncm91cC1maXJzdCI7CgkJCQkJCQkJY29ybmVyQ2xhc3MgPSAiIHVpLWNvcm5lci0iICsgKCBpc1JUTCA/ICJyaWdodCIgOiAibGVmdCIgKTsgYnJlYWs7CgkJCQkJCQljYXNlIG51bU1vbnRoc1sgMSBdIC0gMTogY2FsZW5kZXIgKz0gIiB1aS1kYXRlcGlja2VyLWdyb3VwLWxhc3QiOwoJCQkJCQkJCWNvcm5lckNsYXNzID0gIiB1aS1jb3JuZXItIiArICggaXNSVEwgPyAibGVmdCIgOiAicmlnaHQiICk7IGJyZWFrOwoJCQkJCQkJZGVmYXVsdDogY2FsZW5kZXIgKz0gIiB1aS1kYXRlcGlja2VyLWdyb3VwLW1pZGRsZSI7IGNvcm5lckNsYXNzID0gIiI7IGJyZWFrOwoJCQkJCQl9CgkJCQkJfQoJCQkJCWNhbGVuZGVyICs9ICInPiI7CgkJCQl9CgkJCQljYWxlbmRlciArPSAiPGRpdiBjbGFzcz0ndWktZGF0ZXBpY2tlci1oZWFkZXIgdWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXgiICsgY29ybmVyQ2xhc3MgKyAiJz4iICsKCQkJCQkoIC9hbGx8bGVmdC8udGVzdCggY29ybmVyQ2xhc3MgKSAmJiByb3cgPT09IDAgPyAoIGlzUlRMID8gbmV4dCA6IHByZXYgKSA6ICIiICkgKwoJCQkJCSggL2FsbHxyaWdodC8udGVzdCggY29ybmVyQ2xhc3MgKSAmJiByb3cgPT09IDAgPyAoIGlzUlRMID8gcHJldiA6IG5leHQgKSA6ICIiICkgKwoJCQkJCXRoaXMuX2dlbmVyYXRlTW9udGhZZWFySGVhZGVyKCBpbnN0LCBkcmF3TW9udGgsIGRyYXdZZWFyLCBtaW5EYXRlLCBtYXhEYXRlLAoJCQkJCXJvdyA+IDAgfHwgY29sID4gMCwgbW9udGhOYW1lcywgbW9udGhOYW1lc1Nob3J0ICkgKyAvLyBkcmF3IG1vbnRoIGhlYWRlcnMKCQkJCQkiPC9kaXY+PHRhYmxlIGNsYXNzPSd1aS1kYXRlcGlja2VyLWNhbGVuZGFyJz48dGhlYWQ+IiArCgkJCQkJIjx0cj4iOwoJCQkJdGhlYWQgPSAoIHNob3dXZWVrID8gIjx0aCBjbGFzcz0ndWktZGF0ZXBpY2tlci13ZWVrLWNvbCc+IiArIHRoaXMuX2dldCggaW5zdCwgIndlZWtIZWFkZXIiICkgKyAiPC90aD4iIDogIiIgKTsKCQkJCWZvciAoIGRvdyA9IDA7IGRvdyA8IDc7IGRvdysrICkgeyAvLyBkYXlzIG9mIHRoZSB3ZWVrCgkJCQkJZGF5ID0gKCBkb3cgKyBmaXJzdERheSApICUgNzsKCQkJCQl0aGVhZCArPSAiPHRoIHNjb3BlPSdjb2wnIiArICggKCBkb3cgKyBmaXJzdERheSArIDYgKSAlIDcgPj0gNSA/ICIgY2xhc3M9J3VpLWRhdGVwaWNrZXItd2Vlay1lbmQnIiA6ICIiICkgKyAiPiIgKwoJCQkJCQkiPHNwYW4gdGl0bGU9JyIgKyBkYXlOYW1lc1sgZGF5IF0gKyAiJz4iICsgZGF5TmFtZXNNaW5bIGRheSBdICsgIjwvc3Bhbj48L3RoPiI7CgkJCQl9CgkJCQljYWxlbmRlciArPSB0aGVhZCArICI8L3RyPjwvdGhlYWQ+PHRib2R5PiI7CgkJCQlkYXlzSW5Nb250aCA9IHRoaXMuX2dldERheXNJbk1vbnRoKCBkcmF3WWVhciwgZHJhd01vbnRoICk7CgkJCQlpZiAoIGRyYXdZZWFyID09PSBpbnN0LnNlbGVjdGVkWWVhciAmJiBkcmF3TW9udGggPT09IGluc3Quc2VsZWN0ZWRNb250aCApIHsKCQkJCQlpbnN0LnNlbGVjdGVkRGF5ID0gTWF0aC5taW4oIGluc3Quc2VsZWN0ZWREYXksIGRheXNJbk1vbnRoICk7CgkJCQl9CgkJCQlsZWFkRGF5cyA9ICggdGhpcy5fZ2V0Rmlyc3REYXlPZk1vbnRoKCBkcmF3WWVhciwgZHJhd01vbnRoICkgLSBmaXJzdERheSArIDcgKSAlIDc7CgkJCQljdXJSb3dzID0gTWF0aC5jZWlsKCAoIGxlYWREYXlzICsgZGF5c0luTW9udGggKSAvIDcgKTsgLy8gY2FsY3VsYXRlIHRoZSBudW1iZXIgb2Ygcm93cyB0byBnZW5lcmF0ZQoJCQkJbnVtUm93cyA9ICggaXNNdWx0aU1vbnRoID8gdGhpcy5tYXhSb3dzID4gY3VyUm93cyA/IHRoaXMubWF4Um93cyA6IGN1clJvd3MgOiBjdXJSb3dzICk7IC8vSWYgbXVsdGlwbGUgbW9udGhzLCB1c2UgdGhlIGhpZ2hlciBudW1iZXIgb2Ygcm93cyAoc2VlICM3MDQzKQoJCQkJdGhpcy5tYXhSb3dzID0gbnVtUm93czsKCQkJCXByaW50RGF0ZSA9IHRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KCBuZXcgRGF0ZSggZHJhd1llYXIsIGRyYXdNb250aCwgMSAtIGxlYWREYXlzICkgKTsKCQkJCWZvciAoIGRSb3cgPSAwOyBkUm93IDwgbnVtUm93czsgZFJvdysrICkgeyAvLyBjcmVhdGUgZGF0ZSBwaWNrZXIgcm93cwoJCQkJCWNhbGVuZGVyICs9ICI8dHI+IjsKCQkJCQl0Ym9keSA9ICggIXNob3dXZWVrID8gIiIgOiAiPHRkIGNsYXNzPSd1aS1kYXRlcGlja2VyLXdlZWstY29sJz4iICsKCQkJCQkJdGhpcy5fZ2V0KCBpbnN0LCAiY2FsY3VsYXRlV2VlayIgKSggcHJpbnREYXRlICkgKyAiPC90ZD4iICk7CgkJCQkJZm9yICggZG93ID0gMDsgZG93IDwgNzsgZG93KysgKSB7IC8vIGNyZWF0ZSBkYXRlIHBpY2tlciBkYXlzCgkJCQkJCWRheVNldHRpbmdzID0gKCBiZWZvcmVTaG93RGF5ID8KCQkJCQkJCWJlZm9yZVNob3dEYXkuYXBwbHkoICggaW5zdC5pbnB1dCA/IGluc3QuaW5wdXRbIDAgXSA6IG51bGwgKSwgWyBwcmludERhdGUgXSApIDogWyB0cnVlLCAiIiBdICk7CgkJCQkJCW90aGVyTW9udGggPSAoIHByaW50RGF0ZS5nZXRNb250aCgpICE9PSBkcmF3TW9udGggKTsKCQkJCQkJdW5zZWxlY3RhYmxlID0gKCBvdGhlck1vbnRoICYmICFzZWxlY3RPdGhlck1vbnRocyApIHx8ICFkYXlTZXR0aW5nc1sgMCBdIHx8CgkJCQkJCQkoIG1pbkRhdGUgJiYgcHJpbnREYXRlIDwgbWluRGF0ZSApIHx8ICggbWF4RGF0ZSAmJiBwcmludERhdGUgPiBtYXhEYXRlICk7CgkJCQkJCXRib2R5ICs9ICI8dGQgY2xhc3M9JyIgKwoJCQkJCQkJKCAoIGRvdyArIGZpcnN0RGF5ICsgNiApICUgNyA+PSA1ID8gIiB1aS1kYXRlcGlja2VyLXdlZWstZW5kIiA6ICIiICkgKyAvLyBoaWdobGlnaHQgd2Vla2VuZHMKCQkJCQkJCSggb3RoZXJNb250aCA/ICIgdWktZGF0ZXBpY2tlci1vdGhlci1tb250aCIgOiAiIiApICsgLy8gaGlnaGxpZ2h0IGRheXMgZnJvbSBvdGhlciBtb250aHMKCQkJCQkJCSggKCBwcmludERhdGUuZ2V0VGltZSgpID09PSBzZWxlY3RlZERhdGUuZ2V0VGltZSgpICYmIGRyYXdNb250aCA9PT0gaW5zdC5zZWxlY3RlZE1vbnRoICYmIGluc3QuX2tleUV2ZW50ICkgfHwgLy8gdXNlciBwcmVzc2VkIGtleQoJCQkJCQkJKCBkZWZhdWx0RGF0ZS5nZXRUaW1lKCkgPT09IHByaW50RGF0ZS5nZXRUaW1lKCkgJiYgZGVmYXVsdERhdGUuZ2V0VGltZSgpID09PSBzZWxlY3RlZERhdGUuZ2V0VGltZSgpICkgPwoKCQkJCQkJCS8vIG9yIGRlZmF1bHREYXRlIGlzIGN1cnJlbnQgcHJpbnRlZERhdGUgYW5kIGRlZmF1bHREYXRlIGlzIHNlbGVjdGVkRGF0ZQoJCQkJCQkJIiAiICsgdGhpcy5fZGF5T3ZlckNsYXNzIDogIiIgKSArIC8vIGhpZ2hsaWdodCBzZWxlY3RlZCBkYXkKCQkJCQkJCSggdW5zZWxlY3RhYmxlID8gIiAiICsgdGhpcy5fdW5zZWxlY3RhYmxlQ2xhc3MgKyAiIHVpLXN0YXRlLWRpc2FibGVkIiA6ICIiICkgKyAgLy8gaGlnaGxpZ2h0IHVuc2VsZWN0YWJsZSBkYXlzCgkJCQkJCQkoIG90aGVyTW9udGggJiYgIXNob3dPdGhlck1vbnRocyA/ICIiIDogIiAiICsgZGF5U2V0dGluZ3NbIDEgXSArIC8vIGhpZ2hsaWdodCBjdXN0b20gZGF0ZXMKCQkJCQkJCSggcHJpbnREYXRlLmdldFRpbWUoKSA9PT0gY3VycmVudERhdGUuZ2V0VGltZSgpID8gIiAiICsgdGhpcy5fY3VycmVudENsYXNzIDogIiIgKSArIC8vIGhpZ2hsaWdodCBzZWxlY3RlZCBkYXkKCQkJCQkJCSggcHJpbnREYXRlLmdldFRpbWUoKSA9PT0gdG9kYXkuZ2V0VGltZSgpID8gIiB1aS1kYXRlcGlja2VyLXRvZGF5IiA6ICIiICkgKSArICInIiArIC8vIGhpZ2hsaWdodCB0b2RheSAoaWYgZGlmZmVyZW50KQoJCQkJCQkJKCAoICFvdGhlck1vbnRoIHx8IHNob3dPdGhlck1vbnRocyApICYmIGRheVNldHRpbmdzWyAyIF0gPyAiIHRpdGxlPSciICsgZGF5U2V0dGluZ3NbIDIgXS5yZXBsYWNlKCAvJy9nLCAiJiMzOTsiICkgKyAiJyIgOiAiIiApICsgLy8gY2VsbCB0aXRsZQoJCQkJCQkJKCB1bnNlbGVjdGFibGUgPyAiIiA6ICIgZGF0YS1oYW5kbGVyPSdzZWxlY3REYXknIGRhdGEtZXZlbnQ9J2NsaWNrJyBkYXRhLW1vbnRoPSciICsgcHJpbnREYXRlLmdldE1vbnRoKCkgKyAiJyBkYXRhLXllYXI9JyIgKyBwcmludERhdGUuZ2V0RnVsbFllYXIoKSArICInIiApICsgIj4iICsgLy8gYWN0aW9ucwoJCQkJCQkJKCBvdGhlck1vbnRoICYmICFzaG93T3RoZXJNb250aHMgPyAiJiN4YTA7IiA6IC8vIGRpc3BsYXkgZm9yIG90aGVyIG1vbnRocwoJCQkJCQkJKCB1bnNlbGVjdGFibGUgPyAiPHNwYW4gY2xhc3M9J3VpLXN0YXRlLWRlZmF1bHQnPiIgKyBwcmludERhdGUuZ2V0RGF0ZSgpICsgIjwvc3Bhbj4iIDogIjxhIGNsYXNzPSd1aS1zdGF0ZS1kZWZhdWx0IiArCgkJCQkJCQkoIHByaW50RGF0ZS5nZXRUaW1lKCkgPT09IHRvZGF5LmdldFRpbWUoKSA/ICIgdWktc3RhdGUtaGlnaGxpZ2h0IiA6ICIiICkgKwoJCQkJCQkJKCBwcmludERhdGUuZ2V0VGltZSgpID09PSBjdXJyZW50RGF0ZS5nZXRUaW1lKCkgPyAiIHVpLXN0YXRlLWFjdGl2ZSIgOiAiIiApICsgLy8gaGlnaGxpZ2h0IHNlbGVjdGVkIGRheQoJCQkJCQkJKCBvdGhlck1vbnRoID8gIiB1aS1wcmlvcml0eS1zZWNvbmRhcnkiIDogIiIgKSArIC8vIGRpc3Rpbmd1aXNoIGRhdGVzIGZyb20gb3RoZXIgbW9udGhzCgkJCQkJCQkiJyBocmVmPScjJz4iICsgcHJpbnREYXRlLmdldERhdGUoKSArICI8L2E+IiApICkgKyAiPC90ZD4iOyAvLyBkaXNwbGF5IHNlbGVjdGFibGUgZGF0ZQoJCQkJCQlwcmludERhdGUuc2V0RGF0ZSggcHJpbnREYXRlLmdldERhdGUoKSArIDEgKTsKCQkJCQkJcHJpbnREYXRlID0gdGhpcy5fZGF5bGlnaHRTYXZpbmdBZGp1c3QoIHByaW50RGF0ZSApOwoJCQkJCX0KCQkJCQljYWxlbmRlciArPSB0Ym9keSArICI8L3RyPiI7CgkJCQl9CgkJCQlkcmF3TW9udGgrKzsKCQkJCWlmICggZHJhd01vbnRoID4gMTEgKSB7CgkJCQkJZHJhd01vbnRoID0gMDsKCQkJCQlkcmF3WWVhcisrOwoJCQkJfQoJCQkJY2FsZW5kZXIgKz0gIjwvdGJvZHk+PC90YWJsZT4iICsgKCBpc011bHRpTW9udGggPyAiPC9kaXY+IiArCgkJCQkJCQkoICggbnVtTW9udGhzWyAwIF0gPiAwICYmIGNvbCA9PT0gbnVtTW9udGhzWyAxIF0gLSAxICkgPyAiPGRpdiBjbGFzcz0ndWktZGF0ZXBpY2tlci1yb3ctYnJlYWsnPjwvZGl2PiIgOiAiIiApIDogIiIgKTsKCQkJCWdyb3VwICs9IGNhbGVuZGVyOwoJCQl9CgkJCWh0bWwgKz0gZ3JvdXA7CgkJfQoJCWh0bWwgKz0gYnV0dG9uUGFuZWw7CgkJaW5zdC5fa2V5RXZlbnQgPSBmYWxzZTsKCQlyZXR1cm4gaHRtbDsKCX0sCgoJLyogR2VuZXJhdGUgdGhlIG1vbnRoIGFuZCB5ZWFyIGhlYWRlci4gKi8KCV9nZW5lcmF0ZU1vbnRoWWVhckhlYWRlcjogZnVuY3Rpb24oIGluc3QsIGRyYXdNb250aCwgZHJhd1llYXIsIG1pbkRhdGUsIG1heERhdGUsCgkJCXNlY29uZGFyeSwgbW9udGhOYW1lcywgbW9udGhOYW1lc1Nob3J0ICkgewoKCQl2YXIgaW5NaW5ZZWFyLCBpbk1heFllYXIsIG1vbnRoLCB5ZWFycywgdGhpc1llYXIsIGRldGVybWluZVllYXIsIHllYXIsIGVuZFllYXIsCgkJCWNoYW5nZU1vbnRoID0gdGhpcy5fZ2V0KCBpbnN0LCAiY2hhbmdlTW9udGgiICksCgkJCWNoYW5nZVllYXIgPSB0aGlzLl9nZXQoIGluc3QsICJjaGFuZ2VZZWFyIiApLAoJCQlzaG93TW9udGhBZnRlclllYXIgPSB0aGlzLl9nZXQoIGluc3QsICJzaG93TW9udGhBZnRlclllYXIiICksCgkJCWh0bWwgPSAiPGRpdiBjbGFzcz0ndWktZGF0ZXBpY2tlci10aXRsZSc+IiwKCQkJbW9udGhIdG1sID0gIiI7CgoJCS8vIE1vbnRoIHNlbGVjdGlvbgoJCWlmICggc2Vjb25kYXJ5IHx8ICFjaGFuZ2VNb250aCApIHsKCQkJbW9udGhIdG1sICs9ICI8c3BhbiBjbGFzcz0ndWktZGF0ZXBpY2tlci1tb250aCc+IiArIG1vbnRoTmFtZXNbIGRyYXdNb250aCBdICsgIjwvc3Bhbj4iOwoJCX0gZWxzZSB7CgkJCWluTWluWWVhciA9ICggbWluRGF0ZSAmJiBtaW5EYXRlLmdldEZ1bGxZZWFyKCkgPT09IGRyYXdZZWFyICk7CgkJCWluTWF4WWVhciA9ICggbWF4RGF0ZSAmJiBtYXhEYXRlLmdldEZ1bGxZZWFyKCkgPT09IGRyYXdZZWFyICk7CgkJCW1vbnRoSHRtbCArPSAiPHNlbGVjdCBjbGFzcz0ndWktZGF0ZXBpY2tlci1tb250aCcgZGF0YS1oYW5kbGVyPSdzZWxlY3RNb250aCcgZGF0YS1ldmVudD0nY2hhbmdlJz4iOwoJCQlmb3IgKCBtb250aCA9IDA7IG1vbnRoIDwgMTI7IG1vbnRoKysgKSB7CgkJCQlpZiAoICggIWluTWluWWVhciB8fCBtb250aCA+PSBtaW5EYXRlLmdldE1vbnRoKCkgKSAmJiAoICFpbk1heFllYXIgfHwgbW9udGggPD0gbWF4RGF0ZS5nZXRNb250aCgpICkgKSB7CgkJCQkJbW9udGhIdG1sICs9ICI8b3B0aW9uIHZhbHVlPSciICsgbW9udGggKyAiJyIgKwoJCQkJCQkoIG1vbnRoID09PSBkcmF3TW9udGggPyAiIHNlbGVjdGVkPSdzZWxlY3RlZCciIDogIiIgKSArCgkJCQkJCSI+IiArIG1vbnRoTmFtZXNTaG9ydFsgbW9udGggXSArICI8L29wdGlvbj4iOwoJCQkJfQoJCQl9CgkJCW1vbnRoSHRtbCArPSAiPC9zZWxlY3Q+IjsKCQl9CgoJCWlmICggIXNob3dNb250aEFmdGVyWWVhciApIHsKCQkJaHRtbCArPSBtb250aEh0bWwgKyAoIHNlY29uZGFyeSB8fCAhKCBjaGFuZ2VNb250aCAmJiBjaGFuZ2VZZWFyICkgPyAiJiN4YTA7IiA6ICIiICk7CgkJfQoKCQkvLyBZZWFyIHNlbGVjdGlvbgoJCWlmICggIWluc3QueWVhcnNodG1sICkgewoJCQlpbnN0LnllYXJzaHRtbCA9ICIiOwoJCQlpZiAoIHNlY29uZGFyeSB8fCAhY2hhbmdlWWVhciApIHsKCQkJCWh0bWwgKz0gIjxzcGFuIGNsYXNzPSd1aS1kYXRlcGlja2VyLXllYXInPiIgKyBkcmF3WWVhciArICI8L3NwYW4+IjsKCQkJfSBlbHNlIHsKCgkJCQkvLyBkZXRlcm1pbmUgcmFuZ2Ugb2YgeWVhcnMgdG8gZGlzcGxheQoJCQkJeWVhcnMgPSB0aGlzLl9nZXQoIGluc3QsICJ5ZWFyUmFuZ2UiICkuc3BsaXQoICI6IiApOwoJCQkJdGhpc1llYXIgPSBuZXcgRGF0ZSgpLmdldEZ1bGxZZWFyKCk7CgkJCQlkZXRlcm1pbmVZZWFyID0gZnVuY3Rpb24oIHZhbHVlICkgewoJCQkJCXZhciB5ZWFyID0gKCB2YWx1ZS5tYXRjaCggL2NbK1wtXS4qLyApID8gZHJhd1llYXIgKyBwYXJzZUludCggdmFsdWUuc3Vic3RyaW5nKCAxICksIDEwICkgOgoJCQkJCQkoIHZhbHVlLm1hdGNoKCAvWytcLV0uKi8gKSA/IHRoaXNZZWFyICsgcGFyc2VJbnQoIHZhbHVlLCAxMCApIDoKCQkJCQkJcGFyc2VJbnQoIHZhbHVlLCAxMCApICkgKTsKCQkJCQlyZXR1cm4gKCBpc05hTiggeWVhciApID8gdGhpc1llYXIgOiB5ZWFyICk7CgkJCQl9OwoJCQkJeWVhciA9IGRldGVybWluZVllYXIoIHllYXJzWyAwIF0gKTsKCQkJCWVuZFllYXIgPSBNYXRoLm1heCggeWVhciwgZGV0ZXJtaW5lWWVhciggeWVhcnNbIDEgXSB8fCAiIiApICk7CgkJCQl5ZWFyID0gKCBtaW5EYXRlID8gTWF0aC5tYXgoIHllYXIsIG1pbkRhdGUuZ2V0RnVsbFllYXIoKSApIDogeWVhciApOwoJCQkJZW5kWWVhciA9ICggbWF4RGF0ZSA/IE1hdGgubWluKCBlbmRZZWFyLCBtYXhEYXRlLmdldEZ1bGxZZWFyKCkgKSA6IGVuZFllYXIgKTsKCQkJCWluc3QueWVhcnNodG1sICs9ICI8c2VsZWN0IGNsYXNzPSd1aS1kYXRlcGlja2VyLXllYXInIGRhdGEtaGFuZGxlcj0nc2VsZWN0WWVhcicgZGF0YS1ldmVudD0nY2hhbmdlJz4iOwoJCQkJZm9yICggOyB5ZWFyIDw9IGVuZFllYXI7IHllYXIrKyApIHsKCQkJCQlpbnN0LnllYXJzaHRtbCArPSAiPG9wdGlvbiB2YWx1ZT0nIiArIHllYXIgKyAiJyIgKwoJCQkJCQkoIHllYXIgPT09IGRyYXdZZWFyID8gIiBzZWxlY3RlZD0nc2VsZWN0ZWQnIiA6ICIiICkgKwoJCQkJCQkiPiIgKyB5ZWFyICsgIjwvb3B0aW9uPiI7CgkJCQl9CgkJCQlpbnN0LnllYXJzaHRtbCArPSAiPC9zZWxlY3Q+IjsKCgkJCQlodG1sICs9IGluc3QueWVhcnNodG1sOwoJCQkJaW5zdC55ZWFyc2h0bWwgPSBudWxsOwoJCQl9CgkJfQoKCQlodG1sICs9IHRoaXMuX2dldCggaW5zdCwgInllYXJTdWZmaXgiICk7CgkJaWYgKCBzaG93TW9udGhBZnRlclllYXIgKSB7CgkJCWh0bWwgKz0gKCBzZWNvbmRhcnkgfHwgISggY2hhbmdlTW9udGggJiYgY2hhbmdlWWVhciApID8gIiYjeGEwOyIgOiAiIiApICsgbW9udGhIdG1sOwoJCX0KCQlodG1sICs9ICI8L2Rpdj4iOyAvLyBDbG9zZSBkYXRlcGlja2VyX2hlYWRlcgoJCXJldHVybiBodG1sOwoJfSwKCgkvKiBBZGp1c3Qgb25lIG9mIHRoZSBkYXRlIHN1Yi1maWVsZHMuICovCglfYWRqdXN0SW5zdERhdGU6IGZ1bmN0aW9uKCBpbnN0LCBvZmZzZXQsIHBlcmlvZCApIHsKCQl2YXIgeWVhciA9IGluc3Quc2VsZWN0ZWRZZWFyICsgKCBwZXJpb2QgPT09ICJZIiA/IG9mZnNldCA6IDAgKSwKCQkJbW9udGggPSBpbnN0LnNlbGVjdGVkTW9udGggKyAoIHBlcmlvZCA9PT0gIk0iID8gb2Zmc2V0IDogMCApLAoJCQlkYXkgPSBNYXRoLm1pbiggaW5zdC5zZWxlY3RlZERheSwgdGhpcy5fZ2V0RGF5c0luTW9udGgoIHllYXIsIG1vbnRoICkgKSArICggcGVyaW9kID09PSAiRCIgPyBvZmZzZXQgOiAwICksCgkJCWRhdGUgPSB0aGlzLl9yZXN0cmljdE1pbk1heCggaW5zdCwgdGhpcy5fZGF5bGlnaHRTYXZpbmdBZGp1c3QoIG5ldyBEYXRlKCB5ZWFyLCBtb250aCwgZGF5ICkgKSApOwoKCQlpbnN0LnNlbGVjdGVkRGF5ID0gZGF0ZS5nZXREYXRlKCk7CgkJaW5zdC5kcmF3TW9udGggPSBpbnN0LnNlbGVjdGVkTW9udGggPSBkYXRlLmdldE1vbnRoKCk7CgkJaW5zdC5kcmF3WWVhciA9IGluc3Quc2VsZWN0ZWRZZWFyID0gZGF0ZS5nZXRGdWxsWWVhcigpOwoJCWlmICggcGVyaW9kID09PSAiTSIgfHwgcGVyaW9kID09PSAiWSIgKSB7CgkJCXRoaXMuX25vdGlmeUNoYW5nZSggaW5zdCApOwoJCX0KCX0sCgoJLyogRW5zdXJlIGEgZGF0ZSBpcyB3aXRoaW4gYW55IG1pbi9tYXggYm91bmRzLiAqLwoJX3Jlc3RyaWN0TWluTWF4OiBmdW5jdGlvbiggaW5zdCwgZGF0ZSApIHsKCQl2YXIgbWluRGF0ZSA9IHRoaXMuX2dldE1pbk1heERhdGUoIGluc3QsICJtaW4iICksCgkJCW1heERhdGUgPSB0aGlzLl9nZXRNaW5NYXhEYXRlKCBpbnN0LCAibWF4IiApLAoJCQluZXdEYXRlID0gKCBtaW5EYXRlICYmIGRhdGUgPCBtaW5EYXRlID8gbWluRGF0ZSA6IGRhdGUgKTsKCQlyZXR1cm4gKCBtYXhEYXRlICYmIG5ld0RhdGUgPiBtYXhEYXRlID8gbWF4RGF0ZSA6IG5ld0RhdGUgKTsKCX0sCgoJLyogTm90aWZ5IGNoYW5nZSBvZiBtb250aC95ZWFyLiAqLwoJX25vdGlmeUNoYW5nZTogZnVuY3Rpb24oIGluc3QgKSB7CgkJdmFyIG9uQ2hhbmdlID0gdGhpcy5fZ2V0KCBpbnN0LCAib25DaGFuZ2VNb250aFllYXIiICk7CgkJaWYgKCBvbkNoYW5nZSApIHsKCQkJb25DaGFuZ2UuYXBwbHkoICggaW5zdC5pbnB1dCA/IGluc3QuaW5wdXRbIDAgXSA6IG51bGwgKSwKCQkJCVsgaW5zdC5zZWxlY3RlZFllYXIsIGluc3Quc2VsZWN0ZWRNb250aCArIDEsIGluc3QgXSApOwoJCX0KCX0sCgoJLyogRGV0ZXJtaW5lIHRoZSBudW1iZXIgb2YgbW9udGhzIHRvIHNob3cuICovCglfZ2V0TnVtYmVyT2ZNb250aHM6IGZ1bmN0aW9uKCBpbnN0ICkgewoJCXZhciBudW1Nb250aHMgPSB0aGlzLl9nZXQoIGluc3QsICJudW1iZXJPZk1vbnRocyIgKTsKCQlyZXR1cm4gKCBudW1Nb250aHMgPT0gbnVsbCA/IFsgMSwgMSBdIDogKCB0eXBlb2YgbnVtTW9udGhzID09PSAibnVtYmVyIiA/IFsgMSwgbnVtTW9udGhzIF0gOiBudW1Nb250aHMgKSApOwoJfSwKCgkvKiBEZXRlcm1pbmUgdGhlIGN1cnJlbnQgbWF4aW11bSBkYXRlIC0gZW5zdXJlIG5vIHRpbWUgY29tcG9uZW50cyBhcmUgc2V0LiAqLwoJX2dldE1pbk1heERhdGU6IGZ1bmN0aW9uKCBpbnN0LCBtaW5NYXggKSB7CgkJcmV0dXJuIHRoaXMuX2RldGVybWluZURhdGUoIGluc3QsIHRoaXMuX2dldCggaW5zdCwgbWluTWF4ICsgIkRhdGUiICksIG51bGwgKTsKCX0sCgoJLyogRmluZCB0aGUgbnVtYmVyIG9mIGRheXMgaW4gYSBnaXZlbiBtb250aC4gKi8KCV9nZXREYXlzSW5Nb250aDogZnVuY3Rpb24oIHllYXIsIG1vbnRoICkgewoJCXJldHVybiAzMiAtIHRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KCBuZXcgRGF0ZSggeWVhciwgbW9udGgsIDMyICkgKS5nZXREYXRlKCk7Cgl9LAoKCS8qIEZpbmQgdGhlIGRheSBvZiB0aGUgd2VlayBvZiB0aGUgZmlyc3Qgb2YgYSBtb250aC4gKi8KCV9nZXRGaXJzdERheU9mTW9udGg6IGZ1bmN0aW9uKCB5ZWFyLCBtb250aCApIHsKCQlyZXR1cm4gbmV3IERhdGUoIHllYXIsIG1vbnRoLCAxICkuZ2V0RGF5KCk7Cgl9LAoKCS8qIERldGVybWluZXMgaWYgd2Ugc2hvdWxkIGFsbG93IGEgIm5leHQvcHJldiIgbW9udGggZGlzcGxheSBjaGFuZ2UuICovCglfY2FuQWRqdXN0TW9udGg6IGZ1bmN0aW9uKCBpbnN0LCBvZmZzZXQsIGN1clllYXIsIGN1ck1vbnRoICkgewoJCXZhciBudW1Nb250aHMgPSB0aGlzLl9nZXROdW1iZXJPZk1vbnRocyggaW5zdCApLAoJCQlkYXRlID0gdGhpcy5fZGF5bGlnaHRTYXZpbmdBZGp1c3QoIG5ldyBEYXRlKCBjdXJZZWFyLAoJCQljdXJNb250aCArICggb2Zmc2V0IDwgMCA/IG9mZnNldCA6IG51bU1vbnRoc1sgMCBdICogbnVtTW9udGhzWyAxIF0gKSwgMSApICk7CgoJCWlmICggb2Zmc2V0IDwgMCApIHsKCQkJZGF0ZS5zZXREYXRlKCB0aGlzLl9nZXREYXlzSW5Nb250aCggZGF0ZS5nZXRGdWxsWWVhcigpLCBkYXRlLmdldE1vbnRoKCkgKSApOwoJCX0KCQlyZXR1cm4gdGhpcy5faXNJblJhbmdlKCBpbnN0LCBkYXRlICk7Cgl9LAoKCS8qIElzIHRoZSBnaXZlbiBkYXRlIGluIHRoZSBhY2NlcHRlZCByYW5nZT8gKi8KCV9pc0luUmFuZ2U6IGZ1bmN0aW9uKCBpbnN0LCBkYXRlICkgewoJCXZhciB5ZWFyU3BsaXQsIGN1cnJlbnRZZWFyLAoJCQltaW5EYXRlID0gdGhpcy5fZ2V0TWluTWF4RGF0ZSggaW5zdCwgIm1pbiIgKSwKCQkJbWF4RGF0ZSA9IHRoaXMuX2dldE1pbk1heERhdGUoIGluc3QsICJtYXgiICksCgkJCW1pblllYXIgPSBudWxsLAoJCQltYXhZZWFyID0gbnVsbCwKCQkJeWVhcnMgPSB0aGlzLl9nZXQoIGluc3QsICJ5ZWFyUmFuZ2UiICk7CgkJCWlmICggeWVhcnMgKSB7CgkJCQl5ZWFyU3BsaXQgPSB5ZWFycy5zcGxpdCggIjoiICk7CgkJCQljdXJyZW50WWVhciA9IG5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKTsKCQkJCW1pblllYXIgPSBwYXJzZUludCggeWVhclNwbGl0WyAwIF0sIDEwICk7CgkJCQltYXhZZWFyID0gcGFyc2VJbnQoIHllYXJTcGxpdFsgMSBdLCAxMCApOwoJCQkJaWYgKCB5ZWFyU3BsaXRbIDAgXS5tYXRjaCggL1srXC1dLiovICkgKSB7CgkJCQkJbWluWWVhciArPSBjdXJyZW50WWVhcjsKCQkJCX0KCQkJCWlmICggeWVhclNwbGl0WyAxIF0ubWF0Y2goIC9bK1wtXS4qLyApICkgewoJCQkJCW1heFllYXIgKz0gY3VycmVudFllYXI7CgkJCQl9CgkJCX0KCgkJcmV0dXJuICggKCAhbWluRGF0ZSB8fCBkYXRlLmdldFRpbWUoKSA+PSBtaW5EYXRlLmdldFRpbWUoKSApICYmCgkJCSggIW1heERhdGUgfHwgZGF0ZS5nZXRUaW1lKCkgPD0gbWF4RGF0ZS5nZXRUaW1lKCkgKSAmJgoJCQkoICFtaW5ZZWFyIHx8IGRhdGUuZ2V0RnVsbFllYXIoKSA+PSBtaW5ZZWFyICkgJiYKCQkJKCAhbWF4WWVhciB8fCBkYXRlLmdldEZ1bGxZZWFyKCkgPD0gbWF4WWVhciApICk7Cgl9LAoKCS8qIFByb3ZpZGUgdGhlIGNvbmZpZ3VyYXRpb24gc2V0dGluZ3MgZm9yIGZvcm1hdHRpbmcvcGFyc2luZy4gKi8KCV9nZXRGb3JtYXRDb25maWc6IGZ1bmN0aW9uKCBpbnN0ICkgewoJCXZhciBzaG9ydFllYXJDdXRvZmYgPSB0aGlzLl9nZXQoIGluc3QsICJzaG9ydFllYXJDdXRvZmYiICk7CgkJc2hvcnRZZWFyQ3V0b2ZmID0gKCB0eXBlb2Ygc2hvcnRZZWFyQ3V0b2ZmICE9PSAic3RyaW5nIiA/IHNob3J0WWVhckN1dG9mZiA6CgkJCW5ldyBEYXRlKCkuZ2V0RnVsbFllYXIoKSAlIDEwMCArIHBhcnNlSW50KCBzaG9ydFllYXJDdXRvZmYsIDEwICkgKTsKCQlyZXR1cm4geyBzaG9ydFllYXJDdXRvZmY6IHNob3J0WWVhckN1dG9mZiwKCQkJZGF5TmFtZXNTaG9ydDogdGhpcy5fZ2V0KCBpbnN0LCAiZGF5TmFtZXNTaG9ydCIgKSwgZGF5TmFtZXM6IHRoaXMuX2dldCggaW5zdCwgImRheU5hbWVzIiApLAoJCQltb250aE5hbWVzU2hvcnQ6IHRoaXMuX2dldCggaW5zdCwgIm1vbnRoTmFtZXNTaG9ydCIgKSwgbW9udGhOYW1lczogdGhpcy5fZ2V0KCBpbnN0LCAibW9udGhOYW1lcyIgKSB9OwoJfSwKCgkvKiBGb3JtYXQgdGhlIGdpdmVuIGRhdGUgZm9yIGRpc3BsYXkuICovCglfZm9ybWF0RGF0ZTogZnVuY3Rpb24oIGluc3QsIGRheSwgbW9udGgsIHllYXIgKSB7CgkJaWYgKCAhZGF5ICkgewoJCQlpbnN0LmN1cnJlbnREYXkgPSBpbnN0LnNlbGVjdGVkRGF5OwoJCQlpbnN0LmN1cnJlbnRNb250aCA9IGluc3Quc2VsZWN0ZWRNb250aDsKCQkJaW5zdC5jdXJyZW50WWVhciA9IGluc3Quc2VsZWN0ZWRZZWFyOwoJCX0KCQl2YXIgZGF0ZSA9ICggZGF5ID8gKCB0eXBlb2YgZGF5ID09PSAib2JqZWN0IiA/IGRheSA6CgkJCXRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KCBuZXcgRGF0ZSggeWVhciwgbW9udGgsIGRheSApICkgKSA6CgkJCXRoaXMuX2RheWxpZ2h0U2F2aW5nQWRqdXN0KCBuZXcgRGF0ZSggaW5zdC5jdXJyZW50WWVhciwgaW5zdC5jdXJyZW50TW9udGgsIGluc3QuY3VycmVudERheSApICkgKTsKCQlyZXR1cm4gdGhpcy5mb3JtYXREYXRlKCB0aGlzLl9nZXQoIGluc3QsICJkYXRlRm9ybWF0IiApLCBkYXRlLCB0aGlzLl9nZXRGb3JtYXRDb25maWcoIGluc3QgKSApOwoJfQp9ICk7CgovKgogKiBCaW5kIGhvdmVyIGV2ZW50cyBmb3IgZGF0ZXBpY2tlciBlbGVtZW50cy4KICogRG9uZSB2aWEgZGVsZWdhdGUgc28gdGhlIGJpbmRpbmcgb25seSBvY2N1cnMgb25jZSBpbiB0aGUgbGlmZXRpbWUgb2YgdGhlIHBhcmVudCBkaXYuCiAqIEdsb2JhbCBkYXRlcGlja2VyX2luc3RBY3RpdmUsIHNldCBieSBfdXBkYXRlRGF0ZXBpY2tlciBhbGxvd3MgdGhlIGhhbmRsZXJzIHRvIGZpbmQgdGhlaXIgd2F5IGJhY2sgdG8gdGhlIGFjdGl2ZSBwaWNrZXIuCiAqLwpmdW5jdGlvbiBkYXRlcGlja2VyX2JpbmRIb3ZlciggZHBEaXYgKSB7Cgl2YXIgc2VsZWN0b3IgPSAiYnV0dG9uLCAudWktZGF0ZXBpY2tlci1wcmV2LCAudWktZGF0ZXBpY2tlci1uZXh0LCAudWktZGF0ZXBpY2tlci1jYWxlbmRhciB0ZCBhIjsKCXJldHVybiBkcERpdi5vbiggIm1vdXNlb3V0Iiwgc2VsZWN0b3IsIGZ1bmN0aW9uKCkgewoJCQkkKCB0aGlzICkucmVtb3ZlQ2xhc3MoICJ1aS1zdGF0ZS1ob3ZlciIgKTsKCQkJaWYgKCB0aGlzLmNsYXNzTmFtZS5pbmRleE9mKCAidWktZGF0ZXBpY2tlci1wcmV2IiApICE9PSAtMSApIHsKCQkJCSQoIHRoaXMgKS5yZW1vdmVDbGFzcyggInVpLWRhdGVwaWNrZXItcHJldi1ob3ZlciIgKTsKCQkJfQoJCQlpZiAoIHRoaXMuY2xhc3NOYW1lLmluZGV4T2YoICJ1aS1kYXRlcGlja2VyLW5leHQiICkgIT09IC0xICkgewoJCQkJJCggdGhpcyApLnJlbW92ZUNsYXNzKCAidWktZGF0ZXBpY2tlci1uZXh0LWhvdmVyIiApOwoJCQl9CgkJfSApCgkJLm9uKCAibW91c2VvdmVyIiwgc2VsZWN0b3IsIGRhdGVwaWNrZXJfaGFuZGxlTW91c2VvdmVyICk7Cn0KCmZ1bmN0aW9uIGRhdGVwaWNrZXJfaGFuZGxlTW91c2VvdmVyKCkgewoJaWYgKCAhJC5kYXRlcGlja2VyLl9pc0Rpc2FibGVkRGF0ZXBpY2tlciggZGF0ZXBpY2tlcl9pbnN0QWN0aXZlLmlubGluZSA/IGRhdGVwaWNrZXJfaW5zdEFjdGl2ZS5kcERpdi5wYXJlbnQoKVsgMCBdIDogZGF0ZXBpY2tlcl9pbnN0QWN0aXZlLmlucHV0WyAwIF0gKSApIHsKCQkkKCB0aGlzICkucGFyZW50cyggIi51aS1kYXRlcGlja2VyLWNhbGVuZGFyIiApLmZpbmQoICJhIiApLnJlbW92ZUNsYXNzKCAidWktc3RhdGUtaG92ZXIiICk7CgkJJCggdGhpcyApLmFkZENsYXNzKCAidWktc3RhdGUtaG92ZXIiICk7CgkJaWYgKCB0aGlzLmNsYXNzTmFtZS5pbmRleE9mKCAidWktZGF0ZXBpY2tlci1wcmV2IiApICE9PSAtMSApIHsKCQkJJCggdGhpcyApLmFkZENsYXNzKCAidWktZGF0ZXBpY2tlci1wcmV2LWhvdmVyIiApOwoJCX0KCQlpZiAoIHRoaXMuY2xhc3NOYW1lLmluZGV4T2YoICJ1aS1kYXRlcGlja2VyLW5leHQiICkgIT09IC0xICkgewoJCQkkKCB0aGlzICkuYWRkQ2xhc3MoICJ1aS1kYXRlcGlja2VyLW5leHQtaG92ZXIiICk7CgkJfQoJfQp9CgovKiBqUXVlcnkgZXh0ZW5kIG5vdyBpZ25vcmVzIG51bGxzISAqLwpmdW5jdGlvbiBkYXRlcGlja2VyX2V4dGVuZFJlbW92ZSggdGFyZ2V0LCBwcm9wcyApIHsKCSQuZXh0ZW5kKCB0YXJnZXQsIHByb3BzICk7Cglmb3IgKCB2YXIgbmFtZSBpbiBwcm9wcyApIHsKCQlpZiAoIHByb3BzWyBuYW1lIF0gPT0gbnVsbCApIHsKCQkJdGFyZ2V0WyBuYW1lIF0gPSBwcm9wc1sgbmFtZSBdOwoJCX0KCX0KCXJldHVybiB0YXJnZXQ7Cn0KCi8qIEludm9rZSB0aGUgZGF0ZXBpY2tlciBmdW5jdGlvbmFsaXR5LgogICBAcGFyYW0gIG9wdGlvbnMgIHN0cmluZyAtIGEgY29tbWFuZCwgb3B0aW9uYWxseSBmb2xsb3dlZCBieSBhZGRpdGlvbmFsIHBhcmFtZXRlcnMgb3IKCQkJCQlPYmplY3QgLSBzZXR0aW5ncyBmb3IgYXR0YWNoaW5nIG5ldyBkYXRlcGlja2VyIGZ1bmN0aW9uYWxpdHkKICAgQHJldHVybiAgalF1ZXJ5IG9iamVjdCAqLwokLmZuLmRhdGVwaWNrZXIgPSBmdW5jdGlvbiggb3B0aW9ucyApIHsKCgkvKiBWZXJpZnkgYW4gZW1wdHkgY29sbGVjdGlvbiB3YXNuJ3QgcGFzc2VkIC0gRml4ZXMgIzY5NzYgKi8KCWlmICggIXRoaXMubGVuZ3RoICkgewoJCXJldHVybiB0aGlzOwoJfQoKCS8qIEluaXRpYWxpc2UgdGhlIGRhdGUgcGlja2VyLiAqLwoJaWYgKCAhJC5kYXRlcGlja2VyLmluaXRpYWxpemVkICkgewoJCSQoIGRvY3VtZW50ICkub24oICJtb3VzZWRvd24iLCAkLmRhdGVwaWNrZXIuX2NoZWNrRXh0ZXJuYWxDbGljayApOwoJCSQuZGF0ZXBpY2tlci5pbml0aWFsaXplZCA9IHRydWU7Cgl9CgoJLyogQXBwZW5kIGRhdGVwaWNrZXIgbWFpbiBjb250YWluZXIgdG8gYm9keSBpZiBub3QgZXhpc3QuICovCglpZiAoICQoICIjIiArICQuZGF0ZXBpY2tlci5fbWFpbkRpdklkICkubGVuZ3RoID09PSAwICkgewoJCSQoICJib2R5IiApLmFwcGVuZCggJC5kYXRlcGlja2VyLmRwRGl2ICk7Cgl9CgoJdmFyIG90aGVyQXJncyA9IEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKCBhcmd1bWVudHMsIDEgKTsKCWlmICggdHlwZW9mIG9wdGlvbnMgPT09ICJzdHJpbmciICYmICggb3B0aW9ucyA9PT0gImlzRGlzYWJsZWQiIHx8IG9wdGlvbnMgPT09ICJnZXREYXRlIiB8fCBvcHRpb25zID09PSAid2lkZ2V0IiApICkgewoJCXJldHVybiAkLmRhdGVwaWNrZXJbICJfIiArIG9wdGlvbnMgKyAiRGF0ZXBpY2tlciIgXS4KCQkJYXBwbHkoICQuZGF0ZXBpY2tlciwgWyB0aGlzWyAwIF0gXS5jb25jYXQoIG90aGVyQXJncyApICk7Cgl9CglpZiAoIG9wdGlvbnMgPT09ICJvcHRpb24iICYmIGFyZ3VtZW50cy5sZW5ndGggPT09IDIgJiYgdHlwZW9mIGFyZ3VtZW50c1sgMSBdID09PSAic3RyaW5nIiApIHsKCQlyZXR1cm4gJC5kYXRlcGlja2VyWyAiXyIgKyBvcHRpb25zICsgIkRhdGVwaWNrZXIiIF0uCgkJCWFwcGx5KCAkLmRhdGVwaWNrZXIsIFsgdGhpc1sgMCBdIF0uY29uY2F0KCBvdGhlckFyZ3MgKSApOwoJfQoJcmV0dXJuIHRoaXMuZWFjaCggZnVuY3Rpb24oKSB7CgkJdHlwZW9mIG9wdGlvbnMgPT09ICJzdHJpbmciID8KCQkJJC5kYXRlcGlja2VyWyAiXyIgKyBvcHRpb25zICsgIkRhdGVwaWNrZXIiIF0uCgkJCQlhcHBseSggJC5kYXRlcGlja2VyLCBbIHRoaXMgXS5jb25jYXQoIG90aGVyQXJncyApICkgOgoJCQkkLmRhdGVwaWNrZXIuX2F0dGFjaERhdGVwaWNrZXIoIHRoaXMsIG9wdGlvbnMgKTsKCX0gKTsKfTsKCiQuZGF0ZXBpY2tlciA9IG5ldyBEYXRlcGlja2VyKCk7IC8vIHNpbmdsZXRvbiBpbnN0YW5jZQokLmRhdGVwaWNrZXIuaW5pdGlhbGl6ZWQgPSBmYWxzZTsKJC5kYXRlcGlja2VyLnV1aWQgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKJC5kYXRlcGlja2VyLnZlcnNpb24gPSAiMS4xMi4xIjsKCnZhciB3aWRnZXRzRGF0ZXBpY2tlciA9ICQuZGF0ZXBpY2tlcjsKCgovKiEKICogalF1ZXJ5IFVJIERpYWxvZyAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IERpYWxvZwovLz4+Z3JvdXA6IFdpZGdldHMKLy8+PmRlc2NyaXB0aW9uOiBEaXNwbGF5cyBjdXN0b21pemFibGUgZGlhbG9nIHdpbmRvd3MuCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9kaWFsb2cvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9kaWFsb2cvCi8vPj5jc3Muc3RydWN0dXJlOiAuLi8uLi90aGVtZXMvYmFzZS9jb3JlLmNzcwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvZGlhbG9nLmNzcwovLz4+Y3NzLnRoZW1lOiAuLi8uLi90aGVtZXMvYmFzZS90aGVtZS5jc3MKCgoKJC53aWRnZXQoICJ1aS5kaWFsb2ciLCB7Cgl2ZXJzaW9uOiAiMS4xMi4xIiwKCW9wdGlvbnM6IHsKCQlhcHBlbmRUbzogImJvZHkiLAoJCWF1dG9PcGVuOiB0cnVlLAoJCWJ1dHRvbnM6IFtdLAoJCWNsYXNzZXM6IHsKCQkJInVpLWRpYWxvZyI6ICJ1aS1jb3JuZXItYWxsIiwKCQkJInVpLWRpYWxvZy10aXRsZWJhciI6ICJ1aS1jb3JuZXItYWxsIgoJCX0sCgkJY2xvc2VPbkVzY2FwZTogdHJ1ZSwKCQljbG9zZVRleHQ6ICJDbG9zZSIsCgkJZHJhZ2dhYmxlOiB0cnVlLAoJCWhpZGU6IG51bGwsCgkJaGVpZ2h0OiAiYXV0byIsCgkJbWF4SGVpZ2h0OiBudWxsLAoJCW1heFdpZHRoOiBudWxsLAoJCW1pbkhlaWdodDogMTUwLAoJCW1pbldpZHRoOiAxNTAsCgkJbW9kYWw6IGZhbHNlLAoJCXBvc2l0aW9uOiB7CgkJCW15OiAiY2VudGVyIiwKCQkJYXQ6ICJjZW50ZXIiLAoJCQlvZjogd2luZG93LAoJCQljb2xsaXNpb246ICJmaXQiLAoKCQkJLy8gRW5zdXJlIHRoZSB0aXRsZWJhciBpcyBhbHdheXMgdmlzaWJsZQoJCQl1c2luZzogZnVuY3Rpb24oIHBvcyApIHsKCQkJCXZhciB0b3BPZmZzZXQgPSAkKCB0aGlzICkuY3NzKCBwb3MgKS5vZmZzZXQoKS50b3A7CgkJCQlpZiAoIHRvcE9mZnNldCA8IDAgKSB7CgkJCQkJJCggdGhpcyApLmNzcyggInRvcCIsIHBvcy50b3AgLSB0b3BPZmZzZXQgKTsKCQkJCX0KCQkJfQoJCX0sCgkJcmVzaXphYmxlOiB0cnVlLAoJCXNob3c6IG51bGwsCgkJdGl0bGU6IG51bGwsCgkJd2lkdGg6IDMwMCwKCgkJLy8gQ2FsbGJhY2tzCgkJYmVmb3JlQ2xvc2U6IG51bGwsCgkJY2xvc2U6IG51bGwsCgkJZHJhZzogbnVsbCwKCQlkcmFnU3RhcnQ6IG51bGwsCgkJZHJhZ1N0b3A6IG51bGwsCgkJZm9jdXM6IG51bGwsCgkJb3BlbjogbnVsbCwKCQlyZXNpemU6IG51bGwsCgkJcmVzaXplU3RhcnQ6IG51bGwsCgkJcmVzaXplU3RvcDogbnVsbAoJfSwKCglzaXplUmVsYXRlZE9wdGlvbnM6IHsKCQlidXR0b25zOiB0cnVlLAoJCWhlaWdodDogdHJ1ZSwKCQltYXhIZWlnaHQ6IHRydWUsCgkJbWF4V2lkdGg6IHRydWUsCgkJbWluSGVpZ2h0OiB0cnVlLAoJCW1pbldpZHRoOiB0cnVlLAoJCXdpZHRoOiB0cnVlCgl9LAoKCXJlc2l6YWJsZVJlbGF0ZWRPcHRpb25zOiB7CgkJbWF4SGVpZ2h0OiB0cnVlLAoJCW1heFdpZHRoOiB0cnVlLAoJCW1pbkhlaWdodDogdHJ1ZSwKCQltaW5XaWR0aDogdHJ1ZQoJfSwKCglfY3JlYXRlOiBmdW5jdGlvbigpIHsKCQl0aGlzLm9yaWdpbmFsQ3NzID0gewoJCQlkaXNwbGF5OiB0aGlzLmVsZW1lbnRbIDAgXS5zdHlsZS5kaXNwbGF5LAoJCQl3aWR0aDogdGhpcy5lbGVtZW50WyAwIF0uc3R5bGUud2lkdGgsCgkJCW1pbkhlaWdodDogdGhpcy5lbGVtZW50WyAwIF0uc3R5bGUubWluSGVpZ2h0LAoJCQltYXhIZWlnaHQ6IHRoaXMuZWxlbWVudFsgMCBdLnN0eWxlLm1heEhlaWdodCwKCQkJaGVpZ2h0OiB0aGlzLmVsZW1lbnRbIDAgXS5zdHlsZS5oZWlnaHQKCQl9OwoJCXRoaXMub3JpZ2luYWxQb3NpdGlvbiA9IHsKCQkJcGFyZW50OiB0aGlzLmVsZW1lbnQucGFyZW50KCksCgkJCWluZGV4OiB0aGlzLmVsZW1lbnQucGFyZW50KCkuY2hpbGRyZW4oKS5pbmRleCggdGhpcy5lbGVtZW50ICkKCQl9OwoJCXRoaXMub3JpZ2luYWxUaXRsZSA9IHRoaXMuZWxlbWVudC5hdHRyKCAidGl0bGUiICk7CgkJaWYgKCB0aGlzLm9wdGlvbnMudGl0bGUgPT0gbnVsbCAmJiB0aGlzLm9yaWdpbmFsVGl0bGUgIT0gbnVsbCApIHsKCQkJdGhpcy5vcHRpb25zLnRpdGxlID0gdGhpcy5vcmlnaW5hbFRpdGxlOwoJCX0KCgkJLy8gRGlhbG9ncyBjYW4ndCBiZSBkaXNhYmxlZAoJCWlmICggdGhpcy5vcHRpb25zLmRpc2FibGVkICkgewoJCQl0aGlzLm9wdGlvbnMuZGlzYWJsZWQgPSBmYWxzZTsKCQl9CgoJCXRoaXMuX2NyZWF0ZVdyYXBwZXIoKTsKCgkJdGhpcy5lbGVtZW50CgkJCS5zaG93KCkKCQkJLnJlbW92ZUF0dHIoICJ0aXRsZSIgKQoJCQkuYXBwZW5kVG8oIHRoaXMudWlEaWFsb2cgKTsKCgkJdGhpcy5fYWRkQ2xhc3MoICJ1aS1kaWFsb2ctY29udGVudCIsICJ1aS13aWRnZXQtY29udGVudCIgKTsKCgkJdGhpcy5fY3JlYXRlVGl0bGViYXIoKTsKCQl0aGlzLl9jcmVhdGVCdXR0b25QYW5lKCk7CgoJCWlmICggdGhpcy5vcHRpb25zLmRyYWdnYWJsZSAmJiAkLmZuLmRyYWdnYWJsZSApIHsKCQkJdGhpcy5fbWFrZURyYWdnYWJsZSgpOwoJCX0KCQlpZiAoIHRoaXMub3B0aW9ucy5yZXNpemFibGUgJiYgJC5mbi5yZXNpemFibGUgKSB7CgkJCXRoaXMuX21ha2VSZXNpemFibGUoKTsKCQl9CgoJCXRoaXMuX2lzT3BlbiA9IGZhbHNlOwoKCQl0aGlzLl90cmFja0ZvY3VzKCk7Cgl9LAoKCV9pbml0OiBmdW5jdGlvbigpIHsKCQlpZiAoIHRoaXMub3B0aW9ucy5hdXRvT3BlbiApIHsKCQkJdGhpcy5vcGVuKCk7CgkJfQoJfSwKCglfYXBwZW5kVG86IGZ1bmN0aW9uKCkgewoJCXZhciBlbGVtZW50ID0gdGhpcy5vcHRpb25zLmFwcGVuZFRvOwoJCWlmICggZWxlbWVudCAmJiAoIGVsZW1lbnQuanF1ZXJ5IHx8IGVsZW1lbnQubm9kZVR5cGUgKSApIHsKCQkJcmV0dXJuICQoIGVsZW1lbnQgKTsKCQl9CgkJcmV0dXJuIHRoaXMuZG9jdW1lbnQuZmluZCggZWxlbWVudCB8fCAiYm9keSIgKS5lcSggMCApOwoJfSwKCglfZGVzdHJveTogZnVuY3Rpb24oKSB7CgkJdmFyIG5leHQsCgkJCW9yaWdpbmFsUG9zaXRpb24gPSB0aGlzLm9yaWdpbmFsUG9zaXRpb247CgoJCXRoaXMuX3VudHJhY2tJbnN0YW5jZSgpOwoJCXRoaXMuX2Rlc3Ryb3lPdmVybGF5KCk7CgoJCXRoaXMuZWxlbWVudAoJCQkucmVtb3ZlVW5pcXVlSWQoKQoJCQkuY3NzKCB0aGlzLm9yaWdpbmFsQ3NzICkKCgkJCS8vIFdpdGhvdXQgZGV0YWNoaW5nIGZpcnN0LCB0aGUgZm9sbG93aW5nIGJlY29tZXMgcmVhbGx5IHNsb3cKCQkJLmRldGFjaCgpOwoKCQl0aGlzLnVpRGlhbG9nLnJlbW92ZSgpOwoKCQlpZiAoIHRoaXMub3JpZ2luYWxUaXRsZSApIHsKCQkJdGhpcy5lbGVtZW50LmF0dHIoICJ0aXRsZSIsIHRoaXMub3JpZ2luYWxUaXRsZSApOwoJCX0KCgkJbmV4dCA9IG9yaWdpbmFsUG9zaXRpb24ucGFyZW50LmNoaWxkcmVuKCkuZXEoIG9yaWdpbmFsUG9zaXRpb24uaW5kZXggKTsKCgkJLy8gRG9uJ3QgdHJ5IHRvIHBsYWNlIHRoZSBkaWFsb2cgbmV4dCB0byBpdHNlbGYgKCM4NjEzKQoJCWlmICggbmV4dC5sZW5ndGggJiYgbmV4dFsgMCBdICE9PSB0aGlzLmVsZW1lbnRbIDAgXSApIHsKCQkJbmV4dC5iZWZvcmUoIHRoaXMuZWxlbWVudCApOwoJCX0gZWxzZSB7CgkJCW9yaWdpbmFsUG9zaXRpb24ucGFyZW50LmFwcGVuZCggdGhpcy5lbGVtZW50ICk7CgkJfQoJfSwKCgl3aWRnZXQ6IGZ1bmN0aW9uKCkgewoJCXJldHVybiB0aGlzLnVpRGlhbG9nOwoJfSwKCglkaXNhYmxlOiAkLm5vb3AsCgllbmFibGU6ICQubm9vcCwKCgljbG9zZTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXZhciB0aGF0ID0gdGhpczsKCgkJaWYgKCAhdGhpcy5faXNPcGVuIHx8IHRoaXMuX3RyaWdnZXIoICJiZWZvcmVDbG9zZSIsIGV2ZW50ICkgPT09IGZhbHNlICkgewoJCQlyZXR1cm47CgkJfQoKCQl0aGlzLl9pc09wZW4gPSBmYWxzZTsKCQl0aGlzLl9mb2N1c2VkRWxlbWVudCA9IG51bGw7CgkJdGhpcy5fZGVzdHJveU92ZXJsYXkoKTsKCQl0aGlzLl91bnRyYWNrSW5zdGFuY2UoKTsKCgkJaWYgKCAhdGhpcy5vcGVuZXIuZmlsdGVyKCAiOmZvY3VzYWJsZSIgKS50cmlnZ2VyKCAiZm9jdXMiICkubGVuZ3RoICkgewoKCQkJLy8gSGlkaW5nIGEgZm9jdXNlZCBlbGVtZW50IGRvZXNuJ3QgdHJpZ2dlciBibHVyIGluIFdlYktpdAoJCQkvLyBzbyBpbiBjYXNlIHdlIGhhdmUgbm90aGluZyB0byBmb2N1cyBvbiwgZXhwbGljaXRseSBibHVyIHRoZSBhY3RpdmUgZWxlbWVudAoJCQkvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDcxODIKCQkJJC51aS5zYWZlQmx1ciggJC51aS5zYWZlQWN0aXZlRWxlbWVudCggdGhpcy5kb2N1bWVudFsgMCBdICkgKTsKCQl9CgoJCXRoaXMuX2hpZGUoIHRoaXMudWlEaWFsb2csIHRoaXMub3B0aW9ucy5oaWRlLCBmdW5jdGlvbigpIHsKCQkJdGhhdC5fdHJpZ2dlciggImNsb3NlIiwgZXZlbnQgKTsKCQl9ICk7Cgl9LAoKCWlzT3BlbjogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMuX2lzT3BlbjsKCX0sCgoJbW92ZVRvVG9wOiBmdW5jdGlvbigpIHsKCQl0aGlzLl9tb3ZlVG9Ub3AoKTsKCX0sCgoJX21vdmVUb1RvcDogZnVuY3Rpb24oIGV2ZW50LCBzaWxlbnQgKSB7CgkJdmFyIG1vdmVkID0gZmFsc2UsCgkJCXpJbmRpY2VzID0gdGhpcy51aURpYWxvZy5zaWJsaW5ncyggIi51aS1mcm9udDp2aXNpYmxlIiApLm1hcCggZnVuY3Rpb24oKSB7CgkJCQlyZXR1cm4gKyQoIHRoaXMgKS5jc3MoICJ6LWluZGV4IiApOwoJCQl9ICkuZ2V0KCksCgkJCXpJbmRleE1heCA9IE1hdGgubWF4LmFwcGx5KCBudWxsLCB6SW5kaWNlcyApOwoKCQlpZiAoIHpJbmRleE1heCA+PSArdGhpcy51aURpYWxvZy5jc3MoICJ6LWluZGV4IiApICkgewoJCQl0aGlzLnVpRGlhbG9nLmNzcyggInotaW5kZXgiLCB6SW5kZXhNYXggKyAxICk7CgkJCW1vdmVkID0gdHJ1ZTsKCQl9CgoJCWlmICggbW92ZWQgJiYgIXNpbGVudCApIHsKCQkJdGhpcy5fdHJpZ2dlciggImZvY3VzIiwgZXZlbnQgKTsKCQl9CgkJcmV0dXJuIG1vdmVkOwoJfSwKCglvcGVuOiBmdW5jdGlvbigpIHsKCQl2YXIgdGhhdCA9IHRoaXM7CgkJaWYgKCB0aGlzLl9pc09wZW4gKSB7CgkJCWlmICggdGhpcy5fbW92ZVRvVG9wKCkgKSB7CgkJCQl0aGlzLl9mb2N1c1RhYmJhYmxlKCk7CgkJCX0KCQkJcmV0dXJuOwoJCX0KCgkJdGhpcy5faXNPcGVuID0gdHJ1ZTsKCQl0aGlzLm9wZW5lciA9ICQoICQudWkuc2FmZUFjdGl2ZUVsZW1lbnQoIHRoaXMuZG9jdW1lbnRbIDAgXSApICk7CgoJCXRoaXMuX3NpemUoKTsKCQl0aGlzLl9wb3NpdGlvbigpOwoJCXRoaXMuX2NyZWF0ZU92ZXJsYXkoKTsKCQl0aGlzLl9tb3ZlVG9Ub3AoIG51bGwsIHRydWUgKTsKCgkJLy8gRW5zdXJlIHRoZSBvdmVybGF5IGlzIG1vdmVkIHRvIHRoZSB0b3Agd2l0aCB0aGUgZGlhbG9nLCBidXQgb25seSB3aGVuCgkJLy8gb3BlbmluZy4gVGhlIG92ZXJsYXkgc2hvdWxkbid0IG1vdmUgYWZ0ZXIgdGhlIGRpYWxvZyBpcyBvcGVuIHNvIHRoYXQKCQkvLyBtb2RlbGVzcyBkaWFsb2dzIG9wZW5lZCBhZnRlciB0aGUgbW9kYWwgZGlhbG9nIHN0YWNrIHByb3Blcmx5LgoJCWlmICggdGhpcy5vdmVybGF5ICkgewoJCQl0aGlzLm92ZXJsYXkuY3NzKCAiei1pbmRleCIsIHRoaXMudWlEaWFsb2cuY3NzKCAiei1pbmRleCIgKSAtIDEgKTsKCQl9CgoJCXRoaXMuX3Nob3coIHRoaXMudWlEaWFsb2csIHRoaXMub3B0aW9ucy5zaG93LCBmdW5jdGlvbigpIHsKCQkJdGhhdC5fZm9jdXNUYWJiYWJsZSgpOwoJCQl0aGF0Ll90cmlnZ2VyKCAiZm9jdXMiICk7CgkJfSApOwoKCQkvLyBUcmFjayB0aGUgZGlhbG9nIGltbWVkaWF0ZWx5IHVwb24gb3BlbmVuaW5nIGluIGNhc2UgYSBmb2N1cyBldmVudAoJCS8vIHNvbWVob3cgb2NjdXJzIG91dHNpZGUgb2YgdGhlIGRpYWxvZyBiZWZvcmUgYW4gZWxlbWVudCBpbnNpZGUgdGhlCgkJLy8gZGlhbG9nIGlzIGZvY3VzZWQgKCMxMDE1MikKCQl0aGlzLl9tYWtlRm9jdXNUYXJnZXQoKTsKCgkJdGhpcy5fdHJpZ2dlciggIm9wZW4iICk7Cgl9LAoKCV9mb2N1c1RhYmJhYmxlOiBmdW5jdGlvbigpIHsKCgkJLy8gU2V0IGZvY3VzIHRvIHRoZSBmaXJzdCBtYXRjaDoKCQkvLyAxLiBBbiBlbGVtZW50IHRoYXQgd2FzIGZvY3VzZWQgcHJldmlvdXNseQoJCS8vIDIuIEZpcnN0IGVsZW1lbnQgaW5zaWRlIHRoZSBkaWFsb2cgbWF0Y2hpbmcgW2F1dG9mb2N1c10KCQkvLyAzLiBUYWJiYWJsZSBlbGVtZW50IGluc2lkZSB0aGUgY29udGVudCBlbGVtZW50CgkJLy8gNC4gVGFiYmFibGUgZWxlbWVudCBpbnNpZGUgdGhlIGJ1dHRvbnBhbmUKCQkvLyA1LiBUaGUgY2xvc2UgYnV0dG9uCgkJLy8gNi4gVGhlIGRpYWxvZyBpdHNlbGYKCQl2YXIgaGFzRm9jdXMgPSB0aGlzLl9mb2N1c2VkRWxlbWVudDsKCQlpZiAoICFoYXNGb2N1cyApIHsKCQkJaGFzRm9jdXMgPSB0aGlzLmVsZW1lbnQuZmluZCggIlthdXRvZm9jdXNdIiApOwoJCX0KCQlpZiAoICFoYXNGb2N1cy5sZW5ndGggKSB7CgkJCWhhc0ZvY3VzID0gdGhpcy5lbGVtZW50LmZpbmQoICI6dGFiYmFibGUiICk7CgkJfQoJCWlmICggIWhhc0ZvY3VzLmxlbmd0aCApIHsKCQkJaGFzRm9jdXMgPSB0aGlzLnVpRGlhbG9nQnV0dG9uUGFuZS5maW5kKCAiOnRhYmJhYmxlIiApOwoJCX0KCQlpZiAoICFoYXNGb2N1cy5sZW5ndGggKSB7CgkJCWhhc0ZvY3VzID0gdGhpcy51aURpYWxvZ1RpdGxlYmFyQ2xvc2UuZmlsdGVyKCAiOnRhYmJhYmxlIiApOwoJCX0KCQlpZiAoICFoYXNGb2N1cy5sZW5ndGggKSB7CgkJCWhhc0ZvY3VzID0gdGhpcy51aURpYWxvZzsKCQl9CgkJaGFzRm9jdXMuZXEoIDAgKS50cmlnZ2VyKCAiZm9jdXMiICk7Cgl9LAoKCV9rZWVwRm9jdXM6IGZ1bmN0aW9uKCBldmVudCApIHsKCQlmdW5jdGlvbiBjaGVja0ZvY3VzKCkgewoJCQl2YXIgYWN0aXZlRWxlbWVudCA9ICQudWkuc2FmZUFjdGl2ZUVsZW1lbnQoIHRoaXMuZG9jdW1lbnRbIDAgXSApLAoJCQkJaXNBY3RpdmUgPSB0aGlzLnVpRGlhbG9nWyAwIF0gPT09IGFjdGl2ZUVsZW1lbnQgfHwKCQkJCQkkLmNvbnRhaW5zKCB0aGlzLnVpRGlhbG9nWyAwIF0sIGFjdGl2ZUVsZW1lbnQgKTsKCQkJaWYgKCAhaXNBY3RpdmUgKSB7CgkJCQl0aGlzLl9mb2N1c1RhYmJhYmxlKCk7CgkJCX0KCQl9CgkJZXZlbnQucHJldmVudERlZmF1bHQoKTsKCQljaGVja0ZvY3VzLmNhbGwoIHRoaXMgKTsKCgkJLy8gc3VwcG9ydDogSUUKCQkvLyBJRSA8PSA4IGRvZXNuJ3QgcHJldmVudCBtb3ZpbmcgZm9jdXMgZXZlbiB3aXRoIGV2ZW50LnByZXZlbnREZWZhdWx0KCkKCQkvLyBzbyB3ZSBjaGVjayBhZ2FpbiBsYXRlcgoJCXRoaXMuX2RlbGF5KCBjaGVja0ZvY3VzICk7Cgl9LAoKCV9jcmVhdGVXcmFwcGVyOiBmdW5jdGlvbigpIHsKCQl0aGlzLnVpRGlhbG9nID0gJCggIjxkaXY+IiApCgkJCS5oaWRlKCkKCQkJLmF0dHIoIHsKCgkJCQkvLyBTZXR0aW5nIHRhYkluZGV4IG1ha2VzIHRoZSBkaXYgZm9jdXNhYmxlCgkJCQl0YWJJbmRleDogLTEsCgkJCQlyb2xlOiAiZGlhbG9nIgoJCQl9ICkKCQkJLmFwcGVuZFRvKCB0aGlzLl9hcHBlbmRUbygpICk7CgoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLnVpRGlhbG9nLCAidWktZGlhbG9nIiwgInVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCB1aS1mcm9udCIgKTsKCQl0aGlzLl9vbiggdGhpcy51aURpYWxvZywgewoJCQlrZXlkb3duOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJCQlpZiAoIHRoaXMub3B0aW9ucy5jbG9zZU9uRXNjYXBlICYmICFldmVudC5pc0RlZmF1bHRQcmV2ZW50ZWQoKSAmJiBldmVudC5rZXlDb2RlICYmCgkJCQkJCWV2ZW50LmtleUNvZGUgPT09ICQudWkua2V5Q29kZS5FU0NBUEUgKSB7CgkJCQkJZXZlbnQucHJldmVudERlZmF1bHQoKTsKCQkJCQl0aGlzLmNsb3NlKCBldmVudCApOwoJCQkJCXJldHVybjsKCQkJCX0KCgkJCQkvLyBQcmV2ZW50IHRhYmJpbmcgb3V0IG9mIGRpYWxvZ3MKCQkJCWlmICggZXZlbnQua2V5Q29kZSAhPT0gJC51aS5rZXlDb2RlLlRBQiB8fCBldmVudC5pc0RlZmF1bHRQcmV2ZW50ZWQoKSApIHsKCQkJCQlyZXR1cm47CgkJCQl9CgkJCQl2YXIgdGFiYmFibGVzID0gdGhpcy51aURpYWxvZy5maW5kKCAiOnRhYmJhYmxlIiApLAoJCQkJCWZpcnN0ID0gdGFiYmFibGVzLmZpbHRlciggIjpmaXJzdCIgKSwKCQkJCQlsYXN0ID0gdGFiYmFibGVzLmZpbHRlciggIjpsYXN0IiApOwoKCQkJCWlmICggKCBldmVudC50YXJnZXQgPT09IGxhc3RbIDAgXSB8fCBldmVudC50YXJnZXQgPT09IHRoaXMudWlEaWFsb2dbIDAgXSApICYmCgkJCQkJCSFldmVudC5zaGlmdEtleSApIHsKCQkJCQl0aGlzLl9kZWxheSggZnVuY3Rpb24oKSB7CgkJCQkJCWZpcnN0LnRyaWdnZXIoICJmb2N1cyIgKTsKCQkJCQl9ICk7CgkJCQkJZXZlbnQucHJldmVudERlZmF1bHQoKTsKCQkJCX0gZWxzZSBpZiAoICggZXZlbnQudGFyZ2V0ID09PSBmaXJzdFsgMCBdIHx8CgkJCQkJCWV2ZW50LnRhcmdldCA9PT0gdGhpcy51aURpYWxvZ1sgMCBdICkgJiYgZXZlbnQuc2hpZnRLZXkgKSB7CgkJCQkJdGhpcy5fZGVsYXkoIGZ1bmN0aW9uKCkgewoJCQkJCQlsYXN0LnRyaWdnZXIoICJmb2N1cyIgKTsKCQkJCQl9ICk7CgkJCQkJZXZlbnQucHJldmVudERlZmF1bHQoKTsKCQkJCX0KCQkJfSwKCQkJbW91c2Vkb3duOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJCQlpZiAoIHRoaXMuX21vdmVUb1RvcCggZXZlbnQgKSApIHsKCQkJCQl0aGlzLl9mb2N1c1RhYmJhYmxlKCk7CgkJCQl9CgkJCX0KCQl9ICk7CgoJCS8vIFdlIGFzc3VtZSB0aGF0IGFueSBleGlzdGluZyBhcmlhLWRlc2NyaWJlZGJ5IGF0dHJpYnV0ZSBtZWFucwoJCS8vIHRoYXQgdGhlIGRpYWxvZyBjb250ZW50IGlzIG1hcmtlZCB1cCBwcm9wZXJseQoJCS8vIG90aGVyd2lzZSB3ZSBicnV0ZSBmb3JjZSB0aGUgY29udGVudCBhcyB0aGUgZGVzY3JpcHRpb24KCQlpZiAoICF0aGlzLmVsZW1lbnQuZmluZCggIlthcmlhLWRlc2NyaWJlZGJ5XSIgKS5sZW5ndGggKSB7CgkJCXRoaXMudWlEaWFsb2cuYXR0ciggewoJCQkJImFyaWEtZGVzY3JpYmVkYnkiOiB0aGlzLmVsZW1lbnQudW5pcXVlSWQoKS5hdHRyKCAiaWQiICkKCQkJfSApOwoJCX0KCX0sCgoJX2NyZWF0ZVRpdGxlYmFyOiBmdW5jdGlvbigpIHsKCQl2YXIgdWlEaWFsb2dUaXRsZTsKCgkJdGhpcy51aURpYWxvZ1RpdGxlYmFyID0gJCggIjxkaXY+IiApOwoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLnVpRGlhbG9nVGl0bGViYXIsCgkJCSJ1aS1kaWFsb2ctdGl0bGViYXIiLCAidWktd2lkZ2V0LWhlYWRlciB1aS1oZWxwZXItY2xlYXJmaXgiICk7CgkJdGhpcy5fb24oIHRoaXMudWlEaWFsb2dUaXRsZWJhciwgewoJCQltb3VzZWRvd246IGZ1bmN0aW9uKCBldmVudCApIHsKCgkJCQkvLyBEb24ndCBwcmV2ZW50IGNsaWNrIG9uIGNsb3NlIGJ1dHRvbiAoIzg4MzgpCgkJCQkvLyBGb2N1c2luZyBhIGRpYWxvZyB0aGF0IGlzIHBhcnRpYWxseSBzY3JvbGxlZCBvdXQgb2YgdmlldwoJCQkJLy8gY2F1c2VzIHRoZSBicm93c2VyIHRvIHNjcm9sbCBpdCBpbnRvIHZpZXcsIHByZXZlbnRpbmcgdGhlIGNsaWNrIGV2ZW50CgkJCQlpZiAoICEkKCBldmVudC50YXJnZXQgKS5jbG9zZXN0KCAiLnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSIgKSApIHsKCgkJCQkJLy8gRGlhbG9nIGlzbid0IGdldHRpbmcgZm9jdXMgd2hlbiBkcmFnZ2luZyAoIzgwNjMpCgkJCQkJdGhpcy51aURpYWxvZy50cmlnZ2VyKCAiZm9jdXMiICk7CgkJCQl9CgkJCX0KCQl9ICk7CgoJCS8vIFN1cHBvcnQ6IElFCgkJLy8gVXNlIHR5cGU9ImJ1dHRvbiIgdG8gcHJldmVudCBlbnRlciBrZXlwcmVzc2VzIGluIHRleHRib3hlcyBmcm9tIGNsb3NpbmcgdGhlCgkJLy8gZGlhbG9nIGluIElFICgjOTMxMikKCQl0aGlzLnVpRGlhbG9nVGl0bGViYXJDbG9zZSA9ICQoICI8YnV0dG9uIHR5cGU9J2J1dHRvbic+PC9idXR0b24+IiApCgkJCS5idXR0b24oIHsKCQkJCWxhYmVsOiAkKCAiPGE+IiApLnRleHQoIHRoaXMub3B0aW9ucy5jbG9zZVRleHQgKS5odG1sKCksCgkJCQlpY29uOiAidWktaWNvbi1jbG9zZXRoaWNrIiwKCQkJCXNob3dMYWJlbDogZmFsc2UKCQkJfSApCgkJCS5hcHBlbmRUbyggdGhpcy51aURpYWxvZ1RpdGxlYmFyICk7CgoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLnVpRGlhbG9nVGl0bGViYXJDbG9zZSwgInVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSIgKTsKCQl0aGlzLl9vbiggdGhpcy51aURpYWxvZ1RpdGxlYmFyQ2xvc2UsIHsKCQkJY2xpY2s6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCQl0aGlzLmNsb3NlKCBldmVudCApOwoJCQl9CgkJfSApOwoKCQl1aURpYWxvZ1RpdGxlID0gJCggIjxzcGFuPiIgKS51bmlxdWVJZCgpLnByZXBlbmRUbyggdGhpcy51aURpYWxvZ1RpdGxlYmFyICk7CgkJdGhpcy5fYWRkQ2xhc3MoIHVpRGlhbG9nVGl0bGUsICJ1aS1kaWFsb2ctdGl0bGUiICk7CgkJdGhpcy5fdGl0bGUoIHVpRGlhbG9nVGl0bGUgKTsKCgkJdGhpcy51aURpYWxvZ1RpdGxlYmFyLnByZXBlbmRUbyggdGhpcy51aURpYWxvZyApOwoKCQl0aGlzLnVpRGlhbG9nLmF0dHIoIHsKCQkJImFyaWEtbGFiZWxsZWRieSI6IHVpRGlhbG9nVGl0bGUuYXR0ciggImlkIiApCgkJfSApOwoJfSwKCglfdGl0bGU6IGZ1bmN0aW9uKCB0aXRsZSApIHsKCQlpZiAoIHRoaXMub3B0aW9ucy50aXRsZSApIHsKCQkJdGl0bGUudGV4dCggdGhpcy5vcHRpb25zLnRpdGxlICk7CgkJfSBlbHNlIHsKCQkJdGl0bGUuaHRtbCggIiYjMTYwOyIgKTsKCQl9Cgl9LAoKCV9jcmVhdGVCdXR0b25QYW5lOiBmdW5jdGlvbigpIHsKCQl0aGlzLnVpRGlhbG9nQnV0dG9uUGFuZSA9ICQoICI8ZGl2PiIgKTsKCQl0aGlzLl9hZGRDbGFzcyggdGhpcy51aURpYWxvZ0J1dHRvblBhbmUsICJ1aS1kaWFsb2ctYnV0dG9ucGFuZSIsCgkJCSJ1aS13aWRnZXQtY29udGVudCB1aS1oZWxwZXItY2xlYXJmaXgiICk7CgoJCXRoaXMudWlCdXR0b25TZXQgPSAkKCAiPGRpdj4iICkKCQkJLmFwcGVuZFRvKCB0aGlzLnVpRGlhbG9nQnV0dG9uUGFuZSApOwoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLnVpQnV0dG9uU2V0LCAidWktZGlhbG9nLWJ1dHRvbnNldCIgKTsKCgkJdGhpcy5fY3JlYXRlQnV0dG9ucygpOwoJfSwKCglfY3JlYXRlQnV0dG9uczogZnVuY3Rpb24oKSB7CgkJdmFyIHRoYXQgPSB0aGlzLAoJCQlidXR0b25zID0gdGhpcy5vcHRpb25zLmJ1dHRvbnM7CgoJCS8vIElmIHdlIGFscmVhZHkgaGF2ZSBhIGJ1dHRvbiBwYW5lLCByZW1vdmUgaXQKCQl0aGlzLnVpRGlhbG9nQnV0dG9uUGFuZS5yZW1vdmUoKTsKCQl0aGlzLnVpQnV0dG9uU2V0LmVtcHR5KCk7CgoJCWlmICggJC5pc0VtcHR5T2JqZWN0KCBidXR0b25zICkgfHwgKCAkLmlzQXJyYXkoIGJ1dHRvbnMgKSAmJiAhYnV0dG9ucy5sZW5ndGggKSApIHsKCQkJdGhpcy5fcmVtb3ZlQ2xhc3MoIHRoaXMudWlEaWFsb2csICJ1aS1kaWFsb2ctYnV0dG9ucyIgKTsKCQkJcmV0dXJuOwoJCX0KCgkJJC5lYWNoKCBidXR0b25zLCBmdW5jdGlvbiggbmFtZSwgcHJvcHMgKSB7CgkJCXZhciBjbGljaywgYnV0dG9uT3B0aW9uczsKCQkJcHJvcHMgPSAkLmlzRnVuY3Rpb24oIHByb3BzICkgPwoJCQkJeyBjbGljazogcHJvcHMsIHRleHQ6IG5hbWUgfSA6CgkJCQlwcm9wczsKCgkJCS8vIERlZmF1bHQgdG8gYSBub24tc3VibWl0dGluZyBidXR0b24KCQkJcHJvcHMgPSAkLmV4dGVuZCggeyB0eXBlOiAiYnV0dG9uIiB9LCBwcm9wcyApOwoKCQkJLy8gQ2hhbmdlIHRoZSBjb250ZXh0IGZvciB0aGUgY2xpY2sgY2FsbGJhY2sgdG8gYmUgdGhlIG1haW4gZWxlbWVudAoJCQljbGljayA9IHByb3BzLmNsaWNrOwoJCQlidXR0b25PcHRpb25zID0gewoJCQkJaWNvbjogcHJvcHMuaWNvbiwKCQkJCWljb25Qb3NpdGlvbjogcHJvcHMuaWNvblBvc2l0aW9uLAoJCQkJc2hvd0xhYmVsOiBwcm9wcy5zaG93TGFiZWwsCgoJCQkJLy8gRGVwcmVjYXRlZCBvcHRpb25zCgkJCQlpY29uczogcHJvcHMuaWNvbnMsCgkJCQl0ZXh0OiBwcm9wcy50ZXh0CgkJCX07CgoJCQlkZWxldGUgcHJvcHMuY2xpY2s7CgkJCWRlbGV0ZSBwcm9wcy5pY29uOwoJCQlkZWxldGUgcHJvcHMuaWNvblBvc2l0aW9uOwoJCQlkZWxldGUgcHJvcHMuc2hvd0xhYmVsOwoKCQkJLy8gRGVwcmVjYXRlZCBvcHRpb25zCgkJCWRlbGV0ZSBwcm9wcy5pY29uczsKCQkJaWYgKCB0eXBlb2YgcHJvcHMudGV4dCA9PT0gImJvb2xlYW4iICkgewoJCQkJZGVsZXRlIHByb3BzLnRleHQ7CgkJCX0KCgkJCSQoICI8YnV0dG9uPjwvYnV0dG9uPiIsIHByb3BzICkKCQkJCS5idXR0b24oIGJ1dHRvbk9wdGlvbnMgKQoJCQkJLmFwcGVuZFRvKCB0aGF0LnVpQnV0dG9uU2V0ICkKCQkJCS5vbiggImNsaWNrIiwgZnVuY3Rpb24oKSB7CgkJCQkJY2xpY2suYXBwbHkoIHRoYXQuZWxlbWVudFsgMCBdLCBhcmd1bWVudHMgKTsKCQkJCX0gKTsKCQl9ICk7CgkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMudWlEaWFsb2csICJ1aS1kaWFsb2ctYnV0dG9ucyIgKTsKCQl0aGlzLnVpRGlhbG9nQnV0dG9uUGFuZS5hcHBlbmRUbyggdGhpcy51aURpYWxvZyApOwoJfSwKCglfbWFrZURyYWdnYWJsZTogZnVuY3Rpb24oKSB7CgkJdmFyIHRoYXQgPSB0aGlzLAoJCQlvcHRpb25zID0gdGhpcy5vcHRpb25zOwoKCQlmdW5jdGlvbiBmaWx0ZXJlZFVpKCB1aSApIHsKCQkJcmV0dXJuIHsKCQkJCXBvc2l0aW9uOiB1aS5wb3NpdGlvbiwKCQkJCW9mZnNldDogdWkub2Zmc2V0CgkJCX07CgkJfQoKCQl0aGlzLnVpRGlhbG9nLmRyYWdnYWJsZSggewoJCQljYW5jZWw6ICIudWktZGlhbG9nLWNvbnRlbnQsIC51aS1kaWFsb2ctdGl0bGViYXItY2xvc2UiLAoJCQloYW5kbGU6ICIudWktZGlhbG9nLXRpdGxlYmFyIiwKCQkJY29udGFpbm1lbnQ6ICJkb2N1bWVudCIsCgkJCXN0YXJ0OiBmdW5jdGlvbiggZXZlbnQsIHVpICkgewoJCQkJdGhhdC5fYWRkQ2xhc3MoICQoIHRoaXMgKSwgInVpLWRpYWxvZy1kcmFnZ2luZyIgKTsKCQkJCXRoYXQuX2Jsb2NrRnJhbWVzKCk7CgkJCQl0aGF0Ll90cmlnZ2VyKCAiZHJhZ1N0YXJ0IiwgZXZlbnQsIGZpbHRlcmVkVWkoIHVpICkgKTsKCQkJfSwKCQkJZHJhZzogZnVuY3Rpb24oIGV2ZW50LCB1aSApIHsKCQkJCXRoYXQuX3RyaWdnZXIoICJkcmFnIiwgZXZlbnQsIGZpbHRlcmVkVWkoIHVpICkgKTsKCQkJfSwKCQkJc3RvcDogZnVuY3Rpb24oIGV2ZW50LCB1aSApIHsKCQkJCXZhciBsZWZ0ID0gdWkub2Zmc2V0LmxlZnQgLSB0aGF0LmRvY3VtZW50LnNjcm9sbExlZnQoKSwKCQkJCQl0b3AgPSB1aS5vZmZzZXQudG9wIC0gdGhhdC5kb2N1bWVudC5zY3JvbGxUb3AoKTsKCgkJCQlvcHRpb25zLnBvc2l0aW9uID0gewoJCQkJCW15OiAibGVmdCB0b3AiLAoJCQkJCWF0OiAibGVmdCIgKyAoIGxlZnQgPj0gMCA/ICIrIiA6ICIiICkgKyBsZWZ0ICsgIiAiICsKCQkJCQkJInRvcCIgKyAoIHRvcCA+PSAwID8gIisiIDogIiIgKSArIHRvcCwKCQkJCQlvZjogdGhhdC53aW5kb3cKCQkJCX07CgkJCQl0aGF0Ll9yZW1vdmVDbGFzcyggJCggdGhpcyApLCAidWktZGlhbG9nLWRyYWdnaW5nIiApOwoJCQkJdGhhdC5fdW5ibG9ja0ZyYW1lcygpOwoJCQkJdGhhdC5fdHJpZ2dlciggImRyYWdTdG9wIiwgZXZlbnQsIGZpbHRlcmVkVWkoIHVpICkgKTsKCQkJfQoJCX0gKTsKCX0sCgoJX21ha2VSZXNpemFibGU6IGZ1bmN0aW9uKCkgewoJCXZhciB0aGF0ID0gdGhpcywKCQkJb3B0aW9ucyA9IHRoaXMub3B0aW9ucywKCQkJaGFuZGxlcyA9IG9wdGlvbnMucmVzaXphYmxlLAoKCQkJLy8gLnVpLXJlc2l6YWJsZSBoYXMgcG9zaXRpb246IHJlbGF0aXZlIGRlZmluZWQgaW4gdGhlIHN0eWxlc2hlZXQKCQkJLy8gYnV0IGRpYWxvZ3MgaGF2ZSB0byB1c2UgYWJzb2x1dGUgb3IgZml4ZWQgcG9zaXRpb25pbmcKCQkJcG9zaXRpb24gPSB0aGlzLnVpRGlhbG9nLmNzcyggInBvc2l0aW9uIiApLAoJCQlyZXNpemVIYW5kbGVzID0gdHlwZW9mIGhhbmRsZXMgPT09ICJzdHJpbmciID8KCQkJCWhhbmRsZXMgOgoJCQkJIm4sZSxzLHcsc2Usc3csbmUsbnciOwoKCQlmdW5jdGlvbiBmaWx0ZXJlZFVpKCB1aSApIHsKCQkJcmV0dXJuIHsKCQkJCW9yaWdpbmFsUG9zaXRpb246IHVpLm9yaWdpbmFsUG9zaXRpb24sCgkJCQlvcmlnaW5hbFNpemU6IHVpLm9yaWdpbmFsU2l6ZSwKCQkJCXBvc2l0aW9uOiB1aS5wb3NpdGlvbiwKCQkJCXNpemU6IHVpLnNpemUKCQkJfTsKCQl9CgoJCXRoaXMudWlEaWFsb2cucmVzaXphYmxlKCB7CgkJCWNhbmNlbDogIi51aS1kaWFsb2ctY29udGVudCIsCgkJCWNvbnRhaW5tZW50OiAiZG9jdW1lbnQiLAoJCQlhbHNvUmVzaXplOiB0aGlzLmVsZW1lbnQsCgkJCW1heFdpZHRoOiBvcHRpb25zLm1heFdpZHRoLAoJCQltYXhIZWlnaHQ6IG9wdGlvbnMubWF4SGVpZ2h0LAoJCQltaW5XaWR0aDogb3B0aW9ucy5taW5XaWR0aCwKCQkJbWluSGVpZ2h0OiB0aGlzLl9taW5IZWlnaHQoKSwKCQkJaGFuZGxlczogcmVzaXplSGFuZGxlcywKCQkJc3RhcnQ6IGZ1bmN0aW9uKCBldmVudCwgdWkgKSB7CgkJCQl0aGF0Ll9hZGRDbGFzcyggJCggdGhpcyApLCAidWktZGlhbG9nLXJlc2l6aW5nIiApOwoJCQkJdGhhdC5fYmxvY2tGcmFtZXMoKTsKCQkJCXRoYXQuX3RyaWdnZXIoICJyZXNpemVTdGFydCIsIGV2ZW50LCBmaWx0ZXJlZFVpKCB1aSApICk7CgkJCX0sCgkJCXJlc2l6ZTogZnVuY3Rpb24oIGV2ZW50LCB1aSApIHsKCQkJCXRoYXQuX3RyaWdnZXIoICJyZXNpemUiLCBldmVudCwgZmlsdGVyZWRVaSggdWkgKSApOwoJCQl9LAoJCQlzdG9wOiBmdW5jdGlvbiggZXZlbnQsIHVpICkgewoJCQkJdmFyIG9mZnNldCA9IHRoYXQudWlEaWFsb2cub2Zmc2V0KCksCgkJCQkJbGVmdCA9IG9mZnNldC5sZWZ0IC0gdGhhdC5kb2N1bWVudC5zY3JvbGxMZWZ0KCksCgkJCQkJdG9wID0gb2Zmc2V0LnRvcCAtIHRoYXQuZG9jdW1lbnQuc2Nyb2xsVG9wKCk7CgoJCQkJb3B0aW9ucy5oZWlnaHQgPSB0aGF0LnVpRGlhbG9nLmhlaWdodCgpOwoJCQkJb3B0aW9ucy53aWR0aCA9IHRoYXQudWlEaWFsb2cud2lkdGgoKTsKCQkJCW9wdGlvbnMucG9zaXRpb24gPSB7CgkJCQkJbXk6ICJsZWZ0IHRvcCIsCgkJCQkJYXQ6ICJsZWZ0IiArICggbGVmdCA+PSAwID8gIisiIDogIiIgKSArIGxlZnQgKyAiICIgKwoJCQkJCQkidG9wIiArICggdG9wID49IDAgPyAiKyIgOiAiIiApICsgdG9wLAoJCQkJCW9mOiB0aGF0LndpbmRvdwoJCQkJfTsKCQkJCXRoYXQuX3JlbW92ZUNsYXNzKCAkKCB0aGlzICksICJ1aS1kaWFsb2ctcmVzaXppbmciICk7CgkJCQl0aGF0Ll91bmJsb2NrRnJhbWVzKCk7CgkJCQl0aGF0Ll90cmlnZ2VyKCAicmVzaXplU3RvcCIsIGV2ZW50LCBmaWx0ZXJlZFVpKCB1aSApICk7CgkJCX0KCQl9ICkKCQkJLmNzcyggInBvc2l0aW9uIiwgcG9zaXRpb24gKTsKCX0sCgoJX3RyYWNrRm9jdXM6IGZ1bmN0aW9uKCkgewoJCXRoaXMuX29uKCB0aGlzLndpZGdldCgpLCB7CgkJCWZvY3VzaW46IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCXRoaXMuX21ha2VGb2N1c1RhcmdldCgpOwoJCQkJdGhpcy5fZm9jdXNlZEVsZW1lbnQgPSAkKCBldmVudC50YXJnZXQgKTsKCQkJfQoJCX0gKTsKCX0sCgoJX21ha2VGb2N1c1RhcmdldDogZnVuY3Rpb24oKSB7CgkJdGhpcy5fdW50cmFja0luc3RhbmNlKCk7CgkJdGhpcy5fdHJhY2tpbmdJbnN0YW5jZXMoKS51bnNoaWZ0KCB0aGlzICk7Cgl9LAoKCV91bnRyYWNrSW5zdGFuY2U6IGZ1bmN0aW9uKCkgewoJCXZhciBpbnN0YW5jZXMgPSB0aGlzLl90cmFja2luZ0luc3RhbmNlcygpLAoJCQlleGlzdHMgPSAkLmluQXJyYXkoIHRoaXMsIGluc3RhbmNlcyApOwoJCWlmICggZXhpc3RzICE9PSAtMSApIHsKCQkJaW5zdGFuY2VzLnNwbGljZSggZXhpc3RzLCAxICk7CgkJfQoJfSwKCglfdHJhY2tpbmdJbnN0YW5jZXM6IGZ1bmN0aW9uKCkgewoJCXZhciBpbnN0YW5jZXMgPSB0aGlzLmRvY3VtZW50LmRhdGEoICJ1aS1kaWFsb2ctaW5zdGFuY2VzIiApOwoJCWlmICggIWluc3RhbmNlcyApIHsKCQkJaW5zdGFuY2VzID0gW107CgkJCXRoaXMuZG9jdW1lbnQuZGF0YSggInVpLWRpYWxvZy1pbnN0YW5jZXMiLCBpbnN0YW5jZXMgKTsKCQl9CgkJcmV0dXJuIGluc3RhbmNlczsKCX0sCgoJX21pbkhlaWdodDogZnVuY3Rpb24oKSB7CgkJdmFyIG9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7CgoJCXJldHVybiBvcHRpb25zLmhlaWdodCA9PT0gImF1dG8iID8KCQkJb3B0aW9ucy5taW5IZWlnaHQgOgoJCQlNYXRoLm1pbiggb3B0aW9ucy5taW5IZWlnaHQsIG9wdGlvbnMuaGVpZ2h0ICk7Cgl9LAoKCV9wb3NpdGlvbjogZnVuY3Rpb24oKSB7CgoJCS8vIE5lZWQgdG8gc2hvdyB0aGUgZGlhbG9nIHRvIGdldCB0aGUgYWN0dWFsIG9mZnNldCBpbiB0aGUgcG9zaXRpb24gcGx1Z2luCgkJdmFyIGlzVmlzaWJsZSA9IHRoaXMudWlEaWFsb2cuaXMoICI6dmlzaWJsZSIgKTsKCQlpZiAoICFpc1Zpc2libGUgKSB7CgkJCXRoaXMudWlEaWFsb2cuc2hvdygpOwoJCX0KCQl0aGlzLnVpRGlhbG9nLnBvc2l0aW9uKCB0aGlzLm9wdGlvbnMucG9zaXRpb24gKTsKCQlpZiAoICFpc1Zpc2libGUgKSB7CgkJCXRoaXMudWlEaWFsb2cuaGlkZSgpOwoJCX0KCX0sCgoJX3NldE9wdGlvbnM6IGZ1bmN0aW9uKCBvcHRpb25zICkgewoJCXZhciB0aGF0ID0gdGhpcywKCQkJcmVzaXplID0gZmFsc2UsCgkJCXJlc2l6YWJsZU9wdGlvbnMgPSB7fTsKCgkJJC5lYWNoKCBvcHRpb25zLCBmdW5jdGlvbigga2V5LCB2YWx1ZSApIHsKCQkJdGhhdC5fc2V0T3B0aW9uKCBrZXksIHZhbHVlICk7CgoJCQlpZiAoIGtleSBpbiB0aGF0LnNpemVSZWxhdGVkT3B0aW9ucyApIHsKCQkJCXJlc2l6ZSA9IHRydWU7CgkJCX0KCQkJaWYgKCBrZXkgaW4gdGhhdC5yZXNpemFibGVSZWxhdGVkT3B0aW9ucyApIHsKCQkJCXJlc2l6YWJsZU9wdGlvbnNbIGtleSBdID0gdmFsdWU7CgkJCX0KCQl9ICk7CgoJCWlmICggcmVzaXplICkgewoJCQl0aGlzLl9zaXplKCk7CgkJCXRoaXMuX3Bvc2l0aW9uKCk7CgkJfQoJCWlmICggdGhpcy51aURpYWxvZy5pcyggIjpkYXRhKHVpLXJlc2l6YWJsZSkiICkgKSB7CgkJCXRoaXMudWlEaWFsb2cucmVzaXphYmxlKCAib3B0aW9uIiwgcmVzaXphYmxlT3B0aW9ucyApOwoJCX0KCX0sCgoJX3NldE9wdGlvbjogZnVuY3Rpb24oIGtleSwgdmFsdWUgKSB7CgkJdmFyIGlzRHJhZ2dhYmxlLCBpc1Jlc2l6YWJsZSwKCQkJdWlEaWFsb2cgPSB0aGlzLnVpRGlhbG9nOwoKCQlpZiAoIGtleSA9PT0gImRpc2FibGVkIiApIHsKCQkJcmV0dXJuOwoJCX0KCgkJdGhpcy5fc3VwZXIoIGtleSwgdmFsdWUgKTsKCgkJaWYgKCBrZXkgPT09ICJhcHBlbmRUbyIgKSB7CgkJCXRoaXMudWlEaWFsb2cuYXBwZW5kVG8oIHRoaXMuX2FwcGVuZFRvKCkgKTsKCQl9CgoJCWlmICgga2V5ID09PSAiYnV0dG9ucyIgKSB7CgkJCXRoaXMuX2NyZWF0ZUJ1dHRvbnMoKTsKCQl9CgoJCWlmICgga2V5ID09PSAiY2xvc2VUZXh0IiApIHsKCQkJdGhpcy51aURpYWxvZ1RpdGxlYmFyQ2xvc2UuYnV0dG9uKCB7CgoJCQkJLy8gRW5zdXJlIHRoYXQgd2UgYWx3YXlzIHBhc3MgYSBzdHJpbmcKCQkJCWxhYmVsOiAkKCAiPGE+IiApLnRleHQoICIiICsgdGhpcy5vcHRpb25zLmNsb3NlVGV4dCApLmh0bWwoKQoJCQl9ICk7CgkJfQoKCQlpZiAoIGtleSA9PT0gImRyYWdnYWJsZSIgKSB7CgkJCWlzRHJhZ2dhYmxlID0gdWlEaWFsb2cuaXMoICI6ZGF0YSh1aS1kcmFnZ2FibGUpIiApOwoJCQlpZiAoIGlzRHJhZ2dhYmxlICYmICF2YWx1ZSApIHsKCQkJCXVpRGlhbG9nLmRyYWdnYWJsZSggImRlc3Ryb3kiICk7CgkJCX0KCgkJCWlmICggIWlzRHJhZ2dhYmxlICYmIHZhbHVlICkgewoJCQkJdGhpcy5fbWFrZURyYWdnYWJsZSgpOwoJCQl9CgkJfQoKCQlpZiAoIGtleSA9PT0gInBvc2l0aW9uIiApIHsKCQkJdGhpcy5fcG9zaXRpb24oKTsKCQl9CgoJCWlmICgga2V5ID09PSAicmVzaXphYmxlIiApIHsKCgkJCS8vIGN1cnJlbnRseSByZXNpemFibGUsIGJlY29taW5nIG5vbi1yZXNpemFibGUKCQkJaXNSZXNpemFibGUgPSB1aURpYWxvZy5pcyggIjpkYXRhKHVpLXJlc2l6YWJsZSkiICk7CgkJCWlmICggaXNSZXNpemFibGUgJiYgIXZhbHVlICkgewoJCQkJdWlEaWFsb2cucmVzaXphYmxlKCAiZGVzdHJveSIgKTsKCQkJfQoKCQkJLy8gQ3VycmVudGx5IHJlc2l6YWJsZSwgY2hhbmdpbmcgaGFuZGxlcwoJCQlpZiAoIGlzUmVzaXphYmxlICYmIHR5cGVvZiB2YWx1ZSA9PT0gInN0cmluZyIgKSB7CgkJCQl1aURpYWxvZy5yZXNpemFibGUoICJvcHRpb24iLCAiaGFuZGxlcyIsIHZhbHVlICk7CgkJCX0KCgkJCS8vIEN1cnJlbnRseSBub24tcmVzaXphYmxlLCBiZWNvbWluZyByZXNpemFibGUKCQkJaWYgKCAhaXNSZXNpemFibGUgJiYgdmFsdWUgIT09IGZhbHNlICkgewoJCQkJdGhpcy5fbWFrZVJlc2l6YWJsZSgpOwoJCQl9CgkJfQoKCQlpZiAoIGtleSA9PT0gInRpdGxlIiApIHsKCQkJdGhpcy5fdGl0bGUoIHRoaXMudWlEaWFsb2dUaXRsZWJhci5maW5kKCAiLnVpLWRpYWxvZy10aXRsZSIgKSApOwoJCX0KCX0sCgoJX3NpemU6IGZ1bmN0aW9uKCkgewoKCQkvLyBJZiB0aGUgdXNlciBoYXMgcmVzaXplZCB0aGUgZGlhbG9nLCB0aGUgLnVpLWRpYWxvZyBhbmQgLnVpLWRpYWxvZy1jb250ZW50CgkJLy8gZGl2cyB3aWxsIGJvdGggaGF2ZSB3aWR0aCBhbmQgaGVpZ2h0IHNldCwgc28gd2UgbmVlZCB0byByZXNldCB0aGVtCgkJdmFyIG5vbkNvbnRlbnRIZWlnaHQsIG1pbkNvbnRlbnRIZWlnaHQsIG1heENvbnRlbnRIZWlnaHQsCgkJCW9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7CgoJCS8vIFJlc2V0IGNvbnRlbnQgc2l6aW5nCgkJdGhpcy5lbGVtZW50LnNob3coKS5jc3MoIHsKCQkJd2lkdGg6ICJhdXRvIiwKCQkJbWluSGVpZ2h0OiAwLAoJCQltYXhIZWlnaHQ6ICJub25lIiwKCQkJaGVpZ2h0OiAwCgkJfSApOwoKCQlpZiAoIG9wdGlvbnMubWluV2lkdGggPiBvcHRpb25zLndpZHRoICkgewoJCQlvcHRpb25zLndpZHRoID0gb3B0aW9ucy5taW5XaWR0aDsKCQl9CgoJCS8vIFJlc2V0IHdyYXBwZXIgc2l6aW5nCgkJLy8gZGV0ZXJtaW5lIHRoZSBoZWlnaHQgb2YgYWxsIHRoZSBub24tY29udGVudCBlbGVtZW50cwoJCW5vbkNvbnRlbnRIZWlnaHQgPSB0aGlzLnVpRGlhbG9nLmNzcyggewoJCQloZWlnaHQ6ICJhdXRvIiwKCQkJd2lkdGg6IG9wdGlvbnMud2lkdGgKCQl9ICkKCQkJLm91dGVySGVpZ2h0KCk7CgkJbWluQ29udGVudEhlaWdodCA9IE1hdGgubWF4KCAwLCBvcHRpb25zLm1pbkhlaWdodCAtIG5vbkNvbnRlbnRIZWlnaHQgKTsKCQltYXhDb250ZW50SGVpZ2h0ID0gdHlwZW9mIG9wdGlvbnMubWF4SGVpZ2h0ID09PSAibnVtYmVyIiA/CgkJCU1hdGgubWF4KCAwLCBvcHRpb25zLm1heEhlaWdodCAtIG5vbkNvbnRlbnRIZWlnaHQgKSA6CgkJCSJub25lIjsKCgkJaWYgKCBvcHRpb25zLmhlaWdodCA9PT0gImF1dG8iICkgewoJCQl0aGlzLmVsZW1lbnQuY3NzKCB7CgkJCQltaW5IZWlnaHQ6IG1pbkNvbnRlbnRIZWlnaHQsCgkJCQltYXhIZWlnaHQ6IG1heENvbnRlbnRIZWlnaHQsCgkJCQloZWlnaHQ6ICJhdXRvIgoJCQl9ICk7CgkJfSBlbHNlIHsKCQkJdGhpcy5lbGVtZW50LmhlaWdodCggTWF0aC5tYXgoIDAsIG9wdGlvbnMuaGVpZ2h0IC0gbm9uQ29udGVudEhlaWdodCApICk7CgkJfQoKCQlpZiAoIHRoaXMudWlEaWFsb2cuaXMoICI6ZGF0YSh1aS1yZXNpemFibGUpIiApICkgewoJCQl0aGlzLnVpRGlhbG9nLnJlc2l6YWJsZSggIm9wdGlvbiIsICJtaW5IZWlnaHQiLCB0aGlzLl9taW5IZWlnaHQoKSApOwoJCX0KCX0sCgoJX2Jsb2NrRnJhbWVzOiBmdW5jdGlvbigpIHsKCQl0aGlzLmlmcmFtZUJsb2NrcyA9IHRoaXMuZG9jdW1lbnQuZmluZCggImlmcmFtZSIgKS5tYXAoIGZ1bmN0aW9uKCkgewoJCQl2YXIgaWZyYW1lID0gJCggdGhpcyApOwoKCQkJcmV0dXJuICQoICI8ZGl2PiIgKQoJCQkJLmNzcyggewoJCQkJCXBvc2l0aW9uOiAiYWJzb2x1dGUiLAoJCQkJCXdpZHRoOiBpZnJhbWUub3V0ZXJXaWR0aCgpLAoJCQkJCWhlaWdodDogaWZyYW1lLm91dGVySGVpZ2h0KCkKCQkJCX0gKQoJCQkJLmFwcGVuZFRvKCBpZnJhbWUucGFyZW50KCkgKQoJCQkJLm9mZnNldCggaWZyYW1lLm9mZnNldCgpIClbIDAgXTsKCQl9ICk7Cgl9LAoKCV91bmJsb2NrRnJhbWVzOiBmdW5jdGlvbigpIHsKCQlpZiAoIHRoaXMuaWZyYW1lQmxvY2tzICkgewoJCQl0aGlzLmlmcmFtZUJsb2Nrcy5yZW1vdmUoKTsKCQkJZGVsZXRlIHRoaXMuaWZyYW1lQmxvY2tzOwoJCX0KCX0sCgoJX2FsbG93SW50ZXJhY3Rpb246IGZ1bmN0aW9uKCBldmVudCApIHsKCQlpZiAoICQoIGV2ZW50LnRhcmdldCApLmNsb3Nlc3QoICIudWktZGlhbG9nIiApLmxlbmd0aCApIHsKCQkJcmV0dXJuIHRydWU7CgkJfQoKCQkvLyBUT0RPOiBSZW1vdmUgaGFjayB3aGVuIGRhdGVwaWNrZXIgaW1wbGVtZW50cwoJCS8vIHRoZSAudWktZnJvbnQgbG9naWMgKCM4OTg5KQoJCXJldHVybiAhISQoIGV2ZW50LnRhcmdldCApLmNsb3Nlc3QoICIudWktZGF0ZXBpY2tlciIgKS5sZW5ndGg7Cgl9LAoKCV9jcmVhdGVPdmVybGF5OiBmdW5jdGlvbigpIHsKCQlpZiAoICF0aGlzLm9wdGlvbnMubW9kYWwgKSB7CgkJCXJldHVybjsKCQl9CgoJCS8vIFdlIHVzZSBhIGRlbGF5IGluIGNhc2UgdGhlIG92ZXJsYXkgaXMgY3JlYXRlZCBmcm9tIGFuCgkJLy8gZXZlbnQgdGhhdCB3ZSdyZSBnb2luZyB0byBiZSBjYW5jZWxsaW5nICgjMjgwNCkKCQl2YXIgaXNPcGVuaW5nID0gdHJ1ZTsKCQl0aGlzLl9kZWxheSggZnVuY3Rpb24oKSB7CgkJCWlzT3BlbmluZyA9IGZhbHNlOwoJCX0gKTsKCgkJaWYgKCAhdGhpcy5kb2N1bWVudC5kYXRhKCAidWktZGlhbG9nLW92ZXJsYXlzIiApICkgewoKCQkJLy8gUHJldmVudCB1c2Ugb2YgYW5jaG9ycyBhbmQgaW5wdXRzCgkJCS8vIFVzaW5nIF9vbigpIGZvciBhbiBldmVudCBoYW5kbGVyIHNoYXJlZCBhY3Jvc3MgbWFueSBpbnN0YW5jZXMgaXMKCQkJLy8gc2FmZSBiZWNhdXNlIHRoZSBkaWFsb2dzIHN0YWNrIGFuZCBtdXN0IGJlIGNsb3NlZCBpbiByZXZlcnNlIG9yZGVyCgkJCXRoaXMuX29uKCB0aGlzLmRvY3VtZW50LCB7CgkJCQlmb2N1c2luOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJCQkJaWYgKCBpc09wZW5pbmcgKSB7CgkJCQkJCXJldHVybjsKCQkJCQl9CgoJCQkJCWlmICggIXRoaXMuX2FsbG93SW50ZXJhY3Rpb24oIGV2ZW50ICkgKSB7CgkJCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCQkJCXRoaXMuX3RyYWNraW5nSW5zdGFuY2VzKClbIDAgXS5fZm9jdXNUYWJiYWJsZSgpOwoJCQkJCX0KCQkJCX0KCQkJfSApOwoJCX0KCgkJdGhpcy5vdmVybGF5ID0gJCggIjxkaXY+IiApCgkJCS5hcHBlbmRUbyggdGhpcy5fYXBwZW5kVG8oKSApOwoKCQl0aGlzLl9hZGRDbGFzcyggdGhpcy5vdmVybGF5LCBudWxsLCAidWktd2lkZ2V0LW92ZXJsYXkgdWktZnJvbnQiICk7CgkJdGhpcy5fb24oIHRoaXMub3ZlcmxheSwgewoJCQltb3VzZWRvd246ICJfa2VlcEZvY3VzIgoJCX0gKTsKCQl0aGlzLmRvY3VtZW50LmRhdGEoICJ1aS1kaWFsb2ctb3ZlcmxheXMiLAoJCQkoIHRoaXMuZG9jdW1lbnQuZGF0YSggInVpLWRpYWxvZy1vdmVybGF5cyIgKSB8fCAwICkgKyAxICk7Cgl9LAoKCV9kZXN0cm95T3ZlcmxheTogZnVuY3Rpb24oKSB7CgkJaWYgKCAhdGhpcy5vcHRpb25zLm1vZGFsICkgewoJCQlyZXR1cm47CgkJfQoKCQlpZiAoIHRoaXMub3ZlcmxheSApIHsKCQkJdmFyIG92ZXJsYXlzID0gdGhpcy5kb2N1bWVudC5kYXRhKCAidWktZGlhbG9nLW92ZXJsYXlzIiApIC0gMTsKCgkJCWlmICggIW92ZXJsYXlzICkgewoJCQkJdGhpcy5fb2ZmKCB0aGlzLmRvY3VtZW50LCAiZm9jdXNpbiIgKTsKCQkJCXRoaXMuZG9jdW1lbnQucmVtb3ZlRGF0YSggInVpLWRpYWxvZy1vdmVybGF5cyIgKTsKCQkJfSBlbHNlIHsKCQkJCXRoaXMuZG9jdW1lbnQuZGF0YSggInVpLWRpYWxvZy1vdmVybGF5cyIsIG92ZXJsYXlzICk7CgkJCX0KCgkJCXRoaXMub3ZlcmxheS5yZW1vdmUoKTsKCQkJdGhpcy5vdmVybGF5ID0gbnVsbDsKCQl9Cgl9Cn0gKTsKCi8vIERFUFJFQ0FURUQKLy8gVE9ETzogc3dpdGNoIHJldHVybiBiYWNrIHRvIHdpZGdldCBkZWNsYXJhdGlvbiBhdCB0b3Agb2YgZmlsZSB3aGVuIHRoaXMgaXMgcmVtb3ZlZAppZiAoICQudWlCYWNrQ29tcGF0ICE9PSBmYWxzZSApIHsKCgkvLyBCYWNrY29tcGF0IGZvciBkaWFsb2dDbGFzcyBvcHRpb24KCSQud2lkZ2V0KCAidWkuZGlhbG9nIiwgJC51aS5kaWFsb2csIHsKCQlvcHRpb25zOiB7CgkJCWRpYWxvZ0NsYXNzOiAiIgoJCX0sCgkJX2NyZWF0ZVdyYXBwZXI6IGZ1bmN0aW9uKCkgewoJCQl0aGlzLl9zdXBlcigpOwoJCQl0aGlzLnVpRGlhbG9nLmFkZENsYXNzKCB0aGlzLm9wdGlvbnMuZGlhbG9nQ2xhc3MgKTsKCQl9LAoJCV9zZXRPcHRpb246IGZ1bmN0aW9uKCBrZXksIHZhbHVlICkgewoJCQlpZiAoIGtleSA9PT0gImRpYWxvZ0NsYXNzIiApIHsKCQkJCXRoaXMudWlEaWFsb2cKCQkJCQkucmVtb3ZlQ2xhc3MoIHRoaXMub3B0aW9ucy5kaWFsb2dDbGFzcyApCgkJCQkJLmFkZENsYXNzKCB2YWx1ZSApOwoJCQl9CgkJCXRoaXMuX3N1cGVyQXBwbHkoIGFyZ3VtZW50cyApOwoJCX0KCX0gKTsKfQoKdmFyIHdpZGdldHNEaWFsb2cgPSAkLnVpLmRpYWxvZzsKCgovKiEKICogalF1ZXJ5IFVJIFByb2dyZXNzYmFyIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogUHJvZ3Jlc3NiYXIKLy8+Pmdyb3VwOiBXaWRnZXRzCi8vIGpzY3M6ZGlzYWJsZSBtYXhpbXVtTGluZUxlbmd0aAovLz4+ZGVzY3JpcHRpb246IERpc3BsYXlzIGEgc3RhdHVzIGluZGljYXRvciBmb3IgbG9hZGluZyBzdGF0ZSwgc3RhbmRhcmQgcGVyY2VudGFnZSwgYW5kIG90aGVyIHByb2dyZXNzIGluZGljYXRvcnMuCi8vIGpzY3M6ZW5hYmxlIG1heGltdW1MaW5lTGVuZ3RoCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9wcm9ncmVzc2Jhci8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL3Byb2dyZXNzYmFyLwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvY29yZS5jc3MKLy8+PmNzcy5zdHJ1Y3R1cmU6IC4uLy4uL3RoZW1lcy9iYXNlL3Byb2dyZXNzYmFyLmNzcwovLz4+Y3NzLnRoZW1lOiAuLi8uLi90aGVtZXMvYmFzZS90aGVtZS5jc3MKCgoKdmFyIHdpZGdldHNQcm9ncmVzc2JhciA9ICQud2lkZ2V0KCAidWkucHJvZ3Jlc3NiYXIiLCB7Cgl2ZXJzaW9uOiAiMS4xMi4xIiwKCW9wdGlvbnM6IHsKCQljbGFzc2VzOiB7CgkJCSJ1aS1wcm9ncmVzc2JhciI6ICJ1aS1jb3JuZXItYWxsIiwKCQkJInVpLXByb2dyZXNzYmFyLXZhbHVlIjogInVpLWNvcm5lci1sZWZ0IiwKCQkJInVpLXByb2dyZXNzYmFyLWNvbXBsZXRlIjogInVpLWNvcm5lci1yaWdodCIKCQl9LAoJCW1heDogMTAwLAoJCXZhbHVlOiAwLAoKCQljaGFuZ2U6IG51bGwsCgkJY29tcGxldGU6IG51bGwKCX0sCgoJbWluOiAwLAoKCV9jcmVhdGU6IGZ1bmN0aW9uKCkgewoKCQkvLyBDb25zdHJhaW4gaW5pdGlhbCB2YWx1ZQoJCXRoaXMub2xkVmFsdWUgPSB0aGlzLm9wdGlvbnMudmFsdWUgPSB0aGlzLl9jb25zdHJhaW5lZFZhbHVlKCk7CgoJCXRoaXMuZWxlbWVudC5hdHRyKCB7CgoJCQkvLyBPbmx5IHNldCBzdGF0aWMgdmFsdWVzOyBhcmlhLXZhbHVlbm93IGFuZCBhcmlhLXZhbHVlbWF4IGFyZQoJCQkvLyBzZXQgaW5zaWRlIF9yZWZyZXNoVmFsdWUoKQoJCQlyb2xlOiAicHJvZ3Jlc3NiYXIiLAoJCQkiYXJpYS12YWx1ZW1pbiI6IHRoaXMubWluCgkJfSApOwoJCXRoaXMuX2FkZENsYXNzKCAidWktcHJvZ3Jlc3NiYXIiLCAidWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IiApOwoKCQl0aGlzLnZhbHVlRGl2ID0gJCggIjxkaXY+IiApLmFwcGVuZFRvKCB0aGlzLmVsZW1lbnQgKTsKCQl0aGlzLl9hZGRDbGFzcyggdGhpcy52YWx1ZURpdiwgInVpLXByb2dyZXNzYmFyLXZhbHVlIiwgInVpLXdpZGdldC1oZWFkZXIiICk7CgkJdGhpcy5fcmVmcmVzaFZhbHVlKCk7Cgl9LAoKCV9kZXN0cm95OiBmdW5jdGlvbigpIHsKCQl0aGlzLmVsZW1lbnQucmVtb3ZlQXR0ciggInJvbGUgYXJpYS12YWx1ZW1pbiBhcmlhLXZhbHVlbWF4IGFyaWEtdmFsdWVub3ciICk7CgoJCXRoaXMudmFsdWVEaXYucmVtb3ZlKCk7Cgl9LAoKCXZhbHVlOiBmdW5jdGlvbiggbmV3VmFsdWUgKSB7CgkJaWYgKCBuZXdWYWx1ZSA9PT0gdW5kZWZpbmVkICkgewoJCQlyZXR1cm4gdGhpcy5vcHRpb25zLnZhbHVlOwoJCX0KCgkJdGhpcy5vcHRpb25zLnZhbHVlID0gdGhpcy5fY29uc3RyYWluZWRWYWx1ZSggbmV3VmFsdWUgKTsKCQl0aGlzLl9yZWZyZXNoVmFsdWUoKTsKCX0sCgoJX2NvbnN0cmFpbmVkVmFsdWU6IGZ1bmN0aW9uKCBuZXdWYWx1ZSApIHsKCQlpZiAoIG5ld1ZhbHVlID09PSB1bmRlZmluZWQgKSB7CgkJCW5ld1ZhbHVlID0gdGhpcy5vcHRpb25zLnZhbHVlOwoJCX0KCgkJdGhpcy5pbmRldGVybWluYXRlID0gbmV3VmFsdWUgPT09IGZhbHNlOwoKCQkvLyBTYW5pdGl6ZSB2YWx1ZQoJCWlmICggdHlwZW9mIG5ld1ZhbHVlICE9PSAibnVtYmVyIiApIHsKCQkJbmV3VmFsdWUgPSAwOwoJCX0KCgkJcmV0dXJuIHRoaXMuaW5kZXRlcm1pbmF0ZSA/IGZhbHNlIDoKCQkJTWF0aC5taW4oIHRoaXMub3B0aW9ucy5tYXgsIE1hdGgubWF4KCB0aGlzLm1pbiwgbmV3VmFsdWUgKSApOwoJfSwKCglfc2V0T3B0aW9uczogZnVuY3Rpb24oIG9wdGlvbnMgKSB7CgoJCS8vIEVuc3VyZSAidmFsdWUiIG9wdGlvbiBpcyBzZXQgYWZ0ZXIgb3RoZXIgdmFsdWVzIChsaWtlIG1heCkKCQl2YXIgdmFsdWUgPSBvcHRpb25zLnZhbHVlOwoJCWRlbGV0ZSBvcHRpb25zLnZhbHVlOwoKCQl0aGlzLl9zdXBlciggb3B0aW9ucyApOwoKCQl0aGlzLm9wdGlvbnMudmFsdWUgPSB0aGlzLl9jb25zdHJhaW5lZFZhbHVlKCB2YWx1ZSApOwoJCXRoaXMuX3JlZnJlc2hWYWx1ZSgpOwoJfSwKCglfc2V0T3B0aW9uOiBmdW5jdGlvbigga2V5LCB2YWx1ZSApIHsKCQlpZiAoIGtleSA9PT0gIm1heCIgKSB7CgoJCQkvLyBEb24ndCBhbGxvdyBhIG1heCBsZXNzIHRoYW4gbWluCgkJCXZhbHVlID0gTWF0aC5tYXgoIHRoaXMubWluLCB2YWx1ZSApOwoJCX0KCQl0aGlzLl9zdXBlcigga2V5LCB2YWx1ZSApOwoJfSwKCglfc2V0T3B0aW9uRGlzYWJsZWQ6IGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQl0aGlzLl9zdXBlciggdmFsdWUgKTsKCgkJdGhpcy5lbGVtZW50LmF0dHIoICJhcmlhLWRpc2FibGVkIiwgdmFsdWUgKTsKCQl0aGlzLl90b2dnbGVDbGFzcyggbnVsbCwgInVpLXN0YXRlLWRpc2FibGVkIiwgISF2YWx1ZSApOwoJfSwKCglfcGVyY2VudGFnZTogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMuaW5kZXRlcm1pbmF0ZSA/CgkJCTEwMCA6CgkJCTEwMCAqICggdGhpcy5vcHRpb25zLnZhbHVlIC0gdGhpcy5taW4gKSAvICggdGhpcy5vcHRpb25zLm1heCAtIHRoaXMubWluICk7Cgl9LAoKCV9yZWZyZXNoVmFsdWU6IGZ1bmN0aW9uKCkgewoJCXZhciB2YWx1ZSA9IHRoaXMub3B0aW9ucy52YWx1ZSwKCQkJcGVyY2VudGFnZSA9IHRoaXMuX3BlcmNlbnRhZ2UoKTsKCgkJdGhpcy52YWx1ZURpdgoJCQkudG9nZ2xlKCB0aGlzLmluZGV0ZXJtaW5hdGUgfHwgdmFsdWUgPiB0aGlzLm1pbiApCgkJCS53aWR0aCggcGVyY2VudGFnZS50b0ZpeGVkKCAwICkgKyAiJSIgKTsKCgkJdGhpcwoJCQkuX3RvZ2dsZUNsYXNzKCB0aGlzLnZhbHVlRGl2LCAidWktcHJvZ3Jlc3NiYXItY29tcGxldGUiLCBudWxsLAoJCQkJdmFsdWUgPT09IHRoaXMub3B0aW9ucy5tYXggKQoJCQkuX3RvZ2dsZUNsYXNzKCAidWktcHJvZ3Jlc3NiYXItaW5kZXRlcm1pbmF0ZSIsIG51bGwsIHRoaXMuaW5kZXRlcm1pbmF0ZSApOwoKCQlpZiAoIHRoaXMuaW5kZXRlcm1pbmF0ZSApIHsKCQkJdGhpcy5lbGVtZW50LnJlbW92ZUF0dHIoICJhcmlhLXZhbHVlbm93IiApOwoJCQlpZiAoICF0aGlzLm92ZXJsYXlEaXYgKSB7CgkJCQl0aGlzLm92ZXJsYXlEaXYgPSAkKCAiPGRpdj4iICkuYXBwZW5kVG8oIHRoaXMudmFsdWVEaXYgKTsKCQkJCXRoaXMuX2FkZENsYXNzKCB0aGlzLm92ZXJsYXlEaXYsICJ1aS1wcm9ncmVzc2Jhci1vdmVybGF5IiApOwoJCQl9CgkJfSBlbHNlIHsKCQkJdGhpcy5lbGVtZW50LmF0dHIoIHsKCQkJCSJhcmlhLXZhbHVlbWF4IjogdGhpcy5vcHRpb25zLm1heCwKCQkJCSJhcmlhLXZhbHVlbm93IjogdmFsdWUKCQkJfSApOwoJCQlpZiAoIHRoaXMub3ZlcmxheURpdiApIHsKCQkJCXRoaXMub3ZlcmxheURpdi5yZW1vdmUoKTsKCQkJCXRoaXMub3ZlcmxheURpdiA9IG51bGw7CgkJCX0KCQl9CgoJCWlmICggdGhpcy5vbGRWYWx1ZSAhPT0gdmFsdWUgKSB7CgkJCXRoaXMub2xkVmFsdWUgPSB2YWx1ZTsKCQkJdGhpcy5fdHJpZ2dlciggImNoYW5nZSIgKTsKCQl9CgkJaWYgKCB2YWx1ZSA9PT0gdGhpcy5vcHRpb25zLm1heCApIHsKCQkJdGhpcy5fdHJpZ2dlciggImNvbXBsZXRlIiApOwoJCX0KCX0KfSApOwoKCi8qIQogKiBqUXVlcnkgVUkgU2VsZWN0bWVudSAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IFNlbGVjdG1lbnUKLy8+Pmdyb3VwOiBXaWRnZXRzCi8vIGpzY3M6ZGlzYWJsZSBtYXhpbXVtTGluZUxlbmd0aAovLz4+ZGVzY3JpcHRpb246IER1cGxpY2F0ZXMgYW5kIGV4dGVuZHMgdGhlIGZ1bmN0aW9uYWxpdHkgb2YgYSBuYXRpdmUgSFRNTCBzZWxlY3QgZWxlbWVudCwgYWxsb3dpbmcgaXQgdG8gYmUgY3VzdG9taXphYmxlIGluIGJlaGF2aW9yIGFuZCBhcHBlYXJhbmNlIGZhciBiZXlvbmQgdGhlIGxpbWl0YXRpb25zIG9mIGEgbmF0aXZlIHNlbGVjdC4KLy8ganNjczplbmFibGUgbWF4aW11bUxpbmVMZW5ndGgKLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3NlbGVjdG1lbnUvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9zZWxlY3RtZW51LwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvY29yZS5jc3MKLy8+PmNzcy5zdHJ1Y3R1cmU6IC4uLy4uL3RoZW1lcy9iYXNlL3NlbGVjdG1lbnUuY3NzLCAuLi8uLi90aGVtZXMvYmFzZS9idXR0b24uY3NzCi8vPj5jc3MudGhlbWU6IC4uLy4uL3RoZW1lcy9iYXNlL3RoZW1lLmNzcwoKCgp2YXIgd2lkZ2V0c1NlbGVjdG1lbnUgPSAkLndpZGdldCggInVpLnNlbGVjdG1lbnUiLCBbICQudWkuZm9ybVJlc2V0TWl4aW4sIHsKCXZlcnNpb246ICIxLjEyLjEiLAoJZGVmYXVsdEVsZW1lbnQ6ICI8c2VsZWN0PiIsCglvcHRpb25zOiB7CgkJYXBwZW5kVG86IG51bGwsCgkJY2xhc3NlczogewoJCQkidWktc2VsZWN0bWVudS1idXR0b24tb3BlbiI6ICJ1aS1jb3JuZXItdG9wIiwKCQkJInVpLXNlbGVjdG1lbnUtYnV0dG9uLWNsb3NlZCI6ICJ1aS1jb3JuZXItYWxsIgoJCX0sCgkJZGlzYWJsZWQ6IG51bGwsCgkJaWNvbnM6IHsKCQkJYnV0dG9uOiAidWktaWNvbi10cmlhbmdsZS0xLXMiCgkJfSwKCQlwb3NpdGlvbjogewoJCQlteTogImxlZnQgdG9wIiwKCQkJYXQ6ICJsZWZ0IGJvdHRvbSIsCgkJCWNvbGxpc2lvbjogIm5vbmUiCgkJfSwKCQl3aWR0aDogZmFsc2UsCgoJCS8vIENhbGxiYWNrcwoJCWNoYW5nZTogbnVsbCwKCQljbG9zZTogbnVsbCwKCQlmb2N1czogbnVsbCwKCQlvcGVuOiBudWxsLAoJCXNlbGVjdDogbnVsbAoJfSwKCglfY3JlYXRlOiBmdW5jdGlvbigpIHsKCQl2YXIgc2VsZWN0bWVudUlkID0gdGhpcy5lbGVtZW50LnVuaXF1ZUlkKCkuYXR0ciggImlkIiApOwoJCXRoaXMuaWRzID0gewoJCQllbGVtZW50OiBzZWxlY3RtZW51SWQsCgkJCWJ1dHRvbjogc2VsZWN0bWVudUlkICsgIi1idXR0b24iLAoJCQltZW51OiBzZWxlY3RtZW51SWQgKyAiLW1lbnUiCgkJfTsKCgkJdGhpcy5fZHJhd0J1dHRvbigpOwoJCXRoaXMuX2RyYXdNZW51KCk7CgkJdGhpcy5fYmluZEZvcm1SZXNldEhhbmRsZXIoKTsKCgkJdGhpcy5fcmVuZGVyZWQgPSBmYWxzZTsKCQl0aGlzLm1lbnVJdGVtcyA9ICQoKTsKCX0sCgoJX2RyYXdCdXR0b246IGZ1bmN0aW9uKCkgewoJCXZhciBpY29uLAoJCQl0aGF0ID0gdGhpcywKCQkJaXRlbSA9IHRoaXMuX3BhcnNlT3B0aW9uKAoJCQkJdGhpcy5lbGVtZW50LmZpbmQoICJvcHRpb246c2VsZWN0ZWQiICksCgkJCQl0aGlzLmVsZW1lbnRbIDAgXS5zZWxlY3RlZEluZGV4CgkJCSk7CgoJCS8vIEFzc29jaWF0ZSBleGlzdGluZyBsYWJlbCB3aXRoIHRoZSBuZXcgYnV0dG9uCgkJdGhpcy5sYWJlbHMgPSB0aGlzLmVsZW1lbnQubGFiZWxzKCkuYXR0ciggImZvciIsIHRoaXMuaWRzLmJ1dHRvbiApOwoJCXRoaXMuX29uKCB0aGlzLmxhYmVscywgewoJCQljbGljazogZnVuY3Rpb24oIGV2ZW50ICkgewoJCQkJdGhpcy5idXR0b24uZm9jdXMoKTsKCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCX0KCQl9ICk7CgoJCS8vIEhpZGUgb3JpZ2luYWwgc2VsZWN0IGVsZW1lbnQKCQl0aGlzLmVsZW1lbnQuaGlkZSgpOwoKCQkvLyBDcmVhdGUgYnV0dG9uCgkJdGhpcy5idXR0b24gPSAkKCAiPHNwYW4+IiwgewoJCQl0YWJpbmRleDogdGhpcy5vcHRpb25zLmRpc2FibGVkID8gLTEgOiAwLAoJCQlpZDogdGhpcy5pZHMuYnV0dG9uLAoJCQlyb2xlOiAiY29tYm9ib3giLAoJCQkiYXJpYS1leHBhbmRlZCI6ICJmYWxzZSIsCgkJCSJhcmlhLWF1dG9jb21wbGV0ZSI6ICJsaXN0IiwKCQkJImFyaWEtb3ducyI6IHRoaXMuaWRzLm1lbnUsCgkJCSJhcmlhLWhhc3BvcHVwIjogInRydWUiLAoJCQl0aXRsZTogdGhpcy5lbGVtZW50LmF0dHIoICJ0aXRsZSIgKQoJCX0gKQoJCQkuaW5zZXJ0QWZ0ZXIoIHRoaXMuZWxlbWVudCApOwoKCQl0aGlzLl9hZGRDbGFzcyggdGhpcy5idXR0b24sICJ1aS1zZWxlY3RtZW51LWJ1dHRvbiB1aS1zZWxlY3RtZW51LWJ1dHRvbi1jbG9zZWQiLAoJCQkidWktYnV0dG9uIHVpLXdpZGdldCIgKTsKCgkJaWNvbiA9ICQoICI8c3Bhbj4iICkuYXBwZW5kVG8oIHRoaXMuYnV0dG9uICk7CgkJdGhpcy5fYWRkQ2xhc3MoIGljb24sICJ1aS1zZWxlY3RtZW51LWljb24iLCAidWktaWNvbiAiICsgdGhpcy5vcHRpb25zLmljb25zLmJ1dHRvbiApOwoJCXRoaXMuYnV0dG9uSXRlbSA9IHRoaXMuX3JlbmRlckJ1dHRvbkl0ZW0oIGl0ZW0gKQoJCQkuYXBwZW5kVG8oIHRoaXMuYnV0dG9uICk7CgoJCWlmICggdGhpcy5vcHRpb25zLndpZHRoICE9PSBmYWxzZSApIHsKCQkJdGhpcy5fcmVzaXplQnV0dG9uKCk7CgkJfQoKCQl0aGlzLl9vbiggdGhpcy5idXR0b24sIHRoaXMuX2J1dHRvbkV2ZW50cyApOwoJCXRoaXMuYnV0dG9uLm9uZSggImZvY3VzaW4iLCBmdW5jdGlvbigpIHsKCgkJCS8vIERlbGF5IHJlbmRlcmluZyB0aGUgbWVudSBpdGVtcyB1bnRpbCB0aGUgYnV0dG9uIHJlY2VpdmVzIGZvY3VzLgoJCQkvLyBUaGUgbWVudSBtYXkgaGF2ZSBhbHJlYWR5IGJlZW4gcmVuZGVyZWQgdmlhIGEgcHJvZ3JhbW1hdGljIG9wZW4uCgkJCWlmICggIXRoYXQuX3JlbmRlcmVkICkgewoJCQkJdGhhdC5fcmVmcmVzaE1lbnUoKTsKCQkJfQoJCX0gKTsKCX0sCgoJX2RyYXdNZW51OiBmdW5jdGlvbigpIHsKCQl2YXIgdGhhdCA9IHRoaXM7CgoJCS8vIENyZWF0ZSBtZW51CgkJdGhpcy5tZW51ID0gJCggIjx1bD4iLCB7CgkJCSJhcmlhLWhpZGRlbiI6ICJ0cnVlIiwKCQkJImFyaWEtbGFiZWxsZWRieSI6IHRoaXMuaWRzLmJ1dHRvbiwKCQkJaWQ6IHRoaXMuaWRzLm1lbnUKCQl9ICk7CgoJCS8vIFdyYXAgbWVudQoJCXRoaXMubWVudVdyYXAgPSAkKCAiPGRpdj4iICkuYXBwZW5kKCB0aGlzLm1lbnUgKTsKCQl0aGlzLl9hZGRDbGFzcyggdGhpcy5tZW51V3JhcCwgInVpLXNlbGVjdG1lbnUtbWVudSIsICJ1aS1mcm9udCIgKTsKCQl0aGlzLm1lbnVXcmFwLmFwcGVuZFRvKCB0aGlzLl9hcHBlbmRUbygpICk7CgoJCS8vIEluaXRpYWxpemUgbWVudSB3aWRnZXQKCQl0aGlzLm1lbnVJbnN0YW5jZSA9IHRoaXMubWVudQoJCQkubWVudSggewoJCQkJY2xhc3NlczogewoJCQkJCSJ1aS1tZW51IjogInVpLWNvcm5lci1ib3R0b20iCgkJCQl9LAoJCQkJcm9sZTogImxpc3Rib3giLAoJCQkJc2VsZWN0OiBmdW5jdGlvbiggZXZlbnQsIHVpICkgewoJCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgoJCQkJCS8vIFN1cHBvcnQ6IElFOAoJCQkJCS8vIElmIHRoZSBpdGVtIHdhcyBzZWxlY3RlZCB2aWEgYSBjbGljaywgdGhlIHRleHQgc2VsZWN0aW9uCgkJCQkJLy8gd2lsbCBiZSBkZXN0cm95ZWQgaW4gSUUKCQkJCQl0aGF0Ll9zZXRTZWxlY3Rpb24oKTsKCgkJCQkJdGhhdC5fc2VsZWN0KCB1aS5pdGVtLmRhdGEoICJ1aS1zZWxlY3RtZW51LWl0ZW0iICksIGV2ZW50ICk7CgkJCQl9LAoJCQkJZm9jdXM6IGZ1bmN0aW9uKCBldmVudCwgdWkgKSB7CgkJCQkJdmFyIGl0ZW0gPSB1aS5pdGVtLmRhdGEoICJ1aS1zZWxlY3RtZW51LWl0ZW0iICk7CgoJCQkJCS8vIFByZXZlbnQgaW5pdGFsIGZvY3VzIGZyb20gZmlyaW5nIGFuZCBjaGVjayBpZiBpdHMgYSBuZXdseSBmb2N1c2VkIGl0ZW0KCQkJCQlpZiAoIHRoYXQuZm9jdXNJbmRleCAhPSBudWxsICYmIGl0ZW0uaW5kZXggIT09IHRoYXQuZm9jdXNJbmRleCApIHsKCQkJCQkJdGhhdC5fdHJpZ2dlciggImZvY3VzIiwgZXZlbnQsIHsgaXRlbTogaXRlbSB9ICk7CgkJCQkJCWlmICggIXRoYXQuaXNPcGVuICkgewoJCQkJCQkJdGhhdC5fc2VsZWN0KCBpdGVtLCBldmVudCApOwoJCQkJCQl9CgkJCQkJfQoJCQkJCXRoYXQuZm9jdXNJbmRleCA9IGl0ZW0uaW5kZXg7CgoJCQkJCXRoYXQuYnV0dG9uLmF0dHIoICJhcmlhLWFjdGl2ZWRlc2NlbmRhbnQiLAoJCQkJCQl0aGF0Lm1lbnVJdGVtcy5lcSggaXRlbS5pbmRleCApLmF0dHIoICJpZCIgKSApOwoJCQkJfQoJCQl9ICkKCQkJLm1lbnUoICJpbnN0YW5jZSIgKTsKCgkJLy8gRG9uJ3QgY2xvc2UgdGhlIG1lbnUgb24gbW91c2VsZWF2ZQoJCXRoaXMubWVudUluc3RhbmNlLl9vZmYoIHRoaXMubWVudSwgIm1vdXNlbGVhdmUiICk7CgoJCS8vIENhbmNlbCB0aGUgbWVudSdzIGNvbGxhcHNlQWxsIG9uIGRvY3VtZW50IGNsaWNrCgkJdGhpcy5tZW51SW5zdGFuY2UuX2Nsb3NlT25Eb2N1bWVudENsaWNrID0gZnVuY3Rpb24oKSB7CgkJCXJldHVybiBmYWxzZTsKCQl9OwoKCQkvLyBTZWxlY3RzIG9mdGVuIGNvbnRhaW4gZW1wdHkgaXRlbXMsIGJ1dCBuZXZlciBjb250YWluIGRpdmlkZXJzCgkJdGhpcy5tZW51SW5zdGFuY2UuX2lzRGl2aWRlciA9IGZ1bmN0aW9uKCkgewoJCQlyZXR1cm4gZmFsc2U7CgkJfTsKCX0sCgoJcmVmcmVzaDogZnVuY3Rpb24oKSB7CgkJdGhpcy5fcmVmcmVzaE1lbnUoKTsKCQl0aGlzLmJ1dHRvbkl0ZW0ucmVwbGFjZVdpdGgoCgkJCXRoaXMuYnV0dG9uSXRlbSA9IHRoaXMuX3JlbmRlckJ1dHRvbkl0ZW0oCgoJCQkJLy8gRmFsbCBiYWNrIHRvIGFuIGVtcHR5IG9iamVjdCBpbiBjYXNlIHRoZXJlIGFyZSBubyBvcHRpb25zCgkJCQl0aGlzLl9nZXRTZWxlY3RlZEl0ZW0oKS5kYXRhKCAidWktc2VsZWN0bWVudS1pdGVtIiApIHx8IHt9CgkJCSkKCQkpOwoJCWlmICggdGhpcy5vcHRpb25zLndpZHRoID09PSBudWxsICkgewoJCQl0aGlzLl9yZXNpemVCdXR0b24oKTsKCQl9Cgl9LAoKCV9yZWZyZXNoTWVudTogZnVuY3Rpb24oKSB7CgkJdmFyIGl0ZW0sCgkJCW9wdGlvbnMgPSB0aGlzLmVsZW1lbnQuZmluZCggIm9wdGlvbiIgKTsKCgkJdGhpcy5tZW51LmVtcHR5KCk7CgoJCXRoaXMuX3BhcnNlT3B0aW9ucyggb3B0aW9ucyApOwoJCXRoaXMuX3JlbmRlck1lbnUoIHRoaXMubWVudSwgdGhpcy5pdGVtcyApOwoKCQl0aGlzLm1lbnVJbnN0YW5jZS5yZWZyZXNoKCk7CgkJdGhpcy5tZW51SXRlbXMgPSB0aGlzLm1lbnUuZmluZCggImxpIiApCgkJCS5ub3QoICIudWktc2VsZWN0bWVudS1vcHRncm91cCIgKQoJCQkJLmZpbmQoICIudWktbWVudS1pdGVtLXdyYXBwZXIiICk7CgoJCXRoaXMuX3JlbmRlcmVkID0gdHJ1ZTsKCgkJaWYgKCAhb3B0aW9ucy5sZW5ndGggKSB7CgkJCXJldHVybjsKCQl9CgoJCWl0ZW0gPSB0aGlzLl9nZXRTZWxlY3RlZEl0ZW0oKTsKCgkJLy8gVXBkYXRlIHRoZSBtZW51IHRvIGhhdmUgdGhlIGNvcnJlY3QgaXRlbSBmb2N1c2VkCgkJdGhpcy5tZW51SW5zdGFuY2UuZm9jdXMoIG51bGwsIGl0ZW0gKTsKCQl0aGlzLl9zZXRBcmlhKCBpdGVtLmRhdGEoICJ1aS1zZWxlY3RtZW51LWl0ZW0iICkgKTsKCgkJLy8gU2V0IGRpc2FibGVkIHN0YXRlCgkJdGhpcy5fc2V0T3B0aW9uKCAiZGlzYWJsZWQiLCB0aGlzLmVsZW1lbnQucHJvcCggImRpc2FibGVkIiApICk7Cgl9LAoKCW9wZW46IGZ1bmN0aW9uKCBldmVudCApIHsKCQlpZiAoIHRoaXMub3B0aW9ucy5kaXNhYmxlZCApIHsKCQkJcmV0dXJuOwoJCX0KCgkJLy8gSWYgdGhpcyBpcyB0aGUgZmlyc3QgdGltZSB0aGUgbWVudSBpcyBiZWluZyBvcGVuZWQsIHJlbmRlciB0aGUgaXRlbXMKCQlpZiAoICF0aGlzLl9yZW5kZXJlZCApIHsKCQkJdGhpcy5fcmVmcmVzaE1lbnUoKTsKCQl9IGVsc2UgewoKCQkJLy8gTWVudSBjbGVhcnMgZm9jdXMgb24gY2xvc2UsIHJlc2V0IGZvY3VzIHRvIHNlbGVjdGVkIGl0ZW0KCQkJdGhpcy5fcmVtb3ZlQ2xhc3MoIHRoaXMubWVudS5maW5kKCAiLnVpLXN0YXRlLWFjdGl2ZSIgKSwgbnVsbCwgInVpLXN0YXRlLWFjdGl2ZSIgKTsKCQkJdGhpcy5tZW51SW5zdGFuY2UuZm9jdXMoIG51bGwsIHRoaXMuX2dldFNlbGVjdGVkSXRlbSgpICk7CgkJfQoKCQkvLyBJZiB0aGVyZSBhcmUgbm8gb3B0aW9ucywgZG9uJ3Qgb3BlbiB0aGUgbWVudQoJCWlmICggIXRoaXMubWVudUl0ZW1zLmxlbmd0aCApIHsKCQkJcmV0dXJuOwoJCX0KCgkJdGhpcy5pc09wZW4gPSB0cnVlOwoJCXRoaXMuX3RvZ2dsZUF0dHIoKTsKCQl0aGlzLl9yZXNpemVNZW51KCk7CgkJdGhpcy5fcG9zaXRpb24oKTsKCgkJdGhpcy5fb24oIHRoaXMuZG9jdW1lbnQsIHRoaXMuX2RvY3VtZW50Q2xpY2sgKTsKCgkJdGhpcy5fdHJpZ2dlciggIm9wZW4iLCBldmVudCApOwoJfSwKCglfcG9zaXRpb246IGZ1bmN0aW9uKCkgewoJCXRoaXMubWVudVdyYXAucG9zaXRpb24oICQuZXh0ZW5kKCB7IG9mOiB0aGlzLmJ1dHRvbiB9LCB0aGlzLm9wdGlvbnMucG9zaXRpb24gKSApOwoJfSwKCgljbG9zZTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCWlmICggIXRoaXMuaXNPcGVuICkgewoJCQlyZXR1cm47CgkJfQoKCQl0aGlzLmlzT3BlbiA9IGZhbHNlOwoJCXRoaXMuX3RvZ2dsZUF0dHIoKTsKCgkJdGhpcy5yYW5nZSA9IG51bGw7CgkJdGhpcy5fb2ZmKCB0aGlzLmRvY3VtZW50ICk7CgoJCXRoaXMuX3RyaWdnZXIoICJjbG9zZSIsIGV2ZW50ICk7Cgl9LAoKCXdpZGdldDogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMuYnV0dG9uOwoJfSwKCgltZW51V2lkZ2V0OiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gdGhpcy5tZW51OwoJfSwKCglfcmVuZGVyQnV0dG9uSXRlbTogZnVuY3Rpb24oIGl0ZW0gKSB7CgkJdmFyIGJ1dHRvbkl0ZW0gPSAkKCAiPHNwYW4+IiApOwoKCQl0aGlzLl9zZXRUZXh0KCBidXR0b25JdGVtLCBpdGVtLmxhYmVsICk7CgkJdGhpcy5fYWRkQ2xhc3MoIGJ1dHRvbkl0ZW0sICJ1aS1zZWxlY3RtZW51LXRleHQiICk7CgoJCXJldHVybiBidXR0b25JdGVtOwoJfSwKCglfcmVuZGVyTWVudTogZnVuY3Rpb24oIHVsLCBpdGVtcyApIHsKCQl2YXIgdGhhdCA9IHRoaXMsCgkJCWN1cnJlbnRPcHRncm91cCA9ICIiOwoKCQkkLmVhY2goIGl0ZW1zLCBmdW5jdGlvbiggaW5kZXgsIGl0ZW0gKSB7CgkJCXZhciBsaTsKCgkJCWlmICggaXRlbS5vcHRncm91cCAhPT0gY3VycmVudE9wdGdyb3VwICkgewoJCQkJbGkgPSAkKCAiPGxpPiIsIHsKCQkJCQl0ZXh0OiBpdGVtLm9wdGdyb3VwCgkJCQl9ICk7CgkJCQl0aGF0Ll9hZGRDbGFzcyggbGksICJ1aS1zZWxlY3RtZW51LW9wdGdyb3VwIiwgInVpLW1lbnUtZGl2aWRlciIgKwoJCQkJCSggaXRlbS5lbGVtZW50LnBhcmVudCggIm9wdGdyb3VwIiApLnByb3AoICJkaXNhYmxlZCIgKSA/CgkJCQkJCSIgdWktc3RhdGUtZGlzYWJsZWQiIDoKCQkJCQkJIiIgKSApOwoKCQkJCWxpLmFwcGVuZFRvKCB1bCApOwoKCQkJCWN1cnJlbnRPcHRncm91cCA9IGl0ZW0ub3B0Z3JvdXA7CgkJCX0KCgkJCXRoYXQuX3JlbmRlckl0ZW1EYXRhKCB1bCwgaXRlbSApOwoJCX0gKTsKCX0sCgoJX3JlbmRlckl0ZW1EYXRhOiBmdW5jdGlvbiggdWwsIGl0ZW0gKSB7CgkJcmV0dXJuIHRoaXMuX3JlbmRlckl0ZW0oIHVsLCBpdGVtICkuZGF0YSggInVpLXNlbGVjdG1lbnUtaXRlbSIsIGl0ZW0gKTsKCX0sCgoJX3JlbmRlckl0ZW06IGZ1bmN0aW9uKCB1bCwgaXRlbSApIHsKCQl2YXIgbGkgPSAkKCAiPGxpPiIgKSwKCQkJd3JhcHBlciA9ICQoICI8ZGl2PiIsIHsKCQkJCXRpdGxlOiBpdGVtLmVsZW1lbnQuYXR0ciggInRpdGxlIiApCgkJCX0gKTsKCgkJaWYgKCBpdGVtLmRpc2FibGVkICkgewoJCQl0aGlzLl9hZGRDbGFzcyggbGksIG51bGwsICJ1aS1zdGF0ZS1kaXNhYmxlZCIgKTsKCQl9CgkJdGhpcy5fc2V0VGV4dCggd3JhcHBlciwgaXRlbS5sYWJlbCApOwoKCQlyZXR1cm4gbGkuYXBwZW5kKCB3cmFwcGVyICkuYXBwZW5kVG8oIHVsICk7Cgl9LAoKCV9zZXRUZXh0OiBmdW5jdGlvbiggZWxlbWVudCwgdmFsdWUgKSB7CgkJaWYgKCB2YWx1ZSApIHsKCQkJZWxlbWVudC50ZXh0KCB2YWx1ZSApOwoJCX0gZWxzZSB7CgkJCWVsZW1lbnQuaHRtbCggIiYjMTYwOyIgKTsKCQl9Cgl9LAoKCV9tb3ZlOiBmdW5jdGlvbiggZGlyZWN0aW9uLCBldmVudCApIHsKCQl2YXIgaXRlbSwgbmV4dCwKCQkJZmlsdGVyID0gIi51aS1tZW51LWl0ZW0iOwoKCQlpZiAoIHRoaXMuaXNPcGVuICkgewoJCQlpdGVtID0gdGhpcy5tZW51SXRlbXMuZXEoIHRoaXMuZm9jdXNJbmRleCApLnBhcmVudCggImxpIiApOwoJCX0gZWxzZSB7CgkJCWl0ZW0gPSB0aGlzLm1lbnVJdGVtcy5lcSggdGhpcy5lbGVtZW50WyAwIF0uc2VsZWN0ZWRJbmRleCApLnBhcmVudCggImxpIiApOwoJCQlmaWx0ZXIgKz0gIjpub3QoLnVpLXN0YXRlLWRpc2FibGVkKSI7CgkJfQoKCQlpZiAoIGRpcmVjdGlvbiA9PT0gImZpcnN0IiB8fCBkaXJlY3Rpb24gPT09ICJsYXN0IiApIHsKCQkJbmV4dCA9IGl0ZW1bIGRpcmVjdGlvbiA9PT0gImZpcnN0IiA/ICJwcmV2QWxsIiA6ICJuZXh0QWxsIiBdKCBmaWx0ZXIgKS5lcSggLTEgKTsKCQl9IGVsc2UgewoJCQluZXh0ID0gaXRlbVsgZGlyZWN0aW9uICsgIkFsbCIgXSggZmlsdGVyICkuZXEoIDAgKTsKCQl9CgoJCWlmICggbmV4dC5sZW5ndGggKSB7CgkJCXRoaXMubWVudUluc3RhbmNlLmZvY3VzKCBldmVudCwgbmV4dCApOwoJCX0KCX0sCgoJX2dldFNlbGVjdGVkSXRlbTogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMubWVudUl0ZW1zLmVxKCB0aGlzLmVsZW1lbnRbIDAgXS5zZWxlY3RlZEluZGV4ICkucGFyZW50KCAibGkiICk7Cgl9LAoKCV90b2dnbGU6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl0aGlzWyB0aGlzLmlzT3BlbiA/ICJjbG9zZSIgOiAib3BlbiIgXSggZXZlbnQgKTsKCX0sCgoJX3NldFNlbGVjdGlvbjogZnVuY3Rpb24oKSB7CgkJdmFyIHNlbGVjdGlvbjsKCgkJaWYgKCAhdGhpcy5yYW5nZSApIHsKCQkJcmV0dXJuOwoJCX0KCgkJaWYgKCB3aW5kb3cuZ2V0U2VsZWN0aW9uICkgewoJCQlzZWxlY3Rpb24gPSB3aW5kb3cuZ2V0U2VsZWN0aW9uKCk7CgkJCXNlbGVjdGlvbi5yZW1vdmVBbGxSYW5nZXMoKTsKCQkJc2VsZWN0aW9uLmFkZFJhbmdlKCB0aGlzLnJhbmdlICk7CgoJCS8vIFN1cHBvcnQ6IElFOAoJCX0gZWxzZSB7CgkJCXRoaXMucmFuZ2Uuc2VsZWN0KCk7CgkJfQoKCQkvLyBTdXBwb3J0OiBJRQoJCS8vIFNldHRpbmcgdGhlIHRleHQgc2VsZWN0aW9uIGtpbGxzIHRoZSBidXR0b24gZm9jdXMgaW4gSUUsIGJ1dAoJCS8vIHJlc3RvcmluZyB0aGUgZm9jdXMgZG9lc24ndCBraWxsIHRoZSBzZWxlY3Rpb24uCgkJdGhpcy5idXR0b24uZm9jdXMoKTsKCX0sCgoJX2RvY3VtZW50Q2xpY2s6IHsKCQltb3VzZWRvd246IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJaWYgKCAhdGhpcy5pc09wZW4gKSB7CgkJCQlyZXR1cm47CgkJCX0KCgkJCWlmICggISQoIGV2ZW50LnRhcmdldCApLmNsb3Nlc3QoICIudWktc2VsZWN0bWVudS1tZW51LCAjIiArCgkJCQkJJC51aS5lc2NhcGVTZWxlY3RvciggdGhpcy5pZHMuYnV0dG9uICkgKS5sZW5ndGggKSB7CgkJCQl0aGlzLmNsb3NlKCBldmVudCApOwoJCQl9CgkJfQoJfSwKCglfYnV0dG9uRXZlbnRzOiB7CgoJCS8vIFByZXZlbnQgdGV4dCBzZWxlY3Rpb24gZnJvbSBiZWluZyByZXNldCB3aGVuIGludGVyYWN0aW5nIHdpdGggdGhlIHNlbGVjdG1lbnUgKCMxMDE0NCkKCQltb3VzZWRvd246IGZ1bmN0aW9uKCkgewoJCQl2YXIgc2VsZWN0aW9uOwoKCQkJaWYgKCB3aW5kb3cuZ2V0U2VsZWN0aW9uICkgewoJCQkJc2VsZWN0aW9uID0gd2luZG93LmdldFNlbGVjdGlvbigpOwoJCQkJaWYgKCBzZWxlY3Rpb24ucmFuZ2VDb3VudCApIHsKCQkJCQl0aGlzLnJhbmdlID0gc2VsZWN0aW9uLmdldFJhbmdlQXQoIDAgKTsKCQkJCX0KCgkJCS8vIFN1cHBvcnQ6IElFOAoJCQl9IGVsc2UgewoJCQkJdGhpcy5yYW5nZSA9IGRvY3VtZW50LnNlbGVjdGlvbi5jcmVhdGVSYW5nZSgpOwoJCQl9CgkJfSwKCgkJY2xpY2s6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJdGhpcy5fc2V0U2VsZWN0aW9uKCk7CgkJCXRoaXMuX3RvZ2dsZSggZXZlbnQgKTsKCQl9LAoKCQlrZXlkb3duOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJCXZhciBwcmV2ZW50RGVmYXVsdCA9IHRydWU7CgkJCXN3aXRjaCAoIGV2ZW50LmtleUNvZGUgKSB7CgkJCWNhc2UgJC51aS5rZXlDb2RlLlRBQjoKCQkJY2FzZSAkLnVpLmtleUNvZGUuRVNDQVBFOgoJCQkJdGhpcy5jbG9zZSggZXZlbnQgKTsKCQkJCXByZXZlbnREZWZhdWx0ID0gZmFsc2U7CgkJCQlicmVhazsKCQkJY2FzZSAkLnVpLmtleUNvZGUuRU5URVI6CgkJCQlpZiAoIHRoaXMuaXNPcGVuICkgewoJCQkJCXRoaXMuX3NlbGVjdEZvY3VzZWRJdGVtKCBldmVudCApOwoJCQkJfQoJCQkJYnJlYWs7CgkJCWNhc2UgJC51aS5rZXlDb2RlLlVQOgoJCQkJaWYgKCBldmVudC5hbHRLZXkgKSB7CgkJCQkJdGhpcy5fdG9nZ2xlKCBldmVudCApOwoJCQkJfSBlbHNlIHsKCQkJCQl0aGlzLl9tb3ZlKCAicHJldiIsIGV2ZW50ICk7CgkJCQl9CgkJCQlicmVhazsKCQkJY2FzZSAkLnVpLmtleUNvZGUuRE9XTjoKCQkJCWlmICggZXZlbnQuYWx0S2V5ICkgewoJCQkJCXRoaXMuX3RvZ2dsZSggZXZlbnQgKTsKCQkJCX0gZWxzZSB7CgkJCQkJdGhpcy5fbW92ZSggIm5leHQiLCBldmVudCApOwoJCQkJfQoJCQkJYnJlYWs7CgkJCWNhc2UgJC51aS5rZXlDb2RlLlNQQUNFOgoJCQkJaWYgKCB0aGlzLmlzT3BlbiApIHsKCQkJCQl0aGlzLl9zZWxlY3RGb2N1c2VkSXRlbSggZXZlbnQgKTsKCQkJCX0gZWxzZSB7CgkJCQkJdGhpcy5fdG9nZ2xlKCBldmVudCApOwoJCQkJfQoJCQkJYnJlYWs7CgkJCWNhc2UgJC51aS5rZXlDb2RlLkxFRlQ6CgkJCQl0aGlzLl9tb3ZlKCAicHJldiIsIGV2ZW50ICk7CgkJCQlicmVhazsKCQkJY2FzZSAkLnVpLmtleUNvZGUuUklHSFQ6CgkJCQl0aGlzLl9tb3ZlKCAibmV4dCIsIGV2ZW50ICk7CgkJCQlicmVhazsKCQkJY2FzZSAkLnVpLmtleUNvZGUuSE9NRToKCQkJY2FzZSAkLnVpLmtleUNvZGUuUEFHRV9VUDoKCQkJCXRoaXMuX21vdmUoICJmaXJzdCIsIGV2ZW50ICk7CgkJCQlicmVhazsKCQkJY2FzZSAkLnVpLmtleUNvZGUuRU5EOgoJCQljYXNlICQudWkua2V5Q29kZS5QQUdFX0RPV046CgkJCQl0aGlzLl9tb3ZlKCAibGFzdCIsIGV2ZW50ICk7CgkJCQlicmVhazsKCQkJZGVmYXVsdDoKCQkJCXRoaXMubWVudS50cmlnZ2VyKCBldmVudCApOwoJCQkJcHJldmVudERlZmF1bHQgPSBmYWxzZTsKCQkJfQoKCQkJaWYgKCBwcmV2ZW50RGVmYXVsdCApIHsKCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCX0KCQl9Cgl9LAoKCV9zZWxlY3RGb2N1c2VkSXRlbTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXZhciBpdGVtID0gdGhpcy5tZW51SXRlbXMuZXEoIHRoaXMuZm9jdXNJbmRleCApLnBhcmVudCggImxpIiApOwoJCWlmICggIWl0ZW0uaGFzQ2xhc3MoICJ1aS1zdGF0ZS1kaXNhYmxlZCIgKSApIHsKCQkJdGhpcy5fc2VsZWN0KCBpdGVtLmRhdGEoICJ1aS1zZWxlY3RtZW51LWl0ZW0iICksIGV2ZW50ICk7CgkJfQoJfSwKCglfc2VsZWN0OiBmdW5jdGlvbiggaXRlbSwgZXZlbnQgKSB7CgkJdmFyIG9sZEluZGV4ID0gdGhpcy5lbGVtZW50WyAwIF0uc2VsZWN0ZWRJbmRleDsKCgkJLy8gQ2hhbmdlIG5hdGl2ZSBzZWxlY3QgZWxlbWVudAoJCXRoaXMuZWxlbWVudFsgMCBdLnNlbGVjdGVkSW5kZXggPSBpdGVtLmluZGV4OwoJCXRoaXMuYnV0dG9uSXRlbS5yZXBsYWNlV2l0aCggdGhpcy5idXR0b25JdGVtID0gdGhpcy5fcmVuZGVyQnV0dG9uSXRlbSggaXRlbSApICk7CgkJdGhpcy5fc2V0QXJpYSggaXRlbSApOwoJCXRoaXMuX3RyaWdnZXIoICJzZWxlY3QiLCBldmVudCwgeyBpdGVtOiBpdGVtIH0gKTsKCgkJaWYgKCBpdGVtLmluZGV4ICE9PSBvbGRJbmRleCApIHsKCQkJdGhpcy5fdHJpZ2dlciggImNoYW5nZSIsIGV2ZW50LCB7IGl0ZW06IGl0ZW0gfSApOwoJCX0KCgkJdGhpcy5jbG9zZSggZXZlbnQgKTsKCX0sCgoJX3NldEFyaWE6IGZ1bmN0aW9uKCBpdGVtICkgewoJCXZhciBpZCA9IHRoaXMubWVudUl0ZW1zLmVxKCBpdGVtLmluZGV4ICkuYXR0ciggImlkIiApOwoKCQl0aGlzLmJ1dHRvbi5hdHRyKCB7CgkJCSJhcmlhLWxhYmVsbGVkYnkiOiBpZCwKCQkJImFyaWEtYWN0aXZlZGVzY2VuZGFudCI6IGlkCgkJfSApOwoJCXRoaXMubWVudS5hdHRyKCAiYXJpYS1hY3RpdmVkZXNjZW5kYW50IiwgaWQgKTsKCX0sCgoJX3NldE9wdGlvbjogZnVuY3Rpb24oIGtleSwgdmFsdWUgKSB7CgkJaWYgKCBrZXkgPT09ICJpY29ucyIgKSB7CgkJCXZhciBpY29uID0gdGhpcy5idXR0b24uZmluZCggInNwYW4udWktaWNvbiIgKTsKCQkJdGhpcy5fcmVtb3ZlQ2xhc3MoIGljb24sIG51bGwsIHRoaXMub3B0aW9ucy5pY29ucy5idXR0b24gKQoJCQkJLl9hZGRDbGFzcyggaWNvbiwgbnVsbCwgdmFsdWUuYnV0dG9uICk7CgkJfQoKCQl0aGlzLl9zdXBlcigga2V5LCB2YWx1ZSApOwoKCQlpZiAoIGtleSA9PT0gImFwcGVuZFRvIiApIHsKCQkJdGhpcy5tZW51V3JhcC5hcHBlbmRUbyggdGhpcy5fYXBwZW5kVG8oKSApOwoJCX0KCgkJaWYgKCBrZXkgPT09ICJ3aWR0aCIgKSB7CgkJCXRoaXMuX3Jlc2l6ZUJ1dHRvbigpOwoJCX0KCX0sCgoJX3NldE9wdGlvbkRpc2FibGVkOiBmdW5jdGlvbiggdmFsdWUgKSB7CgkJdGhpcy5fc3VwZXIoIHZhbHVlICk7CgoJCXRoaXMubWVudUluc3RhbmNlLm9wdGlvbiggImRpc2FibGVkIiwgdmFsdWUgKTsKCQl0aGlzLmJ1dHRvbi5hdHRyKCAiYXJpYS1kaXNhYmxlZCIsIHZhbHVlICk7CgkJdGhpcy5fdG9nZ2xlQ2xhc3MoIHRoaXMuYnV0dG9uLCBudWxsLCAidWktc3RhdGUtZGlzYWJsZWQiLCB2YWx1ZSApOwoKCQl0aGlzLmVsZW1lbnQucHJvcCggImRpc2FibGVkIiwgdmFsdWUgKTsKCQlpZiAoIHZhbHVlICkgewoJCQl0aGlzLmJ1dHRvbi5hdHRyKCAidGFiaW5kZXgiLCAtMSApOwoJCQl0aGlzLmNsb3NlKCk7CgkJfSBlbHNlIHsKCQkJdGhpcy5idXR0b24uYXR0ciggInRhYmluZGV4IiwgMCApOwoJCX0KCX0sCgoJX2FwcGVuZFRvOiBmdW5jdGlvbigpIHsKCQl2YXIgZWxlbWVudCA9IHRoaXMub3B0aW9ucy5hcHBlbmRUbzsKCgkJaWYgKCBlbGVtZW50ICkgewoJCQllbGVtZW50ID0gZWxlbWVudC5qcXVlcnkgfHwgZWxlbWVudC5ub2RlVHlwZSA/CgkJCQkkKCBlbGVtZW50ICkgOgoJCQkJdGhpcy5kb2N1bWVudC5maW5kKCBlbGVtZW50ICkuZXEoIDAgKTsKCQl9CgoJCWlmICggIWVsZW1lbnQgfHwgIWVsZW1lbnRbIDAgXSApIHsKCQkJZWxlbWVudCA9IHRoaXMuZWxlbWVudC5jbG9zZXN0KCAiLnVpLWZyb250LCBkaWFsb2ciICk7CgkJfQoKCQlpZiAoICFlbGVtZW50Lmxlbmd0aCApIHsKCQkJZWxlbWVudCA9IHRoaXMuZG9jdW1lbnRbIDAgXS5ib2R5OwoJCX0KCgkJcmV0dXJuIGVsZW1lbnQ7Cgl9LAoKCV90b2dnbGVBdHRyOiBmdW5jdGlvbigpIHsKCQl0aGlzLmJ1dHRvbi5hdHRyKCAiYXJpYS1leHBhbmRlZCIsIHRoaXMuaXNPcGVuICk7CgoJCS8vIFdlIGNhbid0IHVzZSB0d28gX3RvZ2dsZUNsYXNzKCkgY2FsbHMgaGVyZSwgYmVjYXVzZSB3ZSBuZWVkIHRvIG1ha2Ugc3VyZQoJCS8vIHdlIGFsd2F5cyByZW1vdmUgY2xhc3NlcyBmaXJzdCBhbmQgYWRkIHRoZW0gc2Vjb25kLCBvdGhlcndpc2UgaWYgYm90aCBjbGFzc2VzIGhhdmUgdGhlCgkJLy8gc2FtZSB0aGVtZSBjbGFzcywgaXQgd2lsbCBiZSByZW1vdmVkIGFmdGVyIHdlIGFkZCBpdC4KCQl0aGlzLl9yZW1vdmVDbGFzcyggdGhpcy5idXR0b24sICJ1aS1zZWxlY3RtZW51LWJ1dHRvbi0iICsKCQkJKCB0aGlzLmlzT3BlbiA/ICJjbG9zZWQiIDogIm9wZW4iICkgKQoJCQkuX2FkZENsYXNzKCB0aGlzLmJ1dHRvbiwgInVpLXNlbGVjdG1lbnUtYnV0dG9uLSIgKwoJCQkJKCB0aGlzLmlzT3BlbiA/ICJvcGVuIiA6ICJjbG9zZWQiICkgKQoJCQkuX3RvZ2dsZUNsYXNzKCB0aGlzLm1lbnVXcmFwLCAidWktc2VsZWN0bWVudS1vcGVuIiwgbnVsbCwgdGhpcy5pc09wZW4gKTsKCgkJdGhpcy5tZW51LmF0dHIoICJhcmlhLWhpZGRlbiIsICF0aGlzLmlzT3BlbiApOwoJfSwKCglfcmVzaXplQnV0dG9uOiBmdW5jdGlvbigpIHsKCQl2YXIgd2lkdGggPSB0aGlzLm9wdGlvbnMud2lkdGg7CgoJCS8vIEZvciBgd2lkdGg6IGZhbHNlYCwganVzdCByZW1vdmUgaW5saW5lIHN0eWxlIGFuZCBzdG9wCgkJaWYgKCB3aWR0aCA9PT0gZmFsc2UgKSB7CgkJCXRoaXMuYnV0dG9uLmNzcyggIndpZHRoIiwgIiIgKTsKCQkJcmV0dXJuOwoJCX0KCgkJLy8gRm9yIGB3aWR0aDogbnVsbGAsIG1hdGNoIHRoZSB3aWR0aCBvZiB0aGUgb3JpZ2luYWwgZWxlbWVudAoJCWlmICggd2lkdGggPT09IG51bGwgKSB7CgkJCXdpZHRoID0gdGhpcy5lbGVtZW50LnNob3coKS5vdXRlcldpZHRoKCk7CgkJCXRoaXMuZWxlbWVudC5oaWRlKCk7CgkJfQoKCQl0aGlzLmJ1dHRvbi5vdXRlcldpZHRoKCB3aWR0aCApOwoJfSwKCglfcmVzaXplTWVudTogZnVuY3Rpb24oKSB7CgkJdGhpcy5tZW51Lm91dGVyV2lkdGgoIE1hdGgubWF4KAoJCQl0aGlzLmJ1dHRvbi5vdXRlcldpZHRoKCksCgoJCQkvLyBTdXBwb3J0OiBJRTEwCgkJCS8vIElFMTAgd3JhcHMgbG9uZyB0ZXh0IChwb3NzaWJseSBhIHJvdW5kaW5nIGJ1ZykKCQkJLy8gc28gd2UgYWRkIDFweCB0byBhdm9pZCB0aGUgd3JhcHBpbmcKCQkJdGhpcy5tZW51LndpZHRoKCAiIiApLm91dGVyV2lkdGgoKSArIDEKCQkpICk7Cgl9LAoKCV9nZXRDcmVhdGVPcHRpb25zOiBmdW5jdGlvbigpIHsKCQl2YXIgb3B0aW9ucyA9IHRoaXMuX3N1cGVyKCk7CgoJCW9wdGlvbnMuZGlzYWJsZWQgPSB0aGlzLmVsZW1lbnQucHJvcCggImRpc2FibGVkIiApOwoKCQlyZXR1cm4gb3B0aW9uczsKCX0sCgoJX3BhcnNlT3B0aW9uczogZnVuY3Rpb24oIG9wdGlvbnMgKSB7CgkJdmFyIHRoYXQgPSB0aGlzLAoJCQlkYXRhID0gW107CgkJb3B0aW9ucy5lYWNoKCBmdW5jdGlvbiggaW5kZXgsIGl0ZW0gKSB7CgkJCWRhdGEucHVzaCggdGhhdC5fcGFyc2VPcHRpb24oICQoIGl0ZW0gKSwgaW5kZXggKSApOwoJCX0gKTsKCQl0aGlzLml0ZW1zID0gZGF0YTsKCX0sCgoJX3BhcnNlT3B0aW9uOiBmdW5jdGlvbiggb3B0aW9uLCBpbmRleCApIHsKCQl2YXIgb3B0Z3JvdXAgPSBvcHRpb24ucGFyZW50KCAib3B0Z3JvdXAiICk7CgoJCXJldHVybiB7CgkJCWVsZW1lbnQ6IG9wdGlvbiwKCQkJaW5kZXg6IGluZGV4LAoJCQl2YWx1ZTogb3B0aW9uLnZhbCgpLAoJCQlsYWJlbDogb3B0aW9uLnRleHQoKSwKCQkJb3B0Z3JvdXA6IG9wdGdyb3VwLmF0dHIoICJsYWJlbCIgKSB8fCAiIiwKCQkJZGlzYWJsZWQ6IG9wdGdyb3VwLnByb3AoICJkaXNhYmxlZCIgKSB8fCBvcHRpb24ucHJvcCggImRpc2FibGVkIiApCgkJfTsKCX0sCgoJX2Rlc3Ryb3k6IGZ1bmN0aW9uKCkgewoJCXRoaXMuX3VuYmluZEZvcm1SZXNldEhhbmRsZXIoKTsKCQl0aGlzLm1lbnVXcmFwLnJlbW92ZSgpOwoJCXRoaXMuYnV0dG9uLnJlbW92ZSgpOwoJCXRoaXMuZWxlbWVudC5zaG93KCk7CgkJdGhpcy5lbGVtZW50LnJlbW92ZVVuaXF1ZUlkKCk7CgkJdGhpcy5sYWJlbHMuYXR0ciggImZvciIsIHRoaXMuaWRzLmVsZW1lbnQgKTsKCX0KfSBdICk7CgoKLyohCiAqIGpRdWVyeSBVSSBTbGlkZXIgMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiBTbGlkZXIKLy8+Pmdyb3VwOiBXaWRnZXRzCi8vPj5kZXNjcmlwdGlvbjogRGlzcGxheXMgYSBmbGV4aWJsZSBzbGlkZXIgd2l0aCByYW5nZXMgYW5kIGFjY2Vzc2liaWxpdHkgdmlhIGtleWJvYXJkLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vc2xpZGVyLwovLz4+ZGVtb3M6IGh0dHA6Ly9qcXVlcnl1aS5jb20vc2xpZGVyLwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvY29yZS5jc3MKLy8+PmNzcy5zdHJ1Y3R1cmU6IC4uLy4uL3RoZW1lcy9iYXNlL3NsaWRlci5jc3MKLy8+PmNzcy50aGVtZTogLi4vLi4vdGhlbWVzL2Jhc2UvdGhlbWUuY3NzCgoKCnZhciB3aWRnZXRzU2xpZGVyID0gJC53aWRnZXQoICJ1aS5zbGlkZXIiLCAkLnVpLm1vdXNlLCB7Cgl2ZXJzaW9uOiAiMS4xMi4xIiwKCXdpZGdldEV2ZW50UHJlZml4OiAic2xpZGUiLAoKCW9wdGlvbnM6IHsKCQlhbmltYXRlOiBmYWxzZSwKCQljbGFzc2VzOiB7CgkJCSJ1aS1zbGlkZXIiOiAidWktY29ybmVyLWFsbCIsCgkJCSJ1aS1zbGlkZXItaGFuZGxlIjogInVpLWNvcm5lci1hbGwiLAoKCQkJLy8gTm90ZTogdWktd2lkZ2V0LWhlYWRlciBpc24ndCB0aGUgbW9zdCBmaXR0aW5nbHkgc2VtYW50aWMgZnJhbWV3b3JrIGNsYXNzIGZvciB0aGlzCgkJCS8vIGVsZW1lbnQsIGJ1dCB3b3JrZWQgYmVzdCB2aXN1YWxseSB3aXRoIGEgdmFyaWV0eSBvZiB0aGVtZXMKCQkJInVpLXNsaWRlci1yYW5nZSI6ICJ1aS1jb3JuZXItYWxsIHVpLXdpZGdldC1oZWFkZXIiCgkJfSwKCQlkaXN0YW5jZTogMCwKCQltYXg6IDEwMCwKCQltaW46IDAsCgkJb3JpZW50YXRpb246ICJob3Jpem9udGFsIiwKCQlyYW5nZTogZmFsc2UsCgkJc3RlcDogMSwKCQl2YWx1ZTogMCwKCQl2YWx1ZXM6IG51bGwsCgoJCS8vIENhbGxiYWNrcwoJCWNoYW5nZTogbnVsbCwKCQlzbGlkZTogbnVsbCwKCQlzdGFydDogbnVsbCwKCQlzdG9wOiBudWxsCgl9LAoKCS8vIE51bWJlciBvZiBwYWdlcyBpbiBhIHNsaWRlcgoJLy8gKGhvdyBtYW55IHRpbWVzIGNhbiB5b3UgcGFnZSB1cC9kb3duIHRvIGdvIHRocm91Z2ggdGhlIHdob2xlIHJhbmdlKQoJbnVtUGFnZXM6IDUsCgoJX2NyZWF0ZTogZnVuY3Rpb24oKSB7CgkJdGhpcy5fa2V5U2xpZGluZyA9IGZhbHNlOwoJCXRoaXMuX21vdXNlU2xpZGluZyA9IGZhbHNlOwoJCXRoaXMuX2FuaW1hdGVPZmYgPSB0cnVlOwoJCXRoaXMuX2hhbmRsZUluZGV4ID0gbnVsbDsKCQl0aGlzLl9kZXRlY3RPcmllbnRhdGlvbigpOwoJCXRoaXMuX21vdXNlSW5pdCgpOwoJCXRoaXMuX2NhbGN1bGF0ZU5ld01heCgpOwoKCQl0aGlzLl9hZGRDbGFzcyggInVpLXNsaWRlciB1aS1zbGlkZXItIiArIHRoaXMub3JpZW50YXRpb24sCgkJCSJ1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQiICk7CgoJCXRoaXMuX3JlZnJlc2goKTsKCgkJdGhpcy5fYW5pbWF0ZU9mZiA9IGZhbHNlOwoJfSwKCglfcmVmcmVzaDogZnVuY3Rpb24oKSB7CgkJdGhpcy5fY3JlYXRlUmFuZ2UoKTsKCQl0aGlzLl9jcmVhdGVIYW5kbGVzKCk7CgkJdGhpcy5fc2V0dXBFdmVudHMoKTsKCQl0aGlzLl9yZWZyZXNoVmFsdWUoKTsKCX0sCgoJX2NyZWF0ZUhhbmRsZXM6IGZ1bmN0aW9uKCkgewoJCXZhciBpLCBoYW5kbGVDb3VudCwKCQkJb3B0aW9ucyA9IHRoaXMub3B0aW9ucywKCQkJZXhpc3RpbmdIYW5kbGVzID0gdGhpcy5lbGVtZW50LmZpbmQoICIudWktc2xpZGVyLWhhbmRsZSIgKSwKCQkJaGFuZGxlID0gIjxzcGFuIHRhYmluZGV4PScwJz48L3NwYW4+IiwKCQkJaGFuZGxlcyA9IFtdOwoKCQloYW5kbGVDb3VudCA9ICggb3B0aW9ucy52YWx1ZXMgJiYgb3B0aW9ucy52YWx1ZXMubGVuZ3RoICkgfHwgMTsKCgkJaWYgKCBleGlzdGluZ0hhbmRsZXMubGVuZ3RoID4gaGFuZGxlQ291bnQgKSB7CgkJCWV4aXN0aW5nSGFuZGxlcy5zbGljZSggaGFuZGxlQ291bnQgKS5yZW1vdmUoKTsKCQkJZXhpc3RpbmdIYW5kbGVzID0gZXhpc3RpbmdIYW5kbGVzLnNsaWNlKCAwLCBoYW5kbGVDb3VudCApOwoJCX0KCgkJZm9yICggaSA9IGV4aXN0aW5nSGFuZGxlcy5sZW5ndGg7IGkgPCBoYW5kbGVDb3VudDsgaSsrICkgewoJCQloYW5kbGVzLnB1c2goIGhhbmRsZSApOwoJCX0KCgkJdGhpcy5oYW5kbGVzID0gZXhpc3RpbmdIYW5kbGVzLmFkZCggJCggaGFuZGxlcy5qb2luKCAiIiApICkuYXBwZW5kVG8oIHRoaXMuZWxlbWVudCApICk7CgoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLmhhbmRsZXMsICJ1aS1zbGlkZXItaGFuZGxlIiwgInVpLXN0YXRlLWRlZmF1bHQiICk7CgoJCXRoaXMuaGFuZGxlID0gdGhpcy5oYW5kbGVzLmVxKCAwICk7CgoJCXRoaXMuaGFuZGxlcy5lYWNoKCBmdW5jdGlvbiggaSApIHsKCQkJJCggdGhpcyApCgkJCQkuZGF0YSggInVpLXNsaWRlci1oYW5kbGUtaW5kZXgiLCBpICkKCQkJCS5hdHRyKCAidGFiSW5kZXgiLCAwICk7CgkJfSApOwoJfSwKCglfY3JlYXRlUmFuZ2U6IGZ1bmN0aW9uKCkgewoJCXZhciBvcHRpb25zID0gdGhpcy5vcHRpb25zOwoKCQlpZiAoIG9wdGlvbnMucmFuZ2UgKSB7CgkJCWlmICggb3B0aW9ucy5yYW5nZSA9PT0gdHJ1ZSApIHsKCQkJCWlmICggIW9wdGlvbnMudmFsdWVzICkgewoJCQkJCW9wdGlvbnMudmFsdWVzID0gWyB0aGlzLl92YWx1ZU1pbigpLCB0aGlzLl92YWx1ZU1pbigpIF07CgkJCQl9IGVsc2UgaWYgKCBvcHRpb25zLnZhbHVlcy5sZW5ndGggJiYgb3B0aW9ucy52YWx1ZXMubGVuZ3RoICE9PSAyICkgewoJCQkJCW9wdGlvbnMudmFsdWVzID0gWyBvcHRpb25zLnZhbHVlc1sgMCBdLCBvcHRpb25zLnZhbHVlc1sgMCBdIF07CgkJCQl9IGVsc2UgaWYgKCAkLmlzQXJyYXkoIG9wdGlvbnMudmFsdWVzICkgKSB7CgkJCQkJb3B0aW9ucy52YWx1ZXMgPSBvcHRpb25zLnZhbHVlcy5zbGljZSggMCApOwoJCQkJfQoJCQl9CgoJCQlpZiAoICF0aGlzLnJhbmdlIHx8ICF0aGlzLnJhbmdlLmxlbmd0aCApIHsKCQkJCXRoaXMucmFuZ2UgPSAkKCAiPGRpdj4iICkKCQkJCQkuYXBwZW5kVG8oIHRoaXMuZWxlbWVudCApOwoKCQkJCXRoaXMuX2FkZENsYXNzKCB0aGlzLnJhbmdlLCAidWktc2xpZGVyLXJhbmdlIiApOwoJCQl9IGVsc2UgewoJCQkJdGhpcy5fcmVtb3ZlQ2xhc3MoIHRoaXMucmFuZ2UsICJ1aS1zbGlkZXItcmFuZ2UtbWluIHVpLXNsaWRlci1yYW5nZS1tYXgiICk7CgoJCQkJLy8gSGFuZGxlIHJhbmdlIHN3aXRjaGluZyBmcm9tIHRydWUgdG8gbWluL21heAoJCQkJdGhpcy5yYW5nZS5jc3MoIHsKCQkJCQkibGVmdCI6ICIiLAoJCQkJCSJib3R0b20iOiAiIgoJCQkJfSApOwoJCQl9CgkJCWlmICggb3B0aW9ucy5yYW5nZSA9PT0gIm1pbiIgfHwgb3B0aW9ucy5yYW5nZSA9PT0gIm1heCIgKSB7CgkJCQl0aGlzLl9hZGRDbGFzcyggdGhpcy5yYW5nZSwgInVpLXNsaWRlci1yYW5nZS0iICsgb3B0aW9ucy5yYW5nZSApOwoJCQl9CgkJfSBlbHNlIHsKCQkJaWYgKCB0aGlzLnJhbmdlICkgewoJCQkJdGhpcy5yYW5nZS5yZW1vdmUoKTsKCQkJfQoJCQl0aGlzLnJhbmdlID0gbnVsbDsKCQl9Cgl9LAoKCV9zZXR1cEV2ZW50czogZnVuY3Rpb24oKSB7CgkJdGhpcy5fb2ZmKCB0aGlzLmhhbmRsZXMgKTsKCQl0aGlzLl9vbiggdGhpcy5oYW5kbGVzLCB0aGlzLl9oYW5kbGVFdmVudHMgKTsKCQl0aGlzLl9ob3ZlcmFibGUoIHRoaXMuaGFuZGxlcyApOwoJCXRoaXMuX2ZvY3VzYWJsZSggdGhpcy5oYW5kbGVzICk7Cgl9LAoKCV9kZXN0cm95OiBmdW5jdGlvbigpIHsKCQl0aGlzLmhhbmRsZXMucmVtb3ZlKCk7CgkJaWYgKCB0aGlzLnJhbmdlICkgewoJCQl0aGlzLnJhbmdlLnJlbW92ZSgpOwoJCX0KCgkJdGhpcy5fbW91c2VEZXN0cm95KCk7Cgl9LAoKCV9tb3VzZUNhcHR1cmU6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgcG9zaXRpb24sIG5vcm1WYWx1ZSwgZGlzdGFuY2UsIGNsb3Nlc3RIYW5kbGUsIGluZGV4LCBhbGxvd2VkLCBvZmZzZXQsIG1vdXNlT3ZlckhhbmRsZSwKCQkJdGhhdCA9IHRoaXMsCgkJCW8gPSB0aGlzLm9wdGlvbnM7CgoJCWlmICggby5kaXNhYmxlZCApIHsKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCgkJdGhpcy5lbGVtZW50U2l6ZSA9IHsKCQkJd2lkdGg6IHRoaXMuZWxlbWVudC5vdXRlcldpZHRoKCksCgkJCWhlaWdodDogdGhpcy5lbGVtZW50Lm91dGVySGVpZ2h0KCkKCQl9OwoJCXRoaXMuZWxlbWVudE9mZnNldCA9IHRoaXMuZWxlbWVudC5vZmZzZXQoKTsKCgkJcG9zaXRpb24gPSB7IHg6IGV2ZW50LnBhZ2VYLCB5OiBldmVudC5wYWdlWSB9OwoJCW5vcm1WYWx1ZSA9IHRoaXMuX25vcm1WYWx1ZUZyb21Nb3VzZSggcG9zaXRpb24gKTsKCQlkaXN0YW5jZSA9IHRoaXMuX3ZhbHVlTWF4KCkgLSB0aGlzLl92YWx1ZU1pbigpICsgMTsKCQl0aGlzLmhhbmRsZXMuZWFjaCggZnVuY3Rpb24oIGkgKSB7CgkJCXZhciB0aGlzRGlzdGFuY2UgPSBNYXRoLmFicyggbm9ybVZhbHVlIC0gdGhhdC52YWx1ZXMoIGkgKSApOwoJCQlpZiAoICggZGlzdGFuY2UgPiB0aGlzRGlzdGFuY2UgKSB8fAoJCQkJKCBkaXN0YW5jZSA9PT0gdGhpc0Rpc3RhbmNlICYmCgkJCQkJKCBpID09PSB0aGF0Ll9sYXN0Q2hhbmdlZFZhbHVlIHx8IHRoYXQudmFsdWVzKCBpICkgPT09IG8ubWluICkgKSApIHsKCQkJCWRpc3RhbmNlID0gdGhpc0Rpc3RhbmNlOwoJCQkJY2xvc2VzdEhhbmRsZSA9ICQoIHRoaXMgKTsKCQkJCWluZGV4ID0gaTsKCQkJfQoJCX0gKTsKCgkJYWxsb3dlZCA9IHRoaXMuX3N0YXJ0KCBldmVudCwgaW5kZXggKTsKCQlpZiAoIGFsbG93ZWQgPT09IGZhbHNlICkgewoJCQlyZXR1cm4gZmFsc2U7CgkJfQoJCXRoaXMuX21vdXNlU2xpZGluZyA9IHRydWU7CgoJCXRoaXMuX2hhbmRsZUluZGV4ID0gaW5kZXg7CgoJCXRoaXMuX2FkZENsYXNzKCBjbG9zZXN0SGFuZGxlLCBudWxsLCAidWktc3RhdGUtYWN0aXZlIiApOwoJCWNsb3Nlc3RIYW5kbGUudHJpZ2dlciggImZvY3VzIiApOwoKCQlvZmZzZXQgPSBjbG9zZXN0SGFuZGxlLm9mZnNldCgpOwoJCW1vdXNlT3ZlckhhbmRsZSA9ICEkKCBldmVudC50YXJnZXQgKS5wYXJlbnRzKCkuYWRkQmFjaygpLmlzKCAiLnVpLXNsaWRlci1oYW5kbGUiICk7CgkJdGhpcy5fY2xpY2tPZmZzZXQgPSBtb3VzZU92ZXJIYW5kbGUgPyB7IGxlZnQ6IDAsIHRvcDogMCB9IDogewoJCQlsZWZ0OiBldmVudC5wYWdlWCAtIG9mZnNldC5sZWZ0IC0gKCBjbG9zZXN0SGFuZGxlLndpZHRoKCkgLyAyICksCgkJCXRvcDogZXZlbnQucGFnZVkgLSBvZmZzZXQudG9wIC0KCQkJCSggY2xvc2VzdEhhbmRsZS5oZWlnaHQoKSAvIDIgKSAtCgkJCQkoIHBhcnNlSW50KCBjbG9zZXN0SGFuZGxlLmNzcyggImJvcmRlclRvcFdpZHRoIiApLCAxMCApIHx8IDAgKSAtCgkJCQkoIHBhcnNlSW50KCBjbG9zZXN0SGFuZGxlLmNzcyggImJvcmRlckJvdHRvbVdpZHRoIiApLCAxMCApIHx8IDAgKSArCgkJCQkoIHBhcnNlSW50KCBjbG9zZXN0SGFuZGxlLmNzcyggIm1hcmdpblRvcCIgKSwgMTAgKSB8fCAwICkKCQl9OwoKCQlpZiAoICF0aGlzLmhhbmRsZXMuaGFzQ2xhc3MoICJ1aS1zdGF0ZS1ob3ZlciIgKSApIHsKCQkJdGhpcy5fc2xpZGUoIGV2ZW50LCBpbmRleCwgbm9ybVZhbHVlICk7CgkJfQoJCXRoaXMuX2FuaW1hdGVPZmYgPSB0cnVlOwoJCXJldHVybiB0cnVlOwoJfSwKCglfbW91c2VTdGFydDogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRydWU7Cgl9LAoKCV9tb3VzZURyYWc6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl2YXIgcG9zaXRpb24gPSB7IHg6IGV2ZW50LnBhZ2VYLCB5OiBldmVudC5wYWdlWSB9LAoJCQlub3JtVmFsdWUgPSB0aGlzLl9ub3JtVmFsdWVGcm9tTW91c2UoIHBvc2l0aW9uICk7CgoJCXRoaXMuX3NsaWRlKCBldmVudCwgdGhpcy5faGFuZGxlSW5kZXgsIG5vcm1WYWx1ZSApOwoKCQlyZXR1cm4gZmFsc2U7Cgl9LAoKCV9tb3VzZVN0b3A6IGZ1bmN0aW9uKCBldmVudCApIHsKCQl0aGlzLl9yZW1vdmVDbGFzcyggdGhpcy5oYW5kbGVzLCBudWxsLCAidWktc3RhdGUtYWN0aXZlIiApOwoJCXRoaXMuX21vdXNlU2xpZGluZyA9IGZhbHNlOwoKCQl0aGlzLl9zdG9wKCBldmVudCwgdGhpcy5faGFuZGxlSW5kZXggKTsKCQl0aGlzLl9jaGFuZ2UoIGV2ZW50LCB0aGlzLl9oYW5kbGVJbmRleCApOwoKCQl0aGlzLl9oYW5kbGVJbmRleCA9IG51bGw7CgkJdGhpcy5fY2xpY2tPZmZzZXQgPSBudWxsOwoJCXRoaXMuX2FuaW1hdGVPZmYgPSBmYWxzZTsKCgkJcmV0dXJuIGZhbHNlOwoJfSwKCglfZGV0ZWN0T3JpZW50YXRpb246IGZ1bmN0aW9uKCkgewoJCXRoaXMub3JpZW50YXRpb24gPSAoIHRoaXMub3B0aW9ucy5vcmllbnRhdGlvbiA9PT0gInZlcnRpY2FsIiApID8gInZlcnRpY2FsIiA6ICJob3Jpem9udGFsIjsKCX0sCgoJX25vcm1WYWx1ZUZyb21Nb3VzZTogZnVuY3Rpb24oIHBvc2l0aW9uICkgewoJCXZhciBwaXhlbFRvdGFsLAoJCQlwaXhlbE1vdXNlLAoJCQlwZXJjZW50TW91c2UsCgkJCXZhbHVlVG90YWwsCgkJCXZhbHVlTW91c2U7CgoJCWlmICggdGhpcy5vcmllbnRhdGlvbiA9PT0gImhvcml6b250YWwiICkgewoJCQlwaXhlbFRvdGFsID0gdGhpcy5lbGVtZW50U2l6ZS53aWR0aDsKCQkJcGl4ZWxNb3VzZSA9IHBvc2l0aW9uLnggLSB0aGlzLmVsZW1lbnRPZmZzZXQubGVmdCAtCgkJCQkoIHRoaXMuX2NsaWNrT2Zmc2V0ID8gdGhpcy5fY2xpY2tPZmZzZXQubGVmdCA6IDAgKTsKCQl9IGVsc2UgewoJCQlwaXhlbFRvdGFsID0gdGhpcy5lbGVtZW50U2l6ZS5oZWlnaHQ7CgkJCXBpeGVsTW91c2UgPSBwb3NpdGlvbi55IC0gdGhpcy5lbGVtZW50T2Zmc2V0LnRvcCAtCgkJCQkoIHRoaXMuX2NsaWNrT2Zmc2V0ID8gdGhpcy5fY2xpY2tPZmZzZXQudG9wIDogMCApOwoJCX0KCgkJcGVyY2VudE1vdXNlID0gKCBwaXhlbE1vdXNlIC8gcGl4ZWxUb3RhbCApOwoJCWlmICggcGVyY2VudE1vdXNlID4gMSApIHsKCQkJcGVyY2VudE1vdXNlID0gMTsKCQl9CgkJaWYgKCBwZXJjZW50TW91c2UgPCAwICkgewoJCQlwZXJjZW50TW91c2UgPSAwOwoJCX0KCQlpZiAoIHRoaXMub3JpZW50YXRpb24gPT09ICJ2ZXJ0aWNhbCIgKSB7CgkJCXBlcmNlbnRNb3VzZSA9IDEgLSBwZXJjZW50TW91c2U7CgkJfQoKCQl2YWx1ZVRvdGFsID0gdGhpcy5fdmFsdWVNYXgoKSAtIHRoaXMuX3ZhbHVlTWluKCk7CgkJdmFsdWVNb3VzZSA9IHRoaXMuX3ZhbHVlTWluKCkgKyBwZXJjZW50TW91c2UgKiB2YWx1ZVRvdGFsOwoKCQlyZXR1cm4gdGhpcy5fdHJpbUFsaWduVmFsdWUoIHZhbHVlTW91c2UgKTsKCX0sCgoJX3VpSGFzaDogZnVuY3Rpb24oIGluZGV4LCB2YWx1ZSwgdmFsdWVzICkgewoJCXZhciB1aUhhc2ggPSB7CgkJCWhhbmRsZTogdGhpcy5oYW5kbGVzWyBpbmRleCBdLAoJCQloYW5kbGVJbmRleDogaW5kZXgsCgkJCXZhbHVlOiB2YWx1ZSAhPT0gdW5kZWZpbmVkID8gdmFsdWUgOiB0aGlzLnZhbHVlKCkKCQl9OwoKCQlpZiAoIHRoaXMuX2hhc011bHRpcGxlVmFsdWVzKCkgKSB7CgkJCXVpSGFzaC52YWx1ZSA9IHZhbHVlICE9PSB1bmRlZmluZWQgPyB2YWx1ZSA6IHRoaXMudmFsdWVzKCBpbmRleCApOwoJCQl1aUhhc2gudmFsdWVzID0gdmFsdWVzIHx8IHRoaXMudmFsdWVzKCk7CgkJfQoKCQlyZXR1cm4gdWlIYXNoOwoJfSwKCglfaGFzTXVsdGlwbGVWYWx1ZXM6IGZ1bmN0aW9uKCkgewoJCXJldHVybiB0aGlzLm9wdGlvbnMudmFsdWVzICYmIHRoaXMub3B0aW9ucy52YWx1ZXMubGVuZ3RoOwoJfSwKCglfc3RhcnQ6IGZ1bmN0aW9uKCBldmVudCwgaW5kZXggKSB7CgkJcmV0dXJuIHRoaXMuX3RyaWdnZXIoICJzdGFydCIsIGV2ZW50LCB0aGlzLl91aUhhc2goIGluZGV4ICkgKTsKCX0sCgoJX3NsaWRlOiBmdW5jdGlvbiggZXZlbnQsIGluZGV4LCBuZXdWYWwgKSB7CgkJdmFyIGFsbG93ZWQsIG90aGVyVmFsLAoJCQljdXJyZW50VmFsdWUgPSB0aGlzLnZhbHVlKCksCgkJCW5ld1ZhbHVlcyA9IHRoaXMudmFsdWVzKCk7CgoJCWlmICggdGhpcy5faGFzTXVsdGlwbGVWYWx1ZXMoKSApIHsKCQkJb3RoZXJWYWwgPSB0aGlzLnZhbHVlcyggaW5kZXggPyAwIDogMSApOwoJCQljdXJyZW50VmFsdWUgPSB0aGlzLnZhbHVlcyggaW5kZXggKTsKCgkJCWlmICggdGhpcy5vcHRpb25zLnZhbHVlcy5sZW5ndGggPT09IDIgJiYgdGhpcy5vcHRpb25zLnJhbmdlID09PSB0cnVlICkgewoJCQkJbmV3VmFsID0gIGluZGV4ID09PSAwID8gTWF0aC5taW4oIG90aGVyVmFsLCBuZXdWYWwgKSA6IE1hdGgubWF4KCBvdGhlclZhbCwgbmV3VmFsICk7CgkJCX0KCgkJCW5ld1ZhbHVlc1sgaW5kZXggXSA9IG5ld1ZhbDsKCQl9CgoJCWlmICggbmV3VmFsID09PSBjdXJyZW50VmFsdWUgKSB7CgkJCXJldHVybjsKCQl9CgoJCWFsbG93ZWQgPSB0aGlzLl90cmlnZ2VyKCAic2xpZGUiLCBldmVudCwgdGhpcy5fdWlIYXNoKCBpbmRleCwgbmV3VmFsLCBuZXdWYWx1ZXMgKSApOwoKCQkvLyBBIHNsaWRlIGNhbiBiZSBjYW5jZWxlZCBieSByZXR1cm5pbmcgZmFsc2UgZnJvbSB0aGUgc2xpZGUgY2FsbGJhY2sKCQlpZiAoIGFsbG93ZWQgPT09IGZhbHNlICkgewoJCQlyZXR1cm47CgkJfQoKCQlpZiAoIHRoaXMuX2hhc011bHRpcGxlVmFsdWVzKCkgKSB7CgkJCXRoaXMudmFsdWVzKCBpbmRleCwgbmV3VmFsICk7CgkJfSBlbHNlIHsKCQkJdGhpcy52YWx1ZSggbmV3VmFsICk7CgkJfQoJfSwKCglfc3RvcDogZnVuY3Rpb24oIGV2ZW50LCBpbmRleCApIHsKCQl0aGlzLl90cmlnZ2VyKCAic3RvcCIsIGV2ZW50LCB0aGlzLl91aUhhc2goIGluZGV4ICkgKTsKCX0sCgoJX2NoYW5nZTogZnVuY3Rpb24oIGV2ZW50LCBpbmRleCApIHsKCQlpZiAoICF0aGlzLl9rZXlTbGlkaW5nICYmICF0aGlzLl9tb3VzZVNsaWRpbmcgKSB7CgoJCQkvL3N0b3JlIHRoZSBsYXN0IGNoYW5nZWQgdmFsdWUgaW5kZXggZm9yIHJlZmVyZW5jZSB3aGVuIGhhbmRsZXMgb3ZlcmxhcAoJCQl0aGlzLl9sYXN0Q2hhbmdlZFZhbHVlID0gaW5kZXg7CgkJCXRoaXMuX3RyaWdnZXIoICJjaGFuZ2UiLCBldmVudCwgdGhpcy5fdWlIYXNoKCBpbmRleCApICk7CgkJfQoJfSwKCgl2YWx1ZTogZnVuY3Rpb24oIG5ld1ZhbHVlICkgewoJCWlmICggYXJndW1lbnRzLmxlbmd0aCApIHsKCQkJdGhpcy5vcHRpb25zLnZhbHVlID0gdGhpcy5fdHJpbUFsaWduVmFsdWUoIG5ld1ZhbHVlICk7CgkJCXRoaXMuX3JlZnJlc2hWYWx1ZSgpOwoJCQl0aGlzLl9jaGFuZ2UoIG51bGwsIDAgKTsKCQkJcmV0dXJuOwoJCX0KCgkJcmV0dXJuIHRoaXMuX3ZhbHVlKCk7Cgl9LAoKCXZhbHVlczogZnVuY3Rpb24oIGluZGV4LCBuZXdWYWx1ZSApIHsKCQl2YXIgdmFscywKCQkJbmV3VmFsdWVzLAoJCQlpOwoKCQlpZiAoIGFyZ3VtZW50cy5sZW5ndGggPiAxICkgewoJCQl0aGlzLm9wdGlvbnMudmFsdWVzWyBpbmRleCBdID0gdGhpcy5fdHJpbUFsaWduVmFsdWUoIG5ld1ZhbHVlICk7CgkJCXRoaXMuX3JlZnJlc2hWYWx1ZSgpOwoJCQl0aGlzLl9jaGFuZ2UoIG51bGwsIGluZGV4ICk7CgkJCXJldHVybjsKCQl9CgoJCWlmICggYXJndW1lbnRzLmxlbmd0aCApIHsKCQkJaWYgKCAkLmlzQXJyYXkoIGFyZ3VtZW50c1sgMCBdICkgKSB7CgkJCQl2YWxzID0gdGhpcy5vcHRpb25zLnZhbHVlczsKCQkJCW5ld1ZhbHVlcyA9IGFyZ3VtZW50c1sgMCBdOwoJCQkJZm9yICggaSA9IDA7IGkgPCB2YWxzLmxlbmd0aDsgaSArPSAxICkgewoJCQkJCXZhbHNbIGkgXSA9IHRoaXMuX3RyaW1BbGlnblZhbHVlKCBuZXdWYWx1ZXNbIGkgXSApOwoJCQkJCXRoaXMuX2NoYW5nZSggbnVsbCwgaSApOwoJCQkJfQoJCQkJdGhpcy5fcmVmcmVzaFZhbHVlKCk7CgkJCX0gZWxzZSB7CgkJCQlpZiAoIHRoaXMuX2hhc011bHRpcGxlVmFsdWVzKCkgKSB7CgkJCQkJcmV0dXJuIHRoaXMuX3ZhbHVlcyggaW5kZXggKTsKCQkJCX0gZWxzZSB7CgkJCQkJcmV0dXJuIHRoaXMudmFsdWUoKTsKCQkJCX0KCQkJfQoJCX0gZWxzZSB7CgkJCXJldHVybiB0aGlzLl92YWx1ZXMoKTsKCQl9Cgl9LAoKCV9zZXRPcHRpb246IGZ1bmN0aW9uKCBrZXksIHZhbHVlICkgewoJCXZhciBpLAoJCQl2YWxzTGVuZ3RoID0gMDsKCgkJaWYgKCBrZXkgPT09ICJyYW5nZSIgJiYgdGhpcy5vcHRpb25zLnJhbmdlID09PSB0cnVlICkgewoJCQlpZiAoIHZhbHVlID09PSAibWluIiApIHsKCQkJCXRoaXMub3B0aW9ucy52YWx1ZSA9IHRoaXMuX3ZhbHVlcyggMCApOwoJCQkJdGhpcy5vcHRpb25zLnZhbHVlcyA9IG51bGw7CgkJCX0gZWxzZSBpZiAoIHZhbHVlID09PSAibWF4IiApIHsKCQkJCXRoaXMub3B0aW9ucy52YWx1ZSA9IHRoaXMuX3ZhbHVlcyggdGhpcy5vcHRpb25zLnZhbHVlcy5sZW5ndGggLSAxICk7CgkJCQl0aGlzLm9wdGlvbnMudmFsdWVzID0gbnVsbDsKCQkJfQoJCX0KCgkJaWYgKCAkLmlzQXJyYXkoIHRoaXMub3B0aW9ucy52YWx1ZXMgKSApIHsKCQkJdmFsc0xlbmd0aCA9IHRoaXMub3B0aW9ucy52YWx1ZXMubGVuZ3RoOwoJCX0KCgkJdGhpcy5fc3VwZXIoIGtleSwgdmFsdWUgKTsKCgkJc3dpdGNoICgga2V5ICkgewoJCQljYXNlICJvcmllbnRhdGlvbiI6CgkJCQl0aGlzLl9kZXRlY3RPcmllbnRhdGlvbigpOwoJCQkJdGhpcy5fcmVtb3ZlQ2xhc3MoICJ1aS1zbGlkZXItaG9yaXpvbnRhbCB1aS1zbGlkZXItdmVydGljYWwiICkKCQkJCQkuX2FkZENsYXNzKCAidWktc2xpZGVyLSIgKyB0aGlzLm9yaWVudGF0aW9uICk7CgkJCQl0aGlzLl9yZWZyZXNoVmFsdWUoKTsKCQkJCWlmICggdGhpcy5vcHRpb25zLnJhbmdlICkgewoJCQkJCXRoaXMuX3JlZnJlc2hSYW5nZSggdmFsdWUgKTsKCQkJCX0KCgkJCQkvLyBSZXNldCBwb3NpdGlvbmluZyBmcm9tIHByZXZpb3VzIG9yaWVudGF0aW9uCgkJCQl0aGlzLmhhbmRsZXMuY3NzKCB2YWx1ZSA9PT0gImhvcml6b250YWwiID8gImJvdHRvbSIgOiAibGVmdCIsICIiICk7CgkJCQlicmVhazsKCQkJY2FzZSAidmFsdWUiOgoJCQkJdGhpcy5fYW5pbWF0ZU9mZiA9IHRydWU7CgkJCQl0aGlzLl9yZWZyZXNoVmFsdWUoKTsKCQkJCXRoaXMuX2NoYW5nZSggbnVsbCwgMCApOwoJCQkJdGhpcy5fYW5pbWF0ZU9mZiA9IGZhbHNlOwoJCQkJYnJlYWs7CgkJCWNhc2UgInZhbHVlcyI6CgkJCQl0aGlzLl9hbmltYXRlT2ZmID0gdHJ1ZTsKCQkJCXRoaXMuX3JlZnJlc2hWYWx1ZSgpOwoKCQkJCS8vIFN0YXJ0IGZyb20gdGhlIGxhc3QgaGFuZGxlIHRvIHByZXZlbnQgdW5yZWFjaGFibGUgaGFuZGxlcyAoIzkwNDYpCgkJCQlmb3IgKCBpID0gdmFsc0xlbmd0aCAtIDE7IGkgPj0gMDsgaS0tICkgewoJCQkJCXRoaXMuX2NoYW5nZSggbnVsbCwgaSApOwoJCQkJfQoJCQkJdGhpcy5fYW5pbWF0ZU9mZiA9IGZhbHNlOwoJCQkJYnJlYWs7CgkJCWNhc2UgInN0ZXAiOgoJCQljYXNlICJtaW4iOgoJCQljYXNlICJtYXgiOgoJCQkJdGhpcy5fYW5pbWF0ZU9mZiA9IHRydWU7CgkJCQl0aGlzLl9jYWxjdWxhdGVOZXdNYXgoKTsKCQkJCXRoaXMuX3JlZnJlc2hWYWx1ZSgpOwoJCQkJdGhpcy5fYW5pbWF0ZU9mZiA9IGZhbHNlOwoJCQkJYnJlYWs7CgkJCWNhc2UgInJhbmdlIjoKCQkJCXRoaXMuX2FuaW1hdGVPZmYgPSB0cnVlOwoJCQkJdGhpcy5fcmVmcmVzaCgpOwoJCQkJdGhpcy5fYW5pbWF0ZU9mZiA9IGZhbHNlOwoJCQkJYnJlYWs7CgkJfQoJfSwKCglfc2V0T3B0aW9uRGlzYWJsZWQ6IGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQl0aGlzLl9zdXBlciggdmFsdWUgKTsKCgkJdGhpcy5fdG9nZ2xlQ2xhc3MoIG51bGwsICJ1aS1zdGF0ZS1kaXNhYmxlZCIsICEhdmFsdWUgKTsKCX0sCgoJLy9pbnRlcm5hbCB2YWx1ZSBnZXR0ZXIKCS8vIF92YWx1ZSgpIHJldHVybnMgdmFsdWUgdHJpbW1lZCBieSBtaW4gYW5kIG1heCwgYWxpZ25lZCBieSBzdGVwCglfdmFsdWU6IGZ1bmN0aW9uKCkgewoJCXZhciB2YWwgPSB0aGlzLm9wdGlvbnMudmFsdWU7CgkJdmFsID0gdGhpcy5fdHJpbUFsaWduVmFsdWUoIHZhbCApOwoKCQlyZXR1cm4gdmFsOwoJfSwKCgkvL2ludGVybmFsIHZhbHVlcyBnZXR0ZXIKCS8vIF92YWx1ZXMoKSByZXR1cm5zIGFycmF5IG9mIHZhbHVlcyB0cmltbWVkIGJ5IG1pbiBhbmQgbWF4LCBhbGlnbmVkIGJ5IHN0ZXAKCS8vIF92YWx1ZXMoIGluZGV4ICkgcmV0dXJucyBzaW5nbGUgdmFsdWUgdHJpbW1lZCBieSBtaW4gYW5kIG1heCwgYWxpZ25lZCBieSBzdGVwCglfdmFsdWVzOiBmdW5jdGlvbiggaW5kZXggKSB7CgkJdmFyIHZhbCwKCQkJdmFscywKCQkJaTsKCgkJaWYgKCBhcmd1bWVudHMubGVuZ3RoICkgewoJCQl2YWwgPSB0aGlzLm9wdGlvbnMudmFsdWVzWyBpbmRleCBdOwoJCQl2YWwgPSB0aGlzLl90cmltQWxpZ25WYWx1ZSggdmFsICk7CgoJCQlyZXR1cm4gdmFsOwoJCX0gZWxzZSBpZiAoIHRoaXMuX2hhc011bHRpcGxlVmFsdWVzKCkgKSB7CgoJCQkvLyAuc2xpY2UoKSBjcmVhdGVzIGEgY29weSBvZiB0aGUgYXJyYXkKCQkJLy8gdGhpcyBjb3B5IGdldHMgdHJpbW1lZCBieSBtaW4gYW5kIG1heCBhbmQgdGhlbiByZXR1cm5lZAoJCQl2YWxzID0gdGhpcy5vcHRpb25zLnZhbHVlcy5zbGljZSgpOwoJCQlmb3IgKCBpID0gMDsgaSA8IHZhbHMubGVuZ3RoOyBpICs9IDEgKSB7CgkJCQl2YWxzWyBpIF0gPSB0aGlzLl90cmltQWxpZ25WYWx1ZSggdmFsc1sgaSBdICk7CgkJCX0KCgkJCXJldHVybiB2YWxzOwoJCX0gZWxzZSB7CgkJCXJldHVybiBbXTsKCQl9Cgl9LAoKCS8vIFJldHVybnMgdGhlIHN0ZXAtYWxpZ25lZCB2YWx1ZSB0aGF0IHZhbCBpcyBjbG9zZXN0IHRvLCBiZXR3ZWVuIChpbmNsdXNpdmUpIG1pbiBhbmQgbWF4CglfdHJpbUFsaWduVmFsdWU6IGZ1bmN0aW9uKCB2YWwgKSB7CgkJaWYgKCB2YWwgPD0gdGhpcy5fdmFsdWVNaW4oKSApIHsKCQkJcmV0dXJuIHRoaXMuX3ZhbHVlTWluKCk7CgkJfQoJCWlmICggdmFsID49IHRoaXMuX3ZhbHVlTWF4KCkgKSB7CgkJCXJldHVybiB0aGlzLl92YWx1ZU1heCgpOwoJCX0KCQl2YXIgc3RlcCA9ICggdGhpcy5vcHRpb25zLnN0ZXAgPiAwICkgPyB0aGlzLm9wdGlvbnMuc3RlcCA6IDEsCgkJCXZhbE1vZFN0ZXAgPSAoIHZhbCAtIHRoaXMuX3ZhbHVlTWluKCkgKSAlIHN0ZXAsCgkJCWFsaWduVmFsdWUgPSB2YWwgLSB2YWxNb2RTdGVwOwoKCQlpZiAoIE1hdGguYWJzKCB2YWxNb2RTdGVwICkgKiAyID49IHN0ZXAgKSB7CgkJCWFsaWduVmFsdWUgKz0gKCB2YWxNb2RTdGVwID4gMCApID8gc3RlcCA6ICggLXN0ZXAgKTsKCQl9CgoJCS8vIFNpbmNlIEphdmFTY3JpcHQgaGFzIHByb2JsZW1zIHdpdGggbGFyZ2UgZmxvYXRzLCByb3VuZAoJCS8vIHRoZSBmaW5hbCB2YWx1ZSB0byA1IGRpZ2l0cyBhZnRlciB0aGUgZGVjaW1hbCBwb2ludCAoc2VlICM0MTI0KQoJCXJldHVybiBwYXJzZUZsb2F0KCBhbGlnblZhbHVlLnRvRml4ZWQoIDUgKSApOwoJfSwKCglfY2FsY3VsYXRlTmV3TWF4OiBmdW5jdGlvbigpIHsKCQl2YXIgbWF4ID0gdGhpcy5vcHRpb25zLm1heCwKCQkJbWluID0gdGhpcy5fdmFsdWVNaW4oKSwKCQkJc3RlcCA9IHRoaXMub3B0aW9ucy5zdGVwLAoJCQlhYm92ZU1pbiA9IE1hdGgucm91bmQoICggbWF4IC0gbWluICkgLyBzdGVwICkgKiBzdGVwOwoJCW1heCA9IGFib3ZlTWluICsgbWluOwoJCWlmICggbWF4ID4gdGhpcy5vcHRpb25zLm1heCApIHsKCgkJCS8vSWYgbWF4IGlzIG5vdCBkaXZpc2libGUgYnkgc3RlcCwgcm91bmRpbmcgb2ZmIG1heSBpbmNyZWFzZSBpdHMgdmFsdWUKCQkJbWF4IC09IHN0ZXA7CgkJfQoJCXRoaXMubWF4ID0gcGFyc2VGbG9hdCggbWF4LnRvRml4ZWQoIHRoaXMuX3ByZWNpc2lvbigpICkgKTsKCX0sCgoJX3ByZWNpc2lvbjogZnVuY3Rpb24oKSB7CgkJdmFyIHByZWNpc2lvbiA9IHRoaXMuX3ByZWNpc2lvbk9mKCB0aGlzLm9wdGlvbnMuc3RlcCApOwoJCWlmICggdGhpcy5vcHRpb25zLm1pbiAhPT0gbnVsbCApIHsKCQkJcHJlY2lzaW9uID0gTWF0aC5tYXgoIHByZWNpc2lvbiwgdGhpcy5fcHJlY2lzaW9uT2YoIHRoaXMub3B0aW9ucy5taW4gKSApOwoJCX0KCQlyZXR1cm4gcHJlY2lzaW9uOwoJfSwKCglfcHJlY2lzaW9uT2Y6IGZ1bmN0aW9uKCBudW0gKSB7CgkJdmFyIHN0ciA9IG51bS50b1N0cmluZygpLAoJCQlkZWNpbWFsID0gc3RyLmluZGV4T2YoICIuIiApOwoJCXJldHVybiBkZWNpbWFsID09PSAtMSA/IDAgOiBzdHIubGVuZ3RoIC0gZGVjaW1hbCAtIDE7Cgl9LAoKCV92YWx1ZU1pbjogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMub3B0aW9ucy5taW47Cgl9LAoKCV92YWx1ZU1heDogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHRoaXMubWF4OwoJfSwKCglfcmVmcmVzaFJhbmdlOiBmdW5jdGlvbiggb3JpZW50YXRpb24gKSB7CgkJaWYgKCBvcmllbnRhdGlvbiA9PT0gInZlcnRpY2FsIiApIHsKCQkJdGhpcy5yYW5nZS5jc3MoIHsgIndpZHRoIjogIiIsICJsZWZ0IjogIiIgfSApOwoJCX0KCQlpZiAoIG9yaWVudGF0aW9uID09PSAiaG9yaXpvbnRhbCIgKSB7CgkJCXRoaXMucmFuZ2UuY3NzKCB7ICJoZWlnaHQiOiAiIiwgImJvdHRvbSI6ICIiIH0gKTsKCQl9Cgl9LAoKCV9yZWZyZXNoVmFsdWU6IGZ1bmN0aW9uKCkgewoJCXZhciBsYXN0VmFsUGVyY2VudCwgdmFsUGVyY2VudCwgdmFsdWUsIHZhbHVlTWluLCB2YWx1ZU1heCwKCQkJb1JhbmdlID0gdGhpcy5vcHRpb25zLnJhbmdlLAoJCQlvID0gdGhpcy5vcHRpb25zLAoJCQl0aGF0ID0gdGhpcywKCQkJYW5pbWF0ZSA9ICggIXRoaXMuX2FuaW1hdGVPZmYgKSA/IG8uYW5pbWF0ZSA6IGZhbHNlLAoJCQlfc2V0ID0ge307CgoJCWlmICggdGhpcy5faGFzTXVsdGlwbGVWYWx1ZXMoKSApIHsKCQkJdGhpcy5oYW5kbGVzLmVhY2goIGZ1bmN0aW9uKCBpICkgewoJCQkJdmFsUGVyY2VudCA9ICggdGhhdC52YWx1ZXMoIGkgKSAtIHRoYXQuX3ZhbHVlTWluKCkgKSAvICggdGhhdC5fdmFsdWVNYXgoKSAtCgkJCQkJdGhhdC5fdmFsdWVNaW4oKSApICogMTAwOwoJCQkJX3NldFsgdGhhdC5vcmllbnRhdGlvbiA9PT0gImhvcml6b250YWwiID8gImxlZnQiIDogImJvdHRvbSIgXSA9IHZhbFBlcmNlbnQgKyAiJSI7CgkJCQkkKCB0aGlzICkuc3RvcCggMSwgMSApWyBhbmltYXRlID8gImFuaW1hdGUiIDogImNzcyIgXSggX3NldCwgby5hbmltYXRlICk7CgkJCQlpZiAoIHRoYXQub3B0aW9ucy5yYW5nZSA9PT0gdHJ1ZSApIHsKCQkJCQlpZiAoIHRoYXQub3JpZW50YXRpb24gPT09ICJob3Jpem9udGFsIiApIHsKCQkJCQkJaWYgKCBpID09PSAwICkgewoJCQkJCQkJdGhhdC5yYW5nZS5zdG9wKCAxLCAxIClbIGFuaW1hdGUgPyAiYW5pbWF0ZSIgOiAiY3NzIiBdKCB7CgkJCQkJCQkJbGVmdDogdmFsUGVyY2VudCArICIlIgoJCQkJCQkJfSwgby5hbmltYXRlICk7CgkJCQkJCX0KCQkJCQkJaWYgKCBpID09PSAxICkgewoJCQkJCQkJdGhhdC5yYW5nZVsgYW5pbWF0ZSA/ICJhbmltYXRlIiA6ICJjc3MiIF0oIHsKCQkJCQkJCQl3aWR0aDogKCB2YWxQZXJjZW50IC0gbGFzdFZhbFBlcmNlbnQgKSArICIlIgoJCQkJCQkJfSwgewoJCQkJCQkJCXF1ZXVlOiBmYWxzZSwKCQkJCQkJCQlkdXJhdGlvbjogby5hbmltYXRlCgkJCQkJCQl9ICk7CgkJCQkJCX0KCQkJCQl9IGVsc2UgewoJCQkJCQlpZiAoIGkgPT09IDAgKSB7CgkJCQkJCQl0aGF0LnJhbmdlLnN0b3AoIDEsIDEgKVsgYW5pbWF0ZSA/ICJhbmltYXRlIiA6ICJjc3MiIF0oIHsKCQkJCQkJCQlib3R0b206ICggdmFsUGVyY2VudCApICsgIiUiCgkJCQkJCQl9LCBvLmFuaW1hdGUgKTsKCQkJCQkJfQoJCQkJCQlpZiAoIGkgPT09IDEgKSB7CgkJCQkJCQl0aGF0LnJhbmdlWyBhbmltYXRlID8gImFuaW1hdGUiIDogImNzcyIgXSggewoJCQkJCQkJCWhlaWdodDogKCB2YWxQZXJjZW50IC0gbGFzdFZhbFBlcmNlbnQgKSArICIlIgoJCQkJCQkJfSwgewoJCQkJCQkJCXF1ZXVlOiBmYWxzZSwKCQkJCQkJCQlkdXJhdGlvbjogby5hbmltYXRlCgkJCQkJCQl9ICk7CgkJCQkJCX0KCQkJCQl9CgkJCQl9CgkJCQlsYXN0VmFsUGVyY2VudCA9IHZhbFBlcmNlbnQ7CgkJCX0gKTsKCQl9IGVsc2UgewoJCQl2YWx1ZSA9IHRoaXMudmFsdWUoKTsKCQkJdmFsdWVNaW4gPSB0aGlzLl92YWx1ZU1pbigpOwoJCQl2YWx1ZU1heCA9IHRoaXMuX3ZhbHVlTWF4KCk7CgkJCXZhbFBlcmNlbnQgPSAoIHZhbHVlTWF4ICE9PSB2YWx1ZU1pbiApID8KCQkJCQkoIHZhbHVlIC0gdmFsdWVNaW4gKSAvICggdmFsdWVNYXggLSB2YWx1ZU1pbiApICogMTAwIDoKCQkJCQkwOwoJCQlfc2V0WyB0aGlzLm9yaWVudGF0aW9uID09PSAiaG9yaXpvbnRhbCIgPyAibGVmdCIgOiAiYm90dG9tIiBdID0gdmFsUGVyY2VudCArICIlIjsKCQkJdGhpcy5oYW5kbGUuc3RvcCggMSwgMSApWyBhbmltYXRlID8gImFuaW1hdGUiIDogImNzcyIgXSggX3NldCwgby5hbmltYXRlICk7CgoJCQlpZiAoIG9SYW5nZSA9PT0gIm1pbiIgJiYgdGhpcy5vcmllbnRhdGlvbiA9PT0gImhvcml6b250YWwiICkgewoJCQkJdGhpcy5yYW5nZS5zdG9wKCAxLCAxIClbIGFuaW1hdGUgPyAiYW5pbWF0ZSIgOiAiY3NzIiBdKCB7CgkJCQkJd2lkdGg6IHZhbFBlcmNlbnQgKyAiJSIKCQkJCX0sIG8uYW5pbWF0ZSApOwoJCQl9CgkJCWlmICggb1JhbmdlID09PSAibWF4IiAmJiB0aGlzLm9yaWVudGF0aW9uID09PSAiaG9yaXpvbnRhbCIgKSB7CgkJCQl0aGlzLnJhbmdlLnN0b3AoIDEsIDEgKVsgYW5pbWF0ZSA/ICJhbmltYXRlIiA6ICJjc3MiIF0oIHsKCQkJCQl3aWR0aDogKCAxMDAgLSB2YWxQZXJjZW50ICkgKyAiJSIKCQkJCX0sIG8uYW5pbWF0ZSApOwoJCQl9CgkJCWlmICggb1JhbmdlID09PSAibWluIiAmJiB0aGlzLm9yaWVudGF0aW9uID09PSAidmVydGljYWwiICkgewoJCQkJdGhpcy5yYW5nZS5zdG9wKCAxLCAxIClbIGFuaW1hdGUgPyAiYW5pbWF0ZSIgOiAiY3NzIiBdKCB7CgkJCQkJaGVpZ2h0OiB2YWxQZXJjZW50ICsgIiUiCgkJCQl9LCBvLmFuaW1hdGUgKTsKCQkJfQoJCQlpZiAoIG9SYW5nZSA9PT0gIm1heCIgJiYgdGhpcy5vcmllbnRhdGlvbiA9PT0gInZlcnRpY2FsIiApIHsKCQkJCXRoaXMucmFuZ2Uuc3RvcCggMSwgMSApWyBhbmltYXRlID8gImFuaW1hdGUiIDogImNzcyIgXSggewoJCQkJCWhlaWdodDogKCAxMDAgLSB2YWxQZXJjZW50ICkgKyAiJSIKCQkJCX0sIG8uYW5pbWF0ZSApOwoJCQl9CgkJfQoJfSwKCglfaGFuZGxlRXZlbnRzOiB7CgkJa2V5ZG93bjogZnVuY3Rpb24oIGV2ZW50ICkgewoJCQl2YXIgYWxsb3dlZCwgY3VyVmFsLCBuZXdWYWwsIHN0ZXAsCgkJCQlpbmRleCA9ICQoIGV2ZW50LnRhcmdldCApLmRhdGEoICJ1aS1zbGlkZXItaGFuZGxlLWluZGV4IiApOwoKCQkJc3dpdGNoICggZXZlbnQua2V5Q29kZSApIHsKCQkJCWNhc2UgJC51aS5rZXlDb2RlLkhPTUU6CgkJCQljYXNlICQudWkua2V5Q29kZS5FTkQ6CgkJCQljYXNlICQudWkua2V5Q29kZS5QQUdFX1VQOgoJCQkJY2FzZSAkLnVpLmtleUNvZGUuUEFHRV9ET1dOOgoJCQkJY2FzZSAkLnVpLmtleUNvZGUuVVA6CgkJCQljYXNlICQudWkua2V5Q29kZS5SSUdIVDoKCQkJCWNhc2UgJC51aS5rZXlDb2RlLkRPV046CgkJCQljYXNlICQudWkua2V5Q29kZS5MRUZUOgoJCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCQkJaWYgKCAhdGhpcy5fa2V5U2xpZGluZyApIHsKCQkJCQkJdGhpcy5fa2V5U2xpZGluZyA9IHRydWU7CgkJCQkJCXRoaXMuX2FkZENsYXNzKCAkKCBldmVudC50YXJnZXQgKSwgbnVsbCwgInVpLXN0YXRlLWFjdGl2ZSIgKTsKCQkJCQkJYWxsb3dlZCA9IHRoaXMuX3N0YXJ0KCBldmVudCwgaW5kZXggKTsKCQkJCQkJaWYgKCBhbGxvd2VkID09PSBmYWxzZSApIHsKCQkJCQkJCXJldHVybjsKCQkJCQkJfQoJCQkJCX0KCQkJCQlicmVhazsKCQkJfQoKCQkJc3RlcCA9IHRoaXMub3B0aW9ucy5zdGVwOwoJCQlpZiAoIHRoaXMuX2hhc011bHRpcGxlVmFsdWVzKCkgKSB7CgkJCQljdXJWYWwgPSBuZXdWYWwgPSB0aGlzLnZhbHVlcyggaW5kZXggKTsKCQkJfSBlbHNlIHsKCQkJCWN1clZhbCA9IG5ld1ZhbCA9IHRoaXMudmFsdWUoKTsKCQkJfQoKCQkJc3dpdGNoICggZXZlbnQua2V5Q29kZSApIHsKCQkJCWNhc2UgJC51aS5rZXlDb2RlLkhPTUU6CgkJCQkJbmV3VmFsID0gdGhpcy5fdmFsdWVNaW4oKTsKCQkJCQlicmVhazsKCQkJCWNhc2UgJC51aS5rZXlDb2RlLkVORDoKCQkJCQluZXdWYWwgPSB0aGlzLl92YWx1ZU1heCgpOwoJCQkJCWJyZWFrOwoJCQkJY2FzZSAkLnVpLmtleUNvZGUuUEFHRV9VUDoKCQkJCQluZXdWYWwgPSB0aGlzLl90cmltQWxpZ25WYWx1ZSgKCQkJCQkJY3VyVmFsICsgKCAoIHRoaXMuX3ZhbHVlTWF4KCkgLSB0aGlzLl92YWx1ZU1pbigpICkgLyB0aGlzLm51bVBhZ2VzICkKCQkJCQkpOwoJCQkJCWJyZWFrOwoJCQkJY2FzZSAkLnVpLmtleUNvZGUuUEFHRV9ET1dOOgoJCQkJCW5ld1ZhbCA9IHRoaXMuX3RyaW1BbGlnblZhbHVlKAoJCQkJCQljdXJWYWwgLSAoICggdGhpcy5fdmFsdWVNYXgoKSAtIHRoaXMuX3ZhbHVlTWluKCkgKSAvIHRoaXMubnVtUGFnZXMgKSApOwoJCQkJCWJyZWFrOwoJCQkJY2FzZSAkLnVpLmtleUNvZGUuVVA6CgkJCQljYXNlICQudWkua2V5Q29kZS5SSUdIVDoKCQkJCQlpZiAoIGN1clZhbCA9PT0gdGhpcy5fdmFsdWVNYXgoKSApIHsKCQkJCQkJcmV0dXJuOwoJCQkJCX0KCQkJCQluZXdWYWwgPSB0aGlzLl90cmltQWxpZ25WYWx1ZSggY3VyVmFsICsgc3RlcCApOwoJCQkJCWJyZWFrOwoJCQkJY2FzZSAkLnVpLmtleUNvZGUuRE9XTjoKCQkJCWNhc2UgJC51aS5rZXlDb2RlLkxFRlQ6CgkJCQkJaWYgKCBjdXJWYWwgPT09IHRoaXMuX3ZhbHVlTWluKCkgKSB7CgkJCQkJCXJldHVybjsKCQkJCQl9CgkJCQkJbmV3VmFsID0gdGhpcy5fdHJpbUFsaWduVmFsdWUoIGN1clZhbCAtIHN0ZXAgKTsKCQkJCQlicmVhazsKCQkJfQoKCQkJdGhpcy5fc2xpZGUoIGV2ZW50LCBpbmRleCwgbmV3VmFsICk7CgkJfSwKCQlrZXl1cDogZnVuY3Rpb24oIGV2ZW50ICkgewoJCQl2YXIgaW5kZXggPSAkKCBldmVudC50YXJnZXQgKS5kYXRhKCAidWktc2xpZGVyLWhhbmRsZS1pbmRleCIgKTsKCgkJCWlmICggdGhpcy5fa2V5U2xpZGluZyApIHsKCQkJCXRoaXMuX2tleVNsaWRpbmcgPSBmYWxzZTsKCQkJCXRoaXMuX3N0b3AoIGV2ZW50LCBpbmRleCApOwoJCQkJdGhpcy5fY2hhbmdlKCBldmVudCwgaW5kZXggKTsKCQkJCXRoaXMuX3JlbW92ZUNsYXNzKCAkKCBldmVudC50YXJnZXQgKSwgbnVsbCwgInVpLXN0YXRlLWFjdGl2ZSIgKTsKCQkJfQoJCX0KCX0KfSApOwoKCi8qIQogKiBqUXVlcnkgVUkgU3Bpbm5lciAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IFNwaW5uZXIKLy8+Pmdyb3VwOiBXaWRnZXRzCi8vPj5kZXNjcmlwdGlvbjogRGlzcGxheXMgYnV0dG9ucyB0byBlYXNpbHkgaW5wdXQgbnVtYmVycyB2aWEgdGhlIGtleWJvYXJkIG9yIG1vdXNlLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vc3Bpbm5lci8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL3NwaW5uZXIvCi8vPj5jc3Muc3RydWN0dXJlOiAuLi8uLi90aGVtZXMvYmFzZS9jb3JlLmNzcwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2Uvc3Bpbm5lci5jc3MKLy8+PmNzcy50aGVtZTogLi4vLi4vdGhlbWVzL2Jhc2UvdGhlbWUuY3NzCgoKCmZ1bmN0aW9uIHNwaW5uZXJNb2RpZmVyKCBmbiApIHsKCXJldHVybiBmdW5jdGlvbigpIHsKCQl2YXIgcHJldmlvdXMgPSB0aGlzLmVsZW1lbnQudmFsKCk7CgkJZm4uYXBwbHkoIHRoaXMsIGFyZ3VtZW50cyApOwoJCXRoaXMuX3JlZnJlc2goKTsKCQlpZiAoIHByZXZpb3VzICE9PSB0aGlzLmVsZW1lbnQudmFsKCkgKSB7CgkJCXRoaXMuX3RyaWdnZXIoICJjaGFuZ2UiICk7CgkJfQoJfTsKfQoKJC53aWRnZXQoICJ1aS5zcGlubmVyIiwgewoJdmVyc2lvbjogIjEuMTIuMSIsCglkZWZhdWx0RWxlbWVudDogIjxpbnB1dD4iLAoJd2lkZ2V0RXZlbnRQcmVmaXg6ICJzcGluIiwKCW9wdGlvbnM6IHsKCQljbGFzc2VzOiB7CgkJCSJ1aS1zcGlubmVyIjogInVpLWNvcm5lci1hbGwiLAoJCQkidWktc3Bpbm5lci1kb3duIjogInVpLWNvcm5lci1iciIsCgkJCSJ1aS1zcGlubmVyLXVwIjogInVpLWNvcm5lci10ciIKCQl9LAoJCWN1bHR1cmU6IG51bGwsCgkJaWNvbnM6IHsKCQkJZG93bjogInVpLWljb24tdHJpYW5nbGUtMS1zIiwKCQkJdXA6ICJ1aS1pY29uLXRyaWFuZ2xlLTEtbiIKCQl9LAoJCWluY3JlbWVudGFsOiB0cnVlLAoJCW1heDogbnVsbCwKCQltaW46IG51bGwsCgkJbnVtYmVyRm9ybWF0OiBudWxsLAoJCXBhZ2U6IDEwLAoJCXN0ZXA6IDEsCgoJCWNoYW5nZTogbnVsbCwKCQlzcGluOiBudWxsLAoJCXN0YXJ0OiBudWxsLAoJCXN0b3A6IG51bGwKCX0sCgoJX2NyZWF0ZTogZnVuY3Rpb24oKSB7CgoJCS8vIGhhbmRsZSBzdHJpbmcgdmFsdWVzIHRoYXQgbmVlZCB0byBiZSBwYXJzZWQKCQl0aGlzLl9zZXRPcHRpb24oICJtYXgiLCB0aGlzLm9wdGlvbnMubWF4ICk7CgkJdGhpcy5fc2V0T3B0aW9uKCAibWluIiwgdGhpcy5vcHRpb25zLm1pbiApOwoJCXRoaXMuX3NldE9wdGlvbiggInN0ZXAiLCB0aGlzLm9wdGlvbnMuc3RlcCApOwoKCQkvLyBPbmx5IGZvcm1hdCBpZiB0aGVyZSBpcyBhIHZhbHVlLCBwcmV2ZW50cyB0aGUgZmllbGQgZnJvbSBiZWluZyBtYXJrZWQKCQkvLyBhcyBpbnZhbGlkIGluIEZpcmVmb3gsIHNlZSAjOTU3My4KCQlpZiAoIHRoaXMudmFsdWUoKSAhPT0gIiIgKSB7CgoJCQkvLyBGb3JtYXQgdGhlIHZhbHVlLCBidXQgZG9uJ3QgY29uc3RyYWluLgoJCQl0aGlzLl92YWx1ZSggdGhpcy5lbGVtZW50LnZhbCgpLCB0cnVlICk7CgkJfQoKCQl0aGlzLl9kcmF3KCk7CgkJdGhpcy5fb24oIHRoaXMuX2V2ZW50cyApOwoJCXRoaXMuX3JlZnJlc2goKTsKCgkJLy8gVHVybmluZyBvZmYgYXV0b2NvbXBsZXRlIHByZXZlbnRzIHRoZSBicm93c2VyIGZyb20gcmVtZW1iZXJpbmcgdGhlCgkJLy8gdmFsdWUgd2hlbiBuYXZpZ2F0aW5nIHRocm91Z2ggaGlzdG9yeSwgc28gd2UgcmUtZW5hYmxlIGF1dG9jb21wbGV0ZQoJCS8vIGlmIHRoZSBwYWdlIGlzIHVubG9hZGVkIGJlZm9yZSB0aGUgd2lkZ2V0IGlzIGRlc3Ryb3llZC4gIzc3OTAKCQl0aGlzLl9vbiggdGhpcy53aW5kb3csIHsKCQkJYmVmb3JldW5sb2FkOiBmdW5jdGlvbigpIHsKCQkJCXRoaXMuZWxlbWVudC5yZW1vdmVBdHRyKCAiYXV0b2NvbXBsZXRlIiApOwoJCQl9CgkJfSApOwoJfSwKCglfZ2V0Q3JlYXRlT3B0aW9uczogZnVuY3Rpb24oKSB7CgkJdmFyIG9wdGlvbnMgPSB0aGlzLl9zdXBlcigpOwoJCXZhciBlbGVtZW50ID0gdGhpcy5lbGVtZW50OwoKCQkkLmVhY2goIFsgIm1pbiIsICJtYXgiLCAic3RlcCIgXSwgZnVuY3Rpb24oIGksIG9wdGlvbiApIHsKCQkJdmFyIHZhbHVlID0gZWxlbWVudC5hdHRyKCBvcHRpb24gKTsKCQkJaWYgKCB2YWx1ZSAhPSBudWxsICYmIHZhbHVlLmxlbmd0aCApIHsKCQkJCW9wdGlvbnNbIG9wdGlvbiBdID0gdmFsdWU7CgkJCX0KCQl9ICk7CgoJCXJldHVybiBvcHRpb25zOwoJfSwKCglfZXZlbnRzOiB7CgkJa2V5ZG93bjogZnVuY3Rpb24oIGV2ZW50ICkgewoJCQlpZiAoIHRoaXMuX3N0YXJ0KCBldmVudCApICYmIHRoaXMuX2tleWRvd24oIGV2ZW50ICkgKSB7CgkJCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOwoJCQl9CgkJfSwKCQlrZXl1cDogIl9zdG9wIiwKCQlmb2N1czogZnVuY3Rpb24oKSB7CgkJCXRoaXMucHJldmlvdXMgPSB0aGlzLmVsZW1lbnQudmFsKCk7CgkJfSwKCQlibHVyOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJCWlmICggdGhpcy5jYW5jZWxCbHVyICkgewoJCQkJZGVsZXRlIHRoaXMuY2FuY2VsQmx1cjsKCQkJCXJldHVybjsKCQkJfQoKCQkJdGhpcy5fc3RvcCgpOwoJCQl0aGlzLl9yZWZyZXNoKCk7CgkJCWlmICggdGhpcy5wcmV2aW91cyAhPT0gdGhpcy5lbGVtZW50LnZhbCgpICkgewoJCQkJdGhpcy5fdHJpZ2dlciggImNoYW5nZSIsIGV2ZW50ICk7CgkJCX0KCQl9LAoJCW1vdXNld2hlZWw6IGZ1bmN0aW9uKCBldmVudCwgZGVsdGEgKSB7CgkJCWlmICggIWRlbHRhICkgewoJCQkJcmV0dXJuOwoJCQl9CgkJCWlmICggIXRoaXMuc3Bpbm5pbmcgJiYgIXRoaXMuX3N0YXJ0KCBldmVudCApICkgewoJCQkJcmV0dXJuIGZhbHNlOwoJCQl9CgoJCQl0aGlzLl9zcGluKCAoIGRlbHRhID4gMCA/IDEgOiAtMSApICogdGhpcy5vcHRpb25zLnN0ZXAsIGV2ZW50ICk7CgkJCWNsZWFyVGltZW91dCggdGhpcy5tb3VzZXdoZWVsVGltZXIgKTsKCQkJdGhpcy5tb3VzZXdoZWVsVGltZXIgPSB0aGlzLl9kZWxheSggZnVuY3Rpb24oKSB7CgkJCQlpZiAoIHRoaXMuc3Bpbm5pbmcgKSB7CgkJCQkJdGhpcy5fc3RvcCggZXZlbnQgKTsKCQkJCX0KCQkJfSwgMTAwICk7CgkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJfSwKCQkibW91c2Vkb3duIC51aS1zcGlubmVyLWJ1dHRvbiI6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJdmFyIHByZXZpb3VzOwoKCQkJLy8gV2UgbmV2ZXIgd2FudCB0aGUgYnV0dG9ucyB0byBoYXZlIGZvY3VzOyB3aGVuZXZlciB0aGUgdXNlciBpcwoJCQkvLyBpbnRlcmFjdGluZyB3aXRoIHRoZSBzcGlubmVyLCB0aGUgZm9jdXMgc2hvdWxkIGJlIG9uIHRoZSBpbnB1dC4KCQkJLy8gSWYgdGhlIGlucHV0IGlzIGZvY3VzZWQgdGhlbiB0aGlzLnByZXZpb3VzIGlzIHByb3Blcmx5IHNldCBmcm9tCgkJCS8vIHdoZW4gdGhlIGlucHV0IGZpcnN0IHJlY2VpdmVkIGZvY3VzLiBJZiB0aGUgaW5wdXQgaXMgbm90IGZvY3VzZWQKCQkJLy8gdGhlbiB3ZSBuZWVkIHRvIHNldCB0aGlzLnByZXZpb3VzIGJhc2VkIG9uIHRoZSB2YWx1ZSBiZWZvcmUgc3Bpbm5pbmcuCgkJCXByZXZpb3VzID0gdGhpcy5lbGVtZW50WyAwIF0gPT09ICQudWkuc2FmZUFjdGl2ZUVsZW1lbnQoIHRoaXMuZG9jdW1lbnRbIDAgXSApID8KCQkJCXRoaXMucHJldmlvdXMgOiB0aGlzLmVsZW1lbnQudmFsKCk7CgkJCWZ1bmN0aW9uIGNoZWNrRm9jdXMoKSB7CgkJCQl2YXIgaXNBY3RpdmUgPSB0aGlzLmVsZW1lbnRbIDAgXSA9PT0gJC51aS5zYWZlQWN0aXZlRWxlbWVudCggdGhpcy5kb2N1bWVudFsgMCBdICk7CgkJCQlpZiAoICFpc0FjdGl2ZSApIHsKCQkJCQl0aGlzLmVsZW1lbnQudHJpZ2dlciggImZvY3VzIiApOwoJCQkJCXRoaXMucHJldmlvdXMgPSBwcmV2aW91czsKCgkJCQkJLy8gc3VwcG9ydDogSUUKCQkJCQkvLyBJRSBzZXRzIGZvY3VzIGFzeW5jaHJvbm91c2x5LCBzbyB3ZSBuZWVkIHRvIGNoZWNrIGlmIGZvY3VzCgkJCQkJLy8gbW92ZWQgb2ZmIG9mIHRoZSBpbnB1dCBiZWNhdXNlIHRoZSB1c2VyIGNsaWNrZWQgb24gdGhlIGJ1dHRvbi4KCQkJCQl0aGlzLl9kZWxheSggZnVuY3Rpb24oKSB7CgkJCQkJCXRoaXMucHJldmlvdXMgPSBwcmV2aW91czsKCQkJCQl9ICk7CgkJCQl9CgkJCX0KCgkJCS8vIEVuc3VyZSBmb2N1cyBpcyBvbiAob3Igc3RheXMgb24pIHRoZSB0ZXh0IGZpZWxkCgkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCWNoZWNrRm9jdXMuY2FsbCggdGhpcyApOwoKCQkJLy8gU3VwcG9ydDogSUUKCQkJLy8gSUUgZG9lc24ndCBwcmV2ZW50IG1vdmluZyBmb2N1cyBldmVuIHdpdGggZXZlbnQucHJldmVudERlZmF1bHQoKQoJCQkvLyBzbyB3ZSBzZXQgYSBmbGFnIHRvIGtub3cgd2hlbiB3ZSBzaG91bGQgaWdub3JlIHRoZSBibHVyIGV2ZW50CgkJCS8vIGFuZCBjaGVjayAoYWdhaW4pIGlmIGZvY3VzIG1vdmVkIG9mZiBvZiB0aGUgaW5wdXQuCgkJCXRoaXMuY2FuY2VsQmx1ciA9IHRydWU7CgkJCXRoaXMuX2RlbGF5KCBmdW5jdGlvbigpIHsKCQkJCWRlbGV0ZSB0aGlzLmNhbmNlbEJsdXI7CgkJCQljaGVja0ZvY3VzLmNhbGwoIHRoaXMgKTsKCQkJfSApOwoKCQkJaWYgKCB0aGlzLl9zdGFydCggZXZlbnQgKSA9PT0gZmFsc2UgKSB7CgkJCQlyZXR1cm47CgkJCX0KCgkJCXRoaXMuX3JlcGVhdCggbnVsbCwgJCggZXZlbnQuY3VycmVudFRhcmdldCApCgkJCQkuaGFzQ2xhc3MoICJ1aS1zcGlubmVyLXVwIiApID8gMSA6IC0xLCBldmVudCApOwoJCX0sCgkJIm1vdXNldXAgLnVpLXNwaW5uZXItYnV0dG9uIjogIl9zdG9wIiwKCQkibW91c2VlbnRlciAudWktc3Bpbm5lci1idXR0b24iOiBmdW5jdGlvbiggZXZlbnQgKSB7CgoJCQkvLyBidXR0b24gd2lsbCBhZGQgdWktc3RhdGUtYWN0aXZlIGlmIG1vdXNlIHdhcyBkb3duIHdoaWxlIG1vdXNlbGVhdmUgYW5kIGtlcHQgZG93bgoJCQlpZiAoICEkKCBldmVudC5jdXJyZW50VGFyZ2V0ICkuaGFzQ2xhc3MoICJ1aS1zdGF0ZS1hY3RpdmUiICkgKSB7CgkJCQlyZXR1cm47CgkJCX0KCgkJCWlmICggdGhpcy5fc3RhcnQoIGV2ZW50ICkgPT09IGZhbHNlICkgewoJCQkJcmV0dXJuIGZhbHNlOwoJCQl9CgkJCXRoaXMuX3JlcGVhdCggbnVsbCwgJCggZXZlbnQuY3VycmVudFRhcmdldCApCgkJCQkuaGFzQ2xhc3MoICJ1aS1zcGlubmVyLXVwIiApID8gMSA6IC0xLCBldmVudCApOwoJCX0sCgoJCS8vIFRPRE86IGRvIHdlIHJlYWxseSB3YW50IHRvIGNvbnNpZGVyIHRoaXMgYSBzdG9wPwoJCS8vIHNob3VsZG4ndCB3ZSBqdXN0IHN0b3AgdGhlIHJlcGVhdGVyIGFuZCB3YWl0IHVudGlsIG1vdXNldXAgYmVmb3JlCgkJLy8gd2UgdHJpZ2dlciB0aGUgc3RvcCBldmVudD8KCQkibW91c2VsZWF2ZSAudWktc3Bpbm5lci1idXR0b24iOiAiX3N0b3AiCgl9LAoKCS8vIFN1cHBvcnQgbW9iaWxlIGVuaGFuY2VkIG9wdGlvbiBhbmQgbWFrZSBiYWNrY29tcGF0IG1vcmUgc2FuZQoJX2VuaGFuY2U6IGZ1bmN0aW9uKCkgewoJCXRoaXMudWlTcGlubmVyID0gdGhpcy5lbGVtZW50CgkJCS5hdHRyKCAiYXV0b2NvbXBsZXRlIiwgIm9mZiIgKQoJCQkud3JhcCggIjxzcGFuPiIgKQoJCQkucGFyZW50KCkKCgkJCQkvLyBBZGQgYnV0dG9ucwoJCQkJLmFwcGVuZCgKCQkJCQkiPGE+PC9hPjxhPjwvYT4iCgkJCQkpOwoJfSwKCglfZHJhdzogZnVuY3Rpb24oKSB7CgkJdGhpcy5fZW5oYW5jZSgpOwoKCQl0aGlzLl9hZGRDbGFzcyggdGhpcy51aVNwaW5uZXIsICJ1aS1zcGlubmVyIiwgInVpLXdpZGdldCB1aS13aWRnZXQtY29udGVudCIgKTsKCQl0aGlzLl9hZGRDbGFzcyggInVpLXNwaW5uZXItaW5wdXQiICk7CgoJCXRoaXMuZWxlbWVudC5hdHRyKCAicm9sZSIsICJzcGluYnV0dG9uIiApOwoKCQkvLyBCdXR0b24gYmluZGluZ3MKCQl0aGlzLmJ1dHRvbnMgPSB0aGlzLnVpU3Bpbm5lci5jaGlsZHJlbiggImEiICkKCQkJLmF0dHIoICJ0YWJJbmRleCIsIC0xICkKCQkJLmF0dHIoICJhcmlhLWhpZGRlbiIsIHRydWUgKQoJCQkuYnV0dG9uKCB7CgkJCQljbGFzc2VzOiB7CgkJCQkJInVpLWJ1dHRvbiI6ICIiCgkJCQl9CgkJCX0gKTsKCgkJLy8gVE9ETzogUmlnaHQgbm93IGJ1dHRvbiBkb2VzIG5vdCBzdXBwb3J0IGNsYXNzZXMgdGhpcyBpcyBhbHJlYWR5IHVwZGF0ZWQgaW4gYnV0dG9uIFBSCgkJdGhpcy5fcmVtb3ZlQ2xhc3MoIHRoaXMuYnV0dG9ucywgInVpLWNvcm5lci1hbGwiICk7CgoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLmJ1dHRvbnMuZmlyc3QoKSwgInVpLXNwaW5uZXItYnV0dG9uIHVpLXNwaW5uZXItdXAiICk7CgkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMuYnV0dG9ucy5sYXN0KCksICJ1aS1zcGlubmVyLWJ1dHRvbiB1aS1zcGlubmVyLWRvd24iICk7CgkJdGhpcy5idXR0b25zLmZpcnN0KCkuYnV0dG9uKCB7CgkJCSJpY29uIjogdGhpcy5vcHRpb25zLmljb25zLnVwLAoJCQkic2hvd0xhYmVsIjogZmFsc2UKCQl9ICk7CgkJdGhpcy5idXR0b25zLmxhc3QoKS5idXR0b24oIHsKCQkJImljb24iOiB0aGlzLm9wdGlvbnMuaWNvbnMuZG93biwKCQkJInNob3dMYWJlbCI6IGZhbHNlCgkJfSApOwoKCQkvLyBJRSA2IGRvZXNuJ3QgdW5kZXJzdGFuZCBoZWlnaHQ6IDUwJSBmb3IgdGhlIGJ1dHRvbnMKCQkvLyB1bmxlc3MgdGhlIHdyYXBwZXIgaGFzIGFuIGV4cGxpY2l0IGhlaWdodAoJCWlmICggdGhpcy5idXR0b25zLmhlaWdodCgpID4gTWF0aC5jZWlsKCB0aGlzLnVpU3Bpbm5lci5oZWlnaHQoKSAqIDAuNSApICYmCgkJCQl0aGlzLnVpU3Bpbm5lci5oZWlnaHQoKSA+IDAgKSB7CgkJCXRoaXMudWlTcGlubmVyLmhlaWdodCggdGhpcy51aVNwaW5uZXIuaGVpZ2h0KCkgKTsKCQl9Cgl9LAoKCV9rZXlkb3duOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdmFyIG9wdGlvbnMgPSB0aGlzLm9wdGlvbnMsCgkJCWtleUNvZGUgPSAkLnVpLmtleUNvZGU7CgoJCXN3aXRjaCAoIGV2ZW50LmtleUNvZGUgKSB7CgkJY2FzZSBrZXlDb2RlLlVQOgoJCQl0aGlzLl9yZXBlYXQoIG51bGwsIDEsIGV2ZW50ICk7CgkJCXJldHVybiB0cnVlOwoJCWNhc2Uga2V5Q29kZS5ET1dOOgoJCQl0aGlzLl9yZXBlYXQoIG51bGwsIC0xLCBldmVudCApOwoJCQlyZXR1cm4gdHJ1ZTsKCQljYXNlIGtleUNvZGUuUEFHRV9VUDoKCQkJdGhpcy5fcmVwZWF0KCBudWxsLCBvcHRpb25zLnBhZ2UsIGV2ZW50ICk7CgkJCXJldHVybiB0cnVlOwoJCWNhc2Uga2V5Q29kZS5QQUdFX0RPV046CgkJCXRoaXMuX3JlcGVhdCggbnVsbCwgLW9wdGlvbnMucGFnZSwgZXZlbnQgKTsKCQkJcmV0dXJuIHRydWU7CgkJfQoKCQlyZXR1cm4gZmFsc2U7Cgl9LAoKCV9zdGFydDogZnVuY3Rpb24oIGV2ZW50ICkgewoJCWlmICggIXRoaXMuc3Bpbm5pbmcgJiYgdGhpcy5fdHJpZ2dlciggInN0YXJ0IiwgZXZlbnQgKSA9PT0gZmFsc2UgKSB7CgkJCXJldHVybiBmYWxzZTsKCQl9CgoJCWlmICggIXRoaXMuY291bnRlciApIHsKCQkJdGhpcy5jb3VudGVyID0gMTsKCQl9CgkJdGhpcy5zcGlubmluZyA9IHRydWU7CgkJcmV0dXJuIHRydWU7Cgl9LAoKCV9yZXBlYXQ6IGZ1bmN0aW9uKCBpLCBzdGVwcywgZXZlbnQgKSB7CgkJaSA9IGkgfHwgNTAwOwoKCQljbGVhclRpbWVvdXQoIHRoaXMudGltZXIgKTsKCQl0aGlzLnRpbWVyID0gdGhpcy5fZGVsYXkoIGZ1bmN0aW9uKCkgewoJCQl0aGlzLl9yZXBlYXQoIDQwLCBzdGVwcywgZXZlbnQgKTsKCQl9LCBpICk7CgoJCXRoaXMuX3NwaW4oIHN0ZXBzICogdGhpcy5vcHRpb25zLnN0ZXAsIGV2ZW50ICk7Cgl9LAoKCV9zcGluOiBmdW5jdGlvbiggc3RlcCwgZXZlbnQgKSB7CgkJdmFyIHZhbHVlID0gdGhpcy52YWx1ZSgpIHx8IDA7CgoJCWlmICggIXRoaXMuY291bnRlciApIHsKCQkJdGhpcy5jb3VudGVyID0gMTsKCQl9CgoJCXZhbHVlID0gdGhpcy5fYWRqdXN0VmFsdWUoIHZhbHVlICsgc3RlcCAqIHRoaXMuX2luY3JlbWVudCggdGhpcy5jb3VudGVyICkgKTsKCgkJaWYgKCAhdGhpcy5zcGlubmluZyB8fCB0aGlzLl90cmlnZ2VyKCAic3BpbiIsIGV2ZW50LCB7IHZhbHVlOiB2YWx1ZSB9ICkgIT09IGZhbHNlICkgewoJCQl0aGlzLl92YWx1ZSggdmFsdWUgKTsKCQkJdGhpcy5jb3VudGVyKys7CgkJfQoJfSwKCglfaW5jcmVtZW50OiBmdW5jdGlvbiggaSApIHsKCQl2YXIgaW5jcmVtZW50YWwgPSB0aGlzLm9wdGlvbnMuaW5jcmVtZW50YWw7CgoJCWlmICggaW5jcmVtZW50YWwgKSB7CgkJCXJldHVybiAkLmlzRnVuY3Rpb24oIGluY3JlbWVudGFsICkgPwoJCQkJaW5jcmVtZW50YWwoIGkgKSA6CgkJCQlNYXRoLmZsb29yKCBpICogaSAqIGkgLyA1MDAwMCAtIGkgKiBpIC8gNTAwICsgMTcgKiBpIC8gMjAwICsgMSApOwoJCX0KCgkJcmV0dXJuIDE7Cgl9LAoKCV9wcmVjaXNpb246IGZ1bmN0aW9uKCkgewoJCXZhciBwcmVjaXNpb24gPSB0aGlzLl9wcmVjaXNpb25PZiggdGhpcy5vcHRpb25zLnN0ZXAgKTsKCQlpZiAoIHRoaXMub3B0aW9ucy5taW4gIT09IG51bGwgKSB7CgkJCXByZWNpc2lvbiA9IE1hdGgubWF4KCBwcmVjaXNpb24sIHRoaXMuX3ByZWNpc2lvbk9mKCB0aGlzLm9wdGlvbnMubWluICkgKTsKCQl9CgkJcmV0dXJuIHByZWNpc2lvbjsKCX0sCgoJX3ByZWNpc2lvbk9mOiBmdW5jdGlvbiggbnVtICkgewoJCXZhciBzdHIgPSBudW0udG9TdHJpbmcoKSwKCQkJZGVjaW1hbCA9IHN0ci5pbmRleE9mKCAiLiIgKTsKCQlyZXR1cm4gZGVjaW1hbCA9PT0gLTEgPyAwIDogc3RyLmxlbmd0aCAtIGRlY2ltYWwgLSAxOwoJfSwKCglfYWRqdXN0VmFsdWU6IGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQl2YXIgYmFzZSwgYWJvdmVNaW4sCgkJCW9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7CgoJCS8vIE1ha2Ugc3VyZSB3ZSdyZSBhdCBhIHZhbGlkIHN0ZXAKCQkvLyAtIGZpbmQgb3V0IHdoZXJlIHdlIGFyZSByZWxhdGl2ZSB0byB0aGUgYmFzZSAobWluIG9yIDApCgkJYmFzZSA9IG9wdGlvbnMubWluICE9PSBudWxsID8gb3B0aW9ucy5taW4gOiAwOwoJCWFib3ZlTWluID0gdmFsdWUgLSBiYXNlOwoKCQkvLyAtIHJvdW5kIHRvIHRoZSBuZWFyZXN0IHN0ZXAKCQlhYm92ZU1pbiA9IE1hdGgucm91bmQoIGFib3ZlTWluIC8gb3B0aW9ucy5zdGVwICkgKiBvcHRpb25zLnN0ZXA7CgoJCS8vIC0gcm91bmRpbmcgaXMgYmFzZWQgb24gMCwgc28gYWRqdXN0IGJhY2sgdG8gb3VyIGJhc2UKCQl2YWx1ZSA9IGJhc2UgKyBhYm92ZU1pbjsKCgkJLy8gRml4IHByZWNpc2lvbiBmcm9tIGJhZCBKUyBmbG9hdGluZyBwb2ludCBtYXRoCgkJdmFsdWUgPSBwYXJzZUZsb2F0KCB2YWx1ZS50b0ZpeGVkKCB0aGlzLl9wcmVjaXNpb24oKSApICk7CgoJCS8vIENsYW1wIHRoZSB2YWx1ZQoJCWlmICggb3B0aW9ucy5tYXggIT09IG51bGwgJiYgdmFsdWUgPiBvcHRpb25zLm1heCApIHsKCQkJcmV0dXJuIG9wdGlvbnMubWF4OwoJCX0KCQlpZiAoIG9wdGlvbnMubWluICE9PSBudWxsICYmIHZhbHVlIDwgb3B0aW9ucy5taW4gKSB7CgkJCXJldHVybiBvcHRpb25zLm1pbjsKCQl9CgoJCXJldHVybiB2YWx1ZTsKCX0sCgoJX3N0b3A6IGZ1bmN0aW9uKCBldmVudCApIHsKCQlpZiAoICF0aGlzLnNwaW5uaW5nICkgewoJCQlyZXR1cm47CgkJfQoKCQljbGVhclRpbWVvdXQoIHRoaXMudGltZXIgKTsKCQljbGVhclRpbWVvdXQoIHRoaXMubW91c2V3aGVlbFRpbWVyICk7CgkJdGhpcy5jb3VudGVyID0gMDsKCQl0aGlzLnNwaW5uaW5nID0gZmFsc2U7CgkJdGhpcy5fdHJpZ2dlciggInN0b3AiLCBldmVudCApOwoJfSwKCglfc2V0T3B0aW9uOiBmdW5jdGlvbigga2V5LCB2YWx1ZSApIHsKCQl2YXIgcHJldlZhbHVlLCBmaXJzdCwgbGFzdDsKCgkJaWYgKCBrZXkgPT09ICJjdWx0dXJlIiB8fCBrZXkgPT09ICJudW1iZXJGb3JtYXQiICkgewoJCQlwcmV2VmFsdWUgPSB0aGlzLl9wYXJzZSggdGhpcy5lbGVtZW50LnZhbCgpICk7CgkJCXRoaXMub3B0aW9uc1sga2V5IF0gPSB2YWx1ZTsKCQkJdGhpcy5lbGVtZW50LnZhbCggdGhpcy5fZm9ybWF0KCBwcmV2VmFsdWUgKSApOwoJCQlyZXR1cm47CgkJfQoKCQlpZiAoIGtleSA9PT0gIm1heCIgfHwga2V5ID09PSAibWluIiB8fCBrZXkgPT09ICJzdGVwIiApIHsKCQkJaWYgKCB0eXBlb2YgdmFsdWUgPT09ICJzdHJpbmciICkgewoJCQkJdmFsdWUgPSB0aGlzLl9wYXJzZSggdmFsdWUgKTsKCQkJfQoJCX0KCQlpZiAoIGtleSA9PT0gImljb25zIiApIHsKCQkJZmlyc3QgPSB0aGlzLmJ1dHRvbnMuZmlyc3QoKS5maW5kKCAiLnVpLWljb24iICk7CgkJCXRoaXMuX3JlbW92ZUNsYXNzKCBmaXJzdCwgbnVsbCwgdGhpcy5vcHRpb25zLmljb25zLnVwICk7CgkJCXRoaXMuX2FkZENsYXNzKCBmaXJzdCwgbnVsbCwgdmFsdWUudXAgKTsKCQkJbGFzdCA9IHRoaXMuYnV0dG9ucy5sYXN0KCkuZmluZCggIi51aS1pY29uIiApOwoJCQl0aGlzLl9yZW1vdmVDbGFzcyggbGFzdCwgbnVsbCwgdGhpcy5vcHRpb25zLmljb25zLmRvd24gKTsKCQkJdGhpcy5fYWRkQ2xhc3MoIGxhc3QsIG51bGwsIHZhbHVlLmRvd24gKTsKCQl9CgoJCXRoaXMuX3N1cGVyKCBrZXksIHZhbHVlICk7Cgl9LAoKCV9zZXRPcHRpb25EaXNhYmxlZDogZnVuY3Rpb24oIHZhbHVlICkgewoJCXRoaXMuX3N1cGVyKCB2YWx1ZSApOwoKCQl0aGlzLl90b2dnbGVDbGFzcyggdGhpcy51aVNwaW5uZXIsIG51bGwsICJ1aS1zdGF0ZS1kaXNhYmxlZCIsICEhdmFsdWUgKTsKCQl0aGlzLmVsZW1lbnQucHJvcCggImRpc2FibGVkIiwgISF2YWx1ZSApOwoJCXRoaXMuYnV0dG9ucy5idXR0b24oIHZhbHVlID8gImRpc2FibGUiIDogImVuYWJsZSIgKTsKCX0sCgoJX3NldE9wdGlvbnM6IHNwaW5uZXJNb2RpZmVyKCBmdW5jdGlvbiggb3B0aW9ucyApIHsKCQl0aGlzLl9zdXBlciggb3B0aW9ucyApOwoJfSApLAoKCV9wYXJzZTogZnVuY3Rpb24oIHZhbCApIHsKCQlpZiAoIHR5cGVvZiB2YWwgPT09ICJzdHJpbmciICYmIHZhbCAhPT0gIiIgKSB7CgkJCXZhbCA9IHdpbmRvdy5HbG9iYWxpemUgJiYgdGhpcy5vcHRpb25zLm51bWJlckZvcm1hdCA/CgkJCQlHbG9iYWxpemUucGFyc2VGbG9hdCggdmFsLCAxMCwgdGhpcy5vcHRpb25zLmN1bHR1cmUgKSA6ICt2YWw7CgkJfQoJCXJldHVybiB2YWwgPT09ICIiIHx8IGlzTmFOKCB2YWwgKSA/IG51bGwgOiB2YWw7Cgl9LAoKCV9mb3JtYXQ6IGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQlpZiAoIHZhbHVlID09PSAiIiApIHsKCQkJcmV0dXJuICIiOwoJCX0KCQlyZXR1cm4gd2luZG93Lkdsb2JhbGl6ZSAmJiB0aGlzLm9wdGlvbnMubnVtYmVyRm9ybWF0ID8KCQkJR2xvYmFsaXplLmZvcm1hdCggdmFsdWUsIHRoaXMub3B0aW9ucy5udW1iZXJGb3JtYXQsIHRoaXMub3B0aW9ucy5jdWx0dXJlICkgOgoJCQl2YWx1ZTsKCX0sCgoJX3JlZnJlc2g6IGZ1bmN0aW9uKCkgewoJCXRoaXMuZWxlbWVudC5hdHRyKCB7CgkJCSJhcmlhLXZhbHVlbWluIjogdGhpcy5vcHRpb25zLm1pbiwKCQkJImFyaWEtdmFsdWVtYXgiOiB0aGlzLm9wdGlvbnMubWF4LAoKCQkJLy8gVE9ETzogd2hhdCBzaG91bGQgd2UgZG8gd2l0aCB2YWx1ZXMgdGhhdCBjYW4ndCBiZSBwYXJzZWQ/CgkJCSJhcmlhLXZhbHVlbm93IjogdGhpcy5fcGFyc2UoIHRoaXMuZWxlbWVudC52YWwoKSApCgkJfSApOwoJfSwKCglpc1ZhbGlkOiBmdW5jdGlvbigpIHsKCQl2YXIgdmFsdWUgPSB0aGlzLnZhbHVlKCk7CgoJCS8vIE51bGwgaXMgaW52YWxpZAoJCWlmICggdmFsdWUgPT09IG51bGwgKSB7CgkJCXJldHVybiBmYWxzZTsKCQl9CgoJCS8vIElmIHZhbHVlIGdldHMgYWRqdXN0ZWQsIGl0J3MgaW52YWxpZAoJCXJldHVybiB2YWx1ZSA9PT0gdGhpcy5fYWRqdXN0VmFsdWUoIHZhbHVlICk7Cgl9LAoKCS8vIFVwZGF0ZSB0aGUgdmFsdWUgd2l0aG91dCB0cmlnZ2VyaW5nIGNoYW5nZQoJX3ZhbHVlOiBmdW5jdGlvbiggdmFsdWUsIGFsbG93QW55ICkgewoJCXZhciBwYXJzZWQ7CgkJaWYgKCB2YWx1ZSAhPT0gIiIgKSB7CgkJCXBhcnNlZCA9IHRoaXMuX3BhcnNlKCB2YWx1ZSApOwoJCQlpZiAoIHBhcnNlZCAhPT0gbnVsbCApIHsKCQkJCWlmICggIWFsbG93QW55ICkgewoJCQkJCXBhcnNlZCA9IHRoaXMuX2FkanVzdFZhbHVlKCBwYXJzZWQgKTsKCQkJCX0KCQkJCXZhbHVlID0gdGhpcy5fZm9ybWF0KCBwYXJzZWQgKTsKCQkJfQoJCX0KCQl0aGlzLmVsZW1lbnQudmFsKCB2YWx1ZSApOwoJCXRoaXMuX3JlZnJlc2goKTsKCX0sCgoJX2Rlc3Ryb3k6IGZ1bmN0aW9uKCkgewoJCXRoaXMuZWxlbWVudAoJCQkucHJvcCggImRpc2FibGVkIiwgZmFsc2UgKQoJCQkucmVtb3ZlQXR0ciggImF1dG9jb21wbGV0ZSByb2xlIGFyaWEtdmFsdWVtaW4gYXJpYS12YWx1ZW1heCBhcmlhLXZhbHVlbm93IiApOwoKCQl0aGlzLnVpU3Bpbm5lci5yZXBsYWNlV2l0aCggdGhpcy5lbGVtZW50ICk7Cgl9LAoKCXN0ZXBVcDogc3Bpbm5lck1vZGlmZXIoIGZ1bmN0aW9uKCBzdGVwcyApIHsKCQl0aGlzLl9zdGVwVXAoIHN0ZXBzICk7Cgl9ICksCglfc3RlcFVwOiBmdW5jdGlvbiggc3RlcHMgKSB7CgkJaWYgKCB0aGlzLl9zdGFydCgpICkgewoJCQl0aGlzLl9zcGluKCAoIHN0ZXBzIHx8IDEgKSAqIHRoaXMub3B0aW9ucy5zdGVwICk7CgkJCXRoaXMuX3N0b3AoKTsKCQl9Cgl9LAoKCXN0ZXBEb3duOiBzcGlubmVyTW9kaWZlciggZnVuY3Rpb24oIHN0ZXBzICkgewoJCXRoaXMuX3N0ZXBEb3duKCBzdGVwcyApOwoJfSApLAoJX3N0ZXBEb3duOiBmdW5jdGlvbiggc3RlcHMgKSB7CgkJaWYgKCB0aGlzLl9zdGFydCgpICkgewoJCQl0aGlzLl9zcGluKCAoIHN0ZXBzIHx8IDEgKSAqIC10aGlzLm9wdGlvbnMuc3RlcCApOwoJCQl0aGlzLl9zdG9wKCk7CgkJfQoJfSwKCglwYWdlVXA6IHNwaW5uZXJNb2RpZmVyKCBmdW5jdGlvbiggcGFnZXMgKSB7CgkJdGhpcy5fc3RlcFVwKCAoIHBhZ2VzIHx8IDEgKSAqIHRoaXMub3B0aW9ucy5wYWdlICk7Cgl9ICksCgoJcGFnZURvd246IHNwaW5uZXJNb2RpZmVyKCBmdW5jdGlvbiggcGFnZXMgKSB7CgkJdGhpcy5fc3RlcERvd24oICggcGFnZXMgfHwgMSApICogdGhpcy5vcHRpb25zLnBhZ2UgKTsKCX0gKSwKCgl2YWx1ZTogZnVuY3Rpb24oIG5ld1ZhbCApIHsKCQlpZiAoICFhcmd1bWVudHMubGVuZ3RoICkgewoJCQlyZXR1cm4gdGhpcy5fcGFyc2UoIHRoaXMuZWxlbWVudC52YWwoKSApOwoJCX0KCQlzcGlubmVyTW9kaWZlciggdGhpcy5fdmFsdWUgKS5jYWxsKCB0aGlzLCBuZXdWYWwgKTsKCX0sCgoJd2lkZ2V0OiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gdGhpcy51aVNwaW5uZXI7Cgl9Cn0gKTsKCi8vIERFUFJFQ0FURUQKLy8gVE9ETzogc3dpdGNoIHJldHVybiBiYWNrIHRvIHdpZGdldCBkZWNsYXJhdGlvbiBhdCB0b3Agb2YgZmlsZSB3aGVuIHRoaXMgaXMgcmVtb3ZlZAppZiAoICQudWlCYWNrQ29tcGF0ICE9PSBmYWxzZSApIHsKCgkvLyBCYWNrY29tcGF0IGZvciBzcGlubmVyIGh0bWwgZXh0ZW5zaW9uIHBvaW50cwoJJC53aWRnZXQoICJ1aS5zcGlubmVyIiwgJC51aS5zcGlubmVyLCB7CgkJX2VuaGFuY2U6IGZ1bmN0aW9uKCkgewoJCQl0aGlzLnVpU3Bpbm5lciA9IHRoaXMuZWxlbWVudAoJCQkJLmF0dHIoICJhdXRvY29tcGxldGUiLCAib2ZmIiApCgkJCQkud3JhcCggdGhpcy5fdWlTcGlubmVySHRtbCgpICkKCQkJCS5wYXJlbnQoKQoKCQkJCQkvLyBBZGQgYnV0dG9ucwoJCQkJCS5hcHBlbmQoIHRoaXMuX2J1dHRvbkh0bWwoKSApOwoJCX0sCgkJX3VpU3Bpbm5lckh0bWw6IGZ1bmN0aW9uKCkgewoJCQlyZXR1cm4gIjxzcGFuPiI7CgkJfSwKCgkJX2J1dHRvbkh0bWw6IGZ1bmN0aW9uKCkgewoJCQlyZXR1cm4gIjxhPjwvYT48YT48L2E+IjsKCQl9Cgl9ICk7Cn0KCnZhciB3aWRnZXRzU3Bpbm5lciA9ICQudWkuc3Bpbm5lcjsKCgovKiEKICogalF1ZXJ5IFVJIFRhYnMgMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiBUYWJzCi8vPj5ncm91cDogV2lkZ2V0cwovLz4+ZGVzY3JpcHRpb246IFRyYW5zZm9ybXMgYSBzZXQgb2YgY29udGFpbmVyIGVsZW1lbnRzIGludG8gYSB0YWIgc3RydWN0dXJlLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vdGFicy8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL3RhYnMvCi8vPj5jc3Muc3RydWN0dXJlOiAuLi8uLi90aGVtZXMvYmFzZS9jb3JlLmNzcwovLz4+Y3NzLnN0cnVjdHVyZTogLi4vLi4vdGhlbWVzL2Jhc2UvdGFicy5jc3MKLy8+PmNzcy50aGVtZTogLi4vLi4vdGhlbWVzL2Jhc2UvdGhlbWUuY3NzCgoKCiQud2lkZ2V0KCAidWkudGFicyIsIHsKCXZlcnNpb246ICIxLjEyLjEiLAoJZGVsYXk6IDMwMCwKCW9wdGlvbnM6IHsKCQlhY3RpdmU6IG51bGwsCgkJY2xhc3NlczogewoJCQkidWktdGFicyI6ICJ1aS1jb3JuZXItYWxsIiwKCQkJInVpLXRhYnMtbmF2IjogInVpLWNvcm5lci1hbGwiLAoJCQkidWktdGFicy1wYW5lbCI6ICJ1aS1jb3JuZXItYm90dG9tIiwKCQkJInVpLXRhYnMtdGFiIjogInVpLWNvcm5lci10b3AiCgkJfSwKCQljb2xsYXBzaWJsZTogZmFsc2UsCgkJZXZlbnQ6ICJjbGljayIsCgkJaGVpZ2h0U3R5bGU6ICJjb250ZW50IiwKCQloaWRlOiBudWxsLAoJCXNob3c6IG51bGwsCgoJCS8vIENhbGxiYWNrcwoJCWFjdGl2YXRlOiBudWxsLAoJCWJlZm9yZUFjdGl2YXRlOiBudWxsLAoJCWJlZm9yZUxvYWQ6IG51bGwsCgkJbG9hZDogbnVsbAoJfSwKCglfaXNMb2NhbDogKCBmdW5jdGlvbigpIHsKCQl2YXIgcmhhc2ggPSAvIy4qJC87CgoJCXJldHVybiBmdW5jdGlvbiggYW5jaG9yICkgewoJCQl2YXIgYW5jaG9yVXJsLCBsb2NhdGlvblVybDsKCgkJCWFuY2hvclVybCA9IGFuY2hvci5ocmVmLnJlcGxhY2UoIHJoYXNoLCAiIiApOwoJCQlsb2NhdGlvblVybCA9IGxvY2F0aW9uLmhyZWYucmVwbGFjZSggcmhhc2gsICIiICk7CgoJCQkvLyBEZWNvZGluZyBtYXkgdGhyb3cgYW4gZXJyb3IgaWYgdGhlIFVSTCBpc24ndCBVVEYtOCAoIzk1MTgpCgkJCXRyeSB7CgkJCQlhbmNob3JVcmwgPSBkZWNvZGVVUklDb21wb25lbnQoIGFuY2hvclVybCApOwoJCQl9IGNhdGNoICggZXJyb3IgKSB7fQoJCQl0cnkgewoJCQkJbG9jYXRpb25VcmwgPSBkZWNvZGVVUklDb21wb25lbnQoIGxvY2F0aW9uVXJsICk7CgkJCX0gY2F0Y2ggKCBlcnJvciApIHt9CgoJCQlyZXR1cm4gYW5jaG9yLmhhc2gubGVuZ3RoID4gMSAmJiBhbmNob3JVcmwgPT09IGxvY2F0aW9uVXJsOwoJCX07Cgl9ICkoKSwKCglfY3JlYXRlOiBmdW5jdGlvbigpIHsKCQl2YXIgdGhhdCA9IHRoaXMsCgkJCW9wdGlvbnMgPSB0aGlzLm9wdGlvbnM7CgoJCXRoaXMucnVubmluZyA9IGZhbHNlOwoKCQl0aGlzLl9hZGRDbGFzcyggInVpLXRhYnMiLCAidWktd2lkZ2V0IHVpLXdpZGdldC1jb250ZW50IiApOwoJCXRoaXMuX3RvZ2dsZUNsYXNzKCAidWktdGFicy1jb2xsYXBzaWJsZSIsIG51bGwsIG9wdGlvbnMuY29sbGFwc2libGUgKTsKCgkJdGhpcy5fcHJvY2Vzc1RhYnMoKTsKCQlvcHRpb25zLmFjdGl2ZSA9IHRoaXMuX2luaXRpYWxBY3RpdmUoKTsKCgkJLy8gVGFrZSBkaXNhYmxpbmcgdGFicyB2aWEgY2xhc3MgYXR0cmlidXRlIGZyb20gSFRNTAoJCS8vIGludG8gYWNjb3VudCBhbmQgdXBkYXRlIG9wdGlvbiBwcm9wZXJseS4KCQlpZiAoICQuaXNBcnJheSggb3B0aW9ucy5kaXNhYmxlZCApICkgewoJCQlvcHRpb25zLmRpc2FibGVkID0gJC51bmlxdWUoIG9wdGlvbnMuZGlzYWJsZWQuY29uY2F0KAoJCQkJJC5tYXAoIHRoaXMudGFicy5maWx0ZXIoICIudWktc3RhdGUtZGlzYWJsZWQiICksIGZ1bmN0aW9uKCBsaSApIHsKCQkJCQlyZXR1cm4gdGhhdC50YWJzLmluZGV4KCBsaSApOwoJCQkJfSApCgkJCSkgKS5zb3J0KCk7CgkJfQoKCQkvLyBDaGVjayBmb3IgbGVuZ3RoIGF2b2lkcyBlcnJvciB3aGVuIGluaXRpYWxpemluZyBlbXB0eSBsaXN0CgkJaWYgKCB0aGlzLm9wdGlvbnMuYWN0aXZlICE9PSBmYWxzZSAmJiB0aGlzLmFuY2hvcnMubGVuZ3RoICkgewoJCQl0aGlzLmFjdGl2ZSA9IHRoaXMuX2ZpbmRBY3RpdmUoIG9wdGlvbnMuYWN0aXZlICk7CgkJfSBlbHNlIHsKCQkJdGhpcy5hY3RpdmUgPSAkKCk7CgkJfQoKCQl0aGlzLl9yZWZyZXNoKCk7CgoJCWlmICggdGhpcy5hY3RpdmUubGVuZ3RoICkgewoJCQl0aGlzLmxvYWQoIG9wdGlvbnMuYWN0aXZlICk7CgkJfQoJfSwKCglfaW5pdGlhbEFjdGl2ZTogZnVuY3Rpb24oKSB7CgkJdmFyIGFjdGl2ZSA9IHRoaXMub3B0aW9ucy5hY3RpdmUsCgkJCWNvbGxhcHNpYmxlID0gdGhpcy5vcHRpb25zLmNvbGxhcHNpYmxlLAoJCQlsb2NhdGlvbkhhc2ggPSBsb2NhdGlvbi5oYXNoLnN1YnN0cmluZyggMSApOwoKCQlpZiAoIGFjdGl2ZSA9PT0gbnVsbCApIHsKCgkJCS8vIGNoZWNrIHRoZSBmcmFnbWVudCBpZGVudGlmaWVyIGluIHRoZSBVUkwKCQkJaWYgKCBsb2NhdGlvbkhhc2ggKSB7CgkJCQl0aGlzLnRhYnMuZWFjaCggZnVuY3Rpb24oIGksIHRhYiApIHsKCQkJCQlpZiAoICQoIHRhYiApLmF0dHIoICJhcmlhLWNvbnRyb2xzIiApID09PSBsb2NhdGlvbkhhc2ggKSB7CgkJCQkJCWFjdGl2ZSA9IGk7CgkJCQkJCXJldHVybiBmYWxzZTsKCQkJCQl9CgkJCQl9ICk7CgkJCX0KCgkJCS8vIENoZWNrIGZvciBhIHRhYiBtYXJrZWQgYWN0aXZlIHZpYSBhIGNsYXNzCgkJCWlmICggYWN0aXZlID09PSBudWxsICkgewoJCQkJYWN0aXZlID0gdGhpcy50YWJzLmluZGV4KCB0aGlzLnRhYnMuZmlsdGVyKCAiLnVpLXRhYnMtYWN0aXZlIiApICk7CgkJCX0KCgkJCS8vIE5vIGFjdGl2ZSB0YWIsIHNldCB0byBmYWxzZQoJCQlpZiAoIGFjdGl2ZSA9PT0gbnVsbCB8fCBhY3RpdmUgPT09IC0xICkgewoJCQkJYWN0aXZlID0gdGhpcy50YWJzLmxlbmd0aCA/IDAgOiBmYWxzZTsKCQkJfQoJCX0KCgkJLy8gSGFuZGxlIG51bWJlcnM6IG5lZ2F0aXZlLCBvdXQgb2YgcmFuZ2UKCQlpZiAoIGFjdGl2ZSAhPT0gZmFsc2UgKSB7CgkJCWFjdGl2ZSA9IHRoaXMudGFicy5pbmRleCggdGhpcy50YWJzLmVxKCBhY3RpdmUgKSApOwoJCQlpZiAoIGFjdGl2ZSA9PT0gLTEgKSB7CgkJCQlhY3RpdmUgPSBjb2xsYXBzaWJsZSA/IGZhbHNlIDogMDsKCQkJfQoJCX0KCgkJLy8gRG9uJ3QgYWxsb3cgY29sbGFwc2libGU6IGZhbHNlIGFuZCBhY3RpdmU6IGZhbHNlCgkJaWYgKCAhY29sbGFwc2libGUgJiYgYWN0aXZlID09PSBmYWxzZSAmJiB0aGlzLmFuY2hvcnMubGVuZ3RoICkgewoJCQlhY3RpdmUgPSAwOwoJCX0KCgkJcmV0dXJuIGFjdGl2ZTsKCX0sCgoJX2dldENyZWF0ZUV2ZW50RGF0YTogZnVuY3Rpb24oKSB7CgkJcmV0dXJuIHsKCQkJdGFiOiB0aGlzLmFjdGl2ZSwKCQkJcGFuZWw6ICF0aGlzLmFjdGl2ZS5sZW5ndGggPyAkKCkgOiB0aGlzLl9nZXRQYW5lbEZvclRhYiggdGhpcy5hY3RpdmUgKQoJCX07Cgl9LAoKCV90YWJLZXlkb3duOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdmFyIGZvY3VzZWRUYWIgPSAkKCAkLnVpLnNhZmVBY3RpdmVFbGVtZW50KCB0aGlzLmRvY3VtZW50WyAwIF0gKSApLmNsb3Nlc3QoICJsaSIgKSwKCQkJc2VsZWN0ZWRJbmRleCA9IHRoaXMudGFicy5pbmRleCggZm9jdXNlZFRhYiApLAoJCQlnb2luZ0ZvcndhcmQgPSB0cnVlOwoKCQlpZiAoIHRoaXMuX2hhbmRsZVBhZ2VOYXYoIGV2ZW50ICkgKSB7CgkJCXJldHVybjsKCQl9CgoJCXN3aXRjaCAoIGV2ZW50LmtleUNvZGUgKSB7CgkJY2FzZSAkLnVpLmtleUNvZGUuUklHSFQ6CgkJY2FzZSAkLnVpLmtleUNvZGUuRE9XTjoKCQkJc2VsZWN0ZWRJbmRleCsrOwoJCQlicmVhazsKCQljYXNlICQudWkua2V5Q29kZS5VUDoKCQljYXNlICQudWkua2V5Q29kZS5MRUZUOgoJCQlnb2luZ0ZvcndhcmQgPSBmYWxzZTsKCQkJc2VsZWN0ZWRJbmRleC0tOwoJCQlicmVhazsKCQljYXNlICQudWkua2V5Q29kZS5FTkQ6CgkJCXNlbGVjdGVkSW5kZXggPSB0aGlzLmFuY2hvcnMubGVuZ3RoIC0gMTsKCQkJYnJlYWs7CgkJY2FzZSAkLnVpLmtleUNvZGUuSE9NRToKCQkJc2VsZWN0ZWRJbmRleCA9IDA7CgkJCWJyZWFrOwoJCWNhc2UgJC51aS5rZXlDb2RlLlNQQUNFOgoKCQkJLy8gQWN0aXZhdGUgb25seSwgbm8gY29sbGFwc2luZwoJCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOwoJCQljbGVhclRpbWVvdXQoIHRoaXMuYWN0aXZhdGluZyApOwoJCQl0aGlzLl9hY3RpdmF0ZSggc2VsZWN0ZWRJbmRleCApOwoJCQlyZXR1cm47CgkJY2FzZSAkLnVpLmtleUNvZGUuRU5URVI6CgoJCQkvLyBUb2dnbGUgKGNhbmNlbCBkZWxheWVkIGFjdGl2YXRpb24sIGFsbG93IGNvbGxhcHNpbmcpCgkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCWNsZWFyVGltZW91dCggdGhpcy5hY3RpdmF0aW5nICk7CgoJCQkvLyBEZXRlcm1pbmUgaWYgd2Ugc2hvdWxkIGNvbGxhcHNlIG9yIGFjdGl2YXRlCgkJCXRoaXMuX2FjdGl2YXRlKCBzZWxlY3RlZEluZGV4ID09PSB0aGlzLm9wdGlvbnMuYWN0aXZlID8gZmFsc2UgOiBzZWxlY3RlZEluZGV4ICk7CgkJCXJldHVybjsKCQlkZWZhdWx0OgoJCQlyZXR1cm47CgkJfQoKCQkvLyBGb2N1cyB0aGUgYXBwcm9wcmlhdGUgdGFiLCBiYXNlZCBvbiB3aGljaCBrZXkgd2FzIHByZXNzZWQKCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOwoJCWNsZWFyVGltZW91dCggdGhpcy5hY3RpdmF0aW5nICk7CgkJc2VsZWN0ZWRJbmRleCA9IHRoaXMuX2ZvY3VzTmV4dFRhYiggc2VsZWN0ZWRJbmRleCwgZ29pbmdGb3J3YXJkICk7CgoJCS8vIE5hdmlnYXRpbmcgd2l0aCBjb250cm9sL2NvbW1hbmQga2V5IHdpbGwgcHJldmVudCBhdXRvbWF0aWMgYWN0aXZhdGlvbgoJCWlmICggIWV2ZW50LmN0cmxLZXkgJiYgIWV2ZW50Lm1ldGFLZXkgKSB7CgoJCQkvLyBVcGRhdGUgYXJpYS1zZWxlY3RlZCBpbW1lZGlhdGVseSBzbyB0aGF0IEFUIHRoaW5rIHRoZSB0YWIgaXMgYWxyZWFkeSBzZWxlY3RlZC4KCQkJLy8gT3RoZXJ3aXNlIEFUIG1heSBjb25mdXNlIHRoZSB1c2VyIGJ5IHN0YXRpbmcgdGhhdCB0aGV5IG5lZWQgdG8gYWN0aXZhdGUgdGhlIHRhYiwKCQkJLy8gYnV0IHRoZSB0YWIgd2lsbCBhbHJlYWR5IGJlIGFjdGl2YXRlZCBieSB0aGUgdGltZSB0aGUgYW5ub3VuY2VtZW50IGZpbmlzaGVzLgoJCQlmb2N1c2VkVGFiLmF0dHIoICJhcmlhLXNlbGVjdGVkIiwgImZhbHNlIiApOwoJCQl0aGlzLnRhYnMuZXEoIHNlbGVjdGVkSW5kZXggKS5hdHRyKCAiYXJpYS1zZWxlY3RlZCIsICJ0cnVlIiApOwoKCQkJdGhpcy5hY3RpdmF0aW5nID0gdGhpcy5fZGVsYXkoIGZ1bmN0aW9uKCkgewoJCQkJdGhpcy5vcHRpb24oICJhY3RpdmUiLCBzZWxlY3RlZEluZGV4ICk7CgkJCX0sIHRoaXMuZGVsYXkgKTsKCQl9Cgl9LAoKCV9wYW5lbEtleWRvd246IGZ1bmN0aW9uKCBldmVudCApIHsKCQlpZiAoIHRoaXMuX2hhbmRsZVBhZ2VOYXYoIGV2ZW50ICkgKSB7CgkJCXJldHVybjsKCQl9CgoJCS8vIEN0cmwrdXAgbW92ZXMgZm9jdXMgdG8gdGhlIGN1cnJlbnQgdGFiCgkJaWYgKCBldmVudC5jdHJsS2V5ICYmIGV2ZW50LmtleUNvZGUgPT09ICQudWkua2V5Q29kZS5VUCApIHsKCQkJZXZlbnQucHJldmVudERlZmF1bHQoKTsKCQkJdGhpcy5hY3RpdmUudHJpZ2dlciggImZvY3VzIiApOwoJCX0KCX0sCgoJLy8gQWx0K3BhZ2UgdXAvZG93biBtb3ZlcyBmb2N1cyB0byB0aGUgcHJldmlvdXMvbmV4dCB0YWIgKGFuZCBhY3RpdmF0ZXMpCglfaGFuZGxlUGFnZU5hdjogZnVuY3Rpb24oIGV2ZW50ICkgewoJCWlmICggZXZlbnQuYWx0S2V5ICYmIGV2ZW50LmtleUNvZGUgPT09ICQudWkua2V5Q29kZS5QQUdFX1VQICkgewoJCQl0aGlzLl9hY3RpdmF0ZSggdGhpcy5fZm9jdXNOZXh0VGFiKCB0aGlzLm9wdGlvbnMuYWN0aXZlIC0gMSwgZmFsc2UgKSApOwoJCQlyZXR1cm4gdHJ1ZTsKCQl9CgkJaWYgKCBldmVudC5hbHRLZXkgJiYgZXZlbnQua2V5Q29kZSA9PT0gJC51aS5rZXlDb2RlLlBBR0VfRE9XTiApIHsKCQkJdGhpcy5fYWN0aXZhdGUoIHRoaXMuX2ZvY3VzTmV4dFRhYiggdGhpcy5vcHRpb25zLmFjdGl2ZSArIDEsIHRydWUgKSApOwoJCQlyZXR1cm4gdHJ1ZTsKCQl9Cgl9LAoKCV9maW5kTmV4dFRhYjogZnVuY3Rpb24oIGluZGV4LCBnb2luZ0ZvcndhcmQgKSB7CgkJdmFyIGxhc3RUYWJJbmRleCA9IHRoaXMudGFicy5sZW5ndGggLSAxOwoKCQlmdW5jdGlvbiBjb25zdHJhaW4oKSB7CgkJCWlmICggaW5kZXggPiBsYXN0VGFiSW5kZXggKSB7CgkJCQlpbmRleCA9IDA7CgkJCX0KCQkJaWYgKCBpbmRleCA8IDAgKSB7CgkJCQlpbmRleCA9IGxhc3RUYWJJbmRleDsKCQkJfQoJCQlyZXR1cm4gaW5kZXg7CgkJfQoKCQl3aGlsZSAoICQuaW5BcnJheSggY29uc3RyYWluKCksIHRoaXMub3B0aW9ucy5kaXNhYmxlZCApICE9PSAtMSApIHsKCQkJaW5kZXggPSBnb2luZ0ZvcndhcmQgPyBpbmRleCArIDEgOiBpbmRleCAtIDE7CgkJfQoKCQlyZXR1cm4gaW5kZXg7Cgl9LAoKCV9mb2N1c05leHRUYWI6IGZ1bmN0aW9uKCBpbmRleCwgZ29pbmdGb3J3YXJkICkgewoJCWluZGV4ID0gdGhpcy5fZmluZE5leHRUYWIoIGluZGV4LCBnb2luZ0ZvcndhcmQgKTsKCQl0aGlzLnRhYnMuZXEoIGluZGV4ICkudHJpZ2dlciggImZvY3VzIiApOwoJCXJldHVybiBpbmRleDsKCX0sCgoJX3NldE9wdGlvbjogZnVuY3Rpb24oIGtleSwgdmFsdWUgKSB7CgkJaWYgKCBrZXkgPT09ICJhY3RpdmUiICkgewoKCQkJLy8gX2FjdGl2YXRlKCkgd2lsbCBoYW5kbGUgaW52YWxpZCB2YWx1ZXMgYW5kIHVwZGF0ZSB0aGlzLm9wdGlvbnMKCQkJdGhpcy5fYWN0aXZhdGUoIHZhbHVlICk7CgkJCXJldHVybjsKCQl9CgoJCXRoaXMuX3N1cGVyKCBrZXksIHZhbHVlICk7CgoJCWlmICgga2V5ID09PSAiY29sbGFwc2libGUiICkgewoJCQl0aGlzLl90b2dnbGVDbGFzcyggInVpLXRhYnMtY29sbGFwc2libGUiLCBudWxsLCB2YWx1ZSApOwoKCQkJLy8gU2V0dGluZyBjb2xsYXBzaWJsZTogZmFsc2Ugd2hpbGUgY29sbGFwc2VkOyBvcGVuIGZpcnN0IHBhbmVsCgkJCWlmICggIXZhbHVlICYmIHRoaXMub3B0aW9ucy5hY3RpdmUgPT09IGZhbHNlICkgewoJCQkJdGhpcy5fYWN0aXZhdGUoIDAgKTsKCQkJfQoJCX0KCgkJaWYgKCBrZXkgPT09ICJldmVudCIgKSB7CgkJCXRoaXMuX3NldHVwRXZlbnRzKCB2YWx1ZSApOwoJCX0KCgkJaWYgKCBrZXkgPT09ICJoZWlnaHRTdHlsZSIgKSB7CgkJCXRoaXMuX3NldHVwSGVpZ2h0U3R5bGUoIHZhbHVlICk7CgkJfQoJfSwKCglfc2FuaXRpemVTZWxlY3RvcjogZnVuY3Rpb24oIGhhc2ggKSB7CgkJcmV0dXJuIGhhc2ggPyBoYXNoLnJlcGxhY2UoIC9bISIkJSYnKCkqKywuXC86Ozw9Pj9AXFtcXVxeYHt8fX5dL2csICJcXCQmIiApIDogIiI7Cgl9LAoKCXJlZnJlc2g6IGZ1bmN0aW9uKCkgewoJCXZhciBvcHRpb25zID0gdGhpcy5vcHRpb25zLAoJCQlsaXMgPSB0aGlzLnRhYmxpc3QuY2hpbGRyZW4oICI6aGFzKGFbaHJlZl0pIiApOwoKCQkvLyBHZXQgZGlzYWJsZWQgdGFicyBmcm9tIGNsYXNzIGF0dHJpYnV0ZSBmcm9tIEhUTUwKCQkvLyB0aGlzIHdpbGwgZ2V0IGNvbnZlcnRlZCB0byBhIGJvb2xlYW4gaWYgbmVlZGVkIGluIF9yZWZyZXNoKCkKCQlvcHRpb25zLmRpc2FibGVkID0gJC5tYXAoIGxpcy5maWx0ZXIoICIudWktc3RhdGUtZGlzYWJsZWQiICksIGZ1bmN0aW9uKCB0YWIgKSB7CgkJCXJldHVybiBsaXMuaW5kZXgoIHRhYiApOwoJCX0gKTsKCgkJdGhpcy5fcHJvY2Vzc1RhYnMoKTsKCgkJLy8gV2FzIGNvbGxhcHNlZCBvciBubyB0YWJzCgkJaWYgKCBvcHRpb25zLmFjdGl2ZSA9PT0gZmFsc2UgfHwgIXRoaXMuYW5jaG9ycy5sZW5ndGggKSB7CgkJCW9wdGlvbnMuYWN0aXZlID0gZmFsc2U7CgkJCXRoaXMuYWN0aXZlID0gJCgpOwoKCQkvLyB3YXMgYWN0aXZlLCBidXQgYWN0aXZlIHRhYiBpcyBnb25lCgkJfSBlbHNlIGlmICggdGhpcy5hY3RpdmUubGVuZ3RoICYmICEkLmNvbnRhaW5zKCB0aGlzLnRhYmxpc3RbIDAgXSwgdGhpcy5hY3RpdmVbIDAgXSApICkgewoKCQkJLy8gYWxsIHJlbWFpbmluZyB0YWJzIGFyZSBkaXNhYmxlZAoJCQlpZiAoIHRoaXMudGFicy5sZW5ndGggPT09IG9wdGlvbnMuZGlzYWJsZWQubGVuZ3RoICkgewoJCQkJb3B0aW9ucy5hY3RpdmUgPSBmYWxzZTsKCQkJCXRoaXMuYWN0aXZlID0gJCgpOwoKCQkJLy8gYWN0aXZhdGUgcHJldmlvdXMgdGFiCgkJCX0gZWxzZSB7CgkJCQl0aGlzLl9hY3RpdmF0ZSggdGhpcy5fZmluZE5leHRUYWIoIE1hdGgubWF4KCAwLCBvcHRpb25zLmFjdGl2ZSAtIDEgKSwgZmFsc2UgKSApOwoJCQl9CgoJCS8vIHdhcyBhY3RpdmUsIGFjdGl2ZSB0YWIgc3RpbGwgZXhpc3RzCgkJfSBlbHNlIHsKCgkJCS8vIG1ha2Ugc3VyZSBhY3RpdmUgaW5kZXggaXMgY29ycmVjdAoJCQlvcHRpb25zLmFjdGl2ZSA9IHRoaXMudGFicy5pbmRleCggdGhpcy5hY3RpdmUgKTsKCQl9CgoJCXRoaXMuX3JlZnJlc2goKTsKCX0sCgoJX3JlZnJlc2g6IGZ1bmN0aW9uKCkgewoJCXRoaXMuX3NldE9wdGlvbkRpc2FibGVkKCB0aGlzLm9wdGlvbnMuZGlzYWJsZWQgKTsKCQl0aGlzLl9zZXR1cEV2ZW50cyggdGhpcy5vcHRpb25zLmV2ZW50ICk7CgkJdGhpcy5fc2V0dXBIZWlnaHRTdHlsZSggdGhpcy5vcHRpb25zLmhlaWdodFN0eWxlICk7CgoJCXRoaXMudGFicy5ub3QoIHRoaXMuYWN0aXZlICkuYXR0ciggewoJCQkiYXJpYS1zZWxlY3RlZCI6ICJmYWxzZSIsCgkJCSJhcmlhLWV4cGFuZGVkIjogImZhbHNlIiwKCQkJdGFiSW5kZXg6IC0xCgkJfSApOwoJCXRoaXMucGFuZWxzLm5vdCggdGhpcy5fZ2V0UGFuZWxGb3JUYWIoIHRoaXMuYWN0aXZlICkgKQoJCQkuaGlkZSgpCgkJCS5hdHRyKCB7CgkJCQkiYXJpYS1oaWRkZW4iOiAidHJ1ZSIKCQkJfSApOwoKCQkvLyBNYWtlIHN1cmUgb25lIHRhYiBpcyBpbiB0aGUgdGFiIG9yZGVyCgkJaWYgKCAhdGhpcy5hY3RpdmUubGVuZ3RoICkgewoJCQl0aGlzLnRhYnMuZXEoIDAgKS5hdHRyKCAidGFiSW5kZXgiLCAwICk7CgkJfSBlbHNlIHsKCQkJdGhpcy5hY3RpdmUKCQkJCS5hdHRyKCB7CgkJCQkJImFyaWEtc2VsZWN0ZWQiOiAidHJ1ZSIsCgkJCQkJImFyaWEtZXhwYW5kZWQiOiAidHJ1ZSIsCgkJCQkJdGFiSW5kZXg6IDAKCQkJCX0gKTsKCQkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMuYWN0aXZlLCAidWktdGFicy1hY3RpdmUiLCAidWktc3RhdGUtYWN0aXZlIiApOwoJCQl0aGlzLl9nZXRQYW5lbEZvclRhYiggdGhpcy5hY3RpdmUgKQoJCQkJLnNob3coKQoJCQkJLmF0dHIoIHsKCQkJCQkiYXJpYS1oaWRkZW4iOiAiZmFsc2UiCgkJCQl9ICk7CgkJfQoJfSwKCglfcHJvY2Vzc1RhYnM6IGZ1bmN0aW9uKCkgewoJCXZhciB0aGF0ID0gdGhpcywKCQkJcHJldlRhYnMgPSB0aGlzLnRhYnMsCgkJCXByZXZBbmNob3JzID0gdGhpcy5hbmNob3JzLAoJCQlwcmV2UGFuZWxzID0gdGhpcy5wYW5lbHM7CgoJCXRoaXMudGFibGlzdCA9IHRoaXMuX2dldExpc3QoKS5hdHRyKCAicm9sZSIsICJ0YWJsaXN0IiApOwoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLnRhYmxpc3QsICJ1aS10YWJzLW5hdiIsCgkJCSJ1aS1oZWxwZXItcmVzZXQgdWktaGVscGVyLWNsZWFyZml4IHVpLXdpZGdldC1oZWFkZXIiICk7CgoJCS8vIFByZXZlbnQgdXNlcnMgZnJvbSBmb2N1c2luZyBkaXNhYmxlZCB0YWJzIHZpYSBjbGljawoJCXRoaXMudGFibGlzdAoJCQkub24oICJtb3VzZWRvd24iICsgdGhpcy5ldmVudE5hbWVzcGFjZSwgIj4gbGkiLCBmdW5jdGlvbiggZXZlbnQgKSB7CgkJCQlpZiAoICQoIHRoaXMgKS5pcyggIi51aS1zdGF0ZS1kaXNhYmxlZCIgKSApIHsKCQkJCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOwoJCQkJfQoJCQl9ICkKCgkJCS8vIFN1cHBvcnQ6IElFIDw5CgkJCS8vIFByZXZlbnRpbmcgdGhlIGRlZmF1bHQgYWN0aW9uIGluIG1vdXNlZG93biBkb2Vzbid0IHByZXZlbnQgSUUKCQkJLy8gZnJvbSBmb2N1c2luZyB0aGUgZWxlbWVudCwgc28gaWYgdGhlIGFuY2hvciBnZXRzIGZvY3VzZWQsIGJsdXIuCgkJCS8vIFdlIGRvbid0IGhhdmUgdG8gd29ycnkgYWJvdXQgZm9jdXNpbmcgdGhlIHByZXZpb3VzbHkgZm9jdXNlZAoJCQkvLyBlbGVtZW50IHNpbmNlIGNsaWNraW5nIG9uIGEgbm9uLWZvY3VzYWJsZSBlbGVtZW50IHNob3VsZCBmb2N1cwoJCQkvLyB0aGUgYm9keSBhbnl3YXkuCgkJCS5vbiggImZvY3VzIiArIHRoaXMuZXZlbnROYW1lc3BhY2UsICIudWktdGFicy1hbmNob3IiLCBmdW5jdGlvbigpIHsKCQkJCWlmICggJCggdGhpcyApLmNsb3Nlc3QoICJsaSIgKS5pcyggIi51aS1zdGF0ZS1kaXNhYmxlZCIgKSApIHsKCQkJCQl0aGlzLmJsdXIoKTsKCQkJCX0KCQkJfSApOwoKCQl0aGlzLnRhYnMgPSB0aGlzLnRhYmxpc3QuZmluZCggIj4gbGk6aGFzKGFbaHJlZl0pIiApCgkJCS5hdHRyKCB7CgkJCQlyb2xlOiAidGFiIiwKCQkJCXRhYkluZGV4OiAtMQoJCQl9ICk7CgkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMudGFicywgInVpLXRhYnMtdGFiIiwgInVpLXN0YXRlLWRlZmF1bHQiICk7CgoJCXRoaXMuYW5jaG9ycyA9IHRoaXMudGFicy5tYXAoIGZ1bmN0aW9uKCkgewoJCQlyZXR1cm4gJCggImEiLCB0aGlzIClbIDAgXTsKCQl9ICkKCQkJLmF0dHIoIHsKCQkJCXJvbGU6ICJwcmVzZW50YXRpb24iLAoJCQkJdGFiSW5kZXg6IC0xCgkJCX0gKTsKCQl0aGlzLl9hZGRDbGFzcyggdGhpcy5hbmNob3JzLCAidWktdGFicy1hbmNob3IiICk7CgoJCXRoaXMucGFuZWxzID0gJCgpOwoKCQl0aGlzLmFuY2hvcnMuZWFjaCggZnVuY3Rpb24oIGksIGFuY2hvciApIHsKCQkJdmFyIHNlbGVjdG9yLCBwYW5lbCwgcGFuZWxJZCwKCQkJCWFuY2hvcklkID0gJCggYW5jaG9yICkudW5pcXVlSWQoKS5hdHRyKCAiaWQiICksCgkJCQl0YWIgPSAkKCBhbmNob3IgKS5jbG9zZXN0KCAibGkiICksCgkJCQlvcmlnaW5hbEFyaWFDb250cm9scyA9IHRhYi5hdHRyKCAiYXJpYS1jb250cm9scyIgKTsKCgkJCS8vIElubGluZSB0YWIKCQkJaWYgKCB0aGF0Ll9pc0xvY2FsKCBhbmNob3IgKSApIHsKCQkJCXNlbGVjdG9yID0gYW5jaG9yLmhhc2g7CgkJCQlwYW5lbElkID0gc2VsZWN0b3Iuc3Vic3RyaW5nKCAxICk7CgkJCQlwYW5lbCA9IHRoYXQuZWxlbWVudC5maW5kKCB0aGF0Ll9zYW5pdGl6ZVNlbGVjdG9yKCBzZWxlY3RvciApICk7CgoJCQkvLyByZW1vdGUgdGFiCgkJCX0gZWxzZSB7CgoJCQkJLy8gSWYgdGhlIHRhYiBkb2Vzbid0IGFscmVhZHkgaGF2ZSBhcmlhLWNvbnRyb2xzLAoJCQkJLy8gZ2VuZXJhdGUgYW4gaWQgYnkgdXNpbmcgYSB0aHJvdy1hd2F5IGVsZW1lbnQKCQkJCXBhbmVsSWQgPSB0YWIuYXR0ciggImFyaWEtY29udHJvbHMiICkgfHwgJCgge30gKS51bmlxdWVJZCgpWyAwIF0uaWQ7CgkJCQlzZWxlY3RvciA9ICIjIiArIHBhbmVsSWQ7CgkJCQlwYW5lbCA9IHRoYXQuZWxlbWVudC5maW5kKCBzZWxlY3RvciApOwoJCQkJaWYgKCAhcGFuZWwubGVuZ3RoICkgewoJCQkJCXBhbmVsID0gdGhhdC5fY3JlYXRlUGFuZWwoIHBhbmVsSWQgKTsKCQkJCQlwYW5lbC5pbnNlcnRBZnRlciggdGhhdC5wYW5lbHNbIGkgLSAxIF0gfHwgdGhhdC50YWJsaXN0ICk7CgkJCQl9CgkJCQlwYW5lbC5hdHRyKCAiYXJpYS1saXZlIiwgInBvbGl0ZSIgKTsKCQkJfQoKCQkJaWYgKCBwYW5lbC5sZW5ndGggKSB7CgkJCQl0aGF0LnBhbmVscyA9IHRoYXQucGFuZWxzLmFkZCggcGFuZWwgKTsKCQkJfQoJCQlpZiAoIG9yaWdpbmFsQXJpYUNvbnRyb2xzICkgewoJCQkJdGFiLmRhdGEoICJ1aS10YWJzLWFyaWEtY29udHJvbHMiLCBvcmlnaW5hbEFyaWFDb250cm9scyApOwoJCQl9CgkJCXRhYi5hdHRyKCB7CgkJCQkiYXJpYS1jb250cm9scyI6IHBhbmVsSWQsCgkJCQkiYXJpYS1sYWJlbGxlZGJ5IjogYW5jaG9ySWQKCQkJfSApOwoJCQlwYW5lbC5hdHRyKCAiYXJpYS1sYWJlbGxlZGJ5IiwgYW5jaG9ySWQgKTsKCQl9ICk7CgoJCXRoaXMucGFuZWxzLmF0dHIoICJyb2xlIiwgInRhYnBhbmVsIiApOwoJCXRoaXMuX2FkZENsYXNzKCB0aGlzLnBhbmVscywgInVpLXRhYnMtcGFuZWwiLCAidWktd2lkZ2V0LWNvbnRlbnQiICk7CgoJCS8vIEF2b2lkIG1lbW9yeSBsZWFrcyAoIzEwMDU2KQoJCWlmICggcHJldlRhYnMgKSB7CgkJCXRoaXMuX29mZiggcHJldlRhYnMubm90KCB0aGlzLnRhYnMgKSApOwoJCQl0aGlzLl9vZmYoIHByZXZBbmNob3JzLm5vdCggdGhpcy5hbmNob3JzICkgKTsKCQkJdGhpcy5fb2ZmKCBwcmV2UGFuZWxzLm5vdCggdGhpcy5wYW5lbHMgKSApOwoJCX0KCX0sCgoJLy8gQWxsb3cgb3ZlcnJpZGluZyBob3cgdG8gZmluZCB0aGUgbGlzdCBmb3IgcmFyZSB1c2FnZSBzY2VuYXJpb3MgKCM3NzE1KQoJX2dldExpc3Q6IGZ1bmN0aW9uKCkgewoJCXJldHVybiB0aGlzLnRhYmxpc3QgfHwgdGhpcy5lbGVtZW50LmZpbmQoICJvbCwgdWwiICkuZXEoIDAgKTsKCX0sCgoJX2NyZWF0ZVBhbmVsOiBmdW5jdGlvbiggaWQgKSB7CgkJcmV0dXJuICQoICI8ZGl2PiIgKQoJCQkuYXR0ciggImlkIiwgaWQgKQoJCQkuZGF0YSggInVpLXRhYnMtZGVzdHJveSIsIHRydWUgKTsKCX0sCgoJX3NldE9wdGlvbkRpc2FibGVkOiBmdW5jdGlvbiggZGlzYWJsZWQgKSB7CgkJdmFyIGN1cnJlbnRJdGVtLCBsaSwgaTsKCgkJaWYgKCAkLmlzQXJyYXkoIGRpc2FibGVkICkgKSB7CgkJCWlmICggIWRpc2FibGVkLmxlbmd0aCApIHsKCQkJCWRpc2FibGVkID0gZmFsc2U7CgkJCX0gZWxzZSBpZiAoIGRpc2FibGVkLmxlbmd0aCA9PT0gdGhpcy5hbmNob3JzLmxlbmd0aCApIHsKCQkJCWRpc2FibGVkID0gdHJ1ZTsKCQkJfQoJCX0KCgkJLy8gRGlzYWJsZSB0YWJzCgkJZm9yICggaSA9IDA7ICggbGkgPSB0aGlzLnRhYnNbIGkgXSApOyBpKysgKSB7CgkJCWN1cnJlbnRJdGVtID0gJCggbGkgKTsKCQkJaWYgKCBkaXNhYmxlZCA9PT0gdHJ1ZSB8fCAkLmluQXJyYXkoIGksIGRpc2FibGVkICkgIT09IC0xICkgewoJCQkJY3VycmVudEl0ZW0uYXR0ciggImFyaWEtZGlzYWJsZWQiLCAidHJ1ZSIgKTsKCQkJCXRoaXMuX2FkZENsYXNzKCBjdXJyZW50SXRlbSwgbnVsbCwgInVpLXN0YXRlLWRpc2FibGVkIiApOwoJCQl9IGVsc2UgewoJCQkJY3VycmVudEl0ZW0ucmVtb3ZlQXR0ciggImFyaWEtZGlzYWJsZWQiICk7CgkJCQl0aGlzLl9yZW1vdmVDbGFzcyggY3VycmVudEl0ZW0sIG51bGwsICJ1aS1zdGF0ZS1kaXNhYmxlZCIgKTsKCQkJfQoJCX0KCgkJdGhpcy5vcHRpb25zLmRpc2FibGVkID0gZGlzYWJsZWQ7CgoJCXRoaXMuX3RvZ2dsZUNsYXNzKCB0aGlzLndpZGdldCgpLCB0aGlzLndpZGdldEZ1bGxOYW1lICsgIi1kaXNhYmxlZCIsIG51bGwsCgkJCWRpc2FibGVkID09PSB0cnVlICk7Cgl9LAoKCV9zZXR1cEV2ZW50czogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXZhciBldmVudHMgPSB7fTsKCQlpZiAoIGV2ZW50ICkgewoJCQkkLmVhY2goIGV2ZW50LnNwbGl0KCAiICIgKSwgZnVuY3Rpb24oIGluZGV4LCBldmVudE5hbWUgKSB7CgkJCQlldmVudHNbIGV2ZW50TmFtZSBdID0gIl9ldmVudEhhbmRsZXIiOwoJCQl9ICk7CgkJfQoKCQl0aGlzLl9vZmYoIHRoaXMuYW5jaG9ycy5hZGQoIHRoaXMudGFicyApLmFkZCggdGhpcy5wYW5lbHMgKSApOwoKCQkvLyBBbHdheXMgcHJldmVudCB0aGUgZGVmYXVsdCBhY3Rpb24sIGV2ZW4gd2hlbiBkaXNhYmxlZAoJCXRoaXMuX29uKCB0cnVlLCB0aGlzLmFuY2hvcnMsIHsKCQkJY2xpY2s6IGZ1bmN0aW9uKCBldmVudCApIHsKCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCX0KCQl9ICk7CgkJdGhpcy5fb24oIHRoaXMuYW5jaG9ycywgZXZlbnRzICk7CgkJdGhpcy5fb24oIHRoaXMudGFicywgeyBrZXlkb3duOiAiX3RhYktleWRvd24iIH0gKTsKCQl0aGlzLl9vbiggdGhpcy5wYW5lbHMsIHsga2V5ZG93bjogIl9wYW5lbEtleWRvd24iIH0gKTsKCgkJdGhpcy5fZm9jdXNhYmxlKCB0aGlzLnRhYnMgKTsKCQl0aGlzLl9ob3ZlcmFibGUoIHRoaXMudGFicyApOwoJfSwKCglfc2V0dXBIZWlnaHRTdHlsZTogZnVuY3Rpb24oIGhlaWdodFN0eWxlICkgewoJCXZhciBtYXhIZWlnaHQsCgkJCXBhcmVudCA9IHRoaXMuZWxlbWVudC5wYXJlbnQoKTsKCgkJaWYgKCBoZWlnaHRTdHlsZSA9PT0gImZpbGwiICkgewoJCQltYXhIZWlnaHQgPSBwYXJlbnQuaGVpZ2h0KCk7CgkJCW1heEhlaWdodCAtPSB0aGlzLmVsZW1lbnQub3V0ZXJIZWlnaHQoKSAtIHRoaXMuZWxlbWVudC5oZWlnaHQoKTsKCgkJCXRoaXMuZWxlbWVudC5zaWJsaW5ncyggIjp2aXNpYmxlIiApLmVhY2goIGZ1bmN0aW9uKCkgewoJCQkJdmFyIGVsZW0gPSAkKCB0aGlzICksCgkJCQkJcG9zaXRpb24gPSBlbGVtLmNzcyggInBvc2l0aW9uIiApOwoKCQkJCWlmICggcG9zaXRpb24gPT09ICJhYnNvbHV0ZSIgfHwgcG9zaXRpb24gPT09ICJmaXhlZCIgKSB7CgkJCQkJcmV0dXJuOwoJCQkJfQoJCQkJbWF4SGVpZ2h0IC09IGVsZW0ub3V0ZXJIZWlnaHQoIHRydWUgKTsKCQkJfSApOwoKCQkJdGhpcy5lbGVtZW50LmNoaWxkcmVuKCkubm90KCB0aGlzLnBhbmVscyApLmVhY2goIGZ1bmN0aW9uKCkgewoJCQkJbWF4SGVpZ2h0IC09ICQoIHRoaXMgKS5vdXRlckhlaWdodCggdHJ1ZSApOwoJCQl9ICk7CgoJCQl0aGlzLnBhbmVscy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCSQoIHRoaXMgKS5oZWlnaHQoIE1hdGgubWF4KCAwLCBtYXhIZWlnaHQgLQoJCQkJCSQoIHRoaXMgKS5pbm5lckhlaWdodCgpICsgJCggdGhpcyApLmhlaWdodCgpICkgKTsKCQkJfSApCgkJCQkuY3NzKCAib3ZlcmZsb3ciLCAiYXV0byIgKTsKCQl9IGVsc2UgaWYgKCBoZWlnaHRTdHlsZSA9PT0gImF1dG8iICkgewoJCQltYXhIZWlnaHQgPSAwOwoJCQl0aGlzLnBhbmVscy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCW1heEhlaWdodCA9IE1hdGgubWF4KCBtYXhIZWlnaHQsICQoIHRoaXMgKS5oZWlnaHQoICIiICkuaGVpZ2h0KCkgKTsKCQkJfSApLmhlaWdodCggbWF4SGVpZ2h0ICk7CgkJfQoJfSwKCglfZXZlbnRIYW5kbGVyOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdmFyIG9wdGlvbnMgPSB0aGlzLm9wdGlvbnMsCgkJCWFjdGl2ZSA9IHRoaXMuYWN0aXZlLAoJCQlhbmNob3IgPSAkKCBldmVudC5jdXJyZW50VGFyZ2V0ICksCgkJCXRhYiA9IGFuY2hvci5jbG9zZXN0KCAibGkiICksCgkJCWNsaWNrZWRJc0FjdGl2ZSA9IHRhYlsgMCBdID09PSBhY3RpdmVbIDAgXSwKCQkJY29sbGFwc2luZyA9IGNsaWNrZWRJc0FjdGl2ZSAmJiBvcHRpb25zLmNvbGxhcHNpYmxlLAoJCQl0b1Nob3cgPSBjb2xsYXBzaW5nID8gJCgpIDogdGhpcy5fZ2V0UGFuZWxGb3JUYWIoIHRhYiApLAoJCQl0b0hpZGUgPSAhYWN0aXZlLmxlbmd0aCA/ICQoKSA6IHRoaXMuX2dldFBhbmVsRm9yVGFiKCBhY3RpdmUgKSwKCQkJZXZlbnREYXRhID0gewoJCQkJb2xkVGFiOiBhY3RpdmUsCgkJCQlvbGRQYW5lbDogdG9IaWRlLAoJCQkJbmV3VGFiOiBjb2xsYXBzaW5nID8gJCgpIDogdGFiLAoJCQkJbmV3UGFuZWw6IHRvU2hvdwoJCQl9OwoKCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOwoKCQlpZiAoIHRhYi5oYXNDbGFzcyggInVpLXN0YXRlLWRpc2FibGVkIiApIHx8CgoJCQkJLy8gdGFiIGlzIGFscmVhZHkgbG9hZGluZwoJCQkJdGFiLmhhc0NsYXNzKCAidWktdGFicy1sb2FkaW5nIiApIHx8CgoJCQkJLy8gY2FuJ3Qgc3dpdGNoIGR1cm5pbmcgYW4gYW5pbWF0aW9uCgkJCQl0aGlzLnJ1bm5pbmcgfHwKCgkJCQkvLyBjbGljayBvbiBhY3RpdmUgaGVhZGVyLCBidXQgbm90IGNvbGxhcHNpYmxlCgkJCQkoIGNsaWNrZWRJc0FjdGl2ZSAmJiAhb3B0aW9ucy5jb2xsYXBzaWJsZSApIHx8CgoJCQkJLy8gYWxsb3cgY2FuY2VsaW5nIGFjdGl2YXRpb24KCQkJCSggdGhpcy5fdHJpZ2dlciggImJlZm9yZUFjdGl2YXRlIiwgZXZlbnQsIGV2ZW50RGF0YSApID09PSBmYWxzZSApICkgewoJCQlyZXR1cm47CgkJfQoKCQlvcHRpb25zLmFjdGl2ZSA9IGNvbGxhcHNpbmcgPyBmYWxzZSA6IHRoaXMudGFicy5pbmRleCggdGFiICk7CgoJCXRoaXMuYWN0aXZlID0gY2xpY2tlZElzQWN0aXZlID8gJCgpIDogdGFiOwoJCWlmICggdGhpcy54aHIgKSB7CgkJCXRoaXMueGhyLmFib3J0KCk7CgkJfQoKCQlpZiAoICF0b0hpZGUubGVuZ3RoICYmICF0b1Nob3cubGVuZ3RoICkgewoJCQkkLmVycm9yKCAialF1ZXJ5IFVJIFRhYnM6IE1pc21hdGNoaW5nIGZyYWdtZW50IGlkZW50aWZpZXIuIiApOwoJCX0KCgkJaWYgKCB0b1Nob3cubGVuZ3RoICkgewoJCQl0aGlzLmxvYWQoIHRoaXMudGFicy5pbmRleCggdGFiICksIGV2ZW50ICk7CgkJfQoJCXRoaXMuX3RvZ2dsZSggZXZlbnQsIGV2ZW50RGF0YSApOwoJfSwKCgkvLyBIYW5kbGVzIHNob3cvaGlkZSBmb3Igc2VsZWN0aW5nIHRhYnMKCV90b2dnbGU6IGZ1bmN0aW9uKCBldmVudCwgZXZlbnREYXRhICkgewoJCXZhciB0aGF0ID0gdGhpcywKCQkJdG9TaG93ID0gZXZlbnREYXRhLm5ld1BhbmVsLAoJCQl0b0hpZGUgPSBldmVudERhdGEub2xkUGFuZWw7CgoJCXRoaXMucnVubmluZyA9IHRydWU7CgoJCWZ1bmN0aW9uIGNvbXBsZXRlKCkgewoJCQl0aGF0LnJ1bm5pbmcgPSBmYWxzZTsKCQkJdGhhdC5fdHJpZ2dlciggImFjdGl2YXRlIiwgZXZlbnQsIGV2ZW50RGF0YSApOwoJCX0KCgkJZnVuY3Rpb24gc2hvdygpIHsKCQkJdGhhdC5fYWRkQ2xhc3MoIGV2ZW50RGF0YS5uZXdUYWIuY2xvc2VzdCggImxpIiApLCAidWktdGFicy1hY3RpdmUiLCAidWktc3RhdGUtYWN0aXZlIiApOwoKCQkJaWYgKCB0b1Nob3cubGVuZ3RoICYmIHRoYXQub3B0aW9ucy5zaG93ICkgewoJCQkJdGhhdC5fc2hvdyggdG9TaG93LCB0aGF0Lm9wdGlvbnMuc2hvdywgY29tcGxldGUgKTsKCQkJfSBlbHNlIHsKCQkJCXRvU2hvdy5zaG93KCk7CgkJCQljb21wbGV0ZSgpOwoJCQl9CgkJfQoKCQkvLyBTdGFydCBvdXQgYnkgaGlkaW5nLCB0aGVuIHNob3dpbmcsIHRoZW4gY29tcGxldGluZwoJCWlmICggdG9IaWRlLmxlbmd0aCAmJiB0aGlzLm9wdGlvbnMuaGlkZSApIHsKCQkJdGhpcy5faGlkZSggdG9IaWRlLCB0aGlzLm9wdGlvbnMuaGlkZSwgZnVuY3Rpb24oKSB7CgkJCQl0aGF0Ll9yZW1vdmVDbGFzcyggZXZlbnREYXRhLm9sZFRhYi5jbG9zZXN0KCAibGkiICksCgkJCQkJInVpLXRhYnMtYWN0aXZlIiwgInVpLXN0YXRlLWFjdGl2ZSIgKTsKCQkJCXNob3coKTsKCQkJfSApOwoJCX0gZWxzZSB7CgkJCXRoaXMuX3JlbW92ZUNsYXNzKCBldmVudERhdGEub2xkVGFiLmNsb3Nlc3QoICJsaSIgKSwKCQkJCSJ1aS10YWJzLWFjdGl2ZSIsICJ1aS1zdGF0ZS1hY3RpdmUiICk7CgkJCXRvSGlkZS5oaWRlKCk7CgkJCXNob3coKTsKCQl9CgoJCXRvSGlkZS5hdHRyKCAiYXJpYS1oaWRkZW4iLCAidHJ1ZSIgKTsKCQlldmVudERhdGEub2xkVGFiLmF0dHIoIHsKCQkJImFyaWEtc2VsZWN0ZWQiOiAiZmFsc2UiLAoJCQkiYXJpYS1leHBhbmRlZCI6ICJmYWxzZSIKCQl9ICk7CgoJCS8vIElmIHdlJ3JlIHN3aXRjaGluZyB0YWJzLCByZW1vdmUgdGhlIG9sZCB0YWIgZnJvbSB0aGUgdGFiIG9yZGVyLgoJCS8vIElmIHdlJ3JlIG9wZW5pbmcgZnJvbSBjb2xsYXBzZWQgc3RhdGUsIHJlbW92ZSB0aGUgcHJldmlvdXMgdGFiIGZyb20gdGhlIHRhYiBvcmRlci4KCQkvLyBJZiB3ZSdyZSBjb2xsYXBzaW5nLCB0aGVuIGtlZXAgdGhlIGNvbGxhcHNpbmcgdGFiIGluIHRoZSB0YWIgb3JkZXIuCgkJaWYgKCB0b1Nob3cubGVuZ3RoICYmIHRvSGlkZS5sZW5ndGggKSB7CgkJCWV2ZW50RGF0YS5vbGRUYWIuYXR0ciggInRhYkluZGV4IiwgLTEgKTsKCQl9IGVsc2UgaWYgKCB0b1Nob3cubGVuZ3RoICkgewoJCQl0aGlzLnRhYnMuZmlsdGVyKCBmdW5jdGlvbigpIHsKCQkJCXJldHVybiAkKCB0aGlzICkuYXR0ciggInRhYkluZGV4IiApID09PSAwOwoJCQl9ICkKCQkJCS5hdHRyKCAidGFiSW5kZXgiLCAtMSApOwoJCX0KCgkJdG9TaG93LmF0dHIoICJhcmlhLWhpZGRlbiIsICJmYWxzZSIgKTsKCQlldmVudERhdGEubmV3VGFiLmF0dHIoIHsKCQkJImFyaWEtc2VsZWN0ZWQiOiAidHJ1ZSIsCgkJCSJhcmlhLWV4cGFuZGVkIjogInRydWUiLAoJCQl0YWJJbmRleDogMAoJCX0gKTsKCX0sCgoJX2FjdGl2YXRlOiBmdW5jdGlvbiggaW5kZXggKSB7CgkJdmFyIGFuY2hvciwKCQkJYWN0aXZlID0gdGhpcy5fZmluZEFjdGl2ZSggaW5kZXggKTsKCgkJLy8gVHJ5aW5nIHRvIGFjdGl2YXRlIHRoZSBhbHJlYWR5IGFjdGl2ZSBwYW5lbAoJCWlmICggYWN0aXZlWyAwIF0gPT09IHRoaXMuYWN0aXZlWyAwIF0gKSB7CgkJCXJldHVybjsKCQl9CgoJCS8vIFRyeWluZyB0byBjb2xsYXBzZSwgc2ltdWxhdGUgYSBjbGljayBvbiB0aGUgY3VycmVudCBhY3RpdmUgaGVhZGVyCgkJaWYgKCAhYWN0aXZlLmxlbmd0aCApIHsKCQkJYWN0aXZlID0gdGhpcy5hY3RpdmU7CgkJfQoKCQlhbmNob3IgPSBhY3RpdmUuZmluZCggIi51aS10YWJzLWFuY2hvciIgKVsgMCBdOwoJCXRoaXMuX2V2ZW50SGFuZGxlciggewoJCQl0YXJnZXQ6IGFuY2hvciwKCQkJY3VycmVudFRhcmdldDogYW5jaG9yLAoJCQlwcmV2ZW50RGVmYXVsdDogJC5ub29wCgkJfSApOwoJfSwKCglfZmluZEFjdGl2ZTogZnVuY3Rpb24oIGluZGV4ICkgewoJCXJldHVybiBpbmRleCA9PT0gZmFsc2UgPyAkKCkgOiB0aGlzLnRhYnMuZXEoIGluZGV4ICk7Cgl9LAoKCV9nZXRJbmRleDogZnVuY3Rpb24oIGluZGV4ICkgewoKCQkvLyBtZXRhLWZ1bmN0aW9uIHRvIGdpdmUgdXNlcnMgb3B0aW9uIHRvIHByb3ZpZGUgYSBocmVmIHN0cmluZyBpbnN0ZWFkIG9mIGEgbnVtZXJpY2FsIGluZGV4LgoJCWlmICggdHlwZW9mIGluZGV4ID09PSAic3RyaW5nIiApIHsKCQkJaW5kZXggPSB0aGlzLmFuY2hvcnMuaW5kZXgoIHRoaXMuYW5jaG9ycy5maWx0ZXIoICJbaHJlZiQ9JyIgKwoJCQkJJC51aS5lc2NhcGVTZWxlY3RvciggaW5kZXggKSArICInXSIgKSApOwoJCX0KCgkJcmV0dXJuIGluZGV4OwoJfSwKCglfZGVzdHJveTogZnVuY3Rpb24oKSB7CgkJaWYgKCB0aGlzLnhociApIHsKCQkJdGhpcy54aHIuYWJvcnQoKTsKCQl9CgoJCXRoaXMudGFibGlzdAoJCQkucmVtb3ZlQXR0ciggInJvbGUiICkKCQkJLm9mZiggdGhpcy5ldmVudE5hbWVzcGFjZSApOwoKCQl0aGlzLmFuY2hvcnMKCQkJLnJlbW92ZUF0dHIoICJyb2xlIHRhYkluZGV4IiApCgkJCS5yZW1vdmVVbmlxdWVJZCgpOwoKCQl0aGlzLnRhYnMuYWRkKCB0aGlzLnBhbmVscyApLmVhY2goIGZ1bmN0aW9uKCkgewoJCQlpZiAoICQuZGF0YSggdGhpcywgInVpLXRhYnMtZGVzdHJveSIgKSApIHsKCQkJCSQoIHRoaXMgKS5yZW1vdmUoKTsKCQkJfSBlbHNlIHsKCQkJCSQoIHRoaXMgKS5yZW1vdmVBdHRyKCAicm9sZSB0YWJJbmRleCAiICsKCQkJCQkiYXJpYS1saXZlIGFyaWEtYnVzeSBhcmlhLXNlbGVjdGVkIGFyaWEtbGFiZWxsZWRieSBhcmlhLWhpZGRlbiBhcmlhLWV4cGFuZGVkIiApOwoJCQl9CgkJfSApOwoKCQl0aGlzLnRhYnMuZWFjaCggZnVuY3Rpb24oKSB7CgkJCXZhciBsaSA9ICQoIHRoaXMgKSwKCQkJCXByZXYgPSBsaS5kYXRhKCAidWktdGFicy1hcmlhLWNvbnRyb2xzIiApOwoJCQlpZiAoIHByZXYgKSB7CgkJCQlsaQoJCQkJCS5hdHRyKCAiYXJpYS1jb250cm9scyIsIHByZXYgKQoJCQkJCS5yZW1vdmVEYXRhKCAidWktdGFicy1hcmlhLWNvbnRyb2xzIiApOwoJCQl9IGVsc2UgewoJCQkJbGkucmVtb3ZlQXR0ciggImFyaWEtY29udHJvbHMiICk7CgkJCX0KCQl9ICk7CgoJCXRoaXMucGFuZWxzLnNob3coKTsKCgkJaWYgKCB0aGlzLm9wdGlvbnMuaGVpZ2h0U3R5bGUgIT09ICJjb250ZW50IiApIHsKCQkJdGhpcy5wYW5lbHMuY3NzKCAiaGVpZ2h0IiwgIiIgKTsKCQl9Cgl9LAoKCWVuYWJsZTogZnVuY3Rpb24oIGluZGV4ICkgewoJCXZhciBkaXNhYmxlZCA9IHRoaXMub3B0aW9ucy5kaXNhYmxlZDsKCQlpZiAoIGRpc2FibGVkID09PSBmYWxzZSApIHsKCQkJcmV0dXJuOwoJCX0KCgkJaWYgKCBpbmRleCA9PT0gdW5kZWZpbmVkICkgewoJCQlkaXNhYmxlZCA9IGZhbHNlOwoJCX0gZWxzZSB7CgkJCWluZGV4ID0gdGhpcy5fZ2V0SW5kZXgoIGluZGV4ICk7CgkJCWlmICggJC5pc0FycmF5KCBkaXNhYmxlZCApICkgewoJCQkJZGlzYWJsZWQgPSAkLm1hcCggZGlzYWJsZWQsIGZ1bmN0aW9uKCBudW0gKSB7CgkJCQkJcmV0dXJuIG51bSAhPT0gaW5kZXggPyBudW0gOiBudWxsOwoJCQkJfSApOwoJCQl9IGVsc2UgewoJCQkJZGlzYWJsZWQgPSAkLm1hcCggdGhpcy50YWJzLCBmdW5jdGlvbiggbGksIG51bSApIHsKCQkJCQlyZXR1cm4gbnVtICE9PSBpbmRleCA/IG51bSA6IG51bGw7CgkJCQl9ICk7CgkJCX0KCQl9CgkJdGhpcy5fc2V0T3B0aW9uRGlzYWJsZWQoIGRpc2FibGVkICk7Cgl9LAoKCWRpc2FibGU6IGZ1bmN0aW9uKCBpbmRleCApIHsKCQl2YXIgZGlzYWJsZWQgPSB0aGlzLm9wdGlvbnMuZGlzYWJsZWQ7CgkJaWYgKCBkaXNhYmxlZCA9PT0gdHJ1ZSApIHsKCQkJcmV0dXJuOwoJCX0KCgkJaWYgKCBpbmRleCA9PT0gdW5kZWZpbmVkICkgewoJCQlkaXNhYmxlZCA9IHRydWU7CgkJfSBlbHNlIHsKCQkJaW5kZXggPSB0aGlzLl9nZXRJbmRleCggaW5kZXggKTsKCQkJaWYgKCAkLmluQXJyYXkoIGluZGV4LCBkaXNhYmxlZCApICE9PSAtMSApIHsKCQkJCXJldHVybjsKCQkJfQoJCQlpZiAoICQuaXNBcnJheSggZGlzYWJsZWQgKSApIHsKCQkJCWRpc2FibGVkID0gJC5tZXJnZSggWyBpbmRleCBdLCBkaXNhYmxlZCApLnNvcnQoKTsKCQkJfSBlbHNlIHsKCQkJCWRpc2FibGVkID0gWyBpbmRleCBdOwoJCQl9CgkJfQoJCXRoaXMuX3NldE9wdGlvbkRpc2FibGVkKCBkaXNhYmxlZCApOwoJfSwKCglsb2FkOiBmdW5jdGlvbiggaW5kZXgsIGV2ZW50ICkgewoJCWluZGV4ID0gdGhpcy5fZ2V0SW5kZXgoIGluZGV4ICk7CgkJdmFyIHRoYXQgPSB0aGlzLAoJCQl0YWIgPSB0aGlzLnRhYnMuZXEoIGluZGV4ICksCgkJCWFuY2hvciA9IHRhYi5maW5kKCAiLnVpLXRhYnMtYW5jaG9yIiApLAoJCQlwYW5lbCA9IHRoaXMuX2dldFBhbmVsRm9yVGFiKCB0YWIgKSwKCQkJZXZlbnREYXRhID0gewoJCQkJdGFiOiB0YWIsCgkJCQlwYW5lbDogcGFuZWwKCQkJfSwKCQkJY29tcGxldGUgPSBmdW5jdGlvbigganFYSFIsIHN0YXR1cyApIHsKCQkJCWlmICggc3RhdHVzID09PSAiYWJvcnQiICkgewoJCQkJCXRoYXQucGFuZWxzLnN0b3AoIGZhbHNlLCB0cnVlICk7CgkJCQl9CgoJCQkJdGhhdC5fcmVtb3ZlQ2xhc3MoIHRhYiwgInVpLXRhYnMtbG9hZGluZyIgKTsKCQkJCXBhbmVsLnJlbW92ZUF0dHIoICJhcmlhLWJ1c3kiICk7CgoJCQkJaWYgKCBqcVhIUiA9PT0gdGhhdC54aHIgKSB7CgkJCQkJZGVsZXRlIHRoYXQueGhyOwoJCQkJfQoJCQl9OwoKCQkvLyBOb3QgcmVtb3RlCgkJaWYgKCB0aGlzLl9pc0xvY2FsKCBhbmNob3JbIDAgXSApICkgewoJCQlyZXR1cm47CgkJfQoKCQl0aGlzLnhociA9ICQuYWpheCggdGhpcy5fYWpheFNldHRpbmdzKCBhbmNob3IsIGV2ZW50LCBldmVudERhdGEgKSApOwoKCQkvLyBTdXBwb3J0OiBqUXVlcnkgPDEuOAoJCS8vIGpRdWVyeSA8MS44IHJldHVybnMgZmFsc2UgaWYgdGhlIHJlcXVlc3QgaXMgY2FuY2VsZWQgaW4gYmVmb3JlU2VuZCwKCQkvLyBidXQgYXMgb2YgMS44LCAkLmFqYXgoKSBhbHdheXMgcmV0dXJucyBhIGpxWEhSIG9iamVjdC4KCQlpZiAoIHRoaXMueGhyICYmIHRoaXMueGhyLnN0YXR1c1RleHQgIT09ICJjYW5jZWxlZCIgKSB7CgkJCXRoaXMuX2FkZENsYXNzKCB0YWIsICJ1aS10YWJzLWxvYWRpbmciICk7CgkJCXBhbmVsLmF0dHIoICJhcmlhLWJ1c3kiLCAidHJ1ZSIgKTsKCgkJCXRoaXMueGhyCgkJCQkuZG9uZSggZnVuY3Rpb24oIHJlc3BvbnNlLCBzdGF0dXMsIGpxWEhSICkgewoKCQkJCQkvLyBzdXBwb3J0OiBqUXVlcnkgPDEuOAoJCQkJCS8vIGh0dHA6Ly9idWdzLmpxdWVyeS5jb20vdGlja2V0LzExNzc4CgkJCQkJc2V0VGltZW91dCggZnVuY3Rpb24oKSB7CgkJCQkJCXBhbmVsLmh0bWwoIHJlc3BvbnNlICk7CgkJCQkJCXRoYXQuX3RyaWdnZXIoICJsb2FkIiwgZXZlbnQsIGV2ZW50RGF0YSApOwoKCQkJCQkJY29tcGxldGUoIGpxWEhSLCBzdGF0dXMgKTsKCQkJCQl9LCAxICk7CgkJCQl9ICkKCQkJCS5mYWlsKCBmdW5jdGlvbigganFYSFIsIHN0YXR1cyApIHsKCgkJCQkJLy8gc3VwcG9ydDogalF1ZXJ5IDwxLjgKCQkJCQkvLyBodHRwOi8vYnVncy5qcXVlcnkuY29tL3RpY2tldC8xMTc3OAoJCQkJCXNldFRpbWVvdXQoIGZ1bmN0aW9uKCkgewoJCQkJCQljb21wbGV0ZSgganFYSFIsIHN0YXR1cyApOwoJCQkJCX0sIDEgKTsKCQkJCX0gKTsKCQl9Cgl9LAoKCV9hamF4U2V0dGluZ3M6IGZ1bmN0aW9uKCBhbmNob3IsIGV2ZW50LCBldmVudERhdGEgKSB7CgkJdmFyIHRoYXQgPSB0aGlzOwoJCXJldHVybiB7CgoJCQkvLyBTdXBwb3J0OiBJRSA8MTEgb25seQoJCQkvLyBTdHJpcCBhbnkgaGFzaCB0aGF0IGV4aXN0cyB0byBwcmV2ZW50IGVycm9ycyB3aXRoIHRoZSBBamF4IHJlcXVlc3QKCQkJdXJsOiBhbmNob3IuYXR0ciggImhyZWYiICkucmVwbGFjZSggLyMuKiQvLCAiIiApLAoJCQliZWZvcmVTZW5kOiBmdW5jdGlvbigganFYSFIsIHNldHRpbmdzICkgewoJCQkJcmV0dXJuIHRoYXQuX3RyaWdnZXIoICJiZWZvcmVMb2FkIiwgZXZlbnQsCgkJCQkJJC5leHRlbmQoIHsganFYSFI6IGpxWEhSLCBhamF4U2V0dGluZ3M6IHNldHRpbmdzIH0sIGV2ZW50RGF0YSApICk7CgkJCX0KCQl9OwoJfSwKCglfZ2V0UGFuZWxGb3JUYWI6IGZ1bmN0aW9uKCB0YWIgKSB7CgkJdmFyIGlkID0gJCggdGFiICkuYXR0ciggImFyaWEtY29udHJvbHMiICk7CgkJcmV0dXJuIHRoaXMuZWxlbWVudC5maW5kKCB0aGlzLl9zYW5pdGl6ZVNlbGVjdG9yKCAiIyIgKyBpZCApICk7Cgl9Cn0gKTsKCi8vIERFUFJFQ0FURUQKLy8gVE9ETzogU3dpdGNoIHJldHVybiBiYWNrIHRvIHdpZGdldCBkZWNsYXJhdGlvbiBhdCB0b3Agb2YgZmlsZSB3aGVuIHRoaXMgaXMgcmVtb3ZlZAppZiAoICQudWlCYWNrQ29tcGF0ICE9PSBmYWxzZSApIHsKCgkvLyBCYWNrY29tcGF0IGZvciB1aS10YWIgY2xhc3MgKG5vdyB1aS10YWJzLXRhYikKCSQud2lkZ2V0KCAidWkudGFicyIsICQudWkudGFicywgewoJCV9wcm9jZXNzVGFiczogZnVuY3Rpb24oKSB7CgkJCXRoaXMuX3N1cGVyQXBwbHkoIGFyZ3VtZW50cyApOwoJCQl0aGlzLl9hZGRDbGFzcyggdGhpcy50YWJzLCAidWktdGFiIiApOwoJCX0KCX0gKTsKfQoKdmFyIHdpZGdldHNUYWJzID0gJC51aS50YWJzOwoKCi8qIQogKiBqUXVlcnkgVUkgVG9vbHRpcCAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IFRvb2x0aXAKLy8+Pmdyb3VwOiBXaWRnZXRzCi8vPj5kZXNjcmlwdGlvbjogU2hvd3MgYWRkaXRpb25hbCBpbmZvcm1hdGlvbiBmb3IgYW55IGVsZW1lbnQgb24gaG92ZXIgb3IgZm9jdXMuCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS90b29sdGlwLwovLz4+ZGVtb3M6IGh0dHA6Ly9qcXVlcnl1aS5jb20vdG9vbHRpcC8KLy8+PmNzcy5zdHJ1Y3R1cmU6IC4uLy4uL3RoZW1lcy9iYXNlL2NvcmUuY3NzCi8vPj5jc3Muc3RydWN0dXJlOiAuLi8uLi90aGVtZXMvYmFzZS90b29sdGlwLmNzcwovLz4+Y3NzLnRoZW1lOiAuLi8uLi90aGVtZXMvYmFzZS90aGVtZS5jc3MKCgoKJC53aWRnZXQoICJ1aS50b29sdGlwIiwgewoJdmVyc2lvbjogIjEuMTIuMSIsCglvcHRpb25zOiB7CgkJY2xhc3NlczogewoJCQkidWktdG9vbHRpcCI6ICJ1aS1jb3JuZXItYWxsIHVpLXdpZGdldC1zaGFkb3ciCgkJfSwKCQljb250ZW50OiBmdW5jdGlvbigpIHsKCgkJCS8vIHN1cHBvcnQ6IElFPDksIE9wZXJhIGluIGpRdWVyeSA8MS43CgkJCS8vIC50ZXh0KCkgY2FuJ3QgYWNjZXB0IHVuZGVmaW5lZCwgc28gY29lcmNlIHRvIGEgc3RyaW5nCgkJCXZhciB0aXRsZSA9ICQoIHRoaXMgKS5hdHRyKCAidGl0bGUiICkgfHwgIiI7CgoJCQkvLyBFc2NhcGUgdGl0bGUsIHNpbmNlIHdlJ3JlIGdvaW5nIGZyb20gYW4gYXR0cmlidXRlIHRvIHJhdyBIVE1MCgkJCXJldHVybiAkKCAiPGE+IiApLnRleHQoIHRpdGxlICkuaHRtbCgpOwoJCX0sCgkJaGlkZTogdHJ1ZSwKCgkJLy8gRGlzYWJsZWQgZWxlbWVudHMgaGF2ZSBpbmNvbnNpc3RlbnQgYmVoYXZpb3IgYWNyb3NzIGJyb3dzZXJzICgjODY2MSkKCQlpdGVtczogIlt0aXRsZV06bm90KFtkaXNhYmxlZF0pIiwKCQlwb3NpdGlvbjogewoJCQlteTogImxlZnQgdG9wKzE1IiwKCQkJYXQ6ICJsZWZ0IGJvdHRvbSIsCgkJCWNvbGxpc2lvbjogImZsaXBmaXQgZmxpcCIKCQl9LAoJCXNob3c6IHRydWUsCgkJdHJhY2s6IGZhbHNlLAoKCQkvLyBDYWxsYmFja3MKCQljbG9zZTogbnVsbCwKCQlvcGVuOiBudWxsCgl9LAoKCV9hZGREZXNjcmliZWRCeTogZnVuY3Rpb24oIGVsZW0sIGlkICkgewoJCXZhciBkZXNjcmliZWRieSA9ICggZWxlbS5hdHRyKCAiYXJpYS1kZXNjcmliZWRieSIgKSB8fCAiIiApLnNwbGl0KCAvXHMrLyApOwoJCWRlc2NyaWJlZGJ5LnB1c2goIGlkICk7CgkJZWxlbQoJCQkuZGF0YSggInVpLXRvb2x0aXAtaWQiLCBpZCApCgkJCS5hdHRyKCAiYXJpYS1kZXNjcmliZWRieSIsICQudHJpbSggZGVzY3JpYmVkYnkuam9pbiggIiAiICkgKSApOwoJfSwKCglfcmVtb3ZlRGVzY3JpYmVkQnk6IGZ1bmN0aW9uKCBlbGVtICkgewoJCXZhciBpZCA9IGVsZW0uZGF0YSggInVpLXRvb2x0aXAtaWQiICksCgkJCWRlc2NyaWJlZGJ5ID0gKCBlbGVtLmF0dHIoICJhcmlhLWRlc2NyaWJlZGJ5IiApIHx8ICIiICkuc3BsaXQoIC9ccysvICksCgkJCWluZGV4ID0gJC5pbkFycmF5KCBpZCwgZGVzY3JpYmVkYnkgKTsKCgkJaWYgKCBpbmRleCAhPT0gLTEgKSB7CgkJCWRlc2NyaWJlZGJ5LnNwbGljZSggaW5kZXgsIDEgKTsKCQl9CgoJCWVsZW0ucmVtb3ZlRGF0YSggInVpLXRvb2x0aXAtaWQiICk7CgkJZGVzY3JpYmVkYnkgPSAkLnRyaW0oIGRlc2NyaWJlZGJ5LmpvaW4oICIgIiApICk7CgkJaWYgKCBkZXNjcmliZWRieSApIHsKCQkJZWxlbS5hdHRyKCAiYXJpYS1kZXNjcmliZWRieSIsIGRlc2NyaWJlZGJ5ICk7CgkJfSBlbHNlIHsKCQkJZWxlbS5yZW1vdmVBdHRyKCAiYXJpYS1kZXNjcmliZWRieSIgKTsKCQl9Cgl9LAoKCV9jcmVhdGU6IGZ1bmN0aW9uKCkgewoJCXRoaXMuX29uKCB7CgkJCW1vdXNlb3ZlcjogIm9wZW4iLAoJCQlmb2N1c2luOiAib3BlbiIKCQl9ICk7CgoJCS8vIElEcyBvZiBnZW5lcmF0ZWQgdG9vbHRpcHMsIG5lZWRlZCBmb3IgZGVzdHJveQoJCXRoaXMudG9vbHRpcHMgPSB7fTsKCgkJLy8gSURzIG9mIHBhcmVudCB0b29sdGlwcyB3aGVyZSB3ZSByZW1vdmVkIHRoZSB0aXRsZSBhdHRyaWJ1dGUKCQl0aGlzLnBhcmVudHMgPSB7fTsKCgkJLy8gQXBwZW5kIHRoZSBhcmlhLWxpdmUgcmVnaW9uIHNvIHRvb2x0aXBzIGFubm91bmNlIGNvcnJlY3RseQoJCXRoaXMubGl2ZVJlZ2lvbiA9ICQoICI8ZGl2PiIgKQoJCQkuYXR0ciggewoJCQkJcm9sZTogImxvZyIsCgkJCQkiYXJpYS1saXZlIjogImFzc2VydGl2ZSIsCgkJCQkiYXJpYS1yZWxldmFudCI6ICJhZGRpdGlvbnMiCgkJCX0gKQoJCQkuYXBwZW5kVG8oIHRoaXMuZG9jdW1lbnRbIDAgXS5ib2R5ICk7CgkJdGhpcy5fYWRkQ2xhc3MoIHRoaXMubGl2ZVJlZ2lvbiwgbnVsbCwgInVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSIgKTsKCgkJdGhpcy5kaXNhYmxlZFRpdGxlcyA9ICQoIFtdICk7Cgl9LAoKCV9zZXRPcHRpb246IGZ1bmN0aW9uKCBrZXksIHZhbHVlICkgewoJCXZhciB0aGF0ID0gdGhpczsKCgkJdGhpcy5fc3VwZXIoIGtleSwgdmFsdWUgKTsKCgkJaWYgKCBrZXkgPT09ICJjb250ZW50IiApIHsKCQkJJC5lYWNoKCB0aGlzLnRvb2x0aXBzLCBmdW5jdGlvbiggaWQsIHRvb2x0aXBEYXRhICkgewoJCQkJdGhhdC5fdXBkYXRlQ29udGVudCggdG9vbHRpcERhdGEuZWxlbWVudCApOwoJCQl9ICk7CgkJfQoJfSwKCglfc2V0T3B0aW9uRGlzYWJsZWQ6IGZ1bmN0aW9uKCB2YWx1ZSApIHsKCQl0aGlzWyB2YWx1ZSA/ICJfZGlzYWJsZSIgOiAiX2VuYWJsZSIgXSgpOwoJfSwKCglfZGlzYWJsZTogZnVuY3Rpb24oKSB7CgkJdmFyIHRoYXQgPSB0aGlzOwoKCQkvLyBDbG9zZSBvcGVuIHRvb2x0aXBzCgkJJC5lYWNoKCB0aGlzLnRvb2x0aXBzLCBmdW5jdGlvbiggaWQsIHRvb2x0aXBEYXRhICkgewoJCQl2YXIgZXZlbnQgPSAkLkV2ZW50KCAiYmx1ciIgKTsKCQkJZXZlbnQudGFyZ2V0ID0gZXZlbnQuY3VycmVudFRhcmdldCA9IHRvb2x0aXBEYXRhLmVsZW1lbnRbIDAgXTsKCQkJdGhhdC5jbG9zZSggZXZlbnQsIHRydWUgKTsKCQl9ICk7CgoJCS8vIFJlbW92ZSB0aXRsZSBhdHRyaWJ1dGVzIHRvIHByZXZlbnQgbmF0aXZlIHRvb2x0aXBzCgkJdGhpcy5kaXNhYmxlZFRpdGxlcyA9IHRoaXMuZGlzYWJsZWRUaXRsZXMuYWRkKAoJCQl0aGlzLmVsZW1lbnQuZmluZCggdGhpcy5vcHRpb25zLml0ZW1zICkuYWRkQmFjaygpCgkJCQkuZmlsdGVyKCBmdW5jdGlvbigpIHsKCQkJCQl2YXIgZWxlbWVudCA9ICQoIHRoaXMgKTsKCQkJCQlpZiAoIGVsZW1lbnQuaXMoICJbdGl0bGVdIiApICkgewoJCQkJCQlyZXR1cm4gZWxlbWVudAoJCQkJCQkJLmRhdGEoICJ1aS10b29sdGlwLXRpdGxlIiwgZWxlbWVudC5hdHRyKCAidGl0bGUiICkgKQoJCQkJCQkJLnJlbW92ZUF0dHIoICJ0aXRsZSIgKTsKCQkJCQl9CgkJCQl9ICkKCQkpOwoJfSwKCglfZW5hYmxlOiBmdW5jdGlvbigpIHsKCgkJLy8gcmVzdG9yZSB0aXRsZSBhdHRyaWJ1dGVzCgkJdGhpcy5kaXNhYmxlZFRpdGxlcy5lYWNoKCBmdW5jdGlvbigpIHsKCQkJdmFyIGVsZW1lbnQgPSAkKCB0aGlzICk7CgkJCWlmICggZWxlbWVudC5kYXRhKCAidWktdG9vbHRpcC10aXRsZSIgKSApIHsKCQkJCWVsZW1lbnQuYXR0ciggInRpdGxlIiwgZWxlbWVudC5kYXRhKCAidWktdG9vbHRpcC10aXRsZSIgKSApOwoJCQl9CgkJfSApOwoJCXRoaXMuZGlzYWJsZWRUaXRsZXMgPSAkKCBbXSApOwoJfSwKCglvcGVuOiBmdW5jdGlvbiggZXZlbnQgKSB7CgkJdmFyIHRoYXQgPSB0aGlzLAoJCQl0YXJnZXQgPSAkKCBldmVudCA/IGV2ZW50LnRhcmdldCA6IHRoaXMuZWxlbWVudCApCgoJCQkJLy8gd2UgbmVlZCBjbG9zZXN0IGhlcmUgZHVlIHRvIG1vdXNlb3ZlciBidWJibGluZywKCQkJCS8vIGJ1dCBhbHdheXMgcG9pbnRpbmcgYXQgdGhlIHNhbWUgZXZlbnQgdGFyZ2V0CgkJCQkuY2xvc2VzdCggdGhpcy5vcHRpb25zLml0ZW1zICk7CgoJCS8vIE5vIGVsZW1lbnQgdG8gc2hvdyBhIHRvb2x0aXAgZm9yIG9yIHRoZSB0b29sdGlwIGlzIGFscmVhZHkgb3BlbgoJCWlmICggIXRhcmdldC5sZW5ndGggfHwgdGFyZ2V0LmRhdGEoICJ1aS10b29sdGlwLWlkIiApICkgewoJCQlyZXR1cm47CgkJfQoKCQlpZiAoIHRhcmdldC5hdHRyKCAidGl0bGUiICkgKSB7CgkJCXRhcmdldC5kYXRhKCAidWktdG9vbHRpcC10aXRsZSIsIHRhcmdldC5hdHRyKCAidGl0bGUiICkgKTsKCQl9CgoJCXRhcmdldC5kYXRhKCAidWktdG9vbHRpcC1vcGVuIiwgdHJ1ZSApOwoKCQkvLyBLaWxsIHBhcmVudCB0b29sdGlwcywgY3VzdG9tIG9yIG5hdGl2ZSwgZm9yIGhvdmVyCgkJaWYgKCBldmVudCAmJiBldmVudC50eXBlID09PSAibW91c2VvdmVyIiApIHsKCQkJdGFyZ2V0LnBhcmVudHMoKS5lYWNoKCBmdW5jdGlvbigpIHsKCQkJCXZhciBwYXJlbnQgPSAkKCB0aGlzICksCgkJCQkJYmx1ckV2ZW50OwoJCQkJaWYgKCBwYXJlbnQuZGF0YSggInVpLXRvb2x0aXAtb3BlbiIgKSApIHsKCQkJCQlibHVyRXZlbnQgPSAkLkV2ZW50KCAiYmx1ciIgKTsKCQkJCQlibHVyRXZlbnQudGFyZ2V0ID0gYmx1ckV2ZW50LmN1cnJlbnRUYXJnZXQgPSB0aGlzOwoJCQkJCXRoYXQuY2xvc2UoIGJsdXJFdmVudCwgdHJ1ZSApOwoJCQkJfQoJCQkJaWYgKCBwYXJlbnQuYXR0ciggInRpdGxlIiApICkgewoJCQkJCXBhcmVudC51bmlxdWVJZCgpOwoJCQkJCXRoYXQucGFyZW50c1sgdGhpcy5pZCBdID0gewoJCQkJCQllbGVtZW50OiB0aGlzLAoJCQkJCQl0aXRsZTogcGFyZW50LmF0dHIoICJ0aXRsZSIgKQoJCQkJCX07CgkJCQkJcGFyZW50LmF0dHIoICJ0aXRsZSIsICIiICk7CgkJCQl9CgkJCX0gKTsKCQl9CgoJCXRoaXMuX3JlZ2lzdGVyQ2xvc2VIYW5kbGVycyggZXZlbnQsIHRhcmdldCApOwoJCXRoaXMuX3VwZGF0ZUNvbnRlbnQoIHRhcmdldCwgZXZlbnQgKTsKCX0sCgoJX3VwZGF0ZUNvbnRlbnQ6IGZ1bmN0aW9uKCB0YXJnZXQsIGV2ZW50ICkgewoJCXZhciBjb250ZW50LAoJCQljb250ZW50T3B0aW9uID0gdGhpcy5vcHRpb25zLmNvbnRlbnQsCgkJCXRoYXQgPSB0aGlzLAoJCQlldmVudFR5cGUgPSBldmVudCA/IGV2ZW50LnR5cGUgOiBudWxsOwoKCQlpZiAoIHR5cGVvZiBjb250ZW50T3B0aW9uID09PSAic3RyaW5nIiB8fCBjb250ZW50T3B0aW9uLm5vZGVUeXBlIHx8CgkJCQljb250ZW50T3B0aW9uLmpxdWVyeSApIHsKCQkJcmV0dXJuIHRoaXMuX29wZW4oIGV2ZW50LCB0YXJnZXQsIGNvbnRlbnRPcHRpb24gKTsKCQl9CgoJCWNvbnRlbnQgPSBjb250ZW50T3B0aW9uLmNhbGwoIHRhcmdldFsgMCBdLCBmdW5jdGlvbiggcmVzcG9uc2UgKSB7CgoJCQkvLyBJRSBtYXkgaW5zdGFudGx5IHNlcnZlIGEgY2FjaGVkIHJlc3BvbnNlIGZvciBhamF4IHJlcXVlc3RzCgkJCS8vIGRlbGF5IHRoaXMgY2FsbCB0byBfb3BlbiBzbyB0aGUgb3RoZXIgY2FsbCB0byBfb3BlbiBydW5zIGZpcnN0CgkJCXRoYXQuX2RlbGF5KCBmdW5jdGlvbigpIHsKCgkJCQkvLyBJZ25vcmUgYXN5bmMgcmVzcG9uc2UgaWYgdG9vbHRpcCB3YXMgY2xvc2VkIGFscmVhZHkKCQkJCWlmICggIXRhcmdldC5kYXRhKCAidWktdG9vbHRpcC1vcGVuIiApICkgewoJCQkJCXJldHVybjsKCQkJCX0KCgkJCQkvLyBKUXVlcnkgY3JlYXRlcyBhIHNwZWNpYWwgZXZlbnQgZm9yIGZvY3VzaW4gd2hlbiBpdCBkb2Vzbid0CgkJCQkvLyBleGlzdCBuYXRpdmVseS4gVG8gaW1wcm92ZSBwZXJmb3JtYW5jZSwgdGhlIG5hdGl2ZSBldmVudAoJCQkJLy8gb2JqZWN0IGlzIHJldXNlZCBhbmQgdGhlIHR5cGUgaXMgY2hhbmdlZC4gVGhlcmVmb3JlLCB3ZSBjYW4ndAoJCQkJLy8gcmVseSBvbiB0aGUgdHlwZSBiZWluZyBjb3JyZWN0IGFmdGVyIHRoZSBldmVudCBmaW5pc2hlZAoJCQkJLy8gYnViYmxpbmcsIHNvIHdlIHNldCBpdCBiYWNrIHRvIHRoZSBwcmV2aW91cyB2YWx1ZS4gKCM4NzQwKQoJCQkJaWYgKCBldmVudCApIHsKCQkJCQlldmVudC50eXBlID0gZXZlbnRUeXBlOwoJCQkJfQoJCQkJdGhpcy5fb3BlbiggZXZlbnQsIHRhcmdldCwgcmVzcG9uc2UgKTsKCQkJfSApOwoJCX0gKTsKCQlpZiAoIGNvbnRlbnQgKSB7CgkJCXRoaXMuX29wZW4oIGV2ZW50LCB0YXJnZXQsIGNvbnRlbnQgKTsKCQl9Cgl9LAoKCV9vcGVuOiBmdW5jdGlvbiggZXZlbnQsIHRhcmdldCwgY29udGVudCApIHsKCQl2YXIgdG9vbHRpcERhdGEsIHRvb2x0aXAsIGRlbGF5ZWRTaG93LCBhMTF5Q29udGVudCwKCQkJcG9zaXRpb25PcHRpb24gPSAkLmV4dGVuZCgge30sIHRoaXMub3B0aW9ucy5wb3NpdGlvbiApOwoKCQlpZiAoICFjb250ZW50ICkgewoJCQlyZXR1cm47CgkJfQoKCQkvLyBDb250ZW50IGNhbiBiZSB1cGRhdGVkIG11bHRpcGxlIHRpbWVzLiBJZiB0aGUgdG9vbHRpcCBhbHJlYWR5CgkJLy8gZXhpc3RzLCB0aGVuIGp1c3QgdXBkYXRlIHRoZSBjb250ZW50IGFuZCBiYWlsLgoJCXRvb2x0aXBEYXRhID0gdGhpcy5fZmluZCggdGFyZ2V0ICk7CgkJaWYgKCB0b29sdGlwRGF0YSApIHsKCQkJdG9vbHRpcERhdGEudG9vbHRpcC5maW5kKCAiLnVpLXRvb2x0aXAtY29udGVudCIgKS5odG1sKCBjb250ZW50ICk7CgkJCXJldHVybjsKCQl9CgoJCS8vIElmIHdlIGhhdmUgYSB0aXRsZSwgY2xlYXIgaXQgdG8gcHJldmVudCB0aGUgbmF0aXZlIHRvb2x0aXAKCQkvLyB3ZSBoYXZlIHRvIGNoZWNrIGZpcnN0IHRvIGF2b2lkIGRlZmluaW5nIGEgdGl0bGUgaWYgbm9uZSBleGlzdHMKCQkvLyAod2UgZG9uJ3Qgd2FudCB0byBjYXVzZSBhbiBlbGVtZW50IHRvIHN0YXJ0IG1hdGNoaW5nIFt0aXRsZV0pCgkJLy8KCQkvLyBXZSB1c2UgcmVtb3ZlQXR0ciBvbmx5IGZvciBrZXkgZXZlbnRzLCB0byBhbGxvdyBJRSB0byBleHBvcnQgdGhlIGNvcnJlY3QKCQkvLyBhY2Nlc3NpYmxlIGF0dHJpYnV0ZXMuIEZvciBtb3VzZSBldmVudHMsIHNldCB0byBlbXB0eSBzdHJpbmcgdG8gYXZvaWQKCQkvLyBuYXRpdmUgdG9vbHRpcCBzaG93aW5nIHVwIChoYXBwZW5zIG9ubHkgd2hlbiByZW1vdmluZyBpbnNpZGUgbW91c2VvdmVyKS4KCQlpZiAoIHRhcmdldC5pcyggIlt0aXRsZV0iICkgKSB7CgkJCWlmICggZXZlbnQgJiYgZXZlbnQudHlwZSA9PT0gIm1vdXNlb3ZlciIgKSB7CgkJCQl0YXJnZXQuYXR0ciggInRpdGxlIiwgIiIgKTsKCQkJfSBlbHNlIHsKCQkJCXRhcmdldC5yZW1vdmVBdHRyKCAidGl0bGUiICk7CgkJCX0KCQl9CgoJCXRvb2x0aXBEYXRhID0gdGhpcy5fdG9vbHRpcCggdGFyZ2V0ICk7CgkJdG9vbHRpcCA9IHRvb2x0aXBEYXRhLnRvb2x0aXA7CgkJdGhpcy5fYWRkRGVzY3JpYmVkQnkoIHRhcmdldCwgdG9vbHRpcC5hdHRyKCAiaWQiICkgKTsKCQl0b29sdGlwLmZpbmQoICIudWktdG9vbHRpcC1jb250ZW50IiApLmh0bWwoIGNvbnRlbnQgKTsKCgkJLy8gU3VwcG9ydDogVm9pY2VvdmVyIG9uIE9TIFgsIEpBV1Mgb24gSUUgPD0gOQoJCS8vIEpBV1MgYW5ub3VuY2VzIGRlbGV0aW9ucyBldmVuIHdoZW4gYXJpYS1yZWxldmFudD0iYWRkaXRpb25zIgoJCS8vIFZvaWNlb3ZlciB3aWxsIHNvbWV0aW1lcyByZS1yZWFkIHRoZSBlbnRpcmUgbG9nIHJlZ2lvbidzIGNvbnRlbnRzIGZyb20gdGhlIGJlZ2lubmluZwoJCXRoaXMubGl2ZVJlZ2lvbi5jaGlsZHJlbigpLmhpZGUoKTsKCQlhMTF5Q29udGVudCA9ICQoICI8ZGl2PiIgKS5odG1sKCB0b29sdGlwLmZpbmQoICIudWktdG9vbHRpcC1jb250ZW50IiApLmh0bWwoKSApOwoJCWExMXlDb250ZW50LnJlbW92ZUF0dHIoICJuYW1lIiApLmZpbmQoICJbbmFtZV0iICkucmVtb3ZlQXR0ciggIm5hbWUiICk7CgkJYTExeUNvbnRlbnQucmVtb3ZlQXR0ciggImlkIiApLmZpbmQoICJbaWRdIiApLnJlbW92ZUF0dHIoICJpZCIgKTsKCQlhMTF5Q29udGVudC5hcHBlbmRUbyggdGhpcy5saXZlUmVnaW9uICk7CgoJCWZ1bmN0aW9uIHBvc2l0aW9uKCBldmVudCApIHsKCQkJcG9zaXRpb25PcHRpb24ub2YgPSBldmVudDsKCQkJaWYgKCB0b29sdGlwLmlzKCAiOmhpZGRlbiIgKSApIHsKCQkJCXJldHVybjsKCQkJfQoJCQl0b29sdGlwLnBvc2l0aW9uKCBwb3NpdGlvbk9wdGlvbiApOwoJCX0KCQlpZiAoIHRoaXMub3B0aW9ucy50cmFjayAmJiBldmVudCAmJiAvXm1vdXNlLy50ZXN0KCBldmVudC50eXBlICkgKSB7CgkJCXRoaXMuX29uKCB0aGlzLmRvY3VtZW50LCB7CgkJCQltb3VzZW1vdmU6IHBvc2l0aW9uCgkJCX0gKTsKCgkJCS8vIHRyaWdnZXIgb25jZSB0byBvdmVycmlkZSBlbGVtZW50LXJlbGF0aXZlIHBvc2l0aW9uaW5nCgkJCXBvc2l0aW9uKCBldmVudCApOwoJCX0gZWxzZSB7CgkJCXRvb2x0aXAucG9zaXRpb24oICQuZXh0ZW5kKCB7CgkJCQlvZjogdGFyZ2V0CgkJCX0sIHRoaXMub3B0aW9ucy5wb3NpdGlvbiApICk7CgkJfQoKCQl0b29sdGlwLmhpZGUoKTsKCgkJdGhpcy5fc2hvdyggdG9vbHRpcCwgdGhpcy5vcHRpb25zLnNob3cgKTsKCgkJLy8gSGFuZGxlIHRyYWNraW5nIHRvb2x0aXBzIHRoYXQgYXJlIHNob3duIHdpdGggYSBkZWxheSAoIzg2NDQpLiBBcyBzb29uCgkJLy8gYXMgdGhlIHRvb2x0aXAgaXMgdmlzaWJsZSwgcG9zaXRpb24gdGhlIHRvb2x0aXAgdXNpbmcgdGhlIG1vc3QgcmVjZW50CgkJLy8gZXZlbnQuCgkJLy8gQWRkcyB0aGUgY2hlY2sgdG8gYWRkIHRoZSB0aW1lcnMgb25seSB3aGVuIGJvdGggZGVsYXkgYW5kIHRyYWNrIG9wdGlvbnMgYXJlIHNldCAoIzE0NjgyKQoJCWlmICggdGhpcy5vcHRpb25zLnRyYWNrICYmIHRoaXMub3B0aW9ucy5zaG93ICYmIHRoaXMub3B0aW9ucy5zaG93LmRlbGF5ICkgewoJCQlkZWxheWVkU2hvdyA9IHRoaXMuZGVsYXllZFNob3cgPSBzZXRJbnRlcnZhbCggZnVuY3Rpb24oKSB7CgkJCQlpZiAoIHRvb2x0aXAuaXMoICI6dmlzaWJsZSIgKSApIHsKCQkJCQlwb3NpdGlvbiggcG9zaXRpb25PcHRpb24ub2YgKTsKCQkJCQljbGVhckludGVydmFsKCBkZWxheWVkU2hvdyApOwoJCQkJfQoJCQl9LCAkLmZ4LmludGVydmFsICk7CgkJfQoKCQl0aGlzLl90cmlnZ2VyKCAib3BlbiIsIGV2ZW50LCB7IHRvb2x0aXA6IHRvb2x0aXAgfSApOwoJfSwKCglfcmVnaXN0ZXJDbG9zZUhhbmRsZXJzOiBmdW5jdGlvbiggZXZlbnQsIHRhcmdldCApIHsKCQl2YXIgZXZlbnRzID0gewoJCQlrZXl1cDogZnVuY3Rpb24oIGV2ZW50ICkgewoJCQkJaWYgKCBldmVudC5rZXlDb2RlID09PSAkLnVpLmtleUNvZGUuRVNDQVBFICkgewoJCQkJCXZhciBmYWtlRXZlbnQgPSAkLkV2ZW50KCBldmVudCApOwoJCQkJCWZha2VFdmVudC5jdXJyZW50VGFyZ2V0ID0gdGFyZ2V0WyAwIF07CgkJCQkJdGhpcy5jbG9zZSggZmFrZUV2ZW50LCB0cnVlICk7CgkJCQl9CgkJCX0KCQl9OwoKCQkvLyBPbmx5IGJpbmQgcmVtb3ZlIGhhbmRsZXIgZm9yIGRlbGVnYXRlZCB0YXJnZXRzLiBOb24tZGVsZWdhdGVkCgkJLy8gdG9vbHRpcHMgd2lsbCBoYW5kbGUgdGhpcyBpbiBkZXN0cm95LgoJCWlmICggdGFyZ2V0WyAwIF0gIT09IHRoaXMuZWxlbWVudFsgMCBdICkgewoJCQlldmVudHMucmVtb3ZlID0gZnVuY3Rpb24oKSB7CgkJCQl0aGlzLl9yZW1vdmVUb29sdGlwKCB0aGlzLl9maW5kKCB0YXJnZXQgKS50b29sdGlwICk7CgkJCX07CgkJfQoKCQlpZiAoICFldmVudCB8fCBldmVudC50eXBlID09PSAibW91c2VvdmVyIiApIHsKCQkJZXZlbnRzLm1vdXNlbGVhdmUgPSAiY2xvc2UiOwoJCX0KCQlpZiAoICFldmVudCB8fCBldmVudC50eXBlID09PSAiZm9jdXNpbiIgKSB7CgkJCWV2ZW50cy5mb2N1c291dCA9ICJjbG9zZSI7CgkJfQoJCXRoaXMuX29uKCB0cnVlLCB0YXJnZXQsIGV2ZW50cyApOwoJfSwKCgljbG9zZTogZnVuY3Rpb24oIGV2ZW50ICkgewoJCXZhciB0b29sdGlwLAoJCQl0aGF0ID0gdGhpcywKCQkJdGFyZ2V0ID0gJCggZXZlbnQgPyBldmVudC5jdXJyZW50VGFyZ2V0IDogdGhpcy5lbGVtZW50ICksCgkJCXRvb2x0aXBEYXRhID0gdGhpcy5fZmluZCggdGFyZ2V0ICk7CgoJCS8vIFRoZSB0b29sdGlwIG1heSBhbHJlYWR5IGJlIGNsb3NlZAoJCWlmICggIXRvb2x0aXBEYXRhICkgewoKCQkJLy8gV2Ugc2V0IHVpLXRvb2x0aXAtb3BlbiBpbW1lZGlhdGVseSB1cG9uIG9wZW4gKGluIG9wZW4oKSksIGJ1dCBvbmx5IHNldCB0aGUKCQkJLy8gYWRkaXRpb25hbCBkYXRhIG9uY2UgdGhlcmUncyBhY3R1YWxseSBjb250ZW50IHRvIHNob3cgKGluIF9vcGVuKCkpLiBTbyBldmVuIGlmIHRoZQoJCQkvLyB0b29sdGlwIGRvZXNuJ3QgaGF2ZSBmdWxsIGRhdGEsIHdlIGFsd2F5cyByZW1vdmUgdWktdG9vbHRpcC1vcGVuIGluIGNhc2Ugd2UncmUgaW4KCQkJLy8gdGhlIHBlcmlvZCBiZXR3ZWVuIG9wZW4oKSBhbmQgX29wZW4oKS4KCQkJdGFyZ2V0LnJlbW92ZURhdGEoICJ1aS10b29sdGlwLW9wZW4iICk7CgkJCXJldHVybjsKCQl9CgoJCXRvb2x0aXAgPSB0b29sdGlwRGF0YS50b29sdGlwOwoKCQkvLyBEaXNhYmxpbmcgY2xvc2VzIHRoZSB0b29sdGlwLCBzbyB3ZSBuZWVkIHRvIHRyYWNrIHdoZW4gd2UncmUgY2xvc2luZwoJCS8vIHRvIGF2b2lkIGFuIGluZmluaXRlIGxvb3AgaW4gY2FzZSB0aGUgdG9vbHRpcCBiZWNvbWVzIGRpc2FibGVkIG9uIGNsb3NlCgkJaWYgKCB0b29sdGlwRGF0YS5jbG9zaW5nICkgewoJCQlyZXR1cm47CgkJfQoKCQkvLyBDbGVhciB0aGUgaW50ZXJ2YWwgZm9yIGRlbGF5ZWQgdHJhY2tpbmcgdG9vbHRpcHMKCQljbGVhckludGVydmFsKCB0aGlzLmRlbGF5ZWRTaG93ICk7CgoJCS8vIE9ubHkgc2V0IHRpdGxlIGlmIHdlIGhhZCBvbmUgYmVmb3JlIChzZWUgY29tbWVudCBpbiBfb3BlbigpKQoJCS8vIElmIHRoZSB0aXRsZSBhdHRyaWJ1dGUgaGFzIGNoYW5nZWQgc2luY2Ugb3BlbigpLCBkb24ndCByZXN0b3JlCgkJaWYgKCB0YXJnZXQuZGF0YSggInVpLXRvb2x0aXAtdGl0bGUiICkgJiYgIXRhcmdldC5hdHRyKCAidGl0bGUiICkgKSB7CgkJCXRhcmdldC5hdHRyKCAidGl0bGUiLCB0YXJnZXQuZGF0YSggInVpLXRvb2x0aXAtdGl0bGUiICkgKTsKCQl9CgoJCXRoaXMuX3JlbW92ZURlc2NyaWJlZEJ5KCB0YXJnZXQgKTsKCgkJdG9vbHRpcERhdGEuaGlkaW5nID0gdHJ1ZTsKCQl0b29sdGlwLnN0b3AoIHRydWUgKTsKCQl0aGlzLl9oaWRlKCB0b29sdGlwLCB0aGlzLm9wdGlvbnMuaGlkZSwgZnVuY3Rpb24oKSB7CgkJCXRoYXQuX3JlbW92ZVRvb2x0aXAoICQoIHRoaXMgKSApOwoJCX0gKTsKCgkJdGFyZ2V0LnJlbW92ZURhdGEoICJ1aS10b29sdGlwLW9wZW4iICk7CgkJdGhpcy5fb2ZmKCB0YXJnZXQsICJtb3VzZWxlYXZlIGZvY3Vzb3V0IGtleXVwIiApOwoKCQkvLyBSZW1vdmUgJ3JlbW92ZScgYmluZGluZyBvbmx5IG9uIGRlbGVnYXRlZCB0YXJnZXRzCgkJaWYgKCB0YXJnZXRbIDAgXSAhPT0gdGhpcy5lbGVtZW50WyAwIF0gKSB7CgkJCXRoaXMuX29mZiggdGFyZ2V0LCAicmVtb3ZlIiApOwoJCX0KCQl0aGlzLl9vZmYoIHRoaXMuZG9jdW1lbnQsICJtb3VzZW1vdmUiICk7CgoJCWlmICggZXZlbnQgJiYgZXZlbnQudHlwZSA9PT0gIm1vdXNlbGVhdmUiICkgewoJCQkkLmVhY2goIHRoaXMucGFyZW50cywgZnVuY3Rpb24oIGlkLCBwYXJlbnQgKSB7CgkJCQkkKCBwYXJlbnQuZWxlbWVudCApLmF0dHIoICJ0aXRsZSIsIHBhcmVudC50aXRsZSApOwoJCQkJZGVsZXRlIHRoYXQucGFyZW50c1sgaWQgXTsKCQkJfSApOwoJCX0KCgkJdG9vbHRpcERhdGEuY2xvc2luZyA9IHRydWU7CgkJdGhpcy5fdHJpZ2dlciggImNsb3NlIiwgZXZlbnQsIHsgdG9vbHRpcDogdG9vbHRpcCB9ICk7CgkJaWYgKCAhdG9vbHRpcERhdGEuaGlkaW5nICkgewoJCQl0b29sdGlwRGF0YS5jbG9zaW5nID0gZmFsc2U7CgkJfQoJfSwKCglfdG9vbHRpcDogZnVuY3Rpb24oIGVsZW1lbnQgKSB7CgkJdmFyIHRvb2x0aXAgPSAkKCAiPGRpdj4iICkuYXR0ciggInJvbGUiLCAidG9vbHRpcCIgKSwKCQkJY29udGVudCA9ICQoICI8ZGl2PiIgKS5hcHBlbmRUbyggdG9vbHRpcCApLAoJCQlpZCA9IHRvb2x0aXAudW5pcXVlSWQoKS5hdHRyKCAiaWQiICk7CgoJCXRoaXMuX2FkZENsYXNzKCBjb250ZW50LCAidWktdG9vbHRpcC1jb250ZW50IiApOwoJCXRoaXMuX2FkZENsYXNzKCB0b29sdGlwLCAidWktdG9vbHRpcCIsICJ1aS13aWRnZXQgdWktd2lkZ2V0LWNvbnRlbnQiICk7CgoJCXRvb2x0aXAuYXBwZW5kVG8oIHRoaXMuX2FwcGVuZFRvKCBlbGVtZW50ICkgKTsKCgkJcmV0dXJuIHRoaXMudG9vbHRpcHNbIGlkIF0gPSB7CgkJCWVsZW1lbnQ6IGVsZW1lbnQsCgkJCXRvb2x0aXA6IHRvb2x0aXAKCQl9OwoJfSwKCglfZmluZDogZnVuY3Rpb24oIHRhcmdldCApIHsKCQl2YXIgaWQgPSB0YXJnZXQuZGF0YSggInVpLXRvb2x0aXAtaWQiICk7CgkJcmV0dXJuIGlkID8gdGhpcy50b29sdGlwc1sgaWQgXSA6IG51bGw7Cgl9LAoKCV9yZW1vdmVUb29sdGlwOiBmdW5jdGlvbiggdG9vbHRpcCApIHsKCQl0b29sdGlwLnJlbW92ZSgpOwoJCWRlbGV0ZSB0aGlzLnRvb2x0aXBzWyB0b29sdGlwLmF0dHIoICJpZCIgKSBdOwoJfSwKCglfYXBwZW5kVG86IGZ1bmN0aW9uKCB0YXJnZXQgKSB7CgkJdmFyIGVsZW1lbnQgPSB0YXJnZXQuY2xvc2VzdCggIi51aS1mcm9udCwgZGlhbG9nIiApOwoKCQlpZiAoICFlbGVtZW50Lmxlbmd0aCApIHsKCQkJZWxlbWVudCA9IHRoaXMuZG9jdW1lbnRbIDAgXS5ib2R5OwoJCX0KCgkJcmV0dXJuIGVsZW1lbnQ7Cgl9LAoKCV9kZXN0cm95OiBmdW5jdGlvbigpIHsKCQl2YXIgdGhhdCA9IHRoaXM7CgoJCS8vIENsb3NlIG9wZW4gdG9vbHRpcHMKCQkkLmVhY2goIHRoaXMudG9vbHRpcHMsIGZ1bmN0aW9uKCBpZCwgdG9vbHRpcERhdGEgKSB7CgoJCQkvLyBEZWxlZ2F0ZSB0byBjbG9zZSBtZXRob2QgdG8gaGFuZGxlIGNvbW1vbiBjbGVhbnVwCgkJCXZhciBldmVudCA9ICQuRXZlbnQoICJibHVyIiApLAoJCQkJZWxlbWVudCA9IHRvb2x0aXBEYXRhLmVsZW1lbnQ7CgkJCWV2ZW50LnRhcmdldCA9IGV2ZW50LmN1cnJlbnRUYXJnZXQgPSBlbGVtZW50WyAwIF07CgkJCXRoYXQuY2xvc2UoIGV2ZW50LCB0cnVlICk7CgoJCQkvLyBSZW1vdmUgaW1tZWRpYXRlbHk7IGRlc3Ryb3lpbmcgYW4gb3BlbiB0b29sdGlwIGRvZXNuJ3QgdXNlIHRoZQoJCQkvLyBoaWRlIGFuaW1hdGlvbgoJCQkkKCAiIyIgKyBpZCApLnJlbW92ZSgpOwoKCQkJLy8gUmVzdG9yZSB0aGUgdGl0bGUKCQkJaWYgKCBlbGVtZW50LmRhdGEoICJ1aS10b29sdGlwLXRpdGxlIiApICkgewoKCQkJCS8vIElmIHRoZSB0aXRsZSBhdHRyaWJ1dGUgaGFzIGNoYW5nZWQgc2luY2Ugb3BlbigpLCBkb24ndCByZXN0b3JlCgkJCQlpZiAoICFlbGVtZW50LmF0dHIoICJ0aXRsZSIgKSApIHsKCQkJCQllbGVtZW50LmF0dHIoICJ0aXRsZSIsIGVsZW1lbnQuZGF0YSggInVpLXRvb2x0aXAtdGl0bGUiICkgKTsKCQkJCX0KCQkJCWVsZW1lbnQucmVtb3ZlRGF0YSggInVpLXRvb2x0aXAtdGl0bGUiICk7CgkJCX0KCQl9ICk7CgkJdGhpcy5saXZlUmVnaW9uLnJlbW92ZSgpOwoJfQp9ICk7CgovLyBERVBSRUNBVEVECi8vIFRPRE86IFN3aXRjaCByZXR1cm4gYmFjayB0byB3aWRnZXQgZGVjbGFyYXRpb24gYXQgdG9wIG9mIGZpbGUgd2hlbiB0aGlzIGlzIHJlbW92ZWQKaWYgKCAkLnVpQmFja0NvbXBhdCAhPT0gZmFsc2UgKSB7CgoJLy8gQmFja2NvbXBhdCBmb3IgdG9vbHRpcENsYXNzIG9wdGlvbgoJJC53aWRnZXQoICJ1aS50b29sdGlwIiwgJC51aS50b29sdGlwLCB7CgkJb3B0aW9uczogewoJCQl0b29sdGlwQ2xhc3M6IG51bGwKCQl9LAoJCV90b29sdGlwOiBmdW5jdGlvbigpIHsKCQkJdmFyIHRvb2x0aXBEYXRhID0gdGhpcy5fc3VwZXJBcHBseSggYXJndW1lbnRzICk7CgkJCWlmICggdGhpcy5vcHRpb25zLnRvb2x0aXBDbGFzcyApIHsKCQkJCXRvb2x0aXBEYXRhLnRvb2x0aXAuYWRkQ2xhc3MoIHRoaXMub3B0aW9ucy50b29sdGlwQ2xhc3MgKTsKCQkJfQoJCQlyZXR1cm4gdG9vbHRpcERhdGE7CgkJfQoJfSApOwp9Cgp2YXIgd2lkZ2V0c1Rvb2x0aXAgPSAkLnVpLnRvb2x0aXA7CgoKLyohCiAqIGpRdWVyeSBVSSBFZmZlY3RzIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogRWZmZWN0cyBDb3JlCi8vPj5ncm91cDogRWZmZWN0cwovLyBqc2NzOmRpc2FibGUgbWF4aW11bUxpbmVMZW5ndGgKLy8+PmRlc2NyaXB0aW9uOiBFeHRlbmRzIHRoZSBpbnRlcm5hbCBqUXVlcnkgZWZmZWN0cy4gSW5jbHVkZXMgbW9ycGhpbmcgYW5kIGVhc2luZy4gUmVxdWlyZWQgYnkgYWxsIG90aGVyIGVmZmVjdHMuCi8vIGpzY3M6ZW5hYmxlIG1heGltdW1MaW5lTGVuZ3RoCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9jYXRlZ29yeS9lZmZlY3RzLWNvcmUvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9lZmZlY3QvCgoKCnZhciBkYXRhU3BhY2UgPSAidWktZWZmZWN0cy0iLAoJZGF0YVNwYWNlU3R5bGUgPSAidWktZWZmZWN0cy1zdHlsZSIsCglkYXRhU3BhY2VBbmltYXRlZCA9ICJ1aS1lZmZlY3RzLWFuaW1hdGVkIiwKCgkvLyBDcmVhdGUgYSBsb2NhbCBqUXVlcnkgYmVjYXVzZSBqUXVlcnkgQ29sb3IgcmVsaWVzIG9uIGl0IGFuZCB0aGUKCS8vIGdsb2JhbCBtYXkgbm90IGV4aXN0IHdpdGggQU1EIGFuZCBhIGN1c3RvbSBidWlsZCAoIzEwMTk5KQoJalF1ZXJ5ID0gJDsKCiQuZWZmZWN0cyA9IHsKCWVmZmVjdDoge30KfTsKCi8qIQogKiBqUXVlcnkgQ29sb3IgQW5pbWF0aW9ucyB2Mi4xLjIKICogaHR0cHM6Ly9naXRodWIuY29tL2pxdWVyeS9qcXVlcnktY29sb3IKICoKICogQ29weXJpZ2h0IDIwMTQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICoKICogRGF0ZTogV2VkIEphbiAxNiAwODo0NzowOSAyMDEzIC0wNjAwCiAqLwooIGZ1bmN0aW9uKCBqUXVlcnksIHVuZGVmaW5lZCApIHsKCgl2YXIgc3RlcEhvb2tzID0gImJhY2tncm91bmRDb2xvciBib3JkZXJCb3R0b21Db2xvciBib3JkZXJMZWZ0Q29sb3IgYm9yZGVyUmlnaHRDb2xvciAiICsKCQkiYm9yZGVyVG9wQ29sb3IgY29sb3IgY29sdW1uUnVsZUNvbG9yIG91dGxpbmVDb2xvciB0ZXh0RGVjb3JhdGlvbkNvbG9yIHRleHRFbXBoYXNpc0NvbG9yIiwKCgkvLyBQbHVzZXF1YWxzIHRlc3QgZm9yICs9IDEwMCAtPSAxMDAKCXJwbHVzZXF1YWxzID0gL14oW1wtK10pPVxzKihcZCtcLj9cZCopLywKCgkvLyBBIHNldCBvZiBSRSdzIHRoYXQgY2FuIG1hdGNoIHN0cmluZ3MgYW5kIGdlbmVyYXRlIGNvbG9yIHR1cGxlcy4KCXN0cmluZ1BhcnNlcnMgPSBbIHsKCQkJcmU6IC9yZ2JhP1woXHMqKFxkezEsM30pXHMqLFxzKihcZHsxLDN9KVxzKixccyooXGR7MSwzfSlccyooPzosXHMqKFxkPyg/OlwuXGQrKT8pXHMqKT9cKS8sCgkJCXBhcnNlOiBmdW5jdGlvbiggZXhlY1Jlc3VsdCApIHsKCQkJCXJldHVybiBbCgkJCQkJZXhlY1Jlc3VsdFsgMSBdLAoJCQkJCWV4ZWNSZXN1bHRbIDIgXSwKCQkJCQlleGVjUmVzdWx0WyAzIF0sCgkJCQkJZXhlY1Jlc3VsdFsgNCBdCgkJCQldOwoJCQl9CgkJfSwgewoJCQlyZTogL3JnYmE/XChccyooXGQrKD86XC5cZCspPylcJVxzKixccyooXGQrKD86XC5cZCspPylcJVxzKixccyooXGQrKD86XC5cZCspPylcJVxzKig/OixccyooXGQ/KD86XC5cZCspPylccyopP1wpLywKCQkJcGFyc2U6IGZ1bmN0aW9uKCBleGVjUmVzdWx0ICkgewoJCQkJcmV0dXJuIFsKCQkJCQlleGVjUmVzdWx0WyAxIF0gKiAyLjU1LAoJCQkJCWV4ZWNSZXN1bHRbIDIgXSAqIDIuNTUsCgkJCQkJZXhlY1Jlc3VsdFsgMyBdICogMi41NSwKCQkJCQlleGVjUmVzdWx0WyA0IF0KCQkJCV07CgkJCX0KCQl9LCB7CgoJCQkvLyBUaGlzIHJlZ2V4IGlnbm9yZXMgQS1GIGJlY2F1c2UgaXQncyBjb21wYXJlZCBhZ2FpbnN0IGFuIGFscmVhZHkgbG93ZXJjYXNlZCBzdHJpbmcKCQkJcmU6IC8jKFthLWYwLTldezJ9KShbYS1mMC05XXsyfSkoW2EtZjAtOV17Mn0pLywKCQkJcGFyc2U6IGZ1bmN0aW9uKCBleGVjUmVzdWx0ICkgewoJCQkJcmV0dXJuIFsKCQkJCQlwYXJzZUludCggZXhlY1Jlc3VsdFsgMSBdLCAxNiApLAoJCQkJCXBhcnNlSW50KCBleGVjUmVzdWx0WyAyIF0sIDE2ICksCgkJCQkJcGFyc2VJbnQoIGV4ZWNSZXN1bHRbIDMgXSwgMTYgKQoJCQkJXTsKCQkJfQoJCX0sIHsKCgkJCS8vIFRoaXMgcmVnZXggaWdub3JlcyBBLUYgYmVjYXVzZSBpdCdzIGNvbXBhcmVkIGFnYWluc3QgYW4gYWxyZWFkeSBsb3dlcmNhc2VkIHN0cmluZwoJCQlyZTogLyMoW2EtZjAtOV0pKFthLWYwLTldKShbYS1mMC05XSkvLAoJCQlwYXJzZTogZnVuY3Rpb24oIGV4ZWNSZXN1bHQgKSB7CgkJCQlyZXR1cm4gWwoJCQkJCXBhcnNlSW50KCBleGVjUmVzdWx0WyAxIF0gKyBleGVjUmVzdWx0WyAxIF0sIDE2ICksCgkJCQkJcGFyc2VJbnQoIGV4ZWNSZXN1bHRbIDIgXSArIGV4ZWNSZXN1bHRbIDIgXSwgMTYgKSwKCQkJCQlwYXJzZUludCggZXhlY1Jlc3VsdFsgMyBdICsgZXhlY1Jlc3VsdFsgMyBdLCAxNiApCgkJCQldOwoJCQl9CgkJfSwgewoJCQlyZTogL2hzbGE/XChccyooXGQrKD86XC5cZCspPylccyosXHMqKFxkKyg/OlwuXGQrKT8pXCVccyosXHMqKFxkKyg/OlwuXGQrKT8pXCVccyooPzosXHMqKFxkPyg/OlwuXGQrKT8pXHMqKT9cKS8sCgkJCXNwYWNlOiAiaHNsYSIsCgkJCXBhcnNlOiBmdW5jdGlvbiggZXhlY1Jlc3VsdCApIHsKCQkJCXJldHVybiBbCgkJCQkJZXhlY1Jlc3VsdFsgMSBdLAoJCQkJCWV4ZWNSZXN1bHRbIDIgXSAvIDEwMCwKCQkJCQlleGVjUmVzdWx0WyAzIF0gLyAxMDAsCgkJCQkJZXhlY1Jlc3VsdFsgNCBdCgkJCQldOwoJCQl9CgkJfSBdLAoKCS8vIEpRdWVyeS5Db2xvciggKQoJY29sb3IgPSBqUXVlcnkuQ29sb3IgPSBmdW5jdGlvbiggY29sb3IsIGdyZWVuLCBibHVlLCBhbHBoYSApIHsKCQlyZXR1cm4gbmV3IGpRdWVyeS5Db2xvci5mbi5wYXJzZSggY29sb3IsIGdyZWVuLCBibHVlLCBhbHBoYSApOwoJfSwKCXNwYWNlcyA9IHsKCQlyZ2JhOiB7CgkJCXByb3BzOiB7CgkJCQlyZWQ6IHsKCQkJCQlpZHg6IDAsCgkJCQkJdHlwZTogImJ5dGUiCgkJCQl9LAoJCQkJZ3JlZW46IHsKCQkJCQlpZHg6IDEsCgkJCQkJdHlwZTogImJ5dGUiCgkJCQl9LAoJCQkJYmx1ZTogewoJCQkJCWlkeDogMiwKCQkJCQl0eXBlOiAiYnl0ZSIKCQkJCX0KCQkJfQoJCX0sCgoJCWhzbGE6IHsKCQkJcHJvcHM6IHsKCQkJCWh1ZTogewoJCQkJCWlkeDogMCwKCQkJCQl0eXBlOiAiZGVncmVlcyIKCQkJCX0sCgkJCQlzYXR1cmF0aW9uOiB7CgkJCQkJaWR4OiAxLAoJCQkJCXR5cGU6ICJwZXJjZW50IgoJCQkJfSwKCQkJCWxpZ2h0bmVzczogewoJCQkJCWlkeDogMiwKCQkJCQl0eXBlOiAicGVyY2VudCIKCQkJCX0KCQkJfQoJCX0KCX0sCglwcm9wVHlwZXMgPSB7CgkJImJ5dGUiOiB7CgkJCWZsb29yOiB0cnVlLAoJCQltYXg6IDI1NQoJCX0sCgkJInBlcmNlbnQiOiB7CgkJCW1heDogMQoJCX0sCgkJImRlZ3JlZXMiOiB7CgkJCW1vZDogMzYwLAoJCQlmbG9vcjogdHJ1ZQoJCX0KCX0sCglzdXBwb3J0ID0gY29sb3Iuc3VwcG9ydCA9IHt9LAoKCS8vIEVsZW1lbnQgZm9yIHN1cHBvcnQgdGVzdHMKCXN1cHBvcnRFbGVtID0galF1ZXJ5KCAiPHA+IiApWyAwIF0sCgoJLy8gQ29sb3JzID0galF1ZXJ5LkNvbG9yLm5hbWVzCgljb2xvcnMsCgoJLy8gTG9jYWwgYWxpYXNlcyBvZiBmdW5jdGlvbnMgY2FsbGVkIG9mdGVuCgllYWNoID0galF1ZXJ5LmVhY2g7CgovLyBEZXRlcm1pbmUgcmdiYSBzdXBwb3J0IGltbWVkaWF0ZWx5CnN1cHBvcnRFbGVtLnN0eWxlLmNzc1RleHQgPSAiYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDEsMSwxLC41KSI7CnN1cHBvcnQucmdiYSA9IHN1cHBvcnRFbGVtLnN0eWxlLmJhY2tncm91bmRDb2xvci5pbmRleE9mKCAicmdiYSIgKSA+IC0xOwoKLy8gRGVmaW5lIGNhY2hlIG5hbWUgYW5kIGFscGhhIHByb3BlcnRpZXMKLy8gZm9yIHJnYmEgYW5kIGhzbGEgc3BhY2VzCmVhY2goIHNwYWNlcywgZnVuY3Rpb24oIHNwYWNlTmFtZSwgc3BhY2UgKSB7CglzcGFjZS5jYWNoZSA9ICJfIiArIHNwYWNlTmFtZTsKCXNwYWNlLnByb3BzLmFscGhhID0gewoJCWlkeDogMywKCQl0eXBlOiAicGVyY2VudCIsCgkJZGVmOiAxCgl9Owp9ICk7CgpmdW5jdGlvbiBjbGFtcCggdmFsdWUsIHByb3AsIGFsbG93RW1wdHkgKSB7Cgl2YXIgdHlwZSA9IHByb3BUeXBlc1sgcHJvcC50eXBlIF0gfHwge307CgoJaWYgKCB2YWx1ZSA9PSBudWxsICkgewoJCXJldHVybiAoIGFsbG93RW1wdHkgfHwgIXByb3AuZGVmICkgPyBudWxsIDogcHJvcC5kZWY7Cgl9CgoJLy8gfn4gaXMgYW4gc2hvcnQgd2F5IG9mIGRvaW5nIGZsb29yIGZvciBwb3NpdGl2ZSBudW1iZXJzCgl2YWx1ZSA9IHR5cGUuZmxvb3IgPyB+fnZhbHVlIDogcGFyc2VGbG9hdCggdmFsdWUgKTsKCgkvLyBJRSB3aWxsIHBhc3MgaW4gZW1wdHkgc3RyaW5ncyBhcyB2YWx1ZSBmb3IgYWxwaGEsCgkvLyB3aGljaCB3aWxsIGhpdCB0aGlzIGNhc2UKCWlmICggaXNOYU4oIHZhbHVlICkgKSB7CgkJcmV0dXJuIHByb3AuZGVmOwoJfQoKCWlmICggdHlwZS5tb2QgKSB7CgoJCS8vIFdlIGFkZCBtb2QgYmVmb3JlIG1vZGRpbmcgdG8gbWFrZSBzdXJlIHRoYXQgbmVnYXRpdmVzIHZhbHVlcwoJCS8vIGdldCBjb252ZXJ0ZWQgcHJvcGVybHk6IC0xMCAtPiAzNTAKCQlyZXR1cm4gKCB2YWx1ZSArIHR5cGUubW9kICkgJSB0eXBlLm1vZDsKCX0KCgkvLyBGb3Igbm93IGFsbCBwcm9wZXJ0eSB0eXBlcyB3aXRob3V0IG1vZCBoYXZlIG1pbiBhbmQgbWF4CglyZXR1cm4gMCA+IHZhbHVlID8gMCA6IHR5cGUubWF4IDwgdmFsdWUgPyB0eXBlLm1heCA6IHZhbHVlOwp9CgpmdW5jdGlvbiBzdHJpbmdQYXJzZSggc3RyaW5nICkgewoJdmFyIGluc3QgPSBjb2xvcigpLAoJCXJnYmEgPSBpbnN0Ll9yZ2JhID0gW107CgoJc3RyaW5nID0gc3RyaW5nLnRvTG93ZXJDYXNlKCk7CgoJZWFjaCggc3RyaW5nUGFyc2VycywgZnVuY3Rpb24oIGksIHBhcnNlciApIHsKCQl2YXIgcGFyc2VkLAoJCQltYXRjaCA9IHBhcnNlci5yZS5leGVjKCBzdHJpbmcgKSwKCQkJdmFsdWVzID0gbWF0Y2ggJiYgcGFyc2VyLnBhcnNlKCBtYXRjaCApLAoJCQlzcGFjZU5hbWUgPSBwYXJzZXIuc3BhY2UgfHwgInJnYmEiOwoKCQlpZiAoIHZhbHVlcyApIHsKCQkJcGFyc2VkID0gaW5zdFsgc3BhY2VOYW1lIF0oIHZhbHVlcyApOwoKCQkJLy8gSWYgdGhpcyB3YXMgYW4gcmdiYSBwYXJzZSB0aGUgYXNzaWdubWVudCBtaWdodCBoYXBwZW4gdHdpY2UKCQkJLy8gb2ggd2VsbC4uLi4KCQkJaW5zdFsgc3BhY2VzWyBzcGFjZU5hbWUgXS5jYWNoZSBdID0gcGFyc2VkWyBzcGFjZXNbIHNwYWNlTmFtZSBdLmNhY2hlIF07CgkJCXJnYmEgPSBpbnN0Ll9yZ2JhID0gcGFyc2VkLl9yZ2JhOwoKCQkJLy8gRXhpdCBlYWNoKCBzdHJpbmdQYXJzZXJzICkgaGVyZSBiZWNhdXNlIHdlIG1hdGNoZWQKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCX0gKTsKCgkvLyBGb3VuZCBhIHN0cmluZ1BhcnNlciB0aGF0IGhhbmRsZWQgaXQKCWlmICggcmdiYS5sZW5ndGggKSB7CgoJCS8vIElmIHRoaXMgY2FtZSBmcm9tIGEgcGFyc2VkIHN0cmluZywgZm9yY2UgInRyYW5zcGFyZW50IiB3aGVuIGFscGhhIGlzIDAKCQkvLyBjaHJvbWUsIChhbmQgbWF5YmUgb3RoZXJzKSByZXR1cm4gInRyYW5zcGFyZW50IiBhcyByZ2JhKDAsMCwwLDApCgkJaWYgKCByZ2JhLmpvaW4oKSA9PT0gIjAsMCwwLDAiICkgewoJCQlqUXVlcnkuZXh0ZW5kKCByZ2JhLCBjb2xvcnMudHJhbnNwYXJlbnQgKTsKCQl9CgkJcmV0dXJuIGluc3Q7Cgl9CgoJLy8gTmFtZWQgY29sb3JzCglyZXR1cm4gY29sb3JzWyBzdHJpbmcgXTsKfQoKY29sb3IuZm4gPSBqUXVlcnkuZXh0ZW5kKCBjb2xvci5wcm90b3R5cGUsIHsKCXBhcnNlOiBmdW5jdGlvbiggcmVkLCBncmVlbiwgYmx1ZSwgYWxwaGEgKSB7CgkJaWYgKCByZWQgPT09IHVuZGVmaW5lZCApIHsKCQkJdGhpcy5fcmdiYSA9IFsgbnVsbCwgbnVsbCwgbnVsbCwgbnVsbCBdOwoJCQlyZXR1cm4gdGhpczsKCQl9CgkJaWYgKCByZWQuanF1ZXJ5IHx8IHJlZC5ub2RlVHlwZSApIHsKCQkJcmVkID0galF1ZXJ5KCByZWQgKS5jc3MoIGdyZWVuICk7CgkJCWdyZWVuID0gdW5kZWZpbmVkOwoJCX0KCgkJdmFyIGluc3QgPSB0aGlzLAoJCQl0eXBlID0galF1ZXJ5LnR5cGUoIHJlZCApLAoJCQlyZ2JhID0gdGhpcy5fcmdiYSA9IFtdOwoKCQkvLyBNb3JlIHRoYW4gMSBhcmd1bWVudCBzcGVjaWZpZWQgLSBhc3N1bWUgKCByZWQsIGdyZWVuLCBibHVlLCBhbHBoYSApCgkJaWYgKCBncmVlbiAhPT0gdW5kZWZpbmVkICkgewoJCQlyZWQgPSBbIHJlZCwgZ3JlZW4sIGJsdWUsIGFscGhhIF07CgkJCXR5cGUgPSAiYXJyYXkiOwoJCX0KCgkJaWYgKCB0eXBlID09PSAic3RyaW5nIiApIHsKCQkJcmV0dXJuIHRoaXMucGFyc2UoIHN0cmluZ1BhcnNlKCByZWQgKSB8fCBjb2xvcnMuX2RlZmF1bHQgKTsKCQl9CgoJCWlmICggdHlwZSA9PT0gImFycmF5IiApIHsKCQkJZWFjaCggc3BhY2VzLnJnYmEucHJvcHMsIGZ1bmN0aW9uKCBrZXksIHByb3AgKSB7CgkJCQlyZ2JhWyBwcm9wLmlkeCBdID0gY2xhbXAoIHJlZFsgcHJvcC5pZHggXSwgcHJvcCApOwoJCQl9ICk7CgkJCXJldHVybiB0aGlzOwoJCX0KCgkJaWYgKCB0eXBlID09PSAib2JqZWN0IiApIHsKCQkJaWYgKCByZWQgaW5zdGFuY2VvZiBjb2xvciApIHsKCQkJCWVhY2goIHNwYWNlcywgZnVuY3Rpb24oIHNwYWNlTmFtZSwgc3BhY2UgKSB7CgkJCQkJaWYgKCByZWRbIHNwYWNlLmNhY2hlIF0gKSB7CgkJCQkJCWluc3RbIHNwYWNlLmNhY2hlIF0gPSByZWRbIHNwYWNlLmNhY2hlIF0uc2xpY2UoKTsKCQkJCQl9CgkJCQl9ICk7CgkJCX0gZWxzZSB7CgkJCQllYWNoKCBzcGFjZXMsIGZ1bmN0aW9uKCBzcGFjZU5hbWUsIHNwYWNlICkgewoJCQkJCXZhciBjYWNoZSA9IHNwYWNlLmNhY2hlOwoJCQkJCWVhY2goIHNwYWNlLnByb3BzLCBmdW5jdGlvbigga2V5LCBwcm9wICkgewoKCQkJCQkJLy8gSWYgdGhlIGNhY2hlIGRvZXNuJ3QgZXhpc3QsIGFuZCB3ZSBrbm93IGhvdyB0byBjb252ZXJ0CgkJCQkJCWlmICggIWluc3RbIGNhY2hlIF0gJiYgc3BhY2UudG8gKSB7CgoJCQkJCQkJLy8gSWYgdGhlIHZhbHVlIHdhcyBudWxsLCB3ZSBkb24ndCBuZWVkIHRvIGNvcHkgaXQKCQkJCQkJCS8vIGlmIHRoZSBrZXkgd2FzIGFscGhhLCB3ZSBkb24ndCBuZWVkIHRvIGNvcHkgaXQgZWl0aGVyCgkJCQkJCQlpZiAoIGtleSA9PT0gImFscGhhIiB8fCByZWRbIGtleSBdID09IG51bGwgKSB7CgkJCQkJCQkJcmV0dXJuOwoJCQkJCQkJfQoJCQkJCQkJaW5zdFsgY2FjaGUgXSA9IHNwYWNlLnRvKCBpbnN0Ll9yZ2JhICk7CgkJCQkJCX0KCgkJCQkJCS8vIFRoaXMgaXMgdGhlIG9ubHkgY2FzZSB3aGVyZSB3ZSBhbGxvdyBudWxscyBmb3IgQUxMIHByb3BlcnRpZXMuCgkJCQkJCS8vIGNhbGwgY2xhbXAgd2l0aCBhbHdheXNBbGxvd0VtcHR5CgkJCQkJCWluc3RbIGNhY2hlIF1bIHByb3AuaWR4IF0gPSBjbGFtcCggcmVkWyBrZXkgXSwgcHJvcCwgdHJ1ZSApOwoJCQkJCX0gKTsKCgkJCQkJLy8gRXZlcnl0aGluZyBkZWZpbmVkIGJ1dCBhbHBoYT8KCQkJCQlpZiAoIGluc3RbIGNhY2hlIF0gJiYKCQkJCQkJCWpRdWVyeS5pbkFycmF5KCBudWxsLCBpbnN0WyBjYWNoZSBdLnNsaWNlKCAwLCAzICkgKSA8IDAgKSB7CgoJCQkJCQkvLyBVc2UgdGhlIGRlZmF1bHQgb2YgMQoJCQkJCQlpbnN0WyBjYWNoZSBdWyAzIF0gPSAxOwoJCQkJCQlpZiAoIHNwYWNlLmZyb20gKSB7CgkJCQkJCQlpbnN0Ll9yZ2JhID0gc3BhY2UuZnJvbSggaW5zdFsgY2FjaGUgXSApOwoJCQkJCQl9CgkJCQkJfQoJCQkJfSApOwoJCQl9CgkJCXJldHVybiB0aGlzOwoJCX0KCX0sCglpczogZnVuY3Rpb24oIGNvbXBhcmUgKSB7CgkJdmFyIGlzID0gY29sb3IoIGNvbXBhcmUgKSwKCQkJc2FtZSA9IHRydWUsCgkJCWluc3QgPSB0aGlzOwoKCQllYWNoKCBzcGFjZXMsIGZ1bmN0aW9uKCBfLCBzcGFjZSApIHsKCQkJdmFyIGxvY2FsQ2FjaGUsCgkJCQlpc0NhY2hlID0gaXNbIHNwYWNlLmNhY2hlIF07CgkJCWlmICggaXNDYWNoZSApIHsKCQkJCWxvY2FsQ2FjaGUgPSBpbnN0WyBzcGFjZS5jYWNoZSBdIHx8IHNwYWNlLnRvICYmIHNwYWNlLnRvKCBpbnN0Ll9yZ2JhICkgfHwgW107CgkJCQllYWNoKCBzcGFjZS5wcm9wcywgZnVuY3Rpb24oIF8sIHByb3AgKSB7CgkJCQkJaWYgKCBpc0NhY2hlWyBwcm9wLmlkeCBdICE9IG51bGwgKSB7CgkJCQkJCXNhbWUgPSAoIGlzQ2FjaGVbIHByb3AuaWR4IF0gPT09IGxvY2FsQ2FjaGVbIHByb3AuaWR4IF0gKTsKCQkJCQkJcmV0dXJuIHNhbWU7CgkJCQkJfQoJCQkJfSApOwoJCQl9CgkJCXJldHVybiBzYW1lOwoJCX0gKTsKCQlyZXR1cm4gc2FtZTsKCX0sCglfc3BhY2U6IGZ1bmN0aW9uKCkgewoJCXZhciB1c2VkID0gW10sCgkJCWluc3QgPSB0aGlzOwoJCWVhY2goIHNwYWNlcywgZnVuY3Rpb24oIHNwYWNlTmFtZSwgc3BhY2UgKSB7CgkJCWlmICggaW5zdFsgc3BhY2UuY2FjaGUgXSApIHsKCQkJCXVzZWQucHVzaCggc3BhY2VOYW1lICk7CgkJCX0KCQl9ICk7CgkJcmV0dXJuIHVzZWQucG9wKCk7Cgl9LAoJdHJhbnNpdGlvbjogZnVuY3Rpb24oIG90aGVyLCBkaXN0YW5jZSApIHsKCQl2YXIgZW5kID0gY29sb3IoIG90aGVyICksCgkJCXNwYWNlTmFtZSA9IGVuZC5fc3BhY2UoKSwKCQkJc3BhY2UgPSBzcGFjZXNbIHNwYWNlTmFtZSBdLAoJCQlzdGFydENvbG9yID0gdGhpcy5hbHBoYSgpID09PSAwID8gY29sb3IoICJ0cmFuc3BhcmVudCIgKSA6IHRoaXMsCgkJCXN0YXJ0ID0gc3RhcnRDb2xvclsgc3BhY2UuY2FjaGUgXSB8fCBzcGFjZS50byggc3RhcnRDb2xvci5fcmdiYSApLAoJCQlyZXN1bHQgPSBzdGFydC5zbGljZSgpOwoKCQllbmQgPSBlbmRbIHNwYWNlLmNhY2hlIF07CgkJZWFjaCggc3BhY2UucHJvcHMsIGZ1bmN0aW9uKCBrZXksIHByb3AgKSB7CgkJCXZhciBpbmRleCA9IHByb3AuaWR4LAoJCQkJc3RhcnRWYWx1ZSA9IHN0YXJ0WyBpbmRleCBdLAoJCQkJZW5kVmFsdWUgPSBlbmRbIGluZGV4IF0sCgkJCQl0eXBlID0gcHJvcFR5cGVzWyBwcm9wLnR5cGUgXSB8fCB7fTsKCgkJCS8vIElmIG51bGwsIGRvbid0IG92ZXJyaWRlIHN0YXJ0IHZhbHVlCgkJCWlmICggZW5kVmFsdWUgPT09IG51bGwgKSB7CgkJCQlyZXR1cm47CgkJCX0KCgkJCS8vIElmIG51bGwgLSB1c2UgZW5kCgkJCWlmICggc3RhcnRWYWx1ZSA9PT0gbnVsbCApIHsKCQkJCXJlc3VsdFsgaW5kZXggXSA9IGVuZFZhbHVlOwoJCQl9IGVsc2UgewoJCQkJaWYgKCB0eXBlLm1vZCApIHsKCQkJCQlpZiAoIGVuZFZhbHVlIC0gc3RhcnRWYWx1ZSA+IHR5cGUubW9kIC8gMiApIHsKCQkJCQkJc3RhcnRWYWx1ZSArPSB0eXBlLm1vZDsKCQkJCQl9IGVsc2UgaWYgKCBzdGFydFZhbHVlIC0gZW5kVmFsdWUgPiB0eXBlLm1vZCAvIDIgKSB7CgkJCQkJCXN0YXJ0VmFsdWUgLT0gdHlwZS5tb2Q7CgkJCQkJfQoJCQkJfQoJCQkJcmVzdWx0WyBpbmRleCBdID0gY2xhbXAoICggZW5kVmFsdWUgLSBzdGFydFZhbHVlICkgKiBkaXN0YW5jZSArIHN0YXJ0VmFsdWUsIHByb3AgKTsKCQkJfQoJCX0gKTsKCQlyZXR1cm4gdGhpc1sgc3BhY2VOYW1lIF0oIHJlc3VsdCApOwoJfSwKCWJsZW5kOiBmdW5jdGlvbiggb3BhcXVlICkgewoKCQkvLyBJZiB3ZSBhcmUgYWxyZWFkeSBvcGFxdWUgLSByZXR1cm4gb3Vyc2VsZgoJCWlmICggdGhpcy5fcmdiYVsgMyBdID09PSAxICkgewoJCQlyZXR1cm4gdGhpczsKCQl9CgoJCXZhciByZ2IgPSB0aGlzLl9yZ2JhLnNsaWNlKCksCgkJCWEgPSByZ2IucG9wKCksCgkJCWJsZW5kID0gY29sb3IoIG9wYXF1ZSApLl9yZ2JhOwoKCQlyZXR1cm4gY29sb3IoIGpRdWVyeS5tYXAoIHJnYiwgZnVuY3Rpb24oIHYsIGkgKSB7CgkJCXJldHVybiAoIDEgLSBhICkgKiBibGVuZFsgaSBdICsgYSAqIHY7CgkJfSApICk7Cgl9LAoJdG9SZ2JhU3RyaW5nOiBmdW5jdGlvbigpIHsKCQl2YXIgcHJlZml4ID0gInJnYmEoIiwKCQkJcmdiYSA9IGpRdWVyeS5tYXAoIHRoaXMuX3JnYmEsIGZ1bmN0aW9uKCB2LCBpICkgewoJCQkJcmV0dXJuIHYgPT0gbnVsbCA/ICggaSA+IDIgPyAxIDogMCApIDogdjsKCQkJfSApOwoKCQlpZiAoIHJnYmFbIDMgXSA9PT0gMSApIHsKCQkJcmdiYS5wb3AoKTsKCQkJcHJlZml4ID0gInJnYigiOwoJCX0KCgkJcmV0dXJuIHByZWZpeCArIHJnYmEuam9pbigpICsgIikiOwoJfSwKCXRvSHNsYVN0cmluZzogZnVuY3Rpb24oKSB7CgkJdmFyIHByZWZpeCA9ICJoc2xhKCIsCgkJCWhzbGEgPSBqUXVlcnkubWFwKCB0aGlzLmhzbGEoKSwgZnVuY3Rpb24oIHYsIGkgKSB7CgkJCQlpZiAoIHYgPT0gbnVsbCApIHsKCQkJCQl2ID0gaSA+IDIgPyAxIDogMDsKCQkJCX0KCgkJCQkvLyBDYXRjaCAxIGFuZCAyCgkJCQlpZiAoIGkgJiYgaSA8IDMgKSB7CgkJCQkJdiA9IE1hdGgucm91bmQoIHYgKiAxMDAgKSArICIlIjsKCQkJCX0KCQkJCXJldHVybiB2OwoJCQl9ICk7CgoJCWlmICggaHNsYVsgMyBdID09PSAxICkgewoJCQloc2xhLnBvcCgpOwoJCQlwcmVmaXggPSAiaHNsKCI7CgkJfQoJCXJldHVybiBwcmVmaXggKyBoc2xhLmpvaW4oKSArICIpIjsKCX0sCgl0b0hleFN0cmluZzogZnVuY3Rpb24oIGluY2x1ZGVBbHBoYSApIHsKCQl2YXIgcmdiYSA9IHRoaXMuX3JnYmEuc2xpY2UoKSwKCQkJYWxwaGEgPSByZ2JhLnBvcCgpOwoKCQlpZiAoIGluY2x1ZGVBbHBoYSApIHsKCQkJcmdiYS5wdXNoKCB+figgYWxwaGEgKiAyNTUgKSApOwoJCX0KCgkJcmV0dXJuICIjIiArIGpRdWVyeS5tYXAoIHJnYmEsIGZ1bmN0aW9uKCB2ICkgewoKCQkJLy8gRGVmYXVsdCB0byAwIHdoZW4gbnVsbHMgZXhpc3QKCQkJdiA9ICggdiB8fCAwICkudG9TdHJpbmcoIDE2ICk7CgkJCXJldHVybiB2Lmxlbmd0aCA9PT0gMSA/ICIwIiArIHYgOiB2OwoJCX0gKS5qb2luKCAiIiApOwoJfSwKCXRvU3RyaW5nOiBmdW5jdGlvbigpIHsKCQlyZXR1cm4gdGhpcy5fcmdiYVsgMyBdID09PSAwID8gInRyYW5zcGFyZW50IiA6IHRoaXMudG9SZ2JhU3RyaW5nKCk7Cgl9Cn0gKTsKY29sb3IuZm4ucGFyc2UucHJvdG90eXBlID0gY29sb3IuZm47CgovLyBIc2xhIGNvbnZlcnNpb25zIGFkYXB0ZWQgZnJvbToKLy8gaHR0cHM6Ly9jb2RlLmdvb2dsZS5jb20vcC9tYWFzaGFhY2svc291cmNlL2Jyb3dzZS9wYWNrYWdlcy9ncmFwaGljcy90cnVuay9zcmMvZ3JhcGhpY3MvY29sb3JzL0hVRTJSR0IuYXM/cj01MDIxCgpmdW5jdGlvbiBodWUycmdiKCBwLCBxLCBoICkgewoJaCA9ICggaCArIDEgKSAlIDE7CglpZiAoIGggKiA2IDwgMSApIHsKCQlyZXR1cm4gcCArICggcSAtIHAgKSAqIGggKiA2OwoJfQoJaWYgKCBoICogMiA8IDEgKSB7CgkJcmV0dXJuIHE7Cgl9CglpZiAoIGggKiAzIDwgMiApIHsKCQlyZXR1cm4gcCArICggcSAtIHAgKSAqICggKCAyIC8gMyApIC0gaCApICogNjsKCX0KCXJldHVybiBwOwp9CgpzcGFjZXMuaHNsYS50byA9IGZ1bmN0aW9uKCByZ2JhICkgewoJaWYgKCByZ2JhWyAwIF0gPT0gbnVsbCB8fCByZ2JhWyAxIF0gPT0gbnVsbCB8fCByZ2JhWyAyIF0gPT0gbnVsbCApIHsKCQlyZXR1cm4gWyBudWxsLCBudWxsLCBudWxsLCByZ2JhWyAzIF0gXTsKCX0KCXZhciByID0gcmdiYVsgMCBdIC8gMjU1LAoJCWcgPSByZ2JhWyAxIF0gLyAyNTUsCgkJYiA9IHJnYmFbIDIgXSAvIDI1NSwKCQlhID0gcmdiYVsgMyBdLAoJCW1heCA9IE1hdGgubWF4KCByLCBnLCBiICksCgkJbWluID0gTWF0aC5taW4oIHIsIGcsIGIgKSwKCQlkaWZmID0gbWF4IC0gbWluLAoJCWFkZCA9IG1heCArIG1pbiwKCQlsID0gYWRkICogMC41LAoJCWgsIHM7CgoJaWYgKCBtaW4gPT09IG1heCApIHsKCQloID0gMDsKCX0gZWxzZSBpZiAoIHIgPT09IG1heCApIHsKCQloID0gKCA2MCAqICggZyAtIGIgKSAvIGRpZmYgKSArIDM2MDsKCX0gZWxzZSBpZiAoIGcgPT09IG1heCApIHsKCQloID0gKCA2MCAqICggYiAtIHIgKSAvIGRpZmYgKSArIDEyMDsKCX0gZWxzZSB7CgkJaCA9ICggNjAgKiAoIHIgLSBnICkgLyBkaWZmICkgKyAyNDA7Cgl9CgoJLy8gQ2hyb21hIChkaWZmKSA9PSAwIG1lYW5zIGdyZXlzY2FsZSB3aGljaCwgYnkgZGVmaW5pdGlvbiwgc2F0dXJhdGlvbiA9IDAlCgkvLyBvdGhlcndpc2UsIHNhdHVyYXRpb24gaXMgYmFzZWQgb24gdGhlIHJhdGlvIG9mIGNocm9tYSAoZGlmZikgdG8gbGlnaHRuZXNzIChhZGQpCglpZiAoIGRpZmYgPT09IDAgKSB7CgkJcyA9IDA7Cgl9IGVsc2UgaWYgKCBsIDw9IDAuNSApIHsKCQlzID0gZGlmZiAvIGFkZDsKCX0gZWxzZSB7CgkJcyA9IGRpZmYgLyAoIDIgLSBhZGQgKTsKCX0KCXJldHVybiBbIE1hdGgucm91bmQoIGggKSAlIDM2MCwgcywgbCwgYSA9PSBudWxsID8gMSA6IGEgXTsKfTsKCnNwYWNlcy5oc2xhLmZyb20gPSBmdW5jdGlvbiggaHNsYSApIHsKCWlmICggaHNsYVsgMCBdID09IG51bGwgfHwgaHNsYVsgMSBdID09IG51bGwgfHwgaHNsYVsgMiBdID09IG51bGwgKSB7CgkJcmV0dXJuIFsgbnVsbCwgbnVsbCwgbnVsbCwgaHNsYVsgMyBdIF07Cgl9Cgl2YXIgaCA9IGhzbGFbIDAgXSAvIDM2MCwKCQlzID0gaHNsYVsgMSBdLAoJCWwgPSBoc2xhWyAyIF0sCgkJYSA9IGhzbGFbIDMgXSwKCQlxID0gbCA8PSAwLjUgPyBsICogKCAxICsgcyApIDogbCArIHMgLSBsICogcywKCQlwID0gMiAqIGwgLSBxOwoKCXJldHVybiBbCgkJTWF0aC5yb3VuZCggaHVlMnJnYiggcCwgcSwgaCArICggMSAvIDMgKSApICogMjU1ICksCgkJTWF0aC5yb3VuZCggaHVlMnJnYiggcCwgcSwgaCApICogMjU1ICksCgkJTWF0aC5yb3VuZCggaHVlMnJnYiggcCwgcSwgaCAtICggMSAvIDMgKSApICogMjU1ICksCgkJYQoJXTsKfTsKCmVhY2goIHNwYWNlcywgZnVuY3Rpb24oIHNwYWNlTmFtZSwgc3BhY2UgKSB7Cgl2YXIgcHJvcHMgPSBzcGFjZS5wcm9wcywKCQljYWNoZSA9IHNwYWNlLmNhY2hlLAoJCXRvID0gc3BhY2UudG8sCgkJZnJvbSA9IHNwYWNlLmZyb207CgoJLy8gTWFrZXMgcmdiYSgpIGFuZCBoc2xhKCkKCWNvbG9yLmZuWyBzcGFjZU5hbWUgXSA9IGZ1bmN0aW9uKCB2YWx1ZSApIHsKCgkJLy8gR2VuZXJhdGUgYSBjYWNoZSBmb3IgdGhpcyBzcGFjZSBpZiBpdCBkb2Vzbid0IGV4aXN0CgkJaWYgKCB0byAmJiAhdGhpc1sgY2FjaGUgXSApIHsKCQkJdGhpc1sgY2FjaGUgXSA9IHRvKCB0aGlzLl9yZ2JhICk7CgkJfQoJCWlmICggdmFsdWUgPT09IHVuZGVmaW5lZCApIHsKCQkJcmV0dXJuIHRoaXNbIGNhY2hlIF0uc2xpY2UoKTsKCQl9CgoJCXZhciByZXQsCgkJCXR5cGUgPSBqUXVlcnkudHlwZSggdmFsdWUgKSwKCQkJYXJyID0gKCB0eXBlID09PSAiYXJyYXkiIHx8IHR5cGUgPT09ICJvYmplY3QiICkgPyB2YWx1ZSA6IGFyZ3VtZW50cywKCQkJbG9jYWwgPSB0aGlzWyBjYWNoZSBdLnNsaWNlKCk7CgoJCWVhY2goIHByb3BzLCBmdW5jdGlvbigga2V5LCBwcm9wICkgewoJCQl2YXIgdmFsID0gYXJyWyB0eXBlID09PSAib2JqZWN0IiA/IGtleSA6IHByb3AuaWR4IF07CgkJCWlmICggdmFsID09IG51bGwgKSB7CgkJCQl2YWwgPSBsb2NhbFsgcHJvcC5pZHggXTsKCQkJfQoJCQlsb2NhbFsgcHJvcC5pZHggXSA9IGNsYW1wKCB2YWwsIHByb3AgKTsKCQl9ICk7CgoJCWlmICggZnJvbSApIHsKCQkJcmV0ID0gY29sb3IoIGZyb20oIGxvY2FsICkgKTsKCQkJcmV0WyBjYWNoZSBdID0gbG9jYWw7CgkJCXJldHVybiByZXQ7CgkJfSBlbHNlIHsKCQkJcmV0dXJuIGNvbG9yKCBsb2NhbCApOwoJCX0KCX07CgoJLy8gTWFrZXMgcmVkKCkgZ3JlZW4oKSBibHVlKCkgYWxwaGEoKSBodWUoKSBzYXR1cmF0aW9uKCkgbGlnaHRuZXNzKCkKCWVhY2goIHByb3BzLCBmdW5jdGlvbigga2V5LCBwcm9wICkgewoKCQkvLyBBbHBoYSBpcyBpbmNsdWRlZCBpbiBtb3JlIHRoYW4gb25lIHNwYWNlCgkJaWYgKCBjb2xvci5mblsga2V5IF0gKSB7CgkJCXJldHVybjsKCQl9CgkJY29sb3IuZm5bIGtleSBdID0gZnVuY3Rpb24oIHZhbHVlICkgewoJCQl2YXIgdnR5cGUgPSBqUXVlcnkudHlwZSggdmFsdWUgKSwKCQkJCWZuID0gKCBrZXkgPT09ICJhbHBoYSIgPyAoIHRoaXMuX2hzbGEgPyAiaHNsYSIgOiAicmdiYSIgKSA6IHNwYWNlTmFtZSApLAoJCQkJbG9jYWwgPSB0aGlzWyBmbiBdKCksCgkJCQljdXIgPSBsb2NhbFsgcHJvcC5pZHggXSwKCQkJCW1hdGNoOwoKCQkJaWYgKCB2dHlwZSA9PT0gInVuZGVmaW5lZCIgKSB7CgkJCQlyZXR1cm4gY3VyOwoJCQl9CgoJCQlpZiAoIHZ0eXBlID09PSAiZnVuY3Rpb24iICkgewoJCQkJdmFsdWUgPSB2YWx1ZS5jYWxsKCB0aGlzLCBjdXIgKTsKCQkJCXZ0eXBlID0galF1ZXJ5LnR5cGUoIHZhbHVlICk7CgkJCX0KCQkJaWYgKCB2YWx1ZSA9PSBudWxsICYmIHByb3AuZW1wdHkgKSB7CgkJCQlyZXR1cm4gdGhpczsKCQkJfQoJCQlpZiAoIHZ0eXBlID09PSAic3RyaW5nIiApIHsKCQkJCW1hdGNoID0gcnBsdXNlcXVhbHMuZXhlYyggdmFsdWUgKTsKCQkJCWlmICggbWF0Y2ggKSB7CgkJCQkJdmFsdWUgPSBjdXIgKyBwYXJzZUZsb2F0KCBtYXRjaFsgMiBdICkgKiAoIG1hdGNoWyAxIF0gPT09ICIrIiA/IDEgOiAtMSApOwoJCQkJfQoJCQl9CgkJCWxvY2FsWyBwcm9wLmlkeCBdID0gdmFsdWU7CgkJCXJldHVybiB0aGlzWyBmbiBdKCBsb2NhbCApOwoJCX07Cgl9ICk7Cn0gKTsKCi8vIEFkZCBjc3NIb29rIGFuZCAuZnguc3RlcCBmdW5jdGlvbiBmb3IgZWFjaCBuYW1lZCBob29rLgovLyBhY2NlcHQgYSBzcGFjZSBzZXBhcmF0ZWQgc3RyaW5nIG9mIHByb3BlcnRpZXMKY29sb3IuaG9vayA9IGZ1bmN0aW9uKCBob29rICkgewoJdmFyIGhvb2tzID0gaG9vay5zcGxpdCggIiAiICk7CgllYWNoKCBob29rcywgZnVuY3Rpb24oIGksIGhvb2sgKSB7CgkJalF1ZXJ5LmNzc0hvb2tzWyBob29rIF0gPSB7CgkJCXNldDogZnVuY3Rpb24oIGVsZW0sIHZhbHVlICkgewoJCQkJdmFyIHBhcnNlZCwgY3VyRWxlbSwKCQkJCQliYWNrZ3JvdW5kQ29sb3IgPSAiIjsKCgkJCQlpZiAoIHZhbHVlICE9PSAidHJhbnNwYXJlbnQiICYmICggalF1ZXJ5LnR5cGUoIHZhbHVlICkgIT09ICJzdHJpbmciIHx8CgkJCQkJCSggcGFyc2VkID0gc3RyaW5nUGFyc2UoIHZhbHVlICkgKSApICkgewoJCQkJCXZhbHVlID0gY29sb3IoIHBhcnNlZCB8fCB2YWx1ZSApOwoJCQkJCWlmICggIXN1cHBvcnQucmdiYSAmJiB2YWx1ZS5fcmdiYVsgMyBdICE9PSAxICkgewoJCQkJCQljdXJFbGVtID0gaG9vayA9PT0gImJhY2tncm91bmRDb2xvciIgPyBlbGVtLnBhcmVudE5vZGUgOiBlbGVtOwoJCQkJCQl3aGlsZSAoCgkJCQkJCQkoIGJhY2tncm91bmRDb2xvciA9PT0gIiIgfHwgYmFja2dyb3VuZENvbG9yID09PSAidHJhbnNwYXJlbnQiICkgJiYKCQkJCQkJCWN1ckVsZW0gJiYgY3VyRWxlbS5zdHlsZQoJCQkJCQkpIHsKCQkJCQkJCXRyeSB7CgkJCQkJCQkJYmFja2dyb3VuZENvbG9yID0galF1ZXJ5LmNzcyggY3VyRWxlbSwgImJhY2tncm91bmRDb2xvciIgKTsKCQkJCQkJCQljdXJFbGVtID0gY3VyRWxlbS5wYXJlbnROb2RlOwoJCQkJCQkJfSBjYXRjaCAoIGUgKSB7CgkJCQkJCQl9CgkJCQkJCX0KCgkJCQkJCXZhbHVlID0gdmFsdWUuYmxlbmQoIGJhY2tncm91bmRDb2xvciAmJiBiYWNrZ3JvdW5kQ29sb3IgIT09ICJ0cmFuc3BhcmVudCIgPwoJCQkJCQkJYmFja2dyb3VuZENvbG9yIDoKCQkJCQkJCSJfZGVmYXVsdCIgKTsKCQkJCQl9CgoJCQkJCXZhbHVlID0gdmFsdWUudG9SZ2JhU3RyaW5nKCk7CgkJCQl9CgkJCQl0cnkgewoJCQkJCWVsZW0uc3R5bGVbIGhvb2sgXSA9IHZhbHVlOwoJCQkJfSBjYXRjaCAoIGUgKSB7CgoJCQkJCS8vIFdyYXBwZWQgdG8gcHJldmVudCBJRSBmcm9tIHRocm93aW5nIGVycm9ycyBvbiAiaW52YWxpZCIgdmFsdWVzIGxpa2UKCQkJCQkvLyAnYXV0bycgb3IgJ2luaGVyaXQnCgkJCQl9CgkJCX0KCQl9OwoJCWpRdWVyeS5meC5zdGVwWyBob29rIF0gPSBmdW5jdGlvbiggZnggKSB7CgkJCWlmICggIWZ4LmNvbG9ySW5pdCApIHsKCQkJCWZ4LnN0YXJ0ID0gY29sb3IoIGZ4LmVsZW0sIGhvb2sgKTsKCQkJCWZ4LmVuZCA9IGNvbG9yKCBmeC5lbmQgKTsKCQkJCWZ4LmNvbG9ySW5pdCA9IHRydWU7CgkJCX0KCQkJalF1ZXJ5LmNzc0hvb2tzWyBob29rIF0uc2V0KCBmeC5lbGVtLCBmeC5zdGFydC50cmFuc2l0aW9uKCBmeC5lbmQsIGZ4LnBvcyApICk7CgkJfTsKCX0gKTsKCn07Cgpjb2xvci5ob29rKCBzdGVwSG9va3MgKTsKCmpRdWVyeS5jc3NIb29rcy5ib3JkZXJDb2xvciA9IHsKCWV4cGFuZDogZnVuY3Rpb24oIHZhbHVlICkgewoJCXZhciBleHBhbmRlZCA9IHt9OwoKCQllYWNoKCBbICJUb3AiLCAiUmlnaHQiLCAiQm90dG9tIiwgIkxlZnQiIF0sIGZ1bmN0aW9uKCBpLCBwYXJ0ICkgewoJCQlleHBhbmRlZFsgImJvcmRlciIgKyBwYXJ0ICsgIkNvbG9yIiBdID0gdmFsdWU7CgkJfSApOwoJCXJldHVybiBleHBhbmRlZDsKCX0KfTsKCi8vIEJhc2ljIGNvbG9yIG5hbWVzIG9ubHkuCi8vIFVzYWdlIG9mIGFueSBvZiB0aGUgb3RoZXIgY29sb3IgbmFtZXMgcmVxdWlyZXMgYWRkaW5nIHlvdXJzZWxmIG9yIGluY2x1ZGluZwovLyBqcXVlcnkuY29sb3Iuc3ZnLW5hbWVzLmpzLgpjb2xvcnMgPSBqUXVlcnkuQ29sb3IubmFtZXMgPSB7CgoJLy8gNC4xLiBCYXNpYyBjb2xvciBrZXl3b3JkcwoJYXF1YTogIiMwMGZmZmYiLAoJYmxhY2s6ICIjMDAwMDAwIiwKCWJsdWU6ICIjMDAwMGZmIiwKCWZ1Y2hzaWE6ICIjZmYwMGZmIiwKCWdyYXk6ICIjODA4MDgwIiwKCWdyZWVuOiAiIzAwODAwMCIsCglsaW1lOiAiIzAwZmYwMCIsCgltYXJvb246ICIjODAwMDAwIiwKCW5hdnk6ICIjMDAwMDgwIiwKCW9saXZlOiAiIzgwODAwMCIsCglwdXJwbGU6ICIjODAwMDgwIiwKCXJlZDogIiNmZjAwMDAiLAoJc2lsdmVyOiAiI2MwYzBjMCIsCgl0ZWFsOiAiIzAwODA4MCIsCgl3aGl0ZTogIiNmZmZmZmYiLAoJeWVsbG93OiAiI2ZmZmYwMCIsCgoJLy8gNC4yLjMuICJ0cmFuc3BhcmVudCIgY29sb3Iga2V5d29yZAoJdHJhbnNwYXJlbnQ6IFsgbnVsbCwgbnVsbCwgbnVsbCwgMCBdLAoKCV9kZWZhdWx0OiAiI2ZmZmZmZiIKfTsKCn0gKSggalF1ZXJ5ICk7CgovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIENMQVNTIEFOSU1BVElPTlMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwooIGZ1bmN0aW9uKCkgewoKdmFyIGNsYXNzQW5pbWF0aW9uQWN0aW9ucyA9IFsgImFkZCIsICJyZW1vdmUiLCAidG9nZ2xlIiBdLAoJc2hvcnRoYW5kU3R5bGVzID0gewoJCWJvcmRlcjogMSwKCQlib3JkZXJCb3R0b206IDEsCgkJYm9yZGVyQ29sb3I6IDEsCgkJYm9yZGVyTGVmdDogMSwKCQlib3JkZXJSaWdodDogMSwKCQlib3JkZXJUb3A6IDEsCgkJYm9yZGVyV2lkdGg6IDEsCgkJbWFyZ2luOiAxLAoJCXBhZGRpbmc6IDEKCX07CgokLmVhY2goCglbICJib3JkZXJMZWZ0U3R5bGUiLCAiYm9yZGVyUmlnaHRTdHlsZSIsICJib3JkZXJCb3R0b21TdHlsZSIsICJib3JkZXJUb3BTdHlsZSIgXSwKCWZ1bmN0aW9uKCBfLCBwcm9wICkgewoJCSQuZnguc3RlcFsgcHJvcCBdID0gZnVuY3Rpb24oIGZ4ICkgewoJCQlpZiAoIGZ4LmVuZCAhPT0gIm5vbmUiICYmICFmeC5zZXRBdHRyIHx8IGZ4LnBvcyA9PT0gMSAmJiAhZnguc2V0QXR0ciApIHsKCQkJCWpRdWVyeS5zdHlsZSggZnguZWxlbSwgcHJvcCwgZnguZW5kICk7CgkJCQlmeC5zZXRBdHRyID0gdHJ1ZTsKCQkJfQoJCX07Cgl9Cik7CgpmdW5jdGlvbiBnZXRFbGVtZW50U3R5bGVzKCBlbGVtICkgewoJdmFyIGtleSwgbGVuLAoJCXN0eWxlID0gZWxlbS5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3ID8KCQkJZWxlbS5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoIGVsZW0sIG51bGwgKSA6CgkJCWVsZW0uY3VycmVudFN0eWxlLAoJCXN0eWxlcyA9IHt9OwoKCWlmICggc3R5bGUgJiYgc3R5bGUubGVuZ3RoICYmIHN0eWxlWyAwIF0gJiYgc3R5bGVbIHN0eWxlWyAwIF0gXSApIHsKCQlsZW4gPSBzdHlsZS5sZW5ndGg7CgkJd2hpbGUgKCBsZW4tLSApIHsKCQkJa2V5ID0gc3R5bGVbIGxlbiBdOwoJCQlpZiAoIHR5cGVvZiBzdHlsZVsga2V5IF0gPT09ICJzdHJpbmciICkgewoJCQkJc3R5bGVzWyAkLmNhbWVsQ2FzZSgga2V5ICkgXSA9IHN0eWxlWyBrZXkgXTsKCQkJfQoJCX0KCgkvLyBTdXBwb3J0OiBPcGVyYSwgSUUgPDkKCX0gZWxzZSB7CgkJZm9yICgga2V5IGluIHN0eWxlICkgewoJCQlpZiAoIHR5cGVvZiBzdHlsZVsga2V5IF0gPT09ICJzdHJpbmciICkgewoJCQkJc3R5bGVzWyBrZXkgXSA9IHN0eWxlWyBrZXkgXTsKCQkJfQoJCX0KCX0KCglyZXR1cm4gc3R5bGVzOwp9CgpmdW5jdGlvbiBzdHlsZURpZmZlcmVuY2UoIG9sZFN0eWxlLCBuZXdTdHlsZSApIHsKCXZhciBkaWZmID0ge30sCgkJbmFtZSwgdmFsdWU7CgoJZm9yICggbmFtZSBpbiBuZXdTdHlsZSApIHsKCQl2YWx1ZSA9IG5ld1N0eWxlWyBuYW1lIF07CgkJaWYgKCBvbGRTdHlsZVsgbmFtZSBdICE9PSB2YWx1ZSApIHsKCQkJaWYgKCAhc2hvcnRoYW5kU3R5bGVzWyBuYW1lIF0gKSB7CgkJCQlpZiAoICQuZnguc3RlcFsgbmFtZSBdIHx8ICFpc05hTiggcGFyc2VGbG9hdCggdmFsdWUgKSApICkgewoJCQkJCWRpZmZbIG5hbWUgXSA9IHZhbHVlOwoJCQkJfQoJCQl9CgkJfQoJfQoKCXJldHVybiBkaWZmOwp9CgovLyBTdXBwb3J0OiBqUXVlcnkgPDEuOAppZiAoICEkLmZuLmFkZEJhY2sgKSB7CgkkLmZuLmFkZEJhY2sgPSBmdW5jdGlvbiggc2VsZWN0b3IgKSB7CgkJcmV0dXJuIHRoaXMuYWRkKCBzZWxlY3RvciA9PSBudWxsID8KCQkJdGhpcy5wcmV2T2JqZWN0IDogdGhpcy5wcmV2T2JqZWN0LmZpbHRlciggc2VsZWN0b3IgKQoJCSk7Cgl9Owp9CgokLmVmZmVjdHMuYW5pbWF0ZUNsYXNzID0gZnVuY3Rpb24oIHZhbHVlLCBkdXJhdGlvbiwgZWFzaW5nLCBjYWxsYmFjayApIHsKCXZhciBvID0gJC5zcGVlZCggZHVyYXRpb24sIGVhc2luZywgY2FsbGJhY2sgKTsKCglyZXR1cm4gdGhpcy5xdWV1ZSggZnVuY3Rpb24oKSB7CgkJdmFyIGFuaW1hdGVkID0gJCggdGhpcyApLAoJCQliYXNlQ2xhc3MgPSBhbmltYXRlZC5hdHRyKCAiY2xhc3MiICkgfHwgIiIsCgkJCWFwcGx5Q2xhc3NDaGFuZ2UsCgkJCWFsbEFuaW1hdGlvbnMgPSBvLmNoaWxkcmVuID8gYW5pbWF0ZWQuZmluZCggIioiICkuYWRkQmFjaygpIDogYW5pbWF0ZWQ7CgoJCS8vIE1hcCB0aGUgYW5pbWF0ZWQgb2JqZWN0cyB0byBzdG9yZSB0aGUgb3JpZ2luYWwgc3R5bGVzLgoJCWFsbEFuaW1hdGlvbnMgPSBhbGxBbmltYXRpb25zLm1hcCggZnVuY3Rpb24oKSB7CgkJCXZhciBlbCA9ICQoIHRoaXMgKTsKCQkJcmV0dXJuIHsKCQkJCWVsOiBlbCwKCQkJCXN0YXJ0OiBnZXRFbGVtZW50U3R5bGVzKCB0aGlzICkKCQkJfTsKCQl9ICk7CgoJCS8vIEFwcGx5IGNsYXNzIGNoYW5nZQoJCWFwcGx5Q2xhc3NDaGFuZ2UgPSBmdW5jdGlvbigpIHsKCQkJJC5lYWNoKCBjbGFzc0FuaW1hdGlvbkFjdGlvbnMsIGZ1bmN0aW9uKCBpLCBhY3Rpb24gKSB7CgkJCQlpZiAoIHZhbHVlWyBhY3Rpb24gXSApIHsKCQkJCQlhbmltYXRlZFsgYWN0aW9uICsgIkNsYXNzIiBdKCB2YWx1ZVsgYWN0aW9uIF0gKTsKCQkJCX0KCQkJfSApOwoJCX07CgkJYXBwbHlDbGFzc0NoYW5nZSgpOwoKCQkvLyBNYXAgYWxsIGFuaW1hdGVkIG9iamVjdHMgYWdhaW4gLSBjYWxjdWxhdGUgbmV3IHN0eWxlcyBhbmQgZGlmZgoJCWFsbEFuaW1hdGlvbnMgPSBhbGxBbmltYXRpb25zLm1hcCggZnVuY3Rpb24oKSB7CgkJCXRoaXMuZW5kID0gZ2V0RWxlbWVudFN0eWxlcyggdGhpcy5lbFsgMCBdICk7CgkJCXRoaXMuZGlmZiA9IHN0eWxlRGlmZmVyZW5jZSggdGhpcy5zdGFydCwgdGhpcy5lbmQgKTsKCQkJcmV0dXJuIHRoaXM7CgkJfSApOwoKCQkvLyBBcHBseSBvcmlnaW5hbCBjbGFzcwoJCWFuaW1hdGVkLmF0dHIoICJjbGFzcyIsIGJhc2VDbGFzcyApOwoKCQkvLyBNYXAgYWxsIGFuaW1hdGVkIG9iamVjdHMgYWdhaW4gLSB0aGlzIHRpbWUgY29sbGVjdGluZyBhIHByb21pc2UKCQlhbGxBbmltYXRpb25zID0gYWxsQW5pbWF0aW9ucy5tYXAoIGZ1bmN0aW9uKCkgewoJCQl2YXIgc3R5bGVJbmZvID0gdGhpcywKCQkJCWRmZCA9ICQuRGVmZXJyZWQoKSwKCQkJCW9wdHMgPSAkLmV4dGVuZCgge30sIG8sIHsKCQkJCQlxdWV1ZTogZmFsc2UsCgkJCQkJY29tcGxldGU6IGZ1bmN0aW9uKCkgewoJCQkJCQlkZmQucmVzb2x2ZSggc3R5bGVJbmZvICk7CgkJCQkJfQoJCQkJfSApOwoKCQkJdGhpcy5lbC5hbmltYXRlKCB0aGlzLmRpZmYsIG9wdHMgKTsKCQkJcmV0dXJuIGRmZC5wcm9taXNlKCk7CgkJfSApOwoKCQkvLyBPbmNlIGFsbCBhbmltYXRpb25zIGhhdmUgY29tcGxldGVkOgoJCSQud2hlbi5hcHBseSggJCwgYWxsQW5pbWF0aW9ucy5nZXQoKSApLmRvbmUoIGZ1bmN0aW9uKCkgewoKCQkJLy8gU2V0IHRoZSBmaW5hbCBjbGFzcwoJCQlhcHBseUNsYXNzQ2hhbmdlKCk7CgoJCQkvLyBGb3IgZWFjaCBhbmltYXRlZCBlbGVtZW50LAoJCQkvLyBjbGVhciBhbGwgY3NzIHByb3BlcnRpZXMgdGhhdCB3ZXJlIGFuaW1hdGVkCgkJCSQuZWFjaCggYXJndW1lbnRzLCBmdW5jdGlvbigpIHsKCQkJCXZhciBlbCA9IHRoaXMuZWw7CgkJCQkkLmVhY2goIHRoaXMuZGlmZiwgZnVuY3Rpb24oIGtleSApIHsKCQkJCQllbC5jc3MoIGtleSwgIiIgKTsKCQkJCX0gKTsKCQkJfSApOwoKCQkJLy8gVGhpcyBpcyBndWFybnRlZWQgdG8gYmUgdGhlcmUgaWYgeW91IHVzZSBqUXVlcnkuc3BlZWQoKQoJCQkvLyBpdCBhbHNvIGhhbmRsZXMgZGVxdWV1aW5nIHRoZSBuZXh0IGFuaW0uLi4KCQkJby5jb21wbGV0ZS5jYWxsKCBhbmltYXRlZFsgMCBdICk7CgkJfSApOwoJfSApOwp9OwoKJC5mbi5leHRlbmQoIHsKCWFkZENsYXNzOiAoIGZ1bmN0aW9uKCBvcmlnICkgewoJCXJldHVybiBmdW5jdGlvbiggY2xhc3NOYW1lcywgc3BlZWQsIGVhc2luZywgY2FsbGJhY2sgKSB7CgkJCXJldHVybiBzcGVlZCA/CgkJCQkkLmVmZmVjdHMuYW5pbWF0ZUNsYXNzLmNhbGwoIHRoaXMsCgkJCQkJeyBhZGQ6IGNsYXNzTmFtZXMgfSwgc3BlZWQsIGVhc2luZywgY2FsbGJhY2sgKSA6CgkJCQlvcmlnLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKTsKCQl9OwoJfSApKCAkLmZuLmFkZENsYXNzICksCgoJcmVtb3ZlQ2xhc3M6ICggZnVuY3Rpb24oIG9yaWcgKSB7CgkJcmV0dXJuIGZ1bmN0aW9uKCBjbGFzc05hbWVzLCBzcGVlZCwgZWFzaW5nLCBjYWxsYmFjayApIHsKCQkJcmV0dXJuIGFyZ3VtZW50cy5sZW5ndGggPiAxID8KCQkJCSQuZWZmZWN0cy5hbmltYXRlQ2xhc3MuY2FsbCggdGhpcywKCQkJCQl7IHJlbW92ZTogY2xhc3NOYW1lcyB9LCBzcGVlZCwgZWFzaW5nLCBjYWxsYmFjayApIDoKCQkJCW9yaWcuYXBwbHkoIHRoaXMsIGFyZ3VtZW50cyApOwoJCX07Cgl9ICkoICQuZm4ucmVtb3ZlQ2xhc3MgKSwKCgl0b2dnbGVDbGFzczogKCBmdW5jdGlvbiggb3JpZyApIHsKCQlyZXR1cm4gZnVuY3Rpb24oIGNsYXNzTmFtZXMsIGZvcmNlLCBzcGVlZCwgZWFzaW5nLCBjYWxsYmFjayApIHsKCQkJaWYgKCB0eXBlb2YgZm9yY2UgPT09ICJib29sZWFuIiB8fCBmb3JjZSA9PT0gdW5kZWZpbmVkICkgewoJCQkJaWYgKCAhc3BlZWQgKSB7CgoJCQkJCS8vIFdpdGhvdXQgc3BlZWQgcGFyYW1ldGVyCgkJCQkJcmV0dXJuIG9yaWcuYXBwbHkoIHRoaXMsIGFyZ3VtZW50cyApOwoJCQkJfSBlbHNlIHsKCQkJCQlyZXR1cm4gJC5lZmZlY3RzLmFuaW1hdGVDbGFzcy5jYWxsKCB0aGlzLAoJCQkJCQkoIGZvcmNlID8geyBhZGQ6IGNsYXNzTmFtZXMgfSA6IHsgcmVtb3ZlOiBjbGFzc05hbWVzIH0gKSwKCQkJCQkJc3BlZWQsIGVhc2luZywgY2FsbGJhY2sgKTsKCQkJCX0KCQkJfSBlbHNlIHsKCgkJCQkvLyBXaXRob3V0IGZvcmNlIHBhcmFtZXRlcgoJCQkJcmV0dXJuICQuZWZmZWN0cy5hbmltYXRlQ2xhc3MuY2FsbCggdGhpcywKCQkJCQl7IHRvZ2dsZTogY2xhc3NOYW1lcyB9LCBmb3JjZSwgc3BlZWQsIGVhc2luZyApOwoJCQl9CgkJfTsKCX0gKSggJC5mbi50b2dnbGVDbGFzcyApLAoKCXN3aXRjaENsYXNzOiBmdW5jdGlvbiggcmVtb3ZlLCBhZGQsIHNwZWVkLCBlYXNpbmcsIGNhbGxiYWNrICkgewoJCXJldHVybiAkLmVmZmVjdHMuYW5pbWF0ZUNsYXNzLmNhbGwoIHRoaXMsIHsKCQkJYWRkOiBhZGQsCgkJCXJlbW92ZTogcmVtb3ZlCgkJfSwgc3BlZWQsIGVhc2luZywgY2FsbGJhY2sgKTsKCX0KfSApOwoKfSApKCk7CgovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogRUZGRUNUUyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwovKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwoKKCBmdW5jdGlvbigpIHsKCmlmICggJC5leHByICYmICQuZXhwci5maWx0ZXJzICYmICQuZXhwci5maWx0ZXJzLmFuaW1hdGVkICkgewoJJC5leHByLmZpbHRlcnMuYW5pbWF0ZWQgPSAoIGZ1bmN0aW9uKCBvcmlnICkgewoJCXJldHVybiBmdW5jdGlvbiggZWxlbSApIHsKCQkJcmV0dXJuICEhJCggZWxlbSApLmRhdGEoIGRhdGFTcGFjZUFuaW1hdGVkICkgfHwgb3JpZyggZWxlbSApOwoJCX07Cgl9ICkoICQuZXhwci5maWx0ZXJzLmFuaW1hdGVkICk7Cn0KCmlmICggJC51aUJhY2tDb21wYXQgIT09IGZhbHNlICkgewoJJC5leHRlbmQoICQuZWZmZWN0cywgewoKCQkvLyBTYXZlcyBhIHNldCBvZiBwcm9wZXJ0aWVzIGluIGEgZGF0YSBzdG9yYWdlCgkJc2F2ZTogZnVuY3Rpb24oIGVsZW1lbnQsIHNldCApIHsKCQkJdmFyIGkgPSAwLCBsZW5ndGggPSBzZXQubGVuZ3RoOwoJCQlmb3IgKCA7IGkgPCBsZW5ndGg7IGkrKyApIHsKCQkJCWlmICggc2V0WyBpIF0gIT09IG51bGwgKSB7CgkJCQkJZWxlbWVudC5kYXRhKCBkYXRhU3BhY2UgKyBzZXRbIGkgXSwgZWxlbWVudFsgMCBdLnN0eWxlWyBzZXRbIGkgXSBdICk7CgkJCQl9CgkJCX0KCQl9LAoKCQkvLyBSZXN0b3JlcyBhIHNldCBvZiBwcmV2aW91c2x5IHNhdmVkIHByb3BlcnRpZXMgZnJvbSBhIGRhdGEgc3RvcmFnZQoJCXJlc3RvcmU6IGZ1bmN0aW9uKCBlbGVtZW50LCBzZXQgKSB7CgkJCXZhciB2YWwsIGkgPSAwLCBsZW5ndGggPSBzZXQubGVuZ3RoOwoJCQlmb3IgKCA7IGkgPCBsZW5ndGg7IGkrKyApIHsKCQkJCWlmICggc2V0WyBpIF0gIT09IG51bGwgKSB7CgkJCQkJdmFsID0gZWxlbWVudC5kYXRhKCBkYXRhU3BhY2UgKyBzZXRbIGkgXSApOwoJCQkJCWVsZW1lbnQuY3NzKCBzZXRbIGkgXSwgdmFsICk7CgkJCQl9CgkJCX0KCQl9LAoKCQlzZXRNb2RlOiBmdW5jdGlvbiggZWwsIG1vZGUgKSB7CgkJCWlmICggbW9kZSA9PT0gInRvZ2dsZSIgKSB7CgkJCQltb2RlID0gZWwuaXMoICI6aGlkZGVuIiApID8gInNob3ciIDogImhpZGUiOwoJCQl9CgkJCXJldHVybiBtb2RlOwoJCX0sCgoJCS8vIFdyYXBzIHRoZSBlbGVtZW50IGFyb3VuZCBhIHdyYXBwZXIgdGhhdCBjb3BpZXMgcG9zaXRpb24gcHJvcGVydGllcwoJCWNyZWF0ZVdyYXBwZXI6IGZ1bmN0aW9uKCBlbGVtZW50ICkgewoKCQkJLy8gSWYgdGhlIGVsZW1lbnQgaXMgYWxyZWFkeSB3cmFwcGVkLCByZXR1cm4gaXQKCQkJaWYgKCBlbGVtZW50LnBhcmVudCgpLmlzKCAiLnVpLWVmZmVjdHMtd3JhcHBlciIgKSApIHsKCQkJCXJldHVybiBlbGVtZW50LnBhcmVudCgpOwoJCQl9CgoJCQkvLyBXcmFwIHRoZSBlbGVtZW50CgkJCXZhciBwcm9wcyA9IHsKCQkJCQl3aWR0aDogZWxlbWVudC5vdXRlcldpZHRoKCB0cnVlICksCgkJCQkJaGVpZ2h0OiBlbGVtZW50Lm91dGVySGVpZ2h0KCB0cnVlICksCgkJCQkJImZsb2F0IjogZWxlbWVudC5jc3MoICJmbG9hdCIgKQoJCQkJfSwKCQkJCXdyYXBwZXIgPSAkKCAiPGRpdj48L2Rpdj4iICkKCQkJCQkuYWRkQ2xhc3MoICJ1aS1lZmZlY3RzLXdyYXBwZXIiICkKCQkJCQkuY3NzKCB7CgkJCQkJCWZvbnRTaXplOiAiMTAwJSIsCgkJCQkJCWJhY2tncm91bmQ6ICJ0cmFuc3BhcmVudCIsCgkJCQkJCWJvcmRlcjogIm5vbmUiLAoJCQkJCQltYXJnaW46IDAsCgkJCQkJCXBhZGRpbmc6IDAKCQkJCQl9ICksCgoJCQkJLy8gU3RvcmUgdGhlIHNpemUgaW4gY2FzZSB3aWR0aC9oZWlnaHQgYXJlIGRlZmluZWQgaW4gJSAtIEZpeGVzICM1MjQ1CgkJCQlzaXplID0gewoJCQkJCXdpZHRoOiBlbGVtZW50LndpZHRoKCksCgkJCQkJaGVpZ2h0OiBlbGVtZW50LmhlaWdodCgpCgkJCQl9LAoJCQkJYWN0aXZlID0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudDsKCgkJCS8vIFN1cHBvcnQ6IEZpcmVmb3gKCQkJLy8gRmlyZWZveCBpbmNvcnJlY3RseSBleHBvc2VzIGFub255bW91cyBjb250ZW50CgkJCS8vIGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTU2MTY2NAoJCQl0cnkgewoJCQkJYWN0aXZlLmlkOwoJCQl9IGNhdGNoICggZSApIHsKCQkJCWFjdGl2ZSA9IGRvY3VtZW50LmJvZHk7CgkJCX0KCgkJCWVsZW1lbnQud3JhcCggd3JhcHBlciApOwoKCQkJLy8gRml4ZXMgIzc1OTUgLSBFbGVtZW50cyBsb3NlIGZvY3VzIHdoZW4gd3JhcHBlZC4KCQkJaWYgKCBlbGVtZW50WyAwIF0gPT09IGFjdGl2ZSB8fCAkLmNvbnRhaW5zKCBlbGVtZW50WyAwIF0sIGFjdGl2ZSApICkgewoJCQkJJCggYWN0aXZlICkudHJpZ2dlciggImZvY3VzIiApOwoJCQl9CgoJCQkvLyBIb3RmaXggZm9yIGpRdWVyeSAxLjQgc2luY2Ugc29tZSBjaGFuZ2UgaW4gd3JhcCgpIHNlZW1zIHRvIGFjdHVhbGx5CgkJCS8vIGxvc2UgdGhlIHJlZmVyZW5jZSB0byB0aGUgd3JhcHBlZCBlbGVtZW50CgkJCXdyYXBwZXIgPSBlbGVtZW50LnBhcmVudCgpOwoKCQkJLy8gVHJhbnNmZXIgcG9zaXRpb25pbmcgcHJvcGVydGllcyB0byB0aGUgd3JhcHBlcgoJCQlpZiAoIGVsZW1lbnQuY3NzKCAicG9zaXRpb24iICkgPT09ICJzdGF0aWMiICkgewoJCQkJd3JhcHBlci5jc3MoIHsgcG9zaXRpb246ICJyZWxhdGl2ZSIgfSApOwoJCQkJZWxlbWVudC5jc3MoIHsgcG9zaXRpb246ICJyZWxhdGl2ZSIgfSApOwoJCQl9IGVsc2UgewoJCQkJJC5leHRlbmQoIHByb3BzLCB7CgkJCQkJcG9zaXRpb246IGVsZW1lbnQuY3NzKCAicG9zaXRpb24iICksCgkJCQkJekluZGV4OiBlbGVtZW50LmNzcyggInotaW5kZXgiICkKCQkJCX0gKTsKCQkJCSQuZWFjaCggWyAidG9wIiwgImxlZnQiLCAiYm90dG9tIiwgInJpZ2h0IiBdLCBmdW5jdGlvbiggaSwgcG9zICkgewoJCQkJCXByb3BzWyBwb3MgXSA9IGVsZW1lbnQuY3NzKCBwb3MgKTsKCQkJCQlpZiAoIGlzTmFOKCBwYXJzZUludCggcHJvcHNbIHBvcyBdLCAxMCApICkgKSB7CgkJCQkJCXByb3BzWyBwb3MgXSA9ICJhdXRvIjsKCQkJCQl9CgkJCQl9ICk7CgkJCQllbGVtZW50LmNzcyggewoJCQkJCXBvc2l0aW9uOiAicmVsYXRpdmUiLAoJCQkJCXRvcDogMCwKCQkJCQlsZWZ0OiAwLAoJCQkJCXJpZ2h0OiAiYXV0byIsCgkJCQkJYm90dG9tOiAiYXV0byIKCQkJCX0gKTsKCQkJfQoJCQllbGVtZW50LmNzcyggc2l6ZSApOwoKCQkJcmV0dXJuIHdyYXBwZXIuY3NzKCBwcm9wcyApLnNob3coKTsKCQl9LAoKCQlyZW1vdmVXcmFwcGVyOiBmdW5jdGlvbiggZWxlbWVudCApIHsKCQkJdmFyIGFjdGl2ZSA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7CgoJCQlpZiAoIGVsZW1lbnQucGFyZW50KCkuaXMoICIudWktZWZmZWN0cy13cmFwcGVyIiApICkgewoJCQkJZWxlbWVudC5wYXJlbnQoKS5yZXBsYWNlV2l0aCggZWxlbWVudCApOwoKCQkJCS8vIEZpeGVzICM3NTk1IC0gRWxlbWVudHMgbG9zZSBmb2N1cyB3aGVuIHdyYXBwZWQuCgkJCQlpZiAoIGVsZW1lbnRbIDAgXSA9PT0gYWN0aXZlIHx8ICQuY29udGFpbnMoIGVsZW1lbnRbIDAgXSwgYWN0aXZlICkgKSB7CgkJCQkJJCggYWN0aXZlICkudHJpZ2dlciggImZvY3VzIiApOwoJCQkJfQoJCQl9CgoJCQlyZXR1cm4gZWxlbWVudDsKCQl9Cgl9ICk7Cn0KCiQuZXh0ZW5kKCAkLmVmZmVjdHMsIHsKCXZlcnNpb246ICIxLjEyLjEiLAoKCWRlZmluZTogZnVuY3Rpb24oIG5hbWUsIG1vZGUsIGVmZmVjdCApIHsKCQlpZiAoICFlZmZlY3QgKSB7CgkJCWVmZmVjdCA9IG1vZGU7CgkJCW1vZGUgPSAiZWZmZWN0IjsKCQl9CgoJCSQuZWZmZWN0cy5lZmZlY3RbIG5hbWUgXSA9IGVmZmVjdDsKCQkkLmVmZmVjdHMuZWZmZWN0WyBuYW1lIF0ubW9kZSA9IG1vZGU7CgoJCXJldHVybiBlZmZlY3Q7Cgl9LAoKCXNjYWxlZERpbWVuc2lvbnM6IGZ1bmN0aW9uKCBlbGVtZW50LCBwZXJjZW50LCBkaXJlY3Rpb24gKSB7CgkJaWYgKCBwZXJjZW50ID09PSAwICkgewoJCQlyZXR1cm4gewoJCQkJaGVpZ2h0OiAwLAoJCQkJd2lkdGg6IDAsCgkJCQlvdXRlckhlaWdodDogMCwKCQkJCW91dGVyV2lkdGg6IDAKCQkJfTsKCQl9CgoJCXZhciB4ID0gZGlyZWN0aW9uICE9PSAiaG9yaXpvbnRhbCIgPyAoICggcGVyY2VudCB8fCAxMDAgKSAvIDEwMCApIDogMSwKCQkJeSA9IGRpcmVjdGlvbiAhPT0gInZlcnRpY2FsIiA/ICggKCBwZXJjZW50IHx8IDEwMCApIC8gMTAwICkgOiAxOwoKCQlyZXR1cm4gewoJCQloZWlnaHQ6IGVsZW1lbnQuaGVpZ2h0KCkgKiB5LAoJCQl3aWR0aDogZWxlbWVudC53aWR0aCgpICogeCwKCQkJb3V0ZXJIZWlnaHQ6IGVsZW1lbnQub3V0ZXJIZWlnaHQoKSAqIHksCgkJCW91dGVyV2lkdGg6IGVsZW1lbnQub3V0ZXJXaWR0aCgpICogeAoJCX07CgoJfSwKCgljbGlwVG9Cb3g6IGZ1bmN0aW9uKCBhbmltYXRpb24gKSB7CgkJcmV0dXJuIHsKCQkJd2lkdGg6IGFuaW1hdGlvbi5jbGlwLnJpZ2h0IC0gYW5pbWF0aW9uLmNsaXAubGVmdCwKCQkJaGVpZ2h0OiBhbmltYXRpb24uY2xpcC5ib3R0b20gLSBhbmltYXRpb24uY2xpcC50b3AsCgkJCWxlZnQ6IGFuaW1hdGlvbi5jbGlwLmxlZnQsCgkJCXRvcDogYW5pbWF0aW9uLmNsaXAudG9wCgkJfTsKCX0sCgoJLy8gSW5qZWN0cyByZWNlbnRseSBxdWV1ZWQgZnVuY3Rpb25zIHRvIGJlIGZpcnN0IGluIGxpbmUgKGFmdGVyICJpbnByb2dyZXNzIikKCXVuc2hpZnQ6IGZ1bmN0aW9uKCBlbGVtZW50LCBxdWV1ZUxlbmd0aCwgY291bnQgKSB7CgkJdmFyIHF1ZXVlID0gZWxlbWVudC5xdWV1ZSgpOwoKCQlpZiAoIHF1ZXVlTGVuZ3RoID4gMSApIHsKCQkJcXVldWUuc3BsaWNlLmFwcGx5KCBxdWV1ZSwKCQkJCVsgMSwgMCBdLmNvbmNhdCggcXVldWUuc3BsaWNlKCBxdWV1ZUxlbmd0aCwgY291bnQgKSApICk7CgkJfQoJCWVsZW1lbnQuZGVxdWV1ZSgpOwoJfSwKCglzYXZlU3R5bGU6IGZ1bmN0aW9uKCBlbGVtZW50ICkgewoJCWVsZW1lbnQuZGF0YSggZGF0YVNwYWNlU3R5bGUsIGVsZW1lbnRbIDAgXS5zdHlsZS5jc3NUZXh0ICk7Cgl9LAoKCXJlc3RvcmVTdHlsZTogZnVuY3Rpb24oIGVsZW1lbnQgKSB7CgkJZWxlbWVudFsgMCBdLnN0eWxlLmNzc1RleHQgPSBlbGVtZW50LmRhdGEoIGRhdGFTcGFjZVN0eWxlICkgfHwgIiI7CgkJZWxlbWVudC5yZW1vdmVEYXRhKCBkYXRhU3BhY2VTdHlsZSApOwoJfSwKCgltb2RlOiBmdW5jdGlvbiggZWxlbWVudCwgbW9kZSApIHsKCQl2YXIgaGlkZGVuID0gZWxlbWVudC5pcyggIjpoaWRkZW4iICk7CgoJCWlmICggbW9kZSA9PT0gInRvZ2dsZSIgKSB7CgkJCW1vZGUgPSBoaWRkZW4gPyAic2hvdyIgOiAiaGlkZSI7CgkJfQoJCWlmICggaGlkZGVuID8gbW9kZSA9PT0gImhpZGUiIDogbW9kZSA9PT0gInNob3ciICkgewoJCQltb2RlID0gIm5vbmUiOwoJCX0KCQlyZXR1cm4gbW9kZTsKCX0sCgoJLy8gVHJhbnNsYXRlcyBhIFt0b3AsbGVmdF0gYXJyYXkgaW50byBhIGJhc2VsaW5lIHZhbHVlCglnZXRCYXNlbGluZTogZnVuY3Rpb24oIG9yaWdpbiwgb3JpZ2luYWwgKSB7CgkJdmFyIHksIHg7CgoJCXN3aXRjaCAoIG9yaWdpblsgMCBdICkgewoJCWNhc2UgInRvcCI6CgkJCXkgPSAwOwoJCQlicmVhazsKCQljYXNlICJtaWRkbGUiOgoJCQl5ID0gMC41OwoJCQlicmVhazsKCQljYXNlICJib3R0b20iOgoJCQl5ID0gMTsKCQkJYnJlYWs7CgkJZGVmYXVsdDoKCQkJeSA9IG9yaWdpblsgMCBdIC8gb3JpZ2luYWwuaGVpZ2h0OwoJCX0KCgkJc3dpdGNoICggb3JpZ2luWyAxIF0gKSB7CgkJY2FzZSAibGVmdCI6CgkJCXggPSAwOwoJCQlicmVhazsKCQljYXNlICJjZW50ZXIiOgoJCQl4ID0gMC41OwoJCQlicmVhazsKCQljYXNlICJyaWdodCI6CgkJCXggPSAxOwoJCQlicmVhazsKCQlkZWZhdWx0OgoJCQl4ID0gb3JpZ2luWyAxIF0gLyBvcmlnaW5hbC53aWR0aDsKCQl9CgoJCXJldHVybiB7CgkJCXg6IHgsCgkJCXk6IHkKCQl9OwoJfSwKCgkvLyBDcmVhdGVzIGEgcGxhY2Vob2xkZXIgZWxlbWVudCBzbyB0aGF0IHRoZSBvcmlnaW5hbCBlbGVtZW50IGNhbiBiZSBtYWRlIGFic29sdXRlCgljcmVhdGVQbGFjZWhvbGRlcjogZnVuY3Rpb24oIGVsZW1lbnQgKSB7CgkJdmFyIHBsYWNlaG9sZGVyLAoJCQljc3NQb3NpdGlvbiA9IGVsZW1lbnQuY3NzKCAicG9zaXRpb24iICksCgkJCXBvc2l0aW9uID0gZWxlbWVudC5wb3NpdGlvbigpOwoKCQkvLyBMb2NrIGluIG1hcmdpbnMgZmlyc3QgdG8gYWNjb3VudCBmb3IgZm9ybSBlbGVtZW50cywgd2hpY2gKCQkvLyB3aWxsIGNoYW5nZSBtYXJnaW4gaWYgeW91IGV4cGxpY2l0bHkgc2V0IGhlaWdodAoJCS8vIHNlZTogaHR0cDovL2pzZmlkZGxlLm5ldC9KWlNNdC8zLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA3MzgwCgkJLy8gU3VwcG9ydDogU2FmYXJpCgkJZWxlbWVudC5jc3MoIHsKCQkJbWFyZ2luVG9wOiBlbGVtZW50LmNzcyggIm1hcmdpblRvcCIgKSwKCQkJbWFyZ2luQm90dG9tOiBlbGVtZW50LmNzcyggIm1hcmdpbkJvdHRvbSIgKSwKCQkJbWFyZ2luTGVmdDogZWxlbWVudC5jc3MoICJtYXJnaW5MZWZ0IiApLAoJCQltYXJnaW5SaWdodDogZWxlbWVudC5jc3MoICJtYXJnaW5SaWdodCIgKQoJCX0gKQoJCS5vdXRlcldpZHRoKCBlbGVtZW50Lm91dGVyV2lkdGgoKSApCgkJLm91dGVySGVpZ2h0KCBlbGVtZW50Lm91dGVySGVpZ2h0KCkgKTsKCgkJaWYgKCAvXihzdGF0aWN8cmVsYXRpdmUpLy50ZXN0KCBjc3NQb3NpdGlvbiApICkgewoJCQljc3NQb3NpdGlvbiA9ICJhYnNvbHV0ZSI7CgoJCQlwbGFjZWhvbGRlciA9ICQoICI8IiArIGVsZW1lbnRbIDAgXS5ub2RlTmFtZSArICI+IiApLmluc2VydEFmdGVyKCBlbGVtZW50ICkuY3NzKCB7CgoJCQkJLy8gQ29udmVydCBpbmxpbmUgdG8gaW5saW5lIGJsb2NrIHRvIGFjY291bnQgZm9yIGlubGluZSBlbGVtZW50cwoJCQkJLy8gdGhhdCB0dXJuIHRvIGlubGluZSBibG9jayBiYXNlZCBvbiBjb250ZW50IChsaWtlIGltZykKCQkJCWRpc3BsYXk6IC9eKGlubGluZXxydWJ5KS8udGVzdCggZWxlbWVudC5jc3MoICJkaXNwbGF5IiApICkgPwoJCQkJCSJpbmxpbmUtYmxvY2siIDoKCQkJCQkiYmxvY2siLAoJCQkJdmlzaWJpbGl0eTogImhpZGRlbiIsCgoJCQkJLy8gTWFyZ2lucyBuZWVkIHRvIGJlIHNldCB0byBhY2NvdW50IGZvciBtYXJnaW4gY29sbGFwc2UKCQkJCW1hcmdpblRvcDogZWxlbWVudC5jc3MoICJtYXJnaW5Ub3AiICksCgkJCQltYXJnaW5Cb3R0b206IGVsZW1lbnQuY3NzKCAibWFyZ2luQm90dG9tIiApLAoJCQkJbWFyZ2luTGVmdDogZWxlbWVudC5jc3MoICJtYXJnaW5MZWZ0IiApLAoJCQkJbWFyZ2luUmlnaHQ6IGVsZW1lbnQuY3NzKCAibWFyZ2luUmlnaHQiICksCgkJCQkiZmxvYXQiOiBlbGVtZW50LmNzcyggImZsb2F0IiApCgkJCX0gKQoJCQkub3V0ZXJXaWR0aCggZWxlbWVudC5vdXRlcldpZHRoKCkgKQoJCQkub3V0ZXJIZWlnaHQoIGVsZW1lbnQub3V0ZXJIZWlnaHQoKSApCgkJCS5hZGRDbGFzcyggInVpLWVmZmVjdHMtcGxhY2Vob2xkZXIiICk7CgoJCQllbGVtZW50LmRhdGEoIGRhdGFTcGFjZSArICJwbGFjZWhvbGRlciIsIHBsYWNlaG9sZGVyICk7CgkJfQoKCQllbGVtZW50LmNzcyggewoJCQlwb3NpdGlvbjogY3NzUG9zaXRpb24sCgkJCWxlZnQ6IHBvc2l0aW9uLmxlZnQsCgkJCXRvcDogcG9zaXRpb24udG9wCgkJfSApOwoKCQlyZXR1cm4gcGxhY2Vob2xkZXI7Cgl9LAoKCXJlbW92ZVBsYWNlaG9sZGVyOiBmdW5jdGlvbiggZWxlbWVudCApIHsKCQl2YXIgZGF0YUtleSA9IGRhdGFTcGFjZSArICJwbGFjZWhvbGRlciIsCgkJCQlwbGFjZWhvbGRlciA9IGVsZW1lbnQuZGF0YSggZGF0YUtleSApOwoKCQlpZiAoIHBsYWNlaG9sZGVyICkgewoJCQlwbGFjZWhvbGRlci5yZW1vdmUoKTsKCQkJZWxlbWVudC5yZW1vdmVEYXRhKCBkYXRhS2V5ICk7CgkJfQoJfSwKCgkvLyBSZW1vdmVzIGEgcGxhY2Vob2xkZXIgaWYgaXQgZXhpc3RzIGFuZCByZXN0b3JlcwoJLy8gcHJvcGVydGllcyB0aGF0IHdlcmUgbW9kaWZpZWQgZHVyaW5nIHBsYWNlaG9sZGVyIGNyZWF0aW9uCgljbGVhblVwOiBmdW5jdGlvbiggZWxlbWVudCApIHsKCQkkLmVmZmVjdHMucmVzdG9yZVN0eWxlKCBlbGVtZW50ICk7CgkJJC5lZmZlY3RzLnJlbW92ZVBsYWNlaG9sZGVyKCBlbGVtZW50ICk7Cgl9LAoKCXNldFRyYW5zaXRpb246IGZ1bmN0aW9uKCBlbGVtZW50LCBsaXN0LCBmYWN0b3IsIHZhbHVlICkgewoJCXZhbHVlID0gdmFsdWUgfHwge307CgkJJC5lYWNoKCBsaXN0LCBmdW5jdGlvbiggaSwgeCApIHsKCQkJdmFyIHVuaXQgPSBlbGVtZW50LmNzc1VuaXQoIHggKTsKCQkJaWYgKCB1bml0WyAwIF0gPiAwICkgewoJCQkJdmFsdWVbIHggXSA9IHVuaXRbIDAgXSAqIGZhY3RvciArIHVuaXRbIDEgXTsKCQkJfQoJCX0gKTsKCQlyZXR1cm4gdmFsdWU7Cgl9Cn0gKTsKCi8vIFJldHVybiBhbiBlZmZlY3Qgb3B0aW9ucyBvYmplY3QgZm9yIHRoZSBnaXZlbiBwYXJhbWV0ZXJzOgpmdW5jdGlvbiBfbm9ybWFsaXplQXJndW1lbnRzKCBlZmZlY3QsIG9wdGlvbnMsIHNwZWVkLCBjYWxsYmFjayApIHsKCgkvLyBBbGxvdyBwYXNzaW5nIGFsbCBvcHRpb25zIGFzIHRoZSBmaXJzdCBwYXJhbWV0ZXIKCWlmICggJC5pc1BsYWluT2JqZWN0KCBlZmZlY3QgKSApIHsKCQlvcHRpb25zID0gZWZmZWN0OwoJCWVmZmVjdCA9IGVmZmVjdC5lZmZlY3Q7Cgl9CgoJLy8gQ29udmVydCB0byBhbiBvYmplY3QKCWVmZmVjdCA9IHsgZWZmZWN0OiBlZmZlY3QgfTsKCgkvLyBDYXRjaCAoZWZmZWN0LCBudWxsLCAuLi4pCglpZiAoIG9wdGlvbnMgPT0gbnVsbCApIHsKCQlvcHRpb25zID0ge307Cgl9CgoJLy8gQ2F0Y2ggKGVmZmVjdCwgY2FsbGJhY2spCglpZiAoICQuaXNGdW5jdGlvbiggb3B0aW9ucyApICkgewoJCWNhbGxiYWNrID0gb3B0aW9uczsKCQlzcGVlZCA9IG51bGw7CgkJb3B0aW9ucyA9IHt9OwoJfQoKCS8vIENhdGNoIChlZmZlY3QsIHNwZWVkLCA/KQoJaWYgKCB0eXBlb2Ygb3B0aW9ucyA9PT0gIm51bWJlciIgfHwgJC5meC5zcGVlZHNbIG9wdGlvbnMgXSApIHsKCQljYWxsYmFjayA9IHNwZWVkOwoJCXNwZWVkID0gb3B0aW9uczsKCQlvcHRpb25zID0ge307Cgl9CgoJLy8gQ2F0Y2ggKGVmZmVjdCwgb3B0aW9ucywgY2FsbGJhY2spCglpZiAoICQuaXNGdW5jdGlvbiggc3BlZWQgKSApIHsKCQljYWxsYmFjayA9IHNwZWVkOwoJCXNwZWVkID0gbnVsbDsKCX0KCgkvLyBBZGQgb3B0aW9ucyB0byBlZmZlY3QKCWlmICggb3B0aW9ucyApIHsKCQkkLmV4dGVuZCggZWZmZWN0LCBvcHRpb25zICk7Cgl9CgoJc3BlZWQgPSBzcGVlZCB8fCBvcHRpb25zLmR1cmF0aW9uOwoJZWZmZWN0LmR1cmF0aW9uID0gJC5meC5vZmYgPyAwIDoKCQl0eXBlb2Ygc3BlZWQgPT09ICJudW1iZXIiID8gc3BlZWQgOgoJCXNwZWVkIGluICQuZnguc3BlZWRzID8gJC5meC5zcGVlZHNbIHNwZWVkIF0gOgoJCSQuZnguc3BlZWRzLl9kZWZhdWx0OwoKCWVmZmVjdC5jb21wbGV0ZSA9IGNhbGxiYWNrIHx8IG9wdGlvbnMuY29tcGxldGU7CgoJcmV0dXJuIGVmZmVjdDsKfQoKZnVuY3Rpb24gc3RhbmRhcmRBbmltYXRpb25PcHRpb24oIG9wdGlvbiApIHsKCgkvLyBWYWxpZCBzdGFuZGFyZCBzcGVlZHMgKG5vdGhpbmcsIG51bWJlciwgbmFtZWQgc3BlZWQpCglpZiAoICFvcHRpb24gfHwgdHlwZW9mIG9wdGlvbiA9PT0gIm51bWJlciIgfHwgJC5meC5zcGVlZHNbIG9wdGlvbiBdICkgewoJCXJldHVybiB0cnVlOwoJfQoKCS8vIEludmFsaWQgc3RyaW5ncyAtIHRyZWF0IGFzICJub3JtYWwiIHNwZWVkCglpZiAoIHR5cGVvZiBvcHRpb24gPT09ICJzdHJpbmciICYmICEkLmVmZmVjdHMuZWZmZWN0WyBvcHRpb24gXSApIHsKCQlyZXR1cm4gdHJ1ZTsKCX0KCgkvLyBDb21wbGV0ZSBjYWxsYmFjawoJaWYgKCAkLmlzRnVuY3Rpb24oIG9wdGlvbiApICkgewoJCXJldHVybiB0cnVlOwoJfQoKCS8vIE9wdGlvbnMgaGFzaCAoYnV0IG5vdCBuYW1pbmcgYW4gZWZmZWN0KQoJaWYgKCB0eXBlb2Ygb3B0aW9uID09PSAib2JqZWN0IiAmJiAhb3B0aW9uLmVmZmVjdCApIHsKCQlyZXR1cm4gdHJ1ZTsKCX0KCgkvLyBEaWRuJ3QgbWF0Y2ggYW55IHN0YW5kYXJkIEFQSQoJcmV0dXJuIGZhbHNlOwp9CgokLmZuLmV4dGVuZCggewoJZWZmZWN0OiBmdW5jdGlvbiggLyogZWZmZWN0LCBvcHRpb25zLCBzcGVlZCwgY2FsbGJhY2sgKi8gKSB7CgkJdmFyIGFyZ3MgPSBfbm9ybWFsaXplQXJndW1lbnRzLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKSwKCQkJZWZmZWN0TWV0aG9kID0gJC5lZmZlY3RzLmVmZmVjdFsgYXJncy5lZmZlY3QgXSwKCQkJZGVmYXVsdE1vZGUgPSBlZmZlY3RNZXRob2QubW9kZSwKCQkJcXVldWUgPSBhcmdzLnF1ZXVlLAoJCQlxdWV1ZU5hbWUgPSBxdWV1ZSB8fCAiZngiLAoJCQljb21wbGV0ZSA9IGFyZ3MuY29tcGxldGUsCgkJCW1vZGUgPSBhcmdzLm1vZGUsCgkJCW1vZGVzID0gW10sCgkJCXByZWZpbHRlciA9IGZ1bmN0aW9uKCBuZXh0ICkgewoJCQkJdmFyIGVsID0gJCggdGhpcyApLAoJCQkJCW5vcm1hbGl6ZWRNb2RlID0gJC5lZmZlY3RzLm1vZGUoIGVsLCBtb2RlICkgfHwgZGVmYXVsdE1vZGU7CgoJCQkJLy8gU2VudGluZWwgZm9yIGR1Y2stcHVuY2hpbmcgdGhlIDphbmltYXRlZCBwc3VlZG8tc2VsZWN0b3IKCQkJCWVsLmRhdGEoIGRhdGFTcGFjZUFuaW1hdGVkLCB0cnVlICk7CgoJCQkJLy8gU2F2ZSBlZmZlY3QgbW9kZSBmb3IgbGF0ZXIgdXNlLAoJCQkJLy8gd2UgY2FuJ3QganVzdCBjYWxsICQuZWZmZWN0cy5tb2RlIGFnYWluIGxhdGVyLAoJCQkJLy8gYXMgdGhlIC5zaG93KCkgYmVsb3cgZGVzdHJveXMgdGhlIGluaXRpYWwgc3RhdGUKCQkJCW1vZGVzLnB1c2goIG5vcm1hbGl6ZWRNb2RlICk7CgoJCQkJLy8gU2VlICQudWlCYWNrQ29tcGF0IGluc2lkZSBvZiBydW4oKSBmb3IgcmVtb3ZhbCBvZiBkZWZhdWx0TW9kZSBpbiAxLjEzCgkJCQlpZiAoIGRlZmF1bHRNb2RlICYmICggbm9ybWFsaXplZE1vZGUgPT09ICJzaG93IiB8fAoJCQkJCQkoIG5vcm1hbGl6ZWRNb2RlID09PSBkZWZhdWx0TW9kZSAmJiBub3JtYWxpemVkTW9kZSA9PT0gImhpZGUiICkgKSApIHsKCQkJCQllbC5zaG93KCk7CgkJCQl9CgoJCQkJaWYgKCAhZGVmYXVsdE1vZGUgfHwgbm9ybWFsaXplZE1vZGUgIT09ICJub25lIiApIHsKCQkJCQkkLmVmZmVjdHMuc2F2ZVN0eWxlKCBlbCApOwoJCQkJfQoKCQkJCWlmICggJC5pc0Z1bmN0aW9uKCBuZXh0ICkgKSB7CgkJCQkJbmV4dCgpOwoJCQkJfQoJCQl9OwoKCQlpZiAoICQuZngub2ZmIHx8ICFlZmZlY3RNZXRob2QgKSB7CgoJCQkvLyBEZWxlZ2F0ZSB0byB0aGUgb3JpZ2luYWwgbWV0aG9kIChlLmcuLCAuc2hvdygpKSBpZiBwb3NzaWJsZQoJCQlpZiAoIG1vZGUgKSB7CgkJCQlyZXR1cm4gdGhpc1sgbW9kZSBdKCBhcmdzLmR1cmF0aW9uLCBjb21wbGV0ZSApOwoJCQl9IGVsc2UgewoJCQkJcmV0dXJuIHRoaXMuZWFjaCggZnVuY3Rpb24oKSB7CgkJCQkJaWYgKCBjb21wbGV0ZSApIHsKCQkJCQkJY29tcGxldGUuY2FsbCggdGhpcyApOwoJCQkJCX0KCQkJCX0gKTsKCQkJfQoJCX0KCgkJZnVuY3Rpb24gcnVuKCBuZXh0ICkgewoJCQl2YXIgZWxlbSA9ICQoIHRoaXMgKTsKCgkJCWZ1bmN0aW9uIGNsZWFudXAoKSB7CgkJCQllbGVtLnJlbW92ZURhdGEoIGRhdGFTcGFjZUFuaW1hdGVkICk7CgoJCQkJJC5lZmZlY3RzLmNsZWFuVXAoIGVsZW0gKTsKCgkJCQlpZiAoIGFyZ3MubW9kZSA9PT0gImhpZGUiICkgewoJCQkJCWVsZW0uaGlkZSgpOwoJCQkJfQoKCQkJCWRvbmUoKTsKCQkJfQoKCQkJZnVuY3Rpb24gZG9uZSgpIHsKCQkJCWlmICggJC5pc0Z1bmN0aW9uKCBjb21wbGV0ZSApICkgewoJCQkJCWNvbXBsZXRlLmNhbGwoIGVsZW1bIDAgXSApOwoJCQkJfQoKCQkJCWlmICggJC5pc0Z1bmN0aW9uKCBuZXh0ICkgKSB7CgkJCQkJbmV4dCgpOwoJCQkJfQoJCQl9CgoJCQkvLyBPdmVycmlkZSBtb2RlIG9wdGlvbiBvbiBhIHBlciBlbGVtZW50IGJhc2lzLAoJCQkvLyBhcyB0b2dnbGUgY2FuIGJlIGVpdGhlciBzaG93IG9yIGhpZGUgZGVwZW5kaW5nIG9uIGVsZW1lbnQgc3RhdGUKCQkJYXJncy5tb2RlID0gbW9kZXMuc2hpZnQoKTsKCgkJCWlmICggJC51aUJhY2tDb21wYXQgIT09IGZhbHNlICYmICFkZWZhdWx0TW9kZSApIHsKCQkJCWlmICggZWxlbS5pcyggIjpoaWRkZW4iICkgPyBtb2RlID09PSAiaGlkZSIgOiBtb2RlID09PSAic2hvdyIgKSB7CgoJCQkJCS8vIENhbGwgdGhlIGNvcmUgbWV0aG9kIHRvIHRyYWNrICJvbGRkaXNwbGF5IiBwcm9wZXJseQoJCQkJCWVsZW1bIG1vZGUgXSgpOwoJCQkJCWRvbmUoKTsKCQkJCX0gZWxzZSB7CgkJCQkJZWZmZWN0TWV0aG9kLmNhbGwoIGVsZW1bIDAgXSwgYXJncywgZG9uZSApOwoJCQkJfQoJCQl9IGVsc2UgewoJCQkJaWYgKCBhcmdzLm1vZGUgPT09ICJub25lIiApIHsKCgkJCQkJLy8gQ2FsbCB0aGUgY29yZSBtZXRob2QgdG8gdHJhY2sgIm9sZGRpc3BsYXkiIHByb3Blcmx5CgkJCQkJZWxlbVsgbW9kZSBdKCk7CgkJCQkJZG9uZSgpOwoJCQkJfSBlbHNlIHsKCQkJCQllZmZlY3RNZXRob2QuY2FsbCggZWxlbVsgMCBdLCBhcmdzLCBjbGVhbnVwICk7CgkJCQl9CgkJCX0KCQl9CgoJCS8vIFJ1biBwcmVmaWx0ZXIgb24gYWxsIGVsZW1lbnRzIGZpcnN0IHRvIGVuc3VyZSB0aGF0CgkJLy8gYW55IHNob3dpbmcgb3IgaGlkaW5nIGhhcHBlbnMgYmVmb3JlIHBsYWNlaG9sZGVyIGNyZWF0aW9uLAoJCS8vIHdoaWNoIGVuc3VyZXMgdGhhdCBhbnkgbGF5b3V0IGNoYW5nZXMgYXJlIGNvcnJlY3RseSBjYXB0dXJlZC4KCQlyZXR1cm4gcXVldWUgPT09IGZhbHNlID8KCQkJdGhpcy5lYWNoKCBwcmVmaWx0ZXIgKS5lYWNoKCBydW4gKSA6CgkJCXRoaXMucXVldWUoIHF1ZXVlTmFtZSwgcHJlZmlsdGVyICkucXVldWUoIHF1ZXVlTmFtZSwgcnVuICk7Cgl9LAoKCXNob3c6ICggZnVuY3Rpb24oIG9yaWcgKSB7CgkJcmV0dXJuIGZ1bmN0aW9uKCBvcHRpb24gKSB7CgkJCWlmICggc3RhbmRhcmRBbmltYXRpb25PcHRpb24oIG9wdGlvbiApICkgewoJCQkJcmV0dXJuIG9yaWcuYXBwbHkoIHRoaXMsIGFyZ3VtZW50cyApOwoJCQl9IGVsc2UgewoJCQkJdmFyIGFyZ3MgPSBfbm9ybWFsaXplQXJndW1lbnRzLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKTsKCQkJCWFyZ3MubW9kZSA9ICJzaG93IjsKCQkJCXJldHVybiB0aGlzLmVmZmVjdC5jYWxsKCB0aGlzLCBhcmdzICk7CgkJCX0KCQl9OwoJfSApKCAkLmZuLnNob3cgKSwKCgloaWRlOiAoIGZ1bmN0aW9uKCBvcmlnICkgewoJCXJldHVybiBmdW5jdGlvbiggb3B0aW9uICkgewoJCQlpZiAoIHN0YW5kYXJkQW5pbWF0aW9uT3B0aW9uKCBvcHRpb24gKSApIHsKCQkJCXJldHVybiBvcmlnLmFwcGx5KCB0aGlzLCBhcmd1bWVudHMgKTsKCQkJfSBlbHNlIHsKCQkJCXZhciBhcmdzID0gX25vcm1hbGl6ZUFyZ3VtZW50cy5hcHBseSggdGhpcywgYXJndW1lbnRzICk7CgkJCQlhcmdzLm1vZGUgPSAiaGlkZSI7CgkJCQlyZXR1cm4gdGhpcy5lZmZlY3QuY2FsbCggdGhpcywgYXJncyApOwoJCQl9CgkJfTsKCX0gKSggJC5mbi5oaWRlICksCgoJdG9nZ2xlOiAoIGZ1bmN0aW9uKCBvcmlnICkgewoJCXJldHVybiBmdW5jdGlvbiggb3B0aW9uICkgewoJCQlpZiAoIHN0YW5kYXJkQW5pbWF0aW9uT3B0aW9uKCBvcHRpb24gKSB8fCB0eXBlb2Ygb3B0aW9uID09PSAiYm9vbGVhbiIgKSB7CgkJCQlyZXR1cm4gb3JpZy5hcHBseSggdGhpcywgYXJndW1lbnRzICk7CgkJCX0gZWxzZSB7CgkJCQl2YXIgYXJncyA9IF9ub3JtYWxpemVBcmd1bWVudHMuYXBwbHkoIHRoaXMsIGFyZ3VtZW50cyApOwoJCQkJYXJncy5tb2RlID0gInRvZ2dsZSI7CgkJCQlyZXR1cm4gdGhpcy5lZmZlY3QuY2FsbCggdGhpcywgYXJncyApOwoJCQl9CgkJfTsKCX0gKSggJC5mbi50b2dnbGUgKSwKCgljc3NVbml0OiBmdW5jdGlvbigga2V5ICkgewoJCXZhciBzdHlsZSA9IHRoaXMuY3NzKCBrZXkgKSwKCQkJdmFsID0gW107CgoJCSQuZWFjaCggWyAiZW0iLCAicHgiLCAiJSIsICJwdCIgXSwgZnVuY3Rpb24oIGksIHVuaXQgKSB7CgkJCWlmICggc3R5bGUuaW5kZXhPZiggdW5pdCApID4gMCApIHsKCQkJCXZhbCA9IFsgcGFyc2VGbG9hdCggc3R5bGUgKSwgdW5pdCBdOwoJCQl9CgkJfSApOwoJCXJldHVybiB2YWw7Cgl9LAoKCWNzc0NsaXA6IGZ1bmN0aW9uKCBjbGlwT2JqICkgewoJCWlmICggY2xpcE9iaiApIHsKCQkJcmV0dXJuIHRoaXMuY3NzKCAiY2xpcCIsICJyZWN0KCIgKyBjbGlwT2JqLnRvcCArICJweCAiICsgY2xpcE9iai5yaWdodCArICJweCAiICsKCQkJCWNsaXBPYmouYm90dG9tICsgInB4ICIgKyBjbGlwT2JqLmxlZnQgKyAicHgpIiApOwoJCX0KCQlyZXR1cm4gcGFyc2VDbGlwKCB0aGlzLmNzcyggImNsaXAiICksIHRoaXMgKTsKCX0sCgoJdHJhbnNmZXI6IGZ1bmN0aW9uKCBvcHRpb25zLCBkb25lICkgewoJCXZhciBlbGVtZW50ID0gJCggdGhpcyApLAoJCQl0YXJnZXQgPSAkKCBvcHRpb25zLnRvICksCgkJCXRhcmdldEZpeGVkID0gdGFyZ2V0LmNzcyggInBvc2l0aW9uIiApID09PSAiZml4ZWQiLAoJCQlib2R5ID0gJCggImJvZHkiICksCgkJCWZpeFRvcCA9IHRhcmdldEZpeGVkID8gYm9keS5zY3JvbGxUb3AoKSA6IDAsCgkJCWZpeExlZnQgPSB0YXJnZXRGaXhlZCA/IGJvZHkuc2Nyb2xsTGVmdCgpIDogMCwKCQkJZW5kUG9zaXRpb24gPSB0YXJnZXQub2Zmc2V0KCksCgkJCWFuaW1hdGlvbiA9IHsKCQkJCXRvcDogZW5kUG9zaXRpb24udG9wIC0gZml4VG9wLAoJCQkJbGVmdDogZW5kUG9zaXRpb24ubGVmdCAtIGZpeExlZnQsCgkJCQloZWlnaHQ6IHRhcmdldC5pbm5lckhlaWdodCgpLAoJCQkJd2lkdGg6IHRhcmdldC5pbm5lcldpZHRoKCkKCQkJfSwKCQkJc3RhcnRQb3NpdGlvbiA9IGVsZW1lbnQub2Zmc2V0KCksCgkJCXRyYW5zZmVyID0gJCggIjxkaXYgY2xhc3M9J3VpLWVmZmVjdHMtdHJhbnNmZXInPjwvZGl2PiIgKQoJCQkJLmFwcGVuZFRvKCAiYm9keSIgKQoJCQkJLmFkZENsYXNzKCBvcHRpb25zLmNsYXNzTmFtZSApCgkJCQkuY3NzKCB7CgkJCQkJdG9wOiBzdGFydFBvc2l0aW9uLnRvcCAtIGZpeFRvcCwKCQkJCQlsZWZ0OiBzdGFydFBvc2l0aW9uLmxlZnQgLSBmaXhMZWZ0LAoJCQkJCWhlaWdodDogZWxlbWVudC5pbm5lckhlaWdodCgpLAoJCQkJCXdpZHRoOiBlbGVtZW50LmlubmVyV2lkdGgoKSwKCQkJCQlwb3NpdGlvbjogdGFyZ2V0Rml4ZWQgPyAiZml4ZWQiIDogImFic29sdXRlIgoJCQkJfSApCgkJCQkuYW5pbWF0ZSggYW5pbWF0aW9uLCBvcHRpb25zLmR1cmF0aW9uLCBvcHRpb25zLmVhc2luZywgZnVuY3Rpb24oKSB7CgkJCQkJdHJhbnNmZXIucmVtb3ZlKCk7CgkJCQkJaWYgKCAkLmlzRnVuY3Rpb24oIGRvbmUgKSApIHsKCQkJCQkJZG9uZSgpOwoJCQkJCX0KCQkJCX0gKTsKCX0KfSApOwoKZnVuY3Rpb24gcGFyc2VDbGlwKCBzdHIsIGVsZW1lbnQgKSB7CgkJdmFyIG91dGVyV2lkdGggPSBlbGVtZW50Lm91dGVyV2lkdGgoKSwKCQkJb3V0ZXJIZWlnaHQgPSBlbGVtZW50Lm91dGVySGVpZ2h0KCksCgkJCWNsaXBSZWdleCA9IC9ecmVjdFwoKC0/XGQqXC4/XGQqcHh8LT9cZCslfGF1dG8pLD9ccyooLT9cZCpcLj9cZCpweHwtP1xkKyV8YXV0byksP1xzKigtP1xkKlwuP1xkKnB4fC0/XGQrJXxhdXRvKSw/XHMqKC0/XGQqXC4/XGQqcHh8LT9cZCslfGF1dG8pXCkkLywKCQkJdmFsdWVzID0gY2xpcFJlZ2V4LmV4ZWMoIHN0ciApIHx8IFsgIiIsIDAsIG91dGVyV2lkdGgsIG91dGVySGVpZ2h0LCAwIF07CgoJCXJldHVybiB7CgkJCXRvcDogcGFyc2VGbG9hdCggdmFsdWVzWyAxIF0gKSB8fCAwLAoJCQlyaWdodDogdmFsdWVzWyAyIF0gPT09ICJhdXRvIiA/IG91dGVyV2lkdGggOiBwYXJzZUZsb2F0KCB2YWx1ZXNbIDIgXSApLAoJCQlib3R0b206IHZhbHVlc1sgMyBdID09PSAiYXV0byIgPyBvdXRlckhlaWdodCA6IHBhcnNlRmxvYXQoIHZhbHVlc1sgMyBdICksCgkJCWxlZnQ6IHBhcnNlRmxvYXQoIHZhbHVlc1sgNCBdICkgfHwgMAoJCX07Cn0KCiQuZnguc3RlcC5jbGlwID0gZnVuY3Rpb24oIGZ4ICkgewoJaWYgKCAhZnguY2xpcEluaXQgKSB7CgkJZnguc3RhcnQgPSAkKCBmeC5lbGVtICkuY3NzQ2xpcCgpOwoJCWlmICggdHlwZW9mIGZ4LmVuZCA9PT0gInN0cmluZyIgKSB7CgkJCWZ4LmVuZCA9IHBhcnNlQ2xpcCggZnguZW5kLCBmeC5lbGVtICk7CgkJfQoJCWZ4LmNsaXBJbml0ID0gdHJ1ZTsKCX0KCgkkKCBmeC5lbGVtICkuY3NzQ2xpcCggewoJCXRvcDogZngucG9zICogKCBmeC5lbmQudG9wIC0gZnguc3RhcnQudG9wICkgKyBmeC5zdGFydC50b3AsCgkJcmlnaHQ6IGZ4LnBvcyAqICggZnguZW5kLnJpZ2h0IC0gZnguc3RhcnQucmlnaHQgKSArIGZ4LnN0YXJ0LnJpZ2h0LAoJCWJvdHRvbTogZngucG9zICogKCBmeC5lbmQuYm90dG9tIC0gZnguc3RhcnQuYm90dG9tICkgKyBmeC5zdGFydC5ib3R0b20sCgkJbGVmdDogZngucG9zICogKCBmeC5lbmQubGVmdCAtIGZ4LnN0YXJ0LmxlZnQgKSArIGZ4LnN0YXJ0LmxlZnQKCX0gKTsKfTsKCn0gKSgpOwoKLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIEVBU0lORyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KCiggZnVuY3Rpb24oKSB7CgovLyBCYXNlZCBvbiBlYXNpbmcgZXF1YXRpb25zIGZyb20gUm9iZXJ0IFBlbm5lciAoaHR0cDovL3d3dy5yb2JlcnRwZW5uZXIuY29tL2Vhc2luZykKCnZhciBiYXNlRWFzaW5ncyA9IHt9OwoKJC5lYWNoKCBbICJRdWFkIiwgIkN1YmljIiwgIlF1YXJ0IiwgIlF1aW50IiwgIkV4cG8iIF0sIGZ1bmN0aW9uKCBpLCBuYW1lICkgewoJYmFzZUVhc2luZ3NbIG5hbWUgXSA9IGZ1bmN0aW9uKCBwICkgewoJCXJldHVybiBNYXRoLnBvdyggcCwgaSArIDIgKTsKCX07Cn0gKTsKCiQuZXh0ZW5kKCBiYXNlRWFzaW5ncywgewoJU2luZTogZnVuY3Rpb24oIHAgKSB7CgkJcmV0dXJuIDEgLSBNYXRoLmNvcyggcCAqIE1hdGguUEkgLyAyICk7Cgl9LAoJQ2lyYzogZnVuY3Rpb24oIHAgKSB7CgkJcmV0dXJuIDEgLSBNYXRoLnNxcnQoIDEgLSBwICogcCApOwoJfSwKCUVsYXN0aWM6IGZ1bmN0aW9uKCBwICkgewoJCXJldHVybiBwID09PSAwIHx8IHAgPT09IDEgPyBwIDoKCQkJLU1hdGgucG93KCAyLCA4ICogKCBwIC0gMSApICkgKiBNYXRoLnNpbiggKCAoIHAgLSAxICkgKiA4MCAtIDcuNSApICogTWF0aC5QSSAvIDE1ICk7Cgl9LAoJQmFjazogZnVuY3Rpb24oIHAgKSB7CgkJcmV0dXJuIHAgKiBwICogKCAzICogcCAtIDIgKTsKCX0sCglCb3VuY2U6IGZ1bmN0aW9uKCBwICkgewoJCXZhciBwb3cyLAoJCQlib3VuY2UgPSA0OwoKCQl3aGlsZSAoIHAgPCAoICggcG93MiA9IE1hdGgucG93KCAyLCAtLWJvdW5jZSApICkgLSAxICkgLyAxMSApIHt9CgkJcmV0dXJuIDEgLyBNYXRoLnBvdyggNCwgMyAtIGJvdW5jZSApIC0gNy41NjI1ICogTWF0aC5wb3coICggcG93MiAqIDMgLSAyICkgLyAyMiAtIHAsIDIgKTsKCX0KfSApOwoKJC5lYWNoKCBiYXNlRWFzaW5ncywgZnVuY3Rpb24oIG5hbWUsIGVhc2VJbiApIHsKCSQuZWFzaW5nWyAiZWFzZUluIiArIG5hbWUgXSA9IGVhc2VJbjsKCSQuZWFzaW5nWyAiZWFzZU91dCIgKyBuYW1lIF0gPSBmdW5jdGlvbiggcCApIHsKCQlyZXR1cm4gMSAtIGVhc2VJbiggMSAtIHAgKTsKCX07CgkkLmVhc2luZ1sgImVhc2VJbk91dCIgKyBuYW1lIF0gPSBmdW5jdGlvbiggcCApIHsKCQlyZXR1cm4gcCA8IDAuNSA/CgkJCWVhc2VJbiggcCAqIDIgKSAvIDIgOgoJCQkxIC0gZWFzZUluKCBwICogLTIgKyAyICkgLyAyOwoJfTsKfSApOwoKfSApKCk7Cgp2YXIgZWZmZWN0ID0gJC5lZmZlY3RzOwoKCi8qIQogKiBqUXVlcnkgVUkgRWZmZWN0cyBCbGluZCAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IEJsaW5kIEVmZmVjdAovLz4+Z3JvdXA6IEVmZmVjdHMKLy8+PmRlc2NyaXB0aW9uOiBCbGluZHMgdGhlIGVsZW1lbnQuCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9ibGluZC1lZmZlY3QvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9lZmZlY3QvCgoKCnZhciBlZmZlY3RzRWZmZWN0QmxpbmQgPSAkLmVmZmVjdHMuZGVmaW5lKCAiYmxpbmQiLCAiaGlkZSIsIGZ1bmN0aW9uKCBvcHRpb25zLCBkb25lICkgewoJdmFyIG1hcCA9IHsKCQkJdXA6IFsgImJvdHRvbSIsICJ0b3AiIF0sCgkJCXZlcnRpY2FsOiBbICJib3R0b20iLCAidG9wIiBdLAoJCQlkb3duOiBbICJ0b3AiLCAiYm90dG9tIiBdLAoJCQlsZWZ0OiBbICJyaWdodCIsICJsZWZ0IiBdLAoJCQlob3Jpem9udGFsOiBbICJyaWdodCIsICJsZWZ0IiBdLAoJCQlyaWdodDogWyAibGVmdCIsICJyaWdodCIgXQoJCX0sCgkJZWxlbWVudCA9ICQoIHRoaXMgKSwKCQlkaXJlY3Rpb24gPSBvcHRpb25zLmRpcmVjdGlvbiB8fCAidXAiLAoJCXN0YXJ0ID0gZWxlbWVudC5jc3NDbGlwKCksCgkJYW5pbWF0ZSA9IHsgY2xpcDogJC5leHRlbmQoIHt9LCBzdGFydCApIH0sCgkJcGxhY2Vob2xkZXIgPSAkLmVmZmVjdHMuY3JlYXRlUGxhY2Vob2xkZXIoIGVsZW1lbnQgKTsKCglhbmltYXRlLmNsaXBbIG1hcFsgZGlyZWN0aW9uIF1bIDAgXSBdID0gYW5pbWF0ZS5jbGlwWyBtYXBbIGRpcmVjdGlvbiBdWyAxIF0gXTsKCglpZiAoIG9wdGlvbnMubW9kZSA9PT0gInNob3ciICkgewoJCWVsZW1lbnQuY3NzQ2xpcCggYW5pbWF0ZS5jbGlwICk7CgkJaWYgKCBwbGFjZWhvbGRlciApIHsKCQkJcGxhY2Vob2xkZXIuY3NzKCAkLmVmZmVjdHMuY2xpcFRvQm94KCBhbmltYXRlICkgKTsKCQl9CgoJCWFuaW1hdGUuY2xpcCA9IHN0YXJ0OwoJfQoKCWlmICggcGxhY2Vob2xkZXIgKSB7CgkJcGxhY2Vob2xkZXIuYW5pbWF0ZSggJC5lZmZlY3RzLmNsaXBUb0JveCggYW5pbWF0ZSApLCBvcHRpb25zLmR1cmF0aW9uLCBvcHRpb25zLmVhc2luZyApOwoJfQoKCWVsZW1lbnQuYW5pbWF0ZSggYW5pbWF0ZSwgewoJCXF1ZXVlOiBmYWxzZSwKCQlkdXJhdGlvbjogb3B0aW9ucy5kdXJhdGlvbiwKCQllYXNpbmc6IG9wdGlvbnMuZWFzaW5nLAoJCWNvbXBsZXRlOiBkb25lCgl9ICk7Cn0gKTsKCgovKiEKICogalF1ZXJ5IFVJIEVmZmVjdHMgQm91bmNlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogQm91bmNlIEVmZmVjdAovLz4+Z3JvdXA6IEVmZmVjdHMKLy8+PmRlc2NyaXB0aW9uOiBCb3VuY2VzIGFuIGVsZW1lbnQgaG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkgbiB0aW1lcy4KLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2JvdW5jZS1lZmZlY3QvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9lZmZlY3QvCgoKCnZhciBlZmZlY3RzRWZmZWN0Qm91bmNlID0gJC5lZmZlY3RzLmRlZmluZSggImJvdW5jZSIsIGZ1bmN0aW9uKCBvcHRpb25zLCBkb25lICkgewoJdmFyIHVwQW5pbSwgZG93bkFuaW0sIHJlZlZhbHVlLAoJCWVsZW1lbnQgPSAkKCB0aGlzICksCgoJCS8vIERlZmF1bHRzOgoJCW1vZGUgPSBvcHRpb25zLm1vZGUsCgkJaGlkZSA9IG1vZGUgPT09ICJoaWRlIiwKCQlzaG93ID0gbW9kZSA9PT0gInNob3ciLAoJCWRpcmVjdGlvbiA9IG9wdGlvbnMuZGlyZWN0aW9uIHx8ICJ1cCIsCgkJZGlzdGFuY2UgPSBvcHRpb25zLmRpc3RhbmNlLAoJCXRpbWVzID0gb3B0aW9ucy50aW1lcyB8fCA1LAoKCQkvLyBOdW1iZXIgb2YgaW50ZXJuYWwgYW5pbWF0aW9ucwoJCWFuaW1zID0gdGltZXMgKiAyICsgKCBzaG93IHx8IGhpZGUgPyAxIDogMCApLAoJCXNwZWVkID0gb3B0aW9ucy5kdXJhdGlvbiAvIGFuaW1zLAoJCWVhc2luZyA9IG9wdGlvbnMuZWFzaW5nLAoKCQkvLyBVdGlsaXR5OgoJCXJlZiA9ICggZGlyZWN0aW9uID09PSAidXAiIHx8IGRpcmVjdGlvbiA9PT0gImRvd24iICkgPyAidG9wIiA6ICJsZWZ0IiwKCQltb3Rpb24gPSAoIGRpcmVjdGlvbiA9PT0gInVwIiB8fCBkaXJlY3Rpb24gPT09ICJsZWZ0IiApLAoJCWkgPSAwLAoKCQlxdWV1ZWxlbiA9IGVsZW1lbnQucXVldWUoKS5sZW5ndGg7CgoJJC5lZmZlY3RzLmNyZWF0ZVBsYWNlaG9sZGVyKCBlbGVtZW50ICk7CgoJcmVmVmFsdWUgPSBlbGVtZW50LmNzcyggcmVmICk7CgoJLy8gRGVmYXVsdCBkaXN0YW5jZSBmb3IgdGhlIEJJR0dFU1QgYm91bmNlIGlzIHRoZSBvdXRlciBEaXN0YW5jZSAvIDMKCWlmICggIWRpc3RhbmNlICkgewoJCWRpc3RhbmNlID0gZWxlbWVudFsgcmVmID09PSAidG9wIiA/ICJvdXRlckhlaWdodCIgOiAib3V0ZXJXaWR0aCIgXSgpIC8gMzsKCX0KCglpZiAoIHNob3cgKSB7CgkJZG93bkFuaW0gPSB7IG9wYWNpdHk6IDEgfTsKCQlkb3duQW5pbVsgcmVmIF0gPSByZWZWYWx1ZTsKCgkJLy8gSWYgd2UgYXJlIHNob3dpbmcsIGZvcmNlIG9wYWNpdHkgMCBhbmQgc2V0IHRoZSBpbml0aWFsIHBvc2l0aW9uCgkJLy8gdGhlbiBkbyB0aGUgImZpcnN0IiBhbmltYXRpb24KCQllbGVtZW50CgkJCS5jc3MoICJvcGFjaXR5IiwgMCApCgkJCS5jc3MoIHJlZiwgbW90aW9uID8gLWRpc3RhbmNlICogMiA6IGRpc3RhbmNlICogMiApCgkJCS5hbmltYXRlKCBkb3duQW5pbSwgc3BlZWQsIGVhc2luZyApOwoJfQoKCS8vIFN0YXJ0IGF0IHRoZSBzbWFsbGVzdCBkaXN0YW5jZSBpZiB3ZSBhcmUgaGlkaW5nCglpZiAoIGhpZGUgKSB7CgkJZGlzdGFuY2UgPSBkaXN0YW5jZSAvIE1hdGgucG93KCAyLCB0aW1lcyAtIDEgKTsKCX0KCglkb3duQW5pbSA9IHt9OwoJZG93bkFuaW1bIHJlZiBdID0gcmVmVmFsdWU7CgoJLy8gQm91bmNlcyB1cC9kb3duL2xlZnQvcmlnaHQgdGhlbiBiYWNrIHRvIDAgLS0gdGltZXMgKiAyIGFuaW1hdGlvbnMgaGFwcGVuIGhlcmUKCWZvciAoIDsgaSA8IHRpbWVzOyBpKysgKSB7CgkJdXBBbmltID0ge307CgkJdXBBbmltWyByZWYgXSA9ICggbW90aW9uID8gIi09IiA6ICIrPSIgKSArIGRpc3RhbmNlOwoKCQllbGVtZW50CgkJCS5hbmltYXRlKCB1cEFuaW0sIHNwZWVkLCBlYXNpbmcgKQoJCQkuYW5pbWF0ZSggZG93bkFuaW0sIHNwZWVkLCBlYXNpbmcgKTsKCgkJZGlzdGFuY2UgPSBoaWRlID8gZGlzdGFuY2UgKiAyIDogZGlzdGFuY2UgLyAyOwoJfQoKCS8vIExhc3QgQm91bmNlIHdoZW4gSGlkaW5nCglpZiAoIGhpZGUgKSB7CgkJdXBBbmltID0geyBvcGFjaXR5OiAwIH07CgkJdXBBbmltWyByZWYgXSA9ICggbW90aW9uID8gIi09IiA6ICIrPSIgKSArIGRpc3RhbmNlOwoKCQllbGVtZW50LmFuaW1hdGUoIHVwQW5pbSwgc3BlZWQsIGVhc2luZyApOwoJfQoKCWVsZW1lbnQucXVldWUoIGRvbmUgKTsKCgkkLmVmZmVjdHMudW5zaGlmdCggZWxlbWVudCwgcXVldWVsZW4sIGFuaW1zICsgMSApOwp9ICk7CgoKLyohCiAqIGpRdWVyeSBVSSBFZmZlY3RzIENsaXAgMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiBDbGlwIEVmZmVjdAovLz4+Z3JvdXA6IEVmZmVjdHMKLy8+PmRlc2NyaXB0aW9uOiBDbGlwcyB0aGUgZWxlbWVudCBvbiBhbmQgb2ZmIGxpa2UgYW4gb2xkIFRWLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vY2xpcC1lZmZlY3QvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9lZmZlY3QvCgoKCnZhciBlZmZlY3RzRWZmZWN0Q2xpcCA9ICQuZWZmZWN0cy5kZWZpbmUoICJjbGlwIiwgImhpZGUiLCBmdW5jdGlvbiggb3B0aW9ucywgZG9uZSApIHsKCXZhciBzdGFydCwKCQlhbmltYXRlID0ge30sCgkJZWxlbWVudCA9ICQoIHRoaXMgKSwKCQlkaXJlY3Rpb24gPSBvcHRpb25zLmRpcmVjdGlvbiB8fCAidmVydGljYWwiLAoJCWJvdGggPSBkaXJlY3Rpb24gPT09ICJib3RoIiwKCQlob3Jpem9udGFsID0gYm90aCB8fCBkaXJlY3Rpb24gPT09ICJob3Jpem9udGFsIiwKCQl2ZXJ0aWNhbCA9IGJvdGggfHwgZGlyZWN0aW9uID09PSAidmVydGljYWwiOwoKCXN0YXJ0ID0gZWxlbWVudC5jc3NDbGlwKCk7CglhbmltYXRlLmNsaXAgPSB7CgkJdG9wOiB2ZXJ0aWNhbCA/ICggc3RhcnQuYm90dG9tIC0gc3RhcnQudG9wICkgLyAyIDogc3RhcnQudG9wLAoJCXJpZ2h0OiBob3Jpem9udGFsID8gKCBzdGFydC5yaWdodCAtIHN0YXJ0LmxlZnQgKSAvIDIgOiBzdGFydC5yaWdodCwKCQlib3R0b206IHZlcnRpY2FsID8gKCBzdGFydC5ib3R0b20gLSBzdGFydC50b3AgKSAvIDIgOiBzdGFydC5ib3R0b20sCgkJbGVmdDogaG9yaXpvbnRhbCA/ICggc3RhcnQucmlnaHQgLSBzdGFydC5sZWZ0ICkgLyAyIDogc3RhcnQubGVmdAoJfTsKCgkkLmVmZmVjdHMuY3JlYXRlUGxhY2Vob2xkZXIoIGVsZW1lbnQgKTsKCglpZiAoIG9wdGlvbnMubW9kZSA9PT0gInNob3ciICkgewoJCWVsZW1lbnQuY3NzQ2xpcCggYW5pbWF0ZS5jbGlwICk7CgkJYW5pbWF0ZS5jbGlwID0gc3RhcnQ7Cgl9CgoJZWxlbWVudC5hbmltYXRlKCBhbmltYXRlLCB7CgkJcXVldWU6IGZhbHNlLAoJCWR1cmF0aW9uOiBvcHRpb25zLmR1cmF0aW9uLAoJCWVhc2luZzogb3B0aW9ucy5lYXNpbmcsCgkJY29tcGxldGU6IGRvbmUKCX0gKTsKCn0gKTsKCgovKiEKICogalF1ZXJ5IFVJIEVmZmVjdHMgRHJvcCAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IERyb3AgRWZmZWN0Ci8vPj5ncm91cDogRWZmZWN0cwovLz4+ZGVzY3JpcHRpb246IE1vdmVzIGFuIGVsZW1lbnQgaW4gb25lIGRpcmVjdGlvbiBhbmQgaGlkZXMgaXQgYXQgdGhlIHNhbWUgdGltZS4KLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2Ryb3AtZWZmZWN0LwovLz4+ZGVtb3M6IGh0dHA6Ly9qcXVlcnl1aS5jb20vZWZmZWN0LwoKCgp2YXIgZWZmZWN0c0VmZmVjdERyb3AgPSAkLmVmZmVjdHMuZGVmaW5lKCAiZHJvcCIsICJoaWRlIiwgZnVuY3Rpb24oIG9wdGlvbnMsIGRvbmUgKSB7CgoJdmFyIGRpc3RhbmNlLAoJCWVsZW1lbnQgPSAkKCB0aGlzICksCgkJbW9kZSA9IG9wdGlvbnMubW9kZSwKCQlzaG93ID0gbW9kZSA9PT0gInNob3ciLAoJCWRpcmVjdGlvbiA9IG9wdGlvbnMuZGlyZWN0aW9uIHx8ICJsZWZ0IiwKCQlyZWYgPSAoIGRpcmVjdGlvbiA9PT0gInVwIiB8fCBkaXJlY3Rpb24gPT09ICJkb3duIiApID8gInRvcCIgOiAibGVmdCIsCgkJbW90aW9uID0gKCBkaXJlY3Rpb24gPT09ICJ1cCIgfHwgZGlyZWN0aW9uID09PSAibGVmdCIgKSA/ICItPSIgOiAiKz0iLAoJCW9wcG9zaXRlTW90aW9uID0gKCBtb3Rpb24gPT09ICIrPSIgKSA/ICItPSIgOiAiKz0iLAoJCWFuaW1hdGlvbiA9IHsKCQkJb3BhY2l0eTogMAoJCX07CgoJJC5lZmZlY3RzLmNyZWF0ZVBsYWNlaG9sZGVyKCBlbGVtZW50ICk7CgoJZGlzdGFuY2UgPSBvcHRpb25zLmRpc3RhbmNlIHx8CgkJZWxlbWVudFsgcmVmID09PSAidG9wIiA/ICJvdXRlckhlaWdodCIgOiAib3V0ZXJXaWR0aCIgXSggdHJ1ZSApIC8gMjsKCglhbmltYXRpb25bIHJlZiBdID0gbW90aW9uICsgZGlzdGFuY2U7CgoJaWYgKCBzaG93ICkgewoJCWVsZW1lbnQuY3NzKCBhbmltYXRpb24gKTsKCgkJYW5pbWF0aW9uWyByZWYgXSA9IG9wcG9zaXRlTW90aW9uICsgZGlzdGFuY2U7CgkJYW5pbWF0aW9uLm9wYWNpdHkgPSAxOwoJfQoKCS8vIEFuaW1hdGUKCWVsZW1lbnQuYW5pbWF0ZSggYW5pbWF0aW9uLCB7CgkJcXVldWU6IGZhbHNlLAoJCWR1cmF0aW9uOiBvcHRpb25zLmR1cmF0aW9uLAoJCWVhc2luZzogb3B0aW9ucy5lYXNpbmcsCgkJY29tcGxldGU6IGRvbmUKCX0gKTsKfSApOwoKCi8qIQogKiBqUXVlcnkgVUkgRWZmZWN0cyBFeHBsb2RlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogRXhwbG9kZSBFZmZlY3QKLy8+Pmdyb3VwOiBFZmZlY3RzCi8vIGpzY3M6ZGlzYWJsZSBtYXhpbXVtTGluZUxlbmd0aAovLz4+ZGVzY3JpcHRpb246IEV4cGxvZGVzIGFuIGVsZW1lbnQgaW4gYWxsIGRpcmVjdGlvbnMgaW50byBuIHBpZWNlcy4gSW1wbG9kZXMgYW4gZWxlbWVudCB0byBpdHMgb3JpZ2luYWwgd2hvbGVuZXNzLgovLyBqc2NzOmVuYWJsZSBtYXhpbXVtTGluZUxlbmd0aAovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vZXhwbG9kZS1lZmZlY3QvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9lZmZlY3QvCgoKCnZhciBlZmZlY3RzRWZmZWN0RXhwbG9kZSA9ICQuZWZmZWN0cy5kZWZpbmUoICJleHBsb2RlIiwgImhpZGUiLCBmdW5jdGlvbiggb3B0aW9ucywgZG9uZSApIHsKCgl2YXIgaSwgaiwgbGVmdCwgdG9wLCBteCwgbXksCgkJcm93cyA9IG9wdGlvbnMucGllY2VzID8gTWF0aC5yb3VuZCggTWF0aC5zcXJ0KCBvcHRpb25zLnBpZWNlcyApICkgOiAzLAoJCWNlbGxzID0gcm93cywKCQllbGVtZW50ID0gJCggdGhpcyApLAoJCW1vZGUgPSBvcHRpb25zLm1vZGUsCgkJc2hvdyA9IG1vZGUgPT09ICJzaG93IiwKCgkJLy8gU2hvdyBhbmQgdGhlbiB2aXNpYmlsaXR5OmhpZGRlbiB0aGUgZWxlbWVudCBiZWZvcmUgY2FsY3VsYXRpbmcgb2Zmc2V0CgkJb2Zmc2V0ID0gZWxlbWVudC5zaG93KCkuY3NzKCAidmlzaWJpbGl0eSIsICJoaWRkZW4iICkub2Zmc2V0KCksCgoJCS8vIFdpZHRoIGFuZCBoZWlnaHQgb2YgYSBwaWVjZQoJCXdpZHRoID0gTWF0aC5jZWlsKCBlbGVtZW50Lm91dGVyV2lkdGgoKSAvIGNlbGxzICksCgkJaGVpZ2h0ID0gTWF0aC5jZWlsKCBlbGVtZW50Lm91dGVySGVpZ2h0KCkgLyByb3dzICksCgkJcGllY2VzID0gW107CgoJLy8gQ2hpbGRyZW4gYW5pbWF0ZSBjb21wbGV0ZToKCWZ1bmN0aW9uIGNoaWxkQ29tcGxldGUoKSB7CgkJcGllY2VzLnB1c2goIHRoaXMgKTsKCQlpZiAoIHBpZWNlcy5sZW5ndGggPT09IHJvd3MgKiBjZWxscyApIHsKCQkJYW5pbUNvbXBsZXRlKCk7CgkJfQoJfQoKCS8vIENsb25lIHRoZSBlbGVtZW50IGZvciBlYWNoIHJvdyBhbmQgY2VsbC4KCWZvciAoIGkgPSAwOyBpIDwgcm93czsgaSsrICkgeyAvLyA9PT0+CgkJdG9wID0gb2Zmc2V0LnRvcCArIGkgKiBoZWlnaHQ7CgkJbXkgPSBpIC0gKCByb3dzIC0gMSApIC8gMjsKCgkJZm9yICggaiA9IDA7IGogPCBjZWxsczsgaisrICkgeyAvLyB8fHwKCQkJbGVmdCA9IG9mZnNldC5sZWZ0ICsgaiAqIHdpZHRoOwoJCQlteCA9IGogLSAoIGNlbGxzIC0gMSApIC8gMjsKCgkJCS8vIENyZWF0ZSBhIGNsb25lIG9mIHRoZSBub3cgaGlkZGVuIG1haW4gZWxlbWVudCB0aGF0IHdpbGwgYmUgYWJzb2x1dGUgcG9zaXRpb25lZAoJCQkvLyB3aXRoaW4gYSB3cmFwcGVyIGRpdiBvZmYgdGhlIC1sZWZ0IGFuZCAtdG9wIGVxdWFsIHRvIHNpemUgb2Ygb3VyIHBpZWNlcwoJCQllbGVtZW50CgkJCQkuY2xvbmUoKQoJCQkJLmFwcGVuZFRvKCAiYm9keSIgKQoJCQkJLndyYXAoICI8ZGl2PjwvZGl2PiIgKQoJCQkJLmNzcyggewoJCQkJCXBvc2l0aW9uOiAiYWJzb2x1dGUiLAoJCQkJCXZpc2liaWxpdHk6ICJ2aXNpYmxlIiwKCQkJCQlsZWZ0OiAtaiAqIHdpZHRoLAoJCQkJCXRvcDogLWkgKiBoZWlnaHQKCQkJCX0gKQoKCQkJCS8vIFNlbGVjdCB0aGUgd3JhcHBlciAtIG1ha2UgaXQgb3ZlcmZsb3c6IGhpZGRlbiBhbmQgYWJzb2x1dGUgcG9zaXRpb25lZCBiYXNlZCBvbgoJCQkJLy8gd2hlcmUgdGhlIG9yaWdpbmFsIHdhcyBsb2NhdGVkICtsZWZ0IGFuZCArdG9wIGVxdWFsIHRvIHRoZSBzaXplIG9mIHBpZWNlcwoJCQkJLnBhcmVudCgpCgkJCQkJLmFkZENsYXNzKCAidWktZWZmZWN0cy1leHBsb2RlIiApCgkJCQkJLmNzcyggewoJCQkJCQlwb3NpdGlvbjogImFic29sdXRlIiwKCQkJCQkJb3ZlcmZsb3c6ICJoaWRkZW4iLAoJCQkJCQl3aWR0aDogd2lkdGgsCgkJCQkJCWhlaWdodDogaGVpZ2h0LAoJCQkJCQlsZWZ0OiBsZWZ0ICsgKCBzaG93ID8gbXggKiB3aWR0aCA6IDAgKSwKCQkJCQkJdG9wOiB0b3AgKyAoIHNob3cgPyBteSAqIGhlaWdodCA6IDAgKSwKCQkJCQkJb3BhY2l0eTogc2hvdyA/IDAgOiAxCgkJCQkJfSApCgkJCQkJLmFuaW1hdGUoIHsKCQkJCQkJbGVmdDogbGVmdCArICggc2hvdyA/IDAgOiBteCAqIHdpZHRoICksCgkJCQkJCXRvcDogdG9wICsgKCBzaG93ID8gMCA6IG15ICogaGVpZ2h0ICksCgkJCQkJCW9wYWNpdHk6IHNob3cgPyAxIDogMAoJCQkJCX0sIG9wdGlvbnMuZHVyYXRpb24gfHwgNTAwLCBvcHRpb25zLmVhc2luZywgY2hpbGRDb21wbGV0ZSApOwoJCX0KCX0KCglmdW5jdGlvbiBhbmltQ29tcGxldGUoKSB7CgkJZWxlbWVudC5jc3MoIHsKCQkJdmlzaWJpbGl0eTogInZpc2libGUiCgkJfSApOwoJCSQoIHBpZWNlcyApLnJlbW92ZSgpOwoJCWRvbmUoKTsKCX0KfSApOwoKCi8qIQogKiBqUXVlcnkgVUkgRWZmZWN0cyBGYWRlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogRmFkZSBFZmZlY3QKLy8+Pmdyb3VwOiBFZmZlY3RzCi8vPj5kZXNjcmlwdGlvbjogRmFkZXMgdGhlIGVsZW1lbnQuCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9mYWRlLWVmZmVjdC8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL2VmZmVjdC8KCgoKdmFyIGVmZmVjdHNFZmZlY3RGYWRlID0gJC5lZmZlY3RzLmRlZmluZSggImZhZGUiLCAidG9nZ2xlIiwgZnVuY3Rpb24oIG9wdGlvbnMsIGRvbmUgKSB7Cgl2YXIgc2hvdyA9IG9wdGlvbnMubW9kZSA9PT0gInNob3ciOwoKCSQoIHRoaXMgKQoJCS5jc3MoICJvcGFjaXR5Iiwgc2hvdyA/IDAgOiAxICkKCQkuYW5pbWF0ZSggewoJCQlvcGFjaXR5OiBzaG93ID8gMSA6IDAKCQl9LCB7CgkJCXF1ZXVlOiBmYWxzZSwKCQkJZHVyYXRpb246IG9wdGlvbnMuZHVyYXRpb24sCgkJCWVhc2luZzogb3B0aW9ucy5lYXNpbmcsCgkJCWNvbXBsZXRlOiBkb25lCgkJfSApOwp9ICk7CgoKLyohCiAqIGpRdWVyeSBVSSBFZmZlY3RzIEZvbGQgMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiBGb2xkIEVmZmVjdAovLz4+Z3JvdXA6IEVmZmVjdHMKLy8+PmRlc2NyaXB0aW9uOiBGb2xkcyBhbiBlbGVtZW50IGZpcnN0IGhvcml6b250YWxseSBhbmQgdGhlbiB2ZXJ0aWNhbGx5LgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vZm9sZC1lZmZlY3QvCi8vPj5kZW1vczogaHR0cDovL2pxdWVyeXVpLmNvbS9lZmZlY3QvCgoKCnZhciBlZmZlY3RzRWZmZWN0Rm9sZCA9ICQuZWZmZWN0cy5kZWZpbmUoICJmb2xkIiwgImhpZGUiLCBmdW5jdGlvbiggb3B0aW9ucywgZG9uZSApIHsKCgkvLyBDcmVhdGUgZWxlbWVudAoJdmFyIGVsZW1lbnQgPSAkKCB0aGlzICksCgkJbW9kZSA9IG9wdGlvbnMubW9kZSwKCQlzaG93ID0gbW9kZSA9PT0gInNob3ciLAoJCWhpZGUgPSBtb2RlID09PSAiaGlkZSIsCgkJc2l6ZSA9IG9wdGlvbnMuc2l6ZSB8fCAxNSwKCQlwZXJjZW50ID0gLyhbMC05XSspJS8uZXhlYyggc2l6ZSApLAoJCWhvcml6Rmlyc3QgPSAhIW9wdGlvbnMuaG9yaXpGaXJzdCwKCQlyZWYgPSBob3JpekZpcnN0ID8gWyAicmlnaHQiLCAiYm90dG9tIiBdIDogWyAiYm90dG9tIiwgInJpZ2h0IiBdLAoJCWR1cmF0aW9uID0gb3B0aW9ucy5kdXJhdGlvbiAvIDIsCgoJCXBsYWNlaG9sZGVyID0gJC5lZmZlY3RzLmNyZWF0ZVBsYWNlaG9sZGVyKCBlbGVtZW50ICksCgoJCXN0YXJ0ID0gZWxlbWVudC5jc3NDbGlwKCksCgkJYW5pbWF0aW9uMSA9IHsgY2xpcDogJC5leHRlbmQoIHt9LCBzdGFydCApIH0sCgkJYW5pbWF0aW9uMiA9IHsgY2xpcDogJC5leHRlbmQoIHt9LCBzdGFydCApIH0sCgoJCWRpc3RhbmNlID0gWyBzdGFydFsgcmVmWyAwIF0gXSwgc3RhcnRbIHJlZlsgMSBdIF0gXSwKCgkJcXVldWVsZW4gPSBlbGVtZW50LnF1ZXVlKCkubGVuZ3RoOwoKCWlmICggcGVyY2VudCApIHsKCQlzaXplID0gcGFyc2VJbnQoIHBlcmNlbnRbIDEgXSwgMTAgKSAvIDEwMCAqIGRpc3RhbmNlWyBoaWRlID8gMCA6IDEgXTsKCX0KCWFuaW1hdGlvbjEuY2xpcFsgcmVmWyAwIF0gXSA9IHNpemU7CglhbmltYXRpb24yLmNsaXBbIHJlZlsgMCBdIF0gPSBzaXplOwoJYW5pbWF0aW9uMi5jbGlwWyByZWZbIDEgXSBdID0gMDsKCglpZiAoIHNob3cgKSB7CgkJZWxlbWVudC5jc3NDbGlwKCBhbmltYXRpb24yLmNsaXAgKTsKCQlpZiAoIHBsYWNlaG9sZGVyICkgewoJCQlwbGFjZWhvbGRlci5jc3MoICQuZWZmZWN0cy5jbGlwVG9Cb3goIGFuaW1hdGlvbjIgKSApOwoJCX0KCgkJYW5pbWF0aW9uMi5jbGlwID0gc3RhcnQ7Cgl9CgoJLy8gQW5pbWF0ZQoJZWxlbWVudAoJCS5xdWV1ZSggZnVuY3Rpb24oIG5leHQgKSB7CgkJCWlmICggcGxhY2Vob2xkZXIgKSB7CgkJCQlwbGFjZWhvbGRlcgoJCQkJCS5hbmltYXRlKCAkLmVmZmVjdHMuY2xpcFRvQm94KCBhbmltYXRpb24xICksIGR1cmF0aW9uLCBvcHRpb25zLmVhc2luZyApCgkJCQkJLmFuaW1hdGUoICQuZWZmZWN0cy5jbGlwVG9Cb3goIGFuaW1hdGlvbjIgKSwgZHVyYXRpb24sIG9wdGlvbnMuZWFzaW5nICk7CgkJCX0KCgkJCW5leHQoKTsKCQl9ICkKCQkuYW5pbWF0ZSggYW5pbWF0aW9uMSwgZHVyYXRpb24sIG9wdGlvbnMuZWFzaW5nICkKCQkuYW5pbWF0ZSggYW5pbWF0aW9uMiwgZHVyYXRpb24sIG9wdGlvbnMuZWFzaW5nICkKCQkucXVldWUoIGRvbmUgKTsKCgkkLmVmZmVjdHMudW5zaGlmdCggZWxlbWVudCwgcXVldWVsZW4sIDQgKTsKfSApOwoKCi8qIQogKiBqUXVlcnkgVUkgRWZmZWN0cyBIaWdobGlnaHQgMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiBIaWdobGlnaHQgRWZmZWN0Ci8vPj5ncm91cDogRWZmZWN0cwovLz4+ZGVzY3JpcHRpb246IEhpZ2hsaWdodHMgdGhlIGJhY2tncm91bmQgb2YgYW4gZWxlbWVudCBpbiBhIGRlZmluZWQgY29sb3IgZm9yIGEgY3VzdG9tIGR1cmF0aW9uLgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vaGlnaGxpZ2h0LWVmZmVjdC8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL2VmZmVjdC8KCgoKdmFyIGVmZmVjdHNFZmZlY3RIaWdobGlnaHQgPSAkLmVmZmVjdHMuZGVmaW5lKCAiaGlnaGxpZ2h0IiwgInNob3ciLCBmdW5jdGlvbiggb3B0aW9ucywgZG9uZSApIHsKCXZhciBlbGVtZW50ID0gJCggdGhpcyApLAoJCWFuaW1hdGlvbiA9IHsKCQkJYmFja2dyb3VuZENvbG9yOiBlbGVtZW50LmNzcyggImJhY2tncm91bmRDb2xvciIgKQoJCX07CgoJaWYgKCBvcHRpb25zLm1vZGUgPT09ICJoaWRlIiApIHsKCQlhbmltYXRpb24ub3BhY2l0eSA9IDA7Cgl9CgoJJC5lZmZlY3RzLnNhdmVTdHlsZSggZWxlbWVudCApOwoKCWVsZW1lbnQKCQkuY3NzKCB7CgkJCWJhY2tncm91bmRJbWFnZTogIm5vbmUiLAoJCQliYWNrZ3JvdW5kQ29sb3I6IG9wdGlvbnMuY29sb3IgfHwgIiNmZmZmOTkiCgkJfSApCgkJLmFuaW1hdGUoIGFuaW1hdGlvbiwgewoJCQlxdWV1ZTogZmFsc2UsCgkJCWR1cmF0aW9uOiBvcHRpb25zLmR1cmF0aW9uLAoJCQllYXNpbmc6IG9wdGlvbnMuZWFzaW5nLAoJCQljb21wbGV0ZTogZG9uZQoJCX0gKTsKfSApOwoKCi8qIQogKiBqUXVlcnkgVUkgRWZmZWN0cyBTaXplIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogU2l6ZSBFZmZlY3QKLy8+Pmdyb3VwOiBFZmZlY3RzCi8vPj5kZXNjcmlwdGlvbjogUmVzaXplIGFuIGVsZW1lbnQgdG8gYSBzcGVjaWZpZWQgd2lkdGggYW5kIGhlaWdodC4KLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3NpemUtZWZmZWN0LwovLz4+ZGVtb3M6IGh0dHA6Ly9qcXVlcnl1aS5jb20vZWZmZWN0LwoKCgp2YXIgZWZmZWN0c0VmZmVjdFNpemUgPSAkLmVmZmVjdHMuZGVmaW5lKCAic2l6ZSIsIGZ1bmN0aW9uKCBvcHRpb25zLCBkb25lICkgewoKCS8vIENyZWF0ZSBlbGVtZW50Cgl2YXIgYmFzZWxpbmUsIGZhY3RvciwgdGVtcCwKCQllbGVtZW50ID0gJCggdGhpcyApLAoKCQkvLyBDb3B5IGZvciBjaGlsZHJlbgoJCWNQcm9wcyA9IFsgImZvbnRTaXplIiBdLAoJCXZQcm9wcyA9IFsgImJvcmRlclRvcFdpZHRoIiwgImJvcmRlckJvdHRvbVdpZHRoIiwgInBhZGRpbmdUb3AiLCAicGFkZGluZ0JvdHRvbSIgXSwKCQloUHJvcHMgPSBbICJib3JkZXJMZWZ0V2lkdGgiLCAiYm9yZGVyUmlnaHRXaWR0aCIsICJwYWRkaW5nTGVmdCIsICJwYWRkaW5nUmlnaHQiIF0sCgoJCS8vIFNldCBvcHRpb25zCgkJbW9kZSA9IG9wdGlvbnMubW9kZSwKCQlyZXN0b3JlID0gbW9kZSAhPT0gImVmZmVjdCIsCgkJc2NhbGUgPSBvcHRpb25zLnNjYWxlIHx8ICJib3RoIiwKCQlvcmlnaW4gPSBvcHRpb25zLm9yaWdpbiB8fCBbICJtaWRkbGUiLCAiY2VudGVyIiBdLAoJCXBvc2l0aW9uID0gZWxlbWVudC5jc3MoICJwb3NpdGlvbiIgKSwKCQlwb3MgPSBlbGVtZW50LnBvc2l0aW9uKCksCgkJb3JpZ2luYWwgPSAkLmVmZmVjdHMuc2NhbGVkRGltZW5zaW9ucyggZWxlbWVudCApLAoJCWZyb20gPSBvcHRpb25zLmZyb20gfHwgb3JpZ2luYWwsCgkJdG8gPSBvcHRpb25zLnRvIHx8ICQuZWZmZWN0cy5zY2FsZWREaW1lbnNpb25zKCBlbGVtZW50LCAwICk7CgoJJC5lZmZlY3RzLmNyZWF0ZVBsYWNlaG9sZGVyKCBlbGVtZW50ICk7CgoJaWYgKCBtb2RlID09PSAic2hvdyIgKSB7CgkJdGVtcCA9IGZyb207CgkJZnJvbSA9IHRvOwoJCXRvID0gdGVtcDsKCX0KCgkvLyBTZXQgc2NhbGluZyBmYWN0b3IKCWZhY3RvciA9IHsKCQlmcm9tOiB7CgkJCXk6IGZyb20uaGVpZ2h0IC8gb3JpZ2luYWwuaGVpZ2h0LAoJCQl4OiBmcm9tLndpZHRoIC8gb3JpZ2luYWwud2lkdGgKCQl9LAoJCXRvOiB7CgkJCXk6IHRvLmhlaWdodCAvIG9yaWdpbmFsLmhlaWdodCwKCQkJeDogdG8ud2lkdGggLyBvcmlnaW5hbC53aWR0aAoJCX0KCX07CgoJLy8gU2NhbGUgdGhlIGNzcyBib3gKCWlmICggc2NhbGUgPT09ICJib3giIHx8IHNjYWxlID09PSAiYm90aCIgKSB7CgoJCS8vIFZlcnRpY2FsIHByb3BzIHNjYWxpbmcKCQlpZiAoIGZhY3Rvci5mcm9tLnkgIT09IGZhY3Rvci50by55ICkgewoJCQlmcm9tID0gJC5lZmZlY3RzLnNldFRyYW5zaXRpb24oIGVsZW1lbnQsIHZQcm9wcywgZmFjdG9yLmZyb20ueSwgZnJvbSApOwoJCQl0byA9ICQuZWZmZWN0cy5zZXRUcmFuc2l0aW9uKCBlbGVtZW50LCB2UHJvcHMsIGZhY3Rvci50by55LCB0byApOwoJCX0KCgkJLy8gSG9yaXpvbnRhbCBwcm9wcyBzY2FsaW5nCgkJaWYgKCBmYWN0b3IuZnJvbS54ICE9PSBmYWN0b3IudG8ueCApIHsKCQkJZnJvbSA9ICQuZWZmZWN0cy5zZXRUcmFuc2l0aW9uKCBlbGVtZW50LCBoUHJvcHMsIGZhY3Rvci5mcm9tLngsIGZyb20gKTsKCQkJdG8gPSAkLmVmZmVjdHMuc2V0VHJhbnNpdGlvbiggZWxlbWVudCwgaFByb3BzLCBmYWN0b3IudG8ueCwgdG8gKTsKCQl9Cgl9CgoJLy8gU2NhbGUgdGhlIGNvbnRlbnQKCWlmICggc2NhbGUgPT09ICJjb250ZW50IiB8fCBzY2FsZSA9PT0gImJvdGgiICkgewoKCQkvLyBWZXJ0aWNhbCBwcm9wcyBzY2FsaW5nCgkJaWYgKCBmYWN0b3IuZnJvbS55ICE9PSBmYWN0b3IudG8ueSApIHsKCQkJZnJvbSA9ICQuZWZmZWN0cy5zZXRUcmFuc2l0aW9uKCBlbGVtZW50LCBjUHJvcHMsIGZhY3Rvci5mcm9tLnksIGZyb20gKTsKCQkJdG8gPSAkLmVmZmVjdHMuc2V0VHJhbnNpdGlvbiggZWxlbWVudCwgY1Byb3BzLCBmYWN0b3IudG8ueSwgdG8gKTsKCQl9Cgl9CgoJLy8gQWRqdXN0IHRoZSBwb3NpdGlvbiBwcm9wZXJ0aWVzIGJhc2VkIG9uIHRoZSBwcm92aWRlZCBvcmlnaW4gcG9pbnRzCglpZiAoIG9yaWdpbiApIHsKCQliYXNlbGluZSA9ICQuZWZmZWN0cy5nZXRCYXNlbGluZSggb3JpZ2luLCBvcmlnaW5hbCApOwoJCWZyb20udG9wID0gKCBvcmlnaW5hbC5vdXRlckhlaWdodCAtIGZyb20ub3V0ZXJIZWlnaHQgKSAqIGJhc2VsaW5lLnkgKyBwb3MudG9wOwoJCWZyb20ubGVmdCA9ICggb3JpZ2luYWwub3V0ZXJXaWR0aCAtIGZyb20ub3V0ZXJXaWR0aCApICogYmFzZWxpbmUueCArIHBvcy5sZWZ0OwoJCXRvLnRvcCA9ICggb3JpZ2luYWwub3V0ZXJIZWlnaHQgLSB0by5vdXRlckhlaWdodCApICogYmFzZWxpbmUueSArIHBvcy50b3A7CgkJdG8ubGVmdCA9ICggb3JpZ2luYWwub3V0ZXJXaWR0aCAtIHRvLm91dGVyV2lkdGggKSAqIGJhc2VsaW5lLnggKyBwb3MubGVmdDsKCX0KCWVsZW1lbnQuY3NzKCBmcm9tICk7CgoJLy8gQW5pbWF0ZSB0aGUgY2hpbGRyZW4gaWYgZGVzaXJlZAoJaWYgKCBzY2FsZSA9PT0gImNvbnRlbnQiIHx8IHNjYWxlID09PSAiYm90aCIgKSB7CgoJCXZQcm9wcyA9IHZQcm9wcy5jb25jYXQoIFsgIm1hcmdpblRvcCIsICJtYXJnaW5Cb3R0b20iIF0gKS5jb25jYXQoIGNQcm9wcyApOwoJCWhQcm9wcyA9IGhQcm9wcy5jb25jYXQoIFsgIm1hcmdpbkxlZnQiLCAibWFyZ2luUmlnaHQiIF0gKTsKCgkJLy8gT25seSBhbmltYXRlIGNoaWxkcmVuIHdpdGggd2lkdGggYXR0cmlidXRlcyBzcGVjaWZpZWQKCQkvLyBUT0RPOiBpcyB0aGlzIHJpZ2h0PyBzaG91bGQgd2UgaW5jbHVkZSBhbnl0aGluZyB3aXRoIGNzcyB3aWR0aCBzcGVjaWZpZWQgYXMgd2VsbAoJCWVsZW1lbnQuZmluZCggIipbd2lkdGhdIiApLmVhY2goIGZ1bmN0aW9uKCkgewoJCQl2YXIgY2hpbGQgPSAkKCB0aGlzICksCgkJCQljaGlsZE9yaWdpbmFsID0gJC5lZmZlY3RzLnNjYWxlZERpbWVuc2lvbnMoIGNoaWxkICksCgkJCQljaGlsZEZyb20gPSB7CgkJCQkJaGVpZ2h0OiBjaGlsZE9yaWdpbmFsLmhlaWdodCAqIGZhY3Rvci5mcm9tLnksCgkJCQkJd2lkdGg6IGNoaWxkT3JpZ2luYWwud2lkdGggKiBmYWN0b3IuZnJvbS54LAoJCQkJCW91dGVySGVpZ2h0OiBjaGlsZE9yaWdpbmFsLm91dGVySGVpZ2h0ICogZmFjdG9yLmZyb20ueSwKCQkJCQlvdXRlcldpZHRoOiBjaGlsZE9yaWdpbmFsLm91dGVyV2lkdGggKiBmYWN0b3IuZnJvbS54CgkJCQl9LAoJCQkJY2hpbGRUbyA9IHsKCQkJCQloZWlnaHQ6IGNoaWxkT3JpZ2luYWwuaGVpZ2h0ICogZmFjdG9yLnRvLnksCgkJCQkJd2lkdGg6IGNoaWxkT3JpZ2luYWwud2lkdGggKiBmYWN0b3IudG8ueCwKCQkJCQlvdXRlckhlaWdodDogY2hpbGRPcmlnaW5hbC5oZWlnaHQgKiBmYWN0b3IudG8ueSwKCQkJCQlvdXRlcldpZHRoOiBjaGlsZE9yaWdpbmFsLndpZHRoICogZmFjdG9yLnRvLngKCQkJCX07CgoJCQkvLyBWZXJ0aWNhbCBwcm9wcyBzY2FsaW5nCgkJCWlmICggZmFjdG9yLmZyb20ueSAhPT0gZmFjdG9yLnRvLnkgKSB7CgkJCQljaGlsZEZyb20gPSAkLmVmZmVjdHMuc2V0VHJhbnNpdGlvbiggY2hpbGQsIHZQcm9wcywgZmFjdG9yLmZyb20ueSwgY2hpbGRGcm9tICk7CgkJCQljaGlsZFRvID0gJC5lZmZlY3RzLnNldFRyYW5zaXRpb24oIGNoaWxkLCB2UHJvcHMsIGZhY3Rvci50by55LCBjaGlsZFRvICk7CgkJCX0KCgkJCS8vIEhvcml6b250YWwgcHJvcHMgc2NhbGluZwoJCQlpZiAoIGZhY3Rvci5mcm9tLnggIT09IGZhY3Rvci50by54ICkgewoJCQkJY2hpbGRGcm9tID0gJC5lZmZlY3RzLnNldFRyYW5zaXRpb24oIGNoaWxkLCBoUHJvcHMsIGZhY3Rvci5mcm9tLngsIGNoaWxkRnJvbSApOwoJCQkJY2hpbGRUbyA9ICQuZWZmZWN0cy5zZXRUcmFuc2l0aW9uKCBjaGlsZCwgaFByb3BzLCBmYWN0b3IudG8ueCwgY2hpbGRUbyApOwoJCQl9CgoJCQlpZiAoIHJlc3RvcmUgKSB7CgkJCQkkLmVmZmVjdHMuc2F2ZVN0eWxlKCBjaGlsZCApOwoJCQl9CgoJCQkvLyBBbmltYXRlIGNoaWxkcmVuCgkJCWNoaWxkLmNzcyggY2hpbGRGcm9tICk7CgkJCWNoaWxkLmFuaW1hdGUoIGNoaWxkVG8sIG9wdGlvbnMuZHVyYXRpb24sIG9wdGlvbnMuZWFzaW5nLCBmdW5jdGlvbigpIHsKCgkJCQkvLyBSZXN0b3JlIGNoaWxkcmVuCgkJCQlpZiAoIHJlc3RvcmUgKSB7CgkJCQkJJC5lZmZlY3RzLnJlc3RvcmVTdHlsZSggY2hpbGQgKTsKCQkJCX0KCQkJfSApOwoJCX0gKTsKCX0KCgkvLyBBbmltYXRlCgllbGVtZW50LmFuaW1hdGUoIHRvLCB7CgkJcXVldWU6IGZhbHNlLAoJCWR1cmF0aW9uOiBvcHRpb25zLmR1cmF0aW9uLAoJCWVhc2luZzogb3B0aW9ucy5lYXNpbmcsCgkJY29tcGxldGU6IGZ1bmN0aW9uKCkgewoKCQkJdmFyIG9mZnNldCA9IGVsZW1lbnQub2Zmc2V0KCk7CgoJCQlpZiAoIHRvLm9wYWNpdHkgPT09IDAgKSB7CgkJCQllbGVtZW50LmNzcyggIm9wYWNpdHkiLCBmcm9tLm9wYWNpdHkgKTsKCQkJfQoKCQkJaWYgKCAhcmVzdG9yZSApIHsKCQkJCWVsZW1lbnQKCQkJCQkuY3NzKCAicG9zaXRpb24iLCBwb3NpdGlvbiA9PT0gInN0YXRpYyIgPyAicmVsYXRpdmUiIDogcG9zaXRpb24gKQoJCQkJCS5vZmZzZXQoIG9mZnNldCApOwoKCQkJCS8vIE5lZWQgdG8gc2F2ZSBzdHlsZSBoZXJlIHNvIHRoYXQgYXV0b21hdGljIHN0eWxlIHJlc3RvcmF0aW9uCgkJCQkvLyBkb2Vzbid0IHJlc3RvcmUgdG8gdGhlIG9yaWdpbmFsIHN0eWxlcyBmcm9tIGJlZm9yZSB0aGUgYW5pbWF0aW9uLgoJCQkJJC5lZmZlY3RzLnNhdmVTdHlsZSggZWxlbWVudCApOwoJCQl9CgoJCQlkb25lKCk7CgkJfQoJfSApOwoKfSApOwoKCi8qIQogKiBqUXVlcnkgVUkgRWZmZWN0cyBTY2FsZSAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IFNjYWxlIEVmZmVjdAovLz4+Z3JvdXA6IEVmZmVjdHMKLy8+PmRlc2NyaXB0aW9uOiBHcm93cyBvciBzaHJpbmtzIGFuIGVsZW1lbnQgYW5kIGl0cyBjb250ZW50LgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vc2NhbGUtZWZmZWN0LwovLz4+ZGVtb3M6IGh0dHA6Ly9qcXVlcnl1aS5jb20vZWZmZWN0LwoKCgp2YXIgZWZmZWN0c0VmZmVjdFNjYWxlID0gJC5lZmZlY3RzLmRlZmluZSggInNjYWxlIiwgZnVuY3Rpb24oIG9wdGlvbnMsIGRvbmUgKSB7CgoJLy8gQ3JlYXRlIGVsZW1lbnQKCXZhciBlbCA9ICQoIHRoaXMgKSwKCQltb2RlID0gb3B0aW9ucy5tb2RlLAoJCXBlcmNlbnQgPSBwYXJzZUludCggb3B0aW9ucy5wZXJjZW50LCAxMCApIHx8CgkJCSggcGFyc2VJbnQoIG9wdGlvbnMucGVyY2VudCwgMTAgKSA9PT0gMCA/IDAgOiAoIG1vZGUgIT09ICJlZmZlY3QiID8gMCA6IDEwMCApICksCgoJCW5ld09wdGlvbnMgPSAkLmV4dGVuZCggdHJ1ZSwgewoJCQlmcm9tOiAkLmVmZmVjdHMuc2NhbGVkRGltZW5zaW9ucyggZWwgKSwKCQkJdG86ICQuZWZmZWN0cy5zY2FsZWREaW1lbnNpb25zKCBlbCwgcGVyY2VudCwgb3B0aW9ucy5kaXJlY3Rpb24gfHwgImJvdGgiICksCgkJCW9yaWdpbjogb3B0aW9ucy5vcmlnaW4gfHwgWyAibWlkZGxlIiwgImNlbnRlciIgXQoJCX0sIG9wdGlvbnMgKTsKCgkvLyBGYWRlIG9wdGlvbiB0byBzdXBwb3J0IHB1ZmYKCWlmICggb3B0aW9ucy5mYWRlICkgewoJCW5ld09wdGlvbnMuZnJvbS5vcGFjaXR5ID0gMTsKCQluZXdPcHRpb25zLnRvLm9wYWNpdHkgPSAwOwoJfQoKCSQuZWZmZWN0cy5lZmZlY3Quc2l6ZS5jYWxsKCB0aGlzLCBuZXdPcHRpb25zLCBkb25lICk7Cn0gKTsKCgovKiEKICogalF1ZXJ5IFVJIEVmZmVjdHMgUHVmZiAxLjEyLjEKICogaHR0cDovL2pxdWVyeXVpLmNvbQogKgogKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycwogKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuCiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2UKICovCgovLz4+bGFiZWw6IFB1ZmYgRWZmZWN0Ci8vPj5ncm91cDogRWZmZWN0cwovLz4+ZGVzY3JpcHRpb246IENyZWF0ZXMgYSBwdWZmIGVmZmVjdCBieSBzY2FsaW5nIHRoZSBlbGVtZW50IHVwIGFuZCBoaWRpbmcgaXQgYXQgdGhlIHNhbWUgdGltZS4KLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3B1ZmYtZWZmZWN0LwovLz4+ZGVtb3M6IGh0dHA6Ly9qcXVlcnl1aS5jb20vZWZmZWN0LwoKCgp2YXIgZWZmZWN0c0VmZmVjdFB1ZmYgPSAkLmVmZmVjdHMuZGVmaW5lKCAicHVmZiIsICJoaWRlIiwgZnVuY3Rpb24oIG9wdGlvbnMsIGRvbmUgKSB7Cgl2YXIgbmV3T3B0aW9ucyA9ICQuZXh0ZW5kKCB0cnVlLCB7fSwgb3B0aW9ucywgewoJCWZhZGU6IHRydWUsCgkJcGVyY2VudDogcGFyc2VJbnQoIG9wdGlvbnMucGVyY2VudCwgMTAgKSB8fCAxNTAKCX0gKTsKCgkkLmVmZmVjdHMuZWZmZWN0LnNjYWxlLmNhbGwoIHRoaXMsIG5ld09wdGlvbnMsIGRvbmUgKTsKfSApOwoKCi8qIQogKiBqUXVlcnkgVUkgRWZmZWN0cyBQdWxzYXRlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogUHVsc2F0ZSBFZmZlY3QKLy8+Pmdyb3VwOiBFZmZlY3RzCi8vPj5kZXNjcmlwdGlvbjogUHVsc2F0ZXMgYW4gZWxlbWVudCBuIHRpbWVzIGJ5IGNoYW5naW5nIHRoZSBvcGFjaXR5IHRvIHplcm8gYW5kIGJhY2suCi8vPj5kb2NzOiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9wdWxzYXRlLWVmZmVjdC8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL2VmZmVjdC8KCgoKdmFyIGVmZmVjdHNFZmZlY3RQdWxzYXRlID0gJC5lZmZlY3RzLmRlZmluZSggInB1bHNhdGUiLCAic2hvdyIsIGZ1bmN0aW9uKCBvcHRpb25zLCBkb25lICkgewoJdmFyIGVsZW1lbnQgPSAkKCB0aGlzICksCgkJbW9kZSA9IG9wdGlvbnMubW9kZSwKCQlzaG93ID0gbW9kZSA9PT0gInNob3ciLAoJCWhpZGUgPSBtb2RlID09PSAiaGlkZSIsCgkJc2hvd2hpZGUgPSBzaG93IHx8IGhpZGUsCgoJCS8vIFNob3dpbmcgb3IgaGlkaW5nIGxlYXZlcyBvZmYgdGhlICJsYXN0IiBhbmltYXRpb24KCQlhbmltcyA9ICggKCBvcHRpb25zLnRpbWVzIHx8IDUgKSAqIDIgKSArICggc2hvd2hpZGUgPyAxIDogMCApLAoJCWR1cmF0aW9uID0gb3B0aW9ucy5kdXJhdGlvbiAvIGFuaW1zLAoJCWFuaW1hdGVUbyA9IDAsCgkJaSA9IDEsCgkJcXVldWVsZW4gPSBlbGVtZW50LnF1ZXVlKCkubGVuZ3RoOwoKCWlmICggc2hvdyB8fCAhZWxlbWVudC5pcyggIjp2aXNpYmxlIiApICkgewoJCWVsZW1lbnQuY3NzKCAib3BhY2l0eSIsIDAgKS5zaG93KCk7CgkJYW5pbWF0ZVRvID0gMTsKCX0KCgkvLyBBbmltcyAtIDEgb3BhY2l0eSAidG9nZ2xlcyIKCWZvciAoIDsgaSA8IGFuaW1zOyBpKysgKSB7CgkJZWxlbWVudC5hbmltYXRlKCB7IG9wYWNpdHk6IGFuaW1hdGVUbyB9LCBkdXJhdGlvbiwgb3B0aW9ucy5lYXNpbmcgKTsKCQlhbmltYXRlVG8gPSAxIC0gYW5pbWF0ZVRvOwoJfQoKCWVsZW1lbnQuYW5pbWF0ZSggeyBvcGFjaXR5OiBhbmltYXRlVG8gfSwgZHVyYXRpb24sIG9wdGlvbnMuZWFzaW5nICk7CgoJZWxlbWVudC5xdWV1ZSggZG9uZSApOwoKCSQuZWZmZWN0cy51bnNoaWZ0KCBlbGVtZW50LCBxdWV1ZWxlbiwgYW5pbXMgKyAxICk7Cn0gKTsKCgovKiEKICogalF1ZXJ5IFVJIEVmZmVjdHMgU2hha2UgMS4xMi4xCiAqIGh0dHA6Ly9qcXVlcnl1aS5jb20KICoKICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnMKICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLgogKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlCiAqLwoKLy8+PmxhYmVsOiBTaGFrZSBFZmZlY3QKLy8+Pmdyb3VwOiBFZmZlY3RzCi8vPj5kZXNjcmlwdGlvbjogU2hha2VzIGFuIGVsZW1lbnQgaG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkgbiB0aW1lcy4KLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3NoYWtlLWVmZmVjdC8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL2VmZmVjdC8KCgoKdmFyIGVmZmVjdHNFZmZlY3RTaGFrZSA9ICQuZWZmZWN0cy5kZWZpbmUoICJzaGFrZSIsIGZ1bmN0aW9uKCBvcHRpb25zLCBkb25lICkgewoKCXZhciBpID0gMSwKCQllbGVtZW50ID0gJCggdGhpcyApLAoJCWRpcmVjdGlvbiA9IG9wdGlvbnMuZGlyZWN0aW9uIHx8ICJsZWZ0IiwKCQlkaXN0YW5jZSA9IG9wdGlvbnMuZGlzdGFuY2UgfHwgMjAsCgkJdGltZXMgPSBvcHRpb25zLnRpbWVzIHx8IDMsCgkJYW5pbXMgPSB0aW1lcyAqIDIgKyAxLAoJCXNwZWVkID0gTWF0aC5yb3VuZCggb3B0aW9ucy5kdXJhdGlvbiAvIGFuaW1zICksCgkJcmVmID0gKCBkaXJlY3Rpb24gPT09ICJ1cCIgfHwgZGlyZWN0aW9uID09PSAiZG93biIgKSA/ICJ0b3AiIDogImxlZnQiLAoJCXBvc2l0aXZlTW90aW9uID0gKCBkaXJlY3Rpb24gPT09ICJ1cCIgfHwgZGlyZWN0aW9uID09PSAibGVmdCIgKSwKCQlhbmltYXRpb24gPSB7fSwKCQlhbmltYXRpb24xID0ge30sCgkJYW5pbWF0aW9uMiA9IHt9LAoKCQlxdWV1ZWxlbiA9IGVsZW1lbnQucXVldWUoKS5sZW5ndGg7CgoJJC5lZmZlY3RzLmNyZWF0ZVBsYWNlaG9sZGVyKCBlbGVtZW50ICk7CgoJLy8gQW5pbWF0aW9uCglhbmltYXRpb25bIHJlZiBdID0gKCBwb3NpdGl2ZU1vdGlvbiA/ICItPSIgOiAiKz0iICkgKyBkaXN0YW5jZTsKCWFuaW1hdGlvbjFbIHJlZiBdID0gKCBwb3NpdGl2ZU1vdGlvbiA/ICIrPSIgOiAiLT0iICkgKyBkaXN0YW5jZSAqIDI7CglhbmltYXRpb24yWyByZWYgXSA9ICggcG9zaXRpdmVNb3Rpb24gPyAiLT0iIDogIis9IiApICsgZGlzdGFuY2UgKiAyOwoKCS8vIEFuaW1hdGUKCWVsZW1lbnQuYW5pbWF0ZSggYW5pbWF0aW9uLCBzcGVlZCwgb3B0aW9ucy5lYXNpbmcgKTsKCgkvLyBTaGFrZXMKCWZvciAoIDsgaSA8IHRpbWVzOyBpKysgKSB7CgkJZWxlbWVudAoJCQkuYW5pbWF0ZSggYW5pbWF0aW9uMSwgc3BlZWQsIG9wdGlvbnMuZWFzaW5nICkKCQkJLmFuaW1hdGUoIGFuaW1hdGlvbjIsIHNwZWVkLCBvcHRpb25zLmVhc2luZyApOwoJfQoKCWVsZW1lbnQKCQkuYW5pbWF0ZSggYW5pbWF0aW9uMSwgc3BlZWQsIG9wdGlvbnMuZWFzaW5nICkKCQkuYW5pbWF0ZSggYW5pbWF0aW9uLCBzcGVlZCAvIDIsIG9wdGlvbnMuZWFzaW5nICkKCQkucXVldWUoIGRvbmUgKTsKCgkkLmVmZmVjdHMudW5zaGlmdCggZWxlbWVudCwgcXVldWVsZW4sIGFuaW1zICsgMSApOwp9ICk7CgoKLyohCiAqIGpRdWVyeSBVSSBFZmZlY3RzIFNsaWRlIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogU2xpZGUgRWZmZWN0Ci8vPj5ncm91cDogRWZmZWN0cwovLz4+ZGVzY3JpcHRpb246IFNsaWRlcyBhbiBlbGVtZW50IGluIGFuZCBvdXQgb2YgdGhlIHZpZXdwb3J0LgovLz4+ZG9jczogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vc2xpZGUtZWZmZWN0LwovLz4+ZGVtb3M6IGh0dHA6Ly9qcXVlcnl1aS5jb20vZWZmZWN0LwoKCgp2YXIgZWZmZWN0c0VmZmVjdFNsaWRlID0gJC5lZmZlY3RzLmRlZmluZSggInNsaWRlIiwgInNob3ciLCBmdW5jdGlvbiggb3B0aW9ucywgZG9uZSApIHsKCXZhciBzdGFydENsaXAsIHN0YXJ0UmVmLAoJCWVsZW1lbnQgPSAkKCB0aGlzICksCgkJbWFwID0gewoJCQl1cDogWyAiYm90dG9tIiwgInRvcCIgXSwKCQkJZG93bjogWyAidG9wIiwgImJvdHRvbSIgXSwKCQkJbGVmdDogWyAicmlnaHQiLCAibGVmdCIgXSwKCQkJcmlnaHQ6IFsgImxlZnQiLCAicmlnaHQiIF0KCQl9LAoJCW1vZGUgPSBvcHRpb25zLm1vZGUsCgkJZGlyZWN0aW9uID0gb3B0aW9ucy5kaXJlY3Rpb24gfHwgImxlZnQiLAoJCXJlZiA9ICggZGlyZWN0aW9uID09PSAidXAiIHx8IGRpcmVjdGlvbiA9PT0gImRvd24iICkgPyAidG9wIiA6ICJsZWZ0IiwKCQlwb3NpdGl2ZU1vdGlvbiA9ICggZGlyZWN0aW9uID09PSAidXAiIHx8IGRpcmVjdGlvbiA9PT0gImxlZnQiICksCgkJZGlzdGFuY2UgPSBvcHRpb25zLmRpc3RhbmNlIHx8CgkJCWVsZW1lbnRbIHJlZiA9PT0gInRvcCIgPyAib3V0ZXJIZWlnaHQiIDogIm91dGVyV2lkdGgiIF0oIHRydWUgKSwKCQlhbmltYXRpb24gPSB7fTsKCgkkLmVmZmVjdHMuY3JlYXRlUGxhY2Vob2xkZXIoIGVsZW1lbnQgKTsKCglzdGFydENsaXAgPSBlbGVtZW50LmNzc0NsaXAoKTsKCXN0YXJ0UmVmID0gZWxlbWVudC5wb3NpdGlvbigpWyByZWYgXTsKCgkvLyBEZWZpbmUgaGlkZSBhbmltYXRpb24KCWFuaW1hdGlvblsgcmVmIF0gPSAoIHBvc2l0aXZlTW90aW9uID8gLTEgOiAxICkgKiBkaXN0YW5jZSArIHN0YXJ0UmVmOwoJYW5pbWF0aW9uLmNsaXAgPSBlbGVtZW50LmNzc0NsaXAoKTsKCWFuaW1hdGlvbi5jbGlwWyBtYXBbIGRpcmVjdGlvbiBdWyAxIF0gXSA9IGFuaW1hdGlvbi5jbGlwWyBtYXBbIGRpcmVjdGlvbiBdWyAwIF0gXTsKCgkvLyBSZXZlcnNlIHRoZSBhbmltYXRpb24gaWYgd2UncmUgc2hvd2luZwoJaWYgKCBtb2RlID09PSAic2hvdyIgKSB7CgkJZWxlbWVudC5jc3NDbGlwKCBhbmltYXRpb24uY2xpcCApOwoJCWVsZW1lbnQuY3NzKCByZWYsIGFuaW1hdGlvblsgcmVmIF0gKTsKCQlhbmltYXRpb24uY2xpcCA9IHN0YXJ0Q2xpcDsKCQlhbmltYXRpb25bIHJlZiBdID0gc3RhcnRSZWY7Cgl9CgoJLy8gQWN0dWFsbHkgYW5pbWF0ZQoJZWxlbWVudC5hbmltYXRlKCBhbmltYXRpb24sIHsKCQlxdWV1ZTogZmFsc2UsCgkJZHVyYXRpb246IG9wdGlvbnMuZHVyYXRpb24sCgkJZWFzaW5nOiBvcHRpb25zLmVhc2luZywKCQljb21wbGV0ZTogZG9uZQoJfSApOwp9ICk7CgoKLyohCiAqIGpRdWVyeSBVSSBFZmZlY3RzIFRyYW5zZmVyIDEuMTIuMQogKiBodHRwOi8vanF1ZXJ5dWkuY29tCiAqCiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzCiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS4KICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZQogKi8KCi8vPj5sYWJlbDogVHJhbnNmZXIgRWZmZWN0Ci8vPj5ncm91cDogRWZmZWN0cwovLz4+ZGVzY3JpcHRpb246IERpc3BsYXlzIGEgdHJhbnNmZXIgZWZmZWN0IGZyb20gb25lIGVsZW1lbnQgdG8gYW5vdGhlci4KLy8+PmRvY3M6IGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3RyYW5zZmVyLWVmZmVjdC8KLy8+PmRlbW9zOiBodHRwOi8vanF1ZXJ5dWkuY29tL2VmZmVjdC8KCgoKdmFyIGVmZmVjdDsKaWYgKCAkLnVpQmFja0NvbXBhdCAhPT0gZmFsc2UgKSB7CgllZmZlY3QgPSAkLmVmZmVjdHMuZGVmaW5lKCAidHJhbnNmZXIiLCBmdW5jdGlvbiggb3B0aW9ucywgZG9uZSApIHsKCQkkKCB0aGlzICkudHJhbnNmZXIoIG9wdGlvbnMsIGRvbmUgKTsKCX0gKTsKfQp2YXIgZWZmZWN0c0VmZmVjdFRyYW5zZmVyID0gZWZmZWN0OwoKCgoKfSkpOw=="}},"time_used":111,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":111,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","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/70364.644cb93441690c829ab9.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.322Z","timestamp":1785126257322,"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-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/70364.644cb93441690c829ab9.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/crypto-mkt-screener/?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 04:24:17 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-2ba\"\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:11:29\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 7d8b20fab69c78122aa1753219ffda9d\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":698,"size_decoded":997,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (698), with no line terminators","md5":"bd271563b2387cb959a02a85476d20fc","sha1":"0e477a102b7f0c4aaac868f1244ee975d076a676","sha256":"a83a53bf9ef309ae736122159bb8a92c91735729ea3ec8a987d276eb936f787c","sha512":"c3dca5bcc3a0566d7726e04a16dfa6943da394b3d4663ee7721db0397913c34ec2aecbd0e061d4c03ccc091d390facff787c481c5ac209516320eb33350e9bdb","ssdeep":"","tlshash":"1d01ec6b92e8b15320ff7e3ca96cc2d92570da624f84a6ec719c3aa487456754610934","first_seen":"2026-03-31T19:29:24.868047Z","last_seen":"2026-07-27T07:14:43.797446Z","times_seen":433,"resource_available":false,"data":"LndyYXBwZXItUFE1T18xTTcudG91Y2gtUFE1T18xTTcud3JhcHBlci1QUTVPXzFNNy50b3VjaC1QUTVPXzFNN3tvdmVyZmxvdy15OmF1dG87LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2h9LndyYXBwZXItUFE1T18xTTcudG91Y2gtUFE1T18xTTcud3JhcHBlci1QUTVPXzFNNy50b3VjaC1QUTVPXzFNNzo6LXdlYmtpdC1zY3JvbGxiYXJ7aGVpZ2h0OjVweDt3aWR0aDo1cHh9LndyYXBwZXItUFE1T18xTTcudG91Y2gtUFE1T18xTTcud3JhcHBlci1QUTVPXzFNNy50b3VjaC1QUTVPXzFNNzo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7YmFja2dyb3VuZC1jbGlwOmNvbnRlbnQtYm94O2JhY2tncm91bmQtY29sb3I6dmFyKC0tdHYtY29sb3Itc2Nyb2xsYmFyLXRodW1iLWJhY2tncm91bmQsdmFyKC0tY29sb3Itc2Nyb2xsLWJnKSk7Ym9yZGVyOjFweCBzb2xpZCAjMDAwMDtib3JkZXItcmFkaXVzOjNweH0ud3JhcHBlci1QUTVPXzFNNy50b3VjaC1QUTVPXzFNNy53cmFwcGVyLVBRNU9fMU03LnRvdWNoLVBRNU9fMU03Ojotd2Via2l0LXNjcm9sbGJhci10cmFja3tiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Ym9yZGVyLXJhZGl1czozcHh9LndyYXBwZXItUFE1T18xTTcudG91Y2gtUFE1T18xTTcud3JhcHBlci1QUTVPXzFNNy50b3VjaC1QUTVPXzFNNzo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVye2Rpc3BsYXk6bm9uZX0="}},"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.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.351Z","timestamp":1785126257351,"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-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/crypto-mkt-screener/?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 04:24:17 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: 6b48649c7e0e2cdd7d4db1a233a3204d\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":2618,"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-27T07:05:45.424648Z","times_seen":3936,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbMTMxNDhdLHs3MzU5ODModCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5kfSk7Y29uc3Qgbz1mdW5jdGlvbigpe3RoaXMuX19kYXRhX189W10sdGhpcy5zaXplPTB9O3ZhciByPW4oOTEwNzc4KTtjb25zdCBhPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciBuPXQubGVuZ3RoO24tLTspaWYoKDAsci5kZWZhdWx0KSh0W25dWzBdLGUpKXJldHVybiBuO3JldHVybi0xfTt2YXIgcz1BcnJheS5wcm90b3R5cGUuc3BsaWNlO2NvbnN0IGM9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5fX2RhdGFfXyxuPWEoZSx0KTtyZXR1cm4hKG48MCkmJihuPT1lLmxlbmd0aC0xP2UucG9wKCk6cy5jYWxsKGUsbiwxKSwtLXRoaXMuc2l6ZSwhMCl9O2NvbnN0IGk9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5fX2RhdGFfXyxuPWEoZSx0KTtyZXR1cm4gbjwwP3ZvaWQgMDplW25dWzFdfTtjb25zdCB1PWZ1bmN0aW9uKHQpe3JldHVybiBhKHRoaXMuX19kYXRhX18sdCk+LTF9O2NvbnN0IGw9ZnVuY3Rpb24odCxlKXt2YXIgbj10aGlzLl9fZGF0YV9fLG89YShuLHQpO3JldHVybiBvPDA/KCsrdGhpcy5zaXplLG4ucHVzaChbdCxlXSkpOm5bb11bMV09ZSx0aGlzfTtmdW5jdGlvbiBmKHQpe3ZhciBlPS0xLG49bnVsbD09dD8wOnQubGVuZ3RoO2Zvcih0aGlzLmNsZWFyKCk7KytlPG47KXt2YXIgbz10W2VdO3RoaXMuc2V0KG9bMF0sb1sxXSl9fWYucHJvdG90eXBlLmNsZWFyPW8sZi5wcm90b3R5cGUuZGVsZXRlPWMsZi5wcm90b3R5cGUuZ2V0PWksZi5wcm90b3R5cGUuaGFzPXUsZi5wcm90b3R5cGUuc2V0PWw7Y29uc3QgZD1mfSw2OTQyMSh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9PmF9KTt2YXIgbz1uKDE2MjMxNikscj1uKDk4MTUyMyk7Y29uc3QgYT0oMCxvLmRlZmF1bHQpKHIuZGVmYXVsdCwiTWFwIil9LDcxMzE0OCh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pnp9KTtjb25zdCBvPSgwLG4oMTYyMzE2KS5kZWZhdWx0KShPYmplY3QsImNyZWF0ZSIpO2NvbnN0IHI9ZnVuY3Rpb24oKXt0aGlzLl9fZGF0YV9fPW8/byhudWxsKTp7fSx0aGlzLnNpemU9MH07Y29uc3QgYT1mdW5jdGlvbih0KXt2YXIgZT10aGlzLmhhcyh0KSYmZGVsZXRlIHRoaXMuX19kYXRhX19bdF07cmV0dXJuIHRoaXMuc2l6ZS09ZT8xOjAsZX07dmFyIHM9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtjb25zdCBjPWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuX19kYXRhX187aWYobyl7dmFyIG49ZVt0XTtyZXR1cm4iX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyI9PT1uP3ZvaWQgMDpufXJldHVybiBzLmNhbGwoZSx0KT9lW3RdOnZvaWQgMH07dmFyIGk9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtjb25zdCB1PWZ1bmN0aW9uKHQpe3ZhciBlPXRoaXMuX19kYXRhX187cmV0dXJuIG8/dm9pZCAwIT09ZVt0XTppLmNhbGwoZSx0KX07Y29uc3QgbD1mdW5jdGlvbih0LGUpe3ZhciBuPXRoaXMuX19kYXRhX187cmV0dXJuIHRoaXMuc2l6ZSs9dGhpcy5oYXModCk/MDoxLG5bdF09byYmdm9pZCAwPT09ZT8iX19sb2Rhc2hfaGFzaF91bmRlZmluZWRfXyI6ZSx0aGlzfTtmdW5jdGlvbiBmKHQpe3ZhciBlPS0xLG49bnVsbD09dD8wOnQubGVuZ3RoO2Zvcih0aGlzLmNsZWFyKCk7KytlPG47KXt2YXIgbz10W2VdO3RoaXMuc2V0KG9bMF0sb1sxXSl9fWYucHJvdG90eXBlLmNsZWFyPXIsZi5wcm90b3R5cGUuZGVsZXRlPWEsZi5wcm90b3R5cGUuZ2V0PWMsZi5wcm90b3R5cGUuaGFzPXUsZi5wcm90b3R5cGUuc2V0PWw7Y29uc3QgZD1mO3ZhciBfPW4oNzM1OTgzKSxoPW4oNjk0MjEpO2NvbnN0IHA9ZnVuY3Rpb24oKXt0aGlzLnNpemU9MCx0aGlzLl9fZGF0YV9fPXtoYXNoOm5ldyBkLG1hcDpuZXcoaC5kZWZhdWx0fHxfLmRlZmF1bHQpLHN0cmluZzpuZXcgZH19O2NvbnN0IHY9ZnVuY3Rpb24odCl7dmFyIGU9dHlwZW9mIHQ7cmV0dXJuInN0cmluZyI9PWV8fCJudW1iZXIiPT1lfHwic3ltYm9sIj09ZXx8ImJvb2xlYW4iPT1lPyJfX3Byb3RvX18iIT09dDpudWxsPT09dH07Y29uc3QgeT1mdW5jdGlvbih0LGUpe3ZhciBuPXQuX19kYXRhX187cmV0dXJuIHYoZSk/blsic3RyaW5nIj09dHlwZW9mIGU/InN0cmluZyI6Imhhc2giXTpuLm1hcH07Y29uc3QgZz1mdW5jdGlvbih0KXt2YXIgZT15KHRoaXMsdCkuZGVsZXRlKHQpO3JldHVybiB0aGlzLnNpemUtPWU/MTowLGV9O2NvbnN0IGI9ZnVuY3Rpb24odCl7cmV0dXJuIHkodGhpcyx0KS5nZXQodCl9O2NvbnN0IGo9ZnVuY3Rpb24odCl7cmV0dXJuIHkodGhpcyx0KS5oYXModCl9O2NvbnN0IE89ZnVuY3Rpb24odCxlKXt2YXIgbj15KHRoaXMsdCksbz1uLnNpemU7cmV0dXJuIG4uc2V0KHQsZSksdGhpcy5zaXplKz1uLnNpemU9PW8/MDoxLHRoaXN9O2Z1bmN0aW9uIHcodCl7dmFyIGU9LTEsbj1udWxsPT10PzA6dC5sZW5ndGg7Zm9yKHRoaXMuY2xlYXIoKTsrK2U8bjspe3ZhciBvPXRbZV07dGhpcy5zZXQob1swXSxvWzFdKX19dy5wcm90b3R5cGUuY2xlYXI9cCx3LnByb3RvdHlwZS5kZWxldGU9Zyx3LnByb3RvdHlwZS5nZXQ9Yix3LnByb3RvdHlwZS5oYXM9aix3LnByb3RvdHlwZS5zZXQ9Tztjb25zdCB6PXd9LDg3Mjk5OSh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pm99KTtjb25zdCBvPW4oOTgxNTIzKS5kZWZhdWx0LlN5bWJvbH0sMTc4NDk3KHQsZSxuKXtuLmQoZSx7ZGVmYXVsdDooKT0+ZH0pO3ZhciBvPW4oODcyOTk5KSxyPU9iamVjdC5wcm90b3R5cGUsYT1yLmhhc093blByb3BlcnR5LHM9ci50b1N0cmluZyxjPW8uZGVmYXVsdD9vLmRlZmF1bHQudG9TdHJpbmdUYWc6dm9pZCAwO2NvbnN0IGk9ZnVuY3Rpb24odCl7dmFyIGU9YS5jYWxsKHQsYyksbj10W2NdO3RyeXt0W2NdPXZvaWQgMDt2YXIgbz0hMH1jYXRjaCh0KXt9dmFyIHI9cy5jYWxsKHQpO3JldHVybiBvJiYoZT90W2NdPW46ZGVsZXRlIHRbY10pLHJ9O3ZhciB1PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7Y29uc3QgbD1mdW5jdGlvbih0KXtyZXR1cm4gdS5jYWxsKHQpfQo7dmFyIGY9by5kZWZhdWx0P28uZGVmYXVsdC50b1N0cmluZ1RhZzp2b2lkIDA7Y29uc3QgZD1mdW5jdGlvbih0KXtyZXR1cm4gbnVsbD09dD92b2lkIDA9PT10PyJbb2JqZWN0IFVuZGVmaW5lZF0iOiJbb2JqZWN0IE51bGxdIjpmJiZmIGluIE9iamVjdCh0KT9pKHQpOmwodCl9fSw2MDI5NDIodCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5vfSk7Y29uc3Qgbz0ib2JqZWN0Ij09dHlwZW9mIG4uZyYmbi5nJiZuLmcuT2JqZWN0PT09T2JqZWN0JiZuLmd9LDE2MjMxNih0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pmd9KTt2YXIgbz1uKDkyODEzMik7Y29uc3Qgcj1uKDk4MTUyMykuZGVmYXVsdFsiX19jb3JlLWpzX3NoYXJlZF9fIl07dmFyIGEscz0oYT0vW14uXSskLy5leGVjKHImJnIua2V5cyYmci5rZXlzLklFX1BST1RPfHwiIikpPyJTeW1ib2woc3JjKV8xLiIrYToiIjtjb25zdCBjPWZ1bmN0aW9uKHQpe3JldHVybiEhcyYmcyBpbiB0fTt2YXIgaT1uKDg4MDExNSksdT1uKDczMDUwMyksbD0vXlxbb2JqZWN0IC4rP0NvbnN0cnVjdG9yXF0kLyxmPUZ1bmN0aW9uLnByb3RvdHlwZSxkPU9iamVjdC5wcm90b3R5cGUsXz1mLnRvU3RyaW5nLGg9ZC5oYXNPd25Qcm9wZXJ0eSxwPVJlZ0V4cCgiXiIrXy5jYWxsKGgpLnJlcGxhY2UoL1tcXF4kLiorPygpW1xde318XS9nLCJcXCQmIikucmVwbGFjZSgvaGFzT3duUHJvcGVydHl8KGZ1bmN0aW9uKS4qPyg/PVxcXCgpfCBmb3IgLis/KD89XFxcXSkvZywiJDEuKj8iKSsiJCIpO2NvbnN0IHY9ZnVuY3Rpb24odCl7cmV0dXJuISghKDAsaS5kZWZhdWx0KSh0KXx8Yyh0KSkmJigoMCxvLmRlZmF1bHQpKHQpP3A6bCkudGVzdCgoMCx1LmRlZmF1bHQpKHQpKX07Y29uc3QgeT1mdW5jdGlvbih0LGUpe3JldHVybiBudWxsPT10P3ZvaWQgMDp0W2VdfTtjb25zdCBnPWZ1bmN0aW9uKHQsZSl7dmFyIG49eSh0LGUpO3JldHVybiB2KG4pP246dm9pZCAwfX0sOTgxNTIzKHQsZSxuKXtuLmQoZSx7ZGVmYXVsdDooKT0+YX0pO3ZhciBvPW4oNjAyOTQyKSxyPSJvYmplY3QiPT10eXBlb2Ygc2VsZiYmc2VsZiYmc2VsZi5PYmplY3Q9PT1PYmplY3QmJnNlbGY7Y29uc3QgYT1vLmRlZmF1bHR8fHJ8fEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCl9LDczMDUwMyh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9PnJ9KTt2YXIgbz1GdW5jdGlvbi5wcm90b3R5cGUudG9TdHJpbmc7Y29uc3Qgcj1mdW5jdGlvbih0KXtpZihudWxsIT10KXt0cnl7cmV0dXJuIG8uY2FsbCh0KX1jYXRjaCh0KXt9dHJ5e3JldHVybiB0KyIifWNhdGNoKHQpe319cmV0dXJuIiJ9fSw5MTA3NzgodCxlLG4pe24uZChlLHtkZWZhdWx0OigpPT5vfSk7Y29uc3Qgbz1mdW5jdGlvbih0LGUpe3JldHVybiB0PT09ZXx8dCE9dCYmZSE9ZX19LDkyODEzMih0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9PmF9KTt2YXIgbz1uKDE3ODQ5Nykscj1uKDg4MDExNSk7Y29uc3QgYT1mdW5jdGlvbih0KXtpZighKDAsci5kZWZhdWx0KSh0KSlyZXR1cm4hMTt2YXIgZT0oMCxvLmRlZmF1bHQpKHQpO3JldHVybiJbb2JqZWN0IEZ1bmN0aW9uXSI9PWV8fCJbb2JqZWN0IEdlbmVyYXRvckZ1bmN0aW9uXSI9PWV8fCJbb2JqZWN0IEFzeW5jRnVuY3Rpb25dIj09ZXx8IltvYmplY3QgUHJveHldIj09ZX19LDg4MDExNSh0LGUsbil7bi5kKGUse2RlZmF1bHQ6KCk9Pm99KTtjb25zdCBvPWZ1bmN0aW9uKHQpe3ZhciBlPXR5cGVvZiB0O3JldHVybiBudWxsIT10JiYoIm9iamVjdCI9PWV8fCJmdW5jdGlvbiI9PWUpfX19XSk7"}},"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.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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.081Z","timestamp":1785126258081,"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-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/ticker-tape/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: _sp_ses.6222=*; _sp_id.6222=.1785126258.1.1785126258..f046d173-2de7-466f-b43d-da020e6c1d25..5e0c746c-9d4f-48c1-a771-92d2f9f1761c.1785126257760.1\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 04:24:18 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: c837a14697b54faffe27984e299821c2\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-27T07:05:45.346086Z","times_seen":10181,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtVDJTTzp2YXIoLS1jb2xvci13aGl0ZSk7LS1fMS1UMlNPOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApfVtkYXRhLXRoZW1lPWRhcmtdey0tXzAtVDJTTzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLV8xLVQyU086dmFyKC0tY29sb3Itd2hpdGUpfS5sYWJlbC1lOWM2ZHljVntiYWNrZ3JvdW5kOnZhcigtLV8wLVQyU08pfS5sYWJlbC1lOWM2ZHljViAubG9nb1dyYXAtZTljNmR5Y1Ygc3Zne2hlaWdodDoxMHB4O21hcmdpbjo3cHggMDt3aWR0aDoxN3B4fS5sYWJlbC1lOWM2ZHljViAubG9nb1dyYXAtZTljNmR5Y1Ygc3ZnIHBhdGh7ZmlsbDp2YXIoLS1fMS1UMlNPKX0ubGFiZWwtZTljNmR5Y1YgLnN2Z1RleHRXcmFwLWU5YzZkeWNWIHN2Z3ttYXJnaW46NnB4IDB9LmxhYmVsLWU5YzZkeWNWIC5zdmdUZXh0V3JhcC1lOWM2ZHljViBzdmcgcGF0aHtmaWxsOnZhcigtLV8xLVQyU08pfS5sYWJlbC1lOWM2ZHljVi5sYXJnZS1lOWM2ZHljVntiYWNrZ3JvdW5kOnZhcigtLWNvbG9yLWJnLXNlY29uZGFyeSl9LmxhYmVsLWU5YzZkeWNWLmxhcmdlLWU5YzZkeWNWIC5sb2dvV3JhcC1lOWM2ZHljViBzdmd7aGVpZ2h0OjExcHg7bWFyZ2luOjExcHggMCAxMHB4O3dpZHRoOjIwcHh9LmxhYmVsLWU5YzZkeWNWLmxhcmdlLWU5YzZkeWNWIC5zdmdUZXh0V3JhcC1lOWM2ZHljViBzdmd7aGVpZ2h0OjE0cHg7bWFyZ2luOjEwcHggMDt3aWR0aDo3N3B4fQ=="}},"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":"besttrader.live/images/icon/b-chart.png","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.082Z","timestamp":1785126256082,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/icon/b-chart.png HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/png\r\ncontent-length: 2684\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-a7c\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":2684,"size_decoded":2932,"mime_type":"image/png","magic":"PNG image data, 40 x 40, 8-bit/color RGBA, non-interlaced","md5":"fe3366e4fa5b21d2af5ffd6856ac1a1f","sha1":"cdd93f8dadc6682e2176e8f0aef29d7db9054bc2","sha256":"c90ac27535d9603d90a77a403cc32e5b50f6387a60e4f5ba399cbff72dbb7e14","sha512":"216b512507ea666ff747cb6dbdc05600f21539ae15293819d241382f154235ea84082bd6dad3d288f7f23fe800f089a777b5106029e879d1f65f53d8a0644abf","ssdeep":"","tlshash":"3a51e746e9068c92164dd84029f503d2fa278bc68ac195cbac9d9ea675300f38c4c2d7","first_seen":"2023-05-01T20:32:00Z","last_seen":"2026-07-27T04:25:12.797882Z","times_seen":197,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFFmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDggNzkuMTY0MDM2LCAyMDE5LzA4LzEzLTAxOjA2OjU3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjEuMCAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDIwLTAyLTE2VDIzOjE0OjA1KzAxOjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyMC0wMi0xNlQyMzoyMjo1NSswMTowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyMC0wMi0xNlQyMzoyMjo1NSswMTowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpkNzg1ZTA2ZS0wYTc1LTY1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"}},"time_used":343,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":323,"receive":20,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/admin/testimony-images/4129.png","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.112Z","timestamp":1785126256112,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /admin/testimony-images/4129.png HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/png\r\ncontent-length: 15113\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-3b09\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":15113,"size_decoded":15363,"mime_type":"image/png","magic":"PNG image data, 73 x 73, 8-bit/color RGB, non-interlaced","md5":"e82ad439559e7040539ad455639deefb","sha1":"5b1e897b62d907552a53ff5b361b8beda5cbe99f","sha256":"3d4215c8d78d7820391c4babdb17d3229337d1bed46ca900b8b294daa09724ef","sha512":"f320a2256506d421865bbf33d899cbc5729318bad9673295ed2a6a9521642364f9b3bfd9f8d766bfbccf56b4b37f6185f603dfe41f05e8d27ca472adedf41d48","ssdeep":"384:U8fe6jq5s3JLaOQ8TLWTcx3AazzVzPl+j+UhB74ay0e79Kw3ltBGB:Pfe6jq5s3EOQ8TLWTc1jzhl0zyj79xlw","tlshash":"6762d0788796ebf0912d111dc1df43cd2a1e6736769db261e7a3a99212006f6d4f0c2b","first_seen":"2026-07-27T03:36:45.19675Z","last_seen":"2026-07-27T04:25:12.798586Z","times_seen":2,"resource_available":false,"data":"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"}},"time_used":403,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":294,"receive":109,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"kit-free.fontawesome.com/releases/latest/css/free-v4-shims.min.css","fqdn":"kit-free.fontawesome.com","domain":"fontawesome.com","tld":"com"},"ip":{"addr":"104.21.51.18","port":443,"asn":13335,"as":"CLOUDFLARENET","country":"","country_code":"zz"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.571Z","timestamp":1785126256571,"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":"kit-free.fontawesome.com","organization":""},"issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validity":{"start":"Mon, 01 Jun 2026 14:46:23 GMT","end":"Sun, 30 Aug 2026 15:46:20 GMT"},"fingerprint":{"sha1":"ED:41:63:4D:D3:55:75:C7:86:AB:46:78:DE:8D:B1:50:DC:8B:E2:06","sha256":"16:BB:EF:67:BD:36:33:D7:63:EA:C7:FC:4A:B1:D3:EF:DF:FA:C4:86:DE:DD:76:0D:51:50:AE:7E:78:44:C1:E2"}}},"request":{"raw":"GET /releases/latest/css/free-v4-shims.min.css HTTP/1.1\r\nHost: kit-free.fontawesome.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://besttrader.live/\r\nSec-Fetch-Dest: style\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=4\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/3 200 \r\nx-amz-id-2: la60InnAw41d1yT+dtrQwY+GoCi0cFfAHjE+u8iHo4gq3W5ECtJbCP5Rjn/1Gq8gYIQIHy+cY30=\r\nx-amz-request-id: KR7TFD62WJXYTG1V\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\nlast-modified: Wed, 04 Aug 2021 21:22:51 GMT\r\nnel: {\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}\r\ncache-control: max-age=1800\r\npriority: u=4,i=?0\r\ncontent-type: text/css\r\nreport-to: {\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=uYpeZe7jow%2BMdm04Sw1GaH9yt3owRO68lWKB9YG7GBIE0QqmvU4Hu8jazq1bcOGNaKpwaar1iGfjM3BPbowAgeIGR0LDwg%2FFKQwxATeDStf3MdPsVbh2s24nJAaWi1dHdOCJJu9%2F83hUPuE%3D\"}]}\r\nserver: cloudflare\r\nage: 351\r\ncf-cache-status: HIT\r\ncontent-encoding: zstd\r\netag: W/\"76f34b71fc9fb641507ff6a822cc07f5\"\r\ncf-ray: a218df9fbf202efa-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":"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":26682,"size_decoded":5206,"mime_type":"text/css","magic":"ASCII text, with very long lines (26500)","md5":"76f34b71fc9fb641507ff6a822cc07f5","sha1":"73ed2f8f21cd40fb496e61306acbb5849d4dbff4","sha256":"6dea47458a4cd7cd7312cc780a53c62e0c8b3ccc8d0b13c1ac0ea6e3dfcecea8","sha512":"6c4002ce78247b50bfa835a098980af340e4e9f05f7097c1e83301289051ce1282e647abab87db28a32fbfe0263c7318d2444b7d57875873908d6d5ed2af882f","ssdeep":"192:kP6hT1bIl4w0QUmQ10PwKLaAu5CwWavpHo4O6wgLPhJVR8XD7mycP:Phal4w0QK+PwK05eavpmgP1eXD7mycP","tlshash":"bec20665930c60d3a3eef847ba0172a8277577999a864c54f30b7c9c8dc3a5772e8f18","first_seen":"2023-04-05T03:17:09Z","last_seen":"2026-07-27T07:01:09.211792Z","times_seen":22534,"resource_available":false,"data":"LyohCiAqIEZvbnQgQXdlc29tZSBGcmVlIDUuMTUuNCBieSBAZm9udGF3ZXNvbWUgLSBodHRwczovL2ZvbnRhd2Vzb21lLmNvbQogKiBMaWNlbnNlIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb20vbGljZW5zZS9mcmVlIChJY29uczogQ0MgQlkgNC4wLCBGb250czogU0lMIE9GTCAxLjEsIENvZGU6IE1JVCBMaWNlbnNlKQogKi8uZmEuZmEtZ2xhc3M6YmVmb3Jle2NvbnRlbnQ6IlxmMDAwIn0uZmEuZmEtbWVldHVwe2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBCcmFuZHMiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtc3Rhci1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLXN0YXItbzpiZWZvcmV7Y29udGVudDoiXGYwMDUifS5mYS5mYS1jbG9zZTpiZWZvcmUsLmZhLmZhLXJlbW92ZTpiZWZvcmV7Y29udGVudDoiXGYwMGQifS5mYS5mYS1nZWFyOmJlZm9yZXtjb250ZW50OiJcZjAxMyJ9LmZhLmZhLXRyYXNoLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtdHJhc2gtbzpiZWZvcmV7Y29udGVudDoiXGYyZWQifS5mYS5mYS1maWxlLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtZmlsZS1vOmJlZm9yZXtjb250ZW50OiJcZjE1YiJ9LmZhLmZhLWNsb2NrLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtY2xvY2stbzpiZWZvcmV7Y29udGVudDoiXGYwMTcifS5mYS5mYS1hcnJvdy1jaXJjbGUtby1kb3due2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWFycm93LWNpcmNsZS1vLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxmMzU4In0uZmEuZmEtYXJyb3ctY2lyY2xlLW8tdXB7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtYXJyb3ctY2lyY2xlLW8tdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMzViIn0uZmEuZmEtcGxheS1jaXJjbGUtb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1wbGF5LWNpcmNsZS1vOmJlZm9yZXtjb250ZW50OiJcZjE0NCJ9LmZhLmZhLXJlcGVhdDpiZWZvcmUsLmZhLmZhLXJvdGF0ZS1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYwMWUifS5mYS5mYS1yZWZyZXNoOmJlZm9yZXtjb250ZW50OiJcZjAyMSJ9LmZhLmZhLWxpc3QtYWx0e2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWRlZGVudDpiZWZvcmV7Y29udGVudDoiXGYwM2IifS5mYS5mYS12aWRlby1jYW1lcmE6YmVmb3Jle2NvbnRlbnQ6IlxmMDNkIn0uZmEuZmEtcGljdHVyZS1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLXBpY3R1cmUtbzpiZWZvcmV7Y29udGVudDoiXGYwM2UifS5mYS5mYS1waG90b3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1waG90bzpiZWZvcmV7Y29udGVudDoiXGYwM2UifS5mYS5mYS1pbWFnZXtmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1pbWFnZTpiZWZvcmV7Y29udGVudDoiXGYwM2UifS5mYS5mYS1wZW5jaWw6YmVmb3Jle2NvbnRlbnQ6IlxmMzAzIn0uZmEuZmEtbWFwLW1hcmtlcjpiZWZvcmV7Y29udGVudDoiXGYzYzUifS5mYS5mYS1wZW5jaWwtc3F1YXJlLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtcGVuY2lsLXNxdWFyZS1vOmJlZm9yZXtjb250ZW50OiJcZjA0NCJ9LmZhLmZhLXNoYXJlLXNxdWFyZS1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLXNoYXJlLXNxdWFyZS1vOmJlZm9yZXtjb250ZW50OiJcZjE0ZCJ9LmZhLmZhLWNoZWNrLXNxdWFyZS1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWNoZWNrLXNxdWFyZS1vOmJlZm9yZXtjb250ZW50OiJcZjE0YSJ9LmZhLmZhLWFycm93czpiZWZvcmV7Y29udGVudDoiXGYwYjIifS5mYS5mYS10aW1lcy1jaXJjbGUtb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS10aW1lcy1jaXJjbGUtbzpiZWZvcmV7Y29udGVudDoiXGYwNTcifS5mYS5mYS1jaGVjay1jaXJjbGUtb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1jaGVjay1jaXJjbGUtbzpiZWZvcmV7Y29udGVudDoiXGYwNTgifS5mYS5mYS1tYWlsLWZvcndhcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMDY0In0uZmEuZmEtZXhwYW5kOmJlZm9yZXtjb250ZW50OiJcZjQyNCJ9LmZhLmZhLWNvbXByZXNzOmJlZm9yZXtjb250ZW50OiJcZjQyMiJ9LmZhLmZhLWV5ZSwuZmEuZmEtZXllLXNsYXNoe2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLXdhcm5pbmc6YmVmb3Jle2NvbnRlbnQ6IlxmMDcxIn0uZmEuZmEtY2FsZW5kYXI6YmVmb3Jle2NvbnRlbnQ6IlxmMDczIn0uZmEuZmEtYXJyb3dzLXY6YmVmb3Jle2NvbnRlbnQ6IlxmMzM4In0uZmEuZmEtYXJyb3dzLWg6YmVmb3Jle2NvbnRlbnQ6IlxmMzM3In0uZmEuZmEtYmFyLWNoYXJ0e2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWJhci1jaGFydDpiZWZvcmV7Y29udGVudDoiXGYwODAifS5mYS5mYS1iYXItY2hhcnQtb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1iYXItY2hhcnQtbzpiZWZvcmV7Y29udGVudDoiXGYwODAifS5mYS5mYS1mYWNlYm9vay1zcXVhcmUsLmZhLmZhLXR3aXR0ZXItc3F1YXJle2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBCcmFuZHMiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtZ2VhcnM6YmVmb3Jle2NvbnRlbnQ6IlxmMDg1In0uZmEuZmEtdGh1bWJzLW8tdXB7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtdGh1bWJzLW8tdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTY0In0uZmEuZmEtdGh1bWJzLW8tZG93bntmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS10aHVtYnMtby1kb3duOmJlZm9yZXtjb250ZW50OiJcZjE2NSJ9LmZhLmZhLWhlYXJ0LW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtaGVhcnQtbzpiZWZvcmV7Y29udGVudDoiXGYwMDQifS5mYS5mYS1zaWduLW91dDpiZWZvcmV7Y29udGVudDoiXGYyZjUifS5mYS5mYS1saW5rZWRpbi1zcXVhcmV7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEJyYW5kcyI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1saW5rZWRpbi1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMDhjIn0uZmEuZmEtdGh1bWItdGFjazpiZWZvcmV7Y29udGVudDoiXGYwOGQifS5mYS5mYS1leHRlcm5hbC1saW5rOmJlZm9yZXtjb250ZW50OiJcZjM1ZCJ9LmZhLmZhLXNpZ24taW46YmVmb3Jle2NvbnRlbnQ6IlxmMmY2In0uZmEuZmEtZ2l0aHViLXNxdWFyZXtmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgQnJhbmRzIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWxlbW9uLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtbGVtb24tbzpiZWZvcmV7Y29udGVudDoiXGYwOTQifS5mYS5mYS1zcXVhcmUtb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1zcXVhcmUtbzpiZWZvcmV7Y29udGVudDoiXGYwYzgifS5mYS5mYS1ib29rbWFyay1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWJvb2ttYXJrLW86YmVmb3Jle2NvbnRlbnQ6IlxmMDJlIn0uZmEuZmEtZmFjZWJvb2ssLmZhLmZhLXR3aXR0ZXJ7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEJyYW5kcyI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1mYWNlYm9vazpiZWZvcmV7Y29udGVudDoiXGYzOWUifS5mYS5mYS1mYWNlYm9vay1me2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBCcmFuZHMiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtZmFjZWJvb2stZjpiZWZvcmV7Y29udGVudDoiXGYzOWUifS5mYS5mYS1naXRodWJ7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEJyYW5kcyI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1jcmVkaXQtY2FyZHtmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1mZWVkOmJlZm9yZXtjb250ZW50OiJcZjA5ZSJ9LmZhLmZhLWhkZC1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWhkZC1vOmJlZm9yZXtjb250ZW50OiJcZjBhMCJ9LmZhLmZhLWhhbmQtby1yaWdodHtmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1oYW5kLW8tcmlnaHQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGE0In0uZmEuZmEtaGFuZC1vLWxlZnR7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtaGFuZC1vLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMGE1In0uZmEuZmEtaGFuZC1vLXVwe2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWhhbmQtby11cDpiZWZvcmV7Y29udGVudDoiXGYwYTYifS5mYS5mYS1oYW5kLW8tZG93bntmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1oYW5kLW8tZG93bjpiZWZvcmV7Y29udGVudDoiXGYwYTcifS5mYS5mYS1hcnJvd3MtYWx0OmJlZm9yZXtjb250ZW50OiJcZjMxZSJ9LmZhLmZhLWdyb3VwOmJlZm9yZXtjb250ZW50OiJcZjBjMCJ9LmZhLmZhLWNoYWluOmJlZm9yZXtjb250ZW50OiJcZjBjMSJ9LmZhLmZhLXNjaXNzb3JzOmJlZm9yZXtjb250ZW50OiJcZjBjNCJ9LmZhLmZhLWZpbGVzLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtZmlsZXMtbzpiZWZvcmV7Y29udGVudDoiXGYwYzUifS5mYS5mYS1mbG9wcHktb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1mbG9wcHktbzpiZWZvcmV7Y29udGVudDoiXGYwYzcifS5mYS5mYS1uYXZpY29uOmJlZm9yZSwuZmEuZmEtcmVvcmRlcjpiZWZvcmV7Y29udGVudDoiXGYwYzkifS5mYS5mYS1nb29nbGUtcGx1cywuZmEuZmEtZ29vZ2xlLXBsdXMtc3F1YXJlLC5mYS5mYS1waW50ZXJlc3QsLmZhLmZhLXBpbnRlcmVzdC1zcXVhcmV7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEJyYW5kcyI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1nb29nbGUtcGx1czpiZWZvcmV7Y29udGVudDoiXGYwZDUifS5mYS5mYS1tb25leXtmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1tb25leTpiZWZvcmV7Y29udGVudDoiXGYzZDEifS5mYS5mYS11bnNvcnRlZDpiZWZvcmV7Y29udGVudDoiXGYwZGMifS5mYS5mYS1zb3J0LWRlc2M6YmVmb3Jle2NvbnRlbnQ6IlxmMGRkIn0uZmEuZmEtc29ydC1hc2M6YmVmb3Jle2NvbnRlbnQ6IlxmMGRlIn0uZmEuZmEtbGlua2VkaW57Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEJyYW5kcyI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1saW5rZWRpbjpiZWZvcmV7Y29udGVudDoiXGYwZTEifS5mYS5mYS1yb3RhdGUtbGVmdDpiZWZvcmV7Y29udGVudDoiXGYwZTIifS5mYS5mYS1sZWdhbDpiZWZvcmV7Y29udGVudDoiXGYwZTMifS5mYS5mYS1kYXNoYm9hcmQ6YmVmb3JlLC5mYS5mYS10YWNob21ldGVyOmJlZm9yZXtjb250ZW50OiJcZjNmZCJ9LmZhLmZhLWNvbW1lbnQtb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1jb21tZW50LW86YmVmb3Jle2NvbnRlbnQ6IlxmMDc1In0uZmEuZmEtY29tbWVudHMtb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1jb21tZW50cy1vOmJlZm9yZXtjb250ZW50OiJcZjA4NiJ9LmZhLmZhLWZsYXNoOmJlZm9yZXtjb250ZW50OiJcZjBlNyJ9LmZhLmZhLWNsaXBib2FyZCwuZmEuZmEtcGFzdGV7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtcGFzdGU6YmVmb3Jle2NvbnRlbnQ6IlxmMzI4In0uZmEuZmEtbGlnaHRidWxiLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtbGlnaHRidWxiLW86YmVmb3Jle2NvbnRlbnQ6IlxmMGViIn0uZmEuZmEtZXhjaGFuZ2U6YmVmb3Jle2NvbnRlbnQ6IlxmMzYyIn0uZmEuZmEtY2xvdWQtZG93bmxvYWQ6YmVmb3Jle2NvbnRlbnQ6IlxmMzgxIn0uZmEuZmEtY2xvdWQtdXBsb2FkOmJlZm9yZXtjb250ZW50OiJcZjM4MiJ9LmZhLmZhLWJlbGwtb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1iZWxsLW86YmVmb3Jle2NvbnRlbnQ6IlxmMGYzIn0uZmEuZmEtY3V0bGVyeTpiZWZvcmV7Y29udGVudDoiXGYyZTcifS5mYS5mYS1maWxlLXRleHQtb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1maWxlLXRleHQtbzpiZWZvcmV7Y29udGVudDoiXGYxNWMifS5mYS5mYS1idWlsZGluZy1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWJ1aWxkaW5nLW86YmVmb3Jle2NvbnRlbnQ6IlxmMWFkIn0uZmEuZmEtaG9zcGl0YWwtb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1ob3NwaXRhbC1vOmJlZm9yZXtjb250ZW50OiJcZjBmOCJ9LmZhLmZhLXRhYmxldDpiZWZvcmV7Y29udGVudDoiXGYzZmEifS5mYS5mYS1tb2JpbGUtcGhvbmU6YmVmb3JlLC5mYS5mYS1tb2JpbGU6YmVmb3Jle2NvbnRlbnQ6IlxmM2NkIn0uZmEuZmEtY2lyY2xlLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtY2lyY2xlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMTExIn0uZmEuZmEtbWFpbC1yZXBseTpiZWZvcmV7Y29udGVudDoiXGYzZTUifS5mYS5mYS1naXRodWItYWx0e2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBCcmFuZHMiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtZm9sZGVyLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtZm9sZGVyLW86YmVmb3Jle2NvbnRlbnQ6IlxmMDdiIn0uZmEuZmEtZm9sZGVyLW9wZW4tb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1mb2xkZXItb3Blbi1vOmJlZm9yZXtjb250ZW50OiJcZjA3YyJ9LmZhLmZhLXNtaWxlLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtc21pbGUtbzpiZWZvcmV7Y29udGVudDoiXGYxMTgifS5mYS5mYS1mcm93bi1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWZyb3duLW86YmVmb3Jle2NvbnRlbnQ6IlxmMTE5In0uZmEuZmEtbWVoLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtbWVoLW86YmVmb3Jle2NvbnRlbnQ6IlxmMTFhIn0uZmEuZmEta2V5Ym9hcmQtb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1rZXlib2FyZC1vOmJlZm9yZXtjb250ZW50OiJcZjExYyJ9LmZhLmZhLWZsYWctb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1mbGFnLW86YmVmb3Jle2NvbnRlbnQ6IlxmMDI0In0uZmEuZmEtbWFpbC1yZXBseS1hbGw6YmVmb3Jle2NvbnRlbnQ6IlxmMTIyIn0uZmEuZmEtc3Rhci1oYWxmLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtc3Rhci1oYWxmLW86YmVmb3Jle2NvbnRlbnQ6IlxmMDg5In0uZmEuZmEtc3Rhci1oYWxmLWVtcHR5e2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLXN0YXItaGFsZi1lbXB0eTpiZWZvcmV7Y29udGVudDoiXGYwODkifS5mYS5mYS1zdGFyLWhhbGYtZnVsbHtmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1zdGFyLWhhbGYtZnVsbDpiZWZvcmV7Y29udGVudDoiXGYwODkifS5mYS5mYS1jb2RlLWZvcms6YmVmb3Jle2NvbnRlbnQ6IlxmMTI2In0uZmEuZmEtY2hhaW4tYnJva2VuOmJlZm9yZXtjb250ZW50OiJcZjEyNyJ9LmZhLmZhLXNoaWVsZDpiZWZvcmV7Y29udGVudDoiXGYzZWQifS5mYS5mYS1jYWxlbmRhci1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWNhbGVuZGFyLW86YmVmb3Jle2NvbnRlbnQ6IlxmMTMzIn0uZmEuZmEtY3NzMywuZmEuZmEtaHRtbDUsLmZhLmZhLW1heGNkbntmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgQnJhbmRzIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLXRpY2tldDpiZWZvcmV7Y29udGVudDoiXGYzZmYifS5mYS5mYS1taW51cy1zcXVhcmUtb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1taW51cy1zcXVhcmUtbzpiZWZvcmV7Y29udGVudDoiXGYxNDYifS5mYS5mYS1sZXZlbC11cDpiZWZvcmV7Y29udGVudDoiXGYzYmYifS5mYS5mYS1sZXZlbC1kb3duOmJlZm9yZXtjb250ZW50OiJcZjNiZSJ9LmZhLmZhLXBlbmNpbC1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMTRiIn0uZmEuZmEtZXh0ZXJuYWwtbGluay1zcXVhcmU6YmVmb3Jle2NvbnRlbnQ6IlxmMzYwIn0uZmEuZmEtY29tcGFzc3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1jYXJldC1zcXVhcmUtby1kb3due2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWNhcmV0LXNxdWFyZS1vLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxmMTUwIn0uZmEuZmEtdG9nZ2xlLWRvd257Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtdG9nZ2xlLWRvd246YmVmb3Jle2NvbnRlbnQ6IlxmMTUwIn0uZmEuZmEtY2FyZXQtc3F1YXJlLW8tdXB7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtY2FyZXQtc3F1YXJlLW8tdXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTUxIn0uZmEuZmEtdG9nZ2xlLXVwe2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLXRvZ2dsZS11cDpiZWZvcmV7Y29udGVudDoiXGYxNTEifS5mYS5mYS1jYXJldC1zcXVhcmUtby1yaWdodHtmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1jYXJldC1zcXVhcmUtby1yaWdodDpiZWZvcmV7Y29udGVudDoiXGYxNTIifS5mYS5mYS10b2dnbGUtcmlnaHR7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtdG9nZ2xlLXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjE1MiJ9LmZhLmZhLWV1cjpiZWZvcmUsLmZhLmZhLWV1cm86YmVmb3Jle2NvbnRlbnQ6IlxmMTUzIn0uZmEuZmEtZ2JwOmJlZm9yZXtjb250ZW50OiJcZjE1NCJ9LmZhLmZhLWRvbGxhcjpiZWZvcmUsLmZhLmZhLXVzZDpiZWZvcmV7Y29udGVudDoiXGYxNTUifS5mYS5mYS1pbnI6YmVmb3JlLC5mYS5mYS1ydXBlZTpiZWZvcmV7Y29udGVudDoiXGYxNTYifS5mYS5mYS1jbnk6YmVmb3JlLC5mYS5mYS1qcHk6YmVmb3JlLC5mYS5mYS1ybWI6YmVmb3JlLC5mYS5mYS15ZW46YmVmb3Jle2NvbnRlbnQ6IlxmMTU3In0uZmEuZmEtcm91YmxlOmJlZm9yZSwuZmEuZmEtcnViOmJlZm9yZSwuZmEuZmEtcnVibGU6YmVmb3Jle2NvbnRlbnQ6IlxmMTU4In0uZmEuZmEta3J3OmJlZm9yZSwuZmEuZmEtd29uOmJlZm9yZXtjb250ZW50OiJcZjE1OSJ9LmZhLmZhLWJpdGNvaW4sLmZhLmZhLWJ0Y3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgQnJhbmRzIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWJpdGNvaW46YmVmb3Jle2NvbnRlbnQ6IlxmMTVhIn0uZmEuZmEtZmlsZS10ZXh0OmJlZm9yZXtjb250ZW50OiJcZjE1YyJ9LmZhLmZhLXNvcnQtYWxwaGEtYXNjOmJlZm9yZXtjb250ZW50OiJcZjE1ZCJ9LmZhLmZhLXNvcnQtYWxwaGEtZGVzYzpiZWZvcmV7Y29udGVudDoiXGY4ODEifS5mYS5mYS1zb3J0LWFtb3VudC1hc2M6YmVmb3Jle2NvbnRlbnQ6IlxmMTYwIn0uZmEuZmEtc29ydC1hbW91bnQtZGVzYzpiZWZvcmV7Y29udGVudDoiXGY4ODQifS5mYS5mYS1zb3J0LW51bWVyaWMtYXNjOmJlZm9yZXtjb250ZW50OiJcZjE2MiJ9LmZhLmZhLXNvcnQtbnVtZXJpYy1kZXNjOmJlZm9yZXtjb250ZW50OiJcZjg4NiJ9LmZhLmZhLXhpbmcsLmZhLmZhLXhpbmctc3F1YXJlLC5mYS5mYS15b3V0dWJlLC5mYS5mYS15b3V0dWJlLXBsYXksLmZhLmZhLXlvdXR1YmUtc3F1YXJle2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBCcmFuZHMiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEteW91dHViZS1wbGF5OmJlZm9yZXtjb250ZW50OiJcZjE2NyJ9LmZhLmZhLWFkbiwuZmEuZmEtYml0YnVja2V0LC5mYS5mYS1iaXRidWNrZXQtc3F1YXJlLC5mYS5mYS1kcm9wYm94LC5mYS5mYS1mbGlja3IsLmZhLmZhLWluc3RhZ3JhbSwuZmEuZmEtc3RhY2stb3ZlcmZsb3d7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEJyYW5kcyI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1iaXRidWNrZXQtc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjE3MSJ9LmZhLmZhLXR1bWJsciwuZmEuZmEtdHVtYmxyLXNxdWFyZXtmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgQnJhbmRzIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWxvbmctYXJyb3ctZG93bjpiZWZvcmV7Y29udGVudDoiXGYzMDkifS5mYS5mYS1sb25nLWFycm93LXVwOmJlZm9yZXtjb250ZW50OiJcZjMwYyJ9LmZhLmZhLWxvbmctYXJyb3ctbGVmdDpiZWZvcmV7Y29udGVudDoiXGYzMGEifS5mYS5mYS1sb25nLWFycm93LXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjMwYiJ9LmZhLmZhLWFuZHJvaWQsLmZhLmZhLWFwcGxlLC5mYS5mYS1kcmliYmJsZSwuZmEuZmEtZm91cnNxdWFyZSwuZmEuZmEtZ2l0dGlwLC5mYS5mYS1ncmF0aXBheSwuZmEuZmEtbGludXgsLmZhLmZhLXNreXBlLC5mYS5mYS10cmVsbG8sLmZhLmZhLXdpbmRvd3N7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEJyYW5kcyI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1naXR0aXA6YmVmb3Jle2NvbnRlbnQ6IlxmMTg0In0uZmEuZmEtc3VuLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtc3VuLW86YmVmb3Jle2NvbnRlbnQ6IlxmMTg1In0uZmEuZmEtbW9vbi1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLW1vb24tbzpiZWZvcmV7Y29udGVudDoiXGYxODYifS5mYS5mYS1wYWdlbGluZXMsLmZhLmZhLXJlbnJlbiwuZmEuZmEtc3RhY2stZXhjaGFuZ2UsLmZhLmZhLXZrLC5mYS5mYS13ZWlib3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgQnJhbmRzIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWFycm93LWNpcmNsZS1vLXJpZ2h0e2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWFycm93LWNpcmNsZS1vLXJpZ2h0OmJlZm9yZXtjb250ZW50OiJcZjM1YSJ9LmZhLmZhLWFycm93LWNpcmNsZS1vLWxlZnR7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtYXJyb3ctY2lyY2xlLW8tbGVmdDpiZWZvcmV7Y29udGVudDoiXGYzNTkifS5mYS5mYS1jYXJldC1zcXVhcmUtby1sZWZ0e2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWNhcmV0LXNxdWFyZS1vLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTkxIn0uZmEuZmEtdG9nZ2xlLWxlZnR7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtdG9nZ2xlLWxlZnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTkxIn0uZmEuZmEtZG90LWNpcmNsZS1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWRvdC1jaXJjbGUtbzpiZWZvcmV7Y29udGVudDoiXGYxOTIifS5mYS5mYS12aW1lby1zcXVhcmV7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEJyYW5kcyI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS10cnk6YmVmb3JlLC5mYS5mYS10dXJraXNoLWxpcmE6YmVmb3Jle2NvbnRlbnQ6IlxmMTk1In0uZmEuZmEtcGx1cy1zcXVhcmUtb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1wbHVzLXNxdWFyZS1vOmJlZm9yZXtjb250ZW50OiJcZjBmZSJ9LmZhLmZhLW9wZW5pZCwuZmEuZmEtc2xhY2ssLmZhLmZhLXdvcmRwcmVzc3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgQnJhbmRzIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWJhbms6YmVmb3JlLC5mYS5mYS1pbnN0aXR1dGlvbjpiZWZvcmV7Y29udGVudDoiXGYxOWMifS5mYS5mYS1tb3J0YXItYm9hcmQ6YmVmb3Jle2NvbnRlbnQ6IlxmMTlkIn0uZmEuZmEtZGVsaWNpb3VzLC5mYS5mYS1kaWdnLC5mYS5mYS1kcnVwYWwsLmZhLmZhLWdvb2dsZSwuZmEuZmEtam9vbWxhLC5mYS5mYS1waWVkLXBpcGVyLWFsdCwuZmEuZmEtcGllZC1waXBlci1wcCwuZmEuZmEtcmVkZGl0LC5mYS5mYS1yZWRkaXQtc3F1YXJlLC5mYS5mYS1zdHVtYmxldXBvbiwuZmEuZmEtc3R1bWJsZXVwb24tY2lyY2xlLC5mYS5mYS15YWhvb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgQnJhbmRzIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLXNwb29uOmJlZm9yZXtjb250ZW50OiJcZjJlNSJ9LmZhLmZhLWJlaGFuY2UsLmZhLmZhLWJlaGFuY2Utc3F1YXJlLC5mYS5mYS1zdGVhbSwuZmEuZmEtc3RlYW0tc3F1YXJle2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBCcmFuZHMiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtYXV0b21vYmlsZTpiZWZvcmV7Y29udGVudDoiXGYxYjkifS5mYS5mYS1lbnZlbG9wZS1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWVudmVsb3BlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMGUwIn0uZmEuZmEtZGV2aWFudGFydCwuZmEuZmEtc291bmRjbG91ZCwuZmEuZmEtc3BvdGlmeXtmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgQnJhbmRzIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWZpbGUtcGRmLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtZmlsZS1wZGYtbzpiZWZvcmV7Y29udGVudDoiXGYxYzEifS5mYS5mYS1maWxlLXdvcmQtb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1maWxlLXdvcmQtbzpiZWZvcmV7Y29udGVudDoiXGYxYzIifS5mYS5mYS1maWxlLWV4Y2VsLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtZmlsZS1leGNlbC1vOmJlZm9yZXtjb250ZW50OiJcZjFjMyJ9LmZhLmZhLWZpbGUtcG93ZXJwb2ludC1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWZpbGUtcG93ZXJwb2ludC1vOmJlZm9yZXtjb250ZW50OiJcZjFjNCJ9LmZhLmZhLWZpbGUtaW1hZ2Utb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1maWxlLWltYWdlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMWM1In0uZmEuZmEtZmlsZS1waG90by1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWZpbGUtcGhvdG8tbzpiZWZvcmV7Y29udGVudDoiXGYxYzUifS5mYS5mYS1maWxlLXBpY3R1cmUtb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1maWxlLXBpY3R1cmUtbzpiZWZvcmV7Y29udGVudDoiXGYxYzUifS5mYS5mYS1maWxlLWFyY2hpdmUtb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1maWxlLWFyY2hpdmUtbzpiZWZvcmV7Y29udGVudDoiXGYxYzYifS5mYS5mYS1maWxlLXppcC1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWZpbGUtemlwLW86YmVmb3Jle2NvbnRlbnQ6IlxmMWM2In0uZmEuZmEtZmlsZS1hdWRpby1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWZpbGUtYXVkaW8tbzpiZWZvcmV7Y29udGVudDoiXGYxYzcifS5mYS5mYS1maWxlLXNvdW5kLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtZmlsZS1zb3VuZC1vOmJlZm9yZXtjb250ZW50OiJcZjFjNyJ9LmZhLmZhLWZpbGUtdmlkZW8tb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1maWxlLXZpZGVvLW86YmVmb3Jle2NvbnRlbnQ6IlxmMWM4In0uZmEuZmEtZmlsZS1tb3ZpZS1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWZpbGUtbW92aWUtbzpiZWZvcmV7Y29udGVudDoiXGYxYzgifS5mYS5mYS1maWxlLWNvZGUtb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1maWxlLWNvZGUtbzpiZWZvcmV7Y29udGVudDoiXGYxYzkifS5mYS5mYS1jb2RlcGVuLC5mYS5mYS1qc2ZpZGRsZSwuZmEuZmEtdmluZXtmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgQnJhbmRzIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWxpZmUtYm91eSwuZmEuZmEtbGlmZS1yaW5ne2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWxpZmUtYm91eTpiZWZvcmV7Y29udGVudDoiXGYxY2QifS5mYS5mYS1saWZlLWJ1b3l7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtbGlmZS1idW95OmJlZm9yZXtjb250ZW50OiJcZjFjZCJ9LmZhLmZhLWxpZmUtc2F2ZXJ7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtbGlmZS1zYXZlcjpiZWZvcmV7Y29udGVudDoiXGYxY2QifS5mYS5mYS1zdXBwb3J0e2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLXN1cHBvcnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMWNkIn0uZmEuZmEtY2lyY2xlLW8tbm90Y2g6YmVmb3Jle2NvbnRlbnQ6IlxmMWNlIn0uZmEuZmEtcmEsLmZhLmZhLXJlYmVse2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBCcmFuZHMiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtcmE6YmVmb3Jle2NvbnRlbnQ6IlxmMWQwIn0uZmEuZmEtcmVzaXN0YW5jZXtmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgQnJhbmRzIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLXJlc2lzdGFuY2U6YmVmb3Jle2NvbnRlbnQ6IlxmMWQwIn0uZmEuZmEtZW1waXJlLC5mYS5mYS1nZXtmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgQnJhbmRzIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWdlOmJlZm9yZXtjb250ZW50OiJcZjFkMSJ9LmZhLmZhLWdpdCwuZmEuZmEtZ2l0LXNxdWFyZSwuZmEuZmEtaGFja2VyLW5ld3MsLmZhLmZhLXktY29tYmluYXRvci1zcXVhcmV7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEJyYW5kcyI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS15LWNvbWJpbmF0b3Itc3F1YXJlOmJlZm9yZXtjb250ZW50OiJcZjFkNCJ9LmZhLmZhLXljLXNxdWFyZXtmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgQnJhbmRzIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLXljLXNxdWFyZTpiZWZvcmV7Y29udGVudDoiXGYxZDQifS5mYS5mYS1xcSwuZmEuZmEtdGVuY2VudC13ZWlibywuZmEuZmEtd2VjaGF0LC5mYS5mYS13ZWl4aW57Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEJyYW5kcyI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS13ZWNoYXQ6YmVmb3Jle2NvbnRlbnQ6IlxmMWQ3In0uZmEuZmEtc2VuZDpiZWZvcmV7Y29udGVudDoiXGYxZDgifS5mYS5mYS1wYXBlci1wbGFuZS1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLXBhcGVyLXBsYW5lLW86YmVmb3Jle2NvbnRlbnQ6IlxmMWQ4In0uZmEuZmEtc2VuZC1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLXNlbmQtbzpiZWZvcmV7Y29udGVudDoiXGYxZDgifS5mYS5mYS1jaXJjbGUtdGhpbntmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1jaXJjbGUtdGhpbjpiZWZvcmV7Y29udGVudDoiXGYxMTEifS5mYS5mYS1oZWFkZXI6YmVmb3Jle2NvbnRlbnQ6IlxmMWRjIn0uZmEuZmEtc2xpZGVyczpiZWZvcmV7Y29udGVudDoiXGYxZGUifS5mYS5mYS1mdXRib2wtb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1mdXRib2wtbzpiZWZvcmV7Y29udGVudDoiXGYxZTMifS5mYS5mYS1zb2NjZXItYmFsbC1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLXNvY2Nlci1iYWxsLW86YmVmb3Jle2NvbnRlbnQ6IlxmMWUzIn0uZmEuZmEtc2xpZGVzaGFyZSwuZmEuZmEtdHdpdGNoLC5mYS5mYS15ZWxwe2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBCcmFuZHMiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtbmV3c3BhcGVyLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtbmV3c3BhcGVyLW86YmVmb3Jle2NvbnRlbnQ6IlxmMWVhIn0uZmEuZmEtY2MtYW1leCwuZmEuZmEtY2MtZGlzY292ZXIsLmZhLmZhLWNjLW1hc3RlcmNhcmQsLmZhLmZhLWNjLXBheXBhbCwuZmEuZmEtY2Mtc3RyaXBlLC5mYS5mYS1jYy12aXNhLC5mYS5mYS1nb29nbGUtd2FsbGV0LC5mYS5mYS1wYXlwYWx7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEJyYW5kcyI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1iZWxsLXNsYXNoLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtYmVsbC1zbGFzaC1vOmJlZm9yZXtjb250ZW50OiJcZjFmNiJ9LmZhLmZhLXRyYXNoOmJlZm9yZXtjb250ZW50OiJcZjJlZCJ9LmZhLmZhLWNvcHlyaWdodHtmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1leWVkcm9wcGVyOmJlZm9yZXtjb250ZW50OiJcZjFmYiJ9LmZhLmZhLWFyZWEtY2hhcnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMWZlIn0uZmEuZmEtcGllLWNoYXJ0OmJlZm9yZXtjb250ZW50OiJcZjIwMCJ9LmZhLmZhLWxpbmUtY2hhcnQ6YmVmb3Jle2NvbnRlbnQ6IlxmMjAxIn0uZmEuZmEtYW5nZWxsaXN0LC5mYS5mYS1pb3hob3N0LC5mYS5mYS1sYXN0Zm0sLmZhLmZhLWxhc3RmbS1zcXVhcmV7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEJyYW5kcyI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1jY3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1jYzpiZWZvcmV7Y29udGVudDoiXGYyMGEifS5mYS5mYS1pbHM6YmVmb3JlLC5mYS5mYS1zaGVrZWw6YmVmb3JlLC5mYS5mYS1zaGVxZWw6YmVmb3Jle2NvbnRlbnQ6IlxmMjBiIn0uZmEuZmEtbWVhbnBhdGh7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEJyYW5kcyI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1tZWFucGF0aDpiZWZvcmV7Y29udGVudDoiXGYyYjQifS5mYS5mYS1idXlzZWxsYWRzLC5mYS5mYS1jb25uZWN0ZGV2ZWxvcCwuZmEuZmEtZGFzaGN1YmUsLmZhLmZhLWZvcnVtYmVlLC5mYS5mYS1sZWFucHViLC5mYS5mYS1zZWxsc3ksLmZhLmZhLXNoaXJ0c2luYnVsaywuZmEuZmEtc2ltcGx5YnVpbHQsLmZhLmZhLXNreWF0bGFze2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBCcmFuZHMiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtZGlhbW9uZHtmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1kaWFtb25kOmJlZm9yZXtjb250ZW50OiJcZjNhNSJ9LmZhLmZhLWludGVyc2V4OmJlZm9yZXtjb250ZW50OiJcZjIyNCJ9LmZhLmZhLWZhY2Vib29rLW9mZmljaWFse2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBCcmFuZHMiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtZmFjZWJvb2stb2ZmaWNpYWw6YmVmb3Jle2NvbnRlbnQ6IlxmMDlhIn0uZmEuZmEtcGludGVyZXN0LXAsLmZhLmZhLXdoYXRzYXBwe2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBCcmFuZHMiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtaG90ZWw6YmVmb3Jle2NvbnRlbnQ6IlxmMjM2In0uZmEuZmEtbWVkaXVtLC5mYS5mYS12aWFjb2luLC5mYS5mYS15LWNvbWJpbmF0b3IsLmZhLmZhLXlje2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBCcmFuZHMiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEteWM6YmVmb3Jle2NvbnRlbnQ6IlxmMjNiIn0uZmEuZmEtZXhwZWRpdGVkc3NsLC5mYS5mYS1vcGVuY2FydCwuZmEuZmEtb3B0aW4tbW9uc3Rlcntmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgQnJhbmRzIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWJhdHRlcnktNDpiZWZvcmUsLmZhLmZhLWJhdHRlcnk6YmVmb3Jle2NvbnRlbnQ6IlxmMjQwIn0uZmEuZmEtYmF0dGVyeS0zOmJlZm9yZXtjb250ZW50OiJcZjI0MSJ9LmZhLmZhLWJhdHRlcnktMjpiZWZvcmV7Y29udGVudDoiXGYyNDIifS5mYS5mYS1iYXR0ZXJ5LTE6YmVmb3Jle2NvbnRlbnQ6IlxmMjQzIn0uZmEuZmEtYmF0dGVyeS0wOmJlZm9yZXtjb250ZW50OiJcZjI0NCJ9LmZhLmZhLW9iamVjdC1ncm91cCwuZmEuZmEtb2JqZWN0LXVuZ3JvdXAsLmZhLmZhLXN0aWNreS1ub3RlLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtc3RpY2t5LW5vdGUtbzpiZWZvcmV7Y29udGVudDoiXGYyNDkifS5mYS5mYS1jYy1kaW5lcnMtY2x1YiwuZmEuZmEtY2MtamNie2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBCcmFuZHMiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtY2xvbmUsLmZhLmZhLWhvdXJnbGFzcy1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWhvdXJnbGFzcy1vOmJlZm9yZXtjb250ZW50OiJcZjI1NCJ9LmZhLmZhLWhvdXJnbGFzcy0xOmJlZm9yZXtjb250ZW50OiJcZjI1MSJ9LmZhLmZhLWhvdXJnbGFzcy0yOmJlZm9yZXtjb250ZW50OiJcZjI1MiJ9LmZhLmZhLWhvdXJnbGFzcy0zOmJlZm9yZXtjb250ZW50OiJcZjI1MyJ9LmZhLmZhLWhhbmQtcm9jay1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWhhbmQtcm9jay1vOmJlZm9yZXtjb250ZW50OiJcZjI1NSJ9LmZhLmZhLWhhbmQtZ3JhYi1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWhhbmQtZ3JhYi1vOmJlZm9yZXtjb250ZW50OiJcZjI1NSJ9LmZhLmZhLWhhbmQtcGFwZXItb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1oYW5kLXBhcGVyLW86YmVmb3Jle2NvbnRlbnQ6IlxmMjU2In0uZmEuZmEtaGFuZC1zdG9wLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtaGFuZC1zdG9wLW86YmVmb3Jle2NvbnRlbnQ6IlxmMjU2In0uZmEuZmEtaGFuZC1zY2lzc29ycy1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWhhbmQtc2Npc3NvcnMtbzpiZWZvcmV7Y29udGVudDoiXGYyNTcifS5mYS5mYS1oYW5kLWxpemFyZC1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWhhbmQtbGl6YXJkLW86YmVmb3Jle2NvbnRlbnQ6IlxmMjU4In0uZmEuZmEtaGFuZC1zcG9jay1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWhhbmQtc3BvY2stbzpiZWZvcmV7Y29udGVudDoiXGYyNTkifS5mYS5mYS1oYW5kLXBvaW50ZXItb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1oYW5kLXBvaW50ZXItbzpiZWZvcmV7Y29udGVudDoiXGYyNWEifS5mYS5mYS1oYW5kLXBlYWNlLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtaGFuZC1wZWFjZS1vOmJlZm9yZXtjb250ZW50OiJcZjI1YiJ9LmZhLmZhLXJlZ2lzdGVyZWR7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtY2hyb21lLC5mYS5mYS1jcmVhdGl2ZS1jb21tb25zLC5mYS5mYS1maXJlZm94LC5mYS5mYS1nZXQtcG9ja2V0LC5mYS5mYS1nZywuZmEuZmEtZ2ctY2lyY2xlLC5mYS5mYS1pbnRlcm5ldC1leHBsb3JlciwuZmEuZmEtb2Rub2tsYXNzbmlraSwuZmEuZmEtb2Rub2tsYXNzbmlraS1zcXVhcmUsLmZhLmZhLW9wZXJhLC5mYS5mYS1zYWZhcmksLmZhLmZhLXdpa2lwZWRpYS13e2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBCcmFuZHMiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtdGVsZXZpc2lvbjpiZWZvcmV7Y29udGVudDoiXGYyNmMifS5mYS5mYS01MDBweCwuZmEuZmEtYW1hem9uLC5mYS5mYS1jb250YW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEJyYW5kcyI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1jYWxlbmRhci1wbHVzLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtY2FsZW5kYXItcGx1cy1vOmJlZm9yZXtjb250ZW50OiJcZjI3MSJ9LmZhLmZhLWNhbGVuZGFyLW1pbnVzLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtY2FsZW5kYXItbWludXMtbzpiZWZvcmV7Y29udGVudDoiXGYyNzIifS5mYS5mYS1jYWxlbmRhci10aW1lcy1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWNhbGVuZGFyLXRpbWVzLW86YmVmb3Jle2NvbnRlbnQ6IlxmMjczIn0uZmEuZmEtY2FsZW5kYXItY2hlY2stb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1jYWxlbmRhci1jaGVjay1vOmJlZm9yZXtjb250ZW50OiJcZjI3NCJ9LmZhLmZhLW1hcC1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLW1hcC1vOmJlZm9yZXtjb250ZW50OiJcZjI3OSJ9LmZhLmZhLWNvbW1lbnRpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmNGFkIn0uZmEuZmEtY29tbWVudGluZy1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWNvbW1lbnRpbmctbzpiZWZvcmV7Y29udGVudDoiXGY0YWQifS5mYS5mYS1ob3V6eiwuZmEuZmEtdmltZW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEJyYW5kcyI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS12aW1lbzpiZWZvcmV7Y29udGVudDoiXGYyN2QifS5mYS5mYS1ibGFjay10aWUsLmZhLmZhLWVkZ2UsLmZhLmZhLWZvbnRpY29ucywuZmEuZmEtcmVkZGl0LWFsaWVue2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBCcmFuZHMiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtY3JlZGl0LWNhcmQtYWx0OmJlZm9yZXtjb250ZW50OiJcZjA5ZCJ9LmZhLmZhLWNvZGllcGllLC5mYS5mYS1mb3J0LWF3ZXNvbWUsLmZhLmZhLW1peGNsb3VkLC5mYS5mYS1tb2R4LC5mYS5mYS1wcm9kdWN0LWh1bnQsLmZhLmZhLXNjcmliZCwuZmEuZmEtdXNie2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBCcmFuZHMiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtcGF1c2UtY2lyY2xlLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtcGF1c2UtY2lyY2xlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMjhiIn0uZmEuZmEtc3RvcC1jaXJjbGUtb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1zdG9wLWNpcmNsZS1vOmJlZm9yZXtjb250ZW50OiJcZjI4ZCJ9LmZhLmZhLWJsdWV0b290aCwuZmEuZmEtYmx1ZXRvb3RoLWIsLmZhLmZhLWVudmlyYSwuZmEuZmEtZ2l0bGFiLC5mYS5mYS13aGVlbGNoYWlyLWFsdCwuZmEuZmEtd3BiZWdpbm5lciwuZmEuZmEtd3Bmb3Jtc3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgQnJhbmRzIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLXdoZWVsY2hhaXItYWx0OmJlZm9yZXtjb250ZW50OiJcZjM2OCJ9LmZhLmZhLXF1ZXN0aW9uLWNpcmNsZS1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLXF1ZXN0aW9uLWNpcmNsZS1vOmJlZm9yZXtjb250ZW50OiJcZjA1OSJ9LmZhLmZhLXZvbHVtZS1jb250cm9sLXBob25lOmJlZm9yZXtjb250ZW50OiJcZjJhMCJ9LmZhLmZhLWFzbC1pbnRlcnByZXRpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmMmEzIn0uZmEuZmEtZGVhZm5lc3M6YmVmb3JlLC5mYS5mYS1oYXJkLW9mLWhlYXJpbmc6YmVmb3Jle2NvbnRlbnQ6IlxmMmE0In0uZmEuZmEtZ2xpZGUsLmZhLmZhLWdsaWRlLWd7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEJyYW5kcyI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1zaWduaW5nOmJlZm9yZXtjb250ZW50OiJcZjJhNyJ9LmZhLmZhLWZpcnN0LW9yZGVyLC5mYS5mYS1nb29nbGUtcGx1cy1vZmZpY2lhbCwuZmEuZmEtcGllZC1waXBlciwuZmEuZmEtc25hcGNoYXQsLmZhLmZhLXNuYXBjaGF0LWdob3N0LC5mYS5mYS1zbmFwY2hhdC1zcXVhcmUsLmZhLmZhLXRoZW1laXNsZSwuZmEuZmEtdmlhZGVvLC5mYS5mYS12aWFkZW8tc3F1YXJlLC5mYS5mYS15b2FzdHtmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgQnJhbmRzIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWdvb2dsZS1wbHVzLW9mZmljaWFsOmJlZm9yZXtjb250ZW50OiJcZjJiMyJ9LmZhLmZhLWdvb2dsZS1wbHVzLWNpcmNsZXtmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgQnJhbmRzIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWdvb2dsZS1wbHVzLWNpcmNsZTpiZWZvcmV7Y29udGVudDoiXGYyYjMifS5mYS5mYS1mYSwuZmEuZmEtZm9udC1hd2Vzb21le2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBCcmFuZHMiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtZmE6YmVmb3Jle2NvbnRlbnQ6IlxmMmI0In0uZmEuZmEtaGFuZHNoYWtlLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtaGFuZHNoYWtlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMmI1In0uZmEuZmEtZW52ZWxvcGUtb3Blbi1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLWVudmVsb3BlLW9wZW4tbzpiZWZvcmV7Y29udGVudDoiXGYyYjYifS5mYS5mYS1saW5vZGV7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEJyYW5kcyI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1hZGRyZXNzLWJvb2stb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1hZGRyZXNzLWJvb2stbzpiZWZvcmV7Y29udGVudDoiXGYyYjkifS5mYS5mYS12Y2FyZDpiZWZvcmV7Y29udGVudDoiXGYyYmIifS5mYS5mYS1hZGRyZXNzLWNhcmQtb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1hZGRyZXNzLWNhcmQtbzpiZWZvcmV7Y29udGVudDoiXGYyYmIifS5mYS5mYS12Y2FyZC1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLXZjYXJkLW86YmVmb3Jle2NvbnRlbnQ6IlxmMmJiIn0uZmEuZmEtdXNlci1jaXJjbGUtb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS11c2VyLWNpcmNsZS1vOmJlZm9yZXtjb250ZW50OiJcZjJiZCJ9LmZhLmZhLXVzZXItb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS11c2VyLW86YmVmb3Jle2NvbnRlbnQ6IlxmMDA3In0uZmEuZmEtaWQtYmFkZ2V7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtZHJpdmVycy1saWNlbnNlOmJlZm9yZXtjb250ZW50OiJcZjJjMiJ9LmZhLmZhLWlkLWNhcmQtb3tmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1pZC1jYXJkLW86YmVmb3Jle2NvbnRlbnQ6IlxmMmMyIn0uZmEuZmEtZHJpdmVycy1saWNlbnNlLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtZHJpdmVycy1saWNlbnNlLW86YmVmb3Jle2NvbnRlbnQ6IlxmMmMyIn0uZmEuZmEtZnJlZS1jb2RlLWNhbXAsLmZhLmZhLXF1b3JhLC5mYS5mYS10ZWxlZ3JhbXtmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgQnJhbmRzIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLXRoZXJtb21ldGVyLTQ6YmVmb3JlLC5mYS5mYS10aGVybW9tZXRlcjpiZWZvcmV7Y29udGVudDoiXGYyYzcifS5mYS5mYS10aGVybW9tZXRlci0zOmJlZm9yZXtjb250ZW50OiJcZjJjOCJ9LmZhLmZhLXRoZXJtb21ldGVyLTI6YmVmb3Jle2NvbnRlbnQ6IlxmMmM5In0uZmEuZmEtdGhlcm1vbWV0ZXItMTpiZWZvcmV7Y29udGVudDoiXGYyY2EifS5mYS5mYS10aGVybW9tZXRlci0wOmJlZm9yZXtjb250ZW50OiJcZjJjYiJ9LmZhLmZhLWJhdGh0dWI6YmVmb3JlLC5mYS5mYS1zMTU6YmVmb3Jle2NvbnRlbnQ6IlxmMmNkIn0uZmEuZmEtd2luZG93LW1heGltaXplLC5mYS5mYS13aW5kb3ctcmVzdG9yZXtmb250LWZhbWlseToiRm9udCBBd2Vzb21lIDUgRnJlZSI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS10aW1lcy1yZWN0YW5nbGU6YmVmb3Jle2NvbnRlbnQ6IlxmNDEwIn0uZmEuZmEtd2luZG93LWNsb3NlLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtd2luZG93LWNsb3NlLW86YmVmb3Jle2NvbnRlbnQ6IlxmNDEwIn0uZmEuZmEtdGltZXMtcmVjdGFuZ2xlLW97Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEZyZWUiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtdGltZXMtcmVjdGFuZ2xlLW86YmVmb3Jle2NvbnRlbnQ6IlxmNDEwIn0uZmEuZmEtYmFuZGNhbXAsLmZhLmZhLWVlcmNhc3QsLmZhLmZhLWV0c3ksLmZhLmZhLWdyYXYsLmZhLmZhLWltZGIsLmZhLmZhLXJhdmVscnl7Zm9udC1mYW1pbHk6IkZvbnQgQXdlc29tZSA1IEJyYW5kcyI7Zm9udC13ZWlnaHQ6NDAwfS5mYS5mYS1lZXJjYXN0OmJlZm9yZXtjb250ZW50OiJcZjJkYSJ9LmZhLmZhLXNub3dmbGFrZS1ve2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBGcmVlIjtmb250LXdlaWdodDo0MDB9LmZhLmZhLXNub3dmbGFrZS1vOmJlZm9yZXtjb250ZW50OiJcZjJkYyJ9LmZhLmZhLXN1cGVycG93ZXJzLC5mYS5mYS13cGV4cGxvcmVye2ZvbnQtZmFtaWx5OiJGb250IEF3ZXNvbWUgNSBCcmFuZHMiO2ZvbnQtd2VpZ2h0OjQwMH0uZmEuZmEtY2FiOmJlZm9yZXtjb250ZW50OiJcZjFiYSJ9"}},"time_used":34,"timings":{"blocked":0,"dns":9,"connect":16,"send":0,"wait":9,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/demo/res.css","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://besttrader.live/demo/index.html","date":"2026-07-27T04:24:16.844Z","timestamp":1785126256844,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /demo/res.css HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/demo/index.html\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: text/css\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: W/\"65211e70-49f\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":1183,"size_decoded":597,"mime_type":"text/css","magic":"ASCII text, with CRLF line terminators","md5":"74506a865c6203c16baca179785feb98","sha1":"ad57a5a6761c13675fd740f3ac8e1a7c275d2bce","sha256":"774bc72fe6cb234c0aad8dc7dff49df9554873936dc336ec243bdef44bbe455a","sha512":"6bd8ea1ad1987fa0b25d9723c25ce7c2c3809aadd5f649db2150f8d5688246fc109e63180f861c5a0171d5a4718b926bf8e87b567365fd30f9dd07edfa32e21b","ssdeep":"","tlshash":"6e21c955ea02164930fca779df23636eea3a4023e34600957ee4e1a25f7b656c428fcd","first_seen":"2026-07-27T03:36:45.112116Z","last_seen":"2026-07-27T04:25:12.800457Z","times_seen":2,"resource_available":false,"data":"QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkgew0KICAubWluaS1jaGFydC1idG4tY29udCwNCiAgLm1jLWxvZ28gew0KICAgIHdpZHRoOiAxMDAlOw0KICB9DQoNCiAgLm1jLXRhYmxlLA0KICAuY2hhcnQtcGFkZGluZyB7DQogICAgd2lkdGg6IDEwMCU7DQogIH0NCg0KICAubWMtdGFibGUgew0KICAgIGRpc3BsYXk6IGZsZXg7DQogICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7DQogIH0NCg0KICAubWMtdGFibGUtdGQgew0KICAgIHdpZHRoOiBhdXRvOw0KICAgIGZsZXg6IDE7DQogIH0NCg0KICAuYmxvY2stY2hhcnRzIHsNCiAgICB3aWR0aDogMTAwJTsNCiAgfQ0KICAubWluaS1jaGFydC1idG4tY29udCB7DQogICAgd2lkdGg6IDMwJTsNCiAgfQ0KICAjY2hhcnQtbSB7DQogICAgLyptaW4td2lkdGg6IDMxMnB4OyovDQogICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsNCiAgfQ0KICAuY2hhcnQtcGFkZGluZyB7DQogICAgZmxvYXQ6IGxlZnQ7DQogICAgd2lkdGg6IDcwJTsNCiAgICB3aWR0aDogY2FsYyg3MCUgLSAxMHB4KTsNCiAgICBwYWRkaW5nOiAxMHB4IDEwcHggMCAwOw0KICB9DQogIC5taW5pLWNoYXJ0LWJ0bi1jb250IHsNCiAgICBwYWRkaW5nLXRvcDogMTBweDsNCiAgfQ0KDQogICNyYWRpbyBsYWJlbCB7DQogICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsNCiAgfQ0KICAubWMtbG9nbyBmb3JtIHsNCiAgICAvKndpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTsqLw0KICAgIGRpc3BsYXk6IGJsb2NrOw0KICB9DQogIC5tYy1idG4gc3BhbiB7DQogICAgZm9udC1zaXplOiAxMnB4Ow0KICB9DQogIC5tYy1idG4gew0KICAgIHBhZGRpbmc6IDVweCAxNXB4ICFpbXBvcnRhbnQ7DQogICAgaGVpZ2h0OiA1MnB4Ow0KICB9DQogIC5ibG9jay1jaGFydHMgLm9uZS1jaGFydCB7DQogICAgb3ZlcmZsb3c6IGhpZGRlbjsNCiAgfQ0KICAubWluaS1jaGFydC1sZWdlbmQgew0KICAgIHdpZHRoOiAxMDAlOw0KICAgIGZsb2F0OiBub25lOw0KICB9DQogIC5kZWFsLWZpbmlzaC1wb3B1cCAucmlnaHQtZm9vdCB7DQogICAgZm9udC1zaXplOiAxOHB4Ow0KICAgIHdpZHRoOiAzMCU7DQogICAgcGFkZGluZy1sZWZ0OiAxMHB4Ow0KICB9DQogIC5kZWFsLWZpbmlzaC1wb3B1cCAucmlnaHQtZm9vdCBzcGFuIHsNCiAgICBmb250LXNpemU6IDE4cHg7DQogIH0NCn0NCg=="}},"time_used":101,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":101,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/embed_screener_v1_widget.3c6dcb48241b38ad20cd.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.376Z","timestamp":1785126257376,"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-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_screener_v1_widget.3c6dcb48241b38ad20cd.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/crypto-mkt-screener/?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 04:24:17 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-9324c\"\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:53:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 756e877e2bd7171406d5cd2be575f260\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":602700,"size_decoded":163680,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (6334)","md5":"b07d7762afc64303abb48d31f9b49b37","sha1":"1c890e25377b837bc68ec086492e285e65d16c18","sha256":"1eb5c13d7babdf9d1b73d7ad5a55022781e5d3f382adc1ee187565d64a40827f","sha512":"a8f88cc675c375635ddd8bede571efff87e5328f1d0d90c979d7b07ebc0ae4eb81802b64a9d6eff50ce17142110fbbb224ff8fc3c4c22a1338431110a908c8b5","ssdeep":"12288:N5WOCvvhWwgPkUciIrBbM37JDMclwUYGZTw7yhLrLl1wrFh:N5WOitgPkDiIrBbM37JDMclwUYGZTw7N","tlshash":"8dd43a71a1a5293011f6c2dad8b66406623d2647f80604adfe7d8cdf168ee45f13bf3a","first_seen":"2026-07-25T03:24:57.336653Z","last_seen":"2026-07-27T07:14:43.818488Z","times_seen":131,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1sxMjk2NSw0NjQ4Miw2NDAxOSw4MDkzOSw4NTYwNyw4NjkxNCw5MTI5Ml0sezg0ODUyNyhlKXtlLmV4cG9ydHM9e319LDE5NjIxKGUpe2UuZXhwb3J0cz17bGlzdDoibGlzdC1HTlc2QnZHbyIsaXRlbToiaXRlbS1HTlc2QnZHbyJ9fSw5MjQ1MDcoZSl7ZS5leHBvcnRzPXsidGFibGV0LW5vcm1hbC1icmVha3BvaW50IjoiKG1heC13aWR0aDogNzY4cHgpIiwic21hbGwtaGVpZ2h0LWJyZWFrcG9pbnQiOiIobWF4LWhlaWdodDogMzYwcHgpIiwidGFibGV0LXNtYWxsLWJyZWFrcG9pbnQiOiIobWF4LXdpZHRoOiA0NDBweCkifX0sMjQ0NTI1KGUpe2UuZXhwb3J0cz17bG9hZGVyOiJsb2FkZXItTWdmOEVGd0siLHN0YXRpYzoic3RhdGljLU1nZjhFRndLIixpdGVtOiJpdGVtLU1nZjhFRndLIiwidHYtYnV0dG9uLWxvYWRlciI6InR2LWJ1dHRvbi1sb2FkZXItTWdmOEVGd0siLG1lZGl1bToibWVkaXVtLU1nZjhFRndLIixzbWFsbDoic21hbGwtTWdmOEVGd0siLGJsYWNrOiJibGFjay1NZ2Y4RUZ3SyIsd2hpdGU6IndoaXRlLU1nZjhFRndLIixncmF5OiJncmF5LU1nZjhFRndLIixwcmltYXJ5OiJwcmltYXJ5LU1nZjhFRndLIn19LDg0NTU3NyhlKXtlLmV4cG9ydHM9eyJ0di1zcGlubmVyX19jb250YWluZXItcm90YXRlIjoidHYtc3Bpbm5lcl9fY29udGFpbmVyLXJvdGF0ZS1qNEpscllWSCIsInR2LXNwaW5uZXJfX2NvbnRhaW5lci1yb3RhdGUtcnRsIjoidHYtc3Bpbm5lcl9fY29udGFpbmVyLXJvdGF0ZS1ydGwtajRKbHJZVkgifX0sNjI1NzA5KGUpe2UuZXhwb3J0cz17c21hbGw6InNtYWxsLXRXRElDVGF5IixtZWRpdW06Im1lZGl1bS10V0RJQ1RheSIsbGFyZ2U6ImxhcmdlLXRXRElDVGF5Iixzd2l0Y2hWaWV3OiJzd2l0Y2hWaWV3LXRXRElDVGF5IixjaGVja2VkOiJjaGVja2VkLXRXRElDVGF5IixkaXNhYmxlZDoiZGlzYWJsZWQtdFdESUNUYXkiLHRyYWNrOiJ0cmFjay10V0RJQ1RheSIsdGh1bWI6InRodW1iLXRXRElDVGF5In19LDY4NzU0NyhlKXtlLmV4cG9ydHM9e3N3aXRjaGVyOiJzd2l0Y2hlci1sM0R0S0xzTCIsaW5wdXQ6ImlucHV0LWwzRHRLTHNMIix0aHVtYldyYXBwZXI6InRodW1iV3JhcHBlci1sM0R0S0xzTCIsZGlzYWJsZWQ6ImRpc2FibGVkLWwzRHRLTHNMIixjaGVja2VkOiJjaGVja2VkLWwzRHRLTHNMIn19LDE3MjM3MShlKXtlLmV4cG9ydHM9e319LDc5MDUwMShlKXtlLmV4cG9ydHM9e319LDE2NzU1OShlKXtlLmV4cG9ydHM9e319LDQ4OTc1MihlKXtlLmV4cG9ydHM9e319LDQ1NTU3KGUpe2UuZXhwb3J0cz17fX0sNTUwNzA1KGUpe2UuZXhwb3J0cz17fX0sNTkzMjYzKGUpe2UuZXhwb3J0cz17fX0sOTIyMjA2KGUpe2UuZXhwb3J0cz17fX0sNTUxMjE1KGUpe2UuZXhwb3J0cz17ImZsaWNrLXRoZW1lLWRhcmsiOiJmbGljay10aGVtZS1kYXJrLXpQaVY2U1k0IixmbGljazoiZmxpY2stelBpVjZTWTQifX0sNDQ2OTU2KGUpe2UuZXhwb3J0cz17InR2LXB1bHNlLWFuaW1hdGlvbi1idXR0b24iOiJ0di1wdWxzZS1hbmltYXRpb24tYnV0dG9uLUFSZGJNMHlEIn19LDk1MjY4NihlKXtlLmV4cG9ydHM9e319LDk3NTI0NChlKXtlLmV4cG9ydHM9e319LDExMjYxMyhlKXtlLmV4cG9ydHM9e319LDgwNDYxOShlKXtlLmV4cG9ydHM9e319LDE1Mzc3KGUpe2UuZXhwb3J0cz17bW9kZVRpdGxlOiJtb2RlVGl0bGUtanNUM1M0TUEiLG1vZGVUaXRsZUFjdGl2ZToibW9kZVRpdGxlQWN0aXZlLWpzVDNTNE1BIixzd2l0Y2hlckNvbnRhaW5lcjoic3dpdGNoZXJDb250YWluZXItanNUM1M0TUEifX0sMzUxODI3KGUpe2UuZXhwb3J0cz17bGluazoibGluay1VSVFwTExOcyJ9fSw0NTAyOTUoZSl7ZS5leHBvcnRzPXt9fSw0NDM2MjAoZSl7ZS5leHBvcnRzPXt9fSw2NjIzOTIoZSl7ZS5leHBvcnRzPXt9fSwxMTQwNjgoZSl7ZS5leHBvcnRzPXsiY29tbW9uLXRvb2x0aXAiOiJjb21tb24tdG9vbHRpcC1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwLS1oaWRkZW4iOiJjb21tb24tdG9vbHRpcC0taGlkZGVuLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXAtLWhvcml6b250YWwiOiJjb21tb24tdG9vbHRpcC0taG9yaXpvbnRhbC1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwLS1mYXJ0aGVyIjoiY29tbW9uLXRvb2x0aXAtLWZhcnRoZXItRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcC0tdmVydGljYWwiOiJjb21tb24tdG9vbHRpcC0tdmVydGljYWwtRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcC1mYXJ0aGVyIjoiY29tbW9uLXRvb2x0aXAtZmFydGhlci1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fbm9ybWFsIjoiY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9ub3JtYWwtRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fYm9keSI6ImNvbW1vbi10b29sdGlwX19ib2R5LUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2J1dHRvbi1jb250YWluZXIiOiJjb21tb24tdG9vbHRpcF9fYnV0dG9uLWNvbnRhaW5lci1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19ib2R5LS1uby1idXR0b25zIjoiY29tbW9uLXRvb2x0aXBfX2JvZHktLW5vLWJ1dHRvbnMtRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fYnV0dG9uIjoiY29tbW9uLXRvb2x0aXBfX2J1dHRvbi1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fcmV2ZXJzZWQiOiJjb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX3JldmVyc2VkLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXIiOiJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWxvdyI6ImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWxvdy1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZSI6ImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZS1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUiOiJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYmVmb3JlLUVKQkQ5NnpYIiwKImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hZnRlciI6ImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hZnRlci1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19ib2R5LS13aXRoLWhvdGtleSI6ImNvbW1vbi10b29sdGlwX19ib2R5LS13aXRoLWhvdGtleS1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19ib2R5LS13aWR0aF93aWRlIjoiY29tbW9uLXRvb2x0aXBfX2JvZHktLXdpZHRoX3dpZGUtRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9fYm9keS0td2lkdGhfbmFycm93IjoiY29tbW9uLXRvb2x0aXBfX2JvZHktLXdpZHRoX25hcnJvdy1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19ib2R5LS1uby1wYWRkaW5nIjoiY29tbW9uLXRvb2x0aXBfX2JvZHktLW5vLXBhZGRpbmctRUpCRDk2elgiLCJjb21tb24tdG9vbHRpcF9faG90a2V5LWJsb2NrIjoiY29tbW9uLXRvb2x0aXBfX2hvdGtleS1ibG9jay1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19ob3RrZXktYmxvY2stLWRpdmlkZXIiOiJjb21tb24tdG9vbHRpcF9faG90a2V5LWJsb2NrLS1kaXZpZGVyLUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2hvdGtleS10ZXh0IjoiY29tbW9uLXRvb2x0aXBfX2hvdGtleS10ZXh0LUVKQkQ5NnpYIiwiY29tbW9uLXRvb2x0aXBfX2hvdGtleS1idXR0b24iOiJjb21tb24tdG9vbHRpcF9faG90a2V5LWJ1dHRvbi1FSkJEOTZ6WCIsImNvbW1vbi10b29sdGlwX19wbHVzLXNpZ24iOiJjb21tb24tdG9vbHRpcF9fcGx1cy1zaWduLUVKQkQ5NnpYIn19LDg1NzAxOShlKXtlLmV4cG9ydHM9e319LDI2MjMxOShlKXtlLmV4cG9ydHM9e319LDk1MDc3MShlKXtlLmV4cG9ydHM9e319LDgzMjIyNihlKXtlLmV4cG9ydHM9e319LDIwMjgxNShlKXtlLmV4cG9ydHM9e319LDM3NjQ1MChlKXtlLmV4cG9ydHM9e319LDYzODI4MihlKXtlLmV4cG9ydHM9e319LDg1NTc0MihlKXtlLmV4cG9ydHM9e319LDYyNTQxMShlKXtlLmV4cG9ydHM9e3dyYXBwZXI6IndyYXBwZXItUFE1T18xTTciLHRvdWNoOiJ0b3VjaC1QUTVPXzFNNyJ9fSwyODY4MjAoZSl7ZS5leHBvcnRzPXt9fSwxMzMyNDMoZSl7ZS5leHBvcnRzPXt9fSwxMjE2NDUoZSl7ZS5leHBvcnRzPXtjb250YWluZXI6ImNvbnRhaW5lci1IVEJKbzliYSIsdG9wOiJ0b3AtSFRCSm85YmEifX0sNTcyMjQ5KGUpe2UuZXhwb3J0cz17d3JhcDoid3JhcC15emo3bHZLbiIsbGlzdDoibGlzdC15emo3bHZLbiIsaXRlbToiaXRlbS15emo3bHZLbiIsc2VsZWN0ZWQ6InNlbGVjdGVkLXl6ajdsdktuIixibHVpc2hJdGVtOiJibHVpc2hJdGVtLXl6ajdsdktuIixub1BhZGRpbmc6Im5vUGFkZGluZy15emo3bHZLbiJ9fSw2ODAyNShlKXtlLmV4cG9ydHM9e2VsZW1lbnRXcmFwOiJlbGVtZW50V3JhcC1MZVp3R2lCNiIsaXRlbXNXcmFwOiJpdGVtc1dyYXAtTGVad0dpQjYiLGl0ZW06Iml0ZW0tTGVad0dpQjYiLGFjdGl2ZToiYWN0aXZlLUxlWndHaUI2IixpdGVtQ29udGVudDoiaXRlbUNvbnRlbnQtTGVad0dpQjYiLGRyb3Bkb3duSXRlbToiZHJvcGRvd25JdGVtLUxlWndHaUI2Iixkcm9wZG93bkljb246ImRyb3Bkb3duSWNvbi1MZVp3R2lCNiIsZHJvcGRvd25MaXN0SXRlbToiZHJvcGRvd25MaXN0SXRlbS1MZVp3R2lCNiJ9fSw5MzAyMzEoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7ZW5hYmxlOigpPT5jLGlzRmVhdHVyZXNldEVuYWJsZWQ6KCk9PmF9KTt2YXIgaT1vKDYzNTE4KTtjb25zdCBuPW5ldyBNYXAscj1uZXcgTWFwLHM9bmV3IFNldDtmdW5jdGlvbiBhKGUpe2NvbnN0IHQ9bi5nZXQoZSk7aWYodm9pZCAwIT09dClyZXR1cm4gdDtjb25zdCBvPXIuZ2V0KGUpO3JldHVybiEhbyYmby5zb21lKGEpfWZ1bmN0aW9uIGwoZSx0KXtuLnNldChTdHJpbmcoZSksQm9vbGVhbih0KSl9ZnVuY3Rpb24gYyhlKXtsKGUsITApfSFmdW5jdGlvbigpe2Zvcihjb25zdFtlLHRdb2YgT2JqZWN0LmVudHJpZXMoaSkpaWYocy5hZGQoZSksInN1YnNldHMiaW4gdClmb3IoY29uc3QgbyBvZiB0LnN1YnNldHMpe3MuYWRkKG8pO2xldCB0PXIuZ2V0KG8pO3ZvaWQgMD09PXQmJih0PVtdLHIuc2V0KG8sdCkpLHQucHVzaChlKX19KCksIm9iamVjdCI9PXR5cGVvZiBfX2luaXRpYWxEaXNhYmxlZEZlYXR1cmVzZXRzJiZBcnJheS5pc0FycmF5KF9faW5pdGlhbERpc2FibGVkRmVhdHVyZXNldHMpJiZfX2luaXRpYWxEaXNhYmxlZEZlYXR1cmVzZXRzLmZvckVhY2goKGZ1bmN0aW9uKGUpe2woZSwhMSl9KSksIm9iamVjdCI9PXR5cGVvZiBfX2luaXRpYWxFbmFibGVkRmVhdHVyZXNldHMmJkFycmF5LmlzQXJyYXkoX19pbml0aWFsRW5hYmxlZEZlYXR1cmVzZXRzKSYmX19pbml0aWFsRW5hYmxlZEZlYXR1cmVzZXRzLmZvckVhY2goYyl9LDM4NDAxNyhlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtmZXRjaDooKT0+cn0pO3ZhciBpPW8oMjIxMDYxKTtvKDMwMDI4Nik7Y29uc3Qgbj0oMCxpLmdldExvZ2dlcikoIkZldGNoIik7ZnVuY3Rpb24gcihlLHQsbz17fSl7e2NvbnN0e2xvZ09uRXJyb3JTdGF0dXM6aT0hMCxsb2dCb2R5T25FcnJvcjpyPSExfT1vO3Q9dHx8e30sZnVuY3Rpb24oZSl7cmV0dXJuIG5ldyBVUkwoZSxkb2N1bWVudC5iYXNlVVJJKS5vcmlnaW49PT1sb2NhdGlvbi5vcmlnaW59KGUpJiYodC5oZWFkZXJzP3QuaGVhZGVycyBpbnN0YW5jZW9mIEhlYWRlcnN8fCh0LmhlYWRlcnM9bmV3IEhlYWRlcnModC5oZWFkZXJzKSk6dC5oZWFkZXJzPW5ldyBIZWFkZXJzLHdpbmRvdy5sb2NhbGUmJnQuaGVhZGVycy5zZXQoIlgtTGFuZ3VhZ2UiLHdpbmRvdy5sb2NhbGUpLHQuaGVhZGVycy5zZXQoIlgtUmVxdWVzdGVkLVdpdGgiLCJYTUxIdHRwUmVxdWVzdCIpKSx2b2lkIDA9PT10LmNyZWRlbnRpYWxzJiYodC5jcmVkZW50aWFscz0ic2FtZS1vcmlnaW4iKTtjb25zdCBzPXdpbmRvdy5mZXRjaChlLHQpO3JldHVybiBzLnRoZW4oKG89PntpZighby5vayYmaSl7bGV0IGk9IiI7dC5tZXRob2QmJihpKz1gJHt0Lm1ldGhvZC50b1VwcGVyQ2FzZSgpfSBgKSxpKz1lLGkrPWAuIFN0YXR1cyAke28uc3RhdHVzfWAsby5zdGF0dXNUZXh0JiYoaSs9YC4gJHtvLnN0YXR1c1RleHR9YCksCm8uaGVhZGVycy52aWEmJihpKz1gLiBWaWE6ICR7by5oZWFkZXJzLnZpYX1gKSxyJiYic3RyaW5nIj09dHlwZW9mIHQuYm9keSYmKGkrPWAuIEJvZHk6ICR7dC5ib2R5LnNsaWNlKDAsMTAyNCl9YCksbi5sb2dFcnJvcihpKX1yZXR1cm4gb30pLChvPT57aWYobyYmIkFib3J0RXJyb3IiPT09by5uYW1lKXJldHVybjtsZXQgaT0iIjt0Lm1ldGhvZCYmKGkrPWAke3QubWV0aG9kLnRvVXBwZXJDYXNlKCl9IGApLGkrPWUsbmF2aWdhdG9yLm9uTGluZT9pKz1gLiAke1N0cmluZyhvKX1gOmkrPSIuIFVzZXIgaXMgb2ZmbGluZS4iLG4ubG9nRXJyb3IoaSl9KSksc319fSwxNzk3NzEoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7ZW1pdDooKT0+YyxzdWJzY3JpYmU6KCk9PmwsdW5zdWJzY3JpYmU6KCk9PmF9KTt2YXIgaT1vKDk0ODM4MCk7Y29uc3Qgbj17fSxyPVtdLHM9e307ZnVuY3Rpb24gYShlLHQsbyl7bltlXS51bnN1YnNjcmliZShvLHQpfWZ1bmN0aW9uIGwoZSx0LG8scil7bi5oYXNPd25Qcm9wZXJ0eShlKXx8KG5bZV09bmV3IGkuRGVsZWdhdGUpLHNbZV0/dC5jYWxsKG8pOm5bZV0uc3Vic2NyaWJlKG8sdCxyKX1mdW5jdGlvbiBjKGUsLi4udCl7Y29uc3Qgbz1bZV0uY29uY2F0KHQpO3IuZm9yRWFjaCgoZT0+e2UuYXBwbHkobnVsbCxvKX0pKSxuLmhhc093blByb3BlcnR5KGUpJiZuW2VdLmZpcmUuYXBwbHkobltlXSx0KX19LDkzMjM2NShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtUVkxvY2FsU3RvcmFnZTooKT0+cn0pO2NvbnN0IGk9KDAsbygyMjEwNjEpLmdldExvZ2dlcikoIlRWTG9jYWxTdG9yYWdlIik7dmFyIG49ZnVuY3Rpb24oKXt0cnl7dGhpcy5pc0F2YWlsYWJsZT0hMCx0aGlzLmxvY2FsU3RvcmFnZT13aW5kb3cubG9jYWxTdG9yYWdlLHRoaXMubG9jYWxTdG9yYWdlLnNldEl0ZW0oInR2bG9jYWxzdG9yYWdlLmF2YWlsYWJsZSIsInRydWUiKX1jYXRjaChlKXtkZWxldGUgdGhpcy5pc0F2YWlsYWJsZSxkZWxldGUgdGhpcy5sb2NhbFN0b3JhZ2V9dGhpcy5fdXBkYXRlTGVuZ3RoKCk7dHJ5e3RoaXMuX3JlcG9ydCgpfWNhdGNoKGUpe319O24ucHJvdG90eXBlLl9yZXBvcnQ9ZnVuY3Rpb24oKXtpZih0aGlzLmlzQXZhaWxhYmxlKXtjb25zdCBlPTEwLHQ9W107Zm9yKGxldCBlPTA7ZTx0aGlzLmxvY2FsU3RvcmFnZS5sZW5ndGg7ZSsrKXtjb25zdCBvPXRoaXMua2V5KGUpO3QucHVzaCh7a2V5Om8sbGVuZ3RoOlN0cmluZyh0aGlzLmdldEl0ZW0obykpLmxlbmd0aH0pfXQuc29ydCgoKGUsdCk9PnQubGVuZ3RoLWUubGVuZ3RoKSk7Y29uc3Qgbz10LnNsaWNlKDAsZSk7dC5zb3J0KCgoZSx0KT0+dC5rZXkubGVuZ3RoLWUua2V5Lmxlbmd0aCkpO2NvbnN0IG49dC5zbGljZSgwLGUpO2kubG9nTm9ybWFsKGBUb3RhbCBhbW91bnQgb2Yga2V5cyBpbiBMb2NhbCBTdG9yYWdlOiAke3RoaXMubGVuZ3RofWApLGkubG9nTm9ybWFsKGBUb3AgJHtlfSBrZXlzIHdpdGggbG9uZ2VzdCB2YWx1ZXM6ICR7SlNPTi5zdHJpbmdpZnkobyl9YCksaS5sb2dOb3JtYWwoYFRvcCAke2V9IGxvbmdlc3Qga2V5IG5hbWVzOiAke0pTT04uc3RyaW5naWZ5KG4pfWApO3RyeXtuYXZpZ2F0b3Iuc3RvcmFnZS5lc3RpbWF0ZSgpLnRoZW4oKGU9PntpLmxvZ05vcm1hbChgU3RvcmFnZSBlc3RpbWF0ZTogJHtKU09OLnN0cmluZ2lmeShlKX1gKX0pKX1jYXRjaChlKXt9fX0sbi5wcm90b3R5cGUubGVuZ3RoPTAsbi5wcm90b3R5cGUuaXNBdmFpbGFibGU9ITEsbi5wcm90b3R5cGUubG9jYWxTdG9yYWdlPXsidHZsb2NhbHN0b3JhZ2UuYXZhaWxhYmxlIjoiZmFsc2UifSxuLnByb3RvdHlwZS5fdXBkYXRlTGVuZ3RoPWZ1bmN0aW9uKCl7aWYodGhpcy5pc0F2YWlsYWJsZSl0aGlzLmxlbmd0aD10aGlzLmxvY2FsU3RvcmFnZS5sZW5ndGg7ZWxzZXt2YXIgZSx0PTA7Zm9yKGUgaW4gdGhpcy5sb2NhbFN0b3JhZ2UpdGhpcy5sb2NhbFN0b3JhZ2UuaGFzT3duUHJvcGVydHkoZSkmJnQrKzt0aGlzLmxlbmd0aD10fX0sbi5wcm90b3R5cGUua2V5PWZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmlzQXZhaWxhYmxlP3RoaXMubG9jYWxTdG9yYWdlLmtleShlKTpPYmplY3Qua2V5cyh0aGlzLmxvY2FsU3RvcmFnZSlbZV19LG4ucHJvdG90eXBlLmdldEl0ZW09ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuaXNBdmFpbGFibGU/dGhpcy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShlKTp2b2lkIDA9PT10aGlzLmxvY2FsU3RvcmFnZVtlXT9udWxsOnRoaXMubG9jYWxTdG9yYWdlW2VdfSxuLnByb3RvdHlwZS5zZXRJdGVtPWZ1bmN0aW9uKGUsdCl7dGhpcy5pc0F2YWlsYWJsZT90aGlzLmxvY2FsU3RvcmFnZS5zZXRJdGVtKGUsdCk6dGhpcy5sb2NhbFN0b3JhZ2VbZV09dCx0aGlzLl91cGRhdGVMZW5ndGgoKX0sbi5wcm90b3R5cGUucmVtb3ZlSXRlbT1mdW5jdGlvbihlKXt0aGlzLmlzQXZhaWxhYmxlP3RoaXMubG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oZSk6ZGVsZXRlIHRoaXMubG9jYWxTdG9yYWdlW2VdLHRoaXMuX3VwZGF0ZUxlbmd0aCgpfSxuLnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe3RoaXMuaXNBdmFpbGFibGU/dGhpcy5sb2NhbFN0b3JhZ2UuY2xlYXIoKTp0aGlzLmxvY2FsU3RvcmFnZT17fSx0aGlzLl91cGRhdGVMZW5ndGgoKX07Y29uc3Qgcj1uZXcgbjt3aW5kb3cuVFZMb2NhbFN0b3JhZ2U9cn0sODY1NTYwKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse1RWQXBwQ29udGV4dDooKT0+YyxUVkFwcENvbnRleHRQcm92aWRlcjooKT0+bH0pO3ZhciBpPW8oNzc5NDc0KSxuPW8oMTE1MjkzKSxyPW8oOTk5NTEpLHM9bygxMTczMTMpO2NvbnN0IGE9e2lPczoib2xkIixhbmRyb2lkOiJuZXciLG9sZDoib2xkIixuZXc6Im5ldyIsYW55OiJhbnkifTtmdW5jdGlvbiBsKGUpe2NvbnN0W3RdPSgwLGkudXNlU3RhdGUpKHtpc09uTW9iaWxlQXBwUGFnZTplPT4oMCxzLmlzT25Nb2JpbGVBcHBQYWdlKShhW2VdKSxpc1J0bDooMCxuLmlzUnRsKSgpLGxvY2FsZTp3aW5kb3cubG9jYWxlLHJlbmRlck1vZGU6ZS5yZW5kZXJNb2RlPz8ibGVnYWN5In0pO3JldHVybiBpLmNyZWF0ZUVsZW1lbnQoci5BcHBDb250ZXh0LlByb3ZpZGVyLHt2YWx1ZTp0Cn0sZS5jaGlsZHJlbil9Y29uc3QgYz1yLkFwcENvbnRleHR9LDU3MTMwMChlLHQsbyl7InVzZSBzdHJpY3QiO28ucih0KSxvLmQodCx7Y3JlYXRlUmVhY3RSb290OigpPT5hfSk7dmFyIGk9byg3Nzk0NzQpLG49bygxMjkzNjUpLHI9bygzMzYzMzQpLHM9byg4NjU1NjApO2Z1bmN0aW9uIGEoZSx0LG89ImxlZ2FjeSIpe2NvbnN0IGE9aS5jcmVhdGVFbGVtZW50KHMuVFZBcHBDb250ZXh0UHJvdmlkZXIse3JlbmRlck1vZGU6b30sZSk7aWYoIm1vZGVybiI9PT1vKXtjb25zdCBlPSgwLHIuY3JlYXRlUm9vdCkodCk7cmV0dXJuIGUucmVuZGVyKGEpLHtyZW5kZXIodCl7ZS5yZW5kZXIoaS5jcmVhdGVFbGVtZW50KHMuVFZBcHBDb250ZXh0UHJvdmlkZXIse3JlbmRlck1vZGU6b30sdCkpfSx1bm1vdW50KCl7ZS51bm1vdW50KCl9fX1yZXR1cm4gbi5yZW5kZXIoYSx0KSx7cmVuZGVyKGUpe24ucmVuZGVyKGkuY3JlYXRlRWxlbWVudChzLlRWQXBwQ29udGV4dFByb3ZpZGVyLHtyZW5kZXJNb2RlOm99LGUpLHQpfSx1bm1vdW50KCl7bi51bm1vdW50Q29tcG9uZW50QXROb2RlKHQpfX19fSw5MDk3OTgoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7Zmx1c2hEZWxlZ2F0ZTooKT0+aX0pO2NvbnN0IGk9bmV3KG8oOTQ4MzgwKS5EZWxlZ2F0ZSl9LDg1NjE5NihlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtzaG91bGRBZmZlY3RVc2VyOigpPT5sfSk7dmFyIGk9bygxMDA1OTUpLG49by5uKGkpLHI9byg5MzIzNjUpO2NvbnN0IHM9ImZlYXR1cmV0b2dnbGVfc2VlZCI7ZnVuY3Rpb24gYShlKXt0cnl7Y29uc3QgdD1uKCkoZStmdW5jdGlvbigpe2lmKHdpbmRvdy51c2VyJiZ3aW5kb3cudXNlci5pZClyZXR1cm4gd2luZG93LnVzZXIuaWQ7Y29uc3QgZT1yLlRWTG9jYWxTdG9yYWdlLmdldEl0ZW0ocyk7aWYobnVsbCE9PWUpcmV0dXJuIGU7Y29uc3QgdD1NYXRoLmZsb29yKDFlNipNYXRoLnJhbmRvbSgpKTtyZXR1cm4gci5UVkxvY2FsU3RvcmFnZS5zZXRJdGVtKHMsYCR7dH1gKSx0fSgpKSxvPW5ldyBEYXRhVmlldyh0KTtyZXR1cm4gby5nZXRVaW50MzIoMCwhMCkvNDI5NDk2NzI5Nn1jYXRjaChlKXtyZXR1cm4uNX19ZnVuY3Rpb24gbChlLHQpe3JldHVybiBhKGUpPD10fX0sMTU2ODUwKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse3RlbGVtZXRyeTooKT0+aH0pO3ZhciBpPW8oOTQ4MzgwKSxuPW8oMjIxMDYxKSxyPW8oMzg0MDE3KSxzPW8oMzc3MjI2KSxhPW8oMTE3MzEzKTtvKDMwMDI4Nik7Y29uc3QgbD0oMCxuLmdldExvZ2dlcikoIkNvbW1vbi5UZWxlbWV0cnkiKSxjPXtkZWZhdWx0OjE1ZTMsc2l0ZTozZTV9LGQ9WyJiZWZvcmVfd2Vic29ja2V0X2Nvbm5lY3Rpb25fdGltZV9mcmFtZSIsIndlYnNvY2tldF9jb25uZWN0aW9uX3RpbWVfZnJhbWUiLCJmaXJzdF9zZXJpZXNfZnVsbF90aW1lX2ZyYW1lIiwicGFnZV9mdWxsX2xvYWRfdGltZV9mcmFtZSIsInBhZ2VfbG9hZF90aW1lX2ZyYW1lIl07Y29uc3QgaD1uZXcgY2xhc3N7Y29uc3RydWN0b3IoKXt0aGlzLnJlcG9ydFNlbnQ9bmV3IGkuRGVsZWdhdGUsdGhpcy50aW1lQ291bnRlcnM9e3Nlcmllczp7bWFya3M6W119LHN0dWR5Ont9LHBpbmU6e319LHRoaXMuX3RpbWVvdXRJZHM9e30sdGhpcy5fY29tbW9uQWRkaXRpb25hbERhdGE9e2NsdXN0ZXI6bnVsbCx1c2VySWQ6IjAifSx0aGlzLl9yZXBvcnRTdGFzaD17fX1zZXRTZXNzaW9uSW5mbyhlKXtjb25zdCB0PXRoaXMuX3BhcnNlQ2x1c3RlcihlKTtudWxsIT09dCYmKHRoaXMuX2NvbW1vbkFkZGl0aW9uYWxEYXRhLmNsdXN0ZXI9dCl9c2VuZFJlcG9ydChlLHQsbyl7aWYoIXRoaXMuX2lzQWJsZVRvU2VuZFJlcG9ydCh0KSlyZXR1cm47Y29uc3QgaT10aGlzLl9nZXRTdWJzZXJ2aWNlVHlwZShlKSxuPXRoaXMuX2dldEhvc3QoZSxpKTtpZihudWxsIT09bil7aWYobz12b2lkIDA9PT1vP3tjb3VudDoxfTpvLHRoaXMuX2FkZFJlcG9ydFRvU3Rhc2gobyx0LG4pLCF0aGlzLl90aW1lb3V0SWRzW2VdKXtjb25zdCB0PWNbZV0/P2MuZGVmYXVsdDt0aGlzLl90aW1lb3V0SWRzW2VdPXNldFRpbWVvdXQodGhpcy5fc2VuZFRlbGVtZXRyeVRvU2VydmljZS5iaW5kKHRoaXMsZSxuKSx0KX19ZWxzZSBsLmxvZ0Vycm9yKGBVbmFibGUgdG8gZ2V0IGhvc3QgZm9yIGNvdW50ZXI6ICR7dH0sIG1ldHJpYyB0eXBlOiAke2V9LCBzZXJpdmNlIHR5cGU6ICR7aX1gKX1zZW5kQ2hhcnRSZXBvcnQoZSx0LG89ITApe3RoaXMuX3NlbmRTZXJ2aWNlU3BlY2lmaWVkUmVwb3J0KCJjaGFydHMiLGUsdCxvKX1zZW5kTGluZVRvb2xzU3RvcmFnZVJlcG9ydChlLHQsbz0hMCl7dGhpcy5fc2VuZFNlcnZpY2VTcGVjaWZpZWRSZXBvcnQoImxpbmVfdG9vbHNfc3RvcmFnZSIsZSx0LG8pfV9zZW5kU2VydmljZVNwZWNpZmllZFJlcG9ydChlLHQsbyxpPSEwKXt0aGlzLl91cGRhdGVVc2VySW5mbygpLG89dm9pZCAwPT09bz97Y291bnQ6MX06byxpJiYobz10aGlzLl9hcHBlbmRDb21tb25BZGRpdGlvbmFsSW5mbyhvLFsiY2x1c3RlciIsInVzZXJJZCJdKSksdGhpcy5zZW5kUmVwb3J0KGUsdCxvKX1fdXBkYXRlVXNlckluZm8oKXtjb25zdCBlPSJ1c2VyImluIHdpbmRvdyYmImlkImluIHdpbmRvdy51c2VyP3dpbmRvdy51c2VyLmlkOiIwIjt0aGlzLl9jb21tb25BZGRpdGlvbmFsRGF0YS51c2VySWQ9U3RyaW5nKGUpfV9pc0FibGVUb1NlbmRSZXBvcnQoZSl7Y29uc3QgdD13aW5kb3cuVEVMRU1FVFJZX0hPU1RTLG89ZC5pbmNsdWRlcyhlKSxpPUJvb2xlYW4od2luZG93LlRyYWRpbmdWaWV3Py5vbkNoYXJ0UGFnZXx8KDAscy5vbldpZGdldCkoKSk7cmV0dXJuIHQmJighb3x8aSl9X3NlbmRUZWxlbWV0cnlUb1NlcnZpY2UoZSx0KXtpZih0aGlzLl9yZXBvcnRTdGFzaC5oYXNPd25Qcm9wZXJ0eSh0KSl7Y29uc3QgZT10aGlzLl9jcm9wUGFyYW1zKHRoaXMuX3JlcG9ydFN0YXNoW3RdKSxvPXRoaXMuX3JlbmFtZUFsbFBhcmFtcyhlKSxpPXtldmVudDoicmVwb3J0X3N0YXNoIixwYXJhbXM6dGhpcy5fY2xlYW5BbGxQYXJhbXMobyl9CjtsLmxvZ0RlYnVnKGBSZXBvcnQgdG8gaG9zdDogJHt0fTsgc3Rhc2g6ICR7SlNPTi5zdHJpbmdpZnkodGhpcy5fcmVwb3J0U3Rhc2hbdF0pfWApLHRoaXMucmVwb3J0U2VudC5maXJlKHRoaXMuX3JlcG9ydFN0YXNoW3RdKSxkZWxldGUgdGhpcy5fcmVwb3J0U3Rhc2hbdF0sKDAsci5mZXRjaCkoYCR7dH0vcmVwb3J0YCx7bWV0aG9kOiJQT1NUIixib2R5OkpTT04uc3RyaW5naWZ5KGkpfSl9dGhpcy5fdGltZW91dElkc1tlXT1udWxsfV9nZXRIb3N0KGUsdCl7Y29uc3Qgbz13aW5kb3cuVEVMRU1FVFJZX0hPU1RTLGk9b1tlXSYmb1tlXVt0XTtyZXR1cm4gQm9vbGVhbihpKT9pOm51bGx9X2dldFN1YnNlcnZpY2VUeXBlKGUpe2lmKCFbImNoYXJ0cyIsInNpdGUiXS5pbmNsdWRlcyhlKSlyZXR1cm4iYWxsIjtsZXQgdD0iZnJlZSI7Y29uc3Qgbz13aW5kb3cudXNlci5pc19wcm87cmV0dXJuImNoYXJ0cyI9PT1lJiYoMCxhLmlzT25Nb2JpbGVBcHBQYWdlKSgib2xkIik/dD1vPyJpb3NfcHJvIjoiaW9zX2ZyZWUiOiJjaGFydHMiPT09ZSYmKDAsYS5pc09uTW9iaWxlQXBwUGFnZSkoIm5ldyIpP3Q9bz8iYW5kcm9pZF9wcm8iOiJhbmRyb2lkX2ZyZWUiOigwLHMub25XaWRnZXQpKCk/dD0id2lkZ2V0IjpvJiYodD0icHJvIiksdH1fcGFyc2VDbHVzdGVyKGUpe2xldCB0O3RyeXt0PUpTT04ucGFyc2UoZSkuc2Vzc2lvbl9pZH1jYXRjaChlKXtyZXR1cm4gbC5sb2dFcnJvcigiQ291bGQgbm90IHBhcnNlIGNsdXN0ZXIgaWQgKHNlc3Npb24gaWQpIiksbnVsbH1jb25zdCBvPS8oLipAKSguKikvZ2kuZXhlYyh0KTtyZXR1cm4gbnVsbCE9PW8mJm8ubGVuZ3RoPj0zP29bMl06bnVsbH1fYXBwZW5kQ29tbW9uQWRkaXRpb25hbEluZm8oZSx0KXtyZXR1cm4gdC5mb3JFYWNoKCh0PT57dCBpbiB0aGlzLl9jb21tb25BZGRpdGlvbmFsRGF0YSYmKGUuYWRkaXRpb25hbD1lLmFkZGl0aW9uYWx8fHt9LGUuYWRkaXRpb25hbFt0XT10aGlzLl9jb21tb25BZGRpdGlvbmFsRGF0YVt0XSl9KSksZX1fY3JvcFBhcmFtcyhlKXtmb3IoY29uc3QgdCBpbiBlKWUuaGFzT3duUHJvcGVydHkodCkmJmVbdF0ubGVuZ3RoPjFlMyYmKGUudG9vX211Y2hfbWV0cmljc19mcmFtZT1lLnRvb19tdWNoX21ldHJpY3NfZnJhbWU/P1tdLGUudG9vX211Y2hfbWV0cmljc19mcmFtZS5wdXNoKHt2YWx1ZTplW3RdLmxlbmd0aCxhZGRpdGlvbmFsOntldmVudDp0fX0pLGRlbGV0ZSBlW3RdKTtyZXR1cm4gZX1fcmVuYW1lQWxsUGFyYW1zKGUpe2NvbnN0IHQ9e307Zm9yKGNvbnN0IG8gaW4gZSllLmhhc093blByb3BlcnR5KG8pJiYodFtvXT1bXSxlW29dLmZvckVhY2goKGU9Pnt0W29dLnB1c2godGhpcy5fcmVuYW1lRW50cnlQYXJhbXMoZSkpfSkpKTtyZXR1cm4gdH1fcmVuYW1lRW50cnlQYXJhbXMoZSl7Y29uc3QgdD17Y291bnQ6ImMiLHZhbHVlOiJ2Iix0ZXh0OiJ0IixhZGRpdGlvbmFsOiJhIn07cmV0dXJuIE9iamVjdC5rZXlzKGUpLnJlZHVjZSgoKG8saSk9PihvW3RbaV1dPWVbaV0sbykpLHt9KX1fY2xlYW5BbGxQYXJhbXMoZSl7Y29uc3QgdD17fTtmb3IoY29uc3QgbyBpbiBlKWlmKGUuaGFzT3duUHJvcGVydHkobykpe3Rbb109W107Y29uc3QgaT17YzowfTtlW29dLmZvckVhY2goKGU9Pntjb25zdCBuPXRoaXMuX2NsZWFuRW50cnlQYXJhbXMoZSkscj1PYmplY3Qua2V5cyhuKS5sZW5ndGg7MT09PXImJnZvaWQgMCE9PW4uYz9pLmMrPW4uYzpyPjAmJnRbb10ucHVzaChuKX0pKSxpLmM+MCYmdFtvXS5wdXNoKGkpLDA9PT10W29dLmxlbmd0aCYmZGVsZXRlIHRbb119cmV0dXJuIHR9X2NsZWFuRW50cnlQYXJhbXMoZSl7Y29uc3QgdD1PYmplY3Qua2V5cyhlKS5yZWR1Y2UoKCh0LG8pPT4iYyIhPT1vJiYidCIhPT1vfHxlW29dPyh0W29dPWVbb10sdCk6dCkse30pO3JldHVybiJjImluIHR8fCJ2ImluIHR8fCJ0ImluIHQ/dDp7fX1fYWRkUmVwb3J0VG9TdGFzaChlLHQsbyl7byBpbiB0aGlzLl9yZXBvcnRTdGFzaHx8KHRoaXMuX3JlcG9ydFN0YXNoW29dPXt9KSx0IGluIHRoaXMuX3JlcG9ydFN0YXNoW29dfHwodGhpcy5fcmVwb3J0U3Rhc2hbb11bdF09W10pLE9iamVjdC5rZXlzKGUpLmxlbmd0aD4wJiZ0aGlzLl9yZXBvcnRTdGFzaFtvXVt0XS5wdXNoKGUpfX19LDczMjA0MChlLHQsbyl7InVzZSBzdHJpY3QiO3ZhciBpO2Z1bmN0aW9uIG4oZSx0PXdpbmRvdyl7Y29uc3Qgbz0idGhlbWUtIitlLGk9dC5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0O2Zvcihjb25zdCBlIG9mIEFycmF5LmZyb20oaSkpZS5zdGFydHNXaXRoKCJ0aGVtZS0iKSYmZSE9PW8mJmkucmVtb3ZlKGUpO2kuYWRkKG8pLHQuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmRhdGFzZXQudGhlbWU9ZX1vLmQodCx7YXBwbHlUaGVtZTooKT0+bn0pLGZ1bmN0aW9uKGUpe2UuVGhlbWVDbGFzc1ByZWZpeD0idGhlbWUtIn0oaXx8KGk9e30pKX0sMjQ3OTAxKGUsdCxvKXsidXNlIHN0cmljdCI7dmFyIGk7by5kKHQse1N0ZFRoZW1lOigpPT5pfSksZnVuY3Rpb24oZSl7ZS5MaWdodD0ibGlnaHQiLGUuRGFyaz0iZGFyayJ9KGl8fChpPXt9KSl9LDIwMDY2NihlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtzZXRUaGVtZTooKT0+cyx3YXRjaGVkVGhlbWU6KCk9PnJ9KTt2YXIgaT1vKDIzMjM2NCksbj1vKDczMjA0MCk7Y29uc3Qgcj1uZXcgaS5XYXRjaGVkVmFsdWU7ZnVuY3Rpb24gcyhlKXtyLnNldFZhbHVlKGUpfXIuc3Vic2NyaWJlKChlPT57KDAsbi5hcHBseVRoZW1lKShlLHdpbmRvdyl9KSl9LDM4NjkzMShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHt0cmFja0V2ZW50OigpPT5hfSk7dmFyIGk9bygyMjEwNjEpLG49byg5MzAyMzEpO28oMTc5NzcxKTtjb25zdCByPSgwLGkuZ2V0TG9nZ2VyKSgiQ29tbW9uLlRyYWNrRXZlbnQiKTtsZXQgcz0hMTtjb25zdCBhPShlLHQsbyk9PntpZihzKXJldHVybjtsZXQgaT0oZT9lKyI6IjoiIikrdDtvJiYoaSs9IiAiK28pLHIubG9nTm9ybWFsKGkpLCgwLG4uaXNGZWF0dXJlc2V0RW5hYmxlZCkoIndpZGdldCIpfHwhd2luZG93Ll9VTklUX1RFU1RTJiZ3aW5kb3cuZ3RhZyYmd2luZG93Lmd0YWcoImV2ZW50Iix0LHsKZXZlbnRfY2F0ZWdvcnk6ZSxldmVudF9sYWJlbDpvfSl9O3ZhciBsLGMsZDshZnVuY3Rpb24oZSl7ZS5HVUk9IkdVSSJ9KGx8fChsPXt9KSksZnVuY3Rpb24oZSl7ZS5DaGFydEhlYWRlclRvb2xiYXI9IkNoYXJ0IEhlYWRlciBUb29sYmFyIixlLkNoYXJ0Qm90dG9tVG9vbGJhcj0iQ2hhcnQgQm90dG9tIFRvb2xiYXIiLGUuQ2hhcnRMZWZ0VG9vbGJhcj0iQ2hhcnQgTGVmdCBUb29sYmFyIixlLlRpbWVJbnRlcnZhbD0iVGltZSBJbnRlcnZhbCIsZS5Mb2FkQ2hhcnRMYXlvdXQ9IkxvYWQgY2hhcnQgbGF5b3V0In0oY3x8KGM9e30pKSxmdW5jdGlvbihlKXtlLlJhbmdlPSJyYW5nZSIsZS5Hb1RvPSJnbyB0byIsZS5DaGFydFByb3BlcnRpZXM9ImNoYXJ0IHByb3BlcnRpZXMiLGUuQ29tcGFyZT0iY29tcGFyZSIsZS5TZWxlY3RMYXlvdXQ9InNlbGVjdCBsYXlvdXQiLGUuTWFnbmV0TW9kZT0ibWFnbmV0IG1vZGUiLGUuTWFnbmV0U25hcHM9Im1hZ25ldCBzbmFwcyIsZS5EcmF3aW5nTW9kZT0iZHJhd2luZyBtb2RlIixlLkxvY2tBbGxEcmF3aW5nPSJsb2NrIGFsbCBkcmF3aW5nIixlLlJlbW92ZURyYXdpbmc9InJlbW92ZSBkcmF3aW5nIixlLlJlbW92ZUluZGljYXRvcj0icmVtb3ZlIGluZGljYXRvciIsZS5SZW1vdmVBbGw9InJlbW92ZSBhbGwiLGUuSGlkZURyYXdpbmdzPSJoaWRlIGRyYXdpbmdzIixlLkhpZGVJbmRpY2F0b3JzPSJoaWRlIGluZGljYXRvcnMiLGUuSGlkZVBvc2l0aW9ucz0iaGlkZSBwb3NpdGlvbnMiLGUuSGlkZUFsbD0iaGlkZSBhbGwiLGUuU3luYz0ic3luYyIsZS5TeW5jTW9kZT0ic3luYyBtb2RlIixlLlN3aXRjaENoYXJ0TGF5b3V0PSJTd2l0Y2ggY2hhcnQgbGF5b3V0IixlLkRlbGV0ZUNoYXJ0TGF5b3V0PSJEZWxldGUgY2hhcnQgbGF5b3V0IixlLkxvYWRDaGFydExheW91dD0iTG9hZCBjaGFydCBsYXlvdXQiLGUuQWRkVG9GYXZvcml0ZXM9IkFkZCB0byBmYXZvcml0ZXMiLGUuU29ydD0iU29ydCJ9KGR8fChkPXt9KSl9LDE1MjY5OShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtUVlhXaW5kb3dFdmVudHM6KCk9PnN9KTt2YXIgaT1vKDIyMTA2MSksbj1vKDkzMjM2NSk7Y29uc3Qgcj0oMCxpLmdldExvZ2dlcikoIlhXaW5kb3dFdmVudHMiKTt2YXIgczshZnVuY3Rpb24oZSl7Y29uc3QgdD0idHZ4d2V2ZW50cy4iLG89e307bGV0IGk7d2luZG93LkJyb2FkY2FzdENoYW5uZWw/KGk9bmV3IEJyb2FkY2FzdENoYW5uZWwoInR2eHdldmVudHMiKSxpLmFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLChmdW5jdGlvbihlKXtjb25zdHtkYXRhOntldmVudDp0LHZhbHVlOml9fT1lO29bdF0mJm9bdF0uZm9yRWFjaCgoZT0+e2UoaSl9KSl9KSksZnVuY3Rpb24oKXtjb25zdCBlPVtdLG89cGVyZm9ybWFuY2Uubm93KCk7Zm9yKGxldCBvPTA7bzxuLlRWTG9jYWxTdG9yYWdlLmxlbmd0aDtvKyspe2NvbnN0IGk9bi5UVkxvY2FsU3RvcmFnZS5rZXkobyk7aS5zdGFydHNXaXRoKHQpJiZlLnB1c2goaSl9Y29uc3QgaT1uLlRWTG9jYWxTdG9yYWdlLmxlbmd0aDtmb3IoY29uc3QgdCBvZiBlKW4uVFZMb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSh0KTtjb25zdCBzPXBlcmZvcm1hbmNlLm5vdygpLW87ci5sb2dOb3JtYWwoYFRvdGFsIGtleXMgYW1vdW50IGluIGxvY2FsIHN0b3JhZ2Ugb24gb3BlcmF0aW9uIHN0YXJ0OiAke2l9YCksci5sb2dOb3JtYWwoYEtleXMgYW1vdW50IGluIGxvY2FsIHN0b3JhZ2UgdG8gYmUgZGVsZXRlZDogJHtlLmxlbmd0aH1gKSxyLmxvZ05vcm1hbChgS2V5cyB0byBiZSBkZWxldGVkIGZyb20gbG9jYWwgc3RvcmFnZTogJHtKU09OLnN0cmluZ2lmeShlKX1gKSxyLmxvZ05vcm1hbChgUmVtb3Zpbmcga2V5cyBmcm9tIGxvY2FsIHN0b3JhZ2UgdG9vayAke3N9IG1zYCl9KCkpOndpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJzdG9yYWdlIiwoZnVuY3Rpb24oZSl7Y29uc3R7bmV3VmFsdWU6aSxrZXk6cn09ZTtpZihudWxsPT09aXx8IXJ8fCFyLnN0YXJ0c1dpdGgodCkpcmV0dXJuO2NvbnN0IHM9ci5zdWJzdHJpbmcoMTEpO29bc10mJm9bc10uZm9yRWFjaCgodD0+e3QoZS5uZXdWYWx1ZSl9KSk7bi5UVkxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKHIpfSkpLGUub249ZnVuY3Rpb24oZSx0KXtvW2VdfHwob1tlXT1bXSksb1tlXS5wdXNoKHQpfSxlLm9mZj1mdW5jdGlvbihlLHQpe2lmKCFvW2VdKXJldHVybjtjb25zdCBpPW9bZV0uaW5kZXhPZih0KTstMSE9PWkmJigxPT09b1tlXS5sZW5ndGg/ZGVsZXRlIG9bZV06b1tlXS5zcGxpY2UoaSwxKSl9LGUuZW1pdD1mdW5jdGlvbihlLG89RGF0ZS5ub3coKSl7dHJ5e2k/aS5wb3N0TWVzc2FnZSh7ZXZlbnQ6ZSx2YWx1ZTpvfSk6bi5UVkxvY2FsU3RvcmFnZS5zZXRJdGVtKHQrZSxvLnRvU3RyaW5nKCkpfWNhdGNoKGUpe3IubG9nRXJyb3IoZS5tZXNzYWdlKX19fShzfHwocz17fSkpfSw3MDA4MDkoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7REVDRU1CRVI6KCk9PmcsRklSU1RfREFZX09GX1dFRUs6KCk9Pl8sRlJJREFZOigpPT5oLEpBTlVBUlk6KCk9Pm0sTEFTVF9EQVlfT0ZfV0VFSzooKT0+cCxNT05EQVk6KCk9PmEsU0FUVVJEQVk6KCk9PnUsU1VOREFZOigpPT5zLFRIVVJTREFZOigpPT5kLFRVRVNEQVk6KCk9PmwsV0VETkVTREFZOigpPT5jLGFkZF9kYXRlOigpPT5JLGFkZF9kYXlzX2NvbnNpZGVyaW5nX2RzdDooKT0+TSxhZGRfbWludXRlczooKT0+UixjYWxfdG9fdXRjOigpPT5WLGNsb25lOigpPT5MLGRheXNfcGVyX3llYXI6KCk9PkQsZ2V0X2NhbDooKT0+JCxnZXRfY2FsX2Zyb21fdW5peF90aW1lc3RhbXBfbXM6KCk9PlcsZ2V0X2NhbF91dGM6KCk9PnEsZ2V0X2RheV9vZl9tb250aDooKT0+QyxnZXRfZGF5X29mX3dlZWs6KCk9PmssZ2V0X2RheV9vZl95ZWFyOigpPT5ULGdldF9taW51dGVzX2Zyb21fbWlkbmlnaHQ6KCk9PkUsZ2V0X21pbnV0ZXNfd2l0aF9ob3VyczooKT0+eCxnZXRfbW9udGg6KCk9PmIsZ2V0X3RpbWV6b25lOigpPT5ILGdldF95ZWFyOigpPT55LGlzX2xlYXBfeWVhcjooKT0+TyxtaW51dGVzUGVyRGF5OigpPT52LG1pbnV0ZXNQZXJXZWVrOigpPT5mLHNldF9obXM6KCk9PkEsCnNldF9zZWNvbmRzOigpPT5GLHRpbWVfc2Vjb25kczooKT0+Tix0aW1lX3NlY29uZHNfZGlmZjooKT0+UCx1dGNfdG9fY2FsOigpPT5CfSk7dmFyIGk9byg3MTIxODEpO2NvbnN0IG49ezA6MCwxOjMxLDI6NTksMzo5MCw0OjEyMCw1OjE1MSw2OjE4MSw3OjIxMiw4OjI0Myw5OjI3MywxMDozMDQsMTE6MzM0fTtjbGFzcyBye2NvbnN0cnVjdG9yKGUpe3RoaXMuX2ludmFsaWQ9ITEsdGhpcy5fbmFtZT1lO2xldCB0PWkudHpEYXRhPy5bZV0/P251bGw7IXQmJlUmJih0PVUuaW5zdGFuY2UoKS5nZXRUaW1lem9uZURhdGEoZSkpLHR8fCh0PXt0aW1lOltdLG9mZnNldDpbXX0sdGhpcy5faW52YWxpZD0hMCksdC50aW1lLmxlbmd0aCE9PXQub2Zmc2V0Lmxlbmd0aCYmKHQ9e3RpbWU6W10sb2Zmc2V0OltdfSx0aGlzLl9pbnZhbGlkPSEwKTtjb25zdCBvPXQ7aWYoIW8udGltZV91dGMpe2NvbnN0IGU9dC50aW1lLGk9dC5vZmZzZXQsbj1lLmxlbmd0aCxyPW5ldyBBcnJheShuKTtmb3IobGV0IHQ9MDt0PG47dCsrKWVbdF0qPTFlMyxpW3RdKj0xZTMsclt0XT1lW3RdLWlbdF07by50aW1lX3V0Yz1yfXRoaXMudHo9b31vZmZzZXRfdXRjKGUpe3JldHVybiByLm9mZnNldCh0aGlzLnR6LnRpbWVfdXRjLHRoaXMudHoub2Zmc2V0LGUpfW9mZnNldF9sb2MoZSl7cmV0dXJuIHIub2Zmc2V0KHRoaXMudHoudGltZSx0aGlzLnR6Lm9mZnNldCxlKX1uYW1lKCl7cmV0dXJuIHRoaXMuX25hbWV9aXNfdmFsaWQoKXtyZXR1cm4hdGhpcy5faW52YWxpZH1jb3JyZWN0aW9uX2xvYyhlKXtjb25zdCB0PXRoaXMudHoudGltZSxvPXRoaXMudHoub2Zmc2V0LGk9eih0LGUpO2lmKGk8MSlyZXR1cm4gMDtjb25zdCBuPW9baV0tb1tpLTFdO2lmKG4+MCl7aWYoZS10W2ktMV08PW4pcmV0dXJuIG59cmV0dXJuIDB9c3RhdGljIG9mZnNldChlLHQsbyl7Y29uc3QgaT16KGUsbyk7cmV0dXJuLTE9PT1pPzA6dFtpXX19Y29uc3Qgcz0xLGE9MixsPTMsYz00LGQ9NSxoPTYsdT03LF89cyxwPXUsbT0wLGc9MTEsdj0xNDQwLGY9MTAwODA7ZnVuY3Rpb24geShlKXtyZXR1cm4gZS5nZXRVVENGdWxsWWVhcigpfWZ1bmN0aW9uIGIoZSl7cmV0dXJuIGUuZ2V0VVRDTW9udGgoKX1mdW5jdGlvbiBTKGUpe3JldHVybiBlLmdldFVUQ0hvdXJzKCl9ZnVuY3Rpb24gdyhlKXtyZXR1cm4gZS5nZXRVVENNaW51dGVzKCl9ZnVuY3Rpb24gQyhlKXtyZXR1cm4gZS5nZXRVVENEYXRlKCl9ZnVuY3Rpb24gayhlKXtyZXR1cm4gZS5nZXRVVENEYXkoKSsxfWZ1bmN0aW9uIFQoZSl7Y29uc3QgdD1lLmdldFVUQ01vbnRoKCk7bGV0IG89blt0XTtyZXR1cm4gdD5tKzEmJk8oZS5nZXRVVENGdWxsWWVhcigpKSYmKG8rPTEpLG8rZS5nZXRVVENEYXRlKCl9ZnVuY3Rpb24gRShlKXtyZXR1cm4gNjAqUyhlKSt3KGUpfWZ1bmN0aW9uIHgoZSl7cmV0dXJuIEUoZSl9ZnVuY3Rpb24gQShlLHQsbyxpLG4scil7ZS5zZXRVVENIb3Vycyh0KSxlLnNldFVUQ01pbnV0ZXMobyksZS5zZXRVVENTZWNvbmRzKGkpLGUuc2V0VVRDTWlsbGlzZWNvbmRzKG4pLHZvaWQgMCE9PXImJmZ1bmN0aW9uKGUsdCl7Y29uc3Qgbz1lLmdldFRpbWUoKSxpPXQuY29ycmVjdGlvbl9sb2Mobyk7ZS5zZXRUaW1lKG8raSl9KGUscil9ZnVuY3Rpb24gTShlLHQsbyl7Y29uc3QgaT1lLm9mZnNldF91dGModC5nZXRUaW1lKCkpLG49TCh0KTtJKG4sbyk7Y29uc3Qgcj1lLm9mZnNldF91dGMobi5nZXRUaW1lKCkpO3JldHVybiBuLnNldFRpbWUobi5nZXRUaW1lKCkraS1yKSxufWZ1bmN0aW9uIEkoZSx0KXtlLnNldFRpbWUoZS5nZXRUaW1lKCkrODY0ZTUqdCl9ZnVuY3Rpb24gUihlLHQpe2Uuc2V0VGltZShlLmdldFRpbWUoKSs2MCp0KjFlMyl9ZnVuY3Rpb24gRihlLHQpe2NvbnN0IG89ODY0MDAsaT10JW88MD8tMTowLG49TWF0aC50cnVuYyh0L28pK2kscj10LW4qbyxzPU1hdGgudHJ1bmMoci8zNjAwKSxhPU1hdGgudHJ1bmMociUzNjAwLzYwKTtBKGUscyxhLHItMzYwMCpzLTYwKmEsMCksSShlLG4pfWZ1bmN0aW9uIEwoZSl7cmV0dXJuIG5ldyBEYXRlKGUuZ2V0VGltZSgpKX1mdW5jdGlvbiBEKGUpe3JldHVybiBPKGUpPzM2NjozNjV9ZnVuY3Rpb24gTyhlKXtyZXR1cm4gZSU0PT0wJiYoZSUxMDAhPTB8fGUlNDAwPT0wKX1mdW5jdGlvbiBOKGUpe3JldHVybiAxZTMqZX1mdW5jdGlvbiBQKGUsdCl7cmV0dXJuIEcoZSktRyh0KX1mdW5jdGlvbiBCKGUsdCl7cmV0dXJuIG5ldyBEYXRlKGZ1bmN0aW9uKGUsdCl7Y29uc3Qgbz1lLm9mZnNldF91dGModCk7cmV0dXJuIHQrb30oZSx0KSl9ZnVuY3Rpb24gJChlLHQsbyxpLG4scixzKXtjb25zdCBhPW5ldyBEYXRlKERhdGUuVVRDKHQsbyxpLG58fDAscnx8MCxzfHwwKSksbD1lLm9mZnNldF91dGMoK2EpO3JldHVybiBuZXcgRGF0ZShhLnZhbHVlT2YoKS1sKX1mdW5jdGlvbiBXKGUsdCl7cmV0dXJuIG5ldyBEYXRlKHQrZS5vZmZzZXRfdXRjKHQpKX1mdW5jdGlvbiBxKGUsdCxvLGk9MCxuPTAscj0wKXtyZXR1cm4gbmV3IERhdGUoRGF0ZS5VVEMoZSx0LG8saSxuLHIpKX1mdW5jdGlvbiBWKGUsdCxvKXtsZXQgaT10LmdldFRpbWUoKTtvJiYoaSs9ZS5jb3JyZWN0aW9uX2xvYyhpKSk7cmV0dXJuIGktZS5vZmZzZXRfbG9jKGkpfWZ1bmN0aW9uIEgoZSl7cmV0dXJuIG5ldyByKGUpfWxldCBVO2Z1bmN0aW9uIHooZSx0KXtjb25zdCBvPWUubGVuZ3RoO2lmKDA9PT1vKXJldHVybi0xO2lmKGlzTmFOKHQpKXRocm93IEVycm9yKCJLZXkgaXMgTmFOIik7bGV0IGk9MCxuPW8tMSxyPWooKGkrbikvMik7Zm9yKDs7KXtpZihlW3JdPnQpe2lmKG49ci0xLG48aSlyZXR1cm4gcn1lbHNlIGlmKGk9cisxLG48aSlyZXR1cm4gcjxvLTE/cisxOi0xO3I9aigoaStuKS8yKX19ZnVuY3Rpb24gaihlKXtyZXR1cm4gTWF0aC50cnVuYyhlKX1mdW5jdGlvbiBHKGUpe3JldHVybiBlPDA/aihlLzFlMyktKGUlMWUzIT0wPzE6MCk6aihlLzFlMyl9fSw3NzkzODkoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7QWN0aW9uR3JvdXA6KCk9Pm59KTt2YXIgaT1vKDk5MjgwMyk7Y2xhc3Mgbntjb25zdHJ1Y3RvcihlLHQpe3RoaXMuX2FjdGlvbnM9bmV3IE1hcCx0aGlzLl9tYW5hZ2VyPWUsCnRoaXMub3JkZXI9dD8ub3JkZXI/PzAsdGhpcy5tb2RhbD0hKCF0fHwhdC5tb2RhbCksdCYmKHRoaXMuZGVzYz10LmRlc2MpLHQmJnQuaXNEaXNhYmxlZD8iZnVuY3Rpb24iPT10eXBlb2YgdC5pc0Rpc2FibGVkP3RoaXMuaXNEaXNhYmxlZD10LmlzRGlzYWJsZWQ6dGhpcy5pc0Rpc2FibGVkPSgpPT4hMDp0aGlzLmlzRGlzYWJsZWQ9KCk9PiExLHRoaXMuX21hbmFnZXIucmVnaXN0ZXJHcm91cCh0aGlzKX1hZGQoZSl7bGV0IHQ9dGhpcy5fYWN0aW9ucy5nZXQoZS5ob3RrZXkpO3R8fCh0PVtdLHRoaXMuX2FjdGlvbnMuc2V0KGUuaG90a2V5LHQpKTtjb25zdCBvPW5ldyBpLkFjdGlvbih0aGlzLGUpO3JldHVybiB0LnB1c2gobyksb31yZW1vdmUoZSl7Y29uc3QgdD10aGlzLl9hY3Rpb25zLmdldChlLmhvdGtleSk7aWYoIXQpcmV0dXJuO2NvbnN0IG89dC5maW5kSW5kZXgoKHQ9PnQ9PT1lKSk7bz49MCYmKDE9PT10Lmxlbmd0aD90aGlzLl9hY3Rpb25zLmRlbGV0ZShlLmhvdGtleSk6dC5zcGxpY2UobywxKSl9aGFuZGxlSG90a2V5KGUsdCl7Y29uc3Qgbz10aGlzLl9hY3Rpb25zLmdldChlKTtpZighbylyZXR1cm4hMTtmb3IoY29uc3QgaSBvZiBvKWlmKCghaS5lbGVtZW50fHx0LnRhcmdldCYmaS5lbGVtZW50LmNvbnRhaW5zKHQudGFyZ2V0KSkmJiFpLmlzRGlzYWJsZWQodCkpcmV0dXJuIHQucmVwZWF0JiYhaS5pc1JlcGVhdEFjY2VwdGVkfHwoaS5oYW5kbGVyKHQpLHRoaXMuX2NhbGxNYXRjaGVkSG90a2V5SGFuZGxlcihlKSksdC5wcmV2ZW50RGVmYXVsdCgpLCEwO3JldHVybiExfXByb21vdGUoKXt0aGlzLl9tYW5hZ2VyLnByb21vdGVHcm91cCh0aGlzKX1kZXN0cm95KCl7Zm9yKGNvbnN0WyxlXW9mIHRoaXMuX2FjdGlvbnMpZm9yKGNvbnN0IHQgb2YgZSl0LmRlc3Ryb3koKTt0aGlzLl9hY3Rpb25zLmNsZWFyKCksdGhpcy5fbWFuYWdlci51bnJlZ2lzdGVyR3JvdXAodGhpcyl9c3RhdGljIHNldE1hdGNoZWRIb3RrZXlIYW5kbGVyKGUpe24uX21hdGNoZWRIb3RrZXlIYW5kbGVyPWV9X2NhbGxNYXRjaGVkSG90a2V5SGFuZGxlcihlKXtuLl9tYXRjaGVkSG90a2V5SGFuZGxlciYmbi5fbWF0Y2hlZEhvdGtleUhhbmRsZXIoZSl9fX0sMjkxMzQxKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse0FjdGlvbk1hbmFnZXI6KCk9Pmx9KTt2YXIgaT1vKDIzMjM2NCksbj1vKDIzNTcyNCkscj1vKDcyMTM2OSkscz1vKDY5NjIwOCk7Y2xhc3MgYSBleHRlbmRzIGkuV2F0Y2hlZFZhbHVle3NldFZhbHVlKGUsdCl7Y29uc3Qgbz10aGlzLnZhbHVlKCk7KHR8fHZvaWQgMD09PW98fG8uY29kZSE9PWUuY29kZXx8by5tb2RpZmllcnMhPT1lLm1vZGlmaWVycykmJnN1cGVyLnNldFZhbHVlKGUpfX1jbGFzcyBse2NvbnN0cnVjdG9yKCl7dGhpcy5fZ3JvdXBzPVtdLHRoaXMuX3ByZXNzZWRLZXlzPW5ldyBpLldhdGNoZWRWYWx1ZSgwKSx0aGlzLl9rZXlib2FyZFByZXNzZWRLZXlzU3RhdGU9bmV3IGEobmV3IHMuS2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlKDApKSx0aGlzLl9rZXlEb3duTGlzdGVuZXI9ZT0+e2lmKGUuZGVmYXVsdFByZXZlbnRlZClyZXR1cm47Y29uc3QgdD0oMCxuLmhhc2hGcm9tRXZlbnQpKGUpO2lmKHRoaXMuX3ByZXNzZWRLZXlzLnNldFZhbHVlKHQpLHRoaXMuX2tleWJvYXJkUHJlc3NlZEtleXNTdGF0ZS5zZXRWYWx1ZShuZXcgcy5LZXlib2FyZFByZXNzZWRLZXlzU3RhdGUoKDAsbi5tb2RpZmllcnNGcm9tRXZlbnQpKGUpLGUuY29kZSkpLCEoMCxyLmlzTmF0aXZlVUlJbnRlcmFjdGlvbikodCxlLnRhcmdldCkpZm9yKGxldCBvPXRoaXMuX2dyb3Vwcy5sZW5ndGg7by0tID4wOyl7Y29uc3QgaT10aGlzLl9ncm91cHNbb107aWYoIWkuaXNEaXNhYmxlZCgpKXtpZihpLmhhbmRsZUhvdGtleSh0LGUpKXJldHVybjtpZihpLm1vZGFsKXJldHVybn19fSx0aGlzLl9rZXlVcExpc3RlbmVyPWU9Pntjb25zdCB0PSgwLG4uaGFzaEZyb21FdmVudCkoZSk7dGhpcy5fcHJlc3NlZEtleXMuc2V0VmFsdWUodCksdGhpcy5fa2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlLnNldFZhbHVlKG5ldyBzLktleWJvYXJkUHJlc3NlZEtleXNTdGF0ZSgoMCxuLm1vZGlmaWVyc0Zyb21FdmVudCkoZSksIiIpKX0sdGhpcy5fYmx1ckV2ZW50PSgpPT57dGhpcy5fcHJlc3NlZEtleXMuc2V0VmFsdWUoMCksdGhpcy5fa2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlLnNldFZhbHVlKG5ldyBzLktleWJvYXJkUHJlc3NlZEtleXNTdGF0ZSgwLCIiKSl9LHRoaXMuX21vdXNlRXZlbnQ9ZT0+e2NvbnN0IHQ9KDAsbi5tb2RpZmllcnNGcm9tRXZlbnQpKGUpLG89MjU1Jih0aGlzLl9wcmVzc2VkS2V5cy52YWx1ZSgpPz8wKTt0aGlzLl9wcmVzc2VkS2V5cy5zZXRWYWx1ZSh0fG8pfX1saXN0ZW4oZSl7ZS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIix0aGlzLl9rZXlEb3duTGlzdGVuZXIpLGUuYWRkRXZlbnRMaXN0ZW5lcigia2V5dXAiLHRoaXMuX2tleVVwTGlzdGVuZXIpLGUuYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsdGhpcy5fYmx1ckV2ZW50KSxlLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsdGhpcy5fbW91c2VFdmVudCl9dW5saXN0ZW4oZSl7ZS5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIix0aGlzLl9rZXlEb3duTGlzdGVuZXIpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5dXAiLHRoaXMuX2tleVVwTGlzdGVuZXIpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigiYmx1ciIsdGhpcy5fYmx1ckV2ZW50KSxlLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsdGhpcy5fbW91c2VFdmVudCl9cmVnaXN0ZXJHcm91cChlKXt0aGlzLl9ncm91cHMucHVzaChlKSx0aGlzLnNvcnRHcm91cHMoKX11bnJlZ2lzdGVyR3JvdXAoZSl7Zm9yKGxldCB0PXRoaXMuX2dyb3Vwcy5sZW5ndGg7dC0tOyl0aGlzLl9ncm91cHNbdF09PT1lJiZ0aGlzLl9ncm91cHMuc3BsaWNlKHQsMSl9cHJvbW90ZUdyb3VwKGUpe2NvbnN0IHQ9dGhpcy5fZ2V0TW9kYWxPcmRlckVwb2NoKCksbz1jKGUsdCk7bGV0IGk9dGhpcy5fZ3JvdXBzLmZpbmRJbmRleCgoZT0+YyhlLHQpPT09bykpLG49MAo7Zm9yKDtpPHRoaXMuX2dyb3Vwcy5sZW5ndGgmJmModGhpcy5fZ3JvdXBzW2ldLHQpPT09bzspe2NvbnN0IHI9dGhpcy5fZ3JvdXBzW2ldO3I9PT1lP249MTpjKHIsdCk9PT1vJiYodGhpcy5fZ3JvdXBzW2ktbl09ciksaSsrfXRoaXMuX2dyb3Vwc1tpLW5dPWV9cHJlc3NlZEtleXMoKXtyZXR1cm4gdGhpcy5fcHJlc3NlZEtleXMucmVhZG9ubHkoKX1rZXlib2FyZFByZXNzZWRLZXlzU3RhdGUoKXtyZXR1cm4gdGhpcy5fa2V5Ym9hcmRQcmVzc2VkS2V5c1N0YXRlLnJlYWRvbmx5KCl9c29ydEdyb3Vwcygpe2NvbnN0IGU9dGhpcy5fZ2V0TW9kYWxPcmRlckVwb2NoKCk7dGhpcy5fZ3JvdXBzLnNvcnQoKCh0LG8pPT5jKG8sZSktYyh0LGUpKSl9X2dldE1pbk9yZGVyKCl7cmV0dXJuIHRoaXMuX2dyb3Vwcy5yZWR1Y2UoKChlLHQpPT5NYXRoLm1pbihlLHQub3JkZXIpKSwwKX1fZ2V0TW9kYWxPcmRlckVwb2NoKCl7cmV0dXJuLTIqKE1hdGguYWJzKHRoaXMuX2dldE1pbk9yZGVyKCkpLTEpfX1mdW5jdGlvbiBjKGUsdCl7cmV0dXJuIGUub3JkZXIrKGUubW9kYWw/dDowKX19LDk5MjgwMyhlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtBY3Rpb246KCk9Pml9KTtjbGFzcyBpe2NvbnN0cnVjdG9yKGUsdCl7dGhpcy5fZ3JvdXA9ZTtjb25zdHtob3RrZXk6byxoYW5kbGVyOmksZGVzYzpuLGlzRGlzYWJsZWQ6cixlbGVtZW50OnM9bnVsbCxpc1JlcGVhdEFjY2VwdGVkOmE9ITF9PXQ7dGhpcy5ob3RrZXk9byx0aGlzLmhhbmRsZXI9aSx0aGlzLmRlc2M9bix0aGlzLmVsZW1lbnQ9cyx0aGlzLmlzUmVwZWF0QWNjZXB0ZWQ9YSx0aGlzLmlzRGlzYWJsZWQ9cj8iZnVuY3Rpb24iPT10eXBlb2Ygcj9yOigpPT4hMDooKT0+ITF9ZGVzdHJveSgpe3RoaXMuX2dyb3VwJiYodGhpcy5fZ3JvdXAucmVtb3ZlKHRoaXMpLHRoaXMuX2dyb3VwPW51bGwpfX19LDcyNzA5KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2NyZWF0ZUdyb3VwOigpPT5zfSk7dmFyIGk9bygyOTEzNDEpLG49byg3NzkzODkpO2NvbnN0IHI9bmV3IGkuQWN0aW9uTWFuYWdlcjtyLnByZXNzZWRLZXlzKCksci5rZXlib2FyZFByZXNzZWRLZXlzU3RhdGUoKTtmdW5jdGlvbiBzKGUpe3JldHVybiBuZXcgbi5BY3Rpb25Hcm91cChyLGUpfX0sMjM1NzI0KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse01vZGlmaWVyczooKT0+cyxoYXNoRnJvbUV2ZW50OigpPT5sLGhvdGtleUhhc2hUb0FyaWFLZXlzaG9ydGN1dHM6KCk9PnAsaHVtYW5SZWFkYWJsZUhhc2g6KCk9PnUsaHVtYW5SZWFkYWJsZU1vZGlmaWVyczooKT0+Yyxpc01hY0tleWJvYXJkOigpPT5yLG1vZGlmaWVyc0Zyb21FdmVudDooKT0+YX0pO3ZhciBpLG49byg3Mzg0NTgpOyFmdW5jdGlvbihlKXtlW2UuS2V5Q29kZT0yNTVdPSJLZXlDb2RlIixlW2UuQ29udHJvbD0yNTZdPSJDb250cm9sIixlW2UuQWx0PTUxMl09IkFsdCIsZVtlLlNoaWZ0PTEwMjRdPSJTaGlmdCIsZVtlLk1ldGE9MjA0OF09Ik1ldGEifShpfHwoaT17fSkpO2NvbnN0IHI9bi5pc01hY3x8bi5pc0lPUzt2YXIgcztmdW5jdGlvbiBhKGUpe2xldCB0PTA7cmV0dXJuIGUuc2hpZnRLZXkmJih0Kz0xMDI0KSxlLmFsdEtleSYmKHQrPTUxMiksZS5jdHJsS2V5JiYodCs9MjU2KSxlLm1ldGFLZXkmJih0Kz0yMDQ4KSx0fWZ1bmN0aW9uIGwoZSl7cmV0dXJuIGEoZSl8ZS5rZXlDb2RlfSFmdW5jdGlvbihlKXtlW2UuTm9uZT0wXT0iTm9uZSIsZVtlLkFsdD01MTJdPSJBbHQiLGVbZS5TaGlmdD0xMDI0XT0iU2hpZnQiLGVbZS5Nb2Q9cj8yMDQ4OjI1Nl09Ik1vZCIsZVtlLkNvbnRyb2w9MjU2XT0iQ29udHJvbCIsZVtlLk1ldGE9MjA0OF09Ik1ldGEifShzfHwocz17fSkpO2Z1bmN0aW9uIGMoZSx0PSFyKXtsZXQgbz0iIjtyZXR1cm4gMjU2JmUmJihvKz1fKHI/Il4iOiJDdHJsIix0KSksNTEyJmUmJihvKz1fKHI/IuKMpSI6IkFsdCIsdCkpLDEwMjQmZSYmKG8rPV8ocj8i4oenIjoiU2hpZnQiLHQpKSwyMDQ4JmUmJihvKz1fKHI/IuKMmCI6IldpbiIsdCkpLG99Y29uc3QgZD17OToi4oelIiwxMzoi4oa1IiwyNzoiRXNjIiw4OnI/IuKMqyI6IkJhY2tzcGFjZSIsMzI6IlNwYWNlIiwzNToiRW5kIiwzNjoiSG9tZSIsMzc6IuKGkCIsMzg6IuKGkSIsMzk6IuKGkiIsNDA6IuKGkyIsNDU6IklucyIsNDY6IkRlbCIsMTg4OiIsIiwxOTA6IkRvdCIsMTkxOiIvIn0saD17OToiVGFiIiwxMzoiRW50ZXIiLDI3OiJFc2MiLDg6IkJhY2tzcGFjZSIsMzI6IlNwYWNlIiwzNToiRW5kIiwzNjoiSG9tZSIsMzc6IkFycm93TGVmdCIsMzg6IkFycm93VXAiLDM5OiJBcnJvd1JpZ2h0Iiw0MDoiQXJyb3dEb3duIiw0NToiSW5zIiw0NjoiRGVsIiwxODg6IiwiLDE5MDoiLiIsMTkxOiIvIn07Zm9yKGxldCBlPTE7ZTw9MTY7ZSsrKWRbZSsxMTFdPWBGJHtlfWAsaFtlKzExMV09YEYke2V9YDtmdW5jdGlvbiB1KGUpe2xldCB0PWMoZSk7Y29uc3Qgbz0yNTUmZTtyZXR1cm4gdCs9byBpbiBkP2Rbb106U3RyaW5nLmZyb21DaGFyQ29kZShvKSx0fWZ1bmN0aW9uIF8oZSx0KXtyZXR1cm5gJHtlfSR7dD8iICsgIjpyPyIgIjoiIn1gfWZ1bmN0aW9uIHAoZSl7Y29uc3QgdD1bXTsyNTYmZSYmdC5wdXNoKCJDdHJsIiksNTEyJmUmJnQucHVzaCgiQWx0IiksMTAyNCZlJiZ0LnB1c2goIlNoaWZ0IiksMjA0OCZlJiZ0LnB1c2goIk1ldGEiKTtjb25zdCBvPTI1NSZlO3JldHVybiBvIGluIGQ/dC5wdXNoKGRbb10pOnQucHVzaChTdHJpbmcuZnJvbUNoYXJDb2RlKG8pKSx0LmpvaW4oIisiKX19LDY5NjIwOChlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtLZXlib2FyZFByZXNzZWRLZXlzU3RhdGU6KCk9Pm59KTt2YXIgaT1vKDIzNTcyNCk7Y2xhc3Mgbntjb25zdHJ1Y3RvcihlLHQpe3RoaXMubW9kaWZpZXJzPWUsdGhpcy5jb2RlPXR9YWx0T3JPcHRpb25Db2RlKCl7cmV0dXJuIkFsdExlZnQiPT09dGhpcy5jb2RlfHwiQWx0UmlnaHQiPT09dGhpcy5jb2RlfWNvbnRyb2xPck1ldGFDb2RlKCl7CnJldHVybiBpLmlzTWFjS2V5Ym9hcmQ/Ik1ldGFMZWZ0Ij09PXRoaXMuY29kZXx8Ik1ldGFSaWdodCI9PT10aGlzLmNvZGV8fCJPU0xlZnQiPT09dGhpcy5jb2RlfHwiT1NSaWdodCI9PT10aGlzLmNvZGU6IkNvbnRyb2xMZWZ0Ij09PXRoaXMuY29kZXx8IkNvbnRyb2xSaWdodCI9PT10aGlzLmNvZGV9fX0sNzIxMzY5KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2lzTmF0aXZlVUlJbnRlcmFjdGlvbjooKT0+cixpc1RleHRFZGl0aW5nRmllbGQ6KCk9Pm59KTt2YXIgaT1vKDIzNTcyNCk7ZnVuY3Rpb24gbihlKXtpZigiSU5QVVQiPT09ZS50YWdOYW1lKXtjb25zdCB0PWUudHlwZTtyZXR1cm4idGV4dCI9PT10fHwiZW1haWwiPT09dHx8Im51bWJlciI9PT10fHwicGFzc3dvcmQiPT09dHx8InNlYXJjaCI9PT10fHwidGVsIj09PXR8fCJ1cmwiPT09dH1yZXR1cm4iVEVYVEFSRUEiPT09ZS50YWdOYW1lfHxlLmlzQ29udGVudEVkaXRhYmxlfWZ1bmN0aW9uIHIoZSx0KXtpZighdClyZXR1cm4hMTtjb25zdCBvPTI1NSZlO2lmKDI3PT09b3x8bz4+PjQ9PTcpcmV0dXJuITE7c3dpdGNoKGVebyl7Y2FzZSBpLk1vZGlmaWVycy5BbHQ6cmV0dXJuKDM4PT09b3x8NDA9PT1vKSYmIlNFTEVDVCI9PT10LnRhZ05hbWV8fG4odCk7Y2FzZSBpLk1vZGlmaWVycy5BbHQraS5Nb2RpZmllcnMuU2hpZnQ6cmV0dXJuIG4odCk7Y2FzZSBpLk1vZGlmaWVycy5Nb2Q6aWYoNjc9PT1vfHwhaS5pc01hY0tleWJvYXJkJiY0NT09PW8pe2NvbnN0IGU9dC5vd25lckRvY3VtZW50JiZ0Lm93bmVyRG9jdW1lbnQuZ2V0U2VsZWN0aW9uKCk7aWYoZSYmIWUuaXNDb2xsYXBzZWQpcmV0dXJuITB9cmV0dXJuIG4odCk7Y2FzZSBpLk1vZGlmaWVycy5Nb2QraS5Nb2RpZmllcnMuU2hpZnQ6cmV0dXJuIG8+PTMzJiZvPD00MCYmbih0KTtjYXNlIGkuTW9kaWZpZXJzLlNoaWZ0OmNhc2UgMDpyZXR1cm4gOT09PW8/ISghdC5vd25lckRvY3VtZW50fHx0PT09dC5vd25lckRvY3VtZW50LmJvZHl8fHQ9PT10Lm93bmVyRG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KTooIWZ1bmN0aW9uKGUpe2lmKCJCVVRUT04iPT09ZS50YWdOYW1lKXJldHVybiEwO2lmKCJJTlBVVCI9PT1lLnRhZ05hbWUpe2NvbnN0IHQ9ZS50eXBlO2lmKCJzdWJtaXQiPT09dHx8ImJ1dHRvbiI9PT10fHwicmVzZXQiPT09dHx8ImNoZWNrYm94Ij09PXR8fCJyYWRpbyI9PT10KXJldHVybiEwfXJldHVybiExfSh0KXx8MTM9PT1vfHwzMj09PW98fDk9PT1vKSYmKCJmb3JtImluIHR8fHQuaXNDb250ZW50RWRpdGFibGUpfXJldHVybiExfX0sODY4MTEwKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2FuY2hvcnM6KCk9PnIsbWFrZUFuY2hvcmFibGU6KCk9PnN9KTt2YXIgaSxuPW8oNzc5NDc0KTshZnVuY3Rpb24oZSl7ZS5Ub3A9InRvcCIsZS5Cb3R0b209ImJvdHRvbSIsZS5Ub3BSaWdodD0idG9wUmlnaHQifShpfHwoaT17fSkpO2NvbnN0IHI9e2JvdHRvbTp7YXR0YWNobWVudDp7aG9yaXpvbnRhbDoibGVmdCIsdmVydGljYWw6InRvcCJ9LHRhcmdldEF0dGFjaG1lbnQ6e2hvcml6b250YWw6ImxlZnQiLHZlcnRpY2FsOiJib3R0b20ifX0sdG9wOnthdHRhY2htZW50Ontob3Jpem9udGFsOiJsZWZ0Iix2ZXJ0aWNhbDoiYm90dG9tIn0sdGFyZ2V0QXR0YWNobWVudDp7aG9yaXpvbnRhbDoibGVmdCIsdmVydGljYWw6InRvcCJ9fSx0b3BSaWdodDp7YXR0YWNobWVudDp7aG9yaXpvbnRhbDoicmlnaHQiLHZlcnRpY2FsOiJib3R0b20ifSx0YXJnZXRBdHRhY2htZW50Ontob3Jpem9udGFsOiJyaWdodCIsdmVydGljYWw6InRvcCJ9fSxib3R0b21SaWdodDp7YXR0YWNobWVudDp7aG9yaXpvbnRhbDoicmlnaHQiLHZlcnRpY2FsOiJ0b3AifSx0YXJnZXRBdHRhY2htZW50Ontob3Jpem9udGFsOiJyaWdodCIsdmVydGljYWw6ImJvdHRvbSJ9fX07ZnVuY3Rpb24gcyhlKXt2YXIgdDtyZXR1cm4odD1jbGFzcyBleHRlbmRzIG4uUHVyZUNvbXBvbmVudHtyZW5kZXIoKXtjb25zdHthbmNob3I6dD0iYm90dG9tIn09dGhpcy5wcm9wcztyZXR1cm4gbi5jcmVhdGVFbGVtZW50KGUsey4uLnRoaXMucHJvcHMsYXR0YWNobWVudDpyW3RdLmF0dGFjaG1lbnQsdGFyZ2V0QXR0YWNobWVudDpyW3RdLnRhcmdldEF0dGFjaG1lbnR9KX19KS5kaXNwbGF5TmFtZT0iQW5jaG9yYWJsZSBDb21wb25lbnQiLHR9fSwzODQzNzAoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7bWFrZUF0dGFjaGFibGU6KCk9PnJ9KTt2YXIgaT1vKDc3OTQ3NCksbj1vKDEyOTM2NSk7ZnVuY3Rpb24gcihlKXt2YXIgdDtyZXR1cm4odD1jbGFzcyBleHRlbmRzIGkuUHVyZUNvbXBvbmVudHtjb25zdHJ1Y3RvcihlKXtzdXBlcihlKSx0aGlzLl9nZXRDb21wb25lbnRJbnN0YW5jZT1lPT57dGhpcy5faW5zdGFuY2U9ZX0sdGhpcy5fdGhyb3R0bGVDYWxjUHJvcHM9KCk9PntyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCgpPT50aGlzLnNldFN0YXRlKHRoaXMuX2NhbGNQcm9wcyh0aGlzLnByb3BzKSkpKX0sdGhpcy5zdGF0ZT10aGlzLl9nZXRTdGF0ZUZyb21Qcm9wcygpfWNvbXBvbmVudERpZE1vdW50KCl7dGhpcy5faW5zdGFuY2VFbGVtPW4uZmluZERPTU5vZGUodGhpcy5faW5zdGFuY2UpLHRoaXMucHJvcHMuYXR0YWNoT25jZXx8dGhpcy5fc3Vic2NyaWJlKCksdGhpcy5zZXRTdGF0ZSh0aGlzLl9jYWxjUHJvcHModGhpcy5wcm9wcykpfWNvbXBvbmVudERpZFVwZGF0ZShlKXtlLmNoaWxkcmVuPT09dGhpcy5wcm9wcy5jaGlsZHJlbiYmZS50b3A9PT10aGlzLnByb3BzLnRvcCYmZS5sZWZ0PT09dGhpcy5wcm9wcy5sZWZ0JiZlLndpZHRoPT09dGhpcy5wcm9wcy53aWR0aHx8dGhpcy5zZXRTdGF0ZSh0aGlzLl9nZXRTdGF0ZUZyb21Qcm9wcygpLCgoKT0+dGhpcy5zZXRTdGF0ZSh0aGlzLl9jYWxjUHJvcHModGhpcy5wcm9wcykpKSl9cmVuZGVyKCl7cmV0dXJuIGkuY3JlYXRlRWxlbWVudCgiZGl2Iix7c3R5bGU6e3Bvc2l0aW9uOiJhYnNvbHV0ZSIsd2lkdGg6IjEwMCUiLHRvcDowLGxlZnQ6MH19LGkuY3JlYXRlRWxlbWVudChlLHsuLi50aGlzLnByb3BzLHJlZjp0aGlzLl9nZXRDb21wb25lbnRJbnN0YW5jZSx0b3A6dGhpcy5zdGF0ZS50b3AsCmJvdHRvbTp2b2lkIDAhPT10aGlzLnN0YXRlLmJvdHRvbT90aGlzLnN0YXRlLmJvdHRvbToiYXV0byIscmlnaHQ6dm9pZCAwIT09dGhpcy5zdGF0ZS5yaWdodD90aGlzLnN0YXRlLnJpZ2h0OiJhdXRvIixsZWZ0OnRoaXMuc3RhdGUubGVmdCx3aWR0aDp0aGlzLnN0YXRlLndpZHRoLG1heFdpZHRoOnRoaXMuc3RhdGUubWF4V2lkdGh9LHRoaXMucHJvcHMuY2hpbGRyZW4pKX1jb21wb25lbnRXaWxsVW5tb3VudCgpe3RoaXMuX3Vuc3Vic3JpYmUoKX1fZ2V0U3RhdGVGcm9tUHJvcHMoKXtyZXR1cm57Ym90dG9tOnRoaXMucHJvcHMuYm90dG9tLGxlZnQ6dGhpcy5wcm9wcy5sZWZ0LHJpZ2h0OnRoaXMucHJvcHMucmlnaHQsdG9wOnZvaWQgMCE9PXRoaXMucHJvcHMudG9wP3RoaXMucHJvcHMudG9wOi0xZTQsd2lkdGg6dGhpcy5wcm9wcy5pbmhlcml0V2lkdGhGcm9tVGFyZ2V0P3RoaXMucHJvcHMudGFyZ2V0JiZ0aGlzLnByb3BzLnRhcmdldC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aDp0aGlzLnByb3BzLndpZHRoLG1heFdpZHRoOnRoaXMucHJvcHMuaW5oZXJpdE1heFdpZHRoRnJvbVRhcmdldCYmdGhpcy5wcm9wcy50YXJnZXQmJnRoaXMucHJvcHMudGFyZ2V0LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRofX1fY2FsY1Byb3BzKGUpe2lmKGUudGFyZ2V0JiZlLmF0dGFjaG1lbnQmJmUudGFyZ2V0QXR0YWNobWVudCl7Y29uc3QgdD10aGlzLl9jYWxjVGFyZ2V0UHJvcHMoZS50YXJnZXQsZS5hdHRhY2htZW50LGUudGFyZ2V0QXR0YWNobWVudCk7aWYobnVsbD09PXQpcmV0dXJue307Y29uc3R7d2lkdGg6byxpbmhlcml0V2lkdGhGcm9tVGFyZ2V0Omk9ITAsaW5oZXJpdE1heFdpZHRoRnJvbVRhcmdldDpuPSExfT10aGlzLnByb3BzLHI9e3dpZHRoOmk/dC53aWR0aDpvLG1heFdpZHRoOm4/dC53aWR0aDp2b2lkIDB9O3N3aXRjaChlLmF0dGFjaG1lbnQudmVydGljYWwpe2Nhc2UiYm90dG9tIjpjYXNlIm1pZGRsZSI6ci50b3A9dC55O2JyZWFrO2RlZmF1bHQ6cltlLmF0dGFjaG1lbnQudmVydGljYWxdPXQueX1zd2l0Y2goZS5hdHRhY2htZW50Lmhvcml6b250YWwpe2Nhc2UicmlnaHQiOmNhc2UiY2VudGVyIjpyLmxlZnQ9dC54O2JyZWFrO2RlZmF1bHQ6cltlLmF0dGFjaG1lbnQuaG9yaXpvbnRhbF09dC54fXJldHVybiByfXJldHVybnt9fV9jYWxjVGFyZ2V0UHJvcHMoZSx0LG8pe2NvbnN0IGk9ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxuPXRoaXMuX2luc3RhbmNlRWxlbS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxyPSJwYXJlbnQiPT09dGhpcy5wcm9wcy5yb290P3RoaXMuX2dldENvb3Jkc1JlbFRvUGFyZW50RWwoZSxpKTp0aGlzLl9nZXRDb29yZHNSZWxUb0RvY3VtZW50KGkpO2lmKG51bGw9PT1yKXJldHVybiBudWxsO2NvbnN0IHM9dGhpcy5fZ2V0RGltZW5zaW9ucyhuKSxhPXRoaXMuX2dldERpbWVuc2lvbnMoaSkud2lkdGg7bGV0IGw9MCxjPTA7c3dpdGNoKHQudmVydGljYWwpe2Nhc2UidG9wIjpjPXJbby52ZXJ0aWNhbF07YnJlYWs7Y2FzZSJib3R0b20iOmM9cltvLnZlcnRpY2FsXS1zLmhlaWdodDticmVhaztjYXNlIm1pZGRsZSI6Yz1yW28udmVydGljYWxdLXMuaGVpZ2h0LzJ9c3dpdGNoKHQuaG9yaXpvbnRhbCl7Y2FzZSJsZWZ0IjpsPXJbby5ob3Jpem9udGFsXTticmVhaztjYXNlInJpZ2h0IjpsPXJbby5ob3Jpem9udGFsXS1zLndpZHRoO2JyZWFrO2Nhc2UiY2VudGVyIjpsPXJbby5ob3Jpem9udGFsXS1zLndpZHRoLzJ9cmV0dXJuIm51bWJlciI9PXR5cGVvZiB0aGlzLnByb3BzLmF0dGFjaG1lbnRPZmZzZXRZJiYoYys9dGhpcy5wcm9wcy5hdHRhY2htZW50T2Zmc2V0WSksIm51bWJlciI9PXR5cGVvZiB0aGlzLnByb3BzLmF0dGFjaG1lbnRPZmZzZXRYJiYobCs9dGhpcy5wcm9wcy5hdHRhY2htZW50T2Zmc2V0WCkse3g6bCx5OmMsd2lkdGg6YX19X2dldENvb3Jkc1JlbFRvRG9jdW1lbnQoZSl7Y29uc3QgdD1wYWdlWU9mZnNldCxvPXBhZ2VYT2Zmc2V0LGk9ZS50b3ArdCxuPWUuYm90dG9tK3Qscj1lLmxlZnQrbztyZXR1cm57dG9wOmksYm90dG9tOm4sbGVmdDpyLHJpZ2h0OmUucmlnaHQrbyxtaWRkbGU6KGkrZS5oZWlnaHQpLzIsY2VudGVyOnIrZS53aWR0aC8yfX1fZ2V0Q29vcmRzUmVsVG9QYXJlbnRFbChlLHQpe2NvbnN0IG89ZS5vZmZzZXRQYXJlbnQ7aWYobnVsbD09PW8pcmV0dXJuIG51bGw7Y29uc3QgaT1vLnNjcm9sbFRvcCxuPW8uc2Nyb2xsTGVmdCxyPWUub2Zmc2V0VG9wK2kscz1lLm9mZnNldExlZnQrbixhPXQud2lkdGgrcztyZXR1cm57dG9wOnIsYm90dG9tOnQuaGVpZ2h0K3IsbGVmdDpzLHJpZ2h0OmEsbWlkZGxlOihyK3QuaGVpZ2h0KS8yLGNlbnRlcjoocyt0LndpZHRoKS8yfX1fZ2V0RGltZW5zaW9ucyhlKXtyZXR1cm57aGVpZ2h0OmUuaGVpZ2h0LHdpZHRoOmUud2lkdGh9fV9zdWJzY3JpYmUoKXsiZG9jdW1lbnQiPT09dGhpcy5wcm9wcy5yb290JiYod2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsdGhpcy5fdGhyb3R0bGVDYWxjUHJvcHMsITApLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLHRoaXMuX3Rocm90dGxlQ2FsY1Byb3BzKSl9X3Vuc3Vic3JpYmUoKXt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigic2Nyb2xsIix0aGlzLl90aHJvdHRsZUNhbGNQcm9wcywhMCksd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsdGhpcy5fdGhyb3R0bGVDYWxjUHJvcHMpfX0pLmRpc3BsYXlOYW1lPSJBdHRhY2hhYmxlIENvbXBvbmVudCIsdH19LDM0Mjc4KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2RvQW5pbWF0ZTooKT0+cn0pO2NvbnN0IGk9e2Zyb206MCxkdXJhdGlvbjoyNTAsZWFzaW5nOm8oMjE4ODE0KS5lYXNpbmdGdW5jLmVhc2VPdXRDdWJpY307Y2xhc3Mgbntjb25zdHJ1Y3RvcihlKXt0aGlzLl9kb2luZz0hMCx0aGlzLl9jb21wbGV0ZWQ9ITEsdGhpcy5fb3B0aW9ucz17Li4uaSwuLi5lfTtjb25zdCB0PXBlcmZvcm1hbmNlLm5vdygpO3dpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKGU9Pnt0aGlzLl9hbmltYXRpb24odCx0aGlzLl9vcHRpb25zLmZyb20sZSl9KSl9c3RvcCgpewp0aGlzLl9kb2luZz0hMX1jb21wbGV0ZWQoKXtyZXR1cm4gdGhpcy5fY29tcGxldGVkfV9hbmltYXRpb24oZSx0LG8pe2lmKCF0aGlzLl9kb2luZylyZXR1cm4gdm9pZCB0aGlzLl9maW5pc2hBbmltYXRpb24oKTtjb25zdCBpPShvPSFvfHxvPDFlMTI/cGVyZm9ybWFuY2Uubm93KCk6byktZSxuPWk+PXRoaXMuX29wdGlvbnMuZHVyYXRpb258fHQ9PT10aGlzLl9vcHRpb25zLnRvLHI9KHM9dGhpcy5fb3B0aW9ucy5mcm9tLGE9dGhpcy5fb3B0aW9ucy50byxsPXRoaXMuX29wdGlvbnMuZWFzaW5nKGkvdGhpcy5fb3B0aW9ucy5kdXJhdGlvbikscyooMS1sKSthKmwpO3ZhciBzLGEsbDtjb25zdCBjPW4/dGhpcy5fb3B0aW9ucy50bzpyLGQ9Yy10O3RoaXMuX29wdGlvbnMub25TdGVwKGQsYyksbj90aGlzLl9maW5pc2hBbmltYXRpb24oKTp3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKCh0PT57dGhpcy5fYW5pbWF0aW9uKGUsYyx0KX0pKX1fZmluaXNoQW5pbWF0aW9uKCl7dGhpcy5fb3B0aW9ucy5vbkNvbXBsZXRlJiZ0aGlzLl9vcHRpb25zLm9uQ29tcGxldGUoKSx0aGlzLl9jb21wbGV0ZWQ9ITB9fWZ1bmN0aW9uIHIoZSl7cmV0dXJuIG5ldyBuKGUpfX0sNzgwMzc0KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse0RyYWdnYWJsZTooKT0+cn0pO3ZhciBpPW8oMTM4NjM4KSxuPW8oMzE0NzIwKTtvKDg0ODUyNyk7Y2xhc3Mgcntjb25zdHJ1Y3RvcihlKXt0aGlzLl9oZWxwZXI9bnVsbCx0aGlzLl9oYW5kbGVEcmFnU3RhcnQ9ZT0+e2lmKG51bGwhPT10aGlzLl9oZWxwZXIpcmV0dXJuO2NvbnN0IHQ9dGhpcy5fc291cmNlO3QuY2xhc3NMaXN0LmFkZCgidWktZHJhZ2dhYmxlLWRyYWdnaW5nIik7Y29uc3RbbyxpXT1bKDAsbi5vdXRlcldpZHRoKSh0KSwoMCxuLm91dGVySGVpZ2h0KSh0KV07dGhpcy5faGVscGVyPXtzdGFydFRvcDpwYXJzZUZsb2F0KHQuc3R5bGUudG9wKXx8MCxzdGFydExlZnQ6cGFyc2VGbG9hdCh0LnN0eWxlLmxlZnQpfHwwLG5leHRUb3A6bnVsbCxuZXh0TGVmdDpudWxsLHJhZjpudWxsLHNpemU6W28saV0sY29udGFpbm1lbnQ6dGhpcy5fY29udGFpbm1lbnQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudD9bcGFyc2VJbnQoZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLl9jb250YWlubWVudCkuYm9yZGVyTGVmdFdpZHRoKStwYXJzZUludChnZXRDb21wdXRlZFN0eWxlKHRoaXMuX2NvbnRhaW5tZW50KS5wYWRkaW5nTGVmdCkscGFyc2VJbnQoZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLl9jb250YWlubWVudCkuYm9yZGVyVG9wV2lkdGgpK3BhcnNlSW50KGdldENvbXB1dGVkU3R5bGUodGhpcy5fY29udGFpbm1lbnQpLnBhZGRpbmdUb3ApLHRoaXMuX2NvbnRhaW5tZW50Lm9mZnNldFdpZHRoLXBhcnNlSW50KGdldENvbXB1dGVkU3R5bGUodGhpcy5fY29udGFpbm1lbnQpLmJvcmRlclJpZ2h0V2lkdGgpLXBhcnNlSW50KGdldENvbXB1dGVkU3R5bGUodGhpcy5fY29udGFpbm1lbnQpLnBhZGRpbmdSaWdodCktcGFyc2VJbnQoZ2V0Q29tcHV0ZWRTdHlsZSh0KS5tYXJnaW5MZWZ0KS1wYXJzZUludChnZXRDb21wdXRlZFN0eWxlKHQpLm1hcmdpblJpZ2h0KS1vLHRoaXMuX2NvbnRhaW5tZW50Lm9mZnNldEhlaWdodC1wYXJzZUludChnZXRDb21wdXRlZFN0eWxlKHRoaXMuX2NvbnRhaW5tZW50KS5ib3JkZXJCb3R0b21XaWR0aCktcGFyc2VJbnQoZ2V0Q29tcHV0ZWRTdHlsZSh0aGlzLl9jb250YWlubWVudCkucGFkZGluZ0JvdHRvbSktcGFyc2VJbnQoZ2V0Q29tcHV0ZWRTdHlsZSh0KS5tYXJnaW5Ub3ApLXBhcnNlSW50KGdldENvbXB1dGVkU3R5bGUodCkubWFyZ2luQm90dG9tKS1pXToid2luZG93Ij09PXRoaXMuX2NvbnRhaW5tZW50P1t3aW5kb3cuc2Nyb2xsWCx3aW5kb3cuc2Nyb2xsWSx3aW5kb3cuc2Nyb2xsWCtkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQub2Zmc2V0V2lkdGgtbyx3aW5kb3cuc2Nyb2xsWStkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQub2Zmc2V0SGVpZ2h0LWldOm51bGx9LHRoaXMuX3N0YXJ0Py4oKX0sdGhpcy5faGFuZGxlRHJhZ01vdmU9ZT0+e2lmKG51bGw9PT10aGlzLl9oZWxwZXIpcmV0dXJuO2NvbnN0e2N1cnJlbnQ6dCxpbml0aWFsOm99PWUuZGV0YWlsLGk9dGhpcy5fc291cmNlLG49dGhpcy5faGVscGVyLm5leHRUb3Ascj10aGlzLl9oZWxwZXIubmV4dExlZnQscz0ieSI9PT10aGlzLl9heGlzfHwhMT09PXRoaXMuX2F4aXN8fDAhPT10Lm1vdmVtZW50WTtpZihzKXtjb25zdCBlPXRoaXMuX2hlbHBlci5zdGFydFRvcDtpc0Zpbml0ZShlKSYmKHRoaXMuX2hlbHBlci5uZXh0VG9wPXQuY2xpZW50WS1vLmNsaWVudFkrZSl9Y29uc3QgYT0ieCI9PT10aGlzLl9heGlzfHwhMT09PXRoaXMuX2F4aXN8fDAhPT10Lm1vdmVtZW50WTtpZihhKXtjb25zdCBlPXRoaXMuX2hlbHBlci5zdGFydExlZnQ7aXNGaW5pdGUoZSkmJih0aGlzLl9oZWxwZXIubmV4dExlZnQ9dC5jbGllbnRYLW8uY2xpZW50WCtlKX1pZihudWxsIT09dGhpcy5faGVscGVyLmNvbnRhaW5tZW50KXtjb25zdFtlLHQsbyxpXT10aGlzLl9oZWxwZXIuY29udGFpbm1lbnQ7cyYmdGhpcy5faGVscGVyLm5leHRUb3AmJih0aGlzLl9oZWxwZXIubmV4dFRvcD1NYXRoLm1pbih0aGlzLl9oZWxwZXIubmV4dFRvcCxpKSx0aGlzLl9oZWxwZXIubmV4dFRvcD1NYXRoLm1heCh0aGlzLl9oZWxwZXIubmV4dFRvcCx0KSksYSYmdGhpcy5faGVscGVyLm5leHRMZWZ0JiYodGhpcy5faGVscGVyLm5leHRMZWZ0PU1hdGgubWluKHRoaXMuX2hlbHBlci5uZXh0TGVmdCxvKSx0aGlzLl9oZWxwZXIubmV4dExlZnQ9TWF0aC5tYXgodGhpcy5faGVscGVyLm5leHRMZWZ0LGUpKX1udWxsIT09dGhpcy5faGVscGVyLnJhZnx8bj09PXRoaXMuX2hlbHBlci5uZXh0VG9wJiZyPT09dGhpcy5faGVscGVyLm5leHRMZWZ0fHwodGhpcy5faGVscGVyLnJhZj1yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCgpPT57bnVsbCE9PXRoaXMuX2hlbHBlciYmKG51bGwhPT10aGlzLl9oZWxwZXIubmV4dFRvcCYmKGkuc3R5bGUudG9wPXRoaXMuX2hlbHBlci5uZXh0VG9wKyJweCIsdGhpcy5faGVscGVyLm5leHRUb3A9bnVsbCksCm51bGwhPT10aGlzLl9oZWxwZXIubmV4dExlZnQmJihpLnN0eWxlLmxlZnQ9dGhpcy5faGVscGVyLm5leHRMZWZ0KyJweCIsdGhpcy5faGVscGVyLm5leHRMZWZ0PW51bGwpLHRoaXMuX2hlbHBlci5yYWY9bnVsbCl9KSkpLHRoaXMuX2RyYWc/LigpfSx0aGlzLl9oYW5kbGVEcmFnU3RvcD1lPT57aWYobnVsbD09PXRoaXMuX2hlbHBlcilyZXR1cm47dGhpcy5fc291cmNlLmNsYXNzTGlzdC5yZW1vdmUoInVpLWRyYWdnYWJsZS1kcmFnZ2luZyIpLHRoaXMuX2hlbHBlcj1udWxsLHRoaXMuX3N0b3A/LigpfTtjb25zdCB0PXRoaXMuX3NvdXJjZT1lLnNvdXJjZTt0LmNsYXNzTGlzdC5hZGQoInVpLWRyYWdnYWJsZSIpO2NvbnN0IG89dGhpcy5faGFuZGxlPShlLmhhbmRsZT90LnF1ZXJ5U2VsZWN0b3IoZS5oYW5kbGUpOm51bGwpPz90O28uY2xhc3NMaXN0LmFkZCgidWktZHJhZ2dhYmxlLWhhbmRsZSIpLHRoaXMuX3N0YXJ0PWUuc3RhcnQsdGhpcy5fc3RvcD1lLnN0b3AsdGhpcy5fZHJhZz1lLmRyYWcsdGhpcy5fYmFja2VuZD1uZXcgcyh7aGFuZGxlOm8sb25EcmFnU3RhcnQ6dGhpcy5faGFuZGxlRHJhZ1N0YXJ0LG9uRHJhZ01vdmU6dGhpcy5faGFuZGxlRHJhZ01vdmUsb25EcmFnU3RvcDp0aGlzLl9oYW5kbGVEcmFnU3RvcH0pLHRoaXMuX2F4aXM9ZS5heGlzPz8hMSx0aGlzLl9jb250YWlubWVudD1lLmNvbnRhaW5tZW50fWRlc3Ryb3koKXtjb25zdCBlPXRoaXMuX3NvdXJjZTtlLmNsYXNzTGlzdC5yZW1vdmUoInVpLWRyYWdnYWJsZSIpLGUuY2xhc3NMaXN0LnJlbW92ZSgidWktZHJhZ2dhYmxlLWRyYWdnaW5nIik7dGhpcy5faGFuZGxlLmNsYXNzTGlzdC5yZW1vdmUoInVpLWRyYWdnYWJsZS1oYW5kbGUiKSx0aGlzLl9iYWNrZW5kLmRlc3Ryb3koKSxudWxsIT09dGhpcy5faGVscGVyJiYodGhpcy5faGVscGVyLnJhZiYmY2FuY2VsQW5pbWF0aW9uRnJhbWUodGhpcy5faGVscGVyLnJhZiksdGhpcy5faGVscGVyPW51bGwpfX1jbGFzcyBze2NvbnN0cnVjdG9yKGUpe3RoaXMuX3BvaW50ZXJTdGFydGVkPSExLHRoaXMuX2luaXRpYWw9bnVsbCx0aGlzLl9oYW5kbGVQb2ludGVyRG93bj1lPT57aWYobnVsbCE9PXRoaXMuX2luaXRpYWx8fDAhPT1lLmJ1dHRvbilyZXR1cm47aWYoIShlLnRhcmdldCBpbnN0YW5jZW9mIEVsZW1lbnQmJnRoaXMuX2hhbmRsZS5jb250YWlucyhlLnRhcmdldCkpKXJldHVybjtpZih0aGlzLl9pbml0aWFsPWUsIXRoaXMuX2Rpc3RhbmNlJiYodGhpcy5fcG9pbnRlclN0YXJ0KCksIXRoaXMuX3BvaW50ZXJTdGFydGVkKSlyZXR1cm47ZS5wcmV2ZW50RGVmYXVsdCgpO2NvbnN0IHQ9dGhpcy5fZ2V0RXZlbnRUYXJnZXQoKTt0LmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJtb3ZlIix0aGlzLl9oYW5kbGVQb2ludGVyTW92ZSksdC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVydXAiLHRoaXMuX2hhbmRsZVBvaW50ZXJVcCksdC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVyY2FuY2VsIix0aGlzLl9oYW5kbGVQb2ludGVyVXApLHQuYWRkRXZlbnRMaXN0ZW5lcigibG9zdHBvaW50ZXJjYXB0dXJlIix0aGlzLl9oYW5kbGVMb3N0UG9pbnRlckNhcHR1cmUpfSx0aGlzLl9oYW5kbGVMb3N0UG9pbnRlckNhcHR1cmU9ZT0+e3RoaXMuX2dldEV2ZW50VGFyZ2V0KCk9PT1lLnRhcmdldCYmdGhpcy5faGFuZGxlUG9pbnRlclVwKGUpfSx0aGlzLl9oYW5kbGVQb2ludGVyTW92ZT1lPT57aWYobnVsbCE9PXRoaXMuX2luaXRpYWwmJnRoaXMuX2luaXRpYWwucG9pbnRlcklkPT09ZS5wb2ludGVySWQpaWYodGhpcy5fcG9pbnRlclN0YXJ0ZWQpdGhpcy5fcG9pbnRlckRyYWcoZSk7ZWxzZSBpZih0aGlzLl9wb2ludGVyRGlzdGFuY2VNZXQoZSkpe2lmKHRoaXMuX3BvaW50ZXJTdGFydCgpLHRoaXMuX3BvaW50ZXJTdGFydGVkKXJldHVybiB2b2lkIHRoaXMuX3BvaW50ZXJEcmFnKGUpO3RoaXMuX2hhbmRsZVBvaW50ZXJVcChlKX19LHRoaXMuX2hhbmRsZVBvaW50ZXJVcD1lPT57aWYobnVsbD09PXRoaXMuX2luaXRpYWx8fHRoaXMuX2luaXRpYWwucG9pbnRlcklkIT09ZS5wb2ludGVySWQpcmV0dXJuO2UucHJldmVudERlZmF1bHQoKTtjb25zdCB0PXRoaXMuX2dldEV2ZW50VGFyZ2V0KCk7dC5yZW1vdmVFdmVudExpc3RlbmVyKCJwb2ludGVybW92ZSIsdGhpcy5faGFuZGxlUG9pbnRlck1vdmUpLHQucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9pbnRlcnVwIix0aGlzLl9oYW5kbGVQb2ludGVyVXApLHQucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9pbnRlcmNhbmNlbCIsdGhpcy5faGFuZGxlUG9pbnRlclVwKSx0LnJlbW92ZUV2ZW50TGlzdGVuZXIoImxvc3Rwb2ludGVyY2FwdHVyZSIsdGhpcy5faGFuZGxlUG9pbnRlclVwKSx0aGlzLl9wb2ludGVyU3RhcnRlZCYmKHRoaXMuX3BvaW50ZXJTdGFydGVkPSExLHQucmVsZWFzZVBvaW50ZXJDYXB0dXJlKHRoaXMuX2luaXRpYWwucG9pbnRlcklkKSx0aGlzLl9kaXNwYXRjaEV2ZW50KHRoaXMuX2NyZWF0ZUV2ZW50KCJwb2ludGVyLWRyYWctc3RvcCIsZSkpKSx0aGlzLl9pbml0aWFsPW51bGx9O2NvbnN0IHQ9dGhpcy5faGFuZGxlPWUuaGFuZGxlO3RoaXMuX29uRHJhZ1N0YXJ0PWUub25EcmFnU3RhcnQsdGhpcy5fb25EcmFnTW92ZT1lLm9uRHJhZ01vdmUsdGhpcy5fb25EcmFnU3RvcD1lLm9uRHJhZ1N0b3AsdGhpcy5fZGlzdGFuY2U9ZS5kaXN0YW5jZT8/MCx0aGlzLl9yb290RWxlbWVudD1lLnJvb3RFbGVtZW50LHQuc3R5bGUudG91Y2hBY3Rpb249Im5vbmUiLHQuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcmRvd24iLHRoaXMuX2hhbmRsZVBvaW50ZXJEb3duKX1kZXN0cm95KCl7Y29uc3QgZT10aGlzLl9oYW5kbGU7ZS5zdHlsZS50b3VjaEFjdGlvbj0iIixlLnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvaW50ZXJkb3duIix0aGlzLl9oYW5kbGVQb2ludGVyRG93biksZS5yZW1vdmVFdmVudExpc3RlbmVyKCJwb2ludGVybW92ZSIsdGhpcy5faGFuZGxlUG9pbnRlck1vdmUpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9pbnRlcnVwIix0aGlzLl9oYW5kbGVQb2ludGVyVXApLAplLnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvaW50ZXJjYW5jZWwiLHRoaXMuX2hhbmRsZVBvaW50ZXJVcCksZS5yZW1vdmVFdmVudExpc3RlbmVyKCJsb3N0cG9pbnRlcmNhcHR1cmUiLHRoaXMuX2hhbmRsZVBvaW50ZXJVcCksbnVsbCE9PXRoaXMuX2luaXRpYWwmJihlLnJlbGVhc2VQb2ludGVyQ2FwdHVyZSh0aGlzLl9pbml0aWFsLnBvaW50ZXJJZCksdGhpcy5faW5pdGlhbD1udWxsKSx0aGlzLl9wb2ludGVyU3RhcnRlZD0hMX1fcG9pbnRlclN0YXJ0KCl7aWYoIXRoaXMuX2luaXRpYWwpcmV0dXJuO2NvbnN0IGU9dGhpcy5fZ2V0RXZlbnRUYXJnZXQoKTt0aGlzLl9kaXNwYXRjaEV2ZW50KHRoaXMuX2NyZWF0ZUV2ZW50KCJwb2ludGVyLWRyYWctc3RhcnQiLHRoaXMuX2luaXRpYWwpKT8odGhpcy5fcG9pbnRlclN0YXJ0ZWQ9ITAsZS5zZXRQb2ludGVyQ2FwdHVyZSh0aGlzLl9pbml0aWFsLnBvaW50ZXJJZCkpOnRoaXMuX2luaXRpYWw9bnVsbH1fcG9pbnRlckRyYWcoZSl7ZS5wcmV2ZW50RGVmYXVsdCgpLHRoaXMuX2Rpc3BhdGNoRXZlbnQodGhpcy5fY3JlYXRlRXZlbnQoInBvaW50ZXItZHJhZy1tb3ZlIixlKSl9X3BvaW50ZXJEaXN0YW5jZU1ldChlKXtyZXR1cm4hdGhpcy5faW5pdGlhbHx8IXRoaXMuX2Rpc3RhbmNlfHxNYXRoLm1heChNYXRoLmFicyh0aGlzLl9pbml0aWFsLmNsaWVudFgtZS5jbGllbnRYKSxNYXRoLmFicyh0aGlzLl9pbml0aWFsLmNsaWVudFktZS5jbGllbnRZKSk+PXRoaXMuX2Rpc3RhbmNlfV9nZXRFdmVudFRhcmdldCgpe3JldHVybiB0aGlzLl9yb290RWxlbWVudD8/dGhpcy5faGFuZGxlfV9kaXNwYXRjaEV2ZW50KGUpe3N3aXRjaChlLnR5cGUpe2Nhc2UicG9pbnRlci1kcmFnLXN0YXJ0Ijp0aGlzLl9vbkRyYWdTdGFydChlKTticmVhaztjYXNlInBvaW50ZXItZHJhZy1tb3ZlIjp0aGlzLl9vbkRyYWdNb3ZlKGUpO2JyZWFrO2Nhc2UicG9pbnRlci1kcmFnLXN0b3AiOnRoaXMuX29uRHJhZ1N0b3AoZSl9cmV0dXJuIWUuZGVmYXVsdFByZXZlbnRlZH1fY3JlYXRlRXZlbnQoZSx0KXtyZXR1cm4oMCxpLmFzc2VydCkobnVsbCE9PXRoaXMuX2luaXRpYWwpLG5ldyBDdXN0b21FdmVudChlLHtidWJibGVzOiEwLGNhbmNlbGFibGU6ITAsZGV0YWlsOntiYWNrZW5kOnRoaXMsaW5pdGlhbDp0aGlzLl9pbml0aWFsLGN1cnJlbnQ6dH19KX19fSw0MDYxMTAoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7TWF0Y2hNZWRpYTooKT0+bn0pO3ZhciBpPW8oNzc5NDc0KTtjbGFzcyBuIGV4dGVuZHMgaS5QdXJlQ29tcG9uZW50e2NvbnN0cnVjdG9yKGUpe3N1cGVyKGUpLHRoaXMuX2hhbmRsZUNoYW5nZT0oKT0+e3RoaXMuZm9yY2VVcGRhdGUoKX0sdGhpcy5zdGF0ZT17cXVlcnk6d2luZG93Lm1hdGNoTWVkaWEodGhpcy5wcm9wcy5ydWxlKX19Y29tcG9uZW50RGlkTW91bnQoKXt0aGlzLl9zdWJzY3JpYmUodGhpcy5zdGF0ZS5xdWVyeSl9Y29tcG9uZW50RGlkVXBkYXRlKGUsdCl7dGhpcy5zdGF0ZS5xdWVyeSE9PXQucXVlcnkmJih0aGlzLl91bnN1YnNjcmliZSh0LnF1ZXJ5KSx0aGlzLl9zdWJzY3JpYmUodGhpcy5zdGF0ZS5xdWVyeSkpfWNvbXBvbmVudFdpbGxVbm1vdW50KCl7dGhpcy5fdW5zdWJzY3JpYmUodGhpcy5zdGF0ZS5xdWVyeSl9cmVuZGVyKCl7cmV0dXJuIHRoaXMucHJvcHMuY2hpbGRyZW4odGhpcy5zdGF0ZS5xdWVyeS5tYXRjaGVzKX1zdGF0aWMgZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzKGUsdCl7cmV0dXJuIGUucnVsZSE9PXQucXVlcnkubWVkaWE/e3F1ZXJ5OndpbmRvdy5tYXRjaE1lZGlhKGUucnVsZSl9Om51bGx9X3N1YnNjcmliZShlKXtlLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsdGhpcy5faGFuZGxlQ2hhbmdlKX1fdW5zdWJzY3JpYmUoZSl7ZS5yZW1vdmVFdmVudExpc3RlbmVyKCJjaGFuZ2UiLHRoaXMuX2hhbmRsZUNoYW5nZSl9fX0sNzc4NDU4KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2JyZWFrcG9pbnRzOigpPT5pLG1vYmlsZUZpcnN0QnJlYWtwb2ludHM6KCk9Pm4sbW9iaWxlRmlyc3RMZWdhY3lCcmVha3BvaW50czooKT0+cn0pO2NvbnN0IGk9e2Rlc2t0b3A6MS8wLGRlc2t0b3BIZDoxOTE5LHBob25lOjc2NywicGhvbmUtdmVydGljYWwiOjQ3OSx0YWJsZXQ6MTAxOX0sbj17YmFzZTowLCJtZWRpYS1tZi1waG9uZS12ZXJ0aWNhbCI6MzIwLCJtZWRpYS1tZi1waG9uZS1sYW5kc2NhcGUiOjU2OCwibWVkaWEtbWYtdGFibGV0LXZlcnRpY2FsIjo3NjgsIm1lZGlhLW1mLXRhYmxldC1sYW5kc2NhcGUiOjEwMjQsIm1lZGlhLW1mLWxhcHRvcCI6MTI4MCwibWVkaWEtbWYtZGVza3RvcC1tZWRpdW0iOjE0NDAsIm1lZGlhLW1mLWRlc2t0b3AtbGFyZ2UiOjE5MjAsIm1lZGlhLW1mLWRlc2t0b3AtZXh0cmEtbGFyZ2UiOjI1NjB9LHI9eyJtZWRpYS1tZi1sZWdhY3ktcGhvbmUtdmVydGljYWwiOjMzMCwibWVkaWEtbWYtbGVnYWN5LXBob25lIjo0ODAsIm1lZGlhLW1mLWxlZ2FjeS1ub3RlYm9vayI6MTAyMCwibWVkaWEtbWYtbGVnYWN5LWRlc2t0b3AtbWVkaXVtIjoxNDgwLCJtZWRpYS1tZi1sZWdhY3ktZGVza3RvcCI6MTUzMX19LDI3NjAxOShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtnbG9iYWxDbG9zZURlbGVnYXRlOigpPT5pLGdsb2JhbENsb3NlTWVudTooKT0+bn0pO2NvbnN0IGk9bmV3KG8oOTQ4MzgwKS5EZWxlZ2F0ZSk7ZnVuY3Rpb24gbigpe2kuZmlyZSgpfX0sNjA5NTI4KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse0RpYWxvZ0JyZWFrcG9pbnRzOigpPT5ufSk7dmFyIGk9byg5MjQ1MDcpO2NvbnN0IG49e1NtYWxsSGVpZ2h0OmlbInNtYWxsLWhlaWdodC1icmVha3BvaW50Il0sVGFibGV0U21hbGw6aVsidGFibGV0LXNtYWxsLWJyZWFrcG9pbnQiXSxUYWJsZXROb3JtYWw6aVsidGFibGV0LW5vcm1hbC1icmVha3BvaW50Il19fSw5OTU2NzgoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7cmVsZWFzZU1vZGFsU2Nyb2xsTG9jazooKT0+cyxyZXF1ZXN0TW9kYWxTY3JvbGxMb2NrOigpPT5yfSk7Y29uc3QgaT0ibW9kYWwtc2Nyb2xsLWxvY2stcmVxdWVzdCIsbj0ibW9kYWwtc2Nyb2xsLWxvY2stcmVsZWFzZSIKO2Z1bmN0aW9uIHIoZSl7ZS5kaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudChpKSl9ZnVuY3Rpb24gcyhlKXtlLmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KG4pKX19LDY1OTg3OChlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHttYWtlT3ZlcmxhcGFibGU6KCk9PnJ9KTt2YXIgaT1vKDc3OTQ3NCksbj1vKDU4NTQ4KTtmdW5jdGlvbiByKGUsdCl7cmV0dXJuIGNsYXNzIGV4dGVuZHMgaS5QdXJlQ29tcG9uZW50e3JlbmRlcigpe2NvbnN0e2lzT3BlbmVkOm8scm9vdDpyfT10aGlzLnByb3BzO2lmKCFvKXJldHVybiBudWxsO2NvbnN0IHM9aS5jcmVhdGVFbGVtZW50KGUsey4uLnRoaXMucHJvcHMscmVmOnRoaXMucHJvcHMuY29tcG9uZW50UmVmLHpJbmRleDoxNTB9KTtyZXR1cm4icGFyZW50Ij09PXI/czppLmNyZWF0ZUVsZW1lbnQobi5Qb3J0YWwse3Nob3VsZFRyYXBGb2N1czp0fSxzKX19fX0sNTU4MDMwKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse1RvdWNoU2Nyb2xsQ29udGFpbmVyOigpPT5jfSk7dmFyIGk9byg3Nzk0NzQpLG49byg4NTMzMzYpLHI9bygxMzg2MzgpLHM9byg3Mzg0NTgpO2NvbnN0IGE9Q1NTLnN1cHBvcnRzKCJvdmVyc2Nyb2xsLWJlaGF2aW9yIiwibm9uZSIpO2xldCBsPTA7Y29uc3QgYz0oMCxpLmZvcndhcmRSZWYpKCgoZSx0KT0+e2NvbnN0e2NoaWxkcmVuOm8sLi4ucn09ZSxjPSgwLGkudXNlUmVmKShudWxsKTtyZXR1cm4oMCxpLnVzZUltcGVyYXRpdmVIYW5kbGUpKHQsKCgpPT5jLmN1cnJlbnQpKSwoMCxpLnVzZUxheW91dEVmZmVjdCkoKCgpPT57aWYocy5pc0lPUylyZXR1cm4gbCsrLG51bGwhPT1jLmN1cnJlbnQmJihhPzE9PT1sJiYoZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyc2Nyb2xsQmVoYXZpb3I9Im5vbmUiKTooMCxuLmRpc2FibGVCb2R5U2Nyb2xsKShjLmN1cnJlbnQse2FsbG93VG91Y2hNb3ZlOmQoYyl9KSksKCk9PntsLS0sbnVsbCE9PWMuY3VycmVudCYmKGE/MD09PWwmJihkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJzY3JvbGxCZWhhdmlvcj0iIik6KDAsbi5lbmFibGVCb2R5U2Nyb2xsKShjLmN1cnJlbnQpKX19KSxbXSksaS5jcmVhdGVFbGVtZW50KCJkaXYiLHtyZWY6YywuLi5yfSxvKX0pKTtmdW5jdGlvbiBkKGUpe3JldHVybiB0PT57Y29uc3Qgbz0oMCxyLmVuc3VyZU5vdE51bGwpKGUuY3VycmVudCksaT1kb2N1bWVudC5hY3RpdmVFbGVtZW50O3JldHVybiFvLmNvbnRhaW5zKHQpfHxudWxsIT09aSYmby5jb250YWlucyhpKSYmaS5jb250YWlucyh0KX19fSw5OTk1MShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtBcHBDb250ZXh0OigpPT5pfSk7Y29uc3QgaT0oMCxvKDc3OTQ3NCkuY3JlYXRlQ29udGV4dCkoe2lzT25Nb2JpbGVBcHBQYWdlOigpPT4hMSxpc1J0bDohMSxsb2NhbGU6ImVuIixyZW5kZXJNb2RlOiJsZWdhY3kifSl9LDE1NDYyMyhlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtwcmVzZXREZWZhdWx0OigpPT5pLHByZXNldFBsYXRmb3JtOigpPT5ufSk7Y29uc3QgaT17ZW5hYmxlQWN0aXZlU3RhdGVTdHlsZXM6ITB9LG49e2VuYWJsZUFjdGl2ZVN0YXRlU3R5bGVzOiExfX0sMjE4ODE0KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2NvbG9yOigpPT5yLGR1cjooKT0+aSxlYXNpbmdGdW5jOigpPT5ufSk7Y29uc3QgaT0zNTAsbj17bGluZWFyOmU9PmUsZWFzZUluUXVhZDplPT5lKmUsZWFzZU91dFF1YWQ6ZT0+ZSooMi1lKSxlYXNlSW5PdXRRdWFkOmU9PmU8LjU/MiplKmU6KDQtMiplKSplLTEsZWFzZUluQ3ViaWM6ZT0+ZSplKmUsZWFzZU91dEN1YmljOmU9Pi0tZSplKmUrMSxlYXNlSW5PdXRDdWJpYzplPT5lPC41PzQqZSplKmU6KGUtMSkqKDIqZS0yKSooMiplLTIpKzEsZWFzZUluUXVhcnQ6ZT0+ZSplKmUqZSxlYXNlT3V0UXVhcnQ6ZT0+MS0gLS1lKmUqZSplLGVhc2VJbk91dFF1YXJ0OmU9PmU8LjU/OCplKmUqZSplOjEtOCotLWUqZSplKmUsZWFzZUluUXVpbnQ6ZT0+ZSplKmUqZSplLGVhc2VPdXRRdWludDplPT4xKy0tZSplKmUqZSplLGVhc2VJbk91dFF1aW50OmU9PmU8LjU/MTYqZSplKmUqZSplOjErMTYqLS1lKmUqZSplKmV9O2NvbnN0IHI9e2JsYWNrNzA6IiM0QTRBNEEiLGJsYWNrODA6IiM1MzUzNTMifX0sNzg3ODk1KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse3VzZUZ1bmN0aW9uYWxSZWZPYmplY3Q6KCk9PnJ9KTt2YXIgaT1vKDc3OTQ3NCksbj1vKDYxNjMxMSk7ZnVuY3Rpb24gcihlKXtjb25zdCB0PSgwLGkudXNlTWVtbykoKCgpPT5mdW5jdGlvbihlKXtjb25zdCB0PW89PntlKG8pLHQuY3VycmVudD1vfTtyZXR1cm4gdC5jdXJyZW50PW51bGwsdH0oKGU9PnthLmN1cnJlbnQoZSl9KSkpLFtdKSxvPSgwLGkudXNlUmVmKShudWxsKSxyPXQ9PntpZihudWxsPT09dClyZXR1cm4gcyhvLmN1cnJlbnQsdCksdm9pZChvLmN1cnJlbnQ9bnVsbCk7by5jdXJyZW50IT09ZSYmKG8uY3VycmVudD1lLHMoby5jdXJyZW50LHQpKX0sYT0oMCxpLnVzZVJlZikocik7cmV0dXJuIGEuY3VycmVudD1yLCgwLG4udXNlSXNvbW9ycGhpY0xheW91dEVmZmVjdCkoKCgpPT57aWYobnVsbCE9PXQuY3VycmVudClyZXR1cm4gYS5jdXJyZW50KHQuY3VycmVudCksKCk9PmEuY3VycmVudChudWxsKX0pLFtlXSksdH1mdW5jdGlvbiBzKGUsdCl7bnVsbCE9PWUmJigiZnVuY3Rpb24iPT10eXBlb2YgZT9lKHQpOmUuY3VycmVudD10KX19LDcxOTQyNShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHt1c2VSZXNpemVPYnNlcnZlcjooKT0+c30pO3ZhciBpPW8oNzc5NDc0KSxuPW8oNjE2MzExKSxyPW8oNzg3ODk1KTtmdW5jdGlvbiBzKGUsdD1bXSl7Y29uc3R7Y2FsbGJhY2s6byxyZWY6cz1udWxsfT1mdW5jdGlvbihlKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgZT97Y2FsbGJhY2s6ZX06ZX0oZSksYT0oMCxpLnVzZVJlZikobnVsbCksbD0oMCxpLnVzZVJlZikobyk7bC5jdXJyZW50PW87Y29uc3QgYz0oMCxyLnVzZUZ1bmN0aW9uYWxSZWZPYmplY3QpKHMpLGQ9KDAsaS51c2VDYWxsYmFjaykoKGU9PntjKGUpLG51bGwhPT1hLmN1cnJlbnQmJihhLmN1cnJlbnQuZGlzY29ubmVjdCgpLApudWxsIT09ZSYmYS5jdXJyZW50Lm9ic2VydmUoZSkpfSksW2MsYV0pO3JldHVybigwLG4udXNlSXNvbW9ycGhpY0xheW91dEVmZmVjdCkoKCgpPT4oYS5jdXJyZW50PW5ldyBSZXNpemVPYnNlcnZlcigoKGUsdCk9PntsLmN1cnJlbnQoZSx0KX0pKSxjLmN1cnJlbnQmJmQoYy5jdXJyZW50KSwoKT0+e2EuY3VycmVudD8uZGlzY29ubmVjdCgpfSkpLFtjLC4uLnRdKSxkfX0sNjQ5MTY2KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse0xvYWRlcjooKT0+Y30pO3ZhciBpLG49byg3Nzk0NzQpLHI9byg5MTQ0ODcpLHM9by5uKHIpLGE9bygyNDQ1MjUpLGw9by5uKGEpO2Z1bmN0aW9uIGMoZSl7Y29uc3R7Y2xhc3NOYW1lOnQsc2l6ZTpvPSJtZWRpdW0iLHN0YXRpY1Bvc2l0aW9uOmksY29sb3I6cj0iYmxhY2sifT1lLGE9cygpKGwoKS5pdGVtLGwoKVtyXSxsKClbb10pO3JldHVybiBuLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtjbGFzc05hbWU6cygpKGwoKS5sb2FkZXIsaSYmbCgpLnN0YXRpYyx0KX0sbi5jcmVhdGVFbGVtZW50KCJzcGFuIix7Y2xhc3NOYW1lOmF9KSxuLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtjbGFzc05hbWU6YX0pLG4uY3JlYXRlRWxlbWVudCgic3BhbiIse2NsYXNzTmFtZTphfSkpfSFmdW5jdGlvbihlKXtlLk1lZGl1bT0ibWVkaXVtIixlLlNtYWxsPSJzbWFsbCJ9KGl8fChpPXt9KSl9LDU4NTQ4KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse1BvcnRhbDooKT0+YyxQb3J0YWxDb250ZXh0OigpPT5kfSk7dmFyIGk9byg3Nzk0NzQpLG49bygxMjkzNjUpLHI9byg4NTY3NzApLHM9byg5MDM0MiksYT1vKDU3MDE5MyksbD1vKDYwNzgzMik7Y2xhc3MgYyBleHRlbmRzIGkuUHVyZUNvbXBvbmVudHtjb25zdHJ1Y3Rvcigpe3N1cGVyKC4uLmFyZ3VtZW50cyksdGhpcy5fdXVpZD0oMCxyLm5hbm9pZCkoKX1jb21wb25lbnRXaWxsVW5tb3VudCgpe3RoaXMuX21hbmFnZXIoKS5yZW1vdmVXaW5kb3codGhpcy5fdXVpZCl9cmVuZGVyKCl7Y29uc3QgZT10aGlzLl9tYW5hZ2VyKCkuZW5zdXJlV2luZG93KHRoaXMuX3V1aWQsdGhpcy5wcm9wcy5sYXllck9wdGlvbnMpO2Uuc3R5bGUudG9wPXRoaXMucHJvcHMudG9wfHwiIixlLnN0eWxlLmJvdHRvbT10aGlzLnByb3BzLmJvdHRvbXx8IiIsZS5zdHlsZS5sZWZ0PXRoaXMucHJvcHMubGVmdHx8IiIsZS5zdHlsZS5yaWdodD10aGlzLnByb3BzLnJpZ2h0fHwiIixlLnN0eWxlLnBvaW50ZXJFdmVudHM9dGhpcy5wcm9wcy5wb2ludGVyRXZlbnRzfHwiIjtjb25zdCB0PXRoaXMucHJvcHMuY2xhc3NOYW1lO3JldHVybiB0JiYoInN0cmluZyI9PXR5cGVvZiB0P2UuY2xhc3NMaXN0LmFkZCh0KTplLmNsYXNzTGlzdC5hZGQoLi4udCkpLHRoaXMucHJvcHMuc2hvdWxkVHJhcEZvY3VzJiYhZS5oYXNBdHRyaWJ1dGUoYS5GT0NVU19UUkFQX0RBVEFfQVRUUklCVVRFKSYmZS5zZXRBdHRyaWJ1dGUoYS5GT0NVU19UUkFQX0RBVEFfQVRUUklCVVRFLCJ0cnVlIiksdGhpcy5wcm9wc1siYXJpYS1oaWRkZW4iXSYmZS5zZXRBdHRyaWJ1dGUoImFyaWEtaGlkZGVuIiwidHJ1ZSIpLG4uY3JlYXRlUG9ydGFsKGkuY3JlYXRlRWxlbWVudChkLlByb3ZpZGVyLHt2YWx1ZTp0aGlzfSx0aGlzLnByb3BzLmNoaWxkcmVuKSxlKX1tb3ZlVG9Ub3AoKXt0aGlzLl9tYW5hZ2VyKCkubW92ZVRvVG9wKHRoaXMuX3V1aWQpfV9tYW5hZ2VyKCl7cmV0dXJuIG51bGw9PT10aGlzLmNvbnRleHQ/KDAscy5nZXRSb290T3ZlcmxhcE1hbmFnZXIpKCk6dGhpcy5jb250ZXh0fX1jLmNvbnRleHRUeXBlPWwuU2xvdENvbnRleHQ7Y29uc3QgZD1pLmNyZWF0ZUNvbnRleHQobnVsbCl9LDYwNzgzMihlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtTbG90OigpPT5uLFNsb3RDb250ZXh0OigpPT5yfSk7dmFyIGk9byg3Nzk0NzQpO2NsYXNzIG4gZXh0ZW5kcyBpLkNvbXBvbmVudHtzaG91bGRDb21wb25lbnRVcGRhdGUoKXtyZXR1cm4hMX1yZW5kZXIoKXtyZXR1cm4gaS5jcmVhdGVFbGVtZW50KCJkaXYiLHtzdHlsZTp7cG9zaXRpb246ImZpeGVkIix6SW5kZXg6MTUwLGxlZnQ6MCx0b3A6MH0scmVmOnRoaXMucHJvcHMucmVmZXJlbmNlfSl9fWNvbnN0IHI9aS5jcmVhdGVDb250ZXh0KG51bGwpfSw1Njc0NzkoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7REVGQVVMVF9TSVpFOigpPT5pLHNwaW5uZXJTaXplTWFwOigpPT5ufSk7Y29uc3QgaT0ibGFyZ2UiLG49e21pbmk6InhzbWFsbCIseHhzbWFsbDoieHhzbWFsbCIseHNtYWxsOiJ4c21hbGwiLHNtYWxsOiJzbWFsbCIsbWVkaXVtOiJtZWRpdW0iLGxhcmdlOiJsYXJnZSJ9fSwzMDgyMTYoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7U3dpdGNoVmlldzooKT0+Y30pO3ZhciBpLG49byg3Nzk0NzQpLHI9byg5MTQ0ODcpLHM9by5uKHIpLGE9byg2MjU3MDkpLGw9by5uKGEpO2Z1bmN0aW9uIGMoZSl7Y29uc3R7c2l6ZTp0PSJzbWFsbCIsY2hlY2tlZDpvLGRpc2FibGVkOml9PWU7cmV0dXJuIG4uY3JlYXRlRWxlbWVudCgic3BhbiIse2NsYXNzTmFtZTpzKCkobCgpLnN3aXRjaFZpZXcsbCgpW3RdLGkmJmwoKS5kaXNhYmxlZCxvJiZsKCkuY2hlY2tlZCl9LG4uY3JlYXRlRWxlbWVudCgic3BhbiIse2NsYXNzTmFtZTpsKCkudHJhY2t9KSxuLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtjbGFzc05hbWU6bCgpLnRodW1ifSkpfSFmdW5jdGlvbihlKXtlLlNtYWxsPSJzbWFsbCIsZS5NZWRpdW09Im1lZGl1bSIsZS5MYXJnZT0ibGFyZ2UifShpfHwoaT17fSkpfSwxMjgzMihlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtTd2l0Y2g6KCk9PnV9KTt2YXIgaSxuPW8oNzc5NDc0KSxyPW8oOTE0NDg3KSxzPW8ubihyKSxhPW8oMzA5OTIwKSxsPW8oMzA4MjE2KSxjPW8oMjM1NzI0KSxkPW8oNjg3NTQ3KSxoPW8ubihkKTtmdW5jdGlvbiB1KGUpe2NvbnN0IHQ9KDAsCm4udXNlQ29udGV4dCkoYS5DdXN0b21CZWhhdmlvdXJDb250ZXh0KSx7c2l6ZTpvLGludGVudDppPSJkZWZhdWx0IixjaGVja2VkOnIsY2xhc3NOYW1lOmQsZW5hYmxlQWN0aXZlU3RhdGVTdHlsZXM6dT10LmVuYWJsZUFjdGl2ZVN0YXRlU3R5bGVzLGRpc2FibGVkOl8sb25DaGFuZ2U6cCx0aXRsZTptLGlkOmcsbmFtZTp2LHZhbHVlOmYsdGFiSW5kZXg6eSxyb2xlOmI9InN3aXRjaCIsYXJpYURpc2FibGVkOlMscmVmZXJlbmNlOncsYXJpYUxhYmVsbGVkQnk6QyxhcmlhTGFiZWw6aywuLi5UfT1lO3JldHVybiBuLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtjbGFzc05hbWU6cygpKGQsaCgpLnN3aXRjaGVyKX0sbi5jcmVhdGVFbGVtZW50KCJpbnB1dCIsey4uLlQsdHlwZToiY2hlY2tib3giLGNsYXNzTmFtZTpzKCkoaCgpLmlucHV0LHUmJmgoKS5hY3RpdmVTdHlsZXNFbmFibGVkLHImJmgoKS5jaGVja2VkLF8mJmgoKS5kaXNhYmxlZCkscm9sZTpiLCJhcmlhLWNoZWNrZWQiOnIsY2hlY2tlZDpyLG9uS2V5RG93bjplPT57MTM9PT0oMCxjLmhhc2hGcm9tRXZlbnQpKGUpJiZlLmN1cnJlbnRUYXJnZXQ/LmNsaWNrKCl9LG9uQ2hhbmdlOnAsZGlzYWJsZWQ6XywiYXJpYS1kaXNhYmxlZCI6Uyx0YWJJbmRleDp5LHRpdGxlOm0saWQ6ZyxuYW1lOnYsdmFsdWU6ZixyZWY6dywiYXJpYS1sYWJlbCI6aywiYXJpYS1sYWJlbGxlZGJ5IjpDfSksbi5jcmVhdGVFbGVtZW50KCJzcGFuIix7Y2xhc3NOYW1lOnMoKShoKCkudGh1bWJXcmFwcGVyLGgoKVtpXSl9LG4uY3JlYXRlRWxlbWVudChsLlN3aXRjaFZpZXcse2NoZWNrZWQ6cixzaXplOm8sZGlzYWJsZWQ6X30pKSl9IWZ1bmN0aW9uKGUpe2UuRGVmYXVsdD0iZGVmYXVsdCIsZS5TZWxlY3Q9InNlbGVjdCJ9KGl8fChpPXt9KSl9LDU3MDE5MyhlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtGT0NVU19UUkFQX0RBVEFfQVRUUklCVVRFOigpPT5pfSk7Y29uc3QgaT0iZGF0YS1mb2N1cy10cmFwIn0sNjgyMzgxKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2NyZWF0ZVNjb3BlZFZpc2libGVFbGVtZW50RmlsdGVyOigpPT5kLGdldEFjdGl2ZUVsZW1lbnRTZWxlY3RvcnM6KCk9PmMsaXNIVE1MT3JTVkdFbGVtZW50OigpPT5oLGlzSW5lcnRSb290OigpPT5hLGlzVmlzaWJpbGl0eVZpc2libGU6KCk9PnJ9KTtjb25zdCBpPVsiYnV0dG9uIiwiZmllbGRzZXQiLCJvcHRncm91cCIsIm9wdGlvbiIsInNlbGVjdCIsInRleHRhcmVhIiwiaW5wdXQiXSxuPVsiYnV0dG9uIiwiaW5wdXQiLCJzZWxlY3QiLCJ0ZXh0YXJlYSIsImFbaHJlZl0iLCJhdWRpb1tjb250cm9sc10iLCJ2aWRlb1tjb250cm9sc10iLCdbdGFiaW5kZXg9IjAiXScsJ1tjb250ZW50ZWRpdGFibGU9InRydWUiXSddLm1hcCgoZT0+aS5pbmNsdWRlcyhlKT9gJHtlfTpub3QoOmRpc2FibGVkKWA6ZSkpLm1hcCgoZT0+YCR7ZX06bm90KFt0YWJpbmRleD0iLTEiXSlgKSkuam9pbigiLCIpO2Z1bmN0aW9uIHIoZSl7cmV0dXJuInZpc2libGUiPT09Z2V0Q29tcHV0ZWRTdHlsZShlKS52aXNpYmlsaXR5fWZ1bmN0aW9uIHMoZSx0KXtpZihlLm1hdGNoZXMoIltpbmVydF0sW2luZXJ0XSAqIikpcmV0dXJuITA7bGV0IG89ZTtmb3IoO28hPT10JiZudWxsIT09bzspe2lmKGwobykpcmV0dXJuITA7bz1vLnBhcmVudEVsZW1lbnR9cmV0dXJuITF9ZnVuY3Rpb24gYShlKXtyZXR1cm4gZS5tYXRjaGVzKCJbaW5lcnRdIil8fGwoZSl9ZnVuY3Rpb24gbChlKXtyZXR1cm4ibm9uZSI9PT1nZXRDb21wdXRlZFN0eWxlKGUpLmRpc3BsYXl9ZnVuY3Rpb24gYygpe3JldHVybiBufWZ1bmN0aW9uIGQoZSl7cmV0dXJuIHQ9PnIodCkmJiFzKHQsZSl9ZnVuY3Rpb24gaChlKXtyZXR1cm4gZSBpbnN0YW5jZW9mIEhUTUxFbGVtZW50fHxlIGluc3RhbmNlb2YgU1ZHRWxlbWVudH19LDk2NDU5NChlLHQsbyl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGkoZSl7cmV0dXJuIHQ9PntlLmZvckVhY2goKGU9PnsiZnVuY3Rpb24iPT10eXBlb2YgZT9lKHQpOm51bGwhPWUmJihlLmN1cnJlbnQ9dCl9KSl9fWZ1bmN0aW9uIG4oZSl7cmV0dXJuIGkoW2VdKX1vLmQodCx7aXNvbW9ycGhpY1JlZjooKT0+bixtZXJnZVJlZnM6KCk9Pml9KX0sNzE4NTUzKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse091dHNpZGVFdmVudDooKT0+bn0pO3ZhciBpPW8oMjM2NzY1KTtmdW5jdGlvbiBuKGUpe2NvbnN0e2NoaWxkcmVuOnQsLi4ub309ZTtyZXR1cm4gdCgoMCxpLnVzZU91dHNpZGVFdmVudCkobykpfX0sOTAzNDIoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7T3ZlcmxhcE1hbmFnZXI6KCk9PnMsZ2V0Um9vdE92ZXJsYXBNYW5hZ2VyOigpPT5sfSk7dmFyIGk9bygxMzg2MzgpLG49byg1NzAxOTMpO2NsYXNzIHJ7Y29uc3RydWN0b3IoKXt0aGlzLl9zdG9yYWdlPVtdfWFkZChlKXt0aGlzLl9zdG9yYWdlLnB1c2goZSl9cmVtb3ZlKGUpe3RoaXMuX3N0b3JhZ2U9dGhpcy5fc3RvcmFnZS5maWx0ZXIoKHQ9PmUhPT10KSl9aGFzKGUpe3JldHVybiB0aGlzLl9zdG9yYWdlLmluY2x1ZGVzKGUpfWdldEl0ZW1zKCl7cmV0dXJuIHRoaXMuX3N0b3JhZ2V9fWNsYXNzIHN7Y29uc3RydWN0b3IoZT1kb2N1bWVudCl7dGhpcy5fc3RvcmFnZT1uZXcgcix0aGlzLl93aW5kb3dzPW5ldyBNYXAsdGhpcy5faW5kZXg9MCx0aGlzLl9kb2N1bWVudD1lLHRoaXMuX2NvbnRhaW5lcj1lLmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKX1zZXRDb250YWluZXIoZSl7Y29uc3QgdD10aGlzLl9jb250YWluZXIsbz1udWxsPT09ZT90aGlzLl9kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk6ZTshZnVuY3Rpb24oZSx0KXtBcnJheS5mcm9tKGUuY2hpbGROb2RlcykuZm9yRWFjaCgoZT0+e2Uubm9kZVR5cGU9PT1Ob2RlLkVMRU1FTlRfTk9ERSYmdC5hcHBlbmRDaGlsZChlKX0pKX0odCxvKSx0aGlzLl9jb250YWluZXI9b31yZWdpc3RlcldpbmRvdyhlKXt0aGlzLl9zdG9yYWdlLmhhcyhlKXx8dGhpcy5fc3RvcmFnZS5hZGQoZSl9ZW5zdXJlV2luZG93KGUsdD17cG9zaXRpb246ImZpeGVkIixkaXJlY3Rpb246Im5vcm1hbCJ9KXtjb25zdCBvPXRoaXMuX3dpbmRvd3MuZ2V0KGUpCjtpZih2b2lkIDAhPT1vKXJldHVybiBvO3RoaXMucmVnaXN0ZXJXaW5kb3coZSk7Y29uc3QgaT10aGlzLl9kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtpZihpLnN0eWxlLnBvc2l0aW9uPXQucG9zaXRpb24saS5zdHlsZS56SW5kZXg9dGhpcy5faW5kZXgudG9TdHJpbmcoKSxpLmRhdGFzZXQuaWQ9ZSx2b2lkIDAhPT10LmluZGV4KXtjb25zdCBlPXRoaXMuX2NvbnRhaW5lci5jaGlsZE5vZGVzLmxlbmd0aDtpZih0LmluZGV4Pj1lKXRoaXMuX2NvbnRhaW5lci5hcHBlbmRDaGlsZChpKTtlbHNlIGlmKHQuaW5kZXg8PTApdGhpcy5fY29udGFpbmVyLmluc2VydEJlZm9yZShpLHRoaXMuX2NvbnRhaW5lci5maXJzdENoaWxkKTtlbHNle2NvbnN0IGU9dGhpcy5fY29udGFpbmVyLmNoaWxkTm9kZXNbdC5pbmRleF07dGhpcy5fY29udGFpbmVyLmluc2VydEJlZm9yZShpLGUpfX1lbHNlInJldmVyc2UiPT09dC5kaXJlY3Rpb24/dGhpcy5fY29udGFpbmVyLmluc2VydEJlZm9yZShpLHRoaXMuX2NvbnRhaW5lci5maXJzdENoaWxkKTp0aGlzLl9jb250YWluZXIuYXBwZW5kQ2hpbGQoaSk7cmV0dXJuIHRoaXMuX3dpbmRvd3Muc2V0KGUsaSksKyt0aGlzLl9pbmRleCxpfXVucmVnaXN0ZXJXaW5kb3coZSl7dGhpcy5fc3RvcmFnZS5yZW1vdmUoZSk7Y29uc3QgdD10aGlzLl93aW5kb3dzLmdldChlKTt2b2lkIDAhPT10JiYobnVsbCE9PXQucGFyZW50RWxlbWVudCYmdC5wYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKHQpLHRoaXMuX3dpbmRvd3MuZGVsZXRlKGUpKX1nZXRaaW5kZXgoZSl7Y29uc3QgdD10aGlzLmVuc3VyZVdpbmRvdyhlKTtyZXR1cm4gcGFyc2VJbnQodC5zdHlsZS56SW5kZXh8fCIwIil9bW92ZUxhc3RXaW5kb3dUb1RvcCgpe2NvbnN0IGU9dGhpcy5fc3RvcmFnZS5nZXRJdGVtcygpLHQ9ZVtlLmxlbmd0aC0xXTt0JiZ0aGlzLm1vdmVUb1RvcCh0KX1tb3ZlVG9Ub3AoZSl7aWYodGhpcy5nZXRaaW5kZXgoZSkhPT10aGlzLl9pbmRleCl7Y29uc3QgdD10aGlzLmVuc3VyZVdpbmRvdyhlKTt0aGlzLl93aW5kb3dzLmZvckVhY2goKChlLG8pPT57ZS5oYXNBdHRyaWJ1dGUobi5GT0NVU19UUkFQX0RBVEFfQVRUUklCVVRFKSYmZS5zZXRBdHRyaWJ1dGUobi5GT0NVU19UUkFQX0RBVEFfQVRUUklCVVRFLGU9PT10PyJ0cnVlIjoiZmFsc2UiKX0pKSx0LnN0eWxlLnpJbmRleD0oKyt0aGlzLl9pbmRleCkudG9TdHJpbmcoKX19cmVtb3ZlV2luZG93KGUpe3RoaXMudW5yZWdpc3RlcldpbmRvdyhlKX19Y29uc3QgYT1uZXcgV2Vha01hcDtmdW5jdGlvbiBsKGU9ZG9jdW1lbnQpe2NvbnN0IHQ9ZS5nZXRFbGVtZW50QnlJZCgib3ZlcmxhcC1tYW5hZ2VyLXJvb3QiKTtpZihudWxsIT09dClyZXR1cm4oMCxpLmVuc3VyZURlZmluZWQpKGEuZ2V0KHQpKTt7Y29uc3QgdD1uZXcgcyhlKSxvPWZ1bmN0aW9uKGUpe2NvbnN0IHQ9ZS5jcmVhdGVFbGVtZW50KCJkaXYiKTtyZXR1cm4gdC5zdHlsZS5wb3NpdGlvbj0iYWJzb2x1dGUiLHQuc3R5bGUuekluZGV4PTE1MC4udG9TdHJpbmcoKSx0LnN0eWxlLnRvcD0iMHB4Iix0LnN0eWxlLmxlZnQ9IjBweCIsdC5pZD0ib3ZlcmxhcC1tYW5hZ2VyLXJvb3QiLHQuZGF0YXNldC5xYUlkPSJvdmVybGFwLW1hbmFnZXItcm9vdCIsdH0oZSk7cmV0dXJuIGEuc2V0KG8sdCksdC5zZXRDb250YWluZXIobyksZS5ib2R5LmFwcGVuZENoaWxkKG8pLHR9fXZhciBjOyFmdW5jdGlvbihlKXtlW2UuQmFzZVppbmRleD0xNTBdPSJCYXNlWmluZGV4In0oY3x8KGM9e30pKX0sOTM0MDgxKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse1NUT1JZX1BPU1RFUlM6KCk9Pml9KTtjb25zdCBpPVt7bmFtZToibmVvbiIscG9zdGVyOm8ucCsibmVvbi5mZjkzMzEwZTc5NWQ1NGE1ZDM5Yi53ZWJwIn0se25hbWU6Im1hcnMiLHBvc3RlcjpvLnArIm1hcnMuY2I2YTM3MWZhNzgyMzY2MzQzYmUud2VicCJ9LHtuYW1lOiJzbm93Iixwb3N0ZXI6by5wKyJzbm93LjhmNWVjOWNkODRhNzUyZjQ2YjY4LndlYnAifV19LDg0MjEwMihlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtpc1Nob3dQcm9tb1ZpZGVvOigpPT5zfSk7dmFyIGk9byg4MDk0MzYpO2NvbnN0IG49aVsibWVkaWEtbWYtdGFibGV0LWxhbmRzY2FwZSJdLHI9aVsibWVkaWEtbWYtdGFibGV0LXZlcnRpY2FsIl07ZnVuY3Rpb24gcygpe2NvbnN0IGU9d2luZG93Lm1hdGNoTWVkaWEobikubWF0Y2hlcyx0PXdpbmRvdy5tYXRjaE1lZGlhKHIpLm1hdGNoZXMsbz13aW5kb3cuaW5uZXJXaWR0aCxpPXdpbmRvdy5pbm5lckhlaWdodDtyZXR1cm4hIWV8fCEhdCYmaT49b319LDk3ODU0KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse29uZVRhcFNpZ25Nb2RhbERlbGVnYXRlOigpPT5pfSk7Y29uc3QgaT1uZXcobyg5NDgzODApLkRlbGVnYXRlKX0sNjEzODcwKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2lzU2lnbk1vZGFsT3BlbjooKT0+ZCxzaG93U2lnbk1vZGFsOigpPT5jfSk7dmFyIGk9byg4NDIxMDIpLG49byg5Nzg1NCkscj1vKDcxOTE5NCkscz1vKDc1NjI3MSksYT1vKDkzNDA4MSk7bGV0IGw9KCk9PiExO2FzeW5jIGZ1bmN0aW9uIGMoZSl7Y29uc3QgdD0oMCxpLmlzU2hvd1Byb21vVmlkZW8pKCksbj1PYmplY3QuYXNzaWduKHt9LGUse2lzU2hvd1ZpZGVvOnR9KTtpZih3aW5kb3cuVFZEJiZ3aW5kb3cuVFZELnNpZ25JbilyZXR1cm4gd2luZG93LlRWRC5zaWduSW4obik7e3QmJmZ1bmN0aW9uKCl7Y29uc3R7cG9zdGVyOmV9PWEuU1RPUllfUE9TVEVSU1soMCxyLnBpY2tTdG9yeUluZGV4KShzLlNUT1JZX05BTUVTKV0sdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaW5rIik7dC5yZWw9InByZWxvYWQiLHQuYXM9ImltYWdlIix0LmhyZWY9ZSxkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHQpfSgpCjtjb25zdCBlPWF3YWl0IFByb21pc2UuYWxsKFtvLmUoODU1MzcpLG8uZSg4NDMwNiksby5lKDI5Mjk2KSxvLmUoNTIzOTYpLG8uZSg2MDA2Miksby5lKDIwMzU0KSxvLmUoMTM0OTIpLG8uZSgzNzc0Niksby5lKDEyMzg1KSxvLmUoOTQ5NDgpLG8uZSg5NDIzMiksby5lKDE5NTk1KSxvLmUoMTk3ODcpLG8uZSgyNDU4MSksby5lKDExMjE4KSxvLmUoODU3OSksby5lKDcyNjY2KSxvLmUoNzA4MTUpLG8uZSg3NDM4MSksby5lKDE1NTI2KSxvLmUoOTM0MTYpLG8uZSgzNzc2Nyksby5lKDMyNjMyKSxvLmUoMzUxOTgpLG8uZSg0NjU5MSksby5lKDk0MDU0KSxvLmUoNTA2MjIpLG8uZSgzODg2OCksby5lKDU5MzUwKSxvLmUoMjA5ODYpLG8uZSgzMjM4Nyksby5lKDQ0NzgwKSxvLmUoNzU5MzApLG8uZSg4NTk3NCldKS50aGVuKG8uYmluZChvLDczMDg0MSkpO3JldHVybiBsPWUuaXNTaWduTW9kYWxPcGVuLGUuc2hvd1NpZ25Nb2RhbChuKX19ZnVuY3Rpb24gZCgpe3JldHVybiBsKCl9bi5vbmVUYXBTaWduTW9kYWxEZWxlZ2F0ZS5zdWJzY3JpYmUobnVsbCxjKX0sNzE5MTk0KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse3BpY2tTdG9yeUluZGV4OigpPT5yfSk7dmFyIGk9byg5MzIzNjUpO2NvbnN0IG49InNpZ25pbi1wcm9tby1zdG9yeSI7ZnVuY3Rpb24gcihlKXtjb25zdCB0PWZ1bmN0aW9uKCl7dHJ5e2NvbnN0IGU9aS5UVkxvY2FsU3RvcmFnZS5nZXRJdGVtKG4pO2lmKG51bGw9PT1lKXJldHVybiBudWxsO2NvbnN0IHQ9SlNPTi5wYXJzZShlKTtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIHQmJm51bGwhPT10JiYic3RyaW5nIj09dHlwZW9mIHQubmFtZSYmIm51bWJlciI9PXR5cGVvZiB0LnRpbWVzdGFtcD90Om51bGx9Y2F0Y2h7cmV0dXJuIG51bGx9fSgpLG89bnVsbCE9PXQ/ZS5pbmRleE9mKHQubmFtZSk6LTE7aWYobnVsbCE9PXQmJi0xIT09byYmRGF0ZS5ub3coKS10LnRpbWVzdGFtcDw4NjRlNSlyZXR1cm4gbztjb25zdCByPWZ1bmN0aW9uKGUsdCl7aWYoZTw9MXx8dDwwKXJldHVybiBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqZSk7cmV0dXJuKHQrMStNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqKGUtMSkpKSVlfShlLmxlbmd0aCxvKTtyZXR1cm4gaS5UVkxvY2FsU3RvcmFnZS5zZXRJdGVtKG4sSlNPTi5zdHJpbmdpZnkoe25hbWU6ZVtyXSx0aW1lc3RhbXA6RGF0ZS5ub3coKX0pKSxyfX0sNzU2MjcxKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse1NUT1JZX05BTUVTOigpPT5pfSk7Y29uc3QgaT1bIm5lb24iLCJtYXJzIiwic25vdyJdfSwyMjI0MjMoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7QWdncmVnYXRlRXJyb3I6KCk9PlMsQXBpRXJyb3I6KCk9PnksU01TX0JBTk5FRF9TVEFUVVM6KCk9PnIsYWNjdW11bGF0ZUVycm9yczooKT0+YSxjaGVja1Bob25lQ29kZTooKT0+dSxjb250aW51ZVBhcnRpYWxBdXRoOigpPT5FLGZpcnN0TG9naW5EYXRhOigpPT5kLGZpcnN0TG9naW5EYXRhVXJsOigpPT5zLGdlbmVyYXRlU2lnbmluQ2hhbGxlbmdlOigpPT54LGdldEFwaUVycm9yTWVzc2FnZTooKT0+YixyZWNvdmVyUGFzc3dvcmQ6KCk9PkMscmVjb3ZlclBhc3N3b3JkVXJsOigpPT53LHJlY292ZXJ5UGFzc3dvcmQ6KCk9Pl8scmVzZW5kTGluazooKT0+aCxzZWNvbmRGYWN0b3JTaWduaW46KCk9PkEsc2lnbmluOigpPT5nLHNpZ25pblVybDooKT0+cCxzaWdudXA6KCk9PmYsc2lnbnVwVXJsOigpPT52LHNvY2lhbEF1dGg6KCk9PlR9KTt2YXIgaT1vKDM4NDAxNyksbj1vKDE4NTI3MSk7Y29uc3Qgcj00MDMscz0iL2FjY291bnRzL2ZpcnN0X2xvZ2luX2RhdGEvIjtmdW5jdGlvbiBhKGUsdCl7cmV0dXJuIE9iamVjdC5lbnRyaWVzKGUpLm1hcCgoZT0+bmV3IHkoZVsxXS5qb2luKCJcbiIpLHQsZVswXSkpKX1mdW5jdGlvbiBsKGUsdCl7cmV0dXJuKDAsaS5mZXRjaCkoZSx7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoiaW5jbHVkZSIsbW9kZToic2FtZS1vcmlnaW4iLGJvZHk6dH0pfWFzeW5jIGZ1bmN0aW9uIGMoZSl7dHJ5e3JldHVybiBhd2FpdCBlLmpzb24oKX1jYXRjaHt0aHJvdyBuZXcgeShuLnQobnVsbCx7Y29udGV4dDoiYXBpIGVycm9yIn0sbyg2ODM2MjcpKSxlLnN0YXR1cywic2VydmVyX2Vycm9yIil9fWZ1bmN0aW9uIGQoZSl7cmV0dXJuIGwocyxlKS50aGVuKChlPT5lLm9rP2MoZSk6YyhlKS50aGVuKCh0PT57dGhyb3cgbmV3IFMoYSh0LmVycm9ycyxlLnN0YXR1cykpfSkpKSl9ZnVuY3Rpb24gaCgpe3JldHVybiBsKCIvYXBpL3YxL3VzZXJzL2Fub24vY2hhbmdlLWVtYWlsL3Jlc2VuZC8iKS50aGVuKChlPT5lLm9rP2MoZSk6YyhlKS50aGVuKChlPT57dGhyb3cgRXJyb3IoZS5lcnJvcil9KSkpKX1mdW5jdGlvbiB1KGUpe3JldHVybiBsKCIvYXBpL3YxL3JlY292ZXJfcGFzc3dvcmQvY2hlY2tfcGhvbmVfY29kZS8iLGUpLnRoZW4oKGU9PmUub2s/YyhlKTpjKGUpLnRoZW4oKGU9Pnt0aHJvdyBFcnJvcihlLmVycm9yKX0pKSkpfWZ1bmN0aW9uIF8oZSl7cmV0dXJuIGwoIi9hcGkvdjEvcmVjb3Zlcl9wYXNzd29yZC8iLGUpLnRoZW4oKGU9PmUpKX1jb25zdCBwPSIvYWNjb3VudHMvc2lnbmluLyI7ZnVuY3Rpb24gbShlKXtyZXR1cm4gYyhlKS50aGVuKCh0PT57aWYoImVycm9ycyJpbiB0JiZPYmplY3Qua2V5cyh0LmVycm9ycykubGVuZ3RoKXRocm93IG5ldyBTKGEodC5lcnJvcnMsZS5zdGF0dXMpKTtpZigiZXJyb3IiaW4gdCYmIiIhPT10LmVycm9yfHwiY29kZSJpbiB0fHwhZS5vayl0aHJvdyBuZXcgeSh0LmVycm9yfHx0LmRldGFpbCxlLnN0YXR1cyx0LmNvZGUsdC5jb25maXJtX2F1dGhfZGF0YSx0LnR3b19mYWN0b3JfdHlwZXMsZnVuY3Rpb24oZSl7aWYoZS5zaWduYXR1cmUpcmV0dXJue3NpZ25hdHVyZTplLnNpZ25hdHVyZSxlbWFpbDplLmVtYWlsfHwiIixwaG9uZTplLnBob25lfHwiIixzb2NpYWxzOltdfTtyZXR1cm59KHQpKTtyZXR1cm4gdH0pKX1mdW5jdGlvbiBnKGUpe3JldHVybiBsKHAsZSkudGhlbihtKX1jb25zdCB2PSIvYWNjb3VudHMvc2lnbnVwLyI7ZnVuY3Rpb24gZihlKXtyZXR1cm4gbCh2LGUpLnRoZW4oKGU9PmMoZSkudGhlbigodD0+ewppZigiZXJyb3JzImluIHQmJiIiIT09dC5lcnJvcnMpdGhyb3cgbmV3IFMoYSh0LmVycm9ycyxlLnN0YXR1cykpfSkpKSl9Y2xhc3MgeSBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKGUsdCxvLGksbixyKXtzdXBlcihlKSx0aGlzLnR5cGU9byx0aGlzLnN0YXR1cz10LHRoaXMuc2Vjb25kRmFjdG9yVHlwZXM9bix0aGlzLnNvY2lhbENvbmZpcm1EYXRhPWksdGhpcy5yZXNldFBhc3N3b3JkRGF0YT1yfX1mdW5jdGlvbiBiKGUsdCl7cmV0dXJuIGUgaW5zdGFuY2VvZiB5JiZ2b2lkIDAhPT1lLnN0YXR1cz9gJHtlLm1lc3NhZ2V8fHR8fG4udChudWxsLHtjb250ZXh0OiJhcGkgZXJyb3IifSxvKDY4MzYyNykpfSAoJHtlLnN0YXR1c30pYDplIGluc3RhbmNlb2YgRXJyb3ImJmUubWVzc2FnZT9lLm1lc3NhZ2U6dHx8bi50KG51bGwse2NvbnRleHQ6ImFwaSBlcnJvciJ9LG8oNjgzNjI3KSl9Y2xhc3MgUyBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKGUpe3N1cGVyKGUubWFwKChlPT5lLm1lc3NhZ2UpKS5qb2luKCJcbiIpKSx0aGlzLmVycm9ycz1bXSx0aGlzLmVycm9ycz1lfX1jb25zdCB3PSIvYXBpL3YxL3JlY292ZXJfcGFzc3dvcmQvc2VhcmNoLyI7ZnVuY3Rpb24gQyhlKXtyZXR1cm4gbCh3LGUpLnRoZW4obSl9Y29uc3Qgaz17QWNjZXB0OiJhcHBsaWNhdGlvbi9qc29uIn07ZnVuY3Rpb24gVChlLHQpe2NvbnN0IG89bmV3IFVSTCh3aW5kb3cub3JpZ2luKyIvYWNjb3VudHMvY29tcGxldGUvYW5kcm9pZC1qd3QvIik7cmV0dXJuIE9iamVjdC5lbnRyaWVzKHQpLmZvckVhY2goKChbZSx0XSk9PnQmJm8uc2VhcmNoUGFyYW1zLmFwcGVuZChlLHQpKSksKDAsaS5mZXRjaCkoby5ocmVmLHttZXRob2Q6IlBPU1QiLGJvZHk6ZSxoZWFkZXJzOmt9KS50aGVuKG0pfWZ1bmN0aW9uIEUoZSx0KXtjb25zdCBvPW5ldyBVUkwod2luZG93Lm9yaWdpbitgL2FjY291bnRzL2NvbXBsZXRlLyR7ZX0vYCksbj1uZXcgRm9ybURhdGE7cmV0dXJuIG4uYXBwZW5kKCJwYXJ0aWFsX3Rva2VuIix0KSwoMCxpLmZldGNoKShvLmhyZWYse21ldGhvZDoiUE9TVCIsYm9keTpuLGhlYWRlcnM6a30pLnRoZW4obSl9ZnVuY3Rpb24geChlKXtyZXR1cm4gbChgL2FjY291bnRzL3R3by1mYWN0b3Ivc2lnbmluLyR7ZX0vZ2VuZXJhdGUtY2hhbGxlbmdlL2ApLnRoZW4oKGU9PmUub2s/YyhlKTpjKGUpLnRoZW4oKCh7ZGV0YWlsOmV9KT0+e3Rocm93IEVycm9yKGUpfSkpKSl9ZnVuY3Rpb24gQShlLHQpe3JldHVybiBsKGAvYWNjb3VudHMvdHdvLWZhY3Rvci9zaWduaW4vJHtlfS9gLHQpLnRoZW4oKGU9PmUub2s/YyhlKTpjKGUpLnRoZW4oKHQ9PntpZigicmVxdWlyZV9wYXJhbWV0ZXJzIj09PXQuY29kZSl0aHJvdyBuZXcgUyhhKHQuZXJyb3JzLGUuc3RhdHVzKSk7dGhyb3cgbmV3IHkodC5kZXRhaWwsZS5zdGF0dXMsdC5jb2RlKX0pKSkpfX0sOTczMDQxKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse3RyaWVzVHJhbnNsYXRlQ291bnRyaWVOYW1lOigpPT5ufSk7dmFyIGk9bygxODUyNzEpO2Z1bmN0aW9uIG4oZSl7Y29uc3QgdD1yLmdldChlKTtyZXR1cm4gdm9pZCAwIT09dD90KCk6ZX0KY29uc3Qgcj1uZXcgTWFwKFtbIkFmcmljYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDY1MDM0NCkpXSxbIkFtZXJpY2FzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTkxNDY0KSldLFsiQXNpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDY4OTE4MikpXSxbIkV1cm9wZSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDk1MjM2NykpXSxbIlBhY2lmaWMiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5OTA1NzUpKV0sWyJNaWRkbGUgRWFzdCIsKCk9PmkudChudWxsLHZvaWQgMCxvKDY4NTc1MSkpXSxbIkFmZ2hhbmlzdGFuIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTkzMTAxKSldLFsiw4VsYW5kIElzbGFuZHMiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5MDY1NTQpKV0sWyJBbGFuZCBJc2xhbmRzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTA2NTU0KSldLFsiQWxiYW5pYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI4MDAyNSkpXSxbIkFsZ2VyaWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygyOTYxODEpKV0sWyJBbWVyaWNhbiBTYW1vYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDEwNDU1MykpXSxbIkFuZG9ycmEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5NjUyMTMpKV0sWyJBbmdvbGEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg3NzcyMCkpXSxbIkFuZ3VpbGxhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oODU0OTAyKSldLFsiQW50YXJjdGljYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI5NzU3MCkpXSxbIkFudGlndWEgYW5kIEJhcmJ1ZGEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg3NDU4OSkpXSxbIkFyZ2VudGluYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDg1NzU4NykpXSxbIkFybWVuaWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg3Nzk5NTIpKV0sWyJBcnViYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDExNDc1NikpXSxbIkF1c3RyYWxpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI3OTIzMykpXSxbIkF1c3RyaWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygyMzgyNzgpKV0sWyJBemVyYmFpamFuIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDY4MTcpKV0sWyJCYWhhbWFzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMzM1MjU5KSldLFsiQmFocmFpbiIsKCk9PmkudChudWxsLHZvaWQgMCxvKDU3ODY2NSkpXSxbIkJhbmdsYWRlc2giLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg0NTIwMTUpKV0sWyJCYXJiYWRvcyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDgyOTM4NykpXSxbIkJlbGFydXMiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg1MjM1NTIpKV0sWyJCZWxnaXVtIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oODMzMjQpKV0sWyJCZWxpemUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg3ODc3MDEpKV0sWyJCZW5pbiIsKCk9PmkudChudWxsLHZvaWQgMCxvKDU4ODg0OCkpXSxbIkJlcm11ZGEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygzMTQ3MzcpKV0sWyJCaHV0YW4iLCgpPT5pLnQobnVsbCx2b2lkIDAsbygyODQ0NDIpKV0sWyJCb2xpdmlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTMxMzA0KSldLFsiQm9uYWlyZSwgU2ludCBFdXN0YXRpdXMgYW5kIFNhYmEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg1NTcyMzUpKV0sWyJCb3NuaWEgYW5kIEhlcnplZ292aW5hIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTcwNjkxKSldLFsiQm90c3dhbmEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg0MjUzNzgpKV0sWyJCb3V2ZXQgSXNsYW5kIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzMwNzYzKSldLFsiQnJhemlsIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNjEyOTY3KSldLFsiQnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5IiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzQ0MjQ2KSldLFsiQnJpdGlzaCBWaXJnaW4gSXNsYW5kcyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDY1MzM0MCkpXSxbIkJydW5laSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDM5MTkwNikpXSxbIkJ1bGdhcmlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzE0MDMxKSldLFsiQnVya2luYSBGYXNvIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMTk4Mjk3KSldLFsiQnVydW5kaSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDc1ODIyKSldLFsiQ2FibyBWZXJkZSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDYwMTA5NykpXSxbIkNhbWJvZGlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNTU1NDg5KSldLFsiQ2FtZXJvb24iLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5NzcwMjgpKV0sWyJDYW5hZGEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygxNTE4OSkpXSxbIkNheW1hbiBJc2xhbmRzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNjQxMDI2KSldLFsiQ2VudHJhbCBBZnJpY2FuIFJlcHVibGljIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzc0NzgpKV0sWyJDaGFkIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDgzNTUpKV0sWyJDaGlsZSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDkwNDMzOCkpXSxbIkNoaW5hIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNjAyNTE5KSldLFsiQ2hyaXN0bWFzIElzbGFuZCIsKCk9PmkudChudWxsLHZvaWQgMCxvKDk1NjQ2NCkpXSxbIkNvY29zIChLZWVsaW5nKSBJc2xhbmRzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMzI1NzMyKSldLFsiQ29sb21iaWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygxMzU4NjcpKV0sWyJDb21vcm9zIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDg0MTM2KSldLFsiQ29uZ28iLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5NjQ4NTgpKV0sWyJDb25nbyAodGhlIERlbW9jcmF0aWMgUmVwdWJsaWMgb2YgdGhlKSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI3MTU1OCkpXSxbIkNvb2sgSXNsYW5kcyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDcwODg1OSkpXSxbIkN1cmFjYW8iLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg1ODk0MTcpKV0sWyJDb3N0YSBSaWNhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMjY4ODQ0KSldLFsiQ8O0dGUgZCdJdm9pcmUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg0OTg3NjIpKV0sWyJDcm9hdGlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDA3NCkpXSxbIkN1YmEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg3NjkxNDApKV0sWyJDdXJhw6dhbyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDk0NTE3MSkpXSxbIkN5cHJ1cyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDYzNDczNykpXSxbIkN6ZWNoaWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygyNjE5OTApKV0sWyJDemVjaCBSZXB1YmxpYyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDEyOTgwOCkpXSxbIkRlbm1hcmsiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg4NTI1MDEpKV0sWyJEamlib3V0aSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDUwNzc5OCkpXSxbIkRvbWluaWNhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMTk0MzI2KSldLFsiRG9taW5pY2FuIFJlcHVibGljIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oODE4NjA0KSldLFsiRWN1YWRvciIsKCk9PmkudChudWxsLHZvaWQgMCxvKDQxMzM5NykpXSxbIkVneXB0IiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMzM3NDM3KSldLFsiRWwgU2FsdmFkb3IiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg4ODA4NzIpKV0sWyJFcXVhdG9yaWFsIEd1aW5lYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDc0NjUyNCkpXSxbIkVyaXRyZWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg3MzA4NzMpKV0sWyJFc3RvbmlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTQxMjApKV0sWyJGYWxrbGFuZCBJc2xhbmRzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTkzNDc1KSldLFsiRXN3YXRpbmkiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg4OTgzMDMpKV0sWyJFdGhpb3BpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDMzMTkxKSldLFsiRXVyb3BlYW4gVW5pb24iLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg1MzUxNDYpKV0sWyJGYWxrbGFuZCBJc2xhbmRzIChNYWx2aW5hcykiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg2MDc3MjMpKV0sWyJGYXJvZSBJc2xhbmRzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDUyNDg3KSldLFsiRmlqaSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDE1MjQwOSkpXSxbIkZpbmxhbmQiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5NzY0NTQpKV0sWyJGcmFuY2UiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygxMzYyMzgpKV0sWyJGcmVuY2ggR3VpYW5hIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTc2MDc5KSldLFsiRnJlbmNoIFBvbHluZXNpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDg2MzgyNSkpXSxbIkZyZW5jaCBTb3V0aGVybiBUZXJyaXRvcmllcyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDMyODYwNykpXSxbIkdhYm9uIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMzY3NjkwKSldLFsiR2FtYmlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzA4Nzg1KSldLFsiR2VvcmdpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDc5NTk1MSkpXSxbIkdlcm1hbnkiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg0NjY2OTgpKV0sWyJHaGFuYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDQ5ODY3OSkpXSxbIkdpYnJhbHRhciIsKCk9PmkudChudWxsLHZvaWQgMCxvKDc3MTAxNykpXSxbIkdyZWVjZSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDc5MzI4OSkpXSxbIkdyZWVubGFuZCIsKCk9PmkudChudWxsLHZvaWQgMCxvKDMxODM5OSkpXSxbIkdyZW5hZGEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5MzIwODYpKV0sWyJHdWFkZWxvdXBlIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMTY0ODc3KSldLFsiR3VhbSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDU0NDMyNSkpXSxbIkd1YXRlbWFsYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDg3NzQ4NykpXSxbIkd1ZXJuc2V5IiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDA4OTE2KSldLFsiR3VpbmVhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDM2NDU1KSldLFsiR3VpbmVhLUJpc3NhdSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDMwODIyOSkpXSxbIkd1eWFuYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI0MjExNikpXSxbIkhhaXRpIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oODk0NzA5KSldLFsiSGVhcmQgSXNsYW5kIGFuZCBNY0RvbmFsZCBJc2xhbmRzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMjM2MTIzKSldLFsiSG9seSBTZWUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygxMjc0OSkpXSxbIkhvbmR1cmFzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMjAyODE2KSldLFsiSG9uZyBLb25nIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDYzNzc5KSldLFsiSHVuZ2FyeSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDY2MTM2NikpXSxbIkljZWxhbmQiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg0NDAxODgpKV0sWyJJbmRpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDM3MjUyMCkpXSxbIkluZG9uZXNpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDgwMjk3NSkpXSxbIklyYXEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygzNzE3NDYpKV0sWyJJcmVsYW5kIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzExNTI3KSldLFsiSXNsZSBvZiBNYW4iLCgpPT5pLnQobnVsbCx2b2lkIDAsbygyMDc4MjUpKV0sWyJJc3JhZWwiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg4MDMzNTQpKV0sWyJJdGFseSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDg5ODE2MykpXSxbIkphbWFpY2EiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygxNjM1KSldLFsiSmFwYW4iLCgpPT5pLnQobnVsbCx2b2lkIDAsbygyMDAwNjgpKV0sWyJKZXJzZXkiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygxMTg1OTgpKV0sWyJKb3JkYW4iLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg1ODMwMDkpKV0sWyJLYXpha2hzdGFuIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMjc3NTYwKSldLFsiS2VueWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg4MTQ5NjYpKV0sWyJLaXJpYmF0aSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDQ0NjI5MykpXSxbIktvc292byIsKCk9PmkudChudWxsLHZvaWQgMCxvKDY3Njg2KSldLFsiS3V3YWl0IiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMzk1MTMwKSldLFsiS3lyZ3l6c3RhbiIsKCk9PmkudChudWxsLHZvaWQgMCxvKDQ1ODY2MCkpXSxbIkxhb3MiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg1OTExODApKV0sWyJMYXR2aWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygyODI3NzMpKV0sWyJMZWJhbm9uIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTQ1NjEzKSldLFsiTGVzb3RobyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDY1MzM5NSkpXSxbIkxpYmVyaWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg2NjIxKSldLFsiTGlieWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg1NTUzNTIpKV0sWyJMaWVjaHRlbnN0ZWluIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMzg2NjY3KSldLFsiTGl0aHVhbmlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oODkyMTAwKSldLFsiTHV4ZW1ib3VyZyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDk3NTQ0NykpXSxbIk1hY2F1IiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNTMyMjY5KSldLFsiTWFjYW8iLCgpPT5pLnQobnVsbCx2b2lkIDAsbygzMDcwNjIpKV0sWyJNYWNlZG9uaWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg0NTkxMDgpKV0sWyJNYWRhZ2FzY2FyIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNjYwMTg4KSldLFsiTWFsYXdpIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMjQ1OTQ4KSldLFsiTWFsYXlzaWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg2Mjc5NjcpKV0sWyJNYWxkaXZlcyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDMzMTYxNSkpXSxbIk1hbGkiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg2MjM0NjUpKV0sWyJNYWx0YSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDU2MzIzNykpXSxbIk1hcnNoYWxsIElzbGFuZHMiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg0Nzc4NDMpKV0sWyJNYXJ0aW5pcXVlIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMTM1MTUyKSldLFsiTWF1cml0YW5pYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDY2Nzk5NikpXSxbIk1hdXJpdGl1cyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDE1MDA1NCkpXSxbIk1heW90dGUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg0ODMxNDkpKV0sWyJNZXhpY28iLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg4NjU3MDApKV0sWyJNaWNyb25lc2lhIChGZWRlcmF0ZWQgU3RhdGVzIG9mKSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI5MTA5OCkpXSxbIk1vbGRvdmEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygzMjEzMzYpKV0sWyJNb25hY28iLCgpPT5pLnQobnVsbCx2b2lkIDAsbygyMDg5MDQpKV0sWyJNb25nb2xpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDkxMzcwOSkpXSxbIk1vbnRlbmVncm8iLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg3MzkzNjUpKV0sWyJNb250c2VycmF0IiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMzMzMjYyKSldLFsiTW9yb2NjbyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDcyMTQzMykpXSxbIk1vemFtYmlxdWUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygxMDAwMjYpKV0sWyJNeWFubWFyIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMjM5NDMpKV0sWyJOYW1pYmlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNTcwNjE4KSldLFsiTmF1cnUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg0NzM0MzcpKV0sWyJOZXBhbCIsKCk9PmkudChudWxsLHZvaWQgMCxvKDQ3MTI4OCkpXSxbIk5ldGhlcmxhbmRzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNjE2ODYyKSldLFsiTmV3IENhbGVkb25pYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI0OTU4OCkpXSxbIk5ldyBaZWFsYW5kIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDIxNikpXSxbIk5pY2FyYWd1YSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDYyMzQ0MCkpXSxbIk5pZ2VyIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNTkyMTg5KSldLFsiTmlnZXJpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDg0OTg2OCkpXSxbIk5pdWUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5MDc0NzApKV0sWyJOb3Jmb2xrIElzbGFuZCIsKCk9PmkudChudWxsLHZvaWQgMCxvKDk2NzQxMikpXSxbIk5vcnRoIE1hY2Vkb25pYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDcyOTc4MikpXSxbIk5vcnRoZXJuIE1hcmlhbmEgSXNsYW5kcyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDYxMjU1NykpXSxbIk5vcndheSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDg0NTUyMykpXSxbIk9tYW4iLCgpPT5pLnQobnVsbCx2b2lkIDAsbygyODUyOTMpKV0sWyJQYWtpc3RhbiIsKCk9PmkudChudWxsLHZvaWQgMCxvKDg0NDQzNikpXSxbIlBhbGF1IiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzk4NDc2KSldLFsiUGFsZXN0aW5lLCBTdGF0ZSBvZiIsKCk9PmkudChudWxsLHZvaWQgMCxvKDY5ODA4MykpXSxbIlBhbmFtYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDEwMDcyOSkpXSxbIlBhcHVhIE5ldyBHdWluZWEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg3MjU2OTcpKV0sWyJQYXJhZ3VheSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDQyMDEzNSkpXSxbIlBlcnUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg4NTExMTEpKV0sWyJQaGlsaXBwaW5lcyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDYxMzY0NykpXSxbIlBpdGNhaXJuIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMzg0MzgyKSldLFsiUG9sYW5kIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTY4NjA5KSldLFsiUG9ydHVnYWwiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygzOTg5NCkpXSxbIlB1ZXJ0byBSaWNvIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oODQzMzI3KSldLFsiUWF0YXIiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5MzM3NTMpKV0sWyJSw6l1bmlvbiIsKCk9PmkudChudWxsLHZvaWQgMCxvKDg3MjY4MCkpXSxbIkxhIFJldW5pb24iLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg4NzI2ODApKV0sWyJSb21hbmlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTA1OTQ1KSldLFsiUnVzc2lhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTM0ODgzKSldLFsiUnVzc2lhbiBGZWRlcmF0aW9uIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMzkwNTk4KSldLFsiU0lOVCBNQUFSVEVOIChEVVRDSCBQQVJUKSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDc5NTAyMSkpXSxbIlJ3YW5kYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDc1ODI5NykpXSxbIlNhaW50IEJhcnRow6lsZW15IiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMTk5NDgzKSldLFsiU2FpbnQgSGVsZW5hLCBBc2NlbnNpb24gYW5kIFRyaXN0YW4gZGEgQ3VuaGEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5NTU4MzUpKV0sWyJTYWludCBLaXR0cyBhbmQgTmV2aXMiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg1NzY5NzUpKV0sWyJTYWludCBMdWNpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI1ODMxMSkpXSxbIlNhaW50IE1hcnRpbiAoRnJlbmNoIHBhcnQpIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDI1MDY0KSldLFsiU2FpbnQgUGllcnJlIGFuZCBNaXF1ZWxvbiIsKCk9PmkudChudWxsLHZvaWQgMCxvKDc5NzAzNSkpXSxbIlNhaW50IFZpbmNlbnQgYW5kIHRoZSBHcmVuYWRpbmVzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNjIyNjEzKSldLFsiU2Ftb2EiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg1OTg5NjMpKV0sWyJTYW4gTWFyaW5vIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTk5NzYyKSldLFsiU2FvIFRvbWUgYW5kIFByaW5jaXBlIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMjc5MzgyKSldLFsiU2F1ZGkgQXJhYmlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzYxNTIzKSldLFsiU2VuZWdhbCIsKCk9PmkudChudWxsLHZvaWQgMCxvKDIyNDI4OSkpXSxbIlNlcmJpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDcxODUyOSkpXSxbIlNleWNoZWxsZXMiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg0MjA4MjEpKV0sWyJTaWVycmEgTGVvbmUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygxNjQ5OTIpKV0sWyJTaW5nYXBvcmUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg2NDM3OTUpKV0sWyJTaW50IE1hYXJ0ZW4gKER1dGNoIHBhcnQpIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzM2NDApKV0sWyJTbG92YWtpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI2MzQzMikpXSxbIlNsb3ZlbmlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzIxODIxKSldLFsiU29sb21vbiBJc2xhbmRzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMTgxNzgpKV0sWyJTb21hbGlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNjAwNTcpKV0sWyJTb3V0aCBBZnJpY2EiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygzMTAwODIpKV0sWyJTb3V0aCBHZW9yZ2lhIGFuZCB0aGUgU291dGggU2FuZHdpY2ggSXNsYW5kcyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDQ0Nzg1NCkpXSxbIlNvdXRoIEtvcmVhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNTg3NzUyKSldLFsiU291dGggU3VkYW4iLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg0NTcxODYpKV0sWyJTcGFpbiIsKCk9PmkudChudWxsLHZvaWQgMCxvKDc4ODMyMSkpXSxbIlNyaSBMYW5rYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDgwNDc2NikpXSxbIlN1ZGFuIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTc0NDA0KSldLFsiU3VyaW5hbWUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg4MTg4MzcpKV0sWyJTdmFsYmFyZCBhbmQgSmFuIE1heWVuIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTczOTE1KSldLFsiU3dlZGVuIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMzY5OTYzKSldLFsiU3dpdHplcmxhbmQiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg3MzM5NzEpKV0sWyJTeXJpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI3NDQ4NSkpXSxbIlRhaXdhbiIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI3MzE1NykpXSxbIlRhamlraXN0YW4iLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5Njg0NTgpKV0sWyJUYW56YW5pYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDQ5ODE4MykpXSxbIlRoYWlsYW5kIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNTUzMDQ0KSldLFsiVGltb3ItTGVzdGUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg4MDMwNTEpKV0sWyJUb2dvIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oODMyNDQ4KSldLFsiVG9rZWxhdSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDEwNDE3NykpXSxbIlRvbmdhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMjUwNTU1KSldLFsiVHJpbmlkYWQgYW5kIFRvYmFnbyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDMxNDg3KSldLFsiVHVuaXNpYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDY3NzU5KSldLFsiVHVya2V5IiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNjMxODEwKSldLFsiVHVya21lbmlzdGFuIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzM1NjgzKSldLFsiVHVya3MgYW5kIENhaWNvcyBJc2xhbmRzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTcwNjI0KSldLFsiVHV2YWx1IiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDMwMTM0KSldLFsiVS5TLiBWaXJnaW4gSXNsYW5kcyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDQzMTM3NykpXSxbIlVBRSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDE2MzExMCkpXSxbIlVTQSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDMwMTExNykpXSxbIlVnYW5kYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDU4ODY5MykpXSxbIlVrcmFpbmUiLCgpPT5pLnQobnVsbCx2b2lkIDAsbygzMTc0NzUpKV0sWyJVbml0ZWQgQXJhYiBFbWlyYXRlcyIsKCk9PmkudChudWxsLHZvaWQgMCxvKDI0OTA5MSkpXSxbIlVuaXRlZCBLaW5nZG9tIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMjgyNzMpKV0sWyJVbml0ZWQgU3RhdGVzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oOTY3OTQxKSldLFsiVW5pdGVkIFN0YXRlcyBNaW5vciBPdXRseWluZyBJc2xhbmRzIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNzM2Nzk5KSldLFsiVXJ1Z3VheSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDkyODU1MykpXSxbIlVTQSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDMwMTExNykpXSxbIlV6YmVraXN0YW4iLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg3ODM5NzApKV0sWyJWYW51YXR1IiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDE2MjU3KSldLFsiVmVuZXp1ZWxhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNjQzNTAzKSldLFsiVmlldG5hbSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDg1MjIxKSldLFsiVmlyZ2luIElzbGFuZHMgKEJyaXRpc2gpIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDIzMjA2KSldLFsiVmlyZ2luIElzbGFuZHMgKFUuUy4pIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oMzAxMjI5KSldLFsiV2FsbGlzIGFuZCBGdXR1bmEiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg1OTA1MDUpKV0sWyJXZXN0ZXJuIFNhaGFyYSIsKCk9PmkudChudWxsLHZvaWQgMCxvKDg4MTI3NykpXSxbIlllbWVuIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oNDA5Mzg0KSldLFsiWmFtYmlhIiwoKT0+aS50KG51bGwsdm9pZCAwLG8oODY3MzkzKSldLFsiWmltYmFid2UiLCgpPT5pLnQobnVsbCx2b2lkIDAsbyg5NTkxNTUpKV1dKQp9LDE1OTUxMyhlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtnZXRRdW90ZVNlc3Npb25JbnN0YW5jZTooKT0+YX0pO3ZhciBpPW8oOTI3NTkzKSxuPW8oNzU1NjI3KSxyPW8oMTUwMTUwKTtjb25zdCBzPXt9O2Z1bmN0aW9uIGEoZT0iZnVsbCIpe3JldHVybiBzW2VdfHxmdW5jdGlvbihlPSJmdWxsIix0KXtzW2VdPXR9KGUsbmV3IGkuUXVvdGVTZXNzaW9uTXVsdGlwbGV4ZXIoe25hbWU6ZSxhcGk6d2luZG93LkNoYXJ0QXBpSW5zdGFuY2UsZmllbGRzOmxbZV0sZXh0ZW5zaW9uczp7Zm9ybWF0dGVyOmU9Pm5ldyBjKGUpLmZvcm1hdHRlcixzbmFwc2hvdDplPT5uZXcgZChlKS5zbmFwc2hvdH19KSksc1tlXX1jb25zdCBsPXtzaW1wbGU6WyJiYXNlLWN1cnJlbmN5LWxvZ29pZCIsImxvZ28iLCJjaCIsImNocCIsImN1cnJlbmN5LWxvZ29pZCIsImN1cnJlbmN5X2NvZGUiLCJjdXJyZW5jeV9pZCIsImJhc2VfY3VycmVuY3lfaWQiLCJjdXJyZW50X3Nlc3Npb24iLCJkZXNjcmlwdGlvbiIsImV4Y2hhbmdlIiwiZm9ybWF0IiwiZnJhY3Rpb25hbCIsImlzX3RyYWRhYmxlIiwibGFuZ3VhZ2UiLCJsb2NhbF9kZXNjcmlwdGlvbiIsImxpc3RlZF9leGNoYW5nZSIsImxvZ29pZCIsImxwIiwibHBfdGltZSIsIm1pbm1vdiIsIm1pbm1vdmUyIiwib3JpZ2luYWxfbmFtZSIsInByaWNlc2NhbGUiLCJwcm9fbmFtZSIsInNob3J0X25hbWUiLCJ0eXBlIiwidHlwZXNwZWNzIiwidXBkYXRlX21vZGUiLCJ2b2x1bWUiLCJ2YXJpYWJsZV90aWNrX3NpemUiLCJ2YWx1ZV91bml0X2lkIiwidW5pdF9pZCIsIm1lYXN1cmUiXX07bC5zaW1wbGVEZXRhaWxlZD1bLi4ubC5zaW1wbGUsImFzayIsImJpZCIsImZ1bmRhbWVudGFscyIsImhpZ2hfcHJpY2UiLCJpc190cmFkYWJsZSIsImxvd19wcmljZSIsIm9wZW5fcHJpY2UiLCJwcmV2X2Nsb3NlX3ByaWNlIiwicmNoIiwicmNocCIsInJ0YyIsInJ0Y190aW1lIiwic3RhdHVzIiwiYmFzaWNfZXBzX25ldF9pbmNvbWUiLCJiZXRhXzFfeWVhciIsImVhcm5pbmdzX3Blcl9zaGFyZV9iYXNpY190dG0iLCJpbmR1c3RyeSIsIm1hcmtldF9jYXBfYmFzaWMiLCJwcmljZV9lYXJuaW5nc190dG0iLCJzZWN0b3IiLCJ2b2x1bWUiLCJkaXZpZGVuZHNfeWllbGQiLCJ0aW1lem9uZSJdLGwuZnVsbD1bXSxsLndhdGNobGlzdD1bLi4ubC5zaW1wbGUsInJjaHAiLCJuY2hwIiwicnRjIiwiY291bnRyeV9jb2RlIiwicHJvdmlkZXJfaWQiLCJkaXZpZGVuZHNfYXZhaWxhYmlsaXR5IiwiZmluYW5jaWFsc19hdmFpbGFiaWxpdHkiLCJlYXJuaW5nc19hdmFpbGFiaWxpdHkiXSxsLnBvcnRmb2xpbz1bInByb19uYW1lIiwic2hvcnRfbmFtZSIsImV4Y2hhbmdlIiwibGlzdGVkX2V4Y2hhbmdlIiwiZGVzY3JpcHRpb24iLCJsb2NhbF9kZXNjcmlwdGlvbiIsImxhbmd1YWdlIiwic2VjdG9yIiwidHlwZSIsInR5cGVzcGVjcyIsImluZHVzdHJ5IiwiY3VycmVuY3lfY29kZSIsImN1cnJlbmN5X2lkIiwiY2giLCJjaHAiLCJsb2dvIiwibG9nb2lkIiwiY3VycmVuY3ktbG9nb2lkIiwiYmFzZS1jdXJyZW5jeS1sb2dvaWQiLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfbmV4dF9mcSIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlIiwiZWFybmluZ3NfcmVsZWFzZV9kYXRlIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZxIiwibHAiLCJmcmFjdGlvbmFsIiwibWlubW92IiwibWlubW92ZTIiLCJwcmljZXNjYWxlIiwidm9sdW1lIiwiYXZlcmFnZV92b2x1bWUiLCJtYXJrZXRfY2FwX2NhbGMiLCJtYXJrZXRfY2FwX2Jhc2ljIiwidG90YWxfcmV2ZW51ZSIsImVhcm5pbmdzX3Blcl9zaGFyZV9iYXNpY190dG0iLCJwcmljZV9lYXJuaW5nc190dG0iLCJiZXRhXzFfeWVhciIsImRwc19jb21tb25fc3RvY2tfcHJpbV9pc3N1ZV9meSIsImRpdmlkZW5kc195aWVsZCIsImZ1bmRhbWVudGFsX2N1cnJlbmN5X2NvZGUiLCJyYXRlc19tYyIsInJhdGVzX2Z5IiwicmF0ZXNfdHRtIiwiZm9ybWF0IiwidmFsdWVfdW5pdF9pZCIsInVuaXRfaWQiLCJtZWFzdXJlIl0sbC5ub3Rlcz1bInNob3J0X25hbWUiLCJwcm9fbmFtZSIsImxvZ29pZCIsImN1cnJlbmN5LWxvZ29pZCIsImJhc2UtY3VycmVuY3ktbG9nb2lkIiwibG9nbyIsInN5bWJvbC1wcmltYXJ5bmFtZSIsInR5cGUiLCJ0eXBlc3BlY3MiXSxsLmVzdGltYXRlcz1bImZ1bmRhbWVudGFsX2RhdGEiLCJ0eXBlIiwidHlwZXNwZWNzIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X25leHRfc3ltYm9sX2N1cnJlbmN5X2ZxIiwiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2FsaWduZWRfZGF0ZSIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9jYWxlbmRhcl9kYXRlIiwiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGUiXSxsLmVjb25vbWljPVsicmVmZXJlbmNlLWxhc3QtcGVyaW9kIiwibHAiLCJjdXJyZW5jeV9jb2RlIiwidmFsdWVfdW5pdF9pZCIsInVuaXRfaWQiLCJtZWFzdXJlIl0sbC5vcHRpb25zPVsiYXNrIiwiYmlkIiwibHAiLCJ2b2x1bWUiLCJjaCIsImNocCJdO2NsYXNzIGN7Y29uc3RydWN0b3IoZSl7dGhpcy5fZm9ybWF0dGVyVmFsdWVzQ2FjaGU9e30sdGhpcy5fd2FpdGluZ0ZvckZvcm1hdHRlcnM9e30sdGhpcy5mb3JtYXR0ZXI9KGUsdCk9PntpZih0aGlzLl93YWl0aW5nRm9yRm9ybWF0dGVyc1tlXSlyZXR1cm4gdGhpcy5fd2FpdGluZ0ZvckZvcm1hdHRlcnNbZV07ZnVuY3Rpb24gbyhlKXtjb25zdCBvPXQmJiFlLmZyYWN0aW9uYWw/MTplLm1pbm1vdjtyZXR1cm4gbmV3IG4uUHJpY2VGb3JtYXR0ZXIoe3ByaWNlU2NhbGU6ZS5wcmljZXNjYWxlLG1pbk1vdmU6byxmcmFjdGlvbmFsOmUuZnJhY3Rpb25hbCxtaW5Nb3ZlMjplLm1pbm1vdmUyfSl9Y29uc3QgaT1uZXcgUHJvbWlzZSgoKHQsaSk9PntpZih0aGlzLl9mb3JtYXR0ZXJWYWx1ZXNDYWNoZVtlXSl0KG8odGhpcy5fZm9ybWF0dGVyVmFsdWVzQ2FjaGVbZV0pKTtlbHNle2NvbnN0IG49KDAsci5ndWlkKSgpO3RoaXMuX211bHRpcGxleGVyLnN1YnNjcmliZShuLFtlXSwocj0+eyJlcnJvciI9PT1yLnN0YXR1cyYmKHRoaXMuX3dhaXRpbmdGb3JGb3JtYXR0ZXJzW2VdPW51bGwsCmkoIlF1b3RlcyBzbmFwc2hvdCBpcyBub3QgcmVjZWl2ZWQiKSksZnVuY3Rpb24oZSl7cmV0dXJuIGUmJm51bGwhPWUucHJpY2VzY2FsZSYmbnVsbCE9ZS5taW5tb3Z9KHIudmFsdWVzKSYmKHRoaXMuX3dhaXRpbmdGb3JGb3JtYXR0ZXJzW2VdPW51bGwsdGhpcy5fZm9ybWF0dGVyVmFsdWVzQ2FjaGVbZV09ci52YWx1ZXMsdChvKHIudmFsdWVzKSksdGhpcy5fbXVsdGlwbGV4ZXIudW5zdWJzY3JpYmUobixlKSl9KSl9fSkpO3JldHVybiB0aGlzLl93YWl0aW5nRm9yRm9ybWF0dGVyc1tlXT1pLGl9LHRoaXMuX211bHRpcGxleGVyPWV9fWNsYXNzIGR7Y29uc3RydWN0b3IoZSl7dGhpcy5fc25hcHNob3RWYWx1ZXNDYWNoZT17fSx0aGlzLl93YWl0aW5nRm9yU25hcHNob3Q9e30sdGhpcy5zbmFwc2hvdD1lPT57aWYodGhpcy5fd2FpdGluZ0ZvclNuYXBzaG90W2VdKXJldHVybiB0aGlzLl93YWl0aW5nRm9yU25hcHNob3RbZV07Y29uc3QgdD1uZXcgUHJvbWlzZSgoKHQsbyk9PntpZih0aGlzLl9zbmFwc2hvdFZhbHVlc0NhY2hlW2VdKXQodGhpcy5fc25hcHNob3RWYWx1ZXNDYWNoZVtlXSk7ZWxzZXtjb25zdCBpPSgwLHIuZ3VpZCkoKTt0aGlzLl9tdWx0aXBsZXhlci5zdWJzY3JpYmUoaSxbZV0sKG49PnsiZXJyb3IiPT09bi5zdGF0dXMmJih0aGlzLl93YWl0aW5nRm9yU25hcHNob3RbZV09bnVsbCxvKCJRdW90ZXMgc25hcHNob3QgaXMgbm90IHJlY2VpdmVkIikpO2NvbnN0IHI9bi52YWx1ZXM7ciYmci5taW5tb3YmJnIucHJpY2VzY2FsZSYmci5kZXNjcmlwdGlvbiYmKHRoaXMuX3dhaXRpbmdGb3JTbmFwc2hvdFtlXT1udWxsLHRoaXMuX3NuYXBzaG90VmFsdWVzQ2FjaGVbZV09cix0KHIpLHRoaXMuX211bHRpcGxleGVyLnVuc3Vic2NyaWJlKGksZSkpfSkpfX0pKTtyZXR1cm4gdGhpcy5fd2FpdGluZ0ZvclNuYXBzaG90W2VdPXQsdH0sdGhpcy5fbXVsdGlwbGV4ZXI9ZX19InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJih3aW5kb3cuZ2V0UXVvdGVTZXNzaW9uSW5zdGFuY2U9YSl9LDk3MTA1MShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtHUk9VUF9QQVRIX1BBVFRFUk46KCk9Pm4sTk9URVNfUEFUSF9QQVRURVJOOigpPT5pLFVOQVRURU5ERURfUEFUSF9QQVRURVJOOigpPT5yLHBhdGhUb0dyb3VwOigpPT5zfSk7Y29uc3QgaT0iL25vdGVzLyIsbj0iL25vdGVzL2dyb3Vwcy86c3ltYm9sLyIscj0iL25vdGVzL3VuYXR0ZW5kZWQvIjtmdW5jdGlvbiBzKGUpe3JldHVybiBlP24ucmVwbGFjZSgiOnN5bWJvbCIsZW5jb2RlVVJJQ29tcG9uZW50KGUpKTpyfX0sODI3MDEoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7YXZhaWxhYmxlT2ZmZXJzOigpPT5ufSk7dmFyIGk9bygzODQwMTcpO2NvbnN0IG49bmV3IGNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5faXNJbnZhbGlkPSEwLHRoaXMuX29mZmVycz17fX1ydW5PclVwZGF0ZShlKXt0aGlzLl9pc0ludmFsaWQ/d2luZG93LnJlcXVlc3RJZGxlQ2FsbGJhY2s/d2luZG93LnJlcXVlc3RJZGxlQ2FsbGJhY2soKCgpPT50aGlzLl91cGRhdGVPZmZlcnMoKS50aGVuKGUpKSk6c2V0VGltZW91dCgoKCk9PnRoaXMuX3VwZGF0ZU9mZmVycygpLnRoZW4oZSkpLDApOmUodGhpcy5fb2ZmZXJzKX1nZXREYXRhKCl7cmV0dXJuIHRoaXMuX29mZmVyc31pbnZhbGlkYXRlKGUpe3RoaXMuX2lzSW52YWxpZD0hMCx3aW5kb3cudXNlci5hdmFpbGFibGVfb2ZmZXJzPXt9LHRoaXMucnVuT3JVcGRhdGUoZT8/KCgpPT57fSkpfXNldEluaXRpYWwoZSl7dGhpcy5faXNJbnZhbGlkPSExLHRoaXMuX29mZmVycz1lLHdpbmRvdy51c2VyLmF2YWlsYWJsZV9vZmZlcnM9dGhpcy5fb2ZmZXJzfWVuc3VyZU9mZmVycygpe3JldHVybiBuZXcgUHJvbWlzZSgoZT0+dGhpcy5ydW5PclVwZGF0ZShlKSkpfXdpdGhBdmFpbGFibGVPZmZlcnMoZSl7cmV0dXJuIGFzeW5jKC4uLnQpPT4oYXdhaXQgdGhpcy5lbnN1cmVPZmZlcnMoKSxlKC4uLnQpKX1hc3luYyBfdXBkYXRlT2ZmZXJzKCl7cmV0dXJuIHdpbmRvdy51c2VyLmF2YWlsYWJsZV9vZmZlcnN8fCh3aW5kb3cudXNlci5hdmFpbGFibGVfb2ZmZXJzPXt9KSx0aGlzLl91cGRhdGVPZmZlcnNQcm9taXNlP3RoaXMuX3VwZGF0ZU9mZmVyc1Byb21pc2U6dGhpcy5faXNJbnZhbGlkPyh0aGlzLl91cGRhdGVPZmZlcnNQcm9taXNlPSgwLGkuZmV0Y2gpKCIvYXBpL3YxL29mZmVycy8iLHttZXRob2Q6IkdFVCIsY3JlZGVudGlhbHM6ImluY2x1ZGUifSkudGhlbigoYXN5bmMgZT0+e2NvbnN0IHQ9YXdhaXQgZS5qc29uKCk7cmV0dXJuIGRlbGV0ZSB0aGlzLl91cGRhdGVPZmZlcnNQcm9taXNlLHRoaXMuX2lzSW52YWxpZD0hMSx0aGlzLl9vZmZlcnM9T2JqZWN0LmVudHJpZXModCkucmVkdWNlKCgoZSxbdCxvXSk9PihvJiYoZVt0XT1vKSxlKSkse30pLHdpbmRvdy51c2VyLmF2YWlsYWJsZV9vZmZlcnM9dGhpcy5fb2ZmZXJzLHR9KSkuY2F0Y2goKCgpPT4oe30pKSksdGhpcy5fdXBkYXRlT2ZmZXJzUHJvbWlzZSk6dGhpcy5fb2ZmZXJzfX19LDc3NDUwNyhlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtVc2VyU3RhdHVzOigpPT5pfSk7dmFyIGksbj1vKDg2NDAzNCkscj1vKDYzODU3MSk7IWZ1bmN0aW9uKGUpe2UuTm9uUHJvPSJub25fcHJvIixlLlBybz0icHJvIn0oaXx8KGk9e30pKTsoMCxyLm1lbW9pemUpKCgoKT0+d2luZG93LnVzZXIuaXNfdHJpYWwmJndpbmRvdy51c2VyLnByb19wbGFuP3dpbmRvdy51c2VyLmlzX2V4cGVydHx8d2luZG93LnVzZXIuZGVjbGFyZWRfc3RhdHVzIT09aS5Qcm8/bi5XRUVLTFlfU1VCU0NSSVBUSU9OX0RBWVNfTEVOOm4uTU9OVEhMWV9TVUJTQ1JJUFRJT05fREFZU19MRU46bi5XRUVLTFlfU1VCU0NSSVBUSU9OX0RBWVNfTEVOKSl9LDk2MDIyOShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtnZXRTY3JlZW5lckNvdW50cmllc01hcDooKT0+c30pO3ZhciBpPW8oMTM3ODc5KSxuPW8oMzg5OTk0KTtsZXQgcj1udWxsO2Z1bmN0aW9uIHMoKXtpZihyKXJldHVybiByO3I9e307Zm9yKGNvbnN0IGUgb2YgbilpZihpLmNvdW50cmllcy5oYXNPd25Qcm9wZXJ0eShlKSl7CmNvbnN0IHQ9ZSxvPWkuY291bnRyaWVzW3RdLG49by5zY3JlZW5lck5hbWUscz1vLmV4Y2hhbmdlc1N0b2Nrc3x8W107clt0XT17Li4ubyxzY3JlZW5lck5hbWU6bixleGNoYW5nZXNTdG9ja3M6cyxncm91cDpvLmdyb3VwfX1yZXR1cm4gcn19LDIxNDA2MChlLHQsbyl7InVzZSBzdHJpY3QiO3ZhciBpPW8oNDgyNTA0KTtjb25zdCBuPW8oMjIxMDYxKS5nZXRMb2dnZXIoIkNvbW1vblVJLkNyZWF0ZVRWQmxvY2tQbHVnaW4iKTtlLmV4cG9ydHMuY3JlYXRlVHZCbG9ja1dpdGhJbnN0YW5jZT1mdW5jdGlvbihlLHQpe2lmKGUmJnQpcmV0dXJuIGU9ZS50b1N0cmluZygpLGZ1bmN0aW9uKHIscyxhKXt2YXIgbCxjLGQ7cmV0dXJuImdldCI9PT1yP2w9czooYz1zLCJvYmplY3QiPT10eXBlb2YgciYmdm9pZCAwPT09cz8oYz1yLHI9ImluaXQiKToic3RyaW5nIiE9dHlwZW9mIHImJihyPSJpbml0IikpLCJnZXRJbnN0YW5jZSI9PT1yP2kodGhpcykuZXEoMCkuZGF0YShlKToiZGVzdHJveSI9PT1yPyhkPWkodGhpcykuZXEoMCkuZGF0YShlKSk/dm9pZCgiZnVuY3Rpb24iPT10eXBlb2YgZC5kZXN0cm95PyhvKGQsImRlc3Ryb3kiLGMpLGkodGhpcykuZXEoMCkucmVtb3ZlRGF0YShlKSk6bi5sb2dFcnJvcigiW0Jsb2NrIFBsdWdpbl0gIitlKyIgZG9lcyBub3Qgc3VwcG9ydCBkZXN0cm95IGNvbW1hbmQiKSk6dm9pZCBjb25zb2xlLndhcm4oIltCbG9jayBQbHVnaW5dIFRyeWluZyB0byBleGVjdXRlIGRlc3Ryb3kgbWV0aG9kIG9mICIrZSsiIGJ1dCBpdCBoYXMgbm90IGJlZW4gaW5pdGVkIik6ImdldCI9PT1yPyhkPWkodGhpcykuZXEoMCkuZGF0YShlKSk/ImZ1bmN0aW9uIj09dHlwZW9mIGRbbF0/byhkLGwsYSk6ZFtsXTp2b2lkIGNvbnNvbGUud2FybigiW0Jsb2NrIFBsdWdpbl0gVHJ5aW5nIHRvIGdldCBwcm9wIG9yIGV4ZWN1dGUgbWV0aG9kIG9mICIrZSsiIGJ1dCBpdCBoYXMgbm90IGJlZW4gaW5pdGVkIik6aSh0aGlzKS5lYWNoKChmdW5jdGlvbigpe3ZhciBzPWkodGhpcyksYT1zLmRhdGEoZSk7dm9pZCAwPT09YSYmKGE9dm9pZCAwPT09Yz90KHMpOnQocyxjKSxzLmRhdGEoZSxhKSksImluaXQiIT09ciYmKCJmdW5jdGlvbiI9PXR5cGVvZiBhW3JdP28oYSxyLGMpOm4ubG9nRXJyb3IoIltCbG9jayBQbHVnaW5dICIrZSsiIGRvZXMgbm90IHN1cHBvcnQgY29tbWFuZCAiK3IpKX0pKX07ZnVuY3Rpb24gbyhlLHQsbyl7cmV0dXJuIHZvaWQgMD09PW8/ZVt0XSgpOmVbdF0obyl9fX0sMjE1NTM5KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2RlZmF1bHQ6KCk9Pmh9KTt2YXIgaT1vKDIxNDA2MCksbj0obygyNjIzMTkpLG8oNDgyNTA0KSkscj1vKDQ5MTg2KSx7bWVyZ2U6c309byg2MDE4NDEpO2NvbnN0IGE9bygyMjEwNjEpLmdldExvZ2dlcigiVWkuVHZDb250cm9sQ2hlY2tib3giKSxsPXtsYWJlbFdyYXBwZXI6J3t7I2hhc0xhYmVsfX08bGFiZWw+e3sjbGFiZWxMZWZ0fX08c3BhbiBjbGFzcz0idHYtY29udHJvbC1jaGVja2JveF9fbGFiZWwge3sjbGFiZWxBZGRDbGFzc319e3tsYWJlbEFkZENsYXNzfX17ey9sYWJlbEFkZENsYXNzfX0iPnt7bGFiZWxMZWZ0fX08L3NwYW4+e3svbGFiZWxMZWZ0fX17ez4gaW5wdXRXcmFwcGVyIH19e3sjbGFiZWxSaWdodH19PHNwYW4gY2xhc3M9InR2LWNvbnRyb2wtY2hlY2tib3hfX2xhYmVsIHt7I2xhYmVsQWRkQ2xhc3N9fXt7bGFiZWxBZGRDbGFzc319e3svbGFiZWxBZGRDbGFzc319Ij57e2xhYmVsUmlnaHR9fTwvc3Bhbj57ey9sYWJlbFJpZ2h0fX08L2xhYmVsPnt7L2hhc0xhYmVsfX17e15oYXNMYWJlbH19e3s+IGlucHV0V3JhcHBlciB9fXt7L2hhc0xhYmVsfX0nLGlucHV0V3JhcHBlcjonPHt7IHRhZyB9fSBjbGFzcz0ie3sgY3VzdG9tQ2xhc3MgfX17eyNkaXNhYmxlZH19IGktZGlzYWJsZWR7ey9kaXNhYmxlZH19Ij57e15oYXNDaGVja2JveH19e3s+IGNoZWNrYm94IH19e3svaGFzQ2hlY2tib3h9fXt7PiBib3ggfX08L3t7IHRhZyB9fT4nLGNoZWNrYm94Oic8aW5wdXR7eyNpZH19IGlkPSJ7eyBpZCB9fSJ7ey9pZH19IGNsYXNzPSJ7ez4gY2hlY2tib3hDbGFzcyB9fSIgdHlwZT0iY2hlY2tib3gie3sjbmFtZX19IG5hbWU9Int7IG5hbWUgfX0ie3svbmFtZX19e3sjY2hlY2tlZH19IGNoZWNrZWR7ey9jaGVja2VkfX17eyNkaXNhYmxlZH19IGRpc2FibGVke3svZGlzYWJsZWR9fT4nLGNoZWNrYm94Q2xhc3M6Int7IGN1c3RvbUNsYXNzIH19X19pbnB1dCIsYm94Oic8c3BhbiBjbGFzcz0ie3sgY3VzdG9tQ2xhc3MgfX1fX2JveCB7eyNib3hBZGRDbGFzc319e3tib3hBZGRDbGFzc319e3svYm94QWRkQ2xhc3N9fSI+JytvKDQ4ODg3NSkrIjwvc3Bhbj4ifSxjPSJpLWluaXRlZCI7Y2xhc3MgZHtjb25zdHJ1Y3Rvcih7Y3VzdG9tQ2xhc3M6ZT0idHYtY29udHJvbC1jaGVja2JveCIsJGNoZWNrYm94OnQsdGFnOm8saWQ6aSxuYW1lOnIsY2hlY2tlZDpzLGRpc2FibGVkOmwsbGFiZWxMZWZ0OmQsbGFiZWxSaWdodDpoLGxhYmVsQWRkQ2xhc3M6dSxib3hBZGRDbGFzczpffSl7dGhpcy4kZWw9bnVsbCx2b2lkIDA9PT1vJiYobz1kfHxoPyJzcGFuIjoibGFiZWwiKTtjb25zdCBwPXQgaW5zdGFuY2VvZiBuJiYhIXQubGVuZ3RoO2lmKHApe2lmKCF0LmlzKCJpbnB1dFt0eXBlPWNoZWNrYm94XSIpKXJldHVybiB2b2lkIGEubG9nRXJyb3IoImAkY2hlY2tib3hgIG5lZWQgdG8gYmUgaW5wdXRbdHlwZT1jaGVja2JveF0iKTtpZih0Lmhhc0NsYXNzKGMpKXJldHVybjt0aGlzLl9zZXRJbnB1dElkKHQsaSksdGhpcy5fc2V0SW5wdXRDbGFzcyh0LGUpLHRoaXMuX3NldElucHV0TmFtZSh0LHIpLHRoaXMuX3NldElucHV0Q2hlY2tlZCh0LHMpLHRoaXMuX3NldElucHV0RGlzYWJsZWQodCxsKSxzPSEhdC5wcm9wKCJjaGVja2VkIiksbD0hIXQuYXR0cigiZGlzYWJsZWQiKX10aGlzLiRlbD10aGlzLnJlbmRlcih7JGNoZWNrYm94OnQsaGFzQ2hlY2tib3g6cCxjdXN0b21DbGFzczplLHRhZzpvLGlkOmksbmFtZTpyLGNoZWNrZWQ6cyxkaXNhYmxlZDpsLGxhYmVsTGVmdDpkLGxhYmVsUmlnaHQ6aCxoYXNMYWJlbDpkfHxoLGxhYmVsQWRkQ2xhc3M6dSxib3hBZGRDbGFzczpffSksCnRoaXMuJGNoZWNrYm94PXA/dDp0aGlzLiRlbC5maW5kKCJpbnB1dFt0eXBlPWNoZWNrYm94XSIpfV9zZXRJbnB1dElkKGUsdCl7dm9pZCAwIT09dCYmZS5hdHRyKCJpZCIsdCl9X3NldElucHV0Q2xhc3MoZSx0KXtjb25zdCBvPXIucmVuZGVyKGwuY2hlY2tib3hDbGFzcyx7Y3VzdG9tQ2xhc3M6dH0pO2UuYWRkQ2xhc3Mobyl9X3NldElucHV0TmFtZShlLHQpe3ZvaWQgMCE9PXQmJmUuYXR0cigibmFtZSIsdCl9X3NldElucHV0Q2hlY2tlZChlLHQpe3ZvaWQgMCE9PXQmJmUucHJvcCgiY2hlY2tlZCIsISF0KX1fc2V0SW5wdXREaXNhYmxlZChlLHQpe3ZvaWQgMCE9PXQmJih0P2Uuc2V0QXR0cmlidXRlKCJkaXNhYmxlZCIsImRpc2FibGVkIik6ZS5yZW1vdmVBdHRyKCJkaXNhYmxlZCIpKX1yZW5kZXIoZSl7Y29uc3QgdD1lLiRjaGVja2JveCxvPW4oci5yZW5kZXIobC5sYWJlbFdyYXBwZXIsZSxsKSk7aWYoZS5oYXNDaGVja2JveCl7by5pbnNlcnRCZWZvcmUodCk7by5maW5kKCIuIitlLmN1c3RvbUNsYXNzKS5hbmRTZWxmKCkuZmlsdGVyKCIuIitlLmN1c3RvbUNsYXNzKS5lcSgwKS5wcmVwZW5kKHQuZGV0YWNoKCkpLHQuYWRkQ2xhc3MoYyl9cmV0dXJuIG99c2V0IGNoZWNrZWQoZSl7dGhpcy5fc2V0SW5wdXRDaGVja2VkKHRoaXMuJGNoZWNrYm94LCEhZSl9Z2V0IGNoZWNrZWQoKXtyZXR1cm4hIXRoaXMuJGNoZWNrYm94LnByb3AoImNoZWNrZWQiKX19bi5mbi50dkNvbnRyb2xDaGVja2JveD0oMCxpLmNyZWF0ZVR2QmxvY2tXaXRoSW5zdGFuY2UpKCJ0di1jb250cm9sLWNoZWNrYm94IiwoZnVuY3Rpb24oZSx0PXt9KXtyZXR1cm4gbmV3IGQocyh0LHskY2hlY2tib3g6ZX0pKX0pKTtjb25zdCBoPWR9LDU1MDY4MihlLHQsbyl7InVzZSBzdHJpY3QiO28ucih0KSxvLmQodCx7RHJvcGRvd25WaWV3OigpPT5sfSk7byg5ODY3MDUpLG8oMzc2NDUwKTt2YXIgaT1vKDkzMDIzMSksbj1vKDIxNDA2MCkscj1vKDE4OTMpLHM9bygzMzczNjIpLGE9byg0ODI1MDQpO2NsYXNzIGx7Y29uc3RydWN0b3IoZSx0PXt9KXt0aGlzLiRlbD1lLHRoaXMuJHdyYXA9dC4kd3JhcHx8ZS5maW5kKCIudHYtZHJvcGRvd24tYmVoYXZpb3JfX2J1dHRvbiIpLHRoaXMuJGJvZHk9dC4kYm9keXx8ZS5maW5kKCIudHYtZHJvcGRvd24tYmVoYXZpb3JfX2JvZHkiKSx0aGlzLm5vdENsb3NlV2l0aEN0cmw9ISF0Lm5vdENsb3NlV2l0aEN0cmwmJnQubm90Q2xvc2VXaXRoQ3RybCx0aGlzLmNsb3NlV2l0aEVzYz12b2lkIDA9PT10LmNsb3NlV2l0aEVzY3x8dC5jbG9zZVdpdGhFc2MsdGhpcy5jbG9zZVdpdGhFc2MmJnRoaXMuJGVsLmF0dHIoInRhYkluZGV4IiwwKSwoZS5kYXRhKCJzY3JvbGwiKXx8dC5zY3JvbGwpJiYodGhpcy4kc2Nyb2xsPXRoaXMuJGJvZHkuZmluZCgiLnR2LWRyb3Bkb3duLWJlaGF2aW9yX19zY3JvbGwiKSx0aGlzLiRpblNjcm9sbD10aGlzLiRzY3JvbGwuZmluZCgiLnR2LWRyb3Bkb3duLWJlaGF2aW9yX19pbnNjcm9sbCIpLHRoaXMuc2Nyb2xsPW5ldyByLlNpZGViYXJDdXN0b21TY3JvbGwodGhpcy4kc2Nyb2xsWzBdLHRoaXMuJGluU2Nyb2xsWzBdLHtzaG93VG9wU2hhZG93OiExLHNob3dCb3R0b21TaGFkb3c6ITF9KSx0aGlzLiRzY3JvbGxCYXI9YSh0aGlzLnNjcm9sbC5nZXRTY3JvbGxCYXIoKSksdGhpcy4kc2Nyb2xsQmFyJiZ0aGlzLiRzY3JvbGxCYXIub24oIm1vdXNlZG93bi50di1kcm9wZG93bi12aWV3LXNjcm9sbCIsKCgpPT57dGhpcy5vZmZDbGlja091dHNpZGUoKSxhKGRvY3VtZW50KS5vbigibW91c2V1cC50di1kcm9wZG93bi12aWV3LXNjcm9sbCIsKCgpPT57dGhpcy5vbkNsaWNrT3V0c2lkZSgpLGEoZG9jdW1lbnQpLm9mZigibW91c2V1cC50di1kcm9wZG93bi12aWV3LXNjcm9sbCIpfSkpfSkpKSwoZS5kYXRhKCJhZGFwdEJvZHkiKXx8dC5hZGFwdEJvZHkpJiYodGhpcy5fYWRhcHRCb2R5PSEwKSwoZS5kYXRhKCJhZGFwdE9ubHlJblNjcm9sbEhlaWdodCIpfHx0LmFkYXB0T25seUluU2Nyb2xsSGVpZ2h0KSYmKHRoaXMuX2FkYXB0T25seUluU2Nyb2xsSGVpZ2h0PSEwKSx0aGlzLl9maXRTY3JlZW49ZS5kYXRhKCJmaXRTY3JlZW4iKXx8dC5maXRTY3JlZW4sdGhpcy5fbWF4SGVpZ2h0PWUuZGF0YSgibWF4SGVpZ2h0Iil8fHQubWF4SGVpZ2h0LHRoaXMuX2Ryb3Bkb3duV2lkdGg9ZS5kYXRhKCJkcm9wZG93bldpZHRoIil8fHQuZHJvcGRvd25XaWR0aCx0aGlzLl9ib3VuZGluZ0VsZW1lbnQ9dC5ib3VuZGluZ0VsZW1lbnQsdGhpcy4kd3JhcC5hZGQoZS5maW5kKCIuanMtZHJvcGRvd24tdG9nZ2xlIikpLm9uKCJjbGljayIsKGU9PnthKGUuY3VycmVudFRhcmdldCkuaGFzQ2xhc3MoImpzLXByZXZlbnQtZHJvcGRvd24iKXx8dGhpcy50b2dnbGUoKX0pKSx0aGlzLl9jaGVja0lnbm9yZUNsaWNrT3V0c2lkZT1bXSwoMCxpLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJlbWJlZF9yZXNpemVyX292ZXJyaWRlcyIpJiZzLkVtYmVkVmlld3BvcnREaW1lbnNpb25zUHJvdmlkZXIuZ2V0SW5zdGFuY2UoKS5zdGFydExpc3RlbmluZygpfXRvZ2dsZSgpe3RoaXMub3BlbmVkP3RoaXMuY2xvc2UoITApOnRoaXMub3BlbigpfW9wZW4oKXt0aGlzLm9wZW5lZHx8dGhpcy5kaXNhYmxlZHx8dGhpcy5yZWFkb25seXx8KHRoaXMuJGVsLnRyaWdnZXIoImJlZm9yZU9wZW5NZW51IiksdGhpcy4kYm9keS5yZW1vdmVDbGFzcygiaS1oaWRkZW4iKS5hZGRDbGFzcygiaS1vcGVuZWQiKSx0aGlzLiR3cmFwLmFkZENsYXNzKCJpLWRyb3BwZWQiKSx0aGlzLiRlbC5hZGRDbGFzcygiaS1vcGVuZWQiKSwiaG9yeiI9PT10aGlzLl9maXRTY3JlZW4mJnRoaXMuZml0SG9yaXpvbnRhbGx5KCksdGhpcy5fYWRhcHRCb2R5JiZ0aGlzLmFkYXB0Qm9keSgpLHRoaXMub25DbGlja091dHNpZGUoKSx0aGlzLiRlbC50cmlnZ2VyKCJ1cGRhdGVTY3JvbGwiKSx0aGlzLiRlbC50cmlnZ2VyKCJhZnRlck9wZW5NZW51IiksdGhpcy5vcGVuZWQ9ITAsdGhpcy5jbG9zZVdpdGhFc2MmJnRoaXMuJGVsLm9uKCJrZXlwcmVzcyBrZXl1cCIsKGU9PnsyNz09PWUua2V5Q29kZSYmdGhpcy5jbG9zZSghMCl9KSkpfW9uQ2xpY2tPdXRzaWRlKCl7CnNldFRpbWVvdXQoKCgpPT57dGhpcy4kYm9keS5vbigiY2xpY2tvdXRzaWRlIiwoZT0+e3RoaXMuX2NoZWNrSWdub3JlQ2xpY2tPdXRzaWRlLmxlbmd0aCYmdGhpcy5fY2hlY2tJZ25vcmVDbGlja091dHNpZGUuc29tZSgodD0+dChlKSkpfHx0aGlzLmNsb3NlKCEwKX0pKX0pLDApfW9mZkNsaWNrT3V0c2lkZSgpe3RoaXMuJGJvZHkub2ZmKCJjbGlja291dHNpZGUiKX1zZXRDaGVja0lnbm9yZUNsaWNrT3V0c2lkZShlKXt0aGlzLl9jaGVja0lnbm9yZUNsaWNrT3V0c2lkZS5wdXNoKGUpfWRyb3BDaGVja0lnbm9yZUNsaWNrT3V0c2lkZShlKXt2YXIgdD10aGlzLl9jaGVja0lnbm9yZUNsaWNrT3V0c2lkZS5pbmRleE9mKGUpOy0xIT09dCYmdGhpcy5fY2hlY2tJZ25vcmVDbGlja091dHNpZGUuc3BsaWNlKHQsMSl9Y2xvc2UoZT0hMSl7IXRoaXMub3BlbmVkfHx0aGlzLmRpc2FibGVkfHx0aGlzLnJlYWRvbmx5fHwhZSYmdGhpcy5ub3RDbG9zZVdpdGhDdHJsJiYod2luZG93LmV2ZW50LmN0cmxLZXl8fHdpbmRvdy5ldmVudC5tZXRhS2V5KXx8KHRoaXMub2ZmQ2xpY2tPdXRzaWRlKCksdGhpcy4kd3JhcC5yZW1vdmVDbGFzcygiaS1kcm9wcGVkIiksdGhpcy4kZWwudHJpZ2dlcigiYmVmb3JlQ2xvc2VNZW51IiksdGhpcy4kYm9keS5yZW1vdmVDbGFzcygiaS1vcGVuZWQiKS5hZGRDbGFzcygiaS1oaWRkZW4iKSx0aGlzLiRlbC5yZW1vdmVDbGFzcygiaS1vcGVuZWQiKSx0aGlzLmNsb3NlV2l0aEVzYyYmdGhpcy4kZWwub2ZmKCJrZXlwcmVzcyBrZXl1cCIpLHRoaXMub3BlbmVkPSExLHRoaXMuJGVsLnRyaWdnZXIoImFmdGVyQ2xvc2VNZW51IikpfWlzT3BlbmVkKCl7cmV0dXJuIHRoaXMub3BlbmVkfXVwZGF0ZVNjcm9sbCgpe3RoaXMuc2Nyb2xsJiYodGhpcy5zY3JvbGwudXBkYXRlU2Nyb2xsQmFyKCksdGhpcy5zY3JvbGwuc2Nyb2xsVG9TdGFydCgpKX1lbmFibGUoKXt0aGlzLiR3cmFwLnJlbW92ZUNsYXNzKCJpLWRpc2FibGVkIiksdGhpcy5kaXNhYmxlZD0hMX1kaXNhYmxlKCl7dGhpcy4kd3JhcC5hZGRDbGFzcygiaS1kaXNhYmxlZCIpLHRoaXMuZGlzYWJsZWQ9ITB9c2V0UmVhZG9ubHkoZSl7dGhpcy5yZWFkb25seT1lfWFkYXB0Qm9keSgpe2NvbnN0IGU9dGhpcy4kYm9keSx0PXRoaXMuJHdyYXAuZ2V0KDApLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLG89dGhpcy5fYm91bmRpbmdFbGVtZW50P3RoaXMuX2JvdW5kaW5nRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTp7dG9wOjAsYm90dG9tOndpbmRvdy5pbm5lckhlaWdodCxoZWlnaHQ6d2luZG93LmlubmVySGVpZ2h0fTtpZigoMCxpLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJlbWJlZF9yZXNpemVyX292ZXJyaWRlcyIpKXtjb25zdCBlPXMuRW1iZWRWaWV3cG9ydERpbWVuc2lvbnNQcm92aWRlci5nZXRJbnN0YW5jZSgpLmRhdGEoKTtlJiYoby50b3A9TWF0aC5tYXgoby50b3AsZS50b3AtMzIpLG8uaGVpZ2h0PU1hdGgubWluKG8uaGVpZ2h0LGUuaGVpZ2h0KSxvLmJvdHRvbT1NYXRoLm1pbihvLmJvdHRvbSxlLmJvdHRvbSkpfWNvbnN0IG49cGFyc2VGbG9hdChlLmNzcygicGFkZGluZy10b3AiKSkscj1wYXJzZUZsb2F0KGUuY3NzKCJwYWRkaW5nLWJvdHRvbSIpKSxhPXRoaXMuJGluU2Nyb2xsLm91dGVySGVpZ2h0KCEwKStuK3I7aWYodGhpcy5zY3JvbGwmJnRoaXMuc2Nyb2xsLnNjcm9sbFRvU3RhcnQoKSx0aGlzLl9hZGFwdE9ubHlJblNjcm9sbEhlaWdodCl7Y29uc3QgaT1lLmZpbmQoIi5qcy1kcm9wZG93bi1kdW1teSIpLG49aT9wYXJzZUZsb2F0KGkuY3NzKCJwYWRkaW5nLWJvdHRvbSIpKStwYXJzZUZsb2F0KGkuY3NzKCJtYXJnaW4tYm90dG9tIikpOjAscz10LnRvcCt0LmhlaWdodCtuO3JldHVybiB2b2lkIHRoaXMuJGVsLmZpbmQoIi50di1kcm9wZG93bi1iZWhhdmlvcl9fc2Nyb2xsIikuY3NzKCJtYXhIZWlnaHQiLG8uYm90dG9tLXItcy0yNSl9Y29uc3QgbD10aGlzLl9tYXhIZWlnaHR8fGEsYz10LnRvcCtsKzI1PD1vLmJvdHRvbSxkPW8udG9wKzE1K2w8PXQuYm90dG9tO2xldCBoLHU9dGhpcy5fbWF4SGVpZ2h0fHwiYXV0byI7aWYoYyloPS1uO2Vsc2UgaWYoZCloPS1sK3QuaGVpZ2h0K3I7ZWxzZXtoPS10LnRvcCtvLnRvcCsxNSsyNStuK3I7Y29uc3QgZT1vLmhlaWdodC0xNS0yNS1yO2w+ZSYmKHU9ZSl9ZS5jc3MoInRvcCIsaCksZS5oZWlnaHQodSksdGhpcy5fZHJvcGRvd25XaWR0aCYmZS53aWR0aCh0aGlzLl9kcm9wZG93bldpZHRoKX1maXRIb3Jpem9udGFsbHkoKXt0aGlzLiRib2R5LmNzcygibWFyZ2luTGVmdCIsMCk7Y29uc3QgZT1kb2N1bWVudC5ib2R5LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLHQ9cGFyc2VGbG9hdChhKGRvY3VtZW50LmJvZHkpLmNzcygicGFkZGluZ1JpZ2h0IikpLG89dGhpcy4kYm9keS5vZmZzZXQoKTtvLnJpZ2h0PW8ubGVmdCt0aGlzLiRib2R5Lm91dGVyV2lkdGgoKTtjb25zdCBpPU1hdGgubWF4KE1hdGgubWluKDAsZS5yaWdodC10LW8ucmlnaHQpLGUubGVmdC1vLmxlZnQpO2kmJnRoaXMuJGJvZHkuY3NzKCJtYXJnaW5MZWZ0IixpKX1kZXN0cm95KCl7dGhpcy5zY3JvbGwmJnRoaXMuc2Nyb2xsLmRlc3Ryb3koKSx0aGlzLm9mZkNsaWNrT3V0c2lkZSgpLHRoaXMuJGVsLmZpbmQoIi5qcy1kcm9wZG93bi10b2dnbGUiKS5vZmYoImNsaWNrIiksdGhpcy4kd3JhcC5vZmYoImNsaWNrIil9fWEuZm4udHZEcm9wZG93bj0oMCxuLmNyZWF0ZVR2QmxvY2tXaXRoSW5zdGFuY2UpKCJ0di1kcm9wZG93biIsKGZ1bmN0aW9uKGUsdD17fSl7cmV0dXJuIG5ldyBsKGUsdCl9KSl9LDkyNjk5NShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtzaG93U3VwcG9ydERpYWxvZzooKT0+bn0pO28oMzAwMjg2KTt2YXIgaT1vKDgyNzAxKTthc3luYyBmdW5jdGlvbiBuKGUpewpjb25zdCB0PWF3YWl0IFByb21pc2UuYWxsKFtvLmUoMjY5NzMpLG8uZSg4NDMwNiksby5lKDI5Mjk2KSxvLmUoNjAwNjIpLG8uZSg0NjkwNyksby5lKDIwMzU0KSxvLmUoMTIzODUpLG8uZSg4MTA3Miksby5lKDk0OTQ4KSxvLmUoMjM2MjQpLG8uZSgzNjIyMiksby5lKDk0MjMyKSxvLmUoODM0ODgpLG8uZSgxOTU5NSksby5lKDE5Nzg3KSxvLmUoNjc3OTkpLG8uZSgxMTQ2MSksby5lKDk2NTg3KSxvLmUoMTEyMTgpLG8uZSg4NjQyMyksby5lKDM3NTEzKSxvLmUoODU3OSksby5lKDk1MDQpLG8uZSg0MDgzNSksby5lKDcyNjY2KSxvLmUoOTM0MjEpLG8uZSg0OTU4OCksby5lKDQ3NjMyKSxvLmUoNzQzODEpLG8uZSgxNTUyNiksby5lKDcxNDE0KSxvLmUoNjE4MjEpLG8uZSg1NDY4MSksby5lKDY2MjcwKSxvLmUoMzE4MzcpLG8uZSg5NzQ0KSxvLmUoMjA5NzEpLG8uZSg0OTUxOCksby5lKDM3NzY3KSxvLmUoMTk1MTMpLG8uZSgzMjYzMiksby5lKDM1MTk4KSxvLmUoNDY1OTEpLG8uZSg5NDA1NCksby5lKDE1MDkpLG8uZSg3NjY1KSxvLmUoODA3MzEpLG8uZSg1NDMxMCksby5lKDM2MzU2KSxvLmUoNzg0NzEpLG8uZSgyNTY5OCksby5lKDMzMzY4KSxvLmUoOTUxNTgpLG8uZSgzMjM4Nyksby5lKDc1MDQpLG8uZSg0NDc4MCksby5lKDcwNzEyKSxvLmUoODc4NTgpLG8uZSg1OTYxOSksby5lKDk5ODI3KSxvLmUoODE4NjgpLG8uZSgyMzM2NCksby5lKDIzNzQzKSxvLmUoNDIyODgpLG8uZSg3NzU3OCksby5lKDQ4ODU0KSxvLmUoMTk0NjMpLG8uZSg4NjA4KV0pLnRoZW4oby5iaW5kKG8sOTEyMjk5KSk7YXdhaXQgaS5hdmFpbGFibGVPZmZlcnMuZW5zdXJlT2ZmZXJzKCksbmV3IHQuU3VwcG9ydERpYWxvZyhlKS5vcGVuKCl9fSw5ODM2MTYoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7bWFwS2V5Q29kZVRvRGlyZWN0aW9uOigpPT5jLG5hdmlnYXRpb25PcmRlckNvbXBhcmF0b3I6KCk9PnMscXVlcnlGb2N1c2FibGVFbGVtZW50czooKT0+bCxxdWVyeVRhYmJhYmxlRWxlbWVudHM6KCk9PmF9KTt2YXIgaSxuPW8oOTY5MTY4KSxyPW8oNjgyMzgxKTtmdW5jdGlvbiBzKGUsdCl7cmV0dXJuIGU9PT10PzA6ZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbih0KSZOb2RlLkRPQ1VNRU5UX1BPU0lUSU9OX0ZPTExPV0lORz8tMToxfWZ1bmN0aW9uIGEoZSl7cmV0dXJuIEFycmF5LmZyb20oZS5xdWVyeVNlbGVjdG9yQWxsKCdidXR0b246bm90KDpkaXNhYmxlZCk6bm90KFthcmlhLWRpc2FibGVkPSJ0cnVlIiBpXSk6bm90KFt0YWJpbmRleD0iLTEiXSksIFt0YWJpbmRleF06bm90KFtkaXNhYmxlZF0pOm5vdChbYXJpYS1kaXNhYmxlZD0idHJ1ZSIgaV0pOm5vdChbdGFiaW5kZXg9Ii0xIl0pJykpLmZpbHRlcigoMCxyLmNyZWF0ZVNjb3BlZFZpc2libGVFbGVtZW50RmlsdGVyKShlKSl9ZnVuY3Rpb24gbChlKXtyZXR1cm4gQXJyYXkuZnJvbShlLnF1ZXJ5U2VsZWN0b3JBbGwoJ2J1dHRvbjpub3QoOmRpc2FibGVkKTpub3QoW2FyaWEtZGlzYWJsZWQ9InRydWUiIGldKTpub3QoW2FyaWEtZGlzYWJsZWQ9IiJdKSwgW3RhYmluZGV4XTpub3QoW2Rpc2FibGVkXSk6bm90KFthcmlhLWRpc2FibGVkPSJ0cnVlIiBpXSk6bm90KFthcmlhLWRpc2FibGVkPSIiXSknKSkuZmlsdGVyKCgwLHIuY3JlYXRlU2NvcGVkVmlzaWJsZUVsZW1lbnRGaWx0ZXIpKGUpKX1mdW5jdGlvbiBjKGUpe2NvbnN0IHQ9KDAsbi5pc1J0bCkoKTtzd2l0Y2goZSl7Y2FzZSAzODpyZXR1cm4iYmxvY2tQcmV2IjtjYXNlIDQwOnJldHVybiJibG9ja05leHQiO2Nhc2UgMzc6cmV0dXJuIHQ/ImlubGluZU5leHQiOiJpbmxpbmVQcmV2IjtjYXNlIDM5OnJldHVybiB0PyJpbmxpbmVQcmV2IjoiaW5saW5lTmV4dCI7ZGVmYXVsdDpyZXR1cm4gbnVsbH19IWZ1bmN0aW9uKGUpe2UuQmxvY2tQcmV2PSJibG9ja1ByZXYiLGUuQmxvY2tOZXh0PSJibG9ja05leHQiLGUuSW5saW5lUHJldj0iaW5saW5lUHJldiIsZS5JbmxpbmVOZXh0PSJpbmxpbmVOZXh0In0oaXx8KGk9e30pKX0sMzg5ODQ0KGUsdCxvKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaShlKXtyZXR1cm4gbigpPzA6cigpPzQ1Ok1hdGgubWluKE1hdGgubWF4KGUsNDUpLDQ1MCl9by5kKHQse2dldFdpZGdldEJhclBhZGRpbmc6KCk9Pml9KTtjb25zdCBuPSgpPT4hd2luZG93Lm1hdGNoTWVkaWEoIihtaW4td2lkdGg6IDc2OHB4KSIpLm1hdGNoZXMscj0oKT0+IXdpbmRvdy5tYXRjaE1lZGlhKCIobWluLXdpZHRoOiAxMjgwcHgpIikubWF0Y2hlc30sNzEyMTM0KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse0xJU1RfQ09MT1JTOigpPT51LExpc3RDb2xvcjooKT0+aSxjaGFuZ2VEZXNjcmlwdGlvbjooKT0+QyxjcmVhdGVDcm9zc1RhYlN5bmNNaWRkbGV3YXJlOigpPT5NLGdldENvbW1hbmRzOigpPT5MLGdldExpc3RCeUNvbG9yOigpPT5SLGdldFN5bWJvbENvbG9yOigpPT5JLGdldFN5bWJvbHNCeUNvbG9yOigpPT5GLGdldFRpbWVzdGFtcDooKT0+RCxpc0xpc3RDb2xvcjooKT0+XyxtYXJrTWFueTooKT0+ZixyZWR1Y2VyOigpPT5BLHJlbW92ZTooKT0+UyxyZW5hbWU6KCk9PncscmVuYW1lU2VwYXJhdG9yOigpPT5rLHJlc2V0OigpPT5iLHNldHVwOigpPT55LHNoaWZ0Q29tbWFuZDooKT0+VCx1cGRhdGVQZXJzaXN0ZWRTdGF0ZTooKT0+eH0pO3ZhciBpLG49bygxMzA2OTkpLHI9bygzMjcyMzkpLHM9bygxMzg2MzgpLGE9byg0MzMyMCksbD1vKDI5NTIzNSksYz1vKDYxMjQ0NiksZD1vKDkwMTAyMiksaD1vKDk3MzUyNCk7IWZ1bmN0aW9uKGUpe2UuUmVkPSJyZWQiLGUuQmx1ZT0iYmx1ZSIsZS5HcmVlbj0iZ3JlZW4iLGUuT3JhbmdlPSJvcmFuZ2UiLGUuUHVycGxlPSJwdXJwbGUiLGUuQ3lhbj0iY3lhbiIsZS5QaW5rPSJwaW5rIn0oaXx8KGk9e30pKTtjb25zdCB1PVtpLlJlZCxpLkJsdWUsaS5HcmVlbixpLk9yYW5nZSxpLlB1cnBsZSxpLkN5YW4saS5QaW5rXTtmdW5jdGlvbiBfKGUpe3JldHVybiBuZXcgU2V0KHUpLmhhcyhlKX1jb25zdCBwPXtsaXN0czp7Y29sb3JzOltdLGJ5Q29sb3I6e30sYnlTeW1ib2w6e319LGNvbW1hbmRzOltdLHRpbWVzdGFtcDpudWxsfTtmdW5jdGlvbiBtKGUsdCl7CmNvbnN0e2xpc3RzOm99PWUsaT1vLmJ5Q29sb3JbdF07aSYmMD09PWkuc3ltYm9scy5sZW5ndGgmJihvLmNvbG9ycz1vLmNvbG9ycy5maWx0ZXIoKGU9PmUhPT10KSkpfWZ1bmN0aW9uIGcoZSl7cmV0dXJuKDAsZC5pc1NlcGFyYXRvckl0ZW0pKGUpfWNvbnN0IHY9KDAsbi5jcmVhdGVTbGljZSkoe25hbWU6Im1hcmtlZC1saXN0cyIsaW5pdGlhbFN0YXRlOnAscmVkdWNlcnM6e3NldHVwOihlLHQpPT57Y29uc3R7bGlzdHM6byx0aW1lc3RhbXA6aX09dC5wYXlsb2FkLG49e2xpc3RzOntjb2xvcnM6W10sYnlDb2xvcjp7fSxieVN5bWJvbDp7fX0sY29tbWFuZHM6W10sdGltZXN0YW1wOm51bGx9O24udGltZXN0YW1wPWk7Zm9yKGNvbnN0IGUgb2YgZnVuY3Rpb24oZSx0KXtyZXR1cm5bLi4uZV0uc29ydCgoKGUsbyk9PnQuaW5kZXhPZihlLmNvbG9yKS10LmluZGV4T2Yoby5jb2xvcikpKX0obyx1KSl7Y29uc3QgdD1lLnN5bWJvbHMuZmlsdGVyKCh0PT52b2lkIDA9PT1uLmxpc3RzLmJ5U3ltYm9sW3RdJiYoZyh0KXx8KG4ubGlzdHMuYnlTeW1ib2xbdF09ZS5jb2xvciksITApKSk7bi5saXN0cy5ieUNvbG9yW2UuY29sb3JdPXtjb2xvcjplLmNvbG9yLG5hbWU6ZS5uYW1lLGRlc2NyaXB0aW9uOmUuZGVzY3JpcHRpb24sc2hhcmVkOmUuc2hhcmVkLHN5bWJvbHM6dCxwZXJzaXN0ZWRTdGF0ZTplLnBlcnNpc3RlZFN0YXRlfSx0Lmxlbmd0aD4wJiZuLmxpc3RzLmNvbG9ycy5wdXNoKGUuY29sb3IpfXJldHVybiBufSxyZW1vdmU6KGUsdCk9Pntjb25zdHtjb2xvcjpvLHN5bWJvbHM6aSxzaWxlbnQ6bn09dC5wYXlsb2FkLHtsaXN0czphLGNvbW1hbmRzOmx9PWUsZD1hLmJ5Q29sb3Jbb107aWYodm9pZCAwPT09ZHx8MD09PWQuc3ltYm9scy5sZW5ndGgpcmV0dXJuO2NvbnN0IGg9bmV3IFNldChpKSx1PWQuc3ltYm9scy5maWx0ZXIoKGU9PiFoLmhhcyhlKSkpO2lmKCEoMCxjLmVxdWFsQXJyYXlzKSh1LGQuc3ltYm9scykpe2Quc3ltYm9scz11O2Zvcihjb25zdCBlIG9mIGgpZGVsZXRlIGEuYnlTeW1ib2xbZV07bnx8bC5wdXNoKHt0eXBlOiJyZW1vdmUiLGNvbG9yOm8sc3ltYm9sczpbLi4uaF0scHJldkxpc3RzOigwLHMuZW5zdXJlRGVmaW5lZCkoKDAsci5vcmlnaW5hbCkoZSkpLmxpc3RzfSksbShlLG8pfX0sbWFya01hbnk6KGUsdCk9Pntjb25zdHtjb2xvcjpvLGJlZm9yZTppLHNpbGVudDpufT10LnBheWxvYWQse2xpc3RzOmEsY29tbWFuZHM6bH09ZSx7dW5pcXVlOmQsZXhjbHVzaW9uczp1fT1mdW5jdGlvbihlLHQpe2NvbnN0e2NvbG9yOm8sc3ltYm9sczppLHNlcGFyYXRvcnM6bn09dC5wYXlsb2FkLHtsaXN0czpyfT1lLGE9e30sbD1uZXcgU2V0LGM9ZT0+ZyhlKT8oKDAscy5hc3NlcnQpKG51bGwhPT1vKSxvKTpyLmJ5U3ltYm9sW2VdO2ZvcihsZXQgZT0wO2U8aS5sZW5ndGg7KytlKXtjb25zdCB0PWlbZV07aWYobC5oYXModCl8fGcodCkmJiFuKWNvbnRpbnVlO2wuYWRkKHQpO2NvbnN0IG89Yyh0KTt2b2lkIDAhPT1vJiYoYVtvXT1hW29dPz9uZXcgU2V0KS5hZGQodCl9cmV0dXJue2V4Y2x1c2lvbnM6YSx1bmlxdWU6bH19KGUsdCk7aWYoMD09PWQuc2l6ZSlyZXR1cm47Y29uc3QgXz1mdW5jdGlvbihlLHQsbyxpKXtjb25zdHtjb2xvcjpuLGJlZm9yZTpyfT10LnBheWxvYWQse2xpc3RzOnN9PWU7bGV0IGE7aWYobnVsbCE9PW4mJnZvaWQgMCE9PXImJm8uaGFzKHIpKXtjb25zdCBlPXMuYnlDb2xvcltuXTtpZih2b2lkIDAhPT1lKXthPWk7Zm9yKGxldCB0PWUuc3ltYm9scy5pbmRleE9mKHIpO3Q+PTA7LS10KWlmKCFvLmhhcyhlLnN5bWJvbHNbdF0pKXthPWUuc3ltYm9sc1t0XTticmVha319fXJldHVybiBhfShlLHQsZCxoLkxJU1RfU1RBUlQpO2lmKG51bGwhPT1vJiZ2b2lkIDAhPT11W29dJiYxPT09T2JqZWN0LmtleXModSkubGVuZ3RoKXtjb25zdCB0PWEuYnlDb2xvcltvXTsoMCxzLmFzc2VydCkodm9pZCAwIT09dCk7Y29uc3QgcD10LnN5bWJvbHMuZmlsdGVyKChlPT4hZC5oYXMoZSkpKSx2PSgwLGguZ2V0VGFyZ2V0SW5kZXgpKHAsaSxfKTtpZih2b2lkIDA9PT12P3AucHVzaCguLi5kKTpwLnNwbGljZSh2LDAsLi4uZCksKDAsYy5lcXVhbEFycmF5cykocCx0LnN5bWJvbHMpKXJldHVybjt7Y29uc3QgaT11W29dOygwLHMuYXNzZXJ0KSh2b2lkIDAhPT1pKSx0LnN5bWJvbHM9cDtmb3IoY29uc3QgZSBvZiBpKWRlbGV0ZSBhLmJ5U3ltYm9sW2VdO2Zvcihjb25zdCBlIG9mIGQpZyhlKXx8KGEuYnlTeW1ib2xbZV09byk7cmV0dXJuIG0oZSxvKSx2b2lkKG58fGwucHVzaCh7dHlwZToicmVwbGFjZSIsY29sb3I6byxzeW1ib2xzOlsuLi50LnN5bWJvbHNdLHByZXZMaXN0czooMCxzLmVuc3VyZURlZmluZWQpKCgwLHIub3JpZ2luYWwpKGUpKS5saXN0c30pKX19Zm9yKGNvbnN0IHQgaW4gdSl7aWYoIXUuaGFzT3duUHJvcGVydHkodCkpY29udGludWU7Y29uc3Qgbz11W3RdOygwLHMuYXNzZXJ0KSh2b2lkIDAhPT1vKTtjb25zdCBpPWEuYnlDb2xvclt0XTsoMCxzLmFzc2VydCkodm9pZCAwIT09aSksaS5zeW1ib2xzPWkuc3ltYm9scy5maWx0ZXIoKGU9PiFvLmhhcyhlKXx8KGRlbGV0ZSBhLmJ5U3ltYm9sW2VdLCExKSkpLG0oZSx0KX1pZihudWxsPT09bylyZXR1cm4gdm9pZChufHxsLnB1c2goe3R5cGU6InJlc2V0IixzeW1ib2xzOlsuLi5kXSxwcmV2TGlzdHM6KDAscy5lbnN1cmVEZWZpbmVkKSgoMCxyLm9yaWdpbmFsKShlKSkubGlzdHN9KSk7Y29uc3QgcD1hLmJ5Q29sb3Jbb107aWYoYS5jb2xvcnMuaW5jbHVkZXMobykpeygwLHMuYXNzZXJ0KSh2b2lkIDAhPT1wKTtjb25zdCB0PSgwLGguZ2V0VGFyZ2V0SW5kZXgpKHAuc3ltYm9scyxpLF8pO3ZvaWQgMD09PXQ/KHAuc3ltYm9scy5wdXNoKC4uLmQpLG58fCh2b2lkIDA9PT11W29dP2wucHVzaCh7dHlwZToiYXBwZW5kIixjb2xvcjpvLHN5bWJvbHM6Wy4uLmRdLHByZXZMaXN0czooMCxzLmVuc3VyZURlZmluZWQpKCgwLHIub3JpZ2luYWwpKGUpKS5saXN0c30pOmwucHVzaCh7dHlwZToicmVwbGFjZSIsY29sb3I6byxzeW1ib2xzOlsuLi5wLnN5bWJvbHNdLHByZXZMaXN0czooMCxzLmVuc3VyZURlZmluZWQpKCgwLApyLm9yaWdpbmFsKShlKSkubGlzdHN9KSkpOihwLnN5bWJvbHMuc3BsaWNlKHQsMCwuLi5kKSxufHxsLnB1c2goe3R5cGU6InJlcGxhY2UiLGNvbG9yOm8sc3ltYm9sczpbLi4ucC5zeW1ib2xzXSxwcmV2TGlzdHM6KDAscy5lbnN1cmVEZWZpbmVkKSgoMCxyLm9yaWdpbmFsKShlKSkubGlzdHN9KSl9ZWxzZSB2b2lkIDA9PT1wP2EuYnlDb2xvcltvXT17Y29sb3I6byxzeW1ib2xzOlsuLi5kXSxuYW1lOm51bGwsZGVzY3JpcHRpb246bnVsbCxzaGFyZWQ6ITEscGVyc2lzdGVkU3RhdGU6bnVsbH06cC5zeW1ib2xzPVsuLi5kXSxhLmNvbG9ycy5wdXNoKG8pLG58fGwucHVzaCh7dHlwZToiYXBwZW5kIixjb2xvcjpvLHN5bWJvbHM6Wy4uLmRdLHByZXZMaXN0czooMCxzLmVuc3VyZURlZmluZWQpKCgwLHIub3JpZ2luYWwpKGUpKS5saXN0c30pO2Zvcihjb25zdCBlIG9mIGQpZyhlKXx8KGEuYnlTeW1ib2xbZV09byl9LHJlbmFtZVNlcGFyYXRvcjooZSx0KT0+e2NvbnN0e2NvbG9yOm8sc2VwYXJhdG9yOmksbmFtZTpuLHNpbGVudDphfT10LnBheWxvYWQ7aWYoaT09PW58fCFnKGkpfHwhZyhuKSlyZXR1cm47Y29uc3QgbD1lLmxpc3RzLmJ5Q29sb3Jbb107KDAscy5hc3NlcnQpKHZvaWQgMCE9PWwpO2NvbnN0IGM9bC5zeW1ib2xzLmluZGV4T2YoaSk7LTEhPT1jJiYtMT09PWwuc3ltYm9scy5pbmRleE9mKG4pJiYobC5zeW1ib2xzLnNwbGljZShjLDEsbiksYXx8ZS5jb21tYW5kcy5wdXNoKHt0eXBlOiJyZW5hbWUtc2VwYXJhdG9yIixjb2xvcjpvLHNlcGFyYXRvcjppLG5hbWU6bixwcmV2TGlzdHM6KDAscy5lbnN1cmVEZWZpbmVkKSgoMCxyLm9yaWdpbmFsKShlKSkubGlzdHN9KSl9LHJlbmFtZTooZSx0KT0+e2NvbnN0e25hbWU6byxjb2xvcjppLHNpbGVudDpufT10LnBheWxvYWQsYT1lLmxpc3RzLmJ5Q29sb3JbaV07KDAscy5hc3NlcnQpKHZvaWQgMCE9PWEpLGEubmFtZSE9PW8mJihhLm5hbWU9byxufHxlLmNvbW1hbmRzLnB1c2goe3R5cGU6InJlbmFtZSIsY29sb3I6aSxuYW1lOm8scHJldkxpc3RzOigwLHMuZW5zdXJlRGVmaW5lZCkoKDAsci5vcmlnaW5hbCkoZSkpLmxpc3RzfSkpfSxjaGFuZ2VEZXNjcmlwdGlvbjooZSx0KT0+e2NvbnN0e2NvbG9yOm8sZGVzY3JpcHRpb246aSxzaWxlbnQ6bn09dC5wYXlsb2FkLGE9ZS5saXN0cy5ieUNvbG9yW29dOygwLHMuYXNzZXJ0KSh2b2lkIDAhPT1hKSxhLmRlc2NyaXB0aW9uIT09aSYmKGEuZGVzY3JpcHRpb249aSxufHxlLmNvbW1hbmRzLnB1c2goe3R5cGU6ImNoYW5nZS1kZXNjcmlwdGlvbiIsY29sb3I6byxkZXNjcmlwdGlvbjppLHByZXZMaXN0czooMCxzLmVuc3VyZURlZmluZWQpKCgwLHIub3JpZ2luYWwpKGUpKS5saXN0c30pKX0scmVzZXQ6KGUsdCk9Pntjb25zdHtzaWxlbnQ6b309dC5wYXlsb2FkLHtsaXN0czppfT1lO2Zvcihjb25zdCBlIG9mIHUpe2NvbnN0IHQ9aS5ieUNvbG9yW2VdO3ZvaWQgMCE9PXQmJih0LnN5bWJvbHM9W10pfWkuY29sb3JzPVtdLGkuYnlTeW1ib2w9e30sb3x8ZS5jb21tYW5kcy5wdXNoKHt0eXBlOiJyZXNldC1hbGwiLHByZXZMaXN0czooMCxzLmVuc3VyZURlZmluZWQpKCgwLHIub3JpZ2luYWwpKGUpKS5saXN0c30pfSxzaGFyZTooZSx0KT0+e2NvbnN0e2xpc3RzOm8sY29tbWFuZHM6aX09ZSx7c2hhcmVkOm4sY29sb3I6YSxzaWxlbnQ6bH09dC5wYXlsb2FkLGM9by5ieUNvbG9yW2FdO3ZvaWQgMCE9PWMmJmMuc2hhcmVkIT09biYmKGMuc2hhcmVkPW4sbHx8aS5wdXNoKHt0eXBlOiJzaGFyZSIsY29sb3I6YSxzaGFyZWQ6bixwcmV2TGlzdHM6KDAscy5lbnN1cmVEZWZpbmVkKSgoMCxyLm9yaWdpbmFsKShlKSkubGlzdHN9KSl9LHVwZGF0ZVBlcnNpc3RlZFN0YXRlOihlLHQpPT57Y29uc3R7bGlzdHM6b309ZTtmb3IoY29uc3QgZSBvZiB1KXtjb25zdCBpPW8uYnlDb2xvcltlXSxuPXQucGF5bG9hZFtlXTt2b2lkIDAhPT1pJiZpLnBlcnNpc3RlZFN0YXRlJiZuJiYoaS5wZXJzaXN0ZWRTdGF0ZT17Li4uaS5wZXJzaXN0ZWRTdGF0ZSwuLi5ufSl9fSxzaGlmdENvbW1hbmQ6KGUsdCk9Pntjb25zdHtjb3VudDpvfT10LnBheWxvYWQ7ZS5jb21tYW5kcy5zcGxpY2UoMCxvKX19fSkse21hcmtNYW55OmYsc2V0dXA6eSxyZXNldDpiLHJlbW92ZTpTLHJlbmFtZTp3LGNoYW5nZURlc2NyaXB0aW9uOkMscmVuYW1lU2VwYXJhdG9yOmssc2hpZnRDb21tYW5kOlQsc2hhcmU6RSx1cGRhdGVQZXJzaXN0ZWRTdGF0ZTp4fT12LmFjdGlvbnMse3JlZHVjZXI6QX09djtmdW5jdGlvbiBNKGUsdCxvPXYpe3JldHVybigwLGEuY3JlYXRlQ3Jvc3NUYWJTeW5jTWlkZGxld2FyZSkoe2lkOmUsY2hhbm5lbDp0LGV2ZW50OiJtYXJrZWQtbGlzdC1jcm9zcy10YWItc3luYyIsZmlsdGVyOmU9PmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQuYWN0aW9ucy5tYXJrTWFueS5tYXRjaChlKXx8dC5hY3Rpb25zLnJlbmFtZS5tYXRjaChlKXx8dC5hY3Rpb25zLmNoYW5nZURlc2NyaXB0aW9uLm1hdGNoKGUpfHx0LmFjdGlvbnMucmVtb3ZlLm1hdGNoKGUpfHx0LmFjdGlvbnMuc2V0dXAubWF0Y2goZSl8fHQuYWN0aW9ucy5yZW5hbWVTZXBhcmF0b3IubWF0Y2goZSl8fHQuYWN0aW9ucy5yZXNldC5tYXRjaChlKXx8dC5hY3Rpb25zLnNoYXJlLm1hdGNoKGUpfHx0LmFjdGlvbnMudXBkYXRlUGVyc2lzdGVkU3RhdGUubWF0Y2goZSl9KGUsbyl9KX1mdW5jdGlvbiBJKGUsdCl7cmV0dXJuIGUubGlzdHMuYnlTeW1ib2xbbC5xdWFsaWZpZWQuY2FzdCh0KV0/P251bGx9ZnVuY3Rpb24gUihlLHQpe3JldHVybiBlLmxpc3RzLmJ5Q29sb3JbdF0/P251bGx9ZnVuY3Rpb24gRihlLHQpe3JldHVybiBSKGUsdCk/LnN5bWJvbHM/P251bGx9ZnVuY3Rpb24gTChlKXtyZXR1cm4gZS5jb21tYW5kc31mdW5jdGlvbiBEKGUpe3JldHVybiBlLnRpbWVzdGFtcH19LDUxODc1KGUsdCxvKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaShlKXtlLnByZXZlbnREZWZhdWx0KCl9by5kKHQse3ByZXZlbnREZWZhdWx0OigpPT5pLHByZXZlbnREZWZhdWx0Rm9yQ29udGV4dE1lbnU6KCk9PnJ9KQo7Y29uc3Qgbj1bImlucHV0Om5vdChbdHlwZV0pIiwnaW5wdXRbdHlwZT0idGV4dCJdJywnaW5wdXRbdHlwZT0iZW1haWwiXScsJ2lucHV0W3R5cGU9InBhc3N3b3JkIl0nLCdpbnB1dFt0eXBlPSJzZWFyY2giXScsJ2lucHV0W3R5cGU9Im51bWJlciJdJywnaW5wdXRbdHlwZT0idXJsIl0nLCJ0ZXh0YXJlYSIsImFbaHJlZl0iLCcqW2NvbnRlbnRlZGl0YWJsZT0idHJ1ZSJdJywiW2RhdGEtYWxsb3ctY29udGV4dC1tZW51XSJdO2Z1bmN0aW9uIHIoZSl7Y29uc3QgdD1lLnRhcmdldDt0JiYhdC5jbG9zZXN0KG4uam9pbigiLCAiKSkmJmUucHJldmVudERlZmF1bHQoKX19LDYxNjMxMShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHt1c2VJc29tb3JwaGljTGF5b3V0RWZmZWN0OigpPT5ufSk7dmFyIGk9byg3Nzk0NzQpO2Z1bmN0aW9uIG4oZSx0KXsoInVuZGVmaW5lZCI9PXR5cGVvZiB3aW5kb3c/aS51c2VFZmZlY3Q6aS51c2VMYXlvdXRFZmZlY3QpKGUsdCl9fSw3NjI4NTEoZSx0LG8peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKGUpe3JldHVybiBlKyLigKYifW8uZCh0LHthcHBlbmRFbGxpcHNpczooKT0+aX0pfSwxMzg2MzgoZSx0LG8peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKGUsdCl7aWYoIWUpdGhyb3cgbmV3IEVycm9yKCJBc3NlcnRpb24gZmFpbGVkIisodD9gOiAke3R9YDoiIikpfWZ1bmN0aW9uIG4oZSx0KXtpZih2b2lkIDA9PT1lKXRocm93IG5ldyBFcnJvcihgJHt0Pz8iVmFsdWUifSBpcyB1bmRlZmluZWRgKTtyZXR1cm4gZX1mdW5jdGlvbiByKGUsdCl7aWYobnVsbD09PWUpdGhyb3cgbmV3IEVycm9yKGAke3Q/PyJWYWx1ZSJ9IGlzIG51bGxgKTtyZXR1cm4gZX1mdW5jdGlvbiBzKGUsdCl7cmV0dXJuIHIobihlLHQpLHQpfW8uZCh0LHthc3NlcnQ6KCk9PmksZW5zdXJlOigpPT5zLGVuc3VyZURlZmluZWQ6KCk9Pm4sZW5zdXJlTm90TnVsbDooKT0+cn0pfSwyMTQ5ODcoZSx0LG8peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKGUpe2xldCB0PW51bGw7cmV0dXJuKG8sLi4uaSk9Pih0Py5hYm9ydCgpLHQ9bmV3IEFib3J0Q29udHJvbGxlcixvPy5hYm9ydGVkP3QuYWJvcnQoKTpvPy5hZGRFdmVudExpc3RlbmVyKCJhYm9ydCIsKCgpPT50Py5hYm9ydCgpKSx7b25jZTohMH0pLGUodC5zaWduYWwsLi4uaSkpfWZ1bmN0aW9uIG4oZSl7aWYoIWwoZSkpdGhyb3cgZX1mdW5jdGlvbiByKGUpe2lmKGwoZSkpdGhyb3cgZX1mdW5jdGlvbiBzKGUpe3JldHVybiBlPy5hYm9ydGVkP1Byb21pc2UucmVqZWN0KGEoKSk6bmV3IFByb21pc2UoKCh0LG8pPT57ZT8uYWRkRXZlbnRMaXN0ZW5lcigiYWJvcnQiLCgoKT0+byhhKCkpKSx7b25jZTohMH0pfSkpfWZ1bmN0aW9uIGEoKXtyZXR1cm4gbmV3IERPTUV4Y2VwdGlvbigiQWJvcnRlZCIsIkFib3J0RXJyb3IiKX1mdW5jdGlvbiBsKGUpe3JldHVybiBlIGluc3RhbmNlb2YgRXJyb3ImJiJBYm9ydEVycm9yIj09PWUubmFtZXx8Im9iamVjdCI9PXR5cGVvZiBlJiZudWxsIT09ZSYmIm5hbWUiaW4gZSYmIkFib3J0RXJyb3IiPT09ZS5uYW1lfWZ1bmN0aW9uIGMoZSx0KXtyZXR1cm4gUHJvbWlzZS5yYWNlKFtzKGUpLHRdKX1hc3luYyBmdW5jdGlvbiBkKGUsdCl7bGV0IG87dHJ5e2F3YWl0IGMoZSxuZXcgUHJvbWlzZSgoZT0+e289c2V0VGltZW91dChlLHQpfSkpKX1maW5hbGx5e2NsZWFyVGltZW91dChvKX19by5kKHQse2NyZWF0ZUFib3J0RXJyb3I6KCk9PmEsZGVsYXk6KCk9PmQsaXNBYm9ydEVycm9yOigpPT5sLHJlc3BlY3RBYm9ydDooKT0+YyxyZXNwZWN0TGF0ZXN0OigpPT5pLHJldGhyb3dBYm9ydEVycm9yOigpPT5yLHNraXBBYm9ydEVycm9yOigpPT5ufSl9LDk2NDQ4NihlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtkZWVwRXh0ZW5kOigpPT5ufSk7Y29uc3QgaT1uZXcgU2V0KFsiX19wcm90b19fIiwicHJvdG90eXBlIiwiY29uc3RydWN0b3IiXSk7ZnVuY3Rpb24gbihlLC4uLnQpe3JldHVybiBlJiYib2JqZWN0Ij09dHlwZW9mIGU/KDA9PT10Lmxlbmd0aHx8dC5mb3JFYWNoKCh0PT57bnVsbCE9dCYmIm9iamVjdCI9PXR5cGVvZiB0JiZPYmplY3Qua2V5cyh0KS5mb3JFYWNoKChvPT57aWYoZnVuY3Rpb24oZSl7cmV0dXJuIGkuaGFzKGUpfShvKSlyZXR1cm47Y29uc3Qgcz1lW29dLGE9dFtvXTtpZihhPT09ZSlyZXR1cm47Y29uc3QgbD1BcnJheS5pc0FycmF5KGEpO2lmKGEmJihyKGEpfHxsKSl7bGV0IHQ7dD1sP3MmJkFycmF5LmlzQXJyYXkocyk/czpbXTpzJiZyKHMpP3M6e30sZVtvXT1uKHQsYSl9ZWxzZSB2b2lkIDAhPT1hJiYoZVtvXT1hKX0pKX0pKSxlKTplfWZ1bmN0aW9uIHIoZSl7aWYoIWV8fCJbb2JqZWN0IE9iamVjdF0iIT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpKXJldHVybiExO2NvbnN0IHQ9T2JqZWN0LmdldFByb3RvdHlwZU9mKGUpO2lmKCF0KXJldHVybiEwO2NvbnN0IG89T2JqZWN0Lmhhc093blByb3BlcnR5LnRvU3RyaW5nLGk9dC5oYXNPd25Qcm9wZXJ0eSgiY29uc3RydWN0b3IiKSYmdC5jb25zdHJ1Y3RvcjtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgaSYmby5jYWxsKGkpPT09by5jYWxsKE9iamVjdCl9fSw2Mzg1NzEoZSx0LG8peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKGUsdCl7Y29uc3Qgbz1uZXcgTWFwO3JldHVybiBmdW5jdGlvbiguLi5pKXtjb25zdCBuPSIiKyh0P3QuYXBwbHkobnVsbCxpKTppWzBdKTtpZighby5oYXMobikpe2NvbnN0IHQ9ZS5hcHBseSh0aGlzLGkpO3JldHVybiBvLnNldChuLHQpLHR9cmV0dXJuIG8uZ2V0KG4pfX1vLmQodCx7bWVtb2l6ZTooKT0+aX0pfSw1NDA1NzgoZSx0LG8peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKGUpe3JldHVybiBlLnJlcGxhY2UoL1stL1xcXiQqKz8uKCl8W1xde31dL2csIlxcJCYiKX1vLmQodCx7cmVnRXhwRXNjYXBlOigpPT5pfSl9LDExNTI5MyhlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtmb3JjZUxUUlN0cjooKT0+aCxnZXRMVFJTY3JvbGxMZWZ0OigpPT51LGlzUnRsOigpPT5zLHNldERvY3VtZW50RGlyR2V0dGVyOigpPT5yLHN0cmlwTFRSTWFya3M6KCk9PmR9KTt2YXIgaT1vKDMyMDQwMyk7bGV0IG49KCk9Pm51bGwKO2Z1bmN0aW9uIHIoZSl7bj1lfWNvbnN0IHM9KCk9PiJydGwiPT09ZnVuY3Rpb24oKXtjb25zdCBlPW4oKTtpZihudWxsPT09ZSl0aHJvdyBuZXcgRXJyb3IoIkRvY3VtZW50IGRpcmVjdGlvbiBnZXR0ZXIgaXMgbm90IHNldCwgY2FsbCBzZXREb2N1bWVudERpckdldHRlciB0byBzZXQgaXQiKTtyZXR1cm4gZX0oKSxhPSLigKoiLGw9IuKArCIsYz1uZXcgUmVnRXhwKCLigI584oCPfOKAqnzigKt84oCsIiwiZyIpO2Z1bmN0aW9uIGQoZSl7cmV0dXJuIiIhPT1lJiZzKCkmJm51bGwhPWU/ZS5yZXBsYWNlKGMsIiIpOmV9ZnVuY3Rpb24gaChlKXtyZXR1cm4iIiE9PWUmJnMoKSYmbnVsbCE9ZT9hK2UrbDplfWZ1bmN0aW9uIHUoZSl7cmV0dXJuKDAsaS5nZXROb3JtYWxpemVkU2Nyb2xsTGVmdCkoZSwicnRsIil9dmFyIF87IWZ1bmN0aW9uKGUpe2UuTFRSPSJsdHIiLGUuUlRMPSJydGwiLGUuVU5LTk9XTj0iIn0oX3x8KF89e30pKX0sNTM1MzAoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7Z2V0TWluVGlja0RhdGE6KCk9PmwsbWFrZVZhcmlhYmxlTWluVGlja0RhdGE6KCk9PmR9KTt2YXIgaT1vKDcxMjc0NSksbj1vKDYwMTg0MSkscj1vKDUzNDQ0MCkscz1vKDY0MDc0NCk7ZnVuY3Rpb24gYShlKXtyZXR1cm4gZT8oMCxpLkJpZykoZS5taW5Nb3ZlKS5kaXYoZS5wcmljZVNjYWxlKS50b051bWJlcigpOk5hTn1mdW5jdGlvbiBsKGUpe2NvbnN0e21pblRpY2s6dCxwcmljZTpvLHZhcmlhYmxlTWluVGlja0RhdGE6aSxzaG91bGRDaGVja0ZvckVxdWFsaXR5OnJ9PWUscz0oMCxuLmlzTnVtYmVyKSh0KT9jKHQpOnQ7cmV0dXJuIHZvaWQgMD09PWk/czpmdW5jdGlvbihlLHQsbz0hMSl7Zm9yKGxldCBpPTA7aTx0Lmxlbmd0aDtpKyspe2lmKGU8dFtpXS5wcmljZSlyZXR1cm4gdFtpXS5taW5UaWNrO2lmKG8mJmU9PT10W2ldLnByaWNlKXJldHVybiB0W2ldLm1pblRpY2t9cmV0dXJuIHRbdC5sZW5ndGgtMV0ubWluVGlja30obyxpLHIpfWZ1bmN0aW9uIGMoZSl7Y29uc3QgdD0oMCxyLm51bU9mRGVjaW1hbFBsYWNlcykoZSksbz1NYXRoLnBvdygxMCx0KTtyZXR1cm57cHJpY2VTY2FsZTpvLG1pbk1vdmU6KDAsaS5CaWcpKGUpLm11bChvKS50b051bWJlcigpfX1mdW5jdGlvbiBkKGUsdCl7Y29uc3Qgbz1be21pblRpY2s6KDAsbi5pc051bWJlcikoZSk/YyhlKTplLHByaWNlOjEvMCxtYXhJbmRleDoxLzB9XTt0cnl7Y29uc3QgZT10LnNwbGl0KCIgIikubWFwKCgoZSx0KT0+KDAscy5pc0V2ZW4pKHQpP2Z1bmN0aW9uKGUpe2NvbnN0IHQ9TnVtYmVyKGUpO2lmKE51bWJlci5pc0Zpbml0ZSh0KSlyZXR1cm4gYyh0KTt7Y29uc3QgdD1lLnNwbGl0KCIvIik7aWYodC5sZW5ndGg8Mnx8dC5sZW5ndGg+Myl0aHJvdyBuZXcgRXJyb3IoYFVuZXhwZWN0ZWQgbWludGljazogJHtlfWApO2NvbnN0IG89TnVtYmVyKHRbMV0pLGk9TnVtYmVyKHRbMF0pO2lmKCFOdW1iZXIuaXNGaW5pdGUobyl8fCFOdW1iZXIuaXNGaW5pdGUoaSkpdGhyb3cgbmV3IEVycm9yKGBVbmV4cGVjdGVkIG1pbnRpY2s6ICR7ZX1gKTtjb25zdCBuPTM9PT10Lmxlbmd0aD9OdW1iZXIodFsyXSk6dm9pZCAwO2lmKHZvaWQgMCE9PW4mJiFOdW1iZXIuaXNGaW5pdGUobikpdGhyb3cgbmV3IEVycm9yKGBVbmV4cGVjdGVkIG1pbnRpY2s6ICR7ZX1gKTtjb25zdCByPXtwcmljZVNjYWxlOm8sbWluTW92ZTppfTtyZXR1cm4gdm9pZCAwIT09biYmKHIubWluTW92ZTI9bikscn19KGUpOmZ1bmN0aW9uKGUpe2NvbnN0IHQ9TnVtYmVyKGUpO2lmKE51bWJlci5pc05hTih0KSl0aHJvdyBuZXcgRXJyb3IoYFVuZXhwZWN0ZWQgcHJpY2UgbGltaXQ6ICR7ZX1gKTtyZXR1cm4gdH0oZSkpKTtpZigoMCxzLmlzRXZlbikoZS5sZW5ndGgpKXRocm93IG5ldyBFcnJvcigiVGhlbWUgbXVzdCBub3QgYmUgZXZlbnQgbnVtYmVyIG9mIGVsZW1lbnRzIik7Y29uc3Qgbz1bXTtmb3IobGV0IHQ9MDt0PGUubGVuZ3RoO3QrPTIpe2NvbnN0IG49ZVt0KzFdPz8xLzAscj1vW28ubGVuZ3RoLTFdPy5wcmljZT8/MCxzPW9bby5sZW5ndGgtMV0/Lm1heEluZGV4Pz8wLGw9bj09PTEvMD8xLzA6bmV3IGkuQmlnKG4pLm1pbnVzKHIpLmRpdihhKGVbdF0pKS5wbHVzKHMpLnRvTnVtYmVyKCk7by5wdXNoKHttaW5UaWNrOmVbdF0scHJpY2U6bixtYXhJbmRleDpsfSl9cmV0dXJuIG99Y2F0Y2h7cmV0dXJuIG99fX0sNDkxMTY1KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2RhdGVGb3JtYXRGdW5jdGlvbnM6KCk9PmYsZ2V0RGF0ZUZvcm1hdFdpdGhXZWVrZGF5OigpPT55fSk7dmFyIGk9byg3ODMyNTQpLG49byg4MjI0MzEpLHI9byg4NTYzMjQpO2NvbnN0IHM9ezE6KCk9PmkudChudWxsLHZvaWQgMCxvKDY1NzM3NCkpLDI6KCk9PmkudChudWxsLHZvaWQgMCxvKDYxNzM0MSkpLDM6KCk9PmkudChudWxsLHZvaWQgMCxvKDEwMzMwNSkpLDQ6KCk9PmkudChudWxsLHZvaWQgMCxvKDUyNjc4NSkpLDU6KCk9PmkudChudWxsLHtjb250ZXh0OiJzaG9ydCJ9LG8oNzM0NzUwKSksNjooKT0+aS50KG51bGwsdm9pZCAwLG8oODc3NDUpKSw3OigpPT5pLnQobnVsbCx2b2lkIDAsbygxODM5NTkpKSw4OigpPT5pLnQobnVsbCx2b2lkIDAsbyg5Mzc2MikpLDk6KCk9PmkudChudWxsLHZvaWQgMCxvKDE3ODQ2OSkpLDEwOigpPT5pLnQobnVsbCx2b2lkIDAsbyg3MjgzMzcpKSwxMTooKT0+aS50KG51bGwsdm9pZCAwLG8oNjQ2NTQ1KSksMTI6KCk9PmkudChudWxsLHZvaWQgMCxvKDc2OTAzNikpfSxhPXsxOigpPT5pLnQobnVsbCx2b2lkIDAsbyg4OTc2NykpLDI6KCk9PmkudChudWxsLHZvaWQgMCxvKDk0ODkyMykpLDM6KCk9PmkudChudWxsLHZvaWQgMCxvKDM2NzkzNSkpLDQ6KCk9PmkudChudWxsLHZvaWQgMCxvKDE3NTUwNykpfSxsPShlLHQpPT4odD9lLmdldE1vbnRoKCk6ZS5nZXRVVENNb250aCgpKSsxLGM9KGUsdCk9PnQ/ZS5nZXREYXRlKCk6ZS5nZXRVVENEYXRlKCksZD0oZSx0KT0+dD9lLmdldEZ1bGxZZWFyKCk6ZS5nZXRVVENGdWxsWWVhcigpLGg9KGUsdCk9PmUudG9Mb2NhbGVEYXRlU3RyaW5nKCgwLHIuZ2V0TGFuZ3VhZ2UpKCk/KDAsci5tYXBMYW5ndWFnZUNvZGUpKCgwLApyLmdldExhbmd1YWdlKSgpKTp2b2lkIDAse3dlZWtkYXk6InNob3J0Iix0aW1lWm9uZToibG9jYWwiPT09dD92b2lkIDA6dH0pLHU9KGUsdCk9PmFbKChlLHQpPT5NYXRoLmZsb29yKChsKGUsdCktMSkvMykrMSkoZSx0KV0oKSxfPShlLHQpPT4oMCxuLm51bWJlclRvU3RyaW5nV2l0aExlYWRpbmdaZXJvKShjKGUsdCksMikscD0oZSx0KT0+c1tsKGUsdCldKCksbT0oZSx0KT0+KDAsbi5udW1iZXJUb1N0cmluZ1dpdGhMZWFkaW5nWmVybykobChlLHQpLDIpLGc9KGUsdCk9PigwLG4ubnVtYmVyVG9TdHJpbmdXaXRoTGVhZGluZ1plcm8pKGQoZSx0KSUxMDAsMiksdj0oZSx0KT0+KDAsbi5udW1iZXJUb1N0cmluZ1dpdGhMZWFkaW5nWmVybykoZChlLHQpLDQpLGY9eyJxcSAneXkiOihlLHQpPT5gJHt1KGUsdCl9ICcke2coZSx0KX1gLCJxcSB5eXl5IjooZSx0KT0+YCR7dShlLHQpfSAke3YoZSx0KX1gLCJkZCBNTU0gJ3l5IjooZSx0KT0+YCR7XyhlLHQpfSAke3AoZSx0KX0gJyR7ZyhlLHQpfWAsIk1NTSAneXkiOihlLHQpPT5gJHtwKGUsdCl9ICcke2coZSx0KX1gLCJNTU0gZGQsIHl5eXkiOihlLHQpPT5gJHtwKGUsdCl9ICR7XyhlLHQpfSwgJHt2KGUsdCl9YCwiTU1NIGQsIHl5eXkiOihlLHQpPT5gJHtwKGUsdCl9ICR7KChlLHQpPT4oMCxuLm51bWJlclRvU3RyaW5nV2l0aExlYWRpbmdaZXJvKShjKGUsdCksMCkpKGUsdCl9LCAke3YoZSx0KX1gLCJNTU0geXl5eSI6KGUsdCk9PmAke3AoZSx0KX0gJHt2KGUsdCl9YCwiTU1NIGRkIjooZSx0KT0+YCR7cChlLHQpfSAke18oZSx0KX1gLCJkZCBNTU0iOihlLHQpPT5gJHtfKGUsdCl9ICR7cChlLHQpfWAsInl5eXktTU0tZGQiOihlLHQpPT5gJHt2KGUsdCl9LSR7bShlLHQpfS0ke18oZSx0KX1gLCJ5eS1NTS1kZCI6KGUsdCk9PmAke2coZSx0KX0tJHttKGUsdCl9LSR7XyhlLHQpfWAsInl5L01NL2RkIjooZSx0KT0+YCR7ZyhlLHQpfS8ke20oZSx0KX0vJHtfKGUsdCl9YCwieXl5eS9NTS9kZCI6KGUsdCk9PmAke3YoZSx0KX0vJHttKGUsdCl9LyR7XyhlLHQpfWAsImRkLU1NLXl5eXkiOihlLHQpPT5gJHtfKGUsdCl9LSR7bShlLHQpfS0ke3YoZSx0KX1gLCJkZC1NTS15eSI6KGUsdCk9PmAke18oZSx0KX0tJHttKGUsdCl9LSR7ZyhlLHQpfWAsImRkL01NL3l5IjooZSx0KT0+YCR7XyhlLHQpfS8ke20oZSx0KX0vJHtnKGUsdCl9YCwiZGQvTU0veXl5eSI6KGUsdCk9PmAke18oZSx0KX0vJHttKGUsdCl9LyR7dihlLHQpfWAsIk1NL2RkL3l5IjooZSx0KT0+YCR7bShlLHQpfS8ke18oZSx0KX0vJHtnKGUsdCl9YCwiTU0vZGQveXl5eSI6KGUsdCk9PmAke20oZSx0KX0vJHtfKGUsdCl9LyR7dihlLHQpfWB9O2Z1bmN0aW9uIHkoZSx0KXtyZXR1cm4iamEiPT09KDAsci5nZXRMYW5ndWFnZSkoKT8obyxpKT0+YCR7ZltlXShvLGkpfSAoJHtoKG8sdCl9KWA6KG8saSk9PmAke2gobyx0KX0gJHtmW2VdKG8saSl9YH1PYmplY3Qua2V5cyhmKX0sODIyNDMxKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse251bWJlclRvU3RyaW5nV2l0aExlYWRpbmdaZXJvOigpPT5ufSk7dmFyIGk9byg2MDE4NDEpO2Z1bmN0aW9uIG4oZSx0KXtpZighKDAsaS5pc051bWJlcikoZSkpcmV0dXJuIm4vYSI7aWYoISgwLGkuaXNJbnRlZ2VyKSh0KSl0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnZhbGlkIGxlbmd0aCIpO2lmKHQ8MHx8dD4yNCl0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnZhbGlkIGxlbmd0aCIpO2lmKDA9PT10KXJldHVybiBlLnRvU3RyaW5nKCk7cmV0dXJuKCIwMDAwMDAwMDAwMDAwMDAwMDAwMCIrZS50b1N0cmluZygpKS5zbGljZSgtdCl9fSw4NTYzMjQoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7Z2V0TGFuZ3VhZ2U6KCk9PnIsbWFwTGFuZ3VhZ2VDb2RlOigpPT5sLHJlZ2lzdGVyTGFuZ3VhZ2VDb2RlTWFwcGVyOigpPT5hLHJlZ2lzdGVyTGFuZ3VhZ2VHZXR0ZXI6KCk9Pm59KTtsZXQgaT1udWxsO2Z1bmN0aW9uIG4oZSl7aT1lfWZ1bmN0aW9uIHIoKXtpZighaSl0aHJvdyBuZXcgRXJyb3IoIkxhbmd1YWdlIGdldHRlciBub3QgcmVnaXN0ZXJlZC4gQ2FsbCByZWdpc3Rlckxhbmd1YWdlR2V0dGVyKCkgZmlyc3QuIik7cmV0dXJuIGkoKX1sZXQgcz1lPT5lO2Z1bmN0aW9uIGEoZSl7cz1lfWZ1bmN0aW9uIGwoZSl7cmV0dXJuIHMoZSl9fSw5NzM1MjQoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7TElTVF9TVEFSVDooKT0+aSxnZXRUYXJnZXRJbmRleDooKT0+bn0pO2NvbnN0IGk9U3ltYm9sKCk7ZnVuY3Rpb24gbihlLHQsbyl7Y29uc3Qgbj12b2lkIDA9PT1vP3ZvaWQgMCE9PXQ/ZS5pbmRleE9mKHQpOnZvaWQgMDpvPT09aT8wOmUuaW5kZXhPZihvKSsxO3JldHVybi0xIT09bj9uOnZvaWQgMH19LDQzMzIwKGUsdCxvKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaShlKXtjb25zdHtpZDp0LGV2ZW50Om8sY2hhbm5lbDppLGZpbHRlcjpufT1lO3JldHVybiBlPT4oaS5vbihvLChvPT57Y29uc3R7YWN0aW9uOmksZW1pdHRlcjpyfT1KU09OLnBhcnNlKG8pO3IhPT10JiZuKGkpJiZlLmRpc3BhdGNoKHsuLi5pLHBheWxvYWQ6ey4uLmkucGF5bG9hZCxzaWxlbnQ6ITB9fSl9KSksZT0+cj0+e2NvbnN0IHM9ZShyKTtyZXR1cm4gbihyKSYmKHIucGF5bG9hZC5zaWxlbnR8fGkuZW1pdChvLEpTT04uc3RyaW5naWZ5KHthY3Rpb246cixlbWl0dGVyOnR9KSkpLHN9KX1vLmQodCx7Y3JlYXRlQ3Jvc3NUYWJTeW5jTWlkZGxld2FyZTooKT0+aX0pfSwyOTUyMzUoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7cXVhbGlmaWVkOigpPT5pfSk7Y29uc3QgaT17Y2FzdDplPT5lLGNhc3RNYW55OmU9PmUubWFwKGkuY2FzdCl9fSw2MTI0NDYoZSx0LG8peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKGUsdCl7aWYoZS5sZW5ndGghPT10Lmxlbmd0aClyZXR1cm4hMTtmb3IobGV0IG89MDtvPGUubGVuZ3RoOysrbylpZihlW29dIT09dFtvXSlyZXR1cm4hMTtyZXR1cm4hMH1vLmQodCx7ZXF1YWxBcnJheXM6KCk9Pml9KX0sODUyOTgwKGUsdCxvKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaShlLHQsbyxpLG4pewpjb25zdHtwYXlBdHRlbnRpb25Ub1RpY2tlck5vdFN5bWJvbDpyLHVzZVRpY2tlck9uU3ltYm9sSW5mb1VwZGF0ZTpzLGNoYXJ0aW5nTGlicmFyeVNpbmdsZVN5bWJvbFJlcXVlc3Q6YSx1cHBlcmNhc2VJbnN0cnVtZW50TmFtZXM6bH09ZTtsZXQgYz10JiYoaSYmdC5wcm9fbmFtZXx8dC5mdWxsX25hbWV8fHQubmFtZSk7cmV0dXJuIGEmJm8/Yz1vOihzfHwhbiYmcikmJnQmJnQudGlja2VyJiYoYz10LnRpY2tlciksbCYmYyYmKGM9Yy50b1VwcGVyQ2FzZSgpKSxjfW8uZCh0LHtleHRyYWN0U3ltYm9sTmFtZUZyb21TeW1ib2xJbmZvOigpPT5pfSl9LDMwOTA1MihlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtRVU9URV9GSUVMRFM6KCk9Pm4sUVVPVEVfRklFTERTX0NBQ0hFOigpPT5yfSk7dmFyIGk9bygxMzg2MzgpCjtjb25zdCBuPW5ldyBTZXQoWyJwcm9fbmFtZSIsImJhc2VfbmFtZSIsImxvZ28iLCJsb2dvaWQiLCJjdXJyZW5jeS1sb2dvaWQiLCJiYXNlLWN1cnJlbmN5LWxvZ29pZCIsInNvdXJjZS1sb2dvaWQiLCJzaG9ydF9uYW1lIiwid2ViX3NpdGVfdXJsIiwicHJvX3Blcm0iLCJ0aW1lem9uZSIsImN1cnJlbnRfc2Vzc2lvbiIsInNlc3Npb25faG9saWRheXMiLCJsYXN0X3ByaWNlIiwibHBfdGltZSIsInN1YnNlc3Npb25zIiwicHJldl9jbG9zZV9wcmljZSIsIm9wZW5fcHJpY2UiLCJoaWdoX3ByaWNlIiwibG93X3ByaWNlIiwicHJpY2VfNTJfd2Vla19oaWdoIiwicHJpY2VfNTJfd2Vla19sb3ciLCJhc2siLCJhc2tfc2l6ZSIsImJpZCIsImJpZF9zaXplIiwicmNoIiwicmNocCIsInJ0YyIsInJ0Y190aW1lIiwibmNoIiwibmNocCIsIm50YyIsIm50Y190aW1lIiwiZGF0YV9mcmVxdWVuY3kiLCJyZWZlcmVuY2UtbGFzdC1wZXJpb2Qtc3RhcnQiLCJidXNpbmVzc19kZXNjcmlwdGlvbiIsIndlYl9zaXRlX3VybCIsImZpZ2kiLCJudW1iZXJfb2ZfZW1wbG95ZWVzIiwiZmxvYXRfc2hhcmVzX291dHN0YW5kaW5nIiwiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2NhbGVuZGFyX2RhdGUiLCJyb290IiwiZGVzY3JpcHRpb24iLCJleGNoYW5nZSIsImxpc3RlZF9leGNoYW5nZSIsInR5cGUiLCJjb3VudHJ5X2NvZGUiLCJwcm92aWRlcl9pZCIsImlzX3RyYWRhYmxlIiwic2VjdG9yIiwidHlwZXNwZWNzIiwidmlzaWJsZS1wbG90cy1zZXQiLCJpbmR1c3RyeSIsImN1cnJlbmN5X2lkIiwibGFzdF9wcmljZSIsImZyYWN0aW9uYWwiLCJtaW5tb3YiLCJtaW5tb3ZlMiIsInByaWNlc2NhbGUiLCJ2YXJpYWJsZV90aWNrX3NpemUiLCJjaGFuZ2UiLCJjaGFuZ2VfcGVyY2VudCIsInZvbHVtZSIsImF2ZXJhZ2Vfdm9sdW1lIiwibWFya2V0X2NhcF9iYXNpYyIsIm1hcmtldF9jYXBfY2FsYyIsInRvdGFsX3JldmVudWUiLCJlYXJuaW5nc19wZXJfc2hhcmVfYmFzaWNfdHRtIiwicHJpY2VfZWFybmluZ3NfdHRtIiwiYmV0YV8xX3llYXIiLCJkcHNfY29tbW9uX3N0b2NrX3ByaW1faXNzdWVfZnkiLCJkaXZpZGVuZHNfeWllbGQiLCJlYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZSIsImVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9uZXh0X2ZxIiwiZWFybmluZ3NfcHVibGljYXRpb25fdHlwZV9uZXh0X2ZxIiwiZWFybmluZ3NfcmVsZWFzZV9kYXRlIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZxIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X2ZxIiwiZm9yZWNhc3RfcmF3IiwibGFzdF9yZWxlYXNlX2RhdGUiLCJuZXh0X3JlbGVhc2VfZGF0ZSIsInJlZmVyZW5jZV9sYXN0X3BlcmlvZCIsImZ1bmRhbWVudGFsX2N1cnJlbmN5X2NvZGUiLCJudW1iZXJfb2ZfZW1wbG95ZWVzIiwid2ViX3NpdGVfdXJsIiwiYnVzaW5lc3NfZGVzY3JpcHRpb24iLCJmb3VuZGVkIiwiY2VvIiwiZmxvYXRfc2hhcmVzX291dHN0YW5kaW5nIiwidG90YWxfc2hhcmVzX291dHN0YW5kaW5nIiwiZGl2aWRlbmRfcGF5b3V0X3JhdGlvX3R0bSIsImRpdmlkZW5kc195aWVsZF9jdXJyZW50IiwiZGl2aWRlbmRfZXhfZGF0ZV91cGNvbWluZyIsImRpdmlkZW5kX2Ftb3VudF91cGNvbWluZyIsImRpdmlkZW5kX2Ftb3VudF9yZWNlbnQiLCJkaXZpZGVuZF9leF9kYXRlX3JlY2VudCIsImRpdmlkZW5kX2Ftb3VudF9oIiwiZGl2aWRlbmRfcGF5bWVudF9kYXRlX3VwY29taW5nIiwiZGl2aWRlbmRfcGF5bWVudF9kYXRlX3JlY2VudCIsInRvdGFsX3JldmVudWVfZnFfaCIsInRvdGFsX3JldmVudWVfZnlfaCIsIm5ldF9pbmNvbWVfZnlfaCIsIm5ldF9pbmNvbWVfZnFfaCIsInRvdGFsX2Fzc2V0c19meV9oIiwidG90YWxfYXNzZXRzX2ZxX2giLCJ0b3RhbF9saWFiaWxpdGllc19meV9oIiwidG90YWxfbGlhYmlsaXRpZXNfZnFfaCIsImNhc2hfZl9vcGVyYXRpbmdfYWN0aXZpdGllc19meV9oIiwiY2FzaF9mX29wZXJhdGluZ19hY3Rpdml0aWVzX2ZxX2giLCJjYXNoX2ZfaW52ZXN0aW5nX2FjdGl2aXRpZXNfZnlfaCIsImNhc2hfZl9pbnZlc3RpbmdfYWN0aXZpdGllc19mcV9oIiwiY2FzaF9mX2ZpbmFuY2luZ19hY3Rpdml0aWVzX2Z5X2giLCJjYXNoX2ZfZmluYW5jaW5nX2FjdGl2aXRpZXNfZnFfaCIsImZpc2NhbF9wZXJpb2RfZnlfaCIsImZpc2NhbF9wZXJpb2RfZnFfaCIsImZpc2NhbF9wZXJpb2RfZmhfaCIsImVhcm5pbmdzX3JlbGVhc2VfZGF0ZV9mcV9oIiwiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGVfZnEiLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfbmV4dF9mcSIsImVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9mcV9oIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZxX2giLCJlYXJuaW5nc19maXNjYWxfcGVyaW9kX2ZxX2giLCJuZXh0X2Vhcm5pbmdzX2Zpc2NhbF9wZXJpb2RfZnEiLCJpc19uZXh0X2Vhcm5pbmdzX3JlbGVhc2VfZGF0ZV9lc3RpbWF0ZWQiLCJzeW1ib2wtcHJpbWFyeW5hbWUiLCJjdXJyZW5jeV9jb2RlIiwicmF0ZXNfbWMiLCJyYXRlc19meSIsInJhdGVzX3R0bSIsIm1lYXN1cmUiLCJ2YWx1ZV91bml0X2lkIiwidmFsdWUtdW5pdC1pZCIsInVwZGF0ZV9tb2RlIiwibGFuZ3VhZ2UiLCJsb2NhbF9kZXNjcmlwdGlvbiIsInNob3J0X2Rlc2NyaXB0aW9uIiwic291cmNlIiwic291cmNlMiIsImZvcm1hdCIsInJlY29tbWVuZGF0aW9uX21hcmsiLCJsYXN0X3JlcG9ydF9mcmVxdWVuY3kiLCJwcmljZV90YXJnZXRfZXN0aW1hdGVzX251bSIsInByaWNlX3RhcmdldF9hdmVyYWdlIiwidXBkYXRlX21vZGVfc2Vjb25kcyIsInJlY29tbWVuZGF0aW9uX3RvdGFsIiwicmVjb21tZW5kYXRpb25fYnV5IiwicmVjb21tZW5kYXRpb25fb3ZlciIsInJlY29tbWVuZGF0aW9uX2hvbGQiLCJyZWNvbW1lbmRhdGlvbl91bmRlciIsInJlY29tbWVuZGF0aW9uX3NlbGwiLCJyZWNvbW1lbmRhdGlvbl90b3RhbCIsInByaWNlX3RhcmdldF9oaWdoIiwicHJpY2VfdGFyZ2V0X2xvdyIsInJhdGVzX3B0IiwicmF0ZXNfcHQiLCJ0b3RhbF9yZXZlbnVlX2Z5X2giLCJ0b3RhbF9yZXZlbnVlX2ZxX2giLCJ0b3RhbF9yZXZlbnVlX2ZoX2giLCJuZXRfcmV2ZW51ZV9meV9oIiwibmV0X3JldmVudWVfZnFfaCIsIm5ldF9yZXZlbnVlX2ZoX2giLCJuZXRfaW5jb21lX2Z5X2giLCJuZXRfaW5jb21lX2ZxX2giLCJuZXRfaW5jb21lX2ZoX2giLCJ0b3RhbF9hc3NldHNfZnlfaCIsInRvdGFsX2Fzc2V0c19mcV9oIiwidG90YWxfYXNzZXRzX2ZoX2giLCJ0b3RhbF9saWFiaWxpdGllc19meV9oIiwidG90YWxfbGlhYmlsaXRpZXNfZnFfaCIsInRvdGFsX2xpYWJpbGl0aWVzX2ZoX2giLCJjYXNoX2Zfb3BlcmF0aW5nX2FjdGl2aXRpZXNfZnlfaCIsImNhc2hfZl9vcGVyYXRpbmdfYWN0aXZpdGllc19mcV9oIiwiY2FzaF9mX29wZXJhdGluZ19hY3Rpdml0aWVzX2ZoX2giLCJjYXNoX2ZfaW52ZXN0aW5nX2FjdGl2aXRpZXNfZnlfaCIsImNhc2hfZl9pbnZlc3RpbmdfYWN0aXZpdGllc19mcV9oIiwiY2FzaF9mX2ludmVzdGluZ19hY3Rpdml0aWVzX2ZoX2giLCJjYXNoX2ZfZmluYW5jaW5nX2FjdGl2aXRpZXNfZnlfaCIsImNhc2hfZl9maW5hbmNpbmdfYWN0aXZpdGllc19mcV9oIiwiY2FzaF9mX2ZpbmFuY2luZ19hY3Rpdml0aWVzX2ZoX2giLCJmaXNjYWxfcGVyaW9kX2Z5IiwiZmlzY2FsX3BlcmlvZF9mcSIsImZpc2NhbF9wZXJpb2RfZmgiLCJlYXJuaW5nc19yZWxlYXNlX2RhdGVfZnFfaCIsImVhcm5pbmdzX3JlbGVhc2VfZGF0ZV9meV9oIiwiZWFybmluZ3NfcmVsZWFzZV9kYXRlX2ZoX2giLCJlYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZV9mcSIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlX2Z5IiwiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGVfZmgiLCJlYXJuaW5nc19yZWxlYXNlX25leHRfdGltZSIsImVhcm5pbmdzX3JlbGVhc2VfdGltZSIsImlzX25leHRfZWFybmluZ3NfcmVsZWFzZV9kYXRlX2VzdGltYXRlZCIsImVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9uZXh0X2ZxIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X25leHRfZnkiLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfbmV4dF9maCIsImVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9mcV9oIiwiZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X2Z5X2giLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfZmhfaCIsImVhcm5pbmdzX3Blcl9zaGFyZV9mcV9oIiwiZWFybmluZ3NfcGVyX3NoYXJlX2Z5X2giLCJlYXJuaW5nc19wZXJfc2hhcmVfZmhfaCIsImVhcm5pbmdzX2Zpc2NhbF9wZXJpb2RfZnFfaCIsImVhcm5pbmdzX2Zpc2NhbF9wZXJpb2RfZnlfaCIsImVhcm5pbmdzX2Zpc2NhbF9wZXJpb2RfZmhfaCIsIm5leHRfZWFybmluZ3NfZmlzY2FsX3BlcmlvZF9mcSIsIm5leHRfZWFybmluZ3NfZmlzY2FsX3BlcmlvZF9meSIsIm5leHRfZWFybmluZ3NfZmlzY2FsX3BlcmlvZF9maCIsInJldmVudWVfZnFfaCIsInJldmVudWVfZnlfaCIsInJldmVudWVfZmhfaCIsInJldmVudWVfZm9yZWNhc3RfZnFfaCIsInJldmVudWVfZm9yZWNhc3RfZnlfaCIsInJldmVudWVfZm9yZWNhc3RfZmhfaCIsInJldmVudWVfZm9yZWNhc3RfbmV4dF9mcSIsInJldmVudWVfZm9yZWNhc3RfbmV4dF9meSIsInJldmVudWVfZm9yZWNhc3RfbmV4dF9maCIsInJldmVudWVfc2VnX2J5X2J1c2luZXNzX2giLCJyZXZlbnVlX3NlZ19ieV9yZWdpb25faCIsInRvdGFsX3JldmVudWVfZnkiLCJ0b3RhbF9yZXZlbnVlX2ZxIiwidG90YWxfcmV2ZW51ZV9maCIsImdyb3NzX3Byb2ZpdF9meSIsImdyb3NzX3Byb2ZpdF9mcSIsImdyb3NzX3Byb2ZpdF9maCIsImViaXRkYV9meSIsImViaXRfZnkiLCJuZXRfaW5jb21lX2Z5IiwibmV0X2luY29tZV9mcSIsIm5ldF9pbmNvbWVfZmgiLCJ0b3RhbF9kZWJ0X2Z5X2giLCJ0b3RhbF9kZWJ0X2ZxX2giLCJ0b3RhbF9kZWJ0X2ZoX2giLCJmcmVlX2Nhc2hfZmxvd19meV9oIiwiZnJlZV9jYXNoX2Zsb3dfZnFfaCIsImZyZWVfY2FzaF9mbG93X2ZoX2giLCJjYXNoX25fZXF1aXZhbGVudHNfZnlfaCIsImNhc2hfbl9lcXVpdmFsZW50c19mcV9oIiwiY2FzaF9uX2VxdWl2YWxlbnRzX2ZoX2giLCJ0b3RhbF9jdXJyZW50X2Fzc2V0c19meSIsInRvdGFsX2N1cnJlbnRfYXNzZXRzX2ZxIiwidG90YWxfY3VycmVudF9hc3NldHNfZmgiLCJ0b3RhbF9jdXJyZW50X2xpYWJpbGl0aWVzX2Z5IiwidG90YWxfY3VycmVudF9saWFiaWxpdGllc19mcSIsInRvdGFsX2N1cnJlbnRfbGlhYmlsaXRpZXNfZmgiLCJ0b3RhbF9ub25fY3VycmVudF9hc3NldHNfZnkiLCJ0b3RhbF9ub25fY3VycmVudF9hc3NldHNfZnEiLCJ0b3RhbF9ub25fY3VycmVudF9hc3NldHNfZmgiLCJ0b3RhbF9ub25fY3VycmVudF9saWFiaWxpdGllc19meSIsInRvdGFsX25vbl9jdXJyZW50X2xpYWJpbGl0aWVzX2ZxIiwidG90YWxfbm9uX2N1cnJlbnRfbGlhYmlsaXRpZXNfZmgiLCJsb2Fuc19uZXRfZnkiLCJsb2Fuc19uZXRfZnlfaCIsImxvYW5zX25ldF9mcV9oIiwibG9hbnNfbmV0X2ZoX2giLCJ0b3RhbF9kZXBvc2l0c19meSIsInRvdGFsX2RlcG9zaXRzX2Z5X2giLCJ0b3RhbF9kZXBvc2l0c19mcV9oIiwidG90YWxfZGVwb3NpdHNfZmhfaCIsImxvYW5fbG9zc19hbGxvd2FuY2VzX2Z5IiwibG9hbl9sb3NzX2FsbG93YW5jZXNfZnlfaCIsImxvYW5fbG9zc19hbGxvd2FuY2VzX2ZxX2giLCJsb2FuX2xvc3NfYWxsb3dhbmNlc19maF9oIiwicmVzZXJ2ZV90b190b3RhbF9jYXBpdGFsX2Z5X2giLCJyZXNlcnZlX3RvX3RvdGFsX2NhcGl0YWxfZnFfaCIsInJlc2VydmVfdG9fdG90YWxfY2FwaXRhbF9maF9oIiwidW5lYXJuZWRfcHJlbWl1bV90b190b3RhbF9jYXBpdGFsX2Z5X2giLCJ1bmVhcm5lZF9wcmVtaXVtX3RvX3RvdGFsX2NhcGl0YWxfZnFfaCIsInVuZWFybmVkX3ByZW1pdW1fdG9fdG90YWxfY2FwaXRhbF9maF9oIiwiaW5zdXJhbmNlX3Jlc2VydmVzX2Z5X2giLCJpbnN1cmFuY2VfcmVzZXJ2ZXNfZnFfaCIsImluc3VyYW5jZV9yZXNlcnZlc19maF9oIiwicG9saWN5X2NsYWltc19meV9oIiwicG9saWN5X2NsYWltc19mcV9oIiwicG9saWN5X2NsYWltc19maF9oIiwicHJlbWl1bXNfZWFybmVkX2Z5X2giLCJwcmVtaXVtc19lYXJuZWRfZnFfaCIsInByZW1pdW1zX2Vhcm5lZF9maF9oIiwicHJpY2VfZWFybmluZ3NfZnFfaCIsInByaWNlX2Vhcm5pbmdzX2Z5X2giLCJwcmljZV9lYXJuaW5nc19maF9oIiwicHJpY2Vfc2FsZXNfZnFfaCIsInByaWNlX3NhbGVzX2Z5X2giLCJwcmljZV9zYWxlc19maF9oIiwiZGlsdXRlZF9uZXRfaW5jb21lX3R0bSIsInRvdGFsX3JldmVudWVfdHRtIiwibmV0X3JldmVudWVfdHRtIiwicHJpY2VfZWFybmluZ3NfY3VycmVudCIsInByaWNlX3NhbGVzX2N1cnJlbnQiLCJpc2luLWRpc3BsYXllZCIsImN1c2lwIiwiY2ZpX2NvZGUiLCJpbnRlcmVzdF9pbmNvbWVfZnlfaCIsImludGVyZXN0X2luY29tZV9mcV9oIiwiaW50ZXJlc3RfaW5jb21lX2ZoX2giLCJub25faW50ZXJlc3RfaW5jb21lX2Z5X2giLCJub25faW50ZXJlc3RfaW5jb21lX2ZxX2giLCJub25faW50ZXJlc3RfaW5jb21lX2ZoX2giLCJ3ZWJzaXRlIiwiZG9jIiwiZXhwbG9yZXIiLCJzb3VyY2VzIiwiY29udHJhY3RzIiwiY3J5cHRvX2NvbW1vbl9jYXRlZ29yaWVzIiwiY3J5cHRvX2Fzc2V0IiwiY29tbXVuaXR5IiwiZGl2aWRlbmRzX2F2YWlsYWJpbGl0eSIsImVhcm5pbmdzX2F2YWlsYWJpbGl0eSIsImZpbmFuY2lhbHNfYXZhaWxhYmlsaXR5IiwiZG9jdW1lbnRzIiwiZXRmX2Fzc2V0X3R5cGVfZXhwb3N1cmUiLCJldGZfcmVnaW9uX2V4cG9zdXJlIiwidG9wX2hvbGRpbmdzIiwidW5pdC1pZCIsIm9wdGlvbnMtaW5mbyIsIm9wdGlvbi10eXBlIiwiaW50ZXJlc3RfaW5jb21lX2Z5IiwiaW50ZXJlc3RfaW5jb21lX2ZxIiwiaW50ZXJlc3RfaW5jb21lX2ZoIiwibm9uX2ludGVyZXN0X2luY29tZV9meSIsIm5vbl9pbnRlcmVzdF9pbmNvbWVfZnEiLCJub25faW50ZXJlc3RfaW5jb21lX2ZoIiwiaW50ZXJlc3RfZXhwZW5zZV9meSIsImludGVyZXN0X2V4cGVuc2VfZnEiLCJpbnRlcmVzdF9leHBlbnNlX2ZoIiwibG9hbl9sb3NzX3Byb3Zpc2lvbl9meSIsImxvYW5fbG9zc19wcm92aXNpb25fZnEiLCJsb2FuX2xvc3NfcHJvdmlzaW9uX2ZoIiwibm9uX2ludGVyZXN0X2V4cGVuc2VfZnkiLCJub25faW50ZXJlc3RfZXhwZW5zZV9mcSIsIm5vbl9pbnRlcmVzdF9leHBlbnNlX2ZoIiwibm9uX29wZXJfaW5jb21lX2Z5Iiwibm9uX29wZXJfaW5jb21lX2ZxIiwibm9uX29wZXJfaW5jb21lX2ZoIiwidW51c3VhbF9leHBlbnNlX2luY19meSIsInVudXN1YWxfZXhwZW5zZV9pbmNfZnEiLCJ1bnVzdWFsX2V4cGVuc2VfaW5jX2ZoIiwicHJldGF4X2luY29tZV9meSIsInByZXRheF9pbmNvbWVfZnEiLCJwcmV0YXhfaW5jb21lX2ZoIiwiaW5jb21lX3RheF9meSIsImluY29tZV90YXhfZnEiLCJpbmNvbWVfdGF4X2ZoIiwiYWZ0ZXJfdGF4X290aGVyX2luY29tZV9meSIsImFmdGVyX3RheF9vdGhlcl9pbmNvbWVfZnEiLCJhZnRlcl90YXhfb3RoZXJfaW5jb21lX2ZoIiwidG90YWxfbm9uX29wZXJfaW5jb21lX2Z5IiwidG90YWxfbm9uX29wZXJfaW5jb21lX2ZxIiwidG90YWxfbm9uX29wZXJfaW5jb21lX2ZoIiwib3Blcl9pbmNvbWVfZnkiLCJvcGVyX2luY29tZV9mcSIsIm9wZXJfaW5jb21lX2ZoIiwib3BlcmF0aW5nX2V4cGVuc2VzX2Z5Iiwib3BlcmF0aW5nX2V4cGVuc2VzX2ZxIiwib3BlcmF0aW5nX2V4cGVuc2VzX2ZoIiwiY29zdF9vZl9nb29kc19meSIsImNvc3Rfb2ZfZ29vZHNfZnEiLCJjb3N0X29mX2dvb2RzX2ZoIiwiZXF1aXR5X2luX2Vhcm5pbmdzX2Z5IiwiZXF1aXR5X2luX2Vhcm5pbmdzX2ZxIiwiZXF1aXR5X2luX2Vhcm5pbmdzX2ZoIiwibWlub3JpdHlfaW50ZXJlc3RfZXhwX2Z5IiwibWlub3JpdHlfaW50ZXJlc3RfZXhwX2ZxIiwibWlub3JpdHlfaW50ZXJlc3RfZXhwX2ZoIiwiZGlzY29udGludWVkX29wZXJhdGlvbnNfZnkiLCJkaXNjb250aW51ZWRfb3BlcmF0aW9uc19mcSIsImRpc2NvbnRpbnVlZF9vcGVyYXRpb25zX2ZoIiwiZnJvbnRfY29udHJhY3QiLCJtaW5fY29udHJhY3QiLCJwb2ludHZhbHVlIiwidW5pdF9pZCIsImV4cGlyYXRpb24iLCJhdW0iLCJhc3NldF9jbGFzcyIsImZvY3VzIiwiZXhwZW5zZV9yYXRpbyIsImxhdW5jaF9kYXRlIiwiaXNzdWVyIiwiYnJhbmQiLCJob21lcGFnZSIsImluZGV4X3RyYWNrZWQiLCJhY3RpdmVseV9tYW5hZ2VkIiwiZnVuZF92aWV3X21vZGVzIiwiY29tbW9uX2VxdWl0eV90aWVyMV9yYXRpb19meV9oIiwiY29tbW9uX2VxdWl0eV90aWVyMV9yYXRpb19mcV9oIiwiY29tbW9uX2VxdWl0eV90aWVyMV9yYXRpb19maF9oIiwidGllcjFfY2FwaXRhbF9yYXRpb19meV9oIiwidGllcjFfY2FwaXRhbF9yYXRpb19mcV9oIiwidGllcjFfY2FwaXRhbF9yYXRpb19maF9oIiwidG90YWxfY2FwaXRhbF9yYXRpb19meV9oIiwidG90YWxfY2FwaXRhbF9yYXRpb19mcV9oIiwidG90YWxfY2FwaXRhbF9yYXRpb19maF9oIiwicHJlZmVycmVkX3N0b2NrX2NhcnJ5aW5nX3ZhbHVlX2ZoIiwicHJlZmVycmVkX3N0b2NrX2NhcnJ5aW5nX3ZhbHVlX2ZxIiwidG90YWxfZGVidF9mcSIsIm1pbm9yaXR5X2ludGVyZXN0X2ZoIiwibWlub3JpdHlfaW50ZXJlc3RfZnEiLCJjYXNoX25fc2hvcnRfdGVybV9pbnZlc3RfZnEiLCJjYXNoX25fZHVlX2ZfYmFua3NfZmgiLCJjYXNoX25fZHVlX2ZfYmFua3NfZnEiLCJlbnRlcnByaXNlX3ZhbHVlX2N1cnJlbnQiLCJldGZfaG9sZGluZ3NfY291bnQiLCJjb250cmFjdC1kZXNjcmlwdGlvbiIsInJlZmVyZW5jZS1sYXN0LXBlcmlvZCIsImFsbF90aW1lX2hpZ2giLCJhbGxfdGltZV9oaWdoX2RheSIsImFsbF90aW1lX2xvdyIsImFsbF90aW1lX2xvd19kYXkiLCJvdXRzdGFuZGluZ19hbW91bnQiLCJub21pbmFsX3ZhbHVlIiwiZGVub21fbWluIiwiY3VycmVudF9jb3Vwb24iLCJjb3Vwb25fdHlwZV9nZW5lcmFsIiwiY291cG9uX2ZyZXF1ZW5jeSIsInlpZWxkX3RvX21hdHVyaXR5IiwibWF0dXJpdHktZGF0ZSIsImRheXNfdG9fbWF0dXJpdHkiLCJib25kX2lzc3VlciIsImlzc3VlX2RhdGUiLCJib25kX2lzc3Vlcl9zdG9ja19zeW1ib2wiLCJ0b3RhbF9pc3N1ZWRfYW1vdW50IiwicGFpZF9hbW91bnQiLCJib25kX3NucF9yYXRpbmdfbHRfaCIsInBsYWNlbWVudF90eXBlIiwiZHVyYXRpb25fdHlwZSIsIm1hdHVyaXR5X3R5cGUiLCJvZmZlcl90eXBlIiwicmVkZW1wdGlvbl90eXBlIiwiY29udmVyc2lvbl9vcHRpb24iLCJzaW5raW5nX2Z1bmQiLCJvd25lcnNoaXBfZm9ybSIsImRhaWx5LXN1bW1hcnktYXN0IiwiaXNzdWVfc3RhdHVzIiwiY291cG9uX2giLCJzaW5raW5nX2Z1bmRfbmV4dF9kYXRlIiwic2lua2luZ19mdW5kX21pbl9hbW91bnRfbmV4dCIsImNhbGxfbmV4dF9kYXRlIiwicmVkZW1wdGlvbnNfaCIsImNhbGxfbm90aWNlX2RheXMiLCJwdXRfbmV4dF9kYXRlIiwicHV0X25vdGljZV9kYXlzX21pbiIsInNlbmlvcml0eV9sZXZlbCIsImluZmxhdGlvbl9wcm90ZWN0aW9uIiwicGxlZGdlX3N0YXR1cyIsImJvbmRfaXNzdWVyX2NvdW50cnlfb2ZfcmlzayIsImJvbmRfaXNzdWVyX2NyX3BhcmVudCIsImNyZWRpdF9lbmhhbmNlbWVudF90eXBlIiwiY3JlZGl0X2VuaGFuY2VtZW50X3N0YXR1cyIsInVzZV9vZl9wcm9jZWVkcyIsImJvbmRfaXNzdWVyX3NucF9yYXRpbmdfbHRfaCIsImJvbmRfaXNzdWVyX3NucF9yYXRpbmdfc3RfaCIsImJvbmRfYWdlbnRzX3RyIiwiZmlyc3RfYmFyX3RpbWVfMWQiLCJmaW5hbmNpYWwtaW5kaWNhdG9yLWlkIiwiZXhjaGFuZ2UtaW5mbyIsInVuZGVybHlpbmctc3ltYm9sIiwic3RyaWtlIiwibG90c2l6ZSIsIm9wdGlvbi1zdHlsZSIsImhhc19ib25kcyIsIm9wZW5fdGltZSIsImhhc19ib25kcyIsImRleF9idXlzXzE1bSIsImRleF9zZWxsc18xNW0iLCJkZXhfYnV5X3ZvbHVtZV8xNW0iLCJkZXhfc2VsbF92b2x1bWVfMTVtIiwiZGV4X2J1eWVyc18xNW0iLCJkZXhfc2VsbGVyc18xNW0iLCJkZXhfYnV5c18xaCIsImRleF9zZWxsc18xaCIsImRleF9idXlfdm9sdW1lXzFoIiwiZGV4X3NlbGxfdm9sdW1lXzFoIiwiZGV4X2J1eWVyc18xaCIsImRleF9zZWxsZXJzXzFoIiwiZGV4X2J1eXNfNGgiLCJkZXhfc2VsbHNfNGgiLCJkZXhfYnV5X3ZvbHVtZV80aCIsImRleF9zZWxsX3ZvbHVtZV80aCIsImRleF9idXllcnNfNGgiLCJkZXhfc2VsbGVyc180aCIsImRleF9idXlzXzEyaCIsImRleF9zZWxsc18xMmgiLCJkZXhfYnV5X3ZvbHVtZV8xMmgiLCJkZXhfc2VsbF92b2x1bWVfMTJoIiwiZGV4X2J1eWVyc18xMmgiLCJkZXhfc2VsbGVyc18xMmgiLCJkZXhfYnV5c18yNGgiLCJkZXhfc2VsbHNfMjRoIiwiZGV4X2J1eV92b2x1bWVfMjRoIiwiZGV4X3NlbGxfdm9sdW1lXzI0aCIsImRleF9idXllcnNfMjRoIiwiZGV4X3NlbGxlcnNfMjRoIiwiZGV4X2NvbnZlcnRlZF9zeW1ib2wiLCJkZXhfdHJhZGluZ192b2x1bWVfMjRoIiwiZGV4X2NyZWF0ZWRfdGltZSIsImRleF9jdXJyZW5jeSIsImRleF9jdXJyZW5jeV9sb2dvaWQiLCJibG9ja2NoYWluX2FkZHJlc3Nlc191cmxzIiwiYmxvY2tjaGFpbl9hZGRyZXNzZXMiLCJiYXNlX2N1cnJlbmN5IiwiaXBvX29mZmVyX3N0YXR1cyIsImhhc19pcG9fZGV0YWlsc192aXNpYmxlIiwiaXBvX3ByaWNlX3JhbmdlX3VzZF9tYXgiLCJpcG9fcHJpY2VfcmFuZ2VfdXNkX21pbiIsImlwb19vZmZlcl9wcmljZV91c2QiLCJpcG9fb2ZmZXJlZF9zaGFyZXMiLCJpcG9fZGVhbF9hbW91bnRfdXNkIiwiaXBvX2Fubm91bmNlbWVudF9kYXRlIiwiaXBvX29mZmVyX2RhdGUiLCJhdmFpbGFibGVfZGF0YV9yYW5nZV9iZWdpbl9kYXRlIiwiYXZhaWxhYmxlX2RhdGFfcmFuZ2VfZW5kX2RhdGUiLCJoYXNfZXRmX293bmVyc2hpcCIsInN5bWJvbF9wcmltYXJ5X2xpc3RpbmciLCJtZXRyaWNfeXRtIiwibWV0cmljcyIsImVwc19lc3RpbWF0ZXNfZnlfaCIsImVwc19lc3RpbWF0ZXNfZnFfaCIsImVwc19lc3RpbWF0ZXNfZmhfaCIsInJldmVudWVfZXN0aW1hdGVzX2Z5X2giLCJyZXZlbnVlX2VzdGltYXRlc19mcV9oIiwicmV2ZW51ZV9lc3RpbWF0ZXNfZmhfaCIsImRwc19lc3RpbWF0ZXNfZnlfaCIsImRwc19lc3RpbWF0ZXNfZnFfaCIsImRwc19lc3RpbWF0ZXNfZmhfaCIsImNvc3Rfb2ZfZ29vZHNfZXN0aW1hdGVzX2Z5X2giLCJjb3N0X29mX2dvb2RzX2VzdGltYXRlc19mcV9oIiwiY29zdF9vZl9nb29kc19lc3RpbWF0ZXNfZmhfaCIsImdyb3NzX3Byb2ZpdF9lc3RpbWF0ZXNfZnlfaCIsImdyb3NzX3Byb2ZpdF9lc3RpbWF0ZXNfZnFfaCIsImdyb3NzX3Byb2ZpdF9lc3RpbWF0ZXNfZmhfaCIsInNlbGxfZ2VuX2FkbWluX2V4cF90b3RhbF9lc3RpbWF0ZXNfZnlfaCIsInNlbGxfZ2VuX2FkbWluX2V4cF90b3RhbF9lc3RpbWF0ZXNfZnFfaCIsInNlbGxfZ2VuX2FkbWluX2V4cF90b3RhbF9lc3RpbWF0ZXNfZmhfaCIsInJlc2VhcmNoX2FuZF9kZXZfZXN0aW1hdGVzX2Z5X2giLCJyZXNlYXJjaF9hbmRfZGV2X2VzdGltYXRlc19mcV9oIiwicmVzZWFyY2hfYW5kX2Rldl9lc3RpbWF0ZXNfZmhfaCIsImViaXRkYV9lc3RpbWF0ZXNfZnlfaCIsImViaXRkYV9lc3RpbWF0ZXNfZnFfaCIsImViaXRkYV9lc3RpbWF0ZXNfZmhfaCIsImViaXRfZXN0aW1hdGVzX2Z5X2giLCJlYml0X2VzdGltYXRlc19mcV9oIiwiZWJpdF9lc3RpbWF0ZXNfZmhfaCIsIm5ldF9pbmNvbWVfZXN0aW1hdGVzX2Z5X2giLCJuZXRfaW5jb21lX2VzdGltYXRlc19mcV9oIiwibmV0X2luY29tZV9lc3RpbWF0ZXNfZmhfaCIsInRvdGFsX2Fzc2V0c19lc3RpbWF0ZXNfZnlfaCIsInRvdGFsX2Fzc2V0c19lc3RpbWF0ZXNfZnFfaCIsInRvdGFsX2Fzc2V0c19lc3RpbWF0ZXNfZmhfaCIsImNhc2hfbl9zaG9ydF90ZXJtX2ludmVzdF9lc3RpbWF0ZXNfZnlfaCIsImNhc2hfbl9zaG9ydF90ZXJtX2ludmVzdF9lc3RpbWF0ZXNfZnFfaCIsImNhc2hfbl9zaG9ydF90ZXJtX2ludmVzdF9lc3RpbWF0ZXNfZmhfaCIsInRvdGFsX2RlYnRfZXN0aW1hdGVzX2Z5X2giLCJ0b3RhbF9kZWJ0X2VzdGltYXRlc19mcV9oIiwidG90YWxfZGVidF9lc3RpbWF0ZXNfZmhfaCIsImJvb2tfdmFsdWVfcGVyX3NoYXJlX2VzdGltYXRlc19meV9oIiwiYm9va192YWx1ZV9wZXJfc2hhcmVfZXN0aW1hdGVzX2ZxX2giLCJib29rX3ZhbHVlX3Blcl9zaGFyZV9lc3RpbWF0ZXNfZmhfaCIsImNhc2hfZl9vcGVyYXRpbmdfYWN0aXZpdGllc19lc3RpbWF0ZXNfZnlfaCIsImNhc2hfZl9vcGVyYXRpbmdfYWN0aXZpdGllc19lc3RpbWF0ZXNfZnFfaCIsImNhc2hfZl9vcGVyYXRpbmdfYWN0aXZpdGllc19lc3RpbWF0ZXNfZmhfaCIsImNhc2hfZl9pbnZlc3RpbmdfYWN0aXZpdGllc19lc3RpbWF0ZXNfZnlfaCIsImNhc2hfZl9pbnZlc3RpbmdfYWN0aXZpdGllc19lc3RpbWF0ZXNfZnFfaCIsImNhc2hfZl9pbnZlc3RpbmdfYWN0aXZpdGllc19lc3RpbWF0ZXNfZmhfaCIsImNhcGl0YWxfZXhwZW5kaXR1cmVzX2VzdGltYXRlc19meV9oIiwiY2FwaXRhbF9leHBlbmRpdHVyZXNfZXN0aW1hdGVzX2ZxX2giLCJjYXBpdGFsX2V4cGVuZGl0dXJlc19lc3RpbWF0ZXNfZmhfaCIsImNhc2hfZl9maW5hbmNpbmdfYWN0aXZpdGllc19lc3RpbWF0ZXNfZnlfaCIsImNhc2hfZl9maW5hbmNpbmdfYWN0aXZpdGllc19lc3RpbWF0ZXNfZnFfaCIsImNhc2hfZl9maW5hbmNpbmdfYWN0aXZpdGllc19lc3RpbWF0ZXNfZmhfaCIsImZyZWVfY2FzaF9mbG93X2VzdGltYXRlc19meV9oIiwiZnJlZV9jYXNoX2Zsb3dfZXN0aW1hdGVzX2ZxX2giLCJmcmVlX2Nhc2hfZmxvd19lc3RpbWF0ZXNfZmhfaCIsImVzdGltYXRlc19maXNjYWxfcGVyaW9kX2Z5X2giLCJlc3RpbWF0ZXNfZmlzY2FsX3BlcmlvZF9mcV9oIiwiZXN0aW1hdGVzX2Zpc2NhbF9wZXJpb2RfZmhfaCIsImZvcmVjYXN0X2F2YWlsYWJpbGl0eSJdKSxyPW5ldyBjbGFzc3sKY29uc3RydWN0b3IoZSl7dGhpcy5fY2FjaGU9bmV3IE1hcCx0aGlzLl90aW1lcz1uZXcgTWFwLHRoaXMuX2ZpZWxkcz1bLi4uZS5maWVsZHNdfXVwZGF0ZShlLHQsbyl7Y29uc3Qgbj0oMCxpLmVuc3VyZURlZmluZWQpKGUuc3ltYm9sbmFtZSkscj1EYXRlLm5vdygpO2lmKHRoaXMuX2NhY2hlLmhhcyhuKXx8dGhpcy5fY2FjaGUuc2V0KG4se3N5bWJvbG5hbWU6bixzdGF0dXM6ZS5zdGF0dXMsdmFsdWVzOnt9fSksdGhpcy5fdGltZXMuaGFzKG4pfHx0aGlzLl90aW1lcy5zZXQobixuZXcgTWFwKSwiZXJyb3IiPT09ZS5zdGF0dXMpcmV0dXJuO2NvbnN0IHM9KDAsaS5lbnN1cmVEZWZpbmVkKSh0aGlzLl9jYWNoZS5nZXQobikpLGE9KDAsaS5lbnN1cmVEZWZpbmVkKSh0aGlzLl90aW1lcy5nZXQobikpO3Muc3RhdHVzPWUuc3RhdHVzO2Zvcihjb25zdCBpIG9mIHRoaXMuX2ZpZWxkcyl0LmhhcyhpKSYmKG98fHZvaWQgMCE9PWUudmFsdWVzW2ldKSYmKHMudmFsdWVzW2ldPWUudmFsdWVzW2ldLGEuc2V0KGkscikpfWdldChlKXtyZXR1cm4gdGhpcy5fY2FjaGUuZ2V0KGUpPz9udWxsfWdldFRpbWVzKGUpe3JldHVybiB0aGlzLl90aW1lcy5nZXQoZSk/P251bGx9ZmllbGRzKCl7cmV0dXJuIHRoaXMuX2ZpZWxkc319KHtmaWVsZHM6bn0pfSw5Mjc1OTMoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7UXVvdGVTZXNzaW9uTXVsdGlwbGV4ZXI6KCk9Pmd9KTt2YXIgaT1vKDU4NzE2OCksbj1vKDU0Nzg1MSkscj1vKDM1MjgzNykscz1vKDEzODYzOCksYT1vKDIyMTA2MSksbD1vKDk0ODM4MCksYz1vKDk2NDQ4NiksZD1vKDE1MDE1MCksaD1vKDMwOTA1MiksdT1vKDM2Nzk0Nik7bGV0IF89ITE7dmFyIHA9byg5NzA3NzQpO2NvbnN0IG09KDAsYS5nZXRMb2dnZXIpKCJXZWJjaGFydENsaWVudC5RdW90ZVNlc3Npb25NdWx0aXBsZXhlciIpO2NsYXNzIGd7Y29uc3RydWN0b3IoZSl7dGhpcy5vbkNvbm5lY3Q9bmV3IGwuRGVsZWdhdGUsdGhpcy5vbkRpc2Nvbm5lY3Q9bmV3IGwuRGVsZWdhdGUsdGhpcy5fY29ubmVjdGVkPSExLHRoaXMuX3N1YnNjcmlwdGlvbnM9e30sdGhpcy5fc3ltYm9sX2RhdGE9e30sdGhpcy5fZGVsYXlVcGRhdGVGYXN0U3ltYm9scz0oMCxuLmRlZmF1bHQpKHRoaXMuX3VwZGF0ZUZhc3RTeW1ib2xzLDI1MCksdGhpcy5fdGhyb3R0bGVkU3ltYm9sRGF0YT17fSx0aGlzLl9leHRlbnNpb25zPXt9LHRoaXMub3B0aW9ucz17dGhyb3R0bGVUaW1lb3V0OjEyNSwuLi5lfSx0aGlzLl9zZXNzaW9uPW5ldyBwLlF1b3RlU2Vzc2lvbihlLmFwaSxbIm11bHRpcGxleGVyIixlLm5hbWUsKDAsZC5yYW5kb21IYXNoKSgpXS5maWx0ZXIoQm9vbGVhbikuam9pbigiXyIpKSx0aGlzLm9wdGlvbnMuZXh0ZW5zaW9ucz8uZm9ybWF0dGVyJiYodGhpcy5fZXh0ZW5zaW9ucy5mb3JtYXR0ZXI9dGhpcy5vcHRpb25zLmV4dGVuc2lvbnMuZm9ybWF0dGVyKHRoaXMpKSx0aGlzLm9wdGlvbnMuZXh0ZW5zaW9ucz8uc25hcHNob3QmJih0aGlzLl9leHRlbnNpb25zLnNuYXBzaG90PXRoaXMub3B0aW9ucy5leHRlbnNpb25zLnNuYXBzaG90KHRoaXMpKSx0aGlzLmNvbm5lY3QoKX1kZXN0cm95KCl7dGhpcy5fc2Vzc2lvbi5kZXN0cm95KCksdGhpcy5fY29ubmVjdGVkPSExLHRoaXMub25EaXNjb25uZWN0LmZpcmUoKX1pbnRlcm5hbHMoKXtyZXR1cm57c2Vzc2lvbjooKT0+dGhpcy5fc2Vzc2lvbixzdWJzY3JpcHRpb25zOigpPT50aGlzLl9zdWJzY3JpcHRpb25zLGRhdGE6KCk9PnRoaXMuX3N5bWJvbF9kYXRhfX1jb25uZWN0KCl7dGhpcy5fc2Vzc2lvbi5jb25uZWN0KHRoaXMucXVvdGVIYW5kbGVyLmJpbmQodGhpcykpfXF1b3RlSGFuZGxlcihlKXtjb25zdHttZXRob2Q6dCxwYXJhbXM6b309ZTtzd2l0Y2godCl7Y2FzZSJjb25uZWN0ZWQiOnRoaXMuX2Nvbm5lY3RlZHx8KHRoaXMuX2Nvbm5lY3RlZD0hMCx0aGlzLm9uQ29ubmVjdGVkKCkpO2JyZWFrO2Nhc2UicXVvdGVfbGlzdF9maWVsZHMiOmJyZWFrO2Nhc2UicXVvdGVfc3ltYm9sX2RhdGEiOnRoaXMuX2Nvbm5lY3RlZCYmdGhpcy5vblN5bWJvbERhdGEob1swXSk7YnJlYWs7Y2FzZSJxdW90ZV9jb21wbGV0ZWQiOnRoaXMuX2Nvbm5lY3RlZCYmdGhpcy5vblN5bWJvbERhdGEoe3N5bWJvbG5hbWU6b1swXSxjb21wbGV0ZTpwZXJmb3JtYW5jZS5ub3coKSx2YWx1ZXM6e319KTticmVhaztjYXNlImRpc2Nvbm5lY3RlZCI6dGhpcy5fY29ubmVjdGVkJiYodGhpcy5fY29ubmVjdGVkPSExLHRoaXMub25EaXNjb25uZWN0LmZpcmUoKSl9fW9uQ29ubmVjdGVkKCl7dGhpcy5zZXRGaWVsZHMoKTtjb25zdCBlPU9iamVjdC5rZXlzKHRoaXMuX3N5bWJvbF9kYXRhKTtlLmxlbmd0aCYmKHRoaXMuX3Nlc3Npb24ucXVvdGVBZGRTeW1ib2xzKGUpLHRoaXMuX2RlbGF5VXBkYXRlRmFzdFN5bWJvbHMoKSksdGhpcy5vbkNvbm5lY3QuZmlyZSgpfXNldEZpZWxkcygpe2NvbnN0e2ZpZWxkczplfT10aGlzLm9wdGlvbnM7ZSYmZS5sZW5ndGgmJnRoaXMuX3Nlc3Npb24ucXVvdGVTZXRGaWVsZHMoZSl9b25TeW1ib2xEYXRhKGUpe3RyeXtlLnN0YXR1cyYmaC5RVU9URV9GSUVMRFNfQ0FDSEUudXBkYXRlKGUsaC5RVU9URV9GSUVMRFMsITEpfWNhdGNoKGUpe31jb25zdCB0PWUuc3ltYm9sbmFtZTtsZXQgbz10aGlzLl90aHJvdHRsZWRTeW1ib2xEYXRhW3RdO18mJihkZWxldGUgZS52YWx1ZXMucHJldl9jbG9zZV9wcmljZSx2b2lkIDAhPT1lLnZhbHVlcy5yZWd1bGFyX2Nsb3NlJiYoZS52YWx1ZXMucHJldl9jbG9zZV9wcmljZT1lLnZhbHVlcy5yZWd1bGFyX2Nsb3NlKSksb3x8KG89dGhpcy5fdGhyb3R0bGVkU3ltYm9sRGF0YVt0XT17Zm5EaXNwYXRjaDooMCxpLmRlZmF1bHQpKHRoaXMuZGlzcGF0Y2hTeW1ib2xEYXRhLmJpbmQodGhpcyksdGhpcy5vcHRpb25zLnRocm90dGxlVGltZW91dCl9KSxvLmNhY2hlPygwLGMuZGVlcEV4dGVuZCkoby5jYWNoZSxlKTpvLmNhY2hlPWUsby5mbkRpc3BhdGNoKHQpfWRpc3BhdGNoU3ltYm9sRGF0YShlKXtjb25zdCB0PXRoaXMuX3N5bWJvbF9kYXRhW2VdLG89dGhpcy5fdGhyb3R0bGVkU3ltYm9sRGF0YVtlXS5jYWNoZQo7aWYoZGVsZXRlIHRoaXMuX3Rocm90dGxlZFN5bWJvbERhdGFbZV0uY2FjaGUsdGhpcy5fc3ltYm9sX2RhdGFbZV0peygwLGMuZGVlcEV4dGVuZCkodCxvKSx0LnZhbHVlcyYmdGhpcy5fcGFyc2VVcGRhdGVNb2RlKHQudmFsdWVzKTtmb3IoY29uc3QgaSBpbiB0aGlzLl9zdWJzY3JpcHRpb25zKXtjb25zdCBuPXRoaXMuX3N1YnNjcmlwdGlvbnNbaV07aWYobi5oYXMoZSkpe1suLi4oMCxzLmVuc3VyZURlZmluZWQpKG4uZ2V0KGUpKV0uZm9yRWFjaCgoZT0+e2UodCxvKX0pKX19fX1zdWJzY3JpYmUoZSx0LG8pe3RoaXMuX3N1YnNjcmlwdGlvbnNbZV09dGhpcy5fc3Vic2NyaXB0aW9uc1tlXXx8bmV3IE1hcDtjb25zdCBpPXRoaXMuX3N1YnNjcmlwdGlvbnNbZV07dD1BcnJheS5pc0FycmF5KHQpP1suLi50XTpbdF07Y29uc3Qgbj1bXTt0LmZvckVhY2goKGU9Pnt0aGlzLl9zeW1ib2xfZGF0YVtlXT9pJiZpLmhhcyhlKXx8dGhpcy5fc3ltYm9sX2RhdGFbZV0uc3Vic2NyaWJlcnNfY291bnQrKzoodGhpcy5fc3ltYm9sX2RhdGFbZV09e3N1YnNjcmliZXJzX2NvdW50OjF9LG4ucHVzaChlKSksaS5oYXMoZSl8fGkuc2V0KGUsW10pO2NvbnN0IHQ9KDAscy5lbnN1cmVEZWZpbmVkKShpLmdldChlKSk7dC5wdXNoKG8pLHQuZmFzdD0hMCx0aGlzLl9zeW1ib2xfZGF0YVtlXSYmdGhpcy5fc3ltYm9sX2RhdGFbZV0udmFsdWVzJiZvKHRoaXMuX3N5bWJvbF9kYXRhW2VdLHRoaXMuX3N5bWJvbF9kYXRhW2VdKX0pKSxuLmxlbmd0aCYmdGhpcy5fY29ubmVjdGVkJiYodGhpcy5fc2Vzc2lvbi5xdW90ZUFkZFN5bWJvbHMobiksdGhpcy5fZGVsYXlVcGRhdGVGYXN0U3ltYm9scygpKX11bnN1YnNjcmliZShlLHQsbyl7dD1BcnJheS5pc0FycmF5KHQpP1suLi50XTpbdF07Y29uc3QgaT10aGlzLl9zdWJzY3JpcHRpb25zW2VdLG49W107Zm9yKGxldCByPTA7cjx0Lmxlbmd0aDtyKyspe2NvbnN0IGE9dFtyXTtpZihpJiZpLmhhcyhhKSl7aWYobyl7Y29uc3QgZT0oMCxzLmVuc3VyZURlZmluZWQpKGkuZ2V0KGEpKSx0PWUuaW5kZXhPZihvKTt+dCYmZS5zcGxpY2UodCwxKSxlLmxlbmd0aHx8aS5kZWxldGUoYSl9ZWxzZSBpLmRlbGV0ZShhKTswPT09aS5zaXplJiZkZWxldGUgdGhpcy5fc3Vic2NyaXB0aW9uc1tlXSx0aGlzLl9zeW1ib2xfZGF0YS5oYXNPd25Qcm9wZXJ0eShhKSYmKGkuaGFzKGEpfHx0aGlzLl9zeW1ib2xfZGF0YVthXS5zdWJzY3JpYmVyc19jb3VudC0tLHRoaXMuX3N5bWJvbF9kYXRhW2FdLnN1YnNjcmliZXJzX2NvdW50fHwoZGVsZXRlIHRoaXMuX3N5bWJvbF9kYXRhW2FdLG4ucHVzaChhKSkpfWVsc2UgbS5sb2dXYXJuKGBDaGVjayB5b3VyIHN1Yi91bnN1YiBsb29rcyBpdCBpcyBsZWFraW5nIChjbGllbnRfaWQ9JHtlfSwgc3ltYm9sPSR7YX0pYCl9bi5sZW5ndGgmJnRoaXMuX2Nvbm5lY3RlZCYmKHRoaXMuX3Nlc3Npb24ucXVvdGVSZW1vdmVTeW1ib2xzKG4pLHRoaXMuX2RlbGF5VXBkYXRlRmFzdFN5bWJvbHMoKSl9c2V0RmFzdFN5bWJvbHMoZSx0KXtpZih0aGlzLl9zdWJzY3JpcHRpb25zW2VdKXtjb25zdCBvPXRoaXMuX3N1YnNjcmlwdGlvbnNbZV0saT1BcnJheS5mcm9tKG8ua2V5cygpKTtmb3IobGV0IGU9MDtlPGkubGVuZ3RoOysrZSl7Y29uc3Qgbj1pW2VdOygwLHMuZW5zdXJlRGVmaW5lZCkoby5nZXQobikpLmZhc3Q9LTEhPT10LmluZGV4T2Yobil9fXRoaXMuX2RlbGF5VXBkYXRlRmFzdFN5bWJvbHMoKX1zbmFwc2hvdChlKXtyZXR1cm4gdm9pZCAwPT09dGhpcy5fZXh0ZW5zaW9ucy5zbmFwc2hvdD9Qcm9taXNlLnJlamVjdCgiTm8gZm9ybWF0dGVyIGV4dGVuc2lvbiBwcm92aWRlZCIpOnRoaXMuX2V4dGVuc2lvbnMuc25hcHNob3QoZSl9Zm9ybWF0dGVyKGUsdCl7cmV0dXJuIHZvaWQgMD09PXRoaXMuX2V4dGVuc2lvbnMuZm9ybWF0dGVyP1Byb21pc2UucmVqZWN0KCJObyBmb3JtYXR0ZXIgZXh0ZW5zaW9uIHByb3ZpZGVkIik6dGhpcy5fZXh0ZW5zaW9ucy5mb3JtYXR0ZXIoZSx0KX1fdXBkYXRlRmFzdFN5bWJvbHMoKXtpZighdGhpcy5fY29ubmVjdGVkKXJldHVybjtjb25zdCBlPXRoaXMuX2Zhc3RTeW1ib2xzKCk7MD09PWUubGVuZ3RoP3RoaXMuX3Nlc3Npb24ucXVvdGVIaWJlcm5hdGVBbGwoKTp0aGlzLl9zZXNzaW9uLnF1b3RlRmFzdFN5bWJvbHMoZSl9X2Zhc3RTeW1ib2xzKCl7bGV0IGU9W107Zm9yKGNvbnN0IHQgaW4gdGhpcy5fc3Vic2NyaXB0aW9ucyl7Y29uc3Qgbz10aGlzLl9zdWJzY3JpcHRpb25zW3RdLGk9QXJyYXkuZnJvbShvLmtleXMoKSk7Zm9yKGxldCB0PTA7dDxpLmxlbmd0aDsrK3Qpe2NvbnN0IG49aVt0XTsoMCxzLmVuc3VyZURlZmluZWQpKG8uZ2V0KG4pKS5mYXN0JiZlLnB1c2gobil9fXJldHVybiBlPSgwLHIuZGVmYXVsdCkoZSksZX1fcGFyc2VVcGRhdGVNb2RlKGUpeygwLHUubm9ybWFsaXplVXBkYXRlTW9kZSkoZSl9fX0sOTcwNzc0KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse1F1b3RlU2Vzc2lvbjooKT0+bn0pO3ZhciBpPW8oMTUwMTUwKTtjbGFzcyBue2NvbnN0cnVjdG9yKGUsdD0oMCxpLnJhbmRvbUhhc2gpKCkpe3RoaXMuX3Nlc3Npb25zdGFydGVkPSExLHRoaXMuX2dsb2JhbEhhbmRsZXI9bnVsbCx0aGlzLl9jaGFydEFwaT1lLHRoaXMuX3Nlc3Npb25pZD0icXNfIit0fWRlc3Ryb3koKXt0aGlzLl9zZXNzaW9uc3RhcnRlZCYmKHRoaXMuX2NoYXJ0QXBpLnF1b3RlRGVsZXRlU2Vzc2lvbih0aGlzLl9zZXNzaW9uaWQpLHRoaXMuX3Nlc3Npb25zdGFydGVkPSExKX1jb25uZWN0ZWQoKXtyZXR1cm4gdGhpcy5fY2hhcnRBcGkuY29ubmVjdGVkKCl9Y29ubmVjdChlKXt0aGlzLl9nbG9iYWxIYW5kbGVyPWUsdGhpcy5fY2hhcnRBcGkuY3JlYXRlU2Vzc2lvbih0aGlzLl9zZXNzaW9uaWQsdGhpcyksdGhpcy5fY2hhcnRBcGkuY29ubmVjdCgpfWRpc2Nvbm5lY3QoKXt0aGlzLl9jaGFydEFwaS5kaXNjb25uZWN0KCl9cXVvdGVBZGRTeW1ib2xzKGUpe3RoaXMuX2NoYXJ0QXBpLnF1b3RlQWRkU3ltYm9scyh0aGlzLl9zZXNzaW9uaWQsZSl9cXVvdGVSZW1vdmVTeW1ib2xzKGUpewp0aGlzLl9jaGFydEFwaS5xdW90ZVJlbW92ZVN5bWJvbHModGhpcy5fc2Vzc2lvbmlkLGUpfXF1b3RlRmFzdFN5bWJvbHMoZSl7dGhpcy5fY2hhcnRBcGkucXVvdGVGYXN0U3ltYm9scyh0aGlzLl9zZXNzaW9uaWQsZSl9cXVvdGVTZXRGaWVsZHMoZSl7dGhpcy5fY2hhcnRBcGkucXVvdGVTZXRGaWVsZHModGhpcy5fc2Vzc2lvbmlkLGUpfW9uTWVzc2FnZShlKXtzd2l0Y2goZS5tZXRob2Qpe2Nhc2UiY29ubmVjdGVkIjp0aGlzLl9zZXNzaW9uc3RhcnRlZHx8KHRoaXMuX2NoYXJ0QXBpLnF1b3RlQ3JlYXRlU2Vzc2lvbih0aGlzLl9zZXNzaW9uaWQpLHRoaXMuX3Nlc3Npb25zdGFydGVkPSEwKTticmVhaztjYXNlImRpc2Nvbm5lY3RlZCI6dGhpcy5fc2Vzc2lvbnN0YXJ0ZWQ9ITF9dGhpcy5fZ2xvYmFsSGFuZGxlcj8uKGUpfXF1b3RlSGliZXJuYXRlQWxsKCl7dGhpcy5fY2hhcnRBcGkucXVvdGVIaWJlcm5hdGVBbGwodGhpcy5fc2Vzc2lvbmlkKX19fSwzNjc5NDYoZSx0LG8peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKGUpe2lmKHZvaWQgMD09PWUpcmV0dXJuIG51bGw7Y29uc3QgdD1lLm1hdGNoKC8oZGVsYXllZF9zdHJlYW1pbmcpXyhcZCspLyk7cmV0dXJuIG51bGw9PT10P251bGw6e21vZGU6dFsxXSxpbnRlcnZhbDpwYXJzZUludCh0WzJdKX19ZnVuY3Rpb24gbihlKXtjb25zdCB0PWkoZS51cGRhdGVfbW9kZSk7cmV0dXJuIG51bGw9PT10fHwoZS51cGRhdGVfbW9kZT10Lm1vZGUsZS51cGRhdGVfbW9kZV9zZWNvbmRzPXQuaW50ZXJ2YWwpLGV9by5kKHQse25vcm1hbGl6ZVVwZGF0ZU1vZGU6KCk9Pm4scGFyc2VVcGRhdGVNb2RlOigpPT5pfSl9LDM1NjM4MChlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtnZXRUb29sdGlwRGF0YTooKT0+bixzZXRUb29sdGlwRGF0YTooKT0+cn0pO2NvbnN0IGk9bmV3IFdlYWtNYXA7ZnVuY3Rpb24gbihlLHQpe2NvbnN0IG89aS5nZXQoZSk7cmV0dXJuIG8gaW5zdGFuY2VvZiBGdW5jdGlvbj9vKHQpOm8mJm9bdF19ZnVuY3Rpb24gcihlLHQsbyl7aWYobyBpbnN0YW5jZW9mIEZ1bmN0aW9uKXJldHVybiB2b2lkIGkuc2V0KGUsbyk7Y29uc3Qgbj1pLmdldChlKSxyPXZvaWQgMD09PW58fG4gaW5zdGFuY2VvZiBGdW5jdGlvbj97fTpuO3JbdF09byxpLnNldChlLHIpfX0sNDkwMzc4KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2dldERhdGFGcm9tVGFyZ2V0OigpPT5wLGdldFRvb2x0aXA6KCk9Pm0saGlkZVRvb2x0aXA6KCk9PmYsc2V0U3R5bGU6KCk9Pmcsc2hvd1Rvb2x0aXA6KCk9PnZ9KTt2YXIgaSxuPW8oMTM4NjM4KSxyPW8oNDQzNTU3KSxzPW8oOTY5MTY4KSxhPShvKDgyOTE4MCksbyg1MTg3NSkpLGw9byg2NDA3NDQpLGM9bygzMTg5NzQpLGQ9byg2ODY2NTApLGg9bygzNTYzODApLHU9bygzNDUxNTEpLF89bygxMTQwNjgpO2Z1bmN0aW9uIHAoZSl7Y29uc3QgdD1mdW5jdGlvbihlKXtjb25zdCB0PWUuaGFzQXR0cmlidXRlKCJkYXRhLXRvb2x0aXAiKT9lLmdldEF0dHJpYnV0ZSgiZGF0YS10b29sdGlwIik6ZS5nZXRBdHRyaWJ1dGUoInRpdGxlIik7cmV0dXJuIHQmJigoMCxoLnNldFRvb2x0aXBEYXRhKShlLCJ0ZXh0Iix0KSxlLnJlbW92ZUF0dHJpYnV0ZSgidGl0bGUiKSksKDAsaC5nZXRUb29sdGlwRGF0YSkoZSwidGV4dCIpfHwiIn0oZSksbz1lLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLGk9e2g6by5oZWlnaHQsdzpvLndpZHRoLHg6by5sZWZ0LHk6by50b3B9LG49ZS5nZXRBdHRyaWJ1dGUoImRhdGEtY29sb3ItdGhlbWUiKXx8IiIscj1lLmNsYXNzTGlzdC5jb250YWlucygiY29tbW9uLXRvb2x0aXAtaHRtbCIpLHM9cGFyc2VJbnQoZS5nZXRBdHRyaWJ1dGUoImRhdGEtdG9vbHRpcC1kZWxheSIpfHwiIiksYT1wYXJzZUludChlLmdldEF0dHJpYnV0ZSgiZGF0YS10b29sdGlwLWRlYm91bmNlIil8fCIiKTtsZXQgbD17dHlwZToibm9uZSJ9O3JldHVybiB0JiYobD17dHlwZTpyPyJodG1sIjoidGV4dCIsZGF0YTp0fSkse2Fib3ZlOmUuY2xhc3NMaXN0LmNvbnRhaW5zKCJjb21tb24tdG9vbHRpcC1hYm92ZSIpLGJlbG93OmUuY2xhc3NMaXN0LmNvbnRhaW5zKCJjb21tb24tdG9vbHRpcC1iZWxvdyIpLG90bDplLmNsYXNzTGlzdC5jb250YWlucygiY29tbW9uLXRvb2x0aXAtb3RsIiksb3RyOmUuY2xhc3NMaXN0LmNvbnRhaW5zKCJjb21tb24tdG9vbHRpcC1vdHIiKSx2ZXJ0aWNhbDplLmNsYXNzTGlzdC5jb250YWlucygiY29tbW9uLXRvb2x0aXAtdmVydGljYWwiKSxob3RrZXk6ZS5nZXRBdHRyaWJ1dGUoImRhdGEtdG9vbHRpcC1ob3RrZXkiKSxuYXJyb3c6ZS5jbGFzc0xpc3QuY29udGFpbnMoImNvbW1vbi10b29sdGlwLW5hcnJvdyIpLHdpZGU6ZS5jbGFzc0xpc3QuY29udGFpbnMoImNvbW1vbi10b29sdGlwLXdpZGUiKSxjb2xvclRoZW1lOm4sdG9vbHRpcERlbGF5OnMsdG9vbHRpcERlYm91bmNlOmEscmVjdDppLGNvbnRlbnQ6bCx0YXJnZXQ6ZX19ZnVuY3Rpb24gbShlKXtjb25zdCB0PSgwLG4uZW5zdXJlTm90TnVsbCkoQykuY2xvbmVOb2RlKCEwKSxvPUUodCkse2NvbnRlbnQ6aX09ZTtzd2l0Y2goaS50eXBlKXtjYXNlImVsZW1lbnQiOm8uaW5uZXJIVE1MPSIiLG8uYXBwZW5kQ2hpbGQoaS5kYXRhKTticmVhaztjYXNlImh0bWwiOm8uaW5uZXJIVE1MPWkuZGF0YTticmVhaztjYXNlInRleHQiOmlmKGUuaG90a2V5KXtjb25zdCBlPSgwLG4uZW5zdXJlTm90TnVsbCkoVCkuY2xvbmVOb2RlKCEwKTtlLmlubmVyVGV4dD1pLmRhdGEsby5hcHBlbmRDaGlsZChlKX1lbHNlIG8uaW5uZXJUZXh0PWkuZGF0YX1pZihlLmhvdGtleSl7Y29uc3QgdD0ibm9uZSIhPT1pLnR5cGUscj0oMCxuLmVuc3VyZU5vdE51bGwpKGspLmNsb25lTm9kZSghMCkscz0oMCx1LmhvdEtleURlc2VyaWFsaXplKShlLmhvdGtleSksYT1zLmtleXMubWFwKChlPT5gPHNwYW4gY2xhc3M9IiR7X1siY29tbW9uLXRvb2x0aXBfX2hvdGtleS1idXR0b24iXX0iPiR7ZX08L3NwYW4+YCkpO3IuaW5uZXJIVE1MPWZ1bmN0aW9uKGUsdCl7Y29uc3Qgbz0ve1xkfXx7aG90a2V5X1xkfS9naTtyZXR1cm4gZS5yZXBsYWNlKG8sKGU9Pntjb25zdCBvPU51bWJlcihlLm1hdGNoKC9cZC8pKQo7cmV0dXJuIHRbb119KSl9KHMudGV4dCxhKS5yZXBsYWNlKC9cc1wrXHMvZyxgPHNwYW4gY2xhc3M9IiR7X1siY29tbW9uLXRvb2x0aXBfX3BsdXMtc2lnbiJdfSI+Kzwvc3Bhbj5gKSxvLmNsYXNzTGlzdC5hZGQoX1siY29tbW9uLXRvb2x0aXBfX2JvZHktLXdpdGgtaG90a2V5Il0pLHQmJnIuY2xhc3NMaXN0LmFkZChfWyJjb21tb24tdG9vbHRpcF9faG90a2V5LWJsb2NrLS1kaXZpZGVyIl0pLG8uYXBwZW5kQ2hpbGQocil9cmV0dXJuIHQuYWRkRXZlbnRMaXN0ZW5lcigiY29udGV4dG1lbnUiLGEucHJldmVudERlZmF1bHQpLHR9ZnVuY3Rpb24gZyhlLHQpe2NvbnN0IG89dC5yZWN0O2lmKCFvKXJldHVybjsoMCxkLnNldFRvb2x0aXBDb2xvclRoZW1lKShlLHQuY29sb3JUaGVtZXx8ImRlZmF1bHQiKTtjb25zdCBpPUUoZSksbj1lLnF1ZXJ5U2VsZWN0b3IoYC4ke19bImNvbW1vbi10b29sdGlwX19idXR0b24tY29udGFpbmVyIl19YCk7dC5hZGRDbGFzcyYmZS5jbGFzc0xpc3QuYWRkKHQuYWRkQ2xhc3MpLHQuYWRkQm9keUNsYXNzJiZpLmNsYXNzTGlzdC5hZGQodC5hZGRCb2R5Q2xhc3MpLGkuY2xhc3NMaXN0LnRvZ2dsZShfWyJjb21tb24tdG9vbHRpcF9fYm9keS0td2lkdGhfd2lkZSJdLEJvb2xlYW4odC53aWRlKSksaS5jbGFzc0xpc3QudG9nZ2xlKF9bImNvbW1vbi10b29sdGlwX19ib2R5LS1uby1wYWRkaW5nIl0sQm9vbGVhbih0Lm5vUGFkZGluZykpLGkuY2xhc3NMaXN0LnRvZ2dsZShfWyJjb21tb24tdG9vbHRpcF9fYm9keS0td2lkdGhfbmFycm93Il0sQm9vbGVhbih0Lm5hcnJvdykpLGkuY2xhc3NMaXN0LnRvZ2dsZShfWyJjb21tb24tdG9vbHRpcF9fYm9keS0tbm8tYnV0dG9ucyJdLCEwKSxpLnN0eWxlLmxlZnQ9eSgwKSxpLnN0eWxlLndpZHRoPXkoaS5jbGllbnRXaWR0aCsoQm9vbGVhbih0Lm5vUGFkZGluZyk/MDoyKSk7Y29uc3Qgcj1kb2N1bWVudC5ib2R5LmNsaWVudFdpZHRoLGE9Yy5DaGVja01vYmlsZS5pT1MoKXx8Yy5DaGVja01vYmlsZS5BbmRyb2lkKCl8fCgwLGMuc3VwcG9ydFRvdWNoKSgpJiYoMCxjLmlzTWFjKSgpP3dpbmRvdy5pbm5lckhlaWdodDpkb2N1bWVudC5ib2R5LmNsaWVudEhlaWdodCxoPXQudmVydGljYWwsdT10LmV4dGVuZE1hcmdpbnx8aCYmby53PDIwfHwhaCYmby5oPDIwO2UuY2xhc3NMaXN0LnRvZ2dsZShfWyJjb21tb24tdG9vbHRpcC0tZmFydGhlciJdLHUpLGUuY2xhc3NMaXN0LnRvZ2dsZShfWyJjb21tb24tdG9vbHRpcC0tdmVydGljYWwiXSxoKSxlLmNsYXNzTGlzdC50b2dnbGUoX1siY29tbW9uLXRvb2x0aXAtLWhvcml6b250YWwiXSwhaCk7Y29uc3QgcD1mdW5jdGlvbihlKXtyZXR1cm4gZS5xdWVyeVNlbGVjdG9yKGAuJHtfWyJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlciJdfWApfShlKSxtPWUub2Zmc2V0SGVpZ2h0O2lmKGgpe2NvbnN0IGM9MTAsZD1hLTEwLGg9MTIsdT1jK2gsZz1kLWgsdj0oMCxsLmNsYW1wKShvLnkrby5oLzIsdSxnKS1tLzIsZj12K207ZS5zdHlsZS5sZWZ0PXkoby54K28udyksZS5zdHlsZS50b3A9eSh2KSx2PGM/aS5zdHlsZS50b3A9bi5zdHlsZS50b3A9eShjLXYpOmY+ZCYmKGkuc3R5bGUudG9wPW4uc3R5bGUudG9wPXkoZC1mKSk7Y29uc3R7cmlnaHQ6Yn09KGUucXVlcnlTZWxlY3RvcigiOmxhc3QtY2hpbGQiKXx8aSkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksUz1iKzEwPnI7ZS5jbGFzc0xpc3QudG9nZ2xlKF9bImNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fcmV2ZXJzZWQiXSxTKSxlLmNsYXNzTGlzdC50b2dnbGUoX1siY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9ub3JtYWwiXSwhUyk7bGV0IHc9Uz8iYWZ0ZXIiOiJiZWZvcmUiOygwLHMuaXNSdGwpKCk/KHc9dC5vdHI/ImFmdGVyIjp3LHc9dC5vdGw/ImJlZm9yZSI6dyk6KHc9dC5vdHI/ImJlZm9yZSI6dyx3PXQub3RsPyJhZnRlciI6dykscC5jbGFzc0xpc3QudG9nZ2xlKF9bImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUiXSwiYmVmb3JlIj09PXcpLHAuY2xhc3NMaXN0LnRvZ2dsZShfWyJjb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWZ0ZXIiXSwiYWZ0ZXIiPT09dyksImFmdGVyIj09PXcmJihlLnN0eWxlLmxlZnQ9ImF1dG8iLGUuc3R5bGUucmlnaHQ9eShyLW8ueCkpfWVsc2V7Y29uc3Qgcz1vLngtKGkub2Zmc2V0V2lkdGgtby53KS8yLGw9ci1lLm9mZnNldFdpZHRoLTIwPD0wPyhyLWUub2Zmc2V0V2lkdGgpLzI6MTAsYz1yLWwtZS5vZmZzZXRXaWR0aCxkPU1hdGgubWF4KGwsTWF0aC5taW4ocyxjKSk7ZS5zdHlsZS5sZWZ0PXkoZCk7Y29uc3QgaD1jPHM7ZS5jbGFzc0xpc3QudG9nZ2xlKF9bImNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fcmV2ZXJzZWQiXSxoKSxlLmNsYXNzTGlzdC50b2dnbGUoX1siY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9ub3JtYWwiXSwhaCk7Y29uc3QgdT1mdW5jdGlvbihlLHQsbyxpKXtpZihlLmFib3ZlKXJldHVybiB4KHQsaSk/ImFib3ZlIjoiYmVsb3ciO2lmKGUuYmVsb3cpcmV0dXJuIGZ1bmN0aW9uKGUsdCxvKXtyZXR1cm4gby55K28uaCt0KzEwPGV9KHQsbyxpKT8iYmVsb3ciOiJhYm92ZSI7cmV0dXJuIHgobyxpKT8iYWJvdmUiOiJiZWxvdyJ9KHQsYSxtLG8pOyJhYm92ZSI9PT11P2Uuc3R5bGUuYm90dG9tPXkoYS1vLnkpOmUuc3R5bGUudG9wPXkoby55K28uaCkscC5jbGFzc0xpc3QuYWRkKCJhYm92ZSI9PT11P19bImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZSJdOl9bImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWxvdyJdKTtjb25zdHtsZWZ0Omd9PWkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7bGV0IHY9TWF0aC50cnVuYyhvLngrby53LzItKGcraS5jbGllbnRXaWR0aC8yKSk7ZS5zdHlsZS5sZWZ0PXkoZCt2KSxlLnN0eWxlLndpZHRoPXkoaS5jbGllbnRXaWR0aCtuLmNsaWVudFdpZHRoKSx2PWg/TWF0aC5tYXgoMCx2KTpNYXRoLm1pbigwLHYpLG4uc3R5bGUubGVmdD15KC12KSxpLnN0eWxlLmxlZnQ9eSgtdil9fWZ1bmN0aW9uIHYoZSl7ZS5jbGFzc0xpc3QudG9nZ2xlKF9bImNvbW1vbi10b29sdGlwLS1oaWRkZW4iXSwhMSl9ZnVuY3Rpb24gZihlKXsKZS5jbGFzc0xpc3QudG9nZ2xlKF9bImNvbW1vbi10b29sdGlwLS1oaWRkZW4iXSwhMCl9ZnVuY3Rpb24geShlKXtyZXR1cm5gJHtNYXRoLmZsb29yKGUpfXB4YH0hZnVuY3Rpb24oZSl7ZVtlLlZpZXdwb3J0UGFkZGluZz0xMF09IlZpZXdwb3J0UGFkZGluZyJ9KGl8fChpPXt9KSk7Y29uc3QgYj1gXG5cdDxkaXYgaWQ9ImNvbW1vbi10b29sdGlwLXdyYXBwZXIiIGNsYXNzPSIke19bImNvbW1vbi10b29sdGlwIl19Ij5cblx0XHQ8ZGl2IGNsYXNzPSIke19bImNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyIl19IiA+XG5cdFx0XHQ8ZGl2IGNsYXNzPSIke19bImNvbW1vbi10b29sdGlwX19ib2R5Il19IGpzLXRvb2x0aXAtYm9keSI+PC9kaXY+XG5cdFx0PC9kaXY+XG5cdFx0PGRpdiBjbGFzcz0iJHtfWyJjb21tb24tdG9vbHRpcF9fYnV0dG9uLWNvbnRhaW5lciJdfSI+PC9kaXY+XG5cdDwvZGl2PlxuYCxTPWBcblx0PGRpdiBjbGFzcz0iJHtfWyJjb21tb24tdG9vbHRpcF9faG90a2V5LWJsb2NrIl19Ij48L2Rpdj5cbmAsdz1gXG5cdDxkaXYgY2xhc3M9IiR7X1siY29tbW9uLXRvb2x0aXBfX2hvdGtleS10ZXh0Il19Ij48L2Rpdj5cbmAsQz0oMCxyLnBhcnNlSHRtbEVsZW1lbnQpKGIpLGs9KDAsci5wYXJzZUh0bWxFbGVtZW50KShTKSxUPSgwLHIucGFyc2VIdG1sRWxlbWVudCkodyk7ZnVuY3Rpb24gRShlKXtyZXR1cm4gZS5xdWVyeVNlbGVjdG9yKGAuJHtfWyJjb21tb24tdG9vbHRpcF9fYm9keSJdfWApfWZ1bmN0aW9uIHgoZSx0KXtyZXR1cm4gMTArZTx0Lnl9fSwzNDUxNTEoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7aG90S2V5RGVzZXJpYWxpemU6KCk9PnIsaG90S2V5U2VyaWFsaXplOigpPT5ufSk7dmFyIGk9byg2NDE1OTMpO2Z1bmN0aW9uIG4oZSl7cmV0dXJuKDAsaS5odG1sRXNjYXBlKShKU09OLnN0cmluZ2lmeShlKSl9ZnVuY3Rpb24gcihlKXtyZXR1cm4gSlNPTi5wYXJzZSgoMCxpLmRlY29kZUhUTUxFbnRpdGllcykoZSkpfX0sMTY3ODk2KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2VtcHR5OigpPT5zLHNldFRvb2x0aXA6KCk9PmF9KTtjb25zdCBpPSJ0b29sdGlwLXJvb3QtZWxlbWVudCI7bGV0IG47ZnVuY3Rpb24gcigpe2NvbnN0IGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaSk7ZT9uPWU6KG49ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iiksbi5pZD1pLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQobikpfWZ1bmN0aW9uIHMoKXtuJiYobi5pbm5lckhUTUw9IiIpfWZ1bmN0aW9uIGEoZSl7cygpLG58fHIoKSxuLmFwcGVuZENoaWxkKGUpfSJpbnRlcmFjdGl2ZSI9PT1kb2N1bWVudC5yZWFkeVN0YXRlP3IoKTpkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixyKX0sNjU4OTk1KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2NsZWFyU2NoZWR1bGU6KCk9PnMsc2NoZWR1bGVIaWRlOigpPT5sLHNjaGVkdWxlUmVtb3ZlOigpPT5hLHNjaGVkdWxlUmVuZGVyOigpPT5jfSk7bGV0IGk9MCxuPTAscj0wO2Z1bmN0aW9uIHMoKXtjbGVhclRpbWVvdXQoaSksY2xlYXJUaW1lb3V0KG4pLGNsZWFyVGltZW91dChyKX1mdW5jdGlvbiBhKGUsdCl7cj1zZXRUaW1lb3V0KGUsdCl9ZnVuY3Rpb24gbChlLHQpe249c2V0VGltZW91dChlLHQpfWZ1bmN0aW9uIGMoZSx0KXtpPXNldFRpbWVvdXQoZSx0KX19LDY4NjY1MChlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtzZXRUb29sdGlwQ29sb3JUaGVtZTooKT0+cn0pO2NvbnN0IGk9e2RlZmF1bHQ6IiIsd2hpdGU6InRoZW1lLXdoaXRlIixjaGFydDoidGhlbWUtY2hhcnQiLG5ld3M6InRoZW1lLW5ld3MiLCJyb3VuZC1zaGFkb3ciOiJ0aGVtZS1yb3VuZC1zaGFkb3cifSxuPU9iamVjdC5rZXlzKGkpO2Z1bmN0aW9uIHIoZSx0KXtjb25zdCBvPW4uaW5jbHVkZXModCk/aVt0XToiIjtlLmNsYXNzTGlzdC5yZW1vdmUoLi4ubi5tYXAoKGU9PmlbZV0pKS5maWx0ZXIoKGU9PiEhZSkpKSxvJiYhZS5jbGFzc0xpc3QuY29udGFpbnMobykmJmUuY2xhc3NMaXN0LmFkZChvKX19LDM0NDc4NShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtoaWRlOigpPT52LHNob3dPbkVsZW1lbnQ6KCk9Pl99KTt2YXIgaT1vKDM2MzI2OSksbj1vKDEzODYzOCkscj1vKDcyNzA5KSxzPW8oNjU4OTk1KSxhPW8oMTY3ODk2KSxsPW8oNDkwMzc4KTtsZXQgYz0hMSxkPW51bGwsaD1udWxsO2kubW9iaWxldG91Y2h8fChkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW92ZXIiLG0sITApLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIiwoZnVuY3Rpb24oZSl7Y29uc3QgdD1lLnRhcmdldDtpZighKHQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCYmdC5jbG9zZXN0KCdbZGF0YS10b29sdGlwLXNob3ctb24tZm9jdXM9InRydWUiXScpJiZ0Lm1hdGNoZXMoIjpmb2N1cy12aXNpYmxlIikpKXJldHVybjttKGUsITApfSkse2NhcHR1cmU6ITB9KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJhY3RpdmUtZGVzY2VuZGFudC1mb2N1cyIsKGZ1bmN0aW9uKGUpe2UudGFyZ2V0IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQmJm0oZSwhMCl9KSx7Y2FwdHVyZTohMH0pKTtjb25zdCB1PW5ldyBNdXRhdGlvbk9ic2VydmVyKCgoKT0+e2lmKGQmJmQub3B0aW9ucy50YXJnZXQpe2xldCBlO2U9ImlzQ29ubmVjdGVkImluIGQub3B0aW9ucy50YXJnZXQ/ZC5vcHRpb25zLnRhcmdldC5pc0Nvbm5lY3RlZDpkb2N1bWVudC5ib2R5LmNvbnRhaW5zKGQub3B0aW9ucy50YXJnZXQpLGV8fHYoKX19KSksXz0oZSx0PXt9KT0+e2NvbnN0e2NvbnRlbnQ6bywuLi5pfT1iKHQpLG49bC5nZXREYXRhRnJvbVRhcmdldChlKSxyPU9iamVjdC5hc3NpZ24obixpKTtyZXR1cm4ibm9uZSIhPT1vLnR5cGUmJihyLmNvbnRlbnQ9byksISgibm9uZSI9PT1yLmNvbnRlbnQudHlwZSYmIXIuaG90a2V5KSYmKHIudGFyZ2V0PWUscChyKSwhMCl9LHA9ZT0+e2NvbnN0IHQ9YihlKSxvPWwuZ2V0VG9vbHRpcCh0KTtpZihkPXtvcHRpb25zOnQsZWxlbWVudDpvfSwoMCxhLnNldFRvb2x0aXApKG8pLCgwLHMuY2xlYXJTY2hlZHVsZSkoKSwKIWMpcmV0dXJuIGwuaGlkZVRvb2x0aXAobyksdm9pZCgwLHMuc2NoZWR1bGVSZW5kZXIpKCgoKT0+ZihvKSksZnVuY3Rpb24oZSl7cmV0dXJuIm51bWJlciIhPXR5cGVvZiBlLnRvb2x0aXBEZWxheXx8aXNOYU4oZS50b29sdGlwRGVsYXkpPzUwMDplLnRvb2x0aXBEZWxheX0odCkpO2NvbnN0e3Rvb2x0aXBEZWJvdW5jZTppfT1lOyJudW1iZXIiIT10eXBlb2YgaXx8aXNOYU4oaSk/ZihvKTooMCxzLnNjaGVkdWxlUmVuZGVyKSgoKCk9PmYobykpLGkpfTtmdW5jdGlvbiBtKGUsdCl7aWYoInNvdXJjZUNhcGFiaWxpdGllcyJpbiBlJiZlLnNvdXJjZUNhcGFiaWxpdGllcz8uZmlyZXNUb3VjaEV2ZW50cylyZXR1cm47Y29uc3Qgbz1mdW5jdGlvbihlLHQsbyl7Y29uc3QgaT1bXTtmb3IoO2UmJmUhPT10OyllLmNsYXNzTGlzdCYmZS5jbGFzc0xpc3QuY29udGFpbnMobykmJmkucHVzaChlKSxlPWUucGFyZW50RWxlbWVudHx8eShlLnBhcmVudE5vZGUpO3JldHVybiBpfShlLnRhcmdldCxlLmN1cnJlbnRUYXJnZXQsImFwcGx5LWNvbW1vbi10b29sdGlwIik7Zm9yKGNvbnN0IGkgb2Ygbyl7aWYoZSBpbnN0YW5jZW9mIE1vdXNlRXZlbnQpaWYoImJ1dHRvbnMiaW4gZSl7aWYoMSZlLmJ1dHRvbnMpY29udGludWV9ZWxzZSBpZigxPT09ZS53aGljaCljb250aW51ZTtjb25zdCBvPSgpPT5fKGkpO2lmKG8oKSl7Y29uc3QgZT1lPT5uKG51bGwsITApLG49KHIscz0hMSk9PntpLnJlbW92ZUV2ZW50TGlzdGVuZXIoImNvbW1vbi10b29sdGlwLXVwZGF0ZSIsbyksaS5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIixuKSxpLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsbiksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixlLHtjYXB0dXJlOiEwfSksdCYmKGkucmVtb3ZlRXZlbnRMaXN0ZW5lcigiYmx1ciIsbiksaS5yZW1vdmVFdmVudExpc3RlbmVyKCJhY3RpdmUtZGVzY2VuZGFudC1ibHVyIixuKSksaCYmKGguZGVzdHJveSgpLGg9bnVsbCksdihzKX07aS5hZGRFdmVudExpc3RlbmVyKCJjb21tb24tdG9vbHRpcC11cGRhdGUiLG8pLGkuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsbiksaS5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWRvd24iLG4pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsZSx7Y2FwdHVyZTohMH0pLHQmJihpLmFkZEV2ZW50TGlzdGVuZXIoImJsdXIiLG4pLGkuYWRkRXZlbnRMaXN0ZW5lcigiYWN0aXZlLWRlc2NlbmRhbnQtYmx1ciIsbikpLG51bGw9PT1oJiYoaD0oMCxyLmNyZWF0ZUdyb3VwKSh7ZGVzYzoiVG9vbHRpcCJ9KSxoLmFkZCh7ZGVzYzoiSGlkZSIsaG90a2V5OjI3LGhhbmRsZXI6bn0pKTticmVha319fWZ1bmN0aW9uIGcoKXsoMCxhLmVtcHR5KSgpLGM9ITEsZD1udWxsfWNvbnN0IHY9KGUsdCk9PntpZigoMCxzLmNsZWFyU2NoZWR1bGUpKCksKDAsbi5lbnN1cmVOb3ROdWxsKSh1KS5kaXNjb25uZWN0KCksIWQpcmV0dXJuO2lmKCFlJiYhYylyZXR1cm47Y29uc3R7ZWxlbWVudDpvLG9wdGlvbnM6aX09ZCxyPSgpPT57by5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZWxlYXZlIixyKSxsLmhpZGVUb29sdGlwKG8pLGU/ZygpOigwLHMuc2NoZWR1bGVSZW1vdmUpKCgoKT0+e2coKX0pLDI1MCksdD8uKCl9O2kudG9vbHRpcEhpZGVEZWxheT8oMCxzLnNjaGVkdWxlSGlkZSkoKCgpPT57by5xdWVyeVNlbGVjdG9yKCI6aG92ZXIiKT9vLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLHIpOnIoKX0pLGkudG9vbHRpcEhpZGVEZWxheSk6cigpfTtmdW5jdGlvbiBmKGUpe2NvbnN0e29wdGlvbnM6dH09KDAsbi5lbnN1cmVOb3ROdWxsKShkKTtpZihsLnNldFN0eWxlKGUsdCksbC5zaG93VG9vbHRpcChlKSwoMCxuLmVuc3VyZU5vdE51bGwpKHUpLm9ic2VydmUoZG9jdW1lbnQse2NoaWxkTGlzdDohMCxzdWJ0cmVlOiEwfSksYz0hMCx0LmZvcmNlSGlkZU9uTW92ZSl7Y29uc3QgZT0oKT0+e2RvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsZSksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIixlKSx2KCl9O2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsZSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIixlKX19ZnVuY3Rpb24geShlKXtyZXR1cm4gZSYmKGUubm9kZVR5cGU9PT1Ob2RlLkVMRU1FTlRfTk9ERT9lOm51bGwpfWZ1bmN0aW9uIGIoZSl7aWYoZnVuY3Rpb24oZSl7cmV0dXJuImNvbnRlbnQiaW4gZX0oZSkpcmV0dXJuIGU7Y29uc3R7aW5uZXI6dCxodG1sOm8sdGV4dDppLC4uLm59PWU7bGV0IHI9e3R5cGU6Im5vbmUifTtyZXR1cm4gdCYmKHI9e3R5cGU6ImVsZW1lbnQiLGRhdGE6dH0pLGkmJihyPXt0eXBlOm8/Imh0bWwiOiJ0ZXh0IixkYXRhOml9KSx7Y29udGVudDpyLC4uLm59fX0sNzAzMDQxKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse01hcmtldERpYWxvZ0NvbnRleHQ6KCk9PnIsTWFya2V0RGlhbG9nTW9kZTooKT0+aX0pO3ZhciBpLG49byg3Nzk0NzQpOyFmdW5jdGlvbihlKXtlLlNpbmdsZT0ic2luZ2xlIixlLk11bHRpPSJtdWx0aSJ9KGl8fChpPXt9KSk7Y29uc3Qgcj0oMCxuLmNyZWF0ZUNvbnRleHQpKG51bGwpfSwyNDk0NjkoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7ZW50aXJlV29ybGRNYXJrZXRzUHJlc2V0OigpPT5hLGdldE1hcmtldEdyb3VwTmFtZU1hcDooKT0+cixpc01hcmtldHNQcmVzZXQ6KCk9Pmx9KTt2YXIgaT1vKDE4NTI3MSksbj1vKDE5NjIwMSk7Y29uc3Qgcj0oKT0+KHtbbi5NYXJrZXRHcm91cC5DdXN0b21dOiIiLFtuLk1hcmtldEdyb3VwLkVudGlyZVdvcmxkXToiIixbbi5NYXJrZXRHcm91cC5Ob3J0aEFtZXJpY2FdOmkudChudWxsLHZvaWQgMCxvKDY4OTcxNikpLFtuLk1hcmtldEdyb3VwLkV1cm9wZV06aS50KG51bGwsdm9pZCAwLG8oOTUyMzY3KSksW24uTWFya2V0R3JvdXAuTWlkZGxlRWFzdEFmcmljYV06aS50KG51bGwsdm9pZCAwLG8oNjAzMDY1KSksW24uTWFya2V0R3JvdXAuTWV4aWNvU291dGhBbWVyaWNhXTppLnQobnVsbCx2b2lkIDAsbyg1OTgyNDcpKSwKW24uTWFya2V0R3JvdXAuQXNpYVBhY2lmaWNdOmkudChudWxsLHZvaWQgMCxvKDc2NDE3MSkpLFtuLk1hcmtldEdyb3VwLldvcmxkd2lkZV06aS50KG51bGwsdm9pZCAwLG8oNjQzMDc1KSksW24uTWFya2V0R3JvdXAuRzIwXTppLnQobnVsbCx2b2lkIDAsbyg5Nzg1NjEpKX0pO3ZhciBzOyFmdW5jdGlvbihlKXtlLkVudGlyZVdvcmxkPSJlbnRpcmVfd29ybGQiLGUuRzIwPSJnMjAifShzfHwocz17fSkpO2NvbnN0IGE9ZT0+KHt2YWx1ZToiZW50aXJlX3dvcmxkIixuYW1lOmkudChudWxsLHZvaWQgMCxvKDkxNTEyNCkpLGRlc2M6IiIsZ3JvdXA6bi5NYXJrZXRHcm91cC5DdXN0b20sY291bnRyaWVzOmU/P1tdfSk7ZnVuY3Rpb24gbChlKXtyZXR1cm4gZS5ncm91cD09PW4uTWFya2V0R3JvdXAuQ3VzdG9tJiZlLmhhc093blByb3BlcnR5KCJjb3VudHJpZXMiKX19LDE5NjIwMShlLHQsbyl7InVzZSBzdHJpY3QiO3ZhciBpO28uZCh0LHtNYXJrZXRHcm91cDooKT0+aX0pLGZ1bmN0aW9uKGUpe2UuQ3VzdG9tPSJDdXN0b20iLGUuRW50aXJlV29ybGQ9IkVudGlyZSBXb3JsZCIsZS5Ob3J0aEFtZXJpY2E9Ik5vcnRoIEFtZXJpY2EiLGUuRXVyb3BlPSJFdXJvcGUiLGUuTWlkZGxlRWFzdEFmcmljYT0iTWlkZGxlIEVhc3QgLyBBZnJpY2EiLGUuTWV4aWNvU291dGhBbWVyaWNhPSJNZXhpY28gYW5kIFNvdXRoIEFtZXJpY2EiLGUuQXNpYVBhY2lmaWM9IkFzaWEgLyBQYWNpZmljIixlLldvcmxkd2lkZT0iV29ybGR3aWRlIixlLkcyMD0iRzIwIn0oaXx8KGk9e30pKX0sOTk4NjYxKGUsdCxvKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaShlKXtjb25zdCB0PW5ldyBNYXA7cmV0dXJuIGUuZm9yRWFjaCgoZT0+e3QuaGFzKGUuZ3JvdXApP3QuZ2V0KGUuZ3JvdXApLnB1c2goZSk6dC5zZXQoZS5ncm91cCxbZV0pfSkpLHR9ZnVuY3Rpb24gbihlLHQpe3JldHVybiB0Lm1hcCgodD0+ZS5maW5kKChlPT5lLnZhbHVlPT09dCkpKSkuZmlsdGVyKChlPT5Cb29sZWFuKGUpKSl9ZnVuY3Rpb24gcihlLHQ9Mil7aWYoMD09PWUubGVuZ3RoKXJldHVybltdO2lmKDE9PT10KXJldHVybltlXTtjb25zdCBvPU1hdGguZmxvb3IoZS5sZW5ndGgvMikrZS5sZW5ndGglMjtyZXR1cm5bZS5zbGljZSgwLG8pLGUuc2xpY2UobyldLmZpbHRlcigoZT0+ZS5sZW5ndGg+MCkpfW8uZCh0LHtjcmVhdGVHcm91cENvbHVtbnM6KCk9PnIsZ2V0TWFya2V0c0J5TmFtZXM6KCk9Pm4sc3BsaXRNYXJrZXRzQnlHcm91cDooKT0+aX0pfSwxODk4NjMoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7U3Bpbm5lcjooKT0+cn0pO28oODQ1NTc3KTt2YXIgaT1vKDQ0MzU1Nyksbj1vKDU2NzQ3OSk7Y2xhc3Mgcntjb25zdHJ1Y3RvcihlKXt0aGlzLl9zaG93bj0hMSx0aGlzLl9lbD0oMCxpLnBhcnNlSHRtbEVsZW1lbnQpKGZ1bmN0aW9uKGU9IiIpe3JldHVybmA8ZGl2IGNsYXNzPSJ0di1zcGlubmVyICR7ZX0iIHJvbGU9InByb2dyZXNzYmFyIj48L2Rpdj5gfSgpKSx0aGlzLnNldFNpemUobi5zcGlubmVyU2l6ZU1hcFtlfHxuLkRFRkFVTFRfU0laRV0pfXNwaW4oZSl7cmV0dXJuIHRoaXMuX2VsLmNsYXNzTGlzdC5hZGQoInR2LXNwaW5uZXItLXNob3duIiksdm9pZCAwPT09dGhpcy5fY29udGFpbmVyJiYodGhpcy5fY29udGFpbmVyPWUsdm9pZCAwIT09ZSYmZS5hcHBlbmRDaGlsZCh0aGlzLl9lbCkpLHRoaXMuX3Nob3duPSEwLHRoaXN9c3RvcChlKXtyZXR1cm4gZSYmdm9pZCAwIT09dGhpcy5fY29udGFpbmVyJiZ0aGlzLl9jb250YWluZXIucmVtb3ZlQ2hpbGQodGhpcy5fZWwpLHRoaXMuX2VsJiZ0aGlzLl9lbC5jbGFzc0xpc3QucmVtb3ZlKCJ0di1zcGlubmVyLS1zaG93biIpLHRoaXMuX3Nob3duPSExLHRoaXN9c2V0U3R5bGUoZSl7cmV0dXJuIE9iamVjdC5rZXlzKGUpLmZvckVhY2goKHQ9Pntjb25zdCBvPWVbdF07dm9pZCAwIT09byYmdGhpcy5fZWwuc3R5bGUuc2V0UHJvcGVydHkodCxvKX0pKSx0aGlzfXN0eWxlKCl7cmV0dXJuIHRoaXMuX2VsLnN0eWxlfXNldFNpemUoZSl7Y29uc3QgdD12b2lkIDAhPT1lP2B0di1zcGlubmVyLS1zaXplXyR7ZX1gOiIiO3JldHVybiB0aGlzLl9lbC5jbGFzc05hbWU9YHR2LXNwaW5uZXIgJHt0fSAke3RoaXMuX3Nob3duPyJ0di1zcGlubmVyLS1zaG93biI6IiJ9YCx0aGlzfWdldEVsKCl7cmV0dXJuIHRoaXMuX2VsfWRlc3Ryb3koKXt0aGlzLnN0b3AoKSxkZWxldGUgdGhpcy5fZWwsZGVsZXRlIHRoaXMuX2NvbnRhaW5lcn19fSwyMDI0NjAoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7QWJzdHJhY3RJbmRpY2F0b3I6KCk9PmF9KTt2YXIgaT1vKDIyMTA2MSksbj1vKDE1MDE1MCkscj1vKDE1OTUxMyk7bygzNDQ3ODUpO2NvbnN0IHM9KDAsaS5nZXRMb2dnZXIpKCJHVUkuQmxvY2tzLkFic3RyYWN0SW5kaWNhdG9yIik7Y2xhc3MgYXtjb25zdHJ1Y3RvcihlKXt0aGlzLl9jbGFzc1N1ZmZpeD0iIix0aGlzLl9xdW90ZVNlc3Npb25QcmVmaXg9ImFic3RyYWN0LWluZGljYXRvciIsdGhpcy5fc2hvcnRNb2RlPSExLHRoaXMuX3Nob3dUb29sdGlwPSEwLHRoaXMuX3N1YnNjcmliZWQ9ITEsdGhpcy5fdG9vbHRpcFR5cGU9ImN1c3RvbSIsdGhpcy5fbGFzdFRvb2x0aXBUZXh0PSIiLHRoaXMuX3F1b3RlU2Vzc2lvbj1lLnF1b3RlU2Vzc2lvbn1nZXRWYWx1ZSgpe3JldHVybiB0aGlzLl92YWx1ZX1nZXRUb29sdGlwVGV4dCgpe3JldHVybiB0aGlzLl9sYWJlbE1hcFt0aGlzLl92YWx1ZV18fCIifWdldExhYmVsKCl7cmV0dXJuIHRoaXMuX2xhYmVsTWFwW3RoaXMuX3ZhbHVlXXx8IiJ9Z2V0RWxlbWVudCgpe3JldHVybiB0aGlzLl9lbH11cGRhdGUoZSx0KXt0aGlzLl91cGRhdGVWYWx1ZShlLHQpLHRoaXMuX3JlbmRlcigpfXNldFRvb2x0aXBFbmFibGVkKGU9ITEpe3RoaXMuX3Nob3dUb29sdGlwIT09ZSYmKHRoaXMuX3Nob3dUb29sdGlwPWUsdGhpcy5fcmVuZGVyVG9vbHRpcCgpKX1lbmFibGVTaG9ydE1vZGUoKXshMCE9PXRoaXMuX3Nob3J0TW9kZSYmKHRoaXMuX3Nob3J0TW9kZT0hMCx0aGlzLl9yZW5kZXIoKSl9ZGlzYWJsZVNob3J0TW9kZSgpeyExIT09dGhpcy5fc2hvcnRNb2RlJiYodGhpcy5fc2hvcnRNb2RlPSExLAp0aGlzLl9yZW5kZXIoKSl9aXNTaG9ydE1vZGVFbmFibGVkKCl7cmV0dXJuIHRoaXMuX3Nob3J0TW9kZX1zdGFydCgpeyF0aGlzLl9zdWJzY3JpYmVkJiZ0aGlzLl9zeW1ib2xOYW1lJiYodGhpcy5fcXVvdGVTZXNzaW9ufHwodGhpcy5fcXVvdGVTZXNzaW9uPSgwLHIuZ2V0UXVvdGVTZXNzaW9uSW5zdGFuY2UpKCJzaW1wbGUiKSksdGhpcy5fcXVvdGVTZXNzaW9uLnN1YnNjcmliZSh0aGlzLl9nZXRRdW90ZVNlc3Npb25JZCgpLHRoaXMuX3N5bWJvbE5hbWUsdGhpcy51cGRhdGUuYmluZCh0aGlzKSksdGhpcy5fc3Vic2NyaWJlZD0hMCl9c3RvcCgpe3RoaXMuX3N1YnNjcmliZWQmJnRoaXMuX3F1b3RlU2Vzc2lvbiYmdGhpcy5fc3ltYm9sTmFtZSYmKHRoaXMuX3F1b3RlU2Vzc2lvbi51bnN1YnNjcmliZSh0aGlzLl9nZXRRdW90ZVNlc3Npb25JZCgpLHRoaXMuX3N5bWJvbE5hbWUpLHRoaXMuX3N1YnNjcmliZWQ9ITEpfXNldFNlc3Npb25TdGF0dXNJY29uKGUpe3RoaXMuX3Nlc3Npb25TdGF0dXNJY29uIT09ZSYmKHRoaXMuX3Nlc3Npb25TdGF0dXNJY29uPWUsdGhpcy5fcmVuZGVyKCkpfV9pbml0KGUpe3RoaXMuX2VsPWUuZWw/ZS5lbDpkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIiksdGhpcy5fZWwuaW5uZXJIVE1MPSIiLHRoaXMuX2NsYXNzTWFwPWUuY2xhc3NNYXAsdGhpcy5faWNvbkNsYXNzTWFwPWUuaWNvbkNsYXNzTWFwLHRoaXMuX2xhYmVsTWFwPWUubGFiZWxNYXAsdGhpcy5fc2hvd1Rvb2x0aXA9ZS5zaG93VG9vbHRpcCx0aGlzLl9jbGFzc1N1ZmZpeD1lLmNsYXNzU3VmZml4LHRoaXMuX3N5bWJvbE5hbWU9ZS5zeW1ib2wsdGhpcy5fc2Vzc2lvblN0YXR1c0ljb249ZS5zZXNzaW9uU3RhdHVzSWNvbix0aGlzLl9vblZhbHVlQ2hhbmdlPWUub25WYWx1ZUNoYW5nZSxlLnRvb2x0aXBUeXBlJiYodGhpcy5fdG9vbHRpcFR5cGU9ZS50b29sdGlwVHlwZSksdGhpcy5fcXVvdGVTZXNzaW9uR1VJRD0oMCxuLmd1aWQpKCksITA9PT1lLnNob3J0JiZ0aGlzLmVuYWJsZVNob3J0TW9kZSgpLGUuZGF0YSYmdGhpcy5fdXBkYXRlVmFsdWUoZS5kYXRhKX1fY2xlYXJDbGFzc2VzKCl7T2JqZWN0LnZhbHVlcyh0aGlzLl9jbGFzc01hcCkubWFwKChlPT57dGhpcy5fZWwuY2xhc3NMaXN0LnJlbW92ZShgJHtlfWApLHRoaXMuX2VsLmNsYXNzTGlzdC5yZW1vdmUoYCR7ZX0ke3RoaXMuX2NsYXNzU3VmZml4fWApfSkpfV9yZW5kZXIoKXt0aGlzLl9yZW5kZXJDbGFzc2VzKCksdGhpcy5fcmVuZGVyVG9vbHRpcCgpLHRoaXMuX3JlbmRlckxhYmVsKCl9X3JlbmRlckxhYmVsKCl7dGhpcy5fZWwudGV4dENvbnRlbnQ9dGhpcy5nZXRMYWJlbCgpfV91cGRhdGVWYWx1ZShlLHQpe2NvbnN0IG89dGhpcy5fZ2V0VmFsdWVGcm9tRGF0YShlKTsodHx8byE9PXRoaXMuX3ZhbHVlKSYmKHRoaXMuX3ZhbHVlPW8sdGhpcy5fb25WYWx1ZUNoYW5nZT8uKHRoaXMuX3ZhbHVlKSl9X3JlbmRlckNsYXNzZXMoKXtjb25zdCBlPXRoaXMuX2VsLmNsYXNzTGlzdDtlLmFkZCh0aGlzLl9jb21wb25lbnRDbGFzcyx0aGlzLl9jb21wb25lbnRDbGFzcyt0aGlzLl9jbGFzc1N1ZmZpeCk7Y29uc3QgdD10aGlzLl9jbGFzc01hcFt0aGlzLl92YWx1ZV07Zm9yKGNvbnN0IG8gaW4gdGhpcy5fY2xhc3NNYXApe2NvbnN0IGk9dGhpcy5fY2xhc3NNYXBbb107aSYmKGk9PT10PyhlLmFkZChpLGkrdGhpcy5fY2xhc3NTdWZmaXgpLHRoaXMuX3Nlc3Npb25TdGF0dXNJY29uJiZlLmFkZChpKyJfX3dpdGhJY29uIikpOihlLnJlbW92ZShpLGkrdGhpcy5fY2xhc3NTdWZmaXgpLHRoaXMuX3Nlc3Npb25TdGF0dXNJY29uJiZlLnJlbW92ZShpKyJfX3dpdGhJY29uIikpKX0hdCYmdGhpcy5fdmFsdWUmJnMubG9nV2Fybihgbm8gY2xhc3NOYW1lIGZvciBzdGF0dXMgJHt0aGlzLl92YWx1ZX1gKX1fcmVuZGVyVG9vbHRpcCgpe2NvbnN0IGU9dGhpcy5fc2hvd1Rvb2x0aXA/dGhpcy5nZXRUb29sdGlwVGV4dCgpOiIiO2UhPT10aGlzLl9sYXN0VG9vbHRpcFRleHQmJih0aGlzLl9sYXN0VG9vbHRpcFRleHQ9ZSx0aGlzLl9lbC5zZXRBdHRyaWJ1dGUoInRpdGxlIixlKSwiY3VzdG9tIj09PXRoaXMuX3Rvb2x0aXBUeXBlJiZ0aGlzLl9lbC5jbGFzc0xpc3QudG9nZ2xlKCJhcHBseS1jb21tb24tdG9vbHRpcCIsdGhpcy5fc2hvd1Rvb2x0aXApKX1fZ2V0UXVvdGVTZXNzaW9uSWQoKXtyZXR1cm5gJHt0aGlzLl9xdW90ZVNlc3Npb25QcmVmaXh9LiR7dGhpcy5fcXVvdGVTZXNzaW9uR1VJRH1gfX19LDMwNjkwKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse0RhdGFNb2RlSW5kaWNhdG9yOigpPT5jfSk7dmFyIGksbj1vKDE4NTI3MSkscj0obyg4MjkxODApLG8oNDUwMjk1KSxvKDIwMjQ2MCkpOyFmdW5jdGlvbihlKXtlLkRlbGF5ZWQ9ImRlbGF5ZWQiLGUuRGVsYXllZFN0cmVhbWluZz0iZGVsYXllZF9zdHJlYW1pbmciLGUuRW5kT2ZEYXk9ImVuZG9mZGF5IixlLlNuYXBzaG90PSJzbmFwc2hvdCIsZS5SZWFsdGltZT0icmVhbHRpbWUiLGUuQ29ubmVjdGluZz0iY29ubmVjdGluZyIsZS5Mb2FkaW5nPSJsb2FkaW5nIixlLkludmFsaWQ9ImludmFsaWQiLGUuRm9yYmlkZGVuPSJmb3JiaWRkZW4iLGUuU3RyZWFtaW5nPSJzdHJlYW1pbmcifShpfHwoaT17fSkpO2NvbnN0IHM9e2Nvbm5lY3Rpbmc6InR2LWRhdGEtbW9kZS0tY29ubmVjdGluZyIsZGVsYXllZDoidHYtZGF0YS1tb2RlLS1kZWxheWVkIixkZWxheWVkX3N0cmVhbWluZzoidHYtZGF0YS1tb2RlLS1kZWxheWVkIixlbmRvZmRheToidHYtZGF0YS1tb2RlLS1lbmRvZmRheSIsZm9yYmlkZGVuOiJ0di1kYXRhLW1vZGUtLWZvcmJpZGRlbiIscmVhbHRpbWU6InR2LWRhdGEtbW9kZS0tcmVhbHRpbWUiLHNuYXBzaG90OiJ0di1kYXRhLW1vZGUtLXNuYXBzaG90Iixsb2FkaW5nOiJ0di1kYXRhLW1vZGUtLWxvYWRpbmciLHJlcGxheToidHYtZGF0YS1tb2RlLS1yZXBsYXkifTtmdW5jdGlvbiBhKCl7cmV0dXJue2Nvbm5lY3Rpbmc6bi50KG51bGwse2NvbnRleHQ6ImRhdGFfbW9kZV9jb25uZWN0aW5nX2xldHRlciJ9LG8oODU5OTk0KSksZGVsYXllZDpuLnQobnVsbCx7CmNvbnRleHQ6ImRhdGFfbW9kZV9kZWxheWVkX2xldHRlciJ9LG8oODkyMzYzKSksZGVsYXllZF9zdHJlYW1pbmc6bi50KG51bGwse2NvbnRleHQ6ImRhdGFfbW9kZV9kZWxheWVkX3N0cmVhbWluZ19sZXR0ZXIifSxvKDM5NDUwMSkpLGVuZG9mZGF5Om4udChudWxsLHtjb250ZXh0OiJkYXRhX21vZGVfZW5kX29mX2RheV9sZXR0ZXIifSxvKDU3MDkzOSkpLGZvcmJpZGRlbjpuLnQobnVsbCx7Y29udGV4dDoiZGF0YV9tb2RlX2ZvcmJpZGRlbl9sZXR0ZXIifSxvKDM5NDkyMSkpLHJlYWx0aW1lOm4udChudWxsLHtjb250ZXh0OiJkYXRhX21vZGVfcmVhbHRpbWVfbGV0dGVyIn0sbyg4NjY0NCkpLHNuYXBzaG90Om4udChudWxsLHtjb250ZXh0OiJkYXRhX21vZGVfc25hcHNob3RfbGV0dGVyIn0sbygyNTczMjYpKSxsb2FkaW5nOiIiLHJlcGxheTpuLnQobnVsbCx7Y29udGV4dDoiZGF0YV9tb2RlX3JlcGxheV9sZXR0ZXIifSxvKDc1NjQ1NykpfX1jb25zdCBsPXtzdHJlYW1pbmc6InJlYWx0aW1lIn07Y2xhc3MgYyBleHRlbmRzIHIuQWJzdHJhY3RJbmRpY2F0b3J7Y29uc3RydWN0b3IoZSl7c3VwZXIoZSksdGhpcy5fcXVvdGVTZXNzaW9uUHJlZml4PSJkYXRhLW1vZGUtaW5kaWNhdG9yIix0aGlzLl9jb21wb25lbnRDbGFzcz0idHYtZGF0YS1tb2RlIix0aGlzLl9pbml0KGUpfWdldExhYmVsKCl7cmV0dXJuITA9PT10aGlzLl9zaG9ydE1vZGU/dGhpcy5fc2hvcnRMYWJlbE1hcFt0aGlzLl92YWx1ZV18fCIiOnN1cGVyLmdldExhYmVsKCl9c2V0TW9kZShlLHQpe3RoaXMudXBkYXRlKHt2YWx1ZXM6e3VwZGF0ZV9tb2RlOmUsdXBkYXRlX21vZGVfc2Vjb25kczp0fX0pfWhpZGUoKXt0aGlzLl9lbC5jbGFzc0xpc3QuYWRkKCJpLWhpZGRlbiIpfXNob3coKXt0aGlzLl9lbC5jbGFzc0xpc3QucmVtb3ZlKCJpLWhpZGRlbiIpfWdldFRvb2x0aXBUZXh0KCl7bGV0IGU9IiI7Y29uc3QgdD10aGlzLmdldFZhbHVlKCk7aWYoIiI9PT10KXJldHVybiBlO3N3aXRjaCh0KXtjYXNlImRlbGF5ZWQiOmU9bi50KG51bGwsdm9pZCAwLG8oNzkwNTI0KSk7YnJlYWs7Y2FzZSJkZWxheWVkX3N0cmVhbWluZyI6ZT1uLnQobnVsbCx2b2lkIDAsbyg4MTQ2MSkpO2JyZWFrO2RlZmF1bHQ6ZT10aGlzLl9sYWJlbE1hcFt0XXx8ZX1yZXR1cm5bImRlbGF5ZWQiLCJkZWxheWVkX3N0cmVhbWluZyJdLmluY2x1ZGVzKHQpJiYoZT1lLmZvcm1hdCh7bnVtYmVyOlN0cmluZyhNYXRoLnJvdW5kKHRoaXMuX21vZGVJbnRlcnZhbC82MCkpfSkpLGV9X2luaXQoZT17fSl7Y29uc3QgdD1PYmplY3QuYXNzaWduKHt9LHtjbGFzc01hcDpzLGNsYXNzU3VmZml4OiIiLGRhdGE6e3ZhbHVlczp7dXBkYXRlX21vZGU6ImNvbm5lY3RpbmcifX0sbGFiZWxNYXA6e2Nvbm5lY3Rpbmc6bi50KG51bGwsdm9pZCAwLG8oMTk0MTk0KSksZGVsYXllZDpuLnQobnVsbCx2b2lkIDAsbygyMjk1MjUpKSxkZWxheWVkX3N0cmVhbWluZzpuLnQobnVsbCx2b2lkIDAsbygyMjk1MjUpKSxlbmRvZmRheTpuLnQobnVsbCx2b2lkIDAsbyg2MDE3NjQpKSxmb3JiaWRkZW46bi50KG51bGwsdm9pZCAwLG8oMzI4MzEzKSkscmVhbHRpbWU6bi50KG51bGwsdm9pZCAwLG8oODgzOTI4KSksc25hcHNob3Q6bi50KG51bGwsdm9pZCAwLG8oNTYyMzk1KSksbG9hZGluZzoiIixyZXBsYXk6bi50KG51bGwsdm9pZCAwLG8oOTc3MjcpKX0sbW9kZUludGVydmFsOjYwMCxzaG9ydDohMSxzaG9ydExhYmVsTWFwOmEoKSxzaG93VG9vbHRpcDohMCx0b29sdGlwVHlwZToiY3VzdG9tIn0sZSk7dGhpcy5fbW9kZUludGVydmFsPXQubW9kZUludGVydmFsfHw2MDAsdGhpcy5fc2hvcnRMYWJlbE1hcD10LnNob3J0TGFiZWxNYXB8fGEoKSxzdXBlci5faW5pdCh0KSx0aGlzLl9yZW5kZXIoKX1fZ2V0VmFsdWVGcm9tRGF0YShlKXtsZXQgdDtyZXR1cm4gdD12b2lkIDAhPT1lLnZhbHVlcyYmdm9pZCAwIT09ZS52YWx1ZXMudXBkYXRlX21vZGU/ZS52YWx1ZXMudXBkYXRlX21vZGU6dGhpcy5nZXRWYWx1ZSgpLGxbdF18fHR9X3VwZGF0ZVZhbHVlKGUsdCl7dm9pZCAwIT09ZS52YWx1ZXMmJnZvaWQgMCE9PWUudmFsdWVzLnVwZGF0ZV9tb2RlX3NlY29uZHMmJih0aGlzLl9tb2RlSW50ZXJ2YWw9ZS52YWx1ZXMudXBkYXRlX21vZGVfc2Vjb25kcyksc3VwZXIuX3VwZGF0ZVZhbHVlKGUsdCl9fX0sNjQ3NjE0KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2ZsYWdVcmw6KCk9PmwsZ2V0TW9ja2VkRmxhZzooKT0+Y30pO3ZhciBpPW8oODEwNDEpLG49byg4NjIyMTMpLHI9byg3MTcxNDEpLHM9byg0NTgwNTkpO2NvbnN0IGE9e2VybDoiRVUiLHVrOiJHQiIsYml0Y29pbjoiQlRDIn07ZnVuY3Rpb24gbChlLHQsbz1uLkxvZ29TaXplLk1lZGl1bSl7cmV0dXJuIGU/KGUudG9Mb3dlckNhc2UoKWluIGEmJihlPWFbZV0pLCgwLG4uZ2V0TG9nb1VybFJlc29sdmVyKSgpLmdldENvdW50cnlGbGFnVXJsKGUudG9VcHBlckNhc2UoKSxvKSk6Yyh0KX1mdW5jdGlvbiBjKGUpe3JldHVybiBlPT09aS5TdGRUaGVtZS5EYXJrP3I6c319LDEzNzg3OShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtjb3VudHJpZXM6KCk9PnIsZ2V0Q291bnRyeTooKT0+c30pO2NvbnN0IGk9L15bYS16XXsyfSQvO3ZhciBuPW8oMjU1NTE2KTtjb25zdCByPW4scz1lPT57cmV0dXJuIHQ9ZSxpLnRlc3QodCkmJm5bZV18fG51bGw7dmFyIHR9fSwxNjAyOTYoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLnIodCksby5kKHQse2Vudmlyb25tZW50OigpPT5uLGlzRGVidWc6KCk9PmEsaXNMb2NhbDooKT0+cixpc1Byb2Q6KCk9PnN9KTtjb25zdCBpPW5ldyBTZXQoWyJiYXR0bGUiLCJzdGFnaW5nIiwidGVzdCIsImxvY2FsIl0pO2Z1bmN0aW9uIG4oKXtjb25zdCBlPXNlbGYuZW52aXJvbm1lbnQ7cmV0dXJuIGZ1bmN0aW9uKGUpe2kuaGFzKGUpfHxjb25zb2xlLndhcm4oIkludmFsaWQgZW52aXJvbm1lbnQgIitlKX0oZSksZX1mdW5jdGlvbiByKCl7cmV0dXJuImxvY2FsIj09PW4oKX1mdW5jdGlvbiBzKCl7cmV0dXJuImJhdHRsZSI9PT1uKCl9ZnVuY3Rpb24gYSgpe3JldHVybiFzKCl9fSw3Mzc4NjMoZSx0LG8peyJ1c2Ugc3RyaWN0Ijt2YXIgaSxuCjtvLmQodCx7UHJvZHVjdEZlYXR1cmVzRW51bTooKT0+bixVTkxJTUlURURfRkVBVFVSRV9MSU1JVDooKT0+cn0pLGZ1bmN0aW9uKGUpe2UuRElTQUJMRV9PTl9UUklBTD0iZGlzYWJsZV9vbl90cmlhbCIsZS5ESVNBQkxFX09OX0xJVEVfUExBTj0iZGlzYWJsZV9vbl9saXRlX3BsYW4iLGUuQ1VTVE9NX0lOVEVSVkFMUz0iQ1VTVE9NX0lOVEVSVkFMUyIsZS5DSEFSVF9TVE9SQUdFPSJDSEFSVF9TVE9SQUdFIixlLk1VTFRJUExFX0NIQVJUUz0iTVVMVElQTEVfQ0hBUlRTIixlLk1VTFRJUExFX1dBVENITElTVFM9Ik1VTFRJUExFX1dBVENITElTVFMiLGUuSU1QT1JUX1dBVENITElTVFM9IklNUE9SVF9XQVRDSExJU1RTIixlLkVYUE9SVF9XQVRDSExJU1RTPSJFWFBPUlRfV0FUQ0hMSVNUUyIsZS5XQVRDSExJU1RfU1lNQk9MUz0iV0FUQ0hMSVNUX1NZTUJPTFMiLGUuSU5ESUNBVE9SU19PTl9DSEFSVD0iSU5ESUNBVE9SU19PTl9DSEFSVCIsZS5TVFVEWV9PTl9TVFVEWT0iU1RVRFlfT05fU1RVRFkiLGUuVElDS19CWV9USUNLX1BVU0hfREFUQT0iVElDS19CWV9USUNLX1BVU0hfREFUQSIsZS5TRVJWRVJfU0lERV9BTEVSVFM9IlNFUlZFUl9TSURFX0FMRVJUUyIsZS5TRVJWRVJfU0lERV9BTEVSVFNfVEVDSE5JQ0FMPSJTRVJWRVJfU0lERV9BTEVSVFNfVEVDSE5JQ0FMIixlLlNFUlZFUl9TSURFX0FMRVJUU19XQVRDSExJU1Q9IlNFUlZFUl9TSURFX0FMRVJUU19XQVRDSExJU1QiLGUuQUxFUlRTX01VTFRJQ09ORElUSU9OUz0iQUxFUlRTX01VTFRJQ09ORElUSU9OUyIsZS5BTEVSVFNfT05fRUFSTklOR1M9IkFMRVJUU19PTl9FQVJOSU5HUyIsZS5BTEVSVFNfT05fRlVOREFNRU5UQUxfTUVUUklDUz0iQUxFUlRTX09OX0ZVTkRBTUVOVEFMX01FVFJJQ1MiLGUuUFVCTElTSF9JTlZJVEVfT05MWV9TQ1JJUFRTPSJQVUJMSVNIX0lOVklURV9PTkxZX1NDUklQVFMiLGUuUFVCTElTSF9QUk9URUNURURfU0NSSVBUUz0iUFVCTElTSF9QUk9URUNURURfU0NSSVBUUyIsZS5TQ1JFRU5FUl9BVVRPX1JFRlJFU0g9IlNDUkVFTkVSX0FVVE9fUkVGUkVTSCIsZS5TQ1JFRU5FUl9ORVdfQVVUT19SRUZSRVNIPSJTQ1JFRU5FUl9ORVdfQVVUT19SRUZSRVNIIixlLlNDUkVFTkVSX0lOVEVSVkFMUz0iU0NSRUVORVJfSU5URVJWQUxTIixlLlNDUkVFTkVSX05FV19FWFBPUlRfQ1NWX0RBVEE9IlNDUkVFTkVSX05FV19FWFBPUlRfQ1NWX0RBVEEiLGUuU0NSRUVORVJfTkVXX1NIT1dfUkVTVFJJQ1RFRF9EQVRBPSJTQ1JFRU5FUl9ORVdfU0hPV19SRVNUUklDVEVEX0RBVEEiLGUuUElORV9TQ1JFRU5FUj0iUElORV9TQ1JFRU5FUiIsZS5TSU1VTFRBTkVPVVNfQ09OTkVDVElPTlM9IlNJTVVMVEFORU9VU19DT05ORUNUSU9OUyIsZS5CQUNLRU5EX0NPTk5FQ1RJT05TPSJCQUNLRU5EX0NPTk5FQ1RJT05TIixlLlNUVURZX1RFTVBMQVRFUz0iU1RVRFlfVEVNUExBVEVTIixlLkNBTl9FRElUX1BVQkxJQ19DSEFUUz0iQ0FOX0VESVRfUFVCTElDX0NIQVRTIixlLk5PX1NQT05TT1JFRF9BRFM9Ik5PX1NQT05TT1JFRF9BRFMiLGUuSURDX0FWQUlMQUJMRV9ERUxBWT0iSURDX0FWQUlMQUJMRV9ERUxBWSIsZS5TVEFUVVM9IlNUQVRVUyIsZS5BTEVSVFNfTk9fRVhQSVJBVElPTj0iQUxFUlRTX05PX0VYUElSQVRJT04iLGUuTVVMVElGTEFHR0VEX1NZTUJPTFNfTElTVFM9Ik1VTFRJRkxBR0dFRF9TWU1CT0xTX0xJU1RTIixlLkJBUl9SRVBMQVlfSU5UUkFEQVk9IkJBUl9SRVBMQVlfSU5UUkFEQVkiLGUuQkFSX1JFUExBWV8xUz0iQkFSX1JFUExBWV8xUyIsZS5CQVJfUkVQTEFZXzFUPSJCQVJfUkVQTEFZXzFUIixlLlRWX1ZPTFVNRUJZUFJJQ0U9IlRWX1ZPTFVNRUJZUFJJQ0UiLGUuQUxFUlRTX1dFQkhPT0s9IkFMRVJUU19XRUJIT09LIixlLk1BUktFVF9EQVRBX0xJTUlUUz0iTUFSS0VUX0RBVEFfTElNSVRTIixlLkRFRVBfRlVOREFNRU5UQUxTX0hJU1RPUlk9IkRFRVBfRlVOREFNRU5UQUxTX0hJU1RPUlkiLGUuRVhQT1JUX0NIQVJUX0RBVEE9IkVYUE9SVF9DSEFSVF9EQVRBIixlLkVYUE9SVF9GSU5BTkNJQUxTX0RBVEE9IkVYUE9SVF9GSU5BTkNJQUxTX0RBVEEiLGUuQUxFUlRTX09OX1NFQ09ORFM9IkFMRVJUU19PTl9TRUNPTkRTIixlLlBFUk1BTkVOVF9TVFJFQU1fUkVDT1JEUz0iUEVSTUFORU5UX1NUUkVBTV9SRUNPUkRTIixlLklERUFfU09DSUFMX0xJTktTPSJJREVBX1NPQ0lBTF9MSU5LUyIsZS5FWFRFTkRFRF9TT0NJQUxfTElOS1M9IkVYVEVOREVEX1NPQ0lBTF9MSU5LUyIsZS5ERUVQX0hJU1RPUllfQkFDS1RFU1Q9IkRFRVBfSElTVE9SWV9CQUNLVEVTVCIsZS5CQUNLVEVTVElOR19FWFBPUlRfWExTWD0iQkFDS1RFU1RJTkdfRVhQT1JUX1hMU1giLGUuQkFDS1RFU1RJTkdfRVhQT1JUX0NTVj0iQkFDS1RFU1RJTkdfRVhQT1JUX0NTViIsZS5GVU5EQU1FTlRBTFNfRk9SRUNBU1Q9IkZVTkRBTUVOVEFMU19GT1JFQ0FTVCIsZS5CQUNLVEVTVElOR19FWFRFTkRFRF9NRVRSSUNTPSJCQUNLVEVTVElOR19FWFRFTkRFRF9NRVRSSUNTIixlLkJBUl9ERVRBTElaQVRJT049IkJBUl9ERVRBTElaQVRJT04iLGUuU0NSSVBUX0VYRUNVVElPTl9PTl9ISVNUT1JZX0JBUlM9IlNDUklQVF9FWEVDVVRJT05fT05fSElTVE9SWV9CQVJTIixlLkJBQ0tURVNUSU5HX0NIQVJUX0VYUEFORD0iQkFDS1RFU1RJTkdfQ0hBUlRfRVhQQU5EIixlLkhJU1RPUklDQUxfQkFSUz0iSElTVE9SSUNBTF9CQVJTIixlLktBR0lfUkVOS089IktBR0lfUkVOS08iLGUuSU5UUkFEQVlfU1BSRUFEPSJJTlRSQURBWV9TUFJFQUQiLGUuU0VDT05EU19JTlRFUlZBTFM9IlNFQ09ORFNfSU5URVJWQUxTIixlLk1VTFRJQ09MT1JfRkxBR0dFRF9TWU1CT0xTPSJNVUxUSUNPTE9SX0ZMQUdHRURfU1lNQk9MUyIsZS5JTlRSQURBWV9FWENIQU5HRT0iSU5UUkFEQVlfRVhDSEFOR0UiLGUuQ1VTVE9NX0NIQVRTPSJDVVNUT01fQ0hBVFMiLGUuVk9MVU1FX1BST0ZJTEU9IlZPTFVNRV9QUk9GSUxFIixlLlZPTFVNRV9DQU5ETEVTPSJWT0xVTUVfQ0FORExFUyIsZS5UUE9fUEVSSU9ESUM9IlRQT19QRVJJT0RJQyIsZS5UUE9fQ0hBUlRfU1RZTEU9IlRQT19DSEFSVF9TVFlMRSIsCmUuUFJJTUlUSVZFX0FMRVJUUz0iUFJJTUlUSVZFX0FMRVJUUyIsZS5DT01QTEVYX0FMRVJUUz0iQ09NUExFWF9BTEVSVFMiLGUuVFZfUFJPU1RVRElFUz0iVFZfUFJPU1RVRElFUyIsZS5DSEFSVF9QQVRURVJOUz0iQ0hBUlRfUEFUVEVSTlMiLGUuU01TXzJGQV9WRVJJRklDQVRJT049IlNNU18yRkFfVkVSSUZJQ0FUSU9OIixlLlNPQ0lBTF9BQ1RJVklUWT0iU09DSUFMX0FDVElWSVRZIixlLlRJQ0tfSU5URVJWQUxTPSJUSUNLX0lOVEVSVkFMUyIsZS5DVVNUT01fRk9STVVMQVM9IkNVU1RPTV9GT1JNVUxBUyIsZS5DVVNUT01fUkFOR0VfQkFSUz0iQ1VTVE9NX1JBTkdFX0JBUlMiLGUuQlVZX1BST19EQVRBPSJCVVlfUFJPX0RBVEEiLGUuRkFTVEVTVF9EQVRBX0ZMT1c9IkZBU1RFU1RfREFUQV9GTE9XIixlLkZJUlNUX1BSSU9SSVRZX1NVUFBPUlQ9IkZJUlNUX1BSSU9SSVRZX1NVUFBPUlQiLGUuRlVOREFNRU5UQUxTX09OX0NIQVJUPSJGVU5EQU1FTlRBTFNfT05fQ0hBUlQiLGUuRlVOREFNRU5UQUxfR1JBUEhTX0xBUkdFX1RJTUVfUkFOR0U9IkZVTkRBTUVOVEFMX0dSQVBIU19MQVJHRV9USU1FX1JBTkdFIixlLlZJREVPX0lERUFTX0xFTkdUSD0iVklERU9fSURFQVNfTEVOR1RIIixlLlZPTFVNRV9GT09UUFJJTlQ9IlZPTFVNRV9GT09UUFJJTlQiLGUuU0VTU0lPTl9WT0xVTUVfUFJPRklMRT0iU0VTU0lPTl9WT0xVTUVfUFJPRklMRSIsZS5DSEFUX0FTU0lTVEFOVD0iQ0hBVF9BU1NJU1RBTlQiLGUuUEVSU09OQUxfU1VQUE9SVD0iUEVSU09OQUxfU1VQUE9SVCIsZS5TSE9XX0JPTkRTX1JFU1RSSUNURURfREFUQT0iU0hPV19CT05EU19SRVNUUklDVEVEX0RBVEEiLGUuU0hPV19FVEZfSE9MRElOR1NfREFUQT0iU0hPV19FVEZfSE9MRElOR1NfREFUQSIsZS5DUkVBVEVfTU9SRV9QT1JURk9MSU9TPSJDUkVBVEVfTU9SRV9QT1JURk9MSU9TIixlLlBPUlRGT0xJT19UUkFOU0FDVElPTlM9IlBPUlRGT0xJT19UUkFOU0FDVElPTlMiLGUuUE9SVEZPTElPX0hPTERJTkdTPSJQT1JURk9MSU9fSE9MRElOR1MiLGUuUE9SVEZPTElPX0RBVEFfTElNSVQ9IlBPUlRGT0xJT19EQVRBX0xJTUlUIixlLlNPQ0lBTF9UUlVTVEVEX1VTRVI9IlNPQ0lBTF9UUlVTVEVEX1VTRVIiLGUuQUNDRVNTX0FDUk9TU19ERVZJQ0VTPSJBQ0NFU1NfQUNST1NTX0RFVklDRVMiLGUuRk9MTE9XRVJTX09OTFlfTUlORFM9IkZPTExPV0VSU19PTkxZX01JTkRTIixlLkZPUkVDQVNUX0VTVElNQVRFX0RBVEE9IkZPUkVDQVNUX0VTVElNQVRFX0RBVEEiLGUuRFJBV0lOR1M9IkRSQVdJTkdTIn0oaXx8KGk9e30pKSxmdW5jdGlvbihlKXtlLkNBTl9FRElUX1BVQkxJQ19DSEFUUz0iQ0FOX0VESVRfUFVCTElDX0NIQVRTIixlLk5PX1NQT05TT1JFRF9BRFM9Ik5PX1NQT05TT1JFRF9BRFMiLGUuQUxFUlRTX05PX0VYUElSQVRJT049IkFMRVJUU19OT19FWFBJUkFUSU9OIixlLkFMRVJUU19XRUJIT09LPSJBTEVSVFNfV0VCSE9PSyIsZS5TQ1JFRU5FUl9BVVRPX1JFRlJFU0g9IlNDUkVFTkVSX0FVVE9fUkVGUkVTSCIsZS5TQ1JFRU5FUl9JTlRFUlZBTFM9IlNDUkVFTkVSX0lOVEVSVkFMUyIsZS5TT0NJQUxfQUNUSVZJVFk9IlNPQ0lBTF9BQ1RJVklUWSJ9KG58fChuPXt9KSk7Y29uc3Qgcj05OTk5OX0sMjI1Mjk4KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2xpbmtpbmc6KCk9PlR9KTt2YXIgaT1vKDU0Nzg1MSksbj1vKDEzODYzOCkscj1vKDIyMTA2MSkscz0obyg5MzAyMzEpLG8oMjMyMzY0KSksYT1vKDI1NDY3MyksbD1vKDEyODk5OCksYz1vKDk1MjkwMCksZD1vKDI0MTk1Nik7dmFyIGg9byg5MzA1NjYpLHU9byg2MzE2MzQpLF89byg3OTgzOCkscD1vKDc3ODk0NiksbT1vKDc3NDUwNyksZz1vKDM2MjIzOSk7dmFyIHY9bygzODMzNTEpLGY9byg3MDE1MDYpLHk9byg2ODI3NzkpLGI9bygyMDkzOSk7Y29uc3QgUz0oMCxyLmdldExvZ2dlcikoIkxpbmtpbmciKTt2YXIgdyxDOyFmdW5jdGlvbihlKXtlW2UuTm90Qm91bmQ9MF09Ik5vdEJvdW5kIixlW2UuQm91bmRUb1dpZGdldD0xXT0iQm91bmRUb1dpZGdldCIsZVtlLkJvdW5kVG9Nb2RlbD0yXT0iQm91bmRUb01vZGVsIn0od3x8KHc9e30pKSxmdW5jdGlvbihlKXtlW2UuU3ltYm9sPTBdPSJTeW1ib2wiLGVbZS5SZXNvbHV0aW9uPTFdPSJSZXNvbHV0aW9uIn0oQ3x8KEM9e30pKTtjbGFzcyBre2NvbnN0cnVjdG9yKGUsdCxvKXt0aGlzLndhdGNoZWRTeW1ib2xzPW5ldyBzLldhdGNoZWRWYWx1ZShbXSksdGhpcy53YXRjaGVkU3ltYm9sPW5ldyBzLldhdGNoZWRWYWx1ZSx0aGlzLnNlcmllc1Nob3J0U3ltYm9sPW5ldyBzLldhdGNoZWRWYWx1ZSx0aGlzLnByb1N5bWJvbD1uZXcgcy5XYXRjaGVkVmFsdWUsdGhpcy5lbnN1cmVkUHJvU3ltYm9sPW5ldyBzLldhdGNoZWRWYWx1ZSx0aGlzLndhdGNoZWRJbnRlcnZhbD1uZXcgcy5XYXRjaGVkVmFsdWUsdGhpcy53YXRjaGVkSW50cmFkYXk9bmV3IHMuV2F0Y2hlZFZhbHVlLHRoaXMud2F0Y2hlZFNlY29uZHM9bmV3IHMuV2F0Y2hlZFZhbHVlLHRoaXMud2F0Y2hlZFRpY2tzPW5ldyBzLldhdGNoZWRWYWx1ZSx0aGlzLndhdGNoZWREYXRhRnJlcXVlbmN5UmVzb2x1dGlvbj1uZXcgcy5XYXRjaGVkVmFsdWUsdGhpcy53YXRjaGVkUmFuZ2U9bmV3IHMuV2F0Y2hlZFZhbHVlLHRoaXMud2F0Y2hlZFN1cHBvcnRlZFJlc29sdXRpb25zPW5ldyBzLldhdGNoZWRWYWx1ZSx0aGlzLndhdGNoZWRTdXBwb3J0ZWRDaGFydFN0eWxlcz1uZXcgcy5XYXRjaGVkVmFsdWUsdGhpcy5zeW1ib2xOYW1lc0xpc3Q9bmV3IHMuV2F0Y2hlZFZhbHVlLHRoaXMuX2NoYXJ0V2lkZ2V0Q29sbGVjdGlvbj1udWxsLHRoaXMuX2NoYXJ0V2lkZ2V0QmluZGluZ1N0YXRlPTAsdGhpcy5fYWN0aXZlQ2hhcnRXaWRnZXQ9bnVsbCx0aGlzLl9saW5raW5nR3JvdXBDaGFydHM9bnVsbCx0aGlzLl9ib3VuZENoYXJ0V2lkZ2V0PW51bGwsdGhpcy5fd2F0Y2hlZFN5bWJvbExpc3RlbmVyQm91bmQ9dGhpcy5fd2F0Y2hlZFN5bWJvbExpc3RlbmVyLmJpbmQodGhpcyksCnRoaXMuX3dhdGNoZWRJbnRlcnZhbExpc3RlbmVyQm91bmQ9dGhpcy5fd2F0Y2hlZEludGVydmFsTGlzdGVuZXIuYmluZCh0aGlzKSx0aGlzLl9zZXRHcm91cFN5bWJvbENhbmNlbGxhdGlvblRva2VuPXtjYW5jZWxsZWQ6ITF9LHRoaXMuX211dGVkPSExLHRoaXMudXBkYXRlQm91bmRDaGFydFdpZGdldD0oKT0+e2NvbnN0IGU9dGhpcy5fY2hhcnRUb0JpbmQoKTtlIT09dGhpcy5fYm91bmRDaGFydFdpZGdldCYmKG51bGw9PT1lP3RoaXMudW5iaW5kRnJvbUNoYXJ0V2lkZ2V0KCk6dGhpcy5iaW5kVG9DaGFydFdpZGdldChlKSl9LHRoaXMuX3VwZGF0ZUFsbEdyb3VwQ2hhcnRXaWRnZXRzPSgpPT57dGhpcy5fZGVzdHJveVN5bWJvbEludGVydmFsUHJvcGVydHlTdWJzY3JpcHRpb25zPy4oKTtjb25zdCBlPSgwLG4uZW5zdXJlTm90TnVsbCkodGhpcy5fbGlua2luZ0dyb3VwQ2hhcnRzKS52YWx1ZSgpLHQ9W10sbz1bXTtmb3IoY29uc3QgaSBvZiBlKXtjb25zdCBlPWkuc3ltYm9sV1YoKS5zcGF3bigpLG49aS5yZXNvbHV0aW9uV1YoKS5zcGF3bigpO2Uuc3Vic2NyaWJlKHRoaXMuX3VwZGF0ZVN5bWJvbEJ5UHJvcGVydHkuYmluZCh0aGlzLGkpKSxuLnN1YnNjcmliZSh0aGlzLl91cGRhdGVJbnRlcnZhbEJ5UHJvcGVydHkuYmluZCh0aGlzLGkpKSx0LnB1c2goZSksby5wdXNoKG4pfXRoaXMuX2Rlc3Ryb3lTeW1ib2xJbnRlcnZhbFByb3BlcnR5U3Vic2NyaXB0aW9ucz0oKT0+e3QuZm9yRWFjaCgoZT0+ZS5kZXN0cm95KCkpKSxvLmZvckVhY2goKGU9PmUuZGVzdHJveSgpKSksdGhpcy5fZGVzdHJveVN5bWJvbEludGVydmFsUHJvcGVydHlTdWJzY3JpcHRpb25zPXZvaWQgMH07Y29uc3QgaT10aGlzLndhdGNoZWRTeW1ib2wudmFsdWUoKTtlLmxlbmd0aD4xJiZ0aGlzLl9uZWVkQXBwbHlTeW1ib2woaSkmJiF0aGlzLl9tdXRlZCYmdGhpcy5fc2V0R3JvdXBTeW1ib2woaSk7Y29uc3Qgcj10aGlzLndhdGNoZWRJbnRlcnZhbC52YWx1ZSgpO2UubGVuZ3RoPjEmJnRoaXMuX25lZWRBcHBseUludGVydmFsKHIpJiYhdGhpcy5fbXV0ZWQmJnRoaXMuX3NldEdyb3VwSW50ZXJ2YWwociksdGhpcy51cGRhdGVCb3VuZENoYXJ0V2lkZ2V0KCl9LHRoaXMuX2dyb3VwSW5kZXg9ZTtjb25zdCBpPShlLHQpPT57ZS5zdWJzY3JpYmUoKGU9PntvKCk9PT10aGlzJiZ0LnNldFZhbHVlKGUpfSkse2NhbGxXaXRoTGFzdDohMH0pfTtpKHRoaXMud2F0Y2hlZFN5bWJvbHMsdC53YXRjaGVkU3ltYm9scyksaSh0aGlzLndhdGNoZWRTeW1ib2wsdC53YXRjaGVkU3ltYm9sKSxpKHRoaXMuc2VyaWVzU2hvcnRTeW1ib2wsdC5zZXJpZXNTaG9ydFN5bWJvbCksaSh0aGlzLnByb1N5bWJvbCx0LnByb1N5bWJvbCksaSh0aGlzLmVuc3VyZWRQcm9TeW1ib2wsdC5lbnN1cmVkUHJvU3ltYm9sKSxpKHRoaXMud2F0Y2hlZEludGVydmFsLHQud2F0Y2hlZEludGVydmFsKSxpKHRoaXMud2F0Y2hlZEludHJhZGF5LHQud2F0Y2hlZEludHJhZGF5KSxpKHRoaXMud2F0Y2hlZFNlY29uZHMsdC53YXRjaGVkU2Vjb25kcyksaSh0aGlzLndhdGNoZWRUaWNrcyx0LndhdGNoZWRUaWNrcyksaSh0aGlzLndhdGNoZWREYXRhRnJlcXVlbmN5UmVzb2x1dGlvbix0LndhdGNoZWREYXRhRnJlcXVlbmN5UmVzb2x1dGlvbiksaSh0aGlzLndhdGNoZWRSYW5nZSx0LndhdGNoZWRSYW5nZSksaSh0aGlzLndhdGNoZWRTdXBwb3J0ZWRSZXNvbHV0aW9ucyx0LndhdGNoZWRTdXBwb3J0ZWRSZXNvbHV0aW9ucyksaSh0aGlzLndhdGNoZWRTdXBwb3J0ZWRDaGFydFN0eWxlcyx0LndhdGNoZWRTdXBwb3J0ZWRDaGFydFN0eWxlcyksaSh0aGlzLnN5bWJvbE5hbWVzTGlzdCx0LnN5bWJvbE5hbWVzTGlzdCksdGhpcy53YXRjaGVkU3ltYm9sLnN1YnNjcmliZSgoZT0+e3RoaXMuX2JvdW5kQ2hhcnRXaWRnZXQmJnRoaXMuX2JvdW5kQ2hhcnRXaWRnZXQuaGFzTW9kZWwoKSYmdGhpcy5tYWluU2VyaWVzKCkuc3ltYm9sU2FtZUFzQ3VycmVudChlKXx8dGhpcy5wcm9TeW1ib2wuc2V0VmFsdWUoZSl9KSx7Y2FsbFdpdGhMYXN0OiEwfSl9bXV0ZShlKXt0aGlzLl9tdXRlZD1lfWJpbmRUb0NoYXJ0V2lkZ2V0Q29sbGVjdGlvbihlKXt0aGlzLnVuYmluZEZyb21DaGFydFdpZGdldENvbGxlY3Rpb24oKSx0aGlzLl9jaGFydFdpZGdldENvbGxlY3Rpb249ZSx0aGlzLl9hY3RpdmVDaGFydFdpZGdldD1lLmFjdGl2ZUNoYXJ0V2lkZ2V0LnNwYXduKCksdGhpcy5fYWN0aXZlQ2hhcnRXaWRnZXQuc3Vic2NyaWJlKHRoaXMudXBkYXRlQm91bmRDaGFydFdpZGdldCksdGhpcy5fbGlua2luZ0dyb3VwQ2hhcnRzPWUubGlua2luZ0dyb3Vwc0NoYXJ0cyh0aGlzLl9ncm91cEluZGV4KS5zcGF3bigpLHRoaXMuX2xpbmtpbmdHcm91cENoYXJ0cy5zdWJzY3JpYmUodGhpcy5fdXBkYXRlQWxsR3JvdXBDaGFydFdpZGdldHMpLHRoaXMudXBkYXRlQm91bmRDaGFydFdpZGdldCgpLHRoaXMuX3VwZGF0ZUFsbEdyb3VwQ2hhcnRXaWRnZXRzKCk7Y29uc3QgdD1mdW5jdGlvbihlKXtjb25zdCB0PSgwLGMuY29tYmluZSkoKCgpPT5lLmdldEFsbCgpLmZpbHRlcigoZT0+ZS5pc1Zpc2libGUoKSYmZS5oYXNNb2RlbCgpKSkubWFwKChlPT4oMCxkLmNyZWF0ZVdWRnJvbUdldHRlckFuZFN1YnNjcmlwdGlvbikoKCgpPT5lLm1vZGVsKCkubWFpblNlcmllcygpLnN5bWJvbCgpKSxlLm1vZGVsKCkubWFpblNlcmllcygpLnN5bWJvbFJlc29sdmVkKCkpLm93bmVyc2hpcCgpKSkpLGUuY2hhcnRNb2RlbHMoKS53ZWFrUmVmZXJlbmNlKCksZS5sYXlvdXQud2Vha1JlZmVyZW5jZSgpKTtyZXR1cm4oMCxjLmFjY3VtdWxhdGUpKChlPT5lKSx0Lm93bmVyc2hpcCgpKX0oZSk7dC5zdWJzY3JpYmUoKGU9Pnt0aGlzLndhdGNoZWRTeW1ib2xzLnNldFZhbHVlKGUpfSkpLHRoaXMud2F0Y2hlZFN5bWJvbHMuc2V0VmFsdWUodC52YWx1ZSgpKX11bmJpbmRGcm9tQ2hhcnRXaWRnZXRDb2xsZWN0aW9uKCl7dGhpcy51bmJpbmRGcm9tQ2hhcnRXaWRnZXQoKSx0aGlzLl9jaGFydFdpZGdldENvbGxlY3Rpb249bnVsbCx0aGlzLl9hY3RpdmVDaGFydFdpZGdldD8uZGVzdHJveSgpLHRoaXMuX2FjdGl2ZUNoYXJ0V2lkZ2V0PW51bGwsCnRoaXMuX2xpbmtpbmdHcm91cENoYXJ0cz8uZGVzdHJveSgpLHRoaXMuX2xpbmtpbmdHcm91cENoYXJ0cz1udWxsLHRoaXMuX2Rlc3Ryb3lTeW1ib2xJbnRlcnZhbFByb3BlcnR5U3Vic2NyaXB0aW9ucz8uKCl9YmluZFRvQ2hhcnRXaWRnZXQoZSl7aWYodGhpcy51bmJpbmRGcm9tQ2hhcnRXaWRnZXQoKSx0aGlzLl9ib3VuZENoYXJ0V2lkZ2V0PWUsZS5oYXNNb2RlbCgpKXJldHVybiB2b2lkIHRoaXMuX29uQ2hhcnRNb2RlbENyZWF0ZWQoZS5tb2RlbCgpKTtlLm1vZGVsQ3JlYXRlZCgpLnN1YnNjcmliZSh0aGlzLHRoaXMuX29uQ2hhcnRNb2RlbENyZWF0ZWQsITApLHRoaXMuX2NoYXJ0V2lkZ2V0QmluZGluZ1N0YXRlPTE7Y29uc3QgdD1lLm1haW5TZXJpZXNQcm9wZXJ0aWVzKCkuY2hpbGRzKCk7dGhpcy53YXRjaGVkU3ltYm9sLnNldFZhbHVlKHQuc3ltYm9sLnZhbHVlKCkpLHRoaXMud2F0Y2hlZEludGVydmFsLnNldFZhbHVlKHQuaW50ZXJ2YWwudmFsdWUoKSksdGhpcy5fYm91bmRDaGFydFdpZGdldC5saW5raW5nR3JvdXBJbmRleCgpLnN1YnNjcmliZSh0aGlzLnVwZGF0ZUJvdW5kQ2hhcnRXaWRnZXQpfXVuYmluZEZyb21DaGFydFdpZGdldCgpe2NvbnN0IGU9dGhpcy5fYm91bmRDaGFydFdpZGdldDtpZihudWxsIT09ZSl7c3dpdGNoKHRoaXMuX2NoYXJ0V2lkZ2V0QmluZGluZ1N0YXRlKXtjYXNlIDE6ZS5tb2RlbENyZWF0ZWQoKS51bnN1YnNjcmliZUFsbCh0aGlzKTticmVhaztjYXNlIDI6dGhpcy53YXRjaGVkU3ltYm9sLnVuc3Vic2NyaWJlKHRoaXMuX3dhdGNoZWRTeW1ib2xMaXN0ZW5lckJvdW5kKTtjb25zdCB0PXRoaXMubWFpblNlcmllcygpLmRhdGFFdmVudHMoKTt0LnN5bWJvbFJlc29sdmVkKCkudW5zdWJzY3JpYmVBbGwodGhpcyksdC5zeW1ib2xFcnJvcigpLnVuc3Vic2NyaWJlQWxsKHRoaXMpLHRoaXMubWFpblNlcmllcygpLm9uSW50ZXJ2YWxDaGFuZ2VkKCkudW5zdWJzY3JpYmVBbGwodGhpcyksdGhpcy53YXRjaGVkSW50ZXJ2YWwudW5zdWJzY3JpYmUodGhpcy5fd2F0Y2hlZEludGVydmFsTGlzdGVuZXJCb3VuZCksZGVsZXRlIHRoaXMud2F0Y2hlZFN5bWJvbC53cml0ZUxvY2t9ZS5saW5raW5nR3JvdXBJbmRleCgpLnVuc3Vic2NyaWJlKHRoaXMudXBkYXRlQm91bmRDaGFydFdpZGdldCksdGhpcy5fYm91bmRDaGFydFdpZGdldD1udWxsLHRoaXMuX2NoYXJ0V2lkZ2V0QmluZGluZ1N0YXRlPTB9fWJvdW5kQ2hhcnRXaWRnZXQoKXtyZXR1cm4gdGhpcy5fYm91bmRDaGFydFdpZGdldH1tYWluU2VyaWVzKCl7aWYoIXRoaXMuX2JvdW5kQ2hhcnRXaWRnZXQpdGhyb3cgbmV3IEVycm9yKCJDaGFydFdpZGdldCBpcyB1bmRlZmluZWQiKTtyZXR1cm4gdGhpcy5fYm91bmRDaGFydFdpZGdldC5tb2RlbCgpLm1haW5TZXJpZXMoKX1fd2F0Y2hlZFN5bWJvbExpc3RlbmVyKGUpe3RoaXMuX25lZWRBcHBseVN5bWJvbChlKSYmIXRoaXMuX211dGVkJiZ0aGlzLl9zZXRHcm91cFN5bWJvbChlKX1fdXBkYXRlU3ltYm9sQnlQcm9wZXJ0eShlLHQpe2NvbnN0IG89dGhpcy5fc3ltYm9sTG9jaygpO28mJnRoaXMuX25lZWRBcHBseVN5bWJvbCh0KSYmIXRoaXMuX211dGVkJiZ0aGlzLl9zZXRHcm91cFN5bWJvbCh0KSwob3x8ZT09PXRoaXMuX2JvdW5kQ2hhcnRXaWRnZXQpJiZ0aGlzLndhdGNoZWRTeW1ib2wuc2V0VmFsdWUodCl9X3dhdGNoZWRJbnRlcnZhbExpc3RlbmVyKGUpe2NvbnN0IHQ9YS5JbnRlcnZhbC5ub3JtYWxpemUoZSk7dCYmdGhpcy5fbmVlZEFwcGx5SW50ZXJ2YWwodCkmJiF0aGlzLl9tdXRlZCYmdGhpcy5fc2V0R3JvdXBJbnRlcnZhbCh0KX1fdXBkYXRlSW50ZXJ2YWxCeVByb3BlcnR5KGUsdCl7Y29uc3Qgbz10aGlzLl9pbnRlcnZhbExvY2soKSxpPWEuSW50ZXJ2YWwubm9ybWFsaXplKHQpO28mJmkmJnRoaXMuX25lZWRBcHBseUludGVydmFsKGkpJiYhdGhpcy5fbXV0ZWQmJnRoaXMuX3NldEdyb3VwSW50ZXJ2YWwoaSksKG98fGU9PT10aGlzLl9ib3VuZENoYXJ0V2lkZ2V0KSYmdGhpcy53YXRjaGVkSW50ZXJ2YWwuc2V0VmFsdWUoaT8/dCl9X3VwZGF0ZVNlcmllc1N5bWJvbEluZm8oKXt0aGlzLnNlcmllc1Nob3J0U3ltYm9sLnNldFZhbHVlKCgwLG4uZW5zdXJlTm90TnVsbCkodGhpcy5fYm91bmRDaGFydFdpZGdldCkuZ2V0U3ltYm9sKCEwKSk7Y29uc3QgZT10aGlzLm1haW5TZXJpZXMoKS5zeW1ib2xJbmZvKCk7aWYoZSl7Y29uc3QgdD1lLnByb19uYW1lfHwhMTt0aGlzLnByb1N5bWJvbC5zZXRWYWx1ZSh0fHx0aGlzLndhdGNoZWRTeW1ib2wudmFsdWUoKSksdGhpcy5lbnN1cmVkUHJvU3ltYm9sLnNldFZhbHVlKHRoaXMucHJvU3ltYm9sLnZhbHVlKCkpLGUuYWxpYXNlcyYmdGhpcy5zeW1ib2xOYW1lc0xpc3Quc2V0VmFsdWUoZS5hbGlhc2VzKTtsZXQgbz0oMCxmLmFsbENoYXJ0U3R5bGVzKSgpOygoMCxsLmlzQ2xvc2VCYXNlZFN5bWJvbCkoZSl8fHRoaXMubWFpblNlcmllcygpLmludGVydmFsT2JqKCkudmFsdWUoKS5pczFUaWNrKCkpJiYobz1vLmZpbHRlcigoZT0+KDAsbC5pc1NpbmdsZVZhbHVlQmFzZWRTdHlsZSkoZSkpKSksImhsYyI9PT1lLnZpc2libGVfcGxvdHNfc2V0JiYobz1vLmZpbHRlcigoZT0+KDAsbC5pc0hMQ0Jhc2VkU3R5bGUpKGUpfHwoMCxsLmlzU2luZ2xlVmFsdWVCYXNlZFN0eWxlKShlKSkpKSx0aGlzLndhdGNoZWRTdXBwb3J0ZWRDaGFydFN0eWxlcy5zZXRWYWx1ZShvKSx0aGlzLndhdGNoZWRJbnRyYWRheS5zZXRWYWx1ZSghIWUuaGFzX2ludHJhZGF5KSx0aGlzLndhdGNoZWRTZWNvbmRzLnNldFZhbHVlKCEhZS5oYXNfc2Vjb25kcyksdGhpcy53YXRjaGVkVGlja3Muc2V0VmFsdWUoISgwLGwuaXNDbG9zZUJhc2VkU3ltYm9sKShlKSYmISFlWyJpcy10aWNrYmFycy1hdmFpbGFibGUiXSksdGhpcy53YXRjaGVkUmFuZ2Uuc2V0VmFsdWUoISgwLGwuaXNDbG9zZUJhc2VkU3ltYm9sKShlKSk7Y29uc3QgaT1lLmRhdGFfZnJlcXVlbmN5P2UuZGF0YV9mcmVxdWVuY3k6dm9pZCAwO3RoaXMud2F0Y2hlZERhdGFGcmVxdWVuY3lSZXNvbHV0aW9uLnNldFZhbHVlKGkpfWVsc2UgdGhpcy53YXRjaGVkSW50cmFkYXkuc2V0VmFsdWUoITEpLAp0aGlzLndhdGNoZWRTZWNvbmRzLnNldFZhbHVlKCExKSx0aGlzLndhdGNoZWRUaWNrcy5zZXRWYWx1ZSghMSksdGhpcy53YXRjaGVkUmFuZ2Uuc2V0VmFsdWUoITEpLHRoaXMubWFpblNlcmllcygpLmlzRmFpbGVkKCkmJnRoaXMuZW5zdXJlZFByb1N5bWJvbC5zZXRWYWx1ZSh0aGlzLnByb1N5bWJvbC52YWx1ZSgpKX1fb25DaGFydE1vZGVsQ3JlYXRlZChlKXtpZighdGhpcy5fYm91bmRDaGFydFdpZGdldCl0aHJvdyBuZXcgRXJyb3IoIkNoYXJ0V2lkZ2V0IGlzIHVuZGVmaW5lZCIpO3RoaXMuX2NoYXJ0V2lkZ2V0QmluZGluZ1N0YXRlPTIsdGhpcy53YXRjaGVkU3ltYm9sLnNldFZhbHVlKHRoaXMuX2JvdW5kQ2hhcnRXaWRnZXQuc3ltYm9sV1YoKS52YWx1ZSgpKSx0aGlzLndhdGNoZWRTeW1ib2wuc3Vic2NyaWJlKHRoaXMuX3dhdGNoZWRTeW1ib2xMaXN0ZW5lckJvdW5kKTtjb25zdCB0PWUubWFpblNlcmllcygpLmRhdGFFdmVudHMoKTt0LnN5bWJvbFJlc29sdmVkKCkuc3Vic2NyaWJlKHRoaXMsdGhpcy5fdXBkYXRlU2VyaWVzU3ltYm9sSW5mbyksdC5zeW1ib2xFcnJvcigpLnN1YnNjcmliZSh0aGlzLHRoaXMuX3VwZGF0ZVNlcmllc1N5bWJvbEluZm8pLGUubWFpblNlcmllcygpLm9uSW50ZXJ2YWxDaGFuZ2VkKCkuc3Vic2NyaWJlKHRoaXMsdGhpcy5fdXBkYXRlU2VyaWVzU3ltYm9sSW5mbyksdGhpcy5fdXBkYXRlU2VyaWVzU3ltYm9sSW5mbygpLHRoaXMud2F0Y2hlZEludGVydmFsLnNldFZhbHVlKHRoaXMuX2JvdW5kQ2hhcnRXaWRnZXQucmVzb2x1dGlvbldWKCkudmFsdWUoKSksdGhpcy53YXRjaGVkSW50ZXJ2YWwuc3Vic2NyaWJlKHRoaXMuX3dhdGNoZWRJbnRlcnZhbExpc3RlbmVyQm91bmQpLHRoaXMuX2JvdW5kQ2hhcnRXaWRnZXQucmVhZE9ubHkoKSYmKHRoaXMud2F0Y2hlZFN5bWJvbC53cml0ZUxvY2s9ITApfV9jaGFydFRvQmluZCgpe2NvbnN0IGU9dGhpcy5fY2hhcnRXaWRnZXRDb2xsZWN0aW9uO3JldHVybiBudWxsPT09ZT9udWxsOmUuYWN0aXZlQ2hhcnRXaWRnZXQudmFsdWUoKS5saW5raW5nR3JvdXBJbmRleCgpLnZhbHVlKCk9PT10aGlzLl9ncm91cEluZGV4P2UuYWN0aXZlQ2hhcnRXaWRnZXQudmFsdWUoKTpudWxsIT09dGhpcy5fYm91bmRDaGFydFdpZGdldCYmdGhpcy5fYm91bmRDaGFydFdpZGdldC5saW5raW5nR3JvdXBJbmRleCgpLnZhbHVlKCk9PT10aGlzLl9ncm91cEluZGV4P3RoaXMuX2JvdW5kQ2hhcnRXaWRnZXQ6ZS5nZXRBbGwoKS5maW5kKChlPT5lLmxpbmtpbmdHcm91cEluZGV4KCkudmFsdWUoKT09PXRoaXMuX2dyb3VwSW5kZXgpKT8/bnVsbH1fc3ltYm9sTG9jaygpe3JldHVybiEhdGhpcy5fY2hhcnRXaWRnZXRDb2xsZWN0aW9uPy5sb2NrLnN5bWJvbC52YWx1ZSgpfV9pbnRlcnZhbExvY2soKXtyZXR1cm4hIXRoaXMuX2NoYXJ0V2lkZ2V0Q29sbGVjdGlvbj8ubG9jay5pbnRlcnZhbC52YWx1ZSgpfV9jaGFydHNGb3JMb2NrKGUpe3JldHVybigwPT09ZT90aGlzLl9zeW1ib2xMb2NrKCk6dGhpcy5faW50ZXJ2YWxMb2NrKCkpPygwLG4uZW5zdXJlTm90TnVsbCkodGhpcy5fbGlua2luZ0dyb3VwQ2hhcnRzKS52YWx1ZSgpOnRoaXMuX2JvdW5kQ2hhcnRXaWRnZXQ/W3RoaXMuX2JvdW5kQ2hhcnRXaWRnZXRdOltdfV9zZXRHcm91cFN5bWJvbChlKXt0aGlzLm11dGUoITApLHRoaXMuX3NldEdyb3VwU3ltYm9sQ2FuY2VsbGF0aW9uVG9rZW4uY2FuY2VsbGVkPSEwO2NvbnN0IHQ9dGhpcy5fc2V0R3JvdXBTeW1ib2xDYW5jZWxsYXRpb25Ub2tlbj17Y2FuY2VsbGVkOiExfTsoMCxuLmVuc3VyZU5vdE51bGwpKHRoaXMuX2NoYXJ0V2lkZ2V0Q29sbGVjdGlvbikuc2V0U3ltYm9sKGUsdGhpcy5fZ3JvdXBJbmRleCwoMCxuLmVuc3VyZU5vdE51bGwpKHRoaXMuX2JvdW5kQ2hhcnRXaWRnZXQpKS5maW5hbGx5KCgoKT0+e2lmKHRoaXMuX2JvdW5kQ2hhcnRXaWRnZXQmJiF0LmNhbmNlbGxlZCl7Y29uc3QgdD10aGlzLl9ib3VuZENoYXJ0V2lkZ2V0Lm1vZGVsKCkubWFpblNlcmllcygpO3Quc3ltYm9sU2FtZUFzQ3VycmVudChlKXx8KHRoaXMud2F0Y2hlZFN5bWJvbC5zZXRWYWx1ZSh0LnN5bWJvbCgpKSx0aGlzLnByb1N5bWJvbC5zZXRWYWx1ZSh0LnByb1N5bWJvbCgpKSl9fSkpLHRoaXMubXV0ZSghMSl9X25lZWRBcHBseVN5bWJvbChlKXtjb25zdCB0PXRoaXMuX2NoYXJ0c0ZvckxvY2soMCksbz10LmZpbmQoKHQ9PnQuaGFzTW9kZWwoKSYmdC5tb2RlbCgpLm1haW5TZXJpZXMoKS5zeW1ib2xJbmZvKCkmJnQubW9kZWwoKS5tYWluU2VyaWVzKCkuc3ltYm9sU2FtZUFzUmVzb2x2ZWQoZSkpKTtpZihvKXtjb25zdCBlPW8ubW9kZWwoKS5tYWluU2VyaWVzKCk7aWYodC5ldmVyeSgodD0+ZS5zeW1ib2xTYW1lQXNSZXNvbHZlZCh0LnN5bWJvbFdWKCkudmFsdWUoKSkpKSlyZXR1cm4hMX1yZXR1cm4gdC5zb21lKCh0PT50LnN5bWJvbFdWKCkudmFsdWUoKSE9PWUpKX1fc2V0R3JvdXBJbnRlcnZhbChlKXt0aGlzLm11dGUoITApLCgwLG4uZW5zdXJlTm90TnVsbCkodGhpcy5fY2hhcnRXaWRnZXRDb2xsZWN0aW9uKS5zZXRSZXNvbHV0aW9uKGUsdGhpcy5fZ3JvdXBJbmRleCkuZmluYWxseSgoKCk9PntpZih0aGlzLl9ib3VuZENoYXJ0V2lkZ2V0KXtjb25zdCB0PXRoaXMuX2JvdW5kQ2hhcnRXaWRnZXQucmVzb2x1dGlvbldWKCkudmFsdWUoKTthLkludGVydmFsLmlzRXF1YWwodCxlKXx8dGhpcy53YXRjaGVkSW50ZXJ2YWwuc2V0VmFsdWUodCl9fSkpLHRoaXMubXV0ZSghMSl9X25lZWRBcHBseUludGVydmFsKGUpe3JldHVybiB0aGlzLl9jaGFydHNGb3JMb2NrKDEpLnNvbWUoKHQ9PiFhLkludGVydmFsLmlzRXF1YWwodC5yZXNvbHV0aW9uV1YoKS52YWx1ZSgpLGUpKSl9fWNvbnN0IFQ9bmV3IGNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5fd2F0Y2hlZFN5bWJvbHM9bmV3IHMuV2F0Y2hlZFZhbHVlKFtdKSx0aGlzLl93YXRjaGVkU3ltYm9sPW5ldyBzLldhdGNoZWRWYWx1ZSx0aGlzLl9zZXJpZXNTaG9ydFN5bWJvbD1uZXcgcy5XYXRjaGVkVmFsdWUsdGhpcy5fcHJvU3ltYm9sPW5ldyBzLldhdGNoZWRWYWx1ZSwKdGhpcy5fZW5zdXJlZFByb1N5bWJvbD1uZXcgcy5XYXRjaGVkVmFsdWUsdGhpcy5fd2F0Y2hlZEludGVydmFsPW5ldyBzLldhdGNoZWRWYWx1ZSx0aGlzLl93YXRjaGVkSW50cmFkYXk9bmV3IHMuV2F0Y2hlZFZhbHVlLHRoaXMuX3dhdGNoZWRTZWNvbmRzPW5ldyBzLldhdGNoZWRWYWx1ZSx0aGlzLl93YXRjaGVkVGlja3M9bmV3IHMuV2F0Y2hlZFZhbHVlLHRoaXMuX3dhdGNoZWREYXRhRnJlcXVlbmN5UmVzb2x1dGlvbj1uZXcgcy5XYXRjaGVkVmFsdWUsdGhpcy5fd2F0Y2hlZFJhbmdlPW5ldyBzLldhdGNoZWRWYWx1ZSx0aGlzLl93YXRjaGVkU3VwcG9ydGVkUmVzb2x1dGlvbnM9bmV3IHMuV2F0Y2hlZFZhbHVlLHRoaXMuX3dhdGNoZWRTdXBwb3J0ZWRDaGFydFN0eWxlcz1uZXcgcy5XYXRjaGVkVmFsdWUoW10pLHRoaXMuX3N5bWJvbE5hbWVzTGlzdD1uZXcgcy5XYXRjaGVkVmFsdWUsdGhpcy5fY2hhcnRXaWRnZXRDb2xsZWN0aW9uPW51bGwsdGhpcy5fb25TeW1ib2xMaW5rQm91bmQ9dGhpcy5fb25TeW1ib2xMaW5rLmJpbmQodGhpcyksdGhpcy5fc2VhcmNoQ2hhcnRzPW51bGwsdGhpcy5fc2VhcmNoQ2hhcnRzTG9hZERlYm91bmNlZD1udWxsLHRoaXMuX3NlbGZFbWl0PSExLHRoaXMuX3ByZXZlbnRGZWVkQnlTeW1ib2w9ITEsdGhpcy5fZmVlZEJ5U3ltYm9sRGVib3VuY2VDb3VudGVyPTAsdGhpcy5fbGlua2luZ0dyb3Vwcz1uZXcgTWFwLHRoaXMuX2FjdGl2ZUxpbmtpbmdHcm91cD1uZXcgcy5XYXRjaGVkVmFsdWUsdGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwSW5kZXg9bnVsbCx0aGlzLl91cGRhdGVMaW5raW5nR3JvdXBzPSgpPT57KDAsbi5lbnN1cmVOb3ROdWxsKSh0aGlzLl9jaGFydFdpZGdldENvbGxlY3Rpb24pLmFsbExpbmtpbmdHcm91cHMoKS52YWx1ZSgpLmZvckVhY2goKGU9PnRoaXMuX2xpbmtpbmdHcm91cChlKSkpLHRoaXMuX2xpbmtpbmdHcm91cHMuZm9yRWFjaCgoZT0+ZS51cGRhdGVCb3VuZENoYXJ0V2lkZ2V0KCkpKX0sdGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwLnNldFZhbHVlKHRoaXMuX2xpbmtpbmdHcm91cChudWxsKSk7Y29uc3QgZT0oZSx0KT0+e2Uuc3Vic2NyaWJlKChlPT50KCkuc2V0VmFsdWUoZSkpLHtjYWxsV2l0aExhc3Q6ITB9KX07ZSh0aGlzLl93YXRjaGVkU3ltYm9scywoKCk9PnRoaXMuX2FjdGl2ZUxpbmtpbmdHcm91cC52YWx1ZSgpLndhdGNoZWRTeW1ib2xzKSksZSh0aGlzLl93YXRjaGVkU3ltYm9sLCgoKT0+dGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwLnZhbHVlKCkud2F0Y2hlZFN5bWJvbCkpLGUodGhpcy5fc2VyaWVzU2hvcnRTeW1ib2wsKCgpPT50aGlzLl9hY3RpdmVMaW5raW5nR3JvdXAudmFsdWUoKS5zZXJpZXNTaG9ydFN5bWJvbCkpLGUodGhpcy5fcHJvU3ltYm9sLCgoKT0+dGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwLnZhbHVlKCkucHJvU3ltYm9sKSksZSh0aGlzLl9lbnN1cmVkUHJvU3ltYm9sLCgoKT0+dGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwLnZhbHVlKCkuZW5zdXJlZFByb1N5bWJvbCkpLGUodGhpcy5fd2F0Y2hlZEludGVydmFsLCgoKT0+dGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwLnZhbHVlKCkud2F0Y2hlZEludGVydmFsKSksZSh0aGlzLl93YXRjaGVkSW50cmFkYXksKCgpPT50aGlzLl9hY3RpdmVMaW5raW5nR3JvdXAudmFsdWUoKS53YXRjaGVkSW50cmFkYXkpKSxlKHRoaXMuX3dhdGNoZWRTZWNvbmRzLCgoKT0+dGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwLnZhbHVlKCkud2F0Y2hlZFNlY29uZHMpKSxlKHRoaXMuX3dhdGNoZWRUaWNrcywoKCk9PnRoaXMuX2FjdGl2ZUxpbmtpbmdHcm91cC52YWx1ZSgpLndhdGNoZWRUaWNrcykpLGUodGhpcy5fd2F0Y2hlZERhdGFGcmVxdWVuY3lSZXNvbHV0aW9uLCgoKT0+dGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwLnZhbHVlKCkud2F0Y2hlZERhdGFGcmVxdWVuY3lSZXNvbHV0aW9uKSksZSh0aGlzLl93YXRjaGVkUmFuZ2UsKCgpPT50aGlzLl9hY3RpdmVMaW5raW5nR3JvdXAudmFsdWUoKS53YXRjaGVkUmFuZ2UpKSxlKHRoaXMuX3dhdGNoZWRTdXBwb3J0ZWRSZXNvbHV0aW9ucywoKCk9PnRoaXMuX2FjdGl2ZUxpbmtpbmdHcm91cC52YWx1ZSgpLndhdGNoZWRTdXBwb3J0ZWRSZXNvbHV0aW9ucykpLGUodGhpcy5fd2F0Y2hlZFN1cHBvcnRlZENoYXJ0U3R5bGVzLCgoKT0+dGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwLnZhbHVlKCkud2F0Y2hlZFN1cHBvcnRlZENoYXJ0U3R5bGVzKSksZSh0aGlzLl9zeW1ib2xOYW1lc0xpc3QsKCgpPT50aGlzLl9hY3RpdmVMaW5raW5nR3JvdXAudmFsdWUoKS5zeW1ib2xOYW1lc0xpc3QpKTtjb25zdCB0PWU9Pnt0aGlzLl93YXRjaGVkU3ltYm9sLnNldFZhbHVlKGUud2F0Y2hlZFN5bWJvbC52YWx1ZSgpKSx0aGlzLl9zZXJpZXNTaG9ydFN5bWJvbC5zZXRWYWx1ZShlLnNlcmllc1Nob3J0U3ltYm9sLnZhbHVlKCkpLHRoaXMuX3Byb1N5bWJvbC5zZXRWYWx1ZShlLnByb1N5bWJvbC52YWx1ZSgpKSx0aGlzLl9lbnN1cmVkUHJvU3ltYm9sLnNldFZhbHVlKGUuZW5zdXJlZFByb1N5bWJvbC52YWx1ZSgpKSx0aGlzLl93YXRjaGVkSW50ZXJ2YWwuc2V0VmFsdWUoZS53YXRjaGVkSW50ZXJ2YWwudmFsdWUoKSksdGhpcy5fd2F0Y2hlZEludHJhZGF5LnNldFZhbHVlKGUud2F0Y2hlZEludHJhZGF5LnZhbHVlKCkpLHRoaXMuX3dhdGNoZWRTZWNvbmRzLnNldFZhbHVlKGUud2F0Y2hlZFNlY29uZHMudmFsdWUoKSksdGhpcy5fd2F0Y2hlZFRpY2tzLnNldFZhbHVlKGUud2F0Y2hlZFRpY2tzLnZhbHVlKCkpLHRoaXMuX3dhdGNoZWREYXRhRnJlcXVlbmN5UmVzb2x1dGlvbi5zZXRWYWx1ZShlLndhdGNoZWREYXRhRnJlcXVlbmN5UmVzb2x1dGlvbi52YWx1ZSgpKSx0aGlzLl93YXRjaGVkUmFuZ2Uuc2V0VmFsdWUoZS53YXRjaGVkUmFuZ2UudmFsdWUoKSksdGhpcy5fd2F0Y2hlZFN1cHBvcnRlZFJlc29sdXRpb25zLnNldFZhbHVlKGUud2F0Y2hlZFN1cHBvcnRlZFJlc29sdXRpb25zLnZhbHVlKCkpLHRoaXMuX3dhdGNoZWRTdXBwb3J0ZWRDaGFydFN0eWxlcy5zZXRWYWx1ZShlLndhdGNoZWRTdXBwb3J0ZWRDaGFydFN0eWxlcy52YWx1ZSgpKSwKdGhpcy5fc3ltYm9sTmFtZXNMaXN0LnNldFZhbHVlKGUuc3ltYm9sTmFtZXNMaXN0LnZhbHVlKCkpfTt0aGlzLl9hY3RpdmVMaW5raW5nR3JvdXAuc3Vic2NyaWJlKHQpLHQodGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwLnZhbHVlKCkpLCgwLGIuc2V0TXV0ZUxpbmtpbmdHcm91cCkoKChlLHQpPT57ImFsbCI9PT1lP3RoaXMuX2xpbmtpbmdHcm91cHMuZm9yRWFjaCgoZT0+ZS5tdXRlKHQpKSk6dGhpcy5fbGlua2luZ0dyb3VwKGUpLm11dGUodCl9KSl9Z2V0IHN5bWJvbHMoKXtyZXR1cm4gdGhpcy5fd2F0Y2hlZFN5bWJvbHN9Z2V0IHN5bWJvbCgpe3JldHVybiB0aGlzLl93YXRjaGVkU3ltYm9sfWdldCBwcm9TeW1ib2woKXtyZXR1cm4gdGhpcy5fcHJvU3ltYm9sLnJlYWRvbmx5KCl9c3ltYm9sU3luY0VuYWJsZWQoKXtyZXR1cm4hIXRoaXMuX2NoYXJ0V2lkZ2V0Q29sbGVjdGlvbj8ubG9jay5zeW1ib2wudmFsdWUoKX1nZXQgZW5zdXJlZFByb1N5bWJvbCgpe3JldHVybiB0aGlzLl9lbnN1cmVkUHJvU3ltYm9sLnJlYWRvbmx5KCl9Z2V0IHN5bWJvbE5hbWVzTGlzdCgpe3JldHVybiB0aGlzLl9zeW1ib2xOYW1lc0xpc3QucmVhZG9ubHkoKX1nZXQgc2VyaWVzU2hvcnRTeW1ib2woKXtyZXR1cm4gdGhpcy5fc2VyaWVzU2hvcnRTeW1ib2wucmVhZG9ubHkoKX1nZXQgaW50ZXJ2YWwoKXtyZXR1cm4gdGhpcy5fd2F0Y2hlZEludGVydmFsfWludGVydmFsU3luY0VuYWJsZWQoKXtyZXR1cm4hIXRoaXMuX2NoYXJ0V2lkZ2V0Q29sbGVjdGlvbj8ubG9jay5pbnRlcnZhbC52YWx1ZSgpfWdldCBpbnRyYWRheSgpe3JldHVybiB0aGlzLl93YXRjaGVkSW50cmFkYXkucmVhZG9ubHkoKX1nZXQgc2Vjb25kcygpe3JldHVybiB0aGlzLl93YXRjaGVkU2Vjb25kcy5yZWFkb25seSgpfWdldCB0aWNrcygpe3JldHVybiB0aGlzLl93YXRjaGVkVGlja3MucmVhZG9ubHkoKX1nZXQgcmFuZ2UoKXtyZXR1cm4gdGhpcy5fd2F0Y2hlZFJhbmdlLnJlYWRvbmx5KCl9Z2V0IHN1cHBvcnRlZFJlc29sdXRpb25zKCl7cmV0dXJuIHRoaXMuX3dhdGNoZWRTdXBwb3J0ZWRSZXNvbHV0aW9ucy5yZWFkb25seSgpfWdldCBzdXBwb3J0ZWRDaGFydFN0eWxlcygpe3JldHVybiB0aGlzLl93YXRjaGVkU3VwcG9ydGVkQ2hhcnRTdHlsZXMucmVhZG9ubHkoKX1nZXQgcHJldmVudEZlZWRCeVN5bWJvbCgpe3JldHVybiB0aGlzLl9wcmV2ZW50RmVlZEJ5U3ltYm9sfWdldCBkYXRhRnJlcXVlbmN5UmVzb2x1dGlvbigpe3JldHVybiB0aGlzLl93YXRjaGVkRGF0YUZyZXF1ZW5jeVJlc29sdXRpb24ucmVhZG9ubHkoKX1hY3RpdmVMaW5raW5nR3JvdXAoKXtyZXR1cm4gdGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwLnJlYWRvbmx5KCl9Z2V0Q2hhcnRXaWRnZXQoKXtyZXR1cm4gdGhpcy5hY3RpdmVMaW5raW5nR3JvdXAoKS52YWx1ZSgpLmJvdW5kQ2hhcnRXaWRnZXQoKX1iaW5kVG9DaGFydFdpZGdldENvbGxlY3Rpb24oZSl7dGhpcy5fY2hhcnRXaWRnZXRDb2xsZWN0aW9uPy5vbkFib3V0VG9CZURlc3Ryb3llZC51bnN1YnNjcmliZUFsbCh0aGlzKSx0aGlzLl91bmJpbmRGcm9tQ2hhcnRXaWRnZXRDb2xsZWN0aW9uKCksdGhpcy5fY2hhcnRXaWRnZXRDb2xsZWN0aW9uPWUsdGhpcy5fY2hhcnRXaWRnZXRDb2xsZWN0aW9uLm9uQWJvdXRUb0JlRGVzdHJveWVkLnN1YnNjcmliZSh0aGlzLHRoaXMuX3VuYmluZEZyb21DaGFydFdpZGdldENvbGxlY3Rpb24pLHRoaXMuX2NoYXJ0V2lkZ2V0Q29sbGVjdGlvbi5hbGxMaW5raW5nR3JvdXBzKCkuc3Vic2NyaWJlKHRoaXMuX3VwZGF0ZUxpbmtpbmdHcm91cHMpLHRoaXMuX3VwZGF0ZUxpbmtpbmdHcm91cHMoKSx0aGlzLl9hY3RpdmVMaW5raW5nR3JvdXBJbmRleD1lLmFjdGl2ZUxpbmtpbmdHcm91cCgpLnNwYXduKCksdGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwSW5kZXguc3Vic2NyaWJlKChlPT57dGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwLnNldFZhbHVlKHRoaXMuX2xpbmtpbmdHcm91cChlKSl9KSx7Y2FsbFdpdGhMYXN0OiEwfSksdGhpcy5fbGlua2luZ0dyb3Vwcy5mb3JFYWNoKCh0PT50LmJpbmRUb0NoYXJ0V2lkZ2V0Q29sbGVjdGlvbihlKSkpfWJpbmRUb1NlYXJjaENoYXJ0cyhlKXt0aGlzLnVuYmluZEZyb21TZWFyY2hDaGFydHMoKSx0aGlzLl9zZWFyY2hDaGFydHM9ZSxlLm9uU2VhcmNoQnlTeW1ib2wuc3Vic2NyaWJlKHRoaXMsdGhpcy5fb25TZWFyY2hCeVN5bWJvbCksZS5sb2FkaW5nU3ltYm9sLnN1YnNjcmliZSgoZT0+eyExPT09ZSYmKHRoaXMuX2ZlZWRCeVN5bWJvbERlYm91bmNlQ291bnRlcj0wKX0pKSx0aGlzLl93YXRjaGVkU3ltYm9sLnN1YnNjcmliZSh0aGlzLl9vblN5bWJvbExpbmtCb3VuZCl9dW5iaW5kRnJvbVNlYXJjaENoYXJ0cygpe3RoaXMuX3NlYXJjaENoYXJ0cyYmKHRoaXMuX3NlYXJjaENoYXJ0cy5vblNlYXJjaEJ5U3ltYm9sLnVuc3Vic2NyaWJlKHRoaXMsdGhpcy5fb25TZWFyY2hCeVN5bWJvbCksdGhpcy5fd2F0Y2hlZFN5bWJvbC51bnN1YnNjcmliZSh0aGlzLl9vblN5bWJvbExpbmtCb3VuZCksdGhpcy5fc2VhcmNoQ2hhcnRzPW51bGwpfXNldFByZXZlbnRGZWVkQnlTeW1ib2woZSl7dGhpcy5fcHJldmVudEZlZWRCeVN5bWJvbD1lfXNldFN5bWJvbEFuZExvZ0luaXRpYXRvcihlLHQsbyxpLG4pe2NvbnN0IHI9dm9pZCAwIT09bj90aGlzLl9saW5raW5nR3JvdXAobi5saW5raW5nR3JvdXBJbmRleCgpLnZhbHVlKCkpOnRoaXMuYWN0aXZlTGlua2luZ0dyb3VwKCkudmFsdWUoKTt2YXIgcyxhLGwsYzsoci53YXRjaGVkU3ltYm9sLnZhbHVlKCkhPT1lfHxvKSYmKFMubG9nSW5mbyhgQ2hhbmdlIGxpbmtpbmcgc3ltYm9sIHRvICR7ZX0sIGluaXRpYXRvcjogJHt0fWApLHIud2F0Y2hlZFN5bWJvbC5zZXRWYWx1ZShlLG8pLGl8fG51bGw9PT10aGlzLl9jaGFydFdpZGdldENvbGxlY3Rpb258fChzPXIubWFpblNlcmllcygpLGE9dGhpcy5fY2hhcnRXaWRnZXRDb2xsZWN0aW9uLmxheW91dC52YWx1ZSgpLGw9dGhpcy5fY2hhcnRXaWRnZXRDb2xsZWN0aW9uLm1ldGFJbmZvLnVpZC52YWx1ZSgpfHwiIixjPXQsCndpbmRvdy51c2VyLmRvX25vdF90cmFja3x8cy5zeW1ib2xSZXNvbHZpbmdBY3RpdmUoKS5zdWJzY3JpYmUoKGU9PntpZihlKXJldHVybjtjb25zdCB0PXMuc3ltYm9sSW5mbygpO3QmJigwLGcuZ2V0VHJhY2tlcikoKS50aGVuKChlPT57bnVsbCE9PWUmJmUudHJhY2tDaGFydFN5bWJvbHMoe3N5bWJvbE5hbWU6dC5wcm9fbmFtZSxzeW1ib2xUeXBlOnQudHlwZSxyZXNvbHV0aW9uOnMuaW50ZXJ2YWwoKSxsYXlvdXRUeXBlOmEsY2hhcnRJZDpsLGNoYXJ0U3R5bGVzOl8uU1RZTEVfU0hPUlRfTkFNRVNbcy5zdHlsZSgpXSxvcGVuU291cmNlOmMscGxhdGZvcm06KDAscC5nZXRQbGF0Zm9ybSkoKSxpc0V4cGVydDp3aW5kb3cudXNlci5kZWNsYXJlZF9zdGF0dXM9PT1tLlVzZXJTdGF0dXMuUHJvfSl9KSl9KSx7b25jZTohMH0pKSl9c2V0SW50ZXJ2YWxBbmRMb2dJbml0aWF0b3IoZSx0LG8saSl7Y29uc3Qgbj12b2lkIDAhPT1pP3RoaXMuX2xpbmtpbmdHcm91cChpLmxpbmtpbmdHcm91cEluZGV4KCkudmFsdWUoKSk6dGhpcy5hY3RpdmVMaW5raW5nR3JvdXAoKS52YWx1ZSgpO2EuSW50ZXJ2YWwuaXNFcXVhbChuLndhdGNoZWRJbnRlcnZhbC52YWx1ZSgpLGUpfHwoUy5sb2dJbmZvKGBDaGFuZ2UgbGlua2luZyBpbnRlcnZhbCB0byAke2V9LCBpbml0aWF0b3I6ICR7dH1gKSxvfHwoMCx2LnRyYWNrSW50ZXJ2YWxDaGFuZ2luZykoZSx0KSxuLndhdGNoZWRJbnRlcnZhbC5zZXRWYWx1ZShlKSl9X29uU2VhcmNoQnlTeW1ib2woZSl7aWYoIWUucmVzb2x2ZWRfc3ltYm9sKXRocm93IG5ldyBFcnJvcigibm8gcmVzb2x2ZWRfc3ltYm9sIik7dGhpcy5fc2VsZkVtaXQ9ITAsdGhpcy5fd2F0Y2hlZFN5bWJvbC5zZXRWYWx1ZShlLnJlc29sdmVkX3N5bWJvbCksdGhpcy5fc2VsZkVtaXQ9ITF9X29uU3ltYm9sTGluayhlKXtpZighdGhpcy5fc2VsZkVtaXQpe2lmKCF0aGlzLl9zZWFyY2hDaGFydHMpe2NvbnN0IGU9Ik5vIHNlYXJjaCBjaGFydHMgZGVmaW5lZCI7dGhyb3cgUy5sb2dFcnJvcihlKSxuZXcgRXJyb3IoZSl9dGhpcy5fcHJldmVudEZlZWRCeVN5bWJvbHx8dGhpcy5fbG9hZFNlYXJjaENoYXJ0cyhlKX19X2xvYWRTZWFyY2hDaGFydHMoZSl7aWYoIXRoaXMuX3NlYXJjaENoYXJ0cyl7Y29uc3QgZT0iTm8gc2VhcmNoIGNoYXJ0cyBkZWZpbmVkIjt0aHJvdyBTLmxvZ0Vycm9yKGUpLG5ldyBFcnJvcihlKX1pZih0aGlzLl9zZWFyY2hDaGFydHNMb2FkRGVib3VuY2VkKXJldHVybiB2b2lkKHRoaXMuX2ZlZWRCeVN5bWJvbERlYm91bmNlQ291bnRlcjwxMDAmJih0aGlzLl9mZWVkQnlTeW1ib2xEZWJvdW5jZUNvdW50ZXIrKyx0aGlzLl9zZWFyY2hDaGFydHNMb2FkRGVib3VuY2VkKGUpKSk7Y29uc3QgdD1lPT50aGlzLl9zZWFyY2hDaGFydHM/KCEwPT09dGhpcy5fc2VhcmNoQ2hhcnRzLmxvYWRpbmdTeW1ib2wudmFsdWUoKT90aGlzLl9mZWVkQnlTeW1ib2xEZWJvdW5jZUNvdW50ZXI8MTAwJiYodGhpcy5fZmVlZEJ5U3ltYm9sRGVib3VuY2VDb3VudGVyKyssdGhpcy5fc2VhcmNoQ2hhcnRzTG9hZERlYm91bmNlZD0oMCxpLmRlZmF1bHQpKHQsMmUzKSx0aGlzLl9zZWFyY2hDaGFydHNMb2FkRGVib3VuY2VkKGUpKTp0aGlzLl9zZWFyY2hDaGFydHNMb2FkRGVib3VuY2VkPW51bGwsdGhpcy5fc2VhcmNoQ2hhcnRzLmZlZWRCeVN5bWJvbC5jYWxsKHRoaXMuX3NlYXJjaENoYXJ0cyxlKSk6KCk9Pnt9OyEwPT09dGhpcy5fc2VhcmNoQ2hhcnRzLmxvYWRpbmdTeW1ib2wudmFsdWUoKT90aGlzLl9mZWVkQnlTeW1ib2xEZWJvdW5jZUNvdW50ZXI8MTAwJiYodGhpcy5fZmVlZEJ5U3ltYm9sRGVib3VuY2VDb3VudGVyKyssdGhpcy5fc2VhcmNoQ2hhcnRzTG9hZERlYm91bmNlZD0oMCxpLmRlZmF1bHQpKHQsMmUzKSx0aGlzLl9zZWFyY2hDaGFydHNMb2FkRGVib3VuY2VkKGUpKTp0aGlzLl9zZWFyY2hDaGFydHMuZmVlZEJ5U3ltYm9sKGUpfV9saW5raW5nR3JvdXAoZSl7bGV0IHQ9dGhpcy5fbGlua2luZ0dyb3Vwcy5nZXQoZSk7aWYodm9pZCAwPT09dCl7Y29uc3Qgbz17d2F0Y2hlZFN5bWJvbHM6dGhpcy5fd2F0Y2hlZFN5bWJvbHMsd2F0Y2hlZFN5bWJvbDp0aGlzLl93YXRjaGVkU3ltYm9sLHNlcmllc1Nob3J0U3ltYm9sOnRoaXMuX3Nlcmllc1Nob3J0U3ltYm9sLHByb1N5bWJvbDp0aGlzLl9wcm9TeW1ib2wsZW5zdXJlZFByb1N5bWJvbDp0aGlzLl9lbnN1cmVkUHJvU3ltYm9sLHdhdGNoZWRJbnRlcnZhbDp0aGlzLl93YXRjaGVkSW50ZXJ2YWwsd2F0Y2hlZEludHJhZGF5OnRoaXMuX3dhdGNoZWRJbnRyYWRheSx3YXRjaGVkU2Vjb25kczp0aGlzLl93YXRjaGVkU2Vjb25kcyx3YXRjaGVkVGlja3M6dGhpcy5fd2F0Y2hlZFRpY2tzLHdhdGNoZWREYXRhRnJlcXVlbmN5UmVzb2x1dGlvbjp0aGlzLl93YXRjaGVkRGF0YUZyZXF1ZW5jeVJlc29sdXRpb24sd2F0Y2hlZFJhbmdlOnRoaXMuX3dhdGNoZWRSYW5nZSx3YXRjaGVkU3VwcG9ydGVkUmVzb2x1dGlvbnM6dGhpcy5fd2F0Y2hlZFN1cHBvcnRlZFJlc29sdXRpb25zLHdhdGNoZWRTdXBwb3J0ZWRDaGFydFN0eWxlczp0aGlzLl93YXRjaGVkU3VwcG9ydGVkQ2hhcnRTdHlsZXMsc3ltYm9sTmFtZXNMaXN0OnRoaXMuX3N5bWJvbE5hbWVzTGlzdH07dD1uZXcgayhlLG8sKCgpPT50aGlzLl9hY3RpdmVMaW5raW5nR3JvdXAudmFsdWUoKSkpLHRoaXMuX2xpbmtpbmdHcm91cHMuc2V0KGUsdCksdGhpcy5fY2hhcnRXaWRnZXRDb2xsZWN0aW9uJiZ0LmJpbmRUb0NoYXJ0V2lkZ2V0Q29sbGVjdGlvbih0aGlzLl9jaGFydFdpZGdldENvbGxlY3Rpb24pfXJldHVybiB0fV91bmJpbmRGcm9tQ2hhcnRXaWRnZXRDb2xsZWN0aW9uKCl7bnVsbCE9PXRoaXMuX2NoYXJ0V2lkZ2V0Q29sbGVjdGlvbiYmKHRoaXMuX2FjdGl2ZUxpbmtpbmdHcm91cEluZGV4Py5kZXN0cm95KCksdGhpcy5fYWN0aXZlTGlua2luZ0dyb3VwSW5kZXg9bnVsbCx0aGlzLl9saW5raW5nR3JvdXBzLmZvckVhY2goKGU9PmUudW5iaW5kRnJvbUNoYXJ0V2lkZ2V0Q29sbGVjdGlvbigpKSksCnRoaXMuX2NoYXJ0V2lkZ2V0Q29sbGVjdGlvbi5hbGxMaW5raW5nR3JvdXBzKCkudW5zdWJzY3JpYmUodGhpcy5fdXBkYXRlTGlua2luZ0dyb3VwcyksdGhpcy5fY2hhcnRXaWRnZXRDb2xsZWN0aW9uPW51bGwpfX07e2NvbnN0IGU9KDAsdS5nZXRGcmVzaEluaXREYXRhKSgpLnN5bWJvbEluZm8sdD1lP2UucHJvX3N5bWJvbDpoLmdldFZhbHVlKCJlZGl0Y2hhcnQubW9kZWwuc3ltYm9sIiwoMCx5LmdldERlZmF1bHRTeW1ib2wpKCkpO1Quc2V0U3ltYm9sQW5kTG9nSW5pdGlhdG9yKHQsImluaXRpYWwgZGF0YSIsITEsITApfXdpbmRvdy5UcmFkaW5nVmlld0FwaXx8KHdpbmRvdy5UcmFkaW5nVmlld0FwaT17bGlua2luZzpUfSl9LDIwOTM5KGUsdCxvKXsidXNlIHN0cmljdCI7bGV0IGk7ZnVuY3Rpb24gbihlKXtpPWV9by5kKHQse3NldE11dGVMaW5raW5nR3JvdXA6KCk9Pm59KX0sNDU5NDg4KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse3Bvc2l0aW9uOigpPT5yfSk7dmFyIGk9bygxMzg2MzgpO2Z1bmN0aW9uIG4oZSl7aWYoIWUuZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGgpcmV0dXJue3RvcDowLGxlZnQ6MH07Y29uc3QgdD1lLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLG89KDAsaS5lbnN1cmVOb3ROdWxsKShlLm93bmVyRG9jdW1lbnQuZGVmYXVsdFZpZXcpO3JldHVybnt0b3A6dC50b3Arby5wYWdlWU9mZnNldCxsZWZ0OnQubGVmdCtvLnBhZ2VYT2Zmc2V0fX1mdW5jdGlvbiByKGUpe2NvbnN0IHQ9Z2V0Q29tcHV0ZWRTdHlsZShlKTtsZXQgbyxpPXt0b3A6MCxsZWZ0OjB9O2lmKCJmaXhlZCI9PT10LnBvc2l0aW9uKW89ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtlbHNle289bihlKTtjb25zdCB0PWUub3duZXJEb2N1bWVudDtsZXQgcj1lLm9mZnNldFBhcmVudHx8dC5kb2N1bWVudEVsZW1lbnQ7Zm9yKDtyJiYocj09PXQuYm9keXx8cj09PXQuZG9jdW1lbnRFbGVtZW50KSYmInN0YXRpYyI9PT1nZXRDb21wdXRlZFN0eWxlKHIpLnBvc2l0aW9uOylyPXIucGFyZW50RWxlbWVudDtyJiZyIT09ZSYmMT09PXIubm9kZVR5cGUmJihpPW4ociksaS50b3ArPXBhcnNlRmxvYXQoZ2V0Q29tcHV0ZWRTdHlsZShyKS5ib3JkZXJUb3BXaWR0aCksaS5sZWZ0Kz1wYXJzZUZsb2F0KGdldENvbXB1dGVkU3R5bGUocikuYm9yZGVyTGVmdFdpZHRoKSl9cmV0dXJue3RvcDpvLnRvcC1pLnRvcC1wYXJzZUZsb2F0KHQubWFyZ2luVG9wKSxsZWZ0Om8ubGVmdC1pLmxlZnQtcGFyc2VGbG9hdCh0Lm1hcmdpbkxlZnQpfX19LDM2MjIzOShlLHQsbyl7InVzZSBzdHJpY3QiO2FzeW5jIGZ1bmN0aW9uIGkoKXtpZighd2luZG93LnVzZXJ8fHdpbmRvdy51c2VyLmRvX25vdF90cmFjaylyZXR1cm4gbnVsbDtjb25zdHtnZXRUcmFja2VySW5zdGFuY2U6ZX09YXdhaXQgUHJvbWlzZS5hbGwoW28uZSg3MDY0NCksby5lKDY2Mzk5KV0pLnRoZW4oby5iaW5kKG8sMTU4MzMyKSk7cmV0dXJuIGUoKX1vLmQodCx7Z2V0VHJhY2tlcjooKT0+aX0pfSwzNTUxMjMoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7c3BhcnNlVXNlcnNUcmFja2luZ0NvZWZmaWNpZW50OigpPT5hfSk7dmFyIGk9byg5MzIzNjUpO2NvbnN0IG49InNwYXJzZVVzZXJzVHJhY2tpbmdDb2VmZmljaWVudCIscj0oMCxvKDE2MDI5NikuaXNQcm9kKSgpP251bGw6aS5UVkxvY2FsU3RvcmFnZS5nZXRJdGVtKG4pO2xldCBzPW51bGwhPT1yP3BhcnNlRmxvYXQocik6bnVsbDtudWxsIT09cyYmKCFOdW1iZXIuaXNGaW5pdGUocyl8fHM8MHx8cz4xKSYmKHM9bnVsbCxpLlRWTG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0obikpO2NvbnN0IGE9cz8/LjF9LDM4MzM1MShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHt0cmFja0ludGVydmFsQ2hhbmdpbmc6KCk9PnN9KTt2YXIgaT1vKDg1NjE5Niksbj1vKDM2MjIzOSkscj1vKDM1NTEyMyk7ZnVuY3Rpb24gcyhlLHQpe3dpbmRvdy51c2VyLmRvX25vdF90cmFja3x8KDAsaS5zaG91bGRBZmZlY3RVc2VyKSgiSW50ZXJ2YWxDaGFuZ2luZyIsci5zcGFyc2VVc2Vyc1RyYWNraW5nQ29lZmZpY2llbnQpJiYoMCxuLmdldFRyYWNrZXIpKCkudGhlbigobz0+e251bGwhPT1vJiZvLnRyYWNrQ2hhcnRJbnRlcnZhbENoYW5naW5nKGUsdCl9KSl9fSwxNTI3MTcoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7c3luY1VzZXJDb252ZXJzaW9uRGF0YTooKT0+dSxzeW5jVXNlckRhdGE6KCk9Pmh9KTt2YXIgaT1vKDIyMTA2MSksbj1vKDM4NjkzMSkscj1vKDgyNzAxKSxzPW8oMzg0MDE3KSxhPW8oNTI0MDY5KTtjb25zdCBsPSgwLGkuZ2V0TG9nZ2VyKSgiVXNlci5TeW5jIik7ZnVuY3Rpb24gYyhlKXtyZXR1cm5gJHtlfV8ke3dpbmRvdy51c2VyJiZ3aW5kb3cudXNlci51c2VybmFtZXx8IiJ9YH1mdW5jdGlvbiBkKGUpe2NvbnN0e3NvdXJjZTp0LGlzQXV0aGVudGljYXRlZDpvLHByb1BsYW46aSxvZmZlcnM6cyxmaXJlTG9naW5DaGFuZ2U6YT0hMH09ZTtpIT09d2luZG93LnVzZXIucHJvX3BsYW4mJih3aW5kb3cudXNlci5wcm9fcGxhbj1pLHdpbmRvdy51c2VyLmlzX3Bybz1Cb29sZWFuKGkpLCgwLG4udHJhY2tFdmVudCkoIlN5bmMgVXNlciBEYXRhIiwiRGlmZmVyZW50IFBybyBQbGFuIixjKHQpKSksbyE9PXdpbmRvdy5pc19hdXRoZW50aWNhdGVkJiYod2luZG93LmlzX2F1dGhlbnRpY2F0ZWQ9byxhJiZ3aW5kb3cubG9naW5TdGF0ZUNoYW5nZS5maXJlKCksKDAsbi50cmFja0V2ZW50KSgiU3luYyBVc2VyIERhdGEiLCJEaWZmZXJlbnQgQXV0aCIsYyh0KSkpLHMmJnIuYXZhaWxhYmxlT2ZmZXJzLnNldEluaXRpYWwocyl9YXN5bmMgZnVuY3Rpb24gaChlKXt0cnl7ZCh7c291cmNlOmUsaXNBdXRoZW50aWNhdGVkOiEwLHByb1BsYW46KGF3YWl0KDAsYS5nZXRQcm9QbGFuRGV0YWlsc0ZvclVzZXIpKCkpLnByb19wbGFufSl9Y2F0Y2godCl7IWZ1bmN0aW9uKGUsdCl7NDAzPT09dC5zdGF0dXMmJlsibm90X2F1dGhlbnRpY2F0ZWQiLCJsb2dpbl9yZXF1aXJlZCJdLmluY2x1ZGVzKHQudHlwZXx8IiIpP2Qoe3NvdXJjZTplLGlzQXV0aGVudGljYXRlZDohMSxwcm9QbGFuOnZvaWQgMH0pOmwubG9nRXJyb3IodC5tZXNzYWdlKX0oZSx0KX19CmFzeW5jIGZ1bmN0aW9uIHUoZSx0PSEwKXtjb25zdCBvPW5ldyBVUkwoIi9wcmljaW5nLyIsd2luZG93LmxvY2F0aW9uLm9yaWdpbiksaT1uZXcgVVJMU2VhcmNoUGFyYW1zKHdpbmRvdy5sb2NhdGlvbi5zZWFyY2gpO2kuaGFzKCJfdGVzdF9jb3VudHJ5IikmJm8uc2VhcmNoUGFyYW1zLmFwcGVuZCgiX3Rlc3RfY291bnRyeSIsaS5nZXQoIl90ZXN0X2NvdW50cnkiKT8/IiIpLG8uc2VhcmNoUGFyYW1zLmFwcGVuZCgiY29tcG9uZW50LWRhdGEtb25seSIsIjEiKTtjb25zdCBuPWF3YWl0KDAscy5mZXRjaCkoby5ocmVmKSxyPWF3YWl0IG4uanNvbigpO3JldHVybiBkKHtzb3VyY2U6ZSxpc0F1dGhlbnRpY2F0ZWQ6ci5pc19hdXRoZW50aWNhdGVkLHByb1BsYW46ci51c2VyLnByb19wbGFuLGZpcmVMb2dpbkNoYW5nZTp0LG9mZmVyczpyLnVzZXIuYXZhaWxhYmxlX29mZmVyc30pLHJ9fSw4MTA0MShlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtTdGRUaGVtZTooKT0+aS5TdGRUaGVtZX0pO3ZhciBpPW8oMjQ3OTAxKX0sMjM0OTY0KGUsdCxvKXsidXNlIHN0cmljdCI7YXN5bmMgZnVuY3Rpb24gaShlLHQpe2NvbnN0IGk9YXdhaXQgUHJvbWlzZS5hbGwoW28uZSgyODgzMSksby5lKDg0MzA2KSxvLmUoMjkyOTYpLG8uZSg1MjM5Niksby5lKDYwMDYyKSxvLmUoMjAzNTQpLG8uZSgxMzQ5Miksby5lKDM3NzQ2KSxvLmUoMTIzODUpLG8uZSg4MTA3Miksby5lKDk0MjMyKSxvLmUoMTk1OTUpLG8uZSgxOTc4Nyksby5lKDg1NzkpLG8uZSgxNzA4Nyksby5lKDU3MzAwKSxvLmUoMTIwNTEpLG8uZSg4OTU1OCksby5lKDEwMzY2KSxvLmUoNDA5MTQpLG8uZSg5MDk2MCksby5lKDg3NzQwKSxvLmUoNzg4OTkpLG8uZSg2NzIxMiksby5lKDgwOTE1KSxvLmUoMTUzNCksby5lKDI4MTc2KSxvLmUoMzk2MDkpLG8uZSg1NTIyOSksby5lKDY1MTAwKSxvLmUoNDI3MDYpXSkudGhlbihvLmJpbmQobyw1MDYyNzUpKTtyZXR1cm4gaS5zaG93U2ltcGxlRGlhbG9nKGUsaS5yZW5hbWVNb2R1bGUsdCl9YXN5bmMgZnVuY3Rpb24gbihlLHQpe2NvbnN0IGk9YXdhaXQgUHJvbWlzZS5hbGwoW28uZSgyODgzMSksby5lKDg0MzA2KSxvLmUoMjkyOTYpLG8uZSg1MjM5Niksby5lKDYwMDYyKSxvLmUoMjAzNTQpLG8uZSgxMzQ5Miksby5lKDM3NzQ2KSxvLmUoMTIzODUpLG8uZSg4MTA3Miksby5lKDk0MjMyKSxvLmUoMTk1OTUpLG8uZSgxOTc4Nyksby5lKDg1NzkpLG8uZSgxNzA4Nyksby5lKDU3MzAwKSxvLmUoMTIwNTEpLG8uZSg4OTU1OCksby5lKDEwMzY2KSxvLmUoNDA5MTQpLG8uZSg5MDk2MCksby5lKDg3NzQwKSxvLmUoNzg4OTkpLG8uZSg2NzIxMiksby5lKDgwOTE1KSxvLmUoMTUzNCksby5lKDI4MTc2KSxvLmUoMzk2MDkpLG8uZSg1NTIyOSksby5lKDY1MTAwKSxvLmUoNDI3MDYpXSkudGhlbihvLmJpbmQobyw1MDYyNzUpKTtyZXR1cm4gaS5zaG93U2ltcGxlRGlhbG9nKGUsaS5jb25maXJtTW9kdWxlLHQpfWFzeW5jIGZ1bmN0aW9uIHIoZSx0KXtjb25zdCBpPWF3YWl0IFByb21pc2UuYWxsKFtvLmUoMjg4MzEpLG8uZSg4NDMwNiksby5lKDI5Mjk2KSxvLmUoNTIzOTYpLG8uZSg2MDA2Miksby5lKDIwMzU0KSxvLmUoMTM0OTIpLG8uZSgzNzc0Niksby5lKDEyMzg1KSxvLmUoODEwNzIpLG8uZSg5NDIzMiksby5lKDE5NTk1KSxvLmUoMTk3ODcpLG8uZSg4NTc5KSxvLmUoMTcwODcpLG8uZSg1NzMwMCksby5lKDEyMDUxKSxvLmUoODk1NTgpLG8uZSgxMDM2Niksby5lKDQwOTE0KSxvLmUoOTA5NjApLG8uZSg4Nzc0MCksby5lKDc4ODk5KSxvLmUoNjcyMTIpLG8uZSg4MDkxNSksby5lKDE1MzQpLG8uZSgyODE3Niksby5lKDM5NjA5KSxvLmUoNTUyMjkpLG8uZSg2NTEwMCksby5lKDQyNzA2KV0pLnRoZW4oby5iaW5kKG8sNTA2Mjc1KSk7cmV0dXJuIGkuc2hvd1NpbXBsZURpYWxvZyhlLGkud2FybmluZ01vZHVsZSx0KX1vLmQodCx7c2hvd0NvbmZpcm06KCk9Pm4sc2hvd1JlbmFtZTooKT0+aSxzaG93V2FybmluZzooKT0+cn0pfSw2NTQ2MzYoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7cnVuT3JTaWduSW46KCk9PnJ9KTt2YXIgaT1vKDkzMDIzMSk7byg2MjE5MjYpO2NvbnN0IG49KDAsaS5pc0ZlYXR1cmVzZXRFbmFibGVkKSgid2lkZ2V0Iik7ZnVuY3Rpb24gcihlLHQpe24/ZSgpOndpbmRvdy5ydW5PclNpZ25JbihlLHQpfX0sODMyMzkyKGUsdCxvKXsidXNlIHN0cmljdCI7byg3OTUzODMpLG8oNDgyNTA0KTt2YXIgaT1vKDM0NDc4NSksbj1vKDkzMDU2Nikscj0obyg4MjkxODApLG8oODA0NjE5KSxvKDEzODYzOCkpLHM9byg3NDgwMDIpLGE9byg2NTM4MTcpLGw9byg3NDI1NzcpLGM9byg1Mjg4NjQpO3ZhciBkLGgsdT1vKDYwMTU4NyksXz1vKDE4NTI3MSk7IWZ1bmN0aW9uKGUpe2UuQm9uZHM9ImJvbmRzIixlLkNmZD0iY2ZkIixlLkNvbnRpbnVvdXNGdXR1cmVzPSJjb250aW51b3VzX2Z1dHVyZXMiLGUuQ3J5cHRvPSJjcnlwdG8iLGUuQ3J5cHRvQnlTeW1ib2w9ImNyeXB0b19ieV9zeW1ib2wiLGUuQ3J5cHRvTWt0PSJjcnlwdG9fbWt0IixlLkNyeXB0b01rdEJ5U3ltYm9sPSJjcnlwdG9fbWt0X2J5X3N5bWJvbCIsZS5DdXJyZW5jeT0iY3VycmVuY3kiLGUuRm9yZXg9ImZvcmV4IixlLkZ1dHVyZXM9ImZ1dHVyZXMiLGUuSW5kdXN0cnk9ImluZHVzdHJ5IixlLlBvc3RNYXJrZXQ9InBvc3RfbWFya2V0IixlLlByZU1hcmtldD0icHJlX21hcmtldCIsZS5TZWN0b3I9InNlY3RvciIsZS5TdG9jaz0ic3RvY2siLGUuU3RvY2tDb21wYWN0PSJzdG9ja19jb21wYWN0In0oZHx8KGQ9e30pKSxmdW5jdGlvbihlKXtlLkJhc2VDdXJyZW5jeUxvZ29JZD0iYmFzZV9jdXJyZW5jeV9sb2dvaWQiLGUuQ2hhbmdlPSJjaGFuZ2UiLGUuQ291bnRyeT0iY291bnRyeSIsZS5DdXJyZW5jeUxvZ29JZD0iY3VycmVuY3lfbG9nb2lkIixlLkRlc2NyaXB0aW9uPSJkZXNjcmlwdGlvbiIsZS5JbmR1c3RyeT0iaW5kdXN0cnkiLGUuTG9nb0lkPSJsb2dvaWQiLGUuTmFtZT0ibmFtZSIsZS5QZXJmb3JtYW5jZTFNPSJQZXJmLjFNIixlLlBlcmZvcm1hbmNlM009IlBlcmYuM00iLGUuUGVyZm9ybWFuY2U2TT0iUGVyZi42TSIsCmUuUGVyZm9ybWFuY2VXPSJQZXJmLlciLGUuUGVyZm9ybWFuY2VZPSJQZXJmLlkiLGUuUGVyZm9ybWFuY2VZVEQ9IlBlcmYuWVREIixlLlNlY3Rvcj0ic2VjdG9yIn0oaHx8KGg9e30pKTtjb25zdCBwPVt7aWQ6Im92ZXJ2aWV3Iix0aXRsZTpfLnQobnVsbCx2b2lkIDAsbyg1NjgzNDYpKSxzY3JlZW5lclR5cGVDb250ZW50OntzdG9jazp7c3RvY2s6W2guTG9nb0lkLGguTmFtZSwiY2xvc2UiLCJjaGFuZ2UiLCJjaGFuZ2VfYWJzIiwiUmVjb21tZW5kLkFsbCIsInZvbHVtZSIsIlZhbHVlLlRyYWRlZCIsIm1hcmtldF9jYXBfYmFzaWMiLCJwcmljZV9lYXJuaW5nc190dG0iLCJlYXJuaW5nc19wZXJfc2hhcmVfYmFzaWNfdHRtIiwibnVtYmVyX29mX2VtcGxveWVlcyIsaC5TZWN0b3IsImRlc2NyaXB0aW9uIiwidHlwZSJdLF9zZWN0b3I6W2guTG9nb0lkLGguTmFtZSwiY2xvc2UiLCJjaGFuZ2UiLCJjaGFuZ2VfYWJzIiwiUmVjb21tZW5kLkFsbCIsInZvbHVtZSIsIlZhbHVlLlRyYWRlZCIsIm1hcmtldF9jYXBfYmFzaWMiLCJwcmljZV9lYXJuaW5nc190dG0iLCJlYXJuaW5nc19wZXJfc2hhcmVfYmFzaWNfdHRtIiwibnVtYmVyX29mX2VtcGxveWVlcyIsImluZHVzdHJ5IiwiZGVzY3JpcHRpb24iLCJ0eXBlIl19LGZvcmV4OltoLkJhc2VDdXJyZW5jeUxvZ29JZCxoLkN1cnJlbmN5TG9nb0lkLGguTmFtZSwiY2xvc2UiLCJjaGFuZ2UiLCJjaGFuZ2VfYWJzIiwiYmlkIiwiYXNrIiwiaGlnaCIsImxvdyIsIlJlY29tbWVuZC5BbGwiLCJkZXNjcmlwdGlvbiIsInR5cGUiXSxjcnlwdG86W2guQmFzZUN1cnJlbmN5TG9nb0lkLGguQ3VycmVuY3lMb2dvSWQsaC5OYW1lLCJjbG9zZSIsImNoYW5nZSIsImNoYW5nZV9hYnMiLCJoaWdoIiwibG93Iiwidm9sdW1lIiwiMjRoX3ZvbHw1IiwiMjRoX3ZvbF9jaGFuZ2V8NSIsIlJlY29tbWVuZC5BbGwiLCJleGNoYW5nZSIsImRlc2NyaXB0aW9uIl0sY3J5cHRvX21rdDpbaC5CYXNlQ3VycmVuY3lMb2dvSWQsaC5TZWN0b3IsIm1hcmtldF9jYXBfY2FsYyIsIm1hcmtldF9jYXBfZGlsdXRlZF9jYWxjIiwiY2xvc2UiLCJ0b3RhbF9zaGFyZXNfb3V0c3RhbmRpbmciLCJ0b3RhbF9zaGFyZXNfZGlsdXRlZCIsInRvdGFsX3ZhbHVlX3RyYWRlZCIsImNoYW5nZSJdLGNyeXB0b19ta3RfYnlfc3ltYm9sOltoLkN1cnJlbmN5TG9nb0lkLGguTmFtZSwiY2xvc2UiLCJjaGFuZ2UiLCJjaGFuZ2VfYWJzIiwiaGlnaCIsImxvdyIsInZvbHVtZSIsIlJlY29tbWVuZC5BbGwiLCJleGNoYW5nZSIsImRlc2NyaXB0aW9uIl0sY3J5cHRvX2J5X3N5bWJvbDpbaC5DdXJyZW5jeUxvZ29JZCxoLk5hbWUsImV4Y2hhbmdlIiwiY2xvc2UiLCJjaGFuZ2UiLCJjaGFuZ2VfYWJzIiwiaGlnaCIsImxvdyIsInZvbHVtZSIsIlJlY29tbWVuZC5BbGwiLCJkZXNjcmlwdGlvbiJdLGZ1dHVyZXM6W2guTG9nb0lkLGguTmFtZSwiY2xvc2UiLCJjaGFuZ2UiLCJjaGFuZ2VfYWJzIiwiaGlnaCIsImxvdyIsIlJlY29tbWVuZC5BbGwiLCJkZXNjcmlwdGlvbiJdLGNvbnRpbnVvdXNfZnV0dXJlczpbaC5Mb2dvSWQsaC5OYW1lLCJleHBpcmF0aW9uIiwiY2xvc2UiLCJjaGFuZ2UiLCJjaGFuZ2VfYWJzIiwiaGlnaCIsImxvdyIsIlJlY29tbWVuZC5BbGwiLCJkZXNjcmlwdGlvbiJdLGNmZDpbaC5Mb2dvSWQsaC5OYW1lLCJjbG9zZSIsImNoYW5nZSIsImNoYW5nZV9hYnMiLCJoaWdoIiwibG93IiwiUmVjb21tZW5kLkFsbCIsImRlc2NyaXB0aW9uIl0sc2VjdG9yOlsiZGVzY3JpcHRpb24iLCJtYXJrZXRfY2FwX2Jhc2ljIiwiZGl2aWRlbmRfeWllbGRfcmVjZW50IiwiY2hhbmdlIiwidm9sdW1lIiwiZWxlbWVudHMiLCJiYXNpY19lbGVtZW50cyJdLGluZHVzdHJ5OlsiZGVzY3JpcHRpb24iLCJtYXJrZXRfY2FwX2Jhc2ljIiwiZGl2aWRlbmRfeWllbGRfcmVjZW50IiwiY2hhbmdlIiwidm9sdW1lIixoLlNlY3RvciwiZWxlbWVudHMiXSxjdXJyZW5jeTpbaC5Mb2dvSWQsaC5OYW1lLCJjbG9zZSIsImNoYW5nZSIsImNoYW5nZV9hYnMiLCJoaWdoIiwibG93IiwiUmVjb21tZW5kLkFsbCIsImRlc2NyaXB0aW9uIl0sYm9uZHM6W2guTG9nb0lkLGguTmFtZSwiY291cG9uIiwibWF0dXJpdHlfZGF0ZSIsImNsb3NlIiwiY2hhbmdlIiwiY2hhbmdlX2FicyIsImhpZ2giLCJsb3ciLCJSZWNvbW1lbmQuQWxsIiwiZGVzY3JpcHRpb24iXSxwcmVfbWFya2V0OltoLkxvZ29JZCxoLk5hbWUsInByZW1hcmtldF9jbG9zZSIsInByZW1hcmtldF9jaGFuZ2VfYWJzIiwicHJlbWFya2V0X2NoYW5nZSIsInByZW1hcmtldF92b2x1bWUiLCJwcmVtYXJrZXRfZ2FwIiwiY2xvc2UiLCJjaGFuZ2UiLCJ2b2x1bWUiLCJtYXJrZXRfY2FwX2Jhc2ljIl0scG9zdF9tYXJrZXQ6W2guTG9nb0lkLGguTmFtZSwicG9zdG1hcmtldF9jbG9zZSIsInBvc3RtYXJrZXRfY2hhbmdlX2FicyIsInBvc3RtYXJrZXRfY2hhbmdlIiwicG9zdG1hcmtldF92b2x1bWUiLCJjbG9zZSIsImNoYW5nZSIsInZvbHVtZSIsIm1hcmtldF9jYXBfYmFzaWMiXX0sY29udGVudDpbXSxzY3JlZW5lcnM6W2QuU3RvY2ssZC5TdG9ja0NvbXBhY3QsZC5Gb3JleCxkLkZ1dHVyZXMsZC5Db250aW51b3VzRnV0dXJlcyxkLkNmZCxkLkNyeXB0byxkLkNyeXB0b01rdCxkLkNyeXB0b01rdEJ5U3ltYm9sLGQuQ3J5cHRvQnlTeW1ib2wsZC5TZWN0b3IsZC5JbmR1c3RyeSxkLkN1cnJlbmN5LGQuQm9uZHMsZC5QcmVNYXJrZXQsZC5Qb3N0TWFya2V0XSxzaG93T25XaWRnZXQ6ITB9LHtpZDoicGVyZm9ybWFuY2UiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDExMTM0MSkpLHNjcmVlbmVyVHlwZUNvbnRlbnQ6e3N0b2NrOltoLkxvZ29JZCxoLk5hbWUsImRlc2NyaXB0aW9uIiwidHlwZSIsImNoYW5nZS4xIiwiY2hhbmdlLjUiLCJjaGFuZ2UuMTUiLCJjaGFuZ2UuNjAiLCJjaGFuZ2UuMjQwIiwiY2hhbmdlIiwiY2hhbmdlLjFXIiwiY2hhbmdlLjFNIiwiUGVyZi4zTSIsIlBlcmYuNk0iLCJQZXJmLllURCIsIlBlcmYuWSIsIlBlcmYuNVkiLCJQZXJmLkFsbCIsImJldGFfMV95ZWFyIiwiVm9sYXRpbGl0eS5EIl0sCmZ1dHVyZXM6W2guTG9nb0lkLGguTmFtZSwiZGVzY3JpcHRpb24iLCJ0eXBlIiwiY2hhbmdlIiwiY2hhbmdlLjFXIiwiY2hhbmdlLjFNIiwiUGVyZi4zTSIsIlBlcmYuNk0iLCJQZXJmLllURCIsIlBlcmYuWSIsIlZvbGF0aWxpdHkuRCJdLGNvbnRpbnVvdXNfZnV0dXJlczpbaC5Mb2dvSWQsaC5OYW1lLCJkZXNjcmlwdGlvbiIsInR5cGUiLCJjaGFuZ2UiLCJjaGFuZ2UuMVciLCJjaGFuZ2UuMU0iLCJQZXJmLjNNIiwiUGVyZi42TSIsIlBlcmYuWVREIiwiUGVyZi5ZIiwiVm9sYXRpbGl0eS5EIl0sZm9yZXg6W2guQmFzZUN1cnJlbmN5TG9nb0lkLGguQ3VycmVuY3lMb2dvSWQsaC5OYW1lLCJkZXNjcmlwdGlvbiIsInR5cGUiLCJjaGFuZ2UiLCJjaGFuZ2UuMVciLCJjaGFuZ2UuMU0iLCJQZXJmLjNNIiwiUGVyZi42TSIsIlBlcmYuWVREIiwiUGVyZi5ZIiwiUGVyZi41WSIsIlBlcmYuQWxsIiwiVm9sYXRpbGl0eS5EIl0sY3J5cHRvOltoLkJhc2VDdXJyZW5jeUxvZ29JZCxoLkN1cnJlbmN5TG9nb0lkLGguTmFtZSwiZGVzY3JpcHRpb24iLCJ0eXBlIiwiY2hhbmdlIiwiY2hhbmdlLjFXIiwiY2hhbmdlLjFNIiwiUGVyZi4zTSIsIlBlcmYuNk0iLCJQZXJmLllURCIsIlBlcmYuWSIsIlBlcmYuNVkiLCJQZXJmLkFsbCIsIlZvbGF0aWxpdHkuRCJdLGNyeXB0b19ta3Q6W2guQmFzZUN1cnJlbmN5TG9nb0lkLGguU2VjdG9yLCJkZXNjcmlwdGlvbiIsInR5cGUiLCJjaGFuZ2UiLCJjaGFuZ2UuMVciLCJjaGFuZ2UuMU0iLCJQZXJmLjNNIiwiUGVyZi42TSIsIlBlcmYuWVREIiwiUGVyZi5ZIiwiVm9sYXRpbGl0eS5EIl0sY3J5cHRvX21rdF9ieV9zeW1ib2w6W2guQ3VycmVuY3lMb2dvSWQsaC5OYW1lLCJkZXNjcmlwdGlvbiIsInR5cGUiLCJjaGFuZ2UiLCJjaGFuZ2UuMVciLCJjaGFuZ2UuMU0iLCJQZXJmLjNNIiwiUGVyZi42TSIsIlBlcmYuWVREIiwiUGVyZi5ZIiwiVm9sYXRpbGl0eS5EIl0sY3J5cHRvX2J5X3N5bWJvbDpbaC5DdXJyZW5jeUxvZ29JZCxoLk5hbWUsImV4Y2hhbmdlIiwiZGVzY3JpcHRpb24iLCJ0eXBlIiwiY2hhbmdlIiwiY2hhbmdlLjFXIiwiY2hhbmdlLjFNIiwiUGVyZi4zTSIsIlBlcmYuNk0iLCJQZXJmLllURCIsIlBlcmYuWSIsIlZvbGF0aWxpdHkuRCJdLGNmZDpbaC5Mb2dvSWQsaC5OYW1lLCJkZXNjcmlwdGlvbiIsInR5cGUiLCJjaGFuZ2UiLCJjaGFuZ2UuMVciLCJjaGFuZ2UuMU0iLCJQZXJmLjNNIiwiUGVyZi42TSIsIlBlcmYuWVREIiwiUGVyZi5ZIiwiVm9sYXRpbGl0eS5EIl0sc2VjdG9yOlsiZGVzY3JpcHRpb24iLCJjaGFuZ2UiLCJjaGFuZ2UuMVciLCJjaGFuZ2UuMU0iLCJQZXJmLjNNIiwiUGVyZi42TSIsIlBlcmYuWVREIiwiUGVyZi5ZIl0saW5kdXN0cnk6WyJkZXNjcmlwdGlvbiIsImNoYW5nZSIsImNoYW5nZS4xVyIsImNoYW5nZS4xTSIsIlBlcmYuM00iLCJQZXJmLjZNIiwiUGVyZi5ZVEQiLCJQZXJmLlkiXSxjdXJyZW5jeTpbaC5Mb2dvSWQsaC5OYW1lLCJkZXNjcmlwdGlvbiIsInR5cGUiLCJjaGFuZ2UiLCJjaGFuZ2UuMVciLCJjaGFuZ2UuMU0iLCJQZXJmLjNNIiwiUGVyZi42TSIsIlBlcmYuWVREIiwiUGVyZi5ZIiwiVm9sYXRpbGl0eS5EIl0sYm9uZHM6W2guTG9nb0lkLGguTmFtZSwiZGVzY3JpcHRpb24iLCJ0eXBlIiwiY2hhbmdlIiwiY2hhbmdlLjFXIiwiY2hhbmdlLjFNIiwiUGVyZi4zTSIsIlBlcmYuNk0iLCJQZXJmLllURCIsIlBlcmYuWSIsIlZvbGF0aWxpdHkuRCJdfSxjb250ZW50OltdLHNjcmVlbmVyczpbZC5TdG9jayxkLlN0b2NrQ29tcGFjdCxkLkZvcmV4LGQuRnV0dXJlcyxkLkNvbnRpbnVvdXNGdXR1cmVzLGQuQ2ZkLGQuQ3J5cHRvLGQuQ3J5cHRvTWt0LGQuQ3J5cHRvQnlTeW1ib2wsZC5DcnlwdG9Na3RCeVN5bWJvbCxkLlNlY3RvcixkLkluZHVzdHJ5LGQuQ3VycmVuY3ksZC5Cb25kcyxkLlByZU1hcmtldCxkLlBvc3RNYXJrZXRdLHNob3dPbldpZGdldDohMH0se2lkOiJleHRlbmRlZF9ob3VycyIsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNzIxNDQxKSksY29udGVudDpbaC5Mb2dvSWQsaC5OYW1lLCJkZXNjcmlwdGlvbiIsInByZW1hcmtldF9jbG9zZSIsInByZW1hcmtldF9jaGFuZ2UiLCJwcmVtYXJrZXRfZ2FwIiwicHJlbWFya2V0X3ZvbHVtZSIsImNsb3NlIiwiY2hhbmdlIiwidm9sdW1lIiwicG9zdG1hcmtldF9jbG9zZSIsInBvc3RtYXJrZXRfY2hhbmdlIiwicG9zdG1hcmtldF92b2x1bWUiLCJSZWNvbW1lbmQuQWxsIiwibWFya2V0X2NhcF9iYXNpYyJdLHNjcmVlbmVyczpbZC5TdG9ja10sc2hvd09uV2lkZ2V0OiExfSx7aWQ6InZhbHVhdGlvbiIsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNzk2MjU2KSksY29udGVudDpbaC5Mb2dvSWQsaC5OYW1lLCJkZXNjcmlwdGlvbiIsInR5cGUiLCJjbG9zZSIsIm1hcmtldF9jYXBfYmFzaWMiLCJwcmljZV9lYXJuaW5nc190dG0iLCJwcmljZV9yZXZlbnVlX3R0bSIsImVhcm5pbmdzX3Blcl9zaGFyZV9iYXNpY190dG0iLCJsYXN0X2FubnVhbF9lcHMiLCJlbnRlcnByaXNlX3ZhbHVlX2ViaXRkYV90dG0iLCJlbnRlcnByaXNlX3ZhbHVlX2ZxIiwidG90YWxfc2hhcmVzX291dHN0YW5kaW5nX2Z1bmRhbWVudGFsIl0sc2NyZWVuZXJzOltkLlN0b2NrLGQuU3RvY2tDb21wYWN0LGQuUHJlTWFya2V0LGQuUG9zdE1hcmtldF0sc2hvd09uV2lkZ2V0OiEwfSx7aWQ6ImRpdmlkZW5kcyIsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNjU5MjY3KSksY29udGVudDpbaC5Mb2dvSWQsaC5OYW1lLCJkZXNjcmlwdGlvbiIsInR5cGUiLCJjbG9zZSIsImRpdmlkZW5kX3lpZWxkX3JlY2VudCIsImRpdmlkZW5kc19wYWlkIiwiZHBzX2NvbW1vbl9zdG9ja19wcmltX2lzc3VlX2Z5Il0sc2NyZWVuZXJzOltkLlN0b2NrLGQuU3RvY2tDb21wYWN0LGQuUHJlTWFya2V0LGQuUG9zdE1hcmtldF0sc2hvd09uV2lkZ2V0OiEwfSx7aWQ6Im1hcmdpbnMiLHRpdGxlOl8udChudWxsLHtjb250ZXh0OiJzY3JlZW5lciJ9LG8oMjA1OSkpLApjb250ZW50OltoLkxvZ29JZCxoLk5hbWUsImRlc2NyaXB0aW9uIiwidHlwZSIsImdyb3NzX21hcmdpbiIsIm9wZXJhdGluZ19tYXJnaW4iLCJwcmVfdGF4X21hcmdpbiIsImFmdGVyX3RheF9tYXJnaW4iXSxzY3JlZW5lcnM6W2QuU3RvY2ssZC5TdG9ja0NvbXBhY3QsZC5QcmVNYXJrZXQsZC5Qb3N0TWFya2V0XSxzaG93T25XaWRnZXQ6ITB9LHtpZDoiaW5jb21lX3N0YXRlbWVudCIsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oODQ3NTQ0KSksY29udGVudDpbaC5Mb2dvSWQsaC5OYW1lLCJkZXNjcmlwdGlvbiIsInR5cGUiLCJiYXNpY19lcHNfbmV0X2luY29tZSIsImVhcm5pbmdzX3Blcl9zaGFyZV9iYXNpY190dG0iLCJlYXJuaW5nc19wZXJfc2hhcmVfZGlsdXRlZF90dG0iLCJlYml0ZGEiLCJncm9zc19wcm9maXRfZnEiLCJncm9zc19wcm9maXQiLCJ0b3RhbF9yZXZlbnVlIiwibGFzdF9hbm51YWxfZXBzIiwibGFzdF9hbm51YWxfcmV2ZW51ZSIsIm5ldF9pbmNvbWUiXSxzY3JlZW5lcnM6W2QuU3RvY2ssZC5TdG9ja0NvbXBhY3QsZC5QcmVNYXJrZXQsZC5Qb3N0TWFya2V0XSxzaG93T25XaWRnZXQ6ITB9LHtpZDoiYmFsYW5jZV9zaGVldCIsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oOTQ0MTU1KSksY29udGVudDpbaC5Mb2dvSWQsaC5OYW1lLCJkZXNjcmlwdGlvbiIsInR5cGUiLCJjdXJyZW50X3JhdGlvIiwiZGVidF90b19lcXVpdHkiLCJuZXRfZGVidCIsInF1aWNrX3JhdGlvIiwidG90YWxfYXNzZXRzIiwidG90YWxfZGVidCIsInRvdGFsX2N1cnJlbnRfYXNzZXRzIl0sc2NyZWVuZXJzOltkLlN0b2NrLGQuU3RvY2tDb21wYWN0LGQuUHJlTWFya2V0LGQuUG9zdE1hcmtldF0sc2hvd09uV2lkZ2V0OiEwfSx7aWQ6Im9zY2lsbGF0b3JzIix0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygzNTkxNTApKSxzY3JlZW5lclR5cGVDb250ZW50OntzdG9jazpbaC5Mb2dvSWQsaC5OYW1lLCJSZWNvbW1lbmQuT3RoZXIiLCJBRFgiLCJBTyIsIkFUUiIsIkNDSTIwIiwiTUFDRC5tYWNkIiwiTUFDRC5zaWduYWwiLCJNb20iLCJSU0kiLCJTdG9jaC5LIiwiU3RvY2guRCIsImRlc2NyaXB0aW9uIiwidHlwZSJdLGZvcmV4OltoLkJhc2VDdXJyZW5jeUxvZ29JZCxoLkN1cnJlbmN5TG9nb0lkLGguTmFtZSwiUmVjb21tZW5kLk90aGVyIiwiQURYIiwiQU8iLCJBVFIiLCJDQ0kyMCIsIk1BQ0QubWFjZCIsIk1BQ0Quc2lnbmFsIiwiTW9tIiwiUlNJIiwiU3RvY2guSyIsIlN0b2NoLkQiLCJkZXNjcmlwdGlvbiIsInR5cGUiXSxmdXR1cmVzOltoLkxvZ29JZCxoLk5hbWUsIlJlY29tbWVuZC5PdGhlciIsIkFEWCIsIkFPIiwiQVRSIiwiQ0NJMjAiLCJNQUNELm1hY2QiLCJNQUNELnNpZ25hbCIsIk1vbSIsIlJTSSIsIlN0b2NoLksiLCJTdG9jaC5EIiwiZGVzY3JpcHRpb24iLCJ0eXBlIl0sY29udGludW91c19mdXR1cmVzOltoLkxvZ29JZCxoLk5hbWUsIlJlY29tbWVuZC5PdGhlciIsIkFEWCIsIkFPIiwiQVRSIiwiQ0NJMjAiLCJNQUNELm1hY2QiLCJNQUNELnNpZ25hbCIsIk1vbSIsIlJTSSIsIlN0b2NoLksiLCJTdG9jaC5EIiwiZGVzY3JpcHRpb24iLCJ0eXBlIl0sY3J5cHRvOltoLkJhc2VDdXJyZW5jeUxvZ29JZCxoLkN1cnJlbmN5TG9nb0lkLGguTmFtZSwiUmVjb21tZW5kLk90aGVyIiwiQURYIiwiQU8iLCJBVFIiLCJDQ0kyMCIsIk1BQ0QubWFjZCIsIk1BQ0Quc2lnbmFsIiwiTW9tIiwiUlNJIiwiU3RvY2guSyIsIlN0b2NoLkQiLCJkZXNjcmlwdGlvbiIsInR5cGUiXSxjcnlwdG9fbWt0OltoLkJhc2VDdXJyZW5jeUxvZ29JZCxoLlNlY3RvciwiUmVjb21tZW5kLk90aGVyIiwiQURYIiwiQU8iLCJBVFIiLCJDQ0kyMCIsIk1BQ0QubWFjZCIsIk1BQ0Quc2lnbmFsIiwiTW9tIiwiUlNJIiwiU3RvY2guSyIsIlN0b2NoLkQiLCJkZXNjcmlwdGlvbiIsInR5cGUiXSxjcnlwdG9fbWt0X2J5X3N5bWJvbDpbaC5DdXJyZW5jeUxvZ29JZCxoLk5hbWUsIlJlY29tbWVuZC5PdGhlciIsIkFEWCIsIkFPIiwiQVRSIiwiQ0NJMjAiLCJNQUNELm1hY2QiLCJNQUNELnNpZ25hbCIsIk1vbSIsIlJTSSIsIlN0b2NoLksiLCJTdG9jaC5EIiwiZGVzY3JpcHRpb24iLCJ0eXBlIl0sY3J5cHRvX2J5X3N5bWJvbDpbaC5DdXJyZW5jeUxvZ29JZCxoLk5hbWUsImV4Y2hhbmdlIiwiUmVjb21tZW5kLk90aGVyIiwiQURYIiwiQU8iLCJBVFIiLCJDQ0kyMCIsIk1BQ0QubWFjZCIsIk1BQ0Quc2lnbmFsIiwiTW9tIiwiUlNJIiwiU3RvY2guSyIsIlN0b2NoLkQiLCJkZXNjcmlwdGlvbiIsInR5cGUiXSxjZmQ6W2guTG9nb0lkLGguTmFtZSwiUmVjb21tZW5kLk90aGVyIiwiQURYIiwiQU8iLCJBVFIiLCJDQ0kyMCIsIk1BQ0QubWFjZCIsIk1BQ0Quc2lnbmFsIiwiTW9tIiwiUlNJIiwiU3RvY2guSyIsIlN0b2NoLkQiLCJkZXNjcmlwdGlvbiIsInR5cGUiXSxjdXJyZW5jeTpbaC5Mb2dvSWQsaC5OYW1lLCJSZWNvbW1lbmQuT3RoZXIiLCJBRFgiLCJBTyIsIkFUUiIsIkNDSTIwIiwiTUFDRC5tYWNkIiwiTUFDRC5zaWduYWwiLCJNb20iLCJSU0kiLCJTdG9jaC5LIiwiU3RvY2guRCIsImRlc2NyaXB0aW9uIiwidHlwZSJdLGJvbmRzOltoLkxvZ29JZCxoLk5hbWUsIlJlY29tbWVuZC5PdGhlciIsIkFEWCIsIkFPIiwiQVRSIiwiQ0NJMjAiLCJNQUNELm1hY2QiLCJNQUNELnNpZ25hbCIsIk1vbSIsIlJTSSIsIlN0b2NoLksiLCJTdG9jaC5EIiwiZGVzY3JpcHRpb24iLCJ0eXBlIl19LGNvbnRlbnQ6W10sc2NyZWVuZXJzOltkLlN0b2NrLGQuU3RvY2tDb21wYWN0LGQuRm9yZXgsZC5GdXR1cmVzLGQuQ29udGludW91c0Z1dHVyZXMsZC5DZmQsZC5DcnlwdG8sZC5DcnlwdG9Na3QsZC5DcnlwdG9Na3RCeVN5bWJvbCxkLkNyeXB0b0J5U3ltYm9sLGQuQ3VycmVuY3ksZC5Cb25kcyxkLlByZU1hcmtldCxkLlBvc3RNYXJrZXRdLHNob3dPbldpZGdldDohMH0se2lkOiJtb3ZpbmdfYXZlcmFnZXMiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDExNTI3NCkpLHNjcmVlbmVyVHlwZUNvbnRlbnQ6ewpzdG9jazpbaC5Mb2dvSWQsaC5OYW1lLCJSZWNvbW1lbmQuTUEiLCJjbG9zZSIsIlNNQTIwIiwiU01BNTAiLCJTTUEyMDAiLCJCQi51cHBlciIsIkJCLmxvd2VyIiwiZGVzY3JpcHRpb24iLCJ0eXBlIl0sZm9yZXg6W2guQmFzZUN1cnJlbmN5TG9nb0lkLGguQ3VycmVuY3lMb2dvSWQsaC5OYW1lLCJSZWNvbW1lbmQuTUEiLCJjbG9zZSIsIlNNQTIwIiwiU01BNTAiLCJTTUEyMDAiLCJCQi51cHBlciIsIkJCLmxvd2VyIiwiZGVzY3JpcHRpb24iLCJ0eXBlIl0sZnV0dXJlczpbaC5Mb2dvSWQsaC5OYW1lLCJSZWNvbW1lbmQuTUEiLCJjbG9zZSIsIlNNQTIwIiwiU01BNTAiLCJTTUEyMDAiLCJCQi51cHBlciIsIkJCLmxvd2VyIiwiZGVzY3JpcHRpb24iLCJ0eXBlIl0sY29udGludW91c19mdXR1cmVzOltoLkxvZ29JZCxoLk5hbWUsIlJlY29tbWVuZC5NQSIsImNsb3NlIiwiU01BMjAiLCJTTUE1MCIsIlNNQTIwMCIsIkJCLnVwcGVyIiwiQkIubG93ZXIiLCJkZXNjcmlwdGlvbiIsInR5cGUiXSxjcnlwdG86W2guQmFzZUN1cnJlbmN5TG9nb0lkLGguQ3VycmVuY3lMb2dvSWQsaC5OYW1lLCJSZWNvbW1lbmQuTUEiLCJjbG9zZSIsIlNNQTIwIiwiU01BNTAiLCJTTUEyMDAiLCJCQi51cHBlciIsIkJCLmxvd2VyIiwiZGVzY3JpcHRpb24iLCJ0eXBlIl0sY3J5cHRvX21rdDpbaC5CYXNlQ3VycmVuY3lMb2dvSWQsaC5TZWN0b3IsIlJlY29tbWVuZC5NQSIsImNsb3NlIiwiU01BMjAiLCJTTUE1MCIsIlNNQTIwMCIsIkJCLnVwcGVyIiwiQkIubG93ZXIiLCJkZXNjcmlwdGlvbiIsInR5cGUiXSxjcnlwdG9fbWt0X2J5X3N5bWJvbDpbaC5DdXJyZW5jeUxvZ29JZCxoLk5hbWUsIlJlY29tbWVuZC5NQSIsImNsb3NlIiwiU01BMjAiLCJTTUE1MCIsIlNNQTIwMCIsIkJCLnVwcGVyIiwiQkIubG93ZXIiLCJkZXNjcmlwdGlvbiIsInR5cGUiXSxjcnlwdG9fYnlfc3ltYm9sOltoLkN1cnJlbmN5TG9nb0lkLGguTmFtZSwiZXhjaGFuZ2UiLCJSZWNvbW1lbmQuTUEiLCJjbG9zZSIsIlNNQTIwIiwiU01BNTAiLCJTTUEyMDAiLCJCQi51cHBlciIsIkJCLmxvd2VyIiwiZGVzY3JpcHRpb24iLCJ0eXBlIl0sY2ZkOltoLkxvZ29JZCxoLk5hbWUsIlJlY29tbWVuZC5NQSIsImNsb3NlIiwiU01BMjAiLCJTTUE1MCIsIlNNQTIwMCIsIkJCLnVwcGVyIiwiQkIubG93ZXIiLCJkZXNjcmlwdGlvbiIsInR5cGUiXSxjdXJyZW5jeTpbaC5Mb2dvSWQsaC5OYW1lLCJSZWNvbW1lbmQuTUEiLCJjbG9zZSIsIlNNQTIwIiwiU01BNTAiLCJTTUEyMDAiLCJCQi51cHBlciIsIkJCLmxvd2VyIiwiZGVzY3JpcHRpb24iLCJ0eXBlIl0sYm9uZHM6W2guTG9nb0lkLGguTmFtZSwiUmVjb21tZW5kLk1BIiwiY2xvc2UiLCJTTUEyMCIsIlNNQTUwIiwiU01BMjAwIiwiQkIudXBwZXIiLCJCQi5sb3dlciIsImRlc2NyaXB0aW9uIiwidHlwZSJdfSxjb250ZW50OltdLHNjcmVlbmVyczpbZC5TdG9jayxkLlN0b2NrQ29tcGFjdCxkLkZvcmV4LGQuRnV0dXJlcyxkLkNvbnRpbnVvdXNGdXR1cmVzLGQuQ2ZkLGQuQ3J5cHRvLGQuQ3J5cHRvTWt0LGQuQ3J5cHRvTWt0QnlTeW1ib2wsZC5DcnlwdG9CeVN5bWJvbCxkLkN1cnJlbmN5LGQuQm9uZHMsZC5QcmVNYXJrZXQsZC5Qb3N0TWFya2V0XSxzaG93T25XaWRnZXQ6ITB9XSxtPVtoLkxvZ29JZCwibmFtZSIsIm1hcmtldF9jYXBfYmFzaWMiLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfbmV4dF9mcSIsImVhcm5pbmdzX3Blcl9zaGFyZV9mcSIsImVwc19zdXJwcmlzZV9mcSIsImVwc19zdXJwcmlzZV9wZXJjZW50X2ZxIiwicmV2ZW51ZV9mb3JlY2FzdF9uZXh0X2ZxIiwicmV2ZW51ZV9mcSIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlIiwiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2NhbGVuZGFyX2RhdGUiLCJlYXJuaW5nc19yZWxlYXNlX25leHRfdGltZSIsImRlc2NyaXB0aW9uIiwidHlwZSJdO2Z1bmN0aW9uIGcoZSl7Y29uc3QgdD17c2NyZWVuZXJUeXBlOmQuU3RvY2ssbWFya2V0czpbInN0b2NrIl0saXNDb21wYWN0OiExLHN1YnR5cGU6IiIsaXNPbldpZGdldDohMX07bGV0IG89cDtjb25zdCBpPU9iamVjdC5hc3NpZ24odCxlKSx7c2NyZWVuZXJUeXBlOm4saXNDb21wYWN0OnMsc3VidHlwZTphLGlzT25XaWRnZXQ6bH09aSx7bWFya2V0czpjfT1pO3JldHVybiBvPW8uZmlsdGVyKChlPT57aWYobj09PWQuU3RvY2spe2NvbnN0IHQ9cz9gJHtufV9jb21wYWN0YDpuO3JldHVybiBlLnNjcmVlbmVycy5pbmNsdWRlcyh0KX1yZXR1cm4gZS5zY3JlZW5lcnMuaW5jbHVkZXMobil9KSksbCYmKG89by5maWx0ZXIoKGU9PiEwPT09ZS5zaG93T25XaWRnZXQpKSksby5mb3JFYWNoKChlPT57aWYodm9pZCAwIT09ZS5zY3JlZW5lclR5cGVDb250ZW50KXtjb25zdCBvPWUuc2NyZWVuZXJUeXBlQ29udGVudFsoMCxyLmVuc3VyZURlZmluZWQpKG4pXXx8ZS5zY3JlZW5lclR5cGVDb250ZW50LnN0b2NrO2lmKHQ9byxBcnJheS5pc0FycmF5KHQpKWUuY29udGVudD0oMCxyLmVuc3VyZURlZmluZWQpKG8pO2Vsc2V7Y29uc3QgdD1PYmplY3Qua2V5cyhvKSxpPWMucmVkdWNlKCgoZSx0KT0+KGUucHVzaChgJHsoMCxyLmVuc3VyZURlZmluZWQpKHQpfV8keygwLHIuZW5zdXJlRGVmaW5lZCkoYSl9YCksZS5wdXNoKGAkeygwLHIuZW5zdXJlRGVmaW5lZCkoYSl9YCksZS5wdXNoKCgwLHIuZW5zdXJlRGVmaW5lZCkodCkpLGUpKSxbXSksbj1mdW5jdGlvbihlLHQpe2Zvcihjb25zdCBvIG9mIGUpaWYodC5pbmNsdWRlcyhvKSlyZXR1cm4gbztyZXR1cm4ic3RvY2sifShbLi4ubmV3IFNldChpKV0sdCk7ZS5jb250ZW50PW9bbl19fXZhciB0O2wmJihlLmNvbnRlbnQ9ZS5jb250ZW50LmZpbHRlcigoZT0+ImRlc2NyaXB0aW9uIiE9PWUpKSl9KSksb312YXIgdixmLHksYj1vKDk3MzA0MSk7IWZ1bmN0aW9uKGUpe2UuQW1lcmljYT0iYW1lcmljYSIsZS5BcmdlbnRpbmE9ImFyZ2VudGluYSIsZS5BdXN0cmFsaWE9ImF1c3RyYWxpYSIsZS5BdXN0cmlhPSJhdXN0cmlhIixlLkJhaHJhaW49ImJhaHJhaW4iLGUuQmFuZ2xhZGVzaD0iYmFuZ2xhZGVzaCIsZS5CZWxnaXVtPSJiZWxnaXVtIixlLkJ1bGdhcmlhPSJidWxnYXJpYSIsCmUuQnJhemlsPSJicmF6aWwiLGUuQ2FuYWRhPSJjYW5hZGEiLGUuQ2hpbGU9ImNoaWxlIixlLkNoaW5hPSJjaGluYSIsZS5Db2xvbWJpYT0iY29sb21iaWEiLGUuQ3JvYXRpYT0iY3JvYXRpYSIsZS5DeXBydXM9ImN5cHJ1cyIsZS5DemVjaD0iY3plY2giLGUuRGVubWFyaz0iZGVubWFyayIsZS5FZ3lwdD0iZWd5cHQiLGUuRXN0b25pYT0iZXN0b25pYSIsZS5GaW5sYW5kPSJmaW5sYW5kIixlLkZyYW5jZT0iZnJhbmNlIixlLkdlcm1hbnk9Imdlcm1hbnkiLGUuR3JlZWNlPSJncmVlY2UiLGUuSG9uZ0tvbmc9Imhvbmdrb25nIixlLkh1bmdhcnk9Imh1bmdhcnkiLGUuSWNlbGFuZD0iaWNlbGFuZCIsZS5JbmRpYT0iaW5kaWEiLGUuSW5kb25lc2lhPSJpbmRvbmVzaWEiLGUuSXJlbGFuZD0iaXJlbGFuZCIsZS5Jc3JhZWw9ImlzcmFlbCIsZS5JdGFseT0iaXRhbHkiLGUuSmFwYW49ImphcGFuIixlLktlbnlhPSJrZW55YSIsZS5LdXdhaXQ9Imt1d2FpdCIsZS5MYXR2aWE9ImxhdHZpYSIsZS5MaXRodWFuaWE9ImxpdGh1YW5pYSIsZS5MdXhlbWJvdXJnPSJsdXhlbWJvdXJnIixlLk1hbGF5c2lhPSJtYWxheXNpYSIsZS5NZXhpY289Im1leGljbyIsZS5Nb3JvY2NvPSJtb3JvY2NvIixlLk5ldGhlcmxhbmRzPSJuZXRoZXJsYW5kcyIsZS5OZXdaZWFsYW5kPSJuZXd6ZWFsYW5kIixlLk5pZ2VyaWE9Im5pZ2VyaWEiLGUuTm9yd2F5PSJub3J3YXkiLGUuUGFraXN0YW49InBha2lzdGFuIixlLlBlcnU9InBlcnUiLGUuUGhpbGlwcGluZXM9InBoaWxpcHBpbmVzIixlLlBvbGFuZD0icG9sYW5kIixlLlBvcnR1Z2FsPSJwb3J0dWdhbCIsZS5RYXRhcj0icWF0YXIiLGUuUm9tYW5pYT0icm9tYW5pYSIsZS5SdXNzaWE9InJ1c3NpYSIsZS5TYXVkaUFyYWJpYT0ia3NhIixlLlNlcmJpYT0ic2VyYmlhIixlLlNpbmdhcG9yZT0ic2luZ2Fwb3JlIixlLlNsb3Zha2lhPSJzbG92YWtpYSIsZS5TbG92ZW5pYT0ic2xvdmVuaWEiLGUuU291dGhBZnJpY2E9InJzYSIsZS5Tb3V0aEtvcmVhPSJrb3JlYSIsZS5TcGFpbj0ic3BhaW4iLGUuU3JpTGFua2E9InNyaWxhbmthIixlLlN3ZWRlbj0ic3dlZGVuIixlLlN3aXR6ZXJsYW5kPSJzd2l0emVybGFuZCIsZS5UYWl3YW49InRhaXdhbiIsZS5UaGFpbGFuZD0idGhhaWxhbmQiLGUuVHVuaXNpYT0idHVuaXNpYSIsZS5UdXJrZXk9InR1cmtleSIsZS5VQUU9InVhZSIsZS5VSz0idWsiLGUuVmVuZXp1ZWxhPSJ2ZW5lenVlbGEiLGUuVmlldG5hbT0idmlldG5hbSJ9KHZ8fCh2PXt9KSksZnVuY3Rpb24oZSl7ZS5Gb3JleD0iZm9yZXgiLGUuQ3J5cHRvPSJjcnlwdG8iLGUuQ29pbj0iY29pbiIsZS5DRkQ9ImNmZCIsZS5Cb25kcz0iYm9uZHMiLGUuQm9uZD0iYm9uZCIsZS5GdXR1cmVzPSJmdXR1cmVzIixlLk9wdGlvbnM9Im9wdGlvbnMifShmfHwoZj17fSkpLGZ1bmN0aW9uKGUpe2UuR2xvYmFsPSJnbG9iYWwifSh5fHwoeT17fSkpO3YuQmVsZ2l1bSx2LkN5cHJ1cyx2LkRlbm1hcmssdi5Fc3RvbmlhLHYuRmlubGFuZCx2LkZyYW5jZSx2Lkdlcm1hbnksdi5HcmVlY2Usdi5IdW5nYXJ5LHYuSWNlbGFuZCx2Lkl0YWx5LHYuTGF0dmlhLHYuTGl0aHVhbmlhLHYuTHV4ZW1ib3VyZyx2Lk5ldGhlcmxhbmRzLHYuTm9yd2F5LHYuUG9sYW5kLHYuUG9ydHVnYWwsdi5Sb21hbmlhLHYuUnVzc2lhLHYuU2VyYmlhLHYuU2xvdmFraWEsdi5TcGFpbix2LlN3ZWRlbix2LlN3aXR6ZXJsYW5kLHYuVHVya2V5LHYuVUssdi5CZWxnaXVtLHYuQ3lwcnVzLHYuRGVubWFyayx2LkVzdG9uaWEsdi5GaW5sYW5kLHYuRnJhbmNlLHYuR2VybWFueSx2LkdyZWVjZSx2Lkh1bmdhcnksdi5JdGFseSx2LkxhdHZpYSx2LkxpdGh1YW5pYSx2Lkx1eGVtYm91cmcsdi5OZXRoZXJsYW5kcyx2LlBvbGFuZCx2LlBvcnR1Z2FsLHYuUm9tYW5pYSx2LlNsb3Zha2lhLHYuU3BhaW4sdi5Td2VkZW47dmFyIFM9byg5NjAyMjkpO2xldCB3PW51bGw7Y29uc3QgQz12LkFtZXJpY2E7ZnVuY3Rpb24gayhlKXtjb25zdCB0PWV8fHdpbmRvdy5sb2NhbGU7cmV0dXJuIHQmJih3fHwodz1PYmplY3QuZW50cmllcygoMCxTLmdldFNjcmVlbmVyQ291bnRyaWVzTWFwKSgpKS5yZWR1Y2UoKChlLFt0LG9dKT0+by5zY3JlZW5lck5hbWU/KGVbby50dkxvY2FsZXx8dF09by5zY3JlZW5lck5hbWUsZSk6ZSkse30pLHcpKVt0XXx8Q31jb25zdCBUPW8oMjU1NTE2KSxFPW8oMzg5OTk0KSx4PXt9LEE9bmV3IE1hcChbWyJ1YWUiLCgpPT5vLmkxOG5leHQobnVsbCx2b2lkIDAsbygxNjMxMTApKV1dKTtmb3IoY29uc3QgZSBvZiBFKXtjb25zdCB0PVRbZV07aWYodCYmdC5zY3JlZW5lck5hbWUpe2NvbnN0IG89QS5oYXModC5zY3JlZW5lck5hbWUpP0EuZ2V0KHQuc2NyZWVuZXJOYW1lKTooKT0+KDAsYi50cmllc1RyYW5zbGF0ZUNvdW50cmllTmFtZSkodC50aXRsZSk7eFt0LnNjcmVlbmVyTmFtZV09e2ZsYWc6ZSxnZXQgdGl0bGUoKXtyZXR1cm4gbygpfSxzdG9ja3M6dC5leGNoYW5nZXNTdG9ja3N8fFtdLHRpbWV6b25lOnQuc2NyZWVuZXJUaW1lem9uZSxncm91cDp0Lmdyb3VwLGNvdW50cnk6ZX19fWNvbnN0IE09byg4MTkyOTApLEk9e2ZvcmV4OntpY29uOmA8c3BhbiBjbGFzcz0idHYtc2NyZWVuZXItbWFya2V0LXNlbGVjdF9faXRlbS1mb3JleCI+JHtvKDU2NzI0NSl9PC9zcGFuPmAsZ2V0IHRpdGxlKCl7cmV0dXJuIG8uaTE4bmV4dChudWxsLHZvaWQgMCxvKDI1NTA5MykpfSxzdG9ja3M6W119fSxSPXtjcnlwdG86e2ljb246YDxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lci1tYXJrZXQtc2VsZWN0X19pdGVtLWJpdGNvaW4iPiR7TX08L3NwYW4+YCxnZXQgdGl0bGUoKXtyZXR1cm4gby5pMThuZXh0KG51bGwsdm9pZCAwLG8oMjg0MDA0KSl9LHN0b2NrczpbXX19O2Z1bmN0aW9uIEYoZSl7cmV0dXJuInN0b2NrIj09PWU/eDoiZm9yZXgiPT09ZT9JOiJjcnlwdG8iPT09ZT9SOnh9Y29uc3QgTD17YW1lcmljYTp7bWFya2V0X2NhcF9iYXNpYzpbNWU3LDNlOCwyZTksMWUxMCw1ZTEwLDFlMTEsMmUxMl0sdm9sdW1lOls1ZTQsMWU1LDVlNSw3NWU0LDFlNiwyZTYsNWU2LDFlNywyZTcsNWU3XSwKYXZlcmFnZV92b2x1bWVfMTBkX2NhbGM6WzVlNCwxZTUsNWU1LDc1ZTQsMWU2LDJlNiw1ZTYsMWU3LDJlNyw1ZTddLGF2ZXJhZ2Vfdm9sdW1lXzMwZF9jYWxjOls1ZTQsMWU1LDVlNSw3NWU0LDFlNiwyZTYsNWU2LDFlNywyZTcsNWU3XSxhdmVyYWdlX3ZvbHVtZV82MGRfY2FsYzpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDVlN10sYXZlcmFnZV92b2x1bWVfOTBkX2NhbGM6WzVlNCwxZTUsNWU1LDc1ZTQsMWU2LDJlNiw1ZTYsMWU3LDJlNyw1ZTddLHJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYzpbMCw1LDEwLDE1LDIwLDUwLDc1LDEwMF0scHJlbWFya2V0X3ZvbHVtZTpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDVlN10scG9zdG1hcmtldF92b2x1bWU6WzVlNCwxZTUsNWU1LDc1ZTQsMWU2LDJlNiw1ZTYsMWU3LDJlNyw1ZTddLGNoYW5nZV9hYnM6Wy0xMDAsLTUwLC0yMCwtMTAsMCwxMCwyMCw1MCwxMDBdLGNoYW5nZTpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sb3BlbjpbMTAsMjAsNTAsMTAwXSxjbG9zZTpbMTAsMjAsNTAsMTAwXSxoaWdoOlsxMCwyMCw1MCwxMDBdLGxvdzpbMTAsMjAsNTAsMTAwXSxnYXA6Wy01MCwtMjAsLTEwLDAsMTAsMjAsNTBdLHByaWNlX2Vhcm5pbmdzX3R0bTpbMCw1LDEwLDE1LDIwLDI1LDMwLDM1LDQwLDQ1LDUwXSxwcmljZV9lYXJuaW5nc190b19ncm93dGhfdHRtOlswLDEsMiwzXSxwcmljZV9zYWxlc19yYXRpbzpbMCw1LDEwLDE1LDIwLDI1LDMwLDM1LDQwLDQ1LDUwXSxyZXR1cm5fb25fYXNzZXRzOlstNTAsLTMwLC0yMCwtMTUsLTEwLC01LDAsNSwxMCwxNSwyMCwzMCw1MF0scmV0dXJuX29uX2VxdWl0eTpbLTUwLC0zMCwtMjAsLTE1LC0xMCwtNSwwLDUsMTAsMTUsMjAsMzAsNTBdLGRlYnRfdG9fZXF1aXR5OlsuMSwuMiwuMywuNCwuNSwuNiwuNywuOCwuOSwxXSxjdXJyZW50X3JhdGlvOlswLDUsMTAsMTUsMjAsMjUsMzAsMzUsNDAsNDUsNTBdLHF1aWNrX3JhdGlvOlswLDUsMTAsMTUsMjAsMjUsMzAsMzUsNDAsNDUsNTBdLHByaWNlX2Jvb2tfZnE6WzAsMSwyLDMsNCw1LDYsNyw4LDksMTBdLHByaWNlX2Jvb2tfcmF0aW86WzAsMSwyLDMsNCw1LDYsNyw4LDksMTBdLHByaWNlX2ZyZWVfY2FzaF9mbG93X3R0bTpbMCw1LDEwLDE1LDIwLDI1LDMwLDM1LDQwLDQ1LDUwLDYwLDcwLDgwLDkwLDEwMF0sYmV0YV8xX3llYXI6Wy0yLC0xLjUsLTEsLS41LDAsLjUsMSwxLjUsMl0sb3BlcmF0aW5nX21hcmdpbjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sZWFybmluZ3NfcGVyX3NoYXJlX2Jhc2ljX3R0bTpbLTEwMCwtNTAsLTIwLC0xMCwwLDEwLDIwLDUwLDEwMF0sZWJpdGRhOls1ZTUsMWU2LDVlNiwxZTcsNWU3LDFlOCw1ZTgsMWU5LDJlOSw1ZTksMWUxMCwyNWU5LDVlMTBdLGNoYW5nZV9mcm9tX29wZW46Wy01MCwtMjAsLTEwLDAsMTAsMjAsNTBdLCJQZXJmLlciOlstNTAsLTIwLC0xMCwwLDEwLDIwLDUwXSwiUGVyZi4xTSI6Wy01MCwtMjAsLTEwLDAsMTAsMjAsNTBdLCJQZXJmLjNNIjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sIlBlcmYuNk0iOlstNTAsLTIwLC0xMCwwLDEwLDIwLDUwXSwiUGVyZi5ZIjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sIlBlcmYuWVREIjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sIlZvbGF0aWxpdHkuVyI6WzAsNSwxMCwxNSwyMCwzMCw1MCw3MF0sIlZvbGF0aWxpdHkuTSI6WzAsNSwxMCwxNSwyMCwzMCw1MCw3MF0sIlZvbGF0aWxpdHkuRCI6WzAsNSwxMCwxNSwyMCwzMCw1MCw3MF0sQURYOlsxMCwyMCwzMCw0MCw1MCw2MCw3MCw4MCw5MF0sQVRSOlsuMjUsLjUsLjc1LDEsMS41LDIsMi41LDMsMy41LDQsNC41LDVdLE1vbTpbLTMwLC0yMCwtMTUsLTEwLC01LDAsNSwxMCwxNSwyMCwzMF0sZ29vZHdpbGw6WzVlNywzZTgsMmU5LDFlMTAsMmUxMV0sbmV0X2RlYnQ6Wy0yZTExLC0xZTEwLC0yZTksLTNlOCwtNWU3LDVlNywzZTgsMmU5LDFlMTAsMmUxMV0sdG90YWxfZGVidDpbNWU3LDNlOCwyZTksMWUxMCwyZTExXSxyZXZlbnVlX3Blcl9lbXBsb3llZTpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDVlN10scmV0dXJuX29uX2ludmVzdGVkX2NhcGl0YWw6Wy0xMDAsLTUwLC0yMCwtMTAsMCwxMCwyMCw1MCwxMDBdLGFmdGVyX3RheF9tYXJnaW46Wy0xMDAsLTUwLC0yMCwtMTAsMCwxMCwyMCw1MCwxMDBdLHByZV90YXhfbWFyZ2luOlstMTAwLC01MCwtMjAsLTEwLDAsMTAsMjAsNTAsMTAwXSxncm9zc19tYXJnaW46Wy0xMDAsLTUwLC0yMCwtMTAsMCwxMCwyMCw1MCwxMDBdLGRpdmlkZW5kc19wYWlkOlstMmUxMSwtMWUxMCwtMmU5LC0zZTgsLTVlNywwXSxkaXZpZGVuZF95aWVsZF9yZWNlbnQ6WzAsNSwxMCwxNSwyMCwyNSw1MCwxMDBdLGJhc2ljX2Vwc19uZXRfaW5jb21lOlstMTAwLC01MCwtMjAsLTEwLDAsMTAsMjAsNTAsMTAwXSxuZXRfaW5jb21lOlstNWUxMCwtMWUxMCwtMmU5LC0zZTgsLTVlNyw1ZTcsM2U4LDJlOSwxZTEwLDJlMTFdLGdyb3NzX3Byb2ZpdDpbLTJlMTEsLTFlMTAsLTJlOSwtM2U4LC01ZTcsNWU3LDNlOCwyZTksMWUxMCwyZTExXSxncm9zc19wcm9maXRfZnE6Wy0yZTExLC0xZTEwLC0yZTksLTNlOCwtNWU3LDVlNywzZTgsMmU5LDFlMTAsMmUxMV0sbnVtYmVyX29mX3NoYXJlaG9sZGVyczpbMTAwLDUwMCwxZTMsMWU0LDFlNSwxZTZdLGZsb2F0X3NoYXJlc19vdXRzdGFuZGluZzpbNWU3LDNlOCwyZTksMWUxMCwyZTExXSx0b3RhbF9zaGFyZXNfb3V0c3RhbmRpbmdfZnVuZGFtZW50YWw6WzVlNywzZTgsMmU5LDFlMTAsMmUxMV0sdG90YWxfYXNzZXRzOls1ZTcsM2U4LDJlOSwxZTEwLDJlMTFdLHRvdGFsX2N1cnJlbnRfYXNzZXRzOls1ZTcsM2U4LDJlOSwxZTEwLDJlMTFdLHRvdGFsX3JldmVudWU6WzAsNWU3LDNlOCwyZTksMWUxMCwyZTExLDVlMTFdLHRvdGFsX2xpYWJpbGl0aWVzX2Z5Ols1ZTcsM2U4LDJlOSwxZTEwLDJlMTFdLHRvdGFsX2xpYWJpbGl0aWVzX2ZxOls1ZTcsM2U4LDJlOSwxZTEwLDJlMTFdLGVhcm5pbmdzX3Blcl9zaGFyZV9kaWx1dGVkX3R0bTpbLTEwMCwtNTAsLTIwLC0xMCwwLDEwLDIwLDUwLDEwMF0sCmVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9uZXh0X2ZxOlstMTAwLC01MCwtMjAsLTEwLDAsMTAsMjAsNTAsMTAwXSxlYXJuaW5nc19wZXJfc2hhcmVfZnE6Wy0xMDAsLTUwLC0yMCwtMTAsMCwxMCwyMCw1MCwxMDBdLGVudGVycHJpc2VfdmFsdWVfZWJpdGRhX3R0bTpbLTVlMywtMWUzLDAsMWUzLDVlM10sZW50ZXJwcmlzZV92YWx1ZV9mcTpbLTJlMTEsLTFlMTAsLTJlOSwtM2U4LC01ZTcsNWU3LDNlOCwyZTksMWUxMCwyZTExXSxlcHNfc3VycHJpc2VfZnE6Wy0xMDAsLTUwLC0yMCwtMTAsMCwxMCwyMCw1MCwxMDBdLGVwc19zdXJwcmlzZV9wZXJjZW50X2ZxOlstMzAsLTIwLC0xNSwtMTAsLTUsMCw1LDEwLDE1LDIwLDMwXSxwcmljZV9yZXZlbnVlX3R0bTpbMCw1LDEwLDUwLDEwMCwxZTMsNWUzLDFlNF0sbnVtYmVyX29mX2VtcGxveWVlczpbMTAwLDUwMCwxZTMsMWU0LDFlNSwxZTZdLGxhc3RfYW5udWFsX2VwczpbLTEwMCwtNTAsLTIwLC0xMCwwLDEwLDIwLDUwLDEwMF0sbGFzdF9hbm51YWxfcmV2ZW51ZTpbNWU3LDNlOCwyZTksMWUxMCwyZTExXSxDQ0kyMDpbLTEwMCwtNTAsLTIwLC0xMCwwLDEwLDIwLDUwLDEwMF0sQ2hhaWtpbk1vbmV5RmxvdzpbLTEsLS45LC0uOCwtLjcsLS42LC0uNSwtLjQsLS4zLC0uMiwtLjEsMCwuMSwuMiwuMywuNCwuNSwuNiwuNywuOCwuOSwxXSxNb25leUZsb3c6WzAsNSwxMCwxNSwyNSw1MCwxMDBdLCJWYWx1ZS5UcmFkZWQiOls1ZTQsMWU1LDVlNSw3NWU0LDFlNiwyZTYsNWU2LDFlNywyZTcsNWU3LDFlOCw1ZTgsNzVlN119LHVrOnthdmVyYWdlX3ZvbHVtZV8xMGRfY2FsYzpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDVlNywxZThdLG9wZW46WzEwLDIwLDUwLDEwMCwyMDAsNTAwLDFlMywyZTMsNWUzLDFlNCwyZTRdLGNsb3NlOlsxMCwyMCw1MCwxMDAsMjAwLDUwMCwxZTMsMmUzLDVlMywxZTQsMmU0XSxoaWdoOlsxMCwyMCw1MCwxMDAsMjAwLDUwMCwxZTMsMmUzLDVlMywxZTQsMmU0XSxsb3c6WzEwLDIwLDUwLDEwMCwyMDAsNTAwLDFlMywyZTMsNWUzLDFlNCwyZTRdLGN1cnJlbnRfcmF0aW86WzAsNSwxMCwxNSwyMCwyNSwzMCwzNSw0MCw0NSw1MCw3NSwxMDBdLHRvdGFsX3NoYXJlc19vdXRzdGFuZGluZ19mdW5kYW1lbnRhbDpbNWU2LDFlNyw1ZTcsM2U4LDJlOSwxZTEwLDVlMTAsMWUxMV0sZGl2aWRlbmRzX3BhaWQ6Wy0yZTExLC0xNWUxMCwtNWUxMCwtMWUxMCwtMmU5LC0zZTgsLTFlOCwtNWU3LDBdLGdyb3NzX3Byb2ZpdDpbLTFlMTAsLTJlOSwtM2U4LC01ZTcsNWU3LDNlOCwyZTksMWUxMCwyZTExXX0saW5kaWE6e21hcmtldF9jYXBfYmFzaWM6WzFlNyw1ZTcsM2U4LDJlOSwxZTEwLDJlMTEsNWUxMSwxZTEyLDJlMTJdLG9wZW46WzEwLDIwLDUwLDEwMCwyMDAsNTAwLDFlMywyZTMsNWUzLDFlNCwyZTRdLGNsb3NlOlsxMCwyMCw1MCwxMDAsMjAwLDUwMCwxZTMsMmUzLDVlMywxZTQsMmU0XSxoaWdoOlsxMCwyMCw1MCwxMDAsMjAwLDUwMCwxZTMsMmUzLDVlMywxZTQsMmU0XSxsb3c6WzEwLDIwLDUwLDEwMCwyMDAsNTAwLDFlMywyZTMsNWUzLDFlNCwyZTRdLHF1aWNrX3JhdGlvOlswLDUsMTAsMTUsMjAsMjUsMzAsMzUsNDAsNDUsNTAsMTAwLDUwMF0sY2hhbmdlX2Zyb21fb3BlbjpbLTIwLC0xMCwwLDEwLDIwLDUwXSxyZXZlbnVlX3Blcl9lbXBsb3llZTpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDVlNywxZTgsM2U4LDVlOF0sZGl2aWRlbmRzX3BhaWQ6Wy01ZTEwLC0xZTEwLC0yZTksLTNlOCwtMWU4LC01ZTcsMF0sZ3Jvc3NfcHJvZml0OlstMWUxMCwtMmU5LC0zZTgsLTVlNyw1ZTcsM2U4LDJlOSwxZTEwLDJlMTFdLHRvdGFsX3NoYXJlc19vdXRzdGFuZGluZ19mdW5kYW1lbnRhbDpbNWU3LDNlOCwyZTksNWU5LDFlMTBdLG51bWJlcl9vZl9lbXBsb3llZXM6WzEwMCw1MDAsMWUzLDFlNCwxZTUsMmU1XX0sc3BhaW46e21hcmtldF9jYXBfYmFzaWM6WzFlNywzZTcsNWU3LDFlOCwzZTgsNWU4LDFlOSwxZTEwLDVlMTBdLHZvbHVtZTpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTddLHJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYzpbMCwxLDIsMyw0LDUsMTBdLGNoYW5nZTpbLTEwLC01LC00LC0zLC0yLC0xLDAsMSwyLDMsNCw1LDEwXSxnYXA6Wy0xMCwtNSwtNCwtMywtMiwtMSwwLDEsMiwzLDQsNSwxMF0scXVpY2tfcmF0aW86WzAsMSwyLDMsNCw1LDEwXSxlYml0ZGE6WzVlNSwxZTYsNWU2LDFlNyw1ZTcsMWU4LDVlOCwxZTksMmU5LDVlOSwxZTEwLDE1ZTldLCJWb2xhdGlsaXR5LlciOlswLDUsMTAsMTUsMjBdLCJWb2xhdGlsaXR5Lk0iOlswLDUsMTAsMTUsMjBdLCJWb2xhdGlsaXR5LkQiOlswLDUsMTAsMTUsMjBdLE1vbTpbLTE1LC0xMCwtNSwwLDUsMTAsMTVdLGdvb2R3aWxsOls1ZTcsM2U4LDJlOSwxZTEwLDI1ZTldLHJldmVudWVfcGVyX2VtcGxveWVlOlsxZTUsNWU1LDc1ZTQsMWU2LDJlNiw1ZTYsMWU3LDJlN10sZGl2aWRlbmRzX3BhaWQ6Wy01ZTksLTJlOSwtM2U4LC0xZTgsLTVlNywwXSxncm9zc19wcm9maXQ6Wy0yZTksLTNlOCwtNWU3LDVlNywzZTgsMmU5LDFlMTAsMmUxMF0scHJpY2VfcmV2ZW51ZV90dG06WzAsNSwxMCw1MCwxMDBdfSxydXNzaWE6e21hcmtldF9jYXBfYmFzaWM6WzFlNyw1ZTcsM2U4LDJlOSwxZTEwLDJlMTEsNWUxMSwxZTEyLDJlMTJdLHZvbHVtZTpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDVlNywxZTgsMjVlNyw1ZTgsMWU5XSxhdmVyYWdlX3ZvbHVtZV8xMGRfY2FsYzpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDVlNywxZTgsMjVlNyw1ZTgsMWU5XSxyZWxhdGl2ZV92b2x1bWVfMTBkX2NhbGM6WzAsMSwyLDMsNCw1LDEwLDE1LDIwLDUwXSxjaGFuZ2U6Wy0zMCwtMjAsLTE1LC0xMCwtNSwtNCwtMywtMiwtMSwwLDEsMiwzLDQsNSwxMCwxNSwyMCwzMF0sb3BlbjpbMTAsMjAsNTAsMTAwLDIwMCw1MDAsMWUzLDJlMyw1ZTNdLGNsb3NlOlsxMCwyMCw1MCwxMDAsMjAwLDUwMCwxZTMsMmUzLDVlM10saGlnaDpbMTAsMjAsNTAsMTAwLDIwMCw1MDAsMWUzLDJlMyw1ZTNdLApsb3c6WzEwLDIwLDUwLDEwMCwyMDAsNTAwLDFlMywyZTMsNWUzXSxnYXA6Wy0xMCwtNSwtNCwtMywtMiwtMSwwLDEsMiwzLDQsNSwxMF0scXVpY2tfcmF0aW86WzAsMSwyLDMsNCw1LDEwLDE1LDIwXSxwcmljZV9mcmVlX2Nhc2hfZmxvd190dG06WzAsNSwxMCwxNSwyMCwyNSwzMCwzNSw0MCw0NSw1MF0sY2hhbmdlX2Zyb21fb3BlbjpbLTEwLC01LC00LC0zLC0yLC0xLDAsMSwyLDMsNCw1LDEwXSwiVm9sYXRpbGl0eS5XIjpbMCw1LDEwLDE1LDIwLDMwLDUwXSwiVm9sYXRpbGl0eS5NIjpbMCw1LDEwLDE1LDIwLDMwLDUwXSwiVm9sYXRpbGl0eS5EIjpbMCw1LDEwLDE1LDIwLDMwLDUwXSxnb29kd2lsbDpbMWU3LDVlNywzZTgsMmU5LDFlMTAsMWUxMV0scmV2ZW51ZV9wZXJfZW1wbG95ZWU6WzFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDNlN10sZGl2aWRlbmRzX3BhaWQ6Wy0xNWUxMCwtNWUxMCwtMWUxMCwtMmU5LC0zZTgsLTFlOCwtNWU3LDBdLGdyb3NzX3Byb2ZpdDpbLTFlMTAsLTJlOSwtM2U4LC01ZTcsNWU3LDNlOCwyZTksMWUxMCwyZTExXSxwcmljZV9yZXZlbnVlX3R0bTpbMCw1LDEwLDUwLDEwMF0sbnVtYmVyX29mX2VtcGxveWVlczpbMTAwLDUwMCwxZTMsMWU0LDFlNSw1ZTVdLGxhc3RfYW5udWFsX2VwczpbLTEwMCwtNTAsLTIwLC0xMCwwLDEwLDIwLDUwLDEwMCw1MDAsMWUzXX0sYXVzdHJhbGlhOnttYXJrZXRfY2FwX2Jhc2ljOls1ZTcsM2U4LDJlOSwxZTEwLDVlMTAsMWUxMSwxNWUxMF0sZWFybmluZ3NfcGVyX3NoYXJlX2Jhc2ljX3R0bTpbLTEwLC01LC00LC0zLC0yLC0xLDAsMSwyLDMsNCw1LDEwXSxlYml0ZGE6WzVlNSwxZTYsNWU2LDFlNyw1ZTcsMWU4LDVlOCwxZTksMmU5LDVlOSwxZTEwLDJlMTBdLGRpdmlkZW5kc19wYWlkOlstNWU5LC0yZTksLTNlOCwtNWU3LDBdfSxicmF6aWw6e21hcmtldF9jYXBfYmFzaWM6WzFlNyw1ZTcsM2U4LDJlOSwxZTEwLDJlMTEsNWUxMSwxZTEyXSx2b2x1bWU6WzVlNCwxZTUsNWU1LDc1ZTQsMWU2LDJlNiw1ZTYsMWU3LDJlN10sYXZlcmFnZV92b2x1bWVfMTBkX2NhbGM6WzVlNCwxZTUsNWU1LDc1ZTQsMWU2LDJlNiw1ZTYsMWU3LDJlN10scmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjOlswLDEsMiwzLDQsNSwxMCwxNSwyMCw1MF0sb3BlbjpbMTAsMjAsNTAsMTAwLDIwMCw1MDAsMWUzXSxjbG9zZTpbMTAsMjAsNTAsMTAwLDIwMCw1MDAsMWUzXSxoaWdoOlsxMCwyMCw1MCwxMDAsMjAwLDUwMCwxZTNdLGxvdzpbMTAsMjAsNTAsMTAwLDIwMCw1MDAsMWUzXSxlYXJuaW5nc19wZXJfc2hhcmVfYmFzaWNfdHRtOlstNTAsLTIwLC0xMCwwLDEwLDIwLDUwXSxjaGFuZ2VfZnJvbV9vcGVuOlstMjAsLTEwLDAsMTAsMjBdLCJWb2xhdGlsaXR5LlciOlswLDUsMTAsMTUsMjBdLCJWb2xhdGlsaXR5Lk0iOlswLDUsMTAsMTUsMjBdLGdvb2R3aWxsOls1ZTcsM2U4LDJlOSwxZTEwXSxyZXZlbnVlX3Blcl9lbXBsb3llZTpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNl0sZGl2aWRlbmRzX3BhaWQ6Wy0xZTEwLC0yZTksLTNlOCwtMWU4LC01ZTcsMF0sbmV0X2luY29tZTpbLTJlMTAsLTFlMTAsLTJlOSwtM2U4LC01ZTcsNWU3LDNlOCwyZTksMWUxMCwyZTEwXSxncm9zc19wcm9maXQ6Wy0xZTgsLTVlNyw1ZTcsM2U4LDJlOSwxZTEwLDFlMTFdLHRvdGFsX3NoYXJlc19vdXRzdGFuZGluZ19mdW5kYW1lbnRhbDpbNWU3LDNlOCwyZTksNWU5LDFlMTBdLHRvdGFsX2N1cnJlbnRfYXNzZXRzOls1ZTcsM2U4LDJlOSwxZTEwLDFlMTFdLHRvdGFsX3JldmVudWU6WzAsNWU3LDNlOCwyZTksMWUxMCwyZTExXSxwcmljZV9yZXZlbnVlX3R0bTpbMCw1LDEwLDUwLDEwMCwxZTNdLG51bWJlcl9vZl9lbXBsb3llZXM6WzEwMCw1MDAsMWUzLDFlNCwxZTVdLGxhc3RfYW5udWFsX2VwczpbLTEwMCwtNTAsLTIwLC0xMCwwLDEwLDIwXX0samFwYW46e21hcmtldF9jYXBfYmFzaWM6WzFlNyw1ZTcsM2U4LDJlOSwxZTEwLDJlMTEsNWUxMSwxZTEyLDJlMTIsNWUxMl0scHJpY2VfcmV2ZW51ZV90dG06WzAsNSwxMCw1MCwxMDBdLHJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYzpbMCw1LDEwLDE1LDIwLDUwXSxjaGFuZ2U6Wy0zMCwtMjAsLTEwLDAsMTAsMjAsMzBdLG9wZW46WzEwLDIwLDUwLDEwMCwyMDAsNTAwLDFlMywxZTQsMWU1XSxjbG9zZTpbMTAsMjAsNTAsMTAwLDIwMCw1MDAsMWUzLDFlNCwxZTVdLGhpZ2g6WzEwLDIwLDUwLDEwMCwyMDAsNTAwLDFlMywxZTQsMWU1XSxsb3c6WzEwLDIwLDUwLDEwMCwyMDAsNTAwLDFlMywxZTQsMWU1XSxnYXA6Wy0yMCwtMTAsMCwxMCwyMF0sZWJpdGRhOls1ZTUsMWU2LDVlNiwxZTcsNWU3LDFlOCw1ZTgsMWU5LDJlOSw1ZTksMWUxMCwyNWU5LDVlMTAsMWUxMSwyZTExLDVlMTFdLGNoYW5nZV9mcm9tX29wZW46Wy0yMCwtMTAsLTUsMCw1LDEwLDIwXSwiVm9sYXRpbGl0eS5XIjpbMCw1LDEwLDE1LDIwLDMwXSwiVm9sYXRpbGl0eS5NIjpbMCw1LDEwLDE1LDIwLDMwXSwiVm9sYXRpbGl0eS5EIjpbMCw1LDEwLDE1LDIwLDMwXSxyZXZlbnVlX3Blcl9lbXBsb3llZTpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsNWU3XX0sbmV3emVhbGFuZDp7bWFya2V0X2NhcF9iYXNpYzpbNWU3LDNlOCwyZTksMWUxMCw1ZTEwLDFlMTFdLHZvbHVtZTpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTddLGF2ZXJhZ2Vfdm9sdW1lXzEwZF9jYWxjOls1ZTQsMWU1LDVlNSw3NWU0LDFlNiwyZTYsNWU2LDFlN10scmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjOlswLDEsMiwzLDQsNSwxMCwxNV0sb3BlbjpbNSwxMCwyMCw1MF0sY2xvc2U6WzUsMTAsMjAsNTBdLGhpZ2g6WzUsMTAsMjAsNTBdLGxvdzpbNSwxMCwyMCw1MF0sY3VycmVudF9yYXRpbzpbMCw1LDEwLDE1LDIwLDI1XSxxdWlja19yYXRpbzpbMCw1LDEwLDE1LDIwLDI1XSxlYXJuaW5nc19wZXJfc2hhcmVfYmFzaWNfdHRtOlstMTAsLTUsLTQsLTMsLTIsLTEsMCwxLDIsMyw0LDUsMTBdLGViaXRkYTpbNWU1LDFlNiw1ZTYsMWU3LDVlNywxZTgsNWU4LDFlOSwyZTksNWU5LDFlMTAsMmUxMF0sY2hhbmdlX2Zyb21fb3BlbjpbLTIwLC0xNSwtMTAsLTUsMCw1LDEwLDE1LDIwXSwKIlZvbGF0aWxpdHkuVyI6WzAsMSwyLDMsNCw1LDEwLDE1LDIwLDMwXSwiVm9sYXRpbGl0eS5NIjpbMCwxLDIsMyw0LDUsMTAsMTUsMjAsMzBdLCJWb2xhdGlsaXR5LkQiOlswLDEsMiwzLDQsNSwxMCwxNSwyMCwzMF0sQVRSOlsuMjUsLjUsLjc1LDEsMS41LDJdLE1vbTpbLTUsLTQsLTMsLTIsLTEsMCwxLDIsMyw0LDVdLGdvb2R3aWxsOlsyNWU2LDVlNywxZTgsMjVlNyw1ZTgsMmU5XSxyZXZlbnVlX3Blcl9lbXBsb3llZTpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNl0sZGl2aWRlbmRzX3BhaWQ6Wy01ZTksLTJlOSwtM2U4LC01ZTcsMF0sYmFzaWNfZXBzX25ldF9pbmNvbWU6Wy01LC00LC0zLC0yLC0xLDAsMSwyLDMsNCw1XSxuZXRfaW5jb21lOlstNWUxMCwtMWUxMCwtMmU5LC0zZTgsLTVlNyw1ZTcsM2U4LDJlOSw1ZTldLGdyb3NzX3Byb2ZpdDpbMCwyNWU2LDVlNywyNWU3LDVlOCwyZTksMWUxMF0sdG90YWxfc2hhcmVzX291dHN0YW5kaW5nX2Z1bmRhbWVudGFsOls1ZTcsM2U4LDJlOSwxZTEwXSx0b3RhbF9jdXJyZW50X2Fzc2V0czpbNWU3LDNlOCwyZTksMWUxMF0sdG90YWxfcmV2ZW51ZTpbMCw1ZTcsM2U4LDJlOSwxZTEwLDI1ZTldLGVhcm5pbmdzX3Blcl9zaGFyZV9kaWx1dGVkX3R0bTpbLTUsLTQsLTMsLTIsLTEsMCwxLDIsMyw0LDVdLGVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9uZXh0X2ZxOlstNSwtNCwtMywtMiwtMSwwLDEsMiwzLDQsNV0sZWFybmluZ3NfcGVyX3NoYXJlX2ZxOlstNSwtNCwtMywtMiwtMSwwLDEsMiwzLDQsNV0scHJpY2VfcmV2ZW51ZV90dG06WzAsNSwxMCw1MCwxMDBdLG51bWJlcl9vZl9lbXBsb3llZXM6WzEwMCw1MDAsMWUzLDFlNCw1ZTRdLGxhc3RfYW5udWFsX2VwczpbLTUsLTQsLTMsLTIsLTEsMCwxLDIsMyw0LDVdLCJWYWx1ZS5UcmFkZWQiOls1ZTQsMWU1LDVlNSw3NWU0LDFlNiwyZTYsNWU2LDFlNywyZTddfSx0dXJrZXk6e21hcmtldF9jYXBfYmFzaWM6WzVlNiwxZTcsNWU3LDNlOCwyZTksMWUxMCwzZTEwLDVlMTBdLHJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYzpbMCwxLDIsMyw0LDUsMTAsMTVdLGNoYW5nZTpbLTIwLC0xNSwtMTAsLTUsMCw1LDEwLDE1LDIwXSxnYXA6Wy0yMCwtMTAsLTUsMCw1LDEwLDIwXSwiVm9sYXRpbGl0eS5XIjpbMCwxLDIsMyw0LDUsMTAsMTUsMjAsMzBdLCJWb2xhdGlsaXR5Lk0iOlswLDEsMiwzLDQsNSwxMCwxNSwyMCwzMF0sIlZvbGF0aWxpdHkuRCI6WzAsMSwyLDMsNCw1LDEwLDE1LDIwLDMwXSwiVmFsdWUuVHJhZGVkIjpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDVlN119LHN3aXR6ZXJsYW5kOnt2b2x1bWU6WzVlNCwxZTUsMjVlNCw1ZTUsNzVlNCwxZTYsMmU2LDVlNl0sYXZlcmFnZV92b2x1bWVfMTBkX2NhbGM6WzVlNCwxZTUsMjVlNCw1ZTUsNzVlNCwxZTYsMmU2LDVlNl0sY2hhbmdlOlstMjAsLTE1LC0xMCwtNSwwLDUsMTAsMTUsMjBdfSxob25na29uZzp7bWFya2V0X2NhcF9iYXNpYzpbNWU3LDNlOCwyZTksMWUxMCw1ZTEwLDFlMTEsMmUxMSwyNWUxMCw1ZTExLDc1ZTEwLDFlMTJdLHZvbHVtZTpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDVlNywxZTgsMjVlN10sYXZlcmFnZV92b2x1bWVfMTBkX2NhbGM6WzVlNCwxZTUsNWU1LDc1ZTQsMWU2LDJlNiw1ZTYsMWU3LDJlNyw1ZTcsMWU4LDI1ZTddfSx0YWl3YW46e2NoYW5nZTpbLTEwLC05LC04LC03LC02LC01LC00LC0zLC0yLC0xLDAsMSwyLDMsNCw1LDYsNyw4LDksMTBdLCJWb2xhdGlsaXR5LlciOlswLDEsMiwzLDQsNSwxMCwxNSwyMCwzMF0sIlZvbGF0aWxpdHkuTSI6WzAsMSwyLDMsNCw1LDEwLDE1LDIwLDMwXSwiVm9sYXRpbGl0eS5EIjpbMCwxLDIsMyw0LDUsMTAsMTUsMjAsMzBdfSxuZXRoZXJsYW5kczp7fSxiZWxnaXVtOnt9LHBvcnR1Z2FsOnt9LGZyYW5jZTp7fSxtZXhpY286e21hcmtldF9jYXBfYmFzaWM6WzFlNyw1ZTcsM2U4LDJlOSwxZTEwLDJlMTEsNWUxMSwxZTEyLDJlMTJdLGNoYW5nZTpbLTMwLC0yMCwtMTUsLTEwLC01LC00LC0zLC0yLC0xLDAsMSwyLDMsNCw1LDEwLDE1LDIwLDMwXSxvcGVuOlsxMCwyMCw1MCwxMDAsMjAwLDUwMCwxZTMsMmUzLDVlM10sY2xvc2U6WzEwLDIwLDUwLDEwMCwyMDAsNTAwLDFlMywyZTMsNWUzXSxoaWdoOlsxMCwyMCw1MCwxMDAsMjAwLDUwMCwxZTMsMmUzLDVlM10sbG93OlsxMCwyMCw1MCwxMDAsMjAwLDUwMCwxZTMsMmUzLDVlM119LGNhbmFkYTp7dm9sdW1lOls1ZTQsMWU1LDVlNSw3NWU0LDFlNiwyZTYsNWU2LDFlN119LGNvbG9tYmlhOnt9LHVhZTp7fSxuaWdlcmlhOnt9LHNpbmdhcG9yZTp7fSxnZXJtYW55Ont2b2x1bWU6WzVlNCwxZTUsNWU1LDc1ZTQsMWU2LDJlNiw1ZTYsMWU3LDI1ZTZdfSxwYWtpc3Rhbjp7fSxwZXJ1Ont9LHBvbGFuZDp7dm9sdW1lOls1ZTQsMWU1LDJlNSw1ZTUsNzVlNCwxZTYsMmU2XX0saXRhbHk6e30sYXJnZW50aW5hOnt2b2x1bWU6WzVlNCwxZTUsMmU1LDVlNSw3NWU0LDFlNiwyZTYsNWU2LDFlN119LGlzcmFlbDp7fSxpcmVsYW5kOnt9LGVneXB0Ont9LHNyaWxhbmthOnt9LHNlcmJpYTp7fSxjaGlsZTp7fSxjaGluYTp7fSxtYWxheXNpYTp7fSxtb3JvY2NvOnt9LGtzYTp7fSxiYWhyYWluOnt9LHFhdGFyOnt9LGluZG9uZXNpYTp7fSxmaW5sYW5kOnt9LGljZWxhbmQ6e30sZGVubWFyazp7fSxyb21hbmlhOnt9LGh1bmdhcnk6e30sc3dlZGVuOnt9LHNsb3Zha2lhOnt9LGxpdGh1YW5pYTp7fSxsdXhlbWJvdXJnOnt9LGVzdG9uaWE6e30sbGF0dmlhOnt9LHZpZXRuYW06e30scnNhOnt9LHRoYWlsYW5kOnt9LHR1bmlzaWE6e30sa29yZWE6e30sa2VueWE6e30sa3V3YWl0Ont9LG5vcndheTp7fSxwaGlsaXBwaW5lczp7fSxncmVlY2U6e30sdmVuZXp1ZWxhOnt9LGN5cHJ1czp7fSxiYW5nbGFkZXNoOnt9LGF1c3RyaWE6e30sY3plY2g6e319LEQ9e2ZvcmV4OntjaGFuZ2VfYWJzOlstNTAsLTIwLC0xMCwwLDEwLDIwLDUwXSxjaGFuZ2U6Wy01LC0xLC0uNSwtLjQsLS4zLC0uMiwtLjEsMCwtLjEsLjIsLjMsLjQsLjUsMSw1XSxiaWQ6WzUsMTAsMjAsNTAsMTAwLDUwMCwxZTMsNWUzXSwKYXNrOls1LDEwLDIwLDUwLDEwMCw1MDAsMWUzLDVlM10sb3BlbjpbNSwxMCwyMCw1MCwxMDAsNTAwLDFlMyw1ZTNdLGNsb3NlOls1LDEwLDIwLDUwLDEwMCw1MDAsMWUzLDVlM10saGlnaDpbNSwxMCwyMCw1MCwxMDAsNTAwLDFlMyw1ZTNdLGxvdzpbNSwxMCwyMCw1MCwxMDAsNTAwLDFlMyw1ZTNdLGNoYW5nZV9mcm9tX29wZW46Wy01LC0yLjUsLTEsLS41LC0uNCwtLjMsLS4yLC0uMSwwLC0uMSwuMiwuMywuNCwuNSwxLDIuNSw1XSwiUGVyZi5XIjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sIlBlcmYuMU0iOlstNTAsLTIwLC0xMCwwLDEwLDIwLDUwXSwiUGVyZi4zTSI6Wy01MCwtMjAsLTEwLDAsMTAsMjAsNTBdLCJQZXJmLjZNIjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sIlBlcmYuWSI6Wy01MCwtMjAsLTEwLDAsMTAsMjAsNTBdLCJQZXJmLllURCI6Wy01MCwtMjAsLTEwLDAsMTAsMjAsNTBdLCJWb2xhdGlsaXR5LlciOlswLDUsMTAsMTUsMjAsMzAsNTAsNzBdLCJWb2xhdGlsaXR5Lk0iOlswLDUsMTAsMTUsMjAsMzAsNTAsNzBdLCJWb2xhdGlsaXR5LkQiOlswLDUsMTAsMTUsMjAsMzAsNTAsNzBdLEFEWDpbMTAsMjAsMzAsNDAsNTAsNjAsNzAsODAsOTBdLEFUUjpbLjI1LC41LC43NSwxLDEuNSwyLDIuNSwzLDMuNSw0LDQuNSw1XSxNb206Wy0zMCwtMjAsLTE1LC0xMCwtNSwwLDUsMTAsMTUsMjAsMzBdLENDSTIwOlstMTAwLC01MCwtMjAsLTEwLDAsMTAsMjAsNTAsMTAwXX19LE89e2NyeXB0bzp7bWFya2V0X2NhcF9jYWxjOlsxZTQsMWU1LDVlNSwxZTYsMWU3LDNlOCwyZTksMWUxMCw1ZTEwLDFlMTFdLG1hcmtldF9jYXBfZGlsdXRlZF9jYWxjOlsxZTQsMWU1LDVlNSwxZTYsMWU3LDNlOCwyZTksMWUxMCw1ZTEwLDFlMTFdLHRvdGFsX3NoYXJlc19vdXRzdGFuZGluZzpbMWU2LDVlNiwxZTcsNWU3LDFlOCw1ZTgsMWU5LDVlOSwxZTEwLDVlMTAsMWUxMV0sdG90YWxfc2hhcmVzX2RpbHV0ZWQ6WzFlNiw1ZTYsMWU3LDVlNywxZTgsNWU4LDFlOSw1ZTksMWUxMCw1ZTEwLDFlMTFdLHRvdGFsX3ZhbHVlX3RyYWRlZDpbMWU0LDFlNSw1ZTUsMWU2LDFlNywzZTgsMmU5LDFlMTAsNWUxMF0sdm9sdW1lOls1ZTQsMWU1LDVlNSw3NWU0LDFlNiwyZTYsNWU2LDFlNywyZTcsNWU3XSxhdmVyYWdlX3ZvbHVtZV8xMGRfY2FsYzpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDVlNywzZTgsNWU4LDJlOV0scmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjOlswLC41LDEsMS41LDIsMi41LDVdLGNoYW5nZV9hYnM6Wy0xMDAsLTUwLC0yMCwtMTAsMCwxMCwyMCw1MCwxMDBdLGNoYW5nZTpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sYmlkOls1LDEwLDIwLDUwLDEwMCw1MDAsMWUzLDVlM10sYXNrOls1LDEwLDIwLDUwLDEwMCw1MDAsMWUzLDVlM10sb3BlbjpbNSwxMCwyMCw1MCwxMDAsNTAwLDFlMyw1ZTNdLGNsb3NlOls1LDEwLDIwLDUwLDEwMCw1MDAsMWUzLDVlM10saGlnaDpbNSwxMCwyMCw1MCwxMDAsNTAwLDFlMyw1ZTNdLGxvdzpbNSwxMCwyMCw1MCwxMDAsNTAwLDFlMyw1ZTNdLGNoYW5nZV9mcm9tX29wZW46Wy0xMCwtNSwtNCwtMywtMiwtMSwtLjUsMCwuNSwxLDIsMyw0LDUsMTBdLCJQZXJmLlciOlstNTAsLTIwLC0xMCwwLDEwLDIwLDUwXSwiUGVyZi4xTSI6Wy01MCwtMjAsLTEwLDAsMTAsMjAsNTBdLCJQZXJmLjNNIjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sIlBlcmYuNk0iOlstNTAsLTIwLC0xMCwwLDEwLDIwLDUwXSwiUGVyZi5ZIjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sIlBlcmYuWVREIjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sIlZvbGF0aWxpdHkuVyI6WzAsNSwxMCwxNSwyMCwzMCw1MCw3MF0sIlZvbGF0aWxpdHkuTSI6WzAsNSwxMCwxNSwyMCwzMCw1MCw3MF0sIlZvbGF0aWxpdHkuRCI6WzAsNSwxMCwxNSwyMCwzMCw1MCw3MF0sQURYOlsxMCwyMCwzMCw0MCw1MCw2MCw3MCw4MCw5MF0sQVRSOlsuMjUsLjUsLjc1LDEsMS41LDIsMi41LDMsMy41LDQsNC41LDVdLE1vbTpbLTMwLC0yMCwtMTUsLTEwLC01LDAsNSwxMCwxNSwyMCwzMF0sQ0NJMjA6Wy0xMDAsLTUwLC0yMCwtMTAsMCwxMCwyMCw1MCwxMDBdLCIyNGhfdm9sfDUiOls1ZTQsMWU1LDVlNSw3NWU0LDFlNiwyZTYsNWU2LDFlNywyZTcsNWU3XX19LE49e2NmZDp7dm9sdW1lOlsxZTMsNWUzLDFlNCw1ZTQsMWU1XSxhdmVyYWdlX3ZvbHVtZV8xMGRfY2FsYzpbNWUzLDFlNCw1ZTQsMWU1LDFlNiwxZTcsMWU4LDFlOV0scmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjOlswLC4xLC4yLC4zLC40LC41LC42LC43LC44LC45LDFdLGNoYW5nZV9hYnM6Wy01MCwtMjAsLTEwLDAsMTAsMjAsNTBdLGNoYW5nZTpbLTUsLTEsLS41LC0uNCwtLjMsLS4yLC0uMSwwLC0uMSwuMiwuMywuNCwuNSwxLDVdLGJpZDpbNSwxMCwyMCw1MCwxMDAsNTAwLDFlMyw1ZTNdLGFzazpbNSwxMCwyMCw1MCwxMDAsNTAwLDFlMyw1ZTNdLG9wZW46WzUsMTAsMjAsNTAsMTAwLDUwMCwxZTMsNWUzXSxjbG9zZTpbNSwxMCwyMCw1MCwxMDAsNTAwLDFlMyw1ZTNdLGhpZ2g6WzUsMTAsMjAsNTAsMTAwLDUwMCwxZTMsNWUzXSxsb3c6WzUsMTAsMjAsNTAsMTAwLDUwMCwxZTMsNWUzXSxjaGFuZ2VfZnJvbV9vcGVuOlstNSwtNCwtMywtMiwtMSwtLjUsMCwuNSwxLDIsMyw0LDVdLCJQZXJmLlciOlstNTAsLTIwLC0xMCwwLDEwLDIwLDUwXSwiUGVyZi4xTSI6Wy01MCwtMjAsLTEwLDAsMTAsMjAsNTBdLCJQZXJmLjNNIjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sIlBlcmYuNk0iOlstNTAsLTIwLC0xMCwwLDEwLDIwLDUwXSwiUGVyZi5ZIjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sIlBlcmYuWVREIjpbLTUwLC0yMCwtMTAsMCwxMCwyMCw1MF0sIlZvbGF0aWxpdHkuVyI6WzAsNSwxMCwxNSwyMCwzMCw1MCw3MF0sIlZvbGF0aWxpdHkuTSI6WzAsNSwxMCwxNSwyMCwzMCw1MCw3MF0sIlZvbGF0aWxpdHkuRCI6WzAsNSwxMCwxNSwyMCwzMCw1MCw3MF0sQURYOlsxMCwyMCwzMCw0MCw1MCw2MCw3MCw4MCw5MF0sQVRSOlsuMjUsLjUsLjc1LDEsMS41LDIsMi41LDMsMy41LDQsNC41LDVdLE1vbTpbLTMwLC0yMCwtMTUsLTEwLC01LDAsNSwxMCwxNSwyMCwzMF0sCkNDSTIwOlstMTAwLC01MCwtMjAsLTEwLDAsMTAsMjAsNTAsMTAwXX19O2Z1bmN0aW9uIFAoZSl7c3dpdGNoKGUpe2Nhc2Uic3RvY2siOmNhc2UiZnV0dXJlcyI6cmV0dXJuIEw7Y2FzZSJmb3JleCI6cmV0dXJuIEQ7Y2FzZSJjcnlwdG8iOmNhc2UiY3J5cHRvX21rdCI6cmV0dXJuIE87Y2FzZSJjZmQiOnJldHVybiBOfXJldHVybiBMfWNvbnN0IEI9e2FtZXJpY2E6e3RvcF9nYWluZXJzOntjbG9zZTpbMiwxZTRdfSx0b3BfbG9zZXJzOntjbG9zZTpbMiwxZTRdfSx1bnVzdWFsX3ZvbHVtZTp7cmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjOntvcGVyYXRvcjoiZ3JlYXRlciIsdmFsdWU6MX19LGVhcm5pbmdzX3RoaXNfd2Vlazp7Z2V0IGVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlKCl7cmV0dXJuIG8uaTE4bmV4dChudWxsLHZvaWQgMCxvKDEyNzQ4MykpfX19LHVrOnt0b3BfZ2FpbmVyczp7Y2xvc2U6WzIsMWU0XX0sdG9wX2xvc2Vyczp7Y2xvc2U6WzIsMWU0XX19LGluZGlhOnt0b3BfZ2FpbmVyczp7Y2xvc2U6WzIsMWU0XX0sdG9wX2xvc2Vyczp7Y2xvc2U6WzIsMWU0XX0sdW51c3VhbF92b2x1bWU6e3JlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYzp7b3BlcmF0b3I6ImdyZWF0ZXIiLHZhbHVlOjJ9fX0sc3BhaW46e3RvcF9nYWluZXJzOntjbG9zZTpbMSwxZTRdfSx0b3BfbG9zZXJzOntjbG9zZTpbMSwxZTRdfSx1bnVzdWFsX3ZvbHVtZTp7cmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjOntvcGVyYXRvcjoiZ3JlYXRlciIsdmFsdWU6LjF9fX0scnVzc2lhOnt0b3BfZ2FpbmVyczp7Y2xvc2U6bnVsbH0sdG9wX2xvc2Vyczp7Y2xvc2U6bnVsbH0sdW51c3VhbF92b2x1bWU6e3JlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYzp7b3BlcmF0b3I6ImdyZWF0ZXIiLHZhbHVlOi41fX19LGF1c3RyYWxpYTp7dG9wX2dhaW5lcnM6e2Nsb3NlOm51bGx9LHRvcF9sb3NlcnM6e2Nsb3NlOm51bGx9fSxicmF6aWw6e3RvcF9nYWluZXJzOntjbG9zZTpudWxsfSx0b3BfbG9zZXJzOntjbG9zZTpudWxsfSx1bnVzdWFsX3ZvbHVtZTp7cmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjOntvcGVyYXRvcjoiZ3JlYXRlciIsdmFsdWU6LjV9fX0samFwYW46e3RvcF9nYWluZXJzOntjbG9zZTpbMiwxZTRdfSx0b3BfbG9zZXJzOntjbG9zZTpbMiwxZTRdfX0sbmV3emVhbGFuZDp7dG9wX2dhaW5lcnM6e2Nsb3NlOlsyLDFlNF19LHRvcF9sb3NlcnM6e2Nsb3NlOlsyLDFlNF19LHVudXN1YWxfdm9sdW1lOntyZWxhdGl2ZV92b2x1bWVfMTBkX2NhbGM6e29wZXJhdG9yOiJncmVhdGVyIix2YWx1ZTouMn19fSx0dXJrZXk6e3RvcF9nYWluZXJzOntjbG9zZTpudWxsfSx0b3BfbG9zZXJzOntjbG9zZTpudWxsfSx1bnVzdWFsX3ZvbHVtZTp7cmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjOntvcGVyYXRvcjoiZ3JlYXRlciIsdmFsdWU6LjJ9fX0sc3dpdHplcmxhbmQ6e3RvcF9nYWluZXJzOntjbG9zZTpbLjEsMWU0XX0sdG9wX2xvc2Vyczp7Y2xvc2U6Wy4xLDFlNF19fSxob25na29uZzp7dG9wX2dhaW5lcnM6e2Nsb3NlOlsyLDFlNF19LHRvcF9sb3NlcnM6e2Nsb3NlOlsyLDFlNF19fSx0YWl3YW46e3RvcF9nYWluZXJzOntjbG9zZTpbMiwxZTRdfSx0b3BfbG9zZXJzOntjbG9zZTpbMiwxZTRdfX0sbmV0aGVybGFuZHM6e3RvcF9nYWluZXJzOntjbG9zZTpbMiwxZTRdfSx0b3BfbG9zZXJzOntjbG9zZTpbMiwxZTRdfX0sYmVsZ2l1bTp7dG9wX2dhaW5lcnM6e2Nsb3NlOlsyLDFlNF19LHRvcF9sb3NlcnM6e2Nsb3NlOlsyLDFlNF19fSxwb3J0dWdhbDp7dG9wX2dhaW5lcnM6e2Nsb3NlOlsyLDFlNF19LHRvcF9sb3NlcnM6e2Nsb3NlOlsyLDFlNF19fSxmcmFuY2U6e3RvcF9nYWluZXJzOntjbG9zZTpbMiwxZTRdfSx0b3BfbG9zZXJzOntjbG9zZTpbMiwxZTRdfX0sbWV4aWNvOnt0b3BfZ2FpbmVyczp7Y2xvc2U6WzIsMWU0XX0sdG9wX2xvc2Vyczp7Y2xvc2U6WzIsMWU0XX0sdW51c3VhbF92b2x1bWU6e3JlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYzp7b3BlcmF0b3I6ImdyZWF0ZXIiLHZhbHVlOi41fX19LGNhbmFkYTp7dG9wX2dhaW5lcnM6e2Nsb3NlOlsyLDFlNF19LHRvcF9sb3NlcnM6e2Nsb3NlOlsyLDFlNF19fSxzaW5nYXBvcmU6e3RvcF9nYWluZXJzOntjbG9zZTpbMiwxZTRdfSx0b3BfbG9zZXJzOntjbG9zZTpbMiwxZTRdfX0sZ2VybWFueTp7dG9wX2dhaW5lcnM6e2Nsb3NlOlsxLDFlNF19LHRvcF9sb3NlcnM6e2Nsb3NlOlsxLDFlNF19fSxwb2xhbmQ6e3RvcF9nYWluZXJzOntjbG9zZTpbMSwxZTRdfSx0b3BfbG9zZXJzOntjbG9zZTpbMSwxZTRdfSx1bnVzdWFsX3ZvbHVtZTp7cmVsYXRpdmVfdm9sdW1lXzEwZF9jYWxjOntvcGVyYXRvcjoiZ3JlYXRlciIsdmFsdWU6LjV9fX0saXNyYWVsOnt0b3BfZ2FpbmVyczp7Y2xvc2U6WzIsMWU0XX0sdG9wX2xvc2Vyczp7Y2xvc2U6WzIsMWU0XX0sdW51c3VhbF92b2x1bWU6e3JlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYzp7b3BlcmF0b3I6ImdyZWF0ZXIiLHZhbHVlOi41fX19LGl0YWx5Ont0b3BfZ2FpbmVyczp7Y2xvc2U6WzIsMWU0XX0sdG9wX2xvc2Vyczp7Y2xvc2U6WzIsMWU0XX0sdW51c3VhbF92b2x1bWU6e3JlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYzp7b3BlcmF0b3I6ImdyZWF0ZXIiLHZhbHVlOi41fX19LGFyZ2VudGluYTp7dG9wX2dhaW5lcnM6e2Nsb3NlOlsyLDFlNF19LHRvcF9sb3NlcnM6e2Nsb3NlOlsyLDFlNF19LHVudXN1YWxfdm9sdW1lOntyZWxhdGl2ZV92b2x1bWVfMTBkX2NhbGM6e29wZXJhdG9yOiJncmVhdGVyIix2YWx1ZTouMn19fSxmb3JleDp7dG9wX2dhaW5lcnM6e2Nsb3NlOm51bGx9LHRvcF9sb3NlcnM6e2Nsb3NlOm51bGx9LG1vc3RfY2FwaXRhbGl6ZWQ6bnVsbCxlYXJuaW5nc190aGlzX3dlZWs6bnVsbCx2b2x1bWVfbGVhZGVyczpudWxsLG1vc3Rfdm9sYXRpbGU6eyJWb2xhdGlsaXR5LkQiOntvcGVyYXRvcjoiZ3JlYXRlciIsdmFsdWU6MX19LHVudXN1YWxfdm9sdW1lOm51bGwsaGlnaF9kaXZpZGVuZDpudWxsfSxjcnlwdG86e3RvcF9nYWluZXJzOntjbG9zZTpudWxsfSx0b3BfbG9zZXJzOntjbG9zZTpudWxsfSxtb3N0X2NhcGl0YWxpemVkOm51bGwsCmVhcm5pbmdzX3RoaXNfd2VlazpudWxsLHZvbHVtZV9sZWFkZXJzOm51bGwsbW9zdF92b2xhdGlsZTp7IlZvbGF0aWxpdHkuRCI6e29wZXJhdG9yOiJncmVhdGVyIix2YWx1ZToxfX0sdW51c3VhbF92b2x1bWU6bnVsbCxoaWdoX2RpdmlkZW5kOm51bGx9LGNoaW5hOnt0b3BfZ2FpbmVyczp7Y2xvc2U6WzIsMWU0XX0sdG9wX2xvc2Vyczp7Y2xvc2U6WzIsMWU0XX19LGNoaWxlOnt0b3BfZ2FpbmVyczp7Y2xvc2U6WzEsMWU0XX0sdG9wX2xvc2Vyczp7Y2xvc2U6WzEsMWU0XX19LGJhaHJhaW46e3RvcF9nYWluZXJzOntjbG9zZTpbLjAxLDFlNF19LHRvcF9sb3NlcnM6e2Nsb3NlOlsuMDEsMWU0XX19LG1hbGF5c2lhOnt0b3BfZ2FpbmVyczp7Y2xvc2U6Wy4wMSwxZTRdfSx0b3BfbG9zZXJzOntjbG9zZTpbLjAxLDFlNF19fSxzZXJiaWE6e3RvcF9nYWluZXJzOntjbG9zZTpbLjEsMWU0XX0sdG9wX2xvc2Vyczp7Y2xvc2U6Wy4xLDFlNF19fSxrc2E6e3RvcF9nYWluZXJzOntjbG9zZTpbMSwxZTRdfSx0b3BfbG9zZXJzOntjbG9zZTpbMSwxZTRdfX0sZWd5cHQ6e3RvcF9nYWluZXJzOntjbG9zZTpbMSwxZTRdfSx0b3BfbG9zZXJzOntjbG9zZTpbMSwxZTRdfX19O2Z1bmN0aW9uICQoZSl7cmV0dXJuIGUucmVkdWNlKCgoZSx0KT0+ZS5jb25jYXQoZnVuY3Rpb24oZSl7cmV0dXJuIHhbZV0mJnhbZV0uc3RvY2tzfHxbXX0odCkpKSxbXSl9Y29uc3QgVz1bInVrIiwibHV4ZW1ib3VyZyIsIm5vcndheSIsInNsb3Zha2lhIiwic3dlZGVuIiwicGhpbGlwcGluZXMiLCJrb3JlYSJdO2NvbnN0IHE9e2luZGlhOlsiTlNFIl19O2Z1bmN0aW9uIFYoKXtyZXR1cm4gcX12YXIgSD1vKDYwMTg0MSksVT1vKDcwMDgwOSksej1vKDM2Nzk0Niksaj1vKDc1NTYyNyksRz1vKDk4NDM3NiksWD1vKDEyNTIxOCksSz1vKDgyMjQzMSk7dmFyIFk9byg1NDY0ODUpO2NvbnN0IEo9bmV3IFJlZ0V4cCgvMCskLyk7Y2xhc3MgWiBleHRlbmRzIGouUHJpY2VGb3JtYXR0ZXJ7Y29uc3RydWN0b3IoZT17fSl7aWYodm9pZCAwIT09ZS5mcmFjdGlvbmFsKXRocm93IG5ldyBFcnJvcigiRnJhY3Rpb25hbCBzaG91bGQgbm90IGJlIHVzZWQgd2l0aCB0aGlzIGZvcm1hdHRlciIpO3N1cGVyKGUpfWZvcm1hdChlLHQ9e30pe2NvbnN0e3NpZ25Qb3NpdGl2ZTpvLHRhaWxTaXplOmksaWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0Om59PXQscj1lLnRvU3RyaW5nKCkscz0oMCxZLmdldE51bWJlckZvcm1hdCkodGhpcy5faWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0fHxuKTtpZigtMSE9PXIuaW5kZXhPZigiZS0iKSl7Y29uc3QgZT1yLnNwbGl0KCJlLSIpLHQ9TnVtYmVyKGVbMF0pLG89TnVtYmVyKGVbMV0pO3JldHVybiB0aGlzLl9mcmFjdGlvbmFsTGVuZ3RoJiZvPnRoaXMuX2ZyYWN0aW9uYWxMZW5ndGgrMT9gMCR7cy5kZWNpbWFsU2lnbn0wMGA6YCR7dDwwPyLiiJIiOiIifTAke3MuZGVjaW1hbFNpZ259JHsiMCIucmVwZWF0KG8tMSl9JHtNYXRoLmFicyhNYXRoLnJvdW5kKHQpKX1gfXtsZXQgdD1zdXBlci5mb3JtYXQoZSx7c2lnblBvc2l0aXZlOm8sdGFpbFNpemU6aSxpZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ6bn0pO3QuaW5jbHVkZXMoImUiKXx8KHQ9dC5yZXBsYWNlKEosIiIpKTtjb25zdFtyLGFdPXQuc3BsaXQocy5kZWNpbWFsU2lnbik7cmV0dXJuIGEmJmEubGVuZ3RoPj0yP3Q6YCR7cn0ke3MuZGVjaW1hbFNpZ259JHsoKGF8fCIiKSsiMDAiKS5zdWJzdHJpbmcoMCwyKX1gfX19dmFyIFE9bygzMDY5MCksZWU9byg1MjgzOTYpO2NvbnN0IHRlPXtTVFJPTkdfQlVZOntrZXk6IlN0cm9uZyBCdXkiLGdldCB0aXRsZSgpe3JldHVybiBfLnQobnVsbCx7Y29udGV4dDoic2NyZWVuZXJfcmF0aW5nIn0sbyg0ODk4NjkpKX0sZ2V0IHNob3J0VGl0bGUoKXtyZXR1cm4gXy50KG51bGwse2NvbnRleHQ6InNjcmVlbmVyX3JhdGluZyJ9LG8oNDg5ODY5KSl9LGNzc0NsYXNzOiJ0di1zY3JlZW5lci10YWJsZV9fc2lnbmFsLS1zdHJvbmctYnV5In0sQlVZOntrZXk6IkJ1eSIsZ2V0IHRpdGxlKCl7cmV0dXJuIF8udChudWxsLHtjb250ZXh0OiJzY3JlZW5lcl9yYXRpbmcifSxvKDU2NTk2MikpfSxnZXQgc2hvcnRUaXRsZSgpe3JldHVybiBfLnQobnVsbCx7Y29udGV4dDoiZmlyc3RfbGV0dGVyX29mX0J1eSJ9LG8oNDEzNTM3KSl9LGNzc0NsYXNzOiJ0di1zY3JlZW5lci10YWJsZV9fc2lnbmFsLS1idXkifSxTVFJPTkdfU0VMTDp7a2V5OiJTdHJvbmcgU2VsbCIsZ2V0IHRpdGxlKCl7cmV0dXJuIF8udChudWxsLHtjb250ZXh0OiJzY3JlZW5lcl9yYXRpbmcifSxvKDY5MTU0MykpfSxnZXQgc2hvcnRUaXRsZSgpe3JldHVybiBfLnQobnVsbCx7Y29udGV4dDoic2NyZWVuZXJfcmF0aW5nIn0sbyg2OTE1NDMpKX0sY3NzQ2xhc3M6InR2LXNjcmVlbmVyLXRhYmxlX19zaWduYWwtLXN0cm9uZy1zZWxsIn0sU0VMTDp7a2V5OiJTZWxsIixnZXQgdGl0bGUoKXtyZXR1cm4gXy50KG51bGwse2NvbnRleHQ6InNjcmVlbmVyX3JhdGluZyJ9LG8oMjU3NjQzKSl9LGdldCBzaG9ydFRpdGxlKCl7cmV0dXJuIF8udChudWxsLHtjb250ZXh0OiJmaXJzdF9sZXR0ZXJfb2ZfU2VsbCJ9LG8oOTkxNjk3KSl9LGNzc0NsYXNzOiJ0di1zY3JlZW5lci10YWJsZV9fc2lnbmFsLS1zZWxsIn0sTkVVVFJBTDp7a2V5OiJOZXV0cmFsIixnZXQgdGl0bGUoKXtyZXR1cm4gXy50KG51bGwse2NvbnRleHQ6InNjcmVlbmVyX3JhdGluZyJ9LG8oNDU5NDYzKSl9LGdldCBzaG9ydFRpdGxlKCl7cmV0dXJuIF8udChudWxsLHtjb250ZXh0OiJmaXJzdF9sZXR0ZXJfb2ZfTmV1dHJhbCJ9LG8oMjE3Nzg4KSl9LGNzc0NsYXNzOiJ0di1zY3JlZW5lci10YWJsZV9fc2lnbmFsLS1uZXV0cmFsIn19LG9lPShlLHQ9ITEsbz0hMSk9Pntjb25zdCBpPXQ/IiI6IiBpLWhpZGRlbiIKO3JldHVybiBvP2A8c3BhbiB0aXRsZT0iJHtlLnRpdGxlfSIgY2xhc3M9InR2LXNjcmVlbmVyLXRhYmxlX19zaWduYWwgYXBwbHktY29tbW9uLXRvb2x0aXAgJHtlLmNzc0NsYXNzfSR7aX0iPiR7ZS5zaG9ydFRpdGxlfTwvc3Bhbj5gOmA8c3BhbiBjbGFzcz0idHYtc2NyZWVuZXItdGFibGVfX3NpZ25hbCAke2UuY3NzQ2xhc3N9JHtpfSI+JHtlLnRpdGxlfTwvc3Bhbj5gfSxpZT17Y29tcHV0ZU1BU2lnbmFsOihlLHQpPT57bGV0IG89dGUuTkVVVFJBTDtyZXR1cm4gZTx0JiYobz10ZS5CVVkpLGU+dCYmKG89dGUuU0VMTCksb30sY29tcHV0ZVJTSVNpZ25hbDooZSx0KT0+e2xldCBvPXRlLk5FVVRSQUw7cmV0dXJuIGU8MzAmJnQ8ZSYmKG89dGUuQlVZKSxlPjcwJiZ0PmUmJihvPXRlLlNFTEwpLG99LGNvbXB1dGVTdG9jaFNpZ25hbDooZSx0LG8saSk9PntsZXQgbj10ZS5ORVVUUkFMO3JldHVybiBlPDIwJiZ0PDIwJiZlPnQmJm88aSYmKG49dGUuQlVZKSxlPjgwJiZ0PjgwJiZlPHQmJm8+aSYmKG49dGUuU0VMTCksbn0sY29tcHV0ZUNDSTIwU2lnbmFsOihlLHQpPT57bGV0IG89dGUuTkVVVFJBTDtyZXR1cm4gZTwtMTAwJiZlPnQmJihvPXRlLkJVWSksZT4xMDAmJmU8dCYmKG89dGUuU0VMTCksb30sY29tcHV0ZUFEWFNpZ25hbDooZSx0LG8saSxuKT0+e2xldCByPXRlLk5FVVRSQUw7cmV0dXJuIGU+MjAmJmk8biYmdD5vJiYocj10ZS5CVVkpLGU+MjAmJmk+biYmdDxvJiYocj10ZS5TRUxMKSxyfSxjb21wdXRlQU9TaWduYWw6KGUsdCxvKT0+e2xldCBpPXRlLk5FVVRSQUw7cmV0dXJuKGU+MCYmdDwwfHxlPjAmJnQ+MCYmZT50JiZvPnQpJiYoaT10ZS5CVVkpLChlPDAmJnQ+MHx8ZTwwJiZ0PDAmJmU8dCYmbzx0KSYmKGk9dGUuU0VMTCksaX0sY29tcHV0ZU1vbVNpZ25hbDooZSx0KT0+e2xldCBvPXRlLk5FVVRSQUw7cmV0dXJuIGU+dCYmKG89dGUuQlVZKSxlPHQmJihvPXRlLlNFTEwpLG99LGNvbXB1dGVNQUNEU2lnbmFsOihlLHQpPT57bGV0IG89dGUuTkVVVFJBTDtyZXR1cm4gZT50JiYobz10ZS5CVVkpLGU8dCYmKG89dGUuU0VMTCksb30sY29tcHV0ZUJCQnV5U2lnbmFsOihlLHQpPT57bGV0IG89dGUuTkVVVFJBTDtyZXR1cm4gZTx0JiYobz10ZS5CVVkpLG99LGNvbXB1dGVCQlNlbGxTaWduYWw6KGUsdCk9PntsZXQgbz10ZS5ORVVUUkFMO3JldHVybiBlPnQmJihvPXRlLlNFTEwpLG99LGNvbXB1dGVQU0FSU2lnbmFsOihlLHQpPT57bGV0IG89dGUuTkVVVFJBTDtyZXR1cm4gZTx0JiYobz10ZS5CVVkpLGU+dCYmKG89dGUuU0VMTCksb30sY29tcHV0ZVJlY29tbWVuZFNpZ25hbDplPT57bGV0IHQ7cmV0dXJuIGU+PS0xJiZlPC0uNSYmKHQ9dGUuU1RST05HX1NFTEwpLGU+PS0uNSYmZTwtLjEmJih0PXRlLlNFTEwpLGU+PS0uMSYmZTw9LjEmJih0PXRlLk5FVVRSQUwpLGU+LjEmJmU8PS41JiYodD10ZS5CVVkpLGU+LjUmJmU8PTEmJih0PXRlLlNUUk9OR19CVVkpLHR9LGNvbXB1dGVTaW1wbGVTaWduYWw6ZT0+e2xldCB0PXRlLk5FVVRSQUw7cmV0dXJuLTE9PT1lJiYodD10ZS5TRUxMKSwxPT09ZSYmKHQ9dGUuQlVZKSx0fX0sbmU9e3Byb2Nlc3NNQVNpZ25hbDooZSx0LG8saSk9PntpZihudWxsPT09dHx8bnVsbD09PW8pcmV0dXJuIGU7Y29uc3Qgbj1pZS5jb21wdXRlTUFTaWduYWwodCxvKTtyZXR1cm5gJHtlfSAke29lKG4saS5kaXNwbGF5U2lnbmFsLCEwKX1gfSxwcm9jZXNzUlNJU2lnbmFsOihlLHQsbyxpKT0+e2lmKG51bGw9PT10KXJldHVybiBlO2NvbnN0IG49aWUuY29tcHV0ZVJTSVNpZ25hbCh0LG8pO3JldHVybmAke2V9ICR7b2UobixpLmRpc3BsYXlTaWduYWwsITApfWB9LHByb2Nlc3NTdG9jaFNpZ25hbDooZSx0LG8saSxuLHIpPT57aWYobnVsbD09PXR8fG51bGw9PT1vKXJldHVybiBlO2NvbnN0IHM9aWUuY29tcHV0ZVN0b2NoU2lnbmFsKHQsbyxpLG4pO3JldHVybmAke2V9ICR7b2UocyxyLmRpc3BsYXlTaWduYWwsITApfWB9LHByb2Nlc3NDQ0kyMFNpZ25hbDooZSx0LG8saSk9PntpZihudWxsPT09dHx8bnVsbD09PW8pcmV0dXJuIGU7Y29uc3Qgbj1pZS5jb21wdXRlQ0NJMjBTaWduYWwodCxvKTtyZXR1cm5gJHtlfSAke29lKG4saS5kaXNwbGF5U2lnbmFsLCEwKX1gfSxwcm9jZXNzQURYU2lnbmFsOihlLHQsbyxpLG4scixzKT0+e2lmKG51bGw9PT10fHxudWxsPT09b3x8bnVsbD09PWkpcmV0dXJuIGU7Y29uc3QgYT1pZS5jb21wdXRlQURYU2lnbmFsKHQsbyxpLG4scik7cmV0dXJuYCR7ZX0gJHtvZShhLHMuZGlzcGxheVNpZ25hbCwhMCl9YH0scHJvY2Vzc0FPU2lnbmFsOihlLHQsbyxpLG4pPT57aWYobnVsbD09PXR8fG51bGw9PT1vfHxudWxsPT09aSlyZXR1cm4gZTtjb25zdCByPWllLmNvbXB1dGVBT1NpZ25hbCh0LG8saSk7cmV0dXJuYCR7ZX0gJHtvZShyLG4uZGlzcGxheVNpZ25hbCwhMCl9YH0scHJvY2Vzc01vbVNpZ25hbDooZSx0LG8saSk9PntpZihudWxsPT09dHx8bnVsbD09PW8pcmV0dXJuIGU7Y29uc3Qgbj1pZS5jb21wdXRlTW9tU2lnbmFsKHQsbyk7cmV0dXJuYCR7ZX0gJHtvZShuLGkuZGlzcGxheVNpZ25hbCwhMCl9YH0scHJvY2Vzc01BQ0RTaWduYWw6KGUsdCxvLGkpPT57aWYobnVsbD09PXR8fG51bGw9PT1vKXJldHVybiBlO2NvbnN0IG49aWUuY29tcHV0ZU1BQ0RTaWduYWwodCxvKTtyZXR1cm5gJHtlfSAke29lKG4saS5kaXNwbGF5U2lnbmFsLCEwKX1gfSxwcm9jZXNzQkJCdXlTaWduYWw6KGUsdCxvLGkpPT57aWYobnVsbD09PXR8fG51bGw9PT1vKXJldHVybiBlO2NvbnN0IG49aWUuY29tcHV0ZUJCQnV5U2lnbmFsKHQsbyk7cmV0dXJuYCR7ZX0gJHtvZShuLGkuZGlzcGxheVNpZ25hbCwhMCl9YH0scHJvY2Vzc0JCU2VsbFNpZ25hbDooZSx0LG8saSk9PntpZihudWxsPT09dHx8bnVsbD09PW8pcmV0dXJuIGU7Y29uc3Qgbj1pZS5jb21wdXRlQkJTZWxsU2lnbmFsKHQsbyk7cmV0dXJuYCR7ZX0gJHtvZShuLGkuZGlzcGxheVNpZ25hbCwhMCl9YH0scHJvY2Vzc1BTQVJTaWduYWw6KGUsdCxvLGkpPT57aWYobnVsbD09PXR8fG51bGw9PT1vKXJldHVybiBlO2NvbnN0IG49aWUuY29tcHV0ZVBTQVJTaWduYWwodCxvKQo7cmV0dXJuYCR7ZX0gJHtvZShuLGkuZGlzcGxheVNpZ25hbCwhMCl9YH0scHJvY2Vzc1JlY29tbWVuZFNpZ25hbDplPT57aWYobnVsbD09PWV8fCEoMCxILmlzTnVtYmVyKShlKSlyZXR1cm4gZTtjb25zdCB0PWllLmNvbXB1dGVSZWNvbW1lbmRTaWduYWwoZSk7cmV0dXJuIHZvaWQgMD09PXQ/ZTpgJHtvZSh0LCEwKX1gfSxwcm9jZXNzU2ltcGxlU2lnbmFsOihlLHQsbyk9PntpZihudWxsPT09dHx8IiZtZGFzaDsiPT09ZSlyZXR1cm4gZTtjb25zdCBpPWllLmNvbXB1dGVTaW1wbGVTaWduYWwodCk7cmV0dXJuYCR7ZX0gJHtvZShpLG8uZGlzcGxheVNpZ25hbCwhMCl9YH19LHJlPWU9PntsZXQgdCxvO3JldHVybiBlPT09dGUuU1RST05HX1NFTEwudGl0bGUmJih0PVstMSwtLjVdLG89LS41KSxlPT09dGUuU0VMTC50aXRsZSYmKHQ9Wy0uNSwtLjFdLG89LS4xKSxlPT09dGUuTkVVVFJBTC50aXRsZSYmKHQ9Wy0uMSwuMV0pLGU9PT10ZS5CVVkudGl0bGUmJih0PVsuMSwuNV0sbz0uMSksZT09PXRlLlNUUk9OR19CVVkudGl0bGUmJih0PVsuNSwxXSxvPS41KSx7cmlnaHQ6dCxub3RFcXVhbDpvfX0sc2U9KGUsdCk9PntpZihBcnJheS5pc0FycmF5KGUpKXtjb25zdCBvPWUubWFwKChlPT5yZShlKSkpLGk9W10sbj1bXTtmb3IoY29uc3QgZSBvZiBvKXtpZih2b2lkIDAhPT1lLm5vdEVxdWFsKXtvLmZpbHRlcigodD0+dC5ub3RFcXVhbCE9PWUubm90RXF1YWwmJih0LmVxdWFsPT09ZS5ub3RFcXVhbHx8dC5yaWdodCYmKHQucmlnaHRbMF09PT1lLm5vdEVxdWFsfHx0LnJpZ2h0WzFdPT09ZS5ub3RFcXVhbCkpKSkubGVuZ3RofHxpLnB1c2goe2xlZnQ6dCxvcGVyYXRpb246Im5lcXVhbCIscmlnaHQ6ZS5ub3RFcXVhbH0pfWUucmlnaHQmJm4ucHVzaCh7bGVmdDp0LG9wZXJhdGlvbjoiaW5fcmFuZ2UiLHJpZ2h0OmUucmlnaHR9KSx2b2lkIDAhPT1lLmVxdWFsJiZuLnB1c2goe2xlZnQ6dCxvcGVyYXRpb246ImVxdWFsIixyaWdodDplLmVxdWFsfSl9cmV0dXJue2ZpbHRlcjppLGZpbHRlcjJBbmRQYXJ0Om4sZmlsdGVyMkZsYWc6ITB9fWNvbnN0IG89cmUoZSk7aWYoMD09PW8uZXF1YWwpcmV0dXJue2xlZnQ6dCxvcGVyYXRpb246ImVxdWFsIixyaWdodDowfTtjb25zdCBpPVt7bGVmdDp0LG9wZXJhdGlvbjoiaW5fcmFuZ2UiLHJpZ2h0Om8ucmlnaHR9XTtyZXR1cm4gdm9pZCAwIT09by5ub3RFcXVhbCYmaS5wdXNoKHtsZWZ0OnQsb3BlcmF0aW9uOiJuZXF1YWwiLHJpZ2h0Om8ubm90RXF1YWx9KSxpfTt2YXIgYWU9byg0NDM1NTcpO2NvbnN0IGxlPVt7aWQ6IjFtIix0aXRsZTpfLnQobnVsbCx7cGx1cmFsOiJ7bnVtYmVyfSBtaW51dGVzIixjb3VudDoxLHJlcGxhY2U6e251bWJlcjpTdHJpbmcoMSl9fSxvKDcwNDk1OCkpLHNob3J0VGl0bGU6YDE8c3VwIGNsYXNzPSJ0di1zY3JlZW5lci10b29sYmFyX19pbnRlcnZhbC1zdXAiPiR7Xy50KG51bGwse2NvbnRleHQ6ImludGVydmFsX3Nob3J0In0sbyg2MTg0KSl9PC9zdXA+YCx2YWx1ZToxfSx7aWQ6IjVtIix0aXRsZTpfLnQobnVsbCx7cGx1cmFsOiJ7bnVtYmVyfSBtaW51dGVzIixjb3VudDo1LHJlcGxhY2U6e251bWJlcjpTdHJpbmcoNSl9fSxvKDcwNDk1OCkpLHNob3J0VGl0bGU6YDU8c3VwIGNsYXNzPSJ0di1zY3JlZW5lci10b29sYmFyX19pbnRlcnZhbC1zdXAiPiR7Xy50KG51bGwse2NvbnRleHQ6ImludGVydmFsX3Nob3J0In0sbyg2MTg0KSl9PC9zdXA+YCx2YWx1ZTo1fSx7aWQ6IjE1bSIsdGl0bGU6Xy50KG51bGwse3BsdXJhbDoie251bWJlcn0gbWludXRlcyIsY291bnQ6MTUscmVwbGFjZTp7bnVtYmVyOlN0cmluZygxNSl9fSxvKDcwNDk1OCkpLHNob3J0VGl0bGU6YDE1PHN1cCBjbGFzcz0idHYtc2NyZWVuZXItdG9vbGJhcl9faW50ZXJ2YWwtc3VwIj4ke18udChudWxsLHtjb250ZXh0OiJpbnRlcnZhbF9zaG9ydCJ9LG8oNjE4NCkpfTwvc3VwPmAsdmFsdWU6MTV9LHtpZDoiMzBtIix0aXRsZTpfLnQobnVsbCx7cGx1cmFsOiJ7bnVtYmVyfSBtaW51dGVzIixjb3VudDozMCxyZXBsYWNlOntudW1iZXI6U3RyaW5nKDMwKX19LG8oNzA0OTU4KSksc2hvcnRUaXRsZTpgMzA8c3VwIGNsYXNzPSJ0di1zY3JlZW5lci10b29sYmFyX19pbnRlcnZhbC1zdXAiPiR7Xy50KG51bGwse2NvbnRleHQ6ImludGVydmFsX3Nob3J0In0sbyg2MTg0KSl9PC9zdXA+YCx2YWx1ZTozMH0se2lkOiIxaCIsdGl0bGU6Xy50KG51bGwse3BsdXJhbDoie251bWJlcn0gaG91cnMiLGNvdW50OjEscmVwbGFjZTp7bnVtYmVyOlN0cmluZygxKX19LG8oODI0MjE4KSksc2hvcnRUaXRsZTpgMTxzdXAgY2xhc3M9InR2LXNjcmVlbmVyLXRvb2xiYXJfX2ludGVydmFsLXN1cCI+JHtfLnQobnVsbCx7Y29udGV4dDoiaW50ZXJ2YWxfc2hvcnQifSxvKDI0MDczKSl9PC9zdXA+YCx2YWx1ZTo2MH0se2lkOiIyaCIsdGl0bGU6Xy50KG51bGwse3BsdXJhbDoie251bWJlcn0gaG91cnMiLGNvdW50OjIscmVwbGFjZTp7bnVtYmVyOlN0cmluZygyKX19LG8oODI0MjE4KSksc2hvcnRUaXRsZTpgMjxzdXAgY2xhc3M9InR2LXNjcmVlbmVyLXRvb2xiYXJfX2ludGVydmFsLXN1cCI+JHtfLnQobnVsbCx7Y29udGV4dDoiaW50ZXJ2YWxfc2hvcnQifSxvKDI0MDczKSl9PC9zdXA+YCx2YWx1ZToxMjB9LHtpZDoiNGgiLHRpdGxlOl8udChudWxsLHtwbHVyYWw6IntudW1iZXJ9IGhvdXJzIixjb3VudDo0LHJlcGxhY2U6e251bWJlcjpTdHJpbmcoNCl9fSxvKDgyNDIxOCkpLHNob3J0VGl0bGU6YDQ8c3VwIGNsYXNzPSJ0di1zY3JlZW5lci10b29sYmFyX19pbnRlcnZhbC1zdXAiPiR7Xy50KG51bGwse2NvbnRleHQ6ImludGVydmFsX3Nob3J0In0sbygyNDA3MykpfTwvc3VwPmAsdmFsdWU6MjQwfSx7aWQ6IjFEIix0aXRsZTpfLnQobnVsbCx7cGx1cmFsOiJ7bnVtYmVyfSBkYXlzIixjb3VudDoxLHJlcGxhY2U6e251bWJlcjpTdHJpbmcoMSl9fSxvKDI0NTI2MikpLHNob3J0VGl0bGU6YDE8c3VwIGNsYXNzPSJ0di1zY3JlZW5lci10b29sYmFyX19pbnRlcnZhbC1zdXAiPiR7Xy50KG51bGwse2NvbnRleHQ6ImludGVydmFsX3Nob3J0In0sbygxOTE0MzIpKX08L3N1cD5gLHZhbHVlOm51bGx9LHtpZDoiMVciLAp0aXRsZTpfLnQobnVsbCx7cGx1cmFsOiJ7bnVtYmVyfSB3ZWVrcyIsY291bnQ6MSxyZXBsYWNlOntudW1iZXI6U3RyaW5nKDEpfX0sbyg4MzI3MTcpKSxzaG9ydFRpdGxlOmAxPHN1cCBjbGFzcz0idHYtc2NyZWVuZXItdG9vbGJhcl9faW50ZXJ2YWwtc3VwIj4ke18udChudWxsLHtjb250ZXh0OiJpbnRlcnZhbF9zaG9ydCJ9LG8oMzIzNTcwKSl9PC9zdXA+YCx2YWx1ZToiMVcifSx7aWQ6IjFNIix0aXRsZTpfLnQobnVsbCx7cGx1cmFsOiJ7bnVtYmVyfSBtb250aHMiLGNvdW50OjEscmVwbGFjZTp7bnVtYmVyOlN0cmluZygxKX19LG8oNzIwODkzKSksc2hvcnRUaXRsZTpgMTxzdXAgY2xhc3M9InR2LXNjcmVlbmVyLXRvb2xiYXJfX2ludGVydmFsLXN1cCI+JHtfLnQobnVsbCx7Y29udGV4dDoiaW50ZXJ2YWxfc2hvcnQifSxvKDg4OTEwKSl9PC9zdXA+YCx2YWx1ZToiMU0ifV0sY2U9IjFEIjtmdW5jdGlvbiBkZShlKXtyZXR1cm4gbGUuZmluZCgodD0+dC5pZD09PWUpKX1mdW5jdGlvbiBoZShlLHQpe2lmKGU9ZnVuY3Rpb24oZSl7aWYoSXRbZV0mJkl0W2VdLmFsaWFzKXJldHVybiBJdFtlXS5hbGlhcztyZXR1cm4gZX0oZSksLyhjaGFuZ2V8Y2hhbmdlX2FicykuXGR7MSwzfS8udGVzdChlKXx8SXRbZV0mJkl0W2VdLnVzZURlZmF1bHRUaW1lSW50ZXJ2YWxGcm9tRmllbGROYW1lKXJldHVybiBlLnJlcGxhY2UoIi4iLCJ8Iik7aWYoIXR8fHQ9PT1jZXx8SXRbZV0mJkl0W2VdLnVzZURlZmF1bHRUaW1lSW50ZXJ2YWwpcmV0dXJuIGU7Y29uc3Qgbz1kZSh0KTtpZihvKXtjb25zdCB0PW8udmFsdWV8fCIiO2lmKEl0W2VdJiZJdFtlXS5jdXN0b21SZXNvbHV0aW9ucyl7Y29uc3Qgbz1JdFtlXS5jdXN0b21SZXNvbHV0aW9ucztpZih0JiYtMSE9PW8uaW5kZXhPZih0LnRvU3RyaW5nKCkpKXJldHVybmAke2V9fCR7dH1gfX1yZXR1cm4gZX12YXIgdWUsX2U9byg0OTExNjUpLHBlPW8oMTY4ODI0KTtmdW5jdGlvbiBtZShlKXtyZXR1cm4gZSYmKDAsSC5pc051bWJlcikoZSk/X2UuZGF0ZUZvcm1hdEZ1bmN0aW9uc1sieXl5eS1NTS1kZCJdKCgwLHBlLmdldERhdGVGcm9tWVlZWU1NREQpKGUpLCEwKToi4oCUIn0hZnVuY3Rpb24oZSl7ZS5TdG9jaz0ic3RvY2siLGUuQ29tbW9uPSJjb21tb24iLGUuRHI9ImRyIixlLlByZWZlcnJlZD0icHJlZmVycmVkIixlLkNsb3NlZGVuZD0iY2xvc2VkZW5kIixlLkV0Zj0iZXRmIixlLkV0bj0iZXRuIixlLk11dHVhbD0ibXV0dWFsIixlLlJlaXQ9InJlaXQiLGUuVHJ1c3Q9InRydXN0IixlLlVuaXQ9InVuaXQiLGUuRnVuZD0iZnVuZCIsZS5TdHJ1Y3R1cmVkPSJzdHJ1Y3R1cmVkIixlLlNwb3Q9InNwb3QiLGUuRnV0dXJlcz0iZnV0dXJlcyIsZS5QZXJwZXR1YWw9InBlcnBldHVhbCJ9KHVlfHwodWU9e30pKTtjb25zdCBnZT17Y29tbW9uOlsiY29tbW9uIiwiZm9yZWlnbi1pc3N1ZXIiXSxzdG9jazpbImNvbW1vbiJdLGRyOlsiIiwiZm9yZWlnbi1pc3N1ZXIiXSxwcmVmZXJyZWQ6WyJwcmVmZXJyZWQiXSxmdW5kOlsiZnVuZCJdLHN0cnVjdHVyZWQ6WyIiXSxzcG90Olsic3BvdCJdLGZ1dHVyZXM6WyJmdXR1cmVzIl19LHZlPXtjbG9zZWRlbmQ6WyJjbG9zZWRlbmQiXSxldGY6WyJldGYiLCJldGYsb2RkIiwiZXRmLG90YyIsImV0ZixjZmQiXSxldG46WyJldG4iXSxtdXR1YWw6WyJtdXR1YWwiXSxyZWl0OlsicmVpdCIsInJlaXQsY2ZkIiwidHJ1c3QscmVpdCJdLHRydXN0OlsidHJ1c3QiXSx1bml0OlsidW5pdCJdfSxmZT17cGVycGV0dWFsOlsicGVycGV0dWFsIl19O2Z1bmN0aW9uIHllKGUpe2xldCB0PVtdLG89W107aWYoQXJyYXkuaXNBcnJheShlKSlmb3IoY29uc3QgaSBvZiBlKXtjb25zdFtlLG5dPVNlKGkpO3Q9Wy4uLnQsLi4uZV0sbz1bLi4ubywuLi5uXX1lbHNlW3Qsb109U2UoZSk7cmV0dXJuIG89Wy4uLm5ldyBTZXQobyldLHQubGVuZ3RoJiZvLmxlbmd0aD9bd2UoInR5cGUiLHQpLHdlKCJzdWJ0eXBlIixvKV06dC5sZW5ndGg/W3dlKCJ0eXBlIix0KV06W3dlKCJzdWJ0eXBlIixvKV19ZnVuY3Rpb24gYmUoZSl7Y29uc3QgdD1bXSxvPVtdLmNvbmNhdChlKTtmb3IoY29uc3QgZSBvZiBvKUNlKGUpJiZ0LnB1c2goe2xlZnQ6InR5cGUiLG9wZXJhdGlvbjoiaW5fcmFuZ2UiLHJpZ2h0OmdlW2VdfSksa2UoZSkmJnQucHVzaCh7bGVmdDoidHlwZXNwZWNzIixvcGVyYXRpb246ImhhcyIscmlnaHQ6ZmVbZV19KTtyZXR1cm57ZmlsdGVyMkZsYWc6ITAsZmlsdGVyMkFuZFBhcnQ6dCxmaWx0ZXI6W119fWZ1bmN0aW9uIFNlKGUpe2xldCB0PVtdLG89W107cmV0dXJuImV0biI9PT1lP1tbInN0cnVjdHVyZWQiXSxbImV0biJdXTooIWZ1bmN0aW9uKGUpe3JldHVybiBlIGluIHZlfShlKT8hZnVuY3Rpb24oZSl7cmV0dXJuImNvbW1vbiI9PT1lfHwicHJlZmVycmVkIj09PWV8fCJzdG9jayI9PT1lfShlKT9DZShlKT8odD1bZV0sbz1nZVtlXSk6dD1bZV06KHQucHVzaCgic3RvY2siKSxvPWdlW2VdKToodC5wdXNoKCJmdW5kIiksbz12ZVtlXSksW3Qsb10pfWZ1bmN0aW9uIHdlKGUsdCl7Y29uc3Qgbz1mdW5jdGlvbihlKXtyZXR1cm4gZS5yZWR1Y2UoKGZ1bmN0aW9uKGUsdCxvKXtyZXR1cm5+ZS5pbmRleE9mKHQpfHxlLnB1c2godCksZX0pLFtdKX0odCksaT0xPT09by5sZW5ndGg7cmV0dXJue2xlZnQ6ZSxvcGVyYXRpb246aT8iZXF1YWwiOiJpbl9yYW5nZSIscmlnaHQ6aT9vWzBdOm99fWZ1bmN0aW9uIENlKGUpe3JldHVybiBlIGluIGdlfWZ1bmN0aW9uIGtlKGUpe3JldHVybiBlIGluIGZlfXZhciBUZT1vKDM4MDIwNyk7Y29uc3QgRWU9e25hbWU6W18udChudWxsLHZvaWQgMCxvKDgyODQyMCkpLF8udChudWxsLHZvaWQgMCxvKDgyODQyMCkpXSxkZXNjcmlwdGlvbjpbXy50KG51bGwsdm9pZCAwLG8oMzk3OTg3KSksXy50KG51bGwsdm9pZCAwLG8oMzk3OTg3KSldLGNvdW50cnk6W18udChudWxsLHZvaWQgMCxvKDQ0MzYyNykpLF8udChudWxsLHZvaWQgMCxvKDQ0MzYyNykpXSx0eXBlOltfLnQobnVsbCx2b2lkIDAsbygyODcyNDQpKSxfLnQobnVsbCx2b2lkIDAsbygyODcyNDQpKV0sCmFmdGVyX3RheF9tYXJnaW46W18udChudWxsLHZvaWQgMCxvKDE3NTE0MCkpLF8udChudWxsLHZvaWQgMCxvKDE3ODExNCkpXSxhdmVyYWdlX3ZvbHVtZTpbXy50KG51bGwsdm9pZCAwLG8oMjk3OTMwKSksXy50KG51bGwsdm9pZCAwLG8oMjUyNzc4KSldLGF2ZXJhZ2Vfdm9sdW1lXzMwZF9jYWxjOltfLnQobnVsbCx2b2lkIDAsbyg1NjY0MzQpKSxfLnQobnVsbCx2b2lkIDAsbyg0OTU2MzIpKV0sYXZlcmFnZV92b2x1bWVfNjBkX2NhbGM6W18udChudWxsLHZvaWQgMCxvKDk3NzA2MikpLF8udChudWxsLHZvaWQgMCxvKDI2OTE4MSkpXSxhdmVyYWdlX3ZvbHVtZV85MGRfY2FsYzpbXy50KG51bGwsdm9pZCAwLG8oNTcyNTg0KSksXy50KG51bGwsdm9pZCAwLG8oNzk3NjA0KSldLGJhc2ljX2Vwc19uZXRfaW5jb21lOltfLnQobnVsbCx2b2lkIDAsbyg3MTYxMSkpLF8udChudWxsLHZvaWQgMCxvKDMyNzE0OSkpXSxiZXRhXzFfeWVhcjpbXy50KG51bGwsdm9pZCAwLG8oMTg2NzI2KSksXy50KG51bGwsdm9pZCAwLG8oMTgxMjI4KSldLGJldGFfM195ZWFyOltfLnQobnVsbCx2b2lkIDAsbyg4OTcwMDcpKSxfLnQobnVsbCx2b2lkIDAsbyg4NjcwNDApKV0sYmV0YV81X3llYXI6W18udChudWxsLHZvaWQgMCxvKDEyODc5MSkpLF8udChudWxsLHZvaWQgMCxvKDMwMzU3NSkpXSxjYW5kbGVzdGljazpbXy50KG51bGwse2NvbnRleHQ6ImNhbmRsZXN0aWNrX3BhdHRlcm4ifSxvKDc1NDkyNSkpLF8udChudWxsLHtjb250ZXh0OiJjYW5kbGVzdGlja19wYXR0ZXJuIn0sbyg3NTQ5MjUpKV0sY3VycmVudF9yYXRpbzpbXy50KG51bGwsdm9pZCAwLG8oNDYwMTM5KSksXy50KG51bGwsdm9pZCAwLG8oMjQzNTA3KSldLGRlYnRfdG9fYXNzZXRzOltfLnQobnVsbCx2b2lkIDAsbyg1NDczNjIpKSxfLnQobnVsbCx2b2lkIDAsbyg1NDczNjIpKV0sZGVidF90b19lcXVpdHk6W18udChudWxsLHZvaWQgMCxvKDMwNjk2NikpLF8udChudWxsLHZvaWQgMCxvKDIzNzI0MSkpXSxkaXZpZGVuZHNfcGFpZDpbXy50KG51bGwsdm9pZCAwLG8oNTUwMjE2KSksXy50KG51bGwsdm9pZCAwLG8oMTg4MzYyKSldLGRpdmlkZW5kc19wZXJfc2hhcmVfZnE6W18udChudWxsLHZvaWQgMCxvKDI5MjIyMCkpLF8udChudWxsLHZvaWQgMCxvKDExMTgyOSkpXSxkaXZpZGVuZHNfeWllbGQ6W18udChudWxsLHZvaWQgMCxvKDk3NjYwNykpLF8udChudWxsLHZvaWQgMCxvKDQzODgxMCkpXSxkaXZpZGVuZF95aWVsZF9yZWNlbnQ6W18udChudWxsLHZvaWQgMCxvKDk3NjYwNykpLF8udChudWxsLHZvaWQgMCxvKDQzODgxMCkpXSxkcHNfY29tbW9uX3N0b2NrX3ByaW1faXNzdWVfZnk6W18udChudWxsLHZvaWQgMCxvKDI3NDcyOSkpLF8udChudWxsLHZvaWQgMCxvKDExNTMwNCkpXSxlYXJuaW5nc19wZXJfc2hhcmVfYmFzaWNfdHRtOltfLnQobnVsbCx2b2lkIDAsbygxMDM3OTEpKSxfLnQobnVsbCx2b2lkIDAsbygyNTU4NTcpKV0sZWFybmluZ3NfcGVyX3NoYXJlX2RpbHV0ZWRfdHRtOltfLnQobnVsbCx2b2lkIDAsbyg5ODY1MTYpKSxfLnQobnVsbCx2b2lkIDAsbyg5ODY1MTYpKV0sZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X25leHRfZnE6W18udChudWxsLHZvaWQgMCxvKDgwMjU5MCkpLF8udChudWxsLHZvaWQgMCxvKDIwNTU0OCkpXSxlYXJuaW5nc19wZXJfc2hhcmVfZnE6W18udChudWxsLHZvaWQgMCxvKDkzMTA5MykpLF8udChudWxsLHZvaWQgMCxvKDkzMTA5MykpXSxlYXJuaW5nc19yZWxlYXNlX2RhdGU6W18udChudWxsLHZvaWQgMCxvKDUwMjEyOSkpLF8udChudWxsLHZvaWQgMCxvKDUwMjEyOSkpXSxlYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZTpbXy50KG51bGwsdm9pZCAwLG8oNzcwNDI0KSksXy50KG51bGwsdm9pZCAwLG8oNzcwNDI0KSldLGViaXRkYTpbXy50KG51bGwsdm9pZCAwLG8oNTQwOTkpKSxfLnQobnVsbCx2b2lkIDAsbyg2OTk3KSldLGVudGVycHJpc2VfdmFsdWVfZWJpdGRhX3R0bTpbXy50KG51bGwsdm9pZCAwLG8oMTExMTI1KSksXy50KG51bGwsdm9pZCAwLG8oNzc2NDY0KSldLGVudGVycHJpc2VfdmFsdWVfZnE6W18udChudWxsLHZvaWQgMCxvKDUzMTI4OCkpLF8udChudWxsLHZvaWQgMCxvKDI2MzIzMCkpXSxleGNoYW5nZTpbXy50KG51bGwsdm9pZCAwLG8oODI2NjA3KSksXy50KG51bGwsdm9pZCAwLG8oODI2NjA3KSldLGZyZWVfY2FzaF9mbG93X21hcmdpbl9meTpbXy50KG51bGwsdm9pZCAwLG8oNTMxMTczKSksXy50KG51bGwsdm9pZCAwLG8oNTMxMTczKSldLGZyZWVfY2FzaF9mbG93X21hcmdpbl90dG06W18udChudWxsLHZvaWQgMCxvKDkyNDU1MykpLF8udChudWxsLHZvaWQgMCxvKDkyNDU1MykpXSxncm9zc19tYXJnaW46W18udChudWxsLHZvaWQgMCxvKDY2MTg5MykpLF8udChudWxsLHZvaWQgMCxvKDM3ODM5OSkpXSxncm9zc19wcm9maXQ6W18udChudWxsLHZvaWQgMCxvKDg3MDI2MikpLF8udChudWxsLHZvaWQgMCxvKDg3MDI2MikpXSxncm9zc19wcm9maXRfZnE6W18udChudWxsLHZvaWQgMCxvKDQyNjY1MikpLF8udChudWxsLHZvaWQgMCxvKDQyNjY1MikpXSxpbmRleDpbXy50KG51bGwsdm9pZCAwLG8oMTIyOTAwKSksXy50KG51bGwsdm9pZCAwLG8oMTIyOTAwKSldLGluZHVzdHJ5OltfLnQobnVsbCx2b2lkIDAsbyg4Nzc2MSkpLF8udChudWxsLHZvaWQgMCxvKDg3NzYxKSldLGxhc3RfYW5udWFsX2VwczpbXy50KG51bGwsdm9pZCAwLG8oMTEyMjc4KSksXy50KG51bGwsdm9pZCAwLG8oMTEyMjc4KSldLGxhc3RfYW5udWFsX3JldmVudWU6W18udChudWxsLHZvaWQgMCxvKDI4NTMzMykpLF8udChudWxsLHZvaWQgMCxvKDgzMTc4MSkpXSxsb25nX3Rlcm1fY2FwaXRhbDpbXy50KG51bGwsdm9pZCAwLG8oNTQ4MzUyKSksXy50KG51bGwsdm9pZCAwLG8oNTQ4MzUyKSldLG1hcmtldF9jYXBfYmFzaWM6W18udChudWxsLHZvaWQgMCxvKDI3ODYxNCkpLF8udChudWxsLHZvaWQgMCxvKDI2NTYyKSldLG1hcmtldF9jYXBfY2FsYzpbXy50KG51bGwsdm9pZCAwLG8oMjc4NjE0KSksXy50KG51bGwsdm9pZCAwLG8oMjY1NjIpKV0sCm1hcmtldF9jYXBfZGlsdXRlZF9jYWxjOltfLnQobnVsbCx2b2lkIDAsbyg2ODczMzIpKSxfLnQobnVsbCx2b2lkIDAsbygyMTQyNzkpKV0sbmV0X2RlYnQ6W18udChudWxsLHZvaWQgMCxvKDUyNjY5OCkpLF8udChudWxsLHZvaWQgMCxvKDg0NTQ5NikpXSxuZXRfaW5jb21lOltfLnQobnVsbCx2b2lkIDAsbygxMzE2MzMpKSxfLnQobnVsbCx2b2lkIDAsbygxODI0MzcpKV0sbnVtYmVyX29mX2VtcGxveWVlczpbXy50KG51bGwsdm9pZCAwLG8oMTY0MDQyKSksXy50KG51bGwsdm9pZCAwLG8oNjc3ODEzKSldLG51bWJlcl9vZl9zaGFyZWhvbGRlcnM6W18udChudWxsLHZvaWQgMCxvKDU3OTQwMykpLF8udChudWxsLHZvaWQgMCxvKDE2MTE1MikpXSxvcGVuX3ByaWNlOltfLnQobnVsbCx2b2lkIDAsbygzMjEwMjkpKSxfLnQobnVsbCx2b2lkIDAsbyg5Nzc4MSkpXSxvcGVyYXRpbmdfbWFyZ2luOltfLnQobnVsbCx2b2lkIDAsbyg4MDA0MzMpKSxfLnQobnVsbCx2b2lkIDAsbygzMzI5OSkpXSxwcmVfdGF4X21hcmdpbjpbXy50KG51bGwsdm9pZCAwLG8oODI2MTE1KSksXy50KG51bGwsdm9pZCAwLG8oNDIzMDUpKV0scHJlZmVycmVkX2RpdmlkZW5kczpbXy50KG51bGwsdm9pZCAwLG8oNDkzMjAwKSksXy50KG51bGwsdm9pZCAwLG8oOTIyNzE0KSldLHByZXZfY2xvc2VfcHJpY2U6W18udChudWxsLHZvaWQgMCxvKDM2NjI0OCkpLF8udChudWxsLHZvaWQgMCxvKDgzMjEyMykpXSxwcmljZV81Ml93ZWVrX2hpZ2g6W18udChudWxsLHZvaWQgMCxvKDE5MzI1OSkpLF8udChudWxsLHZvaWQgMCxvKDkwMDM3NSkpXSxwcmljZV81Ml93ZWVrX2xvdzpbXy50KG51bGwsdm9pZCAwLG8oNjY5MzA4KSksXy50KG51bGwsdm9pZCAwLG8oOTYyNjU0KSldLHByaWNlX2Jvb2tfcmF0aW86W18udChudWxsLHZvaWQgMCxvKDE3MTM5MSkpLF8udChudWxsLHZvaWQgMCxvKDYyMjE1KSldLHByaWNlX2Vhcm5pbmdzX3R0bTpbXy50KG51bGwsdm9pZCAwLG8oOTE3NzE1KSksXy50KG51bGwsdm9pZCAwLG8oMjEzMjQ4KSldLHByaWNlX3BlcmNlbnRfY2hhbmdlXzFfd2VlazpbXy50KG51bGwsdm9pZCAwLG8oOTg0MTQpKSxfLnQobnVsbCx2b2lkIDAsbyg1Mjc0MjgpKV0scHJpY2VfcGVyY2VudF9jaGFuZ2VfNF93ZWVrOltfLnQobnVsbCx2b2lkIDAsbyg2MzYzNTEpKSxfLnQobnVsbCx2b2lkIDAsbygzOTA2NTIpKV0scHJpY2VfcGVyY2VudF9jaGFuZ2VfNTJfd2VlazpbXy50KG51bGwsdm9pZCAwLG8oODM0MTIxKSksXy50KG51bGwsdm9pZCAwLG8oMjM2Nzk4KSldLHByaWNlX3JldmVudWVfdHRtOltfLnQobnVsbCx2b2lkIDAsbygzMTMyNDYpKSxfLnQobnVsbCx2b2lkIDAsbyg2MzE0MTApKV0scHJpY2Vfc2FsZXNfcmF0aW86W18udChudWxsLHZvaWQgMCxvKDgxOTM3MSkpLF8udChudWxsLHZvaWQgMCxvKDI3OTAxMCkpXSxxdWlja19yYXRpbzpbXy50KG51bGwsdm9pZCAwLG8oNDAzMTMxKSksXy50KG51bGwsdm9pZCAwLG8oNTkyOTgxKSldLHJldHVybl9vZl9pbnZlc3RlZF9jYXBpdGFsX3BlcmNlbnRfdHRtOltfLnQobnVsbCx2b2lkIDAsbygxNzg1MTMpKSxfLnQobnVsbCx2b2lkIDAsbygzODk1MjUpKV0scmV0dXJuX29uX2Fzc2V0czpbXy50KG51bGwsdm9pZCAwLG8oMTg1MTAzKSksXy50KG51bGwsdm9pZCAwLG8oNTg5OTY0KSldLHJldHVybl9vbl9lcXVpdHk6W18udChudWxsLHZvaWQgMCxvKDExOTUyMykpLF8udChudWxsLHZvaWQgMCxvKDE3MDk1MikpXSxyZXR1cm5fb25faW52ZXN0ZWRfY2FwaXRhbDpbXy50KG51bGwsdm9pZCAwLG8oODA5NzI2KSksXy50KG51bGwsdm9pZCAwLG8oMzg5NTI1KSldLHJldmVudWVfcGVyX2VtcGxveWVlOltfLnQobnVsbCx2b2lkIDAsbyg5NDIwMjUpKSxfLnQobnVsbCx2b2lkIDAsbyg3OTM3NTApKV0sc2VjdG9yOltfLnQobnVsbCx2b2lkIDAsbygyNzg3MjkpKSxfLnQobnVsbCx2b2lkIDAsbygyNzg3MjkpKV0sc3VibWFya2V0OltfLnQobnVsbCx2b2lkIDAsbygzNzA2ODcpKSxfLnQobnVsbCx2b2lkIDAsbygzNzA2ODcpKV0saXNfcHJpbWFyeTpbXy50KG51bGwsdm9pZCAwLG8oODE4MjczKSksXy50KG51bGwsdm9pZCAwLG8oODE4MjczKSldLGFjdGl2ZV9zeW1ib2w6W18udChudWxsLHZvaWQgMCxvKDQ0OTA2MCkpLF8udChudWxsLHZvaWQgMCxvKDQ0OTA2MCkpXSxlcHNfc3VycHJpc2VfZnE6W18udChudWxsLHZvaWQgMCxvKDI2OTk1NSkpLF8udChudWxsLHZvaWQgMCxvKDI2OTk1NSkpXSxlcHNfc3VycHJpc2VfcGVyY2VudF9mcTpbXy50KG51bGwsdm9pZCAwLG8oNTI0ODE3KSksXy50KG51bGwsdm9pZCAwLG8oNTI0ODE3KSldLHRvdGFsX2Fzc2V0czpbXy50KG51bGwsdm9pZCAwLG8oNDAyMikpLF8udChudWxsLHZvaWQgMCxvKDY2Mzg2MCkpXSx0b3RhbF9jYXBpdGFsOltfLnQobnVsbCx2b2lkIDAsbyg4MTIzMzUpKSxfLnQobnVsbCx2b2lkIDAsbygxNDk1MDMpKV0sdG90YWxfY3VycmVudF9hc3NldHM6W18udChudWxsLHZvaWQgMCxvKDU3OTEwOSkpLF8udChudWxsLHZvaWQgMCxvKDg4NDEyMykpXSx0b3RhbF9kZWJ0OltfLnQobnVsbCx2b2lkIDAsbyg1Njg5MzQpKSxfLnQobnVsbCx2b2lkIDAsbyg0OTUyMTApKV0sdG90YWxfcmV2ZW51ZTpbXy50KG51bGwsdm9pZCAwLG8oNDM2NDc0KSksXy50KG51bGwsdm9pZCAwLG8oNTY4MDkxKSldLHRvdGFsX2xpYWJpbGl0aWVzX2Z5OltfLnQobnVsbCx2b2lkIDAsbyg2MDY5MjApKSxfLnQobnVsbCx2b2lkIDAsbyg4Mjk2NTYpKV0sdG90YWxfbGlhYmlsaXRpZXNfZnE6W18udChudWxsLHZvaWQgMCxvKDMzNDE3MSkpLF8udChudWxsLHZvaWQgMCxvKDE5NDA5MSkpXSx0b3RhbF9zaGFyZXNfb3V0c3RhbmRpbmdfZnVuZGFtZW50YWw6W18udChudWxsLHZvaWQgMCxvKDU0MzA5NSkpLF8udChudWxsLHZvaWQgMCxvKDM3OTkzMikpXSx2b2x1bWU6W18udChudWxsLHZvaWQgMCxvKDI0NzA2MikpLF8udChudWxsLHtjb250ZXh0OiJzdHVkeSJ9LG8oNTk2MTY4KSldLHJlbGF0aXZlX3ZvbHVtZTpbXy50KG51bGwsdm9pZCAwLG8oNzgzMTkzKSksXy50KG51bGwsdm9pZCAwLG8oMjUwNjU0KSldLApyZWxhdGl2ZV92b2x1bWVfYXRfdGltZTpbXy50KG51bGwsdm9pZCAwLG8oMTkzMDY2KSksXy50KG51bGwsdm9pZCAwLG8oNjk5MDkwKSldLGNoYW5nZV9hYnM6W18udChudWxsLHZvaWQgMCxvKDY3MzQ4NykpLF8udChudWxsLHZvaWQgMCxvKDIwNTgzNCkpXSxjaGFuZ2U6W18udChudWxsLHZvaWQgMCxvKDk2OTQ3MikpLF8udChudWxsLHZvaWQgMCxvKDIxMDgxNSkpXSwiY2hhbmdlLjEiOltfLnQobnVsbCx2b2lkIDAsbyg3OTA5NDkpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oNDE1NzUxKSl9KSxfLnQobnVsbCx2b2lkIDAsbyg2MDI2MDEpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oNDE1NzUxKSl9KV0sImNoYW5nZV9hYnMuMSI6W18udChudWxsLHZvaWQgMCxvKDY1NzExNCkpLmZvcm1hdCh7cmVzb2x1dGlvbjpfLnQobnVsbCx2b2lkIDAsbyg0MTU3NTEpKX0pLF8udChudWxsLHZvaWQgMCxvKDI5NTYyMCkpLmZvcm1hdCh7cmVzb2x1dGlvbjpfLnQobnVsbCx2b2lkIDAsbyg0MTU3NTEpKX0pXSwiY2hhbmdlLjUiOltfLnQobnVsbCx2b2lkIDAsbyg3OTA5NDkpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oODAxNDgwKSl9KSxfLnQobnVsbCx2b2lkIDAsbyg2MDI2MDEpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oODAxNDgwKSl9KV0sImNoYW5nZV9hYnMuNSI6W18udChudWxsLHZvaWQgMCxvKDY1NzExNCkpLmZvcm1hdCh7cmVzb2x1dGlvbjpfLnQobnVsbCx2b2lkIDAsbyg4MDE0ODApKX0pLF8udChudWxsLHZvaWQgMCxvKDI5NTYyMCkpLmZvcm1hdCh7cmVzb2x1dGlvbjpfLnQobnVsbCx2b2lkIDAsbyg4MDE0ODApKX0pXSwiY2hhbmdlLjE1IjpbXy50KG51bGwsdm9pZCAwLG8oNzkwOTQ5KSkuZm9ybWF0KHtyZXNvbHV0aW9uOl8udChudWxsLHZvaWQgMCxvKDE3MzI0MCkpfSksXy50KG51bGwsdm9pZCAwLG8oNjAyNjAxKSkuZm9ybWF0KHtyZXNvbHV0aW9uOl8udChudWxsLHZvaWQgMCxvKDE3MzI0MCkpfSldLCJjaGFuZ2VfYWJzLjE1IjpbXy50KG51bGwsdm9pZCAwLG8oNjU3MTE0KSkuZm9ybWF0KHtyZXNvbHV0aW9uOl8udChudWxsLHZvaWQgMCxvKDE3MzI0MCkpfSksXy50KG51bGwsdm9pZCAwLG8oMjk1NjIwKSkuZm9ybWF0KHtyZXNvbHV0aW9uOl8udChudWxsLHZvaWQgMCxvKDE3MzI0MCkpfSldLCJjaGFuZ2UuNjAiOltfLnQobnVsbCx2b2lkIDAsbyg3OTA5NDkpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oMjg5NDY0KSl9KSxfLnQobnVsbCx2b2lkIDAsbyg2MDI2MDEpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oMjg5NDY0KSl9KV0sImNoYW5nZV9hYnMuNjAiOltfLnQobnVsbCx2b2lkIDAsbyg2NTcxMTQpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oMjg5NDY0KSl9KSxfLnQobnVsbCx2b2lkIDAsbygyOTU2MjApKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oMjg5NDY0KSl9KV0sImNoYW5nZS4yNDAiOltfLnQobnVsbCx2b2lkIDAsbyg3OTA5NDkpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oNTUyNzQzKSl9KSxfLnQobnVsbCx2b2lkIDAsbyg2MDI2MDEpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oNTUyNzQzKSl9KV0sImNoYW5nZV9hYnMuMjQwIjpbXy50KG51bGwsdm9pZCAwLG8oNjU3MTE0KSkuZm9ybWF0KHtyZXNvbHV0aW9uOl8udChudWxsLHZvaWQgMCxvKDU1Mjc0MykpfSksXy50KG51bGwsdm9pZCAwLG8oMjk1NjIwKSkuZm9ybWF0KHtyZXNvbHV0aW9uOl8udChudWxsLHZvaWQgMCxvKDU1Mjc0MykpfSldLCJjaGFuZ2UuMVciOltfLnQobnVsbCx2b2lkIDAsbyg3OTA5NDkpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oNDkyMTM1KSl9KSxfLnQobnVsbCx2b2lkIDAsbyg2MDI2MDEpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oNDkyMTM1KSl9KV0sImNoYW5nZV9hYnMuMVciOltfLnQobnVsbCx2b2lkIDAsbyg2NTcxMTQpKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oNDkyMTM1KSl9KSxfLnQobnVsbCx2b2lkIDAsbygyOTU2MjApKS5mb3JtYXQoe3Jlc29sdXRpb246Xy50KG51bGwsdm9pZCAwLG8oNDkyMTM1KSl9KV0sImNoYW5nZS4xTSI6W18udChudWxsLHZvaWQgMCxvKDc5MDk0OSkpLmZvcm1hdCh7cmVzb2x1dGlvbjpfLnQobnVsbCx2b2lkIDAsbyg4MzI3MzMpKX0pLF8udChudWxsLHZvaWQgMCxvKDYwMjYwMSkpLmZvcm1hdCh7cmVzb2x1dGlvbjpfLnQobnVsbCx2b2lkIDAsbyg4MzI3MzMpKX0pXSwiY2hhbmdlX2Ficy4xTSI6W18udChudWxsLHZvaWQgMCxvKDY1NzExNCkpLmZvcm1hdCh7cmVzb2x1dGlvbjpfLnQobnVsbCx2b2lkIDAsbyg4MzI3MzMpKX0pLF8udChudWxsLHZvaWQgMCxvKDI5NTYyMCkpLmZvcm1hdCh7cmVzb2x1dGlvbjpfLnQobnVsbCx2b2lkIDAsbyg4MzI3MzMpKX0pXSxjdXJyZW5jeTpbXy50KG51bGwsdm9pZCAwLG8oMTkwNjk2KSksXy50KG51bGwsdm9pZCAwLG8oMTkwNjk2KSldLHByZV9jaGFuZ2U6W18udChudWxsLHZvaWQgMCxvKDMyNTcxMykpLF8udChudWxsLHZvaWQgMCxvKDIwODg0NikpXSxwb3N0X2NoYW5nZTpbXy50KG51bGwsdm9pZCAwLG8oMzk5OTY4KSksXy50KG51bGwsdm9pZCAwLG8oNjczNzAzKSldLGJpZDpbXy50KG51bGwsdm9pZCAwLG8oNDI5NTA4KSksXy50KG51bGwsdm9pZCAwLG8oNDI5NTA4KSldLGFzazpbXy50KG51bGwsdm9pZCAwLG8oNjcyNzEwKSksXy50KG51bGwsdm9pZCAwLG8oNjcyNzEwKSldLGNsb3NlOltfLnQobnVsbCx2b2lkIDAsbyg4MjA4NjYpKSxfLnQobnVsbCx2b2lkIDAsbyg4MjA4NjYpKV0sb3BlbjpbXy50KG51bGwsdm9pZCAwLG8oOTc3ODEpKSxfLnQobnVsbCx2b2lkIDAsbyg5Nzc4MSkpXSxoaWdoOltfLnQobnVsbCx2b2lkIDAsbyg4NDU1NjMpKSxfLnQobnVsbCx2b2lkIDAsbyg4NDU1NjMpKV0sCmxvdzpbXy50KG51bGwsdm9pZCAwLG8oODg4Njc4KSksXy50KG51bGwsdm9pZCAwLG8oODg4Njc4KSldLGdhcDpbXy50KG51bGwsdm9pZCAwLG8oOTMwMDY5KSksXy50KG51bGwsdm9pZCAwLG8oOTMwMDY5KSldLHByaWNlX2Vhcm5pbmdzX3RvX2dyb3d0aF90dG06W18udChudWxsLHZvaWQgMCxvKDQyNDU0NSkpLF8udChudWxsLHZvaWQgMCxvKDEyMTk2OSkpXSxwcmljZV9zYWxlczpbXy50KG51bGwsdm9pZCAwLG8oMjYzMzM1KSksXy50KG51bGwsdm9pZCAwLG8oMjYzMzM1KSldLHByaWNlX2Jvb2tfZnE6W18udChudWxsLHZvaWQgMCxvKDc5NzQ1MCkpLF8udChudWxsLHZvaWQgMCxvKDYxMTQ1OSkpXSxwcmljZV9mcmVlX2Nhc2hfZmxvd190dG06W18udChudWxsLHZvaWQgMCxvKDMwNjM1NikpLF8udChudWxsLHZvaWQgMCxvKDgxNjk0NCkpXSxmbG9hdF9zaGFyZXNfb3V0c3RhbmRpbmc6W18udChudWxsLHZvaWQgMCxvKDE4ODU3NykpLF8udChudWxsLHZvaWQgMCxvKDcyMzA4OCkpXSxmcmVlX2Nhc2hfZmxvdzpbXy50KG51bGwsdm9pZCAwLG8oMTY3Njg4KSksXy50KG51bGwsdm9pZCAwLG8oMTQ0NjMpKV0sdG90YWxfc2hhcmVzX291dHN0YW5kaW5nOltfLnQobnVsbCx2b2lkIDAsbyg2MDUxNTkpKSxfLnQobnVsbCx2b2lkIDAsbyg2MDUxNTkpKV0sdG90YWxfc2hhcmVzX2RpbHV0ZWQ6W18udChudWxsLHZvaWQgMCxvKDU0MzUzMikpLF8udChudWxsLHZvaWQgMCxvKDU0MzUzMikpXSx0b3RhbF92YWx1ZV90cmFkZWQ6W18udChudWxsLHZvaWQgMCxvKDUwOTY3OSkpLF8udChudWxsLHZvaWQgMCxvKDIzNDA3MSkpXSxjaGFuZ2VfZnJvbV9vcGVuOltfLnQobnVsbCx2b2lkIDAsbyg5MzYwMzQpKSxfLnQobnVsbCx2b2lkIDAsbyg4NTM4OTUpKV0sY2hhbmdlX2Zyb21fb3Blbl9hYnM6W18udChudWxsLHZvaWQgMCxvKDM4Mjc1MSkpLF8udChudWxsLHZvaWQgMCxvKDYzMzQ1NCkpXSwiUGVyZi5XIjpbXy50KG51bGwsdm9pZCAwLG8oODQ2NjE0KSksXy50KG51bGwsdm9pZCAwLG8oNzgxOTkzKSldLCJQZXJmLjFNIjpbXy50KG51bGwsdm9pZCAwLG8oODIyODc1KSksXy50KG51bGwsdm9pZCAwLG8oNDY3OTgyKSldLCJQZXJmLjNNIjpbXy50KG51bGwsdm9pZCAwLG8oNjY0MjQyKSksXy50KG51bGwsdm9pZCAwLG8oNzc5MDgzKSldLCJQZXJmLjZNIjpbXy50KG51bGwsdm9pZCAwLG8oOTYwNjYzKSksXy50KG51bGwsdm9pZCAwLG8oNzY4Nzg2KSldLCJQZXJmLlkiOltfLnQobnVsbCx2b2lkIDAsbygxMjk4MDkpKSxfLnQobnVsbCx2b2lkIDAsbygxODM1NjQpKV0sIlBlcmYuWVREIjpbXy50KG51bGwsdm9pZCAwLG8oODUzMTAwKSksXy50KG51bGwsdm9pZCAwLG8oNjQ3NDcxKSldLCJQZXJmLjVZIjpbXy50KG51bGwsdm9pZCAwLG8oOTM1ODE5KSksXy50KG51bGwsdm9pZCAwLG8oNDkwNTc3KSldLCJQZXJmLkFsbCI6W18udChudWxsLHZvaWQgMCxvKDQ4NjMwMikpLF8udChudWxsLHZvaWQgMCxvKDgxNTQpKV0sIlZvbGF0aWxpdHkuVyI6W18udChudWxsLHZvaWQgMCxvKDE2MjI2NSkpLF8udChudWxsLHZvaWQgMCxvKDExMTU0OCkpXSwiVm9sYXRpbGl0eS5NIjpbXy50KG51bGwsdm9pZCAwLG8oNTYzMzYzKSksXy50KG51bGwsdm9pZCAwLG8oOTI5NTk0KSldLCJWb2xhdGlsaXR5LkQiOltfLnQobnVsbCx2b2lkIDAsbygzMzgzOTIpKSxfLnQobnVsbCx2b2lkIDAsbygzMzgzOTIpKV0sUlNJOltfLnQobnVsbCx2b2lkIDAsbyg4MTM0MzIpKSxfLnQobnVsbCx2b2lkIDAsbyg0OTY2NzQpKV0sUlNJNzpbXy50KG51bGwsdm9pZCAwLG8oNDIzNDYpKSxfLnQobnVsbCx2b2lkIDAsbyg1Mjg2NTkpKV0sQURYOltfLnQobnVsbCx2b2lkIDAsbyg1NzgxOTgpKSxfLnQobnVsbCx2b2lkIDAsbyg4MDMwMjQpKV0sIkFEWCtESSI6W18udChudWxsLHZvaWQgMCxvKDc2NzgyNSkpLF8udChudWxsLHtjb250ZXh0OiJQb3NpdGl2ZV9EaXJlY3Rpb25hbF9JbmRpY2F0b3Jfc2hvcnRfdGl0bGUifSxvKDgxOTA0MikpXSwiQURYLURJIjpbXy50KG51bGwsdm9pZCAwLG8oMTc0MzA5KSksXy50KG51bGwse2NvbnRleHQ6Ik5lZ2F0aXZlX0RpcmVjdGlvbmFsX0luZGljYXRvcl9zaG9ydF90aXRsZSJ9LG8oMjc0ODc0KSldLEFUUjpbXy50KG51bGwsdm9pZCAwLG8oMzE1NDYyKSksXy50KG51bGwsdm9pZCAwLG8oOTYwMDY5KSldLE1vbTpbXy50KG51bGwsdm9pZCAwLG8oNTMxNTAyKSksXy50KG51bGwsdm9pZCAwLG8oNDI1MzAxKSldLCJIaWdoLkFsbCI6W18udChudWxsLHZvaWQgMCxvKDkzMDU3OCkpLF8udChudWxsLHZvaWQgMCxvKDkzMDU3OCkpXSwiTG93LkFsbCI6W18udChudWxsLHZvaWQgMCxvKDI1MzQ3MSkpLF8udChudWxsLHZvaWQgMCxvKDI1MzQ3MSkpXSwiSGlnaC42TSI6W18udChudWxsLHZvaWQgMCxvKDk3ODc2MCkpLF8udChudWxsLHZvaWQgMCxvKDk3ODc2MCkpXSwiTG93LjZNIjpbXy50KG51bGwsdm9pZCAwLG8oNjAzNTA5KSksXy50KG51bGwsdm9pZCAwLG8oNjAzNTA5KSldLCJIaWdoLjNNIjpbXy50KG51bGwsdm9pZCAwLG8oOTkwNzcpKSxfLnQobnVsbCx2b2lkIDAsbyg5OTA3NykpXSwiTG93LjNNIjpbXy50KG51bGwsdm9pZCAwLG8oODg2OTE4KSksXy50KG51bGwsdm9pZCAwLG8oODg2OTE4KSldLCJIaWdoLjFNIjpbXy50KG51bGwsdm9pZCAwLG8oMTYxNTgzKSksXy50KG51bGwsdm9pZCAwLG8oMTYxNTgzKSldLCJMb3cuMU0iOltfLnQobnVsbCx2b2lkIDAsbygyMDA5MjApKSxfLnQobnVsbCx2b2lkIDAsbygyMDA5MjApKV0sRU1BNTpbXy50KG51bGwsdm9pZCAwLG8oNjM0NTA2KSkuZm9ybWF0KHtudW1iZXI6IjUifSksXy50KG51bGwsdm9pZCAwLG8oNTExODQ0KSldLEVNQTEwOltfLnQobnVsbCx2b2lkIDAsbyg2MzQ1MDYpKS5mb3JtYXQoe251bWJlcjoiMTAifSksXy50KG51bGwsdm9pZCAwLG8oMTA3OTA1KSldLEVNQTIwOltfLnQobnVsbCx2b2lkIDAsbyg2MzQ1MDYpKS5mb3JtYXQoe251bWJlcjoiMjAifSksXy50KG51bGwsdm9pZCAwLG8oMTQzNjMpKV0sRU1BMzA6W18udChudWxsLHZvaWQgMCxvKDYzNDUwNikpLmZvcm1hdCh7bnVtYmVyOiIzMCIKfSksXy50KG51bGwsdm9pZCAwLG8oOTU0ODU5KSldLEVNQTUwOltfLnQobnVsbCx2b2lkIDAsbyg2MzQ1MDYpKS5mb3JtYXQoe251bWJlcjoiNTAifSksXy50KG51bGwsdm9pZCAwLG8oNTM4MDE4KSldLEVNQTEwMDpbXy50KG51bGwsdm9pZCAwLG8oNjM0NTA2KSkuZm9ybWF0KHtudW1iZXI6IjEwMCJ9KSxfLnQobnVsbCx2b2lkIDAsbyg2NDk2NDQpKV0sRU1BMjAwOltfLnQobnVsbCx2b2lkIDAsbyg2MzQ1MDYpKS5mb3JtYXQoe251bWJlcjoiMjAwIn0pLF8udChudWxsLHZvaWQgMCxvKDYwNTQzOCkpXSxTTUE1OltfLnQobnVsbCx2b2lkIDAsbyg0ODY1NzIpKS5mb3JtYXQoe251bWJlcjoiNSJ9KSxfLnQobnVsbCx2b2lkIDAsbyg2NTk1NjApKV0sU01BMTA6W18udChudWxsLHZvaWQgMCxvKDQ4NjU3MikpLmZvcm1hdCh7bnVtYmVyOiIxMCJ9KSxfLnQobnVsbCx2b2lkIDAsbygxMzQwODUpKV0sU01BMjA6W18udChudWxsLHZvaWQgMCxvKDQ4NjU3MikpLmZvcm1hdCh7bnVtYmVyOiIyMCJ9KSxfLnQobnVsbCx2b2lkIDAsbygzOTgwMzkpKV0sU01BMzA6W18udChudWxsLHZvaWQgMCxvKDQ4NjU3MikpLmZvcm1hdCh7bnVtYmVyOiIzMCJ9KSxfLnQobnVsbCx2b2lkIDAsbyg0NTc1NDMpKV0sU01BNTA6W18udChudWxsLHZvaWQgMCxvKDQ4NjU3MikpLmZvcm1hdCh7bnVtYmVyOiI1MCJ9KSxfLnQobnVsbCx2b2lkIDAsbyg1NTY0ODYpKV0sU01BMTAwOltfLnQobnVsbCx2b2lkIDAsbyg0ODY1NzIpKS5mb3JtYXQoe251bWJlcjoiMTAwIn0pLF8udChudWxsLHZvaWQgMCxvKDMyODc4NCkpXSxTTUEyMDA6W18udChudWxsLHZvaWQgMCxvKDQ4NjU3MikpLmZvcm1hdCh7bnVtYmVyOiIyMDAifSksXy50KG51bGwsdm9pZCAwLG8oNjgwNzQpKV0sIlN0b2NoLksiOltfLnQobnVsbCx2b2lkIDAsbygyMjA3MjUpKSxfLnQobnVsbCx2b2lkIDAsbyg1NTc4MDApKV0sIlN0b2NoLkQiOltfLnQobnVsbCx2b2lkIDAsbygzMTc4MzIpKSxfLnQobnVsbCx2b2lkIDAsbyg0MDYyOTgpKV0sIk1BQ0QubWFjZCI6W18udChudWxsLHZvaWQgMCxvKDI0NzU2MCkpLF8udChudWxsLHZvaWQgMCxvKDk0MDk0MykpXSwiTUFDRC5zaWduYWwiOltfLnQobnVsbCx2b2lkIDAsbyg5NTA2NjIpKSxfLnQobnVsbCx2b2lkIDAsbygzMjc5MTEpKV0sIkFyb29uLlVwIjpbXy50KG51bGwsdm9pZCAwLG8oNDczODUpKSxfLnQobnVsbCx2b2lkIDAsbygxNTgzOTYpKV0sIkFyb29uLkRvd24iOltfLnQobnVsbCx2b2lkIDAsbygyMTM3MDMpKSxfLnQobnVsbCx2b2lkIDAsbyg3NjU3NjUpKV0sIkJCLnVwcGVyIjpbXy50KG51bGwsdm9pZCAwLG8oOTk1NjMxKSksXy50KG51bGwsdm9pZCAwLG8oOTEzOTkyKSldLCJCQi5sb3dlciI6W18udChudWxsLHZvaWQgMCxvKDE5NjY5MSkpLF8udChudWxsLHZvaWQgMCxvKDQzMDUzMCkpXSxnb29kd2lsbDpbXy50KG51bGwsdm9pZCAwLG8oNzczOTI2KSksXy50KG51bGwsdm9pZCAwLG8oNzczOTI2KSldLGRlYnRfdG9fZXF1aXR5X2ZxOltfLnQobnVsbCx2b2lkIDAsbygzMTUwOTIpKSxfLnQobnVsbCx2b2lkIDAsbygyNTk2NSkpXSxDQ0kyMDpbXy50KG51bGwsdm9pZCAwLG8oNjE3NDI3KSksXy50KG51bGwsdm9pZCAwLG8oNzUzMTYpKV0sIkRvbmNoQ2gyMC5VcHBlciI6W18udChudWxsLHZvaWQgMCxvKDM3ODAyNCkpLF8udChudWxsLHZvaWQgMCxvKDYxNzQ2OCkpXSwiRG9uY2hDaDIwLkxvd2VyIjpbXy50KG51bGwsdm9pZCAwLG8oNjA4NjU2KSksXy50KG51bGwsdm9pZCAwLG8oMzUxOTYzKSldLEh1bGxNQTk6W18udChudWxsLHZvaWQgMCxvKDc2MDcxOSkpLF8udChudWxsLHZvaWQgMCxvKDczOTIwMykpXSxBTzpbXy50KG51bGwsdm9pZCAwLG8oMzQ0NTUyKSksXy50KG51bGwsdm9pZCAwLG8oNzk5NTUzKSldLCJQaXZvdC5NLkNsYXNzaWMuUzMiOltfLnQobnVsbCx2b2lkIDAsbygxMzA0NjcpKSxfLnQobnVsbCx2b2lkIDAsbyg4NjA4NTMpKV0sIlBpdm90Lk0uQ2xhc3NpYy5TMiI6W18udChudWxsLHZvaWQgMCxvKDUxOTAyNykpLF8udChudWxsLHZvaWQgMCxvKDQ0MTg0MSkpXSwiUGl2b3QuTS5DbGFzc2ljLlMxIjpbXy50KG51bGwsdm9pZCAwLG8oNDk1MzE3KSksXy50KG51bGwsdm9pZCAwLG8oMjI4MjkpKV0sIlBpdm90Lk0uQ2xhc3NpYy5NaWRkbGUiOltfLnQobnVsbCx2b2lkIDAsbyg1NjU1MjYpKSxfLnQobnVsbCx2b2lkIDAsbyg3MzY2MjcpKV0sIlBpdm90Lk0uQ2xhc3NpYy5SMSI6W18udChudWxsLHZvaWQgMCxvKDYyMjgzNCkpLF8udChudWxsLHZvaWQgMCxvKDEyMzgwNSkpXSwiUGl2b3QuTS5DbGFzc2ljLlIyIjpbXy50KG51bGwsdm9pZCAwLG8oNTE3MzAwKSksXy50KG51bGwsdm9pZCAwLG8oNTk0NDAxKSldLCJQaXZvdC5NLkNsYXNzaWMuUjMiOltfLnQobnVsbCx2b2lkIDAsbyg3NzE1NikpLF8udChudWxsLHZvaWQgMCxvKDEzNDEzKSldLCJQaXZvdC5NLkZpYm9uYWNjaS5TMyI6W18udChudWxsLHZvaWQgMCxvKDcxMjU3NikpLF8udChudWxsLHZvaWQgMCxvKDg2MDg1MykpXSwiUGl2b3QuTS5GaWJvbmFjY2kuUzIiOltfLnQobnVsbCx2b2lkIDAsbygyMDI1ODcpKSxfLnQobnVsbCx2b2lkIDAsbyg0NDE4NDEpKV0sIlBpdm90Lk0uRmlib25hY2NpLlMxIjpbXy50KG51bGwsdm9pZCAwLG8oMzg5Nzc4KSksXy50KG51bGwsdm9pZCAwLG8oMjI4MjkpKV0sIlBpdm90Lk0uRmlib25hY2NpLk1pZGRsZSI6W18udChudWxsLHZvaWQgMCxvKDg4NTYzNCkpLF8udChudWxsLHZvaWQgMCxvKDczNjYyNykpXSwiUGl2b3QuTS5GaWJvbmFjY2kuUjEiOltfLnQobnVsbCx2b2lkIDAsbygzNzQ0MDYpKSxfLnQobnVsbCx2b2lkIDAsbygxMjM4MDUpKV0sIlBpdm90Lk0uRmlib25hY2NpLlIyIjpbXy50KG51bGwsdm9pZCAwLG8oMTg3MjE1KSksXy50KG51bGwsdm9pZCAwLG8oNTk0NDAxKSldLCJQaXZvdC5NLkZpYm9uYWNjaS5SMyI6W18udChudWxsLHZvaWQgMCxvKDU4MTAxMikpLF8udChudWxsLHZvaWQgMCxvKDEzNDEzKSldLCJQaXZvdC5NLkNhbWFyaWxsYS5TMyI6W18udChudWxsLHZvaWQgMCxvKDk0Mjk3NykpLF8udChudWxsLHZvaWQgMCxvKDg2MDg1MykpXSwKIlBpdm90Lk0uQ2FtYXJpbGxhLlMyIjpbXy50KG51bGwsdm9pZCAwLG8oNzU1Nzg2KSksXy50KG51bGwsdm9pZCAwLG8oNDQxODQxKSldLCJQaXZvdC5NLkNhbWFyaWxsYS5TMSI6W18udChudWxsLHZvaWQgMCxvKDczNjM3MSkpLF8udChudWxsLHZvaWQgMCxvKDIyODI5KSldLCJQaXZvdC5NLkNhbWFyaWxsYS5NaWRkbGUiOltfLnQobnVsbCx2b2lkIDAsbyg4NzQ0NjkpKSxfLnQobnVsbCx2b2lkIDAsbyg3MzY2MjcpKV0sIlBpdm90Lk0uQ2FtYXJpbGxhLlIxIjpbXy50KG51bGwsdm9pZCAwLG8oOTM5ODg3KSksXy50KG51bGwsdm9pZCAwLG8oMTIzODA1KSldLCJQaXZvdC5NLkNhbWFyaWxsYS5SMiI6W18udChudWxsLHZvaWQgMCxvKDc1NDk0KSksXy50KG51bGwsdm9pZCAwLG8oNTk0NDAxKSldLCJQaXZvdC5NLkNhbWFyaWxsYS5SMyI6W18udChudWxsLHZvaWQgMCxvKDE0NjQ5MykpLF8udChudWxsLHZvaWQgMCxvKDEzNDEzKSldLCJQaXZvdC5NLldvb2RpZS5TMyI6W18udChudWxsLHZvaWQgMCxvKDMxOTEwNikpLF8udChudWxsLHZvaWQgMCxvKDg2MDg1MykpXSwiUGl2b3QuTS5Xb29kaWUuUzIiOltfLnQobnVsbCx2b2lkIDAsbyg5MzgzNjEpKSxfLnQobnVsbCx2b2lkIDAsbyg0NDE4NDEpKV0sIlBpdm90Lk0uV29vZGllLlMxIjpbXy50KG51bGwsdm9pZCAwLG8oMTI1NTUyKSksXy50KG51bGwsdm9pZCAwLG8oMjI4MjkpKV0sIlBpdm90Lk0uV29vZGllLk1pZGRsZSI6W18udChudWxsLHZvaWQgMCxvKDE1OTA5MikpLF8udChudWxsLHZvaWQgMCxvKDczNjYyNykpXSwiUGl2b3QuTS5Xb29kaWUuUjEiOltfLnQobnVsbCx2b2lkIDAsbygyNjg3MTYpKSxfLnQobnVsbCx2b2lkIDAsbygxMjM4MDUpKV0sIlBpdm90Lk0uV29vZGllLlIyIjpbXy50KG51bGwsdm9pZCAwLG8oODE1MjUpKSxfLnQobnVsbCx2b2lkIDAsbyg1OTQ0MDEpKV0sIlBpdm90Lk0uV29vZGllLlIzIjpbXy50KG51bGwsdm9pZCAwLG8oODk0MzM0KSksXy50KG51bGwsdm9pZCAwLG8oMTM0MTMpKV0sIlBpdm90Lk0uRGVtYXJrLlMxIjpbXy50KG51bGwsdm9pZCAwLG8oODgxNzIwKSksXy50KG51bGwsdm9pZCAwLG8oMjI4MjkpKV0sIlBpdm90Lk0uRGVtYXJrLk1pZGRsZSI6W18udChudWxsLHZvaWQgMCxvKDQ5MTU0MCkpLF8udChudWxsLHZvaWQgMCxvKDczNjYyNykpXSwiUGl2b3QuTS5EZW1hcmsuUjEiOltfLnQobnVsbCx2b2lkIDAsbyg5NDEyMjQpKSxfLnQobnVsbCx2b2lkIDAsbygxMjM4MDUpKV0sIktsdENobmwudXBwZXIiOltfLnQobnVsbCx2b2lkIDAsbygzMDU4ODUpKSxfLnQobnVsbCx2b2lkIDAsbygyNDA3MTUpKV0sIktsdENobmwubG93ZXIiOltfLnQobnVsbCx2b2lkIDAsbyg2Nzk1NDYpKSxfLnQobnVsbCx2b2lkIDAsbygyNTc3NjApKV0sIlAuU0FSIjpbXy50KG51bGwsdm9pZCAwLG8oOTQxMDI4KSksXy50KG51bGwsdm9pZCAwLG8oMTE0MDk5KSldLCJWYWx1ZS5UcmFkZWQiOltfLnQobnVsbCx2b2lkIDAsbyg2OTAyMDYpKSxfLnQobnVsbCx2b2lkIDAsbyg2OTAyMDYpKV0sTW9uZXlGbG93OltfLnQobnVsbCx2b2lkIDAsbygxNzgwOTYpKSxfLnQobnVsbCx7Y29udGV4dDoiTW9uZXlfRmxvd19zaG9ydF90aXRsZSJ9LG8oOTQ5NzA0KSldLENoYWlraW5Nb25leUZsb3c6W18udChudWxsLHZvaWQgMCxvKDI1ODE0MykpLF8udChudWxsLHtjb250ZXh0OiJDaGFpa2luX01vbmV5X0Zsb3dfc2hvcnRfdGl0bGUifSxvKDE2MDU2MikpXSwiUmVjb21tZW5kLkFsbCI6W18udChudWxsLHZvaWQgMCxvKDU2OTU5NSkpLF8udChudWxsLHZvaWQgMCxvKDU2OTU5NSkpXSwiUmVjb21tZW5kLk1BIjpbXy50KG51bGwsdm9pZCAwLG8oMjAwNDUyKSksXy50KG51bGwsdm9pZCAwLG8oMjAwNDUyKSldLCJSZWNvbW1lbmQuT3RoZXIiOltfLnQobnVsbCx2b2lkIDAsbyg1NDA0NDApKSxfLnQobnVsbCx2b2lkIDAsbyg1NDA0NDApKV0sIlN0b2NoLlJTSS5LIjpbXy50KG51bGwsdm9pZCAwLG8oNTg1Njg5KSksXy50KG51bGwsdm9pZCAwLG8oNzAwNjA4KSldLCJTdG9jaC5SU0kuRCI6W18udChudWxsLHZvaWQgMCxvKDExMzczMSkpLF8udChudWxsLHZvaWQgMCxvKDYzOTU5NSkpXSwiVy5SIjpbXy50KG51bGwsdm9pZCAwLG8oMjYwOTEwKSksXy50KG51bGwsdm9pZCAwLG8oNTM5MjM4KSldLFJPQzpbXy50KG51bGwsdm9pZCAwLG8oODAyMDg4KSksXy50KG51bGwsdm9pZCAwLG8oODQ4MTU0KSldLEJCUG93ZXI6W18udChudWxsLHtjb250ZXh0OiJzdHVkeSJ9LG8oMjQ4Nzg1KSksXy50KG51bGwsdm9pZCAwLG8oOTQ5ODI1KSldLFVPOltfLnQobnVsbCx2b2lkIDAsbyg5OTk5NjEpKSxfLnQobnVsbCx2b2lkIDAsbyg4OTU3NzQpKV0sIkljaGltb2t1LkNMaW5lIjpbXy50KG51bGwsdm9pZCAwLG8oOTI2NCkpLF8udChudWxsLHZvaWQgMCxvKDcwMjk0NikpXSwiSWNoaW1va3UuQkxpbmUiOltfLnQobnVsbCx2b2lkIDAsbyg0OTA3MjgpKSxfLnQobnVsbCx2b2lkIDAsbyg3NTI5MzQpKV0sIkljaGltb2t1LkxlYWQxIjpbXy50KG51bGwsdm9pZCAwLG8oMjk3MzEwKSksXy50KG51bGwsdm9pZCAwLG8oMzEwMTc3KSldLCJJY2hpbW9rdS5MZWFkMiI6W18udChudWxsLHZvaWQgMCxvKDcwNjU2MikpLF8udChudWxsLHZvaWQgMCxvKDgzOTU4MSkpXSxWV0FQOltfLnQobnVsbCx7Y29udGV4dDoic3R1ZHkifSxvKDg2ODQxOSkpLF8udChudWxsLHZvaWQgMCxvKDI1MTE2NykpXSxWV01BOltfLnQobnVsbCx2b2lkIDAsbyg1NDMzOTEpKSxfLnQobnVsbCx2b2lkIDAsbygzMzk0MDcpKV0sQURSOltfLnQobnVsbCx2b2lkIDAsbygzMjMzOTIpKSxfLnQobnVsbCx2b2lkIDAsbygxNTA0NzQpKV0sIjI0aF92b2x8NSI6W18udChudWxsLHZvaWQgMCxvKDU1NzkzMykpLF8udChudWxsLHZvaWQgMCxvKDIzNDA3NykpXSwiMjRoX3ZvbF9jaGFuZ2V8NSI6W18udChudWxsLHZvaWQgMCxvKDcxMTE4OCkpLF8udChudWxsLHZvaWQgMCxvKDM1MjQ1NykpXSx0b3RhbF9yZXZlbnVlX3lveV9ncm93dGhfZnE6W18udChudWxsLHZvaWQgMCxvKDgwMzI4MSkpLF8udChudWxsLHZvaWQgMCxvKDgwMzI4MSkpXSwKdG90YWxfcmV2ZW51ZV9xb3FfZ3Jvd3RoX2ZxOltfLnQobnVsbCx2b2lkIDAsbyg0ODI1NTMpKSxfLnQobnVsbCx2b2lkIDAsbyg0ODI1NTMpKV0sdG90YWxfcmV2ZW51ZV95b3lfZ3Jvd3RoX2Z5OltfLnQobnVsbCx2b2lkIDAsbygxMjgzNzYpKSxfLnQobnVsbCx2b2lkIDAsbygxMjgzNzYpKV0sdG90YWxfcmV2ZW51ZV95b3lfZ3Jvd3RoX3R0bTpbXy50KG51bGwsdm9pZCAwLG8oNzQwOTI4KSksXy50KG51bGwsdm9pZCAwLG8oNzQwOTI4KSldLGdyb3NzX3Byb2ZpdF95b3lfZ3Jvd3RoX2ZxOltfLnQobnVsbCx2b2lkIDAsbygxMDc5MDQpKSxfLnQobnVsbCx2b2lkIDAsbygxMDc5MDQpKV0sZ3Jvc3NfcHJvZml0X3FvcV9ncm93dGhfZnE6W18udChudWxsLHZvaWQgMCxvKDE5MTU3NCkpLF8udChudWxsLHZvaWQgMCxvKDE5MTU3NCkpXSxncm9zc19wcm9maXRfeW95X2dyb3d0aF9meTpbXy50KG51bGwsdm9pZCAwLG8oMzU2MTI1KSksXy50KG51bGwsdm9pZCAwLG8oMzU2MTI1KSldLGdyb3NzX3Byb2ZpdF95b3lfZ3Jvd3RoX3R0bTpbXy50KG51bGwsdm9pZCAwLG8oNzYxMzA1KSksXy50KG51bGwsdm9pZCAwLG8oNzYxMzA1KSldLGViaXRkYV95b3lfZ3Jvd3RoX2ZxOltfLnQobnVsbCx2b2lkIDAsbyg1Mzk3MDUpKSxfLnQobnVsbCx2b2lkIDAsbyg1Mzk3MDUpKV0sZWJpdGRhX3FvcV9ncm93dGhfZnE6W18udChudWxsLHZvaWQgMCxvKDc0NjIzKSksXy50KG51bGwsdm9pZCAwLG8oNzQ2MjMpKV0sZWJpdGRhX3lveV9ncm93dGhfZnk6W18udChudWxsLHZvaWQgMCxvKDk4NjI5MikpLF8udChudWxsLHZvaWQgMCxvKDk4NjI5MikpXSxlYml0ZGFfeW95X2dyb3d0aF90dG06W18udChudWxsLHZvaWQgMCxvKDgzNDY2OCkpLF8udChudWxsLHZvaWQgMCxvKDgzNDY2OCkpXSxuZXRfaW5jb21lX3lveV9ncm93dGhfZnE6W18udChudWxsLHZvaWQgMCxvKDg1MzM0NikpLF8udChudWxsLHZvaWQgMCxvKDg1MzM0NikpXSxuZXRfaW5jb21lX3FvcV9ncm93dGhfZnE6W18udChudWxsLHZvaWQgMCxvKDE0ODU3MCkpLF8udChudWxsLHZvaWQgMCxvKDE0ODU3MCkpXSxuZXRfaW5jb21lX3lveV9ncm93dGhfZnk6W18udChudWxsLHZvaWQgMCxvKDk4MzY3MSkpLF8udChudWxsLHZvaWQgMCxvKDk4MzY3MSkpXSxuZXRfaW5jb21lX3lveV9ncm93dGhfdHRtOltfLnQobnVsbCx2b2lkIDAsbyg3ODkwNykpLF8udChudWxsLHZvaWQgMCxvKDc4OTA3KSldLGZyZWVfY2FzaF9mbG93X3lveV9ncm93dGhfZnE6W18udChudWxsLHZvaWQgMCxvKDI2NTA2KSksXy50KG51bGwsdm9pZCAwLG8oMjY1MDYpKV0sZnJlZV9jYXNoX2Zsb3dfcW9xX2dyb3d0aF9mcTpbXy50KG51bGwsdm9pZCAwLG8oMzQ0MzYpKSxfLnQobnVsbCx2b2lkIDAsbygzNDQzNikpXSxmcmVlX2Nhc2hfZmxvd195b3lfZ3Jvd3RoX2Z5OltfLnQobnVsbCx2b2lkIDAsbyg2MDc1NjApKSxfLnQobnVsbCx2b2lkIDAsbyg2MDc1NjApKV0sZnJlZV9jYXNoX2Zsb3dfeW95X2dyb3d0aF90dG06W18udChudWxsLHZvaWQgMCxvKDc4NTcxKSksXy50KG51bGwsdm9pZCAwLG8oNzg1NzEpKV0sZWFybmluZ3NfcGVyX3NoYXJlX2RpbHV0ZWRfeW95X2dyb3d0aF9mcTpbXy50KG51bGwsdm9pZCAwLG8oODIyNzgyKSksXy50KG51bGwsdm9pZCAwLG8oODIyNzgyKSldLGVhcm5pbmdzX3Blcl9zaGFyZV9kaWx1dGVkX3FvcV9ncm93dGhfZnE6W18udChudWxsLHZvaWQgMCxvKDk2NjI1NikpLF8udChudWxsLHZvaWQgMCxvKDk2NjI1NikpXSxlYXJuaW5nc19wZXJfc2hhcmVfZGlsdXRlZF95b3lfZ3Jvd3RoX2Z5OltfLnQobnVsbCx2b2lkIDAsbyg1Mjg5NzIpKSxfLnQobnVsbCx2b2lkIDAsbyg1Mjg5NzIpKV0sZWFybmluZ3NfcGVyX3NoYXJlX2RpbHV0ZWRfeW95X2dyb3d0aF90dG06W18udChudWxsLHZvaWQgMCxvKDQwNjg2MykpLF8udChudWxsLHZvaWQgMCxvKDQwNjg2MykpXSxkcHNfY29tbW9uX3N0b2NrX3ByaW1faXNzdWVfeW95X2dyb3d0aF9meTpbXy50KG51bGwsdm9pZCAwLG8oNTU3OTQxKSksXy50KG51bGwsdm9pZCAwLG8oNTU3OTQxKSldLHRvdGFsX2Fzc2V0c195b3lfZ3Jvd3RoX2ZxOltfLnQobnVsbCx2b2lkIDAsbyg1NDgzNDIpKSxfLnQobnVsbCx2b2lkIDAsbyg1NDgzNDIpKV0sdG90YWxfYXNzZXRzX3FvcV9ncm93dGhfZnE6W18udChudWxsLHZvaWQgMCxvKDk3MzYwKSksXy50KG51bGwsdm9pZCAwLG8oOTczNjApKV0sdG90YWxfYXNzZXRzX3lveV9ncm93dGhfZnk6W18udChudWxsLHZvaWQgMCxvKDQwMzY0NykpLF8udChudWxsLHZvaWQgMCxvKDQwMzY0NykpXSx0b3RhbF9kZWJ0X3lveV9ncm93dGhfZnE6W18udChudWxsLHZvaWQgMCxvKDY3NTEwOCkpLF8udChudWxsLHZvaWQgMCxvKDY3NTEwOCkpXSx0b3RhbF9kZWJ0X3FvcV9ncm93dGhfZnE6W18udChudWxsLHZvaWQgMCxvKDc5MzAzNikpLF8udChudWxsLHZvaWQgMCxvKDc5MzAzNikpXSx0b3RhbF9kZWJ0X3lveV9ncm93dGhfZnk6W18udChudWxsLHZvaWQgMCxvKDYyMzgzNykpLF8udChudWxsLHZvaWQgMCxvKDYyMzgzNykpXSxzZWxsX2dlbl9hZG1pbl9leHBfb3RoZXJfcmF0aW9fZnk6W18udChudWxsLHZvaWQgMCxvKDk5MjQ3MCkpLF8udChudWxsLHZvaWQgMCxvKDkzMDc1NCkpXSxzZWxsX2dlbl9hZG1pbl9leHBfb3RoZXJfcmF0aW9fdHRtOltfLnQobnVsbCx2b2lkIDAsbyg1OTM4MTIpKSxfLnQobnVsbCx2b2lkIDAsbygyNDI1MzMpKV0scmVzZWFyY2hfYW5kX2Rldl9yYXRpb19meTpbXy50KG51bGwsdm9pZCAwLG8oODcwMzE2KSksXy50KG51bGwsdm9pZCAwLG8oMzM0MTAyKSldLHJlc2VhcmNoX2FuZF9kZXZfcmF0aW9fdHRtOltfLnQobnVsbCx2b2lkIDAsbyg3MDEwMzUpKSxfLnQobnVsbCx2b2lkIDAsbyg1MDIwODgpKV0sZ3Jvc3NfcHJvZml0X21hcmdpbl9meTpbXy50KG51bGwsdm9pZCAwLG8oOTAwOTQ1KSksXy50KG51bGwsdm9pZCAwLG8oOTAwOTQ1KSldLG9wZXJfaW5jb21lX21hcmdpbl9meTpbXy50KG51bGwsdm9pZCAwLG8oNDM1MDcwKSksXy50KG51bGwsdm9pZCAwLG8oNDM1MDcwKSldLApuZXRfaW5jb21lX2JlZl9kaXNjX29wZXJfbWFyZ2luX2Z5OltfLnQobnVsbCx2b2lkIDAsbyg5NDA3MTEpKSxfLnQobnVsbCx2b2lkIDAsbyg5NDA3MTEpKV0sY2FzaF9uX2VxdWl2YWxlbnRzX2ZxOltfLnQobnVsbCx2b2lkIDAsbyg3NjUwMTcpKSxfLnQobnVsbCx2b2lkIDAsbyg3NjUwMTcpKV0sY2FzaF9uX2VxdWl2YWxlbnRzX2Z5OltfLnQobnVsbCx2b2lkIDAsbyg0NzY4MzcpKSxfLnQobnVsbCx2b2lkIDAsbyg0NzY4MzcpKV0sY2FzaF9uX3Nob3J0X3Rlcm1faW52ZXN0X2ZxOltfLnQobnVsbCx2b2lkIDAsbyg3ODg4MzgpKSxfLnQobnVsbCx2b2lkIDAsbygyNDczNjApKV0sY2FzaF9uX3Nob3J0X3Rlcm1faW52ZXN0X2Z5OltfLnQobnVsbCx2b2lkIDAsbygyNTQ5NDcpKSxfLnQobnVsbCx2b2lkIDAsbyg5MTUxNTQpKV0sY2VudHJhbGl6YXRpb246W18udChudWxsLHZvaWQgMCxvKDYxMTExOCkpLF8udChudWxsLHZvaWQgMCxvKDYxMTExOCkpXSxmaXNjYWxfcGVyaW9kX2VuZF9meTpbXy50KG51bGwsdm9pZCAwLG8oMzE0NTIxKSksXy50KG51bGwsdm9pZCAwLG8oMzE0NTIxKSldLGZpc2NhbF9wZXJpb2RfZnE6W18udChudWxsLHZvaWQgMCxvKDk1MDgwMikpLF8udChudWxsLHZvaWQgMCxvKDk1MDgwMikpXSxmaXNjYWxfcGVyaW9kX2VuZF9mcTpbXy50KG51bGwsdm9pZCAwLG8oNTMwNDQ0KSksXy50KG51bGwsdm9pZCAwLG8oNTMwNDQ0KSldLGVudGVycHJpc2VfdmFsdWVfY3VycmVudDpbXy50KG51bGwsdm9pZCAwLG8oNjczMTYxKSksXy50KG51bGwsdm9pZCAwLG8oNjczMTYxKSldLHByaWNlX2Vhcm5pbmdzX2N1cnJlbnQ6W18udChudWxsLHZvaWQgMCxvKDU1NzMzNikpLF8udChudWxsLHZvaWQgMCxvKDU1NzMzNikpXSxwcmljZV9zYWxlc19jdXJyZW50OltfLnQobnVsbCx2b2lkIDAsbyg3ODI2MTQpKSxfLnQobnVsbCx2b2lkIDAsbyg3ODI2MTQpKV0scHJpY2VfYm9va19jdXJyZW50OltfLnQobnVsbCx2b2lkIDAsbyg1OTAyMDUpKSxfLnQobnVsbCx2b2lkIDAsbyg1OTAyMDUpKV0scHJpY2VfY2FzaF9mbG93X2N1cnJlbnQ6W18udChudWxsLHZvaWQgMCxvKDMzMjIxNCkpLF8udChudWxsLHZvaWQgMCxvKDMzMjIxNCkpXSxwcmljZV9mcmVlX2Nhc2hfZmxvd19jdXJyZW50OltfLnQobnVsbCx2b2lkIDAsbyg4NjQ2NDgpKSxfLnQobnVsbCx2b2lkIDAsbyg4NjQ2NDgpKV0sdG90YWxfcmV2ZW51ZV90dG06W18udChudWxsLHZvaWQgMCxvKDMwMjE2NSkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSksXy50KG51bGwsdm9pZCAwLG8oMzAyMTY1KSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KV0scmV2ZW51ZV9wZXJfc2hhcmVfdHRtOltfLnQobnVsbCx2b2lkIDAsbygxMzI1NDgpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbyg4NDcxNDEpKX0pLF8udChudWxsLHZvaWQgMCxvKDEzMjU0OCkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSldLGdyb3NzX3Byb2ZpdF90dG06W18udChudWxsLHZvaWQgMCxvKDM5NzYwMikpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSksXy50KG51bGwsdm9pZCAwLG8oMzk3NjAyKSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KV0sb3Blcl9pbmNvbWVfdHRtOltfLnQobnVsbCx2b2lkIDAsbyg4NTAyMTEpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbyg4NDcxNDEpKX0pLF8udChudWxsLHZvaWQgMCxvKDg1MDIxMSkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSldLG5ldF9pbmNvbWVfdHRtOltfLnQobnVsbCx2b2lkIDAsbyg1MTA3MjYpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbyg4NDcxNDEpKX0pLF8udChudWxsLHZvaWQgMCxvKDUxMDcyNikpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSldLGVhcm5pbmdzX3Blcl9zaGFyZV9kaWx1dGVkX2ZxOltfLnQobnVsbCx2b2lkIDAsbyg3Mjg1NDUpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbygyOTg1NzYpKX0pLF8udChudWxsLHZvaWQgMCxvKDcyODU0NSkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDI5ODU3NikpfSldLHRvdGFsX3NoYXJlc19vdXRzdGFuZGluZ19jdXJyZW50OltfLnQobnVsbCx2b2lkIDAsbygzMzYzMDMpKSxfLnQobnVsbCx2b2lkIDAsbygzMzYzMDMpKV0sZmxvYXRfc2hhcmVzX291dHN0YW5kaW5nX2N1cnJlbnQ6W18udChudWxsLHZvaWQgMCxvKDk4MTY0MykpLF8udChudWxsLHZvaWQgMCxvKDk4MTY0MykpXSx0b3RhbF9hc3NldHNfZnE6W18udChudWxsLHZvaWQgMCxvKDQxNDI1OCkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDI5ODU3NikpfSksXy50KG51bGwsdm9pZCAwLG8oNDE0MjU4KSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oMjk4NTc2KSl9KV0sdG90YWxfZXF1aXR5X2ZxOltfLnQobnVsbCx2b2lkIDAsbyg3MzMyNikpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDI5ODU3NikpfSksXy50KG51bGwsdm9pZCAwLG8oNzMzMjYpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbygyOTg1NzYpKX0pXSx0b3RhbF9kZWJ0X2ZxOltfLnQobnVsbCx2b2lkIDAsbyg0Njk1NTgpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbygyOTg1NzYpKX0pLF8udChudWxsLHZvaWQgMCxvKDQ2OTU1OCkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDI5ODU3NikpfSldLGJvb2tfcGVyX3NoYXJlX2ZxOltfLnQobnVsbCx2b2lkIDAsbygyNDUzMTcpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbygyOTg1NzYpKX0pLF8udChudWxsLHZvaWQgMCxvKDI0NTMxNykpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDI5ODU3NikpfSldLGN1cnJlbnRfcmF0aW9fZnE6W18udChudWxsLHZvaWQgMCxvKDQ5OTI2NSkpLmZvcm1hdCh7CnBlcmlvZDpfLnQobnVsbCx2b2lkIDAsbygyOTg1NzYpKX0pLF8udChudWxsLHZvaWQgMCxvKDQ5OTI2NSkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDI5ODU3NikpfSldLGFzc2V0X3R1cm5vdmVyX2ZxOltfLnQobnVsbCx2b2lkIDAsbyg3NDgyOTApKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbygyOTg1NzYpKX0pLF8udChudWxsLHZvaWQgMCxvKDc0ODI5MCkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDI5ODU3NikpfSldLGNhc2hfZl9vcGVyYXRpbmdfYWN0aXZpdGllc190dG06W18udChudWxsLHZvaWQgMCxvKDM1Nzc3NCkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSksXy50KG51bGwsdm9pZCAwLG8oMzU3Nzc0KSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KV0sY2FzaF9mX2ludmVzdGluZ19hY3Rpdml0aWVzX3R0bTpbXy50KG51bGwsdm9pZCAwLG8oNjM4NDk4KSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KSxfLnQobnVsbCx2b2lkIDAsbyg2Mzg0OTgpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbyg4NDcxNDEpKX0pXSxjYXNoX2ZfZmluYW5jaW5nX2FjdGl2aXRpZXNfdHRtOltfLnQobnVsbCx2b2lkIDAsbyg3Njk4NzQpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbyg4NDcxNDEpKX0pLF8udChudWxsLHZvaWQgMCxvKDc2OTg3NCkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSldLGZyZWVfY2FzaF9mbG93X3R0bTpbXy50KG51bGwsdm9pZCAwLG8oNjIyNTU5KSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KSxfLnQobnVsbCx2b2lkIDAsbyg2MjI1NTkpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbyg4NDcxNDEpKX0pXSxjYXBpdGFsX2V4cGVuZGl0dXJlc190dG06W18udChudWxsLHZvaWQgMCxvKDUzNTEzMikpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSksXy50KG51bGwsdm9pZCAwLG8oNTM1MTMyKSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KV0sZ3Jvc3NfbWFyZ2luX3R0bTpbXy50KG51bGwsdm9pZCAwLG8oOTY2NTA1KSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KSxfLnQobnVsbCx2b2lkIDAsbyg5NjY1MDUpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbyg4NDcxNDEpKX0pXSxvcGVyYXRpbmdfbWFyZ2luX3R0bTpbXy50KG51bGwsdm9pZCAwLG8oNDcyNjY5KSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KSxfLnQobnVsbCx2b2lkIDAsbyg0NzI2NjkpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbyg4NDcxNDEpKX0pXSxwcmVfdGF4X21hcmdpbl90dG06W18udChudWxsLHZvaWQgMCxvKDY1Njk3MSkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSksXy50KG51bGwsdm9pZCAwLG8oNjU2OTcxKSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KV0sbmV0X21hcmdpbl90dG06W18udChudWxsLHZvaWQgMCxvKDg5MDU0OCkpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSksXy50KG51bGwsdm9pZCAwLG8oODkwNTQ4KSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KV0scmV0dXJuX29uX2Fzc2V0c19mcTpbXy50KG51bGwsdm9pZCAwLG8oODE4MTExKSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KSxfLnQobnVsbCx2b2lkIDAsbyg4MTgxMTEpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbyg4NDcxNDEpKX0pXSxyZXR1cm5fb25fZXF1aXR5X2ZxOltfLnQobnVsbCx2b2lkIDAsbyg0ODEwODcpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbyg4NDcxNDEpKX0pLF8udChudWxsLHZvaWQgMCxvKDQ4MTA4NykpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSldLHJldHVybl9vbl9pbnZlc3RlZF9jYXBpdGFsX2ZxOltfLnQobnVsbCx2b2lkIDAsbygyMzE3MykpLmZvcm1hdCh7cGVyaW9kOl8udChudWxsLHZvaWQgMCxvKDg0NzE0MSkpfSksXy50KG51bGwsdm9pZCAwLG8oMjMxNzMpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbyg4NDcxNDEpKX0pXSxyZXZlbnVlX3Blcl9lbXBsb3llZV9meTpbXy50KG51bGwsdm9pZCAwLG8oNjMwNjc2KSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oMjg3OTE4KSl9KSxfLnQobnVsbCx2b2lkIDAsbyg2MzA2NzYpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbygyODc5MTgpKX0pXSxuZXRfaW5jb21lX3Blcl9lbXBsb3llZV9meTpbXy50KG51bGwsdm9pZCAwLG8oMjM3NTg1KSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oMjg3OTE4KSl9KSxfLnQobnVsbCx2b2lkIDAsbygyMzc1ODUpKS5mb3JtYXQoe3BlcmlvZDpfLnQobnVsbCx2b2lkIDAsbygyODc5MTgpKX0pXSxkaXZpZGVuZF9hbW91bnRfcmVjZW50OltfLnQobnVsbCx2b2lkIDAsbyg3OTIyNjApKSxfLnQobnVsbCx2b2lkIDAsbyg3OTIyNjApKV0sZGl2aWRlbmRfYW1vdW50X3VwY29taW5nOltfLnQobnVsbCx2b2lkIDAsbyg5NDI1MDQpKSxfLnQobnVsbCx2b2lkIDAsbyg5NDI1MDQpKV0sZXhfZGl2aWRlbmRfZGF0ZV9yZWNlbnQ6W18udChudWxsLHZvaWQgMCxvKDU2NDA4OSkpLF8udChudWxsLHZvaWQgMCxvKDU2NDA4OSkpXSxleF9kaXZpZGVuZF9kYXRlX3VwY29taW5nOltfLnQobnVsbCx2b2lkIDAsbyg3NTAwNTMpKSxfLnQobnVsbCx2b2lkIDAsbyg3NTAwNTMpKV0sZGl2aWRlbmRfcGF5b3V0X3JhdGlvX3R0bTpbXy50KG51bGwsdm9pZCAwLG8oNDU3NTA1KSkuZm9ybWF0KHtwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KSxfLnQobnVsbCx2b2lkIDAsbyg0NTc1MDUpKS5mb3JtYXQoewpwZXJpb2Q6Xy50KG51bGwsdm9pZCAwLG8oODQ3MTQxKSl9KV0scHJpY2VfdGFyZ2V0X2F2ZXJhZ2U6W18udChudWxsLHZvaWQgMCxvKDgxODAwMikpLF8udChudWxsLHZvaWQgMCxvKDgxODAwMikpXX07bGV0IHhlPW51bGw7Y29uc3QgQWU9KCk9PnhlO3ZhciBNZT1vKDc0NDI0MCksSWU9byg3MDI5NjcpLFJlPW8oNzY5OTM5KSxGZT1vKDQ5NTM5NiksTGU9byg2ODMzODMpLERlPW8oMjg3ODMyKSxPZT1vKDIzMTc3MCksTmU9byg2NDQ5MDUpLFBlPW8oNjM1MjcwKSxCZT1vKDM4NjcyNiksJGU9bygxMjM3MjkpLFdlPW8oNzI1NjAyKSxxZT1vKDEyOTc5NCksVmU9bygyMTcpLEhlPW8oMjY3NTg3KSxVZT1vKDkzMzEzOCksemU9bygyODU5OTMpLGplPW8oNzg2NTc4KSxHZT1vKDY3Nzc3KSxYZT1vKDM5OTQ5NCksS2U9byg0MTQ3OTYpLFllPW8oMTMwNjg2KSxKZT1vKDEyMDAzNyksWmU9bygyMjAzNDEpLFFlPW8oMjIzNDgzKSxldD1vKDgzNTE3NCksdHQ9byg4NzQ5NzMpO2NvbnN0IG90PVt7a2V5OiJDYW5kbGUuM0JsYWNrQ3Jvd3MiLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oODkwMzg3KSksc3ZnOk1lfSx7a2V5OiJDYW5kbGUuM1doaXRlU29sZGllcnMiLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oMjc3MDk3KSksc3ZnOkllfSx7a2V5OiJDYW5kbGUuQWJhbmRvbmVkQmFieS5CZWFyaXNoIixuYW1lOl8udChudWxsLHZvaWQgMCxvKDE1Njk2OSkpLHN2ZzpSZX0se2tleToiQ2FuZGxlLkFiYW5kb25lZEJhYnkuQnVsbGlzaCIsbmFtZTpfLnQobnVsbCx2b2lkIDAsbyg3NjQxMzYpKSxzdmc6RmV9LHtrZXk6IkNhbmRsZS5Eb2ppIixuYW1lOl8udChudWxsLHtjb250ZXh0OiJzdHVkeSJ9LG8oOTMwMDk4KSksc3ZnOkxlfSx7a2V5OiJDYW5kbGUuRG9qaS5EcmFnb25mbHkiLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oMzc1NDQpKSxzdmc6RGV9LHtrZXk6IkNhbmRsZS5Eb2ppLkdyYXZlc3RvbmUiLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oMTIzNzM2KSksc3ZnOk9lfSx7a2V5OiJDYW5kbGUuRW5ndWxmaW5nLkJlYXJpc2giLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oNDYyODk2KSksc3ZnOk5lfSx7a2V5OiJDYW5kbGUuRW5ndWxmaW5nLkJ1bGxpc2giLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oMzM5NTI3KSksc3ZnOlBlfSx7a2V5OiJDYW5kbGUuRXZlbmluZ1N0YXIiLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oMzQ5NjcwKSksc3ZnOkJlfSx7a2V5OiJDYW5kbGUuSGFtbWVyIixuYW1lOl8udChudWxsLHZvaWQgMCxvKDg2NTkwNykpLHN2ZzokZX0se2tleToiQ2FuZGxlLkhhbmdpbmdNYW4iLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oMzQ4MzMwKSksc3ZnOldlfSx7a2V5OiJDYW5kbGUuSGFyYW1pLkJlYXJpc2giLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oNDUwOTA3KSksc3ZnOnFlfSx7a2V5OiJDYW5kbGUuSGFyYW1pLkJ1bGxpc2giLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oNDYzODk2KSksc3ZnOlZlfSx7a2V5OiJDYW5kbGUuSW52ZXJ0ZWRIYW1tZXIiLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oMjcyMTYxKSksc3ZnOkhlfSx7a2V5OiJDYW5kbGUuS2lja2luZy5CZWFyaXNoIixuYW1lOl8udChudWxsLHZvaWQgMCxvKDQ1NzY5NCkpLHN2ZzpVZX0se2tleToiQ2FuZGxlLktpY2tpbmcuQnVsbGlzaCIsbmFtZTpfLnQobnVsbCx2b2lkIDAsbyg2MTg0OTIpKSxzdmc6emV9LHtrZXk6IkNhbmRsZS5Mb25nU2hhZG93Lkxvd2VyIixuYW1lOl8udChudWxsLHZvaWQgMCxvKDc0ODAxNCkpLHN2ZzpqZX0se2tleToiQ2FuZGxlLkxvbmdTaGFkb3cuVXBwZXIiLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oODEwODE3KSksc3ZnOkdlfSx7a2V5OiJDYW5kbGUuTWFydWJvenUuQmxhY2siLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oNTM1NzgzKSksc3ZnOlhlfSx7a2V5OiJDYW5kbGUuTWFydWJvenUuV2hpdGUiLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oOTUyNTY1KSksc3ZnOktlfSx7a2V5OiJDYW5kbGUuTW9ybmluZ1N0YXIiLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oNzE0NDYzKSksc3ZnOlllfSx7a2V5OiJDYW5kbGUuU2hvb3RpbmdTdGFyIixuYW1lOl8udChudWxsLHZvaWQgMCxvKDc3ODA0KSksc3ZnOkplfSx7a2V5OiJDYW5kbGUuU3Bpbm5pbmdUb3AuQmxhY2siLG5hbWU6Xy50KG51bGwse2NvbnRleHQ6InN0dWR5In0sbyg3NjMyMjYpKSxzdmc6WmV9LHtrZXk6IkNhbmRsZS5TcGlubmluZ1RvcC5XaGl0ZSIsbmFtZTpfLnQobnVsbCx7Y29udGV4dDoic3R1ZHkifSxvKDMzMzkxNCkpLHN2ZzpRZX0se2tleToiQ2FuZGxlLlRyaVN0YXIuQmVhcmlzaCIsbmFtZTpfLnQobnVsbCx2b2lkIDAsbygyOTExNzMpKSxzdmc6ZXR9LHtrZXk6IkNhbmRsZS5UcmlTdGFyLkJ1bGxpc2giLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oODY3MjY4KSksc3ZnOnR0fV0uc29ydCgoKGUsdCk9PmUubmFtZS5sb2NhbGVDb21wYXJlKHQubmFtZSkpKSxpdD1uZXcgWih7cHJpY2VTY2FsZToxZTgsbWluTW92ZToxfSksbnQ9bmV3IGouUHJpY2VGb3JtYXR0ZXIoe3ByaWNlU2NhbGU6MTAwLG1pbk1vdmU6MSxmcmFjdGlvbmFsOiExfSkscnQ9bmV3IGouUHJpY2VGb3JtYXR0ZXIoe3ByaWNlU2NhbGU6MSxtaW5Nb3ZlOjEsZnJhY3Rpb25hbDohMX0pLHN0PW5ldyBHLlZvbHVtZUZvcm1hdHRlcixhdD1uZXcgWC5QZXJjZW50YWdlRm9ybWF0dGVyLGx0PW5ldyBYLlBlcmNlbnRhZ2VGb3JtYXR0ZXIoe3ByaWNlU2NhbGU6MX0pLGN0PW5ldyBjbGFzc3tjb25zdHJ1Y3RvcihlKXt0aGlzLl9mb3JtYXRTdHI9ZXx8IiV5LSVtLSVkIn1mb3JtYXQoZSl7Y29uc3QgdD1uZXcgRGF0ZSgxZTMqZSk7cmV0dXJuIHRoaXMuX2Zvcm1hdFN0ci5yZXBsYWNlKCIleSIsKDAsSy5udW1iZXJUb1N0cmluZ1dpdGhMZWFkaW5nWmVybykodC5nZXRVVENGdWxsWWVhcigpLDQpKS5yZXBsYWNlKCIlbSIsKDAsSy5udW1iZXJUb1N0cmluZ1dpdGhMZWFkaW5nWmVybykodC5nZXRVVENNb250aCgpKzEsMikpLnJlcGxhY2UoIiVkIiwoMCxLLm51bWJlclRvU3RyaW5nV2l0aExlYWRpbmdaZXJvKSh0LmdldFVUQ0RhdGUoKSwyKSl9Cn0sZHQ9W3RlLlNUUk9OR19CVVkudGl0bGUsdGUuQlVZLnRpdGxlLHRlLk5FVVRSQUwudGl0bGUsdGUuU0VMTC50aXRsZSx0ZS5TVFJPTkdfU0VMTC50aXRsZV0saHQ9e0FueTpfLnQobnVsbCx2b2lkIDAsbyg5MjE4NDcpKSxFeG90aWM6Xy50KG51bGwsdm9pZCAwLG8oNTgwODMyKSksTWFqb3I6Xy50KG51bGwsdm9pZCAwLG8oNDQ3NzUzKSksTWlub3I6Xy50KG51bGwsdm9pZCAwLG8oMjA2OTgzKSksQWZyaWNhOl8udChudWxsLHZvaWQgMCxvKDY1MDM0NCkpLEFtZXJpY2FzOl8udChudWxsLHZvaWQgMCxvKDk5MTQ2NCkpLEFzaWE6Xy50KG51bGwsdm9pZCAwLG8oNjg5MTgyKSksRXVyb3BlOl8udChudWxsLHZvaWQgMCxvKDk1MjM2NykpLFBhY2lmaWM6Xy50KG51bGwsdm9pZCAwLG8oOTkwNTc1KSksIk1pZGRsZSBFYXN0IjpfLnQobnVsbCx2b2lkIDAsbyg2ODU3NTEpKX0sdXQ9W3trZXk6InRvZGF5IixuYW1lOl8udChudWxsLHZvaWQgMCxvKDYxNDQ1MCkpfSx7a2V5OiJ0b21vcnJvdyIsbmFtZTpfLnQobnVsbCx2b2lkIDAsbyg5NDA0ODMpKX0se2tleToieWVzdGVyZGF5IixuYW1lOl8udChudWxsLHZvaWQgMCxvKDk2NTU3MykpfSx7a2V5OiJuZXh0X2ZpdmUiLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oNTYxMTYxKSl9LHtrZXk6InByZXZfZml2ZSIsbmFtZTpfLnQobnVsbCx2b2lkIDAsbygxMzcyMCkpfSx7a2V5OiJ0aGlzX3dlZWsiLG5hbWU6Xy50KG51bGwsdm9pZCAwLG8oMTI3NDgzKSl9LHtrZXk6Im5leHRfd2VlayIsbmFtZTpfLnQobnVsbCx2b2lkIDAsbyg0ODU0NTQpKX0se2tleToicHJldl93ZWVrIixuYW1lOl8udChudWxsLHZvaWQgMCxvKDU2NDU2MSkpfSx7a2V5OiJ0aGlzX21vbnRoIixuYW1lOl8udChudWxsLHZvaWQgMCxvKDE3MDgwOSkpfV0sX3Q9WyJ0b2RheSIsInllc3RlcmRheSIsInByZXZfZml2ZSIsInByZXZfd2VlayIsInRoaXNfd2VlayIsInRoaXNfbW9udGgiXSxwdD1bInRvZGF5IiwidG9tb3Jyb3ciLCJuZXh0X2ZpdmUiLCJuZXh0X3dlZWsiLCJ0aGlzX3dlZWsiLCJ0aGlzX21vbnRoIl0sbXQ9ZT0+bnVsbD09ZXx8IiI9PT1lLnRvU3RyaW5nKCkudHJpbSgpLGd0PWU9PnQ9Pntjb25zdCBvPWJ0KHQsdXQpO2lmKG8pe2NvbnN0IHQ9U3Qobyk7aWYodClyZXR1cm4oKGUsdCxvPSJlYXJuaW5nc19yZWxlYXNlX2RhdGUsZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGUiKT0+W3tsZWZ0Om8sb3BlcmF0aW9uOiJpbl9yYW5nZSIscmlnaHQ6W2UvMWUzLHQvMWUzXX0se2xlZnQ6byxvcGVyYXRpb246Im5lcXVhbCIscmlnaHQ6dC8xZTN9XSkodFswXSx0WzFdLGUpfXJldHVybiExfSx2dD0oZSx0KT0+T2JqZWN0LmtleXModCkuZmluZCgobz0+dFtvXT09PWUpKXx8ZSxmdD0oZSx0LG8saSk9Pntjb25zdCBuPWkuZmlsdGVyKCh0PT50W2VdPT09bykpO3JldHVybiBuLmxlbmd0aD4wP25bMF1bdF06IiJ9LHl0PShlLHQpPT5mdCgia2V5IiwibmFtZSIsZSx0KSxidD0oZSx0KT0+ZnQoIm5hbWUiLCJrZXkiLGUsdCksU3Q9ZT0+e2NvbnN0IHQ9VS5nZXRfdGltZXpvbmUoQWUoKSksbz0oKCk9Pntjb25zdCBlPVUuZ2V0X3RpbWV6b25lKEFlKCkpLHQ9bmV3IERhdGUsbz1VLnV0Y190b19jYWwoZSx0LmdldFRpbWUoKSk7cmV0dXJuIFUuZ2V0X2NhbChlLG8uZ2V0VVRDRnVsbFllYXIoKSxvLmdldFVUQ01vbnRoKCksby5nZXRVVENEYXRlKCkpfSkoKTtsZXQgaSxuO2lmKCJ0b2RheSI9PT1lKWk9by5nZXRUaW1lKCksbj1VLmFkZF9kYXlzX2NvbnNpZGVyaW5nX2RzdCh0LG8sMSkuZ2V0VGltZSgpO2Vsc2UgaWYoInRvbW9ycm93Ij09PWUpaT1VLmFkZF9kYXlzX2NvbnNpZGVyaW5nX2RzdCh0LG8sMSkuZ2V0VGltZSgpLG49VS5hZGRfZGF5c19jb25zaWRlcmluZ19kc3QodCxvLDIpLmdldFRpbWUoKTtlbHNlIGlmKCJ5ZXN0ZXJkYXkiPT09ZSl7Y29uc3QgZT02ZTQ7aT1VLmFkZF9kYXlzX2NvbnNpZGVyaW5nX2RzdCh0LG8sLTEpLmdldFRpbWUoKSxuPW8uZ2V0VGltZSgpLWV9ZWxzZSBpZigibmV4dF9maXZlIj09PWUpaT1VLmFkZF9kYXlzX2NvbnNpZGVyaW5nX2RzdCh0LG8sMSkuZ2V0VGltZSgpLG49VS5hZGRfZGF5c19jb25zaWRlcmluZ19kc3QodCxvLDUpLmdldFRpbWUoKTtlbHNlIGlmKCJwcmV2X2ZpdmUiPT09ZSlpPVUuYWRkX2RheXNfY29uc2lkZXJpbmdfZHN0KHQsbywtNSkuZ2V0VGltZSgpLG49by5nZXRUaW1lKCk7ZWxzZSBpZigidGhpc193ZWVrIj09PWUpe2NvbnN0IGU9KG8uZ2V0RGF5KCkrNiklNztpPVUuYWRkX2RheXNfY29uc2lkZXJpbmdfZHN0KHQsbywtZSkuZ2V0VGltZSgpLG49VS5hZGRfZGF5c19jb25zaWRlcmluZ19kc3QodCxvLDctZSkuZ2V0VGltZSgpfWVsc2UgaWYoIm5leHRfd2VlayI9PT1lKXtjb25zdCBlPShvLmdldERheSgpKzYpJTctNztpPVUuYWRkX2RheXNfY29uc2lkZXJpbmdfZHN0KHQsbywtZSkuZ2V0VGltZSgpLG49VS5hZGRfZGF5c19jb25zaWRlcmluZ19kc3QodCxvLDctZSkuZ2V0VGltZSgpfWVsc2UgaWYoInByZXZfd2VlayI9PT1lKXtjb25zdCBlPShvLmdldERheSgpKzYpJTcrNztpPVUuYWRkX2RheXNfY29uc2lkZXJpbmdfZHN0KHQsbywtZSkuZ2V0VGltZSgpLG49VS5hZGRfZGF5c19jb25zaWRlcmluZ19kc3QodCxvLDctZSkuZ2V0VGltZSgpfWVsc2UgaWYoInRoaXNfbW9udGgiPT09ZSl7Y29uc3QgZT1vLmdldERhdGUoKSxyPW5ldyBEYXRlKG8uZ2V0RnVsbFllYXIoKSxvLmdldE1vbnRoKCksMCkuZ2V0RGF0ZSgpO2k9VS5hZGRfZGF5c19jb25zaWRlcmluZ19kc3QodCxvLDEtZSkuZ2V0VGltZSgpLG49VS5hZGRfZGF5c19jb25zaWRlcmluZ19kc3QodCxvLHItZSkuZ2V0VGltZSgpfXJldHVybiEoIWl8fCFuKSYmW2ksbl19LHd0PXtkcjpbXy50KG51bGwsdm9pZCAwLG8oNzE0NzQ1KSksXy50KG51bGwsdm9pZCAwLG8oMjg3OTk4KSkse25vd3JhcDohMH1dLGV0ZjpbXy50KG51bGwsdm9pZCAwLG8oNjk0MDcyKSksXy50KG51bGwsdm9pZCAwLG8oNjk0MDcyKSldLGNvbW1vbjpbXy50KG51bGwsdm9pZCAwLG8oOTgxMjgzKSksIiJdLApwcmVmZXJyZWQ6W18udChudWxsLHZvaWQgMCxvKDI3NTY2MikpLF8udChudWxsLHZvaWQgMCxvKDczNjYyNykpXSxjbG9zZWRlbmQ6W18udChudWxsLHZvaWQgMCxvKDYzNjAwMSkpLF8udChudWxsLHZvaWQgMCxvKDc5Njg5MSkpXSxldG46W18udChudWxsLHZvaWQgMCxvKDk3MjI0MCkpLF8udChudWxsLHZvaWQgMCxvKDk3MjI0MCkpXSxyZWl0OltfLnQobnVsbCx2b2lkIDAsbyg4MTAyMDIpKSxfLnQobnVsbCx2b2lkIDAsbyg4MTAyMDIpKV0sdW5pdDpbXy50KG51bGwsdm9pZCAwLG8oNjIwMjExKSksXy50KG51bGwsdm9pZCAwLG8oNjIwMjExKSldLG11dHVhbDpbXy50KG51bGwsdm9pZCAwLG8oOTQwOTg2KSksXy50KG51bGwsdm9pZCAwLG8oNTE4MDQxKSldLHRydXN0OltfLnQobnVsbCx2b2lkIDAsbyg3MjE1MjIpKSxfLnQobnVsbCx2b2lkIDAsbygzNDQzNzUpKV0sc3RydWN0dXJlZDpbXy50KG51bGwsdm9pZCAwLG8oMjU1NjIyKSksXy50KG51bGwsdm9pZCAwLG8oMzAwMjc1KSldLHNwb3Q6W18udChudWxsLHZvaWQgMCxvKDI4MzQxNikpLCIiXSxmdXR1cmVzOltfLnQobnVsbCx2b2lkIDAsbyg5NDM5MDMpKSwiIl0scGVycGV0dWFsOltfLnQobnVsbCx2b2lkIDAsbyg1NTY4NzYpKSwiIl19LEN0PVsiZHIiLCJldGYiLCJjb21tb24iLCJwcmVmZXJyZWQiLCJjbG9zZWRlbmQiLCJldG4iLCJyZWl0IiwidW5pdCIsIm11dHVhbCIsInRydXN0Iiwic3RydWN0dXJlZCJdLGt0PVsic3BvdCIsImZ1dHVyZXMiLCJwZXJwZXR1YWwiXSxUdD1lPT5bIm9wZW4iLCJoaWdoIiwibG93IiwiY2xvc2UiXS5maWx0ZXIoKHQ9PnQhPT1lKSksRXQ9ZT0+WyJTTUE1IiwiU01BMTAiLCJTTUEyMCIsIlNNQTMwIiwiU01BNTAiLCJTTUExMDAiLCJTTUEyMDAiLCJFTUE1IiwiRU1BMTAiLCJFTUEyMCIsIkVNQTMwIiwiRU1BNTAiLCJFTUExMDAiLCJFTUEyMDAiXS5maWx0ZXIoKHQ9PnQhPT1lKSkseHQ9ZT0+WyJJY2hpbW9rdS5CTGluZSIsIkljaGltb2t1LkNMaW5lIiwiSWNoaW1va3UuTGVhZDEiLCJJY2hpbW9rdS5MZWFkMiJdLmZpbHRlcigodD0+dCE9PWUpKSxBdD1bImNyb3NzZXMiLCJjcm9zc2VzX2Fib3ZlIiwiY3Jvc3Nlc19iZWxvdyJdO2Z1bmN0aW9uIE10KGUsLi4udCl7Y29uc3Qgbz10W3QubGVuZ3RoLTFdO2lmKG8uc2VhcmNoVmFsdWUpe2NvbnN0IHQ9KDAsYWUucGFyc2VIdG1sKShlKS5jaGlsZE5vZGVzO2xldCBpPSIiO2ZvcihsZXQgZT0wO2U8dC5sZW5ndGg7ZSsrKXRbZV0uY2xhc3NMaXN0JiYodFtlXS5jbGFzc0xpc3QuY29udGFpbnMoInR2LXNjcmVlbmVyX19zeW1ib2wiKSYmKHRbZV0uaW5uZXJIVE1MPVJ0KHRbZV0udGV4dENvbnRlbnQudHJpbSgpLG8uc2VhcmNoVmFsdWUpKSxpKz10W2VdLm91dGVySFRNTCk7cmV0dXJuIGkrIiAifXJldHVybiBlfWNvbnN0IEl0PXtuYW1lOntmaXhlZDohMCxjb250cm9sOiJzZWxlY3QiLGNhdGVnb3J5OjEsaW5wbGFjZUVkaXRvckxlZnRPZmZzZXQ6MTAsZmlsdGVyVGl0bGU6RWUudHlwZVswXSxyYW5nZVRpdGxlczp3dCxhZGRpdGlvbmFsQ29sdW1uczpbImRlc2NyaXB0aW9uIiwibmFtZSIsInR5cGUiLCJzdWJ0eXBlIiwidXBkYXRlX21vZGUiXSxhZGRpdGlvbmFsRm9ybWF0dGVyOihlLHQsbyxpLG4scj0iIik9Pntjb25zdCBzPSgoZSx0KT0+SXQudHlwZS5kaXNhYmxlZHx8IUl0LnR5cGUuY2hlY2tlZD8iIjpgPHNwYW4gY2xhc3M9InR2LXNjcmVlbmVyX190eXBlIiB0aXRsZT0iJHtJdC50eXBlLm11dGF0ZURpc3BsYXlWYWx1ZShlLHQpfSI+PHN1cD4ke0l0LnR5cGUubXV0YXRlRGlzcGxheVZhbHVlKGUsdCwhMCl9PC9zdXA+PC9zcGFuPmApKG8saSk7cmV0dXJuKChlLHQsbyxpLG4pPT57Y29uc3Qgcj1uZXcgUS5EYXRhTW9kZUluZGljYXRvcih7Y2xhc3NTdWZmaXg6Ii0tZm9yLXNjcmVlbmVyIixzaG9ydDohMH0pO2lmKG51bGwhPT1uJiYic3RyaW5nIj09dHlwZW9mIG4pe2NvbnN0IGU9KDAsei5wYXJzZVVwZGF0ZU1vZGUpKG4pO251bGw9PT1lP3Iuc2V0TW9kZShuKTpyLnNldE1vZGUoZS5tb2RlLGUuaW50ZXJ2YWwpfWlmKEl0LmRlc2NyaXB0aW9uLmRpc2FibGVkfHwhSXQuZGVzY3JpcHRpb24uY2hlY2tlZClyZXR1cm4gci5nZXRFbGVtZW50KCkub3V0ZXJIVE1MO2NvbnN0IHM9e2Rlc2NyaXB0aW9uOmUscHJvX25hbWU6aSxzaG9ydF9uYW1lOm99O2xldCBhPWU/KDAsZWUuZ2V0VHJhbnNsYXRlZFN5bWJvbERlc2NyaXB0aW9uKShzKS50b1N0cmluZygpLnRvVXBwZXJDYXNlKCk6IiI7SXQubmFtZS5zZWFyY2hWYWx1ZSYmKGE9UnQoYSxJdC5uYW1lLnNlYXJjaFZhbHVlKSk7Y29uc3QgbD0hSXQuZGVzY3JpcHRpb24uZGlzYWJsZWR8fEl0LmRlc2NyaXB0aW9uLmNoZWNrZWQ/YDxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lcl9fZGVzY3JpcHRpb24iPiR7YX0gJHt0fTwvc3Bhbj5gOiIiO3JldHVybmAke3IuZ2V0RWxlbWVudCgpLm91dGVySFRNTH0ke2x9YH0pKGUscyx0LHIsbil9LG11dGF0ZURpc3BsYXlWYWx1ZTpNdCx0b29sdGlwOihlLHQpPT5JdC5kZXNjcmlwdGlvbi5kaXNhYmxlZHx8IUl0LmRlc2NyaXB0aW9uLmNoZWNrZWQ/dDplLHVzZURlZmF1bHRSYW5nZTohMCxkZWZhdWx0UmFuZ2U6Q3QsY3VzdG9tRmlsdGVyQ29uZGl0aW9uOmU9Pkl0LnR5cGUuY3VzdG9tRmlsdGVyQ29uZGl0aW9uKGUpLHNlYXJjaDohMH0sZGVzY3JpcHRpb246e2hpZGRlbkNvbHVtbjohMCxoaWRlU2V0dXBDb2x1bW46ITB9LGxvZ29pZDp7aGlkZGVuQ29sdW1uOiExLGhpZGVTZXR1cENvbHVtbjohMCxza2lwRmllbGQ6ITB9LGN1cnJlbmN5X2xvZ29pZDp7aGlkZGVuQ29sdW1uOiExLGhpZGVTZXR1cENvbHVtbjohMCxza2lwRmllbGQ6ITB9LGJhc2VfY3VycmVuY3lfbG9nb2lkOntoaWRkZW5Db2x1bW46ITEsaGlkZVNldHVwQ29sdW1uOiEwLHNraXBGaWVsZDohMH0sZXhjaGFuZ2U6e2NvbnRyb2w6InNlbGVjdCIsY2F0ZWdvcnk6MSxtdXRhdGVEaXNwbGF5VmFsdWU6ZT0+IkFNRVgiPT09ZT8iTllTRSBBUkNBIjplLHJhbmdlVGl0bGVzOntBTUVYOlsiTllTRSBBUkNBIiwiTllTRSBBUkNBIix7bm93cmFwOiEwfV19fSxjZW50cmFsaXphdGlvbjp7CmNvbnRyb2w6InNlbGVjdCIsY2F0ZWdvcnk6MSxoaWRlU2V0dXBDb2x1bW46ITAscmFuZ2VUaXRsZXM6e2NleDpbIkNFWCIsIkNFWCJdLGRleDpbIkRFWCIsIkRFWCJdfX0sc3VibWFya2V0Ontjb250cm9sOiJzZWxlY3QiLGNhdGVnb3J5OjF9LHNlY3Rvcjp7Y2F0ZWdvcnk6MSxmaWx0ZXJDb25kaXRpb246InNlbGVjdCIsc291cmNlUmFuZ2U6WyJNYWpvciIsIk1pbm9yIiwiRXhvdGljIl0sbXV0YXRlRGlzcGxheVZhbHVlOihlLC4uLnQpPT57Y29uc3Qgbz1NdChlLHQpO3JldHVybigwLFRlLnRyaWVzVHJhbnNsYXRlU2NyZWVuZXJEYXRhKShvKX19LGluZGV4Ontjb250cm9sOiJzZWxlY3QiLGlzU2luZ2xlOiEwLGNhdGVnb3J5OjEsaGlkZVNldHVwQ29sdW1uOiEwLGdyb3VwRmlsdGVyOiEwLGN1c3RvbUZpbHRlckNvbmRpdGlvbjplPT57Y29uc3QgdD1JdC5pbmRleC5zb3VyY2VSYW5nZT9JdC5pbmRleC5zb3VyY2VSYW5nZS5maW5kKCh0PT50Lm5hbWU9PT1lKSk6bnVsbDtyZXR1cm4hIXQmJnt0eXBlOiJpbmRleCIsdmFsdWVzOlt0LmlkXX19fSxpbmR1c3RyeTp7Y29udHJvbDoic2VsZWN0IixjYXRlZ29yeToxfSxjb3VudHJ5Ontjb250cm9sOiJzZWxlY3QiLGNhdGVnb3J5OjF9LHR5cGU6e2hpZGRlbkNvbHVtbjohMCxoaWRlU2V0dXBDb2x1bW46ITAsZmlsdGVyQ29uZGl0aW9uOiJzZWxlY3QiLGNhdGVnb3J5OjEscmFuZ2VUaXRsZXM6d3Qsc29ydGFibGVDb2x1bW46ITEscmVzZXR0YWJsZUZpbHRlcjohMSx1c2VEZWZhdWx0UmFuZ2U6ITAsZGVmYXVsdFJhbmdlOkN0LGFkZGl0aW9uYWxDb2x1bW5zOlsic3VidHlwZSJdLG11dGF0ZURpc3BsYXlWYWx1ZTooZSx0LG89ITEpPT50JiZ3dFt0XT93dFt0XVtvPzE6MF06d3RbZV0/d3RbZV1bbz8xOjBdOiIiLGN1c3RvbUZpbHRlckNvbmRpdGlvbjp5ZX0sbWFya2V0X2NhcF9iYXNpYzp7Y29udHJvbDoicmFuZ2UiLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToxfSxtYXJrZXRfY2FwX2NhbGM6e2NvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6MX0sbWFya2V0X2NhcF9kaWx1dGVkX2NhbGM6e2NvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6MX0sdm9sdW1lOntjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjF9LGF2ZXJhZ2Vfdm9sdW1lXzEwZF9jYWxjOnt0aXRsZTpFZS5hdmVyYWdlX3ZvbHVtZVswXSxzaG9ydFRpdGxlOkVlLmF2ZXJhZ2Vfdm9sdW1lWzFdLGNvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6MSx1c2VEZWZhdWx0VGltZUludGVydmFsOiEwfSxhdmVyYWdlX3ZvbHVtZV8zMGRfY2FsYzp7Y29udHJvbDoicmFuZ2UiLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToxLHVzZURlZmF1bHRUaW1lSW50ZXJ2YWw6ITB9LGF2ZXJhZ2Vfdm9sdW1lXzYwZF9jYWxjOntjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjEsdXNlRGVmYXVsdFRpbWVJbnRlcnZhbDohMH0sYXZlcmFnZV92b2x1bWVfOTBkX2NhbGM6e2NvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6MSx1c2VEZWZhdWx0VGltZUludGVydmFsOiEwfSxyZWxhdGl2ZV92b2x1bWVfMTBkX2NhbGM6e3RpdGxlOkVlLnJlbGF0aXZlX3ZvbHVtZVswXSxzaG9ydFRpdGxlOkVlLnJlbGF0aXZlX3ZvbHVtZVsxXSxjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToxfSwicmVsYXRpdmVfdm9sdW1lX2ludHJhZGF5LjUiOnt0aXRsZTpFZS5yZWxhdGl2ZV92b2x1bWVfYXRfdGltZVswXSxzaG9ydFRpdGxlOkVlLnJlbGF0aXZlX3ZvbHVtZV9hdF90aW1lWzFdLGNvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsZmlsdGVyRm9ybWF0dGVyOnJ0LGNhdGVnb3J5OjEsdXNlRGVmYXVsdFRpbWVJbnRlcnZhbEZyb21GaWVsZE5hbWU6ITB9LGNoYW5nZTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOntzdG9jazpbInByZW1hcmtldF9jaGFuZ2UiLCJwb3N0bWFya2V0X2NoYW5nZSJdLGRlZmF1bHQ6W119LGZvcm1hdHRlcjphdCxjYXRlZ29yeTozLGhpZ2hsaWdodENoYW5nZTohMH0sImNoYW5nZS4xIjp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOntzdG9jazpbImNoYW5nZSIsInByZW1hcmtldF9jaGFuZ2UiLCJwb3N0bWFya2V0X2NoYW5nZSJdLGRlZmF1bHQ6W119LGZvcm1hdHRlcjphdCxjYXRlZ29yeTozLGhpZ2hsaWdodENoYW5nZTohMH0sImNoYW5nZS41Ijp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOntzdG9jazpbImNoYW5nZSIsInByZW1hcmtldF9jaGFuZ2UiLCJwb3N0bWFya2V0X2NoYW5nZSJdLGRlZmF1bHQ6W119LGZvcm1hdHRlcjphdCxjYXRlZ29yeTozLGhpZ2hsaWdodENoYW5nZTohMH0sImNoYW5nZS4xNSI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczp7c3RvY2s6WyJjaGFuZ2UiLCJwcmVtYXJrZXRfY2hhbmdlIiwicG9zdG1hcmtldF9jaGFuZ2UiXSxkZWZhdWx0OltdfSxmb3JtYXR0ZXI6YXQsY2F0ZWdvcnk6MyxoaWdobGlnaHRDaGFuZ2U6ITB9LCJjaGFuZ2UuNjAiOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6e3N0b2NrOlsiY2hhbmdlIiwicHJlbWFya2V0X2NoYW5nZSIsInBvc3RtYXJrZXRfY2hhbmdlIl0sZGVmYXVsdDpbXX0sZm9ybWF0dGVyOmF0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSwiY2hhbmdlLjI0MCI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczp7c3RvY2s6WyJjaGFuZ2UiLCJwcmVtYXJrZXRfY2hhbmdlIiwicG9zdG1hcmtldF9jaGFuZ2UiXSxkZWZhdWx0OltdfSxmb3JtYXR0ZXI6YXQsY2F0ZWdvcnk6MywKaGlnaGxpZ2h0Q2hhbmdlOiEwfSwiY2hhbmdlLjFXIjp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOntzdG9jazpbImNoYW5nZSIsInByZW1hcmtldF9jaGFuZ2UiLCJwb3N0bWFya2V0X2NoYW5nZSJdLGRlZmF1bHQ6W119LGZvcm1hdHRlcjphdCxjYXRlZ29yeTozLGhpZ2hsaWdodENoYW5nZTohMH0sImNoYW5nZS4xTSI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczp7c3RvY2s6WyJjaGFuZ2UiLCJwcmVtYXJrZXRfY2hhbmdlIiwicG9zdG1hcmtldF9jaGFuZ2UiXSxkZWZhdWx0OltdfSxmb3JtYXR0ZXI6YXQsY2F0ZWdvcnk6MyxoaWdobGlnaHRDaGFuZ2U6ITB9LGNoYW5nZV9hYnM6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6aXQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxoaWdobGlnaHRDaGFuZ2U6ITB9LCJjaGFuZ2VfYWJzLjEiOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOml0LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSwiY2hhbmdlX2Ficy41Ijp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjppdCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGhpZ2hsaWdodENoYW5nZTohMH0sImNoYW5nZV9hYnMuMTUiOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOml0LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSwiY2hhbmdlX2Ficy42MCI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6aXQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxoaWdobGlnaHRDaGFuZ2U6ITB9LCJjaGFuZ2VfYWJzLjI0MCI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6aXQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxoaWdobGlnaHRDaGFuZ2U6ITB9LCJjaGFuZ2VfYWJzLjFXIjp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjppdCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGhpZ2hsaWdodENoYW5nZTohMH0sImNoYW5nZV9hYnMuMU0iOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOml0LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSxiaWQ6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsZmlsdGVyRm9ybWF0dGVyOnJ0LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjEsbXV0YXRlRGlzcGxheVZhbHVlOmU9PmA8c3Bhbj4ke2V9PC9zcGFuPmB9LGFzazp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MSxtdXRhdGVEaXNwbGF5VmFsdWU6ZT0+YDxzcGFuPiR7ZX08L3NwYW4+YH0sb3Blbjp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6e3N0b2NrOlR0KCJvcGVuIikuY29uY2F0KCJwcmVtYXJrZXRfb3BlbiIsInBvc3RtYXJrZXRfb3BlbiIsInByZW1hcmtldF9jbG9zZSIsInBvc3RtYXJrZXRfY2xvc2UiLEV0KCksIkh1bGxNQTkiLCJCQi51cHBlciIsIkJCLmxvd2VyIix4dCgpKSxmb3JleDpUdCgib3BlbiIpLmNvbmNhdCgiYmlkIiwiYXNrIixFdCgpLCJIdWxsTUE5IiwiQkIudXBwZXIiLCJCQi5sb3dlciIseHQoKSksZGVmYXVsdDpUdCgib3BlbiIpLmNvbmNhdChFdCgpLCJCQi51cHBlciIsIkJCLmxvd2VyIiwiSHVsbE1BOSIseHQoKSl9LGZvcm1hdHRlcjppdCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeToxfSxjbG9zZTp7dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oODM0OTApKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDgzNDkwKSksY29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6e3N0b2NrOlR0KCJjbG9zZSIpLmNvbmNhdCgicHJlbWFya2V0X2Nsb3NlIiwicG9zdG1hcmtldF9jbG9zZSIsRXQoKSwiSHVsbE1BOSIsIkJCLnVwcGVyIiwiQkIubG93ZXIiLHh0KCkpLGZvcmV4OlR0KCJjbG9zZSIpLmNvbmNhdCgiYmlkIiwiYXNrIixFdCgpLCJIdWxsTUE5IiwiQkIudXBwZXIiLCJCQi5sb3dlciIseHQoKSksZGVmYXVsdDpUdCgiY2xvc2UiKS5jb25jYXQoRXQoKSwiQkIudXBwZXIiLCJCQi5sb3dlciIsIkh1bGxNQTkiLHh0KCkpfSxmb3JtYXR0ZXI6aXQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MSxtdXRhdGVEaXNwbGF5VmFsdWU6ZT0+YDxzcGFuPiR7ZX08L3NwYW4+YH0saGlnaDp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6e3N0b2NrOlR0KCJoaWdoIikuY29uY2F0KCJwcmVtYXJrZXRfaGlnaCIsInBvc3RtYXJrZXRfaGlnaCIsInByZW1hcmtldF9jbG9zZSIsInBvc3RtYXJrZXRfY2xvc2UiLEV0KCksIkh1bGxNQTkiLCJCQi51cHBlciIsIkJCLmxvd2VyIix4dCgpKSxmb3JleDpUdCgiaGlnaCIpLmNvbmNhdCgiYmlkIiwiYXNrIixFdCgpLCJIdWxsTUE5IiwiQkIudXBwZXIiLCJCQi5sb3dlciIseHQoKSksZGVmYXVsdDpUdCgiaGlnaCIpLmNvbmNhdChFdCgpLCJCQi51cHBlciIsIkJCLmxvd2VyIiwiSHVsbE1BOSIseHQoKSl9LGZvcm1hdHRlcjppdCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeToxfSxsb3c6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOnsKc3RvY2s6VHQoImxvdyIpLmNvbmNhdCgicHJlbWFya2V0X2xvdyIsInBvc3RtYXJrZXRfbG93IiwicHJlbWFya2V0X2Nsb3NlIiwicG9zdG1hcmtldF9jbG9zZSIsRXQoKSwiSHVsbE1BOSIsIkJCLnVwcGVyIiwiQkIubG93ZXIiLHh0KCkpLGZvcmV4OlR0KCJsb3ciKS5jb25jYXQoImJpZCIsImFzayIsRXQoKSwiSHVsbE1BOSIsIkJCLnVwcGVyIiwiQkIubG93ZXIiLHh0KCkpLGRlZmF1bHQ6VHQoImxvdyIpLmNvbmNhdChFdCgpLCJCQi51cHBlciIsIkJCLmxvd2VyIiwiSHVsbE1BOSIseHQoKSl9LGZvcm1hdHRlcjppdCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeToxfSxnYXA6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSxwcmljZV9lYXJuaW5nc190dG06e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsZmlsdGVyRm9ybWF0dGVyOnJ0LGNhdGVnb3J5OjJ9LHByaWNlX3NhbGVzX3JhdGlvOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToyfSxyZXR1cm5fb25fYXNzZXRzOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToyfSxyZXR1cm5fb25fZXF1aXR5Ontjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToyfSxkZWJ0X3RvX2VxdWl0eTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxjYXRlZ29yeToyfSxjdXJyZW50X3JhdGlvOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToyfSxxdWlja19yYXRpbzp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6Mn0scHJpY2VfYm9va19mcTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6Mn0scHJpY2VfYm9va19yYXRpbzp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6Mn0scHJpY2VfZnJlZV9jYXNoX2Zsb3dfdHRtOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToyfSxiZXRhXzFfeWVhcjp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxjYXRlZ29yeTozfSxvcGVyYXRpbmdfbWFyZ2luOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sZWFybmluZ3NfcGVyX3NoYXJlX2Jhc2ljX3R0bTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6Mn0sZWJpdGRhOntjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjJ9LGNoYW5nZV9mcm9tX29wZW46e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSxjaGFuZ2VfZnJvbV9vcGVuX2Ficzp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjppdCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGhpZ2hsaWdodENoYW5nZTohMH0sIlBlcmYuVyI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSwiUGVyZi4xTSI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSwiUGVyZi4zTSI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSwiUGVyZi42TSI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSwiUGVyZi5ZIjp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MyxoaWdobGlnaHRDaGFuZ2U6ITB9LCJQZXJmLllURCI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsCmZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeTozLGhpZ2hsaWdodENoYW5nZTohMH0sIlBlcmYuNVkiOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeTozLGhpZ2hsaWdodENoYW5nZTohMH0sIlBlcmYuQWxsIjp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MyxoaWdobGlnaHRDaGFuZ2U6ITB9LCJWb2xhdGlsaXR5LlciOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjN9LCJWb2xhdGlsaXR5Lk0iOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjN9LCJWb2xhdGlsaXR5LkQiOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjN9LFJTSTp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeTozLGRpc3BsYXlTaWduYWw6ITAsYWRkaXRpb25hbENvbHVtbnM6WyJSU0kiLCJSU0lbMV0iXSxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc1JTSVNpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlUlNJU2lnbmFsfSxSU0k3Ontjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsZmlsdGVyRm9ybWF0dGVyOnJ0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIlJTSTciLCJSU0k3WzFdIl0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NSU0lTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZVJTSVNpZ25hbH0sQURYOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsZmlsdGVyRm9ybWF0dGVyOnJ0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIkFEWCIsIkFEWCtESSIsIkFEWC1ESSIsIkFEWCtESVsxXSIsIkFEWC1ESVsxXSJdLG11dGF0ZURpc3BsYXlWYWx1ZTpuZS5wcm9jZXNzQURYU2lnbmFsLHNpZ25hbENvbXB1dGF0aW9uOmllLmNvbXB1dGVBRFhTaWduYWx9LCJBRFgrREkiOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbIkFEWC1ESSJdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6M30sIkFEWC1ESSI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlsiQURYK0RJIl0sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeTozfSxBVFI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjppdCxjYXRlZ29yeTozfSxNb206e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjppdCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6MyxkaXNwbGF5U2lnbmFsOiEwLGFkZGl0aW9uYWxDb2x1bW5zOlsiTW9tIiwiTW9tWzFdIl0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NNb21TaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZU1vbVNpZ25hbH0sIkhpZ2guQWxsIjp7Y29udHJvbDoidG9nZ2xlIixmaWx0ZXI6e29wZXJhdG9yOiJlbGVzcyIsdmFsdWU6ImhpZ2gifSxmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6M30sIkxvdy5BbGwiOntjb250cm9sOiJ0b2dnbGUiLGZpbHRlcjp7b3BlcmF0b3I6ImVncmVhdGVyIix2YWx1ZToibG93In0sZm9ybWF0dGVyOm50LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjN9LHByaWNlXzUyX3dlZWtfaGlnaDp7Y29udHJvbDoidG9nZ2xlIixmaWx0ZXI6e29wZXJhdG9yOiJlbGVzcyIsdmFsdWU6ImhpZ2gifSxmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6M30scHJpY2VfNTJfd2Vla19sb3c6e2NvbnRyb2w6InRvZ2dsZSIsZmlsdGVyOntvcGVyYXRvcjoiZWdyZWF0ZXIiLHZhbHVlOiJsb3cifSxmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6M30saXNfcHJpbWFyeTp7dGl0bGU6RWUuaXNfcHJpbWFyeVswXSxjb250cm9sOiJ0b2dnbGUiLGZpbHRlcjp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH0sY2F0ZWdvcnk6MX0sYWN0aXZlX3N5bWJvbDp7aGlkZVNldHVwQ29sdW1uOiEwLGNvbnRyb2w6InRvZ2dsZSIsZmlsdGVyOntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfSxjYXRlZ29yeToxfSwiSGlnaC42TSI6e2NvbnRyb2w6InRvZ2dsZSIsZmlsdGVyOntvcGVyYXRvcjoiZWxlc3MiLHZhbHVlOiJoaWdoIn0sZm9ybWF0dGVyOm50LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjN9LCJMb3cuNk0iOntjb250cm9sOiJ0b2dnbGUiLGZpbHRlcjp7b3BlcmF0b3I6ImVncmVhdGVyIix2YWx1ZToibG93In0sZm9ybWF0dGVyOm50LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjN9LCJIaWdoLjNNIjp7Y29udHJvbDoidG9nZ2xlIixmaWx0ZXI6e29wZXJhdG9yOiJlbGVzcyIsdmFsdWU6ImhpZ2gifSxmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6M30sIkxvdy4zTSI6e2NvbnRyb2w6InRvZ2dsZSIsZmlsdGVyOntvcGVyYXRvcjoiZWdyZWF0ZXIiLHZhbHVlOiJsb3cifSxmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6M30sIkhpZ2guMU0iOntjb250cm9sOiJ0b2dnbGUiLGZpbHRlcjp7b3BlcmF0b3I6ImVsZXNzIix2YWx1ZToiaGlnaCJ9LGZvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozfSwiTG93LjFNIjp7Y29udHJvbDoidG9nZ2xlIixmaWx0ZXI6e29wZXJhdG9yOiJlZ3JlYXRlciIsdmFsdWU6ImxvdyJ9LApmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6M30sRU1BNTp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6VHQoKS5jb25jYXQoRXQoIkVNQTUiKSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIkVNQTUiLCJjbG9zZSJdLG11dGF0ZURpc3BsYXlWYWx1ZTpuZS5wcm9jZXNzTUFTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZU1BU2lnbmFsfSxFTUExMDp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6VHQoKS5jb25jYXQoRXQoIkVNQTEwIikpLGZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGRpc3BsYXlTaWduYWw6ITAsYWRkaXRpb25hbENvbHVtbnM6WyJFTUExMCIsImNsb3NlIl0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NNQVNpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlTUFTaWduYWx9LEVNQTIwOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdChFdCgiRU1BMjAiKSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIkVNQTIwIiwiY2xvc2UiXSxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc01BU2lnbmFsLHNpZ25hbENvbXB1dGF0aW9uOmllLmNvbXB1dGVNQVNpZ25hbH0sRU1BMzA6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlR0KCkuY29uY2F0KEV0KCJFTUEzMCIpKSxmb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxkaXNwbGF5U2lnbmFsOiEwLGFkZGl0aW9uYWxDb2x1bW5zOlsiRU1BMzAiLCJjbG9zZSJdLG11dGF0ZURpc3BsYXlWYWx1ZTpuZS5wcm9jZXNzTUFTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZU1BU2lnbmFsfSxFTUE1MDp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6VHQoKS5jb25jYXQoRXQoIkVNQTUwIikpLGZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGRpc3BsYXlTaWduYWw6ITAsYWRkaXRpb25hbENvbHVtbnM6WyJFTUE1MCIsImNsb3NlIl0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NNQVNpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlTUFTaWduYWx9LEVNQTEwMDp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6VHQoKS5jb25jYXQoRXQoIkVNQTEwMCIpKSxmb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxkaXNwbGF5U2lnbmFsOiEwLGFkZGl0aW9uYWxDb2x1bW5zOlsiRU1BMTAwIiwiY2xvc2UiXSxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc01BU2lnbmFsLHNpZ25hbENvbXB1dGF0aW9uOmllLmNvbXB1dGVNQVNpZ25hbH0sRU1BMjAwOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdChFdCgiRU1BMjAwIikpLGZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGRpc3BsYXlTaWduYWw6ITAsYWRkaXRpb25hbENvbHVtbnM6WyJFTUEyMDAiLCJjbG9zZSJdLG11dGF0ZURpc3BsYXlWYWx1ZTpuZS5wcm9jZXNzTUFTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZU1BU2lnbmFsfSxTTUE1Ontjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdChFdCgiU01BNSIpKSxmb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxkaXNwbGF5U2lnbmFsOiEwLGFkZGl0aW9uYWxDb2x1bW5zOlsiU01BNSIsImNsb3NlIl0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NNQVNpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlTUFTaWduYWx9LFNNQTEwOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdChFdCgiU01BMTAiKSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIlNNQTEwIiwiY2xvc2UiXSxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc01BU2lnbmFsLHNpZ25hbENvbXB1dGF0aW9uOmllLmNvbXB1dGVNQVNpZ25hbH0sU01BMjA6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlR0KCkuY29uY2F0KEV0KCJTTUEyMCIpKSxmb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxkaXNwbGF5U2lnbmFsOiEwLGFkZGl0aW9uYWxDb2x1bW5zOlsiU01BMjAiLCJjbG9zZSJdLG11dGF0ZURpc3BsYXlWYWx1ZTpuZS5wcm9jZXNzTUFTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZU1BU2lnbmFsfSxTTUEzMDp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6VHQoKS5jb25jYXQoRXQoIlNNQTMwIikpLGZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGRpc3BsYXlTaWduYWw6ITAsYWRkaXRpb25hbENvbHVtbnM6WyJTTUEzMCIsImNsb3NlIl0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NNQVNpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlTUFTaWduYWx9LFNNQTUwOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdChFdCgiU01BNTAiKSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIlNNQTUwIiwiY2xvc2UiXSxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc01BU2lnbmFsLHNpZ25hbENvbXB1dGF0aW9uOmllLmNvbXB1dGVNQVNpZ25hbH0sU01BMTAwOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdChFdCgiU01BMTAwIikpLGZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGRpc3BsYXlTaWduYWw6ITAsYWRkaXRpb25hbENvbHVtbnM6WyJTTUExMDAiLCJjbG9zZSJdLG11dGF0ZURpc3BsYXlWYWx1ZTpuZS5wcm9jZXNzTUFTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZU1BU2lnbmFsfSxTTUEyMDA6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlR0KCkuY29uY2F0KEV0KCJTTUEyMDAiKSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIlNNQTIwMCIsImNsb3NlIl0sCm11dGF0ZURpc3BsYXlWYWx1ZTpuZS5wcm9jZXNzTUFTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZU1BU2lnbmFsfSwiU3RvY2guSyI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlR0KCkuY29uY2F0KFsiU3RvY2guRCJdKSxmb3JtYXR0ZXI6bnQsY2F0ZWdvcnk6MyxkaXNwbGF5U2lnbmFsOiEwLGFkZGl0aW9uYWxDb2x1bW5zOlsiU3RvY2guSyIsIlN0b2NoLkQiLCJTdG9jaC5LWzFdIiwiU3RvY2guRFsxXSJdLG11dGF0ZURpc3BsYXlWYWx1ZTpuZS5wcm9jZXNzU3RvY2hTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZVN0b2NoU2lnbmFsfSwiU3RvY2guRCI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlR0KCkuY29uY2F0KFsiU3RvY2guSyJdKSxmb3JtYXR0ZXI6bnQsY2F0ZWdvcnk6M30sIk1BQ0QubWFjZCI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlR0KCkuY29uY2F0KFsiTUFDRC5zaWduYWwiXSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIk1BQ0QubWFjZCIsIk1BQ0Quc2lnbmFsIl0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NNQUNEU2lnbmFsLHNpZ25hbENvbXB1dGF0aW9uOmllLmNvbXB1dGVNQUNEU2lnbmFsfSwiTUFDRC5zaWduYWwiOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdChbIk1BQ0QubWFjZCJdKSxmb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6M30sIkFyb29uLlVwIjp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6WyJBcm9vbi5Eb3duIl0sZm9ybWF0dGVyOm50LGNhdGVnb3J5OjN9LCJBcm9vbi5Eb3duIjp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6WyJBcm9vbi5VcCJdLGZvcm1hdHRlcjpudCxjYXRlZ29yeTozfSwiQkIudXBwZXIiOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdChbIkJCLmxvd2VyIiwiS2x0Q2hubC51cHBlciIsIktsdENobmwubG93ZXIiXSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbImNsb3NlIiwiQkIudXBwZXIiXSxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc0JCU2VsbFNpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlQkJTZWxsU2lnbmFsfSwiQkIubG93ZXIiOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdChbIkJCLnVwcGVyIiwiS2x0Q2hubC51cHBlciIsIktsdENobmwubG93ZXIiXSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbImNsb3NlIiwiQkIubG93ZXIiXSxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc0JCQnV5U2lnbmFsLHNpZ25hbENvbXB1dGF0aW9uOmllLmNvbXB1dGVCQkJ1eVNpZ25hbH0sIktsdENobmwudXBwZXIiOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdChbIktsdENobmwubG93ZXIiLCJCQi51cHBlciIsIkJCLmxvd2VyIl0pLGZvcm1hdHRlcjppdCxjYXRlZ29yeTozfSwiS2x0Q2hubC5sb3dlciI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlR0KCkuY29uY2F0KFsiS2x0Q2hubC51cHBlciIsIkJCLnVwcGVyIiwiQkIubG93ZXIiXSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjN9LCJQLlNBUiI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlR0KCksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIlAuU0FSIiwib3BlbiJdLG11dGF0ZURpc3BsYXlWYWx1ZTpuZS5wcm9jZXNzUFNBUlNpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlUFNBUlNpZ25hbH0sIlZhbHVlLlRyYWRlZCI6e2NvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6MSxyYW5nZTpbTnVtYmVyLk1JTl9TQUZFX0lOVEVHRVJ8fC0oTWF0aC5wb3coMiw1MyktMSksTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVJ8fE1hdGgucG93KDIsNTMpLTFdLHZhbHVlczpbNWU0LDFlNSw1ZTUsNzVlNCwxZTYsMmU2LDVlNiwxZTcsMmU3LDVlN119LE1vbmV5Rmxvdzp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGNhdGVnb3J5OjN9LENoYWlraW5Nb25leUZsb3c6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxjYXRlZ29yeTozfSxnb29kd2lsbDp7Y29udHJvbDoicmFuZ2UiLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToyfSxuZXRfZGVidDp7Y29udHJvbDoicmFuZ2UiLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToyfSx0b3RhbF9kZWJ0Ontjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjJ9LHJldmVudWVfcGVyX2VtcGxveWVlOntjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjJ9LHJldHVybl9vbl9pbnZlc3RlZF9jYXBpdGFsOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sYWZ0ZXJfdGF4X21hcmdpbjp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LHByZV90YXhfbWFyZ2luOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sZ3Jvc3NfbWFyZ2luOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCwKY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LGdyb3NzX3Byb2ZpdF9tYXJnaW5fZnk6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSxvcGVyX2luY29tZV9tYXJnaW5fZnk6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSxuZXRfaW5jb21lX2JlZl9kaXNjX29wZXJfbWFyZ2luX2Z5Ontjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sZnJlZV9jYXNoX2Zsb3dfbWFyZ2luX2Z5Ontjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sZnJlZV9jYXNoX2Zsb3dfbWFyZ2luX3R0bTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LHNlbGxfZ2VuX2FkbWluX2V4cF9vdGhlcl9yYXRpb19meTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6Mn0sc2VsbF9nZW5fYWRtaW5fZXhwX290aGVyX3JhdGlvX3R0bTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6Mn0scmVzZWFyY2hfYW5kX2Rldl9yYXRpb19meTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6Mn0scmVzZWFyY2hfYW5kX2Rldl9yYXRpb190dG06e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjJ9LGRpdmlkZW5kc19wYWlkOntjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjJ9LGRpdmlkZW5kX3lpZWxkX3JlY2VudDp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LGJhc2ljX2Vwc19uZXRfaW5jb21lOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToyfSxuZXRfaW5jb21lOntjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjJ9LGdyb3NzX3Byb2ZpdDp7Y29udHJvbDoicmFuZ2UiLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToyfSxncm9zc19wcm9maXRfZnE6e2NvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6Mn0sbnVtYmVyX29mX3NoYXJlaG9sZGVyczp7Y29udHJvbDoicmFuZ2UiLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToyfSxmbG9hdF9zaGFyZXNfb3V0c3RhbmRpbmc6e2NvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6Mn0sdG90YWxfc2hhcmVzX291dHN0YW5kaW5nX2Z1bmRhbWVudGFsOntjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjJ9LHRvdGFsX3NoYXJlc19vdXRzdGFuZGluZzp7Y29udHJvbDoicmFuZ2UiLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToyfSx0b3RhbF9zaGFyZXNfZGlsdXRlZDp7Y29udHJvbDoicmFuZ2UiLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToyfSx0b3RhbF92YWx1ZV90cmFkZWQ6e2NvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6Mn0sdG90YWxfYXNzZXRzOntjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjJ9LHRvdGFsX2N1cnJlbnRfYXNzZXRzOntjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjJ9LHRvdGFsX3JldmVudWU6e2NvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6Mn0sdG90YWxfbGlhYmlsaXRpZXNfZnk6e2NvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6Mn0sdG90YWxfbGlhYmlsaXRpZXNfZnE6e2NvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6Mn0sZGl2aWRlbmRzX3Blcl9zaGFyZV9mcTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6Mn0sZWFybmluZ3NfcGVyX3NoYXJlX2RpbHV0ZWRfdHRtOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToyfSxlbnRlcnByaXNlX3ZhbHVlX2ViaXRkYV90dG06e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsZmlsdGVyRm9ybWF0dGVyOnJ0LGNhdGVnb3J5OjJ9LGVudGVycHJpc2VfdmFsdWVfZnE6e2NvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6Mn0scHJpY2VfcmV2ZW51ZV90dG06e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsZmlsdGVyRm9ybWF0dGVyOnJ0LGNhdGVnb3J5OjIKfSxudW1iZXJfb2ZfZW1wbG95ZWVzOntjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjJ9LGxhc3RfYW5udWFsX2Vwczp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6Mn0sbGFzdF9hbm51YWxfcmV2ZW51ZTp7Y29udHJvbDoicmFuZ2UiLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToyfSxDQ0kyMDp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIkNDSTIwIiwiQ0NJMjBbMV0iXSxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc0NDSTIwU2lnbmFsLHNpZ25hbENvbXB1dGF0aW9uOmllLmNvbXB1dGVDQ0kyMFNpZ25hbH0sIkRvbmNoQ2gyMC5VcHBlciI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlR0KCkuY29uY2F0KFsiRG9uY2hDaDIwLkxvd2VyIl0pLGZvcm1hdHRlcjppdCxjYXRlZ29yeTozfSwiRG9uY2hDaDIwLkxvd2VyIjp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6VHQoKS5jb25jYXQoWyJEb25jaENoMjAuVXBwZXIiXSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjN9LEh1bGxNQTk6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlR0KCkuY29uY2F0KEV0KCJIdWxsTUE5IikpLGZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGRpc3BsYXlTaWduYWw6ITAsYWRkaXRpb25hbENvbHVtbnM6WyJSZWMuSHVsbE1BOSJdLG11dGF0ZURpc3BsYXlWYWx1ZTpuZS5wcm9jZXNzU2ltcGxlU2lnbmFsLHNpZ25hbENvbXB1dGF0aW9uOmllLmNvbXB1dGVTaW1wbGVTaWduYWx9LEFPOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxkaXNwbGF5U2lnbmFsOiEwLGFkZGl0aW9uYWxDb2x1bW5zOlsiQU8iLCJBT1sxXSIsIkFPWzJdIl0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NBT1NpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlQU9TaWduYWx9LCJQaXZvdC5NLkNsYXNzaWMuTWlkZGxlIjp7Zm9ybWF0dGVyOm50LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsYWxpZ246InJpZ2h0In0sIlBpdm90Lk0uQ2xhc3NpYy5SMSI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLkNsYXNzaWMuUjIiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSwiUGl2b3QuTS5DbGFzc2ljLlIzIjp7Zm9ybWF0dGVyOm50LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsYWxpZ246InJpZ2h0In0sIlBpdm90Lk0uQ2xhc3NpYy5TMSI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLkNsYXNzaWMuUzIiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSwiUGl2b3QuTS5DbGFzc2ljLlMzIjp7Zm9ybWF0dGVyOm50LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsYWxpZ246InJpZ2h0In0sIlBpdm90Lk0uRmlib25hY2NpLk1pZGRsZSI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLkZpYm9uYWNjaS5SMSI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLkZpYm9uYWNjaS5SMiI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLkZpYm9uYWNjaS5SMyI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLkZpYm9uYWNjaS5TMSI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLkZpYm9uYWNjaS5TMiI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLkZpYm9uYWNjaS5TMyI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLkNhbWFyaWxsYS5NaWRkbGUiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSwiUGl2b3QuTS5DYW1hcmlsbGEuUjEiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSwiUGl2b3QuTS5DYW1hcmlsbGEuUjIiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSwiUGl2b3QuTS5DYW1hcmlsbGEuUjMiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSwiUGl2b3QuTS5DYW1hcmlsbGEuUzEiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSwiUGl2b3QuTS5DYW1hcmlsbGEuUzIiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSwiUGl2b3QuTS5DYW1hcmlsbGEuUzMiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSwiUGl2b3QuTS5Xb29kaWUuTWlkZGxlIjp7Zm9ybWF0dGVyOm50LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsYWxpZ246InJpZ2h0In0sIlBpdm90Lk0uV29vZGllLlIxIjp7Zm9ybWF0dGVyOm50LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsYWxpZ246InJpZ2h0In0sIlBpdm90Lk0uV29vZGllLlIyIjp7Zm9ybWF0dGVyOm50LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsYWxpZ246InJpZ2h0In0sIlBpdm90Lk0uV29vZGllLlIzIjp7CmZvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLldvb2RpZS5TMSI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLldvb2RpZS5TMiI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLldvb2RpZS5TMyI6e2Zvcm1hdHRlcjpudCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGFsaWduOiJyaWdodCJ9LCJQaXZvdC5NLkRlbWFyay5NaWRkbGUiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSwiUGl2b3QuTS5EZW1hcmsuUjEiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSwiUGl2b3QuTS5EZW1hcmsuUzEiOntmb3JtYXR0ZXI6bnQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxhbGlnbjoicmlnaHQifSxjYW5kbGVzdGljazp7YWxpYXM6Im5hbWUiLGNvbnRyb2w6InNlbGVjdCIsY2F0ZWdvcnk6Myxzb3J0YWJsZUNvbHVtbjohMSxhZGRpdGlvbmFsQ29sdW1uczpvdC5tYXAoKGU9PmUua2V5KSksbXV0YXRlRGlzcGxheVZhbHVlOihlLC4uLnQpPT57Y29uc3Qgbz1bXTtmb3IobGV0IGU9MDtlPG90Lmxlbmd0aDsrK2UpdFtlXSYmby5wdXNoKG90W2VdKTtyZXR1cm4gby5sZW5ndGg/by5tYXAoKGU9PmA8c3BhbiBjbGFzcz0idHYtc2NyZWVuZXItdGFibGVfX3BhdHRlcm5faWNvbiBhcHBseS1jb21tb24tdG9vbHRpcCBjb21tb24tdG9vbHRpcC1maXhlZCBjb21tb24tdG9vbHRpcC1iZWxvdyBjb21tb24tdG9vbHRpcC1odG1sIiBkYXRhLWNvbG9yLXRoZW1lPSJyb3VuZC1zaGFkb3ciIHRpdGxlPSc8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci10YWJsZV9fcGF0dGVybl90b29sdGlwX2NvbnRhaW5lciI+JHtlLnN2Z308ZGl2PiR7ZS5uYW1lfTwvZGl2PjwvZGl2Pic+JHtlLnN2Z308L3NwYW4+YCkpLmpvaW4oIiAiKTonPHNwYW4gY2xhc3M9InR2LXNjcmVlbmVyLXRhYmxlX19wYXR0ZXJuX2VtcHR5Ij7igJQ8L3NwYW4+J30scmFuZ2U6b3QubWFwKChlPT5lLm5hbWUpKSxzb3VyY2VSYW5nZTpvdCxjdXN0b21GaWx0ZXJDb25kaXRpb246ZT0+e0FycmF5LmlzQXJyYXkoZSl8fChlPVtlXSk7cmV0dXJue2xlZnQ6ZS5tYXAoKGU9PmJ0KGUsb3QpKSkuam9pbigiLCIpLG9wZXJhdGlvbjoiZXF1YWwiLHJpZ2h0OjF9fX0sdXBkYXRlX21vZGU6e2hpZGRlbkNvbHVtbjohMSxoaWRlU2V0dXBDb2x1bW46ITAsc2tpcEZpZWxkOiEwfSxwcmVtYXJrZXRfY2hhbmdlOnt0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygzMjU3MTMpKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDIwODg0NikpLGNvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbImNoYW5nZSJdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MyxoaWdobGlnaHRDaGFuZ2U6ITB9LHByZW1hcmtldF9jaGFuZ2VfYWJzOnt0aXRsZTpfLnQobnVsbCx2b2lkIDAsbyg1OTc3NjMpKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDQ2NTU3NCkpLGNvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbImNoYW5nZV9hYnMiXSxmb3JtYXR0ZXI6aXQsZm9yZXhGb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxoaWdobGlnaHRDaGFuZ2U6ITB9LHByZW1hcmtldF9jaGFuZ2VfZnJvbV9vcGVuOnt0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygzODY5NjkpKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDY0MjMyOCkpLGNvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSxwcmVtYXJrZXRfY2hhbmdlX2Zyb21fb3Blbl9hYnM6e3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDUwODI3NikpLHNob3J0VGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNDk5NDk1KSksY29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjppdCxmb3JleEZvcm1hdHRlcjppdCxjYXRlZ29yeTozLGhpZ2hsaWdodENoYW5nZTohMH0scHJlbWFya2V0X2Nsb3NlOnt0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygzODY0NzQpKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDM4NjQ3NCkpLGNvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsZmlsdGVyRm9ybWF0dGVyOnJ0LGNhdGVnb3J5OjF9LHByZW1hcmtldF9nYXA6e3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDUxMTMxMykpLHNob3J0VGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNTExMzEzKSksY29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOlsiZ2FwIl0sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeTozLGhpZ2hsaWdodENoYW5nZTohMH0scHJlbWFya2V0X2hpZ2g6e3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDI0NTgxMikpLHNob3J0VGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oMjQ1ODEyKSksY29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6MX0scHJlbWFya2V0X2xvdzp7dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNDI1MjAwKSksc2hvcnRUaXRsZTpfLnQobnVsbCx2b2lkIDAsbyg0MjUyMDApKSxjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToxfSxwcmVtYXJrZXRfb3Blbjp7dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oMjE2NzY0KSksCnNob3J0VGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oMjE2NzY0KSksY29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6MX0scHJlbWFya2V0X3ZvbHVtZTp7dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oMTcxNDE1KSksc2hvcnRUaXRsZTpfLnQobnVsbCx2b2lkIDAsbygxNzE0MTUpKSxjb250cm9sOiJyYW5nZSIsZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjF9LHBvc3RtYXJrZXRfY2hhbmdlOnt0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygzOTk5NjgpKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDY3MzcwMykpLGNvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbImNoYW5nZSJdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MyxoaWdobGlnaHRDaGFuZ2U6ITB9LHBvc3RtYXJrZXRfY2hhbmdlX2Ficzp7dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oMzAwNjU1KSksc2hvcnRUaXRsZTpfLnQobnVsbCx2b2lkIDAsbyg0NTI3MjIpKSxjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6WyJjaGFuZ2VfYWJzIl0sZm9ybWF0dGVyOml0LGZvcmV4Rm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsaGlnaGxpZ2h0Q2hhbmdlOiEwfSxwb3N0bWFya2V0X2Nsb3NlOnt0aXRsZTpfLnQobnVsbCx2b2lkIDAsbyg3ODgwMDIpKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDc4ODAwMikpLGNvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsZmlsdGVyRm9ybWF0dGVyOnJ0LGNhdGVnb3J5OjF9LHBvc3RtYXJrZXRfaGlnaDp7dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNzQyMjk5KSksc2hvcnRUaXRsZTpfLnQobnVsbCx2b2lkIDAsbyg3NDIyOTkpKSxjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToxfSxwb3N0bWFya2V0X2xvdzp7dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oMTM2OTAyKSksc2hvcnRUaXRsZTpfLnQobnVsbCx2b2lkIDAsbygxMzY5MDIpKSxjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToxfSxwb3N0bWFya2V0X29wZW46e3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDM5NzMzMykpLHNob3J0VGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oMzk3MzMzKSksY29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6MX0scG9zdG1hcmtldF92b2x1bWU6e3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDc5OTI2KSksc2hvcnRUaXRsZTpfLnQobnVsbCx2b2lkIDAsbyg3OTkyNikpLGNvbnRyb2w6InJhbmdlIixmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6MX0sZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X25leHRfZnE6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsZmlsdGVyRm9ybWF0dGVyOnJ0LGNhdGVnb3J5OjJ9LGVhcm5pbmdzX3Blcl9zaGFyZV9mcTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxmaWx0ZXJGb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6Mn0sZWFybmluZ3NfcmVsZWFzZV9kYXRlOntjb250cm9sOiJzZWxlY3QiLGlzU2luZ2xlOiEwLGNhdGVnb3J5OjIsc29ydGFibGU6ITEsdXNlRGVmYXVsdFJhbmdlOiEwLGRlZmF1bHRSYW5nZTp1dC5maWx0ZXIoKGU9Pi0xIT09X3QuaW5kZXhPZihlLmtleSkpKS5tYXAoKGU9PmUubmFtZSkpLHNvdXJjZVJhbmdlOnV0LGN1c3RvbUZpbHRlckNvbmRpdGlvbjpndCgiZWFybmluZ3NfcmVsZWFzZV9kYXRlIiksZm9ybWF0dGVyOmN0fSxlYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZTp7Y29udHJvbDoic2VsZWN0Iixpc1NpbmdsZTohMCxjYXRlZ29yeToyLHNvcnRhYmxlOiExLHVzZURlZmF1bHRSYW5nZTohMCxkZWZhdWx0UmFuZ2U6dXQuZmlsdGVyKChlPT4tMSE9PXB0LmluZGV4T2YoZS5rZXkpKSkubWFwKChlPT5lLm5hbWUpKSxzb3VyY2VSYW5nZTp1dCxjdXN0b21GaWx0ZXJDb25kaXRpb246Z3QoImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlIiksZm9ybWF0dGVyOmN0fSwiUmVjb21tZW5kLkFsbCI6e2NvbnRyb2w6InNlbGVjdCIsY2F0ZWdvcnk6MyxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc1JlY29tbWVuZFNpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlUmVjb21tZW5kU2lnbmFsLHVzZURlZmF1bHRSYW5nZTohMCxzb3J0YWJsZTohMSxzb3J0U2VsZWN0ZWRGaXJzdDohMSxkZWZhdWx0UmFuZ2U6ZHQsY3VzdG9tRmlsdGVyQ29uZGl0aW9uOmU9PnNlKGUsIlJlY29tbWVuZC5BbGwiKX0sIlJlY29tbWVuZC5NQSI6e2NvbnRyb2w6InNlbGVjdCIsY2F0ZWdvcnk6MyxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc1JlY29tbWVuZFNpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlUmVjb21tZW5kU2lnbmFsLHVzZURlZmF1bHRSYW5nZTohMCxzb3J0YWJsZTohMSxzb3J0U2VsZWN0ZWRGaXJzdDohMSxkZWZhdWx0UmFuZ2U6ZHQsY3VzdG9tRmlsdGVyQ29uZGl0aW9uOmU9PnNlKGUsIlJlY29tbWVuZC5NQSIpfSwiUmVjb21tZW5kLk90aGVyIjp7Y29udHJvbDoic2VsZWN0IixjYXRlZ29yeTozLG11dGF0ZURpc3BsYXlWYWx1ZTpuZS5wcm9jZXNzUmVjb21tZW5kU2lnbmFsLHNpZ25hbENvbXB1dGF0aW9uOmllLmNvbXB1dGVSZWNvbW1lbmRTaWduYWwsdXNlRGVmYXVsdFJhbmdlOiEwLHNvcnRhYmxlOiExLHNvcnRTZWxlY3RlZEZpcnN0OiExLGRlZmF1bHRSYW5nZTpkdCwKY3VzdG9tRmlsdGVyQ29uZGl0aW9uOmU9PnNlKGUsIlJlY29tbWVuZC5PdGhlciIpfSwiU3RvY2guUlNJLksiOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbIlN0b2NoLlJTSS5EIl0sZm9ybWF0dGVyOm50LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIlJlYy5TdG9jaC5SU0kiXSxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc1NpbXBsZVNpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlU2ltcGxlU2lnbmFsfSwiU3RvY2guUlNJLkQiOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbIlN0b2NoLlJTSS5LIl0sZm9ybWF0dGVyOm50LGNhdGVnb3J5OjN9LCJXLlIiOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsY2F0ZWdvcnk6MyxkaXNwbGF5U2lnbmFsOiEwLGFkZGl0aW9uYWxDb2x1bW5zOlsiUmVjLldSIl0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NTaW1wbGVTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZVNpbXBsZVNpZ25hbH0sUk9DOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsY2F0ZWdvcnk6M30sQkJQb3dlcjp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIlJlYy5CQlBvd2VyIl0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NTaW1wbGVTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZVNpbXBsZVNpZ25hbH0sVU86e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpudCxjYXRlZ29yeTozLGRpc3BsYXlTaWduYWw6ITAsYWRkaXRpb25hbENvbHVtbnM6WyJSZWMuVU8iXSxtdXRhdGVEaXNwbGF5VmFsdWU6bmUucHJvY2Vzc1NpbXBsZVNpZ25hbCxzaWduYWxDb21wdXRhdGlvbjppZS5jb21wdXRlU2ltcGxlU2lnbmFsfSxWV0FQOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdChFdCgpKSxmb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6M30sVldNQTp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6VHQoKS5jb25jYXQoRXQoKSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjMsZGlzcGxheVNpZ25hbDohMCxhZGRpdGlvbmFsQ29sdW1uczpbIlJlYy5WV01BIl0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NTaW1wbGVTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZVNpbXBsZVNpZ25hbH0sQURSOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLGZvcm1hdHRlcjppdCxjYXRlZ29yeTozfSwiSWNoaW1va3UuQ0xpbmUiOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdCh4dCgiSWNoaW1va3UuQ0xpbmUiKSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjN9LCJJY2hpbW9rdS5CTGluZSI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOlR0KCkuY29uY2F0KHh0KCJJY2hpbW9rdS5CTGluZSIpKSxmb3JtYXR0ZXI6aXQsY2F0ZWdvcnk6MyxkaXNwbGF5U2lnbmFsOiEwLGFkZGl0aW9uYWxDb2x1bW5zOlsiUmVjLkljaGltb2t1Il0sbXV0YXRlRGlzcGxheVZhbHVlOm5lLnByb2Nlc3NTaW1wbGVTaWduYWwsc2lnbmFsQ29tcHV0YXRpb246aWUuY29tcHV0ZVNpbXBsZVNpZ25hbH0sIkljaGltb2t1LkxlYWQxIjp7Y29udHJvbDoiY29uZGl0aW9uIixjb25kaXRpb25GaWVsZHM6VHQoKS5jb25jYXQoeHQoIkljaGltb2t1LkxlYWQxIikpLGZvcm1hdHRlcjppdCxjYXRlZ29yeTozfSwiSWNoaW1va3UuTGVhZDIiOntjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpUdCgpLmNvbmNhdCh4dCgiSWNoaW1va3UuTGVhZDIiKSksZm9ybWF0dGVyOml0LGNhdGVnb3J5OjN9LGVsZW1lbnRzOntoaWRkZW5PcGVyYXRvcnM6QXQsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oOTA1ODM1KSksc2hvcnRUaXRsZTpfLnQobnVsbCx2b2lkIDAsbyg5MDU4MzUpKSxjb250cm9sOiJjb25kaXRpb24iLGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6cnQsY2F0ZWdvcnk6MX0sYmFzaWNfZWxlbWVudHM6e2hpZGRlbk9wZXJhdG9yczpBdCx0aXRsZTpfLnQobnVsbCx2b2lkIDAsbyg1MjIwMTQpKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDUyMjAxNCkpLGNvbnRyb2w6ImNvbmRpdGlvbiIsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpydCxjYXRlZ29yeToxfSxkcHNfY29tbW9uX3N0b2NrX3ByaW1faXNzdWVfZnk6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6bnQsZmlsdGVyRm9ybWF0dGVyOnJ0LGNhdGVnb3J5OjJ9LCIyNGhfdm9sfDUiOntjYXRlZ29yeToxLGZvcm1hdHRlcjpzdCxjb250cm9sOiJyYW5nZSIsdGl0bGU6RWVbIjI0aF92b2x8NSJdWzBdLHNob3J0VGl0bGU6RWVbIjI0aF92b2x8NSJdWzFdfSwiMjRoX3ZvbF9jaGFuZ2V8NSI6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsY2F0ZWdvcnk6MSxoaWdobGlnaHRDaGFuZ2U6ITB9LGN1cnJlbmN5Ontjb250cm9sOiJzZWxlY3QiLGRlZmF1bHRSYW5nZTpbIlVTRCIsIlVTRFQiLCJVU0RDIiwiQlVTRCIsIkJUQyIsIkVUSCIsIkRBSSIsIkJOQiIsIldCVEMiLCJXRVRIIl0sZGlzYWJsZWQ6ITAsY2F0ZWdvcnk6MSxoaWRlU2V0dXBDb2x1bW46ITB9LHRvdGFsX3JldmVudWVfeW95X2dyb3d0aF9mcTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LHRvdGFsX3JldmVudWVfcW9xX2dyb3d0aF9mcTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsCmNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSx0b3RhbF9yZXZlbnVlX3lveV9ncm93dGhfZnk6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSx0b3RhbF9yZXZlbnVlX3lveV9ncm93dGhfdHRtOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sZ3Jvc3NfcHJvZml0X3lveV9ncm93dGhfZnE6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSxncm9zc19wcm9maXRfcW9xX2dyb3d0aF9mcTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LGdyb3NzX3Byb2ZpdF95b3lfZ3Jvd3RoX2Z5Ontjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sZ3Jvc3NfcHJvZml0X3lveV9ncm93dGhfdHRtOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sZWJpdGRhX3lveV9ncm93dGhfZnE6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSxlYml0ZGFfcW9xX2dyb3d0aF9mcTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LGViaXRkYV95b3lfZ3Jvd3RoX2Z5Ontjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sZWJpdGRhX3lveV9ncm93dGhfdHRtOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sbmV0X2luY29tZV95b3lfZ3Jvd3RoX2ZxOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sbmV0X2luY29tZV9xb3FfZ3Jvd3RoX2ZxOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sbmV0X2luY29tZV95b3lfZ3Jvd3RoX2Z5Ontjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sbmV0X2luY29tZV95b3lfZ3Jvd3RoX3R0bTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LGZyZWVfY2FzaF9mbG93X3lveV9ncm93dGhfZnE6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSxmcmVlX2Nhc2hfZmxvd19xb3FfZ3Jvd3RoX2ZxOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sZnJlZV9jYXNoX2Zsb3dfeW95X2dyb3d0aF9meTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LGZyZWVfY2FzaF9mbG93X3lveV9ncm93dGhfdHRtOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sZWFybmluZ3NfcGVyX3NoYXJlX2RpbHV0ZWRfeW95X2dyb3d0aF9mcTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LGVhcm5pbmdzX3Blcl9zaGFyZV9kaWx1dGVkX3FvcV9ncm93dGhfZnE6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwCn0sZWFybmluZ3NfcGVyX3NoYXJlX2RpbHV0ZWRfeW95X2dyb3d0aF9meTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LGVhcm5pbmdzX3Blcl9zaGFyZV9kaWx1dGVkX3lveV9ncm93dGhfdHRtOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sZHBzX2NvbW1vbl9zdG9ja19wcmltX2lzc3VlX3lveV9ncm93dGhfZnk6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSx0b3RhbF9hc3NldHNfeW95X2dyb3d0aF9mcTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LHRvdGFsX2Fzc2V0c19xb3FfZ3Jvd3RoX2ZxOntjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOmF0LGZpbHRlckZvcm1hdHRlcjpsdCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sdG90YWxfYXNzZXRzX3lveV9ncm93dGhfZnk6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSx0b3RhbF9kZWJ0X3lveV9ncm93dGhfZnE6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSx0b3RhbF9kZWJ0X3FvcV9ncm93dGhfZnE6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSx0b3RhbF9kZWJ0X3lveV9ncm93dGhfZnk6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6YXQsZmlsdGVyRm9ybWF0dGVyOmx0LGNhdGVnb3J5OjIsaGlnaGxpZ2h0Q2hhbmdlOiEwfSxjYXNoX25fZXF1aXZhbGVudHNfZnE6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6Mn0sY2FzaF9uX2VxdWl2YWxlbnRzX2Z5Ontjb250cm9sOiJjb25kaXRpb24iLGhpZGRlbk9wZXJhdG9yczpBdCxjb25kaXRpb25GaWVsZHM6W10sZm9ybWF0dGVyOnN0LGNhdGVnb3J5OjJ9LGNhc2hfbl9zaG9ydF90ZXJtX2ludmVzdF9mcTp7Y29udHJvbDoiY29uZGl0aW9uIixoaWRkZW5PcGVyYXRvcnM6QXQsY29uZGl0aW9uRmllbGRzOltdLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToyfSxjYXNoX25fc2hvcnRfdGVybV9pbnZlc3RfZnk6e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSxmb3JtYXR0ZXI6c3QsY2F0ZWdvcnk6Mn19O2Z1bmN0aW9uIFJ0KGUsdCl7dD10LnJlcGxhY2UoLyhccyspLywiKDxbXj5dKz4pKiQxKDxbXj5dKz4pKiIpO2NvbnN0IG89bmV3IFJlZ0V4cCgiKCIrdCsiKSIsImdpIik7cmV0dXJuIGUucmVwbGFjZShvLCI8bWFyaz4kMTwvbWFyaz4iKX1mdW5jdGlvbiBGdChlLHQpe2ZvcihsZXQgbz0wO288ZS5sZW5ndGg7KytvKXtjb25zdCBpPWVbb107aS5sZWZ0JiZJdFtpLmxlZnRdJiYoaS5sZWZ0PWhlKGkubGVmdCx0KSl9fWZ1bmN0aW9uIEx0KGUsdCxvLGkpe2lmKEFycmF5LmlzQXJyYXkodCkmJjA9PT10Lmxlbmd0aCl0aHJvdyBuZXcgRXJyb3IoIkVtcHR5IHZhbHVlIik7bGV0IG49byYmb1tlXT9vW2VdOnQ7aWYoImZ1bmN0aW9uIj09dHlwZW9mIEl0W2VdLmN1c3RvbUZpbHRlckNvbmRpdGlvbil7Y29uc3QgdD1JdFtlXS5jdXN0b21GaWx0ZXJDb25kaXRpb24obik7aWYodClyZXR1cm4gQXJyYXkuaXNBcnJheSh0KT9GdCh0LGkpOigiY2FuZGxlc3RpY2siPT09ZSYmKHQubGVmdD10LmxlZnQuc3BsaXQoIiwiKS5tYXAoKGU9PmhlKGUsaSkpKS5qb2luKCIsIikpLHQubGVmdCYmSXRbdC5sZWZ0XSYmKHQubGVmdD1oZSh0LmxlZnQsaSkpKSx0LmZpbHRlck9SJiYoRnQodC5maWx0ZXIsaSksRnQodC5maWx0ZXJPUixpKSksdC5maWx0ZXIyRmxhZyYmKEZ0KHQuZmlsdGVyLGkpLEZ0KHQuZmlsdGVyMkFuZFBhcnQsaSkpLHR9aWYoImZ1bmN0aW9uIj09dHlwZW9mIEl0W2VdLm11dGF0ZUZpbHRlckNvbmRpdGlvblZhbHVlKXtjb25zdCB0PUl0W2VdLm11dGF0ZUZpbHRlckNvbmRpdGlvblZhbHVlKG4pO3QmJihuPXQpfWNvbnN0IHI9QXJyYXkuaXNBcnJheShuKTtpZihuJiYib2JqZWN0Ij09dHlwZW9mIG4mJiFyKXtjb25zdCB0PXtsZWZ0OmUsb3BlcmF0aW9uOm4ub3BlcmF0b3J9O3JldHVybiBuLnZhbHVlJiYodC5yaWdodD1uLnZhbHVlKSx0fXJldHVybntsZWZ0OmhlKGUsaSksb3BlcmF0aW9uOnI/ImluX3JhbmdlIjoiZXF1YWwiLHJpZ2h0OnI/bi5zbGljZSgpOm59fWZ1bmN0aW9uIER0KGUsdCxvLGkpe2lmKG10KHQpJiZtdChvKSl0aHJvdyBuZXcgRXJyb3IoIkVtcHR5IHZhbHVlIik7bGV0IG4scj17fTtzd2l0Y2goSXRbZV0uY29udHJvbCl7Y2FzZSJyYW5nZSI6aWYodCYmIm9iamVjdCI9PXR5cGVvZiB0JiYhQXJyYXkuaXNBcnJheSh0KSl7cj17bGVmdDplLG9wZXJhdGlvbjp0Lm9wZXJhdG9yfSx0LnZhbHVlJiYoci5yaWdodD10LnZhbHVlKTticmVha30KdmFyIHM9bz9BcnJheS5pc0FycmF5KG9bZV0pJiZvW2VdLnNsaWNlKCl8fFtdOnQuc2xpY2UoKTtyPXtsZWZ0OmhlKGUsaSksb3BlcmF0aW9uOiJpbl9yYW5nZSIscmlnaHQ6c30sMj09PXMubGVuZ3RoJiYoMCxILmlzTnVtYmVyKShzWzBdKSYmKDAsSC5pc051bWJlcikoc1sxXSkmJigtMWUxMDA9PStzWzBdP3I9e2xlZnQ6aGUoZSxpKSxvcGVyYXRpb246ImVsZXNzIixyaWdodDpzWzFdfToxZTEwMD09K3NbMV0mJihyPXtsZWZ0OmhlKGUsaSksb3BlcmF0aW9uOiJlZ3JlYXRlciIscmlnaHQ6c1swXX0pKTticmVhaztjYXNlImNvbmRpdGlvbiI6aWYobXQodC5vcGVyYXRvcikpdGhyb3cgbmV3IEVycm9yKCJFbXB0eSB2YWx1ZSBvcGVyYXRvciIpO2lmKG10KHQudmFsdWUpKXRocm93IG5ldyBFcnJvcigiRW1wdHkgdmFsdWUiKTtuPW8mJm9bZV0udmFsdWU/b1tlXS52YWx1ZTp0LnZhbHVlLEl0W25dJiYobj1oZShuLGkpKSxyPXtsZWZ0OmhlKGUsaSksb3BlcmF0aW9uOm8mJm9bZV0ub3BlcmF0b3I/b1tlXS5vcGVyYXRvcjp0Lm9wZXJhdG9yLHJpZ2h0Om59O2JyZWFrO2Nhc2UidG9nZ2xlIjpyPXtsZWZ0OmhlKGUsaSksb3BlcmF0aW9uOm8mJm9bZV0ub3BlcmF0b3I/b1tlXS5vcGVyYXRvcjpJdFtlXS5maWx0ZXIub3BlcmF0b3IscmlnaHQ6byYmb1tlXS52YWx1ZT9vW2VdLnZhbHVlOkl0W2VdLmZpbHRlci52YWx1ZX07YnJlYWs7Y2FzZSJzZWxlY3QiOnI9THQoZSx0LG8saSk7YnJlYWs7ZGVmYXVsdDoic2VsZWN0Ij09PUl0W2VdLmZpbHRlckNvbmRpdGlvbiYmKHI9THQoZSx0LG8saSkpfXJldHVybiByfWZ1bmN0aW9uIE90KGUsdCl7IWZ1bmN0aW9uKGUsdCl7Zm9yKGNvbnN0IG8gaW4gZSllW29dLmRpc2FibGVkPTI9PT1lW29dLmNhdGVnb3J5fHx0LmluY2x1ZGVzKG8pfShlLCh0fHxbXSkuY29uY2F0KCJ0eXBlIiwiaW5kdXN0cnkiLCJtYXJrZXRfY2FwX2Jhc2ljIiwiYmV0YV8xX3llYXIiLCJWYWx1ZS5UcmFkZWQiLCJNb25leUZsb3ciLCJDaGFpa2luTW9uZXlGbG93IiwiZWxlbWVudHMiLCJiYXNpY19lbGVtZW50cyIsInByZW1hcmtldF9jaGFuZ2UiLCJwcmVtYXJrZXRfY2hhbmdlX2FicyIsInByZW1hcmtldF9jaGFuZ2VfZnJvbV9vcGVuIiwicHJlbWFya2V0X2NoYW5nZV9mcm9tX29wZW5fYWJzIiwicHJlbWFya2V0X2Nsb3NlIiwicHJlbWFya2V0X2dhcCIsInByZW1hcmtldF9oaWdoIiwicHJlbWFya2V0X2xvdyIsInByZW1hcmtldF9vcGVuIiwicHJlbWFya2V0X3ZvbHVtZSIsInBvc3RtYXJrZXRfY2hhbmdlIiwicG9zdG1hcmtldF9jaGFuZ2VfYWJzIiwicG9zdG1hcmtldF9jbG9zZSIsInBvc3RtYXJrZXRfaGlnaCIsInBvc3RtYXJrZXRfbG93IiwicG9zdG1hcmtldF9vcGVuIiwicG9zdG1hcmtldF92b2x1bWUiKSl9ZnVuY3Rpb24gTnQoKXtmb3IoY29uc3QgZSBvZiBPYmplY3Qua2V5cyhFZSkpZSBpbiBJdCYmKEl0W2VdLnRpdGxlPUl0W2VdLnRpdGxlfHxFZVtlXVswXSxJdFtlXS5zaG9ydFRpdGxlPUl0W2VdLnNob3J0VGl0bGV8fEVlW2VdWzFdKX1mdW5jdGlvbiBQdChlLHQpe2lmKGRlbGV0ZSBJdC5uYW1lLmNvbnRyb2wsTnQoKSwiZm9yZXgiPT09ZSYmKEl0LmNvdW50cnkudGl0bGU9Xy50KG51bGwsdm9pZCAwLG8oMjI0ODIxKSksSXQuY291bnRyeS5zaG9ydFRpdGxlPV8udChudWxsLHZvaWQgMCxvKDIyNDgyMSkpLGRlbGV0ZSBJdC5zZWN0b3IuY29udHJvbCxJdC5zZWN0b3IudGl0bGU9Xy50KG51bGwsdm9pZCAwLG8oODYyOTQ5KSksSXQuc2VjdG9yLnNob3J0VGl0bGU9Xy50KG51bGwsdm9pZCAwLG8oODYyOTQ5KSksSXQuc2VjdG9yLnJlc2V0dGFibGVGaWx0ZXI9ITEsSXQuc2VjdG9yLm11dGF0ZUZpbHRlckNvbmRpdGlvblZhbHVlPWU9PiEhZSYmKEFycmF5LmlzQXJyYXkoZSk/ZS5tYXAoKGU9PnZ0KGUsaHQpKSk6dnQoZSxodCkpKSwic3RvY2siPT09ZSl7SXQuc2VjdG9yLnRpdGxlPV8udChudWxsLHZvaWQgMCxvKDI3ODcyOSkpLEl0LnNlY3Rvci5zaG9ydFRpdGxlPV8udChudWxsLHZvaWQgMCxvKDI3ODcyOSkpLEl0LnR5cGUuY3VzdG9tRmlsdGVyQ29uZGl0aW9uPXllLEl0LnR5cGUuZGVmYXVsdFJhbmdlPUN0LEl0Lm5hbWUuZGVmYXVsdFJhbmdlPUN0LEl0LnNlY3Rvci5jb250cm9sPSJzZWxlY3QiLEl0LnNlY3Rvci5yZXNldHRhYmxlRmlsdGVyPSEwLGRlbGV0ZSBJdC5zZWN0b3IubXV0YXRlRmlsdGVyQ29uZGl0aW9uVmFsdWU7Zm9yKGNvbnN0IGUgaW4gSXQpSXRbZV0uZGlzYWJsZWQ9ITF9WyJzdG9jayIsImNyeXB0byJdLmluY2x1ZGVzKGUpJiYoSXQubmFtZS5jb250cm9sPSJzZWxlY3QiKSwiY3J5cHRvIj09PWUmJihJdC5zZWN0b3IudGl0bGU9Xy50KG51bGwsdm9pZCAwLG8oNTQ1OCkpLEl0LnNlY3Rvci5zaG9ydFRpdGxlPV8udChudWxsLHZvaWQgMCxvKDU0NTgpKSxJdC5zZWN0b3IuY29udHJvbD0ic2VsZWN0IixJdC5zZWN0b3IucmVzZXR0YWJsZUZpbHRlcj0hMCxkZWxldGUgSXQuc2VjdG9yLm11dGF0ZUZpbHRlckNvbmRpdGlvblZhbHVlLEl0Lm5hbWUuYWRkaXRpb25hbENvbHVtbnMucHVzaCgiZXhjaGFuZ2UiKSxJdC50eXBlLmRlZmF1bHRSYW5nZT1rdCxJdC5uYW1lLmRlZmF1bHRSYW5nZT1rdCxJdC50eXBlLmN1c3RvbUZpbHRlckNvbmRpdGlvbj1iZSksImNyeXB0byIhPT1lJiYoSXQubmFtZS5hZGRpdGlvbmFsQ29sdW1ucz1JdC5uYW1lLmFkZGl0aW9uYWxDb2x1bW5zLmZpbHRlcigoZT0+ImV4Y2hhbmdlIiE9PWUpKSksImNyeXB0b19ta3QiPT09ZSYmKEl0LnNlY3Rvci50aXRsZT1fLnQobnVsbCx2b2lkIDAsbyg3MzQ5OTMpKSxJdC5zZWN0b3Iuc2hvcnRUaXRsZT1fLnQobnVsbCx2b2lkIDAsbyg3MzQ5OTMpKSksWyJjcnlwdG8iLCJjcnlwdG9fbWt0Il0uaW5jbHVkZXMoZSkmJihJdC50b3RhbF9zaGFyZXNfb3V0c3RhbmRpbmcudGl0bGU9Xy50KG51bGwsdm9pZCAwLG8oODM1OTYxKSksSXQudG90YWxfc2hhcmVzX291dHN0YW5kaW5nLnNob3J0VGl0bGU9Xy50KG51bGwsdm9pZCAwLG8oODEzMDc3KSkpLCJzZWN0b3IiPT09ZSYmKEl0LmRlc2NyaXB0aW9uLmhpZGRlbkNvbHVtbj0hMSwKSXQuZGVzY3JpcHRpb24udGl0bGU9Xy50KG51bGwsdm9pZCAwLG8oMjc4NzI5KSksSXQuZGVzY3JpcHRpb24uc2hvcnRUaXRsZT1fLnQobnVsbCx2b2lkIDAsbygyNzg3MjkpKSxJdC5kZXNjcmlwdGlvbi5tdXRhdGVEaXNwbGF5VmFsdWU9TXQpLCJpbmR1c3RyeSI9PT1lJiYoSXQuZGVzY3JpcHRpb24uaGlkZGVuQ29sdW1uPSExLEl0LmRlc2NyaXB0aW9uLnRpdGxlPV8udChudWxsLHZvaWQgMCxvKDg3NzYxKSksSXQuZGVzY3JpcHRpb24uc2hvcnRUaXRsZT1fLnQobnVsbCx2b2lkIDAsbyg4Nzc2MSkpLEl0LmRlc2NyaXB0aW9uLm11dGF0ZURpc3BsYXlWYWx1ZT1NdCxJdC5lbGVtZW50cy50aXRsZT1fLnQobnVsbCx2b2lkIDAsbyg1MjIwMTQpKSxJdC5lbGVtZW50cy5zaG9ydFRpdGxlPV8udChudWxsLHZvaWQgMCxvKDUyMjAxNCkpLEl0LnNlY3Rvci5jb250cm9sPSJzZWxlY3QiLEl0LnNlY3Rvci5yZXNldHRhYmxlRmlsdGVyPSEwKSxbInNlY3RvciIsImluZHVzdHJ5Il0uaW5jbHVkZXModCkmJihJdC5zZWN0b3IuaGlkZGVuQ29sdW1uPSEwKSwiYm9uZHMiPT09ZSYmKEl0LmNsb3NlLnRpdGxlPV8udChudWxsLHtjb250ZXh0OiJCb25kcyJ9LG8oNzU0NikpLEl0LmNsb3NlLnNob3J0VGl0bGU9Xy50KG51bGwse2NvbnRleHQ6IkJvbmRzIn0sbyg3NTQ2KSksSXQuY291cG9uPXt0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygyMjU3MDYpKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDIyNTcwNikpLGFsaWduOiJyaWdodCIsZm9ybWF0dGVyOmF0fSxJdC5tYXR1cml0eV9kYXRlPXt0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygyNzc5ODQpKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDI3Nzk4NCkpLGFsaWduOiJyaWdodCIsbXV0YXRlRGlzcGxheVZhbHVlOm1lfSksImNvbnRpbnVvdXNfZnV0dXJlcyI9PT1lJiYoSXQuZXhwaXJhdGlvbj17dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oMzY1NTg5KSksc2hvcnRUaXRsZTpfLnQobnVsbCx2b2lkIDAsbygzNjU1ODkpKSxhbGlnbjoicmlnaHQiLG11dGF0ZURpc3BsYXlWYWx1ZTptZX0pLGZ1bmN0aW9uKGUsdCl7c3dpdGNoKGUpe2Nhc2Uic3RvY2siOlsiYmlkIiwiYXNrIiwiY3VycmVuY3kiLCJjZW50cmFsaXphdGlvbiJdLmZvckVhY2goKGU9Pnt0W2VdLmRpc2FibGVkPSEwfSkpO2JyZWFrO2Nhc2UiZm9yZXgiOk90KHQsWyJleGNoYW5nZSIsInZvbHVtZSIsInJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYyIsInJlbGF0aXZlX3ZvbHVtZV9pbnRyYWRheS41IiwiYXZlcmFnZV92b2x1bWVfMTBkX2NhbGMiLCJhdmVyYWdlX3ZvbHVtZV8zMGRfY2FsYyIsImF2ZXJhZ2Vfdm9sdW1lXzYwZF9jYWxjIiwiYXZlcmFnZV92b2x1bWVfOTBkX2NhbGMiLCJjdXJyZW5jeSIsImNlbnRyYWxpemF0aW9uIl0pO2JyZWFrO2Nhc2UiZnV0dXJlcyI6Y2FzZSJjZmQiOk90KHQsWyJiaWQiLCJhc2siLCJjZW50cmFsaXphdGlvbiJdKTticmVhaztjYXNlImNyeXB0byI6T3QodCxbImNvdW50cnkiLCJzZWN0b3IiXSl9fShlLEl0KTtbIm1hcmtldF9jYXBfY2FsYyIsIm1hcmtldF9jYXBfZGlsdXRlZF9jYWxjIiwidG90YWxfc2hhcmVzX291dHN0YW5kaW5nIiwidG90YWxfc2hhcmVzX2RpbHV0ZWQiLCJ0b3RhbF92YWx1ZV90cmFkZWQiLCIyNGhfdm9sfDUiLCIyNGhfdm9sX2NoYW5nZXw1Il0uZm9yRWFjaCgodD0+e0l0W3RdLmRpc2FibGVkPSFbImNyeXB0byIsImNyeXB0b19ta3QiXS5pbmNsdWRlcyhlKX0pKTtbImVsZW1lbnRzIiwiYmFzaWNfZWxlbWVudHMiXS5mb3JFYWNoKCh0PT57SXRbdF0uZGlzYWJsZWQ9IVsic2VjdG9yIiwiaW5kdXN0cnkiXS5pbmNsdWRlcyhlKX0pKX1OdCgpO2NvbnN0IEJ0PVt7a2V5OiItMSIsbmFtZTpfLnQobnVsbCx2b2lkIDAsbyg3MDA1MDgpKX0se2tleToiMSIsbmFtZTpfLnQobnVsbCx2b2lkIDAsbyg1NzI5NjIpKX1dLCR0PVt7a2V5OiItMSIsbmFtZTonPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdGFibGVfX21hcmtldC1pY29uIj4nK28oNTk4NTg1KSsiPC9kaXY+In0se2tleToiMSIsbmFtZTonPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdGFibGVfX21hcmtldC1pY29uIj4nK28oNjkzMjM2KSsiPC9kaXY+In1dO2Z1bmN0aW9uIFd0KCl7Y29uc3QgZT0oZSx0LG8saSk9Pntjb25zdCBuPWJ0KGUsdXQpfHxudWxsLHI9bj9TdChuKTpudWxsO3JldHVybiByJiZyWzBdPD0xZTMqdCYmMWUzKnQ8PXJbMV0/aTpvfTtJdC5lYXJuaW5nc19yZWxlYXNlX25leHRfdGltZT17aXNTaW5nbGU6ITAsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oODYyMTE5KSksdG9vbHRpcDoodCxvLGkpPT57Y29uc3Qgbj1JdC5lYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZS52YWx1ZSxyPWUobix0LG8saSk7cmV0dXJuIHI/eXQoKHM9cikudG9TdHJpbmcoKSxCdCl8fHM6dm9pZCAwO3ZhciBzfSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDg2MjExOSkpLGRpc2FibGVIZWFkZXJDb250cm9sOiEwLGFsaWduOiJjZW50ZXIiLGFkZGl0aW9uYWxDb2x1bW5zOlsiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGUiLCJlYXJuaW5nc19yZWxlYXNlX3RpbWUiLCJlYXJuaW5nc19yZWxlYXNlX25leHRfdGltZSJdLG11dGF0ZURpc3BsYXlWYWx1ZToodCxvLGksbik9Pntjb25zdCByPUl0LmVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlLnZhbHVlLHM9ZShyLG8saSxuKTtyZXR1cm4gcz95dCgoYT1zKS50b1N0cmluZygpLCR0KXx8YTpxdDt2YXIgYX0sY2F0ZWdvcnk6Mn0sSXQuY2xvc2UudGl0bGU9Xy50KG51bGwsdm9pZCAwLG8oODM0OTApKSxJdC5jbG9zZS5zaG9ydFRpdGxlPV8udChudWxsLHZvaWQgMCxvKDgzNDkwKSksSXQuZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGU9T2JqZWN0LmFzc2lnbihJdC5lYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZSx7dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNTA3NzI5KSksc2hvcnRUaXRsZTpfLnQobnVsbCx2b2lkIDAsbyg1MDc3MjkpKSxub0FueTohMCxhZGRpdGlvbmFsQ29sdW1uczpbImVhcm5pbmdzX3JlbGVhc2VfZGF0ZSIsImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlIl0sCmRlZmF1bHRSYW5nZTp1dC5tYXAoKGU9PmUubmFtZSkpLHJlc2V0dGFibGVGaWx0ZXI6ITEsbXV0YXRlRGlzcGxheVZhbHVlOihlLHQsbyxpKT0+e2lmKCFvJiZ0KXJldHVybiBjdC5mb3JtYXQodCk7aWYoaS52YWx1ZSl7Y29uc3QgZT1idChpLnZhbHVlLHV0KTtpZihlKXtjb25zdCBpPVN0KGUpO2lmKGkpe2lmKHQmJlZ0KHQsaSkpcmV0dXJuIGN0LmZvcm1hdCh0KTtpZihvJiZWdChvLGkpKXJldHVybiBjdC5mb3JtYXQobyl9fX1yZXR1cm4gZX0sY3VzdG9tRmlsdGVyQ29uZGl0aW9uOmd0KCl9KSxJdC5lYXJuaW5nc19yZWxlYXNlX25leHRfY2FsZW5kYXJfZGF0ZT17dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oMTU2ODc0KSksc2hvcnRUaXRsZTpfLnQobnVsbCx2b2lkIDAsbygxNTY4NzQpKSxmb3JtYXR0ZXI6Y3QsY2F0ZWdvcnk6MSxhZGRpdGlvbmFsQ29sdW1uczpbImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlIiwiZWFybmluZ3NfcmVsZWFzZV9jYWxlbmRhcl9kYXRlIl0sbXV0YXRlRGlzcGxheVZhbHVlOihlLHQsbyk9Pntjb25zdCBpPWJ0KEl0LmVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlLnZhbHVlLHV0KTtpZihpKXtjb25zdCBvPVN0KGkpO2lmKG8mJlZ0KHQsbykpcmV0dXJuIGV9cmV0dXJuIG8/Y3QuZm9ybWF0KG8pOnF0fX0sZGVsZXRlIEl0LmVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9uZXh0X2ZxLmNvbnRyb2wsSXQuZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X25leHRfZnEudGl0bGU9Xy50KG51bGwsdm9pZCAwLG8oNzg5MTU1KSksSXQuZWFybmluZ3NfcGVyX3NoYXJlX2ZvcmVjYXN0X25leHRfZnEuc2hvcnRUaXRsZT1fLnQobnVsbCx2b2lkIDAsbyg3ODkxNTUpKSxJdC5lYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfbmV4dF9mcS5kaXNhYmxlSGVhZGVyQ29udHJvbD0hMCxJdC5lYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfbmV4dF9mcS5hbGlnbj0icmlnaHQiLEl0LmVhcm5pbmdzX3Blcl9zaGFyZV9mb3JlY2FzdF9uZXh0X2ZxLmFkZGl0aW9uYWxDb2x1bW5zPVsiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGUiLCJlYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfZnEiXSxJdC5lYXJuaW5nc19wZXJfc2hhcmVfZm9yZWNhc3RfbmV4dF9mcS5tdXRhdGVEaXNwbGF5VmFsdWU9KGUsdCxvKT0+e2NvbnN0IGk9YnQoSXQuZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGUudmFsdWUsdXQpO2lmKGkpe2NvbnN0IG89U3QoaSk7aWYobyYmVnQodCxvKSlyZXR1cm4gZX1yZXR1cm4gbz9udC5mb3JtYXQobyk6cXR9LEl0LmVhcm5pbmdzX3Blcl9zaGFyZV9mcS50aXRsZT1fLnQobnVsbCx2b2lkIDAsbyg4NTc4OTgpKSxJdC5lYXJuaW5nc19wZXJfc2hhcmVfZnEuc2hvcnRUaXRsZT1fLnQobnVsbCx2b2lkIDAsbyg4NTc4OTgpKSxJdC5lcHNfc3VycHJpc2VfZnE9e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSx0aXRsZTpFZS5lcHNfc3VycHJpc2VfZnFbMF0sc2hvcnRUaXRsZTpFZS5lcHNfc3VycHJpc2VfZnFbMV0sZm9ybWF0dGVyOm50LGZpbHRlckZvcm1hdHRlcjpydCxjYXRlZ29yeToyLGhpZ2hsaWdodENoYW5nZTohMH0sSXQuZXBzX3N1cnByaXNlX3BlcmNlbnRfZnE9e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSx0aXRsZTpFZS5lcHNfc3VycHJpc2VfcGVyY2VudF9mcVswXSxzaG9ydFRpdGxlOkVlLmVwc19zdXJwcmlzZV9wZXJjZW50X2ZxWzFdLGZvcm1hdHRlcjphdCxmaWx0ZXJGb3JtYXR0ZXI6bHQsY2F0ZWdvcnk6MixoaWdobGlnaHRDaGFuZ2U6ITB9LEl0LnJldmVudWVfZnE9e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSx0aXRsZTpfLnQobnVsbCx2b2lkIDAsbyg1ODgzNzMpKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDU4ODM3MykpLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToxfSxJdC5yZXZlbnVlX2ZvcmVjYXN0X25leHRfZnE9e2NvbnRyb2w6ImNvbmRpdGlvbiIsaGlkZGVuT3BlcmF0b3JzOkF0LGNvbmRpdGlvbkZpZWxkczpbXSx0aXRsZTpfLnQobnVsbCx2b2lkIDAsbyg0NTk1ODcpKSxzaG9ydFRpdGxlOl8udChudWxsLHZvaWQgMCxvKDQ1OTU4NykpLGZvcm1hdHRlcjpzdCxjYXRlZ29yeToxLGFkZGl0aW9uYWxDb2x1bW5zOlsiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGUiLCJyZXZlbnVlX2ZvcmVjYXN0X2ZxIl0sbXV0YXRlRGlzcGxheVZhbHVlOihlLHQsbyk9Pntjb25zdCBpPWJ0KEl0LmVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlLnZhbHVlLHV0KTtpZihpKXtjb25zdCBvPVN0KGkpO2lmKG8mJlZ0KHQsbykpcmV0dXJuIjAiPT09ZT9xdDplfXJldHVybiBvP3N0LmZvcm1hdChvKTpxdH19LFV0KCl9Y29uc3QgcXQ9JzxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lci10YWJsZV9fY2VsbC0tY29sb3Itbm9ybWFsIj7igJQ8L3NwYW4+JztmdW5jdGlvbiBWdChlLHQpe3JldHVybiBmdW5jdGlvbihlLHQpe2NvbnN0IG89dFswXSxpPXRbMV07cmV0dXJuIG88PWUmJmU8PWl9KDFlMyplLHQpfWNvbnN0IEh0PWU9PntlLmFkZGl0aW9uYWxDb2x1bW5zPVsiZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGUiXSxlLm11dGF0ZURpc3BsYXlWYWx1ZT0oZSx0KT0+e2NvbnN0IG89YnQoSXQuZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGUudmFsdWUsdXQpO2lmKG8pe2NvbnN0IGU9U3Qobyk7aWYoZSYmVnQodCxlKSlyZXR1cm4gcXR9cmV0dXJuIGV9fTtmdW5jdGlvbiBVdCgpe0h0KEl0LmVhcm5pbmdzX3Blcl9zaGFyZV9mcSksSHQoSXQuZXBzX3N1cnByaXNlX2ZxKSxIdChJdC5lcHNfc3VycHJpc2VfcGVyY2VudF9mcSksSHQoSXQucmV2ZW51ZV9mcSl9ZnVuY3Rpb24genQoZSx0PSJzdG9jayIsbz0hMCl7aWYoIWUpcmV0dXJuIG51bGw7aWYoWyJjcnlwdG9fbWt0Il0uaW5jbHVkZXModCkmJmUuY3J5cHRvRm9ybWF0dGVyKXJldHVybiBlLmNyeXB0b0Zvcm1hdHRlcjtpZihbImZvcmV4IiwiY3J5cHRvIiwiY3J5cHRvX21rdCIsImNmZCIsImZ1dHVyZXMiXS5pbmNsdWRlcyh0KSl7CmlmKGUuZm9yZXhGaWx0ZXJGb3JtYXR0ZXIpcmV0dXJuIGUuZm9yZXhGaWx0ZXJGb3JtYXR0ZXI7aWYoZS5mb3JleEZvcm1hdHRlcilyZXR1cm4gZS5mb3JleEZvcm1hdHRlcn1yZXR1cm4gbyYmZS5maWx0ZXJGb3JtYXR0ZXI/ZS5maWx0ZXJGb3JtYXR0ZXI6ZS5mb3JtYXR0ZXI/ZS5mb3JtYXR0ZXI6bnVsbH1jb25zdCBqdD17fTtmdW5jdGlvbiBHdChlLHQsbyxpKXtjb25zdCBuPWUrIjsiK3QrIjsiK28rIjsiK2k7cmV0dXJuIGp0W25dfHwoanRbbl09bmV3IGouUHJpY2VGb3JtYXR0ZXIoe3ByaWNlU2NhbGU6ZSxtaW5Nb3ZlOnQsZnJhY3Rpb25hbDpvLG1pbk1vdmUyOml9KSksanRbbl19ZnVuY3Rpb24gWHQoZSl7cmV0dXJuIEl0W2VdJiYhSXRbZV0uZml4ZWQmJiFJdFtlXS5kaXNhYmxlZCYmIUl0W2VdLmhpZGVTZXR1cENvbHVtbn1mdW5jdGlvbiBLdChlKXtyZXR1cm4gZS5maWx0ZXJUaXRsZXx8ZS50aXRsZX1mdW5jdGlvbiBZdChlLHQpe3JldHVybiBBcnJheS5pc0FycmF5KGUpJiZBcnJheS5pc0FycmF5KHQpP2Z1bmN0aW9uKGUsdCl7Y29uc3Qgbz1bLi4uZSwuLi50XTtyZXR1cm5bTWF0aC5taW4oLi4ubyksTWF0aC5tYXgoLi4ubyldfShlLHQpOiJzdHJpbmciIT10eXBlb2YgZT9mdW5jdGlvbihlLHQpe3JldHVybiBlLm9wZXJhdG9yIT09dC5vcGVyYXRvcj9udWxsOiJncmVhdGVyIj09PXQub3BlcmF0b3I/e29wZXJhdG9yOmUub3BlcmF0b3IsdmFsdWU6TWF0aC5taW4odC52YWx1ZSxlLnZhbHVlKX06e29wZXJhdG9yOmUub3BlcmF0b3IsdmFsdWU6TWF0aC5tYXgoZS52YWx1ZSx0LnZhbHVlKX19KGUsdCk6ZT09PXQ/ZTpudWxsfWNvbnN0IEp0PXtmb3JleDp7dG9wX2dhaW5lcnM6Xy50KG51bGwsdm9pZCAwLG8oNDA3NDM4KSksdG9wX2xvc2VyczpfLnQobnVsbCx2b2lkIDAsbyg0Mjg5NzgpKX0sZGVmYXVsdDp7dG9wX2dhaW5lcnM6Xy50KG51bGwsdm9pZCAwLG8oODE0MDIxKSksdG9wX2xvc2VyczpfLnQobnVsbCx2b2lkIDAsbygzODQ1NDApKX19LFp0PVt7aWQ6ImdlbmVyYWwiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDkxMDgyMSkpLGNvbnRlbnQ6e3NvcnRfZmllbGQ6Im5hbWUiLHNvcnRfZGlyZWN0aW9uOiJhc2MiLGZpbHRlcnM6e319fSx7aWQ6Im1vc3RfY2FwaXRhbGl6ZWQiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDU1NDE1MSkpLGNvbnRlbnQ6e3NvcnRfZmllbGQ6Im1hcmtldF9jYXBfYmFzaWMiLHNvcnRfZGlyZWN0aW9uOiJkZXNjIixmaWx0ZXJzOntpc19wcmltYXJ5OntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfSxhY3RpdmVfc3ltYm9sOntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfX19fSx7aWQ6InZvbHVtZV9sZWFkZXJzIix0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygxNTUyODApKSxhZGp1c3RGaWx0ZXI6e3ZvbHVtZTpbMV19LGNvbnRlbnQ6e3NvcnRfZmllbGQ6InZvbHVtZSIsc29ydF9kaXJlY3Rpb246ImRlc2MiLGZpbHRlcnM6e2lzX3ByaW1hcnk6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9LGFjdGl2ZV9zeW1ib2w6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9fX19LHtpZDoidG9wX2dhaW5lcnMiLHRpdGxlOkp0LmRlZmF1bHQudG9wX2dhaW5lcnMsYWRqdXN0RmlsdGVyOntjaGFuZ2U6WzFdfSxjb250ZW50Ontzb3J0X2ZpZWxkOiJjaGFuZ2UiLHNvcnRfZGlyZWN0aW9uOiJkZXNjIixmaWx0ZXJzOntjaGFuZ2U6e29wZXJhdG9yOiJncmVhdGVyIix2YWx1ZTowfSxpc19wcmltYXJ5OntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfSxhY3RpdmVfc3ltYm9sOntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfX19fSx7aWQ6InRvcF9sb3NlcnMiLHRpdGxlOkp0LmRlZmF1bHQudG9wX2xvc2VycyxhZGp1c3RGaWx0ZXI6e2NoYW5nZTpbMF19LGNvbnRlbnQ6e3NvcnRfZmllbGQ6ImNoYW5nZSIsc29ydF9kaXJlY3Rpb246ImFzYyIsZmlsdGVyczp7Y2hhbmdlOntvcGVyYXRvcjoibGVzcyIsdmFsdWU6MH0saXNfcHJpbWFyeTp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH0sYWN0aXZlX3N5bWJvbDp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH19fX0se2lkOiJhdGgiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDI0MTMxNykpLGNvbnRlbnQ6e3NvcnRfZmllbGQ6Im5hbWUiLHNvcnRfZGlyZWN0aW9uOiJhc2MiLGZpbHRlcnM6eyJIaWdoLkFsbCI6e29wZXJhdG9yOiJlbGVzcyIsdmFsdWU6ImhpZ2gifSxpc19wcmltYXJ5OntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfSxhY3RpdmVfc3ltYm9sOntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfX19fSx7aWQ6ImF0bCIsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNjI1NDg4KSksY29udGVudDp7c29ydF9maWVsZDoibmFtZSIsc29ydF9kaXJlY3Rpb246ImFzYyIsZmlsdGVyczp7Ikxvdy5BbGwiOntvcGVyYXRvcjoiZWdyZWF0ZXIiLHZhbHVlOiJsb3cifSxpc19wcmltYXJ5OntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfSxhY3RpdmVfc3ltYm9sOntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfX19fSx7aWQ6ImhpZ2hfZGl2aWRlbmQiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDg4NTkzKSksY29udGVudDp7c29ydF9maWVsZDoiZGl2aWRlbmRfeWllbGRfcmVjZW50Iixzb3J0X2RpcmVjdGlvbjoiZGVzYyIsZmlsdGVyczp7ZGl2aWRlbmRfeWllbGRfcmVjZW50OntvcGVyYXRvcjoiZ3JlYXRlciIsdmFsdWU6MH0saXNfcHJpbWFyeTp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH0sYWN0aXZlX3N5bWJvbDp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH19fX0se2lkOiJhYm92ZV81MndrX2hpZ2giLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDQ1NzE5NSkpLGNvbnRlbnQ6e3NvcnRfZmllbGQ6Im5hbWUiLHNvcnRfZGlyZWN0aW9uOiJhc2MiLGZpbHRlcnM6e3ByaWNlXzUyX3dlZWtfaGlnaDp7b3BlcmF0b3I6ImVsZXNzIix2YWx1ZToiaGlnaCJ9LGlzX3ByaW1hcnk6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9LGFjdGl2ZV9zeW1ib2w6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9fX19LHtpZDoiYmVsb3dfNTJ3a19sb3ciLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDgzODY5MCkpLApjb250ZW50Ontzb3J0X2ZpZWxkOiJuYW1lIixzb3J0X2RpcmVjdGlvbjoiYXNjIixmaWx0ZXJzOntwcmljZV81Ml93ZWVrX2xvdzp7b3BlcmF0b3I6ImVncmVhdGVyIix2YWx1ZToibG93In0saXNfcHJpbWFyeTp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH0sYWN0aXZlX3N5bWJvbDp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH19fX0se2lkOiJtb250aGx5X2hpZ2giLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDc1OTg0MSkpLGNvbnRlbnQ6e3NvcnRfZmllbGQ6Im5hbWUiLHNvcnRfZGlyZWN0aW9uOiJhc2MiLGZpbHRlcnM6eyJIaWdoLjFNIjp7b3BlcmF0b3I6ImVsZXNzIix2YWx1ZToiaGlnaCJ9LGlzX3ByaW1hcnk6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9LGFjdGl2ZV9zeW1ib2w6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9fX19LHtpZDoibW9udGhseV9sb3ciLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDk5NjU3MikpLGNvbnRlbnQ6e3NvcnRfZmllbGQ6Im5hbWUiLHNvcnRfZGlyZWN0aW9uOiJhc2MiLGZpbHRlcnM6eyJMb3cuMU0iOntvcGVyYXRvcjoiZWdyZWF0ZXIiLHZhbHVlOiJsb3cifSxpc19wcmltYXJ5OntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfSxhY3RpdmVfc3ltYm9sOntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfX19fSx7aWQ6Im1vc3Rfdm9sYXRpbGUiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDY1NjYwMykpLGFkanVzdEZpbHRlcjp7IlZvbGF0aWxpdHkuRCI6WzFdfSxjb250ZW50Ontzb3J0X2ZpZWxkOiJWb2xhdGlsaXR5LkQiLHNvcnRfZGlyZWN0aW9uOiJkZXNjIixmaWx0ZXJzOntpc19wcmltYXJ5OntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfSxhY3RpdmVfc3ltYm9sOntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfX19fSx7aWQ6InVudXN1YWxfdm9sdW1lIix0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygyNTAwNzIpKSxhZGp1c3RGaWx0ZXI6e3JlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYzpbMV19LGNvbnRlbnQ6e3NvcnRfZmllbGQ6InJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYyIsc29ydF9kaXJlY3Rpb246ImRlc2MiLGZpbHRlcnM6e2lzX3ByaW1hcnk6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9LHJlbGF0aXZlX3ZvbHVtZV8xMGRfY2FsYzpudWxsLGFjdGl2ZV9zeW1ib2w6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9fX19LHtpZDoib3ZlcmJvdWdodCIsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oMjIyNTk3KSksY29udGVudDp7c29ydF9maWVsZDoibmFtZSIsc29ydF9kaXJlY3Rpb246ImFzYyIsZmlsdGVyczp7aXNfcHJpbWFyeTp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH0sUlNJOntvcGVyYXRvcjoiZ3JlYXRlciIsdmFsdWU6NzB9LGFjdGl2ZV9zeW1ib2w6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9fX19LHtpZDoib3ZlcnNvbGQiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDgxMTIwMykpLGNvbnRlbnQ6e3NvcnRfZmllbGQ6Im5hbWUiLHNvcnRfZGlyZWN0aW9uOiJhc2MiLGZpbHRlcnM6e2lzX3ByaW1hcnk6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9LFJTSTp7b3BlcmF0b3I6Imxlc3MiLHZhbHVlOjMwfSxhY3RpdmVfc3ltYm9sOntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfX19fSx7aWQ6Im91dHBlcmZvcm1pbmdfU01BNTAiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDM3NjUzMikpLGNvbnRlbnQ6e3NvcnRfZmllbGQ6Im5hbWUiLHNvcnRfZGlyZWN0aW9uOiJhc2MiLGZpbHRlcnM6e2lzX3ByaW1hcnk6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9LFNNQTUwOntvcGVyYXRvcjoibGVzcyIsdmFsdWU6ImNsb3NlIn0sYWN0aXZlX3N5bWJvbDp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH19fX0se2lkOiJ1bmRlcnBlcmZvcm1pbmdfU01BNTAiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDc0MjMzOCkpLGNvbnRlbnQ6e3NvcnRfZmllbGQ6Im5hbWUiLHNvcnRfZGlyZWN0aW9uOiJhc2MiLGZpbHRlcnM6e2lzX3ByaW1hcnk6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9LFNNQTUwOntvcGVyYXRvcjoiZ3JlYXRlciIsdmFsdWU6ImNsb3NlIn0sYWN0aXZlX3N5bWJvbDp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH19fX0se2lkOiJlYXJuaW5nc190aGlzX3dlZWsiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDEzNDA1OSkpLGNvbnRlbnQ6e3NvcnRfZmllbGQ6Im1hcmtldF9jYXBfYmFzaWMiLHNvcnRfZGlyZWN0aW9uOiJkZXNjIixmaWx0ZXJzOntpc19wcmltYXJ5OntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfSxlYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZTpudWxsLGFjdGl2ZV9zeW1ib2w6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9fX19LHtpZDoicHJlX21hcmtldF9nYWluZXJzIix0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygzMjk2NDgpKSxhZGp1c3RGaWx0ZXI6e3ByZW1hcmtldF9jaGFuZ2U6WzFdfSxjb250ZW50Ontzb3J0X2ZpZWxkOiJwcmVtYXJrZXRfY2hhbmdlIixzb3J0X2RpcmVjdGlvbjoiZGVzYyIsZmlsdGVyczp7aXNfcHJpbWFyeTp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH0scHJlbWFya2V0X2NoYW5nZTp7b3BlcmF0b3I6ImdyZWF0ZXIiLHZhbHVlOjB9LGFjdGl2ZV9zeW1ib2w6e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9fX19LHtpZDoiYWZ0ZXJfaG91cnNfZ2FpbmVycyIsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNTMyMDI4KSksYWRqdXN0RmlsdGVyOntwb3N0bWFya2V0X3ZvbHVtZTpbMV19LGNvbnRlbnQ6e3NvcnRfZmllbGQ6InBvc3RtYXJrZXRfdm9sdW1lIixzb3J0X2RpcmVjdGlvbjoiZGVzYyIsZmlsdGVyczp7aXNfcHJpbWFyeTp7b3BlcmF0b3I6ImVxdWFsIix2YWx1ZTohMH0scG9zdG1hcmtldF92b2x1bWU6e29wZXJhdG9yOiJncmVhdGVyIix2YWx1ZTowfSxhY3RpdmVfc3ltYm9sOntvcGVyYXRvcjoiZXF1YWwiLHZhbHVlOiEwfX19fV07ZnVuY3Rpb24gUXQoZSl7WnQuZm9yRWFjaCgodD0+e2lmKHQuZGlzYWJsZWQ9ITEsCnQuaWQgaW4gQi5hbWVyaWNhKWZvcihjb25zdCBlIGluIEIuYW1lcmljYVt0LmlkXSl0LmNvbnRlbnQuZmlsdGVyc1tlXT1CLmFtZXJpY2FbdC5pZF1bZV07KHQ9PntbImZvcmV4IiwiY3J5cHRvIl0uaW5jbHVkZXMoZVswXSl8fGUuaW5jbHVkZXMoImJyYXppbCIpP2RlbGV0ZSB0LmNvbnRlbnQuZmlsdGVycy5uYW1lOnQuY29udGVudC5maWx0ZXJzLm5hbWU9WyJjb21tb24iLCJkciIsImV0ZiJdLDE9PT1lLmxlbmd0aCYmImFtZXJpY2EiPT09ZVswXT90LmNvbnRlbnQuZmlsdGVycy5leGNoYW5nZT1bIk5ZU0UiLCJOQVNEQVEiLCJBTUVYIl06ZGVsZXRlIHQuY29udGVudC5maWx0ZXJzLmV4Y2hhbmdlLCJnZW5lcmFsIj09PXQuaWQmJigiY3J5cHRvIj09PWVbMF0mJih0LmNvbnRlbnQuc29ydF9maWVsZD0iMjRoX3ZvbHw1Iix0LmNvbnRlbnQuc29ydF9kaXJlY3Rpb249ImRlc2MiKSwiZm9yZXgiPT09ZVswXSYmKHQuY29udGVudC5zb3J0X2ZpZWxkPSJuYW1lIix0LmNvbnRlbnQuc29ydF9kaXJlY3Rpb249ImFzYyIpKTtjb25zdCBvPVtdO2Zvcihjb25zdCByIG9mIGUpe2NvbnN0IGU9QltyXTtpZihlJiZ0LmlkIGluIGUpaWYodC5kaXNhYmxlZHx8bnVsbCE9PWVbdC5pZF0pe2NvbnN0IHI9ZVt0LmlkXTtmb3IoY29uc3QgZSBpbiByKXtjb25zdCBzPXJbZV07aWYobnVsbD09PXN8fChpPXQuY29udGVudC5maWx0ZXJzW2VdLG49cyxPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoaSkhPT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwobikpKWRlbGV0ZSB0LmNvbnRlbnQuZmlsdGVyc1tlXSxvLnB1c2goZSk7ZWxzZSBpZighby5pbmNsdWRlcyhlKSYmZSBpbiB0LmNvbnRlbnQuZmlsdGVycyl7Y29uc3QgaT1ZdCh0LmNvbnRlbnQuZmlsdGVyc1tlXSxzKTtpP3QuY29udGVudC5maWx0ZXJzW2VdPWk6KGRlbGV0ZSB0LmNvbnRlbnQuZmlsdGVyc1tlXSxvLnB1c2goZSkpfWVsc2UgdC5jb250ZW50LmZpbHRlcnNbZV09c319ZWxzZSB0LmRpc2FibGVkPSEwfXZhciBpLG47ImZvcmV4Ij09PWVbMF0/SnQuZm9yZXhbdC5pZF0mJih0LnRpdGxlPUp0LmZvcmV4W3QuaWRdKTpKdC5kZWZhdWx0W3QuaWRdJiYodC50aXRsZT1KdC5kZWZhdWx0W3QuaWRdKX0pKHQpLCJnZW5lcmFsIj09PXQuaWQmJih0LmRpc2FibGVkPSJmb3JleCIhPT1lWzBdJiYiY3J5cHRvIiE9PWVbMF0pLFsicHJlX21hcmtldF9nYWluZXJzIiwiYWZ0ZXJfaG91cnNfZ2FpbmVycyJdLmluY2x1ZGVzKHQuaWQpJiYodC5kaXNhYmxlZD0hMCl9KSl9Y29uc3QgZW89SlNPTi5wYXJzZSgnWyJCQUhSQUlOIiwiQkVMRVgiLCJCTVYiLCJCU1NFIiwiQlZMIiwiQlZNVCIsIkRGTSIsIkRTRUJEIiwiRVVST05FWFRfQU1TIiwiRVVST05FWFRfQlJVIiwiRVVST05FWFRfTElTIiwiRVVST05FWFRfUEFSIiwiRVVST05FWFRBTVMiLCJFVVJPTkVYVEJSVSIsIkVVUk9ORVhUTElTIiwiRVVST05FWFRQQVIiLCJFVVJPTkVYVERVQiIsIk9TRSIsIk9TTCIsIkZTRSIsIkhLRVgiLCJIT1NFIiwiSUNFU0ciLCJJQ0VBQlVEIiwiSUNFVVNDQSIsIklDRUVOREVYIiwiSlNFIiwiTFVYU0UiLCJNT0VYIiwiTVlYIiwiTkFHIiwiTkFTREFRRFVCQUkiLCJOU0UiLCJOU0VORyIsIk5TRUtFIiwiTkdNIiwiTlpYIiwiUFNFIiwiUFNYIiwiU0FQU0UiLCJTRVQiLCJTR1giLCJTWlNFIiwiU0hGRSIsIlRBREFXVUwiLCJUU0UiLCJUV1NFIiwiRlRTRVNUIiwiTE1FIiwiUVNFIiwiTFNFIiwiTFNJTiJdJyk7Y29uc3QgdG89WyJhcnRlY2hlY29tIiwiY2luY29kaWFzIiwiY29wZWVzIiwiZWxjb25maWRlbmNpYWwiLCJlbGVzcGFub2xjb20iLCJlbG5hY2lvbmFsRCIsImVscGFpc2ZpbmFuY2llcm8iLCJlbHBlcmlvZGljb2RlbGFlbmVyZ2lhIiwiZXBlIiwiZmluYW56YXNEIiwibGFpbmZvcm1hY2lvbmNvbSJdLG9vPVsiYm92ZXNwYSIsImZvcmJlc2NvbWJyIiwiZ2VuaWFsaW52ZXN0aW1lbnRvcyIsIm1hcmNvcG9sb2NvbWJyIiwibW9uZXl0aW1lc2NvbWJyIiwiTm90aWNpYXNhZ3JpY29sYUQiLCJwb2RlcjM2MCIsInNldWRpbmhlaXJvIiwic3BhY2Vtb25leWNvbWJyIiwidHJhZGVyc2NsdWJicmFzaWwiLCJ0cmFkZXJzY2x1YmJyYXNpbEQiLCJ2b2Nlc2FhYnJpbGNvbWJyIiwieHBpY29tYnIiXTtjb25zdCBpbz0iYW1lcmljYSI7ZnVuY3Rpb24gbm8oZSx0KXtjb25zdCBvPWZ1bmN0aW9uKGUpe2NvbnN0IHQ9ZW8uc2xpY2UoKTtyZXR1cm4gZSYmb28uaW5jbHVkZXMoZSkmJnQuc3BsaWNlKHQuaW5kZXhPZigiQk1GQk9WRVNQQSIpLDEpLCJhbWJpdG8iPT09ZSYmdC5zcGxpY2UodC5pbmRleE9mKCJCQ0JBIiksMSksImhlZ25hcm5vIj09PWUmJnQuc3BsaWNlKHQuaW5kZXhPZigiT1NMIiksMSksZSYmdG8uaW5jbHVkZXMoZSkmJnQuc3BsaWNlKHQuaW5kZXhPZigiQk1FIiksMSksZSYmWyJyaXlhZGhjYXBpdGFsRCIsInJpeWFkaGNhcGl0YWxSVCJdLmluY2x1ZGVzKGUpJiYodC5zcGxpY2UodC5pbmRleE9mKCJUQURBV1VMIiksMSksdC5zcGxpY2UodC5pbmRleE9mKCJERk0iKSwxKSksIk5HWCI9PT1lJiZ0LnNwbGljZSh0LmluZGV4T2YoIk5TRU5HIiksMSksdH0odCk7cmV0dXJuIE9iamVjdC5rZXlzKGUpLmZpbHRlcigodD0+e2lmKFsiZm9yZXgiLCJjcnlwdG8iXS5pbmNsdWRlcyh0KSlyZXR1cm4hMDtjb25zdCBpPWVbdF07cmV0dXJuISFpJiYoaS5zdG9ja3M9aS5zdG9ja3MuZmlsdGVyKChlPT4tMT09PW8uaW5kZXhPZihlKSkpLDAhPT1pLnN0b2Nrcy5sZW5ndGgpfSkpLm1hcCgodD0+KHtjb250ZW50OmVbdF0/ZVt0XS50aXRsZSsoZVt0XS5zdG9ja3MubGVuZ3RoP2AgKCR7cm8odCxlKX0pYDoiIik6dCx2YWx1ZTp0fSkpKS5zb3J0KCgoZSx0KT0+ZS52YWx1ZT09PWlvPy0xOnQudmFsdWU9PT1pb3x8KGU/LmNvbnRlbnQ/PyIiKT4odD8uY29udGVudD8/IiIpPzE6LTEpKX1mdW5jdGlvbiBybyhlLHQpe2xldCBvPVsuLi50W2VdLnN0b2Nrc107Y29uc3QgaT1WKClbZV07cmV0dXJuIGkmJihvPW8uZmlsdGVyKChlPT4haS5pbmNsdWRlcyhlKSkpKSxvLmpvaW4oIiwgIil9dmFyIHNvPW8oOTAyMTAwKSxhbz1vKDQwMDE4MSk7Y29uc3QgbG89ewpob3N0OiJfdW5rbm93biIscGF0aDoiIn07ZnVuY3Rpb24gY28oZSl7aWYoZSl0cnl7Y29uc3QgdD1uZXcgVVJMKGUpO3JldHVybntob3N0OnQuaG9zdG5hbWV8fHQuaG9zdHx8Il91bmtub3duIixwYXRoOnQucGF0aG5hbWV9fWNhdGNoe3JldHVybn19ZnVuY3Rpb24gaG8oKXtyZXR1cm4gY28oZnVuY3Rpb24oKXtjb25zdCBlPXdpbmRvdy5pbml0RGF0YT8uaGFzaFNldHRpbmdzPy5bInBhZ2UtdXJpIl07aWYoZSlyZXR1cm4iaHR0cHM6Ly8iK2V9KCkpfHxjbyhkb2N1bWVudC5yZWZlcnJlcil8fGNvKGxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucz8uWzBdKXx8bG99dmFyIHVvPW8oMzg5Mjk4KSxfbz1vKDkzMDIzMSkscG89KG8oODU1NzQyKSxvKDY2MjM5MiksbygxMzMyNDMpLG8oMjg2ODIwKSxvKDIzMjM2NCkpLG1vPShvKDM2NDgzOCksbyg4MTU3MjgpLG8oMTIxNjM0KSxvKDcxMTk3OSksbyg5ODY3MDUpLG8oMjAyODE1KSxvKDk1MDc3MSksbyg2MzgyODIpLG8oMTEyNjEzKSxvKDk3NTI0NCksbyg5NTI2ODYpLG8oNDQ2OTU2KSxvKDQ1NTU3KSxvKDc5MDUwMSksbyg1NTEyMTUpLG8oMTY3NTU5KSxvKDkyMjIwNiksbyg0ODk3NTIpLG8oODU3MDE5KSxvKDIxODgxNCkpLGdvPW8oNjQ3NjE0KTtvKDQ0MzYyMCk7dmFyIHZvPW8oNTQ3ODUxKSxmbz1vKDc3ODQ1OCkseW89byg4NTU5ODkpO2Z1bmN0aW9uIGJvKGUsdCxvKXtjb25zdCBpPVtbIiYiLCImYW1wOyJdLFsiPCIsIiZsdDsiXSxbIj4iLCImZ3Q7Il0sWyciJywiJnF1b3Q7Il0sWyInIiwiJiMwMzk7Il0sWyInIiwiJiMzOTsiXV07dCYmaS5mb3JFYWNoKChlPT5lLnJldmVyc2UoKSkpO2xldCBuPWU7aWYoIWV8fCFlLnJlcGxhY2UpcmV0dXJuIG47Zm9yKGNvbnN0IGUgb2YgaSl7Y29uc3RbdCxpXT1lO28mJi0xIT09by5pbmRleE9mKHQpfHwobj1uLnJlcGxhY2UobmV3IFJlZ0V4cCh0LCJnIiksaSkpfXJldHVybiBufW8oNTUwNjgyKSxvKDIxNTUzOSk7dmFyIFNvPW8oNzgzMjU0KSx3bz1vKDM2MzI2OSksQ289KG8oODMyMjI2KSxvKDIxNDA2MCkpLGtvPW8oNDgyNTA0KSxUbz1vKDQ5MTg2KSxFbz1vKDMwNzUwNCk7Y29uc3QgeG89e3dyYXA6JzxzcGFuIGNsYXNzPSJ0di1jb250cm9sLXNlbGVjdF9fd3JhcCB0di1kcm9wZG93bi1iZWhhdmlvciB7eyBjbGFzcyB9fXt7IyB0b3VjaCB9fSB0di1jb250cm9sLXNlbGVjdF9fd3JhcC0tdG91Y2h7ey8gdG91Y2ggfX17eyMgZGlzYWJsZWQgfX0gaS1kaXNhYmxlZHt7LyBkaXNhYmxlZCB9fXt7IyByZWFkb25seSB9fSB0di1jb250cm9sLXNlbGVjdF9fd3JhcC0tcmVhZG9ubHl7ey8gcmVhZG9ubHl9fSI+PHNwYW4gY2xhc3M9InR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9se3teIHRvdWNoIH19IHR2LWRyb3Bkb3duLWJlaGF2aW9yX19idXR0b257ey8gdG91Y2ggfX17eyMgZGlzYWJsZWQgfX0gaS1kaXNhYmxlZHt7LyBkaXNhYmxlZCB9fSI+PHNwYW4gY2xhc3M9InR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9sLWlubmVyIj48L3NwYW4+PC9zcGFuPnt7XiB0b3VjaCB9fTxzcGFuIGNsYXNzPSJ0di1jb250cm9sLXNlbGVjdF9fZHJvcGRvd24gdHYtZHJvcGRvd24tYmVoYXZpb3JfX2JvZHkge3sgZHJvcGRvd25fY2xhc3MgfX0gaS1oaWRkZW4iPjxzcGFuIGNsYXNzPSJ0di1jb250cm9sLXNlbGVjdF9fc2Nyb2xsIHR2LWRyb3Bkb3duLWJlaGF2aW9yX19zY3JvbGwiPjxzcGFuIGNsYXNzPSJ0di1kcm9wZG93bi1iZWhhdmlvcl9faW5zY3JvbGwiPnt7PiByb3V0ZSB9fTwvc3Bhbj48L3NwYW4+PC9zcGFuPnt7LyB0b3VjaCB9fTxzcGFuIGNsYXNzPSJ0di1jb250cm9sLXNlbGVjdF9fY2FyZXQganMtZHJvcGRvd24tdG9nZ2xlIj48L3NwYW4+PC9zcGFuPicscm91dGU6Int7IyBpdGVtcyB9fXt7IyBvcHRpb24gfX17ez4gb3B0aW9uIH19e3svIG9wdGlvbiB9fXt7XiBvcHRpb24gfX17eyMgb3B0Z3JvdXAgfX17ez4gb3B0Z3JvdXAgfX17ey8gb3B0Z3JvdXAgfX17ey8gb3B0aW9uIH19e3svIGl0ZW1zIH19IixvcHRncm91cDone3sjIGxhYmVsIH19PHNwYW4gY2xhc3M9InR2LWRyb3Bkb3duLWJlaGF2aW9yX19pdGVtIHR2LWNvbnRyb2wtc2VsZWN0X19vcHRncm91cC1sYWJlbCI+e3sgbGFiZWwgfX08L3NwYW4+e3svIGxhYmVsIH19e3s+IHJvdXRlIH19e3sjIHNlcGFyYXRvciB9fTxociBjbGFzcz0idHYtY29udHJvbC1zZWxlY3RfX29wdGdyb3VwLXNlcGFyYXRvciI+e3svIHNlcGFyYXRvciB9fScsb3B0aW9uOmA8c3BhbiBkYXRhLWlkPSJ7eyBpZCB9fSIgY2xhc3M9InR2LWRyb3Bkb3duLWJlaGF2aW9yX19pdGVtIHR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb257eyMgZGlzYWJsZWQgfX0gaS1kaXNhYmxlZHt7LyBkaXNhYmxlZCB9fSI+XG5cdFx0XHQ8c3BhbiBjbGFzcz0idHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwIj5cblx0XHRcdHt7IyBtdWx0aXBsZSB9fVxuXHRcdFx0XHQ8c3BhbiBjbGFzcz0idHYtY29udHJvbC1jaGVja2JveCI+XG5cdFx0XHRcdFx0PGlucHV0IGNsYXNzPSJ0di1jb250cm9sLWNoZWNrYm94X19pbnB1dCIgdHlwZT0iY2hlY2tib3giIHt7IyBzZWxlY3RlZCB9fSBjaGVja2Vke3svIHNlbGVjdGVkIH19PlxuXHRcdFx0XHRcdDxzcGFuIGNsYXNzPSJ0di1jb250cm9sLWNoZWNrYm94X19ib3giPiR7byg0ODg4NzUpfTwvc3Bhbj5cblx0XHRcdFx0PC9zcGFuPlxuXHRcdFx0XHQ8c3BhbiBjbGFzcz0idHYtY29udHJvbC1jaGVja2JveF9fbGFiZWwiPnt7IGxhYmVsIH19PC9zcGFuPlxuXHRcdFx0e3svIG11bHRpcGxlIH19XG5cdFx0XHR7e14gbXVsdGlwbGUgfX1cblx0XHRcdFx0e3sgbGFiZWwgfX1cblx0XHRcdHt7LyBtdWx0aXBsZSB9fVxuXHRcdFx0PC9zcGFuPlxuXHRcdDwvc3Bhbj5gfTtjbGFzcyBBb3tjb25zdHJ1Y3RvcihlPXt9KXt0aGlzLl9vcHRpb25zPU9iamVjdC5hc3NpZ24oe25vQW5pbWF0aW9uOiEwfSxlKSx0aGlzLnRvdWNoPXdvLm1vYmlsZXRvdWNoLHRoaXMuJHNlbGVjdD10aGlzLl9vcHRpb25zLiRzZWxlY3QsdGhpcy5fc2VsZWN0RWxlbWVudD10aGlzLiRzZWxlY3RbMF0sCnRoaXMubXVsdGlwbGU9Qm9vbGVhbih0aGlzLiRzZWxlY3QuYXR0cigibXVsdGlwbGUiKSksdGhpcy5fbWluRGlzcGxheUNvdW50PXRoaXMuX29wdGlvbnMubWluRGlzcGxheUNvdW50fHwxLHRoaXMuX2VtcHR5U3RyaW5nPXRoaXMuX29wdGlvbnMuZW1wdHlTdHJpbmd8fFNvLnQobnVsbCx7Y29udGV4dDoiY29tYm9ib3hfaW5wdXQifSxvKDMzMzM1KSksdGhpcy5fZGVmYXVsdFBsYWNlSG9kZXI9dGhpcy5fb3B0aW9ucy5kZWZhdWx0UGxhY2VIb2Rlcnx8ITEsdGhpcy5kaXNhYmxlZD1Cb29sZWFuKHRoaXMuJHNlbGVjdC5pcygiOmRpc2FibGVkIikpLHRoaXMucmVhZG9ubHk9dGhpcy5fb3B0aW9ucy5yZWFkb25seSx0aGlzLm9wdGlvbnM9W10sdGhpcy5maWx0ZXJRdWVyeT1bXSx0aGlzLml0ZW1zPXRoaXMuX3BhcnNlRG9tSXRlbXModGhpcy4kc2VsZWN0KSx0aGlzLl9yZW5kZXIoKSxlLmluaXRpYWxWYWx1ZSYmdGhpcy52YWwoZS5pbml0aWFsVmFsdWUpLHRoaXMuJGVsLmluc2VydEJlZm9yZSh0aGlzLiRzZWxlY3QpLHRoaXMuJHNlbGVjdC5kZXRhY2goKS5hZGRDbGFzcygiaS1pbml0ZWQiKS5hcHBlbmRUbyh0aGlzLiRlbCl9dmFsKGUpe3RoaXMubXVsdGlwbGU/dGhpcy5fc2V0TXVsdGlwbGVWYWx1ZXMoZSk6dGhpcy5fc2V0U2luZ2xlVmFsdWUodGhpcy5fZmluZE9wdGlvbihlKSl9ZW5hYmxlKCl7dGhpcy5kaXNhYmxlZD0hMSx0aGlzLiRlbC5hZGQodGhpcy4kZHJvcGRvd24pLnJlbW92ZUNsYXNzKCJpLWRpc2FibGVkIiksdGhpcy50b3VjaHx8KHRoaXMuJGVsLnR2RHJvcGRvd24oImVuYWJsZSIpLHRoaXMuJGNvbnRyb2wuYXR0cigidGFiaW5kZXgiLHRoaXMuJHNlbGVjdC5hdHRyKCJ0YWJpbmRleCIpfHwwKSl9ZGlzYWJsZSgpe3RoaXMuZGlzYWJsZWQ9ITAsdGhpcy4kZWwuYWRkKHRoaXMuJGRyb3Bkb3duKS5hZGRDbGFzcygiaS1kaXNhYmxlZCIpLHRoaXMudG91Y2h8fCh0aGlzLiRlbC50dkRyb3Bkb3duKCJkaXNhYmxlIiksdGhpcy4kY29udHJvbC5yZW1vdmVBdHRyKCJ0YWJpbmRleCIpKX1zZXRSZWFkb25seShlKXt0aGlzLnJlYWRvbmx5PWUsdGhpcy4kZWwudG9nZ2xlQ2xhc3MoInR2LWNvbnRyb2wtc2VsZWN0X193cmFwLS1yZWFkb25seSIsZSksdGhpcy4kY29udHJvbElubmVyLnRvZ2dsZUNsYXNzKCJ0di1jb250cm9sLXNlbGVjdF9fY29udHJvbC1pbm5lci0tcmVhZG9ubHkiLGUpLHRoaXMuJGVsLnR2RHJvcGRvd24oInNldFJlYWRvbmx5IixlKX10b2dnbGUoKXt0aGlzLmRpc2FibGVkfHx0aGlzLnJlYWRvbmx5fHwodGhpcy50b3VjaD90aGlzLiRzZWxlY3QuY2xpY2soKTp0aGlzLiRlbC50dkRyb3Bkb3duKCJ0b2dnbGUiKSl9b3Blbigpe3RoaXMuZGlzYWJsZWR8fHRoaXMucmVhZG9ubHl8fCh0aGlzLnRvdWNoP3RoaXMuJHNlbGVjdC5jbGljaygpOnRoaXMuJGVsLnR2RHJvcGRvd24oIm9wZW4iKSl9Y2xvc2UoKXt0aGlzLmRpc2FibGVkfHx0aGlzLnJlYWRvbmx5fHwodGhpcy50b3VjaD90aGlzLiRzZWxlY3QuY2xpY2soKToodGhpcy5fZm9jdXNPcHRpb24odGhpcy5fc2VsZWN0RWxlbWVudC5zZWxlY3RlZEluZGV4KSx0aGlzLiRlbC50dkRyb3Bkb3duKCJjbG9zZSIpKSl9ZGVzdHJveSgpe3RoaXMuJHNlbGVjdC5vZmYoImNoYW5nZSIpLHRoaXMuJGRyb3Bkb3duJiZ0aGlzLiRkcm9wZG93bi5vZmYoImNsaWNrIiksdGhpcy4kc2VsZWN0LnJlbW92ZUNsYXNzKCJpLWluaXRlZCIpLmluc2VydEJlZm9yZSh0aGlzLiRlbCksdGhpcy4kZWwudHZEcm9wZG93bigiZGVzdHJveSIpLHRoaXMuJGVsLnJlbW92ZSgpfXVwZGF0ZUl0ZW1zKCl7dGhpcy5vcHRpb25zPVtdLHRoaXMuaXRlbXM9dGhpcy5fcGFyc2VEb21JdGVtcyh0aGlzLiRzZWxlY3QpO2NvbnN0IGU9dGhpcy5fcmVuZGVyRHJvcGRvd24oKTtpZighdGhpcy50b3VjaCl7dGhpcy4kZHJvcGRvd24uZmluZCgiLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24iKS5yZW1vdmUoKTtjb25zdCB0PXRoaXMuJGRyb3Bkb3duLmZpbmQoIi50di1kcm9wZG93bi1iZWhhdmlvcl9faW5zY3JvbGwiKTt0aGlzLiRvcHRpb25zPWUuZmluZCgiLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24iKTtmb3IobGV0IGU9MDtlPHRoaXMuJG9wdGlvbnMubGVuZ3RoO2UrKyl7Y29uc3Qgbz1rbyh0aGlzLiRvcHRpb25zW2VdKSxpPW8uZGF0YSgiaWQiKTt0aGlzLm9wdGlvbnNbaV0mJih0aGlzLm9wdGlvbnNbaV0uJGVsPW8sdC5hcHBlbmQobykpfX10aGlzLm11bHRpcGxlPyh0aGlzLl91cGRhdGVTZWxlY3RCb3hUaXRsZSgpLHRoaXMuX3VwZGF0ZUNoZWNrQm94ZXMoKSk6dGhpcy5fdXBkYXRlU2luZ2xlVmlldyh0aGlzLl9zZWxlY3RFbGVtZW50LnNlbGVjdGVkSW5kZXgpfV9mb2N1c09wdGlvbihlKXtjb25zdCB0PXRoaXMub3B0aW9uc1tlXS4kZWw7aWYodGhpcy5fZm9jdXNlZE9wdGlvbj1lLCF0aGlzLnRvdWNoKXtpZih0aGlzLl9jbGVhckZvY3VzKCksdC5hZGRDbGFzcygiaS1hY3RpdmUiKSwhdGhpcy5kcm9wZG93blNjcm9sbHx8IXRoaXMub3BlbmVkKXJldHVybjtjb25zdCBlPXRoaXMuZHJvcGRvd25TY3JvbGwuY3VycmVudFBvc2l0aW9uKCksbz10Lm91dGVySGVpZ2h0KCksaT10LnBvc2l0aW9uKCkudG9wLG49LWUrdGhpcy5kcm9wZG93blNjcm9sbC5nZXRDb250YWluZXJIZWlnaHRXaXRob3V0SGVhZGVyKCk8aStvO2k8LWU/dGhpcy5kcm9wZG93blNjcm9sbC5zY3JvbGxUbyhpKTpuJiZ0aGlzLmRyb3Bkb3duU2Nyb2xsLnNjcm9sbFRvKGkrbyl9fV9zZXRTaW5nbGVWYWx1ZShlKXtjb25zdCB0PXRoaXMub3B0aW9uc1tlXS52YWx1ZTsodGhpcy4kc2VsZWN0LnZhbCgpJiZ0aGlzLiRzZWxlY3QudmFsKCkudG9TdHJpbmcoKSkhPT10LnRvU3RyaW5nKCkmJnRoaXMuJHNlbGVjdC52YWwodCkudHJpZ2dlcigiY2hhbmdlIil9X3VwZGF0ZVNpbmdsZVZpZXcoZSl7Y29uc3QgdD10aGlzLm9wdGlvbnNbZV07dCYmKHRoaXMuX2ZvY3VzT3B0aW9uKGUpLHRoaXMuX3NlbGVjdEVsZW1lbnQuc2VsZWN0ZWRJbmRleD1lLHRoaXMuJGNvbnRyb2xJbm5lci50ZXh0KHQubGFiZWwpLAp0aGlzLiRjb250cm9sSW5uZXIudG9nZ2xlQ2xhc3MoInR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9sLWlubmVyLS1vcHRpb24tZGlzYWJsZWQiLHQuZGlzYWJsZWQpKX1fdG9nZ2xlT3B0aW9uKGUpe2NvbnN0IHQ9dGhpcy5vcHRpb25zW2VdLnZhbHVlLG89dGhpcy4kc2VsZWN0LnZhbCgpfHxbXSxpPW8uaW5kZXhPZih0KTtpZigtMSE9PWkpby5zcGxpY2UoaSwxKTtlbHNlIGlmKG8ubGVuZ3RoKXtjb25zdCBlPXRoaXMub3B0aW9uc1t0aGlzLl9maW5kT3B0aW9uKHQpXS5pZCxpPW8uZmluZCgodD0+dGhpcy5vcHRpb25zW3RoaXMuX2ZpbmRPcHRpb24odCldLmlkPmUpKTtvLnNwbGljZShpP28uaW5kZXhPZihpKTowLDAsdCl9ZWxzZSBvLnB1c2godCk7dGhpcy5fc2V0TXVsdGlwbGVWYWx1ZXMobyl9X3VwZGF0ZUNoZWNrQm94ZXMoKXtjb25zdCBlPXRoaXMuJHNlbGVjdC52YWwoKXx8W107Zm9yKGxldCB0PTA7dDx0aGlzLml0ZW1zLmxlbmd0aDt0Kyspe2NvbnN0IG89dGhpcy5pdGVtc1t0XTtvLiRlbC5maW5kKCIudHYtY29udHJvbC1jaGVja2JveF9faW5wdXQiKS5wcm9wKCJjaGVja2VkIiwtMSE9PWUuaW5kZXhPZihvLnZhbHVlKSl9fV91cGRhdGVTZWxlY3RCb3hUaXRsZSgpe2NvbnN0IGU9dGhpcy4kc2VsZWN0LnZhbCgpfHxbXTtpZihlLmxlbmd0aCYmIXRoaXMuX2RlZmF1bHRQbGFjZUhvZGVyKWlmKGUubGVuZ3RoPT09dGhpcy5pdGVtcy5sZW5ndGgpdGhpcy4kY29udHJvbElubmVyLnRleHQoU28udChudWxsLHtjb250ZXh0OiJjb21ib2JveF9pbnB1dCJ9LG8oMzYyMDA0KSkpO2Vsc2UgaWYoZS5sZW5ndGg+dGhpcy5fbWluRGlzcGxheUNvdW50KXRoaXMuJGNvbnRyb2xJbm5lci50ZXh0KFNvLnQobnVsbCx7cGx1cmFsOiJ7bnVtYmVyfSBpdGVtcyIsY291bnQ6ZS5sZW5ndGgsY29udGV4dDoiY29tYm9ib3hfaW5wdXQifSxvKDk4Mzc2NCkpLmZvcm1hdChlLmxlbmd0aCkpO2Vsc2V7Y29uc3QgdD1lLm1hcCgoZT0+dGhpcy5vcHRpb25zW3RoaXMuX2ZpbmRPcHRpb24oZSldLmxhYmVsKSk7dGhpcy4kY29udHJvbElubmVyLnRleHQodC5qb2luKCIsICIpKX1lbHNlIHRoaXMuJGNvbnRyb2xJbm5lci50ZXh0KHRoaXMuX2VtcHR5U3RyaW5nKX1fc2V0TXVsdGlwbGVWYWx1ZXMoZSl7dGhpcy4kc2VsZWN0LmZpbmQoIm9wdGlvbiIpLnByb3AoInNlbGVjdGVkIiwhMSk7Zm9yKGxldCB0PTA7dDxlLmxlbmd0aDt0Kyspe2NvbnN0IG89ZVt0XTt0aGlzLiRzZWxlY3QuZmluZChgb3B0aW9uW3ZhbHVlPSIke299Il1gKS5wcm9wKCJzZWxlY3RlZCIsITApfXRoaXMuJHNlbGVjdC50cmlnZ2VyKCJjaGFuZ2UiKX1fY2xlYXJGb2N1cygpe3RoaXMuJG9wdGlvbnMucmVtb3ZlQ2xhc3MoImktYWN0aXZlIil9X2ZpbmRPcHRpb24oZSl7Y29uc3QgdD1PYmplY3Qua2V5cyh0aGlzLm9wdGlvbnMpO2ZvcihsZXQgbz0wO288dC5sZW5ndGg7bysrKWlmKHRoaXMub3B0aW9uc1t0W29dXS52YWx1ZS50b1N0cmluZygpPT09ZS50b1N0cmluZygpKXJldHVybiB0aGlzLm9wdGlvbnNbdFtvXV0uaWR9X3BhcnNlRG9tSXRlbXMoZSl7Y29uc3QgdD1lLmNoaWxkcmVuKCksbz1bXTtmb3IobGV0IGU9MDtlPHQubGVuZ3RoO2UrKyl7Y29uc3QgaT1rbyh0W2VdKTtsZXQgbjsib3B0Z3JvdXAiPT09aS5wcm9wKCJ0YWdOYW1lIikudG9Mb3dlckNhc2UoKT9uPXtvcHRncm91cDohMCxzZXBhcmF0b3I6Qm9vbGVhbih0aGlzLl9vcHRpb25zLnNob3dPcHRncm91cFNlcGFyYXRvcnMpLGxhYmVsOmkuYXR0cigibGFiZWwiKSxpdGVtczp0aGlzLl9wYXJzZURvbUl0ZW1zKGkpfToib3B0aW9uIj09PWkucHJvcCgidGFnTmFtZSIpLnRvTG93ZXJDYXNlKCkmJihuPXtpZDppWzBdLmluZGV4LG9wdGlvbjohMCxsYWJlbDppLnRleHQoKS5yZXBsYWNlKC9cLy9nLCLigIskJuKAiyIpLHZhbHVlOmkuYXR0cigidmFsdWUiKSxkaXNhYmxlZDppLmlzKCI6ZGlzYWJsZWQiKX0sdGhpcy5vcHRpb25zW24uaWRdPW4pLG8ucHVzaChuKX1yZXR1cm4gb31fcmVuZGVyKCl7aWYodGhpcy4kZWw9dGhpcy5fcmVuZGVyRHJvcGRvd24oKSx0aGlzLiRjb250cm9sPXRoaXMuJGVsLmZpbmQoIi50di1jb250cm9sLXNlbGVjdF9fY29udHJvbCIpLHRoaXMuJGNvbnRyb2xJbm5lcj10aGlzLiRlbC5maW5kKCIudHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2wtaW5uZXIiKSwhdGhpcy50b3VjaCl7dGhpcy4kZHJvcGRvd249dGhpcy4kZWwuZmluZCgiLnR2LWNvbnRyb2wtc2VsZWN0X19kcm9wZG93biIpLHRoaXMuJG9wdGlvbnM9dGhpcy4kZWwuZmluZCgiLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24iKTtmb3IobGV0IGU9MDtlPHRoaXMuJG9wdGlvbnMubGVuZ3RoO2UrKyl7Y29uc3QgdD1rbyh0aGlzLiRvcHRpb25zW2VdKSxvPXQuZGF0YSgiaWQiKTt0aGlzLm9wdGlvbnNbb10mJih0aGlzLm9wdGlvbnNbb10uJGVsPXQpfX10aGlzLm11bHRpcGxlPyh0aGlzLl91cGRhdGVTZWxlY3RCb3hUaXRsZSgpLHRoaXMuX3VwZGF0ZUNoZWNrQm94ZXMoKSk6KC0xPT09dGhpcy5fc2VsZWN0RWxlbWVudC5zZWxlY3RlZEluZGV4JiYodGhpcy5fc2VsZWN0RWxlbWVudC5zZWxlY3RlZEluZGV4PTApLHRoaXMuX3VwZGF0ZVNpbmdsZVZpZXcodGhpcy5fc2VsZWN0RWxlbWVudC5zZWxlY3RlZEluZGV4KSksdGhpcy4kc2VsZWN0Lm9uKCJjaGFuZ2UiLChlPT57dGhpcy5tdWx0aXBsZT8odGhpcy5fdXBkYXRlU2VsZWN0Qm94VGl0bGUoKSx0aGlzLl91cGRhdGVDaGVja0JveGVzKCkpOnRoaXMuX3VwZGF0ZVNpbmdsZVZpZXcodGhpcy5fZmluZE9wdGlvbih0aGlzLiRzZWxlY3QudmFsKCkpKX0pKSx0aGlzLnRvdWNofHwodGhpcy4kZWwudHZEcm9wZG93bih7c2Nyb2xsOiEwLGFkYXB0Qm9keTohMCxib3VuZGluZ0VsZW1lbnQ6dGhpcy5fb3B0aW9ucy5ib3VuZGluZ0VsZW1lbnQsbWF4SGVpZ2h0OnRoaXMuX29wdGlvbnMubWF4SGVpZ2h0LGRyb3Bkb3duV2lkdGg6dGhpcy5fb3B0aW9ucy5kcm9wZG93bldpZHRoLG5vQW5pbWF0aW9uOnRoaXMuX29wdGlvbnMubm9BbmltYXRpb24sY2xvc2VXaXRoRXNjOnRoaXMuX29wdGlvbnMuY2xvc2VXaXRoRXNjfSksCnRoaXMuZHJvcGRvd25TY3JvbGw9dGhpcy4kZWwudHZEcm9wZG93bigiZ2V0Iiwic2Nyb2xsIiksdGhpcy4kZHJvcGRvd24ub24oImNsaWNrIiwiLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24iLChlPT57Y29uc3QgdD1wYXJzZUludChrbyhlLmN1cnJlbnRUYXJnZXQpLmRhdGEoImlkIikpO3RoaXMub3B0aW9uc1t0XSYmIXRoaXMub3B0aW9uc1t0XS5kaXNhYmxlZCYmKHRoaXMubXVsdGlwbGU/dGhpcy5fdG9nZ2xlT3B0aW9uKHQpOih0aGlzLl9zZXRTaW5nbGVWYWx1ZSh0KSx0aGlzLmNsb3NlKCkpKX0pKSx0aGlzLiRlbC5vbigiYmVmb3JlT3Blbk1lbnUiLCgoKT0+e3RoaXMub3BlbmVkPSEwfSkpLHRoaXMuJGVsLm9uKCJhZnRlckNsb3NlTWVudSIsKCgpPT57dGhpcy5vcGVuZWQ9ITEsdGhpcy5maWx0ZXJRdWVyeT1bXSx0aGlzLm11bHRpcGxlfHx0aGlzLl9mb2N1c2VkT3B0aW9uLnRvU3RyaW5nKCk9PT10aGlzLl9zZWxlY3RFbGVtZW50LnNlbGVjdGVkSW5kZXgudG9TdHJpbmcoKXx8dGhpcy5fZm9jdXNPcHRpb24odGhpcy5fc2VsZWN0RWxlbWVudC5zZWxlY3RlZEluZGV4KSx0aGlzLm11bHRpcGxlJiZ0aGlzLl9jbGVhckZvY3VzKCl9KSksdGhpcy4kZWwub24oImNsaWNrIiwoKCk9Pnt0aGlzLiRjb250cm9sLmZvY3VzKCl9KSksdGhpcy4kZWwub24oImtleWRvd24iLChlPT57dGhpcy5fZmlsdGVyKGUpfSkpLHRoaXMuZGlzYWJsZWQ/dGhpcy5kaXNhYmxlKCk6dGhpcy5lbmFibGUoKSl9X3JlbmRlckRyb3Bkb3duKCl7cmV0dXJuIGtvKFRvLnJlbmRlcih4by53cmFwLHtpdGVtczp0aGlzLml0ZW1zLGNsYXNzOnRoaXMuJHNlbGVjdC5hdHRyKCJjbGFzcyIpLHRvdWNoOnRoaXMudG91Y2gsbXVsdGlwbGU6dGhpcy5tdWx0aXBsZSxkaXNhYmxlZDp0aGlzLmRpc2FibGVkLHJlYWRvbmx5OnRoaXMucmVhZG9ubHksZHJvcGRvd25fY2xhc3M6dGhpcy5fb3B0aW9ucy5hZGREcm9wZG93bkNsYXNzfSx4bykpLnJlbW92ZUNsYXNzKCJ0di1jb250cm9sLXNlbGVjdCIpfV9maWx0ZXIoZSl7aWYoOT09PWUud2hpY2gpcmV0dXJuIHZvaWQgdGhpcy5jbG9zZSgpO2lmKDEzPT09ZS53aGljaCYmIXRoaXMub3BlbmVkKXJldHVybjtpZigoNDA9PT1lLndoaWNofHwzMj09PWUud2hpY2gpJiYhdGhpcy5vcGVuZWQpcmV0dXJuIHRoaXMub3BlbigpLHZvaWQgZS5wcmV2ZW50RGVmYXVsdCgpO2UucHJldmVudERlZmF1bHQoKSx0aGlzLm9wZW5lZHx8dGhpcy5vcGVuKCk7Y29uc3QgdD1TdHJpbmcuZnJvbUNoYXJDb2RlKGUud2hpY2gpLnRvTG93ZXJDYXNlKCk7aWYodCYmLTE9PT1bOSwxMywyNywzOCw0MF0uaW5kZXhPZihlLndoaWNoKSl7dGhpcy5maWx0ZXJRdWVyeS5wdXNoKHQpO2NvbnN0IGU9dGhpcy5maWx0ZXJRdWVyeS5qb2luKCIiKTtsZXQgbztjb25zdCBpPU9iamVjdC5rZXlzKHRoaXMub3B0aW9ucyk7Zm9yKGxldCB0PTA7dDxpLmxlbmd0aDt0KyspaWYoMD09PXRoaXMub3B0aW9uc1tpW3RdXS5sYWJlbC50b0xvd2VyQ2FzZSgpLmluZGV4T2YoZSkmJiF0aGlzLm9wdGlvbnNbaVt0XV0uZGlzYWJsZWQpe289dGhpcy5vcHRpb25zW2lbdF1dLmlkO2JyZWFrfXZvaWQgMCE9PW8mJnRoaXMuX2ZvY3VzT3B0aW9uKG8pLHRoaXMuY2xlYXJGaWx0ZXImJmNsZWFyVGltZW91dCh0aGlzLmNsZWFyRmlsdGVyKSx0aGlzLmNsZWFyRmlsdGVyPXNldFRpbWVvdXQoKCgpPT57dGhpcy5maWx0ZXJRdWVyeT1bXX0pLDUwMCl9MzIhPT1lLndoaWNoJiYxMyE9PWUud2hpY2h8fCF0aGlzLm9wZW5lZHx8KHRoaXMubXVsdGlwbGU/dGhpcy5fdG9nZ2xlT3B0aW9uKHRoaXMuX2ZvY3VzZWRPcHRpb24pOih0aGlzLl9zZXRTaW5nbGVWYWx1ZSh0aGlzLl9mb2N1c2VkT3B0aW9uKSx0aGlzLmNsb3NlKCksdGhpcy4kZWwub25lKCJrZXl1cCIsKGU9PmUuc3RvcFByb3BhZ2F0aW9uKCkpKSkpO2NvbnN0IG89ZT0+e2xldCB0O2lmKHRoaXMub3B0aW9uc1t0aGlzLl9mb2N1c2VkT3B0aW9uXSl7Y29uc3Qgbz10aGlzLm9wdGlvbnNbdGhpcy5fZm9jdXNlZE9wdGlvbl0uJGVsW2VdKHRoaXMuJGRyb3Bkb3duLCIudHYtY29udHJvbC1zZWxlY3RfX29wdGlvbjpub3QoLmktZGlzYWJsZWQpIik7dD1vLmxlbmd0aD9vLmRhdGEoImlkIik6dGhpcy5fZm9jdXNlZE9wdGlvbn1lbHNlIHQ9dGhpcy4kb3B0aW9ucy5maXJzdCgiLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb246bm90KC5pLWRpc2FibGVkKSIpLmRhdGEoImlkIik7cmV0dXJuIHR9OzQwPT09ZS53aGljaCYmKHRoaXMuZmlsdGVyUXVlcnk9W10sdGhpcy5fZm9jdXNPcHRpb24obygibmV4dFVudGlsIikpKSwzOD09PWUud2hpY2gmJih0aGlzLmZpbHRlclF1ZXJ5PVtdLHRoaXMuX2ZvY3VzT3B0aW9uKG8oInByZXZVbnRpbCIpKSksMjc9PT1lLndoaWNoJiZ0aGlzLmNsb3NlKCl9fWZ1bmN0aW9uIE1vKGUpeyhhc3luYyBmdW5jdGlvbihlKXtyZXR1cm4oYXdhaXQgUHJvbWlzZS5hbGwoW28uZSg4NzIzOCksby5lKDU0NjgxKSxvLmUoMzE4MzcpLG8uZSgyMDk3MSksby5lKDQ5NTE4KSxvLmUoNzUzMDQpLG8uZSgzODAwMiksby5lKDcwMzY0KSxvLmUoODkxOTUpLG8uZSg3NTA0KSxvLmUoNDY2MDApLG8uZSgxMDcwNCldKS50aGVuKG8uYmluZChvLDIzNTcyKSkpLmNyZWF0ZURpYWxvZyh7d2lkdGg6NDAwLGRlc3Ryb3lPbkNsb3NlOiEwLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDU2MTYwMCkpLGNvbnRlbnQ6Xy50KG51bGwsdm9pZCAwLG8oNzIzNjMpKSxjb250ZW50V3JhcFRlbXBsYXRlOic8ZGl2IGNsYXNzPSJ0di1kaWFsb2dfX3NlY3Rpb24gdHYtZGlhbG9nX19zZWN0aW9uLS1uby1ib3JkZXIiPjxkaXYgY2xhc3M9InR2LXRleHQiPjxwPjwvcD48L2Rpdj48L2Rpdj4nLGFjdGlvbnNXcmFwVGVtcGxhdGU6JzxkaXYgY2xhc3M9InR2LWRpYWxvZ19fc2VjdGlvbiB0di1kaWFsb2dfX3NlY3Rpb24tLWFjdGlvbnMgdHYtZGlhbG9nX19zZWN0aW9uLS1uby1ib3JkZXIiPicsYWN0aW9uczpbe25hbWU6Im9rIix0eXBlOiJwcmltYXJ5Iix0ZXh0Ol8udChudWxsLHZvaWQgMCxvKDIwODA3OCkpLG1ldGhvZDoiY2xvc2UiLGtleTpbMTMsMzJdfV0sLi4uZX0pCn0pKGUpLnRoZW4oKGU9PmUub3BlbigpKSl9a28uZm4udHZDb250cm9sU2VsZWN0PSgwLENvLmNyZWF0ZVR2QmxvY2tXaXRoSW5zdGFuY2UpKCJ0di1jb250cm9sLXNlbGVjdCIsKGZ1bmN0aW9uKGUsdD17fSl7cmV0dXJuIG5ldyBBbyhFby5leHRlbmQodCx7JHNlbGVjdDplfSkpfSkpO28oNTUwNzA1KTt2YXIgSW89byg3NzA3NTUpLFJvPW8oMjM0OTY0KSxGbz1vKDQ5ODY1MSk7ZnVuY3Rpb24gTG8oZSl7aWYoISgwLEZvLmlzSURDRXhjaGFuZ2UpKGUpKXJldHVybiExO2U9RG8oZSk7Y29uc3QgdD13aW5kb3cucHJvLG89dC5nZXRQcm9kdWN0KGUpO3JldHVybiB2b2lkIDAhPT1vLmlkY19zZXJ2aWNlX2NvZGVzX2RlbGF5JiYoKCFBcnJheS5pc0FycmF5KG8uaW5jbHVkZWRfZXhjaGFuZ2VzKXx8IW8uaW5jbHVkZWRfZXhjaGFuZ2VzLnNvbWUoKGU9PnQuaGFzUGFja2FnZShEbyhlKSkpKSkmJiFmdW5jdGlvbihlKXtjb25zdCB0PXdpbmRvdy5wcm87cmV0dXJuIHQuaGFzUGFja2FnZShlKXx8dC5oYXNQYWNrYWdlKGUrIl9kbHkiKX0oZSkpfWZ1bmN0aW9uIERvKGUpe3JldHVybiBlLnN0YXJ0c1dpdGgoImV4Y2hhbmdlLSIpP2U6ImV4Y2hhbmdlLXswfSIuZm9ybWF0KGUudG9Mb3dlckNhc2UoKSl9dmFyIE9vPW8oMjU1NTE2KTtjb25zdCBObz1KU09OLnBhcnNlKCd7Ik5BU0RBUSI6ImV4Y2hhbmdlLW5hc2RhcSIsIk5ZU0UiOiJleGNoYW5nZS1ueXNlIiwiTllTRSBBUkNBIjoiZXhjaGFuZ2UtYW1leCIsIkFNRVgiOiJleGNoYW5nZS1hbWV4IiwiT1RDIjoiZXhjaGFuZ2Utb3RjIiwiREZNIjoiZXhjaGFuZ2UtZGZtIiwiQkNCQSI6ImV4Y2hhbmdlLWJjYmEiLCJBU1giOiJleGNoYW5nZS1hc3giLCJFVVJPTkVYVCI6ImV4Y2hhbmdlLWV1cm9uZXh0X3N0b2NrcyIsIkVVUk9ORVhUQlJVIjoiZXhjaGFuZ2UtZXVyb25leHRfc3RvY2tzIiwiRVVST05FWFRQQVIiOiJleGNoYW5nZS1ldXJvbmV4dF9zdG9ja3MiLCJFVVJPTkVYVExJUyI6ImV4Y2hhbmdlLWV1cm9uZXh0X3N0b2NrcyIsIkVVUk9ORVhUQU1TIjoiZXhjaGFuZ2UtZXVyb25leHRfc3RvY2tzIiwiQkFIUkFJTiI6ImV4Y2hhbmdlLWJhaHJhaW4iLCJCTUZCT1ZFU1BBIjoiZXhjaGFuZ2UtYm92ZXNwYV9zdG9ja3MiLCJUU1giOiJleGNoYW5nZS10c3giLCJUU1hWIjoiZXhjaGFuZ2UtdHN4diIsIkNTRSI6ImV4Y2hhbmdlLWNzZSIsIlNJWCI6ImV4Y2hhbmdlLXNpeCIsIkJDUyI6ImV4Y2hhbmdlLWJjcyIsIlNTRSI6ImV4Y2hhbmdlLXNzZSIsIlNaU0UiOiJleGNoYW5nZS1zenNlIiwiQlZDIjoiZXhjaGFuZ2UtYnZjIiwiRldCIjoiZXhjaGFuZ2UtZndiIiwiU1dCIjoiZXhjaGFuZ2Utc3diIiwiWEVUUiI6ImV4Y2hhbmdlLXhldHIiLCJPTVhDT1AiOiJleGNoYW5nZS1vbXhjb3AiLCJPTVhUU0UiOiJleGNoYW5nZS1vbXh0c2UiLCJFR1giOiJleGNoYW5nZS1lZ3giLCJCTUUiOiJleGNoYW5nZS1ibWUiLCJPTVhIRVgiOiJleGNoYW5nZS1vbXhoZXgiLCJIS0VYIjoiZXhjaGFuZ2UtaGtleCIsIklEWCI6ImV4Y2hhbmdlLWlkeCIsIlRBU0UiOiJleGNoYW5nZS10YXNlIiwiQlNFIjoiZXhjaGFuZ2UtYnNlIiwiTlNFIjoiZXhjaGFuZ2UtbnNlIiwiT01YSUNFIjoiZXhjaGFuZ2Utb214aWNlIiwiTUlMIjoiZXhjaGFuZ2UtbWlsIiwiTUlMU0VERVgiOiJleGNoYW5nZS1taWwiLCJGU0UiOiJleGNoYW5nZS1mc2UiLCJOQUciOiJleGNoYW5nZS1uYWciLCJTQVBTRSI6ImV4Y2hhbmdlLXNhcHNlIiwiVFNFIjoiZXhjaGFuZ2Utb214dHNlIiwiS1JYIjoiZXhjaGFuZ2Uta3J4X3N0b2NrcyIsIk9NWFZTRSI6ImV4Y2hhbmdlLW9teHZzZSIsIk9NWFJTRSI6ImV4Y2hhbmdlLW9teHJzZSIsIkJNViI6ImV4Y2hhbmdlLWJtdiIsIk1ZWCI6ImV4Y2hhbmdlLW15eCIsIk5TRU5HIjoiZXhjaGFuZ2UtbnNlbmciLCJOWlgiOiJleGNoYW5nZS1uengiLCJCVkwiOiJleGNoYW5nZS1idmwiLCJHUFciOiJleGNoYW5nZS1ncHciLCJRU0UiOiJleGNoYW5nZS1xc2UiLCJCRUxFWCI6ImV4Y2hhbmdlLWJlbGV4IiwiTEpTRSI6ImV4Y2hhbmdlLWxqc2UiLCJNT0VYIjoiZXhjaGFuZ2UtbW9leF9zdG9ja3MiLCJUQURBV1VMIjoiZXhjaGFuZ2UtdGFkYXd1bCIsIk9NWFNUTyI6ImV4Y2hhbmdlLW9teHN0byIsIlNHWCI6ImV4Y2hhbmdlLXNneF9zdG9ja3MiLCJTRVQiOiJleGNoYW5nZS1zZXQiLCJCSVNUIjoiZXhjaGFuZ2UtYmlzdCIsIlRXU0UiOiJleGNoYW5nZS10d3NlIiwiTFNFIjoiZXhjaGFuZ2UtbHNlIiwiTFNJTiI6ImV4Y2hhbmdlLWxzaW4iLCJIT1NFIjoiZXhjaGFuZ2UtaG9zZV9zdG9ja3MiLCJKU0UiOiJleGNoYW5nZS1qc2Vfc3RvY2tzIiwiT1NFIjoiZXhjaGFuZ2Utb3NsIiwiWlNFIjoiZXhjaGFuZ2UtenNlIn0nKSxQbz1bXTtmb3IoY29uc3QgZSBpbiBPbylPby5oYXNPd25Qcm9wZXJ0eShlKSYmT29bZV0uaGFzT3duUHJvcGVydHkoImV4Y2hhbmdlc1N0b2NrcyIpJiZPb1tlXS5leGNoYW5nZXNTdG9ja3MuZm9yRWFjaCgoZT0+e1BvLnB1c2goZSl9KSk7ZnVuY3Rpb24gQm8oZSl7cmV0dXJuIE5vW2VdfHxudWxsfWZ1bmN0aW9uICRvKGUpe3JldHVyblsiQVNYIiwiQVRIRVgiXS5pbmNsdWRlcyhlKX12YXIgV287IWZ1bmN0aW9uKGUpe2VbZS5Ob25lPTBdPSJOb25lIixlW2UuV2lkZ2V0PTFdPSJXaWRnZXQiLGVbZS5TaXRlPTJdPSJTaXRlIn0oV298fChXbz17fSkpO3ZhciBxbz1vKDc2Mjg1MSksVm89bygxNTI3MTcpLEhvPW8oNDc5MzQpO2Z1bmN0aW9uIFVvKGUsdCxvKXtyZXR1cm4gdC52YWx1ZXx8KDAsSG8uZW5hYmxlZCkoZSxvKX1mdW5jdGlvbiB6byhlLHQsbyl7c3dpdGNoKGUpe2Nhc2UiU0NSRUVORVJfSU5URVJWQUxTIjpyZXR1cm4gZnVuY3Rpb24oZSx0KXtjb25zdCBvPSgwLEhvLmdldENvbmZpZykoIlNDUkVFTkVSX0lOVEVSVkFMUyIsdCk7cmV0dXJuISghb3x8IW8uaW50ZXJ2YWwpJiZvLmludGVydmFsLmluY2x1ZGVzKGUuaW50ZXJ2YWwpfSh0LG8pO2Nhc2UiU0NSRUVORVJfQVVUT19SRUZSRVNIIjpyZXR1cm4gVW8oIlNDUkVFTkVSX0FVVE9fUkVGUkVTSCIsdCxvKTtjYXNlIkFMRVJUU19OT19FWFBJUkFUSU9OIjoKcmV0dXJuIFVvKCJBTEVSVFNfTk9fRVhQSVJBVElPTiIsdCxvKTtkZWZhdWx0OnJldHVybigwLEhvLmVuYWJsZWQpKGUsbyl9fXZhciBqbz1vKDYxMzg3MCk7YXN5bmMgZnVuY3Rpb24gR28oZSx0LG8saT17fSxuKXtjb25zdCByPXdpbmRvdy5pc19hdXRoZW50aWNhdGVkO3dpbmRvdy5pc19hdXRoZW50aWNhdGVkJiZ3aW5kb3cudXNlci5pc19wcm8mJmF3YWl0KDAsVm8uc3luY1VzZXJEYXRhKSgiZ29wcm8iKSxyPT09d2luZG93LmlzX2F1dGhlbnRpY2F0ZWQ/ZnVuY3Rpb24oZSx0LG8saSxuKXt6byh0LGkpP2UoKTooMCxJby5vcGVuUGF5d2FsbCkoey4uLm8scnVuT3JHb3Byb1dpdGhGZWF0dXJlQ2hlY2tPcHRpb25zOntmZWF0dXJlQ2hlY2s6KCk9PnpvKHQsaSksc2lnbkluU3VjY2VzczplfX0sbil9KGUsdCxvLGksbik6KDAsam8uc2hvd1NpZ25Nb2RhbCkoe3NvdXJjZTpvLmdvcHJvU291cmNlLGZlYXR1cmU6by5mZWF0dXJlLHNpZ25pblN1Y2Nlc3M6ZX0pfXZhciBYbz1vKDczNzg2MyksS289byg5NjkxNjgpLFlvPW8oMjExMzYwKTtjbGFzcyBKb3tjb25zdHJ1Y3RvcihlKXt0aGlzLmV2ZW50PSJjaGFuZ2VfdGltZWZyYW1lIix0aGlzLnNvdXJjZT0idGltZWZyYW1lX3NlbGVjdG9yIix0aGlzLmxvY2F0aW9uPSJ0b29sYmFyIix0aGlzLnN0YXRlPSIiLHRoaXMudmFsdWU9ZX19Y2xhc3MgWm97Y29uc3RydWN0b3IoZSx0KXt0aGlzLmV2ZW50PSJjaGFuZ2VfY29sdW1uc2V0Iix0aGlzLnNvdXJjZT0iY29sdW1zZXRfc2VsZWN0b3IiLHRoaXMubG9jYXRpb249InRvb2xiYXIiLHRoaXMuc3RhdGU9IiIsdGhpcy52YWx1ZT0oMCxZby5nZXRDb2x1bW5TZXROYW1lRm9yU25vd1Bsb3cpKHQpLHRoaXMuc291cmNlPWV9fWNsYXNzIFFve2NvbnN0cnVjdG9yKGUsdCl7dGhpcy5ldmVudD0iY2hhbmdlX2Zhdm9yaXRlX2NvbHVtbnNldHMiLHRoaXMuc291cmNlPSJjb2x1bW5zZXRfc3Rhcl9idXR0b24iLHRoaXMubG9jYXRpb249InRvb2xiYXIiLHRoaXMudmFsdWU9KDAsWW8uZ2V0Q29sdW1uU2V0TmFtZUZvclNub3dQbG93KSh0KSx0aGlzLnN0YXRlPWV9fWNsYXNzIGVpe2NvbnN0cnVjdG9yKCl7dGhpcy5ldmVudD0icmVuYW1lX2N1c3RvbV9jb2x1bW5zZXQiLHRoaXMuc291cmNlPSJjb2x1bW5zZXRfcGVuX2J1dHRvbiIsdGhpcy5sb2NhdGlvbj0idG9vbGJhciIsdGhpcy5zdGF0ZT0iIix0aGlzLnZhbHVlPSIifX1jbGFzcyB0aXtjb25zdHJ1Y3RvcihlKXt0aGlzLmV2ZW50PSJjaGFuZ2VfZmlsdGVyc2V0Iix0aGlzLnNvdXJjZT0iZmlsdGVyc2V0X3NlbGVjdG9yIix0aGlzLmxvY2F0aW9uPSJ0b29sYmFyIix0aGlzLnN0YXRlPSIiLHRoaXMudmFsdWU9KDAsWW8uZ2V0RmlsdGVyU2V0TmFtZUZvclNub3dQbG93KShlKX19Y2xhc3Mgb2l7Y29uc3RydWN0b3IoKXt0aGlzLmV2ZW50PSJyZW5hbWVfY3VzdG9tX2ZpbHRlcnNldCIsdGhpcy5zb3VyY2U9ImZpbHRlcnNldF9wZW5fYnV0dG9uIix0aGlzLmxvY2F0aW9uPSJ0b29sYmFyIix0aGlzLnN0YXRlPSIiLHRoaXMudmFsdWU9IiJ9fXZhciBpaT1vKDQ1MDY2NCk7Y2xhc3Mgbml7Y29uc3RydWN0b3IoZSx0LG8pe3RoaXMuZXZlbnQ9ImNoYW5nZV9jb2x1bW5zIix0aGlzLnNvdXJjZT0iY29sdW1uX3NlbGVjdG9yIix0aGlzLmxvY2F0aW9uPSJoZWFkZXJfZmllbGRzX3BvcHVwIj09PWU/ImhlYWRlciI6InRvb2xiYXIiLHRoaXMuc3RhdGU9dD8iYWRkZWQiOiJyZW1vdmVkIix0aGlzLnZhbHVlPW99fWNsYXNzIHJpe2NvbnN0cnVjdG9yKGUpe3RoaXMuZXZlbnQ9ImNvbHVtbl9tb3ZlIix0aGlzLnNvdXJjZT0iY29sdW1uX2hlYWRlciIsdGhpcy5sb2NhdGlvbj0iaGVhZGVyIix0aGlzLnN0YXRlPWlpLlVzZXJBY3Rpb25TdGF0ZS5EcmFnLHRoaXMudmFsdWU9ZX19Y2xhc3Mgc2l7Y29uc3RydWN0b3IoKXt0aGlzLmV2ZW50PSJyZWZyZXNoX3NjcmVlbmVyX2RhdGEiLHRoaXMuc291cmNlPSJyZWZyZXNoX2J1dHRvbiIsdGhpcy5sb2NhdGlvbj0idG9vbGJhciIsdGhpcy5zdGF0ZT0iIix0aGlzLnZhbHVlPSIifX1jbGFzcyBhaXtjb25zdHJ1Y3RvcihlKXt0aGlzLmV2ZW50PSJjaGFuZ2VfcmVmcmVzaF9pbnRlcnZhbCIsdGhpcy5zb3VyY2U9InJlZnJlc2hfaW50ZXJ2YWxfc2VsZWN0b3IiLHRoaXMubG9jYXRpb249InRvb2xiYXIiLHRoaXMuc3RhdGU9IiIsdGhpcy52YWx1ZT0oMCxZby5nZXRTbm93UGxvd1JlZnJlc2hJbnRlcnZhbCkoZSl9fXZhciBsaT1vKDQ4MjUwNCk7Y29uc3QgY2k9bygyMjEwNjEpLmdldExvZ2dlcigiU2NyZWVuZXIuUG9wdXBzIik7Y2xhc3MgZGl7Y29uc3RydWN0b3IoZSx0LG8pe3RoaXMuX21vZGVsPWUsdGhpcy5fdmlldz10LHRoaXMuX2JyaWRnZT1vLHRoaXMuX21hcmtldHM9bnVsbCx0aGlzLl9tb2RlbC5maWVsZFNldFNhdmVkLnN1YnNjcmliZShudWxsLCgoKT0+dGhpcy5fdmlldy4kZmllbGRTZXRzQnV0dG9uLnJlbW92ZUNsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXVuc2F2ZWQiKSkpLHRoaXMuX21vZGVsLmZpbHRlclNldFNhdmVkLnN1YnNjcmliZShudWxsLCgoKT0+dGhpcy5fdmlldy4kZmlsdGVyU2V0c0J1dHRvbi5yZW1vdmVDbGFzcygidHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS11bnNhdmVkIikpKSx0aGlzLl9maWVsZHNQb3B1cENhY2hlPXt9fXNob3dQcm9tcHREaWFsb2coZSx0KXtyZXR1cm4gbmV3IFByb21pc2UoKGk9PnsoMCxSby5zaG93UmVuYW1lKSh7dGl0bGU6ZS50aXRsZSx0ZXh0OmUubGFiZWwsaW5pdFZhbHVlOnQsbWFpbkJ1dHRvblRleHQ6Xy50KG51bGwsdm9pZCAwLG8oNjEyNjU1KSksbWF4TGVuZ3RoOjEyOCxvblJlbmFtZTooe25ld1ZhbHVlOmUsZGlhbG9nQ2xvc2U6dH0pPT57aShlKSx0KCl9LG9uQ2xvc2U6aX0pfSkpfXNob3dNYWludGVuYW5jZURpYWxvZygpe01vKHt0eXBlOiJtb2RhbCIsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oMTU0NjQpKSxjb250ZW50Ol8udChudWxsLHZvaWQgMCxvKDMzMjg1NSkpfSl9c2hvd0NvbmZpcm1EaWFsb2coZSl7cmV0dXJuIG5ldyBQcm9taXNlKCh0PT57KDAsUm8uc2hvd0NvbmZpcm0pKHt0ZXh0OmUsCm9uQ29uZmlybTooe2RpYWxvZ0Nsb3NlOmV9KT0+e3QoITApLGUoKX0sb25DbG9zZTooKT0+dCghMSl9KX0pKX1zaG93Tm90aWNlKGUsdCl7TW8oe2NvbnRlbnQ6ZSx0aXRsZTp0fSl9c2V0RmllbGRzUG9wdXAoZSx0LGkpe2UuYWRkQ2xhc3MoInR2LWRyb3Bkb3duLWJlaGF2aW9yX19idXR0b24iKTtjb25zdCBuPWxpKGA8ZGl2IGNsYXNzPSIke3R8fCIifSI+YCk7bi5pbnNlcnRBZnRlcihlKS5hcHBlbmQoZSk7Y29uc3Qgcj1saSgnPGRpdiBjbGFzcz0idHYtZHJvcGRvd25fX2JvZHkgdHYtZHJvcGRvd25fX2JvZHktLW92ZXItdHJpZ2dlciB0di1kcm9wZG93bi1iZWhhdmlvcl9fYm9keSB0di1zY3JlZW5lci1maWVsZHMtcG9wdXAgaS1oaWRkZW4iPicpLmFwcGVuZFRvKG4pO2kmJnIuYWRkQ2xhc3MoaSk7Y29uc3Qgcz1saSgnPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItZmllbGRzLXBvcHVwX19zZWFyY2gtd3JhcCI+JykuYXBwZW5kVG8ociksYT1saShgPGlucHV0IHR5cGU9InRleHQiIHBsYWNlaG9sZGVyPSIke18udChudWxsLHZvaWQgMCxvKDg3MTExMCkpfSIgY2xhc3M9InR2LXNjcmVlbmVyLWZpZWxkcy1wb3B1cF9fc2VhcmNoLWlucHV0Ij5gKS5hcHBlbmRUbyhzKSxsPWxpKCc8ZGl2IGNsYXNzPSJ0di1kcm9wZG93bi1iZWhhdmlvcl9fc2Nyb2xsIj4nKS5hcHBlbmRUbyhyKSxjPWxpKCc8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci1maWVsZHMtcG9wdXBfX2l0ZW1zLXdyYXAgdHYtZHJvcGRvd24tYmVoYXZpb3JfX2luc2Nyb2xsIj4nKS5hcHBlbmRUbyhsKTsiaGVhZGVyX2ZpZWxkcy1idXR0b24iPT09ZS5hdHRyKCJkYXRhLW5hbWUiKSYmYy5hdHRyKHsiZGF0YS1uYW1lIjoiaGVhZGVyX2ZpZWxkc19wb3B1cCJ9KTtjb25zdCBkPWxpKCc8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci1maWVsZHMtcG9wdXBfX2l0ZW0gdHYtc2NyZWVuZXItZmllbGRzLXBvcHVwX19pdGVtLS1uby1tYXRjaGVzIGpzLWhpZGRlbiI+Tm8gbWF0Y2hlczwvZGl2PicpLmFwcGVuZFRvKHIpO2Eub24oImNoYW5nZSBpbnB1dCIsKGU9Pntjb25zdCB0PWEudmFsKCkudHJpbSgpLnRvTG93ZXJDYXNlKCk7dD9jLmZpbmQoIi5qcy1maWVsZHMtaXRlbSIpLmVhY2goKGZ1bmN0aW9uKCl7Y29uc3QgZT1saSh0aGlzKTtlLnRvZ2dsZUNsYXNzKCJqcy1oaWRkZW4iLCF+ZS50ZXh0KCkudG9Mb3dlckNhc2UoKS5pbmRleE9mKHQpKX0pKTpjLmZpbmQoIi5qcy1maWVsZHMtaXRlbSIpLnJlbW92ZUNsYXNzKCJqcy1oaWRkZW4iKSxkLnRvZ2dsZUNsYXNzKCJqcy1oaWRkZW4iLCEhYy5maW5kKCIuanMtZmllbGRzLWl0ZW06bm90KC5qcy1oaWRkZW4pIikuc2l6ZSgpKSxuLnR2RHJvcGRvd24oInVwZGF0ZVNjcm9sbCIpfSkpLG4ub24oImJlZm9yZU9wZW5NZW51IiwoKCk9PnthLnZhbCgiIiksYy5maW5kKCIuanMtZmllbGRzLWl0ZW0iKS5yZW1vdmVDbGFzcygianMtaGlkZGVuIiksZC5hZGRDbGFzcygianMtaGlkZGVuIiksdGhpcy5yZXNldEZpZWxkc1BvcHVwKGMpLGwuY3NzKCJtYXhIZWlnaHQiLGxpKHdpbmRvdykuaGVpZ2h0KCktZS5vZmZzZXQoKS50b3ArbGkod2luZG93KS5zY3JvbGxUb3AoKS1lLm91dGVySGVpZ2h0KCktcy5vdXRlckhlaWdodCgpLTIwKX0pKS5vbigiYWZ0ZXJPcGVuTWVudSIsKCgpPT57YS5mb2N1cygpfSkpLnR2RHJvcGRvd24oe3Njcm9sbDohMCxub0FuaW1hdGlvbjohMH0pLHNldFRpbWVvdXQoKCgpPT50aGlzLnJlc2V0RmllbGRzUG9wdXAoYykpLDApfXJlc2V0RmllbGRzUG9wdXAoZSl7ZS5lbXB0eSgpO2NvbnN0IHQ9ZT0+e2lmKGUgaW4gdGhpcy5fZmllbGRzUG9wdXBDYWNoZSl7Y29uc3QgdD10aGlzLl9maWVsZHNQb3B1cENhY2hlW2VdO3JldHVybiB0LmNoZWNrYm94LnByb3AoImNoZWNrZWQiLEl0W2VdLmNoZWNrZWQpLHQuaXRlbX1jb25zdCB0PWxpKCc8ZGl2IGNsYXNzPSJ0di1kcm9wZG93bi1iZWhhdmlvcl9faXRlbSI+Jyk7bGkoYDxsYWJlbCBkYXRhLWZpZWxkPSIke2V9IiBjbGFzcz0idHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwIHR2LXNjcmVlbmVyLWZpZWxkcy1wb3B1cF9faXRlbSBqcy1maWVsZHMtaXRlbSI+XG5cdFx0XHRcdDxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0iJHtlfSIgY2xhc3M9ImpzLWZpZWxkLWNoZWNrYm94IiR7SXRbZV0uY2hlY2tlZD8iIGNoZWNrZWQiOiIifT5cblx0XHRcdFx0PHNwYW4gY2xhc3M9InR2LWNvbnRyb2wtY2hlY2tib3hfX2xhYmVsIj4keygwLFRlLnRyaWVzVHJhbnNsYXRlU2NyZWVuZXJEYXRhKShJdFtlXS50aXRsZSl9PC9zcGFuPlxuXHRcdFx0PC9sYWJlbD5gKS5hcHBlbmRUbyh0KTtjb25zdCBvPXQuZmluZCgiLmpzLWZpZWxkLWNoZWNrYm94IikudHZDb250cm9sQ2hlY2tib3goKTtyZXR1cm4gdGhpcy5fZmllbGRzUG9wdXBDYWNoZVtlXT17aXRlbTp0LGNoZWNrYm94Om99LHR9LG89dGhpcy5fdmlldy5zb3J0ZWRGaWVsZHMuZmlsdGVyKFh0KS5zb3J0KCgoZSx0KT0+SXRbZV0udGl0bGUubG9jYWxlQ29tcGFyZShJdFt0XS50aXRsZSx2b2lkIDAse2lnbm9yZVB1bmN0dWF0aW9uOiEwLG51bWVyaWM6ITB9KSkpLGk9by5maWx0ZXIoKGU9Pkl0W2VdLmNoZWNrZWQpKSxuPW8uZmlsdGVyKChlPT4hSXRbZV0uY2hlY2tlZCkpO2kuY29uY2F0KG4pLmZvckVhY2goKG89PnsiaXNfcHJpbWFyeSIhPT1vJiZ0KG8pLmFwcGVuZFRvKGUpfSkpLGUuZmluZCgiLmpzLWZpZWxkLWNoZWNrYm94Iikub2ZmKCJjaGFuZ2UiKSxlLmZpbmQoIi5qcy1maWVsZC1jaGVja2JveCIpLm9uKCJjaGFuZ2UiLCh0PT57Y29uc3Qgbz1saSh0LmN1cnJlbnRUYXJnZXQpLGk9by5hdHRyKCJuYW1lIik7SXRbaV0uY2hlY2tlZD1vLnByb3AoImNoZWNrZWQiKTtjb25zdCBuPWUuYXR0cigiZGF0YS1uYW1lIikscj1JdFtpXS5jaGVja2VkOygwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBuaShuLHIsaSkpO2NvbnN0IHM9SXRbaV0uY2hlY2tlZD90aGlzLl92aWV3Ll90YWJsZS5maWVsZHNPcmRlci5jb25jYXQoaSk6dGhpcy5fdmlldy5fdGFibGUuZmllbGRzT3JkZXIuZmlsdGVyKChlPT5lIT09aSkpO3RoaXMuX21vZGVsLnByZXZlbnRQcmV2U2NhblJlcXVlc3QoKSwKdGhpcy5fbW9kZWwuZmllbGRTZXRDaGFuZ2VkLmZpcmUocy5maWx0ZXIoKGU9Pkl0W2VdJiYhMCE9PUl0W2VdLmRpc2FibGVkJiYhMCE9PUl0W2VdLmhpZGRlbkNvbHVtbikpKSx0aGlzLl9tb2RlbC51cGRhdGUoKSx0aGlzLl92aWV3LiRmaWVsZFNldHNCdXR0b24udG9nZ2xlQ2xhc3MoInR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tdW5zYXZlZCIsdGhpcy5fbW9kZWwuaXNGaWVsZFNldENoYW5nZWQoKSl9KSl9c2V0UG9wdXAoZSx0LG8pe2UuYWRkQ2xhc3MoInR2LWRyb3Bkb3duLWJlaGF2aW9yX19idXR0b24iKTtjb25zdCBpPWxpKGA8ZGl2IGNsYXNzPSIke3R8fCIifSI+YCk7aS5pbnNlcnRBZnRlcihlKS5hcHBlbmQoZSk7Y29uc3Qgbj1saSgnPGRpdiBjbGFzcz0idHYtZHJvcGRvd25fX2JvZHkgdHYtZHJvcGRvd25fX2JvZHktLW92ZXItdHJpZ2dlciB0di1kcm9wZG93bi1iZWhhdmlvcl9fYm9keSB0di1zY3JlZW5lci1wb3B1cCBpLWhpZGRlbiI+JykuYXBwZW5kVG8oaSk7byYmbi5hZGRDbGFzcyhvKTtjb25zdCByPWxpKCc8ZGl2IGNsYXNzPSJ0di1kcm9wZG93bi1iZWhhdmlvcl9fc2Nyb2xsIGpzLWNvbnRhaW5lciI+JykuYXBwZW5kVG8obik7cmV0dXJuIGxpKCc8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci1wb3B1cF9faXRlbXMtd3JhcCB0di1kcm9wZG93bi1iZWhhdmlvcl9faW5zY3JvbGwganMtY29udGVudCI+JykuYXBwZW5kVG8ociksaS5vbigiYmVmb3JlT3Blbk1lbnUiLCgoKT0+e3IuY3NzKCJtYXhIZWlnaHQiLGxpKHdpbmRvdykuaGVpZ2h0KCktZS5vZmZzZXQoKS50b3ArbGkod2luZG93KS5zY3JvbGxUb3AoKS00NSl9KSkudHZEcm9wZG93bih7c2Nyb2xsOiEwLG5vQW5pbWF0aW9uOiEwfSl9c2V0RmllbGRTZXRzUG9wdXAoZSl7Y29uc3QgdD10aGlzLnNldFBvcHVwKGUsInR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi13cmFwIik7dC50dkRyb3Bkb3duKCJkaXNhYmxlIik7Y29uc3QgaT10LmZpbmQoIi5qcy1jb250ZW50Iik7aS5vbigiY2xpY2siLCIuanMtc2V0IiwoZT0+e2NvbnN0IG89bGkoZS5jdXJyZW50VGFyZ2V0KTtpLmZpbmQoIi5qcy1pdGVtLWFjdGl2ZSIpLnJlbW92ZUNsYXNzKCJ0di1zY3JlZW5lci1wb3B1cF9faXRlbS0tYWN0aXZlIGpzLWl0ZW0tYWN0aXZlIiksby5hZGRDbGFzcygidHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLWFjdGl2ZSBqcy1pdGVtLWFjdGl2ZSIpO2NvbnN0IG49by5hdHRyKCJkYXRhLXNldCIpO3RoaXMuX21vZGVsLmFwcGx5RmllbGRTZXQobiksdGhpcy5fdmlldy5hZGp1c3RUb29sYmFyV2lkdGgoKSx0LnR2RHJvcGRvd24oImNsb3NlIiksKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IFpvKCJjb2x1bW5zZXRfc2VsZWN0b3IiLG4pKX0pKS5vbigiY2xpY2siLCIuanMtc2V0LWRlbGV0ZSIsKGU9Pntjb25zdCBpPWxpKGUuY3VycmVudFRhcmdldCksbj10aGlzLl9tb2RlbC5nZXRGaWVsZFNldEJ5SWQoaS5wYXJlbnQoKS5hdHRyKCJkYXRhLXNldCIpKSxyPXRoaXMuX21vZGVsLmN1cnJlbnRGaWVsZFNldElkKCk9PT1uLmlkO3RoaXMuc2hvd0NvbmZpcm1EaWFsb2coXy50KG51bGwsdm9pZCAwLG8oOTg1MjU5KSkuZm9ybWF0KHtuYW1lOm4udGl0bGV9KSkudGhlbigoZT0+e2UmJnRoaXMuX21vZGVsLnNhdmVGaWVsZFNldCh7aWQ6bi5pZCxkZWxldGU6MX0sIkRlbGV0ZSBmaWVsZCBzZXQiKS50aGVuKCgoKT0+e3RoaXMuX21vZGVsLnJlbW92ZUZhdm9yaXRlRmllbGRTZXQobi5pZCksciYmdGhpcy5fbW9kZWwuYXBwbHlGaWVsZFNldCh0aGlzLl9tb2RlbC5kZWZhdWx0RmllbGRTZXRzWzBdLmlkLG51bGwsITApLHRoaXMuX3ZpZXcuYWRqdXN0VG9vbGJhcldpZHRoKCl9KSl9KSksdC50dkRyb3Bkb3duKCJjbG9zZSIpLGUuc3RvcFByb3BhZ2F0aW9uKCl9KSkub24oImNsaWNrIiwiLmpzLXNldC1zdGFyIiwoZT0+e2NvbnN0IHQ9bGkoZS5jdXJyZW50VGFyZ2V0KSxvPXQucGFyZW50KCkuYXR0cigiZGF0YS1zZXQiKTt0LnBhcmVudCgpLnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci1wb3B1cF9faXRlbS0tZmF2b3JpdGUiKSx0aGlzLl9tb2RlbC5hZGRGYXZvcml0ZUZpZWxkU2V0KG8pLGUuc3RvcFByb3BhZ2F0aW9uKCksKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IFFvKCJhZGRlZCIsbykpfSkpLm9uKCJjbGljayIsIi5qcy1zZXQtc3Rhci1hY3RpdmUiLChlPT57Y29uc3QgdD1saShlLmN1cnJlbnRUYXJnZXQpLG89dC5wYXJlbnQoKS5hdHRyKCJkYXRhLXNldCIpO3QucGFyZW50KCkudG9nZ2xlQ2xhc3MoInR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLS1mYXZvcml0ZSIpLHRoaXMuX21vZGVsLnJlbW92ZUZhdm9yaXRlRmllbGRTZXQobyksZS5zdG9wUHJvcGFnYXRpb24oKSwoMCxZby5zZW5kU25vd1Bsb3dEYXRhKShuZXcgUW8oInJlbW92ZWQiLG8pKX0pKS5vbigiY2xpY2siLCIuanMtc2V0LXJlbmFtZSIsKGU9Pntjb25zdCBpPWxpKGUuY3VycmVudFRhcmdldCkucGFyZW50KCkuYXR0cigiZGF0YS1zZXQiKSxuPXRoaXMuX21vZGVsLmdldEZpZWxkU2V0QnlJZChpKTt0aGlzLnNob3dQcm9tcHREaWFsb2coe3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDY3MTIzKSksbGFiZWw6Xy50KG51bGwsdm9pZCAwLG8oMjQ5OTc4KSl9LG4udGl0bGUpLnRoZW4oKGU9PntlJiZlIT09bi50aXRsZSYmKHRoaXMuX21vZGVsLnNhdmVGaWVsZFNldCh7aWQ6bi5pZCx0aXRsZTplfSwiUmVuYW1lIGZpZWxkIHNldCIpLHRoaXMuX3ZpZXcuJGZpZWxkU2V0c0J1dHRvbi5yZW1vdmVDbGFzcygidHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1hY3RpdmUganMtbm8tcG9pbnRlci1ldmVudHMiKSx0aGlzLl9tb2RlbC5jdXJyZW50RmllbGRTZXRJZCgpPT1uLmlkJiZ0aGlzLl92aWV3LiRmaWVsZFNldHNCdXR0b24udGV4dChlKSwoMCxZby5zZW5kU25vd1Bsb3dEYXRhKShuZXcgZWkpKX0pKSx0LnR2RHJvcGRvd24oImNsb3NlIiksZS5zdG9wUHJvcGFnYXRpb24oKX0pKS5vbigiY2xpY2siLCIuanMtc2F2ZSIsKGU9Pnt0aGlzLmNvbmZpcm1BbmRTYXZlQ3VycmVudEZpZWxkU2V0KCkudGhlbigoZT0+ewpjb25zdCB0PXRoaXMuX21vZGVsLmdldEZpZWxkU2V0QnlJZChlLmlkKTt0aGlzLl9tb2RlbC5zZXR0aW5nc1NhdmVyLnNldFZhbHVlKHRoaXMuX21vZGVsLnNldHRpbmdLZXkrIi5maWVsZFNldElkIixlLmlkLHtmb3JjZUZsdXNoOiEwfSksdGhpcy5fdmlldy4kZmllbGRTZXRzQnV0dG9uLnRleHQodC50aXRsZSk7Y29uc3Qgbz10aGlzLiRmYXZvcml0ZXNCYXImJnRoaXMuJGZhdm9yaXRlc0Jhci5maW5kKGAuanMtZmF2b3JpdGUtaXRlbVtkYXRhLXNldD0ke2UuaWR9XWApfHxsaSgpO28uc2l6ZSgpJiZvLnJlbW92ZUNsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyX19mYXZvcml0ZXMtaXRlbS0tYWN0aXZlIil9KSkuY2F0Y2goKGU9PntlJiZjaS5sb2dFcnJvcihlKX0pKSx0LnR2RHJvcGRvd24oImNsb3NlIil9KSksdGhpcy5fbW9kZWwubG9hZGluZ0NvbXBsZXRlLnN1YnNjcmliZShudWxsLCgoKT0+e3QudHZEcm9wZG93bigiZW5hYmxlIil9KSwhMCksdC5vbigiYmVmb3JlT3Blbk1lbnUiLCgoKT0+dGhpcy5zZXRGaWVsZFNldHNQb3B1cENvbnRlbnQoaSkpKX1zZXRGaWVsZFNldHNQb3B1cENvbnRlbnQoZSl7ZS5lbXB0eSgpLHRoaXMuX2JyaWRnZS5vbldpZGdldHx8bGkoYDxkaXYgY2xhc3M9InR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcCB0di1zY3JlZW5lci1wb3B1cF9faXRlbSB0di1zY3JlZW5lci1wb3B1cF9faXRlbS0tc2F2ZSBqcy1zYXZlIj4keygwLHFvLmFwcGVuZEVsbGlwc2lzKShfLnQobnVsbCx2b2lkIDAsbygzMDM2ODQpKSl9PC9kaXY+YCkucHJlcGVuZChsaShvKDYyNjIxOCkpLmF0dHIoe2NsYXNzOiJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24taWNvbiIsd2lkdGg6IjIwIixoZWlnaHQ6IjE0IixzdHlsZToidG9wOiAtMnB4OyBtYXJnaW4tcmlnaHQ6IDEwcHg7In0pKS5hcHBlbmRUbyhlKTtjb25zdCB0PWxpKCc8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci1wb3B1cF9faXRlbS0tcHJlc2V0cyI+PC9kaXY+JykuYXBwZW5kVG8oZSk7dGhpcy5fbW9kZWwuc2V0dGluZ3MuZmllbGRTZXRzLmZvckVhY2goKGU9Pntjb25zdCBpPWxpKGA8ZGl2IGNsYXNzPSJ0di1kcm9wZG93bi1iZWhhdmlvcl9faXRlbSI+XG5cdFx0XHRcdDxkaXYgZGF0YS1zZXQ9IiR7ZS5pZH0iICBjbGFzcz0idHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwIHR2LXNjcmVlbmVyLXBvcHVwX19pdGVtIHR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLS1wcmVzZXQganMtc2V0IiB0aXRsZT0iJHtibyhlLnRpdGxlKX0iPlxuXHRcdFx0XHRcdDxzcGFuIGNsYXNzPSJqcy1maWVsZC1zZXQtbmFtZSI+PC9zcGFuPlxuXHRcdFx0XHRcdDxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lci1wb3B1cF9faXRlbS1kZWxldGUganMtc2V0LWRlbGV0ZSIgdGl0bGU9IiR7Xy50KG51bGwsdm9pZCAwLG8oNDMxNDQxKSl9Ij5cblx0XHRcdFx0XHRcdCR7bygxOTk3ODUpfVxuXHRcdFx0XHRcdDwvc3Bhbj5cblx0XHRcdFx0XHQ8c3BhbiBjbGFzcz0idHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tcmVuYW1lIGpzLXNldC1yZW5hbWUiIHRpdGxlPSIke18udChudWxsLHZvaWQgMCxvKDkyNDgyMykpfSI+XG5cdFx0XHRcdFx0XHQke28oMjQ5NDg5KX1cblx0XHRcdFx0XHQ8L3NwYW4+XG5cdFx0XHRcdFx0PHNwYW4gY2xhc3M9InR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLXN0YXItYWN0aXZlIGpzLXNldC1zdGFyLWFjdGl2ZSIgdGl0bGU9IiR7Xy50KG51bGwsdm9pZCAwLG8oNjk0MjA5KSl9Ij5cblx0XHRcdFx0XHRcdCR7byg4MDEzMjcpfVxuXHRcdFx0XHRcdDwvc3Bhbj5cblx0XHRcdFx0XHQ8c3BhbiBjbGFzcz0idHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tc3RhciBqcy1zZXQtc3RhciIgdGl0bGU9IiR7Xy50KG51bGwsdm9pZCAwLG8oOTk1MjkpKX0iPlxuXHRcdFx0XHRcdFx0JHtvKDQyNzA5KX1cblx0XHRcdFx0XHQ8L3NwYW4+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0PC9kaXY+YCkuYXBwZW5kVG8odCk7aS5maW5kKCIuanMtZmllbGQtc2V0LW5hbWUiKS50ZXh0KGhpKGUudGl0bGUpKSxpLmZpbmQoIi5qcy1zZXQiKS50b2dnbGVDbGFzcygidHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLWZhdm9yaXRlIiwtMSE9PXRoaXMuX21vZGVsLmZhdm9yaXRlRmllbGRTZXRzLmluZGV4T2YoZS5pZCkpfSkpLHRoaXMuX21vZGVsLmRlZmF1bHRGaWVsZFNldHMuZm9yRWFjaCgodD0+e2xpKGA8ZGl2IGNsYXNzPSJ0di1kcm9wZG93bi1iZWhhdmlvcl9faXRlbSI+XG5cdFx0XHRcdDxkaXYgZGF0YS1zZXQ9IiR7dC5pZH0iIGNsYXNzPSJ0di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAgdHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0ganMtc2V0Ij5cblx0XHRcdFx0XHQke3QudGl0bGV9XG5cdFx0XHRcdFx0JHt0aGlzLl9icmlkZ2Uub25XaWRnZXQ/IiI6YDxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lci1wb3B1cF9faXRlbS1zdGFyLWFjdGl2ZSBqcy1zZXQtc3Rhci1hY3RpdmUiIHRpdGxlPSIke18udChudWxsLHZvaWQgMCxvKDY5NDIwOSkpfSI+XG5cdFx0XHRcdFx0XHRcdCR7byg4MDEzMjcpfVxuXHRcdFx0XHRcdFx0PC9zcGFuPlxuXHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9InR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLXN0YXIganMtc2V0LXN0YXIiIHRpdGxlPSIke18udChudWxsLHZvaWQgMCxvKDk5NTI5KSl9Ij5cblx0XHRcdFx0XHRcdFx0JHtvKDQyNzA5KX1cblx0XHRcdFx0XHRcdDwvc3Bhbj5gfVxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdDwvZGl2PmApLmFwcGVuZFRvKGUpLmZpbmQoIi5qcy1zZXQiKS50b2dnbGVDbGFzcygidHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLWZhdm9yaXRlIiwtMSE9PXRoaXMuX21vZGVsLmZhdm9yaXRlRmllbGRTZXRzLmluZGV4T2YodC5pZCkpfSkpLGUuZmluZChgW2RhdGEtc2V0PSIke3RoaXMuX21vZGVsLmN1cnJlbnRGaWVsZFNldElkKCl9Il1gKS5hZGRDbGFzcygidHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLWFjdGl2ZSBqcy1pdGVtLWFjdGl2ZSIpfWNvbmZpcm1BbmRTYXZlQ3VycmVudEZpZWxkU2V0KCl7CmNvbnN0IGU9dGhpcy5fbW9kZWwuZ2V0RmllbGRTZXRCeUlkKHRoaXMuX21vZGVsLmN1cnJlbnRGaWVsZFNldElkKCkpLHQ9dGhpcy5fdmlldy5fdGFibGUuZmllbGRzT3JkZXIuc2xpY2UoMCk7aWYoIUl0LnR5cGUuZGlzYWJsZWQmJkl0LnR5cGUuY2hlY2tlZCl7Y29uc3QgZT10LmluZGV4T2YoIm5hbWUiKTstMSE9PWUmJnQuc3BsaWNlKGUrMSwwLCJ0eXBlIil9aWYoIUl0LmRlc2NyaXB0aW9uLmRpc2FibGVkJiZJdC5kZXNjcmlwdGlvbi5jaGVja2VkKXtjb25zdCBlPXQuaW5kZXhPZigibmFtZSIpOy0xIT09ZSYmdC5zcGxpY2UoZSsxLDAsImRlc2NyaXB0aW9uIil9Y29uc3QgaT1KU09OLnN0cmluZ2lmeSh0KSxuPWUmJiF0aGlzLl9tb2RlbC5kZWZhdWx0RmllbGRTZXRzLmZpbmQoKHQ9PnQuaWQ9PT1lLmlkKSk7cmV0dXJuIG5ldyBQcm9taXNlKCgodCxyKT0+cnVuT3JTaWduSW4oKCgpPT50aGlzLnNob3dQcm9tcHREaWFsb2coe3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDMwMzY4NCkpLGxhYmVsOl8udChudWxsLHZvaWQgMCxvKDI0OTk3OCkpfSxlJiZlLnRpdGxlfHwiIikudGhlbigobz0+e2lmKHZvaWQgMD09PW8pcmV0dXJuIHZvaWQgcigpO2NvbnN0IHM9e3RpdGxlOmJvKG8pLGNvbnRlbnQ6aX07bGV0IGE9IkNyZWF0ZSBmaWVsZCBzZXQiO24mJmUudGl0bGU9PT1vJiYocy5pZD1lLmlkLGE9IlVwZGF0ZSBmaWVsZCBzZXQiKSx0aGlzLl9tb2RlbC5zYXZlRmllbGRTZXQocyxhKS50aGVuKHQscil9KSkpLHtzb3VyY2U6InNhdmUgY29sdW1uc2V0In0pKSl9c2V0RmlsdGVyU2V0c1BvcHVwKGUpe2NvbnN0IHQ9dGhpcy5zZXRQb3B1cChlLCJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24td3JhcCIsInR2LWRyb3Bkb3duX19ib2R5LS1wb3NpdGlvbl9yaWdodCIpO3QudHZEcm9wZG93bigiZGlzYWJsZSIpO2NvbnN0IGk9dC5maW5kKCIuanMtY29udGVudCIpLG49dGhpcy5fYnJpZGdlLiRib2R5O2Z1bmN0aW9uIHIoZSl7aWYoKDAsS28uaXNSdGwpKCkpZS50b2dnbGVDbGFzcygidHYtZHJvcGRvd25fX2JvZHktLXBvc2l0aW9uX3JpZ2h0IiwhMCk7ZWxzZXtjb25zdCBvPXQud2lkdGgoKSxpPW4uZmluZCgiLnR2LXNjcmVlbmVyLXRvb2xiYXIiKS53aWR0aCgpLHI9dC5wb3NpdGlvbigpLmxlZnQscz1pLShvK3IpO2UudG9nZ2xlQ2xhc3MoInR2LWRyb3Bkb3duX19ib2R5LS1wb3NpdGlvbl9yaWdodCIscj5zKX19aS5vbigiY2xpY2siLCIuanMtc2V0IiwoZT0+e2NvbnN0IG49bGkoZS5jdXJyZW50VGFyZ2V0KTtpLmZpbmQoIi5qcy1pdGVtLWFjdGl2ZSIpLnJlbW92ZUNsYXNzKCJ0di1zY3JlZW5lci1wb3B1cF9faXRlbS0tYWN0aXZlIGpzLWl0ZW0tYWN0aXZlIiksbi5hZGRDbGFzcygidHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLWFjdGl2ZSBqcy1pdGVtLWFjdGl2ZSIpLHRoaXMuX3ZpZXcuJGZpbHRlclNldHNCdXR0b24udG9nZ2xlQ2xhc3MoImktZGlzYWJsZWQiLCEwKSxuZXcgUHJvbWlzZSgoZT0+e3RoaXMuX2JyaWRnZS5vbldpZGdldD9lKCk6dGhpcy5fbW9kZWwuaXNGaWx0ZXJTZXRDaGFuZ2VkKCk/dGhpcy5zaG93Q29uZmlybURpYWxvZyhfLnQobnVsbCx2b2lkIDAsbyg5NjMzMTgpKSkudGhlbigodD0+e3Q/dGhpcy5jb25maXJtQW5kU2F2ZUN1cnJlbnRGaWx0ZXJTZXQoKS50aGVuKGUsKHQ9Pnt0JiZjaS5sb2dFcnJvcih0KSxlKCl9KSk6ZSgpfSkpOmUoKX0pKS50aGVuKCgoKT0+e2NvbnN0IGU9aGkobi5hdHRyKCJkYXRhLXNldCIpKTt0aGlzLl9tb2RlbC5hcHBseUZpbHRlclNldChlKSx0aGlzLl9tb2RlbC50cmFja0V2ZW50KCJBcHBseSBmaWx0ZXIgc2V0ICIrZSksdGhpcy5fdmlldy4kZmlsdGVyU2V0c0J1dHRvbi50b2dnbGVDbGFzcygiaS1kaXNhYmxlZCIsITEpLCgwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyB0aShlKSl9KSksc2V0VGltZW91dCgoKCk9PnQudHZEcm9wZG93bigiY2xvc2UiKSksMjAwKX0pKS5vbigiY2xpY2siLCIuanMtc2V0LWRlbGV0ZSIsKGU9Pntjb25zdCBpPWxpKGUuY3VycmVudFRhcmdldCksbj10aGlzLl9tb2RlbC5nZXRGaWx0ZXJTZXRCeUlkKGkucGFyZW50KCkuYXR0cigiZGF0YS1zZXQiKSkscj10aGlzLl9tb2RlbC5jdXJyZW50RmlsdGVyU2V0SWQoKT09PW4uaWQ7dGhpcy5zaG93Q29uZmlybURpYWxvZyhfLnQobnVsbCx2b2lkIDAsbygyNzcwMTEpKS5mb3JtYXQoe25hbWU6bi50aXRsZX0pKS50aGVuKChlPT57ZSYmdGhpcy5fbW9kZWwuc2F2ZUZpbHRlclNldCh7aWQ6bi5pZCxkZWxldGU6MX0sIkRlbGV0ZSBmaWx0ZXIgc2V0IikudGhlbigoKCk9PntpZihyKXtjb25zdCBlPXRoaXMuX21vZGVsLmRlZmF1bHRGaWx0ZXJTZXRzLmZpbmQoKGU9PiEwIT09ZS5kaXNhYmxlZCkpfHx0aGlzLl9tb2RlbC5kZWZhdWx0RmlsdGVyU2V0c1swXTt0aGlzLl9tb2RlbC5hcHBseUZpbHRlclNldChlLmlkKX19KSl9KSksdC50dkRyb3Bkb3duKCJjbG9zZSIpLGUuc3RvcFByb3BhZ2F0aW9uKCl9KSkub24oImNsaWNrIiwiLmpzLXNldC1yZW5hbWUiLChlPT57Y29uc3QgaT1saShlLmN1cnJlbnRUYXJnZXQpLnBhcmVudCgpLmF0dHIoImRhdGEtc2V0Iiksbj10aGlzLl9tb2RlbC5nZXRGaWx0ZXJTZXRCeUlkKGkpO3RoaXMuc2hvd1Byb21wdERpYWxvZyh7dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oOTQxMjU3KSksbGFiZWw6Xy50KG51bGwsdm9pZCAwLG8oODkwOTkpKX0sbi50aXRsZSkudGhlbigoZT0+e2UmJmUhPT1uLnRpdGxlJiYodGhpcy5fbW9kZWwuc2F2ZUZpbHRlclNldCh7aWQ6bi5pZCx0aXRsZTplfSwiUmVuYW1lIGZpbHRlciBzZXQiKSx0aGlzLl92aWV3LiRmaWx0ZXJTZXRzQnV0dG9uLnJlbW92ZUNsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLWFjdGl2ZSBqcy1uby1wb2ludGVyLWV2ZW50cyIpLHRoaXMuX21vZGVsLmN1cnJlbnRGaWx0ZXJTZXRJZCgpPT1uLmlkJiZ0aGlzLl92aWV3LiRmaWx0ZXJTZXRzQnV0dG9uVGl0bGUudGV4dChlKSwoMCxZby5zZW5kU25vd1Bsb3dEYXRhKShuZXcgb2kpKX0pKSx0LnR2RHJvcGRvd24oImNsb3NlIiksZS5zdG9wUHJvcGFnYXRpb24oKQp9KSkub24oImNsaWNrIiwiLmpzLXNhdmUiLChlPT57dGhpcy5jb25maXJtQW5kU2F2ZUN1cnJlbnRGaWx0ZXJTZXQoKS50aGVuKChlPT57dm9pZCAwIT09ZS5pZD8odGhpcy5fbW9kZWwuc2V0dGluZ3NTYXZlci5zZXRWYWx1ZSh0aGlzLl9tb2RlbC5zZXR0aW5nS2V5KyIuZmlsdGVyU2V0SWQiLGUuaWQse2ZvcmNlRmx1c2g6ITB9KSx0aGlzLl92aWV3LiRmaWx0ZXJTZXRzQnV0dG9uVGl0bGUudGV4dCh0aGlzLl9tb2RlbC5nZXRGaWx0ZXJTZXRCeUlkKGUuaWQpLnRpdGxlKSk6Y2kubG9nRXJyb3IoIlVuYWJsZSB0byBnZXQgaWQgb2YgY3JlYXRlZCBzZXQiKX0pKS5jYXRjaCgoZT0+e2UmJmNpLmxvZ0Vycm9yKGUpfSkpLHQudHZEcm9wZG93bigiY2xvc2UiKX0pKSx0aGlzLiRmaWx0ZXJTZXRzUG9wdXBDb250ZW50PWksdGhpcy5fYnJpZGdlLndpZHRoPyhyKGkucGFyZW50KCkucGFyZW50KCkpLHRoaXMuX2JyaWRnZS53aWR0aC5zdWJzY3JpYmUoKCgpPT57cihpLnBhcmVudCgpLnBhcmVudCgpKX0pKSk6bGkod2luZG93KS5vbigicmVzaXplIiwoKCk9PntyKGkucGFyZW50KCkucGFyZW50KCkpfSkpLHRoaXMuX21vZGVsLmxvYWRpbmdDb21wbGV0ZS5zdWJzY3JpYmUobnVsbCwoKCk9Pnt0LnR2RHJvcGRvd24oImVuYWJsZSIpfSksITApLHQub24oImJlZm9yZU9wZW5NZW51IiwoKCk9Pnt0aGlzLnNldEZpbHRlclNldHNQb3B1cENvbnRlbnQoKX0pKX1zZXRGaWx0ZXJTZXRzUG9wdXBDb250ZW50KCl7Y29uc3QgZT10aGlzLiRmaWx0ZXJTZXRzUG9wdXBDb250ZW50O2UuZW1wdHkoKSx0aGlzLl9icmlkZ2Uub25XaWRnZXR8fGxpKGA8ZGl2IGNsYXNzPSJ0di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAgdHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0gdHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLXNhdmUgdHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLXNwYWNlLWxlZnQganMtc2F2ZSI+JHsoMCxxby5hcHBlbmRFbGxpcHNpcykoXy50KG51bGwsdm9pZCAwLG8oMzk0MTMxKSkpfTwvZGl2PmApLnByZXBlbmQobGkobyg2MjYyMTgpKS5hdHRyKHtjbGFzczoidHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLWljb24iLHdpZHRoOiIyMCIsaGVpZ2h0OiIxNCIsc3R5bGU6InRvcDogLTJweDsgbWFyZ2luLXJpZ2h0OiAxMHB4OyJ9KSkuYXBwZW5kVG8oZSk7Y29uc3QgdD1saSgnPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLXByZXNldHMiPjwvZGl2PicpLmFwcGVuZFRvKGUpO3RoaXMuX21vZGVsLnNldHRpbmdzLmZpbHRlclNldHMuZm9yRWFjaCgoZT0+e2NvbnN0IGk9bGkoYDxkaXYgY2xhc3M9InR2LWRyb3Bkb3duLWJlaGF2aW9yX19pdGVtIj5cblx0XHRcdFx0PGRpdiBkYXRhLXNldD0iJHtlLmlkfSIgY2xhc3M9InR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcCB0di1zY3JlZW5lci1wb3B1cF9faXRlbSB0di1zY3JlZW5lci1wb3B1cF9faXRlbS0tcHJlc2V0IHR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLS1zcGFjZS1sZWZ0IGpzLXNldCI+XG5cdFx0XHRcdFx0PHNwYW4gY2xhc3M9ImpzLWZpbHRlci1zZXQtbmFtZSI+PC9zcGFuPlxuXHRcdFx0XHRcdDxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lci1wb3B1cF9faXRlbS1yZW5hbWUganMtc2V0LXJlbmFtZSIgdGl0bGU9IiR7Xy50KG51bGwsdm9pZCAwLG8oOTI0ODIzKSl9Ij5cblx0XHRcdFx0XHRcdCR7bygyNDk0ODkpfVxuXHRcdFx0XHRcdDwvc3Bhbj5cblx0XHRcdFx0XHQ8c3BhbiBjbGFzcz0idHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tZGVsZXRlIHR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLWRlbGV0ZS0tcmlnaHQganMtc2V0LWRlbGV0ZSIgdGl0bGU9IiR7Xy50KG51bGwsdm9pZCAwLG8oNDMxNDQxKSl9Ij5cblx0XHRcdFx0XHRcdCR7bygxOTk3ODUpfVxuXHRcdFx0XHRcdDwvc3Bhbj5cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHQ8L2Rpdj5gKTtpLmZpbmQoIi5qcy1maWx0ZXItc2V0LW5hbWUiKS50ZXh0KGhpKGUudGl0bGUpKSxpLmFwcGVuZFRvKHQpfSkpLHRoaXMuX21vZGVsLmRlZmF1bHRGaWx0ZXJTZXRzLmZvckVhY2goKHQ9Pnt0LmRpc2FibGVkfHxsaShgPGRpdiBjbGFzcz0idHYtZHJvcGRvd24tYmVoYXZpb3JfX2l0ZW0iPlxuXHRcdFx0XHQ8ZGl2IGRhdGEtc2V0PSIke3QuaWR9IiBjbGFzcz0idHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwIHR2LXNjcmVlbmVyLXBvcHVwX19pdGVtIHR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLS1zcGFjZS1sZWZ0IGpzLXNldCI+XG5cdFx0XHRcdFx0JHt0LnRpdGxlfVxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdDwvZGl2PmApLmFwcGVuZFRvKGUpfSkpLGUuZmluZChgW2RhdGEtc2V0PSIke3RoaXMuX21vZGVsLmN1cnJlbnRGaWx0ZXJTZXRJZCgpfSJdYCkuYWRkQ2xhc3MoInR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLS1hY3RpdmUganMtaXRlbS1hY3RpdmUiKX1jb25maXJtQW5kU2F2ZUN1cnJlbnRGaWx0ZXJTZXQoKXtjb25zdCBlPXRoaXMuX21vZGVsLmdldEZpbHRlclNldEJ5SWQodGhpcy5fbW9kZWwuY3VycmVudEZpbHRlclNldElkKCkpLHQ9SlNPTi5zdHJpbmdpZnkodGhpcy5fbW9kZWwuY3VycmVudEZpbHRlclN0YXRlKCkpLGk9ZSYmIXRoaXMuX21vZGVsLmRlZmF1bHRGaWx0ZXJTZXRzLmZpbmQoKHQ9PnQuaWQ9PT1lLmlkKSk7cmV0dXJuIG5ldyBQcm9taXNlKCgobixyKT0+cnVuT3JTaWduSW4oKCgpPT50aGlzLnNob3dQcm9tcHREaWFsb2coe3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDM5NDEzMSkpLGxhYmVsOl8udChudWxsLHZvaWQgMCxvKDg5MDk5KSl9LGUudGl0bGUpLnRoZW4oKG89PntpZih2b2lkIDA9PT1vKXJldHVybiB2b2lkIHIoKTtjb25zdCBzPXt0aXRsZTpibyhvKSxjb250ZW50OnR9O2xldCBhPSJDcmVhdGUgZmlsdGVyIHNldCI7aSYmZS50aXRsZT09PW8mJihzLmlkPWUuaWQsYT0iVXBkYXRlIGZpbHRlciBzZXQiKSx0aGlzLl9tb2RlbC5zYXZlRmlsdGVyU2V0KHMsYSkudGhlbihuLHIpfSkpKSx7c291cmNlOiJzYXZlIHNjcmVlbiJ9KSkpfXNldEhpZGRlbkZhdm9yaXRlc1BvcHVwKGUsdCxvLGkpewplLmFkZENsYXNzKCJ0di1kcm9wZG93bi1iZWhhdmlvcl9fYnV0dG9uIik7Y29uc3Qgbj1saSgnPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdG9vbGJhcl9fZmF2b3JpdGVzLW1vcmUtd3JhcCI+Jyk7bi5pbnNlcnRBZnRlcihlKS5hcHBlbmQoZSk7Y29uc3Qgcj1saSgnPGRpdiBjbGFzcz0idHYtZHJvcGRvd25fX2JvZHkgdHYtZHJvcGRvd25fX2JvZHktLW92ZXItdHJpZ2dlciB0di1kcm9wZG93bi1iZWhhdmlvcl9fYm9keSB0di1kcm9wZG93bl9fYm9keS0tcG9zaXRpb25fcmlnaHQgaS1oaWRkZW4iPicpLmFwcGVuZFRvKG4pLHM9bGkoJzxkaXYgY2xhc3M9InR2LWRyb3Bkb3duLWJlaGF2aW9yX19zY3JvbGwganMtY29udGFpbmVyIj4nKS5hcHBlbmRUbyhyKSxhPWxpKCc8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci1wb3B1cF9faXRlbXMtd3JhcCB0di1kcm9wZG93bi1iZWhhdmlvcl9faW5zY3JvbGwganMtY29udGVudCI+JykuYXBwZW5kVG8ocyk7YS5vbigiY2xpY2siLCIuanMtc2V0IiwoZT0+e2NvbnN0IHQ9bGkoZS5jdXJyZW50VGFyZ2V0KS5hdHRyKCJkYXRhLXNldCIpO2kodCksKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IFpvKCJjb2x1bW5zZXRfZmF2b3JpdGVzX3BpY2tlciIsdCkpLG4udHZEcm9wZG93bigiY2xvc2UiKX0pKTtjb25zdCBsPSgpPT57YS5lbXB0eSgpLHQoKS5mb3JFYWNoKChlPT57bGkoYDxkaXYgY2xhc3M9InR2LWRyb3Bkb3duLWJlaGF2aW9yX19pdGVtIj5cblx0XHRcdFx0XHQ8ZGl2IGRhdGEtc2V0PSIke2UuaWR9IiBjbGFzcz0idHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwIHR2LXNjcmVlbmVyLXBvcHVwX19pdGVtIGpzLXNldCI+XG5cdFx0XHRcdFx0XHQke2JvKGUudGl0bGUpfVxuXHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHQ8L2Rpdj5gKS50b2dnbGVDbGFzcygidHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLWFjdGl2ZSIsbyhlLmlkKSkuYXBwZW5kVG8oYSl9KSksbi50dkRyb3Bkb3duKCJ1cGRhdGVTY3JvbGwiKX07cmV0dXJuIG4ub24oImJlZm9yZU9wZW5NZW51IiwoKCk9PntsKCkscy5jc3MoIm1heEhlaWdodCIsbGkod2luZG93KS5oZWlnaHQoKS1lLm9mZnNldCgpLnRvcCtsaSh3aW5kb3cpLnNjcm9sbFRvcCgpLTQ1KX0pKS5vbigicmVzZXRDb250ZW50IiwoKCk9PmwoKSkpLm9uKCJmb3JjZUNsb3NlIiwoKCk9Pm4udHZEcm9wZG93bigiY2xvc2UiKSkpLnR2RHJvcGRvd24oe3Njcm9sbDohMCxub0FuaW1hdGlvbjohMH0pfXNldFNlbGVjdFBvcHVwKGUsdCl7Y29uc3R7d3JhcENsYXNzOm8sYnV0dG9uQ2xhc3M6aSxkcm9wZG93bkNsYXNzOm59PWUse2J1dHRvblRpdGxlOnJ9PXQscz1saShgPGRpdiBjbGFzcz0iJHtvfSB0di1kcm9wZG93biB0di1kcm9wZG93bi0taW5saW5lIHR2LWRyb3Bkb3duLWJlaGF2aW9yIj5gKSxhPWxpKGA8ZGl2IGNsYXNzPSJ0di1kcm9wZG93bl9fYnV0dG9uIHR2LWRyb3Bkb3duLWJlaGF2aW9yX19idXR0b24gJHtpfSIgdGl0bGU9IiR7cn0iPmApLmFwcGVuZFRvKHMpLGw9bGkoYDxkaXYgY2xhc3M9InR2LWRyb3Bkb3duX19ib2R5IHR2LWRyb3Bkb3duLWJlaGF2aW9yX19ib2R5IHR2LWRyb3Bkb3duX19ib2R5LS1vdmVyLXRyaWdnZXIgdHYtZHJvcGRvd25fX2JvZHktLXBvc2l0aW9uX3JpZ2h0IGktaGlkZGVuICR7bn0iPmApLmFwcGVuZFRvKHMpLGM9bGkoJzxkaXYgY2xhc3M9InR2LWRyb3Bkb3duLWJlaGF2aW9yX19zY3JvbGwganMtY29udGFpbmVyIj4nKS5hcHBlbmRUbyhsKSxkPWxpKCc8ZGl2IGNsYXNzPSJ0di1kcm9wZG93bi1iZWhhdmlvcl9faW5zY3JvbGwganMtY29udGVudCI+JykuYXBwZW5kVG8oYyk7cmV0dXJuIHMub24oImJlZm9yZU9wZW5NZW51IiwoKCk9PntjLmNzcygibWF4SGVpZ2h0IixsaSh3aW5kb3cpLmhlaWdodCgpLWEub2Zmc2V0KCkudG9wK2xpKHdpbmRvdykuc2Nyb2xsVG9wKCktNDUpfSkpLm9uKCJmb3JjZUNsb3NlIiwoKCk9PnMudHZEcm9wZG93bigiY2xvc2UiKSkpLnR2RHJvcGRvd24oe3Njcm9sbDohMCwkd3JhcDphLCRib2R5Omwsbm9BbmltYXRpb246ITB9KSx7JHdyYXA6cywkYnV0dG9uOmEsJGRyb3Bkb3duQm9keTpsLCRkcm9wZG93bkNvbnRlbnQ6ZH19c2V0TWFya2V0c0xpc3QoZSl7dGhpcy5fbWFya2V0cz1lfXVwZGF0ZVJlZnJlc2hJbnRlcnZhbHNQb3B1cENvbnRlbnQoKXtpZighdGhpcy4kZmlsdGVyUmVmcmVzaEludGVydmFsc1BvcHVwfHwhdGhpcy4kZmlsdGVyUmVmcmVzaEludGVydmFsc1BvcHVwLmxlbmd0aClyZXR1cm47dGhpcy4kZmlsdGVyUmVmcmVzaEludGVydmFsc1BvcHVwLmVtcHR5KCk7Y29uc3QgZT10aGlzLl92aWV3LnJlZnJlc2hJbnRlcnZhbHM7Zm9yKGxldCB0PTA7dDxlLmxlbmd0aDsrK3Qpe2NvbnN0IGk9ZVt0XTtsZXQgbj1udWxsO2lmKC0xPT09aSluPV8udChudWxsLHZvaWQgMCxvKDk5ODYxNikpO2Vsc2V7Y29uc3QgZT1pLzYwfDA7bj0xPT09ZT9fLnQobnVsbCx2b2lkIDAsbyg4Njk3NTYpKTplPDE/dGhpcy5fbW9kZWwuaXNGYXN0UmVmcmVzaD9fLnQobnVsbCx2b2lkIDAsbyg4OTg5ODcpKTpfLnQobnVsbCx7cGx1cmFsOiJSZWZyZXNoIGV2ZXJ5IHswfSBzZWNvbmRzIixjb3VudDppfSxvKDYzMTQ0NykpLmZvcm1hdChpKTpfLnQobnVsbCx7cGx1cmFsOiJSZWZyZXNoIGV2ZXJ5IHswfSBtaW51dGVzIixjb3VudDplfSxvKDU1NDcyMikpLmZvcm1hdChlKX0KbGkoYDxkaXYgY2xhc3M9InR2LWRyb3Bkb3duLWJlaGF2aW9yX19pdGVtIj5cblx0XHRcdFx0PGxhYmVsIGNsYXNzPSJ0di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAgdHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0ganMtaW50ZXJ2YWwiPlxuXHRcdFx0XHRcdDxzcGFuIGNsYXNzPSJ0di1jb250cm9sLXJhZGlvIj5cblx0XHRcdFx0XHRcdDxpbnB1dCB0eXBlPSJyYWRpbyIgbmFtZT0iaW50ZXJ2YWwiIHZhbHVlPSIke2l9IiBjbGFzcz0idHYtY29udHJvbC1yYWRpb19faW5wdXQiPlxuXHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9InR2LWNvbnRyb2wtcmFkaW9fX2JveCI+PC9zcGFuPlxuXHRcdFx0XHRcdDwvc3Bhbj5cblx0XHRcdFx0XHQ8c3BhbiBjbGFzcz0idHYtY29udHJvbC1yYWRpb19fbGFiZWwgdHYtc2NyZWVuZXItcG9wdXBfX3JlZnJlc2gtaW50ZXJ2YWwtbGFiZWwiPiR7bn08L3NwYW4+XG5cdFx0XHRcdDwvbGFiZWw+XG5cdFx0XHQ8L2Rpdj5gKS5hcHBlbmRUbyh0aGlzLiRmaWx0ZXJSZWZyZXNoSW50ZXJ2YWxzUG9wdXApfX1zZXRSZWZyZXNoSW50ZXJ2YWxzUG9wdXAoZSl7Y29uc3QgdD10aGlzLnNldFBvcHVwKGUsInR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi13cmFwIiwidHYtc2NyZWVuZXItcG9wdXBfX3JlZnJlc2gtaW50ZXJ2YWxzIik7ZS50b2dnbGVDbGFzcygianMtcHJldmVudC1kcm9wZG93biIsIXdpbmRvdy5pc19hdXRoZW50aWNhdGVkKSxlLm9uKCJjbGljayIsKCgpPT5ydW5PclNpZ25JbigoKCk9Pnt9KSx7c291cmNlOiJTY3JlZW5lciByZWZyZXNoIG1vZGUgYnV0dG9uIn0pKSksd2luZG93LmxvZ2luU3RhdGVDaGFuZ2Uuc3Vic2NyaWJlKG51bGwsKCgpPT57ZS50b2dnbGVDbGFzcygianMtcHJldmVudC1kcm9wZG93biIsIXdpbmRvdy5pc19hdXRoZW50aWNhdGVkKX0pKTtjb25zdCBvPXQuZmluZCgiLmpzLWNvbnRlbnQiKTt0aGlzLiRmaWx0ZXJSZWZyZXNoSW50ZXJ2YWxzUG9wdXA9byx0aGlzLnVwZGF0ZVJlZnJlc2hJbnRlcnZhbHNQb3B1cENvbnRlbnQoKSx0Lm9uKCJiZWZvcmVPcGVuTWVudSIsKCgpPT57by5maW5kKGBpbnB1dFt2YWx1ZT0ke3RoaXMuX21vZGVsLnJlZnJlc2hJbnRlcnZhbH1dYCkucHJvcCgiY2hlY2tlZCIsITApfSkpLG8ub24oImNsaWNrIiwiLmpzLWludGVydmFsIiwoZT0+e2UucHJldmVudERlZmF1bHQoKTtjb25zdCBpPStsaShlLmN1cnJlbnRUYXJnZXQpLmZpbmQoImlucHV0IikudmFsKCk7c2V0VGltZW91dCgoKCk9PnQudHZEcm9wZG93bigiY2xvc2UiKSksbW8uZHVyLzIpLGkhPT10aGlzLl9tb2RlbC5yZWZyZXNoSW50ZXJ2YWwmJih0aGlzLl9tb2RlbC5pc0Zhc3RSZWZyZXNoPyhvLmZpbmQoYGlucHV0W3ZhbHVlPSR7aX1dYCkucHJvcCgiY2hlY2tlZCIsITApLHRoaXMuX21vZGVsLnJlZnJlc2hJbnRlcnZhbD1pKTpHbygoKCk9PntvLmZpbmQoYGlucHV0W3ZhbHVlPSR7aX1dYCkucHJvcCgiY2hlY2tlZCIsITApLHRoaXMuX21vZGVsLnJlZnJlc2hJbnRlcnZhbD1pfSksWG8uUHJvZHVjdEZlYXR1cmVzRW51bS5TQ1JFRU5FUl9BVVRPX1JFRlJFU0gse2ZlYXR1cmU6InNjcmVlbmVyQXV0b1JlZnJlc2gifSx7dmFsdWU6LTE9PT1pfSksKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IGFpKGkpKSl9KSl9c2V0U2VsZWN0SW50ZXJ2YWxDb250ZW50KGUsdCxvPSgpPT57fSl7dC5lbXB0eSgpO2NvbnN0IGk9dGhpcy5fbW9kZWwuc2VsZWN0ZWRJbnRlcnZhbElkO2Zvcihjb25zdCBlIG9mIGxlKWxpKGA8ZGl2IGNsYXNzPSJ0di1kcm9wZG93bi1iZWhhdmlvcl9faXRlbSI+XG5cdFx0XHRcdDxkaXYgZGF0YS1pbnRlcnZhbD0iJHtlLmlkfSIgdGl0bGU9IiR7ZS50aXRsZX0iIGNsYXNzPSJ0di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAgdHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0ganMtc2VsZWN0LWludGVydmFsICR7ZS5pZD09PWk/InR2LXNjcmVlbmVyLXBvcHVwX19zZWxlY3QtaW50ZXJ2YWwtYWN0aXZlIjoiIn0iPlxuXHRcdFx0XHRcdCR7ZS5zaG9ydFRpdGxlfVxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdDwvZGl2PmApLmFwcGVuZFRvKHQpO2Uub24oImFmdGVyT3Blbk1lbnUiLCgoKT0+e3Qub24oImNsaWNrIiwiLmpzLXNlbGVjdC1pbnRlcnZhbCIsKGk9PntpLnByZXZlbnREZWZhdWx0KCk7Y29uc3Qgbj10aGlzLl9tb2RlbC5zZWxlY3RlZEludGVydmFsSWQ7bGV0IHI9ZGUobGkoaS5jdXJyZW50VGFyZ2V0KS5kYXRhKCJpbnRlcnZhbCIpKTtpZighcnx8bj09PXIuaWQpcmV0dXJuO2NvbnN0IHM9dGhpcy5fbW9kZWwuZW9kUmVzdHJpY3Rpb24udmFsdWUoKTtHbygoKCk9PntzIT09V28uTm9uZSYmIjFkIiE9PXIuaWQ/KCgwLElvLm9wZW5QYXl3YWxsKSh7ZmVhdHVyZToic2NyZWVuZXJJbnRlcnZhbHNFb2QifSkscj1kZSgiMWQiKSk6KHQuZmluZCgiLnR2LXNjcmVlbmVyLXBvcHVwX19zZWxlY3QtaW50ZXJ2YWwtYWN0aXZlIikucmVtb3ZlQ2xhc3MoInR2LXNjcmVlbmVyLXBvcHVwX19zZWxlY3QtaW50ZXJ2YWwtYWN0aXZlIiksdC5maW5kKGBbZGF0YS1pbnRlcnZhbD0nJHtyLmlkfSddYCkuYWRkQ2xhc3MoInR2LXNjcmVlbmVyLXBvcHVwX19zZWxlY3QtaW50ZXJ2YWwtYWN0aXZlIiksbyhyKSl9KSxYby5Qcm9kdWN0RmVhdHVyZXNFbnVtLlNDUkVFTkVSX0lOVEVSVkFMUyx7ZmVhdHVyZToic2NyZWVuZXJJbnRlcnZhbHMifSx7aW50ZXJ2YWw6ci5pZH0pLHNldFRpbWVvdXQoKCgpPT57ZS50dkRyb3Bkb3duKCJjbG9zZSIpLHQub2ZmKCJjbGljayIpfSksbW8uZHVyLzIpLCgwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBKbyhyLmlkKSl9KSl9KSl9fWZ1bmN0aW9uIGhpKGUpe3JldHVybiBibyhlLCEwKX12YXIgdWk9byg1ODcxNjgpLF9pPW8oMTY3NTAyKTtvKDE3MjM3MSksbyg1OTMyNjMpO2NsYXNzIHBpe2NvbnN0cnVjdG9yKGUsdCl7dGhpcy5ldmVudD0ib3Blbl9maWx0ZXJzX2RpYWxvZyIsdGhpcy5sb2NhdGlvbj0idG9vbGJhciIsdGhpcy52YWx1ZT0iIix0aGlzLnNvdXJjZT1lLHRoaXMuc3RhdGU9dD4wPyJ3aXRoX2NvdW50ZXIiOiJ3aXRob3V0X2NvdW50ZXIifX1jbGFzcyBtaXtjb25zdHJ1Y3RvcihlKXsKdGhpcy5ldmVudD0iY2hhbmdlX2ZpbHRlcl9kaWFsb2dfdGFiIix0aGlzLnNvdXJjZT0iZmlsdGVyX2RpYWxvZ190YWJfYnV0dG9uIix0aGlzLmxvY2F0aW9uPSJmaWx0ZXJfZGlhbG9nIix0aGlzLnZhbHVlPSIiLHRoaXMuc3RhdGU9ZX19Y2xhc3MgZ2l7Y29uc3RydWN0b3IoKXt0aGlzLmV2ZW50PSJmaWx0ZXJfZGlhbG9nX3NlYXJjaF9pbnB1dF9jbGljayIsdGhpcy5zb3VyY2U9ImZpbHRlcl9kaWFsb2dfc2VhcmNoX2lucHV0Iix0aGlzLmxvY2F0aW9uPSJmaWx0ZXJfZGlhbG9nIix0aGlzLnN0YXRlPSJ1c2VyX2NsaWNrZWQiLHRoaXMudmFsdWU9IiJ9fWNsYXNzIHZpe2NvbnN0cnVjdG9yKGUpe3RoaXMuZXZlbnQ9ImZpbHRlcl9kaWFsb2dfc2VhcmNoX25vX3Rlcm1zX2ZvdW5kIix0aGlzLnNvdXJjZT0iZmlsdGVyX2RpYWxvZ19zZWFyY2hfaW5wdXQiLHRoaXMubG9jYXRpb249ImZpbHRlcl9kaWFsb2ciLHRoaXMuc3RhdGU9ImVtcHR5X3NlYXJjaF9yZXN1bHQiLHRoaXMudmFsdWU9IiIsdGhpcy52YWx1ZT1lfX1jbGFzcyBmaXtjb25zdHJ1Y3RvcihlKXt0aGlzLmV2ZW50PSJmaWx0ZXJfZGlhbG9nX2FwcGxpZWRfZmlsdGVycyIsdGhpcy5zb3VyY2U9InVua25vd24iLHRoaXMubG9jYXRpb249ImZpbHRlcl9kaWFsb2ciLHRoaXMuc3RhdGU9aWkuVXNlckFjdGlvblN0YXRlLkFwcGx5RmlsdGVycyx0aGlzLnZhbHVlPWV9fWNsYXNzIHlpe2NvbnN0cnVjdG9yKGUsdCxvLGkpe3RoaXMuZXZlbnQ9ImZpbHRlcl91c2UiLHRoaXMudmFsdWU9ZSx0aGlzLnN0YXRlPXQsdGhpcy5zb3VyY2U9byx0aGlzLmxvY2F0aW9uPWl9fWNsYXNzIGJpe2NvbnN0cnVjdG9yKGUpe3RoaXMuZXZlbnQ9ImFwcGx5X2ZsYWdnZWRfZmlsdGVyIix0aGlzLnNvdXJjZT0iZmxhZ2dlZF9tYXJrZXIiLHRoaXMubG9jYXRpb249ImhlYWRlciIsdGhpcy5zdGF0ZT0iZW5hYmxlZCIsdGhpcy52YWx1ZT1lfX12YXIgU2k9byg0ODI1MDQpO2NvbnN0IHdpPXtmaWx0ZXJzU2VhcmNoOmA8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci1zZWFyY2gganMtc2NyZWVuZXItc2VhcmNoIj5cblx0XHQ8aW5wdXQgdHlwZT0idGV4dCIgY2xhc3M9InR2LXNjcmVlbmVyLXNlYXJjaF9faW5wdXQganMtc2VhcmNoLWlucHV0IiBwbGFjZWhvbGRlcj0iJHtfLnQobnVsbCx2b2lkIDAsbyg1OTg3KSl9Ij5cblx0XHQke28oNzU1MDQxKX1cblx0XHQ8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci1zZWFyY2hfX3Jlc2V0IGpzLXNlYXJjaC1yZXNldCI+XG5cdFx0XHQ8c3BhbiBjbGFzcz0idHYtc2NyZWVuZXItc2VhcmNoX19yZXNldC1pY29uIj4ke28oMTQ3MDc4KX08L3NwYW4+XG5cdFx0XHQke18udChudWxsLHZvaWQgMCxvKDgyNjMxNCkpfVxuXHRcdDwvZGl2PlxuXHQ8L2Rpdj5gLGZpbHRlcnNCb2R5Oic8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci1kaWFsb2cganMtc2NyZWVuZXItZGlhbG9nIj5cblx0XHQ8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci1kaWFsb2dfX3dyYXAganMtZmlsdGVycy13cmFwIj48L2Rpdj5cblx0PC9kaXY+J307dmFyIENpPVtfLnQobnVsbCx2b2lkIDAsbygyMzM2OTApKSxfLnQobnVsbCx2b2lkIDAsbyg5OTQwMjUpKSxfLnQobnVsbCx2b2lkIDAsbygzNjkzMjUpKSxfLnQobnVsbCx7Y29udGV4dDoic3R1ZHkifSxvKDQ3NzQ3NSkpXTtjbGFzcyBraXtjb25zdHJ1Y3RvcihlLHQsbyl7dGhpcy5fbW9kZWw9ZSx0aGlzLl92aWV3PXQsdGhpcy5fYnJpZGdlPW8sdGhpcy5fZGlhbG9nVGl0bGU9InNjcmVlbmVyX2ZpbHRlcnMiLHRoaXMuX2NhdGVnb3JpZXM9bnVsbH1zaG93RmlsdGVyc0RpYWxvZyhlKXtyZXR1cm4gUHJvbWlzZS5hbGwoW28uZSg4NzIzOCksby5lKDMxODM3KSxvLmUoMjA5NzEpLG8uZSg4OTE5NSksby5lKDM3MzkwKSxvLmUoNjQ5OTcpXSkudGhlbihvLmJpbmQobyw2ODY5NzUpKS50aGVuKCgoe2NyZWF0ZVRhYmJlZERpYWxvZzp0fSk9Pnt0aGlzLl9jYXRlZ29yaWVzPXRoaXMuX2dldENhdGVnb3JpZXMoKTtjb25zdCBvPXRoaXMuX2NhdGVnb3JpZXMubWFwKChlPT4oe25hbWU6Q2lbZV19KSkpLHtkaWFsb2c6aSx0YWJzOm59PXQoe3RhYnM6byxhZGRpdGlvbmFsSGVhZGVyQ29udGVudDp3aS5maWx0ZXJzU2VhcmNoLHdpZHRoOk1hdGgubWluKDE0MDAsTWF0aC5tYXgoNjQ2LFNpKHdpbmRvdykud2lkdGgoKS0yMDApKSxoZWlnaHQ6TWF0aC5tYXgoNDUwLFNpKHdpbmRvdykuaGVpZ2h0KCktMjAwKSxjb250ZW50QWRkQ2xhc3M6ImpzLWRpYWxvZy1jb250ZW50IixkcmFnZ2FibGU6ITEsZG9Ob3RDcmVhdGVQYWdlczohMCxkZXN0cm95T25DbG9zZTohMH0pLHI9aS4kY29udGVudC5maW5kKCIuanMtZGlhbG9nLWNvbnRlbnQiKSxzPWkuJGNvbnRlbnQuZmluZCgiLmpzLXNjcmVlbmVyLXNlYXJjaCIpO3RoaXMuJGZpZWxkU2VhcmNoSW5wdXQ9cy5maW5kKCIuanMtc2VhcmNoLWlucHV0IiksdGhpcy4kZmllbGRTZWFyY2hJbnB1dC5vbigiaW5wdXQiLCgwLHVpLmRlZmF1bHQpKChlPT57dGhpcy5fdmlldy51cGRhdGVGaWx0ZXJTZWFyY2goKSxpLnVwZGF0ZVNjcm9sbCgpfSksMTAwLHtsZWFkaW5nOiExLHRyYWlsaW5nOiEwfSkpLHRoaXMuJGZpZWxkU2VhcmNoSW5wdXQub24oImNsaWNrIiwoKCk9PnsoMCxZby5zZW5kU25vd1Bsb3dEYXRhKShuZXcgZ2kpfSkpO3MuZmluZCgiLmpzLXNlYXJjaC1yZXNldCIpLm9uKCJjbGljayIsKGU9PnRoaXMuX3ZpZXcucmVzZXRBbGxGaWx0ZXJzKCkpKTtjb25zdCBhPSgpPT57Y29uc3QgZT10aGlzLiRmaWx0ZXJzUG9wdXAuZ2V0KDApLmNsaWVudFdpZHRoPj0xMjkyO2UmJiF0aGlzLl8kZmlsdGVyc1dyYXAuaXMoIi5qcy0yY29sIik/dGhpcy5fJGZpbHRlcnNXcmFwLmFkZENsYXNzKCJqcy0yY29sIHR2LXNjcmVlbmVyLWRpYWxvZ19fd3JhcC0tMmNvbCIpOiFlJiZ0aGlzLl8kZmlsdGVyc1dyYXAuaXMoIi5qcy0yY29sIikmJnRoaXMuXyRmaWx0ZXJzV3JhcC5yZW1vdmVDbGFzcygianMtMmNvbCB0di1zY3JlZW5lci1kaWFsb2dfX3dyYXAtLTJjb2wiKX07dGhpcy4kZmlsdGVyc1BvcHVwPVNpKHdpLmZpbHRlcnNCb2R5KSwKdGhpcy5fJGZpbHRlcnNXcmFwPXRoaXMuJGZpbHRlcnNQb3B1cC5maW5kKCIuanMtZmlsdGVycy13cmFwIik7Y29uc3QgbD1bXTt0aGlzLl92aWV3LnNvcnRlZEZpZWxkcy5mb3JFYWNoKChlPT57SXRbZV0mJiFJdFtlXS5kaXNhYmxlZCYmSXRbZV0uY29udHJvbCYmbC5wdXNoKHRoaXMuX3ZpZXcuYWRkRmllbGRGaWx0ZXIoZSx0aGlzLl8kZmlsdGVyc1dyYXApKX0pKSxQcm9taXNlLmFsbChsKS50aGVuKCgoKT0+dGhpcy5fJGZpbHRlcnNXcmFwLmZpbmQoIi5qcy13cmFwIikuZWFjaCgoKGUsdCk9Pnt0aGlzLl92aWV3LmluaXRGaWx0ZXJIYW5kbGVycyhTaSh0KSl9KSkpKSx0aGlzLiRmaWx0ZXJzUG9wdXAuYXBwZW5kVG8ociksZSYmdGhpcy5fbW9kZWwuc2V0dGluZ3NTYXZlci5zZXRWYWx1ZSh0aGlzLl9tb2RlbC5zZXR0aW5nS2V5KyIuZmlsdGVycy50YWIiLDApLG4udGFiQ2hhbmdlZC5zdWJzY3JpYmUobnVsbCwoZT0+e3RoaXMuZmlsdGVyc0RpYWxvZ1RhYkNoYW5nZWQoZSksaS5zY3JvbGxUb1N0YXJ0KCksMCE9PWUmJigwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBtaShlKSl9KSksdGhpcy5fdmlldy4kZmlsdGVyc0J1dHRvbi5hZGRDbGFzcygianMtbm8tcG9pbnRlci1ldmVudHMiKSxpLm9uKCJzY3JvbGwiLCgoKT0+e2kuJGNvbnRlbnQuZmluZCgiLmpzLWRyb3Bkb3duLXRvZ2dsZS5pLW9wZW5lZCIpLnRyaWdnZXIoInJlc2V0UG9zaXRpb24iLG51bGwsci5wYXJlbnQoKSl9KSk7Y29uc3QgYz10aGlzLl9nZXRBY3RpdmVGaWx0ZXJzKCExKS5zb3J0KCk7aS5vbigiZGVzdHJveSIsKGU9Pntjb25zdCB0PXRoaXMuX2dldEFjdGl2ZUZpbHRlcnMoITEpLnNvcnQoKTtmb3IoY29uc3QgZSBpbiBJdCkiY29uZGl0aW9uIj09PUl0W2VdLmNvbnRyb2wmJkl0W2VdLnZhbHVlJiYobXQoSXRbZV0udmFsdWUudmFsdWUpfHxtdChJdFtlXS52YWx1ZS5vcGVyYXRvcikpJiYoSXRbZV0udmFsdWU9bnVsbCk7U2koIi50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZCIpLnJlbW92ZUNsYXNzKCJqcy1oaWRkZW4iKSx0aGlzLiRmaWVsZFNlYXJjaElucHV0LnZhbCgiIiksdGhpcy4kZmlsdGVyc1BvcHVwLnJlbW92ZSgpLGRlbGV0ZSB0aGlzLiRmaWx0ZXJzUG9wdXAsdGhpcy5fdmlldy4kZmlsdGVyc0J1dHRvbi5yZW1vdmVDbGFzcygianMtbm8tcG9pbnRlci1ldmVudHMiKSxkZWxldGUgdGhpcy5fZGlhbG9nLFNpKHdpbmRvdykub2ZmKCJyZXNpemUiLGEpLCgwLF9pLmRlZmF1bHQpKGMsdCl8fCgwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBmaSh0LmpvaW4oIiwgIikpKX0pKSx0aGlzLl9tb2RlbC50cmFja0V2ZW50KCJPcGVuIGZpbHRlcnMgZGlhbG9nIiksaS5vcGVuKCksU2kod2luZG93KS5vbigicmVzaXplIixhKSxhKCksdGhpcy4kZGlhbG9nQ29udGFpbmVyPWkuJGNvbnRlbnQsdGhpcy5fZGlhbG9nPWl9KSl9ZmlsdGVyc0RpYWxvZ1RhYkNoYW5nZWQoZSl7Y29uc3QgdD10aGlzLl9jYXRlZ29yaWVzLm1hcCgoZT0+InR2LXNjcmVlbmVyLWRpYWxvZy0tY2F0IitlKSkuam9pbigiICIpO3RoaXMuJGZpbHRlcnNQb3B1cC5yZW1vdmVDbGFzcyh0KS5hZGRDbGFzcygidHYtc2NyZWVuZXItZGlhbG9nLS1jYXQiK3RoaXMuX2NhdGVnb3JpZXNbZV0pLnNjcm9sbFRvcCgwKX1kZXN0cm95KCl7dGhpcy5fZGlhbG9nJiYodGhpcy5fZGlhbG9nLmNsb3NlKCksZGVsZXRlIHRoaXMuX2RpYWxvZyl9X2dldENhdGVnb3JpZXMoKXtjb25zdCBlPVswXTtyZXR1cm4gdGhpcy5fdmlldy5zb3J0ZWRGaWVsZHMuZm9yRWFjaCgodD0+e0l0W3RdJiYhSXRbdF0uZGlzYWJsZWQmJkl0W3RdLmNvbnRyb2wmJihlLmluY2x1ZGVzKEl0W3RdLmNhdGVnb3J5KXx8ZS5wdXNoKEl0W3RdLmNhdGVnb3J5KSl9KSksZS5zb3J0KCl9X2dldERlZmF1bHRGaWx0ZXJzRm9yQ3VycmVudEZpbHRlclNldCgpe2NvbnN0e2RlZmF1bHRGaWx0ZXJTZXRzOmV9PXRoaXMuX21vZGVsLHQ9dGhpcy5fbW9kZWwuY3VycmVudEZpbHRlclNldElkKCk7cmV0dXJuIE9iamVjdC52YWx1ZXMoZSkuZmlsdGVyKChlPT5lLmlkPT09dCkpWzBdLmNvbnRlbnQuZmlsdGVyc31fZmllbGRWYWx1ZUlzRXF1YWxUb0RlZmF1bHRGaWx0ZXIoZSl7Y29uc3QgdD10aGlzLl9nZXREZWZhdWx0RmlsdGVyc0ZvckN1cnJlbnRGaWx0ZXJTZXQoKVtlXSxvPUl0W2VdLnZhbHVlO3N3aXRjaChJdFtlXS5jb250cm9sKXtjYXNlImNvbmRpdGlvbiI6cmV0dXJuIG8ub3BlcmF0b3I9PT10Lm9wZXJhdG9yJiZvLnZhbHVlLnRvU3RyaW5nKCk9PT10LnZhbHVlLnRvU3RyaW5nKCk7Y2FzZSJyYW5nZSI6Y2FzZSJzZWxlY3QiOnJldHVybiBvLnNvcnQoKS50b1N0cmluZygpPT09dC5zb3J0KCkudG9TdHJpbmcoKTtkZWZhdWx0OnJldHVybiBJdFtlXS52YWx1ZT09PW99fV9nZXRBY3RpdmVGaWx0ZXJzKGU9ITApe2NvbnN0IHQ9W107Zm9yKGNvbnN0IG8gaW4gSXQpaWYoSXRbb10udmFsdWUpe2lmKCJjb25kaXRpb24iPT09SXRbb10uY29udHJvbCYmKG10KEl0W29dLnZhbHVlLm9wZXJhdG9yKXx8bXQoSXRbb10udmFsdWUudmFsdWUpKSljb250aW51ZTtlP3QucHVzaChLdChJdFtvXSkpOnQucHVzaChvKX1yZXR1cm4gdH19dmFyIFRpPW8oMTg5ODYzKSxFaT1vKDY0MTU5Myk7Y2xhc3MgeGl7Y29uc3RydWN0b3IoKXt0aGlzLl9oYW5kbGVycz1bXX1yZWdpc3RlckhhbmRsZXJzKGUpe3RoaXMuX2hhbmRsZXJzLnB1c2goZSl9YmVmb3JlQXBwZW5kU3ltYm9sKGUsdCl7dGhpcy5faGFuZGxlcnMuZm9yRWFjaCgobz0+e28uYmVmb3JlQXBwZW5kU3ltYm9sJiZvLmJlZm9yZUFwcGVuZFN5bWJvbChlLHQpfSkpfWJlZm9yZUFwcGVuZENvbnRleHRNZW51SXRlbXMoZSl7cmV0dXJuIHRoaXMuX2hhbmRsZXJzLnJlZHVjZSgoKHQsbyk9Pm8uYmVmb3JlQXBwZW5kQ29udGV4dE1lbnVJdGVtcz90LmNvbmNhdChvLmJlZm9yZUFwcGVuZENvbnRleHRNZW51SXRlbXMoZSkpOnQpLFtdKX1hZnRlclN5bWJvbENvbmZpcm0oZSx0KXt0aGlzLl9oYW5kbGVycy5mb3JFYWNoKChvPT57by5hZnRlclN5bWJvbENvbmZpcm0mJm8uYWZ0ZXJTeW1ib2xDb25maXJtKGUsdCl9KSl9CmJlZm9yZUFwcGVuZFN5bWJvbHNIZWFkZXIoZSl7dGhpcy5faGFuZGxlcnMuZm9yRWFjaCgodD0+e3QuYmVmb3JlQXBwZW5kU3ltYm9sc0hlYWRlciYmdC5iZWZvcmVBcHBlbmRTeW1ib2xzSGVhZGVyKGUpfSkpfX12YXIgQWk9byg4MzQxODgpLE1pPW8oMTc5NzcxKSxJaT1vKDIxNDk4Nyk7Y2xhc3MgUml7Y29uc3RydWN0b3IoKXt0aGlzLl9yZXRyaWVzPTUsdGhpcy5fY2FjaGU9bnVsbCx0aGlzLl90cnlMb2FkPShlLHQpPT57dGhpcy5fcmV0cmllcz10aGlzLl9yZXRyaWVzLTE7dGhpcy5fc3RhcnRMb2FkaW5nKGUpLnRoZW4odCwwIT09dGhpcy5fcmV0cmllcz9vPT57KDAsSWkuaXNBYm9ydEVycm9yKShvKXx8c2V0VGltZW91dCgoKCk9PnRoaXMuX3RyeUxvYWQoZSx0KSksM2UzKX06dm9pZCAwKX19bG9hZChlKXtyZXR1cm4gdGhpcy5fY2FjaGV8fCh0aGlzLl9jYWNoZT1uZXcgUHJvbWlzZSh0aGlzLl90cnlMb2FkLmJpbmQodGhpcyxlPz9udWxsKSkpLHRoaXMuX2NhY2hlfX1jbGFzcyBGaSBleHRlbmRzIFJpe19zdGFydExvYWRpbmcoKXtyZXR1cm4gUHJvbWlzZS5hbGwoW28uZSg3MjE0MSksby5lKDg1NjUyKV0pLnRoZW4oby5iaW5kKG8sNjAwNzc5KSkudGhlbigoZT0+ZS5IYW1tZXJKUykpfX12YXIgTGk9byg3Nzk0NzQpLERpPW8oMTI5MzY1KSxPaT1vKDkxNDQ4NyksTmk9by5uKE9pKSxQaT1vKDMwOTkyMCksQmk9bygxNTQ2MjMpLCRpPW8oMTI4MzIpLFdpPW8oMTUzNzcpO2Z1bmN0aW9uIHFpKGUpe2NvbnN0IHQ9T2JqZWN0LmtleXMoZS5tb2Rlcyksbz1PYmplY3QudmFsdWVzKGUubW9kZXMpLFtpLG5dPUxpLnVzZVN0YXRlKHRbMF0pO3JldHVybiBMaS5jcmVhdGVFbGVtZW50KFBpLkN1c3RvbUJlaGF2aW91ckNvbnRleHQuUHJvdmlkZXIse3ZhbHVlOndpbmRvdy5UcmFkaW5nVmlldy5vbkNoYXJ0UGFnZT9CaS5wcmVzZXRQbGF0Zm9ybTpCaS5wcmVzZXREZWZhdWx0fSxMaS5jcmVhdGVFbGVtZW50KFZpLHtpc0FjdGl2ZTppPT09dFswXSx0aXRsZTpvWzBdfSksTGkuY3JlYXRlRWxlbWVudCgic3BhbiIse2NsYXNzTmFtZTpXaS5zd2l0Y2hlckNvbnRhaW5lcn0sTGkuY3JlYXRlRWxlbWVudCgkaS5Td2l0Y2gse29uQ2hhbmdlOmZ1bmN0aW9uKG8pe2NvbnN0IGk9by5jdXJyZW50VGFyZ2V0LmNoZWNrZWQ/dFsxXTp0WzBdO24oaSksZS5vbkNoYW5nZShpKX0sY2hlY2tlZDppPT09dFsxXX0pKSxMaS5jcmVhdGVFbGVtZW50KFZpLHtpc0FjdGl2ZTppPT09dFsxXSx0aXRsZTpvWzFdfSkpfWZ1bmN0aW9uIFZpKGUpe3JldHVybiBMaS5jcmVhdGVFbGVtZW50KCJzcGFuIix7Y2xhc3NOYW1lOk5pKCkoV2kubW9kZVRpdGxlLGUuaXNBY3RpdmUmJldpLm1vZGVUaXRsZUFjdGl2ZSl9LGUudGl0bGUpfXZhciBIaT1vKDY4MDI1KSxVaT1vKDU3MjI0OSksemk9byg3MTk0MjUpO2Z1bmN0aW9uIGppKGUpe2NvbnN0e2NoaWxkcmVuOnQsb25SZXNpemU6b309ZTtyZXR1cm4gdCgoMCx6aS51c2VSZXNpemVPYnNlcnZlcikob3x8KCgpPT57fSksW251bGw9PT1vXSkpfXZhciBHaT1vKDk2NDU5NCksWGk9bygxOTYyMSk7Y2xhc3MgS2kgZXh0ZW5kcyBMaS5QdXJlQ29tcG9uZW50e2NvbnN0cnVjdG9yKGUpe3N1cGVyKGUpfXJlbmRlcigpe3JldHVybiBMaS5jcmVhdGVFbGVtZW50KCJkaXYiLHtjbGFzc05hbWU6dGhpcy5wcm9wcy5jbGFzc05hbWUsb25DbGljazp0aGlzLnByb3BzLm9uQ2xpY2sscmVmOnRoaXMucHJvcHMucmVmZXJlbmNlfSx0aGlzLnByb3BzLmNoaWxkcmVuKX19Y2xhc3MgWWkgZXh0ZW5kcyBMaS5QdXJlQ29tcG9uZW50e2NvbnN0cnVjdG9yKGUpe3N1cGVyKGUpLHRoaXMuX2hhbmRsZVJlc2l6ZT0oW2VdKT0+e3RoaXMucHJvcHMub25NZWFzdXJlPy4oZS50YXJnZXQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkpfX1yZW5kZXIoKXtjb25zdHt0aGVtZTplPVhpfT10aGlzLnByb3BzLHQ9TmkoKShlLmxpc3Qse1t0aGlzLnByb3BzLmNsYXNzTmFtZV06Qm9vbGVhbih0aGlzLnByb3BzLmNsYXNzTmFtZSl9KSx7Zm9udFNpemU6bz0xM309dGhpcy5wcm9wcyxpPXtib3R0b206dGhpcy5wcm9wcy5ib3R0b20sZm9udFNpemU6byxsZWZ0OnRoaXMucHJvcHMubGVmdCxoZWlnaHQ6dGhpcy5wcm9wcy5oZWlnaHR8fCJhdXRvIixyaWdodDp0aGlzLnByb3BzLnJpZ2h0LHRvcDp0aGlzLnByb3BzLnRvcCx3aWR0aDp0aGlzLnByb3BzLndpZHRoLHpJbmRleDp0aGlzLnByb3BzLnpJbmRleH07cmV0dXJuIExpLmNyZWF0ZUVsZW1lbnQoamkse29uUmVzaXplOkJvb2xlYW4odGhpcy5wcm9wcy5vbk1lYXN1cmUpP3RoaXMuX2hhbmRsZVJlc2l6ZTpudWxsfSwoZT0+TGkuY3JlYXRlRWxlbWVudCgiZGl2Iix7Y2xhc3NOYW1lOnQsc3R5bGU6aSxyZWY6KDAsR2kubWVyZ2VSZWZzKShbdGhpcy5wcm9wcy5yZWZlcmVuY2UsZV0pfSx0aGlzLl93cmFwSXRlbXModGhpcy5wcm9wcy5pdGVtcyx0aGlzLnByb3BzLnNlbGVjdGVkKSkpKX1jb21wb25lbnREaWRNb3VudCgpe2lmKHZvaWQgMCE9PXRoaXMucHJvcHMuc2VsZWN0ZWQmJnRoaXMucHJvcHMuc2hvdWxkU2Nyb2xsSWZOb3RWaXNpYmxlKXtjb25zdCBlPXRoaXMuX2l0ZW1zW3RoaXMucHJvcHMuc2VsZWN0ZWRdO2UmJnRoaXMuX3Njcm9sbFRvSXRlbShlKX19Y29tcG9uZW50RGlkVXBkYXRlKCl7aWYodm9pZCAwIT09dGhpcy5wcm9wcy5zZWxlY3RlZCYmdGhpcy5wcm9wcy5zaG91bGRTY3JvbGxJZk5vdFZpc2libGUpe2NvbnN0IGU9dGhpcy5faXRlbXNbdGhpcy5wcm9wcy5zZWxlY3RlZF07ZSYmdGhpcy5fc2Nyb2xsVG9JdGVtKGUpfX1fd3JhcEl0ZW1zKGU9W10sdCl7dGhpcy5faXRlbXM9W107Y29uc3R7aXRlbVdyYXA6bz1LaSx0aGVtZTppPVhpfT10aGlzLnByb3BzLG49bztyZXR1cm4gZS5tYXAoKChlLG8pPT57Y29uc3Qgcj1OaSgpKGkuaXRlbSx7W3RoaXMucHJvcHMuaXRlbXNDbGFzc05hbWVdOkJvb2xlYW4odGhpcy5wcm9wcy5pdGVtc0NsYXNzTmFtZSksW3RoaXMucHJvcHMuc2VsZWN0ZWRDbGFzc05hbWVdOnQ9PT1vfSk7cmV0dXJuIExpLmNyZWF0ZUVsZW1lbnQobix7cmVmZXJlbmNlOnQ9Pnt0JiZ0aGlzLl9pdGVtcy5wdXNoKHtlbGVtOnQsaW5kZXg6bywKdmFsdWU6ZX0pfSxrZXk6byxvbkNsaWNrOigpPT50aGlzLl9vblNlbGVjdChvKSxjbGFzc05hbWU6cn0sZS5lbGVtKX0pKX1fb25TZWxlY3QoZSl7dGhpcy5wcm9wcy5vblNlbGVjdCYmdGhpcy5wcm9wcy5vblNlbGVjdChlLHRoaXMuX2l0ZW1zW2VdLnZhbHVlKX1fc2Nyb2xsVG9JdGVtKGUpe2UuZWxlbS5zY3JvbGxJbnRvVmlldyh7YmxvY2s6ImNlbnRlciJ9KX19WWkuZGVmYXVsdFByb3BzPXtzaG91bGRTY3JvbGxJZk5vdFZpc2libGU6ITB9O3ZhciBKaT1vKDM4NDM3MCksWmk9byg2NTk4NzgpO2NsYXNzIFFpIGV4dGVuZHMgTGkuUHVyZUNvbXBvbmVudHtyZW5kZXIoKXtjb25zdCBlPXtwb3NpdGlvbjoiYWJzb2x1dGUiLHRvcDp0aGlzLnByb3BzLnRvcCx3aWR0aDp0aGlzLnByb3BzLndpZHRoLGhlaWdodDp0aGlzLnByb3BzLmhlaWdodCxib3R0b206dGhpcy5wcm9wcy5ib3R0b20scmlnaHQ6dGhpcy5wcm9wcy5yaWdodCxsZWZ0OnRoaXMucHJvcHMubGVmdCx6SW5kZXg6dGhpcy5wcm9wcy56SW5kZXh9O3JldHVybiBMaS5jcmVhdGVFbGVtZW50KCJkaXYiLHtjbGFzc05hbWU6dGhpcy5wcm9wcy5jbGFzc05hbWUsc3R5bGU6ZSxyZWY6dGhpcy5wcm9wcy5yZWZlcmVuY2V9LHRoaXMucHJvcHMuY2hpbGRyZW4pfX1RaS5kaXNwbGF5TmFtZT0iRHJvcGRvd24gQ29udGFpbmVyIjtjb25zdCBlbj0oMCxaaS5tYWtlT3ZlcmxhcGFibGUpKCgwLEppLm1ha2VBdHRhY2hhYmxlKShRaSkpO3ZhciB0bixvbj1vKDEyMTY0NSk7IWZ1bmN0aW9uKGUpe2UuVG9wPSJ0b3AiLGUuQm90dG9tPSJib3R0b20ifSh0bnx8KHRuPXt9KSk7Y2xhc3Mgbm4gZXh0ZW5kcyBMaS5QdXJlQ29tcG9uZW50e2NvbnN0cnVjdG9yKCl7c3VwZXIoLi4uYXJndW1lbnRzKSx0aGlzLl9jb250YWluZXI9bnVsbCx0aGlzLl9zZXRDb250YWluZXJSZWY9ZT0+eyJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLnByb3BzLnJlZmVyZW5jZSYmdGhpcy5wcm9wcy5yZWZlcmVuY2UoZSksIm9iamVjdCI9PXR5cGVvZiB0aGlzLnByb3BzLnJlZmVyZW5jZSYmKHRoaXMucHJvcHMucmVmZXJlbmNlLmN1cnJlbnQ9ZSksdGhpcy5fY29udGFpbmVyPWV9fWNvbXBvbmVudERpZE1vdW50KCl7dGhpcy5wcm9wcy5vbkRyb3Bkb3duV2hlZWxOb1Bhc3NpdmUmJnRoaXMuX2FkZFBhc3NpdmVMaXN0ZW5lck9uV2hlZWwodGhpcy5wcm9wcy5vbkRyb3Bkb3duV2hlZWxOb1Bhc3NpdmUpfWNvbXBvbmVudERpZFVwZGF0ZShlKXt0aGlzLnByb3BzLm9uRHJvcGRvd25XaGVlbE5vUGFzc2l2ZSE9PWUub25Ecm9wZG93bldoZWVsTm9QYXNzaXZlJiZ0aGlzLl91cGRhdGVQYXNzaXZlTGlzdGVuZXJPbldoZWVsKGUub25Ecm9wZG93bldoZWVsTm9QYXNzaXZlKX1jb21wb25lbnRXaWxsVW5tb3VudCgpe3RoaXMucHJvcHMub25Ecm9wZG93bldoZWVsTm9QYXNzaXZlJiZ0aGlzLl9yZW1vdmVQYXNzaXZlTGlzdGVuZXJPbldoZWVsKHRoaXMucHJvcHMub25Ecm9wZG93bldoZWVsTm9QYXNzaXZlKX1yZW5kZXIoKXtjb25zdHtzaGFkb3c6ZT0iYm90dG9tIixjaGlsZHJlbjp0LGNsYXNzTmFtZTpvfT10aGlzLnByb3BzLGk9TmkoKShvbi5jb250YWluZXIsb25bZV0sbyksbj17bWF4SGVpZ2h0OnRoaXMucHJvcHMubWF4SGVpZ2h0fTtyZXR1cm4gTGkuY3JlYXRlRWxlbWVudCgiZGl2Iix7cmVmOnRoaXMuX3NldENvbnRhaW5lclJlZixzdHlsZTpuLGNsYXNzTmFtZTppLG9uVG91Y2hTdGFydDp0aGlzLnByb3BzLm9uRHJvcGRvd25Ub3VjaFN0YXJ0LG9uVG91Y2hNb3ZlOnRoaXMucHJvcHMub25Ecm9wZG93blRvdWNoTW92ZSxvblRvdWNoRW5kOnRoaXMucHJvcHMub25Ecm9wZG93blRvdWNoRW5kLG9uV2hlZWw6dGhpcy5wcm9wcy5vbkRyb3Bkb3duV2hlZWx9LHQpfV91cGRhdGVQYXNzaXZlTGlzdGVuZXJPbldoZWVsKGUpe2UmJnRoaXMuX3JlbW92ZVBhc3NpdmVMaXN0ZW5lck9uV2hlZWwoZSksdGhpcy5wcm9wcy5vbkRyb3Bkb3duV2hlZWxOb1Bhc3NpdmUmJnRoaXMuX2FkZFBhc3NpdmVMaXN0ZW5lck9uV2hlZWwodGhpcy5wcm9wcy5vbkRyb3Bkb3duV2hlZWxOb1Bhc3NpdmUpfV9hZGRQYXNzaXZlTGlzdGVuZXJPbldoZWVsKGUpeygwLHIuZW5zdXJlTm90TnVsbCkodGhpcy5fY29udGFpbmVyKS5hZGRFdmVudExpc3RlbmVyKCJ3aGVlbCIsZSx7cGFzc2l2ZTohMX0pfV9yZW1vdmVQYXNzaXZlTGlzdGVuZXJPbldoZWVsKGUpeygwLHIuZW5zdXJlTm90TnVsbCkodGhpcy5fY29udGFpbmVyKS5yZW1vdmVFdmVudExpc3RlbmVyKCJ3aGVlbCIsZSl9fXZhciBybj1vKDg2ODExMCk7Y29uc3Qgc249KGFuPVlpLChsbj1jbGFzcyBleHRlbmRzIExpLlB1cmVDb21wb25lbnR7Y29uc3RydWN0b3IoZSl7c3VwZXIoZSksdGhpcy5faXRlbXM9dGhpcy5wcm9wcy5pdGVtc31jb21wb25lbnREaWRVcGRhdGUoZSl7aWYoZS5jb21tYW5kIT09dGhpcy5wcm9wcy5jb21tYW5kJiZ0aGlzLnByb3BzLmNvbW1hbmQpc3dpdGNoKHRoaXMucHJvcHMuY29tbWFuZC5uYW1lKXtjYXNlIm5leHQiOnRoaXMuX25leHQoKTticmVhaztjYXNlInByZXYiOnRoaXMuX3ByZXYoKX1lLml0ZW1zIT09dGhpcy5wcm9wcy5pdGVtcyYmKHRoaXMuX2l0ZW1zPXRoaXMucHJvcHMuaXRlbXMpfXJlbmRlcigpe3JldHVybiBMaS5jcmVhdGVFbGVtZW50KGFuLHsuLi50aGlzLnByb3BzfSx0aGlzLnByb3BzLmNoaWxkcmVuKX1fbmV4dCgpe2NvbnN0e3NlbGVjdGVkOmU9LTF9PXRoaXMucHJvcHMsdD1lKzE7dGhpcy5faXRlbXMubGVuZ3RoLTE+PXQ/dGhpcy5fbmF2aWdhdGVUbyh0KTp0aGlzLl9uYXZpZ2F0ZVRvKDApfV9wcmV2KCl7Y29uc3R7c2VsZWN0ZWQ6ZT0tMX09dGhpcy5wcm9wcyx0PWUtMSxvPXRoaXMuX2l0ZW1zLmxlbmd0aC0xOzA8PXQ/dGhpcy5fbmF2aWdhdGVUbyh0KTp0aGlzLl9uYXZpZ2F0ZVRvKG8pfV9uYXZpZ2F0ZVRvKGUpe3RoaXMucHJvcHMub25OYXZpZ2F0ZSYmdGhpcy5wcm9wcy5vbk5hdmlnYXRlKGUsdGhpcy5faXRlbXNbZV0pfX0pLmRpc3BsYXlOYW1lPSJOYXZpZ2F0ZWFibGUgQ29tcG9uZW50Iixsbik7dmFyIGFuLGxuO2NvbnN0IGNuPSgwLHJuLm1ha2VBbmNob3JhYmxlKShlbiksZG49ewp0b3A6InRvcCIsYm90dG9tOiJib3R0b20iLHRvcFJpZ2h0OiJ0b3AifTtjbGFzcyBobiBleHRlbmRzIExpLlB1cmVDb21wb25lbnR7cmVuZGVyKCl7Y29uc3R7YW5jaG9yOmU9ImJvdHRvbSIsZm9udFNpemU6dD0xNCxyb290Om89InBhcmVudCJ9PXRoaXMucHJvcHMsaT1OaSgpKFVpLmxpc3QsVWlbZV0pLHtkcm9wZG93bkNsYXNzTmFtZTpuLGhlaWdodDpyLC4uLnN9PXRoaXMucHJvcHM7cmV0dXJuIExpLmNyZWF0ZUVsZW1lbnQoY24sey4uLnMsY2xhc3NOYW1lOm4scm9vdDpvfSxMaS5jcmVhdGVFbGVtZW50KG5uLHtjbGFzc05hbWU6dGhpcy5wcm9wcy5kcm9wZG93bkNvbnRhaW5lckNsYXNzTmFtZSxzaGFkb3c6ZG5bZV0sbWF4SGVpZ2h0OnRoaXMucHJvcHMubWF4SGVpZ2h0LG9uRHJvcGRvd25Ub3VjaFN0YXJ0OnRoaXMucHJvcHMub25Ecm9wZG93blRvdWNoU3RhcnQ/dGhpcy5wcm9wcy5vbkRyb3Bkb3duVG91Y2hTdGFydDp2b2lkIDAsb25Ecm9wZG93blRvdWNoTW92ZTp0aGlzLnByb3BzLm9uRHJvcGRvd25Ub3VjaE1vdmU/dGhpcy5wcm9wcy5vbkRyb3Bkb3duVG91Y2hNb3ZlOnZvaWQgMCxvbkRyb3Bkb3duVG91Y2hFbmQ6dGhpcy5wcm9wcy5vbkRyb3Bkb3duVG91Y2hFbmQ/dGhpcy5wcm9wcy5vbkRyb3Bkb3duVG91Y2hFbmQ6dm9pZCAwLG9uRHJvcGRvd25XaGVlbE5vUGFzc2l2ZTp0aGlzLnByb3BzLm9uRHJvcGRvd25XaGVlbE5vUGFzc2l2ZT90aGlzLnByb3BzLm9uRHJvcGRvd25XaGVlbE5vUGFzc2l2ZTp2b2lkIDB9LExpLmNyZWF0ZUVsZW1lbnQoc24sey4uLnMsd2lkdGg6dGhpcy5wcm9wcy53aWR0aCxoZWlnaHQ6cixjbGFzc05hbWU6dGhpcy5wcm9wcy5jbGFzc05hbWV8fGksaXRlbXNDbGFzc05hbWU6dGhpcy5wcm9wcy5pdGVtc0NsYXNzTmFtZXx8VWkuaXRlbSxzZWxlY3RlZENsYXNzTmFtZTp0aGlzLnByb3BzLnNlbGVjdGVkQ2xhc3NOYW1lfHxVaS5zZWxlY3RlZCxmb250U2l6ZTp0LHJlZmVyZW5jZTp0aGlzLnByb3BzLnJlZmVyZW5jZX0pKSl9fXZhciB1bj1vKDI3MzMxMCksX249byg3MTg1NTMpO2Z1bmN0aW9uIHBuKGUpe2NvbnN0e2NoaWxkcmVuOnQsY2xhc3NOYW1lOm8sb25SZXNpemU6aSxvbkNsaWNrOm59PWUscj0oMCx6aS51c2VSZXNpemVPYnNlcnZlcikoKChbZV0pPT57aShlLnRhcmdldC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSl9KSk7cmV0dXJuIExpLmNyZWF0ZUVsZW1lbnQoImRpdiIse3JlZjpyLGNsYXNzTmFtZTpvLG9uQ2xpY2s6bn0sdCl9dmFyIG1uPW8oOTg3MDc2KTtjbGFzcyBnbiBleHRlbmRzIExpLlB1cmVDb21wb25lbnR7Y29uc3RydWN0b3IoZSl7c3VwZXIoZSksdGhpcy5fZ2V0RHJvcGRvd25IZWlnaHQ9KCk9PntpZighdGhpcy5fZHJvcGRvd25QYXJlbnQpcmV0dXJuO2NvbnN0IGU9d2luZG93LmlubmVySGVpZ2h0LXRoaXMuX2Ryb3Bkb3duUGFyZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmJvdHRvbS0yMDtyZXR1cm4gZSYmZTw1MD92b2lkIDA6ZX0sdGhpcy5fZ2V0Rmlyc3RIaWRkZW5JdGVtSW5kZXg9KCk9PntsZXQgZTtpZih0aGlzLnN0YXRlLmF2YWlsYWJsZVdpZHRoJiYhdGhpcy5faXRlbVNpemVzLmluY2x1ZGVzKG51bGwpKXtsZXQgdD0wO2ZvcihlPTA7ZTx0aGlzLnByb3BzLml0ZW1zLmxlbmd0aDtlKyspe2NvbnN0IG89dCsodGhpcy5faXRlbVNpemVzW2VdfHwwKTtpZighKChlPT09dGhpcy5wcm9wcy5pdGVtcy5sZW5ndGgtMT9vOm8rNDEpPHRoaXMuc3RhdGUuYXZhaWxhYmxlV2lkdGgpKWJyZWFrO3Q9b319ZWxzZSBlPXRoaXMuc3RhdGUuYXZhaWxhYmxlV2lkdGg/dGhpcy5wcm9wcy5pdGVtcy5sZW5ndGg6MDtyZXR1cm4gZX0sdGhpcy5fb25FbGVtZW50UmVzaXplPShbZV0pPT57dGhpcy5zZXRTdGF0ZSh7YXZhaWxhYmxlV2lkdGg6ZS5jb250ZW50UmVjdC53aWR0aCxpc09wZW5lZDohMX0pfSx0aGlzLl9vblNlbGVjdD1lPT57dGhpcy5wcm9wcy5vblNlbGVjdCYmdGhpcy5wcm9wcy5vblNlbGVjdChlKSx0aGlzLnNldFN0YXRlKHthY3RpdmVJdGVtOmUsaXNPcGVuZWQ6ITF9KX0sdGhpcy5fb25Ecm9wZG93blNlbGVjdD0oZSx0KT0+e3RoaXMucHJvcHMub25TZWxlY3QmJnRoaXMucHJvcHMub25TZWxlY3QodC5hY3R1YWxJbmRleCksdGhpcy5zZXRTdGF0ZSh7YWN0aXZlSXRlbTp0LmFjdHVhbEluZGV4LGlzT3BlbmVkOiExfSl9LHRoaXMuX29uT3V0c2lkZUNsaWNrPWU9Pnt0aGlzLnN0YXRlLmlzT3BlbmVkJiYodGhpcy5zdGF0ZS5pc09wZW5lZCYmKGUucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpKSx0aGlzLnNldFN0YXRlKHtpc09wZW5lZDohMX0pKX0sdGhpcy5fb25Ecm9wZG93bkl0ZW1DbGljaz0oKT0+e3RoaXMuc2V0U3RhdGUoe2lzT3BlbmVkOiF0aGlzLnN0YXRlLmlzT3BlbmVkfSl9LHRoaXMuX29uSXRlbVJlc2l6ZT0oZSx0KT0+e3RoaXMuX2l0ZW1TaXplc1tlXT10LndpZHRoLHRoaXMuX2l0ZW1TaXplcy5pbmNsdWRlcyhudWxsKXx8dGhpcy5mb3JjZVVwZGF0ZSgpfSx0aGlzLl9pdGVtU2l6ZXM9dGhpcy5wcm9wcy5pdGVtcy5tYXAoKGU9Pm51bGwpKSx0aGlzLnN0YXRlPXthdmFpbGFibGVXaWR0aDowLGFjdGl2ZUl0ZW06dGhpcy5wcm9wcy5hY3RpdmVJdGVtfHwwLGlzT3BlbmVkOiExfX1yZW5kZXIoKXtjb25zdCBlPXRoaXMuX2dldEZpcnN0SGlkZGVuSXRlbUluZGV4KCksdD10aGlzLnByb3BzLml0ZW1zLnNsaWNlKDAsZSksbz10aGlzLnByb3BzLml0ZW1zLnNsaWNlKGUpLGk9dC5tYXAoKChlLHQpPT57Y29uc3Qgbz10aGlzLnN0YXRlLmFjdGl2ZUl0ZW09PT10LGk9TmkoKShIaS5pdGVtQ29udGVudCx7W0hpLmFjdGl2ZV06b30pO3JldHVybiBMaS5jcmVhdGVFbGVtZW50KHBuLHtrZXk6ZS50aXRsZSxjbGFzc05hbWU6TmkoKShIaS5pdGVtLHtbSGkuYWN0aXZlXTpvfSksb25DbGljazp0aGlzLl9vblNlbGVjdC5iaW5kKHRoaXMsdCksb25SZXNpemU6dGhpcy5fb25JdGVtUmVzaXplLmJpbmQodGhpcyx0KX0sTGkuY3JlYXRlRWxlbWVudCgiZGl2Iix7Y2xhc3NOYW1lOml9LGUudGl0bGUpKX0pKSxuPW8ubWFwKCgoZSxvKT0+KHtlbGVtOmUudGl0bGUsCmFjdHVhbEluZGV4Om8rdC5sZW5ndGh9KSkpLHI9dGhpcy5zdGF0ZS5hY3RpdmVJdGVtLWUscz1yPj0wLGE9TGkuY3JlYXRlRWxlbWVudChfbi5PdXRzaWRlRXZlbnQse2hhbmRsZXI6dGhpcy5fb25PdXRzaWRlQ2xpY2ssY2xpY2s6ITB9LChlPT5MaS5jcmVhdGVFbGVtZW50KCJkaXYiLHtyZWY6ZT0+ZSYmKHRoaXMuX2Ryb3Bkb3duUGFyZW50PURpLmZpbmRET01Ob2RlKGUpKX0sTGkuY3JlYXRlRWxlbWVudCgiZGl2Iix7Y2xhc3NOYW1lOk5pKCkoSGkuaXRlbSx7W0hpLmFjdGl2ZV06c30pLHJlZjplLG9uQ2xpY2s6dGhpcy5fb25Ecm9wZG93bkl0ZW1DbGlja30sTGkuY3JlYXRlRWxlbWVudCgiZGl2Iix7Y2xhc3NOYW1lOk5pKCkoSGkuaXRlbUNvbnRlbnQsSGkuZHJvcGRvd25JdGVtLHtbSGkuYWN0aXZlXTpzfSl9LExpLmNyZWF0ZUVsZW1lbnQodW4uSWNvbix7Y2xhc3NOYW1lOk5pKCkoSGkuZHJvcGRvd25JY29uLHtbSGkuYWN0aXZlXTp0aGlzLnN0YXRlLmlzT3BlbmVkfSksaWNvbjptbn0pLExpLmNyZWF0ZUVsZW1lbnQoaG4se2lzT3BlbmVkOnRoaXMuc3RhdGUuaXNPcGVuZWQsaXRlbXM6bixzZWxlY3RlZDpzP3I6dm9pZCAwLG9uU2VsZWN0OnRoaXMuX29uRHJvcGRvd25TZWxlY3QsdG9wOjI3LHJpZ2h0OjAsaXRlbXNDbGFzc05hbWU6TmkoKShVaS5ibHVpc2hJdGVtLEhpLmRyb3Bkb3duTGlzdEl0ZW0pLHNlbGVjdGVkQ2xhc3NOYW1lOnRoaXMucHJvcHMuc2VsZWN0ZWRJdGVtQ2xhc3NOYW1lLG1heEhlaWdodDp0aGlzLl9nZXREcm9wZG93bkhlaWdodCgpfSkpKSkpKTtyZXR1cm4gTGkuY3JlYXRlRWxlbWVudChqaSx7b25SZXNpemU6dGhpcy5fb25FbGVtZW50UmVzaXplfSwoZT0+TGkuY3JlYXRlRWxlbWVudCgiZGl2Iix7Y2xhc3NOYW1lOk5pKCkoSGkuZWxlbWVudFdyYXAsdGhpcy5wcm9wcy5jbGFzc05hbWUpLHJlZjplfSxMaS5jcmVhdGVFbGVtZW50KCJkaXYiLHtjbGFzc05hbWU6SGkuaXRlbXNXcmFwfSxpLG8ubGVuZ3RoP2E6dm9pZCAwKSkpKX19ZnVuY3Rpb24gdm4oZSx0KXtEaS5yZW5kZXIoTGkuY3JlYXRlRWxlbWVudChnbix7Li4udH0pLGUpfXZhciBmbj1vKDY1NDYzNikseW49byg2NjcxMzIpO2NsYXNzIGJue2NvbnN0cnVjdG9yKGUsdCl7dGhpcy5ldmVudD0iY2hhbmdlX2ZvcmV4X2dyb3VwIix0aGlzLnNvdXJjZT0iZm9yZXhfZ3JvdXBfc2VsZWN0b3IiLHRoaXMubG9jYXRpb249InRvb2xiYXIiLHRoaXMuc3RhdGU9ZSx0aGlzLnZhbHVlPXR9fXZhciBTbj1vKDM4OTg0NCk7ZnVuY3Rpb24gd24oZSl7cmV0dXJuIFByb21pc2UuYWxsKFtvLmUoOTIyOTMpLG8uZSgyOTI5Niksby5lKDUyMzk2KSxvLmUoNjAwNjIpLG8uZSgyMDM1NCksby5lKDEzNDkyKSxvLmUoMzc3NDYpLG8uZSgxMjM4NSksby5lKDk0OTQ4KSxvLmUoMTAzODUpLG8uZSg1MjA2NSksby5lKDY2MDUpLG8uZSgzMjc0OCksby5lKDMyMTc2KSxvLmUoODg2NDEpLG8uZSg1NjIxMyksby5lKDUwMDM1KSxvLmUoNjQ1KSxvLmUoNTEzMTUpLG8uZSgyODQxMyksby5lKDM5NjA5KSxvLmUoNzI2NzQpLG8uZSg2NzMwMyldKS50aGVuKG8uYmluZChvLDYzODgyMikpLnRoZW4oKHQ9PnQuc2hvd1NjcmVlbmVyTWFya2V0RGlhbG9nKGUpKSl9Y29uc3QgQ249bmV3IFNldChbImRwc19jb21tb25fc3RvY2tfcHJpbV9pc3N1ZV95b3lfZ3Jvd3RoX2Z5IiwiZWFybmluZ3NfcGVyX3NoYXJlX2RpbHV0ZWRfcW9xX2dyb3d0aF9mcSIsImVhcm5pbmdzX3Blcl9zaGFyZV9kaWx1dGVkX3lveV9ncm93dGhfZnEiLCJlYXJuaW5nc19wZXJfc2hhcmVfZGlsdXRlZF95b3lfZ3Jvd3RoX2Z5IiwiZWFybmluZ3NfcGVyX3NoYXJlX2RpbHV0ZWRfeW95X2dyb3d0aF90dG0iLCJlYml0ZGFfcW9xX2dyb3d0aF9mcSIsImViaXRkYV95b3lfZ3Jvd3RoX2ZxIiwiZWJpdGRhX3lveV9ncm93dGhfZnkiLCJlYml0ZGFfeW95X2dyb3d0aF90dG0iLCJmcmVlX2Nhc2hfZmxvd19tYXJnaW5fZnkiLCJmcmVlX2Nhc2hfZmxvd19tYXJnaW5fdHRtIiwiZnJlZV9jYXNoX2Zsb3dfcW9xX2dyb3d0aF9mcSIsImZyZWVfY2FzaF9mbG93X3lveV9ncm93dGhfZnEiLCJmcmVlX2Nhc2hfZmxvd195b3lfZ3Jvd3RoX2Z5IiwiZnJlZV9jYXNoX2Zsb3dfeW95X2dyb3d0aF90dG0iLCJncm9zc19wcm9maXRfbWFyZ2luX2Z5IiwiZ3Jvc3NfcHJvZml0X3FvcV9ncm93dGhfZnEiLCJncm9zc19wcm9maXRfeW95X2dyb3d0aF9mcSIsImdyb3NzX3Byb2ZpdF95b3lfZ3Jvd3RoX2Z5IiwiZ3Jvc3NfcHJvZml0X3lveV9ncm93dGhfdHRtIiwibmV0X2luY29tZV9iZWZfZGlzY19vcGVyX21hcmdpbl9meSIsIm5ldF9pbmNvbWVfcW9xX2dyb3d0aF9mcSIsIm5ldF9pbmNvbWVfeW95X2dyb3d0aF9mcSIsIm5ldF9pbmNvbWVfeW95X2dyb3d0aF9meSIsIm5ldF9pbmNvbWVfeW95X2dyb3d0aF90dG0iLCJvcGVyX2luY29tZV9tYXJnaW5fZnkiLCJ0b3RhbF9hc3NldHNfcW9xX2dyb3d0aF9mcSIsInRvdGFsX2Fzc2V0c195b3lfZ3Jvd3RoX2ZxIiwidG90YWxfYXNzZXRzX3lveV9ncm93dGhfZnkiLCJ0b3RhbF9kZWJ0X3FvcV9ncm93dGhfZnEiLCJ0b3RhbF9kZWJ0X3lveV9ncm93dGhfZnEiLCJ0b3RhbF9kZWJ0X3lveV9ncm93dGhfZnkiLCJ0b3RhbF9yZXZlbnVlX3FvcV9ncm93dGhfZnEiLCJ0b3RhbF9yZXZlbnVlX3lveV9ncm93dGhfZnEiLCJ0b3RhbF9yZXZlbnVlX3lveV9ncm93dGhfZnkiLCJ0b3RhbF9yZXZlbnVlX3lveV9ncm93dGhfdHRtIl0pO2Z1bmN0aW9uIGtuKGUsdCl7cmV0dXJuISF0LnRpdGxlJiYodC50aXRsZS50b0xvd2VyQ2FzZSgpIT09dC5zaG9ydFRpdGxlPy50b0xvd2VyQ2FzZSgpfHxmdW5jdGlvbihlKXtyZXR1cm4gQ24uaGFzKGUpfShlKSl9Y29uc3QgVG49KEVuPUYoInN0b2NrIiksT2JqZWN0LmVudHJpZXMoRW4pLm1hcCgoKFtlLHRdKT0+e2NvbnN0IG89dC5ncm91cDtyZXR1cm57ZmxhZzp0LmZsYWcsZ2V0IG5hbWUoKXtyZXR1cm4gdC50aXRsZX0sZGVzYzp0LnN0b2Nrcy5qb2luKCIsICIpLGNvdW50cnk6dC5jb3VudHJ5LGdyb3VwOm8sdmFsdWU6ZX19KSkpO3ZhciBFbjtjb25zdCB4bj1Ubi5maW5kKChlPT4iYW1lcmljYSI9PT1lLnZhbHVlKSkKO3ZhciBBbj1vKDY4NDYxMCk7ZnVuY3Rpb24gTW4oZSx0KXtjb25zdCBvPXNldEludGVydmFsKCgoKT0+e2NvbnN0IGk9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcihlKTtpZihpKXtjbGVhckludGVydmFsKG8pO25ldyBSZXNpemVPYnNlcnZlcih0KS5vYnNlcnZlKGkpLHQoKX19KSwyMCl9dmFyIEluLFJuPW8oODA5NDM2KSxGbj1vKDQ4MjUwNCk7IWZ1bmN0aW9uKGUpe2UuQUJTT0xVVEU9ImFic29sdXRlIixlLlNUSUNLWT0ic3RpY2t5IixlLkJPVFRPTT0iYm90dG9tIn0oSW58fChJbj17fSkpO2NvbnN0IExuPXBhcnNlSW50KFJuWyJzaXplLXN0aWNreS1zeW1ib2wtaGVhZGVyLWhlaWdodCJdKTtmdW5jdGlvbiBEbihlKXtjb25zdHskdG9vbGJhcjp0fT1lLG89dC5vdXRlckhlaWdodCgpLGk9ZS50YWJsZS4kc3RpY2t5SGVhZGVyLG49ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmpzLXN0aWNreS1zeW1ib2wtaGVhZGVyLWNvbnRhaW5lciIpPzY0K0xuOjY0O2Z1bmN0aW9uIHIodCl7Y29uc3Qgcj10fHxGbihkb2N1bWVudCkuc2Nyb2xsVG9wKCkse2lzU3RpY2t5OnMsdXBwZXJTY3JvbGxMaW1pdDphLGJvdHRvbVNjcm9sbExpbWl0Omx9PWZ1bmN0aW9uKHQpe2NvbnN0IHI9ZS50YWJsZS5fJGVtcHR5TWVzc2FnZT9lLnRhYmxlLl8kZW1wdHlNZXNzYWdlLm91dGVySGVpZ2h0KCk6MCxzPWUuJGNvbnRlbnQub2Zmc2V0KCkudG9wK2UuJGNvbnRlbnQub3V0ZXJIZWlnaHQoKSxhPXJ8fDQ4LGw9ZS4kY29udGVudC5vZmZzZXQoKS50b3Atbi1vLGM9cy1hLW4tby1pLm91dGVySGVpZ2h0KCk7cmV0dXJue2lzU3RpY2t5OnQ+PWwmJnQ8PWMsYm90dG9tU2Nyb2xsTGltaXQ6Yyx1cHBlclNjcm9sbExpbWl0Omx9fShyKTtpZihzKXJldHVybiJzdGlja3kiO3JldHVybiBNYXRoLmFicyhsLWEpPDIwfHxyPGE/ImFic29sdXRlIjoiYm90dG9tIn1mdW5jdGlvbiBzKCl7Y29uc3Qgbz1yKCksbj0oMCxLby5pc1J0bCkoKT9lLiRjb250ZW50Lm9mZnNldCgpLmxlZnQtRm4od2luZG93KS5zY3JvbGxMZWZ0KCk6ZS4kY29udGVudC5vZmZzZXQoKS5sZWZ0LHM9ZS4kY29udGVudC53aWR0aCgpLGE9Rm4oZS50YWJsZS5fdGFibGUpLndpZHRoKCksbD1mdW5jdGlvbih0KXtjb25zdCBvPWZvLmJyZWFrcG9pbnRzLnRhYmxldCxpPXIoKTtpZihGbih3aW5kb3cpLndpZHRoKCk+bylyZXR1cm4iYWJzb2x1dGUiPT09aT97bGVmdDoiIixyaWdodDoiIn06e2xlZnQ6dCxyaWdodDoiIn07Y29uc3Qgbj1lLiRjb250ZW50LnNjcm9sbExlZnQoKTtpZigoMCxLby5pc1J0bCkoKSl7Y29uc3QgdD1lLl9nZXRSZXNpemVyQnJpZGdlV2lkdGgoKTtyZXR1cm4iYWJzb2x1dGUiPT09aT97bGVmdDoiIixyaWdodDpufTp7bGVmdDoiIixyaWdodDp0K259fXJldHVybntsZWZ0OnQtbixyaWdodDoiIn19KG4pLGM9e2xlZnQ6bix3aWR0aDpzfSxkPXsuLi5sLHdpZHRoOmF9O2lmKHQuY3NzKHtsZWZ0OiIiLHJpZ2h0OiIifSksaS5jc3Moe2xlZnQ6IiIscmlnaHQ6IiJ9KSwiYWJzb2x1dGUiPT09bylyZXR1cm4gdC5jc3Moe3dpZHRoOnN9KSx2b2lkIGkuY3NzKGQpO3QuY3NzKGMpLGkuY3NzKGQpfWZ1bmN0aW9uIGEoZSl7dC5jc3Moe3RvcDplfSk7Y29uc3Qgbj1lK287aS5jc3Moe3RvcDpufSl9Y29uc3QgbD1mdW5jdGlvbigpe2xldCBlPUZuKGRvY3VtZW50KS5zY3JvbGxUb3AoKSxsPXIoZSk7cmV0dXJuKCk9Pntjb25zdCBjPUZuKGRvY3VtZW50KS5zY3JvbGxUb3AoKSxoPXIoYyk7aWYoImJvdHRvbSI9PT1oKXtkKGgpO3JldHVybiBhKGUrbi1jKSx2b2lkKGw9ImJvdHRvbSIpfWlmKGwhPT1oKXtpZihkKGgpLCJhYnNvbHV0ZSI9PT1oKXJldHVybiB0LmNzcyh7dG9wOjB9KSxpLmNzcyh7dG9wOm99KSxzKCksdm9pZChsPSJhYnNvbHV0ZSIpOyJzdGlja3kiPT09aCYmKHMoKSxhKG4pLGU9YyxsPSJzdGlja3kiKX19fSgpO2Z1bmN0aW9uIGMoKXtzKCksbCgpfWZ1bmN0aW9uIGQoZSl7Y29uc3Qgbz0iYWJzb2x1dGUiPT09ZTt0LnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyLS1tYXJrZXRzX2Fic29sdXRlIixvKSxpLnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci1zdGlja3ktaGVhZGVyLXdyYXBwZXItLW1hcmtldHNfYWJzb2x1dGUiLG8pLHQudG9nZ2xlQ2xhc3MoInR2LXNjcmVlbmVyLXRvb2xiYXItLW1hcmtldHNfc3RpY2t5IiwhbyksaS50b2dnbGVDbGFzcygidHYtc2NyZWVuZXItc3RpY2t5LWhlYWRlci13cmFwcGVyLS1zdGFuZGFsb25lX3N0aWNreSIsITApLGkudG9nZ2xlQ2xhc3MoInR2LXNjcmVlbmVyLXN0aWNreS1oZWFkZXItd3JhcHBlci0tbWFya2V0c19zdGlja3kiLCFvKX1jb25zdCBoPWZ1bmN0aW9uKCl7bGV0IGU7cmV0dXJuKCk9PntjbGVhclRpbWVvdXQoZSksZT1zZXRUaW1lb3V0KGMsMCl9fSgpO2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsKGZ1bmN0aW9uKCl7bCgpLCgwLEtvLmlzUnRsKSgpJiZzKCl9KSx7cGFzc2l2ZTohMH0pLGUuJGNvbnRlbnRbMF0uYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixzKSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIixoKSxNbigiLndpZGdldGJhci13cmFwIixzKSxNbigiLnR2LXNjcmVlbmVyLXRhYmxlIixzKSxkKHIoKSksYygpfWZ1bmN0aW9uIE9uKGUpe2NvbnN0eyRiZWZvcmU6dD1udWxsLCRhcHBlbmRUbzpvPW51bGwsJGRyb3Bkb3duQ29udGFpbmVyOmk9bnVsbCxiZWZvcmVNYWtpbmdTZWxlY3RQb3B1cDpuPSgpPT57fSxtYWtlU2VsZWN0UG9wdXA6cixhZnRlck1ha2luZ1NlbGVjdFBvcHVwOnM9KCk9Pnt9LGFmdGVyU2VsZWN0UG9wdXBBcHBlbmQ6YT0oKT0+e319PWUsbD17JGRyb3Bkb3duQ29udGFpbmVyOml9O24oKTtjb25zdHskd3JhcDpjLCRidXR0b246ZCwkZHJvcGRvd25Db250ZW50Omh9PXIobCk7cmV0dXJuIHMoYyxkLGgpLCh0fHxvKSYmKHQ/Yy5pbnNlcnRCZWZvcmUodCk6Yy5hcHBlbmRUbyhvKSxhKGMsZCxoKSksZH1jb25zdCBObj1uZXcgcG8uV2F0Y2hlZFZhbHVlKCExKTt2YXIgUG49byg5NzEwNTEpO2xldCBCbj1udWxsO2Z1bmN0aW9uICRuKGUsdCl7aWYoQm4mJk5uLnVuc3Vic2NyaWJlKEJuKSxCbj0oKT0+ewpjb25zdCBvPXdpbmRvdz8ud2lkZ2V0YmFyPy5sYXlvdXQ/LmdldFdpZGdldEJ5VHlwZSgiZGV0YWlsIik/LndpZGdldE9iamVjdDtvLm5hdmlnYXRlKGUsdCl9LE5uLnZhbHVlKCkpcmV0dXJuIEJuKCksdm9pZChCbj1udWxsKTtObi5zdWJzY3JpYmUoQm4se29uY2U6ITB9KX1mdW5jdGlvbiBXbihlPW51bGwsdCl7Y29uc3QgaT0oMCxQbi5wYXRoVG9Hcm91cCkoZT8/IiIpKyI/bmV3PSIrcGVyZm9ybWFuY2Uubm93KCk7dCYmYXN5bmMgZnVuY3Rpb24oZSl7UHJvbWlzZS5hbGwoW28uZSgyMTg3MCksby5lKDg0MzA2KSxvLmUoMjkyOTYpLG8uZSg1MjM5Niksby5lKDYwMDYyKSxvLmUoNDY5MDcpLG8uZSgyMDM1NCksby5lKDEzNDkyKSxvLmUoMzc3NDYpLG8uZSgyMzYyNCksby5lKDMyODE2KSxvLmUoMTk1OTUpLG8uZSgxOTc4Nyksby5lKDE3MDg3KSxvLmUoNzI2NjYpLG8uZSgxMDM4NSksby5lKDUyMDY1KSxvLmUoNjYwNSksby5lKDc0MzgxKSxvLmUoMTQ2MjUpLG8uZSg2NTcpLG8uZSg2MTgyMSksby5lKDY2MjcwKSxvLmUoNTUwMTEpLG8uZSg3MTkwMSksby5lKDgwNzMxKSxvLmUoNjg5NjQpLG8uZSgyOTEzMyksby5lKDE5ODMzKSxvLmUoMzIzODcpLG8uZSgzMDY5OSksby5lKDQ0NzgwKSxvLmUoODIyMzcpLG8uZSg0ODg1NCksby5lKDk0MTgyKSxvLmUoMTE0MzUpXSkudGhlbihvLmJpbmQobyw5OTUyMTMpKS50aGVuKCh0PT57dC5yZW5kZXJOb3Rlc0RpYWxvZyhlKX0pKX0oaSksJG4oaSl9dmFyIHFuLFZuPW8oMzQ0MTAzKTshZnVuY3Rpb24oZSl7ZVtlLkhlYWRlcj0wXT0iSGVhZGVyIixlW2UuVGFibGU9MV09IlRhYmxlIn0ocW58fChxbj17fSkpO2NvbnN0IEhuPXtbcW4uSGVhZGVyXTp7ZGVzY3JpcHRpb246Ik9wZW4gaGVhZGVyIGNvbnRleHQgbWVudSIscHJlcGVuZDohMX0sW3FuLlRhYmxlXTp7ZGVzY3JpcHRpb246Ik9wZW4gY29udGV4dCBtZW51IixwcmVwZW5kOiEwfX07ZnVuY3Rpb24gVW4oZSx0LGkpe3JldHVybiBhc3luYyBmdW5jdGlvbigpe2NvbnN0W3tBY3Rpb246ZX0se0FkZFRvV2F0Y2hsaXN0QWN0aW9uOnR9XT1hd2FpdCBQcm9taXNlLmFsbChbby5lKDQzOTgwKS50aGVuKG8uYmluZChvLDUwOTA0KSksby5lKDE3ODcpLnRoZW4oby5iaW5kKG8sMjczMjg1KSldKTtyZXR1cm57ZGVmYXVsdDplLGFkZFRvV2F0Y2hsaXN0OnR9fSgpLnRoZW4oKG89PnQoZSxvKSkpLnRoZW4oKHQ9Pntjb25zdCBvPU9iamVjdC52YWx1ZXModCk7cmV0dXJuIEhuW2ldLnByZXBlbmQ/ZnVuY3Rpb24oZSx0KXtyZXR1cm4gZS5fbGlmZWN5Y2xlLmJlZm9yZUFwcGVuZENvbnRleHRNZW51SXRlbXModC5sZW5ndGg+MD8iYm90dG9tIjp2b2lkIDApLmNvbmNhdCh0KX0oZS52aWV3LG8pOm99KSl9ZnVuY3Rpb24gem4oZSx0LGkpe2NvbnN0e3ZpZXc6bixlOnJ9PWU7cmV0dXJuIFVuKGUsdCxpKS50aGVuKChlPT57cmV0dXJuIHQ9ZSxpPXIsby5lKDQzOTgwKS50aGVuKG8uYmluZChvLDI1MDQzOSkpLnRoZW4oKCh7Q29udGV4dE1lbnVNYW5hZ2VyOmV9KT0+ZS5zaG93TWVudSh0LGkpKSk7dmFyIHQsaX0pKS50aGVuKCgoKT0+e2NvbnN0IGU9SG5baV0uZGVzY3JpcHRpb247bi5fbW9kZWwudHJhY2tFdmVudChlKX0pKX12YXIgam4sR249byg4MTEzMTIpLFhuPW8oNjIxOTI2KSxLbj1vKDU3NjEwMyksWW49byg3NjU2OTUpLEpuPW8oNzU2Mjg4KSxabj1vKDQ4MjUwNCk7ZnVuY3Rpb24gUW4oZSx0KXtjb25zdHt2aWV3Om99PWUsaT1vLl9icmlkZ2Usbj10LmRlZmF1bHQscj1vLl9zZWxlY3RhYmxlTGlzdD9vLl9zZWxlY3RhYmxlTGlzdC5nZXRTZWxlY3RlZEtleXMoKS5sZW5ndGg6MSxzPXsuLi5lLHNlbGVjdGVkU3ltYm9sc0NvdW50OnJ9O2lmKCgwLEFuLmlzRXh0ZXJuYWxXaWRnZXQpKGkpKXJldHVybnsuLi50cihzLG4pfTtpZigoMCxBbi5pc1NjcmVlbmVyUGFnZSkoaSl8fCgwLEFuLmlzTWFya2V0UGFnZSkoaSkpe3JldHVybnsuLi4wPT09cj90cihzLG4pOnt9LC4uLmVyKHMsdC5hZGRUb1dhdGNobGlzdCl9fXJldHVybnsuLi5lcihzLHQuYWRkVG9XYXRjaGxpc3QpLC4uLm9yKHMsbiksLi4uaXIocyxuKX19ZnVuY3Rpb24gZXIoZSx0KXtjb25zdHt2aWV3Omksc3ltYm9sOm4sc2hvcnROYW1lOnIsc2VsZWN0ZWRTeW1ib2xzQ291bnQ6c309ZTtsZXQgYSxsOzA9PT1zPyhhPV8udChudWxsLHtyZXBsYWNlOntzeW1ib2xOYW1lOnJ9fSxvKDIyNDA1NikpLGw9W25dKTooYT1fLnQobnVsbCx2b2lkIDAsbyg4MTU3MTIpKSxsPWkuX3NlbGVjdGFibGVMaXN0P2kuX3NlbGVjdGFibGVMaXN0LmdldFNlbGVjdGVkS2V5cygpLnNsaWNlKDApOltdKTtyZXR1cm57YWRkVG9XYXRjaExpc3RBY3Rpb246bmV3IHQoe2xhYmVsOmEsZGlzYWJsZWQ6ITAsb25FeGVjdXRlOigpPT57KDAsWG4ucnVuT3JTaWduaW5XaXRoRmVhdHVyZSkoKCgpPT57Y29uc3QgZT1pLl9nZXRXYXRjaGxpc3QoKTtlJiYoZS5hZGRTeW1ib2xzKGwpLCgwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBHbi5EaXNwYXRjaENvbnRleHRNZW51QWN0aW9uRXZlbnQoam4uQWRkVG9XYXRjaGxpc3QsInJvdyIsITApKSl9KSx7ZmVhdHVyZToid2F0Y2hMaXN0Iixzb3VyY2U6ImFkZCBzeW1ib2wgdG8gd2F0Y2hsaXN0In0pfSxpY29uOkpufSl9fWZ1bmN0aW9uIHRyKGUsdCl7Y29uc3R7dmlldzppfT1lO3JldHVyblsic2VjdG9yIiwiaW5kdXN0cnkiXS5pbmNsdWRlcyhpLl9tb2RlbC5zY3JlZW5lcl90eXBlKT9mdW5jdGlvbihlLHQpe2NvbnN0e2U6aX09ZSxuPVpuKGkudGFyZ2V0KS5jbG9zZXN0KCIudHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3ciKS5maW5kKCIudHYtc2NyZWVuZXJfX3N5bWJvbCIpO3JldHVybntvcGVuU3ltYm9sUGFnZUFjdGlvbjpuZXcgdCh7YWN0aW9uSWQ6IldhdGNobGlzdC5PcGVuU3ltYm9sT3ZlcnZpZXciLG9wdGlvbnM6e2xhYmVsOl8udChudWxsLHtyZXBsYWNlOntzeW1ib2w6bi50ZXh0KCl9fSxvKDcwNjQwMCkpLG9uRXhlY3V0ZTooKT0+e3dpbmRvdy5vcGVuKG4uYXR0cigiaHJlZiIpLCJfYmxhbmsiKSwoMCwKWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IEduLkRpc3BhdGNoQ29udGV4dE1lbnVBY3Rpb25FdmVudChqbi5PcGVuU3ltYm9sUGFnZSwicm93IiwhMCkpfX19KX19KGUsdCk6ZnVuY3Rpb24oZSx0KXtjb25zdHt2aWV3Omksc2hvcnROYW1lOm4sc3ltYm9sOnJ9PWU7cmV0dXJue29wZW5DaGFydEFjdGlvbjpuZXcgdCh7YWN0aW9uSWQ6IldhdGNobGlzdC5PcGVuU3ltYm9sQ2hhcnQiLG9wdGlvbnM6e2xhYmVsOl8udChudWxsLHtyZXBsYWNlOntzeW1ib2w6bn19LG8oOTM2MTM1KSksb25FeGVjdXRlOigpPT57Y29uc3R7YXBwbHlTeW1ib2w6ZX09aS5fYnJpZGdlO2UmJihlKHIsITApLCgwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBHbi5EaXNwYXRjaENvbnRleHRNZW51QWN0aW9uRXZlbnQoam4uT3BlbkNoYXJ0LCJyb3ciLCEwKSkpfX19KX19KGUsdCl9ZnVuY3Rpb24gb3IoZSx0KXtjb25zdHt2aWV3Omksc3ltYm9sOm4sc2hvcnROYW1lOnIsc2VsZWN0ZWRTeW1ib2xzQ291bnQ6c309ZTtsZXQgYSxsOzA9PT1zPyhhPV8udChudWxsLHtyZXBsYWNlOntzeW1ib2w6cn19LG8oNTYwNDcwKSksbD1bbl0pOihhPV8udChudWxsLHZvaWQgMCxvKDcyMDU0NikpLGw9aS5fc2VsZWN0YWJsZUxpc3QuZ2V0U2VsZWN0ZWRLZXlzKCkpO3JldHVybntjb21wYXJlQWN0aW9uOm5ldyB0KHthY3Rpb25JZDoiV2F0Y2hsaXN0LkFkZFN5bWJvbFRvQ29tcGFyZSIsb3B0aW9uczp7bGFiZWw6YSxvbkV4ZWN1dGU6YXN5bmMoKT0+e2Zvcihjb25zdCBlIG9mIGwpYXdhaXQoaS5fYnJpZGdlLmNoYXJ0V2lkZ2V0Q29sbGVjdGlvbj8uYWN0aXZlQ2hhcnRXaWRnZXQudmFsdWUoKS5hZGRDb21wYXJlQXNPdmVybGF5KGUsZmFsc2UpKX0saWNvbjpZbn19KX19ZnVuY3Rpb24gaXIoZSx0KXtjb25zdHtzeW1ib2w6aSxzaG9ydE5hbWU6bixzZWxlY3RlZFN5bWJvbHNDb3VudDpyfT1lO2lmKHI+MClyZXR1cm57fTtyZXR1cm57YWRkVG9UZXh0Tm90ZXNBY3Rpb246bmV3IHQoe2FjdGlvbklkOiJOb3RlLkNyZWF0ZSIsb3B0aW9uczp7aWNvbjpLbixsYWJlbDpfLnQobnVsbCx7cmVwbGFjZTp7c3ltYm9sOm59fSxvKDIzOTA3NykpLG9uRXhlY3V0ZTooKT0+eygwLGZuLnJ1bk9yU2lnbkluKSgoKCk9PnsoMCxZby5zZW5kU25vd1Bsb3dEYXRhKShuZXcgR24uRGlzcGF0Y2hDb250ZXh0TWVudUFjdGlvbkV2ZW50KGpuLkFkZFRleHROb3RlLCJyb3ciLCEwKSksd2luZG93LndpZGdldGJhcj8uc2V0UGFnZSgiYmFzZSIpLFduKGkpfSkse3NvdXJjZToiQWRkIHRleHQgbm90ZSBpbiBzY3JlZW5lciJ9KX19fSl9fSFmdW5jdGlvbihlKXtlLkFkZFRvV2F0Y2hsaXN0PSJhZGRfdG9fd2F0Y2hsaXN0IixlLk9wZW5DaGFydD0ib3Blbl9jaGFydCIsZS5BZGRUb0NvbXBhcmU9ImFkZF90b19jb21wYXJlIixlLkFkZFRleHROb3RlPSJhZGRfdGV4dF9ub3RlIixlLk9wZW5TeW1ib2xQYWdlPSJvcGVuX3N5bWJvbF9wYWdlIn0oam58fChqbj17fSkpO3ZhciBucj1vKDk0ODM4MCkscnI9byg4MTA0MSksc3I9bygyMDA2NjYpLGFyPW8oODg0Nzk4KSxscj1vKDE1MjE4Mik7ZnVuY3Rpb24gY3IoZSl7Y29uc3R7c3ltYm9sSHRtbDp0LGxvZ29Vcmw6byxzeW1ib2xGaXJzdExldHRlcjppLHNpemU6bj0ieHNtYWxsIn09ZTtyZXR1cm4gZHIoe3N5bWJvbEh0bWw6dCxsb2dvSHRtbDooMCxhci5nZXRDaXJjbGVMb2dvSHRtbCkoe2xvZ29Vcmw6byxzaXplOm4scGxhY2Vob2xkZXJMZXR0ZXI6aSxjbGFzc05hbWU6InR2LXNjcmVlbmVyLXRhYmxlX19sb2dvLWNvbnRhaW5lciJ9KX0pfWZ1bmN0aW9uIGRyKGUpe2NvbnN0e2xvZ29IdG1sOnQ9IiIsc3ltYm9sSHRtbDpvPSIiLHdyYXBIdG1sQ2xhc3M6aT0iIn09ZTtyZXR1cm5gXG5cdFx0PGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdGFibGVfX3N5bWJvbC1jb250YWluZXIgJHtpfSI+XG5cdFx0XHQ8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci10YWJsZV9fc3ltYm9sLWFkZGl0aW9uIj48L2Rpdj5cblx0XHRcdCR7dH1cblx0XHRcdDxkaXYgY2xhc3M9InR2LXNjcmVlbmVyLXRhYmxlX19zeW1ib2wtY29udGFpbmVyLWRlc2NyaXB0aW9uIj5cblx0XHRcdFx0JHtvfVxuXHRcdFx0PC9kaXY+XG5cdFx0PC9kaXY+XG5cdGB9dmFyIGhyPW8oODYyMjEzKTtjb25zdCB1cj0oMCxoci5nZXRMb2dvVXJsUmVzb2x2ZXIpKCk7ZnVuY3Rpb24gX3IoZSl7aWYoZSYmIm51bGwiIT09ZSlyZXR1cm4gdXIuZ2V0U3ltYm9sTG9nb1VybChlLGhyLkxvZ29TaXplLk1lZGl1bSl9ZnVuY3Rpb24gcHIoZSl7Y29uc3R7ZmllbGRzT3JkZXI6dCxwcm9TeW1ib2w6byxyb3dEYXRhOmksc3ltYm9sSHRtbDpufT1lLHI9dC5pbmRleE9mKGguTG9nb0lkKTtpZigtMSE9PXIpe2NvbnN0IGU9aVtyXTtyZXR1cm4gY3Ioe3N5bWJvbEh0bWw6bixzeW1ib2xGaXJzdExldHRlcjptcihvKSxsb2dvVXJsOl9yKGUpfSl9Y29uc3Qgcz10LmluZGV4T2YoaC5CYXNlQ3VycmVuY3lMb2dvSWQpLGE9LTEhPT1zLGw9dC5pbmRleE9mKGguQ3VycmVuY3lMb2dvSWQpLGM9LTEhPT1sO2lmKGEmJmMpe2NvbnN0IGU9aVtzXSx0PWlbbF07cmV0dXJuIGZ1bmN0aW9uKGUsdCxvKXtyZXR1cm4gZHIoe3N5bWJvbEh0bWw6ZSxsb2dvSHRtbDooMCxsci5nZXRDaXJjbGVMb2dvUGFpckh0bWwpKHtwcmltYXJ5TG9nb1VybDp0LHNlY29uZGFyeUxvZ29Vcmw6byxzaXplOiJ4c21hbGwiLGNsYXNzTmFtZToidHYtc2NyZWVuZXItdGFibGVfX2xvZ28tY29udGFpbmVyIn0pfSl9KG4sX3IoZSksX3IodCkpfWlmKGEpe2NvbnN0IGU9aVtzXTtyZXR1cm4gY3Ioe3N5bWJvbEh0bWw6bixzeW1ib2xGaXJzdExldHRlcjptcihvKSxsb2dvVXJsOl9yKGUpfSl9aWYoYyl7Y29uc3QgZT1pW2xdO3JldHVybiBjcih7c3ltYm9sSHRtbDpuLHN5bWJvbEZpcnN0TGV0dGVyOm1yKG8pLGxvZ29Vcmw6X3IoZSl9KX1yZXR1cm4gZHIoe3N5bWJvbEh0bWw6bn0pfWZ1bmN0aW9uIG1yKGUpe3JldHVybigwLFZuLnNob3J0TmFtZSkoZSlbMF19ZnVuY3Rpb24gZ3IoZSx0LG8pe3JldHVybiBlLmdldChoZSh0LG8pKX12YXIgdnI7IWZ1bmN0aW9uKGUpe2UuQm9vbD0iYm9vbCIsCmUuRnVuZGFtZW50YWxQcmljZT0iZnVuZGFtZW50YWxfcHJpY2UiLGUuTnVtYmVyPSJudW1iZXIiLGUuUGVyY2VudD0icGVyY2VudCIsZS5QcmljZT0icHJpY2UiLGUuVGV4dD0idGV4dCIsZS5UaW1lPSJ0aW1lIn0odnJ8fCh2cj17fSkpO2NvbnN0IGZyPVsiJm1kYXNoOyIsJzxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lci10YWJsZV9fY2VsbC0tY29sb3Itbm9ybWFsIj7igJQ8L3NwYW4+J107ZnVuY3Rpb24geXIoZSx0LG8saSxuKXtpZighU3IoKSYmIW4pcmV0dXJuIiI7Y29uc3Qgcj0hZSYmbz09PXZyLlByaWNlfHwhdCYmbz09PXZyLkZ1bmRhbWVudGFsUHJpY2V8fGZyLmluY2x1ZGVzKGkpLHM9IVt2ci5QcmljZSx2ci5GdW5kYW1lbnRhbFByaWNlXS5pbmNsdWRlcyhvKTtpZihyfHxzKXJldHVybiIiO2xldCBhO3JldHVybiBhPW89PT12ci5QcmljZT9lOnQsYDxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lci10YWJsZV9fY2VsbC1jdXJyZW5jeS12YWx1ZSI+JHthfTwvc3Bhbj5gfWNvbnN0IGJyPSJzY3JlZW5lci5zaG93Q3VycmVuY3lMYWJlbCI7ZnVuY3Rpb24gU3IoKXtyZXR1cm4gbi5nZXRCb29sKGJyLCEwKX12YXIgd3I9bygxNDA4OTUpLENyPW8oNDg3NzUwKSxrcj1vKDg0MTg3NyksVHI9byg4MjMzNTgpLEVyPW8oNDgyNTA0KSx4cj1vKDQ4MjUwNCk7Y2xhc3MgQXJ7Y29uc3RydWN0b3IoZSl7dGhpcy5fc2V0T3B0aW9ucyhlKSx0aGlzLl9maWVsZHM9e30sdGhpcy5fZmllbGRzT3JkZXI9QXJyYXkuaXNBcnJheShlLmZpZWxkc09yZGVyKSYmZS5maWVsZHNPcmRlcnx8W10sdGhpcy5maWVsZHNPcmRlckNoYW5nZT1uZXcgbnIuRGVsZWdhdGUsdGhpcy5fY29sdW1uc01hcD1uZXcgTWFwLHRoaXMuYWZ0ZXJGaXhDb2xzPW5ldyBuci5EZWxlZ2F0ZSx0aGlzLl9hZGRpdGlvbmFsQ29sdW1ucz1bXSx0aGlzLl9oaWRkZW5Db2x1bW5zPTAsdGhpcy5fdGhyb3R0bGVGaXhDb2xzPSgwLHVpLmRlZmF1bHQpKCgoKT0+eyJtaW5pbWl6ZWQiIT09KHRoaXMuX21vZGVsLl9icmlkZ2UuYm90dG9tVG9vbGJhck1vZGU/dGhpcy5fbW9kZWwuX2JyaWRnZS5ib3R0b21Ub29sYmFyTW9kZS52YWx1ZSgpOiJub3JtYWwiKSYmKHRoaXMuX3VuaGlkZUNvbHVtbnMoKSx0aGlzLl91bmhpZGVDZWxscygpLHRoaXMuX2ZpeENvbHMoKSl9KSwxMCksdGhpcy5kcmFnU3RhcnRlZD1uZXcgcG8uV2F0Y2hlZFZhbHVlLHRoaXMuX2ZpZWxkc09yZGVyQ2hhbmdlPSExLHRoaXMuX3VwZGF0ZUVtcHR5TWVzc2FnZUljb249dGhpcy5fdXBkYXRlRW1wdHlNZXNzYWdlSWNvbi5iaW5kKHRoaXMpLHNyLndhdGNoZWRUaGVtZS5zdWJzY3JpYmUodGhpcy5fdXBkYXRlRW1wdHlNZXNzYWdlSWNvbil9X3NldE9wdGlvbnMoZSl7dGhpcy5fb3B0aW9ucz1lfHx7fSx0aGlzLl9tb2RlbD10aGlzLl9vcHRpb25zLm1vZGVsLHRoaXMuX2RlZmF1bHRGb3JtYXR0ZXI9dGhpcy5fb3B0aW9ucy5kZWZhdWx0Rm9ybWF0dGVyfHwoZT0+ZS52YWx1ZSksdGhpcy5fbnVsbEZvcm1hdHRlcj10aGlzLl9vcHRpb25zLm51bGxGb3JtYXR0ZXJ8fCgoKT0+IiZtZGFzaDsiKSx0aGlzLl93aWR0aENoYW5nZT10aGlzLl9vcHRpb25zLndpZHRoQ2hhbmdlLHRoaXMuX3Zpc2liaWxpdHlDaGFuZ2U9dGhpcy5fb3B0aW9ucy52aXNpYmlsaXR5Q2hhbmdlLHRoaXMuX25vRGF0YVN0cmluZz10aGlzLl9vcHRpb25zLm5vRGF0YVN0cmluZyx0aGlzLl9pc1VuYXZhaWxhYmxlV2lkZ2V0TWFya2V0PXRoaXMuX29wdGlvbnMuaXNVbmF2YWlsYWJsZVdpZGdldE1hcmtldCx0aGlzLl9kaXNhYmxlU3RpY2t5SGVhZGVyPWUuZGlzYWJsZVN0aWNreUhlYWRlcn11cGRhdGVTb3J0RmllbGQoZSx0KXtjb25zdCBvPXRoaXMuZ2V0VGgoZSk7ZSYmdCYmby5zaXplKCkmJih0aGlzLiR0aGVhZFJvdy5maW5kKCIudHYtc2NyZWVuZXItdGFibGVfX3NvcnQtLWRlc2MsLnR2LXNjcmVlbmVyLXRhYmxlX19zb3J0LS1hc2MiKS5yZW1vdmVDbGFzcygidHYtc2NyZWVuZXItdGFibGVfX3NvcnQtLWRlc2MgdHYtc2NyZWVuZXItdGFibGVfX3NvcnQtLWFzYyIpLG8uZmluZCgiLmpzLXRhYmxlLXNvcnQiKS5lbXB0eSgpLmFkZENsYXNzKGB0di1zY3JlZW5lci10YWJsZV9fc29ydC0tJHt0fWApLmFwcGVuZCgiYXNjIj09PXQ/a3I6VHIpKX1oaWdobGlnaHRDZWxsKGUsdCxvKXtjb25zdCBpPXRoaXMuJHRib2R5WzBdLnF1ZXJ5U2VsZWN0b3IoYHRyW2RhdGEtc3ltYm9sPSIke2V9Il0gdGRbZGF0YS1maWVsZC1rZXk9IiR7dH0iXWApO2lmKGkpe2kuY2xhc3NMaXN0LmFkZCgidHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLWhpZ2hsaWdodGVkIik7Y29uc3QgZT1pLnF1ZXJ5U2VsZWN0b3IoInNwYW4iKTtpZihlKXtjb25zdCB0PW8/InR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS1ncm93aW5nIjoidHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLWZhbGxpbmciO2UuY2xhc3NMaXN0LmFkZCh0KX19fWZsaWNrUm93KGUpe3RoaXMuJHRib2R5WzBdLnF1ZXJ5U2VsZWN0b3JBbGwoYHRyW2RhdGEtc3ltYm9sPSIke2V9Il0gdGRgKS5mb3JFYWNoKChlPT57Y29uc3QgdD1lLnF1ZXJ5U2VsZWN0b3IoInNwYW4iKTt0JiZ0LmNsYXNzTGlzdC5yZW1vdmUoInR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS1ncm93aW5nIiwidHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLWZhbGxpbmciKX0pKX1fY3JlYXRlVGFibGUoKXtpZih0aGlzLl90YWJsZSlyZXR1cm47Y29uc3QgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0YWJsZSIpLHQ9WyJ0di1kYXRhLXRhYmxlIl07dGhpcy5fb3B0aW9ucy5hZGRUYWJsZUNsYXNzZXMmJnQucHVzaCguLi50aGlzLl9vcHRpb25zLmFkZFRhYmxlQ2xhc3NlcyksZS5jbGFzc0xpc3QuYWRkKC4uLnQpO2NvbnN0IG89ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiY29sZ3JvdXAiKSxpPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRoZWFkIiksbj1bInR2LWRhdGEtdGFibGVfX3RoZWFkIl07dGhpcy5fb3B0aW9ucy5hZGRUaGVhZENsYXNzZXMmJm4ucHVzaCguLi50aGlzLl9vcHRpb25zLmFkZFRoZWFkQ2xhc3NlcyksaS5jbGFzc0xpc3QuYWRkKC4uLm4pCjtjb25zdCByPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRyIikscz1bInR2LWRhdGEtdGFibGVfX3RoZWFkLXJvdyJdO3RoaXMuX29wdGlvbnMuYWRkVGhlYWRSb3dDbGFzc2VzJiZzLnB1c2goLi4udGhpcy5fb3B0aW9ucy5hZGRUaGVhZFJvd0NsYXNzZXMpLHIuY2xhc3NMaXN0LmFkZCguLi5zKTtjb25zdCBhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRib2R5Iik7YS5jbGFzc0xpc3QuYWRkKCJ0di1kYXRhLXRhYmxlX190Ym9keSIpLGUuYXBwZW5kQ2hpbGQobyksZS5hcHBlbmRDaGlsZChpKSxpLmFwcGVuZENoaWxkKHIpLGUuYXBwZW5kQ2hpbGQoYSksdGhpcy5fdGFibGU9ZSx0aGlzLl9jb2xncm91cD1vLHRoaXMuX3RoZWFkUm93PXIsdGhpcy5fdGJvZHk9YSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIiwoKCk9PnRoaXMuX3Rocm90dGxlRml4Q29scygpKSksdGhpcy5fd2lkdGhDaGFuZ2Uuc3Vic2NyaWJlKHRoaXMsKCgpPT50aGlzLl90aHJvdHRsZUZpeENvbHMoKSkpLHRoaXMuX21vZGVsLl9icmlkZ2UuYm90dG9tVG9vbGJhck1vZGUmJnRoaXMuX21vZGVsLl9icmlkZ2UuYm90dG9tVG9vbGJhck1vZGUuc3Vic2NyaWJlKCgoKT0+dGhpcy5fdGhyb3R0bGVGaXhDb2xzKCkpKSx0aGlzLl92aXNpYmlsaXR5Q2hhbmdlJiZ0aGlzLl92aXNpYmlsaXR5Q2hhbmdlLnN1YnNjcmliZSgoZT0+e2UmJnRoaXMuX3Rocm90dGxlRml4Q29scygpfSkpfV9jcmVhdGVTdGlja3lXcmFwcGVyKCl7aWYodGhpcy5fc3RpY2t5V3JhcHBlcilyZXR1cm47Y29uc3QgZT1bInR2LWRhdGEtdGFibGUtc3RpY2t5LXdyYXBwZXIiXTt0aGlzLl9vcHRpb25zLmFkZFN0aWNreUhlYWRlcldyYXBwZXJDbGFzc2VzJiZlLnB1c2goLi4udGhpcy5fb3B0aW9ucy5hZGRTdGlja3lIZWFkZXJXcmFwcGVyQ2xhc3Nlcyk7Y29uc3QgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTt0LmNsYXNzTGlzdC5hZGQoLi4uZSk7Y29uc3Qgbz10aGlzLl90YWJsZS5jbG9uZU5vZGUoITApO3QuYXBwZW5kKG8pLHRoaXMuX3N0aWNreVdyYXBwZXI9dH1fY3JlYXRlSGVhZGVyKCl7Y29uc3QgZT1kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCksdD1kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7dGhpcy5fZGlzYWJsZVN0aWNreUhlYWRlcnx8dGhpcy5fY3JlYXRlU3RpY2t5V3JhcHBlcigpO2ZvcihsZXQgaT0wO2k8dGhpcy5fY29sdW1uc09yZGVyLmxlbmd0aDsrK2kpe2NvbnN0IG49dGhpcy5fY29sdW1uc09yZGVyW2ldO2lmKCF0aGlzLl9maWVsZHNbbl0pY29udGludWU7Y29uc3Qgcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0aCIpO3Iuc2V0QXR0cmlidXRlKCJkYXRhLWZpZWxkIixuKTtjb25zdCBzPVsidHYtZGF0YS10YWJsZV9fdGgiLCJ0di1kYXRhLXRhYmxlX19jZWxsIiwianMtdHYtZGF0YS10YWJsZS10aCIsYGpzLXR2LWRhdGEtdGFibGUtdGgtJHt0aGlzLl9lc2Mobil9YF07aWYodGhpcy5fb3B0aW9ucy5hZGRUaENsYXNzZXMpe2NvbnN0IGU9ImZ1bmN0aW9uIj09dHlwZW9mIHRoaXMuX29wdGlvbnMuYWRkVGhDbGFzc2VzP3RoaXMuX29wdGlvbnMuYWRkVGhDbGFzc2VzKG4sdGhpcy5fZmllbGRzW25dKTp0aGlzLl9vcHRpb25zLmFkZFRoQ2xhc3NlcztzLnB1c2goLi4uZSl9ci5jbGFzc0xpc3QuYWRkKC4uLihvPXMsby5maWx0ZXIoQm9vbGVhbikpKTtjb25zdCBhPSJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLl9vcHRpb25zLnRpdGxlRm9ybWF0dGVyP3RoaXMuX29wdGlvbnMudGl0bGVGb3JtYXR0ZXIobix0aGlzLl9maWVsZHNbbl0pOnRoaXMuX2ZpZWxkc1tuXSYmKHRoaXMuX2ZpZWxkc1tuXS5jb250ZW50fHx0aGlzLl9maWVsZHNbbl0udGl0bGUpfHxuO2EgaW5zdGFuY2VvZiBFcj9yLmFwcGVuZChhWzBdKTpyLmlubmVySHRtbD1hLHRoaXMuX3NldERyYWdnYWJsZShyKSx0LmFwcGVuZChyKTtjb25zdCBsPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImNvbCIpO2wuY2xhc3NMaXN0LmFkZCgianMtdHYtZGF0YS10YWJsZS1jb2wiLGBqcy10di1kYXRhLXRhYmxlLWNvbC0ke3RoaXMuX2VzYyhuKX1gKSxlLmFwcGVuZChsKX12YXIgbztNcih0aGlzLl9jb2xncm91cCksTXIodGhpcy5fdGhlYWRSb3cpO2NvbnN0IGk9dGhpcy5fZmllbGRzW3RoaXMuX21vZGVsLnNlYXJjaEZpZWxkXT90aGlzLl9maWVsZHNbdGhpcy5fbW9kZWwuc2VhcmNoRmllbGRdLnNlYXJjaFZhbHVlOnZvaWQgMDtpZih0aGlzLl9kaXNhYmxlU3RpY2t5SGVhZGVyKXRoaXMuX2NvbGdyb3VwLmFwcGVuZChlKSx0aGlzLl90aGVhZFJvdy5hcHBlbmQodCksdGhpcy5fc2V0U2VhcmNoSW5wdXQodGhpcy5fdGhlYWRSb3csaSk7ZWxzZXtjb25zdCBvPXRoaXMuX3N0aWNreVdyYXBwZXIucXVlcnlTZWxlY3RvcigidGFibGUiKSxuPW8ucXVlcnlTZWxlY3RvcigiY29sZ3JvdXAiKSxyPW8ucXVlcnlTZWxlY3RvcigidGhlYWQgdHIiKTtNcihuKSxNcihyKTtjb25zdCBzPWUuY2xvbmVOb2RlKCEwKTtuLmFwcGVuZChlKSx0aGlzLl9jb2xncm91cC5hcHBlbmQocyk7Y29uc3QgYT10LmNsb25lTm9kZSghMCk7ci5hcHBlbmQodCksdGhpcy5fdGhlYWRSb3cuYXBwZW5kKGEpLHRoaXMuX3RoZWFkUm93U3RpY2t5PXIsby5jbGFzc0xpc3QuYWRkKCJ0di1zY3JlZW5lci10YWJsZS0tZml4ZWQiKSx4cih0aGlzLl90aGVhZFJvdykuZmluZCgiLmpzLXRhYmxlLXNvcnQiKS5yZW1vdmUoKSx0aGlzLl9zZXRTZWFyY2hJbnB1dCh0aGlzLl90aGVhZFJvd1N0aWNreSxpKX19X3NldERyYWdnYWJsZShlKXtjb25zdCB0PXhyKGUpO2lmKHQuaXMoIi5qcy1kcmFnZ2FibGUiKSlyZXR1cm47Y29uc3QgaT14cih0aGlzLl90aGVhZFJvdyk7bGV0IG49ITE7dC5hZGRDbGFzcygianMtZHJhZ2dhYmxlIikub24oIm1vdXNlZG93biB0b3VjaHN0YXJ0IiwoZT0+e2lmKHQuZGF0YSgiZmllbGQiKT09PXRoaXMuX21vZGVsLnNlYXJjaEZpZWxkKXJldHVybjtlLnByZXZlbnREZWZhdWx0KCksdC5jc3Moe3Bvc2l0aW9uOiJyZWxhdGl2ZSIsbGVmdDowfSk7Y29uc3Qgcj10Lm9mZnNldCgpLmxlZnQ7bGV0IHM9cgo7Y29uc3QgYT1lLnBhZ2VYfHxlLm9yaWdpbmFsRXZlbnQudG91Y2hlc1swXS5wYWdlWCxsPWU9Pntjb25zdCBjPShlLnBhZ2VYfHxlLm9yaWdpbmFsRXZlbnQudG91Y2hlc1swXS5wYWdlWCktYTtpZighbil7aWYoTWF0aC5hYnMoYyk8MTApcmV0dXJuO28uZSg0Mzk4MCkudGhlbihvLmJpbmQobywyNTA0MzkpKS50aGVuKCgoe0NvbnRleHRNZW51TWFuYWdlcjplfSk9PntudWxsIT09ZS5nZXRTaG93bigpJiYobj0hMSx0LmNzcygibGVmdCIsImF1dG8iKSx4cih3aW5kb3cpLm9mZigibW91c2Vtb3ZlIHRvdWNobW92ZSIsbCksdGhpcy5fb25EcmFnU3RvcCh0KSl9KSksdGhpcy5fb25EcmFnU3RhcnQodCksdC5vbmUoImNsaWNrIiwoZT0+e24mJmUuc3RvcFByb3BhZ2F0aW9uKCl9KSl9bj0hMDtjb25zdCBkPWkub2Zmc2V0KCkubGVmdCxoPWkub3V0ZXJXaWR0aCgpLHU9dC5vdXRlcldpZHRoKCksXz1NYXRoLm1heChkLE1hdGgubWluKGQraC11LHIrYykpLHA9Xyt1LzI7bGV0IG09eHIoKSxnPSExO2NvbnN0IHY9dC5wcmV2KCk7aWYodi5zaXplKCkmJigoMCxLby5pc1J0bCkoKT9wPnYub2Zmc2V0KCkubGVmdCt2Lm91dGVyV2lkdGgoKS8yOl88PWR8fHA8di5vZmZzZXQoKS5sZWZ0K3Yub3V0ZXJXaWR0aCgpLzIpKW09djtlbHNle2NvbnN0IGU9dC5uZXh0KCk7aWYoZS5zaXplKCkmJiFlLmlzKCIuaS1oaWRkZW4iKSl7KF8rdT49ZCtofHwoKDAsS28uaXNSdGwpKCk/cDxlLm9mZnNldCgpLmxlZnQrZS5vdXRlcldpZHRoKCkvMjpwPmUub2Zmc2V0KCkubGVmdCtlLm91dGVyV2lkdGgoKS8yKSkmJihtPWUsZz0hMCl9fWNvbnN0IGY9bS5kYXRhKCJmaWVsZCIpO2lmKG0uc2l6ZSgpJiYibmFtZSIhPT1mKXtjb25zdCBlPXQuZGF0YSgiZmllbGQiKSxvPXhyKHRoaXMuX2NvbGdyb3VwKS5maW5kKGAuanMtdHYtZGF0YS10YWJsZS1jb2wtJHt0aGlzLl9lc2MoZSl9YCksaT14cih0aGlzLl9jb2xncm91cCkuZmluZChgLmpzLXR2LWRhdGEtdGFibGUtY29sLSR7dGhpcy5fZXNjKGYpfWApO2xldCBuPXhyKCkscj14cigpO3RoaXMuX3N0aWNreVdyYXBwZXImJihuPXhyKHRoaXMuX3N0aWNreVdyYXBwZXIpLmZpbmQoYC5qcy10di1kYXRhLXRhYmxlLWNvbC0ke3RoaXMuX2VzYyhlKX1gKSxyPXhyKHRoaXMuX3N0aWNreVdyYXBwZXIpLmZpbmQoYC5qcy10di1kYXRhLXRhYmxlLWNvbC0ke3RoaXMuX2VzYyhmKX1gKSksZz8oby5pbnNlcnRBZnRlcihpKSxuLnNpemUoKSYmci5zaXplKCkmJm4uaW5zZXJ0QWZ0ZXIocikpOihvLmluc2VydEJlZm9yZShpKSxuLnNpemUoKSYmci5zaXplKCkmJm4uaW5zZXJ0QmVmb3JlKHIpKTtsZXQgYT14cigpLGw9eHIoKTt0aGlzLl9zdGlja3lXcmFwcGVyJiYoYT14cih0aGlzLl9zdGlja3lXcmFwcGVyKS5maW5kKGAuanMtdHYtZGF0YS10YWJsZS10aC0ke3RoaXMuX2VzYyhlKX1gKSxsPXhyKHRoaXMuX3N0aWNreVdyYXBwZXIpLmZpbmQoYC5qcy10di1kYXRhLXRhYmxlLXRoLSR7dGhpcy5fZXNjKGYpfWApKSxnPyh0Lmluc2VydEFmdGVyKG0pLHM9dC5vZmZzZXQoKS5sZWZ0LW1bMF0ub2Zmc2V0V2lkdGgsYS5zaXplKCkmJmwuc2l6ZSgpJiZhLmluc2VydEFmdGVyKGwpKToodC5pbnNlcnRCZWZvcmUobSkscz10Lm9mZnNldCgpLmxlZnQrbVswXS5vZmZzZXRXaWR0aCxhLnNpemUoKSYmbC5zaXplKCkmJmEuaW5zZXJ0QmVmb3JlKGwpKSx0aGlzLl9zd2FwQ29scyhlLGYpfXQuY3NzKCJsZWZ0IixfLXMpfTt4cih3aW5kb3cpLm9uKCJtb3VzZW1vdmUgdG91Y2htb3ZlIixsKS5vbmUoIm1vdXNldXAgdG91Y2hlbmQiLChlPT57c2V0VGltZW91dCgoKCk9PntuPSExfSksMCksdC5jc3MoImxlZnQiLCJhdXRvIikseHIod2luZG93KS5vZmYoIm1vdXNlbW92ZSB0b3VjaG1vdmUiLGwpLG4mJnRoaXMuX29uRHJhZ1N0b3AodCl9KSl9KSl9X3NldFNlYXJjaElucHV0KGUsdCl7Y29uc3Qgbz1lLnF1ZXJ5U2VsZWN0b3IoIi5qcy1zZWFyY2gtcXVlcnkiKTtpZighbylyZXR1cm47Y29uc3QgaT1vLnF1ZXJ5U2VsZWN0b3IoIi5qcy1zZWFyY2gtaW5wdXQiKSxuPW8ucXVlcnlTZWxlY3RvcigiLmpzLWlucHV0LXJlc2V0Iik7KDAsQW4uaXNTY3JlZW5lclBhZ2UpKHRoaXMuX21vZGVsLl9icmlkZ2UpJiZpLmZvY3VzKCk7Y29uc3Qgcj1Cb29sZWFuKHQpO24uY2xhc3NMaXN0LnRvZ2dsZSgiaS1oaWRkZW4iLCFyKSxyJiYoaS52YWx1ZT10KSxpLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IiwoKCk9PntuLmNsYXNzTGlzdC50b2dnbGUoImktaGlkZGVuIiwwPT09aS52YWx1ZS5sZW5ndGgpfSkpO2NvbnN0IHM9KDAsdm8uZGVmYXVsdCkoKCgpPT57dGhpcy5fZmllbGRzW3RoaXMuX21vZGVsLnNlYXJjaEZpZWxkXS5zZWFyY2hWYWx1ZT1pLnZhbHVlLHRoaXMuX21vZGVsLmxvYWRpbmd8fHRoaXMuX21vZGVsLnVwZGF0ZSgpfSksNDAwKTtpLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IiwoKCk9PnMoKSkpfV9vbkRyYWdTdGFydChlKXt0aGlzLl9tb2RlbC5wcmV2ZW50UHJldlNjYW5SZXF1ZXN0KCksdGhpcy5kcmFnU3RhcnRlZC5zZXRWYWx1ZSghMCk7Y29uc3QgdD1lLmRhdGEoImZpZWxkIiksbz10aGlzLl9nZXRDb2xCeUZpZWxkKHQpO28mJih0aGlzLl9vcHRpb25zLmFkZERyYWdnaW5nVGhDbGFzc2VzJiZlWzBdLmNsYXNzTGlzdC5hZGQoLi4udGhpcy5fb3B0aW9ucy5hZGREcmFnZ2luZ1RoQ2xhc3NlcyksdGhpcy5fb3B0aW9ucy5hZGREcmFnZ2luZ0NvbENsYXNzZXMmJm8uY2xhc3NMaXN0LmFkZCguLi50aGlzLl9vcHRpb25zLmFkZERyYWdnaW5nQ29sQ2xhc3NlcykpfV9zd2FwQ29scyhlLHQpe2NvbnN0IG89dGhpcy5fY29sdW1uc09yZGVyLmluZGV4T2YoZSksaT10aGlzLl9jb2x1bW5zT3JkZXIuaW5kZXhPZih0KTt0aGlzLl9jb2x1bW5zT3JkZXJbb109dGhpcy5fY29sdW1uc09yZGVyLnNwbGljZShpLDEsdGhpcy5fY29sdW1uc09yZGVyW29dKVswXSx0aGlzLl9maWVsZHNPcmRlckNoYW5nZWQ9ITA7Y29uc3Qgbj1NYXRoLm1pbihvLGkpLHI9TWF0aC5tYXgobyxpKSxzPXRoaXMuX3Rib2R5LmNoaWxkcmVuO2ZvcihsZXQgZT0wO2U8cy5sZW5ndGg7ZSsrKXsKY29uc3QgdD1zW2VdLmNoaWxkcmVuLG89dFtuXTt0W3JdLmFmdGVyKG8pfWNvbnN0IGE9dGhpcy5fZmllbGRzT3JkZXIuaW5kZXhPZihlKSxsPXRoaXMuX2ZpZWxkc09yZGVyLmluZGV4T2YodCk7dGhpcy5fZmllbGRzT3JkZXJbYV09dGhpcy5fZmllbGRzT3JkZXIuc3BsaWNlKGwsMSx0aGlzLl9maWVsZHNPcmRlclthXSlbMF19X29uRHJhZ1N0b3AoZSl7dGhpcy5kcmFnU3RhcnRlZC5zZXRWYWx1ZSghMSk7Y29uc3QgdD1lLmRhdGEoImZpZWxkIiksbz10aGlzLl9nZXRDb2xCeUZpZWxkKHQpO28mJih0aGlzLl9vcHRpb25zLmFkZERyYWdnaW5nVGhDbGFzc2VzJiZlWzBdLmNsYXNzTGlzdC5yZW1vdmUoLi4udGhpcy5fb3B0aW9ucy5hZGREcmFnZ2luZ1RoQ2xhc3NlcyksdGhpcy5fb3B0aW9ucy5hZGREcmFnZ2luZ0NvbENsYXNzZXMmJm8uY2xhc3NMaXN0LnJlbW92ZSguLi50aGlzLl9vcHRpb25zLmFkZERyYWdnaW5nQ29sQ2xhc3NlcyksdGhpcy5fZmllbGRzT3JkZXJDaGFuZ2VkJiYodGhpcy5maWVsZHNPcmRlckNoYW5nZS5maXJlKCksdGhpcy5fZmllbGRzT3JkZXJDaGFuZ2VkPSExLHRoaXMuX21vZGVsLnRyYWNrRXZlbnQoYERyYWcgYW5kIGRyb3AgJHsiYmlnIj09PXRoaXMuX29wdGlvbnMudGFibGVfc3R5bGU/InF1b3RlcyI6Im5vbi1xdW90ZXMifSBjb2x1bW5gKSwoMCxZby5zZW5kU25vd1Bsb3dEYXRhKShuZXcgcmkodCkpKSx0aGlzLl9maXhDb2xzKCkpfV9nZXRDb2xCeUZpZWxkKGUpe3JldHVybiB0aGlzLl9jb2xncm91cC5xdWVyeVNlbGVjdG9yKGAuanMtdHYtZGF0YS10YWJsZS1jb2wtJHt0aGlzLl9lc2MoZSl9YCl9X2ZpeENvbHMoKXtjb25zdCBlPUFycmF5LmZyb20odGhpcy5fdGhlYWRSb3cuY2hpbGRyZW4pO2lmKDA9PT1lLmxlbmd0aClyZXR1cm47dGhpcy5fdGFibGUuY2xhc3NMaXN0LnJlbW92ZSgidHYtc2NyZWVuZXItdGFibGUtLWZpeGVkIik7Y29uc3QgdD10aGlzLl90YWJsZS5xdWVyeVNlbGVjdG9yQWxsKCJjb2wiKTtsZXQgbz1lLm1hcCgoZT0+TWF0aC5mbG9vcihlLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoKSkpO2NvbnN0IGk9ImJpZyI9PT10aGlzLl9vcHRpb25zLnRhYmxlX3N0eWxlLG49d2luZG93LmlubmVyV2lkdGg+Zm8uYnJlYWtwb2ludHMudGFibGV0LHI9dGhpcy5fdGFibGUucGFyZW50Tm9kZS5vZmZzZXRXaWR0aDtsZXQgcz1JcihvKTtpZihpJiZuJiZzPnIpe2Rve3M+ciYmKG8ucG9wKCksdGhpcy5faGlkZUNvbHVtbigpKSxzPUlyKG8pfXdoaWxlKHM+cik7Y29uc3QgZT1NYXRoLmZsb29yKChyLXMpL28ubGVuZ3RoKTtvPW8ubWFwKCh0PT50K2UpKTtjb25zdCB0PW8ubGVuZ3RoLTEsaT1vW3RdLG49ci1JcihvKTtvW3RdPWkrbn1pZih0LmZvckVhY2goKChlLHQpPT57Y29uc3QgaT1vW3RdO2k/ZS5zdHlsZS53aWR0aD1gJHtpfXB4YDplLmNsYXNzTGlzdC5hZGQoImktaGlkZGVuIil9KSksdGhpcy5fc3RpY2t5V3JhcHBlcil7Y29uc3QgZT10aGlzLl9zdGlja3lXcmFwcGVyLHQ9ZS5xdWVyeVNlbGVjdG9yKCJjb2xncm91cCIpLGk9ZS5xdWVyeVNlbGVjdG9yKCJ0YWJsZSIpLG49dGhpcy5fY29sZ3JvdXAuY2xvbmVOb2RlKCEwKTt0LnJlcGxhY2VXaXRoKG4pLGkuY2xhc3NMaXN0LmFkZCgidHYtc2NyZWVuZXItdGFibGUtLWZpeGVkIiksdGhpcy5fc3RpY2t5V3JhcHBlci5zdHlsZS53aWR0aD1mdW5jdGlvbihlLHQpe2lmKCEoKDAsQW4uaXNNYXJrZXRQYWdlKShlLl9tb2RlbC5fYnJpZGdlKSYmd2luZG93LmlubmVyV2lkdGg+Zm8uYnJlYWtwb2ludHMucGhvbmUpKXJldHVybjtyZXR1cm4gZS5fc3RpY2t5V3JhcHBlci5xdWVyeVNlbGVjdG9yQWxsKCJ0aCIpLmZvckVhY2goKChlLG8pPT57dFtvXT9lLmNsYXNzTGlzdC5yZW1vdmUoImktaGlkZGVuIik6ZS5jbGFzc0xpc3QuYWRkKCJpLWhpZGRlbiIpfSkpLGAke0ZuKGUuX3RhYmxlKS53aWR0aCgpfXB4YH0odGhpcyxvKXx8YCR7c31weGB9dGhpcy5fdGFibGUuY2xhc3NMaXN0LmFkZCgidHYtc2NyZWVuZXItdGFibGUtLWZpeGVkIiksdGhpcy5hZnRlckZpeENvbHMuZmlyZSgpfV9oaWRlQ29sdW1uKCl7Y29uc3QgZT10aGlzLl90aGVhZFJvdy5jaGlsZHJlbjtmb3IobGV0IHQ9ZS5sZW5ndGgtMTt0Pj0wO3QtLSl7Y29uc3Qgbz1lW3RdO2lmKCFvLmNsYXNzTGlzdC5jb250YWlucygiaS1oaWRkZW4iKSl7by5jbGFzc0xpc3QuYWRkKCJpLWhpZGRlbiIpO2JyZWFrfX10aGlzLl9oaWRkZW5Db2x1bW5zKyt9X3VuaGlkZUNvbHVtbnMoKXtjb25zdCBlPXRoaXMuX3RhYmxlLnF1ZXJ5U2VsZWN0b3JBbGwoImNvbCIpLHQ9dGhpcy5fdGhlYWRSb3cucXVlcnlTZWxlY3RvckFsbCgidGgiKTtlLmZvckVhY2goKChlLG8pPT57ZS5zdHlsZS53aWR0aD0iIixlLmNsYXNzTGlzdC5yZW1vdmUoImktaGlkZGVuIiksdFtvXS5jbGFzc0xpc3QucmVtb3ZlKCJpLWhpZGRlbiIpfSkpLHRoaXMuX2hpZGRlbkNvbHVtbnM9MH1fdW5oaWRlQ2VsbHMoKXtpZighdGhpcy5fdGJvZHkpcmV0dXJuO3RoaXMuX3Rib2R5LnF1ZXJ5U2VsZWN0b3JBbGwoInRkLmktaGlkZGVuIikuZm9yRWFjaCgoZT0+e2UuY2xhc3NMaXN0LnJlbW92ZSgiaS1oaWRkZW4iKX0pKX10b2dnbGVTaWduYWxzKGUpe2NvbnN0IHQ9dGhpcy5fZmllbGRzW2VdO3QuZGlzcGxheVNpZ25hbD0hdC5kaXNwbGF5U2lnbmFsO2NvbnN0IG89dGhpcy5fY29sdW1uc09yZGVyLmluZGV4T2YoZSk7aWYoLTE9PT1vKXJldHVybjtjb25zdCBpPXRoaXMuX3Rib2R5LnF1ZXJ5U2VsZWN0b3JBbGwoYC50di1kYXRhLXRhYmxlX19yb3cgLnR2LWRhdGEtdGFibGVfX2NlbGw6bnRoLWNoaWxkKCR7bysxfSkgLnR2LXNjcmVlbmVyLXRhYmxlX19zaWduYWxgKTswIT09aS5sZW5ndGgmJihpLmZvckVhY2goKGU9PmUuY2xhc3NMaXN0LnRvZ2dsZSgiaS1oaWRkZW4iLCF0LmRpc3BsYXlTaWduYWwpKSksdGhpcy5fZml4Q29scygpKX1nZXQgJGVsZW1lbnQoKXtyZXR1cm4gdGhpcy5fY3JlYXRlVGFibGUoKSx4cih0aGlzLl90YWJsZSl9Z2V0ICR0Ym9keSgpe3JldHVybiB0aGlzLl9jcmVhdGVUYWJsZSgpLHhyKHRoaXMuX3Rib2R5KX1nZXQgJHN0aWNreUhlYWRlcigpewpyZXR1cm4gdGhpcy5fY3JlYXRlVGFibGUoKSx0aGlzLl9jcmVhdGVTdGlja3lXcmFwcGVyKCkseHIodGhpcy5fc3RpY2t5V3JhcHBlcil9Z2V0ICR0aGVhZFJvdygpe3JldHVybiB0aGlzLl9kaXNhYmxlU3RpY2t5SGVhZGVyP3hyKHRoaXMuX3RoZWFkUm93KTp4cih0aGlzLl90aGVhZFJvd1N0aWNreSl9Z2V0IGFkZGl0aW9uYWxDb2x1bW5zKCl7cmV0dXJuIHRoaXMuX2FkZGl0aW9uYWxDb2x1bW5zfWdldCBmaWVsZHNPcmRlcigpe3JldHVybiB0aGlzLl9maWVsZHNPcmRlcn1nZXQgY29sdW1uc09yZGVyKCl7cmV0dXJuIHRoaXMuX2NvbHVtbnNPcmRlcn1zZXRDb2x1bW5zTWFwKGUpe3RoaXMuX2NvbHVtbnNNYXA9ZX1zZXRGaWVsZHMoZSl7dGhpcy5fZmllbGRzT3JkZXI9W10sdGhpcy5fY29sdW1uc09yZGVyPVtdO2Zvcihjb25zdFt0LG9db2YgT2JqZWN0LmVudHJpZXMoZSkpdGhpcy5fZmllbGRzT3JkZXIucHVzaCh0KSxvLnNraXBGaWVsZHx8dGhpcy5fY29sdW1uc09yZGVyLnB1c2godCk7dGhpcy5fZmllbGRzPXt9LHRoaXMuX2FkZGl0aW9uYWxDb2x1bW5zPVtdLHRoaXMuX2ZpZWxkc09yZGVyLmZvckVhY2goKHQ9Pnt0aGlzLl9maWVsZHNbdF09ZVt0XSxlW3RdJiZlW3RdLmFkZGl0aW9uYWxDb2x1bW5zJiZlW3RdLmFkZGl0aW9uYWxDb2x1bW5zLmZvckVhY2goKGU9Pnt0aGlzLl9hZGRpdGlvbmFsQ29sdW1ucy5pbmNsdWRlcyhlKXx8dGhpcy5fYWRkaXRpb25hbENvbHVtbnMucHVzaChlKX0pKX0pKSx0aGlzLmZpZWxkc09yZGVyQ2hhbmdlLmZpcmUoKSx0aGlzLl9maWVsZHNPcmRlckNoYW5nZT0hMH11cGRhdGUoZSl7dGhpcy5fZmllbGRzT3JkZXJDaGFuZ2UmJih0aGlzLl91bmhpZGVDb2x1bW5zKCksdGhpcy5fY3JlYXRlVGFibGUoKSx0aGlzLl9jcmVhdGVIZWFkZXIoKSksdGhpcy5jbGVhckRhdGEoKSx0aGlzLmFwcGVuZChlKSx0aGlzLl9maWVsZHNPcmRlckNoYW5nZSYmKHRoaXMuX2ZpZWxkc09yZGVyQ2hhbmdlPSExKSx0aGlzLl9maXhDb2xzKCl9X3VwZGF0ZUVtcHR5TWVzc2FnZUljb24oKXtpZighdGhpcy5fJGVtcHR5TWVzc2FnZSlyZXR1cm47Y29uc3QgZT1mdW5jdGlvbigpe2NvbnN0IGU9c3Iud2F0Y2hlZFRoZW1lLnZhbHVlKCk7cmV0dXJuIGV8fChkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJodG1sIik/LmNsYXNzTGlzdC5jb250YWlucygidGhlbWUtZGFyayIpP3JyLlN0ZFRoZW1lLkRhcms6cnIuU3RkVGhlbWUuTGlnaHQpfSgpLHQ9dGhpcy5fJGVtcHR5TWVzc2FnZS5maW5kKCJpIiksbz1lPT09cnIuU3RkVGhlbWUuTGlnaHQ/Q3I6d3I7dC5odG1sKG8pfV9zZXRFbXB0eU1lc3NhZ2UoKXtsZXQgZSx0PSIiOygwLEFuLmlzU2NyZWVuZXJQYWdlKSh0aGlzLl9tb2RlbC5fYnJpZGdlKT90PSJ0di1zY3JlZW5lci10YWJsZV9fZW1wdHktcmVzdWx0LS1maXhlZCI6KCgwLEFuLmlzQ2hhcnRQYWdlKSh0aGlzLl9tb2RlbC5fYnJpZGdlKXx8KDAsQW4uaXNFeHRlcm5hbFdpZGdldCkodGhpcy5fbW9kZWwuX2JyaWRnZSkpJiYodD0idHYtc2NyZWVuZXItdGFibGVfX2VtcHR5LXJlc3VsdC0tcmVsYXRpdmUiKSxlPXRoaXMuX2lzVW5hdmFpbGFibGVXaWRnZXRNYXJrZXQ/Xy50KG51bGwsdm9pZCAwLG8oNjc2NDQyKSkuZm9ybWF0KHtvcGVuTGluazonPGEgaHJlZj0iaHR0cHM6Ly93d3cudHJhZGluZ3ZpZXcuY29tLyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIiIGNsYXNzPSJ0di1zY3JlZW5lci10YWJsZV9fZW1wdHktcmVzdWx0LWxpbmsiPicsY2xvc2VMaW5rOiI8L2E+In0pOnRoaXMuX25vRGF0YVN0cmluZ3x8Xy50KG51bGwsdm9pZCAwLG8oNDE3NzcpKSx0aGlzLl8kZW1wdHlNZXNzYWdlPXhyKGBcblx0XHRcdDxkaXYgY2xhc3M9InR2LXNjcmVlbmVyLXRhYmxlX19lbXB0eS1yZXN1bHQgJHt0fSI+XG5cdFx0XHRcdDxpIGNsYXNzPSJqcy1uby1yZXN1bHRzLWljb24iPjwvaT5cblx0XHRcdFx0PGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdGFibGVfX2VtcHR5LWRlc2NyaXB0aW9uIj4ke2V9PC9kaXY+XG5cdFx0XHQ8L2Rpdj5cblx0XHRgKS5pbnNlcnRBZnRlcih0aGlzLl90YWJsZSksdGhpcy5fdXBkYXRlRW1wdHlNZXNzYWdlSWNvbigpLCgwLEFuLmlzTWFya2V0UGFnZSkodGhpcy5fbW9kZWwuX2JyaWRnZSk/dGhpcy5fZml4Q29scygpOnRoaXMuX21vZGVsLl92aWV3LmZpeFN0YW5kYWxvbmVXaWR0aCgpfWFwcGVuZChlKXt0aGlzLl8kZW1wdHlNZXNzYWdlJiZ0aGlzLl8kZW1wdHlNZXNzYWdlLnJlbW92ZSgpO2NvbnN0IHQ9Z3IodGhpcy5fY29sdW1uc01hcCwiY3VycmVuY3kiLHRoaXMuX21vZGVsLnNlbGVjdGVkSW50ZXJ2YWxJZCksbz1ncih0aGlzLl9jb2x1bW5zTWFwLCJmdW5kYW1lbnRhbF9jdXJyZW5jeV9jb2RlIix0aGlzLl9tb2RlbC5zZWxlY3RlZEludGVydmFsSWQpLGk9ZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpO2ZvcihsZXQgbj0wO248ZS5sZW5ndGg7bisrKXtjb25zdCByPWVbbl07aWYoIUFycmF5LmlzQXJyYXkoci5kKSljb250aW51ZTtjb25zdCBzPXIuZFt0XSxhPXIuZFtvXSxsPVsidHYtZGF0YS10YWJsZV9fcm93Il07aWYodGhpcy5fb3B0aW9ucy5hZGRSb3dDbGFzc2VzKXtjb25zdCBlPSJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLl9vcHRpb25zLmFkZFJvd0NsYXNzZXM/dGhpcy5fb3B0aW9ucy5hZGRSb3dDbGFzc2VzKHIpOnRoaXMuX29wdGlvbnMuYWRkUm93Q2xhc3NlcztsLnB1c2goLi4uZSl9Y29uc3QgYz1bXTtpZih0aGlzLl9vcHRpb25zLmFkZFJvd0F0dHJzKXtjb25zdCBlPSJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLl9vcHRpb25zLmFkZFJvd0F0dHJzP3RoaXMuX29wdGlvbnMuYWRkUm93QXR0cnMocik6dGhpcy5fb3B0aW9ucy5hZGRSb3dBdHRycztmb3IoY29uc3RbdCxvXW9mIE9iamVjdC5lbnRyaWVzKGUpKWMucHVzaChbdCxvXSl9Y29uc3QgdT1kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7bGV0IF89dGhpcy5faGlkZGVuQ29sdW1ucztmb3IobGV0IGU9dGhpcy5fZmllbGRzT3JkZXIubGVuZ3RoLTE7ZT49MDstLWUpe2NvbnN0IHQ9dGhpcy5fZmllbGRzT3JkZXJbZV0sbz10aGlzLl9maWVsZHNbdF0KO2lmKCFvfHxvLnNraXBGaWVsZCljb250aW51ZTtjb25zdCBpPWdyKHRoaXMuX2NvbHVtbnNNYXAsdCx0aGlzLl9tb2RlbC5zZWxlY3RlZEludGVydmFsSWQpLG49by5hZGRpdGlvbmFsQ29sdW1ucz9vLmFkZGl0aW9uYWxDb2x1bW5zLm1hcCgoZT0+UnIoci5kLGdyKHRoaXMuX2NvbHVtbnNNYXAsZSx0aGlzLl9tb2RlbC5zZWxlY3RlZEludGVydmFsSWQpKSkpOltdO2xldCBsPSIiO2NvbnN0IGM9WyJ0di1kYXRhLXRhYmxlX19jZWxsIl07bGV0IHA7aWYoby50b29sdGlwJiYoImZ1bmN0aW9uIj09dHlwZW9mIG8udG9vbHRpcD9sPW8udG9vbHRpcCguLi5uLG8pOiJzdHJpbmciPT10eXBlb2Ygby50b29sdGlwJiYobD1vLnRvb2x0aXApLGMucHVzaCgiYXBwbHktY29tbW9uLXRvb2x0aXAiKSksInByaWNlIj09PW8udHlwZSYmbi5sZW5ndGg+PTQpe2NvbnN0IGU9bi5zbGljZSgtNCk7ZVsyXT0idHJ1ZSI9PT1lWzJdLHA9R3QoLi4uZSl9ZWxzZSBwPXp0KG8sdGhpcy5fbW9kZWwuc2NyZWVuZXJfdHlwZSwhMSk7Im5hbWUiPT09dCYmbi5wdXNoKHIucyk7Y29uc3QgbT1ScihyLmQsaSk7bGV0IGc9bnVsbD09PW0/dGhpcy5fbnVsbEZvcm1hdHRlcigpOnAmJnAuZm9ybWF0KG0pfHx0aGlzLl9kZWZhdWx0Rm9ybWF0dGVyKHt2YWx1ZTptLGZpZWxkS2V5OnQsZmllbGQ6byxyb3dEYXRhOnIsZmllbGRzT3JkZXI6dGhpcy5fZmllbGRzT3JkZXIsdGl0bGU6bCxjb2x1bW5zTWFwOnRoaXMuX2NvbHVtbnNNYXB9KTtpZih0aGlzLl9vcHRpb25zLmFkZENlbGxDbGFzc2VzKXtjb25zdCBlPSJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLl9vcHRpb25zLmFkZENlbGxDbGFzc2VzP3RoaXMuX29wdGlvbnMuYWRkQ2VsbENsYXNzZXMoe3ZhbHVlOm0sZmllbGRLZXk6dCxmaWVsZDpvfSk6dGhpcy5fb3B0aW9ucy5hZGRDZWxsQ2xhc3NlcztjLnB1c2goLi4uZSl9Y29uc3Qgdj1vLmFkZGl0aW9uYWxGb3JtYXR0ZXI/by5hZGRpdGlvbmFsRm9ybWF0dGVyKC4uLm4pOiIiO28ubXV0YXRlRGlzcGxheVZhbHVlJiYoZz1vLm11dGF0ZURpc3BsYXlWYWx1ZShnLC4uLm4sbykpLHRoaXMuX21vZGVsLmhhc01hcmtlZFN5bWJvbHMoKSYmYy5wdXNoKCJ0di1zY3JlZW5lci10YWJsZV9fY2VsbC0td2l0aC1tYXJrZXIiKSxfPjAmJihjLnB1c2goImktaGlkZGVuIiksXy0tKTtsZXQgZj1nK3YreXIocyxhLG8udHlwZSxnLCgwLEFuLmlzTWFya2V0UGFnZSkodGhpcy5fbW9kZWwuX2JyaWRnZSkpOyh0PT09aC5OYW1lfHx0PT09aC5TZWN0b3ImJnRoaXMuX21vZGVsLnNjcmVlbmVyX3R5cGU9PT1kLkNyeXB0b01rdCkmJihmPXByKHtzeW1ib2xIdG1sOmYsZmllbGRzT3JkZXI6dGhpcy5fZmllbGRzT3JkZXIscm93RGF0YTpyLmQscHJvU3ltYm9sOnIuc30pKTtjb25zdCB5PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRkIik7eS5jbGFzc0xpc3QuYWRkKC4uLmMpLHkudGl0bGU9bCYmIm5hbWUiIT09dD9sOiIiLHkuc2V0QXR0cmlidXRlKCJkYXRhLWZpZWxkLWtleSIsdCkseS5pbm5lckhUTUw9Zix1LnByZXBlbmQoeSl9Y29uc3QgcD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0ciIpO3AuY2xhc3NMaXN0LmFkZCguLi5sKSxjLmZvckVhY2goKGU9PnAuc2V0QXR0cmlidXRlKC4uLmUpKSkscC5hcHBlbmQodSksdGhpcy5fb3B0aW9ucy5vblJvd0J1aWxkJiZ0aGlzLl9vcHRpb25zLm9uUm93QnVpbGQocCxyKSxpLmFwcGVuZENoaWxkKHApfXRoaXMuX3Rib2R5LmFwcGVuZENoaWxkKGkpLDA9PT10aGlzLl90Ym9keS5xdWVyeVNlbGVjdG9yQWxsKCJ0ciIpLmxlbmd0aCYmdGhpcy5fc2V0RW1wdHlNZXNzYWdlKCksdGhpcy5fb3B0aW9ucy5vblVwZGF0ZSYmdGhpcy5fb3B0aW9ucy5vblVwZGF0ZSgpfWNsZWFyRGF0YShlKXtpZih0aGlzLl90Ym9keSlpZihlKXtjb25zdCB0PXRoaXMuX3Rib2R5LmNoaWxkcmVuLG89dC5sZW5ndGg7Zm9yKGxldCBpPWU7aTxvO2krKyl7Y29uc3Qgbz10W2VdO3RoaXMuX3Rib2R5LnJlbW92ZUNoaWxkKG8pfX1lbHNlIHRoaXMuX3Rib2R5LmlubmVySFRNTD0iIn1zZXRUaENvbnRlbnQoZSx0KXtjb25zdCBvPXRoaXMuZ2V0VGgoZSk7by5zaXplKCkmJihvLmVtcHR5KCksdCBpbnN0YW5jZW9mIEVyP28uYXBwZW5kKHQpOm8uaHRtbCh0KSwibmFtZSI9PT1lJiZ0aGlzLl9zZXRTZWFyY2hJbnB1dCh0aGlzLiR0aGVhZFJvd1swXSx0aGlzLl9maWVsZHNbZV0uc2VhcmNoVmFsdWUpKX1zZXRDb2x1bW5UaXRsZShlLHQpe2NvbnN0IG89dGhpcy5nZXRUaChlKTtvLnNpemUoKSYmby5maW5kKCIuanMtaGVhZC10aXRsZSIpLnRleHQodCl9c2V0U2VhcmNoVGV4dChlKXtjb25zdCB0PXRoaXMuZ2V0VGgodGhpcy5fbW9kZWwuc2VhcmNoRmllbGQpO3Quc2l6ZSgpJiZ0LmZpbmQoIi5qcy1maWVsZC10b3RhbCIpLnRleHQoZSl9Z2V0VGgoZSl7Y29uc3QgdD10aGlzLiR0aGVhZFJvdztyZXR1cm4gdCYmdC5maW5kKGAuanMtdHYtZGF0YS10YWJsZS10aC0ke3RoaXMuX2VzYyhlKX1gKXx8eHIoKX1fZXNjKGUpe3JldHVybiBlLnJlcGxhY2UoL1tcLnxdL2csIl8iKX19ZnVuY3Rpb24gTXIoZSl7Y29uc3QgdD1lLmNoaWxkcmVuOzAhPT10Lmxlbmd0aCYmQXJyYXkuZnJvbSh0KS5mb3JFYWNoKCh0PT5lLnJlbW92ZUNoaWxkKHQpKSl9ZnVuY3Rpb24gSXIoZSl7cmV0dXJuIGUucmVkdWNlKCgoZSx0KT0+ZSt0KSl9ZnVuY3Rpb24gUnIoZSx0KXtyZXR1cm4gZVt0XX12YXIgRnI9bygzMDk4MzYpLExyPW8oOTExMzI3KTtjb25zdCBEcj17YW1lcmljYToidXNhIixldXJvbmV4dDoiZXVyb3BlIixob25na29uZzoiaG9uZy1rb25nIixuZXd6ZWFsYW5kOiJuZXctemVhbGFuZCIsdWs6InVuaXRlZC1raW5nZG9tIixyc2E6InNvdXRoLWFmcmljYSIsc3JpbGFua2E6InNyaS1sYW5rYSJ9O2Z1bmN0aW9uIE9yKGUsdCxvPSJzZWN0b3IiKXtyZXR1cm4gZSYmdD8oRHJbdF0mJih0PURyW3RdKSxgL21hcmtldHMvc3RvY2tzLSR7dH0vc2VjdG9yYW5kaW5kdXN0cnktJHtvfS8keyhpPWUsCmkucmVwbGFjZSgvW15hLXpBLVowLTldKy9nLCItIikucmVwbGFjZSgvLSsvZywiLSIpLnJlcGxhY2UoL14tfC0kL2csIiIpKS50b0xvd2VyQ2FzZSgpfS9gKToiL21hcmtldHMvc3RvY2tzLXVzYS9zZWN0b3JhbmRpbmR1c3RyeS1zZWN0b3IvIjt2YXIgaX1mdW5jdGlvbiBOcihlKXtjb25zdCB0PWUuX21vZGVsLG89ZS5fYnJpZGdlLGk9e3NjcmVlbmVyVHlwZTpXcih0KSxtYXJrZXQ6dC5tYXJrZXRzWzBdLHV0bTp0LnV0bSxsYXJnZUNoYXJ0VXJsOnQubGFyZ2VDaGFydFVybCx0YWJsZVN0eWxlOm8udGFibGVfc3R5bGUsc2NyZWVuZXJQbGFjZW1lbnQ6KDAsQW4uZ2V0U2NyZWVuZXJQYWdlKShvKSxvcGVuQ2hhcnRPblNhbWVUYWI6by5vcGVuX2NoYXJ0X29uX3NhbWVfdGFiLGJyaWRnZUJhc2VVcmw6by5iYXNlVXJsLHNlbGVjdGVkSW50ZXJ2YWxJZDp0LnNlbGVjdGVkSW50ZXJ2YWxJZH07cmV0dXJuIGU9PmZ1bmN0aW9uKGUpe3N3aXRjaChlLmZpZWxkS2V5KXtjYXNlIGguTmFtZTpyZXR1cm4gZnVuY3Rpb24oZSl7Y29uc3R7dmFsdWU6dCx0aXRsZTpvLHNjcmVlbmVyUGxhY2VtZW50Omksb3BlbkNoYXJ0T25TYW1lVGFiOm59PWU7aWYoImNoYXJ0IiE9PWkpe2NvbnN0IGk9cXIoZSk7cmV0dXJuYDxhIGNsYXNzPSJ0di1zY3JlZW5lcl9fc3ltYm9sIGFwcGx5LWNvbW1vbi10b29sdGlwIiB0aXRsZT0iJHsoMCxFaS5odG1sRXNjYXBlKShvKX0iIGhyZWY9IiR7KDAsRWkuaHRtbEVzY2FwZSkoaSl9IiAke24/IiI6J3RhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIid9PiR7dH08L2E+YH1yZXR1cm5gPGRpdiBjbGFzcz0idHYtc2NyZWVuZXJfX3N5bWJvbCB0di1zY3JlZW5lcl9fc3ltYm9sLS10ZXh0IGFwcGx5LWNvbW1vbi10b29sdGlwIiB0aXRsZT0iJHtvfSI+JHt0fTwvZGl2PmB9KGUpO2Nhc2UgaC5EZXNjcmlwdGlvbjpyZXR1cm4gZnVuY3Rpb24oZSl7Y29uc3R7dmFsdWU6dCxzY3JlZW5lclR5cGU6byxtYXJrZXQ6aX09ZTtpZihbInNlY3RvciIsImluZHVzdHJ5Il0uaW5jbHVkZXMobykpe2NvbnN0IGU9UHIodCk7cmV0dXJuYDxhIGNsYXNzPSJ0di1zY3JlZW5lcl9fc3ltYm9sIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciIgaHJlZj0iJHtPcih0LGksbyl9Ij5cblx0XHRcdFx0XHRcdCR7ZX1cblx0XHRcdFx0XHQ8L2E+YH1yZXR1cm4gQnIodCl9KGUpO2Nhc2UgaC5TZWN0b3I6cmV0dXJuIGZ1bmN0aW9uKGUpe2NvbnN0e3ZhbHVlOnQsZmllbGRLZXk6byxzY3JlZW5lclR5cGU6aSxtYXJrZXQ6bix0YWJsZVN0eWxlOnIsdXRtOnMsb3BlbkNoYXJ0T25TYW1lVGFiOmF9PWU7aWYoaT09PWQuQ3J5cHRvTWt0KXtjb25zdCBvPXFyKGUpO3JldHVybmA8YSBjbGFzcz0idHYtc2NyZWVuZXJfX3N5bWJvbCIgaHJlZj0iJHsoMCxFaS5odG1sRXNjYXBlKSgoMCxGci5hZGRVdG1Ub1VybCkobyxzKSl9IiAke2E/IiI6J3RhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIid9PlxuXHRcdFx0XHRcdFx0JHt0fVxuXHRcdFx0XHRcdDwvYT5gfWlmKCJiaWciPT09cilyZXR1cm4gJHIodCxuLG8pO3JldHVybiB0fShlKTtjYXNlIGguSW5kdXN0cnk6cmV0dXJuIGZ1bmN0aW9uKGUpe2NvbnN0e3ZhbHVlOnQsZmllbGRLZXk6byxzY3JlZW5lclR5cGU6aSxtYXJrZXQ6bix0YWJsZVN0eWxlOnJ9PWU7aWYoImJpZyI9PT1yJiZpIT09ZC5DcnlwdG9Na3QpcmV0dXJuICRyKHQsbixvKTtyZXR1cm4gQnIodCl9KGUpO2Nhc2UgaC5Db3VudHJ5OnJldHVybigwLGIudHJpZXNUcmFuc2xhdGVDb3VudHJpZU5hbWUpKGUudmFsdWUpO2RlZmF1bHQ6cmV0dXJuIGUudmFsdWV9fSh7Li4uZSwuLi5pfSl9ZnVuY3Rpb24gUHIoZSl7cmV0dXJuKDAsVGUudHJpZXNUcmFuc2xhdGVTY3JlZW5lckRhdGEpKGUpfWZ1bmN0aW9uIEJyKGUpe2NvbnN0IHQ9UHIoZSk7cmV0dXJuYDxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lci10YWJsZV9fY2VsbC0tZml4LXdpZHRoIiB0aXRsZT0iJHt0fSI+JHt0fTwvc3Bhbj5gfWZ1bmN0aW9uICRyKGUsdCxvKXtjb25zdCBpPVByKGUpO3JldHVybmA8YSBjbGFzcz0idHYtc2NyZWVuZXJfX3N5bWJvbCIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIiIGhyZWY9IiR7T3IoZSx0LG8pfSI+XG5cdFx0XHRcdDxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lcl9fc3ltYm9sLS1zZWNvbmRhcnkiPiR7aX08L3NwYW4+XG5cdFx0XHQ8L2E+YH1mdW5jdGlvbiBXcihlKXtyZXR1cm4gZS5zY3JlZW5lcl90eXBlfWZ1bmN0aW9uIHFyKGUpe2NvbnN0e3Jvd0RhdGE6dCxzY3JlZW5lclR5cGU6byxzY3JlZW5lclBsYWNlbWVudDppLHV0bTpuLGxhcmdlQ2hhcnRVcmw6cixjb2x1bW5zTWFwOnMsc2VsZWN0ZWRJbnRlcnZhbElkOmF9PWU7aWYobz09PWQuQ3J5cHRvTWt0KXtjb25zdCBlPXtwcm9OYW1lOnQucyx0eXBlOiJjcnlwdG8ifTtyZXR1cm4id2lkZ2V0Ij09PWkmJnI/KDAsTHIubWFrZVRlbXBsYXRlU3ltYm9sVXJsKShyLGUpOigwLExyLm1ha2VTeW1ib2xQYWdlVXJsKShlKX1jb25zdCBsPWdyKHMsImV4Y2hhbmdlIixhKTtsZXQgYztsJiYoYz10LmRbbF0pO2NvbnN0IGg9e3Byb05hbWU6dC5zLGV4Y2hhbmdlOmMsdHlwZTpvfTtyZXR1cm4gbz09PWQuQ29udGludW91c0Z1dHVyZXM/KDAsTHIubWFrZVN5bWJvbENoYXJ0VXJsKShoKToid2lkZ2V0Ij09PWkmJnI/KDAsTHIubWFrZVRlbXBsYXRlU3ltYm9sVXJsKShyLGgpOigwLExyLm1ha2VTeW1ib2xQYWdlVXJsKShoLG4pfXZhciBWcixIcj1vKDIyNTI5OCk7ZnVuY3Rpb24gVXIoZSl7Y29uc3QgdD1lLl9maWVsZHNfb3JkZXIsaT1lLl9kaXNhYmxlU3RpY2t5SGVhZGVyLG49ZS5fbGlmZWN5Y2xlLHI9ZS53aWR0aENoYW5nZSxzPWUuX21vZGVsLGE9cy5zY3JlZW5lcl90eXBlLGw9ZS5fYnJpZGdlLGM9bC50YWJsZV9zdHlsZSx1PWwuaGlkZV9jb250cm9scyxwPWwudmlzaWJsZSxtPSgwLEFuLmdldFNjcmVlbmVyUGFnZSkobCksZz1JdC5kZXNjcmlwdGlvbix2PXttb2RlbDpzLGZpZWxkc09yZGVyOnQsdGl0bGVGb3JtYXR0ZXI6KHQsbyk9Pntjb25zdCBpPWUuX2dldFRoQ29udGVudCh0LG8pCjtyZXR1cm4gdD09PWguTmFtZSYmbi5iZWZvcmVBcHBlbmRTeW1ib2xzSGVhZGVyKGkuZ2V0KDApKSxpfSxkZWZhdWx0Rm9ybWF0dGVyOk5yKGUpLGFkZFRoZWFkQ2xhc3NlczpbInR2LXNjcmVlbmVyLXRhYmxlX190aGVhZCIsaT8idHYtc2NyZWVuZXItdGFibGVfX3RoZWFkLS1zdGlja3kiOiJ0di1zY3JlZW5lci10YWJsZV9fdGhlYWQtLXJlZ3VsYXIiXSxhZGRUaENsYXNzZXM6WyJ0di1kYXRhLXRhYmxlX19zb3J0YWJsZSIsInR2LXNjcmVlbmVyLXRhYmxlX19zb3J0YWJsZSIsInR2LXNjcmVlbmVyLXRhYmxlX190aCIsYz9gdHYtc2NyZWVuZXItdGFibGVfX3RoLS0ke2N9YDoiIiwid2lkZ2V0Ij09PW0mJnU/InR2LXNjcmVlbmVyLXRhYmxlX190aC0tbm8tdG9vbGJhciI6IiJdLGFkZENlbGxDbGFzc2VzOmU9Pntjb25zdHt2YWx1ZTp0LGZpZWxkS2V5Om8sZmllbGQ6aX09ZSxuPVsidHYtc2NyZWVuZXItdGFibGVfX2NlbGwiXTtyZXR1cm4gbi5wdXNoKC4uLmZ1bmN0aW9uKGUpe2NvbnN0IHQ9W107ZS5hbGlnbj09PVZyLlJpZ2h0fHxlLmFsaWduPT09VnIuQ2VudGVyfHxlLmNvbnRyb2wmJiJzZWxlY3QiIT09ZS5jb250cm9sfHx0LnB1c2goInR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS1sZWZ0Iik7ZS5hbGlnbiE9PVZyLkNlbnRlcnx8ZS5jb250cm9sfHx0LnB1c2goInR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS1jZW50ZXIiKTtyZXR1cm4gdH0oaSkpLGkuaGlnaGxpZ2h0Q2hhbmdlJiZ0JiZuLnB1c2godD49MD8idHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLXVwIjoidHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLWRvd24iKSxvIT09aC5OYW1lfHwhZy5kaXNhYmxlZCYmZy5jaGVja2VkfHxuLnB1c2goIndpZGdldCI9PT1tPyJ0di1zY3JlZW5lci10YWJsZV9fY2VsbC0td2lkZ2V0LXdpdGhvdXQtZGVzY3JpcHRpb24iOiJ0di1zY3JlZW5lci10YWJsZV9fY2VsbC0td2l0aG91dC1kZXNjcmlwdGlvbiIpLGMmJm4ucHVzaChgdHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLSR7Y31gKSwid2lkZ2V0Ij09PW0mJm4ucHVzaCguLi5mdW5jdGlvbihlLHQpe2NvbnN0IG89W107ZSYmby5wdXNoKCJ0di1zY3JlZW5lci10YWJsZV9fY2VsbC0tbm8tdG9vbGJhciIpO3Q9PT1kLkNyeXB0b01rdCYmby5wdXNoKCJ0di1zY3JlZW5lci10YWJsZV9fY2VsbC0tY3J5cHRvX21rdCIpO3JldHVybiBvfSh1LGEpKSxufSx3aWR0aENoYW5nZTpyLHZpc2liaWxpdHlDaGFuZ2U6cCx0YWJsZV9zdHlsZTpjLG5vRGF0YVN0cmluZzplLl9ub0RhdGFTdHJpbmcsaXNVbmF2YWlsYWJsZVdpZGdldE1hcmtldDplLl9pc1VuYXZhaWxhYmxlV2lkZ2V0TWFya2V0LGRpc2FibGVTdGlja3lIZWFkZXI6aSxvblJvd0J1aWxkOih0LG8pPT57Y29uc3QgaT1lLl9zZWxlY3RhYmxlTGlzdDsiY2hhcnQiPT09bSYmSHIubGlua2luZy5wcm9TeW1ib2wudmFsdWUoKT09PW8ucyYmaSYmKGUuX3NldEFjdGl2ZUVsZW0odCksaS5mb2N1c0l0ZW0odCkpLG4uYmVmb3JlQXBwZW5kU3ltYm9sKG8ucyx0KX0sb25VcGRhdGU6KCk9Pntjb25zdCB0PWUuX3NlbGVjdGFibGVMaXN0O3QmJnQucmVzdG9yZSgpfX0sZj17Li4udixzb3J0YWJsZTohMCxhZGRUYWJsZUNsYXNzZXM6WyJ0di1zY3JlZW5lci10YWJsZSJdLGFkZFRoZWFkUm93Q2xhc3NlczpbInR2LWRhdGEtdGFibGVfX3N0cm9rZSIsInR2LXNjcmVlbmVyLXRhYmxlX19oZWFkIl0sYWRkUm93Q2xhc3NlczooKT0+WyJ0di1kYXRhLXRhYmxlX19zdHJva2UiLCJ0di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdyJdLGFkZFJvd0F0dHJzOmU9Pih7ImRhdGEtc3ltYm9sIjplLnN9KSxhZGRTdGlja3lIZWFkZXJXcmFwcGVyQ2xhc3NlczpbInR2LXNjcmVlbmVyLXN0aWNreS1oZWFkZXItd3JhcHBlciJdLGFkZERyYWdnaW5nVGhDbGFzc2VzOlsidHYtc2NyZWVuZXItdGFibGVfX3RoLS1kcmFnZ2luZyJdLGFkZERyYWdnaW5nQ29sQ2xhc3NlczpbInR2LXNjcmVlbmVyLXRhYmxlX19jb2wtLWRyYWdnaW5nIl19LHk9bmV3IEFyKGYpO3JldHVybiB5LnNldEZpZWxkcyh7bmFtZTp7dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oODI4NDIwKSl9fSkseX0hZnVuY3Rpb24oZSl7ZS5DZW50ZXI9ImNlbnRlciIsZS5SaWdodD0icmlnaHQifShWcnx8KFZyPXt9KSk7dmFyIHpyLGpyPW8oNDgyNTA0KTtmdW5jdGlvbiBHcihlKXtjb25zdHt2aWV3OnR9PWU7cmV0dXJuIHQuX2JyaWRnZS5oaWRlX2NvbnRyb2xzP1Byb21pc2UucmVzb2x2ZSgpOnpuKGUsWHIscW4uSGVhZGVyKX1mdW5jdGlvbiBYcihlLHQpe2NvbnN0e2ZpZWxkS2V5Om99PWUsaT10LmRlZmF1bHQsbj1JdFtvXSxyPXsuLi5lLGZpZWxkOm59O3JldHVybnsuLi5LcihyLGkpLC4uLllyKHIsaSksLi4uSnIocixpKSwuLi5acihyLGkpfX1mdW5jdGlvbiBLcihlLHQpe2NvbnN0e3ZpZXc6aSxmaWVsZEtleTpyfT1lO2lmKCJuYW1lIiE9PXIpcmV0dXJue307Y29uc3Qgcz1uZXcgdCh7YWN0aW9uSWQ6IlNjcmVlbmVyLlRvZ2dsZVZpc2liaWxpdHkuRGVzY3JpcHRpb24iLG9wdGlvbnM6e2xhYmVsOiFJdC5kZXNjcmlwdGlvbi5kaXNhYmxlZCYmSXQuZGVzY3JpcHRpb24uY2hlY2tlZD9fLnQobnVsbCx2b2lkIDAsbyg3MjEwMDEpKTpfLnQobnVsbCx2b2lkIDAsbyg4MjU5MikpLGRpc2FibGVkOkl0LmRlc2NyaXB0aW9uLmRpc2FibGVkLG9uRXhlY3V0ZTooKT0+e2NvbnN0IGU9IUl0LmRlc2NyaXB0aW9uLmNoZWNrZWQ7SXQuZGVzY3JpcHRpb24uY2hlY2tlZD1lLGkudGFibGUudXBkYXRlKGkuX2RhdGEpLGkuJGZpZWxkU2V0c0J1dHRvbi50b2dnbGVDbGFzcygidHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS11bnNhdmVkIixpLl9tb2RlbC5pc0ZpZWxkU2V0Q2hhbmdlZCgpKSwoMCxZby5zZW5kU25vd1Bsb3dEYXRhKShuZXcgR24uRGlzcGF0Y2hDb250ZXh0TWVudUFjdGlvbkV2ZW50KHpyLlRvZ2dsZURlc2NyaXB0aW9uLCJoZWFkZXIiLGUpKX19fSksYT1uZXcgdCh7YWN0aW9uSWQ6IlNjcmVlbmVyLlRvZ2dsZVZpc2liaWxpdHkuU3ltYm9sVHlwZSIsb3B0aW9uczp7CmxhYmVsOiFJdC50eXBlLmRpc2FibGVkJiZJdC50eXBlLmNoZWNrZWQ/Xy50KG51bGwsdm9pZCAwLG8oOTI2ODI1KSk6Xy50KG51bGwsdm9pZCAwLG8oNjAzNTA3KSksZGlzYWJsZWQ6SXQudHlwZS5kaXNhYmxlZCxvbkV4ZWN1dGU6KCk9Pntjb25zdCBlPSFJdC50eXBlLmNoZWNrZWQ7SXQudHlwZS5jaGVja2VkPWUsaS50YWJsZS51cGRhdGUoaS5fZGF0YSksaS4kZmllbGRTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXVuc2F2ZWQiLGkuX21vZGVsLmlzRmllbGRTZXRDaGFuZ2VkKCkpLCgwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBHbi5EaXNwYXRjaENvbnRleHRNZW51QWN0aW9uRXZlbnQoenIuVG9nZ2xlU3ltYm9sVHlwZSwiaGVhZGVyIixlKSl9fX0pLGw9IVsiZm9yZXgiLCJjcnlwdG8iXS5pbmNsdWRlcyhpLl9tb2RlbC5zY3JlZW5lcl90eXBlKSxjPW5ldyB0KHthY3Rpb25JZDoiU2NyZWVuZXIuVG9nZ2xlVmlzaWJpbGl0eS5DdXJyZW5jeSIsb3B0aW9uczp7bGFiZWw6U3IoKT9fLnQobnVsbCx2b2lkIDAsbygxMjI3NjQpKTpfLnQobnVsbCx2b2lkIDAsbyg2Nzc0MjYpKSxvbkV4ZWN1dGU6KCk9Pntjb25zdCBlPSFTcigpO3ZhciB0O3Q9ZSxuLnNldFZhbHVlKGJyLHQpLGkudGFibGUudXBkYXRlKGkuX2RhdGEpLCgwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBHbi5EaXNwYXRjaENvbnRleHRNZW51QWN0aW9uRXZlbnQoenIuVG9nZ2xlU2hvd0N1cnJlbmN5LCJoZWFkZXIiLGUpKX19fSk7cmV0dXJuey4uLmw/e3RvZ2dsZUN1cnJlbmN5RGlzcGxheUFjdGlvbjpjfTpudWxsLHRvZ2dsZURlc2NyaXB0aW9uQWN0aW9uOnMsdG9nZ2xlU3ltYm9sVHlwZUFjdGlvbjphfX1mdW5jdGlvbiBZcihlLHQpe2NvbnN0e3ZpZXc6aSxmaWVsZEtleTpuLGZpZWxkOnJ9PWU7aWYoIm5hbWUiPT09bilyZXR1cm57fTtyZXR1cm57cmVtb3ZlQ29sdW1uQWN0aW9uOm5ldyB0KHthY3Rpb25JZDoiU2NyZWVuZXIuQ29sdW1uLlJlbW92ZSIsb3B0aW9uczp7bGFiZWw6Xy50KG51bGwsdm9pZCAwLG8oNTkxMjI3KSksb25FeGVjdXRlOigpPT57ci5jaGVja2VkPSExO2NvbnN0IGU9aS5fdGFibGUuZmllbGRzT3JkZXIuZmlsdGVyKChlPT5lIT09bikpO2kuX21vZGVsLmZpZWxkU2V0Q2hhbmdlZC5maXJlKGUuZmlsdGVyKChlPT5JdFtlXSYmITAhPT1JdFtlXS5kaXNhYmxlZCYmITAhPT1JdFtlXS5oaWRkZW5Db2x1bW4pKSksaS5fbW9kZWwudXBkYXRlKCksaS4kZmllbGRTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXVuc2F2ZWQiLGkuX21vZGVsLmlzRmllbGRTZXRDaGFuZ2VkKCkpLCgwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBHbi5EaXNwYXRjaENvbnRleHRNZW51QWN0aW9uRXZlbnQoenIuUmVtb3ZlQ29sdW1uLCJoZWFkZXIiLG4pKX19fSl9fWZ1bmN0aW9uIEpyKGUsdCl7Y29uc3R7dmlldzppLGZpZWxkS2V5Om4sZmllbGQ6cixlOnN9PWUsYT1zLmN1cnJlbnRUYXJnZXR8fHMudGFyZ2V0LGw9bmV3IHQoe2FjdGlvbklkOiJTY3JlZW5lci5GaWx0ZXIuUmVzZXQiLG9wdGlvbnM6e2xhYmVsOl8udChudWxsLHZvaWQgMCxvKDMxMTczNykpLG9uRXhlY3V0ZTooKT0+e2kucmVzZXRGaWx0ZXIobiksKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IEduLkRpc3BhdGNoQ29udGV4dE1lbnVBY3Rpb25FdmVudCh6ci5SZXNldEZpbHRlciwiaGVhZGVyIixuKSl9fX0pLGM9bmV3IHQoe2FjdGlvbklkOiJTY3JlZW5lci5GaWx0ZXIuQ2hhbmdlIixvcHRpb25zOntsYWJlbDpfLnQobnVsbCx2b2lkIDAsbyg2ODEwNDMpKSxvbkV4ZWN1dGU6KCk9Pntjb25zdCBlPWpyKGEpLmNsb3Nlc3QoInRoIik7aS5zaG93SW5wbGFjZUVkaXRvcihuLGUpLHMuc3RvcFByb3BhZ2F0aW9uKCksKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IEduLkRpc3BhdGNoQ29udGV4dE1lbnVBY3Rpb25FdmVudCh6ci5DaGFuZ2VGaWx0ZXIsImhlYWRlciIsbikpfX19KTtpZihyLmNvbnRyb2wpe2kuZmllbGRWYWx1ZVN0cmluZyhuKXx8bC51cGRhdGUoe2Rpc2FibGVkOiEwfSl9ZWxzZSBsLnVwZGF0ZSh7ZGlzYWJsZWQ6ITB9KSxjLnVwZGF0ZSh7ZGlzYWJsZWQ6ITB9KTtyZXR1cm57cmVzZXRGaWx0ZXJBY3Rpb246bCxjaGFuZ2VGaWx0ZXJBY3Rpb246Y319ZnVuY3Rpb24gWnIoZSx0KXtjb25zdHt2aWV3OmksZmllbGRLZXk6bixmaWVsZDpyfT1lO2lmKCFyLmhhc093blByb3BlcnR5KCJkaXNwbGF5U2lnbmFsIikpcmV0dXJue307Y29uc3R7ZGlzcGxheVNpZ25hbDpzfT1yO3JldHVybnt0b2dnbGVTaWduYWxBY3Rpb246bmV3IHQoe2FjdGlvbklkOiJTY3JlZW5lci5Ub2dnbGVWaXNpYmlsaXR5LlJhdGluZyIsb3B0aW9uczp7bGFiZWw6cz9fLnQobnVsbCx2b2lkIDAsbyg3NTcyMzEpKTpfLnQobnVsbCx2b2lkIDAsbygyNzM2ODEpKSxvbkV4ZWN1dGU6KCk9PntpLl90YWJsZS50b2dnbGVTaWduYWxzKG4pLCgwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBHbi5EaXNwYXRjaENvbnRleHRNZW51QWN0aW9uRXZlbnQoenIuVG9nZ2xlU2lnbmFsLCJoZWFkZXIiLCFzKSl9fX0pfX0hZnVuY3Rpb24oZSl7ZS5BY3RpdmVPbmx5PSJhY3RpdmVfb25seSIsZS5Ub2dnbGVEZXNjcmlwdGlvbj0ic2hvd19kZXNjcmlwdGlvbiIsZS5Ub2dnbGVTeW1ib2xUeXBlPSJzaG93X3N5bWJvbF90eXBlIixlLlRvZ2dsZVByaW1hcnlPbmx5PSJzaG93X3ByaW1hcnlfb25seSIsZS5SZW1vdmVDb2x1bW49InJlbW92ZV9jb2x1bW4iLGUuUmVzZXRGaWx0ZXI9InJlc2V0X2ZpbHRlciIsZS5DaGFuZ2VGaWx0ZXI9ImNoYW5nZV9maWx0ZXIiLGUuVG9nZ2xlU2lnbmFsPSJzaG93X3JhdGluZyIsZS5Ub2dnbGVTaG93Q3VycmVuY3k9InRvZ2dsZV9zaG93X2N1cnJlbmN5In0oenJ8fCh6cj17fSkpO3ZhciBRcj1vKDcwMzA0MSksZXM9bygzODI3NDUpO2NvbnN0IHRzPSJzY3JlZW5lci1tYXJrZXQtc2VsZWN0LW1vZGUiO3ZhciBvcz1vKDI0OTQ2OSksaXM9byg5OTg2NjEpLG5zPW8oOTIxNzA4KSxycz1vKDQ4MjUwNCk7Y29uc3Qgc3M9bygyMjUyOTgpLmxpbmtpbmc7byg1NTA2ODIpCjtjb25zdHtEZWxlZ2F0ZTphc309byg5NDgzODApLGxzPW8oMjIxMDYxKS5nZXRMb2dnZXIoIlNjcmVlbmVyLlZpZXciKSx7b3BlcmF0b3JzOmNzLGZpZWxkczpkc309byg2NDEzMDQpLGhzPV8udChudWxsLHtjb250ZXh0OiJmb3JleF9zY3JlZW5lcl9wYWlyc19zZWxlY3QifSxvKDE4NTQ5OSkpLHVzPV8udChudWxsLHZvaWQgMCxvKDIzMzY5MCkpLF9zPV8udChudWxsLHZvaWQgMCxvKDkyMTg0NykpLHBzPW8oODQxODc3KSxtcz1vKDgyMzM1OCksZ3M9Wy0xLDEwLDYwXSx2cz1bLTEsMTBdLGZzPXtib25kczp7eWllbGRzOl8udChudWxsLHtjb250ZXh0OiJCb25kcyJ9LG8oNzUxMDMzKSkscHJpY2VzOl8udChudWxsLHtjb250ZXh0OiJCb25kcyJ9LG8oNjQxNTk4KSl9LGNyeXB0b19ta3Q6e1VTRDoiVVNEIixCVEM6IkJUQyJ9fSx5cz1gPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdGFibGVfX3NlYXJjaC1xdWVyeSBqcy1zZWFyY2gtcXVlcnkgJHtJdC5kZXNjcmlwdGlvbi5kaXNhYmxlZHx8IUl0LmRlc2NyaXB0aW9uLmNoZWNrZWQ/InR2LXNjcmVlbmVyLXRhYmxlX19zZWFyY2gtcXVlcnktLXdpdGhvdXQtZGVzY3JpcHRpb24iOiIifSI+XG5cdFx0PGlucHV0XG5cdFx0XHR0eXBlPSJ0ZXh0IlxuXHRcdFx0YXV0b2NvbXBsZXRlPSJvZmYiXG5cdFx0XHRjbGFzcz0idHYtc2NyZWVuZXItdGFibGVfX3NlYXJjaC1pbnB1dCBqcy1zZWFyY2gtaW5wdXQiXG5cdFx0Lz5cblx0XHQ8c3BhbiBjbGFzcz0idHYtc2VhcmNoLWJhcl9fc2VhcmNoLWljb24gdHYtc2NyZWVuZXItdGFibGVfX3NlYXJjaC1pY29uIj4ke28oMjYxMTc4KX08L3NwYW4+XG5cdFx0PHNwYW4gY2xhc3M9InR2LXNlYXJjaC1iYXJfX2lucHV0LXJlc2V0IHR2LXNjcmVlbmVyLXRhYmxlX19pbnB1dC1yZXNldCBpLWhpZGRlbiBqcy1pbnB1dC1yZXNldCI+JHtvKDIwNzc0Nil9PC9zcGFuPlxuXHQ8L2Rpdj5gO2NsYXNzIGJze2NvbnN0cnVjdG9yKGUsdCl7dGhpcy5fYnJpZGdlPWUsdGhpcy5fbW9kZWw9dCx0aGlzLl9vbldpZGdldD1lLm9uV2lkZ2V0LHRoaXMuX2FjdGl2ZUVsZW09bnVsbCx0aGlzLl9jaGFuZ2VTeW1ib2w9KDAsdm8uZGVmYXVsdCkodGhpcy5fY2hhbmdlU3ltYm9sLDUwMCksdGhpcy5fbGlmZWN5Y2xlPW5ldyB4aSx0aGlzLnNvcnRlZEZpZWxkcz1PYmplY3Qua2V5cyhJdCkuZmlsdGVyKChlPT5Cb29sZWFuKEt0KEl0W2VdKSkpKSx0aGlzLl9wb3B1cHM9bmV3IGRpKHQsdGhpcyxlKSx0aGlzLl9kaWFsb2c9bmV3IGtpKHQsdGhpcyxlKSx0aGlzLl9kaXNhYmxlU3RpY2t5SGVhZGVyPXRoaXMuX2JyaWRnZS5kaXNhYmxlU3RpY2t5SGVhZGVyLHRoaXMuX3BlcmlvZFBpY2tlcj1lLnBlcmlvZF9waWNrZXIsdGhpcy5fbm9EYXRhU3RyaW5nPWUubm9fZGF0YV9zdHJpbmcsdGhpcy5faXNVbmF2YWlsYWJsZVdpZGdldE1hcmtldD1lLmlzVW5hdmFpbGFibGVXaWRnZXRNYXJrZXQsdGhpcy5fcGVyaW9kUGlja2VyQnV0dG9ucz1be2lkOiJ5ZXN0ZXJkYXkiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDk2NTU3MykpfSx7aWQ6InRvZGF5Iix0aXRsZTpfLnQobnVsbCx2b2lkIDAsbyg2MTQ0NTApKX0se2lkOiJ0b21vcnJvdyIsdGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oOTQwNDgzKSl9LHtpZDoidGhpc193ZWVrIix0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygxMjc0ODMpKX0se2lkOiJuZXh0X3dlZWsiLHRpdGxlOl8udChudWxsLHZvaWQgMCxvKDQ4NTQ1NCkpfV07Y29uc3QgaT0idW5kZWZpbmVkIj09PXRoaXMuX21vZGVsLnNldHRpbmdLZXk/dGhpcy5fbW9kZWwuc2NyZWVuZXJfdHlwZTp0aGlzLl9tb2RlbC5zZXR0aW5nS2V5O3RoaXMuX2ZpZWxkc19vcmRlcj10aGlzLl9tb2RlbC5zZXR0aW5nc1NhdmVyLmdldEpTT04oaSsiLmZpZWxkc19vcmRlciIsW10pLHRoaXMuX2RhdGE9W10sdGhpcy5fbGFzdFNldElkPW51bGwsdGhpcy53aWR0aENoYW5nZT1uZXcgYXMsdGhpcy5fYnJpZGdlLndpZHRoJiZ0aGlzLl9icmlkZ2Uud2lkdGguc3Vic2NyaWJlKCgoKT0+e3RoaXMud2lkdGhDaGFuZ2UuZmlyZSgpfSkpLHRoaXMuXyRncm91cFNlbGVjdD1udWxsLHRoaXMuX3ByZXZlbnRIaWdobGlnaHRDaGFuZ2VzPSExLHRoaXMuX3RhYmxlPVVyKHRoaXMpLHRoaXMuX21vZGVsLmZpZWxkU2V0Q2hhbmdlZC5zdWJzY3JpYmUobnVsbCwoZT0+e2NvbnN0IHQ9e307ZS5mb3JFYWNoKChlPT57dFtlXT1JdFtlXX0pKSx0aGlzLl90YWJsZS5zZXRGaWVsZHModCl9KSksdGhpcy5fbW9kZWwuZmlsdGVyU2V0Q2hhbmdlZC5zdWJzY3JpYmUobnVsbCwoKCk9Pnt0aGlzLiRmaWx0ZXJTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXVuc2F2ZWQiLHRoaXMuX21vZGVsLmlzRmlsdGVyU2V0Q2hhbmdlZCgpKX0pKSx0aGlzLl90YWJsZS5maWVsZHNPcmRlckNoYW5nZS5zdWJzY3JpYmUobnVsbCwoKCk9Pnt0aGlzLl9tb2RlbC5maWVsZHNPcmRlci5zZXRWYWx1ZSh0aGlzLl90YWJsZS5maWVsZHNPcmRlciksdGhpcy4kZmllbGRTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXVuc2F2ZWQiLHRoaXMuX21vZGVsLmlzRmllbGRTZXRDaGFuZ2VkKCkpLHRoaXMuX21vZGVsLnNldHRpbmdzU2F2ZXIuc2V0SlNPTihpKyIuZmllbGRzX29yZGVyIix0aGlzLl90YWJsZS5maWVsZHNPcmRlcix7Zm9yY2VGbHVzaDohMH0pfSkpO2xldCBuPTAscj0hMTt0aGlzLl9tb2RlbC5sb2FkaW5nU3RhcnQuc3Vic2NyaWJlKG51bGwsKGU9PntlPyhyPSEwLHRoaXMuX2JyaWRnZS5zdGFuZGFsb25lJiYobj1ycyhkb2N1bWVudCkuc2Nyb2xsVG9wKCkpLHRoaXMuX3Nob3dTcGlubmVyKHRoaXMuJGJvdHRvbUxvYWRpbmdTY3JlZW4pKToobj0wLHRoaXMuX21vZGVsLmlzRmFzdFJlZnJlc2h8fHRoaXMuX3Nob3dTcGlubmVyKCkpfSkpLHRoaXMuX21vZGVsLmxvYWRpbmdTdGFydC5zdWJzY3JpYmUobnVsbCwoKCk9PnRoaXMucmVzZXRSZWZyZXNoQ291bnRlcighMCkpKSx0aGlzLl9tb2RlbC5sb2FkaW5nQ29tcGxldGUuc3Vic2NyaWJlKG51bGwsKCgpPT57CnImJnRoaXMuX2JyaWRnZS5zdGFuZGFsb25lJiYwIT09biYmcnMoZG9jdW1lbnQpLnNjcm9sbFRvcCgpIT09bj8ocj0hMSxycyhkb2N1bWVudCkuc2Nyb2xsVG9wKG4pLG49MCk6dGhpcy5fYnJpZGdlLnN0YW5kYWxvbmUmJnRoaXMuX2lzU2Nyb2xsQm90dG9tKCkmJnJzKGRvY3VtZW50KS5zY3JvbGxUb3AocnMoZG9jdW1lbnQpLnNjcm9sbFRvcCgpLzIpLHRoaXMuX2hpZGVTcGlubmVyKCksdGhpcy5yZXNldFJlZnJlc2hDb3VudGVyKCl9KSksdGhpcy5fbW9kZWwuZW9kUmVzdHJpY3Rpb24uc3Vic2NyaWJlKCgoKT0+dGhpcy51cGRhdGVJbnRlcnZhbEJ1dHRvbigpKSx7Y2FsbFdpdGhMYXN0OiEwfSksd2luZG93LmxvZ2luU3RhdGVDaGFuZ2UmJndpbmRvdy5sb2dpblN0YXRlQ2hhbmdlLnN1YnNjcmliZShudWxsLCgoKT0+e2lmKHRoaXMucmVzZXRSZWZyZXNoQ291bnRlcigpLCJmb3JleCI9PT10aGlzLl9tb2RlbC5zY3JlZW5lcl90eXBlKXtjb25zdCBlPXRoaXMuX21vZGVsLnNlbGVjdGVkR3JvdXBzO0l0LnNlY3Rvci52YWx1ZT1BcnJheS5pc0FycmF5KGUpJiZlWzBdPT09Xy50KG51bGwsdm9pZCAwLG8oOTIxODQ3KSk/bnVsbDplLHRoaXMuXyRncm91cFNlbGVjdEJ1dHRvbiYmKHRoaXMuXyRncm91cFNlbGVjdEJ1dHRvbi5lbXB0eSgpLHRoaXMudXBkYXRlR3JvdXBzQnV0dG9uKHRoaXMuXyRncm91cFNlbGVjdEJ1dHRvbixlKSl9fSkpLHRoaXMuX2JyaWRnZS5zdGFuZGFsb25lJiZycyh3aW5kb3cpLm9uKCJzY3JvbGwiLCgoKT0+e3JzKCIuanMtZHJvcGRvd24tdG9nZ2xlLmktb3BlbmVkIikudHJpZ2dlcigicmVzZXRQb3NpdGlvbiIpfSkpO2NvbnN0IHM9KDAsdm8uZGVmYXVsdCkoKCgpPT57dGhpcy5fdGVtcEJ1c3k9ITF9KSwyNTApLGE9KCk9Pnt0aGlzLl90ZW1wQnVzeXx8KHRoaXMuX3RlbXBCdXN5PSEwKSxzKCl9O3RoaXMuX2JyaWRnZS5zdGFuZGFsb25lJiZycyh3aW5kb3cpLm9uKCJzY3JvbGwiLGEpLHJzKHdpbmRvdykub24oInJlc2l6ZSIsYSksdGhpcy53aWR0aENoYW5nZS5zdWJzY3JpYmUodGhpcyxhKSx0aGlzLl9icmlkZ2Uuc3RhbmRhbG9uZXx8dGhpcy5fbW9kZWwubG9hZGluZ0NvbXBsZXRlLnN1YnNjcmliZShudWxsLCgoKT0+e3RoaXMuaXNFbmRSZWFjaGVkKCk/KHRoaXMuJGNvbnRlbnQuYWRkQ2xhc3MoInR2LXNjcmVlbmVyX19jb250ZW50LXBhbmUtLWZ1bGx5LWxvYWRlZCIpLHRoaXMuX3RhYmxlLiRlbGVtZW50LmNzcygibWFyZ2luLWJvdHRvbSIsLXRoaXMuX2NvbnRlbnRQYWRkaW5nKSk6KHRoaXMuJGNvbnRlbnQucmVtb3ZlQ2xhc3MoInR2LXNjcmVlbmVyX19jb250ZW50LXBhbmUtLWZ1bGx5LWxvYWRlZCIpLHRoaXMuX3RhYmxlLiRlbGVtZW50LmNzcygibWFyZ2luLWJvdHRvbSIsIiIpKX0pKSxUcmFkaW5nVmlldy5vbkNoYXJ0UGFnZSYmTWkuc3Vic2NyaWJlKCJzY3JlZW5lci5zZWxlY3RlZF90eXBlX29uX2NoYXJ0IiwoZT0+e3RoaXMuX21vZGVsLmNoYW5nZVNjcmVlbmVyVHlwZShlKS50aGVuKCgoKT0+e3RoaXMuX2xhc3RTZXRJZD1udWxsLHRoaXMuX3BvcHVwcy5zZXRNYXJrZXRzTGlzdChGKHRoaXMuX21vZGVsLnNjcmVlbmVyX3R5cGUpKSwiZm9yZXgiPT09dGhpcy5fbW9kZWwuc2NyZWVuZXJfdHlwZT90aGlzLl8kZ3JvdXBTZWxlY3QucmVtb3ZlQ2xhc3MoImktaGlkZGVuIik6dGhpcy5fJGdyb3VwU2VsZWN0LmFkZENsYXNzKCJpLWhpZGRlbiIpLHRoaXMudXBkYXRlSW50ZXJ2YWxCdXR0b24odGhpcy5fJHNlbGVjdEludGVydmFsQnV0dG9uLHRoaXMuX21vZGVsLnNlbGVjdGVkSW50ZXJ2YWxJZCksdGhpcy5fcG9wdXBzLnVwZGF0ZVJlZnJlc2hJbnRlcnZhbHNQb3B1cENvbnRlbnQoKX0pKS50aGVuKCgoKT0+dGhpcy51cGRhdGVNYXJrZXRCdXR0b24oKSkpLmNhdGNoKChlPT57ZSYmbHMubG9nRXJyb3IoZSl9KSl9KSl9Z2V0U2VsZWN0ZWRTeW1ib2xzKCl7cmV0dXJuIHRoaXMuX3NlbGVjdGFibGVMaXN0P3RoaXMuX3NlbGVjdGFibGVMaXN0LmdldFNlbGVjdGVkS2V5cygpOltdfWdldEZvY3VzZWRTeW1ib2woKXtpZih0aGlzLl9zZWxlY3RhYmxlTGlzdClyZXR1cm4gdGhpcy5fc2VsZWN0YWJsZUxpc3QuZ2V0Rm9jdXNlZEtleSgpfXJlZ2lzdGVySG9va3NIYW5kbGVycyhlKXt0aGlzLl9saWZlY3ljbGUucmVnaXN0ZXJIYW5kbGVycyhlKX1faXNTY3JvbGxCb3R0b20oKXtyZXR1cm4gcnMod2luZG93KS5zY3JvbGxUb3AoKStycyh3aW5kb3cpLmhlaWdodCgpPT09cnMoZG9jdW1lbnQpLmhlaWdodCgpfV9pbml0U2VsZWN0YWJsZUxpc3QoKXt0aGlzLl9zZWxlY3RhYmxlTGlzdD0oMCx5by5jcmVhdGVTZWxlY3RhYmxlTGlzdCkoe2xpc3Q6dGhpcy4kY29udGVudC5nZXQoMCksbGlzdEl0ZW1DbGFzczoidHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3ciLHNlbGVjdGVkTGlzdEl0ZW1DbGFzczoidHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3ctLXNlbGVjdGVkIixmb2N1c2VkTGlzdEl0ZW1DbGFzczoidHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3ctLWZvY3VzZWQiLG9uTmF2aWdhdGU6dGhpcy5fb25TeW1ib2xzTmF2aWdhdGUuYmluZCh0aGlzKSxvbkNvbmZpcm06dGhpcy5fb25TeW1ib2xDb25maXJtLmJpbmQodGhpcyksZ2V0Tm9kZUtleTplPT5lLmRhdGFzZXQuc3ltYm9sfSl9X2dldFRoQ29udGVudChlLHQpe3R8fCh0PUl0W2VdKTtjb25zdCBpPWtuKGUsdCk/cnMoYDxkaXYgY2xhc3M9InR2LXNjcmVlbmVyLXRhYmxlX19oZWFkLXdyYXAganMtaGVhZC13cmFwIGFwcGx5LWNvbW1vbi10b29sdGlwIGNvbW1vbi10b29sdGlwLWZpeGVkIiB0aXRsZT0iJHt0LnRpdGxlfSIgZGF0YS1maWVsZD0iJHtlfSI+YCk6cnMoYDxkaXYgY2xhc3M9InR2LXNjcmVlbmVyLXRhYmxlX19oZWFkLXdyYXAganMtaGVhZC13cmFwIiBkYXRhLWZpZWxkPSIke2V9Ij5gKTt0LmRpc2FibGVIZWFkZXJDb250cm9sJiZpLmFkZENsYXNzKCJ0di1zY3JlZW5lci10YWJsZV9faGVhZC13cmFwLS1kaXNhYmxlLWludGVyYWN0aW9uIikKO2NvbnN0IG49cnMoJzxkaXYgY2xhc3M9InR2LXNjcmVlbmVyLXRhYmxlX19oZWFkLWxlZnQganMtaGVhZC1sZWZ0Ij48L2Rpdj4nKS5hcHBlbmRUbyhpKSxyPXJzKCc8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci10YWJsZV9faGVhZC1sZWZ0LS10ZXh0Ij48L2Rpdj4nKS5hcHBlbmRUbyhuKSxzPXJzKGA8ZGl2IGNsYXNzPSJqcy1oZWFkLXRpdGxlIj4ke3Quc2hvcnRUaXRsZXx8dC50aXRsZX08L2Rpdj5gKS5hcHBlbmRUbyhyKTtlPT09dGhpcy5fbW9kZWwuc2VhcmNoRmllbGQmJm4uYWRkQ2xhc3MoIUl0LmRlc2NyaXB0aW9uLmRpc2FibGVkJiZJdC5kZXNjcmlwdGlvbi5jaGVja2VkPyJ0di1zY3JlZW5lci10YWJsZV9faGVhZC1sZWZ0LS1uYW1lLWNvbCI6dGhpcy5fb25XaWRnZXQ/InR2LXNjcmVlbmVyLXRhYmxlX19oZWFkLWxlZnQtLXdpZGdldC1uYW1lLWNvbC13aXRob3V0LWRlc2NyaXB0aW9uIjoidHYtc2NyZWVuZXItdGFibGVfX2hlYWQtbGVmdC0tbmFtZS1jb2wtd2l0aG91dC1kZXNjcmlwdGlvbiIpO2NvbnN0IGE9cnMoYDxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lci10YWJsZV9fc29ydCBqcy10YWJsZS1zb3J0ICR7dGhpcy5fbW9kZWwuX3NvcnRGaWVsZC52YWx1ZSgpPT09ZT9gdHYtc2NyZWVuZXItdGFibGVfX3NvcnQtLSR7dGhpcy5fbW9kZWwuX3NvcnREaXJlY3Rpb24udmFsdWUoKX1gOiIifSI+JHsiYXNjIj09PXRoaXMuX21vZGVsLl9zb3J0RGlyZWN0aW9uLnZhbHVlKCk/cHM6bXN9PC9zcGFuPmApO2lmKGU9PT10aGlzLl9tb2RlbC5zZWFyY2hGaWVsZCl7bGV0IGU7ZT10aGlzLl90b3RhbENvdW50P3RoaXMuX2JyaWRnZS5oaWRlX2xvYWRfbW9yZSYmdGhpcy5fYnJpZGdlLnBhZ2Vfc2l6ZSYmdGhpcy5fdG90YWxDb3VudD49dGhpcy5fYnJpZGdlLnBhZ2Vfc2l6ZT9fLnQobnVsbCx7cGx1cmFsOiJ7bnVtYmVyfSBtYXRjaGVzIixjb3VudDp0aGlzLl9icmlkZ2UucGFnZV9zaXplfSxvKDU0MDU2NSkpLmZvcm1hdCh7bnVtYmVyOnRoaXMuX2JyaWRnZS5wYWdlX3NpemV9KTpfLnQobnVsbCx7cGx1cmFsOiJ7bnVtYmVyfSBtYXRjaGVzIixjb3VudDp0aGlzLl90b3RhbENvdW50fSxvKDU0MDU2NSkpLmZvcm1hdCh7bnVtYmVyOnRoaXMuX3RvdGFsQ291bnR9KTpfLnQobnVsbCx2b2lkIDAsbygyMjgyOTEpKSxycyhgPGRpdiBjbGFzcz0ianMtZmllbGQtdG90YWwgdHYtc2NyZWVuZXItdGFibGVfX2ZpZWxkLXZhbHVlLS10b3RhbCI+JHtlfTwvZGl2PmApLmFwcGVuZFRvKG4pLHRoaXMuX29uV2lkZ2V0fHxycyh5cykuYXBwZW5kVG8obil9bGV0IGw9ITE7aWYodC5jb250cm9sJiYhdGhpcy5fYnJpZGdlLmhpZGVfY29udHJvbHMpe2NvbnN0IHQ9cnMoYDxpIGRhdGEtZmllbGQ9IiR7ZX0iIGNsYXNzPSJqcy1maWx0ZXItYnV0dG9uIHR2LXNjcmVlbmVyLXRhYmxlX19maWx0ZXItYnV0dG9uIj4ke28oNjA4MDY1KX08L2k+YCk7dC5hcHBlbmRUbyhpKTtpZih0aGlzLmZpZWxkVmFsdWVTdHJpbmcoZSkpe3QuYWRkQ2xhc3MoInR2LXNjcmVlbmVyLXRhYmxlX19maWx0ZXItYnV0dG9uLS1hY3RpdmUiKTtjb25zdCBvPXJzKGA8c3BhbiBjbGFzcz0ianMtZmllbGQtdmFsdWUgdHYtc2NyZWVuZXItdGFibGVfX2ZpZWxkLXZhbHVlIGFwcGx5LW92ZXJmbG93LXRvb2x0aXAkeyJuYW1lIj09PWU/IiB0di1zY3JlZW5lci10YWJsZV9fZmllbGQtdmFsdWUtLW5hbWUiOiIifSI+JHt0aGlzLmZpZWxkVmFsdWVTdHJpbmcoZSl9PC9zcGFuPmApO24uYXBwZW5kKG8pLGw9ITB9fXJldHVybiBhLmFwcGVuZFRvKGkpLHMuYWRkQ2xhc3MobD8idHYtc2NyZWVuZXItdGFibGVfX2hlYWQtbGVmdC0tdGl0bGUtdHdvLWxpbmVzIjoidHYtc2NyZWVuZXItdGFibGVfX2hlYWQtbGVmdC0tdGl0bGUtdGhyZWUtbGluZXMiKSxpfV91cGRhdGVUYWJsZVNvcnRGaWVsZCgpe2NvbnN0IGU9dGhpcy5fbW9kZWwuX3NvcnRGaWVsZC52YWx1ZSgpLHQ9dGhpcy5fbW9kZWwuX3NvcnREaXJlY3Rpb24udmFsdWUoKTt0aGlzLl90YWJsZS51cGRhdGVTb3J0RmllbGQoZSx0KX1zZXRGaWVsZEFjdGl2ZShlLHQsbyl7dGhpcy5fZGlhbG9nLiRmaWx0ZXJzUG9wdXAmJihvfHwobz10aGlzLl9kaWFsb2cuJGZpbHRlcnNQb3B1cC5maW5kKGAuanMtZmlsdGVyLWZpZWxkLSR7ZS5yZXBsYWNlKC9cVy9nLCIiKX1gKSksbyYmby5zaXplKCkmJm8udG9nZ2xlQ2xhc3MoInR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLS1hY3RpdmUiLHQpKX1fcmVzZXRTZWFyY2hDb3VudCgpe2NvbnN0IGU9dGhpcy5fZ2V0VGhDb250ZW50KHRoaXMuX21vZGVsLnNlYXJjaEZpZWxkKS5maW5kKCIuanMtZmllbGQtdG90YWwiKS50ZXh0KCk7dGhpcy5fdGFibGUuc2V0U2VhcmNoVGV4dChlKX1fcmVzZXRGaWVsZChlKXt0aGlzLnNldEZpZWxkQWN0aXZlKGUsdGhpcy5fbW9kZWwuZmllbGRBY3RpdmUoZSkpO2NvbnN0IHQ9dGhpcy5fZ2V0VGhDb250ZW50KGUpO2lmKCJuYW1lIj09PWUmJnRoaXMuX2xpZmVjeWNsZS5iZWZvcmVBcHBlbmRTeW1ib2xzSGVhZGVyKHQuZ2V0KDApKSx0aGlzLl90YWJsZS5zZXRUaENvbnRlbnQoZSx0KSwhdGhpcy5fZGlhbG9nLiRmaWx0ZXJzUG9wdXAmJnRoaXMuJGlucGxhY2VFZGl0b3ImJmU9PT10aGlzLl9pbnBsYWNlRWRpdG9yRmllbGQpe2NvbnN0IHQ9IXRoaXMuX2lzRmlsdGVyVmFsdWVFbXB0eShlKSxvPXRoaXMuJGlucGxhY2VFZGl0b3IuZmluZCgiLmpzLXJlc2V0IiksaT10aGlzLiRpbnBsYWNlRWRpdG9yLmZpbmQoIi5qcy13cmFwIik7dD8oby5yZW1vdmVDbGFzcygiaS1oaWRkZW4iKSxpLnJlbW92ZUNsYXNzKCJ0di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLXdpdGhvdXQtcmVzZXQiKSx0aGlzLiRpbnBsYWNlRWRpdG9yLnJlbW92ZUNsYXNzKCJ0di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fd2l0aG91dC1yZXNldCIpKTooby5hZGRDbGFzcygiaS1oaWRkZW4iKSxpLmFkZENsYXNzKCJ0di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLXdpdGhvdXQtcmVzZXQiKSwKdGhpcy4kaW5wbGFjZUVkaXRvci5hZGRDbGFzcygidHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX3dpdGhvdXQtcmVzZXQiKSl9fV9zZXR1cFN0aWNreUhlYWRlcigpe2lmKHRoaXMuX2Rpc2FibGVTdGlja3lIZWFkZXIpcmV0dXJuO2NvbnN0IGU9dGhpcy5fdGFibGUuJHN0aWNreUhlYWRlcjtlLmluc2VydEJlZm9yZSh0aGlzLiRjb250ZW50KTtjb25zdCB0PXJzKCc8c3BhbiBjbGFzcz0idHYtc2NyZWVuZXItc3RpY2t5LWhlYWRlci13cmFwcGVyX19yaWdodC1zdWJzdHJhdGUiPjwvc3Bhbj4nKS5wcmVwZW5kVG8odGhpcy4kY29udGVudCk7bGV0IG49TWF0aC5yb3VuZCh0aGlzLiR0b29sYmFyLm91dGVySGVpZ2h0KCkpO2lmKG5ldyBSZXNpemVPYnNlcnZlcigoKCk9PnRoaXMub25SZXNpemVUb29sYmFyKCkpKS5vYnNlcnZlKHRoaXMuJHRvb2xiYXJbMF0pLCgwLEFuLmlzTWFya2V0UGFnZSkodGhpcy5fYnJpZGdlKSlEbih0aGlzKTtlbHNlIGlmKHRoaXMuX2JyaWRnZS5zdGFuZGFsb25lKXtjb25zdCBvPTE0ODtsZXQgaTt0aGlzLiR0b29sYmFyLnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyLS1zdGFuZGFsb25lX3N0aWNreSIsITApLmNzcyh7dG9wOm99KSx0aGlzLl9icmlkZ2UuJGJvZHkuY3NzKHsicGFkZGluZy10b3AiOm59KSxlLmNzcyh7dG9wOm59KTtjb25zdCByPShpLHIpPT57cnx8KHI9cnMoZG9jdW1lbnQpLnNjcm9sbFRvcCgpKSx0aGlzLl9icmlkZ2UuJGJvZHkuY3NzKHsicGFkZGluZy10b3AiOm59KSx0aGlzLiR0b29sYmFyLmNzcyh7dG9wOmk/MDpvLXJ9KSxlLmNzcyh7dG9wOm59KSx0LmNzcyh7dG9wOmk/bjowfSl9LHM9ZT0+cnMoZG9jdW1lbnQpLnNjcm9sbFRvcCgpLSh0aGlzLiRjb250ZW50Lm9mZnNldCgpLnRvcC1lKT4wO3JzKGRvY3VtZW50KS5vbigic2Nyb2xsIiwoKCk9PntuPU1hdGgucm91bmQodGhpcy4kdG9vbGJhci5vdXRlckhlaWdodCgpKTtjb25zdCBvPXJzKGRvY3VtZW50KS5zY3JvbGxUb3AoKSxhPXJzKGRvY3VtZW50KS5zY3JvbGxMZWZ0KCk7bGV0IGw7dGhpcy5fb25XaWRnZXR8fChsPXMobikscihsLG8pLHRoaXMuXyRtYWluQ29udGFpbmVyLmNzcygidG9wIiwtbykpLGUudG9nZ2xlQ2xhc3MoInR2LXNjcmVlbmVyLXN0aWNreS1oZWFkZXItd3JhcHBlci0tc3RhbmRhbG9uZV9zdGlja3kiLGwpO2NvbnN0IGM9KDAsS28uaXNSdGwpKCk/ZG9jdW1lbnQuYm9keS5jbGllbnRXaWR0aC10aGlzLiRjb250ZW50WzBdLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnJpZ2h0Oi1hO2UuY3NzKHtbKDAsS28uaXNSdGwpKCk/InJpZ2h0IjoibGVmdCJdOmw/YzoiYXV0byJ9KSx0LnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci1zdGlja3ktaGVhZGVyLXdyYXBwZXJfX3JpZ2h0LXN1YnN0cmF0ZS0tc3RhbmRhbG9uZV9zdGlja3kiLGwpLGkhPT1sJiZ0aGlzLnVwZGF0ZVRvb2xiYXJCdXR0b25zKCksaT1sLHRoaXMuJGJvdHRvbUxvYWRpbmdTY3JlZW4uY3NzKHtsZWZ0OmF9KX0pKSxycyh3aW5kb3cpLm9uKCJyZXNpemUiLCgoKT0+e3RoaXMuZml4U3RhbmRhbG9uZVdpZHRoKCksbj1NYXRoLnJvdW5kKHRoaXMuJHRvb2xiYXIub3V0ZXJIZWlnaHQoKSk7Y29uc3QgZT1zKG4pO3IoZSksdGhpcy5vblJlc2l6ZVRvb2xiYXIoKX0pKSx0aGlzLmZpeFN0YW5kYWxvbmVXaWR0aCgpLHRoaXMuX3RhYmxlLmFmdGVyRml4Q29scy5zdWJzY3JpYmUobnVsbCwoKCk9Pnt0aGlzLmZpeFN0YW5kYWxvbmVIb3Jpem9udGFsU2Nyb2xsKCl9KSl9ZWxzZXt0aGlzLl9icmlkZ2UuJGJvZHkuY3NzKHtvdmVyZmxvdzoiaGlkZGVuIn0pO2xldCBvPSExLG49ITE7dGhpcy5vblJlc2l6ZVRvb2xiYXIoKTtjb25zdCByPSgpPT57Y29uc3Qgbz1NYXRoLnJvdW5kKGUub3V0ZXJIZWlnaHQoKSk7dC5jc3Moe3RvcDotb30pLHRoaXMuJGNvbnRlbnQuY3NzKHt0b3A6b30pLHRoaXMuX3RhYmxlLiRlbGVtZW50LmNzcyh7dG9wOi1vLHBvc2l0aW9uOiJyZWxhdGl2ZSJ9KX07KFRyYWRpbmdWaWV3Lm9uQ2hhcnRQYWdlfHx0aGlzLl9vbldpZGdldCkmJnIoKSx0aGlzLiRjb250ZW50Lm9uKCJzY3JvbGwiLCgoKT0+eygwLGkuaGlkZSkoKSxBaS5Qb3B1cENvbG9yU2VsZWN0b3IuaGlkZSgpLCgwLEtvLmlzUnRsKSgpP2UuY3NzKCJyaWdodCIsLSh0aGlzLiRjb250ZW50WzBdLnNjcm9sbFdpZHRoLXRoaXMuJGNvbnRlbnRbMF0uY2xpZW50V2lkdGgtKDAsS28uZ2V0TFRSU2Nyb2xsTGVmdCkodGhpcy4kY29udGVudFswXSkpKTplLmNzcygibGVmdCIsLXRoaXMuJGNvbnRlbnQuc2Nyb2xsTGVmdCgpKSx0aGlzLl9vbldpZGdldCYmdGhpcy5fYnJpZGdlLmhpZGVfY29udHJvbHMmJmUuY3NzKHt0b3A6MH0pfSkpLFRyYWRpbmdWaWV3Lm9uQ2hhcnRQYWdlJiZycyhkb2N1bWVudCkub24oInNjcm9sbCIsKCgpPT57d2luZG93LmlubmVyV2lkdGg8PWZvLmJyZWFrcG9pbnRzLnRhYmxldCYmKG89dGhpcy4kY29udGVudC5nZXQoMCkuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wPDApLGUudG9nZ2xlQ2xhc3MoInR2LXNjcmVlbmVyLXN0aWNreS1oZWFkZXItd3JhcHBlci0tc3RhbmRhbG9uZV9zdGlja3kiLG8pLG4hPT1vJiZlLmNzcyh7bGVmdDpvPy10aGlzLiRjb250ZW50LnNjcm9sbExlZnQoKTowfSksbj1vfSkpfXRoaXMuX2JyaWRnZS5oaWRlX2NvbnRyb2xzfHwodGhpcy4kaGVhZGVyRmllbGRzQnV0dG9uPXJzKGA8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci1zdGlja3ktaGVhZGVyLXdyYXBwZXJfX2ZpZWxkcy1idXR0b24gYXBwbHktY29tbW9uLXRvb2x0aXAgY29tbW9uLXRvb2x0aXAtdmVydGljYWwgY29tbW9uLXRvb2x0aXAtb3RsIiB0aXRsZT0iJHtfLnQobnVsbCx2b2lkIDAsbyg1NzkwNjUpKX0iPlxuXHRcdFx0XHQke28oODkzMjUxKX1cblx0XHRcdDwvZGl2PmApLmFwcGVuZFRvKGUpLHRoaXMuJGhlYWRlckZpZWxkc0J1dHRvbi5hdHRyKHsiZGF0YS1uYW1lIjoiaGVhZGVyX2ZpZWxkcy1idXR0b24ifSksCnRoaXMuX3BvcHVwcy5zZXRGaWVsZHNQb3B1cCh0aGlzLiRoZWFkZXJGaWVsZHNCdXR0b24sInR2LXNjcmVlbmVyLXN0aWNreS1oZWFkZXItd3JhcHBlcl9fZmllbGRzLWJ1dHRvbi13cmFwIiwidHYtZHJvcGRvd25fX2JvZHktLXBvc2l0aW9uX3JpZ2h0IikpLHRoaXMuX21vZGVsLmxvYWRpbmdDb21wbGV0ZS5zdWJzY3JpYmUobnVsbCwoKCk9Pnt0LnNob3coKX0pLCEwKX1fc2hvd1NwaW5uZXIoZT10aGlzLiRsb2FkaW5nU2NyZWVuKXtlLnJlbW92ZUNsYXNzKCJqcy1oaWRkZW4iKSxjbGVhclRpbWVvdXQodGhpcy5fc3Bpbm5lclRpbWVvdXRJZCksdGhpcy5fc3Bpbm5lcnx8KHRoaXMuX3NwaW5uZXJUaW1lb3V0SWQ9c2V0VGltZW91dCgoKCk9Pnt0aGlzLl9zcGlubmVyPShuZXcgVGkuU3Bpbm5lcikuc3BpbihlLmdldCgwKSl9KSwxMDApKX1faGlkZVNwaW5uZXIoKXt0aGlzLiRsb2FkaW5nU2NyZWVuLmFkZENsYXNzKCJqcy1oaWRkZW4iKSx0aGlzLiRib3R0b21Mb2FkaW5nU2NyZWVuLmFkZENsYXNzKCJqcy1oaWRkZW4iKSxjbGVhclRpbWVvdXQodGhpcy5fc3Bpbm5lclRpbWVvdXRJZCksdGhpcy5fc3Bpbm5lciYmKHRoaXMuX3NwaW5uZXIuc3RvcCgpLGRlbGV0ZSB0aGlzLl9zcGlubmVyKX1fZ2V0UmVzaXplckJyaWRnZVdpZHRoKCl7cmV0dXJuIHdpbmRvdy53aWRnZXRiYXI/KDAsU24uZ2V0V2lkZ2V0QmFyUGFkZGluZykod2luZG93LndpZGdldGJhci5yZXNpemVyQnJpZGdlLndpZHRoLnZhbHVlKCkpOjB9Zml4U3RhbmRhbG9uZVdpZHRoKCl7aWYodGhpcy5fYnJpZGdlLnN0YW5kYWxvbmUpe3RoaXMuX2JyaWRnZS4kYm9keS5jc3MoeyJwYWRkaW5nLXJpZ2h0IjoiIiwicGFkZGluZy1sZWZ0IjoiIn0pO2NvbnN0IGU9dGhpcy5fZ2V0UmVzaXplckJyaWRnZVdpZHRoKCksdD0oMCxLby5pc1J0bCkoKT8icGFkZGluZy1sZWZ0IjoicGFkZGluZy1yaWdodCI7dGhpcy4kdG9vbGJhci53aWR0aChycyh3aW5kb3cpLndpZHRoKCktZSksdGhpcy5fJG1haW5IZWFkZXIuY3NzKHtbdF06ZX0pLHRoaXMudXBkYXRlVG9vbGJhckJ1dHRvbnMoKSx0aGlzLl90YWJsZSYmdGhpcy5fdGFibGUuXyRlbXB0eU1lc3NhZ2UmJiEoMCxBbi5pc01hcmtldFBhZ2UpKHRoaXMuX21vZGVsLl9icmlkZ2UpJiZ0aGlzLl90YWJsZS5fJGVtcHR5TWVzc2FnZS5jc3Moe3dpZHRoOmBjYWxjKDEwMCUgLSAke2V9cHhgfSksdGhpcy53aWR0aENoYW5nZS5maXJlKCl9fWZpeFN0YW5kYWxvbmVIb3Jpem9udGFsU2Nyb2xsKCl7aWYodGhpcy5fYnJpZGdlLnN0YW5kYWxvbmUpe2NvbnN0IGU9dGhpcy5fZ2V0UmVzaXplckJyaWRnZVdpZHRoKCksdD10aGlzLl90YWJsZS4kZWxlbWVudC53aWR0aCgpKygoMCxLby5pc1J0bCkoKT8wOmUpLG89cnMod2luZG93KS53aWR0aCgpPHQsaT0oMCxLby5pc1J0bCkoKT8icGFkZGluZy1sZWZ0IjoicGFkZGluZy1yaWdodCI7dGhpcy5fYnJpZGdlLiRib2R5LmNzcyh7W2ldOm8/dDoiIn0pLHRoaXMuJHRvb2xiYXIud2lkdGgocnMod2luZG93KS53aWR0aCgpLWUpLHRoaXMudXBkYXRlVG9vbGJhckJ1dHRvbnMoKX19cHJlcGFyZUxheW91dCgpe3RoaXMuX2JyaWRnZS4kYm9keS5hZGRDbGFzcygidHYtc2NyZWVuZXIiKyh0aGlzLl9icmlkZ2Uuc3RhbmRhbG9uZT8iIHR2LXNjcmVlbmVyLS1zdGFuZGFsb25lIjoiIikpLHRoaXMuJGxvYWRpbmdTY3JlZW49cnMoYDxkaXYgY2xhc3M9InR2LXNjcmVlbmVyX19sb2FkaW5nLXNjcmVlbiR7dGhpcy5fYnJpZGdlLnN0YW5kYWxvbmUmJiF0aGlzLl9icmlkZ2UudGFibGVfbG9hZGluZ19zY3JlZW4/IiB0di1zY3JlZW5lcl9fbG9hZGluZy1zY3JlZW4tLXN0YW5kYWxvbmUiOiIifSI+YCkuYXBwZW5kVG8odGhpcy5fYnJpZGdlLiRib2R5KSx0aGlzLiR0b29sYmFyPXJzKGA8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci10b29sYmFyJHt0aGlzLl9icmlkZ2Uuc3RhbmRhbG9uZT8iIHR2LXNjcmVlbmVyLXRvb2xiYXItLXN0YW5kYWxvbmUiOiIifSAke3RoaXMuX2Rpc2FibGVTdGlja3lIZWFkZXI/InR2LXNjcmVlbmVyLXRvb2xiYXItLW1hcmtldHMiOiIifSI+YCkuYXBwZW5kVG8odGhpcy5fYnJpZGdlLiRib2R5KSx0aGlzLiR0b29sYmFyLm9uKCJjb250ZXh0bWVudSIsKGZ1bmN0aW9uKGUpe2UucHJldmVudERlZmF1bHQoKX0pKSxycygiLnR2LXNjcmVlbmVyX19jb250ZW50LXBhbmUiKS5yZW1vdmUoKSx0aGlzLiRjb250ZW50PXJzKCc8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lcl9fY29udGVudC1wYW5lIiB0YWJpbmRleD0iMTAwIj4nKS5kYXRhKHtsb2NhbFNjcm9sbDohdGhpcy5fYnJpZGdlLnN0YW5kYWxvbmV9KS5hcHBlbmRUbyh0aGlzLl9icmlkZ2UuJGJvZHkpLHRoaXMuJGNvbnRlbnQub24oImNvbnRleHRtZW51IiwoZnVuY3Rpb24oZSl7ZS50YXJnZXQuY2xhc3NMaXN0LmNvbnRhaW5zKCJ0di1zY3JlZW5lcl9fY29udGVudC1wYW5lIikmJmUucHJldmVudERlZmF1bHQoKX0pKSx0aGlzLiRib3R0b21Mb2FkaW5nU2NyZWVuPXJzKCc8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lcl9fYm90dG9tLWxvYWRpbmctc2NyZWVuIj4nKS5hcHBlbmRUbyh0aGlzLl9icmlkZ2UuJGJvZHkpLHRoaXMuXyRtYWluQ29udGFpbmVyPXJzKCIudHYtc2NyZWVuZXJfX3N0YW5kYWxvbmUtbWFpbi1jb250YWluZXIiKSx0aGlzLl8kbWFpbkhlYWRlcj10aGlzLl8kbWFpbkNvbnRhaW5lci5maW5kKCIudHYtaGVhZGVyIiksdGhpcy5fb25XaWRnZXR8fCh0aGlzLiRyZWZyZXNoQnV0dG9uPXJzKGA8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24gdHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS13aXRoLW9wdGlvbnMgdHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1yZWZyZXNoIGFwcGx5LWNvbW1vbi10b29sdGlwIGNvbW1vbi10b29sdGlwLWZpeGVkIiB0aXRsZT0iJHtfLnQobnVsbCx2b2lkIDAsbygzNzM3MjIpKX0iPjwvZGl2PmApLmF0dHIoeyJkYXRhLW5hbWUiOiJzY3JlZW5lci1yZWZyZXNoIiwiZGF0YS1yb2xlIjoiYnV0dG9uIn0pLmFwcGVuZChycyhvKDg5OTcwKSkuYXR0cih7CmNsYXNzOiJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24taWNvbiB0di1zY3JlZW5lci10b29sYmFyX19idXR0b24taWNvbi0tc3RhbmRhbG9uZS1yZWZyZXNoIix3aWR0aDoiMTgiLGhlaWdodDoiMTgifSkpLmFwcGVuZFRvKHRoaXMuJHRvb2xiYXIpLHRoaXMuJHJlZnJlc2hDb3VudGVyPXJzKCc8c3BhbiBjbGFzcz0idHYtc2NyZWVuZXItdG9vbGJhcl9fcmVmcmVzaC1jb3VudGVyIj4nKS50ZXh0KCIwMDowMCIpLmFwcGVuZFRvKHRoaXMuJHJlZnJlc2hCdXR0b24pLHRoaXMuJHJlZnJlc2hJbnRlcnZhbEJ1dHRvbj1ycyhgPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uIHR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tb3B0aW9ucyB0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXNwYWNlX3JpZ2h0IGFwcGx5LWNvbW1vbi10b29sdGlwIGNvbW1vbi10b29sdGlwLWZpeGVkIiB0aXRsZT0iJHtfLnQobnVsbCx2b2lkIDAsbyg3ODI2MzQpKX0iPjwvZGl2PmApLmF0dHIoeyJkYXRhLW5hbWUiOiJzY3JlZW5lci1yZWZyZXNoLWludGVydmFsIiwiZGF0YS1yb2xlIjoiYnV0dG9uIn0pLmFwcGVuZChycyhvKDg5MzI1MSkpLmF0dHIoe3dpZHRoOjMsaGVpZ2h0OjEzLGNsYXNzOiJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24taWNvbiIsc3R5bGU6InRvcDogLTFweCJ9KSkuYXBwZW5kVG8odGhpcy4kdG9vbGJhcikpO2NvbnN0IGU9dGhpcy5fbW9kZWwuY3VycmVudEZpZWxkU2V0SWQoKSx0PXRoaXMuX21vZGVsLmdldEZpZWxkU2V0QnlJZChlKTt0aGlzLiRmaWVsZFNldHNCdXR0b249cnMoYDxkaXYgY2xhc3M9InR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbiB0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLWFuaW1hdGVkXG5cdFx0XHR0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXdpdGgtb3B0aW9ucyB0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLWFycm93LWRvd25cblx0XHRcdHR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0td2l0aC1zdGF0ZSBhcHBseS1jb21tb24tdG9vbHRpcCBjb21tb24tdG9vbHRpcC1maXhlZCBqcy1maWVsZC1zZXRzIiB0aXRsZT0iICR7Xy50KG51bGwsdm9pZCAwLG8oMzMyNjA5KSl9Ij5cblx0XHRcdFx0JHt0P3QudGl0bGU6IiJ9XG5cdFx0XHQ8L2Rpdj5gKS5hdHRyKHsiZGF0YS1uYW1lIjoic2NyZWVuZXItZmllbGQtc2V0cyIsImRhdGEtcm9sZSI6ImJ1dHRvbiIsImRhdGEtZmllbGQtc2V0IjplfSkuYXBwZW5kVG8odGhpcy4kdG9vbGJhciksdGhpcy4kZmllbGRzQnV0dG9uPXJzKGA8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24gdHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1vcHRpb25zXG5cdFx0XHR0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXNxdWFyZSBhcHBseS1jb21tb24tdG9vbHRpcCBjb21tb24tdG9vbHRpcC1maXhlZFxuXHRcdFx0dHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1zcGFjZV9yaWdodCIgdGl0bGU9IiAke18udChudWxsLHZvaWQgMCxvKDU3OTA2NSkpfSI+YCkuYXR0cih7ImRhdGEtbmFtZSI6InNjcmVlbmVyLWZpZWxkcyIsImRhdGEtcm9sZSI6ImJ1dHRvbiJ9KS5hcHBlbmQocnMobyg3OTAwODApKS5hdHRyKHtjbGFzczoidHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLWljb24ifSkpLmFwcGVuZFRvKHRoaXMuJHRvb2xiYXIpLHRoaXMuJGZhdm9yaXRlc0Jhcj1ycygnPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdG9vbGJhcl9fZmF2b3JpdGVzIj4nKS5hcHBlbmRUbyh0aGlzLiR0b29sYmFyKSx0aGlzLiRwZXJpb2RQaWNrZXI9cnMoJzxkaXYgY2xhc3M9InR2LXNjcmVlbmVyLXRvb2xiYXJfX3BlcmlvZC1waWNrZXIiPicpLmFwcGVuZFRvKHRoaXMuJHRvb2xiYXIpO2NvbnN0IGk9ZnNbdGhpcy5fbW9kZWwuc2NyZWVuZXJfdHlwZV07aSYmKHRoaXMuX2NyZWF0ZVN3aXRjaChpKSx0aGlzLiR0b29sYmFyLmFkZENsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyLS1vbmUtbGluZSIpKTtjb25zdCBuPXRoaXMuX21vZGVsLmN1cnJlbnRGaWx0ZXJTZXRJZCgpLHI9dGhpcy5fbW9kZWwuZ2V0RmlsdGVyU2V0QnlJZChuKTt0aGlzLiRmaWx0ZXJTZXRzQnV0dG9uPXJzKGA8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24gdHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS13aXRoLW9wdGlvbnNcblx0XHRcdHR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tYXJyb3ctZG93biB0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXdpdGgtc3RhdGVcblx0XHRcdGFwcGx5LWNvbW1vbi10b29sdGlwIGNvbW1vbi10b29sdGlwLWZpeGVkIGpzLWZpbHRlci1zZXRzIiB0aXRsZT0iJHtfLnQobnVsbCx2b2lkIDAsbyg1NzAzNDMpKX0iPmApLmF0dHIoeyJkYXRhLW5hbWUiOiJzY3JlZW5lci1maWx0ZXItc2V0cyIsImRhdGEtcm9sZSI6ImJ1dHRvbiIsImRhdGEtZmlsdGVyLXNldCI6bn0pLmFwcGVuZFRvKHRoaXMuJHRvb2xiYXIpLHRoaXMuJGZpbHRlclNldHNCdXR0b25UaXRsZT1ycyhgPHNwYW4+JHtyP3IudGl0bGU6IiJ9PC9zcGFuPmApLmFwcGVuZFRvKHRoaXMuJGZpbHRlclNldHNCdXR0b24pLHRoaXMuJGZpbHRlcnNCdXR0b249cnMoYDxkaXYgY2xhc3M9InR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbiB0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLW9wdGlvbnMgdHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1maWx0ZXJzIGFwcGx5LWNvbW1vbi10b29sdGlwIGktZGlzYWJsZWQgY29tbW9uLXRvb2x0aXAtZml4ZWQiIHRpdGxlPSIke18udChudWxsLHZvaWQgMCxvKDEwMzQ4NikpfSI+JHtfLnQobnVsbCx2b2lkIDAsbygxNDE3MjcpKX08L2Rpdj5gKS5hdHRyKHsiZGF0YS1uYW1lIjoic2NyZWVuZXItZmlsdGVyIiwiZGF0YS1yb2xlIjoiYnV0dG9uIn0pLmFwcGVuZChycyhvKDYwODA2NSkpLmF0dHIoe2NsYXNzOiJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24taWNvbiB0di1zY3JlZW5lci10b29sYmFyX19idXR0b24taWNvbi0tZmlsdGVycyJ9KSkuYXBwZW5kVG8odGhpcy4kdG9vbGJhciksCnRoaXMuX21vZGVsLmxvYWRpbmdDb21wbGV0ZS5zdWJzY3JpYmUobnVsbCwoKCk9Pnt0aGlzLiRmaWx0ZXJzQnV0dG9uLnJlbW92ZUNsYXNzKCJpLWRpc2FibGVkIil9KSwhMCk7Y29uc3Qgcz1ycygnPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdG9vbGJhcl9fZmlsdGVyLWNvdW50LXdyYXAiPicpLm9uKCJjbGljayIsKCgpPT57dGhpcy5zaG93QWN0aXZlRmlsdGVycygpLCgwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBwaSgiZmlsdGVyX2NvdW50ZXJfYnV0dG9uIix0aGlzLl9nZXRGaWx0ZXJzQ291bnRlclZhbHVlKCkpKX0pKS5hcHBlbmRUbyh0aGlzLiR0b29sYmFyKTtpZih0aGlzLiRmaWx0ZXJDb3VudD1ycyhgPHNwYW4gY2xhc3M9InR2LXNjcmVlbmVyLXRvb2xiYXJfX2ZpbHRlci1jb3VudCBqcy1oaWRkZW4gYXBwbHktY29tbW9uLXRvb2x0aXAgY29tbW9uLXRvb2x0aXAtdmVydGljYWwgY29tbW9uLXRvb2x0aXAtb3RsIiB0aXRsZT0iJHtfLnQobnVsbCx2b2lkIDAsbygxNTc1MzgpKX0iPmApLmF0dHIoeyJkYXRhLW5hbWUiOiJzY3JlZW5lci1maWx0ZXItY291bnQiLCJkYXRhLXJvbGUiOiJidXR0b24ifSkuYXBwZW5kVG8ocyksdGhpcy5fdGFibGUuJGVsZW1lbnQuYXBwZW5kVG8odGhpcy4kY29udGVudCksdGhpcy5pbml0SGFuZGxlcnMoKSx0aGlzLl9icmlkZ2Uuc2VsZWN0aW9uX2Rpc2FibGVkfHx0aGlzLl9pbml0U2VsZWN0YWJsZUxpc3QoKSx0aGlzLl9vbldpZGdldCYmdGhpcy5fYnJpZGdlLmhpZGVfY29udHJvbHMmJih0aGlzLl9jb250ZW50UGFkZGluZz10aGlzLiRjb250ZW50LmlubmVySGVpZ2h0KCktdGhpcy4kY29udGVudC5oZWlnaHQoKSx0aGlzLiRjb250ZW50LmNzcygiaGVpZ2h0IixgY2FsYygxMDAlIC0gJHt0aGlzLl9jb250ZW50UGFkZGluZ31weClgKSx0aGlzLiR0b29sYmFyLmhpZGUoKSksdGhpcy5fYnJpZGdlLmhpZGVfY29udHJvbHMpW3RoaXMuJHJlZnJlc2hCdXR0b24sdGhpcy4kcmVmcmVzaEludGVydmFsQnV0dG9uLHRoaXMuJGZpZWxkU2V0c0J1dHRvbix0aGlzLiRmaWVsZHNCdXR0b24sdGhpcy4kZmlsdGVyU2V0c0J1dHRvbix0aGlzLiRmaWx0ZXJzQnV0dG9uLHRoaXMuJGZpbHRlckNvdW50XS5mb3JFYWNoKChlPT57ZSYmZS5oaWRlKCl9KSksdGhpcy5fb25XaWRnZXQmJih0aGlzLl9icmlkZ2UuJGJvZHkuYWRkQ2xhc3MoInR2LXNjcmVlbmVyLS1oaWRkZW4tdG9vbGJhciIpLHRoaXMuJGxvYWRpbmdTY3JlZW4uYWRkQ2xhc3MoInR2LXNjcmVlbmVyX19sb2FkaW5nLXNjcmVlbi0taGlkZGVuLXRvb2xiYXIiKSk7ZWxzZXt0aGlzLl9vbldpZGdldHx8KHRoaXMuXyRzZWxlY3RJbnRlcnZhbEJ1dHRvbj10aGlzLmFkZEludGVydmFsU2VsZWN0KHskYmVmb3JlOnRoaXMuJGZpbHRlclNldHNCdXR0b259KS5hdHRyKHsiZGF0YS1uYW1lIjoic2NyZWVuZXItdGltZS1pbnRlcnZhbCIsImRhdGEtcm9sZSI6ImJ1dHRvbiJ9KSk7Y29uc3QgZT10aGlzLmFkZE1hcmtldFNlbGVjdCh7JGJlZm9yZTp0aGlzLiRmaWx0ZXJTZXRzQnV0dG9ufSksdD1ycygnPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdG9vbGJhcl9fbWFya2V0LWNvdW50LXdyYXAiPicpLm9uKCJjbGljayIsKCgpPT57dGhpcy5fc2hvd01hcmtldHNEaWFsb2coKX0pKTt0aGlzLiRtYXJrZXRDb3VudD1ycyhgPHNwYW4gY2xhc3M9InR2LXNjcmVlbmVyLXRvb2xiYXJfX2ZpbHRlci1jb3VudCB0di1zY3JlZW5lci10b29sYmFyX19maWx0ZXItY291bnQtLW1hcmtldC1jb3VudCBqcy1oaWRkZW4gYXBwbHktY29tbW9uLXRvb2x0aXAgY29tbW9uLXRvb2x0aXAtdmVydGljYWwgY29tbW9uLXRvb2x0aXAtb3RsIiB0aXRsZT0iJHtfLnQobnVsbCx2b2lkIDAsbygzOTQwMzkpKX0iPmApLmF0dHIoeyJkYXRhLW5hbWUiOiJzY3JlZW5lci1tYXJrZXQtY291bnQiLCJkYXRhLXJvbGUiOiJidXR0b24ifSkuYXBwZW5kVG8odCkscnMoZSkuYWZ0ZXIodCksdGhpcy5fJGdyb3VwU2VsZWN0QnV0dG9uPXRoaXMuYWRkR3JvdXBTZWxlY3QoeyRiZWZvcmU6dGhpcy4kZmlsdGVyU2V0c0J1dHRvbn0pLHRoaXMuX3BvcHVwcy5zZXRGaWVsZHNQb3B1cCh0aGlzLiRmaWVsZHNCdXR0b24sInR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi13cmFwIiksdGhpcy5fcG9wdXBzLnNldEZpZWxkU2V0c1BvcHVwKHRoaXMuJGZpZWxkU2V0c0J1dHRvbiksdGhpcy5fcG9wdXBzLnNldEZpbHRlclNldHNQb3B1cCh0aGlzLiRmaWx0ZXJTZXRzQnV0dG9uKSx0aGlzLl9vbldpZGdldHx8dGhpcy5fcG9wdXBzLnNldFJlZnJlc2hJbnRlcnZhbHNQb3B1cCh0aGlzLiRyZWZyZXNoSW50ZXJ2YWxCdXR0b24pfXZhciBhOyhhPXRoaXMuX21vZGVsLnRpbWV6b25lKSYmYSE9PXhlJiYoeGU9YSksdGhpcy5fcGVyaW9kUGlja2VyPyhXdCgpLHRoaXMuX3NlbGVjdGVkUGVyaW9kSWQ9InRvZGF5Iix0aGlzLl9zZXROZXdFYXJuaW5nc1BlcmlvZCh0aGlzLl9zZWxlY3RlZFBlcmlvZElkKSx0aGlzLnVwZGF0ZVBlcmlvZFBpY2tlcigpLHRoaXMuJGZhdm9yaXRlc0Jhci5oaWRlKCksSXQuZWFybmluZ3NfcmVsZWFzZV9uZXh0X2RhdGUub25GaWx0ZXJDaGFuZ2U9ZT0+e2NvbnN0IHQ9dGhpcy5fcGVyaW9kUGlja2VyQnV0dG9ucy5maW5kKCh0PT50LnRpdGxlPT09ZSkpO3RoaXMuY2hhbmdlRWFybmluZ3NQZXJpb2QodD90LmlkOiIiLCEwKX0pOnRoaXMuJHBlcmlvZFBpY2tlci5oaWRlKCksdGhpcy5fc2hvd1NwaW5uZXIoKSx0aGlzLnVwZGF0ZVRvb2xiYXJCdXR0b25zKCksdGhpcy5vblJlc2l6ZVRvb2xiYXIoKX1vblJlc2l6ZVRvb2xiYXIoKXtpZih0aGlzLl9kaXNhYmxlU3RpY2t5SGVhZGVyKXJldHVybjtpZih0aGlzLl90YWJsZS4kc3RpY2t5SGVhZGVyLnBvc2l0aW9uKCkudG9wPDApcmV0dXJuO2NvbnN0IGU9TWF0aC5yb3VuZCh0aGlzLiR0b29sYmFyLm91dGVySGVpZ2h0KCkpOygwLEFuLmlzRXh0ZXJuYWxXaWRnZXQpKHRoaXMuX2JyaWRnZSkmJnRoaXMuX2JyaWRnZS5oaWRlX2NvbnRyb2xzP3RoaXMuX3RhYmxlLiRzdGlja3lIZWFkZXIuY3NzKHt0b3A6MH0pOnRoaXMuX3RhYmxlLiRzdGlja3lIZWFkZXIuY3NzKHt0b3A6ZX0pfQpzaG93TWFpbnRlbmFuY2UoKXt0aGlzLl9icmlkZ2UuJGJvZHkuaHRtbChgPGRpdiBjbGFzcz0idHYtc2NyZWVuZXJfX21haW50ZW5hbmNlIj4ke18udChudWxsLHZvaWQgMCxvKDMzMjg1NSkpfTwvZGl2PmApfWluaXRIYW5kbGVycygpe3RoaXMuJHRvb2xiYXIub24oImhvdmVyIix0aGlzLmFkanVzdFRvb2xiYXJXaWR0aC5iaW5kKHRoaXMpKSx0aGlzLiRmaWVsZFNldHNCdXR0b24ub24oInRyYW5zaXRpb25lbmQiLHRoaXMudXBkYXRlVG9vbGJhckJ1dHRvbnMuYmluZCh0aGlzKSk7Y29uc3QgZT1lPT57Y29uc3QgdD1lLmRhdGEoImZpZWxkIik7aWYoITE9PT1JdFt0XS5zb3J0YWJsZUNvbHVtbilyZXR1cm47Y29uc3Qgbz10aGlzLl9tb2RlbC5fc29ydEZpZWxkLnZhbHVlKCksaT10aGlzLl9tb2RlbC5fc29ydERpcmVjdGlvbi52YWx1ZSgpO0l0W3RdLmRpc2FibGVIZWFkZXJDb250cm9sfHwobz09PXQmJnRoaXMuX21vZGVsLl9zb3J0RGlyZWN0aW9uLnNldFZhbHVlKCJhc2MiPT09aT8iZGVzYyI6ImFzYyIpLHRoaXMuX21vZGVsLl9zb3J0RmllbGQuc2V0VmFsdWUodCksdGhpcy5fbW9kZWwudXBkYXRlKCkpfTtpZih3by5tb2JpbGV0b3VjaCl7KG5ldyBGaSkubG9hZCgpLnRoZW4oKHQ9Pntjb25zdCBvPW5ldyB0KHJzKCIudHYtc2NyZWVuZXIiKVswXSx7dG91Y2hBY3Rpb246ImF1dG8ifSk7by5nZXQoInByZXNzIikuc2V0KHt0aW1lOjUwMH0pLG8ub24oInByZXNzIiwoZT0+e2NvbnN0IHQ9cnMoZS50YXJnZXQpLmNsb3Nlc3QoIi5qcy1oZWFkLXdyYXAiKTtpZih0Lmxlbmd0aCl7R3Ioe3ZpZXc6dGhpcyxmaWVsZEtleTpycyh0KS5kYXRhKCJmaWVsZCIpLGU6ZS5zcmNFdmVudH0pfWUucHJldmVudERlZmF1bHQoKX0pKSxvLm9uKCJ0YXAiLCh0PT57aWYocnModC50YXJnZXQpLmNsb3Nlc3QoIi5qcy1zZWFyY2gtaW5wdXQiKS5sZW5ndGgpcmV0dXJuO2NvbnN0IG89cnModC50YXJnZXQpLmNsb3Nlc3QoIi5qcy1oZWFkLXdyYXAiKTtvLmxlbmd0aCYmZShvKX0pKX0pKX1lbHNlIHJzKCIudHYtc2NyZWVuZXIiKS5vbigiY2xpY2siLCIuanMtaGVhZC13cmFwIiwodD0+e2NvbnN0IG89cnModC5jdXJyZW50VGFyZ2V0KTtlKG8pLHQuc3RvcFByb3BhZ2F0aW9uKCl9KSkub24oImNvbnRleHRtZW51IiwiLmpzLWhlYWQtd3JhcCIsKGU9PntHcih7dmlldzp0aGlzLGZpZWxkS2V5OnJzKGUuY3VycmVudFRhcmdldCkuZGF0YSgiZmllbGQiKSxlfSksZS5wcmV2ZW50RGVmYXVsdCgpfSkpLHJzKCIudHYtc2NyZWVuZXIiKS5vbigiY2xpY2siLCIuanMtZmlsdGVyLWJ1dHRvbiIsKGU9Pntjb25zdCB0PXJzKGUuY3VycmVudFRhcmdldCkuY2xvc2VzdCgidGgiKSxvPXQuZGF0YSgiZmllbGQiKTt0aGlzLnNob3dJbnBsYWNlRWRpdG9yKG8sdCksZS5zdG9wUHJvcGFnYXRpb24oKX0pKTtycygiLnR2LXNjcmVlbmVyIikub24oImNsaWNrIiwiLmpzLXNlYXJjaC1pbnB1dCIsKGU9PntlLnN0b3BQcm9wYWdhdGlvbigpfSkpLHJzKCIudHYtc2NyZWVuZXIiKS5vbigiY2xpY2siLCIuanMtaW5wdXQtcmVzZXQiLChlPT57cnMoZS5jdXJyZW50VGFyZ2V0KS5hZGRDbGFzcygiaS1oaWRkZW4iKSxycygiLnR2LXNjcmVlbmVyIikuZmluZCgiLmpzLXNlYXJjaC1pbnB1dCIpLnZhbCgiIiksSXRbdGhpcy5fbW9kZWwuc2VhcmNoRmllbGRdLnNlYXJjaFZhbHVlPSIiLHRoaXMuX21vZGVsLnVwZGF0ZSgpLGUuc3RvcFByb3BhZ2F0aW9uKCl9KSkscnMoIi50di1zY3JlZW5lciIpLm9uKCJjbGljayIsIi5qcy1maWx0ZXItYnV0dG9uIiwoZT0+e2NvbnN0IHQ9cnMoZS5jdXJyZW50VGFyZ2V0KS5jbG9zZXN0KCJ0aCIpLG89dC5kYXRhKCJmaWVsZCIpO3RoaXMuc2hvd0lucGxhY2VFZGl0b3Iobyx0KSxlLnN0b3BQcm9wYWdhdGlvbigpfSkpLHRoaXMuX2JyaWRnZS50YWJsZV9jb250ZXh0X21lbnVfZGlzYWJsZWR8fHRoaXMuX2luaXRUYWJsZUNvbnRleHRNZW51KCksdGhpcy4kY29udGVudC5vbigic2Nyb2xsdG9lbmQiLChlPT57dGhpcy5fbW9kZWwubG9hZGluZ3x8dGhpcy5fbW9kZWwudXBkYXRlKG51bGwsITApfSkpLHRoaXMuJHJlZnJlc2hCdXR0b24mJnRoaXMuJHJlZnJlc2hCdXR0b24uY2xpY2soKGU9PnsoMCxmbi5ydW5PclNpZ25JbikoKCgpPT57dGhpcy5fbW9kZWwubG9hZGluZ3x8dGhpcy5yZWZyZXNoKCksKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IHNpKX0pLHtzb3VyY2U6IlNjcmVlbmVyIHJlZnJlc2ggYnV0dG9uIn0pfSkpLHRoaXMuJGZpbHRlcnNCdXR0b24uY2xpY2soKCgpPT57dGhpcy5fZGlhbG9nLnNob3dGaWx0ZXJzRGlhbG9nKCksKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IHBpKCJmaWx0ZXJfYnV0dG9uIix0aGlzLl9nZXRGaWx0ZXJzQ291bnRlclZhbHVlKCkpKX0pKSxzcy5wcm9TeW1ib2wuc3Vic2NyaWJlKChlPT57Y29uc3QgdD10aGlzLiRjb250ZW50LmZpbmQoYFtkYXRhLXN5bWJvbD0iJHtlfSJdYCkuZ2V0KDApO3RoaXMuX3NldEFjdGl2ZUVsZW0odCksdGhpcy5fc2VsZWN0YWJsZUxpc3QmJih0P3RoaXMuX3NlbGVjdGFibGVMaXN0LmZvY3VzSXRlbSh0KTp0aGlzLl9zZWxlY3RhYmxlTGlzdC5jbGVhcigpKX0pKSx0aGlzLiRmaWVsZFNldHNCdXR0b24ub24oImNsaWNrIiwoKCk9Pnt0aGlzLl9sYXN0U2V0SWQ9bnVsbH0pKSx0aGlzLiR0b29sYmFyLm9uKCJjbGljayIsIi5qcy1mYXZvcml0ZS1pdGVtIiwoZT0+e2NvbnN0IHQ9cnMoZS5jdXJyZW50VGFyZ2V0KS5hdHRyKCJkYXRhLXNldCIpO3RoaXMuX2xhc3RTZXRJZCE9PXQmJih0aGlzLl9tb2RlbC5wcmV2ZW50UHJldlNjYW5SZXF1ZXN0KCksdGhpcy51cGRhdGVTZXRJZCh0LCExLHRoaXMuX2JyaWRnZS5oaWRlX2NvbnRyb2xzKSksKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IFpvKCJjb2x1bW5zZXRfZmF2b3JpdGVzX3BpY2tlciIsdCkpfSkpLHRoaXMuJHRvb2xiYXIub24oImNsaWNrIiwiLmpzLXBlcmlvZC1waWNrZXItaXRlbSIsKGU9Pntjb25zdCB0PXJzKGUuY3VycmVudFRhcmdldCkuYXR0cigiZGF0YS1wZXJpb2QiKTt0aGlzLmNoYW5nZUVhcm5pbmdzUGVyaW9kKHQpfSkpLApycyh3aW5kb3cpLnJlc2l6ZSgoZT0+dGhpcy51cGRhdGVUb29sYmFyQnV0dG9ucygpKSksdGhpcy5fYnJpZGdlLndpZHRoJiZ0aGlzLl9icmlkZ2Uud2lkdGguc3Vic2NyaWJlKCgoKT0+dGhpcy51cGRhdGVUb29sYmFyQnV0dG9ucygpKSksdGhpcy5fYnJpZGdlLnZpc2libGUmJnRoaXMuX2JyaWRnZS52aXNpYmxlLnN1YnNjcmliZSgoZT0+e2UmJih0aGlzLnVwZGF0ZVRvb2xiYXJCdXR0b25zKCksdGhpcy5hZGp1c3RUb29sYmFyV2lkdGgoKSl9KSksdGhpcy51cGRhdGVGYXZvcml0ZXNUb29sYmFyKCl9X2luaXRUYWJsZUNvbnRleHRNZW51KCl7dGhpcy4kY29udGVudC5vbigiY29udGV4dG1lbnUiLCIudHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3ciLChlPT57Y29uc3QgdD1ycyhlLmN1cnJlbnRUYXJnZXQpLmRhdGEoInN5bWJvbCIpO3RoaXMuX3NlbGVjdGFibGVMaXN0JiZ0aGlzLl9zZWxlY3RhYmxlTGlzdC5mb2N1c0l0ZW0oZS5jdXJyZW50VGFyZ2V0KSxmdW5jdGlvbihlKXtjb25zdCB0PSgwLFZuLnRpY2tlcikoZS5zeW1ib2wpO3puKHsuLi5lLHNob3J0TmFtZTp0fSxRbixxbi5UYWJsZSl9KHt2aWV3OnRoaXMsc3ltYm9sOnQsZX0pLGUucHJldmVudERlZmF1bHQoKX0pKX1fb25TeW1ib2xzTmF2aWdhdGUoZSl7Y29uc3QgdD1lLmN1cnNvcjtpZih0KXtpZihUcmFkaW5nVmlldy5vbkNoYXJ0UGFnZSYmdGhpcy5fc2V0QWN0aXZlRWxlbSh0KSxbInNlY3RvciIsImluZHVzdHJ5Il0uaW5jbHVkZXModGhpcy5fbW9kZWwuc2NyZWVuZXJfdHlwZSkpcmV0dXJuO2NvbnN0IGU9dC5kYXRhc2V0LnN5bWJvbDt0aGlzLl9jaGFuZ2VTeW1ib2woZSl9fV9jaGFuZ2VTeW1ib2woZSl7Y29uc3QgdD1zcy5wcmV2ZW50RmVlZEJ5U3ltYm9sO3NzLnNldFByZXZlbnRGZWVkQnlTeW1ib2woITApLHNzLnNldFN5bWJvbEFuZExvZ0luaXRpYXRvcihlLCJzY3JlZW5lciIpLHNzLnNldFByZXZlbnRGZWVkQnlTeW1ib2wodCksdGhpcy5fbW9kZWwudHJhY2tFdmVudCgiQ2hhbmdlIHN5bWJvbCBmcm9tIHRhYmxlIil9X3NldEFjdGl2ZUVsZW0oZSl7dGhpcy5fYWN0aXZlRWxlbSYmdGhpcy5fYWN0aXZlRWxlbS5jbGFzc0xpc3QucmVtb3ZlKCJ0di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdy0tYWN0aXZlIiksZT8oZS5jbGFzc0xpc3QuYWRkKCJ0di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdy0tYWN0aXZlIiksdGhpcy5fYWN0aXZlRWxlbT1lKTp0aGlzLl9hY3RpdmVFbGVtPW51bGx9X29uU3ltYm9sQ29uZmlybShlKXtlLml0ZW1zLmZvckVhY2goKHQ9Pntjb25zdCBvPXQuZGF0YXNldC5zeW1ib2w7byYmdGhpcy5fbGlmZWN5Y2xlLmFmdGVyU3ltYm9sQ29uZmlybShvLGUuYWN0aW9uKX0pKX1jaGFuZ2VFYXJuaW5nc1BlcmlvZChlLHQ9ITEpe2lmKHRoaXMuX3NlbGVjdGVkUGVyaW9kSWQ9PT1lKXJldHVybjt0aGlzLl9zZWxlY3RlZFBlcmlvZElkPWUsdGhpcy51cGRhdGVQZXJpb2RQaWNrZXIoKSx0aGlzLl9tb2RlbC5hcHBseUZpZWxkU2V0Q29udGVudChtKTsidG9tb3Jyb3ciPT09ZXx8Im5leHRfd2VlayI9PT1lPyhJdC5lYXJuaW5nc19wZXJfc2hhcmVfZnEubXV0YXRlRGlzcGxheVZhbHVlPSgpPT5xdCxJdC5lcHNfc3VycHJpc2VfZnEubXV0YXRlRGlzcGxheVZhbHVlPSgpPT5xdCxJdC5lcHNfc3VycHJpc2VfcGVyY2VudF9mcS5tdXRhdGVEaXNwbGF5VmFsdWU9KCk9PnF0LEl0LnJldmVudWVfZnEubXV0YXRlRGlzcGxheVZhbHVlPSgpPT5xdCk6VXQoKSx0fHx0aGlzLl9zZXROZXdFYXJuaW5nc1BlcmlvZChlLCgoKT0+e3RoaXMuX3Jlc2V0RmllbGQoImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlIiksdGhpcy5fbW9kZWwucHJldmVudFByZXZTY2FuUmVxdWVzdCgpLHRoaXMuX21vZGVsLnVwZGF0ZSgpfSkpfV9zZXROZXdFYXJuaW5nc1BlcmlvZChlLHQ9KCk9Pnt9KXtjb25zdCBvPUl0LmVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlLnNvdXJjZVJhbmdlLmZpbmQoKHQ9PnQua2V5PT09ZSkpO28mJihJdC5lYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZS52YWx1ZT1vLm5hbWUsdCgpKX1nZXQgdG90YWxDb3VudCgpe3JldHVybiB0aGlzLl90b3RhbENvdW50fWdldCBpdGVtc0NvdW50KCl7cmV0dXJuIHRoaXMuX2l0ZW1zQ291bnR9c2V0IGl0ZW1zQ291bnQoZSl7dGhpcy5faXRlbXNDb3VudD0rZX1zZXQgbGFzdFNldElkKGUpe3RoaXMuX2xhc3RTZXRJZD1lfWdldCBwb3B1cHMoKXtyZXR1cm4gdGhpcy5fcG9wdXBzfWlzRW5kUmVhY2hlZCgpe3JldHVybiAwPT09dGhpcy5fZGF0YS5sZW5ndGh8fCJudW1iZXIiPT10eXBlb2YgdGhpcy5fdG90YWxDb3VudCYmdGhpcy5fZGF0YS5sZW5ndGg+PXRoaXMuX3RvdGFsQ291bnR9ZGlzcGxheShlLHQsbyl7aWYodGhpcy5faGlkZVNwaW5uZXIoKSx0aGlzLl9zZXRGaWx0ZXJzQ291bnQoKSx0aGlzLl9zZXRNYXJrZXRzQ291bnQoKSx0aGlzLiRmaWx0ZXJTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXVuc2F2ZWQiLHRoaXMuX21vZGVsLmlzRmlsdGVyU2V0Q2hhbmdlZCgpKSwhZXx8ZS5lcnJvcnx8IWUuZGF0YSYmIWUuc3ltYm9scykiYWJvcnQiIT09byYmKHRoaXMucmVzZXRJdGVtcygpLHRoaXMuX3RhYmxlLnNldENvbHVtbnNNYXAodCksdGhpcy5fdGFibGUudXBkYXRlKFtdKSx0aGlzLl9yZXNldEZpZWxkKCJuYW1lIiksImVycm9yIj09PW8/bHMubG9nRXJyb3IoZS5yZXNwb25zZVRleHR8fG8pOmUmJmUuZXJyb3ImJmxzLmxvZ0Vycm9yKGUuZXJyb3IpKTtlbHNle2xldCBvPWUuZGF0YXx8ZS5zeW1ib2xzO2ZvcihsZXQgZT0wO2U8by5sZW5ndGg7KytlKW9bZV0uZiYmKG9bZV0uZD1vW2VdLmYpO2lmKHZvaWQgMD09PXRoaXMuX3RvdGFsQ291bnQpdGhpcy5fYnJpZGdlLnRhYmxlX3N0eWxlfHx0aGlzLmZpeFN0YW5kYWxvbmVXaWR0aCgpLHRoaXMuX3RhYmxlLnNldENvbHVtbnNNYXAodCksdGhpcy5fdGFibGUudXBkYXRlKG8pLHRoaXMuX2RhdGE9bztlbHNle2NvbnN0IGU9dGhpcy5fZ2V0SW52YWxpZGF0ZWRGcm9tKG8pOzA9PT1lPyh0aGlzLl9kYXRhPW8sCnRoaXMuX3RhYmxlLnNldENvbHVtbnNNYXAodCksdGhpcy5fdGFibGUudXBkYXRlKG8pKTooZT4wPyhvPW8uc2xpY2UoZSksdGhpcy5fZGF0YT10aGlzLl9kYXRhLnNsaWNlKDAsZSksdGhpcy5fdGFibGUuY2xlYXJEYXRhKGUpKTpvPW8uc2xpY2UodGhpcy5fZGF0YS5sZW5ndGgpLHRoaXMuX2RhdGE9dGhpcy5fZGF0YS5jb25jYXQobyksdGhpcy5fdGFibGUuc2V0Q29sdW1uc01hcCh0KSx0aGlzLl90YWJsZS5hcHBlbmQobykpfXNldFRpbWVvdXQoKCgpPT50aGlzLmhpZ2hsaWdodENoYW5nZXMoKSksMCksdGhpcy5fdG90YWxDb3VudD1lLnRvdGFsQ291bnQsdGhpcy5fcmVzZXRTZWFyY2hDb3VudCgpLHRoaXMuX21vZGVsLl9pbml0aWFsU29ydEZpZWxkJiYodGhpcy5fbW9kZWwuX3NvcnRGaWVsZC5zZXRWYWx1ZSh0aGlzLl9tb2RlbC5faW5pdGlhbFNvcnRGaWVsZCwhMCksdGhpcy5fbW9kZWwuX3NvcnREaXJlY3Rpb24uc2V0VmFsdWUodGhpcy5fbW9kZWwuX2luaXRpYWxTb3J0RGlyZWN0aW9uLCEwKSxkZWxldGUgdGhpcy5fbW9kZWwuX2luaXRpYWxTb3J0RmllbGQsZGVsZXRlIHRoaXMuX21vZGVsLl9pbml0aWFsU29ydERpcmVjdGlvbil9fV9nZXRJbnZhbGlkYXRlZEZyb20oZSl7Zm9yKGxldCB0PTA7dDx0aGlzLl9kYXRhLmxlbmd0aDsrK3Qpe2lmKCFlW3RdfHx0aGlzLl9kYXRhW3RdLnMhPT1lW3RdLnN8fCFlW3RdLmQpcmV0dXJuIHQ7Zm9yKGxldCBvPTA7bzx0aGlzLl9kYXRhW3RdLmQubGVuZ3RoOysrbylpZih0aGlzLl9kYXRhW3RdLmRbb10hPT1lW3RdLmRbb10pcmV0dXJuIHR9cmV0dXJuLTF9Z2V0IHRhYmxlKCl7cmV0dXJuIHRoaXMuX3RhYmxlfXJlc2V0SXRlbXMoKXtkZWxldGUgdGhpcy5fdG90YWxDb3VudCx0aGlzLl9kYXRhPVtdfV9nZXRGaWx0ZXJzQ291bnRlclZhbHVlKCl7Y29uc3QgZT10aGlzLl9tb2RlbC5jdXJyZW50RmlsdGVyU3RhdGUoKTtyZXR1cm4gZS5maWx0ZXJzJiZPYmplY3Qua2V5cyhlLmZpbHRlcnMpLmxlbmd0aHx8MH1fc2V0RmlsdGVyc0NvdW50KCl7Y29uc3QgZT10aGlzLl9nZXRGaWx0ZXJzQ291bnRlclZhbHVlKCk7dGhpcy4kZmlsdGVyQ291bnQudGV4dChgJHtlfWApLnRvZ2dsZUNsYXNzKCJqcy1oaWRkZW4iLCFlKX1fc2V0TWFya2V0c0NvdW50KCl7Y29uc3QgZT10aGlzLl9tb2RlbC5tYXJrZXRzLmxlbmd0aDt0aGlzLiRtYXJrZXRDb3VudCYmdGhpcy4kbWFya2V0Q291bnQudGV4dChgJHtlfWApLnRvZ2dsZUNsYXNzKCJqcy1oaWRkZW4iLDE9PT1lfHx0aGlzLl9tb2RlbC5pc0VudGlyZVdvcmxkKX1fY29uY2F0RmllbGRWYWx1ZXMoZSx0KXt2YXIgbz1bXTtyZXR1cm4gZS5mb3JFYWNoKChlPT57by5wdXNoKHRoaXMuX2dldEZpZWxkVmFsdWVGcm9tUmFuZ2VUaXRsZXMoZSx0KSl9KSksby5qb2luKCIsICIpfV9nZXRGaWVsZFZhbHVlRnJvbVJhbmdlVGl0bGVzKGUsdCxvPSExKXtyZXR1cm4gSXRbdF0ucmFuZ2VUaXRsZXMmJkl0W3RdLnJhbmdlVGl0bGVzW2VdP0l0W3RdLnJhbmdlVGl0bGVzW2VdW28/MTowXToic3RyaW5nIiE9dHlwZW9mIGU/IiI6ZX1maWVsZFZhbHVlU3RyaW5nKGUpe2NvbnN0IHQ9SXRbZV0udmFsdWU7aWYobXQodCl8fCExPT09dClyZXR1cm4iIjtpZigic2VsZWN0Ij09PUl0W2VdLmNvbnRyb2wpe2NvbnN0IGk9Xy50KG51bGwse3BsdXJhbDoie251bWJlcn0gaXRlbXMiLGNvdW50OnQubGVuZ3RoLGNvbnRleHQ6ImNvbWJvYm94X2lucHV0In0sbyg5ODM3NjQpKS5mb3JtYXQoe251bWJlcjp0Lmxlbmd0aH0pO3JldHVybiBBcnJheS5pc0FycmF5KHQpP2A8c3BhbiB0aXRsZT0iJHt0aGlzLl9jb25jYXRGaWVsZFZhbHVlcyh0LGUpfSIgY2xhc3M9ImFwcGx5LWNvbW1vbi10b29sdGlwIj4ke2l9PC9zcGFuPmA6dGhpcy5fZ2V0RmllbGRWYWx1ZUZyb21SYW5nZVRpdGxlcyh0LGUsImRyIj09PXQmJiJuYW1lIj09PWUpfXJldHVybiJyYW5nZSI9PT1JdFtlXS5jb250cm9sP0FycmF5LmlzQXJyYXkodCk/dGhpcy5fcmFuZ2VMZWZ0VmFsdWUoZSkrIiDigJMgIit0aGlzLl9yYW5nZVJpZ2h0VmFsdWUoZSk6IiI6InRvZ2dsZSI9PT1JdFtlXS5jb250cm9sPy0xIT09ZS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoImhpZ2giKT9fLnQobnVsbCx2b2lkIDAsbygzMDU0MDYpKTpfLnQobnVsbCx2b2lkIDAsbyg1MzgyNTQpKToiY29uZGl0aW9uIiE9PUl0W2VdLmNvbnRyb2x8fG10KHQub3BlcmF0b3IpfHxtdCh0LnZhbHVlKT8iIjoiaW5fcmFuZ2UiPT09dC5vcGVyYXRvcj90LnZhbHVlWzBdPT09dC52YWx1ZVsxXT9jcy5lcXVhbCsiICIrdC52YWx1ZVswXTotMWUxMDA9PT10LnZhbHVlWzBdfHx0aGlzLl9pc0xlc3NUaGVuTWluKHQudmFsdWVbMF0sZSk/Y3MubGVzcysiICIrdC52YWx1ZVsxXToxZTEwMD09PXQudmFsdWVbMV18fHRoaXMuX2lzR3JlYXRlclRoZW5NYXgodC52YWx1ZVsxXSxlKT9jcy5ncmVhdGVyKyIgIit0LnZhbHVlWzBdOnRoaXMuX3JhbmdlTGVmdFZhbHVlKGUpKyIg4oCTICIrdGhpcy5fcmFuZ2VSaWdodFZhbHVlKGUpOiJub3RfaW5fcmFuZ2UiPT09dC5vcGVyYXRvcj90LnZhbHVlWzBdPT09dC52YWx1ZVsxXT9jcy5uZXF1YWwrIiAiK3QudmFsdWVbMF06LTFlMTAwPT09dC52YWx1ZVswXXx8dGhpcy5faXNMZXNzVGhlbk1pbih0LnZhbHVlWzBdLGUpP2NzLmdyZWF0ZXIrIiAiK3QudmFsdWVbMV06MWUxMDA9PT10LnZhbHVlWzFdfHx0aGlzLl9pc0dyZWF0ZXJUaGVuTWF4KHQudmFsdWVbMV0sZSk/Y3MubGVzcysiICIrdC52YWx1ZVswXTpgJHtjcy5ub3RfaW5fcmFuZ2V9ICR7dGhpcy5fcmFuZ2VMZWZ0VmFsdWUoZSl9IOKAkyAke3RoaXMuX3JhbmdlUmlnaHRWYWx1ZShlKX1gOmNzW3Qub3BlcmF0b3JdKyIgIisoIm51bWJlciI9PXR5cGVvZiB0LnZhbHVlP3QudmFsdWU6SXRbdC52YWx1ZV0udGl0bGUpfXVwZGF0ZVRvb2xiYXJCdXR0b25zKCl7dGhpcy5fYnJpZGdlLnBlcmlvZF9waWNrZXI/dGhpcy51cGRhdGVQZXJpb2RQaWNrZXIoKTp0aGlzLl9icmlkZ2Uub3JpZ2luYWxTdGFuZGFsb25lJiZ0aGlzLnVwZGF0ZU9sZEZhdm9yaXRlc1Rvb2xiYXIoKX11cGRhdGVPbGRGYXZvcml0ZXNUb29sYmFyKCl7CnRoaXMuJGhpZGRlbkZhdm9yaXRlc0J1dHRvbldyYXAmJnRoaXMuJGhpZGRlbkZhdm9yaXRlc0J1dHRvbldyYXAuaGlkZSgpLHRoaXMuJGZhdm9yaXRlc0Jhci5maW5kKCIuanMtZmF2b3JpdGUtaXRlbSIpLnJlbW92ZSgpO2xldCBlPTA7dGhpcy5oaWRkZW5GYXZvcml0ZXM9W107Y29uc3QgdD10aGlzLiRmYXZvcml0ZXNCYXIud2lkdGgoKSxpPSJmb3JleCIhPT10aGlzLl9tb2RlbC5zY3JlZW5lcl90eXBlfHx0aGlzLl9icmlkZ2UuaGlkZV9jb250cm9scz80MDoxNjAsbj1lPT5lPT09dGhpcy5fbW9kZWwuY3VycmVudEZpZWxkU2V0SWQoKTtpZih0aGlzLl9tb2RlbC5mYXZvcml0ZUZpZWxkU2V0cyl7bGV0IG89bnVsbDtmb3IobGV0IHI9MDtyPHRoaXMuX21vZGVsLmZhdm9yaXRlRmllbGRTZXRzLmxlbmd0aDsrK3Ipe2NvbnN0IHM9dGhpcy5fbW9kZWwuZmF2b3JpdGVGaWVsZFNldHNbcl0sYT10aGlzLl9tb2RlbC5nZXRGaWVsZFNldEJ5SWQocyk7aWYoIWEpcmV0dXJuO2NvbnN0IGw9cnMoYDxkaXYgY2xhc3M9InR2LXNjcmVlbmVyLXRvb2xiYXJfX2Zhdm9yaXRlcy1pdGVtIGpzLWZhdm9yaXRlLWl0ZW0iIGRhdGEtc2V0PSIke2EuaWR9Ij5cblx0XHRcdFx0XHQkeygwLEVpLmh0bWxFc2NhcGUpKGEudGl0bGUpfVxuXHRcdFx0XHQ8L2Rpdj5gKS50b2dnbGVDbGFzcygidHYtc2NyZWVuZXItdG9vbGJhcl9fZmF2b3JpdGVzLWl0ZW0tLWFjdGl2ZSIsbihhLmlkKSk7bz9sLmluc2VydEFmdGVyKG8pOmwucHJlcGVuZFRvKHRoaXMuJGZhdm9yaXRlc0Jhcik7bGV0IGM9bC5vdXRlcldpZHRoKCk7bFswXS5zY3JvbGxXaWR0aD5jJiZsLmFkZENsYXNzKCJhcHBseS1jb21tb24tdG9vbHRpcCIpLmF0dHIoInRpdGxlIixhLnRpdGxlKSxjKz05LGUrPWMsZStpPnQ/KGUtPWMsbC5yZW1vdmUoKSx0aGlzLmhpZGRlbkZhdm9yaXRlcy5wdXNoKHtpZDphLmlkLHRpdGxlOmEudGl0bGV9KSk6bz1sfX1pZih0aGlzLmhpZGRlbkZhdm9yaXRlcy5sZW5ndGgpe2lmKHRoaXMuaGlkZGVuRmF2b3JpdGVzLmxlbmd0aD09PXRoaXMuX21vZGVsLmZhdm9yaXRlRmllbGRTZXRzLmxlbmd0aCYmdGhpcy4kaGlkZGVuRmF2b3JpdGVzQnV0dG9uV3JhcClyZXR1cm4gdm9pZCB0aGlzLiRoaWRkZW5GYXZvcml0ZXNCdXR0b25XcmFwLmhpZGUoKTtpZih0aGlzLiRoaWRkZW5GYXZvcml0ZXNCdXR0b25XcmFwKXRoaXMuJGhpZGRlbkZhdm9yaXRlc0J1dHRvbldyYXAudHJpZ2dlcigicmVzZXRDb250ZW50Iikuc2hvdygpO2Vsc2V7Y29uc3QgZT1ycyhgPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdG9vbGJhcl9fZmF2b3JpdGVzLWl0ZW0gdHYtc2NyZWVuZXItdG9vbGJhcl9fZmF2b3JpdGVzLW1vcmUgYXBwbHktY29tbW9uLXRvb2x0aXAgY29tbW9uLXRvb2x0aXAtZml4ZWQiIHRpdGxlPSIke18udChudWxsLHZvaWQgMCxvKDI2MDYwNSkpfSI+YCkuYXBwZW5kVG8odGhpcy4kZmF2b3JpdGVzQmFyKTt0aGlzLiRoaWRkZW5GYXZvcml0ZXNCdXR0b25XcmFwPXRoaXMuX3BvcHVwcy5zZXRIaWRkZW5GYXZvcml0ZXNQb3B1cChlLCgoKT0+dGhpcy5oaWRkZW5GYXZvcml0ZXMpLG4sKGU9PnRoaXMudXBkYXRlU2V0SWQoZSwhMSx0aGlzLl9icmlkZ2UuaGlkZV9jb250cm9scykpKX19fXVwZGF0ZVNldElkKGUsdCxvKXt0aGlzLl9sYXN0U2V0SWQ9ZSx0aGlzLl9tb2RlbC5hcHBseUZpZWxkU2V0KGUsdCxvKX11cGRhdGVOZXdGYXZvcml0ZXNUb29sYmFyKCl7aWYoIXRoaXMuX21vZGVsLmZhdm9yaXRlRmllbGRTZXRzKXJldHVybjtjb25zdCBlPXtpdGVtczp0aGlzLl9tb2RlbC5mYXZvcml0ZUZpZWxkU2V0cy5tYXAoKGU9Pih7dGl0bGU6dGhpcy5fbW9kZWwuZ2V0RmllbGRTZXRCeUlkKGUpLnRpdGxlfSkpKSxhY3RpdmVJdGVtOnRoaXMuX21vZGVsLmZhdm9yaXRlRmllbGRTZXRzLmluZGV4T2YodGhpcy5fbW9kZWwuY3VycmVudEZpZWxkU2V0SWQoKSksb25TZWxlY3Q6ZT0+e2NvbnN0IHQ9dGhpcy5fbW9kZWwuZmF2b3JpdGVGaWVsZFNldHNbZV07dGhpcy5fbGFzdFNldElkIT09dCYmKHRoaXMuX21vZGVsLnByZXZlbnRQcmV2U2NhblJlcXVlc3QoKSx0aGlzLnVwZGF0ZVNldElkKHQsITEsdGhpcy5fYnJpZGdlLmhpZGVfY29udHJvbHMpKX0sY2xhc3NOYW1lOiJ0di1zY3JlZW5lci10b29sYmFyX19uby1zY3JvbGwtY2hvaWNlci1yZWFjdC1yb290IixzZWxlY3RlZEl0ZW1DbGFzc05hbWU6InR2LXNjcmVlbmVyLXRvb2xiYXJfX25vLXNjcm9sbC1jaG9pY2VyLXJlYWN0LXJvb3QtZHJvcGRvd24taXRlbS0tc2VsZWN0ZWQifTt2bih0aGlzLiRmYXZvcml0ZXNCYXIuZ2V0KDApLGUpfXVwZGF0ZUZhdm9yaXRlc1Rvb2xiYXIoKXt0aGlzLl9vbldpZGdldHx8KHRoaXMuX2JyaWRnZS5vcmlnaW5hbFN0YW5kYWxvbmU/dGhpcy51cGRhdGVPbGRGYXZvcml0ZXNUb29sYmFyKCk6dGhpcy51cGRhdGVOZXdGYXZvcml0ZXNUb29sYmFyKCkpfXVwZGF0ZVBlcmlvZFBpY2tlcigpe2NvbnN0IGU9e2l0ZW1zOnRoaXMuX3BlcmlvZFBpY2tlckJ1dHRvbnMubWFwKChlPT4oe3RpdGxlOmUudGl0bGV9KSkpLGFjdGl2ZUl0ZW06dGhpcy5fcGVyaW9kUGlja2VyQnV0dG9ucy5maW5kSW5kZXgoKGU9PmUuaWQ9PT10aGlzLl9zZWxlY3RlZFBlcmlvZElkKSksb25TZWxlY3Q6ZT0+e2NvbnN0IHQ9dGhpcy5fcGVyaW9kUGlja2VyQnV0dG9uc1tlXS5pZDt0aGlzLmNoYW5nZUVhcm5pbmdzUGVyaW9kKHQpfSxjbGFzc05hbWU6InR2LXNjcmVlbmVyLXRvb2xiYXJfX25vLXNjcm9sbC1jaG9pY2VyLXJlYWN0LXJvb3QiLHNlbGVjdGVkSXRlbUNsYXNzTmFtZToidHYtc2NyZWVuZXItdG9vbGJhcl9fbm8tc2Nyb2xsLWNob2ljZXItcmVhY3Qtcm9vdC1kcm9wZG93bi1pdGVtLS1zZWxlY3RlZCJ9O3ZuKHRoaXMuJHBlcmlvZFBpY2tlci5nZXQoMCksZSl9X2dldFdhdGNobGlzdCgpe2lmKHdpbmRvdy53aWRnZXRiYXIpe2NvbnN0IHQ9d2luZG93LndpZGdldGJhci5zZXRQYWdlKCJiYXNlIik7bGV0IG87Zm9yKHZhciBlPTA7ZTx0LndpZGdldHMubGVuZ3RoO2UrKylpZigid2F0Y2hsaXN0Ij09PXQud2lkZ2V0c1tlXS50eXBlKXtvPXQud2lkZ2V0c1tlXS53aWRnZXRPYmplY3QKO2JyZWFrfXJldHVybiBvfXJldHVybiBudWxsfWFkanVzdFRvb2xiYXJXaWR0aChlKXtjb25zdCB0PXRoaXMuJGZpZWxkU2V0c0J1dHRvblswXS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtpZihlJiYibW91c2VlbnRlciI9PT1lLnR5cGUpdGhpcy4kZmllbGRTZXRzQnV0dG9uLmNzcygid2lkdGgiLHQud2lkdGgpO2Vsc2V7dGhpcy4kZmllbGRTZXRzQnV0dG9uLmNzcygid2lkdGgiLCJhdXRvIik7Y29uc3QgZT10aGlzLiRmaWVsZFNldHNCdXR0b25bMF0uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7dGhpcy4kZmllbGRTZXRzQnV0dG9uLmNzcygid2lkdGgiLHQud2lkdGgpLHRoaXMuJGZpZWxkU2V0c0J1dHRvblswXS5vZmZzZXRXaWR0aCx0aGlzLiRmaWVsZFNldHNCdXR0b24uY3NzKCJ3aWR0aCIsZS53aWR0aCl9fWluaXRGaWx0ZXJIYW5kbGVycyhlKXtjb25zdCB0PWZ1bmN0aW9uKCl7Y29uc3QgZT17fSx0PWlpLlVzZXJBY3Rpb25TdGF0ZS5UeXBlO3JldHVybihvLGksbixyKT0+e2xldCBzPW47ZS5oYXNPd25Qcm9wZXJ0eShvKSYmKGVbb10uc3RhdGU9PT10JiYocz10KSxjbGVhclRpbWVvdXQoZVtvXS5zZW5kZXIpLG49PT1paS5Vc2VyQWN0aW9uU3RhdGUuQ2xpY2smJiExPT09aSl8fChlW29dPXtzdGF0ZTpzLHNlbmRlcjpzZXRUaW1lb3V0KCgoKT0+KDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IHlpKGkudG9TdHJpbmcoKSxuLG8scikpKSwxZTQpfSl9fSgpLG89KGUsdCk9PnQucmVkdWNlKCgodCxvKT0+KG89PT1lJiYoby09MSksdCs9TWF0aC5mbG9vcihvL2UvKDEvNCkpKSksIiIpO2Uub2ZmKCJjaGFuZ2Uub3AiKS5vbigiY2hhbmdlLm9wIiwic2VsZWN0LmpzLWZpbHRlci1vcGVyYXRvciIsKG89Pntjb25zdCBpPXJzKG8udGFyZ2V0KSxuPWkuYXR0cigibmFtZSIpO0l0W25dLnZhbHVlfHwoSXRbbl0udmFsdWU9e30pLEl0W25dLnZhbHVlLm9wZXJhdG9yPWkudmFsKCksdGhpcy5fcmVzZXRGaWVsZChuKSx0aGlzLl9tb2RlbC51cGRhdGUoKTtjb25zdHtvcGVyYXRvcjpyfT1JdFtuXS52YWx1ZSxzPWUuaGFzQ2xhc3MoInR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkIik/ImZpbHRlcl9kaWFsb2ciOiJjb2x1bW5zIjt0KG4scixpaS5Vc2VyQWN0aW9uU3RhdGUuQ2xpY2sscyl9KSksZS5vZmYoImNoYW5nZS5vcC12YWwiKS5vbigiY2hhbmdlLm9wLXZhbCIsInNlbGVjdC5qcy1maWx0ZXItb3BlcmF0b3ItdmFsdWUiLChvPT57Y29uc3QgaT1ycyhvLnRhcmdldCkse3ZhbHVlOm59PW8udGFyZ2V0LHI9aS5hdHRyKCJuYW1lIik7SXRbcl0udmFsdWV8fChJdFtyXS52YWx1ZT17fSksSXRbcl0udmFsdWUudmFsdWU9aS52YWwoKSx0aGlzLl9yZXNldEZpZWxkKHIpLHRoaXMuX21vZGVsLnVwZGF0ZSgpO2xldHtvcGVyYXRvcjpzfT1JdFtyXS52YWx1ZTtjb25zdCBhPWUuaGFzQ2xhc3MoInR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkIik/ImZpbHRlcl9kaWFsb2ciOiJjb2x1bW5zIjsiIiE9PW4mJihzKz0iLiIrbiksdChyLHMsaWkuVXNlckFjdGlvblN0YXRlLkNsaWNrLGEpfSkpLGUub2ZmKCJ1cGRhdGUub3AtYXJiLXZhbCIpLm9uKCJ1cGRhdGUub3AtYXJiLXZhbCIsImlucHV0LmpzLWZpbHRlci1vcGVyYXRvci1hcmItdmFsdWUiLChvPT57Y29uc3QgaT1ycyhvLnRhcmdldCksbj1pLmF0dHIoIm5hbWUiKTtJdFtuXS52YWx1ZXx8KEl0W25dLnZhbHVlPXt9KTtsZXQgcj0raS52YWwoKTtpc0Zpbml0ZShyKSYmIW10KGkudmFsKCkpfHwocj1udWxsKSxJdFtuXS52YWx1ZS52YWx1ZT1yLHRoaXMuX3Jlc2V0RmllbGQobiksdGhpcy5fbW9kZWwudXBkYXRlKCk7Y29uc3R7b3BlcmF0b3I6c309SXRbbl0udmFsdWUsYT1lLmhhc0NsYXNzKCJ0di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZCIpPyJmaWx0ZXJfZGlhbG9nIjoiY29sdW1ucyI7dChuLHMsaWkuVXNlckFjdGlvblN0YXRlLkNsaWNrLGEpfSkpO2NvbnN0IGk9ZS5maW5kKCJpbnB1dC5qcy1maWx0ZXItb3BlcmF0b3ItYmV0d2Vlbi1sZWZ0Iiksbj1lLmZpbmQoImlucHV0LmpzLWZpbHRlci1vcGVyYXRvci1iZXR3ZWVuLXJpZ2h0Iikscj1lPT57Y29uc3QgdD1ycyhlLnRhcmdldCkuYXR0cigibmFtZSIpO0l0W3RdLnZhbHVlfHwoSXRbdF0udmFsdWU9e30pO2xldCBvPStpLnZhbCgpOyghaXNGaW5pdGUobyl8fG10KGkudmFsKCkpfHx0aGlzLl9pc0xlc3NUaGVuTWluKG8sdCl8fHRoaXMuX2lzR3JlYXRlclRoZW5NYXgobyx0KSkmJihvPS0xZTEwMCk7bGV0IHI9K24udmFsKCk7aWYoKCFpc0Zpbml0ZShyKXx8bXQobi52YWwoKSl8fHRoaXMuX2lzTGVzc1RoZW5NaW4ocix0KXx8dGhpcy5faXNHcmVhdGVyVGhlbk1heChyLHQpKSYmKHI9MWUxMDApLG8+cil7Y29uc3QgZT1vO289cixyPWV9SXRbdF0udmFsdWUudmFsdWU9W28scl0sLTFlMTAwPT09SXRbdF0udmFsdWUudmFsdWVbMF0mJjFlMTAwPT09SXRbdF0udmFsdWUudmFsdWVbMV0mJihJdFt0XS52YWx1ZS52YWx1ZT0iIiksdGhpcy5fcmVzZXRGaWVsZCh0KSx0aGlzLl9tb2RlbC51cGRhdGUoKX07ZS5vZmYoInVwZGF0ZS5vcC1iZXR3ZWVuLWxlZnQtdmFsIikub24oInVwZGF0ZS5vcC1iZXR3ZWVuLWxlZnQtdmFsIiwiaW5wdXQuanMtZmlsdGVyLW9wZXJhdG9yLWJldHdlZW4tbGVmdCIsciksZS5vZmYoInVwZGF0ZS5vcC1iZXR3ZWVuLXJpZ2h0LXZhbCIpLm9uKCJ1cGRhdGUub3AtYmV0d2Vlbi1yaWdodC12YWwiLCJpbnB1dC5qcy1maWx0ZXItb3BlcmF0b3ItYmV0d2Vlbi1yaWdodCIsciksZS5vZmYoImNoYW5nZS50b2dnbGUtdmFsIikub24oImNoYW5nZS50b2dnbGUtdmFsIiwiaW5wdXQuanMtZmlsdGVyLXRvZ2dsZSIsKG89Pntjb25zdCBpPXJzKG8udGFyZ2V0KSxuPWkuYXR0cigibmFtZSIpO0l0W25dLnZhbHVlPWkucHJvcCgiY2hlY2tlZCIpLHRoaXMuX3Jlc2V0RmllbGQobiksdGhpcy5fbW9kZWwudXBkYXRlKCk7Y29uc3Qgcj1lLmhhc0NsYXNzKCJ0di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZCIpPyJmaWx0ZXJfZGlhbG9nIjoiY29sdW1ucyI7dChuLGkucHJvcCgiY2hlY2tlZCIpLGlpLlVzZXJBY3Rpb25TdGF0ZS5DbGljayxyKQp9KSksZS5vZmYoImNsaWNrLnJlc2V0Iikub24oImNsaWNrLnJlc2V0IiwiLmpzLXJlc2V0IiwoZT0+e2NvbnN0IHQ9cnMoZS5jdXJyZW50VGFyZ2V0KS5kYXRhKCJmaWVsZCIpO3RoaXMucmVzZXRGaWx0ZXIodCl9KSk7bGV0IHM9IiI7ZS5vZmYoImtleWRvd24uZmlsdGVySW5wdXQiKS5vbigia2V5ZG93bi5maWx0ZXJJbnB1dCIsImlucHV0Om5vdCguanMtc2VhcmNoLWlucHV0KTpub3QoLmpzLWZpbHRlci1vcGVyYXRvci1hcmItdmFsdWUpIiwoZT0+e2NvbnN0IHQ9cnMoZS5jdXJyZW50VGFyZ2V0KTtzPXQudmFsKCl9KSksZS5vZmYoImtleXVwLmZpbHRlcklucHV0Iikub24oImtleXVwLmZpbHRlcklucHV0IiwiaW5wdXQ6bm90KC5qcy1zZWFyY2gtaW5wdXQpOm5vdCguanMtZmlsdGVyLW9wZXJhdG9yLWFyYi12YWx1ZSkiLChpPT57Y29uc3Qgbj1ycyhpLmN1cnJlbnRUYXJnZXQpLHI9bi5kYXRhKCJmaWVsZCIpLGE9bi5kYXRhKCJib3VuZCIpO2lmKHZvaWQgMD09PXJ8fHZvaWQgMD09PWF8fHM9PT1uLnZhbCgpKXJldHVybjtjb25zdCBsPVt0aGlzLnBhcnNlUmFuZ2VWYWx1ZShyLG4udmFsKCksYSksSXRbcl0udmFsdWU/SXRbcl0udmFsdWVbMS1hXTpJdFtyXS5yYW5nZVsxLWFdXS5zb3J0KHRoaXMuX21vZGVsLm51bWVyaWNTb3J0ZXIpLGM9dGhpcy5hcHByb3hpbWF0ZVNsaWRlclZhbHVlcyhyLGwpO2lmKGUuZmluZChgLnR2LXNsaWRlcltkYXRhLWZpZWxkPSIke3J9Il1gKS5zbGlkZXIoInZhbHVlcyIsYyksSXRbcl0udmFsdWU9bCx0aGlzLl9yZXNldEZpZWxkKHIpLHRoaXMuX21vZGVsLnVwZGF0ZSgpLEl0W3JdLnZhbHVlcyl7Y29uc3QgaT1lLmhhc0NsYXNzKCJ0di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZCIpPyJmaWx0ZXJfZGlhbG9nIjoiY29sdW1ucyIsbj1vKEl0W3JdLnZhbHVlcy5sZW5ndGgrMSxjKTt0KHIsbixpaS5Vc2VyQWN0aW9uU3RhdGUuVHlwZSxpKX19KSk7ZS5maW5kKCIudHYtc2xpZGVyIikub2ZmKCJzbGlkZWNoYW5nZSIpLm9uKCJzbGlkZWNoYW5nZSIsKChlLHQpPT57Y29uc3Qgbz1ycyhlLmN1cnJlbnRUYXJnZXQpLmRhdGEoImZpZWxkIik7SXRbb10udmFsdWVzPzA9PT10LnZhbHVlc1swXSYmdC52YWx1ZXNbMV09PT1JdFtvXS52YWx1ZXMubGVuZ3RoKzE/SXRbb10udmFsdWU9bnVsbDpJdFtvXS52YWx1ZT1bMD09PXQudmFsdWVzWzBdPy0xZTEwMDpwYXJzZUludChJdFtvXS52YWx1ZXNbdC52YWx1ZXNbMF0tMV0sMTApLHQudmFsdWVzWzFdPT09SXRbb10udmFsdWVzLmxlbmd0aCsxPzFlMTAwOnBhcnNlSW50KEl0W29dLnZhbHVlc1t0LnZhbHVlc1sxXS0xXSwxMCldOnQudmFsdWVzWzBdPT09SXRbb10ucmFuZ2VbMF0mJnQudmFsdWVzWzFdPT09SXRbb10ucmFuZ2VbMV0/SXRbb10udmFsdWU9bnVsbDpJdFtvXS52YWx1ZT10LnZhbHVlcyx0aGlzLl9yZXNldEZpZWxkKG8pLHRoaXMuX21vZGVsLnVwZGF0ZSgpfSkpLm9mZigic2xpZGUiKS5vbigic2xpZGUiLCgoZSx0KT0+e2NvbnN0IG89cnMoZS5jdXJyZW50VGFyZ2V0KSxpPW8uZGF0YSgiZmllbGQiKTtsZXQgbj10LnZhbHVlc1swXSxyPXQudmFsdWVzWzFdO2lmKG49PT1yKXJldHVybiExO0l0W2ldLnZhbHVlcyYmKG49MD09PXQudmFsdWVzWzBdP3RoaXMuX3JhbmdlTWluVmFsdWUoaSk6enQoSXRbaV0sdGhpcy5fbW9kZWwuc2NyZWVuZXJfdHlwZSkuZm9ybWF0KEl0W2ldLnZhbHVlc1t0LnZhbHVlc1swXS0xXSkscj10LnZhbHVlc1sxXT09PUl0W2ldLnZhbHVlcy5sZW5ndGgrMT90aGlzLl9yYW5nZU1heFZhbHVlKGkpOnp0KEl0W2ldLHRoaXMuX21vZGVsLnNjcmVlbmVyX3R5cGUpLmZvcm1hdChJdFtpXS52YWx1ZXNbdC52YWx1ZXNbMV0tMV0pKSx0LnZhbHVlPT09dC52YWx1ZXNbMF0/by5maW5kKCIudHYtc2xpZGVyX19sYWJlbC0tbGVmdCIpLnZhbChuKToodC52YWx1ZT09PXQudmFsdWVzWzFdfHxvLmZpbmQoIi50di1zbGlkZXJfX2xhYmVsLS1sZWZ0IikudmFsKG4pLG8uZmluZCgiLnR2LXNsaWRlcl9fbGFiZWwtLXJpZ2h0IikudmFsKHIpKX0pKS5vbigic2xpZGVjaGFuZ2UiLCgoaSxuKT0+e2NvbnN0IHI9cnMoaS5jdXJyZW50VGFyZ2V0KS5kYXRhKCJmaWVsZCIpO2lmKEl0W3JdLnZhbHVlcyl7Y29uc3QgaT1lLmhhc0NsYXNzKCJ0di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZCIpPyJmaWx0ZXJfZGlhbG9nIjoiY29sdW1ucyIscz1vKEl0W3JdLnZhbHVlcy5sZW5ndGgrMSxuLnZhbHVlcyk7dChyLHMsaWkuVXNlckFjdGlvblN0YXRlLlNsaWRlLGkpfX0pKX1wYXJzZVJhbmdlVmFsdWUoZSx0LG8pe2lmKC0xIT09dC5pbmRleE9mKCI8IikpcmV0dXJuIEl0W2VdLnJhbmdlWzBdO2lmKC0xIT09dC5pbmRleE9mKCI+IikpcmV0dXJuIEl0W2VdLnJhbmdlWzFdO3Q9dC5yZXBsYWNlKC8lL2csIiIpO2xldCBpPXp0KEl0W2VdLHRoaXMuX21vZGVsLnNjcmVlbmVyX3R5cGUpLnBhcnNlKHQpO2lmKCFpLnJlcylyZXR1cm4gSXRbZV0ucmFuZ2Vbb107Y29uc3Qgbj1pLnZhbHVlfHwwPT09aS52YWx1ZT9pLnZhbHVlOmkucHJpY2U7cmV0dXJuIGk9TWF0aC5taW4oSXRbZV0ucmFuZ2VbMV0sTWF0aC5tYXgoSXRbZV0ucmFuZ2VbMF0sbikpLGl9YXBwcm94aW1hdGVTbGlkZXJWYWx1ZXMoZSx0KXtjb25zdCBvPVswLDBdLGk9W10uY29uY2F0KC0xZTEwMCxJdFtlXS52YWx1ZXMsMWUxMDApO2ZvcihsZXQgZT0wO2U8MjtlKyspZm9yKGxldCBuPTA7bjxpLmxlbmd0aDtuKyspTWF0aC5hYnModFtlXS1pW25dKTxNYXRoLmFicyh0W2VdLWlbb1tlXV0pJiYob1tlXT1uKTtyZXR1cm4gb311cGRhdGVGaWx0ZXJTZWFyY2goKXtjb25zdCBlPXRoaXMuX2RpYWxvZy4kZmllbGRTZWFyY2hJbnB1dC52YWwoKS50cmltKCkucmVwbGFjZSgvXixccyp8XHMqLCQvLCIiKS50b0xvd2VyQ2FzZSgpLnNwbGl0KC9ccyosXHMqLyk7dGhpcy5fZGlhbG9nLiRmaWx0ZXJzUG9wdXAuZmluZCgiLmpzLWZpbHRlci1maWVsZCIpLnJlbW92ZUNsYXNzKCJqcy1mb3VuZCIpO2NvbnN0IHQ9dGhpcy5fZGlhbG9nLiRmaWx0ZXJzUG9wdXAuZmluZCgiLmpzLWZpbHRlcnMtd3JhcCIpLmdldCgwKTtlLmZvckVhY2goKGU9PnsKbGV0IG89ITE7Zm9yKGNvbnN0IGkgaW4gSXQpe2NvbnN0IG49QXJyYXkuZnJvbSh0LnF1ZXJ5U2VsZWN0b3JBbGwoYC5qcy1maWx0ZXItZmllbGQtJHtpLnJlcGxhY2UoL1xXL2csIiIpfTpub3QoLmpzLWZvdW5kKWApKSxyPUt0KEl0W2ldKSxzPS0xIT09aS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoZSl8fEJvb2xlYW4ocikmJi0xIT09ci50b0xvd2VyQ2FzZSgpLmluZGV4T2YoZSk7cyYmKG89ITApLG4uZm9yRWFjaCgoZT0+e2UuY2xhc3NMaXN0LnRvZ2dsZSgianMtaGlkZGVuIiwhcyksZS5jbGFzc0xpc3QudG9nZ2xlKCJqcy1mb3VuZCIscyl9KSl9b3x8MD09PWUubGVuZ3RofHwoMCxZby5zZW5kU25vd1Bsb3dEYXRhKShuZXcgdmkoZSkpfSkpfXNob3dBY3RpdmVGaWx0ZXJzKCl7aWYodGhpcy5fZGlhbG9nLiRmaWx0ZXJzUG9wdXApcmV0dXJuO2NvbnN0IGU9dGhpcy5fZGlhbG9nLl9nZXRBY3RpdmVGaWx0ZXJzKCk7dGhpcy5fZGlhbG9nLnNob3dGaWx0ZXJzRGlhbG9nKCEwKS50aGVuKCgoKT0+e3RoaXMuX2RpYWxvZy4kZGlhbG9nQ29udGFpbmVyLmZpbmQoIi5qcy1zZWFyY2gtaW5wdXQiKS52YWwoZS5qb2luKCIsICIpKSx0aGlzLnVwZGF0ZUZpbHRlclNlYXJjaCgpfSkpfXJlc2V0QWxsRmlsdGVycygpe3RoaXMuX3Jlc2V0QWxsRmlsdGVycz0hMDtmb3IoY29uc3QgZSBpbiBJdCl0aGlzLl9pc0ZpbHRlclZhbHVlRW1wdHkoZSl8fHRoaXMucmVzZXRGaWx0ZXIoZSk7dGhpcy5fZGlhbG9nLiRkaWFsb2dDb250YWluZXIuZmluZCgiLmpzLXNlYXJjaC1pbnB1dCIpLnZhbCgiIiksdGhpcy51cGRhdGVGaWx0ZXJTZWFyY2goKSx0aGlzLl9yZXNldEFsbEZpbHRlcnM9ITF9cmVzZXRGaWx0ZXIoZSl7aWYoIUl0W2VdLnZhbHVlfHwhMT09PUl0W2VdLnJlc2V0dGFibGVGaWx0ZXIpcmV0dXJuO0l0W2VdLnZhbHVlPW51bGw7Y29uc3QgdD10aGlzLl9kaWFsb2cuJGZpbHRlcnNQb3B1cHx8dGhpcy4kaW5wbGFjZUVkaXRvcjtpZih0KWlmKCJzZWxlY3QiPT09SXRbZV0uY29udHJvbCl0LmZpbmQoYC5qcy1maWx0ZXItZmllbGQtJHtlLnJlcGxhY2UoL1xXL2csIiIpfWApLnRyaWdnZXIoInJlc2V0Iik7ZWxzZSBpZigiY29uZGl0aW9uIj09PUl0W2VdLmNvbnRyb2wpdC5maW5kKGBbbmFtZT0iJHtlfSJdYCkudmFsKCIiKS50cmlnZ2VyKCJjaGFuZ2UiKTtlbHNlIGlmKCJ0b2dnbGUiPT09SXRbZV0uY29udHJvbCl0LmZpbmQoYFtuYW1lPSIke2V9Il1gKS5wcm9wKCJjaGVja2VkIiwhMSk7ZWxzZSBpZigicmFuZ2UiPT09SXRbZV0uY29udHJvbCl7bGV0IG89SXRbZV0ucmFuZ2U7SXRbZV0udmFsdWVzJiYobz1bMCxJdFtlXS52YWx1ZXMubGVuZ3RoKzFdKSx0LmZpbmQoYC51aS1zbGlkZXJbZGF0YS1maWVsZD0iJHtlfSJdYCkuc2xpZGVyKCJ2YWx1ZXMiLG8pLnRyaWdnZXIoInNsaWRlIix7dmFsdWVzOm99KX10aGlzLl9yZXNldEZpZWxkKGUpLHRoaXMuX21vZGVsLnVwZGF0ZSgpfV9yYW5nZUxlZnRWYWx1ZShlKXtsZXQgdD1JdFtlXS52YWx1ZTtyZXR1cm4iaW5fcmFuZ2UiIT09dC5vcGVyYXRvciYmIm5vdF9pbl9yYW5nZSIhPT10Lm9wZXJhdG9yfHwodD10LnZhbHVlKSx0aGlzLl9pc0xlc3NUaGVuTWluKHRbMF0sZSk/dGhpcy5fcmFuZ2VNaW5WYWx1ZShlKTp6dChJdFtlXSx0aGlzLl9tb2RlbC5zY3JlZW5lcl90eXBlKS5mb3JtYXQodFswXSl9X3JhbmdlUmlnaHRWYWx1ZShlKXtsZXQgdD1JdFtlXS52YWx1ZTtyZXR1cm4iaW5fcmFuZ2UiIT09dC5vcGVyYXRvciYmIm5vdF9pbl9yYW5nZSIhPT10Lm9wZXJhdG9yfHwodD10LnZhbHVlKSx0aGlzLl9pc0dyZWF0ZXJUaGVuTWF4KHRbMV0sZSk/dGhpcy5fcmFuZ2VNYXhWYWx1ZShlKTp6dChJdFtlXSx0aGlzLl9tb2RlbC5zY3JlZW5lcl90eXBlKS5mb3JtYXQodFsxXSl9X2lzR3JlYXRlclRoZW5NYXgoZSx0KXtyZXR1cm4gSXRbdF0ucmFuZ2UmJmU+PUl0W3RdLnJhbmdlWzFdfV9pc0xlc3NUaGVuTWluKGUsdCl7cmV0dXJuIEl0W3RdLnJhbmdlJiZlPD1JdFt0XS5yYW5nZVswXX1fcmFuZ2VNaW5WYWx1ZShlKXtyZXR1cm4iPCIrenQoSXRbZV0sdGhpcy5fbW9kZWwuc2NyZWVuZXJfdHlwZSkuZm9ybWF0KEl0W2VdLnZhbHVlc1swXSl9X3JhbmdlTWF4VmFsdWUoZSl7cmV0dXJuIj4iK3p0KEl0W2VdLHRoaXMuX21vZGVsLnNjcmVlbmVyX3R5cGUpLmZvcm1hdChJdFtlXS52YWx1ZXNbSXRbZV0udmFsdWVzLmxlbmd0aC0xXSl9X2hpZ2hsaWdodEFjdGl2ZUl0ZW1zKGUpe2lmKCFlLmZpbmQoIi5qcy1maWx0ZXItY2hlY2tib3g6Y2hlY2tlZCIpLnNpemUoKSlyZXR1cm4gZS5maW5kKCIudHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwIikucmVtb3ZlQ2xhc3MoImktYWN0aXZlIiksdm9pZCBlLmZpbmQoIi5qcy1pdGVtLXdyYXAtYW55IC50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAiKS5hZGRDbGFzcygiaS1hY3RpdmUiKTtlLmZpbmQoIi5qcy1maWx0ZXItY2hlY2tib3g6Y2hlY2tlZCwgLmpzLWZpbHRlci1jaGVja2JveC1hbnk6Y2hlY2tlZCIpLmVhY2goKGZ1bmN0aW9uKCl7ZS5maW5kKCIudHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwIikucmVtb3ZlQ2xhc3MoImktYWN0aXZlIikscnModGhpcykuY2xvc2VzdCgiLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcCIpLmFkZENsYXNzKCJpLWFjdGl2ZSIpfSkpfV9jbG9zZURyb3Bkb3duKGUpe2UudHZEcm9wZG93bigiY2xvc2UiKSx0aGlzLiRpbnBsYWNlRWRpdG9yJiZ0aGlzLiRpbnBsYWNlRWRpdG9yLmZvY3VzKCl9X2NyZWF0ZU11bHRpU2VsZWN0SXRlbXMoZSx0LG8saSxuKXtjb25zdCByPShJdFtlXS51c2VEZWZhdWx0UmFuZ2U/SXRbZV0uZGVmYXVsdFJhbmdlOkl0W2VdLnJhbmdlKS5zbGljZSgpLnNvcnQoKCh0LG8pPT57aWYoITEhPT1JdFtlXS5zb3J0U2VsZWN0ZWRGaXJzdCl7Y29uc3QgaT1JdFtlXS52YWx1ZT09PXR8fEFycmF5LmlzQXJyYXkoSXRbZV0udmFsdWUpJiZ+SXRbZV0udmFsdWUuaW5kZXhPZih0KSxuPUl0W2VdLnZhbHVlPT09b3x8QXJyYXkuaXNBcnJheShJdFtlXS52YWx1ZSkmJn5JdFtlXS52YWx1ZS5pbmRleE9mKG8pO2lmKGkmJiFuKXJldHVybi0xCjtpZihuJiYhaSlyZXR1cm4gMX1yZXR1cm4hMT09PUl0W2VdLnNvcnRhYmxlPzA6dD5vPzE6LTF9KSk7Zm9yKGxldCBzPW51bGw9PT1vPzA6LTE7czxyLmxlbmd0aDsrK3Mpe2xldCBhPS0xPT09cz9fczpyW3NdO2NvbnN0IGw9cnMoYDxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0iJHthfSIgY2xhc3M9ImpzLWZpbHRlci1jaGVja2JveCR7LTE9PT1zPyItYW55IjoiIn0iJHtJdFtlXS52YWx1ZT09PWF8fEFycmF5LmlzQXJyYXkoSXRbZV0udmFsdWUpJiZ+SXRbZV0udmFsdWUuaW5kZXhPZihhKT8iY2hlY2tlZCI6IiJ9PmApOy0xPT09cyYmKG89bCksLTE9PT1zJiZuJiYoYT1uKTtjb25zdCBjPUl0W2VdLnJhbmdlVGl0bGVzLGQ9YyYmY1thXSYmY1thXVsyXSxoPXRoaXMuX2dldEZpZWxkVmFsdWVGcm9tUmFuZ2VUaXRsZXMoYSxlKTtsZXQgdTt1PWQmJiEwPT09ZC5ub3dyYXA/YDxzcGFuIGNsYXNzPSJ0di1jb250cm9sLWNoZWNrYm94X19sYWJlbC0tbm93cmFwIj4ke2h9PC9zcGFuPmA6ImNvdW50cnkiPT09ZT8oMCxiLnRyaWVzVHJhbnNsYXRlQ291bnRyaWVOYW1lKShoKTooMCxUZS50cmllc1RyYW5zbGF0ZVNjcmVlbmVyRGF0YSkoaCk7Y29uc3QgXz1ycyhgPGRpdiBjbGFzcz0idHYtZHJvcGRvd24tYmVoYXZpb3JfX2l0ZW0ganMtaXRlbS13cmFwJHstMT09PXM/Ii1hbnkiOiIifSI+YCkuYXBwZW5kVG8odCk7cnMoYDxsYWJlbCBkYXRhLWZpZWxkPSIke2V9IiBjbGFzcz0idHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwICR7aX1fX2Ryb3Bkb3duLWNoZWNrYm94LWl0ZW0iPmApLmFwcGVuZChsKS5hcHBlbmQoYDxzcGFuIGNsYXNzPSJ0di1jb250cm9sLWNoZWNrYm94X19sYWJlbCI+JHt1fTwvc3Bhbj5gKS5hcHBlbmRUbyhfKSxsLnR2Q29udHJvbENoZWNrYm94KCl9cmV0dXJuIG99X2NyZWF0ZU11bHRpU2VsZWN0SXRlbXNFbGVtZW50KGUsdCxvLGksbj0hMSxyPSgpPT57fSxzPSExLGEpe2NvbnN0IGw9e2NoYW5nZWQ6ITEscmVzZXRPcHRpb25zOm51bGx9O2xldCBjPXJzKCksZD1ycygpO2NvbnN0IGg9ImZvcmV4LWdyb3VwIj09PW8uYXR0cigiZGF0YS1zZWxlY3QtbmFtZSIpLHU9bz0+e2NvbnN0IGk9IXQuZmluZCgiLmpzLWZpbHRlci1jaGVja2JveDpjaGVja2VkIikuc2l6ZSgpO3M/YyYmYy5wcm9wKCJjaGVja2VkIiwhMCk6ZC5wcm9wKCJjaGVja2VkIixpKSxuJiZ0aGlzLl9oaWdobGlnaHRBY3RpdmVJdGVtcyh0KSxvfHx0aGlzLl9yZXNldEZpZWxkKGUpLHRoaXMuX21vZGVsLnVwZGF0ZSgpLGwuY2hhbmdlZD0hbyxyKHQsaSl9O2xldCBfPXJzKCk7cmV0dXJuIGwucmVzZXRPcHRpb25zPW89Pnt0LmVtcHR5KCksZD10aGlzLl9jcmVhdGVNdWx0aVNlbGVjdEl0ZW1zKGUsdCxzP251bGw6ZCxpLGEpLCEwIT09byYmKHRoaXMuX3RyeUV4ZWN1dGVGaWx0ZXJDaGFuZ2VIYW5kbGVyKGUpLHUoITApKSxfPXJzKCl9LGwucmVzZXRPcHRpb25zKCksdC5vbigiY2hhbmdlIiwiLmpzLWZpbHRlci1jaGVja2JveCIsKGk9Pntjb25zdCByPXJzKGkudGFyZ2V0KSxhPXIuYXR0cigibmFtZSIpO2lmKG4mJkl0W2VdLnZhbHVlPT09YSlyZXR1cm4gci5wcm9wKCJjaGVja2VkIiwhMCksdm9pZCB0aGlzLl9jbG9zZURyb3Bkb3duKG8pO2M9cnMoKSxyLnByb3AoImNoZWNrZWQiKT8oSXRbZV0udmFsdWU/bj8odC5maW5kKCIuanMtZmlsdGVyLWNoZWNrYm94Iikubm90KHIpLnByb3AoImNoZWNrZWQiLCExKSxJdFtlXS52YWx1ZT1hKTooQXJyYXkuaXNBcnJheShJdFtlXS52YWx1ZSl8fChJdFtlXS52YWx1ZT1bSXRbZV0udmFsdWVdKSxJdFtlXS52YWx1ZS5wdXNoKGEpKTpJdFtlXS52YWx1ZT1hLGgmJigwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBibigiYWRkZWQiLGEpKSk6KEFycmF5LmlzQXJyYXkoSXRbZV0udmFsdWUpPyhJdFtlXS52YWx1ZS5zcGxpY2UoSXRbZV0udmFsdWUuaW5kZXhPZihhKSwxKSwxPT09SXRbZV0udmFsdWUubGVuZ3RoP0l0W2VdLnZhbHVlPUl0W2VdLnZhbHVlWzBdOkl0W2VdLnZhbHVlLmxlbmd0aHx8KHM/KGM9cixJdFtlXS52YWx1ZT1hKTpJdFtlXS52YWx1ZT1udWxsKSk6cz8oYz1yLEl0W2VdLnZhbHVlPWEpOkl0W2VdLnZhbHVlPW51bGwsaCYmKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IGJuKCJyZW1vdmVkIixhKSkpLHRoaXMuX3RyeUV4ZWN1dGVGaWx0ZXJDaGFuZ2VIYW5kbGVyKGUpLHUoKSxuJiZ0aGlzLl9jbG9zZURyb3Bkb3duKG8pfSkpLHN8fHQub24oImNsaWNrIHRvdWNoZW5kIiwiLmpzLWZpbHRlci1jaGVja2JveC1hbnkiLChpPT57Y29uc3Qgcj1ycyhpLnRhcmdldCkuYXR0cigibmFtZSIpO2kucHJldmVudERlZmF1bHQoKSxzZXRUaW1lb3V0KCgoKT0+e2lmKCFJdFtlXS52YWx1ZSlyZXR1cm4gZC5wcm9wKCJjaGVja2VkIiwhMCksdm9pZCB0aGlzLl9jbG9zZURyb3Bkb3duKG8pO2QucHJvcCgiY2hlY2tlZCIpPyhfLnByb3AoImNoZWNrZWQiLCEwKSxJdFtlXS52YWx1ZT1fLnRvQXJyYXkoKS5tYXAoKGU9PmUubmFtZSkpLEl0W2VdLnZhbHVlLmxlbmd0aD8xPT09SXRbZV0udmFsdWUubGVuZ3RoJiYoSXRbZV0udmFsdWU9SXRbZV0udmFsdWVbMF0pOkl0W2VdLnZhbHVlPW51bGwpOihfPXQuZmluZCgiLmpzLWZpbHRlci1jaGVja2JveDpjaGVja2VkIiksdC5maW5kKCIuanMtZmlsdGVyLWNoZWNrYm94IikucHJvcCgiY2hlY2tlZCIsITEpLEl0W2VdLnZhbHVlPW51bGwsaCYmKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IGJuKCJhZGRlZCIscikpKSx0aGlzLl90cnlFeGVjdXRlRmlsdGVyQ2hhbmdlSGFuZGxlcihlKSx1KCksbiYmdGhpcy5fY2xvc2VEcm9wZG93bihvKX0pLDApfSkpLGx9X3RyeUV4ZWN1dGVGaWx0ZXJDaGFuZ2VIYW5kbGVyKGUpe0l0W2VdLm9uRmlsdGVyQ2hhbmdlJiZJdFtlXS5vbkZpbHRlckNoYW5nZShJdFtlXS52YWx1ZSl9X2NyZWF0ZU11bHRpc2VsZWN0RmlsdGVyKGUsdCxpLG4scj0hMSl7CmNvbnN0IHM9cnMoYDxkaXYgY2xhc3M9IiR7bn1fX3NlbGVjdGJveC1jb250YWluZXIganMtZmlsdGVyLWZpZWxkLSR7ZS5yZXBsYWNlKC9cVy9nLCIiKX0ganMtZHJvcGRvd24tdG9nZ2xlIj5gKS5hcHBlbmRUbyh0KSxhPXJzKGA8aSBjbGFzcz0iJHtufV9fc2VsZWN0Ym94LWRyb3Bkb3duLXRvZ2dsZSI+YCkuYXBwZW5kKHJzKG8oODE1NjgzKSkuYXR0cih7d2lkdGg6MTIsaGVpZ2h0Ojd9KSksbD1ycyhgPHNwYW4gY2xhc3M9IiR7bn1fX3NlbGVjdGJveC1jYXB0aW9uICR7bn1fX3NlbGVjdGJveC1jYXB0aW9uLS10ZXh0LW92ZXJmbG93Ij5cblx0XHRcdDxzcGFuIGNsYXNzPSIke259X19zZWxlY3Rib3gtY2FwdGlvbi1sYWJlbCBqcy1sYWJlbCI+PC9zcGFuPlxuXHRcdDwvc3Bhbj5gKS5hcHBlbmQoYSkuYXBwZW5kVG8ocyksYz1sLmZpbmQoIi5qcy1sYWJlbCIpLGQ9cnMoJzxkaXYgY2xhc3M9InR2LWRyb3Bkb3duX19ib2R5IHR2LWRyb3Bkb3duLWJlaGF2aW9yX19ib2R5Ij4nKTtsZXQgaD1ycygpO2lmKChJdFtlXS51c2VEZWZhdWx0UmFuZ2U/SXRbZV0uZGVmYXVsdFJhbmdlOkl0W2VdLnJhbmdlKS5sZW5ndGg+PTE2KXtjb25zdCBlPXJzKGA8ZGl2IGNsYXNzPSIke259X19zZWFyY2gtd3JhcCI+YCkuYXBwZW5kVG8oZCk7aD1ycyhgPGlucHV0IHR5cGU9InRleHQiIHBsYWNlaG9sZGVyPSIke18udChudWxsLHZvaWQgMCxvKDM1MjEyNykpfSIgY2xhc3M9IiR7bn1fX3NlYXJjaC1pbnB1dCI+YCkuYXBwZW5kVG8oZSk7Y29uc3QgdD1ycyhgPGRpdiBjbGFzcz0idHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwICR7bn1fX3NlYXJjaC1uby1tYXRjaGVzIGpzLWhpZGRlbiI+Tm8gbWF0Y2hlczwvZGl2PmApLmFwcGVuZFRvKGQpO2gub24oImNoYW5nZSBpbnB1dCIsKGU9Pntjb25zdCBvPWgudmFsKCkudHJpbSgpLnRvTG93ZXJDYXNlKCk7bz9wLmZpbmQoIi5qcy1pdGVtLXdyYXAiKS5lYWNoKChmdW5jdGlvbigpe2NvbnN0IGU9cnModGhpcyk7ZS50b2dnbGVDbGFzcygianMtaGlkZGVuIiwhfmUudGV4dCgpLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihvKSl9KSk6cC5maW5kKCIuanMtaXRlbS13cmFwIikucmVtb3ZlQ2xhc3MoImpzLWhpZGRlbiIpLHAuZmluZCgiLmpzLWl0ZW0td3JhcC1hbnkiKS50b2dnbGVDbGFzcygianMtaGlkZGVuIiwhIXAuZmluZCgiLmpzLWl0ZW0td3JhcC5qcy1oaWRkZW4iKS5zaXplKCkpLHQudG9nZ2xlQ2xhc3MoImpzLWhpZGRlbiIsISFwLmZpbmQoIi5qcy1pdGVtLXdyYXA6bm90KC5qcy1oaWRkZW4pIikuc2l6ZSgpKSxzLnR2RHJvcGRvd24oInVwZGF0ZVNjcm9sbCIpfSkpfWNvbnN0IHU9cnMoJzxkaXYgY2xhc3M9InR2LWRyb3Bkb3duLWJlaGF2aW9yX19zY3JvbGwiPicpLmFwcGVuZFRvKGQpLHA9cnMoJzxkaXYgY2xhc3M9InR2LXNjcmVlbmVyLWZpZWxkcy1wb3B1cF9faXRlbXMtd3JhcCB0di1kcm9wZG93bi1iZWhhdmlvcl9faW5zY3JvbGwiPicpLmFwcGVuZFRvKHUpLG09dGhpcy5fY3JlYXRlTXVsdGlTZWxlY3RJdGVtc0VsZW1lbnQoZSxwLHMsbixyLCgoKT0+e2MuZW1wdHkoKSxwLmZpbmQoIi5qcy1maWx0ZXItY2hlY2tib3g6Y2hlY2tlZCwgLmpzLWZpbHRlci1jaGVja2JveC1hbnk6Y2hlY2tlZCIpLmVhY2goKCh0LG8pPT57Yy5hcHBlbmQocnMoJzxzcGFuIGNsYXNzPSJ0di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZC1jb250ZW50LXZhbHVlIj4nKS50ZXh0KHRoaXMuX2dldEZpZWxkVmFsdWVGcm9tUmFuZ2VUaXRsZXMocnMobykuYXR0cigibmFtZSIpLGUpKSl9KSkscy5mb2N1cygpfSksSXRbZV0ubm9BbnkpLGc9ZT0+e2lmKCEwIT09ZSYmIXMuaXMoIi5pLW9wZW5lZCIpKXJldHVybjtjb25zdCB0PXMuY2xvc2VzdCgiLmktc2Nyb2xsYWJsZSIpO2lmKHQuc2l6ZSgpJiYocy5vZmZzZXQoKS50b3Arcy5oZWlnaHQoKTx0Lm9mZnNldCgpLnRvcHx8cy5vZmZzZXQoKS50b3A+dC5vZmZzZXQoKS50b3ArdC5oZWlnaHQoKSkpcmV0dXJuIHZvaWQgcy50dkRyb3Bkb3duKCJjbG9zZSIpO2NvbnN0IG89aS5vZmZzZXQoKSxuPXMub2Zmc2V0KCk7bGV0IHI9cnMod2luZG93KS5oZWlnaHQoKS1uLnRvcCtycyh3aW5kb3cpLnNjcm9sbFRvcCgpLTM1O2guc2l6ZSgpJiYoci09NDUpO2NvbnN0IGE9TWF0aC5tYXgoaS5oZWlnaHQoKS0obi50b3Atby50b3ApLDYwKTtpZih1LmNzcygibWF4SGVpZ2h0IixNYXRoLm1pbihhLHIpKSx0aGlzLl9zZXREcm9wZG93blBvc2l0aW9uKGQscyxpKSxkLnBhcmVudCgpLmlzKGkpKXtjb25zdCBlPXMudHZEcm9wZG93bigiZ2V0SW5zdGFuY2UiKS5zY3JvbGw7ZS51cGRhdGVTY3JvbGxCYXIoKSxlLnVwZGF0ZVNjcm9sbCgpfWVsc2UgZC5hcHBlbmRUbyhpKX07bGV0IHY7cy50dkRyb3Bkb3duKHskd3JhcDpsLCRib2R5OmQsc2Nyb2xsOiEwLGNsb3NlV2l0aEVzYzohMCxub0FuaW1hdGlvbjohMH0pLm9uKCJyZXNldFBvc2l0aW9uIixnKS5vbigiYmVmb3JlT3Blbk1lbnUiLCgoKT0+e20uY2hhbmdlZCYmKG0ucmVzZXRPcHRpb25zKCEwKSxtLmNoYW5nZWQ9ITEpLGcoITApLHImJihwLmZpbmQoIi50di1jb250cm9sLWNoZWNrYm94X19ib3gsIC5qcy1maWx0ZXItY2hlY2tib3gsIC5qcy1maWx0ZXItY2hlY2tib3gtYW55IikuaGlkZSgpLHRoaXMuX2hpZ2hsaWdodEFjdGl2ZUl0ZW1zKHApLHAuZmluZCgiLnR2LWNvbnRyb2wtY2hlY2tib3hfX2xhYmVsIikuY3NzKCJtYXJnaW4tcmlnaHQiLDApKSxhLmFkZENsYXNzKGAke259X19zZWxlY3Rib3gtZHJvcGRvd24tdG9nZ2xlLS1vcGVuYCl9KSkub24oImFmdGVyT3Blbk1lbnUiLCgoKT0+e3Y9cC5maW5kKCIuanMtZmlsdGVyLWNoZWNrYm94OmNoZWNrZWQiKSxoLnNpemUoKSYmc2V0VGltZW91dCgoKCk9PntoLmZvY3VzKCkub24oImZvY3Vzb3V0IiwoZnVuY3Rpb24oKXtoLmZvY3VzKCksc2V0VGltZW91dCgoZnVuY3Rpb24oKXtoLmZvY3VzKCl9KSwxMCl9KSksaC5hZGQoIi50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZHJvcGRvd24tY2hlY2tib3gtaXRlbSIpLm9uKCJrZXlwcmVzcyBrZXl1cCIsKGU9PnsKMjc9PT1lLmtleUNvZGUmJnRoaXMuX2Nsb3NlRHJvcGRvd24ocyl9KSl9KSwwKX0pKS5vbigiYmVmb3JlQ2xvc2VNZW51IiwoKCk9PnthLnJlbW92ZUNsYXNzKGAke259X19zZWxlY3Rib3gtZHJvcGRvd24tdG9nZ2xlLS1vcGVuYCksaC5vZmYoImZvY3Vzb3V0IGtleXByZXNzIGtleXVwIil9KSkub24oImFmdGVyQ2xvc2VNZW51IiwoKCk9PntzLnR2RHJvcGRvd24oInVwZGF0ZVNjcm9sbCIpLGQuZGV0YWNoKCk7Y29uc3QgdD1wLmZpbmQoIi5qcy1maWx0ZXItY2hlY2tib3g6Y2hlY2tlZCIpLG89InR2LXNjcmVlbmVyLWRpYWxvZyI9PT1uPyJmaWx0ZXJfZGlhbG9nIjoiY29sdW1ucyIsaT1BcnJheS5mcm9tKHQpLm1hcCgoZT0+ZS5uYW1lKSkuam9pbigiLCIpO2khPT1BcnJheS5mcm9tKHYpLm1hcCgoZT0+ZS5uYW1lKSkuam9pbigiLCIpJiYoMCxZby5zZW5kU25vd1Bsb3dEYXRhKShuZXcgeWkoaSxpaS5Vc2VyQWN0aW9uU3RhdGUuQ2xpY2ssZSxvKSl9KSkub24oInJlc2V0IixtLnJlc2V0T3B0aW9ucykub24oIm1vdXNlZG93bm91dHNpZGUiLCgoKT0+e3MudHZEcm9wZG93bigiY2xvc2UiKX0pKSxkLm9uKCJtb3VzZWRvd24gdG91Y2hzdGFydCIsKGU9PmUuc3RvcFByb3BhZ2F0aW9uKCkpKX1fYXBwbHlTZWxlY3Rib3goZSx0LGk9e30pe2NvbnN0IG49aS5jbGFzc1ByZWZpeHx8InR2LXNjcmVlbmVyLWRpYWxvZyIscj1ycyhgPGxhYmVsIGNsYXNzPSIke259X19zZWxlY3Rib3gtY29udGFpbmVyIGpzLWRyb3Bkb3duLXRvZ2dsZSI+YCk7aS5hZGRDbGFzcyYmci5hZGRDbGFzcyhpLmFkZENsYXNzKSxyLmluc2VydEFmdGVyKGUpLGUuYXBwZW5kVG8ocik7Y29uc3Qgcz1ycyhgPGkgY2xhc3M9IiR7bn1fX3NlbGVjdGJveC1kcm9wZG93bi10b2dnbGUiPmApLmFwcGVuZChycyhvKDgxNTY4MykpLmF0dHIoe3dpZHRoOjEyLGhlaWdodDo3fSkpLGE9cnMoYDxzcGFuIGNsYXNzPSIke259X19zZWxlY3Rib3gtY2FwdGlvbiI+XG5cdFx0XHQ8c3BhbiBjbGFzcz0iJHtufV9fc2VsZWN0Ym94LWNhcHRpb24tbGFiZWwganMtbGFiZWwiPjwvc3Bhbj5cblx0XHQ8L3NwYW4+YCkuYXBwZW5kKHMpLmFwcGVuZFRvKHIpLGw9cnMoJzxkaXYgY2xhc3M9InR2LWRyb3Bkb3duX19ib2R5IHR2LWRyb3Bkb3duLWJlaGF2aW9yX19ib2R5Ij4nKSxjPXJzKCc8ZGl2IGNsYXNzPSJ0di1kcm9wZG93bi1iZWhhdmlvcl9fc2Nyb2xsIj4nKS5hcHBlbmRUbyhsKSxkPXJzKCc8ZGl2IGNsYXNzPSJ0di1zY3JlZW5lci1maWVsZHMtcG9wdXBfX2l0ZW1zLXdyYXAgdHYtZHJvcGRvd24tYmVoYXZpb3JfX2luc2Nyb2xsIj4nKS5hcHBlbmRUbyhjKSxoPSgpPT57bC5maW5kKCIuanMtb3B0aW9uLXNlbGVjdGVkIikucmVtb3ZlQ2xhc3MoImktYWN0aXZlIGpzLW9wdGlvbi1zZWxlY3RlZCIpO2NvbnN0IHQ9bC5maW5kKGBbZGF0YS12YWx1ZT0iJHtlLnZhbCgpfSJdYCksbz0hdC5kYXRhKCJ2YWx1ZSIpO3QuYWRkQ2xhc3MoImktYWN0aXZlIGpzLW9wdGlvbi1zZWxlY3RlZCIpLnRvZ2dsZUNsYXNzKGAke259X19zZWxlY3Rib3gtb3B0aW9uLS1uby12YWx1ZWAsbyksYS5maW5kKCIuanMtbGFiZWwiKS50b2dnbGVDbGFzcyhgJHtufV9fc2VsZWN0Ym94LWNhcHRpb24tLW5vLXZhbHVlYCxvKS50ZXh0KHQudGV4dCgpKX0sdT0oKT0+e2QuZW1wdHkoKTtjb25zdCB0PWUuZ2V0KDApLmNoaWxkTm9kZXM7Zm9yKGxldCBlPTA7ZTx0Lmxlbmd0aDsrK2UpcnMoYDxzcGFuIGRhdGEtdmFsdWU9IiR7dFtlXS52YWx1ZX0iIGNsYXNzPSJ0di1kcm9wZG93bi1iZWhhdmlvcl9faXRlbSB0di1jb250cm9sLXNlbGVjdF9fb3B0aW9uIGpzLW9wdGlvbiI+XG5cdFx0XHRcdFx0PHNwYW4gY2xhc3M9InR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcCAke259X19zZWxlY3Rib3gtb3B0aW9uLXdyYXAiPiR7dFtlXS50ZXh0Q29udGVudH08L3NwYW4+XG5cdFx0XHRcdDwvc3Bhbj5gKS5hcHBlbmRUbyhkKTtoKCl9O3UoKSxlLm9uKCJjaGFuZ2UiLGgpO2NvbnN0IF89ZT0+e2lmKCEwIT09ZSYmIXIuaXMoIi5pLW9wZW5lZCIpKXJldHVybjtjb25zdCBvPXIuY2xvc2VzdCgiLmktc2Nyb2xsYWJsZSIpO2lmKG8uc2l6ZSgpJiYoci5vZmZzZXQoKS50b3Arci5oZWlnaHQoKTxvLm9mZnNldCgpLnRvcHx8ci5vZmZzZXQoKS50b3A+by5vZmZzZXQoKS50b3Arby5oZWlnaHQoKSkpcmV0dXJuIHZvaWQgci50dkRyb3Bkb3duKCJjbG9zZSIpO2NvbnN0IGk9dC5vZmZzZXQoKSxuPXIub2Zmc2V0KCkscz1NYXRoLm1heCh0LmhlaWdodCgpLShuLnRvcC1pLnRvcCksNjApLGE9cnMod2luZG93KS5oZWlnaHQoKS1uLnRvcCtycyh3aW5kb3cpLnNjcm9sbFRvcCgpLTM1O2MuY3NzKCJtYXhIZWlnaHQiLE1hdGgubWluKHMsYSkpLHRoaXMuX3NldERyb3Bkb3duUG9zaXRpb24obCxyLHQpLGwuYXBwZW5kVG8odCl9O3JldHVybiByLm9uKCJyZXNldFBvc2l0aW9uIixfKS5vbigiYmVmb3JlT3Blbk1lbnUiLCgoKT0+e18oITApLHMuYWRkQ2xhc3MoYCR7bn1fX3NlbGVjdGJveC1kcm9wZG93bi10b2dnbGUtLW9wZW5gKX0pKS5vbigiYmVmb3JlQ2xvc2VNZW51IiwoKCk9PnMucmVtb3ZlQ2xhc3MoYCR7bn1fX3NlbGVjdGJveC1kcm9wZG93bi10b2dnbGUtLW9wZW5gKSkpLm9uKCJhZnRlckNsb3NlTWVudSIsKCgpPT57ci50dkRyb3Bkb3duKCJ1cGRhdGVTY3JvbGwiKSxsLmRldGFjaCgpfSkpLnR2RHJvcGRvd24oeyR3cmFwOmEsJGJvZHk6bCxzY3JvbGw6ITAsY2xvc2VXaXRoRXNjOiEwLG5vQW5pbWF0aW9uOiEwfSksZC5vbigiY2xpY2siLCIuanMtb3B0aW9uIiwodD0+e2NvbnN0IG89cnModC5jdXJyZW50VGFyZ2V0KS5kYXRhKCJ2YWx1ZSIpO2UudmFsKCkhPT1vJiYoZS52YWwobyksZS50cmlnZ2VyKCJjaGFuZ2UiKSksci50dkRyb3Bkb3duKCJjbG9zZSIpfSkpLGwub24oIm1vdXNlZG93biB0b3VjaHN0YXJ0IiwoZT0+ZS5zdG9wUHJvcGFnYXRpb24oKSkpLGUub24oInJlc2V0Iix1KSxyfV9zZXREcm9wZG93blBvc2l0aW9uKGUsdCxvKXtjb25zdCBpPW8ub2Zmc2V0KCksbj10Lm9mZnNldCgpO2UuY3NzKCJ0b3AiLG4udG9wLWkudG9wLTE1KSwoMCwKS28uaXNSdGwpKCk/ZS5jc3MoInJpZ2h0IixvWzBdLnNjcm9sbFdpZHRoLShuLmxlZnQrdC53aWR0aCgpKStpLmxlZnQtKDAsS28uZ2V0TFRSU2Nyb2xsTGVmdCkob1swXSkpOmUuY3NzKCJsZWZ0IixuLmxlZnQtaS5sZWZ0KX1faXNGaWx0ZXJWYWx1ZUVtcHR5KGUpe2NvbnN0IHQ9SXRbZV0udmFsdWU7cmV0dXJuIHQmJiJjb25kaXRpb24iPT09SXRbZV0uY29udHJvbD8iIj09PXQudmFsdWV8fG51bGw9PXQudmFsdWU6ISh0JiYoIUFycmF5LmlzQXJyYXkodCl8fHQubGVuZ3RoKSYmKCJvYmplY3QiIT10eXBlb2YgdHx8T2JqZWN0LmtleXModCkuZmluZCgoZT0+ISF0W2VdKSkpKX1hZGRGaWVsZEZpbHRlcihlLHQsaT0idHYtc2NyZWVuZXItZGlhbG9nIixuKXtjb25zdCByPXJzKCc8ZGl2IGNsYXNzPSInK2krIl9fZmlsdGVyLWZpZWxkIGpzLWZpbHRlci1maWVsZCBqcy1maWx0ZXItZmllbGQtIitlLnJlcGxhY2UoL1xXL2csIiIpKyIgIitpKyJfX2ZpbHRlci1maWVsZC0tY2F0IitJdFtlXS5jYXRlZ29yeSsnIGpzLXdyYXAiPicpLHM9IXRoaXMuX2lzRmlsdGVyVmFsdWVFbXB0eShlKTtpZihzKXtjb25zdCBlPXQuZmluZCgiLnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLS1hY3RpdmUiKTtlLmxlbmd0aD4wP3IuaW5zZXJ0QWZ0ZXIoZS5sYXN0KCkpOnQucHJlcGVuZChyKX1lbHNlIHIuYXBwZW5kVG8odCk7biYmKHM/dC5yZW1vdmVDbGFzcygidHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX3dpdGhvdXQtcmVzZXQiKTooci5hZGRDbGFzcygidHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX2ZpbHRlci13aXRob3V0LXJlc2V0IiksdC5hZGRDbGFzcygidHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX3dpdGhvdXQtcmVzZXQiKSkpO2xldCBhPUl0W2VdLmZpbHRlclRpdGxlfHxJdFtlXS50aXRsZTsidG9nZ2xlIj09PUl0W2VdLmNvbnRyb2wmJiJpc19wcmltYXJ5IiE9PWUmJiJhY3RpdmVfc3ltYm9sIiE9PWUmJihhPV8udChudWxsLHZvaWQgMCxvKDE1OTkxMCkpLmZvcm1hdCh7dGl0bGU6YX0pKSxycyhgPGRpdiBjbGFzcz0iJHtpfV9fZmlsdGVyLWZpZWxkLXRpdGxlIGpzLWZpbHRlci1maWVsZC10aXRsZS0ke2UucmVwbGFjZSgvXFcvZywiIil9Ij4ke2F9PC9kaXY+YCkuYXBwZW5kVG8ociksdGhpcy5zZXRGaWVsZEFjdGl2ZShlLHMscik7Y29uc3QgbD1ycyhgPGRpdiBjbGFzcz0iJHtpfV9fZmlsdGVyLWZpZWxkLWNvbnRlbnQgJHtpfV9fZmlsdGVyLWZpZWxkLWNvbnRlbnQtLSR7SXRbZV0uY29udHJvbH0ganMtZmlsdGVyLWZpZWxkLV9jb250ZW50Ij5gKS5hcHBlbmRUbyhyKTtyZXR1cm4gcnMoYDxkaXYgY2xhc3M9IiR7aX1fX2ZpbHRlci1maWVsZC1yZXNldCAke3N8fCFuPyIiOiJpLWhpZGRlbiAifWFwcGx5LWNvbW1vbi10b29sdGlwIGpzLXJlc2V0IiBkYXRhLWZpZWxkPSIke2V9IiB0aXRsZT0iJHtfLnQobnVsbCx2b2lkIDAsbyg0MjU2NTApKX0iPmApLmFwcGVuZChycyhvKDE0NzA3OCkpKS5hcHBlbmRUbyhyKSxuZXcgUHJvbWlzZSgodD0+e3NldFRpbWVvdXQoKCgpPT57aWYoInNlbGVjdCI9PT1JdFtlXS5jb250cm9sKXRoaXMuX2NyZWF0ZU11bHRpc2VsZWN0RmlsdGVyKGUsbCxuP3RoaXMuX2JyaWRnZS4kYm9keTp0aGlzLl9kaWFsb2cuJGRpYWxvZ0NvbnRhaW5lcixpLEl0W2VdLmlzU2luZ2xlKTtlbHNlIGlmKCJyYW5nZSI9PT1JdFtlXS5jb250cm9sKXtjb25zdCB0PXtyYW5nZTohMH07bGV0IG89SXRbZV0ucmFuZ2VbMF0saT1JdFtlXS5yYW5nZVsxXTtJdFtlXS52YWx1ZXM/KHQubWluPTAsdC5tYXg9SXRbZV0udmFsdWVzLmxlbmd0aCsxLEl0W2VdLnZhbHVlJiZBcnJheS5pc0FycmF5KEl0W2VdLnZhbHVlKT8odC52YWx1ZXM9dGhpcy5hcHByb3hpbWF0ZVNsaWRlclZhbHVlcyhlLEl0W2VdLnZhbHVlKSxvPXRoaXMuX3JhbmdlTGVmdFZhbHVlKGUpLGk9dGhpcy5fcmFuZ2VSaWdodFZhbHVlKGUpKToodC52YWx1ZXM9WzAsSXRbZV0udmFsdWVzLmxlbmd0aCsxXSxvPXRoaXMuX3JhbmdlTWluVmFsdWUoZSksaT10aGlzLl9yYW5nZU1heFZhbHVlKGUpKSk6KHQubWluPUl0W2VdLnJhbmdlWzBdLHQubWF4PUl0W2VdLnJhbmdlWzFdLHQudmFsdWVzPUl0W2VdLnZhbHVlfHxbSXRbZV0ucmFuZ2VbMF0sSXRbZV0ucmFuZ2VbMV1dKSxycyhgPGRpdiBjbGFzcz0idHYtc2xpZGVyIiBkYXRhLWZpZWxkPSIke2V9Ij5cblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9InR2LXNsaWRlcl9fbGFiZWxzIj5cblx0XHRcdFx0XHRcdFx0PGlucHV0IHR5cGU9InRleHQiIGRhdGEtZmllbGQ9IiR7ZX0iIGRhdGEtYm91bmQ9IjAiIGNsYXNzPSJ0di1zbGlkZXJfX2xhYmVsIHR2LXNsaWRlcl9fbGFiZWwtLWxlZnQiIHZhbHVlPSIke299Ii8+XG5cdFx0XHRcdFx0XHRcdDxpbnB1dCB0eXBlPSJ0ZXh0IiBkYXRhLWZpZWxkPSIke2V9IiBkYXRhLWJvdW5kPSIxIiBjbGFzcz0idHYtc2xpZGVyX19sYWJlbCB0di1zbGlkZXJfX2xhYmVsLS1yaWdodCIgdmFsdWU9IiR7aX0iLz5cblx0XHRcdFx0XHRcdDwvZGl2PlxuXHRcdFx0XHRcdDwvZGl2PmApLnNsaWRlcih0KS5hcHBlbmRUbyhsKX1lbHNlIGlmKCJjb25kaXRpb24iPT09SXRbZV0uY29udHJvbCl7Y29uc3QgdD1ycyhgPHNlbGVjdCBuYW1lPSIke2V9IiBjbGFzcz0ianMtZmlsdGVyLW9wZXJhdG9yIGpzLWhpZGRlbiI+YCkuYXBwZW5kVG8obCk7bGV0IHIscz0hMDtmb3IoY29uc3QgbyBpbiBjcylJdFtlXS5oaWRkZW5PcGVyYXRvcnMmJi0xIT09SXRbZV0uaGlkZGVuT3BlcmF0b3JzLmluZGV4T2Yobyl8fChzJiYhSXRbZV0udmFsdWUmJihzPSExLEl0W2VdLnZhbHVlPXtvcGVyYXRvcjpvfSkscnMoYDxvcHRpb24gdmFsdWU9IiR7b30iJHtvPT09KEl0W2VdLnZhbHVlJiZJdFtlXS52YWx1ZS5vcGVyYXRvcik/IiBzZWxlY3RlZCI6IiJ9PiR7Y3Nbb119PC9vcHRpb24+YCkuYXBwZW5kVG8odCkpO3RoaXMuX2FwcGx5U2VsZWN0Ym94KHQsbj90aGlzLl9icmlkZ2UuJGJvZHk6dGhpcy5fZGlhbG9nLiRkaWFsb2dDb250YWluZXIse2NsYXNzUHJlZml4OmksYWRkQ2xhc3M6YCR7aX1fX2ZpbHRlci1maWVsZC1jb250ZW50LS1sZWZ0YH0pLApyPUl0W2VdLmNvbmRpdGlvbkZpZWxkcz9BcnJheS5pc0FycmF5KEl0W2VdLmNvbmRpdGlvbkZpZWxkcyk/SXRbZV0uY29uZGl0aW9uRmllbGRzOkl0W2VdLmNvbmRpdGlvbkZpZWxkc1t0aGlzLl9tb2RlbC5zY3JlZW5lcl90eXBlXXx8SXRbZV0uY29uZGl0aW9uRmllbGRzLmRlZmF1bHR8fGRzOmRzO2NvbnN0IGE9cnMoYDxzZWxlY3QgbmFtZT0iJHtlfSIgY2xhc3M9ImpzLWZpbHRlci1vcGVyYXRvci12YWx1ZSBqcy1oaWRkZW4iPmApLmFwcGVuZFRvKGwpO2xldCBjO2lmKHJzKGA8b3B0aW9uIHZhbHVlPSIiPiR7Xy50KG51bGwsdm9pZCAwLG8oMzEwODY5KSl9PC9vcHRpb24+YCkuYXBwZW5kVG8oYSksMD09PXIubGVuZ3RoKWM9cnMoYDxsYWJlbCBjbGFzcz0iJHtpfV9fc2VsZWN0Ym94LWNvbnRhaW5lciBqcy1kcm9wZG93bi10b2dnbGUgJHtpfV9fZmlsdGVyLWZpZWxkLWNvbnRlbnQtLW1pZGRsZSBqcy1oaWRkZW4iIHRhYmluZGV4PSIwIj5cblx0XHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9IiR7aX1fX3NlbGVjdGJveC1jYXB0aW9uLWxhYmVsIGpzLWxhYmVsICR7aX1fX3NlbGVjdGJveC1jYXB0aW9uLS1uby12YWx1ZSI+JHtfLnQobnVsbCx2b2lkIDAsbygzMTA4NjkpKX08L3NwYW4+XG5cdFx0XHRcdFx0XHQ8L2xhYmVsPmApLmFwcGVuZFRvKGwpO2Vsc2V7Zm9yKGxldCB0PTA7dDxyLmxlbmd0aDsrK3Qpe2NvbnN0IG89clt0XTtycyhgPG9wdGlvbiB2YWx1ZT0iJHtvfSIke289PT0oSXRbZV0udmFsdWUmJkl0W2VdLnZhbHVlLm9wZXJhdG9yJiZJdFtlXS52YWx1ZS52YWx1ZSk/IiBzZWxlY3RlZCI6IiJ9PiR7SXRbb10udGl0bGV9PC9vcHRpb24+YCkuYXBwZW5kVG8oYSl9Yz10aGlzLl9hcHBseVNlbGVjdGJveChhLG4/dGhpcy5fYnJpZGdlLiRib2R5OnRoaXMuX2RpYWxvZy4kZGlhbG9nQ29udGFpbmVyLHtjbGFzc1ByZWZpeDppLGFkZENsYXNzOmAke2l9X19maWx0ZXItZmllbGQtY29udGVudC0tbWlkZGxlIGpzLWhpZGRlbmB9KX1jb25zdCBkPXJzKGA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iJHtlfSIgY2xhc3M9IiR7aX1fX2ZpbHRlci1maWVsZC1jb250ZW50LS1yaWdodCAke2l9X19maWx0ZXItZmllbGQtdGV4dCBqcy1maWx0ZXItb3BlcmF0b3ItYXJiLXZhbHVlIj5gKS5hcHBlbmRUbyhsKTtJdFtlXS52YWx1ZSYmIm51bWJlciI9PXR5cGVvZiBJdFtlXS52YWx1ZS52YWx1ZSYmZC52YWwoYCR7SXRbZV0udmFsdWUudmFsdWV9YCk7Y29uc3QgaD1lPT57ZS5jdHJsS2V5fHxlLm1ldGFLZXl8fCFlLmNoYXJDb2RlfHwhZS53aGljaHx8ZS53aGljaDwzMnx8L1tcZC4tXS8udGVzdChTdHJpbmcuZnJvbUNoYXJDb2RlKGUuY2hhckNvZGUpKXx8ZS5wcmV2ZW50RGVmYXVsdCgpfSx1PWU9Pntjb25zdCB0PXt2YWx1ZTplLnZhbCgpfTtyZXR1cm4gZS5vbigia2V5cHJlc3MiLGgpLm9uKCJjaGFuZ2UgaW5wdXQiLCgwLHZvLmRlZmF1bHQpKChvPT57ZS52YWwoKSE9PXQudmFsdWUmJihlLnRyaWdnZXIoInVwZGF0ZSIsbyksdC52YWx1ZT1lLnZhbCgpKX0pLDUwMCkpLHR9LHA9cnMoYDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSIke2V9IiBjbGFzcz0iJHtpfV9fZmlsdGVyLWZpZWxkLWNvbnRlbnQtLXJpZ2h0ICR7aX1fX2ZpbHRlci1iZXR3ZWVuLWlucHV0IGpzLWZpbHRlci1vcGVyYXRvci1iZXR3ZWVuLWxlZnQganMtaGlkZGVuIj5gKS5hcHBlbmRUbyhsKTshSXRbZV0udmFsdWV8fCJpbl9yYW5nZSIhPT1JdFtlXS52YWx1ZS5vcGVyYXRvciYmIm5vdF9pbl9yYW5nZSIhPT1JdFtlXS52YWx1ZS5vcGVyYXRvcnx8cC52YWwoYCR7LTFlMTAwPT09SXRbZV0udmFsdWUudmFsdWVbMF18fHRoaXMuX2lzTGVzc1RoZW5NaW4oSXRbZV0udmFsdWUudmFsdWVbMF0sZSk/IiI6SXRbZV0udmFsdWUudmFsdWVbMF19YCk7Y29uc3QgbT11KHApLGc9cnMoYDxzcGFuIGNsYXNzPSIke2l9X19maWx0ZXItYmV0d2Vlbi1zZXBhcmF0b3IganMtaGlkZGVuIj7igJQ8L3NwYW4+YCkuYXBwZW5kVG8obCksdj1ycyhgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9IiR7ZX0iIGNsYXNzPSIke2l9X19maWx0ZXItZmllbGQtY29udGVudC0tcmlnaHQgJHtpfV9fZmlsdGVyLWJldHdlZW4taW5wdXQganMtZmlsdGVyLW9wZXJhdG9yLWJldHdlZW4tcmlnaHQganMtaGlkZGVuIj5gKS5hcHBlbmRUbyhsKTshSXRbZV0udmFsdWV8fCJpbl9yYW5nZSIhPT1JdFtlXS52YWx1ZS5vcGVyYXRvciYmIm5vdF9pbl9yYW5nZSIhPT1JdFtlXS52YWx1ZS5vcGVyYXRvcnx8di52YWwoYCR7MWUxMDA9PT1JdFtlXS52YWx1ZS52YWx1ZVsxXXx8dGhpcy5faXNHcmVhdGVyVGhlbk1heChJdFtlXS52YWx1ZS52YWx1ZVsxXSxlKT8iIjpJdFtlXS52YWx1ZS52YWx1ZVsxXX1gKTtjb25zdCBmPXUodikseT11KGQpLGI9KCk9Pntjb25zdCBlPXQudmFsKCksbz1lJiYiaW5fcmFuZ2UiIT09ZSYmIm5vdF9pbl9yYW5nZSIhPT1lO2MudG9nZ2xlQ2xhc3MoImpzLWhpZGRlbiIsIW8pLG98fCh5LnZhbHVlPSIiLGQudmFsKCIiKSxhLnZhbCgiIikudHJpZ2dlcigiY2hhbmdlIikpfSxTPWU9Pntjb25zdCBvPXQudmFsKCksaT1vJiYiaW5fcmFuZ2UiIT09byYmIm5vdF9pbl9yYW5nZSIhPT1vJiYhYS52YWwoKTtkLnRvZ2dsZUNsYXNzKCJqcy1oaWRkZW4iLCFpKSxpJiYhMCE9PWUmJiF0aGlzLl9yZXNldEFsbEZpbHRlcnMmJnNldFRpbWVvdXQoKCgpPT57ZC5mb2N1cygpfSksNTApfSx3PWU9Pntjb25zdCBvPSJpbl9yYW5nZSI9PT10LnZhbCgpfHwibm90X2luX3JhbmdlIj09PXQudmFsKCk7cC50b2dnbGVDbGFzcygianMtaGlkZGVuIiwhbyksZy50b2dnbGVDbGFzcygianMtaGlkZGVuIiwhbyksdi50b2dnbGVDbGFzcygianMtaGlkZGVuIiwhbyksbyYmITAhPT1lJiYhdGhpcy5fcmVzZXRBbGxGaWx0ZXJzJiZzZXRUaW1lb3V0KCgoKT0+e3AuZm9jdXMoKX0pLDUwKSxvfHwhMD09PWV8fChtLnZhbHVlPSIiLGYudmFsdWU9IiIscC52YWwoIiIpLHYudmFsKCIiKSxhLnZhbCgiIikudHJpZ2dlcigiY2hhbmdlIikpfTsiaW5fcmFuZ2UiPT09dC52YWwoKXx8Im5vdF9pbl9yYW5nZSI9PT10LnZhbCgpP3coITApOmIoKSxTKCEwKSwKdC5vbigiY2hhbmdlIixiKS5vbigiY2hhbmdlIixTKS5vbigiY2hhbmdlIix3KSxhLm9uKCJjaGFuZ2UiLFMpfWVsc2UgaWYoInRvZ2dsZSI9PT1JdFtlXS5jb250cm9sKXtycyhgPGxhYmVsIGNsYXNzPSIke2l9X19maWx0ZXItdG9nZ2xlIj5cblx0XHRcdFx0XHRcdDxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmFtZT0iJHtlfSIgY2xhc3M9IiR7aX1fX2ZpbHRlci1kcm9wZG93bi1pdGVtLWlucHV0IHR2LXNjcmVlbmVyLWZpbHRlci1yb2xsdXBfX2l0ZW0taW5wdXQganMtZmlsdGVyLXRvZ2dsZSIgJHtJdFtlXS52YWx1ZT8iY2hlY2tlZCI6IiJ9PlxuXHRcdFx0XHRcdFx0PHNwYW4gY2xhc3M9IiR7aX1fX2ZpbHRlci10b2dnbGUtY2hlY2tib3gtdGl0bGUgdHYtY29udHJvbC1jaGVja2JveF9fbGFiZWwiPlxuXHRcdFx0XHRcdFx0XHQkey0xIT09ZS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoImhpZ2giKT9fLnQobnVsbCx2b2lkIDAsbygzMDU0MDYpKTpfLnQobnVsbCx2b2lkIDAsbyg1MzgyNTQpKX1cblx0XHRcdFx0XHRcdDwvc3Bhbj5cblx0XHRcdFx0XHQ8L2xhYmVsPmApLmFwcGVuZFRvKGwpLmZpbmQoIi5qcy1maWx0ZXItdG9nZ2xlIikudHZDb250cm9sQ2hlY2tib3goKX10KCl9KSxuPzA6bW8uZHVyLzMuNSl9KSl9c2hvd0lucGxhY2VFZGl0b3IoZSx0KXtpZighSXRbZV0pcmV0dXJuO3RoaXMuX2lucGxhY2VFZGl0b3JGaWVsZD1lLHRoaXMuJGlucGxhY2VFZGl0b3JUYXJnZXQ9dCx0aGlzLiRpbnBsYWNlRWRpdG9yfHwodGhpcy4kaW5wbGFjZUVkaXRvcj1ycygnPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3IgdHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3ItLWhpZGRlbiI+Jykub24oIm1vdXNlZG93bm91dHNpZGUiLChlPT57Y29uc3QgdD1JdFt0aGlzLl9pbnBsYWNlRWRpdG9yRmllbGRdOyJjb25kaXRpb24iPT09dC5jb250cm9sJiZ0LnZhbHVlJiYobXQodC52YWx1ZS52YWx1ZSl8fG10KHQudmFsdWUub3BlcmF0b3IpKSYmKHRoaXMuJGlucGxhY2VFZGl0b3IuaGFzQ2xhc3MoImpzLWhpZGRlbiIpfHwodC52YWx1ZT1udWxsKSk7Y29uc3Qgbz10aGlzLiRpbnBsYWNlRWRpdG9yLmZpbmQoIi5qcy1kcm9wZG93bi10b2dnbGUuaS1vcGVuZWQiKTtvLnNpemUoKT9vLm9uZSgiYWZ0ZXJDbG9zZU1lbnUiLCgoKT0+e3RoaXMuJGlucGxhY2VFZGl0b3IuYWRkQ2xhc3MoInR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yLS1oaWRkZW4ganMtaGlkZGVuIil9KSk6dGhpcy4kaW5wbGFjZUVkaXRvci5hZGRDbGFzcygidHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3ItLWhpZGRlbiBqcy1oaWRkZW4iKX0pKS5vbigia2V5cHJlc3Mga2V5dXAiLChlPT57MjchPT1lLmtleUNvZGV8fHJzKCIudHYtZHJvcGRvd25fX2JvZHkuaS1vcGVuZWQiKS5sZW5ndGh8fHRoaXMuJGlucGxhY2VFZGl0b3IudHJpZ2dlcigibW91c2Vkb3dub3V0c2lkZSIpfSkpLmF0dHIoInRhYkluZGV4IiwiMCIpLmFwcGVuZFRvKHRoaXMuX2JyaWRnZS4kYm9keSksdGhpcy5fYnJpZGdlLnN0YW5kYWxvbmUmJih0aGlzLiRpbnBsYWNlRWRpdG9yLmFkZENsYXNzKCJ0di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvci0tc3RhbmRhbG9uZSIpLHJzKGRvY3VtZW50KS5vbigic2Nyb2xsIiwoKCk9Pnt0aGlzLiRpbnBsYWNlRWRpdG9yLmlzKCIuanMtaGlkZGVuIil8fHRoaXMuJGlucGxhY2VFZGl0b3IuY3NzKCJ0b3AiLHRoaXMuJGlucGxhY2VFZGl0b3JUYXJnZXQub2Zmc2V0KCkudG9wLXRoaXMuX2JyaWRnZS4kYm9keS5vZmZzZXQoKS50b3ApfSkpKSksdGhpcy4kaW5wbGFjZUVkaXRvci5lbXB0eSgpLnJlbW92ZUNsYXNzKCJ0di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fd2l0aG91dC1yZXNldCIpLnJlbW92ZUNsYXNzKCJqcy1oaWRkZW4iKS50b2dnbGVDbGFzcygidHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3ItLXNsaW0iLCJ0b2dnbGUiPT09SXRbZV0uY29udHJvbCkudG9nZ2xlQ2xhc3MoInR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yLS13aWRlIiwiY29uZGl0aW9uIj09PUl0W2VdLmNvbnRyb2wpLHRoaXMuYWRkRmllbGRGaWx0ZXIoZSx0aGlzLiRpbnBsYWNlRWRpdG9yLCJ0di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvciIsITApLnRoZW4oKCgpPT57dGhpcy5pbml0RmlsdGVySGFuZGxlcnModGhpcy4kaW5wbGFjZUVkaXRvcil9KSk7Y29uc3Qgbz10aGlzLiRpbnBsYWNlRWRpdG9yLmZpbmQoIi5qcy1yZXNldCIpLGk9SXRbZV0uaW5wbGFjZUVkaXRvckxlZnRPZmZzZXR8fDAsbj10aGlzLl9nZXRJbnBsYWNlRWRpdG9yQm91bmQoKSxyPXQucG9zaXRpb24oKS5sZWZ0O2lmKHRoaXMuJGlucGxhY2VFZGl0b3IuY3NzKCJ0b3AiLHQub2Zmc2V0KCkudG9wLXRoaXMuX2JyaWRnZS4kYm9keS5vZmZzZXQoKS50b3ApLCgwLEtvLmlzUnRsKSgpKXtjb25zdCBlPXIrdC53aWR0aCgpLHM9aStNYXRoLm1pbih0aGlzLiRjb250ZW50LndpZHRoKCktZSxuKS1vLndpZHRoKCk7dGhpcy4kaW5wbGFjZUVkaXRvci5jc3MoInJpZ2h0IixNYXRoLm1heChzLDApKX1lbHNlIHRoaXMuJGlucGxhY2VFZGl0b3IuY3NzKCJsZWZ0IixNYXRoLm1heChpK01hdGgubWluKHIsbiktby53aWR0aCgpLDApKTt0aGlzLiRpbnBsYWNlRWRpdG9yLnJlbW92ZUNsYXNzKCJ0di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvci0taGlkZGVuIikuZm9jdXMoKSx0aGlzLl9tb2RlbC50cmFja0V2ZW50KCJPcGVuIGlucGxhY2UgZWRpdG9yIil9X2dldElucGxhY2VFZGl0b3JCb3VuZCgpe2xldCBlPXRoaXMuX2JyaWRnZS4kYm9keS53aWR0aCgpLXRoaXMuJGlucGxhY2VFZGl0b3Iub3V0ZXJXaWR0aCgpK3JzKGRvY3VtZW50KS5zY3JvbGxMZWZ0KCk7aWYodGhpcy5fYnJpZGdlLnN0YW5kYWxvbmUpe2NvbnN0IHQ9dGhpcy5fZ2V0UmVzaXplckJyaWRnZVdpZHRoKCksbz10aGlzLl90YWJsZS4kZWxlbWVudC53aWR0aCgpK3Q7cnMod2luZG93KS53aWR0aCgpPG8mJihlPSgwLApLby5pc1J0bCkoKT9ycyh3aW5kb3cpLndpZHRoKCktdC10aGlzLiRpbnBsYWNlRWRpdG9yLm91dGVyV2lkdGgoKS1ycyhkb2N1bWVudCkuc2Nyb2xsTGVmdCgpOnJzKHdpbmRvdykud2lkdGgoKS10LXRoaXMuJGlucGxhY2VFZGl0b3Iub3V0ZXJXaWR0aCgpK3JzKGRvY3VtZW50KS5zY3JvbGxMZWZ0KCkpfXJldHVybiBlfXNldEZpbHRlclNldChlKXtjb25zdCB0PXRoaXMuX21vZGVsLmdldEZpbHRlclNldEJ5SWQoZSk7dGhpcy4kZmlsdGVyU2V0c0J1dHRvbi5yZW1vdmVDbGFzcygidHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS11bnNhdmVkIikuYXR0cigiZGF0YS1maWx0ZXItc2V0IixlKSx0aGlzLiRmaWx0ZXJTZXRzQnV0dG9uVGl0bGUudGV4dCh0LnRpdGxlKSx0aGlzLl9wb3B1cHMuJGZpbHRlclNldHNQb3B1cCYmKHRoaXMuX3BvcHVwcy4kZmlsdGVyU2V0c1BvcHVwLmZpbmQoIi50di1zY3JlZW5lci1wb3B1cF9faXRlbSIpLnJlbW92ZUNsYXNzKCJ0di1zY3JlZW5lci1wb3B1cF9faXRlbS0tYWN0aXZlIiksdGhpcy5fcG9wdXBzLiRmaWx0ZXJTZXRzUG9wdXAuZmluZChgW2RhdGEtc2V0PSIke2V9Il1gKS5hZGRDbGFzcygidHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLWFjdGl2ZSIpKX1zZXRGaWVsZFNldChlKXtjb25zdCB0PXRoaXMuX21vZGVsLmdldEZpZWxkU2V0QnlJZChlKTt0aGlzLiRmaWVsZFNldHNCdXR0b24ucmVtb3ZlQ2xhc3MoInR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tdW5zYXZlZCIpLnRleHQodC50aXRsZSkuYXR0cigiZGF0YS1maWVsZC1zZXQiLGUpfXVwZGF0ZUludGVydmFsQnV0dG9uKGU9dGhpcy5fJHNlbGVjdEludGVydmFsQnV0dG9uLHQ9dGhpcy5fbW9kZWwuc2VsZWN0ZWRJbnRlcnZhbElkKXtpZighZSlyZXR1cm47Y29uc3Qgbz1kZSh0KTtvJiZlLmh0bWwoby5zaG9ydFRpdGxlKTtjb25zdCBpPXRoaXMuX21vZGVsLmVvZFJlc3RyaWN0aW9uLnZhbHVlKCk7ZS50b2dnbGVDbGFzcygiaS1oaWRkZW4iLGk9PT1Xby5XaWRnZXQpfWFkZEludGVydmFsU2VsZWN0KHskYmVmb3JlOmU9bnVsbCwkYXBwZW5kVG86dD1udWxsLCRkcm9wZG93bkNvbnRhaW5lcjppPW51bGx9KXtyZXR1cm4gT24oeyRiZWZvcmU6ZSwkYXBwZW5kVG86dCwkZHJvcGRvd25Db250YWluZXI6aSxtYWtlU2VsZWN0UG9wdXA6ZT0+e2NvbnN0IHQ9T2JqZWN0LmFzc2lnbih7YnV0dG9uVGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNzY1MykpfSxlKTtyZXR1cm4gdGhpcy5fcG9wdXBzLnNldFNlbGVjdFBvcHVwKHt3cmFwQ2xhc3M6InR2LXNjcmVlbmVyLXRvb2xiYXJfX2ludGVydmFsLXNlbGVjdCIsYnV0dG9uQ2xhc3M6InR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbiB0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLWFycm93LWRvd24gdHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS13aXRoLXN0YXRlIGFwcGx5LWNvbW1vbi10b29sdGlwIGNvbW1vbi10b29sdGlwLWZpeGVkIGktZGlzYWJsZWQifSx0KX0sYWZ0ZXJNYWtpbmdTZWxlY3RQb3B1cDooZSx0LG8pPT57dGhpcy5fcG9wdXBzLnNldFNlbGVjdEludGVydmFsQ29udGVudChlLG8sKGU9Pnt0aGlzLl9tb2RlbC5zZXRTZWxlY3RlZEludGVydmFsSWQoZS5pZCksdGhpcy51cGRhdGVJbnRlcnZhbEJ1dHRvbih0LGUuaWQpLHRoaXMudXBkYXRlVG9vbGJhckJ1dHRvbnMoKSx0aGlzLnByZXZlbnRIaWdobGlnaHRDaGFuZ2VzKCksdGhpcy5yZWZyZXNoKCl9KSl9LGFmdGVyU2VsZWN0UG9wdXBBcHBlbmQ6KGUsdCk9Pnt0aGlzLl9tb2RlbC5sb2FkaW5nQ29tcGxldGUuc3Vic2NyaWJlKG51bGwsKCgpPT57dC5yZW1vdmVDbGFzcygiaS1kaXNhYmxlZCIpLHRoaXMudXBkYXRlSW50ZXJ2YWxCdXR0b24odCx0aGlzLl9tb2RlbC5zZWxlY3RlZEludGVydmFsSWQpfSksITApfX0pfXVwZGF0ZUdyb3Vwc0J1dHRvbihlLHQpe3Quc29ydCgoKGUsdCk9Pkl0LnNlY3Rvci5zb3VyY2VSYW5nZS5pbmRleE9mKGUpPkl0LnNlY3Rvci5zb3VyY2VSYW5nZS5pbmRleE9mKHQpPzE6LTEpKTtmb3IobGV0IGk9MDtpPHQubGVuZ3RoO2krKyl7Y29uc3Qgbj10W2ldPT09X3M/aHM6YCR7dFtpXX0ke2k9PT10Lmxlbmd0aC0xPyIgIitfLnQobnVsbCx2b2lkIDAsbyg0MDY2NzcpKToiIn1gO2UuYXBwZW5kKHJzKCc8c3BhbiBjbGFzcz0idHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItZmllbGQtY29udGVudC12YWx1ZSI+JykudGV4dChuKSl9ZS5hdHRyKCJkYXRhLWdyb3VwcyIsdCl9YWRkR3JvdXBTZWxlY3QoeyRiZWZvcmU6ZT1udWxsLCRhcHBlbmRUbzp0PW51bGwsJGRyb3Bkb3duQ29udGFpbmVyOmk9bnVsbH0pe3JldHVybiBPbih7JGJlZm9yZTplLCRhcHBlbmRUbzp0LCRkcm9wZG93bkNvbnRhaW5lcjppLGJlZm9yZU1ha2luZ1NlbGVjdFBvcHVwOigpPT57aWYoImZvcmV4Ij09PXRoaXMuX21vZGVsLnNjcmVlbmVyX3R5cGUpe2NvbnN0IGU9dGhpcy5fbW9kZWwuc2VsZWN0ZWRHcm91cHM7LTE9PT1lLmluZGV4T2YoX3MpJiYoSXQuc2VjdG9yLnZhbHVlPWUpfX0sbWFrZVNlbGVjdFBvcHVwOmU9Pntjb25zdCB0PXt3cmFwQ2xhc3M6IiIsYnV0dG9uQ2xhc3M6InR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbiB0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXNwYWNlX3JpZ2h0IHR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tYXJyb3ctZG93biB0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXdpdGgtc3RhdGUgYXBwbHktY29tbW9uLXRvb2x0aXAgY29tbW9uLXRvb2x0aXAtZml4ZWQgaS1kaXNhYmxlZCJ9OyJmb3JleCIhPT10aGlzLl9tb2RlbC5zY3JlZW5lcl90eXBlJiYodC53cmFwQ2xhc3MrPSIgaS1oaWRkZW4iKTtjb25zdCBpPU9iamVjdC5hc3NpZ24oe2J1dHRvblRpdGxlOl8udChudWxsLHZvaWQgMCxvKDc5MDY1NikpfSxlKTtyZXR1cm4gdGhpcy5fcG9wdXBzLnNldFNlbGVjdFBvcHVwKHQsaSl9LGFmdGVyTWFraW5nU2VsZWN0UG9wdXA6KGUsdCxvKT0+e3Qub24oImNsaWNrIiwoKCk9PntvLm9mZigiY2hhbmdlIGNsaWNrIHRvdWNoZW5kIiksZS5hdHRyKHsiZGF0YS1zZWxlY3QtbmFtZSI6ImZvcmV4LWdyb3VwIn0pLAp0aGlzLl9jcmVhdGVNdWx0aVNlbGVjdEl0ZW1zRWxlbWVudCgic2VjdG9yIixvLGUsInR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yIiwhMSwoZT0+e3QuZW1wdHkoKTtjb25zdCBvPVtdO2UuZmluZCgiLmpzLWZpbHRlci1jaGVja2JveDpjaGVja2VkLCAuanMtZmlsdGVyLWNoZWNrYm94LWFueTpjaGVja2VkIikuZWFjaCgoKGUsdCk9Pntjb25zdCBpPXJzKHQpLmF0dHIoIm5hbWUiKTtvLnB1c2goaSl9KSksdGhpcy5fbW9kZWwuc2V0U2VsZWN0ZWRHcm91cHMobyk7Y29uc3QgaT1vLm1hcCgoZT0+aHRbZV18fGUpKTt0aGlzLnVwZGF0ZUdyb3Vwc0J1dHRvbih0LGkpLHRoaXMudXBkYXRlVG9vbGJhckJ1dHRvbnMoKX0pLCExLHVzKX0pKX0sYWZ0ZXJTZWxlY3RQb3B1cEFwcGVuZDooZSx0KT0+e3RoaXMuXyRncm91cFNlbGVjdD1lLHRoaXMuX21vZGVsLmxvYWRpbmdDb21wbGV0ZS5zdWJzY3JpYmUobnVsbCwoKCk9Pnt0LnJlbW92ZUNsYXNzKCJpLWRpc2FibGVkIiksdC5hdHRyKHsiZGF0YS1uYW1lIjoic2NyZWVuZXItZm9yZXgtcGFpcnMiLCJkYXRhLXJvbGUiOiJidXR0b24ifSksdGhpcy51cGRhdGVHcm91cHNCdXR0b24odCx0aGlzLl9tb2RlbC5zZWxlY3RlZEdyb3Vwcyl9KSwhMCl9fSl9dXBkYXRlTWFya2V0QnV0dG9uKGUpe2NvbnN0IHQ9dGhpcy5fbW9kZWwubWFya2V0cyxvPXJzKCIuanMtc2NyZWVuZXItbWFya2V0LWJ1dHRvbiIpO2xldCBpLG4scjtpZigxPT09dC5sZW5ndGgpe2NvbnN0IGU9dFswXSxvPUYodGhpcy5fbW9kZWwuc2NyZWVuZXJfdHlwZSk7aT10WzBdLG49b1tlXS5mbGFnP2A8aW1nIGFsdD0iJHtzPW9bZV0uZmxhZ30iIGNyb3Nzb3JpZ2luIHNyYz0iJHsoMCxnby5mbGFnVXJsKShzKX0iIGNsYXNzPSJ0di1mbGFnLWNvdW50cnkgdHYtZmxhZy1jb3VudHJ5LS0ke3N9Ij5gOm9bZV0uaWNvbixyPW9bZV0udGl0bGV9ZWxzZSBpPSJnbG9iYWwiLHI9Imdsb2JhbCIsbj1ycygnXG5cdFx0XHRcdDxpIGFsdD0iZ2xvYmUiIGNsYXNzPSJ0di1mbGFnLWNvdW50cnkgdHYtZmxhZy1jb3VudHJ5LS1nbG9iZSI+XG5cdFx0XHRcdDwvaT5cblx0XHRcdCcpLmh0bWwobnMpO3ZhciBzO28uYXR0cih7ImRhdGEtbmFtZSI6InNjcmVlbmVyLW1hcmtldHMiLCJkYXRhLXJvbGUiOiJidXR0b24iLCJkYXRhLW1hcmtldCI6aX0pLG8uaHRtbChuKSxvLnBhcmVudCgpLnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci1tYXJrZXQtc2VsZWN0LS1oaWRkZW4iLCJzdG9jayIhPT10aGlzLl9tb2RlbC5zY3JlZW5lcl90eXBlKSxlJiZlLmFwcGVuZChgPHNwYW4gY2xhc3M9InR2LXNjcmVlbmVyLW1hcmtldC1zZWxlY3RfX2J1dHRvbi10aXRsZSI+XG5cdFx0XHRcdCR7cn1cblx0XHRcdDwvc3Bhbj48c3BhbiBjbGFzcz0idHYtY2FyZXQiPmApfV9zaG93TWFya2V0c0RpYWxvZygpe3duKHRoaXMuZ2V0U2NyZWVuZXJNYXJrZXREaWFsb2dPcHRpb25zKCkpfWFkZE1hcmtldFNlbGVjdCh7JGJlZm9yZTplPW51bGwsJGFwcGVuZFRvOnQ9bnVsbCwkZHJvcGRvd25Db250YWluZXI6aT1udWxsLGNhcHRpb246cj0hMSxjbGFzc1N1ZmZpeDpzPW51bGx9KXtpZih0aGlzLl9vbldpZGdldClyZXR1cm47Y29uc3QgYT1Pbih7JGJlZm9yZTplLCRhcHBlbmRUbzp0LCRkcm9wZG93bkNvbnRhaW5lcjppLG1ha2VTZWxlY3RQb3B1cDooKT0+e2NvbnN0IGU9e3dyYXBDbGFzczpzPyJ0di1zY3JlZW5lci1tYXJrZXQtc2VsZWN0IHR2LXNjcmVlbmVyLW1hcmtldC1zZWxlY3QiK3M6InR2LXNjcmVlbmVyLW1hcmtldC1zZWxlY3QiLGJ1dHRvbkNsYXNzOiJ0di1zY3JlZW5lci1tYXJrZXQtc2VsZWN0X19idXR0b24ganMtc2NyZWVuZXItbWFya2V0LWJ1dHRvbiBhcHBseS1jb21tb24tdG9vbHRpcCBjb21tb24tdG9vbHRpcC1maXhlZCJ9LHt3cmFwQ2xhc3M6dCxidXR0b25DbGFzczppfT1lLG49cnMoYDxkaXYgY2xhc3M9IiR7dH0gdHYtZHJvcGRvd24gdHYtZHJvcGRvd24tLWlubGluZSB0di1kcm9wZG93bi1iZWhhdmlvciI+YCk7cmV0dXJueyR3cmFwOm4sJGJ1dHRvbjpycyhgPGRpdiBjbGFzcz0idHYtZHJvcGRvd25fX2J1dHRvbiB0di1kcm9wZG93bi1iZWhhdmlvcl9fYnV0dG9uICR7aX0iIHRpdGxlPSIke18udChudWxsLHZvaWQgMCxvKDU1MzE2NCkpfSI+YCkuYXBwZW5kVG8obil9fX0pO3JldHVybiB0aGlzLmdldFNjcmVlbmVyTWFya2V0RGlhbG9nT3B0aW9ucz0oKT0+KHt0aXRsZTpfLnQobnVsbCx2b2lkIDAsbyg5ODQ3OTApKSxpbml0aWFsU2VsZWN0ZWRNYXJrZXRzOnRoaXMuX21vZGVsLmlzRW50aXJlV29ybGQ/WygwLG9zLmVudGlyZVdvcmxkTWFya2V0c1ByZXNldCkoKV06KDAsaXMuZ2V0TWFya2V0c0J5TmFtZXMpKFRuLHRoaXMuX21vZGVsLm1hcmtldHMpLGF1dG9mb2N1czohMCxpbml0aWFsTW9kZTooMCxlcy5pc0dsb2JhbFNjcmVlbmVyQXZhaWxhYmxlKSgpP24uZ2V0VmFsdWUodHMsUXIuTWFya2V0RGlhbG9nTW9kZS5TaW5nbGUpOlFyLk1hcmtldERpYWxvZ01vZGUuU2luZ2xlLGRlZmF1bHRNYXJrZXQ6eG4sb25TZWxlY3RDb21wbGV0ZTplPT57dmFyIHQ7dD1lLm1vZGUsbi5zZXRWYWx1ZSh0cyx0KTtjb25zdCBvPWUubWFya2V0cy5tYXAoKGU9PmUudmFsdWUpKTt0aGlzLiRmaWx0ZXJTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJpLWRpc2FibGVkIiwhMCksdGhpcy4kZmllbGRTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJpLWRpc2FibGVkIiwhMCksdGhpcy4kZmlsdGVyc0J1dHRvbi50b2dnbGVDbGFzcygiaS1kaXNhYmxlZCIsITApLHRoaXMuX21vZGVsLmlzRW50aXJlV29ybGQ9MT09PW8ubGVuZ3RoJiYiZW50aXJlX3dvcmxkIj09PW9bMF0sdGhpcy5fbW9kZWwuc2V0TWFya2V0KHRoaXMuX21vZGVsLmlzRW50aXJlV29ybGQ/W106bykudGhlbigoKCk9Pnt0aGlzLiRmaWx0ZXJTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJpLWRpc2FibGVkIiwhMSksdGhpcy4kZmllbGRTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJpLWRpc2FibGVkIiwhMSksdGhpcy4kZmlsdGVyc0J1dHRvbi50b2dnbGVDbGFzcygiaS1kaXNhYmxlZCIsITEpLHRoaXMudXBkYXRlTWFya2V0QnV0dG9uKHImJmF8fG51bGwpCn0pKS5jYXRjaCgoZT0+e2UmJmxzLmxvZ0Vycm9yKGUpfSkpfSxvbkNsb3NlOigpPT57KDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IHluLkNoYW5nZU1hcmtldEV2ZW50KHRoaXMuX21vZGVsLm1hcmtldHMuam9pbigiLCIpKSl9fSksYS5vbigiY2xpY2siLCgoKT0+e3duKHRoaXMuZ2V0U2NyZWVuZXJNYXJrZXREaWFsb2dPcHRpb25zKCkpfSkpLHRoaXMudXBkYXRlTWFya2V0QnV0dG9uKHImJmF8fG51bGwpLGF9cmVmcmVzaCgpe2RvY3VtZW50LmhpZGRlbnx8dGhpcy5fdGVtcEJ1c3l8fCh0aGlzLl9kYXRhJiYodGhpcy5fcHJldkRhdGE9dGhpcy5fZGF0YS5zbGljZSgpKSx0aGlzLl9tb2RlbC5pbnZhbGlkYXRlUmVxdWVzdCgpLHRoaXMuX21vZGVsLnVwZGF0ZShudWxsLCExLCExLCExLCEwKSl9Z2V0IHJlZnJlc2hJbnRlcnZhbHMoKXtyZXR1cm4gdGhpcy5fbW9kZWwuaXNGYXN0UmVmcmVzaD92czpnc31yZXNldFJlZnJlc2hDb3VudGVyKGUpe2lmKGNsZWFySW50ZXJ2YWwodGhpcy5fcmVmcmVzaENvdW50ZXJJbnRlcnZhbElkKSwhMD09PWUpcmV0dXJuO2xldCB0PXRoaXMuX21vZGVsLnJlZnJlc2hJbnRlcnZhbDtjb25zdCBvPS0xPT09dHx8IXVzZXIuaXNfcHJvJiYhdGhpcy5fbW9kZWwuaXNGYXN0UmVmcmVzaDtpZih0aGlzLiRyZWZyZXNoQnV0dG9uJiZ0aGlzLiRyZWZyZXNoQnV0dG9uLnRvZ2dsZUNsYXNzKCJ0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXdpdGgtY291bnRlciIsIW8mJiF0aGlzLl9tb2RlbC5pc0Zhc3RSZWZyZXNoKS50b2dnbGVDbGFzcygidHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1hY3RpdmUiLCFvKSxvKXJldHVybjtjb25zdCBpPSgpPT57aWYoIXRoaXMuX21vZGVsLmlzRmFzdFJlZnJlc2gpe2NvbnN0IGU9dC82MHwwLG89dCU2MDt0aGlzLiRyZWZyZXNoQ291bnRlci50ZXh0KGAke2AwMCR7ZX1gLnNsaWNlKC0yKX06JHtgMDAke299YC5zbGljZSgtMil9YCl9dDw9MD90aGlzLnJlZnJlc2goKTotLXR9O2koKSx0Pj0wJiYodGhpcy5fcmVmcmVzaENvdW50ZXJJbnRlcnZhbElkPXNldEludGVydmFsKGksMWUzKSl9cHJldmVudEhpZ2hsaWdodENoYW5nZXMoKXt0aGlzLl9wcmV2ZW50SGlnaGxpZ2h0Q2hhbmdlcz0hMH1oaWdobGlnaHRDaGFuZ2VzKCl7aWYodGhpcy5fcHJldmVudEhpZ2hsaWdodENoYW5nZXMpcmV0dXJuIHZvaWQodGhpcy5fcHJldmVudEhpZ2hsaWdodENoYW5nZXM9ITEpO2lmKCF0aGlzLl9wcmV2RGF0YXx8IXRoaXMuX2RhdGF8fHRoaXMuX21vZGVsLm1hcmtldENoYW5nZVByb2Nlc3MpcmV0dXJuO2NvbnN0IGU9e307Zm9yKGxldCB0PTA7dDwodGhpcy5fcHJldkRhdGF8fFtdKS5sZW5ndGg7Kyt0KWVbdGhpcy5fcHJldkRhdGFbdF0uc109dGhpcy5fcHJldkRhdGFbdF0uZDtpZihkZWxldGUgdGhpcy5fcHJldkRhdGEsdGhpcy5fbW9kZWwuaXNGYXN0UmVmcmVzaCl7Y29uc3QgdD1bImJpZCIsImFzayIsImNsb3NlIl07Zm9yKGxldCBvPTA7bzx0aGlzLl9kYXRhLmxlbmd0aDsrK28pe2NvbnN0IGk9dGhpcy5fZGF0YVtvXS5zLG49dGhpcy5fZGF0YVtvXS5kLHI9ZVtpXTtpZighciljb250aW51ZTtjb25zdCBzPSgpPT57dGhpcy5fdGFibGUuZmxpY2tSb3coaSl9O2ZvcihsZXQgZT0wO2U8dC5sZW5ndGg7ZSsrKXtjb25zdCBvPXRbZV0scz10aGlzLl90YWJsZS5maWVsZHNPcmRlci5pbmRleE9mKG8pO2lmKG5bc10hPT1yW3NdKXtjb25zdCBlPW5bc10+cltzXTt0aGlzLl90YWJsZS5oaWdobGlnaHRDZWxsKGksbyxlKX19c2V0VGltZW91dChzLDFlMyl9cmV0dXJufWNvbnN0IHQ9W107Zm9yKGxldCBvPTA7bzx0aGlzLl9kYXRhLmxlbmd0aDsrK28pe2NvbnN0IGk9dGhpcy5fZGF0YVtvXS5zLG49dGhpcy5fZGF0YVtvXS5kLHI9ZVtpXTtpZighciljb250aW51ZTtsZXQgcz0hMTtmb3IobGV0IGU9MDtlPG4ubGVuZ3RoOysrZSlpZihuW2VdIT09cltlXSl7cz0hMDticmVha31zJiZ0LnB1c2goaSl9dC5sZW5ndGgmJnRoaXMuX3RhYmxlLiR0Ym9keS5maW5kKGB0cltkYXRhLXN5bWJvbD0iJHt0LmpvaW4oJyJdLHRyW2RhdGEtc3ltYm9sPSInKX0iXWApLmFkZENsYXNzKCJ0di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdy0tZmxpY2siKX1fY3JlYXRlU3dpdGNoKGUpe3RoaXMuJHN3aXRjaD1ycygnPGRpdiBjbGFzcz0idHYtc2NyZWVuZXItdG9vbGJhcl9fc3dpdGNoIj4nKS5hcHBlbmRUbyh0aGlzLiR0b29sYmFyKTtjb25zdCB0PXttb2RlczplLG9uQ2hhbmdlOmU9PnRoaXMuX21vZGVsLmFwcGx5U3dpdGNoKGUpfTshZnVuY3Rpb24oZSx0KXtEaS5yZW5kZXIoTGkuY3JlYXRlRWxlbWVudChxaSx7Li4udH0pLGUpfSh0aGlzLiRzd2l0Y2hbMF0sdCl9Z2V0IGNvbmRpdGlvbk9wZXJhdG9ycygpe3JldHVybiBjc319dmFyIFNzPW8oMjAzNjgxKSx3cz1vKDM4NjkzMSksQ3M9bygxNTI2OTkpLGtzPW8oNTY5Mzk4KTtjb25zdCBUcz0oKT0+d2luZG93LlNDUkVFTkVSX0hPU1R8fCJodHRwczovL3NjYW5uZXIudHJhZGluZ3ZpZXcuY29tIjt2YXIgRXM9bygxNTY4NTApO2NsYXNzIHhze2NvbnN0cnVjdG9yKCl7dGhpcy5fbG9jYWxTZXR0aW5ncz17fX1nZXRWYWx1ZShlLHQpe3JldHVybiB0aGlzLl9sb2NhbFNldHRpbmdzLmhhc093blByb3BlcnR5KGUpP3RoaXMuX2xvY2FsU2V0dGluZ3NbZV06dH1zZXRWYWx1ZShlLHQpe3RoaXMuX2xvY2FsU2V0dGluZ3NbZV09dH1nZXRJbnQoZSx0KXtyZXR1cm4gdGhpcy5nZXRWYWx1ZShlLHQpfWdldEJvb2woZSx0KXtyZXR1cm4gdGhpcy5nZXRWYWx1ZShlLHQpfXNldEludChlLHQpe3RoaXMuc2V0VmFsdWUoZSx0KX1nZXRKU09OKGUsdCl7cmV0dXJuIHRoaXMuZ2V0VmFsdWUoZSx0KX1zZXRKU09OKGUsdCl7dGhpcy5zZXRWYWx1ZShlLHQpfXJlbW92ZShlKXt0aGlzLl9sb2NhbFNldHRpbmdzLmhhc093blByb3BlcnR5KGUpJiZkZWxldGUgdGhpcy5fbG9jYWxTZXR0aW5nc1tlXX19dmFyIEFzPW8oMjMyOTQ4KSxNcz1vKDMwNTQ2Nik7ZnVuY3Rpb24gSXMoZSl7Y29uc3R7dmFsdWU6dCxpc01hcmtldEN1cnJlbmN5OmksY29udGVudDpufT1lCjtyZXR1cm4gdD09PUxzLlNZTUJPTD9fLnQobnVsbCx2b2lkIDAsbyg3MDk0OTcpKTppJiZ0PT09THMuTUFSS0VUP18udChudWxsLHZvaWQgMCxvKDkzOTEzNikpOmk/Xy50KG51bGwsdm9pZCAwLG8oOTM5MTM2KSkrYCAoJHtufSlgOm59ZnVuY3Rpb24gUnMoZSl7Y29uc3R7aXNHbG9iYWw6dCxmaW5hbmNpYWxDdXJyZW5jeTppLHN5bWJvbEN1cnJlbmNpZXM6bn09ZTtsZXQgcj1bXTt0JiZyLnB1c2goe3ZhbHVlOkxzLk1BUktFVCxpc01hcmtldEN1cnJlbmN5OiEwLGNvbnRlbnQ6Xy50KG51bGwsdm9pZCAwLG8oOTM5MTM2KSksZGVzY3JpcHRpb246Xy50KG51bGwsdm9pZCAwLG8oMzg3MzUyKSl9KTtjb25zdCBzPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU/e3ZhbHVlOkxzLkdMT0JBTCxpc01hcmtldEN1cnJlbmN5OiExLGNvbnRlbnQ6RHMuVVNELGRlc2NyaXB0aW9uOl8udChudWxsLHZvaWQgMCxvKDYwNTY3NCkpfTp7dmFsdWU6dCxpc01hcmtldEN1cnJlbmN5OiEwLGNvbnRlbnQ6dCxkZXNjcmlwdGlvbjpfLnQobnVsbCx2b2lkIDAsbygzODczNTIpKX19KHQsaSk7ci5wdXNoKHMpO2NvbnN0IGE9T2JqZWN0LmtleXMoRHMpLmZpbHRlcigoZT0+ZSE9PWkpKSxsPWEubWFwKChlPT4oe3ZhbHVlOmUsaXNNYXJrZXRDdXJyZW5jeTohMSxjb250ZW50OmUsZGVzY3JpcHRpb246dm9pZCAwfSkpKTtyPVsuLi5yLC4uLmxdO3JldHVybiAxPT09bi5sZW5ndGgmJltpLC4uLmFdLmluY2x1ZGVzKG5bMF0pfHxyLnVuc2hpZnQoe3ZhbHVlOkxzLlNZTUJPTCxpc01hcmtldEN1cnJlbmN5OiExLGNvbnRlbnQ6Xy50KG51bGwsdm9pZCAwLG8oNzA5NDk3KSksZGVzY3JpcHRpb246Xy50KG51bGwsdm9pZCAwLG8oMTk0NjAwKSl9KSx7ZGVmYXVsdEN1cnJlbmN5OnMsY3VycmVuY2llczpyfX1jbGFzcyBGc3tjb25zdHJ1Y3RvcihlKXt0aGlzLmV2ZW50PSJjb252ZXJ0X2N1cnJlbmN5Iix0aGlzLnNvdXJjZT0iY29udmVydF9jdXJyZW5jeV9zZWxlY3RvciIsdGhpcy5sb2NhdGlvbj0idG9vbGJhciIsdGhpcy5zdGF0ZT0iIix0aGlzLnZhbHVlPWV9fXZhciBMcyxEcyxPcz1vKDQ4MjUwNCk7IWZ1bmN0aW9uKGUpe2UuTUFSS0VUPSJtYXJrZXQiLGUuU1lNQk9MPSJzeW1ib2wiLGUuR0xPQkFMPSJnbG9iYWwifShMc3x8KExzPXt9KSksZnVuY3Rpb24oZSl7ZS5VU0Q9IlVTRCJ9KERzfHwoRHM9e30pKTtjbGFzcyBOc3tjb25zdHJ1Y3RvcihlLHQsaSl7dGhpcy5jcmVhdGVDdXJyZW5jeVNlbGVjdD0oKT0+KHtzZWxlY3RCdXR0b246dGhpcy5faW5pdEN1cnJlbmN5U2VsZWN0KHskYmVmb3JlOnRoaXMuX3ZpZXcuJGZpbHRlclNldHNCdXR0b24ucGFyZW50KCl9KS5hdHRyKHsiZGF0YS1uYW1lIjoic2NyZWVuZXItcHJpY2UtY3VycmVuY3kiLCJkYXRhLXJvbGUiOiJidXR0b24ifSksY3VycmVuY3lTZWxlY3Q6dGhpc30pLHRoaXMuZ2V0UHJpY2VDb252ZXJzaW9uT2JqZWN0PSgpPT57Y29uc3R7dmFsdWU6ZSxpc01hcmtldEN1cnJlbmN5OnR9PXRoaXMuZ2V0Q3VycmVudEN1cnJlbmN5KCk7cmV0dXJuIGU9PT1Mcy5TWU1CT0w/e3RvX3N5bWJvbDohMH06dD97dG9fc3ltYm9sOiExfTplPT09THMuR0xPQkFMP251bGw6e3RvX3N5bWJvbDohMSx0b19jdXJyZW5jeTplfX0sdGhpcy5faW5pdEN1cnJlbmN5U2VsZWN0PWU9Pntjb25zdHskYmVmb3JlOnQ9bnVsbCwkYXBwZW5kVG86bz1udWxsLCRkcm9wZG93bkNvbnRhaW5lcjppPW51bGx9PWU7aWYoISh0fHxvKSl0aHJvdyBuZXcgRXJyb3IoIlByb3ZpZGUgYXQgbGVhc3Qgb25lIG9mICRiZWZvcmUgb3IgJGFwcGVuZFRvIGZvciBTZWNyZWVuZXJDdXJyZW5jeVNlbGVjdCIpO3JldHVybiBPbih7JGJlZm9yZTp0LCRhcHBlbmRUbzpvLCRkcm9wZG93bkNvbnRhaW5lcjppLG1ha2VTZWxlY3RQb3B1cDp0aGlzLl9jcmVhdGVTZWxlY3RCdXR0b24sYWZ0ZXJNYWtpbmdTZWxlY3RQb3B1cDp0aGlzLl9zZXRTZWxlY3RDb250ZW50LGFmdGVyU2VsZWN0UG9wdXBBcHBlbmQ6dGhpcy5fb25Mb2FkfSl9LHRoaXMuX2NyZWF0ZVNlbGVjdEJ1dHRvbj1lPT57Y29uc3QgdD17YnV0dG9uVGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNjEzMTQpKSwuLi5lfTtyZXR1cm4gdGhpcy5fdmlldy5fcG9wdXBzLnNldFNlbGVjdFBvcHVwKHt3cmFwQ2xhc3M6InR2LXNjcmVlbmVyLXRvb2xiYXJfX2N1cnJlbmN5LXNlbGVjdCIsYnV0dG9uQ2xhc3M6InR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbiB0di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLWFycm93LWRvd24gdHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS13aXRoLXN0YXRlIGFwcGx5LWNvbW1vbi10b29sdGlwIGNvbW1vbi10b29sdGlwLWZpeGVkIn0sdCl9LHRoaXMuX3NldFNlbGVjdENvbnRlbnQ9KGUsdCxvKT0+e28uZW1wdHkoKTtmb3IoY29uc3QgZSBvZiB0aGlzLl9hdmFpbGFibGVDdXJyZW5jaWVzKXtjb25zdHt2YWx1ZTp0LGNvbnRlbnQ6aSxkZXNjcmlwdGlvbjpufT1lLHI9SXMoZSk7T3MoYDxkaXYgY2xhc3M9InR2LWRyb3Bkb3duLWJlaGF2aW9yX19pdGVtIj5cblx0XHRcdFx0PGRpdlxuXHRcdFx0XHRcdGRhdGEtY3VycmVuY3k9IiR7dH0iXG5cdFx0XHRcdFx0dGl0bGU9IiR7bnx8aX0iXG5cdFx0XHRcdFx0Y2xhc3M9InR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcCB0di1zY3JlZW5lci1wb3B1cF9faXRlbSBqcy1jdXJyZW5jeS1zZWxlY3QgJHt0PT09dGhpcy5fY3VycmVudEN1cnJlbmN5LnZhbHVlPyJ0di1zY3JlZW5lci1wb3B1cF9fY3VycmVuY3ktc2VsZWN0LS1hY3RpdmUiOiIifSJcblx0XHRcdFx0PlxuXHRcdFx0XHRcdCR7cn1cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHQ8L2Rpdj5gKS5hcHBlbmRUbyhvKX1lLm9uKCJhZnRlck9wZW5NZW51IiwoKCk9PntvLm9uKCJjbGljayIsIi5qcy1jdXJyZW5jeS1zZWxlY3QiLCh0PT57dC5wcmV2ZW50RGVmYXVsdCgpO2NvbnN0IGk9dGhpcy5fY3VycmVudEN1cnJlbmN5LnZhbHVlLG49dC5jdXJyZW50VGFyZ2V0LmRhdGFzZXQuY3VycmVuY3kKO24mJm4hPT1pJiYoby5maW5kKCIudHYtc2NyZWVuZXItcG9wdXBfX2N1cnJlbmN5LXNlbGVjdC0tYWN0aXZlIikucmVtb3ZlQ2xhc3MoInR2LXNjcmVlbmVyLXBvcHVwX19jdXJyZW5jeS1zZWxlY3QtLWFjdGl2ZSIpLG8uZmluZChgW2RhdGEtY3VycmVuY3k9JyR7bn0nXWApLmFkZENsYXNzKCJ0di1zY3JlZW5lci1wb3B1cF9fY3VycmVuY3ktc2VsZWN0LS1hY3RpdmUiKSx0aGlzLl9oYW5kbGVTZWxlY3Qobiksc2V0VGltZW91dCgoKCk9PntlLnR2RHJvcGRvd24oImNsb3NlIiksby5vZmYoImNsaWNrIil9KSxtby5kdXIvMikpfSkpfSkpfSx0aGlzLl9oYW5kbGVTZWxlY3Q9ZT0+e3RoaXMuX2N1cnJlbnRDdXJyZW5jeT10aGlzLl9hdmFpbGFibGVDdXJyZW5jaWVzLmZpbHRlcigodD0+dC52YWx1ZT09PWUpKVswXSxmdW5jdGlvbihlKXtpZihlLmlzTWFya2V0Q3VycmVuY3kpcmV0dXJuIHZvaWQoMCxZby5zZW5kU25vd1Bsb3dEYXRhKShuZXcgRnMoIm1hcmtldF9jdXJyZW5jeSIpKTtpZihlLnZhbHVlPT09THMuU1lNQk9MKXJldHVybiB2b2lkKDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IEZzKCJzeW1ib2xfY3VycmVuY3kiKSk7KDAsWW8uc2VuZFNub3dQbG93RGF0YSkobmV3IEZzKCJ1c2QiKSl9KHRoaXMuX2N1cnJlbnRDdXJyZW5jeSksdGhpcy5fdXBkYXRlU2VsZWN0QnV0dG9uKCksdGhpcy5fdmlldy5wcmV2ZW50SGlnaGxpZ2h0Q2hhbmdlcygpLHRoaXMuX3ZpZXcucmVmcmVzaCgpfSx0aGlzLl9vbkxvYWQ9KGUsdCk9Pnt0aGlzLl92aWV3Ll9tb2RlbC5sb2FkaW5nQ29tcGxldGUuc3Vic2NyaWJlKG51bGwsKCgpPT57dC5yZW1vdmVDbGFzcygiaS1kaXNhYmxlZCIpLHRoaXMuX3VwZGF0ZVNlbGVjdEJ1dHRvbigpfSksITApfSx0aGlzLl91cGRhdGVTZWxlY3RCdXR0b249KCk9Pntjb25zdHtjb250ZW50OmV9PXRoaXMuX2N1cnJlbnRDdXJyZW5jeSx0PV8udChudWxsLHZvaWQgMCxvKDM0MTI0NCkpK2A6ICR7ZX1gO3RoaXMuX3ZpZXcuXyRjdXJyZW5jeVNlbGVjdEJ1dHRvbi5odG1sKHQpfSx0aGlzLl9hdmFpbGFibGVDdXJyZW5jaWVzPWUsdGhpcy5fY3VycmVudEN1cnJlbmN5PXQsdGhpcy5fdmlldz1pfWdldEN1cnJlbnRDdXJyZW5jeSgpe3JldHVybiB0aGlzLl9jdXJyZW50Q3VycmVuY3l9fWZ1bmN0aW9uIFBzKGUsdCxvKXtvLl8kY3VycmVuY3lTZWxlY3RCdXR0b24mJihvLl8kY3VycmVuY3lTZWxlY3RCdXR0b24ucGFyZW50KCkucmVtb3ZlKCksby5fbW9kZWwuX2N1cnJlbmN5U2VsZWN0PXZvaWQgMCk7Y29uc3QgaT1vLl9icmlkZ2U7aWYoIWV8fCgwLEFuLmlzRXh0ZXJuYWxXaWRnZXQpKGkpfHxpLmhpZGVfY29udHJvbHMpcmV0dXJuO2NvbnN0IG49ZnVuY3Rpb24oZSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoZS5fbW9kZWwubWFya2V0cykmJmUuX21vZGVsLm1hcmtldHMubGVuZ3RoPjF9KG8pLHtkZWZhdWx0Q3VycmVuY3k6cixjdXJyZW5jaWVzOnN9PVJzKHtpc0dsb2JhbDpuLGZpbmFuY2lhbEN1cnJlbmN5OmUsc3ltYm9sQ3VycmVuY2llczp0fSk7aWYoMT09PXMubGVuZ3RoKXJldHVybjtjb25zdCBhPW5ldyBOcyhzLHIsbykse3NlbGVjdEJ1dHRvbjpsLGN1cnJlbmN5U2VsZWN0OmN9PWEuY3JlYXRlQ3VycmVuY3lTZWxlY3QoKTtvLl8kY3VycmVuY3lTZWxlY3RCdXR0b249bCxvLl9tb2RlbC5fY3VycmVuY3lTZWxlY3Q9Y312YXIgQnM9byg5MjY5OTUpLCRzPW8oMzUxODI3KTtjb25zdCBXcz17c3RvY2s6e3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDU2MzUzMCkpLGNvbnRlbnRUZXh0Ol8udChudWxsLHZvaWQgMCxvKDMyNzMwNSkpLGNvbmZpcm1BY3Rpb246e3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDUzMjEwOSkpLGhhbmRsZXI6KCk9PndpbmRvdy5vcGVuKCIvc2NyZWVuZXIvIiwiX2JsYW5rIil9LGNsb3NlQWN0aW9uOnt0aXRsZTpfLnQobnVsbCx2b2lkIDAsbygzMjI5ODYpKSxoYW5kbGVyOigpPT4oMCxCcy5zaG93U3VwcG9ydERpYWxvZykoe3NvbHV0aW9uSWQ6NDMwMDA3MTg4NjZ9KX19LGNyeXB0bzp7dGl0bGU6Xy50KG51bGwsdm9pZCAwLG8oNzQ4NTQ0KSksY29udGVudFRleHQ6Xy50KG51bGwse3JlcGxhY2U6e2NyeXB0b0NvaW5zU2NyZWVuZXJMaW5rU3RhcnQ6YDxhIGhyZWY9Ii9jcnlwdG8tY29pbnMtc2NyZWVuZXIvP2Zyb209b2xkLWNyeXB0by1wYWlycyIgY2xhc3M9IiR7JHMubGlua30iIHRhcmdldD0iX2JsYW5rIj5gLGNleFNjcmVlbmVyTGlua1N0YXJ0OmA8YSBocmVmPSIvY2V4LXNjcmVlbmVyLz9mcm9tPW9sZC1jcnlwdG8tcGFpcnMiIGNsYXNzPSIkeyRzLmxpbmt9IiB0YXJnZXQ9Il9ibGFuayI+YCxkZXhTY3JlZW5lckxpbmtTdGFydDpgPGEgaHJlZj0iL2RleC1zY3JlZW5lci8/ZnJvbT1vbGQtY3J5cHRvLXBhaXJzIiBjbGFzcz0iJHskcy5saW5rfSIgdGFyZ2V0PSJfYmxhbmsiPmAsbGlua0VuZDoiPC9hPiJ9fSxvKDUyOTE2MCkpLGNvbmZpcm1BY3Rpb246e3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDI5MjAzOCkpLGhhbmRsZXI6KCk9PndpbmRvdy5vcGVuKCIvY2V4LXNjcmVlbmVyLz9mcm9tPW9sZC1jcnlwdG8tcGFpcnMiLCJfYmxhbmsiKX0sY2xvc2VBY3Rpb246e3RpdGxlOl8udChudWxsLHZvaWQgMCxvKDcyNDkxMikpLGhhbmRsZXI6KCk9Pnt9fX19O3ZhciBxcz1vKDc0Njk0OSksVnM9byg0ODI1MDQpO28oNzExOTc5KTtjb25zdCBIcz1vKDIyNTI5OCkubGlua2luZyx7RGVsZWdhdGU6VXN9PW8oOTQ4MzgwKSx6cz1vKDE2MDI5NiksanM9bygyMjEwNjEpLmdldExvZ2dlcigiU2NyZWVuZXIuV2lkZ2V0IiksR3M9d2luZG93LmxvY2FsZXx8ImVuIjtsZXQgWHM9MTUwO2NvbnN0IEtzPWU9Pkl0W2VdJiYhMCE9PUl0W2VdLmRpc2FibGVkJiYhMCE9PUl0W2VdLmhpZGRlbkNvbHVtbixZcz17Zm9yZXg6InNjcmVlbmVyLWZvcmV4IixjcnlwdG86InNjcmVlbmVyLWNyeXB0byIsc3RvY2s6InNjcmVlbmVyIn0sSnM9WyJwcmljZXNjYWxlIiwibWlubW92IiwiZnJhY3Rpb25hbCIsIm1pbm1vdmUyIl07dmFyIFpzPW8oNDgyNTA0KTsoMCxfby5lbmFibGUpKCJ3aWRnZXQiKTtjb25zdCBRcz0oMCwKc28uZXh0cmFjdFdpZGdldFNldHRpbmdzKSh3aW5kb3cuaW5pdERhdGEud2lkZ2V0RGVmYXVsdHMpLGVhPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNqcy1zY3JlZW5lci1jb250YWluZXIiKSx0YT1Rcy5sb2NhbGV8fCJlbiI7IWZ1bmN0aW9uKGUsdCxvLGk9e30pe2lmKG51bGw9PT1lLnBhcmVudEVsZW1lbnQpcmV0dXJuIGNvbnNvbGUud2FybigiQ2FuIG5vdCB3cmFwICdlbFdpZGdldENvbnRhaW5lcicgYmVjYXVzZSBpdCBoYXMgbm8gcGFyZW50RWxlbWVudCIpLGU7bGV0IG49bnVsbCxkPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5qcy1lbWJlZC13aWRnZXQtYm9keSIpO2NvbnN0IGg9bnVsbCE9PWQ7aWYoaCl7ZD0oMCxyLmVuc3VyZU5vdE51bGwpKGQpLG49KDAsci5lbnN1cmVOb3ROdWxsKShkLnBhcmVudEVsZW1lbnQpO2xldCBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5qcy1lbWJlZC13aWRnZXQtaGVhZCIpO251bGw9PT1lJiYoZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSxlLmNsYXNzTGlzdC5hZGQoInR2LWVtYmVkLXdpZGdldC13cmFwcGVyX19oZWFkZXIiKSxlLmNsYXNzTGlzdC5hZGQoImpzLWVtYmVkLXdpZGdldC1oZWFkIiksbi5pbnNlcnRCZWZvcmUoZSxkKSl9ZWxzZSBuPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLG4uY2xhc3NMaXN0LmFkZCgidHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXIiKSxuLmlubmVySFRNTD0nPGRpdiBjbGFzcz0idHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2hlYWRlciBqcy1lbWJlZC13aWRnZXQtaGVhZCI+PC9kaXY+PGRpdiBjbGFzcz0idHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2JvZHkganMtZW1iZWQtd2lkZ2V0LWJvZHkiPjwvZGl2PicsZD1uLnF1ZXJ5U2VsZWN0b3IoIi5qcy1lbWJlZC13aWRnZXQtYm9keSIpO2lmKGkub3ZlcmZsb3dBdXRvJiZkLmNsYXNzTGlzdC5hZGQoInR2LWVtYmVkLXdpZGdldC13cmFwcGVyX19ib2R5LS1vdmVyZmxvd19hdXRvIiksaS5zaG93Qm9yZGVyT25UcmFuc3BhcmVudCYmZC5jbGFzc0xpc3QuYWRkKCJ0di1lbWJlZC13aWRnZXQtd3JhcHBlcl9fYm9keS0tYm9yZGVyLW9uLXRyYW5zcGFyZW50IiksIWkuaXNXaGl0ZUxhYmVsKXshYXN5bmMgZnVuY3Rpb24oZSx0LG8saSxuPXt9KXtjb25zdCBkPW4uaXNTaGVyaWZmRGlzYWJsZWQ/W106YXdhaXQoMCxzLmdldFdpZGdldFNoZXJpZmZBY3Rpb25zKSgpLGg9ZC5pbmNsdWRlcyhjLktub3duQWN0aW9uLkxhcmdlVHJhZGVMb2dvKSx1PWZ1bmN0aW9uKGUpe3JldHVyblsiY3J5cHRvLWNvaW5zLWhlYXRtYXAiLCJmb3JleC1jcm9zcy1yYXRlcyIsIm1hcmtldC1vdmVydmlldyIsInN5bWJvbC1vdmVydmlldyIsIm1hcmtldC1xdW90ZXMiLCJzdG9jay1oZWF0bWFwIiwic2NyZWVuZXIiLCJmb3JleC1oZWF0LW1hcCIsImNyeXB0by1ta3Qtc2NyZWVuZXIiLCJldmVudHMiLCJob3RsaXN0cyJdLmluY2x1ZGVzKGUpfSh0KSxfPWgmJnU/ImxhcmdlX3RyYWRlIjp2b2lkIDAscD1hd2FpdCgwLGwuZ2V0Q3VzdG9tZXJDb3B5cmlnaHREYXRhKShuLmN1c3RvbWVyLG4ubG9jYWxlLCgwLGwuYWRkVXRtQ2FtcGFpZ25Tb3VyY2UpKHsuLi5pfSwibG9nbyIpLF8pLG09Xz8/bi5jb3B5cmlnaHRPcHRpb25zPy5tb2RlPz8ic21hbGxfb2xkIjsoMCxyLmVuc3VyZU5vdE51bGwpKGUpLmFwcGVuZENoaWxkKCgwLGEuY3JlYXRlQ29weXJpZ2h0TGFiZWwpKHtzaGVyaWZmT3B0aW9uczpkLHNuYXBUb0VkZ2U6bywuLi5uLmNvcHlyaWdodE9wdGlvbnMsLi4ucCxtb2RlOm19KSl9KGQsdCwhZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC5jb250YWlucygiaXMtdHJhbnNwYXJlbnQiKXx8Qm9vbGVhbihpLnNob3dCb3JkZXJPblRyYW5zcGFyZW50KSxvLGkpfWh8fChlLnBhcmVudEVsZW1lbnQuaW5zZXJ0QmVmb3JlKG4sZSksZC5hcHBlbmRDaGlsZChlKSl9KGVhLCJzY3JlZW5lciIsKDAsdS5maWx0ZXJVdG1JbmZvKShRcykse2lzV2hpdGVMYWJlbDpRcy53aGl0ZWxhYmVsLGxvY2FsZTp0YSxvdmVyZmxvd0F1dG86ITB9KTtjb25zdCBvYT1acygiI2pzLXNjcmVlbmVyLWNvbnRhaW5lciIpLGlhPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5qcy1lbWJlZC13aWRnZXQtaGVhZCIpLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodDtkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuanMtZW1iZWQtd2lkZ2V0LWJvZHkiKS5zdHlsZS5oZWlnaHQ9YGNhbGMoMTAwJSAtICR7aWF9cHgpYCxRcy5pc1RyYW5zcGFyZW50JiZvYS5hZGRDbGFzcygidHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXItLXRyYW5zcGFyZW50Iik7Y29uc3QgbmE9ZnVuY3Rpb24oZSl7Y29uc3QgdD1ubyhGKCJzdG9jayIpLGUpLG89bm8oRigiZm9yZXgiKSxlKSxpPW5vKEYoImNyeXB0byIpLGUpO3JldHVybiB0LmNvbmNhdChvKS5jb25jYXQoaSl9KHdpbmRvdy5UcmFkaW5nVmlldy53aWRnZXRDdXN0b21lcikubWFwKChlPT5lLnZhbHVlKSkscmE9WyJtb3JvY2NvIl0sc2E9W107aWYoUXMucGVybWlzc2lvbk92ZXJyaWRlcz8ubWFya2V0Py5pbmNsdWRlcygidWsiKXx8c2EucHVzaCgidWsiKSxRcy5tYXJrZXQpe2NvbnN0IGU9IW5hLmluY2x1ZGVzKFFzLm1hcmtldCksdD1yYS5pbmNsdWRlcyhRcy5tYXJrZXQpLG89c2EuaW5jbHVkZXMoUXMubWFya2V0KTsoZSYmIXR8fG8pJiYoUXMubWFya2V0PW5hWzBdKX12YXIgYWE7UXMuc2NyZWVuZXJfdHlwZXx8KFFzLnNjcmVlbmVyX3R5cGU9dm9pZCAwPT09KGFhPVFzLm1hcmtldCk/ZC5TdG9jazpbImZvcmV4IiwiY3J5cHRvIl0uaW5jbHVkZXMoYWEpP2FhOmQuU3RvY2spO2NvbnN0IGxhPVFzLnNjcmVlbmVyX3R5cGU9PT1kLkNyeXB0b01rdD8iY3J5cHRvbWt0c2NyZWVuZXIiOiJmb3JleHNjcmVlbmVyIixjYT1Rcy5zY3JlZW5lcl90eXBlPT09ZC5DcnlwdG9Na3Q/ImNyeXB0by1ta3Qtc2NyZWVuZXIiOiJzY3JlZW5lciI7IWFzeW5jIGZ1bmN0aW9uKGUpe2F3YWl0IG5ldyBQcm9taXNlKChlPT5zZXRUaW1lb3V0KGUsMCkpKSwoYXdhaXQoMCwKYW8uZ2V0VHJhY2tlcikoKSk/LnRyYWNrU2VsZkRlc2MoImlnbHU6Y29tLnRyYWRpbmd2aWV3L3dpZGdldHNfd2l0aG91dF93ZWJzb2NrZXQvanNvbnNjaGVtYS8xLTAtMCIsey4uLmhvKCksd2lkZ2V0X2lkOmUsZXZlbnRfbmFtZToicGFnZV92aWV3In0pfShsYSk7dHJ5eygwLHVvLnRyYWNrV2lkZ2V0TG9hZE1ldGFJbmZvKSh7d2lkZ2V0X2lkOmNhLHN5bWJvbHM6SlNPTi5zdHJpbmdpZnkoW1FzLm1hcmtldF0pLGN1c3RvbWVyOlFzLmN1c3RvbWVyfSl9Y2F0Y2h7fWNvbnN0IGRhPXskYm9keTpvYSxzdGFuZGFsb25lOiExLG9uV2lkZ2V0OiEwLHdpZGdldFNldHRpbmdzOlFzLGhpZGVfY29udHJvbHM6IVFzLnNob3dUb29sYmFyLG1hcmtlZF9zeW1ib2xzX2Rpc2FibGVkOiEwLHRhYmxlX2NvbnRleHRfbWVudV9kaXNhYmxlZDohMSxvcGVuX2NoYXJ0X29uX3NhbWVfdGFiOiExLHNlbGVjdGlvbl9kaXNhYmxlZDohMCxkaXNhYmxlU3RpY2t5SGVhZGVyOiExLGlzVW5hdmFpbGFibGVXaWRnZXRNYXJrZXQ6ISghUXMubWFya2V0fHwhZnVuY3Rpb24oZSl7cmV0dXJuIFcuaW5jbHVkZXMoZSl9KFFzLm1hcmtldCkpfTtWKClbUXMubWFya2V0XSYmKGRhLnVuYXZhaWxhYmxlV2lkZ2V0RXhjaGFuZ2VzPVYoKVtRcy5tYXJrZXRdKSxuZXcgY2xhc3N7Y29uc3RydWN0b3IoZSl7aWYodGhpcy5fYnJpZGdlPWUsdGhpcy5fcGVuZGluZ1Byb21pc2U9bnVsbCwhKCIkYm9keSJpbiBlKSYmImNvbnRhaW5lciJpbiBlJiYodGhpcy5fYnJpZGdlLiRib2R5PVZzKGUuY29udGFpbmVyKSksdGhpcy5fYnJpZGdlLm9uV2lkZ2V0fHwiYmlnIj09PXRoaXMuX2JyaWRnZS50YWJsZV9zdHlsZT90aGlzLnNldHRpbmdzU2F2ZXI9bmV3IHhzOnRoaXMuc2V0dGluZ3NTYXZlcj1uLHRoaXMuX2JyaWRnZS5wYWdlX3NpemUmJihYcz10aGlzLl9icmlkZ2UucGFnZV9zaXplKSx0aGlzLl9icmlkZ2Uub25XaWRnZXQpe2xldCB0O2lmKGUud2lkZ2V0U2V0dGluZ3MubGFyZ2VDaGFydFVybCl7dD1lLndpZGdldFNldHRpbmdzLmxhcmdlQ2hhcnRVcmw7dC5tYXRjaCgvXmh0dHBzPzpcL1wvLyl8fCh0PSJodHRwOi8vIit0KX1pZih0aGlzLmxhcmdlQ2hhcnRVcmw9dCx0aGlzLnV0bT0oMCx1LmZpbHRlclV0bUluZm8pKGUud2lkZ2V0U2V0dGluZ3MpLHRoaXMuc2NyZWVuZXJfdHlwZT1lLndpZGdldFNldHRpbmdzLnNjcmVlbmVyX3R5cGUsImNyeXB0b19ta3QiPT09dGhpcy5zY3JlZW5lcl90eXBlKXtjb25zdCB0PSJCVEMiPT09ZS53aWRnZXRTZXR0aW5ncy5kaXNwbGF5Q3VycmVuY3k/IkJUQyI6IlVTRCI7dGhpcy5zd2l0Y2hGaWx0ZXI9e2xlZnQ6Im5hbWUiLG9wZXJhdGlvbjoibWF0Y2giLHJpZ2h0OnQrIiQifSxadC51bnNoaWZ0KHtpZDoiY3J5cHRvX21rdCIsdGl0bGU6ImNyeXB0b19ta3QiLGNvbnRlbnQ6e3NvcnRfZmllbGQ6Im1hcmtldF9jYXBfY2FsYyIsc29ydF9kaXJlY3Rpb246ImRlc2MiLGZpbHRlcnM6e3NlY3Rvcjp7b3BlcmF0b3I6Im5lbXB0eSJ9fX19KX19ZWxzZSB0aGlzLl9icmlkZ2Uuc3RhbmRhbG9uZT90aGlzLnNjcmVlbmVyX3R5cGU9ZS5zY3JlZW5lcl90eXBlfHwic3RvY2siOnRoaXMuc2NyZWVuZXJfdHlwZT1kLkNyeXB0bzt0aGlzLnNldHRpbmdLZXk9WXNbdGhpcy5zY3JlZW5lcl90eXBlXXx8WXMuc3RvY2ssdGhpcy5fYnJpZGdlLm9uV2lkZ2V0JiZ0aGlzLnNldHRpbmdzU2F2ZXIuc2V0VmFsdWUoYCR7R3N9LiR7dGhpcy5zZXR0aW5nS2V5fS5tYXJrZXRgLGUud2lkZ2V0U2V0dGluZ3MubWFya2V0LHtmb3JjZUZsdXNoOiEwfSksdGhpcy5kZWZhdWx0RmllbGRTZXRzPWcoe3NjcmVlbmVyVHlwZTp0aGlzLnNjcmVlbmVyX3R5cGUsbWFya2V0czp0aGlzLm1hcmtldHMsaXNDb21wYWN0OnRoaXMuaXNTZXJ2ZXJSZW5kZXIoKSxzdWJ0eXBlOnRoaXMuX3NjcmVlbmVyU3VidHlwZSgpLGlzT25XaWRnZXQ6dGhpcy5fYnJpZGdlLm9uV2lkZ2V0fSksdGhpcy5fYnJpZGdlLm9uV2lkZ2V0JiYodGhpcy5fd2lkZ2V0SW5pdENvbHVtbj1lLndpZGdldFNldHRpbmdzLmRlZmF1bHRDb2x1bW58fHRoaXMuZGVmYXVsdEZpZWxkU2V0c1swXS5pZCx0aGlzLl93aWRnZXRJbml0U2NyZWVuPWUud2lkZ2V0U2V0dGluZ3MuZGVmYXVsdFNjcmVlbnx8WnRbMF0uaWQpLFB0KHRoaXMuc2NyZWVuZXJfdHlwZSx0aGlzLl9zY3JlZW5lclN1YnR5cGUoKSksImZvcmV4Ij09PXRoaXMuc2NyZWVuZXJfdHlwZSYmUXQoWyJmb3JleCJdKSx0aGlzLl9icmlkZ2UuZ2V0Q3VycmVudEZpbHRlclNldElkPSgpPT50aGlzLmN1cnJlbnRGaWx0ZXJTZXRJZCgpLHRoaXMuX2JyaWRnZS5hcHBseVN5bWJvbD0oZSx0PSExKT0+e2lmKCEwPT09dHx8dGhpcy5fYnJpZGdlLnN0YW5kYWxvbmUpe2xldCB0PSIiO2NvbnN0IG89KDAsTXMuZ2V0U2hvcnROYW1lQW5kUHJvTmFtZSkoZSk7dD10aGlzLl9icmlkZ2Uub25XaWRnZXQmJnRoaXMubGFyZ2VDaGFydFVybD8oMCxMci5tYWtlVGVtcGxhdGVTeW1ib2xVcmwpKHRoaXMubGFyZ2VDaGFydFVybCxvKTooMCxMci5tYWtlU3ltYm9sQ2hhcnRVcmwpKG8sdGhpcy51dG0pLHdpbmRvdy5vcGVuKHQpfWVsc2UgSHMuc2V0U3ltYm9sQW5kTG9nSW5pdGlhdG9yKGUsInNjcmVlbmVyIil9LHRoaXMuX2JyaWRnZS5hcHBseUZpbHRlclNldD0oZSx0KT0+e2NvbnN0IG89ISgwLF9pLmRlZmF1bHQpKHQuc29ydCgpLHRoaXMubWFya2V0cy5zb3J0KCkpLGk9b3x8ZSE9PXRoaXMuY3VycmVudEZpbHRlclNldElkKCk7bGV0IG49bz90aGlzLnNldE1hcmtldCh0KS50aGVuKCgoKT0+dGhpcy5fdmlldy51cGRhdGVNYXJrZXRCdXR0b24oKSkpOlByb21pc2UucmVzb2x2ZSgpO3JldHVybiBpJiYobj1uLnRoZW4oKCgpPT50aGlzLmFwcGx5RmlsdGVyU2V0KGUpKSkpLG59LHRoaXMuZGlzYWJsZWQ9bmV3IHBvLldhdGNoZWRWYWx1ZSx0aGlzLmZpZWxkc09yZGVyPW5ldyBwby5XYXRjaGVkVmFsdWUsdGhpcy5fc29ydEZpZWxkPW5ldyBwby5XYXRjaGVkVmFsdWUsdGhpcy5fc29ydERpcmVjdGlvbj1uZXcgcG8uV2F0Y2hlZFZhbHVlLHRoaXMuZW9kUmVzdHJpY3Rpb249bmV3IHBvLldhdGNoZWRWYWx1ZShXby5Ob25lKSwKdGhpcy5fb3B0aW9ucz17fSx0aGlzLl9pbml0aWFsU29ydEZpZWxkPWUuc29ydF9maWVsZHx8dGhpcy5zZXR0aW5nc1NhdmVyLmdldFZhbHVlKHRoaXMuc2V0dGluZ0tleSsiLnNvcnRfZmllbGQiLCJtYXJrZXRfY2FwX2Jhc2ljIiksdGhpcy5faW5pdGlhbFNvcnREaXJlY3Rpb249ZS5zb3J0X2RpcmVjdGlvbnx8dGhpcy5zZXR0aW5nc1NhdmVyLmdldFZhbHVlKHRoaXMuc2V0dGluZ0tleSsiLnNvcnRfZGlyZWN0aW9uIiwiZGVzYyIpLHRoaXMudXBkYXRlPSgwLHZvLmRlZmF1bHQpKHRoaXMudXBkYXRlSW1wbC5iaW5kKHRoaXMpLDEwMCksdGhpcy5fc29ydEZpZWxkLnN1YnNjcmliZSgoZT0+e3RoaXMuX3ZpZXcuX3VwZGF0ZVRhYmxlU29ydEZpZWxkKCksdGhpcy5zYXZlRmlsdGVyc1NldHRpbmdzKCksZGVsZXRlIHRoaXMuX2luaXRpYWxTb3J0RmllbGR9KSksdGhpcy5fc29ydERpcmVjdGlvbi5zdWJzY3JpYmUoKGU9Pnt0aGlzLl92aWV3Ll91cGRhdGVUYWJsZVNvcnRGaWVsZCgpLHRoaXMuc2F2ZUZpbHRlcnNTZXR0aW5ncygpLGRlbGV0ZSB0aGlzLl9pbml0aWFsU29ydERpcmVjdGlvbn0pKSx0aGlzLmlzU2NyZWVuZXJXaWRnZXRVcGRhdGVkSW1wbD0hMSx0aGlzLl9icmlkZ2UudmlzaWJsZSYmKDAsQW4uaXNDaGFydFBhZ2UpKHRoaXMuX2JyaWRnZSkmJnRoaXMuX2JyaWRnZS52aXNpYmxlLnN1YnNjcmliZSgoZT0+eyF0aGlzLmlzU2NyZWVuZXJXaWRnZXRVcGRhdGVkSW1wbCYmZSYmKHRoaXMuaW52YWxpZGF0ZVJlcXVlc3QoKSx0aGlzLl9icmlkZ2UuZGlzYWJsZVN0aWNreUhlYWRlcj90aGlzLnVwZGF0ZUltcGwoKTp0aGlzLnVwZGF0ZUltcGwodGhpcy5fdmlldy5fc2V0dXBTdGlja3lIZWFkZXIuYmluZCh0aGlzLl92aWV3KSksdGhpcy5pc1NjcmVlbmVyV2lkZ2V0VXBkYXRlZEltcGw9ITApfSkpLHRoaXMuc2NhblJlcXVlc3Q9bnVsbCx0aGlzLmxvYWRpbmdTdGFydD1uZXcgVXMsdGhpcy5sb2FkaW5nQ29tcGxldGU9bmV3IFVzLHRoaXMuZmllbGRTZXRDaGFuZ2VkPW5ldyBVcyx0aGlzLmZpZWxkU2V0U2F2ZWQ9bmV3IFVzLHRoaXMuZmlsdGVyU2V0Q2hhbmdlZD1uZXcgVXMsdGhpcy5maWx0ZXJTZXRTYXZlZD1uZXcgVXMsdGhpcy5maWx0ZXJTZXREZWxldGVkPW5ldyBVcyx0aGlzLm1heFNhZmVJbnRlZ2VyPU51bWJlci5NQVhfU0FGRV9JTlRFR0VSfHxNYXRoLnBvdygyLDUzKS0xLHRoaXMubWluU2FmZUludGVnZXI9TnVtYmVyLk1JTl9TQUZFX0lOVEVHRVJ8fC0oTWF0aC5wb3coMiw1MyktMSksdGhpcy5fdGlja2Vycz1bXSwiY29udGludW91c19mdXR1cmVzIj09PXRoaXMuc2NyZWVuZXJfdHlwZSYmKHRoaXMuX2JyaWRnZS5vcGVuX2NoYXJ0X29uX3NhbWVfdGFiPSExKSx0aGlzLl9icmlkZ2UuaGlkZV9jb250cm9sc3x8dGhpcy5faW5pdFhXaW5kb3dIYW5kbGVycygpLHRoaXMuX3ZpZXc9bmV3IGJzKGUsdGhpcyk7Y29uc3QgdD1bdGhpcy5faW5pdE1hcmtlZFN5bWJvbHModGhpcy5fdmlldyldO3ZhciBpOyF0aGlzLl9icmlkZ2UuX29uV2lkZ2V0JiZ3aW5kb3cucHJvJiZ0LnB1c2god2luZG93LnByby5lbnN1cmVWYWxpZFNob3BDb25mKCkpLFByb21pc2UuYWxsKHQpLnRoZW4oKCgpPT57aWYoKDAsa3MuaXNGZWF0dXJlRW5hYmxlZCkoInNjcmVlbmVyLW1haW50ZW5hbmNlIikpcmV0dXJuIHZvaWQgdGhpcy5fdmlldy5zaG93TWFpbnRlbmFuY2UoKTt0aGlzLl92aWV3LnByZXBhcmVMYXlvdXQoKTtjb25zdCBlPSgpPT57dGhpcy5fY2hlY2tDdXJyZW50U2V0cygpLHRoaXMuX3ZpZXcuX3NlbGVjdGVkUGVyaW9kSWQmJiJ0b2RheSI9PT10aGlzLl92aWV3Ll9zZWxlY3RlZFBlcmlvZElkPyh0aGlzLmFwcGx5RmllbGRTZXRDb250ZW50KG0pLHRoaXMuX3NvcnRGaWVsZC5zZXRWYWx1ZSgibmFtZSIpLHRoaXMuX3NvcnREaXJlY3Rpb24uc2V0VmFsdWUoImFzYyIpKTp0aGlzLmFwcGx5RmllbGRTZXQodGhpcy5fd2lkZ2V0SW5pdENvbHVtbnx8dGhpcy5jdXJyZW50RmllbGRTZXRJZCgpLCEwKSx0aGlzLmFwcGx5RmlsdGVyU2V0KHRoaXMuX3dpZGdldEluaXRTY3JlZW58fHRoaXMuY3VycmVudEZpbHRlclNldElkKCksITApLHRoaXMuX3VwZGF0ZUVvZFJlc3RyaWN0aW9uKCksKDAsQW4uaXNDaGFydFBhZ2UpKHRoaXMuX2JyaWRnZSkmJnRoaXMuX2JyaWRnZS52aXNpYmxlJiYhdGhpcy5fYnJpZGdlLnZpc2libGUudmFsdWUoKXx8KHRoaXMuX2JyaWRnZS5kaXNhYmxlU3RpY2t5SGVhZGVyP3RoaXMudXBkYXRlSW1wbCgpOnRoaXMudXBkYXRlSW1wbCh0aGlzLl92aWV3Ll9zZXR1cFN0aWNreUhlYWRlci5iaW5kKHRoaXMuX3ZpZXcpKSx0aGlzLmlzU2NyZWVuZXJXaWRnZXRVcGRhdGVkSW1wbD0hMCl9O2lmKHRoaXMuaXNTZXJ2ZXJSZW5kZXIoKSl0aGlzLmdldE1ldGFJbmZvKCksdGhpcy5nZXRVc2VyU2V0dGluZ3MoKSxlKCk7ZWxzZXtjb25zdCB0PVt0aGlzLmdldE1ldGFJbmZvKCksdGhpcy5nZXRVc2VyU2V0dGluZ3MoKV07UHJvbWlzZS5hbGwodCkudGhlbihlKX13aW5kb3cubG9naW5TdGF0ZUNoYW5nZSYmd2luZG93LmxvZ2luU3RhdGVDaGFuZ2Uuc3Vic2NyaWJlKG51bGwsKGU9PnRoaXMub25Mb2dpblN0YXRlQ2hhbmdlKGUpKSksenMuaXNQcm9kKCl8fCh3aW5kb3cuX2V4cG9zZWRfc2NyZWVuZXJXaWRnZXQ9dGhpcyksdGhpcy5pc1NlcnZlclJlbmRlcigpJiZkZWxldGUgdGhpcy5fYnJpZGdlLnNlcnZlcl9kYXRhfSkpLCgwLFlvLmluaXRTY3JlZW5lckluc3RhbmNlKSh0aGlzKSxlLnN0YW5kYWxvbmUmJlsic3RvY2siLCJjcnlwdG8iXS5pbmNsdWRlcyhlLnNjcmVlbmVyX3R5cGUpJiYhZS5wZXJpb2RfcGlja2VyJiYoaT17bm90aWZpY2F0aW9uRGF0YTpXc1tlLnNjcmVlbmVyX3R5cGVdfSxQcm9taXNlLmFsbChbby5lKDI5Mjk2KSxvLmUoNTIzOTYpLG8uZSg2MDA2Miksby5lKDIwMzU0KSxvLmUoMTM0OTIpLG8uZSgzNzc0Niksby5lKDEyMDUxKSxvLmUoNjg5NDIpLG8uZSgzOTYwOSksby5lKDUyNDUzKV0pLnRoZW4oby5iaW5kKG8sNzMwMjU3KSkudGhlbigoZT0+ZS5zaG93U2NyZWVuZXJOZXdTdGFuZGFsb25lRGlhbG9nKGkpKSkpfWFzeW5jIF9pbml0TWFya2VkU3ltYm9scyhlKXsKaWYoIXRoaXMuaGFzTWFya2VkU3ltYm9scygpKXJldHVybjtjb25zdCB0PWF3YWl0IFByb21pc2UuYWxsKFtvLmUoODQyNjkpLG8uZSgyOTI5Niksby5lKDUyMzk2KSxvLmUoNjAwNjIpLG8uZSgyMDM1NCksby5lKDEzNDkyKSxvLmUoMzc3NDYpLG8uZSgxMjA1MSksby5lKDg5MDQ0KSxvLmUoNzg0MDQpLG8uZSgzOTYwOSksby5lKDE0ODg5KSxvLmUoODU0MzQpLG8uZSgyODUxKSxvLmUoNDM5ODApLG8uZSgzNDcpXSkudGhlbihvLmJpbmQobywyMzUxODYpKSxpPWF3YWl0IFByb21pc2UuYWxsKFtvLmUoODQyNjkpLG8uZSgyOTI5Niksby5lKDUyMzk2KSxvLmUoNjAwNjIpLG8uZSgyMDM1NCksby5lKDEzNDkyKSxvLmUoMzc3NDYpLG8uZSgxMjA1MSksby5lKDg5MDQ0KSxvLmUoNzg0MDQpLG8uZSgzOTYwOSksby5lKDE0ODg5KSxvLmUoODU0MzQpLG8uZSgyODUxKSxvLmUoNDM5ODApLG8uZSgzNDcpXSkudGhlbihvLmJpbmQobyw1NjI4ODUpKTt0aGlzLm1hcmthYmxlU3ltYm9scz1uZXcgdC5NYXJrYWJsZVN5bWJvbHMoe3N5bWJvbHNWaWV3OmUsbWFya2VyQ29udGFpbmVyU2VsZWN0b3I6Ii50di1zY3JlZW5lci10YWJsZV9fc3ltYm9sLWFkZGl0aW9uIixhY3RpdmVNYXJrZXJDbGFzczoidHYtc2NyZWVuZXItdGFibGVfX21hcmtlci0tYWN0aXZlIixhZGRpdGlvbmFsTWFya2VyQ2xhc3M6InR2LXNjcmVlbmVyLXRhYmxlX19tYXJrZXIifSk7dGhpcy5fbWFya2VkU3ltYm9sc0ZpbHRlcj1uZXcgaS5NYXJrZWRTeW1ib2xzRmlsdGVyKHtzeW1ib2xzVmlldzplLGNvbnRhaW5lclNlbGVjdG9yOiIudHYtc2NyZWVuZXItdGFibGVfX2hlYWQtbGVmdC0tdGV4dCIsY2xhc3NOYW1lOiJ0di1zY3JlZW5lci10YWJsZV9faGVhZC1sZWZ0LS1tYXJrZXIiLGRpc2FibGVTYXZlU3RhdGU6dGhpcy5fYnJpZGdlLmRpc2FibGVTYXZlTWFya2VkU3ltYm9sc0ZpbHRlcn0pO2NvbnN0IG49dGhpcy5fbWFya2VkU3ltYm9sc0ZpbHRlci5nZXRTdHJlYW0oKTt0aGlzLl90aWNrZXJzPXRoaXMuX2luaXRUaWNrZXJzfHx0aGlzLl9tYXJrZWRTeW1ib2xzRmlsdGVyLmdldFN5bWJvbHNGb3JTY2FuKCksdGhpcy5fbWFya2VkU3ltYm9sc0ZpbHRlci5pc0FjdGl2ZSgpJiYodGhpcy5fYnJpZGdlLnNlcnZlcl9kYXRhPW51bGwpO2xldCByPSEwO24ub24oaS5GaWx0ZXJFdmVudHMuSW5pdCwoKCk9Pnt0aGlzLl90aWNrZXJzPXRoaXMuX2luaXRUaWNrZXJzfHx0aGlzLl9tYXJrZWRTeW1ib2xzRmlsdGVyLmdldFN5bWJvbHNGb3JTY2FuKCkscj0hMX0pKSxuLm9uKGkuRmlsdGVyRXZlbnRzLkZpbHRlckJ5TWFya2VkU3ltYm9scywoZT0+e2lmKCFyKXtjb25zdCBlPXRoaXMuX21hcmtlZFN5bWJvbHNGaWx0ZXIuX2NvbG9yTWFuYWdlci5nZXRDb2xvcigpOygwLFlvLnNlbmRTbm93UGxvd0RhdGEpKG5ldyBiaShlKSl9dGhpcy5fdGlja2Vycz1lLHRoaXMuX3ByZXZTY2FuRGF0YT1udWxsLHRoaXMuX3ByZXZSZXF1ZXN0RGF0YT1udWxsLHRoaXMuaW52YWxpZGF0ZVJlcXVlc3QoKSwoMCxBbi5pc1NjcmVlbmVyUGFnZSkodGhpcy5fYnJpZGdlKSYmcnx8dGhpcy51cGRhdGUoKX0pKSxuLm9uKGkuRmlsdGVyRXZlbnRzLkRpc2FibGUsKCgpPT57dGhpcy5fdGlja2Vycz10aGlzLl9pbml0VGlja2Vyc3x8W10sdGhpcy5pbnZhbGlkYXRlUmVxdWVzdCgpLHRoaXMudXBkYXRlKCl9KSl9X2luaXRYV2luZG93SGFuZGxlcnMoKXt0aGlzLl9icmlkZ2Uub25XaWRnZXR8fCh0aGlzLl9yZWdpc3RlclhXaW5kb3dIYW5kbGVyKCJzY3JlZW5lci5tYXJrZXQtY2hhbmdlZCIsKCgpPT57UXQodGhpcy5tYXJrZXRzKTtsZXQgZT10aGlzLmN1cnJlbnRGaWx0ZXJTZXRJZCgpO2NvbnN0IHQ9dGhpcy5kZWZhdWx0RmlsdGVyU2V0cy5maW5kKCh0PT50LmlkPT09ZSkpO2lmKHQmJnQuZGlzYWJsZWQpe2NvbnN0IHQ9dGhpcy5kZWZhdWx0RmlsdGVyU2V0cy5maW5kKChlPT4hZS5kaXNhYmxlZCkpO2U9dD90LmlkOiIifXRoaXMuZ2V0VXNlclNldHRpbmdzKCkudGhlbigoKCk9Pnt0aGlzLmFwcGx5RmlsdGVyU2V0KGUsITApLHRoaXMuX3ZpZXcudXBkYXRlTWFya2V0QnV0dG9uKCksdGhpcy5pbnZhbGlkYXRlUmVxdWVzdCgpLHRoaXMudXBkYXRlSW1wbCgpfSkpfSkpLHRoaXMuX3JlZ2lzdGVyWFdpbmRvd0hhbmRsZXIoInNjcmVlbmVyLnNhdmUtZmllbGQtc2V0IiwoZT0+e2NvbnN0IHQ9ZS5zZXRJZDt0aGlzLmdldFVzZXJTZXR0aW5ncygpLnRoZW4oKCgpPT57dCYmdD09PXRoaXMuY3VycmVudEZpZWxkU2V0SWQoKSYmdGhpcy5fdmlldy4kZmllbGRTZXRzQnV0dG9uLnRleHQodGhpcy5nZXRGaWVsZFNldEJ5SWQodCkudGl0bGUpfSkpfSkpLHRoaXMuX3JlZ2lzdGVyWFdpbmRvd0hhbmRsZXIoInNjcmVlbmVyLnNhdmUtZmlsdGVyLXNldCIsKGU9Pntjb25zdCB0PWUuc2V0SWQ7dGhpcy5nZXRVc2VyU2V0dGluZ3MoKS50aGVuKCgoKT0+e3QmJnQ9PT10aGlzLmN1cnJlbnRGaWx0ZXJTZXRJZCgpJiZ0aGlzLl92aWV3LiRmaWx0ZXJTZXRzQnV0dG9uVGl0bGUudGV4dCh0aGlzLmdldEZpbHRlclNldEJ5SWQodCkudGl0bGUpfSkpfSkpLHRoaXMuX3JlZ2lzdGVyWFdpbmRvd0hhbmRsZXIoInNjcmVlbmVyLmFkZC1maWVsZC1zZXQtdG8tZmF2b3JpdGVzIiwoKCk9Pnt0aGlzLmdldFVzZXJTZXR0aW5ncygpfSkpLHRoaXMuX3JlZ2lzdGVyWFdpbmRvd0hhbmRsZXIoInNjcmVlbmVyLnJlbW92ZS1maWVsZC1zZXQtZnJvbS1mYXZvcml0ZXMiLCgoKT0+e3RoaXMuZ2V0VXNlclNldHRpbmdzKCl9KSksdGhpcy5fcmVnaXN0ZXJYV2luZG93SGFuZGxlcigic2NyZWVuZXIuYXBwbHktZmllbGQtc2V0IiwoZT0+e3RoaXMuYXBwbHlGaWVsZFNldEltcGwoZS5zZXRJZCxlLmluaXRpYWwsITEpLHRoaXMuX3ZpZXcubGFzdFNldElkPWUuc2V0SWR9KSksdGhpcy5fcmVnaXN0ZXJYV2luZG93SGFuZGxlcigic2NyZWVuZXIuYXBwbHktZmlsdGVyLXNldCIsKGU9Pnt0aGlzLmFwcGx5RmlsdGVyU2V0KGUuc2V0SWQsZS5kb05vdFVwZGF0ZSwhMSl9KSksdGhpcy5fcmVnaXN0ZXJYV2luZG93SGFuZGxlcigic2NyZWVuZXIuY2hhbmdlLXNlbGVjdGVkLWludGVydmFsLWlkIiwoZT0+ewp0aGlzLl92aWV3LnVwZGF0ZUludGVydmFsQnV0dG9uKG51bGwsZS5pZCksdGhpcy5pbnZhbGlkYXRlUmVxdWVzdCgpLHRoaXMudXBkYXRlSW1wbCgpfSkpKX1fcmVnaXN0ZXJYV2luZG93SGFuZGxlcihlLHQpe0NzLlRWWFdpbmRvd0V2ZW50cy5vbihlLChlPT57Y29uc3Qgbz1KU09OLnBhcnNlKGUpO3RoaXMuc2V0dGluZ0tleT09PW8uc2V0dGluZ0tleSYmdChvKX0pKX1fc2VuZFhXaW5kb3dFdmVudChlLHQpe3RoaXMuX2JyaWRnZS5vbldpZGdldHx8ImJpZyI9PT10aGlzLl9icmlkZ2UudGFibGVfc3R5bGV8fENzLlRWWFdpbmRvd0V2ZW50cy5lbWl0KGUsdCl9X2NoZWNrQ3VycmVudFNldHMoKXtjb25zdCBlPXRoaXMuY3VycmVudEZpZWxkU2V0SWQoKTtlJiYhdGhpcy5nZXRGaWVsZFNldEJ5SWQoZSkmJnRoaXMuc2V0dGluZ3NTYXZlci5yZW1vdmUodGhpcy5zZXR0aW5nS2V5KyIuZmllbGRTZXRJZCIpO2NvbnN0IHQ9dGhpcy5jdXJyZW50RmlsdGVyU2V0SWQoKTt0JiYhdGhpcy5nZXRGaWx0ZXJTZXRCeUlkKHQpJiZ0aGlzLnNldHRpbmdzU2F2ZXIucmVtb3ZlKHRoaXMuc2V0dGluZ0tleSsiLmZpbHRlclNldElkIil9aXNTZXJ2ZXJSZW5kZXIoKXtyZXR1cm4gd2luZG93LmluaXREYXRhLnNjcmVlbmVyX21ldGFpbmZvJiZ3aW5kb3cuaW5pdERhdGEuc2NyZWVuZXJfZGF0YSYmdGhpcy5fYnJpZGdlLnNlcnZlcl9kYXRhfXVwZGF0ZU1ldGFJbmZvKGUpe0l0LmluZGV4LmRpc2FibGVkPSEwLEl0LnN1Ym1hcmtldC5kaXNhYmxlZD0hMCwiY3J5cHRvIj09PXRoaXMuc2NyZWVuZXJfdHlwZSYmKEl0LmN1cnJlbmN5LnVzZURlZmF1bHRSYW5nZT0hMCxJdC5jdXJyZW5jeS5kaXNhYmxlZD0hMSk7Y29uc3QgdD1uZXcgU2V0LG89dGhpcy5tYXJrZXRzfHxbdGhpcy5tYXJrZXRdO0l0LmlzX3ByaW1hcnkuZGlzYWJsZWQ9WyJjcnlwdG8iLCJmb3JleCJdLmluY2x1ZGVzKG9bMF0pLGUuZmllbGRzLmZvckVhY2goKGU9PntpZigiY3VycmVuY3kiPT09ZS5uJiZlLnIuZm9yRWFjaCgoZT0+dC5hZGQoZSkpKSxlLm4gaW4gSXQpe2lmKEl0W2Uubl0udHlwZT1lLnQsImluZGV4Ij09PWUubilyZXR1cm4gSXQuaW5kZXguZGlzYWJsZWQ9ITEsSXQuaW5kZXguc291cmNlUmFuZ2U9ZS5yLHZvaWQoSXQuaW5kZXgucmFuZ2U9SXQuaW5kZXguc291cmNlUmFuZ2U/SXQuaW5kZXguc291cmNlUmFuZ2UubWFwKChlPT5lLm5hbWUpKTpbXSk7aWYoInN1Ym1hcmtldCI9PT1lLm4mJmUuci5sZW5ndGg+PTEmJihlLnI9ZS5yLmZpbHRlcigoZT0+IiIhPT1lKSksZS5yLmxlbmd0aD4wJiYoSXQuc3VibWFya2V0LmRpc2FibGVkPSExKSksIUl0W2Uubl0ucmFuZ2UmJkl0W2Uubl0udXNlRGVmYXVsdFJhbmdlP0l0W2Uubl0ucmFuZ2U9SXRbZS5uXS5kZWZhdWx0UmFuZ2U6SXRbZS5uXS51c2VEZWZhdWx0UmFuZ2V8fChJdFtlLm5dLnJhbmdlPWUuciksImV4Y2hhbmdlIj09PWUubiYmdGhpcy5fYnJpZGdlLnVuYXZhaWxhYmxlV2lkZ2V0RXhjaGFuZ2VzJiZ0aGlzLl9icmlkZ2UudW5hdmFpbGFibGVXaWRnZXRFeGNoYW5nZXMubGVuZ3RoJiYoSXRbZS5uXS5yYW5nZT10aGlzLl9nZXRGaWx0ZXJlZEV4Y2hhbmdlc0ZvcldpZGdldChJdFtlLm5dLnJhbmdlKSksZnVuY3Rpb24oZSx0KXtjb25zdCBvPVAoZS5zY3JlZW5lcl90eXBlKSxpPVAoZC5TdG9jaykuYW1lcmljYTtsZXQgbixyPVtdO2Zvcihjb25zdCBsIG9mIGUubWFya2V0cylvW2xdJiYobj1vW2xdW3RdfHxpW3RdLG4mJkFycmF5LmlzQXJyYXkobikmJihzPXIsYT1uLHI9Wy4uLm5ldyBTZXQoWy4uLnMsLi4uYV0pXS5zb3J0KCgoZSx0KT0+ZS10KSkpKTt2YXIgcyxhO0l0W3RdLnZhbHVlcz1ufSh0aGlzLGUubiksITE9PT1JdFtlLm5dLnNvcnRhYmxlKXJldHVybjtlLnQ9PT12ci5QcmljZSYmKEl0W2Uubl0uYWRkaXRpb25hbENvbHVtbnM/SXRbZS5uXS5hZGRpdGlvbmFsQ29sdW1ucz1JdFtlLm5dLmFkZGl0aW9uYWxDb2x1bW5zLmNvbmNhdChKcyk6SXRbZS5uXS5hZGRpdGlvbmFsQ29sdW1ucz1KcyksZS50PT09dnIuVGV4dCYmKEl0W2Uubl0ucmFuZ2U9SXRbZS5uXS5yYW5nZS5zb3J0KCkpLG89ZSxbdnIuTnVtYmVyLHZyLkZ1bmRhbWVudGFsUHJpY2VdLmluY2x1ZGVzKG8udCkmJkl0W2Uubl0ucmFuZ2UmJiFJdFtlLm5dLnVzZURlZmF1bHRSYW5nZSYmKEl0W2Uubl0ucmFuZ2U9SXRbZS5uXS5yYW5nZS5tYXAoKGU9Pk1hdGgubWluKE1hdGgubWF4KGUsdGhpcy5taW5TYWZlSW50ZWdlciksdGhpcy5tYXhTYWZlSW50ZWdlcikpKS5zb3J0KHRoaXMubnVtZXJpY1NvcnRlcikpLEl0W2Uubl0udmFsdWVzJiYhSXRbZS5uXS5yYW5nZSYmKEl0W2Uubl0ucmFuZ2U9W3RoaXMubWluU2FmZUludGVnZXIsdGhpcy5tYXhTYWZlSW50ZWdlcl0pLEl0W2Uubl0udmFsdWVzJiZJdFtlLm5dLnJhbmdlJiYoSXRbZS5uXS5yYW5nZVswXT5JdFtlLm5dLnZhbHVlc1swXSYmKEl0W2Uubl0ucmFuZ2VbMF09SXRbZS5uXS52YWx1ZXNbMF0pLEl0W2Uubl0ucmFuZ2VbMV08SXRbZS5uXS52YWx1ZXNbSXRbZS5uXS52YWx1ZXMubGVuZ3RoLTFdJiYoSXRbZS5uXS5yYW5nZVsxXT1JdFtlLm5dLnZhbHVlc1tJdFtlLm5dLnZhbHVlcy5sZW5ndGgtMV0pKSwicmFuZ2UiIT09SXRbZS5uXS5jb250cm9sfHxJdFtlLm5dLnZhbHVlc3x8SXRbZS5uXS5yYW5nZXx8KEl0W2Uubl0ucmFuZ2U9W3RoaXMubWluU2FmZUludGVnZXIsdGhpcy5tYXhTYWZlSW50ZWdlcl0sSXRbZS5uXS52YWx1ZXM9W3RoaXMubWluU2FmZUludGVnZXIsMCx0aGlzLm1heFNhZmVJbnRlZ2VyXSl9ZWxzZSBpZigtMSE9PWUubi5pbmRleE9mKCJ8Iikpe2NvbnN0IHQ9ZS5uLnNwbGl0KCJ8Iik7SXRbdFswXV18fChJdFt0WzBdXT17fSksSXRbdFswXV0uY3VzdG9tUmVzb2x1dGlvbnN8fChJdFt0WzBdXS5jdXN0b21SZXNvbHV0aW9ucz1bXSksSXRbdFswXV0uY3VzdG9tUmVzb2x1dGlvbnMucHVzaCh0WzFdKX12YXIgb30pKSxQcyhlLmZpbmFuY2lhbF9jdXJyZW5jeSxbLi4udF0sdGhpcy5fdmlldyksUXQodGhpcy5tYXJrZXRzKSx0aGlzLmRlZmF1bHRGaWx0ZXJTZXRzPVp0fWdldE1ldGFJbmZvKCl7CmlmKHRoaXMuaXNTZXJ2ZXJSZW5kZXIoKSlyZXR1cm4gdGhpcy51cGRhdGVNZXRhSW5mbyhKU09OLnBhcnNlKHdpbmRvdy5pbml0RGF0YS5zY3JlZW5lcl9tZXRhaW5mbykpLFByb21pc2UucmVzb2x2ZSgpO2NvbnN0IGU9dGhpcy5fZ2V0U2NhblVybCgibWV0YWluZm8iKSx0PXQ9Pih7dHlwZToiUE9TVCIsdXJsOmUsZGF0YTpKU09OLnN0cmluZ2lmeSh7bWFya2V0czp0aGlzLm1hcmtldHN9KSxiZWZvcmVTZW5kOigpPT57bnVsbCE9PXRoaXMuX3BlbmRpbmdQcm9taXNlJiZ0aGlzLl9wZW5kaW5nUHJvbWlzZS5hYm9ydCgpfSxzdWNjZXNzOmU9Pnt0aGlzLnVwZGF0ZU1ldGFJbmZvKGUpLHQoKX0sZGF0YVR5cGU6Impzb24iLHhockZpZWxkczp7d2l0aENyZWRlbnRpYWxzOiFCb29sZWFuKHRoaXMuX2JyaWRnZS5vbldpZGdldCl9fSk7cmV0dXJuIG5ldyBQcm9taXNlKChlPT57dGhpcy5sb2FkaW5nU3RhcnQuZmlyZSgpLHRoaXMuX3BlbmRpbmdQcm9taXNlPVZzLmFqYXgodChlKSkuZmFpbCgoZT0+eyJhYm9ydCIhPT1lLnN0YXR1c1RleHQmJmpzLmxvZ0Vycm9yKCJGYWlsZWQgdG8gbG9hZCBzY3JlZW5lciBtZXRhaW5mbyIpfSkpLmFsd2F5cygoKCk9Pnt0aGlzLmxvYWRpbmdDb21wbGV0ZS5maXJlKCksdGhpcy5fcGVuZGluZ1Byb21pc2U9bnVsbH0pKX0pKX1maWVsZEFjdGl2ZShlKXtyZXR1cm4hKCFJdFtlXXx8IUl0W2VdLnZhbHVlfHwiY29uZGl0aW9uIiE9PUl0W2VdLmNvbnRyb2x8fCJpbl9yYW5nZSIhPT1JdFtlXS52YWx1ZS5vcGVyYXRvcnx8MiE9PUl0W2VdLnZhbHVlLnZhbHVlLmxlbmd0aCl8fCEoIUl0W2VdfHwhSXRbZV0udmFsdWV8fCJjb25kaXRpb24iPT09SXRbZV0uY29udHJvbCYmKCFJdFtlXS52YWx1ZS5vcGVyYXRvcnx8Im51bWJlciIhPXR5cGVvZiBJdFtlXS52YWx1ZS52YWx1ZSYmIUl0W2VdLnZhbHVlLnZhbHVlKXx8InJhbmdlIj09PUl0W2VdLmNvbnRyb2wmJkl0W2VdLnZhbHVlWzBdPT09SXRbZV0ucmFuZ2VbMF0mJkl0W2VdLnZhbHVlWzFdPT09SXRbZV0ucmFuZ2VbMV0pfXBhdGNoRmlsdGVyc0Zvck1hcmtldFBhZ2VzKGUpe2xldCB0PXtydXNzaWE6W3tsZWZ0OiJ0eXBlc3BlY3MiLG9wZXJhdGlvbjoiaGFzX25vbmVfb2YiLHJpZ2h0OiJmb3JlaWduLWlzc3VlciJ9XSxicmF6aWw6W3tsZWZ0OiJ0eXBlc3BlY3MiLG9wZXJhdGlvbjoiaGFzX25vbmVfb2YiLHJpZ2h0OiJvZGQifV0sdGhhaWxhbmQ6W3tsZWZ0OiJ0eXBlc3BlY3MiLG9wZXJhdGlvbjoiaGFzX25vbmVfb2YiLHJpZ2h0OiJmb3JlaWduIn1dLHVrOlt7bGVmdDoidHlwZXNwZWNzIixvcGVyYXRpb246Imhhc19ub25lX29mIixyaWdodDoiY2RpIn0se2xlZnQ6ImV4Y2hhbmdlIixvcGVyYXRpb246ImVxdWFsIixyaWdodDoiTFNFIn1dfVt0aGlzLm1hcmtldHNbMF1dO2lmKFsic2VjdG9yIiwiaW5kdXN0cnkiXS5pbmNsdWRlcyh0aGlzLnNjcmVlbmVyX3R5cGUpJiZ0JiYodD10LmZpbHRlcigoZT0+ImV4Y2hhbmdlIiE9PWUubGVmdCkpKSwhdHx8MD09PXQubGVuZ3RoKXJldHVybiBlO2NvbnN0IG89KDAsU3MuZGVmYXVsdCkoZSk7aWYoIWUuZmlsdGVyKXJldHVybiBvLmZpbHRlcj1bLi4udF0sbztmb3IoY29uc3QgZSBvZiB0KXswPT09by5maWx0ZXIuZmlsdGVyKCh0PT4oMCxfaS5kZWZhdWx0KSh0LGUpKSkubGVuZ3RoJiZvLmZpbHRlci5wdXNoKGUpfXJldHVybiBvfWdldFNjYW5uZXJQYXJhbXMoZSl7bGV0IHQ9bnVsbCxvPW51bGwsaT1udWxsLG49e307aWYoZSl7Y29uc3Qgcj10aGlzLmdldEZpbHRlclNldEJ5SWQoZSk7dD1yLmNvbnRlbnQuc29ydF9maWVsZCxvPXIuY29udGVudC5maWx0ZXJzfHx7fSxpPU9iamVjdC5rZXlzKHIuY29udGVudC5maWx0ZXJzfHx7fSksbj1yLmNvbnRlbnQub3B0aW9uc31lbHNlIGk9T2JqZWN0LmtleXMoSXQpLmZpbHRlcigoZT0+dGhpcy5maWVsZEFjdGl2ZShlKSkpLG49dGhpcy5fb3B0aW9uczt0fHwodD10aGlzLl9zb3J0RmllbGQudmFsdWUoKXx8dGhpcy5faW5pdGlhbFNvcnRGaWVsZCk7Y29uc3Qgcj17ZmlsdGVyOltdLF9ncm91cHM6W10sb3B0aW9uczpufTtmb3IobGV0IGU9MDtlPGkubGVuZ3RoOysrZSl7Y29uc3QgdD1pW2VdO2lmKCJjb25kaXRpb24iPT09SXRbdF0uY29udHJvbCYmIUl0W3RdLnZhbHVlKWNvbnRpbnVlO2lmKCJuYW1lIj09PXQmJkFycmF5LmlzQXJyYXkoSXRbdF0udmFsdWUpKXtsZXQgZT0hMTtjb25zdCBvPUl0W3RdLnZhbHVlO2ZvcihsZXQgdD0wO3Q8by5sZW5ndGg7Kyt0KWlmKCJuZXF1YWwiPT09b1t0XS5vcGVyYXRvcil7ZT0hMDticmVha31pZihlKWNvbnRpbnVlfWNvbnN0IG49SXRbdF0uZ3JvdXBGaWx0ZXI/ci5fZ3JvdXBzOnIuZmlsdGVyO2xldCBzPUR0KHQsSXRbdF0udmFsdWUsbyx0aGlzLnNlbGVjdGVkSW50ZXJ2YWxJZCk7aWYocy5maWx0ZXIyRmxhZyYmKHMuZmlsdGVyMkFuZFBhcnQubGVuZ3RoJiYoci5maWx0ZXIyfHwoci5maWx0ZXIyPXtvcGVyYXRvcjoiYW5kIixvcGVyYW5kczpbXX0pLHIuZmlsdGVyMi5vcGVyYW5kcy5wdXNoKHtvcGVyYXRpb246e29wZXJhdG9yOiJvciIsb3BlcmFuZHM6cy5maWx0ZXIyQW5kUGFydC5tYXAoKGU9Pih7ZXhwcmVzc2lvbjplfSkpKX19KSkscz1zLmZpbHRlciksQXJyYXkuaXNBcnJheShzKSlmb3IobGV0IGU9MDtlPHMubGVuZ3RoOysrZSluLnB1c2goc1tlXSk7ZWxzZSBuLnB1c2gocyl9aWYodGhpcy5maWx0ZXJTZXRDaGFuZ2VkLmZpcmUoKSx0aGlzLmVvZFJlc3RyaWN0aW9uLnZhbHVlKCkhPT1Xby5Ob25lJiYoci5vcHRpb25zLmRhdGFfcmVzdHJpY3Rpb25zPSJQUkVWX0JBUiIpLHIubWFya2V0cz10aGlzLm1hcmtldHMsKDAsQW4uaXNNYXJrZXRQYWdlKSh0aGlzLl9icmlkZ2UpKXJldHVybiB0aGlzLnBhdGNoRmlsdGVyc0Zvck1hcmtldFBhZ2VzKHIpO2NvbnN0IHM9ci5maWx0ZXIuZmlsdGVyKChlPT4iaXNfcHJpbWFyeSI9PT1lLmxlZnQpKTtyZXR1cm4gcyYmITE9PT1zLmxlZnQmJihyLmZpbHRlcj1yLmZpbHRlci5maWx0ZXIoKGU9PiJpc19wcmltYXJ5IiE9PWUubGVmdCkpKSxyfXVwZGF0ZUltcGwoZSx0LG8saT0hMCxuPSExLHI9ITEpewppZih0JiZ0aGlzLl92aWV3LmlzRW5kUmVhY2hlZCgpKXJldHVybjtpZih0aGlzLl92aWV3LnRhYmxlLmRyYWdTdGFydGVkLnZhbHVlKCkpcmV0dXJuO2lmKCgwLGtzLmlzRmVhdHVyZUVuYWJsZWQpKCJzY3JlZW5lci1tYWludGVuYW5jZSIpKXJldHVybiB2b2lkIHRoaXMuX3ZpZXcuX3BvcHVwcy5zaG93TWFpbnRlbmFuY2VEaWFsb2coKTtjb25zdCBzPXRoaXMuZ2VuZXJhdGVTY2FuUmVxdWVzdCgpLGE9WzAsWHNdO3MucmFuZ2U9YS5zbGljZSgpLGk/KHQmJnRoaXMuX2N1cnJlbnRJdGVtc1JhbmdlPyhhWzBdPXRoaXMuX2N1cnJlbnRJdGVtc1JhbmdlWzFdLGFbMV09YVswXStYcyxzLnJhbmdlWzFdPWFbMV0pOnRoaXMuX3ZpZXcucmVzZXRJdGVtcygpLHRoaXMuX2N1cnJlbnRJdGVtc1JhbmdlPWEpOnRoaXMuX2N1cnJlbnRJdGVtc1JhbmdlP3MucmFuZ2VbMV09dGhpcy5fY3VycmVudEl0ZW1zUmFuZ2VbMV06dGhpcy5fdmlldy5yZXNldEl0ZW1zKCksIXQmJnRoaXMuX3ByZXZSZXF1ZXN0JiYoMCxfaS5kZWZhdWx0KShzLHRoaXMuX3ByZXZSZXF1ZXN0KT8iZnVuY3Rpb24iPT10eXBlb2YgZSYmITA9PT1vJiZlKCk6KHRoaXMuX3ByZXZSZXF1ZXN0PSgwLEguY2xvbmUpKHMpLCJmdW5jdGlvbiI9PXR5cGVvZiBlJiZlKCksdGhpcy5zY2FuKHMsdCxuLHIpKX1fZ2V0U3ltYm9scygpe2xldCBlO3N3aXRjaCh0aGlzLnNjcmVlbmVyX3R5cGUpe2Nhc2UiZm9yZXgiOmU9WyJmb3JleCJdO2JyZWFrO2Nhc2Uic2VjdG9yIjplPVsic2VjdG9yIl07YnJlYWs7Y2FzZSJpbmR1c3RyeSI6ZT1bImluZHVzdHJ5Il07YnJlYWs7Y2FzZSJjb250aW51b3VzX2Z1dHVyZXMiOmU9WyJmdXR1cmVzIl07YnJlYWs7ZGVmYXVsdDplPXRoaXMuX2JyaWRnZS50eXBlc3x8W119cmV0dXJue3F1ZXJ5Ont0eXBlczplfSx0aWNrZXJzOnRoaXMuX3RpY2tlcnN9fWdlbmVyYXRlU2NhblJlcXVlc3QoKXtjb25zdCBlPU9iamVjdC5hc3NpZ24oe30sdGhpcy5nZXRTY2FubmVyUGFyYW1zKCkpO2lmKGUuc3ltYm9scz10aGlzLl9nZXRTeW1ib2xzKCksZS5jb2x1bW5zPXRoaXMuZ2V0UmVxdWVzdENvbHVtbnMoKSxlLnNvcnQ9e3NvcnRCeTpoZSh0aGlzLl9zb3J0RmllbGQudmFsdWUoKXx8dGhpcy5faW5pdGlhbFNvcnRGaWVsZCx0aGlzLnNlbGVjdGVkSW50ZXJ2YWxJZCksc29ydE9yZGVyOnRoaXMuX3NvcnREaXJlY3Rpb24udmFsdWUoKXx8dGhpcy5faW5pdGlhbFNvcnREaXJlY3Rpb259LGUucHJlc2V0PXRoaXMucHJlc2V0LHdpbmRvdy5sYW5ndWFnZSYmKGUub3B0aW9uc3x8KGUub3B0aW9ucz17fSksZS5vcHRpb25zLmxhbmc9d2luZG93Lmxhbmd1YWdlKSx0aGlzLl9icmlkZ2Uub25XaWRnZXQmJiJmb3JleCIhPT10aGlzLm1hcmtldHNbMF0pe2NvbnN0IHQ9Rih0aGlzLnNjcmVlbmVyX3R5cGUpW3RoaXMubWFya2V0c1swXV07dCYmdC5zdG9ja3MmJnQuc3RvY2tzLmxlbmd0aCYmKGUuc3ltYm9scy5xdWVyeS5leGNoYW5nZXM9dC5zdG9ja3MubWFwKChlPT4iTllTRSBBUkNBIj09PWU/IkFNRVgiOmUpKSx0aGlzLl9icmlkZ2UudW5hdmFpbGFibGVXaWRnZXRFeGNoYW5nZXMmJnRoaXMuX2JyaWRnZS51bmF2YWlsYWJsZVdpZGdldEV4Y2hhbmdlcy5sZW5ndGgmJihlLnN5bWJvbHMucXVlcnkuZXhjaGFuZ2VzPXRoaXMuX2dldEZpbHRlcmVkRXhjaGFuZ2VzRm9yV2lkZ2V0KGUuc3ltYm9scy5xdWVyeS5leGNoYW5nZXMpKSl9aWYoZS5fZ3JvdXBzLmxlbmd0aD4wJiYoZS5zeW1ib2xzLmdyb3Vwcz1lLl9ncm91cHMpLGRlbGV0ZSBlLl9ncm91cHMsInByZWRlZmluZWRfZmlsdGVyIj09PXRoaXMuY3VycmVudEZpbHRlclNldElkKCkpe2NvbnN0IHQ9dGhpcy5nZXRGaWx0ZXJTZXRCeUlkKCJwcmVkZWZpbmVkX2ZpbHRlciIpO2lmKGUuc3ltYm9sc3x8KGUuc3ltYm9scz17fSksKDAsSC5tZXJnZSkoZS5zeW1ib2xzLHQuc3ltYm9scyksdC5jb250ZW50JiZ0LmNvbnRlbnQuZmlsdGVycylmb3IoY29uc3RbbyxpXW9mIE9iamVjdC5lbnRyaWVzKHQuY29udGVudC5maWx0ZXJzKSlpZihBcnJheS5pc0FycmF5KGkpKWZvcihsZXQgdD0wO3Q8aS5sZW5ndGg7Kyt0KXtjb25zdCBuPWlbdF07bi5vcGVyYXRvciYmIm5lcXVhbCI9PT1uLm9wZXJhdG9yJiZlLmZpbHRlci5wdXNoKHtsZWZ0Om8sb3BlcmF0aW9uOm4ub3BlcmF0b3IscmlnaHQ6bi52YWx1ZX0pfWVsc2V7bGV0IHQ9e307dm9pZCAwIT09aS5vcGVyYXRvciYmdm9pZCAwIT09aS52YWx1ZT90PXtsZWZ0Om8sb3BlcmF0aW9uOmkub3BlcmF0b3IscmlnaHQ6aS52YWx1ZX06dm9pZCAwIT09aSYmdm9pZCAwIT09aS5vcGVyYXRvcj8odD17bGVmdDpvLG9wZXJhdGlvbjppLm9wZXJhdG9yfSxpLnJpZ2h0JiZ2b2lkIDAhPT1pLnJpZ2h0JiYodC5yaWdodD1pLnJpZ2h0KSk6dm9pZCAwIT09aSYmKHQ9e2xlZnQ6byxvcGVyYXRpb246ImVxdWFsIixyaWdodDppfSksImVhcm5pbmdzX3JlbGVhc2VfbmV4dF9kYXRlLGVhcm5pbmdzX3JlbGVhc2VfZGF0ZSI9PT10LmxlZnQmJih0LmxlZnQ9ImVhcm5pbmdzX3JlbGVhc2VfZGF0ZSxlYXJuaW5nc19yZWxlYXNlX25leHRfZGF0ZSIpO2UuZmlsdGVyLnNvbWUoKGU9PigwLF9pLmRlZmF1bHQpKHQsZSl8fGUubGVmdD09PXQubGVmdCYmZS5vcGVyYXRpb249PT10Lm9wZXJhdGlvbikpfHxlLmZpbHRlci5wdXNoKHQpfX1mb3IobGV0IHQ9MDt0PGUuY29sdW1ucy5sZW5ndGg7Kyt0KWUuY29sdW1uc1t0XT1oZShlLmNvbHVtbnNbdF0sdGhpcy5zZWxlY3RlZEludGVydmFsSWQpO2lmKEl0W3RoaXMuc2VhcmNoRmllbGRdLnNlYXJjaFZhbHVlKXtjb25zdCB0PXtsZWZ0OiFJdC5kZXNjcmlwdGlvbi5kaXNhYmxlZCYmSXQuZGVzY3JpcHRpb24uY2hlY2tlZD9gJHt0aGlzLnNlYXJjaEZpZWxkfSxkZXNjcmlwdGlvbmA6dGhpcy5zZWFyY2hGaWVsZCxvcGVyYXRpb246Im1hdGNoIixyaWdodDpJdFt0aGlzLnNlYXJjaEZpZWxkXS5zZWFyY2hWYWx1ZX07ZS5maWx0ZXIucHVzaCh0KX1pZih0aGlzLl9icmlkZ2Uuc2NyZWVuZXJfZmllbGRfbWF0Y2gmJmUuZmlsdGVyLnB1c2goe2xlZnQ6dGhpcy5fYnJpZGdlLnNjcmVlbmVyX2ZpZWxkX21hdGNoLmZpZWxkLApvcGVyYXRpb246Im1hdGNoIixyaWdodDp0aGlzLl9icmlkZ2Uuc2NyZWVuZXJfZmllbGRfbWF0Y2gucGF0dGVybn0pLHRoaXMuX2JyaWRnZS5oaWRkZW5fZmlsdGVyJiYodGhpcy5fYnJpZGdlLmhpZGRlbl9maWx0ZXIuZmlsdGVyJiYoZS5maWx0ZXI9ZS5maWx0ZXIuY29uY2F0KHRoaXMuX2JyaWRnZS5oaWRkZW5fZmlsdGVyLmZpbHRlcikpLHRoaXMuX2JyaWRnZS5oaWRkZW5fZmlsdGVyLm9wdGlvbnMmJihlLm9wdGlvbnM9T2JqZWN0LmFzc2lnbihlLm9wdGlvbnN8fHt9LHRoaXMuX2JyaWRnZS5oaWRkZW5fZmlsdGVyLm9wdGlvbnMpKSksdGhpcy5zd2l0Y2hGaWx0ZXImJmUuZmlsdGVyLnB1c2godGhpcy5zd2l0Y2hGaWx0ZXIpLHRoaXMuX2N1cnJlbmN5U2VsZWN0KXtjb25zdCB0PXRoaXMuX2N1cnJlbmN5U2VsZWN0LmdldFByaWNlQ29udmVyc2lvbk9iamVjdCgpO3QmJihlLnByaWNlX2NvbnZlcnNpb249dCl9cmV0dXJuIHRoaXMuZW9kUmVzdHJpY3Rpb24udmFsdWUoKSE9PVdvLk5vbmU/ZS5vcHRpb25zLmRhdGFfcmVzdHJpY3Rpb25zPSJQUkVWX0JBUiI6ZGVsZXRlIGUub3B0aW9ucy5kYXRhX3Jlc3RyaWN0aW9ucyxlfWdldFJlcXVlc3RDb2x1bW5zKCl7Y29uc3QgZT1bZC5TdG9jayxkLlNlY3RvcixkLkluZHVzdHJ5XS5pbmNsdWRlcyh0aGlzLnNjcmVlbmVyX3R5cGUpP1siY3VycmVuY3kiLCJmdW5kYW1lbnRhbF9jdXJyZW5jeV9jb2RlIl06W107cmV0dXJuIEFycmF5LmZyb20obmV3IFNldChbLi4udGhpcy5maWVsZHNPcmRlci52YWx1ZSgpLC4uLnRoaXMuX3ZpZXcudGFibGUuYWRkaXRpb25hbENvbHVtbnMsLi4uZV0pKX1zY2FuKGUsdCxvLGk9ITEpe2lmKCFpJiZ0aGlzLl9icmlkZ2UudmlzaWJsZSYmITAhPT10aGlzLl9icmlkZ2UudmlzaWJsZS52YWx1ZSgpKXJldHVybjtjb25zdCBuPUpTT04uc3RyaW5naWZ5KGUpO3RoaXMubG9hZGluZz0hMCx0aGlzLmxvYWRpbmdTdGFydC5maXJlKHQmJiFvKTtjb25zdCByPURhdGUubm93KCkscz1mdW5jdGlvbihlKXtjb25zdCB0PWUubWFwKCgoZSx0KT0+W2UsdF0pKTtyZXR1cm4gbmV3IE1hcCh0KX0oZS5jb2x1bW5zKTtpZih0aGlzLl9icmlkZ2UuaXNVbmF2YWlsYWJsZVdpZGdldE1hcmtldClyZXR1cm4gdm9pZCB0aGlzLl92aWV3LmRpc3BsYXkoe2RhdGE6W119LHMpO2NvbnN0IGE9KHQsbyk9Pnt0aGlzLmxvYWRpbmc9ITE7Y29uc3QgaT1EYXRlLm5vdygpLXIsbj1KU09OLnBhcnNlKHQpO3RoaXMuX3Nob3VsZFJlcmVuZGVyKHQsZSkmJih0aGlzLl92aWV3LmRpc3BsYXkobixzLG8pLHRoaXMuX3ByZXZTY2FuRGF0YT10LHRoaXMuX3ByZXZSZXF1ZXN0RGF0YT0oMCxILmNsb25lKShlKSksdGhpcy5pc1NlcnZlclJlbmRlcigpJiZuLnJlcXVlc3QmJihuLnJlcXVlc3Quc3ltYm9scyYmbi5yZXF1ZXN0LnN5bWJvbHMudGlja2VycyYmKHRoaXMuX2luaXRUaWNrZXJzPW4ucmVxdWVzdC5zeW1ib2xzLnRpY2tlcnMsdGhpcy5fdGlja2Vycz10aGlzLl9pbml0VGlja2VycyksdGhpcy5fb3B0aW9ucz1uLnJlcXVlc3Qub3B0aW9ucyksdGhpcy5sb2FkaW5nQ29tcGxldGUuZmlyZSgpO2lmKG51bGwhPT1sb2NhdGlvbi5wYXRobmFtZS5tYXRjaCgvZWFybmluZ3NcL3swLDF9JC9pKSYmIXRoaXMuaXNTZXJ2ZXJSZW5kZXIoKSl7Y29uc3QgZT0iZXJyb3IiPT09bz8iZXJyb3IiOiJvayIsdD12b2lkIDAhPT1uLnN0YXR1cyYmMCE9PW4uc3RhdHVzP24uc3RhdHVzOiJlcnJvciI9PT1lPzQwMDoyMDA7RXMudGVsZW1ldHJ5LnNlbmRSZXBvcnQoImNhbGVuZGFycyIsImVhcm5pbmdzX2h0dHBfc3RhdHVzIix7dmFsdWU6dCxhZGRpdGlvbmFsOntzb3VyY2U6IlNjcmVlbmVyV2lkZ2V0In19KSxFcy50ZWxlbWV0cnkuc2VuZFJlcG9ydCgiY2FsZW5kYXJzIiwiZWFybmluZ3NfcmVzcG9uc2VfdGltZV9mcmFtZSIse3ZhbHVlOmksYWRkaXRpb25hbDp7c291cmNlOiJTY3JlZW5lcldpZGdldCJ9fSksRXMudGVsZW1ldHJ5LnNlbmRSZXBvcnQoImNhbGVuZGFycyIsYGVhcm5pbmdzXyR7ZX1gKX19LGw9KGUsdCk9Pntjb25zdCBvPURhdGUubm93KCktcjt0aGlzLmxvYWRpbmc9ITEsdGhpcy5fdmlldy5kaXNwbGF5KGUscyx0KSx0aGlzLmxvYWRpbmdDb21wbGV0ZS5maXJlKCk7aWYobnVsbCE9PWxvY2F0aW9uLnBhdGhuYW1lLm1hdGNoKC9lYXJuaW5nc1wvezAsMX0kL2kpJiYhdGhpcy5pc1NlcnZlclJlbmRlcigpKXtjb25zdCBpPSJlcnJvciI9PT10PyJlcnJvciI6Im9rIixuPXZvaWQgMCE9PWUuc3RhdHVzJiYwIT09ZS5zdGF0dXM/ZS5zdGF0dXM6ImVycm9yIj09PWk/NDAwOjIwMDtFcy50ZWxlbWV0cnkuc2VuZFJlcG9ydCgiY2FsZW5kYXJzIiwiZWFybmluZ3NfaHR0cF9zdGF0dXMiLHt2YWx1ZTpuLGFkZGl0aW9uYWw6e3NvdXJjZToiU2NyZWVuZXJXaWRnZXQifX0pLEVzLnRlbGVtZXRyeS5zZW5kUmVwb3J0KCJjYWxlbmRhcnMiLCJlYXJuaW5nc19yZXNwb25zZV90aW1lX2ZyYW1lIix7dmFsdWU6byxhZGRpdGlvbmFsOntzb3VyY2U6IlNjcmVlbmVyV2lkZ2V0In19KSxFcy50ZWxlbWV0cnkuc2VuZFJlcG9ydCgiY2FsZW5kYXJzIixgZWFybmluZ3NfJHtpfWApfX07dGhpcy5pc1NlcnZlclJlbmRlcigpP2Eod2luZG93LmluaXREYXRhLnNjcmVlbmVyX2RhdGEpOnRoaXMuX21hcmtlZFN5bWJvbHNGaWx0ZXImJnRoaXMuX21hcmtlZFN5bWJvbHNGaWx0ZXIuaXNBY3RpdmUoKSYmIXRoaXMuX3RpY2tlcnMubGVuZ3RoP3RoaXMuX3ZpZXcuZGlzcGxheSh7ZGF0YTpbXX0scyk6KHRoaXMuc2NhblJlcXVlc3QmJjQhPT10aGlzLnNjYW5SZXF1ZXN0LnJlYWR5U3RhdGUmJnRoaXMuc2NhblJlcXVlc3QuYWJvcnQoKSx0aGlzLnNjYW5SZXF1ZXN0PXRoaXMuX3NlbmRTY2FuUmVxdWVzdChuLGEpLHRoaXMuc2NhblJlcXVlc3QuZmFpbChsKSx0aGlzLnRyYWNrRXZlbnQoIlNjYW4gcmVxdWVzdCIpLHdpbmRvdy5pbml0RGF0YS5maWx0ZXJfaWQmJmRlbGV0ZSB3aW5kb3cuaW5pdERhdGEuZmlsdGVyX2lkKX1wcmV2ZW50UHJldlNjYW5SZXF1ZXN0KCl7dGhpcy5sb2FkaW5nJiZ0aGlzLnNjYW5SZXF1ZXN0JiYodGhpcy5zY2FuUmVxdWVzdC5hYm9ydCgpLAp0aGlzLnNjYW5SZXF1ZXN0PW51bGwpfV9zaG91bGRSZXJlbmRlcihlLHQpe3JldHVybiF0aGlzLl9pc1ByZXZTY2FuRGF0YUVxdWFsKGUpfHwhdGhpcy5faXNQcmV2UmVxdWVzdERhdGFFcXVhbCh0KX1faXNQcmV2U2NhbkRhdGFFcXVhbChlKXtyZXR1cm4gdGhpcy5fcHJldlNjYW5EYXRhPT09ZX1faXNQcmV2UmVxdWVzdERhdGFFcXVhbChlKXtyZXR1cm4oMCxfaS5kZWZhdWx0KShlLHRoaXMuX3ByZXZSZXF1ZXN0RGF0YSl9aXNGaWVsZFNldENoYW5nZWQoKXtpZih0aGlzLl9icmlkZ2Uub25XaWRnZXQpcmV0dXJuITE7Y29uc3QgZT10aGlzLmN1cnJlbnRGaWVsZFNldElkKCksdD1lJiZ0aGlzLmdldEZpZWxkU2V0QnlJZChlKTtpZighZXx8IXQpcmV0dXJuITA7Y29uc3Qgbz10LmNvbnRlbnQuc2xpY2UoKS5maWx0ZXIoS3MpLGk9dGhpcy5maWVsZHNPcmRlci52YWx1ZSgpLnNsaWNlKCkuZmlsdGVyKEtzKSxuPSFJdC50eXBlLmRpc2FibGVkJiYtMSE9PXQuY29udGVudC5pbmRleE9mKCJ0eXBlIikhPT1JdC50eXBlLmNoZWNrZWQscj0hSXQuZGVzY3JpcHRpb24uZGlzYWJsZWQmJi0xIT09dC5jb250ZW50LmluZGV4T2YoImRlc2NyaXB0aW9uIikhPT1JdC5kZXNjcmlwdGlvbi5jaGVja2VkO3JldHVybiBvLmpvaW4oKSE9PWkuam9pbigpfHxufHxyfWFwcGx5RmllbGRTZXRDb250ZW50KGUpe2Zvcihjb25zdCB0IGluIEl0KUl0W3RdLmNoZWNrZWQ9LTEhPT1lLmluZGV4T2YodCk7dGhpcy5maWVsZFNldENoYW5nZWQuZmlyZShlLmZpbHRlcigoZT0+ITAhPT1JdFtlXS5oaWRkZW5Db2x1bW4pKSl9YXBwbHlGaWVsZFNldEltcGwoZSx0LG89ITApe2NvbnN0IGk9dGhpcy5nZXRGaWVsZFNldEJ5SWQoZSksbj1pLmNvbnRlbnQuZmlsdGVyKChlPT5JdFtlXSYmIUl0W2VdLmRpc2FibGVkKSk7aWYodGhpcy5hcHBseUZpZWxkU2V0Q29udGVudChuKSx0fHx0aGlzLnVwZGF0ZSgpLHRoaXMuX3ZpZXcuc2V0RmllbGRTZXQoZSksdGhpcy5zZXR0aW5nc1NhdmVyLnNldFZhbHVlKHRoaXMuc2V0dGluZ0tleSsiLmZpZWxkU2V0SWQiLGkuaWQse2ZvcmNlRmx1c2g6ITB9KSx0aGlzLl92aWV3LnVwZGF0ZUZhdm9yaXRlc1Rvb2xiYXIoKSwhdCl7Y29uc3QgdD10aGlzLmRlZmF1bHRGaWVsZFNldHMuZmluZCgodD0+dC5pZD09PWUpKT9lOiJjdXN0b20iO3RoaXMudHJhY2tFdmVudChgQXBwbHkgZmllbGQgc2V0ICR7dH1gKX1vJiZ0aGlzLl9zZW5kWFdpbmRvd0V2ZW50KCJzY3JlZW5lci5hcHBseS1maWVsZC1zZXQiLEpTT04uc3RyaW5naWZ5KHtzZXRJZDplLGluaXRpYWw6dCxzZXR0aW5nS2V5OnRoaXMuc2V0dGluZ0tleX0pKX1hcHBseUZpZWxkU2V0KGUsdCxpKXt0fHxpfHwhdGhpcy5pc0ZpZWxkU2V0Q2hhbmdlZCgpP3RoaXMuYXBwbHlGaWVsZFNldEltcGwoZSx0KTpuZXcgUHJvbWlzZSgoZT0+e3RoaXMuX2JyaWRnZS5vbldpZGdldD9lKCk6dGhpcy5fdmlldy5fcG9wdXBzLnNob3dDb25maXJtRGlhbG9nKG8uaTE4bmV4dChudWxsLHZvaWQgMCxvKDcxNzM1MCkpKS50aGVuKCh0PT57dD90aGlzLl92aWV3LnBvcHVwcy5jb25maXJtQW5kU2F2ZUN1cnJlbnRGaWVsZFNldCgpLnRoZW4oZSwodD0+e3QmJmpzLmxvZ0Vycm9yKHQpLGUoKX0pKTplKCl9KSl9KSkudGhlbigoKCk9Pnt0aGlzLmFwcGx5RmllbGRTZXRJbXBsKGUsdCl9KSl9aXNGaWx0ZXJTZXRDaGFuZ2VkKCl7aWYodGhpcy5fYnJpZGdlLm9uV2lkZ2V0KXJldHVybiExO2NvbnN0IGU9dGhpcy5jdXJyZW50RmlsdGVyU2V0SWQoKSx0PWUmJnRoaXMuZ2V0RmlsdGVyU2V0QnlJZChlKTtpZighZXx8IXQpcmV0dXJuITA7Y29uc3Qgbz10aGlzLm1hcmtldHN8fFt0aGlzLm1hcmtldF07WyJmb3JleCIsImNyeXB0byJdLmluY2x1ZGVzKG9bMF0pJiZkZWxldGUgdC5jb250ZW50LmZpbHRlcnMuaXNfcHJpbWFyeTtjb25zdCBpPXRoaXMuY3VycmVudEZpbHRlclN0YXRlKCksbj17fTtpZih0LmNvbnRlbnQuZmlsdGVycylmb3IoY29uc3QgZSBvZiBPYmplY3Qua2V5cyh0LmNvbnRlbnQuZmlsdGVycykpe2NvbnN0IG89dC5jb250ZW50LmZpbHRlcnNbZV0saT1tdChvLm9wZXJhdG9yKSxyPW10KG8udmFsdWUpOyhpJiZyfHwhaSYmIXIpJiYobltlXT1vKX1pZih0LmNvbnRlbnQub3B0aW9ucyYmaS5vcHRpb25zKXtpZihpLm9wdGlvbnMuYWN0aXZlX3N5bWJvbHNfb25seSE9PXQuY29udGVudC5vcHRpb25zLmFjdGl2ZV9zeW1ib2xzX29ubHkpcmV0dXJuITB9Y29uc3Qgcj1pLmZpbHRlcnMscz1PYmplY3Qua2V5cyhuKS5jb25jYXQoT2JqZWN0LmtleXMocikpLmZpbHRlcigoKGUsdCxvKT0+by5pbmRleE9mKGUpPT09dCkpO2ZvcihsZXQgZT0wO2U8cy5sZW5ndGg7KytlKXtjb25zdCB0PXNbZV07aWYoIW4uaGFzT3duUHJvcGVydHkodCl8fCFyLmhhc093blByb3BlcnR5KHQpKXJldHVybiEwO2lmKEFycmF5LmlzQXJyYXkoblt0XSleQXJyYXkuaXNBcnJheShyW3RdKSlyZXR1cm4hMDtpZihBcnJheS5pc0FycmF5KG5bdF0pJiZBcnJheS5pc0FycmF5KHJbdF0pJiZuW3RdLnNvcnQodGhpcy5udW1lcmljU29ydGVyKS5qb2luKCkhPT1yW3RdLnNvcnQodGhpcy5udW1lcmljU29ydGVyKS5qb2luKCl8fCFBcnJheS5pc0FycmF5KG5bdF0pJiYhKDAsX2kuZGVmYXVsdCkoblt0XSxyW3RdKSlyZXR1cm4hMH1yZXR1cm4hISh0LmNvbnRlbnQuc29ydF9kaXJlY3Rpb24mJnQuY29udGVudC5zb3J0X2RpcmVjdGlvbiE9PWkuc29ydF9kaXJlY3Rpb258fHQuY29udGVudC5zb3J0X2ZpZWxkJiZ0LmNvbnRlbnQuc29ydF9maWVsZCE9PWkuc29ydF9maWVsZCl9Y3VycmVudEZpbHRlclN0YXRlKCl7Y29uc3QgZT17fTtmb3IoY29uc3QgdCBpbiBJdCl7Y29uc3Qgbz1JdFt0XS52YWx1ZTtpZihbImlzX3ByaW1hcnkiLCJhY3RpdmVfc3ltYm9sIl0uaW5jbHVkZXModCkpe2lmKCFvKWNvbnRpbnVlO2VbdF09e29wZXJhdG9yOiJlcXVhbCIsdmFsdWU6ITB9Cn1lbHNlIEl0W3RdLmNvbnRyb2wmJm8mJigib2JqZWN0Ij09dHlwZW9mIG8/ImNvbmRpdGlvbiI9PT1JdFt0XS5jb250cm9sP210KG8ub3BlcmF0b3IpfHxtdChvLnZhbHVlKXx8KGVbdF09byk6T2JqZWN0LmtleXMobykuc29tZSgoZT0+ISFvW2VdKSkmJihlW3RdPW8pOmVbdF09byl9cmV0dXJue2ZpbHRlcnM6ZSxzb3J0X2ZpZWxkOnRoaXMuX3NvcnRGaWVsZC52YWx1ZSgpfHx0aGlzLl9pbml0aWFsU29ydEZpZWxkLHNvcnRfZGlyZWN0aW9uOnRoaXMuX3NvcnREaXJlY3Rpb24udmFsdWUoKXx8dGhpcy5faW5pdGlhbFNvcnREaXJlY3Rpb24sb3B0aW9uczp0aGlzLl9vcHRpb25zfX1zYXZlRmllbGRTZXQoZSx0KXtyZXR1cm4gdGhpcy5fdmlldy4kZmllbGRTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJpLWRpc2FibGVkIiwhMCksZS50eXBlPSJmaWVsZFNldCIsZS5zY3JlZW5lcl90eXBlPXRoaXMuc2NyZWVuZXJfdHlwZSx0aGlzLnNhdmVTZXQoZSx0KS50aGVuKCh0PT57dGhpcy5fdmlldy4kZmllbGRTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJpLWRpc2FibGVkIiwhMSk7Y29uc3Qgbz10JiZ0LmlkJiZgJHt0LmlkfWA7cmV0dXJuIGUuZGVsZXRlfHx0aGlzLmZpZWxkU2V0U2F2ZWQuZmlyZSgpLHRoaXMuX3NlbmRYV2luZG93RXZlbnQoInNjcmVlbmVyLnNhdmUtZmllbGQtc2V0IixKU09OLnN0cmluZ2lmeSh7c2V0SWQ6ZS5kZWxldGU/IiI6byxzZXR0aW5nS2V5OnRoaXMuc2V0dGluZ0tleX0pKSx0aGlzLmFwcGx5RmllbGRTZXRJbXBsKG8pLHR9KSl9c2F2ZUZpbHRlclNldChlLHQpe3JldHVybiB0aGlzLl92aWV3LiRmaWx0ZXJTZXRzQnV0dG9uLnRvZ2dsZUNsYXNzKCJpLWRpc2FibGVkIiwhMCksZS50eXBlPSJmaWx0ZXJTZXQiLGUuc2NyZWVuZXJfdHlwZT10aGlzLnNjcmVlbmVyX3R5cGUsZS5tYXJrZXRzPXRoaXMubWFya2V0cyx0aGlzLnNhdmVTZXQoZSx0KS50aGVuKCh0PT4odGhpcy5fdmlldy4kZmlsdGVyU2V0c0J1dHRvbi50b2dnbGVDbGFzcygiaS1kaXNhYmxlZCIsITEpLGUuc2V0SWQ9dCYmdC5pZCYmYCR7dC5pZH1gLHRoaXMuYXBwbHlGaWx0ZXJTZXQodC5pZCksZS5kZWxldGU/dGhpcy5maWx0ZXJTZXREZWxldGVkLmZpcmUoZS5zZXRJZCk6dGhpcy5maWx0ZXJTZXRTYXZlZC5maXJlKGUuc2V0SWQsZS5tYXJrZXRzLCEhZS5jb250ZW50KSx0aGlzLl9zZW5kWFdpbmRvd0V2ZW50KCJzY3JlZW5lci5zYXZlLWZpbHRlci1zZXQiLEpTT04uc3RyaW5naWZ5KHtzZXRJZDplLmRlbGV0ZT8iIjplLnNldElkLHNldHRpbmdLZXk6dGhpcy5zZXR0aW5nS2V5fSkpLHQpKSl9c2F2ZVNldChlLHQpe3JldHVybiBQcm9taXNlLnJlc29sdmUoe3R5cGU6IlBPU1QiLHVybDoiL3NjcmVlbmVyL3NhdmUvIixkYXRhOmV9KS50aGVuKFZzLmFqYXgpLnRoZW4oKGU9PihlLmVycm9yP2pzLmxvZ0Vycm9yKGUuZXJyb3IpOnQmJnRoaXMudHJhY2tFdmVudCh0KSx0aGlzLmdldFVzZXJTZXR0aW5ncygpLnRoZW4oKCgpPT5lKSkpKSl9X2lzRXhjaGFuZ2VSZWxldmFudChlKXtyZXR1cm4gQXJyYXkuaXNBcnJheShlLnZhbHVlKT9lLnZhbHVlLmV2ZXJ5KCh0PT5lLnJhbmdlLmluY2x1ZGVzKHQpKSk6ZS5yYW5nZS5pbmNsdWRlcyhlLnZhbHVlKX1faXNTdWJtYXJrZXRSZWxldmFudChlKXtyZXR1cm4oQXJyYXkuaXNBcnJheShlLnZhbHVlKT9lLnZhbHVlOltlLnZhbHVlXSkuZXZlcnkoKHQ9PmUucmFuZ2UuaW5jbHVkZXModCkpKX1hcHBseUZpbHRlclNldChlLHQsbz0hMCl7Y29uc3QgaT10aGlzLmdldEZpbHRlclNldEJ5SWQoZSk7aWYoaSl7aS5jb250ZW50LnNvcnRfZmllbGQmJnRoaXMuX3NvcnRGaWVsZC5zZXRWYWx1ZShpLmNvbnRlbnQuc29ydF9maWVsZCksaS5jb250ZW50LnNvcnRfZGlyZWN0aW9uJiZ0aGlzLl9zb3J0RGlyZWN0aW9uLnNldFZhbHVlKGkuY29udGVudC5zb3J0X2RpcmVjdGlvbiksdGhpcy5fb3B0aW9ucz1PYmplY3QuYXNzaWduKHt9LGkuY29udGVudC5vcHRpb25zKTtmb3IoY29uc3QgZSBpbiBJdClpLmNvbnRlbnQuZmlsdGVycyYmZSBpbiBpLmNvbnRlbnQuZmlsdGVycz8oImNvbmRpdGlvbiI9PT1JdFtlXS5jb250cm9sJiZBcnJheS5pc0FycmF5KGkuY29udGVudC5maWx0ZXJzW2VdKSYmMj09PWkuY29udGVudC5maWx0ZXJzW2VdLmxlbmd0aCYmKGkuY29udGVudC5maWx0ZXJzW2VdPXtvcGVyYXRvcjoiaW5fcmFuZ2UiLHZhbHVlOmkuY29udGVudC5maWx0ZXJzW2VdfSksSXRbZV0udmFsdWU9KDAsSC5jbG9uZSkoaS5jb250ZW50LmZpbHRlcnNbZV0pLCJzdWJtYXJrZXQiIT09ZXx8IUl0W2VdLmRpc2FibGVkJiZ0aGlzLl9pc1N1Ym1hcmtldFJlbGV2YW50KEl0W2VdKXx8KEl0W2VdLnZhbHVlPW51bGwpLCJpc19wcmltYXJ5Ij09PWUmJkl0W2VdLmRpc2FibGVkJiYoSXRbZV0udmFsdWU9bnVsbCksImNvbmRpdGlvbiI9PT1JdFtlXS5jb250cm9sJiZJdFtlXS52YWx1ZSYmKG10KEl0W2VdLnZhbHVlLnZhbHVlKXx8bXQoSXRbZV0udmFsdWUub3BlcmF0b3IpKSYmKEl0W2VdLnZhbHVlPW51bGwpLCJleGNoYW5nZSIhPT1lfHx0aGlzLl9pc0V4Y2hhbmdlUmVsZXZhbnQoSXRbZV0pfHwoSXRbZV0udmFsdWU9bnVsbCkpOiExIT09SXRbZV0ucmVzZXR0YWJsZUZpbHRlciYmKEl0W2VdLnZhbHVlPW51bGwpLHRoaXMuX3ZpZXcuX3Jlc2V0RmllbGQoZSwhMSwhMCk7dGhpcy5fb3B0aW9ucy5oYXNPd25Qcm9wZXJ0eSgiYWN0aXZlX3N5bWJvbHNfb25seSIpJiYoITA9PT10aGlzLl9vcHRpb25zLmFjdGl2ZV9zeW1ib2xzX29ubHkmJihJdC5hY3RpdmVfc3ltYm9sLnZhbHVlPSEwKSxkZWxldGUgdGhpcy5fb3B0aW9ucy5hY3RpdmVfc3ltYm9sc19vbmx5KSx0aGlzLnNhdmVGaWx0ZXJzU2V0dGluZ3MoKSwhMD09PXQ/KHRoaXMuX3ZpZXcuc2V0RmlsdGVyU2V0KGUpLHRoaXMuZmlsdGVyU2V0Q2hhbmdlZC5maXJlKGUpKTp0aGlzLnVwZGF0ZUltcGwoKCgpPT57dGhpcy5fdmlldy5zZXRGaWx0ZXJTZXQoZSksdGhpcy5maWx0ZXJTZXRDaGFuZ2VkLmZpcmUoZSl9KSxudWxsLCEwKSx0aGlzLnNldHRpbmdzU2F2ZXIuc2V0VmFsdWUodGhpcy5zZXR0aW5nS2V5KyIuZmlsdGVyU2V0SWQiLGkuaWQsewpmb3JjZUZsdXNoOiEwfSksdGhpcy50cmFja0V2ZW50KCJBcHBseSBmaWx0ZXIgc2V0IiksbyYmdGhpcy5fc2VuZFhXaW5kb3dFdmVudCgic2NyZWVuZXIuYXBwbHktZmlsdGVyLXNldCIsSlNPTi5zdHJpbmdpZnkoe3NldElkOmUsZG9Ob3RVcGRhdGU6dCxzZXR0aW5nS2V5OnRoaXMuc2V0dGluZ0tleX0pKX19c2F2ZUZpbHRlcnNTZXR0aW5ncygpe3RoaXMuc2V0dGluZ3NTYXZlci5zZXRWYWx1ZSh0aGlzLnNldHRpbmdLZXkrIi5zb3J0X2RpcmVjdGlvbiIsdGhpcy5fc29ydERpcmVjdGlvbi52YWx1ZSgpfHx0aGlzLl9pbml0aWFsU29ydERpcmVjdGlvbiksdGhpcy5zZXR0aW5nc1NhdmVyLnNldFZhbHVlKHRoaXMuc2V0dGluZ0tleSsiLnNvcnRfZmllbGQiLHRoaXMuX3NvcnRGaWVsZC52YWx1ZSgpfHx0aGlzLl9pbml0aWFsU29ydEZpZWxkKX1nZXRVc2VyU2V0dGluZ3MoKXtjb25zdCBlPXtmaWx0ZXJTZXRzOltdLGZpZWxkU2V0czpbXX07cmV0dXJuIHRoaXMuaXNTZXJ2ZXJSZW5kZXIoKT90aGlzLmZhdm9yaXRlRmllbGRTZXRzPXRoaXMuZGVmYXVsdEZpZWxkU2V0cy5tYXAoKGU9PmUuaWQpKTp0aGlzLmZhdm9yaXRlRmllbGRTZXRzPXRoaXMuc2V0dGluZ3NTYXZlci5nZXRKU09OKHRoaXMuc2V0dGluZ0tleSsiLmZhdm9yaXRlRmllbGRTZXRzIix0aGlzLmRlZmF1bHRGaWVsZFNldHMubWFwKChlPT5lLmlkKSkpLHdpbmRvdy5pc19hdXRoZW50aWNhdGVkP25ldyBQcm9taXNlKCh0PT57VnMuZ2V0KCIvc2NyZWVuZXIvc2V0dGluZ3MvIix7c2NyZWVuZXJfdHlwZTp0aGlzLnNjcmVlbmVyX3R5cGV9KS5kb25lKChvPT57KG89b3x8ZSkuZmlsdGVyU2V0cz1vLmZpbHRlclNldHMubWFwKChlPT57Y29uc3QgdD1KU09OLnBhcnNlKGUuY29udGVudCk7dmFyIG87cmV0dXJuIHQuZmlsdGVycz0obz10LmZpbHRlcnMsT2JqZWN0LmtleXMobykuZm9yRWFjaCgoZT0+e2NvbnN0IHQ9b1tlXTsibWFya2V0X2NhcF9iYXNpYyI9PT1lJiYibmVtcHR5Ij09PXQub3BlcmF0aW9uJiZkZWxldGUgb1tlXX0pKSxvKSx7aWQ6ZS5pZCsiIix0aXRsZTplLnRpdGxlLGNvbnRlbnQ6dH19KSksby5maWVsZFNldHM9by5maWVsZFNldHMubWFwKChlPT4oe2lkOmUuaWQrIiIsdGl0bGU6ZS50aXRsZSxjb250ZW50OkpTT04ucGFyc2UoZS5jb250ZW50KX0pKSksdGhpcy5zZXR0aW5ncz1vLHQoKX0pKX0pKToodGhpcy5zZXR0aW5ncz1lLFByb21pc2UucmVzb2x2ZSgpKX1nZXRGaWVsZFNldEJ5SWQoZSl7Y29uc3QgdD10PT50LmlkPT1lLG89dGhpcy5kZWZhdWx0RmllbGRTZXRzLmZpbmQodCl8fCh0aGlzLnNldHRpbmdzP3RoaXMuc2V0dGluZ3MuZmllbGRTZXRzLmZpbmQodCk6bnVsbCk7cmV0dXJuIG8/T2JqZWN0LmFzc2lnbih7fSxvLHt0aXRsZTpibyhvLnRpdGxlLCEwKX0pOm51bGx9Z2V0RmlsdGVyU2V0QnlJZChlKXtpZigicHJlZGVmaW5lZF9maWx0ZXIiPT09ZSlyZXR1cm4gdGhpcy5fYnJpZGdlLnByZWRlZmluZWRfZmlsdGVyO2NvbnN0IHQ9dD0+dC5pZD09ZSxvPVp0LmZpbmQodCl8fCh0aGlzLnNldHRpbmdzP3RoaXMuc2V0dGluZ3MuZmlsdGVyU2V0cy5maW5kKHQpOm51bGwpO3JldHVybiBvP09iamVjdC5hc3NpZ24oe30sbyx7dGl0bGU6Ym8oby50aXRsZSwhMCl9KTpudWxsfWFkZEZhdm9yaXRlRmllbGRTZXQoZSl7LTE9PT10aGlzLmZhdm9yaXRlRmllbGRTZXRzLmluZGV4T2YoZSkmJnRoaXMuZmF2b3JpdGVGaWVsZFNldHMucHVzaChlKSx0aGlzLnNldHRpbmdzU2F2ZXIuc2V0SlNPTih0aGlzLnNldHRpbmdLZXkrIi5mYXZvcml0ZUZpZWxkU2V0cyIsdGhpcy5mYXZvcml0ZUZpZWxkU2V0cyx7Zm9yY2VGbHVzaDohMH0pLHRoaXMuX3ZpZXcudXBkYXRlRmF2b3JpdGVzVG9vbGJhcigpLHRoaXMudHJhY2tFdmVudCgiQWRkIGZpZWxkIHNldCB0byBmYXZvcml0ZXMiKSx0aGlzLl9zZW5kWFdpbmRvd0V2ZW50KCJzY3JlZW5lci5hZGQtZmllbGQtc2V0LXRvLWZhdm9yaXRlcyIsSlNPTi5zdHJpbmdpZnkoe3NldHRpbmdLZXk6dGhpcy5zZXR0aW5nS2V5LGRhdGU6RGF0ZS5ub3coKX0pKX1yZW1vdmVGYXZvcml0ZUZpZWxkU2V0KGUpe3RoaXMuZmF2b3JpdGVGaWVsZFNldHM9dGhpcy5mYXZvcml0ZUZpZWxkU2V0cy5maWx0ZXIoKHQ9PnQhPT1lKSksdGhpcy5zZXR0aW5nc1NhdmVyLnNldEpTT04odGhpcy5zZXR0aW5nS2V5KyIuZmF2b3JpdGVGaWVsZFNldHMiLHRoaXMuZmF2b3JpdGVGaWVsZFNldHMse2ZvcmNlRmx1c2g6ITB9KSx0aGlzLl92aWV3LnVwZGF0ZUZhdm9yaXRlc1Rvb2xiYXIoKSx0aGlzLl9zZW5kWFdpbmRvd0V2ZW50KCJzY3JlZW5lci5yZW1vdmUtZmllbGQtc2V0LWZyb20tZmF2b3JpdGVzIixKU09OLnN0cmluZ2lmeSh7c2V0dGluZ0tleTp0aGlzLnNldHRpbmdLZXksZGF0ZTpEYXRlLm5vdygpfSkpfWN1cnJlbnRGaWVsZFNldElkKCl7cmV0dXJuIHRoaXMuaXNTZXJ2ZXJSZW5kZXIoKT93aW5kb3cuaW5pdERhdGEuZmllbGRzZXRfaWQ6dGhpcy5zZXR0aW5nc1NhdmVyLmdldFZhbHVlKHRoaXMuc2V0dGluZ0tleSsiLmZpZWxkU2V0SWQiLHRoaXMuZGVmYXVsdEZpZWxkU2V0c1swXS5pZCl9Y3VycmVudEZpbHRlclNldElkKCl7Y29uc3QgZT1adC5maW5kKChlPT5lLmhhc093blByb3BlcnR5KCJkaXNhYmxlZCIpJiYhZS5kaXNhYmxlZCkpfHxadFswXTtyZXR1cm4gd2luZG93LmluaXREYXRhLmZpbHRlcl9pZHx8dGhpcy5zZXR0aW5nc1NhdmVyLmdldFZhbHVlKHRoaXMuc2V0dGluZ0tleSsiLmZpbHRlclNldElkIixlLmlkKX1nZXRDdXJyZW50U3RhdGUoKXtyZXR1cm57cmVxdWVzdFBhcmFtczp0aGlzLl9wcmV2UmVxdWVzdHx8Im5vbmUiLGZpZWxkU2V0OnRoaXMuY3VycmVudEZpZWxkU2V0SWQoKSxmaWx0ZXJTZXQ6dGhpcy5jdXJyZW50RmlsdGVyU2V0SWQoKX19dHJhY2tFdmVudChlKXsoMCx3cy50cmFja0V2ZW50KSgiU2NyZWVuZXIiLGUsdGhpcy5tYXJrZXRzLmpvaW4oIiwiKSsiICIrKHRoaXMuX2JyaWRnZS5zdGFuZGFsb25lPyJzdGFuZGFsb25lIjoib24gY2hhcnQiKSl9bnVtZXJpY1NvcnRlcihlLHQpe3JldHVybiBlPnQ/MTotMX1pbnZhbGlkYXRlUmVxdWVzdCgpewpkZWxldGUgdGhpcy5fcHJldlJlcXVlc3R9Z2V0IHNlbGVjdGVkSW50ZXJ2YWxJZCgpe2lmKCF0aGlzLl9icmlkZ2UuaGlkZV9jb250cm9scyl7aWYodGhpcy5lb2RSZXN0cmljdGlvbi52YWx1ZSgpIT09V28uTm9uZSlyZXR1cm4iMUQiO2NvbnN0IGU9dGhpcy5zZXR0aW5nc1NhdmVyLmdldFZhbHVlKGAke3RoaXMuc2V0dGluZ0tleX0uaW50ZXJ2YWwtaWRgLGNlKTtyZXR1cm4odGhpcy5fYnJpZGdlLm9uV2lkZ2V0fHwoMCxIby5lbmFibGVkKShYby5Qcm9kdWN0RmVhdHVyZXNFbnVtLlNDUkVFTkVSX0lOVEVSVkFMUykmJi0xIT09KDAsSG8uZ2V0Q29uZmlnKShYby5Qcm9kdWN0RmVhdHVyZXNFbnVtLlNDUkVFTkVSX0lOVEVSVkFMUykuaW50ZXJ2YWwuaW5kZXhPZihlKSkmJmRlKGUpP2U6Y2V9fXNldFNlbGVjdGVkSW50ZXJ2YWxJZChlKXt0aGlzLnNldHRpbmdzU2F2ZXIuc2V0VmFsdWUoYCR7dGhpcy5zZXR0aW5nS2V5fS5pbnRlcnZhbC1pZGAsZSx7Zm9yY2VGbHVzaDohMH0pLHRoaXMuX3NlbmRYV2luZG93RXZlbnQoInNjcmVlbmVyLmNoYW5nZS1zZWxlY3RlZC1pbnRlcnZhbC1pZCIsSlNPTi5zdHJpbmdpZnkoe3NldHRpbmdLZXk6dGhpcy5zZXR0aW5nS2V5LGlkOmV9KSk7Y29uc3QgdD1kZShlKTt0JiZ0aGlzLnRyYWNrRXZlbnQoYEFwcGx5IHRpbWVmcmFtZSAke3QuaWR9YCl9Z2V0IHNlbGVjdGVkR3JvdXBzKCl7cmV0dXJuIEpTT04ucGFyc2UodGhpcy5zZXR0aW5nc1NhdmVyLmdldFZhbHVlKGAke0dzfS5zY3JlZW5lci1mb3JleC5ncm91cHNgLCdbIk1ham9yIiwiTWlub3IiXScpKS5tYXAoKGU9Pmh0W2VdfHxlKSl9c2V0U2VsZWN0ZWRHcm91cHMoZSl7Y29uc3QgdD1PYmplY3Qua2V5cyhodCksbz1lLm1hcCgoZT0+dC5maW5kKCh0PT5odFt0XT09PWUpKXx8ZSkpO3RoaXMuc2V0dGluZ3NTYXZlci5zZXRWYWx1ZShgJHtHc30uc2NyZWVuZXItZm9yZXguZ3JvdXBzYCxKU09OLnN0cmluZ2lmeShvKSx7Zm9yY2VGbHVzaDohMH0pLHRoaXMudHJhY2tFdmVudCgiQ2hhbmdlIHNlbGVjdGVkIGdyb3VwcyIpfXNldCBtYXJrZXRzKGUpe2NvbnN0IHQ9QXJyYXkuaXNBcnJheShlKT9lOltlXSxvPUpTT04uc3RyaW5naWZ5KHQpO3RoaXMuc2V0dGluZ3NTYXZlci5zZXRWYWx1ZShgJHtHc30uJHt0aGlzLnNldHRpbmdLZXl9Lm1hcmtldGAsbyx7Zm9yY2VGbHVzaDohMH0pLHRoaXMudHJhY2tFdmVudCgiQ2hhbmdlIG1hcmtldCIpLHRoaXMuX3NlbmRYV2luZG93RXZlbnQoInNjcmVlbmVyLm1hcmtldC1jaGFuZ2VkIixKU09OLnN0cmluZ2lmeSh7c2V0dGluZ0tleTp0aGlzLnNldHRpbmdLZXksZGF0ZTpEYXRlLm5vdygpfSkpfWdldCBwcmVzZXQoKXtyZXR1cm4gd2luZG93LmluaXREYXRhLnNjcmVlbmVyX3ByZXNldH1nZXQgbWFya2V0cygpe2NvbnN0IGU9ZnVuY3Rpb24oZSx0PSJzdG9jayIpe3JldHVybiJmb3JleCI9PT10PyJmb3JleCI6ImNyeXB0byI9PT10PyJjcnlwdG8iOmsoZSl9KEdzLHRoaXMuc2NyZWVuZXJfdHlwZSksdD1PYmplY3Qua2V5cyhQKHRoaXMuc2NyZWVuZXJfdHlwZSkpLG89dGhpcy5zZXR0aW5nc1NhdmVyLmdldFZhbHVlKGAke0dzfS4ke3RoaXMuc2V0dGluZ0tleX0ubWFya2V0YCxKU09OLnN0cmluZ2lmeShbZV0pKTtsZXQgaTtpZih0aGlzLnNldHRpbmdzU2F2ZXIuZ2V0Qm9vbChgJHtHc30uJHt0aGlzLnNldHRpbmdLZXl9LmlzLWVudGlyZS13b3JsZGAsITEpKWk9dDtlbHNlIHRyeXtpPUpTT04ucGFyc2UobyksQXJyYXkuaXNBcnJheShpKSYmIWkuc29tZSgoZT0+IXQuaW5jbHVkZXMoZSkpKXx8KGk9W2VdKX1jYXRjaChuKXtpPW4gaW5zdGFuY2VvZiBTeW50YXhFcnJvciYmdC5pbmNsdWRlcyhvKT9bb106W2VdfWlmKHdpbmRvdy5pbml0RGF0YS5zY3JlZW5lcl9tYXJrZXQpcmV0dXJuW3dpbmRvdy5pbml0RGF0YS5zY3JlZW5lcl9tYXJrZXRdO2lmKCEoMCxlcy5pc0dsb2JhbFNjcmVlbmVyQXZhaWxhYmxlKSgpJiZpLmxlbmd0aD4xKXJldHVybiBpPVtlXSxpO3JldHVybiBpLmV2ZXJ5KChlPT50LmluY2x1ZGVzKGUpKSk/aTpbZV19c2V0IGlzRW50aXJlV29ybGQoZSl7dGhpcy5zZXR0aW5nc1NhdmVyLnNldFZhbHVlKGAke0dzfS4ke3RoaXMuc2V0dGluZ0tleX0uaXMtZW50aXJlLXdvcmxkYCxlLHtmb3JjZUZsdXNoOiEwfSl9Z2V0IGlzRW50aXJlV29ybGQoKXtjb25zdCBlPXRoaXMuc2V0dGluZ3NTYXZlci5nZXRCb29sKGAke0dzfS4ke3RoaXMuc2V0dGluZ0tleX0uaXMtZW50aXJlLXdvcmxkYCwhMSk7cmV0dXJuISghKDAsZXMuaXNHbG9iYWxTY3JlZW5lckF2YWlsYWJsZSkoKSYmdGhpcy5tYXJrZXRzLmxlbmd0aD4xKSYmZX1nZXQgdGltZXpvbmUoKXtyZXR1cm4gZnVuY3Rpb24oZSl7Y29uc3QgdD1GKCJzdG9jayIpW2VdO3JldHVybiB0P3QudGltZXpvbmU6bnVsbH0odGhpcy5tYXJrZXRzWzBdKX1fdmVyaWZ5QWxsU2V0c0NoYW5nZXMoZSl7cmV0dXJuKCEwPT09ZT9Qcm9taXNlLnJlc29sdmUoKTpuZXcgUHJvbWlzZSgoKGUsdCk9Pnt0aGlzLl9icmlkZ2Uub25XaWRnZXQ/ZSgpOnRoaXMuaXNGaWVsZFNldENoYW5nZWQoKT90aGlzLl92aWV3LnBvcHVwcy5zaG93Q29uZmlybURpYWxvZyhvLmkxOG5leHQobnVsbCx2b2lkIDAsbyg3MTczNTApKSkudGhlbigodD0+e3Q/dGhpcy5fdmlldy5wb3B1cHMuY29uZmlybUFuZFNhdmVDdXJyZW50RmllbGRTZXQoKS50aGVuKGUsKHQ9Pnt0JiZqcy5sb2dFcnJvcih0KSxlKCl9KSk6ZSgpfSkpOmUoKX0pKSkudGhlbigoKCk9PiEwPT09ZT9Qcm9taXNlLnJlc29sdmUoKTpuZXcgUHJvbWlzZSgoKGUsdCk9Pnt0aGlzLl9icmlkZ2Uub25XaWRnZXQ/ZSgpOnRoaXMuaXNGaWx0ZXJTZXRDaGFuZ2VkKCk/dGhpcy5fdmlldy5wb3B1cHMuc2hvd0NvbmZpcm1EaWFsb2coby5pMThuZXh0KG51bGwsdm9pZCAwLG8oMjcwNjQ0KSkpLnRoZW4oKHQ9Pnt0P3RoaXMuX3ZpZXcucG9wdXBzLmNvbmZpcm1BbmRTYXZlQ3VycmVudEZpbHRlclNldCgpLnRoZW4oZSwodD0+e3QmJmpzLmxvZ0Vycm9yKHQpLGUoKX0pKTplKCl9KSk6ZSgpfSkpKSl9c2V0TWFya2V0KGUsdCxvKXtjb25zdCBpPUFycmF5LmlzQXJyYXkoZSk/ZTpbZV0KO3JldHVybiEwIT09dCYmKDAsX2kuZGVmYXVsdCkoaSx0aGlzLm1hcmtldHMpP1Byb21pc2UucmVqZWN0KCk6KHRoaXMubWFya2V0cz1pLHRoaXMuX3ZlcmlmeUFsbFNldHNDaGFuZ2VzKG8pLnRoZW4oKCgpPT50aGlzLmxvYWRpbmdTdGFydC5maXJlKCkpKS50aGVuKCgoKT0+dGhpcy5nZXRNZXRhSW5mbygpKSkudGhlbigoKCk9Pnt0aGlzLmRlZmF1bHRGaWVsZFNldHM9Zyh7c2NyZWVuZXJUeXBlOnRoaXMuc2NyZWVuZXJfdHlwZSxpc0NvbXBhY3Q6dGhpcy5pc1NlcnZlclJlbmRlcigpLG1hcmtldHM6dGhpcy5tYXJrZXRzLHN1YnR5cGU6IiIsaXNPbldpZGdldDp0aGlzLl9icmlkZ2Uub25XaWRnZXR9KTtsZXQgZT10aGlzLmN1cnJlbnRGaWx0ZXJTZXRJZCgpO2NvbnN0IHQ9dGhpcy5kZWZhdWx0RmlsdGVyU2V0cy5maW5kKCh0PT50LmlkPT09ZSkpO2lmKHQmJnQuZGlzYWJsZWQpe2NvbnN0IHQ9dGhpcy5kZWZhdWx0RmlsdGVyU2V0cy5maW5kKChlPT4hZS5kaXNhYmxlZCkpO2U9dD90LmlkOiIifXRoaXMuYXBwbHlGaWVsZFNldCh0aGlzLmN1cnJlbnRGaWVsZFNldElkKCksITApLHRoaXMuYXBwbHlGaWx0ZXJTZXQoZSwhMCksdGhpcy5pbnZhbGlkYXRlUmVxdWVzdCgpLHRoaXMuX3VwZGF0ZUVvZFJlc3RyaWN0aW9uKCksdGhpcy51cGRhdGUoKX0pKSl9X3VwZGF0ZUVvZFJlc3RyaWN0aW9uKCl7Y29uc3QgZT17bWFya2V0czp0aGlzLm1hcmtldHMsaXNQcm86KDAsQXMuaXNQcm8pKHdpbmRvdy51c2VyKSxpc0Fub255bW91czohd2luZG93LmlzX2F1dGhlbnRpY2F0ZWQsc2NyZWVuZXJUeXBlOnRoaXMuc2NyZWVuZXJfdHlwZSxvbldpZGdldDooMCxBbi5pc0V4dGVybmFsV2lkZ2V0KSh0aGlzLl9icmlkZ2UpfTt0aGlzLmVvZFJlc3RyaWN0aW9uLnNldFZhbHVlKGZ1bmN0aW9uKGUpe2NvbnN0e3NjcmVlbmVyVHlwZTp0LG1hcmtldHM6byxvbldpZGdldDppLGlzUHJvOm4saXNBbm9ueW1vdXM6cn09ZTtpZihvLmxlbmd0aD4xKXJldHVybiBXby5Ob25lO2lmKCJzdG9jayIhPT10KXJldHVybiBXby5Ob25lO2NvbnN0IHM9JChvKTtpZihpKXJldHVybiBzLmV2ZXJ5KCRvKT9Xby5Ob25lOldvLldpZGdldDtpZihuKXJldHVybiBXby5Ob25lO2NvbnN0IGE9cy5tYXAoQm8pO3JldHVybiBhLnNvbWUoKGU9PigwLEZvLmlzSURDRXhjaGFuZ2UpKGUsITApKSkmJihyfHxhLnNvbWUoKGU9PiEhZSYmTG8oZSkpKSk/V28uU2l0ZTpXby5Ob25lfShlKSl9Y2hhbmdlU2NyZWVuZXJUeXBlKGUpe3JldHVybiBlPT09dGhpcy5zY3JlZW5lcl90eXBlP1Byb21pc2UucmVqZWN0KCk6KHRoaXMudHJhY2tFdmVudCgiQ2hhbmdlIHNjcmVlbmVyIHR5cGUiKSx0aGlzLl92ZXJpZnlBbGxTZXRzQ2hhbmdlcygpLnRoZW4oKCgpPT57dGhpcy5kaXNhYmxlZC5zZXRWYWx1ZSghMCksdGhpcy5tYXJrZXRDaGFuZ2VQcm9jZXNzPSEwLHRoaXMuc2NyZWVuZXJfdHlwZT1lLHRoaXMuc2V0dGluZ3NTYXZlci5zZXRWYWx1ZSgic2NyZWVuZXIuc2VsZWN0ZWRfdHlwZV9vbl9jaGFydCIsZSx7Zm9yY2VGbHVzaDohMH0pLHRoaXMuc2V0dGluZ0tleT1Zc1t0aGlzLnNjcmVlbmVyX3R5cGVdfHxZcy5zdG9jayx0aGlzLmRlZmF1bHRGaWVsZFNldHM9Zyh7c2NyZWVuZXJUeXBlOnRoaXMuc2NyZWVuZXJfdHlwZSxtYXJrZXRzOnRoaXMubWFya2V0cyxpc0NvbXBhY3Q6dGhpcy5pc1NlcnZlclJlbmRlcigpLHN1YnR5cGU6IiIsaXNPbldpZGdldDp0aGlzLl9icmlkZ2Uub25XaWRnZXR9KSxQdCh0aGlzLnNjcmVlbmVyX3R5cGUpLFF0KHRoaXMubWFya2V0cyk7Y29uc3QgdD10aGlzLnNlbGVjdGVkR3JvdXBzO0l0LnNlY3Rvci52YWx1ZT1BcnJheS5pc0FycmF5KHQpJiZ0WzBdPT09by5pMThuZXh0KG51bGwsdm9pZCAwLG8oOTIxODQ3KSk/bnVsbDp0fSkpLnRoZW4oKCgpPT50aGlzLmxvYWRpbmdTdGFydC5maXJlKCkpKS50aGVuKCgoKT0+dGhpcy5nZXRNZXRhSW5mbygpKSkudGhlbigoKCk9PnRoaXMuZ2V0VXNlclNldHRpbmdzKCkpKS50aGVuKCgoKT0+e3RoaXMuX2NoZWNrQ3VycmVudFNldHMoKSx0aGlzLmFwcGx5RmllbGRTZXQodGhpcy5jdXJyZW50RmllbGRTZXRJZCgpLCEwKSx0aGlzLmFwcGx5RmlsdGVyU2V0KHRoaXMuY3VycmVudEZpbHRlclNldElkKCksITApfSkpLnRoZW4oKCgpPT57bGV0IGU9dGhpcy5jdXJyZW50RmlsdGVyU2V0SWQoKTtjb25zdCB0PXRoaXMuZGVmYXVsdEZpbHRlclNldHMuZmluZCgodD0+dC5pZD09PWUpKTtpZih0JiZ0LmRpc2FibGVkKXtjb25zdCB0PXRoaXMuZGVmYXVsdEZpbHRlclNldHMuZmluZCgoZT0+IWUuZGlzYWJsZWQpKTtlPXQ/dC5pZDoiIn10aGlzLmFwcGx5RmlsdGVyU2V0KGUsITApLHRoaXMuaW52YWxpZGF0ZVJlcXVlc3QoKSx0aGlzLl91cGRhdGVFb2RSZXN0cmljdGlvbigpLHRoaXMudXBkYXRlSW1wbCh2b2lkIDAsdm9pZCAwLHZvaWQgMCx2b2lkIDAsdm9pZCAwLCEwKSx0aGlzLm1hcmtldENoYW5nZVByb2Nlc3M9ITEsdGhpcy5sb2FkaW5nQ29tcGxldGUuc3Vic2NyaWJlKG51bGwsKCgpPT57dGhpcy5kaXNhYmxlZC5zZXRWYWx1ZSghMSl9KSwhMCl9KSkpfWJhY2tlbmRVcmwoZSl7cmV0dXJuIGZ1bmN0aW9uKGUsdD1lKXtyZXR1cm4gQXJyYXkuaXNBcnJheShlKT9lLmxlbmd0aD4xP2Ake1RzKCl9L2dsb2JhbC9gOmAke1RzKCl9LyR7dFswXX0vYDpgJHtUcygpfS8ke3R9L2B9KHRoaXMubWFya2V0cyxlKX1vbkxvZ2luU3RhdGVDaGFuZ2UoZSl7ZXx8dGhpcy5nZXRVc2VyU2V0dGluZ3MoKS50aGVuKCgoKT0+dGhpcy5hcHBseUZpZWxkU2V0KHRoaXMuY3VycmVudEZpZWxkU2V0SWQoKSwhMCkpKS50aGVuKCgoKT0+dGhpcy5zZXRNYXJrZXQodGhpcy5tYXJrZXRzLCEwLCEwKSkpLnRoZW4oKCgpPT50aGlzLl92aWV3LnVwZGF0ZU1hcmtldEJ1dHRvbigpKSl9c2hvd05vdGljZUlmTm9GaWx0ZXJzKGUpe2xldCB0O2lmKGUpe2NvbnN0IG89dGhpcy5nZXRGaWx0ZXJTZXRCeUlkKGUpO3Q9byYmby5jb250ZW50fWVsc2UgdD10aGlzLmN1cnJlbnRGaWx0ZXJTdGF0ZSgpCjtyZXR1cm4oIXR8fCFPYmplY3Qua2V5cyh0LmZpbHRlcnN8fHt9KS5sZW5ndGgpJiYodGhpcy5fdmlldy5wb3B1cHMuc2hvd05vdGljZShvLmkxOG5leHQobnVsbCx2b2lkIDAsbygxNjA4MikpLG8uaTE4bmV4dChudWxsLHZvaWQgMCxvKDUxOTQ3NCkpKSwhMCl9YmluZFNjcm9sbFRvQm90dG9tKGUpe2NvbnN0IHQ9KCk9Pnt0aGlzLmxvYWRpbmd8fHRoaXMudXBkYXRlKG51bGwsITApfSxvPSgpPT57VnMod2luZG93KS5iaW5kKCJzY3JvbGx0byIse3RvOiJib3R0b20iLHRvbGVyYW5jZTplfSx0KSx0aGlzLmxvYWRpbmdDb21wbGV0ZS51bnN1YnNjcmliZShudWxsLG8pfTt0aGlzLmxvYWRpbmdDb21wbGV0ZS5zdWJzY3JpYmUobnVsbCxvKX1nZXQgaXNGYXN0UmVmcmVzaCgpe3JldHVyblsiZm9yZXgiLCJjcnlwdG8iXS5pbmNsdWRlcyh0aGlzLnNjcmVlbmVyX3R5cGUpfWdldCByZWZyZXNoSW50ZXJ2YWwoKXtpZih0aGlzLmlzRmFzdFJlZnJlc2gmJiF0aGlzLl9icmlkZ2Uub25XaWRnZXQpe2lmKHRoaXMuX2JyaWRnZS5oaWRlX2NvbnRyb2xzKXJldHVybiAxMDtpZighd2luZG93LmlzX2F1dGhlbnRpY2F0ZWQpcmV0dXJuLTE7Y29uc3QgZT10aGlzLnNldHRpbmdzU2F2ZXIuZ2V0SW50KHRoaXMuc2V0dGluZ0tleSsiLnJlZnJlc2hJbnRlcnZhbCIsLTEpfHwtMTtyZXR1cm4gMT09PWU/MTA6ZX1yZXR1cm4gd2luZG93LnVzZXImJndpbmRvdy51c2VyLmlzX3BybyYmdGhpcy5zZXR0aW5nc1NhdmVyLmdldEludCh0aGlzLnNldHRpbmdLZXkrIi5yZWZyZXNoSW50ZXJ2YWwiLC0xKXx8LTF9c2V0IHJlZnJlc2hJbnRlcnZhbChlKXt0aGlzLnNldHRpbmdzU2F2ZXIuc2V0VmFsdWUodGhpcy5zZXR0aW5nS2V5KyIucmVmcmVzaEludGVydmFsIixlLHtmb3JjZUZsdXNoOiEwfSksdGhpcy5fdmlldy5yZXNldFJlZnJlc2hDb3VudGVyKCksLTEhPT1lJiZ0aGlzLnRyYWNrRXZlbnQoIlNldCByZWZyZXNoIGludGVydmFsIil9Z2V0IHZpZXcoKXtyZXR1cm4gdGhpcy5fdmlld31nZXQgc2VhcmNoRmllbGQoKXtyZXR1cm4ic2VjdG9yIj09PXRoaXMuc2NyZWVuZXJfdHlwZXx8ImluZHVzdHJ5Ij09PXRoaXMuc2NyZWVuZXJfdHlwZT8iZGVzY3JpcHRpb24iOiJjcnlwdG9fbWt0Ij09PXRoaXMuc2NyZWVuZXJfdHlwZT8ic2VjdG9yIjoibmFtZSJ9Z2V0IHNjcmVlbmVyVHlwZSgpe3JldHVybiB0aGlzLnNjcmVlbmVyX3R5cGV9Z2V0IHNjcmVlbmVyQnJpZGdlKCl7cmV0dXJuIHRoaXMuX2JyaWRnZX1hcHBseVN3aXRjaChlKXtpZihkZWxldGUgdGhpcy5fYnJpZGdlLnNjcmVlbmVyX2ZpZWxkX21hdGNoLCJjcnlwdG9fbWt0Ij09PXRoaXMuc2NyZWVuZXJfdHlwZSl0aGlzLnN3aXRjaEZpbHRlcj17bGVmdDoibmFtZSIsb3BlcmF0aW9uOiJtYXRjaCIscmlnaHQ6ZSsiJCJ9O2Vsc2UgaWYoImJvbmRzIj09PXRoaXMuc2NyZWVuZXJfdHlwZSl7dGhpcy5zd2l0Y2hGaWx0ZXI9e2xlZnQ6ImRlc2NyaXB0aW9uIixvcGVyYXRpb246InlpZWxkcyI9PT1lPyJtYXRjaCI6Im5tYXRjaCIscmlnaHQ6IllJRUxEJCJ9O2NvbnN0IHQ9InlpZWxkcyI9PT1lP28uaTE4bmV4dChudWxsLHtjb250ZXh0OiJCb25kcyJ9LG8oNzU0NikpOm8uaTE4bmV4dChudWxsLHZvaWQgMCxvKDgyMDg2NikpO0l0LmNsb3NlLnRpdGxlPXQsSXQuY2xvc2Uuc2hvcnRUaXRsZT10LHRoaXMuX3ZpZXcudGFibGUuc2V0Q29sdW1uVGl0bGUoImNsb3NlIix0KX10aGlzLnVwZGF0ZSgpfWhhc01hcmtlZFN5bWJvbHMoKXtyZXR1cm4oMCxfby5pc0ZlYXR1cmVzZXRFbmFibGVkKSgibWFya2VkX3N5bWJvbHMiKSYmIXRoaXMuX2JyaWRnZS5tYXJrZWRfc3ltYm9sc19kaXNhYmxlZH1fc2NyZWVuZXJTdWJ0eXBlKCl7cmV0dXJuIHRoaXMuX2JyaWRnZS5zY3JlZW5lcl9zdWJ0eXBlfHwiIn1fYnVpbGRSZXF1ZXN0RGF0YShlKXtpZigiZ2xvYmFsIj09PXRoaXMubWFya2V0c1swXSl7Y29uc3QgdD1KU09OLnBhcnNlKGUpO3JldHVybiBkZWxldGUgdC5tYXJrZXRzLEpTT04uc3RyaW5naWZ5KHQpfXJldHVybiBlfV9zZW5kU2NhblJlcXVlc3QoZSx0KXtjb25zdCBvPXt0eXBlOiJQT1NUIix1cmw6dGhpcy5fZ2V0U2NhblVybCgic2NhbiIpLGRhdGE6dGhpcy5fYnVpbGRSZXF1ZXN0RGF0YShlKSxzdWNjZXNzOnQsZGF0YVR5cGU6InRleHQiLHhockZpZWxkczp7d2l0aENyZWRlbnRpYWxzOiFCb29sZWFuKHRoaXMuX2JyaWRnZS5vbldpZGdldCl9fTtyZXR1cm4gVnMuYWpheChvKX1fZ2V0RmlsdGVyZWRFeGNoYW5nZXNGb3JXaWRnZXQoZSl7cmV0dXJuIGUuZmlsdGVyKChlPT4hdGhpcy5fYnJpZGdlLnVuYXZhaWxhYmxlV2lkZ2V0RXhjaGFuZ2VzLmluY2x1ZGVzKGUpKSl9X2dldFNjYW5VcmwoZSl7Y29uc3QgdD1uZXcgVVJMKHRoaXMuYmFja2VuZFVybCgpK2UpLG89d2luZG93LlRyYWRpbmdWaWV3JiZ3aW5kb3cuVHJhZGluZ1ZpZXcud2lkZ2V0Q3VzdG9tZXJ8fCIiO3JldHVybiBvJiZxc1tvXT90LnNlYXJjaFBhcmFtcy5hcHBlbmQoImFwaV9rZXkiLHFzW29dKTooMCxBbi5pc0V4dGVybmFsV2lkZ2V0KSh0aGlzLl9icmlkZ2UpJiZ0LnNlYXJjaFBhcmFtcy5hcHBlbmQoImFwaV9rZXkiLCJ3aWRnZXRfdXNlcl90b2tlbiIpLHQuc2VhcmNoUGFyYW1zLmFwcGVuZCgibGFiZWwtcHJvZHVjdCIsKDAsQW4uaXNDaGFydFBhZ2UpKHRoaXMuX2JyaWRnZSk/YHVuZGVyY2hhcnQtc2NyZWVuZXItJHt0aGlzLnNjcmVlbmVyX3R5cGV9YDpgc2NyZWVuZXItJHt0aGlzLnNjcmVlbmVyX3R5cGV9LW9sZGApLHQudG9TdHJpbmcoKX19KGRhKX0sMTg5MyhlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtTaWRlYmFyQ3VzdG9tU2Nyb2xsOigpPT51fSk7dmFyIGk9bygzNjMyNjkpLG49byg5NDgzODApLHI9byg0NTk0ODgpLHM9bygzMTQ3MjApLGE9bygzNDI3OCksbD1vKDc4MDM3NCk7Y29uc3QgYz1bKCk9Pm5hdmlnYXRvci51c2VyQWdlbnQuaW5jbHVkZXMoIldpbiIpJiZuYXZpZ2F0b3IudXNlckFnZW50LmluY2x1ZGVzKCJDaHJvbWUiKT8xL3dpbmRvdy5kZXZpY2VQaXhlbFJhdGlvOjEsKCk9PjE2LChlPSgpPT4wKT0+LjgqKGUoKT8/MCldO28oMTEyNjEzKTt2YXIgZD1vKDYyNTQxMSkKO2NvbnN0IGg9e2hlYWRlckhlaWdodDowLGFkZGl0aW9uYWxDbGFzczoiIixhbHdheXNWaXNpYmxlOiExLHNob3dCb3R0b21TaGFkb3c6ITAsc2Nyb2xsTWFyZ2luVG9wOjEsYnViYmxlU2Nyb2xsRXZlbnQ6ITF9O2NsYXNzIHV7Y29uc3RydWN0b3IoZSx0LG89e30pe2lmKHRoaXMuc2Nyb2xsZWQ9bmV3IG4uRGVsZWdhdGUsdGhpcy5zY3JvbGx0b2VuZD1uZXcgbi5EZWxlZ2F0ZSx0aGlzLnNjcm9sbHRvc3RhcnQ9bmV3IG4uRGVsZWdhdGUsdGhpcy52aXNpYmlsaXR5Q2FsbGJhY2tzPVtdLHRoaXMuX3Njcm9sbFRhcmdldFRvcD0wLHRoaXMuX3Njcm9sbFNwZWVkPTQwLHRoaXMuX3NoYWRvd09mZnNldD0xMCx0aGlzLl9zaGFkb3dUb3A9bnVsbCx0aGlzLl9zaGFkb3dCb3R0b209bnVsbCx0aGlzLl9kcmFnSW5pdGlhbGl6ZWQ9ITEsdGhpcy5fZHJhZ2dpbmc9ITEsdGhpcy5fZHJhZ2dhYmxlPW51bGwsdGhpcy5fYXRTdGFydD0hMSx0aGlzLl9hdEVuZD0hMSx0aGlzLl9zdGlja3lCb3R0b209bnVsbCx0aGlzLl9hbmltYXRpb249bnVsbCx0aGlzLl9zYXZlZD1udWxsLHRoaXMuX29wdGlvbnM9ey4uLmgsLi4ub30sdGhpcy5fd3JhcHBlcj1lLHRoaXMuX3dyYXBwZXIuY2xhc3NMaXN0LmFkZChkLndyYXBwZXIpLHRoaXMuX2NvbnRlbnQ9dCx0aGlzLl9oZWFkZXJIZWlnaHQ9dGhpcy5fb3B0aW9ucy5oZWFkZXJIZWlnaHQsdGhpcy5fc2Nyb2xsTWFyZ2luVG9wPXRoaXMuX29wdGlvbnMuc2Nyb2xsTWFyZ2luVG9wLHRoaXMuX3Njcm9sbEJhcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLl9zY3JvbGxCYXIuY2xhc3NMaXN0LmFkZCgic2Itc2Nyb2xsYmFyIiwic2Itc2Nyb2xsYmFyLWJvZHkiKSx0aGlzLl9vcHRpb25zLmFkZGl0aW9uYWxDbGFzcyYmdGhpcy5fc2Nyb2xsQmFyLmNsYXNzTGlzdC5hZGQodGhpcy5fb3B0aW9ucy5hZGRpdGlvbmFsQ2xhc3MpLHRoaXMuX3Njcm9sbEJhci5jbGFzc0xpc3QudG9nZ2xlKCJhY3RpdmUtYWx3YXlzIix0aGlzLl9vcHRpb25zLmFsd2F5c1Zpc2libGUpLHRoaXMuX3Njcm9sbEJhcldyYXBwZXI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdGhpcy5fc2Nyb2xsQmFyV3JhcHBlci5jbGFzc0xpc3QuYWRkKCJzYi1zY3JvbGxiYXItd3JhcCIpLHRoaXMuX3RvdWNoPWkudG91Y2gsdGhpcy5fdG91Y2gpcmV0dXJuIHRoaXMuX2NvbnRlbnQuc3R5bGUucG9zaXRpb249InJlbGF0aXZlIix0aGlzLl93cmFwcGVyLmNsYXNzTGlzdC5hZGQoZC50b3VjaCksdm9pZCB0aGlzLl93cmFwcGVyLmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsKCgpPT50aGlzLl9vblNjcm9sbCgpKSk7dGhpcy5fd3JhcHBlci5zdHlsZS5vdmVyZmxvdz0iaGlkZGVuIix0aGlzLl91bnN1YnNjcmliZT0oKCk9Pntjb25zdCBlPSgpPT57dGhpcy5fZHJhZ2dpbmd8fCh0aGlzLl9vcHRpb25zLmFsd2F5c1Zpc2libGV8fHRoaXMuX3Njcm9sbEJhci5jbGFzc0xpc3QuYWRkKCJhY3RpdmUiKSx0aGlzLl9vblNjcm9sbCgpKX0sdD0oKT0+e3RoaXMuX2RyYWdnaW5nfHwodGhpcy5fb3B0aW9ucy5hbHdheXNWaXNpYmxlfHx0aGlzLl9zY3JvbGxCYXIuY2xhc3NMaXN0LnJlbW92ZSgiYWN0aXZlIiksdGhpcy5fb25TY3JvbGwoKSl9LG89ZT0+e2NvbnN0IHQ9ZS50YXJnZXQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudD9lLnRhcmdldDpudWxsO2lmKCghISF0Py5jbG9zZXN0KCIuaWdub3JlLWhvcml6b250YWwtc2Nyb2xsIil8fGUuZGVsdGFZKSYmIWUuZGVmYXVsdFByZXZlbnRlZCl7Y29uc3QgdD1mdW5jdGlvbihlLHQ9KCk9Pih7fSkpe3JldHVybnt4OmUuZGVsdGFYKmNbZS5kZWx0YU1vZGVdKCgoKT0+dCgpLndpZHRoKSkseTplLmRlbHRhWSpjW2UuZGVsdGFNb2RlXSgoKCk9PnQoKS5oZWlnaHQpKX19KGUsKCgpPT4oe2hlaWdodDp0aGlzLl93cmFwcGVyLmNsaWVudEhlaWdodH0pKSkueTt0aGlzLnNjcm9sbCgtdCwxKXx8KGUuc3RvcFByb3BhZ2F0aW9uKCksZS5wcmV2ZW50RGVmYXVsdCgpKX19O3JldHVybiB0aGlzLl93cmFwcGVyLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZW50ZXIiLGUpLHRoaXMuX3dyYXBwZXIuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsdCksdGhpcy5fd3JhcHBlci5hZGRFdmVudExpc3RlbmVyKCJ3aGVlbCIsbyksKCk9Pnt0aGlzLl93cmFwcGVyLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlZW50ZXIiLGUpLHRoaXMuX3dyYXBwZXIucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsdCksdGhpcy5fd3JhcHBlci5yZW1vdmVFdmVudExpc3RlbmVyKCJ3aGVlbCIsbyl9fSkoKSwhMSE9PXRoaXMuX29wdGlvbnMuc2hvd1RvcFNoYWRvdyYmKHRoaXMuX3NoYWRvd1RvcD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0aGlzLl9zaGFkb3dUb3AuY2xhc3NMaXN0LmFkZCgic2ItaW5uZXItc2hhZG93IiwidG9wIiwiaS1pbnZpc2libGUiKSx0aGlzLl93cmFwcGVyLmFwcGVuZENoaWxkKHRoaXMuX3NoYWRvd1RvcCkpLCExIT09dGhpcy5fb3B0aW9ucy5zaG93Qm90dG9tU2hhZG93JiYodGhpcy5fc2hhZG93Qm90dG9tPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHRoaXMuX3NoYWRvd0JvdHRvbS5jbGFzc0xpc3QuYWRkKCJzYi1pbm5lci1zaGFkb3ciKSx0aGlzLl93cmFwcGVyLmFwcGVuZENoaWxkKHRoaXMuX3NoYWRvd0JvdHRvbSkpLHRoaXMuX3NoYWRvd1RvcCYmdGhpcy5faGVhZGVySGVpZ2h0JiYodGhpcy5fc2hhZG93VG9wLnN0eWxlLnRvcD10aGlzLl9oZWFkZXJIZWlnaHQtdGhpcy5fc2hhZG93T2Zmc2V0KyJweCIpLHRoaXMuX3dyYXBwZXIuYXBwZW5kQ2hpbGQodGhpcy5fc2Nyb2xsQmFyV3JhcHBlciksdGhpcy5fc2Nyb2xsQmFyV3JhcHBlci5hcHBlbmRDaGlsZCh0aGlzLl9zY3JvbGxCYXIpLHRoaXMuX29uU2Nyb2xsKCl9aXNUb3VjaCgpe3JldHVybiB0aGlzLl90b3VjaH1nZXRTY3JvbGxCYXIoKXtyZXR1cm4gdGhpcy5fc2Nyb2xsQmFyfWluaXREcmFnZ2FibGUoKXtyZXR1cm4gdGhpcy5fZHJhZ0luaXRpYWxpemVkfHwodGhpcy5fZHJhZ2dhYmxlPW5ldyBsLkRyYWdnYWJsZSh7YXhpczoieSIsCnNvdXJjZTp0aGlzLl9zY3JvbGxCYXIsY29udGFpbm1lbnQ6dGhpcy5fc2Nyb2xsQmFyV3JhcHBlcixzdGFydDooKT0+e3RoaXMuX2RyYWdnaW5nPSEwfSxzdG9wOigpPT57dGhpcy5fZHJhZ2dpbmc9ITF9LGRyYWc6KCk9Pnt0aGlzLnVwZGF0ZVNjcm9sbCgpfX0pLHRoaXMuX2RyYWdJbml0aWFsaXplZD0hMCksdGhpc311cGRhdGVTY3JvbGwoKXtpZih0aGlzLl90b3VjaClyZXR1cm4gdGhpcztjb25zdCBlPU1hdGguY2VpbCgoMCxyLnBvc2l0aW9uKSh0aGlzLl9zY3JvbGxCYXIpLnRvcC10aGlzLl9zY3JvbGxNYXJnaW5Ub3AtdGhpcy5faGVhZGVySGVpZ2h0KSx0PXRoaXMuZ2V0Q29udGFpbmVySGVpZ2h0V2l0aG91dEhlYWRlcigpLG89KDAscy5vdXRlckhlaWdodCkodGhpcy5fY29udGVudCksaT1vLXQtMTtyZXR1cm4gdDw9MHx8KHRoaXMuX3Njcm9sbFRhcmdldFRvcD1pPD0wP3RoaXMuX2hlYWRlckhlaWdodDpNYXRoLm1pbigtZSpvL3QrdGhpcy5faGVhZGVySGVpZ2h0LHRoaXMuX2hlYWRlckhlaWdodCksZSsoMCxzLmNvbnRlbnRIZWlnaHQpKHRoaXMuX3Njcm9sbEJhcikrMj49dD90aGlzLnNjcm9sbFRvRW5kKCk6KHRoaXMuX2NvbnRlbnQuc3R5bGUudG9wPXRoaXMuX3Njcm9sbFRhcmdldFRvcCsicHgiLHRoaXMuX29uU2Nyb2xsKCkpKSx0aGlzfWdldENvbnRhaW5lckhlaWdodFdpdGhvdXRIZWFkZXIoKXtyZXR1cm4gdGhpcy5fd3JhcHBlci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQtdGhpcy5faGVhZGVySGVpZ2h0fWdldENvbnRhaW5lckhlaWdodCgpe3JldHVybiB0aGlzLl93cmFwcGVyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodH1nZXRDb250ZW50SGVpZ2h0KCl7cmV0dXJuIHRoaXMuX2NvbnRlbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0fXVwZGF0ZVNjcm9sbEJhcigpe2lmKHRoaXMuX3RvdWNoKXJldHVybiB0aGlzO2NvbnN0IGU9KDAsci5wb3NpdGlvbikodGhpcy5fY29udGVudCkudG9wLHQ9dGhpcy5nZXRDb250ZW50SGVpZ2h0KCksbz10aGlzLmdldENvbnRhaW5lckhlaWdodCgpLGk9dGhpcy5nZXRDb250YWluZXJIZWlnaHRXaXRob3V0SGVhZGVyKCksbj0xK3RoaXMuX2hlYWRlckhlaWdodCxzPWktMixhPShNYXRoLmFicyhlKS10aGlzLl9oZWFkZXJIZWlnaHQpKnMvdCxsPW8qby90O3JldHVybiB0aGlzLmlzQ29udGVudFNob3J0KCk/KHRoaXMuX3Njcm9sbEJhci5jbGFzc0xpc3QuYWRkKCJqcy1oaWRkZW4iKSx0aGlzLl93cmFwcGVyLmNsYXNzTGlzdC5yZW1vdmUoInNiLXNjcm9sbC1hY3RpdmUiKSk6KHRoaXMuX3Njcm9sbEJhci5jbGFzc0xpc3QucmVtb3ZlKCJqcy1oaWRkZW4iKSx0aGlzLl9zY3JvbGxCYXIuc3R5bGUuaGVpZ2h0PWwrInB4Iix0aGlzLl9zY3JvbGxCYXIuc3R5bGUudG9wPW4rYSsicHgiLHRoaXMuX3dyYXBwZXIuY2xhc3NMaXN0LmFkZCgic2Itc2Nyb2xsLWFjdGl2ZSIpLHRoaXMuaW5pdERyYWdnYWJsZSgpKSx0aGlzfXNjcm9sbChlLHQpe2NvbnN0IG89KDAsci5wb3NpdGlvbikodGhpcy5fY29udGVudCkudG9wLGk9KDAscy5vdXRlckhlaWdodCkodGhpcy5fY29udGVudCktdGhpcy5nZXRDb250YWluZXJIZWlnaHRXaXRob3V0SGVhZGVyKCktMSxuPXR8fHRoaXMuX3Njcm9sbFNwZWVkO3JldHVybiBpPD0wfHwodGhpcy5fc2Nyb2xsVGFyZ2V0VG9wPU1hdGgubWF4KC1pK3RoaXMuX2hlYWRlckhlaWdodCxNYXRoLm1pbih0aGlzLl9oZWFkZXJIZWlnaHQsbytlKm4pKSx0aGlzLnNldENvbnRlbnRUb3AodGhpcy5fc2Nyb2xsVGFyZ2V0VG9wKSx0aGlzLl9vblNjcm9sbCgpKX1hbmltYXRlVG8oZSl7aWYodGhpcy5fdG91Y2gpcmV0dXJuIHRoaXM7Y29uc3QgdD0oMCxzLm91dGVySGVpZ2h0KSh0aGlzLl9jb250ZW50KS10aGlzLmdldENvbnRhaW5lckhlaWdodFdpdGhvdXRIZWFkZXIoKS0xO2lmKHQ8PTApcmV0dXJuITA7dGhpcy5fc2Nyb2xsVGFyZ2V0VG9wPU1hdGgubWF4KC10K3RoaXMuX2hlYWRlckhlaWdodCxNYXRoLm1pbih0aGlzLl9oZWFkZXJIZWlnaHQsLWUpKSx0aGlzLl9hbmltYXRpb24mJnRoaXMuX2FuaW1hdGlvbi5zdG9wKCksdGhpcy5fYW5pbWF0aW9uPSgwLGEuZG9BbmltYXRlKSh7ZHVyYXRpb246NTAwLGZyb206cGFyc2VGbG9hdChnZXRDb21wdXRlZFN0eWxlKHRoaXMuX2NvbnRlbnQpLnRvcCksdG86dGhpcy5fc2Nyb2xsVGFyZ2V0VG9wLG9uU3RlcDooZSx0KT0+e3RoaXMuX2NvbnRlbnQuc3R5bGUudG9wPXQrInB4In0sb25Db21wbGV0ZTooKT0+e3RoaXMuX29uU2Nyb2xsKCl9fSl9cmVzaXplKCl7Y29uc3QgZT0oMCxzLm91dGVySGVpZ2h0KSh0aGlzLl9jb250ZW50KSx0PSgwLHMub3V0ZXJIZWlnaHQpKHRoaXMuX3dyYXBwZXIpOyF0aGlzLl9vcHRpb25zLnZBbGlnbkJvdHRvbSYmZTx0P3RoaXMuYXRTdGFydCgpfHx0aGlzLnNjcm9sbFRvU3RhcnQoKTp0aGlzLmF0RW5kKCk/dGhpcy5zY3JvbGxUb0VuZCgpOiJudW1iZXIiPT10eXBlb2YgdGhpcy5fc3RpY2t5Qm90dG9tJiZ0aGlzLnNldENvbnRlbnRUb3AoTWF0aC5taW4oMCx0aGlzLl9zdGlja3lCb3R0b20rKDAscy5vdXRlckhlaWdodCkodGhpcy5fd3JhcHBlciktKDAscy5vdXRlckhlaWdodCkodGhpcy5fY29udGVudCkpKX1yZXNpemVIZWFkZXIoZSl7Y29uc3QgdD1lLXRoaXMuX2hlYWRlckhlaWdodDt0aGlzLl9oZWFkZXJIZWlnaHQ9ZSx0aGlzLl9zY3JvbGxUYXJnZXRUb3ArPXQsdGhpcy5fc2hhZG93VG9wJiYodGhpcy5fc2hhZG93VG9wLnN0eWxlLnRvcD10aGlzLl9oZWFkZXJIZWlnaHQtdGhpcy5fc2hhZG93T2Zmc2V0KyJweCIpLHRoaXMucmVzaXplKCl9c2Nyb2xsVG8oZSx0KXtjb25zdCBvPXtwb3NpdGlvbjoidmlzaWJsZSIsYXJlYUhlaWdodDplIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQ/KDAscy5jb250ZW50SGVpZ2h0KShlKTowLC4uLnR9O2UgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCYmKGU9by5vZmZzZXRUb3B8fCgwLHIucG9zaXRpb24pKGUpLnRvcCk7Y29uc3QgaT0oMCwKci5wb3NpdGlvbikodGhpcy5fY29udGVudCkudG9wLG49dGhpcy5fY29udGVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQsYT10aGlzLmdldENvbnRhaW5lckhlaWdodFdpdGhvdXRIZWFkZXIoKTtpZihuLWEtMTw9MClyZXR1cm4hMDtjb25zdCBsPS0xKihpLXRoaXMuX2hlYWRlckhlaWdodCksYz1sK2E7bGV0IGQ9MDtpZigidmlzaWJsZSI9PT1vLnBvc2l0aW9uKXtpZihlPmwmJmUrby5hcmVhSGVpZ2h0PGMpcmV0dXJuITE7ZD1lK28uYXJlYUhlaWdodD5jP2MtZS1vLmFyZWFIZWlnaHQ6bC1lfWVsc2UidG9wIj09PW8ucG9zaXRpb24mJihkPWwtZSk7cmV0dXJuIHRoaXMuc2Nyb2xsKGQsMSksdGhpcy5fb25TY3JvbGwoKSwhMX1zY3JvbGxUb0VuZCgpe2NvbnN0IGU9KDAsci5wb3NpdGlvbikodGhpcy5fY29udGVudCkudG9wLHQ9KDAscy5vdXRlckhlaWdodCkodGhpcy5fY29udGVudCksbz0oMCxzLm91dGVySGVpZ2h0KSh0aGlzLl93cmFwcGVyKSxpPXQ+bz9lKyhvLSh0K2UpKSsxOjE7cmV0dXJuIHRoaXMuc2V0Q29udGVudFRvcChpKSx0aGlzLl9vblNjcm9sbCgpLHRoaXN9c2Nyb2xsVG9TdGFydCgpe3JldHVybiB0aGlzLnNldENvbnRlbnRUb3AodGhpcy5faGVhZGVySGVpZ2h0KSx0aGlzLl9vblNjcm9sbCgpLHRoaXN9Y3VycmVudFBvc2l0aW9uKCl7cmV0dXJuIE1hdGgucm91bmQoKDAsci5wb3NpdGlvbikodGhpcy5fY29udGVudCkudG9wKX1hdFN0YXJ0KCl7cmV0dXJuIE1hdGgucm91bmQoKDAsci5wb3NpdGlvbikodGhpcy5fY29udGVudCkudG9wKT49dGhpcy5faGVhZGVySGVpZ2h0fWF0RW5kKGUpeyJudW1iZXIiPT10eXBlb2YgZSYmaXNGaW5pdGUoZSl8fChlPTApO2NvbnN0IHQ9TWF0aC5yb3VuZCgoMCxyLnBvc2l0aW9uKSh0aGlzLl9jb250ZW50KS50b3ApLG89TWF0aC5mbG9vcigoMCxzLm91dGVySGVpZ2h0KSh0aGlzLl9jb250ZW50KSksaT1NYXRoLmZsb29yKCgwLHMub3V0ZXJIZWlnaHQpKHRoaXMuX3dyYXBwZXIpKTtyZXR1cm4gby1NYXRoLmFicyh0KS0xPD1pK2V9Y2hlY2tDb250ZW50VmlzaWJpbGl0eSgpe3RoaXMuX29uQ29udGVudFZpc2libGUoKX1zdWJzY3JpYmVUb0NvbnRlbnRWaXNpYmxlKGUsdCxvKXt0aGlzLnZpc2liaWxpdHlDYWxsYmFja3MucHVzaCh7aWQ6ZSxlbGVtZW50OnQsY2FsbGJhY2s6b30pfXRyaWdnZXJWaXNpYmlsaXR5Q2FsbGJhY2tzKGUpe3RoaXMuX29uQ29udGVudFZpc2libGUoZSl9c2F2ZSgpe3JldHVybiB0aGlzLl9zYXZlZD17dG9wOigwLHIucG9zaXRpb24pKHRoaXMuX2NvbnRlbnQpLnRvcCxoZWlnaHQ6KDAscy5vdXRlckhlaWdodCkodGhpcy5fY29udGVudCl9LHRoaXN9cmVzdG9yZSgpe2lmKHRoaXMuX3NhdmVkKXtpZih0aGlzLl9zYXZlZC50b3A9PT0oMCxyLnBvc2l0aW9uKSh0aGlzLl9jb250ZW50KS50b3AmJnRoaXMuX3NhdmVkLmhlaWdodD09PSgwLHMub3V0ZXJIZWlnaHQpKHRoaXMuX2NvbnRlbnQpKXJldHVybiB0aGlzLl9zYXZlZD1udWxsLHRoaXM7dGhpcy5fb3B0aW9ucy52QWxpZ25Cb3R0b20mJih0aGlzLl9zYXZlZC50b3AtPSgwLHMub3V0ZXJIZWlnaHQpKHRoaXMuX2NvbnRlbnQpLXRoaXMuX3NhdmVkLmhlaWdodCx0aGlzLl9zYXZlZC50b3A+dGhpcy5faGVhZGVySGVpZ2h0JiYodGhpcy5fc2F2ZWQudG9wPXRoaXMuX2hlYWRlckhlaWdodCkpLHRoaXMuc2V0Q29udGVudFRvcCh0aGlzLl9zYXZlZC50b3ApLHRoaXMuX3NhdmVkPW51bGwsdGhpcy5fb25TY3JvbGwoITApfXJldHVybiB0aGlzfXNldENvbnRlbnRUb3AoZSl7cmV0dXJuIHRoaXMuX3RvdWNoP3RoaXMuX29wdGlvbnMudkFsaWduQm90dG9tJiYoMCxzLm91dGVySGVpZ2h0KSh0aGlzLl9jb250ZW50KTwoMCxzLm91dGVySGVpZ2h0KSh0aGlzLl93cmFwcGVyKT8odGhpcy5fd3JhcHBlci5zdHlsZS5vdmVyZmxvd1k9InZpc2libGUiLHRoaXMuX2NvbnRlbnQuc3R5bGUucG9zaXRpb249ImFic29sdXRlIix0aGlzLl9jb250ZW50LnN0eWxlLmJvdHRvbT0iMHB4Iik6KHRoaXMuX2NvbnRlbnQuc3R5bGUucG9zaXRpb249InJlbGF0aXZlIix0aGlzLl9jb250ZW50LnN0eWxlLnBvc2l0aW9uPSJhdXRvIix0aGlzLl93cmFwcGVyLnN0eWxlLm92ZXJmbG93WT0iYXV0byIsdGhpcy5fd3JhcHBlci5zY3JvbGxUb3A9LWUpOnRoaXMuX2NvbnRlbnQuc3R5bGUudG9wPWUrInB4Iix0aGlzfWlzQ29udGVudFNob3J0KCl7cmV0dXJuIHRoaXMuZ2V0Q29udGVudEhlaWdodCgpPD10aGlzLmdldENvbnRhaW5lckhlaWdodFdpdGhvdXRIZWFkZXIoKX1kZXN0cm95KCl7dGhpcy5fYW5pbWF0aW9uJiZ0aGlzLl9hbmltYXRpb24uc3RvcCgpLHRoaXMuX3Njcm9sbEJhcldyYXBwZXImJnRoaXMuX3Njcm9sbEJhcldyYXBwZXIucmVtb3ZlKCksdGhpcy5fc2hhZG93Qm90dG9tJiZ0aGlzLl9zaGFkb3dCb3R0b20ucmVtb3ZlKCksdGhpcy5fc2hhZG93VG9wJiZ0aGlzLl9zaGFkb3dUb3AucmVtb3ZlKCksdGhpcy5fZHJhZ2dhYmxlJiYodGhpcy5fZHJhZ2dhYmxlLmRlc3Ryb3koKSx0aGlzLl9kcmFnZ2FibGU9bnVsbCksdGhpcy5fY29udGVudC5zdHlsZS5jc3NUZXh0PSIiLHRoaXMuX3dyYXBwZXIuc3R5bGUuY3NzVGV4dD0iIix0aGlzLl91bnN1YnNjcmliZT8uKCl9X29uU2Nyb2xsKGUpe3RoaXMuX3RvdWNofHwodGhpcy5fY29udGVudC5zdHlsZS5ib3R0b209ImF1dG8iKSx0aGlzLnNjcm9sbGVkLmZpcmUoKSx0aGlzLl9kcmFnZ2luZyYmITAhPT1lfHx0aGlzLnVwZGF0ZVNjcm9sbEJhcigpO2NvbnN0IHQ9dGhpcy5hdFN0YXJ0KCksbz10aGlzLmF0RW5kKCk7cmV0dXJuIHRoaXMuX3NoYWRvd1RvcCYmdGhpcy5fc2hhZG93VG9wLmNsYXNzTGlzdC50b2dnbGUoImktaW52aXNpYmxlIiwhIXQpLHRoaXMuX3NoYWRvd0JvdHRvbSYmdGhpcy5fc2hhZG93Qm90dG9tLmNsYXNzTGlzdC50b2dnbGUoImktaW52aXNpYmxlIiwhIW8pLHRoaXMuX29uQ29udGVudFZpc2libGUoKSwhdGhpcy5fYXRTdGFydCYmdD8odGhpcy5fYXRTdGFydD0hMCx0aGlzLnNjcm9sbHRvc3RhcnQuZmlyZSgpKTp0aGlzLl9hdFN0YXJ0JiYhdCYmKHRoaXMuX2F0U3RhcnQ9ITEpLAohdGhpcy5fYXRFbmQmJm8/KHRoaXMuX2F0RW5kPSEwLHRoaXMuc2Nyb2xsdG9lbmQuZmlyZSgpKTp0aGlzLl9hdEVuZCYmIW8mJih0aGlzLl9hdEVuZD0hMSksdGhpcy5fb3B0aW9ucy52QWxpZ25Cb3R0b20mJih0aGlzLl9zdGlja3lCb3R0b209KDAscy5vdXRlckhlaWdodCkodGhpcy5fY29udGVudCktTWF0aC5hYnMoKDAsci5wb3NpdGlvbikodGhpcy5fY29udGVudCkudG9wKS0oMCxzLm91dGVySGVpZ2h0KSh0aGlzLl93cmFwcGVyKSksKHRoaXMuX2F0U3RhcnR8fHRoaXMuX2F0RW5kKSYmKCJmdW5jdGlvbiI9PXR5cGVvZiB0aGlzLl9vcHRpb25zLmJ1YmJsZVNjcm9sbEV2ZW50P0Jvb2xlYW4odGhpcy5fb3B0aW9ucy5idWJibGVTY3JvbGxFdmVudCgpKTpCb29sZWFuKHRoaXMuX29wdGlvbnMuYnViYmxlU2Nyb2xsRXZlbnQpKX1fY29udGVudElzVmlzaWJsZShlKXtyZXR1cm4oMCxyLnBvc2l0aW9uKShlLmVsZW1lbnQpLnRvcD4tMSp0aGlzLmN1cnJlbnRQb3NpdGlvbigpfV9vbkNvbnRlbnRWaXNpYmxlKGUpe2lmKCF0aGlzLnZpc2liaWxpdHlDYWxsYmFja3MubGVuZ3RoKXJldHVybjtjb25zdCB0PWV8fHRoaXMuX2NvbnRlbnRJc1Zpc2libGUuYmluZCh0aGlzKSxvPVtdLGk9dGhpcy52aXNpYmlsaXR5Q2FsbGJhY2tzLmZpbHRlcigoKGUsaSk9PntpZighdGhpcy5fY29udGVudC5jb250YWlucyhlLmVsZW1lbnQpKXJldHVybiExO2NvbnN0IG49dChlKTtyZXR1cm4gbiYmby5wdXNoKGkpLCFufSkpO28uZm9yRWFjaCgodD0+e3RoaXMudmlzaWJpbGl0eUNhbGxiYWNrc1t0XS5jYWxsYmFjayghIWUpfSkpLHRoaXMudmlzaWJpbGl0eUNhbGxiYWNrcz1pfX19LDcwMTUwNihlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHthbGxDaGFydFN0eWxlczooKT0+cn0pO3ZhciBpPW8oOTMwMjMxKTtjb25zdCBuPSgwLG8oMzE4OTc0KS5vbldpZGdldCkoKTtmdW5jdGlvbiByKCl7cmV0dXJuIGZ1bmN0aW9uKCl7Y29uc3QgZT1bMCwxLDksMTMsMiwxNCwxNSwzLDE2LDEwXTtyZXR1cm4gZS5wdXNoKDEyKSxufHxlLnB1c2goMTcpLG58fGUucHVzaCgxOCksbnx8ZS5wdXNoKDIwKSxufHxlLnB1c2goMTkpLGV9KCkuY29uY2F0KGZ1bmN0aW9uKCl7Y29uc3QgZT1bOF07cmV0dXJuKDAsaS5pc0ZlYXR1cmVzZXRFbmFibGVkKSgiamFwYW5lc2VfY2hhcnRfc3R5bGVzIikmJihlLnB1c2goNCw3LDUsNiksZS5wdXNoKDExKSksZX0oKSl9fSwzMTQ5MTQoZSx0LG8peyJ1c2Ugc3RyaWN0Ijt2YXIgaT1vKDg1Mjk4MCksbj1vKDkzMDIzMSk7Y29uc3Qgcj0oMCxuLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJwYXlfYXR0ZW50aW9uX3RvX3RpY2tlcl9ub3Rfc3ltYm9sIikscz0oMCxuLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJjaGFydGluZ19saWJyYXJ5X3NpbmdsZV9zeW1ib2xfcmVxdWVzdCIpLGE9KDAsbi5pc0ZlYXR1cmVzZXRFbmFibGVkKSgidXNlX3RpY2tlcl9vbl9zeW1ib2xfaW5mb191cGRhdGUiKSxsPSgwLG4uaXNGZWF0dXJlc2V0RW5hYmxlZCkoInVwcGVyY2FzZV9pbnN0cnVtZW50X25hbWVzIik7aS5leHRyYWN0U3ltYm9sTmFtZUZyb21TeW1ib2xJbmZvLmJpbmQobnVsbCx7cGF5QXR0ZW50aW9uVG9UaWNrZXJOb3RTeW1ib2w6cixjaGFydGluZ0xpYnJhcnlTaW5nbGVTeW1ib2xSZXF1ZXN0OnMsdXNlVGlja2VyT25TeW1ib2xJbmZvVXBkYXRlOmEsdXBwZXJjYXNlSW5zdHJ1bWVudE5hbWVzOmx9KX0sNTgwMzcoZSx0LG8peyJ1c2Ugc3RyaWN0Ijt2YXIgaSxuOyFmdW5jdGlvbihlKXtlW2UuT2ZmbGluZT0wXT0iT2ZmbGluZSIsZVtlLlJlc29sdmluZz0xXT0iUmVzb2x2aW5nIixlW2UuTG9hZGluZz0yXT0iTG9hZGluZyIsZVtlLlJlYWR5PTNdPSJSZWFkeSIsZVtlLkludmFsaWRTeW1ib2w9NF09IkludmFsaWRTeW1ib2wiLGVbZS5TbmFwc2hvdD01XT0iU25hcHNob3QiLGVbZS5FT0Q9Nl09IkVPRCIsZVtlLlB1bHNlPTddPSJQdWxzZSIsZVtlLkRlbGF5ZWQ9OF09IkRlbGF5ZWQiLGVbZS5EZWxheWVkU3RlYW1pbmc9OV09IkRlbGF5ZWRTdGVhbWluZyIsZVtlLk5vQmFycz0xMF09Ik5vQmFycyIsZVtlLlJlcGxheT0xMV09IlJlcGxheSIsZVtlLkVycm9yPTEyXT0iRXJyb3IiLGVbZS5DYWxjdWxhdGlvbkVycm9yPTEzXT0iQ2FsY3VsYXRpb25FcnJvciIsZVtlLlVuc3VwcG9ydGVkUmVzb2x1dGlvbj0xNF09IlVuc3VwcG9ydGVkUmVzb2x1dGlvbiJ9KGl8fChpPXt9KSksZnVuY3Rpb24oZSl7ZVtlLk1hcmtlcnM9MF09Ik1hcmtlcnMiLGVbZS5TdGVwbGluZT0xXT0iU3RlcGxpbmUiLGVbZS5TaW1wbGU9Ml09IlNpbXBsZSJ9KG58fChuPXt9KSl9LDEyODk5OChlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtjcmVhdGVTZXJpZXNGb3JtYXR0ZXI6KCk9PmgsaXNDbG9zZUJhc2VkU3ltYm9sOigpPT5fLGlzSExDQmFzZWRTdHlsZTooKT0+ZCxpc1JlZ3VsYXJTZXNzaW9uSWQ6KCk9PnUsaXNTaW5nbGVWYWx1ZUJhc2VkU3R5bGU6KCk9PmN9KTtvKDE4NTI3MSk7dmFyIGk9byg5MzAyMzEpLG49KG8oOTMwNTY2KSxvKDMxODk3NCksbygxNTY4MjkpKSxyPShvKDc5ODM4KSxvKDc1NTYyNykpLHM9byg5ODQzNzYpLGE9bygxMjUyMTgpO28oMzE0OTE0KTsoMCxpLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJ1cHBlcmNhc2VfaW5zdHJ1bWVudF9uYW1lcyIpLCgwLGkuaXNGZWF0dXJlc2V0RW5hYmxlZCkoImhpZGVfb2JqZWN0X3RyZWVfYW5kX3ByaWNlX3NjYWxlX2V4Y2hhbmdlX2xhYmVsIik7dmFyIGw7IWZ1bmN0aW9uKGUpe2UuTGFzdFVzZWRTdHlsZUtleT0iY2hhcnQubGFzdFVzZWRTdHlsZSIsZS5MYXN0VXNlZFNpbmdsZVZhbHVlQmFzZWRTdHlsZT0iY2hhcnQubGFzdFVzZWRTaW5nbGVWYWx1ZUJhc2VkU3R5bGUiLGUuTGFzdFVzZWRSYXdEYXRhU3R5bGU9ImNoYXJ0LnJhd0RhdGFTdHlsZSIsZS5MYXN0VXNlZE1ldHJpYz0iY2hhcnQubGFzdFVzZWRNZXRyaWMifShsfHwobD17fSkpO2Z1bmN0aW9uIGMoZSl7c3dpdGNoKGUpe2Nhc2UgMzpjYXNlIDEwOmNhc2UgMjpjYXNlIDE0OmNhc2UgMTU6Y2FzZSAxMzpyZXR1cm4hMDtkZWZhdWx0OnJldHVybiExfX1mdW5jdGlvbiBkKGUpe3N3aXRjaChlKXtjYXNlIDE2OgpjYXNlIDIxOnJldHVybiEwO2RlZmF1bHQ6cmV0dXJuITF9fWZ1bmN0aW9uIGgoZSx0LG89ITEpe2NvbnN0e3ByaWNlU2NhbGU6aSxtaW5Nb3ZlOm4sZnJhY3Rpb25hbDpsLG1pbk1vdmUyOmMsdmFyaWFibGVNaW5UaWNrOmQsbm9FeHBvbmVudGlhbEZvcm06aH09ZnVuY3Rpb24oZSx0PSJkZWZhdWx0IixvPSExKXtsZXQgaSxuLHIscyxhPTEwMCxsPTE7aWYoImRlZmF1bHQiPT09dCludWxsIT1lJiYoKHtwcmljZXNjYWxlOmEsbWlubW92OmwsbWlubW92ZTI6bixmcmFjdGlvbmFsOml9PWUpLHI9ZS52YXJpYWJsZV90aWNrX3NpemV8fHZvaWQgMCk7ZWxzZXtsZXQgZT10LnNwbGl0KCIsIik7MyE9PWUubGVuZ3RoJiYoZT1bIjEwMCIsIjEiLCJmYWxzZSJdKSxhPXBhcnNlSW50KGVbMF0pLGw9cGFyc2VJbnQoZVsxXSksaT0idHJ1ZSI9PT1lWzJdLHM9ITB9cmV0dXJuIG8mJihsPTEpLHtwcmljZVNjYWxlOmEsbWluTW92ZTpsLGZyYWN0aW9uYWw6aSxtaW5Nb3ZlMjpuLHZhcmlhYmxlTWluVGljazpyLGlnbm9yZU1pbk1vdmU6byxub0V4cG9uZW50aWFsRm9ybTpzfX0oZSx0LG8pO2lmKG51bGwhPWUpe2NvbnN0IHI9ZS5mb3JtYXQ7aWYoImRlZmF1bHQiPT09dCYmInZvbHVtZSI9PT1yKXJldHVybiBuZXcgcy5Wb2x1bWVGb3JtYXR0ZXIoe3ByZWNpc2lvbjoyfSk7aWYoInBlcmNlbnQiPT09cilyZXR1cm4gbmV3IGEuUGVyY2VudGFnZUZvcm1hdHRlcih7cHJpY2VTY2FsZTppLG1pbk1vdmU6bixmcmFjdGlvbmFsOmwsbWluTW92ZTI6Yyx2YXJpYWJsZU1pblRpY2s6ZCxpZ25vcmVNaW5Nb3ZlOm99KX1yZXR1cm4gbmV3IHIuUHJpY2VGb3JtYXR0ZXIoe3ByaWNlU2NhbGU6aSxtaW5Nb3ZlOm4sZnJhY3Rpb25hbDpsLG1pbk1vdmUyOmMsdmFyaWFibGVNaW5UaWNrOmQsaWdub3JlTWluTW92ZTpvLG5vRXhwb25lbnRpYWxGb3JtOmh9KX1mdW5jdGlvbiB1KGUsdCl7d2luZG93O3JldHVyblsic3RvY2siLCJmdW5kIiwiaW5kZXgiLCJkciJdLmluY2x1ZGVzKHQudHlwZSkmJiJyZWd1bGFyIj09PWV8fCgwLG4uaXNGdXR1cmVzKSh0LnR5cGUpJiYidXNfcmVndWxhciI9PT1lfWZ1bmN0aW9uIF8oZSl7cmV0dXJuImMiPT09ZT8udmlzaWJsZV9wbG90c19zZXR9fSw3Nzc2NjEoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7c3R1ZHlUcG9QcmVyaW9kaWNJZDooKT0+aSxzdHVkeVRwb1Nlc3Npb25zSWQ6KCk9Pm59KTtjb25zdCBpPSJUUE9QZXJpb2RpY0B0di12b2x1bWVieXByaWNlIixuPSJUUE9TZXNzaW9uc0B0di12b2x1bWVieXByaWNlIn0sNzI4NDM2KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse3N0dWR5Vm9sRm9vdHByaW50SWQ6KCk9Pml9KTtjb25zdCBpPSJGb290cHJpbnRAdHYtdm9sdW1lYnlwcmljZSJ9LDU1MDM5MyhlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtzdHVkeVZiUFNlc3Npb25zSWQ6KCk9Pml9KTtjb25zdCBpPSJWYlBTZXNzaW9uc0B0di12b2x1bWVieXByaWNlIn0sNjQxMzA0KGUsdCxvKXsidXNlIHN0cmljdCI7dC5vcGVyYXRvcnM9e2xlc3M6by5pMThuZXh0KG51bGwsdm9pZCAwLG8oMTc3NTA2KSksZWxlc3M6by5pMThuZXh0KG51bGwsdm9pZCAwLG8oMjA0ODA0KSksZ3JlYXRlcjpvLmkxOG5leHQobnVsbCx2b2lkIDAsbyg5ODY1MDUpKSxlZ3JlYXRlcjpvLmkxOG5leHQobnVsbCx2b2lkIDAsbyg2ODc0NzkpKSxjcm9zc2VzOm8uaTE4bmV4dChudWxsLHZvaWQgMCxvKDk1NDgzOSkpLGNyb3NzZXNfYWJvdmU6by5pMThuZXh0KG51bGwsdm9pZCAwLG8oMTY3NjEzKSksY3Jvc3Nlc19iZWxvdzpvLmkxOG5leHQobnVsbCx2b2lkIDAsbyg1NjM2NjYpKSxpbl9yYW5nZTpvLmkxOG5leHQobnVsbCx2b2lkIDAsbygzNjU2NjApKSxub3RfaW5fcmFuZ2U6by5pMThuZXh0KG51bGwsdm9pZCAwLG8oMTcyNTQzKSksZXF1YWw6by5pMThuZXh0KG51bGwsdm9pZCAwLG8oMzQwMjM5KSksbmVxdWFsOm8uaTE4bmV4dChudWxsLHZvaWQgMCxvKDM0OTg4OSkpfX0sMzgyNzQ1KGUsdCxvKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaSgpe3JldHVybiB3aW5kb3cuaXNfYXV0aGVudGljYXRlZH1vLmQodCx7aXNHbG9iYWxTY3JlZW5lckF2YWlsYWJsZTooKT0+aX0pfSw2ODQ2MTAoZSx0LG8peyJ1c2Ugc3RyaWN0Ijt2YXIgaTtmdW5jdGlvbiBuKGUpe3JldHVybntzdGFuZGFsb25lOkJvb2xlYW4oZS5zdGFuZGFsb25lKSxvcmlnaW5hbFN0YW5kYWxvbmU6Qm9vbGVhbihlLm9yaWdpbmFsU3RhbmRhbG9uZSksb25XaWRnZXQ6Qm9vbGVhbihlLm9uV2lkZ2V0KX19ZnVuY3Rpb24gcihlKXtjb25zdCB0PW4oZSk7cmV0dXJuIHQuc3RhbmRhbG9uZSYmdC5vcmlnaW5hbFN0YW5kYWxvbmUmJiF0Lm9uV2lkZ2V0fWZ1bmN0aW9uIHMoZSl7Y29uc3QgdD1uKGUpO3JldHVybiB0LnN0YW5kYWxvbmUmJiF0Lm9yaWdpbmFsU3RhbmRhbG9uZSYmIXQub25XaWRnZXR9ZnVuY3Rpb24gYShlKXtjb25zdCB0PW4oZSk7cmV0dXJuIXQuc3RhbmRhbG9uZSYmdC5vcmlnaW5hbFN0YW5kYWxvbmUmJiF0Lm9uV2lkZ2V0fWZ1bmN0aW9uIGwoZSl7cmV0dXJuIG4oZSkub25XaWRnZXR9ZnVuY3Rpb24gYyhlKXtyZXR1cm4gcihlKT8ic2NyZWVuZXIiOnMoZSk/Im1hcmtldCI6YShlKT8iY2hhcnQiOiJ3aWRnZXQifW8uZCh0LHtnZXRTY3JlZW5lclBhZ2U6KCk9PmMsaXNDaGFydFBhZ2U6KCk9PmEsaXNFeHRlcm5hbFdpZGdldDooKT0+bCxpc01hcmtldFBhZ2U6KCk9PnMsaXNTY3JlZW5lclBhZ2U6KCk9PnJ9KSxmdW5jdGlvbihlKXtlLlNjcmVlbmVyPSJzY3JlZW5lciIsZS5NYXJrZXQ9Im1hcmtldCIsZS5DaGFydD0iY2hhcnQiLGUuV2lkZ2V0PSJ3aWRnZXQifShpfHwoaT17fSkpfSw0NTA2NjQoZSx0LG8peyJ1c2Ugc3RyaWN0Ijt2YXIgaSxuLHI7by5kKHQse1VzZXJBY3Rpb25TdGF0ZTooKT0+cn0pLGZ1bmN0aW9uKGUpe2UuQXBwbHlGbGFnZ2VkRmlsdGVyPSJhcHBseV9mbGFnZ2VkX2ZpbHRlciIsZS5DaGFuZ2VDb2x1bW5TZXQ9ImNoYW5nZV9jb2x1bW5zZXQiLGUuQ2hhbmdlQ29sdW1ucz0iY2hhbmdlX2NvbHVtbnMiLGUuQ2hhbmdlRmF2b3JpdGVDb2x1bW5TZXRzPSJjaGFuZ2VfZmF2b3JpdGVfY29sdW1uc2V0cyIsCmUuQ2hhbmdlRmlsdGVyRGlhbG9nVGFiPSJjaGFuZ2VfZmlsdGVyX2RpYWxvZ190YWIiLGUuQ2hhbmdlRmlsdGVyU2V0PSJjaGFuZ2VfZmlsdGVyc2V0IixlLkNoYW5nZUZvcmV4R3JvdXA9ImNoYW5nZV9mb3JleF9ncm91cCIsZS5DaGFuZ2VNYXJrZXQ9ImNoYW5nZV9tYXJrZXQiLGUuQ2hhbmdlTWFya2V0U2VsZWN0aW9uTW9kZT0iY2hhbmdlX21hcmtldF9zZWxlY3Rpb25fbW9kZSIsZS5DaGFuZ2VSZWZyZXNoSW50ZXJ2YWw9ImNoYW5nZV9yZWZyZXNoX2ludGVydmFsIixlLkNoYW5nZVRpbWVmcmFtZT0iY2hhbmdlX3RpbWVmcmFtZSIsZS5Db2x1bW5Nb3ZlPSJjb2x1bW5fbW92ZSIsZS5GaWx0ZXJEaWFsb2dBcHBsaWVkRmlsdGVycz0iZmlsdGVyX2RpYWxvZ19hcHBsaWVkX2ZpbHRlcnMiLGUuRmlsdGVyRGlhbG9nU2VhcmNoSW5wdXRDbGljaz0iZmlsdGVyX2RpYWxvZ19zZWFyY2hfaW5wdXRfY2xpY2siLGUuRmlsdGVyRGlhbG9nU2VhcmNoTm9UZXJtc0ZvdW5kPSJmaWx0ZXJfZGlhbG9nX3NlYXJjaF9ub190ZXJtc19mb3VuZCIsZS5GaWx0ZXJVc2U9ImZpbHRlcl91c2UiLGUuRmxhZ0NsaWNrPSJmbGFnX2NsaWNrIixlLkNvbnRleHRNZW51QWN0aW9uPSJjb250ZXh0X21lbnVfYWN0aW9uIixlLk9wZW5Db250ZXh0TWVudT0ib3Blbl9jb250ZXh0X21lbnUiLGUuT3BlbkZpbHRlcnNEaWFsb2c9Im9wZW5fZmlsdGVyc19kaWFsb2ciLGUuUmVmcmVzaFNjcmVlbmVyRGF0YT0icmVmcmVzaF9zY3JlZW5lcl9kYXRhIixlLlJlbmFtZUN1c3RvbUNvbHVtblNldD0icmVuYW1lX2N1c3RvbV9jb2x1bW5zZXQiLGUuUmVuYW1lQ3VzdG9tRmlsdGVyc2V0PSJyZW5hbWVfY3VzdG9tX2ZpbHRlcnNldCIsZS5Db252ZXJ0Q3VycmVuY3k9ImNvbnZlcnRfY3VycmVuY3kifShpfHwoaT17fSkpLGZ1bmN0aW9uKGUpe2UuVG9vbGJhcj0idG9vbGJhciIsZS5IZWFkZXI9ImhlYWRlciIsZS5GaWx0ZXJEaWFsb2c9ImZpbHRlcl9kaWFsb2ciLGUuQ29sdW1ucz0iY29sdW1ucyIsZS5Sb3c9InJvdyIsZS5NYXJrZXRzRGlhbG9nPSJtYXJrZXRfZGlhbG9nIixlLlVua25vd249IiJ9KG58fChuPXt9KSksZnVuY3Rpb24oZSl7ZS5DbGljaz0iY2xpY2tlZCIsZS5BcHBseUZpbHRlcnM9ImZpbHRlcnNfYXBwbGllZCIsZS5UeXBlPSJ0eXBlZCIsZS5TbGlkZT0ic2xpZGVkIixlLkRyYWc9ImRyYWcifShyfHwocj17fSkpfSw4MTEzMTIoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7RGlzcGF0Y2hDb250ZXh0TWVudUFjdGlvbkV2ZW50OigpPT5ufSk7dmFyIGk9byg0NTA2NjQpO2NsYXNzIG57Y29uc3RydWN0b3IoZSx0LG8pe3RoaXMuZXZlbnQ9ImNvbnRleHRfbWVudV9hY3Rpb24iLHRoaXMuc3RhdGU9aS5Vc2VyQWN0aW9uU3RhdGUuQ2xpY2ssdGhpcy5zb3VyY2U9ZSx0aGlzLnZhbHVlPW8udG9TdHJpbmcoKSx0aGlzLmxvY2F0aW9uPXR9fX0sNjY3MTMyKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse0NoYW5nZU1hcmtldEV2ZW50OigpPT5pLENoYW5nZU1hcmtldFNlbGVjdGlvbk1vZGVFdmVudDooKT0+bn0pO2NsYXNzIGl7Y29uc3RydWN0b3IoZSl7dGhpcy5ldmVudD0iY2hhbmdlX21hcmtldCIsdGhpcy5zb3VyY2U9Im1hcmtldF9zZWxlY3RvciIsdGhpcy5sb2NhdGlvbj0idG9vbGJhciIsdGhpcy5zdGF0ZT0iIix0aGlzLnZhbHVlPWV9fWNsYXNzIG57Y29uc3RydWN0b3IoZSl7dGhpcy5ldmVudD0iY2hhbmdlX21hcmtldF9zZWxlY3Rpb25fbW9kZSIsdGhpcy5zb3VyY2U9Im1hcmtldF9zZWxlY3Rpb25fbW9kZV9zd2l0Y2giLHRoaXMubG9jYXRpb249Im1hcmtldF9kaWFsb2ciLHRoaXMuc3RhdGU9IiIsdGhpcy52YWx1ZT1lfX19LDIxMTM2MChlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtnZXRDb2x1bW5TZXROYW1lRm9yU25vd1Bsb3c6KCk9PmMsZ2V0RmlsdGVyU2V0TmFtZUZvclNub3dQbG93OigpPT5kLGdldFNub3dQbG93UmVmcmVzaEludGVydmFsOigpPT5sLGluaXRTY3JlZW5lckluc3RhbmNlOigpPT5zLHNlbmRTbm93UGxvd0RhdGE6KCk9PmF9KTt2YXIgaT1vKDM2MjIzOSksbj1vKDY4NDYxMCk7bGV0IHI7ZnVuY3Rpb24gcyhlKXtyPWV9ZnVuY3Rpb24gYShlKXtsZXQgdD0iIixvPSIiO3ImJih0PSgwLG4uZ2V0U2NyZWVuZXJQYWdlKShyLnNjcmVlbmVyQnJpZGdlKSxvPXIuc2NyZWVuZXJUeXBlKTsoIXJ8fCEoMCxuLmlzRXh0ZXJuYWxXaWRnZXQpKHIuc2NyZWVuZXJCcmlkZ2UpKSYmKDAsaS5nZXRUcmFja2VyKSgpLnRoZW4oKGk9PntpJiZpLnRyYWNrU2NyZWVuZXJIaWdoTGV2ZWwoZSxvLHQpfSkpfWZ1bmN0aW9uIGwoZSl7cmV0dXJuIDE9PT1lPyJhdXRvIjotMT09PWU/Im1hbnVhbCI6YCR7ZX1gfWZ1bmN0aW9uIGMoZSl7cmV0dXJuIHIuZGVmYXVsdEZpZWxkU2V0cy5maW5kKCh0PT50LmlkPT09ZSkpP2U6ImN1c3RvbSJ9ZnVuY3Rpb24gZChlKXtyZXR1cm4gci5kZWZhdWx0RmlsdGVyU2V0cy5maW5kKCh0PT50LmlkPT09ZSkpP2U6ImN1c3RvbSJ9fSw5NjkxNjgoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7Z2V0TFRSU2Nyb2xsTGVmdDooKT0+aS5nZXRMVFJTY3JvbGxMZWZ0LGlzUnRsOigpPT5pLmlzUnRsfSk7byg2MTAyNjgpO3ZhciBpPW8oMTE1MjkzKX0sNjgyNzc5KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2dldERlZmF1bHRTeW1ib2w6KCk9PnJ9KTt2YXIgaT1vKDgzOTQyNik7Y29uc3Qgbj1KU09OLnBhcnNlKCd7ImVuIjoiTkFTREFROkFBUEwiLCJiciI6IkJNRkJPVkVTUEE6SUJPViIsImVzIjoiQk1FOlNBTiIsImZyIjoiVFZDOkNBQzQwIiwiaWQiOiJGWF9JREM6VVNESURSIiwiaW4iOiJOU0U6TklGVFkiLCJpdCI6Ik1JTDpKVVZFIiwiamEiOiJGWDpKUE4yMjUiLCJrciI6IkZYX0lEQzpVU0RLUlciLCJwbCI6IkZYX0lEQzpVU0RQTE4iLCJydSI6IlJVUzpVU0RSVUJfVE9NIiwidHIiOiJGWDpVU0RUUlkiLCJ1ayI6IkxTRTpMQU5EIn0nKSxyPSgwLGkuZGVmYXVsdCkoKGZ1bmN0aW9uKCl7cmV0dXJuIG5bd2luZG93LmxvY2FsZXx8ImVuIl18fCJOQVNEQVE6QUFQTCJ9KSl9LDI0MTkzNyhlLHQsbyl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGkoZSx0KXsKY29uc3Qgbz10fHx3aW5kb3cubG9jYWxlfHwiZW4iO2xldCBpPWVbb10/ZVtvXTplLmVuO3JldHVybiBpPSJ0cmFkaW5ndmlldy5jb20iPT09aT8id3d3LnRyYWRpbmd2aWV3LmNvbSI6aSxpP2RvY3VtZW50LmxvY2F0aW9uLnByb3RvY29sKyIvLyIraToiIn1vLmQodCx7ZGV0ZXJtaW5lQmFzZVVybDooKT0+aX0pfSw0Mzg1MzkoZSx0LG8peyJ1c2Ugc3RyaWN0Ijthc3luYyBmdW5jdGlvbiBpKGUpe2NvbnN0e3JlbmRlckdvVG9UcmFkaW5nVmlld1JlZmVycmFsRGlhbG9nOnR9PWF3YWl0IFByb21pc2UuYWxsKFtvLmUoNTQ5OCksby5lKDI5Mjk2KSxvLmUoNTIzOTYpLG8uZSg2MDA2Miksby5lKDIwMzU0KSxvLmUoMjk1MzYpLG8uZSg1MTg0KSxvLmUoNTYyNTIpLG8uZSgzOTA1KSxvLmUoNzQ4MzApLG8uZSg1MDYyMiksby5lKDMzMjIxKSxvLmUoMTE3MjUpLG8uZSg1MTMwOSksby5lKDExMjU3KSxvLmUoMzIzODcpLG8uZSgxNzk5MSksby5lKDEyOTY1KSxvLmUoNjg3NDEpLG8uZSg4Mzc4MSksby5lKDUyODExKSxvLmUoNTM4ODEpXSkudGhlbihvLmJpbmQobyw0NzU4MDYpKTt0KGUpfW8uZCh0LHtzaG93R29Ub1RyYWRpbmdWaWV3UmVmZXJyYWxEaWFsb2c6KCk9Pml9KX0sOTk5NjQwKGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse3BheXdhbGxNb2JpbGVJbnRlcmNlcHRvcjooKT0+aX0pO2NvbnN0IGk9bmV3IGNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5faGlkZGVuRmVhdHVyZXM9bmV3IFNldCx0aGlzLl9saXN0ZW5lcnM9W10sdGhpcy5oaWRlPWU9Pnt0aGlzLl9oaWRkZW5GZWF0dXJlcy5hZGQoZSl9LHRoaXMuaXNIaWRkZW5GZWF0dXJlPWU9PnRoaXMuX2hpZGRlbkZlYXR1cmVzLmhhcyhlKSx0aGlzLnN1YnNjcmliZT1lPT57dGhpcy5fbGlzdGVuZXJzLnB1c2goZSl9LHRoaXMuaW52b2tlPWU9Pnt0aGlzLl9saXN0ZW5lcnMuZm9yRWFjaCgodD0+dChlKSkpfX19fSw3NzA3NTUoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7b3BlblBheXdhbGw6KCk9PnN9KTt2YXIgaT1vKDkzMDIzMSksbj1vKDk5OTY0MCkscj1vKDQzODUzOSk7bygzMDAyODYpO2FzeW5jIGZ1bmN0aW9uIHMoZSx0PXt9KXtpZihuLnBheXdhbGxNb2JpbGVJbnRlcmNlcHRvci5pc0hpZGRlbkZlYXR1cmUoZS5mZWF0dXJlKSlyZXR1cm4gdm9pZCBuLnBheXdhbGxNb2JpbGVJbnRlcmNlcHRvci5pbnZva2UoZS5mZWF0dXJlKTtpZigoMCxpLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJyZWZlcnJhbF9wcm9ncmFtX2Zvcl93aWRnZXRfb3duZXJzIikpcmV0dXJuKDAsci5zaG93R29Ub1RyYWRpbmdWaWV3UmVmZXJyYWxEaWFsb2cpKHtmZWF0dXJlOmUuZmVhdHVyZX0pO2NvbnN0e3BheXdhbGxzOnN9PWF3YWl0IFByb21pc2UuYWxsKFtvLmUoODQ2OTMpLG8uZSg0OTY4NCksby5lKDI5Mjk2KSxvLmUoNjAwNjIpLG8uZSgyMDM1NCksby5lKDUxODQpLG8uZSgxMTIxOCksby5lKDcyNjY2KSxvLmUoMzI2MzIpLG8uZSg1MDYyMiksby5lKDMzMjIxKSxvLmUoNTkzNTApLG8uZSgzMzIzKSxvLmUoMzgyNjIpLG8uZSg4NzQ3NCksby5lKDMyMzg3KSxvLmUoNzU0ODkpLG8uZSg2ODc0MSksby5lKDcwNTkwKSxvLmUoODYwMDEpXSkudGhlbihvLmJpbmQobyw4MTc4MTYpKTtzLm9wZW4oZSx0KX19LDYyMTkyNihlLHQsbyl7InVzZSBzdHJpY3QiO28uZCh0LHtydW5PclNpZ25pbldpdGhGZWF0dXJlOigpPT5ufSk7bygzMDAyODYpO3ZhciBpPW8oMTE3MzEzKTtjb25zdCBuPWFzeW5jKGUsdCxuPXt9KT0+e3tpZih3aW5kb3cuaXNfYXV0aGVudGljYXRlZClyZXR1cm4gdm9pZCBlKCk7aWYoKDAsaS5pc09uTW9iaWxlQXBwUGFnZSkoImFueSIpKXJldHVybiB2b2lkIHdpbmRvdy5ydW5PclNpZ25JbihlLHtzb3VyY2U6dC5zb3VyY2UsZmVhdHVyZTp0LmZlYXR1cmV9KTtjb25zdHtyZWd3YWxsczpyfT1hd2FpdCBQcm9taXNlLmFsbChbby5lKDE3NjYyKSxvLmUoMjkyOTYpLG8uZSg2MDA2Miksby5lKDIwMzU0KSxvLmUoMjk1MzYpLG8uZSg1NjI1Miksby5lKDUwNjIyKSxvLmUoNTkzNTApLG8uZSgzMzIzKSxvLmUoNTgzODQpLG8uZSgzMjM4Nyksby5lKDcwNTkwKSxvLmUoMjI4NCldKS50aGVuKG8uYmluZChvLDIxNDY3KSk7ci5vcGVuKHsuLi50LG9uU2lnbmluU3VjY2VzczplfSxuKX19fSwzMzczNjIoZSx0LG8peyJ1c2Ugc3RyaWN0IjtvLmQodCx7RW1iZWRWaWV3cG9ydERpbWVuc2lvbnNQcm92aWRlcjooKT0+bn0pO3ZhciBpPW8oOTMwMjMxKTtjbGFzcyBue2NvbnN0cnVjdG9yKCl7dGhpcy5fZGF0YT1udWxsLHRoaXMuX21lc3NhZ2VSZWNlaXZlcj1udWxsfXN0YXJ0TGlzdGVuaW5nKCl7dGhpcy5fbWVzc2FnZVJlY2VpdmVyfHwodGhpcy5fbWVzc2FnZVJlY2VpdmVyPWU9PntpZihlLmRhdGEpdHJ5e2NvbnN0IHQ9SlNPTi5wYXJzZShlLmRhdGEpOyJzZXQtZW1iZWQtcmVzaXplci1vdmVycmlkZXMiPT09dC5ldmVudCYmKHRoaXMuX2RhdGE9dC5lZGdlcyl9Y2F0Y2h7fX0sdGhpcy5fYWRkTWVzc2FnZUxpc3RlbmVyKCkpfWRlc3Ryb3koKXt0aGlzLl9yZW1vdmVNZXNzYWdlTGlzdGVuZXIoKX1kYXRhKCl7cmV0dXJuIHRoaXMuX2RhdGF9c3RhdGljIGdldEluc3RhbmNlKCl7cmV0dXJuIHRoaXMuX2luc3RhbmNlfHwodGhpcy5faW5zdGFuY2U9bmV3IG4pLHRoaXMuX2luc3RhbmNlfV9hZGRNZXNzYWdlTGlzdGVuZXIoKXt0aGlzLl9tZXNzYWdlUmVjZWl2ZXImJndpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIix0aGlzLl9tZXNzYWdlUmVjZWl2ZXIpfV9yZW1vdmVNZXNzYWdlTGlzdGVuZXIoKXt0aGlzLl9tZXNzYWdlUmVjZWl2ZXImJndpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJtZXNzYWdlIix0aGlzLl9tZXNzYWdlUmVjZWl2ZXIpLHRoaXMuX21lc3NhZ2VSZWNlaXZlcj1udWxsfX0oMCxpLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJlbWJlZF9yZXNpemVyX292ZXJyaWRlcyIpJiZuLmdldEluc3RhbmNlKCkuc3RhcnRMaXN0ZW5pbmcoKX0sOTExMzI3KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2dldFN5bWJvbFBhZ2VQYXRoOigpPT5kLG1ha2VTeW1ib2xDaGFydFVybDooKT0+ZixtYWtlU3ltYm9sUGFnZVVybDooKT0+diwKbWFrZVRlbXBsYXRlU3ltYm9sVXJsOigpPT5tfSk7byg5NjM5MDApO3ZhciBpPW8oMzA5ODM2KSxuPW8oMjQxOTM3KSxyPW8oNzMwNjQ1KSxzPW8oODUxNDU4KSxhPW8oMTU2ODI5KTtjb25zdCBsPW5ldyBTZXQoWyJTUDpTUFgiLCJDQk9FOlNQWCJdKTtmdW5jdGlvbiBjKGUpe2NvbnN0IHQ9ey4uLmV9O2lmKCJzcHJlYWQiPT09dC50eXBlfHwiZXhwcmVzc2lvbiI9PT10LnR5cGUpe2NvbnN0IGU9dC5zaG9ydE5hbWUmJmgodC5zaG9ydE5hbWUpLG89dC5wcm9OYW1lJiZoKHQucHJvTmFtZSk7dC50eXBlPXZvaWQgMCx0LnNob3J0TmFtZT1lLHQucHJvTmFtZT1vfXJldHVybiB0fWZ1bmN0aW9uIGQoZSx0KXtjb25zdCBvPWMoZSk7cmV0dXJuIF8ocChvLHQpLHUobykpfWZ1bmN0aW9uIGgoZSl7cmV0dXJuKDAscy50b2tlbml6ZSkoZSkuZmluZCgoZT0+InN5bWJvbCI9PT1lLnR5cGUpKT8udmFsdWV9ZnVuY3Rpb24gdShlKXtjb25zdCB0PXtzaG9ydE5hbWU6ZS5zaG9ydE5hbWUsZXhjaGFuZ2U6ZS5leGNoYW5nZSxwcm9OYW1lOmUucHJvTmFtZSx0eXBlOmUudHlwZSx0eXBlc3BlY3M6ZS50eXBlc3BlY3Mscm9vdDplLnJvb3R9O3JldHVybiB0LnByb05hbWUmJnQucHJvTmFtZS5pbmNsdWRlcygiOiIpJiYoW3QuZXhjaGFuZ2UsdC5zaG9ydE5hbWVdPXQucHJvTmFtZS5zcGxpdCgiOiIpKSx0fWZ1bmN0aW9uIF8oZSx0KXtjb25zdCBvPWVuY29kZVVSSUNvbXBvbmVudCh0LnNob3J0TmFtZXx8IiIpLGk9ZW5jb2RlVVJJQ29tcG9uZW50KHQuZXhjaGFuZ2V8fCIiKSxuPWVuY29kZVVSSUNvbXBvbmVudCh0LnByb05hbWV8fCIiKSxyPWVuY29kZVVSSUNvbXBvbmVudCh0LnJvb3R8fCIiKTtyZXR1cm4gZS5yZXBsYWNlKCJ7dHZleGNoYW5nZX0iLGkpLnJlcGxhY2UoInt0dnN5bWJvbH0iLG8pLnJlcGxhY2UoInt0dnByb3N5bWJvbH0iLG4pLnJlcGxhY2UoInt0dnJvb3R9IixyKX1mdW5jdGlvbiBwKGUsdD0iIil7Y29uc3Qgbz11KGUpLHt0eXBlOmksdHlwZXNwZWNzOm4sc2hvcnROYW1lOnIscHJvTmFtZTpzLGV4Y2hhbmdlOmMscm9vdDpkfT1vO3JldHVybiB2b2lkIDA9PT1yJiZ2b2lkIDA9PT1zPyhjb25zb2xlLndhcm4oIlBhcmFtcyBtaXNzZWQiKSwiLyIpOnMmJmwuaGFzKHMpP2Avc3ltYm9scy97dHZzeW1ib2x9LyR7dH1gOml8fG4/ImNvbW1vZGl0eSI9PT1pJiZuJiZuLmluY2x1ZGVzKCJjZmQiKT8iL3N5bWJvbHMve3R2c3ltYm9sfS8/ZXhjaGFuZ2U9e3R2ZXhjaGFuZ2V9IjohZHx8IW58fCJmdXR1cmVzIiE9PWl8fG4uaW5jbHVkZXMoImNvbnRpbnVvdXMiKSYmcj8uZW5kc1dpdGgoIjEhIil8fG4uaW5jbHVkZXMoImV4Y2hhbmdlLWNvbnRpbnVvdXMiKT9jJiYoImZvcmV4Ij09PWl8fG4mJigwLGEuaGFzQ3J5cHRvVHlwZXNwZWMpKG4pKT8iL3N5bWJvbHMve3R2c3ltYm9sfS8/ZXhjaGFuZ2U9e3R2ZXhjaGFuZ2V9IjpjP2Avc3ltYm9scy97dHZleGNoYW5nZX0te3R2c3ltYm9sfS8ke3R9YDpgL3N5bWJvbHMve3R2c3ltYm9sfS8ke3R9YDpgL3N5bWJvbHMve3R2ZXhjaGFuZ2V9LXt0dnJvb3R9MSEvJHt0fT9jb250cmFjdD17dHZzeW1ib2x9YDpjP2Avc3ltYm9scy97dHZleGNoYW5nZX0te3R2c3ltYm9sfS8ke3R9YDpgL3N5bWJvbHMve3R2c3ltYm9sfS8ke3R9YH1mdW5jdGlvbiBtKGUsdCl7bGV0IG89ZTtpZighL3t0dnN5bWJvbH18e3R2ZXhjaGFuZ2V9fHt0dnByb3N5bWJvbH0vLnRlc3QoZSkpe2xldCBpPSJ0dnByb3N5bWJvbCI7dm9pZCAwPT09dC5wcm9OYW1lJiYoaT0idHZzeW1ib2wiKSxvPWAke2V9P3R2d2lkZ2V0c3ltYm9sPXske2l9fWB9Y29uc3QgaT1fKG8sdShjKHQpKSk7aWYoISgwLHIuaXNTYWZlVXJsKShpKSl0aHJvdyBuZXcgRXJyb3IoYFRoZSBzeW1ib2wgVVJMICR7aX0gaXMgbm90IGFsbG93ZWQuYCk7cmV0dXJuIGl9ZnVuY3Rpb24gZyhlLHQsbyxyKXtjb25zdCBzPSh3aW5kb3cubG9jYWxlX2RvbWFpbnM/KDAsbi5kZXRlcm1pbmVCYXNlVXJsKSh3aW5kb3cubG9jYWxlX2RvbWFpbnMscik6d2luZG93LmxvY2F0aW9uLm9yaWdpbikrXyhlLHUoYyh0KSkpO3JldHVybiBvPygwLGkuYWRkVXRtVG9VcmwpKHMsbyk6c31mdW5jdGlvbiB2KGUsdCxvLGkpe2NvbnN0IG49YyhlKTtyZXR1cm4gZyhwKG4saSksbix0LG8pfWZ1bmN0aW9uIGYoZSx0KXtyZXR1cm4gZygiL2NoYXJ0Lz9zeW1ib2w9e3R2cHJvc3ltYm9sfSIsZSx0KX19LDQ4MjUwNChlLHQsbyl7Y29uc3QgaT1vKDE5OTgyNyk7ZS5leHBvcnRzPWksaShkb2N1bWVudCkuYWpheFNlbmQoKChlLHQsbyk9PntvLmNyb3NzRG9tYWluJiYhby5mb3JjZUxhbmd1YWdlSGVhZGVyfHwod2luZG93LmxvY2FsZT90LnNldFJlcXVlc3RIZWFkZXIoIlgtTGFuZ3VhZ2UiLHdpbmRvdy5sb2NhbGUpOmNvbnNvbGUud2Fybigid2luZG93LmxvY2FsZSBpcyBub3QgZGVmaW5lZCIpKX0pKX0sNzc4OTQ2KGUsdCxvKXsidXNlIHN0cmljdCI7dmFyIGk7by5kKHQse2dldFBsYXRmb3JtOigpPT5zfSksZnVuY3Rpb24oZSl7ZS5EZXNrdG9wPSJkZXNrdG9wIixlLldlYj0id2ViIixlLklPUz0iaW9zIixlLkFuZHJvaWQ9ImFuZHJvaWQifShpfHwoaT17fSkpO3ZhciBuPW8oMTE3MzEzKSxyPW8oMzE4OTc0KTtmdW5jdGlvbiBzKCl7cmV0dXJuKDAsci5pc0Rlc2t0b3BBcHApKCk/ImRlc2t0b3AiOigwLG4uaXNPbk1vYmlsZUFwcFBhZ2UpKCJvbGQiKT8iaW9zIjooMCxuLmlzT25Nb2JpbGVBcHBQYWdlKSgibmV3Iik/ImFuZHJvaWQiOiJ3ZWIifX0sNTI0MDY5KGUsdCxvKXsidXNlIHN0cmljdCI7by5kKHQse2dldFByb1BsYW5EZXRhaWxzRm9yVXNlcjooKT0+YSxnZXRQcm9QbGFuV2VpZ2h0OigpPT5zfSk7byg0NzkzNCk7dmFyIGk9bygyMTIyMjkpLG49bygzODQwMTcpLHI9bygyMjI0MjMpO2Z1bmN0aW9uIHMoZSl7cmV0dXJuIHdpbmRvdy5wcm8/ImZyZWUiPT09ZT8tMTp3aW5kb3cucHJvLmdldFByb2R1Y3QoKDAsaS5nZXRQcm9kdWN0Rm9yVHJpYWwpKGUpKS51cGdyYWRlX3dlaWdodDowfWFzeW5jIGZ1bmN0aW9uIGEoKXtjb25zdCBlPWF3YWl0KDAsbi5mZXRjaCkoIi9wcm8tcGxhbnMvcHJvZmlsZS8iKSx0PWF3YWl0IGUuanNvbigpCjtpZihlLm9rKXJldHVybiB0O2lmKDQwMz09PWUuc3RhdHVzKXtjb25zdCBvPXQ7dGhyb3cgbmV3IHIuQXBpRXJyb3Ioby5kZXRhaWwsZS5zdGF0dXMsby5jb2RlKX10aHJvdyBuZXcgRXJyb3IoYFVuYWJsZSB0byBoYW5kbGUgdW5leHBlY3RlZCByZXNwb25zZTogJHtTdHJpbmcoZS50ZXh0KCkpfWApfX0sNTI4Mzk2KGUsdCxvKXsidXNlIHN0cmljdCI7by5yKHQpLG8uZCh0LHtnZXRUcmFuc2xhdGVkU3ltYm9sRGVzY3JpcHRpb246KCk9PnJ9KTt2YXIgaT1vKDE4NTI3MSk7ZnVuY3Rpb24gbihlKXtjb25zdCB0PWAjJHtlfS1zeW1ib2wtZGVzY3JpcHRpb25gLG49aS50KHQsdm9pZCAwLG8oMjU4NjY3KSk7cmV0dXJuIG49PT10P251bGw6bn1mdW5jdGlvbiByKGUpe2lmKHZvaWQgMCE9PWUucHJvX25hbWUpe2NvbnN0IHQ9bihlLnByb19uYW1lKTtpZihudWxsIT09dClyZXR1cm4gdDtpZih2b2lkIDAhPT1lLnNob3J0X25hbWUpe2NvbnN0IHQ9bihlLnNob3J0X25hbWUpO2lmKG51bGwhPT10KXJldHVybiB0fX1yZXR1cm4iZW4iIT09ZS5sYW5ndWFnZSYmdm9pZCAwIT09ZS5sb2NhbF9kZXNjcmlwdGlvbiYmZS5sYW5ndWFnZT09PXdpbmRvdy5sYW5ndWFnZXx8ImVuIj09PWUubGFuZ3VhZ2UmJnZvaWQgMCE9PWUubG9jYWxfZGVzY3JpcHRpb24mJmUubGFuZ3VhZ2U9PT13aW5kb3cubGFuZ3VhZ2U/ZS5sb2NhbF9kZXNjcmlwdGlvbjplLmRlc2NyaXB0aW9ufHwiIn19LDczMDY0NShlLHQsbyl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGkoZSl7Y29uc3QgdD1uZXcgVVJMKGUsZG9jdW1lbnQuYmFzZVVSSSk7cmV0dXJuIGEodCkmJnModCkmJnIodCl9ZnVuY3Rpb24gbihlKXtjb25zdCB0PW5ldyBVUkwoZSxkb2N1bWVudC5iYXNlVVJJKTtyZXR1cm4gcyh0KSYmcih0KX1vLmQodCx7aXNJbnRlcm5hbEhvc3Q6KCk9PmwsaXNJbnRlcm5hbFVybDooKT0+aSxpc1NhZmVVcmw6KCk9Pm4saXNUdkxpbms6KCk9PmN9KTtjb25zdCByPWU9PiFlLnVzZXJuYW1lLHM9ZT0+Imh0dHA6Ij09PWUucHJvdG9jb2x8fCJodHRwczoiPT09ZS5wcm90b2NvbCxhPWU9PmUuaG9zdG5hbWU9PT1sb2NhdGlvbi5ob3N0bmFtZXx8IS9eXGQrXC5cZCtcLlxkK1wuXGQrJC8udGVzdChlLmhvc3RuYW1lKSYmbChlLmhvc3RuYW1lKTtmdW5jdGlvbiBsKGUsdD13aW5kb3cubG9jYXRpb24uaG9zdG5hbWUpe2NvbnN0IG89Ii4iPT09dC5zbGljZSgtMSk/MzoyLGk9dC50b0xvd2VyQ2FzZSgpLnNwbGl0KCIuIikuc2xpY2UoLW8pLG49ZS50b0xvd2VyQ2FzZSgpLnNwbGl0KCIuIikuc2xpY2UoLWkubGVuZ3RoKTtyZXR1cm4gaS5qb2luKCIuIik9PT1uLmpvaW4oIi4iKX1mdW5jdGlvbiBjKGUpe3RyeXtyZXR1cm4gZS5zdGFydHNXaXRoKCIvIil8fGwobmV3IFVSTChlKS5ob3N0bmFtZSwidHJhZGluZ3ZpZXcuY29tIil9Y2F0Y2h7cmV0dXJuITF9fX0sMzA1NDY2KGUsdCxvKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaShlKXtsZXQgdCxvO3JldHVybiBlLmluY2x1ZGVzKCI6Iik/KG89ZS5zcGxpdCgiOiIpWzFdLHQ9ZSk6bz1lLHtwcm9OYW1lOnQsc2hvcnROYW1lOm99fW8uZCh0LHtnZXRTaG9ydE5hbWVBbmRQcm9OYW1lOigpPT5pfSl9LDU3NjEwMyhlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjggMjgiIHdpZHRoPSIyOCIgaGVpZ2h0PSIyOCI+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNMTUgNUg2LjVDNS42NyA1IDUgNS42NyA1IDYuNXYxNWMwIC44My42NyAxLjUgMS41IDEuNWgxNWMuODMgMCAxLjUtLjY3IDEuNS0xLjVWMTZoMXY1LjVhMi41IDIuNSAwIDAgMS0yLjUgMi41aC0xNUEyLjUgMi41IDAgMCAxIDQgMjEuNXYtMTVBMi41IDIuNSAwIDAgMSA2LjUgNEgxNXYxWm03LjQxLS4zYTIgMiAwIDAgMC0yLjgyIDBsLS45NC45NS03LjUgNy41LTEgMS0uMTUuMTRWMTloNC43bC4xNS0uMTUgMS0xIDcuNS03LjUuOTQtLjk0YTIgMiAwIDAgMCAwLTIuODJMMjIuNDEgNC43Wm0tMi4xMi43MWExIDEgMCAwIDEgMS40MiAwbDEuODggMS44OGExIDEgMCAwIDEgMCAxLjQybC0uNTkuNTgtMS42NS0xLjY0TDE5LjcxIDZsLjU4LS41OVptLjM2IDIuOTRMMjIuMjkgMTBsLTYuNzkgNi44LTEuNjUtMS42NS0xLjY0LTEuNjVMMTkgNi43bDEuNjUgMS42NVptLTcuNSA3LjUgMS42NCAxLjY1LS41LjVIMTF2LTMuM2wuNS0uNSAxLjY1IDEuNjVaIi8+PC9zdmc+J30sNzU2Mjg4KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyOCAyOCIgd2lkdGg9IjI4IiBoZWlnaHQ9IjI4IiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik0yMyAxM2gtMVY0SDZ2MTkuNDc2TDE0IDIwbDMuMDA4IDEuMzA3LS40Mi45MDdMMTQgMjEuMDkgNSAyNVYzaDE4em0wIDZoNHYxaC00djRoLTF2LTRoLTR2LTFoNHYtNGgxem0tNi0zSDl2LTFoOHptMi00SDl2LTFoMTB6bTAtNC4wMDVIOXYtMWgxMHoiLz48L3N2Zz4nfSw1ODA1OTYoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE4IDE4IiB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIGZpbGw9Im5vbmUiPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBkPSJNOCA1bDMuNSAzLjVMOCAxMiIvPjwvc3ZnPid9LDYyNjIxOChlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjIgMTUiIHdpZHRoPSIyMiIgaGVpZ2h0PSIxNSI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIHN0cm9rZT0iIzc1NzU3NSIgZD0iTTYuMjUgNS44MTJMMTEgMTAuMDg3bDQuNzUtNC4yNzVNMTEgOS44NjhWLjMxNSIvPjxwYXRoIHN0cm9rZT0iI0FEQUVCMCIgZD0iTTIxIDEwdjRIMXYtNCIvPjwvZz48L3N2Zz4nfSw4OTk3MChlKXsKZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE4IDE4IiB3aWR0aD0iMTgiIGhlaWdodD0iMTgiPjxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKC04IC03KSI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMTcgMTFjMS4zOCAwIDIuNjMuNTYgMy41NCAxLjQ2TDE4IDE1aDZWOWwtMi4wNSAyLjA1QTYuOTc2IDYuOTc2IDAgMCAwIDE3IDljLTMuNTMgMC02LjQzIDIuNjEtNi45MiA2aDIuMDJhNSA1IDAgMCAxIDQuOS00em02LjkyIDZIMjEuOWE1IDUgMCAwIDEtNC45IDRjLTEuMzggMC0yLjYzLS41Ni0zLjU0LTEuNDZMMTYgMTdoLTZ2NmwyLjA1LTIuMDVBNi45NzYgNi45NzYgMCAwIDAgMTcgMjNjMS41NSAwIDIuOTgtLjUxIDQuMTQtMS4zNmwxLjUtMS41QTYuODkgNi44OSAwIDAgMCAyMy45MiAxN3oiLz48L2c+PC9zdmc+J30sNzY1Njk1KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyOCAyOCIgd2lkdGg9IjI4IiBoZWlnaHQ9IjI4Ij48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik0xMy41IDZhOC41IDguNSAwIDEgMCAwIDE3IDguNSA4LjUgMCAwIDAgMC0xN3pNNCAxNC41YTkuNSA5LjUgMCAxIDEgMTkgMCA5LjUgOS41IDAgMCAxLTE5IDB6Ii8+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNOSAxNGg0di00aDF2NGg0djFoLTR2NGgtMXYtNEg5di0xeiIvPjwvc3ZnPid9LDgxNTY4MyhlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIyOTkgMTMxIDEyIDciIHdpZHRoPSIxMiIgaGVpZ2h0PSI3Ij48cGF0aCBmaWxsPSJub25lIiBkPSJNMzAwIDEzMmw1IDUgNS01Ii8+PC9zdmc+J30sODAxMzI3KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNCAxNCIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0Ij48cGF0aCBkPSJNMTAuODkzIDkuNTEybC40NTggMy42MjRjLjAxNC4xMDUtLjAwNi4xNi0uMDIuMTc2LS4wMjguMDMtLjEwOS4wMDUtLjE4Mi0uMDNMNy44MTIgMTEuNzNhMS45NzMgMS45NzMgMCAwIDAtLjgxMS0uMTZjLS4zMDIgMC0uNTkuMDU3LS44MS4xNmwtMy4zMzggMS41NTJjLS4xMTguMDU2LS4xNjQuMDUxLS4xODIuMDMtLjAxNC0uMDE2LS4wMzQtLjA3LS4wMi0uMTc4TDMuMTEgOS41MWMuMDYtLjUwMy0uMTYyLTEuMTgtLjUwNS0xLjU0TC4wODcgNS4zMDJjLS4wODUtLjA5MS0uMDktLjE0OC0uMDg2LS4xNTguMDAzLS4wMS4wNC0uMDUzLjE2LS4wNzdsMy42MjEtLjY4OWMuNDkxLS4wOSAxLjA2OS0uNTA2IDEuMzE1LS45NDhMNy4wMDQgMGwxLjkwMiAzLjQzYy4yNDYuNDQyLjgyNC44NTkgMS4zMTIuOTQ3bDMuNjE3LjY5Yy4xMjMuMDI0LjE2Mi4wNjguMTY0LjA3Ny4wMDMuMDEtLjAwMy4wNjYtLjA4OS4xNTdMMTEuNCA3Ljk3Yy0uMzQ4LjM2Ny0uNTcgMS4wNDUtLjUwNiAxLjU0M3oiLz48L3N2Zz4nfSw0MjcwOShlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTQgMTQiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCI+PHBhdGggZD0iTTkuOTAxIDkuNjM5Yy0uMTAyLS43OTcuMjE4LTEuNzc1Ljc3LTIuMzU2bDEuNDM4LTEuNTI3LTIuMDctLjM5NWMtLjc4NC0uMTQyLTEuNjE1LS43NDItMi4wMDgtMS40NDZMNy4wMDMgMi4wNiA1Ljk3IDMuOTE3Yy0uMzkxLjcwMi0xLjIyMiAxLjMwMS0yIDEuNDQzbC0yLjA4LjM5NiAxLjQ0IDEuNTI2Yy41NDcuNTc3Ljg2NiAxLjU0OS43NyAyLjM1M2wtLjI2MiAyLjA4NiAxLjkzLS44OTdhMi45NSAyLjk1IDAgMCAxIDEuMjMzLS4yNTRjLjQ0IDAgLjg3LjA4NSAxLjIzMy4yNTRsMS45My44OTctLjI2My0yLjA4MnptLjk5Mi0uMTI3bC40NTggMy42MjRjLjAxNC4xMDUtLjAwNi4xNi0uMDIuMTc2LS4wMjguMDMtLjEwOS4wMDUtLjE4Mi0uMDNMNy44MTIgMTEuNzNhMS45NzMgMS45NzMgMCAwIDAtLjgxMS0uMTZjLS4zMDIgMC0uNTkuMDU3LS44MS4xNmwtMy4zMzggMS41NTJjLS4xMTguMDU2LS4xNjQuMDUxLS4xODIuMDMtLjAxNC0uMDE2LS4wMzQtLjA3LS4wMi0uMTc4TDMuMTEgOS41MWMuMDYtLjUwMy0uMTYyLTEuMTgtLjUwNS0xLjU0TC4wODcgNS4zMDJjLS4wODUtLjA5MS0uMDktLjE0OC0uMDg2LS4xNTguMDAzLS4wMS4wNC0uMDUzLjE2LS4wNzdsMy42MjEtLjY4OWMuNDkxLS4wOSAxLjA2OS0uNTA2IDEuMzE1LS45NDhMNy4wMDQgMGwxLjkwMiAzLjQzYy4yNDYuNDQyLjgyNC44NTkgMS4zMTIuOTQ3bDMuNjE3LjY5Yy4xMjMuMDI0LjE2Mi4wNjguMTY0LjA3Ny4wMDMuMDEtLjAwMy4wNjYtLjA4OS4xNTdMMTEuNCA3Ljk3Yy0uMzQ4LjM2Ny0uNTcgMS4wNDUtLjUwNiAxLjU0M3oiLz48L3N2Zz4nfSw4MTkyOTAoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE4IDE4IiB3aWR0aD0iMTgiIGhlaWdodD0iMTgiPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PHBhdGggZD0iTTkuNSA4LjVjMS4xMDUgMCAyLS4zOTUgMi0xLjVzLS44OTUtMS41LTItMS41aC0zdjNoM3ptLjUgNGMxLjM4IDAgMi41LS42MiAyLjUtMnMtMS4xMi0yLTIuNS0ySDYuNXY0SDEweiIvPjxwYXRoIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik05LjUgMy41VjVtMCA4djEuNW0tMi0xLjV2MS41bS0yLTJINm0tLjUtN0g2bTEuNS0yVjUiLz48Y2lyY2xlIGN4PSI5IiBjeT0iOSIgcj0iOC41Ii8+PC9nPjwvc3ZnPid9LDQ4ODg3NShlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTEgOSIgd2lkdGg9IjExcHgiIGhlaWdodD0iOXB4Ij48cGF0aCBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZS13aWR0aD0iMiIgZD0iTTEgMy4yMmwzLjQxNSAzLjQ5NkwxMCAxIi8+PC9zdmc+J30sOTg3MDc2KGUpewplLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgNiA5IiB3aWR0aD0iNiIgaGVpZ2h0PSI5Ij48cGF0aCBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgZD0iTTEgMWwzLjUgMy41TDEgOCIvPjwvc3ZnPid9LDI0OTQ4OShlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgNjAgNjAiPjxwYXRoIGQ9Ik0wIDQ2bDM1LTM1IDE0IDE0LTM1IDM1SDB6TTM5IDdsNi02YzUtNSAxOSA5IDE0IDE0bC02IDZ6Ii8+PC9zdmc+J30sNTY3MjQ1KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxOCAxOCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2U9ImN1cnJlbnRDb2xvciI+PGNpcmNsZSBjeD0iOSIgY3k9IjkiIHI9IjguNSIvPjxwYXRoIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik01LjUgMTMuNXYtOWg0bS0yIDRINm0zLjUgMWwzIDRtMC00bC0zIDQiLz48L2c+PC9zdmc+J30sOTIxNzA4KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxOCAxOCIgd2lkdGg9IjE4IiBoZWlnaHQ9IjE4IiBmaWxsPSJub25lIj48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgZD0iTTIuNSAxNC41YzEuNjgtMS4yNiAzLjctMiA2LjUtMnM0LjkxLjc0IDYuNSAybS0xMy0xMWMxLjY4IDEuMjYgMy43IDIgNi41IDJzNC45MS0uNzQgNi41LTIiLz48Y2lyY2xlIHN0cm9rZT0iY3VycmVudENvbG9yIiBjeD0iOSIgY3k9IjkiIHI9IjguNSIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBkPSJNMTMuNSA5YzAgMi40Mi0uNTUgNC41OC0xLjQgNi4xMi0uODcgMS41Ni0xLjk4IDIuMzgtMy4xIDIuMzhzLTIuMjMtLjgyLTMuMS0yLjM4Yy0uODUtMS41NC0xLjQtMy43LTEuNC02LjEycy41NS00LjU4IDEuNC02LjEyQzYuNzcgMS4zMiA3Ljg4LjUgOSAuNXMyLjIzLjgyIDMuMSAyLjM4Yy44NSAxLjU0IDEuNCAzLjcgMS40IDYuMTJ6Ii8+PC9zdmc+J30sMjA3NzQ2KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNCAxMiIgd2lkdGg9IjE0IiBoZWlnaHQ9IjEyIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZT0iIzlEQjJCRCI+PHBhdGggZD0iTTEgMGwxMiAxMk0xMyAwTDEgMTIiLz48L2c+PC9zdmc+J30sNjA4MDY1KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxOSAyMiIgd2lkdGg9IjE5IiBoZWlnaHQ9IjIyIiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTUgMXY5LjEzYTQgNCAwIDAgMSAwIDcuNzVWMjFhMSAxIDAgMSAxLTIgMHYtMy0uMTJhNCA0IDAgMCAxIDAtNy43NVYxYTEgMSAwIDAgMSAyIDB6TTIgMTRhMiAyIDAgMSAxIDQgMCAyIDIgMCAwIDEtNCAwem0xMi05Ljg4VjFhMSAxIDAgMSAxIDIgMHYzLjEyYTQgNCAwIDAgMSAwIDcuNzVWMjFhMSAxIDAgMSAxLTIgMHYtOS4xM2E0IDQgMCAwIDEgMC03Ljc1ek0xNSAxMGEyIDIgMCAxIDAgMC00IDIgMiAwIDAgMCAwIDR6Ii8+PC9zdmc+J30sNjkzMjM2KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj48cGF0aCBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgZD0iTTguMzYgMy42MDhhNi4wMDIgNi4wMDIgMCAxIDAgMi43NTUgMTEuNjcyIDYuMDEgNi4wMSAwIDAgMCA0LjI3Ny00LjY0IDUgNSAwIDEgMS03LjAzLTcuMDN6Ii8+PC9zdmc+J30sMTQwODk1KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMjAgMTIwIiB3aWR0aD0iMTIwIiBoZWlnaHQ9IjEyMCI+PHBhdGggZmlsbD0iI0IyQjVCRSIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMjMgMzlhMzYgMzYgMCAwIDEgNzIgMHYxMy4xNWwxNS4xIDguNDQgMi4xNiAxLjItMS42NCAxLjg2LTEyLjg1IDE0LjU5IDMuNzMgNC4wM0w5OC41NyA4NSA5NSA4MS4xM1YxMTdINzd2LTEySDY3djlINTBWOTVINDB2MjJIMjNWODEuMjhsLTMuOCAzLjYxLTIuNzYtMi45IDQuMDUtMy44NC0xMi43Ny0xNC41LTEuNjQtMS44NiAyLjE2LTEuMkwyMyA1Mi4zNFYzOVptNzIgMzYuMzMgMTAuOTgtMTIuNDZMOTUgNTYuNzN2MTguNlpNMjMgNTYuOTJ2MTguMDNMMTIuMzUgNjIuODcgMjMgNTYuOTJaTTU5IDdhMzIgMzIgMCAwIDAtMzIgMzJ2NzRoOVY5MWgxOHYxOWg5di05aDE4djEyaDEwVjM5QTMyIDMyIDAgMCAwIDU5IDdabS03IDM2YTMgMyAwIDEgMS02IDAgMyAzIDAgMCAxIDYgMFptMTkgM2EzIDMgMCAxIDAgMC02IDMgMyAwIDAgMCAwIDZaIi8+PC9zdmc+J30sNDg3NzUwKGUpewplLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTIwIDEyMCIgd2lkdGg9IjEyMCIgaGVpZ2h0PSIxMjAiPjxwYXRoIGZpbGw9IiMxMzE3MjIiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTIzIDM5YTM2IDM2IDAgMCAxIDcyIDB2MTMuMTVsMTUuMSA4LjQ0IDIuMTYgMS4yLTEuNjQgMS44Ni0xMi44NSAxNC41OSAzLjczIDQuMDNMOTguNTcgODUgOTUgODEuMTNWMTE3SDc3di0xMkg2N3Y5SDUwVjk1SDQwdjIySDIzVjgxLjI4bC0zLjggMy42MS0yLjc2LTIuOSA0LjA1LTMuODQtMTIuNzctMTQuNS0xLjY0LTEuODYgMi4xNi0xLjJMMjMgNTIuMzRWMzlabTcyIDM2LjMzIDEwLjk4LTEyLjQ2TDk1IDU2LjczdjE4LjZaTTIzIDU2LjkydjE4LjAzTDEyLjM1IDYyLjg3IDIzIDU2LjkyWk01OSA3YTMyIDMyIDAgMCAwLTMyIDMydjc0aDlWOTFoMTh2MTloOXYtOWgxOHYxMmgxMFYzOUEzMiAzMiAwIDAgMCA1OSA3Wm0tNyAzNmEzIDMgMCAxIDEtNiAwIDMgMyAwIDAgMSA2IDBabTE5IDNhMyAzIDAgMSAwIDAtNiAzIDMgMCAwIDAgMCA2WiIvPjwvc3ZnPid9LDI2MTE3OChlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTYgMTYiIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMSAxKSI+PGNpcmNsZSBjeD0iNiIgY3k9IjYiIHI9IjYiLz48cGF0aCBkPSJNMTAgMTBsNCA0Ii8+PC9nPjwvc3ZnPid9LDE0NzA3OChlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTggMTgiIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCI+PHBhdGggZD0iTTMuMDYgNi4yOTVDMi4zNyA3LjM5NyAyIDguNjcgMiAxMGMwIDMuODY2IDMuMTM0IDcgNyA3czctMy4xMzQgNy03LTMuMTM0LTctNy03VjJjNC40MTggMCA4IDMuNTgyIDggOHMtMy41ODIgOC04IDgtOC0zLjU4Mi04LThjMC0xLjU1Ni40NDQtMy4wMDcgMS4yMTItNC4yMzZsLjg0OC41M3ptMCAwQzIuMzcgNy4zOTcgMiA4LjY3IDIgMTBjMCAzLjg2NiAzLjEzNCA3IDcgN3M3LTMuMTM0IDctNy0zLjEzNC03LTctN1YyYzQuNDE4IDAgOCAzLjU4MiA4IDhzLTMuNTgyIDgtOCA4LTgtMy41ODItOC04YzAtMS41NTYuNDQ0LTMuMDA3IDEuMjEyLTQuMjM2bC44NDguNTN6TTYgMi41TDkgMHY1TDYgMi41eiIvPjwvc3ZnPid9LDc2OTkzOShlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjAgMjAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgZD0iTTMuNSAxMC41aDJ2NWgtMnoiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTQuNSA4LjV2Mm0wIDV2MiIvPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTE0IDhoM3Y2aC0zeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTUuNSA2LjV2OW0tNy0xMWg0bS0yLTJ2NCIvPjwvZz48L3N2Zz4nfSw0OTUzOTYoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIGQ9Ik0xNC41IDQuNWgydjZoLTJ6Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xNS41IDIuNXYybTAgNnYyIi8+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNMyA0aDN2NkgzeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNNC41IDIuNXY5bTQgNGg0bS0yLTJ2NCIvPjwvZz48L3N2Zz4nfSwyODc4MzIoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPjxwYXRoIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xNC41IDEwLjV2N20tMS03aDJtLTUgMXYtNG0tMyAydi00bS0zIDJ2LTQiLz48L3N2Zz4nfSwyMzE3NzAoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPjxwYXRoIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xNC41IDIuNXY3bS0xIDBoMm0tNSAydi00bS0zIDd2LTRtLTMgNnYtNCIvPjwvc3ZnPid9LDY4MzM4MyhlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjAgMjAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCI+PHBhdGggZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTEwLjUgNi41djdtLTItNGg0Ii8+PC9zdmc+J30sNjQ0OTA1KGUpewplLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjAgMjAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik0xNSA0aDN2MTJoLTN6Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xNi41IDE3LjV2LTE1Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIGQ9Ik0xMC41IDcuNWgydjRoLTJ6Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xMS41IDUuNXYybTAgNHYybS00IDJ2LTRtLTMgNXYtNG0tMyA1di00Ii8+PC9nPjwvc3ZnPid9LDYzNTI3MChlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjAgMjAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik05IDhoM3Y2SDl6Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xMC41IDYuNXY5Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIGQ9Ik0xNC41IDQuNWgydjExaC0yeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTUuNSAyLjV2Mm0tOSA0di00bS0zIDN2LTRtMTIgMTJ2MiIvPjwvZz48L3N2Zz4nfSwzODY3MjYoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIGQ9Ik02LjUgNi41aDJ2NWgtMnoiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTcuNSA0LjV2Mm0wIDV2MiIvPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTE2IDVoM3Y2aC0zeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTcuNSAzLjV2OSIvPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTExIDNoM3YyaC0zeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTIuNSAyLjV2M20tOCAxMXYtNG0tMiA2di00Ii8+PC9nPjwvc3ZnPid9LDEyMzcyOShlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjAgMjAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTExLjUgOS41djhtLTQtOHYtNG04IDR2LTRtLTExIDJ2LTQiLz48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik0xMCA5aDN2NGgtM3oiLz48L2c+PC9zdmc+J30sNzI1NjAyKGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTEuNSA0LjV2MTBtLTQtM3YtNG0tMyA3di00Ii8+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNMTAgNGgzdjNoLTN6Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xNS41IDExLjV2LTQiLz48L2c+PC9zdmc+J30sMTI5Nzk0KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBkPSJNMTAuNSA1LjVoMnY3aC0yeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTEuNSAzLjV2Mm0wIDd2MiIvPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTE1IDVoM3YzaC0zeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTYuNSAzLjV2Ni4wN20tOSAzLjkzdi00bS0zIDZ2LTRtLTMgNnYtNCIvPjwvZz48L3N2Zz4nfSwyMTcoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNMTAgN2gzdjhoLTN6Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xMS41IDUuNXYxMSIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBkPSJNMTUuNSA3LjVoMnYzaC0yeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTYuNSA1LjV2Mm0wIDN2Mm0tOS0ydi00bS0zIDJ2LTRtLTMgMnYtNCIvPjwvZz48L3N2Zz4nfSwyNjc1ODcoZSl7CmUuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZT0iY3VycmVudENvbG9yIj48cGF0aCBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTEuNSA2LjV2N20tNCAwdi00bTggNHYtNG0tMTEgMnYtNCIvPjxwYXRoIGQ9Ik0xMC41IDEzLjVoMnYzaC0yeiIvPjwvZz48L3N2Zz4nfSw5MzMxMzgoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNMTUgOWgzdjRoLTN6Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xMS41IDkuNXYtMm0wLTV2Mm01IDN2N20wLTV2MiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBkPSJNMTAuNSA0LjVoMnYzaC0yeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNNy41IDEzLjV2LTJtMC01djIiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgZD0iTTYuNSA4LjVoMnYzaC0yeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMy41IDE3LjV2LTJtMC01djIiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgZD0iTTIuNSAxMi41aDJ2M2gtMnoiLz48L2c+PC9zdmc+J30sMjg1OTkzKGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTE1IDdoM3Y0aC0zeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTEuNSAxNy41di0ybTAtNXYybTUtN3Y3bTAtM3YyIi8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIGQ9Ik0xMC41IDEyLjVoMnYzaC0yeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNNy41IDEzLjV2LTJtMC01djIiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgZD0iTTYuNSA4LjVoMnYzaC0yeiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMy41IDkuNXYtMm0wLTV2MiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBkPSJNMi41IDQuNWgydjNoLTJ6Ii8+PC9nPjwvc3ZnPid9LDc4NjU3OChlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjAgMjAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTkuNSA5LjV2OG0tNC05di00bS0zIDJ2LTQiLz48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik04IDdoM3Y1SDh6Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xNC41IDExLjV2NCIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBkPSJNMTMuNSA3LjVoMnY0aC0yeiIvPjwvZz48L3N2Zz4nfSw2Nzc3NyhlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjAgMjAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTkuNSAxMS41djJtLTQgMnYtNG0tMyA2di00Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIGQ9Ik04LjUgNy41aDJ2NGgtMnoiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTE0LjUgMi41djUiLz48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik0xMyA3aDN2NWgtM3oiLz48L2c+PC9zdmc+J30sMzk5NDk0KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTEzIDRoM3YxMmgtM3oiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTEwLjUgMTEuNXYtNG0tMyAydi00bS0zIDJ2LTQiLz48L2c+PC9zdmc+J30sNDE0Nzk2KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZT0iY3VycmVudENvbG9yIj48cGF0aCBkPSJNMTMuNSA0LjVoMnYxMWgtMnoiLz48cGF0aCBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTAuNSAxMi41di00bS0zIDZ2LTRtLTMgNnYtNCIvPjwvZz48L3N2Zz4nfSwxMzA2ODYoZSl7CmUuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNNC41IDIuNXYxMSIvPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTMgNGgzdjhIM3oiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTE0LjUgNC41djJtMCA3djIiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgZD0iTTEzLjUgNi41aDJ2N2gtMnoiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTkuNSAxMi41djUiLz48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik04IDE0aDN2Mkg4eiIvPjwvZz48L3N2Zz4nfSwxMjAwMzcoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiPjxwYXRoIGQ9Ik0xMC41IDkuNWgydjNoLTJ6Ii8+PHBhdGggc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTExLjUgOC41di02bS00IDEzdi00bTggNHYtNG0tMTEgNnYtNCIvPjwvZz48L3N2Zz4nfSwyMjAzNDEoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xMC41IDMuNXYxMyIvPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTkgOGgzdjRIOXoiLz48L2c+PC9zdmc+J30sMjIzNDgzKGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZT0iY3VycmVudENvbG9yIj48cGF0aCBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNMTAuNSAzLjV2NW0wIDN2NSIvPjxwYXRoIGQ9Ik05LjUgOC41aDJ2M2gtMnoiLz48L2c+PC9zdmc+J30sNzQ0MjQwKGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCIgd2lkdGg9IjIwIiBoZWlnaHQ9IjIwIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTE1IDEyaDN2NGgtM3oiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTE2LjUgMTAuNXY3Ii8+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNMTEgOGgzdjRoLTN6Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xMi41IDYuNXY3Ii8+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNNyA0aDN2NEg3eiIvPjxwYXRoIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBkPSJNOC41IDIuNXY3bS00IDF2LTRtLTIgNnYtNCIvPjwvZz48L3N2Zz4nfSw3MDI5NjcoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PHBhdGggZmlsbD0iY3VycmVudENvbG9yIiBkPSJNMTUgNGgzdjJoLTN6Ii8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xMS41IDExLjV2LTJtMC03djJtNS0ydjUiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgZD0iTTEwLjUgNC41aDJ2NWgtMnoiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTcuNSAxNC41di0ybTAtN3YyIi8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIGQ9Ik02LjUgNy41aDJ2NWgtMnoiLz48cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTMuNSAxNy41di0ybTAtN3YyIi8+PHBhdGggc3Ryb2tlPSJjdXJyZW50Q29sb3IiIGQ9Ik0yLjUgMTAuNWgydjVoLTJ6Ii8+PC9nPjwvc3ZnPid9LDgzNTE3NChlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjAgMjAiIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCI+PHBhdGggZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTE0LjUgOC41aDRtLTItMnY0bS03LTZoNG0tMi0ydjRtLTYgMmg0bS0yLTJ2NG0tMyA1di00bS0yIDZ2LTQiLz48L3N2Zz4nfSw4NzQ5NzMoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPjxwYXRoIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIGQ9Ik0xNC41IDExLjVoNG0tMi0ydjRtLTcgMmg0bS0yLTJ2NG0tNi02aDRtLTItMnY0bS0zLTV2LTRtLTIgMnYtNCIvPjwvc3ZnPid9LDc5MDA4MChlKXsKZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE0IDEyIiB3aWR0aD0iMTQiIGhlaWdodD0iMTIiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0yLjcxIDEuMjlIMS4zdjkuNDJIMi43VjEuM3pNMS4zIDBDLjU4IDAgMCAuNTggMCAxLjI5djkuNDJDMCAxMS40Mi41OCAxMiAxLjI5IDEySDIuN0MzLjQyIDEyIDQgMTEuNDIgNCAxMC43MVYxLjNDNCAuNTggMy40MiAwIDIuNzEgMEgxLjN6TTcuNyAxLjI5SDYuM3Y5LjQySDcuN1YxLjN6TTYuMyAwQzUuNTggMCA1IC41OCA1IDEuMjl2OS40MmMwIC43MS41OCAxLjI5IDEuMjkgMS4yOUg3LjdDOC40MiAxMiA5IDExLjQyIDkgMTAuNzFWMS4zQzkgLjU4IDguNDIgMCA3LjcxIDBINi4zem01IDEuMjloMS40MnY5LjQySDExLjNWMS4zem0tMS4yOSAwQzEwIC41OCAxMC41OCAwIDExLjI5IDBoMS40MkMxMy40MiAwIDE0IC41OCAxNCAxLjI5djkuNDJjMCAuNzEtLjU4IDEuMjktMS4yOSAxLjI5SDExLjNjLS43MSAwLTEuMjktLjU4LTEuMjktMS4yOVYxLjN6Ii8+PC9zdmc+J30sNzU1MDQxKGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxOCAxOCIgd2lkdGg9IjE4IiBoZWlnaHQ9IjE4Ij48cGF0aCBmaWxsPSIjQURBRUIwIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMi41IDExaC0uNzlsLS4yOC0uMjdBNi40NyA2LjQ3IDAgMCAwIDEzIDYuNSA2LjUgNi41IDAgMSAwIDYuNSAxM2MxLjYxIDAgMy4wOS0uNTkgNC4yMy0xLjU3bC4yNy4yOHYuNzlsNSA0Ljk5TDE3LjQ5IDE2bC00Ljk5LTV6bS02IDBDNC4wMSAxMSAyIDguOTkgMiA2LjVTNC4wMSAyIDYuNSAyIDExIDQuMDEgMTEgNi41IDguOTkgMTEgNi41IDExeiIvPjwvc3ZnPid9LDE5OTc4NShlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTAgMTAiIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNzU4Njk2IiBzdHJva2Utd2lkdGg9IjIiPjxwYXRoIGQ9Ik0xLjEyNSA5LjExTDkuMTMgMS4xMDRNMS4xMjUgMS4xMDVMOS4xMyA5LjExIi8+PC9nPjwvc3ZnPid9LDgyMzM1OChlKXtlLmV4cG9ydHM9JzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgOCAzIiB3aWR0aD0iOCIgaGVpZ2h0PSIzIj48cGF0aCBkPSJNMCAwIEw0IDMgTDggMCBaIi8+PC9zdmc+J30sODQxODc3KGUpe2UuZXhwb3J0cz0nPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA4IDMiIHdpZHRoPSI4IiBoZWlnaHQ9IjMiPjxwYXRoIGQ9Ik0wIDMgTDQgMCBMOCAzIFoiLz48L3N2Zz4nfSw1OTg1ODUoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIiB3aWR0aD0iMjAiIGhlaWdodD0iMjAiPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMSAxKSI+PGNpcmNsZSBjeD0iOC41IiBjeT0iOC41IiByPSIzIi8+PHBhdGggc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTEzLjUgOC41aDNNLjUgOC41aDNNOC41IDMuNXYtM00xMyA0bDItMk0yIDE1bDItMiIvPjxwYXRoIHN0cm9rZS1saW5lY2FwPSJzcXVhcmUiIHN0cm9rZS1saW5lam9pbj0iYmV2ZWwiIGQ9Ik0yIDJsMiAyIi8+PHBhdGggc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgZD0iTTEzIDEzbDIgMk04LjUgMTYuNXYtMyIvPjwvZz48L3N2Zz4nfSw4OTMyNTEoZSl7ZS5leHBvcnRzPSc8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDYgMjYiIHdpZHRoPSIzIiBoZWlnaHQ9IjEzIiBmaWxsPSJjdXJyZW50Q29sb3IiPjxjaXJjbGUgY3g9IjMiIGN5PSIzIiByPSIzIi8+PGNpcmNsZSBjeD0iMyIgY3k9IjEzIiByPSIzIi8+PGNpcmNsZSBjeD0iMyIgY3k9IjIzIiByPSIzIi8+PC9zdmc+J30sNzE3MTQxKGUsdCxvKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPW8ucCsibW9jay1kYXJrLjE2YjVmM2E0MzFmNTAyYjAzYWUzLnN2ZyJ9LDQ1ODA1OShlLHQsbyl7InVzZSBzdHJpY3QiO2UuZXhwb3J0cz1vLnArIm1vY2stbGlnaHQuZDIwMTMxMzAxN2ViMmMxYjk4OWYuc3ZnIn0sMjIxMDYxKGUsdCxvKXsidXNlIHN0cmljdCI7dmFyIGk7by5kKHQse2dldExvZ2dlcjooKT0+bSxnZXRSYXdMb2dIaXN0b3J5OigpPT51LHNlcmlhbGl6ZUxvZ0hpc3RvcnlFbnRyeTooKT0+X30pLGZ1bmN0aW9uKGUpe2VbZS5FUlJPUj0xXT0iRVJST1IiLGVbZS5XQVJOSU5HPTJdPSJXQVJOSU5HIixlW2UuSU5GTz0zXT0iSU5GTyIsZVtlLk5PUk1BTD00XT0iTk9STUFMIixlW2UuREVCVUc9NV09IkRFQlVHIn0oaXx8KGk9e30pKTtsZXQgbj0wO2NvbnN0IHI9W107bGV0IHM9bnVsbCxhPW51bGwsbD1udWxsLGM9bnVsbCxkPWkuV0FSTklORyxoPSExO2Z1bmN0aW9uIHUoZSx0KXtsZXQgbz1yLnJlZHVjZSgoKGUsdCk9PmUuY29uY2F0KHQpKSxbXSk7cmV0dXJuIG8uc29ydCgoKGUsdCk9PmUuaWQtdC5pZCkpLHZvaWQgMCE9PXQmJihvPW8uZmlsdGVyKChlPT5lLnN1YlN5c3RlbUlkPT09dCkpKSwibnVtYmVyIj09dHlwZW9mIGUmJihvPW8uc2xpY2UoLWUpKSxvfWZ1bmN0aW9uIF8oZSl7cmV0dXJuIG5ldyBEYXRlKGUudGltZXN0YW1wKS50b0lTT1N0cmluZygpKyI6IitlLnN1YlN5c3RlbUlkKyI6IitlLm1lc3NhZ2UucmVwbGFjZSgvIi9nLCInIil9ZnVuY3Rpb24gcChlLHQsbyxyLHUpe2lmKHQ9PT1hJiZyLmlkPT09bClyZXR1cm47Y29uc3QgXz1uZXcgRGF0ZTtpZihlPD1pLk5PUk1BTCYmZnVuY3Rpb24oZSx0LG8saSxyLHMpeyJmdW5jdGlvbiI9PXR5cGVvZiBzdHJ1Y3R1cmVkQ2xvbmUmJih0PXN0cnVjdHVyZWRDbG9uZSh0KSksdD10LnNsaWNlKDAscz8/MWUzKTtjb25zdCBhPXtpZDpuLAptZXNzYWdlOnQsc3ViU3lzdGVtSWQ6aSx0aW1lc3RhbXA6TnVtYmVyKGUpfTtuKz0xLG8ucHVzaChhKSx2b2lkIDAhPT1yJiZvLmxlbmd0aD5yJiZvLnNwbGljZSgwLDEpfShfLHQsbyxyLmlkLHIubWF4Q291bnQsdSksZTw9ZCYmKCFyLmhpZ2hSYXRlfHxoKSYmKCFzfHxyLmlkLm1hdGNoKHMpKSl7Y29uc3Qgbz1fLnRvSVNPU3RyaW5nKCkrIjoiK3IuaWQrIjoiK3Q7c3dpdGNoKGUpe2Nhc2UgaS5ERUJVRzpjb25zb2xlLmRlYnVnKG8pO2JyZWFrO2Nhc2UgaS5JTkZPOmNhc2UgaS5OT1JNQUw6ci5jb2xvcj9jb25zb2xlLmxvZygiJWMiK28sImNvbG9yOiAiK3IuY29sb3IpOmNvbnNvbGUubG9nKG8pO2JyZWFrO2Nhc2UgaS5XQVJOSU5HOmNvbnNvbGUud2FybihvKTticmVhaztjYXNlIGkuRVJST1I6Y29uc29sZS5lcnJvcihvKX1hPXQsbD1yLmlkLG51bGwhPT1jJiZjbGVhclRpbWVvdXQoYyksYz1zZXRUaW1lb3V0KCgoKT0+e2E9bnVsbCxsPW51bGwsYz1udWxsfSksMWUzKX19ZnVuY3Rpb24gbShlLHQ9e30pe2NvbnN0IG89W107ci5wdXNoKG8pO2NvbnN0IG49T2JqZWN0LmFzc2lnbih0LHtpZDplfSk7ZnVuY3Rpb24gcyhlKXtyZXR1cm4odCxpKT0+cChlLFN0cmluZyh0KSxvLG4saSl9cmV0dXJue2xvZ0RlYnVnOnMoaS5ERUJVRyksbG9nRXJyb3I6cyhpLkVSUk9SKSxsb2dJbmZvOnMoaS5JTkZPKSxsb2dOb3JtYWw6cyhpLk5PUk1BTCksbG9nV2FybjpzKGkuV0FSTklORyl9fX0sODA5NDM2KGUpeyJ1c2Ugc3RyaWN0Igo7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siZHVyIjoiMzUwbXMiLCJkdXItZmFzdCI6IjYwbXMiLCJlYXNlLWluLWxpa2UiOiJjdWJpYy1iZXppZXIoMC4zMywgMCwgMC4xMSwgMSkiLCJlYXNlLW91dC1saWtlIjoiY3ViaWMtYmV6aWVyKDAuODksIDAsIDAuNjcsIDEpIiwic2l6ZS1mZWVkLWl0ZW0td2lkdGgiOiI0ODBweCIsInNpemUtZmVlZC1oaWRlbnQiOiIyMHB4Iiwic2l6ZS1mZWVkLXZpZGVudCI6IjIwcHgiLCJzaXplLWJhc2UtaW5kZW50IjoiNHB4Iiwic2l6ZS1sYXlvdXQtc21hbGwtaG9yenBhZGRpbmciOiIxMnB4Iiwic2l6ZS1sYXlvdXQtaG9yenBhZGRpbmciOiIyMHB4Iiwic2l6ZS1kcmF3aW5ncy10b29sYmFyLWl0ZW0taGVpZ2h0IjoiMzhweCIsInNpemUtaGVhZGVyLWxpbmtpbmRlbnQiOiIxNXB4Iiwic2l6ZS1oZWFkZXItaGVpZ2h0IjoiNjRweCIsInNpemUtbmF2LWhlYWRlci1oZWlnaHQiOiI1OHB4Iiwic2l6ZS1zdGlja3ktc3ltYm9sLWhlYWRlci1oZWlnaHQiOiI2NHB4Iiwic2l6ZS1kaWFsb2ctZml4ZWQtaGVhZGVyLWhlaWdodCI6IjcycHgiLCJzaXplLXNpdGUtd2lkZ2V0LXBhZGRpbmciOiIyMHB4Iiwic2l6ZS1zaXRlLXdpZGdldC1wYWRkaW5nLXRhYmxldCI6IjEycHgiLCJzaXplLWNvbGxhcHNlLXRhYnMtaGVpZ2h0IjoiNTZweCIsInNpemUtbm8tc2Nyb2xsLWNob2ljZXItaGVpZ2h0IjoiNTZweCIsInNpemUtbWFpbi1jaGFydC1hcmVhLWluZGVudCI6IjRweCIsInNpemUtbWFpbi1jaGFydC1hcmVhLXJhZGl1cyI6IjAiLCJzaXplLXNlYXJjaGJhci1oZWlnaHQiOiI4MHB4Iiwic2l6ZS1zZWFyY2hiYXItaGVpZ2h0LXRhYmxldCI6IjU0cHgiLCJzaXplLXNlYXJjaGJhci1idG4td2lkdGgtdGFibGV0IjoiNjZweCIsInNpemUtY29udGVudC10b3AtdmluZGVudCI6IjQ4cHgiLCJzaXplLWxheW91dC13aWR0aCI6IjEwMjBweCIsInNpemUtbGF5b3V0LXdpZHRoLXdpZGUiOiIxNTIwcHgiLCJzaXplLWNoZWNrYm94LXNpZGUiOiIxOHB4Iiwic2l6ZS1jaGVja2JveC1jbGljay1leHBhbmQiOiIxMHB4Iiwic2l6ZS1jb250cm9sLWlucHV0LWhlaWdodC0teHNtYWxsIjoiMTlweCIsInNpemUtY29udHJvbC1pbnB1dC1oZWlnaHQtLXNtYWxsIjoiMjdweCIsInNpemUtY29udHJvbC1pbnB1dC1oZWlnaHQiOiIzNHB4Iiwic2l6ZS1jb250cm9sLWlucHV0LWhlaWdodC0tbGFyZ2UiOiI0OHB4Iiwic2l6ZS1jb250cm9sLWlucHV0LXBhZGRpbmctaG9yeiI6IjEycHgiLCJzaXplLXRhYnMtaG9yei1pbmRlbnQiOiIxNnB4Iiwic2l6ZS1hdmF0YXItYm9yZGVyLXJhZGl1cyI6IjNweCIsInNpemUtY2hhcnQtdmlldy1zcGFjaW5nIjoiMjVweCIsInNpemUtY2hhcnQtdmlldy1zcGFjaW5nLXRhYmxldCI6IjIwcHgiLCJyYWRpdXMtZW1iZWQtd2lkZ2V0LXdyYXBwZXIiOiIzcHgiLCJ0eXBvZ3JhcGh5LXBsYXRmb3JtLXJlZ3VsYXItMTZweC1saW5lLWhlaWdodCI6IjI0cHgiLCJ0eXBvZ3JhcGh5LXBsYXRmb3JtLXJlZ3VsYXItMThweC1saW5lLWhlaWdodCI6IjI4cHgiLCJtZWRpYS1ub3RlYm9vayI6ImFsbCBhbmQgKG1heC13aWR0aDogMTUzMHB4KSIsIm1lZGlhLXRhYmxldCI6ImFsbCBhbmQgKG1heC13aWR0aDogMTAxOXB4KSIsIm1lZGlhLXBob25lIjoiYWxsIGFuZCAobWF4LXdpZHRoOiA3NjdweCkiLCJtZWRpYS1waG9uZS12ZXJ0aWNhbCI6ImFsbCBhbmQgKG1heC13aWR0aDogNDc5cHgpIiwibWVkaWEtZXh0cmVtZS10aGluIjoiYWxsIGFuZCAobWF4LXdpZHRoOiAzMjlweCkiLCJtZWRpYS1zaG93LWRyYXdlciI6ImFsbCBhbmQgKG1heC13aWR0aDogNTY3cHgpIiwibWVkaWEtbWYtbGVnYWN5LXBob25lLXZlcnRpY2FsIjoiYWxsIGFuZCAobWluLXdpZHRoOiAzMzBweCkiLCJtZWRpYS1tZi1sZWdhY3ktcGhvbmUiOiJhbGwgYW5kIChtaW4td2lkdGg6IDQ4MHB4KSIsIm1lZGlhLW1mLWxlZ2FjeS1ub3RlYm9vayI6ImFsbCBhbmQgKG1pbi13aWR0aDogMTAyMHB4KSIsIm1lZGlhLW1mLWxlZ2FjeS1kZXNrdG9wLW1lZGl1bSI6ImFsbCBhbmQgKG1pbi13aWR0aDogMTQ4MHB4KSIsIm1lZGlhLW1mLWxlZ2FjeS1kZXNrdG9wIjoiYWxsIGFuZCAobWluLXdpZHRoOiAxNTMxcHgpIiwibWVkaWEtbWYtcGhvbmUtdmVydGljYWwiOiJhbGwgYW5kIChtaW4td2lkdGg6IDMyMHB4KSIsIm1lZGlhLW1mLXBob25lLWxhbmRzY2FwZSI6ImFsbCBhbmQgKG1pbi13aWR0aDogNTY4cHgpIiwibWVkaWEtbWYtdGFibGV0LXZlcnRpY2FsIjoiYWxsIGFuZCAobWluLXdpZHRoOiA3NjhweCkiLCJtZWRpYS1tZi10YWJsZXQtbGFuZHNjYXBlIjoiYWxsIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIiwibWVkaWEtbWYtbGFwdG9wIjoiYWxsIGFuZCAobWluLXdpZHRoOiAxMjgwcHgpIiwibWVkaWEtbWYtZGVza3RvcC1tZWRpdW0iOiJhbGwgYW5kIChtaW4td2lkdGg6IDE0NDBweCkiLCJtZWRpYS1tZi1kZXNrdG9wLWxhcmdlIjoiYWxsIGFuZCAobWluLXdpZHRoOiAxOTIwcHgpIiwibWVkaWEtbWYtZGVza3RvcC1leHRyYS1sYXJnZSI6ImFsbCBhbmQgKG1pbi13aWR0aDogMjU2MHB4KSIsImNvbnRhaW5lci10YWJsZXQiOiIobWF4LXdpZHRoOiAxMDE5cHgpIiwiY29udGFpbmVyLXBob25lIjoiKG1heC13aWR0aDogNzY3cHgpIiwiY29udGFpbmVyLXBob25lLXZlcnRpY2FsIjoiKG1heC13aWR0aDogNDc5cHgpIiwiY29udGFpbmVyLW1mLXBob25lLXZlcnRpY2FsIjoiKG1pbi13aWR0aDogMzAwcHgpIiwiY29udGFpbmVyLW1mLXBob25lLWxhbmRzY2FwZSI6IihtaW4td2lkdGg6IDU0OHB4KSIsImNvbnRhaW5lci1tZi10YWJsZXQtdmVydGljYWwiOiIobWluLXdpZHRoOiA3MDJweCkiLCJjb250YWluZXItbWYtdGFibGV0LWxhbmRzY2FwZSI6IihtaW4td2lkdGg6IDk1OHB4KSIsImNvbnRhaW5lci1tZi1sYXB0b3AiOiIobWluLXdpZHRoOiAxMjE0cHgpIiwiY29udGFpbmVyLW1mLWRlc2t0b3AtbWVkaXVtIjoiKG1pbi13aWR0aDogMTM3NHB4KSIsImNvbnRhaW5lci1tZi1kZXNrdG9wLWxhcmdlIjoiKG1pbi13aWR0aDogMTg1NHB4KSIsImNvbnRhaW5lci1tZi1kZXNrdG9wLWV4dHJhLWxhcmdlIjoiKG1pbi13aWR0aDogMjQ5NHB4KSIsIm1lZGlhLWxhcHRvcCI6ImFsbCBhbmQgKG1pbi13aWR0aDogMTI4MHB4KSBhbmQgKG1heC13aWR0aDogMTQzOXB4KSIsIm1lZGlhLWxhcHRvcC1hbmQtZGVza3RvcC1tZWRpdW0iOiJhbGwgYW5kIChtaW4td2lkdGg6IDEyODBweCkgYW5kIChtYXgtd2lkdGg6IDE5MTlweCkiLCJtZWRpYS1sYW5kc2NhcGUiOiJhbGwgYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzNzVweCkgYW5kIChtYXgtZGV2aWNlLWhlaWdodDogODEycHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkiLCJtZWRpYS1waG9uZS1sYW5kc2NhcGUiOiJhbGwgYW5kIChtYXgtaGVpZ2h0OiA0NDBweCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSIsIm1lZGlhLXdpZGdldGJhci1icmVha3BvaW50IjoiYWxsIGFuZCAobWF4LXdpZHRoOiAxMDY0cHgpIiwiei1pbmRleC1jb250ZW50LXBhZ2UiOjEsInotaW5kZXgtY2hhcnQtbGVnZW5kIjo2LCJ6LWluZGV4LWNoYXJ0LXJpZ2h0LWNvcm5lci1jb250cm9scyI6Nywiei1pbmRleC1sb2FkaW5nLXNjcmVlbiI6OCwiei1pbmRleC1kcm9wZG93biI6OTksInotaW5kZXgtdG9vbGJhci1wb3B1cC1tZW51IjoxMDAsInotaW5kZXgtdG9vbHRpcCI6MTAwMCwiei1pbmRleC11c2VyLWxpbmstcG9wdXAiOjkwMCwiei1pbmRleC1zdGlja3ktc2VhcmNoLWJhciI6MTAxLCJ6LWluZGV4LXJlc2l6YWJsZS1kcmF3ZXIiOjgwMCwiei1pbmRleC1mdWxsc2NyZWVuIjoxMDIsImRpc2FibGVkLXN0YXRlLW9wYWNpdHkiOjAuNSwic2l6ZS1nYXAtbWluaW11bSI6IjIwcHgiLCJzaXplLWdhcC1tZWRpdW0iOiI0MHB4Iiwic2l6ZS1nYXAtbWF4aW11bSI6IjEwMHB4In0nKQp9LDI1NTUxNihlKXsidXNlIHN0cmljdCIKO2UuZXhwb3J0cz1KU09OLnBhcnNlKCd7InVzIjp7InRpdGxlIjoiVVNBIiwic2NyZWVuZXJOYW1lIjoiYW1lcmljYSIsInNjcmVlbmVyVGltZXpvbmUiOiJBbWVyaWNhL05ld19Zb3JrIiwiZGVmYXVsdEV4Y2hhbmdlIjoiVVMiLCJleGNoYW5nZXNGb3JIb3RsaXN0IjpbIkFNRVgiLCJOQVNEQVEiLCJOWVNFIiwiT1RDIiwiVVMiXSwiZXhjaGFuZ2VzU3RvY2tzIjpbIk5BU0RBUSIsIk5ZU0UiLCJOWVNFIEFSQ0EiLCJPVEMiXSwiZ3JvdXAiOiJOb3J0aCBBbWVyaWNhIiwibWFya2V0Um91dGUiOiJ1c2EvIn0sImFlIjp7InRpdGxlIjoiVW5pdGVkIEFyYWIgRW1pcmF0ZXMiLCJzY3JlZW5lck5hbWUiOiJ1YWUiLCJzY3JlZW5lclRpbWV6b25lIjoiQXNpYS9EdWJhaSIsImRlZmF1bHRFeGNoYW5nZSI6IkFEWCIsImV4Y2hhbmdlc0ZvckhvdGxpc3QiOlsiREZNIiwiQURYIl0sImV4Y2hhbmdlc1N0b2NrcyI6WyJERk0iLCJBRFgiLCJOQVNEQVFEVUJBSSJdLCJncm91cCI6Ik1pZGRsZSBFYXN0IC8gQWZyaWNhIiwibWFya2V0Um91dGUiOiJ1YWUvIn0sImFyIjp7InRpdGxlIjoiQXJnZW50aW5hIiwic2NyZWVuZXJOYW1lIjoiYXJnZW50aW5hIiwic2NyZWVuZXJUaW1lem9uZSI6IkFtZXJpY2EvQXJnZW50aW5hL0J1ZW5vc19BaXJlcyIsImV4Y2hhbmdlc0ZvckhvdGxpc3QiOlsiQkNCQSJdLCJleGNoYW5nZXNTdG9ja3MiOlsiQllNQSIsIkJDQkEiXSwiZGVmYXVsdEV4Y2hhbmdlIjoiQkNCQSIsImdyb3VwIjoiTWV4aWNvIGFuZCBTb3V0aCBBbWVyaWNhIiwibWFya2V0Um91dGUiOiJhcmdlbnRpbmEvIn0sImF0Ijp7InRpdGxlIjoiQXVzdHJpYSIsInNjcmVlbmVyTmFtZSI6ImF1c3RyaWEiLCJzY3JlZW5lclRpbWV6b25lIjoiRXVyb3BlL1ZpZW5uYSIsImV4Y2hhbmdlc0ZvckhvdGxpc3QiOlsiVklFIl0sImV4Y2hhbmdlc1N0b2NrcyI6WyJWSUUiXSwiZGVmYXVsdEV4Y2hhbmdlIjoiVklFIiwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6ImF1c3RyaWEvIn0sImF1Ijp7InRpdGxlIjoiQXVzdHJhbGlhIiwic2NyZWVuZXJOYW1lIjoiYXVzdHJhbGlhIiwic2NyZWVuZXJUaW1lem9uZSI6IkF1c3RyYWxpYS9TeWRuZXkiLCJleGNoYW5nZXNTdG9ja3MiOlsiQVNYIl0sImdyb3VwIjoiQXNpYSAvIFBhY2lmaWMiLCJtYXJrZXRSb3V0ZSI6ImF1c3RyYWxpYS8ifSwiYmQiOnsidGl0bGUiOiJCYW5nbGFkZXNoIiwic2NyZWVuZXJOYW1lIjoiYmFuZ2xhZGVzaCIsInNjcmVlbmVyVGltZXpvbmUiOiJBc2lhL0RoYWthIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIkRTRUJEIl0sImV4Y2hhbmdlc0ZvckhvdGxpc3QiOlsiRFNFQkQiXSwiZ3JvdXAiOiJBc2lhIC8gUGFjaWZpYyIsIm1hcmtldFJvdXRlIjoiYmFuZ2xhZGVzaC8ifSwiYmUiOnsidGl0bGUiOiJCZWxnaXVtIiwic2NyZWVuZXJOYW1lIjoiYmVsZ2l1bSIsInNjcmVlbmVyVGltZXpvbmUiOiJFdXJvcGUvQnJ1c3NlbHMiLCJleGNoYW5nZXNGb3JIb3RsaXN0IjpbIkVVUk9ORVhUX0JSVSJdLCJleGNoYW5nZXNTdG9ja3MiOlsiRVVST05FWFRCUlUiXSwiZGVmYXVsdEV4Y2hhbmdlIjoiRVVST05FWFRfQlJVIiwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6ImJlbGdpdW0vIn0sImJoIjp7InRpdGxlIjoiQmFocmFpbiIsInNjcmVlbmVyTmFtZSI6ImJhaHJhaW4iLCJzY3JlZW5lclRpbWV6b25lIjoiQXNpYS9CYWhyYWluIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIkJBSFJBSU4iXSwiZ3JvdXAiOiJNaWRkbGUgRWFzdCAvIEFmcmljYSIsIm1hcmtldFJvdXRlIjoiYmFocmFpbi8ifSwiYnIiOnsidGl0bGUiOiJCcmF6aWwiLCJzY3JlZW5lck5hbWUiOiJicmF6aWwiLCJzY3JlZW5lclRpbWV6b25lIjoiQW1lcmljYS9TYW9fUGF1bG8iLCJleGNoYW5nZXNTdG9ja3MiOlsiQk1GQk9WRVNQQSJdLCJncm91cCI6Ik1leGljbyBhbmQgU291dGggQW1lcmljYSIsIm1hcmtldFJvdXRlIjoiYnJhemlsLyJ9LCJiZyI6eyJ0aXRsZSI6IkJ1bGdhcmlhIiwic2NyZWVuZXJOYW1lIjoiYnVsZ2FyaWEiLCJzY3JlZW5lclRpbWV6b25lIjoiRXVyb3BlL1NvZmlhIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIkJTRVNPRiJdLCJncm91cCI6IkV1cm9wZSIsIm1hcmtldFJvdXRlIjoiYnVsZ2FyaWEvIn0sImNhIjp7InRpdGxlIjoiQ2FuYWRhIiwic2NyZWVuZXJOYW1lIjoiY2FuYWRhIiwic2NyZWVuZXJUaW1lem9uZSI6IkFtZXJpY2EvVG9yb250byIsImV4Y2hhbmdlc1N0b2NrcyI6WyJUU1giLCJUU1hWIiwiQ1NFIiwiTkVPIl0sImdyb3VwIjoiTm9ydGggQW1lcmljYSIsIm1hcmtldFJvdXRlIjoiY2FuYWRhLyJ9LCJjaCI6eyJ0aXRsZSI6IlN3aXR6ZXJsYW5kIiwic2NyZWVuZXJOYW1lIjoic3dpdHplcmxhbmQiLCJzY3JlZW5lclRpbWV6b25lIjoiRXVyb3BlL1p1cmljaCIsImV4Y2hhbmdlc1N0b2NrcyI6WyJTSVgiLCJCWCJdLCJncm91cCI6IkV1cm9wZSIsIm1hcmtldFJvdXRlIjoic3dpdHplcmxhbmQvIn0sImNsIjp7InRpdGxlIjoiQ2hpbGUiLCJzY3JlZW5lck5hbWUiOiJjaGlsZSIsInNjcmVlbmVyVGltZXpvbmUiOiJBbWVyaWNhL1NhbnRpYWdvIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIkJDUyJdLCJncm91cCI6Ik1leGljbyBhbmQgU291dGggQW1lcmljYSIsIm1hcmtldFJvdXRlIjoiY2hpbGUvIn0sImNuIjp7InRpdGxlIjoiTWFpbmxhbmQgQ2hpbmEiLCJ0dkxvY2FsZSI6InpoX0NOIiwic2NyZWVuZXJOYW1lIjoiY2hpbmEiLCJzY3JlZW5lclRpbWV6b25lIjoiQXNpYS9Ib25nX0tvbmciLCJleGNoYW5nZXNGb3JIb3RsaXN0IjpbIlNTRSIsIlNaU0UiXSwiZXhjaGFuZ2VzU3RvY2tzIjpbIlNTRSIsIlNaU0UiLCJTSEZFIiwiWkNFIiwiQ0ZGRVgiXSwiZ3JvdXAiOiJBc2lhIC8gUGFjaWZpYyIsIm1hcmtldFJvdXRlIjoiY2hpbmEvIn0sImNvIjp7InRpdGxlIjoiQ29sb21iaWEiLCJzY3JlZW5lck5hbWUiOiJjb2xvbWJpYSIsInNjcmVlbmVyVGltZXpvbmUiOiJBbWVyaWNhL0JvZ290YSIsImV4Y2hhbmdlc1N0b2NrcyI6WyJCVkMiXSwiZ3JvdXAiOiJNZXhpY28gYW5kIFNvdXRoIEFtZXJpY2EiLCJtYXJrZXRSb3V0ZSI6ImNvbG9tYmlhLyJ9LCJociI6eyJ0aXRsZSI6IkNyb2F0aWEiLCJzY3JlZW5lck5hbWUiOiJjcm9hdGlhIiwic2NyZWVuZXJUaW1lem9uZSI6IkV1cm9wZS9aYWdyZWIiLCJleGNoYW5nZXNTdG9ja3MiOlsiWlNFIl0sImV4Y2hhbmdlc0ZvckhvdGxpc3QiOlsiWlNFIl0sImRlZmF1bHRFeGNoYW5nZSI6IlpTRSIsImdyb3VwIjoiRXVyb3BlIiwibWFya2V0Um91dGUiOiJjcm9hdGlhLyJ9LCJjeSI6eyJ0aXRsZSI6IkN5cHJ1cyIsInNjcmVlbmVyTmFtZSI6ImN5cHJ1cyIsInNjcmVlbmVyVGltZXpvbmUiOiJFdXJvcGUvQ3lwcnVzIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIkNTRUNZIl0sImV4Y2hhbmdlc0ZvckhvdGxpc3QiOlsiQ1NFQ1kiXSwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6ImN5cHJ1cy8ifSwiY3oiOnsidGl0bGUiOiJDemVjaCBSZXB1YmxpYyIsInNjcmVlbmVyTmFtZSI6ImN6ZWNoIiwic2NyZWVuZXJUaW1lem9uZSI6IkV1cm9wZS9DemVjaCIsImV4Y2hhbmdlc1N0b2NrcyI6WyJQU0VDWiJdLCJleGNoYW5nZXNGb3JIb3RsaXN0IjpbIlBTRUNaIl0sImdyb3VwIjoiRXVyb3BlIiwibWFya2V0Um91dGUiOiJjemVjaC8ifSwiZGUiOnsidGl0bGUiOiJHZXJtYW55IiwidHZMb2NhbGUiOiJkZV9ERSIsInNjcmVlbmVyTmFtZSI6Imdlcm1hbnkiLCJzY3JlZW5lclRpbWV6b25lIjoiRXVyb3BlL0JlcmxpbiIsImRlZmF1bHRFeGNoYW5nZSI6IlhFVFIiLCJleGNoYW5nZXNTdG9ja3MiOlsiRldCIiwiU1dCIiwiWEVUUiIsIkRVUyIsIkhBTSIsIkhBTiIsIk1VTiIsIlRSQURFR0FURSIsIkxTIiwiTFNYIiwiR0VUVEVYIl0sImV4Y2hhbmdlc0ZvckhvdGxpc3QiOlsiRldCIiwiU1dCIiwiWEVUUiIsIkRVUyIsIkhBTSIsIkhBTiIsIk1VTiIsIlRSQURFR0FURSIsIkxTIiwiTFNYIl0sImdyb3VwIjoiRXVyb3BlIiwibWFya2V0Um91dGUiOiJnZXJtYW55LyJ9LCJkayI6eyJ0aXRsZSI6IkRlbm1hcmsiLCJzY3JlZW5lck5hbWUiOiJkZW5tYXJrIiwic2NyZWVuZXJUaW1lem9uZSI6IkV1cm9wZS9Db3BlbmhhZ2VuIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIk9NWENPUCJdLCJncm91cCI6IkV1cm9wZSIsIm1hcmtldFJvdXRlIjoiZGVubWFyay8ifSwiZWUiOnsidGl0bGUiOiJFc3RvbmlhIiwic2NyZWVuZXJOYW1lIjoiZXN0b25pYSIsInNjcmVlbmVyVGltZXpvbmUiOiJFdXJvcGUvVGFsbGlubiIsImV4Y2hhbmdlc1N0b2NrcyI6WyJPTVhUU0UiXSwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6ImVzdG9uaWEvIn0sImVnIjp7InRpdGxlIjoiRWd5cHQiLCJzY3JlZW5lck5hbWUiOiJlZ3lwdCIsInNjcmVlbmVyVGltZXpvbmUiOiJBZnJpY2EvQ2Fpcm8iLCJleGNoYW5nZXNTdG9ja3MiOlsiRUdYIl0sImdyb3VwIjoiTWlkZGxlIEVhc3QgLyBBZnJpY2EiLCJtYXJrZXRSb3V0ZSI6ImVneXB0LyJ9LCJlcyI6eyJ0aXRsZSI6IlNwYWluIiwic2NyZWVuZXJOYW1lIjoic3BhaW4iLCJzY3JlZW5lclRpbWV6b25lIjoiRXVyb3BlL01hZHJpZCIsImV4Y2hhbmdlc1N0b2NrcyI6WyJCTUUiXSwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6InNwYWluLyJ9LCJldSI6eyJ0aXRsZSI6IkV1cm9wZWFuIFVuaW9uIiwic2NyZWVuZXJOYW1lIjoiZXVyb25leHQiLCJzY3JlZW5lclRpbWV6b25lIjoiRXVyb3BlL1BhcmlzIiwiZXhjaGFuZ2VzRm9ySG90bGlzdCI6W10sImV4Y2hhbmdlc1N0b2NrcyI6WyJFVVJPTkVYVCIsIkVVUk9ORVhUQ09NTSJdLCJncm91cCI6IkV1cm9wZSJ9LCJmaSI6eyJ0aXRsZSI6IkZpbmxhbmQiLCJzY3JlZW5lck5hbWUiOiJmaW5sYW5kIiwic2NyZWVuZXJUaW1lem9uZSI6IkV1cm9wZS9IZWxzaW5raSIsImV4Y2hhbmdlc1N0b2NrcyI6WyJPTVhIRVgiXSwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6ImZpbmxhbmQvIn0sImZyIjp7InRpdGxlIjoiRnJhbmNlIiwic2NyZWVuZXJOYW1lIjoiZnJhbmNlIiwic2NyZWVuZXJUaW1lem9uZSI6IkV1cm9wZS9QYXJpcyIsImV4Y2hhbmdlc0ZvckhvdGxpc3QiOlsiRVVST05FWFRfUEFSIl0sImV4Y2hhbmdlc1N0b2NrcyI6WyJFVVJPTkVYVFBBUiJdLCJkZWZhdWx0RXhjaGFuZ2UiOiJFVVJPTkVYVF9QQVIiLCJncm91cCI6IkV1cm9wZSIsIm1hcmtldFJvdXRlIjoiZnJhbmNlLyJ9LCJnZSI6eyJ0aXRsZSI6Ikdlb3JnaWEifSwiZ3IiOnsidGl0bGUiOiJHcmVlY2UiLCJzY3JlZW5lck5hbWUiOiJncmVlY2UiLCJzY3JlZW5lclRpbWV6b25lIjoiRXVyb3BlL0F0aGVucyIsImV4Y2hhbmdlc1N0b2NrcyI6WyJBVEhFWCJdLCJncm91cCI6IkV1cm9wZSIsIm1hcmtldFJvdXRlIjoiZ3JlZWNlLyJ9LCJoayI6eyJ0aXRsZSI6IkhvbmcgS29uZywgQ2hpbmEiLCJzY3JlZW5lck5hbWUiOiJob25na29uZyIsInNjcmVlbmVyVGltZXpvbmUiOiJBc2lhL0hvbmdfS29uZyIsImV4Y2hhbmdlc1N0b2NrcyI6WyJIS0VYIl0sImdyb3VwIjoiQXNpYSAvIFBhY2lmaWMiLCJtYXJrZXRSb3V0ZSI6Imhvbmcta29uZy8ifSwiaHUiOnsidGl0bGUiOiJIdW5nYXJ5Iiwic2NyZWVuZXJOYW1lIjoiaHVuZ2FyeSIsInNjcmVlbmVyVGltZXpvbmUiOiJFdXJvcGUvQnVkYXBlc3QiLCJleGNoYW5nZXNTdG9ja3MiOlsiQkVUIl0sImV4Y2hhbmdlc0ZvckhvdGxpc3QiOlsiQkVUIl0sImRlZmF1bHRFeGNoYW5nZSI6IkJFVCIsImdyb3VwIjoiRXVyb3BlIiwibWFya2V0Um91dGUiOiJodW5nYXJ5LyJ9LCJpZCI6eyJ0aXRsZSI6IkluZG9uZXNpYSIsInNjcmVlbmVyTmFtZSI6ImluZG9uZXNpYSIsInNjcmVlbmVyVGltZXpvbmUiOiJBc2lhL0pha2FydGEiLCJleGNoYW5nZXNTdG9ja3MiOlsiSURYIl0sImdyb3VwIjoiQXNpYSAvIFBhY2lmaWMiLCJtYXJrZXRSb3V0ZSI6ImluZG9uZXNpYS8ifSwiaWUiOnsidGl0bGUiOiJJcmVsYW5kIiwic2NyZWVuZXJOYW1lIjoiaXJlbGFuZCIsInNjcmVlbmVyVGltZXpvbmUiOiJFdXJvcGUvRHVibGluIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIkVVUk9ORVhURFVCIl0sImdyb3VwIjoiRXVyb3BlIiwibWFya2V0Um91dGUiOiJpcmVsYW5kLyJ9LCJpbCI6eyJ0aXRsZSI6IklzcmFlbCIsInR2TG9jYWxlIjoiaGVfSUwiLCJzY3JlZW5lck5hbWUiOiJpc3JhZWwiLCJzY3JlZW5lclRpbWV6b25lIjoiQXNpYS9KZXJ1c2FsZW0iLCJleGNoYW5nZXNTdG9ja3MiOlsiVEFTRSJdLCJncm91cCI6Ik1pZGRsZSBFYXN0IC8gQWZyaWNhIiwibWFya2V0Um91dGUiOiJpc3JhZWwvIn0sImluIjp7InRpdGxlIjoiSW5kaWEiLCJzY3JlZW5lck5hbWUiOiJpbmRpYSIsInNjcmVlbmVyVGltZXpvbmUiOiJBc2lhL0tvbGthdGEiLCJleGNoYW5nZXNTdG9ja3MiOlsiQlNFIiwiTlNFIl0sImdyb3VwIjoiQXNpYSAvIFBhY2lmaWMiLCJtYXJrZXRSb3V0ZSI6ImluZGlhLyJ9LCJpciI6eyJ0aXRsZSI6IklyYW4ifSwiaXMiOnsidGl0bGUiOiJJY2VsYW5kIiwic2NyZWVuZXJOYW1lIjoiaWNlbGFuZCIsInNjcmVlbmVyVGltZXpvbmUiOiJBdGxhbnRpYy9SZXlramF2aWsiLCJleGNoYW5nZXNTdG9ja3MiOlsiT01YSUNFIl0sImdyb3VwIjoiRXVyb3BlIiwibWFya2V0Um91dGUiOiJpY2VsYW5kLyJ9LCJpdCI6eyJ0aXRsZSI6Ikl0YWx5Iiwic2NyZWVuZXJOYW1lIjoiaXRhbHkiLCJzY3JlZW5lclRpbWV6b25lIjoiRXVyb3BlL1JvbWUiLCJleGNoYW5nZXNGb3JIb3RsaXN0IjpbIk1JTCIsIkVVUk9UTFgiXSwiZXhjaGFuZ2VzU3RvY2tzIjpbIk1JTCIsIkVVUk9UTFgiXSwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6Iml0YWx5LyJ9LCJqcCI6eyJ0aXRsZSI6IkphcGFuIiwidHZMb2NhbGUiOiJqYSIsInNjcmVlbmVyTmFtZSI6ImphcGFuIiwic2NyZWVuZXJUaW1lem9uZSI6IkFzaWEvVG9reW8iLCJkZWZhdWx0RXhjaGFuZ2UiOiJUU0UiLCJleGNoYW5nZXNGb3JIb3RsaXN0IjpbIk5BRyIsIlRTRSJdLCJleGNoYW5nZXNTdG9ja3MiOlsiVFNFIiwiTkFHIiwiRlNFIiwiU0FQU0UiXSwiZ3JvdXAiOiJBc2lhIC8gUGFjaWZpYyIsIm1hcmtldFJvdXRlIjoiamFwYW4vIn0sImtlIjp7InRpdGxlIjoiS2VueWEiLCJzY3JlZW5lck5hbWUiOiJrZW55YSIsInNjcmVlbmVyVGltZXpvbmUiOiJBZnJpY2EvTmFpcm9iaSIsImV4Y2hhbmdlc1N0b2NrcyI6WyJOU0VLRSJdLCJncm91cCI6Ik1pZGRsZSBFYXN0IC8gQWZyaWNhIiwibWFya2V0Um91dGUiOiJrZW55YS8ifSwia3AiOnsidGl0bGUiOiJOb3J0aCBLb3JlYSJ9LCJrciI6eyJ0aXRsZSI6IlNvdXRoIEtvcmVhIiwidHZMb2NhbGUiOiJrciIsInNjcmVlbmVyTmFtZSI6ImtvcmVhIiwic2NyZWVuZXJUaW1lem9uZSI6IkFzaWEvU2VvdWwiLCJleGNoYW5nZXNTdG9ja3MiOlsiS1JYIl0sImdyb3VwIjoiQXNpYSAvIFBhY2lmaWMiLCJtYXJrZXRSb3V0ZSI6ImtvcmVhLyJ9LCJrdyI6eyJ0aXRsZSI6Ikt1d2FpdCIsInNjcmVlbmVyTmFtZSI6Imt1d2FpdCIsInNjcmVlbmVyVGltZXpvbmUiOiJBc2lhL0t1d2FpdCIsImV4Y2hhbmdlc1N0b2NrcyI6WyJLU0UiXSwiZ3JvdXAiOiJNaWRkbGUgRWFzdCAvIEFmcmljYSIsIm1hcmtldFJvdXRlIjoia3V3YWl0LyJ9LCJsayI6eyJ0aXRsZSI6IlNyaSBMYW5rYSIsInNjcmVlbmVyTmFtZSI6InNyaWxhbmthIiwic2NyZWVuZXJUaW1lem9uZSI6IkFzaWEvQ29sb21ibyIsImV4Y2hhbmdlc1N0b2NrcyI6WyJDU0VMSyJdLCJncm91cCI6IkFzaWEgLyBQYWNpZmljIiwibWFya2V0Um91dGUiOiJzcmktbGFua2EvIn0sImx0Ijp7InRpdGxlIjoiTGl0aHVhbmlhIiwic2NyZWVuZXJOYW1lIjoibGl0aHVhbmlhIiwic2NyZWVuZXJUaW1lem9uZSI6IkV1cm9wZS9WaWxuaXVzIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIk9NWFZTRSJdLCJncm91cCI6IkV1cm9wZSIsIm1hcmtldFJvdXRlIjoibGl0aHVhbmlhLyJ9LCJsdiI6eyJ0aXRsZSI6IkxhdHZpYSIsInNjcmVlbmVyTmFtZSI6ImxhdHZpYSIsInNjcmVlbmVyVGltZXpvbmUiOiJFdXJvcGUvUmlnYSIsImV4Y2hhbmdlc1N0b2NrcyI6WyJPTVhSU0UiXSwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6ImxhdHZpYS8ifSwibHUiOnsidGl0bGUiOiJMdXhlbWJvdXJnIiwic2NyZWVuZXJOYW1lIjoibHV4ZW1ib3VyZyIsInNjcmVlbmVyVGltZXpvbmUiOiJFdXJvcGUvTHV4ZW1ib3VyZyIsImV4Y2hhbmdlc1N0b2NrcyI6WyJMVVhTRSJdLCJleGNoYW5nZXNGb3JIb3RsaXN0IjpbIkxVWFNFIl0sImRlZmF1bHRFeGNoYW5nZSI6IkxVWFNFIiwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6Imx1eGVtYm91cmcvIn0sIm14Ijp7InRpdGxlIjoiTWV4aWNvIiwic2NyZWVuZXJOYW1lIjoibWV4aWNvIiwic2NyZWVuZXJUaW1lem9uZSI6IkFtZXJpY2EvTWV4aWNvX0NpdHkiLCJleGNoYW5nZXNTdG9ja3MiOlsiQk1WIiwiQklWQSJdLCJncm91cCI6Ik1leGljbyBhbmQgU291dGggQW1lcmljYSIsIm1hcmtldFJvdXRlIjoibWV4aWNvLyJ9LCJtYSI6eyJ0aXRsZSI6Ik1vcm9jY28iLCJzY3JlZW5lck5hbWUiOiJtb3JvY2NvIiwic2NyZWVuZXJUaW1lem9uZSI6IkFmcmljYS9Nb3JvY2NvIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIkNTRU1BIl0sImV4Y2hhbmdlc0ZvckhvdGxpc3QiOlsiQ1NFTUEiXSwiZ3JvdXAiOiJNaWRkbGUgRWFzdCAvIEFmcmljYSIsIm1hcmtldFJvdXRlIjoibW9yb2Njby8ifSwibXkiOnsidGl0bGUiOiJNYWxheXNpYSIsInR2TG9jYWxlIjoibXNfTVkiLCJzY3JlZW5lck5hbWUiOiJtYWxheXNpYSIsInNjcmVlbmVyVGltZXpvbmUiOiJBc2lhL1NpbmdhcG9yZSIsImV4Y2hhbmdlc1N0b2NrcyI6WyJNWVgiXSwiZ3JvdXAiOiJBc2lhIC8gUGFjaWZpYyIsIm1hcmtldFJvdXRlIjoibWFsYXlzaWEvIn0sIm5nIjp7InRpdGxlIjoiTmlnZXJpYSIsInNjcmVlbmVyTmFtZSI6Im5pZ2VyaWEiLCJzY3JlZW5lclRpbWV6b25lIjoiQWZyaWNhL0xhZ29zIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIk5TRU5HIl0sImdyb3VwIjoiTWlkZGxlIEVhc3QgLyBBZnJpY2EiLCJtYXJrZXRSb3V0ZSI6Im5pZ2VyaWEvIn0sIm5sIjp7InRpdGxlIjoiTmV0aGVybGFuZHMiLCJzY3JlZW5lck5hbWUiOiJuZXRoZXJsYW5kcyIsInNjcmVlbmVyVGltZXpvbmUiOiJFdXJvcGUvQW1zdGVyZGFtIiwiZXhjaGFuZ2VzRm9ySG90bGlzdCI6WyJFVVJPTkVYVF9BTVMiXSwiZXhjaGFuZ2VzU3RvY2tzIjpbIkVVUk9ORVhUQU1TIl0sImRlZmF1bHRFeGNoYW5nZSI6IkVVUk9ORVhUX0FNUyIsImdyb3VwIjoiRXVyb3BlIiwibWFya2V0Um91dGUiOiJuZXRoZXJsYW5kcy8ifSwibm8iOnsidGl0bGUiOiJOb3J3YXkiLCJzY3JlZW5lck5hbWUiOiJub3J3YXkiLCJzY3JlZW5lclRpbWV6b25lIjoiRXVyb3BlL09zbG8iLCJleGNoYW5nZXNGb3JIb3RsaXN0IjpbIk9TTCJdLCJleGNoYW5nZXNTdG9ja3MiOlsiRVVST05FWFRPU0UiXSwiZGVmYXVsdEV4Y2hhbmdlIjoiT1NMIiwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6Im5vcndheS8ifSwibnoiOnsidGl0bGUiOiJOZXcgWmVhbGFuZCIsInNjcmVlbmVyTmFtZSI6Im5ld3plYWxhbmQiLCJzY3JlZW5lclRpbWV6b25lIjoiUGFjaWZpYy9BdWNrbGFuZCIsImV4Y2hhbmdlc1N0b2NrcyI6WyJOWlgiXSwiZ3JvdXAiOiJBc2lhIC8gUGFjaWZpYyIsIm1hcmtldFJvdXRlIjoibmV3LXplYWxhbmQvIn0sInBlIjp7InRpdGxlIjoiUGVydSIsInNjcmVlbmVyTmFtZSI6InBlcnUiLCJzY3JlZW5lclRpbWV6b25lIjoiQW1lcmljYS9MaW1hIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIkJWTCJdLCJncm91cCI6Ik1leGljbyBhbmQgU291dGggQW1lcmljYSIsIm1hcmtldFJvdXRlIjoicGVydS8ifSwicGgiOnsidGl0bGUiOiJQaGlsaXBwaW5lcyIsInNjcmVlbmVyTmFtZSI6InBoaWxpcHBpbmVzIiwic2NyZWVuZXJUaW1lem9uZSI6IlBoaWxpcHBpbmVzL01hbmlsYSIsImV4Y2hhbmdlc1N0b2NrcyI6WyJQU0UiXSwiZ3JvdXAiOiJBc2lhIC8gUGFjaWZpYyIsIm1hcmtldFJvdXRlIjoicGhpbGlwcGluZXMvIn0sInBrIjp7InRpdGxlIjoiUGFraXN0YW4iLCJzY3JlZW5lck5hbWUiOiJwYWtpc3RhbiIsInNjcmVlbmVyVGltZXpvbmUiOiJBc2lhL0thcmFjaGkiLCJleGNoYW5nZXNGb3JIb3RsaXN0IjpbIlBTWCJdLCJleGNoYW5nZXNTdG9ja3MiOlsiUFNYIl0sImRlZmF1bHRFeGNoYW5nZSI6IlBTWCIsImdyb3VwIjoiQXNpYSAvIFBhY2lmaWMiLCJtYXJrZXRSb3V0ZSI6InBha2lzdGFuLyJ9LCJwbCI6eyJ0aXRsZSI6IlBvbGFuZCIsInNjcmVlbmVyTmFtZSI6InBvbGFuZCIsInNjcmVlbmVyVGltZXpvbmUiOiJFdXJvcGUvV2Fyc2F3IiwiZXhjaGFuZ2VzU3RvY2tzIjpbIkdQVyIsIk5FV0NPTk5FQ1QiXSwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6InBvbGFuZC8ifSwicHQiOnsidGl0bGUiOiJQb3J0dWdhbCIsInNjcmVlbmVyTmFtZSI6InBvcnR1Z2FsIiwic2NyZWVuZXJUaW1lem9uZSI6IkV1cm9wZS9MaXNib24iLCJleGNoYW5nZXNGb3JIb3RsaXN0IjpbIkVVUk9ORVhUX0xJUyJdLCJleGNoYW5nZXNTdG9ja3MiOlsiRVVST05FWFRMSVMiXSwiZGVmYXVsdEV4Y2hhbmdlIjoiRVVST05FWFRfTElTIiwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6InBvcnR1Z2FsLyJ9LCJxYSI6eyJ0aXRsZSI6IlFhdGFyIiwic2NyZWVuZXJOYW1lIjoicWF0YXIiLCJzY3JlZW5lclRpbWV6b25lIjoiQXNpYS9RYXRhciIsImV4Y2hhbmdlc1N0b2NrcyI6WyJRU0UiXSwiZ3JvdXAiOiJNaWRkbGUgRWFzdCAvIEFmcmljYSIsIm1hcmtldFJvdXRlIjoicWF0YXIvIn0sInJvIjp7InRpdGxlIjoiUm9tYW5pYSIsInNjcmVlbmVyTmFtZSI6InJvbWFuaWEiLCJzY3JlZW5lclRpbWV6b25lIjoiRXVyb3BlL0J1Y2hhcmVzdCIsImV4Y2hhbmdlc1N0b2NrcyI6WyJCVkIiXSwiZXhjaGFuZ2VzRm9ySG90bGlzdCI6WyJCVkIiXSwiZGVmYXVsdEV4Y2hhbmdlIjoiQlZCIiwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6InJvbWFuaWEvIn0sInJzIjp7InRpdGxlIjoiU2VyYmlhIiwic2NyZWVuZXJOYW1lIjoic2VyYmlhIiwic2NyZWVuZXJUaW1lem9uZSI6IkV1cm9wZS9CZWxncmFkZSIsImV4Y2hhbmdlc1N0b2NrcyI6WyJCRUxFWCJdLCJncm91cCI6IkV1cm9wZSIsIm1hcmtldFJvdXRlIjoic2VyYmlhLyJ9LCJydSI6eyJ0aXRsZSI6IlJ1c3NpYSIsInNjcmVlbmVyTmFtZSI6InJ1c3NpYSIsInNjcmVlbmVyVGltZXpvbmUiOiJFdXJvcGUvTW9zY293IiwiZXhjaGFuZ2VzU3RvY2tzIjpbIlJVUyJdLCJncm91cCI6IkV1cm9wZSIsIm1hcmtldFJvdXRlIjoicnVzc2lhLyJ9LCJzYSI6eyJ0aXRsZSI6IlNhdWRpIEFyYWJpYSIsInR2TG9jYWxlIjoiYXJfQUUiLCJzY3JlZW5lck5hbWUiOiJrc2EiLCJzY3JlZW5lclRpbWV6b25lIjoiQXNpYS9SaXlhZGgiLCJleGNoYW5nZXNTdG9ja3MiOlsiVEFEQVdVTCJdLCJncm91cCI6Ik1pZGRsZSBFYXN0IC8gQWZyaWNhIiwibWFya2V0Um91dGUiOiJrc2EvIn0sInNlIjp7InRpdGxlIjoiU3dlZGVuIiwic2NyZWVuZXJOYW1lIjoic3dlZGVuIiwic2NyZWVuZXJUaW1lem9uZSI6IkV1cm9wZS9TdG9ja2hvbG0iLCJleGNoYW5nZXNTdG9ja3MiOlsiTkdNIiwiT01YU1RPIl0sImV4Y2hhbmdlc0ZvckhvdGxpc3QiOlsiTkdNIiwiT01YU1RPIl0sImdyb3VwIjoiRXVyb3BlIiwibWFya2V0Um91dGUiOiJzd2VkZW4vIn0sInNnIjp7InRpdGxlIjoiU2luZ2Fwb3JlIiwic2NyZWVuZXJOYW1lIjoic2luZ2Fwb3JlIiwic2NyZWVuZXJUaW1lem9uZSI6IkFzaWEvU2luZ2Fwb3JlIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIlNHWCJdLCJncm91cCI6IkFzaWEgLyBQYWNpZmljIiwibWFya2V0Um91dGUiOiJzaW5nYXBvcmUvIn0sInNrIjp7InRpdGxlIjoiU2xvdmFraWEiLCJzY3JlZW5lck5hbWUiOiJzbG92YWtpYSIsInNjcmVlbmVyVGltZXpvbmUiOiJFdXJvcGUvQnJhdGlzbGF2YSIsImV4Y2hhbmdlc1N0b2NrcyI6WyJCU1NFIl0sImdyb3VwIjoiRXVyb3BlIiwibWFya2V0Um91dGUiOiJzbG92YWtpYS8ifSwic2kiOnsidGl0bGUiOiJTbG92ZW5pYSIsInNjcmVlbmVyTmFtZSI6InNsb3ZlbmlhIiwic2NyZWVuZXJUaW1lem9uZSI6IkV1cm9wZS9ManVibGphbmEiLCJleGNoYW5nZXNTdG9ja3MiOlsiTEpTRSJdLCJleGNoYW5nZXNGb3JIb3RsaXN0IjpbIkxKU0UiXSwiZGVmYXVsdEV4Y2hhbmdlIjoiTEpTRSIsImdyb3VwIjoiRXVyb3BlIiwibWFya2V0Um91dGUiOiJzbG92ZW5pYS8ifSwidGgiOnsidGl0bGUiOiJUaGFpbGFuZCIsInR2TG9jYWxlIjoidGhfVEgiLCJzY3JlZW5lck5hbWUiOiJ0aGFpbGFuZCIsInNjcmVlbmVyVGltZXpvbmUiOiJBc2lhL0Jhbmdrb2siLCJleGNoYW5nZXNTdG9ja3MiOlsiU0VUIl0sImdyb3VwIjoiQXNpYSAvIFBhY2lmaWMiLCJtYXJrZXRSb3V0ZSI6InRoYWlsYW5kLyJ9LCJ0biI6eyJ0aXRsZSI6IlR1bmlzaWEiLCJzY3JlZW5lck5hbWUiOiJ0dW5pc2lhIiwic2NyZWVuZXJUaW1lem9uZSI6IkFmcmljYS9UdW5pcyIsImV4Y2hhbmdlc1N0b2NrcyI6WyJCVk1UIl0sImdyb3VwIjoiTWlkZGxlIEVhc3QgLyBBZnJpY2EiLCJtYXJrZXRSb3V0ZSI6InR1bmlzaWEvIn0sInRyIjp7InRpdGxlIjoiVHVya2V5Iiwic2NyZWVuZXJOYW1lIjoidHVya2V5Iiwic2NyZWVuZXJUaW1lem9uZSI6IkV1cm9wZS9Jc3RhbmJ1bCIsImV4Y2hhbmdlc1N0b2NrcyI6WyJCSVNUIl0sImdyb3VwIjoiRXVyb3BlIiwibWFya2V0Um91dGUiOiJ0dXJrZXkvIn0sInR3Ijp7InRpdGxlIjoiVGFpd2FuLCBDaGluYSIsInR2TG9jYWxlIjoiemhfVFciLCJzY3JlZW5lck5hbWUiOiJ0YWl3YW4iLCJzY3JlZW5lclRpbWV6b25lIjoiQXNpYS9UYWlwZWkiLCJleGNoYW5nZXNTdG9ja3MiOlsiVFdTRSIsIlRQRVgiXSwiZ3JvdXAiOiJBc2lhIC8gUGFjaWZpYyIsIm1hcmtldFJvdXRlIjoidGFpd2FuLyJ9LCJnYiI6eyJ0aXRsZSI6IlVuaXRlZCBLaW5nZG9tIiwic2NyZWVuZXJOYW1lIjoidWsiLCJzY3JlZW5lclRpbWV6b25lIjoiRXVyb3BlL0xvbmRvbiIsImRlZmF1bHRFeGNoYW5nZSI6IkxTRSIsImV4Y2hhbmdlc1N0b2NrcyI6WyJMU0UiLCJMU0lOIiwiQVFVSVMiXSwiZ3JvdXAiOiJFdXJvcGUiLCJtYXJrZXRSb3V0ZSI6InVuaXRlZC1raW5nZG9tLyJ9LCJ2ZSI6eyJ0aXRsZSI6IlZlbmV6dWVsYSIsInNjcmVlbmVyTmFtZSI6InZlbmV6dWVsYSIsInNjcmVlbmVyVGltZXpvbmUiOiJBbWVyaWNhL0NhcmFjYXMiLCJleGNoYW5nZXNTdG9ja3MiOlsiQlZDViJdLCJncm91cCI6Ik1leGljbyBhbmQgU291dGggQW1lcmljYSIsIm1hcmtldFJvdXRlIjoidmVuZXp1ZWxhLyJ9LCJ2biI6eyJ0aXRsZSI6IlZpZXRuYW0iLCJ0dkxvY2FsZSI6InZpX1ZOIiwic2NyZWVuZXJOYW1lIjoidmlldG5hbSIsInNjcmVlbmVyVGltZXpvbmUiOiJBc2lhL0hvX0NoaV9NaW5oIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIkhPU0UiLCJITlgiLCJVUENPTSJdLCJncm91cCI6IkFzaWEgLyBQYWNpZmljIiwibWFya2V0Um91dGUiOiJ2aWV0bmFtLyJ9LCJ6YSI6eyJ0aXRsZSI6IlNvdXRoIEFmcmljYSIsInNjcmVlbmVyTmFtZSI6InJzYSIsInNjcmVlbmVyVGltZXpvbmUiOiJBZnJpY2EvSm9oYW5uZXNidXJnIiwiZXhjaGFuZ2VzU3RvY2tzIjpbIkpTRSJdLCJncm91cCI6Ik1pZGRsZSBFYXN0IC8gQWZyaWNhIiwibWFya2V0Um91dGUiOiJzb3V0aC1hZnJpY2EvIn0sInd3Ijp7InRpdGxlIjoiV29ybGR3aWRlIiwic2NyZWVuZXJOYW1lIjoiZ2xvYmFsIiwiZXhjaGFuZ2VzU3RvY2tzIjpbXX19JykKfSwxMjc3MTEoZSl7InVzZSBzdHJpY3QiO2UuZXhwb3J0cz1KU09OLnBhcnNlKCd7ImNtZSI6eyJJTkRJQ0FUT1JTX09OX0NIQVJUIjp7ImxpbWl0Ijo5OTk5OX19LCJib3Zlc3BhIjp7IklORElDQVRPUlNfT05fQ0hBUlQiOnsibGltaXQiOjk5OTk5fX0sInFlY29tcWEiOnsiSU5ESUNBVE9SU19PTl9DSEFSVCI6eyJsaW1pdCI6OTk5OTl9fSwic2FudGFuZGVyY29tYXIiOnsiSU5ESUNBVE9SU19PTl9DSEFSVCI6eyJsaW1pdCI6OTk5OTl9fX0nKX0sNTAyNTg3KGUpeyJ1c2Ugc3RyaWN0Igo7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ3siZnJlZSI6eyJDSEFUX0FTU0lTVEFOVCI6eyJsaW1pdCI6NSwiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIkNIQVJUX1NUT1JBR0UiOnsibGltaXQiOjF9LCJNVUxUSVBMRV9DSEFSVFMiOnsibGltaXQiOjF9LCJJTkRJQ0FUT1JTX09OX0NIQVJUIjp7ImxpbWl0IjoyfSwiRlVOREFNRU5UQUxTX09OX0NIQVJUIjp7ImxpbWl0IjoxfSwiSElTVE9SSUNBTF9CQVJTIjp7ImxpbWl0Ijo1fSwiU1RVRFlfT05fU1RVRFkiOnsibGltaXQiOjgwMCwiY2hpbGRfbGltaXQiOjF9LCJTRVJWRVJfU0lERV9BTEVSVFMiOnsib3ZlcmFsbF9saW1pdCI6NTAsImxpbWl0IjozLCJjb21wbGV4X2xpbWl0IjowLCJwcmltaXRpdmVfbGltaXQiOjN9LCJTQ1JFRU5FUl9JTlRFUlZBTFMiOnsiaW50ZXJ2YWwiOlsiMUQiLCIxVyIsIjFNIl19LCJTVFVEWV9URU1QTEFURVMiOnsibGltaXQiOjF9LCJTSU1VTFRBTkVPVVNfQ09OTkVDVElPTlMiOnsibGltaXQiOjF9LCJCQUNLRU5EX0NPTk5FQ1RJT05TIjp7ImxpbWl0IjoyfSwiSURFQV9TT0NJQUxfTElOS1MiOnsic29jaWFscyI6WyJUd2l0dGVyIiwiWW91dHViZSJdfSwiTVVMVElDT0xPUl9GTEFHR0VEX1NZTUJPTFMiOnsibGltaXQiOjF9LCJXQVRDSExJU1RfU1lNQk9MUyI6eyJsaW1pdCI6MzB9LCJWSURFT19JREVBU19MRU5HVEgiOnsibGltaXQiOjIwfSwiQ1JFQVRFX01PUkVfUE9SVEZPTElPUyI6eyJsaW1pdCI6MX0sIlBPUlRGT0xJT19UUkFOU0FDVElPTlMiOnsibGltaXQiOjIwMDB9LCJQT1JURk9MSU9fSE9MRElOR1MiOnsibGltaXQiOjIwfX0sInBybyI6eyJEUkFXSU5HUyI6e30sIkJBQ0tURVNUSU5HX0NIQVJUX0VYUEFORCI6e30sIkJBQ0tURVNUSU5HX0VYVEVOREVEX01FVFJJQ1MiOnt9LCJCQUNLVEVTVElOR19FWFBPUlRfWExTWCI6e30sIkJBQ0tURVNUSU5HX0VYUE9SVF9DU1YiOnt9LCJDSEFUX0FTU0lTVEFOVCI6eyJsaW1pdCI6NSwiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIlBFUlNPTkFMX1NVUFBPUlQiOnsiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIkNIQVJUX1NUT1JBR0UiOnsibGltaXQiOjV9LCJNVUxUSVBMRV9DSEFSVFMiOnsibGltaXQiOjJ9LCJNQVJLRVRfREFUQV9MSU1JVFMiOnsibGltaXQiOjIsInByaW1pdGl2ZV9saW1pdCI6Mn0sIkNVU1RPTV9JTlRFUlZBTFMiOnt9LCJNVUxUSVBMRV9XQVRDSExJU1RTIjp7fSwiSU1QT1JUX1dBVENITElTVFMiOnt9LCJFWFBPUlRfV0FUQ0hMSVNUUyI6e30sIklORElDQVRPUlNfT05fQ0hBUlQiOnsibGltaXQiOjV9LCJGVU5EQU1FTlRBTFNfRk9SRUNBU1QiOnt9LCJGVU5EQU1FTlRBTFNfT05fQ0hBUlQiOnsibGltaXQiOjR9LCJUVl9QUk9TVFVESUVTIjp7InN0dWR5X3BhY2thZ2VzIjpbInR2LWNoYXJ0cGF0dGVybnMiXX0sIkhJU1RPUklDQUxfQkFSUyI6eyJsaW1pdCI6MTB9LCJUVl9WT0xVTUVCWVBSSUNFIjp7InN0dWR5X3BhY2thZ2VzIjpbInR2LXZvbHVtZWJ5cHJpY2UiXX0sIlNUVURZX09OX1NUVURZIjp7ImxpbWl0Ijo4MDAsImNoaWxkX2xpbWl0IjoxfSwiVElDS19CWV9USUNLX1BVU0hfREFUQSI6e30sIlNFUlZFUl9TSURFX0FMRVJUUyI6eyJvdmVyYWxsX2xpbWl0IjoyMDAwLCJsaW1pdCI6MjAsImNvbXBsZXhfbGltaXQiOjIwLCJwcmltaXRpdmVfbGltaXQiOjIwfSwiU0NSRUVORVJfQVVUT19SRUZSRVNIIjp7fSwiU0NSRUVORVJfTkVXX0FVVE9fUkVGUkVTSCI6e30sIlNDUkVFTkVSX05FV19FWFBPUlRfQ1NWX0RBVEEiOnt9LCJTQ1JFRU5FUl9ORVdfU0hPV19SRVNUUklDVEVEX0RBVEEiOnt9LCJTSE9XX0JPTkRTX1JFU1RSSUNURURfREFUQSI6e30sIlBPUlRGT0xJT19EQVRBX0xJTUlUIjp7fSwiQ1JFQVRFX01PUkVfUE9SVEZPTElPUyI6eyJsaW1pdCI6M30sIlBPUlRGT0xJT19UUkFOU0FDVElPTlMiOnsibGltaXQiOjUwMDB9LCJQT1JURk9MSU9fSE9MRElOR1MiOnsibGltaXQiOjUwfSwiU0NSRUVORVJfSU5URVJWQUxTIjp7ImludGVydmFsIjpbIjFtIiwiNW0iLCIxNW0iLCIzMG0iLCIxaCIsIjJoIiwiNGgiLCIxRCIsIjFXIiwiMU0iXX0sIk5PX1NQT05TT1JFRF9BRFMiOnsiZGlzYWJsZV9vbl9saXRlX3BsYW4iOiJleGNsdWRlX21vYmlsZSJ9LCJTVFVEWV9URU1QTEFURVMiOnsibGltaXQiOjk5OTk5fSwiU0lNVUxUQU5FT1VTX0NPTk5FQ1RJT05TIjp7ImxpbWl0IjoxfSwiQkFDS0VORF9DT05ORUNUSU9OUyI6eyJsaW1pdCI6MTB9LCJJRENfQVZBSUxBQkxFX0RFTEFZIjp7fSwiU1RBVFVTIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJCQVJfUkVQTEFZX0lOVFJBREFZIjp7ImxpbWl0IjoxfSwiTVVMVElGTEFHR0VEX1NZTUJPTFNfTElTVFMiOnt9LCJTSE9XUyI6eyJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiQUxFUlRTX1dFQkhPT0siOnt9LCJBTEVSVFNfT05fRUFSTklOR1MiOnt9LCJBTEVSVFNfT05fRlVOREFNRU5UQUxfTUVUUklDUyI6e30sIkRFRVBfRlVOREFNRU5UQUxTX0hJU1RPUlkiOnt9LCJQVUJMSVNIX1BST1RFQ1RFRF9TQ1JJUFRTIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJJREVBX1NPQ0lBTF9MSU5LUyI6eyJzb2NpYWxzIjpbIlR3aXR0ZXIiLCJZb3V0dWJlIl19LCJFWFRFTkRFRF9TT0NJQUxfTElOS1MiOnsic29jaWFscyI6WyJGYWNlYm9vayIsIkluc3RhZ3JhbSJdLCJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiTVVMVElfTU9OSVRPUiI6e30sIk1VTFRJQ09MT1JfRkxBR0dFRF9TWU1CT0xTIjp7ImxpbWl0Ijo3fSwiSU5UUkFEQVlfRVhDSEFOR0UiOnt9LCJWT0xVTUVfUFJPRklMRSI6e30sIlNUUkVBTVNfQUNDRVNTIjp7ImZvbGxvd2VycyI6MTB9LCJTTVNfMkZBX1ZFUklGSUNBVElPTiI6eyJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiU09DSUFMX0FDVElWSVRZIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJXQVRDSExJU1RfU1lNQk9MUyI6eyJsaW1pdCI6MTAwMH0sIkZJRUxEU19QRVJNSVNTSU9OUyI6eyJpdGVtcyI6WyJyZWZib25kcyJdfSwiQ1VTVE9NX1JBTkdFX0JBUlMiOnt9LCJGQVNURVNUX0RBVEFfRkxPVyI6e30sIlNFU1NJT05fVk9MVU1FX1BST0ZJTEUiOnt9LCJTSE9XX0VURl9IT0xESU5HU19EQVRBIjp7fX0sInByb19yZWFsdGltZSI6eyJleHRlbmRzIjoicHJvIiwiQ0hBUlRfU1RPUkFHRSI6eyJsaW1pdCI6MTB9LCJNVUxUSVBMRV9DSEFSVFMiOnsibGltaXQiOjR9LCJNQVJLRVRfREFUQV9MSU1JVFMiOnsibGltaXQiOjQsInByaW1pdGl2ZV9saW1pdCI6NH0sIklORElDQVRPUlNfT05fQ0hBUlQiOnsibGltaXQiOjEwfSwiRlVOREFNRU5UQUxTX09OX0NIQVJUIjp7ImxpbWl0Ijo3fSwiVFZfUFJPU1RVRElFUyI6eyJzdHVkeV9wYWNrYWdlcyI6WyJ0di1wcm9zdHVkaWVzIiwidHYtY2hhcnRwYXR0ZXJucyJdfSwiU1RVRFlfT05fU1RVRFkiOnsibGltaXQiOjgwMCwiY2hpbGRfbGltaXQiOjl9LCJTRVJWRVJfU0lERV9BTEVSVFMiOnsib3ZlcmFsbF9saW1pdCI6MjAwMCwibGltaXQiOjEwMCwiY29tcGxleF9saW1pdCI6MTAwLCJwcmltaXRpdmVfbGltaXQiOjEwMH0sIkFMRVJUU19NVUxUSUNPTkRJVElPTlMiOnsiY29uZGl0aW9uX2xpbWl0Ijo1fSwiQ0hBVF9BU1NJU1RBTlQiOnsibGltaXQiOjUsImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJDQU5fRURJVF9QVUJMSUNfQ0hBVFMiOnsiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIkJBQ0tFTkRfQ09OTkVDVElPTlMiOnsibGltaXQiOjIwfSwiRVhQT1JUX0NIQVJUX0RBVEEiOnt9LCJDVVNUT01fRk9STVVMQVMiOnt9LCJJTlRSQURBWV9FWE9USUNfQ0hBUlRTIjp7fSwiS0FHSV9SRU5LTyI6e30sIklOVFJBREFZX1NQUkVBRCI6e30sIkNVU1RPTV9DSEFUUyI6e30sIkNSRUFURV9NT1JFX1BPUlRGT0xJT1MiOnsibGltaXQiOjR9LCJQT1JURk9MSU9fSE9MRElOR1MiOnsibGltaXQiOjc1fX0sInByb19wcmVtaXVtIjp7ImV4dGVuZHMiOiJwcm9fcmVhbHRpbWUiLCJCQVJfREVUQUxJWkFUSU9OIjp7fSwiU0NSSVBUX0VYRUNVVElPTl9PTl9ISVNUT1JZX0JBUlMiOnt9LCJDSEFSVF9TVE9SQUdFIjp7ImxpbWl0Ijo5OTk5OX0sIk1VTFRJUExFX0NIQVJUUyI6eyJsaW1pdCI6OH0sIk1BUktFVF9EQVRBX0xJTUlUUyI6eyJsaW1pdCI6NiwicHJpbWl0aXZlX2xpbWl0Ijo2fSwiSU5ESUNBVE9SU19PTl9DSEFSVCI6eyJsaW1pdCI6MjV9LCJGVU5EQU1FTlRBTFNfT05fQ0hBUlQiOnsibGltaXQiOjEwfSwiRlVOREFNRU5UQUxfR1JBUEhTX0xBUkdFX1RJTUVfUkFOR0UiOnt9LCJDSEFUX0FTU0lTVEFOVCI6eyJsaW1pdCI6OTk5OTksImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJDSEFSVF9QQVRURVJOUyI6eyJzdHVkeV9wYWNrYWdlcyI6WyJ0di1jaGFydHBhdHRlcm5zIiwidHYtY2hhcnRfcGF0dGVybnMiXX0sIkhJU1RPUklDQUxfQkFSUyI6eyJsaW1pdCI6MjB9LCJTVFVEWV9PTl9TVFVEWSI6eyJsaW1pdCI6ODAwLCJjaGlsZF9saW1pdCI6MjR9LCJTRVJWRVJfU0lERV9BTEVSVFMiOnsib3ZlcmFsbF9saW1pdCI6MjAwMCwibGltaXQiOjQwMCwiY29tcGxleF9saW1pdCI6NDAwLCJwcmltaXRpdmVfbGltaXQiOjQwMCwid2F0Y2hsaXN0X2xpbWl0IjoyLCJvdmVyYWxsX3dhdGNobGlzdF9saW1pdCI6NX0sIlNJTVVMVEFORU9VU19DT05ORUNUSU9OUyI6eyJsaW1pdCI6Mn0sIkJBQ0tFTkRfQ09OTkVDVElPTlMiOnsibGltaXQiOjUwfSwiSURFQV9TSUdOQVRVUkUiOnsiZGlzYWJsZV9vbl90cmlhbCI6dHJ1ZX0sIlBST0ZJTEVfV0VCU0lURV9GSUVMRCI6eyJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiQkFSX1JFUExBWV9JTlRSQURBWSI6eyJsaW1pdCI6NH0sIkJBUl9SRVBMQVlfMVMiOnt9LCJBTEVSVFNfTk9fRVhQSVJBVElPTiI6e30sIlBVQkxJU0hfSU5WSVRFX09OTFlfU0NSSVBUUyI6eyJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiRVhQT1JUX0NIQVJUX0RBVEEiOnt9LCJERUVQX0hJU1RPUllfQkFDS1RFU1QiOnt9LCJBTEVSVFNfT05fU0VDT05EUyI6e30sIlBFUk1BTkVOVF9TVFJFQU1fUkVDT1JEUyI6e30sIkVYVEVOREVEX1NPQ0lBTF9MSU5LUyI6eyJzb2NpYWxzIjpbIkZhY2Vib29rIiwiSW5zdGFncmFtIiwiV2Vic2l0ZSJdLCJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfSwiU0VDT05EU19JTlRFUlZBTFMiOnt9LCJUUE9fUEVSSU9ESUMiOnsic3R1ZHlfcGFja2FnZXMiOlsidHYtdm9sdW1lYnlwcmljZSJdfSwiVFBPX0NIQVJUX1NUWUxFIjp7fSwiVk9MVU1FX0NBTkRMRVMiOnt9LCJWSURFT19JREVBU19MRU5HVEgiOnsibGltaXQiOjYwfSwiVk9MVU1FX0ZPT1RQUklOVCI6e30sIlBJTkVfU0NSRUVORVIiOnt9LCJDUkVBVEVfTU9SRV9QT1JURk9MSU9TIjp7ImxpbWl0Ijo1fSwiUE9SVEZPTElPX0hPTERJTkdTIjp7ImxpbWl0IjoxMDB9LCJTT0NJQUxfVFJVU1RFRF9VU0VSIjp7ImRpc2FibGVfb25fdHJpYWwiOnRydWV9LCJGT0xMT1dFUlNfT05MWV9NSU5EUyI6eyJkaXNhYmxlX29uX3RyaWFsIjp0cnVlfX0sInByb19leHBlcnQiOnsiZXh0ZW5kcyI6InByb19wcmVtaXVtIiwiSU5ESUNBVE9SU19PTl9DSEFSVCI6eyJsaW1pdCI6MzB9LCJGVU5EQU1FTlRBTFNfT05fQ0hBUlQiOnsibGltaXQiOjE1fSwiU1RVRFlfT05fU1RVRFkiOnsibGltaXQiOjgwMCwiY2hpbGRfbGltaXQiOjI5fSwiTVVMVElQTEVfQ0hBUlRTIjp7ImxpbWl0IjoxMH0sIk1BUktFVF9EQVRBX0xJTUlUUyI6eyJsaW1pdCI6MTIsInByaW1pdGl2ZV9saW1pdCI6MTJ9LCJISVNUT1JJQ0FMX0JBUlMiOnsibGltaXQiOjI1fSwiU0VSVkVSX1NJREVfQUxFUlRTIjp7Im92ZXJhbGxfbGltaXQiOjIwMDAsImxpbWl0Ijo2MDAsImNvbXBsZXhfbGltaXQiOjYwMCwicHJpbWl0aXZlX2xpbWl0Ijo2MDAsIndhdGNobGlzdF9saW1pdCI6MTAsIm92ZXJhbGxfd2F0Y2hsaXN0X2xpbWl0IjoyMH0sIkJBQ0tFTkRfQ09OTkVDVElPTlMiOnsibGltaXQiOjgwfSwiQkFSX1JFUExBWV9JTlRSQURBWSI6eyJsaW1pdCI6Nn0sIkJBUl9SRVBMQVlfMVMiOnt9LCJCQVJfUkVQTEFZXzFUIjp7fSwiRVhQT1JUX0ZJTkFOQ0lBTFNfREFUQSI6e30sIlRJQ0tfSU5URVJWQUxTIjp7fSwiRklSU1RfUFJJT1JJVFlfU1VQUE9SVCI6e30sIkJVWV9QUk9fREFUQSI6e30sIkNSRUFURV9NT1JFX1BPUlRGT0xJT1MiOnsibGltaXQiOjZ9LCJQT1JURk9MSU9fSE9MRElOR1MiOnsibGltaXQiOjEyNX19LCJwcm9fcHJlbWl1bV9leHBlcnQiOnsiZXh0ZW5kcyI6InByb19leHBlcnQiLCJJTkRJQ0FUT1JTX09OX0NIQVJUIjp7ImxpbWl0Ijo1MH0sIkZVTkRBTUVOVEFMU19PTl9DSEFSVCI6eyJsaW1pdCI6MjV9LCJTVFVEWV9PTl9TVFVEWSI6eyJsaW1pdCI6ODAwLCJjaGlsZF9saW1pdCI6NDl9LCJNVUxUSVBMRV9DSEFSVFMiOnsibGltaXQiOjE2fSwiTUFSS0VUX0RBVEFfTElNSVRTIjp7ImxpbWl0Ijo5OTk5OSwicHJpbWl0aXZlX2xpbWl0IjoyNX0sIkhJU1RPUklDQUxfQkFSUyI6eyJsaW1pdCI6NDB9LCJTRVJWRVJfU0lERV9BTEVSVFMiOnsib3ZlcmFsbF9saW1pdCI6NDAwMCwibGltaXQiOjEwMDAsImNvbXBsZXhfbGltaXQiOjEwMDAsInByaW1pdGl2ZV9saW1pdCI6MTAwMCwid2F0Y2hsaXN0X2xpbWl0IjoxNSwib3ZlcmFsbF93YXRjaGxpc3RfbGltaXQiOjMwfSwiQkFDS0VORF9DT05ORUNUSU9OUyI6eyJsaW1pdCI6MjAwfSwiQkFSX1JFUExBWV9JTlRSQURBWSI6eyJsaW1pdCI6MTB9LCJDUkVBVEVfTU9SRV9QT1JURk9MSU9TIjp7ImxpbWl0Ijo3fSwiUE9SVEZPTElPX0hPTERJTkdTIjp7ImxpbWl0IjoxNTB9fX0nKQp9LDM4OTk5NChlKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPUpTT04ucGFyc2UoJ1sidXMiLCJhZSIsImFyIiwiYXQiLCJhdSIsImJkIiwiYmUiLCJiZyIsImJoIiwiYnIiLCJjYSIsImNoIiwiY2wiLCJjbiIsImNvIiwiaHIiLCJjeSIsImN6IiwiZGUiLCJkayIsImVlIiwiZWciLCJlcyIsImZpIiwiZnIiLCJnciIsImhrIiwiaHUiLCJpZCIsImllIiwiaWwiLCJpbiIsImlzIiwiaXQiLCJqcCIsImtlIiwia3IiLCJrdyIsImxrIiwibHQiLCJsdiIsImx1IiwibXgiLCJtYSIsIm15IiwibmciLCJubCIsIm5vIiwibnoiLCJwZSIsInBoIiwicGsiLCJwbCIsInB0IiwicWEiLCJycyIsInJ1Iiwicm8iLCJzYSIsInNlIiwic2ciLCJzaSIsInNrIiwidGgiLCJ0biIsInRyIiwidHciLCJnYiIsInZlIiwidm4iLCJ6YSJdJyl9fSxlPT57ZS5PKDAsWzQ2MDI0LDg0MzA2LDQ2OTA3LDk0MjMyLDMyODE2LDE3MDg3LDQzMzI1LDM5MDUsMzU3OTQsMTU5MzIsNTQ2ODEsNTE1MDgsNDk1MTgsMzI2MzIsMTU2MzQsNzUzMDQsNTIwOTUsMzgwMDIsNDQwMzEsNDM3OTIsNzAzNjQsOTQ4OCwzNzg2Nyw2MjY4MSwzMDIwMCwzMTM5NiwzMjM4NywxMzE0OCw0OTI2NSw3NTA0LDk5ODI3LDM2MTY2LDc2NTc3LDY1ODYyLDgwMjA3LDEyMTgxLDYxNDk1LDMwMjg4XSwoKCk9PntyZXR1cm4gdD04MzIzOTIsZShlLnM9dCk7dmFyIHR9KSk7ZS5PKCl9XSk7"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCONDO.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.603Z","timestamp":1785126258603,"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 /crypto/XTVCONDO.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=4, 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 04:24:18 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: \"1f806fbca727b0d6bc2c4218d40615bc\"\r\nlast-modified: Wed, 03 Apr 2024 06:14:05 GMT\r\ncdn-cachedat: 08/09/2025 14:33:33\r\nx-amz-id-2: 1o3TOFoMDTUBEoCF+uXgISuIkrYcZWUjnC4nCizSwvZr9SGMdLHEerad84z2Zdf0U1raoiW8G+I=\r\nx-amz-request-id: 5YHSEG3TMSR47Q14\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 1f806fbca727b0d6bc2c4218d40615bc\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: 716e61693e5feabae3e380176ab7cad2\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":884,"size_decoded":1411,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (884), with no line terminators","md5":"1f806fbca727b0d6bc2c4218d40615bc","sha1":"832863f7c8c44ac0d2c4758ffe8c78d84986eca6","sha256":"463430dc9b846f40625f2f70d01faf8d50351ccff72dde463a304535c8d705bf","sha512":"eea3f75df098de7394dbb7fb26f3225864032152dddb864b16b421785e82c36f19885220542e35cffee1ae4d93ce7aea5fab01a0f01d701cdcad8c3463b0dfa3","ssdeep":"","tlshash":"9411c0f1e208d05c1597da959b1758b2b78f68f8b28917a46cafe735205b6c9ec03800","first_seen":"2025-04-11T11:28:49.328447Z","last_seen":"2026-07-27T07:05:43.260044Z","times_seen":785,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNOC41NiAxMy4zNUE0LjM2IDQuMzYgMCAwIDEgNy45IDQuOGE0LjM2IDQuMzYgMCAwIDEgNS40IDQuODNoLjY2bC4wMy0uNzdhNSA1IDAgMSAwLTQgNS4wOCA1IDUgMCAwIDAgMS41My0uNTN2LS4wMWwtLjAyLS4wMkg5LjE2Yy0uMjcgMC0uNDcgMC0uNi0uMDJaIiBmaWxsPSIjMDYwNzBCIi8+PHBhdGggZD0iTTExLjA1IDkuNjNoLS42N2ExLjUgMS41IDAgMCAwLTEuMDQtMi4wNkExLjUgMS41IDAgMCAwIDcuNTEgOWMwIC41Ni4zMyAxLjE0LjgzIDEuNC4yLjEuNDUuMTYuNy4xNmg0Ljc5YS4wMS4wMSAwIDAgMSAwIC4wMiAxLjc4IDEuNzggMCAwIDEtLjMxLjZIOS4wM2MtLjY1IDAtMS4yLS4yNy0xLjYzLS43NmEyLjE0IDIuMTQgMCAxIDEgMy42NS0uOFoiIGZpbGw9IiMwNjA3MEIiLz48cGF0aCBkPSJNMTEuODQgOS42M0EyLjkyIDIuOTIgMCAwIDAgOC45IDYuMDhhMi45NyAyLjk3IDAgMCAwLTIuODQgMi45NWwuMDQuMzdhMi44IDIuOCAwIDAgMCAxLjg3IDIuMjRjLjM3LjE0Ljc4LjE2IDEuMi4xNmgzLjlsLjAxLjAxdi4wMmwtLjA0LjA2Yy0uMTQuMTktLjI0LjMyLS40LjUtLjA0LjA0LS4wOS4wNC0uMTUuMDRIOS4yNWMtLjI2IDAtLjQ2IDAtLjYtLjAyYTMuNTcgMy41NyAwIDAgMS0yLjgyLTEuNzggMy41NCAzLjU0IDAgMCAxIDMuMTEtNS4yIDMuNTMgMy41MyAwIDAgMSAzLjQzIDIuNGMuMi41OC4yNCAxLjE4LjE0IDEuNzloLS42OFoiIGZpbGw9IiMwNjA3MEIiLz48L3N2Zz4="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCMORPHO.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.632Z","timestamp":1785126258632,"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 /crypto/XTVCMORPHO.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 04:24:18 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: \"df9415b31deb447a21f636f629a74748\"\r\nlast-modified: Thu, 16 Jan 2025 13:47:05 GMT\r\ncdn-cachedat: 08/09/2025 14:29:30\r\nx-amz-id-2: QHcXEE9Npvq+VZexkJH3h6zs9iJ55r5A3Ihnzsm9q/0fukrQGn3+Tr3wQ+2RCoAISX++zuZfS8g=\r\nx-amz-request-id: QQK6Y0GM5KM4TFKE\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: df9415b31deb447a21f636f629a74748\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: 7ede9a0149b042ebccd36d2abf9242d5\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":1596,"size_decoded":1540,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1596), with no line terminators","md5":"df9415b31deb447a21f636f629a74748","sha1":"91f4e6bc0cac5ec30084573e660d281c4e0ae03d","sha256":"d052a7d0721ef82dad889dea782e0d94e8ae99342db715f9b2a9b6af681f1843","sha512":"3e7e2707e7c5ab27bd6b20c89f677a01f6e3f28f8ca14b0babcfe738d7da17607142c3441cca842f5a6d86c6de60cb8f488e128ea6eabfb2fb06c7a8001d2ec9","ssdeep":"","tlshash":"1931317be51dd03bc40ac2adec945472224f80d3ee8253a5b4d2af2b20266c7dd0db50","first_seen":"2026-07-03T06:46:35.857625Z","last_seen":"2026-07-27T07:05:43.326964Z","times_seen":120,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMxODFCMUUiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNNy4yMSA4Ljg3Yy0uNDMuMi0xLjA5LjYzLTEuNjcuOTUtLjMyLjE3LS41NC40Ni0uNTQuODN2My4wMmMwIC4yNy4yOC40Mi40OC4yNy43OC0uNjIgMi42LTIuNDYgMi44Mi0zLjExLjMtLjktLjYtMi4xOS0xLjA5LTEuOTZaIiBmaWxsPSJ1cmwoI2EpIi8+PHBhdGggZD0iTTguNjkgOS4wN2MwIC45Mi0uMjkgMS42LS40MyAxLjgyLS4xMS0xLjA0LTEuNDItMS43Ny0xLjkzLTItLjQzLS4yLTEuMTktLjQ4LTEuOC0uNzFBLjg4Ljg4IDAgMCAxIDQgNy4zNVY0LjMzYzAtLjI3LjI4LS40Mi40OC0uMjcuNzguNjIgMS45NSAxLjU0IDIuNjIgMi4wMWEzLjcgMy43IDAgMCAxIDEuNTkgM1oiIGZpbGw9InVybCgjYikiLz48cGF0aCBkPSJNMTAuNzkgOC44N2MuNDMuMiAxLjA5LjYzIDEuNjcuOTUuMzIuMTcuNTQuNDYuNTQuODN2My4wMmMwIC4yNy0uMjguNDItLjQ4LjI3LS43OC0uNjItMi42LTIuNDYtMi44Mi0zLjExLS4zLS45LjYtMi4xOSAxLjA5LTEuOTZaIiBmaWxsPSJ1cmwoI2MpIi8+PHBhdGggZD0iTTkuMzEgOS4wN2MwIC45Mi4yOSAxLjYuNDMgMS44Mi4xMS0xLjA0IDEuNDItMS43NyAxLjkzLTIgLjQzLS4yIDEuMTktLjQ4IDEuOC0uNzFhLjg4Ljg4IDAgMCAwIC41My0uODNWNC4zM2MwLS4yNy0uMjgtLjQyLS40OC0uMjdhODcuMyA4Ny4zIDAgMCAxLTIuNjIgMi4wMSAzLjcgMy43IDAgMCAwLTEuNTkgM1oiIGZpbGw9InVybCgjZCkiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImEiIHgxPSI3LjgxIiB5MT0iMTAuMDkiIHgyPSI0LjkyIiB5Mj0iMTIuNzUiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjOTJCM0U1Ii8+PHN0b3Agb2Zmc2V0PSIuMTIiIHN0b3AtY29sb3I9IiM5NkMyRTkiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCBpZD0iYiIgeDE9IjguNjkiIHkxPSI3LjQ0IiB4Mj0iNCIgeTI9IjcuNDQiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjRUVGQ0ZFIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjQUZEOEZGIi8+PC9saW5lYXJHcmFkaWVudD48bGluZWFyR3JhZGllbnQgaWQ9ImMiIHgxPSIxMC4xOSIgeTE9IjEwLjA5IiB4Mj0iMTMuMDgiIHkyPSIxMi43NSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiM5MkIzRTUiLz48c3RvcCBvZmZzZXQ9Ii4xMiIgc3RvcC1jb2xvcj0iIzk2QzJFOSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IGlkPSJkIiB4MT0iOS4zMSIgeTE9IjcuNDQiIHgyPSIxNCIgeTI9IjcuNDQiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjRUVGQ0ZFIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjQUZEOEZGIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCPOLYG.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.634Z","timestamp":1785126258634,"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 /crypto/XTVCPOLYG.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 04:24:18 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: \"2d7a9513142f0ea77edb22bd50d8619b\"\r\nlast-modified: Mon, 05 Aug 2024 13:39:57 GMT\r\ncdn-cachedat: 08/14/2025 09:11:14\r\nx-amz-id-2: Y5QHL5debo8nqTCg4Aui5tEFwrHTdPZDEzYcmwJE6I4AZmz+TmpZduuScZMolImKpxoA/dDIJBs=\r\nx-amz-request-id: 4RBBY209YG39GBJ8\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 2d7a9513142f0ea77edb22bd50d8619b\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: 7d793be7df5e82c010dc030e17ac5d6b\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":352,"size_decoded":1179,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (352), with no line terminators","md5":"2d7a9513142f0ea77edb22bd50d8619b","sha1":"f6ca0be697bbc5a02425a5a062e922cc82b6f176","sha256":"e00ac249a65ca20dd1e4373b6e34d015ccf6c2e75419663a33a7186510320c1e","sha512":"b2bfc26885d856bd6437063841aef4da13827b3f2704fa3a79f7265a5e6fa045f035a62f2814ae23a0c68cf8917496c5d5aa73988c6dfaca4f9ed786bb8aea61","ssdeep":"","tlshash":"07e0d8dee614910c904682e8aab824c1e0aba0c259ee26a5b0c1d91835655cb5ca1914","first_seen":"2024-12-27T07:10:17.134518Z","last_seen":"2026-07-27T07:05:43.248846Z","times_seen":792,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiM2QzAwRjYiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNNCAxMS41NlY4LjY4bDIuOC0xLjQ5Ljk1LjU0djEuM0w2LjggOC41bC0xLjU1Ljc5djEuNmwxLjU1LjgyIDEuNTgtLjgyVjYuNDRMMTEuMTUgNSAxNCA2LjQ0djIuODlsLTIuODQgMS40NS0uOTEtLjUzVjguOTZsLjkxLjUxIDEuNTktLjhWNy4xbC0xLjU5LS44LTEuNTQuOHY0LjQ3TDYuOCAxMyA0IDExLjU2WiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg=="}},"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":"besttrader.live/images/ssl.png","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.113Z","timestamp":1785126256113,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/ssl.png HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/png\r\ncontent-length: 10862\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-2a6e\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":10862,"size_decoded":11112,"mime_type":"image/png","magic":"PNG image data, 186 x 155, 8-bit/color RGBA, non-interlaced","md5":"0bcc4f1a0e02f918923f5e1689080549","sha1":"79e188fd67ac858632270ab72a1f6451ed237faa","sha256":"cbdc5c73971453d033fea82365251ae4bdf5ab8caa022eae45ed0a49eb1643ff","sha512":"fe66e8f21808792ad2df1c14be4f2c9a1ab96aaabb1a7f5a1be7c41c1614e7468557b1502990d85ee16cbda407be83263fc96c262a15866002048454a0b96859","ssdeep":"192:qSl6knTf/xeOVTQqTFxbN4P8MDmEWDepZhQROaojTb0c3+YDJnRs5Z:llJnTfJnGqTHCP8SmEWDuURO1ngMhV+T","tlshash":"5822c00af56469912d7862ca9df123096f7b23875910a2c2cceee2779c920e5dd0c2b5","first_seen":"2025-11-02T04:03:37.833796Z","last_seen":"2026-07-27T04:25:12.804554Z","times_seen":5,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAALoAAACbCAYAAADV/oFiAAAACXBIWXMAAAsTAAALEwEAmpwYAAAF32lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDggNzkuMTY0MDM2LCAyMDE5LzA4LzEzLTAxOjA2OjU3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpIiB4bXA6Q3JlYXRlRGF0ZT0iMjAxOS0wMi0wNFQyMjoyNTowOS0wODowMCIgeG1wOk1vZGlmeURhdGU9IjIwMjAtMDItMTdUMDg6MTY6NDErMDE6MDAiIHhtcDpNZXRhZGF0YURhdGU9IjIwMjAtMDItMTdUMDg6MTY6NDErMDE6MDAiIGRjOmZvcm1hdD0iaW1hZ2UvcG5nIiBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIiBwaG90b3Nob3A6SUNDUHJvZmlsZT0ic1JHQiBJRUM2MTk2Ni0yLjEiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6YWJmNDg5MzQtMzZhNi1mZDQ5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"}},"time_used":402,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":293,"receive":109,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"snowplow-pixel.tradingview.com/com.tradingview/track","fqdn":"snowplow-pixel.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"32.186.65.3","port":443,"asn":0,"as":"","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"beacon","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.767Z","timestamp":1785126257767,"http_version":"HTTP/2","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":"web-sp.tradingview.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 19 Apr 2026 00:00:00 GMT","end":"Mon, 02 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"9B:DF:03:4F:EB:00:80:CE:DB:C7:36:27:AE:14:79:24:3B:6C:A2:8E","sha256":"C2:A3:A5:DE:59:40:AC:09:73:08:A3:E6:2D:63:80:67:C0:F9:F7:0C:5B:A0:BC:5E:95:E4:01:FE:7C:E4:E0:AA"}}},"request":{"raw":"OPTIONS /com.tradingview/track HTTP/1.1\r\nHost: snowplow-pixel.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\nAccess-Control-Request-Method: POST\r\nAccess-Control-Request-Headers: content-type\r\nReferer: https://www.tradingview-widget.com/\r\nOrigin: https://www.tradingview-widget.com\r\nSec-Fetch-Storage-Access: none\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\n\r\n","headers":null,"cookies":null,"method":"OPTIONS"},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 04:24:18 GMT\r\ncontent-length: 0\r\naccess-control-allow-origin: https://www.tradingview-widget.com\r\naccess-control-allow-credentials: true\r\naccess-control-allow-headers: Content-Type, SP-Anonymous\r\naccess-control-max-age: 3600\r\nserver: akka-http/10.2.9\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Akka HTTP:10.2.9","description":"","website":"https://akka.io","common_platform_enumeration":"cpe:2.3:a:lightbend:akka_http:*:*:*:*:*:*:*:*","icon":"akka-http.png","categories":["Web frameworks","Web servers"]},{"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":0,"size_decoded":416,"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-27T07:04:52.530819Z","times_seen":17558191,"resource_available":true,"data":""}},"time_used":494,"timings":{"blocked":0,"dns":2,"connect":162,"send":0,"wait":162,"receive":0,"ssl":168},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCHBAR.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.557Z","timestamp":1785126258557,"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 /crypto/XTVCHBAR.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 04:24:18 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: \"4df3b7bdcc2427b8091fe51b0690f7f5\"\r\nlast-modified: Mon, 19 Feb 2024 08:04:57 GMT\r\ncdn-cachedat: 08/09/2025 14:29:30\r\nx-amz-id-2: OZQ/drlbmD8Vo38PXlh0lYlmPMwp+d7UC60cCZq0Fja3vgPatGbG0qYR5B4J7x/sunuWKrL6zHk=\r\nx-amz-request-id: VAMYFMRPSV1WPY9F\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 4df3b7bdcc2427b8091fe51b0690f7f5\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: dccc20d6cb4059748585f72fac82049b\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":432,"size_decoded":1232,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (432), with no line terminators","md5":"4df3b7bdcc2427b8091fe51b0690f7f5","sha1":"6f7da6a94ab32bf575443a5023a52062d2bf3c3d","sha256":"32391c7453a13396906b98acc6ac4e0e82c709587581996e7fb6dba3b92ab53e","sha512":"722c8a4300f10f2b66c852deb515ad7798760689e6452d9034bdce4578c3d7ac421c457fb03c67190818dda5d9cd44c10d77669e839f55a1787144975b2c8cec","ssdeep":"","tlshash":"a2e0abbfda2c5c2ff50ac2b8fe90646ab04930abd1440bb9e4866f2e21557c71d08664","first_seen":"2024-08-20T09:13:16.763826Z","last_seen":"2026-07-27T07:05:43.263424Z","times_seen":787,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYWtqbm5yNGo1KSIgZD0iTTAgMGgxOHYxOEgweiIvPjxwYXRoIGQ9Ik0xMyAxNGgtMXYtM0g2djNINVY0aDF2M2g2VjRoMXYxMFptLTctNGg2VjhINnYyWiIgZmlsbD0iI2ZmZiIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0iYWtqbm5yNGo1IiB4MT0iMy4zNSIgeTE9IjMuMTIiIHgyPSIyMS45IiB5Mj0iMjQuNDMiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjMUExRTIxIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMDYwNjBBIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCINJ.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.647Z","timestamp":1785126258647,"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 /crypto/XTVCINJ.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 04:24:18 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: \"8d8ba70cf5bd7084d36206d3addfdeeb\"\r\nlast-modified: Wed, 12 Mar 2025 20:12:16 GMT\r\ncdn-cachedat: 08/09/2025 14:29:30\r\nx-amz-id-2: YzTNI6ObnsQpo8RWHg23jVCVRu6HOwwrnl7KX5kjvz/OoTshMxzQ8g04IfjxYe0d7BIpRsTzXlE=\r\nx-amz-request-id: FDJGP44C9E1XSNJD\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 8d8ba70cf5bd7084d36206d3addfdeeb\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: 8f6cbd649baa59a236af6d316b9099a2\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":1005,"size_decoded":1468,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1005), with no line terminators","md5":"8d8ba70cf5bd7084d36206d3addfdeeb","sha1":"2ddd1848b7c3e337f0e93b8b4a65fed6d7823f32","sha256":"90842351d2f498e381a1589b50cddc91338d27356ca9aeaf28d7ccba080de5ac","sha512":"91220eddac6eb6feb1bb70cf537217c4ad3fd5ee66c76b9ac1cfabf18d862b570dfb6bf4033c9d0451b9add2c3008cd2181910d064101a8368f2b143486a91c5","ssdeep":"","tlshash":"9211efba5200969c1543e5ecdb3680b0730f21b9b2ab12d4a8da47b8f45b5c8e803838","first_seen":"2025-04-11T11:28:49.295922Z","last_seen":"2026-07-27T07:05:43.346196Z","times_seen":786,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiM0RDNERkYiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJtMTAuMDQgNC0uMDEuMDJhLjAyLjAyIDAgMCAwIDAgLjAzIDIuNyAyLjcgMCAwIDEgMS41NCAxLjgxYy4zOCAxLjU1LS42NiAyLjc5LTEuODQgMy41NWwtLjY2LjQyYy0uMjcuMTgtLjUyLjQtLjc3LjY3LS4zOC40Mi0uNi45Ni0uNTggMS41My4wMi42LjI4IDEuMTUuNzUgMS41LjcyLjU0IDEuNjYuNTIgMi40NS4yMWE0LjggNC44IDAgMCAwIDIuMzMtMi4wMyA1LjMgNS4zIDAgMCAwIC41Ni00LjA1aC0uMDFsLS4wMy4wMnYuMDJjLjI1IDIuMTMtLjk4IDMuODUtMi43NCA0LjgtLjMzLjE4LS44My4zNS0xLjE2LjA4LS4yNi0uMjItLjI4LS41OC0uMS0uODYuMTUtLjIuMzgtLjQuNTYtLjVsLjU0LS4zNGMuMjQtLjE0LjUtLjM0Ljc4LS42YTMuNjIgMy42MiAwIDAgMCAxLjI3LTIuOThBMy44NyAzLjg3IDAgMCAwIDEwLjA0IDRaTTcuOTUgMTRsLjAyLS4wMmEuMDIuMDIgMCAwIDAgMC0uMDMgMi43IDIuNyAwIDAgMS0xLjU0LTEuODFjLS4zOC0xLjU1LjY2LTIuNzggMS44NC0zLjU0bC42Ni0uNDNjLjI2LS4xNy41Mi0uNC43Ny0uNjcuMzgtLjQyLjYtLjk1LjU4LTEuNTJhMS45MiAxLjkyIDAgMCAwLS43NS0xLjVjLS43Mi0uNTUtMS42Ni0uNTMtMi40NS0uMjJBNC44IDQuOCAwIDAgMCA0Ljc1IDYuM2E1LjMgNS4zIDAgMCAwLS41NiA0LjA1aC4wMWwuMDMtLjAydi0uMDJjLS4yNS0yLjEzLjk4LTMuODQgMi43NC00LjguMzMtLjE3LjgzLS4zNSAxLjE2LS4wNy4yNi4yMS4yOC41Ny4xLjg1LS4xNS4yMS0uMzguNC0uNTYuNTFsLS41NC4zM2MtLjI0LjE1LS41LjM1LS43OC42YTMuNjIgMy42MiAwIDAgMC0xLjI3IDIuOThBMy44NyAzLjg3IDAgMCAwIDcuOTUgMTRaIiBmaWxsPSIjZmZmIi8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCJTO.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.662Z","timestamp":1785126258662,"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 /crypto/XTVCJTO.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 04:24:18 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: \"9df62e96874d7c7f5df4517d476043f7\"\r\nlast-modified: Mon, 05 Aug 2024 13:39:35 GMT\r\ncdn-cachedat: 08/09/2025 14:44:21\r\nx-amz-id-2: 5OKnZL4w3SODl2neZlxQ0g9XzxAwRcDcEoJNntZZHEC3/lzr4nbHPe8c9jj64U8MMg03rRuOzoA=\r\nx-amz-request-id: 6FS6J0ET2JV3C9QF\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 9df62e96874d7c7f5df4517d476043f7\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: badbf25b12ce4b04519c1a5e8d49a650\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":1774,"size_decoded":1871,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1774), with no line terminators","md5":"9df62e96874d7c7f5df4517d476043f7","sha1":"6421bf5d5c05f9d4a9d66dbecc897f482e08a40b","sha256":"a2e1ac0c67fbcabc617ea6b567c3396ebfa2c185f840a97a1c405691f402cedb","sha512":"b88b63c7982ca4b7ef229d3e58819c1e45dee8ea341c41d12354ade0a8377db5b3ec7e6c6fe77c22edd54bdb8446f89734c1b8b10373431db6d9016e3766b305","ssdeep":"","tlshash":"7331ce36a68cda1d6803d52dc7b6c5a0630f5079facb92e568fbdb78605b545dd03c20","first_seen":"2025-02-10T15:10:00.614269Z","last_seen":"2026-07-27T07:05:43.263918Z","times_seen":786,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNSA4Ljk5YTUuOTQgNS45NCAwIDAgMS0xLjc1IDQuMjUgNS45NCA1Ljk0IDAgMCAxLTYuNTQgMS4zIDUuOTQgNS45NCAwIDAgMS0zLjI1LTMuMjMgNS45NSA1Ljk1IDAgMCAxIDEuMjktNi41NSA1Ljk0IDUuOTQgMCAwIDEgNi41NC0xLjMgNS45NCA1Ljk0IDAgMCAxIDMuMjUgMy4yM2MuMy43NC40NiAxLjUuNDYgMi4zWm0tMS0uMDdhNC45NSA0Ljk1IDAgMCAxLTMuMDEgNC42NyA0Ljk1IDQuOTUgMCAwIDEtNS40Ny0xIDQuOTYgNC45NiAwIDAgMS0xLjE3LTUuNDNBNC45NSA0Ljk1IDAgMCAxIDguOTIgNGE0Ljk1IDQuOTUgMCAwIDEgNC42NyAzLjAxYy4yNi42MS40IDEuMjUuNCAxLjkxWm0tNi43Ny0yLjFjLjE1LjE1LjM1LjIzLjU4LjI2LjIyLjAyLjQzIDAgLjYzLS4xLjEzLS4wNi4zLS4xOC40OC0uMzdsLjYzLS42NWMuMjQtLjI1LjQzLS40LjU4LS40M2EuOTUuOTUgMCAwIDEgLjc4LjE1Yy4wNC4wMy4wNC4wNi4wMS4xbC0uMTEuMTQtMS40NSAxLjQ0Yy0uNDYuNDYtMS4wMy42NS0xLjcuNTUtLjM4LS4wNS0uNy0uMi0uOTUtLjQyLS4yMy0uMi0uNDYtLjQzLS43LS42OC0uMDMtLjA0LS4wMy0uMDcgMC0uMWwuNTItLjUxYy4wMy0uMDMuMS4wMS4yLjEybC41LjVabTMuOTQuNDJhMS4wNiAxLjA2IDAgMCAwLS4xIDEuMzMgNS43MiA1LjcyIDAgMCAwIC44OS45MmMuMzIuMy41LjU2LjUzLjc3YS44Mi44MiAwIDAgMS0uMjQuN2gtLjA0Yy0uNDUtLjQ1LS45NS0uOTYtMS41MS0xLjVhMi4xNCAyLjE0IDAgMCAxLS42NS0xLjE1Yy0uMDgtLjQ0IDAtLjg3LjIzLTEuMjkuMS0uMTcuMy0uNC41OS0uN2wuMjctLjI3Yy4wNC0uMDQuMDgtLjA0LjEzIDBsLjUxLjUyYy4wMi4wMi4wMi4wNCAwIC4wNS0uMjUuMjQtLjQ1LjQ0LS42MS42MlpNNy4xIDEwLjI3Yy0uMDQuMi0uMTQuNC0uMzEuNTgtLjE4LjItLjM4LjM4LS41OC41Ny0uMDIuMDItLjAyLjA1IDAgLjA3bC41My41MmMuMDIuMDMuMDUuMDMuMDggMGExMCAxMCAwIDAgMCAuNzQtLjc3IDEuOTYgMS45NiAwIDAgMCAuMi0yLjA2Yy0uMDktLjE3LS4zLS40My0uNjUtLjc3TDUuODEgNy4xYy0uMDQtLjA0LS4wNy0uMDQtLjEgMC0uMzIuNDQtLjI4Ljg1LjEzIDEuMjJsLjc5Ljc4Yy4yLjIxLjM0LjM4LjQuNS4xLjIyLjEyLjQ0LjA4LjY2Wm00Ljg0IDEtLjUuNDljLS4wMy4wNC0uMDguMDQtLjEyIDBsLS41OC0uNTdhLjkyLjkyIDAgMCAwLS4zNC0uMjEgMS4xOCAxLjE4IDAgMCAwLS45OC4wOGMtLjEuMDUtLjMuMjQtLjYzLjU4bC0uNC40Yy0uMi4yLS4zNC4zMi0uNDMuMzctLjMxLjE1LS42My4xMS0uOTUtLjEyLS4wMy0uMDMtLjAzLS4wNSAwLS4wOGwxLjU4LTEuNThjLjI4LS4yOC42LS40Ni45Ny0uNTMuNzEtLjE0IDEuMzMuMDQgMS44My41NWwuNTUuNTRjLjAyLjAyLjAyLjA1IDAgLjA3WiIgZmlsbD0iI2ZmZiIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0iYSIgeDE9IjMuMzUiIHkxPSIzLjEyIiB4Mj0iMjEuOSIgeTI9IjI0LjQzIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iIzFBMUUyMSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzA2MDYwQSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjwvc3ZnPg=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCAKT.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.678Z","timestamp":1785126258678,"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 /crypto/XTVCAKT.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 04:24:18 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: \"7f9eb8f77e8e4c93c3db185665b35140\"\r\nlast-modified: Wed, 08 Sep 2021 09:05:20 GMT\r\ncdn-cachedat: 08/14/2025 09:16:49\r\nx-amz-id-2: 29ut74kFWzmF27iD3Djf5S4FV1ngh0X3HB5TOlBqq1xQrNSjhjgXSXUJe5EqW1kLBMCe9DljDGM=\r\nx-amz-request-id: A7QNDPR4010JP0BB\r\nx-amz-meta-hash: 7f9eb8f77e8e4c93c3db185665b35140\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: 06bb8c2c069478b9a88a0cf9bb4c1cbf\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":534,"size_decoded":1227,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (534), with no line terminators","md5":"7f9eb8f77e8e4c93c3db185665b35140","sha1":"fecd0e13ebe942f3b2f50c979512821c8c57d1b5","sha256":"40e668c52fed332ab9fae453fd140a260c701b0e4ba554ec9ddeddd9352ca96d","sha512":"213fc90eb6291d34eb9d8d6fb4a3f2136c122c5af60c19ddd8fddf448ea5eca9ed485fafa4e9db3937ff2be2e92aa78c4b93c8dde2decf5dc274dd0578e61061","ssdeep":"","tlshash":"2df0c069d91e642ad50bc7e0faa89427510e10cbe648469ef2a57b3e3424bcb181ca65","first_seen":"2023-08-12T21:50:39Z","last_seen":"2026-07-27T07:05:43.375018Z","times_seen":829,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjE4IiBoZWlnaHQ9IjE4Ij48cGF0aCBmaWxsPSJ1cmwoI2FqMjNueHVpeSkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNNy4yNiA0bDUuMDYgOS41TDE0IDEwLjMyIDEwLjYxIDRINy4yNnoiIGZpbGw9IiNEQjQ1MzMiLz48cGF0aCBkPSJNNy4yNiAxMC41bDEuNzQgM2gzLjQ5bC0xLjc1LTNINy4yNnoiIGZpbGw9IiNBMTJFMkEiLz48cGF0aCBkPSJNNS43NCA3TDQgMTAuMjVsMS43NCAzLjI1TDkuMjYgN0g1Ljc0eiIgZmlsbD0iI0RCNDUzMyIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0iYWoyM254dWl5IiB4MT0iMy4zNSIgeTE9IjMuMTIiIHgyPSIyMS45IiB5Mj0iMjQuNDMiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjMUExRTIxIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMDYwNjBBIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCNYM.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.803Z","timestamp":1785126258803,"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 /crypto/XTVCNYM.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 04:24:18 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: \"42e2f7064492e67ca014d26d7a55bd0c\"\r\nlast-modified: Tue, 04 Oct 2022 10:23:47 GMT\r\nx-amz-id-2: zdX9fvTt66mnHPwopefPle1bLJhGd7cxTJeGUT20evEMpp/EpzLmt7pfWXa8HRhendcicSeymAk=\r\nx-amz-request-id: WF1P4NZ3GDE92R9C\r\nx-amz-meta-hash: 42e2f7064492e67ca014d26d7a55bd0c\r\ncdn-proxyver: 1.43\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 03/09/2026 06:31:09\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: ccf85d48743d41cab56729e4c2c6a435\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":434,"size_decoded":1174,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (434), with no line terminators","md5":"42e2f7064492e67ca014d26d7a55bd0c","sha1":"e2839306b276f5a64f8d2664019fecde29edbd0a","sha256":"8a3e0e23dfef5002efd9c5162e2c05627aef1298b1955f6192c6cc82b7b24b38","sha512":"df67d1d74bd4a6e393f0a1cad5ea5edc087d0401ceebc53d7e9c5e843aa00037d12030bc81456bcd38b00a0546806465f7ae6c23d5bcf47abedbcafe4c62da80","ssdeep":"","tlshash":"5ce05cffb32cc50cac438678db7d21a1624da0e9358528b0795f5534305b6cfdc92e44","first_seen":"2026-06-18T08:26:16.910275Z","last_seen":"2026-07-27T07:05:43.360751Z","times_seen":118,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNCA5QTUgNSAwIDEgMCA0IDlhNSA1IDAgMCAwIDEwIDBabS0uNTkgMEE0LjQxIDQuNDEgMCAxIDAgNC42IDlhNC40MSA0LjQxIDAgMCAwIDguODIgMFoiIGZpbGw9IiMxODFCMUUiLz48cGF0aCBkPSJNNyAxMS41di01Yy4yLS4yLjQzLS4zNy42Ny0uNWwyLjY2IDQuNjdWNmMuMjQuMTQuNDguMzMuNjcuNTN2NC45N2MtLjIuMi0uNDMuMzYtLjY3LjVMNy42NyA3LjNWMTJhMy41NSAzLjU1IDAgMCAxLS42Ny0uNVoiIGZpbGw9IiMxODFCMUUiLz48L3N2Zz4="}},"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":"besttrader.live/","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":true,"resource_type":"document","requested_by":"","date":"2026-07-27T04:24:15.036Z","timestamp":1785126255036,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET / HTTP/1.1\r\nHost: besttrader.live\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:15 GMT\r\ncontent-type: text/html\r\nlast-modified: Wed, 10 Jun 2026 12:56:40 GMT\r\netag: W/\"6a295f08-169db\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"jQuery CDN","description":"jQuery CDN is a way to include jQuery in your website without actually downloading and keeping it your website's folder.","website":"https://code.jquery.com/","common_platform_enumeration":"","icon":"jQuery.svg","categories":["CDN"]},{"name":"JivoChat","description":"JivoChat is a live chat solution for websites offering customizable web and mobile chat widgets.","website":"https://www.jivosite.com","common_platform_enumeration":"","icon":"JivoChat.png","categories":["Live chat"]},{"name":"Slick","description":"","website":"https://kenwheeler.github.io/slick","common_platform_enumeration":"","icon":"Slick.svg","categories":["JavaScript libraries"]},{"name":"BootstrapCDN:4.3.1","description":"BootstrapCDN is a powerful and reliable Content Delivery Network (CDN) that delivers static resources, including CSS, JavaScript, and font files, for the widely-used Bootstrap framework. By leveraging multiple server locations worldwide, BootstrapCDN accelerates website loading times, ensuring a smooth and visually appealing user experience. Additionally, it ensures website compatibility with various devices and browsers. The service reduces bandwidth usage and server load, improving web performance for developers and end-users alike.","website":"https://www.bootstrapcdn.com/","common_platform_enumeration":"","icon":"BootstrapCDN.png","categories":["CDN"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"jQuery Migrate:1.2.1","description":"Query Migrate is a javascript library that allows you to preserve the compatibility of your jQuery code developed for versions of jQuery older than 1.9.","website":"https://github.com/jquery/jquery-migrate","common_platform_enumeration":"","icon":"jQuery.svg","categories":["JavaScript libraries"]},{"name":"Bootstrap:4.3.1","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":"cdnjs","description":"cdnjs is a free distributed JS library delivery service.","website":"https://cdnjs.com","common_platform_enumeration":"","icon":"cdnjs.svg","categories":["CDN"]},{"name":"jQuery:3.2.1","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":"jQuery UI","description":"jQuery UI is a collection of GUI widgets, animated visual effects, and themes implemented with jQuery, Cascading Style Sheets, and HTML.","website":"https://jqueryui.com","common_platform_enumeration":"cpe:2.3:a:jquery:jquery_ui:*:*:*:*:*:*:*:*","icon":"jQuery UI.svg","categories":["JavaScript libraries"]},{"name":"Font Awesome","description":"Font Awesome is a font and icon toolkit based on CSS and Less.","website":"https://fontawesome.com/","common_platform_enumeration":"","icon":"Font Awesome.svg","categories":["Font scripts"]},{"name":"Popper:1.14.7","description":"Popper is a positioning engine, its purpose is to calculate the position of an element to make it possible to position it near a given reference element.","website":"https://popper.js.org","common_platform_enumeration":"","icon":"Popper.svg","categories":["Miscellaneous"]},{"name":"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":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"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":"SweetAlert","description":"SweetAlert is a JavaScript library that provides alternative alert and modal dialog boxes for web applications, with customisable features, aiming to improve the user interface of the default browser dialogs.","website":"https://sweetalert.js.org","common_platform_enumeration":"","icon":"SweetAlert.png","categories":["JavaScript libraries"]}],"data":{"size":92635,"size_decoded":14917,"mime_type":"text/html","magic":"HTML document text HTML document, ASCII text, with CRLF line terminators","md5":"ae2a5b05fe260b71a0e0fa7530aae600","sha1":"94260bb519a4744b2a64088777024033550c5793","sha256":"7806db8b8e2d0198b247d387fc4efa8e13887d17d76956799c9a83b885e6f3c2","sha512":"fa8b3f3bce72ba20a5c4419b0d213cc79cebd92d84ca2d5fd8574ba8330b3acef504d70baf0f989a3ef4035ed0c9d3f687c00bdd8448a5bd142f1e28561b76ea","ssdeep":"768:ZhhsoUmdtzcMqm86aqBQAGmk7Pw5xQNSRyV6qJeE5C:VtLLqYaqBQAGmkTixQNj6yD5C","tlshash":"ac93ed247dc5982341bb94daa5321e19ffb98373c2510585b6ac93f72fb3f28ca27548","first_seen":"2026-07-27T03:36:45.076569Z","last_seen":"2026-07-27T04:25:12.809139Z","times_seen":2,"resource_available":false,"data":"PCEtLSBjb25uZWN0aW9uIC0tPg0KDQoNCg0KPCFET0NUWVBFIGh0bWw+DQo8aHRtbD4NCg0KDQo8IS0tIE1pcnJvcmVkIGZyb20gYmVzdHRyYWRlci5saXZlLyBieSBIVFRyYWNrIFdlYnNpdGUgQ29waWVyLzMueCBbWFImQ08nMjAxNF0sIFN1biwgMTMgTWFyIDIwMjIgMDg6NDY6MzAgR01UIC0tPg0KPCEtLSBBZGRlZCBieSBIVFRyYWNrIC0tPg0KPCEtLSBNaXJyb3JlZCBmcm9tIGJlc3R0cmFkZXIubGl2ZS8gYnkgSFRUcmFjayBXZWJzaXRlIENvcGllci8zLnggW1hSJkNPJzIwMTRdLCBTdW4sIDA5IE9jdCAyMDIyIDE1OjIyOjM2IEdNVCAtLT4NCjxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtdHlwZSIgY29udGVudD0idGV4dC9odG1sO2NoYXJzZXQ9VVRGLTgiIC8+PCEtLSAvQWRkZWQgYnkgSFRUcmFjayAtLT4NCjxtZXRhIGh0dHAtZXF1aXY9ImNvbnRlbnQtdHlwZSIgY29udGVudD0idGV4dC9odG1sO2NoYXJzZXQ9VVRGLTgiIC8+DQo8aGVhZD4NCgk8IS0tIFJlcXVpcmVkIG1ldGEgdGFncyAtLT4NCiAgICA8bWV0YSBuYW1lPSJkZXNjcmlwdGlvbiIgY29udGVudD0iICB0cmFkZSBwcm8gZ2xvYmFsIGludmVzdG1lbnQgIE5vLjEgRm9yZXggYW5kIEJpbmFyeSBPcHRpb24gcGxhdGZvcm0gZm9yIENyeXB0b2N1cnJlbmN5IFRyYWRpbmciPg0KICAgIDxtZXRhIG5hbWU9ImtleXdvcmRzIiBjb250ZW50PSJGb3JleCwgYnJva2VyLCBsZWdpdCBicm9rZXIsIGZ4IHRyYWRpbmcsIGJpbmFyeSwgc3RvY2sgZXhjaGFuZ2UgbWFya2V0LCBjcnlwdG9jdXJyZW5jaWVzLCBpbmRpY2VzICI+DQogICAgPG1ldGEgbmFtZT0iYXV0aG9yIiBjb250ZW50PSIgYmVzdHRyYWRlcnMgIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEiPg0KICAgIDxtZXRhIG5hbWU9InRoZW1lLWNvbG9yIiBjb250ZW50PSIjZTllOGYwIiAvPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzp0aXRsZSIgY29udGVudD0iICB0cmFkZSBwcm8gZ2xvYmFsIGludmVzdG1lbnQgIj4NCiAgICA8bWV0YSBwcm9wZXJ0eT0ib2c6ZGVzY3JpcHRpb24iIGNvbnRlbnQ9Ik5vLjEgRm9yZXggYW5kIEJpbmFyeSBPcHRpb24gcGxhdGZvcm0gZm9yIENyeXB0b2N1cnJlbmN5IFRyYWRpbmciPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzppbWFnZSIgY29udGVudD0iaW1hZ2VzL3RodW1ibmFpbC5wbmciPg0KICAgIDxtZXRhIHByb3BlcnR5PSJvZzp1cmwiIGNvbnRlbnQ9ImluZGV4LTIuaHRtbCI+DQoNCg0KICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij48bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9InN0YWNrcGF0aC5ib290c3RyYXBjZG4uY29tL2Jvb3RzdHJhcC80LjMuMS9jc3MvYm9vdHN0cmFwLm1pbi5jc3MiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MSwgbWF4aW11bS1zY2FsZT0xLHNocmluay10by1maXQ9bm8sIHVzZXItc2NhbGFibGU9MCIvPiA8IS0tMzIwLS0+DQoNCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9InN0YWNrcGF0aC5ib290c3RyYXBjZG4uY29tL2Jvb3RzdHJhcC80LjMuMS9jc3MvYm9vdHN0cmFwLm1pbi5jc3MiPg0KDQogICAgPCEtLSBsaW5rIHRvIHN0eWxlc2hlZXQgLS0+DQogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iY3NzL3N0eWxlLmNzcyI+DQogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiB0eXBlPSJ0ZXh0L2NzcyIgaHJlZj0iY3NzL3N0eWxlX3ByZWxvYWRlci5jc3MiPg0KDQogICAgPGxpbmsgaHJlZj0iaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJhbGV3YXkmYW1wO2Rpc3BsYXk9c3dhcCIgcmVsPSJzdHlsZXNoZWV0Ij4NCg0KICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iY3NzL2pxdWVyeS11aS5jc3MiPg0KDQogICAgPHNjcmlwdCBzcmM9ImpzL2pxdWVyeS11aS5qcyI+PC9zY3JpcHQ+DQoNCg0KICAgIDwhLS0gbGlua2lnIGZvciBmb250YXdlc29tZSBzdHlsaW5nIC0tPg0KICAgIDxzY3JpcHQgc3JjPSJraXQuZm9udGF3ZXNvbWUuY29tL2U0NGQ1YTI5M2EuanMiIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiPjwvc2NyaXB0PiA8IS0tbG9hZCBhbGwgc3R5bGVzIC0tPg0KDQoNCgk8dGl0bGU+ICBiZXN0dHJhZGVycyAgIHwgSE9NRSAgPC90aXRsZT4NCg0KCTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9ImpzL2pxdWVyeS0zLjIuMS5taW4uanMiPjwvc2NyaXB0Pg0KDQoJPCEtLSBpbmNsdWRpbmcgc2NyaXB0IGZvciBzd2VldC5qcyAtLT4NCiAgICA8c2NyaXB0IHNyYz0ianMvc3dlZXRhbGVydC5taW4uanMiPjwvc2NyaXB0Pg0KDQogICAgPCEtLSAvLyBBZGQgdGhlIG5ldyBzbGljay10aGVtZS5jc3MgaWYgeW91IHdhbnQgdGhlIGRlZmF1bHQgc3R5bGluZyAtLT4NCgk8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSJzbGljay9zbGljay10aGVtZS5jc3MiLz4NCgk8bGluayByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiBocmVmPSJzbGljay9zbGljay5jc3MiLz4NCg0KICAgIDwhLS0gaW5jbHVkaW5nIHRoZSBmcmFuayBmb250IGNkbiAtLT4NCiAgICA8bGluayBocmVmPSJodHRwOi8vZGIub25saW5ld2ViZm9udHMuY29tL2MvMTVhOTA3NWRkZjRmZjExNThlYjAzYWJiYzg3M2EzYTQ/ZmFtaWx5PUZyYW5rLUxpZ2h0IiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIi8+IA0KDQoNCgkgPCEtLSBzY3JpcHkgZm9yIGN5Y2xlIC0tPg0KICAgIDxzY3JpcHQgc3JjPSJqcy9qcXVlcnkuY3ljbGUuYWxsLmpzIj48L3NjcmlwdD4NCg0KDQoNCg0KDQoJPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KCQkkKHdpbmRvdykub24oJ2xvYWQnLGZ1bmN0aW9uKCl7DQoJCQkkKCcucHJlbG9hZGVyJykuYWRkQ2xhc3MoJ2NvbXBsZXRlJyk7DQoJCX0pOw0KCTwvc2NyaXB0Pg0KCQ0KCTwhLS0gZmF2aWNvbiAtLT4NCiAgICA8bGluayBocmVmPSJpbWFnZXMvZmF2aWNvbi5wbmciIHJlbD0iaWNvbiIgdHlwZT0iaW1hZ2UveC1pY29uIj4NCgkJDQo8L2hlYWQ+DQogICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJub3RpL2Zha2UuY3NzIj4NCjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0ibm90aS9mYWtlYW5pbWF0ZS5jc3MiPg0KPCEtLSBoZWFkZXIgLS0+DQoNCjxib2R5Pg0KCTwhLS0gdGhpcyBpcyB0aGUgcHJlbG9hZGVyIHNlY3Rpb24gIC0tPg0KCTxkaXYgY2xhc3M9InByZWxvYWRlciI+DQoJCTxkaXYgY2xhc3M9ImxvYWRlciI+DQoJCQk8Y2VudGVyPg0KCQkJCTxpbWcgc3JjPSJpbWFnZXMvcHJlbG9hZGVyLmdpZiI+DQoJCQk8L2NlbnRlcj4NCgkJCQ0KCQk8L2Rpdj4JDQoJPC9kaXY+CQ0KCTwhLS0gcHJlbG9hZGVyIHNlY3Rpb24gZW5kcyBoZXJlIC0tPg0KCQ0KCQ0KDQoJPCEtLSBtYWluIGJvZHkgd3JhcHBlciBkZXNpZ24gc3RhcnRzIGhlcmUgIC0tPg0KCTxzZWN0aW9uIGNsYXNzPSJ3cmFwcGVyIGNvbnRhaW5lci1mbHVpZCI+DQoNCgkJIDwhLS0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLUZpcnN0IHNlY3Rpb24gd2l0aCB0aGUgYW5pbWluYXRpb24gbWFpbi1iZy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAtLT4NCiAgICA8c2VjdGlvbj4NCiAgICAgICANCgkJPCEtLSBTdGFydCBvZiB0aGUgZmlyc3QgbmF2IC0tPg0KCQk8ZGl2IGNsYXNzPSJjb250YWluZXItZmx1aWQgY29sLWYtbmF2Ij4NCgkJCTxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQoJCQkJPGRpdiBjbGFzcz0icm93Ij4gDQoJCQkJCTwhLS0gdGhpcyBpcyB0aGUgbG9nbyBzZWN0aW9uICAtLT4NCgkJCQkJPGRpdiBjbGFzcz0iY29sLW1kLTIgY29sLXNtLTEyIj4NCgkJCQkJCTxhIGNsYXNzPSJuYXZiYXItYnJhbmQiIGhyZWY9ImluZGV4LTIuaHRtbCI+IDxpbWcgc3JjPSJpbWFnZXMvbG9nby5wbmciIGNsYXNzPSJicmFuZCI+PC9hPg0KCQkJCQkJPGJ1dHRvbiBjbGFzcz0ibmF2YmFyLXRvZ2dsZXIiIHR5cGU9ImJ1dHRvbiIgZGF0YS10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLXRhcmdldD0iI25hdmJhclN1cHBvcnRlZENvbnRlbnQiIGFyaWEtY29udHJvbHM9Im5hdmJhclN1cHBvcnRlZENvbnRlbnQiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIiBhcmlhLWxhYmVsPSJUb2dnbGUgbmF2aWdhdGlvbiI+DQoJCQkJCQkgICAgPGltZyBzcmM9ImltYWdlcy9pY29uL2hhbWJ1cmdlci1ibGsucG5nIj4NCgkJCQkJCSAgPC9idXR0b24+DQoNCgkJCQkJPC9kaXY+DQoNCgkJCQkJPCEtLSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQoJCQkJCTxkaXYgY2xhc3M9ImNvbC1tZC02IGNvbC1zbS0xMiBuYXYiPg0KCQkJCQkJPG5hdiBjbGFzcz0ibmF2YmFyIG5hdmJhci1leHBhbmQtbGcgbmF2YmFyLWxpZ2h0Ij4NCgkJCQkJCQk8c2VsZWN0IGNsYXNzPSIgY3VzdG9tLXNlbGVjdC1tIiBzdHlsZT0id2lkdGg6MTAwcHg7aGVpZ2h0OjMwcHg7ICBmb250LXNpemU6IDEycHg7IiBpZD0ibGFuZ3VhZ2UiIG9uY2hhbmdlPSJjaGFuZ2VMYW5ndWFnZUJ5QnV0dG9uQ2xpY2soKSI+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJhZiI+QWZyaWthbm5zPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJzcSI+QWxiYW5pYW48L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImFyIj5BcmFiaWM8L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9Imh5Ij5Bcm1lbmlhbjwvb3B0aW9uPg0KCQkJCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0iZXUiPkJhc3F1ZTwvb3B0aW9uPg0KCQkJCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0iYm4iPkJlbmdhbGk8L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImJnIj5CdWxnYXJpYW48L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImNhIj5DYXRhbGFuPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJrbSI+Q2FtYm9kaWFuPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJ6aC1DTiI+Q2hpbmVzZSAoTWFuZGFyaW4pPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJociI+Q3JvYXRpb248L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImNzIj5DemVjaDwvb3B0aW9uPg0KCQkJCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0iZGEiPkRhbmlzaDwvb3B0aW9uPg0KCQkJCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0ibmwiPkR1dGNoPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJlbiIgc2VsZWN0ZWQ+RW5nbGlzaDwvb3B0aW9uPg0KCQkJCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0iZXQiPkVzdG9uaWFuPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJmaiI+RmlqaTwvb3B0aW9uPg0KCQkJCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0iZmkiPkZpbm5pc2g8L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImZyIj5GcmVuY2g8L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImthIj5HZW9yZ2lhbjwvb3B0aW9uPg0KCQkJCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0iZGUiPkdlcm1hbjwvb3B0aW9uPg0KCQkJCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0iZWwiPkdyZWVrPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJndSI+R3VqYXJhdGk8L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImhlIj5IZWJyZXc8L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImhpIj5IaW5kaTwvb3B0aW9uPg0KCQkJCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0iaHUiPkh1bmdhcmlhbjwvb3B0aW9uPg0KCQkJCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0iaXMiPkljZWxhbmRpYzwvb3B0aW9uPiANCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImlkIj5JbmRvbmVzaWFuPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJnYSI+SXJpc2g8L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9Iml0Ij5JdGFsaWFuPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJqYSI+SmFwYW5lc2U8L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9Imp3Ij5KYXZhbmVzZTwvb3B0aW9uPg0KCQkJCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0ia28iPktvcmVhbjwvb3B0aW9uPg0KCQkJCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0ibGEiPkxhdGluPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJsdiI+TGF0dmlhbjwvb3B0aW9uPg0KCQkJCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0ibHQiPkxpdGh1YW5pYW48L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9Im1rIj5NYWNlZG9uaWFuPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJtcyI+TWFsYXk8L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9Im1sIj5NYWxheWFsYW08L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9Im10Ij5NYWx0ZXNlPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJtaSI+TWFvcmk8L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9Im1yIj5NYXJhdGhpPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJtbiI+TW9uZ29saWFuPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJuZSI+TmVwYWxpPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJubyI+Tm9yd2VnaWFuPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJmYSI+UGVyc2lhbjwvb3B0aW9uPg0KCQkJCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0icGwiPlBvbGlzaDwvb3B0aW9uPg0KCQkJCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0icHQiPlBvcnR1Z3Vlc2U8L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9InBhIj5QdW5qYWJpPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJxdSI+UXVlY2h1YTwvb3B0aW9uPg0KCQkJCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0icm8iPlJvbWFuaWFuPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJydSI+UnVzc2lhbjwvb3B0aW9uPg0KCQkJCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0ic20iPlNhbW9hbjwvb3B0aW9uPg0KCQkJCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0ic3IiPlNlcmJpYW48L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9InNrIj5TbG92YWs8L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9InNsIj5TbG92ZW5pYW48L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImVzIj5TcGFuaXNoPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJzdyI+U3dhaGlsaTwvb3B0aW9uPg0KCQkJCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0ic3YiPlN3ZWRpc2ggPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJ0YSI+VGFtaWw8L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9InR0Ij5UYXRhcjwvb3B0aW9uPg0KCQkJCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0idGUiPlRlbHVndTwvb3B0aW9uPg0KCQkJCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0idGgiPlRoYWk8L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImJvIj5UaWJldGFuPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJ0byI+VG9uZ2E8L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9InRyIj5UdXJraXNoPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJ1ayI+VWtyYW5pYW48L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9InVyIj5VcmR1PC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJ1eiI+VXpiZWs8L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9InZpIj5WaWV0bmFtZXNlPC9vcHRpb24+DQoJCQkJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJjeSI+V2Vsc2g8L29wdGlvbj4NCgkJCQkJCQkJCQkgIDxvcHRpb24gdmFsdWU9InhoIj5YaG9zYTwvb3B0aW9uPg0KCQkJCQkJCQkJCSAgICAgIDwvc2VsZWN0Pg0KCQkJCQkJCQkJCSANCgkJCQkJCSAgPGRpdiBjbGFzcz0iY29sbGFwc2UgbmF2YmFyLWNvbGxhcHNlIiBpZD0ibmF2YmFyU3VwcG9ydGVkQ29udGVudCI+DQoJCQkJCQkgICAgPHVsIGNsYXNzPSJuYXZiYXItbmF2IG1yLWF1dG8iPg0KICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSI+DQoJCQkJCQkJICAgICAgICA8YSBjbGFzcz0ibmF2LWxpbmsiIGhyZWY9ImluZGV4LTIuaHRtbCI+DQogICAgICAgICAgICAgICAgICAgICAgICBIT01FDQoJCQkJCQkJICAgICAgICA8L2E+DQoJCQkJCQkJICAgICAgPC9saT4JDQoJCQkJCQkgICAgICAJPGxpIGNsYXNzPSJuYXYtaXRlbSBkcm9wZG93biI+DQoJCQkJCQkgICAgICAgIDxhIGNsYXNzPSJuYXYtbGluayBkcm9wZG93bi10b2dnbGUiIGhyZWY9IiMiIGlkPSJuYXZiYXJEcm9wZG93biIgcm9sZT0iYnV0dG9uIiBkYXRhLXRvZ2dsZT0iZHJvcGRvd24iIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIj4NCgkJCQkJCSAgICAgICAgICBNQVJLRVRTIA0KCQkJCQkJICAgICAgICA8L2E+DQoNCgkJCQkJCSAgICAgICAgPGRpdiBjbGFzcz0iZHJvcGRvd24tbWVudSBkcm9wZG93bi1tZW51LXJpZ2h0IGFuaW1hdGUgc2xpZGVJbiIgYXJpYS1sYWJlbGxlZGJ5PSJuYXZiYXJEcm9wZG93biI+DQoJCQkJCQkgICAgICAgICAgPGEgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iIGhyZWY9ImNyeXB0by5odG1sIj4gPGkgY2xhc3M9ImZhcyBmYS1hbmdsZS1yaWdodCBkcm9wLWljb24tbGVmdCI+PC9pPiAgQ1JZUFRPUzwvYT4NCgkJCQkJCSAgICAgICAgICA8YSBjbGFzcz0iZHJvcGRvd24taXRlbSIgaHJlZj0iaW5kaWNlcy5odG1sIj4gPGkgY2xhc3M9ImZhcyBmYS1hbmdsZS1yaWdodCBkcm9wLWljb24tbGVmdCI+PC9pPiAgSU5ESUNJRVM8L2E+DQoJCQkJCQkgICAgICAgICAgPGEgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iIGhyZWY9ImZvcmV4Lmh0bWwiPiA8aSBjbGFzcz0iZmFzIGZhLWFuZ2xlLXJpZ2h0IGRyb3AtaWNvbi1sZWZ0Ij48L2k+ICBGT1JFWDwvYT4NCgkJCQkJCSAgICAgICAgICA8YSBjbGFzcz0iZHJvcGRvd24taXRlbSIgaHJlZj0iY29tbW9kaXRpZXMuaHRtbCI+IDxpIGNsYXNzPSJmYXMgZmEtYW5nbGUtcmlnaHQgZHJvcC1pY29uLWxlZnQiPjwvaT4gIEVORVJHSUVTPC9hPg0KCQkJCQkJICAgICAgICAgIDxhIGNsYXNzPSJkcm9wZG93bi1pdGVtIiBocmVmPSJzaGFyZXMuaHRtbCI+IDxpIGNsYXNzPSJmYXMgZmEtYW5nbGUtcmlnaHQgZHJvcC1pY29uLWxlZnQiPjwvaT4gIFNIQVJFUzwvYT4NCgkJCQkJCSAgICAgICAgICA8YSBjbGFzcz0iZHJvcGRvd24taXRlbSIgaHJlZj0ib3B0aW9ucy5odG1sIj4gPGkgY2xhc3M9ImZhcyBmYS1hbmdsZS1yaWdodCBkcm9wLWljb24tbGVmdCI+PC9pPiAgT1BUSU9OPC9hPg0KCQkJCQkJICAgICAgICAgIDxhIGNsYXNzPSJkcm9wZG93bi1pdGVtIiBocmVmPSJldGZzLmh0bWwiPiA8aSBjbGFzcz0iZmFzIGZhLWFuZ2xlLXJpZ2h0IGRyb3AtaWNvbi1sZWZ0Ij48L2k+ICBFVEZTPC9hPg0KDQoJCQkJCQkgICAgICAgICAgDQoJCQkJCQkgICAgICAgIDwvZGl2Pg0KDQoJCQkJCQkgICAgICA8L2xpPg0KDQoJCQkJCQkgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj4NCgkJCQkJCSAgICAgICAgPGEgY2xhc3M9Im5hdi1saW5rIiBocmVmPSJhYm91dC5odG1sIj5BQk9VVCBVUzwvYT4NCgkJCQkJCSAgICAgIDwvbGk+CQ0KDQoJCQkJCQkgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj4NCgkJCQkJCSAgICAgICAgPGEgY2xhc3M9Im5hdi1saW5rIiBocmVmPSJmYXEuaHRtbCI+RkFRUzwvYT4NCgkJCQkJCSAgICAgIDwvbGk+DQoNCgkJCQkJCSAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPg0KCQkJCQkJICAgICAgICA8YSBjbGFzcz0ibmF2LWxpbmsiIGhyZWY9J21haWx0bzpzdXBwb3J0QGJlc3R0cmFkZXIubGl2ZSc+Q09OVEFDVFM8L2E+DQoJCQkJCQkgICAgICA8L2xpPg0KCQkJCQkJICAgICAgDQoJCQkJCQkgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj4NCgkJCQkJCSAgICAgICAgPGEgY2xhc3M9Im5hdi1saW5rIiBocmVmPSJ0cmFkZS5odG1sIj5UUkFERTwvYT4NCgkJCQkJCSAgICAgIDwvbGk+DQoJCQkJCQkgICAgICANCgkJCQkJCSAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj4NCgkJCQkJCSAgICAgICAgPGEgY2xhc3M9Im5hdi1saW5rIiBocmVmPSJodHRwczovL3VzZXIuYmVzdHRyYWRlci5saXZlIj5MT0dJTjwvYT4NCgkJCQkJCSAgICAgIDwvbGk+DQoJCQkJCQkgICAgICANCgkJCQkJCSAgICA8L3VsPg0KCQkJCQkJICA8L2Rpdj4NCgkJCQkJCTwvbmF2Pg0KCQkJCQk8L2Rpdj4NCg0KDQoJCQkJCTwhLS0gdGhpcyBpcyB0aGUgb3RoZXIgc2lkZSB0aGF0IGNvbnRhaW5zIHNpZ251cCBhbmQgdGhlIHJlc3QgIC0tPg0KDQoJCQkJCTwhLS0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCg0KCQkJCQk8ZGl2IGNsYXNzPSJjb2wtbWQtNCBjb2wtc20tMTIgdG9wLWNvbnRhY3Qtd3JhcCI+DQoJCQkJCQk8c2VsZWN0IGNsYXNzPSJjdXN0b20tc2VsZWN0IiBzdHlsZT0id2lkdGg6MTAwcHg7aGVpZ2h0OjMwcHg7ICBmb250LXNpemU6IDEycHg7IiBpZD0ibGFuZ3VhZ2UiIG9uY2hhbmdlPSJjaGFuZ2VMYW5ndWFnZUJ5QnV0dG9uQ2xpY2soKSI+DQoJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJhZiI+QWZyaWthbm5zPC9vcHRpb24+DQoJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJzcSI+QWxiYW5pYW48L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImFyIj5BcmFiaWM8L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9Imh5Ij5Bcm1lbmlhbjwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0iZXUiPkJhc3F1ZTwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0iYm4iPkJlbmdhbGk8L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImJnIj5CdWxnYXJpYW48L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImNhIj5DYXRhbGFuPC9vcHRpb24+DQoJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJrbSI+Q2FtYm9kaWFuPC9vcHRpb24+DQoJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJ6aC1DTiI+Q2hpbmVzZSAoTWFuZGFyaW4pPC9vcHRpb24+DQoJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJociI+Q3JvYXRpb248L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImNzIj5DemVjaDwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0iZGEiPkRhbmlzaDwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0ibmwiPkR1dGNoPC9vcHRpb24+DQoJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJlbiIgc2VsZWN0ZWQ+RW5nbGlzaDwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0iZXQiPkVzdG9uaWFuPC9vcHRpb24+DQoJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJmaiI+RmlqaTwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0iZmkiPkZpbm5pc2g8L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImZyIj5GcmVuY2g8L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImthIj5HZW9yZ2lhbjwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0iZGUiPkdlcm1hbjwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0iZWwiPkdyZWVrPC9vcHRpb24+DQoJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJndSI+R3VqYXJhdGk8L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImhlIj5IZWJyZXc8L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImhpIj5IaW5kaTwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0iaHUiPkh1bmdhcmlhbjwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0iaXMiPkljZWxhbmRpYzwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0iaWQiPkluZG9uZXNpYW48L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImdhIj5JcmlzaDwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0iaXQiPkl0YWxpYW48L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImphIj5KYXBhbmVzZTwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0ianciPkphdmFuZXNlPC9vcHRpb24+DQoJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJrbyI+S29yZWFuPC9vcHRpb24+DQoJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJsYSI+TGF0aW48L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9Imx2Ij5MYXR2aWFuPC9vcHRpb24+DQoJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJsdCI+TGl0aHVhbmlhbjwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0ibWsiPk1hY2Vkb25pYW48L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9Im1zIj5NYWxheTwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0ibWwiPk1hbGF5YWxhbTwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0ibXQiPk1hbHRlc2U8L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9Im1pIj5NYW9yaTwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0ibXIiPk1hcmF0aGk8L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9Im1uIj5Nb25nb2xpYW48L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9Im5lIj5OZXBhbGk8L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9Im5vIj5Ob3J3ZWdpYW48L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImZhIj5QZXJzaWFuPC9vcHRpb24+DQoJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJwbCI+UG9saXNoPC9vcHRpb24+DQoJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJwdCI+UG9ydHVndWVzZTwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0icGEiPlB1bmphYmk8L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9InF1Ij5RdWVjaHVhPC9vcHRpb24+DQoJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJybyI+Um9tYW5pYW48L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9InJ1Ij5SdXNzaWFuPC9vcHRpb24+DQoJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJzbSI+U2Ftb2FuPC9vcHRpb24+DQoJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJzciI+U2VyYmlhbjwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0ic2siPlNsb3Zhazwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0ic2wiPlNsb3Zlbmlhbjwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0iZXMiPlNwYW5pc2g8L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9InN3Ij5Td2FoaWxpPC9vcHRpb24+DQoJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJzdiI+U3dlZGlzaCA8L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9InRhIj5UYW1pbDwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0idHQiPlRhdGFyPC9vcHRpb24+DQoJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJ0ZSI+VGVsdWd1PC9vcHRpb24+DQoJCQkJCQkJICA8b3B0aW9uIHZhbHVlPSJ0aCI+VGhhaTwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0iYm8iPlRpYmV0YW48L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9InRvIj5Ub25nYTwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0idHIiPlR1cmtpc2g8L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9InVrIj5Va3Jhbmlhbjwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0idXIiPlVyZHU8L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9InV6Ij5VemJlazwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0idmkiPlZpZXRuYW1lc2U8L29wdGlvbj4NCgkJCQkJCQkgIDxvcHRpb24gdmFsdWU9ImN5Ij5XZWxzaDwvb3B0aW9uPg0KCQkJCQkJCSAgPG9wdGlvbiB2YWx1ZT0ieGgiPlhob3NhPC9vcHRpb24+DQoJCQkJCQkJICAgICAgPC9zZWxlY3Q+DQoNCgkJCQkJCTxkaXYgaWQ9Imdvb2dsZV90cmFuc2xhdGVfZWxlbWVudCIgc3R5bGU9ImRpc3BsYXk6bm9uZSI+PC9kaXY+DQoJCQkJCQk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQoNCgkJCQkJCWZ1bmN0aW9uIGdvb2dsZVRyYW5zbGF0ZUVsZW1lbnRJbml0KCkgew0KCQkJCQkJICBuZXcgZ29vZ2xlLnRyYW5zbGF0ZS5UcmFuc2xhdGVFbGVtZW50KHtwYWdlTGFuZ3VhZ2U6ICJlbiJ9LCAnZ29vZ2xlX3RyYW5zbGF0ZV9lbGVtZW50Jyk7DQoJCQkJCQl9DQoNCgkJCQkJCWZ1bmN0aW9uIGNoYW5nZUxhbmd1YWdlQnlCdXR0b25DbGljaygpIHsNCgkJCQkJCSAgdmFyIGxhbmd1YWdlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxhbmd1YWdlIikudmFsdWU7DQoJCQkJCQkgIHZhciBzZWxlY3RGaWVsZCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNnb29nbGVfdHJhbnNsYXRlX2VsZW1lbnQgc2VsZWN0Iik7DQoJCQkJCQkgIGZvcih2YXIgaT0wOyBpIDwgc2VsZWN0RmllbGQuY2hpbGRyZW4ubGVuZ3RoOyBpKyspew0KCQkJCQkJICAgIHZhciBvcHRpb24gPSBzZWxlY3RGaWVsZC5jaGlsZHJlbltpXTsNCgkJCQkJCSAgICAvLyBmaW5kIGRlc2lyZWQgbGFuZ2F1Z2UgYW5kIGNoYW5nZSB0aGUgZm9ybWVyIGxhbmd1YWdlIG9mIHRoZSBoaWRkZW4gc2VsZWN0aW9uLWZpZWxkIA0KCQkJCQkJICAgIGlmKG9wdGlvbi52YWx1ZT09bGFuZ3VhZ2Upew0KCQkJCQkJICAgICAgIHNlbGVjdEZpZWxkLnNlbGVjdGVkSW5kZXggPSBpOw0KCQkJCQkJICAgICAgIC8vIHRyaWdnZXIgY2hhbmdlIGV2ZW50IGFmdGVyd2FyZHMgdG8gbWFrZSBnb29nbGUtbGliIHRyYW5zbGF0ZSB0aGlzIHNpZGUNCgkJCQkJCSAgICAgICBzZWxlY3RGaWVsZC5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgnY2hhbmdlJykpOw0KCQkJCQkJICAgICAgIGJyZWFrOw0KCQkJCQkJICAgIH0NCgkJCQkJCSAgfQ0KCQkJCQkJfQ0KCQkJCQkJPC9zY3JpcHQ+DQoNCgkJCQkJCTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9InRyYW5zbGF0ZS5nb29nbGUuY29tL3RyYW5zbGF0ZV9hL2VsZW1lbnRhMGQ4YTBkOGEwZDguaHRtbD9jYj1nb29nbGVUcmFuc2xhdGVFbGVtZW50SW5pdCI+PC9zY3JpcHQ+DQoJCQkJCQkJDQoNCgkJCQkJCQk8YSBocmVmPSJodHRwczovL3VzZXIuYmVzdHRyYWRlci5saXZlL3JlZ2lzdGVyIiBjbGFzcz0idG9wLXNpZ251cCBmbG9hdC1yaWdodCAiPiBTaWduIHVwIDwvYT4NCgkJCQkJCQk8YSBocmVmPSJodHRwczovL3VzZXIuYmVzdHRyYWRlci5saXZlIiBjbGFzcz0idG9wLWxvZ2luIGZsb2F0LXJpZ2h0IGRpc3BsYXktbm9uZS1tb2JpbGUiPiBMb2dpbiAgPC9hPg0KCQkJCQkJCQ0KCQkJCQkJDQoJCQkJCQkNCgkJCQkJPC9kaXY+DQoJCQkJCTwhLS0gdGhpcyBpcyB0aGUgZW5kIG9mIHRoZSBkaXYgZm9yIHRoZSBvdGhlciBzaWRlICAtLT4NCg0KCQkJCQkNCgkJCQk8L2Rpdj4NCgkJCQkNCgkJCQkgDQoJCQkJDQoJCQk8L2Rpdj4NCgkJPC9kaXY+DQoJCTwhLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gZW5kIG9mIHRoZSBmaXJzdCBuYXYgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tPg0KDQo8c3R5bGU+DQogICAgICAgICAgLnRoYXR3aGF0ew0KICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7DQogICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMCU7DQogICAgICAgICAgICAgICAgICAgIGxlZnQ6IDIwcHg7DQogICAgICAgICAgICAgICAgICAgIGJvdHRvbTogNTBweDsNCiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogOTk5OTk7DQogICAgICAgICAgfQ0KDQogICAgICAgICAgLnRoYXR3aGF0IGltZ3sNCiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwcHg7DQogICAgICAgICAgfQ0KDQo8L3N0eWxlPg0KPGRpdiBjbGFzcz0idGhhdHdoYXQiPg0KICAgICAgICA8YSBocmVmPSJodHRwczovL3dhLm1lLysxICg5NDApIDIwMi05ODAyIiB0YXJnZXQ9Il9ibGFuayI+DQogICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2VzL3d0cC5wbmciPg0KICAgICAgICA8L2E+DQogICAgPC9kaXY+DQogICAgICAgIDwhLS0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLUZpcnN0IHNlY3Rpb24gd2l0aCB0aGUgYW5pbWluYXRpb24gbWFpbi1iZy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAtLT4NCiAgICAgICAgPHNlY3Rpb24+DQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgPCEtLSBTdGFydCBvZiB0aGUgZmlyc3QgbmF2IC0tPg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyLWZsdWlkIGNvbC1mLW5hdiI+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4gDQogICAgICAgICAgICAgICAgICAgICAgICA8IS0tIHRoaXMgaXMgdGhlIGxvZ28gc2VjdGlvbiAgLS0+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMiBjb2wtc20tMTIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0ibmF2YmFyLWJyYW5kIiBocmVmPSJpbmRleC0yLmh0bWwiPiA8aW1nIHNyYz0iaW1hZ2VzL2xvZ28ucG5nIiBjbGFzcz0iYnJhbmQiPjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0ibmF2YmFyLXRvZ2dsZXIiIHR5cGU9ImJ1dHRvbiIgZGF0YS10b2dnbGU9ImNvbGxhcHNlIiBkYXRhLXRhcmdldD0iI25hdmJhclN1cHBvcnRlZENvbnRlbnQiIGFyaWEtY29udHJvbHM9Im5hdmJhclN1cHBvcnRlZENvbnRlbnQiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIiBhcmlhLWxhYmVsPSJUb2dnbGUgbmF2aWdhdGlvbiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2VzL2ljb24vaGFtYnVyZ2VyLWJsay5wbmciPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTYgY29sLXNtLTEyIG5hdiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDxuYXYgY2xhc3M9Im5hdmJhciBuYXZiYXItZXhwYW5kLWxnIG5hdmJhci1saWdodCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlbGVjdCBjbGFzcz0iIGN1c3RvbS1zZWxlY3QtbSIgc3R5bGU9IndpZHRoOjEwMHB4O2hlaWdodDozMHB4OyAgZm9udC1zaXplOiAxMnB4OyIgaWQ9Imxhbmd1YWdlIiBvbmNoYW5nZT0iY2hhbmdlTGFuZ3VhZ2VCeUJ1dHRvbkNsaWNrKCkiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iYWYiPkFmcmlrYW5uczwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0ic3EiPkFsYmFuaWFuPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJhciI+QXJhYmljPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJoeSI+QXJtZW5pYW48L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImV1Ij5CYXNxdWU8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImJuIj5CZW5nYWxpPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJiZyI+QnVsZ2FyaWFuPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJjYSI+Q2F0YWxhbjwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0ia20iPkNhbWJvZGlhbjwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iemgtQ04iPkNoaW5lc2UgKE1hbmRhcmluKTwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iaHIiPkNyb2F0aW9uPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJjcyI+Q3plY2g8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImRhIj5EYW5pc2g8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9Im5sIj5EdXRjaDwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iZW4iIHNlbGVjdGVkPkVuZ2xpc2g8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImV0Ij5Fc3Rvbmlhbjwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iZmoiPkZpamk8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImZpIj5GaW5uaXNoPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJmciI+RnJlbmNoPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJrYSI+R2VvcmdpYW48L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImRlIj5HZXJtYW48L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImVsIj5HcmVlazwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iZ3UiPkd1amFyYXRpPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJoZSI+SGVicmV3PC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJoaSI+SGluZGk8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9Imh1Ij5IdW5nYXJpYW48L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImlzIj5JY2VsYW5kaWM8L29wdGlvbj4gDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJpZCI+SW5kb25lc2lhbjwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iZ2EiPklyaXNoPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJpdCI+SXRhbGlhbjwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iamEiPkphcGFuZXNlPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJqdyI+SmF2YW5lc2U8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImtvIj5Lb3JlYW48L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImxhIj5MYXRpbjwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0ibHYiPkxhdHZpYW48L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9Imx0Ij5MaXRodWFuaWFuPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJtayI+TWFjZWRvbmlhbjwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0ibXMiPk1hbGF5PC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJtbCI+TWFsYXlhbGFtPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJtdCI+TWFsdGVzZTwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0ibWkiPk1hb3JpPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJtciI+TWFyYXRoaTwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0ibW4iPk1vbmdvbGlhbjwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0ibmUiPk5lcGFsaTwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0ibm8iPk5vcndlZ2lhbjwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iZmEiPlBlcnNpYW48L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9InBsIj5Qb2xpc2g8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9InB0Ij5Qb3J0dWd1ZXNlPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJwYSI+UHVuamFiaTwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0icXUiPlF1ZWNodWE8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9InJvIj5Sb21hbmlhbjwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0icnUiPlJ1c3NpYW48L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9InNtIj5TYW1vYW48L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9InNyIj5TZXJiaWFuPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJzayI+U2xvdmFrPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJzbCI+U2xvdmVuaWFuPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJlcyI+U3BhbmlzaDwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0ic3ciPlN3YWhpbGk8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9InN2Ij5Td2VkaXNoIDwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0idGEiPlRhbWlsPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJ0dCI+VGF0YXI8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9InRlIj5UZWx1Z3U8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9InRoIj5UaGFpPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJibyI+VGliZXRhbjwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0idG8iPlRvbmdhPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJ0ciI+VHVya2lzaDwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0idWsiPlVrcmFuaWFuPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJ1ciI+VXJkdTwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0idXoiPlV6YmVrPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJ2aSI+VmlldG5hbWVzZTwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iY3kiPldlbHNoPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJ4aCI+WGhvc2E8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NlbGVjdD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2xsYXBzZSBuYXZiYXItY29sbGFwc2UiIGlkPSJuYXZiYXJTdXBwb3J0ZWRDb250ZW50Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bCBjbGFzcz0ibmF2YmFyLW5hdiBtci1hdXRvIj4NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPSJuYXYtbGluayIgaHJlZj0iaW5kZXgtMi5odG1sIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSE9NRQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+CQ0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJuYXYtaXRlbSBkcm9wZG93biI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9Im5hdi1saW5rIGRyb3Bkb3duLXRvZ2dsZSIgaHJlZj0iIyIgaWQ9Im5hdmJhckRyb3Bkb3duIiByb2xlPSJidXR0b24iIGRhdGEtdG9nZ2xlPSJkcm9wZG93biIgYXJpYS1oYXNwb3B1cD0idHJ1ZSIgYXJpYS1leHBhbmRlZD0iZmFsc2UiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTUFSS0VUUyANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJkcm9wZG93bi1tZW51IGRyb3Bkb3duLW1lbnUtcmlnaHQgYW5pbWF0ZSBzbGlkZUluIiBhcmlhLWxhYmVsbGVkYnk9Im5hdmJhckRyb3Bkb3duIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPSJkcm9wZG93bi1pdGVtIiBocmVmPSJjcnlwdG8uaHRtbCI+IDxpIGNsYXNzPSJmYXMgZmEtYW5nbGUtcmlnaHQgZHJvcC1pY29uLWxlZnQiPjwvaT4gIENSWVBUT1M8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0iZHJvcGRvd24taXRlbSIgaHJlZj0iaW5kaWNlcy5odG1sIj4gPGkgY2xhc3M9ImZhcyBmYS1hbmdsZS1yaWdodCBkcm9wLWljb24tbGVmdCI+PC9pPiAgSU5ESUNJRVM8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0iZHJvcGRvd24taXRlbSIgaHJlZj0iZm9yZXguaHRtbCI+IDxpIGNsYXNzPSJmYXMgZmEtYW5nbGUtcmlnaHQgZHJvcC1pY29uLWxlZnQiPjwvaT4gIEZPUkVYPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgY2xhc3M9ImRyb3Bkb3duLWl0ZW0iIGhyZWY9ImNvbW1vZGl0aWVzLmh0bWwiPiA8aSBjbGFzcz0iZmFzIGZhLWFuZ2xlLXJpZ2h0IGRyb3AtaWNvbi1sZWZ0Ij48L2k+ICBFTkVSR0lFUzwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPSJkcm9wZG93bi1pdGVtIiBocmVmPSJzaGFyZXMuaHRtbCI+IDxpIGNsYXNzPSJmYXMgZmEtYW5nbGUtcmlnaHQgZHJvcC1pY29uLWxlZnQiPjwvaT4gIFNIQVJFUzwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPSJkcm9wZG93bi1pdGVtIiBocmVmPSJvcHRpb25zLmh0bWwiPiA8aSBjbGFzcz0iZmFzIGZhLWFuZ2xlLXJpZ2h0IGRyb3AtaWNvbi1sZWZ0Ij48L2k+ICBPUFRJT048L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0iZHJvcGRvd24taXRlbSIgaHJlZj0iZXRmcy5odG1sIj4gPGkgY2xhc3M9ImZhcyBmYS1hbmdsZS1yaWdodCBkcm9wLWljb24tbGVmdCI+PC9pPiAgRVRGUzwvYT4NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0ibmF2LWxpbmsiIGhyZWY9ImFib3V0Lmh0bWwiPkFCT1VUIFVTPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPgkNCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBjbGFzcz0ibmF2LWxpbmsiIGhyZWY9ImZhcS5odG1sIj5GQVFTPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPSJuYXYtbGluayIgaHJlZj0nbWFpbHRvOnN1cHBvcnRAYmVzdHRyYWRlci5saXZlJz5DT05UQUNUUzwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0ibmF2LWl0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPSJuYXYtbGluayIgaHJlZj0idHJhZGUuaHRtbCI+VFJBREU8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9Im5hdi1pdGVtIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxhIGNsYXNzPSJuYXYtbGluayIgaHJlZj0ic2lnbi1pbi5waHAiPkxPR0lOPC9hPiAtLT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8L25hdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQoNCiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gdGhpcyBpcyB0aGUgb3RoZXIgc2lkZSB0aGF0IGNvbnRhaW5zIHNpZ251cCBhbmQgdGhlIHJlc3QgIC0tPg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8IS0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQoNCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC00IGNvbC1zbS0xMiB0b3AtY29udGFjdC13cmFwIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPHNlbGVjdCBjbGFzcz0iY3VzdG9tLXNlbGVjdCIgc3R5bGU9IndpZHRoOjEwMHB4O2hlaWdodDozMHB4OyAgZm9udC1zaXplOiAxMnB4OyIgaWQ9Imxhbmd1YWdlIiBvbmNoYW5nZT0iY2hhbmdlTGFuZ3VhZ2VCeUJ1dHRvbkNsaWNrKCkiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iYWYiPkFmcmlrYW5uczwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0ic3EiPkFsYmFuaWFuPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJhciI+QXJhYmljPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJoeSI+QXJtZW5pYW48L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImV1Ij5CYXNxdWU8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImJuIj5CZW5nYWxpPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJiZyI+QnVsZ2FyaWFuPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJjYSI+Q2F0YWxhbjwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0ia20iPkNhbWJvZGlhbjwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iemgtQ04iPkNoaW5lc2UgKE1hbmRhcmluKTwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iaHIiPkNyb2F0aW9uPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJjcyI+Q3plY2g8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImRhIj5EYW5pc2g8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9Im5sIj5EdXRjaDwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iZW4iIHNlbGVjdGVkPkVuZ2xpc2g8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImV0Ij5Fc3Rvbmlhbjwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iZmoiPkZpamk8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImZpIj5GaW5uaXNoPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJmciI+RnJlbmNoPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJrYSI+R2VvcmdpYW48L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImRlIj5HZXJtYW48L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImVsIj5HcmVlazwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0iZ3UiPkd1amFyYXRpPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJoZSI+SGVicmV3PC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJoaSI+SGluZGk8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9Imh1Ij5IdW5nYXJpYW48L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImlzIj5JY2VsYW5kaWM8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImlkIj5JbmRvbmVzaWFuPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJnYSI+SXJpc2g8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9Iml0Ij5JdGFsaWFuPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJqYSI+SmFwYW5lc2U8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9Imp3Ij5KYXZhbmVzZTwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0ia28iPktvcmVhbjwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0ibGEiPkxhdGluPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJsdiI+TGF0dmlhbjwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0ibHQiPkxpdGh1YW5pYW48L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9Im1rIj5NYWNlZG9uaWFuPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJtcyI+TWFsYXk8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9Im1sIj5NYWxheWFsYW08L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9Im10Ij5NYWx0ZXNlPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJtaSI+TWFvcmk8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9Im1yIj5NYXJhdGhpPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJtbiI+TW9uZ29saWFuPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJuZSI+TmVwYWxpPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJubyI+Tm9yd2VnaWFuPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJmYSI+UGVyc2lhbjwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0icGwiPlBvbGlzaDwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0icHQiPlBvcnR1Z3Vlc2U8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9InBhIj5QdW5qYWJpPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJxdSI+UXVlY2h1YTwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0icm8iPlJvbWFuaWFuPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJydSI+UnVzc2lhbjwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0ic20iPlNhbW9hbjwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0ic3IiPlNlcmJpYW48L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9InNrIj5TbG92YWs8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9InNsIj5TbG92ZW5pYW48L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImVzIj5TcGFuaXNoPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJzdyI+U3dhaGlsaTwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0ic3YiPlN3ZWRpc2ggPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJ0YSI+VGFtaWw8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9InR0Ij5UYXRhcjwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0idGUiPlRlbHVndTwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT0idGgiPlRoYWk8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9ImJvIj5UaWJldGFuPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJ0byI+VG9uZ2E8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9InRyIj5UdXJraXNoPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJ1ayI+VWtyYW5pYW48L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9InVyIj5VcmR1PC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJ1eiI+VXpiZWs8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9InZpIj5WaWV0bmFtZXNlPC9vcHRpb24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uIHZhbHVlPSJjeSI+V2Vsc2g8L29wdGlvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9InhoIj5YaG9zYTwvb3B0aW9uPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2VsZWN0Pg0KDQogICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgaWQ9Imdvb2dsZV90cmFuc2xhdGVfZWxlbWVudCIgc3R5bGU9ImRpc3BsYXk6bm9uZSI+PC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiBnb29nbGVUcmFuc2xhdGVFbGVtZW50SW5pdCgpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXcgZ29vZ2xlLnRyYW5zbGF0ZS5UcmFuc2xhdGVFbGVtZW50KHtwYWdlTGFuZ3VhZ2U6ICJlbiJ9LCAnZ29vZ2xlX3RyYW5zbGF0ZV9lbGVtZW50Jyk7DQogICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbiBjaGFuZ2VMYW5ndWFnZUJ5QnV0dG9uQ2xpY2soKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGxhbmd1YWdlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxhbmd1YWdlIikudmFsdWU7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHNlbGVjdEZpZWxkID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2dvb2dsZV90cmFuc2xhdGVfZWxlbWVudCBzZWxlY3QiKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IodmFyIGk9MDsgaSA8IHNlbGVjdEZpZWxkLmNoaWxkcmVuLmxlbmd0aDsgaSsrKXsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBvcHRpb24gPSBzZWxlY3RGaWVsZC5jaGlsZHJlbltpXTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGZpbmQgZGVzaXJlZCBsYW5nYXVnZSBhbmQgY2hhbmdlIHRoZSBmb3JtZXIgbGFuZ3VhZ2Ugb2YgdGhlIGhpZGRlbiBzZWxlY3Rpb24tZmllbGQgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZihvcHRpb24udmFsdWU9PWxhbmd1YWdlKXsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0RmllbGQuc2VsZWN0ZWRJbmRleCA9IGk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRyaWdnZXIgY2hhbmdlIGV2ZW50IGFmdGVyd2FyZHMgdG8gbWFrZSBnb29nbGUtbGliIHRyYW5zbGF0ZSB0aGlzIHNpZGUNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0RmllbGQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2NoYW5nZScpKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2NyaXB0Pg0KDQogICAgICAgICAgICAgICAgICAgICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9InRyYW5zbGF0ZS5nb29nbGUuY29tL3RyYW5zbGF0ZV9hL2VsZW1lbnRhMGQ4YTBkOGEwZDguaHRtbD9jYj1nb29nbGVUcmFuc2xhdGVFbGVtZW50SW5pdCI+PC9zY3JpcHQ+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgDQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL3VzZXIuYmVzdHRyYWRlci5saXZlL3JlZ2lzdGVyIiBjbGFzcz0idG9wLXNpZ251cCBmbG9hdC1yaWdodCAiPiBTaWduIHVwIDwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL3VzZXIuYmVzdHRyYWRlci5saXZlIiBjbGFzcz0idG9wLXNpZ251cCBmbG9hdC1yaWdodCAiPiBMb2dpbiAgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gdGhpcyBpcyB0aGUgZW5kIG9mIHRoZSBkaXYgZm9yIHRoZSBvdGhlciBzaWRlICAtLT4NCiAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PgkJIA0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPCEtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBlbmQgb2YgdGhlIGZpcnN0IG5hdiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0+DQoNCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNsZWFyZml4Ij48L2Rpdj4NCg0KICAgICAgICAgICAgICAgICAgPCEtLSB0aGlzIGlzIHRoZSBkZXNpZ24gb2YgdGhlIHNsaWRlciAgLS0+DQogICAgICAgICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0ic2luZ2xlLWl0ZW0iPg0KDQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNsaWRlci1pbWcxIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC02IGNvbC1zbS0xMiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgxIGNsYXNzPSJzbGlkZS1oMSIgZGF0YS1hb3M9ImZhZGUtdXAiPiANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIHN0eWxlPSJmb250LXdlaWdodDogNzAwIj4gRWFybiB1cCB0byA8YnIgLz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkMTAsMDAwKyBwZXIgbW9udGggZnJvbSByZWZlcnJpbmcgPC9zcGFuPiANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2gxPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJkaXNwbGF5LW5vbmUtbW9iaWxlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFdlIG9mZmVyIDEwJSBvbiB0aGUgZmlyc3QgaW52ZXN0bWVudCBmb3IgZXZlcnkgdXNlciB5b3UgcmVmZXIgdG8gaW52ZXN0IG9uIG91ciBwbGF0Zm9ybS4gU2lnbiB1cCB0byBnZXQgeW91ciByZWZlcnJhbCBsaW5rLg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9InRyYWRlLmh0bWwiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY3JlYXRlLWFjYyBjLXNpZ24tdXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2VzL2ljb24vYi1jaGFydC5wbmciIGNsYXNzPSJmbG9hdC1sZWZ0Ij4gPHA+IFZpZXcgTGl2ZSBUcmFkZSAgPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InAtMjAiPiANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnIgLz4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJsZWFybi1idGMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJwbGF5LWJ0biBmbG9hdC1sZWZ0IiB0eXBlPSJidXR0b24iIGRhdGEtdG9nZ2xlPSJtb2RhbCIgZGF0YS10YXJnZXQ9IiNleGFtcGxlTW9kYWxDZW50ZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJpbWFnZXMvaWNvbi9wbGF5LWJ1dHRvbi5zdmciID4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPiBDbGljayBoZXJlIHRvIGxlYXJuIGFib3V0IG1pbmluZyA8L3NwYW4+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPT09PT1lbmQgdGhlIGxlZnQgc2VjdGlvbiBvZiB0aGUgZmlyc3Qgc2xpZGVyID09PT09IC0tPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gc3RhcnQgb2YgdGhlIHRvb2wgd2lkZ2V0IGFyZWEgZm9yIHRoaXMgc2VjdGlvbiAgLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC02IGNvbC1zbS0xMiBuYXYtYmFjayI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIFRyYWRpbmdWaWV3IFdpZGdldCBCRUdJTiAtLT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBlbmZkIC0tPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBUcmFkaW5nVmlldyBXaWRnZXQgQkVHSU4gLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InRyYWRpbmd2aWV3LXdpZGdldC1jb250YWluZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0cmFkaW5ndmlldy13aWRnZXQtY29udGFpbmVyX193aWRnZXQiPjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0cmFkaW5ndmlldy13aWRnZXQtY29weXJpZ2h0Ij48YSBocmVmPSJodHRwczovL3d3dy50cmFkaW5ndmlldy5jb20vIiByZWw9Im5vb3BlbmVyIiB0YXJnZXQ9Il9ibGFuayI+PHNwYW4gY2xhc3M9ImJsdWUtdGV4dCI+TWFya2V0IERhdGE8L3NwYW4+PC9hPiBieSBUcmFkaW5nVmlldw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly9zMy50cmFkaW5ndmlldy5jb20vZXh0ZXJuYWwtZW1iZWRkaW5nL2VtYmVkLXdpZGdldC1tYXJrZXQtb3ZlcnZpZXcuaHRtbCIgYXN5bmM+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjb2xvclRoZW1lIjogImRhcmsiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkYXRlUmFuZ2UiOiAiMTJtIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2hvd0NoYXJ0IjogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibG9jYWxlIjogImVuIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFyZ2VDaGFydFVybCI6ICIiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpc1RyYW5zcGFyZW50IjogdHJ1ZSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAid2lkdGgiOiAiMTAwJSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImhlaWdodCI6ICI1MDAiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwbG90TGluZUNvbG9yR3Jvd2luZyI6ICJyZ2JhKDI1LCAxMTgsIDIxMCwgMSkiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJwbG90TGluZUNvbG9yRmFsbGluZyI6ICJyZ2JhKDI1LCAxMTgsIDIxMCwgMSkiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJncmlkTGluZUNvbG9yIjogInJnYmEoNDIsIDQ2LCA1NywgMSkiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzY2FsZUZvbnRDb2xvciI6ICJyZ2JhKDEyMCwgMTIzLCAxMzQsIDEpIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYmVsb3dMaW5lRmlsbENvbG9yR3Jvd2luZyI6ICJyZ2JhKDMzLCAxNTAsIDI0MywgMC4xMikiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJiZWxvd0xpbmVGaWxsQ29sb3JGYWxsaW5nIjogInJnYmEoMzMsIDE1MCwgMjQzLCAwLjEyKSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInN5bWJvbEFjdGl2ZUNvbG9yIjogInJnYmEoMzMsIDE1MCwgMjQzLCAwLjEyKSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRhYnMiOiBbDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0aXRsZSI6ICJJbmRpY2VzIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInN5bWJvbHMiOiBbDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiOiAiT0FOREE6U1BYNTAwVVNEIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkIjogIlMmUCA1MDAiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyI6ICJPQU5EQTpOQVMxMDBVU0QiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImQiOiAiTmFzZGFxIDEwMCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIjogIkZPUkVYQ09NOkRKSSIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZCI6ICJEb3cgMzAiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyI6ICJJTkRFWDpOS1kiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImQiOiAiTmlra2VpIDIyNSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIjogIklOREVYOkRFVTMwIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkIjogIkRBWCBJbmRleCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIjogIk9BTkRBOlVLMTAwR0JQIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkIjogIkZUU0UgMTAwIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm9yaWdpbmFsVGl0bGUiOiAiSW5kaWNlcyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0aXRsZSI6ICJDb21tb2RpdGllcyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzeW1ib2xzIjogWw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIjogIkNNRV9NSU5JOkVTMSEiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImQiOiAiRS1NaW5pIFMmUCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIjogIkNNRTo2RTEhIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkIjogIkV1cm8iDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyI6ICJDT01FWDpHQzEhIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkIjogIkdvbGQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyI6ICJOWU1FWDpDTDEhIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkIjogIkNydWRlIE9pbCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIjogIk5ZTUVYOk5HMSEiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImQiOiAiTmF0dXJhbCBHYXMiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyI6ICJDQk9UOlpDMSEiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImQiOiAiQ29ybiINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJvcmlnaW5hbFRpdGxlIjogIkNvbW1vZGl0aWVzIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRpdGxlIjogIkJvbmRzIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInN5bWJvbHMiOiBbDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiOiAiQ01FOkdFMSEiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImQiOiAiRXVyb2RvbGxhciINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIjogIkNCT1Q6WkIxISIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZCI6ICJULUJvbmQiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicyI6ICJDQk9UOlVCMSEiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImQiOiAiVWx0cmEgVC1Cb25kIg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInMiOiAiRVVSRVg6RkdCTDEhIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkIjogIkV1cm8gQnVuZCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIjogIkVVUkVYOkZCVFAxISIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZCI6ICJFdXJvIEJUUCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIjogIkVVUkVYOkZHQk0xISIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZCI6ICJFdXJvIEJPQkwiDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3JpZ2luYWxUaXRsZSI6ICJCb25kcyINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0aXRsZSI6ICJGb3JleCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzeW1ib2xzIjogWw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIjogIkZYOkVVUlVTRCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIjogIkZYOkdCUFVTRCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIjogIkZYOlVTREpQWSINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIjogIkZYOlVTRENIRiINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIjogIkZYOkFVRFVTRCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzIjogIkZYOlVTRENBRCINCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJvcmlnaW5hbFRpdGxlIjogIkZvcmV4Ig0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NjcmlwdD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gVHJhZGluZ1ZpZXcgV2lkZ2V0IEVORCAtLT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gZW5kIHRoZSB3aWRnZXQgdG9vbCBhcmVhICAtLT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPCEtLSB0aGlzIGlzIHRoZSBlbmQgb2YgdGhlIHNsaWRlciBvZiBlYWNoIHNlY3Rpb24gIC0tPg0KDQoNCiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ic2xpZGVyLWltZzIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC01IGNvbC1zbS0xMiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgxIGNsYXNzPSJzbGlkZS1oMSI+IA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gc3R5bGU9ImZvbnQtd2VpZ2h0OiA3MDAiPiAgICAgU3RhcnQgVHJhZGluZyBub3chDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9oMT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0iIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPdXIgTGl2ZSBNYW5hZ2VycyB3aWxsIGhlbHAgeW91IHRvIHN1Y2NlZWQNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icC0yMCI+IDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIGhyZWY9Imh0dHBzOi8vdXNlci5iZXN0dHJhZGVyLmxpdmUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY3JlYXRlLWFjYyBjLXNpZ24tdXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2VzL2ljb24vYi1jaGFydC5wbmciIGNsYXNzPSJmbG9hdC1sZWZ0Ij4gPHA+IExvZ2luICA8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA9PT09PWVuZCB0aGUgbGVmdCBzZWN0aW9uIG9mIHRoZSBmaXJzdCBzbGlkZXIgPT09PT0gLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIHN0YXJ0IG9mIHRoZSB0b29sIHdpZGdldCBhcmVhIGZvciB0aGlzIHNlY3Rpb24gIC0tPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC03IGNvbC1zbS0xMiAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9ImltYWdlcy9zbGlkZXIvc2xpZGVyLnBuZyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tID09PT09PT09PT09RW5kIFJvdyBoZXJlID09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgPCEtLSB0aGlzIGlzIHRoZSBlbmQgb2YgdGhlIHNsaWRlciBvZiBlYWNoIHNlY3Rpb24gIC0tPg0KDQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InNsaWRlci1pbWczIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC01IGNvbC1zbS0xMiI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGgxIGNsYXNzPSJzbGlkZS1oMSI+IEpPSU4gVEhPVVNBTkRTIFdITyBIQVZFIEFMUkVBRFkgPGJyIC8+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBzdHlsZT0iZm9udC13ZWlnaHQ6IDYwMCI+IFRSQURFRCBXSVRIICBiZXN0dHJhZGVycyAgICA8L3NwYW4+IA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvaDE+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJkaXNwbGF5LW5vbmUtbW9iaWxlIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZpbmQgeW91ciB0cmFkaW5nIG9wcG9ydHVuaXR5IGluIDMgZWFzeSBzdGVwcw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3MgPSAic2xpZGVyLWxpIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4gPGkgY2xhc3M9ImZhcyBmYS1jaGVjayIgc3R5bGU9ImNvbG9yOiAjNTJhZmVlIj4gPC9pPiAgJm5ic3AgIE9wZW4gQWNjb3VudDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+ICA8aSBjbGFzcz0iZmFzIGZhLWNoZWNrIiBzdHlsZT0iY29sb3I6ICM1MmFmZWUiPiA8L2k+ICAmbmJzcCBEZXBvc2l0IDwvbGk+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGk+IDxpIGNsYXNzPSJmYXMgZmEtY2hlY2siIHN0eWxlPSJjb2xvcjogIzUyYWZlZSI+IDwvaT4gICZuYnNwIFN0YXJ0IFRyYWRpbmcgPC9saT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InAtMjAiPiA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSJodHRwczovL3VzZXIuYmVzdHRyYWRlci5saXZlL3JlZ2lzdGVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNyZWF0ZS1hY2MgbHQtYmx1ZS1iZyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJpbWFnZXMvaWNvbi9kaWFtb25kLnBuZyIgY2xhc3M9ImZsb2F0LWxlZnQiPiA8cD4gU3RhcnQgRWFybmluZyAgPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPT09PT1lbmQgdGhlIGxlZnQgc2VjdGlvbiBvZiB0aGUgZmlyc3Qgc2xpZGVyID09PT09IC0tPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBzdGFydCBvZiB0aGUgdG9vbCB3aWRnZXQgYXJlYSBmb3IgdGhpcyBzZWN0aW9uICAtLT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtNyBjb2wtc20tMTIgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0cmFkaW5ndmlldy13aWRnZXQtY29udGFpbmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idHJhZGluZ3ZpZXctd2lkZ2V0LWNvbnRhaW5lcl9fd2lkZ2V0Ij48L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly9zMy50cmFkaW5ndmlldy5jb20vZXh0ZXJuYWwtZW1iZWRkaW5nL2VtYmVkLXdpZGdldC1zY3JlZW5lci5qcyIgYXN5bmM+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIndpZHRoIjogIjEwMCUiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaGVpZ2h0IjogIjYwMCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkZWZhdWx0Q29sdW1uIjogIm92ZXJ2aWV3IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInNjcmVlbmVyX3R5cGUiOiAiY3J5cHRvX21rdCIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJkaXNwbGF5Q3VycmVuY3kiOiAiQlRDIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImNvbG9yVGhlbWUiOiAiZGFyayIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2NhbGUiOiAiZW4iLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXNUcmFuc3BhcmVudCI6IGZhbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc2NyaXB0Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSBUcmFkaW5nVmlldyBXaWRnZXQgRU5EIC0tPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tID09PT09PT09PT09RW5kIFJvdyBoZXJlID09PT09PT09PT09PT09PT09PT09PT09IC0tPiAgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICA8IS0tIHRoaXMgaXMgdGhlIGVuZCBvZiB0aGUgc2xpZGVyIG9mIGVhY2ggc2VjdGlvbiAgLS0+DQoNCiAgICAgICAgPC9zZWN0aW9uPg0KDQogIDwvc2VjdGlvbj4NCiAgICA8IS0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1lbmQgdGhlIHNlY3Rpb24gc2xpZGVyID09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQogICAgIA0KDQoNCiAgICA8IS0tIHRoZSBmaXJzdCBjb2x1bW4gc3RhcnRzIGhlcmUgIC0tPg0KICAgIDxzZWN0aW9uIGNsYXNzPSJjb250YWluZXIiPg0KDQoNCiAgICA8IS0tID09PT09PT09PT09PT09PT09PT09PT09PT09TW9kYWwgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tLT4NCiAgICA8ZGl2IGNsYXNzPSJtb2RhbCBmYWRlIiBpZD0iZXhhbXBsZU1vZGFsQ2VudGVyIiB0YWJpbmRleD0iLTEiIHJvbGU9ImRpYWxvZyIgYXJpYS1sYWJlbGxlZGJ5PSJleGFtcGxlTW9kYWxDZW50ZXJUaXRsZSIgYXJpYS1oaWRkZW49InRydWUiPg0KICAgICAgPGRpdiBjbGFzcz0ibW9kYWwtZGlhbG9nIG1vZGFsLWRpYWxvZy1jZW50ZXJlZCIgcm9sZT0iZG9jdW1lbnQiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJtb2RhbC1jb250ZW50Ij4NCiAgICAgICAgICA8ZGl2IGNsYXNzPSJtb2RhbC1oZWFkZXIiPg0KICAgICAgICAgICAgPGg1IGNsYXNzPSJtb2RhbC10aXRsZSIgaWQ9ImV4YW1wbGVNb2RhbExvbmdUaXRsZSI+IExlYXJuIEFib3V0IEZvcmV4PC9oNT4NCiAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iY2xvc2UiIGRhdGEtZGlzbWlzcz0ibW9kYWwiIGFyaWEtbGFiZWw9IkNsb3NlIj4NCiAgICAgICAgICAgICAgPHNwYW4gYXJpYS1oaWRkZW49InRydWUiPiZ0aW1lczs8L3NwYW4+DQogICAgICAgICAgICA8L2J1dHRvbj4NCiAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICA8ZGl2IGNsYXNzPSJtb2RhbC1ib2R5Ij4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImRlc2t0b3Atd3JhcHBlciI+DQogICAgICAgICAgICAgIDxpZnJhbWUgc3JjPSJodHRwczovL3d3dy55b3V0dWJlLmNvbS9lbWJlZC9HYzJlbjNuSHhBNCIgYWxsb3c9ImF1dG9wbGF5OyBlbmNyeXB0ZWQtbWVkaWEiIGFsbG93ZnVsbHNjcmVlbj0iIiB3aWR0aD0iNTYwIiBoZWlnaHQ9IjMxNSIgZnJhbWVib3JkZXI9IjAiPjwvaWZyYW1lPg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgPC9kaXY+DQogICAgICAgIA0KICAgICAgICA8L2Rpdj4NCiAgICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KICAgICA8IS0tID09PT09PT09PT09PT09PT09PT09PT09PT09TW9kYWwgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tLT4NCiAgICAgICA8IS0tIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iYW9zL3N0eWxlcy5jc3MiIC8+IC0tPg0KICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9ImFvcy9kaXN0L2Fvcy5jc3MiIC8+DQogICAgICANCiAgICA8L3NlY3Rpb24+IDwhLS0gZW5kIHRoZSBmaXJzdCBjb2x1bm0gc2VjdGlvbiBvZiB0aGUgd3JhcHBlciAtLT4NCg0KICAgIDwhLS0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PXRoaXMgaXMgdGhlIHN0ZXAgaW4gcmVnaXN0ZXJhdGlvbiBzZWN0aW9uID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8c2VjdGlvbiBjbGFzcyA9ICJjb250YWluZXIiPiANCiAgICAgIDxoMyBjbGFzcyA9ICJ0ZXh0LWNlbnRlciIgZGF0YS1hb3M9ImZhZGUtcmlnaHQiPiBIb3cgaXQgd29ya3MgPC9oMz4NCiAgICAgIDxiciAvPg0KIA0KICAgICAgPGRpdiBjbGFzcyA9ICJjb250YWluZXIgaG93LWl0LXdvcmsiIGRhdGEtYW9zPSJmYWRlLXVwIj4NCg0KICAgICAgICA8ZGl2IGNsYXNzID0gInJvdyI+DQoNCiAgICAgICAgICAgIDxkaXYgY2xhc3MgPSJjb2wtbWQtNCBjb2wtc20tMTIgaG93LWl0LXdvcmstaW5uZXIiPg0KICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9J3RleHQtY2VudGVyJz4NCiAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJpbWFnZXMvc3RlcDEucG5nIiBhbHQ9IiIgY2xhc3M9J2ltZy1mbHVpZCc+DQogICAgICAgICAgICAgICAgPGg1PiBEZXBvc2l0PC9oNT4NCiAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8cCBjbGFzcyA9ICJsaXRlLWFzaCI+DQogICAgICAgICAgICAgICAgT3BlbiByZWFsIGFjY291bnQgYW5kIGFkZCBmdW5kcy4gV2Ugd29yayB3aXRoIG1vcmUgdGhhbiAyMCBwYXltZW50IHN5c3RlbXMuDQogICAgICAgICAgICAgICAgPC9wPg0KDQogICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcyA9ImNvbC1tZC00IGNvbC1zbS0xMiBob3ctaXQtd29yay1pbm5lciI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ndGV4dC1jZW50ZXInPg0KICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2VzL3N0ZXAyLnBuZyIgYWx0PSIiIGNsYXNzPSdpbWctZmx1aWQnPg0KICAgICAgICAgICAgICAgIDxoNT4gVHJhZGU8L2g1Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDxwIGNsYXNzID0gImxpdGUtYXNoIj4NCiAgICAgICAgICAgICAgICAgICAgVHJhZGUgYW55IG9mIDEwMCBhc3NldHMgYW5kIHN0b2Nrcy4gVXNlIHRlY2huaWNhbCBhbmFseXNpcyBhbmQgdHJhZGUgdGhlIG5ld3MNCiAgICAgICAgICAgICAgICA8L3A+DQoNCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICA8ZGl2IGNsYXNzID0iY29sLW1kLTQgY29sLXNtLTEyIGhvdy1pdC13b3JrLWlubmVyIj4NCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSd0ZXh0LWNlbnRlcic+DQogICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2VzL3NlcDMucG5nIiBhbHQ9IiIgY2xhc3M9J2ltZy1mbHVpZCc+DQogICAgICAgICAgICAgICAgPGg1PiAgV2l0aGRyYXc8L2g1Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDxwIGNsYXNzID0gImxpdGUtYXNoIj4NCiAgICAgICAgICAgICAgICBHZXQgZnVuZHMgZWFzaWx5IHRvIHlvdXIgYmFuayBjYXJkIG9yIGUtd2FsbGV0LiBXZSB0YWtlIG5vIGNvbW1pc3Npb24uDQogICAgICAgICAgICAgICAgPC9wPg0KDQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIA0KICAgICAgICA8L2Rpdj4NCg0KICAgICAgPC9kaXY+DQoNCiAgICA8L3NlY3Rpb24+DQoNCiAgICA8IS0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1FTkRTIEhFUkUgdGhpcyBpcyB0aGUgc3RlcCBpbiByZWdpc3RlcmF0aW9uIHNlY3Rpb24gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KDQo8IS0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PWZlYXR1cmVzIHNlY3Rpb24gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCjxzZWN0aW9uIGNsYXNzID0gImNvbnRhaW5lciIgZGF0YS1hb3M9ImZhZGUtdXAiPiANCiAgICA8aDE+IA0KICAgICAgPHNwYW4+DQogICAgICAgIDxpbWcgc3JjID0gImltYWdlcy9pY29uL2ZlYXR1cmVzLnN2ZyI+DQogICAgICA8L3NwYW4+DQogICAgICBGZWF0dXJlcw0KICAgIDwvaDE+DQoNCiAgICA8ZGl2IGNsYXNzID0gInJvdyI+DQogICAgICA8ZGl2IGNsYXNzID0gImNvbC1tZC02IGNvbC1zbS0xMiI+IA0KICAgICAgIDxwIGNsYXNzID0gImxpdGUtYXNoIj4gDQogICAgICAgR3VhcmFudGVlZCB3aXRoZHJhd2FscyBwcm9jZXNzaW5nIHdpdGhpbiAxIGhvdXINClBvc3NpYmlsaXR5IHRvIHRyYWRlIG92ZXIgd2Vla2VuZHMNCldpZGUgcmFuZ2Ugb2YgZnVuZGluZyBhbmQgd2l0aGRyYXdhbHMgbWV0aG9kcw0KMTAwJSBzZWN1cmVkIHRyYWRpbmcgd2l0aCB0aGUgZGF0YSBwcm90ZWN0aW9uDQogICAgICAgICAgdHJhZGUgcHJvIGdsb2JhbCBpbnZlc3RtZW50ICAgIGN1c3RvbWVyIHNlcnZpY2UgaXMgYXZhaWxhYmxlIDI0LzcuIFdlIGFyZSBjb250aW51b3VzbHkgYWRkaW5nIG5ldyBmaW5hbmNpYWwgaW5zdHJ1bWVudHMuIA0KICAgICAgIDwvcD4NCiAgICAgIDwvZGl2Pg0KICAgICAgPCEtLSBlbmQgY29sdW1uIGhlcmUgIC0tPg0KDQogICAgICA8ZGl2IGNsYXNzID0gImNvbC1tZC02IGNvbC1zbS0xMiI+IA0KICAgICAgICA8dWwgY2xhc3MgPSAibGl0ZS1hc2ggZmVhdHVyZXMtbGlzdCI+DQogICAgICAgICAgPGxpPiBUZWNobmljYWwgYW5hbHlzaXMgdG9vbHM6IDQgY2hhcnQgdHlwZXMsIDggaW5kaWNhdG9ycywgdHJlbmQgbGluZXMgIDwvbGk+DQogICAgICAgICAgPGxpPiBTb2NpYWwgdHJhZGluZzogd2F0Y2ggZGVhbHMgYWNyb3NzIHRoZSBnbG9iZSBvciB0cmFkZSB3aXRoIHlvdXIgZnJpZW5kcyAgPC9saT4NCiAgICAgICAgICA8bGk+IE92ZXIgMTAwIGFzc2V0cyBpbmNsdWRpbmcgcG9wdWxhciBzdG9ja3MgIDwvbGk+DQogICAgICAgICAgDQogICAgICAgIDwvdWw+DQogICAgICANCiAgICAgIDwvZGl2Pg0KICAgICAgPCEtLSBlbmQgY29sdW1uIGhlcmUgIC0tPg0KICAgIDwvZGl2Pg0KICAgIDwhLS0gZW5kIHJvdyBkaXYgaGVyZSAgLS0+DQoNCjwvc2VjdGlvbj4NCg0KDQo8IS0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSBFTkQgZmVhdHVyZXMgc2VjdGlvbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQo8IS0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gY2FyZCBmZWF0dXJlcyBzZWN0aW9uID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQo8c2VjdGlvbiBjbGFzcyA9ICJjYXJkLWxheWVyIj4NCg0KPCEtLSBpbWFnZXMvZmVhdHVyZXMtMS5wbmcgLS0+DQogIA0KICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lci1mbHVpZCI+DQogICAgICA8ZGl2IGNsYXNzPSJyb3cganVzdGlmeS1jb250ZW50LWNlbnRlciI+DQogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTciPg0KICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3MgPSAiIiBkYXRhLWFvcz0iZmFkZS11cCI+ICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9ImltYWdlcy9tb25pazMucG5nIiBhbHQ9IiIgY2xhc3M9JyBpbWctZmx1aWQnPg0KICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgPC9kaXY+DQogICAgPC9kaXY+DQogIDwhLS0gPC9kaXY+IC0tPg0KICA8IS0tIGVuZCByb3cgaGVyZSAgLS0+DQo8L3NlY3Rpb24+DQoNCjwhLS0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PUVORCAgY2FyZCBmZWF0dXJlcyBzZWN0aW9uID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8c2VjdGlvbiBjbGFzcz0iY29udGFpbmVyIiA+DQogICAgICA8ZGl2IGNsYXNzPSJyb3ciPg0KICAgICAgICANCiAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTYgY29sLXNtLTEyIiBkYXRhLWFvcz0iZmFkZS1yaWdodCI+IA0KICAgICAgICAgIDxoMT4gVHJhZGUgQ3J5cHRvY3VycmVuY2llcywgUyZQIDUwMCwgR29sZCwgRVVSVVNEIGFuZCA8YnIgLz4NCiAgICAgICAgICAgIDMwKyBhc3NldHMNCiAgICAgICAgICA8L2gxPg0KDQogICAgICAgICAgPHA+IA0KICAgICAgICAgICAgR2V0IGltbWVkaWF0ZSBhY2Nlc3MgdG8gY3J5cHRvY3VycmVuY2llcywgc3RvY2sgaW5kaWNlcywgY29tbW9kaXRpZXMgYW5kIGZvcmV4IHdpdGggYSBzaW5nbGUgRm9yZXgtYmFzZWQgcGxhdGZvcm0NCiAgICAgICAgICA8L3A+DQoNCiAgICAgICAgICA8YSBocmVmPSJodHRwczovL3VzZXIuYmVzdHRyYWRlci5saXZlL3JlZ2lzdGVyIj4NCiAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5Ij5PcGVuIEFjY291bnQgRm9yIEZyZWUgPC9idXR0b24+IA0KICAgICAgICAgIDwvYT4NCiAgICAgICAgICA8YnIgLz4NCiAgICAgICANCg0KICAgICAgICAgIA0KDQogICAgICAgIDwvZGl2PiA8IS0tIGVuZCBjb2wgLS0+DQoNCiAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTYgY29sLXNtLTEyIHRyYWRlLWluc3RyIHRhYmxlLXJlc3BvbnNpdmUiIGRhdGEtYW9zPSJmYWRlLWxlZnQiPg0KICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGFibGUgaW4tdGFibGUgbGl0ZS1hc2giPg0KDQogICAgICAgICAgICA8dGhlYWQ+DQogICAgICAgICAgICAgIDx0cj4NCiAgICAgICAgICAgICAgICA8dGggc2NvcGU9ImNvbCI+SW5zdHJ1bWVudDwvdGg+DQogICAgICAgICAgICAgICAgPHRoIHNjb3BlPSJjb2wiPkxldmVyYWdlPC90aD4NCiAgICAgICAgICAgICAgICA8dGggc2NvcGU9ImNvbCI+SW5zdHJ1bWVudDwvdGg+DQogICAgICAgICAgICAgICAgPHRoIHNjb3BlPSJjb2wiPkxldmVyYWdlPC90aD4NCiAgICAgICAgICAgICAgPC90cj4NCiAgICAgICAgICAgIDwvdGhlYWQ+DQoNCiAgICAgICAgICAgIDx0Ym9keT4NCg0KICAgICAgICAgICAgICA8dHIgY2xhc3M9ImFzaC1iZyI+DQoNCiAgICAgICAgICAgICAgICA8dGQ+IDxpbWcgc3JjPSJpbWFnZXMvaWNvbi9pbnN0cnVtZW50cy9idGMuc3ZnIiBhbHQ9IkJpdGNvaW4iIGNsYXNzPSJtLTQtbmVnIj4gPHNwYW4+IEJpdGNvaW4gPC9zcGFuPiA8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZD4xMDBYPC90ZD4NCiAgICAgICAgICAgICAgICA8dGQ+IDxpbWcgc3JjPSJpbWFnZXMvaWNvbi9pbnN0cnVtZW50cy9idGMuc3ZnIiBhbHQ9ImZ4IiBjbGFzcz0ibS00LW5lZyI+ICBFVVJVU0QgPC90ZD4NCiAgICAgICAgICAgICAgICA8dGQ+IDEwMDBYIDwvdGQ+DQoNCiAgICAgICAgICAgICAgPC90cj4NCg0KICAgICAgICAgICAgICA8dHIgY2xhc3M9ImxpdGUtYXNoLWJnIj4NCiAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICA8dGQ+IDxpbWcgc3JjPSJpbWFnZXMvaWNvbi9pbnN0cnVtZW50cy9ldGguc3ZnIiBhbHQ9IkV0aGVyZXVtICIgY2xhc3M9Im0tNC1uZWciPiA8c3Bhbj4gRXRoZXJldW08L3NwYW4+IDwvdGQ+DQogICAgICAgICAgICAgICAgPHRkPjEwMFg8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZD4gPGltZyBzcmM9ImltYWdlcy9pY29uL2luc3RydW1lbnRzL2dyYXBoLnN2ZyIgYWx0PSJTJlAgNTAwIiBjbGFzcz0ibS00LW5lZyI+ICBTJlAgNTAwIDwvdGQ+DQogICAgICAgICAgICAgICAgPHRkPiAxMDBYIDwvdGQ+DQoNCiAgICAgICAgICAgICAgPC90cj4NCg0KICAgICAgICAgICAgICA8dHIgY2xhc3M9ImFzaC1iZyI+DQoNCiAgICAgICAgICAgICAgICA8dGQ+IDxpbWcgc3JjPSJpbWFnZXMvaWNvbi9pbnN0cnVtZW50cy9sdGMuc3ZnIiBhbHQ9IkxpdGVjb2luIiBjbGFzcz0ibS00LW5lZyI+IDxzcGFuPiBMaXRlY29pbiA8L3NwYW4+IDwvdGQ+DQogICAgICAgICAgICAgICAgPHRkPjEwMFg8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZD4gPGltZyBzcmM9ImltYWdlcy9pY29uL2luc3RydW1lbnRzL2dvbGQuc3ZnIiBhbHQ9IkdPTEQiIGNsYXNzPSJtLTQtbmVnIj4gIEdPTEQgPC90ZD4NCiAgICAgICAgICAgICAgICA8dGQ+IDUwMDBYIDwvdGQ+DQoNCiAgICAgICAgICAgICAgPC90cj4NCg0KICAgICAgICAgICAgICAgPHRyIGNsYXNzPSJsaXRlLWFzaC1iZyI+DQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPHRkPiA8aW1nIHNyYz0iaW1hZ2VzL2ljb24vaW5zdHJ1bWVudHMvcmlwcGxlLnN2ZyIgYWx0PSJSaXBwbGUgIiBjbGFzcz0ibS00LW5lZyI+IDxzcGFuPiBSaXBwbGU8L3NwYW4+IDwvdGQ+DQogICAgICAgICAgICAgICAgPHRkPjEwMFg8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZD4gPGltZyBzcmM9ImltYWdlcy9pY29uL2luc3RydW1lbnRzL29pbC5zdmciIGFsdD0iQ1JVREUgT0lMIiBjbGFzcz0ibS00LW5lZyI+ICBDUlVERSBPSUwgPC90ZD4NCiAgICAgICAgICAgICAgICA8dGQ+IDEwMFggPC90ZD4NCg0KICAgICAgICAgICAgICAgICA8dHIgY2xhc3M9ImFzaC1iZyI+DQoNCiAgICAgICAgICAgICAgICA8dGQ+IDxpbWcgc3JjPSJpbWFnZXMvaWNvbi9pbnN0cnVtZW50cy9sdGMuc3ZnIiBhbHQ9IkVPUyIgY2xhc3M9Im0tNC1uZWciPiA8c3Bhbj4gRU9TIDwvc3Bhbj4gPC90ZD4NCiAgICAgICAgICAgICAgICA8dGQ+MTAwWDwvdGQ+DQogICAgICAgICAgICAgICAgPHRkPiA8aW1nIHNyYz0iaW1hZ2VzL2ljb24vaW5zdHJ1bWVudHMvZ3JhcGguc3ZnIiBhbHQ9IkpBUEFOIiBjbGFzcz0ibS00LW5lZyI+ICBKQVBBTiA8L3RkPg0KICAgICAgICAgICAgICAgIDx0ZD4gNTAwMFggPC90ZD4NCg0KICAgICAgICAgICAgICA8L3RyPg0KDQogICAgICAgICAgICAgIDwvdHI+DQoNCiAgICAgICAgICAgIDwvdGJvZHk+DQogICAgICAgICAgPC90YWJsZT4NCg0KICAgICAgICAgIDxhIGhyZWY9InRyYWRlLmh0bWwiIGNsYXNzPSJ0ZXh0LWNlbnRlciBsaXRlLWFzaCI+IFNlZSBhbGwgYXNzZXRzIDwvYT4NCiAgICAgICAgICANCiAgICAgICAgPC9kaXY+DQogICAgICA8L2Rpdj4gPCEtLSBlbmQgcm93IC0tPiAgICAgIA0KICAgIDwvc2VjdGlvbj4NCiAgICA8IS0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PUVuZCBvZiB0aGUgZmlyc3QgU0VjdGlvbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQogICAgPGRpdiBjbGFzcz0icC0yMCI+IDwvZGl2PiANCiAgICA8IS0tIHRvIGNsZWFyIHNwYWNlIC0tPg0KDQoNCg0KDQogICAgPCEtLSBhY2NvdW50IHNldCB1cCAgLS0+DQoNCg0KICAgIDxkaXYgY2xhc3M9Im0tMjAiICBkYXRhLWFvcz0iZmFkZS11cCI+DQogICAgICA8Y2VudGVyPg0KICAgICAgICAgICA8YSBocmVmPSJodHRwczovL3VzZXIuYmVzdHRyYWRlci5saXZlL3JlZ2lzdGVyIj4NCiAgICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5Ij5TZXR1cCBZb3VyIFRyYWRpbmcgQWNjb3VudCA8L2J1dHRvbj4gDQogICAgICAgICAgPC9hPg0KICAgICAgPC9jZW50ZXI+DQogICANCiAgICAgICAgICA8YnIgLz4NCg0KICAgICAgPHAgY2xhc3M9InRleHQtY2VudGVyIj4gSXQgb25seSB0YWtlcyA0MCBzZWNvbmRzLiBObyBLWUMgcmVxdWlyZWQuPC9wPg0KICAgIDwvZGl2Pg0KDQoNCiAgICAgIDwhLS0gID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT10aGlzIGlzIHRoZSBWSVAgQkxBQ0sgc2VjdGlvbiBwYWdlICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tLT4NCiAgICA8c2VjdGlvbiBjbGFzcz0iY29udGFpbmVyLWZsdWlkIGFidC1ib2R5Ij4NCiAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+DQogICAgICAgIDxoMj4gUHJlZGljdCBtYXJrZXQgZGlyZWN0aW9uIGFuZCBlYXJuISA8L2gyPg0KICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXNtLTEyIj4NCiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1jZW50ZXIgbGVhZCI+DQogICAgICAgICAgICAgICAgPHA+SW5kZXBlbmRlbnRseSBvciB3aXRoIHRoZSBoZWxwIG9mIG91ciBzcGVjaWFsaXN0cw0KICAgICAgICAgICAgICAgICAgeW91IHdpbGwgbGVhcm4gdHJhZGluZyBzdHJhdGVnaWVzLjwvcD4NCiAgICAgICAgICAgICAgICAgIDxwPllvdSB3aWxsIGV2YWx1YXRlIGhvdyBmYXN0IHdlIHByb2Nlc3MgdGhlIHBheW91dHMuDQogICAgICAgICAgICAgICAgICAgIEFsbCB3aXRoZHJhd2FsIHJlcXVlc3RzIGFyZSBkb25lIHdpdGhpbiBhbiBob3VyITwvcD4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iIj4NCiAgICAgICAgICAgICAgICAgICAgPGlmcmFtZSBzcmM9ImRlbW8vaW5kZXguaHRtbCIgY2xhc3M9Im1pbmktcGxhdGZvcm0gIiB3aWR0aD0iNzA0cHgiIGZyYW1lQm9yZGVyPSIwIiBoZWlnaHQ9IjM0MHB4Ij48L2lmcmFtZT4gDQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2PiAgICAgICAgDQogICAgICAgIDwvZGl2Pg0KICAgICAgICANCiAgICAgIDwvZGl2Pg0KICAgICAgPGRpdiBzdHlsZT0icGFkZGluZzogMjBweCI+PC9kaXY+DQogICAgPC9zZWN0aW9uPg0KICAgIDwhLS0gZW5kIHRoZSBhYm91dCB1cyBzZWN0aW9uICAtLT4NCg0KIDwhLS0gIGZvdXIgY29sdW1uIHNlY3Rpb24gd2l0aCBjaG9vc2UgYSBwYWNrYWdlIHNlY3Rpb24gIC0tPg0KICAgICAgICA8c2VjdGlvbiBjbGFzcz0iY29udGFpbmVyLWZsdWlkICI+DQogICAgICAgICAgPGgzIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij4gT3VyIFRyYWRpbmcgQWNjb3VudCBUeXBlcyA8L2gzPg0KICAgDQogICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXItZmx1aWQiPg0KICAgICAgICA8ZGl2IGNsYXNzPSJyb3ciIHN0eWxlPSJwYWRkaW5nOiAyMHB4OyI+DQoNCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMyBjb2wtc20tMTIgcGxhbi13cmFwIj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1wbGFuLWlubmVyIj4NCiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXBsYW4taGVhZCI+DQogICAgICAgICAgICAgICAgPGRpdiBzdHlsZT0icGFkZGluZzogMTBweDsiPiA8L2Rpdj4NCiAgICAgICAgICAgICAgICA8aDI+IFNUQVJURVI8L2gyPg0KICAgICAgICAgICAgICAgIDxwPiA1JSBEYWlseSA8L3A+DQogICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgIDxwIGNsYXNzPSJwbGFuLXRleHQiPjxzcGFuIGNsYXNzPSJsdC1ibHVlIj4gREFJTFkgPC9zcGFuPiAgUkVUVVJOIDwvcD4NCiAgICAgICAgICAgICAgIDxwIGNsYXNzPSJwbGFuLXRleHQiPiBDb21wb3VuZGluZyA8c3BhbiBjbGFzcz0ibHQtYmx1ZSI+IFRvdGFsIG9mIDwvc3Bhbj4gIDE1JSA8L3A+DQogICAgICAgICAgICAgIDxwIGNsYXNzPSJwbGFuLXRleHQiPiA8c3BhbiBjbGFzcz0ibHQtYmx1ZSI+IEhBU0hJTkcgRk9SPC9zcGFuPiAzIERBWVMgPC9wPg0KICAgICAgICAgICAgIA0KDQogICAgICAgICAgICAgIDwhLS0gdGhvc2UgdmFsdWVzIG9udG9wIG9mIHRoZSAuLi4uIC0tPg0KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtaW4tcHJpY2UgZmxvYXQtbGVmdCIgPg0KICAgICAgICAgICAgICAgIDxiPk1JTklNVU08L2I+IDxicj4NCiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibHQtYmx1ZSI+IDxiPiAkIDUwMCA8L2I+IDwvc3Bhbj4NCiAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgIDwhLS0gdGhpcyBpcyBhIGJyZWFrIC0tPg0KICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1pbi1wcmljZSBmbG9hdC1yaWdodCI+DQogICAgICAgICAgICAgICAgPGI+TUFYSU1VTTwvYj4gPGJyPg0KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJsdC1ibHVlIj4gPGI+ICQgMSw0OTk8L2I+IDwvc3Bhbj4NCiAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICA8IS0tIHRob3NlIHZhbHVlcyBvbnRvcCBvZiB0aGUgLi4uLiAtLT4NCiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2xlYXJmaXgiPjwvZGl2Pg0KDQogICAgICAgICAgDQogICAgICAgICAgICAgICAgICA8IS0tID09PT09PT09PT09PXRoaXMgaXMgdGhlIHJhbmdlIHNsaWRlcj09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQogICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciIgc3R5bGU9InBhZGRpbmc6MCAzMHB4OyI+DQogICAgICAgICAgICAgICAgICA8Y2VudGVyPg0KICAgICAgICAgICAgICAgICAgICA8IS0tIDxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0iYW1vdW50LXNpbHZlciIgIHN0eWxlPSJiYWNrZ3JvdW5kOiBub25lOyBib3JkZXI6IG5vbmU7IGNvbG9yOiAjZmZmOyBvdXRsaW5lOiBub25lOyB0ZXh0LWFsaWduOiBjZW50ZXI7Ij4gLS0+DQogICAgICAgICAgICAgICAgICA8L2NlbnRlcj4NCiAgICAgICAgICAgICAgICAgIDxiciAvPg0KICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgaWQ9InNsaWRlci1zaWx2ZXIiIHN0eWxlPSJ3aWR0aDogMTAwJTsNCiAgICAgICAgICAgICAgICAgIGhlaWdodDogMTNweDsNCiAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDsNCiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1MmFmZWU7DQogICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCAxOHB4IHJnYmEoMCwwLDAsMC42KTsNCiAgICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7Ij4gPC9kaXY+IC0tPg0KDQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgIDwhLS0gPC9mb3JtPiAtLT4NCg0KICAgICAgICAgICAgICA8IS0tID09PT09PT09PT09PT09PXRoaXMgaXMgdGhlIGVuZCBvZiB0aGUgcmFuZ2U9PT09PT09PT09PT09PT09PT09PT09IC0tPg0KICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgPCEtLSA8Zm9ybT4gLS0+DQoNCg0KICAgICAgICAgICAgICAgIDxiciAvPg0KICAgICAgICAgICAgICAgIDwhLS0gdGhvc2UgdmFsdWVzIG9udG9wIG9mIHRoZSAuLi4uIC0tPg0KICAgICAgICAgICAgIDwhLS0gIDxkaXYgY2xhc3M9Im1pbi1wcmljZSBmbG9hdC1sZWZ0IiA+DQogICAgICAgICAgICAgICAgPGI+UEVSIFRJTUU8L2I+IDxicj4NCiAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Imx0LWJsdWUiPiA8Yj4gPHNwYW4gY2xhc3M9InBlci1yZXR1cm4tc2lsdmVyIj4gJCAxMTI0LjkyNS48L3NwYW4+MDwvYj4gPC9zcGFuPg0KICAgICAgICAgICAgICA8L2Rpdj4gLS0+DQogICAgICAgICAgICAgIDwhLS0gdGhpcyBpcyBhIGJyZWFrIC0tPg0KICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz0ibWluLXByaWNlIGZsb2F0LXJpZ2h0Ij4NCiAgICAgICAgICAgICAgICA8Yj5UT1RBTCBSRVRVUk48L2I+IDxicj4NCiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibHQtYmx1ZSI+IDxiPiA8c3BhbiBjbGFzcz0idG90YWwtcmV0dXJuLXNpbHZlciI+ICQgMTM0OTkuMS4wPC9zcGFuPjwvYj4gPC9zcGFuPg0KICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2xlYXJmaXgiPjwvZGl2PiAtLT4NCg0KDQogICAgICAgICAgICAgICAgPGEgaHJlZj0ic2lnbi11cGU3YjFlN2IxLmh0bWw/cGFja2FnZT1zdGFydGVyIj4NCiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBsYW4tc2lnbnVwIj4NCiAgICAgICAgICAgICAgICA8Y2VudGVyPg0KICAgICAgICAgICAgICAgICAgU2lnbiB1cCAmbmJzcCA8aSBjbGFzcz0iZmFzIGZhLXVzZXIgZGFyay1nb2xkIj48L2k+DQogICAgICAgICAgICAgICAgPC9jZW50ZXI+DQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgIA0KICAgICAgICAgICAgIA0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgPC9kaXY+ICA8IS0tIGVuZCB0aGUgY29sIC0tPg0KDQogICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTMgY29sLXNtLTEyIHBsYW4td3JhcCI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtcGxhbi1pbm5lciI+DQogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1wbGFuLWhlYWQiPg0KICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9InBhZGRpbmc6IDEwcHg7Ij4gPC9kaXY+DQogICAgICAgICAgICAgICAgPGgyPiBTSUxWRVIgPC9oMj4NCiAgICAgICAgICAgICAgICA8cD4gMTAlIERhaWx5IDwvcD4NCiAgICAgICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICAgICAgPHAgY2xhc3M9InBsYW4tdGV4dCI+PHNwYW4gY2xhc3M9Imx0LWJsdWUiPiBEQUlMWSA8L3NwYW4+ICBSRVRVUk4gPC9wPg0KICAgICAgICAgICAgICAgPHAgY2xhc3M9InBsYW4tdGV4dCI+IENvbXBvdW5kaW5nIDxzcGFuIGNsYXNzPSJsdC1ibHVlIj4gVG90YWwgb2YgPC9zcGFuPiAgNjAlIDwvcD4NCiAgICAgICAgICAgICAgPHAgY2xhc3M9InBsYW4tdGV4dCI+IDxzcGFuIGNsYXNzPSJsdC1ibHVlIj4gSEFTSElORyBGT1I8L3NwYW4+IDYgREFZUyA8L3A+DQogICAgICAgICAgICAgDQoNCiAgICAgICAgICAgICAgPCEtLSB0aG9zZSB2YWx1ZXMgb250b3Agb2YgdGhlIC4uLi4gLS0+DQogICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1pbi1wcmljZSBmbG9hdC1sZWZ0IiA+DQogICAgICAgICAgICAgICAgPGI+TUlOSU1VTTwvYj4gPGJyPg0KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJsdC1ibHVlIj4gPGI+ICQgMSw1MDAgPC9iPiA8L3NwYW4+DQogICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICA8IS0tIHRoaXMgaXMgYSBicmVhayAtLT4NCiAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtaW4tcHJpY2UgZmxvYXQtcmlnaHQiPg0KICAgICAgICAgICAgICAgIDxiPk1BWElNVU08L2I+IDxicj4NCiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibHQtYmx1ZSI+IDxiPiAkIDQsNDk5PC9iPiA8L3NwYW4+DQogICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgPCEtLSB0aG9zZSB2YWx1ZXMgb250b3Agb2YgdGhlIC4uLi4gLS0+DQogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNsZWFyZml4Ij48L2Rpdj4NCg0KICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgPCEtLSA9PT09PT09PT09PT10aGlzIGlzIHRoZSByYW5nZSBzbGlkZXI9PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiIHN0eWxlPSJwYWRkaW5nOjAgMzBweDsiPg0KICAgICAgICAgICAgICAgICAgPGNlbnRlcj4NCiAgICAgICAgICAgICAgICAgICAgPCEtLSA8aW5wdXQgdHlwZT0idGV4dCIgaWQ9ImFtb3VudC1zaWx2ZXIiICBzdHlsZT0iYmFja2dyb3VuZDogbm9uZTsgYm9yZGVyOiBub25lOyBjb2xvcjogI2ZmZjsgb3V0bGluZTogbm9uZTsgdGV4dC1hbGlnbjogY2VudGVyOyI+IC0tPg0KICAgICAgICAgICAgICAgICAgPC9jZW50ZXI+DQogICAgICAgICAgICAgICAgICA8YnIgLz4NCiAgICAgICAgICAgICAgICAgPCEtLSA8ZGl2IGlkPSJzbGlkZXItc2lsdmVyIiBzdHlsZT0id2lkdGg6IDEwMCU7DQogICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEzcHg7DQogICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7DQogICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTJhZmVlOw0KICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggMThweCByZ2JhKDAsMCwwLDAuNik7DQogICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lOyI+IDwvZGl2PiAtLT4NCg0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICA8IS0tIDwvZm9ybT4gLS0+DQoNCiAgICAgICAgICAgICAgPCEtLSA9PT09PT09PT09PT09PT10aGlzIGlzIHRoZSBlbmQgb2YgdGhlIHJhbmdlPT09PT09PT09PT09PT09PT09PT09PSAtLT4NCiAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgIDwhLS0gPGZvcm0+IC0tPg0KDQoNCiAgICAgICAgICAgICAgICA8YnIgLz4NCiAgICAgICAgICAgICAgICA8IS0tIHRob3NlIHZhbHVlcyBvbnRvcCBvZiB0aGUgLi4uLiAtLT4NCiAgICAgICAgICAgICA8IS0tICA8ZGl2IGNsYXNzPSJtaW4tcHJpY2UgZmxvYXQtbGVmdCIgPg0KICAgICAgICAgICAgICAgIDxiPlBFUiBUSU1FPC9iPiA8YnI+DQogICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJsdC1ibHVlIj4gPGI+IDxzcGFuIGNsYXNzPSJwZXItcmV0dXJuLXNpbHZlciI+ICQgMTEyNC45MjUuPC9zcGFuPjA8L2I+IDwvc3Bhbj4NCiAgICAgICAgICAgICAgPC9kaXY+IC0tPg0KICAgICAgICAgICAgICA8IS0tIHRoaXMgaXMgYSBicmVhayAtLT4NCiAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9Im1pbi1wcmljZSBmbG9hdC1yaWdodCI+DQogICAgICAgICAgICAgICAgPGI+VE9UQUwgUkVUVVJOPC9iPiA8YnI+DQogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Imx0LWJsdWUiPiA8Yj4gPHNwYW4gY2xhc3M9InRvdGFsLXJldHVybi1zaWx2ZXIiPiAkIDEzNDk5LjEuMDwvc3Bhbj48L2I+IDwvc3Bhbj4NCiAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNsZWFyZml4Ij48L2Rpdj4gLS0+DQoNCg0KICAgICAgICAgICAgICAgIDxhIGhyZWY9InNpZ24tdXAxYzI3MWMyNy5odG1sP3BhY2thZ2U9c2lsdmVyIj4NCiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBsYW4tc2lnbnVwIj4NCiAgICAgICAgICAgICAgICA8Y2VudGVyPg0KICAgICAgICAgICAgICAgICAgU2lnbiB1cCAmbmJzcCA8aSBjbGFzcz0iZmFzIGZhLXVzZXIgZGFyay1nb2xkIj48L2k+DQogICAgICAgICAgICAgICAgPC9jZW50ZXI+DQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgIA0KICAgICAgICAgICAgIA0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgPC9kaXY+ICA8IS0tIGVuZCB0aGUgY29sIC0tPg0KDQogICAgICAgICAgICA8IS0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1saW5lIGJyZWFrIEdPTEQ9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCg0KICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC0zIGNvbC1zbS0xMiBwbGFuLXdyYXAiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXBsYW4taW5uZXIiPg0KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtcGxhbi1oZWFkIj4NCiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPSJwYWRkaW5nOiAxMHB4OyI+IDwvZGl2Pg0KICAgICAgICAgICAgICAgIDxoMj4gR09MRCA8L2gyPg0KICAgICAgICAgICAgICAgIDxwPjE1JSBEYWlseSA8L3A+DQogICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgIDxwIGNsYXNzPSJwbGFuLXRleHQiPjxzcGFuIGNsYXNzPSJsdC1ibHVlIj4gREFJTFkgPC9zcGFuPiAgUkVUVVJOIDwvcD4NCiAgICAgICAgICAgICAgIDxwIGNsYXNzPSJwbGFuLXRleHQiPiBDb21wb3VuZGluZyA8c3BhbiBjbGFzcz0ibHQtYmx1ZSI+IFRvdGFsIG9mIDwvc3Bhbj4gIDc1JSA8L3A+DQogICAgICAgICAgICAgIDxwIGNsYXNzPSJwbGFuLXRleHQiPiA8c3BhbiBjbGFzcz0ibHQtYmx1ZSI+IEhBU0hJTkcgRk9SPC9zcGFuPiA1IERBWVMgPC9wPg0KDQogICAgICAgICAgICAgIDwhLS0gdGhvc2UgdmFsdWVzIG9udG9wIG9mIHRoZSAuLi4uIC0tPg0KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtaW4tcHJpY2UgZmxvYXQtbGVmdCIgPg0KICAgICAgICAgICAgICAgIDxiPk1JTklNVU08L2I+IDxicj4NCiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibHQtYmx1ZSI+IDxiPiAkIDQsOTk5IDwvYj4gPC9zcGFuPg0KICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgPCEtLSB0aGlzIGlzIGEgYnJlYWsgLS0+DQogICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWluLXByaWNlIGZsb2F0LXJpZ2h0Ij4NCiAgICAgICAgICAgICAgICA8Yj5NQVhJTVVNPC9iPiA8YnI+DQogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Imx0LWJsdWUiPiA8Yj4gJCA5LDk5OTwvYj4gPC9zcGFuPg0KICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgIDwhLS0gdGhvc2UgdmFsdWVzIG9udG9wIG9mIHRoZSAuLi4uIC0tPg0KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjbGVhcmZpeCI+PC9kaXY+DQoNCiAgICAgICAgICANCiAgICAgICAgICAgICAgICAgIDwhLS0gPT09PT09PT09PT09dGhpcyBpcyB0aGUgcmFuZ2Ugc2xpZGVyPT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCiAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIiBzdHlsZT0icGFkZGluZzowIDMwcHg7Ij4NCiAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgPCEtLSA9PT09PT09PT09PT09PT10aGlzIGlzIHRoZSBlbmQgb2YgdGhlIHJhbmdlPT09PT09PT09PT09PT09PT09PT09PSAtLT4NCiAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgIDwhLS0gPGZvcm0+IC0tPg0KDQoNCiAgICAgICAgICAgICAgICA8YnIgLz4NCiAgICAgICAgICAgICAgICA8YSBocmVmPSJzaWduLXVwNmFkMjZhZDIuaHRtbD9wYWNrYWdlPWdvbGQiPg0KICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGxhbi1zaWdudXAiPg0KICAgICAgICAgICAgICAgIDxjZW50ZXI+DQogICAgICAgICAgICAgICAgICBTaWduIHVwICZuYnNwIDxpIGNsYXNzPSJmYXMgZmEtdXNlciBkYXJrLWdvbGQiPjwvaT4NCiAgICAgICAgICAgICAgICA8L2NlbnRlcj4NCiAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICA8L2E+DQogICAgICAgICAgDQogICAgICAgICAgICAgDQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICA8L2Rpdj4gIDwhLS0gZW5kIHRoZSBjb2wgLS0+DQoNCiAgICAgICAgICAgPCEtLSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09bGluZSBicmVhaz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KDQogICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTMgY29sLXNtLTEyIHBsYW4td3JhcCI+DQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtcGxhbi1pbm5lciI+DQogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC1wbGFuLWhlYWQiPg0KICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9InBhZGRpbmc6IDEwcHg7Ij4gPC9kaXY+DQogICAgICAgICAgICAgICAgPGgyPiBQTEFUSU5VTSA8L2gyPg0KICAgICAgICAgICAgICAgIDxwPiA0MCUgRGFpbHkgPC9wPg0KICAgICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgICA8cCBjbGFzcz0icGxhbi10ZXh0Ij48c3BhbiBjbGFzcz0ibHQtYmx1ZSI+IERBSUxZIDwvc3Bhbj4gIFJFVFVSTiA8L3A+DQogICAgICAgICAgICAgICAgPHAgY2xhc3M9InBsYW4tdGV4dCI+IENvbXBvdW5kaW5nIDxzcGFuIGNsYXNzPSJsdC1ibHVlIj4gVG90YWwgb2YgPC9zcGFuPiAgMTIwJSA8L3A+DQogICAgICAgICAgICAgIDxwIGNsYXNzPSJwbGFuLXRleHQiPiA8c3BhbiBjbGFzcz0ibHQtYmx1ZSI+IEhBU0hJTkcgRk9SPC9zcGFuPiAzIERBWVMgPC9wPg0KDQogICAgICAgICAgICAgIDwhLS0gdGhvc2UgdmFsdWVzIG9udG9wIG9mIHRoZSAuLi4uIC0tPg0KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJtaW4tcHJpY2UgZmxvYXQtbGVmdCIgPg0KICAgICAgICAgICAgICAgIDxiPk1JTklNVU08L2I+IDxicj4NCiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibHQtYmx1ZSI+IDxiPiAkIDEwLDAwMDwvYj4gPC9zcGFuPg0KICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgPCEtLSB0aGlzIGlzIGEgYnJlYWsgLS0+DQogICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWluLXByaWNlIGZsb2F0LXJpZ2h0Ij4NCiAgICAgICAgICAgICAgICA8Yj5NQVhJTVVNPC9iPiA8YnI+DQogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9Imx0LWJsdWUiPiA8Yj4gJCAxMDAsMDAwPC9iPiA8L3NwYW4+DQogICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgPCEtLSB0aG9zZSB2YWx1ZXMgb250b3Agb2YgdGhlIC4uLi4gLS0+DQogICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNsZWFyZml4Ij48L2Rpdj4NCg0KICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgPCEtLSA9PT09PT09PT09PT10aGlzIGlzIHRoZSByYW5nZSBzbGlkZXI9PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiIHN0eWxlPSJwYWRkaW5nOjAgMzBweDsiPg0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgPCEtLSA8Zm9ybT4gLS0+DQoNCg0KICAgICAgICAgICAgICAgIDxiciAvPg0KICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjbGVhcmZpeCI+PC9kaXY+DQogICAgICAgICAgICAgIDxhIGhyZWY9InNpZ24tdXA2YWQyNmFkMi5odG1sP3BhY2thZ2U9Z29sZCI+DQogICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGFuLXNpZ251cCI+DQogICAgICAgICAgICAgICAgPGNlbnRlcj4NCiAgICAgICAgICAgICAgICAgIFNpZ24gdXAgJm5ic3AgPGkgY2xhc3M9ImZhcyBmYS11c2VyIGRhcmstZ29sZCI+PC9pPg0KICAgICAgICAgICAgICAgIDwvY2VudGVyPg0KICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgIDwvYT4NCiAgICAgICAgICANCiAgICAgICAgICAgICANCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgIDwvZGl2PiAgPCEtLSBlbmQgdGhlIGNvbCAtLT4gICAgIA0KICAgICAgICAgIA0KICAgICAgICA8L2Rpdj4gPCEtLSBlbmQgcm93IC0tPg0KDQogICAgICAgPC9kaXY+DQogICAgICAgICAgPCEtLSBlbmQgY29uYXRpbmVyIC0tPg0KICAgICAgICAgIA0KICAgICAgICA8L3NlY3Rpb24+DQogICAgICAgIDwhLS0gZW5kIG1haW4gY29udGFpbmVyIC0tPg0KICAgICAgDQogICAgPCEtLSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PXRoaXMgaXMgdGhlIHNlY3Rpb24gdGhhdCBoYXMgdGhlIGVtYmVkZWQgdmlkZW8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQoNCiAgICA8IS0tIFRoaXMgaXMgdGhlIHNlY3Rpb24gdGhhdCBjb250YWluIHRoZSB0cmFkaW5nIHdpZGdldCAgLS0+DQogICANCiAgIDwhLS0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09dGhpcyBpcyB0aGUgY291bnQgdGlzIHNlY3Rpb24gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQogICA8c2VjdGlvbiBjbGFzcz0iY29udGFpbmVyLWZsdWlkIGNvbC10ZXN0aW1vbnkiPg0KICAgIDwhLS0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09dGhpcyBpcyB0aGUgUGF5bWVudCBNZXRob2RzIHNlY3Rpb249PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciBjb2wtcGF5LW1ldGgiPg0KICAgICAgPGg1IGNsYXNzPSJ0ZXh0LWNlbnRlciI+IFdFIEFDQ0VQVCA8L2g1Pg0KICAgICAgPHAgY2xhc3M9InRleHQtY2VudGVyIHdoaXRlIj4gUGF5bWVudCBNZXRob2RzIGZvciBEZXBvc2l0IGFuZCB3aXRoZHJhd2FsIDwvcD4NCiAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC0zIGNvbC1zbS02Ij4NCiAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2VzL2V0aGVyZXVtLnBuZyI+DQogICAgICAgIDwvZGl2PiA8IS0tIGVuZCBjb2x1bm0gLS0+DQoNCiAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTMgY29sLXNtLTYiPg0KICAgICAgICAgIDxpbWcgc3JjPSJpbWFnZXMvYml0Y29pbi5wbmciPg0KICAgICAgICA8L2Rpdj4gPCEtLSBlbmQgY29sdW5tIC0tPg0KDQogICAgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC0zIGNvbC1zbS02Ij4NCiAgICAgICAgICA8aW1nIHNyYz0iaW1hZ2VzL3NrcmlsLnBuZyI+DQogICAgICAgIDwvZGl2PiA8IS0tIGVuZCBjb2x1bm0gLS0+DQoNCiAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTMgY29sLXNtLTYiPg0KICAgICAgICAgIDxpbWcgc3JjPSJpbWFnZXMvd2VzdGVybi5wbmciPg0KICAgICAgICA8L2Rpdj4gPCEtLSBlbmQgY29sdW5tIC0tPg0KDQogICAgICAgIDwhLS0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSBUaGUgcGF5bWVudCBtZXRob2RzIHNlY3Rpb24gZW5kcyBoZXJlIC0tLSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09LS0+DQoNCiAgICAgICAgDQogICAgICA8L2Rpdj4gPCEtLSBlbmQgcm93LS0+DQoNCg0KICAgICAgDQoNCiAgICA8L2Rpdj48IS0tIGVuZCBjb250YWluZXIgLS0+DQoNCiAgICA8IS0tPT09PT09PT09PT09PT09PT09PT0gdGhlIGNvdXRpcyBzZWN0aW9uIHN0YXJ0cyBoZXJlID09PT09PT09PT09PT09PT09PT09PT09PT0gLS0+DQogICAgIA0KICAgDQogICAgIA0KICAgPC9zZWN0aW9uPg0KDQoNCg0KICAgICAgIDwhLS0gPT09PT09PT09PT09PT09PT09PT09PT09PXRoaXMgaXMgdGhlIHRlc3RpbW9ueSBzZWN0aW9uID09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KICAgICAgIDxzZWN0aW9uIGNsYXNzPSJjb2wtdGVzdGltb255LWJnIj4NCiAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lci1mbHVpZCI+DQogICAgICAgICAgICA8aDMgY2xhc3M9InRleHQtY2VudGVyIj4gVEVTVElNT05JRVM8L2gzPg0KICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtY2VudGVyIj4NCiAgICAgICAgICAgICAgPGk+SGFwcHkgaW52ZXN0b3JzIDxzcGFuIGNsYXNzPSJnb2xkIj4gc2hhcmluZzwvc3Bhbj4gdGhlaXIgdGVzdGltb25pZXMgPC9pPiANCiAgICAgICAgICAgIDwvcCBjbGFzcz0idGV4dC1jZW50ZXIiPg0KDQogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtdGVzdC1jYXJkIj4NCiAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXRlc3QtYmciPg0KICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJhZG1pbi90ZXN0aW1vbnktaW1hZ2VzLzIwODIuanBnIiBjbGFzcz0icm91bmRlZC1jaXJjbGUgaW1nLXRodW1ibmFpbCBmbG9hdC1sZWZ0IG11bSIgd2lkdGg9IjEwMHB4Ij4NCg0KICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWxlZnQiPiBXZSB3ZXJlIGluIGRlYnQgYmVmb3JlIHdlIGdldCB0byBrbm93IGFib3V0ICBiZXN0dHJhZGVycyAgIGFuZCBhZnRlciBmZXcgZGF5cywgd2UgcmVjZWl2ZWQgb3VyIHByb2ZpdCwgZGVidCBwYWlkIG9mZiBhbmQgd2UgYXJlIGRvaW5nIHdlbGwgbm93IGZpbmFuY2lhbGx5IGFuZCBkZWZpbml0ZWx5IGtlZXAgb24gaW52ZXN0aW5nLiBUaGFua3MgdG8gdGhlIHRlYW08L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz0idGV4dC1sZWZ0Ij4gSmVuYSBTaGVyYmVydDwvaDU+DQogICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC10ZXN0LWJnIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iYWRtaW4vdGVzdGltb255LWltYWdlcy80MTI2LmpwZyIgY2xhc3M9InJvdW5kZWQtY2lyY2xlIGltZy10aHVtYm5haWwgZmxvYXQtbGVmdCBtdW0iIHdpZHRoPSIxMDBweCI+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1sZWZ0Ij4gTG90cyBvZiBwZW9wbGUgaW4gdGhpcyB0cmFkZSB0b2RheSBhcmUgaGF2aW5nIG1pc2ZvcnR1bmUgYmVjYXVzZSBvZiBtaXN0YWtlbiBzeXN0ZW1zIGFuZCBpbmZvcm1hdGlvbiwgc29tZWJvZHkgYWNxdWFpbnRlZCBtZSB3aXRoICBiZXN0dHJhZGVycyAgIHN0cmF0ZWd5IGZvciB0cmFkaW5nIEJpbmFyeSBvcHRpb24gd2hpY2ggaGFzIGNoYW5nZWQgYSBjb25zaWRlcmFibGUgbWVhc3VyZSBvZiB0cmFkZXJzIG1vbmV0YXJ5IGxpZmUgdG8gdG9wIHdvcmtlcnMsIGVuZ2luZWVyIG9mIHRlY2huaXF1ZXMgdGhhdCBjYW4gZ2FpbiB5b3UgYXMgbXVjaCBhcyAkNTQsMDAwIG1vbnRoIHRvIG1vbnRoIHdpdGggYSBsaXR0bGUgc3RhcnQgdXAgaGUnbGwgZWxldmF0ZSB5b3UgY29tcGxldGVseS48L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz0idGV4dC1sZWZ0Ij4gUmFsZiBOYXVtYW5uPC9oNT4NCiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC10ZXN0LWJnIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iYWRtaW4vdGVzdGltb255LWltYWdlcy80MTJhLmpwZyIgY2xhc3M9InJvdW5kZWQtY2lyY2xlIGltZy10aHVtYm5haWwgZmxvYXQtbGVmdCBtdW0iIHdpZHRoPSIxMDBweCI+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1sZWZ0Ij4gDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSSB3YXMgb25jZSBhIGRlYnRvciBhbmQgYWxtb3N0IGxvc3QgZXZlcnl0aGluZyBJIGhhZCBidXQgYW4gT3Bwb3J0dW5pdHkgY2FtZSByaWdodCBiZWZvcmUgbWUuIEkgc3RhcnRlZCBpbnZlc3Rpbmcgd2l0aCB0aGlzIGNvbXBhbnkgYW5kIHdhcyBhYmxlIHRvIHBheSB1cCBteSBkZWJ0cyB3aXRoaW4gMiB3ZWVrcywgaSBhbSB2ZXJ5IHNhdGlzZmllZCB3aXRoIHRoZWlyIHNlcnZpY2VzLiBCZXN0IGludmVzdG1lbnQgQ29tcGFueSBldmVyLg0KICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPSJ0ZXh0LWxlZnQiPiBBbmdlbGluYSBSb3NlPC9oNT4NCiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtdGVzdC1iZyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9ImFkbWluL3Rlc3RpbW9ueS1pbWFnZXMvNDEyNy5qcGciIGNsYXNzPSJyb3VuZGVkLWNpcmNsZSBpbWctdGh1bWJuYWlsIGZsb2F0LWxlZnQgbXVtIiB3aWR0aD0iMTAwcHgiPg0KDQogICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9InRleHQtbGVmdCI+IEkgYWx3YXlzIGZlZWwgc29ycnkgZm9yIHBlb3BsZSB3aG8gZmFsbCBvciBoYXZlIGZhbGxlbiB2aWN0aW0gb2YgYSBiaW5hcnkgb3B0aW9uIHNjYW0gYmVjYXVzZSBJIHdhcyBvbmNlIGluIHN1Y2ggc2l0dWF0aW9uIGluIHRoZSBzZWNvbmQgcXVhcnRlciBvZiBsYXN0IHllYXIgd2hlbiBJIGxvc3Qgb3ZlciAkMTI0LDAwMCBvZiBwZXJzb25hbCBpbnZlc3RtZW50LiBUaGVzZSBhY3RzIGhhcyB0aGVyZWZvcmUgZ2l2ZW4gcmlzZSB0byBleHBlcnRzIGxpa2UgIGJlc3R0cmFkZXJzICAsd2hpY2ggaXMgZGlmZmVyZW50IGFuZCBoYXMgaGVscGVkIG1lIHdpdGhkcmF3IGEgdmVyeSBodWdlIGFtb3VudCBvZiBteSBpbnZlc3RtZW50IGluIGEgdmVyeSBzaG9ydCBwZXJpb2Qgb2YgdGltZS4gSSBzdHJvbmdseSByZWNvbW1lbmQgdGhlaXIgc2VydmljZXMuPC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9InRleHQtbGVmdCI+IFJvc2UgRHVmZjwvaDU+DQogICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXRlc3QtYmciPg0KICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSJhZG1pbi90ZXN0aW1vbnktaW1hZ2VzLzQxMmIuanBnIiBjbGFzcz0icm91bmRlZC1jaXJjbGUgaW1nLXRodW1ibmFpbCBmbG9hdC1sZWZ0IG11bSIgd2lkdGg9IjEwMHB4Ij4NCg0KICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPSJ0ZXh0LWxlZnQiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICBJIGFtIHNvIGhhcHB5IEkgdHJ1c3RlZCB0aGlzIGNvbXBhbnkgd2l0aCBteSBtb25leS4gRXZlciBzaW5jZSBJIHRvb2sgdGhlIHJ1c2ggb2YgaW52ZXN0aW5nIG15IG1vbmV5IHdpdGggICB0cmFkZSBwcm8gZ2xvYmFsIGludmVzdG1lbnQgIEkgaGF2ZSBuZXZlciByZWdyZXR0ZWQgcmF0aGVyIG15IGxpZmUgaGFzIGNoYW5nZWQgZm9yIHRoZSBiZXR0ZXIuDQogICAgICAgICAgICAgICAgICAgICAgICAgIDwvcD4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPSJ0ZXh0LWxlZnQiPiBNaWNoZWFsIEJyb3duPC9oNT4NCiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC10ZXN0LWJnIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iYWRtaW4vdGVzdGltb255LWltYWdlcy80MTI4LnBuZyIgY2xhc3M9InJvdW5kZWQtY2lyY2xlIGltZy10aHVtYm5haWwgZmxvYXQtbGVmdCBtdW0iIHdpZHRoPSIxMDBweCI+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1sZWZ0Ij4gSSBoYXZlIGxvc3QgYSBodWdlIGFtb3VudCBvZiBtb25leSB0byBvbmUgb2YgdGhlc2UgYnJva2Vycywgd2hpY2ggZ290IG1lIHNvIHN0cmFuZGVkIGFuZCBicm9rZSBidXQgYWZ0ZXIgYSBjYW1lIGFjcm9zcyBhIHJldmlldyB0YWxraW5nIGFib3V0ICBiZXN0dHJhZGVycyAgb24gaG93IGl0IGhhcyBoZWxwZWQgbG90cyBvZiBwZW9wbGUgcmVjb3ZlciB0aGVpciBtb25leSBJIGRlY2lkZWQgdG8gdHJ5IHRoZW0sIGFuZCB0aGV5IGhlbHBlZCBtZSBnZXQgYmFjayBldmVyeSBiaXQgb2YgbXkgbW9uZXkgYW5kIGFsc28gc3RhcnRlZCBndWlkaW5nIGJlIG9uIHRyYWRlIG5vdyBJJ20gbWFraW5nIGxvdHMgb2YgcHJvZml0PC9wPg0KICAgICAgICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9InRleHQtbGVmdCI+IEFsZXhhbmRlciBMb2dhbjwvaDU+DQogICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC10ZXN0LWJnIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0iYWRtaW4vdGVzdGltb255LWltYWdlcy80MTI5LnBuZyIgY2xhc3M9InJvdW5kZWQtY2lyY2xlIGltZy10aHVtYm5haWwgZmxvYXQtbGVmdCBtdW0iIHdpZHRoPSIxMDBweCI+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz0idGV4dC1sZWZ0Ij4gR2V0IGJhY2sgZXZlcnl0aGluZyBpbiBsZXNzIHRoYW4gMTQgd29ya2luZyBkYXlzLiBJdOKAmXMgb2J2aW91cyB0aGF0IGxvdHMgb2YgdXMgaGF2ZSBmYWxsZW4gdmljdGltIHRvIHRoaXMgcmlwcGVycyBJIGFtIGEgbGVhdmluZyB3aXRuZXNzIHRvIGl0LCBJIGhhdmUgYmVlbiBzY2FtbWVkIHRvbyBtYW55IHRpbWVzIGJ1dCBkZWNpZGVkIG5vdCB0byBnaXZlIHVwIGJlY2F1c2UgSSBoYXZlIHNlZW4gbG90cyBvZiBzdWNjZXNzZnVsIGludmVzdG9ycywgYWZ0ZXIgdG9vIG1hbnkgbG9zc2VzIEkgZGVjaWRlZCB0byBjb25mcm9udCBzb21lb25lIHdobyBoYXMgYWxyZWFkeSBtYWRlIGl0IHRocm91Z2ggYmluYXJ5IG9wdGlvbiB0cmFkaW5nIGhlIGludHJvZHVjZWQgbWUgdG8gIGJlc3R0cmFkZXJzICBzaW5jZSBJIHN0YXJ0ZWQgYnVzaW5lc3Mgd2l0aCB0aGVtIHRoaW5ncyBoYXZlIGNoYW5nZWQgYW5kIEnigJltIG5vdyBtYWtpbmcgbG90cyBvZiBwcm9maXQ8L3A+DQogICAgICAgICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz0idGV4dC1sZWZ0Ij4gQWxleGFuZGVyIExvZ2FuPC9oNT4NCiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICANCiAgICAgICAgICAgICAgDQoNCg0KDQogICAgICAgICAgICA8L2Rpdj4gPCEtLT09PT09PT09PT09PT09PT09PT09PT09PT09IGVuZCBvZiB0aGUgc2xpY2sgZGl2IGNvbnRhaW5lciA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LS0+DQoNCiAgICAgICAgICA8L2Rpdj4gPCEtLSBlbmQgb2YgdGhlIGNvbnRhaW5lciBmbHVpZCAtLT4NCg0KICAgICAgICAgIDwhLS0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09VGhpcyBpcyB0aGUgc3RyYXQgb2YgdGhlIHZpZGVvIHRlc3RpbW9ueSBzZWN0aW9uID09PT09PT09PT09PT09PT09PT09PT09PT09PSAtLT4NCiAgICAgICAgICA8aDMgY2xhc3M9InRleHQtY2VudGVyIj5URVNUSU1PTklFUyhWSURFT1MpPC9oMz4NCiAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtdGVzdC12aWRlbyI+DQogICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbC10ZXN0LWJnIiA+DQogICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImVtYmVkLXJlc3BvbnNpdmUgZW1iZWQtcmVzcG9uc2l2ZS00YnkzIj4NCiAgICAgICAgICAgICAgICAgICAgICA8dmlkZW8gY29udHJvbHM9InRydWUiIGNsYXNzPSJlbWJlZC1yZXNwb25zaXZlLWl0ZW0iPg0KICAgICAgICAgICAgICAgICAgICAgICAgPHNvdXJjZSBzcmM9ImFkbWluL3ZpZGVvLzI4MjIubXA0IiB0eXBlPSJ2aWRlby9tcDQiPg0KICAgICAgICAgICAgICAgICAgICAgIDwvdmlkZW8+DQogICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICANCg0KICAgICAgICAgIDwvZGl2PiA8IS0tIGVuZCByb3ctLT4NCiAgICAgICAgICAgPGEgaHJlZj0idmlkZW8tdGVzdGltb255Lmh0bWwiPg0KICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icGxhbi1zaWdudXAiIHN0eWxlPSJjb2xvcjogI2ZmZjsiPg0KICAgICAgICAgICAgICAgIDxjZW50ZXI+DQogICAgICAgICAgICAgICAgIFZpZXcgbW9yZSB2aWRlb3MgJm5ic3AgPGkgY2xhc3M9ImZhcyBmYS1leWUiPjwvaT4NCiAgICAgICAgICAgICAgICA8L2NlbnRlcj4NCiAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICA8L2E+DQoNCiAgICAgICAgICAgICA8IS0tID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVRoaXMgaXMgdGhlIGVuZCBvZiB0aGUgdmlkZW8gdGVzdGltb255IHNlY3Rpb24gPT09PT09PT09PT09PT09PT09PT09PT09PT09IC0tPg0KICAgICAgIDwvc2VjdGlvbj4gDQoNCiAgICAgIA0KICAgICANCiAgICAgICAgICAgICAgICANCiAgICA8L2Rpdj4NCg0KDQogICAgPCEtLSBmb290ZXIgLS0+DQogICAgIDwhLS0gdGhpcyBpcyB0aGUgYmVnaW5pbmcgb2YgdGhlIGZvb3RlciBzZWN0aW9uICAtLT4NCg0KDQogICAgICAgIDwhLS0gYW5pbWF0ZWQgY291bnRlciAtLT4NCiAgICAgICAgICAgICAgICANCg0KICAgICAgICAgICAgICAgIAk8ZGl2IGNsYXNzPSJyb3cgcnVubmVyIiBzdHlsZT0iIiBpZD0nbXljb3VudGVyJz4NCgkJCQkJCTxkaXYgY2xhc3M9ImNvbC1sZy0zIj4NCgkJCQkJCQkgPGRpdiBjbGFzcz0ic2luZ2xlLWNvdXRuZXJ1cCI+DQoJCQkJCQkJIDxzcGFuIGNsYXNzPSJjb3VudC10aGlzIj4zNjU8L3NwYW4+DQoJCQkJCQkJCTxoNCBjbGFzcz0idGl0bGUiPlJVTk5JTkcgREFZUzwvaDQ+DQoNCgkJCQkJCQk8L2Rpdj4NCgkJCQkJCTwvZGl2Pg0KCQkJCQkJPGRpdiBjbGFzcz0iY29sLWxnLTMiPg0KCQkJCQkJCSA8ZGl2IGNsYXNzPSJzaW5nbGUtY291dG5lcnVwIj4NCgkJCQkJCQkgPHNwYW4gY2xhc3M9ImNvdW50LXRoaXMiIGlkPSd0b3RhbGludmVzdG9ycyc+MTcsMzgzPC9zcGFuPg0KCQkJCQkJCQk8aDQgY2xhc3M9InRpdGxlIj5UT1RBTCBJTlZFU1RPUlM8L2g0Pg0KDQoJCQkJCQkJPC9kaXY+DQoJCQkJCQk8L2Rpdj4NCgkJCQkJCTxkaXYgY2xhc3M9ImNvbC1sZy0zIj4NCgkJCQkJCQkgPGRpdiBjbGFzcz0ic2luZ2xlLWNvdXRuZXJ1cCI+DQoJCQkJCQkJIDxzcGFuIGNsYXNzPSJjb3VudC10aGlzIiBpZD0ndG90YWxpbnZlc3RlZCc+MTEsNDU0LDUzODwvc3Bhbj4NCgkJCQkJCQkJPGg0IGNsYXNzPSJ0aXRsZSI+VE9UQUwgSU5WRVNURUQ8L2g0Pg0KDQoJCQkJCQkJPC9kaXY+DQoJCQkJCQk8L2Rpdj4NCgkJCQkJCTxkaXYgY2xhc3M9ImNvbC1sZy0zIj4NCgkJCQkJCQkgPGRpdiBjbGFzcz0ic2luZ2xlLWNvdXRuZXJ1cCI+DQoJCQkJCQkJIDxzcGFuIGNsYXNzPSJjb3VudC10aGlzIiBpZD0ndG90YWx3aXRoZHJhd2FsJz40LDI0MSwyOTg8L3NwYW4+DQoJCQkJCQkJCTxoNCBjbGFzcz0idGl0bGUiPlRPVEFMIFdJVEhEUkFXPC9oND4NCgkJCQkJCQk8L2Rpdj4NCgkJCQkJCTwvZGl2Pg0KCQkJCQk8L2Rpdj4NCg0KICAgICAgICAgICAgICANCiAgICAgIDxmb290ZXI+DQoNCiAgICAgICAgPGRpdiBjbGFzcz0iY29udGFpbmVyIj4NCg0KDQogICAgICAgICAgPGRpdiBjbGFzcyA9ICJwLTIwIj4gPC9kaXY+DQoNCiAgICAgICAgIDwhLS0gdGhpcyBpcyB0aGUgaW1hZ2Ugc2VjdGlvbiBmb3IgdGhlIGxvZ28gIC0tPg0KICAgICAgICAgIDxkaXYgY2xhc3MgPSJmb290ZXItbG9nbyBmbG9hdC1sZWZ0Ij4gDQogICAgICAgICAgICA8aW1nIHNyYyA9ImltYWdlcy9sb2dvLnBuZyIgYWx0ID0gIiBiZXN0dHJhZGVycyAgICI+DQogICAgICAgICAgPC9kaXY+DQogICAgICAgICAgPCEtLSB0aGlzIGltYWdlIGlzIGZvciB0aGUgc2VjdXNlIHNzbCAgLS0+DQoNCiAgICAgICAgICAgPGRpdiBjbGFzcyA9ImZvb3Rlci1sb2dvIGZsb2F0LXJpZ2h0Ij4gDQogICAgICAgICAgICA8aW1nIHNyYyA9ImltYWdlcy9zc2wucG5nIiBhbHQgPSAiIGJlc3R0cmFkZXJzICAgIj4NCiAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICA8ZGl2IGNsYXNzID0gImNsZWFyLWZpeCI+IDwvZGl2Pg0KDQogICAgICAgICAgPGhyPg0KDQogICAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcyA9ICJjb2wtbWQtMyBmb290ZXItbGluayI+DQogICAgICAgICAgICAgIDxzcGFuPiBBcmUgeW91IGxvb2tpbmcgZm9yIGEgc3RhYmxlLCANCiAgICAgICAgICAgICAgICByZWxpYWJsZSwgZ3VhcmFudGVlZCB3ZWVrbHkgaW5jb21lPyBiZXN0dHJhZGVycyAgIG9mZmVycyBhIHJhbmdlIG9mIG9wdGlvbnMgDQogICAgICAgICAgICAgICAgdG8gbWFrZSB0aGUgbW9zdCBvZmYgeW91ciBpbnZlc3RtZW50LiBHZXQgaW52b2x2ZWQgdG8gZGlzY292ZXIgdGhlIHBvd2VyIG9mIHRyYWRpbmcuDQogICAgICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgIDxkaXYgY2xhc3MgPSAiY29sLW1kLTYgZm9vdGVyLWxpbmsgZm9vdGVyLWxpc3QiPg0KICAgICAgICAgICAgICAgPGEgaHJlZiA9ICJpbmRleC0yLmh0bWwiPiBIb21lIDwvYT4gDQogICAgICAgICAgICAgICAvDQogICAgICAgICAgICAgICA8YSBocmVmID0gImFib3V0Lmh0bWwiPiBBYm91dCB1cyAgPC9hPg0KICAgICAgICAgICAgICAgICAvDQogICAgICAgICAgICAgICA8YSBocmVmID0gImh0dHBzOi8vdXNlci5iZXN0dHJhZGVyLmxpdmUvcmVnaXN0ZXIiPiBTaWduIHVwICA8L2E+DQogICAgICAgICAgICAgICAgIC8NCiAgICAgICAgICAgICAgIDxhIGhyZWYgPSAiaHR0cHM6Ly91c2VyLmJlc3R0cmFkZXIubGl2ZSI+IExvZ2luICA8L2E+DQogICAgICAgICAgICAgICAgIC8NCiAgICAgICAgICAgICAgIDxhIGhyZWYgPSAiZmFxLmh0bWwiPiBGQVFzICA8L2E+DQogICAgICAgICAgICAgICAgIC8NCiAgICAgICAgICAgICAgIDxhIGhyZWYgPSAidHJhZGUuaHRtbCI+IFRyYWRlICA8L2E+DQogICAgICAgICAgICAgICAgIC8NCiAgICAgICAgICAgICAgIDxhIGhyZWYgPSAiY3J5cHRvLmh0bWwiPiBDcnlwdG9zICA8L2E+DQogICAgICAgICAgICAgICAgIC8NCiAgICAgICAgICAgICAgIDxhIGhyZWYgPSAiaW5kaWNlcy5odG1sIj4gSW5kaWNlcyAgPC9hPg0KICAgICAgICAgICAgICAgICAvDQogICAgICAgICAgICAgICA8YSBocmVmID0gImZvcmV4Lmh0bWwiPiBGb3JleCAgPC9hPg0KICAgICAgICAgICAgICAgICAvDQogICAgICAgICAgICAgICA8YSBocmVmID0gImNvbW1vZGl0aWVzLmh0bWwiPiBFbmVyZ2llcyAgPC9hPg0KICAgICAgICAgICAgICAgICAvDQogICAgICAgICAgICAgICA8YSBocmVmID0gInNoYXJlcy5odG1sIj4gU2hhcmVzICA8L2E+DQogICAgICAgICAgICAgICA8YnIgLz4NCiAgICAgICAgICAgICAgIDxiciAvPg0KICAgICAgICAgICAgICAgPGg2PiBDb250YWN0IEluZm9ybWF0aW9uIDwvaDY+DQogICAgICAgICAgICAgICAgPHNwYW4gc3R5bGUgPSAiZm9udC1zaXplOiAxZW0iPg0KICAgICAgICAgICAgICAgICAgPGEgaHJlZiA9InRlbDorMSAoOTQwKSAyMDItOTgwMiAgIj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJmYSBmYS1waG9uZSBmYS1pY29ucyI+IDwvaT4rMSAoOTQwKSAyMDItOTgwMiAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAvICZuYnNwDQogICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgPHNwYW4gc3R5bGUgPSAiZm9udC1zaXplOiAxZW0iPg0KICAgICAgICAgICAgICAgICAgPGE+DQogICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJmYXMgZmEtbWFwLW1hcmtlci1hbHQiPjwvaT4gMTExMDEgQ2FsaWZvcm5pYSAxLFBvaW50IFJleWVzIFN0YXRpb24sIENhbGlmb3JuaWEgICAgICAgICAgICAgICAgICAgICAgPC9hPg0KICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgICAgICAvICZuYnNwDQoNCg0KICAgICAgICAgICAgICAgIDxzcGFuIHN0eWxlID0gImZvbnQtc2l6ZTogMWVtIj4NCiAgICAgICAgICAgICAgICAgIDxhIGhyZWYgPSJtYWlsdG86c3VwcG9ydEBiZXN0dHJhZGVyLmxpdmUiPg0KICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJmYXMgZmEtZW52ZWxvcGUiPjwvaT4gc3VwcG9ydEBiZXN0dHJhZGVyLmxpdmUgPC9hPg0KICAgICAgICAgICAgICAgIDwvc3Bhbj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgPGRpdiBjbGFzcyA9ICJjb2wtbWQtMyBmb290ZXItbGluayI+DQogICAgICAgICAgICAgICA8c3Bhbj4gQWJvdXQgIGJlc3R0cmFkZXJzICAgICAgPGJyIC8+DQoNCiAgICAgICAgICAgICAgICAgICBiZXN0dHJhZGVycyAgICBpcyB0b3RhbGx5IGRpZmZlcmVudCBmcm9tIGl0cyBjb21wZXRpdG9ycyB0cnlpbmcgdG8gYWNoaWV2ZSBzb21ldGhpbmcgc3BlY2lhbCBzdGFydGluZyB3aXRoIHRoZSANCiAgICAgICAgICAgICAgICAgIHdlYnNpdGUgZGVzaWduLCB0cmFkaW5nIHBsYXRmb3JtLCBhbmQgZXh0cmVtZWx5IGZ1bmN0aW9uYWwuDQoNCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgIDwvZGl2PiA8IS0tIGVuZCBjb250YWluZXIgcm93IC0tPg0KDQogICAgICAgICAgPGJyIC8+IA0KDQogICAgICAgICA8aHI+DQoNCiAgICAgICANCiAgICAgICAgPHAgc3R5bGUgPSAiZm9udC1zaXplOiAuN2VtIj4gDQogICAgICAgICAgPGI+IFJJU0sgV0FSTklORzogPC9iPiAmbmJzcA0KDQogICAgICAgICAgICBUaGUgZmluYW5jaWFsIHByb2R1Y3RzIG9mZmVyZWQgYnkgdGhlIGNvbXBhbnkgaW5jbHVkZSBDb250cmFjdCBmb3IgRGlmZmVyZW5jZSAoQ0ZEcykgYW5kIHRha2Ugbm90ZSBkb24ndCBtYWtlIGFueSBwYXltZW50IHdpdGhvdXQgdGhlIGNvbXBhbnkgZXhwZXJ0IHRyYWRlciBwZXJtaXQgaWYgeW91IGRvIHNvIGl0IGNhbiBjb3N0IGxvc3Qgb2YgeW91ciBpbnZlc3RlZCBjYXBpdGFsIGFsd2F5cyBoZWFyIGZyb20geW91ciBleHBlcnQgdHJhZGVyIGJlZm9yZSB5b3UgcHJvY2VzcyB5b3VyIHBheW1lbnQsIHBsZWFzZSBlbnN1cmUgdG8gdW5kZXJzdGFuZCB0aGUgcmlza3MgaW52b2x2ZWQuDQogICAgICAgIDwvcD4NCg0KICAgICAgIDwvZGl2Pg0KICAgICAgICA8ZGl2IGNsYXNzID0gInAtMjAiPiA8L2Rpdj4NCiAgICAgICANCiAgICAgICA8L2Zvb3Rlcj4NCg0KDQogICAgICAgICAgICAgIDxkaXYgY2xhc3MgPSAibGFzdC13aWRnZXQiPg0KICAgICAgICAgIDwhLS0gVHJhZGluZ1ZpZXcgV2lkZ2V0IEJFR0lOIC0tPg0KPGRpdiBjbGFzcz0idHJhZGluZ3ZpZXctd2lkZ2V0LWNvbnRhaW5lciIgPg0KICAgIDxkaXYgY2xhc3M9InRyYWRpbmd2aWV3LXdpZGdldC1jb250YWluZXJfX3dpZGdldCI+PC9kaXY+DQogICAgDQogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly9zMy50cmFkaW5ndmlldy5jb20vZXh0ZXJuYWwtZW1iZWRkaW5nL2VtYmVkLXdpZGdldC10aWNrZXItdGFwZS5qcyIgYXN5bmM+DQogICAgew0KICAgICJzeW1ib2xzIjogWw0KICAgIHsNCiAgICAgICAgInByb05hbWUiOiAiRlhfSURDOkVVUlVTRCIsDQogICAgICAgICJ0aXRsZSI6ICJFVVIvVVNEIg0KICAgIH0sDQogICAgew0KICAgICAgICAicHJvTmFtZSI6ICJCSVRTVEFNUDpCVENVU0QiLA0KICAgICAgICAidGl0bGUiOiAiQlRDL1VTRCINCiAgICB9LA0KICAgIHsNCiAgICAgICAgInByb05hbWUiOiAiQklUU1RBTVA6RVRIVVNEIiwNCiAgICAgICAgInRpdGxlIjogIkVUSC9VU0QiDQogICAgfQ0KICAgIF0sDQogICAgImNvbG9yVGhlbWUiOiAiZGFyayIsDQogICAgImlzVHJhbnNwYXJlbnQiOiBmYWxzZSwNCiAgICAiZGlzcGxheU1vZGUiOiAiYWRhcHRpdmUiLA0KICAgICJsb2NhbGUiOiAiZW4iDQp9DQogICAgPC9zY3JpcHQ+DQo8L2Rpdj4NCjwhLS0gVHJhZGluZ1ZpZXcgV2lkZ2V0IEVORCAtLT4gICAgICAgPC9kaXY+DQoNCg0KDQo8IS0tU3RhcnQgb2YgVGF3ay50byBTY3JpcHQtLT4NCg0KICAgPCEtLSBTbWFydHN1cHAgTGl2ZSBDaGF0IHNjcmlwdCAtLT4NCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCnZhciBfc21hcnRzdXBwID0gX3NtYXJ0c3VwcCB8fCB7fTsNCl9zbWFydHN1cHAua2V5ID0gJzU2OTQ0OTM1NmUyNmZjZWU0ZDc4ZGM4OTlhNTU5MDg1NTI4MzU4NzInOw0Kd2luZG93LnNtYXJ0c3VwcHx8KGZ1bmN0aW9uKGQpIHsNCiAgdmFyIHMsYyxvPXNtYXJ0c3VwcD1mdW5jdGlvbigpeyBvLl8ucHVzaChhcmd1bWVudHMpfTtvLl89W107DQogIHM9ZC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnc2NyaXB0JylbMF07Yz1kLmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpOw0KICBjLnR5cGU9J3RleHQvamF2YXNjcmlwdCc7Yy5jaGFyc2V0PSd1dGYtOCc7Yy5hc3luYz10cnVlOw0KICBjLnNyYz0naHR0cHM6Ly93d3cuc21hcnRzdXBwY2hhdC5jb20vbG9hZGVyLmpzPyc7cy5wYXJlbnROb2RlLmluc2VydEJlZm9yZShjLHMpOw0KfSkoZG9jdW1lbnQpOw0KPC9zY3JpcHQ+DQo8bm9zY3JpcHQ+IFBvd2VyZWQgYnkgPGEgaHJlZj3igJxodHRwczovL3d3dy5zbWFydHN1cHAuY29t4oCdIHRhcmdldD3igJxfYmxhbmvigJ0+U21hcnRzdXBwPC9hPjwvbm9zY3JpcHQ+DQoNCjwhLS1FbmQgb2YgVGF3ay50byBTY3JpcHQtLT4NCg0KDQoNCiAgIA0KDQoNCg0KICAgIDwhLS0gT3B0aW9uYWwgSmF2YVNjcmlwdCAtLT4NCg0KICAgIDwhLS0galF1ZXJ5IGZpcnN0LCB0aGVuIFBvcHBlci5qcywgdGhlbiBCb290c3RyYXAgSlMgLS0+DQoNCiAgICA8c2NyaXB0IHNyYz0ianMvanF1ZXJ5LXVpLmpzIj48L3NjcmlwdD4NCg0KDQoNCiAgICA8c2NyaXB0IHNyYz0iY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL3BvcHBlci5qcy8xLjE0LjcvdW1kL3BvcHBlci5taW4uanMiID48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgc3JjPSJzdGFja3BhdGguYm9vdHN0cmFwY2RuLmNvbS9ib290c3RyYXAvNC4zLjEvanMvYm9vdHN0cmFwLm1pbi5qcyIgPjwvc2NyaXB0Pg0KDQogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iY29kZS5qcXVlcnkuY29tL2pxdWVyeS1taWdyYXRlLTEuMi4xLm1pbi5qcyI+PC9zY3JpcHQ+DQoNCiAgICAgICAgICAgICAgDQogICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJzbGljay9zbGljay5taW4uanMiPjwvc2NyaXB0Pg0KICAgDQoNCiAgICAgDQoNCg0KDQogICAgPCEtLSB0aGlzIGlzIHRoZSBjb2RlIGZvciB0aGUgY3VzdG9taXplIHNsaWNrIHNsaWRlciAtLT4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9ImpzL2N1c3RvbV9zbGljay5qcyI+IDwvc2NyaXB0Pg0KDQogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0ianMvcmFuZ2UtY3VzdG9tLmpzIj4gPC9zY3JpcHQ+IA0KDQogICAgPCEtLSB0aGlzIGlzIGZvciB0aGUgY291bnRlciAgLS0+DQoNCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJqcy9jb3VudGVyLmpzIj4gPC9zY3JpcHQ+DQoNCiAgICAgDQogICA8c2NyaXB0IHNyYz0iYW9zL2Rpc3QvYW9zLmpzIj48L3NjcmlwdD4NCiAgICA8c2NyaXB0Pg0KDQogICAgICBsZXQgc2Nyb2xsUmVmID0gMDsNCg0KICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIGZ1bmN0aW9uKCkgew0KICAgICAgICAvLyBpbmNyZWFzZSB2YWx1ZSB1cCB0byAxMCwgdGhlbiByZWZyZXNoIEFPUw0KICAgICAgICBzY3JvbGxSZWYgPD0gMTAgPyBzY3JvbGxSZWYrKyA6IEFPUy5yZWZyZXNoKCk7DQogICAgICB9KTsNCg0KICAgICAgQU9TLmluaXQoew0KICAgICAgICAgZHVyYXRpb246IDEyMDAsDQogICAgICB9KTsNCg0KDQogICAgPC9zY3JpcHQ+ICA8L3NlY3Rpb24+IDwhLS0gVGhpcyBpcyB0aGUgZW5kIG9mIHRoZSB3cmFwcGVyIHNlY3Rpb24gLS0+DQogICANCiAgICAgIDxzY3JpcHQ+DQoNCiAgICAgICQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7DQogICAgICAgICAgDQogICAgICAgICAgICAgICAgJChkb2N1bWVudCkuc2Nyb2xsKGZ1bmN0aW9uKCl7DQoNCiAgICAgICAgICAgICAgICBmdW5jdGlvbiBudW1iZXJXaXRoQ29tbWFzKHgpIHsNCiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHgudG9TdHJpbmcoKS5yZXBsYWNlKC9cQig/PShcZHszfSkrKD8hXGQpKS9nLCAiLCIpOw0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgdmFyIG51bSA9IE51bWJlcigkKCIjbXljb3VudGVyIikub2Zmc2V0KCkudG9wKS50b0ZpeGVkKCk7DQogICAgICAgICAgICAgICAgICB2YXIgYm9keUggPSBOdW1iZXIoJCgiaHRtbCIpLnNjcm9sbFRvcCgpKTsNCg0KDQogICAgICAgICAgICAgICAgICB2YXIgdG90YWxJbnZlc3RvcnMgPSAgMTczODMgKyBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiA3MDAgKyAxKTsNCiAgICAgICAgICAgICAgICAgIHZhciB0b3RhbEludmVzdGVkID0gIDExNDU0NTM4ICsgTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMjAwMCArIDEpOw0KICAgICAgICAgICAgICAgICAgdmFyIHRvdGFsd2l0aGRyYXdhbCA9ICA0MjQxMjk4ICsgTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMjUwMCArIDEpOw0KDQogICAgICAgICAgICAgICAgdmFyICBydW5uaW5nID0gZmFsc2U7DQoNCiAgICAgICAgICAgICAgICAgIGlmIChib2R5SCAgPiAgKG51bSAtIDUwMCkgICYmICFydW5uaW5nKSB7DQoNCiAgICAgICAgICAgICAgICAgICAgICAkKCIjdG90YWxpbnZlc3RvcnMiKS50ZXh0KG51bWJlcldpdGhDb21tYXModG90YWxJbnZlc3RvcnMpKTsNCiAgICAgICAgICAgICAgICAgICAgICAkKCIjdG90YWxpbnZlc3RlZCIpLnRleHQobnVtYmVyV2l0aENvbW1hcyh0b3RhbEludmVzdGVkKSk7DQogICAgICAgICAgICAgICAgICAgICAgJCgiI3RvdGFsd2l0aGRyYXdhbCIpLnRleHQobnVtYmVyV2l0aENvbW1hcyh0b3RhbHdpdGhkcmF3YWwpKTsNCiAgICAgICAgICAgICAgICAgICAgICBydW5uaW5nID0gdHJ1ZTsNCiAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgaWYgKGJvZHlIICA8ICAobnVtIC0gNTAwKSApIHsNCiAgICAgICAgICAgICAgICAgICAgICBydW5uaW5nID0gZmFsc2U7DQogICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgfSAgICANCiAgICAgICAgICAgICAgICAgIH0pOw0KDQoNCiAgICAgIH0pOw0KDQoNCg0KICAgICAgPC9zY3JpcHQ+DQogICAgICANCiAgIDwhLS0gYm9keSBzZWN0aW9uIGVuZHMgaGVyZSAgLS0+DQogICANCiAgICA8ZGl2IGlkPSJub3RpZmljYXRpb24iIGNsYXNzPSJub3RpZmljYXRpb24iPg0KCQk8ZGl2IGNsYXNzPSJub3RpZmljYXRpb24tYmxvY2siPg0KCQkJPGRpdiBjbGFzcz0ibm90aWZpY2F0aW9uLWltZyI+DQoJCQkJPCEtLSBZb3VyIGltYWdlIG9yIGljb24gLS0+DQoJCQkJPGkgY2xhc3M9ImZhIGZhLXVzZCIgYXJpYS1oaWRkZW49InRydWUiPjwvaT4NCgkJCQk8IS0tIC8gWW91ciBpbWFnZSBvciBpY29uIC0tPg0KCQkJPC9kaXY+DQoJCQk8ZGl2IGNsYXNzPSJub3RpZmljYXRpb24tdGV4dC1ibG9jayI+DQoJCQkJPGRpdiBjbGFzcz0ibm90aWZpY2F0aW9uLXRpdGxlIj4NCgkJCQkJPCEtLSBOb3RpZmljYXRpb24gVGl0bGUgLS0+DQoJCQkJCUxhdGVzdCBFYXJuaW5ncw0KCQkJCQk8IS0tIC8gTm90aWZpY2F0aW9uIFRpdGxlIC0tPg0KCQkJCTwvZGl2Pg0KCQkJCTxkaXYgY2xhc3M9Im5vdGlmaWNhdGlvbi10ZXh0Ij48L2Rpdj4NCgkJCTwvZGl2Pg0KCQk8L2Rpdj4NCgk8L2Rpdj4NCjwhLS0gPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0ibm90aS9qcXVlcnkuanMiPjwvc2NyaXB0PiAtLT4NCiAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0ibm90aS9mYWtlLmpzIj48L3NjcmlwdD4NCgkNCgk8IS0tIEZha2UgTm90aWZpY2F0aW9ucyBpbnZva2UgLS0+DQoJPHNjcmlwdD4NCgkJJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24gKCkgew0KCQkJJCgnI25vdGlmaWNhdGlvbicpLk5vdGlmaWNhdGlvbih7DQoJCQkJLy8gTm90aWZpY2F0aW9uIHZhcmlibGVzDQoJCQkJVmFyaWJsZTE6IFsiRGlyayIsICJKb2hubnkiLCJFZHdhcmQiLCAiSmFzb24iLCJOaWNob2xhcyIsIlNjb3R0IiwiUmF5bW9uZCIsCSJXYXRraW4gIiwgIkFsZWphbmRybyIsICJWaW5hIiwgIlRvbnkiLCAiQWhtZWQiLCJUYXJpcSIsICJwcml5YSIsIlJPSElUIiwiTWFub2oiLCdQYXJ0aCcsIkphY2tzb24iLCAiTm9haCIsICJBaWRlbiIsICJEYXJyZW4iLCAiSXNhYmVsbGEiLCAiQXJpYSIsICJKb2huIiwgIkdyZXlzb24iLCAiUGV0ZXIiLCAiTG91aXNhIE1heSIsIk5vcm1hbiIsIlJvZ2VyIiwiQWxmcmVkIiwiTW9oYW1tZWQiLCAiV2lsbGlhbSIsDQoJCQkJCSJMdWNhcyIsICJBbWVsaWEiLCAiTWFzb24iLCAiTWF0aGV3IiwgIlJpY2hhcmQiLCAiQ2hyaXMiLCAiTWlhIiwgIk9saXZlciJdLA0KCQkJCVZhcmlibGUyOiBbIlNPVVRIIEFGUklDQSIsIlVTQSIsIlVTQSIsIlVTQSIsIlVTQSIsIlVTQSIsICJVQUUiLCAiSVRBTFkiLCAiRkxPUklEQSIsICJNRVhJQ08iLCAiSU5ESUEiLCAiSU5ESUEiLCAiSU5ESUEiLCAiSU5ESUEiLCAiSU5ESUEiLCAiSU5ESUEiLCAiSU5ESUEiLCAiSU5ESUEiLCAiSU5ESUEiLCAiQ0hJTkEiLCAiQ0FNQk9ESUEiLCAiVU5JVEVEIEtJTkdET00iLCJVTklURUQgS0lOR0RPTSIsIlVOSVRFRCBLSU5HRE9NIiwiVU5JVEVEIEtJTkdET00iLCJVTklURUQgS0lOR0RPTSIsIlVOSVRFRCBLSU5HRE9NIiwgIkdFUk1BTlkiLCAiQVVTVFJBTElBIiwgIkJBTkdMQURFU0giLCAiU1dFREVOIiwgIlBBS0lTVEFOIiwgIk1BTERJVkVTIiwgIlNFWUNIRUxMRVMiLA0KCQkJCQkJIkJPTElWSUEiLCJTT1VUSCBBRlJJQ0EiLCAiWkFNQklBIiwgIlpJTUJBQldFIiwgIkxFQkFORVNFIiwgIlNBVURJIEFSQUJJQSIsICJDSElMRSIsICJQRVVUTyBSSUNPIl0sDQoNCgkJCQlBbW91bnQ6IFsxMDAxOSwgMTMyNTAwLDE1NTUwLCAyNjY2MCwgMjQ0NDksIDEzMzMyLCAzMzMzNCwxNDIwMl0sDQoJCQkJQ29udGVudDogJ1tWYXJpYmxlMV0gZnJvbSBbVmFyaWJsZTJdIGhhcyBqdXN0IEVhcm5lZCA8Yj4kIFtBbW91bnRdPC9iPi4nLA0KCQkJCS8vIFRpbWVyDQoJCQkJU2hvdzogWydzdGFibGUnLCA1LCAxMF0sDQoJCQkJQ2xvc2U6IDUsDQoJCQkJVGltZTogWzAsIDIzXSwNCgkJCQkvLyBOb3RpZmljYXRpb24gc3R5bGUgDQoJCQkJTG9jYXRpb25Ub3A6IFt0cnVlLCAnMjAlJ10sDQoJCQkJTG9jYXRpb25Cb3R0b206IFtmYWxzZSwgJzEwJSddLA0KCQkJCUxvY2F0aW9uUmlnaHQ6IFtmYWxzZSwgJzEwJSddLA0KCQkJCUxvY2F0aW9uTGVmdDogW3RydWUsICcxMHB4J10sDQoJCQkJQmFja2dyb3VuZDogJyMwMDAwMDAnLA0KCQkJCUJvcmRlclJhZGl1czogNSwNCgkJCQlCb3JkZXJXaWR0aDogMCwNCgkJCQlCb3JkZXJDb2xvcjogJyMwMDAwMDAnLA0KCQkJCVRleHRDb2xvcjogJ3doaXRlJywNCgkJCQlJY29uQ29sb3I6ICcjZmZmZmZmJywNCgkJCQkvLyBOb3RpZmljYXRpb24gQW5pbWF0ZWQgICANCgkJCQlBbmltYXRpb25FZmZlY3RPcGVuOiAnc2xpZGVJblVwJywNCgkJCQlBbmltYXRpb25FZmZlY3RDbG9zZTogJ3NsaWRlT3V0RG93bicsDQoJCQkJLy8gTnVtYmVyIG9mIG5vdGlmaWNhdGlvbnMNCgkJCQlOdW1iZXI6IDQwLA0KCQkJCS8vIE5vdGlmaWNhdGlvbiBsaW5rDQoJCQkJTGluazogW3RydWUsICdpbmRleC0yLmh0bWwnLCAnJ10NCg0KCQkJfSk7DQoNCg0KCQl9KTsNCg0KCTwvc2NyaXB0Pg0KDQo8L2JvZHk+DQoNCjxzY3JpcHQgc3JjPSIvL2NvZGUuaml2b3NpdGUuY29tL3dpZGdldC9CZHR3U3F4Sk80IiBhc3luYz48L3NjcmlwdD4NCg0KPCEtLSBNaXJyb3JlZCBmcm9tIGJlc3R0cmFkZXIubGl2ZS8gYnkgSFRUcmFjayBXZWJzaXRlIENvcGllci8zLnggW1hSJkNPJzIwMTRdLCBTdW4sIDEzIE1hciAyMDIyIDA4OjQ4OjA2IEdNVCAtLT4NCg0KPCEtLSBNaXJyb3JlZCBmcm9tIGJlc3R0cmFkZXIubGl2ZS8gYnkgSFRUcmFjayBXZWJzaXRlIENvcGllci8zLnggW1hSJkNPJzIwMTRdLCBTdW4sIDA5IE9jdCAyMDIyIDE1OjIzOjI3IEdNVCAtLT4NCjwvaHRtbD4NCg=="}},"time_used":468,"timings":{"blocked":-1,"dns":2,"connect":93,"send":0,"wait":185,"receive":0,"ssl":188},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/slick/fonts/slick.woff","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:17.100Z","timestamp":1785126257100,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /slick/fonts/slick.woff HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/slick/slick-theme.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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:17 GMT\r\ncontent-type: font/woff\r\ncontent-length: 1380\r\nlast-modified: Sat, 07 Oct 2023 09:01:37 GMT\r\netag: \"65211e71-564\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":1380,"size_decoded":1628,"mime_type":"font/woff","magic":"Web Open Font Format, CFF, length 1380, version 1.0","md5":"b7c9e1e479de3b53f1e4e30ebac2403a","sha1":"af91c12f0f406a4f801aeb3b398768fe41d8f864","sha256":"26726bac4060abb1226e6ceebc1336e84930fe7a7af1b3895a109d067f5b5dcc","sha512":"976f6e9d65859b1a5e3bbd426441e6885d1912f5694f40e2897b10f46b3bd0c7d940f7917a6050d6bb8cdeaaa5e5f0332391d3d398f6c21ce27299dfc7036911","ssdeep":"","tlshash":"cb21a55dbda5eb19fe9ed376738497e1bb1e849db2a20246990e2e3db280040a880655","first_seen":"2023-04-05T04:33:55Z","last_seen":"2026-07-27T06:56:53.354191Z","times_seen":25341,"resource_available":false,"data":"d09GRk9UVE8AAAVkAAsAAAAAB1wAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABDRkYgAAABCAAAAi4AAAKbH/pWDkZGVE0AAAM4AAAAGgAAABxt0civR0RFRgAAA1QAAAAcAAAAIAAyAARPUy8yAAADcAAAAFIAAABgUBj/rmNtYXAAAAPEAAAAUAAAAWIiC0SwaGVhZAAABBQAAAAuAAAANgABMftoaGVhAAAERAAAABwAAAAkA+UCA2htdHgAAARgAAAADgAAAA4ESgBKbWF4cAAABHAAAAAGAAAABgAFUABuYW1lAAAEeAAAANwAAAFuBSeBwnBvc3QAAAVUAAAAEAAAACAAAwABeJw9ks9vEkEUx2cpWyeUoFYgNkHi2Wt7N3rVm3cTs3UVLC4LxIWEQvi1P3i7O1tYLJDAmlgKGEhQrsajf0j7J3jYTXrQWUrMJG+++b55n5e8NwwKBhHDMLv5kxT3ATEBxKBn3qOAl9zxHgb1MAPhHQgHkyF08Gr/L8B/Eb6zWnmCJ7AJVLubQOheArXvJ1A4EXi6j4I+Zg9F0QFKvsnlBCmXeve+sFEnb/nCptdtQ4QYhVFRAT1HrF8UQK/RL/SbmUbclsvGVFXRZKDHUE38cc4qpkbAAsuwiImvro+ufcfaOIQ6szlrmjRJDaKZKnbjN3GWKIbiIzRFUfCffuxxKOL+3LDlDVvx2TdxN84qZEsnhNBa6pgm2dAsnzbLsETdsmRFxUeHV4e+I2/ptN8TyqV8T3Dt29t7EYOuajVIw2y1Wy3M86w0zg/Fz2IvawmQAUHOVrPVfLkoScVynsqsTG0MGUs4z55nh3mnOJa+li+rl9WpPIcFfDubDeaDC+fLBdYN3QADzLauGfj4B6sZmq6CCpqmtSvF0qlUl2qf5AJIUCSlTqlb7lUG+LRfGzZGzZEyBgccMu6MuqPecNDvD4Y9Kjtj4gD+DsvKVMTcMdtqtZtmkzQstQvYje7Syep0PDSAhSOeHYXYWThEF//A/0YvYV1fSQtpKU5STtrhbQ444OtpKSWJIg3pOg8cBs7maTY1EZf07aq+hjWs7IWzdCYTGhb2CtZ47x+Uhx28AAB4nGNgYGBkAIJz765vANHnCyvqYTQAWnkHswAAeJxjYGRgYOADYgkGEGBiYARCFjAG8RgABHYAN3icY2BmYmCcwMDKwMHow5jGwMDgDqW/MkgytDAwMDGwcjKAQQMDAyOQUmCAgoA01xQGB4ZExUmMD/4/YNBjvP3/NgNEDQPjbbBKBQZGADfLDgsAAHicY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQzMCQqKClOUJz0/z9YHRLv/+L7D+8V3cuHmgAHjGwM6ELUByxUMIOZCmbgAAA5LQ8XeJxjYGRgYABiO68w73h+m68M3EwMIHC+sKIeTqsyqDLeZrwN5HIwgKUB/aYJUgAAeJxjYGRgYLzNwMCgx8QAAkA2IwMqYAIAMGIB7QIAAAACAAAlACUAJQAlAAAAAFAAAAUAAHicbY49asNAEIU/2ZJDfkiRIvXapUFCEqpcptABUrg3ZhEiQoKVfY9UqVLlGDlADpAT5e16IUWysMz3hjfzBrjjjQT/EjKpCy+4YhN5yZoxcirPe+SMWz4jr6S+5UzSa3VuwpTnBfc8RF7yxDZyKs9r5IxHPiKv1P9iZqDnyAvMQ39UecbScVb/gJO03Xk4CFom3XYK1clhMdQUlKo7/d9NF13RkIdfy+MV7TSe2sl11tRFaXYmJKpWTd7kdVnJ8veevZKc+n3I93t9Jnvr5n4aTVWU/0z9AI2qMkV4nGNgZkAGjAxoAAAAjgAF"}},"time_used":113,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":113,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.228Z","timestamp":1785126257228,"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-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/ticker-tape/?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 04:24:17 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: a685a1928bf7b0a9ad44fbf2c864dde0\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":1168,"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-27T07:05:45.439566Z","times_seen":4418,"resource_available":false,"data":"LnR2LWVtYmVkLXdpZGdldC13cmFwcGVye2JhY2tncm91bmQ6IzAwMDA7aGVpZ2h0OjEwMCU7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjEwMCU7d2lkdGg6MH0udHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2hlYWRlcntmb250LXNpemU6MTNweDtsaW5lLWhlaWdodDozNHB4O3RleHQtYWxpZ246Y2VudGVyfS50di1lbWJlZC13aWRnZXQtd3JhcHBlcl9faGVhZGVyIHN2Z3toZWlnaHQ6MTVweDttYXJnaW4taW5saW5lLWVuZDo1cHg7dmVydGljYWwtYWxpZ246dGV4dC10b3A7d2lkdGg6MjZweH0udHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2xvZ28tbGluaywudHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2xvZ28tbGluazp2aXNpdGVke2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kKX0udHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2JvZHl7YmFja2dyb3VuZDp2YXIoLS10di13aWRnZXQtYmFja2dyb3VuZC1jb2xvcix2YXIoLS1jb2xvci1iZy1wcmltYXJ5KSk7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWRpdmlkZXIpO2JvcmRlci1yYWRpdXM6M3B4O2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MXB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDtoZWlnaHQ6MTAwJTtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmV9LnR2LWVtYmVkLXdpZGdldC13cmFwcGVyX19ib2R5LS1vdmVyZmxvd19hdXRve292ZXJmbG93OmF1dG99aHRtbC5pcy10cmFuc3BhcmVudCAudHYtZW1iZWQtd2lkZ2V0LXdyYXBwZXJfX2JvZHl7YmFja2dyb3VuZDojMDAwMH1odG1sLmlzLXRyYW5zcGFyZW50IC50di1lbWJlZC13aWRnZXQtd3JhcHBlcl9fYm9keTpub3QoLnR2LWVtYmVkLXdpZGdldC13cmFwcGVyX19ib2R5LS1ib3JkZXItb24tdHJhbnNwYXJlbnQpe2JvcmRlci13aWR0aDowfQ=="}},"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.tradingview-widget.com/static/bundles/embed/38002.86d280feeabab698360b.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.312Z","timestamp":1785126257312,"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-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/38002.86d280feeabab698360b.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/crypto-mkt-screener/?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 04:24:17 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: \"6a323c19-493\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Wed, 17 Jun 2026 06:18:01 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/17/2026 11:16:00\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 9a59ccdf6d055688653b3ef2a46a927f\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":1171,"size_decoded":1246,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (1171), with no line terminators","md5":"c5625ab18e2e939c0e7a1aaf8335d885","sha1":"476f700790695056f483a7540cca9876b7ec9b44","sha256":"109dfa81449a46405b7bbad3bb1fe38d13168125084d9486a17269580fa11d1e","sha512":"b0d0814df65da6664845b9aa6212db20c3810f795432ea14ecfb6d89b44ed9dea6826d34c2c7d74e8042a33898c9eb1e143d41e0f9534c42b5a733a1bf91139d","ssdeep":"","tlshash":"ff21df02d15010d8a0ffb368edd1976e8329e0c7e52f09dda1692f75d2817782b6df41","first_seen":"2026-03-24T19:47:05.239918Z","last_seen":"2026-07-27T07:07:14.017916Z","times_seen":1519,"resource_available":false,"data":"LnNiLWlubmVyLXNoYWRvd3tiYWNrZ3JvdW5kOnZhcigtLWNvbG9yLWJnLXByaW1hcnkpO2JvdHRvbTotMTBweDtib3gtc2hhZG93OjAgMCA1cHggIzAwMDAwMDI2O2hlaWdodDoxMHB4O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246YWJzb2x1dGU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xMTY2NjY2N3MgZWFzZSx0cmFuc2Zvcm0gLjExNjY2NjY3cyBlYXNlO3dpZHRoOjEwMCU7ei1pbmRleDo1fS5zYi1pbm5lci1zaGFkb3cudG9we2JveC1zaGFkb3c6MCAwIDVweCAjMDAwMDAwMjY7dG9wOi0xMHB4fS5zYi1pbm5lci1zaGFkb3cuaS1pbnZpc2libGV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoNXB4KX0uc2ItaW5uZXItc2hhZG93LmktaW52aXNpYmxlLnRvcHt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNXB4KX0uc2ItaW5uZXItc2hhZG93LmktaW52aXNpYmxle29wYWNpdHk6MH0uc2Itc2Nyb2xsYmFye2luc2V0LWlubGluZS1lbmQ6MXB4O29wYWNpdHk6MDtwb3NpdGlvbjphYnNvbHV0ZSFpbXBvcnRhbnQ7dG9wOjczcHg7dHJhbnNpdGlvbjpvcGFjaXR5IC4zczt3aWR0aDo3cHg7ei1pbmRleDoxfS5zYi1zY3JvbGxiYXIuYWN0aXZlLC5zYi1zY3JvbGxiYXIuYWN0aXZlLWFsd2F5c3tvcGFjaXR5OjF9LnNiLXNjcm9sbGJhcl9fY29udGVudC13cmFwcGVyLS1zY3JvbGwtaW5pdGVke3Bvc2l0aW9uOnJlbGF0aXZlfS5zYi1zY3JvbGxiYXJfX2NvbnRlbnQtLXNjcm9sbC1pbml0ZWR7cG9zaXRpb246YWJzb2x1dGV9LnNiLXNjcm9sbGJhci13cmFwe2hlaWdodDoxMDAlO2luc2V0LWlubGluZS1lbmQ6MXB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3dpZHRoOjZweDt6LWluZGV4OjF9LnNiLXNjcm9sbGJhci13cmFwIC5zYi1zY3JvbGxiYXJ7aW5zZXQtaW5saW5lLWVuZDowfS5zYi1zY3JvbGxiYXItYm9keXtiYWNrZ3JvdW5kOnZhcigtLWNvbG9yLXNiLXNjcm9sbGJhci1ib2R5LWJnKTtib3JkZXI6MDt3aWR0aDo2cHh9LmdyYXkgLnNiLXNjcm9sbGJhci1ib2R5e2JhY2tncm91bmQ6Izc1NzU3YTtib3JkZXItY29sb3I6Izc1NzU3YTtib3JkZXItcmFkaXVzOjNweH0uc2Itc2Nyb2xsYmFyLWJvdHRvbSwuc2Itc2Nyb2xsYmFyLXRvcHtkaXNwbGF5Om5vbmV9LmFjdGl2ZS1hbHdheXMuZ3JheSwuZ3JheXtvcGFjaXR5Oi41fQ=="}},"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-sheriff.tradingview-widget.com/sheriff/api/v1/rules/search?origin=https%3A%2F%2Fbesttrader.live","fqdn":"widget-sheriff.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"143.204.238.28","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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.681Z","timestamp":1785126257681,"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":"*.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%2Fbesttrader.live 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/3 204 \r\nx-amz-cf-pop: ARN53-P4\r\ndate: Mon, 27 Jul 2026 04:24:18 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 9a21c1acba3e1e78a8f3c7a89ede6be8.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\nalt-svc: h3=\":443\"; ma=86400\r\nx-amz-cf-id: ydUzPsvh8uxqAvc6ST9003K3ZgrOTK4yRpLjvgSYNEJwfZhKagpIsw==\r\n\r\n","headers":null,"cookies":null,"status_code":"204","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":0,"size_decoded":555,"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-27T07:04:52.530819Z","times_seen":17558191,"resource_available":true,"data":""}},"time_used":463,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":463,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCETC.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.629Z","timestamp":1785126258629,"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 /crypto/XTVCETC.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 04:24:18 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: \"f89c07c45e994e658ea909c45574f2c5\"\r\nlast-modified: Wed, 08 Sep 2021 09:04:25 GMT\r\ncdn-cachedat: 08/09/2025 14:29:52\r\nx-amz-id-2: MTUmWCOoDVphe61LydiTsio3DTG/8kgSGrPMyHrgd55ZPb3r7ablaaXCK64do3UMN6yDpkVBjLw=\r\nx-amz-request-id: BMZ9D8RPH5TTS7J7\r\nx-amz-meta-hash: f89c07c45e994e658ea909c45574f2c5\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: 99eacde25db19bafc459668d7d6a675c\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":329,"size_decoded":1126,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (329), with no line terminators","md5":"f89c07c45e994e658ea909c45574f2c5","sha1":"54a317c7edc734e1b4cdde52b7ca2c0fc5b9a47e","sha256":"a3919d1229c7868bff41b90188ebb7c7584ee2ce5bf2e4dc2ee01aa1ecd2de20","sha512":"85ce34efc95baf502324f0d975a2d785b44722f9552c98c1042cf7fb20657cfc2b35cbd6f4f031d760ce1b8c4812f09fb786fca13daba1aa9e8b6b444c11cb86","ssdeep":"","tlshash":"78e026e557a85808ba02c7952f682487409ab0b9929d82eab1a15964a2a4ecb2818d48","first_seen":"2023-05-02T00:44:00Z","last_seen":"2026-07-27T07:05:43.345568Z","times_seen":1385,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjMDFDODUzIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTUuMTQ0IDguMzIzbDMuODkzLTEuNjE0IDMuNzY2IDEuNjU3TDkuMDI3IDIuNSA1LjE0NCA4LjMyM3ptLjAxIDEuNzkzbDMuODgzIDIuMjJMMTMgMTAuMTE3IDkuMDc1IDE1LjVsLTMuOTItNS4zODR6TTkuMDQ5IDcuNWwzLjk0MSAxLjcyNy0zLjk0MSAyLjE2N0w1IDkuMThsNC4wNTMtMS42OGgtLjAwNXoiIGZpbGw9IiNmZmYiLz48L3N2Zz4="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCKITE.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.670Z","timestamp":1785126258670,"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 /crypto/XTVCKITE.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 04:24:18 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: \"10f9a4275a37bb27772d42ccb32890eb\"\r\nlast-modified: Wed, 21 Jan 2026 16:21:56 GMT\r\nx-amz-id-2: ga7t31HnGRvAWl90A5YVLh/Kwh31SBXIyRor1vtJF6pesQG3zP46DB+y/od3kGUdLM+YMDqBnEU=\r\nx-amz-request-id: 2536JN6WX2X2E0QD\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 10f9a4275a37bb27772d42ccb32890eb\r\ncdn-proxyver: 1.43\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 01/21/2026 16:44:05\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 1fb40979e22fc3deb4a70d97fb33f37c\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":1696,"size_decoded":1847,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1696), with no line terminators","md5":"10f9a4275a37bb27772d42ccb32890eb","sha1":"c564f6ac2097931984233d2533db26ca811feba2","sha256":"4898b59c424367a36a2aa59b48089ad8f383613654f5102e3a6a2ccef51ecba1","sha512":"145dd27e10b86c33cfb404c5d0ef1800cb3b1c0538a053e4ac3b452c7a5a36dd0b77bb7efe7c2327f1d4245f42d73b119fc91ca116099864adbdf6b3ad7eb543","ssdeep":"","tlshash":"a831f176e648c6fd8883c6addf728174120f90e6f1ff87e458ba876c204a8c6d815954","first_seen":"2026-01-21T20:11:03.040839Z","last_seen":"2026-07-27T07:05:43.332231Z","times_seen":451,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTEuOTUgNy41OGEuOTYuOTYgMCAwIDEtLjY2LjI1QzEwLjUyIDcuOCAxMCA3LjE0IDEwLjIgNi40Yy4wNi0uMS4xLS4yMy4xNy0uMzIuMzQtLjQ1IDEtLjYgMS40OC0uM2ExLjUzIDEuNTMgMCAwIDEgLjM3LjM5Yy4yNi41NS4xNiAxLjAyLS4yOCAxLjQyWiIgZmlsbD0iI0RFRDhDQyIvPjxwYXRoIGQ9Ik0xMS40IDVjLjUzIDAgMS4wNS4zNiAxLjM0Ljc5LjI5LjQyLjI5LjgxLjIzIDEuMzdsLS4xNSAxLjMtLjI5IDIuMjktLjE4IDEuNTNjLS4wNC4zNi0uMTYuNy0uMzYgMWExLjcgMS43IDAgMCAxLTIuNzggMCAyLjcxIDIuNzEgMCAwIDEtLjMtLjYyYy0uMjQtLjYzLS40My0xLjEtLjczLTEuNjMtLjMtLjUyLS42OC0uOS0xLjE3LTEuMi0uNi0uMzctMS4yNS0uNi0xLjg3LS44NS0uNjMtLjI3LTEtLjctMS4xLTEuMzNhMS42IDEuNiAwIDAgMSAuNDItMS40MmMuMy0uMzIuNjMtLjUgMS4wMi0uNTVsMS4yNi0uMTYgMi4xNS0uMjYuNzMtLjFjLjQ2LS4wNC43OC0uMDkgMS4xNy0uMTQuMi0uMDIuNC0uMDIuNi0uMDJabS0uNTcgNi4xNmExLjEgMS4xIDAgMCAwLS45NC4yMyAxLjE1IDEuMTUgMCAwIDAtLjE4IDEuNTQgMSAxIDAgMCAwIC42Mi40Yy40OS4xMi44OS0uMDMgMS4yLS40NS4xNi0uMjUuMjItLjUuMTgtLjc4YTEuMSAxLjEgMCAwIDAtLjg4LS45NFpNNi4wNCA2LjNjLS40LS4wNS0uOCAwLTEuMDguMzMtLjMzLjI2LS4zNy44LS4yMyAxLjE1LjI3LjcgMS4wOC45MyAxLjcuNS40LS4zNS41My0uNzcuMzgtMS4yNGEuOTguOTggMCAwIDAtLjI1LS40MyAxLjMyIDEuMzIgMCAwIDAtLjQzLS4yOS40LjQgMCAwIDAtLjA5LS4wMlptNS44Mi0uNTNhMS4xMyAxLjEzIDAgMCAwLTEuNDguM2MtLjA3LjA5LS4xMS4yMS0uMTcuMzItLjIuNzUuMzEgMS40MSAxLjA4IDEuNDQuMjMuMDEuNDUtLjA3LjY2LS4yNS40NC0uNC41NC0uODcuMjgtMS40MmExLjUzIDEuNTMgMCAwIDAtLjM4LS4zOFoiIGZpbGw9InVybCgjYSkiLz48cGF0aCBkPSJNNi40NCA4LjI4Yy0uNjMuNDMtMS40NC4yLTEuNzEtLjUtLjE0LS4zNS0uMS0uODkuMjMtMS4xNS4yOS0uMzMuNjctLjM4IDEuMDgtLjMzYS40LjQgMCAwIDEgLjEuMDJjLjE0LjA2LjI4LjE1LjQyLjI5LjExLjEuMi4yNS4yNS40My4xNS40Ny4wMy44OS0uMzcgMS4yNFpNMTEuNTIgMTIuODhjLS4zLjQyLS43LjU3LTEuMi40NWExIDEgMCAwIDEtLjYtLjRjLS4xNi0uMi0uMjMtLjQ0LS4yMi0uNyAwLS4zMi4xNC0uNi40LS44NC4yOS0uMjIuNi0uMy45My0uMjMuNDcuMS44MS40Ni44OC45NC4wNC4yNy0uMDIuNTMtLjE5Ljc4WiIgZmlsbD0iI0NEQzJCMCIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0iYSIgeDE9IjEyLjM3IiB5MT0iNS4zNiIgeDI9IjYuMzgiIHkyPSIxMS45NiIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiNEM0NCQkIiLz48c3RvcCBvZmZzZXQ9Ii40NiIgc3RvcC1jb2xvcj0iI0I5QUI5MyIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI0E4OTU3OCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjwvc3ZnPg=="}},"time_used":1,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":1,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCSC.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.742Z","timestamp":1785126258742,"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 /crypto/XTVCSC.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 04:24:18 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: \"676190b7b50b2373690a97cb561bcd03\"\r\nlast-modified: Wed, 08 Sep 2021 09:05:21 GMT\r\ncdn-cachedat: 08/09/2025 14:29:30\r\nx-amz-id-2: vfTZ8qYBOOFDVXpuNSao9z91BdfxMQ2nmcsv/brTj7vKTWKuKhNWrOG+NyrLCBkKVNkfownHPn0=\r\nx-amz-request-id: SEJ0MZ4WWZ0TCR8B\r\nx-amz-meta-hash: 676190b7b50b2373690a97cb561bcd03\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: e91ce1e009813cd0701dcad5656cf432\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":274,"size_decoded":1080,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with no line terminators","md5":"676190b7b50b2373690a97cb561bcd03","sha1":"41db3f9160bb4689330048cc892e29cd8d0bfede","sha256":"8c39627f39dab16ebf4aa271ed0680ea4858ecdf661520e81f7ee1d07a48fd4d","sha512":"c88727762591454147db0ffe292fdcbbed2e61fb7dd2b57f2bda1df1d03d520210226167b06158b02a32a9f7761c683f20a3a679e21338778488d950e5d38120","ssdeep":"","tlshash":"0cd02bf99314c54cf88182bc77bc54e2414f60c6a28955c8f1a71939f3045d79c80349","first_seen":"2023-05-02T00:44:00Z","last_seen":"2026-07-27T05:33:43.45896Z","times_seen":326,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjMTVENDdCIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMTEuNSAxMS41VjlBMi41IDIuNSAwIDEwOSAxMS41aDIuNXpNOSA0YTUgNSAwIDAwMCAxMGg0LjQxMmEuNTg4LjU4OCAwIDAwLjU4OC0uNTg4VjlhNSA1IDAgMDAtNS01eiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg=="}},"time_used":4,"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":"s3-symbol-logo.tradingview.com/crypto/XTVCFIL.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.640Z","timestamp":1785126258640,"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 /crypto/XTVCFIL.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 04:24:18 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: \"c3a90b925259999fdc8f465e6463e91d\"\r\nlast-modified: Wed, 08 Sep 2021 09:02:48 GMT\r\ncdn-cachedat: 08/14/2025 09:11:40\r\nx-amz-id-2: aSqF0BsHEv+qKj7Tm09TxVJsv8FnagtPDR544zEc1QK2Ud3dfLLQYH72cjVPvkQM0KGC1kS7AzU=\r\nx-amz-request-id: 35CNGH1M2XAVVEKJ\r\nx-amz-meta-hash: c3a90b925259999fdc8f465e6463e91d\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: 2297296134a46a2153dbf56d20858617\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":891,"size_decoded":1395,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (891), with no line terminators","md5":"c3a90b925259999fdc8f465e6463e91d","sha1":"dfa9e3af49a789aaeb616045a656c51c5e88af3b","sha256":"09b1216c25f0d316510c6a708f28000c308583f683b415504b41741f84a72a30","sha512":"00082e4a7370ff8113e7da100e4f341ed4150ed8a15fead239635349117d9f3c0da50171be04aa9823ef6729c23586cf1057581c5517fe6c30bf0429fc3c0e03","ssdeep":"","tlshash":"ed110ca77321e78cf988c5ace713cdd95057a0a3a67ed0d189aadf04264b5c6fa30c5c","first_seen":"2023-05-02T00:44:00Z","last_seen":"2026-07-27T07:05:43.30778Z","times_seen":1381,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjMDA5MEZGIiBkPSJNMCAwaDE4djE4SDB6Ii8+PHBhdGggZD0iTTkuNzE4IDguMTQybC0uMjQ2IDEuMTcyIDIuMzM4LjI5My0uMTY0LjU1LTIuMjk3LS4yOTNjLS4xNjQuNDc2LS4yNDYuOTg5LS40NTIgMS40MjgtLjIwNS41MTMtLjQxIDEuMDI2LS42NTYgMS41MDJhMi4xOSAyLjE5IDAgMDEtMS42ODIgMS4xNzNjLS40NTEuMDczLS45NDQuMDM2LTEuMzEzLS4yMi0uMTIzLS4wNzMtLjI0Ni0uMjItLjI0Ni0uMzMgMC0uMTQ2LS4wMDMtLjMxOC4yMDUtLjQwMy4yMDgtLjA4NC4yOTQtLjAyNS40MS4wMzcuMTIzLjExLjI0Ny4yNTYuMzI5LjQwMy4yNDYuMjkzLjU3NC4zMy45MDIuMTEuMzctLjI5My41NzUtLjY5Ni42OTgtMS4xLjI0Ni0uODc5LjQ5Mi0xLjcyMS42OTctMi42di0uMTQ3bC0yLjE3NC0uMjkzLjA4Mi0uNTUgMi4yNTYuMjk0LjI4Ny0xLjEzNi0yLjMzOC0uMzMuMDgyLS41ODYgMi40Mi4yOTNjLjA4Mi0uMjIuMTIzLS40MDMuMjA2LS41ODYuMjA1LS42Ni40MS0xLjMxOS45MDItMS45MDUuNDkyLS41ODYgMS4wNjctLjk1MiAxLjkyOC0uOTE1LjM3IDAgLjczOS4xMS45ODUuMzY2LjA0LjAzNi4xMjMuMTEuMTIzLjE4MyAwIC4xNDcgMCAuMzMtLjEyMy40NC0uMTY0LjExLS4zNy4wNzMtLjUzMy0uMDc0LS4xMjMtLjExLS4yMDUtLjIyLS4zMjktLjMzLS4yNDYtLjI5Mi0uNjE1LS4zMy0uOTAyLS4wNzMtLjIwNS4xODQtLjQxLjQ0LS41MzQuNjk2LS4yODcuNzctLjQ5MiAxLjU3Ni0uNzc5IDIuMzgybDIuMjU2LjI5My0uMTY0LjU1LTIuMTc0LS4yOTR6IiBmaWxsPSIjZmZmIi8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCDEGEN4.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.750Z","timestamp":1785126258750,"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 /crypto/XTVCDEGEN4.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 04:24:18 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: \"fd8ce72bbd68899ffe8c0c3e6c839e72\"\r\nlast-modified: Fri, 16 Aug 2024 01:11:52 GMT\r\ncdn-cachedat: 08/09/2025 14:29:30\r\nx-amz-id-2: kRS4cQZsc1XDTfNwmlrUcslwlsmS9D+1OsZuUOh+lfdDgzb82JsfW/MpZmJdj52ndoYD6F87WZU=\r\nx-amz-request-id: H289T7RH19561VET\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: fd8ce72bbd68899ffe8c0c3e6c839e72\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: 9c6bee889e0d9231d621e5c5db48e67a\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":1043,"size_decoded":1486,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1043), with no line terminators","md5":"fd8ce72bbd68899ffe8c0c3e6c839e72","sha1":"0f9bbe78a9c198e60518fde6fb60c48f34f81de6","sha256":"836dd46fbadff22e2690d6ad464c6d3ea1db5cc77eafd1c9f765fd64d8cf9cd1","sha512":"9350d4c8448934b360ba052db90b3758d47c894722afec9015d3066c957ef6c5868573613fa32715262f520d6cb2ba9a2ef4108852a64484d2784ca08eb5995c","ssdeep":"","tlshash":"9f11ccb5611ce32e5953e20cdb318960738f70b9318e94d45defd7b8e80b8a6e9a3854","first_seen":"2026-06-05T07:21:33.199969Z","last_seen":"2026-07-27T07:05:43.273512Z","times_seen":176,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNBMzZFRkUiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNOS42NyA1YTE2MC41OSAxNjAuNTkgMCAwIDAtMS4zNCAwIDE2LjE3IDE2LjE3IDAgMCAwLTEuODEuMTIuNjYuNjYgMCAwIDAtLjI3LjA4Yy0uMTguMTItLjI2LjMtLjI1LjU1YTYuNjUgNi42NSAwIDAgMCAuMDUuNzZsLjAyLjM2YTI3My40OCAyNzMuNDggMCAwIDEgLjE2IDIuMzZBNi4yNiA2LjI2IDAgMCAwIDkgOS44YTEzLjU4IDEzLjU4IDAgMCAwIC45OC0uMDZjLjA5IDAgLjItLjAyLjMxLS4wNGE2LjI4IDYuMjggMCAwIDAgMS40OC0uNDZsLjAyLS4xYTI3My4zMyAyNzMuMzMgMCAwIDEgLjItMy4zOWMuMDItLjI0LS4wNi0uNDMtLjI0LS41NGEuNjcuNjcgMCAwIDAtLjI3LS4wOUExNi4xNSAxNi4xNSAwIDAgMCA5LjY4IDVabTIuNDcgNi4wM2MtLjc4LjU3LTEuODMuODYtMy4xNC44NmE1LjIxIDUuMjEgMCAwIDEtMy4xNC0uODYgMS44NiAxLjg2IDAgMCAxLS4zLS4yNi4zMy4zMyAwIDAgMS0uMDctLjJsLS4wMi0uNmEuMDcuMDcgMCAwIDAtLjA0LS4wNmwtLjMzLS4xN2ExLjQ3IDEuNDcgMCAwIDAtLjMzLS4xNi41OC41OCAwIDAgMC0uNTYuMTUuNjUuNjUgMCAwIDAtLjIuNTNjLjAxLjMyLjEyLjY0LjM0Ljk1LjE4LjI4LjQzLjUzLjczLjc1LjMzLjI1LjY5LjQ0IDEuMDcuNTguODYuMyAxLjguNDYgMi44NS40NiAxLjA0IDAgMi0uMTUgMi44NS0uNDYuMzgtLjE0Ljc0LS4zMyAxLjA3LS41Ny4zLS4yMy41NS0uNDguNzMtLjc2LjIxLS4zMS4zMy0uNjMuMzUtLjk1YS42NS42NSAwIDAgMC0uMi0uNTMuNTguNTggMCAwIDAtLjU3LS4xNSAyNS42NiAyNS42NiAwIDAgMS0uNjYuMzMuMDcuMDcgMCAwIDAtLjA0LjA3YzAgLjE2IDAgLjM2LS4wMi41OSAwIC4wOC0uMDMuMTUtLjA4LjItLjA3LjEtLjE3LjE4LS4yOS4yNloiIGZpbGw9IiM0QzI4OTYiLz48L3N2Zz4="}},"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":"besttrader.live/js/jquery.cycle.all.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.035Z","timestamp":1785126256035,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /js/jquery.cycle.all.js HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\r\nSec-Fetch-Dest: script\r\nSec-Fetch-Mode: no-cors\r\nSec-Fetch-Site: same-origin\r\nPriority: u=2\r\nPragma: no-cache\r\nCache-Control: no-cache\r\n\r\n","headers":null,"cookies":null,"method":"GET"},"response":{"raw":"HTTP/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: W/\"65211e70-c9fb\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":51707,"size_decoded":13095,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text","md5":"d05046f4210171ca35db9d8ecea96e39","sha1":"4b25d2063f39b9984498c8f73f868a989d1ef34b","sha256":"e7d3b93f1acfc40949cc4449e84ee9b452d16af13761f7dc0b35179c262d28d0","sha512":"504eecab22044ed30bc4b3b46b74eff705d327b8208a25c75a57aa7ac26e12da10c3b0467fbd7dd723a3374f6f875a4b60fed40e5794b5de2378c043e7ea37a0","ssdeep":"1536:CSOtJJMVoWVLzBjotwM6GjLs7ytfGoANjwaW0+F:C3twM6+smtkdwayF","tlshash":"c833980c934ddb1a96763257ab5bd8cd2e7cc023e9068c79b8ed45dd278082c7217de9","first_seen":"2023-03-09T10:05:20Z","last_seen":"2026-07-27T04:25:12.816409Z","times_seen":195,"resource_available":true,"data":"CjsoZnVuY3Rpb24oJCwgdW5kZWZpbmVkKSB7CiJ1c2Ugc3RyaWN0IjsKCnZhciB2ZXIgPSAnMy4wLjMnOwoKZnVuY3Rpb24gZGVidWcocykgewoJaWYgKCQuZm4uY3ljbGUuZGVidWcpCgkJbG9nKHMpOwp9CQkKZnVuY3Rpb24gbG9nKCkgewoJLypnbG9iYWwgY29uc29sZSAqLwoJaWYgKHdpbmRvdy5jb25zb2xlICYmIGNvbnNvbGUubG9nKQoJCWNvbnNvbGUubG9nKCdbY3ljbGVdICcgKyBBcnJheS5wcm90b3R5cGUuam9pbi5jYWxsKGFyZ3VtZW50cywnICcpKTsKfQokLmV4cHJbJzonXS5wYXVzZWQgPSBmdW5jdGlvbihlbCkgewoJcmV0dXJuIGVsLmN5Y2xlUGF1c2U7Cn07CgoKLy8gdGhlIG9wdGlvbnMgYXJnIGNhbiBiZS4uLgovLyAgIGEgbnVtYmVyICAtIGluZGljYXRlcyBhbiBpbW1lZGlhdGUgdHJhbnNpdGlvbiBzaG91bGQgb2NjdXIgdG8gdGhlIGdpdmVuIHNsaWRlIGluZGV4Ci8vICAgYSBzdHJpbmcgIC0gJ3BhdXNlJywgJ3Jlc3VtZScsICd0b2dnbGUnLCAnbmV4dCcsICdwcmV2JywgJ3N0b3AnLCAnZGVzdHJveScgb3IgdGhlIG5hbWUgb2YgYSB0cmFuc2l0aW9uIGVmZmVjdCAoaWUsICdmYWRlJywgJ3pvb20nLCBldGMpCi8vICAgYW4gb2JqZWN0IC0gcHJvcGVydGllcyB0byBjb250cm9sIHRoZSBzbGlkZXNob3cKLy8KLy8gdGhlIGFyZzIgYXJnIGNhbiBiZS4uLgovLyAgIHRoZSBuYW1lIG9mIGFuIGZ4IChvbmx5IHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCBhIG51bWVyaWMgdmFsdWUgZm9yICdvcHRpb25zJykKLy8gICB0aGUgdmFsdWUgdHJ1ZSAob25seSB1c2VkIGluIGZpcnN0IGFyZyA9PSAncmVzdW1lJykgYW5kIGluZGljYXRlcwovLwkgdGhhdCB0aGUgcmVzdW1lIHNob3VsZCBvY2N1ciBpbW1lZGlhdGVseSAobm90IHdhaXQgZm9yIG5leHQgdGltZW91dCkKCiQuZm4uY3ljbGUgPSBmdW5jdGlvbihvcHRpb25zLCBhcmcyKSB7Cgl2YXIgbyA9IHsgczogdGhpcy5zZWxlY3RvciwgYzogdGhpcy5jb250ZXh0IH07CgoJLy8gaW4gMS4zKyB3ZSBjYW4gZml4IG1pc3Rha2VzIHdpdGggdGhlIHJlYWR5IHN0YXRlCglpZiAodGhpcy5sZW5ndGggPT09IDAgJiYgb3B0aW9ucyAhPSAnc3RvcCcpIHsKCQlpZiAoISQuaXNSZWFkeSAmJiBvLnMpIHsKCQkJbG9nKCdET00gbm90IHJlYWR5LCBxdWV1aW5nIHNsaWRlc2hvdycpOwoJCQkkKGZ1bmN0aW9uKCkgewoJCQkJJChvLnMsby5jKS5jeWNsZShvcHRpb25zLGFyZzIpOwoJCQl9KTsKCQkJcmV0dXJuIHRoaXM7CgkJfQoJCS8vIGlzIHlvdXIgRE9NIHJlYWR5PyAgaHR0cDovL2RvY3MuanF1ZXJ5LmNvbS9UdXRvcmlhbHM6SW50cm9kdWNpbmdfJChkb2N1bWVudCkucmVhZHkoKQoJCWxvZygndGVybWluYXRpbmc7IHplcm8gZWxlbWVudHMgZm91bmQgYnkgc2VsZWN0b3InICsgKCQuaXNSZWFkeSA/ICcnIDogJyAoRE9NIG5vdCByZWFkeSknKSk7CgkJcmV0dXJuIHRoaXM7Cgl9CgoJLy8gaXRlcmF0ZSB0aGUgbWF0Y2hlZCBub2Rlc2V0CglyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCkgewoJCXZhciBvcHRzID0gaGFuZGxlQXJndW1lbnRzKHRoaXMsIG9wdGlvbnMsIGFyZzIpOwoJCWlmIChvcHRzID09PSBmYWxzZSkKCQkJcmV0dXJuOwoKCQlvcHRzLnVwZGF0ZUFjdGl2ZVBhZ2VyTGluayA9IG9wdHMudXBkYXRlQWN0aXZlUGFnZXJMaW5rIHx8ICQuZm4uY3ljbGUudXBkYXRlQWN0aXZlUGFnZXJMaW5rOwoJCQoJCS8vIHN0b3AgZXhpc3Rpbmcgc2xpZGVzaG93IGZvciB0aGlzIGNvbnRhaW5lciAoaWYgdGhlcmUgaXMgb25lKQoJCWlmICh0aGlzLmN5Y2xlVGltZW91dCkKCQkJY2xlYXJUaW1lb3V0KHRoaXMuY3ljbGVUaW1lb3V0KTsKCQl0aGlzLmN5Y2xlVGltZW91dCA9IHRoaXMuY3ljbGVQYXVzZSA9IDA7CgkJdGhpcy5jeWNsZVN0b3AgPSAwOyAvLyBpc3N1ZSAjMTA4CgoJCXZhciAkY29udCA9ICQodGhpcyk7CgkJdmFyICRzbGlkZXMgPSBvcHRzLnNsaWRlRXhwciA/ICQob3B0cy5zbGlkZUV4cHIsIHRoaXMpIDogJGNvbnQuY2hpbGRyZW4oKTsKCQl2YXIgZWxzID0gJHNsaWRlcy5nZXQoKTsKCgkJaWYgKGVscy5sZW5ndGggPCAyKSB7CgkJCWxvZygndGVybWluYXRpbmc7IHRvbyBmZXcgc2xpZGVzOiAnICsgZWxzLmxlbmd0aCk7CgkJCXJldHVybjsKCQl9CgoJCXZhciBvcHRzMiA9IGJ1aWxkT3B0aW9ucygkY29udCwgJHNsaWRlcywgZWxzLCBvcHRzLCBvKTsKCQlpZiAob3B0czIgPT09IGZhbHNlKQoJCQlyZXR1cm47CgoJCXZhciBzdGFydFRpbWUgPSBvcHRzMi5jb250aW51b3VzID8gMTAgOiBnZXRUaW1lb3V0KGVsc1tvcHRzMi5jdXJyU2xpZGVdLCBlbHNbb3B0czIubmV4dFNsaWRlXSwgb3B0czIsICFvcHRzMi5iYWNrd2FyZHMpOwoKCQkvLyBpZiBpdCdzIGFuIGF1dG8gc2xpZGVzaG93LCBraWNrIGl0IG9mZgoJCWlmIChzdGFydFRpbWUpIHsKCQkJc3RhcnRUaW1lICs9IChvcHRzMi5kZWxheSB8fCAwKTsKCQkJaWYgKHN0YXJ0VGltZSA8IDEwKQoJCQkJc3RhcnRUaW1lID0gMTA7CgkJCWRlYnVnKCdmaXJzdCB0aW1lb3V0OiAnICsgc3RhcnRUaW1lKTsKCQkJdGhpcy5jeWNsZVRpbWVvdXQgPSBzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Z28oZWxzLG9wdHMyLDAsIW9wdHMuYmFja3dhcmRzKTt9LCBzdGFydFRpbWUpOwoJCX0KCX0pOwp9OwoKZnVuY3Rpb24gdHJpZ2dlclBhdXNlKGNvbnQsIGJ5SG92ZXIsIG9uUGFnZXIpIHsKCXZhciBvcHRzID0gJChjb250KS5kYXRhKCdjeWNsZS5vcHRzJyk7CglpZiAoIW9wdHMpCgkJcmV0dXJuOwoJdmFyIHBhdXNlZCA9ICEhY29udC5jeWNsZVBhdXNlOwoJaWYgKHBhdXNlZCAmJiBvcHRzLnBhdXNlZCkKCQlvcHRzLnBhdXNlZChjb250LCBvcHRzLCBieUhvdmVyLCBvblBhZ2VyKTsKCWVsc2UgaWYgKCFwYXVzZWQgJiYgb3B0cy5yZXN1bWVkKQoJCW9wdHMucmVzdW1lZChjb250LCBvcHRzLCBieUhvdmVyLCBvblBhZ2VyKTsKfQoKLy8gcHJvY2VzcyB0aGUgYXJncyB0aGF0IHdlcmUgcGFzc2VkIHRvIHRoZSBwbHVnaW4gZm4KZnVuY3Rpb24gaGFuZGxlQXJndW1lbnRzKGNvbnQsIG9wdGlvbnMsIGFyZzIpIHsKCWlmIChjb250LmN5Y2xlU3RvcCA9PT0gdW5kZWZpbmVkKQoJCWNvbnQuY3ljbGVTdG9wID0gMDsKCWlmIChvcHRpb25zID09PSB1bmRlZmluZWQgfHwgb3B0aW9ucyA9PT0gbnVsbCkKCQlvcHRpb25zID0ge307CglpZiAob3B0aW9ucy5jb25zdHJ1Y3RvciA9PSBTdHJpbmcpIHsKCQlzd2l0Y2gob3B0aW9ucykgewoJCWNhc2UgJ2Rlc3Ryb3knOgoJCWNhc2UgJ3N0b3AnOgoJCQl2YXIgb3B0cyA9ICQoY29udCkuZGF0YSgnY3ljbGUub3B0cycpOwoJCQlpZiAoIW9wdHMpCgkJCQlyZXR1cm4gZmFsc2U7CgkJCWNvbnQuY3ljbGVTdG9wKys7IC8vIGNhbGxiYWNrcyBsb29rIGZvciBjaGFuZ2UKCQkJaWYgKGNvbnQuY3ljbGVUaW1lb3V0KQoJCQkJY2xlYXJUaW1lb3V0KGNvbnQuY3ljbGVUaW1lb3V0KTsKCQkJY29udC5jeWNsZVRpbWVvdXQgPSAwOwoJCQlpZiAob3B0cy5lbGVtZW50cykKCQkJCSQob3B0cy5lbGVtZW50cykuc3RvcCgpOwoJCQkkKGNvbnQpLnJlbW92ZURhdGEoJ2N5Y2xlLm9wdHMnKTsKCQkJaWYgKG9wdGlvbnMgPT0gJ2Rlc3Ryb3knKQoJCQkJZGVzdHJveShjb250LCBvcHRzKTsKCQkJcmV0dXJuIGZhbHNlOwoJCWNhc2UgJ3RvZ2dsZSc6CgkJCWNvbnQuY3ljbGVQYXVzZSA9IChjb250LmN5Y2xlUGF1c2UgPT09IDEpID8gMCA6IDE7CgkJCWNoZWNrSW5zdGFudFJlc3VtZShjb250LmN5Y2xlUGF1c2UsIGFyZzIsIGNvbnQpOwoJCQl0cmlnZ2VyUGF1c2UoY29udCk7CgkJCXJldHVybiBmYWxzZTsKCQljYXNlICdwYXVzZSc6CgkJCWNvbnQuY3ljbGVQYXVzZSA9IDE7CgkJCXRyaWdnZXJQYXVzZShjb250KTsKCQkJcmV0dXJuIGZhbHNlOwoJCWNhc2UgJ3Jlc3VtZSc6CgkJCWNvbnQuY3ljbGVQYXVzZSA9IDA7CgkJCWNoZWNrSW5zdGFudFJlc3VtZShmYWxzZSwgYXJnMiwgY29udCk7CgkJCXRyaWdnZXJQYXVzZShjb250KTsKCQkJcmV0dXJuIGZhbHNlOwoJCWNhc2UgJ3ByZXYnOgoJCWNhc2UgJ25leHQnOgoJCQlvcHRzID0gJChjb250KS5kYXRhKCdjeWNsZS5vcHRzJyk7CgkJCWlmICghb3B0cykgewoJCQkJbG9nKCdvcHRpb25zIG5vdCBmb3VuZCwgInByZXYvbmV4dCIgaWdub3JlZCcpOwoJCQkJcmV0dXJuIGZhbHNlOwoJCQl9CgkJCWlmICh0eXBlb2YgYXJnMiA9PSAnc3RyaW5nJykgCgkJCQlvcHRzLm9uZVRpbWVGeCA9IGFyZzI7CgkJCSQuZm4uY3ljbGVbb3B0aW9uc10ob3B0cyk7CgkJCXJldHVybiBmYWxzZTsKCQlkZWZhdWx0OgoJCQlvcHRpb25zID0geyBmeDogb3B0aW9ucyB9OwoJCX0KCQlyZXR1cm4gb3B0aW9uczsKCX0KCWVsc2UgaWYgKG9wdGlvbnMuY29uc3RydWN0b3IgPT0gTnVtYmVyKSB7CgkJLy8gZ28gdG8gdGhlIHJlcXVlc3RlZCBzbGlkZQoJCXZhciBudW0gPSBvcHRpb25zOwoJCW9wdGlvbnMgPSAkKGNvbnQpLmRhdGEoJ2N5Y2xlLm9wdHMnKTsKCQlpZiAoIW9wdGlvbnMpIHsKCQkJbG9nKCdvcHRpb25zIG5vdCBmb3VuZCwgY2FuIG5vdCBhZHZhbmNlIHNsaWRlJyk7CgkJCXJldHVybiBmYWxzZTsKCQl9CgkJaWYgKG51bSA8IDAgfHwgbnVtID49IG9wdGlvbnMuZWxlbWVudHMubGVuZ3RoKSB7CgkJCWxvZygnaW52YWxpZCBzbGlkZSBpbmRleDogJyArIG51bSk7CgkJCXJldHVybiBmYWxzZTsKCQl9CgkJb3B0aW9ucy5uZXh0U2xpZGUgPSBudW07CgkJaWYgKGNvbnQuY3ljbGVUaW1lb3V0KSB7CgkJCWNsZWFyVGltZW91dChjb250LmN5Y2xlVGltZW91dCk7CgkJCWNvbnQuY3ljbGVUaW1lb3V0ID0gMDsKCQl9CgkJaWYgKHR5cGVvZiBhcmcyID09ICdzdHJpbmcnKQoJCQlvcHRpb25zLm9uZVRpbWVGeCA9IGFyZzI7CgkJZ28ob3B0aW9ucy5lbGVtZW50cywgb3B0aW9ucywgMSwgbnVtID49IG9wdGlvbnMuY3VyclNsaWRlKTsKCQlyZXR1cm4gZmFsc2U7Cgl9CglyZXR1cm4gb3B0aW9uczsKCQoJZnVuY3Rpb24gY2hlY2tJbnN0YW50UmVzdW1lKGlzUGF1c2VkLCBhcmcyLCBjb250KSB7CgkJaWYgKCFpc1BhdXNlZCAmJiBhcmcyID09PSB0cnVlKSB7IC8vIHJlc3VtZSBub3chCgkJCXZhciBvcHRpb25zID0gJChjb250KS5kYXRhKCdjeWNsZS5vcHRzJyk7CgkJCWlmICghb3B0aW9ucykgewoJCQkJbG9nKCdvcHRpb25zIG5vdCBmb3VuZCwgY2FuIG5vdCByZXN1bWUnKTsKCQkJCXJldHVybiBmYWxzZTsKCQkJfQoJCQlpZiAoY29udC5jeWNsZVRpbWVvdXQpIHsKCQkJCWNsZWFyVGltZW91dChjb250LmN5Y2xlVGltZW91dCk7CgkJCQljb250LmN5Y2xlVGltZW91dCA9IDA7CgkJCX0KCQkJZ28ob3B0aW9ucy5lbGVtZW50cywgb3B0aW9ucywgMSwgIW9wdGlvbnMuYmFja3dhcmRzKTsKCQl9Cgl9Cn0KCmZ1bmN0aW9uIHJlbW92ZUZpbHRlcihlbCwgb3B0cykgewoJaWYgKCEkLnN1cHBvcnQub3BhY2l0eSAmJiBvcHRzLmNsZWFydHlwZSAmJiBlbC5zdHlsZS5maWx0ZXIpIHsKCQl0cnkgeyBlbC5zdHlsZS5yZW1vdmVBdHRyaWJ1dGUoJ2ZpbHRlcicpOyB9CgkJY2F0Y2goc21vdGhlcikge30gLy8gaGFuZGxlIG9sZCBvcGVyYSB2ZXJzaW9ucwoJfQp9CgovLyB1bmJpbmQgZXZlbnQgaGFuZGxlcnMKZnVuY3Rpb24gZGVzdHJveShjb250LCBvcHRzKSB7CglpZiAob3B0cy5uZXh0KQoJCSQob3B0cy5uZXh0KS51bmJpbmQob3B0cy5wcmV2TmV4dEV2ZW50KTsKCWlmIChvcHRzLnByZXYpCgkJJChvcHRzLnByZXYpLnVuYmluZChvcHRzLnByZXZOZXh0RXZlbnQpOwoJCglpZiAob3B0cy5wYWdlciB8fCBvcHRzLnBhZ2VyQW5jaG9yQnVpbGRlcikKCQkkLmVhY2gob3B0cy5wYWdlckFuY2hvcnMgfHwgW10sIGZ1bmN0aW9uKCkgewoJCQl0aGlzLnVuYmluZCgpLnJlbW92ZSgpOwoJCX0pOwoJb3B0cy5wYWdlckFuY2hvcnMgPSBudWxsOwoJJChjb250KS51bmJpbmQoJ21vdXNlZW50ZXIuY3ljbGUgbW91c2VsZWF2ZS5jeWNsZScpOwoJaWYgKG9wdHMuZGVzdHJveSkgLy8gY2FsbGJhY2sKCQlvcHRzLmRlc3Ryb3kob3B0cyk7Cn0KCi8vIG9uZS10aW1lIGluaXRpYWxpemF0aW9uCmZ1bmN0aW9uIGJ1aWxkT3B0aW9ucygkY29udCwgJHNsaWRlcywgZWxzLCBvcHRpb25zLCBvKSB7Cgl2YXIgc3RhcnRpbmdTbGlkZVNwZWNpZmllZDsKCS8vIHN1cHBvcnQgbWV0YWRhdGEgcGx1Z2luICh2MS4wIGFuZCB2Mi4wKQoJdmFyIG9wdHMgPSAkLmV4dGVuZCh7fSwgJC5mbi5jeWNsZS5kZWZhdWx0cywgb3B0aW9ucyB8fCB7fSwgJC5tZXRhZGF0YSA/ICRjb250Lm1ldGFkYXRhKCkgOiAkLm1ldGEgPyAkY29udC5kYXRhKCkgOiB7fSk7Cgl2YXIgbWV0YSA9ICQuaXNGdW5jdGlvbigkY29udC5kYXRhKSA/ICRjb250LmRhdGEob3B0cy5tZXRhQXR0cikgOiBudWxsOwoJaWYgKG1ldGEpCgkJb3B0cyA9ICQuZXh0ZW5kKG9wdHMsIG1ldGEpOwoJaWYgKG9wdHMuYXV0b3N0b3ApCgkJb3B0cy5jb3VudGRvd24gPSBvcHRzLmF1dG9zdG9wQ291bnQgfHwgZWxzLmxlbmd0aDsKCgl2YXIgY29udCA9ICRjb250WzBdOwoJJGNvbnQuZGF0YSgnY3ljbGUub3B0cycsIG9wdHMpOwoJb3B0cy4kY29udCA9ICRjb250OwoJb3B0cy5zdG9wQ291bnQgPSBjb250LmN5Y2xlU3RvcDsKCW9wdHMuZWxlbWVudHMgPSBlbHM7CglvcHRzLmJlZm9yZSA9IG9wdHMuYmVmb3JlID8gW29wdHMuYmVmb3JlXSA6IFtdOwoJb3B0cy5hZnRlciA9IG9wdHMuYWZ0ZXIgPyBbb3B0cy5hZnRlcl0gOiBbXTsKCgkvLyBwdXNoIHNvbWUgYWZ0ZXIgY2FsbGJhY2tzCglpZiAoISQuc3VwcG9ydC5vcGFjaXR5ICYmIG9wdHMuY2xlYXJ0eXBlKQoJCW9wdHMuYWZ0ZXIucHVzaChmdW5jdGlvbigpIHsgcmVtb3ZlRmlsdGVyKHRoaXMsIG9wdHMpOyB9KTsKCWlmIChvcHRzLmNvbnRpbnVvdXMpCgkJb3B0cy5hZnRlci5wdXNoKGZ1bmN0aW9uKCkgeyBnbyhlbHMsb3B0cywwLCFvcHRzLmJhY2t3YXJkcyk7IH0pOwoKCXNhdmVPcmlnaW5hbE9wdHMob3B0cyk7CgoJLy8gY2xlYXJUeXBlIGNvcnJlY3Rpb25zCglpZiAoISQuc3VwcG9ydC5vcGFjaXR5ICYmIG9wdHMuY2xlYXJ0eXBlICYmICFvcHRzLmNsZWFydHlwZU5vQmcpCgkJY2xlYXJUeXBlRml4KCRzbGlkZXMpOwoKCS8vIGNvbnRhaW5lciByZXF1aXJlcyBub24tc3RhdGljIHBvc2l0aW9uIHNvIHRoYXQgc2xpZGVzIGNhbiBiZSBwb3NpdGlvbiB3aXRoaW4KCWlmICgkY29udC5jc3MoJ3Bvc2l0aW9uJykgPT0gJ3N0YXRpYycpCgkJJGNvbnQuY3NzKCdwb3NpdGlvbicsICdyZWxhdGl2ZScpOwoJaWYgKG9wdHMud2lkdGgpCgkJJGNvbnQud2lkdGgob3B0cy53aWR0aCk7CglpZiAob3B0cy5oZWlnaHQgJiYgb3B0cy5oZWlnaHQgIT0gJ2F1dG8nKQoJCSRjb250LmhlaWdodChvcHRzLmhlaWdodCk7CgoJaWYgKG9wdHMuc3RhcnRpbmdTbGlkZSAhPT0gdW5kZWZpbmVkKSB7CgkJb3B0cy5zdGFydGluZ1NsaWRlID0gcGFyc2VJbnQob3B0cy5zdGFydGluZ1NsaWRlLDEwKTsKCQlpZiAob3B0cy5zdGFydGluZ1NsaWRlID49IGVscy5sZW5ndGggfHwgb3B0cy5zdGFydFNsaWRlIDwgMCkKCQkJb3B0cy5zdGFydGluZ1NsaWRlID0gMDsgLy8gY2F0Y2ggYm9ndXMgaW5wdXQKCQllbHNlIAoJCQlzdGFydGluZ1NsaWRlU3BlY2lmaWVkID0gdHJ1ZTsKCX0KCWVsc2UgaWYgKG9wdHMuYmFja3dhcmRzKQoJCW9wdHMuc3RhcnRpbmdTbGlkZSA9IGVscy5sZW5ndGggLSAxOwoJZWxzZQoJCW9wdHMuc3RhcnRpbmdTbGlkZSA9IDA7CgoJLy8gaWYgcmFuZG9tLCBtaXggdXAgdGhlIHNsaWRlIGFycmF5CglpZiAob3B0cy5yYW5kb20pIHsKCQlvcHRzLnJhbmRvbU1hcCA9IFtdOwoJCWZvciAodmFyIGkgPSAwOyBpIDwgZWxzLmxlbmd0aDsgaSsrKQoJCQlvcHRzLnJhbmRvbU1hcC5wdXNoKGkpOwoJCW9wdHMucmFuZG9tTWFwLnNvcnQoZnVuY3Rpb24oYSxiKSB7cmV0dXJuIE1hdGgucmFuZG9tKCkgLSAwLjU7fSk7CgkJaWYgKHN0YXJ0aW5nU2xpZGVTcGVjaWZpZWQpIHsKCQkJLy8gdHJ5IHRvIGZpbmQgdGhlIHNwZWNpZmllZCBzdGFydGluZyBzbGlkZSBhbmQgaWYgZm91bmQgc2V0IHN0YXJ0IHNsaWRlIGluZGV4IGluIHRoZSBtYXAgYWNjb3JkaW5nbHkKCQkJZm9yICggdmFyIGNudCA9IDA7IGNudCA8IGVscy5sZW5ndGg7IGNudCsrICkgewoJCQkJaWYgKCBvcHRzLnN0YXJ0aW5nU2xpZGUgPT0gb3B0cy5yYW5kb21NYXBbY250XSApIHsKCQkJCQlvcHRzLnJhbmRvbUluZGV4ID0gY250OwoJCQkJfQoJCQl9CgkJfQoJCWVsc2UgewoJCQlvcHRzLnJhbmRvbUluZGV4ID0gMTsKCQkJb3B0cy5zdGFydGluZ1NsaWRlID0gb3B0cy5yYW5kb21NYXBbMV07CgkJfQoJfQoJZWxzZSBpZiAob3B0cy5zdGFydGluZ1NsaWRlID49IGVscy5sZW5ndGgpCgkJb3B0cy5zdGFydGluZ1NsaWRlID0gMDsgLy8gY2F0Y2ggYm9ndXMgaW5wdXQKCW9wdHMuY3VyclNsaWRlID0gb3B0cy5zdGFydGluZ1NsaWRlIHx8IDA7Cgl2YXIgZmlyc3QgPSBvcHRzLnN0YXJ0aW5nU2xpZGU7CgoJLy8gc2V0IHBvc2l0aW9uIGFuZCB6SW5kZXggb24gYWxsIHRoZSBzbGlkZXMKCSRzbGlkZXMuY3NzKHtwb3NpdGlvbjogJ2Fic29sdXRlJywgdG9wOjAsIGxlZnQ6MH0pLmhpZGUoKS5lYWNoKGZ1bmN0aW9uKGkpIHsKCQl2YXIgejsKCQlpZiAob3B0cy5iYWNrd2FyZHMpCgkJCXogPSBmaXJzdCA/IGkgPD0gZmlyc3QgPyBlbHMubGVuZ3RoICsgKGktZmlyc3QpIDogZmlyc3QtaSA6IGVscy5sZW5ndGgtaTsKCQllbHNlCgkJCXogPSBmaXJzdCA/IGkgPj0gZmlyc3QgPyBlbHMubGVuZ3RoIC0gKGktZmlyc3QpIDogZmlyc3QtaSA6IGVscy5sZW5ndGgtaTsKCQkkKHRoaXMpLmNzcygnei1pbmRleCcsIHopOwoJfSk7CgoJLy8gbWFrZSBzdXJlIGZpcnN0IHNsaWRlIGlzIHZpc2libGUKCSQoZWxzW2ZpcnN0XSkuY3NzKCdvcGFjaXR5JywxKS5zaG93KCk7IC8vIG9wYWNpdHkgYml0IG5lZWRlZCB0byBoYW5kbGUgcmVzdGFydCB1c2UgY2FzZQoJcmVtb3ZlRmlsdGVyKGVsc1tmaXJzdF0sIG9wdHMpOwoKCS8vIHN0cmV0Y2ggc2xpZGVzCglpZiAob3B0cy5maXQpIHsKCQlpZiAoIW9wdHMuYXNwZWN0KSB7CgkgICAgICAgIGlmIChvcHRzLndpZHRoKQoJICAgICAgICAgICAgJHNsaWRlcy53aWR0aChvcHRzLndpZHRoKTsKCSAgICAgICAgaWYgKG9wdHMuaGVpZ2h0ICYmIG9wdHMuaGVpZ2h0ICE9ICdhdXRvJykKCSAgICAgICAgICAgICRzbGlkZXMuaGVpZ2h0KG9wdHMuaGVpZ2h0KTsKCQl9IGVsc2UgewoJCQkkc2xpZGVzLmVhY2goZnVuY3Rpb24oKXsKCQkJCXZhciAkc2xpZGUgPSAkKHRoaXMpOwoJCQkJdmFyIHJhdGlvID0gKG9wdHMuYXNwZWN0ID09PSB0cnVlKSA/ICRzbGlkZS53aWR0aCgpLyRzbGlkZS5oZWlnaHQoKSA6IG9wdHMuYXNwZWN0OwoJCQkJaWYoIG9wdHMud2lkdGggJiYgJHNsaWRlLndpZHRoKCkgIT0gb3B0cy53aWR0aCApIHsKCQkJCQkkc2xpZGUud2lkdGgoIG9wdHMud2lkdGggKTsKCQkJCQkkc2xpZGUuaGVpZ2h0KCBvcHRzLndpZHRoIC8gcmF0aW8gKTsKCQkJCX0KCgkJCQlpZiggb3B0cy5oZWlnaHQgJiYgJHNsaWRlLmhlaWdodCgpIDwgb3B0cy5oZWlnaHQgKSB7CgkJCQkJJHNsaWRlLmhlaWdodCggb3B0cy5oZWlnaHQgKTsKCQkJCQkkc2xpZGUud2lkdGgoIG9wdHMuaGVpZ2h0ICogcmF0aW8gKTsKCQkJCX0KCQkJfSk7CgkJfQoJfQoKCWlmIChvcHRzLmNlbnRlciAmJiAoKCFvcHRzLmZpdCkgfHwgb3B0cy5hc3BlY3QpKSB7CgkJJHNsaWRlcy5lYWNoKGZ1bmN0aW9uKCl7CgkJCXZhciAkc2xpZGUgPSAkKHRoaXMpOwoJCQkkc2xpZGUuY3NzKHsKCQkJCSJtYXJnaW4tbGVmdCI6IG9wdHMud2lkdGggPwoJCQkJCSgob3B0cy53aWR0aCAtICRzbGlkZS53aWR0aCgpKSAvIDIpICsgInB4IiA6CgkJCQkJMCwKCQkJCSJtYXJnaW4tdG9wIjogb3B0cy5oZWlnaHQgPwoJCQkJCSgob3B0cy5oZWlnaHQgLSAkc2xpZGUuaGVpZ2h0KCkpIC8gMikgKyAicHgiIDoKCQkJCQkwCgkJCX0pOwoJCX0pOwoJfQoKCWlmIChvcHRzLmNlbnRlciAmJiAhb3B0cy5maXQgJiYgIW9wdHMuc2xpZGVSZXNpemUpIHsKCQkkc2xpZGVzLmVhY2goZnVuY3Rpb24oKXsKCQkJdmFyICRzbGlkZSA9ICQodGhpcyk7CgkJCSRzbGlkZS5jc3MoewoJCQkJIm1hcmdpbi1sZWZ0Ijogb3B0cy53aWR0aCA/ICgob3B0cy53aWR0aCAtICRzbGlkZS53aWR0aCgpKSAvIDIpICsgInB4IiA6IDAsCgkJCQkibWFyZ2luLXRvcCI6IG9wdHMuaGVpZ2h0ID8gKChvcHRzLmhlaWdodCAtICRzbGlkZS5oZWlnaHQoKSkgLyAyKSArICJweCIgOiAwCgkJCX0pOwoJCX0pOwoJfQoJCQoJLy8gc3RyZXRjaCBjb250YWluZXIKCXZhciByZXNoYXBlID0gKG9wdHMuY29udGFpbmVyUmVzaXplIHx8IG9wdHMuY29udGFpbmVyUmVzaXplSGVpZ2h0KSAmJiAkY29udC5pbm5lckhlaWdodCgpIDwgMTsKCWlmIChyZXNoYXBlKSB7IC8vIGRvIHRoaXMgb25seSBpZiBjb250YWluZXIgaGFzIG5vIHNpemUgaHR0cDovL3Rpbnl1cmwuY29tL2RhMm9hOQoJCXZhciBtYXh3ID0gMCwgbWF4aCA9IDA7CgkJZm9yKHZhciBqPTA7IGogPCBlbHMubGVuZ3RoOyBqKyspIHsKCQkJdmFyICRlID0gJChlbHNbal0pLCBlID0gJGVbMF0sIHcgPSAkZS5vdXRlcldpZHRoKCksIGggPSAkZS5vdXRlckhlaWdodCgpOwoJCQlpZiAoIXcpIHcgPSBlLm9mZnNldFdpZHRoIHx8IGUud2lkdGggfHwgJGUuYXR0cignd2lkdGgnKTsKCQkJaWYgKCFoKSBoID0gZS5vZmZzZXRIZWlnaHQgfHwgZS5oZWlnaHQgfHwgJGUuYXR0cignaGVpZ2h0Jyk7CgkJCW1heHcgPSB3ID4gbWF4dyA/IHcgOiBtYXh3OwoJCQltYXhoID0gaCA+IG1heGggPyBoIDogbWF4aDsKCQl9CgkJaWYgKG9wdHMuY29udGFpbmVyUmVzaXplICYmIG1heHcgPiAwICYmIG1heGggPiAwKQoJCQkkY29udC5jc3Moe3dpZHRoOm1heHcrJ3B4JyxoZWlnaHQ6bWF4aCsncHgnfSk7CgkJaWYgKG9wdHMuY29udGFpbmVyUmVzaXplSGVpZ2h0ICYmIG1heGggPiAwKQoJCQkkY29udC5jc3Moe2hlaWdodDptYXhoKydweCd9KTsKCX0KCgl2YXIgcGF1c2VGbGFnID0gZmFsc2U7ICAvLyBodHRwczovL2dpdGh1Yi5jb20vbWFsc3VwL2N5Y2xlL2lzc3Vlcy80NAoJaWYgKG9wdHMucGF1c2UpCgkJJGNvbnQuYmluZCgnbW91c2VlbnRlci5jeWNsZScsIGZ1bmN0aW9uKCl7CgkJCXBhdXNlRmxhZyA9IHRydWU7CgkJCXRoaXMuY3ljbGVQYXVzZSsrOwoJCQl0cmlnZ2VyUGF1c2UoY29udCwgdHJ1ZSk7CgkJfSkuYmluZCgnbW91c2VsZWF2ZS5jeWNsZScsIGZ1bmN0aW9uKCl7CgkJCQlpZiAocGF1c2VGbGFnKQoJCQkJCXRoaXMuY3ljbGVQYXVzZS0tOwoJCQkJdHJpZ2dlclBhdXNlKGNvbnQsIHRydWUpOwoJCX0pOwoKCWlmIChzdXBwb3J0TXVsdGlUcmFuc2l0aW9ucyhvcHRzKSA9PT0gZmFsc2UpCgkJcmV0dXJuIGZhbHNlOwoKCS8vIGFwcGFyZW50bHkgYSBsb3Qgb2YgcGVvcGxlIHVzZSBpbWFnZSBzbGlkZXNob3dzIHdpdGhvdXQgaGVpZ2h0L3dpZHRoIGF0dHJpYnV0ZXMgb24gdGhlIGltYWdlcy4KCS8vIEN5Y2xlIDIuNTArIHJlcXVpcmVzIHRoZSBzaXppbmcgaW5mbyBmb3IgZXZlcnkgc2xpZGU7IHRoaXMgYmxvY2sgdHJpZXMgdG8gZGVhbCB3aXRoIHRoYXQuCgl2YXIgcmVxdWV1ZSA9IGZhbHNlOwoJb3B0aW9ucy5yZXF1ZXVlQXR0ZW1wdHMgPSBvcHRpb25zLnJlcXVldWVBdHRlbXB0cyB8fCAwOwoJJHNsaWRlcy5lYWNoKGZ1bmN0aW9uKCkgewoJCS8vIHRyeSB0byBnZXQgaGVpZ2h0L3dpZHRoIG9mIGVhY2ggc2xpZGUKCQl2YXIgJGVsID0gJCh0aGlzKTsKCQl0aGlzLmN5Y2xlSCA9IChvcHRzLmZpdCAmJiBvcHRzLmhlaWdodCkgPyBvcHRzLmhlaWdodCA6ICgkZWwuaGVpZ2h0KCkgfHwgdGhpcy5vZmZzZXRIZWlnaHQgfHwgdGhpcy5oZWlnaHQgfHwgJGVsLmF0dHIoJ2hlaWdodCcpIHx8IDApOwoJCXRoaXMuY3ljbGVXID0gKG9wdHMuZml0ICYmIG9wdHMud2lkdGgpID8gb3B0cy53aWR0aCA6ICgkZWwud2lkdGgoKSB8fCB0aGlzLm9mZnNldFdpZHRoIHx8IHRoaXMud2lkdGggfHwgJGVsLmF0dHIoJ3dpZHRoJykgfHwgMCk7CgoJCWlmICggJGVsLmlzKCdpbWcnKSApIHsKCQkJdmFyIGxvYWRpbmcgPSAodGhpcy5jeWNsZUggPT09IDAgJiYgdGhpcy5jeWNsZVcgPT09IDAgJiYgIXRoaXMuY29tcGxldGUpOwoJCQkvLyBkb24ndCByZXF1ZXVlIGZvciBpbWFnZXMgdGhhdCBhcmUgc3RpbGwgbG9hZGluZyBidXQgaGF2ZSBhIHZhbGlkIHNpemUKCQkJaWYgKGxvYWRpbmcpIHsKCQkJCWlmIChvLnMgJiYgb3B0cy5yZXF1ZXVlT25JbWFnZU5vdExvYWRlZCAmJiArK29wdGlvbnMucmVxdWV1ZUF0dGVtcHRzIDwgMTAwKSB7IC8vIHRyYWNrIHJldHJ5IGNvdW50IHNvIHdlIGRvbid0IGxvb3AgZm9yZXZlcgoJCQkJCWxvZyhvcHRpb25zLnJlcXVldWVBdHRlbXB0cywnIC0gaW1nIHNsaWRlIG5vdCBsb2FkZWQsIHJlcXVldWluZyBzbGlkZXNob3c6ICcsIHRoaXMuc3JjLCB0aGlzLmN5Y2xlVywgdGhpcy5jeWNsZUgpOwoJCQkJCXNldFRpbWVvdXQoZnVuY3Rpb24oKSB7JChvLnMsby5jKS5jeWNsZShvcHRpb25zKTt9LCBvcHRzLnJlcXVldWVUaW1lb3V0KTsKCQkJCQlyZXF1ZXVlID0gdHJ1ZTsKCQkJCQlyZXR1cm4gZmFsc2U7IC8vIGJyZWFrIGVhY2ggbG9vcAoJCQkJfQoJCQkJZWxzZSB7CgkJCQkJbG9nKCdjb3VsZCBub3QgZGV0ZXJtaW5lIHNpemUgb2YgaW1hZ2U6ICcrdGhpcy5zcmMsIHRoaXMuY3ljbGVXLCB0aGlzLmN5Y2xlSCk7CgkJCQl9CgkJCX0KCQl9CgkJcmV0dXJuIHRydWU7Cgl9KTsKCglpZiAocmVxdWV1ZSkKCQlyZXR1cm4gZmFsc2U7CgoJb3B0cy5jc3NCZWZvcmUgPSBvcHRzLmNzc0JlZm9yZSB8fCB7fTsKCW9wdHMuY3NzQWZ0ZXIgPSBvcHRzLmNzc0FmdGVyIHx8IHt9OwoJb3B0cy5jc3NGaXJzdCA9IG9wdHMuY3NzRmlyc3QgfHwge307CglvcHRzLmFuaW1JbiA9IG9wdHMuYW5pbUluIHx8IHt9OwoJb3B0cy5hbmltT3V0ID0gb3B0cy5hbmltT3V0IHx8IHt9OwoKCSRzbGlkZXMubm90KCc6ZXEoJytmaXJzdCsnKScpLmNzcyhvcHRzLmNzc0JlZm9yZSk7CgkkKCRzbGlkZXNbZmlyc3RdKS5jc3Mob3B0cy5jc3NGaXJzdCk7CgoJaWYgKG9wdHMudGltZW91dCkgewoJCW9wdHMudGltZW91dCA9IHBhcnNlSW50KG9wdHMudGltZW91dCwxMCk7CgkJLy8gZW5zdXJlIHRoYXQgdGltZW91dCBhbmQgc3BlZWQgc2V0dGluZ3MgYXJlIHNhbmUKCQlpZiAob3B0cy5zcGVlZC5jb25zdHJ1Y3RvciA9PSBTdHJpbmcpCgkJCW9wdHMuc3BlZWQgPSAkLmZ4LnNwZWVkc1tvcHRzLnNwZWVkXSB8fCBwYXJzZUludChvcHRzLnNwZWVkLDEwKTsKCQlpZiAoIW9wdHMuc3luYykKCQkJb3B0cy5zcGVlZCA9IG9wdHMuc3BlZWQgLyAyOwoJCQoJCXZhciBidWZmZXIgPSBvcHRzLmZ4ID09ICdub25lJyA/IDAgOiBvcHRzLmZ4ID09ICdzaHVmZmxlJyA/IDUwMCA6IDI1MDsKCQl3aGlsZSgob3B0cy50aW1lb3V0IC0gb3B0cy5zcGVlZCkgPCBidWZmZXIpIC8vIHNhbml0aXplIHRpbWVvdXQKCQkJb3B0cy50aW1lb3V0ICs9IG9wdHMuc3BlZWQ7Cgl9CglpZiAob3B0cy5lYXNpbmcpCgkJb3B0cy5lYXNlSW4gPSBvcHRzLmVhc2VPdXQgPSBvcHRzLmVhc2luZzsKCWlmICghb3B0cy5zcGVlZEluKQoJCW9wdHMuc3BlZWRJbiA9IG9wdHMuc3BlZWQ7CglpZiAoIW9wdHMuc3BlZWRPdXQpCgkJb3B0cy5zcGVlZE91dCA9IG9wdHMuc3BlZWQ7CgoJb3B0cy5zbGlkZUNvdW50ID0gZWxzLmxlbmd0aDsKCW9wdHMuY3VyclNsaWRlID0gb3B0cy5sYXN0U2xpZGUgPSBmaXJzdDsKCWlmIChvcHRzLnJhbmRvbSkgewoJCWlmICgrK29wdHMucmFuZG9tSW5kZXggPT0gZWxzLmxlbmd0aCkKCQkJb3B0cy5yYW5kb21JbmRleCA9IDA7CgkJb3B0cy5uZXh0U2xpZGUgPSBvcHRzLnJhbmRvbU1hcFtvcHRzLnJhbmRvbUluZGV4XTsKCX0KCWVsc2UgaWYgKG9wdHMuYmFja3dhcmRzKQoJCW9wdHMubmV4dFNsaWRlID0gb3B0cy5zdGFydGluZ1NsaWRlID09PSAwID8gKGVscy5sZW5ndGgtMSkgOiBvcHRzLnN0YXJ0aW5nU2xpZGUtMTsKCWVsc2UKCQlvcHRzLm5leHRTbGlkZSA9IG9wdHMuc3RhcnRpbmdTbGlkZSA+PSAoZWxzLmxlbmd0aC0xKSA/IDAgOiBvcHRzLnN0YXJ0aW5nU2xpZGUrMTsKCgkvLyBydW4gdHJhbnNpdGlvbiBpbml0IGZuCglpZiAoIW9wdHMubXVsdGlGeCkgewoJCXZhciBpbml0ID0gJC5mbi5jeWNsZS50cmFuc2l0aW9uc1tvcHRzLmZ4XTsKCQlpZiAoJC5pc0Z1bmN0aW9uKGluaXQpKQoJCQlpbml0KCRjb250LCAkc2xpZGVzLCBvcHRzKTsKCQllbHNlIGlmIChvcHRzLmZ4ICE9ICdjdXN0b20nICYmICFvcHRzLm11bHRpRngpIHsKCQkJbG9nKCd1bmtub3duIHRyYW5zaXRpb246ICcgKyBvcHRzLmZ4LCc7IHNsaWRlc2hvdyB0ZXJtaW5hdGluZycpOwoJCQlyZXR1cm4gZmFsc2U7CgkJfQoJfQoKCS8vIGZpcmUgYXJ0aWZpY2lhbCBldmVudHMKCXZhciBlMCA9ICRzbGlkZXNbZmlyc3RdOwoJaWYgKCFvcHRzLnNraXBJbml0aWFsaXphdGlvbkNhbGxiYWNrcykgewoJCWlmIChvcHRzLmJlZm9yZS5sZW5ndGgpCgkJCW9wdHMuYmVmb3JlWzBdLmFwcGx5KGUwLCBbZTAsIGUwLCBvcHRzLCB0cnVlXSk7CgkJaWYgKG9wdHMuYWZ0ZXIubGVuZ3RoKQoJCQlvcHRzLmFmdGVyWzBdLmFwcGx5KGUwLCBbZTAsIGUwLCBvcHRzLCB0cnVlXSk7Cgl9CglpZiAob3B0cy5uZXh0KQoJCSQob3B0cy5uZXh0KS5iaW5kKG9wdHMucHJldk5leHRFdmVudCxmdW5jdGlvbigpe3JldHVybiBhZHZhbmNlKG9wdHMsMSk7fSk7CglpZiAob3B0cy5wcmV2KQoJCSQob3B0cy5wcmV2KS5iaW5kKG9wdHMucHJldk5leHRFdmVudCxmdW5jdGlvbigpe3JldHVybiBhZHZhbmNlKG9wdHMsMCk7fSk7CglpZiAob3B0cy5wYWdlciB8fCBvcHRzLnBhZ2VyQW5jaG9yQnVpbGRlcikKCQlidWlsZFBhZ2VyKGVscyxvcHRzKTsKCglleHBvc2VBZGRTbGlkZShvcHRzLCBlbHMpOwoKCXJldHVybiBvcHRzOwp9CgovLyBzYXZlIG9mZiBvcmlnaW5hbCBvcHRzIHNvIHdlIGNhbiByZXN0b3JlIGFmdGVyIGNsZWFyaW5nIHN0YXRlCmZ1bmN0aW9uIHNhdmVPcmlnaW5hbE9wdHMob3B0cykgewoJb3B0cy5vcmlnaW5hbCA9IHsgYmVmb3JlOiBbXSwgYWZ0ZXI6IFtdIH07CglvcHRzLm9yaWdpbmFsLmNzc0JlZm9yZSA9ICQuZXh0ZW5kKHt9LCBvcHRzLmNzc0JlZm9yZSk7CglvcHRzLm9yaWdpbmFsLmNzc0FmdGVyICA9ICQuZXh0ZW5kKHt9LCBvcHRzLmNzc0FmdGVyKTsKCW9wdHMub3JpZ2luYWwuYW5pbUluCT0gJC5leHRlbmQoe30sIG9wdHMuYW5pbUluKTsKCW9wdHMub3JpZ2luYWwuYW5pbU91dCAgID0gJC5leHRlbmQoe30sIG9wdHMuYW5pbU91dCk7CgkkLmVhY2gob3B0cy5iZWZvcmUsIGZ1bmN0aW9uKCkgeyBvcHRzLm9yaWdpbmFsLmJlZm9yZS5wdXNoKHRoaXMpOyB9KTsKCSQuZWFjaChvcHRzLmFmdGVyLCAgZnVuY3Rpb24oKSB7IG9wdHMub3JpZ2luYWwuYWZ0ZXIucHVzaCh0aGlzKTsgfSk7Cn0KCmZ1bmN0aW9uIHN1cHBvcnRNdWx0aVRyYW5zaXRpb25zKG9wdHMpIHsKCXZhciBpLCB0eCwgdHhzID0gJC5mbi5jeWNsZS50cmFuc2l0aW9uczsKCS8vIGxvb2sgZm9yIG11bHRpcGxlIGVmZmVjdHMKCWlmIChvcHRzLmZ4LmluZGV4T2YoJywnKSA+IDApIHsKCQlvcHRzLm11bHRpRnggPSB0cnVlOwoJCW9wdHMuZnhzID0gb3B0cy5meC5yZXBsYWNlKC9ccyovZywnJykuc3BsaXQoJywnKTsKCQkvLyBkaXNjYXJkIGFueSBib2d1cyBlZmZlY3QgbmFtZXMKCQlmb3IgKGk9MDsgaSA8IG9wdHMuZnhzLmxlbmd0aDsgaSsrKSB7CgkJCXZhciBmeCA9IG9wdHMuZnhzW2ldOwoJCQl0eCA9IHR4c1tmeF07CgkJCWlmICghdHggfHwgIXR4cy5oYXNPd25Qcm9wZXJ0eShmeCkgfHwgISQuaXNGdW5jdGlvbih0eCkpIHsKCQkJCWxvZygnZGlzY2FyZGluZyB1bmtub3duIHRyYW5zaXRpb246ICcsZngpOwoJCQkJb3B0cy5meHMuc3BsaWNlKGksMSk7CgkJCQlpLS07CgkJCX0KCQl9CgkJLy8gaWYgd2UgaGF2ZSBhbiBlbXB0eSBsaXN0IHRoZW4gd2UgdGhyZXcgZXZlcnl0aGluZyBhd2F5IQoJCWlmICghb3B0cy5meHMubGVuZ3RoKSB7CgkJCWxvZygnTm8gdmFsaWQgdHJhbnNpdGlvbnMgbmFtZWQ7IHNsaWRlc2hvdyB0ZXJtaW5hdGluZy4nKTsKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCX0KCWVsc2UgaWYgKG9wdHMuZnggPT0gJ2FsbCcpIHsgIC8vIGF1dG8tZ2VuIHRoZSBsaXN0IG9mIHRyYW5zaXRpb25zCgkJb3B0cy5tdWx0aUZ4ID0gdHJ1ZTsKCQlvcHRzLmZ4cyA9IFtdOwoJCWZvciAodmFyIHAgaW4gdHhzKSB7CgkJCWlmICh0eHMuaGFzT3duUHJvcGVydHkocCkpIHsKCQkJCXR4ID0gdHhzW3BdOwoJCQkJaWYgKHR4cy5oYXNPd25Qcm9wZXJ0eShwKSAmJiAkLmlzRnVuY3Rpb24odHgpKQoJCQkJCW9wdHMuZnhzLnB1c2gocCk7CgkJCX0KCQl9Cgl9CglpZiAob3B0cy5tdWx0aUZ4ICYmIG9wdHMucmFuZG9taXplRWZmZWN0cykgewoJCS8vIG11bmdlIHRoZSBmeHMgYXJyYXkgdG8gbWFrZSBlZmZlY3Qgc2VsZWN0aW9uIHJhbmRvbQoJCXZhciByMSA9IE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIDIwKSArIDMwOwoJCWZvciAoaSA9IDA7IGkgPCByMTsgaSsrKSB7CgkJCXZhciByMiA9IE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIG9wdHMuZnhzLmxlbmd0aCk7CgkJCW9wdHMuZnhzLnB1c2gob3B0cy5meHMuc3BsaWNlKHIyLDEpWzBdKTsKCQl9CgkJZGVidWcoJ3JhbmRvbWl6ZWQgZnggc2VxdWVuY2U6ICcsb3B0cy5meHMpOwoJfQoJcmV0dXJuIHRydWU7Cn0KCi8vIHByb3ZpZGUgYSBtZWNoYW5pc20gZm9yIGFkZGluZyBzbGlkZXMgYWZ0ZXIgdGhlIHNsaWRlc2hvdyBoYXMgc3RhcnRlZApmdW5jdGlvbiBleHBvc2VBZGRTbGlkZShvcHRzLCBlbHMpIHsKCW9wdHMuYWRkU2xpZGUgPSBmdW5jdGlvbihuZXdTbGlkZSwgcHJlcGVuZCkgewoJCXZhciAkcyA9ICQobmV3U2xpZGUpLCBzID0gJHNbMF07CgkJaWYgKCFvcHRzLmF1dG9zdG9wQ291bnQpCgkJCW9wdHMuY291bnRkb3duKys7CgkJZWxzW3ByZXBlbmQ/J3Vuc2hpZnQnOidwdXNoJ10ocyk7CgkJaWYgKG9wdHMuZWxzKQoJCQlvcHRzLmVsc1twcmVwZW5kPyd1bnNoaWZ0JzoncHVzaCddKHMpOyAvLyBzaHVmZmxlIG5lZWRzIHRoaXMKCQlvcHRzLnNsaWRlQ291bnQgPSBlbHMubGVuZ3RoOwoKCQkvLyBhZGQgdGhlIHNsaWRlIHRvIHRoZSByYW5kb20gbWFwIGFuZCByZXNvcnQKCQlpZiAob3B0cy5yYW5kb20pIHsKCQkJb3B0cy5yYW5kb21NYXAucHVzaChvcHRzLnNsaWRlQ291bnQtMSk7CgkJCW9wdHMucmFuZG9tTWFwLnNvcnQoZnVuY3Rpb24oYSxiKSB7cmV0dXJuIE1hdGgucmFuZG9tKCkgLSAwLjU7fSk7CgkJfQoKCQkkcy5jc3MoJ3Bvc2l0aW9uJywnYWJzb2x1dGUnKTsKCQkkc1twcmVwZW5kPydwcmVwZW5kVG8nOidhcHBlbmRUbyddKG9wdHMuJGNvbnQpOwoKCQlpZiAocHJlcGVuZCkgewoJCQlvcHRzLmN1cnJTbGlkZSsrOwoJCQlvcHRzLm5leHRTbGlkZSsrOwoJCX0KCgkJaWYgKCEkLnN1cHBvcnQub3BhY2l0eSAmJiBvcHRzLmNsZWFydHlwZSAmJiAhb3B0cy5jbGVhcnR5cGVOb0JnKQoJCQljbGVhclR5cGVGaXgoJHMpOwoKCQlpZiAob3B0cy5maXQgJiYgb3B0cy53aWR0aCkKCQkJJHMud2lkdGgob3B0cy53aWR0aCk7CgkJaWYgKG9wdHMuZml0ICYmIG9wdHMuaGVpZ2h0ICYmIG9wdHMuaGVpZ2h0ICE9ICdhdXRvJykKCQkJJHMuaGVpZ2h0KG9wdHMuaGVpZ2h0KTsKCQlzLmN5Y2xlSCA9IChvcHRzLmZpdCAmJiBvcHRzLmhlaWdodCkgPyBvcHRzLmhlaWdodCA6ICRzLmhlaWdodCgpOwoJCXMuY3ljbGVXID0gKG9wdHMuZml0ICYmIG9wdHMud2lkdGgpID8gb3B0cy53aWR0aCA6ICRzLndpZHRoKCk7CgoJCSRzLmNzcyhvcHRzLmNzc0JlZm9yZSk7CgoJCWlmIChvcHRzLnBhZ2VyIHx8IG9wdHMucGFnZXJBbmNob3JCdWlsZGVyKQoJCQkkLmZuLmN5Y2xlLmNyZWF0ZVBhZ2VyQW5jaG9yKGVscy5sZW5ndGgtMSwgcywgJChvcHRzLnBhZ2VyKSwgZWxzLCBvcHRzKTsKCgkJaWYgKCQuaXNGdW5jdGlvbihvcHRzLm9uQWRkU2xpZGUpKQoJCQlvcHRzLm9uQWRkU2xpZGUoJHMpOwoJCWVsc2UKCQkJJHMuaGlkZSgpOyAvLyBkZWZhdWx0IGJlaGF2aW9yCgl9Owp9CgovLyByZXNldCBpbnRlcm5hbCBzdGF0ZTsgd2UgZG8gdGhpcyBvbiBldmVyeSBwYXNzIGluIG9yZGVyIHRvIHN1cHBvcnQgbXVsdGlwbGUgZWZmZWN0cwokLmZuLmN5Y2xlLnJlc2V0U3RhdGUgPSBmdW5jdGlvbihvcHRzLCBmeCkgewoJZnggPSBmeCB8fCBvcHRzLmZ4OwoJb3B0cy5iZWZvcmUgPSBbXTsgb3B0cy5hZnRlciA9IFtdOwoJb3B0cy5jc3NCZWZvcmUgPSAkLmV4dGVuZCh7fSwgb3B0cy5vcmlnaW5hbC5jc3NCZWZvcmUpOwoJb3B0cy5jc3NBZnRlciAgPSAkLmV4dGVuZCh7fSwgb3B0cy5vcmlnaW5hbC5jc3NBZnRlcik7CglvcHRzLmFuaW1Jbgk9ICQuZXh0ZW5kKHt9LCBvcHRzLm9yaWdpbmFsLmFuaW1Jbik7CglvcHRzLmFuaW1PdXQgICA9ICQuZXh0ZW5kKHt9LCBvcHRzLm9yaWdpbmFsLmFuaW1PdXQpOwoJb3B0cy5meEZuID0gbnVsbDsKCSQuZWFjaChvcHRzLm9yaWdpbmFsLmJlZm9yZSwgZnVuY3Rpb24oKSB7IG9wdHMuYmVmb3JlLnB1c2godGhpcyk7IH0pOwoJJC5lYWNoKG9wdHMub3JpZ2luYWwuYWZ0ZXIsICBmdW5jdGlvbigpIHsgb3B0cy5hZnRlci5wdXNoKHRoaXMpOyB9KTsKCgkvLyByZS1pbml0Cgl2YXIgaW5pdCA9ICQuZm4uY3ljbGUudHJhbnNpdGlvbnNbZnhdOwoJaWYgKCQuaXNGdW5jdGlvbihpbml0KSkKCQlpbml0KG9wdHMuJGNvbnQsICQob3B0cy5lbGVtZW50cyksIG9wdHMpOwp9OwoKLy8gdGhpcyBpcyB0aGUgbWFpbiBlbmdpbmUgZm4sIGl0IGhhbmRsZXMgdGhlIHRpbWVvdXRzLCBjYWxsYmFja3MgYW5kIHNsaWRlIGluZGV4IG1nbXQKZnVuY3Rpb24gZ28oZWxzLCBvcHRzLCBtYW51YWwsIGZ3ZCkgewoJdmFyIHAgPSBvcHRzLiRjb250WzBdLCBjdXJyID0gZWxzW29wdHMuY3VyclNsaWRlXSwgbmV4dCA9IGVsc1tvcHRzLm5leHRTbGlkZV07CgoJLy8gb3B0cy5idXN5IGlzIHRydWUgaWYgd2UncmUgaW4gdGhlIG1pZGRsZSBvZiBhbiBhbmltYXRpb24KCWlmIChtYW51YWwgJiYgb3B0cy5idXN5ICYmIG9wdHMubWFudWFsVHJ1bXApIHsKCQkvLyBsZXQgbWFudWFsIHRyYW5zaXRpb25zIHJlcXVlc3RzIHRydW1wIGFjdGl2ZSBvbmVzCgkJZGVidWcoJ21hbnVhbFRydW1wIGluIGdvKCksIHN0b3BwaW5nIGFjdGl2ZSB0cmFuc2l0aW9uJyk7CgkJJChlbHMpLnN0b3AodHJ1ZSx0cnVlKTsKCQlvcHRzLmJ1c3kgPSAwOwoJCWNsZWFyVGltZW91dChwLmN5Y2xlVGltZW91dCk7Cgl9CgoJLy8gZG9uJ3QgYmVnaW4gYW5vdGhlciB0aW1lb3V0LWJhc2VkIHRyYW5zaXRpb24gaWYgdGhlcmUgaXMgb25lIGFjdGl2ZQoJaWYgKG9wdHMuYnVzeSkgewoJCWRlYnVnKCd0cmFuc2l0aW9uIGFjdGl2ZSwgaWdub3JpbmcgbmV3IHR4IHJlcXVlc3QnKTsKCQlyZXR1cm47Cgl9CgoKCS8vIHN0b3AgY3ljbGluZyBpZiB3ZSBoYXZlIGFuIG91dHN0YW5kaW5nIHN0b3AgcmVxdWVzdAoJaWYgKHAuY3ljbGVTdG9wICE9IG9wdHMuc3RvcENvdW50IHx8IHAuY3ljbGVUaW1lb3V0ID09PSAwICYmICFtYW51YWwpCgkJcmV0dXJuOwoKCS8vIGNoZWNrIHRvIHNlZSBpZiB3ZSBzaG91bGQgc3RvcCBjeWNsaW5nIGJhc2VkIG9uIGF1dG9zdG9wIG9wdGlvbnMKCWlmICghbWFudWFsICYmICFwLmN5Y2xlUGF1c2UgJiYgIW9wdHMuYm91bmNlICYmCgkJKChvcHRzLmF1dG9zdG9wICYmICgtLW9wdHMuY291bnRkb3duIDw9IDApKSB8fAoJCShvcHRzLm5vd3JhcCAmJiAhb3B0cy5yYW5kb20gJiYgb3B0cy5uZXh0U2xpZGUgPCBvcHRzLmN1cnJTbGlkZSkpKSB7CgkJaWYgKG9wdHMuZW5kKQoJCQlvcHRzLmVuZChvcHRzKTsKCQlyZXR1cm47Cgl9CgoJLy8gaWYgc2xpZGVzaG93IGlzIHBhdXNlZCwgb25seSB0cmFuc2l0aW9uIG9uIGEgbWFudWFsIHRyaWdnZXIKCXZhciBjaGFuZ2VkID0gZmFsc2U7CglpZiAoKG1hbnVhbCB8fCAhcC5jeWNsZVBhdXNlKSAmJiAob3B0cy5uZXh0U2xpZGUgIT0gb3B0cy5jdXJyU2xpZGUpKSB7CgkJY2hhbmdlZCA9IHRydWU7CgkJdmFyIGZ4ID0gb3B0cy5meDsKCQkvLyBrZWVwIHRyeWluZyB0byBnZXQgdGhlIHNsaWRlIHNpemUgaWYgd2UgZG9uJ3QgaGF2ZSBpdCB5ZXQKCQljdXJyLmN5Y2xlSCA9IGN1cnIuY3ljbGVIIHx8ICQoY3VycikuaGVpZ2h0KCk7CgkJY3Vyci5jeWNsZVcgPSBjdXJyLmN5Y2xlVyB8fCAkKGN1cnIpLndpZHRoKCk7CgkJbmV4dC5jeWNsZUggPSBuZXh0LmN5Y2xlSCB8fCAkKG5leHQpLmhlaWdodCgpOwoJCW5leHQuY3ljbGVXID0gbmV4dC5jeWNsZVcgfHwgJChuZXh0KS53aWR0aCgpOwoKCQkvLyBzdXBwb3J0IG11bHRpcGxlIHRyYW5zaXRpb24gdHlwZXMKCQlpZiAob3B0cy5tdWx0aUZ4KSB7CgkJCWlmIChmd2QgJiYgKG9wdHMubGFzdEZ4ID09PSB1bmRlZmluZWQgfHwgKytvcHRzLmxhc3RGeCA+PSBvcHRzLmZ4cy5sZW5ndGgpKQoJCQkJb3B0cy5sYXN0RnggPSAwOwoJCQllbHNlIGlmICghZndkICYmIChvcHRzLmxhc3RGeCA9PT0gdW5kZWZpbmVkIHx8IC0tb3B0cy5sYXN0RnggPCAwKSkKCQkJCW9wdHMubGFzdEZ4ID0gb3B0cy5meHMubGVuZ3RoIC0gMTsKCQkJZnggPSBvcHRzLmZ4c1tvcHRzLmxhc3RGeF07CgkJfQoKCQkvLyBvbmUtdGltZSBmeCBvdmVycmlkZXMgYXBwbHkgdG86ICAkKCdkaXYnKS5jeWNsZSgzLCd6b29tJyk7CgkJaWYgKG9wdHMub25lVGltZUZ4KSB7CgkJCWZ4ID0gb3B0cy5vbmVUaW1lRng7CgkJCW9wdHMub25lVGltZUZ4ID0gbnVsbDsKCQl9CgoJCSQuZm4uY3ljbGUucmVzZXRTdGF0ZShvcHRzLCBmeCk7CgoJCS8vIHJ1biB0aGUgYmVmb3JlIGNhbGxiYWNrcwoJCWlmIChvcHRzLmJlZm9yZS5sZW5ndGgpCgkJCSQuZWFjaChvcHRzLmJlZm9yZSwgZnVuY3Rpb24oaSxvKSB7CgkJCQlpZiAocC5jeWNsZVN0b3AgIT0gb3B0cy5zdG9wQ291bnQpIHJldHVybjsKCQkJCW8uYXBwbHkobmV4dCwgW2N1cnIsIG5leHQsIG9wdHMsIGZ3ZF0pOwoJCQl9KTsKCgkJLy8gc3RhZ2UgdGhlIGFmdGVyIGNhbGxhY2tzCgkJdmFyIGFmdGVyID0gZnVuY3Rpb24oKSB7CgkJCW9wdHMuYnVzeSA9IDA7CgkJCSQuZWFjaChvcHRzLmFmdGVyLCBmdW5jdGlvbihpLG8pIHsKCQkJCWlmIChwLmN5Y2xlU3RvcCAhPSBvcHRzLnN0b3BDb3VudCkgcmV0dXJuOwoJCQkJby5hcHBseShuZXh0LCBbY3VyciwgbmV4dCwgb3B0cywgZndkXSk7CgkJCX0pOwoJCQlpZiAoIXAuY3ljbGVTdG9wKSB7CgkJCQkvLyBxdWV1ZSBuZXh0IHRyYW5zaXRpb24KCQkJCXF1ZXVlTmV4dCgpOwoJCQl9CgkJfTsKCgkJZGVidWcoJ3R4IGZpcmluZygnK2Z4KycpOyBjdXJyU2xpZGU6ICcgKyBvcHRzLmN1cnJTbGlkZSArICc7IG5leHRTbGlkZTogJyArIG9wdHMubmV4dFNsaWRlKTsKCQkKCQkvLyBnZXQgcmVhZHkgdG8gcGVyZm9ybSB0aGUgdHJhbnNpdGlvbgoJCW9wdHMuYnVzeSA9IDE7CgkJaWYgKG9wdHMuZnhGbikgLy8gZnggZnVuY3Rpb24gcHJvdmlkZWQ/CgkJCW9wdHMuZnhGbihjdXJyLCBuZXh0LCBvcHRzLCBhZnRlciwgZndkLCBtYW51YWwgJiYgb3B0cy5mYXN0T25FdmVudCk7CgkJZWxzZSBpZiAoJC5pc0Z1bmN0aW9uKCQuZm4uY3ljbGVbb3B0cy5meF0pKSAvLyBmeCBwbHVnaW4gPwoJCQkkLmZuLmN5Y2xlW29wdHMuZnhdKGN1cnIsIG5leHQsIG9wdHMsIGFmdGVyLCBmd2QsIG1hbnVhbCAmJiBvcHRzLmZhc3RPbkV2ZW50KTsKCQllbHNlCgkJCSQuZm4uY3ljbGUuY3VzdG9tKGN1cnIsIG5leHQsIG9wdHMsIGFmdGVyLCBmd2QsIG1hbnVhbCAmJiBvcHRzLmZhc3RPbkV2ZW50KTsKCX0KCWVsc2UgewoJCXF1ZXVlTmV4dCgpOwoJfQoKCWlmIChjaGFuZ2VkIHx8IG9wdHMubmV4dFNsaWRlID09IG9wdHMuY3VyclNsaWRlKSB7CgkJLy8gY2FsY3VsYXRlIHRoZSBuZXh0IHNsaWRlCgkJdmFyIHJvbGw7CgkJb3B0cy5sYXN0U2xpZGUgPSBvcHRzLmN1cnJTbGlkZTsKCQlpZiAob3B0cy5yYW5kb20pIHsKCQkJb3B0cy5jdXJyU2xpZGUgPSBvcHRzLm5leHRTbGlkZTsKCQkJaWYgKCsrb3B0cy5yYW5kb21JbmRleCA9PSBlbHMubGVuZ3RoKSB7CgkJCQlvcHRzLnJhbmRvbUluZGV4ID0gMDsKCQkJCW9wdHMucmFuZG9tTWFwLnNvcnQoZnVuY3Rpb24oYSxiKSB7cmV0dXJuIE1hdGgucmFuZG9tKCkgLSAwLjU7fSk7CgkJCX0KCQkJb3B0cy5uZXh0U2xpZGUgPSBvcHRzLnJhbmRvbU1hcFtvcHRzLnJhbmRvbUluZGV4XTsKCQkJaWYgKG9wdHMubmV4dFNsaWRlID09IG9wdHMuY3VyclNsaWRlKQoJCQkJb3B0cy5uZXh0U2xpZGUgPSAob3B0cy5jdXJyU2xpZGUgPT0gb3B0cy5zbGlkZUNvdW50IC0gMSkgPyAwIDogb3B0cy5jdXJyU2xpZGUgKyAxOwoJCX0KCQllbHNlIGlmIChvcHRzLmJhY2t3YXJkcykgewoJCQlyb2xsID0gKG9wdHMubmV4dFNsaWRlIC0gMSkgPCAwOwoJCQlpZiAocm9sbCAmJiBvcHRzLmJvdW5jZSkgewoJCQkJb3B0cy5iYWNrd2FyZHMgPSAhb3B0cy5iYWNrd2FyZHM7CgkJCQlvcHRzLm5leHRTbGlkZSA9IDE7CgkJCQlvcHRzLmN1cnJTbGlkZSA9IDA7CgkJCX0KCQkJZWxzZSB7CgkJCQlvcHRzLm5leHRTbGlkZSA9IHJvbGwgPyAoZWxzLmxlbmd0aC0xKSA6IG9wdHMubmV4dFNsaWRlLTE7CgkJCQlvcHRzLmN1cnJTbGlkZSA9IHJvbGwgPyAwIDogb3B0cy5uZXh0U2xpZGUrMTsKCQkJfQoJCX0KCQllbHNlIHsgLy8gc2VxdWVuY2UKCQkJcm9sbCA9IChvcHRzLm5leHRTbGlkZSArIDEpID09IGVscy5sZW5ndGg7CgkJCWlmIChyb2xsICYmIG9wdHMuYm91bmNlKSB7CgkJCQlvcHRzLmJhY2t3YXJkcyA9ICFvcHRzLmJhY2t3YXJkczsKCQkJCW9wdHMubmV4dFNsaWRlID0gZWxzLmxlbmd0aC0yOwoJCQkJb3B0cy5jdXJyU2xpZGUgPSBlbHMubGVuZ3RoLTE7CgkJCX0KCQkJZWxzZSB7CgkJCQlvcHRzLm5leHRTbGlkZSA9IHJvbGwgPyAwIDogb3B0cy5uZXh0U2xpZGUrMTsKCQkJCW9wdHMuY3VyclNsaWRlID0gcm9sbCA/IGVscy5sZW5ndGgtMSA6IG9wdHMubmV4dFNsaWRlLTE7CgkJCX0KCQl9Cgl9CglpZiAoY2hhbmdlZCAmJiBvcHRzLnBhZ2VyKQoJCW9wdHMudXBkYXRlQWN0aXZlUGFnZXJMaW5rKG9wdHMucGFnZXIsIG9wdHMuY3VyclNsaWRlLCBvcHRzLmFjdGl2ZVBhZ2VyQ2xhc3MpOwoJCglmdW5jdGlvbiBxdWV1ZU5leHQoKSB7CgkJLy8gc3RhZ2UgdGhlIG5leHQgdHJhbnNpdGlvbgoJCXZhciBtcyA9IDAsIHRpbWVvdXQgPSBvcHRzLnRpbWVvdXQ7CgkJaWYgKG9wdHMudGltZW91dCAmJiAhb3B0cy5jb250aW51b3VzKSB7CgkJCW1zID0gZ2V0VGltZW91dChlbHNbb3B0cy5jdXJyU2xpZGVdLCBlbHNbb3B0cy5uZXh0U2xpZGVdLCBvcHRzLCBmd2QpOwogICAgICAgICBpZiAob3B0cy5meCA9PSAnc2h1ZmZsZScpCiAgICAgICAgICAgIG1zIC09IG9wdHMuc3BlZWRPdXQ7CiAgICAgIH0KCQllbHNlIGlmIChvcHRzLmNvbnRpbnVvdXMgJiYgcC5jeWNsZVBhdXNlKSAvLyBjb250aW51b3VzIHNob3dzIHdvcmsgb2ZmIGFuIGFmdGVyIGNhbGxiYWNrLCBub3QgdGhpcyB0aW1lciBsb2dpYwoJCQltcyA9IDEwOwoJCWlmIChtcyA+IDApCgkJCXAuY3ljbGVUaW1lb3V0ID0gc2V0VGltZW91dChmdW5jdGlvbigpeyBnbyhlbHMsIG9wdHMsIDAsICFvcHRzLmJhY2t3YXJkcyk7IH0sIG1zKTsKCX0KfQoKLy8gaW52b2tlZCBhZnRlciB0cmFuc2l0aW9uCiQuZm4uY3ljbGUudXBkYXRlQWN0aXZlUGFnZXJMaW5rID0gZnVuY3Rpb24ocGFnZXIsIGN1cnJTbGlkZSwgY2xzTmFtZSkgewogICAkKHBhZ2VyKS5lYWNoKGZ1bmN0aW9uKCkgewogICAgICAgJCh0aGlzKS5jaGlsZHJlbigpLnJlbW92ZUNsYXNzKGNsc05hbWUpLmVxKGN1cnJTbGlkZSkuYWRkQ2xhc3MoY2xzTmFtZSk7CiAgIH0pOwp9OwoKLy8gY2FsY3VsYXRlIHRpbWVvdXQgdmFsdWUgZm9yIGN1cnJlbnQgdHJhbnNpdGlvbgpmdW5jdGlvbiBnZXRUaW1lb3V0KGN1cnIsIG5leHQsIG9wdHMsIGZ3ZCkgewoJaWYgKG9wdHMudGltZW91dEZuKSB7CgkJLy8gY2FsbCB1c2VyIHByb3ZpZGVkIGNhbGMgZm4KCQl2YXIgdCA9IG9wdHMudGltZW91dEZuLmNhbGwoY3VycixjdXJyLG5leHQsb3B0cyxmd2QpOwoJCXdoaWxlIChvcHRzLmZ4ICE9ICdub25lJyAmJiAodCAtIG9wdHMuc3BlZWQpIDwgMjUwKSAvLyBzYW5pdGl6ZSB0aW1lb3V0CgkJCXQgKz0gb3B0cy5zcGVlZDsKCQlkZWJ1ZygnY2FsY3VsYXRlZCB0aW1lb3V0OiAnICsgdCArICc7IHNwZWVkOiAnICsgb3B0cy5zcGVlZCk7CgkJaWYgKHQgIT09IGZhbHNlKQoJCQlyZXR1cm4gdDsKCX0KCXJldHVybiBvcHRzLnRpbWVvdXQ7Cn0KCi8vIGV4cG9zZSBuZXh0L3ByZXYgZnVuY3Rpb24sIGNhbGxlciBtdXN0IHBhc3MgaW4gc3RhdGUKJC5mbi5jeWNsZS5uZXh0ID0gZnVuY3Rpb24ob3B0cykgeyBhZHZhbmNlKG9wdHMsMSk7IH07CiQuZm4uY3ljbGUucHJldiA9IGZ1bmN0aW9uKG9wdHMpIHsgYWR2YW5jZShvcHRzLDApO307CgovLyBhZHZhbmNlIHNsaWRlIGZvcndhcmQgb3IgYmFjawpmdW5jdGlvbiBhZHZhbmNlKG9wdHMsIG1vdmVGb3J3YXJkKSB7Cgl2YXIgdmFsID0gbW92ZUZvcndhcmQgPyAxIDogLTE7Cgl2YXIgZWxzID0gb3B0cy5lbGVtZW50czsKCXZhciBwID0gb3B0cy4kY29udFswXSwgdGltZW91dCA9IHAuY3ljbGVUaW1lb3V0OwoJaWYgKHRpbWVvdXQpIHsKCQljbGVhclRpbWVvdXQodGltZW91dCk7CgkJcC5jeWNsZVRpbWVvdXQgPSAwOwoJfQoJaWYgKG9wdHMucmFuZG9tICYmIHZhbCA8IDApIHsKCQkvLyBtb3ZlIGJhY2sgdG8gdGhlIHByZXZpb3VzbHkgZGlzcGxheSBzbGlkZQoJCW9wdHMucmFuZG9tSW5kZXgtLTsKCQlpZiAoLS1vcHRzLnJhbmRvbUluZGV4ID09IC0yKQoJCQlvcHRzLnJhbmRvbUluZGV4ID0gZWxzLmxlbmd0aC0yOwoJCWVsc2UgaWYgKG9wdHMucmFuZG9tSW5kZXggPT0gLTEpCgkJCW9wdHMucmFuZG9tSW5kZXggPSBlbHMubGVuZ3RoLTE7CgkJb3B0cy5uZXh0U2xpZGUgPSBvcHRzLnJhbmRvbU1hcFtvcHRzLnJhbmRvbUluZGV4XTsKCX0KCWVsc2UgaWYgKG9wdHMucmFuZG9tKSB7CgkJb3B0cy5uZXh0U2xpZGUgPSBvcHRzLnJhbmRvbU1hcFtvcHRzLnJhbmRvbUluZGV4XTsKCX0KCWVsc2UgewoJCW9wdHMubmV4dFNsaWRlID0gb3B0cy5jdXJyU2xpZGUgKyB2YWw7CgkJaWYgKG9wdHMubmV4dFNsaWRlIDwgMCkgewoJCQlpZiAob3B0cy5ub3dyYXApIHJldHVybiBmYWxzZTsKCQkJb3B0cy5uZXh0U2xpZGUgPSBlbHMubGVuZ3RoIC0gMTsKCQl9CgkJZWxzZSBpZiAob3B0cy5uZXh0U2xpZGUgPj0gZWxzLmxlbmd0aCkgewoJCQlpZiAob3B0cy5ub3dyYXApIHJldHVybiBmYWxzZTsKCQkJb3B0cy5uZXh0U2xpZGUgPSAwOwoJCX0KCX0KCgl2YXIgY2IgPSBvcHRzLm9uUHJldk5leHRFdmVudCB8fCBvcHRzLnByZXZOZXh0Q2xpY2s7IC8vIHByZXZOZXh0Q2xpY2sgaXMgZGVwcmVjYXRlZAoJaWYgKCQuaXNGdW5jdGlvbihjYikpCgkJY2IodmFsID4gMCwgb3B0cy5uZXh0U2xpZGUsIGVsc1tvcHRzLm5leHRTbGlkZV0pOwoJZ28oZWxzLCBvcHRzLCAxLCBtb3ZlRm9yd2FyZCk7CglyZXR1cm4gZmFsc2U7Cn0KCmZ1bmN0aW9uIGJ1aWxkUGFnZXIoZWxzLCBvcHRzKSB7Cgl2YXIgJHAgPSAkKG9wdHMucGFnZXIpOwoJJC5lYWNoKGVscywgZnVuY3Rpb24oaSxvKSB7CgkJJC5mbi5jeWNsZS5jcmVhdGVQYWdlckFuY2hvcihpLG8sJHAsZWxzLG9wdHMpOwoJfSk7CglvcHRzLnVwZGF0ZUFjdGl2ZVBhZ2VyTGluayhvcHRzLnBhZ2VyLCBvcHRzLnN0YXJ0aW5nU2xpZGUsIG9wdHMuYWN0aXZlUGFnZXJDbGFzcyk7Cn0KCiQuZm4uY3ljbGUuY3JlYXRlUGFnZXJBbmNob3IgPSBmdW5jdGlvbihpLCBlbCwgJHAsIGVscywgb3B0cykgewoJdmFyIGE7CglpZiAoJC5pc0Z1bmN0aW9uKG9wdHMucGFnZXJBbmNob3JCdWlsZGVyKSkgewoJCWEgPSBvcHRzLnBhZ2VyQW5jaG9yQnVpbGRlcihpLGVsKTsKCQlkZWJ1ZygncGFnZXJBbmNob3JCdWlsZGVyKCcraSsnLCBlbCkgcmV0dXJuZWQ6ICcgKyBhKTsKCX0KCWVsc2UKCQlhID0gJzxhIGhyZWY9IiMiPicrKGkrMSkrJzwvYT4nOwoJCQoJaWYgKCFhKQoJCXJldHVybjsKCXZhciAkYSA9ICQoYSk7CgkvLyBkb24ndCByZXBhcmVudCBpZiBhbmNob3IgaXMgaW4gdGhlIGRvbQoJaWYgKCRhLnBhcmVudHMoJ2JvZHknKS5sZW5ndGggPT09IDApIHsKCQl2YXIgYXJyID0gW107CgkJaWYgKCRwLmxlbmd0aCA+IDEpIHsKCQkJJHAuZWFjaChmdW5jdGlvbigpIHsKCQkJCXZhciAkY2xvbmUgPSAkYS5jbG9uZSh0cnVlKTsKCQkJCSQodGhpcykuYXBwZW5kKCRjbG9uZSk7CgkJCQlhcnIucHVzaCgkY2xvbmVbMF0pOwoJCQl9KTsKCQkJJGEgPSAkKGFycik7CgkJfQoJCWVsc2UgewoJCQkkYS5hcHBlbmRUbygkcCk7CgkJfQoJfQoKCW9wdHMucGFnZXJBbmNob3JzID0gIG9wdHMucGFnZXJBbmNob3JzIHx8IFtdOwoJb3B0cy5wYWdlckFuY2hvcnMucHVzaCgkYSk7CgkKCXZhciBwYWdlckZuID0gZnVuY3Rpb24oZSkgewoJCWUucHJldmVudERlZmF1bHQoKTsKCQlvcHRzLm5leHRTbGlkZSA9IGk7CgkJdmFyIHAgPSBvcHRzLiRjb250WzBdLCB0aW1lb3V0ID0gcC5jeWNsZVRpbWVvdXQ7CgkJaWYgKHRpbWVvdXQpIHsKCQkJY2xlYXJUaW1lb3V0KHRpbWVvdXQpOwoJCQlwLmN5Y2xlVGltZW91dCA9IDA7CgkJfQoJCXZhciBjYiA9IG9wdHMub25QYWdlckV2ZW50IHx8IG9wdHMucGFnZXJDbGljazsgLy8gcGFnZXJDbGljayBpcyBkZXByZWNhdGVkCgkJaWYgKCQuaXNGdW5jdGlvbihjYikpCgkJCWNiKG9wdHMubmV4dFNsaWRlLCBlbHNbb3B0cy5uZXh0U2xpZGVdKTsKCQlnbyhlbHMsb3B0cywxLG9wdHMuY3VyclNsaWRlIDwgaSk7IC8vIHRyaWdnZXIgdGhlIHRyYW5zCi8vCQlyZXR1cm4gZmFsc2U7IC8vIDw9PSBhbGxvdyBidWJibGUKCX07CgkKCWlmICggL21vdXNlZW50ZXJ8bW91c2VvdmVyL2kudGVzdChvcHRzLnBhZ2VyRXZlbnQpICkgewoJCSRhLmhvdmVyKHBhZ2VyRm4sIGZ1bmN0aW9uKCl7Lyogbm8tb3AgKi99ICk7Cgl9CgllbHNlIHsKCQkkYS5iaW5kKG9wdHMucGFnZXJFdmVudCwgcGFnZXJGbik7Cgl9CgkKCWlmICggISAvXmNsaWNrLy50ZXN0KG9wdHMucGFnZXJFdmVudCkgJiYgIW9wdHMuYWxsb3dQYWdlckNsaWNrQnViYmxlKQoJCSRhLmJpbmQoJ2NsaWNrLmN5Y2xlJywgZnVuY3Rpb24oKXtyZXR1cm4gZmFsc2U7fSk7IC8vIHN1cHByZXNzIGNsaWNrCgkKCXZhciBjb250ID0gb3B0cy4kY29udFswXTsKCXZhciBwYXVzZUZsYWcgPSBmYWxzZTsgLy8gaHR0cHM6Ly9naXRodWIuY29tL21hbHN1cC9jeWNsZS9pc3N1ZXMvNDQKCWlmIChvcHRzLnBhdXNlT25QYWdlckhvdmVyKSB7CgkJJGEuaG92ZXIoCgkJCWZ1bmN0aW9uKCkgeyAKCQkJCXBhdXNlRmxhZyA9IHRydWU7CgkJCQljb250LmN5Y2xlUGF1c2UrKzsgCgkJCQl0cmlnZ2VyUGF1c2UoY29udCx0cnVlLHRydWUpOwoJCQl9LCBmdW5jdGlvbigpIHsgCgkJCQlpZiAocGF1c2VGbGFnKQoJCQkJCWNvbnQuY3ljbGVQYXVzZS0tOyAKCQkJCXRyaWdnZXJQYXVzZShjb250LHRydWUsdHJ1ZSk7CgkJCX0gCgkJKTsKCX0KfTsKCi8vIGhlbHBlciBmbiB0byBjYWxjdWxhdGUgdGhlIG51bWJlciBvZiBzbGlkZXMgYmV0d2VlbiB0aGUgY3VycmVudCBhbmQgdGhlIG5leHQKJC5mbi5jeWNsZS5ob3BzRnJvbUxhc3QgPSBmdW5jdGlvbihvcHRzLCBmd2QpIHsKCXZhciBob3BzLCBsID0gb3B0cy5sYXN0U2xpZGUsIGMgPSBvcHRzLmN1cnJTbGlkZTsKCWlmIChmd2QpCgkJaG9wcyA9IGMgPiBsID8gYyAtIGwgOiBvcHRzLnNsaWRlQ291bnQgLSBsOwoJZWxzZQoJCWhvcHMgPSBjIDwgbCA/IGwgLSBjIDogbCArIG9wdHMuc2xpZGVDb3VudCAtIGM7CglyZXR1cm4gaG9wczsKfTsKCi8vIGZpeCBjbGVhclR5cGUgcHJvYmxlbXMgaW4gaWU2IGJ5IHNldHRpbmcgYW4gZXhwbGljaXQgYmcgY29sb3IKLy8gKG90aGVyd2lzZSB0ZXh0IHNsaWRlcyBsb29rIGhvcnJpYmxlIGR1cmluZyBhIGZhZGUgdHJhbnNpdGlvbikKZnVuY3Rpb24gY2xlYXJUeXBlRml4KCRzbGlkZXMpIHsKCWRlYnVnKCdhcHBseWluZyBjbGVhclR5cGUgYmFja2dyb3VuZC1jb2xvciBoYWNrJyk7CglmdW5jdGlvbiBoZXgocykgewoJCXMgPSBwYXJzZUludChzLDEwKS50b1N0cmluZygxNik7CgkJcmV0dXJuIHMubGVuZ3RoIDwgMiA/ICcwJytzIDogczsKCX0KCWZ1bmN0aW9uIGdldEJnKGUpIHsKCQlmb3IgKCA7IGUgJiYgZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpICE9ICdodG1sJzsgZSA9IGUucGFyZW50Tm9kZSkgewoJCQl2YXIgdiA9ICQuY3NzKGUsJ2JhY2tncm91bmQtY29sb3InKTsKCQkJaWYgKHYgJiYgdi5pbmRleE9mKCdyZ2InKSA+PSAwICkgewoJCQkJdmFyIHJnYiA9IHYubWF0Y2goL1xkKy9nKTsKCQkJCXJldHVybiAnIycrIGhleChyZ2JbMF0pICsgaGV4KHJnYlsxXSkgKyBoZXgocmdiWzJdKTsKCQkJfQoJCQlpZiAodiAmJiB2ICE9ICd0cmFuc3BhcmVudCcpCgkJCQlyZXR1cm4gdjsKCQl9CgkJcmV0dXJuICcjZmZmZmZmJzsKCX0KCSRzbGlkZXMuZWFjaChmdW5jdGlvbigpIHsgJCh0aGlzKS5jc3MoJ2JhY2tncm91bmQtY29sb3InLCBnZXRCZyh0aGlzKSk7IH0pOwp9CgovLyByZXNldCBjb21tb24gcHJvcHMgYmVmb3JlIHRoZSBuZXh0IHRyYW5zaXRpb24KJC5mbi5jeWNsZS5jb21tb25SZXNldCA9IGZ1bmN0aW9uKGN1cnIsbmV4dCxvcHRzLHcsaCxyZXYpIHsKCSQob3B0cy5lbGVtZW50cykubm90KGN1cnIpLmhpZGUoKTsKCWlmICh0eXBlb2Ygb3B0cy5jc3NCZWZvcmUub3BhY2l0eSA9PSAndW5kZWZpbmVkJykKCQlvcHRzLmNzc0JlZm9yZS5vcGFjaXR5ID0gMTsKCW9wdHMuY3NzQmVmb3JlLmRpc3BsYXkgPSAnYmxvY2snOwoJaWYgKG9wdHMuc2xpZGVSZXNpemUgJiYgdyAhPT0gZmFsc2UgJiYgbmV4dC5jeWNsZVcgPiAwKQoJCW9wdHMuY3NzQmVmb3JlLndpZHRoID0gbmV4dC5jeWNsZVc7CglpZiAob3B0cy5zbGlkZVJlc2l6ZSAmJiBoICE9PSBmYWxzZSAmJiBuZXh0LmN5Y2xlSCA+IDApCgkJb3B0cy5jc3NCZWZvcmUuaGVpZ2h0ID0gbmV4dC5jeWNsZUg7CglvcHRzLmNzc0FmdGVyID0gb3B0cy5jc3NBZnRlciB8fCB7fTsKCW9wdHMuY3NzQWZ0ZXIuZGlzcGxheSA9ICdub25lJzsKCSQoY3VycikuY3NzKCd6SW5kZXgnLG9wdHMuc2xpZGVDb3VudCArIChyZXYgPT09IHRydWUgPyAxIDogMCkpOwoJJChuZXh0KS5jc3MoJ3pJbmRleCcsb3B0cy5zbGlkZUNvdW50ICsgKHJldiA9PT0gdHJ1ZSA/IDAgOiAxKSk7Cn07CgovLyB0aGUgYWN0dWFsIGZuIGZvciBlZmZlY3RpbmcgYSB0cmFuc2l0aW9uCiQuZm4uY3ljbGUuY3VzdG9tID0gZnVuY3Rpb24oY3VyciwgbmV4dCwgb3B0cywgY2IsIGZ3ZCwgc3BlZWRPdmVycmlkZSkgewoJdmFyICRsID0gJChjdXJyKSwgJG4gPSAkKG5leHQpOwoJdmFyIHNwZWVkSW4gPSBvcHRzLnNwZWVkSW4sIHNwZWVkT3V0ID0gb3B0cy5zcGVlZE91dCwgZWFzZUluID0gb3B0cy5lYXNlSW4sIGVhc2VPdXQgPSBvcHRzLmVhc2VPdXQsIGFuaW1JbkRlbGF5ID0gb3B0cy5hbmltSW5EZWxheSwgYW5pbU91dERlbGF5ID0gb3B0cy5hbmltT3V0RGVsYXk7Cgkkbi5jc3Mob3B0cy5jc3NCZWZvcmUpOwoJaWYgKHNwZWVkT3ZlcnJpZGUpIHsKCQlpZiAodHlwZW9mIHNwZWVkT3ZlcnJpZGUgPT0gJ251bWJlcicpCgkJCXNwZWVkSW4gPSBzcGVlZE91dCA9IHNwZWVkT3ZlcnJpZGU7CgkJZWxzZQoJCQlzcGVlZEluID0gc3BlZWRPdXQgPSAxOwoJCWVhc2VJbiA9IGVhc2VPdXQgPSBudWxsOwoJfQoJdmFyIGZuID0gZnVuY3Rpb24oKSB7CgkJJG4uZGVsYXkoYW5pbUluRGVsYXkpLmFuaW1hdGUob3B0cy5hbmltSW4sIHNwZWVkSW4sIGVhc2VJbiwgZnVuY3Rpb24oKSB7CgkJCWNiKCk7CgkJfSk7Cgl9OwoJJGwuZGVsYXkoYW5pbU91dERlbGF5KS5hbmltYXRlKG9wdHMuYW5pbU91dCwgc3BlZWRPdXQsIGVhc2VPdXQsIGZ1bmN0aW9uKCkgewoJCSRsLmNzcyhvcHRzLmNzc0FmdGVyKTsKCQlpZiAoIW9wdHMuc3luYykgCgkJCWZuKCk7Cgl9KTsKCWlmIChvcHRzLnN5bmMpIGZuKCk7Cn07CgovLyB0cmFuc2l0aW9uIGRlZmluaXRpb25zIC0gb25seSBmYWRlIGlzIGRlZmluZWQgaGVyZSwgdHJhbnNpdGlvbiBwYWNrIGRlZmluZXMgdGhlIHJlc3QKJC5mbi5jeWNsZS50cmFuc2l0aW9ucyA9IHsKCWZhZGU6IGZ1bmN0aW9uKCRjb250LCAkc2xpZGVzLCBvcHRzKSB7CgkJJHNsaWRlcy5ub3QoJzplcSgnK29wdHMuY3VyclNsaWRlKycpJykuY3NzKCdvcGFjaXR5JywwKTsKCQlvcHRzLmJlZm9yZS5wdXNoKGZ1bmN0aW9uKGN1cnIsbmV4dCxvcHRzKSB7CgkJCSQuZm4uY3ljbGUuY29tbW9uUmVzZXQoY3VycixuZXh0LG9wdHMpOwoJCQlvcHRzLmNzc0JlZm9yZS5vcGFjaXR5ID0gMDsKCQl9KTsKCQlvcHRzLmFuaW1JbgkgICA9IHsgb3BhY2l0eTogMSB9OwoJCW9wdHMuYW5pbU91dCAgID0geyBvcGFjaXR5OiAwIH07CgkJb3B0cy5jc3NCZWZvcmUgPSB7IHRvcDogMCwgbGVmdDogMCB9OwoJfQp9OwoKJC5mbi5jeWNsZS52ZXIgPSBmdW5jdGlvbigpIHsgcmV0dXJuIHZlcjsgfTsKCi8vIG92ZXJyaWRlIHRoZXNlIGdsb2JhbGx5IGlmIHlvdSBsaWtlICh0aGV5IGFyZSBhbGwgb3B0aW9uYWwpCiQuZm4uY3ljbGUuZGVmYXVsdHMgPSB7CiAgICBhY3RpdmVQYWdlckNsYXNzOiAnYWN0aXZlU2xpZGUnLCAvLyBjbGFzcyBuYW1lIHVzZWQgZm9yIHRoZSBhY3RpdmUgcGFnZXIgbGluawogICAgYWZ0ZXI6ICAgICAgICAgICAgbnVsbCwgICAgIC8vIHRyYW5zaXRpb24gY2FsbGJhY2sgKHNjb3BlIHNldCB0byBlbGVtZW50IHRoYXQgd2FzIHNob3duKTogIGZ1bmN0aW9uKGN1cnJTbGlkZUVsZW1lbnQsIG5leHRTbGlkZUVsZW1lbnQsIG9wdGlvbnMsIGZvcndhcmRGbGFnKQogICAgYWxsb3dQYWdlckNsaWNrQnViYmxlOiBmYWxzZSwgLy8gYWxsb3dzIG9yIHByZXZlbnRzIGNsaWNrIGV2ZW50IG9uIHBhZ2VyIGFuY2hvcnMgZnJvbSBidWJibGluZwogICAgYW5pbUluOiAgICAgICAgICAgbnVsbCwgICAgIC8vIHByb3BlcnRpZXMgdGhhdCBkZWZpbmUgaG93IHRoZSBzbGlkZSBhbmltYXRlcyBpbgogICAgYW5pbUluRGVsYXk6ICAgICAgMCwgICAgICAgIC8vIGFsbG93cyBkZWxheSBiZWZvcmUgbmV4dCBzbGlkZSB0cmFuc2l0aW9ucyBpbgkKICAgIGFuaW1PdXQ6ICAgICAgICAgIG51bGwsICAgICAvLyBwcm9wZXJ0aWVzIHRoYXQgZGVmaW5lIGhvdyB0aGUgc2xpZGUgYW5pbWF0ZXMgb3V0CiAgICBhbmltT3V0RGVsYXk6ICAgICAwLCAgICAgICAgLy8gYWxsb3dzIGRlbGF5IGJlZm9yZSBjdXJyZW50IHNsaWRlIHRyYW5zaXRpb25zIG91dAogICAgYXNwZWN0OiAgICAgICAgICAgZmFsc2UsICAgIC8vIHByZXNlcnZlIGFzcGVjdCByYXRpbyBkdXJpbmcgZml0IHJlc2l6aW5nLCBjcm9wcGluZyBpZiBuZWNlc3NhcnkgKG11c3QgYmUgdXNlZCB3aXRoIGZpdCBvcHRpb24pCiAgICBhdXRvc3RvcDogICAgICAgICAwLCAgICAgICAgLy8gdHJ1ZSB0byBlbmQgc2xpZGVzaG93IGFmdGVyIFggdHJhbnNpdGlvbnMgKHdoZXJlIFggPT0gc2xpZGUgY291bnQpCiAgICBhdXRvc3RvcENvdW50OiAgICAwLCAgICAgICAgLy8gbnVtYmVyIG9mIHRyYW5zaXRpb25zIChvcHRpb25hbGx5IHVzZWQgd2l0aCBhdXRvc3RvcCB0byBkZWZpbmUgWCkKICAgIGJhY2t3YXJkczogICAgICAgIGZhbHNlLCAgICAvLyB0cnVlIHRvIHN0YXJ0IHNsaWRlc2hvdyBhdCBsYXN0IHNsaWRlIGFuZCBtb3ZlIGJhY2t3YXJkcyB0aHJvdWdoIHRoZSBzdGFjawogICAgYmVmb3JlOiAgICAgICAgICAgbnVsbCwgICAgIC8vIHRyYW5zaXRpb24gY2FsbGJhY2sgKHNjb3BlIHNldCB0byBlbGVtZW50IHRvIGJlIHNob3duKTogICAgIGZ1bmN0aW9uKGN1cnJTbGlkZUVsZW1lbnQsIG5leHRTbGlkZUVsZW1lbnQsIG9wdGlvbnMsIGZvcndhcmRGbGFnKQogICAgY2VudGVyOiAgICAgICAgICAgbnVsbCwgICAgIC8vIHNldCB0byB0cnVlIHRvIGhhdmUgY3ljbGUgYWRkIHRvcC9sZWZ0IG1hcmdpbiB0byBlYWNoIHNsaWRlICh1c2Ugd2l0aCB3aWR0aCBhbmQgaGVpZ2h0IG9wdGlvbnMpCiAgICBjbGVhcnR5cGU6ICAgICAgICAhJC5zdXBwb3J0Lm9wYWNpdHksICAvLyB0cnVlIGlmIGNsZWFyVHlwZSBjb3JyZWN0aW9ucyBzaG91bGQgYmUgYXBwbGllZCAoZm9yIElFKQogICAgY2xlYXJ0eXBlTm9CZzogICAgZmFsc2UsICAgIC8vIHNldCB0byB0cnVlIHRvIGRpc2FibGUgZXh0cmEgY2xlYXJ0eXBlIGZpeGluZyAobGVhdmUgZmFsc2UgdG8gZm9yY2UgYmFja2dyb3VuZCBjb2xvciBzZXR0aW5nIG9uIHNsaWRlcykKICAgIGNvbnRhaW5lclJlc2l6ZTogIDEsICAgICAgICAvLyByZXNpemUgY29udGFpbmVyIHRvIGZpdCBsYXJnZXN0IHNsaWRlCiAgICBjb250YWluZXJSZXNpemVIZWlnaHQ6ICAwLCAgLy8gcmVzaXplIGNvbnRhaW5lcnMgaGVpZ2h0IHRvIGZpdCB0aGUgbGFyZ2VzdCBzbGlkZSBidXQgbGVhdmUgdGhlIHdpZHRoIGR5bmFtaWMKICAgIGNvbnRpbnVvdXM6ICAgICAgIDAsICAgICAgICAvLyB0cnVlIHRvIHN0YXJ0IG5leHQgdHJhbnNpdGlvbiBpbW1lZGlhdGVseSBhZnRlciBjdXJyZW50IG9uZSBjb21wbGV0ZXMKICAgIGNzc0FmdGVyOiAgICAgICAgIG51bGwsICAgICAvLyBwcm9wZXJ0aWVzIHRoYXQgZGVmaW5lZCB0aGUgc3RhdGUgb2YgdGhlIHNsaWRlIGFmdGVyIHRyYW5zaXRpb25pbmcgb3V0CiAgICBjc3NCZWZvcmU6ICAgICAgICBudWxsLCAgICAgLy8gcHJvcGVydGllcyB0aGF0IGRlZmluZSB0aGUgaW5pdGlhbCBzdGF0ZSBvZiB0aGUgc2xpZGUgYmVmb3JlIHRyYW5zaXRpb25pbmcgaW4KICAgIGRlbGF5OiAgICAgICAgICAgIDAsICAgICAgICAvLyBhZGRpdGlvbmFsIGRlbGF5IChpbiBtcykgZm9yIGZpcnN0IHRyYW5zaXRpb24gKGhpbnQ6IGNhbiBiZSBuZWdhdGl2ZSkKICAgIGVhc2VJbjogICAgICAgICAgIG51bGwsICAgICAvLyBlYXNpbmcgZm9yICJpbiIgdHJhbnNpdGlvbgogICAgZWFzZU91dDogICAgICAgICAgbnVsbCwgICAgIC8vIGVhc2luZyBmb3IgIm91dCIgdHJhbnNpdGlvbgogICAgZWFzaW5nOiAgICAgICAgICAgbnVsbCwgICAgIC8vIGVhc2luZyBtZXRob2QgZm9yIGJvdGggaW4gYW5kIG91dCB0cmFuc2l0aW9ucwogICAgZW5kOiAgICAgICAgICAgICAgbnVsbCwgICAgIC8vIGNhbGxiYWNrIGludm9rZWQgd2hlbiB0aGUgc2xpZGVzaG93IHRlcm1pbmF0ZXMgKHVzZSB3aXRoIGF1dG9zdG9wIG9yIG5vd3JhcCBvcHRpb25zKTogZnVuY3Rpb24ob3B0aW9ucykKICAgIGZhc3RPbkV2ZW50OiAgICAgIDAsICAgICAgICAvLyBmb3JjZSBmYXN0IHRyYW5zaXRpb25zIHdoZW4gdHJpZ2dlcmVkIG1hbnVhbGx5ICh2aWEgcGFnZXIgb3IgcHJldi9uZXh0KTsgdmFsdWUgPT0gdGltZSBpbiBtcwogICAgZml0OiAgICAgICAgICAgICAgMCwgICAgICAgIC8vIGZvcmNlIHNsaWRlcyB0byBmaXQgY29udGFpbmVyCiAgICBmeDogICAgICAgICAgICAgICAnZmFkZScsICAgLy8gbmFtZSBvZiB0cmFuc2l0aW9uIGVmZmVjdCAob3IgY29tbWEgc2VwYXJhdGVkIG5hbWVzLCBleDogJ2ZhZGUsc2Nyb2xsVXAsc2h1ZmZsZScpCiAgICBmeEZuOiAgICAgICAgICAgICBudWxsLCAgICAgLy8gZnVuY3Rpb24gdXNlZCB0byBjb250cm9sIHRoZSB0cmFuc2l0aW9uOiBmdW5jdGlvbihjdXJyU2xpZGVFbGVtZW50LCBuZXh0U2xpZGVFbGVtZW50LCBvcHRpb25zLCBhZnRlckNhbGJhY2ssIGZvcndhcmRGbGFnKQogICAgaGVpZ2h0OiAgICAgICAgICAgJ2F1dG8nLCAgIC8vIGNvbnRhaW5lciBoZWlnaHQgKGlmIHRoZSAnZml0JyBvcHRpb24gaXMgdHJ1ZSwgdGhlIHNsaWRlcyB3aWxsIGJlIHNldCB0byB0aGlzIGhlaWdodCBhcyB3ZWxsKQogICAgbWFudWFsVHJ1bXA6ICAgICAgdHJ1ZSwgICAgIC8vIGNhdXNlcyBtYW51YWwgdHJhbnNpdGlvbiB0byBzdG9wIGFuIGFjdGl2ZSB0cmFuc2l0aW9uIGluc3RlYWQgb2YgYmVpbmcgaWdub3JlZAogICAgbWV0YUF0dHI6ICAgICAgICAgJ2N5Y2xlJywgIC8vIGRhdGEtIGF0dHJpYnV0ZSB0aGF0IGhvbGRzIHRoZSBvcHRpb24gZGF0YSBmb3IgdGhlIHNsaWRlc2hvdwogICAgbmV4dDogICAgICAgICAgICAgbnVsbCwgICAgIC8vIGVsZW1lbnQsIGpRdWVyeSBvYmplY3QsIG9yIGpRdWVyeSBzZWxlY3RvciBzdHJpbmcgZm9yIHRoZSBlbGVtZW50IHRvIHVzZSBhcyBldmVudCB0cmlnZ2VyIGZvciBuZXh0IHNsaWRlCiAgICBub3dyYXA6ICAgICAgICAgICAwLCAgICAgICAgLy8gdHJ1ZSB0byBwcmV2ZW50IHNsaWRlc2hvdyBmcm9tIHdyYXBwaW5nCiAgICBvblBhZ2VyRXZlbnQ6ICAgICBudWxsLCAgICAgLy8gY2FsbGJhY2sgZm4gZm9yIHBhZ2VyIGV2ZW50czogZnVuY3Rpb24oemVyb0Jhc2VkU2xpZGVJbmRleCwgc2xpZGVFbGVtZW50KQogICAgb25QcmV2TmV4dEV2ZW50OiAgbnVsbCwgICAgIC8vIGNhbGxiYWNrIGZuIGZvciBwcmV2L25leHQgZXZlbnRzOiBmdW5jdGlvbihpc05leHQsIHplcm9CYXNlZFNsaWRlSW5kZXgsIHNsaWRlRWxlbWVudCkKICAgIHBhZ2VyOiAgICAgICAgICAgIG51bGwsICAgICAvLyBlbGVtZW50LCBqUXVlcnkgb2JqZWN0LCBvciBqUXVlcnkgc2VsZWN0b3Igc3RyaW5nIGZvciB0aGUgZWxlbWVudCB0byB1c2UgYXMgcGFnZXIgY29udGFpbmVyCiAgICBwYWdlckFuY2hvckJ1aWxkZXI6IG51bGwsICAgLy8gY2FsbGJhY2sgZm4gZm9yIGJ1aWxkaW5nIGFuY2hvciBsaW5rczogIGZ1bmN0aW9uKGluZGV4LCBET01lbGVtZW50KQogICAgcGFnZXJFdmVudDogICAgICAgJ2NsaWNrLmN5Y2xlJywgLy8gbmFtZSBvZiBldmVudCB3aGljaCBkcml2ZXMgdGhlIHBhZ2VyIG5hdmlnYXRpb24KICAgIHBhdXNlOiAgICAgICAgICAgIDAsICAgICAgICAvLyB0cnVlIHRvIGVuYWJsZSAicGF1c2Ugb24gaG92ZXIiCiAgICBwYXVzZU9uUGFnZXJIb3ZlcjogMCwgICAgICAgLy8gdHJ1ZSB0byBwYXVzZSB3aGVuIGhvdmVyaW5nIG92ZXIgcGFnZXIgbGluawogICAgcHJldjogICAgICAgICAgICAgbnVsbCwgICAgIC8vIGVsZW1lbnQsIGpRdWVyeSBvYmplY3QsIG9yIGpRdWVyeSBzZWxlY3RvciBzdHJpbmcgZm9yIHRoZSBlbGVtZW50IHRvIHVzZSBhcyBldmVudCB0cmlnZ2VyIGZvciBwcmV2aW91cyBzbGlkZQogICAgcHJldk5leHRFdmVudDogICAgJ2NsaWNrLmN5Y2xlJywvLyBldmVudCB3aGljaCBkcml2ZXMgdGhlIG1hbnVhbCB0cmFuc2l0aW9uIHRvIHRoZSBwcmV2aW91cyBvciBuZXh0IHNsaWRlCiAgICByYW5kb206ICAgICAgICAgICAwLCAgICAgICAgLy8gdHJ1ZSBmb3IgcmFuZG9tLCBmYWxzZSBmb3Igc2VxdWVuY2UgKG5vdCBhcHBsaWNhYmxlIHRvIHNodWZmbGUgZngpCiAgICByYW5kb21pemVFZmZlY3RzOiAxLCAgICAgICAgLy8gdmFsaWQgd2hlbiBtdWx0aXBsZSBlZmZlY3RzIGFyZSB1c2VkOyB0cnVlIHRvIG1ha2UgdGhlIGVmZmVjdCBzZXF1ZW5jZSByYW5kb20KICAgIHJlcXVldWVPbkltYWdlTm90TG9hZGVkOiB0cnVlLCAvLyByZXF1ZXVlIHRoZSBzbGlkZXNob3cgaWYgYW55IGltYWdlIHNsaWRlcyBhcmUgbm90IHlldCBsb2FkZWQKICAgIHJlcXVldWVUaW1lb3V0OiAgIDI1MCwgICAgICAvLyBtcyBkZWxheSBmb3IgcmVxdWV1ZQogICAgcmV2OiAgICAgICAgICAgICAgMCwgICAgICAgIC8vIGNhdXNlcyBhbmltYXRpb25zIHRvIHRyYW5zaXRpb24gaW4gcmV2ZXJzZSAoZm9yIGVmZmVjdHMgdGhhdCBzdXBwb3J0IGl0IHN1Y2ggYXMgc2Nyb2xsSG9yei9zY3JvbGxWZXJ0L3NodWZmbGUpCiAgICBzaHVmZmxlOiAgICAgICAgICBudWxsLCAgICAgLy8gY29vcmRzIGZvciBzaHVmZmxlIGFuaW1hdGlvbiwgZXg6IHsgdG9wOjE1LCBsZWZ0OiAyMDAgfQogICAgc2tpcEluaXRpYWxpemF0aW9uQ2FsbGJhY2tzOiBmYWxzZSwgLy8gc2V0IHRvIHRydWUgdG8gZGlzYWJsZSB0aGUgZmlyc3QgYmVmb3JlL2FmdGVyIGNhbGxiYWNrIHRoYXQgb2NjdXJzIHByaW9yIHRvIGFueSB0cmFuc2l0aW9uCiAgICBzbGlkZUV4cHI6ICAgICAgICBudWxsLCAgICAgLy8gZXhwcmVzc2lvbiBmb3Igc2VsZWN0aW5nIHNsaWRlcyAoaWYgc29tZXRoaW5nIG90aGVyIHRoYW4gYWxsIGNoaWxkcmVuIGlzIHJlcXVpcmVkKQogICAgc2xpZGVSZXNpemU6ICAgICAgMSwgICAgICAgIC8vIGZvcmNlIHNsaWRlIHdpZHRoL2hlaWdodCB0byBmaXhlZCBzaXplIGJlZm9yZSBldmVyeSB0cmFuc2l0aW9uCiAgICBzcGVlZDogICAgICAgICAgICAxMDAwLCAgICAgLy8gc3BlZWQgb2YgdGhlIHRyYW5zaXRpb24gKGFueSB2YWxpZCBmeCBzcGVlZCB2YWx1ZSkKICAgIHNwZWVkSW46ICAgICAgICAgIG51bGwsICAgICAvLyBzcGVlZCBvZiB0aGUgJ2luJyB0cmFuc2l0aW9uCiAgICBzcGVlZE91dDogICAgICAgICBudWxsLCAgICAgLy8gc3BlZWQgb2YgdGhlICdvdXQnIHRyYW5zaXRpb24KICAgIHN0YXJ0aW5nU2xpZGU6ICAgIHVuZGVmaW5lZCwvLyB6ZXJvLWJhc2VkIGluZGV4IG9mIHRoZSBmaXJzdCBzbGlkZSB0byBiZSBkaXNwbGF5ZWQKICAgIHN5bmM6ICAgICAgICAgICAgIDEsICAgICAgICAvLyB0cnVlIGlmIGluL291dCB0cmFuc2l0aW9ucyBzaG91bGQgb2NjdXIgc2ltdWx0YW5lb3VzbHkKICAgIHRpbWVvdXQ6ICAgICAgICAgIDQwMDAsICAgICAvLyBtaWxsaXNlY29uZHMgYmV0d2VlbiBzbGlkZSB0cmFuc2l0aW9ucyAoMCB0byBkaXNhYmxlIGF1dG8gYWR2YW5jZSkKICAgIHRpbWVvdXRGbjogICAgICAgIG51bGwsICAgICAvLyBjYWxsYmFjayBmb3IgZGV0ZXJtaW5pbmcgcGVyLXNsaWRlIHRpbWVvdXQgdmFsdWU6ICBmdW5jdGlvbihjdXJyU2xpZGVFbGVtZW50LCBuZXh0U2xpZGVFbGVtZW50LCBvcHRpb25zLCBmb3J3YXJkRmxhZykKICAgIHVwZGF0ZUFjdGl2ZVBhZ2VyTGluazogbnVsbCwvLyBjYWxsYmFjayBmbiBpbnZva2VkIHRvIHVwZGF0ZSB0aGUgYWN0aXZlIHBhZ2VyIGxpbmsgKGFkZHMvcmVtb3ZlcyBhY3RpdmVQYWdlckNsYXNzIHN0eWxlKQogICAgd2lkdGg6ICAgICAgICAgICAgbnVsbCAgICAgIC8vIGNvbnRhaW5lciB3aWR0aCAoaWYgdGhlICdmaXQnIG9wdGlvbiBpcyB0cnVlLCB0aGUgc2xpZGVzIHdpbGwgYmUgc2V0IHRvIHRoaXMgd2lkdGggYXMgd2VsbCkKfTsKCn0pKGpRdWVyeSk7CgoKLyohCiAqIGpRdWVyeSBDeWNsZSBQbHVnaW4gVHJhbnNpdGlvbiBEZWZpbml0aW9ucwogKiBUaGlzIHNjcmlwdCBpcyBhIHBsdWdpbiBmb3IgdGhlIGpRdWVyeSBDeWNsZSBQbHVnaW4KICogRXhhbXBsZXMgYW5kIGRvY3VtZW50YXRpb24gYXQ6IGh0dHA6Ly9tYWxzdXAuY29tL2pxdWVyeS9jeWNsZS8KICogQ29weXJpZ2h0IChjKSAyMDA3LTIwMTAgTS4gQWxzdXAKICogVmVyc2lvbjoJIDIuNzMKICogRHVhbCBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGFuZCBHUEwgbGljZW5zZXM6CiAqIGh0dHA6Ly93d3cub3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvbWl0LWxpY2Vuc2UucGhwCiAqIGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwuaHRtbAogKi8KKGZ1bmN0aW9uKCQpIHsKInVzZSBzdHJpY3QiOwoKLy8KLy8gVGhlc2UgZnVuY3Rpb25zIGRlZmluZSBzbGlkZSBpbml0aWFsaXphdGlvbiBhbmQgcHJvcGVydGllcyBmb3IgdGhlIG5hbWVkCi8vIHRyYW5zaXRpb25zLiBUbyBzYXZlIGZpbGUgc2l6ZSBmZWVsIGZyZWUgdG8gcmVtb3ZlIGFueSBvZiB0aGVzZSB0aGF0IHlvdQovLyBkb24ndCBuZWVkLgovLwokLmZuLmN5Y2xlLnRyYW5zaXRpb25zLm5vbmUgPSBmdW5jdGlvbigkY29udCwgJHNsaWRlcywgb3B0cykgewoJb3B0cy5meEZuID0gZnVuY3Rpb24oY3VycixuZXh0LG9wdHMsYWZ0ZXIpewoJCSQobmV4dCkuc2hvdygpOwoJCSQoY3VycikuaGlkZSgpOwoJCWFmdGVyKCk7Cgl9Owp9OwoKLy8gbm90IGEgY3Jvc3MtZmFkZSwgZmFkZW91dCBvbmx5IGZhZGVzIG91dCB0aGUgdG9wIHNsaWRlCiQuZm4uY3ljbGUudHJhbnNpdGlvbnMuZmFkZW91dCA9IGZ1bmN0aW9uKCRjb250LCAkc2xpZGVzLCBvcHRzKSB7Cgkkc2xpZGVzLm5vdCgnOmVxKCcrb3B0cy5jdXJyU2xpZGUrJyknKS5jc3MoeyBkaXNwbGF5OiAnYmxvY2snLCAnb3BhY2l0eSc6IDEgfSk7CglvcHRzLmJlZm9yZS5wdXNoKGZ1bmN0aW9uKGN1cnIsbmV4dCxvcHRzLHcsaCxyZXYpIHsKCQkkKGN1cnIpLmNzcygnekluZGV4JyxvcHRzLnNsaWRlQ291bnQgKyAocmV2ICE9PSB0cnVlID8gMSA6IDApKTsKCQkkKG5leHQpLmNzcygnekluZGV4JyxvcHRzLnNsaWRlQ291bnQgKyAocmV2ICE9PSB0cnVlID8gMCA6IDEpKTsKCX0pOwoJb3B0cy5hbmltSW4ub3BhY2l0eSA9IDE7CglvcHRzLmFuaW1PdXQub3BhY2l0eSA9IDA7CglvcHRzLmNzc0JlZm9yZS5vcGFjaXR5ID0gMTsKCW9wdHMuY3NzQmVmb3JlLmRpc3BsYXkgPSAnYmxvY2snOwoJb3B0cy5jc3NBZnRlci56SW5kZXggPSAwOwp9OwoKLy8gc2Nyb2xsVXAvRG93bi9MZWZ0L1JpZ2h0CiQuZm4uY3ljbGUudHJhbnNpdGlvbnMuc2Nyb2xsVXAgPSBmdW5jdGlvbigkY29udCwgJHNsaWRlcywgb3B0cykgewoJJGNvbnQuY3NzKCdvdmVyZmxvdycsJ2hpZGRlbicpOwoJb3B0cy5iZWZvcmUucHVzaCgkLmZuLmN5Y2xlLmNvbW1vblJlc2V0KTsKCXZhciBoID0gJGNvbnQuaGVpZ2h0KCk7CglvcHRzLmNzc0JlZm9yZS50b3AgPSBoOwoJb3B0cy5jc3NCZWZvcmUubGVmdCA9IDA7CglvcHRzLmNzc0ZpcnN0LnRvcCA9IDA7CglvcHRzLmFuaW1Jbi50b3AgPSAwOwoJb3B0cy5hbmltT3V0LnRvcCA9IC1oOwp9OwokLmZuLmN5Y2xlLnRyYW5zaXRpb25zLnNjcm9sbERvd24gPSBmdW5jdGlvbigkY29udCwgJHNsaWRlcywgb3B0cykgewoJJGNvbnQuY3NzKCdvdmVyZmxvdycsJ2hpZGRlbicpOwoJb3B0cy5iZWZvcmUucHVzaCgkLmZuLmN5Y2xlLmNvbW1vblJlc2V0KTsKCXZhciBoID0gJGNvbnQuaGVpZ2h0KCk7CglvcHRzLmNzc0ZpcnN0LnRvcCA9IDA7CglvcHRzLmNzc0JlZm9yZS50b3AgPSAtaDsKCW9wdHMuY3NzQmVmb3JlLmxlZnQgPSAwOwoJb3B0cy5hbmltSW4udG9wID0gMDsKCW9wdHMuYW5pbU91dC50b3AgPSBoOwp9OwokLmZuLmN5Y2xlLnRyYW5zaXRpb25zLnNjcm9sbExlZnQgPSBmdW5jdGlvbigkY29udCwgJHNsaWRlcywgb3B0cykgewoJJGNvbnQuY3NzKCdvdmVyZmxvdycsJ2hpZGRlbicpOwoJb3B0cy5iZWZvcmUucHVzaCgkLmZuLmN5Y2xlLmNvbW1vblJlc2V0KTsKCXZhciB3ID0gJGNvbnQud2lkdGgoKTsKCW9wdHMuY3NzRmlyc3QubGVmdCA9IDA7CglvcHRzLmNzc0JlZm9yZS5sZWZ0ID0gdzsKCW9wdHMuY3NzQmVmb3JlLnRvcCA9IDA7CglvcHRzLmFuaW1Jbi5sZWZ0ID0gMDsKCW9wdHMuYW5pbU91dC5sZWZ0ID0gMC13Owp9OwokLmZuLmN5Y2xlLnRyYW5zaXRpb25zLnNjcm9sbFJpZ2h0ID0gZnVuY3Rpb24oJGNvbnQsICRzbGlkZXMsIG9wdHMpIHsKCSRjb250LmNzcygnb3ZlcmZsb3cnLCdoaWRkZW4nKTsKCW9wdHMuYmVmb3JlLnB1c2goJC5mbi5jeWNsZS5jb21tb25SZXNldCk7Cgl2YXIgdyA9ICRjb250LndpZHRoKCk7CglvcHRzLmNzc0ZpcnN0LmxlZnQgPSAwOwoJb3B0cy5jc3NCZWZvcmUubGVmdCA9IC13OwoJb3B0cy5jc3NCZWZvcmUudG9wID0gMDsKCW9wdHMuYW5pbUluLmxlZnQgPSAwOwoJb3B0cy5hbmltT3V0LmxlZnQgPSB3Owp9OwokLmZuLmN5Y2xlLnRyYW5zaXRpb25zLnNjcm9sbEhvcnogPSBmdW5jdGlvbigkY29udCwgJHNsaWRlcywgb3B0cykgewoJJGNvbnQuY3NzKCdvdmVyZmxvdycsJ2hpZGRlbicpLndpZHRoKCk7CglvcHRzLmJlZm9yZS5wdXNoKGZ1bmN0aW9uKGN1cnIsIG5leHQsIG9wdHMsIGZ3ZCkgewoJCWlmIChvcHRzLnJldikKCQkJZndkID0gIWZ3ZDsKCQkkLmZuLmN5Y2xlLmNvbW1vblJlc2V0KGN1cnIsbmV4dCxvcHRzKTsKCQlvcHRzLmNzc0JlZm9yZS5sZWZ0ID0gZndkID8gKG5leHQuY3ljbGVXLTEpIDogKDEtbmV4dC5jeWNsZVcpOwoJCW9wdHMuYW5pbU91dC5sZWZ0ID0gZndkID8gLWN1cnIuY3ljbGVXIDogY3Vyci5jeWNsZVc7Cgl9KTsKCW9wdHMuY3NzRmlyc3QubGVmdCA9IDA7CglvcHRzLmNzc0JlZm9yZS50b3AgPSAwOwoJb3B0cy5hbmltSW4ubGVmdCA9IDA7CglvcHRzLmFuaW1PdXQudG9wID0gMDsKfTsKJC5mbi5jeWNsZS50cmFuc2l0aW9ucy5zY3JvbGxWZXJ0ID0gZnVuY3Rpb24oJGNvbnQsICRzbGlkZXMsIG9wdHMpIHsKCSRjb250LmNzcygnb3ZlcmZsb3cnLCdoaWRkZW4nKTsKCW9wdHMuYmVmb3JlLnB1c2goZnVuY3Rpb24oY3VyciwgbmV4dCwgb3B0cywgZndkKSB7CgkJaWYgKG9wdHMucmV2KQoJCQlmd2QgPSAhZndkOwoJCSQuZm4uY3ljbGUuY29tbW9uUmVzZXQoY3VycixuZXh0LG9wdHMpOwoJCW9wdHMuY3NzQmVmb3JlLnRvcCA9IGZ3ZCA/ICgxLW5leHQuY3ljbGVIKSA6IChuZXh0LmN5Y2xlSC0xKTsKCQlvcHRzLmFuaW1PdXQudG9wID0gZndkID8gY3Vyci5jeWNsZUggOiAtY3Vyci5jeWNsZUg7Cgl9KTsKCW9wdHMuY3NzRmlyc3QudG9wID0gMDsKCW9wdHMuY3NzQmVmb3JlLmxlZnQgPSAwOwoJb3B0cy5hbmltSW4udG9wID0gMDsKCW9wdHMuYW5pbU91dC5sZWZ0ID0gMDsKfTsKCi8vIHNsaWRlWC9zbGlkZVkKJC5mbi5jeWNsZS50cmFuc2l0aW9ucy5zbGlkZVggPSBmdW5jdGlvbigkY29udCwgJHNsaWRlcywgb3B0cykgewoJb3B0cy5iZWZvcmUucHVzaChmdW5jdGlvbihjdXJyLCBuZXh0LCBvcHRzKSB7CgkJJChvcHRzLmVsZW1lbnRzKS5ub3QoY3VycikuaGlkZSgpOwoJCSQuZm4uY3ljbGUuY29tbW9uUmVzZXQoY3VycixuZXh0LG9wdHMsZmFsc2UsdHJ1ZSk7CgkJb3B0cy5hbmltSW4ud2lkdGggPSBuZXh0LmN5Y2xlVzsKCX0pOwoJb3B0cy5jc3NCZWZvcmUubGVmdCA9IDA7CglvcHRzLmNzc0JlZm9yZS50b3AgPSAwOwoJb3B0cy5jc3NCZWZvcmUud2lkdGggPSAwOwoJb3B0cy5hbmltSW4ud2lkdGggPSAnc2hvdyc7CglvcHRzLmFuaW1PdXQud2lkdGggPSAwOwp9OwokLmZuLmN5Y2xlLnRyYW5zaXRpb25zLnNsaWRlWSA9IGZ1bmN0aW9uKCRjb250LCAkc2xpZGVzLCBvcHRzKSB7CglvcHRzLmJlZm9yZS5wdXNoKGZ1bmN0aW9uKGN1cnIsIG5leHQsIG9wdHMpIHsKCQkkKG9wdHMuZWxlbWVudHMpLm5vdChjdXJyKS5oaWRlKCk7CgkJJC5mbi5jeWNsZS5jb21tb25SZXNldChjdXJyLG5leHQsb3B0cyx0cnVlLGZhbHNlKTsKCQlvcHRzLmFuaW1Jbi5oZWlnaHQgPSBuZXh0LmN5Y2xlSDsKCX0pOwoJb3B0cy5jc3NCZWZvcmUubGVmdCA9IDA7CglvcHRzLmNzc0JlZm9yZS50b3AgPSAwOwoJb3B0cy5jc3NCZWZvcmUuaGVpZ2h0ID0gMDsKCW9wdHMuYW5pbUluLmhlaWdodCA9ICdzaG93JzsKCW9wdHMuYW5pbU91dC5oZWlnaHQgPSAwOwp9OwoKLy8gc2h1ZmZsZQokLmZuLmN5Y2xlLnRyYW5zaXRpb25zLnNodWZmbGUgPSBmdW5jdGlvbigkY29udCwgJHNsaWRlcywgb3B0cykgewoJdmFyIGksIHcgPSAkY29udC5jc3MoJ292ZXJmbG93JywgJ3Zpc2libGUnKS53aWR0aCgpOwoJJHNsaWRlcy5jc3Moe2xlZnQ6IDAsIHRvcDogMH0pOwoJb3B0cy5iZWZvcmUucHVzaChmdW5jdGlvbihjdXJyLG5leHQsb3B0cykgewoJCSQuZm4uY3ljbGUuY29tbW9uUmVzZXQoY3VycixuZXh0LG9wdHMsdHJ1ZSx0cnVlLHRydWUpOwoJfSk7CgkvLyBvbmx5IGFkanVzdCBzcGVlZCBvbmNlIQoJaWYgKCFvcHRzLnNwZWVkQWRqdXN0ZWQpIHsKCQlvcHRzLnNwZWVkID0gb3B0cy5zcGVlZCAvIDI7IC8vIHNodWZmbGUgaGFzIDIgdHJhbnNpdGlvbnMKCQlvcHRzLnNwZWVkQWRqdXN0ZWQgPSB0cnVlOwoJfQoJb3B0cy5yYW5kb20gPSAwOwoJb3B0cy5zaHVmZmxlID0gb3B0cy5zaHVmZmxlIHx8IHtsZWZ0Oi13LCB0b3A6MTV9OwoJb3B0cy5lbHMgPSBbXTsKCWZvciAoaT0wOyBpIDwgJHNsaWRlcy5sZW5ndGg7IGkrKykKCQlvcHRzLmVscy5wdXNoKCRzbGlkZXNbaV0pOwoKCWZvciAoaT0wOyBpIDwgb3B0cy5jdXJyU2xpZGU7IGkrKykKCQlvcHRzLmVscy5wdXNoKG9wdHMuZWxzLnNoaWZ0KCkpOwoKCS8vIGN1c3RvbSB0cmFuc2l0aW9uIGZuIChoYXQgdGlwIHRvIEJlbmphbWluIFN0ZXJsaW5nIGZvciB0aGlzIGJpdCBvZiBzd2VldG5lc3MhKQoJb3B0cy5meEZuID0gZnVuY3Rpb24oY3VyciwgbmV4dCwgb3B0cywgY2IsIGZ3ZCkgewoJCWlmIChvcHRzLnJldikKCQkJZndkID0gIWZ3ZDsKCQl2YXIgJGVsID0gZndkID8gJChjdXJyKSA6ICQobmV4dCk7CgkJJChuZXh0KS5jc3Mob3B0cy5jc3NCZWZvcmUpOwoJCXZhciBjb3VudCA9IG9wdHMuc2xpZGVDb3VudDsKCQkkZWwuYW5pbWF0ZShvcHRzLnNodWZmbGUsIG9wdHMuc3BlZWRJbiwgb3B0cy5lYXNlSW4sIGZ1bmN0aW9uKCkgewoJCQl2YXIgaG9wcyA9ICQuZm4uY3ljbGUuaG9wc0Zyb21MYXN0KG9wdHMsIGZ3ZCk7CgkJCWZvciAodmFyIGs9MDsgayA8IGhvcHM7IGsrKykgewoJCQkJaWYgKGZ3ZCkKCQkJCQlvcHRzLmVscy5wdXNoKG9wdHMuZWxzLnNoaWZ0KCkpOwoJCQkJZWxzZQoJCQkJCW9wdHMuZWxzLnVuc2hpZnQob3B0cy5lbHMucG9wKCkpOwoJCQl9CgkJCWlmIChmd2QpIHsKCQkJCWZvciAodmFyIGk9MCwgbGVuPW9wdHMuZWxzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKQoJCQkJCSQob3B0cy5lbHNbaV0pLmNzcygnei1pbmRleCcsIGxlbi1pK2NvdW50KTsKCQkJfQoJCQllbHNlIHsKCQkJCXZhciB6ID0gJChjdXJyKS5jc3MoJ3otaW5kZXgnKTsKCQkJCSRlbC5jc3MoJ3otaW5kZXgnLCBwYXJzZUludCh6LDEwKSsxK2NvdW50KTsKCQkJfQoJCQkkZWwuYW5pbWF0ZSh7bGVmdDowLCB0b3A6MH0sIG9wdHMuc3BlZWRPdXQsIG9wdHMuZWFzZU91dCwgZnVuY3Rpb24oKSB7CgkJCQkkKGZ3ZCA/IHRoaXMgOiBjdXJyKS5oaWRlKCk7CgkJCQlpZiAoY2IpIGNiKCk7CgkJCX0pOwoJCX0pOwoJfTsKCSQuZXh0ZW5kKG9wdHMuY3NzQmVmb3JlLCB7IGRpc3BsYXk6ICdibG9jaycsIG9wYWNpdHk6IDEsIHRvcDogMCwgbGVmdDogMCB9KTsKfTsKCi8vIHR1cm5VcC9Eb3duL0xlZnQvUmlnaHQKJC5mbi5jeWNsZS50cmFuc2l0aW9ucy50dXJuVXAgPSBmdW5jdGlvbigkY29udCwgJHNsaWRlcywgb3B0cykgewoJb3B0cy5iZWZvcmUucHVzaChmdW5jdGlvbihjdXJyLCBuZXh0LCBvcHRzKSB7CgkJJC5mbi5jeWNsZS5jb21tb25SZXNldChjdXJyLG5leHQsb3B0cyx0cnVlLGZhbHNlKTsKCQlvcHRzLmNzc0JlZm9yZS50b3AgPSBuZXh0LmN5Y2xlSDsKCQlvcHRzLmFuaW1Jbi5oZWlnaHQgPSBuZXh0LmN5Y2xlSDsKCQlvcHRzLmFuaW1PdXQud2lkdGggPSBuZXh0LmN5Y2xlVzsKCX0pOwoJb3B0cy5jc3NGaXJzdC50b3AgPSAwOwoJb3B0cy5jc3NCZWZvcmUubGVmdCA9IDA7CglvcHRzLmNzc0JlZm9yZS5oZWlnaHQgPSAwOwoJb3B0cy5hbmltSW4udG9wID0gMDsKCW9wdHMuYW5pbU91dC5oZWlnaHQgPSAwOwp9OwokLmZuLmN5Y2xlLnRyYW5zaXRpb25zLnR1cm5Eb3duID0gZnVuY3Rpb24oJGNvbnQsICRzbGlkZXMsIG9wdHMpIHsKCW9wdHMuYmVmb3JlLnB1c2goZnVuY3Rpb24oY3VyciwgbmV4dCwgb3B0cykgewoJCSQuZm4uY3ljbGUuY29tbW9uUmVzZXQoY3VycixuZXh0LG9wdHMsdHJ1ZSxmYWxzZSk7CgkJb3B0cy5hbmltSW4uaGVpZ2h0ID0gbmV4dC5jeWNsZUg7CgkJb3B0cy5hbmltT3V0LnRvcCAgID0gY3Vyci5jeWNsZUg7Cgl9KTsKCW9wdHMuY3NzRmlyc3QudG9wID0gMDsKCW9wdHMuY3NzQmVmb3JlLmxlZnQgPSAwOwoJb3B0cy5jc3NCZWZvcmUudG9wID0gMDsKCW9wdHMuY3NzQmVmb3JlLmhlaWdodCA9IDA7CglvcHRzLmFuaW1PdXQuaGVpZ2h0ID0gMDsKfTsKJC5mbi5jeWNsZS50cmFuc2l0aW9ucy50dXJuTGVmdCA9IGZ1bmN0aW9uKCRjb250LCAkc2xpZGVzLCBvcHRzKSB7CglvcHRzLmJlZm9yZS5wdXNoKGZ1bmN0aW9uKGN1cnIsIG5leHQsIG9wdHMpIHsKCQkkLmZuLmN5Y2xlLmNvbW1vblJlc2V0KGN1cnIsbmV4dCxvcHRzLGZhbHNlLHRydWUpOwoJCW9wdHMuY3NzQmVmb3JlLmxlZnQgPSBuZXh0LmN5Y2xlVzsKCQlvcHRzLmFuaW1Jbi53aWR0aCA9IG5leHQuY3ljbGVXOwoJfSk7CglvcHRzLmNzc0JlZm9yZS50b3AgPSAwOwoJb3B0cy5jc3NCZWZvcmUud2lkdGggPSAwOwoJb3B0cy5hbmltSW4ubGVmdCA9IDA7CglvcHRzLmFuaW1PdXQud2lkdGggPSAwOwp9OwokLmZuLmN5Y2xlLnRyYW5zaXRpb25zLnR1cm5SaWdodCA9IGZ1bmN0aW9uKCRjb250LCAkc2xpZGVzLCBvcHRzKSB7CglvcHRzLmJlZm9yZS5wdXNoKGZ1bmN0aW9uKGN1cnIsIG5leHQsIG9wdHMpIHsKCQkkLmZuLmN5Y2xlLmNvbW1vblJlc2V0KGN1cnIsbmV4dCxvcHRzLGZhbHNlLHRydWUpOwoJCW9wdHMuYW5pbUluLndpZHRoID0gbmV4dC5jeWNsZVc7CgkJb3B0cy5hbmltT3V0LmxlZnQgPSBjdXJyLmN5Y2xlVzsKCX0pOwoJJC5leHRlbmQob3B0cy5jc3NCZWZvcmUsIHsgdG9wOiAwLCBsZWZ0OiAwLCB3aWR0aDogMCB9KTsKCW9wdHMuYW5pbUluLmxlZnQgPSAwOwoJb3B0cy5hbmltT3V0LndpZHRoID0gMDsKfTsKCi8vIHpvb20KJC5mbi5jeWNsZS50cmFuc2l0aW9ucy56b29tID0gZnVuY3Rpb24oJGNvbnQsICRzbGlkZXMsIG9wdHMpIHsKCW9wdHMuYmVmb3JlLnB1c2goZnVuY3Rpb24oY3VyciwgbmV4dCwgb3B0cykgewoJCSQuZm4uY3ljbGUuY29tbW9uUmVzZXQoY3VycixuZXh0LG9wdHMsZmFsc2UsZmFsc2UsdHJ1ZSk7CgkJb3B0cy5jc3NCZWZvcmUudG9wID0gbmV4dC5jeWNsZUgvMjsKCQlvcHRzLmNzc0JlZm9yZS5sZWZ0ID0gbmV4dC5jeWNsZVcvMjsKCQkkLmV4dGVuZChvcHRzLmFuaW1JbiwgeyB0b3A6IDAsIGxlZnQ6IDAsIHdpZHRoOiBuZXh0LmN5Y2xlVywgaGVpZ2h0OiBuZXh0LmN5Y2xlSCB9KTsKCQkkLmV4dGVuZChvcHRzLmFuaW1PdXQsIHsgd2lkdGg6IDAsIGhlaWdodDogMCwgdG9wOiBjdXJyLmN5Y2xlSC8yLCBsZWZ0OiBjdXJyLmN5Y2xlVy8yIH0pOwoJfSk7CglvcHRzLmNzc0ZpcnN0LnRvcCA9IDA7CglvcHRzLmNzc0ZpcnN0LmxlZnQgPSAwOwoJb3B0cy5jc3NCZWZvcmUud2lkdGggPSAwOwoJb3B0cy5jc3NCZWZvcmUuaGVpZ2h0ID0gMDsKfTsKCi8vIGZhZGVab29tCiQuZm4uY3ljbGUudHJhbnNpdGlvbnMuZmFkZVpvb20gPSBmdW5jdGlvbigkY29udCwgJHNsaWRlcywgb3B0cykgewoJb3B0cy5iZWZvcmUucHVzaChmdW5jdGlvbihjdXJyLCBuZXh0LCBvcHRzKSB7CgkJJC5mbi5jeWNsZS5jb21tb25SZXNldChjdXJyLG5leHQsb3B0cyxmYWxzZSxmYWxzZSk7CgkJb3B0cy5jc3NCZWZvcmUubGVmdCA9IG5leHQuY3ljbGVXLzI7CgkJb3B0cy5jc3NCZWZvcmUudG9wID0gbmV4dC5jeWNsZUgvMjsKCQkkLmV4dGVuZChvcHRzLmFuaW1JbiwgeyB0b3A6IDAsIGxlZnQ6IDAsIHdpZHRoOiBuZXh0LmN5Y2xlVywgaGVpZ2h0OiBuZXh0LmN5Y2xlSCB9KTsKCX0pOwoJb3B0cy5jc3NCZWZvcmUud2lkdGggPSAwOwoJb3B0cy5jc3NCZWZvcmUuaGVpZ2h0ID0gMDsKCW9wdHMuYW5pbU91dC5vcGFjaXR5ID0gMDsKfTsKCi8vIGJsaW5kWAokLmZuLmN5Y2xlLnRyYW5zaXRpb25zLmJsaW5kWCA9IGZ1bmN0aW9uKCRjb250LCAkc2xpZGVzLCBvcHRzKSB7Cgl2YXIgdyA9ICRjb250LmNzcygnb3ZlcmZsb3cnLCdoaWRkZW4nKS53aWR0aCgpOwoJb3B0cy5iZWZvcmUucHVzaChmdW5jdGlvbihjdXJyLCBuZXh0LCBvcHRzKSB7CgkJJC5mbi5jeWNsZS5jb21tb25SZXNldChjdXJyLG5leHQsb3B0cyk7CgkJb3B0cy5hbmltSW4ud2lkdGggPSBuZXh0LmN5Y2xlVzsKCQlvcHRzLmFuaW1PdXQubGVmdCAgID0gY3Vyci5jeWNsZVc7Cgl9KTsKCW9wdHMuY3NzQmVmb3JlLmxlZnQgPSB3OwoJb3B0cy5jc3NCZWZvcmUudG9wID0gMDsKCW9wdHMuYW5pbUluLmxlZnQgPSAwOwoJb3B0cy5hbmltT3V0LmxlZnQgPSB3Owp9OwovLyBibGluZFkKJC5mbi5jeWNsZS50cmFuc2l0aW9ucy5ibGluZFkgPSBmdW5jdGlvbigkY29udCwgJHNsaWRlcywgb3B0cykgewoJdmFyIGggPSAkY29udC5jc3MoJ292ZXJmbG93JywnaGlkZGVuJykuaGVpZ2h0KCk7CglvcHRzLmJlZm9yZS5wdXNoKGZ1bmN0aW9uKGN1cnIsIG5leHQsIG9wdHMpIHsKCQkkLmZuLmN5Y2xlLmNvbW1vblJlc2V0KGN1cnIsbmV4dCxvcHRzKTsKCQlvcHRzLmFuaW1Jbi5oZWlnaHQgPSBuZXh0LmN5Y2xlSDsKCQlvcHRzLmFuaW1PdXQudG9wICAgPSBjdXJyLmN5Y2xlSDsKCX0pOwoJb3B0cy5jc3NCZWZvcmUudG9wID0gaDsKCW9wdHMuY3NzQmVmb3JlLmxlZnQgPSAwOwoJb3B0cy5hbmltSW4udG9wID0gMDsKCW9wdHMuYW5pbU91dC50b3AgPSBoOwp9OwovLyBibGluZFoKJC5mbi5jeWNsZS50cmFuc2l0aW9ucy5ibGluZFogPSBmdW5jdGlvbigkY29udCwgJHNsaWRlcywgb3B0cykgewoJdmFyIGggPSAkY29udC5jc3MoJ292ZXJmbG93JywnaGlkZGVuJykuaGVpZ2h0KCk7Cgl2YXIgdyA9ICRjb250LndpZHRoKCk7CglvcHRzLmJlZm9yZS5wdXNoKGZ1bmN0aW9uKGN1cnIsIG5leHQsIG9wdHMpIHsKCQkkLmZuLmN5Y2xlLmNvbW1vblJlc2V0KGN1cnIsbmV4dCxvcHRzKTsKCQlvcHRzLmFuaW1Jbi5oZWlnaHQgPSBuZXh0LmN5Y2xlSDsKCQlvcHRzLmFuaW1PdXQudG9wICAgPSBjdXJyLmN5Y2xlSDsKCX0pOwoJb3B0cy5jc3NCZWZvcmUudG9wID0gaDsKCW9wdHMuY3NzQmVmb3JlLmxlZnQgPSB3OwoJb3B0cy5hbmltSW4udG9wID0gMDsKCW9wdHMuYW5pbUluLmxlZnQgPSAwOwoJb3B0cy5hbmltT3V0LnRvcCA9IGg7CglvcHRzLmFuaW1PdXQubGVmdCA9IHc7Cn07CgovLyBncm93WCAtIGdyb3cgaG9yaXpvbnRhbGx5IGZyb20gY2VudGVyZWQgMCB3aWR0aAokLmZuLmN5Y2xlLnRyYW5zaXRpb25zLmdyb3dYID0gZnVuY3Rpb24oJGNvbnQsICRzbGlkZXMsIG9wdHMpIHsKCW9wdHMuYmVmb3JlLnB1c2goZnVuY3Rpb24oY3VyciwgbmV4dCwgb3B0cykgewoJCSQuZm4uY3ljbGUuY29tbW9uUmVzZXQoY3VycixuZXh0LG9wdHMsZmFsc2UsdHJ1ZSk7CgkJb3B0cy5jc3NCZWZvcmUubGVmdCA9IHRoaXMuY3ljbGVXLzI7CgkJb3B0cy5hbmltSW4ubGVmdCA9IDA7CgkJb3B0cy5hbmltSW4ud2lkdGggPSB0aGlzLmN5Y2xlVzsKCQlvcHRzLmFuaW1PdXQubGVmdCA9IDA7Cgl9KTsKCW9wdHMuY3NzQmVmb3JlLnRvcCA9IDA7CglvcHRzLmNzc0JlZm9yZS53aWR0aCA9IDA7Cn07Ci8vIGdyb3dZIC0gZ3JvdyB2ZXJ0aWNhbGx5IGZyb20gY2VudGVyZWQgMCBoZWlnaHQKJC5mbi5jeWNsZS50cmFuc2l0aW9ucy5ncm93WSA9IGZ1bmN0aW9uKCRjb250LCAkc2xpZGVzLCBvcHRzKSB7CglvcHRzLmJlZm9yZS5wdXNoKGZ1bmN0aW9uKGN1cnIsIG5leHQsIG9wdHMpIHsKCQkkLmZuLmN5Y2xlLmNvbW1vblJlc2V0KGN1cnIsbmV4dCxvcHRzLHRydWUsZmFsc2UpOwoJCW9wdHMuY3NzQmVmb3JlLnRvcCA9IHRoaXMuY3ljbGVILzI7CgkJb3B0cy5hbmltSW4udG9wID0gMDsKCQlvcHRzLmFuaW1Jbi5oZWlnaHQgPSB0aGlzLmN5Y2xlSDsKCQlvcHRzLmFuaW1PdXQudG9wID0gMDsKCX0pOwoJb3B0cy5jc3NCZWZvcmUuaGVpZ2h0ID0gMDsKCW9wdHMuY3NzQmVmb3JlLmxlZnQgPSAwOwp9OwoKLy8gY3VydGFpblggLSBzcXVlZXplIGluIGJvdGggZWRnZXMgaG9yaXpvbnRhbGx5CiQuZm4uY3ljbGUudHJhbnNpdGlvbnMuY3VydGFpblggPSBmdW5jdGlvbigkY29udCwgJHNsaWRlcywgb3B0cykgewoJb3B0cy5iZWZvcmUucHVzaChmdW5jdGlvbihjdXJyLCBuZXh0LCBvcHRzKSB7CgkJJC5mbi5jeWNsZS5jb21tb25SZXNldChjdXJyLG5leHQsb3B0cyxmYWxzZSx0cnVlLHRydWUpOwoJCW9wdHMuY3NzQmVmb3JlLmxlZnQgPSBuZXh0LmN5Y2xlVy8yOwoJCW9wdHMuYW5pbUluLmxlZnQgPSAwOwoJCW9wdHMuYW5pbUluLndpZHRoID0gdGhpcy5jeWNsZVc7CgkJb3B0cy5hbmltT3V0LmxlZnQgPSBjdXJyLmN5Y2xlVy8yOwoJCW9wdHMuYW5pbU91dC53aWR0aCA9IDA7Cgl9KTsKCW9wdHMuY3NzQmVmb3JlLnRvcCA9IDA7CglvcHRzLmNzc0JlZm9yZS53aWR0aCA9IDA7Cn07Ci8vIGN1cnRhaW5ZIC0gc3F1ZWV6ZSBpbiBib3RoIGVkZ2VzIHZlcnRpY2FsbHkKJC5mbi5jeWNsZS50cmFuc2l0aW9ucy5jdXJ0YWluWSA9IGZ1bmN0aW9uKCRjb250LCAkc2xpZGVzLCBvcHRzKSB7CglvcHRzLmJlZm9yZS5wdXNoKGZ1bmN0aW9uKGN1cnIsIG5leHQsIG9wdHMpIHsKCQkkLmZuLmN5Y2xlLmNvbW1vblJlc2V0KGN1cnIsbmV4dCxvcHRzLHRydWUsZmFsc2UsdHJ1ZSk7CgkJb3B0cy5jc3NCZWZvcmUudG9wID0gbmV4dC5jeWNsZUgvMjsKCQlvcHRzLmFuaW1Jbi50b3AgPSAwOwoJCW9wdHMuYW5pbUluLmhlaWdodCA9IG5leHQuY3ljbGVIOwoJCW9wdHMuYW5pbU91dC50b3AgPSBjdXJyLmN5Y2xlSC8yOwoJCW9wdHMuYW5pbU91dC5oZWlnaHQgPSAwOwoJfSk7CglvcHRzLmNzc0JlZm9yZS5oZWlnaHQgPSAwOwoJb3B0cy5jc3NCZWZvcmUubGVmdCA9IDA7Cn07CgovLyBjb3ZlciAtIGN1cnIgc2xpZGUgY292ZXJlZCBieSBuZXh0IHNsaWRlCiQuZm4uY3ljbGUudHJhbnNpdGlvbnMuY292ZXIgPSBmdW5jdGlvbigkY29udCwgJHNsaWRlcywgb3B0cykgewoJdmFyIGQgPSBvcHRzLmRpcmVjdGlvbiB8fCAnbGVmdCc7Cgl2YXIgdyA9ICRjb250LmNzcygnb3ZlcmZsb3cnLCdoaWRkZW4nKS53aWR0aCgpOwoJdmFyIGggPSAkY29udC5oZWlnaHQoKTsKCW9wdHMuYmVmb3JlLnB1c2goZnVuY3Rpb24oY3VyciwgbmV4dCwgb3B0cykgewoJCSQuZm4uY3ljbGUuY29tbW9uUmVzZXQoY3VycixuZXh0LG9wdHMpOwoJCW9wdHMuY3NzQWZ0ZXIuZGlzcGxheSA9ICcnOwoJCWlmIChkID09ICdyaWdodCcpCgkJCW9wdHMuY3NzQmVmb3JlLmxlZnQgPSAtdzsKCQllbHNlIGlmIChkID09ICd1cCcpCgkJCW9wdHMuY3NzQmVmb3JlLnRvcCA9IGg7CgkJZWxzZSBpZiAoZCA9PSAnZG93bicpCgkJCW9wdHMuY3NzQmVmb3JlLnRvcCA9IC1oOwoJCWVsc2UKCQkJb3B0cy5jc3NCZWZvcmUubGVmdCA9IHc7Cgl9KTsKCW9wdHMuYW5pbUluLmxlZnQgPSAwOwoJb3B0cy5hbmltSW4udG9wID0gMDsKCW9wdHMuY3NzQmVmb3JlLnRvcCA9IDA7CglvcHRzLmNzc0JlZm9yZS5sZWZ0ID0gMDsKfTsKCi8vIHVuY292ZXIgLSBjdXJyIHNsaWRlIG1vdmVzIG9mZiBuZXh0IHNsaWRlCiQuZm4uY3ljbGUudHJhbnNpdGlvbnMudW5jb3ZlciA9IGZ1bmN0aW9uKCRjb250LCAkc2xpZGVzLCBvcHRzKSB7Cgl2YXIgZCA9IG9wdHMuZGlyZWN0aW9uIHx8ICdsZWZ0JzsKCXZhciB3ID0gJGNvbnQuY3NzKCdvdmVyZmxvdycsJ2hpZGRlbicpLndpZHRoKCk7Cgl2YXIgaCA9ICRjb250LmhlaWdodCgpOwoJb3B0cy5iZWZvcmUucHVzaChmdW5jdGlvbihjdXJyLCBuZXh0LCBvcHRzKSB7CgkJJC5mbi5jeWNsZS5jb21tb25SZXNldChjdXJyLG5leHQsb3B0cyx0cnVlLHRydWUsdHJ1ZSk7CgkJaWYgKGQgPT0gJ3JpZ2h0JykKCQkJb3B0cy5hbmltT3V0LmxlZnQgPSB3OwoJCWVsc2UgaWYgKGQgPT0gJ3VwJykKCQkJb3B0cy5hbmltT3V0LnRvcCA9IC1oOwoJCWVsc2UgaWYgKGQgPT0gJ2Rvd24nKQoJCQlvcHRzLmFuaW1PdXQudG9wID0gaDsKCQllbHNlCgkJCW9wdHMuYW5pbU91dC5sZWZ0ID0gLXc7Cgl9KTsKCW9wdHMuYW5pbUluLmxlZnQgPSAwOwoJb3B0cy5hbmltSW4udG9wID0gMDsKCW9wdHMuY3NzQmVmb3JlLnRvcCA9IDA7CglvcHRzLmNzc0JlZm9yZS5sZWZ0ID0gMDsKfTsKCi8vIHRvc3MgLSBtb3ZlIHRvcCBzbGlkZSBhbmQgZmFkZSBhd2F5CiQuZm4uY3ljbGUudHJhbnNpdGlvbnMudG9zcyA9IGZ1bmN0aW9uKCRjb250LCAkc2xpZGVzLCBvcHRzKSB7Cgl2YXIgdyA9ICRjb250LmNzcygnb3ZlcmZsb3cnLCd2aXNpYmxlJykud2lkdGgoKTsKCXZhciBoID0gJGNvbnQuaGVpZ2h0KCk7CglvcHRzLmJlZm9yZS5wdXNoKGZ1bmN0aW9uKGN1cnIsIG5leHQsIG9wdHMpIHsKCQkkLmZuLmN5Y2xlLmNvbW1vblJlc2V0KGN1cnIsbmV4dCxvcHRzLHRydWUsdHJ1ZSx0cnVlKTsKCQkvLyBwcm92aWRlIGRlZmF1bHQgdG9zcyBzZXR0aW5ncyBpZiBhbmltT3V0IG5vdCBwcm92aWRlZAoJCWlmICghb3B0cy5hbmltT3V0LmxlZnQgJiYgIW9wdHMuYW5pbU91dC50b3ApCgkJCSQuZXh0ZW5kKG9wdHMuYW5pbU91dCwgeyBsZWZ0OiB3KjIsIHRvcDogLWgvMiwgb3BhY2l0eTogMCB9KTsKCQllbHNlCgkJCW9wdHMuYW5pbU91dC5vcGFjaXR5ID0gMDsKCX0pOwoJb3B0cy5jc3NCZWZvcmUubGVmdCA9IDA7CglvcHRzLmNzc0JlZm9yZS50b3AgPSAwOwoJb3B0cy5hbmltSW4ubGVmdCA9IDA7Cn07CgovLyB3aXBlIC0gY2xpcCBhbmltYXRpb24KJC5mbi5jeWNsZS50cmFuc2l0aW9ucy53aXBlID0gZnVuY3Rpb24oJGNvbnQsICRzbGlkZXMsIG9wdHMpIHsKCXZhciB3ID0gJGNvbnQuY3NzKCdvdmVyZmxvdycsJ2hpZGRlbicpLndpZHRoKCk7Cgl2YXIgaCA9ICRjb250LmhlaWdodCgpOwoJb3B0cy5jc3NCZWZvcmUgPSBvcHRzLmNzc0JlZm9yZSB8fCB7fTsKCXZhciBjbGlwOwoJaWYgKG9wdHMuY2xpcCkgewoJCWlmICgvbDJyLy50ZXN0KG9wdHMuY2xpcCkpCgkJCWNsaXAgPSAncmVjdCgwcHggMHB4ICcraCsncHggMHB4KSc7CgkJZWxzZSBpZiAoL3IybC8udGVzdChvcHRzLmNsaXApKQoJCQljbGlwID0gJ3JlY3QoMHB4ICcrdysncHggJytoKydweCAnK3crJ3B4KSc7CgkJZWxzZSBpZiAoL3QyYi8udGVzdChvcHRzLmNsaXApKQoJCQljbGlwID0gJ3JlY3QoMHB4ICcrdysncHggMHB4IDBweCknOwoJCWVsc2UgaWYgKC9iMnQvLnRlc3Qob3B0cy5jbGlwKSkKCQkJY2xpcCA9ICdyZWN0KCcraCsncHggJyt3KydweCAnK2grJ3B4IDBweCknOwoJCWVsc2UgaWYgKC96b29tLy50ZXN0KG9wdHMuY2xpcCkpIHsKCQkJdmFyIHRvcCA9IHBhcnNlSW50KGgvMiwxMCk7CgkJCXZhciBsZWZ0ID0gcGFyc2VJbnQody8yLDEwKTsKCQkJY2xpcCA9ICdyZWN0KCcrdG9wKydweCAnK2xlZnQrJ3B4ICcrdG9wKydweCAnK2xlZnQrJ3B4KSc7CgkJfQoJfQoKCW9wdHMuY3NzQmVmb3JlLmNsaXAgPSBvcHRzLmNzc0JlZm9yZS5jbGlwIHx8IGNsaXAgfHwgJ3JlY3QoMHB4IDBweCAwcHggMHB4KSc7CgoJdmFyIGQgPSBvcHRzLmNzc0JlZm9yZS5jbGlwLm1hdGNoKC8oXGQrKS9nKTsKCXZhciB0ID0gcGFyc2VJbnQoZFswXSwxMCksIHIgPSBwYXJzZUludChkWzFdLDEwKSwgYiA9IHBhcnNlSW50KGRbMl0sMTApLCBsID0gcGFyc2VJbnQoZFszXSwxMCk7CgoJb3B0cy5iZWZvcmUucHVzaChmdW5jdGlvbihjdXJyLCBuZXh0LCBvcHRzKSB7CgkJaWYgKGN1cnIgPT0gbmV4dCkgcmV0dXJuOwoJCXZhciAkY3VyciA9ICQoY3VyciksICRuZXh0ID0gJChuZXh0KTsKCQkkLmZuLmN5Y2xlLmNvbW1vblJlc2V0KGN1cnIsbmV4dCxvcHRzLHRydWUsdHJ1ZSxmYWxzZSk7CgkJb3B0cy5jc3NBZnRlci5kaXNwbGF5ID0gJ2Jsb2NrJzsKCgkJdmFyIHN0ZXAgPSAxLCBjb3VudCA9IHBhcnNlSW50KChvcHRzLnNwZWVkSW4gLyAxMyksMTApIC0gMTsKCQkoZnVuY3Rpb24gZigpIHsKCQkJdmFyIHR0ID0gdCA/IHQgLSBwYXJzZUludChzdGVwICogKHQvY291bnQpLDEwKSA6IDA7CgkJCXZhciBsbCA9IGwgPyBsIC0gcGFyc2VJbnQoc3RlcCAqIChsL2NvdW50KSwxMCkgOiAwOwoJCQl2YXIgYmIgPSBiIDwgaCA/IGIgKyBwYXJzZUludChzdGVwICogKChoLWIpL2NvdW50IHx8IDEpLDEwKSA6IGg7CgkJCXZhciByciA9IHIgPCB3ID8gciArIHBhcnNlSW50KHN0ZXAgKiAoKHctcikvY291bnQgfHwgMSksMTApIDogdzsKCQkJJG5leHQuY3NzKHsgY2xpcDogJ3JlY3QoJyt0dCsncHggJytycisncHggJytiYisncHggJytsbCsncHgpJyB9KTsKCQkJKHN0ZXArKyA8PSBjb3VudCkgPyBzZXRUaW1lb3V0KGYsIDEzKSA6ICRjdXJyLmNzcygnZGlzcGxheScsICdub25lJyk7CgkJfSkoKTsKCX0pOwoJJC5leHRlbmQob3B0cy5jc3NCZWZvcmUsIHsgZGlzcGxheTogJ2Jsb2NrJywgb3BhY2l0eTogMSwgdG9wOiAwLCBsZWZ0OiAwIH0pOwoJb3B0cy5hbmltSW4JICAgPSB7IGxlZnQ6IDAgfTsKCW9wdHMuYW5pbU91dCAgID0geyBsZWZ0OiAwIH07Cn07Cgp9KShqUXVlcnkpOwo="}},"time_used":101,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":101,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","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/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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.233Z","timestamp":1785126257233,"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-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/ticker-tape/?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 04:24:17 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: 8efe0ca2d3c190bb5afbdd482607defb\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-27T07:05:45.452937Z","times_seen":2622,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtUVpDcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLVFaQ3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9LnR2LW1hcmtldC1zdGF0dXNfX2RvdHtib3JkZXItcmFkaXVzOjUwJTtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6NHB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aWR0aDo0cHh9LnR2LW1hcmtldC1zdGF0dXMtLXByZS1tYXJrZXR7Y29sb3I6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApfS50di1tYXJrZXQtc3RhdHVzLS1wcmUtbWFya2V0IC50di1tYXJrZXQtc3RhdHVzX19kb3R7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCl9LnR2LW1hcmtldC1zdGF0dXMtLXBvc3QtbWFya2V0e2NvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtNDAwKX0udHYtbWFya2V0LXN0YXR1cy0tcG9zdC1tYXJrZXQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtNDAwKX0udHYtbWFya2V0LXN0YXR1cy0tbWFya2V0e2NvbG9yOnZhcigtLWNvbG9yLW1pbnR5LWdyZWVuLTMwMCl9LnR2LW1hcmtldC1zdGF0dXMtLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMzAwKX0udHYtbWFya2V0LXN0YXR1cy0tb3V0LW9mLXNlc3Npb257Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCl9LnR2LW1hcmtldC1zdGF0dXMtLW91dC1vZi1zZXNzaW9uIC50di1tYXJrZXQtc3RhdHVzX19kb3R7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKX0udHYtbWFya2V0LXN0YXR1cy0taW52YWxpZHtjb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApfS50di1tYXJrZXQtc3RhdHVzLS1pbnZhbGlkIC50di1tYXJrZXQtc3RhdHVzX19kb3R7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApfS50di1tYXJrZXQtc3RhdHVzLS1yZXBsYXl7Y29sb3I6dmFyKC0tY29sb3ItcmVwbGF5LWRhdGEtbW9kZSl9LnR2LW1hcmtldC1zdGF0dXMtLXJlcGxheSAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItcmVwbGF5LWRhdGEtbW9kZSl9LnR2LW1hcmtldC1zdGF0dXMtLWhvbGlkYXl7Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCl9LnR2LW1hcmtldC1zdGF0dXMtLWhvbGlkYXkgLnR2LW1hcmtldC1zdGF0dXNfX2RvdHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00MDApfS50di1tYXJrZXQtc3RhdHVzLS1kZWxpc3RlZHtjb2xvcjp2YXIoLS1jb2xvci1kYW5nZXItYWN0aXZlKX0udHYtbWFya2V0LXN0YXR1cy0tZGVsaXN0ZWQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWRhbmdlci1hY3RpdmUpfS50di1tYXJrZXQtc3RhdHVzLS1uaWdodHtjb2xvcjp2YXIoLS1jb2xvci1jb250ZW50LXNlY29uZGFyeS1hY2NlbnQtb3RoZXItc2VtaS1ib2xkKX0udHYtbWFya2V0LXN0YXR1cy0tbmlnaHQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LWFjY2VudC1vdGhlci1zZW1pLWJvbGQpfS50di1tYXJrZXQtc3RhdHVzLS1vdXQtb2Ytc2Vzc2lvbl9fd2l0aEljb257aGVpZ2h0OjE4cHg7bWFyZ2luLWlubGluZS1zdGFydDo0cHg7d2lkdGg6MThweH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LW1hcmtldC1zdGF0dXMtLW91dC1vZi1zZXNzaW9uX193aXRoSWNvbjpob3ZlcjphZnRlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8wLVFaQ3IpfX0udHYtbWFya2V0LXN0YXR1cy0tb3V0LW9mLXNlc3Npb25fX3dpdGhJY29uOmFmdGVye2JvcmRlci1yYWRpdXM6NnB4O2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MThweDtvcGFjaXR5OjE1JTtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxOHB4fS50di1tYXJrZXQtc3RhdHVzLS1vdXQtb2Ytc2Vzc2lvbl9fd2l0aEljb24gLnR2LW1hcmtldC1zdGF0dXNfX2ljb257YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMC1RWkNyKTtkaXNwbGF5OmJsb2NrO2hlaWdodDoxOHB4Oy13ZWJraXQtbWFzazp1cmwobWFya2V0LWNsb3NlLmQwMjVlODcxMDAxOTljMWJjN2FmLnN2Zyk7bWFzazp1cmwobWFya2V0LWNsb3NlLmQwMjVlODcxMDAxOTljMWJjN2FmLnN2Zyk7LXdlYmtpdC1tYXNrLXBvc2l0aW9uOmNlbnRlcjttYXNrLXBvc2l0aW9uOmNlbnRlcjstd2Via2l0LW1hc2stc2l6ZTpjb3ZlcjttYXNrLXNpemU6Y292ZXI7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MThweH0udHYtbWFya2V0LXN0YXR1cy0tcHJlLW1hcmtldF9fd2l0aEljb257aGVpZ2h0OjE4cHg7bWFyZ2luLWlubGluZS1zdGFydDo0cHg7d2lkdGg6MThweH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LW1hcmtldC1zdGF0dXMtLXByZS1tYXJrZXRfX3dpdGhJY29uOmhvdmVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS02MDApfX0udHYtbWFya2V0LXN0YXR1cy0tcHJlLW1hcmtldF9fd2l0aEljb246YWZ0ZXJ7Ym9yZGVyLXJhZGl1czo2cHg7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxOHB4O29wYWNpdHk6MTUlO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjE4cHh9LnR2LW1hcmtldC1zdGF0dXMtLXByZS1tYXJrZXRfX3dpdGhJY29uIC50di1tYXJrZXQtc3RhdHVzX19pY29ue2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS02MDApO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjE4cHg7LXdlYmtpdC1tYXNrOnVybChtYXJrZXQtcHJlLjdkMzdkY2NhMjM0ODMzZDEyYzQzLnN2Zyk7bWFzazp1cmwobWFya2V0LXByZS43ZDM3ZGNjYTIzNDgzM2QxMmM0My5zdmcpOy13ZWJraXQtbWFzay1wb3NpdGlvbjpjZW50ZXI7bWFzay1wb3NpdGlvbjpjZW50ZXI7LXdlYmtpdC1tYXNrLXNpemU6Y292ZXI7bWFzay1zaXplOmNvdmVyO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjE4cHh9LnR2LW1hcmtldC1zdGF0dXMtLXBvc3QtbWFya2V0X193aXRoSWNvbntoZWlnaHQ6MThweDttYXJnaW4taW5saW5lLXN0YXJ0OjRweDt3aWR0aDoxOHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtbWFya2V0LXN0YXR1cy0tcG9zdC1tYXJrZXRfX3dpdGhJY29uOmhvdmVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApfX0udHYtbWFya2V0LXN0YXR1cy0tcG9zdC1tYXJrZXRfX3dpdGhJY29uOmFmdGVye2JvcmRlci1yYWRpdXM6NnB4O2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MThweDtvcGFjaXR5OjE1JTtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxOHB4fS50di1tYXJrZXQtc3RhdHVzLS1wb3N0LW1hcmtldF9fd2l0aEljb24gLnR2LW1hcmtldC1zdGF0dXNfX2ljb257YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7ZGlzcGxheTpibG9jaztoZWlnaHQ6MThweDstd2Via2l0LW1hc2s6dXJsKG1hcmtldC1wb3N0LjlmMmM1YmZkYTk0MDVhMjkxZjkwLnN2Zyk7bWFzazp1cmwobWFya2V0LXBvc3QuOWYyYzViZmRhOTQwNWEyOTFmOTAuc3ZnKTstd2Via2l0LW1hc2stcG9zaXRpb246Y2VudGVyO21hc2stcG9zaXRpb246Y2VudGVyOy13ZWJraXQtbWFzay1zaXplOmNvdmVyO21hc2stc2l6ZTpjb3Zlcjtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxOHB4fS50di1tYXJrZXQtc3RhdHVzLS1ob2xpZGF5X193aXRoSWNvbntoZWlnaHQ6MThweDttYXJnaW4taW5saW5lLXN0YXJ0OjRweDt3aWR0aDoxOHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtbWFya2V0LXN0YXR1cy0taG9saWRheV9fd2l0aEljb246aG92ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMC1RWkNyKX19LnR2LW1hcmtldC1zdGF0dXMtLWhvbGlkYXlfX3dpdGhJY29uOmFmdGVye2JvcmRlci1yYWRpdXM6NnB4O2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MThweDtvcGFjaXR5OjE1JTtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxOHB4fS50di1tYXJrZXQtc3RhdHVzLS1ob2xpZGF5X193aXRoSWNvbiAudHYtbWFya2V0LXN0YXR1c19faWNvbntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8wLVFaQ3IpO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjE4cHg7LXdlYmtpdC1tYXNrOnVybChtYXJrZXQtaG9saWRheS40M2NhMzNkNjkwOTM5YjkzOTc4Ni5zdmcpO21hc2s6dXJsKG1hcmtldC1ob2xpZGF5LjQzY2EzM2Q2OTA5MzliOTM5Nzg2LnN2Zyk7LXdlYmtpdC1tYXNrLXBvc2l0aW9uOmNlbnRlcjttYXNrLXBvc2l0aW9uOmNlbnRlcjstd2Via2l0LW1hc2stc2l6ZTpjb3ZlcjttYXNrLXNpemU6Y292ZXI7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MThweH0udHYtbWFya2V0LXN0YXR1cy0tZGVsaXN0ZWRfX3dpdGhJY29ue2hlaWdodDoxOHB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6NHB4O3dpZHRoOjE4cHh9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1tYXJrZXQtc3RhdHVzLS1kZWxpc3RlZF9fd2l0aEljb246aG92ZXI6YWZ0ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1kYW5nZXItYWN0aXZlKX19LnR2LW1hcmtldC1zdGF0dXMtLWRlbGlzdGVkX193aXRoSWNvbjphZnRlcntib3JkZXItcmFkaXVzOjZweDtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjE4cHg7b3BhY2l0eToxNSU7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MThweH0udHYtbWFya2V0LXN0YXR1cy0tZGVsaXN0ZWRfX3dpdGhJY29uIC50di1tYXJrZXQtc3RhdHVzX19pY29ue2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItZGFuZ2VyLWFjdGl2ZSk7ZGlzcGxheTpibG9jaztoZWlnaHQ6MThweDstd2Via2l0LW1hc2s6dXJsKGRlbGlzdGVkLW1vYmlsZS40ZDI2YTJkN2M0MzFkZmZlOTRlZC5zdmcpO21hc2s6dXJsKGRlbGlzdGVkLW1vYmlsZS40ZDI2YTJkN2M0MzFkZmZlOTRlZC5zdmcpOy13ZWJraXQtbWFzay1wb3NpdGlvbjpjZW50ZXI7bWFzay1wb3NpdGlvbjpjZW50ZXI7LXdlYmtpdC1tYXNrLXNpemU6Y292ZXI7bWFzay1zaXplOmNvdmVyO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjE4cHh9LnR2LW1hcmtldC1zdGF0dXMtLW5pZ2h0X193aXRoSWNvbntoZWlnaHQ6MThweDttYXJnaW4taW5saW5lLXN0YXJ0OjRweDt3aWR0aDoxOHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtbWFya2V0LXN0YXR1cy0tbmlnaHRfX3dpdGhJY29uOmhvdmVyOmFmdGVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LW90aGVyLXNlbWktYm9sZCl9fS50di1tYXJrZXQtc3RhdHVzLS1uaWdodF9fd2l0aEljb246YWZ0ZXJ7Ym9yZGVyLXJhZGl1czo2cHg7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxOHB4O29wYWNpdHk6MTUlO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjE4cHh9LnR2LW1hcmtldC1zdGF0dXMtLW5pZ2h0X193aXRoSWNvbiAudHYtbWFya2V0LXN0YXR1c19faWNvbntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LWFjY2VudC1vdGhlci1zZW1pLWJvbGQpO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjE4cHg7LXdlYmtpdC1tYXNrOnVybChtYXJrZXQtcG9zdC45ZjJjNWJmZGE5NDA1YTI5MWY5MC5zdmcpO21hc2s6dXJsKG1hcmtldC1wb3N0LjlmMmM1YmZkYTk0MDVhMjkxZjkwLnN2Zyk7LXdlYmtpdC1tYXNrLXBvc2l0aW9uOmNlbnRlcjttYXNrLXBvc2l0aW9uOmNlbnRlcjstd2Via2l0LW1hc2stc2l6ZTpjb3ZlcjttYXNrLXNpemU6Y292ZXI7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MThweH0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0e2Rpc3BsYXk6YmxvY2s7ZmxvYXQ6aW5saW5lLXN0YXJ0O21hcmdpbi1pbmxpbmUtZW5kOjB9LnR2LW1hcmtldC1zdGF0dXMtLWZvci1jaGFydC0tcHJlLW1hcmtldHtjb2xvcjp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCl9LnR2LW1hcmtldC1zdGF0dXMtLWZvci1jaGFydC0tcHJlLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApfS50di1tYXJrZXQtc3RhdHVzLS1mb3ItY2hhcnQtLXBvc3QtbWFya2V0e2NvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtNDAwKX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0LS1wb3N0LW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS00MDApfS50di1tYXJrZXQtc3RhdHVzLS1mb3ItY2hhcnQtLW1hcmtldHtjb2xvcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0zMDApfS50di1tYXJrZXQtc3RhdHVzLS1mb3ItY2hhcnQtLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tMzAwKX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0LS1vdXQtb2Ytc2Vzc2lvbntjb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0LS1vdXQtb2Ytc2Vzc2lvbiAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCl9LnR2LW1hcmtldC1zdGF0dXMtLWZvci1jaGFydC0taW52YWxpZHtjb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApfS50di1tYXJrZXQtc3RhdHVzLS1mb3ItY2hhcnQtLWludmFsaWQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXJpcGUtcmVkLTUwMCl9LnR2LW1hcmtldC1zdGF0dXMtLWZvci1jaGFydC0tcmVwbGF5e2NvbG9yOnZhcigtLWNvbG9yLXJlcGxheS1kYXRhLW1vZGUpfS50di1tYXJrZXQtc3RhdHVzLS1mb3ItY2hhcnQtLXJlcGxheSAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItcmVwbGF5LWRhdGEtbW9kZSl9LnR2LW1hcmtldC1zdGF0dXMtLWZvci1jaGFydC0taG9saWRheXtjb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0LS1ob2xpZGF5IC50di1tYXJrZXQtc3RhdHVzX19kb3R7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0LS1kZWxpc3RlZHtjb2xvcjp2YXIoLS1jb2xvci1kYW5nZXItYWN0aXZlKX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0LS1kZWxpc3RlZCAudHYtbWFya2V0LXN0YXR1c19fZG90e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItZGFuZ2VyLWFjdGl2ZSl9LnR2LW1hcmtldC1zdGF0dXMtLWZvci1jaGFydC0tbmlnaHR7Y29sb3I6dmFyKC0tY29sb3ItY29udGVudC1zZWNvbmRhcnktYWNjZW50LW90aGVyLXNlbWktYm9sZCl9LnR2LW1hcmtldC1zdGF0dXMtLWZvci1jaGFydC0tbmlnaHQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWNvbnRlbnQtc2Vjb25kYXJ5LWFjY2VudC1vdGhlci1zZW1pLWJvbGQpfS50di1tYXJrZXQtc3RhdHVzLS1sb2FkaW5nLS1mb3ItY2hhcnR7Y29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS00MDApfS50di1tYXJrZXQtc3RhdHVzLS1sb2FkaW5nLS1mb3ItY2hhcnQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtNDAwKX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLXRpY2tlcnttYXJnaW4taW5saW5lLXN0YXJ0OjRweH0udHYtbWFya2V0LXN0YXR1cy0tZm9yLXdhdGNoLWxpc3R7bWFyZ2luOmF1dG8gM3B4fS50di1tYXJrZXQtc3RhdHVzLS1mb3ItdGlja2VyLWxhc3R7ZGlzcGxheTppbmxpbmUtZmxleDttYXJnaW4taW5saW5lLXN0YXJ0OjRweH0udHYtbWFya2V0LXN0YXR1cy0tZm9yLXN0aWNreS1zeW1ib2wtaGVhZGVyLC50di1tYXJrZXQtc3RhdHVzLS1mb3ItdGlja2VyLXRhcGV7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDt0cmFuc2Zvcm06dHJhbnNsYXRlWCg0cHgpfS50di1tYXJrZXQtc3RhdHVzLS1mb3Itc3RpY2t5LXN5bWJvbC1oZWFkZXI6ZGlyKHJ0bCksLnR2LW1hcmtldC1zdGF0dXMtLWZvci10aWNrZXItdGFwZTpkaXIocnRsKXt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNHB4KX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLXRpY2tlci1oZWFkZXJ7ZGlzcGxheTpmbGV4O21hcmdpbi1pbmxpbmUtc3RhcnQ6NHB4fS50di1tYXJrZXQtc3RhdHVzX19kb3QtLWZvci1jaGFydHtoZWlnaHQ6NnB4O21hcmdpbi1yaWdodDo0cHg7dmVydGljYWwtYWxpZ246MXB4O3dpZHRoOjZweH0udHYtbWFya2V0LXN0YXR1c19fZG90LS1mb3ItdGlja2VyLWNhcmR7aGVpZ2h0OjZweDttYXJnaW4taW5saW5lLXN0YXJ0OjRweDt3aWR0aDo2cHh9LnR2LW1hcmtldC1zdGF0dXNfX2RvdC0tZm9yLXdhdGNoLWxpc3R7bWFyZ2luLWJvdHRvbTozcHh9LnR2LW1hcmtldC1zdGF0dXNfX2RvdC0tZm9yLXRpY2tlci1sYXN0e2hlaWdodDo2cHg7d2lkdGg6NnB4fS50di1tYXJrZXQtc3RhdHVzX19kb3QtLWZvci1zdGlja3ktc3ltYm9sLWhlYWRlciwudHYtbWFya2V0LXN0YXR1c19fZG90LS1mb3ItdGlja2VyLXRhcGV7aGVpZ2h0OjRweDt3aWR0aDo0cHh9LnR2LW1hcmtldC1zdGF0dXNfX2xhYmVsLS1mb3ItY2hhcnR7ZGlzcGxheTpibG9jaztmbG9hdDppbmxpbmUtZW5kO2xpbmUtaGVpZ2h0OjE2cHg7bWFyZ2luLWlubGluZS1lbmQ6MH0udHYtbWFya2V0LXN0YXR1c19fbGFiZWwtLWZvci1jaGFydDpkaXIocnRsKXttYXJnaW4taW5saW5lLWVuZDo2cHh9LnR2LW1hcmtldC1zdGF0dXMtLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90LS1mb3Itc3RpY2t5LXN5bWJvbC1oZWFkZXIsLnR2LW1hcmtldC1zdGF0dXMtLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90LS1mb3ItdGlja2VyLC50di1tYXJrZXQtc3RhdHVzLS1tYXJrZXQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdC0tZm9yLXRpY2tlci1jYXJkLC50di1tYXJrZXQtc3RhdHVzLS1tYXJrZXQgLnR2LW1hcmtldC1zdGF0dXNfX2RvdC0tZm9yLXRpY2tlci1oZWFkZXIsLnR2LW1hcmtldC1zdGF0dXMtLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90LS1mb3ItdGlja2VyLWxhc3QsLnR2LW1hcmtldC1zdGF0dXMtLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90LS1mb3ItdGlja2VyLXRhcGUsLnR2LW1hcmtldC1zdGF0dXMtLW1hcmtldCAudHYtbWFya2V0LXN0YXR1c19fZG90LS1mb3Itd2F0Y2gtbGlzdCwudHYtbWFya2V0LXN0YXR1c19fbGFiZWwtLWZvci1zdGlja3ktc3ltYm9sLWhlYWRlciwudHYtbWFya2V0LXN0YXR1c19fbGFiZWwtLWZvci10aWNrZXIsLnR2LW1hcmtldC1zdGF0dXNfX2xhYmVsLS1mb3ItdGlja2VyLWNhcmQsLnR2LW1hcmtldC1zdGF0dXNfX2xhYmVsLS1mb3ItdGlja2VyLWhlYWRlciwudHYtbWFya2V0LXN0YXR1c19fbGFiZWwtLWZvci10aWNrZXItbGFzdCwudHYtbWFya2V0LXN0YXR1c19fbGFiZWwtLWZvci10aWNrZXItdGFwZSwudHYtbWFya2V0LXN0YXR1c19fbGFiZWwtLWZvci13YXRjaC1saXN0e2Rpc3BsYXk6bm9uZX0udHYtbWFya2V0LXN0YXR1cy0tZm9yLWNoYXJ0e21hcmdpbi1pbmxpbmUtc3RhcnQ6NXB4fS50di1tYXJrZXQtc3RhdHVzLS1mb3ItY2hhcnQ6ZGlyKHJ0bCl7bWFyZ2luLWlubGluZS1zdGFydDowfS50di1tYXJrZXQtc3RhdHVzLS1tYXJrZXQtLWZvci1jaGFydHtkaXNwbGF5Om5vbmV9LnR2LW1hcmtldC1zdGF0dXMtLW1hcmtldF9fd2l0aEljb257ZGlzcGxheTpub25lIWltcG9ydGFudH0udHYtbWFya2V0LXN0YXR1cy0tZGVsaXN0ZWQtLWZvci13YXRjaC1saXN0e21hcmdpbi1pbmxpbmUtc3RhcnQ6MH0udHYtbWFya2V0LXN0YXR1cy0tZGVsaXN0ZWQtLWZvci13YXRjaC1saXN0OmFmdGVye2Rpc3BsYXk6bm9uZX0="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCWLFIO.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.612Z","timestamp":1785126258612,"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 /crypto/XTVCWLFIO.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 04:24:18 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: \"f89e4447384a259768e09c9a0b3d6c58\"\r\nlast-modified: Fri, 03 Oct 2025 20:27:56 GMT\r\ncdn-cachedat: 10/03/2025 21:21:48\r\nx-amz-id-2: YkBIZsK+n1JKHAxdfy4FDgkAAofvGMp+OEdzw+aZTSHYgq4MrqtWk/4ChS5grq4RF1UQ0mO7cU8=\r\nx-amz-request-id: 6FYHFD8TSVAZ51CP\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: f89e4447384a259768e09c9a0b3d6c58\r\ncdn-proxyver: 1.37\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 3b196235976d7245bb1af782d895469d\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":1193,"size_decoded":1623,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1193), with no line terminators","md5":"f89e4447384a259768e09c9a0b3d6c58","sha1":"eaf32079d387696d7e232187e17afa2dc4929173","sha256":"ebe3e21eb42c7db64f587976467eaa7f7f1d283ed9d05b3e925c60e91cd07324","sha512":"eea2a80cb9208032413316d8e99a3a2682fb5ae2565e4fc3d829228f130fcd15f5853a7864ec28784543a26f917e1c734167c4718e8d420df3d8aa6a8ecc2756","ssdeep":"","tlshash":"3821fe67e25cd61dac47d318e3bf80e6214e405bb0cea6d57dff9bad900e58add00528","first_seen":"2025-10-06T03:50:36.978464Z","last_seen":"2026-07-27T07:05:43.388565Z","times_seen":688,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNNi42NSA3LjY4Yy4xNS4wMy4yOC4wNS40My4xLjI0LjA2LjQ4LjE2LjcuMjhsMS41My44NyAxLjA4LjYxLjA0LjAzYy4wNC4wMy4wNy4xLjA2LjE2LjE1LjA1LjIyLjI1LjE4LjQzYS40LjQgMCAwIDAtLjI3LS4yYy0uMTcgMC0uMzQtLjAzLS41LS4xYS44OS44OSAwIDAgMC0uNi4xMWMtLjI3LjE2LS41OC41LS44My43My0uMjIuMTgtLjU3LjI3LS44My4yM2wuNzYtLjY3YS4wNy4wNyAwIDAgMCAwLS4xYy0uMDEtLjAyLS4wNS0uMDMtLjA3IDBsLS43NC42NmEuNzQuNzQgMCAwIDEtLjgxLjFsLjk3LS43Yy4wMy0uMDIuMDQtLjA2LjAyLS4wOS0uMDEtLjAzLS4wNS0uMDQtLjA3LS4wMmwtLjk0LjY4LS4wNi4wNGEuOTQuOTQgMCAwIDEtLjk1LjA3TDguMyA5LjQgNi4zIDljLS4zLS4wNy0uNTgtLjI5LS43Ni0uNTVsMS43My4zYy4wNC4wMS4wNy0uMDEuMDctLjA1cy0uMDItLjA3LS4wNS0uMDhMNC45NSA4LjJoLS4wNGEuOTguOTggMCAwIDEtLjYyLS40NWwyLjA1LjM4Yy4wMyAwIC4wNi0uMDIuMDctLjA2IDAtLjAzLS4wMi0uMDctLjA1LS4wOGwtMi41OC0uNDdBMS4xNiAxLjE2IDAgMCAxIDMgN2wzLjY1LjY4Wk0xNSA3Yy0uMTUuMjYtLjM4LjQ0LS42NC41TDExLjcgOGMtLjAzIDAtLjA1LjA0LS4wNS4wOHMuMDMuMDcuMDcuMDZsMi4wNy0uMzljLS4yLjIzLS40NC4zOS0uNy40NGwtMi4zLjQ0Yy0uMDMgMC0uMDUuMDQtLjA1LjA4IDAgLjAzLjA0LjA2LjA3LjA1bDEuNzctLjMzYy0uMTYuMjktLjQuNDgtLjY4LjU1LS41OC4xMi0xLjEuMi0xLjY5LjMzTDkuMiA4LjczbDEuMjMtLjdjLjIxLS4xMS4zOC0uMTkuNTctLjI0bC4yMi0uMDVMMTUgN1oiIGZpbGw9IiNFQUFDMDgiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImEiIHgxPSIzLjM1IiB5MT0iMy4xMiIgeDI9IjIxLjkiIHkyPSIyNC40MyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiMxQTFFMjEiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMwNjA2MEEiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCPROSPH.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.748Z","timestamp":1785126258748,"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 /crypto/XTVCPROSPH.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 04:24:18 GMT\r\ncontent-type: image/svg+xml\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1827952\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 30\r\ncache-control: max-age=300,s-maxage=180\r\netag: W/\"1f6e002d4116df40674bd8f99492cbac\"\r\nlast-modified: Thu, 14 May 2026 13:36:00 GMT\r\nx-amz-id-2: jhu8bXWoBOQMCgG5R6suu8vZiRrDizwh3RWNOQoCcQwzH9QXIzLH1A8fAqnBq4V80WrAhbbbY00=\r\nx-amz-request-id: S3R9X2PPNM64KYH9\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 1f6e002d4116df40674bd8f99492cbac\r\nx-amz-version-id: wgUYnjZCLs1638DvSs.glXsTdmJd.Z.I\r\ncdn-proxyver: 1.53\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/14/2026 17:02:34\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 7cb471a99778517a89fa75cb23090b1c\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":"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":851,"size_decoded":1435,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (851), with no line terminators","md5":"1f6e002d4116df40674bd8f99492cbac","sha1":"2e30fcc9b275073ed04937535e885126e2094e4d","sha256":"731750dcfe52dfe905a7b8d914c3658121cb753a714c06cae592537e28824ffb","sha512":"c23840e730cec88a385a956b4e845f852a394aad4c0115a7539b982e041007737b207b93b7a92688ea7022049361f6dbc250ad7f4af48a76d8880e87a44be0c2","ssdeep":"","tlshash":"7d01af67e71c5c1bd156c7bdec6881e6219f21e6b4cc4378e491abaa28285c79c0cf60","first_seen":"2026-05-14T20:58:01.390517Z","last_seen":"2026-07-27T07:05:43.327904Z","times_seen":206,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMwMDA3QjgiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJtMTAuNTMgMTEuMTYtMy43LTEuOTIgMS45OC0uOTYgMS45MS44MS0uMTkgMi4wN1oiIGZpbGw9InVybCgjYSkiLz48cGF0aCBkPSJNMTAuMzYgNy4yNiA3LjU0IDUuOTNsMS41MS0uNjYgMS40NS41Ni0uMTQgMS40M1oiIGZpbGw9InVybCgjYikiLz48cGF0aCBkPSJNMTEuNDQgOC4wNXYtMS42bC00LjYgMS4xM3YxLjY2bDQuNi0xLjE5Wk0xMS4wOCA1LjFWNGwtMy41NC43OHYxLjE1bDMuNTQtLjgyWk0xMi41IDEyLjFWOS43NUw0IDEyLjFjLjY0LjkgMS44MSAxLjY1IDIuMzIgMS45MWw2LjE4LTEuOVoiIGZpbGw9IiNmZmYiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImEiIHgxPSI3LjI0IiB5MT0iOS4zNCIgeDI9IjEwLjcyIiB5Mj0iOS4zNCIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIG9mZnNldD0iLjQ1IiBzdG9wLWNvbG9yPSIjRkVGRkZEIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMDAwN0I4Ii8+PC9saW5lYXJHcmFkaWVudD48bGluZWFyR3JhZGllbnQgaWQ9ImIiIHgxPSI3Ljg1IiB5MT0iNiIgeDI9IjEwLjUiIHkyPSI2IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agb2Zmc2V0PSIuNDUiIHN0b3AtY29sb3I9IiNGRUZGRkQiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMwMDA3QjgiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4="}},"time_used":1,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":1,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/translate.google.com/translate_a/elementa0d8a0d8a0d8.html?cb=googleTranslateElementInit","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.040Z","timestamp":1785126256040,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /translate.google.com/translate_a/elementa0d8a0d8a0d8.html?cb=googleTranslateElementInit HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: text/html\r\nlast-modified: Sat, 07 Oct 2023 09:01:37 GMT\r\netag: W/\"65211e71-2a70\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":10864,"size_decoded":4710,"mime_type":"text/html","magic":"HTML document, Unicode text, UTF-8 text, with very long lines (4070)","md5":"2b6705458be1a06ac2897afe20c800dd","sha1":"a9c86115f4203c77b79b87f12c283f6ad8d671cb","sha256":"defc43b0f73866b7959a75092d1de97d6e615f939ba08951961fc09f9a356c78","sha512":"6c38b1eb7753bc351e9f6d85e0c0abb10dfb8a8378bb14fb0cdaa8e4f10eaae7958e2b52b5d8f7b25a13bbf7311a12b63b8b78db26f51a2c8bf2e68102c3e637","ssdeep":"192:kCylYHC0HNXGZkHQU7ydPJq5S2KqQVX/uTK3w3DK+tMy47R/Ga0kVhFuPwf8Pn9x:kCgVGaRF8I8SVwpCI","tlshash":"f722c8ab1ae7005b740360b967aa3201bb68e143d11fcd607f0db3a8df875819d9375d","first_seen":"2026-07-27T03:36:45.003834Z","last_seen":"2026-07-27T04:25:12.737908Z","times_seen":2,"resource_available":false,"data":"CgoKPCFET0NUWVBFIGh0bWw+CjxodG1sPgogICAgCjwhLS0gTWlycm9yZWQgZnJvbSB0cmFkZXByb2dsb2JhbGludmVzdG1lbnQuY29tL3RyYW5zbGF0ZS5nb29nbGUuY29tL3RyYW5zbGF0ZV9hL2VsZW1lbnRhMGQ4YTBkOC5odG1sP2NiPWdvb2dsZVRyYW5zbGF0ZUVsZW1lbnRJbml0IGJ5IEhUVHJhY2sgV2Vic2l0ZSBDb3BpZXIvMy54IFtYUiZDTycyMDE0XSwgU3VuLCAwOSBPY3QgMjAyMiAxNToyNDowOCBHTVQgLS0+CjxoZWFkPgogICAgPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC10eXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9dXRmLTgiPgogICAgPG1ldGEgaHR0cC1lcXVpdj0iQ2FjaGUtY29udHJvbCIgY29udGVudD0ibm8tY2FjaGUiPgogICAgPG1ldGEgaHR0cC1lcXVpdj0iUHJhZ21hIiBjb250ZW50PSJuby1jYWNoZSI+CiAgICA8bWV0YSBodHRwLWVxdWl2PSJFeHBpcmVzIiBjb250ZW50PSIwIj4KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4KICAgIDx0aXRsZT40MDQgTm90IEZvdW5kPC90aXRsZT4KICAgIDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CiAgICAgICAgYm9keSB7CiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmOwogICAgICAgICAgICBmb250LXNpemU6IDE0cHg7CiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQyODU3MTQyOTsKICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsKICAgICAgICAgICAgY29sb3I6ICMyRjMyMzA7CiAgICAgICAgICAgIHBhZGRpbmc6IDA7CiAgICAgICAgICAgIG1hcmdpbjogMDsKICAgICAgICB9CiAgICAgICAgc2VjdGlvbiwgZm9vdGVyIHsKICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgICAgIHBhZGRpbmc6IDA7CiAgICAgICAgICAgIG1hcmdpbjogMDsKICAgICAgICB9CiAgICAgICAgLmNvbnRhaW5lciB7CiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOwogICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87CiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDsKICAgICAgICB9CiAgICAgICAgLnJlc3BvbnNlLWluZm8gewogICAgICAgICAgICBjb2xvcjogI0NDQ0NDQzsKICAgICAgICB9CiAgICAgICAgLnN0YXR1cy1jb2RlIHsKICAgICAgICAgICAgZm9udC1zaXplOiA1MDAlOwogICAgICAgIH0KICAgICAgICAuc3RhdHVzLXJlYXNvbiB7CiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjUwJTsKICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgICAgfQogICAgICAgIC5jb250YWN0LWluZm8sCiAgICAgICAgLnJlYXNvbi10ZXh0IHsKICAgICAgICAgICAgY29sb3I6ICMwMDAwMDA7CiAgICAgICAgfQogICAgICAgIC5hZGRpdGlvbmFsLWluZm8gewogICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OwogICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjkzQTRBOwogICAgICAgICAgICBjb2xvcjogI0ZGRkZGRjsKICAgICAgICB9CiAgICAgICAgLmFkZGl0aW9uYWwtaW5mbyBhIHsKICAgICAgICAgICAgY29sb3I6ICNGRkZGRkY7CiAgICAgICAgfQogICAgICAgIC5hZGRpdGlvbmFsLWluZm8taXRlbXMgewogICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7CiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDE5M3B4OwogICAgICAgIH0KICAgICAgICAuY29udGFjdC1pbmZvIHsKICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsKICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4OwogICAgICAgIH0KICAgICAgICAuY29udGFjdC1pbmZvIGEgewogICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsKICAgICAgICAgICAgY29sb3I6ICM0MjhCQ0E7CiAgICAgICAgfQogICAgICAgIC5jb250YWN0LWluZm8gYTpob3ZlciwKICAgICAgICAuY29udGFjdC1pbmZvIGE6Zm9jdXMsCiAgICAgICAgLmNvbnRhY3QtaW5mbyBhOmFjdGl2ZSB7CiAgICAgICAgICAgIGNvbG9yOiAjMkE2NDk2OwogICAgICAgIH0KICAgICAgICAucmVhc29uLXRleHQgewogICAgICAgICAgICBtYXJnaW46IDIwcHggMDsKICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4OwogICAgICAgIH0KICAgICAgICB1bCB7CiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZSBvdXRzaWRlIG5vbmU7CiAgICAgICAgICAgIG1hcmdpbjogMDsKICAgICAgICAgICAgcGFkZGluZzogMDsKICAgICAgICB9CiAgICAgICAgdWwgbGkgewogICAgICAgICAgICBmbG9hdDogbGVmdDsKICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOwogICAgICAgIH0KICAgICAgICAuYWRkaXRpb25hbC1pbmZvLWl0ZW1zIHVsIGxpIHsKICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgfQogICAgICAgIC5pbmZvLWltYWdlIHsKICAgICAgICAgICAgcGFkZGluZzogMTBweDsKICAgICAgICB9CiAgICAgICAgLmluZm8taGVhZGluZyB7CiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOwogICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OwogICAgICAgICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7CiAgICAgICAgICAgIHdpZHRoOiAxMDAlOwogICAgICAgIH0KICAgICAgICAuaW5mby1zZXJ2ZXIgYWRkcmVzcyB7CiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7CiAgICAgICAgfQogICAgICAgIGZvb3RlciB7CiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsKICAgICAgICAgICAgbWFyZ2luOiA2MHB4IDA7CiAgICAgICAgfQogICAgICAgIGZvb3RlciBhIHsKICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOwogICAgICAgIH0KICAgICAgICBmb290ZXIgYSBpbWcgewogICAgICAgICAgICBib3JkZXI6IDA7CiAgICAgICAgfQogICAgICAgIC5jb3B5cmlnaHQgewogICAgICAgICAgICBmb250LXNpemU6IDEwcHg7CiAgICAgICAgICAgIGNvbG9yOiAjM0Y0MTQzOwogICAgICAgIH0KICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHsKICAgICAgICAgICAgLmFkZGl0aW9uYWwtaW5mbyB7CiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7CiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsKICAgICAgICAgICAgfQogICAgICAgICAgICAuYWRkaXRpb25hbC1pbmZvLWl0ZW1zIHsKICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgLmNvbnRhaW5lciB7CiAgICAgICAgICAgICAgICB3aWR0aDogOTAlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIC5hZGRpdGlvbmFsLWluZm8taXRlbXMgdWwgbGkgewogICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7CiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OwogICAgICAgICAgICB9CiAgICAgICAgICAgIC5hZGRpdGlvbmFsLWluZm8taXRlbXMgdWwgbGk6Zmlyc3QtY2hpbGQgewogICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDsKICAgICAgICAgICAgfQogICAgICAgICAgICAucmVhc29uLXRleHQgewogICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4OwogICAgICAgICAgICB9CiAgICAgICAgICAgIC5jb250YWN0LWluZm8gewogICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4OwogICAgICAgICAgICB9CiAgICAgICAgICAgIC5pbmZvLWltYWdlIHsKICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0OwogICAgICAgICAgICB9CiAgICAgICAgICAgIC5pbmZvLWhlYWRpbmcgewogICAgICAgICAgICAgICAgbWFyZ2luOiA2MnB4IDAgMCA5OHB4OwogICAgICAgICAgICB9CiAgICAgICAgICAgIC5pbmZvLXNlcnZlciBhZGRyZXNzIHsKICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7CiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAgICAgICAgICAgICAgICByaWdodDogMDsKICAgICAgICAgICAgICAgIGJvdHRvbTogMDsKICAgICAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4OwogICAgICAgICAgICB9CiAgICAgICAgICAgIC5zdGF0dXMtcmVhc29uIHsKICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHsKICAgICAgICAgICAgLmFkZGl0aW9uYWwtaW5mbyB7CiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFQQUFBQURxQ0FNQUFBQ3J4amhkQUFBQXQxQk1WRVVBQUFBQUFBRC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLzUrZm4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLzYrdnIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8raTVlZFRBQUFBUFhSU1RsTUFBUUVDQXdRRkJnY0lDUW9MREEwT0R4QVJFaE1VRlJZWEdCa2FHeHdkSGg4Z0lTSWpKQ1VtSnlnb0tTb3JMQzB1THpBd01USXpORFUyTnpnNUg3eDBYQUFBQ25kSlJFRlVlQUh0WFhsekdzOFI3VFEzQ0ZrSHhwS3hoSXd0SUJ3Z0l1WVk0dS8vdVZKMnFwTEtEN1E4dDJaN3hwRDNuNnNrYTkvMmJNOU12ejZvR0V5WEZvS0hmbWhlb2V3eDljWWVoVnVQSE1UNGpwaHlCdE5IeEhRbURHZ0J2WmpYQnVXTjJnb2diUHk2UnRjT2VqTlB4RmtiK0NFWWhIQ2ZtSjZEUVNoZkVHZk10NzFGT1BncEUxUEhPTVRFWThvWjN5Q3IyVXRpSW5xRWZ0ajNpTE0xOEFmc3UveEt2OUI0UVV6c1YxWEtGVHpEUEcrTGZvTHBFL0xqSm56TzA4UUNBdWdMYWxLZXFQL21FbVc2UWorQlBJRTdJWW1UeXcxTUZ3YmFrc2F5YlN4RENBNFNURit3ZzhySDdFek13cU5pYlkzOG1sdlhLRGRVNXBESDNUUmtsNDB2eEprWitETzJOdS8zSG55Qzd0MTVvYkdCdHFSRlJYbzYrMFo1WVFoNUxIZDlZR1dPc0YrOUlzNW9RWGN0WktidmRBQXRiSEhNOCtHTGZvaldkSWdQZmY3WWlmUlROaVptdXNXK3c4ZkRqMXhkZXZObmJVM1ZGZlRFTC9XMzNwZkgzMWNHWUJwZ1c5TGJhM0ljOEM4aUE3N05MZTUxNHZ1OEJQajYvbjNsQ2QvVmtnS1hHa3dZVVFIQWFNK3lRdW5CbU5Td2JSVlloK2tPY2dNaHZSREIxTWQyMFlmaVIrVUZmdmRJaXpwMnYxdlZqdDB1c2ExcG1OekFYMklGbDUveGFFOWFxUUdTRDZieEkwUlpTdzN1dUYwWWpRSGVwak14SG1kOUlnQzFOYlkxVlNrZGVCNHZYTUgwS1NRVkl2UWZFUmNpTXBjYUZ0VzRIOGlJMGdCMk16ZkVjVjNnQitJa2ZEdGJ5Q0FUZ3RIQjdsM1RyS1VHMnlXT2U3TzJLWVFJUEU3eEZEMTJZdnk2U3Zxb0xPTWY5NWsrQnZncW9nQ0ZDeDIyTmRsdE8xZXBZYzd5Y0VLU2FJOStVQVlQR09sS0RRWXl4RFA5TnBxdjBOS1prUzdHdU5SUWlnNXB2YVlRd2RUenRqUm5DcnIvbDBiMlVnTyt3UnRNaUZDQXpxcExMMFNvK2hXbWk2MU5uM2FxS0dFekRmRnJtRW9LcWNXU0ZEUk9OU3JBVTBpRllMckhVMlJLQjNxK0h4REhUNEpLRWUycHJoeFkxYUNTNWxZK0huWHU2Tit4NklKQ1JRUW1FRXorWWpJRS94cy9NbUQ4cUhSWUs1Q0FIdWFUWTVqZlF4RkMvWW9JUVNTVmFmckQrV0s0SDBQaXY4U0FUUlpDaEVYaU9zMzlML0lZd2lPeFJIZ2VFS2NtYk1JOWNjSFJDZHhVZVlhbkZwUUpNQlVESUZ4dzFjaEppQkFvbWt6M3g0M2wrbnVXR21XaGtRczBhNlk3WUhWZTc3Mm0xdFpsVUJFaEtJOWs2bnVMRThiektWU0VDRUhlQ1pTeXNyMDRxSkduVHpzVnhKb1F3bTdiUGhRN2N6YTVFQ0dRR3BnNlRuanptV0JiVTd0RXhraFZ3MzZ5ejNIQ20wcUV2RVo5Qzd2RFlaZVdBUWhuS2tRVUcvaTdORG5DTC9od2J2SnI2bWlQS0hUYU9FNTR4cEJHcmw4UklYS1gxYmszK0ExYVVoSHhVdGUzc0hFdk5TSXA0UkVkQk5PTkE5Tk9XWUV3dXE1NEFoUGV4M05hSVFMd0hJSVFsUWtQYndzUkZwZG1kYi9oRDhUU0RDd1RCdThXMzBzU0lpUzdQOU53WjdDZ0FlRGpsYU05a3RBRDArTXh3cnNlOFhzVGFNb1JJb0NhWm1nM0JRZ0xxckhWQ0J1M3FoVzMrQUFPaHdwNTJRSUFmUWtBd29ESEt6Zk5FWWNrNFpQcDVxaDVDcDRWRmlMOFdNL0NsOFNGNHBndGh2dEhtNHFRVUlpUWRZKzVOTWZ1LzIyOFBrcTNOWk5NcUQxVzdyTW5yd0plUUVtSXdLc2FjTUkvVFZPTGxIalFqTTFZVnRWUTNSd2h2T1JvM2NraVE1Wk9VemxDT015aTlaK0xYUkVoUzVpcXJJNFFudU5sZjhvVkViSzhBNTU2UVFLMExOclRqMnRpV2ZjRm5oMGhQSXBZRVZHam1CQWUyYjk1VTN3TXhpb2lFclJtMm51aGQ4UVJDQThJd1RSQVcxTzdQQXNidENQeU1NZ0pwKzEvSWF4cUdBUnpyRnR0cGhVUitNdkVQU3grNm0vcEN4RWkzWTdwNDg1RVNBVm11bGR2elNUS3cyZnFIU0dNNWhCVzFJVUkwZi9MZE9OdEVVS1hHQzk1aksrUmc0UUJWd05tbGVQWlZqVHh1bzI0a1dNclFIZy9uWnp4RHFtcUZSRkM3OTkrZGJFaXJNb1ZFWGhWQTA3WStHV05NT0JDeElJcENnQ3BBWDVLZ0hCNklRSUxId0UzSFhrMlhRVnN6ZFNrR0VDalVBQmhQTE1kVC91S0wwUklROER6WU9LSnU5OFYwMDZMYlNJa3ZCc1JsekJQWWtJUklIMTc0M2lFaWVsQlQ0aVFSa05Id1VRTVV0VFdYcXNpUXVnQml3bDczT09yVjBSSXEvNitCSVBQVlZMcmJBVkF1bFFLSXdBTy85alVLeUprNTFTbU81d3docEhYYWMwRTNFUUVmUkl1NlRmQllMUW4vSjNlQ2NGZEU3aTRkd21IY2tXRXJKc21VN2VJc0duTHhwVnBWRVRJNGtWTTNWQ1V3MStYZFJQUmFNMGs2NGpMMUxFRmtCQkdSdzdhZDFaRStBVkg3NFhoOE5RTS9kWk14VktEa1BDeVdtYlBKLzh1SVFKL1hiaUw4Yk5LdnYwdldsTENiMGZRalI5enVVMXkrc1NramNxc2dQQXpDVkdGV3pQcFl4Sk05R0FNWGhHUmluRDg1eGtyQ3hFb21FWTdJN2ovNDBJRXZqV2xKN3dEempKWnRtYkNXL2NDaE9QUHRsSUNNR1hJQVgzUUZZUUlSY0kzQ3EyWk5rM3RZZHV1blB4SXB1czhKb0xpNWUxdTJ5V04xa3hkM1VWOVZYQWR2bmpudElrc2gxVjNCU2UvRElVSUhCZFJDTU1WNk9uSHJ0VzNieGM4VkpWbVBRK0lGUW1idHlVZ2VqZW02VnN6d2FOSjVJUVQ5cjhBVUYwNC9Eb01JK05oMVpXNU00Y2hKNXl1TlJNQW52N1RoMFB3UDc0cFRsOVVqUFo4R2oxOVBZU24wUzFGUUcyVmZHdlNQcXhycDUybUJONkkyNW4yQ1RCT09SRTAvNkdpVm45WU5mOGJGQmQ0UlVSRmxXekJ2eUJFcUlpNEk5YWt5KzJyMjk1OTcvWkQ2Mit4S1ZmQnROTTZxYUhSRzYxZXJYUEJPZk82SE43VVlsSm11c2xwV0RVVGRZYWI0TDJ6MXY0MGhQUEJ2d3pxT2x1VHZoREJWQjJhNEl5eC80VXhMcng4Z295Y1cwVUVnTzR5MkwzSCtVbDVYSS80dm9jNnJaa0EzQnB2M25qZlMvbmhSNzgxRTU0TjZ0NE9lV3hReHVrbmd1SjFTODRBUlI0UndBcXRtYUNGWm5SaUwybGJNK0hhQUM1bnBxK0l3Ris2aGhmQld6Tk5sVzZxQ3JHWFJ5emEweU5PZDFFMWZzWVVDN1VWMkpvcDdYeVhic3c5MEtZVUluanBrUmNlY1dma0VtZENBZWhndWV1VG1OdCtzaGtSZUtkM3Y2N25QOWNOREpIdm9EKyt4ZHZwb3ZYS0NwNVNmb0d4SHNqMHlGK0l3SFV1czdzbVZoOElIVkdJd0p0THk3dU42UGUvd0FuckJ4T25BYXlJU0xXa1E4d29CS3lSKytkVVRzdUVLK0w4cDJCRDRmR2RzZnFoeEdRVFFabHVIVUxYclJzVUZmQkUwT2d6SWxyYVI4dmt3NnFuWG11RFNGOFJnUzh0aCtkK3BoY2k4RkpmMWZ3YXBpNDRyRnBmcVRaQW5XK0pGUkcza2Y5NForc1NxZFIxVUlpSS9kYy9CNk4vTTlXc2lBRE8wMEEzUVUwaG9oWDVSVGRlQ3JzdHlUMVdwaFVSVEJldkJhVjRpd1lKR0djdFJEQzFGc0dhUTNSdEdGZkw0b3MzNGc2VCtBa0FUODRiczBmWDJ3ZVM4OFg3WDZoWFJERFJ6ZHdIWi81RDJoampnaHQzTWI1eTFOSU5xK2JlWkJ1OGQ4NDY1N3dQWWZOOHBaQmMwZytKS2lLWWlOcjlyNHYxWnJ2ZGJ0YXpwMTZUU0NPZlpwcE1pR0Q2aVZxcjI3MW9Wb2tVNkFKOVU1RkduWEl3dzVtSCtrTEVoeEkxY2wyMFFDR0NUZ1JNQS8zK0YybFJYWHR6WGhVUlBUVHQ5R1FBNmgrZC8xZEU1QW45R1JINW81bXdJZ0tIdmhDQmk1ajYwQmNpOG9lK0VLRVByWW1nK1FOTk93M1BkQ0xncEJVUk9QUTE4bVgxWkV4OHA5Ly9JaTBxYzNRaTZDbUFVMWRFcEQ5U0ExdFQ5OC9HWmFkdmYyOUd4UFlQaDluK01qQXVSTmcvSGM0V1ltOFdqVDBwQUJOQjdXa0FiODFrejhmRW81TmEwckFRWVU4S1FFV0VQU2tBYWFmblJQaVhFR0hQQ0NiY254cGhJRVBQbmhYYzlYa1JOdUhoM0N3OEpYdGVlQ1Y3WmpnL3d1YThZR2wzWHZEVVB5L2MvQXZkNC9oTkRTcWVnUUFBQUFCSlJVNUVya0pnZ2c9PSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgLmNvbnRhaW5lciB7CiAgICAgICAgICAgICAgICB3aWR0aDogNzAlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIC5zdGF0dXMtY29kZSB7CiAgICAgICAgICAgICAgICBmb250LXNpemU6IDkwMCU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgLnN0YXR1cy1yZWFzb24gewogICAgICAgICAgICAgICAgZm9udC1zaXplOiA0NTAlOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgPC9zdHlsZT4KICAgIDwvaGVhZD4KICAgIDxib2R5PgogICAgICAgIDxkaXYgY2xhc3M9ImNvbnRhaW5lciI+CiAgICAgICAgICAgIDxzZWNpb24gY2xhc3M9InJlc3BvbnNlLWluZm8iPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InN0YXR1cy1jb2RlIj40MDQ8L3NwYW4+CiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic3RhdHVzLXJlYXNvbiI+Tm90IEZvdW5kPC9zcGFuPgogICAgICAgICAgICA8L3NlY3Rpb24+CgogICAgICAgICAgICA8c2VjdGlvbiBjbGFzcz0iY29udGFjdC1pbmZvIj4KICAgICAgICAgICAgICAgIFBsZWFzZSBmb3J3YXJkIHRoaXMgZXJyb3Igc2NyZWVuIHRvIHRyYWRlcHJvZ2xvYmFsaW52ZXN0bWVudC5jb20ncyA8YSBocmVmPSJtYWlsdG86d2VibWFzdGVyQHRyYWRlcHJvZ2xvYmFsaW52ZXN0bWVudC5jb20/c3ViamVjdD1FcnJvciBtZXNzYWdlIFtdICBmb3IgdHJhZGVwcm9nbG9iYWxpbnZlc3RtZW50LmNvbS9jcF9lcnJvcmRvY3VtZW50LnNodG1sIHBvcnQgNDQzIG9uIFN1bmRheSwgMTMtTWFyLTIwMjIgMDU6MjY6MjYgRURUIj4gV2ViTWFzdGVyPC9hPi4KICAgICAgICAgICAgPC9zZWN0aW9uPgoKICAgICAgICAgICAgPHAgY2xhc3M9InJlYXNvbi10ZXh0Ij5UaGUgc2VydmVyIGNhbiBub3QgZmluZCB0aGUgcmVxdWVzdGVkIHBhZ2U6PC9wPgogICAgICAgIDwvZGl2PgogICAgICAgIDxzZWN0aW9uIGNsYXNzPSJhZGRpdGlvbmFsLWluZm8iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWRkaXRpb25hbC1pbmZvLWl0ZW1zIj4KICAgICAgICAgICAgICAgICAgICA8dWw+CiAgICAgICAgICAgICAgICAgICAgICAgIDxsaT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSIuLi8uLi9pbWctc3lzL3NlcnZlcl9taXNjb25maWd1cmVkLnBuZyIgY2xhc3M9ImluZm8taW1hZ2UiIC8+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJpbmZvLWhlYWRpbmciPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYWRlcHJvZ2xvYmFsaW52ZXN0bWVudC5jb20vY3BfZXJyb3Jkb2N1bWVudC5zaHRtbCAocG9ydCA0NDMpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9saT4KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJpbmZvLXNlcnZlciI+PC9saT4KICAgICAgICAgICAgICAgICAgICA8L3VsPgogICAgICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgIDwvZGl2PgogICAgICAgIDwvc2VjdGlvbj4KICAgICAgICA8Zm9vdGVyPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb250YWluZXIiPgogICAgICAgICAgICAgICAgPGEgaHJlZj0iaHR0cDovL2NwYW5lbC5jb20vP3V0bV9zb3VyY2U9Y3BhbmVsd2htJmFtcDt1dG1fbWVkaXVtPWNwbG9nbyZhbXA7dXRtX2NvbnRlbnQ9bG9nb2xpbmsmYW1wO3V0bV9jYW1wYWlnbj00MDRyZWZlcnJhbCIgdGFyZ2V0PSJjcGFuZWwiIHRpdGxlPSJjUGFuZWwsIEluYy4iPgogICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPSIuLi8uLi9pbWctc3lzL3Bvd2VyZWRfYnlfY3BhbmVsLnN2ZyIgaGVpZ2h0PSIyMCIgYWx0PSJjUGFuZWwsIEluYy4iIC8+CiAgICAgICAgICAgICAgICA8L2E+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29weXJpZ2h0Ij48YSBocmVmPSJodHRwOi8vY3BhbmVsLmNvbS8/dXRtX3NvdXJjZT1jcGFuZWx3aG0mYW1wO3V0bV9tZWRpdW09Y3Bsb2dvJmFtcDt1dG1fY29udGVudD1sb2dvbGluayZhbXA7dXRtX2NhbXBhaWduPTQwNHJlZmVycmFsIiB0YXJnZXQ9ImNwYW5lbCIgdGl0bGU9ImNQYW5lbCwgSW5jLiI+Q29weXJpZ2h0IMKpIDIwMjAgY1BhbmVsLCBMLkwuQy48L2E+CiAgICAgICAgICAgICAgICAgICAgPGJyIC8+PGEgaHJlZj0iaHR0cHM6Ly9nby5jcGFuZWwubmV0L3ByaXZhY3kiIHRhcmdldD0iX2JsYW5rIj5Qcml2YWN5IFBvbGljeTwvYT48L2Rpdj4KICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgPC9mb290ZXI+CiAgICA8L2JvZHk+Cgo8IS0tIE1pcnJvcmVkIGZyb20gdHJhZGVwcm9nbG9iYWxpbnZlc3RtZW50LmNvbS90cmFuc2xhdGUuZ29vZ2xlLmNvbS90cmFuc2xhdGVfYS9lbGVtZW50YTBkOGEwZDguaHRtbD9jYj1nb29nbGVUcmFuc2xhdGVFbGVtZW50SW5pdCBieSBIVFRyYWNrIFdlYnNpdGUgQ29waWVyLzMueCBbWFImQ08nMjAxNF0sIFN1biwgMDkgT2N0IDIwMjIgMTU6MjQ6MDkgR01UIC0tPgo8L2h0bWw+Cg=="}},"time_used":365,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":365,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.200Z","timestamp":1785126257200,"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-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/ticker-tape/?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 04:24:17 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: 3ad18c8b478364d3f8eed5b2f64559eb\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-27T07:05:45.329231Z","times_seen":6794,"resource_available":false,"data":"OmZvY3Vze291dGxpbmU6bm9uZX0="}},"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.tradingview-widget.com/static/bundles/embed/32816.355d75b21ae4b534a849.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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.216Z","timestamp":1785126257216,"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-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/32816.355d75b21ae4b534a849.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/ticker-tape/?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 04:24:17 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-102a\"\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: c1c86f2290c70f37a62ad4cf66611662\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":4138,"size_decoded":1890,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (4138), with no line terminators","md5":"1769fde9875fdbb634439ca894f9dbe9","sha1":"44ac405e2cfa40ef07cbca4bf97d2226e51258d3","sha256":"8b2250108bfd0dcb2848b28cd1bf2fec55df68d3105b3bf87664cfd86cf2ff10","sha512":"b537406a03c65c8c9859d1e4cb17c37e062cc846b9e763763bbbfa0670ed74ffd1a3f571e5e7654a7b809c6810990a95babd6183fced394492ae1095b4193bcf","ssdeep":"48:D+GIP+GI2LrVLjVQqpz5Cw83JJMeFtQSphXivmRE0r/VC5WNHC5mNVd:DaRLBLpQqpVv0JKOTphXiuREIVweHwmZ","tlshash":"f5814858835c4dafbb2647826762fc582164e3feb2324b6c534924fd46b4d6d39332c5","first_seen":"2026-07-16T11:36:17.974176Z","last_seen":"2026-07-27T07:05:45.351088Z","times_seen":1256,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtODRvdDp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLTg0b3Q6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCl9LnBhaXIteHdHc1NYUjB7ZGlzcGxheTppbmxpbmUtYmxvY2s7cG9zaXRpb246cmVsYXRpdmV9LnBhaXIteHdHc1NYUjAueHhjZXB0aW9uYWxseXNtYWxsZG9ub3R1c2VicnYxMDIzLXh3R3NTWFIwe2hlaWdodDoxNHB4O3dpZHRoOjE0cHh9LnBhaXIteHdHc1NYUjAueHh4eHNtYWxsLXh3R3NTWFIwe2hlaWdodDoyMHB4O3dpZHRoOjIwcHh9LnBhaXIteHdHc1NYUjAueHh4c21hbGwteHdHc1NYUjB7aGVpZ2h0OjE4cHg7d2lkdGg6MThweH0ucGFpci14d0dzU1hSMC54eHNtYWxsLXh3R3NTWFIwe2hlaWdodDoyMHB4O3dpZHRoOjIwcHh9LnBhaXIteHdHc1NYUjAueHNtYWxsLXh3R3NTWFIwe2hlaWdodDoyNHB4O3dpZHRoOjI0cHh9LnBhaXIteHdHc1NYUjAuc21hbGwteHdHc1NYUjB7aGVpZ2h0OjI4cHg7d2lkdGg6MjhweH0ucGFpci14d0dzU1hSMC5tZWRpdW0teHdHc1NYUjB7aGVpZ2h0OjM2cHg7d2lkdGg6MzZweH0ucGFpci14d0dzU1hSMC5sYXJnZS14d0dzU1hSMHtoZWlnaHQ6NDhweDt3aWR0aDo0OHB4fS5wYWlyLXh3R3NTWFIwLnhsYXJnZS14d0dzU1hSMHtoZWlnaHQ6NTZweDt3aWR0aDo1NnB4fS5wYWlyLXh3R3NTWFIwLnh4bGFyZ2UteHdHc1NYUjB7aGVpZ2h0OjExMnB4O3dpZHRoOjExMnB4fS5wYWlyLXh3R3NTWFIwLnh4eGxhcmdlLXh3R3NTWFIwe2hlaWdodDoxNjhweDt3aWR0aDoxNjhweH0ucGFpci14d0dzU1hSMC54eHh4c21hbGwteHdHc1NYUjB7aGVpZ2h0OjEycHh9LnBhaXIteHdHc1NYUjAueHhjZXB0aW9uYWxseXNtYWxsZG9ub3R1c2VicnYxMDIzLXh3R3NTWFIwe2hlaWdodDo4cHh9LmxvZ28teHdHc1NYUjB7Ym9yZGVyLXJhZGl1czo1MCV9LmxvZ28teHdHc1NYUjA6bm90KGltZyl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMC04NG90KX0ubG9nby14d0dzU1hSMDpmaXJzdC1jaGlsZCwubG9nby14d0dzU1hSMDpsYXN0LWNoaWxke3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjA7dG9wOjB9LmxvZ28teHdHc1NYUjAueHhjZXB0aW9uYWxseXNtYWxsZG9ub3R1c2VicnYxMDIzLXh3R3NTWFIwe2hlaWdodDo4cHg7d2lkdGg6OHB4fS5sb2dvLXh3R3NTWFIwLnh4Y2VwdGlvbmFsbHlzbWFsbGRvbm90dXNlYnJ2MTAyMy14d0dzU1hSMDpsYXN0LWNoaWxke3RyYW5zZm9ybTp0cmFuc2xhdGUoLTZweCl9LmxvZ28teHdHc1NYUjAueHh4eHNtYWxsLXh3R3NTWFIwe2hlaWdodDoxMnB4O3dpZHRoOjEycHh9LmxvZ28teHdHc1NYUjAueHh4eHNtYWxsLXh3R3NTWFIwOmxhc3QtY2hpbGR7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtOHB4KX0ubG9nby14d0dzU1hSMC54eHhzbWFsbC14d0dzU1hSMHtoZWlnaHQ6MTJweDt3aWR0aDoxMnB4fS5sb2dvLXh3R3NTWFIwLnh4eHNtYWxsLXh3R3NTWFIwOmxhc3QtY2hpbGR7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNnB4LDZweCl9LmxvZ28teHdHc1NYUjAueHhzbWFsbC14d0dzU1hSMHtoZWlnaHQ6MTJweDt3aWR0aDoxMnB4fS5sb2dvLXh3R3NTWFIwLnh4c21hbGwteHdHc1NYUjA6bGFzdC1jaGlsZHt0cmFuc2Zvcm06dHJhbnNsYXRlKC04cHgsOHB4KX0ubG9nby14d0dzU1hSMC54c21hbGwteHdHc1NYUjB7aGVpZ2h0OjE2cHg7d2lkdGg6MTZweH0ubG9nby14d0dzU1hSMC54c21hbGwteHdHc1NYUjA6bGFzdC1jaGlsZHt0cmFuc2Zvcm06dHJhbnNsYXRlKC04cHgsOHB4KX0ubG9nby14d0dzU1hSMC5zbWFsbC14d0dzU1hSMHtoZWlnaHQ6MThweDt3aWR0aDoxOHB4fS5sb2dvLXh3R3NTWFIwLnNtYWxsLXh3R3NTWFIwOmxhc3QtY2hpbGR7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtMTBweCwxMHB4KX0ubG9nby14d0dzU1hSMC5tZWRpdW0teHdHc1NYUjB7aGVpZ2h0OjI0cHg7d2lkdGg6MjRweH0ubG9nby14d0dzU1hSMC5tZWRpdW0teHdHc1NYUjA6bGFzdC1jaGlsZHt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xMnB4LDEycHgpfS5sb2dvLXh3R3NTWFIwLmxhcmdlLXh3R3NTWFIwe2hlaWdodDozMnB4O3dpZHRoOjMycHh9LmxvZ28teHdHc1NYUjAubGFyZ2UteHdHc1NYUjA6bGFzdC1jaGlsZHt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xNnB4LDE2cHgpfS5sb2dvLXh3R3NTWFIwLnhsYXJnZS14d0dzU1hSMHtoZWlnaHQ6MzhweDt3aWR0aDozOHB4fS5sb2dvLXh3R3NTWFIwLnhsYXJnZS14d0dzU1hSMDpsYXN0LWNoaWxke3RyYW5zZm9ybTp0cmFuc2xhdGUoLTE4cHgsMThweCl9LmxvZ28teHdHc1NYUjAueHhsYXJnZS14d0dzU1hSMHtoZWlnaHQ6NzZweDt3aWR0aDo3NnB4fS5sb2dvLXh3R3NTWFIwLnh4bGFyZ2UteHdHc1NYUjA6bGFzdC1jaGlsZHt0cmFuc2Zvcm06dHJhbnNsYXRlKC0zNnB4LDM2cHgpfS5sb2dvLXh3R3NTWFIwLnh4eGxhcmdlLXh3R3NTWFIwe2hlaWdodDoxMTRweDt3aWR0aDoxMTRweH0ubG9nby14d0dzU1hSMC54eHhsYXJnZS14d0dzU1hSMDpsYXN0LWNoaWxke3RyYW5zZm9ybTp0cmFuc2xhdGUoLTU0cHgsNTRweCl9LmxvZ28teHdHc1NYUjAueHhjZXB0aW9uYWxseXNtYWxsZG9ub3R1c2VicnYxMDIzLXh3R3NTWFIwOmxhc3QtY2hpbGR7b3V0bGluZToxcHggc29saWQgdmFyKC0tdWktbGliLWJhZGdlLWFjdHVhbC1iYWNrZ3JvdW5kKX0ubG9nby14d0dzU1hSMC54eHh4c21hbGwteHdHc1NYUjA6Zmlyc3QtY2hpbGR7Y2xpcC1wYXRoOnBhdGgoIk0zLjc0ODgyIDExLjU2MzRDNS4xNDIzOSAxMC4xMjM2IDYgOC4xNjE5OCA2IDZDNiAzLjgzODAyIDUuMTQyMzkgMS44NzYzNSAzLjc0ODgyIDAuNDM2NjE3QzQuNDQzOTYgMC4xNTUwNTYgNS4yMDM4NyAtNS45NDEzNmUtMDcgNiAtNS4yNDUzN2UtMDdDOS4zMTM3MSAtMi4zNDg0M2UtMDcgMTIgMi42ODYyOSAxMiA2QzEyIDkuMzEzNzEgOS4zMTM3MSAxMiA2IDEyQzUuMjAzODcgMTIgNC40NDM5NiAxMS44NDQ5IDMuNzQ4ODIgMTEuNTYzNFoiKX0ubG9nby14d0dzU1hSMC54eHhzbWFsbC14d0dzU1hSMDpmaXJzdC1jaGlsZHtjbGlwLXBhdGg6cGF0aCgiTTEyIDBIMHY0YTggOCAwIDAgMSA4IDhoNFYwWiIpfS5sb2dvLXh3R3NTWFIwLnh4c21hbGwteHdHc1NYUjA6Zmlyc3QtY2hpbGR7Y2xpcC1wYXRoOnBhdGgoIk0xMiAwSDB2Ni4yNTRBOCA4IDAgMCAxIDUuNzQ2IDEySDEyWiIpfS5sb2dvLXh3R3NTWFIwLnhzbWFsbC14d0dzU1hSMDpmaXJzdC1jaGlsZHtjbGlwLXBhdGg6cGF0aCgiTTE2IDhBOCA4IDAgMCAwIC4zIDZhMTAgMTAgMCAwIDEgOS43IDkuN0E4IDggMCAwIDAgMTYgOFoiKX0ubG9nby14d0dzU1hSMC5zbWFsbC14d0dzU1hSMDpmaXJzdC1jaGlsZHtjbGlwLXBhdGg6cGF0aCgiTTE4IDBIMHY4LjA0QTExIDExIDAgMCAxIDkuOTYgMThIMThWMFoiKX0ubG9nby14d0dzU1hSMC5tZWRpdW0teHdHc1NYUjA6Zmlyc3QtY2hpbGR7Y2xpcC1wYXRoOnBhdGgoIk0yNCAwSDB2MTBjOCAwIDE0IDYgMTQgMTRoMTBWMFoiKX0ubG9nby14d0dzU1hSMC5sYXJnZS14d0dzU1hSMDpmaXJzdC1jaGlsZHtjbGlwLXBhdGg6cGF0aCgiTTMyIDBIMHYxNGExOCAxOCAwIDAgMSAxOCAxOGgxNFYwWiIpfS5sb2dvLXh3R3NTWFIwLnhsYXJnZS14d0dzU1hSMDpmaXJzdC1jaGlsZHtjbGlwLXBhdGg6cGF0aCgiTTM4IDBIMHYxNi4wMkwxIDE2YTIxIDIxIDAgMCAxIDIwLjk4IDIySDM4VjBaIil9LmxvZ28teHdHc1NYUjAueHhsYXJnZS14d0dzU1hSMDpmaXJzdC1jaGlsZHtjbGlwLXBhdGg6cGF0aCgiTTc2IDBIMHYzMi4wNUE0MiA0MiAwIDAgMSA0My45NSA3Nkg3NlYwWiIpfS5sb2dvLXh3R3NTWFIwLnh4eGxhcmdlLXh3R3NTWFIwOmZpcnN0LWNoaWxke2NsaXAtcGF0aDpwYXRoKCJNMTEzIDBIMFY0OGMzNS0xIDY2IDI2IDY2IDY2djBoNDhWMFoiKX0uc2tlbGV0b24teHdHc1NYUjB7YmFja2dyb3VuZC1jb2xvcjpjdXJyZW50Q29sb3J9LmVtcHR5LXh3R3NTWFIwe2JhY2tncm91bmQtaW1hZ2U6dXJsKGVtcHR5LWNvaW4tbGlnaHQuNmQwYjczMWFjNmY0ODlmMDZlNjUuc3ZnKTtiYWNrZ3JvdW5kLXNpemU6Y29udGFpbn1odG1sLnRoZW1lLWRhcmsgLmVtcHR5LXh3R3NTWFIwe2JhY2tncm91bmQtaW1hZ2U6dXJsKGVtcHR5LWNvaW4tZGFyay5kNmQwN2JmZjkyZDdlNGRmZjVhZC5zdmcpfQ=="}},"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.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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.263Z","timestamp":1785126257263,"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-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/ticker-tape/?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 04:24:17 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: 8eb1328ca76f2f2248a1629fc3887420\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-27T07:05:45.453763Z","times_seen":1216,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1szNTUyXSx7NDUwMjk1KHQpe3QuZXhwb3J0cz17fX0sNDYyMzUodCl7dC5leHBvcnRzPXt9fSw5NzMxMTkodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7cXVvdGVUaWNrZXJGb3JtYXRDaGFuZ2U6KCk9Pm59KTt2YXIgaT1zKDc1NTYyNyksYT1zKDk4NDM3Nik7dmFyIG89cygyMTYxMSk7ZnVuY3Rpb24gbih0LGUscyl7Y29uc3Qgbj0oMCxvLnRvTnVtYmVyT3JVbmRlZmluZWQpKHQpO2lmKCJlY29ub21pYyI9PT1lPy50eXBlJiYwPT09bnx8dm9pZCAwPT09bilyZXR1cm47Y29uc3QgbD1zPy5jdXN0b21QcmljZUZvcm1hdHRlcnx8InZvbHVtZSI9PT1lLmZvcm1hdCYmbmV3IGEuVm9sdW1lRm9ybWF0dGVyKHtwcmVjaXNpb246Mn0pfHxuZXcgaS5QcmljZUZvcm1hdHRlcih7cHJpY2VTY2FsZTplLnByaWNlc2NhbGV8fDEwMCxtaW5Nb3ZlOmUubWlubW92fHwxLGZyYWN0aW9uYWw6ZS5mcmFjdGlvbmFsLG1pbk1vdmUyOmUubWlubW92ZTJ9KSxyPXZvaWQgMCE9PXM/LnNpZ25Qb3NpdGl2ZUNoYW5nZT9zLnNpZ25Qb3NpdGl2ZUNoYW5nZTpzPy5zaWduUG9zaXRpdmU7cmV0dXJuKCh0LGU9ITApPT5lP2AoJHt0fSlgOnQpKGwuZm9ybWF0KG4se3NpZ25Qb3NpdGl2ZTpyLHNpZ25OZWdhdGl2ZTpzPy5zaWduTmVnYXRpdmV9KSxzPy5jaGFuZ2VJbkJyYWNrZXRzKX19LDYwMjg3KHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse3F1b3RlVGlja2VyRm9ybWF0Q3VycmVuY3k6KCk9PmF9KTt2YXIgaT1zKDE4NTI3MSk7ZnVuY3Rpb24gYSh0KXtzd2l0Y2godCl7Y2FzZSJERUdDIjpyZXR1cm4i4oSDIjtjYXNlIlBDVERZIjpyZXR1cm4gaS50KG51bGwse2NvbnRleHQ6Il9tYXhfbGVuXzkifSxzKDQ0NTA1KSk7Y2FzZSJQQ1RQQVIiOnJldHVybiBpLnQobnVsbCx7Y29udGV4dDoiX21heF9sZW5fOSJ9LHMoNDY4NDYwKSk7ZGVmYXVsdDpyZXR1cm4gdH19Nzg2NzYwKHQsZSxzKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaSh0KXtyZXR1cm4ibWN4X2ZyZWUiPT09dH1mdW5jdGlvbiBhKHQpe3JldHVybiEhdCYmKGkodC5zeW1ib2xuYW1lKXx8InBlcm1pc3Npb25fZGVuaWVkIj09PXQuc3RhdHVzJiZpKHQudmFsdWVzPy5hbHRlcm5hdGl2ZSkpfXMuZChlLHtpc01jeFF1b3RlRGF0YTooKT0+YX0pfSwxMDE3MTIodCxlLHMpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBpKHQpe3JldHVybiB0LmVuZHNXaXRoKCJfZGx5Iil9ZnVuY3Rpb24gYSh0KXtyZXR1cm4hIXQmJighKHZvaWQgMD09PXQuc3ltYm9sbmFtZXx8IWkodC5zeW1ib2xuYW1lKSl8fEJvb2xlYW4oInBlcm1pc3Npb25fZGVuaWVkIj09PXQuc3RhdHVzJiZ0LnZhbHVlcyYmdm9pZCAwIT09dC52YWx1ZXMuYWx0ZXJuYXRpdmUmJmkodC52YWx1ZXMuYWx0ZXJuYXRpdmUpKSl9cy5kKGUse2lzU2ZRdW90ZURhdGE6KCk9PmF9KX0sMjAyNDYwKHQsZSxzKXsidXNlIHN0cmljdCI7cy5kKGUse0Fic3RyYWN0SW5kaWNhdG9yOigpPT5sfSk7dmFyIGk9cygyMjEwNjEpLGE9cygxNTAxNTApLG89cygxNTk1MTMpO3MoMzQ0Nzg1KTtjb25zdCBuPSgwLGkuZ2V0TG9nZ2VyKSgiR1VJLkJsb2Nrcy5BYnN0cmFjdEluZGljYXRvciIpO2NsYXNzIGx7Y29uc3RydWN0b3IodCl7dGhpcy5fY2xhc3NTdWZmaXg9IiIsdGhpcy5fcXVvdGVTZXNzaW9uUHJlZml4PSJhYnN0cmFjdC1pbmRpY2F0b3IiLHRoaXMuX3Nob3J0TW9kZT0hMSx0aGlzLl9zaG93VG9vbHRpcD0hMCx0aGlzLl9zdWJzY3JpYmVkPSExLHRoaXMuX3Rvb2x0aXBUeXBlPSJjdXN0b20iLHRoaXMuX2xhc3RUb29sdGlwVGV4dD0iIix0aGlzLl9xdW90ZVNlc3Npb249dC5xdW90ZVNlc3Npb259Z2V0VmFsdWUoKXtyZXR1cm4gdGhpcy5fdmFsdWV9Z2V0VG9vbHRpcFRleHQoKXtyZXR1cm4gdGhpcy5fbGFiZWxNYXBbdGhpcy5fdmFsdWVdfHwiIn1nZXRMYWJlbCgpe3JldHVybiB0aGlzLl9sYWJlbE1hcFt0aGlzLl92YWx1ZV18fCIifWdldEVsZW1lbnQoKXtyZXR1cm4gdGhpcy5fZWx9dXBkYXRlKHQsZSl7dGhpcy5fdXBkYXRlVmFsdWUodCxlKSx0aGlzLl9yZW5kZXIoKX1zZXRUb29sdGlwRW5hYmxlZCh0PSExKXt0aGlzLl9zaG93VG9vbHRpcCE9PXQmJih0aGlzLl9zaG93VG9vbHRpcD10LHRoaXMuX3JlbmRlclRvb2x0aXAoKSl9ZW5hYmxlU2hvcnRNb2RlKCl7ITAhPT10aGlzLl9zaG9ydE1vZGUmJih0aGlzLl9zaG9ydE1vZGU9ITAsdGhpcy5fcmVuZGVyKCkpfWRpc2FibGVTaG9ydE1vZGUoKXshMSE9PXRoaXMuX3Nob3J0TW9kZSYmKHRoaXMuX3Nob3J0TW9kZT0hMSx0aGlzLl9yZW5kZXIoKSl9aXNTaG9ydE1vZGVFbmFibGVkKCl7cmV0dXJuIHRoaXMuX3Nob3J0TW9kZX1zdGFydCgpeyF0aGlzLl9zdWJzY3JpYmVkJiZ0aGlzLl9zeW1ib2xOYW1lJiYodGhpcy5fcXVvdGVTZXNzaW9ufHwodGhpcy5fcXVvdGVTZXNzaW9uPSgwLG8uZ2V0UXVvdGVTZXNzaW9uSW5zdGFuY2UpKCJzaW1wbGUiKSksdGhpcy5fcXVvdGVTZXNzaW9uLnN1YnNjcmliZSh0aGlzLl9nZXRRdW90ZVNlc3Npb25JZCgpLHRoaXMuX3N5bWJvbE5hbWUsdGhpcy51cGRhdGUuYmluZCh0aGlzKSksdGhpcy5fc3Vic2NyaWJlZD0hMCl9c3RvcCgpe3RoaXMuX3N1YnNjcmliZWQmJnRoaXMuX3F1b3RlU2Vzc2lvbiYmdGhpcy5fc3ltYm9sTmFtZSYmKHRoaXMuX3F1b3RlU2Vzc2lvbi51bnN1YnNjcmliZSh0aGlzLl9nZXRRdW90ZVNlc3Npb25JZCgpLHRoaXMuX3N5bWJvbE5hbWUpLHRoaXMuX3N1YnNjcmliZWQ9ITEpfXNldFNlc3Npb25TdGF0dXNJY29uKHQpe3RoaXMuX3Nlc3Npb25TdGF0dXNJY29uIT09dCYmKHRoaXMuX3Nlc3Npb25TdGF0dXNJY29uPXQsdGhpcy5fcmVuZGVyKCkpfV9pbml0KHQpe3RoaXMuX2VsPXQuZWw/dC5lbDpkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIiksdGhpcy5fZWwuaW5uZXJIVE1MPSIiLHRoaXMuX2NsYXNzTWFwPXQuY2xhc3NNYXAsdGhpcy5faWNvbkNsYXNzTWFwPXQuaWNvbkNsYXNzTWFwLHRoaXMuX2xhYmVsTWFwPXQubGFiZWxNYXAsCnRoaXMuX3Nob3dUb29sdGlwPXQuc2hvd1Rvb2x0aXAsdGhpcy5fY2xhc3NTdWZmaXg9dC5jbGFzc1N1ZmZpeCx0aGlzLl9zeW1ib2xOYW1lPXQuc3ltYm9sLHRoaXMuX3Nlc3Npb25TdGF0dXNJY29uPXQuc2Vzc2lvblN0YXR1c0ljb24sdGhpcy5fb25WYWx1ZUNoYW5nZT10Lm9uVmFsdWVDaGFuZ2UsdC50b29sdGlwVHlwZSYmKHRoaXMuX3Rvb2x0aXBUeXBlPXQudG9vbHRpcFR5cGUpLHRoaXMuX3F1b3RlU2Vzc2lvbkdVSUQ9KDAsYS5ndWlkKSgpLCEwPT09dC5zaG9ydCYmdGhpcy5lbmFibGVTaG9ydE1vZGUoKSx0LmRhdGEmJnRoaXMuX3VwZGF0ZVZhbHVlKHQuZGF0YSl9X2NsZWFyQ2xhc3Nlcygpe09iamVjdC52YWx1ZXModGhpcy5fY2xhc3NNYXApLm1hcCgodD0+e3RoaXMuX2VsLmNsYXNzTGlzdC5yZW1vdmUoYCR7dH1gKSx0aGlzLl9lbC5jbGFzc0xpc3QucmVtb3ZlKGAke3R9JHt0aGlzLl9jbGFzc1N1ZmZpeH1gKX0pKX1fcmVuZGVyKCl7dGhpcy5fcmVuZGVyQ2xhc3NlcygpLHRoaXMuX3JlbmRlclRvb2x0aXAoKSx0aGlzLl9yZW5kZXJMYWJlbCgpfV9yZW5kZXJMYWJlbCgpe3RoaXMuX2VsLnRleHRDb250ZW50PXRoaXMuZ2V0TGFiZWwoKX1fdXBkYXRlVmFsdWUodCxlKXtjb25zdCBzPXRoaXMuX2dldFZhbHVlRnJvbURhdGEodCk7KGV8fHMhPT10aGlzLl92YWx1ZSkmJih0aGlzLl92YWx1ZT1zLHRoaXMuX29uVmFsdWVDaGFuZ2U/Lih0aGlzLl92YWx1ZSkpfV9yZW5kZXJDbGFzc2VzKCl7Y29uc3QgdD10aGlzLl9lbC5jbGFzc0xpc3Q7dC5hZGQodGhpcy5fY29tcG9uZW50Q2xhc3MsdGhpcy5fY29tcG9uZW50Q2xhc3MrdGhpcy5fY2xhc3NTdWZmaXgpO2NvbnN0IGU9dGhpcy5fY2xhc3NNYXBbdGhpcy5fdmFsdWVdO2Zvcihjb25zdCBzIGluIHRoaXMuX2NsYXNzTWFwKXtjb25zdCBpPXRoaXMuX2NsYXNzTWFwW3NdO2kmJihpPT09ZT8odC5hZGQoaSxpK3RoaXMuX2NsYXNzU3VmZml4KSx0aGlzLl9zZXNzaW9uU3RhdHVzSWNvbiYmdC5hZGQoaSsiX193aXRoSWNvbiIpKToodC5yZW1vdmUoaSxpK3RoaXMuX2NsYXNzU3VmZml4KSx0aGlzLl9zZXNzaW9uU3RhdHVzSWNvbiYmdC5yZW1vdmUoaSsiX193aXRoSWNvbiIpKSl9IWUmJnRoaXMuX3ZhbHVlJiZuLmxvZ1dhcm4oYG5vIGNsYXNzTmFtZSBmb3Igc3RhdHVzICR7dGhpcy5fdmFsdWV9YCl9X3JlbmRlclRvb2x0aXAoKXtjb25zdCB0PXRoaXMuX3Nob3dUb29sdGlwP3RoaXMuZ2V0VG9vbHRpcFRleHQoKToiIjt0IT09dGhpcy5fbGFzdFRvb2x0aXBUZXh0JiYodGhpcy5fbGFzdFRvb2x0aXBUZXh0PXQsdGhpcy5fZWwuc2V0QXR0cmlidXRlKCJ0aXRsZSIsdCksImN1c3RvbSI9PT10aGlzLl90b29sdGlwVHlwZSYmdGhpcy5fZWwuY2xhc3NMaXN0LnRvZ2dsZSgiYXBwbHktY29tbW9uLXRvb2x0aXAiLHRoaXMuX3Nob3dUb29sdGlwKSl9X2dldFF1b3RlU2Vzc2lvbklkKCl7cmV0dXJuYCR7dGhpcy5fcXVvdGVTZXNzaW9uUHJlZml4fS4ke3RoaXMuX3F1b3RlU2Vzc2lvbkdVSUR9YH19fSwzMDY5MCh0LGUscyl7InVzZSBzdHJpY3QiO3MuZChlLHtEYXRhTW9kZUluZGljYXRvcjooKT0+ZH0pO3ZhciBpLGE9cygxODUyNzEpLG89KHMoODI5MTgwKSxzKDQ1MDI5NSkscygyMDI0NjApKTshZnVuY3Rpb24odCl7dC5EZWxheWVkPSJkZWxheWVkIix0LkRlbGF5ZWRTdHJlYW1pbmc9ImRlbGF5ZWRfc3RyZWFtaW5nIix0LkVuZE9mRGF5PSJlbmRvZmRheSIsdC5TbmFwc2hvdD0ic25hcHNob3QiLHQuUmVhbHRpbWU9InJlYWx0aW1lIix0LkNvbm5lY3Rpbmc9ImNvbm5lY3RpbmciLHQuTG9hZGluZz0ibG9hZGluZyIsdC5JbnZhbGlkPSJpbnZhbGlkIix0LkZvcmJpZGRlbj0iZm9yYmlkZGVuIix0LlN0cmVhbWluZz0ic3RyZWFtaW5nIn0oaXx8KGk9e30pKTtjb25zdCBuPXtjb25uZWN0aW5nOiJ0di1kYXRhLW1vZGUtLWNvbm5lY3RpbmciLGRlbGF5ZWQ6InR2LWRhdGEtbW9kZS0tZGVsYXllZCIsZGVsYXllZF9zdHJlYW1pbmc6InR2LWRhdGEtbW9kZS0tZGVsYXllZCIsZW5kb2ZkYXk6InR2LWRhdGEtbW9kZS0tZW5kb2ZkYXkiLGZvcmJpZGRlbjoidHYtZGF0YS1tb2RlLS1mb3JiaWRkZW4iLHJlYWx0aW1lOiJ0di1kYXRhLW1vZGUtLXJlYWx0aW1lIixzbmFwc2hvdDoidHYtZGF0YS1tb2RlLS1zbmFwc2hvdCIsbG9hZGluZzoidHYtZGF0YS1tb2RlLS1sb2FkaW5nIixyZXBsYXk6InR2LWRhdGEtbW9kZS0tcmVwbGF5In07ZnVuY3Rpb24gbCgpe3JldHVybntjb25uZWN0aW5nOmEudChudWxsLHtjb250ZXh0OiJkYXRhX21vZGVfY29ubmVjdGluZ19sZXR0ZXIifSxzKDg1OTk5NCkpLGRlbGF5ZWQ6YS50KG51bGwse2NvbnRleHQ6ImRhdGFfbW9kZV9kZWxheWVkX2xldHRlciJ9LHMoODkyMzYzKSksZGVsYXllZF9zdHJlYW1pbmc6YS50KG51bGwse2NvbnRleHQ6ImRhdGFfbW9kZV9kZWxheWVkX3N0cmVhbWluZ19sZXR0ZXIifSxzKDM5NDUwMSkpLGVuZG9mZGF5OmEudChudWxsLHtjb250ZXh0OiJkYXRhX21vZGVfZW5kX29mX2RheV9sZXR0ZXIifSxzKDU3MDkzOSkpLGZvcmJpZGRlbjphLnQobnVsbCx7Y29udGV4dDoiZGF0YV9tb2RlX2ZvcmJpZGRlbl9sZXR0ZXIifSxzKDM5NDkyMSkpLHJlYWx0aW1lOmEudChudWxsLHtjb250ZXh0OiJkYXRhX21vZGVfcmVhbHRpbWVfbGV0dGVyIn0scyg4NjY0NCkpLHNuYXBzaG90OmEudChudWxsLHtjb250ZXh0OiJkYXRhX21vZGVfc25hcHNob3RfbGV0dGVyIn0scygyNTczMjYpKSxsb2FkaW5nOiIiLHJlcGxheTphLnQobnVsbCx7Y29udGV4dDoiZGF0YV9tb2RlX3JlcGxheV9sZXR0ZXIifSxzKDc1NjQ1NykpfX1jb25zdCByPXtzdHJlYW1pbmc6InJlYWx0aW1lIn07Y2xhc3MgZCBleHRlbmRzIG8uQWJzdHJhY3RJbmRpY2F0b3J7Y29uc3RydWN0b3IodCl7c3VwZXIodCksdGhpcy5fcXVvdGVTZXNzaW9uUHJlZml4PSJkYXRhLW1vZGUtaW5kaWNhdG9yIix0aGlzLl9jb21wb25lbnRDbGFzcz0idHYtZGF0YS1tb2RlIix0aGlzLl9pbml0KHQpfWdldExhYmVsKCl7cmV0dXJuITA9PT10aGlzLl9zaG9ydE1vZGU/dGhpcy5fc2hvcnRMYWJlbE1hcFt0aGlzLl92YWx1ZV18fCIiOnN1cGVyLmdldExhYmVsKCl9CnNldE1vZGUodCxlKXt0aGlzLnVwZGF0ZSh7dmFsdWVzOnt1cGRhdGVfbW9kZTp0LHVwZGF0ZV9tb2RlX3NlY29uZHM6ZX19KX1oaWRlKCl7dGhpcy5fZWwuY2xhc3NMaXN0LmFkZCgiaS1oaWRkZW4iKX1zaG93KCl7dGhpcy5fZWwuY2xhc3NMaXN0LnJlbW92ZSgiaS1oaWRkZW4iKX1nZXRUb29sdGlwVGV4dCgpe2xldCB0PSIiO2NvbnN0IGU9dGhpcy5nZXRWYWx1ZSgpO2lmKCIiPT09ZSlyZXR1cm4gdDtzd2l0Y2goZSl7Y2FzZSJkZWxheWVkIjp0PWEudChudWxsLHZvaWQgMCxzKDc5MDUyNCkpO2JyZWFrO2Nhc2UiZGVsYXllZF9zdHJlYW1pbmciOnQ9YS50KG51bGwsdm9pZCAwLHMoODE0NjEpKTticmVhaztkZWZhdWx0OnQ9dGhpcy5fbGFiZWxNYXBbZV18fHR9cmV0dXJuWyJkZWxheWVkIiwiZGVsYXllZF9zdHJlYW1pbmciXS5pbmNsdWRlcyhlKSYmKHQ9dC5mb3JtYXQoe251bWJlcjpTdHJpbmcoTWF0aC5yb3VuZCh0aGlzLl9tb2RlSW50ZXJ2YWwvNjApKX0pKSx0fV9pbml0KHQ9e30pe2NvbnN0IGU9T2JqZWN0LmFzc2lnbih7fSx7Y2xhc3NNYXA6bixjbGFzc1N1ZmZpeDoiIixkYXRhOnt2YWx1ZXM6e3VwZGF0ZV9tb2RlOiJjb25uZWN0aW5nIn19LGxhYmVsTWFwOntjb25uZWN0aW5nOmEudChudWxsLHZvaWQgMCxzKDE5NDE5NCkpLGRlbGF5ZWQ6YS50KG51bGwsdm9pZCAwLHMoMjI5NTI1KSksZGVsYXllZF9zdHJlYW1pbmc6YS50KG51bGwsdm9pZCAwLHMoMjI5NTI1KSksZW5kb2ZkYXk6YS50KG51bGwsdm9pZCAwLHMoNjAxNzY0KSksZm9yYmlkZGVuOmEudChudWxsLHZvaWQgMCxzKDMyODMxMykpLHJlYWx0aW1lOmEudChudWxsLHZvaWQgMCxzKDg4MzkyOCkpLHNuYXBzaG90OmEudChudWxsLHZvaWQgMCxzKDU2MjM5NSkpLGxvYWRpbmc6IiIscmVwbGF5OmEudChudWxsLHZvaWQgMCxzKDk3NzI3KSl9LG1vZGVJbnRlcnZhbDo2MDAsc2hvcnQ6ITEsc2hvcnRMYWJlbE1hcDpsKCksc2hvd1Rvb2x0aXA6ITAsdG9vbHRpcFR5cGU6ImN1c3RvbSJ9LHQpO3RoaXMuX21vZGVJbnRlcnZhbD1lLm1vZGVJbnRlcnZhbHx8NjAwLHRoaXMuX3Nob3J0TGFiZWxNYXA9ZS5zaG9ydExhYmVsTWFwfHxsKCksc3VwZXIuX2luaXQoZSksdGhpcy5fcmVuZGVyKCl9X2dldFZhbHVlRnJvbURhdGEodCl7bGV0IGU7cmV0dXJuIGU9dm9pZCAwIT09dC52YWx1ZXMmJnZvaWQgMCE9PXQudmFsdWVzLnVwZGF0ZV9tb2RlP3QudmFsdWVzLnVwZGF0ZV9tb2RlOnRoaXMuZ2V0VmFsdWUoKSxyW2VdfHxlfV91cGRhdGVWYWx1ZSh0LGUpe3ZvaWQgMCE9PXQudmFsdWVzJiZ2b2lkIDAhPT10LnZhbHVlcy51cGRhdGVfbW9kZV9zZWNvbmRzJiYodGhpcy5fbW9kZUludGVydmFsPXQudmFsdWVzLnVwZGF0ZV9tb2RlX3NlY29uZHMpLHN1cGVyLl91cGRhdGVWYWx1ZSh0LGUpfX19LDU2MzkxOCh0LGUscyl7InVzZSBzdHJpY3QiO3MuZChlLHtNYXJrZXRTdGF0dXNJbmRpY2F0b3I6KCk9Pmx9KTt2YXIgaT1zKDE4NTI3MSksYT1zKDIwMjQ2MCk7cyg0NjIzNSk7Y29uc3Qgbz17aW52YWxpZDoidHYtbWFya2V0LXN0YXR1cy0taW52YWxpZCIsbWFya2V0OiJ0di1tYXJrZXQtc3RhdHVzLS1tYXJrZXQiLG91dF9vZl9zZXNzaW9uOiJ0di1tYXJrZXQtc3RhdHVzLS1vdXQtb2Ytc2Vzc2lvbiIscG9zdF9tYXJrZXQ6InR2LW1hcmtldC1zdGF0dXMtLXBvc3QtbWFya2V0IixwcmVfbWFya2V0OiJ0di1tYXJrZXQtc3RhdHVzLS1wcmUtbWFya2V0IixuaWdodDoidHYtbWFya2V0LXN0YXR1cy0tbmlnaHQiLGxvYWRpbmc6InR2LW1hcmtldC1zdGF0dXMtLWxvYWRpbmciLGhvbGlkYXk6InR2LW1hcmtldC1zdGF0dXMtLWhvbGlkYXkiLHJlcGxheToidHYtbWFya2V0LXN0YXR1cy0tcmVwbGF5IixkZWxpc3RlZDoidHYtbWFya2V0LXN0YXR1cy0tZGVsaXN0ZWQifSxuPXtpbnZhbGlkOiJ0di1tYXJrZXQtc3RhdHVzX19pY29uLS1pbnZhbGlkIixtYXJrZXQ6InR2LW1hcmtldC1zdGF0dXNfX2ljb24tLW1hcmtldCIsb3V0X29mX3Nlc3Npb246InR2LW1hcmtldC1zdGF0dXNfX2ljb24tLW91dC1vZi1zZXNzaW9uIixwb3N0X21hcmtldDoidHYtbWFya2V0LXN0YXR1c19faWNvbi0tcG9zdC1tYXJrZXQiLG5pZ2h0OiJ0di1tYXJrZXQtc3RhdHVzX19pY29uLS1uaWdodCIscHJlX21hcmtldDoidHYtbWFya2V0LXN0YXR1c19faWNvbi0tcHJlLW1hcmtldCIsbG9hZGluZzoidHYtbWFya2V0LXN0YXR1c19faWNvbi0tbG9hZGluZyIsaG9saWRheToidHYtbWFya2V0LXN0YXR1c19faWNvbi0taG9saWRheSIscmVwbGF5OiJ0di1tYXJrZXQtc3RhdHVzX19pY29uLS1yZXBsYXkiLGRlbGlzdGVkOiJ0di1tYXJrZXQtc3RhdHVzX19pY29uLS1kZWxpc3RlZCJ9O2NsYXNzIGwgZXh0ZW5kcyBhLkFic3RyYWN0SW5kaWNhdG9ye2NvbnN0cnVjdG9yKHQpe3N1cGVyKHQpLHRoaXMuX3F1b3RlU2Vzc2lvblByZWZpeD0ibWFya2V0LXN0YXR1cy1pbmRpY2F0b3IiLHRoaXMuX2NvbXBvbmVudENsYXNzPSJ0di1tYXJrZXQtc3RhdHVzIix0aGlzLl9leHRyYVRpdGxlPSIiLHRoaXMuX2luaXQodCl9c2V0U3RhdHVzKHQsZSl7Y29uc3Qgcz17dmFsdWVzOntjdXJyZW50X3Nlc3Npb246ImRlbGlzdGVkIj09PXRoaXMuZ2V0VmFsdWUoKT8iZGVsaXN0ZWQiOnR9fTt0aGlzLnVwZGF0ZShzLGUpfWdldFRvb2x0aXBUZXh0KCl7bGV0IHQ9c3VwZXIuZ2V0VG9vbHRpcFRleHQoKTtyZXR1cm4iIj09PXR8fCIiIT09dGhpcy5fZXh0cmFUaXRsZSYmKHQ9YCR7dH0sICR7dGhpcy5fZXh0cmFUaXRsZX1gKSx0fXNldEV4dHJhVGl0bGUodCl7dGhpcy5fZXh0cmFUaXRsZT10fXJlc2V0KCl7dGhpcy5fY2xlYXJDbGFzc2VzKCksdGhpcy5fbGFiZWxFbC50ZXh0Q29udGVudD0iIix0aGlzLl9leHRyYVRpdGxlPSIiLHRoaXMuX2VsLnNldEF0dHJpYnV0ZSgidGl0bGUiLCIiKSx0aGlzLl92YWx1ZT0iIn1lbmFibGVTaG9ydE1vZGUodD0hMCl7dm9pZCAwIT09dGhpcy5fbGFiZWxFbCYmdGhpcy5fbGFiZWxFbC5jbGFzc0xpc3QuYWRkKCJpLWhpZGRlbiIpLHN1cGVyLmVuYWJsZVNob3J0TW9kZSgpfWRpc2FibGVTaG9ydE1vZGUoKXsKdm9pZCAwIT09dGhpcy5fbGFiZWxFbCYmdGhpcy5fbGFiZWxFbC5jbGFzc0xpc3QucmVtb3ZlKCJpLWhpZGRlbiIpLHN1cGVyLmRpc2FibGVTaG9ydE1vZGUoKX1fcmVuZGVyTGFiZWwoKXt0aGlzLl9sYWJlbEVsLnRleHRDb250ZW50PXRoaXMuZ2V0TGFiZWwoKX1fZ2V0VmFsdWVGcm9tRGF0YSh0KXtyZXR1cm4gdC52YWx1ZXM/LnR5cGVzcGVjcz8uaW5jbHVkZXMoImRpc2NvbnRpbnVlZCIpPyJkZWxpc3RlZCI6dm9pZCAwIT09dC52YWx1ZXM/LmN1cnJlbnRfc2Vzc2lvbj90LnZhbHVlcy5jdXJyZW50X3Nlc3Npb246dGhpcy5nZXRWYWx1ZSgpfV9yZW5kZXIoKXt0aGlzLl9yZW5kZXJMYWJlbEVsZW1lbnQoKSx0aGlzLl9zZXNzaW9uU3RhdHVzSWNvbj90aGlzLl9yZW5kZXJJY29uRWxlbWVudCgpOnRoaXMuX3JlbmRlckRvdEVsZW1lbnQoKSxzdXBlci5fcmVuZGVyKCl9X2luaXQodCl7Y29uc3QgZT1PYmplY3QuYXNzaWduKHt9LGZ1bmN0aW9uKCl7Y29uc3QgdD17aW52YWxpZDppLnQobnVsbCx7Y29udGV4dDoibWFya2V0LXN0YXR1cyJ9LHMoNjM4NDA1KSksbWFya2V0OmkudChudWxsLHtjb250ZXh0OiJtYXJrZXQtc3RhdHVzIn0scyg3MDI3ODgpKSxvdXRfb2Zfc2Vzc2lvbjppLnQobnVsbCx7Y29udGV4dDoibWFya2V0LXN0YXR1cyJ9LHMoOTE0NTcyKSkscG9zdF9tYXJrZXQ6aS50KG51bGwse2NvbnRleHQ6Im1hcmtldC1zdGF0dXMifSxzKDg2NzQ1NSkpLHByZV9tYXJrZXQ6aS50KG51bGwse2NvbnRleHQ6Im1hcmtldC1zdGF0dXMifSxzKDkxODg0MikpLGxvYWRpbmc6aS50KG51bGwse2NvbnRleHQ6Im1hcmtldC1zdGF0dXMifSxzKDI3NDQxNSkpLGhvbGlkYXk6aS50KG51bGwse2NvbnRleHQ6Im1hcmtldC1zdGF0dXMifSxzKDY4NTEwNCkpLGRlbGlzdGVkOmkudChudWxsLHtjb250ZXh0OiJtYXJrZXQtc3RhdHVzIn0scyg1NTIxNSkpLG5pZ2h0OmkudChudWxsLHtjb250ZXh0OiJtYXJrZXQtc3RhdHVzIn0scyg4OTc1OTEpKSxyZXBsYXk6IiJ9O3JldHVybntjbGFzc01hcDpvLGljb25DbGFzc01hcDpuLGNsYXNzU3VmZml4OiIiLGRhdGE6e30sZXh0cmFUaXRsZToiIixsYWJlbE1hcDp0LHNob3J0OiExLHNob3dUb29sdGlwOiEwLHRvb2x0aXBUeXBlOiJjdXN0b20ifX0oKSx0KTtzdXBlci5faW5pdChlKSx0aGlzLnNldEV4dHJhVGl0bGUoZS5leHRyYVRpdGxlKSx0aGlzLl9yZW5kZXIoKX1fcmVuZGVyTGFiZWxFbGVtZW50KCl7dm9pZCAwPT09dGhpcy5fbGFiZWxFbCYmKHRoaXMuX2xhYmVsRWw9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpLHRoaXMuX2xhYmVsRWwuY2xhc3NMaXN0LmFkZChgJHt0aGlzLl9jb21wb25lbnRDbGFzc31fX2xhYmVsYCksdGhpcy5fbGFiZWxFbC5jbGFzc0xpc3QuYWRkKGAke3RoaXMuX2NvbXBvbmVudENsYXNzfV9fbGFiZWwke3RoaXMuX2NsYXNzU3VmZml4fWApLHRoaXMuX2VsLmFwcGVuZENoaWxkKHRoaXMuX2xhYmVsRWwpKX1fcmVuZGVyRG90RWxlbWVudCgpe3RoaXMuX2VsLmNvbnRhaW5zKHRoaXMuX2ljb25FbCkmJnRoaXMuX2VsLnJlbW92ZUNoaWxkKHRoaXMuX2ljb25FbCksdm9pZCAwPT09dGhpcy5fZG90RWwmJih0aGlzLl9kb3RFbD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIiksdGhpcy5fZG90RWwuY2xhc3NMaXN0LmFkZChgJHt0aGlzLl9jb21wb25lbnRDbGFzc31fX2RvdGApLHRoaXMuX2RvdEVsLmNsYXNzTGlzdC5hZGQoYCR7dGhpcy5fY29tcG9uZW50Q2xhc3N9X19kb3Qke3RoaXMuX2NsYXNzU3VmZml4fWApLHRoaXMuX2VsLmFwcGVuZENoaWxkKHRoaXMuX2RvdEVsKSl9X3JlbmRlckljb25FbGVtZW50KCl7dGhpcy5fZWwuY29udGFpbnModGhpcy5fZG90RWwpJiZ0aGlzLl9lbC5yZW1vdmVDaGlsZCh0aGlzLl9kb3RFbCksdm9pZCAwPT09dGhpcy5faWNvbkVsJiZ0aGlzLl92YWx1ZSYmKHRoaXMuX2ljb25FbD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIiksdGhpcy5faWNvbkVsLmNsYXNzTGlzdC5hZGQoYCR7dGhpcy5fY29tcG9uZW50Q2xhc3N9X19pY29uYCksdGhpcy5faWNvbkVsLmNsYXNzTGlzdC5hZGQoYCR7dGhpcy5fY29tcG9uZW50Q2xhc3N9X19pY29uJHt0aGlzLl9jbGFzc1N1ZmZpeH1gKSx0aGlzLl9lbC5hcHBlbmRDaGlsZCh0aGlzLl9pY29uRWwpKX19fSw4OTE3NzgodCxlLHMpeyJ1c2Ugc3RyaWN0IjtzLmQoZSx7UHJpY2VDb2xvcmVyOigpPT5pfSk7dmFyIGksYT1zKDIxODgxNCksbz1zKDUwNTU2KTshZnVuY3Rpb24odCl7ZnVuY3Rpb24gZSh0LGUpe3JldHVybiAwPT09dD9lJiZ2b2lkIDAhPT1lLm5ldXRyYWw/ZS5uZXV0cmFsOmEuY29sb3IuYmxhY2s3MDp0PjA/ZSYmdm9pZCAwIT09ZS51cD9lLnVwOm8uY29sb3JzUGFsZXR0ZVsiY29sb3Itc3VjY2VzcyJdOmUmJnZvaWQgMCE9PWUuZG93bj9lLmRvd246by5jb2xvcnNQYWxldHRlWyJjb2xvci1kYW5nZXIiXX10LmZvcm1hdFNpZ249ZSx0LmZvcm1hdERpZmY9ZnVuY3Rpb24odCxzKXtyZXR1cm4gZShzLXQpfSx0LmRvbURpZmZlcmVuY2U9ZnVuY3Rpb24odCxlLHM9MCxpPSIiLGE9IiIpe2Z1bmN0aW9uIG8odCl7Y29uc3QgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7cmV0dXJuIGUuaW5uZXJIVE1MPXQsZX1jb25zdCBuPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2lmKCFzKXJldHVybiBuLmFwcGVuZENoaWxkKG8odCkpLG47Y29uc3QgbD10KyIiLHI9ZSsiIjtsZXQgZD1udWxsO2lmKGwubGVuZ3RoPT09ci5sZW5ndGgpe2ZvcihsZXQgdD0wO3Q8bC5sZW5ndGg7dCsrKWlmKGwuY2hhckF0KHQpIT09ci5jaGFyQXQodCkpe2Q9dDticmVha319ZWxzZSBkPU51bWJlcigiMCIpO2lmKG51bGw9PT1kKXJldHVybiBuLmFwcGVuZENoaWxkKG8obCkpLG47Y29uc3QgXz1vKGwuc3Vic3RyaW5nKDAsZCkpLHU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO3JldHVybiB1LmNsYXNzTmFtZT1zPDA/aTphLHUuYXBwZW5kQ2hpbGQobyhsLnN1YnN0cmluZyhkKSkpLG4uYXBwZW5kQ2hpbGQoXyksbi5hcHBlbmRDaGlsZCh1KSxufX0oaXx8KGk9e30pKX19XSk7"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCPLUME.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.700Z","timestamp":1785126258700,"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 /crypto/XTVCPLUME.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 04:24:18 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: \"7af35ae31640387573c45f3a2bc2f8fd\"\r\nlast-modified: Tue, 25 Feb 2025 16:53:27 GMT\r\ncdn-cachedat: 08/09/2025 14:39:06\r\nx-amz-id-2: //NFjnkHH9Mj5hn6bJIEwKN4avlReGOrFqOgaNPVKtlNntbhKDnvWmGEFIA/Slg+4DXyQ1TPmgI=\r\nx-amz-request-id: F05G26YJR3VNV2PH\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 7af35ae31640387573c45f3a2bc2f8fd\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: 4ea03371c8de064405193257d930009b\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":798,"size_decoded":1395,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (798), with no line terminators","md5":"7af35ae31640387573c45f3a2bc2f8fd","sha1":"c01227fe3ebf3f9b2a41412e3cfb61a1ea1c4731","sha256":"0e1b626d89080085342a5162619ccf76813f9f7a34c206fe20038fbd9046709f","sha512":"99dab53a811e7aff2ac739d45633ed9f98f4693b383f32e7235a53f40546fdb6cbae1897aba4f1fd9b8b3655453048177111906e5dd096980ab8cea8f83db740","ssdeep":"","tlshash":"a801ce716248f51c4046f65cd7aeede1230e106a75ca4be629fe43f5e0852deddc3118","first_seen":"2025-09-20T03:52:06.335605Z","last_seen":"2026-07-27T07:05:43.341682Z","times_seen":537,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGRjNEMDAiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNNi4yNiA5LjU1YTU4NzIuMTggNTg3Mi4xOCAwIDAgMCAuMDEtMy4zSDkuNTFhLjAyLjAyIDAgMCAwIDAtLjAxbC0uNjYtLjctLjQ1LS40N0EuMjIuMjIgMCAwIDAgOC4yNCA1aC0uOTdhMTk0Ljg3IDE5NC44NyAwIDAgMS0yLjI1LjAyQzUgNS4wMyA1IDUuMDUgNSA1LjA5djMuMThjMCAuMDcuMDIuMTIuMDYuMTZsLjQ2LjQ0YTI2LjQ4IDI2LjQ4IDAgMCAxIC43NC42OXYtLjAxWk05LjcgOS41bDEuMjUgMS4xN2guMDJhLjAyLjAyIDAgMCAwIC4wMiAwVjcuNzJhLjAyLjAyIDAgMCAwIDAtLjAxTDkuNzIgNi40OEg5LjdsLS4wMS4wMnYzWm0xLjkgMi4wN3YtMy40YzAtLjA0LjAxLS4wNC4wNC0uMDFsLjc4Ljc4LjQ5LjVhLjMuMyAwIDAgMSAuMDguMnYyLjg4YzAgLjA0IDAgLjA5LjA0LjEybC4xNC4xOC4yLjI0LjA0LjA2LjA4LjM0di4wMmgtLjAydi4wMWwtLjM0LS4wNWEuMTkuMTkgMCAwIDEtLjEtLjA1bC0uNC0uMzVhLjE4LjE4IDAgMCAwLS4xMi0uMDVIOS41N2EuMTQuMTQgMCAwIDEtLjEtLjA0bC0xLjMtMS4zYy0uMDMtLjA0LS4wMy0uMDUuMDEtLjA1aDMuNDJsLjAxLS4wM1pNNi41NyA5Ljc0bDEuMTYgMS4yNS4wMS4wMWgyLjk5di0uMDNMOS41NyA5LjdsLS4wMS0uMDFINi41N3YuMDNaIiBmaWxsPSIjZmZmIi8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCORBS.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.761Z","timestamp":1785126258761,"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 /crypto/XTVCORBS.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 04:24:18 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: \"1d48d9de2905c4e1cc1f1b41c4f37d07\"\r\nlast-modified: Mon, 19 Feb 2024 08:05:58 GMT\r\nx-amz-id-2: ENROl5oFhP9LgqNHTNQ4YXmiT3VsLY74nXlNJ9ljDEHvnsoGpno5VHLwutLRgX1HKsDy/gxLn/gU2g1ZMhDYCYkDsSEf9mAqo6MCZMjtLvo=\r\nx-amz-request-id: SE735W7SDSER5H05\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 1d48d9de2905c4e1cc1f1b41c4f37d07\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/26/2026 06:09:05\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 1a9a92eb610c239afbe0f7fa53474d88\r\ncdn-cache: REVALIDATED\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":3137,"size_decoded":2317,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (3137), with no line terminators","md5":"1d48d9de2905c4e1cc1f1b41c4f37d07","sha1":"5d49bd1893851ce15c0ecff5fa7da7f79f6192e5","sha256":"d2f26c2e84acf80e9405ce0fbf5b6382f8e19ac6ca8817d7adb6e8c86d0be0c0","sha512":"47ab8c6a56d7d2bb43040348ec3d2894fdfe61920b13cf2f6243d5a506cb1cc31fe3b42d4373971b6e6e2fb33b95f6f6ebc8e10d83ecc63528cdfd023d16b24e","ssdeep":"","tlshash":"205125a51248fabc48c3d796db67d2a013ce5089b19a53d838eef2f8940e1d5f813928","first_seen":"2026-02-19T10:21:04.707186Z","last_seen":"2026-07-27T05:33:43.677758Z","times_seen":305,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNNi44NyAxMC40YS4xMS4xMSAwIDAgMS0uMDguMS4xMS4xMSAwIDAgMS0uMTItLjA0TDUuMDUgOC45NGEuMTIuMTIgMCAwIDEtLjAyLS4yLjEyLjEyIDAgMCAxIC4wNi0uMDNsMi4yNy0uOWMuMS0uMDUuMTcgMCAuMTQuMTJsLS42MyAyLjQ3WiIgZmlsbD0iIzQwNEE3MiIvPjxwYXRoIGQ9Ik01LjUzIDExLjg0Yy0uMDguMDctLjE3LjA0LS4xOS0uMDdMNC45IDkuM2MtLjAyLS4xMS4wMy0uMTQuMTEtLjA2bDEuNTQgMS40NWEuMTguMTggMCAwIDEgMCAuMjdsLTEuMDIuODhaTTcuNCA3LjMxYS4xNC4xNCAwIDAgMS0uMDcuMjRsLTIuMjUuOWMtLjEuMDUtLjE2IDAtLjEyLS4xMWwuOTItMi41MWEuMTEuMTEgMCAwIDEgLjEtLjEuMTEuMTEgMCAwIDEgLjExLjA2bDEuMyAxLjUyWk01LjAzIDExLjQyYy4wMi4xMS0uMDIuMTMtLjA4LjAzbC0uODgtMS4zNmEuMzIuMzIgMCAwIDEgLjAyLS4zNGwuMzktLjUzYy4wNy0uMS4xNC0uMDcuMTYuMDRsLjM5IDIuMTZaTTQuNzUgOC4xOGMtLjA0LjExLS4xLjExLS4xNCAwbC0uMy0uOWEuMzUuMzUgMCAwIDEgLjEtLjM0bDEuMDYtLjk3Yy4wOC0uMDguMTItLjA1LjA4LjA1bC0uOCAyLjE2Wk00LjQ3IDguNTNhLjQ1LjQ1IDAgMCAxLS4wNi4zNmwtLjMuNDJjLS4wNy4xLS4xMi4wNy0uMS0uMDRsLjE0LTEuNDNjMC0uMTIuMDUtLjEyLjA4LS4wMWwuMjQuN1pNOC43IDEyLjkzYS4xMi4xMiAwIDAgMS0uMS4wOC4xMi4xMiAwIDAgMS0uMTItLjA3TDcuMjMgMTEuMWEuMTEuMTEgMCAwIDEgLjA4LS4xOWwyLjUyLS4yNmMuMTItLjAxLjE2LjA2LjEuMTZMOC43IDEyLjkzWk04LjE3IDEyLjkzYy4wNy4xLjAzLjE1LS4wNy4xbC0yLjM2LS44Yy0uMTEtLjA0LS4xMy0uMTMtLjA0LS4ybDEtLjg4YS4xOC4xOCAwIDAgMSAuMjMtLjAyYy4wMi4wMi4wNC4wMy4wNS4wNmwxLjIgMS43NFoiIGZpbGw9IiM1NTYxOTUiLz48cGF0aCBkPSJNOS44OCAxMC4yMmMuMDguMDkuMDUuMTctLjA3LjE4bC0yLjU2LjI3YS4xMy4xMyAwIDAgMS0uMTUtLjE4bC42NC0yLjVjLjAzLS4xMi4xMS0uMTQuMTktLjA1bDEuOTUgMi4yOFoiIGZpbGw9IiM2RUNDRTAiLz48cGF0aCBkPSJNMTEuNzIgMTIuMzdhLjExLjExIDAgMCAxLS4wNy4ybC0yLjYuNTVjLS4xLjAyLS4xNS0uMDQtLjEtLjE0bDEuMjMtMi4xYS4xNC4xNCAwIDAgMSAuMTItLjA5LjE0LjE0IDAgMCAxIC4xMi4wNmwxLjMgMS41MlpNNy41NCAxMy43OGEuMzIuMzIgMCAwIDEtLjM0LS4wNGwtMS4yMS0xLjA3Yy0uMDgtLjA4LS4wNy0uMTEuMDQtLjA4bDIuMDcuN2MuMS4wNS4xLjEyIDAgLjE3bC0uNTYuMzJaTTEwLjM0IDEzLjg4YS4zNC4zNCAwIDAgMS0uMzQuMDRsLS44NC0uNDNjLS4xLS4wNi0uMS0uMTIuMDItLjE0bDIuMjQtLjQ4Yy4xMS0uMDIuMTMuMDIuMDQuMWwtMS4xMi45MVpNOCAxMy45NGMtLjEyIDAtLjEzLS4wNi0uMDMtLjExbC40NS0uMjVhLjQ0LjQ0IDAgMCAxIC4zNyAwbC42Ni4zM2MuMS4wNi4xLjEtLjAyLjA5TDggMTMuOTRaIiBmaWxsPSIjNTU2MTk1Ii8+PHBhdGggZD0iTTEwLjY0IDEwLjJjLS4xLjA0LS4xNy0uMDItLjE0LS4xM2wuNjMtMi40N2EuMTEuMTEgMCAwIDEgLjE1LS4xbC4wNS4wNCAxLjYyIDEuNTJhLjEyLjEyIDAgMCAxLS4wNC4yM2wtMi4yNy45WiIgZmlsbD0iIzQwNEE3MiIvPjxwYXRoIGQ9Ik0xMy4xIDguN2MuMDIuMTEtLjAzLjE0LS4xMS4wNmwtMS41NC0xLjQ0YS4xOC4xOCAwIDAgMSAwLS4yOGwxLjAyLS44OGMuMDgtLjA3LjE3LS4wNC4xOS4wN2wuNDQgMi40N1pNMTIuMTIgMTIuMTdhLjExLjExIDAgMCAxLS4xLjEuMTEuMTEgMCAwIDEtLjExLS4wNmwtMS4zLTEuNTJhLjE0LjE0IDAgMCAxLS4wNC0uMTQuMTQuMTQgMCAwIDEgLjEtLjFsMi4yNS0uOWMuMS0uMDUuMTYgMCAuMTIuMTFsLS45MiAyLjUxWk0xMy45MyA3LjkxYS4zMi4zMiAwIDAgMS0uMDIuMzRsLS4zOS41M2MtLjA3LjEtLjE0LjA3LS4xNi0uMDRsLS4zOS0yLjE2Yy0uMDItLjExLjAyLS4xMy4wOC0uMDNsLjg4IDEuMzZaTTEzLjY5IDEwLjcyYS4zNS4zNSAwIDAgMS0uMS4zNGwtMS4wNi45N2MtLjA4LjA4LS4xMi4wNS0uMDgtLjA1bC44LTIuMTZjLjA0LS4xMS4xLS4xLjE0IDBsLjMuOVpNMTMuODUgMTAuMTdjLS4wMS4xLS4wNS4xMS0uMDkgMGwtLjIzLS43YS40NS40NSAwIDAgMSAuMDYtLjM3bC4zLS40Yy4wNy0uMS4xMi0uMDguMS4wM2wtLjE0IDEuNDRaIiBmaWxsPSIjNTU2MTk1Ii8+PHBhdGggZD0iTTEwLjc4IDYuOWEuMTEuMTEgMCAwIDEtLjEuMTlsLTIuNTEuMjZjLS4xMi4wMS0uMTYtLjA2LS4xLS4xNkw5LjMgNS4wN2EuMTIuMTIgMCAwIDEgLjEtLjA4LjEyLjEyIDAgMCAxIC4xMi4wN2wxLjI2IDEuODRaIiBmaWxsPSIjNDA0QTcyIi8+PHBhdGggZD0iTTExLjMgNi44NWEuMTguMTggMCAwIDEtLjI4LS4wNGwtMS4yLTEuNzRjLS4wNi0uMS0uMDMtLjE1LjA4LS4xbDIuMzYuOGMuMS4wNC4xMy4xMy4wNC4ybC0xIC44OFpNMTAuMjYgMTAuMDJjLS4wMy4xLS4xMS4xMy0uMTkuMDRMOC4xMiA3Ljc4Yy0uMDgtLjA5LS4wNS0uMTcuMDctLjE4bDIuNTYtLjI3YS4xMy4xMyAwIDAgMSAuMTYuMTF2LjA3bC0uNjUgMi41Wk03LjgyIDcuMTNhLjE0LjE0IDAgMCAxLS4xMi4wOC4xNC4xNCAwIDAgMS0uMTItLjA2bC0xLjMtMS41MmEuMTEuMTEgMCAwIDEgLjA3LS4ybDIuNi0uNTVjLjEtLjAyLjE1LjA0LjEuMTRsLTEuMjMgMi4xWk05LjkgNC43Yy0uMS0uMDQtLjExLS4xMS0uMDEtLjE3bC41Ny0uM2EuMzIuMzIgMCAwIDEgLjM0LjAzTDEyIDUuMzRjLjEuMDcuMDguMS0uMDMuMDdMOS45IDQuN1pNNi41OSA1LjEzYy0uMTIuMDItLjE0LS4wMi0uMDUtLjFsMS4xMi0uOTFBLjM1LjM1IDAgMCAxIDggNC4wOGwuODQuNDNjLjEuMDYuMS4xMi0uMDEuMTRsLTIuMjQuNDhaTTkuNTggNC40MmEuNDQuNDQgMCAwIDEtLjM3IDBsLS42Ni0uMzNjLS4xLS4wNi0uMDktLjEuMDItLjA5bDEuNDMuMDdjLjEyIDAgLjEzLjA1LjAzLjFsLS40NS4yNVoiIGZpbGw9IiM1NTYxOTUiLz48L3N2Zz4="}},"time_used":133,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":133,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCBORA.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.772Z","timestamp":1785126258772,"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 /crypto/XTVCBORA.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 04:24:18 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: \"bf3ed599b6ec6647a662fef110be7a6d\"\r\nlast-modified: Wed, 13 Mar 2024 06:25:20 GMT\r\nx-amz-id-2: MJRYGNMWCwGlRgtwOfLG5et8jf6T8iYk1Bws1JpFbw/SYba96I/Wd8j0OHm3Aegtlzh8jtYEigQ=\r\nx-amz-request-id: DF57FZGWBVX67Z91\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: bf3ed599b6ec6647a662fef110be7a6d\r\ncdn-proxyver: 1.58\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 07/26/2026 14:32:30\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: c241de5dccd0afb68e6495c28d4f4546\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":1225,"size_decoded":1412,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1225), with no line terminators","md5":"bf3ed599b6ec6647a662fef110be7a6d","sha1":"e109a3214f1f3cac32e024dba1fb9326f6e37f5d","sha256":"5b55b6efaead30b13b9848485db55fc72b387bca42760b5b6284f569e2f5ff1f","sha512":"c79378da5bb0d2d53dd3cfeb7c2d663ae6b8a758d1b0f26830576a87fef61a63d864f9182201617afe9fe9e0771721bf77f52a58d11fa8d33be691df96e8a3b0","ssdeep":"","tlshash":"de216af6e92da827e29bc2b9ecd890b7605d10fad489837591949f4e30285c71d4efb0","first_seen":"2026-03-29T04:40:27.856725Z","last_seen":"2026-07-27T05:33:43.44897Z","times_seen":12,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNNiA1LjQzdjcuNTFsMi0xLjI4VjRMNiA1LjQzWiIgZmlsbD0idXJsKCNhMnBvdGp4bWgpIi8+PHBhdGggZD0iTTguMzEgMTQgNiAxMi45NGwyLTEuMjggMyAxLjQyLTIuNjkuOTJaIiBmaWxsPSJ1cmwoI2IycG90anhtaCkiLz48cGF0aCBkPSJtMTEgMTAuMjQtMi42LTEuNSAyLjI4LTEuNDVMMTMgOC43OWwtMiAxLjQ1WiIgZmlsbD0idXJsKCNjMnBvdGp4bWgpIi8+PHBhdGggZD0ibTEzIDExLjY4LTIgMS40di0yLjg0bDItMS40NXYyLjlaIiBmaWxsPSJ1cmwoI2QycG90anhtaCkiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImEycG90anhtaCIgeDE9IjUuMzciIHkxPSI1LjQzIiB4Mj0iOC40NSIgeTI9IjExLjgxIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agb2Zmc2V0PSIuMjQiIHN0b3AtY29sb3I9IiM1RTQxRkIiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMwMEZCQkMiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCBpZD0iYjJwb3RqeG1oIiB4MT0iNy4zNiIgeTE9IjEyLjMzIiB4Mj0iOC42OSIgeTI9IjE0LjA5IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iIzI2OTJGRSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzA4RkFCRSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IGlkPSJjMnBvdGp4bWgiIHgxPSI5Ljk1IiB5MT0iNy44IiB4Mj0iMTEuNTQiIHkyPSI5LjM5IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iI0Y1MDhGNSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI0I3MDFGNiIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IGlkPSJkMnBvdGp4bWgiIHgxPSIxMS42MiIgeTE9IjkuNSIgeDI9IjEyLjEyIiB5Mj0iMTIuMjUiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9Ii4xNyIgc3RvcC1jb2xvcj0iI0Y1MDhGNSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI0I3MDFGNiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjwvc3ZnPg=="}},"time_used":136,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":136,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.html","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://besttrader.live/demo/index.html","date":"2026-07-27T04:24:16.846Z","timestamp":1785126256846,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.html HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/demo/index.html\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: text/html\r\nlast-modified: Sat, 07 Oct 2023 09:01:37 GMT\r\netag: W/\"65211e71-4d6\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":1238,"size_decoded":785,"mime_type":"text/html","magic":"HTML document, ASCII text, with CRLF, LF line terminators","md5":"0bde7d4b3da67537eaf9188e6f8049cf","sha1":"64300fc482d01d38b40ab20e15960b6509665e5a","sha256":"5dc1ae0b875dc0d78dbc5532226f5f31b762b4d1229984f605d27bf895ab6807","sha512":"2d4d27ab5b3dd2a701a944e9b5372b40ee4f8b3267f133be7ad0d4b42528302aaa002b6132722e2ad1fe629fc3e8baf1011c8dad326062e9c0946d6f1b6eafb4","ssdeep":"","tlshash":"8d21423ec1c1150a80271154fb81e2942619825192470fa1379e7167f6cc0f756937c8","first_seen":"2023-03-07T01:03:24Z","last_seen":"2026-07-27T07:05:43.244567Z","times_seen":41332,"resource_available":true,"data":"PCFET0NUWVBFIGh0bWw+CjxodG1sIHN0eWxlPSJoZWlnaHQ6MTAwJSI+CjxoZWFkPgo8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEsIHNocmluay10by1maXQ9bm8iIC8+Cjx0aXRsZT4gNDA0IE5vdCBGb3VuZA0KPC90aXRsZT48L2hlYWQ+Cjxib2R5IHN0eWxlPSJjb2xvcjogIzQ0NDsgbWFyZ2luOjA7Zm9udDogbm9ybWFsIDE0cHgvMjBweCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmOyBoZWlnaHQ6MTAwJTsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsiPgo8ZGl2IHN0eWxlPSJoZWlnaHQ6YXV0bzsgbWluLWhlaWdodDoxMDAlOyAiPiAgICAgPGRpdiBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyB3aWR0aDo4MDBweDsgbWFyZ2luLWxlZnQ6IC00MDBweDsgcG9zaXRpb246YWJzb2x1dGU7IHRvcDogMzAlOyBsZWZ0OjUwJTsiPgogICAgICAgIDxoMSBzdHlsZT0ibWFyZ2luOjA7IGZvbnQtc2l6ZToxNTBweDsgbGluZS1oZWlnaHQ6MTUwcHg7IGZvbnQtd2VpZ2h0OmJvbGQ7Ij40MDQ8L2gxPgo8aDIgc3R5bGU9Im1hcmdpbi10b3A6MjBweDtmb250LXNpemU6IDMwcHg7Ij5Ob3QgRm91bmQNCjwvaDI+CjxwPlRoZSByZXNvdXJjZSByZXF1ZXN0ZWQgY291bGQgbm90IGJlIGZvdW5kIG9uIHRoaXMgc2VydmVyITwvcD4KPC9kaXY+PC9kaXY+PGRpdiBzdHlsZT0iY29sb3I6I2YwZjBmMDsgZm9udC1zaXplOjEycHg7bWFyZ2luOmF1dG87cGFkZGluZzowcHggMzBweCAwcHggMzBweDtwb3NpdGlvbjpyZWxhdGl2ZTtjbGVhcjpib3RoO2hlaWdodDoxMDBweDttYXJnaW4tdG9wOi0xMDFweDtiYWNrZ3JvdW5kLWNvbG9yOiM0NzQ3NDc7Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwwLDAsMC4xNSk7Ym94LXNoYWRvdzogMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMykgaW5zZXQ7Ij4KPGJyPlByb3VkbHkgcG93ZXJlZCBieSAgPGEgc3R5bGU9ImNvbG9yOiNmZmY7IiBocmVmPSJodHRwOi8vd3d3LmxpdGVzcGVlZHRlY2guY29tL2Vycm9yLXBhZ2UiPkxpdGVTcGVlZCBXZWIgU2VydmVyPC9hPjxwPlBsZWFzZSBiZSBhZHZpc2VkIHRoYXQgTGl0ZVNwZWVkIFRlY2hub2xvZ2llcyBJbmMuIGlzIG5vdCBhIHdlYiBob3N0aW5nIGNvbXBhbnkgYW5kLCBhcyBzdWNoLCBoYXMgbm8gY29udHJvbCBvdmVyIGNvbnRlbnQgZm91bmQgb24gdGhpcyBzaXRlLjwvcD48L2Rpdj48L2JvZHk+PC9odG1sPgo="}},"time_used":275,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":275,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/css/jquery-ui.css","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.022Z","timestamp":1785126256022,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /css/jquery-ui.css HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: text/css\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: W/\"65211e70-8e01\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":36353,"size_decoded":8088,"mime_type":"text/css","magic":"ASCII text, with very long lines (2363)","md5":"9de728d18963bac17cceca0bb6a7b13a","sha1":"2c6e86578e53327b964a62526ac21d6681b71861","sha256":"c616080b791b117fd0f1070521806eede8b7d18142e43486456797eec42a36e7","sha512":"052046de45f36cd6d086f20fcc2002426c9c656a7434ef31aab8eb7e450e5f6f07958ffab85974a9af4ea75b50873c532df93ebbf8ab4a40511bd2c60a752919","ssdeep":"192:10OW02ANbMb6l2n+brGtUQnSMfps3+eYQY+h572hk//r8Y5Y6BjSmMErEURHltPj:xMb/+vaW1e07rPiF5fyRE3DS25qb","tlshash":"9df2fb316a432919ba1bd1a425a01bf7e32e1342ee1b6e7f64aa345cc3d55e0c0bf5b4","first_seen":"2023-05-01T20:32:00Z","last_seen":"2026-07-27T05:09:21.348599Z","times_seen":179,"resource_available":false,"data":"LyohIGpRdWVyeSBVSSAtIHYxLjEyLjEgLSAyMDE2LTA5LTE0CiogaHR0cDovL2pxdWVyeXVpLmNvbQoqIEluY2x1ZGVzOiBjb3JlLmNzcywgYWNjb3JkaW9uLmNzcywgYXV0b2NvbXBsZXRlLmNzcywgbWVudS5jc3MsIGJ1dHRvbi5jc3MsIGNvbnRyb2xncm91cC5jc3MsIGNoZWNrYm94cmFkaW8uY3NzLCBkYXRlcGlja2VyLmNzcywgZGlhbG9nLmNzcywgZHJhZ2dhYmxlLmNzcywgcmVzaXphYmxlLmNzcywgcHJvZ3Jlc3NiYXIuY3NzLCBzZWxlY3RhYmxlLmNzcywgc2VsZWN0bWVudS5jc3MsIHNsaWRlci5jc3MsIHNvcnRhYmxlLmNzcywgc3Bpbm5lci5jc3MsIHRhYnMuY3NzLCB0b29sdGlwLmNzcywgdGhlbWUuY3NzCiogVG8gdmlldyBhbmQgbW9kaWZ5IHRoaXMgdGhlbWUsIHZpc2l0IGh0dHA6Ly9qcXVlcnl1aS5jb20vdGhlbWVyb2xsZXIvP2ZmRGVmYXVsdD1BcmlhbCUyQ0hlbHZldGljYSUyQ3NhbnMtc2VyaWYmZnNEZWZhdWx0PTFlbSZmd0RlZmF1bHQ9bm9ybWFsJmNvcm5lclJhZGl1cz0zcHgmYmdDb2xvckhlYWRlcj1lOWU5ZTkmYmdUZXh0dXJlSGVhZGVyPWZsYXQmYm9yZGVyQ29sb3JIZWFkZXI9ZGRkZGRkJmZjSGVhZGVyPTMzMzMzMyZpY29uQ29sb3JIZWFkZXI9NDQ0NDQ0JmJnQ29sb3JDb250ZW50PWZmZmZmZiZiZ1RleHR1cmVDb250ZW50PWZsYXQmYm9yZGVyQ29sb3JDb250ZW50PWRkZGRkZCZmY0NvbnRlbnQ9MzMzMzMzJmljb25Db2xvckNvbnRlbnQ9NDQ0NDQ0JmJnQ29sb3JEZWZhdWx0PWY2ZjZmNiZiZ1RleHR1cmVEZWZhdWx0PWZsYXQmYm9yZGVyQ29sb3JEZWZhdWx0PWM1YzVjNSZmY0RlZmF1bHQ9NDU0NTQ1Jmljb25Db2xvckRlZmF1bHQ9Nzc3Nzc3JmJnQ29sb3JIb3Zlcj1lZGVkZWQmYmdUZXh0dXJlSG92ZXI9ZmxhdCZib3JkZXJDb2xvckhvdmVyPWNjY2NjYyZmY0hvdmVyPTJiMmIyYiZpY29uQ29sb3JIb3Zlcj01NTU1NTUmYmdDb2xvckFjdGl2ZT0wMDdmZmYmYmdUZXh0dXJlQWN0aXZlPWZsYXQmYm9yZGVyQ29sb3JBY3RpdmU9MDAzZWZmJmZjQWN0aXZlPWZmZmZmZiZpY29uQ29sb3JBY3RpdmU9ZmZmZmZmJmJnQ29sb3JIaWdobGlnaHQ9ZmZmYTkwJmJnVGV4dHVyZUhpZ2hsaWdodD1mbGF0JmJvcmRlckNvbG9ySGlnaGxpZ2h0PWRhZDU1ZSZmY0hpZ2hsaWdodD03Nzc2MjAmaWNvbkNvbG9ySGlnaGxpZ2h0PTc3NzYyMCZiZ0NvbG9yRXJyb3I9ZmRkZmRmJmJnVGV4dHVyZUVycm9yPWZsYXQmYm9yZGVyQ29sb3JFcnJvcj1mMWE4OTkmZmNFcnJvcj01ZjNmM2YmaWNvbkNvbG9yRXJyb3I9Y2MwMDAwJmJnQ29sb3JPdmVybGF5PWFhYWFhYSZiZ1RleHR1cmVPdmVybGF5PWZsYXQmYmdJbWdPcGFjaXR5T3ZlcmxheT0wJm9wYWNpdHlPdmVybGF5PTMwJmJnQ29sb3JTaGFkb3c9NjY2NjY2JmJnVGV4dHVyZVNoYWRvdz1mbGF0JmJnSW1nT3BhY2l0eVNoYWRvdz0wJm9wYWNpdHlTaGFkb3c9MzAmdGhpY2tuZXNzU2hhZG93PTVweCZvZmZzZXRUb3BTaGFkb3c9MHB4Jm9mZnNldExlZnRTaGFkb3c9MHB4JmNvcm5lclJhZGl1c1NoYWRvdz04cHgKKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yczsgTGljZW5zZWQgTUlUICovCgovKiBMYXlvdXQgaGVscGVycwotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KLnVpLWhlbHBlci1oaWRkZW4gewoJZGlzcGxheTogbm9uZTsKfQoudWktaGVscGVyLWhpZGRlbi1hY2Nlc3NpYmxlIHsKCWJvcmRlcjogMDsKCWNsaXA6IHJlY3QoMCAwIDAgMCk7CgloZWlnaHQ6IDFweDsKCW1hcmdpbjogLTFweDsKCW92ZXJmbG93OiBoaWRkZW47CglwYWRkaW5nOiAwOwoJcG9zaXRpb246IGFic29sdXRlOwoJd2lkdGg6IDFweDsKfQoudWktaGVscGVyLXJlc2V0IHsKCW1hcmdpbjogMDsKCXBhZGRpbmc6IDA7Cglib3JkZXI6IDA7CglvdXRsaW5lOiAwOwoJbGluZS1oZWlnaHQ6IDEuMzsKCXRleHQtZGVjb3JhdGlvbjogbm9uZTsKCWZvbnQtc2l6ZTogMTAwJTsKCWxpc3Qtc3R5bGU6IG5vbmU7Cn0KLnVpLWhlbHBlci1jbGVhcmZpeDpiZWZvcmUsCi51aS1oZWxwZXItY2xlYXJmaXg6YWZ0ZXIgewoJY29udGVudDogIiI7CglkaXNwbGF5OiB0YWJsZTsKCWJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7Cn0KLnVpLWhlbHBlci1jbGVhcmZpeDphZnRlciB7CgljbGVhcjogYm90aDsKfQoudWktaGVscGVyLXpmaXggewoJd2lkdGg6IDEwMCU7CgloZWlnaHQ6IDEwMCU7Cgl0b3A6IDA7CglsZWZ0OiAwOwoJcG9zaXRpb246IGFic29sdXRlOwoJb3BhY2l0eTogMDsKCWZpbHRlcjpBbHBoYShPcGFjaXR5PTApOyAvKiBzdXBwb3J0OiBJRTggKi8KfQoKLnVpLWZyb250IHsKCXotaW5kZXg6IDEwMDsKfQoKCi8qIEludGVyYWN0aW9uIEN1ZXMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi51aS1zdGF0ZS1kaXNhYmxlZCB7CgljdXJzb3I6IGRlZmF1bHQgIWltcG9ydGFudDsKCXBvaW50ZXItZXZlbnRzOiBub25lOwp9CgoKLyogSWNvbnMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi51aS1pY29uIHsKCWRpc3BsYXk6IGlubGluZS1ibG9jazsKCXZlcnRpY2FsLWFsaWduOiBtaWRkbGU7CgltYXJnaW4tdG9wOiAtLjI1ZW07Cglwb3NpdGlvbjogcmVsYXRpdmU7Cgl0ZXh0LWluZGVudDogLTk5OTk5cHg7CglvdmVyZmxvdzogaGlkZGVuOwoJYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsKfQoKLnVpLXdpZGdldC1pY29uLWJsb2NrIHsKCWxlZnQ6IDUwJTsKCW1hcmdpbi1sZWZ0OiAtOHB4OwoJZGlzcGxheTogYmxvY2s7Cn0KCi8qIE1pc2MgdmlzdWFscwotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCi8qIE92ZXJsYXlzICovCi51aS13aWRnZXQtb3ZlcmxheSB7Cglwb3NpdGlvbjogZml4ZWQ7Cgl0b3A6IDA7CglsZWZ0OiAwOwoJd2lkdGg6IDEwMCU7CgloZWlnaHQ6IDEwMCU7Cn0KLnVpLWFjY29yZGlvbiAudWktYWNjb3JkaW9uLWhlYWRlciB7CglkaXNwbGF5OiBibG9jazsKCWN1cnNvcjogcG9pbnRlcjsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKCW1hcmdpbjogMnB4IDAgMCAwOwoJcGFkZGluZzogLjVlbSAuNWVtIC41ZW0gLjdlbTsKCWZvbnQtc2l6ZTogMTAwJTsKfQoudWktYWNjb3JkaW9uIC51aS1hY2NvcmRpb24tY29udGVudCB7CglwYWRkaW5nOiAxZW0gMi4yZW07Cglib3JkZXItdG9wOiAwOwoJb3ZlcmZsb3c6IGF1dG87Cn0KLnVpLWF1dG9jb21wbGV0ZSB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgl0b3A6IDA7CglsZWZ0OiAwOwoJY3Vyc29yOiBkZWZhdWx0Owp9Ci51aS1tZW51IHsKCWxpc3Qtc3R5bGU6IG5vbmU7CglwYWRkaW5nOiAwOwoJbWFyZ2luOiAwOwoJZGlzcGxheTogYmxvY2s7CglvdXRsaW5lOiAwOwp9Ci51aS1tZW51IC51aS1tZW51IHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKfQoudWktbWVudSAudWktbWVudS1pdGVtIHsKCW1hcmdpbjogMDsKCWN1cnNvcjogcG9pbnRlcjsKCS8qIHN1cHBvcnQ6IElFMTAsIHNlZSAjODg0NCAqLwoJbGlzdC1zdHlsZS1pbWFnZTogdXJsKCJkYXRhOmltYWdlL2dpZjtiYXNlNjQsUjBsR09EbGhBUUFCQUlBQUFBQUFBUC8vL3lINUJBRUFBQUFBTEFBQUFBQUJBQUVBQUFJQlJBQTciKTsKfQoudWktbWVudSAudWktbWVudS1pdGVtLXdyYXBwZXIgewoJcG9zaXRpb246IHJlbGF0aXZlOwoJcGFkZGluZzogM3B4IDFlbSAzcHggLjRlbTsKfQoudWktbWVudSAudWktbWVudS1kaXZpZGVyIHsKCW1hcmdpbjogNXB4IDA7CgloZWlnaHQ6IDA7Cglmb250LXNpemU6IDA7CglsaW5lLWhlaWdodDogMDsKCWJvcmRlci13aWR0aDogMXB4IDAgMCAwOwp9Ci51aS1tZW51IC51aS1zdGF0ZS1mb2N1cywKLnVpLW1lbnUgLnVpLXN0YXRlLWFjdGl2ZSB7CgltYXJnaW46IC0xcHg7Cn0KCi8qIGljb24gc3VwcG9ydCAqLwoudWktbWVudS1pY29ucyB7Cglwb3NpdGlvbjogcmVsYXRpdmU7Cn0KLnVpLW1lbnUtaWNvbnMgLnVpLW1lbnUtaXRlbS13cmFwcGVyIHsKCXBhZGRpbmctbGVmdDogMmVtOwp9CgovKiBsZWZ0LWFsaWduZWQgKi8KLnVpLW1lbnUgLnVpLWljb24gewoJcG9zaXRpb246IGFic29sdXRlOwoJdG9wOiAwOwoJYm90dG9tOiAwOwoJbGVmdDogLjJlbTsKCW1hcmdpbjogYXV0byAwOwp9CgovKiByaWdodC1hbGlnbmVkICovCi51aS1tZW51IC51aS1tZW51LWljb24gewoJbGVmdDogYXV0bzsKCXJpZ2h0OiAwOwp9Ci51aS1idXR0b24gewoJcGFkZGluZzogLjRlbSAxZW07CglkaXNwbGF5OiBpbmxpbmUtYmxvY2s7Cglwb3NpdGlvbjogcmVsYXRpdmU7CglsaW5lLWhlaWdodDogbm9ybWFsOwoJbWFyZ2luLXJpZ2h0OiAuMWVtOwoJY3Vyc29yOiBwb2ludGVyOwoJdmVydGljYWwtYWxpZ246IG1pZGRsZTsKCXRleHQtYWxpZ246IGNlbnRlcjsKCS13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7CgktbW96LXVzZXItc2VsZWN0OiBub25lOwoJLW1zLXVzZXItc2VsZWN0OiBub25lOwoJdXNlci1zZWxlY3Q6IG5vbmU7CgoJLyogU3VwcG9ydDogSUUgPD0gMTEgKi8KCW92ZXJmbG93OiB2aXNpYmxlOwp9CgoudWktYnV0dG9uLAoudWktYnV0dG9uOmxpbmssCi51aS1idXR0b246dmlzaXRlZCwKLnVpLWJ1dHRvbjpob3ZlciwKLnVpLWJ1dHRvbjphY3RpdmUgewoJdGV4dC1kZWNvcmF0aW9uOiBub25lOwp9CgovKiB0byBtYWtlIHJvb20gZm9yIHRoZSBpY29uLCBhIHdpZHRoIG5lZWRzIHRvIGJlIHNldCBoZXJlICovCi51aS1idXR0b24taWNvbi1vbmx5IHsKCXdpZHRoOiAyZW07Cglib3gtc2l6aW5nOiBib3JkZXItYm94OwoJdGV4dC1pbmRlbnQ6IC05OTk5cHg7Cgl3aGl0ZS1zcGFjZTogbm93cmFwOwp9CgovKiBubyBpY29uIHN1cHBvcnQgZm9yIGlucHV0IGVsZW1lbnRzICovCmlucHV0LnVpLWJ1dHRvbi51aS1idXR0b24taWNvbi1vbmx5IHsKCXRleHQtaW5kZW50OiAwOwp9CgovKiBidXR0b24gaWNvbiBlbGVtZW50KHMpICovCi51aS1idXR0b24taWNvbi1vbmx5IC51aS1pY29uIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCXRvcDogNTAlOwoJbGVmdDogNTAlOwoJbWFyZ2luLXRvcDogLThweDsKCW1hcmdpbi1sZWZ0OiAtOHB4Owp9CgoudWktYnV0dG9uLnVpLWljb24tbm90ZXh0IC51aS1pY29uIHsKCXBhZGRpbmc6IDA7Cgl3aWR0aDogMi4xZW07CgloZWlnaHQ6IDIuMWVtOwoJdGV4dC1pbmRlbnQ6IC05OTk5cHg7Cgl3aGl0ZS1zcGFjZTogbm93cmFwOwoKfQoKaW5wdXQudWktYnV0dG9uLnVpLWljb24tbm90ZXh0IC51aS1pY29uIHsKCXdpZHRoOiBhdXRvOwoJaGVpZ2h0OiBhdXRvOwoJdGV4dC1pbmRlbnQ6IDA7Cgl3aGl0ZS1zcGFjZTogbm9ybWFsOwoJcGFkZGluZzogLjRlbSAxZW07Cn0KCi8qIHdvcmthcm91bmRzICovCi8qIFN1cHBvcnQ6IEZpcmVmb3ggNSAtIDQwICovCmlucHV0LnVpLWJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lciwKYnV0dG9uLnVpLWJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lciB7Cglib3JkZXI6IDA7CglwYWRkaW5nOiAwOwp9Ci51aS1jb250cm9sZ3JvdXAgewoJdmVydGljYWwtYWxpZ246IG1pZGRsZTsKCWRpc3BsYXk6IGlubGluZS1ibG9jazsKfQoudWktY29udHJvbGdyb3VwID4gLnVpLWNvbnRyb2xncm91cC1pdGVtIHsKCWZsb2F0OiBsZWZ0OwoJbWFyZ2luLWxlZnQ6IDA7CgltYXJnaW4tcmlnaHQ6IDA7Cn0KLnVpLWNvbnRyb2xncm91cCA+IC51aS1jb250cm9sZ3JvdXAtaXRlbTpmb2N1cywKLnVpLWNvbnRyb2xncm91cCA+IC51aS1jb250cm9sZ3JvdXAtaXRlbS51aS12aXN1YWwtZm9jdXMgewoJei1pbmRleDogOTk5OTsKfQoudWktY29udHJvbGdyb3VwLXZlcnRpY2FsID4gLnVpLWNvbnRyb2xncm91cC1pdGVtIHsKCWRpc3BsYXk6IGJsb2NrOwoJZmxvYXQ6IG5vbmU7Cgl3aWR0aDogMTAwJTsKCW1hcmdpbi10b3A6IDA7CgltYXJnaW4tYm90dG9tOiAwOwoJdGV4dC1hbGlnbjogbGVmdDsKfQoudWktY29udHJvbGdyb3VwLXZlcnRpY2FsIC51aS1jb250cm9sZ3JvdXAtaXRlbSB7Cglib3gtc2l6aW5nOiBib3JkZXItYm94Owp9Ci51aS1jb250cm9sZ3JvdXAgLnVpLWNvbnRyb2xncm91cC1sYWJlbCB7CglwYWRkaW5nOiAuNGVtIDFlbTsKfQoudWktY29udHJvbGdyb3VwIC51aS1jb250cm9sZ3JvdXAtbGFiZWwgc3BhbiB7Cglmb250LXNpemU6IDgwJTsKfQoudWktY29udHJvbGdyb3VwLWhvcml6b250YWwgLnVpLWNvbnRyb2xncm91cC1sYWJlbCArIC51aS1jb250cm9sZ3JvdXAtaXRlbSB7Cglib3JkZXItbGVmdDogbm9uZTsKfQoudWktY29udHJvbGdyb3VwLXZlcnRpY2FsIC51aS1jb250cm9sZ3JvdXAtbGFiZWwgKyAudWktY29udHJvbGdyb3VwLWl0ZW0gewoJYm9yZGVyLXRvcDogbm9uZTsKfQoudWktY29udHJvbGdyb3VwLWhvcml6b250YWwgLnVpLWNvbnRyb2xncm91cC1sYWJlbC51aS13aWRnZXQtY29udGVudCB7Cglib3JkZXItcmlnaHQ6IG5vbmU7Cn0KLnVpLWNvbnRyb2xncm91cC12ZXJ0aWNhbCAudWktY29udHJvbGdyb3VwLWxhYmVsLnVpLXdpZGdldC1jb250ZW50IHsKCWJvcmRlci1ib3R0b206IG5vbmU7Cn0KCi8qIFNwaW5uZXIgc3BlY2lmaWMgc3R5bGUgZml4ZXMgKi8KLnVpLWNvbnRyb2xncm91cC12ZXJ0aWNhbCAudWktc3Bpbm5lci1pbnB1dCB7CgoJLyogU3VwcG9ydDogSUU4IG9ubHksIEFuZHJvaWQgPCA0LjQgb25seSAqLwoJd2lkdGg6IDc1JTsKCXdpZHRoOiBjYWxjKCAxMDAlIC0gMi40ZW0gKTsKfQoudWktY29udHJvbGdyb3VwLXZlcnRpY2FsIC51aS1zcGlubmVyIC51aS1zcGlubmVyLXVwIHsKCWJvcmRlci10b3Atc3R5bGU6IHNvbGlkOwp9CgoudWktY2hlY2tib3hyYWRpby1sYWJlbCAudWktaWNvbi1iYWNrZ3JvdW5kIHsKCWJveC1zaGFkb3c6IGluc2V0IDFweCAxcHggMXB4ICNjY2M7Cglib3JkZXItcmFkaXVzOiAuMTJlbTsKCWJvcmRlcjogbm9uZTsKfQoudWktY2hlY2tib3hyYWRpby1yYWRpby1sYWJlbCAudWktaWNvbi1iYWNrZ3JvdW5kIHsKCXdpZHRoOiAxNnB4OwoJaGVpZ2h0OiAxNnB4OwoJYm9yZGVyLXJhZGl1czogMWVtOwoJb3ZlcmZsb3c6IHZpc2libGU7Cglib3JkZXI6IG5vbmU7Cn0KLnVpLWNoZWNrYm94cmFkaW8tcmFkaW8tbGFiZWwudWktY2hlY2tib3hyYWRpby1jaGVja2VkIC51aS1pY29uLAoudWktY2hlY2tib3hyYWRpby1yYWRpby1sYWJlbC51aS1jaGVja2JveHJhZGlvLWNoZWNrZWQ6aG92ZXIgLnVpLWljb24gewoJYmFja2dyb3VuZC1pbWFnZTogbm9uZTsKCXdpZHRoOiA4cHg7CgloZWlnaHQ6IDhweDsKCWJvcmRlci13aWR0aDogNHB4OwoJYm9yZGVyLXN0eWxlOiBzb2xpZDsKfQoudWktY2hlY2tib3hyYWRpby1kaXNhYmxlZCB7Cglwb2ludGVyLWV2ZW50czogbm9uZTsKfQoudWktZGF0ZXBpY2tlciB7Cgl3aWR0aDogMTdlbTsKCXBhZGRpbmc6IC4yZW0gLjJlbSAwOwoJZGlzcGxheTogbm9uZTsKfQoudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1oZWFkZXIgewoJcG9zaXRpb246IHJlbGF0aXZlOwoJcGFkZGluZzogLjJlbSAwOwp9Ci51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYsCi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQgewoJcG9zaXRpb246IGFic29sdXRlOwoJdG9wOiAycHg7Cgl3aWR0aDogMS44ZW07CgloZWlnaHQ6IDEuOGVtOwp9Ci51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYtaG92ZXIsCi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQtaG92ZXIgewoJdG9wOiAxcHg7Cn0KLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldiB7CglsZWZ0OiAycHg7Cn0KLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dCB7CglyaWdodDogMnB4Owp9Ci51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYtaG92ZXIgewoJbGVmdDogMXB4Owp9Ci51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQtaG92ZXIgewoJcmlnaHQ6IDFweDsKfQoudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1wcmV2IHNwYW4sCi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQgc3BhbiB7CglkaXNwbGF5OiBibG9jazsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWxlZnQ6IDUwJTsKCW1hcmdpbi1sZWZ0OiAtOHB4OwoJdG9wOiA1MCU7CgltYXJnaW4tdG9wOiAtOHB4Owp9Ci51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXRpdGxlIHsKCW1hcmdpbjogMCAyLjNlbTsKCWxpbmUtaGVpZ2h0OiAxLjhlbTsKCXRleHQtYWxpZ246IGNlbnRlcjsKfQoudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci10aXRsZSBzZWxlY3QgewoJZm9udC1zaXplOiAxZW07CgltYXJnaW46IDFweCAwOwp9Ci51aS1kYXRlcGlja2VyIHNlbGVjdC51aS1kYXRlcGlja2VyLW1vbnRoLAoudWktZGF0ZXBpY2tlciBzZWxlY3QudWktZGF0ZXBpY2tlci15ZWFyIHsKCXdpZHRoOiA0NSU7Cn0KLnVpLWRhdGVwaWNrZXIgdGFibGUgewoJd2lkdGg6IDEwMCU7Cglmb250LXNpemU6IC45ZW07Cglib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOwoJbWFyZ2luOiAwIDAgLjRlbTsKfQoudWktZGF0ZXBpY2tlciB0aCB7CglwYWRkaW5nOiAuN2VtIC4zZW07Cgl0ZXh0LWFsaWduOiBjZW50ZXI7Cglmb250LXdlaWdodDogYm9sZDsKCWJvcmRlcjogMDsKfQoudWktZGF0ZXBpY2tlciB0ZCB7Cglib3JkZXI6IDA7CglwYWRkaW5nOiAxcHg7Cn0KLnVpLWRhdGVwaWNrZXIgdGQgc3BhbiwKLnVpLWRhdGVwaWNrZXIgdGQgYSB7CglkaXNwbGF5OiBibG9jazsKCXBhZGRpbmc6IC4yZW07Cgl0ZXh0LWFsaWduOiByaWdodDsKCXRleHQtZGVjb3JhdGlvbjogbm9uZTsKfQoudWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIHsKCWJhY2tncm91bmQtaW1hZ2U6IG5vbmU7CgltYXJnaW46IC43ZW0gMCAwIDA7CglwYWRkaW5nOiAwIC4yZW07Cglib3JkZXItbGVmdDogMDsKCWJvcmRlci1yaWdodDogMDsKCWJvcmRlci1ib3R0b206IDA7Cn0KLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSBidXR0b24gewoJZmxvYXQ6IHJpZ2h0OwoJbWFyZ2luOiAuNWVtIC4yZW0gLjRlbTsKCWN1cnNvcjogcG9pbnRlcjsKCXBhZGRpbmc6IC4yZW0gLjZlbSAuM2VtIC42ZW07Cgl3aWR0aDogYXV0bzsKCW92ZXJmbG93OiB2aXNpYmxlOwp9Ci51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUgYnV0dG9uLnVpLWRhdGVwaWNrZXItY3VycmVudCB7CglmbG9hdDogbGVmdDsKfQoKLyogd2l0aCBtdWx0aXBsZSBjYWxlbmRhcnMgKi8KLnVpLWRhdGVwaWNrZXIudWktZGF0ZXBpY2tlci1tdWx0aSB7Cgl3aWR0aDogYXV0bzsKfQoudWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1ncm91cCB7CglmbG9hdDogbGVmdDsKfQoudWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1ncm91cCB0YWJsZSB7Cgl3aWR0aDogOTUlOwoJbWFyZ2luOiAwIGF1dG8gLjRlbTsKfQoudWktZGF0ZXBpY2tlci1tdWx0aS0yIC51aS1kYXRlcGlja2VyLWdyb3VwIHsKCXdpZHRoOiA1MCU7Cn0KLnVpLWRhdGVwaWNrZXItbXVsdGktMyAudWktZGF0ZXBpY2tlci1ncm91cCB7Cgl3aWR0aDogMzMuMyU7Cn0KLnVpLWRhdGVwaWNrZXItbXVsdGktNCAudWktZGF0ZXBpY2tlci1ncm91cCB7Cgl3aWR0aDogMjUlOwp9Ci51aS1kYXRlcGlja2VyLW11bHRpIC51aS1kYXRlcGlja2VyLWdyb3VwLWxhc3QgLnVpLWRhdGVwaWNrZXItaGVhZGVyLAoudWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1ncm91cC1taWRkbGUgLnVpLWRhdGVwaWNrZXItaGVhZGVyIHsKCWJvcmRlci1sZWZ0LXdpZHRoOiAwOwp9Ci51aS1kYXRlcGlja2VyLW11bHRpIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUgewoJY2xlYXI6IGxlZnQ7Cn0KLnVpLWRhdGVwaWNrZXItcm93LWJyZWFrIHsKCWNsZWFyOiBib3RoOwoJd2lkdGg6IDEwMCU7Cglmb250LXNpemU6IDA7Cn0KCi8qIFJUTCBzdXBwb3J0ICovCi51aS1kYXRlcGlja2VyLXJ0bCB7CglkaXJlY3Rpb246IHJ0bDsKfQoudWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItcHJldiB7CglyaWdodDogMnB4OwoJbGVmdDogYXV0bzsKfQoudWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItbmV4dCB7CglsZWZ0OiAycHg7CglyaWdodDogYXV0bzsKfQoudWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItcHJldjpob3ZlciB7CglyaWdodDogMXB4OwoJbGVmdDogYXV0bzsKfQoudWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItbmV4dDpob3ZlciB7CglsZWZ0OiAxcHg7CglyaWdodDogYXV0bzsKfQoudWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSB7CgljbGVhcjogcmlnaHQ7Cn0KLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUgYnV0dG9uIHsKCWZsb2F0OiBsZWZ0Owp9Ci51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIGJ1dHRvbi51aS1kYXRlcGlja2VyLWN1cnJlbnQsCi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1ncm91cCB7CglmbG9hdDogcmlnaHQ7Cn0KLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLWdyb3VwLWxhc3QgLnVpLWRhdGVwaWNrZXItaGVhZGVyLAoudWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItZ3JvdXAtbWlkZGxlIC51aS1kYXRlcGlja2VyLWhlYWRlciB7Cglib3JkZXItcmlnaHQtd2lkdGg6IDA7Cglib3JkZXItbGVmdC13aWR0aDogMXB4Owp9CgovKiBJY29ucyAqLwoudWktZGF0ZXBpY2tlciAudWktaWNvbiB7CglkaXNwbGF5OiBibG9jazsKCXRleHQtaW5kZW50OiAtOTk5OTlweDsKCW92ZXJmbG93OiBoaWRkZW47CgliYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OwoJbGVmdDogLjVlbTsKCXRvcDogLjNlbTsKfQoudWktZGlhbG9nIHsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCXRvcDogMDsKCWxlZnQ6IDA7CglwYWRkaW5nOiAuMmVtOwoJb3V0bGluZTogMDsKfQoudWktZGlhbG9nIC51aS1kaWFsb2ctdGl0bGViYXIgewoJcGFkZGluZzogLjRlbSAxZW07Cglwb3NpdGlvbjogcmVsYXRpdmU7Cn0KLnVpLWRpYWxvZyAudWktZGlhbG9nLXRpdGxlIHsKCWZsb2F0OiBsZWZ0OwoJbWFyZ2luOiAuMWVtIDA7Cgl3aGl0ZS1zcGFjZTogbm93cmFwOwoJd2lkdGg6IDkwJTsKCW92ZXJmbG93OiBoaWRkZW47Cgl0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKfQoudWktZGlhbG9nIC51aS1kaWFsb2ctdGl0bGViYXItY2xvc2UgewoJcG9zaXRpb246IGFic29sdXRlOwoJcmlnaHQ6IC4zZW07Cgl0b3A6IDUwJTsKCXdpZHRoOiAyMHB4OwoJbWFyZ2luOiAtMTBweCAwIDAgMDsKCXBhZGRpbmc6IDFweDsKCWhlaWdodDogMjBweDsKfQoudWktZGlhbG9nIC51aS1kaWFsb2ctY29udGVudCB7Cglwb3NpdGlvbjogcmVsYXRpdmU7Cglib3JkZXI6IDA7CglwYWRkaW5nOiAuNWVtIDFlbTsKCWJhY2tncm91bmQ6IG5vbmU7CglvdmVyZmxvdzogYXV0bzsKfQoudWktZGlhbG9nIC51aS1kaWFsb2ctYnV0dG9ucGFuZSB7Cgl0ZXh0LWFsaWduOiBsZWZ0OwoJYm9yZGVyLXdpZHRoOiAxcHggMCAwIDA7CgliYWNrZ3JvdW5kLWltYWdlOiBub25lOwoJbWFyZ2luLXRvcDogLjVlbTsKCXBhZGRpbmc6IC4zZW0gMWVtIC41ZW0gLjRlbTsKfQoudWktZGlhbG9nIC51aS1kaWFsb2ctYnV0dG9ucGFuZSAudWktZGlhbG9nLWJ1dHRvbnNldCB7CglmbG9hdDogcmlnaHQ7Cn0KLnVpLWRpYWxvZyAudWktZGlhbG9nLWJ1dHRvbnBhbmUgYnV0dG9uIHsKCW1hcmdpbjogLjVlbSAuNGVtIC41ZW0gMDsKCWN1cnNvcjogcG9pbnRlcjsKfQoudWktZGlhbG9nIC51aS1yZXNpemFibGUtbiB7CgloZWlnaHQ6IDJweDsKCXRvcDogMDsKfQoudWktZGlhbG9nIC51aS1yZXNpemFibGUtZSB7Cgl3aWR0aDogMnB4OwoJcmlnaHQ6IDA7Cn0KLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLXMgewoJaGVpZ2h0OiAycHg7Cglib3R0b206IDA7Cn0KLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLXcgewoJd2lkdGg6IDJweDsKCWxlZnQ6IDA7Cn0KLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLXNlLAoudWktZGlhbG9nIC51aS1yZXNpemFibGUtc3csCi51aS1kaWFsb2cgLnVpLXJlc2l6YWJsZS1uZSwKLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLW53IHsKCXdpZHRoOiA3cHg7CgloZWlnaHQ6IDdweDsKfQoudWktZGlhbG9nIC51aS1yZXNpemFibGUtc2UgewoJcmlnaHQ6IDA7Cglib3R0b206IDA7Cn0KLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLXN3IHsKCWxlZnQ6IDA7Cglib3R0b206IDA7Cn0KLnVpLWRpYWxvZyAudWktcmVzaXphYmxlLW5lIHsKCXJpZ2h0OiAwOwoJdG9wOiAwOwp9Ci51aS1kaWFsb2cgLnVpLXJlc2l6YWJsZS1udyB7CglsZWZ0OiAwOwoJdG9wOiAwOwp9Ci51aS1kcmFnZ2FibGUgLnVpLWRpYWxvZy10aXRsZWJhciB7CgljdXJzb3I6IG1vdmU7Cn0KLnVpLWRyYWdnYWJsZS1oYW5kbGUgewoJLW1zLXRvdWNoLWFjdGlvbjogbm9uZTsKCXRvdWNoLWFjdGlvbjogbm9uZTsKfQoudWktcmVzaXphYmxlIHsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKfQoudWktcmVzaXphYmxlLWhhbmRsZSB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cglmb250LXNpemU6IDAuMXB4OwoJZGlzcGxheTogYmxvY2s7CgktbXMtdG91Y2gtYWN0aW9uOiBub25lOwoJdG91Y2gtYWN0aW9uOiBub25lOwp9Ci51aS1yZXNpemFibGUtZGlzYWJsZWQgLnVpLXJlc2l6YWJsZS1oYW5kbGUsCi51aS1yZXNpemFibGUtYXV0b2hpZGUgLnVpLXJlc2l6YWJsZS1oYW5kbGUgewoJZGlzcGxheTogbm9uZTsKfQoudWktcmVzaXphYmxlLW4gewoJY3Vyc29yOiBuLXJlc2l6ZTsKCWhlaWdodDogN3B4OwoJd2lkdGg6IDEwMCU7Cgl0b3A6IC01cHg7CglsZWZ0OiAwOwp9Ci51aS1yZXNpemFibGUtcyB7CgljdXJzb3I6IHMtcmVzaXplOwoJaGVpZ2h0OiA3cHg7Cgl3aWR0aDogMTAwJTsKCWJvdHRvbTogLTVweDsKCWxlZnQ6IDA7Cn0KLnVpLXJlc2l6YWJsZS1lIHsKCWN1cnNvcjogZS1yZXNpemU7Cgl3aWR0aDogN3B4OwoJcmlnaHQ6IC01cHg7Cgl0b3A6IDA7CgloZWlnaHQ6IDEwMCU7Cn0KLnVpLXJlc2l6YWJsZS13IHsKCWN1cnNvcjogdy1yZXNpemU7Cgl3aWR0aDogN3B4OwoJbGVmdDogLTVweDsKCXRvcDogMDsKCWhlaWdodDogMTAwJTsKfQoudWktcmVzaXphYmxlLXNlIHsKCWN1cnNvcjogc2UtcmVzaXplOwoJd2lkdGg6IDEycHg7CgloZWlnaHQ6IDEycHg7CglyaWdodDogMXB4OwoJYm90dG9tOiAxcHg7Cn0KLnVpLXJlc2l6YWJsZS1zdyB7CgljdXJzb3I6IHN3LXJlc2l6ZTsKCXdpZHRoOiA5cHg7CgloZWlnaHQ6IDlweDsKCWxlZnQ6IC01cHg7Cglib3R0b206IC01cHg7Cn0KLnVpLXJlc2l6YWJsZS1udyB7CgljdXJzb3I6IG53LXJlc2l6ZTsKCXdpZHRoOiA5cHg7CgloZWlnaHQ6IDlweDsKCWxlZnQ6IC01cHg7Cgl0b3A6IC01cHg7Cn0KLnVpLXJlc2l6YWJsZS1uZSB7CgljdXJzb3I6IG5lLXJlc2l6ZTsKCXdpZHRoOiA5cHg7CgloZWlnaHQ6IDlweDsKCXJpZ2h0OiAtNXB4OwoJdG9wOiAtNXB4Owp9Ci51aS1wcm9ncmVzc2JhciB7CgloZWlnaHQ6IDJlbTsKCXRleHQtYWxpZ246IGxlZnQ7CglvdmVyZmxvdzogaGlkZGVuOwp9Ci51aS1wcm9ncmVzc2JhciAudWktcHJvZ3Jlc3NiYXItdmFsdWUgewoJbWFyZ2luOiAtMXB4OwoJaGVpZ2h0OiAxMDAlOwp9Ci51aS1wcm9ncmVzc2JhciAudWktcHJvZ3Jlc3NiYXItb3ZlcmxheSB7CgliYWNrZ3JvdW5kOiB1cmwoImRhdGE6aW1hZ2UvZ2lmO2Jhc2U2NCxSMGxHT0RsaEtBQW9BSUFCQUFBQUFQLy8veUgvQzA1RlZGTkRRVkJGTWk0d0F3RUFBQUFoK1FRSkFRQUJBQ3dBQUFBQUtBQW9BQUFDa1l3TnFYcmRDNTJEUzA2YTdNRlpJKzRGSEJDS29EZVdLWHF5bVBxR3F4dkpyWFpiTXg3VHRjK3c5WGdVMkZCM2xPeVFSV0VUMklGR2lVOW0xZnJEVnB4WlpjNmJmSHd2NGMxWVhQNmsxVmR5MjkyRmI2VWt1dkZ0WHB2V1N6QStIeWNYSkhVWGlHWUlpTWcyUjZXNDU5Z25XR2ZITmRqSXFEV1ZxZW1IMmVrcE9ia3BPbHBwV1VxWmlxcjZlZHFxV1FBQUlma0VDUUVBQVFBc0FBQUFBQ2dBS0FBQUFwU01nWm5HZmFxY2cxRTJ1dXpEbW1IVUJSOFFpbDk1aGlQS3FXbjNhcXRMc1MxOHk3RzFTek5lb3dXQkVOdFFkK1QxSmt0UDA1bnpQVGRKWmxSNnZVeE5XV2pWK3ZVV2hXTmtXRnd4bDlWcFpSZWRZY2ZsSU9MYWZhYTI4WGRzSC95bmxjYzF1UFZEWnhRSVIwSzI1K2NJQ0Ntb3FDZTVtR2haT2ZlWVNVaDV5SmNKeXJrWldXcGFSOGRvSjJvNE5ZcTYybEFBQUNINUJBa0JBQUVBTEFBQUFBQW9BQ2dBQUFLVkRJNFl5MjJabklOUk5xb3N3MEJ2N2kxZ3lIVWtGajdvU2FXbHUzb3ZDOEd4TnNvNWZsdXozcUxWaEJWZVQvTHo3WlRIeXhMNWREYWxRV1BWT3NRV3RSbnV3WGFGVGo5alZWaDhwbWE5SmpaNHpZU2o1Wk95bWE3dXVvbGZmaCtJUjVhVzk3Y0h1QlVYS0dLWGxLam4rRGlIV01jWUphaDROMGxZQ01sSk9YaXBHUnI1cWRnb1NUcnFXU3E2V0ZsMnlwb2FVQUFBSWZrRUNRRUFBUUFzQUFBQUFDZ0FLQUFBQXBhRWI2SExnZC9pTzdGTld0Y0ZXZSt1Zk9ER2pSZm9pSjJha1NoYnVlYjB3dEk1MHptMDJwYnZ3ZldFTVdCUTF6S0dsTEloc2tpRVBtOVI2dlJYeFY0WnpXVDJ5SE9HcFdNeW9yYmxLbE5wOEhtSEViL2xDWGpjVzdibXRYUDhYdDIyOU9WV1IxZm9kMmVXcU5mSHVNalhDUGtJR05pbGVPaUltVm1DT0Vtb1NmbjN5WGxKV21vSEdocXA2aWxZdVdZcG1UcUtVZ0FBSWZrRUNRRUFBUUFzQUFBQUFDZ0FLQUFBQXBpRUg2a2I1OGJpUTNGTld0TUZXVzNlTlZjb2p1RkdmcW5acVNlYnVTMDZ3NVY4MC9YMDJwS2U4ekZ3UDZFRldPVDFsREZrOHJHRVJoMVRUTk9vY1E2MUhtNFhtMlZleFVIcHpqeW1WaUhyRmJpRUxzZWZWcm42WEtmbnQyUTlHLytYZGllNDk5WEhkMmc0aDdpb09HaFhHSmJvR0FuWFNCbm9Cd0tZeWZpb3ViWkoySG4wUnVSWmFmbFpPaWw1NlpwNmlpb0tTWHBVQUFBaCtRUUpBUUFCQUN3QUFBQUFLQUFvQUFBQ2tvUVJxUnZueHVJN2tVMWExVVU1YmQ1dG5TZU9aWGhtbjVsV0szcU5UV3ZSZFF4UDhxdmFDKy95YVlRelhPN0JNdmFVRW1KUmQzVHNpTUFnc3dtTllyU2daZFlyVFg2dFNIR1pPNzNlenVBdzJ1eHVRK0JiZVpmTXhzZXhZMzUrL1FlNEoxaW5WMGc0eDNXSHVNaElsMmpYT0tUMlErVlU1ZmdvU1VJNTJWZlp5ZmtKR2toYTZqbVkrYWFZZGlycStsUUFBQ0g1QkFrQkFBRUFMQUFBQUFBb0FDZ0FBQUtXQklLcFllMEwzWU5LVG9xc3dVbHZ6bmlnZDR3aVI0S2hackt0OVVwcWlwNjFpOUUzdk12eFJkSGxiRUZpRVhmazlZQVJZeE9aWkQ2VlEycFV1bkJtdFJYbzFMZjhoTVZWY05sOEphZlYzOGFNMi9GdTVWMTZCbjYzcjZ4dDk3ajA5K01YU0ZpNEJuaUdGYWUzaHpiSDkraFlCemtwdVVoNWFabUh1YW5aT1pnSXV2YkdpTmVvbUNuYXh4YXAydXBhQ1pzcSsxa0FBQ0g1QkFrQkFBRUFMQUFBQUFBb0FDZ0FBQUtYakk4Qnk1emY0a094VFZyWE5WbHYxWDBkOElHWkdLTG5OcFl0bThMcjljcVZldU9TdmZPVzc5RDlhREhpek5oREppZEZaaE55ZEVhaE9hREg2bm9tdEpqcDF0dXRLb05Xa3ZBNkpxZlJWTEhVL1FVZmF1OWwyeDdHNTRkMWZsOTk1eGNJR0FkWHFNZkJOYWRvWXJoSCtNZzJLQmxwVnBibHVDaVhtTW5aMlNoNEdCcUorY2tJT3FxSjZMbUtTbGxabXNvcTZ3cFFBQUFoK1FRSkFRQUJBQ3dBQUFBQUtBQW9BQUFDbFl4L29Mdm94dUpEa1UxYTFZVVpiSjU5blNkMlpYaFdxYlJhMi9nRjhHdTJEWTNpcXM3eXJxK3hCWUVrWXZGU004YVNTT2JFK1pnUmwxQkhGWk5yN3BSQ2F2WjVCVzIxNDJoWTNBTi96V3RzbWYxMnA5WHh4RmwybHBMbjFyc2V6dGZYWmpkSVdJZjJzNWRJdHdqWUtCZ285eWc1cEhnekpYVEVlR2xadWVucHlQbXBHUW9LT1drWW1TcGFTbnFLaWxlSTJGQUFBQ0g1QkFrQkFBRUFMQUFBQUFBb0FDZ0FBQUtWakIrZ3Urakc0a09SVFZyVmhSbHNubjJkSjNabGVGYXB0RnJiK0NYbU85T296ZUw1VmZQOTlIdkFXaHBpVWRjd2twQkgzODI1QXdZZFU4eFRxbExHaHRDb3NBcktNcHZmYTFtTVJhZTlWdldaZmVCMlhmUGtlTG1tMThsVWNCaitwNWRuTjhqWFozWUlHRWhZdU9VbjQ1YW9DRGtwMTZobDVJallKdmpXS2Nub0dRcHF5UGxwT2hyM2FFbGFxcnE1NkJxN1ZBQUFPdz09Iik7CgloZWlnaHQ6IDEwMCU7CglmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MjUpOyAvKiBzdXBwb3J0OiBJRTggKi8KCW9wYWNpdHk6IDAuMjU7Cn0KLnVpLXByb2dyZXNzYmFyLWluZGV0ZXJtaW5hdGUgLnVpLXByb2dyZXNzYmFyLXZhbHVlIHsKCWJhY2tncm91bmQtaW1hZ2U6IG5vbmU7Cn0KLnVpLXNlbGVjdGFibGUgewoJLW1zLXRvdWNoLWFjdGlvbjogbm9uZTsKCXRvdWNoLWFjdGlvbjogbm9uZTsKfQoudWktc2VsZWN0YWJsZS1oZWxwZXIgewoJcG9zaXRpb246IGFic29sdXRlOwoJei1pbmRleDogMTAwOwoJYm9yZGVyOiAxcHggZG90dGVkIGJsYWNrOwp9Ci51aS1zZWxlY3RtZW51LW1lbnUgewoJcGFkZGluZzogMDsKCW1hcmdpbjogMDsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCXRvcDogMDsKCWxlZnQ6IDA7CglkaXNwbGF5OiBub25lOwp9Ci51aS1zZWxlY3RtZW51LW1lbnUgLnVpLW1lbnUgewoJb3ZlcmZsb3c6IGF1dG87CglvdmVyZmxvdy14OiBoaWRkZW47CglwYWRkaW5nLWJvdHRvbTogMXB4Owp9Ci51aS1zZWxlY3RtZW51LW1lbnUgLnVpLW1lbnUgLnVpLXNlbGVjdG1lbnUtb3B0Z3JvdXAgewoJZm9udC1zaXplOiAxZW07Cglmb250LXdlaWdodDogYm9sZDsKCWxpbmUtaGVpZ2h0OiAxLjU7CglwYWRkaW5nOiAycHggMC40ZW07CgltYXJnaW46IDAuNWVtIDAgMCAwOwoJaGVpZ2h0OiBhdXRvOwoJYm9yZGVyOiAwOwp9Ci51aS1zZWxlY3RtZW51LW9wZW4gewoJZGlzcGxheTogYmxvY2s7Cn0KLnVpLXNlbGVjdG1lbnUtdGV4dCB7CglkaXNwbGF5OiBibG9jazsKCW1hcmdpbi1yaWdodDogMjBweDsKCW92ZXJmbG93OiBoaWRkZW47Cgl0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKfQoudWktc2VsZWN0bWVudS1idXR0b24udWktYnV0dG9uIHsKCXRleHQtYWxpZ246IGxlZnQ7Cgl3aGl0ZS1zcGFjZTogbm93cmFwOwoJd2lkdGg6IDE0ZW07Cn0KLnVpLXNlbGVjdG1lbnUtaWNvbi51aS1pY29uIHsKCWZsb2F0OiByaWdodDsKCW1hcmdpbi10b3A6IDA7Cn0KLnVpLXNsaWRlciB7Cglwb3NpdGlvbjogcmVsYXRpdmU7Cgl0ZXh0LWFsaWduOiBsZWZ0Owp9Ci51aS1zbGlkZXIgLnVpLXNsaWRlci1oYW5kbGUgewoJcG9zaXRpb246IGFic29sdXRlOwoJei1pbmRleDogMjsKCXdpZHRoOiAxLjJlbTsKCWhlaWdodDogMS4yZW07CgljdXJzb3I6IGRlZmF1bHQ7CgktbXMtdG91Y2gtYWN0aW9uOiBub25lOwoJdG91Y2gtYWN0aW9uOiBub25lOwp9Ci51aS1zbGlkZXIgLnVpLXNsaWRlci1yYW5nZSB7Cglwb3NpdGlvbjogYWJzb2x1dGU7Cgl6LWluZGV4OiAxOwoJZm9udC1zaXplOiAuN2VtOwoJZGlzcGxheTogYmxvY2s7Cglib3JkZXI6IDA7CgliYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7Cn0KCi8qIHN1cHBvcnQ6IElFOCAtIFNlZSAjNjcyNyAqLwoudWktc2xpZGVyLnVpLXN0YXRlLWRpc2FibGVkIC51aS1zbGlkZXItaGFuZGxlLAoudWktc2xpZGVyLnVpLXN0YXRlLWRpc2FibGVkIC51aS1zbGlkZXItcmFuZ2UgewoJZmlsdGVyOiBpbmhlcml0Owp9CgoudWktc2xpZGVyLWhvcml6b250YWwgewoJaGVpZ2h0OiAuOGVtOwp9Ci51aS1zbGlkZXItaG9yaXpvbnRhbCAudWktc2xpZGVyLWhhbmRsZSB7Cgl0b3A6IC0uM2VtOwoJbWFyZ2luLWxlZnQ6IC0uNmVtOwp9Ci51aS1zbGlkZXItaG9yaXpvbnRhbCAudWktc2xpZGVyLXJhbmdlIHsKCXRvcDogMDsKCWhlaWdodDogMTAwJTsKfQoudWktc2xpZGVyLWhvcml6b250YWwgLnVpLXNsaWRlci1yYW5nZS1taW4gewoJbGVmdDogMDsKfQoudWktc2xpZGVyLWhvcml6b250YWwgLnVpLXNsaWRlci1yYW5nZS1tYXggewoJcmlnaHQ6IDA7Cn0KCi51aS1zbGlkZXItdmVydGljYWwgewoJd2lkdGg6IC44ZW07CgloZWlnaHQ6IDEwMHB4Owp9Ci51aS1zbGlkZXItdmVydGljYWwgLnVpLXNsaWRlci1oYW5kbGUgewoJbGVmdDogLS4zZW07CgltYXJnaW4tbGVmdDogMDsKCW1hcmdpbi1ib3R0b206IC0uNmVtOwp9Ci51aS1zbGlkZXItdmVydGljYWwgLnVpLXNsaWRlci1yYW5nZSB7CglsZWZ0OiAwOwoJd2lkdGg6IDEwMCU7Cn0KLnVpLXNsaWRlci12ZXJ0aWNhbCAudWktc2xpZGVyLXJhbmdlLW1pbiB7Cglib3R0b206IDA7Cn0KLnVpLXNsaWRlci12ZXJ0aWNhbCAudWktc2xpZGVyLXJhbmdlLW1heCB7Cgl0b3A6IDA7Cn0KLnVpLXNvcnRhYmxlLWhhbmRsZSB7CgktbXMtdG91Y2gtYWN0aW9uOiBub25lOwoJdG91Y2gtYWN0aW9uOiBub25lOwp9Ci51aS1zcGlubmVyIHsKCXBvc2l0aW9uOiByZWxhdGl2ZTsKCWRpc3BsYXk6IGlubGluZS1ibG9jazsKCW92ZXJmbG93OiBoaWRkZW47CglwYWRkaW5nOiAwOwoJdmVydGljYWwtYWxpZ246IG1pZGRsZTsKfQoudWktc3Bpbm5lci1pbnB1dCB7Cglib3JkZXI6IG5vbmU7CgliYWNrZ3JvdW5kOiBub25lOwoJY29sb3I6IGluaGVyaXQ7CglwYWRkaW5nOiAuMjIyZW0gMDsKCW1hcmdpbjogLjJlbSAwOwoJdmVydGljYWwtYWxpZ246IG1pZGRsZTsKCW1hcmdpbi1sZWZ0OiAuNGVtOwoJbWFyZ2luLXJpZ2h0OiAyZW07Cn0KLnVpLXNwaW5uZXItYnV0dG9uIHsKCXdpZHRoOiAxLjZlbTsKCWhlaWdodDogNTAlOwoJZm9udC1zaXplOiAuNWVtOwoJcGFkZGluZzogMDsKCW1hcmdpbjogMDsKCXRleHQtYWxpZ246IGNlbnRlcjsKCXBvc2l0aW9uOiBhYnNvbHV0ZTsKCWN1cnNvcjogZGVmYXVsdDsKCWRpc3BsYXk6IGJsb2NrOwoJb3ZlcmZsb3c6IGhpZGRlbjsKCXJpZ2h0OiAwOwp9Ci8qIG1vcmUgc3BlY2lmaWNpdHkgcmVxdWlyZWQgaGVyZSB0byBvdmVycmlkZSBkZWZhdWx0IGJvcmRlcnMgKi8KLnVpLXNwaW5uZXIgYS51aS1zcGlubmVyLWJ1dHRvbiB7Cglib3JkZXItdG9wLXN0eWxlOiBub25lOwoJYm9yZGVyLWJvdHRvbS1zdHlsZTogbm9uZTsKCWJvcmRlci1yaWdodC1zdHlsZTogbm9uZTsKfQoudWktc3Bpbm5lci11cCB7Cgl0b3A6IDA7Cn0KLnVpLXNwaW5uZXItZG93biB7Cglib3R0b206IDA7Cn0KLnVpLXRhYnMgewoJcG9zaXRpb246IHJlbGF0aXZlOy8qIHBvc2l0aW9uOiByZWxhdGl2ZSBwcmV2ZW50cyBJRSBzY3JvbGwgYnVnIChlbGVtZW50IHdpdGggcG9zaXRpb246IHJlbGF0aXZlIGluc2lkZSBjb250YWluZXIgd2l0aCBvdmVyZmxvdzogYXV0byBhcHBlYXIgYXMgImZpeGVkIikgKi8KCXBhZGRpbmc6IC4yZW07Cn0KLnVpLXRhYnMgLnVpLXRhYnMtbmF2IHsKCW1hcmdpbjogMDsKCXBhZGRpbmc6IC4yZW0gLjJlbSAwOwp9Ci51aS10YWJzIC51aS10YWJzLW5hdiBsaSB7CglsaXN0LXN0eWxlOiBub25lOwoJZmxvYXQ6IGxlZnQ7Cglwb3NpdGlvbjogcmVsYXRpdmU7Cgl0b3A6IDA7CgltYXJnaW46IDFweCAuMmVtIDAgMDsKCWJvcmRlci1ib3R0b20td2lkdGg6IDA7CglwYWRkaW5nOiAwOwoJd2hpdGUtc3BhY2U6IG5vd3JhcDsKfQoudWktdGFicyAudWktdGFicy1uYXYgLnVpLXRhYnMtYW5jaG9yIHsKCWZsb2F0OiBsZWZ0OwoJcGFkZGluZzogLjVlbSAxZW07Cgl0ZXh0LWRlY29yYXRpb246IG5vbmU7Cn0KLnVpLXRhYnMgLnVpLXRhYnMtbmF2IGxpLnVpLXRhYnMtYWN0aXZlIHsKCW1hcmdpbi1ib3R0b206IC0xcHg7CglwYWRkaW5nLWJvdHRvbTogMXB4Owp9Ci51aS10YWJzIC51aS10YWJzLW5hdiBsaS51aS10YWJzLWFjdGl2ZSAudWktdGFicy1hbmNob3IsCi51aS10YWJzIC51aS10YWJzLW5hdiBsaS51aS1zdGF0ZS1kaXNhYmxlZCAudWktdGFicy1hbmNob3IsCi51aS10YWJzIC51aS10YWJzLW5hdiBsaS51aS10YWJzLWxvYWRpbmcgLnVpLXRhYnMtYW5jaG9yIHsKCWN1cnNvcjogdGV4dDsKfQoudWktdGFicy1jb2xsYXBzaWJsZSAudWktdGFicy1uYXYgbGkudWktdGFicy1hY3RpdmUgLnVpLXRhYnMtYW5jaG9yIHsKCWN1cnNvcjogcG9pbnRlcjsKfQoudWktdGFicyAudWktdGFicy1wYW5lbCB7CglkaXNwbGF5OiBibG9jazsKCWJvcmRlci13aWR0aDogMDsKCXBhZGRpbmc6IDFlbSAxLjRlbTsKCWJhY2tncm91bmQ6IG5vbmU7Cn0KLnVpLXRvb2x0aXAgewoJcGFkZGluZzogOHB4OwoJcG9zaXRpb246IGFic29sdXRlOwoJei1pbmRleDogOTk5OTsKCW1heC13aWR0aDogMzAwcHg7Cn0KYm9keSAudWktdG9vbHRpcCB7Cglib3JkZXItd2lkdGg6IDJweDsKfQovKiBDb21wb25lbnQgY29udGFpbmVycwotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KLnVpLXdpZGdldCB7Cglmb250LWZhbWlseTogQXJpYWwsSGVsdmV0aWNhLHNhbnMtc2VyaWY7Cglmb250LXNpemU6IDFlbTsKfQoudWktd2lkZ2V0IC51aS13aWRnZXQgewoJZm9udC1zaXplOiAxZW07Cn0KLnVpLXdpZGdldCBpbnB1dCwKLnVpLXdpZGdldCBzZWxlY3QsCi51aS13aWRnZXQgdGV4dGFyZWEsCi51aS13aWRnZXQgYnV0dG9uIHsKCWZvbnQtZmFtaWx5OiBBcmlhbCxIZWx2ZXRpY2Esc2Fucy1zZXJpZjsKCWZvbnQtc2l6ZTogMWVtOwp9Ci51aS13aWRnZXQudWktd2lkZ2V0LWNvbnRlbnQgewoJYm9yZGVyOiAxcHggc29saWQgI2M1YzVjNTsKfQoudWktd2lkZ2V0LWNvbnRlbnQgewoJYm9yZGVyOiAxcHggc29saWQgI2RkZGRkZDsKCWJhY2tncm91bmQ6ICNmZmZmZmY7Cgljb2xvcjogIzMzMzMzMzsKfQoudWktd2lkZ2V0LWNvbnRlbnQgYSB7Cgljb2xvcjogIzMzMzMzMzsKfQoudWktd2lkZ2V0LWhlYWRlciB7Cglib3JkZXI6IDFweCBzb2xpZCAjZGRkZGRkOwoJYmFja2dyb3VuZDogI2U5ZTllOTsKCWNvbG9yOiAjMzMzMzMzOwoJZm9udC13ZWlnaHQ6IGJvbGQ7Cn0KLnVpLXdpZGdldC1oZWFkZXIgYSB7Cgljb2xvcjogIzMzMzMzMzsKfQoKLyogSW50ZXJhY3Rpb24gc3RhdGVzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoudWktc3RhdGUtZGVmYXVsdCwKLnVpLXdpZGdldC1jb250ZW50IC51aS1zdGF0ZS1kZWZhdWx0LAoudWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtZGVmYXVsdCwKLnVpLWJ1dHRvbiwKCi8qIFdlIHVzZSBodG1sIGhlcmUgYmVjYXVzZSB3ZSBuZWVkIGEgZ3JlYXRlciBzcGVjaWZpY2l0eSB0byBtYWtlIHN1cmUgZGlzYWJsZWQKd29ya3MgcHJvcGVybHkgd2hlbiBjbGlja2VkIG9yIGhvdmVyZWQgKi8KaHRtbCAudWktYnV0dG9uLnVpLXN0YXRlLWRpc2FibGVkOmhvdmVyLApodG1sIC51aS1idXR0b24udWktc3RhdGUtZGlzYWJsZWQ6YWN0aXZlIHsKCS8qYm9yZGVyOiAxcHggc29saWQgI2M1YzVjNTsKCWJhY2tncm91bmQ6ICNmNmY2ZjY7Cglmb250LXdlaWdodDogbm9ybWFsOwoJY29sb3I6ICM0NTQ1NDU7Ki8KCXdpZHRoOiAzMHB4OyAKCWhlaWdodDogMzBweDsgCgliYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOwoJYm9yZGVyLXJhZGl1czogNTAlOwoJY3Vyc29yOiBwb2ludGVyOwoJb3V0bGluZTogbm9uZTsKCW1hcmdpbi10b3A6LTVweDsKfQovKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT10aGlzIGlzIHRoZSBwYXJ0IHdoZXJlIHdlIGVkaXQ9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KLnVpLXN0YXRlLWRlZmF1bHQgYSwKLnVpLXN0YXRlLWRlZmF1bHQgYTpsaW5rLAoudWktc3RhdGUtZGVmYXVsdCBhOnZpc2l0ZWQsCmEudWktYnV0dG9uLAphOmxpbmsudWktYnV0dG9uLAphOnZpc2l0ZWQudWktYnV0dG9uLAoudWktYnV0dG9uIHsKCWNvbG9yOiAjNDU0NTQ1OwoJdGV4dC1kZWNvcmF0aW9uOiBub25lOwp9Ci51aS1zdGF0ZS1ob3ZlciwKLnVpLXdpZGdldC1jb250ZW50IC51aS1zdGF0ZS1ob3ZlciwKLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWhvdmVyLAoudWktc3RhdGUtZm9jdXMsCi51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtZm9jdXMsCi51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1mb2N1cywKLnVpLWJ1dHRvbjpob3ZlciwKLnVpLWJ1dHRvbjpmb2N1cyB7Cglib3JkZXI6IDFweCBzb2xpZCAjY2NjY2NjOwoJYmFja2dyb3VuZDogI2VkZWRlZDsKCWZvbnQtd2VpZ2h0OiBub3JtYWw7Cgljb2xvcjogIzJiMmIyYjsKfQoudWktc3RhdGUtaG92ZXIgYSwKLnVpLXN0YXRlLWhvdmVyIGE6aG92ZXIsCi51aS1zdGF0ZS1ob3ZlciBhOmxpbmssCi51aS1zdGF0ZS1ob3ZlciBhOnZpc2l0ZWQsCi51aS1zdGF0ZS1mb2N1cyBhLAoudWktc3RhdGUtZm9jdXMgYTpob3ZlciwKLnVpLXN0YXRlLWZvY3VzIGE6bGluaywKLnVpLXN0YXRlLWZvY3VzIGE6dmlzaXRlZCwKYS51aS1idXR0b246aG92ZXIsCmEudWktYnV0dG9uOmZvY3VzIHsKCWNvbG9yOiAjMmIyYjJiOwoJdGV4dC1kZWNvcmF0aW9uOiBub25lOwp9CgoudWktdmlzdWFsLWZvY3VzIHsKCWJveC1zaGFkb3c6IDAgMCAzcHggMXB4IHJnYig5NCwgMTU4LCAyMTQpOwp9Ci51aS1zdGF0ZS1hY3RpdmUsCi51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtYWN0aXZlLAoudWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtYWN0aXZlLAphLnVpLWJ1dHRvbjphY3RpdmUsCi51aS1idXR0b246YWN0aXZlLAoudWktYnV0dG9uLnVpLXN0YXRlLWFjdGl2ZTpob3ZlciB7CgkvKmJvcmRlcjogMXB4IHNvbGlkICMwMDNlZmY7CgliYWNrZ3JvdW5kOiAjMDA3ZmZmOwoJZm9udC13ZWlnaHQ6IG5vcm1hbDsKCWNvbG9yOiAjZmZmZmZmOyovCglib3gtc2hhZG93OiAwIDAgMCAycHggIzAwY2M2NiwKCQkJCTAgMCAwIDZweCAjZmZmOwp9Ci51aS1pY29uLWJhY2tncm91bmQsCi51aS1zdGF0ZS1hY3RpdmUgLnVpLWljb24tYmFja2dyb3VuZCB7Cglib3JkZXI6ICMwMDNlZmY7CgliYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOwp9Ci51aS1zdGF0ZS1hY3RpdmUgYSwKLnVpLXN0YXRlLWFjdGl2ZSBhOmxpbmssCi51aS1zdGF0ZS1hY3RpdmUgYTp2aXNpdGVkIHsKCWNvbG9yOiAjZmZmZmZmOwoJdGV4dC1kZWNvcmF0aW9uOiBub25lOwp9CgovKiBJbnRlcmFjdGlvbiBDdWVzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoudWktc3RhdGUtaGlnaGxpZ2h0LAoudWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWhpZ2hsaWdodCwKLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWhpZ2hsaWdodCB7Cglib3JkZXI6IDFweCBzb2xpZCAjZGFkNTVlOwoJYmFja2dyb3VuZDogI2ZmZmE5MDsKCWNvbG9yOiAjNzc3NjIwOwp9Ci51aS1zdGF0ZS1jaGVja2VkIHsKCWJvcmRlcjogMXB4IHNvbGlkICNkYWQ1NWU7CgliYWNrZ3JvdW5kOiAjZmZmYTkwOwp9Ci51aS1zdGF0ZS1oaWdobGlnaHQgYSwKLnVpLXdpZGdldC1jb250ZW50IC51aS1zdGF0ZS1oaWdobGlnaHQgYSwKLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWhpZ2hsaWdodCBhIHsKCWNvbG9yOiAjNzc3NjIwOwp9Ci51aS1zdGF0ZS1lcnJvciwKLnVpLXdpZGdldC1jb250ZW50IC51aS1zdGF0ZS1lcnJvciwKLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWVycm9yIHsKCWJvcmRlcjogMXB4IHNvbGlkICNmMWE4OTk7CgliYWNrZ3JvdW5kOiAjZmRkZmRmOwoJY29sb3I6ICM1ZjNmM2Y7Cn0KLnVpLXN0YXRlLWVycm9yIGEsCi51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtZXJyb3IgYSwKLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWVycm9yIGEgewoJY29sb3I6ICM1ZjNmM2Y7Cn0KLnVpLXN0YXRlLWVycm9yLXRleHQsCi51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtZXJyb3ItdGV4dCwKLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWVycm9yLXRleHQgewoJY29sb3I6ICM1ZjNmM2Y7Cn0KLnVpLXByaW9yaXR5LXByaW1hcnksCi51aS13aWRnZXQtY29udGVudCAudWktcHJpb3JpdHktcHJpbWFyeSwKLnVpLXdpZGdldC1oZWFkZXIgLnVpLXByaW9yaXR5LXByaW1hcnkgewoJZm9udC13ZWlnaHQ6IGJvbGQ7Cn0KLnVpLXByaW9yaXR5LXNlY29uZGFyeSwKLnVpLXdpZGdldC1jb250ZW50IC51aS1wcmlvcml0eS1zZWNvbmRhcnksCi51aS13aWRnZXQtaGVhZGVyIC51aS1wcmlvcml0eS1zZWNvbmRhcnkgewoJb3BhY2l0eTogLjc7CglmaWx0ZXI6QWxwaGEoT3BhY2l0eT03MCk7IC8qIHN1cHBvcnQ6IElFOCAqLwoJZm9udC13ZWlnaHQ6IG5vcm1hbDsKfQoudWktc3RhdGUtZGlzYWJsZWQsCi51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtZGlzYWJsZWQsCi51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1kaXNhYmxlZCB7CglvcGFjaXR5OiAuMzU7CglmaWx0ZXI6QWxwaGEoT3BhY2l0eT0zNSk7IC8qIHN1cHBvcnQ6IElFOCAqLwoJYmFja2dyb3VuZC1pbWFnZTogbm9uZTsKfQoudWktc3RhdGUtZGlzYWJsZWQgLnVpLWljb24gewoJZmlsdGVyOkFscGhhKE9wYWNpdHk9MzUpOyAvKiBzdXBwb3J0OiBJRTggLSBTZWUgIzYwNTkgKi8KfQoKLyogSWNvbnMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCgovKiBzdGF0ZXMgYW5kIGltYWdlcyAqLwoudWktaWNvbiB7Cgl3aWR0aDogMTZweDsKCWhlaWdodDogMTZweDsKfQoudWktaWNvbiwKLnVpLXdpZGdldC1jb250ZW50IC51aS1pY29uIHsKCWJhY2tncm91bmQtaW1hZ2U6IHVybCgiaW1hZ2VzL3VpLWljb25zXzQ0NDQ0NF8yNTZ4MjQwLmh0bWwiKTsKfQoudWktd2lkZ2V0LWhlYWRlciAudWktaWNvbiB7CgliYWNrZ3JvdW5kLWltYWdlOiB1cmwoImltYWdlcy91aS1pY29uc180NDQ0NDRfMjU2eDI0MC5odG1sIik7Cn0KLnVpLXN0YXRlLWhvdmVyIC51aS1pY29uLAoudWktc3RhdGUtZm9jdXMgLnVpLWljb24sCi51aS1idXR0b246aG92ZXIgLnVpLWljb24sCi51aS1idXR0b246Zm9jdXMgLnVpLWljb24gewoJYmFja2dyb3VuZC1pbWFnZTogdXJsKCJpbWFnZXMvdWktaWNvbnNfNTU1NTU1XzI1NngyNDAuaHRtbCIpOwp9Ci51aS1zdGF0ZS1hY3RpdmUgLnVpLWljb24sCi51aS1idXR0b246YWN0aXZlIC51aS1pY29uIHsKCWJhY2tncm91bmQtaW1hZ2U6IHVybCgiaW1hZ2VzL3VpLWljb25zX2ZmZmZmZl8yNTZ4MjQwLmh0bWwiKTsKfQoudWktc3RhdGUtaGlnaGxpZ2h0IC51aS1pY29uLAoudWktYnV0dG9uIC51aS1zdGF0ZS1oaWdobGlnaHQudWktaWNvbiB7CgliYWNrZ3JvdW5kLWltYWdlOiB1cmwoImltYWdlcy91aS1pY29uc183Nzc2MjBfMjU2eDI0MC5odG1sIik7Cn0KLnVpLXN0YXRlLWVycm9yIC51aS1pY29uLAoudWktc3RhdGUtZXJyb3ItdGV4dCAudWktaWNvbiB7CgliYWNrZ3JvdW5kLWltYWdlOiB1cmwoImltYWdlcy91aS1pY29uc19jYzAwMDBfMjU2eDI0MC5odG1sIik7Cn0KLnVpLWJ1dHRvbiAudWktaWNvbiB7CgliYWNrZ3JvdW5kLWltYWdlOiB1cmwoImltYWdlcy91aS1pY29uc183Nzc3NzdfMjU2eDI0MC5odG1sIik7Cn0KCi8qIHBvc2l0aW9uaW5nICovCi51aS1pY29uLWJsYW5rIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMTZweCAxNnB4OyB9Ci51aS1pY29uLWNhcmV0LTEtbiB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfQoudWktaWNvbi1jYXJldC0xLW5lIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggMDsgfQoudWktaWNvbi1jYXJldC0xLWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAwOyB9Ci51aS1pY29uLWNhcmV0LTEtc2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAwOyB9Ci51aS1pY29uLWNhcmV0LTEtcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NXB4IDA7IH0KLnVpLWljb24tY2FyZXQtMS1zdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IDA7IH0KLnVpLWljb24tY2FyZXQtMS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggMDsgfQoudWktaWNvbi1jYXJldC0xLW53IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IDA7IH0KLnVpLWljb24tY2FyZXQtMi1uLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggMDsgfQoudWktaWNvbi1jYXJldC0yLWUtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAwOyB9Ci51aS1pY29uLXRyaWFuZ2xlLTEtbiB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE2cHg7IH0KLnVpLWljb24tdHJpYW5nbGUtMS1uZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0xNnB4OyB9Ci51aS1pY29uLXRyaWFuZ2xlLTEtZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC0xNnB4OyB9Ci51aS1pY29uLXRyaWFuZ2xlLTEtc2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtMTZweDsgfQoudWktaWNvbi10cmlhbmdsZS0xLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjVweCAtMTZweDsgfQoudWktaWNvbi10cmlhbmdsZS0xLXN3IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTE2cHg7IH0KLnVpLWljb24tdHJpYW5nbGUtMS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTE2cHg7IH0KLnVpLWljb24tdHJpYW5nbGUtMS1udyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtMTZweDsgfQoudWktaWNvbi10cmlhbmdsZS0yLW4tcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtMTZweDsgfQoudWktaWNvbi10cmlhbmdsZS0yLWUtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAtMTZweDsgfQoudWktaWNvbi1hcnJvdy0xLW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zMnB4OyB9Ci51aS1pY29uLWFycm93LTEtbmUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtMzJweDsgfQoudWktaWNvbi1hcnJvdy0xLWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMzJweDsgfQoudWktaWNvbi1hcnJvdy0xLXNlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTMycHg7IH0KLnVpLWljb24tYXJyb3ctMS1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY1cHggLTMycHg7IH0KLnVpLWljb24tYXJyb3ctMS1zdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0zMnB4OyB9Ci51aS1pY29uLWFycm93LTEtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC0zMnB4OyB9Ci51aS1pY29uLWFycm93LTEtbncgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTMycHg7IH0KLnVpLWljb24tYXJyb3ctMi1uLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTMycHg7IH0KLnVpLWljb24tYXJyb3ctMi1uZS1zdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAtMzJweDsgfQoudWktaWNvbi1hcnJvdy0yLWUtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNjBweCAtMzJweDsgfQoudWktaWNvbi1hcnJvdy0yLXNlLW53IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3NnB4IC0zMnB4OyB9Ci51aS1pY29uLWFycm93c3RvcC0xLW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTkycHggLTMycHg7IH0KLnVpLWljb24tYXJyb3dzdG9wLTEtZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0yMDhweCAtMzJweDsgfQoudWktaWNvbi1hcnJvd3N0b3AtMS1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyNHB4IC0zMnB4OyB9Ci51aS1pY29uLWFycm93c3RvcC0xLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjQwcHggLTMycHg7IH0KLnVpLWljb24tYXJyb3d0aGljay0xLW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxcHggLTQ4cHg7IH0KLnVpLWljb24tYXJyb3d0aGljay0xLW5lIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTQ4cHg7IH0KLnVpLWljb24tYXJyb3d0aGljay0xLWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtNDhweDsgfQoudWktaWNvbi1hcnJvd3RoaWNrLTEtc2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtNDhweDsgfQoudWktaWNvbi1hcnJvd3RoaWNrLTEtcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC00OHB4OyB9Ci51aS1pY29uLWFycm93dGhpY2stMS1zdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC00OHB4OyB9Ci51aS1pY29uLWFycm93dGhpY2stMS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTQ4cHg7IH0KLnVpLWljb24tYXJyb3d0aGljay0xLW53IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC00OHB4OyB9Ci51aS1pY29uLWFycm93dGhpY2stMi1uLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTQ4cHg7IH0KLnVpLWljb24tYXJyb3d0aGljay0yLW5lLXN3IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0NHB4IC00OHB4OyB9Ci51aS1pY29uLWFycm93dGhpY2stMi1lLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggLTQ4cHg7IH0KLnVpLWljb24tYXJyb3d0aGljay0yLXNlLW53IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE3NnB4IC00OHB4OyB9Ci51aS1pY29uLWFycm93dGhpY2tzdG9wLTEtbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xOTJweCAtNDhweDsgfQoudWktaWNvbi1hcnJvd3RoaWNrc3RvcC0xLWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjA4cHggLTQ4cHg7IH0KLnVpLWljb24tYXJyb3d0aGlja3N0b3AtMS1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyNHB4IC00OHB4OyB9Ci51aS1pY29uLWFycm93dGhpY2tzdG9wLTEtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0yNDBweCAtNDhweDsgfQoudWktaWNvbi1hcnJvd3JldHVybnRoaWNrLTEtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTY0cHg7IH0KLnVpLWljb24tYXJyb3dyZXR1cm50aGljay0xLW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtNjRweDsgfQoudWktaWNvbi1hcnJvd3JldHVybnRoaWNrLTEtZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC02NHB4OyB9Ci51aS1pY29uLWFycm93cmV0dXJudGhpY2stMS1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTY0cHg7IH0KLnVpLWljb24tYXJyb3dyZXR1cm4tMS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggLTY0cHg7IH0KLnVpLWljb24tYXJyb3dyZXR1cm4tMS1uIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTY0cHg7IH0KLnVpLWljb24tYXJyb3dyZXR1cm4tMS1lIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTY0cHg7IH0KLnVpLWljb24tYXJyb3dyZXR1cm4tMS1zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC02NHB4OyB9Ci51aS1pY29uLWFycm93cmVmcmVzaC0xLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTY0cHg7IH0KLnVpLWljb24tYXJyb3dyZWZyZXNoLTEtbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAtNjRweDsgfQoudWktaWNvbi1hcnJvd3JlZnJlc2gtMS1lIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2MHB4IC02NHB4OyB9Ci51aS1pY29uLWFycm93cmVmcmVzaC0xLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTc2cHggLTY0cHg7IH0KLnVpLWljb24tYXJyb3ctNCB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTgwcHg7IH0KLnVpLWljb24tYXJyb3ctNC1kaWFnIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTgwcHg7IH0KLnVpLWljb24tZXh0bGluayB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC04MHB4OyB9Ci51aS1pY29uLW5ld3dpbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IC04MHB4OyB9Ci51aS1pY29uLXJlZnJlc2ggeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtODBweDsgfQoudWktaWNvbi1zaHVmZmxlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTgwcHg7IH0KLnVpLWljb24tdHJhbnNmZXItZS13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTgwcHg7IH0KLnVpLWljb24tdHJhbnNmZXJ0aGljay1lLXcgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTgwcHg7IH0KLnVpLWljb24tZm9sZGVyLWNvbGxhcHNlZCB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTk2cHg7IH0KLnVpLWljb24tZm9sZGVyLW9wZW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtOTZweDsgfQoudWktaWNvbi1kb2N1bWVudCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC05NnB4OyB9Ci51aS1pY29uLWRvY3VtZW50LWIgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtOTZweDsgfQoudWktaWNvbi1ub3RlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggLTk2cHg7IH0KLnVpLWljb24tbWFpbC1jbG9zZWQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtOTZweDsgfQoudWktaWNvbi1tYWlsLW9wZW4geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtOTZweDsgfQoudWktaWNvbi1zdWl0Y2FzZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtOTZweDsgfQoudWktaWNvbi1jb21tZW50IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IC05NnB4OyB9Ci51aS1pY29uLXBlcnNvbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAtOTZweDsgfQoudWktaWNvbi1wcmludCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNjBweCAtOTZweDsgfQoudWktaWNvbi10cmFzaCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNzZweCAtOTZweDsgfQoudWktaWNvbi1sb2NrZWQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTkycHggLTk2cHg7IH0KLnVpLWljb24tdW5sb2NrZWQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjA4cHggLTk2cHg7IH0KLnVpLWljb24tYm9va21hcmsgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjI0cHggLTk2cHg7IH0KLnVpLWljb24tdGFnIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI0MHB4IC05NnB4OyB9Ci51aS1pY29uLWhvbWUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMTJweDsgfQoudWktaWNvbi1mbGFnIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTExMnB4OyB9Ci51aS1pY29uLWNhbGVuZGFyIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTExMnB4OyB9Ci51aS1pY29uLWNhcnQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtMTEycHg7IH0KLnVpLWljb24tcGVuY2lsIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggLTExMnB4OyB9Ci51aS1pY29uLWNsb2NrIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTExMnB4OyB9Ci51aS1pY29uLWRpc2sgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMTEycHg7IH0KLnVpLWljb24tY2FsY3VsYXRvciB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtMTEycHg7IH0KLnVpLWljb24tem9vbWluIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyOHB4IC0xMTJweDsgfQoudWktaWNvbi16b29tb3V0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0NHB4IC0xMTJweDsgfQoudWktaWNvbi1zZWFyY2ggeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggLTExMnB4OyB9Ci51aS1pY29uLXdyZW5jaCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNzZweCAtMTEycHg7IH0KLnVpLWljb24tZ2VhciB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xOTJweCAtMTEycHg7IH0KLnVpLWljb24taGVhcnQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjA4cHggLTExMnB4OyB9Ci51aS1pY29uLXN0YXIgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjI0cHggLTExMnB4OyB9Ci51aS1pY29uLWxpbmsgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjQwcHggLTExMnB4OyB9Ci51aS1pY29uLWNhbmNlbCB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEyOHB4OyB9Ci51aS1pY29uLXBsdXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtMTI4cHg7IH0KLnVpLWljb24tcGx1c3RoaWNrIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTEyOHB4OyB9Ci51aS1pY29uLW1pbnVzIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTEyOHB4OyB9Ci51aS1pY29uLW1pbnVzdGhpY2sgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtMTI4cHg7IH0KLnVpLWljb24tY2xvc2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMTI4cHg7IH0KLnVpLWljb24tY2xvc2V0aGljayB7IGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC0xMjhweDsgfQoudWktaWNvbi1rZXkgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTEyOHB4OyB9Ci51aS1pY29uLWxpZ2h0YnVsYiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtMTI4cHg7IH0KLnVpLWljb24tc2Npc3NvcnMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTQ0cHggLTEyOHB4OyB9Ci51aS1pY29uLWNsaXBib2FyZCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNjBweCAtMTI4cHg7IH0KLnVpLWljb24tY29weSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNzZweCAtMTI4cHg7IH0KLnVpLWljb24tY29udGFjdCB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xOTJweCAtMTI4cHg7IH0KLnVpLWljb24taW1hZ2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjA4cHggLTEyOHB4OyB9Ci51aS1pY29uLXZpZGVvIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyNHB4IC0xMjhweDsgfQoudWktaWNvbi1zY3JpcHQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjQwcHggLTEyOHB4OyB9Ci51aS1pY29uLWFsZXJ0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTQ0cHg7IH0KLnVpLWljb24taW5mbyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0xNDRweDsgfQoudWktaWNvbi1ub3RpY2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMTQ0cHg7IH0KLnVpLWljb24taGVscCB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IC0xNDRweDsgfQoudWktaWNvbi1jaGVjayB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0xNDRweDsgfQoudWktaWNvbi1idWxsZXQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMTQ0cHg7IH0KLnVpLWljb24tcmFkaW8tb24geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMTQ0cHg7IH0KLnVpLWljb24tcmFkaW8tb2ZmIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC0xNDRweDsgfQoudWktaWNvbi1waW4tdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjhweCAtMTQ0cHg7IH0KLnVpLWljb24tcGluLXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTQ0cHggLTE0NHB4OyB9Ci51aS1pY29uLXBsYXkgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNjBweDsgfQoudWktaWNvbi1wYXVzZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0xNjBweDsgfQoudWktaWNvbi1zZWVrLW5leHQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMTYwcHg7IH0KLnVpLWljb24tc2Vlay1wcmV2IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTE2MHB4OyB9Ci51aS1pY29uLXNlZWstZW5kIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggLTE2MHB4OyB9Ci51aS1pY29uLXNlZWstc3RhcnQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMTYwcHg7IH0KLyogdWktaWNvbi1zZWVrLWZpcnN0IGlzIGRlcHJlY2F0ZWQsIHVzZSB1aS1pY29uLXNlZWstc3RhcnQgaW5zdGVhZCAqLwoudWktaWNvbi1zZWVrLWZpcnN0IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTE2MHB4OyB9Ci51aS1pY29uLXN0b3AgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMTYwcHg7IH0KLnVpLWljb24tZWplY3QgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTE2MHB4OyB9Ci51aS1pY29uLXZvbHVtZS1vZmYgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTE2MHB4OyB9Ci51aS1pY29uLXZvbHVtZS1vbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNDRweCAtMTYwcHg7IH0KLnVpLWljb24tcG93ZXIgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNzZweDsgfQoudWktaWNvbi1zaWduYWwtZGlhZyB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC0xNzZweDsgfQoudWktaWNvbi1zaWduYWwgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMTc2cHg7IH0KLnVpLWljb24tYmF0dGVyeS0wIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTE3NnB4OyB9Ci51aS1pY29uLWJhdHRlcnktMSB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0xNzZweDsgfQoudWktaWNvbi1iYXR0ZXJ5LTIgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMTc2cHg7IH0KLnVpLWljb24tYmF0dGVyeS0zIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTE3NnB4OyB9Ci51aS1pY29uLWNpcmNsZS1wbHVzIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTkycHg7IH0KLnVpLWljb24tY2lyY2xlLW1pbnVzIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTE5MnB4OyB9Ci51aS1pY29uLWNpcmNsZS1jbG9zZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC0xOTJweDsgfQoudWktaWNvbi1jaXJjbGUtdHJpYW5nbGUtZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC00OHB4IC0xOTJweDsgfQoudWktaWNvbi1jaXJjbGUtdHJpYW5nbGUtcyB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0xOTJweDsgfQoudWktaWNvbi1jaXJjbGUtdHJpYW5nbGUtdyB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0xOTJweDsgfQoudWktaWNvbi1jaXJjbGUtdHJpYW5nbGUtbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC0xOTJweDsgfQoudWktaWNvbi1jaXJjbGUtYXJyb3ctZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtMTkycHg7IH0KLnVpLWljb24tY2lyY2xlLWFycm93LXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTE5MnB4OyB9Ci51aS1pY29uLWNpcmNsZS1hcnJvdy13IHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0NHB4IC0xOTJweDsgfQoudWktaWNvbi1jaXJjbGUtYXJyb3ctbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNjBweCAtMTkycHg7IH0KLnVpLWljb24tY2lyY2xlLXpvb21pbiB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNzZweCAtMTkycHg7IH0KLnVpLWljb24tY2lyY2xlLXpvb21vdXQgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTkycHggLTE5MnB4OyB9Ci51aS1pY29uLWNpcmNsZS1jaGVjayB7IGJhY2tncm91bmQtcG9zaXRpb246IC0yMDhweCAtMTkycHg7IH0KLnVpLWljb24tY2lyY2xlc21hbGwtcGx1cyB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTIwOHB4OyB9Ci51aS1pY29uLWNpcmNsZXNtYWxsLW1pbnVzIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTIwOHB4OyB9Ci51aS1pY29uLWNpcmNsZXNtYWxsLWNsb3NlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTIwOHB4OyB9Ci51aS1pY29uLXNxdWFyZXNtYWxsLXBsdXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDhweCAtMjA4cHg7IH0KLnVpLWljb24tc3F1YXJlc21hbGwtbWludXMgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtMjA4cHg7IH0KLnVpLWljb24tc3F1YXJlc21hbGwtY2xvc2UgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMjA4cHg7IH0KLnVpLWljb24tZ3JpcC1kb3R0ZWQtdmVydGljYWwgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yMjRweDsgfQoudWktaWNvbi1ncmlwLWRvdHRlZC1ob3Jpem9udGFsIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTIyNHB4OyB9Ci51aS1pY29uLWdyaXAtc29saWQtdmVydGljYWwgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMjI0cHg7IH0KLnVpLWljb24tZ3JpcC1zb2xpZC1ob3Jpem9udGFsIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTIyNHB4OyB9Ci51aS1pY29uLWdyaXBzbWFsbC1kaWFnb25hbC1zZSB7IGJhY2tncm91bmQtcG9zaXRpb246IC02NHB4IC0yMjRweDsgfQoudWktaWNvbi1ncmlwLWRpYWdvbmFsLXNlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTIyNHB4OyB9CgoKLyogTWlzYyB2aXN1YWxzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoKLyogQ29ybmVyIHJhZGl1cyAqLwoudWktY29ybmVyLWFsbCwKLnVpLWNvcm5lci10b3AsCi51aS1jb3JuZXItbGVmdCwKLnVpLWNvcm5lci10bCB7Cglib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAzcHg7Cn0KLnVpLWNvcm5lci1hbGwsCi51aS1jb3JuZXItdG9wLAoudWktY29ybmVyLXJpZ2h0LAoudWktY29ybmVyLXRyIHsKCWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAzcHg7Cn0KLnVpLWNvcm5lci1hbGwsCi51aS1jb3JuZXItYm90dG9tLAoudWktY29ybmVyLWxlZnQsCi51aS1jb3JuZXItYmwgewoJYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogM3B4Owp9Ci51aS1jb3JuZXItYWxsLAoudWktY29ybmVyLWJvdHRvbSwKLnVpLWNvcm5lci1yaWdodCwKLnVpLWNvcm5lci1iciB7Cglib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogM3B4Owp9CgovKiBPdmVybGF5cyAqLwoudWktd2lkZ2V0LW92ZXJsYXkgewoJYmFja2dyb3VuZDogI2FhYWFhYTsKCW9wYWNpdHk6IC4zOwoJZmlsdGVyOiBBbHBoYShPcGFjaXR5PTMwKTsgLyogc3VwcG9ydDogSUU4ICovCn0KLnVpLXdpZGdldC1zaGFkb3cgewoJLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDVweCAjNjY2NjY2OwoJYm94LXNoYWRvdzogMHB4IDBweCA1cHggIzY2NjY2NjsKfQo="}},"time_used":101,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":101,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","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/runtime-embed_ticker_tape_widget.962f777c23b660d830a5.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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.239Z","timestamp":1785126257239,"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-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_ticker_tape_widget.962f777c23b660d830a5.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/ticker-tape/?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 04:24:17 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-23c8\"\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:32:03\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 10f79289e37146f1f60273c1dac076c2\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":9160,"size_decoded":5436,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3066)","md5":"6261f54efc700f40121ffb4b8469e97e","sha1":"ce3b28aab3d88f4c8efb56c9421582b8795b170a","sha256":"784267261c93801d2acc456a3fd6bdebee924adb480d41166947dbef83d09720","sha512":"24eac8beb0159520437818ae9b0622b1a35010f7b030d8235bafbe66000eccedec201dadd509607239623d395152fe9e364a0fc0ff255a87f05f763c2bd6ce2b","ssdeep":"192:YLwqLptVvG6uptkfr8lJkNFmn1BnRMC4p2kuVcsFAvaGg:4wqLp/vXunkfr8/kPm1BnRMC4p2kazAO","tlshash":"fe12e9ac354ce53225bb0c525479e462f72c23fb5e0ae0a09367fcf96858ed46633d91","first_seen":"2026-07-24T15:28:44.921696Z","last_seen":"2026-07-27T07:05:45.46591Z","times_seen":448,"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+e2lmKHRbZV0pdFtlXS5wdXNoKG4pO2Vsc2V7dmFyIGksbztpZih2b2lkIDAhPT1hKWZvcih2YXIgZD1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0IiksZj0wO2Y8ZC5sZW5ndGg7ZisrKXt2YXIgdT1kW2ZdO2lmKHUuZ2V0QXR0cmlidXRlKCJzcmMiKT09ZXx8dS5nZXRBdHRyaWJ1dGUoImRhdGEtd2VicGFjayIpPT1yK2Epe2k9dTticmVha319aXx8KG89ITAsKGk9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0IikpLmNoYXJzZXQ9InV0Zi04IixsLm5jJiZpLnNldEF0dHJpYnV0ZSgibm9uY2UiLGwubmMpLGkuc2V0QXR0cmlidXRlKCJkYXRhLXdlYnBhY2siLHIrYSksaS5zcmM9ZSwwIT09aS5zcmMuaW5kZXhPZih3aW5kb3cubG9jYXRpb24ub3JpZ2luKyIvIikmJihpLmNyb3NzT3JpZ2luPSJhbm9ueW1vdXMiKSksdFtlXT1bbl07dmFyIHM9KHIsbik9PntpLm9uZXJyb3I9aS5vbmxvYWQ9bnVsbCxjbGVhclRpbWVvdXQoYik7dmFyIGE9dFtlXTtpZihkZWxldGUgdFtlXSxpLnBhcmVudE5vZGUmJmkucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChpKSxhJiZhLmZvckVhY2goKGU9PmUobikpKSxyKXJldHVybiByKG4pfSxiPXNldFRpbWVvdXQocy5iaW5kKG51bGwsdm9pZCAwLHt0eXBlOiJ0aW1lb3V0Iix0YXJnZXQ6aX0pLDEyZTQpO2kub25lcnJvcj1zLmJpbmQobnVsbCxpLm9uZXJyb3IpLGkub25sb2FkPXMuYmluZChudWxsLGkub25sb2FkKSxvJiZkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKGkpfX0sbC5yPWU9PnsidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmU3ltYm9sLnRvU3RyaW5nVGFnJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxTeW1ib2wudG9TdHJpbmdUYWcse3ZhbHVlOiJNb2R1bGUifSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pfSxsLmo9ODM2MDgsKCgpPT57dmFyIGU7bC5nLmltcG9ydFNjcmlwdHMmJihlPWwuZy5sb2NhdGlvbisiIik7dmFyIHQ9bC5nLmRvY3VtZW50O2lmKCFlJiZ0JiYodC5jdXJyZW50U2NyaXB0JiYiU0NSSVBUIj09PXQuY3VycmVudFNjcmlwdC50YWdOYW1lLnRvVXBwZXJDYXNlKCkmJihlPXQuY3VycmVudFNjcmlwdC5zcmMpLCFlKSl7dmFyIHI9dC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic2NyaXB0Iik7aWYoci5sZW5ndGgpZm9yKHZhciBuPXIubGVuZ3RoLTE7bj4tMSYmKCFlfHwhL15odHRwKHM/KTovLnRlc3QoZSkpOyllPXJbbi0tXS5zcmN9aWYoIWUpdGhyb3cgbmV3IEVycm9yKCJBdXRvbWF0aWMgcHVibGljUGF0aCBpcyBub3Qgc3VwcG9ydGVkIGluIHRoaXMgYnJvd3NlciIpO2U9ZS5yZXBsYWNlKC9eYmxvYjovLCIiKS5yZXBsYWNlKC8jLiokLywiIikucmVwbGFjZSgvXD8uKiQvLCIiKS5yZXBsYWNlKC9cL1teXC9dKyQvLCIvIiksbC5wPWV9KSgpLGwuZy5sb2NhdGlvbiYmbC5wLnN0YXJ0c1dpdGgobC5nLmxvY2F0aW9uLm9yaWdpbikmJihsLnA9bC5wLnNsaWNlKGwuZy5sb2NhdGlvbi5vcmlnaW4ubGVuZ3RoKSksKCgpPT57Y29uc3QgZT1sLnU7bC51PXQ9PmUodCkucmVwbGFjZSgiX19MQU5HX18iLGwuZy5sYW5ndWFnZSl9KSgpLCgoKT0+e3ZhciBlPWwuZSx0PU9iamVjdC5jcmVhdGUobnVsbCk7ZnVuY3Rpb24gcih0LG4pe3JldHVybiBlKHQpLmNhdGNoKChmdW5jdGlvbigpe3JldHVybiBuZXcgUHJvbWlzZSgoZnVuY3Rpb24oYSl7dmFyIGw9ZnVuY3Rpb24oKXtzZWxmLnJlbW92ZUV2ZW50TGlzdGVuZXIoIm9ubGluZSIsbCwhMSksITE9PT1uYXZpZ2F0b3Iub25MaW5lP3NlbGYuYWRkRXZlbnRMaXN0ZW5lcigib25saW5lIixsLCExKTphKG48Mj9yKHQsbisxKTplKHQpKX0KO3NldFRpbWVvdXQobCxuKm4qMWUzKX0pKX0pKX1sLmU9ZnVuY3Rpb24oZSl7aWYoIXRbZV0pe3RbZV09cihlLDApO3ZhciBuPWZ1bmN0aW9uKCl7ZGVsZXRlIHRbZV19O3RbZV0udGhlbihuLG4pfXJldHVybiB0W2VdfX0pKCksKCgpPT57aWYoInVuZGVmaW5lZCIhPXR5cGVvZiBkb2N1bWVudCl7dmFyIGU9ZT0+bmV3IFByb21pc2UoKCh0LHIpPT57dmFyIG49bC5taW5pQ3NzRihlKSxhPWwucCtuO2lmKCgoZSx0KT0+e2Zvcih2YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgibGluayIpLG49MDtuPHIubGVuZ3RoO24rKyl7dmFyIGE9KGM9cltuXSkuZ2V0QXR0cmlidXRlKCJkYXRhLWhyZWYiKXx8Yy5nZXRBdHRyaWJ1dGUoImhyZWYiKTtpZigic3R5bGVzaGVldCI9PT1jLnJlbCYmKGE9PT1lfHxhPT09dCkpcmV0dXJuIGN9dmFyIGw9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInN0eWxlIik7Zm9yKG49MDtuPGwubGVuZ3RoO24rKyl7dmFyIGM7aWYoKGE9KGM9bFtuXSkuZ2V0QXR0cmlidXRlKCJkYXRhLWhyZWYiKSk9PT1lfHxhPT09dClyZXR1cm4gY319KShuLGEpKXJldHVybiB0KCk7KChlLHQscixuLGEpPT57dmFyIGw9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgibGluayIpO2wucmVsPSJzdHlsZXNoZWV0IixsLnR5cGU9InRleHQvY3NzIixsLm9uZXJyb3I9bC5vbmxvYWQ9cj0+e2lmKGwub25lcnJvcj1sLm9ubG9hZD1udWxsLCJsb2FkIj09PXIudHlwZSluKCk7ZWxzZXt2YXIgYz1yJiYoImxvYWQiPT09ci50eXBlPyJtaXNzaW5nIjpyLnR5cGUpLGk9ciYmci50YXJnZXQmJnIudGFyZ2V0LmhyZWZ8fHQsbz1uZXcgRXJyb3IoIkxvYWRpbmcgQ1NTIGNodW5rICIrZSsiIGZhaWxlZC5cbigiK2krIikiKTtvLmNvZGU9IkNTU19DSFVOS19MT0FEX0ZBSUxFRCIsby50eXBlPWMsby5yZXF1ZXN0PWksbC5wYXJlbnROb2RlJiZsLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQobCksYShvKX19LGwuaHJlZj10LDAhPT1sLmhyZWYuaW5kZXhPZih3aW5kb3cubG9jYXRpb24ub3JpZ2luKyIvIikmJihsLmNyb3NzT3JpZ2luPSJhbm9ueW1vdXMiKSxyP3IucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUobCxyLm5leHRTaWJsaW5nKTpkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKGwpfSkoZSxhLG51bGwsdCxyKX0pKSx0PXs4MzYwODowfTtsLmYubWluaUNzcz0ocixuKT0+e3Rbcl0/bi5wdXNoKHRbcl0pOjAhPT10W3JdJiZ7NjQ0NToxLDg1Nzk6MSwxMDM2NjoxLDEyMDUxOjEsMTIzODU6MSwxMzQ5MjoxLDE3MDg3OjEsMTk1OTU6MSwxOTc4NzoxLDIwMzU0OjEsMjkyOTY6MSwzNzc0NjoxLDQwOTE0OjEsNDQyNTM6MSw1MjM5NjoxLDUzNTIxOjEsNTczMDA6MSw1OTk0MToxLDYwMDYyOjEsNjcyMTI6MSw3NDAxMToxLDc4ODk5OjEsODEwNzI6MSw4NDMwNjoxLDg3NzQwOjEsODk1NTg6MSw5MDk2MDoxLDk0MjMyOjEsOTc3OTc6MX1bcl0mJm4ucHVzaCh0W3JdPWUocikudGhlbigoKCk9Pnt0W3JdPTB9KSwoZT0+e3Rocm93IGRlbGV0ZSB0W3JdLGV9KSkpfX19KSgpLGwuaTE4bmV4dD0oZSx0PXt9LHIsbj1sLmcubGFuZ3VhZ2UpPT57aWYobnVsbD09PWUpe2lmKEFycmF5LmlzQXJyYXkocikpcmV0dXJuIHJbdm9pZCAwPT09dC5jb3VudD8wOmwuX3BsdXJhbFtuXSh0LmNvdW50KV0ucmVwbGFjZSgveyhcdyspfS9nLCgoZSxyKT0+dm9pZCAwIT09KHQucmVwbGFjZXx8dClbcl0/KHQucmVwbGFjZXx8dClbcl06ZSkpO2lmKCJvYmplY3QiPT10eXBlb2YgcilyZXR1cm4gcltsLmcubGFuZ3VhZ2VdP2wuaTE4bmV4dChudWxsLHQscltsLmcubGFuZ3VhZ2VdKTpsLmkxOG5leHQobnVsbCx0LHIuZW4sImVuIil9ZWxzZSBpZihyJiZlKXtjb25zdCBuPWAke2V9JHt0LmNvbnRleHQ/YF8ke3QuY29udGV4dH1gOiIifWA7aWYocltuXSlyZXR1cm4gbC5pMThuZXh0KG51bGwsdCxyW25dKX1yZXR1cm4ibnVtYmVyIj09dHlwZW9mIGU/ZS50b1N0cmluZygpOiJzdHJpbmciIT10eXBlb2YgZT8iIjplfSwoKCk9Pnt2YXIgZT17ODM2MDg6MCw0NjkwNzowLDMyODE2OjAsNDMzMjU6MCwzOTA1OjAsMTU5MzI6MCw1MTUwODowLDg0MDg6MCw4MDA5NzowfTtsLmYuaj0odCxyKT0+e3ZhciBuPWwubyhlLHQpP2VbdF06dm9pZCAwO2lmKDAhPT1uKWlmKG4pci5wdXNoKG5bMl0pO2Vsc2UgaWYoL14oMSgoNzB8OTcpODd8MDM2NnwyMDUxfDIzODV8MzQ5Mnw1OTMyfDk1OTUpfDMoMjgxNnw3NzQ2fDkwNSl8NCgwOTE0fDMzMjV8NDI1M3w2OTA3KXw1KDE1MDh8MjM5NnwzNTIxfDczMDB8OTk0MSl8NigwMDYyfDQ0NXw3MjEyKXw4KCgzNjB8NDB8OTU1KTh8MDA5N3wxMDcyfDQzMDZ8NTc5fDc3NDApfDkoMDk2MHw0MjMyfDc3OTcpfDIwMzU0fDI5Mjk2fDc0MDExfDc4ODk5KSQvLnRlc3QodCkpZVt0XT0wO2Vsc2V7dmFyIGE9bmV3IFByb21pc2UoKChyLGEpPT5uPWVbdF09W3IsYV0pKTtyLnB1c2goblsyXT1hKTt2YXIgYz1sLnArbC51KHQpLGk9bmV3IEVycm9yO2wubChjLChyPT57aWYobC5vKGUsdCkmJigwIT09KG49ZVt0XSkmJihlW3RdPXZvaWQgMCksbikpe3ZhciBhPXImJigibG9hZCI9PT1yLnR5cGU/Im1pc3NpbmciOnIudHlwZSksYz1yJiZyLnRhcmdldCYmci50YXJnZXQuc3JjO2kubWVzc2FnZT0iTG9hZGluZyBjaHVuayAiK3QrIiBmYWlsZWQuXG4oIithKyI6ICIrYysiKSIsaS5uYW1lPSJDaHVua0xvYWRFcnJvciIsaS50eXBlPWEsaS5yZXF1ZXN0PWMsblsxXShpKX19KSwiY2h1bmstIit0LHQpfX0sbC5PLmo9dD0+MD09PWVbdF07dmFyIHQ9KHQscik9Pnt2YXIgbixhLFtjLGksb109cixkPTA7aWYoYy5zb21lKCh0PT4wIT09ZVt0XSkpKXtmb3IobiBpbiBpKWwubyhpLG4pJiYobC5tW25dPWlbbl0pO2lmKG8pdmFyIGY9byhsKX1mb3IodCYmdChyKTtkPGMubGVuZ3RoO2QrKylhPWNbZF0sbC5vKGUsYSkmJmVbYV0mJmVbYV1bMF0oKSxlW2FdPTA7cmV0dXJuIGwuTyhmKX0scj1zZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdO3IuZm9yRWFjaCh0LmJpbmQobnVsbCwwKSksci5wdXNoPXQuYmluZChudWxsLHIucHVzaC5iaW5kKHIpKX0pKCksCmwucD1sLmcmJmwuZy5XRUJQQUNLX1BVQkxJQ19QQVRIfHxsLnB9KSgpOw=="}},"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":"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.119.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/Gc2en3nHxA4","date":"2026-07-27T04:24:18.294Z","timestamp":1785126258294,"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 04:24:18 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-27T07:04:52.530819Z","times_seen":17558191,"resource_available":true,"data":""}},"time_used":49,"timings":{"blocked":0,"dns":1,"connect":8,"send":0,"wait":17,"receive":0,"ssl":23},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVC2Z.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.672Z","timestamp":1785126258672,"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 /crypto/XTVC2Z.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 04:24:18 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: \"2fbbc612d1f48b7101334c2d161a09a1\"\r\nlast-modified: Thu, 11 Jun 2026 10:28:16 GMT\r\nx-amz-id-2: 1Zr15LfFE6AJBTs9CqXVFtRDSdz/hfDvd5uBwNqK1+lAsI+1KD/IPlIkTSMSbdC/68Ntu24UUa5f+UdF1jyeWAUMbW6tx3EG\r\nx-amz-request-id: 4SP1F9B5ER87H37V\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 2fbbc612d1f48b7101334c2d161a09a1\r\nx-amz-version-id: Uy7kYvIAXYqx5v2dM7ZVuNHMppT6Uz4h\r\ncdn-proxyver: 1.55\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 06/11/2026 11:40:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 56f5f21bc3cbeaea263492e00d9d589b\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":1344,"size_decoded":1638,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1344), with no line terminators","md5":"2fbbc612d1f48b7101334c2d161a09a1","sha1":"7c535e878a8833956d04e3c404ac2da6271351a3","sha256":"fe7c3b01cbf8f549d3f420ae771cbc6b706bc3b305957e4cbe7f50a34befacb2","sha512":"a6d48c9393be81c54c1ce586acbb69b840ef6e146a648e2a9ec6a339a5ed26fe46062ad17d5595ab9c811ffa4c1a0db1201d6f978c3ccb037bb7b00ff4887698","ssdeep":"","tlshash":"7d21abc6b368a83493538fe1ba985834f03b31c952e831d865405241335b6efbf98a4a","first_seen":"2025-11-04T15:32:59.383577Z","last_seen":"2026-07-27T07:05:43.394927Z","times_seen":644,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTEgNi4yMlY1LjA3SDUuOTJ2Ny44Nkg3LjV2LS42aDF2LS41NWgxdi0uNTZIMTF2LS41NWguNXYtLjU2SDExdjEuMTFIOS41VjguNDRoMi41OEwxMiAxMC4xMWwuMDgtMy4zM0gxMXYtLjU2Wm0wIDMuOWguNXYuNTVIMTF2LS41NlptLTIgMS42NmgtLjV2LjU1aC0yVjlIN3YuNTVoLjV2LjU2SDh2LjU2aC41di41NUg5di41NlptLjUtMy45SDl2LjU2SDcuNVY3LjlIOSA3VjYuMjJoLjV2LS41NUg5di41NWguNVY3LjlaIiBmaWxsPSIjRDdEN0Q3Ii8+PHBhdGggZD0iTTguNSA2LjIyaC0xdjEuMTFoMXYtMS4xWiIgZmlsbD0iIzI5RjkxRSIvPjxwYXRoIGQ9Ik05IDYuMjJ2LS41NUg3LjV2LjU1aDF2MS4xMWgtMXYtMS4xSDd2MS42NmgyVjYuMjJaIiBmaWxsPSIjMDg3OTAzIi8+PHBhdGggZD0iTTExIDloLTF2MS4xMWgxVjlaIiBmaWxsPSIjN0MwNDA0Ii8+PHBhdGggZD0iTTkuNSAxMC42N0gxMXYtLjU2aC0xVjloMXYxLjExaC41VjguNDRoLTJ2Mi4yM1oiIGZpbGw9IiNFODAwMDAiLz48cGF0aCBkPSJNOCAxMS4yMnYtLjU1aC0uNXYtLjU2SDd2LS41NmgtLjV2Mi4yM2gydi0uNTZIOFoiIGZpbGw9IiMwOTE5RDgiLz48cGF0aCBkPSJNNyA5LjU1VjloLS41di41NUg3Wk04LjUgMTAuNjdIOHYuNTVoLjV2LS41NVpNOC41IDExLjIydi41Nkg5di0uNTZoLS41Wk04IDEwLjY3di0uNTZoLS41di41Nkg4Wk03LjUgOS41NUg3di41NmguNXYtLjU2WiIgZmlsbD0iIzE2QjVGNCIvPjxwYXRoIGQ9Ik0xMi41IDUuMTFIMTJ2LjU2aC41VjUuMVpNMTMgNS42N2gtLjV2LjU1aC41di0uNTVaTTExIDYuMjJoLjV2LTEuMWguNXYtLjU2aC0uNVY0SDExdjIuMjJaIiBmaWxsPSIjOUU5RTlFIi8+PHBhdGggZD0iTTguNSAxMS43OGgtMnYuNTVoMnYtLjU1Wk0xMyA2LjIyaC0ydi41NmgxLjV2MS42NmguNVY2LjIyWk0xMi41MiAxMy40NmgtMi45VjE0SDEzdi0zLjIxaC0uNDh2Mi42N1oiLz48cGF0aCBkPSJNNS41IDQuNTZIMTFWNEg1djEwaDEuNXYtLjU2aC0xVjQuNTZaTTExLjUgOC40NHYxLjY3aC41VjguNDRoLS41Wk05LjUgMTAuNjd2LjU1SDExdi0uNTVIOS41Wk0xMS41IDEwLjExSDExdi41NmguNXYtLjU2WiIvPjxwYXRoIGQ9Ik03LjUgOC40NEg5VjcuOUg3LjV2LjU1Wk05LjUgNi4yMkg5VjcuOWguNVY2LjIyWk0xMS4zIDExLjE0djEuMkg5Ljkzdi41OWgxLjg1di0xLjc5aC0uNDZaIi8+PC9zdmc+"}},"time_used":1,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":1,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCBIOPR.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.709Z","timestamp":1785126258709,"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 /crypto/XTVCBIOPR.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 04:24:18 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: \"27dce8028a14aa80103d867668689c49\"\r\nlast-modified: Wed, 19 Mar 2025 15:23:06 GMT\r\ncdn-cachedat: 08/09/2025 14:44:35\r\nx-amz-id-2: vlm/e3PNZQv4WKjjGEO4y7OyfB1IT91aLo2zj2sqvqjgdIykX2bMFT3B4wpJYBU3L1zCoXAo3Aw=\r\nx-amz-request-id: G6D4VRM1148YRENF\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 27dce8028a14aa80103d867668689c49\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: 6a9937203e8bd99a08b8b8cfea82c522\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":1279,"size_decoded":1544,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1279), with no line terminators","md5":"27dce8028a14aa80103d867668689c49","sha1":"1c5967dc68735b0316bcb27676d0a24798032e59","sha256":"e72f4f5af542fb311e1ff961820f1986e6da5faedf78aa3c0da791edd2636fa4","sha512":"a427392ee389089ed1af3f4667a62eb8a3d34b9950baec24191854d4d41665abe455be5f4918f686fb14c614fd40ada5ed71a55ed1b0c0aab4c0d76fa6fe19bf","ssdeep":"","tlshash":"372106bae298da9d4843c35ceb72d4a1131f60d0b1fbd27565ee87b8b00fcd5e802404","first_seen":"2025-10-28T03:59:43.995711Z","last_seen":"2026-07-27T07:05:43.276086Z","times_seen":606,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMxODI2MTAiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNOSA1LjgxYy4wNyAwIC4xMy4wMS4yLjAzYS4xLjEgMCAwIDEgLjA2LjA0Yy4yLjI3LjI5LjY2LjQxLjguNDMuNDUuOTcuMjQgMS4yNi0uMjQuMDQtLjA2LjA4LS4yMi4xNC0uNDhhMS42NiAxLjY2IDAgMCAxIC4zLS42NmMuMzgtLjM2Ljk3LS40MyAxLjM3LS4wNC4zOS40LjMyLjk5LS4wNCAxLjM3YTEuNjcgMS42NyAwIDAgMS0uNjYuM2MtLjI2LjA2LS40Mi4xLS40OC4xNC0uNDguMy0uNjkuODMtLjI0IDEuMjYuMTQuMTIuNTMuMi44LjQxYS4xLjEgMCAwIDEgLjA0LjA2LjguOCAwIDAgMSAwIC40LjEuMSAwIDAgMS0uMDQuMDZjLS4yNy4yLS42Ni4yOS0uOC40MS0uNDUuNDMtLjI0Ljk3LjI0IDEuMjYuMDYuMDQuMjIuMDguNDguMTRhMS42NiAxLjY2IDAgMCAxIC42Ni4zYy4zNi4zOC40My45Ny4wNCAxLjM3LS40LjM5LS45OS4zMi0xLjM3LS4wNGExLjY3IDEuNjcgMCAwIDEtLjMtLjY2Yy0uMDYtLjI2LS4xLS40Mi0uMTQtLjQ4LS4zLS40OC0uODMtLjY5LTEuMjYtLjIzLS4xMi4xMy0uMi41Mi0uNDEuOGEuMS4xIDAgMCAxLS4wNi4wMy44Mi44MiAwIDAgMS0uNCAwIC4xLjEgMCAwIDEtLjA2LS4wNGMtLjItLjI3LS4yOS0uNjYtLjQxLS44LS40My0uNDUtLjk3LS4yNC0xLjI2LjI0LS4wNC4wNi0uMDguMjItLjE0LjQ4YTEuNjYgMS42NiAwIDAgMS0uMy42NmMtLjM4LjM2LS45Ny40My0xLjM3LjA0LS4zOS0uNC0uMzItLjk5LjA0LTEuMzdhMS42NiAxLjY2IDAgMCAxIC42Ni0uM2MuMjYtLjA1LjQyLS4xLjQ4LS4xNC40OC0uMy42OS0uODMuMjMtMS4yNi0uMTMtLjEyLS41Mi0uMi0uOC0uNDFhLjEuMSAwIDAgMS0uMDMtLjA2LjgyLjgyIDAgMCAxIDAtLjQuMS4xIDAgMCAxIC4wNC0uMDZjLjI3LS4yLjY2LS4yOS44LS40MS40NS0uNDMuMjQtLjk3LS4yNC0xLjI2YTIuMDUgMi4wNSAwIDAgMC0uNDgtLjE0IDEuNjYgMS42NiAwIDAgMS0uNjYtLjNjLS4zNi0uMzgtLjQzLS45Ny0uMDQtMS4zNy40LS4zOS45OS0uMzIgMS4zNy4wNGwuMDQuMDVjLjEyLjE2LjIuMzcuMjYuNjEuMDYuMjYuMS40Mi4xNC40OC4zLjQ4LjgzLjY5IDEuMjYuMjQuMTItLjE0LjItLjUzLjQxLS44YS4xLjEgMCAwIDEgLjA2LS4wNC44LjggMCAwIDEgLjItLjAzWiIgZmlsbD0iI0Q3RjlDMCIvPjwvc3ZnPg=="}},"time_used":1,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":1,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/images/icon/features.svg","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.091Z","timestamp":1785126256091,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/icon/features.svg HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/svg+xml\r\ncontent-length: 1813\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-715\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":1813,"size_decoded":2065,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"06e4c5d2eee4545ca3484b632d67317a","sha1":"71d6c53a0cfe35915044dcf12e9c4bfee8b439cf","sha256":"addcb54945e13fdf1b97acfcf1922700ace343805dc5b50802f0a746b9ff7ea2","sha512":"b69f33bb7dfbeaf870b1d41f49facd249c678977ef5599e5cd5808af968a84c7aafe9092f95c9d49a5d7acd64a2ce61c0120148f85c9f3a365263b3ce255cb9e","ssdeep":"","tlshash":"4b3154a809195ae0d0a193f6c3f47466fc3934d735d260387ace6643ab3b4e80e9b536","first_seen":"2023-05-01T20:32:00Z","last_seen":"2026-07-27T04:25:12.827592Z","times_seen":162,"resource_available":false,"data":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCjxzdmcgd2lkdGg9IjQ2cHgiIGhlaWdodD0iNDRweCIgdmlld0JveD0iMCAwIDQ2IDQ0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPg0KICAgIDxnIGlkPSJDb21wb25lbnRzIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4NCiAgICAgICAgPGcgaWQ9IkZlYXR1cmVzLXdlYiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTIxOC4wMDAwMDAsIC0yMTQuMDAwMDAwKSIgZmlsbC1ydWxlPSJub256ZXJvIiBmaWxsPSIjMjU5RUZBIj4NCiAgICAgICAgICAgIDxnIGlkPSJmZWF0dXJlcyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTEwLjAwMDAwMCwgMjA1LjAwMDAwMCkiPg0KICAgICAgICAgICAgICAgIDxnIGlkPSJ0ZXh0IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMTAuMDAwMDAwLCAwLjAwMDAwMCkiPg0KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTYuMzYxOTM5MSwyNC42Mjg1ODczIEMxNi4xNDY2Mjk2LDI1LjA5NTA5MTIgMTUuNzA3NTMyMywyNS40MTg5MzcgMTUuMTk4MjQ1NiwyNS40ODY4NDE5IEwzLjIwNjk5NTUzLDI3LjA4NTY3NTIgTDEyLjA2MDY2MDIsMzUuOTM5MzM5OCBDMTIuNDIwNDQ3MiwzNi4yOTkxMjY4IDEyLjU3MzMxNTMsMzYuODE2NzcyNSAxMi40NjY3MDM2LDM3LjMxNDI5MzYgTDEwLjE0NjgyNzQsNDguMTQwMzgyNiBMMjAuMjg4ODUwMyw0Mi42NzkyOTM0IEMyMC43MzI4MTQ4LDQyLjQ0MDIzNTUgMjEuMjY3MTg1Miw0Mi40NDAyMzU1IDIxLjcxMTE0OTcsNDIuNjc5MjkzNCBMMzIuMDk0ODQ0Niw0OC4yNzA1MTM2IEwzMC41MTUwNzU4LDM3LjIxMjEzMiBDMzAuNDUxODQ4LDM2Ljc2OTUzNzggMzAuNTg5MzQ2MiwzNi4zMjE4MDg5IDMwLjg5MDA4OTksMzUuOTkwOTkwOCBMMzguOTY0OTg1MiwyNy4xMDg2MDYgTDI2LjgwMTc1NDQsMjUuNDg2ODQxOSBDMjYuMjkyNDY3NywyNS40MTg5MzcgMjUuODUzMzcwNCwyNS4wOTUwOTEyIDI1LjYzODA2MDksMjQuNjI4NTg3MyBMMjEsMTQuNTc5NDU1MyBMMTYuMzYxOTM5MSwyNC42Mjg1ODczIFogTTE5LjYzODA2MDksMTAuMzcxNDEyNyBDMjAuMTc0MzE0OSw5LjIwOTUyOTA5IDIxLjgyNTY4NTEsOS4yMDk1MjkwOSAyMi4zNjE5MzkxLDEwLjM3MTQxMjcgTDI4LjAxNjE1NDQsMjIuNjIyMjEyNyBMNDIuMTk4MjQ1NiwyNC41MTMxNTgxIEM0My4zOTc0MzM5LDI0LjY3MzA0OTkgNDMuOTIzNzEwMiwyNi4xMTM4MjkxIDQzLjEwOTkxMDEsMjcuMDA5MDA5MiBMMzMuNTg0NzU0NiwzNy40ODY2ODAzIEwzNS40ODQ5MjQyLDUwLjc4Nzg2OCBDMzUuNjU4OTgyNyw1Mi4wMDYyNzc1IDM0LjM3MjUxNiw1Mi45MDQyMTkgMzMuMjg4ODUwMyw1Mi4zMjA3MDY2IEwyMSw0NS43MDM2MzM0IEw4LjcxMTE0OTczLDUyLjMyMDcwNjYgQzcuNTg1MDI4NzksNTIuOTI3MDc5NSA2LjI2NTMwOTA1LDUxLjkzNjMxMzkgNi41MzMyOTYzOCw1MC42ODU3MDY0IEw5LjM2MjMxMjIsMzcuNDgzNjMyNSBMLTEuMDYwNjYwMTcsMjcuMDYwNjYwMiBDLTEuOTM5MjY1MDQsMjYuMTgyMDU1MyAtMS40Mjk4ODA4NiwyNC42NzczNzYyIC0wLjE5ODI0NTU4LDI0LjUxMzE1ODEgTDEzLjk4Mzg0NTYsMjIuNjIyMjEyNyBMMTkuNjM4MDYwOSwxMC4zNzE0MTI3IFoiIGlkPSJTaGFwZSIvPg0KICAgICAgICAgICAgICAgIDwvZz4NCiAgICAgICAgICAgIDwvZz4NCiAgICAgICAgPC9nPg0KICAgIDwvZz4NCjwvc3ZnPg=="}},"time_used":333,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":313,"receive":20,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/admin/testimony-images/4128.png","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.111Z","timestamp":1785126256111,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /admin/testimony-images/4128.png HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/png\r\ncontent-length: 15597\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-3ced\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":15597,"size_decoded":15847,"mime_type":"image/png","magic":"PNG image data, 73 x 73, 8-bit/color RGB, non-interlaced","md5":"8fd61654496432da1f1953a1493201c3","sha1":"f0e218a19afdf0929d9ca0920d8632a1e2cb23d3","sha256":"0cdb9c2554b70696278b32f996fecde497320eb6d19cd452cb81690c4f05ed46","sha512":"934fe2eb2b5283657b0adfc6305fc98ba46f62f55d9187e9537a468de5e97803071fca65615b67801916e31d07f35ef8174902db66aad2a76210738652b29d93","ssdeep":"384:UOWZOVcVECKEYFhdWdZ7+HwnWuLvJItyDhih6OnPXu:3WYOVEd3jQdhWWh7hihRvu","tlshash":"f862d0d8e0e8b43df2034dfec3b71ec64139b4277d2535950d0c7806a335a63a20669a","first_seen":"2026-07-27T03:36:45.015537Z","last_seen":"2026-07-27T04:25:12.831216Z","times_seen":2,"resource_available":false,"data":"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"}},"time_used":312,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":293,"receive":19,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/17087.a5eaeb30f7d269f97b41.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.291Z","timestamp":1785126257291,"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-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/17087.a5eaeb30f7d269f97b41.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/crypto-mkt-screener/?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 04:24:17 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-42b\"\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: bac912b71cb7c7934ec63c7572371efb\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":1067,"size_decoded":1275,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (1067), with no line terminators","md5":"aea2379787588b2971ae93e1d08d1a76","sha1":"53a871c666693bc64ceee27711d27c2da35b8e8c","sha256":"3f0a48597dbd15d013833ffec5807ed9172b4072ca308dd16df1be793bcb6f34","sha512":"596f5b4924bfab46ac651687876c9a32ee13e028d0057c8165ce38a28d0049e29f55a5ea96f247401e43f0a6f2a6c054ea0b6e8eadca7d7ba33b29c3145d0cf1","ssdeep":"","tlshash":"6a111f148180f63dbd23f22087a0578a3279745199976e9eed0de17141cfbf52ba5cdc","first_seen":"2026-07-16T20:48:56.383088Z","last_seen":"2026-07-27T07:05:43.352121Z","times_seen":232,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtbEhsRzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLWxIbEc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTk1MCl9LndyYXAtaWlpMTE4b057Ym90dG9tOjA7ZGlzcGxheTpmbGV4O2luc2V0LWlubGluZS1lbmQ6MDtpbnNldC1pbmxpbmUtc3RhcnQ6MDtwb3NpdGlvbjpmaXhlZDt0b3A6MDt6LWluZGV4OjB9LndyYXAtaWlpMTE4b04ucG9zaXRpb25Cb3R0b20taWlpMTE4b057YWxpZ24taXRlbXM6ZmxleC1lbmR9LmJhY2tkcm9wLWlpaTExOG9Oe2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzAtbEhsRyk7Ym90dG9tOjA7aW5zZXQtaW5saW5lLWVuZDowO2luc2V0LWlubGluZS1zdGFydDowO29wYWNpdHk6Ljc7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9LmRyYXdlci1paWkxMThvTntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXR2LWNvbG9yLXBvcHVwLWJhY2tncm91bmQsdmFyKC0tY29sb3ItcG9wdXAtYmFja2dyb3VuZCkpO2JveC1zaXppbmc6Ym9yZGVyLWJveDtwYWRkaW5nOjZweCAwOy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNoO2JveC1zaGFkb3c6MCAycHggNHB4IHZhcigtLWNvbG9yLXNoYWRvdy1wcmltYXJ5LW5ldXRyYWwtZXh0cmEtaGVhdnkpO3otaW5kZXg6MX0uZHJhd2VyLWlpaTExOG9OLnBvc2l0aW9uTGVmdC1paWkxMThvTnttYXJnaW4taW5saW5lLWVuZDo0MHB4O21heC13aWR0aDpjYWxjKDEwMCUgLSA0MHB4KTttaW4td2lkdGg6MjYwcHh9LmRyYXdlci1paWkxMThvTi5wb3NpdGlvbkJvdHRvbS1paWkxMThvTntib3JkZXItc3RhcnQtZW5kLXJhZGl1czo2cHg7Ym9yZGVyLXN0YXJ0LXN0YXJ0LXJhZGl1czo2cHg7ZmxleC1iYXNpczoxMDAlO21hcmdpbi10b3A6dmFyKC0tZHJhd2VyLW1hcmdpbi10b3AtZGlzdGFuY2UsMTAwcHgpO21heC1oZWlnaHQ6Y2FsYygxMDAlIC0gdmFyKC0tZHJhd2VyLW1pbi10b3AtZGlzdGFuY2UsIDEwMHB4KSk7b3ZlcmZsb3c6YXV0b30uZHJhd2VyLWlpaTExOG9OOmZvY3Vze291dGxpbmU6bm9uZX0="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCPEPE.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.624Z","timestamp":1785126258624,"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 /crypto/XTVCPEPE.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 04:24:18 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: \"f5f7138ba13498f6ec6192a2c2152194\"\r\nlast-modified: Thu, 18 May 2023 10:58:20 GMT\r\ncdn-cachedat: 08/14/2025 09:09:58\r\nx-amz-id-2: P34GEoF8m+nwggaizRI1QF82uGabh+9rSYp5GQ+iXEeZeRLrXYvXj2WwmKkJMpYFY1gGf7TI2A8=\r\nx-amz-request-id: XWKDP9GXP7PPC4R1\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: f5f7138ba13498f6ec6192a2c2152194\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: b012ee947a6cfaa952dcdada604a42c4\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":9075,"size_decoded":4666,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (9075), with no line terminators","md5":"f5f7138ba13498f6ec6192a2c2152194","sha1":"fbe6718e371755d5a09be37e16aea552251ba139","sha256":"5fe4ab9970253fb7122357af8608bd12f91ce255d6304bd554f98355b23506b9","sha512":"35dcc981031b74cce72c17fc343c935cb1346e638ef3d315836bb119998eb27632d4d2064d5fb7fbf0f031339af15472e6a90670a88b15ed1e8ef71b74658a21","ssdeep":"96:ba3pu3OVntbsDtQ6cGtLDe+x9j/qsLvq5jKSCuaemBMvMaQuwsYcA2MfdHf/2oK+:6V6ZlBLdLvemBM0pfrPFz2s6UPuW","tlshash":"9412546a5548e76c28c3e39dc77bd0a0234e549ab1afd6d91eefd7f8900f190f902820","first_seen":"2025-04-11T11:28:49.239047Z","last_seen":"2026-07-27T07:05:43.272934Z","times_seen":804,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiM0Rjk4NDMiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJtNy45NSA3LjA1LjYyLjNjLjAxLjAyLjA0LjAzLjA4LjA1LjIxLjEyLjcxLjQgMS4xOC40LjQzIDAgLjk4LS4xIDEuMi0uMTUtLjA0LS4xNS0uMTktLjUtLjM5LS42My0uMjUtLjE2LS41LS4xOC0uNi0uMThsLTEuMzcuMDJhMi4yIDIuMiAwIDAgMC0uNzIuMlptMy40NC40OGEuNi42IDAgMCAxIC4zOC0uNDRjLjMtLjEuNTctLjE4LjkxLS4xNS4zNC4wMy43MS4xOC43My4yLjAxLjAxLjExLjE0LjEyLjIyIDAgLjA4LS4xMi4zMy0uNjUuNDMtLjUzLjEtMS4xMy0uMDQtMS4yNi0uMDhhLjU4LjU4IDAgMCAxLS4yMy0uMThaIiBmaWxsPSIjZmZmIi8+PHBhdGggZD0ibTkuMzggOS4zOC0xLjU0LS4zNWMtLjI2LS4wNi0uNTgtLjA4LS42OC4wNS0uMDguMTEuMjEuMzcuMzcuNDhsMS4xNS41NGMuNC4xNyAxLjU4LjUgMy4wMi41IDEuNDUgMCAxLjg1LS40MSAxLjg2LS42MmwtLjA0LS4yM3YtLjE5Yy4wOS0uMS4yOS0uMzUuMzQtLjUzLjA1LS4xNy0uMS0uMjgtLjE4LS4zbC0uMDcuMjItLjMxLjQzLS41Mi4yMmMtLjI1LjA5LS43OC4wNC0uODQuMDRhMjAuOSAyMC45IDAgMCAxLTIuNTYtLjI1WiIgZmlsbD0iIzIwNjgxNCIvPjxwYXRoIGQ9Ik03LjA4IDQuNmE4LjIgOC4yIDAgMCAwLTIuOTcgNi44N2MwIC41LjE0Ljg4LjM2IDEuMTcuMjIuMy41My41Ljg3LjY1LjY3LjMgMS40Ny4zNSAxLjkzLjM1LjQzIDAgLjc1LS4wMSAxLjA5LS4wM2EyMS43NyAyMS43NyAwIDAgMSAxLjUzLS4wM2MuNSAwIC43OC0uMTQuOTQtLjMxLjE2LS4xNy4yLS4zOC4xOC0uNTEgMC0uMDMuMDEtLjA2LjA0LS4wNnMuMDYuMDIuMDcuMDRjLjAxLjE2LS4wMy40LS4yLjYtLjE5LjItLjUxLjM0LTEuMDMuMzRhMzEuNDQgMzEuNDQgMCAwIDAtMS41My4wNGwtMS4wOS4wMmMtLjQ3IDAtMS4yOC0uMDUtMS45OC0uMzZBMS45NiAxLjk2IDAgMCAxIDQgMTEuNDhjMC0yIC41NS0zLjQzIDEuMzctNC43MWEyMi43NSAyMi43NSAwIDAgMSAxLjYyLTIuMjJ2LS4wMWwuMDctLjA4Yy4wNS0uMDYuMTItLjEzLjIyLS4yLjIxLS4xNC41NC0uMjYgMS4wNy0uMjYuNCAwIC43LjA2LjkyLjE3LjIuMDkuMzMuMjIuNDIuMzcuMTctLjE2LjU0LS40IDEuMDQtLjQuMzMgMCAuNi4wMi44Mi4xLjIyLjEuMzguMjYuNS41MmwuMzMuNjhjLjIzLjEyLjQuMjUuNTEuMzUuMTcuMTUuMzQuMzUuNDIuNDUuMTQuMDYuMjcuMTUuMzUuMjkuMDIuMDIuMDMuMDQuMDMuMDdsLjAyLjFjMCAuMSAwIC4yLS4wMy4zMy4wMy4wNi4wNi4xNS4wNy4yNSAwIC4xMSAwIC4yNC0uMDguMzYtLjA5LjE0LS4yMS4yOC0uMzEuMzkuMDcuMDYuMTUuMTYuMjIuMjZzLjE0LjI0LjE1LjM3Yy4xLjA2LjE1LjEzLjE3LjIyLjAzLjEgMCAuMi0uMDMuMy0uMDguMTctLjIyLjM1LS4zNC40Ny4wNS4wOC4wOS4xOC4xLjI5IDAgLjEyLS4wNi4yNC0uMTkuMzYtLjEyLjEtLjMzLjItLjYyLjI3LS4zLjA3LS43LjEtMS4yMi4xLTIuNDcgMC0zLjk0LS45NS00LjI2LTEuMTZsLS4wNS0uMDNhLjQyLjQyIDAgMCAxLS4yLS4zMmMwLS4wNi4wMy0uMTMuMDgtLjE3LjA2LS4wNS4xNC0uMDguMjUtLjA4LjIyIDAgLjUyLjA4Ljg1LjE3bC4xNy4wNGMuMjguMDguNTcuMTYuODQuMmEyMyAyMyAwIDAgMCAzLjExLjI3Yy40MyAwIC43LS4xMi44OC0uMjguMTgtLjE2LjI4LS4zNy4zMy0uNTNsLjAyLS4wOWEuNjUuNjUgMCAwIDAtLjE0LS4zNSAxLjUgMS41IDAgMCAwLS4yLS4yM2wtLjEuMDlhLjc5Ljc5IDAgMCAxLS4zOC4yLjA2LjA2IDAgMCAxLS4wNy0uMDRjMC0uMDMuMDItLjA2LjA1LS4wNmEuNjguNjggMCAwIDAgLjMzLS4xNyAzLjE4IDMuMTggMCAwIDAgLjQ2LS41NGMuMDYtLjEuMDctLjIuMDctLjMtLjAxLS4xLS4wNC0uMTgtLjA3LS4yMy0uMDktLjExLS40LS4zNS0uOTItLjM1LS4zNCAwLS42LjEzLS43NS4yNy4xNS0uMDYuMzMtLjEuNTYtLjEuNDEgMCAuNy4wNy44Ny4xNy4xOC4wOS4yNi4yLjI3LjMgMCAuMDUtLjAyLjExLS4wNi4xN2EuNjguNjggMCAwIDEtLjIuMTZjLS4xOC4xLS40NC4xOC0uOC4xOGEzLjYgMy42IDAgMCAxLS44Ny0uMDguNTMuNTMgMCAwIDEtLjI0LS4xMi4yLjIgMCAwIDEtLjA1LS4yMmMuMDMtLjA5LjExLS4yLjI1LS4zMWwuMDEtLjAyYy4xLS4xNy40NC0uNSAxLjAxLS41LjQ3IDAgLjc5LjE3Ljk0LjMxYS43Ny43NyAwIDAgMCAuMDEtLjIuNjMuNjMgMCAwIDAtLjI1LS4xM2MtLjE1LS4wNi0uMzgtLjEtLjctLjEtLjQgMC0uNjQuMDgtLjc5LjE3YS44LjggMCAwIDAtLjIxLjE3bC0uMDIuMDJhLjA2LjA2IDAgMCAxLS4wOC0uMDEuMDUuMDUgMCAwIDEgLjAxLS4wN2wuMDItLjAyYS44LjggMCAwIDEgLjIyLS4xOGMuMTctLjEuNDQtLjE5Ljg1LS4xOS4zMyAwIC41Ny4wNS43NC4xMWwuMTcuMDdhLjY1LjY1IDAgMCAwLS4yNy0uMjFjLS4wMiAwLS4wNCAwLS4wNS0uMDJhMS4zIDEuMyAwIDAgMC0uNDItLjA4Yy0uMyAwLS42My4wNy0uODMuMTNhLjA2LjA2IDAgMCAxLS4wNy0uMDMuMDUuMDUgMCAwIDEgLjAzLS4wNmMuMjEtLjA3LjU1LS4xNS44OC0uMTQuMSAwIC4yLjAxLjI5LjAzbC0uMy0uMzJhMi4yNSAyLjI1IDAgMCAwLS41OC0uMzcgMi4xOSAyLjE5IDAgMCAwLS45Mi0uMjMgMy4yIDMuMiAwIDAgMC0uODcuMTJsLjA2LjA4LjAzLjA0Yy4xMi4xNy4yNC4zNC4zMi41LjEuMTYuMTUuMzMuMTMuNDgtLjAxLjAzLS4wNC4wNS0uMDcuMDQtLjAzIDAtLjA1LS4wMy0uMDQtLjA2LjAyLS4xMS0uMDMtLjI1LS4xMi0uNDItLjA4LS4xNS0uMi0uMy0uMzEtLjQ4bC0uMDQtLjA1YTEuMTggMS4xOCAwIDAgMC0uMDktLjExYy0uMjUtLjI4LS42My0uNC0xLjM4LS40LS43NiAwLTEuMTMuNDQtMS4yMy41N2wtLjAyLjAyYS4wNi4wNiAwIDAgMS0uMDguMDEuMDUuMDUgMCAwIDEgMC0uMDdsLjAxLS4wM2MuMS0uMTIuNS0uNiAxLjMyLS42LjMyIDAgLjU4LjAyLjguMDdhMS4yNCAxLjI0IDAgMCAwLS4xMS0uMzIuODcuODcgMCAwIDAtLjQxLS40IDIgMiAwIDAgMC0uODctLjE1Yy0uNTIgMC0uODIuMTItMSAuMjVhMSAxIDAgMCAwLS4yNi4yNVptMi43OC40Yy4yMS4wNi4zOC4xNi41Mi4zYTMuMzEgMy4zMSAwIDAgMSAuOTQtLjE0Yy4zMyAwIC42NC4wOS45LjJsLS4yNi0uNTZhLjg0Ljg0IDAgMCAwLS40NS0uNDYgMi4xIDIuMSAwIDAgMC0uNzgtLjFjLS40OSAwLS44NS4yNS0uOTkuNC4wNi4xMS4xLjIzLjEyLjM2Wm0zLjYgNC43NmEuNDkuNDkgMCAwIDEtLjE1LjEzYy0uMTMuMDgtLjM0LjE0LS42NS4xNi0uNC4wMi0xLjM0LjAyLTIuMzItLjA2LS41LS4wNC0xLS4xLTEuNDUtLjItLjQ1LS4xLS44NS0uMjQtMS4xMy0uNDJhLjA1LjA1IDAgMCAxLS4wMi0uMDcuMDYuMDYgMCAwIDEgLjA4LS4wMmMuMjYuMTcuNjUuMyAxLjEuNC40NC4xLjk0LjE2IDEuNDMuMi45OC4wOSAxLjkyLjA4IDIuMy4wNi4zLS4wMS40OS0uMDcuNi0uMTMuMTItLjA3LjE1LS4xNC4xNS0uMTd2LS4wMmwuMDItLjAxYy4xMi0uMTEuMjctLjMuMzQtLjQ3YS40LjQgMCAwIDAgLjA0LS4yMy4yMi4yMiAwIDAgMC0uMDgtLjEzbC0uMDEuMDNjLS4wNi4xNy0uMTYuNC0uMzYuNTctLjIuMTktLjUuMzItLjk2LjMyLS44NyAwLTIuNDctLjE0LTMuMTMtLjI3LS4yOC0uMDUtLjU4LS4xMy0uODYtLjJsLS4xNi0uMDVhMy42NiAzLjY2IDAgMCAwLS44Mi0uMTZjLS4xIDAtLjE0LjAyLS4xNy4wNGEuMTIuMTIgMCAwIDAtLjA0LjFjMCAuMDQuMDIuMDkuMDQuMTMuMDMuMDUuMDcuMDguMS4xbC4wNS4wNGMuMzIuMiAxLjc3IDEuMTQgNC4yIDEuMTQuNTIgMCAuOS0uMDQgMS4yLS4xLjI4LS4wNy40Ni0uMTYuNTctLjI1LjEtLjEuMTQtLjIuMTQtLjI4YS40LjQgMCAwIDAtLjA1LS4xOFptLTEuOTgtMi4yOWMtLjAxLjA1IDAgLjA5LjAzLjEyLjAzLjA0LjEuMDcuMi4xLjE4LjA0LjQ3LjA3LjgzLjA3LjM0IDAgLjU5LS4wOC43NC0uMTcuMDgtLjA1LjEzLS4xLjE3LS4xNC4wMy0uMDQuMDQtLjA3LjA0LS4wOSAwLS4wNS0uMDYtLjE0LS4yMS0uMjJhMS43OCAxLjc4IDAgMCAwLS44Mi0uMTVjLS42NCAwLS45Mi4zMy0uOTguNDhaIi8+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMTAuNjMgNi42M2MuNC4zMi42OS43Mi44Mi45OS4wMi4wMiAwIC4wNS0uMDIuMDZhLjA2LjA2IDAgMCAxLS4wNy0uMDIgMy4yIDMuMiAwIDAgMC0uOC0uOTYgMi4yIDIuMiAwIDAgMC0xLjQ3LS41MyAyLjggMi44IDAgMCAwLTEuMzkuMzJjLS4yMi4xNC0uMjQuMy0uMjIuMzZ2LjAzYS43My43MyAwIDAgMCAuMDMuMDdsLjAzLS4wMS4xNC0uMTJhMiAyIDAgMCAxIC41LS4zNGMuMjMtLjEuNTItLjE3LjkxLS4xNy42MiAwIDEuMTMuMzMgMS4zMi41LjE3LjA1LjMyLjIxLjQzLjM3LjEuMTcuMTkuMzUuMjMuNDdhLjIuMiAwIDAgMSAuMDguMTRjLjAxLjA3LS4wMy4xNS0uMTQuMjJsLS4xNy4xNGMtLjI2LjI0LS42OS42Mi0xLjU4Ljg0LS4wMyAwLS4wNi0uMDEtLjA2LS4wNC0uMDEtLjAzIDAtLjA2LjA0LS4wNi43Ni0uMiAxLjE3LS41IDEuNDMtLjczYTI4IDI4IDAgMCAwLTEuNTQtLjA3Yy0uMjUgMC0uNDgtLjEtLjY1LS4yMmExLjUgMS41IDAgMCAxLS4zOC0uMzguMDUuMDUgMCAwIDEgLjAyLS4wN2MuMDMtLjAxLjA2IDAgLjA4LjAyLjA2LjA5LjE4LjIzLjM0LjM0LjE3LjEyLjM3LjIuNi4yLjQ3IDAgMS4yNy4wNiAxLjY0LjA4bC4xNy0uMTNjLjA4LS4wNi4xLS4xLjEtLjEzYS4wOS4wOSAwIDAgMC0uMDMtLjA2Yy0uMTcuMDUtLjU2LjEzLTEuMDQuMTMtLjY1IDAtMS4xMy0uMjgtMS4zNi0uNDItLjE5LS4xLS41Ni0uMjctLjczLS4zM2wtLjExLS4wNS4xMS0uMDVjLjM2LS4xNS42MS0uMi43LS4yMWgxLjY0YTEuOTggMS45OCAwIDAgMC0yLjYyLjIuMzIuMzIgMCAwIDEtLjA1LjA0LjEyLjEyIDAgMCAxLS4wNi4wMWMtLjA2IDAtLjA4LS4wNS0uMDktLjA3bC0uMDMtLjA4di0uMDNjLS4wNS0uMTIuMDEtLjMyLjI2LS40OC4yNS0uMTYuNy0uMyAxLjQ1LS4zM2EyLjMgMi4zIDAgMCAxIDEuNTQuNTZabS0uMjYuMjhjLjE0LjA0LjI3LjE3LjM4LjMzLjEuMTQuMTYuMy4yLjQxLS4xNi4wNS0uNTMuMTItLjk3LjEyLS42MiAwLTEuMDctLjI3LTEuMy0uNC0uMTYtLjEtLjQ0LS4yMi0uNjMtLjMuMjgtLjExLjQ4LS4xNS41NS0uMTZoMS43N1oiLz48cGF0aCBkPSJtMTEuNjIgOC4wNi4wNi0uMDljLjEuMDUuMjUuMDcuNC4wN2guMzdjLjAzIDAgLjA2LjAyLjA2LjA1IDAgLjAyLS4wMi4wNS0uMDUuMDVhMi45IDIuOSAwIDAgMS0uNjEtLjAybC41OS41OGMuMDIuMDIuMDIuMDUgMCAuMDdhLjA2LjA2IDAgMCAxLS4wOCAwbC0uNzQtLjcxWk02LjkgOS4wN2MwIC4wMy0uMDMuMDUtLjA2LjA0YS4wNS4wNSAwIDAgMS0uMDUtLjA2LjIuMiAwIDAgMSAuMDItLjA1LjczLjczIDAgMCAxIC4yMi0uMjNjLjE2LS4xMS40Mi0uMi43OS0uMTEuMDMgMCAuMDUuMDMuMDQuMDYgMCAuMDMtLjAzLjA0LS4wNi4wNC0uMzUtLjA3LS41NyAwLS43LjFhLjYyLjYyIDAgMCAwLS4xOS4xOXYuMDJaTTcuNiA4LjMyYy4wMy4wMi4wNC4wNS4wMy4wNy0uMDMuMDUtLjA3LjA3LS4xMS4wOGEuNi42IDAgMCAxLS4xMy4wMkg3LjE4Yy0uMDMuMDEtLjA2IDAtLjA3LS4wMy0uMDEtLjAzIDAtLjA2LjA0LS4wN2EuNS41IDAgMCAxIC4xIDBoLjEzbC4xLS4wMmMuMDQgMCAuMDUtLjAyLjA1LS4wMmEuMDYuMDYgMCAwIDEgLjA3LS4wM1oiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMS42MSAxMS40OWMuMDUuMDMuMS4wOC4xMi4xNC4wMy4wNC4wNC4wOS4wNC4xNCAwIC4wNi0uMDMuMS0uMDguMTVhLjA2LjA2IDAgMCAxLS4wOCAwIC4wNS4wNSAwIDAgMSAwLS4wNy4xMy4xMyAwIDAgMCAuMDUtLjA5YzAtLjAyIDAtLjA1LS4wMi0uMDhhLjQ1LjQ1IDAgMCAwLS4xMy0uMTRjLS4xOC4wOS0uMjMuMjMtLjI0LjI5di4xMmMuMDEuMDMuMDQuMDYuMTIuMDcuMTcuMDMuMzItLjAzLjM4LS4wNWwuNTYtLjM4aC40N2wuMDQuMzguNC0uMzJhLjA2LjA2IDAgMCAxIC4wNy4wMWMuMDIuMDIuMDIuMDYgMCAuMDdsLTEuMjIuOTZjMCAuMDQuMDEuMS4wNC4xNS4wMy4wNi4wOC4xMy4xNS4xNy4xNS4wNy4zNC4wNi40Mi4wM2wuNTMtLjYyYS4wNi4wNiAwIDAgMSAuMDggMGMuMDIgMCAuMDIuMDQgMCAuMDZsLS41My42NGMtLjAyLjA0LS4wMy4xLS4wMS4xNC4wMi4wNC4wNy4wOS4yMS4xLjE2IDAgLjI2IDAgLjMyLS4wMmwuMDYtLjAydi0uMDFsLjUtLjU4YS4wNi4wNiAwIDAgMSAuMDgtLjAxYy4wMy4wMi4wMy4wNS4wMS4wN2wtLjQ4LjU3YS4xOS4xOSAwIDAgMCAwIC4xMmMwIC4wMi4wMi4wMy4wNC4wNWEuMi4yIDAgMCAwIC4xLjAyLjMuMyAwIDAgMCAuMTYtLjA1bC4xOS0uMTVjLjEyLS4xMi4yNC0uMjcuMy0uMzdhLjA2LjA2IDAgMCAxIC4wOS0uMDFjLjAyLjAxLjAzLjA1LjAxLjA3LS4wNy4xLS4yLjI1LS4zMi4zOC0uMDcuMDYtLjE0LjEyLS4yMS4xNmEuNDEuNDEgMCAwIDEtLjIyLjA3LjMyLjMyIDAgMCAxLS4xNi0uMDQuMi4yIDAgMCAxLS4wOC0uMS4yNC4yNCAwIDAgMS0uMDItLjA4bC0uMDIuMDFjLS4wOC4wMi0uMi4wMy0uMzYuMDItLjE3IDAtLjI2LS4wNy0uMy0uMTZhLjI1LjI1IDAgMCAxLS4wMi0uMTQuNzMuNzMgMCAwIDEtLjQyLS4wNi40Ni40NiAwIDAgMS0uMi0uMjIuNTUuNTUgMCAwIDEtLjA0LS4wOC4yLjIgMCAwIDEtLjE1IDAgLjE1LjE1IDAgMCAxLS4xLS4wNi4xNy4xNyAwIDAgMS0uMDEtLjFjMC0uMDMgMC0uMDYuMDItLjA5aC0uMDFhLjM3LjM3IDAgMCAxLS4xMi0uMTIuMi4yIDAgMCAxLS4wMy0uMTMuNC40IDAgMCAxIC4wNC0uMTIuNy43IDAgMCAxIC4wMy0uMDcuODMuODMgMCAwIDEtLjI5LjAyYy0uMS0uMDItLjE3LS4wOC0uMi0uMTRhLjI3LjI3IDAgMCAxLS4wMS0uMTYuNi42IDAgMCAwLS4wNS0uMS40LjQgMCAwIDAtLjEtLjEuMjIuMjIgMCAwIDAtLjE2LS4wNGMtLjA2LjAyLS4xNC4wNi0uMi4xNmEuMjEuMjEgMCAwIDAtLjAyLjE0YzAgLjA0LjAzLjA5LjA2LjE0YTEuNDggMS40OCAwIDAgMCAuMTcuMmwuMTIuMTRjLjEuMTIuMTQuMjcuMTUuNC4wMS4xMiAwIC4yNC0uMDIuMzEuMTYuMjcuNzYuODIgMiAuODIuNTkgMCAxLS4wOSAxLjI4LS4yYTEgMSAwIDAgMCAuNDgtLjMxdi0uMDJhMy43MyAzLjczIDAgMCAwLS41Ni0uODljLS4xLS4xNC0uMjItLjI5LS4zNS0uNDMtLjE4LS4yLS4zNy0uMzgtLjU1LS40OC0uMTktLjEtLjMtLjIyLS40LS4zNGE0LjEzIDQuMTMgMCAwIDAtLjAzLS4wNC44LjggMCAwIDAtLjQtLjI4LjM4LjM4IDAgMCAwLS4yNy4wMmMtLjEuMDUtLjE4LjExLS4yNy4xOWwtLjE3LjE1YTcuNDcgNy40NyAwIDAgMS0uMjYuMjJabTMuMzYgMS44NGEzLjg0IDMuODQgMCAwIDAtLjU3LS45Yy0uMS0uMTUtLjIzLS4zLS4zNS0uNDQtLjE4LS4yLS4zOC0uNC0uNTktLjUtLjE2LS4xLS4yNi0uMjEtLjM2LS4zM2wtLjAzLS4wM2EuOS45IDAgMCAwLS40Ni0uMzIuNS41IDAgMCAwLS4zNS4wM2MtLjEuMDUtLjIuMTItLjMuMmwtLjE3LjE2LS4wOS4wOGEuODcuODcgMCAwIDEtLjIxLjE1LjU3LjU3IDAgMCAwLS4yOS4yNi41LjUgMCAwIDAtLjEyLS4xNC4zNC4zNCAwIDAgMC0uMjYtLjA2Yy0uMS4wMi0uMi4wOS0uMjYuMjJhLjMxLjMxIDAgMCAwLS4wNC4yYy4wMS4wNi4wNC4xMi4wOC4xN2ExLjU3IDEuNTcgMCAwIDAgLjE4LjIybC4xMi4xM2MuMDguMS4xMS4yMi4xMi4zNS4wMS4xMiAwIC4yMy0uMDIuM2wtLjAxLjAyLjAxLjAxYy4xNy4zLjgxLjg5IDIuMS44OS42IDAgMS4wNC0uMDkgMS4zNC0uMi4zLS4xMS40Ni0uMjUuNTMtLjM3YS4zMy4zMyAwIDAgMCAuMDMtLjA0LjA1LjA1IDAgMCAwLS4wMy0uMDZabS0zLjE0LTEuMjhhLjc2Ljc2IDAgMCAwLS4xLjE3LjMuMyAwIDAgMC0uMDMuMWwuMDEuMDVhLjI3LjI3IDAgMCAwIC4xLjFsLjgtLjc4aC0uMjRsLS41NC4zNlptLjg3LS4zLS44My44YS4yOC4yOCAwIDAgMC0uMDMuMXYuMDRsLjAzLjAyaC4wOGEuMDguMDggMCAwIDAgLjAzLS4wNXYtLjAybC43NS0uNTktLjAzLS4zWiIvPjxwYXRoIGQ9Ik0xMC4zMiA2LjJjLS4yMiAwLS40NS4wMi0uNTkuMDZhLjA2LjA2IDAgMCAxLS4wNi0uMDRjLS4wMS0uMDMgMC0uMDYuMDQtLjA2LjE1LS4wNC4zOC0uMDcuNjItLjA2LjIzLjAyLjQ4LjA4LjYyLjI1YTEuNDYgMS40NiAwIDAgMSAuMy45NWMtLjAxLjAyLS4wNC4wNS0uMDcuMDRhLjA1LjA1IDAgMCAxLS4wNS0uMDUgMS4zNiAxLjM2IDAgMCAwLS4yNy0uODhjLS4xMS0uMTMtLjMxLS4xOS0uNTQtLjJaIi8+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNOC44MyA2Ljk0Yy0uMDUuMS0uMTkuMzMtLjE4LjQ2LjE1LjA4LjUuMjYuNzguMzQuMzUuMS42LS4xOS42LS40NGEuNi42IDAgMCAwLS4xNS0uNEg4Ljg2bC0uMDMuMDRabS4xMy4zMmMuMDcgMCAuMTQtLjA2LjE0LS4xMyAwLS4wOC0uMDctLjE0LS4xNC0uMTQtLjA4IDAtLjE0LjA2LS4xNC4xNCAwIC4wNy4wNi4xMy4xNC4xM1ptLjEuMjNjLjA1IDAgLjEtLjA0LjEtLjEgMC0uMDQtLjA1LS4wOS0uMS0uMDktLjA2IDAtLjEuMDUtLjEuMXMuMDQuMDkuMS4wOVptLjc0LS4yYzAgLjEtLjEuMi0uMi4yLS4xMiAwLS4yMS0uMS0uMjEtLjJzLjA5LS4yLjItLjJjLjEyIDAgLjIxLjEuMjEuMlpNMTEuNzEgNy43NWMtLjAyLS4xNy0uMDItLjU0LjEzLS42OHMuNjYtLjE2LjktLjE1Yy4wNi4wNi4yLjI2LjE4LjUxYS40My40MyAwIDAgMS0uMy40Yy0uMiAwLS42NSAwLS45LS4wOFpNMTIgNy40Yy4wOCAwIC4xNC0uMDYuMTQtLjEzIDAtLjA4LS4wNi0uMTMtLjE0LS4xMy0uMDcgMC0uMTQuMDUtLjE0LjEzIDAgLjA3LjA3LjEzLjE0LjEzWm0uMS4yM2MuMDUgMCAuMS0uMDQuMS0uMSAwLS4wNC0uMDUtLjA4LS4xLS4wOHMtLjEuMDQtLjEuMDljMCAuMDUuMDUuMDkuMS4wOVptLjc1LS4yYzAgLjExLS4xLjItLjIxLjItLjEyIDAtLjItLjA5LS4yLS4yIDAtLjEuMDgtLjIuMi0uMi4xMSAwIC4yLjEuMi4yWiIvPjxwYXRoIGQ9Ik0xMy4xOCAxMC40NWEuNTQuNTQgMCAwIDEtLjMxLjU5bC0uMDctLjE0YS4zOS4zOSAwIDAgMCAuMjItLjQzbC4xNi0uMDJaIi8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCDEEPB.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.697Z","timestamp":1785126258697,"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 /crypto/XTVCDEEPB.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 04:24:18 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: \"b6610fc490e9c802c350c5cb2341ebc3\"\r\nlast-modified: Wed, 13 Nov 2024 14:04:56 GMT\r\ncdn-cachedat: 08/14/2025 09:16:49\r\nx-amz-id-2: SRWm8iNsUl8hY+2+6XkoXItD/CrCEX4MR2Vnw2hT9h7ma26BlW77UQcD3urGTzQKbQPOdfVTUPU=\r\nx-amz-request-id: D42JF9ZEE4TRS80T\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: b6610fc490e9c802c350c5cb2341ebc3\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: 2cbb440d6115b0d05c836748013a8f04\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":268,"size_decoded":1123,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with no line terminators","md5":"b6610fc490e9c802c350c5cb2341ebc3","sha1":"d93f1362c0bcb4f364575e6e6e73a932f816f360","sha256":"fe98b92255028eb623c6b5d4c62d1c0f01a465607c353a7f986df5d7c131c290","sha512":"af07b1ebca55e13136a06c93a49383ee9e7d1373e1fc802227aa0562b3707c68a9110fd9636aab34cec5bcb74b4b11a7d2668d120f598b2c75bf8843a12b73bb","ssdeep":"","tlshash":"55d02bffa3bc9808951187f476a4609110e6b4f5b1840db5b15057d8bac96db3c14a5c","first_seen":"2025-05-05T16:49:27.811294Z","last_seen":"2026-07-27T07:05:43.379074Z","times_seen":781,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMxMzQ5RUMiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTEuODggNkg0djIuNWgxMXYtLjA2QzE1IDYuOTEgMTMuNiA2IDExLjg4IDZaTTE1IDkuNUg0VjEyaDcuODhDMTMuNiAxMiAxNSAxMS4xIDE1IDkuNTZWOS41WiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg=="}},"time_used":1,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":1,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCEUL.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.721Z","timestamp":1785126258721,"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 /crypto/XTVCEUL.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 04:24:18 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: \"5050814790a7aa8071b864b0295a5bb6\"\r\nlast-modified: Mon, 17 Apr 2023 13:19:42 GMT\r\ncdn-cachedat: 08/14/2025 09:30:43\r\nx-amz-id-2: 61Gfu1m3VbkiNrstPMLOVMrlsXh51SSlHvuuvIslyuCF55AKxHZqXF7g77ghNrpgdXmCjzvB/7M=\r\nx-amz-request-id: CGXQ5Y7MDRKH5BP5\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 5050814790a7aa8071b864b0295a5bb6\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: 926f86430fdb1a6509ead7f8a4565f97\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":599,"size_decoded":1241,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (599), with no line terminators","md5":"5050814790a7aa8071b864b0295a5bb6","sha1":"cfbb3bf140b7cf34c5794c33486b15b720f51796","sha256":"ecd167db8ee8a0d6584d418f9b3cb833931abc4f0b69993e4ce9e28679d60594","sha512":"d5090757b5e5d29ed0d401bff8800d2982e467b31262cf906faccf949e21055396c7be4ab856000332711b748f97e7fec67358f9601f1c25f931e4afd56a3097","ssdeep":"","tlshash":"d0f0ac616118aa952483d379cfa883f25717c0c2e94fc2dcb4f24b78304f2a2fc82b10","first_seen":"2026-04-19T11:10:08.102216Z","last_seen":"2026-07-27T07:05:43.349548Z","times_seen":213,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMxQjJCM0EiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNNC4xIDcuNDhjLS4yNC0uNDUtLjAzLS45OC40Ni0xLjJsNS4wMy0yLjJhMS4wMiAxLjAyIDAgMCAxIDEuMzEuNDRjLjI0LjQ1LjAzLjk4LS40NiAxLjJMNS40IDcuOTJjLS41LjItMS4wOC4wMS0xLjMxLS40NFoiIGZpbGw9IiMzN0JFQzEiLz48cGF0aCBkPSJNNC4xIDExLjUyYy0uMjMtLjQyLS4wMy0uOTIuNDQtMS4xMmwzLjExLTEuMzJjLjQ3LS4yIDEuMDQtLjAyIDEuMjYuNC4yMi40Mi4wMi45Mi0uNDUgMS4xMmwtMy4xMSAxLjMyYy0uNDcuMi0xLjA0LjAyLTEuMjYtLjRaIiBmaWxsPSIjRkFCMjQ0Ii8+PHBhdGggZD0iTTcuMSAxMy40OGMtLjI0LS40NS0uMDMtLjk4LjQ2LTEuMmw1LjAzLTIuMmExLjAyIDEuMDIgMCAwIDEgMS4zMS40NGMuMjQuNDUuMDMuOTgtLjQ2IDEuMmwtNS4wMyAyLjJjLS41LjItMS4wOC4wMS0xLjMxLS40NFoiIGZpbGw9IiNFNTYxNUQiLz48L3N2Zz4="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCIRYS.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.749Z","timestamp":1785126258749,"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 /crypto/XTVCIRYS.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 04:24:18 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: \"9e75e46a6fc179dea842d36529b942d3\"\r\nlast-modified: Wed, 21 Jan 2026 16:21:57 GMT\r\nx-amz-id-2: kTuu7jddID8f9lSBckstYmCBH8PusSifCur9dyhPh1d1hum7sNsXQZMj1S0fXT6EKlXXe4bii4k=\r\nx-amz-request-id: DCQK4MRQF7RPD0RN\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 9e75e46a6fc179dea842d36529b942d3\r\ncdn-proxyver: 1.43\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 01/21/2026 16:40:55\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 7e795619f4c8f1670263dc9684b17904\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":357,"size_decoded":1167,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (357), with no line terminators","md5":"9e75e46a6fc179dea842d36529b942d3","sha1":"25a988c9046924688d7e9b471bf6f69865ebfeaa","sha256":"301cc444a1dda94e2800d322334a39961456e102013051daac5941119a608263","sha512":"91b963bfaf9737925d8820de563e95a86ee83378edf21d617c41fc76c36f9d61c1576bc9355cc645384cf16cbe8c9f8f9c8fea09f7b90f0d99143b9b97fb4439","ssdeep":"","tlshash":"00e061ad91dc541c3803a788433f5c42234fd0e0f05401a478fd6329e14f991dc0ad14","first_seen":"2026-05-29T07:08:04.322213Z","last_seen":"2026-07-27T07:05:43.251046Z","times_seen":185,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiM1MEZGRDYiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTAuMSAxNEg2LjA0TDYgMTMuOTZ2LS4wM2EuMS4xIDAgMCAxIDAtLjA0bDEuODItOS44NGMwLS4wMi4wMi0uMDMuMDMtLjA0QS4wNi4wNiAwIDAgMSA3LjkgNEgxMS45NmwuMDMuMDN2LjAzYS4xLjEgMCAwIDEgMCAuMDRsLTEuODIgOS44NGMwIC4wMi0uMDEuMDMtLjAzLjA0YS4wNi4wNiAwIDAgMS0uMDQuMDJaIiBmaWxsPSIjMTcxQTFCIi8+PC9zdmc+"}},"time_used":1,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":1,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCZORA2.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.755Z","timestamp":1785126258755,"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 /crypto/XTVCZORA2.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 04:24:18 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: \"66affeec04797fdd32ec32b0ae69989f\"\r\nlast-modified: Mon, 02 Jun 2025 14:58:09 GMT\r\ncdn-cachedat: 08/09/2025 14:43:29\r\nx-amz-id-2: dxuuyG+uqwUzpUm53yUojIC41hda4U8YRFdBVl73DTaugWyqsKBqQbCj0qG3Z4LynQLEjC2xTq0=\r\nx-amz-request-id: NZ720KV711SV1C74\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 66affeec04797fdd32ec32b0ae69989f\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: 421dbad86bdf460e0728c77605e602e5\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":8274,"size_decoded":4494,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (8274), with no line terminators","md5":"66affeec04797fdd32ec32b0ae69989f","sha1":"0779c0c9ab908948dfe1523bd0631a93ceb20e7e","sha256":"65d2f979b6b210c70460ecc79581c7aacc533f7614bffcd346fa5540295b9233","sha512":"d660128307eebba2f29cd75ec3f6769e31cd8d229a0cacace2f1b190498ffa2f4d99ae304c923b95e8a1575aee9f4e5900645f833961a809f43d364aafb13218","ssdeep":"192:Dn7lUSOUCtLKlmLUrne1oN22H1LfneNot:D2SUelmgrneg22H1rVt","tlshash":"560202f5a54c93ad5843c698cb7680b0330f50f9b2ab82e81cefd774704b9e5e953864","first_seen":"2025-10-20T23:20:30.274526Z","last_seen":"2026-07-27T07:05:43.359636Z","times_seen":668,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNOS4xNCA0Yy0uMi4xMS0uMzcuMjItLjUyLjMzLS4zLjIyLS41Ni40OS0uNzYuOC0uMi4zMi0uMzQuNjYtLjQgMUEzLjIxIDMuMjEgMCAwIDAgOC45IDkuNGMuNC4yNC44Ni40IDEuMzcuNDYuNS4wNS45OC4wMiAxLjQ2LS4xLjQ3LS4xMS45My0uMzkgMS40LS44My0uMDUuMTMtLjEuMjQtLjE4LjMzYTMuMTkgMy4xOSAwIDAgMS0yLjA0IDEuMTNjLS40Ni4wNC0uODUuMDQtMS4xOCAwLS40Mi0uMDUtLjgtLjE2LTEuMS0uMzMtLjMxLS4xNy0uNi0uNDItLjg1LS43NWE2LjggNi44IDAgMCAxLS42MS0uOTdjLS4xNC0uMjUtLjIyLS41LS4yNS0uNzUtLjExLS44OS4wOS0xLjcuNi0yLjQ0LjA4LS4xMS4yMS0uMjkuNC0uNTJsLjM2LS40Ni4yOC0uMTYuNTctLjAxWiIgZmlsbD0iIzNGNzNGMiIvPjxwYXRoIGQ9Ik05LjU4IDQuMDNjLS4zNy4xOC0uNjcuMzYtLjkuNTUtLjI3LjIyLS40OS41LS42NC44MmEyLjg3IDIuODcgMCAwIDAtLjA4IDIuMzYgMi44NCAyLjg0IDAgMCAwIDEuNyAxLjY0IDMuMTIgMy4xMiAwIDAgMCAzLjE2LS42N2MuMS0uMTEuMi0uMjIuMjctLjMyLjItLjMuNC0uNjQuNTctMS4wNC0uMDIuMjctLjA4LjU0LS4xNy44YTUuNiA1LjYgMCAwIDEtLjM0Ljc2IDMuMjUgMy4yNSAwIDAgMS0yLjg3LjkzIDMuMzQgMy4zNCAwIDAgMS0xLjM2LS40NiAzLjIxIDMuMjEgMCAwIDEtMS40Ni0zLjI2Yy4wNi0uMzUuMi0uNy40LTEuMDEuMi0uMzEuNDYtLjU4Ljc2LS44LjE1LS4xLjMyLS4yMi41Mi0uMzNsLjQ0LjAzWiIgZmlsbD0iIzUwN0NGMiIvPjxwYXRoIGQ9Im04LjU4IDQuMDEtLjMuMTZjLS40NC4zMi0uODIuNy0xLjE0IDEuMTVhMyAzIDAgMCAwLS40MS45MmMtLjEuMzEtLjE0LjY1LS4xNiAxYTMuNjYgMy42NiAwIDAgMCAuOTUgMi42MiAzLjQ0IDMuNDQgMCAwIDAgMi41NSAxLjEgMy45MyAzLjkzIDAgMCAwIDMuNTItMS45NGMuMTUtLjIxLjI2LS40LjM0LS41NXYuMjVjLS4xNi4yNy0uMzUuNTYtLjU3Ljg1LS4zNS40OS0uNzguODYtMS4yOCAxLjEyLS42Ny4zNC0xLjM2LjUtMi4wOS40N2EzLjcgMy43IDAgMCAxLTMuMjEtMi4xMiA0LjIxIDQuMjEgMCAwIDEgLjE2LTMuODRjLjEyLS4yMi4yNy0uNDEuNDUtLjYuMTYtLjE2LjM1LS4zMy41OC0uNWwuMTYtLjAzLjQ1LS4wNloiIGZpbGw9IiMzODVCQ0MiLz48cGF0aCBkPSJNMTAuMSA0LjExYy0uMjguMS0uNTMuMjMtLjc0LjM1QTIuNTcgMi41NyAwIDAgMCA4LjE3IDZhMi41NiAyLjU2IDAgMCAwIDEuNzkgMy4xMiAyLjcgMi43IDAgMCAwIDIuMjctLjQzYy4zNC0uMjYuNTktLjU4Ljc0LS45Ni4xNC0uMzUuMjUtLjc4LjMyLTEuMzIuMTguMzMuMzMuNjcuNDYgMS4wMi0uMDYtLjA2LS4wOS0uMDgtLjA5LS4wNS0uMTguNC0uMzcuNzUtLjU3IDEuMDRhMi40IDIuNCAwIDAgMS0uNi42IDMuMTIgMy4xMiAwIDAgMS0yLjgyLjQgMi43MyAyLjczIDAgMCAxLTEuNy0xLjY1IDIuOTQgMi45NCAwIDAgMSAuMDctMi4zNmMuMTYtLjMyLjM3LS42LjY0LS44Mi4yMy0uMi41My0uMzcuOS0uNTVsLjUxLjA4WiIgZmlsbD0iIzY2ODVFRiIvPjxwYXRoIGQ9Ik03Ljk3IDQuMWMtLjIzLjE3LS40Mi4zNC0uNTguNS0uMTguMTktLjM0LjM4LS40NS42YTQuNTcgNC41NyAwIDAgMC0uNTYgMmMwIC42Ni4xMyAxLjI3LjQgMS44NGEzLjcgMy43IDAgMCAwIDMuMjEgMi4xMmMuNzIuMDMgMS40Mi0uMTMgMi4wOS0uNDcuNS0uMjYuOTMtLjYzIDEuMjgtMS4xMi4yMi0uMy40LS41OC41Ny0uODVsLS4wMi41N2MtLjE3LjI2LS4zNS41LS41NC43NGEzLjkxIDMuOTEgMCAwIDEtMS45NCAxLjI5Yy0uNjMuMTktMS4yNC4yNC0xLjg0LjE2YTQgNCAwIDAgMS0zLjQyLTMuMjIgNC4zIDQuMyAwIDAgMSAuMDQtMS45IDQgNCAwIDAgMSAuODktMS43Yy4xMi0uMTQuMjctLjI5LjQ0LS40NWwuNDMtLjFaIiBmaWxsPSIjMzk1MUI3Ii8+PHBhdGggZD0ibTEwLjM0IDQuMTcuMzQuMTFjLS41LjEzLS44OC4yOC0xLjE3LjQ1QTIuMiAyLjIgMCAwIDAgOC40IDYuNTJhMi4zNCAyLjM0IDAgMCAwIC41OCAxLjdjLjIyLjIzLjQ3LjQuNzcuNTJhMi40NCAyLjQ0IDAgMCAwIDEuNTguMDYgMi4xNyAyLjE3IDAgMCAwIDEuNTMtMS45NGMuMDMtLjI0LjAzLS41OC4wMS0xLjAzbC4yNy4zNS4xNC4yMmE1LjMgNS4zIDAgMCAxLS4zIDEuMzJjLS4xNy4zOC0uNDEuNy0uNzUuOTZhMi43IDIuNyAwIDAgMS0yLjI4LjQzIDIuNDYgMi40NiAwIDAgMS0xLjc3LTEuNzQgMi41NiAyLjU2IDAgMCAxIDEuMTctMi45Yy4yMi0uMTMuNDctLjI1Ljc0LS4zNmwuMjUuMDZaIiBmaWxsPSIjN0Q4RkVDIi8+PHBhdGggZD0iTTEzLjE0IDguOTNjLjE1LS4yOC4yNy0uNTMuMzQtLjc1LjEtLjI3LjE1LS41NC4xOC0uODEgMC0uMDMuMDMtLjAxLjA4LjA1bC4wMi4wNy4xMy42Ny4wNC4zMWE1LjM0IDUuMzQgMCAwIDEtLjggMS4xNyAzLjkzIDMuOTMgMCAwIDEtNC40OCAxLjAyIDMuNDQgMy40NCAwIDAgMS0xLjg2LTEuOTkgMy42NiAzLjY2IDAgMCAxLS4yMi0xLjQzYy4wMS0uMzUuMDctLjY5LjE1LTFhMyAzIDAgMCAxIC40Mi0uOTJjLjMxLS40NS43LS44MyAxLjE1LTEuMTVsLS4zNi40NmMtLjE5LjIzLS4zMi40LS40LjUyYTMuMzkgMy4zOSAwIDAgMC0uNiAyLjQ0Yy4wMy4yNS4xMS41LjI1Ljc1LjIxLjQuNDIuNzMuNi45Ny4yNy4zMy41NS41OC44NS43NS4zMi4xNy42OS4yOCAxLjExLjMzLjMzLjA0LjcyLjA0IDEuMTggMCAuMzctLjAzLjc1LS4xNSAxLjEzLS4zNi4zNi0uMi42Ni0uNDYuOTEtLjc3LjA3LS4wOS4xMy0uMi4xOC0uMzNaIiBmaWxsPSIjMzY2MURBIi8+PHBhdGggZD0iTTcuNTQgNC4yYTcuMiA3LjIgMCAwIDAtLjQ0LjQ3IDQgNCAwIDAgMC0uOSAxLjY4IDQuMyA0LjMgMCAwIDAgLjU3IDMuMzcgMy44OSAzLjg5IDAgMCAwIDIuODIgMS43NmMuNi4wOCAxLjIxLjAzIDEuODQtLjE2YTMuOTEgMy45MSAwIDAgMCAxLjk0LTEuM2MuMTktLjIzLjM3LS40Ny41NC0uNzNsLjAyLjJhNC40MyA0LjQzIDAgMCAxLTQuNTIgMi4xOSA0LjMzIDQuMzMgMCAwIDEtMy4xOS0yLjUxIDQuMjIgNC4yMiAwIDAgMSAuMi0zLjc2Yy4yLS4zOS40Ny0uNzUuNzktMS4wOGwuMzMtLjEyWiIgZmlsbD0iIzNCNEFBNiIvPjxwYXRoIGQ9Ik0xMi44OCA1LjgzYy4wMS40NSAwIC43OS0uMDIgMS4wMy0uMDQuMzctLjE0LjctLjMuOTdhMi4xMiAyLjEyIDAgMCAxLTEuMjMuOTcgMi4zMyAyLjMzIDAgMCAxLTIuMzUtLjU4IDIuMzQgMi4zNCAwIDAgMS0uMzMtMi42Yy4yLS4zNy40OC0uNjcuODYtLjkuMjktLjE2LjY4LS4zIDEuMTgtLjQ0YTQuNjUgNC42NSAwIDAgMSAxLjYyLjk2Yy4xOC4xNC4zNy4zNC41Ni41OVoiIGZpbGw9IiM5QTk5RTciLz48cGF0aCBkPSJNNy4yIDQuMzNjLS4zLjMzLS41Ny43LS43OSAxLjA4YTQuMjIgNC4yMiAwIDAgMCAxLjQ2IDUuNjdjLjQ3LjMuOTkuNSAxLjU0LjYuNTQuMDggMS4xLjA2IDEuNjYtLjA2YTQuMyA0LjMgMCAwIDAgMi44Ni0yLjEybC4wMi4xOS0uMDguNDRhLjg1Ljg1IDAgMCAwLS4xMy4yIDQuNzggNC43OCAwIDAgMS01LjI5IDEuNDQgNC44NiA0Ljg2IDAgMCAxLTIuMjItMS44M0E0LjQyIDQuNDIgMCAwIDEgNS42IDYuOWE0LjY1IDQuNjUgMCAwIDEgMS0yLjNsLjQtLjIuMi0uMDhaIiBmaWxsPSIjM0UzRDg0Ii8+PHBhdGggZD0iTTYuNiA0LjYxYTQuNjQgNC42NCAwIDAgMC0uMzcgNS4zMyA0Ljg2IDQuODYgMCAwIDAgMi4yMiAxLjgzIDQuNzQgNC43NCAwIDAgMCA1LjQyLTEuNjNsLS4wNy4yOC0uMDYuMThjLS4zNS40My0uNzQuNzgtMS4xOCAxLjA1LS40NS4yOC0uOTQuNDctMS40Ni41Ni0uNTcuMS0xLjE2LjEyLTEuNzYuMDVhNC43NiA0Ljc2IDAgMCAxLTMuNjItNi42N2wuMy0uNjEuMzMtLjIyLjI1LS4xNVoiIGZpbGw9IiMzRTJGNUYiLz48cGF0aCBkPSJNMTIuNSA2LjcyYTEuODIgMS44MiAwIDAgMS0uNzYgMS40NyAxLjk4IDEuOTggMCAwIDEtMS42NC4yOCAxLjcyIDEuNzIgMCAwIDEtLjk4LS42NmMtLjIzLS4zMS0uMzQtLjY2LS4zNS0xLjA2LS4wMS0uNC4wOC0uNzYuMjgtMS4wOC4yMi0uMzUuNTMtLjYuOTMtLjc0LjMtLjEuNjItLjE0LjkzLS4xYTEuODIgMS44MiAwIDAgMSAxLjM3Ljk4Yy4xNS4yOC4yMi41OC4yMS45WiIgZmlsbD0iI0IxQTJFMyIvPjxwYXRoIGQ9Ik0xMi4zOCA2LjdhMS43MyAxLjczIDAgMCAxLS41MSAxLjIzIDEuNzMgMS43MyAwIDAgMS0xLjI0LjUgMS43MyAxLjczIDAgMCAxLTEuNjEtMS4wNyAxLjczIDEuNzMgMCAwIDEgLjM3LTEuOSAxLjczIDEuNzMgMCAwIDEgMS4yNC0uNTEgMS43MyAxLjczIDAgMCAxIDEuNjEgMS4wN2MuMS4yMi4xNC40NC4xNC42N1oiIGZpbGw9IiNCREE2RTIiLz48cGF0aCBkPSJNMTIuMTEgNi4wNGExLjcgMS43IDAgMCAxLS4yNCAxLjY4IDEuNTMgMS41MyAwIDAgMS0xIC41NiAxLjY3IDEuNjcgMCAwIDEtMS4xMi0uMjMgMS41IDEuNSAwIDAgMS0uNS0uNTIgMS42OCAxLjY4IDAgMCAxIC4yNi0yYy4xOC0uMi40LS4zMi42Ny0uNGExLjY3IDEuNjcgMCAwIDEgMS40Ni4yOGMuMjIuMTcuMzcuMzguNDcuNjNaIiBmaWxsPSIjQzlBQ0UxIi8+PHBhdGggZD0iTTYuMDMgNC45OGE0LjUyIDQuNTIgMCAwIDAtLjcgMi45OCA1IDUgMCAwIDAgLjc4IDIuMjcgNC43NiA0Ljc2IDAgMCAwIDQuOTkgMS45OGMuNTItLjEgMS4wMS0uMjggMS40Ny0uNTYuNDMtLjI3LjgyLS42MiAxLjE3LTEuMDVsLS4xLjI5YTQuNDggNC40OCAwIDAgMS0yLjgzIDEuNDhjLTEuMzcuMTMtMi41LS4xLTMuNC0uN2E0LjY4IDQuNjggMCAwIDEtMi4xNS0zLjM2IDUuMjggNS4yOCAwIDAgMSAuMzUtMi44MmwuMDktLjI0LjMzLS4yN1oiIGZpbGw9IiMzQzI2NDgiLz48cGF0aCBkPSJNMTAuNDUgNS4yM2MuMzYtLjA0LjY5LjAzLjk5LjIyLjMuMi41LjQ3LjU5LjgyLjA3LjI0LjA3LjQ4LjAyLjcyQTEuNDYgMS40NiAwIDAgMSA5LjIgN2MtLjA0LS4yLS4wNC0uNDIuMDItLjY0YTEuNDIgMS40MiAwIDAgMSAxLjI0LTEuMTJaIiBmaWxsPSIjRDVCMkUwIi8+PHBhdGggZD0iTTEzLjYzIDEwLjg5Yy0uMDkuMjMtLjIuNDUtLjMyLjY1LS40MS4yMy0uNzcuNDEtMS4wOC41Ni0uMzYuMTYtLjc2LjI4LTEuMi4zNGE3LjI1IDcuMjUgMCAwIDEtMi4zNy0uMTEgNC43NyA0Ljc3IDAgMCAxLTMuMjQtMy4wNSA1LjU2IDUuNTYgMCAwIDEtLjE2LTMuMTNsLjE2LS42NC4yOC0uMjYtLjA5LjI0LS4yNC43NmE1LjI4IDUuMjggMCAwIDAgLjYgMy45OWMuMzYuNTcuODQgMS4wNSAxLjQ0IDEuNDRhNS4xMyA1LjEzIDAgMCAwIDUuNDgtLjEzYy4yMy0uMTcuNDgtLjQuNzQtLjY2WiIgZmlsbD0iIzM5MjIzQSIvPjxwYXRoIGQ9Ik0xMS43NSA1Ljk5YTEuMzIgMS4zMiAwIDAgMSAwIDEuNGMtLjE4LjI4LS40NC40Ny0uNzguNTYtLjMzLjEtLjY1LjA3LS45Ni0uMDhhMS4yIDEuMiAwIDAgMS0uNjQtLjc1IDEuMzggMS4zOCAwIDAgMSAuMDYtMWMuMS0uMjIuMjUtLjQuNDYtLjUzLjItLjEzLjQyLS4yLjY2LS4yMS4yNC0uMDEuNDcuMDMuNjguMTMuMjIuMS40LjI3LjUyLjQ4WiIgZmlsbD0iI0UxQkFFMCIvPjxwYXRoIGQ9Ik0xMC4yNCA3Ljc0Yy0uMjItLjA4LS40LS4yMS0uNTMtLjQtLjEzLS4xOS0uMi0uMzktLjItLjYyLS4wMS0uMjIuMDMtLjQzLjE0LS42Mi4xMi0uMi4yOS0uMzUuNTEtLjQ0YTEuMjQgMS4yNCAwIDAgMSAuOTYgMCAxLjA4IDEuMDggMCAwIDEgLjYuNzIgMS4yMSAxLjIxIDAgMCAxLS4xNS45N2MtLjE0LjItLjM0LjM0LS42LjQxLS4yNC4wNy0uNDguMDYtLjczLS4wMloiIGZpbGw9IiNFQ0MyRTEiLz48cGF0aCBkPSJNMTMuMyAxMS41NGMtLjE0LjI1LS4zMS40OS0uNS43bC0uOTUuMjZjLS43OS4yNC0xLjU4LjMyLTIuMzUuMjRhNC44NyA0Ljg3IDAgMCAxLTIuMjMtLjc3IDUuMzMgNS4zMyAwIDAgMS0yLjMzLTMuNyA2LjQyIDYuNDIgMCAwIDEtLjA0LTEuMDZ2LS41YzAtLjE4LS4wMy0uMzQtLjA2LS40OS4xNy0uMjUuMzctLjUuNTgtLjcxbC0uMTYuNjRhNS41NiA1LjU2IDAgMCAwIC4xNiAzLjEzIDQuNzcgNC43NyAwIDAgMCA0LjMzIDMuMmMuNDguMDIuOSAwIDEuMjgtLjA0YTQuMiA0LjIgMCAwIDAgMS4yLS4zNGMuMy0uMTUuNjctLjMzIDEuMDgtLjU2WiIgZmlsbD0iIzM0MUEyNyIvPjxwYXRoIGQ9Ik0xMC42NiA1Ljc1Yy4yNSAwIC40Ny4xLjY1LjNhLjkuOSAwIDAgMSAuMjUuNjYuOS45IDAgMCAxLS4zLjY2LjkuOSAwIDAgMS0uNjYuMjUuOS45IDAgMCAxLS42NS0uMy45LjkgMCAwIDEtLjI1LS42NmMwLS4yNi4xLS40OC4yOS0uNjZhLjkuOSAwIDAgMSAuNjctLjI1WiIgZmlsbD0iI0Y1Q0RFNSIvPjxwYXRoIGQ9Ik0xMC43NiA3LjA2YS40LjQgMCAwIDAgLjI2LS41LjQuNCAwIDAgMC0uNTEtLjIzLjQuNCAwIDAgMC0uMjYuNWMuMDcuMi4zLjMuNTEuMjNaIiBmaWxsPSIjRkZFOUYzIi8+PHBhdGggZD0ibTEyLjggMTIuMjUtLjM0LjM2LS4yOC4yNGExOCAxOCAwIDAgMC0xLjI5LjMgNS42MyA1LjYzIDAgMCAxLTMuMTYtLjI4IDUgNSAwIDAgMS0yLjA5LTEuNTUgNS44MSA1LjgxIDAgMCAxLS44NC0xLjQ2IDYuMDQgNi4wNCAwIDAgMS0uMjUtMy4xNGwuMy0uNS4wNS40OGE5Ljk1IDkuOTUgMCAwIDEgMCAuNzEgNC45NiA0Ljk2IDAgMCAwIC44IDIuOTdjLjQuNjMuOTMgMS4xNiAxLjU3IDEuNTkuNjYuNDMgMS40LjY5IDIuMjMuNzcuNzguMDggMS41NiAwIDIuMzYtLjI0LjI0LS4wNy41Ni0uMTYuOTQtLjI1WiIgZmlsbD0iIzM3MUExQiIvPjxwYXRoIGQ9Ik00LjU1IDYuNzJhNi4wNCA2LjA0IDAgMCAwIC4yNSAzLjE0Yy4yLjUxLjQ4IDEgLjg0IDEuNDZhNSA1IDAgMCAwIDIuMSAxLjU1IDUuNjMgNS42MyAwIDAgMCAzLjYxLjE3Yy4zOC0uMS42Ni0uMTUuODMtLjE5bC0uMjIuMTdjLS40Mi4xOC0uOS4zLTEuNC4zNWE2LjcgNi43IDAgMCAxLTEuNDUuMDIgNS4yNCA1LjI0IDAgMCAxLTQuMjMtMi45MiA0Ljg5IDQuODkgMCAwIDEtLjU3LTIuMDJjLS4wMS0uMjktLjAyLS42OCAwLTEuMTZsLjA3LS4yMS4xNy0uMzZaIiBmaWxsPSIjNDIyMDE5Ii8+PHBhdGggZD0ibTExLjk2IDEzLjAyLS4xNC4xYy0uMjIuMTUtLjQ0LjI4LS42Ny40bC0uNC4xNmExMy40OCAxMy40OCAwIDAgMS0xLjEuMTFsLS4xMy4wM2MtLjI1LjA0LS40NC4wNS0uNTcuMDNhNy4yMSA3LjIxIDAgMCAxLTEuNC0uMzUgNS40MiA1LjQyIDAgMCAxLTMuNTMtNC4zNHYtLjczbC4wNi0uMzdjLjA1LS4yNi4xMy0uNTIuMjItLjc3bC4wMSAxLjE2YTUuNTIgNS41MiAwIDAgMCAyLjEgMy44N2MuODIuNjEgMS43Mi45NyAyLjcgMS4wNy40OS4wNS45Ny4wNCAxLjQ1LS4wMi41LS4wNi45OC0uMTcgMS40LS4zNVoiIGZpbGw9IiM1QzMwMUYiLz48cGF0aCBkPSJNMTMuNzYgNy40OWEzLjYgMy42IDAgMCAxIC4xNS42NGgtLjAydi4wM2wtLjEzLS42N1oiIGZpbGw9IiMzODVCQ0MiLz48cGF0aCBkPSJtMTMuOTIgOC4xMy4wMi4xYy4wNC4yNi4wNi41My4wNi44bC0uMDUuNjYtLjAyLS4yLS4wMi0uMi4wMi0uNTd2LS4yNWwtLjA0LS4zMXYtLjAybC4wMi0uMDFaIiBmaWxsPSIjM0MyNjQ4Ii8+PHBhdGggZD0iTTQuMDMgOC40M2E3OS45MiA3OS45MiAwIDAgMSAuMDEuODdsLjExLjVhNS43OCA1Ljc4IDAgMCAwIDIuMDIgMi45NmMuNDIuMzEuODguNTYgMS4zOC43NC40Ni4xNy45Mi4yOCAxLjQuMzUuMTMuMDIuMzIuMDEuNTctLjAzYTEyLjM3IDEyLjM3IDAgMCAxIC40MS0uMDZjLjI3LS4wMi41NS0uMDQuODItLjA4YTUuNSA1LjUgMCAwIDEtLjc1LjIyIDEuNDMgMS40MyAwIDAgMS0uMjEuMDRsLS43LjA2LS4zNS0uMDEtLjM5LS4wNC0uMTUtLjAyLS40OS0uMXYtLjAxaC4wMmEuMzUuMzUgMCAwIDAtLjA0IDBoLS4wM2E1LjIyIDUuMjIgMCAwIDAtLjM4LS4xMyAxIDEgMCAwIDEtLjE2LS4wN2wtLjU1LS4yNS0uMjMtLjE1YTUuMDkgNS4wOSAwIDAgMS0yLTIuNDNsLS4wNy0uMTV2LS4wNS4wMmwtLjEzLS4zOC0uMTItLjgydi4wMkg0TDQgOC43OGwuMDMtLjM1WiIgZmlsbD0iIzg1NTMyOSIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0iYSIgeDE9IjE1LjkzIiB5MT0iMCIgeDI9IjAiIHkyPSIxNC45NyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiNBN0E3QTciLz48c3RvcCBvZmZzZXQ9Ii41IiBzdG9wLWNvbG9yPSIjRjRGNEY0Ii8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjOUI5QjlCIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PC9zdmc+"}},"time_used":1,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":1,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/images/icon/instruments/ripple.svg","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.099Z","timestamp":1785126256099,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/icon/instruments/ripple.svg HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/svg+xml\r\ncontent-length: 5500\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-157c\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":5500,"size_decoded":5753,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"8f15368a5cc9cb5cc182e5aa804616d6","sha1":"a6495b3028622ce07c57773647aa78cbe943b222","sha256":"74879cb2af30929291721eaae03da507e959f99080b5c2f3e9163bb24ca756a7","sha512":"35d28235ca85c21b791029069b93fe1c9fab9fa1c2dd8e896c0e03c55d9d2868d9fa6ac299c7d492925e74e1b012dbfbe932367a20b48483d7978f9e5c218fbb","ssdeep":"96:cBirQXNx5M1pSB+KFeCD+PudE/LHM0bgn/cqYBVDvuoa9+GP5aSU1Vb5SjPN:AirQ9x5QOYCXEAxcNzuoQgFUj1","tlshash":"a6b173c422ec5efef105c79570775b266a2ba1f77a50ade0b40d59e86333097908acb1","first_seen":"2023-05-01T20:32:00Z","last_seen":"2026-07-27T06:05:14.748625Z","times_seen":173,"resource_available":false,"data":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTdweCIgaGVpZ2h0PSIxN3B4IiB2aWV3Qm94PSIwIDAgMTcgMTciIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDUyLjEgKDY3MDQ4KSAtIGh0dHA6Ly93d3cuYm9oZW1pYW5jb2RpbmcuY29tL3NrZXRjaCAtLT4KICAgIDx0aXRsZT5Hcm91cCA3PC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGcgaWQ9IlBhZ2UtMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IlByaW1lWEJUX3YyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNjM4LjAwMDAwMCwgLTExOTkuMDAwMDAwKSI+CiAgICAgICAgICAgIDxnIGlkPSJHcm91cC0yNiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNTgzLjAwMDAwMCwgOTcwLjAwMDAwMCkiPgogICAgICAgICAgICAgICAgPGcgaWQ9IlBhZ2UiPjwvZz4KICAgICAgICAgICAgICAgIDxnIGlkPSJHcm91cC03IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg1NS4wMDAwMDAsIDIyOS4wMDAwMDApIj4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTcsOC41IEMxNywxMy4xOTQ2ODQyIDEzLjE5NDY4NDIsMTcgOC41LDE3IEMzLjgwNTMxNTc5LDE3IDAsMTMuMTk0Njg0MiAwLDguNSBDMCwzLjgwNTMxNTc5IDMuODA1MzE1NzksMCA4LjUsMCBDMTMuMTk0Njg0MiwwIDE3LDMuODA1MzE1NzkgMTcsOC41IiBpZD0iRmlsbC0xIiBmaWxsPSIjMkVBQkQ5Ij48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTEwLjM5OTUyNjMsMy41Nzg5NDczNyBDMTAuMjQzODQyMSwzLjYwMTMxNTc5IDEwLjA4ODE1NzksMy42MjQ1Nzg5NSA5LjkzMzM2ODQyLDMuNjQ4NzM2ODQgQzkuNTE4MjEwNTMsMy43MTEzNjg0MiA5LjE3MTA1MjYzLDMuOTEzNTc4OTUgOC44NzEzMTU3OSw0LjE5NjMxNTc5IEM4LjU4NSw0LjQ2NzQyMTA1IDguMzk3MTA1MjYsNC44MDAyNjMxNiA4LjI5MjQyMTA1LDUuMTgzMjEwNTMgQzguMjAzODQyMTEsNS41MDYyMTA1MyA4LjE5OTM2ODQyLDUuODMyNzg5NDcgOC4yODUyNjMxNiw2LjE0NzczNjg0IEM4LjM1MjM2ODQyLDYuMzkyODk0NzQgOC40NzY3MzY4NCw2LjYyMDE1Nzg5IDguNTgxNDIxMDUsNi44NTI3ODk0NyBDOC42ODI1MjYzMiw3LjA3NzM2ODQyIDguNjk0MTU3ODksNy4zMTA4OTQ3NCA4LjYyMjU3ODk1LDcuNTM1NDczNjggQzguNTE3LDcuODY1NjMxNTggOC4yNzQ1MjYzMiw4LjA2MzM2ODQyIDcuOTMwMDUyNjMsOC4xMDk4OTQ3NCBDNy41MzYzNjg0Miw4LjE2MzU3ODk1IDcuMjAxNzM2ODQsOC4wMzc0MjEwNSA2Ljk5NTk0NzM3LDcuNjg3NTc4OTUgQzYuODE5Njg0MjEsNy4zODUxNTc4OSA2LjYxNTY4NDIxLDcuMTE1ODQyMTEgNi4zMjQ4OTQ3NCw2LjkxNTQyMTA1IEM1LjY2ODE1Nzg5LDYuNDYyNjg0MjEgNC45NTk1MjYzMiw2LjM4MzA1MjYzIDQuMjI5NDIxMDUsNi42NzY1MjYzMiBDMy41NjI4NDIxMSw2Ljk0NDA1MjYzIDMuMTM5NjMxNTgsNy40NDYgMi45NjI0NzM2OCw4LjE1Mjg0MjExIEMyLjg0ODg0MjExLDguNjEzNjMxNTggMi45MTA1Nzg5NSw5LjA1Mjk0NzM3IDMuMTExODk0NzQsOS40NzE2ODQyMSBDMy4zNzU4NDIxMSwxMC4wMTY1Nzg5IDMuODAzNTI2MzIsMTAuMzc5ODQyMSA0LjM4MDYzMTU4LDEwLjU3ODQ3MzcgQzQuODI3MTA1MjYsMTAuNzMzMjYzMiA1LjI3MDg5NDc0LDEwLjczMzI2MzIgNS43MTAyMTA1MywxMC41OTgxNTc5IEM2LjI0NTI2MzE2LDEwLjQzMTczNjggNi42NjIyMTA1MywxMC4wOTYyMTA1IDYuOTUwMzE1NzksOS42MTEyNjMxNiBDNy4wNjM5NDczNyw5LjQxOCA3LjIyMzIxMDUzLDkuMjkwOTQ3MzcgNy40MjksOS4yMDg2MzE1OCBDNy43NjE4NDIxMSw5LjA3NTMxNTc5IDguMjE5OTQ3MzcsOS4xOTA3MzY4NCA4LjQ2MTUyNjMyLDkuNDc2MTU3ODkgQzguNzA1Nzg5NDcsOS43NjQyNjMxNiA4LjcyOTk0NzM3LDEwLjE5NzMxNTggOC41MjUwNTI2MywxMC41MTk0MjExIEM4LjIyNTMxNTc5LDEwLjk4ODI2MzIgOC4xMDE4NDIxMSwxMS40OTAyMTA1IDguMjIwODQyMTEsMTIuMDQ4NTI2MyBDOC40NDI3MzY4NCwxMy4wODkxMDUzIDkuMzAzNDczNjgsMTMuNjkzMDUyNiAxMC4yNzY5NDc0LDEzLjc0MzE1NzkgQzEwLjUyMDMxNTgsMTMuNzU1Njg0MiAxMC43Nzg4OTQ3LDEzLjY5NTczNjggMTEuMDEzMzE1OCwxMy42MTcgQzExLjgxNzY4NDIsMTMuMzQ1ODk0NyAxMi4zMDk3ODk1LDEyLjc4NDg5NDcgMTIuNDUyOTQ3NCwxMS45NDI5NDc0IEMxMi41NTMxNTc5LDExLjM1MzMxNTggMTIuMzkxMjEwNSwxMC44MjAwNTI2IDEyLjAyMTY4NDIsMTAuMzYwMTU3OSBDMTEuNTc5Njg0Miw5LjgwOTg5NDc0IDEwLjk3NzUyNjMsOS41NjI5NDczNyAxMC4yODMyMTA1LDkuNTQ1OTQ3MzcgQzkuOTU5MzE1NzksOS41Mzc4OTQ3NCA5LjcwNzg5NDc0LDkuNDEyNjMxNTggOS41MDc0NzM2OCw5LjE3MTk0NzM3IEM5LjMyMDQ3MzY4LDguOTQ2NDczNjggOS4yNzkzMTU3OSw4LjY3MzU3ODk1IDkuMzU4OTQ3MzcsOC40MDY5NDczNyBDOS40NzYxNTc4OSw4LjAxMjM2ODQyIDkuODA5ODk0NzQsNy43NTIgMTAuMjQ0NzM2OCw3Ljc4MjQyMTA1IEMxMC41MDI0MjExLDcuODAxMjEwNTMgMTAuNzU0NzM2OCw3Ljc2NzIxMDUzIDEwLjk5OTg5NDcsNy42ODc1Nzg5NSBDMTEuNDU0NDIxMSw3LjU0MDg0MjExIDExLjgzODI2MzIsNy4yOTQ3ODk0NyAxMi4xMjcyNjMyLDYuOTA0Njg0MjEgQzEyLjMzNjYzMTYsNi42MTkyNjMxNiAxMi40NzgsNi4zMDI1MjYzMiAxMi41MTY0NzM3LDUuOTU5ODQyMTEgQzEyLjU0NTEwNTMsNS43MDY2MzE1OCAxMi41MDU3MzY4LDUuNDQwODk0NzQgMTIuNDYxODk0Nyw1LjE4Njc4OTQ3IEMxMi40MDQ2MzE2LDQuODY0Njg0MjEgMTIuMjQyNjg0Miw0LjU4MDE1Nzg5IDEyLjAyNjE1NzksNC4zMzk0NzM2OCBDMTEuNTk1Nzg5NSwzLjg1OSAxMS4wNTM1Nzg5LDMuNjAyMjEwNTMgMTAuMzk5NTI2MywzLjU3ODk0NzM3IiBpZD0iRmlsbC0zIiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTEwLjM5OTUyNjMsMy41Nzg5NDczNyBDMTEuMDUzNTc4OSwzLjYwMjIxMDUzIDExLjU5NTc4OTUsMy44NTkgMTIuMDI2MTU3OSw0LjMzOTQ3MzY4IEMxMi4yNDI2ODQyLDQuNTgwMTU3ODkgMTIuNDA0NjMxNiw0Ljg2NDY4NDIxIDEyLjQ2MTg5NDcsNS4xODY3ODk0NyBDMTIuNTA1NzM2OCw1LjQ0MDg5NDc0IDEyLjU0NTEwNTMsNS43MDY2MzE1OCAxMi41MTY0NzM3LDUuOTU5ODQyMTEgQzEyLjQ3OCw2LjMwMjUyNjMyIDEyLjMzNjYzMTYsNi42MTkyNjMxNiAxMi4xMjcyNjMyLDYuOTA0Njg0MjEgQzExLjgzODI2MzIsNy4yOTQ3ODk0NyAxMS40NTQ0MjExLDcuNTQwODQyMTEgMTAuOTk5ODk0Nyw3LjY4NzU3ODk1IEMxMC43NTQ3MzY4LDcuNzY3MjEwNTMgMTAuNTAyNDIxMSw3LjgwMTIxMDUzIDEwLjI0NDczNjgsNy43ODI0MjEwNSBDOS44MDk4OTQ3NCw3Ljc1MiA5LjQ3NjE1Nzg5LDguMDEyMzY4NDIgOS4zNTg5NDczNyw4LjQwNjk0NzM3IEM5LjI3OTMxNTc5LDguNjczNTc4OTUgOS4zMjA0NzM2OCw4Ljk0NjQ3MzY4IDkuNTA3NDczNjgsOS4xNzE5NDczNyBDOS43MDc4OTQ3NCw5LjQxMjYzMTU4IDkuOTU5MzE1NzksOS41Mzc4OTQ3NCAxMC4yODMyMTA1LDkuNTQ1OTQ3MzcgQzEwLjk3NzUyNjMsOS41NjI5NDczNyAxMS41Nzk2ODQyLDkuODA5ODk0NzQgMTIuMDIxNjg0MiwxMC4zNjAxNTc5IEMxMi4zOTEyMTA1LDEwLjgyMDA1MjYgMTIuNTUzMTU3OSwxMS4zNTMzMTU4IDEyLjQ1Mjk0NzQsMTEuOTQyOTQ3NCBDMTIuMzA5Nzg5NSwxMi43ODQ4OTQ3IDExLjgxNzY4NDIsMTMuMzQ1ODk0NyAxMS4wMTMzMTU4LDEzLjYxNyBDMTAuNzc4ODk0NywxMy42OTU3MzY4IDEwLjUyMDMxNTgsMTMuNzU1Njg0MiAxMC4yNzY5NDc0LDEzLjc0MzE1NzkgQzkuMzAzNDczNjgsMTMuNjkzMDUyNiA4LjQ0MjczNjg0LDEzLjA4OTEwNTMgOC4yMjA4NDIxMSwxMi4wNDg1MjYzIEM4LjEwMTg0MjExLDExLjQ5MDIxMDUgOC4yMjUzMTU3OSwxMC45ODgyNjMyIDguNTI1MDUyNjMsMTAuNTE5NDIxMSBDOC43Mjk5NDczNywxMC4xOTczMTU4IDguNzA1Nzg5NDcsOS43NjQyNjMxNiA4LjQ2MTUyNjMyLDkuNDc2MTU3ODkgQzguMjE5OTQ3MzcsOS4xOTA3MzY4NCA3Ljc2MTg0MjExLDkuMDc1MzE1NzkgNy40MjksOS4yMDg2MzE1OCBDNy4yMjMyMTA1Myw5LjI5MDk0NzM3IDcuMDYzOTQ3MzcsOS40MTggNi45NTAzMTU3OSw5LjYxMTI2MzE2IEM2LjY2MjIxMDUzLDEwLjA5NjIxMDUgNi4yNDUyNjMxNiwxMC40MzE3MzY4IDUuNzEwMjEwNTMsMTAuNTk4MTU3OSBDNS4yNzA4OTQ3NCwxMC43MzMyNjMyIDQuODI3MTA1MjYsMTAuNzMzMjYzMiA0LjM4MDYzMTU4LDEwLjU3ODQ3MzcgQzMuODAzNTI2MzIsMTAuMzc5ODQyMSAzLjM3NTg0MjExLDEwLjAxNjU3ODkgMy4xMTE4OTQ3NCw5LjQ3MTY4NDIxIEMyLjkxMDU3ODk1LDkuMDUyOTQ3MzcgMi44NDg4NDIxMSw4LjYxMzYzMTU4IDIuOTYyNDczNjgsOC4xNTI4NDIxMSBDMy4xMzk2MzE1OCw3LjQ0NiAzLjU2Mjg0MjExLDYuOTQ0MDUyNjMgNC4yMjk0MjEwNSw2LjY3NjUyNjMyIEM0Ljk1OTUyNjMyLDYuMzgzMDUyNjMgNS42NjgxNTc4OSw2LjQ2MjY4NDIxIDYuMzI0ODk0NzQsNi45MTU0MjEwNSBDNi42MTU2ODQyMSw3LjExNTg0MjExIDYuODE5Njg0MjEsNy4zODUxNTc4OSA2Ljk5NTk0NzM3LDcuNjg3NTc4OTUgQzcuMjAxNzM2ODQsOC4wMzc0MjEwNSA3LjUzNjM2ODQyLDguMTYzNTc4OTUgNy45MzAwNTI2Myw4LjEwOTg5NDc0IEM4LjI3NDUyNjMyLDguMDYzMzY4NDIgOC41MTcsNy44NjU2MzE1OCA4LjYyMjU3ODk1LDcuNTM1NDczNjggQzguNjk0MTU3ODksNy4zMTA4OTQ3NCA4LjY4MjUyNjMyLDcuMDc3MzY4NDIgOC41ODE0MjEwNSw2Ljg1Mjc4OTQ3IEM4LjQ3NjczNjg0LDYuNjIwMTU3ODkgOC4zNTIzNjg0Miw2LjM5Mjg5NDc0IDguMjg1MjYzMTYsNi4xNDc3MzY4NCBDOC4xOTkzNjg0Miw1LjgzMjc4OTQ3IDguMjAzODQyMTEsNS41MDYyMTA1MyA4LjI5MjQyMTA1LDUuMTgzMjEwNTMgQzguMzk3MTA1MjYsNC44MDAyNjMxNiA4LjU4NSw0LjQ2NzQyMTA1IDguODcxMzE1NzksNC4xOTYzMTU3OSBDOS4xNzEwNTI2MywzLjkxMzU3ODk1IDkuNTE4MjEwNTMsMy43MTEzNjg0MiA5LjkzMzM2ODQyLDMuNjQ4NzM2ODQgQzEwLjA4ODE1NzksMy42MjQ1Nzg5NSAxMC4yNDM4NDIxLDMuNjAxMzE1NzkgMTAuMzk5NTI2MywzLjU3ODk0NzM3IiBpZD0iRmlsbC01IiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICAgICAgPGcgaWQ9IlBhZ2UiPjwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg=="}},"time_used":396,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":306,"receive":90,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"snowplow-pixel.tradingview.com/com.tradingview/track","fqdn":"snowplow-pixel.tradingview.com","domain":"tradingview.com","tld":"com"},"ip":{"addr":"32.186.65.3","port":443,"asn":0,"as":"","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"beacon","requested_by":"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.764Z","timestamp":1785126257764,"http_version":"HTTP/2","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":"web-sp.tradingview.com","organization":""},"issuer":{"commonName":"Amazon RSA 2048 M04","organization":"Amazon"},"validity":{"start":"Sun, 19 Apr 2026 00:00:00 GMT","end":"Mon, 02 Nov 2026 23:59:59 GMT"},"fingerprint":{"sha1":"9B:DF:03:4F:EB:00:80:CE:DB:C7:36:27:AE:14:79:24:3B:6C:A2:8E","sha256":"C2:A3:A5:DE:59:40:AC:09:73:08:A3:E6:2D:63:80:67:C0:F9:F7:0C:5B:A0:BC:5E:95:E4:01:FE:7C:E4:E0:AA"}}},"request":{"raw":"POST /com.tradingview/track HTTP/1.1\r\nHost: snowplow-pixel.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\nContent-Type: application/json\r\nContent-Length: 1640\r\nOrigin: https://www.tradingview-widget.com\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nReferer: https://www.tradingview-widget.com/\r\nSec-Fetch-Dest: empty\r\nSec-Fetch-Mode: cors\r\nSec-Fetch-Site: cross-site\r\nPriority: u=6\r\n\r\n","headers":null,"cookies":null,"method":"POST","post_data":{"size":1640,"data":"{\"schema\":\"iglu:com.snowplowanalytics.snowplow/payload_data/jsonschema/1-0-4\",\"data\":[{\"e\":\"ue\",\"eid\":\"5e0c746c-9d4f-48c1-a771-92d2f9f1761c\",\"tv\":\"js-3.24.1\",\"tna\":\"tv_cf\",\"aid\":\"tradingview\",\"p\":\"web\",\"cookie\":\"1\",\"cs\":\"UTF-8\",\"lang\":\"en-US\",\"res\":\"1280x1024\",\"cd\":\"24\",\"dtm\":\"1785126257760\",\"ue_px\":\"eyJzY2hlbWEiOiJpZ2x1OmNvbS5zbm93cGxvd2FuYWx5dGljcy5zbm93cGxvdy91bnN0cnVjdF9ldmVudC9qc29uc2NoZW1hLzEtMC0wIiwiZGF0YSI6eyJzY2hlbWEiOiJpZ2x1OmNvbS50cmFkaW5ndmlldy93aWRnZXRzX3dpdGhvdXRfd2Vic29ja2V0L2pzb25zY2hlbWEvMS0wLTAiLCJkYXRhIjp7Imhvc3QiOiJiZXN0dHJhZGVyLmxpdmUiLCJwYXRoIjoiLyIsIndpZGdldF9pZCI6ImNyeXB0b21rdHNjcmVlbmVyIiwiZXZlbnRfbmFtZSI6InBhZ2VfdmlldyJ9fX0\",\"cx\":\"eyJzY2hlbWEiOiJpZ2x1OmNvbS5zbm93cGxvd2FuYWx5dGljcy5zbm93cGxvdy9jb250ZXh0cy9qc29uc2NoZW1hLzEtMC0wIiwiZGF0YSI6W3sic2NoZW1hIjoiaWdsdTpjb20uc25vd3Bsb3dhbmFseXRpY3Muc25vd3Bsb3cvd2ViX3BhZ2UvanNvbnNjaGVtYS8xLTAtMCIsImRhdGEiOnsiaWQiOiJhZGVlYTI5OS01YzAzLTRlNjYtOWY4NC0xNDYyM2JhNmQ5MjQifX1dfQ\",\"vp\":\"633x600\",\"ds\":\"633x600\",\"vid\":\"1\",\"sid\":\"f046d173-2de7-466f-b43d-da020e6c1d25\",\"refr\":\"https://besttrader.live/\",\"url\":\"https://www.tradingview-widget.com/embed-widget/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D\",\"stm\":\"1785126257762\"}]}"}},"response":{"raw":"HTTP/2 200 \r\ndate: Mon, 27 Jul 2026 04:24:18 GMT\r\ncontent-type: text/plain; charset=UTF-8\r\ncontent-length: 2\r\nset-cookie: sp=676f9e12-eb17-4979-b4e2-cd6d2e5cd2fe; Expires=Tue, 27 Jul 2027 04:24:18 GMT; Path=/; Secure; HttpOnly; SameSite=None\r\np3p: policyref=\"/w3c/p3p.xml\", CP=\"NOI DSP COR NID PSA OUR IND COM NAV STA\"\r\naccess-control-allow-origin: https://www.tradingview-widget.com\r\naccess-control-allow-credentials: true\r\nserver: akka-http/10.2.9\r\nstrict-transport-security: max-age=63072000; includeSubDomains; preload\r\nx-content-type-options: nosniff\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Akka HTTP:10.2.9","description":"","website":"https://akka.io","common_platform_enumeration":"cpe:2.3:a:lightbend:akka_http:*:*:*:*:*:*:*:*","icon":"akka-http.png","categories":["Web frameworks","Web servers"]},{"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":"Snowplow Analytics","description":"Snowplow is an open-source behavioral data management platform for businesses.","website":"https://snowplowanalytics.com","common_platform_enumeration":"","icon":"Snowplow.svg","categories":["Analytics","IaaS"]}],"data":{"size":2,"size_decoded":581,"mime_type":"text/plain; charset=UTF-8","magic":"ASCII text, with no line terminators","md5":"444bcb3a3fcf8389296c49467f27e1d6","sha1":"7a85f4764bbd6daf1c3545efbbf0f279a6dc0beb","sha256":"2689367b205c16ce32ed4200942b8b8b1e262dfc70d9bc9fbc77c49699a4f1df","sha512":"9fbbbb5a0f329f9782e2356fa41d89cf9b3694327c1a934d6af2a9df2d7f936ce83717fb513196a4ce5548471708cd7134c2ae99b3c357bcabb2eafc7b9b7570","ssdeep":"","tlshash":"c710000000000000300000000000000000000000000000000000000000000c0000c000","first_seen":"2023-03-08T02:32:37Z","last_seen":"2026-07-27T07:05:43.371362Z","times_seen":442747,"resource_available":true,"data":"b2s="}},"time_used":485,"timings":{"blocked":-1,"dns":0,"connect":159,"send":0,"wait":161,"receive":0,"ssl":164},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCWBTC.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.518Z","timestamp":1785126258518,"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 /crypto/XTVCWBTC.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 04:24:18 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: \"1f06d1d824d2b5e8f99df3c2c4c10479\"\r\nlast-modified: Mon, 05 Aug 2024 13:40:11 GMT\r\ncdn-cachedat: 08/14/2025 09:10:06\r\nx-amz-id-2: haO4XfZq8Y321XcB+GjJfUVK/Mt5QwB51Q0KOpfIFCUH16fUTk5cIT8xp7WHKrp0lW9tEIR21+Y=\r\nx-amz-request-id: EZEEWHMCCHJN9HK1\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 1f06d1d824d2b5e8f99df3c2c4c10479\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: 3c4cc12735e8ae020319abeab8d20d21\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":915,"size_decoded":1434,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (915), with no line terminators","md5":"1f06d1d824d2b5e8f99df3c2c4c10479","sha1":"af16cd2ccd268ae3469b620bc273f0d73b36edc5","sha256":"59720ebaf3dee284fe1d733b1c90796ee69bc7c89cfffaf3c7ce32d567269dd4","sha512":"d971d0937b6aa70d1090a5ec9624b93feade5acd83cd66406557c46d66abb85dd17fc49e8c953983b2817c5e63cf6bf797d41f10bc38297ddb7b55ce44b8e395","ssdeep":"","tlshash":"d311d078756cd1de9c838ea9ca73d590231c80fdf2a701f46d8ed7a555838e1dd53800","first_seen":"2024-12-14T06:34:42.717484Z","last_seen":"2026-07-27T07:05:43.277607Z","times_seen":772,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJtMTIuNjggNS42Mi0uMzIuMzJhNC41NCA0LjU0IDAgMCAxIDAgNi4xMmwuMzIuMzJhNSA1IDAgMCAwIDAtNi43N1ptLTYuNzQuMDJhNC41MyA0LjUzIDAgMCAxIDYuMTIgMGwuMzItLjMyYTQuOTkgNC45OSAwIDAgMC02Ljc3IDBsLjMzLjMyWm0tLjMgNi40MmE0LjU0IDQuNTQgMCAwIDEgMC02LjEybC0uMzItLjMyYTUgNSAwIDAgMCAwIDYuNzdsLjMyLS4zM1ptNi40Mi4zYTQuNTMgNC41MyAwIDAgMS02LjEyIDBsLS4zMi4zMmE0Ljk5IDQuOTkgMCAwIDAgNi43NiAwbC0uMzItLjMyWiIgZmlsbD0iIzgzODA4QiIvPjxwYXRoIGQ9Ik05Ljc4IDguMjJjMCAuMzUtLjMxLjQ3LS42Mi40N2gtLjQ3di0uOTRoLjYyYS40Ni40NiAwIDAgMSAuNDcuNDdabS4yOCAxLjU4YzAgLjM5LS40NC41Ny0uNzUuNTdIOC43VjkuMzFoLjYyYy4yOCAwIC43NS4xMi43NS41Wm0uNjctMS43MkExLjIgMS4yIDAgMCAwIDkuNjMgN1Y2SDl2MWgtLjMxVjZIOHYxSDd2Ljc1aC40N2MuMTIgMCAuMjggMCAuMjguMjV2Mi4xczAgLjI3LS4xOC4yN0g3LjFMNyAxMWgxdjFoLjY5di0xSDl2MWguNjN2LTFjLjgxLS4wNSAxLjMxLS4zNCAxLjM4LTEuMS4wNi0uNjItLjIzLS45LS43LTEgLjI5LS4xNC40Ny0uNC40Mi0uODJaIiBmaWxsPSIjRjA5MjQyIi8+PHBhdGggZD0iTTkgMy40N2E1LjUzIDUuNTMgMCAxIDAgMCAxMS4wNUE1LjUzIDUuNTMgMCAwIDAgOSAzLjQ3Wk05IDE1QTYgNiAwIDEgMSA5IDNhNiA2IDAgMCAxIDAgMTJaIiBmaWxsPSIjMjgyMTM4Ii8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCUSDFF.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.623Z","timestamp":1785126258623,"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 /crypto/XTVCUSDFF.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 04:24:18 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: \"4bdfa235189224e17af9ccd63af99a18\"\r\nlast-modified: Mon, 05 May 2025 20:07:46 GMT\r\ncdn-cachedat: 08/14/2025 09:16:49\r\nx-amz-id-2: 2YUXdRmWfl0fFCiQQu8Rc/akufOxDleDWeOA4l+Zm8BMBflN+ElPGOOcOwMSYJPp6NwgMnM+6Gc=\r\nx-amz-request-id: P8RNG2V3NKC5S3RV\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 4bdfa235189224e17af9ccd63af99a18\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: 50100ba942019ad49482a3f6b68080ad\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":1173,"size_decoded":1544,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1173), with no line terminators","md5":"4bdfa235189224e17af9ccd63af99a18","sha1":"c758c75bcc58cfc2bf89809cbf8a644af414d878","sha256":"1853bb8f3d92bf0c8d777a2ea69eb3c857e2524af02478638ca048182b69d92a","sha512":"8f1ab4c316e14d5d58dc2c536c2e1b06b04ecd60854ea604f9f1d831959bf279cb04b0225cf4cbb9a516ab467d5aee02ebafea5378aa52cb88e21cde054820c0","ssdeep":"","tlshash":"0d21675a520ca62c2993b29dcfab94f0634f50f5b0dad2d55dffd3f8904a485ee83820","first_seen":"2025-05-15T10:22:25.617096Z","last_seen":"2026-07-27T07:05:43.267372Z","times_seen":769,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJtOC41MyAxMi45My0uMjMuOTJjMCAuMDItLjAxLjA0LS4wMy4wNS0uMTUuMTgtLjMzLjA4LS42LjAxLS4xNi0uMDQtLjI2LS4xNC0uMjItLjMxYTMzLjY2IDMzLjY2IDAgMCAxIC4yMy0uOTUuMDUuMDUgMCAwIDAtLjAzLS4wMmMtMS4wNS0uNC0xLjc0LTEuMy0xLjY0LTIuNDUuMDEtLjE3LjEtLjI2LjI1LS4zbC4wNy4wMS45Ni4yNWMuMTcuMDQuMjQuMTQuMjQuMzJhMS4xMyAxLjEzIDAgMCAwIC40NC45LjAyLjAyIDAgMCAwIC4wMiAwbC40OS0xLjkyYS4wNi4wNiAwIDAgMC0uMDMtLjA3Yy0uODItLjUtMS42My0xLjEzLTEuNTMtMi4yMS4xMy0xLjQxIDEuMjUtMi4xIDIuNTgtMS45MWguMDNsLjAyLS4wMy4yNy0xLjA2Yy4xLS4yOC40Ny0uMTEuNy0uMDUuMTQuMDQuMTguMTguMTMuMzRhMTg3LjUgMTg3LjUgMCAwIDAtLjI1IDEuMDNsLjAzLjAzYTIuMiAyLjIgMCAwIDEgMS41IDIuMWMwIC4yMi0uMS40NC0uMzQuMzgtLjQ1LS4xLS43OS0uMi0xLjAzLS4yNmEuMjQuMjQgMCAwIDEtLjE4LS4yNC45Ny45NyAwIDAgMC0uMjktLjY4LjAyLjAyIDAgMCAwLS4wMy4wMUw5LjY0IDguNWEuMDUuMDUgMCAwIDAgLjAyLjA2Yy43NS40NSAxLjY3IDEuMTUgMS42NyAyLjEyLS4wMSAxLjU3LTEuMjYgMi40NS0yLjc0IDIuMjJhLjA1LjA1IDAgMCAwLS4wNi4wNFptLjM1LTUgLjM2LTEuNDJoLS4wMWEuNDUuNDUgMCAwIDAtLjIyIDAgLjU3LjU3IDAgMCAwLS4yMS4xLjc2Ljc2IDAgMCAwLS4xOC4yLjkuOSAwIDAgMC0uMS4yNnYuMDJhLjg0Ljg0IDAgMCAwIC4wMi41My41LjUgMCAwIDAgLjMzLjNoLjAxWm0uMzggMi4wNi0uNCAxLjZhLjA0LjA0IDAgMCAwIDAgLjA1LjA0LjA0IDAgMCAwIC4wNC4wMWMuOTgtLjExIDEuMDktMS4xMi40MS0xLjY3YS4wMy4wMyAwIDAgMC0uMDUuMDFaIiBmaWxsPSIjMUQxRDFGIi8+PHBhdGggZD0iTTEyLjMgMTRhLjcuNyAwIDAgMCAuNy0uNy43LjcgMCAwIDAtLjctLjY5LjcuNyAwIDAgMC0uNy43YzAgLjM4LjMxLjY5LjcuNjlaIiBmaWxsPSIjRjk2RDMwIi8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCRAY.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.681Z","timestamp":1785126258681,"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 /crypto/XTVCRAY.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 04:24:18 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: \"f63bd5af595e60e5cc8e8e881053aacb\"\r\nlast-modified: Mon, 25 Oct 2021 15:58:18 GMT\r\ncdn-cachedat: 08/14/2025 09:22:53\r\nx-amz-id-2: 6nbZVs2fCVJBX2tDxidZ9xWZKq6KDqqjajuMojUxevJtdvGzsT8plPy5M/MDhB55oi0yocqqLwhh7H6XXCqgHUT47tkb1qJgxx7WFQWCMwA=\r\nx-amz-request-id: MPTTKC7TX0HT61HG\r\nx-amz-meta-hash: f63bd5af595e60e5cc8e8e881053aacb\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: 7e7a393ddb8decadfb2b5f14ec1fb9d2\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":2057,"size_decoded":1545,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (2057), with no line terminators","md5":"f63bd5af595e60e5cc8e8e881053aacb","sha1":"8c152790a7ca6d8db24fec806e48956118461c6c","sha256":"8a9e3344b642102911cac53901f465435acba99fd75daf0eedb5805982709314","sha512":"86b64ee93e944180e2af8a084b679f4a57db796b694eebe47a3a7d9f0668ac36650a17c7e74e01c21c899aeb64449139dfd5f5511acd11dfbae5813ec1dfa1d4","ssdeep":"","tlshash":"7541e26eda6b9cb7e25ac2acd908c466311f0697d9ca8356d1a4df7f346c5c30d0db80","first_seen":"2025-07-04T10:15:14.832441Z","last_seen":"2026-07-27T05:33:43.627985Z","times_seen":52,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSJ1cmwoI3BhaW50MF9saW5lYXJfMTUzMCkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTMgNy43Nzh2My4zNGwtNCAyLjIwNi00LTIuMjA3VjYuODMyTDkgNC42N2wzLjE5OCAxLjYyNS43NjMtLjYxNUw5IDMuNSA0IDYuMjV2NS41bDUgMi43NSA1LTIuNzVWNy4zNDJsLTEgLjQzNXoiIGZpbGw9InVybCgjcGFpbnQxX2xpbmVhcl8xNTMwKSIvPjxwYXRoIGQ9Ik04IDExLjVIN1Y5aDIuMTU0Yy40NjgtLjAwNS44NDUtLjI0NC44NDYtLjcyNi4wMDUtLjQ3NC0uMzgzLS43NzctLjg0Ni0uNzc0SDd2LTFoMi4zMzVjMS4wNjUgMCAxLjY2Ljg3OCAxLjY2NSAxLjcuMDA4IDEuMDM4LS43NDUgMS44MDgtMS43MzUgMS44SDh2MS41eiIgZmlsbD0idXJsKCNwYWludDJfbGluZWFyXzE1MzApIi8+PHBhdGggZD0iTTExLjI2IDExLjVoLTEuMTM0bC0uNjc0LTEuMTU4Yy4yNjYtLjAxNi43Ni0uMTE2Ljk3OS0uMzI3bC44MyAxLjQ4NXoiIGZpbGw9InVybCgjcGFpbnQzX2xpbmVhcl8xNTMwKSIvPjxwYXRoIGQ9Ik0xMyA2Ljc2bC41LjI0LjUtLjI0VjYuMjVMMTMuNSA2bC0uNS4yNTF2LjUwOHoiIGZpbGw9InVybCgjcGFpbnQ0X2xpbmVhcl8xNTMwKSIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQwX2xpbmVhcl8xNTMwIiB4MT0iMy4zNDkiIHkxPSIzLjEyMiIgeDI9IjIxLjkwNCIgeTI9IjI0LjQzNCIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiMxQTFFMjEiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMwNjA2MEEiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQxX2xpbmVhcl8xNTMwIiB4MT0iMTMuOTkxIiB5MT0iNi4yNTQiIHgyPSIzLjUzNSIgeTI9IjEwLjY0MyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiNDMjAwRkIiLz48c3RvcCBvZmZzZXQ9Ii40OSIgc3RvcC1jb2xvcj0iIzM3NzJGRiIvPjxzdG9wIG9mZnNldD0iLjQ5IiBzdG9wLWNvbG9yPSIjMzc3M0ZFIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjNUFDNEJFIi8+PC9saW5lYXJHcmFkaWVudD48bGluZWFyR3JhZGllbnQgaWQ9InBhaW50Ml9saW5lYXJfMTUzMCIgeDE9IjEzLjc2IiB5MT0iNi4xOTEiIHgyPSIzLjM1MSIgeTI9IjEwLjM5OCIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiNDMjAwRkIiLz48c3RvcCBvZmZzZXQ9Ii40OSIgc3RvcC1jb2xvcj0iIzM3NzJGRiIvPjxzdG9wIG9mZnNldD0iLjQ5IiBzdG9wLWNvbG9yPSIjMzc3M0ZFIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjNUFDNEJFIi8+PC9saW5lYXJHcmFkaWVudD48bGluZWFyR3JhZGllbnQgaWQ9InBhaW50M19saW5lYXJfMTUzMCIgeDE9IjEzLjg1OCIgeTE9IjYuMzA5IiB4Mj0iMy40MDIiIHkyPSIxMC42OTgiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjQzIwMEZCIi8+PHN0b3Agb2Zmc2V0PSIuNDkiIHN0b3AtY29sb3I9IiMzNzcyRkYiLz48c3RvcCBvZmZzZXQ9Ii40OSIgc3RvcC1jb2xvcj0iIzM3NzNGRSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzVBQzRCRSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IGlkPSJwYWludDRfbGluZWFyXzE1MzAiIHgxPSIxNC4wMDEiIHkxPSI2LjI1MiIgeDI9IjQuMTk3IiB5Mj0iMTAuNzc4IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agc3RvcC1jb2xvcj0iI0MyMDBGQiIvPjxzdG9wIG9mZnNldD0iLjQ5IiBzdG9wLWNvbG9yPSIjMzc3MkZGIi8+PHN0b3Agb2Zmc2V0PSIuNDkiIHN0b3AtY29sb3I9IiMzNzczRkUiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiM1QUM0QkUiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4="}},"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":"besttrader.live/admin/testimony-images/412b.jpg","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.110Z","timestamp":1785126256110,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /admin/testimony-images/412b.jpg HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/jpeg\r\ncontent-length: 124662\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-1e6f6\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":124662,"size_decoded":124915,"mime_type":"image/jpeg","magic":"PNG image data, 300 x 300, 8-bit/color RGB, non-interlaced","md5":"9cb1555aaadaac93a6da7f26fcae0aec","sha1":"d98046a5edfc3eda7980453ad75414154787b78f","sha256":"6fa2fbe5689546dd2b6b02a26196b8a6a6fa3e788ffbe317af7b3a91a646e187","sha512":"2c775a1f132e56be331c56f27117b026321aa993492335359be4444098927c4ff84a8dd2916eb476d85acc9b3652656ecdb50df2d1aa7fef38f03d8def8e1645","ssdeep":"3072:k/U5j7wy2/PlMZ2xLO05ecOPMkeLClX1e0oqR4DZULI:kU7wLtzLOwee+lX1ewGZwI","tlshash":"43c312cfab078e148b2e926c2e3d2116ba9d1496345934a0fd8f7eb4f9f2b901521198","first_seen":"2026-03-06T10:22:32.510564Z","last_seen":"2026-07-27T04:25:12.842992Z","times_seen":6,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAIAAAD2HxkiAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QTU2MzBENUVGOTUxMTFFN0E2RjVDQUMxOTdENjA4RTQiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QTU2MzBENURGOTUxMTFFN0E2RjVDQUMxOTdENjA4RTQiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDozM0FGRjM0NkRCNUIxMUU3ODA5MUUwQjM1NEM2OUVGQiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDozM0FGRjM0N0RCNUIxMUU3ODA5MUUwQjM1NEM2OUVGQiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Ph+eDS0AAeNqSURBVHjavL1pkG3b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"}},"time_used":465,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":296,"receive":169,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","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/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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.258Z","timestamp":1785126257258,"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-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/ticker-tape/?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 04:24:17 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: cb0f899517afe6e4050281d822aac7e0\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-27T07:05:45.4484Z","times_seen":1029,"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":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.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.154Z","timestamp":1785126258154,"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-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/crypto-mkt-screener/?locale=en\r\nSec-Fetch-Storage-Access: none\r\nSec-GPC: 1\r\nConnection: keep-alive\r\nCookie: _sp_ses.6222=*; _sp_id.6222=.1785126258.1.1785126258..f046d173-2de7-466f-b43d-da020e6c1d25..5e0c746c-9d4f-48c1-a771-92d2f9f1761c.1785126257760.1\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 04:24:18 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: f6cc27fea8fed738f316e8616e7fa227\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-27T07:05:45.346086Z","times_seen":10181,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtVDJTTzp2YXIoLS1jb2xvci13aGl0ZSk7LS1fMS1UMlNPOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApfVtkYXRhLXRoZW1lPWRhcmtdey0tXzAtVDJTTzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLV8xLVQyU086dmFyKC0tY29sb3Itd2hpdGUpfS5sYWJlbC1lOWM2ZHljVntiYWNrZ3JvdW5kOnZhcigtLV8wLVQyU08pfS5sYWJlbC1lOWM2ZHljViAubG9nb1dyYXAtZTljNmR5Y1Ygc3Zne2hlaWdodDoxMHB4O21hcmdpbjo3cHggMDt3aWR0aDoxN3B4fS5sYWJlbC1lOWM2ZHljViAubG9nb1dyYXAtZTljNmR5Y1Ygc3ZnIHBhdGh7ZmlsbDp2YXIoLS1fMS1UMlNPKX0ubGFiZWwtZTljNmR5Y1YgLnN2Z1RleHRXcmFwLWU5YzZkeWNWIHN2Z3ttYXJnaW46NnB4IDB9LmxhYmVsLWU5YzZkeWNWIC5zdmdUZXh0V3JhcC1lOWM2ZHljViBzdmcgcGF0aHtmaWxsOnZhcigtLV8xLVQyU08pfS5sYWJlbC1lOWM2ZHljVi5sYXJnZS1lOWM2ZHljVntiYWNrZ3JvdW5kOnZhcigtLWNvbG9yLWJnLXNlY29uZGFyeSl9LmxhYmVsLWU5YzZkeWNWLmxhcmdlLWU5YzZkeWNWIC5sb2dvV3JhcC1lOWM2ZHljViBzdmd7aGVpZ2h0OjExcHg7bWFyZ2luOjExcHggMCAxMHB4O3dpZHRoOjIwcHh9LmxhYmVsLWU5YzZkeWNWLmxhcmdlLWU5YzZkeWNWIC5zdmdUZXh0V3JhcC1lOWM2ZHljViBzdmd7aGVpZ2h0OjE0cHg7bWFyZ2luOjEwcHggMDt3aWR0aDo3N3B4fQ=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCBGB.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.626Z","timestamp":1785126258626,"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 /crypto/XTVCBGB.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 04:24:18 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: \"1fe05cd2233784b60040f7d17447fe00\"\r\nlast-modified: Thu, 06 Jun 2024 10:22:48 GMT\r\ncdn-cachedat: 08/09/2025 14:34:34\r\nx-amz-id-2: wfoK9bslcUA0S/aoQGWUlDV6II9KFELFpndBmdJrH5OwS29Kc7d+JNyo/jZGpsnVMGeN4gZy9mI=\r\nx-amz-request-id: ZP7N2JVCPMANR3PM\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 1fe05cd2233784b60040f7d17447fe00\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: 2207535a559bce0f09f303c19630505e\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":504,"size_decoded":1265,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (331)","md5":"1fe05cd2233784b60040f7d17447fe00","sha1":"30a9da2dda9d56bab6a5053acb7501b0af88325d","sha256":"49ba1943d4c675edbfe12946627b1afbc9ee9aace85d2edee59bf73c7731fe53","sha512":"0383d5155f51a1b8e0f9dd025f093863bcb0d2ae45692141527362acd2ffb4203aa1a9a757e4bbd2503d61875130c3bce6e0c9677557a82acb5027e8bf2e7df0","ssdeep":"","tlshash":"51f00ed1b268dc0cba0cab3d861928f4604324cdbb0d02ccf1c0b928ac44adbd81859a","first_seen":"2025-04-11T11:28:49.201152Z","last_seen":"2026-07-27T05:33:43.606866Z","times_seen":675,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8cmVjdCB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIGZpbGw9IiMwMEYwRkYiLz4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik02Ljg3Mjk0IDExSDkuNTI5ODhMNi41MDc1NCA3LjkxMTUyTDEwLjQwMjUgNEg3LjY0NDY3TDQuMTMyMzcgNy41ODQzNEMzLjk1NTEyIDcuNzY1IDMuOTU2MDMgOC4wNTczMyA0LjEzNDE5IDguMjM3MDdMNi44NzI5NCAxMVpNMTEuMTI3IDcuMDAwMjNMOC40NzAwMyA3TDExLjQ5MjQgMTAuMDg4NUw3LjU5NzQxIDE0SDEwLjM1NTJMMTMuODY3NSAxMC40MTU5QzE0LjA0NDggMTAuMjM1MiAxNC4wNDM5IDkuOTQyOSAxMy44NjU4IDkuNzYzMTVMMTEuMTI3IDcuMDAwMjNaIiBmaWxsPSJibGFjayIvPgo8L3N2Zz4K"}},"time_used":131,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":131,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCAEROD.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.638Z","timestamp":1785126258638,"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 /crypto/XTVCAEROD.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 04:24:18 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: \"0150190211a13a59831316d28af79dae\"\r\nlast-modified: Fri, 16 Aug 2024 01:11:53 GMT\r\ncdn-cachedat: 08/09/2025 14:33:03\r\nx-amz-id-2: MKfi9NAjsXex0x1TOm01HeKgK4bT5gBtlisLYgFy9anNRfu+bd4HN8NaT1mGrISsUpEhcXNYVbk=\r\nx-amz-request-id: WZFY9NY5XN7S237R\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 0150190211a13a59831316d28af79dae\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: 8bef4ce464d90c6d5a2a35482fe69088\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":2262,"size_decoded":2020,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (2262), with no line terminators","md5":"0150190211a13a59831316d28af79dae","sha1":"f05090c0b9dc1077988963d54fc20cc8b0a0328f","sha256":"fbc146be0a480ef040f957010b90eb805f21f3be9c6d6173e33d319d53ef5047","sha512":"6056e1d06868f6398b950385a8e318c7e6c3934f1fac2f8b1aa91e8cda363888054a34b1b863efff0f8fa5e4ac26a5b53d7546bf1dfd23b220a0f4160a4b06af","ssdeep":"","tlshash":"9541eea9568ca22e5543c36cdb3a9070234f00dab2ae82a86cdf8774a44f5d9ed43824","first_seen":"2025-08-29T06:13:07.059065Z","last_seen":"2026-07-27T07:05:43.325021Z","times_seen":731,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNFQkU4RTEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTEuNzQgNC43OGgtLjAyYy0xLjQuMjgtMi43NS43NC00LjA2IDEuMzZBOC45NSA4Ljk1IDAgMCAwIDUuNyA3LjQ5YTIuNiAyLjYgMCAwIDAtLjYyLjkzQS45Ni45NiAwIDAgMSA1IDhjLjA1LS4zNC4xNi0uNjYuMzYtLjkzLjI1LS4zNi42MS0uNyAxLjA3LTEuMDJhMTAgMTAgMCAwIDEgMS44LTFjLjk1LS40IDEuOTUtLjczIDMtLjk5bC4zOC0uMDVjLjItLjAxLjMzLjA4LjM3LjI3LjAzLjExLjAyLjIyLS4wMy4zMWEuNC40IDAgMCAxLS4yLjJaIiBmaWxsPSIjMEMwRTFFIi8+PHBhdGggZD0ibTExLjcyIDQuNzguMDMuMDNjLjE3LjA5LjI1LjIzLjI1LjQyIDAgLjItLjEuMzItLjI4LjM5LTEuNDEuMjgtMi43OS43NC00LjEyIDEuNGE4LjA2IDguMDYgMCAwIDAtMi4wNCAxLjQ2Yy0uMi4yMi0uMzYuNDgtLjQ4Ljc4QTEuMDUgMS4wNSAwIDAgMSA1IDguNzhsLjA3LS4zNmMuMTUtLjM2LjM1LS42OC42Mi0uOTNhOC45NSA4Ljk1IDAgMCAxIDEuOTctMS4zNSAxNy41IDE3LjUgMCAwIDEgNC4wNS0xLjM2WiIgZmlsbD0iIzA1MzNGRSIvPjxwYXRoIGQ9Ik0xMS43MiA1LjYyYy4xMi4wNy4yLjE2LjI1LjI3LjA0LjEyLjAzLjIzLS4wMi4zNmEuMzQuMzQgMCAwIDEtLjE1LjE2LjcxLjcxIDAgMCAxLS4yLjA2bC0uMS4wMmMtMS4xNy4yNi0yLjMxLjYzLTMuNCAxLjExLS42OC4zLTEuMzEuNjYtMS45IDEuMS0uMi4xNS0uNC4zNC0uNjIuNTdhMi40NyAyLjQ3IDAgMCAwLS41LjhsLS4wMS0uMDFMNSA5LjhhLjk4Ljk4IDAgMCAxIC4wMS0uMjdsLjA2LS4yOGMuMTItLjMuMjgtLjU2LjQ4LS43OC4xNC0uMTYuMjktLjMuNDUtLjQ0LjUtLjQgMS4wMy0uNzUgMS41OS0xLjAyYTE2LjgzIDE2LjgzIDAgMCAxIDQuMTItMS40WiIgZmlsbD0iIzlDQURGRSIvPjxwYXRoIGQ9Im03LjU3IDkuNi0uNTQuMzJhLjcuNyAwIDAgMC0uMjEuMTVsLS41LjM4LS4wOC4wOGMtLjEzLjEzLS4yNS4yOC0uMzcuNDVhLjcuNyAwIDAgMC0uMTMuNTJjLjAxLjE4LjE3LjQuNDcuNjQuMTguMTUuMy4yNS40LjMuNTguMzMgMS4yLjU4IDEuODQuNzdhMTUuNiAxNS42IDAgMCAwIDIuOTMuNTVsLjE1LjAzYy4wNCAwIC4wNy4wMy4wNy4wOXYuMDRjMCAuMDUtLjAxLjA3LS4wNi4wOGE0Ljk0IDQuOTQgMCAwIDEtLjkyLS4wNSAxMC45OSAxMC45OSAwIDAgMS00LjEzLS45NGMtLjQtLjE4LS43NC0uNC0xLjAyLS42Ny0uMjItLjItLjM3LS40Ny0uNDUtLjc4YS44NS44NSAwIDAgMSAwLS40Yy4wNi0uMjYuMTQtLjQ3LjI1LS42NC4yMi0uMzUuNS0uNjYuODYtLjkzYTguNzYgOC43NiAwIDAgMSAxLjU5LS45OSAxNy44IDE3LjggMCAwIDEgMy45Mi0xLjNjLjE1IDAgLjI2LjA4LjMyLjI1LjA0LjEuMDUuMjEuMDEuM2EuNC40IDAgMCAxLS4zLjI3Yy0uNDIuMS0uODMuMi0xLjIzLjMyLS45Ny4yNy0xLjkzLjY2LTIuODcgMS4xNVoiIGZpbGw9IiNGQzEyMDAiLz48cGF0aCBkPSJNNy41NyA5LjZhMTQuNTggMTQuNTggMCAwIDAgMy45My44NWMuMDcgMCAuMS4wNS4xLjE0di4wMmMwIC4wNi0uMDMuMDktLjA5LjFsLS4zMi0uMDMtLjItLjAyYTE4LjggMTguOCAwIDAgMS0xLjcyLS4yYy0uNzgtLjEyLTEuNTMtLjMtMi4yNC0uNTRsLjU0LS4zM1oiIGZpbGw9IiMwQzBFMUUiLz48cGF0aCBkPSJNNi44MSAxMC4wN2MuNDkuMjUuOTguNDUgMS40OS42YTE3LjEgMTcuMSAwIDAgMCAzLjIxLjYyYy4wNi4wMS4xLjA2LjEuMTQtLjAyLjA3LS4wNi4xLS4xMi4xYTMuNTIgMy41MiAwIDAgMC0uMzQtLjAzYy0uMTQgMC0uMjUgMC0uMzQtLjAybC0uNTktLjA2Yy0uNjgtLjA3LTEuMzYtLjE4LTIuMDUtLjM0YTguODYgOC44NiAwIDAgMS0xLjg0LS42M2wuNDgtLjM4WiIgZmlsbD0iIzA1MzNGRSIvPjxwYXRoIGQ9Ik02LjI0IDEwLjUzYy4xOS4xNC4zOC4yNy41OC4zNy41OS4zIDEuMi41NCAxLjg2LjcxLjg3LjI0IDEuOC40IDIuNzguNS4xIDAgLjE0LjA1LjE0LjEydi4wM2MwIC4wNi0uMDMuMDktLjA4LjA5YTIgMiAwIDAgMS0uMzYgMGMtLjItLjAzLS4zNS0uMDUtLjQ1LS4wNWwtLjQ1LS4wNGExMi44NSAxMi44NSAwIDAgMS0yLjktLjU3IDguOTUgOC45NSAwIDAgMS0xLjItLjVsLS4yOS0uMmMuMTItLjE4LjI0LS4zMy4zNy0uNDZaIiBmaWxsPSIjOUNBREZFIi8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCMETIS.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.779Z","timestamp":1785126258779,"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 /crypto/XTVCMETIS.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 04:24:18 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: \"e0e2230095fe8a5e9921c359bbc4b970\"\r\nlast-modified: Tue, 04 Oct 2022 10:23:03 GMT\r\ncdn-cachedat: 08/09/2025 14:34:58\r\nx-amz-id-2: kirg4Fnx+g7FvX39z5M3vRYoiOZRvqE8oA4NHsuHHBnw88uA6X8EcIX6NSV/g+QnVayRL3qEaoc=\r\nx-amz-request-id: JYQ1C13ZD9DC6DH2\r\nx-amz-meta-hash: e0e2230095fe8a5e9921c359bbc4b970\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: a77c3e26c17ea66964ec1e40b9ec3a9c\r\ncdn-cache: REVALIDATED\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":1433,"size_decoded":1643,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1433), with no line terminators","md5":"e0e2230095fe8a5e9921c359bbc4b970","sha1":"66850c06d5e3bbb9d0b1879e0ac3bc884a5530e3","sha256":"c372e6a29e9acb60cae22601457db815a33631375ffb247986823c0fa55a159b","sha512":"160aa982370145effbf010a3821e9cf9b3936288e61b5ffbdb39df603785f4537fe9864f818cf07da8c9d7fdaba466f8a65c9fe57006b4d7eb625e8bb061be97","ssdeep":"","tlshash":"f621aa128280f7aa9cc3d15edaf755e2109b40c8f1ffa9ed68e6971c204f4c9f924574","first_seen":"2026-06-15T09:39:41.711756Z","last_seen":"2026-07-27T05:33:43.68162Z","times_seen":8,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMwMEQ4QzEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNOC43NCA5LjIyYy4xLS4xOS4yOS0uNC40Ni0uNi40NC4wMS43NS4wMyAxLjE4LS4yLjE2LS4wNy4yLS4wNi4yNC0uMjMtLjUzIDAtLjY1LjA2LTEuMDguMTUuMjgtLjM5IDEuNC0uNjQgMS40Ni0xLjE0LS4zOS4wOC0uNTIuMTQtLjc5LjMzbC0uNjMuNWMuMDMtLjE3LjE1LS4zNS4yMi0uNS4xLS4yMi4wNy0uMy4xMy0uNTMtLjE5LjAyLS4yOC4yMS0uNC4zNy0uNTEuNzQtLjMyIDEuMzQtLjg5IDEuNjYuMDQtLjM3LjItLjc4LjA4LTEuMTktLjMzLS4wMy0uMzYuNjctLjM2IDEuMDYgMCAuOTIuMDEuNDgtLjMyIDEuMTMtLjAyLS4yNSAwLS44NC0uMDctMS4wMi0uMS0uMjItLjAyLS4xNC0uMjEtLjE0LS4xNC4yNC0uMDUuOTEgMCAxLjE4LjA1LjIzLjEyLjMyLjA1LjUxLS4wMi4wOC0uMTQuMzgtLjE5LjQ3LS4wOC0uMzctLjMtMS4wMi0uNi0uOTgtLjEuMzUuMzIuOTguNTMgMS4xNCAwIC4zMy0uMS40Mi0uMS44MS4wNS0uMS4wNy0uMTQuMS0uMjVsLjA1LS4zMmMuNC0uMDEgMS4yLS4xIDEuMjctLjYyLS4zNC0uMS0uOS4yNy0xLjE2LjQuMDMtLjIuMi0uNjIuMy0uNzQuMzMuMDggMS4xNi4wMiAxLjI2LS40bC0xLjIuMjEuNC0uNzFjLjQ1IDAgMS4zNi0uMTMgMS40Ny0uNTQtLjUyLS4wNi0uOC4xMS0xLjIuMTlaIiBmaWxsPSIjRjBGM0ZBIi8+PHBhdGggZD0iTTkuMDEgNEE1LjA0IDUuMDQgMCAwIDEgMTQgOS4wOGMwIDIuODMtMi4xOSA0LjMtMy43MiA0LjkyaC0uMDFjLS4zNy0uNDctLjI0LS4zOC4xNS0xLjMzLjI5LS43LjI0LS43OS4zNS0xLjEuMDQtLjEyLjEyLS4yMS4xNi0uMyAxLjM1LS4wMSAxLjYzLS4wMyAxLjYyLS41OSAwLS4zNy0uMDItLjI0LjEzLS40OC0uMS0uMTctLjA4LS4yNC0uMDQtLjM3LjA3LS4yMiAwLS4yLS4wNi0uMzkuMTctLjE0LjMyLS4xNS40Mi0uMzctLjExLS4xOS0uNDYtLjI3LS42Mi0uNC0uMy0uMjUtLjM3LS40My0uMzgtLjU5IDAtLjIuMTItLjM1LjEyLS40Ny4wMS0uMTQtLjE3LS4zNS0uMjUtLjVsLS4yNy0uNmMtLjI5LS43LS42OC0uNzgtMS41LS44Ny0uNjgtLjA4LTEuMDktLjE3LTEuNDQtLjE3LS40NCAwLS43OS4yNS0xLjQ0Ljc2LS4zMS4yNS0uNi40LS45NC41Ny0uNDUuMzQtMS4yNy44OC0xLjI4IDEuNDZMNC45OSA5Yy0uMDEuNjcuNjcuNzkuNzQuOTYuMDYuMTIuMDMuMjUuMS40My4xMy4yNi4xMS4xMS4yOS4yNS4xNS4xMi4yMi41LjMyLjY5LjIyLjM3IDEuMDUuNTYgMS4yMi42OS0uMDMuNDYtLjUgMS4yNS0uODMgMS42NEE1LjEgNS4xIDAgMCAxIDkuMDEgNFoiIGZpbGw9IiNGMEYzRkEiLz48L3N2Zz4="}},"time_used":131,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":131,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCWCTW.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.790Z","timestamp":1785126258790,"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 /crypto/XTVCWCTW.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 04:24:18 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: \"9a3c2f349d052f109edf112cb3fbd94e\"\r\nlast-modified: Wed, 30 Apr 2025 15:36:38 GMT\r\ncdn-cachedat: 08/09/2025 14:35:11\r\nx-amz-id-2: 7EX3UOx4+An0VvSeyGgw0tRI+4rPFzsMWZAfNNGnOyHs96MQnPLUJ3jA4SGGFhQeOeOkADhcpLQ=\r\nx-amz-request-id: KR6V8HPH8SYA9C5E\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 9a3c2f349d052f109edf112cb3fbd94e\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: 44481518fa56e84764c382863471d56a\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":334,"size_decoded":1162,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (334), with no line terminators","md5":"9a3c2f349d052f109edf112cb3fbd94e","sha1":"1836644ff2ca69c724f583cac2869af501cae50f","sha256":"9b39e1248acea8af986df30fcbfca3ae50db435d0903e2f3bb3cf688e3b19283","sha512":"254f62e367b5bef9bd656cbabb79b7d1f6d99c65ded9bed03b35fe75402bec44ebbe8f1345df348888af9258f2331ee067971bdded13857f931eb591eefd3745","ssdeep":"","tlshash":"7fe0c0f9921c558c20028694e25822c2339f50b821d64be1706557f0a40c2fbdc0157c","first_seen":"2026-06-24T00:20:52.015Z","last_seen":"2026-07-27T07:05:43.335645Z","times_seen":133,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMwOTg4RjAiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNNC4wNSA4IDMgOS4xNSA2LjUyIDEzIDkgMTAuMjggMTEuNDggMTMgMTUgOS4xNSAxMy45NSA4bC0yLjQ3IDIuN0w5IDhsLTIuNDggMi43TDQuMDUgOFpNMTMgNi44NGE1LjI1IDUuMjUgMCAwIDAtOCAuMDVMNi4wOCA4YTMuNzcgMy43NyAwIDAgMSA1Ljg0LS4wNUwxMyA2Ljg0WiIgZmlsbD0iI2ZmZiIvPjwvc3ZnPg=="}},"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/css?family=Raleway\u0026display=swap","fqdn":"fonts.googleapis.com","domain":"fonts.googleapis.com","tld":"googleapis.com"},"ip":{"addr":"142.250.178.74","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.020Z","timestamp":1785126256020,"http_version":"HTTP/2","security_state":"secure","security_info":{"cipher_suite":"TLS_AES_256_GCM_SHA384","key_group_name":"mlkem768x25519","signature_name":"ECDSA-P256-SHA256","protocol":"TLSv1.3","cert":{"subject":{"commonName":"upload.video.google.com","organization":""},"issuer":{"commonName":"WE2","organization":"Google Trust Services"},"validity":{"start":"Mon, 29 Jun 2026 08:39:27 GMT","end":"Mon, 21 Sep 2026 08:39:26 GMT"},"fingerprint":{"sha1":"50:37:CF:61:33:A1:EE:47:D9:3D:A6:5E:07:BA:4C:FF:F7:25:9F:76","sha256":"7D:4D:21:06:63:E2:5E:F0:8C:59:8E:EB:B7:94:2B:81:70:11:D3:F4:C0:A0:81:A6:1B:E7:27:FD:56:10:1A:11"}}},"request":{"raw":"GET /css?family=Raleway\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://besttrader.live/\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 04:24:16 GMT\r\ndate: Mon, 27 Jul 2026 04:24:16 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":1926,"size_decoded":1245,"mime_type":"text/css; charset=utf-8","magic":"ASCII text","md5":"9d29cc68a9867f01364fb24f0a84cb93","sha1":"93188daf1062ecd527959bf91cea890dac0192d4","sha256":"62c991091f744ea20599035d73956c6d76e567ede809453362ff55a50f1743ae","sha512":"8014522a154f213f8a0d4370db8c6250b65ae5c64f5fd2a69c4fe6fe4ca218ef7ffd69e7ed1353d80a8d0d069ac5332814909eed05e4a97d8cd47a03d2a0c540","ssdeep":"","tlshash":"0241de9209179110db435dc663ce3e37ad4e12122003d17a6ffe58e9acaac221394b0d","first_seen":"2025-09-12T12:59:55.1222Z","last_seen":"2026-07-27T04:25:12.84776Z","times_seen":1687,"resource_available":false,"data":"LyogY3lyaWxsaWMtZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUmFsZXdheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yYWxld2F5L3YzNy8xUHR4Zzh6WVNfU0tnZ1BONGlFZ3ZuSHl2dmVMeFZ2YW9yQ0ZQckVISkEud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzA0NjAtMDUyRiwgVSsxQzgwLTFDOEEsIFUrMjBCNCwgVSsyREUwLTJERkYsIFUrQTY0MC1BNjlGLCBVK0ZFMkUtRkUyRjsKfQovKiBjeXJpbGxpYyAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1JhbGV3YXknOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcmFsZXdheS92MzcvMVB0eGc4ellTX1NLZ2dQTjRpRWd2bkh5dnZlTHhWdmFvckNNUHJFSEpBLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMzAxLCBVKzA0MDAtMDQ1RiwgVSswNDkwLTA0OTEsIFUrMDRCMC0wNEIxLCBVKzIxMTY7Cn0KLyogdmlldG5hbWVzZSAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1JhbGV3YXknOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcmFsZXdheS92MzcvMVB0eGc4ellTX1NLZ2dQTjRpRWd2bkh5dnZlTHhWdmFvckNIUHJFSEpBLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMTAyLTAxMDMsIFUrMDExMC0wMTExLCBVKzAxMjgtMDEyOSwgVSswMTY4LTAxNjksIFUrMDFBMC0wMUExLCBVKzAxQUYtMDFCMCwgVSswMzAwLTAzMDEsIFUrMDMwMy0wMzA0LCBVKzAzMDgtMDMwOSwgVSswMzIzLCBVKzAzMjksIFUrMUVBMC0xRUY5LCBVKzIwQUI7Cn0KLyogbGF0aW4tZXh0ICovCkBmb250LWZhY2UgewogIGZvbnQtZmFtaWx5OiAnUmFsZXdheSc7CiAgZm9udC1zdHlsZTogbm9ybWFsOwogIGZvbnQtd2VpZ2h0OiA0MDA7CiAgZm9udC1kaXNwbGF5OiBzd2FwOwogIHNyYzogdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yYWxld2F5L3YzNy8xUHR4Zzh6WVNfU0tnZ1BONGlFZ3ZuSHl2dmVMeFZ2YW9yQ0dQckVISkEud29mZjIpIGZvcm1hdCgnd29mZjInKTsKICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDJCQSwgVSswMkJELTAyQzUsIFUrMDJDNy0wMkNDLCBVKzAyQ0UtMDJENywgVSswMkRELTAyRkYsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMUQwMC0xREJGLCBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjsKfQovKiBsYXRpbiAqLwpAZm9udC1mYWNlIHsKICBmb250LWZhbWlseTogJ1JhbGV3YXknOwogIGZvbnQtc3R5bGU6IG5vcm1hbDsKICBmb250LXdlaWdodDogNDAwOwogIGZvbnQtZGlzcGxheTogc3dhcDsKICBzcmM6IHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcmFsZXdheS92MzcvMVB0eGc4ellTX1NLZ2dQTjRpRWd2bkh5dnZlTHhWdmFvckNJUHJFLndvZmYyKSBmb3JtYXQoJ3dvZmYyJyk7CiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzIwMDAtMjA2RiwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7Cn0K"}},"time_used":86,"timings":{"blocked":-1,"dns":2,"connect":15,"send":0,"wait":34,"receive":0,"ssl":35},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/images/icon/hamburger-blk.png","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.079Z","timestamp":1785126256079,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/icon/hamburger-blk.png HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/png\r\ncontent-length: 1471\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-5bf\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":1471,"size_decoded":1719,"mime_type":"image/png","magic":"PNG image data, 32 x 22, 8-bit/color RGBA, non-interlaced","md5":"5592d843dcddef73ad2c328272e2ff91","sha1":"3cd9600ddce932667330718d98dce53789dc0ae3","sha256":"1c3e22a52cdb8df0937e4e3059aed3409ff9d17d9f618de75e8bd45f3b660c7a","sha512":"4923ed339583051741087813af674831ae375b6d15073836242db44c7b9a32088fd13ddef76332529ddeb091138029a2f04cc16da7078378e02a529eecf922aa","ssdeep":"","tlshash":"6631200aec00bc52058dff456dd672a32a3387e0aec1a499fcdd989755200fb8d5d2d3","first_seen":"2023-05-02T00:43:59Z","last_seen":"2026-07-27T04:25:12.848802Z","times_seen":25,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAACAAAAAWCAYAAAChWZ5EAAAACXBIWXMAAASdAAAEnQF8NGuhAAAFFmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDggNzkuMTY0MDM2LCAyMDE5LzA4LzEzLTAxOjA2OjU3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgMjEuMCAoV2luZG93cykiIHhtcDpDcmVhdGVEYXRlPSIyMDIwLTAyLTE2VDExOjI2OjUyKzAxOjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyMC0wMi0xNlQyMTowMjozMyswMTowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyMC0wMi0xNlQyMTowMjozMyswMTowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo0OGUwNGRjNC02NTRkLTJlNGQtYTViOC02YWQzMGU0OWRlNDIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NDhlMDRkYzQtNjU0ZC0yZTRkLWE1YjgtNmFkMzBlNDlkZTQyIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6NDhlMDRkYzQtNjU0ZC0yZTRkLWE1YjgtNmFkMzBlNDlkZTQyIj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo0OGUwNGRjNC02NTRkLTJlNGQtYTViOC02YWQzMGU0OWRlNDIiIHN0RXZ0OndoZW49IjIwMjAtMDItMTZUMTE6MjY6NTIrMDE6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCAyMS4wIChXaW5kb3dzKSIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz47tPekAAAAT0lEQVRIiWP8//8/w0ACpgG1nYGBgQWZE7zhPUpwrA0QZMSnmRT1uNQOeAgMuAMYR3wiHHXAgDtgtBwYcAeMlgOjDhhwB4yWAwPugAEvBwBU0TAjgQAa8gAAAABJRU5ErkJggg=="}},"time_used":418,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":327,"receive":91,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/images/bitcoin.png","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.102Z","timestamp":1785126256102,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/bitcoin.png HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/png\r\ncontent-length: 5207\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-1457\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":5207,"size_decoded":5456,"mime_type":"image/png","magic":"PNG image data, 319 x 125, 8-bit/color RGBA, non-interlaced","md5":"4bc9e3aac2dcce3a9fe7519794c81a64","sha1":"b9d419a2a9250c7cff05c19474fabdbe3c29c8d5","sha256":"e24badcd39edc3f57445f0de93696800c2c2fd8f6f14f8fff94228fd4b2e7c25","sha512":"aeb444963aff8bfc85911101acdd2c4aa6dbd7cb2bb8c0e4f66e0b7ca391020ad13e1a3de8c4f79068d32e167083998fb3d23dbec95cd882cf5e1894a0067512","ssdeep":"96:c/nF00zkjAkHHH7HHHHMBfmWnrm6nnG+gzKX27570pmigh3wbctC3A4gG4kBVG3N:OF0wmeG+gz9gmiF53gkB89","tlshash":"f0b16cb8f8d01fc3160846a0eb72ac698d8c0d2ffcad5dbcc846747608d70ea4547897","first_seen":"2023-05-02T00:43:59Z","last_seen":"2026-07-27T04:25:12.850457Z","times_seen":196,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAT8AAAB9CAYAAADUQWR4AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3BpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTMyIDc5LjE1OTI4NCwgMjAxNi8wNC8xOS0xMzoxMzo0MCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpmMDg0Mzc3Mi0zNjViLWE5NDktYWM1NS03ZGY2YzZkYzVmZWMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MUM4RDE3QzY4RkM1MTFFNzlFQUM4NDdCQ0U4RDhBRkIiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MUM4RDE3QzU4RkM1MTFFNzlFQUM4NDdCQ0U4RDhBRkIiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUuNSAoV2luZG93cykiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpDQkNEMDhDMjhENjExMUU3OTM5MjgyRDY3MkRDNjQ1RSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpDQkNEMDhDMzhENjExMUU3OTM5MjgyRDY3MkRDNjQ1RSIvPiA8L3Jk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"}},"time_used":392,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":302,"receive":90,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/demo/plat.css","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://besttrader.live/demo/index.html","date":"2026-07-27T04:24:16.843Z","timestamp":1785126256843,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /demo/plat.css HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/demo/index.html\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: text/css\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: W/\"65211e70-2ca5\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":11429,"size_decoded":2613,"mime_type":"text/css","magic":"assembler source, ASCII text, with CRLF line terminators","md5":"704e511e28bf446c5f32d5d81db545a1","sha1":"2b7c5fc8a19c9a035b09b80bc8917ab705e3b8a0","sha256":"0602dcde89d8fbe8c12bf9f65b7c2a7180aac6e221eca77081e08f6adf466cda","sha512":"40d2a213db576bf0f485f86a3acc4f4c801c0fbf19e5d23194c1472f28b073be9197d7e69385f86d0c0e0fee86b3165043cfb7f4076d5ab9b5df6b4b878a19fd","ssdeep":"96:l3TyjwyksD1IslmEMtr1RJNP24Ytr1PaEibY7W6C8BMnbIMnWSVEE3MnQLtvVpim:KksD1VHMBydf7W6CzcWD6S3BUe","tlshash":"c332025cdf0651006737cba4b74267b5fa3c40a16f0302babee47845e38f95d9225faa","first_seen":"2026-07-27T03:36:45.062395Z","last_seen":"2026-07-27T04:25:12.851668Z","times_seen":2,"resource_available":false,"data":"LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCiAgICAgICAgICAgICBSZXNldA0KKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8NCg0KLyogQm9yZGVyLUJveCAqLw0KDQoqLA0KKjpiZWZvcmUsDQoqOmFmdGVyIHsNCiAgYm94LXNpemluZzogaW5oZXJpdDsNCn0NCg0KaHRtbCB7DQogIGJveC1zaXppbmc6IGJvcmRlci1ib3g7DQp9DQoNCi8qIGlQYWQgSW5wdXQgU2hhZG93cyAqLw0KDQppbnB1dFt0eXBlPSJ0ZXh0Il0sDQppbnB1dFt0eXBlPSJlbWFpbCJdLA0KaW5wdXRbdHlwZT0ic2VhcmNoIl0sDQppbnB1dFt0eXBlPSJwYXNzd29yZCJdIHsNCiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOw0KICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7DQogIC8qIG1vYmlsZSBmaXJlZm94IHRvbyEgKi8NCn0NCmJvZHkgew0KICBtYXJnaW46IDA7DQogIGZvbnQtZmFtaWx5OiAiT3BlbiBTYW5zIiwgc2Fucy1zZXJpZjsNCn0NCmEgew0KICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsNCn0NCg0KLyoqDQogKiBJbXByb3ZlIHJlYWRhYmlsaXR5IHdoZW4gZm9jdXNlZCBhbmQgYWxzbyBtb3VzZSBob3ZlcmVkIGluIGFsbCBicm93c2Vycy4NCiAqLw0KDQphOmFjdGl2ZSwNCmE6aG92ZXIgew0KICBvdXRsaW5lOiAwOw0KfQ0KLmxlZnQgew0KICBmbG9hdDogbGVmdDsNCn0NCi5yaWdodCB7DQogIGZsb2F0OiByaWdodDsNCn0NCi5jbGVhcmZpeCB7DQogIGNsZWFyOiBib3RoOw0KfQ0KDQouY2xlYXJmaXg6YWZ0ZXIgew0KICB2aXNpYmlsaXR5OiBoaWRkZW47DQogIGRpc3BsYXk6IGJsb2NrOw0KICBmb250LXNpemU6IDA7DQogIGNvbnRlbnQ6ICIgIjsNCiAgY2xlYXI6IGJvdGg7DQogIGhlaWdodDogMDsNCn0NCi5oMSwNCmgxIHsNCiAgbGluZS1oZWlnaHQ6IDMwcHg7DQogIGZvbnQtc2l6ZTogMzBweDsNCiAgZm9udC13ZWlnaHQ6IDEwMDsNCiAgY29sb3I6ICMzYzQ1NGM7DQp9DQoudGV4dC1jZW50ZXJlZCB7DQogIHRleHQtYWxpZ246IGNlbnRlcjsNCn0NCmhlYWRlciB7DQogIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvaGVhZGVyLmh0bWwpIHRvcCBjZW50ZXI7DQogIGhlaWdodDogMTk1cHg7DQogIHdpZHRoOiAxMDAlOw0KICBtaW4td2lkdGg6IDk3MHB4Ow0KfQ0KDQovKi0tLS0tLS0tLS0tLS0tLS0tLWF1dGggZXZlbnQtLS0tLS0tLS0tLS0tLS0tLS0tKi8NCi8qLS0tLS0tLS0tLS0tLS0tLS0tcmVnaXN0ZXItcG9wdXAtLS0tLS0tLS0tLS0tLS0tLS0tKi8NCi8qLmF3YXJkLWltZy1jb250OmhvdmVyLCAjYmVuZWZpdHMgLmF3YXJkLWltZy1jb250OmhvdmVyIHsqLw0KLm1jLXRhYmxlLA0KLmNoYXJ0LXBhZGRpbmcgew0KICB3aWR0aDogNDkwcHg7DQogIGJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDsNCn0NCi5taW5pLWNoYXJ0LWJ0bi1jb250LA0KLm1jLWxvZ28gew0KICB3aWR0aDogMTgwcHg7DQogIGJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDsNCn0NCg0KLm1pbmktY2hhcnQtY29udCA+ICosDQoubWluaS1jaGFydC1sZWdlbmQgPiAqLA0KLm1jLXRhYmxlID4gKiB7DQogIGZsb2F0OiBsZWZ0Ow0KfQ0KLm1pbmktY2hhcnQtbGVnZW5kOmFmdGVyLA0KLm1pbmktY2hhcnQtY29udDphZnRlciB7DQogIGNvbnRlbnQ6ICIiOw0KICBkaXNwbGF5OiBibG9jazsNCiAgY2xlYXI6IGJvdGg7DQp9DQouY2hhcnQtcGFkZGluZyB7DQogIHBhZGRpbmctcmlnaHQ6IDEwcHg7DQogIC8qIGJhY2tncm91bmQ6ICMxYzFjMWM7ICovDQp9DQouY2hhcnQgew0KICBwb3NpdGlvbjogcmVsYXRpdmU7DQogIC8qIGNvbG9yOiAjZDQ0YTNkOyAqLw0KICBmb250LWZhbWlseTogIlJvYm90b0JvbGQiLCBzYW5zLXNlcmlmOw0KICB3aWR0aDogMTAwJTsNCn0NCi5jaGFydC10aW1lciB7DQogIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgbWFyZ2luOiBhdXRvOw0KICBsZWZ0OiAwcHg7DQogIHJpZ2h0OiAwOw0KICBsZXR0ZXItc3BhY2luZzogMC4ycHg7DQogIHdpZHRoOiAxMDBweDsNCiAgaGVpZ2h0OiA0MHB4Ow0KICB0b3A6IDEycHg7DQogIGZvbnQtc2l6ZTogMjBweDsNCiAgcG9pbnRlci1ldmVudHM6IG5vbmU7DQogIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7DQogIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7DQogIC1tcy11c2VyLXNlbGVjdDogbm9uZTsNCiAgLW8tdXNlci1zZWxlY3Q6IG5vbmU7DQogIHVzZXItc2VsZWN0OiBub25lOw0KICBjb2xvcjogIzU1NmU3ODsNCn0NCi5jaGFydC10aW1lLXNlbGYgew0KICBwYWRkaW5nLWxlZnQ6IDEwcHg7DQogIHZlcnRpY2FsLWFsaWduOiB0b3A7DQp9DQoubWluaS1jaGFydC1jb250IHsNCiAgd2lkdGg6IDEwMCU7DQp9DQoubWMtdGFibGUtdGQtbGVnZW5kIHsNCiAgcGFkZGluZy10b3A6IDEzcHg7DQogIGZvbnQtd2VpZ2h0OiAzMDA7DQogIGZvbnQtc2l6ZTogMTRweDsNCiAgZm9udC1mYW1pbHk6ICJSb2JvdG9MaWdodCIsIHNhbnMtc2VyaWY7DQogIGxldHRlci1zcGFjaW5nOiAwLjVweDsNCn0NCi5tYy10YWJsZS10ZCB7DQogIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7DQogIGJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDsNCiAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7DQogIHdpZHRoOiAyNC41JTsNCiAgY29sb3I6ICNjMGMxYzQ7DQp9DQoNCi5tYy10YWJsZS10ZC1sZWdlbmQgYiB7DQogIGZvbnQtZmFtaWx5OiAiUm9ib3RvQm9sZCIsIHNhbnMtc2VyaWY7DQp9DQoNCi5taW5pLWNoYXJ0LWxlZ2VuZCB7DQogIGhlaWdodDogNzBweDsNCiAgd2lkdGg6IDQ5MHB4Ow0KICBmbG9hdDogbGVmdDsNCn0NCi5tYy10YWJsZS10ZC12YWx1ZSB7DQogIHBhZGRpbmctdG9wOiAwcHg7DQogIGZvbnQtc2l6ZTogMjRweDsNCiAgZm9udC1mYW1pbHk6ICJSb2JvdG9MaWdodCIsIHNhbnMtc2VyaWY7DQp9DQoudGV4dC1ncmVlbiB7DQogIGNvbG9yOiAjMDNhZTg5Ow0KfQ0KLnRleHQteWVsbG93IHsNCiAgY29sb3I6ICNmZmUwNzY7DQp9DQoubWMtYnRuIHsNCiAgZGlzcGxheTogaW5saW5lLWJsb2NrOw0KICBwb3NpdGlvbjogcmVsYXRpdmU7DQogIHotaW5kZXg6IDI7DQogIGZvbnQtd2VpZ2h0OiBub3JtYWw7DQogIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsNCiAgY3Vyc29yOiBwb2ludGVyOw0KICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOw0KICB3aGl0ZS1zcGFjZTogbm93cmFwOw0KICBvdXRsaW5lOiBub25lOw0KICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOw0KICAtbW96LXVzZXItc2VsZWN0OiBub25lOw0KICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7DQogIC1vLXVzZXItc2VsZWN0OiBub25lOw0KICB1c2VyLXNlbGVjdDogbm9uZTsNCiAgcGFkZGluZzogMTBweCAzMHB4Ow0KICBmb250LXNpemU6IDE4cHg7DQogIGxpbmUtaGVpZ2h0OiAxLjMzOw0KICBib3JkZXI6IG5vbmU7DQogIG1hcmdpbjogMDsNCiAgd2lkdGg6IDEwMCU7DQogIGhlaWdodDogODBweDsNCiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsNCiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94Ow0KICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogIC1vLWJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogIGJveC1zaXppbmc6IGJvcmRlci1ib3g7DQp9DQoubWMtYnRuX2NhbGwgew0KICBjb2xvcjogI2ZmZjsNCiAgYmFja2dyb3VuZC1jb2xvcjogIzZjYTkyNDsNCiAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwIDA7DQogIG1hcmdpbi1ib3R0b206IDFweDsNCn0NCi5tYy1idG5fY2FsbDpob3ZlciwNCi5tYy1idG5fY2FsbDpmb2N1cywNCi5tYy1idG5fY2FsbDphY3RpdmUgew0KICBjb2xvcjogI2ZmZjsNCiAgYmFja2dyb3VuZC1jb2xvcjogIzc2ZDIwYzsNCn0NCi5tYy1idG5fcHV0IHsNCiAgY29sb3I6ICNmZmY7DQogIGJhY2tncm91bmQtY29sb3I6ICNmNzRhNWM7DQogIGJvcmRlci1yYWRpdXM6IDAgMCA0cHggNHB4Ow0KfQ0KLm1jLWJ0bl9wdXQ6aG92ZXIsDQoubWMtYnRuX3B1dDpmb2N1cywNCi5tYy1idG5fcHV0OmFjdGl2ZSB7DQogIGNvbG9yOiAjZmZmOw0KICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTAwYjBiOw0KfQ0KLm1jLWJ0bjphY3RpdmUgew0KICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOw0KfQ0KLm1jLWJ0bjphY3RpdmUgew0KICBvdXRsaW5lOiAwOw0KICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOw0KICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTI1KTsNCiAgYm94LXNoYWRvdzogaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpOw0KfQ0KLm1pbmktY2hhcnQtYnRuLWNvbnQgLm1jLWJ0biBpbWcgew0KICB3aWR0aDogMzFweDsNCiAgcG9zaXRpb246IGFic29sdXRlOw0KICB0b3A6IDJweDsNCiAgYm90dG9tOiAwOw0KICBsZWZ0OiAzMHB4Ow0KICBoZWlnaHQ6IDIycHg7DQogIG1hcmdpbjogYXV0byAwOw0KfQ0KLm1jLWJ0biBzcGFuIHsNCiAgcG9zaXRpb246IHJlbGF0aXZlOw0KICBwYWRkaW5nOiAwIDAgMCA0OHB4Ow0KICBtYXJnaW4tYm90dG9tOiAtNHB4Ow0KICBsZWZ0OiAtMnB4Ow0KICBkaXNwbGF5OiBibG9jazsNCiAgdGV4dC1hbGlnbjogY2VudGVyOw0KICBmb250LXdlaWdodDogMzAwOw0KICBsaW5lLWhlaWdodDogMjBweDsNCn0NCi5tYy1idG4gc3BhbiBiIHsNCiAgZGlzcGxheTogYmxvY2s7DQp9DQoubWMtdGFibGUtdGQubWMtdGFibGUtdGRfcHJpY2Ugew0KICBwYWRkaW5nLWxlZnQ6IDM5cHg7DQogIGNvbG9yOiAjYzBjMWM0Ow0KICBib3JkZXItdG9wOiBzb2xpZCAxMHB4ICMxZjIzMmU7DQogIG1hcmdpbi10b3A6IC0xMHB4Ow0KfQ0KLm1jLXRhYmxlLXRkLm1jLXRhYmxlLXRkX3JldmVudWUgew0KICBwYWRkaW5nLWxlZnQ6IDU0cHg7DQogIGJvcmRlci10b3A6IHNvbGlkIDEwcHggIzFmMjMyZTsNCiAgbWFyZ2luLXRvcDogLTEwcHg7DQp9DQoubWMtdGFibGUtdGQubWMtdGFibGUtdGRfcHJvZml0IHsNCiAgcGFkZGluZy1sZWZ0OiA2NXB4Ow0KICBiYWNrZ3JvdW5kOiAjMmEzMDQwOw0KfQ0KLm1jLXRhYmxlLXRkLm1jLXRhYmxlLXRkX3Byb2ZpdCA+IGRpdiB7DQogIGZvbnQtZmFtaWx5OiAiUm9ib3RvQm9sZCIsIHNhbnMtc2VyaWY7DQp9DQoubWMtdGFibGUgew0KICBwYWRkaW5nOiAwOw0KICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDsNCiAgYm94LXNpemluZzogYm9yZGVyLWJveDsNCiAgcG9zaXRpb246IHJlbGF0aXZlOw0KICBoZWlnaHQ6IDEwMCU7DQogIGJhY2tncm91bmQ6ICMyYTMwNDA7DQp9DQoNCi5tYy1sb2dvLm1jLWxvZ29fZXVydXNkIHsNCiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOw0KfQ0KLm1pbmktY2hhcnQtYnRuLWNvbnQgew0KICBwb3NpdGlvbjogcmVsYXRpdmU7DQogIGZsb2F0OiByaWdodDsNCn0NCi53YWl0LWRlYWwtZW5kIHsNCiAgcG9zaXRpb246IGFic29sdXRlOw0KICB0b3A6IDA7DQogIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgei1pbmRleDogMzsNCiAgaGVpZ2h0OiAxMDAlOw0KICBib3gtc2l6aW5nOiBib3JkZXItYm94Ow0KICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogIGJhY2tncm91bmQ6ICMzMDMwMzA7DQogIGRpc3BsYXk6IG5vbmU7DQogIG9wYWNpdHk6IDA7DQogIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UgMC4xczsNCiAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UgMC4xczsNCiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UgMC4xczsNCn0NCi53ZGUtbGVnZW5kIHsNCiAgbWFyZ2luLXRvcDogMzVweDsNCiAgZm9udC1zaXplOiAyNHB4Ow0KICBmb250LWZhbWlseTogIlJvYm90b0xpZ2h0Iiwgc2Fucy1zZXJpZjsNCiAgbGluZS1oZWlnaHQ6IDI4cHg7DQogIGNvbG9yOiB3aGl0ZTsNCn0NCg0KLndhaXQtZGVhbC1lbmQgew0KICBwb3NpdGlvbjogYWJzb2x1dGU7DQogIHRvcDogMDsNCiAgdGV4dC1hbGlnbjogY2VudGVyOw0KICB6LWluZGV4OiAzOw0KICBoZWlnaHQ6IDEwMCU7DQogIGJveC1zaXppbmc6IGJvcmRlci1ib3g7DQogIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDsNCiAgYmFja2dyb3VuZDogIzMwMzAzMDsNCiAgZGlzcGxheTogbm9uZTsNCiAgb3BhY2l0eTogMDsNCiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZSAwLjFzOw0KICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZSAwLjFzOw0KICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZSAwLjFzOw0KfQ0KDQoud2RlLWxlZ2VuZCB7DQogIG1hcmdpbi10b3A6IDM1cHg7DQogIGZvbnQtc2l6ZTogMjRweDsNCiAgZm9udC1mYW1pbHk6ICJSb2JvdG9MaWdodCIsIHNhbnMtc2VyaWY7DQogIGxpbmUtaGVpZ2h0OiAyOHB4Ow0KICBjb2xvcjogd2hpdGU7DQp9DQoNCi53YWl0LWRlYWwtZW5kIC5jaGFydC10aW1lciB7DQogIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgZGlzcGxheTogYmxvY2s7DQogIGNvbG9yOiAjZDQ0YTNkOw0KICBmb250LWZhbWlseTogIlJvYm90b0JvbGQiLCBzYW5zLXNlcmlmOw0KICB3aWR0aDogMTAwJTsNCiAgdGV4dC1hbGlnbjogY2VudGVyOw0KICBmb250LXNpemU6IDM1cHg7DQogIHRvcDogMTdweDsNCn0NCg0KLmRlYWwtc3RhcnRlZCAud2FpdC1kZWFsLWVuZCB7DQogIG9wYWNpdHk6IDE7DQogIGRpc3BsYXk6IGJsb2NrOw0KfQ0KDQoud2FpdC1kZWFsLWVuZCAuY2hhcnQtdGltZS1zZWxmIHsNCiAgcGFkZGluZy1sZWZ0OiA2cHg7DQp9DQoNCi53YWl0LWRlYWwtZW5kIC5mYS1jbG9jay1vIHsNCiAgd2lkdGg6IDM1cHg7DQp9DQoNCi53YWl0LWRlYWwtZW5kIC5mYS1jbG9jay1vOmJlZm9yZSB7DQogIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgdG9wOiAxcHg7DQp9DQoNCi5kZWFsLWZpbmlzaC1wb3B1cCB7DQogIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgei1pbmRleDogNTsNCiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjczKTsNCiAgd2lkdGg6IDEwMCU7DQogIGhlaWdodDogMTAwJTsNCiAgY29sb3I6IHdoaXRlOw0KICBvcGFjaXR5OiAwOw0KICBkaXNwbGF5OiBub25lOw0KICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlIDAuMXM7DQogIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlIDAuMXM7DQogIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlIDAuMXM7DQp9DQpoMi5kZnAtaGVhZCB7DQogIGZvbnQtc2l6ZTogMzVweDsNCiAgY29sb3I6ICMyMWMyMzk7DQogIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgbWFyZ2luLXRvcDogNDBweDsNCiAgbWFyZ2luLWJvdHRvbTogMTBweDsNCiAgbGV0dGVyLXNwYWNpbmc6IC0wLjVweDsNCn0NCnAuZGZwLWJvZHkgew0KICBmb250LWZhbWlseTogIlJvYm90b0xpZ2h0Iiwgc2Fucy1zZXJpZjsNCiAgdGV4dC1hbGlnbjogY2VudGVyOw0KICBmb250LXNpemU6IDI5cHg7DQogIGNvbG9yOiAjMjFjMjM5Ow0KICBtYXJnaW4tdG9wOiAwOw0KICBtYXJnaW4tYm90dG9tOiAwOw0KICBsZXR0ZXItc3BhY2luZzogMDsNCn0NCi5kZnAtZm9vdCB7DQogIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgZm9udC1zaXplOiAxOHB4Ow0KICBsZXR0ZXItc3BhY2luZzogLTAuMXB4Ow0KfQ0KLnJpZ2h0LWZvb3Qgew0KICBmbG9hdDogbGVmdDsNCiAgd2lkdGg6IDQxJTsNCiAgZm9udC1mYW1pbHk6ICJSb2JvdG9MaWdodCIsIHNhbnMtc2VyaWY7DQogIGZvbnQtc2l6ZTogMThweDsNCiAgdGV4dC1hbGlnbjogbGVmdDsNCiAgcGFkZGluZy10b3A6IDMwcHg7DQp9DQoucmlnaHQtZm9vdCBzcGFuIHsNCiAgZm9udC1mYW1pbHk6ICJSb2JvdG9NZWRpdW0iLCBzYW5zLXNlcmlmOw0KICBmb250LXNpemU6IDE4cHg7DQogIGxldHRlci1zcGFjaW5nOiAxcHg7DQp9DQoubGVmdC1mb290IHsNCiAgZmxvYXQ6IGxlZnQ7DQogIHdpZHRoOiAxNyU7DQogIGhlaWdodDogMTEwcHg7DQogIGZvbnQtc2l6ZTogNjBweDsNCiAgdGV4dC1hbGlnbjogcmlnaHQ7DQogIHBhZGRpbmctdG9wOiAxNXB4Ow0KfQ0KLmxlZnQtZm9vdCBpIHsNCiAgcGFkZGluZy1yaWdodDogMzBweDsNCn0NCi5kZnAtZm9vdCBhIHsNCiAgY29sb3I6ICMwMDg4ZmY7DQogIGZvbnQtZmFtaWx5OiAiUm9ib3RvQm9sZCIsIHNhbnMtc2VyaWY7DQogIHRleHQtZGVjb3JhdGlvbjogbm9uZTsNCn0NCi5kZnAtZm9vdCBhOmhvdmVyIHsNCiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7DQp9DQphLnJlc3RhcnQgew0KICBwb3NpdGlvbjogcmVsYXRpdmU7DQogIHRvcDogMzVweDsNCiAgY29sb3I6ICMwMjY3ZmY7DQogIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOw0KICBjdXJzb3I6IHBvaW50ZXI7DQp9DQphLnJlc3RhcnQgaSB7DQogIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgbGVmdDogLTc1cHg7DQogIHRvcDogLTE1cHg7DQogIGZvbnQtc2l6ZTogNjBweDsNCiAgcGFkZGluZzogMDsNCn0NCi5kZWFsLWZpbmlzaC1wb3B1cC13aW4sDQouZGVhbC1maW5pc2gtcG9wdXAtbG9zZSB7DQogIGRpc3BsYXk6IG5vbmU7DQp9DQouZGVhbC1maW5pc2gtcG9wdXAtbG9zZSBoMi5kZnAtaGVhZCB7DQogIGNvbG9yOiAjNmNhOTI0Ow0KfQ0KDQouZGVhbC1maW5pc2gtcG9wdXAtd2luLA0KLmRlYWwtZmluaXNoLXBvcHVwLWxvc2Ugew0KICBkaXNwbGF5OiBub25lOw0KfQ0KDQouZGVhbC1maW5pc2hlZCAuZGVhbC1maW5pc2gtcG9wdXAgew0KICBkaXNwbGF5OiBibG9jazsNCiAgb3BhY2l0eTogMTsNCn0NCg0KLmRlYWwtZmluaXNoZWRfd2luIC5kZWFsLWZpbmlzaC1wb3B1cC13aW4gew0KICBkaXNwbGF5OiBibG9jazsNCn0NCg0KLmRlYWwtZmluaXNoZWRfbG9zZSAuZGVhbC1maW5pc2gtcG9wdXAtbG9zZSB7DQogIGRpc3BsYXk6IGJsb2NrOw0KfQ0KDQouZGVhbC1maW5pc2gtcG9wdXAtbG9zZSBoMi5kZnAtaGVhZCB7DQogIGNvbG9yOiAjZDQ0YTNkOw0KfQ0KDQouYmxvY2stY2hhcnRzIHsNCiAgcGFkZGluZzogMTBweDsNCiAgYmFja2dyb3VuZDogIzJhMzA0MDsNCiAgLypib3JkZXItbGVmdDogc29saWQgMTBweCAjMUYyMzJFOyovDQogIC8qcGFkZGluZy1sZWZ0OiAwOyovDQp9DQoubWluaS1jaGFydC13cmFwOmFmdGVyIHsNCiAgY2xlYXI6IGJvdGg7DQogIGNvbnRlbnQ6ICIiOw0KICBkaXNwbGF5OiBibG9jazsNCn0NCi5ibG9jay1jaGFydHMgew0KICB3aWR0aDogNzAwcHg7DQp9DQoubWluaS1jaGFydC13cmFwIHsNCiAgd2lkdGg6IDEwMCU7DQp9DQoubWMtbG9nby1lbXB0eSB7DQogIGRpc3BsYXk6IG5vbmU7DQp9DQoNCi5tYy10YWJsZS10ZCB7DQogIHdpZHRoOiAzMyU7DQogIGhlaWdodDogMTAwJTsNCiAgdGV4dC1hbGlnbjogY2VudGVyOw0KfQ0KDQoub3V0ZXIgLmxnLW9nbyB7DQogIGJhY2tncm91bmQ6IHVybCguLi9hc3NldHMvaW1nL2xvZ29fZW5fMjAwLmh0bWwpIDEwcHggY2VudGVyIG5vLXJlcGVhdCAjZjJmMmYyOw0KICBiYWNrZ3JvdW5kLXNpemU6IDI1JTsNCn0NCi5vdXRlciAubWMtbG9nby1lbXB0eSB7DQogIGhlaWdodDogOTBweDsNCiAgd2lkdGg6IDMwJSAhaW1wb3J0YW50Ow0KICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50Ow0KfQ0KDQoub3V0ZXIgLm1jLXRhYmxlLXRkLWxlZ2VuZCB7DQogIHBhZGRpbmctdG9wOiAzMXB4Ow0KfQ0KLm91dGVyIC5tYy10YWJsZS10ZCB7DQogIHdpZHRoOiAyMiU7DQp9DQouYmxvY2stY2hhcnRzIC5vbmUtY2hhcnQgew0KICBtYXJnaW46IDAgIWltcG9ydGFudDsNCn0NCg0KLnVpLWJ1dHRvbnNldCAudWktYnV0dG9uIHsNCiAgbWFyZ2luLWxlZnQ6IDA7DQogIG1hcmdpbi1yaWdodDogLTAuM2VtOw0KfQ0KLnVpLWJ1dHRvbiB7DQogIGRpc3BsYXk6IGlubGluZS1ibG9jazsNCiAgcG9zaXRpb246IHJlbGF0aXZlOw0KICBwYWRkaW5nOiAwOw0KICBsaW5lLWhlaWdodDogbm9ybWFsOw0KICBtYXJnaW4tcmlnaHQ6IDAuMWVtOw0KICBjdXJzb3I6IHBvaW50ZXI7DQogIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7DQogIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgb3ZlcmZsb3c6IHZpc2libGU7DQogIGJhY2tncm91bmQ6ICMwMmIyOGM7DQogIGZvbnQtd2VpZ2h0OiBub3JtYWw7DQogIGNvbG9yOiAjZTBlMWU0Ow0KICBib3JkZXItcmFkaXVzOiA0cHg7DQogIG1hcmdpbi1ib3R0b206IDEwcHg7DQp9DQoudWktYnV0dG9uOmhvdmVyIHsNCiAgYmFja2dyb3VuZDogIzA3YzFlYTsNCn0NCi51aS1zdGF0ZS1hY3RpdmUsDQoudWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWFjdGl2ZSwNCi51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1hY3RpdmUgew0KICBiYWNrZ3JvdW5kOiAjM2E0MTU1Ow0KfQ0KLnVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSB7DQogIGJvcmRlcjogMDsNCiAgY2xpcDogcmVjdCgwIDAgMCAwKTsNCiAgaGVpZ2h0OiAxcHg7DQogIG1hcmdpbjogLTFweDsNCiAgb3ZlcmZsb3c6IGhpZGRlbjsNCiAgcGFkZGluZzogMDsNCiAgcG9zaXRpb246IGFic29sdXRlOw0KICB3aWR0aDogMXB4Ow0KfQ0KLnVpLWJ1dHRvbi10ZXh0LW9ubHkgLnVpLWJ1dHRvbi10ZXh0IHsNCiAgcGFkZGluZzogMC42ZW0gMWVtOw0KfQ0KLnVpLWJ1dHRvbiAudWktYnV0dG9uLXRleHQgew0KICBkaXNwbGF5OiBibG9jazsNCiAgbGluZS1oZWlnaHQ6IG5vcm1hbDsNCn0NCi5tYy10YWJsZS10ZF9wcm9maXQgLm1jLXRhYmxlLXRkLXZhbHVlIHsNCiAgY29sb3I6ICNmNGY0ZjU7DQp9DQojY2hhcnQtbSB7DQogIHBvc2l0aW9uOiByZWxhdGl2ZTsNCiAgYmFja2dyb3VuZC1jb2xvcjogIzFmMjMyZTsNCn0NCg0KLmN0LWNoYXJ0IHsNCiAgLyp0b3A6IDA7Ki8NCiAgLypsZWZ0OiAwOyovDQogIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7DQogIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7DQp9DQoNCi5kZWFsLWZpbmlzaC1wb3B1cCB7DQogIHBvc2l0aW9uOiBhYnNvbHV0ZTsNCiAgei1pbmRleDogMjAwOw0KICB0b3A6IDA7DQogIGxlZnQ6IDA7DQogIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC43Myk7DQogIHdpZHRoOiAxMDAlOw0KICBoZWlnaHQ6IDEwMCU7DQogIGNvbG9yOiB3aGl0ZTsNCiAgb3BhY2l0eTogMDsNCiAgLypkaXNwbGF5OiBub25lOyovDQogIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UgMC4xczsNCiAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UgMC4xczsNCiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UgMC4xczsNCn0NCg0KI2NoYXJ0LWhvbGRlciB7DQogIHBvc2l0aW9uOiByZWxhdGl2ZTsNCn0NCi5sb29zZSBoMi5kZnAtaGVhZCB7DQogIGNvbG9yOiAjZjc0YTVjOw0KfQ0KDQoubWMtbG9nbyBmb3JtIHsNCiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7DQp9DQo="}},"time_used":102,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":102,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.252Z","timestamp":1785126257252,"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-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/ticker-tape/?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 04:24:17 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: 5d6ee863d345a69e87b741b8f5d2ddde\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-27T07:05:45.398742Z","times_seen":959,"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":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.tradingview-widget.com/static/bundles/embed/runtime-embed_screener_v1_widget.9dbe1b28214d7a1471ba.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.341Z","timestamp":1785126257341,"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-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_screener_v1_widget.9dbe1b28214d7a1471ba.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/crypto-mkt-screener/?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 04:24:17 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-7cb6\"\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:53:23\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: f955bc79117dff5f0a0d7b10d6095bd3\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":31926,"size_decoded":16555,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3765)","md5":"078c641a9165940f92f650670dcfe56c","sha1":"588a588b3de873254a2ca6be4975e9a456d154af","sha256":"bf1232ee83f71f223d4d69f4ec7b7ffc474385b0bf3e2ea817a41a51de2fdffc","sha512":"d70d6ac8dc2d5315cae23b5ad2102e5968136636834d12b08553280efe2990f9bb1ca243bb1cc9bcee0f291f1db4af42d8ef1716326c2ca0de1643e12bdfe1ff","ssdeep":"768:2O2u/W/ww+vFmk6+uoYOgJV3MDbos8ZJh9qWxZjcLY8Z4NqSY:2O2u/WIw49gJV3ebo9h9HrD+7F","tlshash":"35e27ded923cd6b336f12da96d7a9863f33c24237c5980d49393b56409a6ff4a232513","first_seen":"2026-07-25T03:24:57.413219Z","last_seen":"2026-07-27T07:14:43.743783Z","times_seen":133,"resource_available":true,"data":"KCgpPT57InVzZSBzdHJpY3QiO3ZhciBlLGEsYyxkLGYsYix0PXt9LHI9e307ZnVuY3Rpb24gbihlKXt2YXIgYT1yW2VdO2lmKHZvaWQgMCE9PWEpcmV0dXJuIGEuZXhwb3J0czt2YXIgYz1yW2VdPXtpZDplLGxvYWRlZDohMSxleHBvcnRzOnt9fTtyZXR1cm4gdFtlXS5jYWxsKGMuZXhwb3J0cyxjLGMuZXhwb3J0cyxuKSxjLmxvYWRlZD0hMCxjLmV4cG9ydHN9bi5tPXQsbi5fcGx1cmFsPXthcjooZSxhPTYsYz0oMD09ZT8wOjE9PWU/MToyPT1lPzI6ZSUxMDA+PTMmJmUlMTAwPD0xMD8zOmUlMTAwPj0xMSYmZSUxMDA8PTk5PzQ6NSkpPT5udWxsPT1lPzA6K2MsY3M6KGUsYT0zLGM9KDE9PWU/MDplPj0yJiZlPD00PzE6MikpPT5udWxsPT1lPzA6K2MscnU6KGUsYT0zLGM9KGUlMTA9PTEmJmUlMTAwIT0xMT8wOmUlMTA+PTImJmUlMTA8PTQmJihlJTEwMDwxMHx8ZSUxMDA+PTIwKT8xOjIpKT0+bnVsbD09ZT8wOitjLHJvOihlLGE9MyxjPSgxPT1lPzA6ZSUxMDA+MTl8fGUlMTAwPT0wJiYwIT1lPzI6MSkpPT5udWxsPT1lPzA6K2MscGw6KGUsYT0zLGM9KDE9PWU/MDplJTEwPj0yJiZlJTEwPD00JiYoZSUxMDA8MTB8fGUlMTAwPj0yMCk/MToyKSk9Pm51bGw9PWU/MDorYyxwdDooZSxhPTIsYz0xIT1lKT0+bnVsbD09ZT8wOitjLGRlOihlLGE9MixjPTEhPWUpPT5udWxsPT1lPzA6K2MsZW46KGUsYT0yLGM9MSE9ZSk9Pm51bGw9PWU/MDorYyxlczooZSxhPTIsYz0xIT1lKT0+bnVsbD09ZT8wOitjLHN2OihlLGE9MixjPTEhPWUpPT5udWxsPT1lPzA6K2MsaXQ6KGUsYT0yLGM9MSE9ZSk9Pm51bGw9PWU/MDorYyx0cjooZSxhPTIsYz0xIT1lKT0+bnVsbD09ZT8wOitjLGVsOihlLGE9MixjPTEhPWUpPT5udWxsPT1lPzA6K2MsZnI6KGUsYT0yLGM9ZT4xKT0+bnVsbD09ZT8wOitjLGZhOihlLGE9MSxjPTApPT5udWxsPT1lPzA6K2MsamE6KGUsYT0xLGM9MCk9Pm51bGw9PWU/MDorYyxrbzooZSxhPTEsYz0wKT0+bnVsbD09ZT8wOitjLHRoOihlLGE9MSxjPTApPT5udWxsPT1lPzA6K2Msdmk6KGUsYT0xLGM9MCk9Pm51bGw9PWU/MDorYyx6aDooZSxhPTEsYz0wKT0+bnVsbD09ZT8wOitjLGhlX0lMOihlLGE9NCxjPSgxPT1lPzA6Mj09ZT8xOmU+MTAmJmUlMTA9PTA/MjozKSk9Pm51bGw9PWU/MDorYyxjYV9FUzooZSxhPTIsYz0xIT1lKT0+bnVsbD09ZT8wOitjLG5sX05MOihlLGE9MixjPTEhPWUpPT5udWxsPT1lPzA6K2MsaHVfSFU6KGUsYT0xLGM9MCk9Pm51bGw9PWU/MDorYyxpZF9JRDooZSxhPTEsYz0wKT0+bnVsbD09ZT8wOitjLG1zX01ZOihlLGE9MSxjPTApPT5udWxsPT1lPzA6K2MsemhfVFc6KGUsYT0xLGM9MCk9Pm51bGw9PWU/MDorY30sbi5hbWREPWZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCJkZWZpbmUgY2Fubm90IGJlIHVzZWQgaW5kaXJlY3QiKX0sZT1bXSxuLk89KGEsYyxkLGYpPT57aWYoIWMpe3ZhciBiPTEvMDtmb3IoaT0wO2k8ZS5sZW5ndGg7aSsrKXtmb3IodmFyW2MsZCxmXT1lW2ldLHQ9ITAscj0wO3I8Yy5sZW5ndGg7cisrKSghMSZmfHxiPj1mKSYmT2JqZWN0LmtleXMobi5PKS5ldmVyeSgoZT0+bi5PW2VdKGNbcl0pKSk/Yy5zcGxpY2Uoci0tLDEpOih0PSExLGY8YiYmKGI9ZikpO2lmKHQpe2Uuc3BsaWNlKGktLSwxKTt2YXIgbz1kKCk7dm9pZCAwIT09byYmKGE9byl9fXJldHVybiBhfWY9Znx8MDtmb3IodmFyIGk9ZS5sZW5ndGg7aT4wJiZlW2ktMV1bMl0+ZjtpLS0pZVtpXT1lW2ktMV07ZVtpXT1bYyxkLGZdfSxuLkY9e30sbi5FPWU9PntPYmplY3Qua2V5cyhuLkYpLm1hcCgoYT0+e24uRlthXShlKX0pKX0sbi5uPWU9Pnt2YXIgYT1lJiZlLl9fZXNNb2R1bGU/KCk9PmUuZGVmYXVsdDooKT0+ZTtyZXR1cm4gbi5kKGEse2F9KSxhfSxjPU9iamVjdC5nZXRQcm90b3R5cGVPZj9lPT5PYmplY3QuZ2V0UHJvdG90eXBlT2YoZSk6ZT0+ZS5fX3Byb3RvX18sbi50PWZ1bmN0aW9uKGUsZCl7aWYoMSZkJiYoZT10aGlzKGUpKSw4JmQpcmV0dXJuIGU7aWYoIm9iamVjdCI9PXR5cGVvZiBlJiZlKXtpZig0JmQmJmUuX19lc01vZHVsZSlyZXR1cm4gZTtpZigxNiZkJiYiZnVuY3Rpb24iPT10eXBlb2YgZS50aGVuKXJldHVybiBlfXZhciBmPU9iamVjdC5jcmVhdGUobnVsbCk7bi5yKGYpO3ZhciBiPXt9O2E9YXx8W251bGwsYyh7fSksYyhbXSksYyhjKV07Zm9yKHZhciB0PTImZCYmZTsoIm9iamVjdCI9PXR5cGVvZiB0fHwiZnVuY3Rpb24iPT10eXBlb2YgdCkmJiF+YS5pbmRleE9mKHQpO3Q9Yyh0KSlPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0KS5mb3JFYWNoKChhPT5iW2FdPSgpPT5lW2FdKSk7cmV0dXJuIGIuZGVmYXVsdD0oKT0+ZSxuLmQoZixiKSxmfSxuLmQ9KGUsYSk9Pntmb3IodmFyIGMgaW4gYSluLm8oYSxjKSYmIW4ubyhlLGMpJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoZSxjLHtlbnVtZXJhYmxlOiEwLGdldDphW2NdfSl9LG4uZj17fSxuLmU9ZT0+UHJvbWlzZS5hbGwoT2JqZWN0LmtleXMobi5mKS5yZWR1Y2UoKChhLGMpPT4obi5mW2NdKGUsYSksYSkpLFtdKSksCm4udT1lPT4yODgzMT09PWU/Il9fTEFOR19fLiIrZSsiLmY5ZTczNTZmZjkxZjgzN2Y0N2M3LmpzIjo4NDY5Mz09PWU/Il9fTEFOR19fLiIrZSsiLjcxNWNiN2IyNzMyZjIwYzRjOTYxLmpzIjo0OTY4ND09PWU/Il9fTEFOR19fLiIrZSsiLjQ5OWNmYmQ3MzQ3ZTk3NDcyMjI4LmpzIjo1NDk4PT09ZT8iX19MQU5HX18uNTQ5OC44ZTRjY2M3Y2VmOGJmYWYzOTM5OS5qcyI6ODU1Mzc9PT1lPyJfX0xBTkdfXy4iK2UrIi40OWZkYTEzZTE4NzYxMjQ2M2Y4NC5qcyI6MjY5NzM9PT1lPyJfX0xBTkdfXy4iK2UrIi45YWU1NmQ2MjFhNWYyOTgyN2UwMC5qcyI6MTc2NjI9PT1lPyJfX0xBTkdfXy4iK2UrIi40N2Y1YzljYWY2NjBjNGQwZTgwNC5qcyI6ODcyMzg9PT1lPyJfX0xBTkdfXy4iK2UrIi43ZTc3MzA5NzMzN2EzNGJlNjY1Mi5qcyI6MjE4NzA9PT1lPyJfX0xBTkdfXy4iK2UrIi43ZDM3ZmZhNTNkZmJiYzE4NDA4OC5qcyI6ODQyNjk9PT1lPyJfX0xBTkdfXy4iK2UrIi5hZDM1MWEyYjM5ZTQ5MzI0YjQxYy5qcyI6OTIyOTM9PT1lPyJfX0xBTkdfXy4iK2UrIi5hNmFmNjI2ZTg5NGVjOTAwN2Q1OC5qcyI6MTA4NDE9PT1lPyJfX0xBTkdfXy4iK2UrIi43NjZmOTY2ODc4YjdmODcyNmQ3NC5qcyI6ODg0MzI9PT1lPyJfX0xBTkdfXy4iK2UrIi40NDA2MGFkZDIxNjI4MGNmYTBkMy5qcyI6MTI2NTM9PT1lPyJfX0xBTkdfXy4iK2UrIi42MzU3NjY1OTJiNDZkZTc0OGU4ZC5qcyI6MTcxMjM9PT1lPyJfX0xBTkdfXy4iK2UrIi5hZDRkOGU3NjgzZTM0NmYxMmUxMi5qcyI6MjU3NTM9PT1lPyJfX0xBTkdfXy4iK2UrIi43MzdmNjUzYTdiMTNmMDZhOWZjZS5qcyI6MzQ5MDg9PT1lPyJfX0xBTkdfXy4iK2UrIi40ODhjZDE0NzM2MDE5Y2VmMjdiYy5qcyI6NzM3MjU9PT1lPyJfX0xBTkdfXy4iK2UrIi5hYjczZTk1NGQyY2QxYmUzNmRjNC5qcyI6NDA4OTI9PT1lPyJfX0xBTkdfXy4iK2UrIi43NmVlM2M1MjQxN2E2MGZiMDkzMS5qcyI6NDg4Mzc9PT1lPyJfX0xBTkdfXy4iK2UrIi5lZDY1NjczZTU4MzdjZDg2NzM3YS5qcyI6OTY0NDg9PT1lPyJfX0xBTkdfXy4iK2UrIi5hMjMwOTNiMjBjMmU0OGFhYzEyYi5qcyI6NjA5Mzk9PT1lPyJfX0xBTkdfXy4iK2UrIi5lZTZjYmVlZjg2ZGQ4ZmYxMDk2NC5qcyI6NDkyMTU9PT1lPyJfX0xBTkdfXy4iK2UrIi4yYzIxNTZmYTBlODU0NWNiY2FhYi5qcyI6MjA4NjY9PT1lPyJfX0xBTkdfXy4iK2UrIi4zZGI4ZThlZWVlNjg2YTUwOWIyMC5qcyI6NDEyODA9PT1lPyJfX0xBTkdfXy4iK2UrIi4yYWEzY2QwN2Q2MDBlYjk2Y2JiYy5qcyI6ODEzOTU9PT1lPyJfX0xBTkdfXy4iK2UrIi5iNmQ4M2M3NDg4ZGY0OTAzOTRmOC5qcyI6MjY3NzE9PT1lPyJfX0xBTkdfXy4iK2UrIi5lM2IwMzU1Y2ZmZDA3N2JkZTI0Mi5qcyI6MTA2NzQ9PT1lPyJfX0xBTkdfXy4iK2UrIi42NWFjZGNjZmVmMGYzZjQ5ODJlMC5qcyI6NDk3NDc9PT1lPyJfX0xBTkdfXy4iK2UrIi45ZmRkZThkZmJkNDU2NjM4ZjMxMS5qcyI6Mzg1MzU9PT1lPyJfX0xBTkdfXy4iK2UrIi4yNjkxODkyNzVhZGRkMWY3NjdiNS5qcyI6NTkzMT09PWU/Il9fTEFOR19fLjU5MzEuMmQwMGExMDY3OGU3OGNkNjZjOTIuanMiOjg2MzE9PT1lPyJfX0xBTkdfXy44NjMxLjdhY2YyYmE0NDIxNjMzMjNhNmVjLmpzIjo4NDkwMD09PWU/Il9fTEFOR19fLiIrZSsiLjBkMzc2MmZkMGNlNzIzZTU0MWRiLmpzIjo3NTUyPT09ZT8iX19MQU5HX18uNzU1Mi5iYzAwMjAxOTI5Nzc3NzFkNzExOS5qcyI6MTg5MTE9PT1lPyJfX0xBTkdfXy4iK2UrIi42OTgxOTM4YjExNDNhYWE2MTU3Ny5qcyI6MTcwOTI9PT1lPyJfX0xBTkdfXy4iK2UrIi44OWQ4ZTBiZjUxYTc3ZDZjZTczMS5qcyI6NzM3Nz09PWU/Il9fTEFOR19fLjczNzcuZGMxMDMxMjUyYmY5MmNmYjQxZmIuanMiOjE5OTE2PT09ZT8iX19MQU5HX18uIitlKyIuNDJlZTFlOThkNzUzMGFhNTY1NTMuanMiOjgyMDAzPT09ZT8iX19MQU5HX18uIitlKyIuZDc0OGI4Njg4MDM4ZTcyOWVmMDkuanMiOjYzNTUzPT09ZT8iX19MQU5HX18uIitlKyIuZDFlZTYxOThiNzAyODQ3OGRkNjIuanMiOjYxMDY2PT09ZT8iX19MQU5HX18uIitlKyIuM2NiNmM2NDIzYzZiMWZhMDEwZGYuanMiOjc2Mzg1PT09ZT8iX19MQU5HX18uIitlKyIuYTM4YzhlOTIxOTYwY2VhNDQwMTkuanMiOjI2MDU9PT1lPyJfX0xBTkdfXy4yNjA1LmY3MDBhZjZjYjgwYjA2ZTU1NGRkLmpzIjo5OTg2NT09PWU/Il9fTEFOR19fLiIrZSsiLjU1ODhmMmJkZjM0OTEyZWMxNDQ4LmpzIjo5OTc2NT09PWU/Il9fTEFOR19fLiIrZSsiLjZkYTZiZGJiMDhmNmY3YjljMWRkLmpzIjozMDU5Nz09PWU/Il9fTEFOR19fLiIrZSsiLjg0YTRiM2UzY2NiNmQ3YzJmMjJhLmpzIjo0NTUyMj09PWU/Il9fTEFOR19fLiIrZSsiLjNhNjYwYTE0MjEyNGFkZjQ1MDQzLmpzIjoxMDMzPT09ZT8iX19MQU5HX18uMTAzMy43MzRiZDdkYWZlNzc3Y2YyZGY2MS5qcyI6ODg4OTE9PT1lPyJfX0xBTkdfXy4iK2UrIi4yZjY2M2JkMTI1ZGIyOGYxY2JkYS5qcyI6ODg0Mj09PWU/Il9fTEFOR19fLjg4NDIuZjQ4NDRiNDQwNzgxYjE5ZTQ1MDguanMiOjE5MDM0PT09ZT8iX19MQU5HX18uIitlKyIuMzA1MTcyMDQ3ZTdmYWJiNTM0ODEuanMiOjE2NzI9PT1lPyJfX0xBTkdfXy4xNjcyLmZjZjY5OWM0MmNiZjZkYTA1MDNkLmpzIjoyMTM5Nz09PWU/Il9fTEFOR19fLiIrZSsiLjM0MWY2YzdiNzY1N2U1NTU0ZGYwLmpzIjoyOTE2OT09PWU/Il9fTEFOR19fLiIrZSsiLmMzNTczZGQzM2FiZWVlZWJlZjA0LmpzIjoxODg5OD09PWU/Il9fTEFOR19fLiIrZSsiLmRmODY3OGZiMWZlZjc3MWI1M2FhLmpzIjoxODYyOD09PWU/Il9fTEFOR19fLiIrZSsiLjMyYjBiYzIwOGQ1ZTE5MGEzNzMzLmpzIjo3MzYzMz09PWU/Il9fTEFOR19fLiIrZSsiLjA1YjVlZmY0NmQ1OTE1NzE0ZmZjLmpzIjo2Nzk0OT09PWU/Il9fTEFOR19fLiIrZSsiLjk0MDFhZmNiN2JkNDc3ZTMxOWExLmpzIjo2ODg2MD09PWU/Il9fTEFOR19fLiIrZSsiLjM3NjZkMTEwNzg4MTJkN2YxNDU3LmpzIjoxODc4MT09PWU/Il9fTEFOR19fLiIrZSsiLjM4ZjEwM2NlYjM1MWQ2OGMyZjhmLmpzIjo4ODk5Nz09PWU/Il9fTEFOR19fLiIrZSsiLjI1OTkxZGE1OWUyMGE3OTZlZGFhLmpzIjo0ODkxMj09PWU/Il9fTEFOR19fLiIrZSsiLjA3ZjEzZTY5NGRkZjU0YjRkZWViLmpzIjo2NDQ0MT09PWU/Il9fTEFOR19fLiIrZSsiLjZkM2EwN2I5YTgxNDA4NzMxY2M0LmpzIjozMzM5MT09PWU/Il9fTEFOR19fLiIrZSsiLmFlZGQxZDNjZWVmYmU0Y2U2ODAyLmpzIjoxNzg1OT09PWU/Il9fTEFOR19fLiIrZSsiLjRhNTgwYWNlNDkxNGYxMTVjZDA3LmpzIjoyODg3NT09PWU/Il9fTEFOR19fLiIrZSsiLmVkZTFiNzIxODE2OTNkMWFjZjRmLmpzIjo1ODY2Nz09PWU/Il9fTEFOR19fLiIrZSsiLmQxNWZjNGI1YzYzMWJiNWVjZThkLmpzIjo0NzAzMD09PWU/Il9fTEFOR19fLiIrZSsiLjlhYTZlMGZmNGVkZGExNjg3NTM2LmpzIjoyOTYxOD09PWU/Il9fTEFOR19fLiIrZSsiLmRkMjA4ZmE5ZDI2ZTczMjgxMDljLmpzIjozOTUwND09PWU/Il9fTEFOR19fLiIrZSsiLmViN2M4NThhMjMxMDhhY2E3ZmVlLmpzIjozOTk4OD09PWU/Il9fTEFOR19fLiIrZSsiLjNjOWQ0NmQ2OWY1YWQ3MjEwOWEwLmpzIjo1ODgyMD09PWU/Il9fTEFOR19fLiIrZSsiLjA5YjQxZDJlZDg0Yjc5ZjRmZTI0LmpzIjo5Mjk2ND09PWU/Il9fTEFOR19fLiIrZSsiLmFhNjcwZGRmZDE2NTk1OTY0YWViLmpzIjoyMzU2Nz09PWU/Il9fTEFOR19fLiIrZSsiLjVmZGRjMTU5OTgxNDJjYmM2MWVmLmpzIjooewozNDc6Im1hcmtlZC1zeW1ib2xzIiw1Nzc6ImNvbnZlcnNpb24tY29udGV4dCIsMTUyMToienhjdmJuRW5QYWNrYWdlIiwxNjQ2OiJsZWdlbmQtdmlldy1yZW5kZXJlciIsMTc4NzoiYWRkLXRvLXdhdGNobGlzdC1hY3Rpb24iLDIyODQ6InJlZ3dhbGxzLW1hbmFnZXIiLDM5NjE6InByb2ZpbGUtYXBpIiw3Mzk3OiJwZXJpb2QtZm9ybWF0dGVyIiw3NzE4OiJwaW5lLm1vbmFyY2gudjUiLDg2MDg6InN1cHBvcnQtZGlhbG9nLWltcGwiLDk1OTk6ImNvbnRhY3QtYWR2YW5jZWQtY2hhcnRzLWRpYWxvZyIsMTA3MDQ6ImNyZWF0ZS1kaWFsb2ciLDExNDM1OiJub3Rlcy1kaWFsb2ciLDEzMTIzOiJlYXJseS1iaXJkLWJhbm5lciIsMTM3MTk6InBob25lLWNoYW5nZS1mbG93IiwxMzczMjoiZnVsbHNjcmVlbi1pbWFnZS1kaWFsb2ctaW1wbCIsMTM5OTM6InB1c2hzdHJlYW0tbXVsdGlwbGV4ZXIiLDE1NzY3OiJ6eGN2Ym5Db21tb25QYWNrYWdlIiwxNjgxMzoidHJhZGluZ3ZpZXctY29weXJpZ2h0LXdpdGgtYm9yZGVyLWRhdGEtaW1wbCIsMTkwMTI6Im1vbmFyY2guY29sb3JpemVyIiwxOTMxMToidGFrZS1zY3JlZW5zaG90IiwxOTc2OToic3Vic2NyaXB0aW9uLWhhcy1jaGFuZ2VkLWRpYWxvZyIsMTk5Mzg6InN5bWJvbC1saXN0LXNlcnZpY2UiLDIxMjYwOiJuc2QtdW5wYWNrLWltcGwiLDIzNzY5OiJzdXBwb3J0LXdpemFyZC1zaG9ydGN1dC1wYWdlIiwyNjA2NjoiY29udGFjdC1wcml2YWN5LXBvbGljaWVzLWRpYWxvZyIsMjg1MDc6ImdldC1lcnJvci1jYXJkIiwzMDMwNDoiY29udGFjdC1lZHVjYXRpb25hbC1kaWFsb2ciLDMyNjEzOiJjb250YWN0LWVudGVycHJpc2UtcGxhbnMtZGlhbG9nIiwzNDE4OToiYnVnLWRpYWxvZy1jcmVhdGlvbi1oYW5kbGVyIiwzNDg3OToiaW50ZXJydXB0LWNvbmZpcm0tbW9kYWwiLDM1NTkyOiJlcnJvci1sb3R0aWUtYW5pbWF0aW9uIiwzNTk4MDoiY2xlYXItb2xkLXNldHRpbmdzIiwzODc4NzoicGFnZS1zbmFwc2hvdCIsMzk0NDI6ImNvbnZlcnQtbWVkaWF0b3Itc3RvcnkiLDQwMTAxOiJ0di1jb2lucy1kaWFsb2ciLDQyNzA2OiJzaW1wbGUtZGlhbG9nIiw0Mzk4MDoiY29udGV4dC1tZW51Iiw0NDE2MjoidGltZS1mcmFtZS12aWV3LXJlbmRlcmVyIiw0NTMyMjoibGlnaHR3ZWlnaHQtY2hhcnQtcHJpY2UtdGltZS10b29sdGlwIiw0NjE2OToidXBncmFkZURpYWxvZyIsNDYzODM6ImNyZWF0ZS1lcnJvci1kaWFsb2ciLDQ3OTYxOiJkZWNsYXJhdGlvbiIsNDgwMDI6ImNvbnRhY3Qtd2lkZ2V0cy1kaWFsb2ciLDQ4MTc4OiJzdXBwb3J0LXdpemFyZC13YXJuaW5ncyIsNDg0MTM6InN1cHBvcnQtd2l6YXJkLWhpZ2gtdm9sdW1lLWluZm8iLDQ4NTUyOiJ2aWRlby1iYW5uZXItZGlhbG9nIiw0OTgzOToic291cmNlLXRhZy1wb3BvdmVyIiw1MDE4MjoiZ2xvYmFsLW5vdGlmaWNhdGlvbiIsNTI0NTM6InNjcmVlbmVyLW5ldy1zdGFuZGFsb25lLWRpYWxvZy1pbXBsIiw1Mzc3MDoiZ2V0LW1lZGlhdG9yLWFwaSIsNTM4ODE6ImdvLXRvLXRyYWRpbmd2aWV3LXJlZmVycmFsLWRpYWxvZyIsNTQ2MTU6InJlZmVycmFsLXdlbGNvbWUiLDU1MzU2OiJnbG9iYWwtbm90aWZpY2F0aW9uLXRvb2xzIiw1NTk2MDoiY29udGFjdC1zZWN1cml0eS1yZXBvcnQtZGlhbG9nIiw1NjAwODoibmV3cy1kZXNjcmlwdGlvbi1kaWFsb2ciLDU3NjM5OiJtaW5pLWNoYXJ0LXN5bWJvbC1kYXRhIiw1NzcxNDoidXNlci1zdGF0dXMtZGVjbGFyYXRpb24iLDU4NjEzOiJjaGFuZ2UtcGxhbi1kaWFsb2ctaW1wbCIsNTg4MTc6InZhbGlkYXRlLWludGwtYWRkcmVzcy1kaWFsb2ciLDYxNTMzOiJzdG9yeS1pdGVtLXRyYW5zZm9ybSIsNjIyMzQ6Im5zZC1pbmZsYXRlLXBha28iLDYyNTU3OiJzdXBwb3J0LXdpemFyZC13aGF0cy1uZXctcGFnZSIsNjI4MTE6Indhcm5pbmctcG9wdXAtaW1wbCIsNjMwODg6InBpbmUubW9uYXJjaC52MyIsNjQ2NDQ6InJlYWN0Iiw2NDk5NzoidGFiYmVkZGlhbG9nIiw2NTYyMzoicG9wLW92ZXIiLDY1OTQ3OiJ2YWxpZGF0ZS1hZGRyZXNzLWRpYWxvZyIsNjYzOTk6InNub3dwbG93LXRyYWNrZXIiLDY2Njg3OiJyZWNhcHRjaGEtcG9wdXAiLDY3MzAzOiJzY3JlZW5lci1tYXJrZXQtZGlhbG9nLWltcGwiLDY4MTU1OiJpbWFnZS1kaWFsb2ciLDY5NDg2OiJjbGVhci1jb252ZXJzYXRpb24tbW9kYWwiLDY5ODc0OiJsb3R0aWUud29ya2VyIiw2OTg4MToid3JvbmctYWNjb3VudC1kaWFsb2ciLDcxMTg1OiJiYXNpYy1xdW90ZXMtc25hcHNob3RlciIsNzExOTI6InF1b3RlLXRpY2tlciIsNzEzMTk6ImFsZXJ0cy1jb2xsZWN0aW9uIiw3MTM5NDoiY21vbmV5Y29tdHctY29weXJpZ2h0LWRhdGEtaW1wbCIsNzIxMTE6InBpbmUubW9uYXJjaC52NCIsNzMzMDA6ImNvbnRhY3QtYnJva2VyYWdlLWludGVncmF0aW9uLWRpYWxvZyIsNzQzNjQ6ImNvbnRleHQtbWVudS1yZW5kZXJlciIsNzYwNDA6InRyYWRpbmd2aWV3LWNvcHlyaWdodC1uZXctZGF0YS1pbXBsIiw3ODcxNzoicGluZS5tb25hcmNoLnY2Iiw3ODg0MToibWF0Y2hlclB3bmVkRmFjdG9yeSIsNzg4Nzc6InBheW1lbnQtb3JkZXItZGlhbG9nIiw3OTA0MToidHJhZGluZ3ZpZXctY29weXJpZ2h0LXRyYWRlLXdpdGgtZGF0YS1pbXBsIiw4MDkzOToidHJhbnNsYXRlZC1zeW1ib2wtZGVzY3JpcHRpb24iLDg0MDcwOiJzaG93LWVycm9yLWRpYWxvZyIsODUwMzg6ImxlbnRhcnUtY29weXJpZ2h0LWRhdGEtaW1wbCIsODU2NTI6ImhhbW1lcmpzIiw4NTk3NDoic2lnbmluLWRpYWxvZyIsODYwMDE6InBheXdhbGwtbWFuYWdlciIsODY5MTQ6InNwaW5uZXIiLDg3MTk2OiJsaWdodHdlaWdodC1taW5pY2hhcnQtc3R1ZHktZGF0YS1zb3VyY2UiLDg4NTkwOiJvcGVuLXByaWNpbmciLDg4NjQwOiJzdXBwb3J0LXdpemFyZC1tYWluLXByb2JsZW0iLDkwNDE1OiJzeW1waG9ueS1jb21tdW5pY2F0aW9uIiw5MDgxMDoiYWRkLW1pbmktY2hhcnQtY29weXJpZ2h0LWltcGwiLDkwODY0OiJ1c2UtdXNlci10aGVtZSIsOTA4ODA6InJlbmRlci11bnN1YnNjcmliZS1kaWFsb2ciLDkxMjkyOiJwYXl3YWxsLW9wZW4iLDkyOTY4OiJjaGF0Ym90IiwKOTMyNDg6ImFsZXJ0cy1yZXNwb25zZS1tb2NrcyIsOTMyNzk6Im1pbmktY2hhcnQtYmFyLWJ1aWxkZXIiLDk1MjA3OiJzbm93cGxvdy10cmFja2VyLWJhc2UiLDk1NzU2OiJ0di1jb2lucyIsOTYzMzc6ImNvbnRhY3QtdHJhZGluZy1lZGl0aW9uLWRpYWxvZyIsOTcyMDI6ImdvcHJvLW9yZGVyLWRpYWxvZyIsOTc1MDk6InRyYWRpbmd2aWV3LWNvcHlyaWdodC1kYXRhLWltcGwiLDk4ODMwOiJ0d28tZmFjdG9yLWFwaSIsOTk4MDU6ImNvbnRhY3QtYWR2ZXJ0aXNpbmctZGlhbG9nIn1bZV18fGUpKyIuIit7MzQ3OiIxZjdkNjczN2UxOGQ1ZThjMWQzYSIsNTc3OiI5YTM5NjFjMTRmMjI5M2Y5MDllYyIsMTUyMToiNzI0YjUwYjBhMDg2YThiMWVmYzAiLDE1MzQ6Ijc0ZmZlMWU3MjVhNDY1ZDQzNDFlIiwxNjQ2OiI4YzgwMDA1YWYyMTU4YmQwODNkYyIsMTc4NzoiZGVlODBiMWQ1Y2M5MGQwMGQ3OGYiLDIyODQ6ImM0NGFhOTI2N2JlOGRjMWM3MTc5IiwyODUxOiJlNmJmMjAwMGQ0ZmI0YzgxMDAxMiIsMzQ2NzoiODk1NTBjMmI5MWRkYzQ4MDI5MDkiLDM1NTI6IjRjNTUzNTE4M2I3YTAzMzBhODlkIiwzOTYxOiJmM2IwY2VmM2FjOWNkOGQxMTAwZCIsNDg3NjoiMjc0ZDU1YTAyZDMyNDA4NzY4NzYiLDY5MzQ6IjkwZWRmZWY2Y2U5ODM2OWFlMDRhIiw3MjExOiIyZjkzNGIzMGNmMzg2NTE3MTQ0NiIsNzI4NToiOGJjODI5MjY2NTI4ZmE3NGFmNWMiLDczOTc6IjA1OWU2MjI5MjQwMjMyNzAxNmM0Iiw3NjA4OiI5ZGQxNDY0OTIyYzFlNjUxNTZhOCIsNzY3NjoiMGFmMTY3NzMxOWRiNzBhNzFjZGQiLDc3MTg6IjlhMWU0ZDgzOGUyMjJhM2EyNzNlIiw4NDY3OiIwODNkZDdhNTEzZDc3ZGIzZDM0NCIsODYwODoiZGE0YzY5YzJhZjg0ZmI4ZmM2MjYiLDk1OTk6ImU4NjZmYzcxYTRmNjlhZmVhMDliIiwxMDcwNDoiN2ExYThhZDc0NzNkMWVkN2RlODYiLDExNDM1OiIzNTM1OWU3NDU4YjgyMTI0NWY0NiIsMTI5NjU6IjQwNmVlNTlmYTAwOWYwZTljMjZiIiwxMzEyMzoiMzNjMDFmOWQ1MGJhM2NmZTFkYWEiLDEzNzE5OiIzMzIwOGFkMDk1Y2UyODI0MGE2OCIsMTM3MzI6IjVhZjFlZWE1ZTIwNDg4ZTI5MjA0IiwxMzk5MzoiM2IxOTljNmFkOGJmNWMzY2FjNjciLDE0ODg5OiI2MjEwYjFjNTZkYzNiMjBjOGZmYiIsMTUzOTQ6ImZhY2Y3NTNlOGNkZmI5YjkwODMxIiwxNTc2NzoiOThmOGZlOTZiYjc4ZmU1MDhlMDciLDE2MDc2OiI2YTYyYTY0YTVhYmYxNTIyNDNhNCIsMTY4MTM6IjdlNDUyN2JjNTUyMTllYTNhZDc2IiwxNzc5NzoiYjJmMjk0NTAwMGFjYWFmMmQxNjUiLDE3OTkxOiJhMzA3YmZlMDAyMzRkYzQxOWJmZCIsMTg1MTI6ImEzYmNkYzcxYzY4NjAxYjdkYmZjIiwxOTAxMjoiYjc2YzU5ZmRhY2JhYmFiYWYzNDgiLDE5MzExOiI2MjhjNmQzZjc2ZGFjODgyZTgyZCIsMTk0NjM6ImNiOWE4MjU3N2NlODFiNDY5MmQzIiwxOTc2OToiYmVlM2NhZjYyMTY4YTk5YjFkZTYiLDE5OTM4OiI1ZTU0MWY5MGJjZWIxYTdhNzU1YiIsMjAzMzE6Ijc0MDM1ZmU5Mjk3MTgxYTEyN2RiIiwyMTI2MDoiZDA5NTVhYWU3NWY4N2QzYmQ0MjEiLDIzMzY0OiI4MDJjZGFkYTc0ODQ1N2NiZmRkOSIsMjM3NDM6IjQ3MzMxMzdhZjJmMjMyYTZhMzRhIiwyMzc2OToiNjZjZWU2NWEyYTg2MGEzMDZkODgiLDI0Njk4OiJiZDk1NzA3MzA5NWJhYjdkYTU5NiIsMjU4NTQ6ImE2N2M2ZDVjZjMwZWIyYzkxYzk5IiwyNjA2NjoiMGYxZjFjYjE5YWY5ZmYzYWY4Y2MiLDI2MTQ1OiI3MjExZmY1ODA4ZjBhMThhMWU5ZCIsMjY0NzM6ImU2OTJlYzRhNTMyOWNjZTYxYWMzIiwyNjcyMzoiOGE2ODA3MmM3N2VjMDAyNjc5MDUiLDI3OTEzOiIyOTE4NjEyMjcyMmNmMGNjYjlkYyIsMjgxNzY6IjIxMzQyODY1ZTc0ZmZiZWZmZjQ0IiwyODUwNzoiZTllNWVlZDEwOGRjOWIwYmI0YTciLDMwMzA0OiI4OTZiZTI1YWE5MjFhODIxNGUyNCIsMzA0MjE6IjQxMmMzMTlkZGJhZGNjOTk1YzcxIiwzMDY5OToiMTM4NmRmYWE3OGU2ZTVmNmM4N2MiLDMyNjEzOiI3MjMwZDczZWRhNjQ5NWY5YTkwZCIsMzQxODk6IjAxNmJjODQ5ZjQ2MGI2ZGNjZjQzIiwzNDY0NToiODQxZWE2MTY4OGVlYmJiZDY5NmEiLDM0ODc5OiIxZTZjZjFmNWE5MzU4ODgxZGU2NyIsMzU1OTI6ImUyNzExZjY1YjVlNGU0MjZjOTBkIiwzNTk4MDoiYzM0MDQyYTRhMTBjYjVmYjJlM2QiLDM4Mzk4OiIwMjU1MGMxYTQ4YWM5MzYwY2E5YSIsMzg3ODc6ImVlZmFiMWQzYWZiYjMzMjhmZWQ2IiwzOTQ0MjoiMjc0MDk2M2I3OGVlNGE0ZTk2NDAiLDM5NjA5OiI4Y2UwZDc5M2IyYjYwYmU3YTRkNSIsNDAxMDE6IjRjMWJkYTJhYmJmYWI4NDczODJkIiw0MjE3MToiMWMwNWQ4MTQ3YzIzMGQ4NmI0ZmEiLDQyMjEyOiI0NzU0YzI4MDRhYjlhOTc5Nzc2YiIsNDIyODg6IjQ3ZWNhZWNhMTAxMmVlM2UxZDhjIiw0MjQ1NzoiMzI4YTg1MjM3N2Q2NDQ1NzBiMGMiLDQyNzA2OiI2YjExNWU3Mzc3MjU0M2Y0YmMzMCIsNDM5ODA6IjdlMDM3Y2ZjN2IwMTJhOTcwMzM2Iiw0NDE2MjoiMWU2MmJjNzNkZWQ4NTgxMmYzNDMiLDQ0NzgwOiI3OWQyMDUxZDNiODRjYWVhYjRlNiIsNDUzMjI6Ijg4NTFhMmQyZTE1ZGI5MjFkNDhhIiw0NjE2OToiMTkwMzg3OWMyMjIxZmNhZGNiYTgiLDQ2MjE3OiIzZDg2NGJiNGE3MGQ0ZDNkODQwZiIsNDYzODM6IjZkMGJlYTAxNGUyNDZhOWUwZjJkIiw0NjYwMDoiMjQzMmE4NTNlZjg1YjM1ZDRlMmYiLDQ2ODIzOiJhYmE1MWJkMTFkMjNkOWNmNjFlMiIsNDc5NjE6IjdjNjk1YmVmZGQwMDc3MWZjNGVkIiw0ODAwMjoiYmE1MWRkODM2MjFiMGE0MDgzMDciLDQ4MTc4OiI1MzlkNTQ2ZDNkZDQ5NjVjNzJkZCIsNDg0MTM6ImYzZjFjMTcyZTE1NDI5NGQxNzYyIiw0ODU1MjoiOTM0Y2QxNDdiYTMyYTc1ZmM0NzkiLDQ4ODU0OiJiMDczZjRmNTljZTlkZGMwOWRmNCIsNDk4Mzk6IjI2ZmZkZTY5NzUwMjUyYTRkMjJmIiw1MDE4MjoiYTdhOWQ0MTFhZTI3M2YzMDUxMzIiLDUyNDUzOiI2NDczNzExMmU1NzZlZGFjMzQ1ZSIsNTI1MDk6IjQwNjU5NDcwZTUxYjA2NWQ1MTM5Iiw1MjgxMToiMjg3MDBkNDFmNDY4N2JlODE1OTciLDUzNjUzOiIwMzBhZDU0OTk3MDE1MzQzMGY5MCIsCjUzNzcwOiJiY2NkZjI4OGNhMWYyMDU0ZTE0NSIsNTM4ODE6IjNiY2MyZTRmYmEzZGJlZWM2OTEwIiw1NDYxNToiYTQ2ZDM5M2NlY2Q1MGMwMjZmOTkiLDU1MjI5OiIyNTcyMTg4MTlmYWE2NjM5YTM4OSIsNTUzNTY6IjY1ODU5MTlkOGU5ZDllOWM3ODVjIiw1NTk2MDoiMzBlNjRmMzYxNmJlMjI1NjBjYzIiLDU1OTY5OiI0M2MzNzQ4MDE0ZGUyY2QwYmQxYyIsNTYwMDg6IjY1MTljMTQ4NWVjYjlhNmU3OTliIiw1NzA4MjoiNmZjYzZhNTViNWYyODRhOWMyYzEiLDU3NjM5OiIzNDljYmZhNzhkNjEzY2Q0ZmIzNSIsNTc3MTQ6IjMyNTRkOTAwNjkxM2EyNjhmNTY4Iiw1ODYxMzoiMzI3N2RkYTBiMmVhODkyOTY2YmIiLDU4ODE3OiI3ZTY1NDM0MTFiNmMxMzVjN2E4ZiIsNTk2MTk6ImVlNjE3ZTkxZjViZGExNGM2YWQyIiw2MDQ1MzoiMmYzNzY4NGNhNjhkODIzYmQ1N2QiLDYxMTgzOiI3Y2JkMTZmYmM3YzUxOTE1OTM0ZiIsNjE1MzM6ImFlZjE3MGE2NTM0MWM2OWQ2NmM2Iiw2MjIzNDoiMjIwYjAxYTQyMmQxZGRjOWE2ZTIiLDYyNTU3OiJjZDJhYjEzZGI5NGM0YjgzYzY5YiIsNjI4MTE6ImI0NGU3NTQxZmI2OTdjYjhhNzEzIiw2MzA4ODoiMTRlZDZhMWYzZjgwZGZhZGE5MTUiLDYzMTYwOiIyYTNhMjExODVmYmNjNzA3OWRhZSIsNjQ2NDQ6IjkwOTkyYzlkMGQ1ZGM5MmM4OWI3Iiw2NDcxNToiNWY0OTE0OWNjMzJlOWVmYTE5N2IiLDY0OTk3OiJiOWJmNjAyOGFkZmMyZDAzZTY2ZiIsNjUxMDA6ImY0MjJlMWFkMDYwMTZkYjBkNDdhIiw2NTYyMzoiZmY0ZmI3NDg0MjVkMmM1Yjk2ZDkiLDY1OTQ3OiIyZWUwYTcyYzFmMjhiNDkyM2JiMiIsNjYzOTk6IjNmNjg2NTdkNWZmZTI5YjIxZjYyIiw2NjY4NzoiNjYxNzRhNmJhOWFiMjdhNGMxNWYiLDY2OTMzOiJjMWIxZWQ3Zjk3NWFiZGU1NjU5YyIsNjczMDM6IjViYTJiYmQ5YWY4OGVjMzQxNDRiIiw2ODE1NToiY2ZhNDAzZmQwZGVhZWU3ZjZjMjMiLDY4MzA0OiJmNjY1OTY5MjRkZjZlODkxNjNiZSIsNjg3NDE6ImNiOGMyNDRiZmI2MTQwY2MxM2JmIiw2OTEyMDoiMzIyYThhMzEwM2Q2ZmMwYjE5ZGUiLDY5NDg2OiI4ZmMxYzcwODliMmE2ODQ2YmMwOSIsNjk4NzQ6IjBhMjFlODBiNDQxOTY5OWFlODMyIiw2OTg4MToiMDY3N2UxNWMyOGRhZjVkNWVhZmQiLDcwNTkwOiIwMTc4M2JkOWIyNGIxNTVjOGUxZSIsNzA2NDQ6IjQ0ODc0M2RlZjMyNWZlYjYxOTY3Iiw3MDcxMjoiOTI4MDI4YzQzYmE5YjcwN2U4MTEiLDcxMTg1OiJiNGQyMTIyZmJmYzMwN2ExZjc3MiIsNzExOTI6IjNmNWJmYTU2MGYzZDg2NzZhYTBlIiw3MTMwMDoiYjY3MDk0MzM5NDAzMzlkYzFmNjYiLDcxMzE5OiJmZTYzMTFiODIyZTA3OGYzY2MyZCIsNzEzOTQ6ImU2Mzk3NWJhMWQzNjdkZjdhOWQ4Iiw3MjExMToiNDRlNzk2NGFiMzgxYmNiNTRkYTUiLDcyMTQxOiJkODE3ZjRiZTNiMTE4NWQwZWY0ZSIsNzI2NzQ6ImRjYzE3NTI1NGUwYzY2NjJkZDE0Iiw3MzMwMDoiNjM5NTQyNjAxZjdkZjc4M2NjMDciLDczNTczOiJjMjBlYmZkYmQ5Mzc2ODk2ZjM4YSIsNzQzNjQ6ImQ1MWNlYjhkMTA2YTQ5NTFjY2YzIiw3NTQ4OToiZDljMDkxZTFhZWMyNDNjYWIxYTciLDc1OTMwOiIxNDNjM2IyNDE2YTUwOTg5MzdjOSIsNzYwMzM6IjQ1N2ZjNmE5ZGVhOTNhYmM2NGE2Iiw3NjA0MDoiODlhNTFiOTg4ZWM0M2VkMDRlZTciLDc3NTc4OiJmNmRiNDYwZWQxZThjZTMxZWE4NiIsNzgxMDk6IjRhZWJmM2I3YWJhZjNhNDMwZTM2Iiw3ODMxMjoiMDkwZDhhMDAyYjk0M2QyOGE4MjYiLDc4NzE3OiJjM2MwYWE5NTBjYzJhYmQxNGQ3YSIsNzg4NDE6IjJkZjljNjhlMmIyN2U4NTkyMGJiIiw3ODg3NzoiZDIwMDNiYjhiMzEzYzhiZTg1ODkiLDc5MDQxOiJiYjRmN2NiMDY4ZmZiZWU4Y2JiYSIsNzk5OTY6IjFhNzFhYjVkMjYzY2RiYWE5NDhiIiw4MDkxNToiNjk0MDRmZGE4YWFmYzI3NDJjNTUiLDgwOTM5OiJjZWM1ZTMyYjYwZGJjNDM3OWU3NiIsODE4Njg6Ijk2YmUxZDBhNzI4NjNkY2M0N2I5Iiw4MjIzNzoiZGVhODI4NTkxMWQwM2ZiMDZjNWIiLDgzNzgxOiJhNDMyM2IwZjAxODFlOWRkZmE2MCIsODQwNzA6IjNmZmIwMDcwNjhlMGNjN2M1MDdjIiw4NDM3MToiMjU2NTQ1MmNhZWNhYjk5ODI1NWMiLDg1MDM4OiI0YzBkNmRmMzA0NWRlNDE3MzE3OCIsODU0MzQ6ImI4NWI3NWRmOTFiMjJiYWM4ZDM5Iiw4NTY1MjoiOGYyZmY0M2I2OGJmZTZlYTEyZmQiLDg1OTc0OiJhZWU2MjQ0NDA2NTU4Y2MxNTdkMyIsODYwMDE6IjA4MzcwYWRkNWIwNzgxZjk1OTI4Iiw4Njg2MDoiNDc0ODc3YmUwYjIzNWRjOGNiNGMiLDg2OTE0OiJmNjMxNDcxZmFiMDM4MzcxYmFkMCIsODcxOTY6ImIwOGYyYWEyOGJmNDA2OWE4ZjRjIiw4Nzg1ODoiNjkxMzdlNjJiYmQ1ZTBhNjNhZjQiLDg3OTk1OiI5MTFiMjYxODE3NzhmZWNjNGI0ZSIsODgxNzI6IjNhODE5MDRhZTk0MTIxOTAyZmZlIiw4ODU5MDoiMmY1ZTIwNGM3ZTNkZDkwNjg3OGQiLDg4NjQwOiIxYjUzOTkwNDQwYjIzMWI3MGYyZSIsOTA0MTU6IjhlMmFjMWVjMjJhMGEzMzYyNDUyIiw5MDgxMDoiZDVjZGE2NGMzYmU5MmNjNTMwNWEiLDkwODY0OiJlMzE4ZDQxZTY0MTMxYTZkNzgyOSIsOTA4ODA6IjkyNTBjMGY0YzY2OTNmZjFjOTUwIiw5MTI5MjoiNjUxNmJhYmEzYTVkOThlNTBiYTkiLDkyOTY4OiI0YzQ1MzZkMGM3MTYyMmU5N2FhMyIsOTMyNDg6ImFmZGU1NDhkZmUwOTExOWI2OWI5Iiw5MzI3OToiZjMzYjA1ZDNmZmMyNGE2MTUxMjYiLDk0MTgyOiIyMGRjYzc4YzBlODQ4MWQ0MzQ3MCIsOTQ4MjU6IjhhOTBjMGMzZWJkNDEzZWI5YzgxIiw5NTIwNzoiNDY1ZjhhZjFhYTcyYWMzYTFjMzIiLDk1MjQ0OiI5ZGE4ODljMTM2ZDI1MDZhM2Q4MSIsOTU3NTY6ImVhMjMzMTQzNTI4M2QyNTMwNGE1Iiw5NjMzNzoiODZjM2NjNjEyYzk4ZjdlNzc0OGQiLDk3MjAyOiIzMjNjMTFjZGFmZGNhMzJkNGFkNyIsOTc0NzI6ImU4MTk1NDA1Zjk5MDU1YTgzYzZmIiw5NzUwOToiMjdmMzQ5YTFkNTg0ODNmMjdlYWEiLDk4ODMwOiI0OTZiZWRiM2U5MDcwZWRiNTkyYiIsOTk4MDU6Ijk5NTVhNzc0NWY4NDk3NDE3MTgyIn1bZV0rIi5qcyIsCm4ubWluaUNzc0Y9ZT0+OTc3OTc9PT1lP2UrIi5kOTg1ZWViZTY3Mzk3ZjAyZmE2NC5jc3MiOjUyMzk2PT09ZT9lKyIuZWQ3NmNhZjJmZmUwMTQ0NjBiYTYuY3NzIjoyMDM1ND09PWU/ZSsiLjJkZGY5MzRmOGVkYzI4MDJkOTBhLmNzcyI6MTM0OTI9PT1lP2UrIi4yYzc3NzMwZDExMjVhNDk4NWJkYy5jc3MiOjM3NzQ2PT09ZT9lKyIuMzQ1MjI3YmIxNmUwZDhiYzliZDUuY3NzIjoxMjM4NT09PWU/ZSsiLjc4NTYxZWJkZWYwNWNlNjQ4YjVkLmNzcyI6ODEwNzI9PT1lP2UrIi4yOTI3YTE3NzIzMWZkZDBlMjRjMS5jc3MiOjUxODQ9PT1lPyI1MTg0LjBmYjQ1NzRjYWNlYzE2ZjYzNjVkLmNzcyI6MTEyMTg9PT1lP2UrIi4xMWZlN2U4ZmRhMzAxOWFhYzFhZi5jc3MiOjcyNjY2PT09ZT9lKyIuMjIyOTE3M2JmNGQ2NzQ0ODQ2MzcuY3NzIjo5NDk0OD09PWU/ZSsiLjBmYzg4ZmE2M2MwNTRhOGQ3Njg0LmNzcyI6MjQ1ODE9PT1lP2UrIi40NWRmMDIxODFjNDUwOTczMmQyMC5jc3MiOjIzNjI0PT09ZT9lKyIuZDIzOTBkMTdiMTUwOWIwMTg4MjYuY3NzIjozNjIyMj09PWU/ZSsiLmU5YmU5YTczM2UxMTQ3MzBhNGVhLmNzcyI6ODM0ODg9PT1lP2UrIi4yYTM1Mzc3ZmQ1NGYwYWY0MDg3NC5jc3MiOjY3Nzk5PT09ZT9lKyIuZTI0OTU2OTFjZWExN2IzYTgxYzIuY3NzIjoxMTQ2MT09PWU/ZSsiLmUyN2NiNGVjZjMwNDkyYWMxMWY2LmNzcyI6OTY1ODc9PT1lP2UrIi45N2ZkZDY1ZjIwMTIxMDZmZjExZS5jc3MiOjg2NDIzPT09ZT9lKyIuNzk3ODNhYTcyYjZlMjkyNTJkMGMuY3NzIjozNzUxMz09PWU/ZSsiLmRlMTU3NGIzMzg5ODAwYzkzZWJjLmNzcyI6OTUwND09PWU/Ijk1MDQuOTAzNzdmN2Q1OTQ2Y2YzMjU0ZjAuY3NzIjo0MDgzNT09PWU/ZSsiLjc2YTFjNzkyM2EyYzk4NmJlOWFjLmNzcyI6OTM0MjE9PT1lP2UrIi45NTM4MWY4ZTAwNGQwZDJmYThjZi5jc3MiOjQ3NjMyPT09ZT9lKyIuMzNkMmEzNzQ1YWY0OTdlM2RhNWQuY3NzIjozMTgzNz09PWU/ZSsiLmQzNjhjYWE2NGQ0OTRhNDA4N2NjLmNzcyI6NzY2NT09PWU/Ijc2NjUuOWYxZjMyYjE3NzNiMDU0ZmRmMDcuY3NzIjo1NTAxMT09PWU/ZSsiLmY5YzBhM2MwOWY3Yjg3NzlhYTM3LmNzcyI6NTAwMzU9PT1lP2UrIi4wMjI3YzA5ZThkZTNiNDAwODM5NS5jc3MiOjc4NjUyPT09ZT9lKyIuNGI0ZTA5N2EzMDNkMjFiYzk3ODEuY3NzIjo1MDIyMT09PWU/ZSsiLmY0OWRhMmE3Mjc5Nzc0YWE1ZmU4LmNzcyI6NDUzNjg9PT1lP2UrIi45ZmYwMGEzZTM4MjEyMDI5YmE1NS5jc3MiOjI2NTkyPT09ZT9lKyIuMWM2MTIzOTAyYmM4OGViYTlkNTcuY3NzIjo2MjYzMD09PWU/ZSsiLjUzNzMyZGFlYTgxNzg0NDczOTNmLmNzcyI6ODQwOD09PWU/Ijg0MDguZGU1MzQ2NjNlMDUyMDc1YmExMmYuY3NzIjoyNzUxNz09PWU/ZSsiLjczNjEzNzRkZWUyYjUyZmQxZjhlLmNzcyI6NDM2NDQ9PT1lP2UrIi4wZjdjMTQwMDE5YTY3ZmQ1MGJlNi5jc3MiOjE4NDcyPT09ZT9lKyIuZDk0MTliNmRjYjY0Yzg4NTY0YzEuY3NzIjoyNTgwOT09PWU/ZSsiLjhkZjRlYTdiMDk5YWRjMTVkMDY2LmNzcyI6OTgwODQ9PT1lP2UrIi43Njk0ODc2NDAxNGFlMWQ0Y2NmYi5jc3MiOmUrIi4iK3s2NDU6ImZiMzUwZDlhYzljNzgyZTVlNDM5Iiw2NDY6ImVlMjhiMmIxOWNjODgzMjc2NGI1Iiw2NTc6IjI5ZGRkNGYwNGU2ZWM1MGRhNzBiIiwxNTA5OiIyN2M0ZjAxMWMyNTk3YWRkNzI3NiIsMTY3ODoiOWU5OWM2YzdjMTQyNDRmYWU3NGUiLDIzMzE6ImE0MTczYWZhMTVjYTg1YWQyZjY1IiwzMzIzOiIzZGE3OThkYTM1ODA2Zjg2NzlhMCIsNDA0MjoiZmE5NDk2ODBhMmFkZjllMWFiODQiLDQ0Nzc6IjUxMmMwNDcwOWEzMjU5YmQxMTI0Iiw0OTI5OiI2ZGQ2MWQ1YmY5NmFiMjM0M2Q5OCIsNDk2OToiYzNhZGIxYTEwOGJmMmJhZjljYjMiLDU2ODk6IjA3ZDBkODUyNGJhNGI5YWY0YWRiIiw2MDgyOiJlMDJiODhmNTRmNjhjYmE0MjQ3MSIsNjQ0NToiYWM2MzViYTE1MTk0ZGY0ODQ2MTYiLDY1ODM6ImJjYzU3NDNlMjM2ZmZjNWI3Y2NmIiw2NjA1OiIxZTg5NDIzMTliNDg1YWZjMWY3NSIsNzE2MzoiZWM0ZTdiY2MwYzc5ZTJlNjA3NGQiLDczODc6IjNkN2Q4NjQwMjJjODRmOTI4YWRhIiw3NDQ1OiI3ZGE5NjZhNDQwMTZhZTdhMDJmOCIsNzg5OToiNDdhYWQwNWVhYTIwYmYzMDEyZjciLDg1Nzk6IjZmNjUxOGJlNDI5MzgyMjc4NmUwIiw5ZTM6ImY4NmUxZmQxMDVkOGNjN2FlY2Y0Iiw5MTQwOiI1MTI4MzhkN2U2ZTEwN2YwNzM4ZCIsOTc0NDoiNzBiNTEyNjQ5NWY3YWRjY2FmMmYiLDEwMzY2OiIwN2UyMGU3YmJlZTI3YzlkNWZiYyIsMTAzODU6Ijg3NDRkNGY4NjcwZGFjMzEwZDFmIiwxMTAwODoiNTJhZmE1ZWVkNGExY2Y2NmJlZDYiLDExMjU3OiJlNzlmMGY3OTk1ODg0MDQ3M2QzMSIsMTE0ODk6IjU0N2UzMDNlMjkyZjU0ODE0ZGI0IiwxMTcyNToiMzFlODBiMjNkMTUxNjIyMzJjNDgiLDEyMDUxOiJiODRiZTc4MWJiOTBkNDU3ZjFkZiIsMTI1NjU6IjFkNDA1MzY3OTdhMjk0MTljNjZlIiwxNDE5MzoiZmZlNmYxZjczZGNiMThmMjliNTUiLDE0NjI1OiJhZGE2MTJjY2VmZGVmNzc5ZTI5NSIsMTU1MjY6ImM4MjljNTJmZWQyNTk4NTViYjk2IiwxNjQyMToiMzFkNmNmZTBkMTZhZTkzMWI3M2MiLDE3NjkzOiJiNTI5MzM0YzhjNzYwZWUzNTFkYSIsMTgxNjI6ImQwNjE4NGJjOTcxZWNiZGRhM2IzIiwxODQwMDoiNGYzMWU3ZDk4MGIwNDhlOTU3MmMiLDE5NTEzOiI4NzQ5ZWRjZTY0YTdlMmRlMjU4MyIsMTk1OTU6ImQ5NjJhYjc1YmQzZTFiYWE1YWFlIiwxOTU5ODoiNzhlMmRiMjFiNjlmMTQ1M2Q3MGMiLDE5Nzg3OiJiYmI2NmZhMGZkMmJkMDRkMDg3NSIsMTk4MzM6ImE5YjhmZjQ0YThjNjc2MzMwNzlhIiwyMDI3MToiMGMxNGYxMjZlMzhmNmI0NjA3N2UiLDIwOTcxOiJkNDZhMzc4MGI0MDA1ZDk0N2Q3NCIsMjA5ODY6IjQwZTM0ZTIxYjNkODE5ZGY0OWU1IiwyNDQwODoiODZlNDVlY2YwODg0YmU2YTZlZTMiLDI1NjQ3OiIzZDQzMDE5OGM0MjIyMzlhNWY5MSIsMjU2OTg6Ijc2MDVhNTgyM2NhNmQyNWZlZTQ2IiwyNzU0OToiM2VhNjQ3NWM3OWFiOGUxMWU5MDUiLDI3NzM2OiIyOTNkOTQ3N2MxOTU0ZjE5NzdhNyIsCjI4MDE3OiJmZTc5OGY0ZDdjY2YwMjRiYmIxNSIsMjg0MTM6ImQ5MTIxYmU2Y2QxMzcwNzNmZDNhIiwyOTEzMzoiYmRmYTE2NzA5M2YwNWRmYjI0ZDAiLDI5Mjk2OiJiNDA4ZjI4MjJmYTViOTU2OWJhYyIsMjkzMjc6IjVhNjIzZmU0OTg4MmI5Y2Y1MWU3IiwyOTUzNjoiNzM2ZjQ3MWE4ZDY0YTgxMjJmZDgiLDI5OTQzOiIyZjMzNzMzZGQ2NDhiODJjNDZmYiIsMzAzNzM6ImRlMzJhM2NkY2FlMTJiMTVkNmRmIiwzMDc0NToiZTc4ZDgxYmYyNTBjZDZlNDMwNjgiLDMwOTYwOiI1NDcxMDk4YmQyN2Y5MGYzMTE1ZCIsMzEyNjI6IjI2MGI2MTg3OGUwNTlhNDJlNzlhIiwzMTU1NzoiZTZhZWY1MWYxMDkzNDJiNTk5MWMiLDMyMTc2OiI3YzU3Yzk4OTMzYjhjZmQzZjhlNyIsMzI3NDg6IjJkZDE4ZTIwOWE3NzJlYTRmMWQ3IiwzMzEyMDoiM2U2ZDFjMzNkNmM1MjVjMDc3MWYiLDMzMjIxOiJmNDJjYzU1YTkwYzk4ODQxMjFlNSIsMzMzNjg6ImYxNWRmY2JjMGY3MTk2ZDdkNjc2IiwzMzU1MzoiMGRmOWIzNTJjYmM2ZmEwM2NjYTgiLDM0NzU4OiI4ODBkOTczYmY2Y2JiYzQ4MjE3NCIsMzUwNzM6ImI4NTYzMmVhYTIyY2YxOWU3Y2QyIiwzNTE5ODoiMjJhNTY1NWY1M2UwOTFhMmZiNzMiLDM1NjMwOiI4YjllZTI1YzVlMmQyMzRkOTk1MSIsMzYzNTY6IjY4ZTY2YmY3NGZkYjI0M2Q0MzJhIiwzNjU0NToiZmM0ZWIzNzExMmUzNWUwOGQwMmMiLDM3MzkwOiIzMmZlYzg3MDMzZTI4YTVkODY0ZiIsMzc3Njc6IjQ0MDI5NjA2YzczYTY4M2U3YjBjIiwzODI2MjoiYjQwZTdlNzgwNjQxNjNjZGMwZDIiLDM4ODY4OiI1ZWU3NDFmZDYzODY2NmQ0NDVkYyIsMzk3ODY6IjJiMDBkYzIxZWY5NDYwMGUwOTY4Iiw0MDIyMDoiZTBiZTM3OTczNDVjNmUyNGNlY2EiLDQwODY3OiI0OTU2YzYxNWZkZWFkODFkY2QxMSIsNDA5MTQ6ImE4ZGQ2OTZiZTdkZGU2Y2U2ZGRiIiw0MTU4ODoiYTRkMWZiYmZiYzEzYmFlNzYwZDAiLDQzNDQxOiJhYzYwMzUwYzg2YzU3ODExZjIyMyIsNDQyNTM6Ijg0MDViYWYzM2MzZWZkMDE1MjhlIiw0NTk0NToiNWM5ZWNjZDI4MWNhN2YyZDc5ZTAiLDQ2MDM0OiI3ZmU1ZDY1NTVkMzUyMzg4NzIxNCIsNDY1OTE6IjhkMDMzMzk0YjgzYjYxNmJmMDY2Iiw0NzAyMToiZWQxMTM0OTdlZjMyYTY1MjZlNTAiLDQ3NTUxOiI4ZDJjZTUyNGIzOGU0YTkyNTQ3ZiIsNDc1Nzk6ImRjMzg3OTE5MWMwNGI5MzhmZDNmIiw0ODg2NDoiYzdiMmFmOThkOTE0ZWJkODMyN2MiLDQ5NTM2OiJjYmEyMDdhNWJhY2Y3YTE1M2EzZiIsNDk1ODg6IjE1NDI2YjIyMjc5NTYxZDk4ODBiIiw1MDMyNToiNTc3Y2QxMTQ2MTYyYmNmMDVjMmIiLDUwNjIyOiI1ZjA1ZWY1MWFiMDIzOGRhYTM2YSIsNTA4MDA6IjgwZjkwZTA0NDllZjIwZjM4OTg2Iiw1MTAzMDoiYjdmNTNlZDYzNWIwOTJmZDE2OTEiLDUxMjEzOiI2ZGIxOGY1NDVlOGZjYTg1OTFkMyIsNTEzMDk6IjZmMDJlYWMxNGJmMDIyZGMyYTQ3Iiw1MTMxNToiNDUxOGM0MGM1OTRkN2M2YzczNDciLDUxNjgyOiIxNWQwMTM0NzJiODVjZDk4NTE3YSIsNTE4ODA6ImNmODA5NmFkOWNmNjY1ZThmM2JiIiw1MjA2NToiZGU5ZWRkYjMzOWFjNzdkMWRiZjgiLDUyMTc4OiI0ZDU2MmEyNWFkM2MxMzc5MjFlMSIsNTI2ODA6IjhlZmE2YjRkOTk4MTg2ZjM5Y2JhIiw1MzMyOToiMDNhNmQzNDAzNWMxNzY4ZmI3ZDUiLDUzNTIxOiJkYzliYzcwYTZhODBmMmM5NGY1NSIsNTM3MTM6IjQ5ZDg4M2M3N2IzZDc0ZjQ3YzEyIiw1NDA5MzoiZDgwYzBmZmIyMzQ1N2ZmODVlZjQiLDU0MzEwOiJjZGQwMjJmZGFmZTQ0ZmMyYzU4OSIsNTYyMTM6IjAwZDI1ZmU4YWQxNjllMzE4YjJlIiw1NjI1MjoiMmI4MmY1NzViYTFjZWI1NGZhMjkiLDU3MzAwOiJjMWY1ZmM0ZTE1OTkwNjg1ZmI3MyIsNTc1MDQ6ImM3Zjc1ZjYwMzlmN2NhNDc4YjJlIiw1ODM4NDoiNjZhNjBiNWViYjNlMDQ2ZjgyZDEiLDU4OTMzOiJiM2FlNTFiOWIzODNmM2FjOTU2NCIsNTkzNTA6ImI2NjM2M2QxOTk4NDFlYmY4Yjg2Iiw1OTQzNzoiYjcyYzUwYjUwNWYxMmM5OWM3MmUiLDU5OTQxOiJhZjIyZjNhYjgzY2RmY2MzOTM1YSIsNjAwNjI6IjQ5NTQ0NGE3ZmFjMTczZmIyOGNkIiw2MTgyMToiZjY0ZDFlMmM2YjFlMzBkZmQ1NGUiLDYyNzkwOiIwY2QyYjkxN2Y3YTcxNjkwZTc0NSIsNjI4MDY6ImFlN2I5OTJiZDUzMWU3NmY4ZTc2Iiw2NDE5NToiNzIxNTFiYTJlNjczNDczZjcyYTQiLDY0NjQzOiI1ZWYzYmRiYWEwYzZjNDg4OWY0ZSIsNjQ2NzQ6IjY2ZDVhM2NiNWY4NDA2MzM0NDdhIiw2NTUyODoiOWRjYzE5MWE0YWI0ODdkMGIxMGMiLDY1ODU2OiI2Y2YyNzMwNjQ1MTZjZDgxMjljMCIsNjYyNzA6IjAwZjdlMDI3MzBiNDU2YWJmMjZkIiw2NjQ3MzoiMjE4MjJlYjViYTZkOGJkNTBjNmUiLDY3MjEyOiI3Y2ExMmFiN2VjY2YxYzQ4YWVhMSIsNjc1NDM6ImRjZGJhODk5NDljMDBiZjU3NWQ2Iiw2ODk0MjoiNDljZTM1ZTA4ZGZiYjdiOThlNWEiLDY4OTY0OiI5NDI1YjU4NzMwZGYxMzgwNmZmNiIsNjk4MDk6IjQyNDU3YmZiNjUxMjI1NmIyYzA4Iiw3MDY1NjoiY2U0ZmI0ZGZkOTU5ZWVmYzg0YzciLDcwODE1OiIzY2U2ZDZhMjY4NmU4ODkwN2FiMyIsNzE0MTQ6ImUzNDVlZDc1MmQzYTIwZDE5NDY3Iiw3MTQ4MjoiMWYwYWRhOTE2MGYzZjlmY2VjMDMiLDcxOTAxOiI0M2Q1YjQ4ZDk2NDM2NTZiZmQyYyIsNzIyNDk6Ijg0YmM3ODY3ZjVmMTA0YmJhZDI2Iiw3MjUxMjoiNjE5MzEwMmUzMTUyODA2YjhiMGYiLDcyNjgwOiJmNzlhNTcxNjBjZDcyNGFkZmRmYyIsNzI5MDI6Ijc3NmRiYjQ0NjlkMTk1NGY1YzZhIiw3MzQyNToiYWVhYjkxMjllOGRkMzliNWEyNDQiLDczNTUxOiIzMjgyZTA1MjVhOTM1ODIwYjRmNyIsNzQwMTE6ImUzMWQ4ZjkyNDEzZjBiZWNhOTg0Iiw3NDIzMzoiMWU3NzYxYTgxYzRlYzVmOTk4NzYiLDc0MzgxOiJmZDZiOTAxNTNjNmMxNmIyYmM5YSIsNzQ0MjI6IjNkNzg4NWI0MTQyY2Y1ZjA4YjA4Iiw3NDYzNjoiYjBkZWExNjVmNDQ1ZjQwOTA5ZmEiLDc0ODMwOiI0ZjUwZDAwZmJmOTVjMWUyOTY5NSIsNzYzMjk6ImM1N2QxNmQzNTBkZDZmNGFhN2FkIiw3NjkxMjoiZjA1NTNjNTI4M2M5ZGExMjViNDkiLAo3ODIzNzoiZTg5NmE4YmVhOTI1ZDY1ZjZlZmYiLDc4NDA0OiJiNWVjZDZkYzY1ZjEzZGVmNWVhYiIsNzg0NzE6IjA1MmY5NjMzMDM0NjE4YjAxNTYxIiw3ODg5OToiYmI1ZjgxZDk0YmU1YjVhN2JiZDEiLDgwNzMxOiJmOTY4Mzg1YmUyZTIwMDYyYmVkYSIsODA3ODI6Ijk3NWZiNDFkNDJhZTJkNTFjMDhiIiw4MTAwMToiYWZmODRiYzA0YTAzYjE3YjU0NmQiLDgxNTI5OiI5NjUyNGIwMzkzY2Y4Njk1ZDljZiIsODE5MDM6IjJjYTY3NmJiZTQ2MzgyZTZjMWZmIiw4MjI3MToiYzAyMWJhZTQ0NDY2NWEzNDg1M2YiLDgyNTg2OiJkZTlhMmVhNTE1Yjk2MGUwNTQ3ZSIsODM1Mjk6ImQ5NmVhNWMxZjljODM3NWZiYzE4Iiw4NDk0ODoiMWYwNWQyZTYzODc3OTMxYTRhMTEiLDg3NDc0OiJiZTI4ZjllMDAzZTBjNDczYjkxZCIsODc3NDA6IjVlMWE3Njc5MGVlNDlhMzc5NWZhIiw4ODM4NToiMDg1NTFmMjAwZmVhMGZkMDNjZDUiLDg4NjQxOiIwNDE0MzhkMTFjNDZmY2U5ZDA4OSIsODkwNDQ6IjEyMjg4NjU5MWRiM2ZhNmZkYzAzIiw4OTE5NToiZjFlYmMyNGEwZGQ2YzllMDQ1NTIiLDg5NTU4OiI5ODFhMzRiMTliNDFmYWQ5MmI4OCIsOTA5NjA6ImVjOTQxYWNjZmFhM2VkMmNkNmUyIiw5MTIwMDoiOWE1MmY5ZjkxOGZjMTk2YmE0NGEiLDkxNjc4OiJlMzBkNGNkY2RjNjg4MzdmZjRkMSIsOTM0MTY6IjkwODE4ZDczZTBlM2E5YTlmZTJhIiw5NDA1NDoiZDUwZTkzZWY0M2MxODRhNTEzZWYiLDk1MTU4OiI1M2JlNmVlNjY0ZTUwNTE4NDVmOCIsOTc2NjA6ImFlOWYzZDRlNTY5NmY1ZDExOWE3Iiw5OTU5MzoiYjRmOGFlMTdjMGZiNjhmMmZiMDAiLDk5OTA4OiJmM2Y3MmYyZTk3M2ZiZDlkYTkxZSJ9W2VdKyIuY3NzIixuLmc9ZnVuY3Rpb24oKXtpZigib2JqZWN0Ij09dHlwZW9mIGdsb2JhbFRoaXMpcmV0dXJuIGdsb2JhbFRoaXM7dHJ5e3JldHVybiB0aGlzfHxuZXcgRnVuY3Rpb24oInJldHVybiB0aGlzIikoKX1jYXRjaChlKXtpZigib2JqZWN0Ij09dHlwZW9mIHdpbmRvdylyZXR1cm4gd2luZG93fX0oKSxuLm89KGUsYSk9Pk9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLGEpLGQ9e30sZj0idHJhZGluZ3ZpZXc6IixuLmw9KGUsYSxjLGIpPT57aWYoZFtlXSlkW2VdLnB1c2goYSk7ZWxzZXt2YXIgdCxyO2lmKHZvaWQgMCE9PWMpZm9yKHZhciBvPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKSxpPTA7aTxvLmxlbmd0aDtpKyspe3ZhciBzPW9baV07aWYocy5nZXRBdHRyaWJ1dGUoInNyYyIpPT1lfHxzLmdldEF0dHJpYnV0ZSgiZGF0YS13ZWJwYWNrIik9PWYrYyl7dD1zO2JyZWFrfX10fHwocj0hMCwodD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKSkuY2hhcnNldD0idXRmLTgiLG4ubmMmJnQuc2V0QXR0cmlidXRlKCJub25jZSIsbi5uYyksdC5zZXRBdHRyaWJ1dGUoImRhdGEtd2VicGFjayIsZitjKSx0LnNyYz1lLDAhPT10LnNyYy5pbmRleE9mKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4rIi8iKSYmKHQuY3Jvc3NPcmlnaW49ImFub255bW91cyIpKSxkW2VdPVthXTt2YXIgXz0oYSxjKT0+e3Qub25lcnJvcj10Lm9ubG9hZD1udWxsLGNsZWFyVGltZW91dChsKTt2YXIgZj1kW2VdO2lmKGRlbGV0ZSBkW2VdLHQucGFyZW50Tm9kZSYmdC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHQpLGYmJmYuZm9yRWFjaCgoZT0+ZShjKSkpLGEpcmV0dXJuIGEoYyl9LGw9c2V0VGltZW91dChfLmJpbmQobnVsbCx2b2lkIDAse3R5cGU6InRpbWVvdXQiLHRhcmdldDp0fSksMTJlNCk7dC5vbmVycm9yPV8uYmluZChudWxsLHQub25lcnJvciksdC5vbmxvYWQ9Xy5iaW5kKG51bGwsdC5vbmxvYWQpLHImJmRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQodCl9fSxuLnI9ZT0+eyJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sJiZTeW1ib2wudG9TdHJpbmdUYWcmJk9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSl9LG4ubm1kPWU9PihlLnBhdGhzPVtdLGUuY2hpbGRyZW58fChlLmNoaWxkcmVuPVtdKSxlKSxuLmo9MjExOCwoKCk9Pnt2YXIgZTtuLmcuaW1wb3J0U2NyaXB0cyYmKGU9bi5nLmxvY2F0aW9uKyIiKTt2YXIgYT1uLmcuZG9jdW1lbnQ7aWYoIWUmJmEmJihhLmN1cnJlbnRTY3JpcHQmJiJTQ1JJUFQiPT09YS5jdXJyZW50U2NyaXB0LnRhZ05hbWUudG9VcHBlckNhc2UoKSYmKGU9YS5jdXJyZW50U2NyaXB0LnNyYyksIWUpKXt2YXIgYz1hLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKTtpZihjLmxlbmd0aClmb3IodmFyIGQ9Yy5sZW5ndGgtMTtkPi0xJiYoIWV8fCEvXmh0dHAocz8pOi8udGVzdChlKSk7KWU9Y1tkLS1dLnNyY31pZighZSl0aHJvdyBuZXcgRXJyb3IoIkF1dG9tYXRpYyBwdWJsaWNQYXRoIGlzIG5vdCBzdXBwb3J0ZWQgaW4gdGhpcyBicm93c2VyIik7ZT1lLnJlcGxhY2UoL15ibG9iOi8sIiIpLnJlcGxhY2UoLyMuKiQvLCIiKS5yZXBsYWNlKC9cPy4qJC8sIiIpLnJlcGxhY2UoL1wvW15cL10rJC8sIi8iKSxuLnA9ZX0pKCksbi5nLmxvY2F0aW9uJiZuLnAuc3RhcnRzV2l0aChuLmcubG9jYXRpb24ub3JpZ2luKSYmKG4ucD1uLnAuc2xpY2Uobi5nLmxvY2F0aW9uLm9yaWdpbi5sZW5ndGgpKSwoKCk9Pntjb25zdCBlPW4udTtuLnU9YT0+ZShhKS5yZXBsYWNlKCJfX0xBTkdfXyIsbi5nLmxhbmd1YWdlKX0pKCksKCgpPT57dmFyIGU9bi5lLGE9T2JqZWN0LmNyZWF0ZShudWxsKTtmdW5jdGlvbiBjKGEsZCl7cmV0dXJuIGUoYSkuY2F0Y2goKGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBQcm9taXNlKChmdW5jdGlvbihmKXt2YXIgYj1mdW5jdGlvbigpe3NlbGYucmVtb3ZlRXZlbnRMaXN0ZW5lcigib25saW5lIixiLCExKSwhMT09PW5hdmlnYXRvci5vbkxpbmU/c2VsZi5hZGRFdmVudExpc3RlbmVyKCJvbmxpbmUiLGIsITEpOmYoZDwyP2MoYSxkKzEpOmUoYSkpfTtzZXRUaW1lb3V0KGIsZCpkKjFlMyl9KSl9KSl9bi5lPWZ1bmN0aW9uKGUpe2lmKCFhW2VdKXthW2VdPWMoZSwwKTt2YXIgZD1mdW5jdGlvbigpewpkZWxldGUgYVtlXX07YVtlXS50aGVuKGQsZCl9cmV0dXJuIGFbZV19fSkoKSwoKCk9PntpZigidW5kZWZpbmVkIiE9dHlwZW9mIGRvY3VtZW50KXt2YXIgZT1lPT5uZXcgUHJvbWlzZSgoKGEsYyk9Pnt2YXIgZD1uLm1pbmlDc3NGKGUpLGY9bi5wK2Q7aWYoKChlLGEpPT57Zm9yKHZhciBjPWRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJsaW5rIiksZD0wO2Q8Yy5sZW5ndGg7ZCsrKXt2YXIgZj0odD1jW2RdKS5nZXRBdHRyaWJ1dGUoImRhdGEtaHJlZiIpfHx0LmdldEF0dHJpYnV0ZSgiaHJlZiIpO2lmKCJzdHlsZXNoZWV0Ij09PXQucmVsJiYoZj09PWV8fGY9PT1hKSlyZXR1cm4gdH12YXIgYj1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgic3R5bGUiKTtmb3IoZD0wO2Q8Yi5sZW5ndGg7ZCsrKXt2YXIgdDtpZigoZj0odD1iW2RdKS5nZXRBdHRyaWJ1dGUoImRhdGEtaHJlZiIpKT09PWV8fGY9PT1hKXJldHVybiB0fX0pKGQsZikpcmV0dXJuIGEoKTsoKGUsYSxjLGQsZik9Pnt2YXIgYj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaW5rIik7Yi5yZWw9InN0eWxlc2hlZXQiLGIudHlwZT0idGV4dC9jc3MiLGIub25lcnJvcj1iLm9ubG9hZD1jPT57aWYoYi5vbmVycm9yPWIub25sb2FkPW51bGwsImxvYWQiPT09Yy50eXBlKWQoKTtlbHNle3ZhciB0PWMmJigibG9hZCI9PT1jLnR5cGU/Im1pc3NpbmciOmMudHlwZSkscj1jJiZjLnRhcmdldCYmYy50YXJnZXQuaHJlZnx8YSxuPW5ldyBFcnJvcigiTG9hZGluZyBDU1MgY2h1bmsgIitlKyIgZmFpbGVkLlxuKCIrcisiKSIpO24uY29kZT0iQ1NTX0NIVU5LX0xPQURfRkFJTEVEIixuLnR5cGU9dCxuLnJlcXVlc3Q9cixiLnBhcmVudE5vZGUmJmIucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChiKSxmKG4pfX0sYi5ocmVmPWEsMCE9PWIuaHJlZi5pbmRleE9mKHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4rIi8iKSYmKGIuY3Jvc3NPcmlnaW49ImFub255bW91cyIpLGM/Yy5wYXJlbnROb2RlLmluc2VydEJlZm9yZShiLGMubmV4dFNpYmxpbmcpOmRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoYil9KShlLGYsbnVsbCxhLGMpfSkpLGE9ezIxMTg6MH07bi5mLm1pbmlDc3M9KGMsZCk9PnthW2NdP2QucHVzaChhW2NdKTowIT09YVtjXSYmezY0NToxLDY0NjoxLDY1NzoxLDE1MDk6MSwxNjc4OjEsMjMzMToxLDMzMjM6MSw0MDQyOjEsNDQ3NzoxLDQ5Mjk6MSw0OTY5OjEsNTE4NDoxLDU2ODk6MSw2MDgyOjEsNjQ0NToxLDY1ODM6MSw2NjA1OjEsNzE2MzoxLDczODc6MSw3NDQ1OjEsNzY2NToxLDc4OTk6MSw4NDA4OjEsODU3OToxLDllMzoxLDkxNDA6MSw5NTA0OjEsOTc0NDoxLDEwMzY2OjEsMTAzODU6MSwxMTAwODoxLDExMjE4OjEsMTEyNTc6MSwxMTQ2MToxLDExNDg5OjEsMTE3MjU6MSwxMjA1MToxLDEyMzg1OjEsMTI1NjU6MSwxMzQ5MjoxLDE0MTkzOjEsMTQ2MjU6MSwxNTUyNjoxLDE2NDIxOjEsMTc2OTM6MSwxODE2MjoxLDE4NDAwOjEsMTg0NzI6MSwxOTUxMzoxLDE5NTk1OjEsMTk1OTg6MSwxOTc4NzoxLDE5ODMzOjEsMjAyNzE6MSwyMDM1NDoxLDIwOTcxOjEsMjA5ODY6MSwyMzYyNDoxLDI0NDA4OjEsMjQ1ODE6MSwyNTY0NzoxLDI1Njk4OjEsMjU4MDk6MSwyNjU5MjoxLDI3NTE3OjEsMjc1NDk6MSwyNzczNjoxLDI4MDE3OjEsMjg0MTM6MSwyOTEzMzoxLDI5Mjk2OjEsMjkzMjc6MSwyOTUzNjoxLDI5OTQzOjEsMzAzNzM6MSwzMDc0NToxLDMwOTYwOjEsMzEyNjI6MSwzMTU1NzoxLDMxODM3OjEsMzIxNzY6MSwzMjc0ODoxLDMzMTIwOjEsMzMyMjE6MSwzMzM2ODoxLDMzNTUzOjEsMzQ3NTg6MSwzNTA3MzoxLDM1MTk4OjEsMzU2MzA6MSwzNjIyMjoxLDM2MzU2OjEsMzY1NDU6MSwzNzM5MDoxLDM3NTEzOjEsMzc3NDY6MSwzNzc2NzoxLDM4MjYyOjEsMzg4Njg6MSwzOTc4NjoxLDQwMjIwOjEsNDA4MzU6MSw0MDg2NzoxLDQwOTE0OjEsNDE1ODg6MSw0MzQ0MToxLDQzNjQ0OjEsNDQyNTM6MSw0NTM2ODoxLDQ1OTQ1OjEsNDYwMzQ6MSw0NjU5MToxLDQ3MDIxOjEsNDc1NTE6MSw0NzU3OToxLDQ3NjMyOjEsNDg4NjQ6MSw0OTUzNjoxLDQ5NTg4OjEsNTAwMzU6MSw1MDIyMToxLDUwMzI1OjEsNTA2MjI6MSw1MDgwMDoxLDUxMDMwOjEsNTEyMTM6MSw1MTMwOToxLDUxMzE1OjEsNTE2ODI6MSw1MTg4MDoxLDUyMDY1OjEsNTIxNzg6MSw1MjM5NjoxLDUyNjgwOjEsNTMzMjk6MSw1MzUyMToxLDUzNzEzOjEsNTQwOTM6MSw1NDMxMDoxLDU1MDExOjEsNTYyMTM6MSw1NjI1MjoxLDU3MzAwOjEsNTc1MDQ6MSw1ODM4NDoxLDU4OTMzOjEsNTkzNTA6MSw1OTQzNzoxLDU5OTQxOjEsNjAwNjI6MSw2MTgyMToxLDYyNjMwOjEsNjI3OTA6MSw2MjgwNjoxLDY0MTk1OjEsNjQ2NDM6MSw2NDY3NDoxLDY1NTI4OjEsNjU4NTY6MSw2NjI3MDoxLDY2NDczOjEsNjcyMTI6MSw2NzU0MzoxLDY3Nzk5OjEsNjg5NDI6MSw2ODk2NDoxLDY5ODA5OjEsNzA2NTY6MSw3MDgxNToxLDcxNDE0OjEsNzE0ODI6MSw3MTkwMToxLDcyMjQ5OjEsNzI1MTI6MSw3MjY2NjoxLDcyNjgwOjEsNzI5MDI6MSw3MzQyNToxLDczNTUxOjEsNzQwMTE6MSw3NDIzMzoxLDc0MzgxOjEsNzQ0MjI6MSw3NDYzNjoxLDc0ODMwOjEsNzYzMjk6MSw3NjkxMjoxLDc4MjM3OjEsNzg0MDQ6MSw3ODQ3MToxLDc4NjUyOjEsNzg4OTk6MSw4MDczMToxLDgwNzgyOjEsODEwMDE6MSw4MTA3MjoxLDgxNTI5OjEsODE5MDM6MSw4MjI3MToxLDgyNTg2OjEsODM0ODg6MSw4MzUyOToxLDg0OTQ4OjEsODY0MjM6MSw4NzQ3NDoxLDg3NzQwOjEsODgzODU6MSw4ODY0MToxLDg5MDQ0OjEsODkxOTU6MSw4OTU1ODoxLDkwOTYwOjEsOTEyMDA6MSw5MTY3ODoxLDkzNDE2OjEsOTM0MjE6MSw5NDA1NDoxLDk0OTQ4OjEsOTUxNTg6MSw5NjU4NzoxLDk3NjYwOjEsOTc3OTc6MSw5ODA4NDoxLDk5NTkzOjEsOTk5MDg6MX1bY10mJmQucHVzaChhW2NdPWUoYykudGhlbigoKCk9PnthW2NdPTB9KSwoZT0+e3Rocm93IGRlbGV0ZSBhW2NdLGV9KSkpfX19KSgpLG4uaTE4bmV4dD0oZSxhPXt9LGMsZD1uLmcubGFuZ3VhZ2UpPT57aWYobnVsbD09PWUpewppZihBcnJheS5pc0FycmF5KGMpKXJldHVybiBjW3ZvaWQgMD09PWEuY291bnQ/MDpuLl9wbHVyYWxbZF0oYS5jb3VudCldLnJlcGxhY2UoL3soXHcrKX0vZywoKGUsYyk9PnZvaWQgMCE9PShhLnJlcGxhY2V8fGEpW2NdPyhhLnJlcGxhY2V8fGEpW2NdOmUpKTtpZigib2JqZWN0Ij09dHlwZW9mIGMpcmV0dXJuIGNbbi5nLmxhbmd1YWdlXT9uLmkxOG5leHQobnVsbCxhLGNbbi5nLmxhbmd1YWdlXSk6bi5pMThuZXh0KG51bGwsYSxjLmVuLCJlbiIpfWVsc2UgaWYoYyYmZSl7Y29uc3QgZD1gJHtlfSR7YS5jb250ZXh0P2BfJHthLmNvbnRleHR9YDoiIn1gO2lmKGNbZF0pcmV0dXJuIG4uaTE4bmV4dChudWxsLGEsY1tkXSl9cmV0dXJuIm51bWJlciI9PXR5cGVvZiBlP2UudG9TdHJpbmcoKToic3RyaW5nIiE9dHlwZW9mIGU/IiI6ZX0sKCgpPT57bi5iPSJ1bmRlZmluZWQiIT10eXBlb2YgZG9jdW1lbnQmJmRvY3VtZW50LmJhc2VVUkl8fHNlbGYubG9jYXRpb24uaHJlZjt2YXIgZT17MjExODowLDg0MzA2OjAsNDY5MDc6MCw5NDIzMjowLDMyODE2OjAsMTcwODc6MCw0MzMyNTowLDM5MDU6MCwzNTc5NDowLDE1OTMyOjAsNTQ2ODE6MCw1MTUwODowLDQ5NTE4OjAsMzI2MzI6MCwxNTYzNDowLDc1MzA0OjAsNTIwOTU6MCwzODAwMjowLDQ0MDMxOjAsNDM3OTI6MCw3MDM2NDowLDk0ODg6MCwzNzg2NzowLDYyNjgxOjAsMzAyMDA6MCwzMTM5NjowfTtuLmYuaj0oYSxjKT0+e3ZhciBkPW4ubyhlLGEpP2VbYV06dm9pZCAwO2lmKDAhPT1kKWlmKGQpYy5wdXNoKGRbMl0pO2Vsc2UgaWYoL14oMSgwMyg2Nnw4NSl8MSgwMDh8MjE4fDI1N3w0NjF8NDg5fDcyNSl8MigwNTF8Mzg1fDU2NSl8NSgwOXw1MjZ8NjM0fDkzMil8OCgxNjJ8NDAwfDQ3Mil8OSg1KDEzfDk1fDk4KXw3ODd8ODMzKXwoNDF8NzYpOTN8MzQ5Mnw0NjI1fDY0MjF8Njc4fDcwODcpfDIoMChbMjldNzF8MzU0fDk4Nil8NSg2NDd8Njk4fDgwOSl8Nyg1MTd8NTQ5fDczNil8OSgxMzN8Mjk2fDMyN3w1MzZ8OTQzKXwxMTh8MzMxfDM2MjR8NDQwOHw0NTgxfDY1OTJ8ODAxN3w4NDEzKXwzKDAoMjAwfDM3M3w3NDV8OTYwKXwxKDI2MnwzOTZ8NTU3fDgzNyl8MigxNzZ8NjMyfDc0OHw4MTYpfDMoMTIwfDIyMXwyM3wzNjh8NTUzKXw1KDA3M3wxOTh8NjMwfDc5NCl8NigyMjJ8MzU2fDU0NSl8NyhbNzhdNjd8MzkwfDUxM3w3NDYpfDgoMDAyfDI2Mnw4NjgpfDQ3NTh8OTA1fDk3ODYpfDQoMCgyMjB8NDJ8ODM1fDg2N3w5MTQpfDMoMzI1fDQ0MXw2NDR8NzkyKXw0KDAzMXwyNTN8NzcpfDYoMDM0fDU5MXw5MDcpfDcoMDIxfDU1MXw1Nzl8NjMyKXw5KDUoMTh8MzZ8ODgpfDI5fDY5KXwxNTg4fDUzNjh8NTk0NXw4ODY0KXw1KDAoMDM1fDIyMXwzMjV8NjIyfDgwMCl8MSgwMzB8MjEzfDMwOXwzMTV8NTA4fDY4Mnw4NHw4ODApfDIoMDY1fDA5NXwxNzh8Mzk2fDY4MCl8MygzMjl8NTIxfDcxMyl8NCgwOTN8MzEwfDY4MSl8NigyMTN8MjUyfDg5KXw5KDM1MHw0Mzd8OTQxKXw1MDExfDczMDB8NzUwNHw4Mzg0fDg5MzMpfDYoMig2MzB8NjgxfDc5MHw4MDYpfDQoNih8NDN8NzQpfCh8MTl8NCk1KXw1KDUyOHw3fDgzfDg1Nil8NigwNXwyNzB8NDczKXw3KDIxMnw1NDN8Nzk5KXw4OSg0Mnw2NCl8MDA2MnwwODJ8MTgyMXw5ODA5KXw3KDAoMzY0fDY1Nnw4MTUpfDEoNDE0fDQ4Mnw2M3w5MDEpfDIoMjQ5fDUxMnw2NjZ8NjgwfDkwMil8Myg0MjV8NTUxfDg3KXw0KDAxMXwyMzN8MzgxfDQyMnw0NXw2MzZ8ODMwKXw2KDMyOXw2NXw5MTIpfDgoKHw4KTk5fDIzN3w0MDR8NDcxfDY1Mil8NTMwNCl8OCgwNygzMXw4Mil8MSgwMDF8MDcyfDUyOXw5MDMpfDQoMDh8MzA2fDk0OCl8OSgwNDR8MTk1fDU1OCl8MjI3MXwyNTg2fDM0ODh8MzUyOXw1Nzl8NjQyM3w3NDc0fDc3NDB8ODM4NXw4NjQxKXw5KDEoMjAwfDQwfDY3OCl8MzQoMTZ8MjEpfDQoMDU0fDIzMnw4OHw5NDgpfDcoNDR8NjYwfDc5Nyl8MDAwfDA5NjB8NTA0fDUxNTh8NjU4N3w4MDg0fDk1OTN8OTkwOCkpJC8udGVzdChhKSllW2FdPTA7ZWxzZXt2YXIgZj1uZXcgUHJvbWlzZSgoKGMsZik9PmQ9ZVthXT1bYyxmXSkpO2MucHVzaChkWzJdPWYpO3ZhciBiPW4ucCtuLnUoYSksdD1uZXcgRXJyb3I7bi5sKGIsKGM9PntpZihuLm8oZSxhKSYmKDAhPT0oZD1lW2FdKSYmKGVbYV09dm9pZCAwKSxkKSl7dmFyIGY9YyYmKCJsb2FkIj09PWMudHlwZT8ibWlzc2luZyI6Yy50eXBlKSxiPWMmJmMudGFyZ2V0JiZjLnRhcmdldC5zcmM7dC5tZXNzYWdlPSJMb2FkaW5nIGNodW5rICIrYSsiIGZhaWxlZC5cbigiK2YrIjogIitiKyIpIix0Lm5hbWU9IkNodW5rTG9hZEVycm9yIix0LnR5cGU9Zix0LnJlcXVlc3Q9YixkWzFdKHQpfX0pLCJjaHVuay0iK2EsYSl9fSxuLkYuaj1hPT57CmlmKCEobi5vKGUsYSkmJnZvaWQgMCE9PWVbYV18fC9eKDEoMDMoNjZ8ODUpfDEoMDA4fDIxOHwyNTd8NDYxfDQ4OXw3MjUpfDIoMDUxfDM4NXw1NjUpfDUoMDl8NTI2fDYzNHw5MzIpfDgoMTYyfDQwMHw0NzIpfDkoNSgxM3w5NXw5OCl8Nzg3fDgzMyl8KDQxfDc2KTkzfDM0OTJ8NDYyNXw2NDIxfDY3OHw3MDg3KXwyKDAoWzI5XTcxfDM1NHw5ODYpfDUoNjQ3fDY5OHw4MDkpfDcoNTE3fDU0OXw3MzYpfDkoMTMzfDI5NnwzMjd8NTM2fDk0Myl8MTE4fDMzMXwzNjI0fDQ0MDh8NDU4MXw2NTkyfDgwMTd8ODQxMyl8MygwKDIwMHwzNzN8NzQ1fDk2MCl8MSgyNjJ8Mzk2fDU1N3w4MzcpfDIoMTc2fDYzMnw3NDh8ODE2KXwzKDEyMHwyMjF8MjN8MzY4fDU1Myl8NSgwNzN8MTk4fDYzMHw3OTQpfDYoMjIyfDM1Nnw1NDUpfDcoWzc4XTY3fDM5MHw1MTN8NzQ2KXw4KDAwMnwyNjJ8ODY4KXw0NzU4fDkwNXw5Nzg2KXw0KDAoMjIwfDQyfDgzNXw4Njd8OTE0KXwzKDMyNXw0NDF8NjQ0fDc5Mil8NCgwMzF8MjUzfDc3KXw2KDAzNHw1OTF8OTA3KXw3KDAyMXw1NTF8NTc5fDYzMil8OSg1KDE4fDM2fDg4KXwyOXw2OSl8MTU4OHw1MzY4fDU5NDV8ODg2NCl8NSgwKDAzNXwyMjF8MzI1fDYyMnw4MDApfDEoMDMwfDIxM3wzMDl8MzE1fDUwOHw2ODJ8ODR8ODgwKXwyKDA2NXwwOTV8MTc4fDM5Nnw2ODApfDMoMzI5fDUyMXw3MTMpfDQoMDkzfDMxMHw2ODEpfDYoMjEzfDI1Mnw4OSl8OSgzNTB8NDM3fDk0MSl8NTAxMXw3MzAwfDc1MDR8ODM4NHw4OTMzKXw2KDIoNjMwfDY4MXw3OTB8ODA2KXw0KDYofDQzfDc0KXwofDE5fDQpNSl8NSg1Mjh8N3w4M3w4NTYpfDYoMDV8MjcwfDQ3Myl8NygyMTJ8NTQzfDc5OSl8ODkoNDJ8NjQpfDAwNjJ8MDgyfDE4MjF8OTgwOSl8NygwKDM2NHw2NTZ8ODE1KXwxKDQxNHw0ODJ8NjN8OTAxKXwyKDI0OXw1MTJ8NjY2fDY4MHw5MDIpfDMoNDI1fDU1MXw4Nyl8NCgwMTF8MjMzfDM4MXw0MjJ8NDV8NjM2fDgzMCl8NigzMjl8NjV8OTEyKXw4KCh8OCk5OXwyMzd8NDA0fDQ3MXw2NTIpfDUzMDQpfDgoMDcoMzF8ODIpfDEoMDAxfDA3Mnw1Mjl8OTAzKXw0KDA4fDMwNnw5NDgpfDkoMDQ0fDE5NXw1NTgpfDIyNzF8MjU4NnwzNDg4fDM1Mjl8NTc5fDY0MjN8NzQ3NHw3NzQwfDgzODV8ODY0MSl8OSgxKDIwMHw0MHw2NzgpfDM0KDE2fDIxKXw0KDA1NHwyMzJ8ODh8OTQ4KXw3KDQ0fDY2MHw3OTcpfDAwMHwwOTYwfDUwNHw1MTU4fDY1ODd8ODA4NHw5NTkzfDk5MDgpKSQvLnRlc3QoYSkpKXtlW2FdPW51bGw7dmFyIGM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgibGluayIpO2MuY2hhcnNldD0idXRmLTgiLGMuY3Jvc3NPcmlnaW49ImFub255bW91cyIsbi5uYyYmYy5zZXRBdHRyaWJ1dGUoIm5vbmNlIixuLm5jKSxjLnJlbD0icHJlZmV0Y2giLGMuYXM9InNjcmlwdCIsYy5ocmVmPW4ucCtuLnUoYSksZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChjKX19LG4uTy5qPWE9PjA9PT1lW2FdO3ZhciBhPShhLGMpPT57dmFyIGQsZixbYix0LHJdPWMsbz0wO2lmKGIuc29tZSgoYT0+MCE9PWVbYV0pKSl7Zm9yKGQgaW4gdCluLm8odCxkKSYmKG4ubVtkXT10W2RdKTtpZihyKXZhciBpPXIobil9Zm9yKGEmJmEoYyk7bzxiLmxlbmd0aDtvKyspZj1iW29dLG4ubyhlLGYpJiZlW2ZdJiZlW2ZdWzBdKCksZVtmXT0wO3JldHVybiBuLk8oaSl9LGM9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlldz1zZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3fHxbXTtjLmZvckVhY2goYS5iaW5kKG51bGwsMCkpLGMucHVzaD1hLmJpbmQobnVsbCxjLnB1c2guYmluZChjKSl9KSgpLG4ucD1uLmcmJm4uZy5XRUJQQUNLX1BVQkxJQ19QQVRIfHxuLnAsYj17OTI5Njg6Wzg0NjkzLDg4OTk3LDMwNjk5LDQ2MjE3LDY2OTMzLDcxMzE5XX0sbi5mLnByZWZldGNoPShlLGEpPT5Qcm9taXNlLmFsbChhKS50aGVuKCgoKT0+e3ZhciBhPWJbZV07QXJyYXkuaXNBcnJheShhKSYmYS5tYXAobi5FKX0pKX0pKCk7"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCBLENDFL.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.796Z","timestamp":1785126258796,"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 /crypto/XTVCBLENDFL.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 04:24:18 GMT\r\ncontent-type: image/svg+xml\r\nserver: BunnyCDN-NO1-830\r\ncdn-pullzone: 1827952\r\ncdn-requestcountrycode: NO\r\nvary: Accept-Encoding, Accept-Encoding\r\naccess-control-allow-methods: GET\r\naccess-control-allow-origin: *\r\naccess-control-max-age: 30\r\ncache-control: max-age=300,s-maxage=180\r\netag: W/\"8f818b05453e76c93ffa7a652e7dcda0\"\r\nlast-modified: Thu, 14 May 2026 13:36:04 GMT\r\nx-amz-id-2: 9rtxjnPJSd0okhe0yVSKmjoDiGBvy3QldsyHERjNECJPA/1tVKRwkvuGpk8EyLbwUijg6iaEjDo=\r\nx-amz-request-id: 0NV5HGPEMB22BA16\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 8f818b05453e76c93ffa7a652e7dcda0\r\nx-amz-version-id: s2G.5aHcYkymtc4oIAwa_HqDoizzp9kG\r\ncdn-proxyver: 1.53\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/14/2026 16:39:04\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 4023839f254608f96f6fa7a3702a9672\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":"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":801,"size_decoded":1507,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (801), with no line terminators","md5":"8f818b05453e76c93ffa7a652e7dcda0","sha1":"d4db2591294af5da081d8b5b8d26a97a9aa593d9","sha256":"a163efc615c81b7a87c20f5c91e4ffc9b27474b32ed70707265707ab8ae4eca9","sha512":"08cd8f76778fcb3c074c613d276249143ad4383398ac035cc26499e34cfe8737f0eca8f22eef697f6be3990d140b8f80a68ff35305973a24107d9e688275e15a","ssdeep":"","tlshash":"97018e7ee95d146ed513f9addb9ac8a0230d10aff048429459dddb69a0525c6cd47410","first_seen":"2026-06-18T08:26:17.203858Z","last_seen":"2026-07-27T07:05:43.239309Z","times_seen":92,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNOS4wOSA2Ljl2LS4wMUg2LjAxbC0uMDEtLjAxVjZIMTNsLjAxLjAxdi44N2gtLjFjLS40IDAtLjcgMC0uODkuMDJhNS44MiA1LjgyIDAgMCAwLTMuMDcgMS4yMmg0LjA1bC4wMS4wMnYuODVhLjAyLjAyIDAgMCAxLS4wMi4wMWgtLjRhMy40IDMuNCAwIDAgMC0yLjE1LjdjLS4zNy4yOS0uNjUuNjItLjg2IDEuMDJhMi44MSAyLjgxIDAgMCAwLS4zMiAxLjI3VjEyaC0uOTNhLjAyLjAyIDAgMCAxLS4wMiAwIC4wMS4wMSAwIDAgMSAwLS4wMWMwLS41OC4xNC0xLjEzLjQtMS42NUEzLjkzIDMuOTMgMCAwIDEgOS44MSA5SDguMDRhLjAzLjAzIDAgMCAwLS4wMi4wMUE0LjgyIDQuODIgMCAwIDAgNi45NSAxMkg2TDYgMTEuOThBNS42IDUuNiAwIDAgMSA2Ljg1IDloLS44NHYtLjg4aDEuNTJhLjA1LjA1IDAgMCAwIC4wNC0uMDJjLjQ0LS40Ny45NC0uODcgMS41Mi0xLjJaIiBmaWxsPSIjZmZmIi8+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJhIiB4MT0iMy4zNSIgeTE9IjMuMTIiIHgyPSIyMS45IiB5Mj0iMjQuNDMiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjMUExRTIxIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjMDYwNjBBIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PC9zdmc+"}},"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/style-CliJwUTR.css","fqdn":"widget-v3.smartsuppcdn.com","domain":"smartsuppcdn.com","tld":"com"},"ip":{"addr":"185.76.9.11","port":443,"asn":60068,"as":"Datacamp Limited","country":"Sweden","country_code":"SE"},"is_navigation_request":false,"resource_type":"stylesheet","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:20.270Z","timestamp":1785126260270,"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://besttrader.live\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 04:24:20 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: k6N73mHeKP34itvNMTiX0796TvWh3wTLi/tM+ZvTT3Fp+CBjzOfhr8E+tiJaHtS4Bo/co50\r\nx-77-nzt-ray: e2f754201b235a1474dd666afe0d7010\r\nx-77-cache: HIT\r\nx-77-age: 1713218\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-27T07:05:43.306029Z","times_seen":1773,"resource_available":false,"data":"LmJ0bi5zdmVsdGUteXdvZm1se2JvcmRlci1yYWRpdXM6OTk5OXB4O2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6LjI1cmVtO2ZvbnQtc2l6ZToxLjEyNXJlbTtsaW5lLWhlaWdodDoxLjc1cmVtO3RyYW5zaXRpb24tcHJvcGVydHk6Y29sb3IsYmFja2dyb3VuZC1jb2xvcixib3JkZXItY29sb3IsdGV4dC1kZWNvcmF0aW9uLWNvbG9yLGZpbGwsc3Ryb2tlO3RyYW5zaXRpb24tZHVyYXRpb246LjE1czt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtkaXNwbGF5OmlubGluZS1mbGV4fS5idG4tcHJpbWFyeS5zdmVsdGUteXdvZm1se2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeS1idXR0b24pIDtjb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbi1jb250ZW50KSB9LmJ0bi1wcmltYXJ5LnN2ZWx0ZS15d29mbWw6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbi1ob3ZlcikgfS5idG4tZ2hvc3Quc3ZlbHRlLXl3b2ZtbDpob3ZlcnstLXVuLWJnLW9wYWNpdHk6LjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMCAwIDAvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0uYnRuLXN1Y2Nlc3Muc3ZlbHRlLXl3b2ZtbHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigxNiAxODUgMTI5L3ZhcigtLXVuLWJnLW9wYWNpdHkpKSA7LS11bi10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2IoMjU1IDI1NSAyNTUvdmFyKC0tdW4tdGV4dC1vcGFjaXR5KSkgfS5idG4tc3VjY2Vzcy5zdmVsdGUteXdvZm1sOmhvdmVyey0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDUgMTUwIDEwNS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5idG4tc20uc3ZlbHRlLXl3b2ZtbHt3aWR0aDoxLjVyZW07aGVpZ2h0OjEuNXJlbX0uYnRuLW1kLnN2ZWx0ZS15d29mbWx7d2lkdGg6MnJlbTtoZWlnaHQ6MnJlbX0uYnRuLWxnLnN2ZWx0ZS15d29mbWx7d2lkdGg6Mi43NXJlbTtoZWlnaHQ6Mi43NXJlbX0uYnRuLXhsLnN2ZWx0ZS15d29mbWx7d2lkdGg6M3JlbTtoZWlnaHQ6M3JlbX0uYnRuLWRpc2FibGVkLnN2ZWx0ZS15d29mbWx7Y3Vyc29yOm5vdC1hbGxvd2VkO29wYWNpdHk6LjJ9LmJ0bi1kaXNhYmxlZC5zdmVsdGUteXdvZm1sOmhvdmVyOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzAwMDB9Kiw6YmVmb3JlLDphZnRlcntib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci13aWR0aDowO2JvcmRlci1jb2xvcjp2YXIoLS11bi1kZWZhdWx0LWJvcmRlci1jb2xvciwjZTVlN2ViKX06YmVmb3JlLDphZnRlcnstLXVuLWNvbnRlbnQ6IiJ9aHRtbCw6aG9zdHstd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6MTAwJTt0YWItc2l6ZTo0O2ZvbnQtZmVhdHVyZS1zZXR0aW5nczpub3JtYWw7Zm9udC12YXJpYXRpb24tc2V0dGluZ3M6bm9ybWFsOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudDtmb250LWZhbWlseTp1aS1zYW5zLXNlcmlmLHN5c3RlbS11aSxzYW5zLXNlcmlmLEFwcGxlIENvbG9yIEVtb2ppLFNlZ29lIFVJIEVtb2ppLFNlZ29lIFVJIFN5bWJvbCxOb3RvIENvbG9yIEVtb2ppO2xpbmUtaGVpZ2h0OjEuNX1ib2R5e2xpbmUtaGVpZ2h0OmluaGVyaXQ7bWFyZ2luOjB9aHJ7aGVpZ2h0OjA7Y29sb3I6aW5oZXJpdDtib3JkZXItdG9wLXdpZHRoOjFweH1hYmJyOndoZXJlKFt0aXRsZV0pey13ZWJraXQtdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZSBkb3R0ZWQ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZSBkb3R0ZWR9aDEsaDIsaDMsaDQsaDUsaDZ7Zm9udC1zaXplOmluaGVyaXQ7Zm9udC13ZWlnaHQ6aW5oZXJpdH1he2NvbG9yOmluaGVyaXQ7LXdlYmtpdC10ZXh0LWRlY29yYXRpb246aW5oZXJpdDt0ZXh0LWRlY29yYXRpb246aW5oZXJpdH1iLHN0cm9uZ3tmb250LXdlaWdodDpib2xkZXJ9Y29kZSxrYmQsc2FtcCxwcmV7Zm9udC1mZWF0dXJlLXNldHRpbmdzOm5vcm1hbDtmb250LXZhcmlhdGlvbi1zZXR0aW5nczpub3JtYWw7Zm9udC1mYW1pbHk6dWktbW9ub3NwYWNlLFNGTW9uby1SZWd1bGFyLE1lbmxvLE1vbmFjbyxDb25zb2xhcyxMaWJlcmF0aW9uIE1vbm8sQ291cmllciBOZXcsbW9ub3NwYWNlO2ZvbnQtc2l6ZToxZW19c21hbGx7Zm9udC1zaXplOjgwJX1zdWIsc3Vwe3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lO2ZvbnQtc2l6ZTo3NSU7bGluZS1oZWlnaHQ6MDtwb3NpdGlvbjpyZWxhdGl2ZX1zdWJ7Ym90dG9tOi0uMjVlbX1zdXB7dG9wOi0uNWVtfXRhYmxle3RleHQtaW5kZW50OjA7Ym9yZGVyLWNvbG9yOmluaGVyaXQ7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlfWJ1dHRvbixpbnB1dCxvcHRncm91cCxzZWxlY3QsdGV4dGFyZWF7Zm9udC1mZWF0dXJlLXNldHRpbmdzOmluaGVyaXQ7Zm9udC12YXJpYXRpb24tc2V0dGluZ3M6aW5oZXJpdDtmb250LWZhbWlseTppbmhlcml0O2ZvbnQtc2l6ZToxMDAlO2ZvbnQtd2VpZ2h0OmluaGVyaXQ7bGluZS1oZWlnaHQ6aW5oZXJpdDtjb2xvcjppbmhlcml0O21hcmdpbjowO3BhZGRpbmc6MH1idXR0b24sc2VsZWN0e3RleHQtdHJhbnNmb3JtOm5vbmV9YnV0dG9uLFt0eXBlPWJ1dHRvbl0sW3R5cGU9cmVzZXRdLFt0eXBlPXN1Ym1pdF17LXdlYmtpdC1hcHBlYXJhbmNlOmJ1dHRvbjtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwO2JhY2tncm91bmQtaW1hZ2U6bm9uZX06LW1vei1mb2N1c3Jpbmd7b3V0bGluZTphdXRvfTotbW96LXVpLWludmFsaWR7Ym94LXNoYWRvdzpub25lfXByb2dyZXNze3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbntoZWlnaHQ6YXV0b306Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b257aGVpZ2h0OmF1dG99W3R5cGU9c2VhcmNoXXstd2Via2l0LWFwcGVhcmFuY2U6dGV4dGZpZWxkO291dGxpbmUtb2Zmc2V0Oi0ycHh9Ojotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uey13ZWJraXQtYXBwZWFyYW5jZTpub25lfTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b257LXdlYmtpdC1hcHBlYXJhbmNlOmJ1dHRvbjtmb250OmluaGVyaXR9c3VtbWFyeXtkaXNwbGF5Omxpc3QtaXRlbX1ibG9ja3F1b3RlLGRsLGRkLGgxLGgyLGgzLGg0LGg1LGg2LGhyLGZpZ3VyZSxwLHByZXttYXJnaW46MH1maWVsZHNldHttYXJnaW46MDtwYWRkaW5nOjB9bGVnZW5ke3BhZGRpbmc6MH1vbCx1bCxtZW51e21hcmdpbjowO3BhZGRpbmc6MDtsaXN0LXN0eWxlOm5vbmV9ZGlhbG9ne3BhZGRpbmc6MH10ZXh0YXJlYXtyZXNpemU6dmVydGljYWx9aW5wdXQ6OnBsYWNlaG9sZGVyLHRleHRhcmVhOjpwbGFjZWhvbGRlcntvcGFjaXR5OjE7Y29sb3I6IzljYTNhZn1idXR0b24sW3JvbGU9YnV0dG9uXXtjdXJzb3I6cG9pbnRlcn06ZGlzYWJsZWR7Y3Vyc29yOmRlZmF1bHR9aW1nLHN2Zyx2aWRlbyxjYW52YXMsYXVkaW8saWZyYW1lLGVtYmVkLG9iamVjdHt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7ZGlzcGxheTpibG9ja31pbWcsdmlkZW97bWF4LXdpZHRoOjEwMCU7aGVpZ2h0OmF1dG99W2hpZGRlbl06d2hlcmUoOm5vdChbaGlkZGVuPXVudGlsLWZvdW5kXSkpe2Rpc3BsYXk6bm9uZX0qLDpiZWZvcmUsOmFmdGVyLDo6YmFja2Ryb3B7LS11bi1yb3RhdGU6MDstLXVuLXJvdGF0ZS14OjA7LS11bi1yb3RhdGUteTowOy0tdW4tcm90YXRlLXo6MDstLXVuLXNjYWxlLXg6MTstLXVuLXNjYWxlLXk6MTstLXVuLXNjYWxlLXo6MTstLXVuLXNrZXcteDowOy0tdW4tc2tldy15OjA7LS11bi10cmFuc2xhdGUteDowOy0tdW4tdHJhbnNsYXRlLXk6MDstLXVuLXRyYW5zbGF0ZS16OjA7LS11bi1wYW4teDogOy0tdW4tcGFuLXk6IDstLXVuLXBpbmNoLXpvb206IDstLXVuLXNjcm9sbC1zbmFwLXN0cmljdG5lc3M6cHJveGltaXR5Oy0tdW4tb3JkaW5hbDogOy0tdW4tc2xhc2hlZC16ZXJvOiA7LS11bi1udW1lcmljLWZpZ3VyZTogOy0tdW4tbnVtZXJpYy1zcGFjaW5nOiA7LS11bi1udW1lcmljLWZyYWN0aW9uOiA7LS11bi1ib3JkZXItc3BhY2luZy14OjA7LS11bi1ib3JkZXItc3BhY2luZy15OjA7LS11bi1yaW5nLW9mZnNldC1zaGFkb3c6MCAwICMwMDAwOy0tdW4tcmluZy1zaGFkb3c6MCAwICMwMDAwOy0tdW4tc2hhZG93LWluc2V0OiA7LS11bi1zaGFkb3c6MCAwICMwMDAwOy0tdW4tcmluZy1pbnNldDogOy0tdW4tcmluZy1vZmZzZXQtd2lkdGg6MHB4Oy0tdW4tcmluZy1vZmZzZXQtY29sb3I6I2ZmZjstLXVuLXJpbmctd2lkdGg6MHB4Oy0tdW4tcmluZy1jb2xvcjojOTNjNWZkODA7LS11bi1ibHVyOiA7LS11bi1icmlnaHRuZXNzOiA7LS11bi1jb250cmFzdDogOy0tdW4tZHJvcC1zaGFkb3c6IDstLXVuLWdyYXlzY2FsZTogOy0tdW4taHVlLXJvdGF0ZTogOy0tdW4taW52ZXJ0OiA7LS11bi1zYXR1cmF0ZTogOy0tdW4tc2VwaWE6IDstLXVuLWJhY2tkcm9wLWJsdXI6IDstLXVuLWJhY2tkcm9wLWJyaWdodG5lc3M6IDstLXVuLWJhY2tkcm9wLWNvbnRyYXN0OiA7LS11bi1iYWNrZHJvcC1ncmF5c2NhbGU6IDstLXVuLWJhY2tkcm9wLWh1ZS1yb3RhdGU6IDstLXVuLWJhY2tkcm9wLWludmVydDogOy0tdW4tYmFja2Ryb3Atb3BhY2l0eTogOy0tdW4tYmFja2Ryb3Atc2F0dXJhdGU6IDstLXVuLWJhY2tkcm9wLXNlcGlhOiB9LmZsZXgtY2VudGVye2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleH0uYnV0dG9uLWZvY3VzOmZvY3VzLXZpc2libGV7b3V0bGluZS13aWR0aDoycHg7b3V0bGluZS1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWZvY3VzKSA7b3V0bGluZS1vZmZzZXQ6MXB4O291dGxpbmUtc3R5bGU6c29saWR9LmJ1dHRvbi1mb2N1cy1zZWNvbmRhcnk6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lLXdpZHRoOjJweDtvdXRsaW5lLWNvbG9yOnZhcigtLWNvbG9yLXByaW1hcnktZm9jdXMpIDtvdXRsaW5lLWNvbG9yOnZhcigtLWNvbG9yLXNlY29uZGFyeS1mb2N1cykgO291dGxpbmUtb2Zmc2V0OjFweDtvdXRsaW5lLXN0eWxlOnNvbGlkfS5jb250ZW50LWZvY3VzOmZvY3VzLXZpc2libGV7b3V0bGluZS13aWR0aDoycHg7b3V0bGluZS1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWZvY3VzKSA7b3V0bGluZS1vZmZzZXQ6LTVweDtvdXRsaW5lLXN0eWxlOnNvbGlkfS5jb250ZW50LWZvY3VzLXNlY29uZGFyeTpmb2N1cy12aXNpYmxle291dGxpbmUtd2lkdGg6MnB4O291dGxpbmUtY29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeS1mb2N1cykgO291dGxpbmUtY29sb3I6dmFyKC0tY29sb3Itc2Vjb25kYXJ5LWZvY3VzKSA7b3V0bGluZS1vZmZzZXQ6LTVweDtvdXRsaW5lLXN0eWxlOnNvbGlkfS5cW2NsaXBcOnJlY3RcKDBcLDBcLDBcLDBcKVxde2NsaXA6cmVjdCgwLDAsMCwwKX0uc3Itb25seXtjbGlwOnJlY3QoMCwwLDAsMCk7d2hpdGUtc3BhY2U6bm93cmFwO2JvcmRlci13aWR0aDowO3dpZHRoOjFweDtoZWlnaHQ6MXB4O21hcmdpbjotMXB4O3BhZGRpbmc6MDtwb3NpdGlvbjphYnNvbHV0ZTtvdmVyZmxvdzpoaWRkZW59LnBvaW50ZXItZXZlbnRzLWF1dG97cG9pbnRlci1ldmVudHM6YXV0b30ucG9pbnRlci1ldmVudHMtbm9uZXtwb2ludGVyLWV2ZW50czpub25lfS5hYnNvbHV0ZXtwb3NpdGlvbjphYnNvbHV0ZX0uZml4ZWR7cG9zaXRpb246Zml4ZWR9LnJlbGF0aXZle3Bvc2l0aW9uOnJlbGF0aXZlfS5zdGlja3l7cG9zaXRpb246c3RpY2t5fS4tYm90dG9tLTRcLjV7Ym90dG9tOi0xLjEyNXJlbX0uLXJpZ2h0LVxbNHB4XF17cmlnaHQ6LTRweH0uLXRvcC1cWzRweFxde3RvcDotNHB4fS5ib3R0b20tXFstOHB4XF17Ym90dG9tOi04cHh9LmJvdHRvbS0we2JvdHRvbTowfS5ib3R0b20tM3tib3R0b206Ljc1cmVtfS5ib3R0b20tZnVsbHtib3R0b206MTAwJX0ubGVmdC1cWzJweFxde2xlZnQ6MnB4fS5sZWZ0LTB7bGVmdDowfS5sZWZ0LTFcLzJ7bGVmdDo1MCV9LmxlZnQtMntsZWZ0Oi41cmVtfS5sZWZ0LTNcLjd7bGVmdDouOTI1cmVtfS5yaWdodC1cWzE2cHhcXXtyaWdodDoxNnB4fS5yaWdodC0we3JpZ2h0OjB9LnJpZ2h0LTBcLjV7cmlnaHQ6LjEyNXJlbX0ucmlnaHQtMntyaWdodDouNXJlbX0ucmlnaHQtM3tyaWdodDouNzVyZW19LnRvcC1cWzJweFxde3RvcDoycHh9LnRvcC0we3RvcDowfS50b3AtMnt0b3A6LjVyZW19LnRvcC0ze3RvcDouNzVyZW19LnRvcC0zXC43e3RvcDouOTI1cmVtfS50b3AtMzB7dG9wOjcuNXJlbX0udG9wLTQwe3RvcDoxMHJlbX0ubGluZS1jbGFtcC0xey13ZWJraXQtbGluZS1jbGFtcDoxO2xpbmUtY2xhbXA6MTstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7ZGlzcGxheTotd2Via2l0LWJveDtvdmVyZmxvdzpoaWRkZW59LmxpbmUtY2xhbXAtMnstd2Via2l0LWxpbmUtY2xhbXA6MjtsaW5lLWNsYW1wOjI7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVufS5saW5lLWNsYW1wLTN7LXdlYmtpdC1saW5lLWNsYW1wOjM7bGluZS1jbGFtcDozOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDtkaXNwbGF5Oi13ZWJraXQtYm94O292ZXJmbG93OmhpZGRlbn0ubGluZS1jbGFtcC01ey13ZWJraXQtbGluZS1jbGFtcDo1O2xpbmUtY2xhbXA6NTstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7ZGlzcGxheTotd2Via2l0LWJveDtvdmVyZmxvdzpoaWRkZW59LnotMXt6LWluZGV4OjF9LnotMTB7ei1pbmRleDoxMH0uei0xMDB7ei1pbmRleDoxMDB9LnotNTB7ei1pbmRleDo1MH0uZ3JpZHtkaXNwbGF5OmdyaWR9LmZsb2F0LXJpZ2h0e2Zsb2F0OnJpZ2h0fS4tbS1weHttYXJnaW46LTFweH0ubS0ze21hcmdpbjouNzVyZW19Lm0tYXV0b3ttYXJnaW46YXV0b30ubTE1e21hcmdpbjozLjc1cmVtfS5tMTZ7bWFyZ2luOjRyZW19Lm0xOHttYXJnaW46NC41cmVtfS5tMjF7bWFyZ2luOjUuMjVyZW19Lm0yMnttYXJnaW46NS41cmVtfS5tNnttYXJnaW46MS41cmVtfS5tN3ttYXJnaW46MS43NXJlbX0ubTh7bWFyZ2luOjJyZW19Lm05e21hcmdpbjoyLjI1cmVtfS5teC0ye21hcmdpbi1sZWZ0Oi41cmVtO21hcmdpbi1yaWdodDouNXJlbX0ubXgtM3ttYXJnaW4tbGVmdDouNzVyZW07bWFyZ2luLXJpZ2h0Oi43NXJlbX0ubXgtNHttYXJnaW4tbGVmdDoxcmVtO21hcmdpbi1yaWdodDoxcmVtfS5teS0ze21hcmdpbi10b3A6Ljc1cmVtO21hcmdpbi1ib3R0b206Ljc1cmVtfS5teS00e21hcmdpbi10b3A6MXJlbTttYXJnaW4tYm90dG9tOjFyZW19Li1tdC0ze21hcmdpbi10b3A6LS43NXJlbX0ubWItXFsycHhcXXttYXJnaW4tYm90dG9tOjJweH0ubWItMHttYXJnaW4tYm90dG9tOjB9Lm1iLTEsLm5vdC1sYXN0LW9mLXR5cGVcOm1iLTE6bm90KDpsYXN0LW9mLXR5cGUpe21hcmdpbi1ib3R0b206LjI1cmVtfS5tYi0ye21hcmdpbi1ib3R0b206LjVyZW19Lm1iLTN7bWFyZ2luLWJvdHRvbTouNzVyZW19Lm1iLTR7bWFyZ2luLWJvdHRvbToxcmVtfS5tYi02e21hcmdpbi1ib3R0b206MS41cmVtfS5tbC0wXC41e21hcmdpbi1sZWZ0Oi4xMjVyZW19Lm1sLTF7bWFyZ2luLWxlZnQ6LjI1cmVtfS5tbC0ye21hcmdpbi1sZWZ0Oi41cmVtfS5tbC0ze21hcmdpbi1sZWZ0Oi43NXJlbX0ubWwtNHttYXJnaW4tbGVmdDoxcmVtfS5tbC04e21hcmdpbi1sZWZ0OjJyZW19Lm1yLTF7bWFyZ2luLXJpZ2h0Oi4yNXJlbX0ubXItMVwuNXttYXJnaW4tcmlnaHQ6LjM3NXJlbX0ubXItMTB7bWFyZ2luLXJpZ2h0OjIuNXJlbX0ubXItMnttYXJnaW4tcmlnaHQ6LjVyZW19Lm1yLTN7bWFyZ2luLXJpZ2h0Oi43NXJlbX0ubXItNHttYXJnaW4tcmlnaHQ6MXJlbX0ubXQtXFsxcHhcXXttYXJnaW4tdG9wOjFweH0ubXQtMFwuNXttYXJnaW4tdG9wOi4xMjVyZW19Lm10LTJ7bWFyZ2luLXRvcDouNXJlbX0ubXQtM3ttYXJnaW4tdG9wOi43NXJlbX0ubXQtNHttYXJnaW4tdG9wOjFyZW19Lm10LTZ7bWFyZ2luLXRvcDoxLjVyZW19Lm10LTh7bWFyZ2luLXRvcDoycmVtfS5maXJzdC1vZi10eXBlXDptdC0yOmZpcnN0LW9mLXR5cGV7bWFyZ2luLXRvcDouNXJlbX0uaW5saW5le2Rpc3BsYXk6aW5saW5lfS5ibG9ja3tkaXNwbGF5OmJsb2NrfS5pbmxpbmUtYmxvY2t7ZGlzcGxheTppbmxpbmUtYmxvY2t9LmhpZGRlbntkaXNwbGF5Om5vbmV9LmgtXFsxXC4yZW1cXXtoZWlnaHQ6MS4yZW19LmgtXFsxZW1cXXtoZWlnaHQ6MWVtfS5oLVxbNTBweFxde2hlaWdodDo1MHB4fS5oLTF7aGVpZ2h0Oi4yNXJlbX0uaC0xMHtoZWlnaHQ6Mi41cmVtfS5oLTExe2hlaWdodDoyLjc1cmVtfS5oLTEye2hlaWdodDozcmVtfS5oLTJ7aGVpZ2h0Oi41cmVtfS5oLTJcLjV7aGVpZ2h0Oi42MjVyZW19LmgtMjB7aGVpZ2h0OjVyZW19LmgtMzB7aGVpZ2h0OjcuNXJlbX0uaC00e2hlaWdodDoxcmVtfS5oLTQwe2hlaWdodDoxMHJlbX0uaC00MDBweHtoZWlnaHQ6NDAwcHh9LmgtNXtoZWlnaHQ6MS4yNXJlbX0uaC01NHB4e2hlaWdodDo1NHB4fS5oLTZ7aGVpZ2h0OjEuNXJlbX0uaC02MHB4e2hlaWdodDo2MHB4fS5oLTY0cHh7aGVpZ2h0OjY0cHh9LmgtN3toZWlnaHQ6MS43NXJlbX0uaC04e2hlaWdodDoycmVtfS5oLWZ1bGx7aGVpZ2h0OjEwMCV9LmgtcHh7aGVpZ2h0OjFweH0ubWF4LWgtXFsxMjVweFxde21heC1oZWlnaHQ6MTI1cHh9Lm1heC1oLVxbMjQwcHhcXXttYXgtaGVpZ2h0OjI0MHB4fS5tYXgtaC1cWzMycHhcXXttYXgtaGVpZ2h0OjMycHh9Lm1heC1oLTEzMnB4e21heC1oZWlnaHQ6MTMycHh9Lm1heC1oLTY0e21heC1oZWlnaHQ6MTZyZW19Lm1heC1oLTgwdmh7bWF4LWhlaWdodDo4MHZofS5tYXgtaC04NnttYXgtaGVpZ2h0OjIxLjVyZW19Lm1heC1oLWZ1bGx7bWF4LWhlaWdodDoxMDAlfS5tYXgtdy1cWzgwXCVcXXttYXgtd2lkdGg6ODAlfS5tYXgtdy1cWzg1XCVcXXttYXgtd2lkdGg6ODUlfS5tYXgtdy1cW2NhbGNcKDEwMFwlLTE1MHB4XClcXXttYXgtd2lkdGg6Y2FsYygxMDAlIC0gMTUwcHgpfS5tYXgtdy1mdWxse21heC13aWR0aDoxMDAlfS5taW4taC1cWzE2cHhcXXttaW4taGVpZ2h0OjE2cHh9Lm1pbi13LVxbMTZweFxde21pbi13aWR0aDoxNnB4fS5taW4tdy0we21pbi13aWR0aDowfS5taW4tdy01e21pbi13aWR0aDoxLjI1cmVtfS5taW4tdy01XC41e21pbi13aWR0aDoxLjM3NXJlbX0ubWluLXctNnttaW4td2lkdGg6MS41cmVtfS53LVxbMVwuMmVtXF17d2lkdGg6MS4yZW19LnctXFsxZW1cXXt3aWR0aDoxZW19LnctXFs1MHB4XF17d2lkdGg6NTBweH0udy0we3dpZHRoOjB9LnctMXt3aWR0aDouMjVyZW19LnctMTF7d2lkdGg6Mi43NXJlbX0udy0xMTZ7d2lkdGg6MjlyZW19LnctMTJ7d2lkdGg6M3JlbX0udy0ye3dpZHRoOi41cmVtfS53LTJcLjV7d2lkdGg6LjYyNXJlbX0udy0yODBweHt3aWR0aDoyODBweH0udy0zNDhweHt3aWR0aDozNDhweH0udy00e3dpZHRoOjFyZW19LnctNXt3aWR0aDoxLjI1cmVtfS53LTUye3dpZHRoOjEzcmVtfS53LTU2e3dpZHRoOjE0cmVtfS53LTZ7d2lkdGg6MS41cmVtfS53LTYwcHh7d2lkdGg6NjBweH0udy03e3dpZHRoOjEuNzVyZW19LnctOHt3aWR0aDoycmVtfS53LWZ1bGx7d2lkdGg6MTAwJX0udy1tYXh7d2lkdGg6bWF4LWNvbnRlbnR9LnctcHh7d2lkdGg6MXB4fS5mbGV4e2Rpc3BsYXk6ZmxleH0uaW5saW5lLWZsZXh7ZGlzcGxheTppbmxpbmUtZmxleH0uZmxleC0xe2ZsZXg6MX0uZmxleC1ub25le2ZsZXg6bm9uZX0uZmxleC1zaHJpbmt7ZmxleC1zaHJpbms6MX0uZmxleC1zaHJpbmstMCwuc2hyaW5rLTB7ZmxleC1zaHJpbms6MH0uZmxleC1ncm93LC5ncm93e2ZsZXgtZ3JvdzoxfS5mbGV4LXJvd3tmbGV4LWRpcmVjdGlvbjpyb3d9LmZsZXgtY29se2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uZmxleC13cmFwe2ZsZXgtd3JhcDp3cmFwfS4tdHJhbnNsYXRlLXgtMVwvMnstLXVuLXRyYW5zbGF0ZS14Oi01MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgodmFyKC0tdW4tdHJhbnNsYXRlLXgpKSB0cmFuc2xhdGVZKHZhcigtLXVuLXRyYW5zbGF0ZS15KSkgdHJhbnNsYXRlWih2YXIoLS11bi10cmFuc2xhdGUteikpIHJvdGF0ZSh2YXIoLS11bi1yb3RhdGUpKSByb3RhdGVYKHZhcigtLXVuLXJvdGF0ZS14KSkgcm90YXRlWSh2YXIoLS11bi1yb3RhdGUteSkpIHJvdGF0ZVoodmFyKC0tdW4tcm90YXRlLXopKSBza2V3WCh2YXIoLS11bi1za2V3LXgpKSBza2V3WSh2YXIoLS11bi1za2V3LXkpKSBzY2FsZVgodmFyKC0tdW4tc2NhbGUteCkpIHNjYWxlWSh2YXIoLS11bi1zY2FsZS15KSkgc2NhbGVaKHZhcigtLXVuLXNjYWxlLXopKX0udHJhbnNsYXRlLXgtZnVsbHstLXVuLXRyYW5zbGF0ZS14OjEwMCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgodmFyKC0tdW4tdHJhbnNsYXRlLXgpKSB0cmFuc2xhdGVZKHZhcigtLXVuLXRyYW5zbGF0ZS15KSkgdHJhbnNsYXRlWih2YXIoLS11bi10cmFuc2xhdGUteikpIHJvdGF0ZSh2YXIoLS11bi1yb3RhdGUpKSByb3RhdGVYKHZhcigtLXVuLXJvdGF0ZS14KSkgcm90YXRlWSh2YXIoLS11bi1yb3RhdGUteSkpIHJvdGF0ZVoodmFyKC0tdW4tcm90YXRlLXopKSBza2V3WCh2YXIoLS11bi1za2V3LXgpKSBza2V3WSh2YXIoLS11bi1za2V3LXkpKSBzY2FsZVgodmFyKC0tdW4tc2NhbGUteCkpIHNjYWxlWSh2YXIoLS11bi1zY2FsZS15KSkgc2NhbGVaKHZhcigtLXVuLXNjYWxlLXopKX0uZ3JvdXA6aG92ZXIgLmdyb3VwLWhvdmVyXDpzY2FsZS0xMTV7LS11bi1zY2FsZS14OjEuMTU7LS11bi1zY2FsZS15OjEuMTU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgodmFyKC0tdW4tdHJhbnNsYXRlLXgpKSB0cmFuc2xhdGVZKHZhcigtLXVuLXRyYW5zbGF0ZS15KSkgdHJhbnNsYXRlWih2YXIoLS11bi10cmFuc2xhdGUteikpIHJvdGF0ZSh2YXIoLS11bi1yb3RhdGUpKSByb3RhdGVYKHZhcigtLXVuLXJvdGF0ZS14KSkgcm90YXRlWSh2YXIoLS11bi1yb3RhdGUteSkpIHJvdGF0ZVoodmFyKC0tdW4tcm90YXRlLXopKSBza2V3WCh2YXIoLS11bi1za2V3LXgpKSBza2V3WSh2YXIoLS11bi1za2V3LXkpKSBzY2FsZVgodmFyKC0tdW4tc2NhbGUteCkpIHNjYWxlWSh2YXIoLS11bi1zY2FsZS15KSkgc2NhbGVaKHZhcigtLXVuLXNjYWxlLXopKX0uaG92ZXJcOnNjYWxlLTEyMDpob3ZlcnstLXVuLXNjYWxlLXg6MS4yOy0tdW4tc2NhbGUteToxLjI7dHJhbnNmb3JtOnRyYW5zbGF0ZVgodmFyKC0tdW4tdHJhbnNsYXRlLXgpKSB0cmFuc2xhdGVZKHZhcigtLXVuLXRyYW5zbGF0ZS15KSkgdHJhbnNsYXRlWih2YXIoLS11bi10cmFuc2xhdGUteikpIHJvdGF0ZSh2YXIoLS11bi1yb3RhdGUpKSByb3RhdGVYKHZhcigtLXVuLXJvdGF0ZS14KSkgcm90YXRlWSh2YXIoLS11bi1yb3RhdGUteSkpIHJvdGF0ZVoodmFyKC0tdW4tcm90YXRlLXopKSBza2V3WCh2YXIoLS11bi1za2V3LXgpKSBza2V3WSh2YXIoLS11bi1za2V3LXkpKSBzY2FsZVgodmFyKC0tdW4tc2NhbGUteCkpIHNjYWxlWSh2YXIoLS11bi1zY2FsZS15KSkgc2NhbGVaKHZhcigtLXVuLXNjYWxlLXopKX0udHJhbnNmb3Jte3RyYW5zZm9ybTp0cmFuc2xhdGVYKHZhcigtLXVuLXRyYW5zbGF0ZS14KSkgdHJhbnNsYXRlWSh2YXIoLS11bi10cmFuc2xhdGUteSkpIHRyYW5zbGF0ZVoodmFyKC0tdW4tdHJhbnNsYXRlLXopKSByb3RhdGUodmFyKC0tdW4tcm90YXRlKSkgcm90YXRlWCh2YXIoLS11bi1yb3RhdGUteCkpIHJvdGF0ZVkodmFyKC0tdW4tcm90YXRlLXkpKSByb3RhdGVaKHZhcigtLXVuLXJvdGF0ZS16KSkgc2tld1godmFyKC0tdW4tc2tldy14KSkgc2tld1kodmFyKC0tdW4tc2tldy15KSkgc2NhbGVYKHZhcigtLXVuLXNjYWxlLXgpKSBzY2FsZVkodmFyKC0tdW4tc2NhbGUteSkpIHNjYWxlWih2YXIoLS11bi1zY2FsZS16KSl9QGtleWZyYW1lcyBwdWxzZXswJSx0b3tvcGFjaXR5OjF9NTAle29wYWNpdHk6LjV9fUBrZXlmcmFtZXMgcHVzaC10by1sZWZ0ezAle21hcmdpbi1yaWdodDotNTAlO3RyYW5zZm9ybTpzY2FsZSgwKX10b3ttYXJnaW4tcmlnaHQ6aW5oZXJpdDt0cmFuc2Zvcm06c2NhbGUoMSl9fUBrZXlmcmFtZXMgc3BpbnswJXtyb3RhdGU6MGRlZ310b3tyb3RhdGU6MzYwZGVnfX1Aa2V5ZnJhbWVzIHR5cGluZ3swJSw1MCUsdG97dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCl9MjUle3RyYW5zZm9ybTp0cmFuc2xhdGVZKC02cHgpfX0uYW5pbWF0ZS1wdWxzZXthbmltYXRpb246MnMgY3ViaWMtYmV6aWVyKC40LDAsLjYsMSkgaW5maW5pdGUgcHVsc2V9LmFuaW1hdGUtcHVzaC10by1sZWZ0e2FuaW1hdGlvbjouMjVzIGVhc2UtaW4tb3V0IHB1c2gtdG8tbGVmdH0uYW5pbWF0ZS1zcGlue2FuaW1hdGlvbjoxcyBsaW5lYXIgaW5maW5pdGUgc3Bpbn0uYW5pbWF0ZS10eXBpbmd7YW5pbWF0aW9uOi44cyBlYXNlLWluLW91dCB0eXBpbmd9LmN1cnNvci1hdXRve2N1cnNvcjphdXRvfS5jdXJzb3ItcG9pbnRlciwuaG92ZXJcOmN1cnNvci1wb2ludGVyOmhvdmVye2N1cnNvcjpwb2ludGVyfS5jdXJzb3Itbm90LWFsbG93ZWR7Y3Vyc29yOm5vdC1hbGxvd2VkfS5zZWxlY3Qtbm9uZXstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZX0ucmVzaXple3Jlc2l6ZTpib3RofS5yZXNpemUtbm9uZXtyZXNpemU6bm9uZX0uc2Nyb2xsLW10LTJ7c2Nyb2xsLW1hcmdpbi10b3A6LjVyZW19Lmxpc3QtZGVjaW1hbHtsaXN0LXN0eWxlLXR5cGU6ZGVjaW1hbH0ubGlzdC1kaXNje2xpc3Qtc3R5bGUtdHlwZTpkaXNjfS5jb250ZW50LWNlbnRlcnthbGlnbi1jb250ZW50OmNlbnRlcn0uaXRlbXMtc3RhcnR7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0uaXRlbXMtZW5ke2FsaWduLWl0ZW1zOmZsZXgtZW5kfS5pdGVtcy1jZW50ZXJ7YWxpZ24taXRlbXM6Y2VudGVyfS5pdGVtcy1iYXNlbGluZXthbGlnbi1pdGVtczpiYXNlbGluZX0uc2VsZi1zdHJldGNoe2FsaWduLXNlbGY6c3RyZXRjaH0uanVzdGlmeS1zdGFydHtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydH0uanVzdGlmeS1lbmR7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS5qdXN0aWZ5LWNlbnRlcntqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5qdXN0aWZ5LWJldHdlZW57anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW59LmdhcC0ye2dhcDouNXJlbX0uZ2FwLTN7Z2FwOi43NXJlbX0uc3BhY2UteC0yPjpub3QoW2hpZGRlbl0pfjpub3QoW2hpZGRlbl0pey0tdW4tc3BhY2UteC1yZXZlcnNlOjA7bWFyZ2luLWxlZnQ6Y2FsYyguNXJlbSAqIGNhbGMoMSAtIHZhcigtLXVuLXNwYWNlLXgtcmV2ZXJzZSkpKTttYXJnaW4tcmlnaHQ6Y2FsYyguNXJlbSAqIHZhcigtLXVuLXNwYWNlLXgtcmV2ZXJzZSkpfS5zcGFjZS14LTU+Om5vdChbaGlkZGVuXSl+Om5vdChbaGlkZGVuXSl7LS11bi1zcGFjZS14LXJldmVyc2U6MDttYXJnaW4tbGVmdDpjYWxjKDEuMjVyZW0gKiBjYWxjKDEgLSB2YXIoLS11bi1zcGFjZS14LXJldmVyc2UpKSk7bWFyZ2luLXJpZ2h0OmNhbGMoMS4yNXJlbSAqIHZhcigtLXVuLXNwYWNlLXgtcmV2ZXJzZSkpfS5zcGFjZS15LTI+Om5vdChbaGlkZGVuXSl+Om5vdChbaGlkZGVuXSl7LS11bi1zcGFjZS15LXJldmVyc2U6MDttYXJnaW4tdG9wOmNhbGMoLjVyZW0gKiBjYWxjKDEgLSB2YXIoLS11bi1zcGFjZS15LXJldmVyc2UpKSk7bWFyZ2luLWJvdHRvbTpjYWxjKC41cmVtICogdmFyKC0tdW4tc3BhY2UteS1yZXZlcnNlKSl9LnNwYWNlLXktND46bm90KFtoaWRkZW5dKX46bm90KFtoaWRkZW5dKXstLXVuLXNwYWNlLXktcmV2ZXJzZTowO21hcmdpbi10b3A6Y2FsYygxcmVtICogY2FsYygxIC0gdmFyKC0tdW4tc3BhY2UteS1yZXZlcnNlKSkpO21hcmdpbi1ib3R0b206Y2FsYygxcmVtICogdmFyKC0tdW4tc3BhY2UteS1yZXZlcnNlKSl9LnNwYWNlLXktNT46bm90KFtoaWRkZW5dKX46bm90KFtoaWRkZW5dKXstLXVuLXNwYWNlLXktcmV2ZXJzZTowO21hcmdpbi10b3A6Y2FsYygxLjI1cmVtICogY2FsYygxIC0gdmFyKC0tdW4tc3BhY2UteS1yZXZlcnNlKSkpO21hcmdpbi1ib3R0b206Y2FsYygxLjI1cmVtICogdmFyKC0tdW4tc3BhY2UteS1yZXZlcnNlKSl9Lm92ZXJmbG93LWF1dG97b3ZlcmZsb3c6YXV0b30ub3ZlcmZsb3ctY2xpcHtvdmVyZmxvdzpjbGlwfS5vdmVyZmxvdy1oaWRkZW57b3ZlcmZsb3c6aGlkZGVufS5vdmVyZmxvdy14LWhpZGRlbntvdmVyZmxvdy14OmhpZGRlbn0ub3ZlcmZsb3cteS1hdXRve292ZXJmbG93LXk6YXV0b30ub3ZlcmZsb3cteS1zY3JvbGx7b3ZlcmZsb3cteTpzY3JvbGx9Lm92ZXJzY3JvbGwtY29udGFpbntvdmVyc2Nyb2xsLWJlaGF2aW9yOmNvbnRhaW59LnRydW5jYXRle3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbn0udGV4dC1lbGxpcHNpc3t0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS53aGl0ZXNwYWNlLW5vcm1hbHt3aGl0ZS1zcGFjZTpub3JtYWx9LndoaXRlc3BhY2Utbm93cmFwe3doaXRlLXNwYWNlOm5vd3JhcH0ud2hpdGVzcGFjZS1wcmV7d2hpdGUtc3BhY2U6cHJlfS53aGl0ZXNwYWNlLXByZS13cmFwe3doaXRlLXNwYWNlOnByZS13cmFwfS5icmVhay13b3Jkc3tvdmVyZmxvdy13cmFwOmJyZWFrLXdvcmR9LmJyZWFrLWFsbHt3b3JkLWJyZWFrOmJyZWFrLWFsbH0uYm9yZGVyLC5ib3JkZXItMXtib3JkZXItd2lkdGg6MXB4fS5ib3JkZXItMHtib3JkZXItd2lkdGg6MH0uYm9yZGVyLTJ7Ym9yZGVyLXdpZHRoOjJweH0uYm9yZGVyLXQtMntib3JkZXItdG9wLXdpZHRoOjJweH0uYm9yZGVyLWdyYXktMzAwey0tdW4tYm9yZGVyLW9wYWNpdHk6MTtib3JkZXItY29sb3I6cmdiKDIwOSAyMTMgMjE5L3ZhcigtLXVuLWJvcmRlci1vcGFjaXR5KSl9LmJvcmRlci1ncmVlbi00MDB7LS11bi1ib3JkZXItb3BhY2l0eToxO2JvcmRlci1jb2xvcjpyZ2IoNzQgMjIyIDEyOC92YXIoLS11bi1ib3JkZXItb3BhY2l0eSkpfS5ib3JkZXItcHJpbWFyeXtib3JkZXItY29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeSl9LmJvcmRlci1wcmltYXJ5LWJ1dHRvbntib3JkZXItY29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeS1idXR0b24pfS5ib3JkZXItcmVkLTUwMHstLXVuLWJvcmRlci1vcGFjaXR5OjE7Ym9yZGVyLWNvbG9yOnJnYigyMzkgNjggNjgvdmFyKC0tdW4tYm9yZGVyLW9wYWNpdHkpKX0uYm9yZGVyLXNsYXRlLTIwMHstLXVuLWJvcmRlci1vcGFjaXR5OjE7Ym9yZGVyLWNvbG9yOnJnYigyMjYgMjMyIDI0MC92YXIoLS11bi1ib3JkZXItb3BhY2l0eSkpfS5ib3JkZXItd2hpdGV7LS11bi1ib3JkZXItb3BhY2l0eToxO2JvcmRlci1jb2xvcjpyZ2IoMjU1IDI1NSAyNTUvdmFyKC0tdW4tYm9yZGVyLW9wYWNpdHkpKX0uZm9jdXNcOmJvcmRlci1ibHVlLTUwMDpmb2N1c3stLXVuLWJvcmRlci1vcGFjaXR5OjE7Ym9yZGVyLWNvbG9yOnJnYig1OSAxMzAgMjQ2L3ZhcigtLXVuLWJvcmRlci1vcGFjaXR5KSl9LmJvcmRlci10LW5ldXRyYWwtMTAwey0tdW4tYm9yZGVyLW9wYWNpdHk6MTstLXVuLWJvcmRlci10b3Atb3BhY2l0eTp2YXIoLS11bi1ib3JkZXItb3BhY2l0eSk7Ym9yZGVyLXRvcC1jb2xvcjpyZ2IoMjQ1IDI0NSAyNDUvdmFyKC0tdW4tYm9yZGVyLXRvcC1vcGFjaXR5KSl9LmJvcmRlci1yb3VuZGVkLWZ1bGwsLnJvdW5kZWQtZnVsbHtib3JkZXItcmFkaXVzOjk5OTlweH0ucm91bmRlZC0yLC5yb3VuZGVkLWxne2JvcmRlci1yYWRpdXM6LjVyZW19LnJvdW5kZWQtMnhse2JvcmRlci1yYWRpdXM6MXJlbX0ucm91bmRlZC0zeGwsLnJvdW5kZWQtNntib3JkZXItcmFkaXVzOjEuNXJlbX0ucm91bmRlZC1tZHtib3JkZXItcmFkaXVzOi4zNzVyZW19LnJvdW5kZWQteGx7Ym9yZGVyLXJhZGl1czouNzVyZW19LnJvdW5kZWQtbHtib3JkZXItdG9wLWxlZnQtcmFkaXVzOi4yNXJlbTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOi4yNXJlbX0ucm91bmRlZC1sLTN4bHtib3JkZXItdG9wLWxlZnQtcmFkaXVzOjEuNXJlbTtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjEuNXJlbX0ucm91bmRlZC1ye2JvcmRlci10b3AtcmlnaHQtcmFkaXVzOi4yNXJlbTtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czouMjVyZW19LnJvdW5kZWQtci0zeGx7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MS41cmVtO2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjEuNXJlbX0ucm91bmRlZC10LTZ7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czoxLjVyZW07Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MS41cmVtfS5yb3VuZGVkLWxiLTN4bHtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjEuNXJlbX0ucm91bmRlZC1sdC0zeGx7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czoxLjVyZW19LnJvdW5kZWQtcmItM3hse2JvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOjEuNXJlbX0ucm91bmRlZC1ydC0zeGx7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MS41cmVtfS5ib3JkZXItZGFzaGVke2JvcmRlci1zdHlsZTpkYXNoZWR9LmJvcmRlci1ub25le2JvcmRlci1zdHlsZTpub25lfS5iZy1ibGFja3stLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigwIDAgMC92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy1ibGFja1wvODB7YmFja2dyb3VuZC1jb2xvcjojMDAwY30uYmctZW1lcmFsZC01MDB7LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMTYgMTg1IDEyOS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy1ncmF5LTIwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyMjkgMjMxIDIzNS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy1ncmF5LTMwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyMDkgMjEzIDIxOS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy1ncmF5LTQwMFwvXFtcLjk1XF17YmFja2dyb3VuZC1jb2xvcjojOWNhM2FmZjJ9LmJnLWdyYXktNjAwXC9cW1wuOTVcXXtiYWNrZ3JvdW5kLWNvbG9yOiM0YjU1NjNmMn0uYmctZ3JlZW4tNDAwey0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDc0IDIyMiAxMjgvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0uYmctZ3JlZW4tNTAwey0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDM0IDE5NyA5NC92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy1uZXV0cmFsLTEwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNDUgMjQ1IDI0NS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy1uZXV0cmFsLTEwMFwvNTB7YmFja2dyb3VuZC1jb2xvcjojZjVmNWY1ODB9LmJnLW5ldXRyYWwtNjAwXC80MHtiYWNrZ3JvdW5kLWNvbG9yOiM1MjUyNTI2Nn0uYmctb3JhbmdlLTUwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNDkgMTE1IDIyL3ZhcigtLXVuLWJnLW9wYWNpdHkpKSB9LmJnLXByaW1hcnktYnV0dG9ue2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeS1idXR0b24pIH0uYmctcmVkLTUwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyMzkgNjggNjgvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0uYmctcmVkLTYwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyMjAgMzggMzgvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0uYmctc2xhdGUtMTAwey0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDI0MSAyNDUgMjQ5L3ZhcigtLXVuLWJnLW9wYWNpdHkpKSB9LmJnLXNsYXRlLTIwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyMjYgMjMyIDI0MC92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy1zbGF0ZS0zMDB7LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjAzIDIxMyAyMjUvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0uYmctc2xhdGUtNDAwey0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDE0OCAxNjMgMTg0L3ZhcigtLXVuLWJnLW9wYWNpdHkpKSB9LmJnLXNsYXRlLTUwMHstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigxMDAgMTE2IDEzOS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5iZy10cmFuc3BhcmVudHtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwfS5iZy13aGl0ZXstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNTUgMjU1IDI1NS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5ob3Zlci1iZy1ibGFjazpob3ZlcnstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigwIDAgMC92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5ob3Zlci1iZy1lbWVyYWxkLTYwMDpob3ZlcnstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYig1IDE1MCAxMDUvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0uaG92ZXItYmctcHJpbWFyeS1idXR0b24taG92ZXI6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbi1ob3ZlcikgfS5ob3Zlci1iZy1wcmltYXJ5LWJ1dHRvbjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXByaW1hcnktYnV0dG9uKSB9LmhvdmVyLWJnLXNsYXRlLTEwMDpob3ZlcnstLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigyNDEgMjQ1IDI0OS92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS5ob3Zlci1iZy10cmFuc3BhcmVudDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwfS5ob3Zlclw6Ymctc2xhdGUtMTAwOmhvdmVyey0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDI0MSAyNDUgMjQ5L3ZhcigtLXVuLWJnLW9wYWNpdHkpKSB9LmJnLW9wYWNpdHktMTAsLmhvdmVyLWJnLW9wYWNpdHktMTA6aG92ZXJ7LS11bi1iZy1vcGFjaXR5Oi4xfS5mcm9tLXdoaXRlXC8xMDB7LS11bi1ncmFkaWVudC1mcm9tLXBvc2l0aW9uOjAlOy0tdW4tZ3JhZGllbnQtZnJvbTojZmZmIHZhcigtLXVuLWdyYWRpZW50LWZyb20tcG9zaXRpb24pOy0tdW4tZ3JhZGllbnQtdG8tcG9zaXRpb246MTAwJTstLXVuLWdyYWRpZW50LXRvOiNmZmYwIHZhcigtLXVuLWdyYWRpZW50LXRvLXBvc2l0aW9uKTstLXVuLWdyYWRpZW50LXN0b3BzOnZhcigtLXVuLWdyYWRpZW50LWZyb20pLCB2YXIoLS11bi1ncmFkaWVudC10byl9LnZpYS13aGl0ZVwvNDB7LS11bi1ncmFkaWVudC12aWEtcG9zaXRpb246NTAlOy0tdW4tZ3JhZGllbnQtdG86I2ZmZjA7LS11bi1ncmFkaWVudC1zdG9wczp2YXIoLS11bi1ncmFkaWVudC1mcm9tKSwgI2ZmZjYgdmFyKC0tdW4tZ3JhZGllbnQtdmlhLXBvc2l0aW9uKSwgdmFyKC0tdW4tZ3JhZGllbnQtdG8pfS52aWEtd2hpdGVcLzUwey0tdW4tZ3JhZGllbnQtdmlhLXBvc2l0aW9uOjUwJTstLXVuLWdyYWRpZW50LXRvOiNmZmYwOy0tdW4tZ3JhZGllbnQtc3RvcHM6dmFyKC0tdW4tZ3JhZGllbnQtZnJvbSksICNmZmZmZmY4MCB2YXIoLS11bi1ncmFkaWVudC12aWEtcG9zaXRpb24pLCB2YXIoLS11bi1ncmFkaWVudC10byl9LnRvLXRyYW5zcGFyZW50ey0tdW4tZ3JhZGllbnQtdG8tcG9zaXRpb246MTAwJTstLXVuLWdyYWRpZW50LXRvOnRyYW5zcGFyZW50IHZhcigtLXVuLWdyYWRpZW50LXRvLXBvc2l0aW9uKX0uZnJvbS0wXCV7LS11bi1ncmFkaWVudC1mcm9tLXBvc2l0aW9uOjAlfS52aWEtNTBcJXstLXVuLWdyYWRpZW50LXZpYS1wb3NpdGlvbjo1MCV9LnZpYS03MFwley0tdW4tZ3JhZGllbnQtdmlhLXBvc2l0aW9uOjcwJX0uYmctZ3JhZGllbnQtdG8tdHstLXVuLWdyYWRpZW50LXNoYXBlOnRvIHRvcCBpbiBva2xjaDstLXVuLWdyYWRpZW50OnZhcigtLXVuLWdyYWRpZW50LXNoYXBlKSwgdmFyKC0tdW4tZ3JhZGllbnQtc3RvcHMpO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHZhcigtLXVuLWdyYWRpZW50KSl9LmZpbGwtY3VycmVudHtmaWxsOmN1cnJlbnRDb2xvcn0uZmlsbC1wcmltYXJ5LWJ1dHRvbntmaWxsOnZhcigtLWNvbG9yLXByaW1hcnktYnV0dG9uKSB9LmZpbGwtcHJpbWFyeS1idXR0b24tY29udGVudHtmaWxsOnZhcigtLWNvbG9yLXByaW1hcnktYnV0dG9uLWNvbnRlbnQpIH0ub2JqZWN0LWNvbnRhaW57b2JqZWN0LWZpdDpjb250YWlufS5wLTB7cGFkZGluZzowfS5wLTBcLjh7cGFkZGluZzouMnJlbX0ucC0xe3BhZGRpbmc6LjI1cmVtfS5wLTFcLjV7cGFkZGluZzouMzc1cmVtfS5wLTJ7cGFkZGluZzouNXJlbX0ucC0ze3BhZGRpbmc6Ljc1cmVtfS5wLTR7cGFkZGluZzoxcmVtfS5wLTh7cGFkZGluZzoycmVtfS5weCwucHgtNHtwYWRkaW5nLWxlZnQ6MXJlbTtwYWRkaW5nLXJpZ2h0OjFyZW19LnB4LTF7cGFkZGluZy1sZWZ0Oi4yNXJlbTtwYWRkaW5nLXJpZ2h0Oi4yNXJlbX0ucHgtMntwYWRkaW5nLWxlZnQ6LjVyZW07cGFkZGluZy1yaWdodDouNXJlbX0ucHgtM3twYWRkaW5nLWxlZnQ6Ljc1cmVtO3BhZGRpbmctcmlnaHQ6Ljc1cmVtfS5weC04e3BhZGRpbmctbGVmdDoycmVtO3BhZGRpbmctcmlnaHQ6MnJlbX0ucHktMXtwYWRkaW5nLXRvcDouMjVyZW07cGFkZGluZy1ib3R0b206LjI1cmVtfS5weS0ye3BhZGRpbmctdG9wOi41cmVtO3BhZGRpbmctYm90dG9tOi41cmVtfS5weS0yXC41e3BhZGRpbmctdG9wOi42MjVyZW07cGFkZGluZy1ib3R0b206LjYyNXJlbX0ucHktM3twYWRkaW5nLXRvcDouNzVyZW07cGFkZGluZy1ib3R0b206Ljc1cmVtfS5wYi0we3BhZGRpbmctYm90dG9tOjB9LnBiLTF7cGFkZGluZy1ib3R0b206LjI1cmVtfS5wYi0ye3BhZGRpbmctYm90dG9tOi41cmVtfS5wYi0ze3BhZGRpbmctYm90dG9tOi43NXJlbX0ucGItNHtwYWRkaW5nLWJvdHRvbToxcmVtfS5wbC0ye3BhZGRpbmctbGVmdDouNXJlbX0ucGwtNCwuZ3JvdXA6aG92ZXIgLmdyb3VwLWhvdmVyXDpub3QtZmlyc3RcOnBsLTQ6bm90KDpmaXJzdC1jaGlsZCl7cGFkZGluZy1sZWZ0OjFyZW19LnByLTF7cGFkZGluZy1yaWdodDouMjVyZW19LnByLTR7cGFkZGluZy1yaWdodDoxcmVtfS5wdC0xe3BhZGRpbmctdG9wOi4yNXJlbX0ucHQtNntwYWRkaW5nLXRvcDoxLjVyZW19LnB0LTl7cGFkZGluZy10b3A6Mi4yNXJlbX0udGV4dC1jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXJ9LnRleHQtbGVmdHt0ZXh0LWFsaWduOmxlZnR9LnRleHQtMnhse2ZvbnQtc2l6ZToxLjVyZW07bGluZS1oZWlnaHQ6MnJlbX0udGV4dC1iYXNle2ZvbnQtc2l6ZToxcmVtO2xpbmUtaGVpZ2h0OjEuNXJlbX0udGV4dC1iYXNlLWlucHV0e2ZvbnQtc2l6ZToxcmVtO2xpbmUtaGVpZ2h0OjEuMjVyZW19LnRleHQtbGd7Zm9udC1zaXplOjEuMTI1cmVtO2xpbmUtaGVpZ2h0OjEuNzVyZW19LnRleHQtc217Zm9udC1zaXplOi44NzVyZW07bGluZS1oZWlnaHQ6MS4yNXJlbX0udGV4dC14c3tmb250LXNpemU6Ljc1cmVtO2xpbmUtaGVpZ2h0OjFyZW19LnRleHQtYmxhY2t7LS11bi10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2IoMCAwIDAvdmFyKC0tdW4tdGV4dC1vcGFjaXR5KSkgfS50ZXh0LWdyYXktMzAwey0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDIwOSAyMTMgMjE5L3ZhcigtLXVuLXRleHQtb3BhY2l0eSkpIH0udGV4dC1ncmF5LTUwMHstLXVuLXRleHQtb3BhY2l0eToxO2NvbG9yOnJnYigxMDcgMTE0IDEyOC92YXIoLS11bi10ZXh0LW9wYWNpdHkpKSB9LnRleHQtbmV1dHJhbC00MDB7LS11bi10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2IoMTYzIDE2MyAxNjMvdmFyKC0tdW4tdGV4dC1vcGFjaXR5KSkgfS50ZXh0LW5ldXRyYWwtNTAwey0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDExNSAxMTUgMTE1L3ZhcigtLXVuLXRleHQtb3BhY2l0eSkpIH0udGV4dC1wcmltYXJ5e2NvbG9yOnZhcigtLWNvbG9yLXByaW1hcnkpIH0udGV4dC1wcmltYXJ5LWJ1dHRvbntjb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbikgfS50ZXh0LXByaW1hcnktYnV0dG9uLWNvbnRlbnR7Y29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeS1idXR0b24tY29udGVudCkgfS50ZXh0LXByaW1hcnktY29udGVudHtjb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWNvbnRlbnQpIH0udGV4dC1yZWQtNTAwey0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDIzOSA2OCA2OC92YXIoLS11bi10ZXh0LW9wYWNpdHkpKSB9LnRleHQtc2xhdGUtNDAwey0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDE0OCAxNjMgMTg0L3ZhcigtLXVuLXRleHQtb3BhY2l0eSkpIH0uY29sb3Itc2xhdGUtNTAwLC50ZXh0LXNsYXRlLTUwMHstLXVuLXRleHQtb3BhY2l0eToxO2NvbG9yOnJnYigxMDAgMTE2IDEzOS92YXIoLS11bi10ZXh0LW9wYWNpdHkpKSB9LnRleHQtc2xhdGUtNjAwey0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDcxIDg1IDEwNS92YXIoLS11bi10ZXh0LW9wYWNpdHkpKSB9LmNvbG9yLXNsYXRlLTgwMCwudGV4dC1zbGF0ZS04MDB7LS11bi10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2IoMzAgNDEgNTkvdmFyKC0tdW4tdGV4dC1vcGFjaXR5KSkgfS50ZXh0LXdoaXRley0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDI1NSAyNTUgMjU1L3ZhcigtLXVuLXRleHQtb3BhY2l0eSkpIH0uaG92ZXItdGV4dC1wcmltYXJ5LWJ1dHRvbi1jb250ZW50OmhvdmVye2NvbG9yOnZhcigtLWNvbG9yLXByaW1hcnktYnV0dG9uLWNvbnRlbnQpIH0uaG92ZXJcOnRleHQtZ3JheS00MDA6aG92ZXJ7LS11bi10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2IoMTU2IDE2MyAxNzUvdmFyKC0tdW4tdGV4dC1vcGFjaXR5KSkgfS5ob3Zlclw6dGV4dC1zbGF0ZS04MDA6aG92ZXJ7LS11bi10ZXh0LW9wYWNpdHk6MTtjb2xvcjpyZ2IoMzAgNDEgNTkvdmFyKC0tdW4tdGV4dC1vcGFjaXR5KSkgfS5wbGFjZWhvbGRlclw6dGV4dC1zbGF0ZS0zMDA6OnBsYWNlaG9sZGVyey0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDIwMyAyMTMgMjI1L3ZhcigtLXVuLXRleHQtb3BhY2l0eSkpIH0uY29sb3ItcmVkLTYwMHstLXVuLXRleHQtb3BhY2l0eToxO2NvbG9yOnJnYigyMjAgMzggMzgvdmFyKC0tdW4tdGV4dC1vcGFjaXR5KSkgfS5ob3Zlclw6Y29sb3Itc2xhdGUtNzAwOmhvdmVyey0tdW4tdGV4dC1vcGFjaXR5OjE7Y29sb3I6cmdiKDUxIDY1IDg1L3ZhcigtLXVuLXRleHQtb3BhY2l0eSkpIH0udGV4dC1vcGFjaXR5LTIwey0tdW4tdGV4dC1vcGFjaXR5Oi4yfS5mb250LTIwMHtmb250LXdlaWdodDoyMDB9LmZvbnQtNTAwLC5mb250LW1lZGl1bXtmb250LXdlaWdodDo1MDB9LmZvbnQtYm9sZHtmb250LXdlaWdodDo3MDB9LmZvbnQtbGlnaHR7Zm9udC13ZWlnaHQ6MzAwfS5mb250LXNlbWlib2xke2ZvbnQtd2VpZ2h0OjYwMH0ubGVhZGluZy1cWzIycHhcXXtsaW5lLWhlaWdodDoyMnB4fS5sZWFkaW5nLTRcLjV7bGluZS1oZWlnaHQ6MS4xMjVyZW19LmxlYWRpbmctNVwuNXtsaW5lLWhlaWdodDoxLjM3NXJlbX0ubGVhZGluZy02e2xpbmUtaGVpZ2h0OjEuNXJlbX0ubGVhZGluZy1ub3JtYWx7bGluZS1oZWlnaHQ6MS41fS5pdGFsaWN7Zm9udC1zdHlsZTppdGFsaWN9LnVuZGVybGluZXt0ZXh0LWRlY29yYXRpb24tbGluZTp1bmRlcmxpbmV9Lm5vLXVuZGVybGluZSwuaG92ZXItbm8tdW5kZXJsaW5lOmhvdmVye3RleHQtZGVjb3JhdGlvbjpub25lfS5vcGFjaXR5LTEwe29wYWNpdHk6LjF9Lm9wYWNpdHktMTAwe29wYWNpdHk6MX0ub3BhY2l0eS0yMHtvcGFjaXR5Oi4yfS5vcGFjaXR5LTMwe29wYWNpdHk6LjN9Lm9wYWNpdHktNjB7b3BhY2l0eTouNn0uc2hhZG93ey0tdW4tc2hhZG93OnZhcigtLXVuLXNoYWRvdy1pbnNldCkgMCAxcHggM3B4IDAgdmFyKC0tdW4tc2hhZG93LWNvbG9yLCMwMDAwMDAxYSksdmFyKC0tdW4tc2hhZG93LWluc2V0KSAwIDFweCAycHggLTFweCB2YXIoLS11bi1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKTtib3gtc2hhZG93OnZhcigtLXVuLXJpbmctb2Zmc2V0LXNoYWRvdyksIHZhcigtLXVuLXJpbmctc2hhZG93KSwgdmFyKC0tdW4tc2hhZG93KX0uc2hhZG93LWxney0tdW4tc2hhZG93OnZhcigtLXVuLXNoYWRvdy1pbnNldCkgMCAxMHB4IDE1cHggLTNweCB2YXIoLS11bi1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKSx2YXIoLS11bi1zaGFkb3ctaW5zZXQpIDAgNHB4IDZweCAtNHB4IHZhcigtLXVuLXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpO2JveC1zaGFkb3c6dmFyKC0tdW4tcmluZy1vZmZzZXQtc2hhZG93KSwgdmFyKC0tdW4tcmluZy1zaGFkb3cpLCB2YXIoLS11bi1zaGFkb3cpfS5zaGFkb3ctbWR7LS11bi1zaGFkb3c6dmFyKC0tdW4tc2hhZG93LWluc2V0KSAwIDRweCA2cHggLTFweCB2YXIoLS11bi1zaGFkb3ctY29sb3IsIzAwMDAwMDFhKSx2YXIoLS11bi1zaGFkb3ctaW5zZXQpIDAgMnB4IDRweCAtMnB4IHZhcigtLXVuLXNoYWRvdy1jb2xvciwjMDAwMDAwMWEpO2JveC1zaGFkb3c6dmFyKC0tdW4tcmluZy1vZmZzZXQtc2hhZG93KSwgdmFyKC0tdW4tcmluZy1zaGFkb3cpLCB2YXIoLS11bi1zaGFkb3cpfS5zaGFkb3ctc217LS11bi1zaGFkb3c6dmFyKC0tdW4tc2hhZG93LWluc2V0KSAwIDFweCAycHggMCB2YXIoLS11bi1zaGFkb3ctY29sb3IsIzAwMDAwMDBkKTtib3gtc2hhZG93OnZhcigtLXVuLXJpbmctb2Zmc2V0LXNoYWRvdyksIHZhcigtLXVuLXJpbmctc2hhZG93KSwgdmFyKC0tdW4tc2hhZG93KX0uZm9jdXMtd2l0aGluXDpvdXRsaW5lLTI6Zm9jdXMtd2l0aGlue291dGxpbmUtd2lkdGg6MnB4fS5mb2N1cy13aXRoaW5cOm91dGxpbmUtcHJpbWFyeS1mb2N1czpmb2N1cy13aXRoaW57b3V0bGluZS1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWZvY3VzKSB9Lm91dGxpbmUsLmZvY3VzLXdpdGhpblw6b3V0bGluZS1zb2xpZDpmb2N1cy13aXRoaW57b3V0bGluZS1zdHlsZTpzb2xpZH0ub3V0bGluZS1ub25lLC5mb2N1c1w6b3V0bGluZS1ub25lOmZvY3VzLC5mb2N1cy12aXNpYmxlXDpvdXRsaW5lLW5vbmU6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lLW9mZnNldDoycHg7b3V0bGluZToycHggc29saWQgIzAwMDB9LmZvY3VzLXdpdGhpblw6cmluZy0zOmZvY3VzLXdpdGhpbnstLXVuLXJpbmctd2lkdGg6M3B4Oy0tdW4tcmluZy1vZmZzZXQtc2hhZG93OnZhcigtLXVuLXJpbmctaW5zZXQpIDAgMCAwIHZhcigtLXVuLXJpbmctb2Zmc2V0LXdpZHRoKSB2YXIoLS11bi1yaW5nLW9mZnNldC1jb2xvcik7LS11bi1yaW5nLXNoYWRvdzp2YXIoLS11bi1yaW5nLWluc2V0KSAwIDAgMCBjYWxjKHZhcigtLXVuLXJpbmctd2lkdGgpICsgdmFyKC0tdW4tcmluZy1vZmZzZXQtd2lkdGgpKSB2YXIoLS11bi1yaW5nLWNvbG9yKTtib3gtc2hhZG93OnZhcigtLXVuLXJpbmctb2Zmc2V0LXNoYWRvdyksIHZhcigtLXVuLXJpbmctc2hhZG93KSwgdmFyKC0tdW4tc2hhZG93KX0uZm9jdXMtd2l0aGluXDpyaW5nLW9mZnNldC0xOmZvY3VzLXdpdGhpbnstLXVuLXJpbmctb2Zmc2V0LXdpZHRoOjFweH0uZm9jdXMtd2l0aGluXDpyaW5nLWJsdWUtNDAwOmZvY3VzLXdpdGhpbnstLXVuLXJpbmctb3BhY2l0eToxOy0tdW4tcmluZy1jb2xvcjpyZ2IoOTYgMTY1IDI1MC92YXIoLS11bi1yaW5nLW9wYWNpdHkpKSB9LmZvY3VzXDpyaW5nLWJsdWUtNTAwOmZvY3Vzey0tdW4tcmluZy1vcGFjaXR5OjE7LS11bi1yaW5nLWNvbG9yOnJnYig1OSAxMzAgMjQ2L3ZhcigtLXVuLXJpbmctb3BhY2l0eSkpIH0udHJhbnNpdGlvbnt0cmFuc2l0aW9uLXByb3BlcnR5OmNvbG9yLGJhY2tncm91bmQtY29sb3IsYm9yZGVyLWNvbG9yLHRleHQtZGVjb3JhdGlvbi1jb2xvcixmaWxsLHN0cm9rZSxvcGFjaXR5LGJveC1zaGFkb3csdHJhbnNmb3JtLGZpbHRlciwtd2Via2l0LWJhY2tkcm9wLWZpbHRlcixiYWNrZHJvcC1maWx0ZXI7dHJhbnNpdGlvbi1kdXJhdGlvbjouMTVzO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNCwwLC4yLDEpfS50cmFuc2l0aW9uLWFsbHt0cmFuc2l0aW9uLXByb3BlcnR5OmFsbDt0cmFuc2l0aW9uLWR1cmF0aW9uOi4xNXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9LnRyYW5zaXRpb24tY29sb3Jze3RyYW5zaXRpb24tcHJvcGVydHk6Y29sb3IsYmFja2dyb3VuZC1jb2xvcixib3JkZXItY29sb3IsdGV4dC1kZWNvcmF0aW9uLWNvbG9yLGZpbGwsc3Ryb2tlO3RyYW5zaXRpb24tZHVyYXRpb246LjE1czt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0udHJhbnNpdGlvbi1vcGFjaXR5e3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4xNXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9LnRyYW5zaXRpb24tcGFkZGluZy00MDB7dHJhbnNpdGlvbi1wcm9wZXJ0eTpwYWRkaW5nO3RyYW5zaXRpb24tZHVyYXRpb246LjRzO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNCwwLC4yLDEpfS50cmFuc2l0aW9uLXRyYW5zZm9ybXt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4xNXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9LnRyYW5zaXRpb24td2lkdGgtMjUwe3RyYW5zaXRpb24tcHJvcGVydHk6d2lkdGg7dHJhbnNpdGlvbi1kdXJhdGlvbjouMjVzO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNCwwLC4yLDEpfS5kdXJhdGlvbi0xNTB7dHJhbnNpdGlvbi1kdXJhdGlvbjouMTVzfS5kdXJhdGlvbi0zMDB7dHJhbnNpdGlvbi1kdXJhdGlvbjouM3N9LmR1cmF0aW9uLTc1e3RyYW5zaXRpb24tZHVyYXRpb246NzVtc30uZGVsYXktMHt0cmFuc2l0aW9uLWRlbGF5OjBzfS5lYXNlLWluLW91dHt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0uZWFzZS1vdXR7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKDAsMCwuMiwxKX0uY29udGVudC1cW1wiXCJcXXtjb250ZW50OiIifS5iZy1wcmltYXJ5LWdyYWRpZW50e2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDgwZGVnLCB2YXIoLS1jb2xvci1wcmltYXJ5LWdyYWRpZW50LWZyb20pLCB2YXIoLS1jb2xvci1wcmltYXJ5LWdyYWRpZW50LXRvKSAxMzAlKX0uYmctcHJpbWFyeS1ncmFkaWVudC1idXR0b257YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoODBkZWcsIHZhcigtLWNvbG9yLXByaW1hcnktZ3JhZGllbnQtYnV0dG9uLWZyb20pLCB2YXIoLS1jb2xvci1wcmltYXJ5LWdyYWRpZW50LWJ1dHRvbi10bykgMTMwJSl9LmJnLXByaW1hcnktZ3JhZGllbnQtaG92ZXI6aG92ZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoODBkZWcsIHZhcigtLWNvbG9yLXByaW1hcnktZ3JhZGllbnQtaG92ZXItZnJvbSksIHZhcigtLWNvbG9yLXByaW1hcnktZ3JhZGllbnQtaG92ZXItdG8pIDEzMCUpfS5saW5lLWNsYW1wLTV7LXdlYmtpdC1saW5lLWNsYW1wOjU7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsO2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVufS50eXBpbmctaW5kaWNhdG9yLnN2ZWx0ZS1zNDB4Z2t7Ym9yZGVyLXJhZGl1czo5OTk5cHh9LnR5cGluZy1pbmRpY2F0b3Iuc20uc3ZlbHRlLXM0MHhna3t3aWR0aDouMjVyZW07aGVpZ2h0Oi4yNXJlbX0udHlwaW5nLWluZGljYXRvci5tZC5zdmVsdGUtczQweGdre3dpZHRoOi41cmVtO2hlaWdodDouNXJlbX0udHlwaW5nLWluZGljYXRvci5pbmRpY2F0b3ItY29sb3ItYmxhY2suc3ZlbHRlLXM0MHhna3stLXVuLWJnLW9wYWNpdHk6MTtiYWNrZ3JvdW5kLWNvbG9yOnJnYigwIDAgMC92YXIoLS11bi1iZy1vcGFjaXR5KSkgfS50eXBpbmctaW5kaWNhdG9yLmluZGljYXRvci1jb2xvci1ncmF5LnN2ZWx0ZS1zNDB4Z2t7LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMTAwIDExNiAxMzkvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0udHlwaW5nLWluZGljYXRvci5zdmVsdGUtczQweGdrOm5vdCg6Zmlyc3QtY2hpbGQpe21hcmdpbi1sZWZ0Oi4yNXJlbX0udHlwaW5nLWluZGljYXRvci1zZWNvbmQuc3ZlbHRlLXM0MHhna3thbmltYXRpb24tZGVsYXk6LjFzfS50eXBpbmctaW5kaWNhdG9yLXRoaXJkLnN2ZWx0ZS1zNDB4Z2t7YW5pbWF0aW9uLWRlbGF5Oi4yc30uYnRuLnN2ZWx0ZS0xZTg0bjd3e2JvcmRlci1yYWRpdXM6MS41cmVtO2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmctbGVmdDoxcmVtO3BhZGRpbmctcmlnaHQ6MXJlbTt0cmFuc2l0aW9uLXByb3BlcnR5OmFsbDt0cmFuc2l0aW9uLWR1cmF0aW9uOi4xNXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7ZGlzcGxheTppbmxpbmUtZmxleH0uYnRuLXByaW1hcnkuc3ZlbHRlLTFlODRuN3d7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbikgO2NvbG9yOnZhcigtLWNvbG9yLXByaW1hcnktYnV0dG9uLWNvbnRlbnQpIH0uYnRuLXByaW1hcnkuc3ZlbHRlLTFlODRuN3c6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbi1ob3ZlcikgfS5idG4tb3V0bGluZS5zdmVsdGUtMWU4NG43d3tib3JkZXItd2lkdGg6MXB4O2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbik7LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjU1IDI1NSAyNTUvdmFyKC0tdW4tYmctb3BhY2l0eSkpIDstLXVuLXRleHQtb3BhY2l0eToxO2NvbG9yOnJnYigwIDAgMC92YXIoLS11bi10ZXh0LW9wYWNpdHkpKSB9LmJ0bi1vdXRsaW5lLnN2ZWx0ZS0xZTg0bjd3OmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeS1idXR0b24pIDtjb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbi1jb250ZW50KSB9LmJ0bi1yYWlzZWQuc3ZlbHRlLTFlODRuN3d7LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjU1IDI1NSAyNTUvdmFyKC0tdW4tYmctb3BhY2l0eSkpIDstLXVuLXRleHQtb3BhY2l0eToxO2NvbG9yOnJnYigxMDAgMTE2IDEzOS92YXIoLS11bi10ZXh0LW9wYWNpdHkpKSA7Ym94LXNoYWRvdzowIDJweCA2cHggIzAwMDAwMDI5fS5idG4tcmFpc2VkLnN2ZWx0ZS0xZTg0bjd3OmhvdmVyey0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDI0MSAyNDUgMjQ5L3ZhcigtLXVuLWJnLW9wYWNpdHkpKSB9LmJ0bi1zbS5zdmVsdGUtMWU4NG43d3toZWlnaHQ6MnJlbX0uYnRuLW1kLnN2ZWx0ZS0xZTg0bjd3e2hlaWdodDoyLjVyZW19LmJ0bi1sZy5zdmVsdGUtMWU4NG43d3toZWlnaHQ6M3JlbX0uYnRuLWRpc2FibGVkLnN2ZWx0ZS0xZTg0bjd3e2N1cnNvcjpub3QtYWxsb3dlZDtvcGFjaXR5Oi4yfS5kYXJrLnN2ZWx0ZS1zajk5aDN7YmFja2dyb3VuZC1jb2xvcjojNGI1NTYzZjI7cGFkZGluZzouNXJlbSAuNzVyZW19LmxpZ2h0LnN2ZWx0ZS1zajk5aDN7YmFja2dyb3VuZC1jb2xvcjojOWNhM2FmZjI7cGFkZGluZzouMjVyZW0gLjVyZW19c3ZnLnN2ZWx0ZS15aXhoYXR7ZmlsbDpjdXJyZW50Q29sb3I7d2lkdGg6MWVtO2hlaWdodDoxZW19LmNhcm91c2VsLnN2ZWx0ZS0xMHFxanpke2p1c3RpZnktY29udGVudDpzdGFydDthbGlnbi1pdGVtczpzdGFydDt3aWR0aDoxMDAlfS5jYXJvdXNlbC5zdmVsdGUtMTBxcWp6ZDpob3ZlciAuYnV0dG9uOndoZXJlKC5zdmVsdGUtMTBxcWp6ZCksLmNhcm91c2VsLnN2ZWx0ZS0xMHFxanpkOmZvY3VzLXdpdGhpbiAuYnV0dG9uOndoZXJlKC5zdmVsdGUtMTBxcWp6ZCl7b3BhY2l0eToxfS5idXR0b24uc3ZlbHRlLTEwcXFqemR7b3BhY2l0eTowO3otaW5kZXg6MTtiYWNrZ3JvdW5kLWNvbG9yOiMwMDAwO2JvcmRlcjpub25lO3RyYW5zaXRpb246b3BhY2l0eSAuNHM7cG9zaXRpb246YWJzb2x1dGV9LmxlZnQuc3ZlbHRlLTEwcXFqemR7bGVmdDotMWVtfS5yaWdodC5zdmVsdGUtMTBxcWp6ZHtyaWdodDotMWVtfS5tZXNzYWdlLWNvbnRlbnQtaHRtbCB1bHttYXJnaW4tcmlnaHQ6LjI1cmVtO3BhZGRpbmctbGVmdDoxcmVtO2xpc3Qtc3R5bGUtdHlwZTpkaXNjfS5tZXNzYWdlLWNvbnRlbnQtaHRtbCBsaTpub3QoOmZpcnN0LWNoaWxkKSwubWVzc2FnZS1jb250ZW50LWh0bWwgbGk+dWwsLm1lc3NhZ2UtY29udGVudC1odG1sIGxpPm9se21hcmdpbi10b3A6LjVyZW19Lm1lc3NhZ2UtY29udGVudC1odG1sIG9se21hcmdpbi1yaWdodDouMjVyZW07cGFkZGluZy1sZWZ0OjFyZW07bGlzdC1zdHlsZS10eXBlOmRlY2ltYWx9Lm1lc3NhZ2UtY29udGVudC1odG1sIGF7dGV4dC1kZWNvcmF0aW9uLWxpbmU6dW5kZXJsaW5lfS5tZXNzYWdlLWNvbnRlbnQtaHRtbCBhOmhvdmVye3RleHQtZGVjb3JhdGlvbjpub25lfS5tZXNzYWdlLWNvbnRlbnQtaHRtbCAqe3doaXRlLXNwYWNlOm5vcm1hbDtvdmVyZmxvdy13cmFwOmJyZWFrLXdvcmR9Lm1lc3NhZ2UtY29udGVudC10ZXh0LnN2ZWx0ZS1uZmIweW17b3ZlcmZsb3ctd3JhcDpicmVhay13b3JkO3dvcmQtYnJlYWs6YnJlYWstd29yZDt3aGl0ZS1zcGFjZTpwcmUtd3JhcH0ubWVzc2FnZS1jb250ZW50LXRleHQgYXt0ZXh0LWRlY29yYXRpb24tbGluZTp1bmRlcmxpbmV9Lm1lc3NhZ2UtY29udGVudC10ZXh0IGE6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOm5vbmV9LmF2YXRhci1ncm91cC1pdGVtLnN2ZWx0ZS15ZnhhN3Q6Zmlyc3Qtb2YtdHlwZXt6LWluZGV4OjN9LmF2YXRhci1ncm91cC1pdGVtLnN2ZWx0ZS15ZnhhN3Q6bnRoLW9mLXR5cGUoMil7ei1pbmRleDoyfS5hdmF0YXItZ3JvdXAtaXRlbS5zdmVsdGUteWZ4YTd0Om50aC1vZi10eXBlKDMpe3otaW5kZXg6MX0uYXZhdGFyLXNtLnN2ZWx0ZS15ZnhhN3Q6bm90KDpmaXJzdC1jaGlsZCl7bWFyZ2luLWxlZnQ6LTEycHh9LmF2YXRhci1tZC5zdmVsdGUteWZ4YTd0Om5vdCg6Zmlyc3QtY2hpbGQpe21hcmdpbi1sZWZ0Oi0xNnB4fS5hdmF0YXItbGcuc3ZlbHRlLXlmeGE3dDpub3QoOmZpcnN0LWNoaWxkKXttYXJnaW4tbGVmdDotMjJweH0ucmVtb3ZlSWNvbi5zdmVsdGUtMTFmM2Jkd3tvcGFjaXR5OjA7dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5O3RyYW5zaXRpb24tZHVyYXRpb246LjE1czt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX0uYXR0YWNobWVudFdyYXBwZXIuc3ZlbHRlLTExZjNiZHc6aG92ZXIgLnJlbW92ZUljb246d2hlcmUoLnN2ZWx0ZS0xMWYzYmR3KSwuYXR0YWNobWVudFdyYXBwZXIuc3ZlbHRlLTExZjNiZHc6Zm9jdXMtd2l0aGluIC5yZW1vdmVJY29uOndoZXJlKC5zdmVsdGUtMTFmM2Jkdyl7b3BhY2l0eToxfS50ZXh0YXJlYS1jb250YWluZXIuc3ZlbHRlLTF0bDlsY2V7b3ZlcnNjcm9sbC1iZWhhdmlvcjpjb250YWluO3Njcm9sbGJhci13aWR0aDpub25lO2ZsZXg6MTttYXgtaGVpZ2h0OjMycHg7bWFyZ2luLXRvcDouNzVyZW07bWFyZ2luLWJvdHRvbTouNzVyZW07ZGlzcGxheTpncmlkO292ZXJmbG93OmhpZGRlbiBhdXRvfS50ZXh0YXJlYS1jb250YWluZXIuc3ZlbHRlLTF0bDlsY2U6Oi13ZWJraXQtc2Nyb2xsYmFye2Rpc3BsYXk6bm9uZX0udGV4dGFyZWEtY29udGFpbmVyLXJlc2l6YWJsZS5zdmVsdGUtMXRsOWxjZXttYXgtaGVpZ2h0OjEyNXB4fS50ZXh0YXJlYS1jb250YWluZXIuc3ZlbHRlLTF0bDlsY2U6YWZ0ZXJ7Y29udGVudDphdHRyKGRhdGEtdGV4dGFyZWEtdmFsdWUpICIgIjt3aGl0ZS1zcGFjZTpwcmUtd3JhcDt2aXNpYmlsaXR5OmhpZGRlbjtvdmVyZmxvdy13cmFwOmJyZWFrLXdvcmQ7d29yZC1icmVhazpicmVhay13b3JkfS50ZXh0YXJlYS1jb250YWluZXIuc3ZlbHRlLTF0bDlsY2U6YWZ0ZXIsdGV4dGFyZWEuc3ZlbHRlLTF0bDlsY2V7Zm9udC1zaXplOmluaGVyaXQ7Z3JpZC1hcmVhOjEvMS8yLzI7bWFyZ2luLWxlZnQ6MXJlbTttYXJnaW4tcmlnaHQ6Ljc1cmVtfXRleHRhcmVhLnN2ZWx0ZS0xdGw5bGNlOjpwbGFjZWhvbGRlcnt3b3JkLWJyZWFrOmJyZWFrLWFsbDtvdmVyZmxvdzpoaWRkZW59ZW0tZW1vamktcGlja2Vyey0tYm9yZGVyLXJhZGl1czoxMnB4Oy0tdW4tYm9yZGVyLW9wYWNpdHk6MTtib3JkZXItd2lkdGg6MXB4O2JvcmRlci1jb2xvcjpyZ2IoMjI2IDIzMiAyNDAvdmFyKC0tdW4tYm9yZGVyLW9wYWNpdHkpKTtib3JkZXItcmFkaXVzOi43NXJlbTt3aWR0aDoxMDAlO2hlaWdodDo0MDBweDttYXgtaGVpZ2h0Ojgwdmg7cGFkZGluZy10b3A6LjI1cmVtO2JveC1zaGFkb3c6MCAxcHggMTVweCAxcHggIzAwMDAwMDFmfS5zd2l0Y2guc3ZlbHRlLTF5emZ6em97LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjI5IDIzMSAyMzUvdmFyKC0tdW4tYmctb3BhY2l0eSkpIDtib3JkZXItcmFkaXVzOjk5OTlweDt3aWR0aDoyLjc1cmVtO2hlaWdodDoxLjVyZW07dHJhbnNpdGlvbi1wcm9wZXJ0eTpjb2xvcixiYWNrZ3JvdW5kLWNvbG9yLGJvcmRlci1jb2xvcix0ZXh0LWRlY29yYXRpb24tY29sb3IsZmlsbCxzdHJva2U7dHJhbnNpdGlvbi1kdXJhdGlvbjouMTVzO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguNCwwLC4yLDEpfS5zd2l0Y2guc3ZlbHRlLTF5emZ6em86Zm9jdXN7b3V0bGluZS1vZmZzZXQ6MnB4O291dGxpbmU6MnB4IHNvbGlkICMwMDAwfS5zd2l0Y2guc3ZlbHRlLTF5emZ6em86YWZ0ZXJ7LS11bi1ib3JkZXItb3BhY2l0eToxO2JvcmRlci13aWR0aDoxcHg7Ym9yZGVyLWNvbG9yOnJnYigyMDkgMjEzIDIxOS92YXIoLS11bi1ib3JkZXItb3BhY2l0eSkpOy0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDI0NSAyNDUgMjQ1L3ZhcigtLXVuLWJnLW9wYWNpdHkpKSA7Y29udGVudDoiIjtib3JkZXItcmFkaXVzOjk5OTlweDt3aWR0aDoxLjI1cmVtO2hlaWdodDoxLjI1cmVtO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtO3RyYW5zaXRpb24tZHVyYXRpb246LjE1czt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjpjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MnB4O2xlZnQ6MnB4fS5zd2l0Y2guY2hlY2tlZC5zdmVsdGUtMXl6Znp6b3tiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXByaW1hcnktYnV0dG9uKSB9LnN3aXRjaC5jaGVja2VkLnN2ZWx0ZS0xeXpmenpvOmFmdGVyey0tdW4tdHJhbnNsYXRlLXg6MTAwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWCh2YXIoLS11bi10cmFuc2xhdGUteCkpIHRyYW5zbGF0ZVkodmFyKC0tdW4tdHJhbnNsYXRlLXkpKSB0cmFuc2xhdGVaKHZhcigtLXVuLXRyYW5zbGF0ZS16KSkgcm90YXRlKHZhcigtLXVuLXJvdGF0ZSkpIHJvdGF0ZVgodmFyKC0tdW4tcm90YXRlLXgpKSByb3RhdGVZKHZhcigtLXVuLXJvdGF0ZS15KSkgcm90YXRlWih2YXIoLS11bi1yb3RhdGUteikpIHNrZXdYKHZhcigtLXVuLXNrZXcteCkpIHNrZXdZKHZhcigtLXVuLXNrZXcteSkpIHNjYWxlWCh2YXIoLS11bi1zY2FsZS14KSkgc2NhbGVZKHZhcigtLXVuLXNjYWxlLXkpKSBzY2FsZVoodmFyKC0tdW4tc2NhbGUteikpOy0tdW4tYmctb3BhY2l0eToxO2JhY2tncm91bmQtY29sb3I6cmdiKDI0NSAyNDUgMjQ1L3ZhcigtLXVuLWJnLW9wYWNpdHkpKSB9LmludmFsaWQuc3ZlbHRlLTEyZjRjMWcsLmludmFsaWQuc3ZlbHRlLTE5bTN1Y3l7LS11bi1ib3JkZXItb3BhY2l0eToxO2JvcmRlci1jb2xvcjpyZ2IoMjM5IDY4IDY4L3ZhcigtLXVuLWJvcmRlci1vcGFjaXR5KSl9c2VsZWN0LnN2ZWx0ZS04aDVycTR7YXBwZWFyYW5jZTpub25lO2JhY2tncm91bmQtaW1hZ2U6dXJsKCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyBmaWxsPSdub25lJyB2aWV3Qm94PScwIDAgMjAgMjAnJTNFJTNDcGF0aCBzdHJva2U9JyUyMzZCNzI4MCcgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzEuNScgZD0nbTYgOCA0IDQgNC00Jy8lM0UlM0Mvc3ZnJTNFIik7YmFja2dyb3VuZC1wb3NpdGlvbjpyaWdodCAuNXJlbSBjZW50ZXI7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZToxLjVlbSAxLjVlbX0uaW52YWxpZC5zdmVsdGUtOGg1cnE0ey0tdW4tYm9yZGVyLW9wYWNpdHk6MTtib3JkZXItY29sb3I6cmdiKDIzOSA2OCA2OC92YXIoLS11bi1ib3JkZXItb3BhY2l0eSkpfS5pY29uLnN2ZWx0ZS0xcnNhMnF2e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItcHJpbWFyeS1idXR0b24pIDtjb2xvcjp2YXIoLS1jb2xvci1wcmltYXJ5LWJ1dHRvbi1jb250ZW50KSA7Ym9yZGVyLXJhZGl1czoxLjVyZW07cGFkZGluZzouNXJlbTtkaXNwbGF5OmlubGluZS1ibG9jaztwb3NpdGlvbjpyZWxhdGl2ZX0uZHJhd2VyLWJ1dHRvbi5zdmVsdGUtajZleHEwe3RleHQtYWxpZ246bGVmdDtib3JkZXItcmFkaXVzOi41cmVtO2FsaWduLWl0ZW1zOmNlbnRlcjt3aWR0aDoxMDAlO3BhZGRpbmc6LjVyZW07dHJhbnNpdGlvbjpjb2xvciA3NW1zIGN1YmljLWJlemllciguNCwwLC4yLDEpLGJhY2tncm91bmQtY29sb3IgNzVtcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSxib3JkZXItY29sb3IgNzVtcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSx0ZXh0LWRlY29yYXRpb24tY29sb3IgNzVtcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSxmaWxsIDc1bXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksc3Ryb2tlIDc1bXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7ZGlzcGxheTpmbGV4fS5kcmF3ZXItYnV0dG9uLnN2ZWx0ZS1qNmV4cTA6aG92ZXJ7LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjQ1IDI0NSAyNDUvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0uZHJhd2VyLWJ1dHRvbi1kaXNhYmxlZC5zdmVsdGUtajZleHEwe3RleHQtYWxpZ246bGVmdDtvcGFjaXR5Oi4zO2JvcmRlci1yYWRpdXM6LjVyZW07YWxpZ24taXRlbXM6Y2VudGVyO3dpZHRoOjEwMCU7cGFkZGluZzouNXJlbTtkaXNwbGF5OmZsZXh9LmRyYXdlci1idXR0b24tZGlzYWJsZWQuc3ZlbHRlLWo2ZXhxMDpob3ZlcntjdXJzb3I6bm90LWFsbG93ZWR9LmRyYXdlci1zd2l0Y2guc3ZlbHRlLTFqZXN4dGN7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7dGV4dC1hbGlnbjpsZWZ0O2JvcmRlci1yYWRpdXM6LjVyZW07YWxpZ24taXRlbXM6Y2VudGVyO3dpZHRoOjEwMCU7cGFkZGluZzouNXJlbTt0cmFuc2l0aW9uOmNvbG9yIDc1bXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSksYmFja2dyb3VuZC1jb2xvciA3NW1zIGN1YmljLWJlemllciguNCwwLC4yLDEpLGJvcmRlci1jb2xvciA3NW1zIGN1YmljLWJlemllciguNCwwLC4yLDEpLHRleHQtZGVjb3JhdGlvbi1jb2xvciA3NW1zIGN1YmljLWJlemllciguNCwwLC4yLDEpLGZpbGwgNzVtcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKSxzdHJva2UgNzVtcyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtkaXNwbGF5OmZsZXh9LmRyYXdlci1zd2l0Y2guc3ZlbHRlLTFqZXN4dGM6aG92ZXJ7LS11bi1iZy1vcGFjaXR5OjE7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjQ1IDI0NSAyNDUvdmFyKC0tdW4tYmctb3BhY2l0eSkpIH0ubWVzc2FnZS1jb250ZW50LnN2ZWx0ZS0xZ2Z2aGk2e292ZXJmbG93LXdyYXA6YnJlYWstd29yZDt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7d2hpdGUtc3BhY2U6cHJlLXdyYXB9Lm1lc3NhZ2UtY29udGVudC1sZWZ0LnN2ZWx0ZS0xZ2Z2aGk2e2JvcmRlci1yYWRpdXM6LjI1cmVtIDEuNXJlbSAxLjVyZW0gLjI1cmVtfS5tZXNzYWdlLWNvbnRlbnQtbGVmdC1maXJzdC5zdmVsdGUtMWdmdmhpNntib3JkZXItdG9wLWxlZnQtcmFkaXVzOjEuNXJlbX0ubWVzc2FnZS1jb250ZW50LWxlZnQtbGFzdC5zdmVsdGUtMWdmdmhpNntib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjEuNXJlbX0ubWVzc2FnZS1jb250ZW50LXJpZ2h0LnN2ZWx0ZS0xZ2Z2aGk2e2JvcmRlci1yYWRpdXM6MS41cmVtIC4yNXJlbSAuMjVyZW0gMS41cmVtfS5tZXNzYWdlLWNvbnRlbnQtcmlnaHQtZmlyc3Quc3ZlbHRlLTFnZnZoaTZ7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6MS41cmVtfS5tZXNzYWdlLWNvbnRlbnQtcmlnaHQtbGFzdC5zdmVsdGUtMWdmdmhpNntib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czoxLjVyZW19LmNvdW50LWFuaW1hdGUuc3ZlbHRlLTIyOGM3bnthbmltYXRpb246LjJzIGN1YmljLWJlemllciguNCwyLC42LDEpIHN2ZWx0ZS0yMjhjN24tcG9wLXNjYWxlfUBrZXlmcmFtZXMgc3ZlbHRlLTIyOGM3bi1wb3Atc2NhbGV7MCV7dHJhbnNmb3JtOnNjYWxlKDEpfTUwJXt0cmFuc2Zvcm06c2NhbGUoMS4xKX10b3t0cmFuc2Zvcm06c2NhbGUoMSl9fQovKiR2aXRlJDoxKi8="}},"time_used":25,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":25,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/images/ethereum.png","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.101Z","timestamp":1785126256101,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/ethereum.png HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/png\r\ncontent-length: 4354\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-1102\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":4354,"size_decoded":4603,"mime_type":"image/png","magic":"PNG image data, 319 x 125, 8-bit/color RGBA, non-interlaced","md5":"5e4eba6ad3b423dd7f6aaeb255a9c2f7","sha1":"174f5f306dfc6b02b5c3d999ebef3a4ed6bf4a27","sha256":"a3aee45d8892dbb01255e9a9faad58bd11bcedeb8d10c8cb0111204d8709db43","sha512":"ac496bad1fc60c560f7ec65071b453effb75f7ad63566ed1fbb3d4d7eb7198dbb14e20b021affcab8811df8b2d292e6216fca44caf82d327f90e405bfbc99309","ssdeep":"96:c/nhrJzW/yO94afDQrUN7Bf8yhei/jfQuUQXLDwF4QqKSE+HHHHgHe:Oh9WHGFutkybjfPhXIFN0","tlshash":"a4916d7145c0150f5e5c6218a3e0bcfa85a88da418c3ffbe988bd16e46329757746cc3","first_seen":"2023-05-01T20:32:00Z","last_seen":"2026-07-27T04:25:12.857694Z","times_seen":195,"resource_available":false,"data":"iVBORw0KGgoAAAANSUhEUgAAAT8AAAB9CAYAAADUQWR4AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3BpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTMyIDc5LjE1OTI4NCwgMjAxNi8wNC8xOS0xMzoxMzo0MCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpmMDg0Mzc3Mi0zNjViLWE5NDktYWM1NS03ZGY2YzZkYzVmZWMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MUYwMTE5ODA4RkM1MTFFNzkzRDJBRUU4OTkzQjcwQzIiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MUYwMTE5N0Y4RkM1MTFFNzkzRDJBRUU4OTkzQjcwQzIiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUuNSAoV2luZG93cykiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpDQkQ0RTVFRThENjExMUU3OTM5MjgyRDY3MkRDNjQ1RSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpDQkQ0RTVFRjhENjExMUU3OTM5MjgyRDY3MkRDNjQ1RSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PlTtFrAAAA0oSURBVHja7J0JtFVVGcf3ExCVQcSlKOVQDgymZAmiEqmRlrlQxCkzp1oqrByCUBAnQHFCJTVNyYHAcSnOppIpkVTqU1tqwdKUoVISVBQHxtv3db6zOF4v75297/DuOe/3W+tb5717997nnL33+d89fqehUCg4AIDWxgZkAQAgfgAAiB8AAOIHAID4AQAgfgAAiB8AAOIHAID4AQAgfgAAiB8AAOIHAID4AQAgfgAAiB8AAOIHAID4AQAgfgAAiB8AAOIHAIgfAADiBwCA+AEAIH4AAIgfAADiBwCA+AEAIH4AAIgfAADiBwCA+AEAIH4AAIhfRekhtilFDgCtTfwaxUZT5ADQmsRvrFgHsWFiG1HsANBQKBTyfo/dxP4l1tb+v1PsGIoegJZf3pmWED7lh2J9KHoAWn55vr8DxJ4o8fk8sZ4UPwAtv7wyfT2f68zvKRQ/AOKXRy4Q26KJ768T24QqAEC3N0/oJMc7KcLpeOBxVAMAWn554daU4X4s1o9qAEDLLw8MEpvpEX6R2LZUBQBafllnmmf4bcTOpCqsl2PF9iAbgJZffXOp2NmBcTuJLadKfI7NxZaI3S12NNkBtPzqk63LED7lFqrDF2hnxw/ICkD86pe7yox/hFhfqsTnWFt0BED86oyDxAZWIJ27qRIAiF+W+G2F0vmK2BiqBQDilwUmuGhgvlJcJNaVqgGA+NUzO4idW4U8uZWqAYD41TPTq5TuYLF9clTOuoynDdUdIB/iN0SsfxXTn5aTMtbdKwvFTqa6A+RD/KrdNdXJj1E5KGNd/9jFRc4eACDj4jfJ1eZNbJeIdc54GX9mx4+p7gDZFj/dizuyRudqk6PuLwBkXPzuqvH5dPJj/wyXcbw7o0B1B8iu+Olb1/ZugfPeXINztLdWbaXH5hbZcUkVrlnXV3asYp5sJradi8Ys65kGsS+5aHw163QJyO8uVlaIXxXF4boWOvf2rno7P4aK/d5FY3M6K/uOtdJuFNslIL2fiz1lpunGL3DSdxfPTHz3kEclT779bnexe+waVVA/EntF7KcVyg99r7K+XH6B2Hti88XeF3vLPm8fmK6uCZ1sx+L8n2L59GXPNA8Ue8Ba1/p61P9Yvug2yQGB16l5PcrzR17z5Cyx3VKG15n/yxP/61KoSZbPsakzi4lu/WPrnez7OPx7ZhMz8GNlfaFCISv2y0LLslqsewXvR9OanUj/AbErxa4Vey7x+RWe6Wr8lWKrxD62Y3z9y+27NWKLxbZoJq0tLe7l9v9liet6UuwGsdvFPrXPnhFrV0aeDLXrVN4Vu83uX49LEvdxeEDaJ1n8ofZ/f7G5ifvRfNoxZVptxe4ryourxSaLzUp8fmvAdX7V4t7oEWdnizM5ZfjFFl7/PihxvY1iN4n9Rmxe4vP9i+In48y18Gqv22drxQbWu6ZkRfh2LtQHMyp0Pyoqn1iaY8U2LBGmh9jjFTjvDpbGaYHXqQw3U84Xa1Mi7Gn2/fOB13mcxV9uD1epMN83QVdO8Ez/KIungt87UaZjxHp5phWL5lViXUp8382ET3nJM+0dLd7FHnF6WJzxKcO/ILZAbJDF+53Y1iXCDUj8sMU/DN+z/z8U26tEnG/bD2zB6h7iV6bNLtQPgypwPwssrX1ShL3Iwl4deK6eFv/MQPHTltZblsaQlAI2wfM8fSzeaylaju0snLKHxzmOtDgj7PjWeh745uwZi39UirCnWthHAlp+F3nE2cniXJgy/KP2I5Omhdk50cLran+vENu4iThbWLh5iF95NrZQf3Qr434utzSO9IjziMXZLeB8sbCMChS/zzy7VHGrqMHjPEstTvuU4dtZ+GUe5zisaAgjpHt+ssU/1yPOlRZncB2J3x2JoQWf+15kx/4p4oxcT5e5biwLEx6vi82to+u534U79+xog9mv2aRBWo614+QWmmhSxqcMH++KGZIy/GEu8qJzhtiKlHFWif3MRQvQf+C55CdevrQqIC+uFlvtIs8/aRlp93VjHdXhDe04OmX4m8T+axNCOon2lxRxfmXHnzDbG46KRC8Xuahf2YLXMUvsm/awvlvGUp14RtYHnXl7TGw/1/SL2KvFn20mLw2Ndtw3ZfiL7XiN5zXFD9elHstRlKWWl77o7Ku+5P6cgLi/FttKrE+dPFMd7OjzlsMXEkKYhs9sBnxgvQpLlpa66NR8T1c5x6Vp0QIcZg/zi2WmdWBApYu5xI4DWiDvX/IUapdSpBusTGcFXtfTYl9zfh5rQhfJD7XjFQFxz7Pjd6q1aCOgB+JsaU5a4pd7veoRZ76rY9+YbTMgertYN1HRtV7HmwBeWYNfUq3o57t1+2OdNf3XiL0dkF68/ul6F70cyKfSxmvQetQw7+PW0ntVehA3s+6oLuyeEvAQ72RHXWC8MOUP/ezAvIgd5t5s11wIyMfeddKIiV9MtdojzsZ2XOR532sQv3C6i90mNlzseftMF+l+Xex0F3lyrrTzgcdd5CS1sehzHXPbUmxEYLqxiA4LjB8vKK41GwU8iGtTPoQrrfXXM/Da3rB8aY64dbgs8DyxUJwUGF8dS8ypUvl09MjzUNoXtQDT1oW63VaZBfGbaV2O51w0vjM2UcjXWDdmrAlhubxholf8IqO9Tfj6WmvjncD02yW6hKsTLYK0FUkH6T+sYd4Xih6uSvOBCav+mA0JqI+aJ0s944QKRNyCUZFe7Fl2DXbeNK8AbRPQKouHGFY6yJX4KaeK7eqi2amjxH4hNsO+01konSm80wRqz8Bz6GzmuKKHQ7tlE+38ykATyFBeFvuux4OQd3QW9FMXbZn7qEbnDB3n1l6HbgvrUOWy+6Som+kzJLK6BvnX4HLiJCNLEx4HWpNbnYze56K9mMkxFJ1+V8/Ox5kgpuV+a81dUCR8upTinwnh01bn7DLv4XY7TshYPalmZdfZw65ldHtrxR12rPaSlX/b0Wdi6yB+R/Mtfip8xyT+P8BFEyETi7pl6n9PN6/f0Ex6GvcQFy1dSbbmviX2rNi1bp2nir+7yjg2+JuLZst0/NJ3nHK0tX7zxjg7+s7CDrDWeq3eTaItsgfF9ggoB+2p7OcR/mmX3rFBW6vD5XTpEb8M8LD7omeXMSZePyoSyuHWnZpZQkR1XE+XSDyU+Hx7F02s/LFExRtcwXs4xI4+yzu0dapLXbrnsA6qR5ALXTRzf1bKOJtbK/w85zf2Vi7xgt1nPbqluipBVw308jjPRDtekCLsbYm/2yFp+RU/5TQXLXlJokslptsDsVfi85ethXiE2DwXuR/SLu7FRfFHWRf3+BLnO8G+qxRvumi2V2er5zQjaJ1NoA91kcuhJ3JaD7X194zYZSkeeF1oHi+36OdqM84Vs9SGXzpZOe7cTHjtIo+wMrze4zzxLgr9Udi3mWdBf/TPtv83QdI8yJBLq6T1ambv7TUp3DXF+z0bm0jn4SrewxmJ80w2Tya9bf/uYHNkEDOpjPP0C9iPmnS7pUz1iNPJ4jwYcL4HLe7btjd0b/Po09ecJjyQyJPBnmmfaPEOrUDZHZ64jinm8GFXsV2sHCckvPZMCzxHV8uH2HvMnpa3W5pzjXvtuxMtfMFcjvnsv/a5njkBe7ZfDTgPjg1S2KhmBFA3y5+ynrjbit3TTHx12bNRle9hr0SlKsWLFdgYvp2lNTIgbidzbHCVR5wNLe+mBF7vqQlnCqWYGuiNRV0tfZDSk05aZwKPNXGdCxK+A10ZAvhkE+c4OuFCSzknZbpPeDqFcPbDs9Qzjl77/HrVkP+reIb5k2v+5eLatdRdGk/Z/+NtbKk5j8C6FekPNbqPXjY+qV3gNdate9mVt6wmic6k6lamkDWCuqj7Y+f39jedvV3hyntjnA5fqGfiTS0dHbZotDHCUDq7yq+T1Mm1b7jo/ciKzta+4tbtSqoE2tUfaOfSiZcXbPz7U/s+3ia4MGWeb2L1/33PvHOe+dfZrm1ZPYpH1sVPt4vpNrM0OxDutcqze4qwOtN7ugOA3JJ18VN0jdOjFZ6Q2IGqAZBvNsjBPah7olsqLKYAQMsvM2j3d6sy09ClA9dRLQAQvyyhi5bL8Xiiq+r3p0oA0O3NGrptbFxgXF0oO5jqAEDLL8voLg9fb8cHu8pOmgAA4ldz1BmBbkNKu+dzqou2sAEA3d5Mows3j04Z9k2EDwDxyxP3uHSvhjyYKgCA+OUN9f23pInv1cfaP6gCAK2TPI75JVGX9qVesKz7ffeh+AFo+eWVv7rIR1wSdRzAshYAWn6F1nCf6iElfsevvgluBkUPgPi1hvvcxkXufp50kSdeAGjltG0l96n+8fTdGS9S5ADQmlp+AACfYwOyAAAQPwAAxA8AAPEDAED8AAAQPwAAxA8AAPEDAED8AAAQPwAAxA8AAPEDAED8AAAQPwAAxA8AAPEDAED8AAAQPwAAxA8AAPEDAMQPAADxAwBA/AAAED8AAMQPAADxAwBA/AAAED8AAMQPAADxAwBoUf4nwABaOL90ijhGtQAAAABJRU5ErkJggg=="}},"time_used":392,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":302,"receive":90,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.270Z","timestamp":1785126257270,"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-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/ticker-tape/?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 04:24:17 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: e660c6000662734ac6dfd7b0261dedf0\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-27T07:05:45.445719Z","times_seen":854,"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":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-sheriff.tradingview-widget.com/sheriff/api/v1/rules/search?origin=https%3A%2F%2Fbesttrader.live","fqdn":"widget-sheriff.tradingview-widget.com","domain":"tradingview-widget.com","tld":"com"},"ip":{"addr":"143.204.238.28","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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.563Z","timestamp":1785126257563,"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":"*.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%2Fbesttrader.live 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/3 204 \r\nx-amz-cf-pop: ARN53-P4\r\ndate: Mon, 27 Jul 2026 04:24:17 GMT\r\ncache-control: public, max-age=3600, s-maxage=3600\r\nserver: tv\r\nvia: 443, 1.1 9a21c1acba3e1e78a8f3c7a89ede6be8.cloudfront.net (CloudFront)\r\naccess-control-allow-origin: https://www.tradingview-widget.com\r\naccess-control-max-age: 86400\r\naccess-control-allow-methods: GET, HEAD, POST, OPTIONS\r\ncross-origin-resource-policy: same-site\r\nvary: Origin\r\nx-cache: Miss from cloudfront\r\nalt-svc: h3=\":443\"; ma=86400\r\nx-amz-cf-id: a_vPtJlC6eugYzJFkZxew5UFqmyw034F01hscSQJbcFKkfVksNY-ug==\r\n\r\n","headers":null,"cookies":null,"status_code":"204","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":0,"size_decoded":555,"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-27T07:04:52.530819Z","times_seen":17558191,"resource_available":true,"data":""}},"time_used":498,"timings":{"blocked":-1,"dns":19,"connect":19,"send":0,"wait":459,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"www.tradingview-widget.com/static/bundles/embed/70644.448743def325feb61967.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.734Z","timestamp":1785126257734,"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-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/70644.448743def325feb61967.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/crypto-mkt-screener/?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 04:24:17 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/\"6a10225d-a54f\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 22 May 2026 09:31: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.53\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 05/22/2026 10:44:33\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 5b941c0b326bc5ad30ef6a07b16cc60d\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":42319,"size_decoded":16719,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3071)","md5":"8cde28c2b9d157a818e87a14278c7a00","sha1":"1de831d7926ffcdfe3bdd82419e6225185d37e34","sha256":"f5576d28408b822a04da2e824feb2d936edf1e1959b29e0849e709c4ff1beba7","sha512":"dfeb6f084e4ee784b4a74a0525c09ed8d481320b0708417429758d5d393b7f6eec9e153c60a63025903dc145cd998cce1676335c44ba0e9011bf068fb3dd2e24","ssdeep":"384:57bUjPiPk+mozZ2DZNFAw0wg7LEJ8yBzjkjWQIfQ/6URF2a6nUFlUTr1H6ssDLv5:57gjPi8+hiTRXbfQOXXUFwhHnecsfHp","tlshash":"ae13f5c936d6b02452b73475007f710bf23eaea1284e8450d117e8d87cb5a9fa27be6d","first_seen":"2026-05-23T04:38:21.326763Z","last_seen":"2026-07-27T07:05:43.248322Z","times_seen":637,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s3MDY0NF0sezg3MDY0NChlLG4sdCl7InVzZSBzdHJpY3QiO3QuZChuLHtkaXNhYmxlQWN0aXZpdHlUcmFja2luZzooKT0+eGUsZGlzYWJsZUFub255bW91c1RyYWNraW5nOigpPT5DZSxkaXNjYXJkQnJhY2U6KCk9PmtlLGVuYWJsZUFjdGl2aXR5VHJhY2tpbmdDYWxsYmFjazooKT0+U2UsZW5hYmxlQW5vbnltb3VzVHJhY2tpbmc6KCk9Pk9lLG5ld1RyYWNrZXI6KCk9PkVlLHNldFVzZXJJZDooKT0+VGUsdHJhY2tQYWdlVmlldzooKT0+SWUsdHJhY2tTZWxmRGVzY3JpYmluZ0V2ZW50OigpPT5BZX0pO3ZhciByPWZ1bmN0aW9uKCl7cmV0dXJuIHI9T2JqZWN0LmFzc2lnbnx8ZnVuY3Rpb24oZSl7Zm9yKHZhciBuLHQ9MSxyPWFyZ3VtZW50cy5sZW5ndGg7dDxyO3QrKylmb3IodmFyIG8gaW4gbj1hcmd1bWVudHNbdF0pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4sbykmJihlW29dPW5bb10pO3JldHVybiBlfSxyLmFwcGx5KHRoaXMsYXJndW1lbnRzKX07T2JqZWN0LmNyZWF0ZTtmdW5jdGlvbiBvKGUsbix0KXtpZih0fHwyPT09YXJndW1lbnRzLmxlbmd0aClmb3IodmFyIHIsbz0wLGk9bi5sZW5ndGg7bzxpO28rKykhciYmbyBpbiBufHwocnx8KHI9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwobiwwLG8pKSxyW29dPW5bb10pO3JldHVybiBlLmNvbmNhdChyfHxBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChuKSl9T2JqZWN0LmNyZWF0ZTt2YXIgaT10KDUzNzIwNCk7ZnVuY3Rpb24gYShlKXtpZighZSlyZXR1cm4gZTtzd2l0Y2goNC1lLmxlbmd0aCU0KXtjYXNlIDI6ZSs9Ij09IjticmVhaztjYXNlIDM6ZSs9Ij0ifXJldHVybiBmdW5jdGlvbihlKXt2YXIgbix0LHIsbyxpLGEsdT1mdW5jdGlvbihlKXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGUuc3BsaXQoIiIpLm1hcCgoZnVuY3Rpb24oZSl7cmV0dXJuIiUiKygiMDAiK2UuY2hhckNvZGVBdCgwKS50b1N0cmluZygxNikpLnNsaWNlKC0yKX0pKS5qb2luKCIiKSl9LHM9MCxsPTAsZj0iIixkPVtdO2lmKCFlKXJldHVybiBlO2UrPSIiO2Rve249KGE9Yy5pbmRleE9mKGUuY2hhckF0KHMrKykpPDwxOHxjLmluZGV4T2YoZS5jaGFyQXQocysrKSk8PDEyfChvPWMuaW5kZXhPZihlLmNoYXJBdChzKyspKSk8PDZ8KGk9Yy5pbmRleE9mKGUuY2hhckF0KHMrKykpKSk+PjE2JjI1NSx0PWE+PjgmMjU1LHI9MjU1JmEsZFtsKytdPTY0PT09bz9TdHJpbmcuZnJvbUNoYXJDb2RlKG4pOjY0PT09aT9TdHJpbmcuZnJvbUNoYXJDb2RlKG4sdCk6U3RyaW5nLmZyb21DaGFyQ29kZShuLHQscil9d2hpbGUoczxlLmxlbmd0aCk7cmV0dXJuIGY9ZC5qb2luKCIiKSx1KGYucmVwbGFjZSgvXDArJC8sIiIpKX0oZS5yZXBsYWNlKC8tL2csIisiKS5yZXBsYWNlKC9fL2csIi8iKSl9ZnVuY3Rpb24gdShlKXtpZighZSlyZXR1cm4gZTt2YXIgbj1mdW5jdGlvbihlKXt2YXIgbix0LHIsbyxpLGE9MCx1PTAscz1bXTtpZighZSlyZXR1cm4gZTtlPXVuZXNjYXBlKGVuY29kZVVSSUNvbXBvbmVudChlKSk7ZG97bj0oaT1lLmNoYXJDb2RlQXQoYSsrKTw8MTZ8ZS5jaGFyQ29kZUF0KGErKyk8PDh8ZS5jaGFyQ29kZUF0KGErKykpPj4xOCY2Myx0PWk+PjEyJjYzLHI9aT4+NiY2MyxvPTYzJmksc1t1KytdPWMuY2hhckF0KG4pK2MuY2hhckF0KHQpK2MuY2hhckF0KHIpK2MuY2hhckF0KG8pfXdoaWxlKGE8ZS5sZW5ndGgpO3ZhciBsPXMuam9pbigiIiksZj1lLmxlbmd0aCUzO3JldHVybihmP2wuc2xpY2UoMCxmLTMpOmwpKyI9PT0iLnNsaWNlKGZ8fDMpfShlKTtyZXR1cm4gbi5yZXBsYWNlKC89L2csIiIpLnJlcGxhY2UoL1wrL2csIi0iKS5yZXBsYWNlKC9cLy9nLCJfIil9dmFyIGM9IkFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky89IjtmdW5jdGlvbiBzKCl7dmFyIGUsbj17fSx0PVtdLHI9W10sbz1bXSxpPWZ1bmN0aW9uKGUsdCl7bnVsbCE9dCYmIiIhPT10JiYobltlXT10KX07cmV0dXJue2FkZDppLGFkZERpY3Q6ZnVuY3Rpb24oZSl7Zm9yKHZhciBuIGluIGUpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsbikmJmkobixlW25dKX0sYWRkSnNvbjpmdW5jdGlvbihlLG4sbyl7aWYobyYmZihvKSl7dmFyIGk9e2tleUlmRW5jb2RlZDplLGtleUlmTm90RW5jb2RlZDpuLGpzb246b307ci5wdXNoKGkpLHQucHVzaChpKX19LGFkZENvbnRleHRFbnRpdHk6ZnVuY3Rpb24oZSl7by5wdXNoKGUpfSxnZXRQYXlsb2FkOmZ1bmN0aW9uKCl7cmV0dXJuIG59LGdldEpzb246ZnVuY3Rpb24oKXtyZXR1cm4gdH0sd2l0aEpzb25Qcm9jZXNzb3I6ZnVuY3Rpb24obil7ZT1ufSxidWlsZDpmdW5jdGlvbigpe3JldHVybiBudWxsPT1lfHxlKHRoaXMscixvKSxufX19ZnVuY3Rpb24gbChlKXtyZXR1cm4gZnVuY3Rpb24obix0LHIpe2Zvcih2YXIgaT1mdW5jdGlvbih0LHIsbyl7dmFyIGk9SlNPTi5zdHJpbmdpZnkodCk7ZT9uLmFkZChyLHUoaSkpOm4uYWRkKG8saSl9LGM9ZnVuY3Rpb24odCxyKXt2YXIgbz10fHxmdW5jdGlvbigpe3ZhciB0PW4uZ2V0UGF5bG9hZCgpO2lmKGU/dC5jeDp0LmNvKXJldHVybiBKU09OLnBhcnNlKGU/YSh0LmN4KTp0LmNvKX0oKTtyZXR1cm4gbz9vLmRhdGE9by5kYXRhLmNvbmNhdChyLmRhdGEpOm89cixvfSxzPXZvaWQgMCxsPTAsZj10O2w8Zi5sZW5ndGg7bCsrKXt2YXIgZD1mW2xdOyJjeCI9PT1kLmtleUlmRW5jb2RlZD9zPWMocyxkLmpzb24pOmkoZC5qc29uLGQua2V5SWZFbmNvZGVkLGQua2V5SWZOb3RFbmNvZGVkKX0odC5sZW5ndGg9MCxyLmxlbmd0aCkmJihzPWMocyx7c2NoZW1hOiJpZ2x1OmNvbS5zbm93cGxvd2FuYWx5dGljcy5zbm93cGxvdy9jb250ZXh0cy9qc29uc2NoZW1hLzEtMC0wIixkYXRhOm8oW10sciwhMCl9KSxyLmxlbmd0aD0wKTtzJiZpKHMsImN4IiwiY28iKX19ZnVuY3Rpb24gZihlKXtpZighZChlKSlyZXR1cm4hMQo7Zm9yKHZhciBuIGluIGUpaWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsbikpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gZChlKXtyZXR1cm4gbnVsbCE9ZSYmKGUuY29uc3RydWN0b3I9PT17fS5jb25zdHJ1Y3Rvcnx8ZS5jb25zdHJ1Y3Rvcj09PVtdLmNvbnN0cnVjdG9yKX12YXIgdixnPSJTbm93cGxvdzogIjshZnVuY3Rpb24oZSl7ZVtlLm5vbmU9MF09Im5vbmUiLGVbZS5lcnJvcj0xXT0iZXJyb3IiLGVbZS53YXJuPTJdPSJ3YXJuIixlW2UuZGVidWc9M109ImRlYnVnIixlW2UuaW5mbz00XT0iaW5mbyJ9KHZ8fCh2PXt9KSk7dmFyIHA9ZnVuY3Rpb24oZSl7dm9pZCAwPT09ZSYmKGU9di53YXJuKTtyZXR1cm57c2V0TG9nTGV2ZWw6ZnVuY3Rpb24obil7ZT12W25dP246di53YXJufSx3YXJuOmZ1bmN0aW9uKG4sdCl7Zm9yKHZhciByPVtdLGk9MjtpPGFyZ3VtZW50cy5sZW5ndGg7aSsrKXJbaS0yXT1hcmd1bWVudHNbaV07aWYoZT49di53YXJuJiYidW5kZWZpbmVkIiE9dHlwZW9mIGNvbnNvbGUpe3ZhciBhPWcrbjt0P2NvbnNvbGUud2Fybi5hcHBseShjb25zb2xlLG8oW2ErIlxuIix0XSxyLCExKSk6Y29uc29sZS53YXJuLmFwcGx5KGNvbnNvbGUsbyhbYV0sciwhMSkpfX0sZXJyb3I6ZnVuY3Rpb24obix0KXtmb3IodmFyIHI9W10saT0yO2k8YXJndW1lbnRzLmxlbmd0aDtpKyspcltpLTJdPWFyZ3VtZW50c1tpXTtpZihlPj12LmVycm9yJiYidW5kZWZpbmVkIiE9dHlwZW9mIGNvbnNvbGUpe3ZhciBhPWcrbisiXG4iO3Q/Y29uc29sZS5lcnJvci5hcHBseShjb25zb2xlLG8oW2ErIlxuIix0XSxyLCExKSk6Y29uc29sZS5lcnJvci5hcHBseShjb25zb2xlLG8oW2FdLHIsITEpKX19LGRlYnVnOmZ1bmN0aW9uKG4pe2Zvcih2YXIgdD1bXSxyPTE7cjxhcmd1bWVudHMubGVuZ3RoO3IrKyl0W3ItMV09YXJndW1lbnRzW3JdO2U+PXYuZGVidWcmJiJ1bmRlZmluZWQiIT10eXBlb2YgY29uc29sZSYmY29uc29sZS5kZWJ1Zy5hcHBseShjb25zb2xlLG8oW2crbl0sdCwhMSkpfSxpbmZvOmZ1bmN0aW9uKG4pe2Zvcih2YXIgdD1bXSxyPTE7cjxhcmd1bWVudHMubGVuZ3RoO3IrKyl0W3ItMV09YXJndW1lbnRzW3JdO2U+PXYuaW5mbyYmInVuZGVmaW5lZCIhPXR5cGVvZiBjb25zb2xlJiZjb25zb2xlLmluZm8uYXBwbHkoY29uc29sZSxvKFtnK25dLHQsITEpKX19fSgpO2Z1bmN0aW9uIG0oKXt2YXIgZT1bXSxuPVtdLHQ9ZnVuY3Rpb24odCl7dmFyIHI9ZnVuY3Rpb24oZSl7Zm9yKHZhciBuPWUuZ2V0SnNvbigpLHQ9MCxyPW47dDxyLmxlbmd0aDt0Kyspe3ZhciBvPXJbdF07aWYoInVlX3B4Ij09PW8ua2V5SWZFbmNvZGVkJiYib2JqZWN0Ij09dHlwZW9mIG8uanNvbi5kYXRhKXt2YXIgaT1vLmpzb24uZGF0YS5zY2hlbWE7aWYoInN0cmluZyI9PXR5cGVvZiBpKXJldHVybiBpfX1yZXR1cm4iIn0odCksbz1mdW5jdGlvbihlKXt2YXIgbj1lLmdldFBheWxvYWQoKS5lO3JldHVybiJzdHJpbmciPT10eXBlb2Ygbj9uOiIifSh0KSxpPVtdLGE9RShlLHQsbyxyKTtpLnB1c2guYXBwbHkoaSxhKTt2YXIgdT1mdW5jdGlvbihlLG4sdCxyKXt2YXIgbyxpPVAoZSksYT1mdW5jdGlvbihlKXt2YXIgbz1mdW5jdGlvbihlLG4sdCxyKXtpZihUKGUpKXt2YXIgbz1lWzBdLGk9ITE7dHJ5e2k9byh7ZXZlbnQ6bi5nZXRQYXlsb2FkKCksZXZlbnRUeXBlOnQsZXZlbnRTY2hlbWE6cn0pfWNhdGNoKGUpe2k9ITF9aWYoITA9PT1pKXJldHVybiBFKGVbMV0sbix0LHIpfWVsc2UgaWYoSShlKSYmZnVuY3Rpb24oZSxuKXt2YXIgdD0wLHI9MCxvPWUuYWNjZXB0O0FycmF5LmlzQXJyYXkobyk/ZS5hY2NlcHQuc29tZSgoZnVuY3Rpb24oZSl7cmV0dXJuIEMoZSxuKX0pKSYmcisrOiJzdHJpbmciPT10eXBlb2YgbyYmQyhvLG4pJiZyKys7dmFyIGk9ZS5yZWplY3Q7QXJyYXkuaXNBcnJheShpKT9lLnJlamVjdC5zb21lKChmdW5jdGlvbihlKXtyZXR1cm4gQyhlLG4pfSkpJiZ0Kys6InN0cmluZyI9PXR5cGVvZiBpJiZDKGksbikmJnQrKztpZihyPjAmJjA9PT10KXJldHVybiEwO2lmKDA9PT1yJiZ0PjApcmV0dXJuITE7cmV0dXJuITF9KGVbMF0scikpcmV0dXJuIEUoZVsxXSxuLHQscik7cmV0dXJuW119KGUsbix0LHIpO2lmKG8mJjAhPT1vLmxlbmd0aClyZXR1cm4gb30sdT1pLm1hcChhKTtyZXR1cm4obz1bXSkuY29uY2F0LmFwcGx5KG8sdS5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBudWxsIT1lJiZlLmZpbHRlcihCb29sZWFuKX0pKSl9KG4sdCxvLHIpO3JldHVybiBpLnB1c2guYXBwbHkoaSx1KSxpfTtyZXR1cm57Z2V0R2xvYmFsUHJpbWl0aXZlczpmdW5jdGlvbigpe3JldHVybiBlfSxnZXRDb25kaXRpb25hbFByb3ZpZGVyczpmdW5jdGlvbigpe3JldHVybiBufSxhZGRHbG9iYWxDb250ZXh0czpmdW5jdGlvbih0KXtmb3IodmFyIHI9W10sbz1bXSxpPTAsYT10O2k8YS5sZW5ndGg7aSsrKXt2YXIgdT1hW2ldO0EodSk/ci5wdXNoKHUpOngodSkmJm8ucHVzaCh1KX1lPWUuY29uY2F0KG8pLG49bi5jb25jYXQocil9LGNsZWFyR2xvYmFsQ29udGV4dHM6ZnVuY3Rpb24oKXtuPVtdLGU9W119LHJlbW92ZUdsb2JhbENvbnRleHRzOmZ1bmN0aW9uKHQpe2Zvcih2YXIgcj1mdW5jdGlvbih0KXtBKHQpP249bi5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBKU09OLnN0cmluZ2lmeShlKSE9PUpTT04uc3RyaW5naWZ5KHQpfSkpOngodCkmJihlPWUuZmlsdGVyKChmdW5jdGlvbihlKXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoZSkhPT1KU09OLnN0cmluZ2lmeSh0KX0pKSl9LG89MCxpPXQ7bzxpLmxlbmd0aDtvKyspe3IoaVtvXSl9fSxnZXRBcHBsaWNhYmxlQ29udGV4dHM6ZnVuY3Rpb24oZSl7cmV0dXJuIHQoZSl9fX1mdW5jdGlvbiBoKGUpe3ZhciBuPWUuc3BsaXQoIi4iKTtyZXR1cm4hIShuJiZuLmxlbmd0aD4xKSYmZnVuY3Rpb24oZSl7aWYoIioiPT09ZVswXXx8IioiPT09ZVsxXSlyZXR1cm4hMTtpZihlLnNsaWNlKDIpLmxlbmd0aD4wKXtmb3IodmFyIG49ITEsdD0wLHI9ZS5zbGljZSgyKTt0PHIubGVuZ3RoO3QrKylpZigiKiI9PT1yW3RdKW49ITA7ZWxzZSBpZihuKXJldHVybiExO3JldHVybiEwfQpyZXR1cm4gMj09ZS5sZW5ndGh9KG4pfWZ1bmN0aW9uIHkoZSl7dmFyIG49bmV3IFJlZ0V4cCgiXmlnbHU6KCg/Oig/OlthLXpBLVowLTktX10rfFxcKikuKSsoPzpbYS16QS1aMC05LV9dK3xcXCopKS8oW2EtekEtWjAtOS1fLl0rfFxcKikvanNvbnNjaGVtYS8oWzEtOV1bMC05XSp8XFwqKS0oMHxbMS05XVswLTldKnxcXCopLSgwfFsxLTldWzAtOV0qfFxcKikkIikuZXhlYyhlKTtpZihudWxsIT09biYmaChuWzFdKSlyZXR1cm4gbi5zbGljZSgxLDYpfWZ1bmN0aW9uIHcoZSl7dmFyIG49eShlKTtpZihuKXt2YXIgdD1uWzBdO3JldHVybiA1PT09bi5sZW5ndGgmJmgodCl9cmV0dXJuITF9ZnVuY3Rpb24gYihlKXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuIEFycmF5LmlzQXJyYXkoZSkmJmUuZXZlcnkoKGZ1bmN0aW9uKGUpe3JldHVybiJzdHJpbmciPT10eXBlb2YgZX0pKX0oZSk/ZS5ldmVyeSgoZnVuY3Rpb24oZSl7cmV0dXJuIHcoZSl9KSk6InN0cmluZyI9PXR5cGVvZiBlJiZ3KGUpfWZ1bmN0aW9uIGsoZSl7dmFyIG49ZTtyZXR1cm4hIShmKG4pJiYic2NoZW1hImluIG4mJiJkYXRhImluIG4pJiYoInN0cmluZyI9PXR5cGVvZiBuLnNjaGVtYSYmIm9iamVjdCI9PXR5cGVvZiBuLmRhdGEpfWZ1bmN0aW9uIFMoZSl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIGUmJmUubGVuZ3RoPD0xfWZ1bmN0aW9uIHgoZSl7cmV0dXJuIFMoZSl8fGsoZSl9ZnVuY3Rpb24gVChlKXtyZXR1cm4hKCFBcnJheS5pc0FycmF5KGUpfHwyIT09ZS5sZW5ndGgpJiYoQXJyYXkuaXNBcnJheShlWzFdKT9TKGVbMF0pJiZlWzFdLmV2ZXJ5KHgpOlMoZVswXSkmJngoZVsxXSkpfWZ1bmN0aW9uIEkoZSl7cmV0dXJuISghQXJyYXkuaXNBcnJheShlKXx8MiE9PWUubGVuZ3RoKSYmKCEhZnVuY3Rpb24oZSl7dmFyIG49ZSx0PTA7aWYobnVsbCE9ZSYmIm9iamVjdCI9PXR5cGVvZiBlJiYhQXJyYXkuaXNBcnJheShlKSl7aWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4sImFjY2VwdCIpKXtpZighYihuLmFjY2VwdCkpcmV0dXJuITE7dCs9MX1pZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobiwicmVqZWN0Iikpe2lmKCFiKG4ucmVqZWN0KSlyZXR1cm4hMTt0Kz0xfXJldHVybiB0PjAmJnQ8PTJ9cmV0dXJuITF9KGVbMF0pJiYoQXJyYXkuaXNBcnJheShlWzFdKT9lWzFdLmV2ZXJ5KHgpOngoZVsxXSkpKX1mdW5jdGlvbiBBKGUpe3JldHVybiBUKGUpfHxJKGUpfWZ1bmN0aW9uIEMoZSxuKXtpZighdyhlKSlyZXR1cm4hMTt2YXIgdD15KGUpLHI9ZnVuY3Rpb24oZSl7dmFyIG49bmV3IFJlZ0V4cCgiXmlnbHU6KFthLXpBLVowLTktXy5dKykvKFthLXpBLVowLTktX10rKS9qc29uc2NoZW1hLyhbMS05XVswLTldKiktKDB8WzEtOV1bMC05XSopLSgwfFsxLTldWzAtOV0qKSQiKS5leGVjKGUpO2lmKG51bGwhPT1uKXJldHVybiBuLnNsaWNlKDEsNil9KG4pO2lmKHQmJnIpe2lmKCFmdW5jdGlvbihlLG4pe3ZhciB0PW4uc3BsaXQoIi4iKSxyPWUuc3BsaXQoIi4iKTtpZih0JiZyKXtpZih0Lmxlbmd0aCE9PXIubGVuZ3RoKXJldHVybiExO2Zvcih2YXIgbz0wO288ci5sZW5ndGg7bysrKWlmKCFPKHRbb10scltvXSkpcmV0dXJuITE7cmV0dXJuITB9cmV0dXJuITF9KHRbMF0sclswXSkpcmV0dXJuITE7Zm9yKHZhciBvPTE7bzw1O28rKylpZighTyh0W29dLHJbb10pKXJldHVybiExO3JldHVybiEwfXJldHVybiExfWZ1bmN0aW9uIE8oZSxuKXtyZXR1cm4gZSYmbiYmIioiPT09ZXx8ZT09PW59ZnVuY3Rpb24gUChlKXtyZXR1cm4gQXJyYXkuaXNBcnJheShlKT9lOkFycmF5Lm9mKGUpfWZ1bmN0aW9uIEUoZSxuLHQscil7dmFyIG8saT1QKGUpLm1hcCgoZnVuY3Rpb24oZSl7dmFyIG89ZnVuY3Rpb24oZSxuLHQscil7aWYoayhlKSlyZXR1cm5bZV07aWYoUyhlKSl7dmFyIG89ZnVuY3Rpb24oZSxuLHQscil7dmFyIG89dm9pZCAwO3RyeXtyZXR1cm4gbz1lKHtldmVudDpuLmdldFBheWxvYWQoKSxldmVudFR5cGU6dCxldmVudFNjaGVtYTpyfSksQXJyYXkuaXNBcnJheShvKSYmby5ldmVyeShrKXx8ayhvKT9vOnZvaWQgMH1jYXRjaChlKXtvPXZvaWQgMH1yZXR1cm4gb30oZSxuLHQscik7aWYoayhvKSlyZXR1cm5bb107aWYoQXJyYXkuaXNBcnJheShvKSlyZXR1cm4gb31yZXR1cm59KGUsbix0LHIpO2lmKG8mJjAhPT1vLmxlbmd0aClyZXR1cm4gb30pKTtyZXR1cm4obz1bXSkuY29uY2F0LmFwcGx5KG8saS5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBudWxsIT1lJiZlLmZpbHRlcihCb29sZWFuKX0pKSl9ZnVuY3Rpb24gTChlKXt2b2lkIDA9PT1lJiYoZT17fSk7dmFyIG49ZS5iYXNlNjQsdD1lLmNvcmVQbHVnaW5zLGE9ZS5jYWxsYmFjayx1PW51bGwhPXQ/dDpbXSxjPWZ1bmN0aW9uKGUsbix0KXt2YXIgcj1mdW5jdGlvbihlKXtyZXR1cm57YWRkUGx1Z2luQ29udGV4dHM6ZnVuY3Rpb24obil7dmFyIHQ9bj9vKFtdLG4sITApOltdO3JldHVybiBlLmZvckVhY2goKGZ1bmN0aW9uKGUpe3RyeXtlLmNvbnRleHRzJiZ0LnB1c2guYXBwbHkodCxlLmNvbnRleHRzKCkpfWNhdGNoKGUpe3AuZXJyb3IoIkVycm9yIGFkZGluZyBwbHVnaW4gY29udGV4dHMiLGUpfX0pKSx0fX19KG4pLGE9bSgpLHU9ZSxjPXt9O2Z1bmN0aW9uIHMoZSxuKXtjW2VdPW59dmFyIGY9e3RyYWNrOmZ1bmN0aW9uKGUsbyxzKXtlLndpdGhKc29uUHJvY2Vzc29yKGwodSkpLGUuYWRkKCJlaWQiLCgwLGkudjQpKCkpLGUuYWRkRGljdChjKTt2YXIgZj1mdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09ZT97dHlwZToiZHRtIix2YWx1ZToobmV3IERhdGUpLmdldFRpbWUoKX06Im51bWJlciI9PXR5cGVvZiBlP3t0eXBlOiJkdG0iLHZhbHVlOmV9OiJ0dG0iPT09ZS50eXBlP3t0eXBlOiJ0dG0iLHZhbHVlOmUudmFsdWV9Ont0eXBlOiJkdG0iLHZhbHVlOmUudmFsdWV8fChuZXcgRGF0ZSkuZ2V0VGltZSgpfX0ocyk7ZS5hZGQoZi50eXBlLGYudmFsdWUudG9TdHJpbmcoKSk7dmFyIGQ9ZnVuY3Rpb24oZSl7aWYoZSYmZS5sZW5ndGgpcmV0dXJuewpzY2hlbWE6ImlnbHU6Y29tLnNub3dwbG93YW5hbHl0aWNzLnNub3dwbG93L2NvbnRleHRzL2pzb25zY2hlbWEvMS0wLTAiLGRhdGE6ZX19KGZ1bmN0aW9uKGUsbil7dmFyIHQ9YS5nZXRBcHBsaWNhYmxlQ29udGV4dHMoZSkscj1bXTtyZXR1cm4gbiYmbi5sZW5ndGgmJnIucHVzaC5hcHBseShyLG4pLHQmJnQubGVuZ3RoJiZyLnB1c2guYXBwbHkocix0KSxyfShlLHIuYWRkUGx1Z2luQ29udGV4dHMobykpKTt2b2lkIDAhPT1kJiZlLmFkZEpzb24oImN4IiwiY28iLGQpLG4uZm9yRWFjaCgoZnVuY3Rpb24obil7dHJ5e24uYmVmb3JlVHJhY2smJm4uYmVmb3JlVHJhY2soZSl9Y2F0Y2goZSl7cC5lcnJvcigiUGx1Z2luIGJlZm9yZVRyYWNrIixlKX19KSksImZ1bmN0aW9uIj09dHlwZW9mIHQmJnQoZSk7dmFyIHY9ZS5idWlsZCgpO3JldHVybiBuLmZvckVhY2goKGZ1bmN0aW9uKGUpe3RyeXtlLmFmdGVyVHJhY2smJmUuYWZ0ZXJUcmFjayh2KX1jYXRjaChlKXtwLmVycm9yKCJQbHVnaW4gYWZ0ZXJUcmFjayIsZSl9fSkpLHZ9LGFkZFBheWxvYWRQYWlyOnMsZ2V0QmFzZTY0RW5jb2Rpbmc6ZnVuY3Rpb24oKXtyZXR1cm4gdX0sc2V0QmFzZTY0RW5jb2Rpbmc6ZnVuY3Rpb24oZSl7dT1lfSxhZGRQYXlsb2FkRGljdDpmdW5jdGlvbihlKXtmb3IodmFyIG4gaW4gZSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSxuKSYmKGNbbl09ZVtuXSl9LHJlc2V0UGF5bG9hZFBhaXJzOmZ1bmN0aW9uKGUpe2M9ZChlKT9lOnt9fSxzZXRUcmFja2VyVmVyc2lvbjpmdW5jdGlvbihlKXtzKCJ0diIsZSl9LHNldFRyYWNrZXJOYW1lc3BhY2U6ZnVuY3Rpb24oZSl7cygidG5hIixlKX0sc2V0QXBwSWQ6ZnVuY3Rpb24oZSl7cygiYWlkIixlKX0sc2V0UGxhdGZvcm06ZnVuY3Rpb24oZSl7cygicCIsZSl9LHNldFVzZXJJZDpmdW5jdGlvbihlKXtzKCJ1aWQiLGUpfSxzZXRTY3JlZW5SZXNvbHV0aW9uOmZ1bmN0aW9uKGUsbil7cygicmVzIixlKyJ4IituKX0sc2V0Vmlld3BvcnQ6ZnVuY3Rpb24oZSxuKXtzKCJ2cCIsZSsieCIrbil9LHNldENvbG9yRGVwdGg6ZnVuY3Rpb24oZSl7cygiY2QiLGUpfSxzZXRUaW1lem9uZTpmdW5jdGlvbihlKXtzKCJ0eiIsZSl9LHNldExhbmc6ZnVuY3Rpb24oZSl7cygibGFuZyIsZSl9LHNldElwQWRkcmVzczpmdW5jdGlvbihlKXtzKCJpcCIsZSl9LHNldFVzZXJhZ2VudDpmdW5jdGlvbihlKXtzKCJ1YSIsZSl9LGFkZEdsb2JhbENvbnRleHRzOmZ1bmN0aW9uKGUpe2EuYWRkR2xvYmFsQ29udGV4dHMoZSl9LGNsZWFyR2xvYmFsQ29udGV4dHM6ZnVuY3Rpb24oKXthLmNsZWFyR2xvYmFsQ29udGV4dHMoKX0scmVtb3ZlR2xvYmFsQ29udGV4dHM6ZnVuY3Rpb24oZSl7YS5yZW1vdmVHbG9iYWxDb250ZXh0cyhlKX19O3JldHVybiBmfShudWxsPT1ufHxuLHUsYSkscz1yKHIoe30sYykse2FkZFBsdWdpbjpmdW5jdGlvbihlKXt2YXIgbix0LHI9ZS5wbHVnaW47dS5wdXNoKHIpLG51bGw9PT0obj1yLmxvZ2dlcil8fHZvaWQgMD09PW58fG4uY2FsbChyLHApLG51bGw9PT0odD1yLmFjdGl2YXRlQ29yZVBsdWdpbil8fHZvaWQgMD09PXR8fHQuY2FsbChyLHMpfX0pO3JldHVybiBudWxsPT11fHx1LmZvckVhY2goKGZ1bmN0aW9uKGUpe3ZhciBuLHQ7bnVsbD09PShuPWUubG9nZ2VyKXx8dm9pZCAwPT09bnx8bi5jYWxsKGUscCksbnVsbD09PSh0PWUuYWN0aXZhdGVDb3JlUGx1Z2luKXx8dm9pZCAwPT09dHx8dC5jYWxsKGUscyl9KSksc31mdW5jdGlvbiBEKGUpe3ZhciBuPWUuZXZlbnQsdD1uLnNjaGVtYSxyPW4uZGF0YSxvPXMoKSxpPXtzY2hlbWE6ImlnbHU6Y29tLnNub3dwbG93YW5hbHl0aWNzLnNub3dwbG93L3Vuc3RydWN0X2V2ZW50L2pzb25zY2hlbWEvMS0wLTAiLGRhdGE6e3NjaGVtYTp0LGRhdGE6cn19O3JldHVybiBvLmFkZCgiZSIsInVlIiksby5hZGRKc29uKCJ1ZV9weCIsInVlX3ByIixpKSxvfXZhciBqPXQoMTk2MzczKSxVPXQubihqKTtmdW5jdGlvbiBSKGUsbix0KXt2b2lkIDA9PT10JiYodD02MzA3MmUzKTt0cnl7dmFyIHI9d2luZG93LmxvY2FsU3RvcmFnZSxvPURhdGUubm93KCkrMWUzKnQ7cmV0dXJuIHIuc2V0SXRlbSgiIi5jb25jYXQoZSwiLmV4cGlyZXMiKSxvLnRvU3RyaW5nKCkpLHIuc2V0SXRlbShlLG4pLCEwfWNhdGNoKGUpe3JldHVybiExfX1mdW5jdGlvbiBOKGUpe3RyeXt2YXIgbj13aW5kb3cubG9jYWxTdG9yYWdlO3JldHVybiBuLnJlbW92ZUl0ZW0oZSksbi5yZW1vdmVJdGVtKGUrIi5leHBpcmVzIiksITB9Y2F0Y2goZSl7cmV0dXJuITF9fWZ1bmN0aW9uIEIoZSl7dHJ5e3JldHVybiB3aW5kb3cuc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShlKX1jYXRjaChlKXtyZXR1cm59fXZhciBfPXtzZXNzaW9uSWQ6ITAsc291cmNlSWQ6ITAsc291cmNlUGxhdGZvcm06ITEsdXNlcklkOiExLHJlYXNvbjohMX07ZnVuY3Rpb24gVihlKXtyZXR1cm4gYnRvYShlKS5yZXBsYWNlKC9cKy9nLCItIikucmVwbGFjZSgvXC8vZywiXyIpLnJlcGxhY2UoL1w9KyQvLCIiKX1mdW5jdGlvbiBNKGUpe3JldHVybiEoIWV8fCJzdHJpbmciIT10eXBlb2YgZS52YWx1ZU9mKCkpfWZ1bmN0aW9uIHooZSl7cmV0dXJuIE51bWJlci5pc0ludGVnZXImJk51bWJlci5pc0ludGVnZXIoZSl8fCJudW1iZXIiPT10eXBlb2YgZSYmaXNGaW5pdGUoZSkmJk1hdGguZmxvb3IoZSk9PT1lfWZ1bmN0aW9uIEgoZSl7aWYoIU0oZSkpe2U9ZS50ZXh0fHwiIjt2YXIgbj1kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgidGl0bGUiKTtuJiZudWxsIT1uWzBdJiYoZT1uWzBdLnRleHQpfXJldHVybiBlfWZ1bmN0aW9uIEooZSl7dmFyIG49bmV3IFJlZ0V4cCgiXig/Oig/Omh0dHBzP3xmdHApOikvKig/OlteQF0rQCk/KFteOi8jXSspIikuZXhlYyhlKTtyZXR1cm4gbj9uWzFdOmV9ZnVuY3Rpb24gcShlKXt2YXIgbj1lLmxlbmd0aDtyZXR1cm4iLiI9PT1lLmNoYXJBdCgtLW4pJiYoZT1lLnNsaWNlKDAsbikpLCIqLiI9PT1lLnNsaWNlKDAsMikmJihlPWUuc2xpY2UoMSkpLGV9ZnVuY3Rpb24gRihlKXsKdmFyIG49d2luZG93LHQ9WCgicmVmZXJyZXIiLG4ubG9jYXRpb24uaHJlZil8fFgoInJlZmVyZXIiLG4ubG9jYXRpb24uaHJlZik7aWYodClyZXR1cm4gdDtpZihlKXJldHVybiBlO3RyeXtpZihuLnRvcClyZXR1cm4gbi50b3AuZG9jdW1lbnQucmVmZXJyZXI7aWYobi5wYXJlbnQpcmV0dXJuIG4ucGFyZW50LmRvY3VtZW50LnJlZmVycmVyfWNhdGNoKGUpe31yZXR1cm4gZG9jdW1lbnQucmVmZXJyZXJ9ZnVuY3Rpb24gRyhlLG4sdCxyKXtyZXR1cm4gZS5hZGRFdmVudExpc3RlbmVyPyhlLmFkZEV2ZW50TGlzdGVuZXIobix0LHIpLCEwKTplLmF0dGFjaEV2ZW50P2UuYXR0YWNoRXZlbnQoIm9uIituLHQpOnZvaWQoZVsib24iK25dPXQpfWZ1bmN0aW9uIFgoZSxuKXt2YXIgdD1uZXcgUmVnRXhwKCJeW14jXSpbPyZdIitlKyI9KFteJiNdKikiKS5leGVjKG4pO3JldHVybiB0P2RlY29kZVVSSUNvbXBvbmVudCh0WzFdLnJlcGxhY2UoL1wrL2csIiAiKSk6bnVsbH1mdW5jdGlvbiBXKGUsbix0LHIpe1EoZSwiIiwtMSwiLyIsbix0LHIpfWZ1bmN0aW9uIFkoZSl7Zm9yKHZhciBuPWRvY3VtZW50LmNvb2tpZS5zcGxpdCgiOyAiKSx0PVtdLHI9MDtyPG4ubGVuZ3RoO3IrKyluW3JdLnN1YnN0cmluZygwLGUubGVuZ3RoKT09PWUmJnQucHVzaChuW3JdKTtyZXR1cm4gdH1mdW5jdGlvbiBRKGUsbix0LHIsbyxpLGEpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoPjE/ZG9jdW1lbnQuY29va2llPWUrIj0iK2VuY29kZVVSSUNvbXBvbmVudChudWxsIT1uP246IiIpKyh0PyI7IEV4cGlyZXM9IituZXcgRGF0ZSgrbmV3IERhdGUrMWUzKnQpLnRvVVRDU3RyaW5nKCk6IiIpKyhyPyI7IFBhdGg9IityOiIiKSsobz8iOyBEb21haW49IitvOiIiKSsoaT8iOyBTYW1lU2l0ZT0iK2k6IiIpKyhhPyI7IFNlY3VyZSI6IiIpOmRlY29kZVVSSUNvbXBvbmVudCgoKCI7ICIrZG9jdW1lbnQuY29va2llKS5zcGxpdCgiOyAiK2UrIj0iKVsxXXx8IiIpLnNwbGl0KCI7IilbMF0pfWZ1bmN0aW9uIFooKXt2YXIgZT0ibW9kZXJuaXpyIjtpZighZnVuY3Rpb24oKXt0cnl7cmV0dXJuISF3aW5kb3cubG9jYWxTdG9yYWdlfWNhdGNoKGUpe3JldHVybiEwfX0oKSlyZXR1cm4hMTt0cnl7dmFyIG49d2luZG93LmxvY2FsU3RvcmFnZTtyZXR1cm4gbi5zZXRJdGVtKGUsZSksbi5yZW1vdmVJdGVtKGUpLCEwfWNhdGNoKGUpe3JldHVybiExfX12YXIgSz0iaWdsdTpjb20uc25vd3Bsb3dhbmFseXRpY3Muc25vd3Bsb3cvd2ViX3BhZ2UvanNvbnNjaGVtYS8xLTAtMCIsJD0iaWdsdTpjb20uc25vd3Bsb3dhbmFseXRpY3Muc25vd3Bsb3cvYnJvd3Nlcl9jb250ZXh0L2pzb25zY2hlbWEvMi0wLTAiLGVlPSJpZ2x1OmNvbS5zbm93cGxvd2FuYWx5dGljcy5zbm93cGxvdy9jbGllbnRfc2Vzc2lvbi9qc29uc2NoZW1hLzEtMC0yIjtmdW5jdGlvbiBuZShlLG4sdCxyLG8saSxhLHUsYyxzLGwsZixkLHYsZyxtLGgseSx3LGIpe3ZvaWQgMD09PXkmJih5PSEwKTt2YXIgayxTLHg9ITEsVD1bXSxJPSExLEE9ITA9PT0ocj0ic3RyaW5nIj09dHlwZW9mIHI/ci50b0xvd2VyQ2FzZSgpOnIpfHwiYmVhY29uIj09PXJ8fCJ0cnVlIj09PXIsQz1Cb29sZWFuKEEmJndpbmRvdy5uYXZpZ2F0b3ImJiJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cubmF2aWdhdG9yLnNlbmRCZWFjb24mJiEoZnVuY3Rpb24oZSxuKXt2YXIgdD1uLm1hdGNoKCIoaVAuKzsgQ1BVIC4qT1MgKGQrKVtfZF0qLiopIEFwcGxlV2ViS2l0LyIpO3JldHVybiEoIXR8fCF0Lmxlbmd0aCkmJnBhcnNlSW50KHRbMF0pPD1lfSgxMyxTPXdpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50KXx8ZnVuY3Rpb24oZSxuLHQpe3ZhciByPXQubWF0Y2goIihNYWNpbnRvc2g7LipNYWMgT1MgWCAoZCspXyhkKylbX2RdKi4qKSBBcHBsZVdlYktpdC8iKTtyZXR1cm4hKCFyfHwhci5sZW5ndGgpJiYocGFyc2VJbnQoclswXSk8PWV8fHBhcnNlSW50KHJbMF0pPT09ZSYmcGFyc2VJbnQoclsxXSk8PW4pfSgxMCwxNSxTKSYmZnVuY3Rpb24oZSl7cmV0dXJuIGUubWF0Y2goIlZlcnNpb24vLiogU2FmYXJpLyIpJiYhZnVuY3Rpb24oZSl7cmV0dXJuIGUubWF0Y2goIkNocm9tKGV8aXVtKSIpfShlKX0oUykpKSYmQSxPPSJnZXQiPT09cixQPUJvb2xlYW4od2luZG93LlhNTEh0dHBSZXF1ZXN0JiYid2l0aENyZWRlbnRpYWxzImluIG5ldyBYTUxIdHRwUmVxdWVzdCksRT0hTyYmUCYmKCJwb3N0Ij09PXJ8fEEpLEw9RT9vOiIvaSIsRD0ic25vd3Bsb3dPdXRRdWV1ZV8iLmNvbmNhdChlLCJfIikuY29uY2F0KEU/InBvc3QyIjoiZ2V0Iik7aWYoQSYmKGQ9e30pLGk9dCYmWigpJiZFJiZpfHwxLHQpdHJ5e3ZhciBqPXdpbmRvdy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShEKTtUPWo/SlNPTi5wYXJzZShqKTpbXX1jYXRjaChlKXt9ZnVuY3Rpb24gVShlKXt2YXIgbj1PYmplY3Qua2V5cyhlKS5tYXAoKGZ1bmN0aW9uKG4pe3JldHVybltuLGVbbl1dfSkpLnJlZHVjZSgoZnVuY3Rpb24oZSxuKXt2YXIgdD1uWzBdLHI9blsxXTtyZXR1cm4gZVt0XT1yLnRvU3RyaW5nKCksZX0pLHt9KTtyZXR1cm57ZXZ0Om4sYnl0ZXM6TihKU09OLnN0cmluZ2lmeShuKSl9fWZ1bmN0aW9uIE4oZSl7Zm9yKHZhciBuPTAsdD0wO3Q8ZS5sZW5ndGg7dCsrKXt2YXIgcj1lLmNoYXJDb2RlQXQodCk7cjw9MTI3P24rPTE6cjw9MjA0Nz9uKz0yOnI+PTU1Mjk2JiZyPD01NzM0Mz8obis9NCx0KyspOm4rPXI8NjU1MzU/Mzo0fXJldHVybiBufUFycmF5LmlzQXJyYXkoVCl8fChUPVtdKSxuLm91dFF1ZXVlcy5wdXNoKFQpLFAmJmk+MSYmbi5idWZmZXJGbHVzaGVycy5wdXNoKChmdW5jdGlvbihlKXt4fHxIKGUpfSkpO3ZhciBCPWZ1bmN0aW9uKGUpe3JldHVybiJvYmplY3QiPT10eXBlb2YgZVswXSYmImV2dCJpbiBlWzBdfTtmdW5jdGlvbiBfKGUsbil7dmFyIHQ9cShuLCEwLCExKSxyPUcoW2UuZXZ0XSk7dC5vbnJlYWR5c3RhdGVjaGFuZ2U9ZnVuY3Rpb24oKXs0PT09dC5yZWFkeVN0YXRlJiYoSih0LnN0YXR1cyk/bnVsbD09d3x8dyhyKTpudWxsPT1ifHxiKHtzdGF0dXM6dC5zdGF0dXMsbWVzc2FnZTp0LnN0YXR1c1RleHQsZXZlbnRzOnIsd2lsbFJldHJ5OiExfSkpfSwKdC5zZW5kKEYocikpfWZ1bmN0aW9uIFYoZSl7Zm9yKHZhciBuPTA7bjxlO24rKylULnNoaWZ0KCk7dCYmUihELEpTT04uc3RyaW5naWZ5KFQuc2xpY2UoMCxzKSkpfWZ1bmN0aW9uIHooZSxuLHQpe2Uub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7aWYoND09PWUucmVhZHlTdGF0ZSlpZihjbGVhclRpbWVvdXQociksSihlLnN0YXR1cykpVihuKSxudWxsPT13fHx3KHQpLEgoKTtlbHNle3ZhciBvPWZ1bmN0aW9uKGUpe2lmKEooZSkpcmV0dXJuITE7aWYoIXkpcmV0dXJuITE7aWYoZy5pbmNsdWRlcyhlKSlyZXR1cm4hMDtyZXR1cm4hbS5pbmNsdWRlcyhlKX0oZS5zdGF0dXMpO298fChwLmVycm9yKCJTdGF0dXMgIi5jb25jYXQoZS5zdGF0dXMsIiwgd2lsbCBub3QgcmV0cnkuIikpLFYobikpLG51bGw9PWJ8fGIoe3N0YXR1czplLnN0YXR1cyxtZXNzYWdlOmUuc3RhdHVzVGV4dCxldmVudHM6dCx3aWxsUmV0cnk6b30pLHg9ITF9fTt2YXIgcj1zZXRUaW1lb3V0KChmdW5jdGlvbigpe2UuYWJvcnQoKSx5fHxWKG4pLG51bGw9PWJ8fGIoe3N0YXR1czowLG1lc3NhZ2U6InRpbWVvdXQiLGV2ZW50czp0LHdpbGxSZXRyeTp5fSkseD0hMX0pLGwpfWZ1bmN0aW9uIEgoZSl7Zm9yKHZvaWQgMD09PWUmJihlPSExKTtULmxlbmd0aCYmInN0cmluZyIhPXR5cGVvZiBUWzBdJiYib2JqZWN0IiE9dHlwZW9mIFRbMF07KVQuc2hpZnQoKTtpZihULmxlbmd0aCl7aWYoIU0oaykpdGhyb3ciTm8gY29sbGVjdG9yIGNvbmZpZ3VyZWQiO2lmKHg9ITAsaCYmIUkpe3ZhciBuPXEoaCwhMSxlKTtyZXR1cm4gST0hMCxuLnRpbWVvdXQ9bCxuLm9ucmVhZHlzdGF0ZWNoYW5nZT1mdW5jdGlvbigpezQ9PT1uLnJlYWR5U3RhdGUmJkgoKX0sdm9pZCBuLnNlbmQoKX1pZihQKXt2YXIgcj12b2lkIDAsbz12b2lkIDAsaT12b2lkIDA7aWYoQihUKT8obz1xKHI9aywhMCxlKSxpPWZ1bmN0aW9uKGUpe2Zvcih2YXIgbj0wLHQ9MDtuPGUubGVuZ3RoJiYhKCh0Kz1lW25dLmJ5dGVzKT49YSk7KW4rPTE7cmV0dXJuIG59KFQpKToobz1xKHI9WChUWzBdKSwhMSxlKSxpPTEpLEIoVCkpe3ZhciB1PVQuc2xpY2UoMCxpKTtpZih1Lmxlbmd0aD4wKXt2YXIgYz0hMSxkPXUubWFwKChmdW5jdGlvbihlKXtyZXR1cm4gZS5ldnR9KSk7aWYoQyl7dmFyIHY9bmV3IEJsb2IoW0YoRyhkKSldLHt0eXBlOiJhcHBsaWNhdGlvbi9qc29uIn0pO3RyeXtjPXdpbmRvdy5uYXZpZ2F0b3Iuc2VuZEJlYWNvbihyLHYpfWNhdGNoKGUpe2M9ITF9fWlmKCEwPT09YylWKGkpLG51bGw9PXd8fHcodSksSCgpO2Vsc2V7dmFyIGc9RyhkKTt6KG8saSxnKSxvLnNlbmQoRihnKSl9fX1lbHNlIHoobyxpLFtyXSksby5zZW5kKCl9ZWxzZSBpZihmfHxCKFQpKXg9ITE7ZWxzZXt2YXIgcD1uZXcgSW1hZ2UoMSwxKSxtPSEwO3Aub25sb2FkPWZ1bmN0aW9uKCl7bSYmKG09ITEsVC5zaGlmdCgpLHQmJlIoRCxKU09OLnN0cmluZ2lmeShULnNsaWNlKDAscykpKSxIKCkpfSxwLm9uZXJyb3I9ZnVuY3Rpb24oKXttJiYobT0hMSx4PSExKX0scC5zcmM9WChUWzBdKSxzZXRUaW1lb3V0KChmdW5jdGlvbigpe20mJngmJihtPSExLEgoKSl9KSxsKX19ZWxzZSB4PSExfWZ1bmN0aW9uIEooZSl7cmV0dXJuIGU+PTIwMCYmZTwzMDB9ZnVuY3Rpb24gcShlLG4sdCl7dmFyIHI9bmV3IFhNTEh0dHBSZXF1ZXN0O2Zvcih2YXIgbyBpbiBuPyhyLm9wZW4oIlBPU1QiLGUsIXQpLHIuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEYtOCIpKTpyLm9wZW4oIkdFVCIsZSwhdCksci53aXRoQ3JlZGVudGlhbHM9dixmJiZyLnNldFJlcXVlc3RIZWFkZXIoIlNQLUFub255bW91cyIsIioiKSxkKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChkLG8pJiZyLnNldFJlcXVlc3RIZWFkZXIobyxkW29dKTtyZXR1cm4gcn1mdW5jdGlvbiBGKGUpe3JldHVybiBKU09OLnN0cmluZ2lmeSh7c2NoZW1hOiJpZ2x1OmNvbS5zbm93cGxvd2FuYWx5dGljcy5zbm93cGxvdy9wYXlsb2FkX2RhdGEvanNvbnNjaGVtYS8xLTAtNCIsZGF0YTplfSl9ZnVuY3Rpb24gRyhlKXtmb3IodmFyIG49KG5ldyBEYXRlKS5nZXRUaW1lKCkudG9TdHJpbmcoKSx0PTA7dDxlLmxlbmd0aDt0KyspZVt0XS5zdG09bjtyZXR1cm4gZX1mdW5jdGlvbiBYKGUpe3JldHVybiBjP2srZS5yZXBsYWNlKCI/IiwiP3N0bT0iKyhuZXcgRGF0ZSkuZ2V0VGltZSgpKyImIik6aytlfXJldHVybntlbnF1ZXVlUmVxdWVzdDpmdW5jdGlvbihlLG4pe2s9bitMO3ZhciByPWZ1bmN0aW9uKGUsbil7cmV0dXJuIHAud2FybigiRXZlbnQgKCIrZSsiQikgdG9vIGJpZywgbWF4IGlzICIrbil9O2lmKEUpe2lmKChmPVUoZSkpLmJ5dGVzPj1hKXJldHVybiByKGYuYnl0ZXMsYSksdm9pZCBfKGYsayk7VC5wdXNoKGYpfWVsc2V7dmFyIGM9ZnVuY3Rpb24oZSl7dmFyIG49Ij8iLHQ9e2NvOiEwLGN4OiEwfSxyPSEwO2Zvcih2YXIgbyBpbiBlKWUuaGFzT3duUHJvcGVydHkobykmJiF0Lmhhc093blByb3BlcnR5KG8pJiYocj9yPSExOm4rPSImIixuKz1lbmNvZGVVUklDb21wb25lbnQobykrIj0iK2VuY29kZVVSSUNvbXBvbmVudChlW29dKSk7Zm9yKHZhciBpIGluIHQpZS5oYXNPd25Qcm9wZXJ0eShpKSYmdC5oYXNPd25Qcm9wZXJ0eShpKSYmKG4rPSImIitpKyI9IitlbmNvZGVVUklDb21wb25lbnQoZVtpXSkpO3JldHVybiBufShlKTtpZih1PjApe3ZhciBsPU4oWChjKSk7aWYobD49dSl7dmFyIGY7aWYocihsLHUpLFApXyhmPVUoZSksbitvKTtyZXR1cm59fVQucHVzaChjKX12YXIgZD0hMTt0JiYoZD1SKEQsSlNPTi5zdHJpbmdpZnkoVC5zbGljZSgwLHMpKSkpLHh8fGQmJiEoVC5sZW5ndGg+PWkpfHxIKCl9LGV4ZWN1dGVRdWV1ZTpmdW5jdGlvbigpe3h8fEgoKX0sc2V0VXNlTG9jYWxTdG9yYWdlOmZ1bmN0aW9uKGUpe3Q9ZX0sc2V0QW5vbnltb3VzVHJhY2tpbmc6ZnVuY3Rpb24oZSl7Zj1lfSxzZXRDb2xsZWN0b3JVcmw6ZnVuY3Rpb24oZSl7az1lK0x9LHNldEJ1ZmZlclNpemU6ZnVuY3Rpb24oZSl7aT1lfX19ZnVuY3Rpb24gdGUoZSxuLHQpe3ZhciByLG8saSxhCjtyZXR1cm4idHJhbnNsYXRlLmdvb2dsZXVzZXJjb250ZW50LmNvbSI9PT1lPygiIj09PXQmJih0PW4pLGU9SihuPW51bGwhPT0obz1uLGk9InUiLHI9KGE9bmV3IFJlZ0V4cCgiXig/Omh0dHBzP3xmdHApKD86Oi8qKD86W14/XSspKShbP11bXiNdKykiKS5leGVjKG8pKSYmKG51bGw9PWE/dm9pZCAwOmEubGVuZ3RoKT4xP1goaSxhWzFdKTpudWxsKSYmdm9pZCAwIT09cj9yOiIiKSk6ImNjLmJpbmdqLmNvbSIhPT1lJiYid2ViY2FjaGUuZ29vZ2xldXNlcmNvbnRlbnQuY29tIiE9PWV8fChlPUoobj1kb2N1bWVudC5saW5rc1swXS5ocmVmKSksW2Usbix0XX1mdW5jdGlvbiByZShlLG4pe3ZvaWQgMD09PW4mJihuPXttZW1vcml6ZWRWaXNpdENvdW50OjF9KTt2YXIgdD1uLm1lbW9yaXplZFZpc2l0Q291bnQ7Y2UoZSk/KGVbN109ZVs2XSxlWzVdPWVbNF0sZVszXSsrKTplWzNdPXQ7dmFyIHI9KDAsaS52NCkoKTtyZXR1cm4gZVs2XT1yLGVbMTBdPTAsZVs4XT0iIixlWzldPXZvaWQgMCxyfWZ1bmN0aW9uIG9lKGUpe2VbNF09TWF0aC5yb3VuZCgobmV3IERhdGUpLmdldFRpbWUoKS8xZTMpfWZ1bmN0aW9uIGllKGUsbix0KXt2YXIgcj1lWzldO3JldHVybnt1c2VySWQ6dD8iMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAwIjplWzFdLHNlc3Npb25JZDplWzZdLGV2ZW50SW5kZXg6ZVsxMF0sc2Vzc2lvbkluZGV4OmVbM10scHJldmlvdXNTZXNzaW9uSWQ6dD9udWxsOmVbN118fG51bGwsc3RvcmFnZU1lY2hhbmlzbToibG9jYWxTdG9yYWdlIj09bj8iTE9DQUxfU1RPUkFHRSI6IkNPT0tJRV8xIixmaXJzdEV2ZW50SWQ6ZVs4XXx8bnVsbCxmaXJzdEV2ZW50VGltZXN0YW1wOnI/bmV3IERhdGUocikudG9JU09TdHJpbmcoKTpudWxsfX1mdW5jdGlvbiBhZShlKXtyZXR1cm4gZVs2XX1mdW5jdGlvbiB1ZShlKXtyZXR1cm4gZVszXX1mdW5jdGlvbiBjZShlKXtyZXR1cm4iMCI9PT1lWzBdfXZhciBzZSxsZT0hMTt2YXIgZmU9IngiO2Z1bmN0aW9uIGRlKCl7cmV0dXJuIlJlc2l6ZU9ic2VydmVyImluIHdpbmRvdz8oc2V8fChzZT12ZSgpKSxmdW5jdGlvbigpe2lmKCFsZSYmZG9jdW1lbnQmJmRvY3VtZW50LmJvZHkmJmRvY3VtZW50LmRvY3VtZW50RWxlbWVudCl7bGU9ITA7dmFyIGU9bmV3IFJlc2l6ZU9ic2VydmVyKChmdW5jdGlvbihlKXtmb3IodmFyIG49MCx0PWU7bjx0Lmxlbmd0aDtuKyspe3ZhciByPXRbbl07ci50YXJnZXQhPT1kb2N1bWVudC5ib2R5JiZyLnRhcmdldCE9PWRvY3VtZW50LmRvY3VtZW50RWxlbWVudHx8KHNlPXZlKCkpfX0pKTtlLm9ic2VydmUoZG9jdW1lbnQuYm9keSksZS5vYnNlcnZlKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCl9fSgpLHNlKTp2ZSgpfWZ1bmN0aW9uIHZlKCl7cmV0dXJue3ZpZXdwb3J0OnBlKGdlKCkpLGRvY3VtZW50U2l6ZTpwZSgoZT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsbj1kb2N1bWVudC5ib2R5LHQ9bj9NYXRoLm1heChuLm9mZnNldEhlaWdodCxuLnNjcm9sbEhlaWdodCk6MCxyPU1hdGgubWF4KGUuY2xpZW50V2lkdGgsZS5vZmZzZXRXaWR0aCxlLnNjcm9sbFdpZHRoKSxvPU1hdGgubWF4KGUuY2xpZW50SGVpZ2h0LGUub2Zmc2V0SGVpZ2h0LGUuc2Nyb2xsSGVpZ2h0LHQpLGlzTmFOKHIpfHxpc05hTihvKT8iIjpyK2ZlK28pKSxyZXNvbHV0aW9uOnBlKHNjcmVlbi53aWR0aCtmZStzY3JlZW4uaGVpZ2h0KSxjb2xvckRlcHRoOnNjcmVlbi5jb2xvckRlcHRoLGRldmljZVBpeGVsUmF0aW86d2luZG93LmRldmljZVBpeGVsUmF0aW8sY29va2llc0VuYWJsZWQ6d2luZG93Lm5hdmlnYXRvci5jb29raWVFbmFibGVkLG9ubGluZTp3aW5kb3cubmF2aWdhdG9yLm9uTGluZSxicm93c2VyTGFuZ3VhZ2U6d2luZG93Lm5hdmlnYXRvci5sYW5ndWFnZXx8d2luZG93Lm5hdmlnYXRvci51c2VyTGFuZ3VhZ2UsZG9jdW1lbnRMYW5ndWFnZTpkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQubGFuZyx3ZWJkcml2ZXI6d2luZG93Lm5hdmlnYXRvci53ZWJkcml2ZXIsZGV2aWNlTWVtb3J5OndpbmRvdy5uYXZpZ2F0b3IuZGV2aWNlTWVtb3J5LGhhcmR3YXJlQ29uY3VycmVuY3k6d2luZG93Lm5hdmlnYXRvci5oYXJkd2FyZUNvbmN1cnJlbmN5fTt2YXIgZSxuLHQscixvfWZ1bmN0aW9uIGdlKCl7dmFyIGUsbjtpZigiaW5uZXJXaWR0aCJpbiB3aW5kb3cpZT13aW5kb3cuaW5uZXJXaWR0aCxuPXdpbmRvdy5pbm5lckhlaWdodDtlbHNle3ZhciB0PWRvY3VtZW50LmRvY3VtZW50RWxlbWVudHx8ZG9jdW1lbnQuYm9keTtlPXQuY2xpZW50V2lkdGgsbj10LmNsaWVudEhlaWdodH1yZXR1cm4gZT49MCYmbj49MD9lK2ZlK246bnVsbH1mdW5jdGlvbiBwZShlKXtyZXR1cm4gZSYmZS5zcGxpdChmZSkubWFwKChmdW5jdGlvbihlKXtyZXR1cm4gTWF0aC5mbG9vcihOdW1iZXIoZSkpfSkpLmpvaW4oZmUpfWZ1bmN0aW9uIG1lKGUsbix0LGEsdSxjKXt2b2lkIDA9PT1jJiYoYz17fSk7dmFyIGw9W10sZj1mdW5jdGlvbihlLG4sdCxhLHUsYyl7dmFyIGYsZCx2LGcsbSxoLHksdyxiLGssUyx4LFQsSSxBLEMsTyxQLEUsRCxqLE0sWixzZSxsZSxmZSx2ZSxnZSxwZTtjLmV2ZW50TWV0aG9kPW51bGwhPT0oZj1jLmV2ZW50TWV0aG9kKSYmdm9pZCAwIT09Zj9mOiJwb3N0Ijt2YXIgbWUsaGUseWU9ZnVuY3Rpb24oZSl7dmFyIG47cmV0dXJuIG51bGwhPT0obj1lLnN0YXRlU3RvcmFnZVN0cmF0ZWd5KSYmdm9pZCAwIT09bj9uOiJjb29raWVBbmRMb2NhbFN0b3JhZ2UifSx3ZT1mdW5jdGlvbihlKXt2YXIgbix0O3JldHVybiJib29sZWFuIiE9dHlwZW9mIGUuYW5vbnltb3VzVHJhY2tpbmcmJihudWxsIT09KHQ9ITA9PT0obnVsbD09PShuPWUuYW5vbnltb3VzVHJhY2tpbmcpfHx2b2lkIDA9PT1uP3ZvaWQgMDpuLndpdGhTZXNzaW9uVHJhY2tpbmcpKSYmdm9pZCAwIT09dCYmdCl9LGJlPWZ1bmN0aW9uKGUpe3ZhciBuLHQKO3JldHVybiJib29sZWFuIiE9dHlwZW9mIGUuYW5vbnltb3VzVHJhY2tpbmcmJihudWxsIT09KHQ9ITA9PT0obnVsbD09PShuPWUuYW5vbnltb3VzVHJhY2tpbmcpfHx2b2lkIDA9PT1uP3ZvaWQgMDpuLndpdGhTZXJ2ZXJBbm9ueW1pc2F0aW9uKSkmJnZvaWQgMCE9PXQmJnQpfSxrZT1mdW5jdGlvbihlKXtyZXR1cm4hIWUuYW5vbnltb3VzVHJhY2tpbmd9LFNlPW51bGwhPT0odj1udWxsPT09KGQ9bnVsbD09Yz92b2lkIDA6Yy5jb250ZXh0cyl8fHZvaWQgMD09PWQ/dm9pZCAwOmQuYnJvd3NlcikmJnZvaWQgMCE9PXYmJnYseGU9bnVsbD09PShtPW51bGw9PT0oZz1udWxsPT1jP3ZvaWQgMDpjLmNvbnRleHRzKXx8dm9pZCAwPT09Zz92b2lkIDA6Zy53ZWJQYWdlKXx8dm9pZCAwPT09bXx8bTtsLnB1c2goKG1lPWZ1bmN0aW9uKGUpe3JldHVybiBmbj9udWxsOmV9LGhlPWZ1bmN0aW9uKGUpe3JldHVybiBzbj9lOm1lKGUpfSx7YmVmb3JlVHJhY2s6ZnVuY3Rpb24oZSl7dmFyIG49Qm4oInNlcyIpLHQ9UW4oKSxyPTA9PT1mdW5jdGlvbihlKXtyZXR1cm4gZVsxMF19KHQpO2lmKFZlPSEhUGUmJiEhUShQZSksYW58fFZlKVhuKCk7ZWxzZXtjZSh0KT8oQmU9bnx8Im5vbmUiPT1kbj9hZSh0KTpyZSh0KSxnbj11ZSh0KSk6KG5ldyBEYXRlKS5nZXRUaW1lKCktdm4+MWUzKmNuJiYoZ24rKyxCZT1yZSh0LHttZW1vcml6ZWRWaXNpdENvdW50OmdufSkpLG9lKHQpLGZ1bmN0aW9uKGUsbil7aWYoMD09PWVbMTBdKXt2YXIgdD1uLmJ1aWxkKCk7ZVs4XT10LmVpZDt2YXIgcj10LmR0bXx8dC50dG07ZVs5XT1yP3BhcnNlSW50KHIpOnZvaWQgMH19KHQsZSksZnVuY3Rpb24oZSl7ZVsxMF0rPTF9KHQpO3ZhciBvPWRlKCksaT1vLnZpZXdwb3J0LGE9by5kb2N1bWVudFNpemU7ZS5hZGQoInZwIixpKSxlLmFkZCgiZHMiLGEpLGUuYWRkKCJ2aWQiLGhlKGduKSksZS5hZGQoInNpZCIsaGUoQmUpKSxlLmFkZCgiZHVpZCIsbWUoZnVuY3Rpb24oZSl7cmV0dXJuIGVbMV19KHQpKSksZS5hZGQoInVpZCIsbWUoX2UpKSxMbigpLGUuYWRkKCJyZWZyIixVbihUZXx8R2UpKSxlLmFkZCgidXJsIixVbihJZXx8RmUpKTt2YXIgdT1pZSh0LGRuLGZuKTtpZighYm58fGZuJiYhc258fGZ1bmN0aW9uKGUsbil7dmFyIHQ9e3NjaGVtYTplZSxkYXRhOm59O2UuYWRkQ29udGV4dEVudGl0eSh0KX0oZSx1KSwibm9uZSIhPWRuKXtGbih0KTt2YXIgYz1xbigpO24mJiFyfHwhY3x8IWtufHxTbnx8KGtuKHUpLFNuPSExKX12bj0obmV3IERhdGUpLmdldFRpbWUoKX19fSkpLHhlJiZsLnB1c2goe2NvbnRleHRzOmZ1bmN0aW9uKCl7cmV0dXJuW3tzY2hlbWE6SyxkYXRhOntpZDokbigpfX1dfX0pLFNlJiZsLnB1c2goe2NvbnRleHRzOmZ1bmN0aW9uKCl7cmV0dXJuW3tzY2hlbWE6JCxkYXRhOnIocih7fSxkZSgpKSx7dGFiSWQ6ZXQoKX0pfV19fSksbC5wdXNoLmFwcGx5KGwsbnVsbCE9PShoPWMucGx1Z2lucykmJnZvaWQgMCE9PWg/aDpbXSk7dmFyIFRlLEllLEFlLENlLE9lLFBlLEVlLExlLERlLGplLFVlLFJlLE5lLEJlLF9lLFZlLE1lLHplPUwoe2Jhc2U2NDpjLmVuY29kZUJhc2U2NCxjb3JlUGx1Z2luczpsLGNhbGxiYWNrOmZ1bmN0aW9uKGUpe2FufHxWZXx8cG4uZW5xdWV1ZVJlcXVlc3QoZS5idWlsZCgpLFdlKX0KfSksSGU9ZG9jdW1lbnQuY2hhcmFjdGVyU2V0fHxkb2N1bWVudC5jaGFyc2V0LEplPXRlKHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSx3aW5kb3cubG9jYXRpb24uaHJlZixGKCkpLHFlPXEoSmVbMF0pLEZlPUplWzFdLEdlPUplWzJdLFhlPW51bGwhPT0oeT1jLnBsYXRmb3JtKSYmdm9pZCAwIT09eT95OiJ3ZWIiLFdlPVpuKGEpLFllPW51bGwhPT0odz1jLnBvc3RQYXRoKSYmdm9pZCAwIT09dz93OiIvY29tLnNub3dwbG93YW5hbHl0aWNzLnNub3dwbG93L3RwMiIsUWU9bnVsbCE9PShiPWMuYXBwSWQpJiZ2b2lkIDAhPT1iP2I6IiIsWmU9ZG9jdW1lbnQudGl0bGUsS2U9bnVsbD09PShrPWMucmVzZXRBY3Rpdml0eVRyYWNraW5nT25QYWdlVmlldyl8fHZvaWQgMD09PWt8fGssJGU9bnVsbCE9PShTPWMuY29va2llTmFtZSkmJnZvaWQgMCE9PVM/UzoiX3NwXyIsZW49bnVsbCE9PSh4PWMuY29va2llRG9tYWluKSYmdm9pZCAwIT09eD94OnZvaWQgMCxubj0iLyIsdG49bnVsbCE9PShUPWMuY29va2llU2FtZVNpdGUpJiZ2b2lkIDAhPT1UP1Q6Ik5vbmUiLHJuPW51bGw9PT0oST1jLmNvb2tpZVNlY3VyZSl8fHZvaWQgMD09PUl8fEksb249d2luZG93Lm5hdmlnYXRvci5kb05vdFRyYWNrfHx3aW5kb3cubmF2aWdhdG9yLm1zRG9Ob3RUcmFja3x8d2luZG93LmRvTm90VHJhY2ssYW49dm9pZCAwIT09Yy5yZXNwZWN0RG9Ob3RUcmFjayYmKGMucmVzcGVjdERvTm90VHJhY2smJigieWVzIj09PW9ufHwiMSI9PT1vbikpLHVuPW51bGwhPT0oQT1jLmNvb2tpZUxpZmV0aW1lKSYmdm9pZCAwIT09QT9BOjYzMDcyZTMsY249bnVsbCE9PShDPWMuc2Vzc2lvbkNvb2tpZVRpbWVvdXQpJiZ2b2lkIDAhPT1DP0M6MTgwMCxzbj13ZShjKSxsbj1iZShjKSxmbj1rZShjKSxkbj15ZShjKSx2bj0obmV3IERhdGUpLmdldFRpbWUoKSxnbj0xLHBuPW5lKGUsdSwibG9jYWxTdG9yYWdlIj09ZG58fCJjb29raWVBbmRMb2NhbFN0b3JhZ2UiPT1kbixjLmV2ZW50TWV0aG9kLFllLG51bGwhPT0oTz1jLmJ1ZmZlclNpemUpJiZ2b2lkIDAhPT1PP086MSxudWxsIT09KFA9Yy5tYXhQb3N0Qnl0ZXMpJiZ2b2lkIDAhPT1QP1A6NGU0LG51bGwhPT0oRT1jLm1heEdldEJ5dGVzKSYmdm9pZCAwIT09RT9FOjAsbnVsbD09PShEPWMudXNlU3RtKXx8dm9pZCAwPT09RHx8RCxudWxsIT09KGo9Yy5tYXhMb2NhbFN0b3JhZ2VRdWV1ZVNpemUpJiZ2b2lkIDAhPT1qP2o6MWUzLG51bGwhPT0oTT1jLmNvbm5lY3Rpb25UaW1lb3V0KSYmdm9pZCAwIT09TT9NOjVlMyxsbixudWxsIT09KFo9Yy5jdXN0b21IZWFkZXJzKSYmdm9pZCAwIT09Wj9aOnt9LG51bGw9PT0oc2U9Yy53aXRoQ3JlZGVudGlhbHMpfHx2b2lkIDA9PT1zZXx8c2UsbnVsbCE9PShsZT1jLnJldHJ5U3RhdHVzQ29kZXMpJiZ2b2lkIDAhPT1sZT9sZTpbXSwobnVsbCE9PShmZT1jLmRvbnRSZXRyeVN0YXR1c0NvZGVzKSYmdm9pZCAwIT09ZmU/ZmU6W10pLmNvbmNhdChbNDAwLDQwMSw0MDMsNDEwLDQyMl0pLGMuaWRTZXJ2aWNlLGMucmV0cnlGYWlsZWRSZXF1ZXN0cyxjLm9uUmVxdWVzdFN1Y2Nlc3MsYy5vblJlcXVlc3RGYWlsdXJlKSxtbj0hMSxobj1udWxsIT09KHZlPWMucHJlc2VydmVQYWdlVmlld0lkRm9yVXJsKSYmdm9pZCAwIT09dmUmJnZlLHluPXZvaWQgMCx3bj17ZW5hYmxlZDohMSxpbnN0YWxsZWQ6ITEsY29uZmlndXJhdGlvbnM6e319LGJuPW51bGwhPT0ocGU9bnVsbD09PShnZT1jLmNvbnRleHRzKXx8dm9pZCAwPT09Z2U/dm9pZCAwOmdlLnNlc3Npb24pJiZ2b2lkIDAhPT1wZSYmcGUsa249Yy5vblNlc3Npb25VcGRhdGVDYWxsYmFjayxTbj0hMSx4bj0iYm9vbGVhbiI9PXR5cGVvZihNZT1jLnVzZUV4dGVuZGVkQ3Jvc3NEb21haW5MaW5rZXJ8fCExKT97dXNlRXh0ZW5kZWRDcm9zc0RvbWFpbkxpbmtlcjpNZX06e3VzZUV4dGVuZGVkQ3Jvc3NEb21haW5MaW5rZXI6ITAsY29sbGVjdENyb3NzRG9tYWluQXR0cmlidXRlczpNZX0sVG49eG4udXNlRXh0ZW5kZWRDcm9zc0RvbWFpbkxpbmtlcixJbj14bi5jb2xsZWN0Q3Jvc3NEb21haW5BdHRyaWJ1dGVzO2MuaGFzT3duUHJvcGVydHkoImRpc2NvdmVyUm9vdERvbWFpbiIpJiZjLmRpc2NvdmVyUm9vdERvbWFpbiYmKGVuPWZ1bmN0aW9uKGUsbil7Zm9yKHZhciB0PXdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSxyPSJfc3Bfcm9vdF9kb21haW5fdGVzdF8iLG89cisobmV3IERhdGUpLmdldFRpbWUoKSxpPSJfdGVzdF92YWx1ZV8iKyhuZXcgRGF0ZSkuZ2V0VGltZSgpLGE9dC5zcGxpdCgiLiIpLHU9YS5sZW5ndGgtMjt1Pj0wO3UtLSl7dmFyIGM9YS5zbGljZSh1KS5qb2luKCIuIik7aWYoUShvLGksMCwiLyIsYyxlLG4pLFEobyk9PT1pKXtXKG8sYyxlLG4pO2Zvcih2YXIgcz1ZKHIpLGw9MDtsPHMubGVuZ3RoO2wrKylXKHNbbF0sYyxlLG4pO3JldHVybiBjfX1yZXR1cm4gdH0odG4scm4pKTt2YXIgQW49ZGUoKSxDbj1Bbi5icm93c2VyTGFuZ3VhZ2UsT249QW4ucmVzb2x1dGlvbixQbj1Bbi5jb2xvckRlcHRoLEVuPUFuLmNvb2tpZXNFbmFibGVkO2Z1bmN0aW9uIExuKCl7KEplPXRlKHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSx3aW5kb3cubG9jYXRpb24uaHJlZixGKCkpKVsxXSE9PUZlJiYoR2U9RihGZSkpLHFlPXEoSmVbMF0pLEZlPUplWzFdfWZ1bmN0aW9uIERuKGUpe3JldHVybiBmdW5jdGlvbihuKXt2YXIgdD1uLmN1cnJlbnRUYXJnZXQsbz1mdW5jdGlvbihlLG4sdCl7dmFyIG8saT0obmV3IERhdGUpLmdldFRpbWUoKSxhPXIocih7fSxfKSxuKSx1PXQuZG9tYWluVXNlcklkLGM9dC51c2VySWQscz10LnNlc3Npb25JZCxsPXQuc291cmNlSWQsZj10LnNvdXJjZVBsYXRmb3JtLGQ9dC5ldmVudCx2PWQuY3VycmVudFRhcmdldCxnPSJmdW5jdGlvbiI9PXR5cGVvZiBhLnJlYXNvbj9hLnJlYXNvbihkKTpudWxsPT09KG89bnVsbD09dj92b2lkIDA6di50ZXh0Q29udGVudCl8fHZvaWQgMD09PW8/dm9pZCAwOm8udHJpbSgpCjtyZXR1cm4gZT9bdSxpLGEuc2Vzc2lvbklkJiZzLGEudXNlcklkJiZWKGN8fCIiKSxhLnNvdXJjZUlkJiZWKGx8fCIiKSxhLnNvdXJjZVBsYXRmb3JtJiZmLGEucmVhc29uJiZWKGd8fCIiKV0ubWFwKChmdW5jdGlvbihlKXtyZXR1cm4gZXx8IiJ9KSkuam9pbigiLiIpLnJlcGxhY2UoLyhbLl0qJCkvLCIiKTp0LmRvbWFpblVzZXJJZCsiLiIraX0oZSxJbix7ZG9tYWluVXNlcklkOk5lLHVzZXJJZDpfZXx8dm9pZCAwLHNlc3Npb25JZDpCZSxzb3VyY2VJZDpRZSxzb3VyY2VQbGF0Zm9ybTpYZSxldmVudDpufSk7KG51bGw9PXQ/dm9pZCAwOnQuaHJlZikmJih0LmhyZWY9ZnVuY3Rpb24oZSxuLHQpe3ZhciByPW4rIj0iK3Qsbz1lLnNwbGl0KCIjIiksaT1vWzBdLnNwbGl0KCI/IiksYT1pLnNoaWZ0KCksdT1pLmpvaW4oIj8iKTtpZih1KXtmb3IodmFyIGM9ITAscz11LnNwbGl0KCImIiksbD0wO2w8cy5sZW5ndGg7bCsrKWlmKHNbbF0uc3Vic3RyKDAsbi5sZW5ndGgrMSk9PT1uKyI9Iil7Yz0hMSxzW2xdPXIsdT1zLmpvaW4oIiYiKTticmVha31jJiYodT1yKyImIit1KX1lbHNlIHU9cjtyZXR1cm4gb1swXT1hKyI/Iit1LG8uam9pbigiIyIpfSh0LmhyZWYsIl9zcCIsbykpfX1mdW5jdGlvbiBqbihlKXtmb3IodmFyIG49RG4oVG4pLHQ9MDt0PGRvY3VtZW50LmxpbmtzLmxlbmd0aDt0Kyspe3ZhciByPWRvY3VtZW50LmxpbmtzW3RdOyFyLnNwRGVjb3JhdGlvbkVuYWJsZWQmJmUocikmJihyLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixuLCEwKSxyLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsbiwhMCksci5zcERlY29yYXRpb25FbmFibGVkPSEwKX19ZnVuY3Rpb24gVW4oZSl7dmFyIG47cmV0dXJuIENlJiYobj1uZXcgUmVnRXhwKCIjLioiKSxlPWUucmVwbGFjZShuLCIiKSksT2UmJihuPW5ldyBSZWdFeHAoIlt7fV0iLCJnIiksZT1lLnJlcGxhY2UobiwiIikpLGV9ZnVuY3Rpb24gUm4oZSl7dmFyIG49bmV3IFJlZ0V4cCgiXihbYS16XSspOiIpLmV4ZWMoZSk7cmV0dXJuIG4/blsxXTpudWxsfWZ1bmN0aW9uIE5uKGUpe3JldHVybiAkZStlKyIuIitSZX1mdW5jdGlvbiBCbihlKXt2YXIgbj1ObihlKTtyZXR1cm4ibG9jYWxTdG9yYWdlIj09ZG4/ZnVuY3Rpb24oZSl7dHJ5e3ZhciBuPXdpbmRvdy5sb2NhbFN0b3JhZ2UsdD1uLmdldEl0ZW0oZSsiLmV4cGlyZXMiKTtyZXR1cm4gbnVsbD09PXR8fCt0PkRhdGUubm93KCk/bi5nZXRJdGVtKGUpOihuLnJlbW92ZUl0ZW0oZSksdm9pZCBuLnJlbW92ZUl0ZW0oZSsiLmV4cGlyZXMiKSl9Y2F0Y2goZSl7cmV0dXJufX0obik6ImNvb2tpZSI9PWRufHwiY29va2llQW5kTG9jYWxTdG9yYWdlIj09ZG4/UShuKTp2b2lkIDB9ZnVuY3Rpb24gX24oKXtMbigpLFJlPVUoKSgoZW58fHFlKSsobm58fCIvIikpLnNsaWNlKDAsNCl9ZnVuY3Rpb24gVm4oKXt2YXIgZT1uZXcgRGF0ZTtFZT1lLmdldFRpbWUoKX1mdW5jdGlvbiBNbigpeyFmdW5jdGlvbigpe3ZhciBlPXpuKCksbj1lWzBdO248TGU/TGU9bjpuPkRlJiYoRGU9bik7dmFyIHQ9ZVsxXTt0PGplP2plPXQ6dD5VZSYmKFVlPXQpfSgpLFZuKCl9ZnVuY3Rpb24gem4oKXt2YXIgZT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ7cmV0dXJuIGU/W2Uuc2Nyb2xsTGVmdHx8d2luZG93LnBhZ2VYT2Zmc2V0LGUuc2Nyb2xsVG9wfHx3aW5kb3cucGFnZVlPZmZzZXRdOlswLDBdfWZ1bmN0aW9uIEhuKCl7dmFyIGU9em4oKSxuPWVbMF07TGU9bixEZT1uO3ZhciB0PWVbMV07amU9dCxVZT10fWZ1bmN0aW9uIEpuKGUpe3JldHVybiBNYXRoLnJvdW5kKGUpfWZ1bmN0aW9uIHFuKCl7cmV0dXJuIEduKE5uKCJzZXMiKSwiKiIsY24pfWZ1bmN0aW9uIEZuKGUpe3ZhciBuPU5uKCJpZCIpLHQ9ZnVuY3Rpb24oZSxuKXt2YXIgdD1vKFtdLGUsITApO3JldHVybiBuJiYodFsxXT0iIix0WzddPSIiKSx0LnNoaWZ0KCksdC5qb2luKCIuIil9KGUsZm4pO3JldHVybiBHbihuLHQsdW4pfWZ1bmN0aW9uIEduKGUsbix0KXtyZXR1cm4hKGZuJiYhc24pJiYoImxvY2FsU3RvcmFnZSI9PWRuP1IoZSxuLHQpOigiY29va2llIj09ZG58fCJjb29raWVBbmRMb2NhbFN0b3JhZ2UiPT1kbikmJihRKGUsbix0LG5uLGVuLHRuLHJuKSwtMSE9PWRvY3VtZW50LmNvb2tpZS5pbmRleE9mKCIiLmNvbmNhdChlLCI9IikpKSl9ZnVuY3Rpb24gWG4oZSl7dmFyIG49Tm4oImlkIiksdD1Obigic2VzIik7TihuKSxOKHQpLFcobixlbix0bixybiksVyh0LGVuLHRuLHJuKSwobnVsbD09ZT92b2lkIDA6ZS5wcmVzZXJ2ZVNlc3Npb24pfHwoQmU9KDAsaS52NCkoKSxnbj0xKSwobnVsbD09ZT92b2lkIDA6ZS5wcmVzZXJ2ZVVzZXIpfHwoTmU9Zm4/IiI6KDAsaS52NCkoKSxfZT1udWxsKX1mdW5jdGlvbiBXbihlKXtlJiZlLnN0YXRlU3RvcmFnZVN0cmF0ZWd5JiYoYy5zdGF0ZVN0b3JhZ2VTdHJhdGVneT1lLnN0YXRlU3RvcmFnZVN0cmF0ZWd5LGRuPXllKGMpKSxmbj1rZShjKSxzbj13ZShjKSxsbj1iZShjKSxwbi5zZXRVc2VMb2NhbFN0b3JhZ2UoImxvY2FsU3RvcmFnZSI9PWRufHwiY29va2llQW5kTG9jYWxTdG9yYWdlIj09ZG4pLHBuLnNldEFub255bW91c1RyYWNraW5nKGxuKX1mdW5jdGlvbiBZbigpe2lmKCFmbnx8c24pe3ZhciBlPSJub25lIiE9ZG4mJiEhQm4oInNlcyIpLG49UW4oKTtOZT1mdW5jdGlvbihlLG4pe3ZhciB0O3JldHVybiBlWzFdP3Q9ZVsxXTpuPyh0PSIiLGVbMV09dCk6KHQ9KDAsaS52NCkoKSxlWzFdPXQpLHR9KG4sZm4pLEJlPWU/YWUobik6cmUobiksZ249dWUobiksIm5vbmUiIT1kbiYmKHFuKCksb2UobiksRm4obikpfX1mdW5jdGlvbiBRbigpe3JldHVybiJub25lIj09ZG4/WyIxIiwiIiwwLDAsMCx2b2lkIDAsIiIsIiIsIiIsdm9pZCAwLDBdOmZ1bmN0aW9uKGUsbix0LHIpe3ZhciBvLGE9bmV3IERhdGUsdT1NYXRoLnJvdW5kKGEuZ2V0VGltZSgpLzFlMyk7ZT8obz1lLnNwbGl0KCIuIikpLnVuc2hpZnQoIjAiKTpvPVsiMSIsbix1LHIsdSwiIix0XSxvWzZdJiYidW5kZWZpbmVkIiE9PW9bNl18fChvWzZdPSgwLGkudjQpKCkpLG9bN10mJiJ1bmRlZmluZWQiIT09b1s3XXx8KG9bN109IiIpLApvWzhdJiYidW5kZWZpbmVkIiE9PW9bOF18fChvWzhdPSIiKSxvWzldJiYidW5kZWZpbmVkIiE9PW9bOV18fChvWzldPSIiKSxvWzEwXSYmInVuZGVmaW5lZCIhPT1vWzEwXXx8KG9bMTBdPTApO3ZhciBjPWZ1bmN0aW9uKGUsbil7dmFyIHQ9cGFyc2VJbnQoZSk7cmV0dXJuIGlzTmFOKHQpP246dH0scz1mdW5jdGlvbihlKXtyZXR1cm4gZT9jKGUsdm9pZCAwKTp2b2lkIDB9O3JldHVybltvWzBdLG9bMV0sYyhvWzJdLHUpLGMob1szXSxyKSxjKG9bNF0sdSkscyhvWzVdKSxvWzZdLG9bN10sb1s4XSxzKG9bOV0pLGMob1sxMF0sMCldfShCbigiaWQiKXx8dm9pZCAwLE5lLEJlLGduKX1mdW5jdGlvbiBabihlKXtyZXR1cm4gMD09PWUuaW5kZXhPZigiaHR0cCIpP2U6KCJodHRwczoiPT09ZG9jdW1lbnQubG9jYXRpb24ucHJvdG9jb2w/Imh0dHBzIjoiaHR0cCIpKyI6Ly8iK2V9ZnVuY3Rpb24gS24oKXttbiYmbnVsbCE9dS5wYWdlVmlld0lkfHwodS5wYWdlVmlld0lkPSgwLGkudjQpKCksdS5wYWdlVmlld1VybD1JZXx8RmUpfWZ1bmN0aW9uICRuKCl7cmV0dXJuIGZ1bmN0aW9uKCl7aWYobnVsbD09dS5wYWdlVmlld0lkKXJldHVybiEwO2lmKG1ufHwhaG4pcmV0dXJuITE7aWYodm9pZCAwPT09dS5wYWdlVmlld1VybClyZXR1cm4hMDt2YXIgZT1JZXx8RmU7aWYoITA9PT1obnx8ImZ1bGwiPT1obnx8ISgiVVJMImluIHdpbmRvdykpcmV0dXJuIHUucGFnZVZpZXdVcmwhPWU7dmFyIG49bmV3IFVSTChlKSx0PW5ldyBVUkwodS5wYWdlVmlld1VybCk7aWYoInBhdGhuYW1lIj09aG4pcmV0dXJuIG4ucGF0aG5hbWUhPXQucGF0aG5hbWU7aWYoInBhdGhuYW1lQW5kU2VhcmNoIj09aG4pcmV0dXJuIG4ucGF0aG5hbWUhPXQucGF0aG5hbWV8fG4uc2VhcmNoIT10LnNlYXJjaDtyZXR1cm4hMX0oKSYmKHUucGFnZVZpZXdJZD0oMCxpLnY0KSgpLHUucGFnZVZpZXdVcmw9SWV8fEZlKSx1LnBhZ2VWaWV3SWR9ZnVuY3Rpb24gZXQoKXtpZigibm9uZSI9PT1kbnx8Zm58fCF4ZSlyZXR1cm4gbnVsbDt2YXIgZT0iX3NwX3RhYl9pZCIsbj1CKGUpO3JldHVybiBufHwoIWZ1bmN0aW9uKGUsbil7dHJ5e3JldHVybiB3aW5kb3cuc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbShlLG4pLCEwfWNhdGNoKGUpe3JldHVybiExfX0oZSwoMCxpLnY0KSgpKSxuPUIoZSkpLG58fG51bGx9ZnVuY3Rpb24gbnQoZSxuKXtyZXR1cm4oZXx8W10pLmNvbmNhdChuP24oKTpbXSl9ZnVuY3Rpb24gdHQoZSl7dmFyIG49ZS50aXRsZSx0PWUuY29udGV4dCxyPWUudGltZXN0YW1wLG89ZS5jb250ZXh0Q2FsbGJhY2s7TG4oKSx5biYmeW49PSRuKCkmJktuKCkseW49JG4oKSxaZT1kb2N1bWVudC50aXRsZTt2YXIgaT1IKChBZT1udWxsIT1uP246QWUpfHxaZSk7emUudHJhY2soZnVuY3Rpb24oZSl7dmFyIG49ZS5wYWdlVXJsLHQ9ZS5wYWdlVGl0bGUscj1lLnJlZmVycmVyLG89cygpO3JldHVybiBvLmFkZCgiZSIsInB2Iiksby5hZGQoInVybCIsbiksby5hZGQoInBhZ2UiLHQpLG8uYWRkKCJyZWZyIixyKSxvfSh7cGFnZVVybDpVbihJZXx8RmUpLHBhZ2VUaXRsZTppLHJlZmVycmVyOlVuKFRlfHxHZSl9KSxudCh0LG8pLHIpO3ZhciBhPW5ldyBEYXRlLHU9ITE7aWYod24uZW5hYmxlZCYmIXduLmluc3RhbGxlZCl7d24uaW5zdGFsbGVkPSEwLHU9ITA7dmFyIGM9e3VwZGF0ZTpmdW5jdGlvbigpe2lmKCJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiYiZnVuY3Rpb24iPT10eXBlb2Ygd2luZG93LmFkZEV2ZW50TGlzdGVuZXIpe3ZhciBlPSExLG49T2JqZWN0LmRlZmluZVByb3BlcnR5KHt9LCJwYXNzaXZlIix7Z2V0OmZ1bmN0aW9uKCl7ZT0hMH0sc2V0OmZ1bmN0aW9uKCl7fX0pLHQ9ZnVuY3Rpb24oKXt9O3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJ0ZXN0UGFzc2l2ZUV2ZW50U3VwcG9ydCIsdCxuKSx3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigidGVzdFBhc3NpdmVFdmVudFN1cHBvcnQiLHQsbiksYy5oYXNTdXBwb3J0PWV9fX07Yy51cGRhdGUoKTt2YXIgbD0ib253aGVlbCJpbiBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKT8id2hlZWwiOnZvaWQgMCE9PWRvY3VtZW50Lm9ubW91c2V3aGVlbD8ibW91c2V3aGVlbCI6IkRPTU1vdXNlU2Nyb2xsIjtPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYywiaGFzU3VwcG9ydCIpP0coZG9jdW1lbnQsbCxWbix7cGFzc2l2ZTohMH0pOkcoZG9jdW1lbnQsbCxWbiksSG4oKTt2YXIgZj1mdW5jdGlvbihlLG4pe3JldHVybiB2b2lkIDA9PT1uJiYobj1WbiksZnVuY3Rpb24oZSl7cmV0dXJuIEcoZG9jdW1lbnQsZSxuKX19O1siY2xpY2siLCJtb3VzZXVwIiwibW91c2Vkb3duIiwibW91c2Vtb3ZlIiwia2V5cHJlc3MiLCJrZXlkb3duIiwia2V5dXAiLCJ0b3VjaGVuZCIsInRvdWNoc3RhcnQiXS5mb3JFYWNoKGYoZG9jdW1lbnQpKSxbInJlc2l6ZSIsImZvY3VzIiwiYmx1ciJdLmZvckVhY2goZih3aW5kb3cpKSxmKHdpbmRvdyxNbikoInNjcm9sbCIpfWlmKHduLmVuYWJsZWQmJihLZXx8dSkpe0VlPWEuZ2V0VGltZSgpO3ZhciBkPXZvaWQgMDtmb3IoZCBpbiB3bi5jb25maWd1cmF0aW9ucyl7dmFyIHY9d24uY29uZmlndXJhdGlvbnNbZF07diYmKHdpbmRvdy5jbGVhckludGVydmFsKHYuYWN0aXZpdHlJbnRlcnZhbCkscnQodix0LG8pKX19fWZ1bmN0aW9uIHJ0KGUsbix0KXt2YXIgcj1mdW5jdGlvbihlLG4pe0xuKCksZSh7Y29udGV4dDpuLHBhZ2VWaWV3SWQ6JG4oKSxtaW5YT2Zmc2V0OkxlLG1pbllPZmZzZXQ6amUsbWF4WE9mZnNldDpEZSxtYXhZT2Zmc2V0OlVlfSksSG4oKX0sbz1mdW5jdGlvbigpe3ZhciBvPW5ldyBEYXRlO0VlK2UuY29uZmlnSGVhcnRCZWF0VGltZXI+by5nZXRUaW1lKCkmJnIoZS5jYWxsYmFjayxudChuLHQpKX07MD09PWUuY29uZmlnTWluaW11bVZpc2l0TGVuZ3RoP2UuYWN0aXZpdHlJbnRlcnZhbD13aW5kb3cuc2V0SW50ZXJ2YWwobyxlLmNvbmZpZ0hlYXJ0QmVhdFRpbWVyKTplLmFjdGl2aXR5SW50ZXJ2YWw9d2luZG93LnNldFRpbWVvdXQoKGZ1bmN0aW9uKCl7dmFyIGk9bmV3IERhdGUKO0VlK2UuY29uZmlnTWluaW11bVZpc2l0TGVuZ3RoPmkuZ2V0VGltZSgpJiZyKGUuY2FsbGJhY2ssbnQobix0KSksZS5hY3Rpdml0eUludGVydmFsPXdpbmRvdy5zZXRJbnRlcnZhbChvLGUuY29uZmlnSGVhcnRCZWF0VGltZXIpfSksZS5jb25maWdNaW5pbXVtVmlzaXRMZW5ndGgpfWZ1bmN0aW9uIG90KGUpe3ZhciBuPWUubWluaW11bVZpc2l0TGVuZ3RoLHQ9ZS5oZWFydGJlYXREZWxheSxyPWUuY2FsbGJhY2s7aWYoeihuKSYmeih0KSlyZXR1cm57Y29uZmlnTWluaW11bVZpc2l0TGVuZ3RoOjFlMypuLGNvbmZpZ0hlYXJ0QmVhdFRpbWVyOjFlMyp0LGNhbGxiYWNrOnJ9O3AuZXJyb3IoIkFjdGl2aXR5IHRyYWNraW5nIG1pbmltdW1WaXNpdExlbmd0aCAmIGhlYXJ0YmVhdERlbGF5IG11c3QgYmUgaW50ZWdlcnMiKX1mdW5jdGlvbiBpdChlKXt2YXIgbj1lLmNvbnRleHQsdD1lLm1pblhPZmZzZXQscj1lLm1pbllPZmZzZXQsbz1lLm1heFhPZmZzZXQsaT1lLm1heFlPZmZzZXQsYT1kb2N1bWVudC50aXRsZTthIT09WmUmJihaZT1hLEFlPXZvaWQgMCksemUudHJhY2soZnVuY3Rpb24oZSl7dmFyIG49ZS5wYWdlVXJsLHQ9ZS5wYWdlVGl0bGUscj1lLnJlZmVycmVyLG89ZS5taW5YT2Zmc2V0LGk9ZS5tYXhYT2Zmc2V0LGE9ZS5taW5ZT2Zmc2V0LHU9ZS5tYXhZT2Zmc2V0LGM9cygpO3JldHVybiBjLmFkZCgiZSIsInBwIiksYy5hZGQoInVybCIsbiksYy5hZGQoInBhZ2UiLHQpLGMuYWRkKCJyZWZyIixyKSxvJiYhaXNOYU4oTnVtYmVyKG8pKSYmYy5hZGQoInBwX21peCIsby50b1N0cmluZygpKSxpJiYhaXNOYU4oTnVtYmVyKGkpKSYmYy5hZGQoInBwX21heCIsaS50b1N0cmluZygpKSxhJiYhaXNOYU4oTnVtYmVyKGEpKSYmYy5hZGQoInBwX21peSIsYS50b1N0cmluZygpKSx1JiYhaXNOYU4oTnVtYmVyKHUpKSYmYy5hZGQoInBwX21heSIsdS50b1N0cmluZygpKSxjfSh7cGFnZVVybDpVbihJZXx8RmUpLHBhZ2VUaXRsZTpIKEFlfHxaZSkscmVmZXJyZXI6VW4oVGV8fEdlKSxtaW5YT2Zmc2V0OkpuKHQpLG1heFhPZmZzZXQ6Sm4obyksbWluWU9mZnNldDpKbihyKSxtYXhZT2Zmc2V0OkpuKGkpfSksbil9ZnVuY3Rpb24gYXQoZSl7dmFyIG49d24uY29uZmlndXJhdGlvbnNbZV07MD09PShudWxsPT1uP3ZvaWQgMDpuLmNvbmZpZ01pbmltdW1WaXNpdExlbmd0aCk/d2luZG93LmNsZWFyVGltZW91dChudWxsPT1uP3ZvaWQgMDpuLmFjdGl2aXR5SW50ZXJ2YWwpOndpbmRvdy5jbGVhckludGVydmFsKG51bGw9PW4/dm9pZCAwOm4uYWN0aXZpdHlJbnRlcnZhbCksd24uY29uZmlndXJhdGlvbnNbZV09dm9pZCAwfXplLnNldFRyYWNrZXJWZXJzaW9uKHQpLHplLnNldFRyYWNrZXJOYW1lc3BhY2UobiksemUuc2V0QXBwSWQoUWUpLHplLnNldFBsYXRmb3JtKFhlKSx6ZS5hZGRQYXlsb2FkUGFpcigiY29va2llIixFbj8iMSI6IjAiKSx6ZS5hZGRQYXlsb2FkUGFpcigiY3MiLEhlKSx6ZS5hZGRQYXlsb2FkUGFpcigibGFuZyIsQ24pLHplLmFkZFBheWxvYWRQYWlyKCJyZXMiLE9uKSx6ZS5hZGRQYXlsb2FkUGFpcigiY2QiLFBuKSxfbigpLFluKCksYy5jcm9zc0RvbWFpbkxpbmtlciYmam4oYy5jcm9zc0RvbWFpbkxpbmtlcik7dmFyIHV0PXtnZXREb21haW5TZXNzaW9uSW5kZXg6ZnVuY3Rpb24oKXtyZXR1cm4gZ259LGdldFBhZ2VWaWV3SWQ6JG4sZ2V0VGFiSWQ6ZXQsbmV3U2Vzc2lvbjpmdW5jdGlvbigpe3ZhciBlPVFuKCk7aWYoY2UoZSk/KEJlPSJub25lIiE9ZG4/cmUoZSk6YWUoZSksZ249dWUoZSkpOihnbisrLEJlPXJlKGUse21lbW9yaXplZFZpc2l0Q291bnQ6Z259KSksb2UoZSksIm5vbmUiIT1kbil7dmFyIG49aWUoZSxkbixmbik7Rm4oZSkscW4oKSYma24mJihTbj0hMCxrbihuKSl9dm49KG5ldyBEYXRlKS5nZXRUaW1lKCl9LGdldENvb2tpZU5hbWU6ZnVuY3Rpb24oZSl7cmV0dXJuIE5uKGUpfSxnZXRVc2VySWQ6ZnVuY3Rpb24oKXtyZXR1cm4gX2V9LGdldERvbWFpblVzZXJJZDpmdW5jdGlvbigpe3JldHVybiBRbigpWzFdfSxnZXREb21haW5Vc2VySW5mbzpmdW5jdGlvbigpe3JldHVybiBRbigpfSxzZXRSZWZlcnJlclVybDpmdW5jdGlvbihlKXtUZT1lfSxzZXRDdXN0b21Vcmw6ZnVuY3Rpb24oZSl7TG4oKSxJZT1mdW5jdGlvbihlLG4pe3ZhciB0O3JldHVybiBSbihuKT9uOiIvIj09PW4uc2xpY2UoMCwxKT9SbihlKSsiOi8vIitKKGUpK246KCh0PShlPVVuKGUpKS5pbmRleE9mKCI/IikpPj0wJiYoZT1lLnNsaWNlKDAsdCkpLCh0PWUubGFzdEluZGV4T2YoIi8iKSkhPT1lLmxlbmd0aC0xJiYoZT1lLnNsaWNlKDAsdCsxKSksZStuKX0oRmUsZSl9LHNldERvY3VtZW50VGl0bGU6ZnVuY3Rpb24oZSl7WmU9ZG9jdW1lbnQudGl0bGUsQWU9ZX0sZGlzY2FyZEhhc2hUYWc6ZnVuY3Rpb24oZSl7Q2U9ZX0sZGlzY2FyZEJyYWNlOmZ1bmN0aW9uKGUpe09lPWV9LHNldENvb2tpZVBhdGg6ZnVuY3Rpb24oZSl7bm49ZSxfbigpfSxzZXRWaXNpdG9yQ29va2llVGltZW91dDpmdW5jdGlvbihlKXt1bj1lfSxjcm9zc0RvbWFpbkxpbmtlcjpmdW5jdGlvbihlKXtqbihlKX0sZW5hYmxlQWN0aXZpdHlUcmFja2luZzpmdW5jdGlvbihlKXt3bi5jb25maWd1cmF0aW9ucy5wYWdlUGluZ3x8KHduLmVuYWJsZWQ9ITAsd24uY29uZmlndXJhdGlvbnMucGFnZVBpbmc9b3QocihyKHt9LGUpLHtjYWxsYmFjazppdH0pKSl9LGVuYWJsZUFjdGl2aXR5VHJhY2tpbmdDYWxsYmFjazpmdW5jdGlvbihlKXt3bi5jb25maWd1cmF0aW9ucy5jYWxsYmFja3x8KHduLmVuYWJsZWQ9ITAsd24uY29uZmlndXJhdGlvbnMuY2FsbGJhY2s9b3QoZSkpfSxkaXNhYmxlQWN0aXZpdHlUcmFja2luZzpmdW5jdGlvbigpe2F0KCJwYWdlUGluZyIpfSxkaXNhYmxlQWN0aXZpdHlUcmFja2luZ0NhbGxiYWNrOmZ1bmN0aW9uKCl7YXQoImNhbGxiYWNrIil9LHVwZGF0ZVBhZ2VBY3Rpdml0eTpmdW5jdGlvbigpe1ZuKCl9LHNldE9wdE91dENvb2tpZTpmdW5jdGlvbihlKXtQZT1lfSxzZXRVc2VySWQ6ZnVuY3Rpb24oZSl7X2U9ZX0sc2V0VXNlcklkRnJvbUxvY2F0aW9uOmZ1bmN0aW9uKGUpe0xuKCksX2U9WChlLEZlKX0sCnNldFVzZXJJZEZyb21SZWZlcnJlcjpmdW5jdGlvbihlKXtMbigpLF9lPVgoZSxHZSl9LHNldFVzZXJJZEZyb21Db29raWU6ZnVuY3Rpb24oZSl7X2U9UShlKX0sc2V0Q29sbGVjdG9yVXJsOmZ1bmN0aW9uKGUpe1dlPVpuKGUpLHBuLnNldENvbGxlY3RvclVybChXZSl9LHNldEJ1ZmZlclNpemU6ZnVuY3Rpb24oZSl7cG4uc2V0QnVmZmVyU2l6ZShlKX0sZmx1c2hCdWZmZXI6ZnVuY3Rpb24oZSl7dm9pZCAwPT09ZSYmKGU9e30pLHBuLmV4ZWN1dGVRdWV1ZSgpLGUubmV3QnVmZmVyU2l6ZSYmcG4uc2V0QnVmZmVyU2l6ZShlLm5ld0J1ZmZlclNpemUpfSx0cmFja1BhZ2VWaWV3OmZ1bmN0aW9uKGUpe3ZvaWQgMD09PWUmJihlPXt9KSx0dChlKX0scHJlc2VydmVQYWdlVmlld0lkOmZ1bmN0aW9uKCl7bW49ITB9LHByZXNlcnZlUGFnZVZpZXdJZEZvclVybDpmdW5jdGlvbihlKXtobj1lfSxkaXNhYmxlQW5vbnltb3VzVHJhY2tpbmc6ZnVuY3Rpb24oZSl7Yy5hbm9ueW1vdXNUcmFja2luZz0hMSxXbihlKSxZbigpLHBuLmV4ZWN1dGVRdWV1ZSgpfSxlbmFibGVBbm9ueW1vdXNUcmFja2luZzpmdW5jdGlvbihlKXt2YXIgbjtjLmFub255bW91c1RyYWNraW5nPW51bGw9PT0obj1lJiYobnVsbD09ZT92b2lkIDA6ZS5vcHRpb25zKSl8fHZvaWQgMD09PW58fG4sV24oZSksc258fEtuKCl9LGNsZWFyVXNlckRhdGE6WG59O3JldHVybiByKHIoe30sdXQpLHtpZDplLG5hbWVzcGFjZTpuLGNvcmU6emUsc2hhcmVkU3RhdGU6dX0pfShlLG4sdCxhLHUsYyksZD1yKHIoe30sZikse2FkZFBsdWdpbjpmdW5jdGlvbihlKXt2YXIgbix0O2QuY29yZS5hZGRQbHVnaW4oZSksbnVsbD09PSh0PShuPWUucGx1Z2luKS5hY3RpdmF0ZUJyb3dzZXJQbHVnaW4pfHx2b2lkIDA9PT10fHx0LmNhbGwobixkKX19KTtyZXR1cm4gbC5mb3JFYWNoKChmdW5jdGlvbihlKXt2YXIgbjtudWxsPT09KG49ZS5hY3RpdmF0ZUJyb3dzZXJQbHVnaW4pfHx2b2lkIDA9PT1ufHxuLmNhbGwoZSxkKX0pKSxkfXZhciBoZT17fTtmdW5jdGlvbiB5ZShlLG4pe3RyeXsodD1udWxsIT1lP2U6T2JqZWN0LmtleXMoaGUpLHdlKHQsaGUpKS5mb3JFYWNoKG4pfWNhdGNoKGUpe3AuZXJyb3IoIkZ1bmN0aW9uIGZhaWxlZCIsZSl9dmFyIHR9ZnVuY3Rpb24gd2UoZSxuKXtmb3IodmFyIHQ9W10scj0wLG89ZTtyPG8ubGVuZ3RoO3IrKyl7dmFyIGk9b1tyXTtuLmhhc093blByb3BlcnR5KGkpP3QucHVzaChuW2ldKTpwLndhcm4oaSsiIG5vdCBjb25maWd1cmVkIil9cmV0dXJuIHR9dmFyIGJlPWZ1bmN0aW9uKCl7dGhpcy5vdXRRdWV1ZXM9W10sdGhpcy5idWZmZXJGbHVzaGVycz1bXSx0aGlzLmhhc0xvYWRlZD0hMSx0aGlzLnJlZ2lzdGVyZWRPbkxvYWRIYW5kbGVycz1bXX07ZnVuY3Rpb24ga2UoZSxuKXt5ZShuLChmdW5jdGlvbihuKXtuLmRpc2NhcmRCcmFjZShlKX0pKX1mdW5jdGlvbiBTZShlLG4pe3llKG4sKGZ1bmN0aW9uKG4pe24uZW5hYmxlQWN0aXZpdHlUcmFja2luZ0NhbGxiYWNrKGUpfSkpfWZ1bmN0aW9uIHhlKGUpe3llKGUsKGZ1bmN0aW9uKGUpe2UuZGlzYWJsZUFjdGl2aXR5VHJhY2tpbmcoKX0pKX1mdW5jdGlvbiBUZShlLG4pe3llKG4sKGZ1bmN0aW9uKG4pe24uc2V0VXNlcklkKGUpfSkpfWZ1bmN0aW9uIEllKGUsbil7eWUobiwoZnVuY3Rpb24obil7bi50cmFja1BhZ2VWaWV3KGUpfSkpfWZ1bmN0aW9uIEFlKGUsbil7eWUobiwoZnVuY3Rpb24obil7bi5jb3JlLnRyYWNrKEQoe2V2ZW50OmUuZXZlbnR9KSxlLmNvbnRleHQsZS50aW1lc3RhbXApfSkpfWZ1bmN0aW9uIENlKGUsbil7eWUobiwoZnVuY3Rpb24obil7bi5kaXNhYmxlQW5vbnltb3VzVHJhY2tpbmcoZSl9KSl9ZnVuY3Rpb24gT2UoZSxuKXt5ZShuLChmdW5jdGlvbihuKXtuLmVuYWJsZUFub255bW91c1RyYWNraW5nKGUpfSkpfXZhciBQZT0idW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdz9mdW5jdGlvbigpe3ZhciBlPW5ldyBiZSxuPWRvY3VtZW50LHQ9d2luZG93O2Z1bmN0aW9uIHIoKXt2YXIgbjtpZighZS5oYXNMb2FkZWQpZm9yKGUuaGFzTG9hZGVkPSEwLG49MDtuPGUucmVnaXN0ZXJlZE9uTG9hZEhhbmRsZXJzLmxlbmd0aDtuKyspZS5yZWdpc3RlcmVkT25Mb2FkSGFuZGxlcnNbbl0oKTtyZXR1cm4hMH1yZXR1cm4gbi52aXNpYmlsaXR5U3RhdGUmJkcobiwidmlzaWJpbGl0eWNoYW5nZSIsKGZ1bmN0aW9uKCl7ImhpZGRlbiI9PW4udmlzaWJpbGl0eVN0YXRlJiZlLmJ1ZmZlckZsdXNoZXJzLmZvckVhY2goKGZ1bmN0aW9uKGUpe2UoITEpfSkpfSksITEpLEcodCwiYmVmb3JldW5sb2FkIiwoZnVuY3Rpb24oKXtlLmJ1ZmZlckZsdXNoZXJzLmZvckVhY2goKGZ1bmN0aW9uKGUpe2UoITEpfSkpfSksITEpLCJsb2FkaW5nIj09PWRvY3VtZW50LnJlYWR5U3RhdGU/KG4uYWRkRXZlbnRMaXN0ZW5lcj9uLmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLChmdW5jdGlvbiBlKCl7bi5yZW1vdmVFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixlLCExKSxyKCl9KSk6bi5hdHRhY2hFdmVudCYmbi5hdHRhY2hFdmVudCgib25yZWFkeXN0YXRlY2hhbmdlIiwoZnVuY3Rpb24gZSgpeyJjb21wbGV0ZSI9PT1uLnJlYWR5U3RhdGUmJihuLmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLGUpLHIoKSl9KSksRyh0LCJsb2FkIixyLCExKSk6cigpLGV9KCk6dm9pZCAwO2Z1bmN0aW9uIEVlKGUsbix0KXtyZXR1cm4gdm9pZCAwPT09dCYmKHQ9e30pLFBlP2Z1bmN0aW9uKGUsbix0LHIsbyxpKXtyZXR1cm4gaGUuaGFzT3duUHJvcGVydHkoZSk/bnVsbDooaGVbZV09bWUoZSxuLHQscixvLGkpLGhlW2VdKX0oZSxlLCJqcy0iLmNvbmNhdCgiMy4yNC4xIiksbixQZSx0KTp2b2lkIDB9fSwyNDE1MzkoZSl7dmFyIG49e3V0Zjg6e3N0cmluZ1RvQnl0ZXM6ZnVuY3Rpb24oZSl7cmV0dXJuIG4uYmluLnN0cmluZ1RvQnl0ZXModW5lc2NhcGUoZW5jb2RlVVJJQ29tcG9uZW50KGUpKSl9LGJ5dGVzVG9TdHJpbmc6ZnVuY3Rpb24oZSl7cmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudChlc2NhcGUobi5iaW4uYnl0ZXNUb1N0cmluZyhlKSkpfX0sYmluOnsKc3RyaW5nVG9CeXRlczpmdW5jdGlvbihlKXtmb3IodmFyIG49W10sdD0wO3Q8ZS5sZW5ndGg7dCsrKW4ucHVzaCgyNTUmZS5jaGFyQ29kZUF0KHQpKTtyZXR1cm4gbn0sYnl0ZXNUb1N0cmluZzpmdW5jdGlvbihlKXtmb3IodmFyIG49W10sdD0wO3Q8ZS5sZW5ndGg7dCsrKW4ucHVzaChTdHJpbmcuZnJvbUNoYXJDb2RlKGVbdF0pKTtyZXR1cm4gbi5qb2luKCIiKX19fTtlLmV4cG9ydHM9bn0sMjk3NjM1KGUpe3ZhciBuLHQ7bj0iQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLyIsdD17cm90bDpmdW5jdGlvbihlLG4pe3JldHVybiBlPDxufGU+Pj4zMi1ufSxyb3RyOmZ1bmN0aW9uKGUsbil7cmV0dXJuIGU8PDMyLW58ZT4+Pm59LGVuZGlhbjpmdW5jdGlvbihlKXtpZihlLmNvbnN0cnVjdG9yPT1OdW1iZXIpcmV0dXJuIDE2NzExOTM1JnQucm90bChlLDgpfDQyNzgyNTUzNjAmdC5yb3RsKGUsMjQpO2Zvcih2YXIgbj0wO248ZS5sZW5ndGg7bisrKWVbbl09dC5lbmRpYW4oZVtuXSk7cmV0dXJuIGV9LHJhbmRvbUJ5dGVzOmZ1bmN0aW9uKGUpe2Zvcih2YXIgbj1bXTtlPjA7ZS0tKW4ucHVzaChNYXRoLmZsb29yKDI1NipNYXRoLnJhbmRvbSgpKSk7cmV0dXJuIG59LGJ5dGVzVG9Xb3JkczpmdW5jdGlvbihlKXtmb3IodmFyIG49W10sdD0wLHI9MDt0PGUubGVuZ3RoO3QrKyxyKz04KW5bcj4+PjVdfD1lW3RdPDwyNC1yJTMyO3JldHVybiBufSx3b3Jkc1RvQnl0ZXM6ZnVuY3Rpb24oZSl7Zm9yKHZhciBuPVtdLHQ9MDt0PDMyKmUubGVuZ3RoO3QrPTgpbi5wdXNoKGVbdD4+PjVdPj4+MjQtdCUzMiYyNTUpO3JldHVybiBufSxieXRlc1RvSGV4OmZ1bmN0aW9uKGUpe2Zvcih2YXIgbj1bXSx0PTA7dDxlLmxlbmd0aDt0Kyspbi5wdXNoKChlW3RdPj4+NCkudG9TdHJpbmcoMTYpKSxuLnB1c2goKDE1JmVbdF0pLnRvU3RyaW5nKDE2KSk7cmV0dXJuIG4uam9pbigiIil9LGhleFRvQnl0ZXM6ZnVuY3Rpb24oZSl7Zm9yKHZhciBuPVtdLHQ9MDt0PGUubGVuZ3RoO3QrPTIpbi5wdXNoKHBhcnNlSW50KGUuc3Vic3RyKHQsMiksMTYpKTtyZXR1cm4gbn0sYnl0ZXNUb0Jhc2U2NDpmdW5jdGlvbihlKXtmb3IodmFyIHQ9W10scj0wO3I8ZS5sZW5ndGg7cis9Mylmb3IodmFyIG89ZVtyXTw8MTZ8ZVtyKzFdPDw4fGVbcisyXSxpPTA7aTw0O2krKyk4KnIrNippPD04KmUubGVuZ3RoP3QucHVzaChuLmNoYXJBdChvPj4+NiooMy1pKSY2MykpOnQucHVzaCgiPSIpO3JldHVybiB0LmpvaW4oIiIpfSxiYXNlNjRUb0J5dGVzOmZ1bmN0aW9uKGUpe2U9ZS5yZXBsYWNlKC9bXkEtWjAtOStcL10vZ2ksIiIpO2Zvcih2YXIgdD1bXSxyPTAsbz0wO3I8ZS5sZW5ndGg7bz0rK3IlNCkwIT1vJiZ0LnB1c2goKG4uaW5kZXhPZihlLmNoYXJBdChyLTEpKSZNYXRoLnBvdygyLC0yKm8rOCktMSk8PDIqb3xuLmluZGV4T2YoZS5jaGFyQXQocikpPj4+Ni0yKm8pO3JldHVybiB0fX0sZS5leHBvcnRzPXR9LDE5NjM3MyhlLG4sdCl7dmFyIHIsbyxpLGE7cj10KDI5NzYzNSksbz10KDI0MTUzOSkudXRmOCxpPXQoMjQxNTM5KS5iaW4sKGE9ZnVuY3Rpb24oZSxuKXt2YXIgdD1yLndvcmRzVG9CeXRlcyhmdW5jdGlvbihlKXtlLmNvbnN0cnVjdG9yPT1TdHJpbmc/ZT1vLnN0cmluZ1RvQnl0ZXMoZSk6InVuZGVmaW5lZCIhPXR5cGVvZiBCdWZmZXImJiJmdW5jdGlvbiI9PXR5cGVvZiBCdWZmZXIuaXNCdWZmZXImJkJ1ZmZlci5pc0J1ZmZlcihlKT9lPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGUsMCk6QXJyYXkuaXNBcnJheShlKXx8KGU9ZS50b1N0cmluZygpKTt2YXIgbj1yLmJ5dGVzVG9Xb3JkcyhlKSx0PTgqZS5sZW5ndGgsaT1bXSxhPTE3MzI1ODQxOTMsdT0tMjcxNzMzODc5LGM9LTE3MzI1ODQxOTQscz0yNzE3MzM4NzgsbD0tMTAwOTU4OTc3NjtuW3Q+PjVdfD0xMjg8PDI0LXQlMzIsblsxNSsodCs2ND4+Pjk8PDQpXT10O2Zvcih2YXIgZj0wO2Y8bi5sZW5ndGg7Zis9MTYpe2Zvcih2YXIgZD1hLHY9dSxnPWMscD1zLG09bCxoPTA7aDw4MDtoKyspe2lmKGg8MTYpaVtoXT1uW2YraF07ZWxzZXt2YXIgeT1pW2gtM11eaVtoLThdXmlbaC0xNF1eaVtoLTE2XTtpW2hdPXk8PDF8eT4+PjMxfXZhciB3PShhPDw1fGE+Pj4yNykrbCsoaVtoXT4+PjApKyhoPDIwPzE1MTg1MDAyNDkrKHUmY3x+dSZzKTpoPDQwPzE4NTk3NzUzOTMrKHVeY15zKTpoPDYwPyh1JmN8dSZzfGMmcyktMTg5NDAwNzU4ODoodV5jXnMpLTg5OTQ5NzUxNCk7bD1zLHM9YyxjPXU8PDMwfHU+Pj4yLHU9YSxhPXd9YSs9ZCx1Kz12LGMrPWcscys9cCxsKz1tfXJldHVyblthLHUsYyxzLGxdfShlKSk7cmV0dXJuIG4mJm4uYXNCeXRlcz90Om4mJm4uYXNTdHJpbmc/aS5ieXRlc1RvU3RyaW5nKHQpOnIuYnl0ZXNUb0hleCh0KX0pLl9ibG9ja3NpemU9MTYsYS5fZGlnZXN0c2l6ZT0yMCxlLmV4cG9ydHM9YX0sNTM3MjA0KGUsbix0KXt2YXIgcj10KDY5ODU3MSksbz10KDQ2NjY4MCksaT1vO2kudjE9cixpLnY0PW8sZS5leHBvcnRzPWl9LDg2NzE3KGUpe2Zvcih2YXIgbj1bXSx0PTA7dDwyNTY7Kyt0KW5bdF09KHQrMjU2KS50b1N0cmluZygxNikuc3Vic3RyKDEpO2UuZXhwb3J0cz1mdW5jdGlvbihlLHQpe3ZhciByPXR8fDAsbz1uO3JldHVybltvW2VbcisrXV0sb1tlW3IrK11dLG9bZVtyKytdXSxvW2VbcisrXV0sIi0iLG9bZVtyKytdXSxvW2VbcisrXV0sIi0iLG9bZVtyKytdXSxvW2VbcisrXV0sIi0iLG9bZVtyKytdXSxvW2VbcisrXV0sIi0iLG9bZVtyKytdXSxvW2VbcisrXV0sb1tlW3IrK11dLG9bZVtyKytdXSxvW2VbcisrXV0sb1tlW3IrK11dXS5qb2luKCIiKX19LDcyNzY0NChlKXt2YXIgbj0idW5kZWZpbmVkIiE9dHlwZW9mIGNyeXB0byYmY3J5cHRvLmdldFJhbmRvbVZhbHVlcyYmY3J5cHRvLmdldFJhbmRvbVZhbHVlcy5iaW5kKGNyeXB0byl8fCJ1bmRlZmluZWQiIT10eXBlb2YgbXNDcnlwdG8mJiJmdW5jdGlvbiI9PXR5cGVvZiB3aW5kb3cubXNDcnlwdG8uZ2V0UmFuZG9tVmFsdWVzJiZtc0NyeXB0by5nZXRSYW5kb21WYWx1ZXMuYmluZChtc0NyeXB0byk7aWYobil7CnZhciB0PW5ldyBVaW50OEFycmF5KDE2KTtlLmV4cG9ydHM9ZnVuY3Rpb24oKXtyZXR1cm4gbih0KSx0fX1lbHNle3ZhciByPW5ldyBBcnJheSgxNik7ZS5leHBvcnRzPWZ1bmN0aW9uKCl7Zm9yKHZhciBlLG49MDtuPDE2O24rKykzJm58fChlPTQyOTQ5NjcyOTYqTWF0aC5yYW5kb20oKSkscltuXT1lPj4+KCgzJm4pPDwzKSYyNTU7cmV0dXJuIHJ9fX0sNjk4NTcxKGUsbix0KXt2YXIgcixvLGk9dCg3Mjc2NDQpLGE9dCg4NjcxNyksdT0wLGM9MDtlLmV4cG9ydHM9ZnVuY3Rpb24oZSxuLHQpe3ZhciBzPW4mJnR8fDAsbD1ufHxbXSxmPShlPWV8fHt9KS5ub2RlfHxyLGQ9dm9pZCAwIT09ZS5jbG9ja3NlcT9lLmNsb2Nrc2VxOm87aWYobnVsbD09Znx8bnVsbD09ZCl7dmFyIHY9aSgpO251bGw9PWYmJihmPXI9WzF8dlswXSx2WzFdLHZbMl0sdlszXSx2WzRdLHZbNV1dKSxudWxsPT1kJiYoZD1vPTE2MzgzJih2WzZdPDw4fHZbN10pKX12YXIgZz12b2lkIDAhPT1lLm1zZWNzP2UubXNlY3M6KG5ldyBEYXRlKS5nZXRUaW1lKCkscD12b2lkIDAhPT1lLm5zZWNzP2UubnNlY3M6YysxLG09Zy11KyhwLWMpLzFlNDtpZihtPDAmJnZvaWQgMD09PWUuY2xvY2tzZXEmJihkPWQrMSYxNjM4MyksKG08MHx8Zz51KSYmdm9pZCAwPT09ZS5uc2VjcyYmKHA9MCkscD49MWU0KXRocm93IG5ldyBFcnJvcigidXVpZC52MSgpOiBDYW4ndCBjcmVhdGUgbW9yZSB0aGFuIDEwTSB1dWlkcy9zZWMiKTt1PWcsYz1wLG89ZDt2YXIgaD0oMWU0KigyNjg0MzU0NTUmKGcrPTEyMjE5MjkyOGU1KSkrcCklNDI5NDk2NzI5NjtsW3MrK109aD4+PjI0JjI1NSxsW3MrK109aD4+PjE2JjI1NSxsW3MrK109aD4+PjgmMjU1LGxbcysrXT0yNTUmaDt2YXIgeT1nLzQyOTQ5NjcyOTYqMWU0JjI2ODQzNTQ1NTtsW3MrK109eT4+PjgmMjU1LGxbcysrXT0yNTUmeSxsW3MrK109eT4+PjI0JjE1fDE2LGxbcysrXT15Pj4+MTYmMjU1LGxbcysrXT1kPj4+OHwxMjgsbFtzKytdPTI1NSZkO2Zvcih2YXIgdz0wO3c8NjsrK3cpbFtzK3ddPWZbd107cmV0dXJuIG58fGEobCl9fSw0NjY2ODAoZSxuLHQpe3ZhciByPXQoNzI3NjQ0KSxvPXQoODY3MTcpO2UuZXhwb3J0cz1mdW5jdGlvbihlLG4sdCl7dmFyIGk9biYmdHx8MDsic3RyaW5nIj09dHlwZW9mIGUmJihuPSJiaW5hcnkiPT09ZT9uZXcgQXJyYXkoMTYpOm51bGwsZT1udWxsKTt2YXIgYT0oZT1lfHx7fSkucmFuZG9tfHwoZS5ybmd8fHIpKCk7aWYoYVs2XT0xNSZhWzZdfDY0LGFbOF09NjMmYVs4XXwxMjgsbilmb3IodmFyIHU9MDt1PDE2OysrdSluW2krdV09YVt1XTtyZXR1cm4gbnx8byhhKX19fV0pOw=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCQNT.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.636Z","timestamp":1785126258636,"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 /crypto/XTVCQNT.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 04:24:18 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: \"6facdf98121a6b9e2fc712c0e44f97fa\"\r\nlast-modified: Tue, 22 Nov 2022 13:38:16 GMT\r\ncdn-cachedat: 08/09/2025 14:34:24\r\nx-amz-id-2: E8tIQDo9H8HWKIDvl+yAPXIn1lHNAdQ9U8TbLuqp50g5+MSuXbETdcbqS5TcoA2kRt/AwczRENA=\r\nx-amz-request-id: CVYET6ZZ7BQ85JFC\r\nx-amz-meta-hash: 6facdf98121a6b9e2fc712c0e44f97fa\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: 1b5385195967d1ceeebf06230682365d\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":1035,"size_decoded":1480,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (1035), with no line terminators","md5":"6facdf98121a6b9e2fc712c0e44f97fa","sha1":"5fa409c16c03a51c5b632d0bb2f51b8f92f96c8c","sha256":"4e4709ebc21e3e91a073c73f2e764d376bc20aec633ac74969e2ae29b21e1b4e","sha512":"374cd5ac69893fba0e0b0b0ebba3825db60a2237d18565b0b32b3441e24e62349754a12d0bce5b6e27015ba36edd093367f45381960f3221d8d64209c2698a84","ssdeep":"","tlshash":"be11cc2a5294da9d4882c29ccfba84e2320b94dbb19a56dcb8eed794204f8d1fc50d5c","first_seen":"2024-02-03T16:17:41Z","last_seen":"2026-07-27T07:05:43.312269Z","times_seen":799,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJtNi40NyAzLjM0LS45My4zN2MtLjAyLjAyLjI0LjM3LjU4Ljc2bDEuNSAxLjc2Yy40OC41Ny45IDEuMDMuOTMgMS4wMy4wOCAwIDItMS4xNiAyLTEuMjEgMC0uMS0xLjE2LTEuNS0xLjczLTIuMUM4LjEyIDMuMjQgNy44IDMgNy41NCAzYy0uMSAwLS41Ny4xNi0xLjA3LjM0Wm00LjgxLjkxLS4xNi41M2MtLjA4LjI2LS4yMy42Ni0uMzMuODktLjEuMjItLjE2LjQyLS4xMy40NGwxLjA3LjY4IDEgLjYzLjA0LjYuMDggMS4yNS4wMy42NC0uODYuNjljLS41NC40My0uOS42OC0uOTYuNjYtLjA2LS4wMi0uNTYtLjI0LTEuMTEtLjVsLTEuMTMtLjQ4Yy0uMTEtLjAzLS4yNi4yNS0xLjE4IDIuMTFhMzIgMzIgMCAwIDAtMS4wNiAyLjI2YzAgLjE2LjI0LjI1Ljg4LjMyLjg2LjEgMS4yLS4wMSAxLjYxLS41LjIxLS4yNiAxLjU0LTIuMjYgMS45Mi0yLjkuMTctLjI4LjEzLS4zMS41OC41Ny40Mi44NS41Mi45OS43Mi45OS4xOCAwIC40LS4yMi44Ni0uODMuMjYtLjM2LjMtLjQzLjMtLjczIDAtLjQ4LS4xMS0uOTgtLjI5LTEuMzQtLjA4LS4xNy0uMjQtLjMxLS4yMy0uMzJsLjQ4LS4wN2MuNi0uMDcuNjItLjEyLjU3LS45NS0uMDctMS4zLS4xLTEuMzQtLjc4LTEuNDFhMS40IDEuNCAwIDAgMS0uNDEtLjA4Yy0uMDItLjAzLjAxLS4yLjA2LS40LjE5LS42NyAwLTEuNDYtLjQ4LTIuMDQtLjE3LS4yMi0uOS0uNzYtMS0uNzZhLjEuMSAwIDAgMC0uMDkuMDVaTTUuNDUgNy41Yy0yLjEyLjE1LTIuMjQuMTYtMi4zNS4zLS4xMS4xMi0uMTIuMi0uMDguOTUuMDYgMS4xNC4wNCAxLjA3LjIzIDEuMi4xLjA2LjQ2LjA1IDIuMTMuMDUgMi4zMyAwIDMuMjEgMCAzLjMtLjA1YTMwLjQgMzAuNCAwIDAgMC0uMTgtMi40OGMtLjA0LS4xOC0uMDYtLjE4LTMuMDUuMDNaIi8+PC9zdmc+"}},"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":"besttrader.live/js/range-custom.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.058Z","timestamp":1785126256058,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /js/range-custom.js HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: W/\"65211e70-ca2\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":3234,"size_decoded":859,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with CRLF line terminators","md5":"462106021dc731314c94c45ea510df57","sha1":"8155d4459508288c7d0afc805da6811d7f2a8953","sha256":"7318fcd0a830a493f01fbb5080445e054b048add0001f3611818a21564a58809","sha512":"43f6cc2cec3b54da973295eb7db249f00a1f3c1f7099c2e94278cb068e5cb9d366de5f06d915ab0492752683cb8ccb1b1a5ac4db7f8679a3aa2ca25d0d3996cb","ssdeep":"","tlshash":"0061ad41bc4151d5abbf122c8fb48520fbc94e578524cf40faee09a86f39fa54284ed6","first_seen":"2023-03-13T03:45:08Z","last_seen":"2026-07-27T04:25:12.860113Z","times_seen":187,"resource_available":true,"data":"ICQoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCl7DQogICAgdmFyIHNsaWRlckVsZW1lbnRTdGFydGVyID0gJCgnI3NsaWRlci1zdGFydGVyJyk7DQogICAgdmFyIHNsaWRlckVsZW1lbnRTaWx2ZXIgPSAkKCcjc2xpZGVyLXNpbHZlcicpOw0KICAgIHZhciBzbGlkZXJFbGVtZW50R29sZCA9ICQoJyNzbGlkZXItZ29sZCcpOw0KICAgIHZhciBzbGlkZXJFbGVtZW50UGxhdGludW0gPSAkKCcjc2xpZGVyLXBsYXRpbnVtJyk7DQoNCiAgICAvLyB0aGlzIGlzIHRoZSBzdGFydCBvZiB0aGUgc2NyaXB0IGZvciBTVEFSVEVSID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KICAgIHNsaWRlckVsZW1lbnRTdGFydGVyLnNsaWRlcih7DQogICAgICByYW5nZTogIm1pbiIsDQogICAgICB2YWx1ZTogODAwLA0KICAgICAgbWluOiAyNTAsDQogICAgICBtYXg6IDE2MDAsICAgDQogICAgICBzbGlkZTogZnVuY3Rpb24oIGV2ZW50LHVpKXsNCiAgICAgICAgJCgiI2Ftb3VudC1zdGFydGVyIikudmFsKCAiJCIgKyB1aS52YWx1ZSk7DQogICAgICAgICAkKCIudG90YWwtcmV0dXJuLXN0YXRlciIpLmh0bWwoICIkIiArIE1hdGgucm91bmQoKHVpLnZhbHVlLzUuNjcgKSoxMDApLzEwMCk7DQogICAgICAgICAgJCgiLnBlci1yZXR1cm4tc3RhcnRlciIpLmh0bWwoICIkIiArIE1hdGgucm91bmQoKHVpLnZhbHVlLzguNjcgKSoxMDApLzEwMCk7DQogICAgICB9DQogICAgfSk7DQogICAgLy8gdGhpcyBjb2RlIGJlbG93IGlzIHRvIHNob3cgdGhlIHZhbHVlIG9mIHRoZSBpbnB1dCBvbmNlIHRoZSBwYWdlIGxvYWRzDQogICAgJCgiI2Ftb3VudC1zdGFydGVyIikudmFsKCAiJCIgKyBzbGlkZXJFbGVtZW50U3RhcnRlci5zbGlkZXIoInZhbHVlIikpOw0KICAgIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT10aGlzIGlzIHRoZSBlbmQgb2YgU3RhcnRlciBkZXNpZ24gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCg0KICAgIC8vIHRoaXMgaXMgdGhlIHNjcmlwdCBmb3IgU0xJVkVSID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KDQogICAgc2xpZGVyRWxlbWVudFNpbHZlci5zbGlkZXIoew0KICAgICAgcmFuZ2U6ICJtaW4iLA0KICAgICAgdmFsdWU6IDc0OTkuNSwNCiAgICAgIG1pbjogNTAwMCwNCiAgICAgIG1heDogOTk5OSwNCiAgICAgIHNsaWRlOiBmdW5jdGlvbiggZXZlbnQsIHVpKXsNCiAgICAgICAgJCgiI2Ftb3VudC1zaWx2ZXIiKS52YWwoIiQiICsgdWkudmFsdWUpOw0KICAgICAgICAkKCIudG90YWwtcmV0dXJuLXNpbHZlciIpLmh0bWwoICIkIiArIE1hdGgucm91bmQoKHVpLnZhbHVlLzMuNjcgKSoxMDApLzEwMCk7DQogICAgICAgICAgJCgiLnBlci1yZXR1cm4tc2lsdmVyIikuaHRtbCgiJCIgKyBNYXRoLnJvdW5kKCh1aS52YWx1ZS82LjY3ICkqMTAwKS8xMDApOw0KICAgICAgfQ0KICAgIH0pOw0KICAgICQoIiNhbW91bnQtc2lsdmVyIikudmFsKCIkIiArIHNsaWRlckVsZW1lbnRTaWx2ZXIuc2xpZGVyKCJ2YWx1ZSIpKTsNCg0KICAgIC8vIGVuZCBzY3JpcHQgZm9yIFNMSVZFUiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQoNCiAgICAvLyB0aGlzIGlzIHRoZSBzY3JpcHQgZm9yIEdPTEQgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQogICAgc2xpZGVyRWxlbWVudEdvbGQuc2xpZGVyKHsNCiAgICAgIHJhbmdlOiAibWluIiwNCiAgICAgIHZhbHVlOiAyOTk5OS41LA0KICAgICAgbWluOiAxMDAwMCwNCiAgICAgIG1heDogNDk5OTksc2xpZGU6IGZ1bmN0aW9uKGV2ZW50LHVpKXsNCiAgICAgICAgJCgiI2Ftb3VudC1nb2xkIikudmFsKCAiJCIgKyB1aS52YWx1ZSk7DQogICAgICAgICQoIi50b3RhbC1yZXR1cm4tZ29sZCIpLmh0bWwoICIkIiArIE1hdGgucm91bmQoKHVpLnZhbHVlLzQuNjcgKSoxMDApLzEwMCk7DQogICAgICAgICAgJCgiLnBlci1yZXR1cm4tZ29sZCIpLmh0bWwoICIkIiArIE1hdGgucm91bmQoKHVpLnZhbHVlLzcuNjcgKSoxMDApLzEwMCk7DQogICAgICB9DQogICAgfSk7DQogICAgJCgiI2Ftb3VudC1nb2xkIikudmFsKCIkIiArIHNsaWRlckVsZW1lbnRHb2xkLnNsaWRlcigidmFsdWUiKSk7DQoNCiAgICAvLyBlbmQgc2NyaXB0IGZvciBHT0xEID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCg0KICAgIC8vIHRoaXMgaXMgdGhlIHNjcmlwdCBmb3IgUExBVElOVU0gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQogICAgc2xpZGVyRWxlbWVudFBsYXRpbnVtLnNsaWRlcih7DQogICAgICByYW5nZTogIm1pbiIsDQogICAgICB2YWx1ZTogNzUwMDAsDQogICAgICBtaW46IDUwMDAwLA0KICAgICAgbWF4OiAxMDAwMDAsDQogICAgICBzbGlkZTogZnVuY3Rpb24oZXZlbnQsIHVpKXsNCiAgICAgICAgJCgiI2Ftb3VudC1wbGF0aW51bSIpLnZhbCggIiQiICsgdWkudmFsdWUpOw0KICAgICAgICAkKCIudG90YWwtcmV0dXJuLXBsYXRpbnVtIikuaHRtbCggIiQiICsgTWF0aC5yb3VuZCgodWkudmFsdWUvNi42NyApKjEwMCkvMTAwKTsNCiAgICAgICAgICAkKCIucGVyLXJldHVybi1wbGF0aW51bSIpLmh0bWwoICIkIiArIE1hdGgucm91bmQoKHVpLnZhbHVlLzYuNjcgKSoxMDApLzEwMCk7DQogICAgICB9DQogICAgfSk7DQogICAgJCgiI2Ftb3VudC1wbGF0aW51bSIpLnZhbCgiJCIgKyBzbGlkZXJFbGVtZW50UGxhdGludW0uc2xpZGVyKCJ2YWx1ZSIpKTsNCg0KICAgIC8vIGVuZCBzY3JpcHQgZm9yIFBMQVRJTlVNID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCg0KICAgIC8vIHRoaXMgc2NyaXB0IGlzIGZvciB0aGUgbW9kYWwgDQogICAgICAgICQoJyNteU1vZGFsJykub24oJ3Nob3duLmJzLm1vZGFsJywgZnVuY3Rpb24gKCkgew0KICAgICAgICAgICQoJyNteUlucHV0JykudHJpZ2dlcignZm9jdXMnKQ0KICAgICAgICB9KQ0KIA0KICAgIC8vIGVuZCBtYWpvciBiZWdpbmluZyANCiAgfSk7"}},"time_used":346,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":346,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/images/slider/slider1.jpg","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.700Z","timestamp":1785126256700,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/slider/slider1.jpg HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/jpeg\r\ncontent-length: 212485\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-33e05\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":212485,"size_decoded":212738,"mime_type":"image/jpeg","magic":"JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, progressive, precision 8, 1440x810, components 3","md5":"1dbe01b98f769756eba9e40bd43560bb","sha1":"e5f1ea91ea42a924f8507effb6d60e1b84a85925","sha256":"04314997f0ae18ba47acc693c89f5e3406a87e79e4da8448d5f4beb71f478d79","sha512":"ca336acc63b5e63bc10b226bfd6fa8732b026e1a06f5d80e85eb3e549b5bbad069914a84fa6731e507761dd09bdb8052acea17cc93795f5eec7b1f63f617c572","ssdeep":"6144:WGswUNAEURTBi7SDA+1oBCzUuGWpk9yTBNt:hsgrBiX+1oBjWLt","tlshash":"1b2422f57893ba67a6a42af1f5f83925b14d29a03d523b181f0d1ce264093bf045fb5c","first_seen":"2025-05-13T15:25:57.726316Z","last_seen":"2026-07-27T07:31:15.486093Z","times_seen":153,"resource_available":false,"data":"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"}},"time_used":102,"timings":{"blocked":0,"dns":0,"connect":0,"send":0,"wait":100,"receive":2,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCUSAT2.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.677Z","timestamp":1785126258677,"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 /crypto/XTVCUSAT2.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 04:24:18 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: \"6b0bb1836a13dcadc81fed00ad646c87\"\r\nlast-modified: Mon, 09 Mar 2026 08:10:37 GMT\r\nx-amz-id-2: 8nLjR8/MB+0CUYkZvHR2argbGErUkNytOwhvGDfaTjlVKAA6iXRwzoHqmZMRXVcsBNJdLoiBsv0=\r\nx-amz-request-id: 218DBYWT856WHNN8\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 6b0bb1836a13dcadc81fed00ad646c87\r\ncdn-proxyver: 1.50\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 04/22/2026 12:58:31\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: e56af5cc16e81c2d607a49886f52b64b\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":730,"size_decoded":1358,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (730), with no line terminators","md5":"6b0bb1836a13dcadc81fed00ad646c87","sha1":"8f0d02a6cd9072c5c3f6d56db8a33cdfdcad18eb","sha256":"0fc529eb57361ebd0c285b5de2bc0fb4b14f746218786c7987eec5ffc6a59e59","sha512":"4b88688de7b1cd10feaa4e0002d5825d89a6a05bc37c4dff9799a1bbbe275d52b47bd01506c0832edf8a26cf16d9fb4b1095103dc674c98641c686c04fd44fce","ssdeep":"","tlshash":"5901dcd92724ea2d59828bace3e500a2224e90f0f035c1cc7cddda14714ebd7fc60e08","first_seen":"2026-04-24T00:21:01.472542Z","last_seen":"2026-07-27T07:05:43.339749Z","times_seen":233,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTQuOTQgOC40IDEyLjkzIDUuMmEuNDcuNDcgMCAwIDAtLjQtLjIxSDUuNmMtLjE2IDAtLjMuMDgtLjM5LjJMMy4wNyA4LjM5YS40LjQgMCAwIDAgLjA3LjUybDUuNTMgNC45N2EuNS41IDAgMCAwIC42NSAwbDUuNTQtNC45OGEuNC40IDAgMCAwIC4wOC0uNVoiIGZpbGw9IiNFNzA1MDUiLz48cGF0aCBkPSJNMTIuNDQgNS44Yy0uMDctLjExLS4yNC0uMTgtLjM5LS4xOGgtNmMtLjEzIDAtLjI4LjA2LS4zNi4xNkwzLjk4IDguMzNjLS4xLjEzLS4xMi4yMy4wMS4zNWw0LjczIDQuMjZjLjE1LjEzLjQuMTMuNTYgMGw0LjctNC4yNGMuMTMtLjEyLjEzLS4yOC4wNC0uNDFsLTEuNTgtMi41WiIgZmlsbD0iIzEzMkE1NSIvPjxwYXRoIGQ9Im05LjEgNi40OC42OCAxLjE3IDEuNDMuMjNjLjA5LjAyLjEzLjEyLjA2LjE4bC0xIC45Ni4yIDEuMzJjLjAxLjA5LS4wOS4xNS0uMTcuMTFMOSA5Ljg3bC0xLjMuNThjLS4wOC4wNC0uMTgtLjAyLS4xNy0uMWwuMi0xLjMzLTEtLjk2Yy0uMDYtLjA2LS4wMy0uMTYuMDYtLjE4bDEuNDMtLjIzLjY4LTEuMTdjLjA0LS4wOC4xNi0uMDguMiAwWiIgZmlsbD0iI0U1RUFFRSIvPjwvc3ZnPg=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCWALR.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.701Z","timestamp":1785126258701,"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 /crypto/XTVCWALR.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 04:24:18 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: \"45835fda8baf74965d2bd072f010314b\"\r\nlast-modified: Mon, 05 May 2025 20:08:56 GMT\r\ncdn-cachedat: 08/09/2025 14:35:10\r\nx-amz-id-2: sogLvSIXjIIuUAwFexltE6lIwi8qkfumUB/FYjyXBHlYFRr/R/j9POxcvynR9qSeRY0vPVBtKBM=\r\nx-amz-request-id: 0S7Z4TCFE4Y9MJSH\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 45835fda8baf74965d2bd072f010314b\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: 3d78e282b851282982eaf5fcebeeceb8\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":505,"size_decoded":1241,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (505), with no line terminators","md5":"45835fda8baf74965d2bd072f010314b","sha1":"3c41f3ba4735c30238492e8e73750e7fc190433b","sha256":"821d2832bf01caddcf5f5a0c240ec1feac9b2c2d7b56721e0aefcecbe4a8e0a2","sha512":"85ec48d9bf5c29b985bee6b00725404581f5d9a0d3570953a672b376ad584082ce2f47f56985d95e624d0a22a5b39b85ff4058c4aded7b18f6c5d8e5858cf6fb","ssdeep":"","tlshash":"c7f0c076a624b45857174be4179c0c3c30b710f8a2df47dcb9702b9063c9a2b6c51d50","first_seen":"2025-05-09T18:26:18.267834Z","last_seen":"2026-07-27T07:05:43.281722Z","times_seen":777,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiM5N0YwRTUiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNNCA1aDEuMjV2Mkg0ek00Ljc1IDdINnYySDQuNzV6TTcuNDQgN2gxLjI1djNINy40NHpNNSA5aDEuMjV2Mi41OEg1ek02Ljc1IDEwSDh2M0g2Ljc1eiIvPjxwYXRoIGQ9Ik01LjU2IDExLjIzaC45NFYxNGgtLjk0eiIvPjxwYXRoIGQ9Ik02LjE5IDEyaDEuNTZ2Mkg2LjE5ek0xNCA1aC0xLjI1djJIMTR6TTEzLjI1IDdIMTJ2MmgxLjI1ek0xMC41NiA3SDkuMzF2M2gxLjI1ek0xMyA5aC0xLjI1djIuNThIMTN6TTExLjI2IDEwSDEwdjNoMS4yNnYtM1oiLz48cGF0aCBkPSJNMTIuNDQgMTEuMjNoLS45NFYxNGguOTR6Ii8+PHBhdGggZD0iTTExLjgxIDEyaC0xLjU2djJoMS41NnpNOCA1aDJ2Mi40Mkg4eiIvPjwvc3ZnPg=="}},"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":"besttrader.live/images/icon/instruments/gold.svg","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.098Z","timestamp":1785126256098,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/icon/instruments/gold.svg HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/svg+xml\r\ncontent-length: 6399\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-18ff\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":6399,"size_decoded":6652,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"975fcec656e7a20655107f5036b77606","sha1":"5c49370c6deb0778a40651d0694d8345d3766c00","sha256":"1f85663fe6a2f0ca580389b886402faa166fd144c0e7c2637966083ec0d47f4c","sha512":"9e6a6044b8b4e127641d5480449470cef62ffa76ce6579b0bb180f116c5aea9ffe50463845df01341920b4bf423c1686be70c6e9f4cdd1ff6130dc82c6ec2bdd","ssdeep":"96:cEM/PKdgQlGyxKl1UiwijzRlHvJDpiiBI1eBuA+hJEdsPtQ9T+:zM/CrHxujjvJ08D+hJE+Q9T+","tlshash":"a4d1c6e012fec3f8f509677862796803ad7a3ce6a5c052d0b00f0dd59f184e41a4ddb4","first_seen":"2023-05-01T20:32:00Z","last_seen":"2026-07-27T06:05:14.761367Z","times_seen":173,"resource_available":false,"data":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTdweCIgaGVpZ2h0PSIxN3B4IiB2aWV3Qm94PSIwIDAgMTcgMTciIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDUyLjEgKDY3MDQ4KSAtIGh0dHA6Ly93d3cuYm9oZW1pYW5jb2RpbmcuY29tL3NrZXRjaCAtLT4KICAgIDx0aXRsZT5Hcm91cCAzMjwvdGl0bGU+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxnIGlkPSJQYWdlLTEiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSJQcmltZVhCVF92MiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTkwMi4wMDAwMDAsIC0xMTUyLjAwMDAwMCkiPgogICAgICAgICAgICA8ZyBpZD0iR3JvdXAtMjYiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDU4My4wMDAwMDAsIDk3MC4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxnIGlkPSJHcm91cC0yNyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMzE5LjAwMDAwMCwgMTgyLjAwMDAwMCkiPgogICAgICAgICAgICAgICAgICAgIDxnIGlkPSJHcm91cC0zMiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxjaXJjbGUgaWQ9Ik92YWwiIGZpbGw9IiNGRkMyMDAiIGZpbGwtcnVsZT0ibm9uemVybyIgY3g9IjguNSIgY3k9IjguNSIgcj0iOC41Ij48L2NpcmNsZT4KICAgICAgICAgICAgICAgICAgICAgICAgPGcgaWQ9ImdvbGQiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDIuMDAwMDAwLCAyLjAwMDAwMCkiIGZpbGw9IiMwMDAwMDAiPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTMuNjQxNjA3NTYsNi42MjUzNDM1IEw5LjM1MDkxNTQ1LDYuNjI1MzQzNSBDOS40MTU4MTk5Myw2LjYyNDIwMTE4IDkuNDc2Njc0MzQsNi41OTM5ODE2NSA5LjUxNjg2MzE4LDYuNTQzMDk2NTcgQzkuNTU3MDUyMDMsNi40OTIyMTE0NiA5LjU3MjQyMTM4LDYuNDI1OTU3IDkuNTU4NjA5NzIsNi4zNjI2MTAyMyBMOC44ODI4NzYzOSwzLjMxNTczNTIzIEM4Ljg2MTg5OTI4LDMuMjE3MDgwNDYgOC43NzYxMjE1NiwzLjE0NTYzMzYzIDguNjc1Mjg1OTksMy4xNDI3MjU5MSBMNC4zMTczNDA4OSwzLjE0MjcyNTkxIEM0LjIxNjYwOTE1LDMuMTQ1MzIyMDkgNC4xMzA4MzE0LDMuMjE2NTYxMjQgNC4xMDk3NTA0NSwzLjMxNTAwODI5IEwzLjQzNDAxNzEzLDYuMzU4NDU2MzUgQzMuNDE5OTk3NzYsNi40MjI2MzM4OSAzLjQzNTM2NzEzLDYuNDg5ODIyOTkgMy40NzU3NjM2OSw2LjU0MTY0MjcgQzMuNTE1NjQwOTksNi41OTMwNDcwMyAzLjU3NjU5OTI0LDYuNjIzNzg1NzkgMy42NDE2MDc1Niw2LjYyNTM0MzUgWiBNNC40ODc5NjE3MSwzLjU2ODA4Mzc5IEw4LjUwNDY2NTEzLDMuNTY4MDgzNzkgTDkuMDg1NzkzNzEsNi4xOTk5ODU2MyBMMy45MDY4MzMxMyw2LjE5OTk4NTYzIEw0LjQ4Nzk2MTcxLDMuNTY4MDgzNzkgWiIgaWQ9IlNoYXBlIiBmaWxsLXJ1bGU9Im5vbnplcm8iPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik04LjA3MjI0NTY1LDQuMjY3Mjg2NTUgQzguMDUwOTU3LDQuMTY5NTY2NCA3Ljk2NDU1NjE4LDQuMDk5ODg0OTcgNy44NjQ1NTEzOCw0LjA5OTc4MTEzIEw2LjE5MjMwMDkzLDQuMDk5NzgxMTMgQzYuMDc0ODQ5ODEsNC4wOTk3ODExMyA1Ljk3OTYyMTk5LDQuMTk1MDA4OTUgNS45Nzk2MjE5OSw0LjMxMjQ2MDA3IEM1Ljk3OTYyMTk5LDQuNDI5OTExMTYgNi4wNzQ4NDk4MSw0LjUyNTEzOSA2LjE5MjMwMDkzLDQuNTI1MTM5IEw3LjY5MzQxMTMsNC41MjUxMzkgTDcuOTEwMjQ0MTIsNS41MTUyMTc1OSBDNy45MjYxMzI3Myw1LjU4OTc3OTg1IDcuOTgwNzU2MzMsNS42NTAxMTUwMyA4LjA1MzM0NTQ5LDUuNjczMzc2NzkgQzguMTI1OTM0NjIsNS42OTY2Mzg1NSA4LjIwNTQ4MTU0LDUuNjc5Mjk2MDcgOC4yNjE2NjI4Myw1LjYyNzc4Nzg5IEM4LjMxNzk0Nzk3LDUuNTc2MzgzNTUgOC4zNDIzNTIwNSw1LjQ5ODcwNTkyIDguMzI1NzM2NTEsNS40MjQzNTEzNCBMOC4wNzIyNDU2NSw0LjI2NzI4NjU1IFoiIGlkPSJQYXRoIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTIuMzExOTA4OSw3LjA2NDIwMTQ5IEMxMi4yOTA5MzE3LDYuOTY1NTQ2NzIgMTIuMjA1MTU0LDYuODk0MDk5ODkgMTIuMTA0MzE4NCw2Ljg5MTE5MjE3IEw3Ljc0NjI2OTQ4LDYuODkxMTkyMTcgQzcuNjQ1NDMzOTMsNi44OTQwOTk4OSA3LjU1OTY1NjE5LDYuOTY1NTQ2NzIgNy41Mzg2NzkwNSw3LjA2NDIwMTQ5IEw2Ljg2Mjk0NTc1LDEwLjEwNzk2MTEgQzYuODQ5MDMwMjIsMTAuMTcyMTM4NiA2Ljg2NDI5NTc2LDEwLjIzOTEyIDYuOTA0NjkyMjksMTAuMjkwNzMyIEM2Ljk0NDY3MzQzLDEwLjM0MTkyODcgNy4wMDU2MzE3LDEwLjM3MjQ1OTcgNy4wNzA1MzYxOCwxMC4zNzM4MDk4IEwxMi43Nzk5NDc5LDEwLjM3MzgwOTggQzEyLjg0NDc0ODUsMTAuMzczMDgyOCAxMi45MDU3MDY4LDEwLjM0MzE3NDggMTIuOTQ1NzkxOCwxMC4yOTIyODk4IEMxMi45ODYyOTIyLDEwLjI0MDM2NjIgMTMuMDAxNTU3NywxMC4xNzMxNzcxIDEyLjk4NzUzODMsMTAuMTA4ODk1NyBMMTIuMzExOTA4OSw3LjA2NDIwMTQ5IFogTTcuMzM1NzYxNzYsOS45NDg0NTE4OSBMNy45MTY4OTAzNCw3LjMxNjU1MDA0IEwxMS45MzM2OTc2LDcuMzE2NTUwMDQgTDEyLjUxNDgyNjIsOS45NDg0NTE4OSBMNy4zMzU3NjE3Niw5Ljk0ODQ1MTg5IFoiIGlkPSJTaGFwZSIgZmlsbC1ydWxlPSJub256ZXJvIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNMTEuNTAxMjc4MSw4LjAxNjM3NTg4IEMxMS40Nzk5ODk1LDcuOTE4NTUxODkgMTEuMzkzNTg4Niw3Ljg0ODY2Mjc4IDExLjI5MzQ4LDcuODQ4MjQ3MzkgTDkuNjIxMzMzMzksNy44NDgyNDczOSBDOS41MDM4ODIzLDcuODQ4MjQ3MzkgOS40MDg2NTQ0NSw3Ljk0MzQ3NTIgOS40MDg2NTQ0NSw4LjA2MDkyNjMyIEM5LjQwODY1NDQ1LDguMTc4Mzc3NDIgOS41MDM4ODIzLDguMjczNjA1MjYgOS42MjEzMzMzOSw4LjI3MzYwNTI2IEwxMS4xMjIzMzk5LDguMjczNjA1MjYgTDExLjMzOTA2ODksOS4yNjQ0MTA3OSBDMTEuMzU0MjMwNiw5LjMzOTgwMzggMTEuNDA4NzUwMyw5LjQwMTE3NzQ2IDExLjQ4MTg1ODcsOS40MjQ5NTg0NyBDMTEuNTU0ODYzMiw5LjQ0ODYzNTYgMTEuNjM1MTM3MSw5LjQzMTE4OTI4IDExLjY5MTYyOTksOS4zNzkxNjE4NyBDMTEuNzQ4MjI2Niw5LjMyNzAzMDYyIDExLjc3MjMxOTEsOS4yNDg1MjIxOCAxMS43NTQ1NjEzLDkuMTczNzUyMjQgTDExLjUwMTI3ODEsOC4wMTYzNzU4OCBaIiBpZD0iUGF0aCI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTUuNDUzOTQ3OCw3LjA2NDIwMTQ5IEM1LjQzMjk3MDY2LDYuOTY1NTQ2NzIgNS4zNDcxOTI5NCw2Ljg5NDA5OTg5IDUuMjQ2MzU3MzYsNi44OTExOTIxNyBMMC44ODgzMDgzOTcsNi44OTExOTIxNyBDMC43ODc0NzI4NDcsNi44OTQwOTk4OSAwLjcwMTY5NTA5OCw2Ljk2NTU0NjcyIDAuNjgwNzE3OTksNy4wNjQyMDE0OSBMMC4wMDUwODg1MDMwNywxMC4xMDc5NjExIEMtMC4wMDg5MzA4NjcwOCwxMC4xNzIxMzg2IDAuMDA2MzM0NjY4NzEsMTAuMjM5MTIgMC4wNDY4MzUwNjU0LDEwLjI5MDczMiBDMC4wODY4MTYyMDY1LDEwLjM0MjAzMjUgMC4xNDc2NzA2NDIsMTAuMzcyNDU5NyAwLjIxMjY3ODkzNywxMC4zNzM4MDk4IEw1LjkyMjA5MDY5LDEwLjM3MzgwOTggQzUuOTg2ODkxMywxMC4zNzMwODI4IDYuMDQ3ODQ5NTgsMTAuMzQzMTc0OCA2LjA4NzkzNDU2LDEwLjI5MjI4OTggQzYuMTI4NDM0OTYsMTAuMjQwMzY2MiA2LjE0MzcwMDQ3LDEwLjE3MzE3NzEgNi4xMjk2ODExLDEwLjEwODg5NTcgTDUuNDUzOTQ3OCw3LjA2NDIwMTQ5IFogTTAuNDc3ODAwNjcxLDkuOTQ4NDUxODkgTDEuMDU4OTI5MjUsNy4zMTY1NTAwNCBMNS4wNzU3MzY1MSw3LjMxNjU1MDA0IEw1LjY1Njg2NTA5LDkuOTQ4NDUxODkgTDAuNDc3ODAwNjcxLDkuOTQ4NDUxODkgWiIgaWQ9IlNoYXBlIiBmaWxsLXJ1bGU9Im5vbnplcm8iPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik00LjY0MzMxNzAzLDguMDE2Mzc1ODggQzQuNjIyMDI4MzcsNy45MTg1NTE4OSA0LjUzNTYyNzU2LDcuODQ4NjYyNzggNC40MzU1MTg5Miw3Ljg0ODI0NzM5IEwyLjc2MzM3MjMsNy44NDgyNDczOSBDMi42NDU5MjEyMSw3Ljg0ODI0NzM5IDIuNTUwNjkzMzcsNy45NDM0NzUyIDIuNTUwNjkzMzcsOC4wNjA5MjYzMiBDMi41NTA2OTMzNyw4LjE3ODM3NzQyIDIuNjQ1OTIxMjEsOC4yNzM2MDUyNiAyLjc2MzM3MjMsOC4yNzM2MDUyNiBMNC4yNjQ0ODI2Nyw4LjI3MzYwNTI2IEw0LjQ4MTIxMTY2LDkuMjY0NDEwNzkgQzQuNDk2MjY5NDgsOS4zMzk4MDM4IDQuNTUwODkzMDksOS40MDExNzc0NiA0LjYyMzg5NzY0LDkuNDI0OTU4NDcgQzQuNjk3MDA2MDIsOS40NDg2MzU2IDQuNzc3Mjc5ODUsOS40MzExODkyOCA0LjgzMzc3MjY5LDkuMzc5MTYxODcgQzQuODkwMzY5MzgsOS4zMjcwMzA2MiA0LjkxNDM1ODA3LDkuMjQ4NTIyMTggNC44OTY3MDQwNCw5LjE3Mzc1MjI0IEw0LjY0MzMxNzAzLDguMDE2Mzc1ODggWiIgaWQ9IlBhdGgiPjwvcGF0aD4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik05Ljk4NTYyOTE1LDIuOTc0MTgyIEMxMC4wNDIxMjIsMi45NzQyODU4NCAxMC4wOTYyMjY0LDIuOTUxODU0ODYgMTAuMTM2MTAzNywyLjkxMTg3MzcyIEwxMC45MDYwMjYzLDIuMTQxODQ3MTkgQzEwLjk2MDc1MzgsMi4wODgzNjU5NCAxMC45ODI0NTc4LDIuMDA5NTQ1OTYgMTAuOTYyOTM0NiwxLjkzNTYwNjc5IEMxMC45NDM0MTEzLDEuODYxNTYzNzkgMTAuODg1NTY4NCwxLjgwMzcyMDkyIDEwLjgxMTYyOTMsMS43ODQxOTc2NSBDMTAuNzM3NTg2MywxLjc2NDY3NDM5IDEwLjY1ODc2NjMsMS43ODYzNzg0NCAxMC42MDUyODUsMS44NDExMDU4OSBMOS44MzUzNjIzNiwyLjYxMTAyODU3IEM5Ljc3NDUwNzkyLDIuNjcxODgyOTggOS43NTYzMzQ2NywyLjc2MzM3MjMgOS43ODkyNTQyLDIuODQyODE1MzggQzkuODIyMTczNzcsMi45MjIyNTg0NCA5Ljg5OTc0NzU2LDIuOTc0MDc4MTYgOS45ODU3MzMwMSwyLjk3NDE4MiBMOS45ODU2MjkxNSwyLjk3NDE4MiBaIiBpZD0iUGF0aCI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTYuNDQzMDkxNzcsMS41ODE2OTU3NSBDNi41NjA2NDY3MywxLjU4MTY5NTc1IDYuNjU1NzcwNzEsMS40ODY0Njc5MSA2LjY1NTc3MDcxLDEuMzY5MDE2ODEgTDYuNjU1NzcwNzEsMC4yMjIyMzI4NzMgQzYuNjU1NzcwNzEsMC4xMDQ3ODE3NTUgNi41NjA2NDY3MywwLjAwOTU1MzkzNjYxIDYuNDQzMDkxNzcsMC4wMDk1NTM5MzY2MSBDNi4zMjU2NDA2NSwwLjAwOTU1MzkzNjYxIDYuMjMwNDEyODMsMC4xMDQ3ODE3NTUgNi4yMzA0MTI4MywwLjIyMjIzMjg3MyBMNi4yMzA0MTI4MywxLjM2OTAxNjgxIEM2LjIzMDQxMjgzLDEuNDg2NDY3OTEgNi4zMjU2NDA2NSwxLjU4MTY5NTc1IDYuNDQzMDkxNzcsMS41ODE2OTU3NSBaIiBpZD0iUGF0aCI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTIuODU2NTIzMiwyLjkxMTg3MzcyIEMyLjkxMDAwNDQ5LDIuOTY2OTEyNjkgMi45ODkwMzIxNSwyLjk4ODgyNDQ0IDMuMDYzMTc4OTksMi45NjkzMDExOCBDMy4xMzc0Mjk3LDIuOTQ5ODgxNzkgMy4xOTUzNzYzOSwyLjg5MTgzMTIzIDMuMjE0Nzk1ODEsMi44MTc2ODQzNiBDMy4yMzQzMTkwOCwyLjc0MzQzMzY1IDMuMjEyMzAzNDgsMi42NjQ1MDk4MyAzLjE1NzI2NDUxLDIuNjExMDI4NTcgTDIuMzg3MzQxODMsMS44NDExMDU4OSBDMi4zMzM4NjA1NCwxLjc4NjM3ODQ0IDIuMjU1MDQwNTksMS43NjQ2NzQzOSAyLjE4MDk5NzU2LDEuNzg0MTk3NjUgQzIuMTA2OTU0NTYsMS44MDM3MjA5MiAyLjA0OTIxNTU1LDEuODYxNTYzNzkgMi4wMjk2OTIyOSwxLjkzNTYwNjc5IEMyLjAxMDE2OTAyLDIuMDA5NTQ1OTYgMi4wMzE4NzMxLDIuMDg4MzY1OTQgMi4wODY2MDA1MiwyLjE0MTg0NzE5IEwyLjg1NjUyMzIsMi45MTE4NzM3MiBaIiBpZD0iUGF0aCI+PC9wYXRoPgogICAgICAgICAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgPGcgaWQ9IlBhZ2UiPjwvZz4KICAgICAgICAgICAgPC9nPgogICAgICAgICAgICA8ZyBpZD0iUGFnZSI+PC9nPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+"}},"time_used":398,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":308,"receive":90,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2","fqdn":"fonts.gstatic.com","domain":"gstatic.com","tld":"com"},"ip":{"addr":"142.250.178.67","port":443,"asn":15169,"as":"GOOGLE","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"font","requested_by":"https://www.youtube.com/embed/Gc2en3nHxA4","date":"2026-07-27T04:24:16.921Z","timestamp":1785126256921,"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: 353229\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-27T07:04:13.046777Z","times_seen":947013,"resource_available":false,"data":"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"}},"time_used":102,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":25,"receive":77,"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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.225Z","timestamp":1785126257225,"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-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/ticker-tape/?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 04:24:17 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: 9c1dee4213f72b0aa90aad75ee1dfda2\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":2695,"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-27T07:05:45.447518Z","times_seen":6001,"resource_available":false,"data":"W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtd01EZjojMDAwMDstLV8xLXdNRGY6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApOy0tXzItd01EZjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjAwKTstLV8zLXdNRGY6IzAwMDB9W2RhdGEtdGhlbWU9ZGFya117LS1fMC13TURmOiMwMDAwOy0tXzEtd01EZjp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCk7LS1fMi13TURmOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tXzMtd01EZjojMDAwMH0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elh7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsVHJlYnVjaGV0IE1TLFJvYm90byxVYnVudHUsc2Fucy1zZXJpZjtmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbjtmb250LXN0eWxlOm5vcm1hbDstLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZToxM3B4O2ZvbnQtc2l6ZTp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemUpO2ZvbnQtd2VpZ2h0OjQwMDstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjE4cHg7Y29sb3I6dmFyKC0tY29sb3ItY29tbW9uLXRvb2x0aXAtdGV4dCk7ZGlzcGxheTppbmxpbmUtZmxleDtsaW5lLWhlaWdodDp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodCk7b3BhY2l0eToxO3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246Zml4ZWQ7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgbGluZWFyO3otaW5kZXg6MTAwMH0uY29tbW9uLXRvb2x0aXAtLWhpZGRlbi1FSkJEOTZ6WHtvcGFjaXR5OjB9LmNvbW1vbi10b29sdGlwLS1ob3Jpem9udGFsLUVKQkQ5NnpYe21hcmdpbjo0cHggMH0uY29tbW9uLXRvb2x0aXAtLWhvcml6b250YWwtRUpCRDk2elguY29tbW9uLXRvb2x0aXAtLWZhcnRoZXItRUpCRDk2elh7bWFyZ2luOjhweCAwfS5jb21tb24tdG9vbHRpcC0tdmVydGljYWwtRUpCRDk2elh7bWFyZ2luOjAgNHB4fS5jb21tb24tdG9vbHRpcC0tdmVydGljYWwtRUpCRDk2elguY29tbW9uLXRvb2x0aXAtZmFydGhlci1FSkJEOTZ6WHttYXJnaW46MCA4cHh9LmNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fbm9ybWFsLUVKQkQ5NnpYe2ZsZXgtZGlyZWN0aW9uOnJvd30uY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9ub3JtYWwtRUpCRDk2elggLmNvbW1vbi10b29sdGlwX19ib2R5LUVKQkQ5NnpYe2JvcmRlci1lbmQtc3RhcnQtcmFkaXVzOjJweDtib3JkZXItc3RhcnQtc3RhcnQtcmFkaXVzOjJweH0uY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9ub3JtYWwtRUpCRDk2elggLmNvbW1vbi10b29sdGlwX19ib2R5LS1uby1idXR0b25zLUVKQkQ5NnpYLC5jb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX25vcm1hbC1FSkJEOTZ6WCAuY29tbW9uLXRvb2x0aXBfX2J1dHRvbi1jb250YWluZXItRUpCRDk2elh7Ym9yZGVyLWVuZC1lbmQtcmFkaXVzOjJweDtib3JkZXItc3RhcnQtZW5kLXJhZGl1czoycHh9LmNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fbm9ybWFsLUVKQkQ5NnpYIC5jb21tb24tdG9vbHRpcF9fYnV0dG9uLUVKQkQ5NnpYOm5vdCg6bGFzdC1jaGlsZCl7bWFyZ2luLWlubGluZS1lbmQ6MXB4fS5jb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX3JldmVyc2VkLUVKQkQ5NnpYe2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlfS5jb21tb24tdG9vbHRpcC0tZGlyZWN0aW9uX3JldmVyc2VkLUVKQkQ5NnpYIC5jb21tb24tdG9vbHRpcF9fYm9keS1FSkJEOTZ6WHtib3JkZXItZW5kLWVuZC1yYWRpdXM6MnB4O2JvcmRlci1zdGFydC1lbmQtcmFkaXVzOjJweH0uY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9yZXZlcnNlZC1FSkJEOTZ6WCAuY29tbW9uLXRvb2x0aXBfX2JvZHktLW5vLWJ1dHRvbnMtRUpCRDk2elgsLmNvbW1vbi10b29sdGlwLS1kaXJlY3Rpb25fcmV2ZXJzZWQtRUpCRDk2elggLmNvbW1vbi10b29sdGlwX19idXR0b24tY29udGFpbmVyLUVKQkQ5NnpYe2JvcmRlci1lbmQtc3RhcnQtcmFkaXVzOjJweDtib3JkZXItc3RhcnQtc3RhcnQtcmFkaXVzOjJweH0uY29tbW9uLXRvb2x0aXAtLWRpcmVjdGlvbl9yZXZlcnNlZC1FSkJEOTZ6WCAuY29tbW9uLXRvb2x0aXBfX2J1dHRvbi1FSkJEOTZ6WDpub3QoOmZpcnN0LWNoaWxkKXttYXJnaW4taW5saW5lLXN0YXJ0OjFweH0uY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItRUpCRDk2elh7cG9zaXRpb246cmVsYXRpdmV9LmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLUVKQkQ5NnpYOmFmdGVye2JvcmRlcjowIHNvbGlkO2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1jb21tb24tdG9vbHRpcC1iZyk7Ym94LXNpemluZzpib3JkZXItYm94O2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDowfS5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWJvdmUtRUpCRDk2elg6YWZ0ZXIsLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWxvdy1FSkJEOTZ6WDphZnRlcntib3JkZXItbGVmdDo2cHggc29saWQ7Ym9yZGVyLWxlZnQtY29sb3I6dmFyKC0tXzMtd01EZik7Ym9yZGVyLXJpZ2h0OjZweCBzb2xpZDtib3JkZXItcmlnaHQtY29sb3I6dmFyKC0tXzMtd01EZik7bGVmdDo1MCU7bWFyZ2luLWxlZnQ6LTZweH0uY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlbG93LUVKQkQ5NnpYOmFmdGVye2JvcmRlci1ib3R0b20td2lkdGg6NHB4O2JvdHRvbToxMDAlfS5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWJvdmUtRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLXRvcC13aWR0aDo0cHg7dG9wOjEwMCV9LmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hZnRlci1FSkJEOTZ6WDphZnRlciwuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlZm9yZS1FSkJEOTZ6WDphZnRlcntib3JkZXItYm90dG9tOjZweCBzb2xpZDtib3JkZXItYm90dG9tLWNvbG9yOnZhcigtLV8zLXdNRGYpO2JvcmRlci10b3A6NnB4IHNvbGlkO2JvcmRlci10b3AtY29sb3I6dmFyKC0tXzMtd01EZik7bWFyZ2luLXRvcDotNnB4O3RvcDo1MCV9LmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUtRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLXJpZ2h0LXdpZHRoOjRweDtyaWdodDoxMDAlfS5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWZ0ZXItRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWxlZnQtd2lkdGg6NHB4O2xlZnQ6MTAwJX0uY29tbW9uLXRvb2x0aXBfX2JvZHktRUpCRDk2elh7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1jb21tb24tdG9vbHRpcC1iZyk7Ym94LXNpemluZzpib3JkZXItYm94O2Rpc3BsYXk6YmxvY2s7bWF4LXdpZHRoOjMxMHB4O3BhZGRpbmc6M3B4IDhweDtwb3NpdGlvbjpyZWxhdGl2ZTt3aGl0ZS1zcGFjZTpwcmUtd3JhcDt3b3JkLXdyYXA6YnJlYWstd29yZDtvdmVyZmxvdzpoaWRkZW47dGV4dC1hbGlnbjpzdGFydH0uY29tbW9uLXRvb2x0aXBfX2JvZHktLXdpdGgtaG90a2V5LUVKQkQ5NnpYe2Rpc3BsYXk6ZmxleDttYXgtd2lkdGg6NDIwcHg7cGFkZGluZzowfS5jb21tb24tdG9vbHRpcF9fYm9keS0td2lkdGhfd2lkZS1FSkJEOTZ6WHttYXgtd2lkdGg6NjQwcHh9LmNvbW1vbi10b29sdGlwX19ib2R5LS13aWR0aF9uYXJyb3ctRUpCRDk2elh7bWF4LXdpZHRoOjIwMHB4fS5jb21tb24tdG9vbHRpcF9fYm9keS0tbm8tcGFkZGluZy1FSkJEOTZ6WHtwYWRkaW5nOjB9LmNvbW1vbi10b29sdGlwX19ob3RrZXktYmxvY2stRUpCRDk2elh7YWxpZ24taXRlbXM6Y2VudGVyO2NvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApO2Rpc3BsYXk6aW5saW5lLWZsZXg7ZmxleDoxIDAgYXV0bztqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2xpbmUtaGVpZ2h0OjEycHg7bWFyZ2luOjNweCAwO3BhZGRpbmctaW5saW5lLWVuZDo4cHh9LmNvbW1vbi10b29sdGlwX19ob3RrZXktYmxvY2stLWRpdmlkZXItRUpCRDk2elg6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTYwMCk7Y29udGVudDoiIjtoZWlnaHQ6MTAwJTttYXJnaW4taW5saW5lLWVuZDo4cHg7d2lkdGg6MXB4fS5jb21tb24tdG9vbHRpcF9faG90a2V5LXRleHQtRUpCRDk2elh7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6aW5saW5lLWZsZXg7bWFyZ2luOjNweCA4cHh9LmNvbW1vbi10b29sdGlwX19ob3RrZXktYnV0dG9uLUVKQkQ5NnpYe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTYwMCk7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1mYW1pbHk6LWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsVHJlYnVjaGV0IE1TLFJvYm90byxVYnVudHUsc2Fucy1zZXJpZjtmb250LWZlYXR1cmUtc2V0dGluZ3M6InRudW0iIG9uLCJsbnVtIiBvbjtoZWlnaHQ6MThweDtwYWRkaW5nOjFweCA2cHg7d2lkdGg6YXV0bzstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjE2cHg7bGluZS1oZWlnaHQ6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQpOy0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplOjEycHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7Ym9yZGVyLXJhZGl1czo0cHg7Ym94LXNpemluZzpib3JkZXItYm94O2ZvbnQtc2l6ZTp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemUpO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjYwMH0uY29tbW9uLXRvb2x0aXBfX3BsdXMtc2lnbi1FSkJEOTZ6WHtoZWlnaHQ6MTVweDtsaW5lLWhlaWdodDoxNHB4O3RleHQtYWxpZ246Y2VudGVyO3dpZHRoOjEzcHh9LmNvbW1vbi10b29sdGlwX19idXR0b24tY29udGFpbmVyLUVKQkQ5NnpYe2Rpc3BsYXk6ZmxleDtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmV9LmNvbW1vbi10b29sdGlwX19idXR0b24tRUpCRDk2elh7YWxpZ24taXRlbXM6Y2VudGVyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYnJhbmQpO2NvbG9yOiNmZmY7ZGlzcGxheTpmbGV4O3BhZGRpbmc6MCAxMHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsuY29tbW9uLXRvb2x0aXBfX2J1dHRvbi1FSkJEOTZ6WDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKX19LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXdoaXRle2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSl9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXdoaXRlIC5jb21tb24tdG9vbHRpcF9fYm9keS1FSkJEOTZ6WHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJnLXByaW1hcnkpO2JvcmRlci1yYWRpdXM6MH0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLUVKQkQ5NnpYe2JvcmRlcjoxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKX0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLUVKQkQ5NnpYOmFmdGVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1iZy1wcmltYXJ5KX0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZS1FSkJEOTZ6WDphZnRlciwuY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWxvdy1FSkJEOTZ6WDphZnRlcntib3JkZXItaW5saW5lLWVuZDo2cHggc29saWQ7Ym9yZGVyLWlubGluZS1lbmQtY29sb3I6dmFyKC0tXzAtd01EZik7Ym9yZGVyLWlubGluZS1zdGFydDo2cHggc29saWQ7Ym9yZGVyLWlubGluZS1zdGFydC1jb2xvcjp2YXIoLS1fMC13TURmKX0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hZnRlci1FSkJEOTZ6WDphZnRlciwuY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUtRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWJvdHRvbTo2cHggc29saWQ7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1fMC13TURmKTtib3JkZXItdG9wOjZweCBzb2xpZDtib3JkZXItdG9wLWNvbG9yOnZhcigtLV8wLXdNRGYpfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItRUpCRDk2elg6YmVmb3Jle2JvcmRlcjowIHNvbGlkO2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1ib3JkZXIpO2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jaztoZWlnaHQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDowO3otaW5kZXg6MTAwMH0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZS1FSkJEOTZ6WDpiZWZvcmUsLmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXdoaXRlIC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYmVsb3ctRUpCRDk2elg6YmVmb3Jle2JvcmRlci1pbmxpbmUtZW5kOjdweCBzb2xpZDtib3JkZXItaW5saW5lLWVuZC1jb2xvcjp2YXIoLS1fMC13TURmKTtib3JkZXItaW5saW5lLXN0YXJ0OjdweCBzb2xpZDtib3JkZXItaW5saW5lLXN0YXJ0LWNvbG9yOnZhcigtLV8wLXdNRGYpO2luc2V0LWlubGluZS1zdGFydDo1MCU7bWFyZ2luLWlubGluZS1zdGFydDotN3B4fS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlbG93LUVKQkQ5NnpYOmJlZm9yZXtib3JkZXItYm90dG9tLXdpZHRoOjZweDt0b3A6LTZweH0uY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtd2hpdGUgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZS1FSkJEOTZ6WDpiZWZvcmV7Ym9yZGVyLXRvcC13aWR0aDo2cHg7Ym90dG9tOi02cHh9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXdoaXRlIC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYWZ0ZXItRUpCRDk2elg6YmVmb3JlLC5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlZm9yZS1FSkJEOTZ6WDpiZWZvcmV7Ym9yZGVyLWJvdHRvbTo3cHggc29saWQ7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1fMC13TURmKTtib3JkZXItdG9wOjdweCBzb2xpZDtib3JkZXItdG9wLWNvbG9yOnZhcigtLV8wLXdNRGYpO21hcmdpbi10b3A6LTdweDt0b3A6NTAlfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWJlZm9yZS1FSkJEOTZ6WDpiZWZvcmV7Ym9yZGVyLWlubGluZS1lbmQtd2lkdGg6NnB4O2luc2V0LWlubGluZS1zdGFydDotNnB4fS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS13aGl0ZSAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWFmdGVyLUVKQkQ5NnpYOmJlZm9yZXtib3JkZXItaW5saW5lLXN0YXJ0LXdpZHRoOjZweDtpbnNldC1pbmxpbmUtZW5kOi02cHh9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXJvdW5kLXNoYWRvd3tib3gtc2hhZG93OjAgMXB4IDNweCAwICMyYTJjMzk0YTtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1yb3VuZC1zaGFkb3cgLmNvbW1vbi10b29sdGlwX19ib2R5LUVKQkQ5NnpYe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYmctcHJpbWFyeSl9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXJvdW5kLXNoYWRvdyAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWJnLXByaW1hcnkpfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1yb3VuZC1zaGFkb3cgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1hYm92ZS1FSkJEOTZ6WDphZnRlciwuY29tbW9uLXRvb2x0aXAtRUpCRDk2elgudGhlbWUtcm91bmQtc2hhZG93IC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci0tYmVsb3ctRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWlubGluZS1lbmQ6NnB4IHNvbGlkO2JvcmRlci1pbmxpbmUtZW5kLWNvbG9yOnZhcigtLV8wLXdNRGYpO2JvcmRlci1pbmxpbmUtc3RhcnQ6NnB4IHNvbGlkO2JvcmRlci1pbmxpbmUtc3RhcnQtY29sb3I6dmFyKC0tXzAtd01EZil9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLXJvdW5kLXNoYWRvdyAuY29tbW9uLXRvb2x0aXBfX2Vhci1ob2xkZXItLWFmdGVyLUVKQkQ5NnpYOmFmdGVyLC5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1yb3VuZC1zaGFkb3cgLmNvbW1vbi10b29sdGlwX19lYXItaG9sZGVyLS1iZWZvcmUtRUpCRDk2elg6YWZ0ZXJ7Ym9yZGVyLWJvdHRvbTo2cHggc29saWQ7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1fMC13TURmKTtib3JkZXItdG9wOjZweCBzb2xpZDtib3JkZXItdG9wLWNvbG9yOnZhcigtLV8wLXdNRGYpfS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1jaGFydCAuY29tbW9uLXRvb2x0aXBfX2JvZHktRUpCRDk2elh7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1iZy1wcmltYXJ5KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWNvbG9yLWRpdmlkZXIpO2JvcmRlci1yYWRpdXM6MTZweDtib3gtc2hhZG93OjAgMnB4IDRweCB2YXIoLS1jb2xvci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5KTttYXgtd2lkdGg6MzQycHh9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLWNoYXJ0IC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci1FSkJEOTZ6WDphZnRlcntjb250ZW50Om5vbmV9LmNvbW1vbi10b29sdGlwLUVKQkQ5NnpYLnRoZW1lLW5ld3MgLmNvbW1vbi10b29sdGlwX19ib2R5LUVKQkQ5NnpYe2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYmctcHJpbWFyeSk7Ym9yZGVyLXJhZGl1czo4cHg7Ym94LXNoYWRvdzowIDJweCA0cHggdmFyKC0tY29sb3Itc2hhZG93LXByaW1hcnktbmV1dHJhbC1leHRyYS1oZWF2eSk7bWF4LXdpZHRoOjMyMHB4fS5jb21tb24tdG9vbHRpcC1FSkJEOTZ6WC50aGVtZS1uZXdzIC5jb21tb24tdG9vbHRpcF9fZWFyLWhvbGRlci1FSkJEOTZ6WDphZnRlcntjb250ZW50Om5vbmV9"}},"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.tradingview-widget.com/static/bundles/embed/31396.dada17abc4adbf073139.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.340Z","timestamp":1785126257340,"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-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/31396.dada17abc4adbf073139.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/crypto-mkt-screener/?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 04:24:17 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: \"6a323c19-182f2\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Wed, 17 Jun 2026 06:18:01 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/17/2026 11:26:01\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 373f70fd0dfef40809943af0bcbf3b6b\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":99058,"size_decoded":18482,"mime_type":"text/css; charset=utf-8","magic":"ASCII text, with very long lines (65536), with no line terminators","md5":"66317ce4b57c72fcfe161bb2ec83c51a","sha1":"200b2ec9adf4edbbe5f116abd8876b41cdcbe3d2","sha256":"9aab142f72bf381e18723a19f19460cabe90ab7541ad65e69058e08a51975478","sha512":"6d110ae2fa0bc39d29f23be62ef62c56cef642e4fbe558bd4a9235481634d8230cd67a814ad7b51f0ad02357748dc906bc668be8905d86789d1cf8c5a54ebfbd","ssdeep":"1536:n2Qw5vYV3KyVHYBUAbwKkdqmHCtGJWmJPpyyMJgKz8e1nq/eI+GNqz57ApA/q/Yq:A5v8anBUAbeENyv","tlshash":"80a376a5f2522136242b8e3a5b94fd545134e901ef267ffff942e92945c3ed2d22380b","first_seen":"2026-06-17T14:59:58.198603Z","last_seen":"2026-07-27T07:14:43.727563Z","times_seen":267,"resource_available":false,"data":"LnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItbGVnYWN5LWJnLXdpZGdldCk7aGVpZ2h0OjEwMCU7b3ZlcmZsb3c6aGlkZGVufS50di13aWRnZXQtc2NyZWVuZXJfX2NvbnRhaW5lciAudHYtc2NyZWVuZXJfX2NvbnRlbnQtcGFuZXtvdmVyZmxvdy14OmF1dG99W2RhdGEtdGhlbWU9ZGFya10sW2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtekpxcTojMDAwMH1kaXYudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXIudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXItLXRyYW5zcGFyZW50LGRpdi50di13aWRnZXQtc2NyZWVuZXJfX2NvbnRhaW5lci50di13aWRnZXQtc2NyZWVuZXJfX2NvbnRhaW5lci0tdHJhbnNwYXJlbnQgLnR2LXNjcmVlbmVyLXRvb2xiYXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMC16SnFxKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7ZGl2LnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLS10cmFuc3BhcmVudCAudHYtZGF0YS10YWJsZV9fdGJvZHkgLnR2LWRhdGEtdGFibGVfX3N0cm9rZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8wLXpKcXEpfX1kaXYudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXIudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXItLXRyYW5zcGFyZW50IC50di1zY3JlZW5lci10YWJsZV9faGVhZC13cmFwLGRpdi50di13aWRnZXQtc2NyZWVuZXJfX2NvbnRhaW5lci50di13aWRnZXQtc2NyZWVuZXJfX2NvbnRhaW5lci0tdHJhbnNwYXJlbnQgLnR2LXNjcmVlbmVyLXRhYmxlX190aHtib3JkZXItaW5saW5lLWVuZC1jb2xvcjp2YXIoLS1fMC16SnFxKX1kaXYudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXIudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXItLXRyYW5zcGFyZW50IC50di1zY3JlZW5lci1zdGlja3ktaGVhZGVyLXdyYXBwZXIsZGl2LnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLS10cmFuc3BhcmVudCAudHYtc2NyZWVuZXItdGFibGVfX2NvbC0tZHJhZ2dpbmcsZGl2LnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLS10cmFuc3BhcmVudCAudHYtc2NyZWVuZXItdGFibGVfX3RoLS1kcmFnZ2luZyxkaXYudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXIudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXItLXRyYW5zcGFyZW50IC50di1zY3JlZW5lci10YWJsZV9fdGhlYWR7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMC16SnFxKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7ZGl2LnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLS10cmFuc3BhcmVudCAudHYtc2NyZWVuZXItdGFibGVfX2hlYWQtd3JhcDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8wLXpKcXEpfX1kaXYudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXIudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXItLXRyYW5zcGFyZW50IC50di1zY3JlZW5lci10YWJsZV9fZmlsdGVyLWJ1dHRvbntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8wLXpKcXEpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXtkaXYudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXIudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXItLXRyYW5zcGFyZW50IC50di1zY3JlZW5lci1zdGlja3ktaGVhZGVyLXdyYXBwZXJfX2ZpZWxkcy1idXR0b246aG92ZXIsZGl2LnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLS10cmFuc3BhcmVudCAudHYtc2NyZWVuZXItdGFibGVfX2ZpbHRlci1idXR0b246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMC16SnFxKX19ZGl2LnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLnR2LXdpZGdldC1zY3JlZW5lcl9fY29udGFpbmVyLS10cmFuc3BhcmVudCAudHYtZHJvcGRvd24tYmVoYXZpb3JfX2J1dHRvbntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8wLXpKcXEpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXtkaXYudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXIudHYtd2lkZ2V0LXNjcmVlbmVyX19jb250YWluZXItLXRyYW5zcGFyZW50IC50di1kcm9wZG93bi1iZWhhdmlvcl9fYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzAtekpxcSl9fS50di1kcm9wZG93bi1iZWhhdmlvcl9fYm9keXtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTpub25lfS50di1kcm9wZG93bi1iZWhhdmlvcl9fYm9keS5pLW9wZW5lZHtkaXNwbGF5OmJsb2NrfS50di1kcm9wZG93bi1iZWhhdmlvcl9fYnV0dG9ue2N1cnNvcjpwb2ludGVyfS50di1kcm9wZG93bi1iZWhhdmlvcl9faW5zY3JvbGwsLnR2LWRyb3Bkb3duLWJlaGF2aW9yX19pdGVtLC50di1kcm9wZG93bi1iZWhhdmlvcl9fc2Nyb2xse2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246cmVsYXRpdmV9LnR2LWRyb3Bkb3duLWJlaGF2aW9yX19zY3JvbGx7b3ZlcmZsb3c6aGlkZGVufVtkYXRhLXRoZW1lPWxpZ2h0XXstLV8wLUktMzM6I2U2ZWFlZjstLV8xLUktMzM6I2U2ZTllZDstLV8yLUktMzM6I2Y0ZWNlYzstLV8zLUktMzM6I2VhZjNmYjstLV80LUktMzM6I2YzZjVmOTstLV81LUktMzM6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1fNi1JLTMzOiM5MTk2OTE7LS1fNy1JLTMzOiM5OTk7LS1fOC1JLTMzOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MCl9W2RhdGEtdGhlbWU9ZGFya117LS1fMC1JLTMzOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tXzEtSS0zMzp2YXIoLS1jb2xvci1jb2xkLWdyYXktODUwKTstLV8yLUktMzM6IzJjMjAzMDstLV8zLUktMzM6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCk7LS1fNC1JLTMzOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tXzUtSS0zMzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTApOy0tXzYtSS0zMzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLV83LUktMzM6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1fOC1JLTMzOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApfS50di1kYXRhLXRhYmxle2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTtib3JkZXItc3BhY2luZzowO2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcmVndWxhcik7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MTAwJX0udHYtZGF0YS10YWJsZV9faGVhZGVye3BhZGRpbmc6MTBweCAxMnB4fS50di1kYXRhLXRhYmxlX190aGVhZHtib3JkZXI6M3B4IHNvbGlkO2JvcmRlci1ib3R0b206bm9uZX0udHYtZGF0YS10YWJsZV9fc3Ryb2tle2hlaWdodDo0MHB4fS50di1kYXRhLXRhYmxlX19zdHJva2UtLWhpZGV7ZGlzcGxheTpub25lfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtZGF0YS10YWJsZV9fdGJvZHkgLnR2LWRhdGEtdGFibGVfX3N0cm9rZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV80LUktMzMpfX0udHYtZGF0YS10YWJsZV9fc3Ryb2tlLS1obCAudHYtZGF0YS10YWJsZV9fY2VsbDpmaXJzdC1jaGlsZHtwb3NpdGlvbjpyZWxhdGl2ZX0udHYtZGF0YS10YWJsZV9fc3Ryb2tlLS1obCAudHYtZGF0YS10YWJsZV9fY2VsbDpmaXJzdC1jaGlsZDpiZWZvcmV7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMDAlO2luc2V0LWlubGluZS1zdGFydDowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3dpZHRoOjNweH0udHYtZGF0YS10YWJsZV9fc3Ryb2tlLS1obC1hY3RpdmUgLnR2LWRhdGEtdGFibGVfX2NlbGw6Zmlyc3QtY2hpbGQ6YmVmb3Jle2JhY2tncm91bmQ6dmFyKC0tY29sb3ItYnJhbmQpfS50di1kYXRhLXRhYmxlX19zdHJva2UtLWhsLWRhbmdlciAudHYtZGF0YS10YWJsZV9fY2VsbDpmaXJzdC1jaGlsZDpiZWZvcmV7YmFja2dyb3VuZDp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApfS50di1kYXRhLXRhYmxlX19zdHJva2UtLWhsLXN1Y2Nlc3MgLnR2LWRhdGEtdGFibGVfX2NlbGw6Zmlyc3QtY2hpbGQ6YmVmb3Jle2JhY2tncm91bmQ6dmFyKC0tY29sb3ItbGVnYWN5LXN1Y2Nlc3MpfS50di1kYXRhLXRhYmxlX19zdHJva2U6bGFzdC1jaGlsZCAudHYtZGF0YS10YWJsZV9fY2VsbHtib3JkZXItYm90dG9tOnZhcigtLV8wLUktMzMpIG5vbmV9LnR2LWRhdGEtdGFibGVfX3N0cm9rZS0tZ3JheWVke2NvbG9yOnZhcigtLV83LUktMzMpfS50di1kYXRhLXRhYmxlX19jZWxse2JvcmRlci1ib3R0b206MXB4IHNvbGlkO2JvcmRlci1ib3R0b20tY29sb3I6dmFyKC0tXzAtSS0zMyk7Zm9udC1zaXplOjEzcHg7cGFkZGluZy1ibG9jazoxMHB4IDEwcHg7cGFkZGluZy1pbmxpbmU6MTFweCAxMHB4O3RleHQtdHJhbnNmb3JtOmNhcGl0YWxpemU7dmVydGljYWwtYWxpZ246bWlkZGxlfS50di1kYXRhLXRhYmxlX190Ym9keSAudHYtZGF0YS10YWJsZV9fY2VsbCwudHYtZGF0YS10YWJsZV9fdGJvZHkgLnR2LWRhdGEtdGFibGVfX2NlbGwgKnstd2Via2l0LXVzZXItc2VsZWN0OnRleHQhaW1wb3J0YW50O3VzZXItc2VsZWN0OnRleHQhaW1wb3J0YW50fS50di1kYXRhLXRhYmxlX19jZWxsLS1ib2xke2ZvbnQtd2VpZ2h0OjcwMH0udHYtZGF0YS10YWJsZV9fY2VsbC0taW5saW5lZHtkaXNwbGF5OmlubGluZS1ibG9ja30udHYtZGF0YS10YWJsZV9fY2VsbC0tcmlnaHQtYWxpZ257dGV4dC1hbGlnbjplbmQhaW1wb3J0YW50fS50di1kYXRhLXRhYmxlX19jZWxsLS1zdGF0dXN7YmFja2dyb3VuZDp2YXIoLS1fMS1JLTMzKTtoZWlnaHQ6MTVweDt3aGl0ZS1zcGFjZTpub3dyYXB9LnR2LWRhdGEtdGFibGVfX2NlbGwtLWxlZnQtbWFyZ2luPnNwYW57bWFyZ2luLWlubGluZS1zdGFydDoxMHB4fS50di1kYXRhLXRhYmxlX19jZWxsLS1yZWQtYmFja2dyb3VuZHtiYWNrZ3JvdW5kOnZhcigtLV8yLUktMzMpfS50di1kYXRhLXRhYmxlX19jZWxsLS1ibHVlLWJhY2tncm91bmR7YmFja2dyb3VuZDp2YXIoLS1fMy1JLTMzKX0udHYtZGF0YS10YWJsZV9fY2VsbC0tc3ltYm9sLWNlbGx7Y3Vyc29yOnBvaW50ZXI7Zm9udC13ZWlnaHQ6NjAwO3Bvc2l0aW9uOnJlbGF0aXZlfS50di1kYXRhLXRhYmxlX19jZWxsLS1idXR0b25zLWNlbGx7cGFkZGluZzowIDVweDt0ZXh0LWFsaWduOmVuZCFpbXBvcnRhbnQ7d2hpdGUtc3BhY2U6bm93cmFwO3dpZHRoOjUycHh9LnR2LWRhdGEtdGFibGVfX2NlbGwtLWJ1dHRvbntjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MTJweDtwYWRkaW5nLWlubGluZS1lbmQ6NXB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aWR0aDoxMnB4O2ZpbGw6IzljYTBhNn0udHYtZGF0YS10YWJsZV9fY2VsbC0tYnV0dG9uLmktaG92ZXJ7ZmlsbDp2YXIoLS1fNS1JLTMzKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWRhdGEtdGFibGVfX2NlbGwtLWJ1dHRvbjpob3ZlcntmaWxsOnZhcigtLV81LUktMzMpfX0udHYtZGF0YS10YWJsZV9fY2VsbC0tdGV4dHt0ZXh0LXRyYW5zZm9ybTpub25lfS50di1kYXRhLXRhYmxlX19jZWxsLS10ZXh0LW5vd3JhcHt3aGl0ZS1zcGFjZTpub3dyYXB9LnR2LWRhdGEtdGFibGVfX3RoZWFkIC50di1kYXRhLXRhYmxlX19jZWxse2NvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MDApO2N1cnNvcjpkZWZhdWx0O2ZvbnQtd2VpZ2h0OjQwMDtwb3NpdGlvbjpyZWxhdGl2ZTt0ZXh0LWFsaWduOnN0YXJ0O3doaXRlLXNwYWNlOm5vd3JhcH0udHYtZGF0YS10YWJsZV9fc29ydGFibGV7Y3Vyc29yOnBvaW50ZXJ9LnR2LWRhdGEtdGFibGVfX3NvcnRhYmxlLS1hc2M6YWZ0ZXJ7Ym9yZGVyOjRweCBzb2xpZCAjMDAwMDtib3JkZXItYm90dG9tOjRweCBzb2xpZCB2YXIoLS1fNi1JLTMzKTtjb250ZW50OiIiO2N1cnNvcjpwb2ludGVyO21hcmdpbi10b3A6LTdweDttYXJnaW4taW5saW5lLXN0YXJ0OjVweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlfS50di1kYXRhLXRhYmxlX19zb3J0YWJsZS0tZGVzYzphZnRlcntib3JkZXI6NHB4IHNvbGlkICMwMDAwO2JvcmRlci10b3A6NHB4IHNvbGlkIHZhcigtLV82LUktMzMpO2NvbnRlbnQ6IiI7Y3Vyc29yOnBvaW50ZXI7bWFyZ2luLXRvcDotMnB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6NXB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCV9LnR2LWRhdGEtdGFibGVfX2J1dHRvbntjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MTJweDtwYWRkaW5nLWlubGluZS1lbmQ6NXB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aWR0aDoxMnB4O2ZpbGw6IzljYTBhNn1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWRhdGEtdGFibGVfX2J1dHRvbjpob3ZlcntmaWxsOnZhcigtLV81LUktMzMpfX0udHYtZGF0YS10YWJsZV9faW5mb3JtYXRpb24tYnV0dG9ue2N1cnNvcjpkZWZhdWx0O21hcmdpbi1pbmxpbmUtZW5kOjJweH0udHYtZGF0YS10YWJsZV9faW5mb3JtYXRpb24tYnV0dG9uIHN2Z3toZWlnaHQ6MTJweDt3aWR0aDoxMnB4fS50di1kYXRhLXRhYmxlX19pbmZvcm1hdGlvbi1idXR0b24uaW5mb3JtYXRpb257Y29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApfS50di1kYXRhLXRhYmxlX19pbmZvcm1hdGlvbi1idXR0b24ud2FybmluZ3tjb2xvcjp2YXIoLS1jb2xvci10YW4tb3JhbmdlLTUwMCl9LnR2LWRhdGEtdGFibGVfX2luZm9ybWF0aW9uLWJ1dHRvbi5lcnJvcntjb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApfS50di1kYXRhLXRhYmxlX19lZGl0LWJ1dHRvbiBzdmd7aGVpZ2h0OjEycHg7d2lkdGg6MTBweH0udHYtZGF0YS10YWJsZV9fY2xvc2UtYnV0dG9uIHN2Z3toZWlnaHQ6MTJweDt3aWR0aDoxMnB4fS50di1kYXRhLXRhYmxlX19ibHVlLXRleHR7Y29sb3I6dmFyKC0tY29sb3ItYnJhbmQpfS50di1kYXRhLXRhYmxlX19saWdodC1yZWQtdGV4dHtjb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApfS50di1kYXRhLXRhYmxlX19yZWQtdGV4dHtjb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApfS50di1kYXRhLXRhYmxlX19ncmVlbi10ZXh0e2NvbG9yOnZhcigtLWNvbG9yLWxlZ2FjeS1zdWNjZXNzKX0udHYtZGF0YS10YWJsZV9fcmVkLWdyZWVuLXRleHR7Y29sb3I6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS01MDApfS50di1kYXRhLXRhYmxlX19ncmV5LXRleHR7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1zZWNvbmRhcnkpfS50di1kYXRhLXRhYmxlX19kcm9wZG93bi1idXR0b24td3JhcHtwYWRkaW5nLWJsb2NrOjAgMDtwYWRkaW5nLWlubGluZToxNXB4IDA7d2lkdGg6MTVweH0udHYtZGF0YS10YWJsZV9fZHJvcGRvd24tYnV0dG9ue2Rpc3BsYXk6aW5saW5lLWJsb2NrfS50di1kYXRhLXRhYmxlX19kcm9wZG93bi1idXR0b24gc3Zne2ZpbGw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9LnR2LWRhdGEtdGFibGVfX2Ryb3Bkb3duLWJ1dHRvbi1jcm9zcy1hbGlnbntwYWRkaW5nLWlubGluZS1lbmQ6OXB4fS50di1kYXRhLXRhYmxlX19kcm9wZG93bi1zZWFyY2gtd3JhcHtib3JkZXItYm90dG9tOjFweCBzb2xpZDtib3JkZXItYm90dG9tLWNvbG9yOnZhcigtLV8wLUktMzMpO2hlaWdodDo0NXB4O3Bvc2l0aW9uOnJlbGF0aXZlfS50di1kYXRhLXRhYmxlX19kcm9wZG93bi1zZWFyY2gtaW5wdXR7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1wYW5lLWJnKTtib3JkZXI6bm9uZTtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1yZWd1bGFyKTtkaXNwbGF5OmJsb2NrO2hlaWdodDo0NXB4O21hcmdpbjowO3BhZGRpbmc6MTBweCAyMnB4IDA7d2lkdGg6MTAwJX0udHYtZGF0YS10YWJsZV9fZHJvcGRvd24td3JhcHtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246Zml4ZWQhaW1wb3J0YW50O3dpZHRoOjI0MHB4fS50di1kYXRhLXRhYmxlX19kcm9wZG93bi1sYWJlbC0tYnJlYWthYmxle3dvcmQtYnJlYWs6YnJlYWstd29yZH1bZGF0YS10aGVtZT1saWdodF17LS1fMC1fYmhpOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tXzEtX2JoaTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLV8yLV9iaGk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1fMy1fYmhpOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tXzQtX2JoaTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLV81LV9iaGk6dmFyKC0tY29sb3Itd2hpdGUpOy0tXzYtX2JoaTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzAwKTstLV83LV9iaGk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTcwMCk7LS1fOC1fYmhpOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tXzktX2JoaTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLV9iaGk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1fMS1fYmhpOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tXzItX2JoaTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLV8zLV9iaGk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1fNC1fYmhpOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xMDApOy0tXzUtX2JoaTp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLV82LV9iaGk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1fNy1fYmhpOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tXzgtX2JoaTp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLV85LV9iaGk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9LnR2LWNvbnRyb2wtcmFkaW97bWFyZ2luLWlubGluZS1zdGFydDo0cHg7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50fS50di1jb250cm9sLXJhZGlvLS1pbi1hY3Rpb25ze21heC13aWR0aDo1MCV9QG1lZGlhIChtYXgtd2lkdGg6NDc5cHgpey50di1jb250cm9sLXJhZGlvLS1pbi1hY3Rpb25ze21heC13aWR0aDpub25lfX0udHYtY29udHJvbC1yYWRpbywudHYtY29udHJvbC1yYWRpb19fbGFiZWx7ZGlzcGxheTppbmxpbmUtYmxvY2s7cG9zaXRpb246cmVsYXRpdmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmU7dmVydGljYWwtYWxpZ246bWlkZGxlfS50di1jb250cm9sLXJhZGlvLS1ub3dyYXAsLnR2LWNvbnRyb2wtcmFkaW9fX2xhYmVsLS1ub3dyYXB7d2hpdGUtc3BhY2U6bm93cmFwfS50di1jb250cm9sLXJhZGlvX19pbnB1dHtoZWlnaHQ6MThweDtpbnNldC1pbmxpbmUtc3RhcnQ6MDtvcGFjaXR5OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MThweH0udHYtY29udHJvbC1yYWRpb19fYm94e2JveC1zaXppbmc6Ym9yZGVyLWJveDtsaW5lLWhlaWdodDoxO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4zNXMgZWFzZX0udHYtY29udHJvbC1yYWRpb19fYm94LC50di1jb250cm9sLXJhZGlvX19ib3g6YmVmb3Jle2JvcmRlci1yYWRpdXM6M3B4O2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjE4cHg7d2lkdGg6MThweH0udHYtY29udHJvbC1yYWRpb19fYm94OmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Y29udGVudDoiIjtpbnNldC1pbmxpbmUtc3RhcnQ6NTAlO21hcmdpbi10b3A6LTlweDttYXJnaW4taW5saW5lLXN0YXJ0Oi05cHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt0cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjM1cyBlYXNlLGJhY2tncm91bmQtY29sb3IgLjM1cyBlYXNlLGJvcmRlci1yYWRpdXMgLjM1cyBlYXNlfS50di1jb250cm9sLXJhZGlvX19ib3g6YWZ0ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLV8wLV9iaGkpO2JvcmRlci1yYWRpdXM6M3B4O2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItd2lkdGg6MXB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjE4cHg7aW5zZXQtaW5saW5lLXN0YXJ0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjM1cyBlYXNlO3dpZHRoOjE4cHh9LnR2LWNvbnRyb2wtcmFkaW9fX2JveCBzdmd7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTJweDtpbnNldC1pbmxpbmUtc3RhcnQ6NTAlO21hcmdpbi10b3A6LTZweDttYXJnaW4taW5saW5lLXN0YXJ0Oi02cHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt3aWR0aDoxMnB4O3N0cm9rZTojMDAwMDt0cmFuc2Zvcm06c2NhbGUoMCk7dHJhbnNpdGlvbjpzdHJva2UgLjM1cyBlYXNlIDFtcyx0cmFuc2Zvcm0gLjM1cyBlYXNlIDFtc30udHYtY29udHJvbC1yYWRpb19fbGFiZWx7bWFyZ2luLWlubGluZS1lbmQ6MTBweDt3aGl0ZS1zcGFjZTpub3JtYWx9LnR2LWNvbnRyb2wtcmFkaW9fX2xhYmVsLS10d28tbGluZXN7d2lkdGg6MTU1cHh9LnR2LWNvbnRyb2wtcmFkaW9fX2xhYmVsLS1ub3dyYXB7d2hpdGUtc3BhY2U6bm93cmFwfS50di1jb250cm9sLXJhZGlvX19sYWJlbC0tbGlsLWxpbmUtaGVpZ2h0e2xpbmUtaGVpZ2h0OjE2cHg7bWF4LXdpZHRoOjgwJTttaW4td2lkdGg6NDUlfS50di1jb250cm9sLXJhZGlvX19sYWJlbCsudHYtY29udHJvbC1yYWRpb3ttYXJnaW4taW5saW5lLXN0YXJ0OjB9LnR2LWNvbnRyb2wtcmFkaW8rLnR2LWNvbnRyb2wtcmFkaW9fX2xhYmVse21hcmdpbi1pbmxpbmUtZW5kOjA7bWFyZ2luLWlubGluZS1zdGFydDoxMHB4O21heC13aWR0aDpjYWxjKDEwMCUgLSAxZXggLSAyOHB4KX0udHYtY29udHJvbC1yYWRpbzphY3RpdmUgLnR2LWNvbnRyb2wtcmFkaW9fX2JveCwudHYtY29udHJvbC1yYWRpb19faW5wdXQ6Zm9jdXMrLnR2LWNvbnRyb2wtcmFkaW9fX2JveHt3aWxsLWNoYW5nZTpiYWNrZ3JvdW5kLWNvbG9yfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtY29udHJvbC1yYWRpbzpob3ZlciAudHYtY29udHJvbC1yYWRpb19fYm94e3dpbGwtY2hhbmdlOmJhY2tncm91bmQtY29sb3J9fS50di1jb250cm9sLXJhZGlvOmFjdGl2ZSAudHYtY29udHJvbC1yYWRpb19fYm94OmJlZm9yZSwudHYtY29udHJvbC1yYWRpb19faW5wdXQ6Zm9jdXMrLnR2LWNvbnRyb2wtcmFkaW9fX2JveDpiZWZvcmV7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtLGJvcmRlci1yYWRpdXN9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1jb250cm9sLXJhZGlvOmhvdmVyIC50di1jb250cm9sLXJhZGlvX19ib3g6YmVmb3Jle3dpbGwtY2hhbmdlOnRyYW5zZm9ybSxib3JkZXItcmFkaXVzfX0udHYtY29udHJvbC1yYWRpbzphY3RpdmUgLnR2LWNvbnRyb2wtcmFkaW9fX2JveDphZnRlciwudHYtY29udHJvbC1yYWRpb19faW5wdXQ6Zm9jdXMrLnR2LWNvbnRyb2wtcmFkaW9fX2JveDphZnRlcnt3aWxsLWNoYW5nZTpib3JkZXItY29sb3J9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1jb250cm9sLXJhZGlvOmhvdmVyIC50di1jb250cm9sLXJhZGlvX19ib3g6YWZ0ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLV8xLV9iaGkpO3dpbGwtY2hhbmdlOmJvcmRlci1jb2xvcn19LnR2LWNvbnRyb2wtcmFkaW86YWN0aXZlIC50di1jb250cm9sLXJhZGlvX19ib3g6YWZ0ZXIsLnR2LWNvbnRyb2wtcmFkaW9fX2lucHV0OmZvY3VzKy50di1jb250cm9sLXJhZGlvX19ib3g6YWZ0ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLV8yLV9iaGkpfS50di1jb250cm9sLXJhZGlvX19pbnB1dDpjaGVja2VkKy50di1jb250cm9sLXJhZGlvX19ib3h7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMy1fYmhpKX0udHYtY29udHJvbC1yYWRpb19faW5wdXQ6Y2hlY2tlZCsudHYtY29udHJvbC1yYWRpb19fYm94LC50di1jb250cm9sLXJhZGlvX19pbnB1dDpjaGVja2VkKy50di1jb250cm9sLXJhZGlvX19ib3g6YWZ0ZXIsLnR2LWNvbnRyb2wtcmFkaW9fX2lucHV0OmNoZWNrZWQrLnR2LWNvbnRyb2wtcmFkaW9fX2JveDpiZWZvcmV7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSl9LnR2LWNvbnRyb2wtcmFkaW9fX2lucHV0OmNoZWNrZWQrLnR2LWNvbnRyb2wtcmFkaW9fX2JveDpiZWZvcmV7Ym9yZGVyLXJhZGl1czo1MCU7dHJhbnNmb3JtOnNjYWxlKDApfS50di1jb250cm9sLXJhZGlvX19pbnB1dDpjaGVja2VkKy50di1jb250cm9sLXJhZGlvX19ib3g6YWZ0ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLV80LV9iaGkpfS50di1jb250cm9sLXJhZGlvX19pbnB1dDpjaGVja2VkKy50di1jb250cm9sLXJhZGlvX19ib3ggc3Zne3N0cm9rZTp2YXIoLS1fNS1fYmhpKTt0cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNpdGlvbi1kZWxheTo4Ny41bXM7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC4yMTUsLjYxLC4zNTUsMSk7d2lsbC1jaGFuZ2U6c3Ryb2tlLHRyYW5zZm9ybX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWNvbnRyb2wtcmFkaW86aG92ZXIgLnR2LWNvbnRyb2wtcmFkaW9fX2lucHV0OmNoZWNrZWQrLnR2LWNvbnRyb2wtcmFkaW9fX2JveHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV82LV9iaGkpfS50di1jb250cm9sLXJhZGlvOmhvdmVyIC50di1jb250cm9sLXJhZGlvX19pbnB1dDpjaGVja2VkKy50di1jb250cm9sLXJhZGlvX19ib3g6YWZ0ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLV83LV9iaGkpfX0udHYtY29udHJvbC1yYWRpbzphY3RpdmUgLnR2LWNvbnRyb2wtcmFkaW9fX2lucHV0OmNoZWNrZWQrLnR2LWNvbnRyb2wtcmFkaW9fX2JveCwudHYtY29udHJvbC1yYWRpb19faW5wdXQ6Zm9jdXMtdmlzaWJsZTpjaGVja2VkKy50di1jb250cm9sLXJhZGlvX19ib3h7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fOC1fYmhpKX0udHYtY29udHJvbC1yYWRpbzphY3RpdmUgLnR2LWNvbnRyb2wtcmFkaW9fX2lucHV0OmNoZWNrZWQrLnR2LWNvbnRyb2wtcmFkaW9fX2JveDphZnRlciwudHYtY29udHJvbC1yYWRpb19faW5wdXQ6Zm9jdXMtdmlzaWJsZTpjaGVja2VkKy50di1jb250cm9sLXJhZGlvX19ib3g6YWZ0ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLV85LV9iaGkpfS50di1jb250cm9sLXJhZGlvX19pbnB1dFtkaXNhYmxlZF0rLnR2LWNvbnRyb2wtcmFkaW9fX2JveHtvcGFjaXR5Oi41fS50di1jb250cm9sLXJhZGlvLmktZXJyb3IgLnR2LWNvbnRyb2wtcmFkaW9fX2JveDphZnRlcntib3JkZXItY29sb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKX0udHYtY29udHJvbC1yYWRpb19fYm94e2JvcmRlci1yYWRpdXM6NTAlO2hlaWdodDoxMHB4O292ZXJmbG93OnZpc2libGU7d2lkdGg6MTBweH0udHYtY29udHJvbC1yYWRpb19fYm94OmFmdGVye2JvcmRlci1yYWRpdXM6NTAlO2luc2V0LWlubGluZS1zdGFydDotNHB4O3RvcDotNHB4fS50di1jb250cm9sLXJhZGlvX19ib3g6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTgwMCk7aGVpZ2h0OjEwcHg7bWFyZ2luLXRvcDotNXB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6LTVweDt0cmFuc2Zvcm06c2NhbGUoMCk7d2lkdGg6MTBweH1odG1sLnRoZW1lLWRhcmsgLnR2LWNvbnRyb2wtcmFkaW9fX2JveDpiZWZvcmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTAwKX0udHYtY29udHJvbC1yYWRpb19faW5wdXR7aW5zZXQtaW5saW5lLXN0YXJ0Oi00cHg7dG9wOi00cHh9LnR2LWNvbnRyb2wtcmFkaW9fX2lucHV0OmNoZWNrZWQrLnR2LWNvbnRyb2wtcmFkaW9fX2JveDpiZWZvcmV7dHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zaXRpb24tZHVyYXRpb246NjBtc30udHYtY29udHJvbC1yYWRpb19faW5wdXQ6Y2hlY2tlZCsudHYtY29udHJvbC1yYWRpb19fYm94e2JhY2tncm91bmQtY29sb3I6I2ZmZjt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1jb250cm9sLXJhZGlvOmhvdmVyIC50di1jb250cm9sLXJhZGlvX19pbnB1dDpjaGVja2VkKy50di1jb250cm9sLXJhZGlvX19ib3h7YmFja2dyb3VuZC1jb2xvcjojZmZmO3RyYW5zaXRpb24tZHVyYXRpb246NjBtc319LnR2LXNlYXJjaC1iYXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1iZy1wcmltYXJ5KTtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpO2xpbmUtaGVpZ2h0OjgwcHg7cG9zaXRpb246cmVsYXRpdmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9QG1lZGlhIChtYXgtd2lkdGg6MTAxOXB4KXsudHYtc2VhcmNoLWJhcntoZWlnaHQ6NTRweDtsaW5lLWhlaWdodDo1NHB4fX0udHYtc2VhcmNoLWJhcl9faW5uZXJ7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNlYXJjaC1iYXJfX2lubmVye3BhZGRpbmc6MCA1cHh9fS50di1zZWFyY2gtYmFyX19pbm5lci1yaWdodC1jb2x1bW57YWxpZ24taXRlbXM6ZmxleC1lbmQ7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7bWFyZ2luLXRvcDotNTNweH0udHYtc2VhcmNoLWJhcl9fZHJvcGRvd257ZmxvYXQ6aW5saW5lLXN0YXJ0fS50di1zZWFyY2gtYmFyX19idXR0b24sLnR2LXNlYXJjaC1iYXJfX2J1dHRvbi13cmFwe2Rpc3BsYXk6aW5saW5lLWJsb2NrO3Bvc2l0aW9uOnJlbGF0aXZlfS50di1zZWFyY2gtYmFyX19idXR0b24td3JhcC0tbGluZS1oZWlnaHRfaW5oZXJpdCwudHYtc2VhcmNoLWJhcl9fYnV0dG9uLXdyYXAtLWxpbmUtaGVpZ2h0X2luaGVyaXQudHYtc2VhcmNoLWJhcl9fYnV0dG9uLXdyYXAtLWxpbmUtaGVpZ2h0X2luaGVyaXR7bGluZS1oZWlnaHQ6aW5oZXJpdH0udHYtc2VhcmNoLWJhcl9fYnV0dG9ue2FsaWduLWl0ZW1zOmNlbnRlcjtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpmbGV4O2ZvbnQtd2VpZ2h0OjcwMDtoZWlnaHQ6MTAwJTtwYWRkaW5nOjAgMTVweDt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjM1cyBlYXNlOy0tdGl0bGUtY29sb3ItdGV4dDp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpfS50di1zZWFyY2gtYmFyX19idXR0b24sLnR2LXNlYXJjaC1iYXJfX2J1dHRvbjp2aXNpdGVke2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSk7ZmlsbDp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2VhcmNoLWJhcl9fYnV0dG9uOmhvdmVye2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kLWhvdmVyKTtmaWxsOnZhcigtLWNvbG9yLWJyYW5kLWhvdmVyKX19LnR2LXNlYXJjaC1iYXJfX2J1dHRvbjphY3RpdmV7Y29sb3I6dmFyKC0tY29sb3ItYnJhbmQtYWN0aXZlKTtmaWxsOnZhcigtLWNvbG9yLWJyYW5kLWFjdGl2ZSl9LnR2LXNlYXJjaC1iYXJfX2J1dHRvbjpmb2N1c3tvdXRsaW5lOmF1dG87b3V0bGluZS1vZmZzZXQ6MnB4fS50di1zZWFyY2gtYmFyX19idXR0b246Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOmF1dG87b3V0bGluZS1vZmZzZXQ6MnB4fS50di1zZWFyY2gtYmFyX19idXR0b246Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKXtvdXRsaW5lOm5vbmV9LnR2LXNlYXJjaC1iYXJfX2J1dHRvbjphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1iZy1wcmltYXJ5LWhvdmVyKTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zZWFyY2gtYmFyX19idXR0b246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1iZy1wcmltYXJ5LWhvdmVyKTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXM7LS10aXRsZS1jb2xvci10ZXh0OnZhcigtLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsKX19LnR2LXNlYXJjaC1iYXJfX2J1dHRvbjphY3RpdmV7LS10aXRsZS1jb2xvci10ZXh0OnZhcigtLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWJvbGQpfS50di1zZWFyY2gtYmFyX19idXR0b246Zm9jdXMsLnR2LXNlYXJjaC1iYXJfX2J1dHRvbjpmb2N1cy12aXNpYmxle291dGxpbmU6bm9uZX0udHYtc2VhcmNoLWJhcl9fYnV0dG9uLmktZGlzYWJsZWR7YmFja2dyb3VuZC1jb2xvcjppbml0aWFsOy0tdGl0bGUtY29sb3ItdGV4dDojZmZmZmZmYjM7Y3Vyc29yOmRlZmF1bHR9LmktYWN0aXZlIC50di1zZWFyY2gtYmFyX19idXR0b257LS10aXRsZS1jb2xvci10ZXh0OnZhcigtLWNvbG9yLWNvbnRlbnQtcHJpbWFyeS1uZXV0cmFsLWJvbGQpfS50di1zZWFyY2gtYmFyX19idXR0b24taW53cmFwe2Rpc3BsYXk6aW5saW5lLWJsb2NrO2xpbmUtaGVpZ2h0OjE7dmVydGljYWwtYWxpZ246bWlkZGxlfS50di1zZWFyY2gtYmFyX19idXR0b24tdGl0bGV7Y29sb3I6dmFyKC0tdGl0bGUtY29sb3ItdGV4dCxpbmhlcml0KTtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToxNnB4O2xldHRlci1zcGFjaW5nOi4xMmV4O21hcmdpbi1ib3R0b206NXB4O3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0udHYtc2VhcmNoLWJhcl9fYnV0dG9uLXRpdGxlOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS50di1zZWFyY2gtYmFyX19idXR0b24tdGl0bGUtLXN1YntsaW5lLWhlaWdodDo0MHB4fS50di1zZWFyY2gtYmFyX19idXR0b24tdGl0bGUtLXRhYnN7bGluZS1oZWlnaHQ6ODBweH1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zZWFyY2gtYmFyX19idXR0b24tdGl0bGUtLXRhYnN7bGluZS1oZWlnaHQ6NTRweH19LnR2LXNlYXJjaC1iYXJfX2J1dHRvbi1zdWJ0aXRsZXtmb250LXNpemU6MTNweDtsZXR0ZXItc3BhY2luZzouMWV4O29wYWNpdHk6LjY1fS50di1zZWFyY2gtYmFyX19kcm9wZG93bi1ib2R5e21hcmdpbi10b3A6MjNweDttaW4td2lkdGg6MjAwcHh9LnR2LXNlYXJjaC1iYXJfX2FyZWEtLWZpbHRlcnN7ZmxvYXQ6aW5saW5lLXN0YXJ0O21hcmdpbi1pbmxpbmUtZW5kOi0xNXB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6LTE1cHh9QG1lZGlhIChtYXgtd2lkdGg6MTAxOXB4KXsudHYtc2VhcmNoLWJhcl9fYXJlYS0tZmlsdGVyc3tkaXNwbGF5Om5vbmV9fS50di1zZWFyY2gtYmFyX19hcmVhLS1zZWFyY2h7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleH1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zZWFyY2gtYmFyX19hcmVhLS1zZWFyY2hfZGVza3RvcHtkaXNwbGF5Om5vbmV9fS50di1zZWFyY2gtYmFyX19hcmVhLS10YWJze3dpZHRoOjEwMCV9QG1lZGlhIChtaW4td2lkdGg6MTAyMHB4KXsudHYtc2VhcmNoLWJhcl9fYXJlYS0tdGFic3ttYXJnaW4taW5saW5lLWVuZDotMTVweDttYXJnaW4taW5saW5lLXN0YXJ0Oi0xNXB4O3dpZHRoOmNhbGMoMTAwJSAtIDI1MHB4KX19LnR2LXNlYXJjaC1iYXJfX2FyZWEtLXByb2ZpbGUtZmlsdGVyc3tkaXNwbGF5OmlubGluZS1mbGV4O2ZsZXgtd3JhcDpub3dyYXA7aGVpZ2h0OjU2cHg7b3JkZXI6MTt3aGl0ZS1zcGFjZTpub3dyYXB9QG1lZGlhIChtYXgtd2lkdGg6MTAxOXB4KXsudHYtc2VhcmNoLWJhcl9fYXJlYS0tcHJvZmlsZS1maWx0ZXJze2Rpc3BsYXk6bm9uZX19LnR2LXNlYXJjaC1iYXJfX2FyZWEtLWRldmljZXN7ZGlzcGxheTpub25lfUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNlYXJjaC1iYXJfX2FyZWEtLWRldmljZXN7ZGlzcGxheTpibG9ja319LnR2LXNlYXJjaC1iYXJfX3RhZ3Mtd3JhcHtwYWRkaW5nOjQzcHggMCAxMHB4fUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNlYXJjaC1iYXJfX3RhZ3Mtd3JhcHtkaXNwbGF5Om5vbmV9fS50di1zZWFyY2gtYmFyX19zY3JpcHR7YWxpZ24tc2VsZjpzdHJldGNoO2JvcmRlci1ib3R0b206MXB4IHNvbGlkO2JvcmRlci1ib3R0b20tY29sb3I6dmFyKC0tY29sb3ItZGl2aWRlcik7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0fUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNlYXJjaC1iYXJfX3NjcmlwdHtkaXNwbGF5Om5vbmV9fS50di1zZWFyY2gtYmFyX190YWdze2JveC1zaXppbmc6Ym9yZGVyLWJveDtkaXNwbGF5OmZsZXg7bWFyZ2luLXRvcDotMjdweDttYXgtaGVpZ2h0OjI5cHg7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlfS50di1zZWFyY2gtYmFyX190YWdzLmktZXhwYW5kZWR7bWF4LWhlaWdodDpub25lfS50di1zZWFyY2gtYmFyX190YWdzOm5vdCguaS1leHBhbmRlZCkgLnR2LXNlYXJjaC1iYXJfX3RhZ3MtYnRuLS1sZXNzLXRhZ3N7ZGlzcGxheTpub25lfS50di1zZWFyY2gtYmFyX190YWdzLWxpc3R7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwfS50di1zZWFyY2gtYmFyX190YWdzLWJ0bntjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6MTZweDtsaW5lLWhlaWdodDoyNHB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6MTZweDt3aGl0ZS1zcGFjZTpub3dyYXB9LnR2LXNlYXJjaC1iYXJfX3RhZ3MtYnRuLC50di1zZWFyY2gtYmFyX190YWdzLWJ0bjp2aXNpdGVke2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kKTtmaWxsOnZhcigtLWNvbG9yLWJyYW5kKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNlYXJjaC1iYXJfX3RhZ3MtYnRuOmhvdmVye2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kLWhvdmVyKTtmaWxsOnZhcigtLWNvbG9yLWJyYW5kLWhvdmVyKX19LnR2LXNlYXJjaC1iYXJfX3RhZ3MtYnRuOmFjdGl2ZXtjb2xvcjp2YXIoLS1jb2xvci1icmFuZCk7ZmlsbDp2YXIoLS1jb2xvci1icmFuZCl9LnR2LXNlYXJjaC1iYXJfX3RhZ3MtYnRuOmZvY3Vze291dGxpbmU6YXV0bztvdXRsaW5lLW9mZnNldDoycHh9LnR2LXNlYXJjaC1iYXJfX3RhZ3MtYnRuOmZvY3VzLXZpc2libGV7b3V0bGluZTphdXRvO291dGxpbmUtb2Zmc2V0OjJweH0udHYtc2VhcmNoLWJhcl9fdGFncy1idG46Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKXtvdXRsaW5lOm5vbmV9LnR2LXNlYXJjaC1iYXJfX3RhZ3MtYnRuOmFjdGl2ZXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgxcHgpfS50di1zZWFyY2gtYmFyX191bm1vZGVyYXRlZC1ub3RpY2V7Ym9yZGVyLXJhZGl1czoycHg7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1zaXplOjEwcHg7bGluZS1oZWlnaHQ6MS4yO21hcmdpbi1pbmxpbmUtc3RhcnQ6NXB4O21heC13aWR0aDoxMjBweDtwYWRkaW5nOjFweCA0cHh9LnR2LXNlYXJjaC1iYXJfX3VubW9kZXJhdGVkLW5vdGljZS0td2FybmluZ3tiYWNrZ3JvdW5kLWNvbG9yOiNlMmU4ODU7Y29sb3I6IzY2Nn0udHYtc2VhcmNoLWJhcl9fd2lkZ2V0cy1jb250cm9se21hcmdpbi1pbmxpbmUtZW5kOjQwcHh9LnR2LXNlYXJjaC1iYXJfX3dpZGdldHMtY29udHJvbC1pY29uIHN2Z3tmaWxsOiNmZmZ9LnR2LXNlYXJjaC1iYXJfX3NlYXJjaC1xdWVyeXtkaXNwbGF5OmlubGluZS1ibG9jaztsaW5lLWhlaWdodDoxO3Bvc2l0aW9uOnJlbGF0aXZlO3RvcDoyMHB4O3ZlcnRpY2FsLWFsaWduOnRvcH1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zZWFyY2gtYmFyX19zZWFyY2gtcXVlcnl7ZGlzcGxheTpibG9jaztwYWRkaW5nLWlubGluZS1lbmQ6NDZweDt0b3A6MH19LnR2LXNlYXJjaC1iYXJfX3NlYXJjaC1xdWVyeS0tbW9iaWxle2Rpc3BsYXk6bm9uZX1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zZWFyY2gtYmFyX19zZWFyY2gtcXVlcnktLW1vYmlsZXtkaXNwbGF5OmJsb2NrfS50di1zZWFyY2gtYmFyX19zZWFyY2gtcXVlcnktLXdpdGhvdXQtZmlsdGVycy1idXR0b257cGFkZGluZy1pbmxpbmUtZW5kOjB9fS50di1zZWFyY2gtYmFyX19zZWFyY2gtaW5wdXR7YmFja2dyb3VuZC1jb2xvcjojYjNjN2QyNDA7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czozcHg7Ym94LXNpemluZzpib3JkZXItYm94O2NvbG9yOnZhcigtLWNvbG9yLXdoaXRlKTtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LXNpemU6MTZweDtwYWRkaW5nLWJsb2NrOjEwcHggMTBweDtwYWRkaW5nLWlubGluZTo0NHB4IDM2cHg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4zNXMgZWFzZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7d2lkdGg6MjUwcHh9LnR2LXNlYXJjaC1iYXJfX3NlYXJjaC1pbnB1dDo6cGxhY2Vob2xkZXJ7Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQwMCk7dHJhbnNpdGlvbjpjb2xvciAuMzVzIGVhc2V9LnR2LXNlYXJjaC1iYXJfX3NlYXJjaC1pbnB1dDpmb2N1czo6cGxhY2Vob2xkZXJ7Y29sb3I6I2I4YmFjMDt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9QG1lZGlhIChtYXgtd2lkdGg6MTAxOXB4KXsudHYtc2VhcmNoLWJhcl9fc2VhcmNoLWlucHV0e2JhY2tncm91bmQtY29sb3I6aW5pdGlhbDtib3JkZXItcmFkaXVzOjA7cGFkZGluZy1ibG9jazoxOXB4IDE5cHg7cGFkZGluZy1pbmxpbmU6MzJweCAzNnB4O3dpZHRoOjEwMCV9fS50di1zZWFyY2gtYmFyX19zZWFyY2gtaW5wdXQ6Zm9jdXN7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNlYXJjaC1iYXJfX3NlYXJjaC1pbnB1dDpmb2N1c3tiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWx9fS50di1zZWFyY2gtYmFyX19zZWFyY2gtaWNvbntkaXNwbGF5OmJsb2NrO2luc2V0LWlubGluZS1zdGFydDoxMnB4O21hcmdpbi10b3A6LTlweDtvcGFjaXR5Oi44O3BvaW50ZXItZXZlbnRzOm5vbmU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt0cmFuc2l0aW9uOm9wYWNpdHkgLjM1cyBlYXNlfUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNlYXJjaC1iYXJfX3NlYXJjaC1pY29ue2luc2V0LWlubGluZS1zdGFydDowfX0udHYtc2VhcmNoLWJhcl9fc2VhcmNoLWljb24gc3Zne2Rpc3BsYXk6YmxvY2s7ZmlsbDp2YXIoLS1jb2xvci13aGl0ZSk7aGVpZ2h0OjE4cHg7d2lkdGg6MThweH0udHYtc2VhcmNoLWJhcl9fc2VhcmNoLWlucHV0OmZvY3VzKy50di1zZWFyY2gtYmFyX19zZWFyY2gtaWNvbntvcGFjaXR5OjE7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfS50di1zZWFyY2gtYmFyX19pbnB1dC1yZXNldHtib3R0b206MDtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmJsb2NrO2luc2V0LWlubGluZS1lbmQ6MDtvcGFjaXR5Oi44O3Bvc2l0aW9uOmFic29sdXRlO3RleHQtYWxpZ246Y2VudGVyO3RvcDowO3RyYW5zaXRpb246b3BhY2l0eSAuMzVzIGVhc2U7d2lkdGg6MzZweH0udHYtc2VhcmNoLWJhcl9faW5wdXQtcmVzZXQ6YWZ0ZXJ7Y29udGVudDoiIjtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MTAwJTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LnR2LXNlYXJjaC1iYXJfX2lucHV0LXJlc2V0IHN2Z3tkaXNwbGF5OmlubGluZS1ibG9jaztmaWxsOnZhcigtLWNvbG9yLXdoaXRlKTtoZWlnaHQ6OXB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aWR0aDo5cHh9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zZWFyY2gtYmFyX19pbnB1dC1yZXNldDpob3ZlcntvcGFjaXR5OjE7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfX1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zZWFyY2gtYmFyX19pbnB1dC1yZXNldHtpbnNldC1pbmxpbmUtZW5kOjExMnB4fX0udHYtc2VhcmNoLWJhcl9fc3BvbnNvcmVke2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDo1MHB4O2xpbmUtaGVpZ2h0OjE7bWluLXdpZHRoOjFweDt0ZXh0LWFsaWduOmVuZDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7d2lkdGg6MTAwcHh9QG1lZGlhIChtYXgtd2lkdGg6MTAxOXB4KXsudHYtc2VhcmNoLWJhcl9fc3BvbnNvcmVke2Rpc3BsYXk6bm9uZX19LnR2LXNlYXJjaC1iYXJfX3Nwb25zb3JlZC10ZXh0e2ZvbnQtc2l6ZToxMHB4O2ZvbnQtd2VpZ2h0OjcwMDttYXJnaW4tYm90dG9tOi02cHg7b3BhY2l0eTouN30udHYtc2VhcmNoLWJhcl9fc3BvbnNvcmVkLWJ5e2JhY2tncm91bmQtcG9zaXRpb246NTAlO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMDAlO29wYWNpdHk6Ljk7cG9zaXRpb246cmVsYXRpdmU7dHJhbnNpdGlvbjpvcGFjaXR5IC4zNXMgZWFzZTt3aWR0aDoxMDAlfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2VhcmNoLWJhcl9fc3BvbnNvcmVkLWJ5OmhvdmVye29wYWNpdHk6MTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9fS50di1zZWFyY2gtYmFyX19zcG9uc29yZWQtaW1ne2Rpc3BsYXk6aW5saW5lLWJsb2NrO2luc2V0LWlubGluZS1lbmQ6MDttYXgtaGVpZ2h0OjEwMCU7bWF4LXdpZHRoOjEwMCU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKX0udHYtc2VhcmNoLWJhcl9fc3BvbnNvcmVkLWltZyBzdmd7cG9zaXRpb246cmVsYXRpdmU7ZmlsbDp2YXIoLS1jb2xvci13aGl0ZSk7aGVpZ2h0OjQwcHg7d2lkdGg6MTAwcHh9LnR2LXNlYXJjaC1iYXItLXNlY29uZGFyeXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJvZHktYmcpO2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kKX1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zZWFyY2gtYmFyLS1zZWNvbmRhcnlfZGV2aWNlcy1yZXNlcnZlZC1oZWlnaHR7aGVpZ2h0OjU3cHh9fS50di1zZWFyY2gtYmFyLS1zZWNvbmRhcnkgLnR2LXNlYXJjaC1iYXJfX2J1dHRvbntjb2xvcjp2YXIoLS1jb2xvci1icmFuZCl9LnR2LXNlYXJjaC1iYXItLXNlY29uZGFyeSAudHYtc2VhcmNoLWJhcl9fYnV0dG9uOmFjdGl2ZSwudHYtc2VhcmNoLWJhci0tc2Vjb25kYXJ5IC50di1zZWFyY2gtYmFyX19kZXZpY2UtYnRuOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJnLXByaW1hcnktaG92ZXIpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2VhcmNoLWJhci0tc2Vjb25kYXJ5IC50di1zZWFyY2gtYmFyX19idXR0b246aG92ZXIsLnR2LXNlYXJjaC1iYXItLXNlY29uZGFyeSAudHYtc2VhcmNoLWJhcl9fZGV2aWNlLWJ0bjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJnLXByaW1hcnktaG92ZXIpfX0udHYtc2VhcmNoLWJhci0tc2Vjb25kYXJ5IC50di1zZWFyY2gtYmFyX19kZXZpY2UtYnRuIHN2ZywudHYtc2VhcmNoLWJhci0tc2Vjb25kYXJ5IC50di1zZWFyY2gtYmFyX19pbnB1dC1yZXNldCBzdmcsLnR2LXNlYXJjaC1iYXItLXNlY29uZGFyeSAudHYtc2VhcmNoLWJhcl9fc2VhcmNoLWljb24gc3Zne2ZpbGw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9LnR2LXNlYXJjaC1iYXItLXNlY29uZGFyeSAudHYtc2VhcmNoLWJhcl9fc2VhcmNoLWlucHV0e2NvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApfS50di1zZWFyY2gtYmFyLS1zZWNvbmRhcnkgLnR2LXNlYXJjaC1iYXJfX3NlYXJjaC1pbnB1dDo6cGxhY2Vob2xkZXJ7Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7dHJhbnNpdGlvbjpjb2xvciAuMzVzIGVhc2V9LnR2LXNlYXJjaC1iYXItLXNlY29uZGFyeSAudHYtc2VhcmNoLWJhcl9fc2VhcmNoLWlucHV0OmZvY3VzOjpwbGFjZWhvbGRlcntjb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDAwKTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9LnR2LXNlYXJjaC1iYXItLXN1YntiYWNrZ3JvdW5kLWNvbG9yOiMwZTEwMTU7aGVpZ2h0OmF1dG87bGluZS1oZWlnaHQ6NDBweH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNlYXJjaC1iYXItLXN1YiAudHYtc2VhcmNoLWJhcl9fYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYmctcHJpbWFyeS1ob3Zlcil9fS50di1zZWFyY2gtYmFyLS1zdWIgLnR2LXNlYXJjaC1iYXJfX2J1dHRvbjphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1iZy1wcmltYXJ5LWhvdmVyKX0udHYtc2VhcmNoLWJhci0tc3ViIC50di1zZWFyY2gtYmFyX19idXR0b24td3JhcHtvcGFjaXR5Oi42NTt0cmFuc2l0aW9uOm9wYWNpdHkgLjM1cyBlYXNlfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2VhcmNoLWJhci0tc3ViIC50di1zZWFyY2gtYmFyX19idXR0b24td3JhcDpob3ZlcntvcGFjaXR5Oi44O3RyYW5zaXRpb24tZHVyYXRpb246NjBtc319LnR2LXNlYXJjaC1iYXItLXN1YiAudHYtc2VhcmNoLWJhcl9fYnV0dG9uLXdyYXA6YWN0aXZle29wYWNpdHk6MTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9LnR2LXNlYXJjaC1iYXItLXN1YiAudHYtc2VhcmNoLWJhcl9fYnV0dG9uLXdyYXAuaS1hY3RpdmV7b3BhY2l0eToxfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2VhcmNoLWJhci0tc3ViIC50di1zZWFyY2gtYmFyX19idXR0b24td3JhcC5pLWFjdGl2ZTpob3Zlcntjb2xvcjp2YXIoLS1jb2xvci1icmFuZCl9fS50di1zZWFyY2gtYmFyLS1zdWIgLnR2LXNlYXJjaC1iYXJfX2J1dHRvbi10aXRsZXtmb250LXNpemU6MTJweDtmb250LXdlaWdodDo0MDB9LnR2LXNlYXJjaC1iYXIgLnR2LXNlYXJjaC1iYXJfX2NhcmV0e21hcmdpbi1pbmxpbmUtc3RhcnQ6MnB4fS50di1zZWFyY2gtYmFyX19kZXZpY2UtYnRue2JvdHRvbTowO2JveC1zaXppbmc6Ym9yZGVyLWJveDtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5Om5vbmU7Zm9udC1zaXplOjA7aW5zZXQtaW5saW5lLWVuZDowO3BhZGRpbmc6MCAyMHB4O3Bvc2l0aW9uOmFic29sdXRlO3RleHQtYWxpZ246Y2VudGVyO3RvcDowO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMzVzIGVhc2U7d2lkdGg6NjZweH0udHYtc2VhcmNoLWJhcl9fZGV2aWNlLWJ0bi0tcmlnaHRfMntpbnNldC1pbmxpbmUtZW5kOjY2cHh9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zZWFyY2gtYmFyX19kZXZpY2UtYnRuOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfX0udHYtc2VhcmNoLWJhcl9fZGV2aWNlLWJ0bjphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9QG1lZGlhIChtYXgtd2lkdGg6MTAxOXB4KXsudHYtc2VhcmNoLWJhcl9fZGV2aWNlLWJ0bntkaXNwbGF5OmJsb2NrfX0udHYtc2VhcmNoLWJhcl9fZGV2aWNlLWJ0biBzdmd7ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246bWlkZGxlO2ZpbGw6dmFyKC0tY29sb3Itd2hpdGUpfS50di1zZWFyY2gtYmFyIFtkYXRhLWRpdmlzaW9uPXNlYXJjaF17ZGlzcGxheTpub25lfVtkYXRhLXRoZW1lPWxpZ2h0XXstLV8wLXhKYnA6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1fMS14SmJwOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApfVtkYXRhLXRoZW1lPWRhcmtdey0tXzAteEpicDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLV8xLXhKYnA6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCl9LnR2LXNsaWRlciwudWktc2xpZGVyLnR2LXNsaWRlcntiYWNrZ3JvdW5kOm5vbmUhaW1wb3J0YW50O2JhY2tncm91bmQtY29sb3I6aW5pdGlhbCFpbXBvcnRhbnQ7Ym9yZGVyOm5vbmUhaW1wb3J0YW50O2JveC1zaGFkb3c6bm9uZTtoZWlnaHQ6MTBweCFpbXBvcnRhbnQ7bWFyZ2luOjhweCAxMDBweDtwb3NpdGlvbjpyZWxhdGl2ZX0udHYtc2xpZGVyOmFmdGVyLC51aS1zbGlkZXIudHYtc2xpZGVyOmFmdGVye2JhY2tncm91bmQ6dmFyKC0tY29sb3ItY29sZC1ncmF5LTE1MCk7Y29udGVudDoiIjtoZWlnaHQ6MnB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo0cHg7d2lkdGg6MTAwJX0udHYtc2xpZGVyX19sYWJlbHMsLnVpLXNsaWRlci50di1zbGlkZXJfX2xhYmVsc3twb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTBweDt3aWR0aDoxMDAlfS50di1zbGlkZXJfX2xhYmVsLC51aS1zbGlkZXIudHYtc2xpZGVyX19sYWJlbHtiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Ym9yZGVyOjFweCBzb2xpZDtib3JkZXItY29sb3I6dmFyKC0tXzAteEpicCk7Ym9yZGVyLXJhZGl1czoycHg7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1yZWd1bGFyKTtmb250LXNpemU6MTJweCFpbXBvcnRhbnQ7aGVpZ2h0OjI1cHg7cGFkZGluZzowIDZweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTE5cHg7d2lkdGg6MTAzcHg7d2lkdGg6NjVweH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNsaWRlcl9fbGFiZWw6aG92ZXIsLnVpLXNsaWRlci50di1zbGlkZXJfX2xhYmVsOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1fMS14SmJwKX19LnR2LXNsaWRlcl9fbGFiZWw6Zm9jdXMsLnVpLXNsaWRlci50di1zbGlkZXJfX2xhYmVsOmZvY3Vze2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1icmFuZCl9LnR2LXNsaWRlcl9fbGFiZWwtLWxlZnQsLnVpLXNsaWRlci50di1zbGlkZXJfX2xhYmVsLS1sZWZ0e2xlZnQ6LTEwMHB4fS50di1zbGlkZXJfX2xhYmVsLS1yaWdodCwudWktc2xpZGVyLnR2LXNsaWRlcl9fbGFiZWwtLXJpZ2h0e3JpZ2h0Oi05NnB4fS50di1zbGlkZXIgLnVpLXNsaWRlci1oYW5kbGUsLnVpLXNsaWRlci50di1zbGlkZXIgLnVpLXNsaWRlci1oYW5kbGV7YmFja2dyb3VuZDp2YXIoLS1jb2xvci10di1ibHVlLTUwMCkhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6NXB4O2hlaWdodDoxMHB4IWltcG9ydGFudDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MCFpbXBvcnRhbnQ7d2lkdGg6MTBweCFpbXBvcnRhbnQ7ei1pbmRleDoxfS5mZWF0dXJlLW1vYmlsZXRvdWNoIC50di1zbGlkZXIgLnVpLXNsaWRlci1oYW5kbGU6YWZ0ZXIsLmZlYXR1cmUtbW9iaWxldG91Y2ggLnVpLXNsaWRlci50di1zbGlkZXIgLnVpLXNsaWRlci1oYW5kbGU6YWZ0ZXJ7Y29udGVudDoiIjtoZWlnaHQ6MTAwJTtpbnNldC1pbmxpbmUtc3RhcnQ6LTZweDtwYWRkaW5nOjZweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTZweDt3aWR0aDoxMDAlfS50di1zbGlkZXIgLnVpLXNsaWRlci1yYW5nZSwudWktc2xpZGVyLnR2LXNsaWRlciAudWktc2xpZGVyLXJhbmdle2JhY2tncm91bmQ6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApIWltcG9ydGFudDtoZWlnaHQ6MnB4IWltcG9ydGFudDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NHB4IWltcG9ydGFudDt6LWluZGV4OjF9LnR2LXNsaWRlciAudWktc2xpZGVyLXJhbmdlLW1pbiwudWktc2xpZGVyLnR2LXNsaWRlciAudWktc2xpZGVyLXJhbmdlLW1pbntsZWZ0OjA7cmlnaHQ6YXV0b30udHYtc2NyZWVuZXJ7cG9zaXRpb246cmVsYXRpdmV9LnR2LWVtYmVkLXdpZGdldC13cmFwcGVyIC50di1zY3JlZW5lciwudHYtZmVlZCAudHYtc2NyZWVuZXJ7bWFyZ2luOjB9LnR2LXNjcmVlbmVyX19zdGFuZGFsb25lLW1haW4tY29udGFpbmVye21pbi1oZWlnaHQ6MDtwb3NpdGlvbjpmaXhlZDt6LWluZGV4OjEwfS50di1zY3JlZW5lci0tc3RhbmRhbG9uZXtwYWRkaW5nLXRvcDo1NnB4O3otaW5kZXg6MX0udHYtc2NyZWVuZXItLXN0aWNreS1oZWFkZXJ7cGFkZGluZy10b3A6NTdweH0udHYtc2NyZWVuZXItLWhpZGRlbi10b29sYmFye3BhZGRpbmctdG9wOjB9LnR2LXNjcmVlbmVyX19jb250ZW50LXBhbmV7aGVpZ2h0OmNhbGMoMTAwJSAtIDE4NHB4KTtvdmVyZmxvdzphdXRvO3BhZGRpbmctYm90dG9tOjgwcHg7cG9zaXRpb246cmVsYXRpdmV9LnR2LXNjcmVlbmVyX19jb250ZW50LXBhbmU6Oi13ZWJraXQtc2Nyb2xsYmFye2hlaWdodDo1cHg7d2lkdGg6NXB4fS50di1zY3JlZW5lcl9fY29udGVudC1wYW5lOjotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kLWNsaXA6Y29udGVudC1ib3g7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10di1jb2xvci1zY3JvbGxiYXItdGh1bWItYmFja2dyb3VuZCx2YXIoLS1jb2xvci1zY3JvbGwtYmcpKTtib3JkZXI6MXB4IHNvbGlkICMwMDAwO2JvcmRlci1yYWRpdXM6M3B4fS50di1zY3JlZW5lcl9fY29udGVudC1wYW5lOjotd2Via2l0LXNjcm9sbGJhci10cmFja3tiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Ym9yZGVyLXJhZGl1czozcHh9LnR2LXNjcmVlbmVyX19jb250ZW50LXBhbmU6Oi13ZWJraXQtc2Nyb2xsYmFyLWNvcm5lcntkaXNwbGF5Om5vbmV9LnR2LXNjcmVlbmVyX19jb250ZW50LXBhbmU6Oi13ZWJraXQtc2Nyb2xsYmFye2hlaWdodDo2cHg7d2lkdGg6NnB4fS50di1zY3JlZW5lcl9fY29udGVudC1wYW5lOjotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXNiLXNjcm9sbGJhci1ib2R5LWJnKTtib3JkZXI6bm9uZX0udHYtc2NyZWVuZXJfX2NvbnRlbnQtcGFuZS0tZnVsbHktbG9hZGVke2hlaWdodDpjYWxjKDEwMCUgLSA1NnB4KTtwYWRkaW5nLWJvdHRvbTowfS50di1zY3JlZW5lci0tc3RhbmRhbG9uZSAudHYtc2NyZWVuZXJfX2NvbnRlbnQtcGFuZXtoZWlnaHQ6YXV0bztvdmVyZmxvdzp2aXNpYmxlO3BhZGRpbmctYm90dG9tOjB9LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldHtiYWNrZ3JvdW5kOnZhcigtLWNvbG9yLWJvZHktYmcpO292ZXJmbG93OmhpZGRlbn1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zY3JlZW5lci0tc3RhbmRhbG9uZS1tYXJrZXR7bWFyZ2luOjAgLTIwcHh9fS50di1zY3JlZW5lci0tc3RhbmRhbG9uZS1tYXJrZXQgLnR2LXNjcmVlbmVyX19jb250ZW50LXBhbmV7b3ZlcmZsb3c6aGlkZGVufUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXJfX2NvbnRlbnQtcGFuZXtvdmVyZmxvdzphdXRvfX0udHYtc2NyZWVuZXJfX3N5bWJvbHtjb2xvcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCk7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC13ZWlnaHQ6NzAwO21heC13aWR0aDoxMDAlO3BhZGRpbmctaW5saW5lLWVuZDozcHh9LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXJfX3N5bWJvbHtjb2xvcjp2YXIoLS1jb2xvci1icmFuZCl9LnR2LXNjcmVlbmVyX19zeW1ib2wtLXRleHR7Y29sb3I6dmFyKC0tY29sb3Itc2NyZWVuZXItZGVzY3JpcHRpb24pO2N1cnNvcjpkZWZhdWx0fS50di1zY3JlZW5lcl9fc3ltYm9sLS1zZWNvbmRhcnl7Zm9udC13ZWlnaHQ6NDAwfS50di1zY3JlZW5lcl9fdHlwZXtjb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTtmb250LXdlaWdodDo0MDA7dGV4dC10cmFuc2Zvcm06bm9uZX0udHYtc2NyZWVuZXItLXN0YW5kYWxvbmUtbWFya2V0IC50di1zY3JlZW5lcl9fdHlwZXtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSl9LnR2LXNjcmVlbmVyX19kZXNjcmlwdGlvbntjb2xvcjp2YXIoLS1jb2xvci1zY3JlZW5lci1kZXNjcmlwdGlvbik7ZGlzcGxheTppbmxpbmU7Zm9udC13ZWlnaHQ6NDAwO2xldHRlci1zcGFjaW5nOi4zcHg7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO3ZlcnRpY2FsLWFsaWduOmJvdHRvbX1AbWVkaWEgKG1heC13aWR0aDo3NjdweCl7LnR2LXNjcmVlbmVyX19kZXNjcmlwdGlvbnttYXgtd2lkdGg6MTUwcHh9fS50di1zY3JlZW5lci0tc3RhbmRhbG9uZS1tYXJrZXQgLnR2LXNjcmVlbmVyX19kZXNjcmlwdGlvbntjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpfS50di1zY3JlZW5lcl9fbG9hZGluZy1zY3JlZW57Ym90dG9tOjA7aW5zZXQtaW5saW5lLXN0YXJ0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjEwNXB4O3dpZHRoOjEwMCU7ei1pbmRleDoxfS50di1zY3JlZW5lcl9fbG9hZGluZy1zY3JlZW4tLXN0YW5kYWxvbmV7cG9zaXRpb246Zml4ZWR9LnR2LXNjcmVlbmVyX19sb2FkaW5nLXNjcmVlbi0taGlkZGVuLXRvb2xiYXJ7dG9wOjQ5cHh9LnR2LXNjcmVlbmVyX19ib3R0b20tbG9hZGluZy1zY3JlZW57Ym90dG9tOjQwcHg7aW5zZXQtaW5saW5lLXN0YXJ0OjA7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTAwJTt6LWluZGV4OjF9LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lIC50di1zY3JlZW5lcl9fYm90dG9tLWxvYWRpbmctc2NyZWVue2JvdHRvbTowO2hlaWdodDo3MHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS50di1zY3JlZW5lcl9fZmlsdGVyLWZpZWxkLXRpdGxlLS1hY3RpdmV7Y29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApIWltcG9ydGFudH0udHYtc2NyZWVuZXJfX3N0YW5kYWxvbmUtd3JhcHttYXJnaW46MDtwYWRkaW5nOjE0OHB4IDAgMH0udHYtc2NyZWVuZXJfX3N0YW5kYWxvbmUtdGl0bGUtd3JhcHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJvZHktYmcpO2JvcmRlci1ib3R0b206MnB4IHNvbGlkIHZhcigtLWNvbG9yLWRpdmlkZXIpO2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtwYWRkaW5nOjI2cHggMjBweCAyMHB4fS50di1zY3JlZW5lcl9fc3RhbmRhbG9uZS10aXRsZXtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpO2ZvbnQtc2l6ZTozMHB4O2ZvbnQtd2VpZ2h0OjQwMDtsZXR0ZXItc3BhY2luZzotLjNweDtsaW5lLWhlaWdodDozNXB4fS50di1zY3JlZW5lcl9fbWFpbnRlbmFuY2V7Y29sb3I6IzhmOGY4Zjtmb250LXN0eWxlOml0YWxpYzttYXJnaW46MTBweCAxMXB4O3RleHQtYWxpZ246Y2VudGVyfS50di1zY3JlZW5lcl9fYm9keS1iYWNrZ3JvdW5ke2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYm9keS1iZyl9W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtRXFMYjojZTFlNmVjOy0tXzEtRXFMYjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLV8yLUVxTGI6I2YxZjNmNjstLV8zLUVxTGI6I2ZmZjstLV80LUVxTGI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCk7LS1fNS1FcUxiOnZhcigtLWNvbG9yLXdoaXRlKTstLV82LUVxTGI6dmFyKC0tY29sb3ItdHYtYmx1ZS03MDApOy0tXzctRXFMYjp2YXIoLS1jb2xvci13aGl0ZSk7LS1fOC1FcUxiOnZhcigtLWNvbG9yLWNvbGQtZ3JheS05MDApOy0tXzktRXFMYjp2YXIoLS1jb2xvci13aGl0ZSk7LS1fMTAtRXFMYjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCl9W2RhdGEtdGhlbWU9ZGFya117LS1fMC1FcUxiOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tXzEtRXFMYjp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLV8yLUVxTGI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTg1MCk7LS1fMy1FcUxiOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tXzQtRXFMYjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKTstLV81LUVxTGI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTkwMCk7LS1fNi1FcUxiOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTstLV83LUVxTGI6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1fOC1FcUxiOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tXzktRXFMYjp2YXIoLS1jb2xvci13aGl0ZSk7LS1fMTAtRXFMYjojMzE3OWY1MmV9LnR2LXNjcmVlbmVyLXRvb2xiYXJ7YWxpZ24taXRlbXM6Y2VudGVyO2JveC1zaXppbmc6Ym9yZGVyLWJveDtkaXNwbGF5OmZsZXg7ZmxleC13cmFwOm5vd3JhcDtwYWRkaW5nOjEycHggMjBweCAxMHB4O3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb246ZGlzcGxheSAuNHMgLjRzfUBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KXsudHYtc2NyZWVuZXItdG9vbGJhcntmbGV4LXdyYXA6d3JhcH19LnR2LXNjcmVlbmVyLXRvb2xiYXItLW9uZS1saW5le2ZsZXgtd3JhcDpub3dyYXA7b3ZlcmZsb3c6dmlzaWJsZX0udHYtc2NyZWVuZXItdG9vbGJhci0tc3RhbmRhbG9uZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJvZHktYmcpO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoxMDAlfS50di1zY3JlZW5lci10b29sYmFyLS1tYXJrZXRze2JhY2tncm91bmQ6dmFyKC0tY29sb3ItYm9keS1iZyl9LnR2LXNjcmVlbmVyLXRvb2xiYXItLW1hcmtldHNfcmVsYXRpdmV7cG9zaXRpb246cmVsYXRpdmV9LnR2LXNjcmVlbmVyLXRvb2xiYXItLW1hcmtldHNfc3RpY2t5e2JhY2tncm91bmQ6dmFyKC0tY29sb3ItYm9keS1iZyk7cG9zaXRpb246Zml4ZWQ7ei1pbmRleDo1fS50di1zY3JlZW5lci10b29sYmFyLS1tYXJrZXRzX2Fic29sdXRle2JhY2tncm91bmQ6dmFyKC0tY29sb3ItYm9keS1iZyk7aW5zZXQtaW5saW5lLXN0YXJ0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjB9LnR2LXNjcmVlbmVyLXRvb2xiYXItLXN0YW5kYWxvbmVfc3RpY2t5e2xlZnQ6MDtwb3NpdGlvbjpmaXhlZDt0b3A6MDt6LWluZGV4OjN9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX3JlZnJlc2gtY291bnRlcntib3R0b206MDtkaXNwbGF5Om5vbmU7Zm9udC1zaXplOjEwcHg7aW5zZXQtaW5saW5lLXN0YXJ0OjA7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWFsaWduOmNlbnRlcjt3aGl0ZS1zcGFjZTpub3dyYXA7d2lkdGg6MTAwJX0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS13aXRoLWNvdW50ZXIgLnR2LXNjcmVlbmVyLXRvb2xiYXJfX3JlZnJlc2gtY291bnRlcntkaXNwbGF5OmJsb2NrfS50di1zY3JlZW5lci10b29sYmFyPmRpdntoZWlnaHQ6MzJweDttYXJnaW4tYm90dG9tOjJweH0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9ue2JvcmRlcjoxcHggc29saWQ7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWJvcmRlcik7Ym9yZGVyLXJhZGl1czoycHg7Ym94LXNpemluZzpib3JkZXItYm94O2NvbG9yOnZhcigtLWNvbG9yLXRleHQtc2Vjb25kYXJ5KTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1ibG9jaztmbGV4LXNocmluazowO2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjcwMDtoZWlnaHQ6MzJweDttYXgtd2lkdGg6MjUwcHg7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmctYmxvY2s6OHB4IDA7cGFkZGluZy1pbmxpbmU6MTJweCAxMnB4O3Bvc2l0aW9uOnJlbGF0aXZlO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIDE3NW1zIGVhc2Usb3BhY2l0eSAxNzVtcyBlYXNlO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aGl0ZS1zcGFjZTpub3dyYXB9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tc3BhY2VfcmlnaHR7bWFyZ2luLWlubGluZS1lbmQ6MTBweH0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1hbmltYXRlZHt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgMTc1bXMgZWFzZSxvcGFjaXR5IDE3NW1zIGVhc2Usd2lkdGggLjM1cyBlYXNlfS50di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXdpdGgtb3B0aW9uc3tib3JkZXItZW5kLWVuZC1yYWRpdXM6MDtib3JkZXItaW5saW5lLWVuZDpub25lO2JvcmRlci1zdGFydC1lbmQtcmFkaXVzOjB9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tb3B0aW9uc3tib3JkZXItZW5kLXN0YXJ0LXJhZGl1czowO2JvcmRlci1zdGFydC1zdGFydC1yYWRpdXM6MH0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1yZWZyZXNoe3BhZGRpbmc6OHB4IDAgMDt3aWR0aDozMnB4fS50di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXJlZnJlc2ggc3Zne2luc2V0LWlubGluZS1zdGFydDo1MCV9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tZXhwb3J0e3dpZHRoOjM2cHh9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tZXhwb3J0IHN2Z3tpbnNldC1pbmxpbmUtc3RhcnQ6NTAlfS50di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXNxdWFyZXthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTpmbGV4O2hlaWdodDozMnB4O2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzowO3dpZHRoOjMycHh9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tcmVmcmVzaC50di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXdpdGgtY291bnRlciBzdmd7dHJhbnNmb3JtOnNjYWxlKC45KSB0cmFuc2xhdGVZKC01cHgpfS50di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLWFycm93LWRvd257cGFkZGluZy1pbmxpbmUtZW5kOjE5cHh9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tYXJyb3ctZG93bjpiZWZvcmV7Ym9yZGVyOjRweCBzb2xpZCAjMDAwMDtib3JkZXItdG9wOjRweCBzb2xpZCB2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTtjb250ZW50OiIiO2luc2V0LWlubGluZS1lbmQ6NnB4O21hcmdpbi10b3A6LTRweDttYXJnaW4taW5saW5lLXN0YXJ0OjVweDttYXJnaW4taW5saW5lLXN0YXJ0OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjU1JX0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS13aXRoLXN0YXRle3BhZGRpbmctaW5saW5lLWVuZDoyM3B4fS50di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLWFjdGl2ZXtjb2xvcjp2YXIoLS1jb2xvci1icmFuZCl9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tYWN0aXZlIHN2Z3tmaWxsOnZhcigtLWNvbG9yLWJyYW5kKX0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1hY3RpdmU6YWZ0ZXJ7Ym9yZGVyLXRvcC1jb2xvcjp2YXIoLS1jb2xvci1icmFuZCl9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tY3JlYXRlLWFsZXJ0e2JhY2tncm91bmQtY29sb3I6I2ZmZn0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1jcmVhdGUtYWxlcnQgc3Zne3RyYW5zaXRpb246b3BhY2l0eSAxNzVtcyBlYXNlfS50di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLXVuc2F2ZWQ6YWZ0ZXJ7Y29udGVudDoiKiI7aW5zZXQtaW5saW5lLWVuZDoxN3B4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDo5cHh9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi5pLWxvYWRpbmd7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1icmFuZCk7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWJyYW5kKTtwb2ludGVyLWV2ZW50czpub25lfS50di1zY3JlZW5lci10b29sYmFyX19idXR0b24uaS1sb2FkaW5nIHN2Z3tvcGFjaXR5OjB9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi5pLWxvYWRpbmc6YWZ0ZXJ7YW5pbWF0aW9uLWR1cmF0aW9uOjEuMDVzO2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6aW5maW5pdGU7YW5pbWF0aW9uLW5hbWU6dHYtcHVsc2UtYW5pbWF0aW9uLWJ1dHRvbi1BUmRiTTB5RDthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMzMsMCwuMTEsMSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jb2xvci1pdGVtLWFjdGl2ZS10ZXh0KTtib3JkZXItcmFkaXVzOjUwJTtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMHB4O2luc2V0LWlubGluZS1zdGFydDo1MCU7bWFyZ2luLWJsb2NrOi01cHggMDttYXJnaW4taW5saW5lOi01cHggMDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3dpZHRoOjEwcHh9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci10b29sYmFyX19idXR0b246aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1saXN0LW50aC1jaGlsZC1iZyl9fS50di1zY3JlZW5lci10b29sYmFyX19idXR0b246YWN0aXZle2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYm9yZGVyKTtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci10b29sYmFyX19idXR0b246aG92ZXJ7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1zZWNvbmRhcnkpfX0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uOmFjdGl2ZSBzdmd7ZmlsbDp2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci10b29sYmFyX19idXR0b246aG92ZXIgc3Zne2ZpbGw6dmFyKC0tY29sb3ItdGV4dC1zZWNvbmRhcnkpfX0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1lbmFibGVke2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYnJhbmQpO2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1icmFuZCk7Y29sb3I6dmFyKC0tY29sb3ItaXRlbS1hY3RpdmUtdGV4dCl9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tZW5hYmxlZCBzdmd7ZmlsbDp2YXIoLS1jb2xvci1pdGVtLWFjdGl2ZS10ZXh0KX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tZW5hYmxlZDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJyYW5kLWhvdmVyKTtjb2xvcjp2YXIoLS1jb2xvci1pdGVtLWFjdGl2ZS10ZXh0KX0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1lbmFibGVkOmhvdmVyIHN2Z3tmaWxsOnZhcigtLWNvbG9yLWl0ZW0tYWN0aXZlLXRleHQpfX0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLS1lbmFibGVkOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJyYW5kLWFjdGl2ZSl9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tYWxlcnQtbG9hZGluZ3tiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJyYW5kKTtib3JkZXItY29sb3I6dmFyKC0tY29sb3ItYnJhbmQpO3BvaW50ZXItZXZlbnRzOm5vbmV9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tYWxlcnQtbG9hZGluZyBzdmd7b3BhY2l0eTowfUBrZXlmcmFtZXMgdHYtcHVsc2UtYW5pbWF0aW9uLWJ1dHRvbi1BUmRiTTB5RHswJXtvcGFjaXR5OjB9MjAle29wYWNpdHk6MX10b3tvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKDIuNSl9fS50di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLWFsZXJ0LWxvYWRpbmc6YWZ0ZXJ7YW5pbWF0aW9uLWR1cmF0aW9uOjEuMDVzO2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6aW5maW5pdGU7YW5pbWF0aW9uLW5hbWU6dHYtcHVsc2UtYW5pbWF0aW9uLWJ1dHRvbi1BUmRiTTB5RDthbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllciguMzMsMCwuMTEsMSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jb2xvci1pdGVtLWFjdGl2ZS10ZXh0KTtib3JkZXItcmFkaXVzOjUwJTtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoxMHB4O2luc2V0LWlubGluZS1zdGFydDo1MCU7bWFyZ2luLWJsb2NrOi01cHggMDttYXJnaW4taW5saW5lOi01cHggMDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3dpZHRoOjEwcHh9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tZW5hYmxlZC1hbGVydC1sb2FkaW5ne2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYmctcHJpbWFyeSk7Ym9yZGVyLWNvbG9yOnZhcigtLV80LUVxTGIpfS50di1zY3JlZW5lci10b29sYmFyX19idXR0b24tLWVuYWJsZWQtYWxlcnQtbG9hZGluZzphZnRlcntib3JkZXItY29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tZmlsdGVyc3tiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJyYW5kKTtib3JkZXItd2lkdGg6MDtjb2xvcjp2YXIoLS1jb2xvci1pdGVtLWFjdGl2ZS10ZXh0KX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tZmlsdGVyczpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJyYW5kLWhvdmVyKX19LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tZmlsdGVyczphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fNi1FcUxiKTtjb2xvcjp2YXIoLS1fNy1FcUxiKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi0tZmlsdGVyczpob3Zlcntjb2xvcjp2YXIoLS1fNy1FcUxiKX19LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi1pY29ue2ZpbGw6dmFyKC0tY29sb3ItdGV4dC1zZWNvbmRhcnkpO3Bvc2l0aW9uOnJlbGF0aXZlO3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0udHYtc2NyZWVuZXItdG9vbGJhcl9fYnV0dG9uLWljb24tLXN0YW5kYWxvbmUtcmVmcmVzaHttYXJnaW4taW5saW5lLXN0YXJ0Oi05cHg7dG9wOi0ycHh9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi1pY29uLS1leHBvcnR7bWFyZ2luLWlubGluZS1zdGFydDotOHB4O3RvcDotMnB4fS50di1zY3JlZW5lci10b29sYmFyX19idXR0b24taWNvbi0tZmlsdGVyc3toZWlnaHQ6MTRweDttYXJnaW4taW5saW5lLXN0YXJ0OjdweDt3aWR0aDoxMnB4O2ZpbGw6dmFyKC0tY29sb3ItaXRlbS1hY3RpdmUtdGV4dCl9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2J1dHRvbi13cmFwLC50di1zY3JlZW5lci10b29sYmFyX19maWx0ZXItY291bnQtd3JhcHtwb3NpdGlvbjpyZWxhdGl2ZX0udHYtc2NyZWVuZXItdG9vbGJhcl9fZmlsdGVyLWNvdW50e2JhY2tncm91bmQ6dmFyKC0tY29sb3ItYnJhbmQpO2JvcmRlcjoycHggc29saWQgdmFyKC0tXzUtRXFMYik7Ym9yZGVyLXJhZGl1czoxMnB4O2NvbG9yOnZhcigtLWNvbG9yLWl0ZW0tYWN0aXZlLXRleHQpO2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZToxMnB4O2hlaWdodDoxOXB4O2luc2V0LWlubGluZS1lbmQ6LTEycHg7bGluZS1oZWlnaHQ6MjBweDtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWFsaWduOmNlbnRlcjt0b3A6LTEycHg7d2lkdGg6MTlweH0udHYtc2NyZWVuZXItdG9vbGJhcl9fZmlsdGVyLWNvdW50LS1tYXJrZXQtY291bnR7Ym9yZGVyOm5vbmU7aGVpZ2h0OjE2cHg7aW5zZXQtaW5saW5lLWVuZDoxMXB4O2xpbmUtaGVpZ2h0OjE2cHg7dG9wOi0xcHg7d2lkdGg6MTZweH0udHYtc2NyZWVuZXItdG9vbGJhcl9fc3dpdGNoe2FsaWduLWl0ZW1zOmNlbnRlcjtkaXNwbGF5OmZsZXg7bWFyZ2luLWlubGluZS1zdGFydDoxMHB4fS50di1zY3JlZW5lci10b29sYmFyX19mYXZvcml0ZXMsLnR2LXNjcmVlbmVyLXRvb2xiYXJfX3BlcmlvZC1waWNrZXJ7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtmbGV4LWdyb3c6MX0udHYtc2NyZWVuZXItdG9vbGJhcl9fZmF2b3JpdGVze21heC13aWR0aDoxMDAlfS50di1zY3JlZW5lci10b29sYmFyX19wZXJpb2QtcGlja2Vye3dpZHRoOjEwMCV9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX25vLXNjcm9sbC1jaG9pY2VyLXJlYWN0LXJvb3R7ZmxleC1ncm93OjF9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX25vLXNjcm9sbC1jaG9pY2VyLXJlYWN0LXJvb3QtZHJvcGRvd24taXRlbS0tc2VsZWN0ZWR7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMTAtRXFMYikhaW1wb3J0YW50O2NvbG9yOnZhcigtLV85LUVxTGIpIWltcG9ydGFudH0udHYtc2NyZWVuZXItdG9vbGJhcl9fZmF2b3JpdGVzLWl0ZW0sLnR2LXNjcmVlbmVyLXRvb2xiYXJfX3BlcmlvZC1waWNrZXItaXRlbXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8yLUVxTGIpO2JvcmRlci1yYWRpdXM6MnB4O2NvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtc2l6ZToxM3B4O21hcmdpbi1pbmxpbmUtc3RhcnQ6OXB4O21heC13aWR0aDoxNTBweDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzo1cHggMTBweDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAxNzVtcyBlYXNlO3doaXRlLXNwYWNlOm5vd3JhcH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2Zhdm9yaXRlcy1pdGVtOmhvdmVyLC50di1zY3JlZW5lci10b29sYmFyX19wZXJpb2QtcGlja2VyLWl0ZW06aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMC1FcUxiKX19LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2Zhdm9yaXRlcy1pdGVtOmFjdGl2ZSwudHYtc2NyZWVuZXItdG9vbGJhcl9fcGVyaW9kLXBpY2tlci1pdGVtOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8xLUVxTGIpfS50di1zY3JlZW5lci10b29sYmFyX19mYXZvcml0ZXMtaXRlbTpmaXJzdC1jaGlsZCwudHYtc2NyZWVuZXItdG9vbGJhcl9fcGVyaW9kLXBpY2tlci1pdGVtOmZpcnN0LWNoaWxke21hcmdpbi1pbmxpbmUtc3RhcnQ6MH0udHYtc2NyZWVuZXItdG9vbGJhcl9fZmF2b3JpdGVzLWl0ZW0tLWFjdGl2ZSwudHYtc2NyZWVuZXItdG9vbGJhcl9fZmF2b3JpdGVzLWl0ZW0tLWFjdGl2ZTphY3RpdmUsLnR2LXNjcmVlbmVyLXRvb2xiYXJfX3BlcmlvZC1waWNrZXItaXRlbS0tYWN0aXZlLC50di1zY3JlZW5lci10b29sYmFyX19wZXJpb2QtcGlja2VyLWl0ZW0tLWFjdGl2ZTphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMS1FcUxiKSFpbXBvcnRhbnQ7Y29sb3I6dmFyKC0tXzMtRXFMYil9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci10b29sYmFyX19mYXZvcml0ZXMtaXRlbS0tYWN0aXZlOmhvdmVyLC50di1zY3JlZW5lci10b29sYmFyX19wZXJpb2QtcGlja2VyLWl0ZW0tLWFjdGl2ZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8xLUVxTGIpIWltcG9ydGFudDtjb2xvcjp2YXIoLS1fMy1FcUxiKX19LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2Zhdm9yaXRlcy1tb3JlLXdyYXB7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWlubGluZS1zdGFydDo5cHg7cG9zaXRpb246cmVsYXRpdmV9LnR2LXNjcmVlbmVyLXRvb2xiYXJfX2Zhdm9yaXRlcy1tb3Jle2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjE1cHg7bWFyZ2luLWlubGluZS1zdGFydDowO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjVweH0udHYtc2NyZWVuZXItdG9vbGJhcl9fZmF2b3JpdGVzLW1vcmU6YWZ0ZXJ7Ym9yZGVyOjRweCBzb2xpZCAjMDAwMDtib3JkZXItdG9wOjRweCBzb2xpZCB2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTtjb250ZW50OiIiO21hcmdpbi10b3A6LTRweDttYXJnaW4taW5saW5lLXN0YXJ0OjVweDttYXJnaW4taW5saW5lLXN0YXJ0Oi0xcHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjU1JX0udHYtc2NyZWVuZXItdG9vbGJhcl9faW50ZXJ2YWwtc3Vwe3RvcDotLjVlbX0udHYtc2NyZWVuZXItdG9vbGJhcl9faW50ZXJ2YWwtc2VsZWN0e3doaXRlLXNwYWNlOm5vd3JhcH0udHYtc2NyZWVuZXItdG9vbGJhciAudHYtc2NyZWVuZXItdG9vbGJhcl9fY3VycmVuY3ktc2VsZWN0e21hcmdpbi1pbmxpbmUtZW5kOjEwcHh9LnR2LXNjcmVlbmVyLXRvb2xiYXIgLnR2LXNjcmVlbmVyLXRvb2xiYXJfX2N1cnJlbmN5LXNlbGVjdCAudHYtZHJvcGRvd25fX2J1dHRvbnt0ZXh0LWFsaWduOmNlbnRlcjt3aWR0aDoyMTBweH0udHYtc2NyZWVuZXItdG9vbGJhciAudHYtc2NyZWVuZXItdG9vbGJhcl9fY3VycmVuY3ktc2VsZWN0IC50di1zY3JlZW5lci1wb3B1cF9faXRlbXt0ZXh0LWFsaWduOmNlbnRlcjt3aWR0aDoxNzBweH0udHYtc2NyZWVuZXItdG9vbGJhciAudHYtc2NyZWVuZXItcG9wdXBfX2N1cnJlbmN5LXNlbGVjdC0tYWN0aXZle2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItaXRlbS1zZWxlY3RlZC1ibHVlKX0udHYtZmxhZy1jb3VudHJ5LS1nbG9iZSBzdmd7Y29sb3I6dmFyKC0tXzgtRXFMYil9W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtNnlfUjojZWNlY2VjfVtkYXRhLXRoZW1lPWRhcmtdey0tXzAtNnlfUjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNzUwKX0udHYtc2NyZWVuZXItcG9wdXB7d2lkdGg6MjgwcHh9LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVte2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcmVndWxhcik7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOjEzcHg7bGluZS1oZWlnaHQ6MTRweDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzoxMHB4IDIycHg7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1vdmVyZmxvdzplbGxpcHNpczt0ZXh0LXRyYW5zZm9ybTpub25lO3doaXRlLXNwYWNlOm5vd3JhcH0udHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLXByZXNldHMsLnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLS1zYXZle2JvcmRlci1ib3R0b206MXB4IHNvbGlkO2JvcmRlci1ib3R0b20tY29sb3I6dmFyKC0tXzAtNnlfUil9LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLS1zYXZle21hcmdpbi1ib3R0b206MTBweH0udHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLWFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWl0ZW0tc2VsZWN0ZWQtYmx1ZSl9LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLS1wcmVzZXRze2ZvbnQtd2VpZ2h0OjQwMDtwYWRkaW5nOjB9LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLS1wcmVzZXRzOmVtcHR5e2Rpc3BsYXk6bm9uZX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLS1wcmVzZXQ6aG92ZXJ7cGFkZGluZy1pbmxpbmUtZW5kOjcwcHh9fS50di1zY3JlZW5lci1wb3B1cF9faXRlbS0tc3BhY2UtbGVmdHtwYWRkaW5nLWlubGluZS1zdGFydDoyNXB4IWltcG9ydGFudH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdHYtZHJvcGRvd24taXRlbS1ob3Zlci1iZyl9fS50di1zY3JlZW5lci1wb3B1cF9faXRlbS1wcmVzZXRzLXRpdGxle2Rpc3BsYXk6YmxvY2s7Zm9udC13ZWlnaHQ6NzAwO3BhZGRpbmc6MTBweCAyMnB4fS50di1zY3JlZW5lci1wb3B1cF9faXRlbS1kZWxldGV7ZGlzcGxheTpub25lO2luc2V0LWlubGluZS1lbmQ6NzRweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MTFweH0udHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tZGVsZXRlLS1yaWdodHtpbnNldC1pbmxpbmUtZW5kOjE4cHh9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci1wb3B1cF9faXRlbS1kZWxldGU6aG92ZXIgc3ZnICp7c3Ryb2tlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApfS50di1zY3JlZW5lci1wb3B1cF9faXRlbTpob3Zlcj4udHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tZGVsZXRle2Rpc3BsYXk6aW5saW5lfX0udHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tZWRpdCwudHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tcmVuYW1le2Rpc3BsYXk6bm9uZTtpbnNldC1pbmxpbmUtZW5kOjQ1cHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjExcHh9LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLWVkaXQgc3ZnLC50di1zY3JlZW5lci1wb3B1cF9faXRlbS1yZW5hbWUgc3Zne2hlaWdodDoxMHB4O3dpZHRoOjEycHg7ZmlsbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLWVkaXQ6aG92ZXIgc3ZnLC50di1zY3JlZW5lci1wb3B1cF9faXRlbS1yZW5hbWU6aG92ZXIgc3Zne2ZpbGw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCl9LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtOmhvdmVyPi50di1zY3JlZW5lci1wb3B1cF9faXRlbS1lZGl0LC50di1zY3JlZW5lci1wb3B1cF9faXRlbTpob3Zlcj4udHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tcmVuYW1le2Rpc3BsYXk6YmxvY2t9fS50di1zY3JlZW5lci1wb3B1cF9faXRlbS1kZWxldGUsLnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLXJlbmFtZSwudHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tc3RhciwudHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tc3Rhci1hY3RpdmV7bWFyZ2luOi03cHg7cGFkZGluZzo3cHh9LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLXN0YXIsLnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLXN0YXItYWN0aXZle2Rpc3BsYXk6bm9uZTtpbnNldC1pbmxpbmUtZW5kOjE1cHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjhweH0udHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tc3RhciBzdmcsLnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLXN0YXItYWN0aXZlIHN2Z3toZWlnaHQ6MTZweDt3aWR0aDoxNnB4O2ZpbGw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci1wb3B1cF9faXRlbS1zdGFyOmhvdmVyIHN2Z3tmaWxsOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApfX0udHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tc3Rhci1hY3RpdmUgc3Zne2ZpbGw6dmFyKC0tY29sb3ItYmFuYW5hLXllbGxvdy03MDApfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tc3Rhci1hY3RpdmU6aG92ZXIgc3Zne2ZpbGw6dmFyKC0tY29sb3ItdGFuLW9yYW5nZS1hNDAwKX19LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLS1mYXZvcml0ZSAudHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tc3Rhci1hY3RpdmV7ZGlzcGxheTppbmxpbmV9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci1wb3B1cF9faXRlbTpob3Zlcj4udHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tc3RhcntkaXNwbGF5OmlubGluZX0udHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tLWZhdm9yaXRlOmhvdmVyPi50di1zY3JlZW5lci1wb3B1cF9faXRlbS1zdGFye2Rpc3BsYXk6bm9uZX19LnR2LXNjcmVlbmVyLXBvcHVwX19yZWZyZXNoLWludGVydmFsc3t3aWR0aDphdXRvfS50di1zY3JlZW5lci1wb3B1cF9fcmVmcmVzaC1pbnRlcnZhbC1sYWJlbHt3aGl0ZS1zcGFjZTpub3dyYXB9LnR2LXNjcmVlbmVyLXBvcHVwX19zZWxlY3QtaW50ZXJ2YWwtYWN0aXZle2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXBvcHVwX19zZWxlY3QtaW50ZXJ2YWwtYWN0aXZlOmhvdmVye2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kKX19LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLWFsZXJ0LXRvZ2dsZXtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTpub25lO2hlaWdodDoxNHB4O2luc2V0LWlubGluZS1zdGFydDo2cHg7cGFkZGluZy1ibG9jazoycHggMDtwYWRkaW5nLWlubGluZToycHggMDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6OXB4O3dpZHRoOjE0cHh9LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLWFsZXJ0LXRvZ2dsZSBzdmd7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTBweDt3aWR0aDoxMHB4O2ZpbGw6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLWFsZXJ0LXRvZ2dsZS0tYWN0aXZle2Rpc3BsYXk6YmxvY2t9LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLWFsZXJ0LXRvZ2dsZS0tYWN0aXZlIHN2Z3tmaWxsOnZhcigtLWNvbG9yLWJyYW5kKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLWFsZXJ0LXRvZ2dsZTpob3ZlciBzdmd7ZmlsbDp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKX0udHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tYWxlcnQtdG9nZ2xlLS1hY3RpdmU6aG92ZXIgc3Zne2ZpbGw6dmFyKC0tY29sb3ItdHYtYmx1ZS02MDApfS50di1zY3JlZW5lci1wb3B1cF9faXRlbTpob3ZlciAudHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tYWxlcnQtdG9nZ2xle2Rpc3BsYXk6YmxvY2t9fS5mZWF0dXJlLW1vYmlsZXRvdWNoIC50di1zY3JlZW5lci1wb3B1cF9faXRlbS0tZmF2b3JpdGUgLnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLXN0YXJ7ZGlzcGxheTpub25lfS5mZWF0dXJlLW1vYmlsZXRvdWNoIC50di1zY3JlZW5lci1wb3B1cF9faXRlbS1kZWxldGUsLmZlYXR1cmUtbW9iaWxldG91Y2ggLnR2LXNjcmVlbmVyLXBvcHVwX19pdGVtLXJlbmFtZSwuZmVhdHVyZS1tb2JpbGV0b3VjaCAudHYtc2NyZWVuZXItcG9wdXBfX2l0ZW0tc3RhcntkaXNwbGF5OmlubGluZX0udHYtc2NyZWVuZXItZmllbGRzLXBvcHVwe3RvcDoxcHg7d2lkdGg6MjgwcHh9LnR2LXNjcmVlbmVyLWZpZWxkcy1wb3B1cF9fc2VhcmNoLXdyYXB7Ym9yZGVyLWJvdHRvbToxcHggc29saWQ7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWJvcmRlcik7aGVpZ2h0OjQ1cHg7cG9zaXRpb246cmVsYXRpdmV9LnR2LXNjcmVlbmVyLWZpZWxkcy1wb3B1cF9fc2VhcmNoLWlucHV0e2JhY2tncm91bmQtY29sb3I6aW5pdGlhbDtib3JkZXI6bm9uZTtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTpibG9jaztoZWlnaHQ6NDVweDttYXJnaW46MDtwYWRkaW5nLWJsb2NrOjEwcHggMDtwYWRkaW5nLWlubGluZToyMnB4IDIycHg7d2lkdGg6MTAwJX0udHYtc2NyZWVuZXItZmllbGRzLXBvcHVwX19zZWFyY2gtbm8tbWF0Y2hlc3tjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSk7Zm9udC1zdHlsZTppdGFsaWM7cG9pbnRlci1ldmVudHM6bm9uZX0udHYtc2NyZWVuZXItZmllbGRzLXBvcHVwX19pdGVte2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcmVndWxhcik7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpibG9jaztmb250LXNpemU6MTNweDtsaW5lLWhlaWdodDoxNHB4O3BhZGRpbmc6MTBweCAyMnB4fS50di1zY3JlZW5lci1maWVsZHMtcG9wdXBfX2l0ZW0tLW5vLW1hdGNoZXN7Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7Y3Vyc29yOmRlZmF1bHQ7Zm9udC1zdHlsZTppdGFsaWN9LnR2LXNjcmVlbmVyLWZpZWxkcy1wb3B1cF9fc2VhcmNoLWlucHV0e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYmctcHJpbWFyeSk7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1yZWd1bGFyKX1bZGF0YS10aGVtZT1saWdodF17LS1fMC1lTGtWOiNmNWY4Zjk7LS1fMS1lTGtWOnZhcigtLWNvbG9yLXdoaXRlKTstLV8yLWVMa1Y6dmFyKC0tY29sb3ItdHYtYmx1ZS01MCk7LS1fMy1lTGtWOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0xNTApOy0tXzQtZUxrVjp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLV81LWVMa1Y6dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwMCl9W2RhdGEtdGhlbWU9ZGFya117LS1fMC1lTGtWOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tXzEtZUxrVjp2YXIoLS1jb2xvci13aGl0ZSk7LS1fMi1lTGtWOnZhcigtLWNvbG9yLXR2LWJsdWUtYTkwMCk7LS1fMy1lTGtWOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tXzQtZUxrVjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLV81LWVMa1Y6dmFyKC0tY29sb3ItY29sZC1ncmF5LTUwMCl9QGtleWZyYW1lcyBmbGljay16UGlWNlNZNHswJXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXRhbi1vcmFuZ2UtNTApfXRve2JhY2tncm91bmQtY29sb3I6aW5pdGlhbH19QGtleWZyYW1lcyBmbGljay10aGVtZS1kYXJrLXpQaVY2U1k0ezAle2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItbWludHktZ3JlZW4tYTkwMCl9dG97YmFja2dyb3VuZC1jb2xvcjppbml0aWFsfX1odG1sLnRoZW1lLWRhcmsgLnR2LXNjcmVlbmVyLXRhYmxlX19yZXN1bHQtcm93LS1mb2N1c2VkLGh0bWwudGhlbWUtZGFyayAudHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3ctLXNlbGVjdGVke2JhY2tncm91bmQ6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7aHRtbC50aGVtZS1kYXJrIC50di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdy0tZm9jdXNlZDpob3ZlcixodG1sLnRoZW1lLWRhcmsgLnR2LXNjcmVlbmVyLXRhYmxlX19yZXN1bHQtcm93LS1zZWxlY3RlZDpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWNvbG9yLXR2LWJsdWUtYTgwMCkhaW1wb3J0YW50fX1odG1sLnRoZW1lLWRhcmsgLnR2LXNjcmVlbmVyLXRhYmxlX19yZXN1bHQtcm93LS1mbGlja3thbmltYXRpb24tbmFtZTpmbGljay10aGVtZS1kYXJrLXpQaVY2U1k0fS50di1zY3JlZW5lci10YWJsZXtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpO3Bvc2l0aW9uOnN0YXRpY30udHYtc2NyZWVuZXItdGFibGUtLWZpeGVke3RhYmxlLWxheW91dDpmaXhlZH0udHYtc2NyZWVuZXItdGFibGVfX3RoZWFke2JhY2tncm91bmQtY29sb3I6aW5pdGlhbDtib3JkZXI6bm9uZTtwb2ludGVyLWV2ZW50czpub25lfS50di1zY3JlZW5lci10YWJsZV9fdGhlYWQtLXJlZ3VsYXIsLnR2LXNjcmVlbmVyLXRhYmxlX190aGVhZC0tc3RpY2t5e3BvaW50ZXItZXZlbnRzOmF1dG99LnR2LXNjcmVlbmVyLXRhYmxlX19oZWFke2JvcmRlci1ib3R0b206MXB4IHNvbGlkO2JvcmRlci1ib3R0b20tY29sb3I6dmFyKC0tY29sb3ItZGl2aWRlcik7Ym9yZGVyLXRvcDoxcHggc29saWQ7Ym9yZGVyLXRvcC1jb2xvcjp2YXIoLS1jb2xvci1kaXZpZGVyKTtoZWlnaHQ6NDhweH0udHYtc2NyZWVuZXItdGFibGVfX3Roe2N1cnNvcjpkZWZhdWx0O3BhZGRpbmc6MH0udHYtc2NyZWVuZXItdGFibGVfX3RoOm5vdCg6Zmlyc3QtY2hpbGQpe2JvcmRlci1pbmxpbmUtc3RhcnQ6MXB4IHNvbGlkO2JvcmRlci1pbmxpbmUtc3RhcnQtY29sb3I6dmFyKC0tY29sb3ItZGl2aWRlcil9LnR2LXNjcmVlbmVyLXRhYmxlX190aC0tZHJhZ2dpbmd7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMC1lTGtWKTt6LWluZGV4OjF9LnR2LXNjcmVlbmVyLXRhYmxlX190aDpsYXN0LWNoaWxkOm5vdCgudHYtc2NyZWVuZXItdGFibGVfX3RoLS1iaWcpOm5vdCgudHYtc2NyZWVuZXItdGFibGVfX3RoLS1uby10b29sYmFyKXtwYWRkaW5nLWlubGluZS1lbmQ6NDFweH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXRhYmxlX190aDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLWJnLXByaW1hcnktaG92ZXIpfX0udHYtc2NyZWVuZXItdGFibGUgLnR2LXNjcmVlbmVyLXRhYmxlX190aHt3aGl0ZS1zcGFjZTpub3JtYWx9LnR2LXNjcmVlbmVyLXRhYmxlX19oZWFkLXdyYXB7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtoZWlnaHQ6NDdweDtwYWRkaW5nOjAgMTBweH0udHYtc2NyZWVuZXItdGFibGVfX2hlYWQtd3JhcC0tZGlzYWJsZS1pbnRlcmFjdGlvbntjdXJzb3I6ZGVmYXVsdH0udHYtc2NyZWVuZXItdGFibGVfX2hlYWQtbGVmdHtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSk7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO21pbi13aWR0aDozMHB4O3RleHQtYWxpZ246Y2VudGVyO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt3aWR0aDoxMDAlfS50di1zY3JlZW5lci10YWJsZV9faGVhZC1sZWZ0LS1uYW1lLWNvbCwudHYtc2NyZWVuZXItdGFibGVfX2hlYWQtbGVmdC0tbmFtZS1jb2wtd2l0aG91dC1kZXNjcmlwdGlvbntkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZToiY29sdW1uTmFtZSBzZWFyY2hJbnB1dCIgImNvbHVtblZhbHVlIHNlYXJjaElucHV0IiAiY29sdW1uTWF0Y2hlcyBzZWFyY2hJbnB1dCI7bWluLXdpZHRoOjIyMHB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjIwcHg7dGV4dC1hbGlnbjpzdGFydDt3aWR0aDoxMDAlfUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNjcmVlbmVyLXRhYmxlX19oZWFkLWxlZnQtLW5hbWUtY29sLC50di1zY3JlZW5lci10YWJsZV9faGVhZC1sZWZ0LS1uYW1lLWNvbC13aXRob3V0LWRlc2NyaXB0aW9ue21pbi13aWR0aDoxMDBweH19LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXItdGFibGVfX2hlYWQtbGVmdC0tbmFtZS1jb2wsLnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXItdGFibGVfX2hlYWQtbGVmdC0tbmFtZS1jb2wtd2l0aG91dC1kZXNjcmlwdGlvbntncmlkLXRlbXBsYXRlOiJjb2x1bW5OYW1lIHNlYXJjaElucHV0IiAiY29sdW1uVmFsdWUgc2VhcmNoSW5wdXQifS50di1zY3JlZW5lci10YWJsZV9faGVhZC1sZWZ0LS13aWRnZXQtbmFtZS1jb2wtd2l0aG91dC1kZXNjcmlwdGlvbntkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZToiY29sdW1uTmFtZSIgImNvbHVtblZhbHVlIiAiY29sdW1uTWF0Y2hlcyI7bWluLXdpZHRoOjkwcHg7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MjBweDt0ZXh0LWFsaWduOnN0YXJ0fS50di1zY3JlZW5lci10YWJsZV9faGVhZC1sZWZ0LS10ZXh0e2Rpc3BsYXk6aW5saW5lLWJsb2NrO2dyaWQtYXJlYTpjb2x1bW5OYW1lO3Bvc2l0aW9uOnJlbGF0aXZlO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aWR0aDoxMDAlOy0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQ6MTdweDtsaW5lLWhlaWdodDp2YXIoLS11aS1saWItdHlwb2dyYXBoeS1saW5lLWhlaWdodCk7LS11aS1saWItdHlwb2dyYXBoeS1mb250LXNpemU6MTJweDtmb250LXNpemU6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplKTtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDo0MDB9LnR2LXNjcmVlbmVyLXRhYmxlX19oZWFkLWxlZnQtLXRpdGxlLXRocmVlLWxpbmVze2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtbGluZS1jbGFtcDozOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDtsaW5lLWhlaWdodDoxMnB4O21heC1oZWlnaHQ6MzZweH0udHYtc2NyZWVuZXItdGFibGVfX2hlYWQtbGVmdC0tdGl0bGUtdHdvLWxpbmVze2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtbGluZS1jbGFtcDoyOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDtsaW5lLWhlaWdodDoxMnB4O21heC1oZWlnaHQ6MjRweH0udHYtc2NyZWVuZXItdGFibGVfX2hlYWQtbGVmdCAudHYtc2NyZWVuZXItdGFibGVfX2hlYWQtbGVmdC0tbWFya2Vye2hlaWdodDoyMHB4O2luc2V0LWlubGluZS1zdGFydDotMzBweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTJweH0udHYtc2NyZWVuZXItdGFibGVfX2ZpbHRlci1idXR0b257YWxpZ24taXRlbXM6Y2VudGVyO2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3Itc2NyZWVuZXItaGVhZGVyLWJnLWhvdmVyKTtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSk7ZGlzcGxheTppbmxpbmUtZmxleDtoZWlnaHQ6MTAwJTtpbnNldC1pbmxpbmUtZW5kOjA7anVzdGlmeS1jb250ZW50OmNlbnRlcjtvcGFjaXR5OjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6MThweH0udHYtc2NyZWVuZXItdGFibGVfX2ZpbHRlci1idXR0b24gc3Zne2hlaWdodDoxNHB4O3dpZHRoOjEycHh9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci10YWJsZV9fdGg6aG92ZXIgLnR2LXNjcmVlbmVyLXRhYmxlX19maWx0ZXItYnV0dG9ue2JvcmRlci1pbmxpbmUtc3RhcnQ6MXB4IHNvbGlkIHZhcigtLWNvbG9yLWRpdmlkZXIpfS50di1zY3JlZW5lci10YWJsZV9fdGg6aG92ZXIgLnR2LXNjcmVlbmVyLXRhYmxlX19maWx0ZXItYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzMtZUxrVik7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KX0udHYtc2NyZWVuZXItdGFibGVfX3RoOmhvdmVyIC50di1zY3JlZW5lci10YWJsZV9fZmlsdGVyLWJ1dHRvbi0tYWN0aXZle2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kKX0udHYtc2NyZWVuZXItdGFibGVfX3RoOmhvdmVyIC50di1zY3JlZW5lci10YWJsZV9fZmlsdGVyLWJ1dHRvbi0tYWN0aXZlOmhvdmVye2NvbG9yOnZhcigtLWNvbG9yLWJyYW5kLWhvdmVyKX19LnR2LXNjcmVlbmVyLXRhYmxlX19jb2wtLWRyYWdnaW5ne2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzAtZUxrVil9LnR2LXNjcmVlbmVyLXRhYmxlX19yZXN1bHQtcm93e2N1cnNvcjpkZWZhdWx0O2hlaWdodDo0OHB4fS50di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdy0tZmxpY2t7YW5pbWF0aW9uLWR1cmF0aW9uOjEuNHM7YW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDoxO2FuaW1hdGlvbi1uYW1lOmZsaWNrLXpQaVY2U1k0O2FuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246Y3ViaWMtYmV6aWVyKC43NTUsLjA1LC44NTUsLjA2KX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3c6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1jb2xvci1iZy1wcmltYXJ5LWhvdmVyKX19LnR2LXNjcmVlbmVyLXRhYmxlX19yZXN1bHQtcm93LS1hY3RpdmV7YmFja2dyb3VuZDojMzE3OWY1NjZ9LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3ctLWFjdGl2ZXtiYWNrZ3JvdW5kOnZhcigtLV8yLWVMa1YpfS50di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdy0tYWN0aXZlIC50di1zY3JlZW5lci10YWJsZV9fY2VsbDpmaXJzdC1jaGlsZHtib3JkZXItaW5saW5lLXN0YXJ0OjZweCBzb2xpZCB2YXIoLS1jb2xvci10di1ibHVlLTUwMCl9LnR2LXNjcmVlbmVyLXRhYmxlX19yZXN1bHQtcm93LS1mb2N1c2VkLC50di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdy0tc2VsZWN0ZWR7YmFja2dyb3VuZDp2YXIoLS1jb2xvci10di1ibHVlLTEwMCl9LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3ctLWZvY3VzZWQsLnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3ctLXNlbGVjdGVke2JhY2tncm91bmQ6dmFyKC0tXzItZUxrVil9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdy0tZm9jdXNlZDpob3ZlciwudHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3ctLXNlbGVjdGVkOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApIWltcG9ydGFudH0udHYtc2NyZWVuZXItLXN0YW5kYWxvbmUtbWFya2V0IC50di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdy0tZm9jdXNlZDpob3ZlciwudHYtc2NyZWVuZXItLXN0YW5kYWxvbmUtbWFya2V0IC50di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdy0tc2VsZWN0ZWQ6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1fMi1lTGtWKSFpbXBvcnRhbnR9fS5mZWF0dXJlLW1vYmlsZXRvdWNoIC50di1zY3JlZW5lci10YWJsZV9fcmVzdWx0LXJvdy0tZm9jdXNlZCAudHYtc2NyZWVuZXItdGFibGVfX21hcmtlciwuZmVhdHVyZS1tb2JpbGV0b3VjaCAudHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3ctLXNlbGVjdGVkIC50di1zY3JlZW5lci10YWJsZV9fbWFya2Vye3Zpc2liaWxpdHk6dmlzaWJsZX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXRhYmxlX19yZXN1bHQtcm93OmhvdmVyIC50di1zY3JlZW5lcl9fc3ltYm9se2NvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtNjAwKTtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9LnR2LXNjcmVlbmVyLXRhYmxlX19yZXN1bHQtcm93OmhvdmVyIC50di1zY3JlZW5lcl9fc3ltYm9sLS10ZXh0e2NvbG9yOnZhcigtLWNvbG9yLXNjcmVlbmVyLWRlc2NyaXB0aW9uKTtjdXJzb3I6ZGVmYXVsdH19LnR2LXNjcmVlbmVyLXRhYmxlX19yZXN1bHQtcm93LS1hY3RpdmUgLnR2LXNjcmVlbmVyLXRhYmxlX19tYXJrZXJ7dmlzaWJpbGl0eTp2aXNpYmxlfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2NyZWVuZXItdGFibGVfX3Jlc3VsdC1yb3c6aG92ZXIgLnR2LXNjcmVlbmVyLXRhYmxlX19tYXJrZXJ7dmlzaWJpbGl0eTp2aXNpYmxlfX0udHYtc2NyZWVuZXItdGFibGVfX3N5bWJvbC1hZGRpdGlvbnthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlO2ZsZXgtc2hyaW5rOjA7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kfS50di1zY3JlZW5lci10YWJsZV9fbWFya2Vye21pbi1oZWlnaHQ6MTZweDttaW4td2lkdGg6MjBweDt2aXNpYmlsaXR5OmhpZGRlbn0udHYtc2NyZWVuZXItdGFibGVfX21hcmtlci0tYWN0aXZle3Zpc2liaWxpdHk6dmlzaWJsZX0udHYtc2NyZWVuZXItdGFibGVfX3N5bWJvbC1jb250YWluZXJ7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleH0udHYtc2NyZWVuZXItdGFibGVfX2NlbGx7Zm9udC1zaXplOjE0cHg7cGFkZGluZy1ibG9jazoxMnB4IDEycHg7cGFkZGluZy1pbmxpbmU6MTFweCAxMHB4O3RleHQtYWxpZ246ZW5kO3RleHQtdHJhbnNmb3JtOm5vbmU7d2hpdGUtc3BhY2U6bm93cmFwfS50di1zY3JlZW5lci10YWJsZV9fY2VsbDpkaXIocnRsKXtkaXJlY3Rpb246bHRyO3RleHQtYWxpZ246cmlnaHR9LnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsIC50di1zY3JlZW5lcl9fc3ltYm9se3RleHQtdHJhbnNmb3JtOm5vbmU7dHJhbnNpdGlvbjpjb2xvciAuMzVzIGVhc2V9LnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsIC50di1zY3JlZW5lcl9fZGVzY3JpcHRpb257Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7ZGlzcGxheTpibG9jaztmb250LXNpemU6MTFweDtsZXR0ZXItc3BhY2luZzouM3B4O21hcmdpbi10b3A6MnB4fS50di1zY3JlZW5lci0tc3RhbmRhbG9uZS1tYXJrZXQgLnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsIC50di1zY3JlZW5lcl9fZGVzY3JpcHRpb257Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KX0udHYtc2NyZWVuZXItdGFibGVfX2NlbGwgLnR2LWZsYWctY291bnRyeXttYXJnaW4tYmxvY2s6MCAwO21hcmdpbi1pbmxpbmU6NHB4IDEycHh9LnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS1sZWZ0e3RleHQtYWxpZ246c3RhcnR9LnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS1sZWZ0OmRpcihydGwpe2RpcmVjdGlvbjpydGx9LnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS1jZW50ZXJ7dGV4dC1hbGlnbjpjZW50ZXJ9LnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS11cHtjb2xvcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi00MDApfS50di1zY3JlZW5lci0tc3RhbmRhbG9uZS1tYXJrZXQgLnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS11cHtjb2xvcjp2YXIoLS1jb2xvci1ncm93aW5nKX0udHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLWRvd257Y29sb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKX0udHYtc2NyZWVuZXItLXN0YW5kYWxvbmUtbWFya2V0IC50di1zY3JlZW5lci10YWJsZV9fY2VsbC0tZG93bntjb2xvcjp2YXIoLS1jb2xvci1mYWxsaW5nKX0udHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLWhpZ2hsaWdodGVke3RleHQtb3ZlcmZsb3c6Y2xpcH0udHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLWdyb3dpbmd7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1taW50eS1ncmVlbi0zMDApO2JvcmRlci1yYWRpdXM6MnB4O2NvbG9yOiNmZmY7bWFyZ2luOjAgLTNweDtwYWRkaW5nOjFweCAzcHh9LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLWdyb3dpbmd7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1ncm93aW5nKTtjb2xvcjp2YXIoLS1fMS1lTGtWKX0udHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLWZhbGxpbmd7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApO2JvcmRlci1yYWRpdXM6MnB4O2NvbG9yOiNmZmY7bWFyZ2luOjAgLTNweDtwYWRkaW5nOjFweCAzcHh9LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLWZhbGxpbmd7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1mYWxsaW5nKTtjb2xvcjp2YXIoLS1fMS1lTGtWKX0udHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLWZpeC13aWR0aHtkaXNwbGF5OmlubGluZS1ibG9jazttYXgtd2lkdGg6MjAwcHg7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS50di1zY3JlZW5lci10YWJsZV9fY2VsbDpmaXJzdC1jaGlsZHttYXgtd2lkdGg6MzAwcHg7cGFkZGluZy1ib3R0b206NHB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjIwcHg7cGFkZGluZy10b3A6NXB4fUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsOmZpcnN0LWNoaWxke21pbi13aWR0aDowfX0udHYtc2NyZWVuZXItdGFibGVfX2NlbGw6bGFzdC1jaGlsZDpub3QoLnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS1iaWcpOm5vdCgudHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLW5vLXRvb2xiYXIpe3BhZGRpbmctaW5saW5lLWVuZDo1M3B4fS50di1zY3JlZW5lci10YWJsZV9fY2VsbC0td2l0aG91dC1kZXNjcmlwdGlvbiAudHYtZmxhZy1jb3VudHJ5e21hcmdpbi10b3A6MH0udHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLXdpdGhvdXQtZGVzY3JpcHRpb246Zmlyc3QtY2hpbGR7bWluLXdpZHRoOjE3NXB4fUBtZWRpYSAobWF4LXdpZHRoOjEwMTlweCl7LnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS13aXRob3V0LWRlc2NyaXB0aW9uOmZpcnN0LWNoaWxke21pbi13aWR0aDo5MHB4fX0udHYtc2NyZWVuZXItdGFibGVfX2NlbGwtLXdpZGdldC13aXRob3V0LWRlc2NyaXB0aW9uOmZpcnN0LWNoaWxke21pbi13aWR0aDo5MHB4fS50di1zY3JlZW5lci10YWJsZV9fY2VsbC0tY29sb3Itbm9ybWFse2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSl9LnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsLS1jcnlwdG9fbWt0e2ZvbnQtc2l6ZToxNHB4fS50di1zY3JlZW5lci10YWJsZV9fY2VsbC0td2l0aC1tYXJrZXI6Zmlyc3QtY2hpbGR7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MH0udHYtc2NyZWVuZXItdGFibGVfX21hcmtldC1pY29ue2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoyMHB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt3aWR0aDoyMHB4fS50di1zY3JlZW5lci10YWJsZV9fbWFya2V0LWljb24gc3Zne3N0cm9rZTpjdXJyZW50Q29sb3J9LnR2LXNjcmVlbmVyLXRhYmxlX19jZWxsIC5zZXNzaW9uLXN0YXR1c3tib3JkZXItcmFkaXVzOjJweDtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6NHB4O21hcmdpbi1ibG9jazowIDJweDttYXJnaW4taW5saW5lOjRweCAwO3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjRweH0udHYtc2NyZWVuZXItdGFibGVfX2NlbGwgLnNlc3Npb24tc3RhdHVzLnByZV9tYXJrZXR7YmFja2dyb3VuZDojZjc5ZDE2fS50di1zY3JlZW5lci10YWJsZV9fc29ydHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtMzAwKTtib3R0b206MDtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MnB4O2luc2V0LWlubGluZS1lbmQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWFsaWduOmNlbnRlcjt2aXNpYmlsaXR5OmhpZGRlbjt3aWR0aDoxMDAlfS50di1zY3JlZW5lci0tc3RhbmRhbG9uZS1tYXJrZXQgLnR2LXNjcmVlbmVyLXRhYmxlX19zb3J0e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYnJhbmQpfS50di1zY3JlZW5lci10YWJsZV9fc29ydCBzdmd7aW5zZXQtaW5saW5lLWVuZDpjYWxjKDUwJSAtIDRweCk7cG9zaXRpb246YWJzb2x1dGU7ZmlsbDp2YXIoLS1jb2xvci10di1ibHVlLTMwMCl9LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXItdGFibGVfX3NvcnQgc3Zne2ZpbGw6dmFyKC0tY29sb3ItYnJhbmQpfS50di1zY3JlZW5lci10YWJsZV9fc29ydC0tYXNje3Zpc2liaWxpdHk6dmlzaWJsZX0udHYtc2NyZWVuZXItdGFibGVfX3NvcnQtLWFzYyBzdmd7dG9wOi0zcHh9LnR2LXNjcmVlbmVyLXRhYmxlX19zb3J0LS1kZXNje3Zpc2liaWxpdHk6dmlzaWJsZX0udHYtc2NyZWVuZXItdGFibGVfX3NvcnQtLWRlc2Mgc3Zne3RvcDoycHh9LnR2LXNjcmVlbmVyLXRhYmxlX190aC0tYmlnOmxhc3QtY2hpbGQgLnR2LXNjcmVlbmVyLXRhYmxlX19zb3J0e2luc2V0LWlubGluZS1lbmQ6YXV0bztpbnNldC1pbmxpbmUtc3RhcnQ6MDt3aWR0aDpjYWxjKDEwMCUgLSAycHgpfS50di1zY3JlZW5lci10YWJsZV9fdGg6bGFzdC1jaGlsZDpub3QoLnR2LXNjcmVlbmVyLXRhYmxlX190aC0tYmlnKTpub3QoLnR2LXNjcmVlbmVyLXRhYmxlX190aC0tbm8tdG9vbGJhcikgLnR2LXNjcmVlbmVyLXRhYmxlX19zb3J0e2luc2V0LWlubGluZS1lbmQ6YXV0bztpbnNldC1pbmxpbmUtc3RhcnQ6MDt3aWR0aDpjYWxjKDEwMCUgLSA0M3B4KX0udHYtc2NyZWVuZXItdGFibGVfX3RoOmxhc3QtY2hpbGQ6bm90KC50di1zY3JlZW5lci10YWJsZV9fdGgtLWJpZyk6bm90KC50di1zY3JlZW5lci10YWJsZV9fdGgtLW5vLXRvb2xiYXIpIC50di1zY3JlZW5lci10YWJsZV9fZmlsdGVyLWJ1dHRvbntpbnNldC1pbmxpbmUtZW5kOjQzcHh9LnR2LXNjcmVlbmVyLXRhYmxlX19zb3J0YWJsZXtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci10YWJsZV9fc29ydGFibGU6aG92ZXIgLnR2LXNjcmVlbmVyLXRhYmxlX19maWx0ZXItYnV0dG9ue29wYWNpdHk6MX19LnR2LXNjcmVlbmVyLXRhYmxlX19maWVsZC12YWx1ZXtjb2xvcjp2YXIoLS1jb2xvci1icmFuZCk7Zm9udC13ZWlnaHQ6NDAwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3RleHQtdHJhbnNmb3JtOm5vbmU7d2hpdGUtc3BhY2U6bm93cmFwO3dpZHRoOjEwMCV9LnR2LXNjcmVlbmVyLXRhYmxlX19maWVsZC12YWx1ZS0tbmFtZXtkaXNwbGF5OmJsb2NrO2dyaWQtYXJlYTpjb2x1bW5NYXRjaGVzO21heC13aWR0aDoxMjBweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LnR2LXNjcmVlbmVyLXRhYmxlX19maWVsZC12YWx1ZS0tbmFtZSwudHYtc2NyZWVuZXItdGFibGVfX2ZpZWxkLXZhbHVlLS10b3RhbHstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjE2cHg7bGluZS1oZWlnaHQ6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQpOy0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplOjExcHg7Zm9udC1zaXplOnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZSk7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwO2xldHRlci1zcGFjaW5nOi40cHg7bGluZS1oZWlnaHQ6MTJweDt3aGl0ZS1zcGFjZTpub3dyYXB9LnR2LXNjcmVlbmVyLXRhYmxlX19maWVsZC12YWx1ZS0tdG90YWx7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KTtkaXNwbGF5OmlubGluZS1ibG9jaztncmlkLWFyZWE6Y29sdW1uVmFsdWU7dGV4dC10cmFuc2Zvcm06bm9uZTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LnR2LXNjcmVlbmVyLXRhYmxlX19zZWFyY2gtcXVlcnl7YWxpZ24tc2VsZjpjZW50ZXI7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC13ZWlnaHQ6NDAwO2dyaWQtYXJlYTpzZWFyY2hJbnB1dDttYXJnaW4taW5saW5lLWVuZDoxMnB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6MzJweDttaW4td2lkdGg6MTIwcHg7cG9zaXRpb246cmVsYXRpdmV9LnR2LXNjcmVlbmVyLXRhYmxlX19zZWFyY2gtcXVlcnk6ZGlyKHJ0bCl7bWFyZ2luLWxlZnQ6MzBweDttYXJnaW4tcmlnaHQ6NjBweH1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zY3JlZW5lci10YWJsZV9fc2VhcmNoLXF1ZXJ5e2Rpc3BsYXk6bm9uZX19LnR2LXNjcmVlbmVyLXRhYmxlX19zZWFyY2gtcXVlcnktLXdpdGhvdXQtZGVzY3JpcHRpb257bWluLXdpZHRoOjk1cHh9LnR2LXNjcmVlbmVyLXRhYmxlX19pbnB1dC1yZXNldCBzdmd7aGVpZ2h0OjEycHg7d2lkdGg6MTJweH1AbWVkaWEgKG1heC13aWR0aDoxMDE5cHgpey50di1zY3JlZW5lci10YWJsZV9faW5wdXQtcmVzZXR7aW5zZXQtaW5saW5lLWVuZDowfX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLXRhYmxlX19pbnB1dC1yZXNldDpob3ZlciBzdmcgcGF0aHtzdHJva2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9fS50di1zY3JlZW5lci10YWJsZV9fc2VhcmNoLWljb257Y29sb3I6dmFyKC0tY29sb3ItY29udHJvbC1pbnRlbnQtZGVmYXVsdCk7aW5zZXQtaW5saW5lLXN0YXJ0OjEwcHg7b3BhY2l0eToxO3RyYW5zaXRpb246YWxsIDBzIGVhc2UgMHN9LnR2LXNjcmVlbmVyLXRhYmxlX19zZWFyY2gtaW5wdXR7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1ib2R5LWJnKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWNvbG9yLWNvbnRyb2wtaW50ZW50LWRlZmF1bHQpO2JvcmRlci1yYWRpdXM6NHB4O2JveC1zaXppbmc6Ym9yZGVyLWJveDtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpO2ZvbnQtc2l6ZToxMXB4O2xldHRlci1zcGFjaW5nOi41cHg7cGFkZGluZy1ibG9jazoxMHB4IDhweDtwYWRkaW5nLWlubGluZTozNnB4IDM2cHg7d2lkdGg6MTAwJX0udHYtc2NyZWVuZXItdGFibGVfX3NlYXJjaC1pbnB1dDpmb2N1c3tib3JkZXI6MXB4IHNvbGlkIHZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKX0udHYtc2NyZWVuZXItdGFibGVfX3NpZ25hbHtkaXNwbGF5OmlubGluZS1ibG9jaztsZXR0ZXItc3BhY2luZzouNXB4O21hcmdpbi1pbmxpbmUtZW5kOjVweDttYXJnaW4taW5saW5lLXN0YXJ0OjVweDt0ZXh0LWFsaWduOnN0YXJ0O3RleHQtdHJhbnNmb3JtOm5vbmV9LnR2LXNjcmVlbmVyLXRhYmxlX19zaWduYWwtLXN0cm9uZy1idXl7Y29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApfS50di1zY3JlZW5lci0tc3RhbmRhbG9uZS1tYXJrZXQgLnR2LXNjcmVlbmVyLXRhYmxlX19zaWduYWwtLXN0cm9uZy1idXl7Y29sb3I6dmFyKC0tY29sb3ItYnV5KX0udHYtc2NyZWVuZXItdGFibGVfX3NpZ25hbC0tc3Ryb25nLWJ1eTpiZWZvcmV7YmFja2dyb3VuZDp1cmwoc3Ryb25nLWJ1eS1hcnJvdy42NzA3ZDEzOGQzMmVjMTY1YTQ1NS5zdmcpIG5vLXJlcGVhdDtiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6NTAlO2NvbnRlbnQ6IiI7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MTVweH0udHYtc2NyZWVuZXItdGFibGVfX3NpZ25hbC0tYnV5e2NvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKX0udHYtc2NyZWVuZXItLXN0YW5kYWxvbmUtbWFya2V0IC50di1zY3JlZW5lci10YWJsZV9fc2lnbmFsLS1idXl7Y29sb3I6dmFyKC0tY29sb3ItYnV5KX0udHYtc2NyZWVuZXItdGFibGVfX3NpZ25hbC0tYnV5OmJlZm9yZXtiYWNrZ3JvdW5kOnVybChidXktYXJyb3cuYWI2ZGZlNDExNTQ3OWJkMDRkZDMuc3ZnKSBuby1yZXBlYXQ7YmFja2dyb3VuZC1wb3NpdGlvbi15OjUwJTtjb250ZW50OiIiO3BhZGRpbmctaW5saW5lLXN0YXJ0OjE1cHh9LnR2LXNjcmVlbmVyLXRhYmxlX19zaWduYWwtLXNlbGx7Y29sb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKX0udHYtc2NyZWVuZXItLXN0YW5kYWxvbmUtbWFya2V0IC50di1zY3JlZW5lci10YWJsZV9fc2lnbmFsLS1zZWxse2NvbG9yOnZhcigtLWNvbG9yLXNlbGwpfS50di1zY3JlZW5lci10YWJsZV9fc2lnbmFsLS1zZWxsOmJlZm9yZXtiYWNrZ3JvdW5kOnVybChzZWxsLWFycm93LjdhYTFiNTYzODcwYWEwYTA1ZTZhLnN2Zykgbm8tcmVwZWF0O2JhY2tncm91bmQtcG9zaXRpb24teTo1MCU7Y29udGVudDoiIjtwYWRkaW5nLWlubGluZS1zdGFydDoxNXB4fS50di1zY3JlZW5lci10YWJsZV9fc2lnbmFsLS1zdHJvbmctc2VsbHtjb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApfS50di1zY3JlZW5lci0tc3RhbmRhbG9uZS1tYXJrZXQgLnR2LXNjcmVlbmVyLXRhYmxlX19zaWduYWwtLXN0cm9uZy1zZWxse2NvbG9yOnZhcigtLWNvbG9yLXNlbGwpfS50di1zY3JlZW5lci10YWJsZV9fc2lnbmFsLS1zdHJvbmctc2VsbDpiZWZvcmV7YmFja2dyb3VuZDp1cmwoc3Ryb25nLXNlbGwtYXJyb3cuYWMwYzU1NTkzZjNiMGE4NGQ0ZGEuc3ZnKSBuby1yZXBlYXQ7YmFja2dyb3VuZC1wb3NpdGlvbi15OjUwJTtjb250ZW50OiIiO3BhZGRpbmctaW5saW5lLXN0YXJ0OjE1cHh9LnR2LXNjcmVlbmVyLXRhYmxlX19zaWduYWwtLW5ldXRyYWx7Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCl9LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lLW1hcmtldCAudHYtc2NyZWVuZXItdGFibGVfX3NpZ25hbC0tbmV1dHJhbHtjb2xvcjp2YXIoLS1jb2xvci1uZXV0cmFsKX0udHYtc2NyZWVuZXItdGFibGVfX3NpZ25hbC0tbmV1dHJhbDpiZWZvcmV7YmFja2dyb3VuZDp1cmwobmV1dHJhbC1hcnJvdy45OGY2MWMzMTVkNDUzMDA1NTgxMi5zdmcpIG5vLXJlcGVhdDtiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6NTAlO2NvbnRlbnQ6IiI7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MTVweH0udHYtc2NyZWVuZXItdGFibGVfX2VtcHR5LW1lc3NhZ2V7Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCk7Zm9udC1zdHlsZTppdGFsaWM7bWFyZ2luOjEzcHg7dGV4dC1hbGlnbjpjZW50ZXJ9LnR2LXNjcmVlbmVyLXRhYmxlX19wYXR0ZXJuX2ljb257ZGlzcGxheTppbmxpbmUtYmxvY2t9LnR2LXNjcmVlbmVyLXRhYmxlX19wYXR0ZXJuX2VtcHR5e2NvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00MDApfS50di1zY3JlZW5lci10YWJsZV9fcGF0dGVybl90b29sdGlwX2NvbnRhaW5lcntmb250LXNpemU6MTNweDtwYWRkaW5nLWJsb2NrOjAgOHB4O3BhZGRpbmctaW5saW5lOjVweCA4cHg7dGV4dC1hbGlnbjpjZW50ZXI7d2lkdGg6OTBweH0udHYtc2NyZWVuZXItdGFibGVfX3BhdHRlcm5fdG9vbHRpcF9jb250YWluZXIgc3Zne2hlaWdodDo0MHB4O3BhZGRpbmctYm90dG9tOjZweDt3aWR0aDo0MHB4fS50di1zY3JlZW5lci10YWJsZV9fbG9nby1jb250YWluZXJ7ZmxleC1zaHJpbms6MDttYXJnaW4taW5saW5lLWVuZDo4cHh9LnR2LXNjcmVlbmVyLXRhYmxlX19lbXB0eS1yZXN1bHR7YWxpZ24tY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nLWJvdHRvbToxMHB4O3BhZGRpbmctdG9wOjEwcHg7d2lkdGg6MTAwJX0udHYtc2NyZWVuZXItdGFibGVfX2VtcHR5LXJlc3VsdC1saW5rLC50di1zY3JlZW5lci10YWJsZV9fZW1wdHktcmVzdWx0LWxpbms6dmlzaXRlZHtjb2xvcjp2YXIoLS1jb2xvci1saW5rLXByaW1hcnktZGVmYXVsdCk7ZmlsbDp2YXIoLS1jb2xvci1saW5rLXByaW1hcnktZGVmYXVsdCl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci10YWJsZV9fZW1wdHktcmVzdWx0LWxpbms6aG92ZXJ7Y29sb3I6dmFyKC0tY29sb3ItbGluay1wcmltYXJ5LWhvdmVyKTtmaWxsOnZhcigtLWNvbG9yLWxpbmstcHJpbWFyeS1ob3Zlcil9fS50di1zY3JlZW5lci10YWJsZV9fZW1wdHktcmVzdWx0LWxpbms6YWN0aXZle2NvbG9yOnZhcigtLWNvbG9yLWxpbmstcHJpbWFyeS1hY3RpdmUpO2ZpbGw6dmFyKC0tY29sb3ItbGluay1wcmltYXJ5LWFjdGl2ZSl9LnR2LXNjcmVlbmVyLXRhYmxlX19lbXB0eS1yZXN1bHQtbGluazpmb2N1c3tvdXRsaW5lOmF1dG87b3V0bGluZS1vZmZzZXQ6MnB4fS50di1zY3JlZW5lci10YWJsZV9fZW1wdHktcmVzdWx0LWxpbms6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOmF1dG87b3V0bGluZS1vZmZzZXQ6MnB4fS50di1zY3JlZW5lci10YWJsZV9fZW1wdHktcmVzdWx0LWxpbms6Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKXtvdXRsaW5lOm5vbmV9LnR2LXNjcmVlbmVyLXRhYmxlX19lbXB0eS1yZXN1bHQudHYtc2NyZWVuZXItdGFibGVfX2VtcHR5LXJlc3VsdC0tZml4ZWR7cG9zaXRpb246Zml4ZWR9LnR2LXNjcmVlbmVyLXRhYmxlX19lbXB0eS1yZXN1bHQudHYtc2NyZWVuZXItdGFibGVfX2VtcHR5LXJlc3VsdC0tcmVsYXRpdmV7cG9zaXRpb246cmVsYXRpdmU7dG9wOi00OHB4fS50di1zY3JlZW5lci10YWJsZV9fZW1wdHktZGVzY3JpcHRpb257Y29sb3I6dmFyKC0tXzQtZUxrVik7Zm9udC1zaXplOjE2cHg7bGluZS1oZWlnaHQ6MjRweDttYXJnaW46MCAyMHB4O3RleHQtYWxpZ246Y2VudGVyfS50di1zY3JlZW5lci10YWJsZV9fZW1wdHktY29udGVudHtkaXNwbGF5OmZsZXh9LnR2LXNjcmVlbmVyLXRhYmxlX19zeW1ib2wtY29udGFpbmVyLWRlc2NyaXB0aW9ue21pbi13aWR0aDowfS50di1zY3JlZW5lci10YWJsZV9fY2VsbC1jdXJyZW5jeS12YWx1ZXtjb2xvcjp2YXIoLS1fNS1lTGtWKTtmb250LXNpemU6MTBweDtsaW5lLWhlaWdodDoxNnB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6M3B4fVtkYXRhLXRoZW1lPWxpZ2h0XXstLV8wLXhNWGs6I2RkZTNlNjstLV8xLXhNWGs6I2ZiZmNmYzstLV8yLXhNWGs6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1fMy14TVhrOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApOy0tXzQteE1Yazp2YXIoLS1jb2xvci1jb2xkLWdyYXktMjAwKTstLV81LXhNWGs6dmFyKC0tY29sb3ItY29sZC1ncmF5LTM1MCl9W2RhdGEtdGhlbWU9ZGFya117LS1fMC14TVhrOnZhcigtLWNvbG9yLWNvbGQtZ3JheS03NTApOy0tXzEteE1Yazp2YXIoLS1jb2xvci1jb2xkLWdyYXktOTAwKTstLV8yLXhNWGs6dmFyKC0tY29sb3ItY29sZC1ncmF5LTY1MCk7LS1fMy14TVhrOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01NTApOy0tXzQteE1Yazp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLV81LXhNWGs6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCl9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9ye2JhY2tncm91bmQ6dmFyKC0tY29sb3ItcGFuZS1iZyk7Ym9yZGVyOjFweCBzb2xpZDtib3JkZXItY29sb3I6dmFyKC0tY29sb3ItYm9yZGVyKTtib3JkZXItcmFkaXVzOjJweDtib3gtc2hhZG93OjAgMnB4IDNweCAjMjUyYzMxMjk7aGVpZ2h0OjYwcHg7bWFyZ2luLXRvcDotMnB4O21pbi13aWR0aDo0MDBweDtvcGFjaXR5OjE7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOmFic29sdXRlO3otaW5kZXg6M30udHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3ItLWhpZGRlbntvcGFjaXR5OjB9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yLS1zdGFuZGFsb25le21hcmdpbi10b3A6LTFweH0udHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3ItLXdpZGV7d2lkdGg6NDM1cHh9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yLS1zbGlte21pbi13aWR0aDoyMTBweH0udHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX2ZpbHRlci1maWVsZHtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXBhbmUtYmcpO3BhZGRpbmctYmxvY2s6OHB4IDhweDtwYWRkaW5nLWlubGluZToyMHB4IDgxcHg7d2hpdGUtc3BhY2U6bm93cmFwfS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWZpZWxkLXRpdGxle2NvbG9yOnZhcigtLWNvbG9yLXVuZGVybGluZWQtdGV4dCk7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NzAwO2xldHRlci1zcGFjaW5nOi41cHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWZpZWxkLWNvbnRlbnR7bWFyZ2luLXRvcDoxMnB4O3Bvc2l0aW9uOnJlbGF0aXZlfS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWZpZWxkLWNvbnRlbnQtLWxlZnQsLnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19maWx0ZXItZmllbGQtY29udGVudC0tbWlkZGxlLC50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWZpZWxkLWNvbnRlbnQtLXJpZ2h0e2Rpc3BsYXk6aW5saW5lLWJsb2NrfS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWZpZWxkLWNvbnRlbnQtLW1pZGRsZSwudHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX2ZpbHRlci1maWVsZC1jb250ZW50LS1yaWdodHttYXJnaW4taW5saW5lLXN0YXJ0OjIwcHh9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19maWx0ZXItZmllbGQtY29udGVudC0tY29uZGl0aW9uLC50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWZpZWxkLWNvbnRlbnQtLXNlbGVjdHttYXJnaW4tdG9wOjRweH0udHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX2ZpbHRlci1maWVsZC1jb250ZW50LS1zZWxlY3R7aGVpZ2h0OjM0cHg7bGluZS1oZWlnaHQ6MjdweDttYXgtd2lkdGg6MzUwcHg7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmctaW5saW5lLWVuZDoyMHB4O3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWZpZWxkLXRleHR7YmFja2dyb3VuZC1jb2xvcjppbml0aWFsO2JvcmRlcjoxcHggc29saWQ7Ym9yZGVyLWNvbG9yOnZhcigtLV80LXhNWGspO2JvcmRlci1yYWRpdXM6MnB4O2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcmVndWxhcik7Zm9udC1zaXplOjEycHghaW1wb3J0YW50O2hlaWdodDoyNXB4O3BhZGRpbmc6MCA2cHg7d2lkdGg6MTAzcHh9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWZpZWxkLXRleHQ6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLV81LXhNWGspfX0udHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX2ZpbHRlci1maWVsZC10ZXh0OmZvY3Vze2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1icmFuZCl9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19maWx0ZXItYmV0d2Vlbi1pbnB1dHtiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Ym9yZGVyOjFweCBzb2xpZDtib3JkZXItY29sb3I6dmFyKC0tXzQteE1Yayk7Ym9yZGVyLXJhZGl1czoycHg7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1yZWd1bGFyKTtmb250LXNpemU6MTJweCFpbXBvcnRhbnQ7aGVpZ2h0OjI1cHg7cGFkZGluZzowIDZweDt3aWR0aDoxMDNweDt3aWR0aDo1MHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX2ZpbHRlci1iZXR3ZWVuLWlucHV0OmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1fNS14TVhrKX19LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19maWx0ZXItYmV0d2Vlbi1pbnB1dDpmb2N1c3tib3JkZXItY29sb3I6dmFyKC0tY29sb3ItYnJhbmQpfS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWJldHdlZW4tc2VwYXJhdG9ye21hcmdpbi1pbmxpbmUtc3RhcnQ6MjBweDtwYWRkaW5nOjAgNnB4fS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWZpZWxkLXJlc2V0e2JvcmRlci1pbmxpbmUtc3RhcnQ6MXB4IHNvbGlkO2JvcmRlci1pbmxpbmUtc3RhcnQtY29sb3I6dmFyKC0tXzAteE1Yayk7Y3Vyc29yOnBvaW50ZXI7aGVpZ2h0OjYwcHg7aW5zZXQtaW5saW5lLWVuZDowO2xpbmUtaGVpZ2h0OjY3cHg7cG9zaXRpb246YWJzb2x1dGU7dGV4dC1hbGlnbjpjZW50ZXI7dG9wOjA7d2lkdGg6NjZweH0udHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX2ZpbHRlci1maWVsZC1yZXNldCBzdmd7ZmlsbDp2YXIoLS1jb2xvci1icmFuZCl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWZpZWxkLXJlc2V0OmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzEteE1Yayl9fS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fc2VsZWN0Ym94LWNvbnRhaW5lcntoZWlnaHQ6MjdweDtsaW5lLWhlaWdodDoyN3B4O3doaXRlLXNwYWNlOm5vd3JhcH0udHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX3NlbGVjdGJveC1kcm9wZG93bi10b2dnbGV7ZGlzcGxheTppbmxpbmUtYmxvY2s7aGVpZ2h0OjE2cHg7bWFyZ2luLWJsb2NrOjZweCAwO21hcmdpbi1pbmxpbmU6NXB4IDA7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjM1cyBlYXNlO3ZlcnRpY2FsLWFsaWduOnRvcDt3aWR0aDoxNnB4fS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fc2VsZWN0Ym94LWRyb3Bkb3duLXRvZ2dsZSBzdmd7ZGlzcGxheTpibG9jazttYXJnaW4tYmxvY2s6NXB4IDA7bWFyZ2luLWlubGluZToycHggMDtzdHJva2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7c3Ryb2tlLXdpZHRoOjEuNXB4fS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fc2VsZWN0Ym94LWRyb3Bkb3duLXRvZ2dsZS0tb3Blbnt0cmFuc2Zvcm06cm90YXRlKDE4MGRlZyl9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19zZWxlY3Rib3gtZHJvcGRvd24tdG9nZ2xlLS1vcGVuOmRpcihydGwpe3RyYW5zZm9ybTpyb3RhdGUoLTE4MGRlZyl9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19zZWxlY3Rib3gtY2FwdGlvbi0tbm8tdmFsdWUsLnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19zZWxlY3Rib3gtb3B0aW9uLS1uby12YWx1ZSAudHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX3NlbGVjdGJveC1vcHRpb24td3JhcHtjb2xvcjp2YXIoLS1jb2xvci1wbGFjZWhvbGRlcikhaW1wb3J0YW50fS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fc2VsZWN0Ym94LWNhcHRpb257Y3Vyc29yOnBvaW50ZXJ9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19zZWxlY3Rib3gtY2FwdGlvbi0tdGV4dC1vdmVyZmxvd3tkaXNwbGF5OmlubGluZS1ibG9jazttYXgtd2lkdGg6MTAwJX0udHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX3NlbGVjdGJveC1jYXB0aW9uLS10ZXh0LW92ZXJmbG93IC50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fc2VsZWN0Ym94LWNhcHRpb24tbGFiZWx7Ym94LXNpemluZzpib3JkZXItYm94O2Rpc3BsYXk6aW5saW5lLWJsb2NrO21heC13aWR0aDoxMDAlO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nLWlubGluZS1lbmQ6MjNweDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fc2VsZWN0Ym94LWNhcHRpb24tLXRleHQtb3ZlcmZsb3cgLnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19zZWxlY3Rib3gtZHJvcGRvd24tdG9nZ2xle21hcmdpbi1pbmxpbmUtc3RhcnQ6LTE4cHh9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fc2VsZWN0Ym94LWNhcHRpb246aG92ZXIgLnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19zZWxlY3Rib3gtZHJvcGRvd24tdG9nZ2xlIHN2Z3tzdHJva2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9fS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fc2VhcmNoLXdyYXB7Ym9yZGVyLWJvdHRvbToxcHggc29saWQ7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWJvcmRlcik7aGVpZ2h0OjQ1cHg7cG9zaXRpb246cmVsYXRpdmV9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19zZWFyY2gtaW5wdXR7YmFja2dyb3VuZC1jb2xvcjppbml0aWFsO2JvcmRlcjpub25lO2JveC1zaXppbmc6Ym9yZGVyLWJveDtkaXNwbGF5OmJsb2NrO2hlaWdodDo0NXB4O21hcmdpbjowO3BhZGRpbmctYmxvY2s6MTBweCAwO3BhZGRpbmctaW5saW5lOjIycHggMjJweDt3aWR0aDoxMDAlfS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fc2VhcmNoLW5vLW1hdGNoZXN7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1zZWNvbmRhcnkpO2ZvbnQtc3R5bGU6aXRhbGljO3BvaW50ZXItZXZlbnRzOm5vbmV9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19maWx0ZXItZHJvcGRvd24tdG9nZ2xle2hlaWdodDoxNnB4O2luc2V0LWlubGluZS1lbmQ6NDJweDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDozMnB4O3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dDt3aWR0aDoxNnB4fS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWRyb3Bkb3duLXRvZ2dsZSBzdmd7ZGlzcGxheTpibG9jazttYXJnaW4tYmxvY2s6NXB4IDA7bWFyZ2luLWlubGluZToycHggMDtzdHJva2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCl9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19maWx0ZXItZHJvcGRvd24tdG9nZ2xlLS1vcGVue3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0udHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX2ZpbHRlci1kcm9wZG93bi10b2dnbGUtLW9wZW46ZGlyKHJ0bCl7dHJhbnNmb3JtOnJvdGF0ZSgtMTgwZGVnKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19maWx0ZXItZmllbGQtY29udGVudC0tc2VsZWN0OmhvdmVyfi50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLWRyb3Bkb3duLXRvZ2dsZSBzdmd7c3Ryb2tlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApfX0udHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX2ZpbHRlci10b2dnbGV7ZGlzcGxheTpibG9ja30udHYtc2NyZWVuZXItaW5wbGFjZS1lZGl0b3JfX3dpdGhvdXQtcmVzZXR7bWluLXdpZHRoOjMzN3B4fS50di1zY3JlZW5lci1pbnBsYWNlLWVkaXRvcl9fZmlsdGVyLXdpdGhvdXQtcmVzZXR7cGFkZGluZy1pbmxpbmUtZW5kOjE4cHh9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19kcm9wZG93bi1jaGVja2JveC1pdGVte2NvbG9yOnZhcigtLWNvbG9yLXVuZGVybGluZWQtdGV4dCl9LnR2LXNjcmVlbmVyLWlucGxhY2UtZWRpdG9yX19zZWFyY2gtaW5wdXR7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1wYW5lLWJnKTtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXJlZ3VsYXIpfVtkYXRhLXRoZW1lPWxpZ2h0XXstLV8wLXhlYlU6I2UwZTNlYjgwfVtkYXRhLXRoZW1lPWRhcmtdey0tXzAteGViVTojNDM0NjUxODB9LnR2LXNjcmVlbmVyLS1zdGFuZGFsb25lIC50di1zY3JlZW5lci1zdGlja3ktaGVhZGVyLXdyYXBwZXJ7YmFja2dyb3VuZDp2YXIoLS1jb2xvci1ib2R5LWJnKX0udHYtc2NyZWVuZXItc3RpY2t5LWhlYWRlci13cmFwcGVye2luc2V0LWlubGluZS1zdGFydDowO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3otaW5kZXg6Mn0udHYtc2NyZWVuZXItc3RpY2t5LWhlYWRlci13cmFwcGVyLS1zdGFuZGFsb25lX3N0aWNreXtiYWNrZ3JvdW5kOnZhcigtLWNvbG9yLWJvZHktYmcpO3Bvc2l0aW9uOmZpeGVkfS50di1zY3JlZW5lci1zdGlja3ktaGVhZGVyLXdyYXBwZXItLW1hcmtldHNfc3RpY2t5e2JhY2tncm91bmQ6dmFyKC0tY29sb3ItYm9keS1iZyk7ZGlzcGxheTppbmxpbmUtYmxvY2s7aW5zZXQtaW5saW5lLWVuZDp1bnNldDtpbnNldC1pbmxpbmUtc3RhcnQ6dW5zZXR9LnR2LXNjcmVlbmVyLXN0aWNreS1oZWFkZXItd3JhcHBlci0tbWFya2V0c19hYnNvbHV0ZXtiYWNrZ3JvdW5kOnZhcigtLWNvbG9yLWJvZHktYmcpO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2luc2V0LWlubGluZS1zdGFydDowO3Bvc2l0aW9uOmFic29sdXRlfS50di1zY3JlZW5lci1zdGlja3ktaGVhZGVyLXdyYXBwZXJfX3JpZ2h0LXN1YnN0cmF0ZXtkaXNwbGF5Om5vbmU7aGVpZ2h0OjQ4cHg7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTAwJTt6LWluZGV4OjF9LnR2LXNjcmVlbmVyLXN0aWNreS1oZWFkZXItd3JhcHBlcl9fcmlnaHQtc3Vic3RyYXRlLS1zdGFuZGFsb25lX3N0aWNreXtwb3NpdGlvbjpmaXhlZH0udHYtc2NyZWVuZXItc3RpY2t5LWhlYWRlci13cmFwcGVyX19maWVsZHMtYnV0dG9uLXdyYXB7Ym9yZGVyLWlubGluZS1zdGFydDoxcHggc29saWQ7Ym9yZGVyLWlubGluZS1zdGFydC1jb2xvcjp2YXIoLS1jb2xvci1kaXZpZGVyKTtib3JkZXItdG9wOjFweCBzb2xpZDtib3JkZXItdG9wLWNvbG9yOnZhcigtLV8wLXhlYlUpO2luc2V0LWlubGluZS1lbmQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MH0udHYtc2NyZWVuZXItc3RpY2t5LWhlYWRlci13cmFwcGVyX19maWVsZHMtYnV0dG9ue2FsaWduLWl0ZW1zOmNlbnRlcjtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmZsZXg7aGVpZ2h0OjQ4cHg7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDo0MXB4fS50di1zY3JlZW5lci1zdGlja3ktaGVhZGVyLXdyYXBwZXJfX2ZpZWxkcy1idXR0b24gc3Zne3Bvc2l0aW9uOnJlbGF0aXZlO2ZpbGw6dmFyKC0tY29sb3ItdGV4dC1zZWNvbmRhcnkpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2NyZWVuZXItc3RpY2t5LWhlYWRlci13cmFwcGVyX19maWVsZHMtYnV0dG9uOmhvdmVye2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3Itc2NyZWVuZXItaGVhZGVyLWJnLWhvdmVyKX19LnR2LXNjcmVlbmVyLXN0aWNreS1oZWFkZXItd3JhcHBlcl9fZmllbGRzLWJ1dHRvbi0tYWN0aXZlIHN2Z3tmaWxsOnZhcigtLWNvbG9yLWJyYW5kKX0udHYtc2NyZWVuZXItbWFya2V0LXNlbGVjdHthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTpmbGV4O3BhZGRpbmc6MCAxNXB4fS50di1zY3JlZW5lci1tYXJrZXQtc2VsZWN0LnR2LWRyb3Bkb3due2Rpc3BsYXk6ZmxleH0udHYtc2NyZWVuZXItbWFya2V0LXNlbGVjdC0tZGlhbG9ne3BhZGRpbmc6N3B4IDAgMDt0b3A6MTBweH0udHYtc2NyZWVuZXItbWFya2V0LXNlbGVjdF9fYnV0dG9uIHN2Z3t2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LnR2LXNjcmVlbmVyLW1hcmtldC1zZWxlY3RfX2J1dHRvbi10aXRsZXttYXJnaW4taW5saW5lLXN0YXJ0OjNweDtwb3NpdGlvbjpyZWxhdGl2ZTt0b3A6MXB4O3ZlcnRpY2FsLWFsaWduOm1pZGRsZX0udHYtc2NyZWVuZXItbWFya2V0LXNlbGVjdF9faXRlbXtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXJlZ3VsYXIpfS50di1zY3JlZW5lci1tYXJrZXQtc2VsZWN0X19pdGVtIHN2Z3t2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LnR2LXNjcmVlbmVyLW1hcmtldC1zZWxlY3RfX2l0ZW0tdGl0bGV7bWFyZ2luLWlubGluZS1zdGFydDo2cHg7cG9zaXRpb246cmVsYXRpdmU7dG9wOjFweDt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LnR2LXNjcmVlbmVyLW1hcmtldC1zZWxlY3QtLWhpZGRlbntoZWlnaHQ6MDtwYWRkaW5nOjAgNXB4O3Zpc2liaWxpdHk6aGlkZGVuO3dpZHRoOjB9LnR2LWNhcmV0e2JvcmRlci1ibG9jay1jb2xvcjpjdXJyZW50Q29sb3IgIzAwMDA7Ym9yZGVyLWJsb2NrLXdpZHRoOjRweCAwO2JvcmRlci1pbmxpbmUtY29sb3I6IzAwMDAgIzAwMDA7Ym9yZGVyLWlubGluZS13aWR0aDo0cHggNHB4O2JvcmRlci1zdHlsZTpzb2xpZDtkaXNwbGF5OmlubGluZS1ibG9jaztoZWlnaHQ6MDttYXJnaW4taW5saW5lLXN0YXJ0OjVweDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMzVzIGVhc2U7dmVydGljYWwtYWxpZ246bWlkZGxlO3dpZHRoOjB9LmFjdGl2ZSAudHYtY2FyZXQsLmktZHJvcHBlZCAudHYtY2FyZXQ6bm90KC50di1jYXJldC0tc3RyaWN0KSwudHYtY2FyZXQtLXN0cmljdC5pLWRyb3BwZWR7dHJhbnNmb3JtOnJvdGF0ZSgtMTgwZGVnKTt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXM7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtfS5hY3RpdmUgLnR2LWNhcmV0OmRpcihydGwpLC5pLWRyb3BwZWQgLnR2LWNhcmV0Om5vdCgudHYtY2FyZXQtLXN0cmljdCk6ZGlyKHJ0bCksLnR2LWNhcmV0LS1zdHJpY3QuaS1kcm9wcGVkOmRpcihydGwpe3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0udHYtY2FyZXQtLXNtYWxse2JvcmRlci1pbmxpbmUtZW5kLXdpZHRoOjNweDtib3JkZXItaW5saW5lLXN0YXJ0LXdpZHRoOjNweDtib3JkZXItdG9wLXdpZHRoOjNweDttYXJnaW4taW5saW5lLWVuZDotMXB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6M3B4fS50di1jYXJldC0tY29sb3JlZHt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMzVzIGVhc2UsY29sb3IgLjM1cyBlYXNlfS50di1jYXJldC0tbm8tbWFyZ2lue21hcmdpbi1pbmxpbmUtc3RhcnQ6MH1bZGF0YS10aGVtZT1saWdodF17LS1fMC1ZWjhJOnZhcigtLWNvbG9yLWNvbGQtZ3JheS04MDApOy0tXzEtWVo4STojZTVlNWU4Oy0tXzItWVo4STp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1fMy1ZWjhJOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLVlaOEk6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1fMS1ZWjhJOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApOy0tXzItWVo4STp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApOy0tXzMtWVo4STp2YXIoLS1jb2xvci10di1ibHVlLWE4MDApfS50di1kcm9wZG93bntwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9LnR2LWRyb3Bkb3duLS1pbmxpbmV7ZGlzcGxheTppbmxpbmUtYmxvY2t9LnR2LWRyb3Bkb3duLmktaW5hY3RpdmUgLnR2LWRyb3Bkb3duX19pdGVtLC50di1kcm9wZG93bl9fZ3JvdXAuaS1pbmFjdGl2ZSAudHYtZHJvcGRvd25fX2l0ZW17YmFja2dyb3VuZC1jb2xvcjppbml0aWFsO2NvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApO2N1cnNvcjpkZWZhdWx0fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtZHJvcGRvd24uaS1pbmFjdGl2ZSAudHYtZHJvcGRvd25fX2l0ZW06aG92ZXIsLnR2LWRyb3Bkb3duX19ncm91cC5pLWluYWN0aXZlIC50di1kcm9wZG93bl9faXRlbTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTMwMCk7Y3Vyc29yOmRlZmF1bHR9fS50di1kcm9wZG93bl9fZGVzY3tjb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToxMXB4O21hcmdpbi10b3A6MnB4O3RyYW5zaXRpb246Y29sb3IgLjM1cyBlYXNlfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtZHJvcGRvd25fX2l0ZW06aG92ZXIgLnR2LWRyb3Bkb3duX19kZXNje2NvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS01MDApO3RyYW5zaXRpb24tZHVyYXRpb246NjBtc319LnR2LWRyb3Bkb3duLmktaW5hY3RpdmUgLnR2LWRyb3Bkb3duX19kZXNjLC50di1kcm9wZG93bl9fZ3JvdXAuaS1pbmFjdGl2ZSAudHYtZHJvcGRvd25fX2Rlc2N7Y29sb3I6dmFyKC0tY29sb3ItY29sZC1ncmF5LTI1MCk7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfS50di1kcm9wZG93bl9fYnV0dG9ue2N1cnNvcjpwb2ludGVyfS50di1kcm9wZG93bl9fZ3JvdXAtLWRpdmlkZWR7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tY29sb3ItY29sZC1ncmF5LTEwMCl9LnR2LWRyb3Bkb3duX19ncm91cC0tZGl2aWRlZDpsYXN0LWNoaWxke2JvcmRlci1ib3R0b206bm9uZX0udHYtZHJvcGRvd25fX2JvZHl7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1iYWNrZ3JvdW5kLHZhcigtLWNvbG9yLXBvcHVwLWJhY2tncm91bmQpKTtib3JkZXItcmFkaXVzOjZweDtib3gtc2hhZG93OjAgMnB4IDRweCB2YXIoLS1jb2xvci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5KTtmb250LXNpemU6MTNweDtpbnNldC1pbmxpbmUtc3RhcnQ6MDtsaW5lLWhlaWdodDoxO3BhZGRpbmc6MTVweCAwO3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMTVweDt6LWluZGV4Ojk5fS50di1kcm9wZG93bl9fYm9keS0tdW5kZXItdHJpZ2dlcnt0b3A6MTAwJTt0b3A6Y2FsYygxMDAlIC0gMXB4KX0udHYtZHJvcGRvd25fX2JvZHktLW92ZXItdHJpZ2dlcnt0b3A6MH0udHYtZHJvcGRvd25fX2JvZHktLXBvc2l0aW9uX3JpZ2h0e2luc2V0LWlubGluZS1lbmQ6MDtpbnNldC1pbmxpbmUtc3RhcnQ6YXV0b30udHYtZHJvcGRvd25fX2JvZHktLXBvc2l0aW9uX291dGVyX3JpZ2h0e2luc2V0LWlubGluZS1zdGFydDoxMDAlfS50di1kcm9wZG93bl9fdGl0bGV7Y29sb3I6I2JkYmVjMDtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo3MDA7bWFyZ2luLXRvcDoxMHB4O3BhZGRpbmc6MTBweCAxNXB4O3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0udHYtZHJvcGRvd25fX3RpdGxlOmZpcnN0LWNoaWxke21hcmdpbi10b3A6MH0udHYtZHJvcGRvd25fX2l0ZW17Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpibG9jaztvdmVyZmxvdzpoaWRkZW47cGFkZGluZzoxMHB4IDE1cHg7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpzdGFydDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3RyYW5zaXRpb246Y29sb3IgLjM1cyBlYXNlLGJhY2tncm91bmQtY29sb3IgLjM1cyBlYXNlO3doaXRlLXNwYWNlOm5vd3JhcH0udHYtZHJvcGRvd25fX2l0ZW0sLnR2LWRyb3Bkb3duX19pdGVtOnZpc2l0ZWR7Y29sb3I6dmFyKC0tXzAtWVo4SSl9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1kcm9wZG93bl9faXRlbTpob3Zlcjpub3QoLmktYWN0aXZlKXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXR2LWRyb3Bkb3duLWl0ZW0taG92ZXItYmcpO2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcmVndWxhcik7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfX0udHYtZHJvcGRvd25fX2l0ZW06YWN0aXZle2JhY2tncm91bmQtY29sb3I6dmFyKC0tXzMtWVo4SSl9LnR2LWRyb3Bkb3duX19pdGVtLmktYWN0aXZlLC50di1kcm9wZG93bl9faXRlbTphY3RpdmV7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1yZWd1bGFyKX0udHYtZHJvcGRvd25fX2l0ZW0uaS1hY3RpdmUsLnR2LWRyb3Bkb3duX19pdGVtLmktYWN0aXZlOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV8zLVlaOEkpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtZHJvcGRvd25fX2l0ZW0uaS1hY3RpdmU6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fMy1ZWjhJKX19LnR2LWRyb3Bkb3duX19pdGVtLmktZGlzYWJsZWQsLnR2LWRyb3Bkb3duX19pdGVtLmktZGlzYWJsZWQ6YWN0aXZle2JhY2tncm91bmQtY29sb3I6aW5pdGlhbDtjb2xvcjp2YXIoLS1fMS1ZWjhJKTtjdXJzb3I6ZGVmYXVsdH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWRyb3Bkb3duX19pdGVtLmktZGlzYWJsZWQ6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjppbml0aWFsO2NvbG9yOnZhcigtLV8xLVlaOEkpO2N1cnNvcjpkZWZhdWx0fX0udHYtZHJvcGRvd25fX2l0ZW0tLXN1Yml0ZW17cGFkZGluZy1ibG9jazoxMHB4IDEwcHg7cGFkZGluZy1pbmxpbmU6MzBweCAxNXB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtZHJvcGRvd25fX2l0ZW0tLW5vdC1pbnRlcmFjdGl2ZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWx9fS50di1kcm9wZG93bl9faXRlbS0tbm90LWludGVyYWN0aXZlLmktYWN0aXZlLC50di1kcm9wZG93bl9faXRlbS0tbm90LWludGVyYWN0aXZlOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWx9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1kcm9wZG93bl9faXRlbS0tbm90LWludGVyYWN0aXZlLmktYWN0aXZlOmhvdmVye2JhY2tncm91bmQtY29sb3I6aW5pdGlhbH19LnR2LWRyb3Bkb3duX19pdGVtLS1ub3QtaW50ZXJhY3RpdmUuaS1hY3RpdmU6YWN0aXZle2JhY2tncm91bmQtY29sb3I6aW5pdGlhbH0udHYtZHJvcGRvd25fX2l0ZW0tdGV4dHt2ZXJ0aWNhbC1hbGlnbjptaWRkbGV9W2RhdGEtdGhlbWU9bGlnaHRdey0tXzYtYXUxVzp2YXIoLS1jb2xvci1jb2xkLWdyYXktMTUwKX1bZGF0YS10aGVtZT1kYXJrXXstLV82LWF1MVc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTc1MCl9W2RhdGEtdGhlbWU9bGlnaHRdey0tXzAtYXUxVzojNTM1MzUzOy0tXzEtYXUxVzp2YXIoLS1jb2xvci1jb2xkLWdyYXktODAwKTstLV8yLWF1MVc6I2U1ZTVlODstLV8zLWF1MVc6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApOy0tXzQtYXUxVzp2YXIoLS1jb2xvci10di1ibHVlLTEwMCk7LS1fNS1hdTFXOnZhcigtLWNvbG9yLXR2LWJsdWUtMTAwKX1bZGF0YS10aGVtZT1kYXJrXXstLV8wLWF1MVc6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1fMS1hdTFXOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tXzItYXUxVzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNDUwKTstLV8zLWF1MVc6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLV80LWF1MVc6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKTstLV81LWF1MVc6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKX0udHYtY29udHJvbC1zZWxlY3RfX3dyYXB7ZGlzcGxheTpibG9jazttaW4td2lkdGg6NDBweDtwb3NpdGlvbjpyZWxhdGl2ZTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZX0udHYtY29udHJvbC1zZWxlY3RfX3dyYXAtLXJlYWRvbmx5e2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTtjb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTtjdXJzb3I6dGV4dDstd2Via2l0LXVzZXItc2VsZWN0OnRleHQ7dXNlci1zZWxlY3Q6dGV4dH0udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2wsc2VsZWN0LnR2LWNvbnRyb2wtc2VsZWN0e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYm9keS1iZyk7Ym9yZGVyLXJhZGl1czoycHg7Ym94LXNpemluZzpib3JkZXItYm94O2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcmVndWxhcik7ZGlzcGxheTpibG9jaztmb250LXNpemU6MTNweDtwYWRkaW5nOjAgMTJweDtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudDstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmU7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1jb2xvci1iZy1wcmltYXJ5KTtib3JkZXI6MXB4IHNvbGlkO2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1ib3JkZXIpO2NvbG9yOnZhcigtLV8wLWF1MVcpO2N1cnNvcjpwb2ludGVyO2hlaWdodDozNHB4O2xpbmUtaGVpZ2h0OjM0cHg7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjM1cyBlYXNlLGJhY2tncm91bmQtY29sb3IgLjM1cyBlYXNlO3RyYW5zaXRpb246Y29sb3IgLjM1cyBlYXNlO3doaXRlLXNwYWNlOm5vd3JhcH0udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2w6OnBsYWNlaG9sZGVyLHNlbGVjdC50di1jb250cm9sLXNlbGVjdDo6cGxhY2Vob2xkZXJ7Y29sb3I6dmFyKC0tY29sb3ItcGxhY2Vob2xkZXIpO29wYWNpdHk6MX0udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2w6LXdlYmtpdC1hdXRvZmlsbCxzZWxlY3QudHYtY29udHJvbC1zZWxlY3Q6LXdlYmtpdC1hdXRvZmlsbHstd2Via2l0LXRleHQtZmlsbC1jb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKSFpbXBvcnRhbnQ7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAxMDAwcHggI2ZmZiFpbXBvcnRhbnR9LnR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9sLS1zaXplX3hzbWFsbCxzZWxlY3QudHYtY29udHJvbC1zZWxlY3QtLXNpemVfeHNtYWxse2hlaWdodDoxOXB4fS50di1jb250cm9sLXNlbGVjdF9fY29udHJvbC0tc2l6ZV9zbWFsbCxzZWxlY3QudHYtY29udHJvbC1zZWxlY3QtLXNpemVfc21hbGx7aGVpZ2h0OjI3cHh9LnR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9sLS1zaXplX2xhcmdlLHNlbGVjdC50di1jb250cm9sLXNlbGVjdC0tc2l6ZV9sYXJnZXtmb250LXNpemU6MTZweDtoZWlnaHQ6NDhweH0udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2wtLWNvbm5lY3Qsc2VsZWN0LnR2LWNvbnRyb2wtc2VsZWN0LS1jb25uZWN0e2JvcmRlci1pbmxpbmUtZW5kOjA7Ym9yZGVyLWlubGluZS1zdGFydDowO2JvcmRlci1yYWRpdXM6MH0udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2wtLWNvbm5lY3RfbGVmdCxzZWxlY3QudHYtY29udHJvbC1zZWxlY3QtLWNvbm5lY3RfbGVmdHtib3JkZXItZW5kLXN0YXJ0LXJhZGl1czowO2JvcmRlci1pbmxpbmUtc3RhcnQ6bm9uZTtib3JkZXItc3RhcnQtc3RhcnQtcmFkaXVzOjB9LnR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9sLS1jb25uZWN0X3JpZ2h0LHNlbGVjdC50di1jb250cm9sLXNlbGVjdC0tY29ubmVjdF9yaWdodHtib3JkZXItZW5kLWVuZC1yYWRpdXM6MDtib3JkZXItaW5saW5lLWVuZDpub25lO2JvcmRlci1zdGFydC1lbmQtcmFkaXVzOjB9LnR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9sLS1jb25uZWN0X3JpZ2h0I2lkX3VzZXJuYW1lOmRpcihydGwpLHNlbGVjdC50di1jb250cm9sLXNlbGVjdC0tY29ubmVjdF9yaWdodCNpZF91c2VybmFtZTpkaXIocnRsKXtkaXJlY3Rpb246bHRyO3RleHQtYWxpZ246cmlnaHR9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1jb250cm9sLXNlbGVjdF9fY29udHJvbDpob3ZlcixzZWxlY3QudHYtY29udHJvbC1zZWxlY3Q6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWJvcmRlci1ob3Zlcik7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfX0udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2w6Zm9jdXMsc2VsZWN0LnR2LWNvbnRyb2wtc2VsZWN0OmZvY3Vze2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci10di1ibHVlLTUwMCkhaW1wb3J0YW50O3RyYW5zaXRpb24tZHVyYXRpb246NjBtc30udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2xbcmVhZG9ubHldLHNlbGVjdC50di1jb250cm9sLXNlbGVjdFtyZWFkb25seV17Ym9yZGVyLWNvbG9yOnZhcigtLV82LWF1MVcpO2NvbG9yOnZhcigtLWNvbG9yLWNvbGQtZ3JheS00NTApfS50di1jb250cm9sLXNlbGVjdF9fY29udHJvbFtyZWFkb25seV06Zm9jdXMsc2VsZWN0LnR2LWNvbnRyb2wtc2VsZWN0W3JlYWRvbmx5XTpmb2N1c3tib3JkZXItY29sb3I6dmFyKC0tY29sb3ItZGlzYWJsZWQtYm9yZGVyLWFuZC1jb2xvcikhaW1wb3J0YW50fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2xbcmVhZG9ubHldOmhvdmVyLHNlbGVjdC50di1jb250cm9sLXNlbGVjdFtyZWFkb25seV06aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWRpc2FibGVkLWJvcmRlci1hbmQtY29sb3IpIWltcG9ydGFudH19LnR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9sLmktZGlzYWJsZWQsLnR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9sW2Rpc2FibGVkXSxzZWxlY3QudHYtY29udHJvbC1zZWxlY3QuaS1kaXNhYmxlZCxzZWxlY3QudHYtY29udHJvbC1zZWxlY3RbZGlzYWJsZWRde2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1kaXNhYmxlZC1ib3JkZXItYW5kLWNvbG9yKSFpbXBvcnRhbnQ7Y29sb3I6dmFyKC0tY29sb3ItZGlzYWJsZWQtYm9yZGVyLWFuZC1jb2xvcikhaW1wb3J0YW50fS50di1jb250cm9sLXNlbGVjdF9fY29udHJvbC5pLWRpc2FibGVkOjpwbGFjZWhvbGRlciwudHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2xbZGlzYWJsZWRdOjpwbGFjZWhvbGRlcixzZWxlY3QudHYtY29udHJvbC1zZWxlY3QuaS1kaXNhYmxlZDo6cGxhY2Vob2xkZXIsc2VsZWN0LnR2LWNvbnRyb2wtc2VsZWN0W2Rpc2FibGVkXTo6cGxhY2Vob2xkZXJ7Y29sb3I6dmFyKC0tY29sb3ItZGlzYWJsZWQtYm9yZGVyLWFuZC1jb2xvcikhaW1wb3J0YW50fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2wuaS1kaXNhYmxlZDpob3ZlciwudHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2xbZGlzYWJsZWRdOmhvdmVyLHNlbGVjdC50di1jb250cm9sLXNlbGVjdC5pLWRpc2FibGVkOmhvdmVyLHNlbGVjdC50di1jb250cm9sLXNlbGVjdFtkaXNhYmxlZF06aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWRpc2FibGVkLWJvcmRlci1hbmQtY29sb3IpIWltcG9ydGFudH19LnR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9sLmktZXJyb3Isc2VsZWN0LnR2LWNvbnRyb2wtc2VsZWN0LmktZXJyb3J7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLXJpcGUtcmVkLTQwMCkhaW1wb3J0YW50fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2wuaS1lcnJvcjpob3ZlcixzZWxlY3QudHYtY29udHJvbC1zZWxlY3QuaS1lcnJvcjpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNDAwKSFpbXBvcnRhbnR9fS50di1jb250cm9sLXNlbGVjdF9fY29udHJvbC5pLWVycm9yOmZvY3VzLHNlbGVjdC50di1jb250cm9sLXNlbGVjdC5pLWVycm9yOmZvY3Vze2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC01MDApIWltcG9ydGFudH0udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2wuaS1zdWNjZXNzLHNlbGVjdC50di1jb250cm9sLXNlbGVjdC5pLXN1Y2Nlc3N7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLXN1Y2Nlc3MpIWltcG9ydGFudH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9sLmktc3VjY2Vzczpob3ZlcixzZWxlY3QudHYtY29udHJvbC1zZWxlY3QuaS1zdWNjZXNzOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1zdWNjZXNzLWhvdmVyKSFpbXBvcnRhbnR9fS50di1jb250cm9sLXNlbGVjdF9fY29udHJvbC5pLXN1Y2Nlc3M6YWN0aXZlLC50di1jb250cm9sLXNlbGVjdF9fY29udHJvbC5pLXN1Y2Nlc3M6Zm9jdXMsc2VsZWN0LnR2LWNvbnRyb2wtc2VsZWN0Lmktc3VjY2VzczphY3RpdmUsc2VsZWN0LnR2LWNvbnRyb2wtc2VsZWN0Lmktc3VjY2Vzczpmb2N1c3tib3JkZXItY29sb3I6dmFyKC0tY29sb3Itc3VjY2Vzcy1hY3RpdmUpIWltcG9ydGFudH0udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2wtLXBob25lLHNlbGVjdC50di1jb250cm9sLXNlbGVjdC0tcGhvbmV7ZGlyZWN0aW9uOmx0cjt0ZXh0LWFsaWduOnN0YXJ0fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2w6aG92ZXIsc2VsZWN0LnR2LWNvbnRyb2wtc2VsZWN0OmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1ib3JkZXItaG92ZXIpfX0udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2wuaS1kaXNhYmxlZCwudHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2xbZGlzYWJsZWRdLHNlbGVjdC50di1jb250cm9sLXNlbGVjdC5pLWRpc2FibGVkLHNlbGVjdC50di1jb250cm9sLXNlbGVjdFtkaXNhYmxlZF17Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWRpc2FibGVkLWJvcmRlci1hbmQtY29sb3IpO2N1cnNvcjpkZWZhdWx0fS5pLWVycm9yIC50di1jb250cm9sLXNlbGVjdF9fY29udHJvbCwuaS1lcnJvciBzZWxlY3QudHYtY29udHJvbC1zZWxlY3R7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLXJpcGUtcmVkLTQwMCkhaW1wb3J0YW50fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsuaS1lcnJvciAudHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2w6aG92ZXIsLmktZXJyb3Igc2VsZWN0LnR2LWNvbnRyb2wtc2VsZWN0OmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1yaXBlLXJlZC00MDApIWltcG9ydGFudH19LmktZXJyb3IgLnR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9sOmZvY3VzLC5pLWVycm9yIHNlbGVjdC50di1jb250cm9sLXNlbGVjdDpmb2N1c3tib3JkZXItY29sb3I6dmFyKC0tY29sb3ItcmlwZS1yZWQtNTAwKSFpbXBvcnRhbnR9LnR2LWNvbnRyb2wtc2VsZWN0LS1zaXplX3hzbWFsbCAudHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2x7aGVpZ2h0OjE5cHg7bGluZS1oZWlnaHQ6MTlweH0udHYtY29udHJvbC1zZWxlY3QtLXNpemVfc21hbGwgLnR2LWNvbnRyb2wtc2VsZWN0X19jb250cm9se2hlaWdodDoyN3B4O2xpbmUtaGVpZ2h0OjI3cHh9LnR2LWNvbnRyb2wtc2VsZWN0LS1zaXplX2xhcmdlIC50di1jb250cm9sLXNlbGVjdF9fY29udHJvbHtoZWlnaHQ6NDhweDtsaW5lLWhlaWdodDo0OHB4fS50di1jb250cm9sLXNlbGVjdF9fY29udHJvbC1pbm5lcntkaXNwbGF5OmJsb2NrO21hcmdpbi1pbmxpbmUtZW5kOjEycHg7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS50di1jb250cm9sLXNlbGVjdF9fY29udHJvbC1pbm5lci0tb3B0aW9uLWRpc2FibGVke2NvbG9yOnZhcigtLWNvbG9yLXBsYWNlaG9sZGVyKX0udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2wtaW5uZXItLXJlYWRvbmx5e2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTtjb2xvcjp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTtjdXJzb3I6dGV4dDstd2Via2l0LXVzZXItc2VsZWN0OnRleHQ7dXNlci1zZWxlY3Q6dGV4dH0udHYtY29udHJvbC1zZWxlY3RfX2NvbnRyb2wtaW5uZXI6YWZ0ZXJ7Y29udGVudDoiXDIwMEUifXNlbGVjdC50di1jb250cm9sLXNlbGVjdC5pLWluaXRlZHtkaXNwbGF5Om5vbmV9LnR2LWNvbnRyb2wtc2VsZWN0X19jYXJldHtib3R0b206MDtjdXJzb3I6cG9pbnRlcjtpbnNldC1pbmxpbmUtZW5kOjA7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7d2lkdGg6NDBweH0udHYtY29udHJvbC1zZWxlY3RfX2NhcmV0OmFmdGVye2JvcmRlci1pbmxpbmUtZW5kOjRweCBzb2xpZCAjMDAwMDtib3JkZXItaW5saW5lLXN0YXJ0OjRweCBzb2xpZCAjMDAwMDtib3JkZXItdG9wOjRweCBzb2xpZDtib3JkZXItdG9wLWNvbG9yOnZhcigtLWNvbG9yLWVtcHR5LWNvbnRhaW5lci1tZXNzYWdlKTtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7aW5zZXQtaW5saW5lLWVuZDoxNXB4O2luc2V0LWlubGluZS1zdGFydDphdXRvO21hcmdpbi10b3A6LTJweDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zNXMgZWFzZSxib3JkZXItY29sb3IgLjM1cyBlYXNlfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtY29udHJvbC1zZWxlY3RfX3dyYXA6aG92ZXIgLnR2LWNvbnRyb2wtc2VsZWN0X19jYXJldDphZnRlcntib3JkZXItY29sb3I6dmFyKC0tY29sb3ItdGV4dC1yZWd1bGFyKSAjMDAwMCAjMDAwMDt0cmFuc2l0aW9uLWR1cmF0aW9uOjYwbXN9fS50di1jb250cm9sLXNlbGVjdF9fd3JhcC5pLW9wZW5lZCAudHYtY29udHJvbC1zZWxlY3RfX2NhcmV0OmFmdGVye3RyYW5zZm9ybTpyb3RhdGUoLTE4MGRlZyl9LnR2LWNvbnRyb2wtc2VsZWN0X193cmFwLmktb3BlbmVkIC50di1jb250cm9sLXNlbGVjdF9fY2FyZXQ6YWZ0ZXI6ZGlyKHJ0bCl7dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpfUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtY29udHJvbC1zZWxlY3RfX3dyYXAuaS1vcGVuZWQ6aG92ZXIgLnR2LWNvbnRyb2wtc2VsZWN0X19jYXJldDphZnRlcntib3JkZXItY29sb3I6dmFyKC0tY29sb3ItZW1wdHktY29udGFpbmVyLW1lc3NhZ2UpICMwMDAwICMwMDAwfS50di1jb250cm9sLXNlbGVjdF9fd3JhcC5pLW9wZW5lZCAudHYtY29udHJvbC1zZWxlY3RfX2NhcmV0OmhvdmVyOmFmdGVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci10ZXh0LXJlZ3VsYXIpICMwMDAwICMwMDAwO3RyYW5zaXRpb24tZHVyYXRpb246NjBtc319LnR2LWNvbnRyb2wtc2VsZWN0X193cmFwLmktY2xvc2luZyAudHYtY29udHJvbC1zZWxlY3RfX2NhcmV0e3otaW5kZXg6OTh9LnR2LWNvbnRyb2wtc2VsZWN0X193cmFwLmktY2xvc2luZyAudHYtY29udHJvbC1zZWxlY3RfX2NhcmV0OmFmdGVye3RyYW5zZm9ybTpyb3RhdGUoMCl9LnR2LWNvbnRyb2wtc2VsZWN0X193cmFwLmktZGlzYWJsZWQgLnR2LWNvbnRyb2wtc2VsZWN0X19jYXJldHtjdXJzb3I6ZGVmYXVsdH0udHYtY29udHJvbC1zZWxlY3RfX3dyYXAuaS1kaXNhYmxlZCAudHYtY29udHJvbC1zZWxlY3RfX2NhcmV0OmFmdGVye2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1kaXNhYmxlZC1ib3JkZXItYW5kLWNvbG9yKSAjMDAwMCAjMDAwMH1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWNvbnRyb2wtc2VsZWN0X193cmFwLmktZGlzYWJsZWQ6aG92ZXIgLnR2LWNvbnRyb2wtc2VsZWN0X19jYXJldDphZnRlcntib3JkZXItY29sb3I6dmFyKC0tY29sb3ItZGlzYWJsZWQtYm9yZGVyLWFuZC1jb2xvcikgIzAwMDAgIzAwMDB9fS50di1jb250cm9sLXNlbGVjdF9fZHJvcGRvd257YmFja2dyb3VuZC1jb2xvcjp2YXIoLS10di1jb2xvci1wb3B1cC1iYWNrZ3JvdW5kLHZhcigtLWNvbG9yLXBvcHVwLWJhY2tncm91bmQpKTtib3JkZXItcmFkaXVzOjZweDtib3gtc2hhZG93OjAgMnB4IDRweCB2YXIoLS1jb2xvci1zaGFkb3ctcHJpbWFyeS1uZXV0cmFsLWV4dHJhLWhlYXZ5KTtmb250LXNpemU6MTNweDtpbnNldC1pbmxpbmUtc3RhcnQ6MDtsaW5lLWhlaWdodDoxO3BhZGRpbmc6MTVweCAwO3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMTVweDt6LWluZGV4Ojk5fS50di1jb250cm9sLXNlbGVjdF9fZHJvcGRvd24tLXVuZGVyLXRyaWdnZXJ7dG9wOjEwMCU7dG9wOmNhbGMoMTAwJSAtIDFweCl9LnR2LWNvbnRyb2wtc2VsZWN0X19kcm9wZG93bi0tb3Zlci10cmlnZ2Vye3RvcDowfS50di1jb250cm9sLXNlbGVjdF9fZHJvcGRvd24tLXBvc2l0aW9uX3JpZ2h0e2luc2V0LWlubGluZS1lbmQ6MDtpbnNldC1pbmxpbmUtc3RhcnQ6YXV0b30udHYtY29udHJvbC1zZWxlY3RfX2Ryb3Bkb3duLS1wb3NpdGlvbl9vdXRlcl9yaWdodHtpbnNldC1pbmxpbmUtc3RhcnQ6MTAwJX0udHYtY29udHJvbC1zZWxlY3RfX2Ryb3Bkb3duLnR2LWNvbnRyb2wtc2VsZWN0X19kcm9wZG93bntjdXJzb3I6ZGVmYXVsdDtpbnNldC1pbmxpbmUtZW5kOi03cHg7aW5zZXQtaW5saW5lLXN0YXJ0Oi03cHg7dG9wOi0xNHB4fS50di1jb250cm9sLXNlbGVjdF9fc2Nyb2xse2hlaWdodDoxMDAlfS50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXB7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpibG9jaztvdmVyZmxvdzpoaWRkZW47cGFkZGluZzoxMHB4IDE1cHg7cG9zaXRpb246cmVsYXRpdmU7dGV4dC1hbGlnbjpzdGFydDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3RyYW5zaXRpb246Y29sb3IgLjM1cyBlYXNlLGJhY2tncm91bmQtY29sb3IgLjM1cyBlYXNlO3doaXRlLXNwYWNlOm5vd3JhcH0udHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwLC50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXA6dmlzaXRlZHtjb2xvcjp2YXIoLS1fMS1hdTFXKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcDpob3Zlcjpub3QoLmktYWN0aXZlKXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLWNvbG9yLXR2LWRyb3Bkb3duLWl0ZW0taG92ZXItYmcpO2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcmVndWxhcik7dHJhbnNpdGlvbi1kdXJhdGlvbjo2MG1zfX0udHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV81LWF1MVcpO2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcmVndWxhcil9LnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcC5pLWFjdGl2ZXtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXJlZ3VsYXIpfS50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAuaS1hY3RpdmUsLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcC5pLWFjdGl2ZTphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fNS1hdTFXKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcC5pLWFjdGl2ZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV81LWF1MVcpfX0udHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwLmktZGlzYWJsZWQsLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcC5pLWRpc2FibGVkOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Y29sb3I6dmFyKC0tXzItYXUxVyk7Y3Vyc29yOmRlZmF1bHR9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAuaS1kaXNhYmxlZDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Y29sb3I6dmFyKC0tXzItYXUxVyk7Y3Vyc29yOmRlZmF1bHR9fS50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAtLXN1Yml0ZW17cGFkZGluZy1ibG9jazoxMHB4IDEwcHg7cGFkZGluZy1pbmxpbmU6MzBweCAxNXB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwLS1ub3QtaW50ZXJhY3RpdmU6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjppbml0aWFsfX0udHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwLS1ub3QtaW50ZXJhY3RpdmUuaS1hY3RpdmUsLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcC0tbm90LWludGVyYWN0aXZlOmFjdGl2ZXtiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWx9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAtLW5vdC1pbnRlcmFjdGl2ZS5pLWFjdGl2ZTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWx9fS50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAtLW5vdC1pbnRlcmFjdGl2ZS5pLWFjdGl2ZTphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjppbml0aWFsfS50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAudHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi13cmFwe2ZvbnQtc2l6ZToxM3B4O3BhZGRpbmctaW5saW5lLWVuZDoyMHB4O3BhZGRpbmctaW5saW5lLXN0YXJ0OjIwcHh9LnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24uaS1hY3RpdmUgLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcHtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXJlZ3VsYXIpfS50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLmktYWN0aXZlIC50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXAsLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24uaS1hY3RpdmUgLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcDphY3RpdmV7YmFja2dyb3VuZC1jb2xvcjp2YXIoLS1fNS1hdTFXKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24uaS1hY3RpdmUgLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcDpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLV81LWF1MVcpfX0udHYtY29udHJvbC1zZWxlY3RfX29wdGlvbi5pLWRpc2FibGVkIC50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLXdyYXB7YmFja2dyb3VuZC1jb2xvcjppbml0aWFsO2NvbG9yOnZhcigtLWNvbG9yLWJvcmRlci1ob3Zlcik7Y3Vyc29yOmRlZmF1bHR9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLmktZGlzYWJsZWQgLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcDpob3Zlcntjb2xvcjp2YXIoLS1jb2xvci1ib3JkZXItaG92ZXIpfS50di1jb250cm9sLXNlbGVjdF9fb3B0aW9uLmktZGlzYWJsZWQ6aG92ZXIgLnR2LWNvbnRyb2wtc2VsZWN0X19vcHRpb24td3JhcHtiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWx9fS50di1jb250cm9sLXNlbGVjdF9fb3B0Z3JvdXB7ZGlzcGxheTpibG9ja30udHYtY29udHJvbC1zZWxlY3RfX29wdGdyb3VwLWxhYmVse2NvbG9yOiNiZGJlYzA7ZGlzcGxheTpibG9jaztmb250LXNpemU6MTRweDtmb250LXNpemU6MTNweDtmb250LXdlaWdodDo3MDA7bGluZS1oZWlnaHQ6MTttYXJnaW4tdG9wOjEwcHg7cGFkZGluZzoxMHB4IDE1cHg7cGFkZGluZy1pbmxpbmUtZW5kOjIwcHg7cGFkZGluZy1pbmxpbmUtc3RhcnQ6MjBweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LnR2LWNvbnRyb2wtc2VsZWN0X19vcHRncm91cC1sYWJlbDpmaXJzdC1jaGlsZHttYXJnaW4tdG9wOjB9LnR2LWNvbnRyb2wtc2VsZWN0X19vcHRncm91cC1zZXBhcmF0b3J7ZGlzcGxheTpub25lfS50di1jb250cm9sLXNlbGVjdF9fb3B0Z3JvdXAtc2VwYXJhdG9yOm5vdCg6bGFzdC1vZi10eXBlKXtiYWNrZ3JvdW5kOnZhcigtLWNvbG9yLWRpdmlkZXIpO2JvcmRlcjpub25lO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjFweDttYXJnaW46OHB4IDB9LnR2LWNvbnRyb2wtc2VsZWN0X19vcHRncm91cC1pdGVtc3tkaXNwbGF5OmJsb2NrfS50di1jb250cm9sLXNlbGVjdF9fd3JhcC0tdG91Y2ggLnR2LWNvbnRyb2wtc2VsZWN0X19jYXJldCwudHYtY29udHJvbC1zZWxlY3RfX3dyYXAtLXRvdWNoIC50di1jb250cm9sLXNlbGVjdF9fY29udHJvbHtwb2ludGVyLWV2ZW50czpub25lfS50di1jb250cm9sLXNlbGVjdF9fd3JhcC0tdG91Y2ggLnR2LWNvbnRyb2wtc2VsZWN0LmktaW5pdGVke2JvdHRvbTowO2Rpc3BsYXk6YmxvY2s7aW5zZXQtaW5saW5lLWVuZDowO2luc2V0LWlubGluZS1zdGFydDowO29wYWNpdHk6MDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MH1bZGF0YS10aGVtZT1saWdodF17LS1fMC1Bazk1OiM4YThhOGF9W2RhdGEtdGhlbWU9ZGFya117LS1fMC1Bazk1OnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApfS50di1zY3JlZW5lci1wcm9tcHRfX2xhYmVse2NvbG9yOnZhcigtLV8wLUFrOTUpO2ZvbnQtc2l6ZToxM3B4O21hcmdpbi1ib3R0b206MTBweH1bZGF0YS10aGVtZT1saWdodF17LS1fMC1oQzdDOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0yMDApOy0tXzEtaEM3Qzp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzUwKTstLV8yLWhDN0M6dmFyKC0tY29sb3ItY29sZC1ncmF5LTIwMCk7LS1fMy1oQzdDOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zNTApfVtkYXRhLXRoZW1lPWRhcmtdey0tXzAtaEM3Qzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNjUwKTstLV8xLWhDN0M6dmFyKC0tY29sb3ItY29sZC1ncmF5LTU1MCk7LS1fMi1oQzdDOnZhcigtLWNvbG9yLWNvbGQtZ3JheS02NTApOy0tXzMtaEM3Qzp2YXIoLS1jb2xvci1jb2xkLWdyYXktNTUwKX0udHYtc2NyZWVuZXItZGlhbG9ne292ZXJmbG93OmF1dG99LnR2LXNjcmVlbmVyLWRpYWxvZ19fd3JhcHttaW4taGVpZ2h0OjEwMCV9LnR2LXNjcmVlbmVyLWRpYWxvZ19fd3JhcDphZnRlcntjbGVhcjpib3RoO2NvbnRlbnQ6IiI7ZGlzcGxheTp0YWJsZX0udHYtc2NyZWVuZXItZGlhbG9nX193cmFwLS0yY29se3Bvc2l0aW9uOnJlbGF0aXZlfS50di1zY3JlZW5lci1kaWFsb2dfX3dyYXAtLTJjb2w6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYm9yZGVyLXRhYmxlKTtjb250ZW50OiIiO2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7aW5zZXQtaW5saW5lLXN0YXJ0OjUwJTttYXJnaW4taW5saW5lLXN0YXJ0Oi0ycHg7cG9pbnRlci1ldmVudHM6bm9uZTtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDt3aWR0aDoycHg7ei1pbmRleDoxfS50di1zY3JlZW5lci1kaWFsb2dfX3dyYXAtLTJjb2wgLnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxke3dpZHRoOjUwJX0udHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItZmllbGR7YWxpZ24taXRlbXM6Y2VudGVyO2JvcmRlci1ib3R0b206MXB4IHNvbGlkO2JvcmRlci1ib3R0b20tY29sb3I6dmFyKC0tY29sb3ItYm9yZGVyLXRhYmxlKTtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTpmbGV4O2Zsb2F0OmlubGluZS1zdGFydDttaW4taGVpZ2h0OjU1cHg7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6MCAyOHB4O3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCV9LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLS1hY3RpdmUsLnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLS1hY3RpdmU6YWN0aXZle2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS0xMDApfWh0bWwudGhlbWUtZGFyayAudHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItZmllbGQtLWFjdGl2ZSxodG1sLnRoZW1lLWRhcmsgLnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLS1hY3RpdmU6YWN0aXZle2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItdHYtYmx1ZS1hODAwKX0udHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItZmllbGQtLWFjdGl2ZSAudHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItZmllbGQtcmVzZXR7dmlzaWJpbGl0eTp2aXNpYmxlfS50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZDpsYXN0LWNoaWxke2JvcmRlci1ib3R0b206bm9uZX0udHYtc2NyZWVuZXItZGlhbG9nLS1jYXQxIC50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZC0tY2F0MiwudHYtc2NyZWVuZXItZGlhbG9nLS1jYXQxIC50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZC0tY2F0MywudHYtc2NyZWVuZXItZGlhbG9nLS1jYXQyIC50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZC0tY2F0MSwudHYtc2NyZWVuZXItZGlhbG9nLS1jYXQyIC50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZC0tY2F0MywudHYtc2NyZWVuZXItZGlhbG9nLS1jYXQzIC50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZC0tY2F0MSwudHYtc2NyZWVuZXItZGlhbG9nLS1jYXQzIC50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZC0tY2F0MntkaXNwbGF5Om5vbmV9LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLXRpdGxle2JveC1zaXppbmc6Ym9yZGVyLWJveDtmb250LXNpemU6MTNweDtwYWRkaW5nLWlubGluZS1lbmQ6MjBweDtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDozMCV9LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLWNvbnRlbnR7bWFyZ2luLWlubGluZS1zdGFydDoxMHB4O21pbi1oZWlnaHQ6MjdweDtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDo2MyV9LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLWNvbnRlbnQtLWxlZnQsLnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLWNvbnRlbnQtLW1pZGRsZSwudHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItZmllbGQtY29udGVudC0tcmlnaHR7ZGlzcGxheTppbmxpbmUtYmxvY2t9LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLWNvbnRlbnQtLW1pZGRsZSwudHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItZmllbGQtY29udGVudC0tcmlnaHR7bWFyZ2luLWlubGluZS1zdGFydDoyMHB4fUBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KXsudHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItZmllbGQtY29udGVudHthbGlnbi1pdGVtczpjZW50ZXI7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2dhcDo4cHggMjBweH0udHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItZmllbGQtY29udGVudC0tbGVmdCwudHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItZmllbGQtY29udGVudC0tbWlkZGxlLC50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZC1jb250ZW50LS1yaWdodHtkaXNwbGF5OmJsb2NrO21hcmdpbi1pbmxpbmUtc3RhcnQ6MH19LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLWNvbnRlbnQtdmFsdWU6bm90KDpsYXN0LWNoaWxkKTphZnRlcntjb250ZW50OiIsICJ9LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLXRleHR7YmFja2dyb3VuZC1jb2xvcjppbml0aWFsO2JvcmRlcjoxcHggc29saWQ7Ym9yZGVyLWNvbG9yOnZhcigtLV8yLWhDN0MpO2JvcmRlci1yYWRpdXM6MnB4O2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcmVndWxhcik7Zm9udC1zaXplOjEycHghaW1wb3J0YW50O2hlaWdodDoyNXB4O3BhZGRpbmc6MCA2cHg7d2lkdGg6MTAzcHh9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZC10ZXh0OmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1fMy1oQzdDKX19LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLXRleHQ6Zm9jdXN7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLWJyYW5kKX0udHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItYmV0d2Vlbi1pbnB1dHtiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Ym9yZGVyOjFweCBzb2xpZDtib3JkZXItY29sb3I6dmFyKC0tXzItaEM3Qyk7Ym9yZGVyLXJhZGl1czoycHg7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1yZWd1bGFyKTtmb250LXNpemU6MTJweCFpbXBvcnRhbnQ7aGVpZ2h0OjI1cHg7cGFkZGluZzowIDZweDt3aWR0aDoxMDNweDt3aWR0aDo1MHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItYmV0d2Vlbi1pbnB1dDpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tXzMtaEM3Qyl9fS50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1iZXR3ZWVuLWlucHV0OmZvY3Vze2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1icmFuZCl9LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWJldHdlZW4tc2VwYXJhdG9ye21hcmdpbi1pbmxpbmUtc3RhcnQ6MjBweDtwYWRkaW5nOjAgNnB4fS50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZC1yZXNldHtjdXJzb3I6cG9pbnRlcjttYXJnaW4taW5saW5lLXN0YXJ0OjMwcHg7dmlzaWJpbGl0eTpoaWRkZW47d2hpdGUtc3BhY2U6bm93cmFwfS50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1maWVsZC1yZXNldCBzdmd7ZmlsbDp2YXIoLS1jb2xvci1icmFuZCl9LnR2LXNjcmVlbmVyLWRpYWxvZ19fc2VsZWN0Ym94LWNvbnRhaW5lcntoZWlnaHQ6MjdweDtsaW5lLWhlaWdodDoyN3B4O3doaXRlLXNwYWNlOm5vd3JhcH0udHYtc2NyZWVuZXItZGlhbG9nX19zZWxlY3Rib3gtZHJvcGRvd24tdG9nZ2xle2Rpc3BsYXk6aW5saW5lLWJsb2NrO2hlaWdodDoxNnB4O21hcmdpbi1ibG9jazo2cHggMDttYXJnaW4taW5saW5lOjVweCAwO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zNXMgZWFzZTt2ZXJ0aWNhbC1hbGlnbjp0b3A7d2lkdGg6MTZweH0udHYtc2NyZWVuZXItZGlhbG9nX19zZWxlY3Rib3gtZHJvcGRvd24tdG9nZ2xlIHN2Z3tkaXNwbGF5OmJsb2NrO21hcmdpbi1ibG9jazo1cHggMDttYXJnaW4taW5saW5lOjJweCAwO3N0cm9rZTp2YXIoLS1jb2xvci1jb2xkLWdyYXktMzAwKTtzdHJva2Utd2lkdGg6MS41cHh9LnR2LXNjcmVlbmVyLWRpYWxvZ19fc2VsZWN0Ym94LWRyb3Bkb3duLXRvZ2dsZS0tb3Blbnt0cmFuc2Zvcm06cm90YXRlKDE4MGRlZyl9LnR2LXNjcmVlbmVyLWRpYWxvZ19fc2VsZWN0Ym94LWRyb3Bkb3duLXRvZ2dsZS0tb3BlbjpkaXIocnRsKXt0cmFuc2Zvcm06cm90YXRlKC0xODBkZWcpfS50di1zY3JlZW5lci1kaWFsb2dfX3NlbGVjdGJveC1jYXB0aW9uLS1uby12YWx1ZSwudHYtc2NyZWVuZXItZGlhbG9nX19zZWxlY3Rib3gtb3B0aW9uLS1uby12YWx1ZSAudHYtc2NyZWVuZXItZGlhbG9nX19zZWxlY3Rib3gtb3B0aW9uLXdyYXB7Y29sb3I6dmFyKC0tY29sb3ItcGxhY2Vob2xkZXIpIWltcG9ydGFudH0udHYtc2NyZWVuZXItZGlhbG9nX19zZWxlY3Rib3gtY2FwdGlvbntjdXJzb3I6cG9pbnRlcn0udHYtc2NyZWVuZXItZGlhbG9nX19zZWxlY3Rib3gtY2FwdGlvbi0tdGV4dC1vdmVyZmxvd3tkaXNwbGF5OmlubGluZS1ibG9jazttYXgtd2lkdGg6MTAwJX0udHYtc2NyZWVuZXItZGlhbG9nX19zZWxlY3Rib3gtY2FwdGlvbi0tdGV4dC1vdmVyZmxvdyAudHYtc2NyZWVuZXItZGlhbG9nX19zZWxlY3Rib3gtY2FwdGlvbi1sYWJlbHtib3gtc2l6aW5nOmJvcmRlci1ib3g7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWF4LXdpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmctaW5saW5lLWVuZDoyM3B4O3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9LnR2LXNjcmVlbmVyLWRpYWxvZ19fc2VsZWN0Ym94LWNhcHRpb24tLXRleHQtb3ZlcmZsb3cgLnR2LXNjcmVlbmVyLWRpYWxvZ19fc2VsZWN0Ym94LWRyb3Bkb3duLXRvZ2dsZXttYXJnaW4taW5saW5lLXN0YXJ0Oi0xOHB4fUBtZWRpYSAoYW55LWhvdmVyOmhvdmVyKXsudHYtc2NyZWVuZXItZGlhbG9nX19zZWxlY3Rib3gtY2FwdGlvbjpob3ZlciAudHYtc2NyZWVuZXItZGlhbG9nX19zZWxlY3Rib3gtZHJvcGRvd24tdG9nZ2xlIHN2Z3tzdHJva2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9fS50di1zY3JlZW5lci1kaWFsb2dfX3NlYXJjaC13cmFwe2JvcmRlci1ib3R0b206MXB4IHNvbGlkO2JvcmRlci1jb2xvcjp2YXIoLS1jb2xvci1ib3JkZXIpO2hlaWdodDo0NXB4O3Bvc2l0aW9uOnJlbGF0aXZlfS50di1zY3JlZW5lci1kaWFsb2dfX3NlYXJjaC1pbnB1dHtiYWNrZ3JvdW5kLWNvbG9yOmluaXRpYWw7Ym9yZGVyOm5vbmU7Ym94LXNpemluZzpib3JkZXItYm94O2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjQ1cHg7bWFyZ2luOjA7cGFkZGluZy1ibG9jazoxMHB4IDA7cGFkZGluZy1pbmxpbmU6MjJweCAyMnB4O3dpZHRoOjEwMCV9LnR2LXNjcmVlbmVyLWRpYWxvZ19fc2VhcmNoLW5vLW1hdGNoZXN7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1zZWNvbmRhcnkpO2ZvbnQtc3R5bGU6aXRhbGljO3BvaW50ZXItZXZlbnRzOm5vbmV9LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWRyb3Bkb3duLXRvZ2dsZXtoZWlnaHQ6MTZweDtpbnNldC1pbmxpbmUtZW5kOjclO21hcmdpbi1pbmxpbmUtZW5kOjdweDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDoyMHB4O3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dDt3aWR0aDoxNnB4fS50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1kcm9wZG93bi10b2dnbGUgc3Zne2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWJsb2NrOjVweCAwO21hcmdpbi1pbmxpbmU6MnB4IDA7c3Ryb2tlOnZhcigtLWNvbG9yLWNvbGQtZ3JheS0zMDApfS50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1kcm9wZG93bi10b2dnbGUtLW9wZW57dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpfS50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci1kcm9wZG93bi10b2dnbGUtLW9wZW46ZGlyKHJ0bCl7dHJhbnNmb3JtOnJvdGF0ZSgtMTgwZGVnKX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLWZpZWxkLWNvbnRlbnQtLXNlbGVjdDpob3Zlcn4udHYtc2NyZWVuZXItZGlhbG9nX19maWx0ZXItZHJvcGRvd24tdG9nZ2xlIHN2Z3tzdHJva2U6dmFyKC0tY29sb3ItY29sZC1ncmF5LTQ1MCl9fS50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci10b2dnbGV7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLXRvcDo0cHh9LnR2LXNjcmVlbmVyLWRpYWxvZ19fZmlsdGVyLXRvZ2dsZS1jaGVja2JveHtpbnNldC1pbmxpbmUtc3RhcnQ6MDtwb3NpdGlvbjpyZWxhdGl2ZX0udHYtc2NyZWVuZXItZGlhbG9nIC50di1zY3JlZW5lci1kaWFsb2dfX2ZpbHRlci10b2dnbGUtY2hlY2tib3gtdGl0bGV7ZGlzcGxheTpub25lfS50di1zY3JlZW5lci1kaWFsb2dfX3NlbGVjdGJveC1vcHRpb24td3JhcHtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXJlZ3VsYXIpfS50di1zY3JlZW5lci1zZWFyY2h7Ym9yZGVyLWJvdHRvbToxcHggc29saWQ7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1jb2xvci1ib3JkZXItdGFibGUpO2hlaWdodDo0MHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS50di1zY3JlZW5lci1zZWFyY2hfX2lucHV0e2JhY2tncm91bmQtY29sb3I6aW5pdGlhbDtib3JkZXI6bm9uZTtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1yZWd1bGFyKTtmb250LXNpemU6MTRweDtoZWlnaHQ6NDBweDtwYWRkaW5nLWJsb2NrOjAgMDtwYWRkaW5nLWlubGluZTo1N3B4IDEzNXB4O3dpZHRoOjEwMCV9LnR2LXNjcmVlbmVyLXNlYXJjaF9faW5wdXQ6OnBsYWNlaG9sZGVye2NvbG9yOnZhcigtLWNvbG9yLXBsYWNlaG9sZGVyKX0udHYtc2NyZWVuZXItc2VhcmNoIHN2Z3tpbnNldC1pbmxpbmUtc3RhcnQ6MjdweDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxMnB4fS50di1zY3JlZW5lci1zZWFyY2hfX3Jlc2V0e2NvbG9yOnZhcigtLWNvbG9yLXR2LWJsdWUtNTAwKTtjdXJzb3I6cG9pbnRlcjtpbnNldC1pbmxpbmUtZW5kOjMwcHg7cG9zaXRpb246YWJzb2x1dGU7dG9wOjEycHh9LnR2LXNjcmVlbmVyLXNlYXJjaF9fcmVzZXQtaWNvbiBzdmd7aW5zZXQtaW5saW5lLXN0YXJ0Oi0yNnB4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMnB4O2ZpbGw6dmFyKC0tY29sb3ItdHYtYmx1ZS01MDApO3BvaW50ZXItZXZlbnRzOmF1dG99Lm1vZGVUaXRsZS1qc1QzUzRNQXtjb2xvcjp2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSk7dHJhbnNpdGlvbi1kdXJhdGlvbjouMzVzO3RyYW5zaXRpb24tcHJvcGVydHk6Y29sb3I7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZTstLXVpLWxpYi10eXBvZ3JhcGh5LWxpbmUtaGVpZ2h0OjIxcHg7bGluZS1oZWlnaHQ6dmFyKC0tdWktbGliLXR5cG9ncmFwaHktbGluZS1oZWlnaHQpOy0tdWktbGliLXR5cG9ncmFwaHktZm9udC1zaXplOjE0cHg7Zm9udC1zaXplOnZhcigtLXVpLWxpYi10eXBvZ3JhcGh5LWZvbnQtc2l6ZSk7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6NDAwfS5tb2RlVGl0bGVBY3RpdmUtanNUM1M0TUF7Y29sb3I6dmFyKC0tY29sb3ItYnJhbmQpfS5zd2l0Y2hlckNvbnRhaW5lci1qc1QzUzRNQXttYXJnaW46MCA4cHh9LmVsZW1lbnRXcmFwLUxlWndHaUI2e2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttYXgtd2lkdGg6MTAwJX0uaXRlbXNXcmFwLUxlWndHaUI2e2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjpyZWxhdGl2ZX0uaXRlbS1MZVp3R2lCNntjb2xvcjp2YXIoLS1jb2xvci10b29sYmFyLWludGVyYWN0aXZlLWVsZW1lbnQtdGV4dC1ub3JtYWwpO2Rpc3BsYXk6ZmxleDtwYWRkaW5nOjAgOXB4fS5pdGVtLUxlWndHaUI2OmZpcnN0LWNoaWxke3BhZGRpbmctaW5saW5lLXN0YXJ0OjB9Lml0ZW0tTGVad0dpQjY6bGFzdC1jaGlsZHtwYWRkaW5nLWlubGluZS1lbmQ6MH0uaXRlbS1MZVp3R2lCNi5hY3RpdmUtTGVad0dpQjYgLml0ZW1Db250ZW50LUxlWndHaUI2e2JhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYnJhbmQpO2JvcmRlci1yYWRpdXM6MTJweDtjb2xvcjp2YXIoLS1jb2xvci13aGl0ZSk7Y3Vyc29yOmRlZmF1bHR9Lml0ZW0tTGVad0dpQjYuYWN0aXZlLUxlWndHaUI2IC5pdGVtQ29udGVudC1MZVp3R2lCNi5kcm9wZG93bkl0ZW0tTGVad0dpQjZ7Y3Vyc29yOnBvaW50ZXJ9Lml0ZW1Db250ZW50LUxlWndHaUI2e2JvcmRlcjoxcHggc29saWQgIzAwMDA7Ym9yZGVyLXJhZGl1czoxMnB4O2NvbG9yOnZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSk7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOjEzcHg7cGFkZGluZzozcHggMTJweCA0cHg7dGV4dC1hbGlnbjpjZW50ZXI7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjM1cyBlYXNlLGNvbG9yIC4zNXMgZWFzZTt3aGl0ZS1zcGFjZTpub3dyYXB9QG1lZGlhIChhbnktaG92ZXI6aG92ZXIpey5pdGVtQ29udGVudC1MZVp3R2lCNjpob3Zlcjpub3QoLmFjdGl2ZS1MZVp3R2lCNil7Ym9yZGVyLWNvbG9yOnZhcigtLWNvbG9yLXRvb2xiYXItYnV0dG9uLXRleHQtYWN0aXZlLWhvdmVyKTtjb2xvcjp2YXIoLS1jb2xvci10b29sYmFyLWJ1dHRvbi10ZXh0LWFjdGl2ZS1ob3Zlcil9fS5kcm9wZG93bkl0ZW0tTGVad0dpQjZ7Ym94LXNpemluZzpib3JkZXItYm94O3dpZHRoOjMycHh9LmRyb3Bkb3duSWNvbi1MZVp3R2lCNntkaXNwbGF5OmJsb2NrO3RyYW5zZm9ybTpyb3RhdGUoOTBkZWcpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zNXMgZWFzZX0uZHJvcGRvd25JY29uLUxlWndHaUI2OmRpcihydGwpe3RyYW5zZm9ybTpyb3RhdGUoLTkwZGVnKX0uZHJvcGRvd25JY29uLUxlWndHaUI2LmFjdGl2ZS1MZVp3R2lCNnt0cmFuc2Zvcm06cm90YXRlKC05MGRlZyl9LmRyb3Bkb3duSWNvbi1MZVp3R2lCNi5hY3RpdmUtTGVad0dpQjY6ZGlyKHJ0bCl7dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyl9LmRyb3Bkb3duTGlzdEl0ZW0tTGVad0dpQjZ7Y29sb3I6dmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KX0ubGluay1VSVFwTExOcywubGluay1VSVFwTExOczp2aXNpdGVke2NvbG9yOnZhcigtLWNvbG9yLWxpbmstcHJpbWFyeS1kZWZhdWx0KTtmaWxsOnZhcigtLWNvbG9yLWxpbmstcHJpbWFyeS1kZWZhdWx0KX1AbWVkaWEgKGFueS1ob3Zlcjpob3Zlcil7LmxpbmstVUlRcExMTnM6aG92ZXJ7Y29sb3I6dmFyKC0tY29sb3ItbGluay1wcmltYXJ5LWhvdmVyKTtmaWxsOnZhcigtLWNvbG9yLWxpbmstcHJpbWFyeS1ob3Zlcil9fS5saW5rLVVJUXBMTE5zOmFjdGl2ZXtjb2xvcjp2YXIoLS1jb2xvci1saW5rLXByaW1hcnktYWN0aXZlKTtmaWxsOnZhcigtLWNvbG9yLWxpbmstcHJpbWFyeS1hY3RpdmUpfS5saW5rLVVJUXBMTE5zOmZvY3Vze291dGxpbmU6YXV0bztvdXRsaW5lLW9mZnNldDoycHh9LmxpbmstVUlRcExMTnM6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOmF1dG87b3V0bGluZS1vZmZzZXQ6MnB4fS5saW5rLVVJUXBMTE5zOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSl7b3V0bGluZTpub25lfQ=="}},"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":"i.ytimg.com/vi_webp/Gc2en3nHxA4/default.webp","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/Gc2en3nHxA4","date":"2026-07-27T04:24:17.793Z","timestamp":1785126257793,"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_webp/Gc2en3nHxA4/default.webp 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\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: 2218\r\nx-content-type-options: nosniff\r\nserver: sffe\r\nx-xss-protection: 0\r\ndate: Mon, 27 Jul 2026 02:46:32 GMT\r\nexpires: Mon, 27 Jul 2026 04:46:32 GMT\r\ncache-control: public, max-age=7200\r\nage: 5865\r\netag: \"1398435974\"\r\ncontent-type: image/webp\r\nvary: Origin\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":2218,"size_decoded":2848,"mime_type":"image/webp","magic":"RIFF (little-endian) data, Web/P image, VP8 encoding, 120x90, Scaling: [none]x[none], YUV color, decoders should clamp","md5":"10b121b44f8c2fddf1cb3db65d0fff22","sha1":"297a302d8d3b9a6fa5b4d8354e588cb4efddad9d","sha256":"58fc4b8b1b99919b8f707c88fe9806aae347f666207423bf3ab3cdc99e1edf0f","sha512":"bdc8d95fc68f06ab5b7bf0b84753596ff9456a6b446a21a290c6e74bf17a5a728f710f6a0ad5cf41996b31508b3563d8530b445d23ff1b5109648dd042ed75ac","ssdeep":"","tlshash":"c1415c952f3909f4d5e55f066f6ae31f14130869ac2552f7ecec64a141f09504c6dc0c","first_seen":"2023-05-01T20:32:00Z","last_seen":"2026-07-27T07:03:18.983155Z","times_seen":223,"resource_available":false,"data":"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"}},"time_used":75,"timings":{"blocked":0,"dns":4,"connect":17,"send":0,"wait":18,"receive":0,"ssl":35},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCDOGE.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.495Z","timestamp":1785126258495,"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 /crypto/XTVCDOGE.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 04:24:18 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: \"47f2b3d4f911b55a91159a4c2e3e3653\"\r\nlast-modified: Fri, 12 Jan 2024 14:17:40 GMT\r\ncdn-cachedat: 08/14/2025 09:10:46\r\nx-amz-id-2: sXro9ZJxmHs/8GgMOnCRxAVZldlFML/+fLVjQjMIlOvfbjvZcsikJwX/J886wV65+2yy1tRFdyM=\r\nx-amz-request-id: EP4HPYP1RR742AW8\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 47f2b3d4f911b55a91159a4c2e3e3653\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: cbacbdd0ca46bd943fa16794f4ed535c\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":20386,"size_decoded":8448,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (20386), with no line terminators","md5":"47f2b3d4f911b55a91159a4c2e3e3653","sha1":"e3362d909dedcc2802e4d5380cfe7b49a3b47317","sha256":"02d453ba9c1f6d45ec6047a546c5ecc2f260825c06823ae0c5614ffac58eff6e","sha512":"fcaeb576c027b5da4cd2974844937b3ec6c60a6ecbca70bf19cb4568d21a0bb359019f97f0755301ae6385cf053e960c5c721991ba20ae973415c5242dfc74d3","ssdeep":"384:tdgsKDta3tuqJPjyKQn4MLpl/7vUbzEjREgfjY2e4+gm/pyj+v+QfuwYFrn8h:ngjDI3tuGjyKQ44phvUfnajjC/e+v+Qd","tlshash":"859204596148a76c2892f34ec7bfd4e0234e005ab1aad6d91effe7ecd00e650fd52824","first_seen":"2024-01-16T04:56:00Z","last_seen":"2026-07-27T07:05:43.329364Z","times_seen":2040,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNDM0E2MzQiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJtNy4wNSAyLjMzLS4xNi0uMTFhLjA2LjA2IDAgMCAwLS4xLjAydi4wNGwuMDMuMTYtLjAyLjYzYzAgLjAyIDAgLjAzLS4wMi4wNGwtLjAyLjAyYTQxLjczIDQxLjczIDAgMCAwLS4xNy42NS4zLjMgMCAwIDEtLjA3LjE0bC0uMTQuMTVjLS4xNy4xOC0uMTUuMjEuMDcuMS4xNy0uMS4zNS0uMjEuNTMtLjM1LjA2LS4wNC4xNi0uMDUuMy0uMDRhLjEuMSAwIDAgMSAuMDYuMDNsLjE5LjE1Yy4wMiAwIC4wNC4wMy4wNC4wNS4wMS4xMSAwIC4yMi0uMDguM2EuODUuODUgMCAwIDAtLjIyLjU5YzAgLjAzLS4wMS4wNS0uMDQuMDctLjE2LjA5LS4xNy4yNy0uMy40bC0uMi4xNS0uMDItLjQyYS4xLjEgMCAwIDAtLjAzLS4wN0EuMS4xIDAgMCAwIDYuNiA1Yy0uMDUgMC0uMS4wMy0uMTQuMDgtLjEyLjE0LS4yNi4yNC0uNDQuMzEtLjEzLjAzLS4yMy4xMy0uMjguMzJhLjU5LjU5IDAgMCAxLS4xMi4xOGMuMDItLjI5LS4xMS0uNDItLjQtLjQtLjA2LjAyLS4xNS4wNy0uMjguMTlhLjEuMSAwIDAgMC0uMDQuMDUuNTEuNTEgMCAwIDEtLjMuMzhjLS4wNi4wMS0uMDkgMC0uMDgtLjA3di0uMDJjLjIyLS40LjIyLS44Ny42LTEuMTkuMTMtLjExLjI0LS4xOC4zMy0uMjEuNjQtLjIyLjk4LS42NCAxLTEuMjZsLjAzLS42MmMwLS4yNC4wNC0uNDYuMS0uNjYuMDEtLjAzLjAzLS4wNS4wNi0uMDdhLjEyLjEyIDAgMCAxIC4wOSAwbC4xNy4wNGMuMDMgMCAuMDQuMDIuMDUuMDRsLjEuMjRaIiBmaWxsPSIjRTFCMDUxIi8+PHBhdGggZD0ibTcuMDUgMi4zMy4xMi4xNGE0IDQgMCAwIDEgLjQ1Ljc5Yy4wNC4wOS4xNC4xOS4yOS4zLjA5LjA2IDAgLjEtLjI3LjFhMiAyIDAgMCAxLS40Ny0uNTYuNTMuNTMgMCAwIDEtLjA4LS4yNC41NC41NCAwIDAgMC0uMTctLjM2LjA0LjA0IDAgMCAwLS4wNCAwIC4wNC4wNCAwIDAgMC0uMDMuMDN2LjA3YS4zMi4zMiAwIDAgMS0uMDMtLjE2bC0uMDMtLjE2YS4wNi4wNiAwIDAgMSAuMDMtLjA2LjA2LjA2IDAgMCAxIC4wNyAwbC4xNi4xMVoiIGZpbGw9IiNCODdDMjkiLz48cGF0aCBkPSJNMTIuMTMgMi40NmMtLjA3LjAxLS4xLjA1LS4xLjEzIDAgLjEyLjA3LjIuMDcuMzJ2LjIxYy0uMDIuMTcuMTMuMzMuMTcuNDkuMDYuMjEuMDguNC4wNS41Ny0uMDQuMTYtLjA2LjMzLS4wOC41IDAgLjEtLjA0LjE2LS4xLjIxYS4wNS4wNSAwIDAgMC0uMDIuMDQuMDUuMDUgMCAwIDAgLjAyLjA0Yy4wOS4wNS4xNC4xMi4xNy4yYS4wNC4wNCAwIDAgMCAuMDMuMDMuMDQuMDQgMCAwIDAgLjA0LS4wMy40LjQgMCAwIDAgLjA1LS4yLjIuMiAwIDAgMSAuMDYuMDhjLjA2LjE3LjE0LjM0LjIyLjUuMS4xOC4xNS4zNC4xNy40Ni4wNi4yOC4xLjU1LjEuODIuMDIuMTMuMDYuMzIuMS40NC4xNC4zNC4yNC43LjMgMS4wNXYuN2MwIC4wMyAwIC4wNS4wMi4wNy4wOC4xLjEuMjMuMDYuMzgtLjAxLjA3IDAgLjEyLjA1LjE3LjAyLjAyLjAzLjA0LjAzLjA3IDAgLjEzLS4wNS4yNC0uMTMuMzNhLjY0LjY0IDAgMCAwLS4xMy4yM2MtLjA4LjIyLS4yNC40NC0uNDkuNWEuMTUuMTUgMCAwIDAtLjEuMDdjLS4xLjE2LS4xMi4zLS4zMy4zOGgtLjA2Yy0uMDYtLjA1LS4xMi0uMDQtLjIuMDEuMDUtLjE1LjEtLjMuMTctLjQ2YS44My44MyAwIDAgMSAuMTUtLjIxYy4xLS4xMi4xNC0uMjcuMS0uNDZhLjEuMSAwIDAgMSAuMDEtLjA3Yy4xMS0uMTYuMTctLjMyLjMtLjQ3YS43LjcgMCAwIDAgLjE2LS40OS4wMy4wMyAwIDAgMC0uMDItLjAyLjAzLjAzIDAgMCAwLS4wMyAwYy0uMi4yMS0uNDUuMzQtLjYxLjU4LS4yLjMxLS40NS41OC0uNzQuOC0uMDQuMDQtLjA3LjEtLjA2LjE2LjAyLjE1IDAgLjMxLjIuMzIuMDMgMCAuMDUuMDIuMDUuMDUgMCAuMDYtLjAyLjExLS4wNi4xNmExMS44MiAxMS44MiAwIDAgMC0uMjcuNDMuMDQuMDQgMCAwIDAgLjAzLjAzaC4wNWMtLjA2LjAzLS4xLjA3LS4xOC4wOC0uMi4wMi0uMzItLjAxLS4zNy0uMDguMS0uMTQuMi0uMjUuMy0uMzMuMDgtLjA4LjEyLS4xOS4xLS4zMWEuMDUuMDUgMCAwIDAtLjA1LS4wNC40LjQgMCAwIDAtLjEzLjAzLjA1LjA1IDAgMCAxLS4wNSAwIC4wNC4wNCAwIDAgMS0uMDItLjA1LjYyLjYyIDAgMCAwIC4wMS0uMmwuMDEtLjA1LjE4LS4zYS4wMi4wMiAwIDAgMCAwLS4wMi4wMi4wMiAwIDAgMC0uMDMgMCAuNzYuNzYgMCAwIDEtLjQuMjFjLS4wMiAwLS4wNCAwLS4wNC0uMDNsLS4wMS0uMDNhLjQ4LjQ4IDAgMCAwIC4yLS4xM2MuMDQtLjA0LjA2LS4xLjA2LS4xOCAwLS4yLjI5LS40My40Mi0uNTZhLjE3LjE3IDAgMCAwIC4wNS0uMTUgNC4xIDQuMSAwIDAgMS0uMDUtLjM1YzAtLjA0IDAtLjA3LjA1LS4wOWguMDNsLjAyLjAxLjAzLjAzYy4wMi4wMi4wNC4wMS4wNi0uMDFsLjExLS4yVjguOGEuNTguNTggMCAwIDEgLjItLjU1LjM1LjM1IDAgMCAwIC4wOC0uMjFjMC0uMDIgMC0uMDQtLjAzLS4wNmwtLjEtLjA2YS4wNi4wNiAwIDAgMS0uMDMtLjA2LjUuNSAwIDAgMSAuMS0uMjZjLjAyLS4wMS4wMi0uMDMgMC0uMDQtLjA3LS4wNi0uMTMtLjItLjA2LS4yOWEuMi4yIDAgMCAwIC4wMy0uMDhjMC0uMDIgMC0uMDQtLjAyLS4wNS0uMS0uMDktLjEtLjE4LS4wNS0uMjlWNi44bC0uMTYtLjE3YS4wNi4wNiAwIDAgMS0uMDItLjA0YzAtLjA1IDAtLjEtLjA0LS4xM2EuMDMuMDMgMCAwIDAtLjAzLS4wMWgtLjAxbC0uMDEuMDJhLjcuNyAwIDAgMS0uMDkuMTVsLS4wMi4wMWMtLjAxIDAtLjAyIDAtLjAyLS4wMmwuMDQtLjE2YzAtLjAzLS4wMS0uMDQtLjA0LS4wNGwtLjI0LS4wMWgtLjAyYS4wMy4wMyAwIDAgMC0uMDEuMDN2LjAxbC4xLjEzdi4wM2wtLjAxLjAxaC0uMWE1LjAyIDUuMDIgMCAwIDAtLjI5LS4xMmwtLjE2LjAxYy0uMDMgMC0uMDUtLjAxLS4wNi0uMDRsLS4wMS0uMDNhLjA1LjA1IDAgMCAwLS4wMi0uMDNoLS4wNGMtLjIuMDMtLjQyLjA0LS42NC4wMWEuMS4xIDAgMCAwLS4xLjA1IDIgMiAwIDAgMS0uNTMuNjVjLS4wNy4wNS0uMTUuMDgtLjI0LjFhLjE1LjE1IDAgMCAwLS4wNi4wNWMtLjEzLjE0LS4yNS4xLS40My4xLS4yIDAtLjM4IDAtLjU3LS4wMmEuMy4zIDAgMCAwLS4xMy0uMDVjLS4wMSAwLS4wMiAwLS4wMy0uMDJsLS4wMi0uMDNhMS4yIDEuMiAwIDAgMC0uMTctLjUxLjA2LjA2IDAgMCAwLS4wNS0uMDMuMDYuMDYgMCAwIDAtLjA1LjA0bC0uMTIuMjktLjAzLjAzYS4wNy4wNyAwIDAgMS0uMDggMEEuMDcuMDcgMCAwIDEgNy40IDdsLS4wMi0uMThhLjQuNCAwIDAgMC0uMDItLjA5bC0uMDctLjE3YS4wNC4wNCAwIDAgMSAuMDQtLjA2aC4wNGMuMDIgMCAuMDQgMCAuMDQtLjAzbC4xNi0uMzRhLjI1LjI1IDAgMCAwIDAtLjI2Yy0uMDItLjAyLS4wMy0uMDItLjA1IDAtLjE2LjEyLS4yOC4yNi0uMzguMzktLjA0LjA0LS4wNi4wNC0uMDctLjAyIDAtLjAxIDAtLjAzLS4wMi0uMDQtLjAxLS4wMS0uMDMtLjAyLS4wNSAwLS4yLjA5LS4zNS4yLS40NS4zM2EuMy4zIDAgMCAxLS4xOC4xMmMtLjAzIDAtLjA0IDAtLjAzLS4wM2wuMDktLjJjLjA0LS4xLjEtLjIuMTYtLjI4LjAzLS4wNS4wMi0uMS0uMDMtLjE0aC0uMDVsLS4yNS4yMmMwLS4wMi4wMS0uMDQuMDMtLjA1LjEtLjEuMTctLjIyLjIyLS4zOC4wNSAwIC4wOCAwIC4wOS0uMDQuMDItLjEuMDYtLjE3LjExLS4yNGwuMi0uMTVjLjE0LS4xMy4xNS0uMzEuMzEtLjRhLjA4LjA4IDAgMCAwIC4wNC0uMDdjMC0uMjMuMDgtLjQyLjIyLS41OC4wOC0uMDkuMS0uMi4wOC0uM2EuMDcuMDcgMCAwIDAtLjA0LS4wNy43MS43MSAwIDAgMS0uMTktLjE0LjEuMSAwIDAgMC0uMDYtLjAzYy0uMTQtLjAyLS4yNCAwLS4zLjA0LS4xOC4xNC0uMzYuMjUtLjUzLjM0LS4yMi4xMi0uMjQuMS0uMDctLjFsLjE0LS4xNGEuMy4zIDAgMCAwIC4wOC0uMTQgNDEuODMgNDEuODMgMCAwIDEgLjE2LS42NWwuMDItLjAyYS4wNi4wNiAwIDAgMCAuMDItLjA0bC4wMS0uNjNjMCAuMDYuMDEuMTIuMDMuMTYuMDMuMDcuMDcuMTEuMTEuMTRBLjA4LjA4IDAgMCAxIDcgMi44YS4wNy4wNyAwIDAgMS0uMDQuMDZjLS4xNS4wNi0uMTMuMjMtLjA1LjMzLjA4LjA5LjEzLjE5LjE1LjMgMCAuMDQuMDIuMDcuMDYuMDguMTguMS4zNi4xMi41My4wNy4yNyAwIC4zNi0uMDMuMjctLjEuMzUuMDMuNy4wOCAxLjAxLjE1bC4zLjA0Yy4xOSAwIC4zNi4wNC41NS4wNi4xOS4wMi4zOC4wNi41NS0uMDMuMS0uMDUuMTgtLjExLjI0LS4yLjEzIDAgLjIzLS4wMy4zLS4xYS45Mi45MiAwIDAgMCAuMTctLjE4LjExLjExIDAgMCAxIC4wNC0uMDQuNjMuNjMgMCAwIDAgLjM0LS4zNGMuMDQtLjExLjAyLS4yMy4wMi0uMzRsLjAzLS4wNmMuMTUtLjE3LjUtLjEzLjY3LS4wNVoiIGZpbGw9IiNDODk1MzkiLz48cGF0aCBkPSJNMTIuMTMgMi40NmMuMTMuMDcuMjMuMi4yOC4zOWEzIDMgMCAwIDEgLjE0IDEuMzggNTMuMDIgNTMuMDIgMCAwIDAtLjE3Ljk0LjA0LjA0IDAgMCAxLS4wNC4wM2wtLjAyLS4wMS0uMDEtLjAyYS4zNS4zNSAwIDAgMC0uMTctLjIuMDUuMDUgMCAwIDEtLjAyLS4wNmwuMDItLjAyYy4wNi0uMDUuMS0uMTIuMS0uMi4wMi0uMTguMDQtLjM1LjA4LS41MS4wMy0uMTcuMDEtLjM2LS4wNS0uNTctLjA0LS4xNi0uMi0uMzItLjE4LS40OWwuMDEtLjIxYzAtLjEyLS4wNi0uMi0uMDctLjMyIDAtLjA4LjAzLS4xMi4xLS4xM1pNNy42NCAzLjY1YS43Mi43MiAwIDAgMS0uNTMtLjA3LjExLjExIDAgMCAxLS4wNi0uMDguNTguNTggMCAwIDAtLjE1LS4zYy0uMDgtLjEtLjEtLjI3LjA1LS4zM2EuMDcuMDcgMCAwIDAgLjA0LS4wNi4wNy4wNyAwIDAgMC0uMDQtLjA3LjI1LjI1IDAgMCAxLS4xLS4xNHYtLjA3YS4wNC4wNCAwIDAgMSAuMDMtLjA0LjA0LjA0IDAgMCAxIC4wNC4wMWMuMS4xLjE2LjIyLjE3LjM2LjAxLjA4LjAzLjE2LjA4LjI0YTIgMiAwIDAgMCAuNDcuNTVaIiBmaWxsPSIjODU1MTFDIi8+PHBhdGggZD0ibTEwLjggMy44NC4wNC0uMDFjLjA4LS4wMS4xLjAyLjA5LjA5IDAgLjAyLS4wMi4wMy0uMDQuMDVhLjY5LjY5IDAgMCAwLS4yOS41NGMwIC4xOC4xMi4yNy4xMS40NHYuMDJhLjA1LjA1IDAgMCAxLS4wNS4wMmMtLjA1IDAtLjA4LS4wMy0uMS0uMDdhLjc3Ljc3IDAgMCAwLS4xMi0uMjYuMDkuMDkgMCAwIDAtLjA0LS4wNC4xOC4xOCAwIDAgMS0uMTMtLjEyIDE1LjQ3IDE1LjQ3IDAgMCAwLS4yMy0uMjIuMTUuMTUgMCAwIDEtLjA2LS4xMi4wNC4wNCAwIDAgMSAuMDMtLjA0LjA0LjA0IDAgMCAxIC4wNCAwYy4wOS4wNi4xOC4wOC4yNy4wNy4wMyAwIC4wNSAwIC4wNi0uMDJsLjQxLS4zM1oiIGZpbGw9IiNCODdDMjkiLz48cGF0aCBkPSJNMTEuODggNC41MWMtLjE1LjI3LS4zNi41Ni0uNjMuN2EuMDUuMDUgMCAwIDEtLjA3LS4wMmwtLjA1LS4wN2EuMDkuMDkgMCAwIDAtLjA4LS4wNGwtLjIyLjAzYS4wNS4wNSAwIDAgMS0uMDQtLjAzdi0uMDVjLjEzLS4xMi4yNy0uMjYuMzMtLjQyLjAzLS4xLjA5LS4xOC4xOC0uMjRsLjAxLS4wMnYtLjAyYS4wNC4wNCAwIDAgMC0uMDMtLjAzaC0uMTJsLS4wNC0uMDJhLjA2LjA2IDAgMCAxLS4wMi0uMDRjMC0uMDMuMDItLjA2LjA1LS4wOWExIDEgMCAwIDAgLjE0LS4xM2MuMDQtLjA1LjEtLjA2LjE2LS4wNS4xMy4wMi4yNy4wMy40MS4wMmEuMS4xIDAgMCAxIC4wNi4wMi4xLjEgMCAwIDEgLjA0LjA1Yy4wMy4wNy4wMy4xNC4wMi4yYS44MS44MSAwIDAgMS0uMS4yNVoiIGZpbGw9IiM4NTUxMUMiLz48cGF0aCBkPSJNNy40MyA1LjE3Yy4wNy0uMjIuMTctLjQ2LjMtLjcyLjAyLS4wMi4wNC0uMDMuMDctLjAyLjA0LjAyLjA2LjA1LjA1LjEtLjAxLjE3LS4wOC4zNS0uMi41Mi0uMS4xNy0uMS4zNS0uMTUuNTRhLjA1LjA1IDAgMCAxLS4wNC4wM2MtLjAzIDAtLjA1IDAtLjA2LS4wMmEuMjcuMjcgMCAwIDEtLjAzLS4xNmMwLS4wOS4wMy0uMTguMDYtLjI3WiIgZmlsbD0iI0I4N0MyOSIvPjxwYXRoIGQ9Im04LjYyIDUuOTQtLjMyLjJjLS4wOS4wNC0uMTcuMDQtLjI0IDAtLjEyLS4wNS0uMTMtLjIxLS4xNS0uMzMtLjAxLS4wNS0uMDEtLjEgMC0uMTRsLjA2LS4yNGMuMDItLjIuMjEtLjM0LjM5LS40My4xNi0uMDguMzItLjA1LjQ3LjA4LjIxLjIuMTIuNDYuMDcuNyAwIC4wMi0uMDIuMDQtLjA1LjA0YS40My40MyAwIDAgMC0uMjMuMTJaIiBmaWxsPSIjRTFCMDUxIi8+PHBhdGggZD0iTTYuNzIgNS41MmEuNzUuNzUgMCAwIDAtLjExLjI0YzAgLjAzLS4wNC4wNS0uMDkuMDQtLjA2LS4yNi0uMjMtLjQtLjUtLjQuMTgtLjA4LjMyLS4xOC40NC0uMzIuMDQtLjA1LjA5LS4wOC4xNC0uMDhhLjEuMSAwIDAgMSAuMS4wNi4xLjEgMCAwIDEgLjAxLjA0bC4wMS40MlpNMTIuMDIgNS43OGMuMTMtLjAxLjItLjEuMjQtLjI0YS4wMy4wMyAwIDAgMSAuMDEtLjAyLjAzLjAzIDAgMCAxIC4wMyAwaC4wMmwuMDQuMDR2LjA0YTUuMiA1LjIgMCAwIDAtLjA0LjhjMCAuMDYtLjAzLjA3LS4wNy4wMy0uMDUtLjA0LS4wOC0uMTMtLjEtLjI2YS4wOS4wOSAwIDAgMC0uMDMtLjA2Yy0uMTEtLjA5LS4yMy0uMTItLjI2LS4yOGEuOC44IDAgMCAxIC4xNi0uNjVsLjAyLS4wMmguMDJ2LjAybC0uMDYuMTljLS4wMS4wMiAwIC4wNS4wMi4wNy4wNS4wNC4wNy4wOC4wNi4xNGEuMS4xIDAgMCAxLS4wNC4wNi4yLjIgMCAwIDAtLjA3LjA3LjA1LjA1IDAgMCAwIC4wMi4wNmguMDNaIiBmaWxsPSIjQjg3QzI5Ii8+PHBhdGggZD0iTTYuMDIgNS40Yy4yNyAwIC40NC4xNC41LjRhLjk1Ljk1IDAgMCAxLS4yMi4zOGwtLjI3LjA2Yy0uMTktLjE4LS4yMi0uNC0uMDgtLjYzVjUuNmgtLjAzYS41Ny41NyAwIDAgMS0uMTQuMTRjLS4wMyAwLS4wNCAwLS4wNC0uMDIuMDUtLjE5LjE1LS4zLjI4LS4zMloiIGZpbGw9IiMwQjA4MDIiLz48cGF0aCBkPSJtNS42MiA1Ljg5LS4wMS4wNGEuNDMuNDMgMCAwIDEtLjEzLjEuMTQuMTQgMCAwIDAtLjEuMTNjMCAuMS0uMDEuMi0uMDQuMjktLjA0LjE3LjAyLjI4LjE4LjMyLjA4LjAxLjE0IDAgLjE4LS4wN2EzIDMgMCAwIDEgLjI3LS4zbC4wNi0uMDJjLjA2IDAgLjA2LjA0IDAgLjEyYTU3LjI3IDU3LjI3IDAgMCAxLS4zMS4yNy41Ni41NiAwIDAgMC0uMTIuMTNsLS4xLjE1LS4yNy4xdi0uMDJjMC0uMDEuMDEtLjAyLjAzLS4wMiAwIDAgLjAyIDAgLjAzLS4wMnYtLjAxYTEuNzUgMS43NSAwIDAgMS0uMDUtLjdsLjA2LS4yMmMuMDMtLjA5LjA0LS4xNy4wNC0uMjZhLjM1LjM1IDAgMCAwLS4wNi0uMjEuMDcuMDcgMCAwIDAtLjA2LS4wM2MtLjExIDAtLjE4LjA1LS4yMS4xM2EuNzYuNzYgMCAwIDEtLjEzLjIyLjkxLjkxIDAgMCAwLS4xMy4yNGMtLjA2LjE2LS4xNC4zMS0uMjMuNDQgMCAuMDItLjA0LjA1LS4wOS4xYS4xOC4xOCAwIDAgMC0uMDUuMTRjMCAuMDIgMCAuMDQtLjAyLjA2YS4xOS4xOSAwIDAgMC0uMDQuMTNjMCAuMDIuMDEuMDMuMDQuMDJoLjA1YTEuNjUgMS42NSAwIDAgMCAuMzkuMTcuMDUuMDUgMCAwIDEgLjAyLjA0di4wMmExLjEgMS4xIDAgMCAwLS4xLjU3Yy4wMi4yMi4wNy40LjE1LjU1LjAxLjAyLjAzLjA0LjA2LjA1LjAzLjAxLjA0IDAgLjA0LS4wMmwuMDEtLjA3LjE3LjI3Yy0uMTYuMjYtLjAzLjQ5LjA4LjcyYS4xMS4xMSAwIDAgMS0uMDEuMTEgMSAxIDAgMCAxLS4zNy4zMWMtLjEyLjA2LS4yMyAwLS4zLS4wOWwtLjA1LS4wM2gtLjA3Yy0uMDYuMDMtLjEuMDItLjEzLS4wNS0uMDgtLjI2LS4xNi0uNTMtLjIzLS44MmEyLjYyIDIuNjIgMCAwIDEgLjEtMS41NmMuMDYtLjEzLjEtLjI3LjEyLS40MmEyLjY2IDIuNjYgMCAwIDEgLjItLjYuMS4xIDAgMCAwIC4wMy0uMDZjMC0uMDQuMDItLjA4LjA4LS4xMi4xNi0uMDcuMjctLjIuMy0uMzhhLjEuMSAwIDAgMSAuMDQtLjA1Yy4xMy0uMTIuMjItLjE3LjI5LS4xOC4yOC0uMDMuNC4xLjQuMzlaIiBmaWxsPSIjRUZFMkFEIi8+PHBhdGggZD0iTTYuMDQgNi4yNWMtLjMtLjA0LS4zOC0uMjEtLjI2LS41Mi4wNi0uMDMuMS0uMDguMTQtLjE0aC4wMnYuMDJjLS4xMi4yMy0uMS40NS4xLjY0WiIgZmlsbD0iI0ZDRjlGNSIvPjxwYXRoIGQ9Ik01LjIzIDcuMTVhLjEzLjEzIDAgMCAwLS4wNi4wNy4zMi4zMiAwIDAgMC0uMS4xN2MuMDEtLjEtLjA1LS4xLS4xNiAwLS4xNS4xMi0uMi4zNy0uMi41NWExLjEgMS4xIDAgMCAxIC4xLS42LjA1LjA1IDAgMCAwLS4wMS0uMDNsLS4wMi0uMDFhMS42NSAxLjY1IDAgMCAxLS4zNy0uMTYuMDUuMDUgMCAwIDAtLjA1IDBjLS4wMyAwLS4wNCAwLS4wNC0uMDIgMC0uMDUuMDEtLjEuMDQtLjEzYS4wOS4wOSAwIDAgMCAuMDItLjA2YzAtLjA2LjAyLS4xLjA1LS4xNGwuMS0uMWMuMDgtLjEzLjE2LS4yOC4yMi0uNDQuMDQtLjEuMDgtLjE3LjEzLS4yNC4wNi0uMDYuMS0uMTQuMTMtLjIyLjAzLS4wOC4xLS4xMy4yLS4xMy4wMyAwIC4wNSAwIC4wNy4wMy4wNC4wNi4wNi4xMy4wNi4yIDAgLjEtLjAxLjE4LS4wNC4yN2wtLjA2LjIyYTEuNzUgMS43NSAwIDAgMCAuMDUuNzFjLS4wMS4wMi0uMDIuMDItLjAzLjAyLS4wMiAwLS4wMyAwLS4wMy4wMnYuMDJaIiBmaWxsPSIjRkFGMkNEIi8+PHBhdGggZD0iTTUuNzQgNS43YzAgLjAyLjAxLjAzLjA0LjAzLS4xMi4zLS4wNC40OC4yNi41MWwuMjYtLjA2YS4xLjEgMCAwIDAtLjAzLjA1LjQ4LjQ4IDAgMCAxLS4yNC4xNWwtLjA2LjAxYy0uMjQgMC0uMzUtLjI2LS4zNi0uNDZsLjAxLS4wNGMuMDYtLjA2LjEtLjEyLjEyLS4xOFoiIGZpbGw9IiM1QjRGNDAiLz48cGF0aCBkPSJNNi4yOCA1LjczYy0uMDIuMDMtLjAyLjA3IDAgLjA4LjAyLjAyLjA2IDAgLjA4LS4wMy4wMy0uMDMuMDItLjA2IDAtLjA4LS4wMi0uMDItLjA2IDAtLjA4LjAzWiIgZmlsbD0iI0ZDRjlGNSIvPjxwYXRoIGQ9Ik04LjEyIDcuMzRjLS4wNSAwLS4wNy4wMS0uMDcuMDYgMCAuMTQgMCAuMjctLjA0LjM5YS43Ni43NiAwIDAgMC0uMDMuMmMwIC4xNC0uMDUuMjQuMDIuNHYuMzRhNy40NSA3LjQ1IDAgMCAwIC4zNi40NmMuMTQuMTQuMTUuMjkuMDMuNDMtLjEuMTItLjE3LjIzLS4zMy4yNi0uMjMuMDUtLjQzLjEzLS42MS4yNC0uMTMuMDktLjI5LjEyLS40My4xNy0uMS4wMy0uMS4wNyAwIC4xMWwuMzIuMTRjLjMuMTMuNi4xNC45My4wOC4yMS0uMDQuMy0uMjYuNDEtLjQyLjEtLjE1LjMxLS4xNS40Ni0uMjguMS0uMS4yNC0uMTkuNC0uMjdhLjEuMSAwIDAgMCAuMDQtLjA2Yy4wNC0uMS4wOC0uMjIuMTktLjI5LjI2LS4xNi41LS4yOC43NS0uMzYuMjItLjA4LjQxLS4yLjYzLS4zYS4wNS4wNSAwIDAgMSAuMDcuMDJjLjAyLjAzLjAyLjA1IDAgLjA4LS4xMS4xOC0uMi4zOC0uMzguNTJsLS41LjRjLS4xLjEtLjEuMjgtLjEyLjQtLjAxLjEzLS4wOS4yNC0uMjIuMzRsLS40LjI1Yy0uMDguMDQtLjA5LjEtLjAyLjE1YS4xLjEgMCAwIDAgLjA3LjAzLjEuMSAwIDAgMSAuMDcuMDJsLjIuMTd2LjAyYS4wNC4wNCAwIDAgMSAwIC4wNGwtLjAyLjAxYy0uMjUuMDUtLjUuMS0uNi4zNmEuMDcuMDcgMCAwIDAgLjAzLjA4bC4wMy4wMmMuMDQgMCAuMDggMCAuMTMtLjAyLjE4LS4xLjQtLjE3LjYtLjEuMTIuMDUuMjQuMDguMzYuMDhzLjIzLjA0LjMzLjEyYy4wMi4wMS4wNC4wMi4wNy4wMWEuMi4yIDAgMCAwIC4xMy0uMDZjLjA1LjA3LjE4LjEuMzcuMDguMDcgMCAuMTItLjA1LjE4LS4wOGwuNTgtLjM1Yy4wNy0uMDUuMTMtLjA2LjItLjAxaC4wNWMuMi0uMDcuMjQtLjIyLjM0LS4zOGEuMTUuMTUgMCAwIDEgLjEtLjA3Yy4yNC0uMDYuNC0uMjguNDctLjVhLjY0LjY0IDAgMCAxIC4xNC0uMjNjLjA4LS4wOS4xMi0uMi4xMy0uMzMgMC0uMDMgMC0uMDUtLjAzLS4wNy0uMDUtLjA1LS4wNi0uMS0uMDUtLjE3YS40My40MyAwIDAgMC0uMDYtLjM4LjEuMSAwIDAgMS0uMDMtLjA2bC4wMS0uNzEuMi42YTIuOTMgMi45MyAwIDAgMSAuMjIgMS44Yy0uMDQtLjEtLjA5LS4wOC0uMTQuMDgtLjA1LjE3LS4wNC4zLS4xMy40NmEuOTcuOTcgMCAwIDAtLjEuNGwtLjA2LjZjMCAuMS0uMDYuMTgtLjE2LjIzYS4xLjEgMCAwIDAtLjA1LjA1Yy0uMDQuMDgtLjA1LjE1LS4xMi4yMi0uMTMuMTItLjQyLjM4LS40Ny41Ni0uMDIuMS0uMS4xNC0uMTkuMTguMDYtLjA3LjEtLjE1LjEyLS4yNC4wMi0uMTQuMDQtLjIyLjA2LS4yNWwuMTUtLjNjLjE5LS4zLjEyLS42Ni4wOC0xYS4wOS4wOSAwIDAgMC0uMDMtLjA1LjEuMSAwIDAgMC0uMDYtLjAzLjkzLjkzIDAgMCAwLS40NC4wN2MtLjI1LjEtLjQ2LjE4LS42OC4zOC0uMTYuMTQtLjI2LjM1LS40My40Ni0uMi4xMy0uNDcuMjctLjgyLjQtLjM2LjE0LS43Mi4yOC0xLjA4LjRsLS4zLjE0Yy0uMzUuMi0uNTEuNTYtLjkxLjY1LS4xMi4wMy0uMjQuMDgtLjM1LjE2LS4xNS4xLS4zMy4xMy0uNS4xNi0uMi4wNC0uMzguMTItLjU5LjE2bC0uNTctLjJjLS4yMS0uMDctLjQtLjE1LS41NS0uMjQtLjIzLS4xMi0uNDMtLjI1LS42LS4zNmE0LjI4IDQuMjggMCAwIDEtLjctLjU3Yy0uMjItLjIxLS4yMi0uNDktLjA4LS43NC4xLS4yOC4xNi0uNTMuMTctLjc2bC4wNi0uOGMwLS4wNy4wNC0uMi4xLS40LjA4LS4yMy4wOS0uNDcuMDMtLjcyIDAtLjAzIDAtLjA0LjAzLS4wNWguMDVjLjA4LjA5LjE5LjE1LjMuMWExIDEgMCAwIDAgLjM4LS4zMi4xMS4xMSAwIDAgMCAuMDEtLjFjLS4xLS4yNC0uMjQtLjQ3LS4wOC0uNzMgMCAuMDUgMCAuMS0uMDIuMTUtLjAxLjA1IDAgLjEuMDIuMTRsLjAyLjA1Yy4wMi4xMS4xLjIuMi4yNi4xNS4wOC4zLjE0LjQ2LjE5LjE0LjA0LjI4LS4wMS40LS4xNi4xIDAgLjI3LjA0LjUuMTEuMTMuMDQuMjUgMCAuMzQtLjA5YTIuNzUgMi43NSAwIDAgMCAxLjAzLS4zdi0uMDRBLjAzLjAzIDAgMCAwIDguMDkgOWEuMDMuMDMgMCAwIDAtLjAzIDBjLS4yMS4wNy0uNDQuMTEtLjY4LjEyLS4wOSAwLS4xNy4wMy0uMjYuMDYtLjE1LjA1LS40NC0uMDgtLjU3LS4xNS0uMDEtLjEuMDItLjE2LjEtLjIxYS4xMi4xMiAwIDAgMCAuMDQtLjA1Yy4wMi0uMDUuMDYtLjA3LjExLS4wNy4wNy4wMS4xNyAwIC4zMi0uMDMuMS0uMDIuMTQtLjA2LjE0LS4xMnYtLjA0YS4wOC4wOCAwIDAgMC0uMDQtLjAzLjE4LjE4IDAgMCAxLS4wNy0uMDhjLS4wMS0uMDEgMC0uMDIuMDEtLjAzaC4wNGMuMDIuMDQuMDQuMDYuMDguMDcuMDIuMDEuMDQgMCAuMDctLjAyLjA3LS4wNS4xLS4xNC4xLS4yNmEuNS41IDAgMCAxIC4yMy0uMmMuMDMgMCAuMDQtLjAyLjAzLS4wNWEuNzIuNzIgMCAwIDAtLjE2LS4zM2MtLjA4LS4xLS4yMS0uMTMtLjMyLS4yMS0uMTMtLjEtLjMxLS4wOS0uNDYtLjA0LS4wMSAwLS4wMiAwLS4wMi4wMnMwIC4wMy0uMDIuMDNhLjIuMiAwIDAgMC0uMS4wM2MtLjEtLjEtLjIxLS4xOC0uMzUtLjI1LS4yMy0uMTQtLjUyLS4xMi0uNzctLjEybC4xLS4xNWMuMDItLjA1LjA2LS4xLjExLS4xM2E1Ni40IDU2LjQgMCAwIDAgLjMxLS4yN2MuMDYtLjA4LjA2LS4xMiAwLS4xMi4xLS4wMi4xOC0uMDcuMjQtLjE1bC4yNS0uMjJoLjA1Yy4wNS4wNS4wNi4xLjAzLjE0YTIuNTUgMi41NSAwIDAgMC0uMjUuNDhjMCAuMDIgMCAuMDMuMDMuMDNhLjMuMyAwIDAgMCAuMTgtLjEyYy4xLS4xMy4yNS0uMjQuNDUtLjM0bC4wNS4wMS4wMi4wNGMuMDEuMDYuMDMuMDYuMDcuMDIuMS0uMTMuMjItLjI3LjM4LS40LjAyLS4wMS4wMy0uMDEuMDUuMDEuMDQuMDkuMDUuMTcgMCAuMjYtLjA2LjEtLjExLjIyLS4xNi4zNCAwIC4wMi0uMDIuMDMtLjA0LjAzaC0uMDRhLjA0LjA0IDAgMCAwLS4wNC4wNmwuMDcuMTdhLjQuNCAwIDAgMSAuMDIuMDlsLjAyLjE4YzAgLjAyLjAxLjAzLjAzLjA0YS4wNy4wNyAwIDAgMCAuMTEtLjAybC4xMi0uM2EuMDYuMDYgMCAwIDEgLjA1LS4wMy4wNi4wNiAwIDAgMSAuMDUuMDNjLjEuMTYuMTYuMzMuMTcuNTEgMCAuMDEgMCAuMDIuMDIuMDNsLjAzLjAyLjEzLjA1WiIgZmlsbD0iI0UwQzA2RSIvPjxwYXRoIGQ9Ik05LjUyIDYuNDRhLjI5LjI5IDAgMCAxLS4xNC4wM2MtLjAyIDAtLjA0IDAtLjA2LjAyLS4wOC4wNy0uMTQuMTYtLjI0LjJhLjU1LjU1IDAgMCAxLS4zOS4wM2MtLjEyLS4xOC0uMTMtLjM1LS4wNC0uNTFhLjAzLjAzIDAgMCAxIC4wMy0uMDIuMDMuMDMgMCAwIDEgLjAyIDBjLjAzLjA0LjA3LjA2LjExLjA2LjA1IDAgLjA2LS4wMS4wNC0uMDUtLjEzLS4zLS40NC4wMy0uNS4xNS0uMDYuMTUtLjAxLjI4LjE2LjRsLjAxLjAydi4wNWwtLjA0LjAxYy0uMTMtLjAzLS4zMi0uMDUtLjQtLjE3YS42Ny42NyAwIDAgMS0uMDgtLjJjMC0uMDMgMC0uMDUuMDItLjA3bC4yOC0uMjUuMzEtLjJjLjI0LS4wNi40My0uMDMuNTcuMDhhMS45NSAxLjk1IDAgMCAxIC4zNC4zOHYuMDRaIiBmaWxsPSIjMEIwODAyIi8+PHBhdGggZD0iTTUuNiA1LjkzYy4wMi4yLjEzLjQ1LjM3LjQ2YTMgMyAwIDAgMC0uMjcuMzFjLS4wNC4wNi0uMS4wOC0uMTguMDctLjE2LS4wNC0uMjItLjE1LS4xOC0uMzIuMDMtLjEuMDQtLjIuMDQtLjMgMC0uMDYuMDQtLjEuMS0uMTNhLjQzLjQzIDAgMCAwIC4xMy0uMVoiIGZpbGw9IiNFMUIwNTEiLz48cGF0aCBkPSJNOC43IDYuNzJjLS4wMy4wMy0uMDkuMDQtLjIuMDMtLjE2LS4xMi0uMjEtLjI1LS4xNC0uNC4wNS0uMTIuMzYtLjQ1LjUtLjE1LjAxLjA0IDAgLjA2LS4wNS4wNWEuMTUuMTUgMCAwIDEtLjEtLjA1LjAzLjAzIDAgMCAwLS4wMy0uMDEuMDMuMDMgMCAwIDAtLjAzLjAyYy0uMS4xNi0uMDguMzMuMDQuNTFaIiBmaWxsPSIjRkNGOUY1Ii8+PHBhdGggZD0iTTEyLjAzIDguMjVhMi4wNSAyLjA1IDAgMCAwLS40My0uMDNoLS40M2MtLjMtLjAyLS41Ny4wMi0uODQuMTNhMTEuMzIgMTEuMzIgMCAwIDAtMS4wNS40OGMtLjA0IDAtLjA4IDAtLjExLS4wMmEuNzYuNzYgMCAwIDAtLjU0LS4wNS4xLjEgMCAwIDEtLjA5IDAgLjM3LjM3IDAgMCAxLS4xMy0uMTcuMTMuMTMgMCAwIDAtLjEzLS4wOGMtLjEzIDAtLjIyLS4wMy0uMjgtLjEyLS4wNy0uMTYtLjAyLS4yNi0uMDItLjQgMC0uMDcuMDEtLjE0LjAzLS4yLjAzLS4xMi4wNC0uMjUuMDQtLjQgMC0uMDQuMDItLjA2LjA3LS4wNWwuNTcuMDJjLjE4IDAgLjMuMDQuNDMtLjFhLjE1LjE1IDAgMCAxIC4wNi0uMDRjLjA5LS4wMy4xNy0uMDYuMjQtLjExYTIgMiAwIDAgMCAuNTQtLjY1LjEuMSAwIDAgMSAuMDktLjA1Yy4yMi4wMy40My4wMi42NC0uMDJoLjA0bC4wMi4wNHYuMDNjLjAyLjAzLjA0LjA0LjA3LjA0bC4xNi0uMDEuMDguMDEuMi4xYy4wNC4wMi4wNi4wMi4xLjAyYS4wMy4wMyAwIDAgMCAuMDEtLjAydi0uMDNsLS4wOS0uMTN2LS4wM2EuMDMuMDMgMCAwIDEgLjAzLS4wMWguMjRjLjAzIDAgLjA0LjAyLjA0LjA1bC0uMDQuMTZjMCAuMDEgMCAuMDIuMDIuMDJoLjAyYS43LjcgMCAwIDAgLjA5LS4xNnYtLjAxYS4wMy4wMyAwIDAgMSAuMDQgMGguMDFjLjAzLjA0LjA1LjA4LjA0LjEzIDAgLjAyIDAgLjAzLjAyLjA0bC4xNS4xN2MuMDIuMDEuMDIuMDMuMDEuMDUtLjA2LjEtLjA0LjIuMDYuM2wuMDEuMDRhLjIuMiAwIDAgMS0uMDMuMDhjLS4wNy4wOS0uMDEuMjMuMDYuMjkuMDIuMDEuMDIuMDMgMCAuMDRhLjUuNSAwIDAgMC0uMS4yNmMwIC4wMyAwIC4wNS4wMy4wNmwuMS4wNi4wMy4wNmMwIC4wOC0uMDMuMTUtLjA4LjIxWiIgZmlsbD0iI0ZBRjJDRCIvPjxwYXRoIGQ9Ik05LjUyIDYuNDRjMCAuMDMtLjAyLjA2LS4wNC4wOS0uMTMuMTMtLjI4LjMtLjQ2LjM2LS4yMS4wNi0uMzUtLjAyLS41NC0uMDVhLjEuMSAwIDAgMCAuMDMtLjAyYy4wMi0uMDEuMDItLjAzLjAxLS4wNWwtLjAxLS4wMmMuMSAwIC4xNiAwIC4xOC0uMDMuMTQuMDQuMjcuMDMuNC0uMDMuMS0uMDQuMTUtLjEzLjIzLS4yYS4wOS4wOSAwIDAgMSAuMDYtLjAyYy4wNSAwIC4xLS4wMS4xNC0uMDNaTTUuNSA3LjA1Yy4yNiAwIC41NS0uMDIuNzguMTJsLS4wOC4wNWMtLjA0LjEtLjEuMTMtLjIuMWExLjY0IDEuNjQgMCAwIDAtLjcyLS4wNmMtLjAzIDAtLjA3IDAtLjEtLjA0IDAtLjAyLjAyLS4wNC4wNS0uMDdsLjI4LS4xWiIgZmlsbD0iIzVCNEY0MCIvPjxwYXRoIGQ9Ik02LjI4IDcuMTdjLjE0LjA3LjI1LjE1LjM1LjI1bC4wMy4wNmMtLjAzLjE1LS4xNC40Mi0uMy41YS4xMy4xMyAwIDAgMC0uMDYuMDYuMTMuMTMgMCAwIDEtLjA2LjA2bC0uMzEuMmMtLjExLjA4LS4yNy4xMS0uMzguMDUtLjE3LS4xLS4zMS0uMjQtLjQyLS40MnYtLjExYy4wMi0uMDIuMDUtLjAyLjA3IDAgLjA0LjAyLjA3LjAyLjEgMCAuMS0uMDIuMS0uMDUgMC0uMDdhLjUyLjUyIDAgMCAxLS4yMS0uMTEuNDguNDggMCAwIDEtLjAxLS4yNWMwLS4wNi4wNC0uMTEuMS0uMTcuMDMuMDMuMDcuMDUuMS4wNC4yNC0uMDMuNDgtLjAyLjcyLjA2LjEuMDMuMTYgMCAuMi0uMWwuMDgtLjA1WiIgZmlsbD0iIzBCMDgwMiIvPjxwYXRoIGQ9Ik03LjQ2IDguMTdjMC0uMDItLjAyLS4wNS0uMDctLjA4LS4wMiAwLS4wMy0uMDItLjAyLS4wNS4wMi0uMDcgMC0uMTMtLjA2LS4xOGwtLjI2LS4yOWEuMzguMzggMCAwIDAtLjI2LS4xM2MtLjAzIDAtLjA1LjAyLS4wNC4wNmwtLjEtLjAyLS4wMi0uMDZhLjIuMiAwIDAgMSAuMS0uMDNjLjAxIDAgLjAyLS4wMS4wMi0uMDMgMC0uMDEgMC0uMDIuMDItLjAyLjE1LS4wNS4zMy0uMDcuNDYuMDQuMS4wOC4yNC4xMS4zMi4yMS4wOC4xLjE0LjIuMTYuMzMgMCAuMDMgMCAuMDUtLjAzLjA2YS41LjUgMCAwIDAtLjIyLjJaIiBmaWxsPSIjRUZFMkFEIi8+PHBhdGggZD0iTTUuMDcgNy4zOWMtLjAxLjA5IDAgLjE3LjAyLjI1bC4wNC4yN3YuMDJjLS4yMi4xNi0uMjcuMzQtLjE1LjUydi4wN2MtLjAxLjAyLS4wMi4wMy0uMDQuMDJhLjEyLjEyIDAgMCAxLS4wNy0uMDUgMS40NyAxLjQ3IDAgMCAxLS4xNS0uNTVjMC0uMTguMDQtLjQzLjE5LS41NS4xMS0uMS4xNy0uMS4xNiAwWk03LjQ2IDguMTdjMCAuMTItLjA0LjItLjExLjI2LS4wMy4wMi0uMDUuMDMtLjA3LjAyLS4wNCAwLS4wNi0uMDMtLjA4LS4wN2gtLjA0Yy0uMDIgMC0uMDIuMDItLjAxLjAzLjAxLjAzLjA0LjA2LjA3LjA4bC4wMy4wMy4wMS4wNGMwIC4wNi0uMDUuMS0uMTQuMTJhLjgyLjgyIDAgMCAxLS4zMi4wMy4yOC4yOCAwIDAgMS0uMTgtLjE0LjA5LjA5IDAgMCAxIDAtLjA2LjguOCAwIDAgMCAwLS4yM2MwLS4wOS4wNC0uMTcuMS0uMjNhLjA5LjA5IDAgMCAwIC4wMy0uMDZWNy41YzAtLjA0IDAtLjA2LjA0LS4wNi4xLjAyLjIuMDUuMjYuMTNsLjI2LjI5Yy4wNi4wNS4wOC4xMS4wNi4xOC0uMDEuMDMgMCAuMDQuMDIuMDUuMDUuMDMuMDguMDYuMDcuMDhaIiBmaWxsPSIjRkNGOUY1Ii8+PHBhdGggZD0iTTYuNjYgNy40OGMuMDQuMDIuMDcuMDMuMDkuMDJ2LjQ5bC0uMDMuMDZjLS4wNi4wNi0uMS4xNC0uMS4yM2EuOC44IDAgMCAxIDAgLjIzdi4wNmMuMDUuMDguMS4xMi4xOC4xNC0uMDUgMC0uMDkuMDItLjExLjA3IDAgLjAyLS4wMi4wNC0uMDQuMDVhLjIxLjIxIDAgMCAwLS4xLjJsLS4zNC0uMTItLjM0LS4xM2EuODQuODQgMCAwIDAtLjYgMGMtLjA1LjEtLjA0LjIuMDIuMjhhLjQuNCAwIDAgMCAuMi4xNGMuMTEuMDIuMzEuMDUuMzkuMTMuMDEuMDIuMDMuMDMuMDYuMDNoLjNjLS4xMy4xNC0uMjcuMTktLjQuMTVhMi40MiAyLjQyIDAgMCAxLS40Ny0uMi4zOC4zOCAwIDAgMS0uMi0uMjUuMTYuMTYgMCAwIDAtLjAyLS4wNS4xNy4xNyAwIDAgMS0uMDItLjE0bC4wMi0uMTUtLjE3LS4yN2MtLjEyLS4xOC0uMDctLjM2LjE1LS41Mi4xLjE4LjI1LjMyLjQyLjQyLjExLjA2LjI3LjAzLjM4LS4wNWwuMzEtLjJhLjEzLjEzIDAgMCAwIC4wNi0uMDYuMTMuMTMgMCAwIDEgLjA3LS4wN2MuMTQtLjA3LjI2LS4zNC4yOS0uNDlaTTUuMDkgNy42NGMuMDguMDYuMTUuMS4yMS4xLjEuMDMuMS4wNiAwIC4wOS0uMDMuMDEtLjA2IDAtLjEtLjAxLS4wMy0uMDItLjA1LS4wMi0uMDYgMC0uMDEuMDItLjAyLjA1LS4wMS4wOWwtLjA0LS4yN1oiIGZpbGw9IiM5NjhDNzgiLz48cGF0aCBkPSJNNi4wNCA3Ljk2Yy4wOS4wNC4xNy4wNS4xOC4wMyAwLS4wMi0uMDYtLjA3LS4xNS0uMS0uMS0uMDQtLjE3LS4wNS0uMTgtLjAzLS4wMS4wMi4wNi4wNy4xNS4xWiIgZmlsbD0iIzVCNEY0MCIvPjxwYXRoIGQ9Ik0xMi4wMyA4LjI1YS41OC41OCAwIDAgMC0uMi41NXYuMDRsLS4xMS4xOWMtLjAyLjAyLS4wNC4wMy0uMDYgMGwtLjAzLS4wMi0uMDItLjAxaC0uMDNjLS4wNC4wMi0uMDYuMDUtLjA1LjA5IDAgLjExLjAzLjIzLjA1LjM1YS4xNy4xNyAwIDAgMS0uMDUuMTVjLS4xMy4xMy0uNDEuMzctLjQyLjU2IDAgLjA4LS4wMi4xNC0uMDYuMThhLjQ4LjQ4IDAgMCAxLS4yLjEzdi4wM2MuMDEuMDIuMDMuMDMuMDYuMDMuMTQtLjAzLjI3LS4xLjM5LS4yMWguMDJsLjAxLjAxdi4wMmwtLjE4LjN2LjA0YzAgLjA3IDAgLjE0LS4wMi4yYS4wNC4wNCAwIDAgMCAuMDIuMDVoLjA1YS40LjQgMCAwIDEgLjEzLS4wMy4wNS4wNSAwIDAgMSAuMDYuMDQuMzQuMzQgMCAwIDEtLjEyLjMxYy0uMDkuMDgtLjE5LjItLjMuMzNhLjIuMiAwIDAgMS0uMTIuMDZsLS4wNy0uMDFhLjUyLjUyIDAgMCAwLS4zMy0uMTIuOTkuOTkgMCAwIDEtLjM3LS4wOGMtLjItLjA3LS40MSAwLS42LjFhLjE3LjE3IDAgMCAxLS4xMi4wMi4wOC4wOCAwIDAgMS0uMDUtLjA0LjA3LjA3IDAgMCAxIDAtLjA2Yy4wOC0uMjYuMzQtLjMxLjU5LS4zNmEuMDQuMDQgMCAwIDAgLjAzLS4wMy4wNC4wNCAwIDAgMC0uMDEtLjA0bC0uMi0uMTdhLjEuMSAwIDAgMC0uMDctLjAyLjEuMSAwIDAgMS0uMDctLjAzYy0uMDctLjA1LS4wNi0uMS4wMi0uMTVsLjQtLjI1Yy4xMy0uMS4yLS4yLjIyLS4zMy4wMi0uMTMuMDItLjMxLjEzLS40bC41LS40MWMuMTYtLjE0LjI2LS4zNC4zNy0uNTJhLjA3LjA3IDAgMCAwIDAtLjA4LjA1LjA1IDAgMCAwLS4wNy0uMDJjLS4yMi4xLS40LjIzLS42My4zLS4yNC4wOC0uNS4yLS43NS4zNi0uMTEuMDctLjE1LjE4LS4yLjNhLjEuMSAwIDAgMS0uMDQuMDUgMi41IDIuNSAwIDAgMC0uNC4yN2MtLjE0LjEzLS4zNC4xMy0uNDUuMjgtLjEuMTYtLjIuMzgtLjQuNDItLjM0LjA2LS42My4wNS0uOTQtLjA4bC0uMzMtLjE0Yy0uMS0uMDQtLjEtLjA4IDAtLjExLjE1LS4wNS4zLS4wOC40NC0uMTcuMTgtLjExLjM4LS4yLjYtLjI0LjE3LS4wMy4yNS0uMTQuMzQtLjI2LjEyLS4xNC4xLS4yOS0uMDMtLjQzQTcuNDUgNy40NSAwIDAgMSA4IDguNzN2LS4zNGMuMDYuMDkuMTUuMTMuMjguMTJhLjE0LjE0IDAgMCAxIC4xMy4wOGMuMDMuMDcuMDcuMTIuMTMuMTZhLjEuMSAwIDAgMCAuMDkuMDEuNzYuNzYgMCAwIDEgLjU0LjA1Yy4wMy4wMi4wNy4wMi4xLjAyLjA0IDAgLjA4LS4wMi4xLS4wMy4zLS4xNi42Mi0uMy45Ni0uNDUuMjctLjEuNTUtLjE1Ljg0LS4xM2guNDNjLjE0IDAgLjI5IDAgLjQzLjAzWiIgZmlsbD0iI0U3Q0Y5MCIvPjxwYXRoIGQ9Ik02LjU1IDkuMDRjLjEzLjA3LjQyLjIuNTcuMTUuMDktLjAzLjE3LS4wNi4yNi0uMDZhMi4zMSAyLjMxIDAgMCAwIC43LS4xMi4wMy4wMyAwIDAgMSAuMDIuMDJ2LjAyYS4wNS4wNSAwIDAgMS0uMDIuMDVjLS4yOC4xMi0uNDcuMTgtLjU3LjItLjIzLjAyLS4zNy4wNS0uNDQuMDdsLS4zMS0uMTQtLjMzLS4xYy0uNC0uMDctLjc4LS4xOS0xLjE2LS4zNS4yLS4wNy40LS4wNy42IDBhMTAwLjczIDEwMC43MyAwIDAgMCAuNjguMjZaIiBmaWxsPSIjMEIwODAyIi8+PHBhdGggZD0iTTUuMjcgOC43OGMuMzguMTYuNzcuMjggMS4xNi4zNi4xMy4wMi4yNC4wNi4zMy4xbC4zMS4xM2MtLjEuMS0uMi4xMy0uMzMuMDktLjI0LS4wNy0uNC0uMS0uNS0uMWgtLjNjLS4wMyAwLS4wNS0uMDEtLjA2LS4wMy0uMDgtLjA4LS4yOC0uMS0uMzktLjEzYS40LjQgMCAwIDEtLjItLjE0Yy0uMDYtLjA4LS4wNy0uMTctLjAyLS4yOFoiIGZpbGw9IiM1QjRGNDAiLz48cGF0aCBkPSJtMTIuMSAxMS4yMy0uNTcuMzVoLS4wN2wtLjAxLS4wM2EuMDQuMDQgMCAwIDEgMC0uMDRsLjI3LS4zOWMuMDQtLjA1LjA1LS4xLjA2LS4xNiAwLS4wMy0uMDItLjA1LS4wNS0uMDUtLjIgMC0uMTgtLjE3LS4yLS4zMiAwLS4wNi4wMi0uMTIuMDYtLjE1LjMtLjIzLjU0LS41Ljc0LS44LjE2LS4yNS40Mi0uMzguNjEtLjU4YS4wMy4wMyAwIDAgMSAuMDMtLjAxSDEzdi4wMmEuNy43IDAgMCAxLS4xNi40OWMtLjEzLjE1LS4xOS4zMS0uMy40N2EuMS4xIDAgMCAwLS4wMS4wN2MuMDQuMTkgMCAuMzQtLjEuNDZhLjgzLjgzIDAgMCAwLS4xNS4yMWMtLjA3LjE1LS4xMi4zLS4xNi40NloiIGZpbGw9IiNCODdDMjkiLz48cGF0aCBkPSJNNS4wOCAxMC41Yy0uMDYuMDEtLjA2LjA2IDAgLjE1bC4xLjFjLjMuMjUuNDYuNS44Ni42NWEuMS4xIDAgMCAxIC4wNi4wNmwuMDguMThjLjA0LjE1LjE0LjI3LjI4LjM5YS4wOC4wOCAwIDAgMCAuMDcuMDEuMDguMDggMCAwIDAgLjA1LS4wNGwuMDItLjAyYS4wNC4wNCAwIDAgMSAuMDYgMGMuMTkuMTYuMjYuNTcuMzIuODJsLjAxLjAzYS4wNi4wNiAwIDAgMCAuMDkgMGMuMTctLjE4LjI4LS4zOC4zMi0uNjMgMC0uMDIuMDItLjAzLjA1LS4wM2guMDJhLjAyLjAyIDAgMCAxIC4wMS4wMXYuMTFjMCAuMDMgMCAuMDQuMDMuMDRhMjQuNjIgMjQuNjIgMCAwIDAgLjItLjM2Yy4wMy0uMDguMS0uMTQuMi0uMi4yLS4wOS40LS4xNy41Ny0uM2EyLjQ5IDIuNDkgMCAwIDEgLjQ3LS4zLjAzLjAzIDAgMCAwLS4wMS0uMDNIOC45Yy4xNC0uMDYuMjQtLjEuMy0uMTQuMTUtLjEuMjEtLjA1LjE2LjEyLS4wMi4xLS4wNy4yMi0uMTIuMzNhLjQuNCAwIDAgMS0uMTguMTljLS4yMy4xMi0uMzcuMzMtLjYuNDMtLjI2LjEyLS40Ny4zMy0uNTUuNi0uMDguMjQtLjIzLjQ0LS4zNy42NS0uMTEuMTctLjQuNDItLjY0LjQ5YS45LjkgMCAwIDAtLjIxLjA5LjA1LjA1IDAgMCAxLS4wOC0uMDMuODguODggMCAwIDEtLjA2LS4yNGMtLjAzLS4zLS4xMi0uNi0uMjYtLjkyYS45LjkgMCAwIDAtLjItLjI4Yy0uMzItLjMtLjYzLS42Mi0uOTUtLjk1LS4xNC0uMTQtLjItLjMtLjMtLjQ3YTEuMzIgMS4zMiAwIDAgMS0uMS0uNzFsLjAyLS4wMmguMDVsLjI3LjIyWiIgZmlsbD0iI0UxQjA1MSIvPjxwYXRoIGQ9Im01LjA4IDEwLjUuMy4yMS4yLjE3Yy4yLjIxLjU4LjMuODcuMzguMTcuMDQuNC4wNS42Ny4wNWExMy4zMyAxMy4zMyAwIDAgMCAxLjgzLS4xNi4wMy4wMyAwIDAgMSAwIC4wM2gtLjAyYy0uMTUuMDgtLjMuMTctLjQ1LjI5LS4xNy4xMy0uMzguMjEtLjU3LjNhLjQyLjQyIDAgMCAwLS4yLjJsLS4xNi4zM2MwIC4wMi0uMDIuMDMtLjA0LjAzcy0uMDQtLjAxLS4wMy0uMDR2LS4xYS4wMi4wMiAwIDAgMC0uMDEtLjAyaC0uMDJjLS4wMyAwLS4wNSAwLS4wNS4wMy0uMDQuMjUtLjE1LjQ1LS4zMi42M2wtLjAzLjAyYS4wNi4wNiAwIDAgMS0uMDctLjA1Yy0uMDYtLjI1LS4xMy0uNjYtLjMyLS44MmwtLjAzLS4wMUg2LjZsLS4wMi4wM2EuMDguMDggMCAwIDEtLjA1LjA0LjA4LjA4IDAgMCAxLS4wNy0uMDEuODUuODUgMCAwIDEtLjI4LS4zOSAxLjg5IDEuODkgMCAwIDAtLjA4LS4xOC4xLjEgMCAwIDAtLjA2LS4wNmMtLjQtLjE1LS41Ni0uNC0uODYtLjY1YS41OC41OCAwIDAgMS0uMS0uMWMtLjA2LS4wOS0uMDYtLjE0IDAtLjE1WiIgZmlsbD0iI0I4N0MyOSIvPjxwYXRoIGQ9Ik0xMy44IDEwLjcyYy4wMi4xNS4wNC4yOS4wOC40Mi4wNC4yLjAzLjM3LjA0LjU3IDAgLjIuMDcuNDUuMDguNjh2LjQ2Yy0uMDIuMjgtLjU4LjcyLS44OC45Ny0uMjUuMjItLjQ5LjMxLS43MS4yOS0uMTItLjA4LS4zLS4wOC0uNTEgMC0uMDcuMDItLjA3IDAtLjAzLS4wNC4xLS4xLjE3LS4yMS4yMS0uMzZsLjA1LS4wNmEuOTUuOTUgMCAwIDEgLjI1LS4xNWMuMDktLjA0LjE3LS4wOS4yLS4xOC4wNC0uMTguMzMtLjQ0LjQ2LS41Ni4wNy0uMDcuMDgtLjE0LjEyLS4yMmEuMS4xIDAgMCAxIC4wNS0uMDVjLjEtLjA1LjE1LS4xMy4xNi0uMjNsLjA1LS42YS45Ni45NiAwIDAgMSAuMTEtLjRjLjEtLjE2LjA4LS4zLjEzLS40Ni4wNS0uMTYuMS0uMTguMTQtLjA4WiIgZmlsbD0iI0M4OTUzOSIvPjxwYXRoIGQ9Ik0xMi4zOCAxMy41YS45NC45NCAwIDAgMC0uMjUuMTUuMTMuMTMgMCAwIDAtLjA1LjA2LjkyLjkyIDAgMCAxLS4yLjM2Yy0uMDUuMDUtLjA1LjA2LjAyLjA0LjIyLS4wOC4zOS0uMDguNTEgMCAwIC4wNy0uMDIuMTMtLjA3LjJhLjM2LjM2IDAgMCAxLS4xNy4xYy0uMjguMDktLjU0LjItLjc3LjMxLS4xOC4wOS0uMzcuMS0uNTYuMTUtLjA2LjAyLS4xMiAwLS4xNy4wNWEuMDkuMDkgMCAwIDEtLjA3LjAyIDEuNCAxLjQgMCAwIDAtLjQyLjAxYy0uMTIuMDItLjI1LjA0LS4zNy4wNC0uODMgMC0xLjcuMDMtMi41NC0uMDVhLjc2Ljc2IDAgMCAxLS4zMy0uMSAxMy4zIDEzLjMgMCAwIDEtLjM0LS4yM2MuMi0uMDQuNC0uMTIuNTgtLjE2LjE4LS4wMy4zNi0uMDYuNTEtLjE2LjExLS4wOC4yMy0uMTMuMzUtLjE2LjQtLjA5LjU2LS40Ni45LS42NS4xLS4wNS4yLS4xLjMtLjEzbDEuMS0uNGMuMzQtLjE0LjYxLS4yOC44MS0uNC4xNy0uMTIuMjctLjMzLjQzLS40Ny4yMi0uMi40My0uMjcuNjgtLjM4YS45My45MyAwIDAgMSAuNDQtLjA3LjEuMSAwIDAgMSAuMDYuMDNjLjAyLjAxLjAzLjAzLjAzLjA1LjA0LjM0LjExLjctLjA4IDFsLS4xNS4zYy0uMDIuMDMtLjA0LjExLS4wNi4yNWEuNTMuNTMgMCAwIDEtLjEyLjI0WiIgZmlsbD0iI0U3Q0Y5MCIvPjwvc3ZnPg=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCVVV.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.648Z","timestamp":1785126258648,"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 /crypto/XTVCVVV.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 04:24:18 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: \"0cbc428ab25b474cf78e1c9b6351561c\"\r\nlast-modified: Fri, 03 Oct 2025 20:27:05 GMT\r\ncdn-cachedat: 10/03/2025 22:59:36\r\nx-amz-id-2: CCKn0Gf0PXpVnCJEVXsdyfEeYUnE0QamY2WUUuaWr2QOQJjiAX0Fos3ZU1TWUm1o2IxyjlhOBsw=\r\nx-amz-request-id: ZJZBPMDD943YMKHS\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 0cbc428ab25b474cf78e1c9b6351561c\r\ncdn-proxyver: 1.37\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 5ea240fa0d99ab0a9bc629198f736f31\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":941,"size_decoded":1398,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (941), with no line terminators","md5":"0cbc428ab25b474cf78e1c9b6351561c","sha1":"c90c978286c0230762838cb7c820c97f65700839","sha256":"19c918d6a4ee0211374045c9751f0008de14d782ec58a21934dd687d168f85e0","sha512":"e3797f37c0f8caaa918f8f3a7009899ef531907bca148031c374625acb9cfd00169a620fd5e05f63d8a91350d42d716d806b0ae8ddb10e2c49a0627800f6c4af","ssdeep":"","tlshash":"bd11e1f3668c510d441fd29cc7345460172e58dcb3eb4de5684d93e0680f478d86302a","first_seen":"2026-05-26T19:44:49.180647Z","last_seen":"2026-07-27T07:05:43.312792Z","times_seen":185,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJtOS44OCA5LjcuMzktLjMzLjQuMzQtLjM4LjMzLjQ2LjRhMiAyIDAgMSAxLS4zNi4zOGwtLjUtLjQzLS40Mi4zNS0uNC0uMzUuNC0uMzVMNi4xNSA3LjJsLTEgLjg2LS4wNC0uOS0xLjA2LS4wMyAxLjAyLS44N0w0IDUuMzUgNC40IDVsNS40OCA0LjdabTIuMTIuNjNhLjc2Ljc2IDAgMCAwLS43NC45My43Ni43NiAwIDEgMC0uMTcgMS41Yy4wNiAwIC4xMi0uMDEuMTctLjAzYS43NS43NSAwIDAgMCAuNzQuOTQuNzYuNzYgMCAwIDAgLjc0LS45NGMuMDUuMDIuMS4wMy4xNy4wM2EuNzYuNzYgMCAxIDAtLjE3LTEuNS43Ni43NiAwIDAgMC0uNzQtLjkzWiIgZmlsbD0iI0RCMzMwNCIvPjxwYXRoIGQ9Im04LjEyIDkuNy0uMzktLjM0LS40LjM1LjM4LjMzLS40Ni40YTIgMiAwIDEgMCAuMzYuMzhsLjUtLjQzLjQyLjM1LjQtLjM1LS40LS4zNSAzLjMzLTIuODUgMSAuODYuMDQtLjkgMS4wNi0uMDMtMS4wMi0uODcgMS4wNi0uOS0uNC0uMzUtNS40OCA0LjdaTTYgMTAuMzJhLjc2Ljc2IDAgMCAxIC43NC45My43Ni43NiAwIDEgMSAwIDEuNDdsLjAyLjE4YS43Ni43NiAwIDAgMS0xLjUyIDBsLjAyLS4xOGEuNzYuNzYgMCAxIDEtLjE3LTEuNWwuMTcuMDNhLjc2Ljc2IDAgMCAxIC43My0uOTNaIiBmaWxsPSIjREIzMzA0Ii8+PHBhdGggZD0iTTExIDQuNTV2MS45TDkuMTUgOGgtLjNMNyA2LjQ1di0xLjlMNy42NSA0IDkgNS4xIDEwLjM1IDRsLjY1LjU1Wk03LjggNi4ybC44LjhWNS40N2wtLjgtLjhWNi4yWm0xLjYtLjczVjdsLjgtLjhWNC42N2wtLjguOFoiIGZpbGw9IiNEQjMzMDQiLz48L3N2Zz4="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCDASH.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.657Z","timestamp":1785126258657,"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 /crypto/XTVCDASH.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 04:24:18 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: \"09c6b8d308ddbbe2842956613924e9ee\"\r\nlast-modified: Wed, 24 Jan 2024 09:27:55 GMT\r\ncdn-cachedat: 08/09/2025 14:29:30\r\nx-amz-id-2: C/WfwpksB8zCuxdIX6OeCNrnnSKvC3XDVfpeP4Zaun5bs04DYdVtko0CBJKv/IuBYJEzawNxmuc=\r\nx-amz-request-id: XEDT0E94Y85NRS8P\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 09c6b8d308ddbbe2842956613924e9ee\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: 99bd13af3e95be9247dd0a1377d6285e\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":645,"size_decoded":1329,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (645), with no line terminators","md5":"09c6b8d308ddbbe2842956613924e9ee","sha1":"cd0dfbe4dd2a848e97401d0c9a2ae1412f5239c0","sha256":"c5dc8c27ddc96278b14bdd2c94b460aa2e57afa8f01d1b6971161a72bd661aaf","sha512":"e6603225eba137217410eb7707e18e52e4851d0a0cbe9c4767ec8ffd517855dd67fcb4cb52afd2fb3eccb4a50e00d95ea5f02c90181673a37f0a1d9030f49920","ssdeep":"","tlshash":"a4f0236b4708994c64c3d098eb6670d5332ff0e9f2cc03ed74878761700e8e5da03828","first_seen":"2024-02-27T03:47:44Z","last_seen":"2026-07-27T07:05:43.300028Z","times_seen":1362,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMwMDhERTQiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTEuOTMgOC40OGMtLjA0LjM1LS4xMi43My0uMjQgMS4xMy0uMzIgMS4xMy0xLjUgMS4zOS0yLjYzIDEuMzlINS45MWwtLjUzIDEuOTkuMDEuMDFoMy43NmMuNDEgMCAuOC0uMDIgMS4xNS0uMDcuNTEtLjA2IDEtLjIyIDEuNDYtLjQ4IDEuMS0uNiAxLjctMS43IDItMi44Ni4xNC0uNTguMjItMS4xNC4yNC0xLjY5LjAyLS43OS0uMTctMS42MS0uOC0yLjE2YTMuMjEgMy4yMSAwIDAgMC0xLjY3LS42NyA2Ljg1IDYuODUgMCAwIDAtLjk1LS4wNyAxODAyNS4yIDE4MDI1LjIgMCAwIDEtMy43NiAwbC0uNCAyaDMuNDNjLjk0IDAgMi4yNC4yNCAyLjA4IDEuNDhabS02LjkxLS40NGMtLjQ1LjEtLjcuNDQtLjgxLjkyQTI3LjQgMjcuNCAwIDAgMCA0IDEwaDMuN2MuMTQgMCAuMjYgMCAuMzYtLjAyLjQtLjA2LjY4LS4zLjgyLS43NGwuMDgtLjI3QTMzLjY4IDMzLjY4IDAgMCAwIDkuMTYgOEg1LjNjLS4wOSAwLS4xOC4wMS0uMjguMDRaIiBmaWxsPSIjZmZmIi8+PC9zdmc+"}},"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":"besttrader.live/images/icon/play-button.svg","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.083Z","timestamp":1785126256083,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/icon/play-button.svg HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/svg+xml\r\ncontent-length: 798\r\nx-accel-version: 0.01\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"31e-6071c9ab07c00\"\r\naccept-ranges: bytes\r\nx-powered-by: PleskLin\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":798,"size_decoded":1077,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"dfc9fb691dace09cedd6cccfe3d39677","sha1":"e6845ab1dbabc561830d0a608a63f921ba1c2cf0","sha256":"29145163d7a6a7e3d1b88468749ec8a96377b7ed0b128721a8c6de542c7e8d38","sha512":"ccf016784c929e1b9bde7f5b8cc4b93c0c6043c4cac4f18785c95736b77fdfd904c4b15206d5f1a80c438180d0aab8e16ee62a2e96898ad77e18acf3256b3f28","ssdeep":"","tlshash":"b90144dd830f842676347f30eeb77282333012f9808d04b8b048a8b1bc6da950f51a64","first_seen":"2023-05-01T20:32:00Z","last_seen":"2026-07-27T04:25:12.866271Z","times_seen":173,"resource_available":false,"data":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTkuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+CjxzdmcgZmlsbD0iI2ZmZiIgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgNDEuOTk5IDQxLjk5OSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNDEuOTk5IDQxLjk5OTsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8cGF0aCBkPSJNMzYuMDY4LDIwLjE3NmwtMjktMjBDNi43NjEtMC4wMzUsNi4zNjMtMC4wNTcsNi4wMzUsMC4xMTRDNS43MDYsMC4yODcsNS41LDAuNjI3LDUuNSwwLjk5OXY0MAoJYzAsMC4zNzIsMC4yMDYsMC43MTMsMC41MzUsMC44ODZjMC4xNDYsMC4wNzYsMC4zMDYsMC4xMTQsMC40NjUsMC4xMTRjMC4xOTksMCwwLjM5Ny0wLjA2LDAuNTY4LTAuMTc3bDI5LTIwCgljMC4yNzEtMC4xODcsMC40MzItMC40OTQsMC40MzItMC44MjNTMzYuMzM4LDIwLjM2MywzNi4wNjgsMjAuMTc2eiIvPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8Zz4KPC9nPgo8L3N2Zz4K"}},"time_used":341,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":321,"receive":20,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":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/ticker-tape/?locale=en#%7B%22symbols%22%3A%5B%7B%22proName%22%3A%22FX_IDC%3AEURUSD%22%2C%22title%22%3A%22EUR%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3ABTCUSD%22%2C%22title%22%3A%22BTC%2FUSD%22%7D%2C%7B%22proName%22%3A%22BITSTAMP%3AETHUSD%22%2C%22title%22%3A%22ETH%2FUSD%22%7D%5D%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22displayMode%22%3A%22adaptive%22%2C%22width%22%3A%22100%25%22%2C%22height%22%3A46%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22ticker-tape%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.265Z","timestamp":1785126257265,"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-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/ticker-tape/?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 04:24:17 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: 8270bf819ed960c7ad6635ab0fbfc327\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-27T07:05:45.444836Z","times_seen":919,"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.tradingview-widget.com/static/bundles/embed/snowplow-tracker-base.465f8af1aa72ac3a1c32.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.737Z","timestamp":1785126257737,"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-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/snowplow-tracker-base.465f8af1aa72ac3a1c32.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/crypto-mkt-screener/?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 04:24:17 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-396d\"\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:18:28\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: c7c7c773f0eacaae2dc5f8e1506d722a\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":14701,"size_decoded":6832,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3068)","md5":"1edb2832b292eaf1f490fd35fadf61ec","sha1":"40184dc94dd19e2bb7b906af7cc99c694efae8d5","sha256":"68c5b31fb26ad1af6d37dc872285b1e5c9837fed11bba1414d053e93e3728567","sha512":"a575cef153e42834c4fe933e7ec67a2a5442aec23dcf472bb585c8da5b858bfac30b279e03691938a35400b286055406e5a9f34bd3d5e5c8b51f1dbccd902df0","ssdeep":"384:rNtq6SWGLOzCHMJY+Uhb7773Y6cR39CF0msq2k70wcWKd:PjSWGLOuHM4hb7773X3F0msq2k7jcWI","tlshash":"ea62d7887043b09a42d925ef986b5149f7380898740d84b5b651f8d23caed9f63f3ebc","first_seen":"2026-07-24T05:39:08.468159Z","last_seen":"2026-07-27T07:05:43.344948Z","times_seen":217,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1s5NTIwN10sezc1Njg1MShlKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe2Zvcih2YXIgdD1bXSxuPWUubGVuZ3RoLGk9MDtpPG47aSsrKXt2YXIgbz1lLmNoYXJDb2RlQXQoaSk7aWYobz49NTUyOTYmJm88PTU2MzE5JiZuPmkrMSl7dmFyIHI9ZS5jaGFyQ29kZUF0KGkrMSk7cj49NTYzMjAmJnI8PTU3MzQzJiYobz0xMDI0KihvLTU1Mjk2KStyLTU2MzIwKzY1NTM2LGkrPTEpfW88MTI4P3QucHVzaChvKTpvPDIwNDg/KHQucHVzaChvPj42fDE5MiksdC5wdXNoKDYzJm98MTI4KSk6bzw1NTI5Nnx8bz49NTczNDQmJm88NjU1MzY/KHQucHVzaChvPj4xMnwyMjQpLHQucHVzaChvPj42JjYzfDEyOCksdC5wdXNoKDYzJm98MTI4KSk6bz49NjU1MzYmJm88PTExMTQxMTE/KHQucHVzaChvPj4xOHwyNDApLHQucHVzaChvPj4xMiY2M3wxMjgpLHQucHVzaChvPj42JjYzfDEyOCksdC5wdXNoKDYzJm98MTI4KSk6dC5wdXNoKDIzOSwxOTEsMTg5KX1yZXR1cm4gbmV3IFVpbnQ4QXJyYXkodCkuYnVmZmVyfX0sNTA0NDAyKGUsdCxuKXt2YXIgaT1uKDYzODIyMSk7ZS5leHBvcnRzPWZ1bmN0aW9uKGUpe3JldHVybiBlPWkoZV49ZT4+PjE2LDIyNDY4MjI1MDcpLGU9aShlXj1lPj4+MTMsMzI2NjQ4OTkwOSksKGVePWU+Pj4xNik+Pj4wfX0sNjM4MjIxKGUpeyJ1c2Ugc3RyaWN0IjtlLmV4cG9ydHM9TWF0aC5pbXVsfHxmdW5jdGlvbihlLHQpe3ZhciBuPTY1NTM1JmUsaT02NTUzNSZ0O3JldHVybiBuKmkrKChlPj4+MTYmNjU1MzUpKmkrbioodD4+PjE2JjY1NTM1KTw8MTY+Pj4wKXwwfX0sMTAwNTk1KGUsdCxuKXt2YXIgaT1uKDYzODIyMSksbz1uKDUwNDQwMikscj1uKDc1Njg1MSkscz1uZXcgVWludDMyQXJyYXkoWzM0MzI5MTgzNTMsNDYxODQ1OTA3XSk7ZnVuY3Rpb24gYShlLHQpe3JldHVybiBlPDx0fGU+Pj4zMi10fWUuZXhwb3J0cz1mdW5jdGlvbihlLHQpe2lmKHQ9dD8wfHQ6MCwic3RyaW5nIj09dHlwZW9mIGUmJihlPXIoZSkpLCEoZSBpbnN0YW5jZW9mIEFycmF5QnVmZmVyKSl0aHJvdyBuZXcgVHlwZUVycm9yKCJFeHBlY3RlZCBrZXkgdG8gYmUgQXJyYXlCdWZmZXIgb3Igc3RyaW5nIik7dmFyIG49bmV3IFVpbnQzMkFycmF5KFt0XSk7cmV0dXJuIGZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuPWUuYnl0ZUxlbmd0aC80fDAsbz1uZXcgVWludDMyQXJyYXkoZSwwLG4pLHI9MDtyPG47cisrKW9bcl09aShvW3JdLHNbMF0pLG9bcl09YShvW3JdLDE1KSxvW3JdPWkob1tyXSxzWzFdKSx0WzBdPXRbMF1eb1tyXSx0WzBdPWEodFswXSwxMyksdFswXT1pKHRbMF0sNSkrMzg2NDI5MjE5Nn0oZSxuKSxmdW5jdGlvbihlLHQpe3ZhciBuPWUuYnl0ZUxlbmd0aC80fDAsbz1lLmJ5dGVMZW5ndGglNCxyPTAsYz1uZXcgVWludDhBcnJheShlLDQqbixvKTtzd2l0Y2gobyl7Y2FzZSAzOnJePWNbMl08PDE2O2Nhc2UgMjpyXj1jWzFdPDw4O2Nhc2UgMTpyXj1jWzBdLHI9YShyPWkocixzWzBdKSwxNSkscj1pKHIsc1sxXSksdFswXT10WzBdXnJ9fShlLG4pLGZ1bmN0aW9uKGUsdCl7dFswXT10WzBdXmUuYnl0ZUxlbmd0aCx0WzBdPW8odFswXSl9KGUsbiksbi5idWZmZXJ9fSwzNzcyMjYoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7b25XaWRnZXQ6KCk9Pm99KTtjb25zdCBpPW5ldyBNYXA7ZnVuY3Rpb24gbygpe2NvbnN0IGU9d2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLHQ9d2luZG93LmxvY2F0aW9uLmhvc3Qsbj1gJHt0fSR7ZX1gO3JldHVybiBpLmhhcyhuKXx8aS5zZXQobixmdW5jdGlvbihlLHQpe2NvbnN0IG49WyJed2lkZ2V0LWRvY3MiXTtmb3IoY29uc3QgZSBvZiBuKWlmKG5ldyBSZWdFeHAoZSkudGVzdCh0KSlyZXR1cm4hMDtjb25zdCBpPVsiXndpZGdldGVtYmVkLz8kIiwiXmNtZXdpZGdldGVtYmVkLz8kIiwiXihbMC05YS16QS1aLV0rKS93aWRnZXRlbWJlZC8/JCIsIl4oWzAtOWEtekEtWi1dKykvd2lkZ2V0c3RhdGljLz8kIiwiXihbMC05YS16QS1aLV0rKT8vP21lZGl1bXdpZGdldGVtYmVkLz8kIiwiXnR3aXR0ZXItY2hhcnQvPyQiLCJedGVsZWdyYW0vY2hhcnQvPyQiLCJeZW1iZWQvKFswLTlhLXpBLVpdezh9KS8/JCIsIl53aWRnZXRwb3B1cC8/JCIsIl5leHRlbnNpb24vPyQiLCJeaWRlYS1wb3B1cC8/JCIsIl5ob3RsaXN0c3dpZGdldGVtYmVkLz8kIiwiXihbMC05YS16QS1aLV0rKS9ob3RsaXN0c3dpZGdldGVtYmVkLz8kIiwiXm1hcmtldG92ZXJ2aWV3d2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL21hcmtldG92ZXJ2aWV3d2lkZ2V0ZW1iZWQvPyQiLCJeZXZlbnRzd2lkZ2V0ZW1iZWQvPyQiLCJedGlja2Vyc3dpZGdldGVtYmVkLz8kIiwiXmZvcmV4Y3Jvc3NyYXRlc3dpZGdldGVtYmVkLz8kIiwiXmZvcmV4aGVhdG1hcHdpZGdldGVtYmVkLz8kIiwiXm1hcmtldHF1b3Rlc3dpZGdldGVtYmVkLz8kIiwiXnNjcmVlbmVyd2lkZ2V0Lz8kIiwiXmNyeXB0b21rdHNjcmVlbmVyd2lkZ2V0Lz8kIiwiXihbMC05YS16QS1aLV0rKS9jcnlwdG9ta3RzY3JlZW5lcndpZGdldC8/JCIsIl4oWzAtOWEtekEtWi1dKykvbWFya2V0cXVvdGVzd2lkZ2V0ZW1iZWQvPyQiLCJedGVjaG5pY2FsLWFuYWx5c2lzLXdpZGdldC1lbWJlZC8kIiwiXnNpbmdsZXF1b3Rld2lkZ2V0ZW1iZWQvPyQiLCJeKFswLTlhLXpBLVotXSspL3NpbmdsZXF1b3Rld2lkZ2V0ZW1iZWQvPyQiLCJeZW1iZWQtd2lkZ2V0LyhbMC05YS16QS1aLV0rKS8oKFswLTlhLXpBLVotXSspLyk/JCIsIl53aWRnZXQtZG9jcy8oWzAtOWEtekEtWi1dKykvKFswLTlhLXpBLVotL10rKT8kIl0sbz1lLnJlcGxhY2UoL15cLy8sIiIpO2xldCByO2ZvcihsZXQgZT1pLmxlbmd0aC0xO2U+PTA7ZS0tKWlmKHI9bmV3IFJlZ0V4cChpW2VdKSxyLnRlc3QobykpcmV0dXJuITA7cmV0dXJuITF9KGUsdCkpLGkuZ2V0KG4pPz8hMX19LDU2OTM5OChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtpc0ZlYXR1cmVFbmFibGVkOigpPT5kLG9uRmVhdHVyZXNTdGF0ZUNoYW5nZWQ6KCk9PmN9KQo7dmFyIGk9big5NDgzODApLG89bigzNzcyMjYpLHI9big4NTYxOTYpLHM9big5MzIzNjUpO2NvbnN0IGE9bmV3IGkuRGVsZWdhdGUsYz0oKT0+YSxsPSJmb3JjZWZlYXR1cmV0b2dnbGUuIjtjb25zdCBnPW5ldyBjbGFzc3tlbmFibGVGZWF0dXJlKGUpe3MuVFZMb2NhbFN0b3JhZ2Uuc2V0SXRlbShsK2UsInRydWUiKSxhLmZpcmUoZSl9ZGlzYWJsZUZlYXR1cmUoZSl7cy5UVkxvY2FsU3RvcmFnZS5zZXRJdGVtKGwrZSwiZmFsc2UiKSxhLmZpcmUoZSl9cmVzZXRGZWF0dXJlKGUpe3MuVFZMb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShsK2UpLGEuZmlyZShlKX1vbkZlYXR1cmVzU3RhdGVDaGFuZ2VkKCl7cmV0dXJuIGF9fTtmdW5jdGlvbiB1KGUsdCl7cmV0dXJuKCFlW3RdfHwtMSE9PWVbdF0pJiYoISEoInRydWUiPT09cy5UVkxvY2FsU3RvcmFnZS5nZXRJdGVtKGwrdCl8fHdpbmRvdy5pc19hdXRoZW50aWNhdGVkJiYidHJ1ZSI9PT13aW5kb3cudXNlcj8uc2V0dGluZ3M/LltsK3RdKXx8ISgiZmFsc2UiPT09cy5UVkxvY2FsU3RvcmFnZS5nZXRJdGVtKGwrdCl8fHdpbmRvdy5pc19hdXRoZW50aWNhdGVkJiYiZmFsc2UiPT09d2luZG93LnVzZXI/LnNldHRpbmdzPy5bbCt0XSkmJighIWVbdF0mJigxPT09ZVt0XXx8KDAsci5zaG91bGRBZmZlY3RVc2VyKSh0LGVbdF0pKSkpfXdpbmRvdy5UcmFkaW5nVmlldz13aW5kb3cuVHJhZGluZ1ZpZXd8fHt9LHdpbmRvdy5UcmFkaW5nVmlldy5GZWF0dXJlVG9nZ2xlPWc7Y29uc3QgZD0oaD13aW5kb3cuZmVhdHVyZVRvZ2dsZVN0YXRlfHx7fSwoMCxvLm9uV2lkZ2V0KSgpfHxQcm9taXNlLmFsbChbbi5lKDg1NDM0KSxuLmUoNzI4NSksbi5lKDEzOTkzKV0pLnRoZW4obi5iaW5kKG4sNTA3Mjg1KSkudGhlbigoZT0+e2UucHVzaFN0cmVhbU11bHRpcGxleGVyLm9uKCJmZWF0dXJldG9nZ2xlIiwoZT0+e2NvbnN0IHQ9dShoLGUubmFtZSk7aFtlLm5hbWVdPWUuc3RhdGUsdCE9PXUoaCxlLm5hbWUpJiZhLmZpcmUoZS5uYW1lKX0pKX0pKSx1LmJpbmQobnVsbCxoKSk7dmFyIGg7d2luZG93LlRyYWRpbmdWaWV3LmlzRmVhdHVyZUVuYWJsZWQ9ZH0sMTc5NzcxKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse2VtaXQ6KCk9PmcsZW1pdE9uY2U6KCk9PnUsb246KCk9PmMsc3Vic2NyaWJlOigpPT5sLHVuc3Vic2NyaWJlOigpPT5hfSk7dmFyIGk9big5NDgzODApO2NvbnN0IG89e30scj1bXSxzPXt9O2Z1bmN0aW9uIGEoZSx0LG4pe29bZV0udW5zdWJzY3JpYmUobix0KX1mdW5jdGlvbiBjKGUsdCxuKXtsKGUsdCxuKX1mdW5jdGlvbiBsKGUsdCxuLHIpe28uaGFzT3duUHJvcGVydHkoZSl8fChvW2VdPW5ldyBpLkRlbGVnYXRlKSxzW2VdP3QuY2FsbChuKTpvW2VdLnN1YnNjcmliZShuLHQscil9ZnVuY3Rpb24gZyhlLC4uLnQpe2NvbnN0IG49W2VdLmNvbmNhdCh0KTtyLmZvckVhY2goKGU9PntlLmFwcGx5KG51bGwsbil9KSksby5oYXNPd25Qcm9wZXJ0eShlKSYmb1tlXS5maXJlLmFwcGx5KG9bZV0sdCl9ZnVuY3Rpb24gdShlKXtzW2VdJiZjb25zb2xlLndhcm4oYFNvbWV0aGluZyB3ZW50IHdyb25nOiBlbWl0T25jZSBjYWxsZWQgbXVsdGlwbGUgdGltZXMgd2l0aCBzYW1lIGV2ZW50ICgke2V9KWApLHNbZV09ITAsZy5hcHBseShudWxsLGFyZ3VtZW50cyl9fSw5MzIzNjUoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7VFZMb2NhbFN0b3JhZ2U6KCk9PnJ9KTtjb25zdCBpPSgwLG4oMjIxMDYxKS5nZXRMb2dnZXIpKCJUVkxvY2FsU3RvcmFnZSIpO3ZhciBvPWZ1bmN0aW9uKCl7dHJ5e3RoaXMuaXNBdmFpbGFibGU9ITAsdGhpcy5sb2NhbFN0b3JhZ2U9d2luZG93LmxvY2FsU3RvcmFnZSx0aGlzLmxvY2FsU3RvcmFnZS5zZXRJdGVtKCJ0dmxvY2Fsc3RvcmFnZS5hdmFpbGFibGUiLCJ0cnVlIil9Y2F0Y2goZSl7ZGVsZXRlIHRoaXMuaXNBdmFpbGFibGUsZGVsZXRlIHRoaXMubG9jYWxTdG9yYWdlfXRoaXMuX3VwZGF0ZUxlbmd0aCgpO3RyeXt0aGlzLl9yZXBvcnQoKX1jYXRjaChlKXt9fTtvLnByb3RvdHlwZS5fcmVwb3J0PWZ1bmN0aW9uKCl7aWYodGhpcy5pc0F2YWlsYWJsZSl7Y29uc3QgZT0xMCx0PVtdO2ZvcihsZXQgZT0wO2U8dGhpcy5sb2NhbFN0b3JhZ2UubGVuZ3RoO2UrKyl7Y29uc3Qgbj10aGlzLmtleShlKTt0LnB1c2goe2tleTpuLGxlbmd0aDpTdHJpbmcodGhpcy5nZXRJdGVtKG4pKS5sZW5ndGh9KX10LnNvcnQoKChlLHQpPT50Lmxlbmd0aC1lLmxlbmd0aCkpO2NvbnN0IG49dC5zbGljZSgwLGUpO3Quc29ydCgoKGUsdCk9PnQua2V5Lmxlbmd0aC1lLmtleS5sZW5ndGgpKTtjb25zdCBvPXQuc2xpY2UoMCxlKTtpLmxvZ05vcm1hbChgVG90YWwgYW1vdW50IG9mIGtleXMgaW4gTG9jYWwgU3RvcmFnZTogJHt0aGlzLmxlbmd0aH1gKSxpLmxvZ05vcm1hbChgVG9wICR7ZX0ga2V5cyB3aXRoIGxvbmdlc3QgdmFsdWVzOiAke0pTT04uc3RyaW5naWZ5KG4pfWApLGkubG9nTm9ybWFsKGBUb3AgJHtlfSBsb25nZXN0IGtleSBuYW1lczogJHtKU09OLnN0cmluZ2lmeShvKX1gKTt0cnl7bmF2aWdhdG9yLnN0b3JhZ2UuZXN0aW1hdGUoKS50aGVuKChlPT57aS5sb2dOb3JtYWwoYFN0b3JhZ2UgZXN0aW1hdGU6ICR7SlNPTi5zdHJpbmdpZnkoZSl9YCl9KSl9Y2F0Y2goZSl7fX19LG8ucHJvdG90eXBlLmxlbmd0aD0wLG8ucHJvdG90eXBlLmlzQXZhaWxhYmxlPSExLG8ucHJvdG90eXBlLmxvY2FsU3RvcmFnZT17InR2bG9jYWxzdG9yYWdlLmF2YWlsYWJsZSI6ImZhbHNlIn0sby5wcm90b3R5cGUuX3VwZGF0ZUxlbmd0aD1mdW5jdGlvbigpe2lmKHRoaXMuaXNBdmFpbGFibGUpdGhpcy5sZW5ndGg9dGhpcy5sb2NhbFN0b3JhZ2UubGVuZ3RoO2Vsc2V7dmFyIGUsdD0wO2ZvcihlIGluIHRoaXMubG9jYWxTdG9yYWdlKXRoaXMubG9jYWxTdG9yYWdlLmhhc093blByb3BlcnR5KGUpJiZ0Kys7dGhpcy5sZW5ndGg9dH19LG8ucHJvdG90eXBlLmtleT1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5pc0F2YWlsYWJsZT90aGlzLmxvY2FsU3RvcmFnZS5rZXkoZSk6T2JqZWN0LmtleXModGhpcy5sb2NhbFN0b3JhZ2UpW2VdfSxvLnByb3RvdHlwZS5nZXRJdGVtPWZ1bmN0aW9uKGUpewpyZXR1cm4gdGhpcy5pc0F2YWlsYWJsZT90aGlzLmxvY2FsU3RvcmFnZS5nZXRJdGVtKGUpOnZvaWQgMD09PXRoaXMubG9jYWxTdG9yYWdlW2VdP251bGw6dGhpcy5sb2NhbFN0b3JhZ2VbZV19LG8ucHJvdG90eXBlLnNldEl0ZW09ZnVuY3Rpb24oZSx0KXt0aGlzLmlzQXZhaWxhYmxlP3RoaXMubG9jYWxTdG9yYWdlLnNldEl0ZW0oZSx0KTp0aGlzLmxvY2FsU3RvcmFnZVtlXT10LHRoaXMuX3VwZGF0ZUxlbmd0aCgpfSxvLnByb3RvdHlwZS5yZW1vdmVJdGVtPWZ1bmN0aW9uKGUpe3RoaXMuaXNBdmFpbGFibGU/dGhpcy5sb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShlKTpkZWxldGUgdGhpcy5sb2NhbFN0b3JhZ2VbZV0sdGhpcy5fdXBkYXRlTGVuZ3RoKCl9LG8ucHJvdG90eXBlLmNsZWFyPWZ1bmN0aW9uKCl7dGhpcy5pc0F2YWlsYWJsZT90aGlzLmxvY2FsU3RvcmFnZS5jbGVhcigpOnRoaXMubG9jYWxTdG9yYWdlPXt9LHRoaXMuX3VwZGF0ZUxlbmd0aCgpfTtjb25zdCByPW5ldyBvO3dpbmRvdy5UVkxvY2FsU3RvcmFnZT1yfSwxMTczMTMoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7aXNPbk1vYmlsZUFwcFBhZ2U6KCk9Pm8sdXJsV2l0aE1vYmlsZUFwcFBhcmFtczooKT0+cn0pO3ZhciBpPW4oNTg3NDM2KTtmdW5jdGlvbiBvKGUsdD0hMSl7Y29uc3R7c2VhcmNoUGFyYW1zOm59PW5ldyBVUkwoU3RyaW5nKGxvY2F0aW9uKSk7bGV0IG89InRydWUiPT09bi5nZXQoIm1vYmlsZWFwcF9uZXciKSxyPSJ0cnVlIj09PW4uZ2V0KCJtb2JpbGVhcHAiKTtpZighdCl7Y29uc3QgZT1pLmdldCgidHZfYXBwIil8fCIiO298fD1bImFuZHJvaWQiLCJhbmRyb2lkX25wcyJdLmluY2x1ZGVzKGUpLHJ8fD0iaW9zIj09PWV9cmV0dXJuISgibmV3IiE9PWUmJiJhbnkiIT09ZXx8IW8pfHwhKCJuZXciPT09ZXx8IXIpfWZ1bmN0aW9uIHIoZSx0PSExKXtpZihvKCJuZXciLHQpKXtjb25zdCB0PW5ldyBVUkwoZSxsb2NhdGlvbi5ocmVmKTt0LnNlYXJjaFBhcmFtcy5zZXQoIm1vYmlsZWFwcF9uZXciLCJ0cnVlIiksZT10LnRvU3RyaW5nKCl9aWYobygib2xkIix0KSl7Y29uc3QgdD1uZXcgVVJMKGUsbG9jYXRpb24uaHJlZik7dC5zZWFyY2hQYXJhbXMuc2V0KCJtb2JpbGVhcHAiLCJ0cnVlIiksZT10LnRvU3RyaW5nKCl9cmV0dXJuIGV9fSw4NTYxOTYoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7c2hvdWxkQWZmZWN0VXNlcjooKT0+Y30pO3ZhciBpPW4oMTAwNTk1KSxvPW4ubihpKSxyPW4oOTMyMzY1KTtjb25zdCBzPSJmZWF0dXJldG9nZ2xlX3NlZWQiO2Z1bmN0aW9uIGEoZSl7dHJ5e2NvbnN0IHQ9bygpKGUrZnVuY3Rpb24oKXtpZih3aW5kb3cudXNlciYmd2luZG93LnVzZXIuaWQpcmV0dXJuIHdpbmRvdy51c2VyLmlkO2NvbnN0IGU9ci5UVkxvY2FsU3RvcmFnZS5nZXRJdGVtKHMpO2lmKG51bGwhPT1lKXJldHVybiBlO2NvbnN0IHQ9TWF0aC5mbG9vcigxZTYqTWF0aC5yYW5kb20oKSk7cmV0dXJuIHIuVFZMb2NhbFN0b3JhZ2Uuc2V0SXRlbShzLGAke3R9YCksdH0oKSksbj1uZXcgRGF0YVZpZXcodCk7cmV0dXJuIG4uZ2V0VWludDMyKDAsITApLzQyOTQ5NjcyOTZ9Y2F0Y2goZSl7cmV0dXJuLjV9fWZ1bmN0aW9uIGMoZSx0KXtyZXR1cm4gYShlKTw9dH19LDU4NzQzNihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGkoZSx0LG4saSxvKXtsZXQgcj0iIjtpZihpPWk/IjsgcGF0aD0iK2k6IiIsbz1vPyI7IGRvbWFpbj0iK286IiIsbil7Y29uc3QgZT1uZXcgRGF0ZTtlLnNldFRpbWUoZS5nZXRUaW1lKCkrMjQqbio2MCo2MCoxZTMpLHI9IjsgZXhwaXJlcz0iK2UudG9VVENTdHJpbmcoKX1lbHNlIHI9IiI7ZG9jdW1lbnQuY29va2llPWUrIj0iK3QrcitvK2l9ZnVuY3Rpb24gbyhlKXtjb25zdCB0PWUrIj0iLG49ZG9jdW1lbnQuY29va2llLnNwbGl0KCI7Iik7Zm9yKGxldCBlPTA7ZTxuLmxlbmd0aDtlKyspe2xldCBpPW5bZV07Zm9yKDsiICI9PT1pLmNoYXJBdCgwKTspaT1pLnN1YnN0cmluZygxLGkubGVuZ3RoKTtpZigwPT09aS5pbmRleE9mKHQpKXJldHVybiBpLnN1YnN0cmluZyh0Lmxlbmd0aCxpLmxlbmd0aCl9cmV0dXJuIG51bGx9bi5kKHQse2dldDooKT0+byxzZXQ6KCk9Pml9KX0sNzY4NzYwKGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gaSgpe2xldCBlLHQ7cmV0dXJue3Byb21pc2U6bmV3IFByb21pc2UoKChuLGkpPT57ZT1uLHQ9aX0pKSxyZWplY3Q6dCxyZXNvbHZlOmV9fW4uZCh0LHtjcmVhdGVEZWZlcnJlZFByb21pc2U6KCk9Pml9KX0sOTQ4MzgwKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse0RlbGVnYXRlOigpPT5yfSk7Y29uc3QgaT0oMCxuKDIyMTA2MSkuZ2V0TG9nZ2VyKSgiQ29tbW9uLkRlbGVnYXRlIik7ZnVuY3Rpb24gbyhlKXtyZXR1cm4hZS5zaW5nbGVTaG90fWNsYXNzIHJ7Y29uc3RydWN0b3IoKXt0aGlzLmZpcmU9dGhpcy5fZmlyZUltcGwuYmluZCh0aGlzKSx0aGlzLl9saXN0ZW5lcnM9W119c3Vic2NyaWJlKGUsdCxuKXt0aGlzLl9saXN0ZW5lcnMucHVzaCh7b2JqZWN0OmUsbWVtYmVyOnQsc2luZ2xlU2hvdDohIW4sc2tpcDohMX0pfXVuc3Vic2NyaWJlKGUsdCl7Zm9yKGxldCBuPTA7bjx0aGlzLl9saXN0ZW5lcnMubGVuZ3RoOysrbil7Y29uc3QgaT10aGlzLl9saXN0ZW5lcnNbbl07aWYoaS5vYmplY3Q9PT1lJiZpLm1lbWJlcj09PXQpe2kuc2tpcD0hMCx0aGlzLl9saXN0ZW5lcnMuc3BsaWNlKG4sMSk7YnJlYWt9fX11bnN1YnNjcmliZUFsbChlKXtmb3IobGV0IHQ9dGhpcy5fbGlzdGVuZXJzLmxlbmd0aC0xO3Q+PTA7LS10KXtjb25zdCBuPXRoaXMuX2xpc3RlbmVyc1t0XTtuLm9iamVjdD09PWUmJihuLnNraXA9ITAsdGhpcy5fbGlzdGVuZXJzLnNwbGljZSh0LDEpKX19ZGVzdHJveSgpe3RoaXMuX2xpc3RlbmVycz1bXX1fZmlyZUltcGwoLi4uZSl7Y29uc3QgdD10aGlzLl9saXN0ZW5lcnM7dGhpcy5fbGlzdGVuZXJzPXRoaXMuX2xpc3RlbmVycy5maWx0ZXIobyk7Y29uc3Qgbj10Lmxlbmd0aDtmb3IobGV0IG89MDtvPG47KytvKXtjb25zdCBuPXRbb107aWYoIW4uc2tpcCl0cnl7bi5tZW1iZXIuYXBwbHkobi5vYmplY3R8fG51bGwsZSl9Y2F0Y2goZSl7CmkubG9nRXJyb3IoYCR7ZSYmKGUuc3RhY2t8fGUubWVzc2FnZSl9YCl9fX19fSw2ODA4NDIoZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaTtuLmQodCx7Q29va2llU2V0dGluZ3M6KCk9PmksYmFubmVyUHJpdmFjeVByZWZlcmVuY2VLZXk6KCk9PmgsY2hlY2tCYW5uZXJQcml2YWN5UHJlZmVyZW5jZUtleTooKT0+QSxjb29raWVTZXR0aW5nc0NoYW5nZUV2ZW50OigpPT5sLGdldENvb2tpZVNldHRpbmc6KCk9PiQsaGlkZUJhbm5lcjooKT0+VCxyZWplY3RCYW5uZXI6KCk9Pl8sc2V0Q29va2llU2V0dGluZzooKT0+TH0pLGZ1bmN0aW9uKGUpe2UuQW5hbHl0aWNzPSJhbmFseXRpY3MiLGUuQWR2ZXJ0aXNpbmc9ImFkdmVydGlzaW5nIn0oaXx8KGk9e30pKTt2YXIgbz1uKDE3OTc3MSkscj1uKDc2ODc2MCkscz1uKDkzMjM2NSksYT1uKDE2MDI5NiksYz1uKDU4NzQzNik7Y29uc3QgbD0iY29va2llX3NldHRpbmdzX2NoYW5nZWQiLGc9KCgwLHIuY3JlYXRlRGVmZXJyZWRQcm9taXNlKSgpLHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZS5zcGxpdCgiLiIpKSx1PSgwLGEuaXNMb2NhbCkoKT8iIjoiLiIrZy5zbGljZSgxLGcubGVuZ3RoKS5qb2luKCIuIiksZD0iY29va2llQmFubmVyIixoPSgwLGEuaXNQcm9kKSgpPyJjb29raWVQcml2YWN5UHJlZmVyZW5jZUJhbm5lclByb2R1Y3Rpb24iOiJjb29raWVQcml2YWN5UHJlZmVyZW5jZUJhbm5lckxvY2FsIixwPSJhY2NlcHRlZCIsZj0ibm90QXBwbGljYWJsZSIsbT0icmVqZWN0Iix3PSJjb29raWVzU2V0dGluZ3MiLGI9ImxvY2FsQ29va2llc1NldHRpbmdzIix5PSJjb29raWVQcml2YWN5UHJlZmVyZW5jZUJhbm5lciIsdj17W2kuQW5hbHl0aWNzXTohMSxbaS5BZHZlcnRpc2luZ106ITF9O2Z1bmN0aW9uIFMoKXtyZXR1cm4gcy5UVkxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGQpfWZ1bmN0aW9uIGsoZSl7cmV0dXJuW3AsZixtXS5pbmNsdWRlcyhzLlRWTG9jYWxTdG9yYWdlLmdldEl0ZW0oZSk/PyIiKX1mdW5jdGlvbiBBKCl7cmV0dXJuIGU9aCxbcCxmLG1dLmluY2x1ZGVzKGMuZ2V0KGUpPz8iIik7dmFyIGV9ZnVuY3Rpb24gVCgpe0kocCl9ZnVuY3Rpb24gXygpe0kobSl9ZnVuY3Rpb24gSShlKXtjLnNldChoLGUsMzY1MywiLyIsdSl9ZnVuY3Rpb24gTChlLHQpe3ZbZV09dCxjLnNldCgoMCxhLmlzUHJvZCkoKT93OmIsSlNPTi5zdHJpbmdpZnkodiksMzY1MywiLyIsdSksby5lbWl0KGwsZSx0KX1mdW5jdGlvbiAkKGUpe3JldHVybiB2W2VdfWZ1bmN0aW9uIFAoKXtyZXR1cm4gcy5UVkxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKHkpfSFmdW5jdGlvbigpe2NvbnN0IGU9Yy5nZXQoKDAsYS5pc1Byb2QpKCk/dzpiKSx0PXMuVFZMb2NhbFN0b3JhZ2UuZ2V0SXRlbSh5KSxuPXMuVFZMb2NhbFN0b3JhZ2UuZ2V0SXRlbSh3KTtpZihlKXt0JiZuJiYoUCgpLHMuVFZMb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSh3KSksayhkKSYmUygpO3RyeXtjb25zdCB0PUpTT04ucGFyc2UoZSk7dltpLkFuYWx5dGljc109dD8uW2kuQW5hbHl0aWNzXXx8ITEsdltpLkFkdmVydGlzaW5nXT10Py5baS5BZHZlcnRpc2luZ118fCExfWNhdGNoe319ZWxzZSBpZihrKGQpJiYoTChpLkFuYWx5dGljcywhMCksTChpLkFkdmVydGlzaW5nLCEwKSxUKCksUygpKSx0JiZuKXtjb25zdCBlPUpTT04ucGFyc2Uobik7SSh0KSxMKGkuQW5hbHl0aWNzLGU/LltpLkFuYWx5dGljc10pLEwoaS5BZHZlcnRpc2luZyxlPy5baS5BZHZlcnRpc2luZ10pLFAoKSxzLlRWTG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0odyl9fSgpfSwxNjAyOTYoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLnIodCksbi5kKHQse2Vudmlyb25tZW50OigpPT5vLGlzRGVidWc6KCk9PmEsaXNMb2NhbDooKT0+cixpc1Byb2Q6KCk9PnN9KTtjb25zdCBpPW5ldyBTZXQoWyJiYXR0bGUiLCJzdGFnaW5nIiwidGVzdCIsImxvY2FsIl0pO2Z1bmN0aW9uIG8oKXtjb25zdCBlPXNlbGYuZW52aXJvbm1lbnQ7cmV0dXJuIGZ1bmN0aW9uKGUpe2kuaGFzKGUpfHxjb25zb2xlLndhcm4oIkludmFsaWQgZW52aXJvbm1lbnQgIitlKX0oZSksZX1mdW5jdGlvbiByKCl7cmV0dXJuImxvY2FsIj09PW8oKX1mdW5jdGlvbiBzKCl7cmV0dXJuImJhdHRsZSI9PT1vKCl9ZnVuY3Rpb24gYSgpe3JldHVybiFzKCl9fSwzMTg5NzQoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Q2hlY2tNb2JpbGU6KCk9PmQsYXBwVmVyc2lvbjooKT0+dSxjaGVja1BhZ2VUeXBlOigpPT5wLGRlc2t0b3BBcHBWZXJzaW9uOigpPT5nLGlzQ2hyb21lOigpPT5mLGlzRGVza3RvcEFwcDooKT0+Yyxpc0VkZ2U6KCk9PncsaXNGRjooKT0+bSxpc0xpbnV4OigpPT5hLGlzTWFjOigpPT5zLGlzU2FmYXJpOigpPT5iLGlzU3ltcGhvbnlFbWJlZDooKT0+bCxvbkdvUHJvOigpPT55LG9uV2lkZ2V0OigpPT5vLm9uV2lkZ2V0LHN1cHBvcnRUb3VjaDooKT0+aH0pO3ZhciBpPW4oNzM4NDU4KSxvPW4oMzc3MjI2KTtjb25zdCByPXdpbmRvdy5UcmFkaW5nVmlldz13aW5kb3cuVHJhZGluZ1ZpZXd8fHt9O2Z1bmN0aW9uIHMoKXtyZXR1cm4gaS5pc01hY31mdW5jdGlvbiBhKCl7cmV0dXJuIGkuaXNMaW51eH1mdW5jdGlvbiBjKCl7cmV0dXJuL1RWRGVza3RvcC9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCl9ZnVuY3Rpb24gbCgpe3JldHVybiByLmlzU3ltcGhvbnl8fCExfWZ1bmN0aW9uIGcoKXtjb25zdCBlPW5hdmlnYXRvci51c2VyQWdlbnQubWF0Y2goL1RWRGVza3RvcFwvKFteXHNdKykvKTtyZXR1cm4gZSYmZVsxXX1mdW5jdGlvbiB1KCl7Y29uc3QgZT1uYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9UcmFkaW5nVmlld1wvKFteXHNdKykvKTtyZXR1cm4gZSYmZVsxXX1jb25zdCBkPXtBbmRyb2lkOigpPT5pLmlzQW5kcm9pZCxCbGFja0JlcnJ5OigpPT5pLmlzQmxhY2tCZXJyeSxpT1M6KCk9PmkuaXNJT1MsT3BlcmE6KCk9PmkuaXNPcGVyYU1pbmksaXNJUGFkOigpPT5pLmlzSVBhZCxhbnk6KCk9PmkuaXNBbnlNb2JpbGV9O2Z1bmN0aW9uIGgoKXtyZXR1cm4gaS5tb2JpbGV0b3VjaHx8aS50b3VjaHx8aS5pc0FueU1vYmlsZX1mdW5jdGlvbiBwKGUpewpyZXR1cm4gbmV3IFVSTFNlYXJjaFBhcmFtcyh3aW5kb3cubG9jYXRpb24uc2VhcmNoKS5nZXQoInBhZ2VfdHlwZSIpPT09ZX1yLmlzTW9iaWxlPWQsci5vbldpZGdldD1vLm9uV2lkZ2V0O2NvbnN0IGY9aS5pc0Nocm9tZSxtPWkuaXNGRix3PWkuaXNFZGdlLGI9aS5pc1NhZmFyaTtmdW5jdGlvbiB5KCl7cmV0dXJuIi9wcmljaW5nLyI9PT13aW5kb3cubG9jYXRpb24ucGF0aG5hbWV9fSw5MjA3MDYoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Z2V0U2V0dGluZ3M6KCk9Pmh9KTt2YXIgaT1uKDU2OTM5OCksbz1uKDE3OTc3MSkscj1uKDg3MDY0NCkscz1uKDMxODk3NCksYT1uKDExNzMxMyksYz1uKDY4MDg0Mik7Y29uc3QgbD13aW5kb3cuaW5pdERhdGEuc25vd3Bsb3dTZXR0aW5ncztsZXQgZyx1PSJ3ZWIiLGQ9IiI7aWYoKDAscy5pc0Rlc2t0b3BBcHApKCkmJih1PSJwYyIsZD0iX2Rlc2t0b3AiKSwoMCxhLmlzT25Nb2JpbGVBcHBQYWdlKSgib2xkIik/KHU9Im1vYiIsZD0iX2lvcyIpOigwLGEuaXNPbk1vYmlsZUFwcFBhZ2UpKCJuZXciKSYmKHU9Im1vYiIsZD0iX2FuZHJvaWQiKSxsJiZsLnBhcmFtcyYmbC5lbmFibGVkKXtjb25zdCBlPSEoMCxhLmlzT25Nb2JpbGVBcHBQYWdlKSgiYW55IikmJiEoMCxjLmdldENvb2tpZVNldHRpbmcpKGMuQ29va2llU2V0dGluZ3MuQW5hbHl0aWNzKSYme3dpdGhTZXNzaW9uVHJhY2tpbmc6ITB9O2c9e2NvbGxlY3RvcklkOmwuY29sbGVjdG9ySWQsdXJsOmwudXJsLHBhcmFtczp7YXBwSWQ6bC5wYXJhbXMuYXBwSWQrZCxwbGF0Zm9ybTp1LGRpc2NvdmVyUm9vdERvbWFpbjohMCxjb250ZXh0czp7d2ViUGFnZTohMH0sZXZlbnRNZXRob2Q6ImdldCIsbWF4TG9jYWxTdG9yYWdlUXVldWVTaXplOjMwLGFub255bW91c1RyYWNraW5nOmUsc2Vzc2lvbkNvb2tpZVRpbWVvdXQ6KDAsYy5nZXRDb29raWVTZXR0aW5nKShjLkNvb2tpZVNldHRpbmdzLkFuYWx5dGljcyk/MTgwMDo3Nzc2ZTN9fSwoMCxpLmlzRmVhdHVyZUVuYWJsZWQpKCJzbm93cGxvd19iZWFjb25fZmVhdHVyZSIpJiYoZy5wYXJhbXMuZXZlbnRNZXRob2Q9ImJlYWNvbiIsZy5wYXJhbXMucG9zdFBhdGg9bC5wYXJhbXMucG9zdFBhdGgpfWZ1bmN0aW9uIGgoKXtpZihnKXJldHVybiBnfW8uc3Vic2NyaWJlKGMuY29va2llU2V0dGluZ3NDaGFuZ2VFdmVudCwoKGUsdCk9PntlPT09Yy5Db29raWVTZXR0aW5ncy5BbmFseXRpY3MmJih0PygwLHIuZGlzYWJsZUFub255bW91c1RyYWNraW5nKSgpOigwLHIuZW5hYmxlQW5vbnltb3VzVHJhY2tpbmcpKHtvcHRpb25zOnt3aXRoU2Vzc2lvblRyYWNraW5nOiEwfX0pKX0pLG51bGwpfSw0NzcxNTAoZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgaSxvO24uZCh0LHtTbm93cGxvd1RyYWNrZXJCYXNlOigpPT51LGdldFRyYWNrZXJJbnN0YW5jZTooKT0+Z30pLGZ1bmN0aW9uKGUpe2UuV2ViPSJ3ZWIiLGUuTW9iaWxlPSJtb2IiLGUuRGVza3RvcD0icGMifShpfHwoaT17fSkpLGZ1bmN0aW9uKGUpe2UuQW5kcm9pZD0iX2FuZHJvaWQiLGUuSU9TPSJfaW9zIixlLkRlc2t0b3A9Il9kZXNrdG9wIn0ob3x8KG89e30pKTt2YXIgcj1uKDMxODk3NCkscz1uKDg3MDY0NCksYT1uKDkyMDcwNik7bGV0IGM9ITE7bGV0IGw9bnVsbDtmdW5jdGlvbiBnKCl7aWYobnVsbD09PWwpe2NvbnN0IGU9KDAsYS5nZXRTZXR0aW5ncykoKTt2b2lkIDAhPT1lJiYobD1uZXcgdShlKSl9cmV0dXJuIGx9Y2xhc3MgdXtjb25zdHJ1Y3RvcihlKXsoMCxzLm5ld1RyYWNrZXIpKGUuY29sbGVjdG9ySWQsZS51cmwsZS5wYXJhbXMpLHRoaXMuX2NvbGxlY3RvcklkPWUuY29sbGVjdG9ySWQsdGhpcy5fc2V0RGlzY2FyZEJyYWNlKCEwKX10cmFja1BhZ2VWaWV3KCl7KDAscy50cmFja1BhZ2VWaWV3KSh2b2lkIDAsW3RoaXMuX2NvbGxlY3RvcklkXSl9c2V0VXNlcklkKGUpe2NvbnN0IHQ9IWV8fCgwLHIuaXNTeW1waG9ueUVtYmVkKSgpP251bGw6YCR7ZX1gOygwLHMuc2V0VXNlcklkKSh0LFt0aGlzLl9jb2xsZWN0b3JJZF0pfXRyYWNrU2VsZkRlc2MoZSx0KXtjfHwoMCxzLnRyYWNrU2VsZkRlc2NyaWJpbmdFdmVudCkoe2V2ZW50OntzY2hlbWE6ZSxkYXRhOnR9fSxbdGhpcy5fY29sbGVjdG9ySWRdKX1fc2V0RGlzY2FyZEJyYWNlKGUpeygwLHMuZGlzY2FyZEJyYWNlKShlLFt0aGlzLl9jb2xsZWN0b3JJZF0pfV9zdGFydEFjdGl2aXR5V2F0Y2hlcihlKXtsZXQgdD0wO3JldHVybigwLHMuZW5hYmxlQWN0aXZpdHlUcmFja2luZ0NhbGxiYWNrKSh7bWluaW11bVZpc2l0TGVuZ3RoOmUubWluaW11bVZpc2l0TGVuZ3RoLGhlYXJ0YmVhdERlbGF5OmUuaGVhcnRiZWF0RGVsYXksY2FsbGJhY2s6KCk9Pnt0Kyt9fSxbdGhpcy5fY29sbGVjdG9ySWRdKSx7ZGlzYWJsZVRyYWNraW5nOnMuZGlzYWJsZUFjdGl2aXR5VHJhY2tpbmcsZmx1c2hUcmFja2luZ1Jlc3VsdDooKT0+e2NvbnN0IG49dCplLmhlYXJ0YmVhdERlbGF5O3JldHVybiB0PTAsbn19fX19fV0pOw=="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCXDC.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.641Z","timestamp":1785126258641,"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 /crypto/XTVCXDC.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 04:24:18 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: \"77d5937c6aaf59908fbe6cfce195ea61\"\r\nlast-modified: Fri, 12 Jan 2024 14:17:28 GMT\r\ncdn-cachedat: 08/14/2025 09:16:49\r\nx-amz-id-2: WcgXWwanVYAGE7QcFtZS/r/22T+Go3ZRA2vt3JzQr6nAj3on0+GysxUEbejsBAIxKdMmZ+f9sOc=\r\nx-amz-request-id: 4PC8AXVY5S1AHG73\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 77d5937c6aaf59908fbe6cfce195ea61\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: 0fbd91b00a2887508b5c074011bac08b\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":655,"size_decoded":1301,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (655), with no line terminators","md5":"77d5937c6aaf59908fbe6cfce195ea61","sha1":"ed49665fd2f533ae295e3a3b2b3aebf6bc40e7b4","sha256":"db3aea16760c6ab70c6b6f391e5fefcade5522719efab27dbaf1c2e39490fbd2","sha512":"b8dcb5e0d23d6a54be231c5dcf4bda4f7c83713248677fea2d61ea1e8fac746429ab85c4a019f380727a67fb9ba9a86d5b2153ce775dfd0b5b5d56c0b5204a90","ssdeep":"","tlshash":"bcf02359730dd7b8090bca98eb7411d3711b60fc9fcf9ee830619208b04b4ead814c18","first_seen":"2024-02-17T05:36:09Z","last_seen":"2026-07-27T07:05:43.385664Z","times_seen":799,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTMuOTkgOC41MmMtMS4xNS02LjY1LTkuODQtNS4zNy05Ljk5IDBsLjgyLjQycy0uMjcuMTUtLjgyLjUyYzEgNi41MiA5LjU1IDUuNTcgMTAtLjAxLS41NC0uMzQtLjg0LS41MS0uODQtLjUxbC44My0uNDJaTTkuNyAxMC44NGwtLjgyLTEuNC0uODIgMS40LS42My0uMDQgMS4xOC0yTDcuNTYgNy4xbC42NC0uMDYuNzYgMS4yOC43NS0xLjIyLjYuMDEtLjk5IDEuNyAxLjEgMi4wMi0uNzEuMDJaIiBmaWxsPSIjQjhCNUIxIi8+PHBhdGggZD0iTTEzLjU4IDguMjVjLTEuNTYtNS45LTguNy00LjMxLTkuMTggMGwxLjIyLjY5cy0uNC4yNC0xLjIyLjc3YzEuMDYgNS42OSA4Ljc2IDQuNiA5LjE4LS4wMS0uNzctLjQ5LTEuMjQtLjc3LTEuMjQtLjc3bDEuMjQtLjY4Wm0tMy44NyAyLjYtLjgyLTEuNC0uODMgMS40LS42My0uMDQgMS4xOC0yLTEuMDYtMS43LjY0LS4wNi43NSAxLjI3Ljc2LTEuMjIuNi4wMS0uOTkgMS43IDEuMSAyLjAyLS43LjAyWiIgZmlsbD0iIzI1NEM4MiIvPjwvc3ZnPg=="}},"time_used":1,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":1,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"s3-symbol-logo.tradingview.com/crypto/XTVCKAIA.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.674Z","timestamp":1785126258674,"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 /crypto/XTVCKAIA.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 04:24:18 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: \"bf14c7fe6fa7ce0bb65625609964dc14\"\r\nlast-modified: Wed, 13 Nov 2024 14:04:57 GMT\r\ncdn-cachedat: 08/09/2025 14:29:30\r\nx-amz-id-2: 0Esh2YCZF3NUGWOLQS7/jkzp51X/ij2sGVJ8uJU1ujQz5OY5DGkTRSpaH7q2fNklWgDUacGhH7E=\r\nx-amz-request-id: HN6DJDXQMNYW9MZM\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: bf14c7fe6fa7ce0bb65625609964dc14\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: 045da551a6aa45424b46e7276f94a18e\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":956,"size_decoded":1511,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (956), with no line terminators","md5":"bf14c7fe6fa7ce0bb65625609964dc14","sha1":"fe35d826e45077edc520c82bcbb108c82a332178","sha256":"8d45352bb42a9610eb51e93faaa63c3a87e5ee4f689a9f3cf25bf0e732b632f2","sha512":"fe87db5b484cfccf3ddd78fd0fa8d659bc599015b28e53e155532d9db1f71372f6a22a3534398528e9b3a6b1731f38eb49a03c7cffc89c0a16992b4836676ac2","ssdeep":"","tlshash":"4811e1a9d558d85de802e62cdbbf4591630f109db24c43c97aebcb2a700d7c2dc01520","first_seen":"2025-04-11T11:28:49.372426Z","last_seen":"2026-07-27T07:05:43.256547Z","times_seen":786,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9InVybCgjYSkiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik05Ljk2IDEzLjUyYy4wMy0uMDIuMDQtLjAxLjA0LjAydi4zOWMwIC4wMy4wMi4wNy4wNS4wN2gxLjkyYy4wMiAwIC4wMy0uMDMuMDMtLjA1VjcuMjZjMC0uMDIgMC0uMDMtLjAzLS4wM0g5LjZjLS4yMiAwLS4zNy0uMDQtLjQ2LS4wN2EuNjcuNjcgMCAwIDEtLjQyLS40NS43LjcgMCAwIDEgLjA5LS42MmMuMTMtLjIxLjM2LS4zMi42Ny0uMzJoMS4xNGMuMDIgMCAuMDYgMCAuMDYtLjAzdi0xLjdjMC0uMDItLjA0LS4wNC0uMDgtLjA0SDkuNDdhMi41NyAyLjU3IDAgMCAwLTIuNjQgMi4wNWMtLjA5LjQ4LS4wMy45NS4xNyAxLjQybC0uMDEuMDNBMy4xNCAzLjE0IDAgMCAwIDUuMiA5LjQ0YTMuNzIgMy43MiAwIDAgMC0uMTMgMS45IDMuMTYgMy4xNiAwIDAgMCAzLjc0IDIuNmMuNDgtLjA4Ljg1LS4yNiAxLjE1LS40MlpNMTAgOS4wNHYtLjAyTDkuOTYgOWgtLjk4Yy0uNDYtLjAyLS43OCAwLS45Ny4wN2ExLjUgMS41IDAgMCAwLS45NyAxLjhjLjA2LjI2LjIuNDguMzguNjhhMS40NSAxLjQ1IDAgMCAwIDEuNC40IDEuNSAxLjUgMCAwIDAgMS4wOC0uOTdjLjA2LS4xOS4xLS41MS4wOS0uOTd2LS45OFoiIGZpbGw9IiNCRkYwMDkiLz48ZGVmcz48bGluZWFyR3JhZGllbnQgaWQ9ImEiIHgxPSIzLjM1IiB5MT0iMy4xMiIgeDI9IjIxLjkiIHkyPSIyNC40MyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiMxQTFFMjEiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMwNjA2MEEiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48L3N2Zz4="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCT.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.730Z","timestamp":1785126258730,"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 /crypto/XTVCT.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 04:24:18 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: \"b91fc0c0df629a8b94cf0a4e64b97f71\"\r\nlast-modified: Tue, 04 Oct 2022 10:23:53 GMT\r\ncdn-cachedat: 08/09/2025 14:30:25\r\nx-amz-id-2: 0E9c6ho+vt8GbK0HOSJaRrLxdFZm0osAp/LOIlRRbK94k9SAZaZBe7HulXMjPnyE8ebSHzbtMGc=\r\nx-amz-request-id: M6WMDWB991R9SHJ4\r\nx-amz-meta-hash: b91fc0c0df629a8b94cf0a4e64b97f71\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: e69926a890016dc79bf228cca5566327\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":334,"size_decoded":1123,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (334), with no line terminators","md5":"b91fc0c0df629a8b94cf0a4e64b97f71","sha1":"6b40e68d5a2bf38ac5a771ef1f64d7b9844a64cc","sha256":"950c1ff0a8c2d2639a3d744ea405fc9416f3f8757e229b5ddfe547191700da31","sha512":"fc7516bca5804c5523a67ab8672163eb8ad48220ccd1df56748c64bc3ee8aa27a43740215cb5c1be1741233a4971beff1a60e2ce5dfae478022b308cadf9a0ee","ssdeep":"","tlshash":"f9e026a9762ad2249817c6fa22ecf0dca15624bbd0820afdb0b22b0f61970d71c95c18","first_seen":"2025-11-26T02:34:03.136386Z","last_seen":"2026-07-27T05:33:43.56947Z","times_seen":36,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiM3RDAwRkUiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNMTQgNmgtMy41djFIMTRWNlpNOC41IDdoLTF2MWgxVjdabS0xIDZoMVY5aC0xdjRabTItNnYxaDFWN2gtMVptMCA2aDFWOWgtMXY0Wm0wLTdoLTF2MWgxVjZaTTQgNnYxaDMuNVY2SDRabTEwIDNWOGgtMy41djFIMTRaTTguNSA4djFoMVY4aC0xWk00IDh2MWgzLjVWOEg0WiIgZmlsbD0iI0ZDRjlGRiIvPjwvc3ZnPg=="}},"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":"besttrader.live/images/icon/instruments/btc.svg","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.093Z","timestamp":1785126256093,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/icon/instruments/btc.svg HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/svg+xml\r\ncontent-length: 3032\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-bd8\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":3032,"size_decoded":3284,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"bd683426a4475f86f1e59a9ab9394a60","sha1":"b4ae0959bbe58cce1b04cbdedec7cbb32d08dd29","sha256":"b7454bc2dd6ad6c63e3297400850ad871436525171f8d5c0518ce887b259ec9a","sha512":"433ace75dd5eff67911a4d3de016ec93ab18c9e82813c4f4b5da2749c2f4a76b2b6f4f2d8513c8b0899c9e84fc95741d85334d20b7c7aab01e125828f007ac97","ssdeep":"","tlshash":"e65166e631fd072da045c755b1f13f297a2a30ff61c54148b08d29187b2e85b06a7e65","first_seen":"2023-05-01T20:32:00Z","last_seen":"2026-07-27T06:05:14.747097Z","times_seen":173,"resource_available":false,"data":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTdweCIgaGVpZ2h0PSIxN3B4IiB2aWV3Qm94PSIwIDAgMTcgMTciIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDUyLjEgKDY3MDQ4KSAtIGh0dHA6Ly93d3cuYm9oZW1pYW5jb2RpbmcuY29tL3NrZXRjaCAtLT4KICAgIDx0aXRsZT5Hcm91cCA2PC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGRlZnM+CiAgICAgICAgPHBvbHlnb24gaWQ9InBhdGgtMSIgcG9pbnRzPSIwLjAwMDI2NDQ3NzczMSAwIDE3IDAgMTcgMTcgMC4wMDAyNjQ0Nzc3MzEgMTciPjwvcG9seWdvbj4KICAgIDwvZGVmcz4KICAgIDxnIGlkPSJQYWdlLTEiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSJQcmltZVhCVF92MiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTYzOS4wMDAwMDAsIC0xMDYyLjAwMDAwMCkiPgogICAgICAgICAgICA8ZyBpZD0iR3JvdXAtMjYiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDU4My4wMDAwMDAsIDk3MC4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxnIGlkPSJQYWdlIj48L2c+CiAgICAgICAgICAgICAgICA8ZyBpZD0iR3JvdXAtNiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNTYuMDAwMDAwLCA5Mi4wMDAwMDApIj4KICAgICAgICAgICAgICAgICAgICA8ZyBpZD0iR3JvdXAtMyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC4wMDAwMDAsIDAuMDAwMDg5KSI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXNrIGlkPSJtYXNrLTIiIGZpbGw9IndoaXRlIj4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1c2UgeGxpbms6aHJlZj0iI3BhdGgtMSI+PC91c2U+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvbWFzaz4KICAgICAgICAgICAgICAgICAgICAgICAgPGcgaWQ9IkNsaXAtMiI+PC9nPgogICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNOC40OTMxMTA1MywxNyBDMy43OTg0MjYzMiwxNi45OTU1MjYzIC0wLjAwNDIwNTI2MzE2LDEzLjE4NzUyNjMgMC4wMDAyNjg0MjEwNTMsOC40OTI4NDIxMSBDMC4wMDM4NDczNjg0MiwzLjc5ODE1Nzg5IDMuODExODQ3MzcsLTAuMDA0NDczNjg0MjEgOC41MDY1MzE1OCw4LjQ3MDMyOTQ3ZS0yMiBDMTMuMTk4NTMxNiwwLjAwMzU3ODk0NzM3IDE3LjAwMDI2ODQsMy44MDggMTcuMDAwMjY4NCw4LjUgQzE2Ljk5MzExMDUsMTMuMTkzNzg5NSAxMy4xODc3OTQ3LDE2Ljk5NTUyNjMgOC40OTMxMTA1MywxNyIgaWQ9IkZpbGwtMSIgZmlsbD0iI0VGQTgwQSIgbWFzaz0idXJsKCNtYXNrLTIpIj48L3BhdGg+CiAgICAgICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9Ik04Ljc4OTI2ODQyLDEwLjc2MzE0NzQgTDcuNzY5MjY4NDIsMTAuNzYzMTQ3NCBMNy43NjkyNjg0Miw4Ljc4OTM1Nzg5IEw4Ljk1MzksOC43ODkzNTc4OSBDOS4yMzAzNzM2OCw4Ljc4OTM1Nzg5IDEwLjI2OTE2MzIsOC44ODE1MTU3OSAxMC4yNjkxNjMyLDkuNjE4Nzc4OTUgQzEwLjI2OTE2MzIsMTAuMzU1MTQ3NCA5Ljc3NzA1Nzg5LDEwLjc3MDMwNTMgOC43ODkyNjg0MiwxMC43NzAzMDUzIEw4Ljc4OTI2ODQyLDEwLjc2MzE0NzQgWiBNNy43NjkyNjg0Miw2LjAzMjY3MzY4IEw4LjQyNzc5NDc0LDYuMDMyNjczNjggQzguODg3Njg5NDcsNi4wMzI2NzM2OCA5Ljc5NTg0NzM3LDYuMTEyMzA1MjYgOS43OTU4NDczNyw2Ljg2MjA5NDc0IEM5LjgyNzE2MzE2LDcuMzUxNTE1NzkgOS40NzM3NDIxMSw3Ljc4MDA5NDc0IDguOTg3MDA1MjYsNy44NDE4MzE1OCBMNy43NjkyNjg0Miw3Ljg0MTgzMTU4IEw3Ljc2OTI2ODQyLDYuMDMyNjczNjggWiBNMTAuNzg5MDA1Myw4LjA4NjA5NDc0IEMxMS4zNTgwNTc5LDcuNzY0ODg0MjEgMTEuNjY0OTUyNiw3LjEyNDI1MjYzIDExLjU1OTM3MzcsNi40ODAwNDIxMSBDMTEuNDI3ODQ3NCw1LjQ4Njg4NDIxIDEwLjI0MzIxNTgsNS4xMTE5ODk0NyA5LjMwOTExMDUzLDUuMDMzMjUyNjMgTDkuMzA5MTEwNTMsMy41Mzk5MzY4NCBMOC4zODg0MjYzMiwzLjUzOTkzNjg0IEw4LjM4ODQyNjMyLDUuMDE5ODMxNTggTDcuNzY5MjY4NDIsNS4wMTk4MzE1OCBMNy43NjkyNjg0MiwzLjUzOTkzNjg0IEw2Ljg0ODU4NDIxLDMuNTM5OTM2ODQgTDYuODQ4NTg0MjEsNS4wMTk4MzE1OCBMNC45OTM3OTQ3NCw1LjAxOTgzMTU4IEw0Ljk5Mzc5NDc0LDUuOTczNjIxMDUgTDUuNjgzNjM2ODQsNS45NzM2MjEwNSBDNS45OTMyMTU3OSw1Ljk3MzYyMTA1IDYuMTQ0NDI2MzIsNi4wNjU3Nzg5NSA2LjE0NDQyNjMyLDYuMzE1NDEwNTMgTDYuMTQ0NDI2MzIsMTAuNDE0MiBDNi4xNDQ0MjYzMiwxMC43NTY4ODQyIDUuOTc0NDI2MzIsMTAuODYxNTY4NCA1Ljc4OTIxNTc5LDEwLjg2MTU2ODQgTDUuMDg1MDU3ODksMTAuODYxNTY4NCBMNS4wODUwNTc4OSwxMS44MzUwNDIxIEw2Ljg3NDUzMTU4LDExLjgzNTA0MjEgTDYuODc0NTMxNTgsMTMuMzQ4OTM2OCBMNy44MDIzNzM2OCwxMy4zNDg5MzY4IEw3LjgwMjM3MzY4LDExLjgzNTA0MjEgTDguNDIxNTMxNTgsMTEuODM1MDQyMSBMOC40MjE1MzE1OCwxMy4zNDg5MzY4IEw5LjMyMjUzMTU4LDEzLjM0ODkzNjggTDkuMzIyNTMxNTgsMTEuODM1MDQyMSBMOS41MTkzNzM2OCwxMS44MzUwNDIxIEMxMS40MTQ0MjYzLDExLjgzNTA0MjEgMTIuMDQ2MTEwNSwxMC45MDgwOTQ3IDEyLjA0NjExMDUsOS42NDQ3MjYzMiBDMTIuMDMwOSw4LjkwMDMwNTI2IDExLjUxNDYzNjgsOC4yNTg3Nzg5NSAxMC43ODkwMDUzLDguMDg2MDk0NzQgWiIgaWQ9IkZpbGwtNCIgZmlsbD0iI0ZGRkZGRiI+PC9wYXRoPgogICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDxnIGlkPSJQYWdlIj48L2c+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4="}},"time_used":330,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":311,"receive":19,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/images/profit-bg.jpg","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.711Z","timestamp":1785126256711,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /images/profit-bg.jpg HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/jpeg\r\ncontent-length: 43820\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"65211e70-ab2c\"\r\nx-powered-by: PleskLin\r\naccept-ranges: bytes\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]},{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]}],"data":{"size":43820,"size_decoded":44071,"mime_type":"image/jpeg","magic":"JPEG image data, Exif standard: [TIFF image data, little-endian, direntries=12, height=600, bps=158, PhotometricInterpretation=RGB, orientation=upper-left, width=1500], progressive, precision 8, 1500x600, components 3","md5":"9140a986c1a8ca0f9dd65c3c0a5fff08","sha1":"b71dadec6ef420c0170c302cea137721080f11c1","sha256":"161901b352369bb60bc8a7462343c073dd117969b04794deb252e81836213c16","sha512":"6f6759ca41f7aa6f1b4985224ece8634f9d9a2c1903942f1c7ccfec0f3ae64437491db8c370977a0cb82e20603a7bc7df4d7239b007728d8fbbb3065de3ed04a","ssdeep":"768:q4v7aIqrc67Zw+M26tUSWO2unhgcSErWFS/eFy79LZfLx1FJBE6zWBLZYuAlmFlR:JeIqrb7ZHM26tVfhgRMhjdZfD9Em0L+C","tlshash":"4313d036a2a69d56f0e4c131579ec36363216b72a39727a7384d32043f7b3e64d58292","first_seen":"2026-07-27T03:36:45.020263Z","last_seen":"2026-07-27T04:25:12.87068Z","times_seen":2,"resource_available":false,"data":"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AAAAAAABADIAAAABAFoAAAAGAAAAAAABADUAAAABAC0AAAAGAAAAAAABOEJJTQP4AAAAAABwAAD/////////////////////////////A+gAAAAA/////////////////////////////wPoAAAAAP////////////////////////////8D6AAAAAD/////////////////////////////A+gAADhCSU0EAAAAAAAAAgAEOEJJTQQCAAAAAAAKAAAAAAAAAAAAADhCSU0EMAAAAAAABQEBAQEBADhCSU0ELQAAAAAABgABAAAABzhCSU0ECAAAAAAAEAAAAAEAAAJAAAACQAAAAAA4QklNBB4AAAAAAAQAAAAAOEJJTQQaAAAAAANHAAAABgAAAAAAAAAAAAACWAAABdwAAAAJAHAAcgBvAGYAaQB0AC0AYgBnAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAXcAAACWAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAABAAAAABAAAAAAAAbnVsbAAAAAIAAAAGYm91bmRzT2JqYwAAAAEAAAAAAABSY3QxAAAABAAAAABUb3AgbG9uZwAAAAAAAAAATGVmdGxvbmcAAAAAAAAAAEJ0b21sb25nAAACWAAAAABSZ2h0bG9uZwAABdwAAAAGc2xpY2VzVmxMcwAAAAFPYmpjAAAAAQAAAAAABXNsaWNlAAAAEgAAAAdzbGljZUlEbG9uZwAAAAAAAAAHZ3JvdXBJRGxvbmcAAAAAAAAABm9yaWdpbmVudW0AAAAMRVNsaWNlT3JpZ2luAAAADWF1dG9HZW5lcmF0ZWQAAAAAVHlwZWVudW0AAAAKRVNsaWNlVHlwZQAAAABJbWcgAAAABmJvdW5kc09iamMAAAABAAAAAAAAUmN0MQAAAAQAAAAAVG9wIGxvbmcAAAAAAAAAAExlZnRsb25nAAAAAAAAAABCdG9tbG9uZwAAAlgAAAAAUmdodGxvbmcAAAXcAAAAA3VybFRFWFQAAAABAAAAAAAAbnVsbFRFWFQAAAABAAAAAAAATXNnZVRFWFQAAAABAAAAAAAGYWx0VGFnVEVYVAAAAAEAAAAAAA5jZWxsVGV4dElzSFRNTGJvb2wBAAAACGNlbGxUZXh0VEVYVAAAAAEA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ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjMtYzAxMSA2Ni4xNDU2NjEsIDIwMTIvMDIvMDYtMTQ6NTY6MjcgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjM1OEU4OTBCMTRENkU3MTFBNzdCRUM2OUQwMThDMTUxIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjUwMDlFODcwMTQ2QTExRThCRjE5ODZBQjEzOTA3M0VBIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkM1MkM4N0FGMkJBN0VBMTFBOTA4RkREMzUzRjdBQkQ2IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpIiB4bXA6Q3JlYXRlRGF0ZT0iMjAyMC0wNi0wNVQwNTozNDo1OC0wNzowMCIgeG1wOk1vZGlmeURhdGU9IjIwMjAtMDYtMDVUMDY6MDQ6MjgtMDc6MDAiIHhtcDpNZXRhZGF0YURhdGU9IjIwMjAtMDYtMDVUMDY6MDQ6MjgtMDc6MDAiIGRjOmZvcm1hdD0iaW1hZ2UvanBlZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkFFM0RFQzBFNkExNEU4MTFBQTk1RUE4Qjc0Q0U1Rjg3IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjEyRUFGNEM4MTNBRTExRThCMDUzRjNDN0JDRTQ1NENFIi8+IDx4bXBNTTpIaXN0b3J5PiA8cmRmOlNlcT4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOkM1MkM4N0FGMkJBN0VBMTFBOTA4RkREMzUzRjdBQkQ2IiBzdEV2dDp3aGVuPSIyMDIwLTA2LTA1VDA2OjA0OjI4LTA3OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD94cGFja2V0IGVuZD0idyI/Pv/uACFBZG9iZQBkAAAAAAEDABADAgMGAAAAAAAAAAAAAAAA/9sAhAAGBAQHBQcLBgYLDgoICg4RDg4ODhEWExMTExMWEQwMDAwMDBEMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQcJCRMMEyITEyIUDg4OFBQODg4OFBEMDAwMDBERDAwMDAwMEQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAz/wgARCAJYBdwDAREAAhEB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"}},"time_used":102,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":101,"receive":1,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null}],"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/demo/arrow-put.svg","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"img","requested_by":"https://besttrader.live/demo/index.html","date":"2026-07-27T04:24:16.858Z","timestamp":1785126256858,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /demo/arrow-put.svg HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/demo/index.html\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/2 200 \r\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: image/svg+xml\r\ncontent-length: 695\r\nx-accel-version: 0.01\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: \"2b7-6071c9ab07c00\"\r\naccept-ranges: bytes\r\nx-powered-by: PleskLin\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":695,"size_decoded":974,"mime_type":"image/svg+xml","magic":"SVG Scalable Vector Graphics image","md5":"78bb6c6425b71a3fb165f78f42df16a2","sha1":"d94aa9f3426a38d02f594cdd40c5bf5cc3e34d64","sha256":"b97e6130e33d5cb960bc09c84ba5397fce8345c3181cd76a8ad36f320d74062f","sha512":"14d6b4e2af1014dce1efca3c3c0c9f0745cd8a92addb6178c620fb16ba24cafa4d8fcd89d1ab2e296231d9e4f0a5c1541a4388103719b248e8741b5f9e48cc98","ssdeep":"","tlshash":"520123775398279c948807294e2412872650c4537b30d5a8ffce3563df04ce310e6d5b","first_seen":"2023-05-30T11:35:28Z","last_seen":"2026-07-27T07:19:50.958802Z","times_seen":110,"resource_available":false,"data":"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzNSIgaGVpZ2h0PSIyNyIgdmlld0JveD0iMCAwIDM1IDI3Ij4KICA8ZGVmcz4KICAgIDxzdHlsZT4KICAgICAgLmNscy0xIHsKICAgICAgICBmaWxsOiAjZmZmOwogICAgICAgIGZpbGwtcnVsZTogZXZlbm9kZDsKICAgICAgfQogICAgPC9zdHlsZT4KICA8L2RlZnM+CiAgPHBhdGggY2xhc3M9ImNscy0xIiBkPSJNMTMuMjQxLDIyLjc4MWMxLjMsMS4xMywyLjEyOC4xNTksMi4xMjgsMC4xNTksMS4wNzQsMC4xODQsMS43NDYtMS45ODIsMi42LTIuNjFsMC4wMTcsNi42NTlMMTAsMjcsOS45ODksMTguOTk0QTM4LjcyMiwzOC43MjIsMCwwLDAsMTMuMjQxLDIyLjc4MVptLTcuMi02Ljc3MiwxLjk1NCwyLjRWMjdIMC4wMTRMMCw5Wm03LjkwNy00LjU3Mkw0LjMzNiwwLjgyOEEyLjUyNiwyLjUyNiwwLDAsMCwuODMxLjYxNiwyLjM4LDIuMzgsMCwwLDAsLjYxMyw0LjAzNEwxMi4xMjksMTYuNzQzYTIuNDcsMi40NywwLDAsMCwxLjg4OS44MTcsMi41MTIsMi41MTIsMCwwLDAsMS44Ny0uODU3bDMuMzIzLTMuODM2TDI1LjMxNywyMC4xLDE5LjYsMjQuODc4LDMzLjg0LDI2LDM1LDExLjk4NGwtNS45Miw0Ljk1NEwyMS4xNTIsNy41NDhhMi41MDYsMi41MDYsMCwwLDAtMS45LS44OCwyLjQ3NSwyLjQ3NSwwLDAsMC0xLjkxMi44NTlaIi8+Cjwvc3ZnPgo="}},"time_used":355,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":355,"receive":0,"ssl":0},"alerts":{"ids":null,"analyzer":[{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null},{"sensor_name":"dns4eu","sensor_type":"DNS","title":"DNS4EU","description":"DNS4EU","scan_date":"2026-07-27","alert":"Sinkholed","trigger":"besttrader.live","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/7504.1288d1d28b2f47f7ac43.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.357Z","timestamp":1785126257357,"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-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/7504.1288d1d28b2f47f7ac43.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/crypto-mkt-screener/?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 04:24:17 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: \"6a476ed7-56c8\"\r\nexpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nlast-modified: Fri, 03 Jul 2026 08:12: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/03/2026 10:56:33\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 1ac93051039ca43343338a657628e8b0\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":22216,"size_decoded":9150,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, ASCII text, with very long lines (3072)","md5":"185306b73eb6156ba89819ac42f09043","sha1":"0e91a337a58188b9760881d3eeb271cc4c8ac2d0","sha256":"4433e6c002fc34e6971b340b447cb59f9704a935f8ff79457535ae6c04f2a91e","sha512":"62e46a9de161a635772e81ac6f569c8a85bcde20c9143b5dbf3fff3d0acc7a668643a351bbfe42e981d28861648256d6fb72849990fbdf3089e0d8da3a378c9b","ssdeep":"384:t0ohD1L+Hfz4m0ehDLL+HfzLNVEGdmMDPHt+eiWxyATTSXUaaexXzIDyg5nAWhJw:t0ohJL+Hfcm0eh3L+HfdaGdmMDvwWxn4","tlshash":"3aa294c83ad3f0ea926721f514af14c7f2392e666c9d9660c15de0d87c3602df12bd6a","first_seen":"2026-07-04T00:11:22.529436Z","last_seen":"2026-07-27T07:14:43.777909Z","times_seen":230,"resource_available":true,"data":"InVzZSBzdHJpY3QiOyhzZWxmLndlYnBhY2tDaHVua3RyYWRpbmd2aWV3PXNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXd8fFtdKS5wdXNoKFtbNzUwNF0sezMwNzUwNChuLHQscil7ci5yKHQpLHIuZCh0LHtWRVJTSU9OOigpPT51LGFmdGVyOigpPT5EdCxhbGw6KCk9Plp0LGFsbEtleXM6KCk9PmRuLGFueTooKT0+bnIsYXNzaWduOigpPT5EbixiZWZvcmU6KCk9PlJ0LGJpbmQ6KCk9Pmp0LGJpbmRBbGw6KCk9Pl90LGNoYWluOigpPT5ndCxjaHVuazooKT0+VnIsY2xvbmU6KCk9PkZuLGNvbGxlY3Q6KCk9Pkp0LGNvbXBhY3Q6KCk9PlNyLGNvbXBvc2U6KCk9Pk50LGNvbnN0YW50OigpPT5ZLGNvbnRhaW5zOigpPT50cixjb3VudEJ5OigpPT5kcixjcmVhdGU6KCk9PlZuLGRlYm91bmNlOigpPT5NdCxkZWZhdWx0OigpPT5QcixkZWZhdWx0czooKT0+Um4sZGVmZXI6KCk9PkV0LGRlbGF5OigpPT5PdCxkZXRlY3Q6KCk9Pkx0LGRpZmZlcmVuY2U6KCk9PkVyLGRyb3A6KCk9PkFyLGVhY2g6KCk9PiR0LGVzY2FwZTooKT0+aXQsZXZlcnk6KCk9Plp0LGV4dGVuZDooKT0+Tm4sZXh0ZW5kT3duOigpPT5EbixmaWx0ZXI6KCk9Plh0LGZpbmQ6KCk9Pkx0LGZpbmRJbmRleDooKT0+cXQsZmluZEtleTooKT0+VnQsZmluZExhc3RJbmRleDooKT0+enQsZmluZFdoZXJlOigpPT5DdCxmaXJzdDooKT0+eHIsZmxhdHRlbjooKT0+T3IsZm9sZGw6KCk9Pkh0LGZvbGRyOigpPT5RdCxmb3JFYWNoOigpPT4kdCxmdW5jdGlvbnM6KCk9PkJuLGdldDooKT0+VW4sZ3JvdXBCeTooKT0+aHIsaGFzOigpPT5LbixoZWFkOigpPT54cixpZGVudGl0eTooKT0+TG4saW5jbHVkZTooKT0+dHIsaW5jbHVkZXM6KCk9PnRyLGluZGV4Qnk6KCk9PnZyLGluZGV4T2Y6KCk9PlV0LGluaXRpYWw6KCk9PmpyLGluamVjdDooKT0+SHQsaW50ZXJzZWN0aW9uOigpPT5JcixpbnZlcnQ6KCk9Pk1uLGludm9rZTooKT0+cnIsaXNBcmd1bWVudHM6KCk9PkgsaXNBcnJheTooKT0+JCxpc0FycmF5QnVmZmVyOigpPT5GLGlzQm9vbGVhbjooKT0+ayxpc0RhdGFWaWV3OigpPT5DLGlzRGF0ZTooKT0+RCxpc0VsZW1lbnQ6KCk9Pk0saXNFbXB0eTooKT0+Zm4saXNFcXVhbDooKT0+dm4saXNFcnJvcjooKT0+VCxpc0Zpbml0ZTooKT0+USxpc0Z1bmN0aW9uOigpPT5XLGlzTWFwOigpPT5Bbixpc01hdGNoOigpPT5sbixpc05hTjooKT0+WCxpc051bGw6KCk9Pk8saXNOdW1iZXI6KCk9Pk4saXNPYmplY3Q6KCk9PlMsaXNSZWdFeHA6KCk9PlIsaXNTZXQ6KCk9PlNuLGlzU3RyaW5nOigpPT5JLGlzU3ltYm9sOigpPT5WLGlzVHlwZWRBcnJheTooKT0+dW4saXNVbmRlZmluZWQ6KCk9PkUsaXNXZWFrTWFwOigpPT5fbixpc1dlYWtTZXQ6KCk9Pk9uLGl0ZXJhdGVlOigpPT5IbixrZXlzOigpPT5jbixsYXN0OigpPT5fcixsYXN0SW5kZXhPZjooKT0+S3QsbWFwOigpPT5KdCxtYXBPYmplY3Q6KCk9PlhuLG1hdGNoZXI6KCk9PkNuLG1hdGNoZXM6KCk9PkNuLG1heDooKT0+aXIsbWVtb2l6ZTooKT0+U3QsbWV0aG9kczooKT0+Qm4sbWluOigpPT5vcixtaXhpbjooKT0+cXIsbmVnYXRlOigpPT5JdCxub29wOigpPT5Zbixub3c6KCk9PnJ0LG9iamVjdDooKT0+UnIsb21pdDooKT0+d3Isb25jZTooKT0+VHQscGFpcnM6KCk9PmtuLHBhcnRpYWw6KCk9Pnd0LHBhcnRpdGlvbjooKT0+eXIscGljazooKT0+YnIscGx1Y2s6KCk9PmVyLHByb3BlcnR5OigpPT4kbixwcm9wZXJ0eU9mOigpPT5abixyYW5kb206KCk9PnR0LHJhbmdlOigpPT5UcixyZWR1Y2U6KCk9Pkh0LHJlZHVjZVJpZ2h0OigpPT5RdCxyZWplY3Q6KCk9Pll0LHJlc3Q6KCk9PkFyLHJlc3RBcmd1bWVudHM6KCk9Pl8scmVzdWx0OigpPT52dCxzYW1wbGU6KCk9PmZyLHNlbGVjdDooKT0+WHQsc2h1ZmZsZTooKT0+bHIsc2l6ZTooKT0+Z3Isc29tZTooKT0+bnIsc29ydEJ5OigpPT5zcixzb3J0ZWRJbmRleDooKT0+V3QsdGFpbDooKT0+QXIsdGFrZTooKT0+eHIsdGFwOigpPT5xbix0ZW1wbGF0ZTooKT0+aHQsdGVtcGxhdGVTZXR0aW5nczooKT0+YXQsdGhyb3R0bGU6KCk9Pmt0LHRpbWVzOigpPT5udCx0b0FycmF5OigpPT5jcix0b1BhdGg6KCk9PnpuLHRyYW5zcG9zZTooKT0+TnIsdW5lc2NhcGU6KCk9Pm90LHVuaW9uOigpPT5Ccix1bmlxOigpPT5Ncix1bmlxdWU6KCk9Pk1yLHVuaXF1ZUlkOigpPT55dCx1bnppcDooKT0+TnIsdmFsdWVzOigpPT5Fbix3aGVyZTooKT0+dXIsd2l0aG91dDooKT0+a3Isd3JhcDooKT0+QnQsemlwOigpPT5Ecn0pO3ZhciBlPXt9O3IucihlKSxyLmQoZSx7VkVSU0lPTjooKT0+dSxhZnRlcjooKT0+RHQsYWxsOigpPT5adCxhbGxLZXlzOigpPT5kbixhbnk6KCk9Pm5yLGFzc2lnbjooKT0+RG4sYmVmb3JlOigpPT5SdCxiaW5kOigpPT5qdCxiaW5kQWxsOigpPT5fdCxjaGFpbjooKT0+Z3QsY2h1bms6KCk9PlZyLGNsb25lOigpPT5Gbixjb2xsZWN0OigpPT5KdCxjb21wYWN0OigpPT5Tcixjb21wb3NlOigpPT5OdCxjb25zdGFudDooKT0+WSxjb250YWluczooKT0+dHIsY291bnRCeTooKT0+ZHIsY3JlYXRlOigpPT5WbixkZWJvdW5jZTooKT0+TXQsZGVmYXVsdDooKT0+enIsZGVmYXVsdHM6KCk9PlJuLGRlZmVyOigpPT5FdCxkZWxheTooKT0+T3QsZGV0ZWN0OigpPT5MdCxkaWZmZXJlbmNlOigpPT5Fcixkcm9wOigpPT5BcixlYWNoOigpPT4kdCxlc2NhcGU6KCk9Pml0LGV2ZXJ5OigpPT5adCxleHRlbmQ6KCk9Pk5uLGV4dGVuZE93bjooKT0+RG4sZmlsdGVyOigpPT5YdCxmaW5kOigpPT5MdCxmaW5kSW5kZXg6KCk9PnF0LGZpbmRLZXk6KCk9PlZ0LGZpbmRMYXN0SW5kZXg6KCk9Pnp0LGZpbmRXaGVyZTooKT0+Q3QsZmlyc3Q6KCk9PnhyLGZsYXR0ZW46KCk9Pk9yLGZvbGRsOigpPT5IdCxmb2xkcjooKT0+UXQsZm9yRWFjaDooKT0+JHQsZnVuY3Rpb25zOigpPT5CbixnZXQ6KCk9PlVuLGdyb3VwQnk6KCk9PmhyLGhhczooKT0+S24saGVhZDooKT0+eHIsaWRlbnRpdHk6KCk9PkxuLGluY2x1ZGU6KCk9PnRyLGluY2x1ZGVzOigpPT50cixpbmRleEJ5OigpPT52cixpbmRleE9mOigpPT5VdCxpbml0aWFsOigpPT5qcixpbmplY3Q6KCk9Pkh0LGludGVyc2VjdGlvbjooKT0+SXIsCmludmVydDooKT0+TW4saW52b2tlOigpPT5ycixpc0FyZ3VtZW50czooKT0+SCxpc0FycmF5OigpPT4kLGlzQXJyYXlCdWZmZXI6KCk9PkYsaXNCb29sZWFuOigpPT5rLGlzRGF0YVZpZXc6KCk9PkMsaXNEYXRlOigpPT5ELGlzRWxlbWVudDooKT0+TSxpc0VtcHR5OigpPT5mbixpc0VxdWFsOigpPT52bixpc0Vycm9yOigpPT5ULGlzRmluaXRlOigpPT5RLGlzRnVuY3Rpb246KCk9PlcsaXNNYXA6KCk9PkFuLGlzTWF0Y2g6KCk9PmxuLGlzTmFOOigpPT5YLGlzTnVsbDooKT0+Tyxpc051bWJlcjooKT0+Tixpc09iamVjdDooKT0+Uyxpc1JlZ0V4cDooKT0+Uixpc1NldDooKT0+U24saXNTdHJpbmc6KCk9PkksaXNTeW1ib2w6KCk9PlYsaXNUeXBlZEFycmF5OigpPT51bixpc1VuZGVmaW5lZDooKT0+RSxpc1dlYWtNYXA6KCk9Pl9uLGlzV2Vha1NldDooKT0+T24saXRlcmF0ZWU6KCk9PkhuLGtleXM6KCk9PmNuLGxhc3Q6KCk9Pl9yLGxhc3RJbmRleE9mOigpPT5LdCxtYXA6KCk9Pkp0LG1hcE9iamVjdDooKT0+WG4sbWF0Y2hlcjooKT0+Q24sbWF0Y2hlczooKT0+Q24sbWF4OigpPT5pcixtZW1vaXplOigpPT5TdCxtZXRob2RzOigpPT5CbixtaW46KCk9Pm9yLG1peGluOigpPT5xcixuZWdhdGU6KCk9Pkl0LG5vb3A6KCk9PlluLG5vdzooKT0+cnQsb2JqZWN0OigpPT5ScixvbWl0OigpPT53cixvbmNlOigpPT5UdCxwYWlyczooKT0+a24scGFydGlhbDooKT0+d3QscGFydGl0aW9uOigpPT55cixwaWNrOigpPT5icixwbHVjazooKT0+ZXIscHJvcGVydHk6KCk9PiRuLHByb3BlcnR5T2Y6KCk9PlpuLHJhbmRvbTooKT0+dHQscmFuZ2U6KCk9PlRyLHJlZHVjZTooKT0+SHQscmVkdWNlUmlnaHQ6KCk9PlF0LHJlamVjdDooKT0+WXQscmVzdDooKT0+QXIscmVzdEFyZ3VtZW50czooKT0+XyxyZXN1bHQ6KCk9PnZ0LHNhbXBsZTooKT0+ZnIsc2VsZWN0OigpPT5YdCxzaHVmZmxlOigpPT5scixzaXplOigpPT5ncixzb21lOigpPT5ucixzb3J0Qnk6KCk9PnNyLHNvcnRlZEluZGV4OigpPT5XdCx0YWlsOigpPT5Bcix0YWtlOigpPT54cix0YXA6KCk9PnFuLHRlbXBsYXRlOigpPT5odCx0ZW1wbGF0ZVNldHRpbmdzOigpPT5hdCx0aHJvdHRsZTooKT0+a3QsdGltZXM6KCk9Pm50LHRvQXJyYXk6KCk9PmNyLHRvUGF0aDooKT0+em4sdHJhbnNwb3NlOigpPT5Ocix1bmVzY2FwZTooKT0+b3QsdW5pb246KCk9PkJyLHVuaXE6KCk9Pk1yLHVuaXF1ZTooKT0+TXIsdW5pcXVlSWQ6KCk9Pnl0LHVuemlwOigpPT5Ocix2YWx1ZXM6KCk9PkVuLHdoZXJlOigpPT51cix3aXRob3V0OigpPT5rcix3cmFwOigpPT5CdCx6aXA6KCk9PkRyfSk7dmFyIHU9IjEuMTMuOCIsaT0ib2JqZWN0Ij09dHlwZW9mIHNlbGYmJnNlbGYuc2VsZj09PXNlbGYmJnNlbGZ8fCJvYmplY3QiPT10eXBlb2Ygci5nJiZyLmcuZ2xvYmFsPT09ci5nJiZyLmd8fEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCl8fHt9LG89QXJyYXkucHJvdG90eXBlLGE9T2JqZWN0LnByb3RvdHlwZSxjPSJ1bmRlZmluZWQiIT10eXBlb2YgU3ltYm9sP1N5bWJvbC5wcm90b3R5cGU6bnVsbCxmPW8ucHVzaCxsPW8uc2xpY2Uscz1hLnRvU3RyaW5nLHA9YS5oYXNPd25Qcm9wZXJ0eSxoPSJ1bmRlZmluZWQiIT10eXBlb2YgQXJyYXlCdWZmZXIsdj0idW5kZWZpbmVkIiE9dHlwZW9mIERhdGFWaWV3LGQ9QXJyYXkuaXNBcnJheSx5PU9iamVjdC5rZXlzLGc9T2JqZWN0LmNyZWF0ZSxtPWgmJkFycmF5QnVmZmVyLmlzVmlldyxiPWlzTmFOLHc9aXNGaW5pdGUsaj0he3RvU3RyaW5nOm51bGx9LnByb3BlcnR5SXNFbnVtZXJhYmxlKCJ0b1N0cmluZyIpLHg9WyJ2YWx1ZU9mIiwiaXNQcm90b3R5cGVPZiIsInRvU3RyaW5nIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJoYXNPd25Qcm9wZXJ0eSIsInRvTG9jYWxlU3RyaW5nIl0sQT1NYXRoLnBvdygyLDUzKS0xO2Z1bmN0aW9uIF8obix0KXtyZXR1cm4gdD1udWxsPT10P24ubGVuZ3RoLTE6K3QsZnVuY3Rpb24oKXtmb3IodmFyIHI9TWF0aC5tYXgoYXJndW1lbnRzLmxlbmd0aC10LDApLGU9QXJyYXkociksdT0wO3U8cjt1KyspZVt1XT1hcmd1bWVudHNbdSt0XTtzd2l0Y2godCl7Y2FzZSAwOnJldHVybiBuLmNhbGwodGhpcyxlKTtjYXNlIDE6cmV0dXJuIG4uY2FsbCh0aGlzLGFyZ3VtZW50c1swXSxlKTtjYXNlIDI6cmV0dXJuIG4uY2FsbCh0aGlzLGFyZ3VtZW50c1swXSxhcmd1bWVudHNbMV0sZSl9dmFyIGk9QXJyYXkodCsxKTtmb3IodT0wO3U8dDt1KyspaVt1XT1hcmd1bWVudHNbdV07cmV0dXJuIGlbdF09ZSxuLmFwcGx5KHRoaXMsaSl9fWZ1bmN0aW9uIFMobil7dmFyIHQ9dHlwZW9mIG47cmV0dXJuImZ1bmN0aW9uIj09PXR8fCJvYmplY3QiPT09dCYmISFufWZ1bmN0aW9uIE8obil7cmV0dXJuIG51bGw9PT1ufWZ1bmN0aW9uIEUobil7cmV0dXJuIHZvaWQgMD09PW59ZnVuY3Rpb24gayhuKXtyZXR1cm4hMD09PW58fCExPT09bnx8IltvYmplY3QgQm9vbGVhbl0iPT09cy5jYWxsKG4pfWZ1bmN0aW9uIE0obil7cmV0dXJuISghbnx8MSE9PW4ubm9kZVR5cGUpfWZ1bmN0aW9uIEIobil7dmFyIHQ9IltvYmplY3QgIituKyJdIjtyZXR1cm4gZnVuY3Rpb24obil7cmV0dXJuIHMuY2FsbChuKT09PXR9fWNvbnN0IEk9QigiU3RyaW5nIiksTj1CKCJOdW1iZXIiKSxEPUIoIkRhdGUiKSxSPUIoIlJlZ0V4cCIpLFQ9QigiRXJyb3IiKSxWPUIoIlN5bWJvbCIpLEY9QigiQXJyYXlCdWZmZXIiKTt2YXIgcT1CKCJGdW5jdGlvbiIpLHo9aS5kb2N1bWVudCYmaS5kb2N1bWVudC5jaGlsZE5vZGVzOyJvYmplY3QiIT10eXBlb2YgSW50OEFycmF5JiYiZnVuY3Rpb24iIT10eXBlb2YgeiYmKHE9ZnVuY3Rpb24obil7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIG58fCExfSk7Y29uc3QgVz1xLFA9QigiT2JqZWN0Iik7dmFyIFU9diYmKCEvXFtuYXRpdmUgY29kZVxdLy50ZXN0KFN0cmluZyhEYXRhVmlldykpfHxQKG5ldyBEYXRhVmlldyhuZXcgQXJyYXlCdWZmZXIoOCkpKSksSz0idW5kZWZpbmVkIiE9dHlwZW9mIE1hcCYmUChuZXcgTWFwKSxMPUIoIkRhdGFWaWV3Iik7Y29uc3QgQz1VP2Z1bmN0aW9uKG4pewpyZXR1cm4gbnVsbCE9biYmVyhuLmdldEludDgpJiZGKG4uYnVmZmVyKX06TCwkPWR8fEIoIkFycmF5Iik7ZnVuY3Rpb24gSihuLHQpe3JldHVybiBudWxsIT1uJiZwLmNhbGwobix0KX12YXIgRz1CKCJBcmd1bWVudHMiKTshZnVuY3Rpb24oKXtHKGFyZ3VtZW50cyl8fChHPWZ1bmN0aW9uKG4pe3JldHVybiBKKG4sImNhbGxlZSIpfSl9KCk7Y29uc3QgSD1HO2Z1bmN0aW9uIFEobil7cmV0dXJuIVYobikmJncobikmJiFpc05hTihwYXJzZUZsb2F0KG4pKX1mdW5jdGlvbiBYKG4pe3JldHVybiBOKG4pJiZiKG4pfWZ1bmN0aW9uIFkobil7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIG59fWZ1bmN0aW9uIFoobil7cmV0dXJuIGZ1bmN0aW9uKHQpe3ZhciByPW4odCk7cmV0dXJuIm51bWJlciI9PXR5cGVvZiByJiZyPj0wJiZyPD1BfX1mdW5jdGlvbiBubihuKXtyZXR1cm4gZnVuY3Rpb24odCl7cmV0dXJuIG51bGw9PXQ/dm9pZCAwOnRbbl19fWNvbnN0IHRuPW5uKCJieXRlTGVuZ3RoIikscm49Wih0bik7dmFyIGVuPS9cW29iamVjdCAoKEl8VWkpbnQoOHwxNnwzMil8RmxvYXQoMzJ8NjQpfFVpbnQ4Q2xhbXBlZHxCaWcoSXxVaSludDY0KUFycmF5XF0vO2NvbnN0IHVuPWg/ZnVuY3Rpb24obil7cmV0dXJuIG0/bShuKSYmIUMobik6cm4obikmJmVuLnRlc3Qocy5jYWxsKG4pKX06WSghMSksb249bm4oImxlbmd0aCIpO2Z1bmN0aW9uIGFuKG4sdCl7dD1mdW5jdGlvbihuKXtmb3IodmFyIHQ9e30scj1uLmxlbmd0aCxlPTA7ZTxyOysrZSl0W25bZV1dPSEwO3JldHVybntjb250YWluczpmdW5jdGlvbihuKXtyZXR1cm4hMD09PXRbbl19LHB1c2g6ZnVuY3Rpb24ocil7cmV0dXJuIHRbcl09ITAsbi5wdXNoKHIpfX19KHQpO3ZhciByPXgubGVuZ3RoLGU9bi5jb25zdHJ1Y3Rvcix1PVcoZSkmJmUucHJvdG90eXBlfHxhLGk9ImNvbnN0cnVjdG9yIjtmb3IoSihuLGkpJiYhdC5jb250YWlucyhpKSYmdC5wdXNoKGkpO3ItLTspKGk9eFtyXSlpbiBuJiZuW2ldIT09dVtpXSYmIXQuY29udGFpbnMoaSkmJnQucHVzaChpKX1mdW5jdGlvbiBjbihuKXtpZighUyhuKSlyZXR1cm5bXTtpZih5KXJldHVybiB5KG4pO3ZhciB0PVtdO2Zvcih2YXIgciBpbiBuKUoobixyKSYmdC5wdXNoKHIpO3JldHVybiBqJiZhbihuLHQpLHR9ZnVuY3Rpb24gZm4obil7aWYobnVsbD09bilyZXR1cm4hMDt2YXIgdD1vbihuKTtyZXR1cm4ibnVtYmVyIj09dHlwZW9mIHQmJigkKG4pfHxJKG4pfHxIKG4pKT8wPT09dDowPT09b24oY24obikpfWZ1bmN0aW9uIGxuKG4sdCl7dmFyIHI9Y24odCksZT1yLmxlbmd0aDtpZihudWxsPT1uKXJldHVybiFlO2Zvcih2YXIgdT1PYmplY3QobiksaT0wO2k8ZTtpKyspe3ZhciBvPXJbaV07aWYodFtvXSE9PXVbb118fCEobyBpbiB1KSlyZXR1cm4hMX1yZXR1cm4hMH1mdW5jdGlvbiBzbihuKXtyZXR1cm4gbiBpbnN0YW5jZW9mIHNuP246dGhpcyBpbnN0YW5jZW9mIHNuP3ZvaWQodGhpcy5fd3JhcHBlZD1uKTpuZXcgc24obil9ZnVuY3Rpb24gcG4obil7cmV0dXJuIG5ldyBVaW50OEFycmF5KG4uYnVmZmVyfHxuLG4uYnl0ZU9mZnNldHx8MCx0bihuKSl9c24uVkVSU0lPTj11LHNuLnByb3RvdHlwZS52YWx1ZT1mdW5jdGlvbigpe3JldHVybiB0aGlzLl93cmFwcGVkfSxzbi5wcm90b3R5cGUudmFsdWVPZj1zbi5wcm90b3R5cGUudG9KU09OPXNuLnByb3RvdHlwZS52YWx1ZSxzbi5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gU3RyaW5nKHRoaXMuX3dyYXBwZWQpfTt2YXIgaG49IltvYmplY3QgRGF0YVZpZXddIjtmdW5jdGlvbiB2bihuLHQpe2Zvcih2YXIgcj1be2E6bixiOnR9XSxlPVtdLHU9W107ci5sZW5ndGg7KXt2YXIgaT1yLnBvcCgpO2lmKCEwIT09aSl7aWYoKG49aS5hKT09PSh0PWkuYikpe2lmKDAhPT1ufHwxL249PTEvdCljb250aW51ZTtyZXR1cm4hMX1pZihudWxsPT1ufHxudWxsPT10KXJldHVybiExO2lmKG4hPW4pe2lmKHQhPXQpY29udGludWU7cmV0dXJuITF9dmFyIG89dHlwZW9mIG47aWYoImZ1bmN0aW9uIiE9PW8mJiJvYmplY3QiIT09byYmIm9iamVjdCIhPXR5cGVvZiB0KXJldHVybiExO24gaW5zdGFuY2VvZiBzbiYmKG49bi5fd3JhcHBlZCksdCBpbnN0YW5jZW9mIHNuJiYodD10Ll93cmFwcGVkKTt2YXIgYT1zLmNhbGwobik7aWYoYSE9PXMuY2FsbCh0KSlyZXR1cm4hMTtpZihVJiYiW29iamVjdCBPYmplY3RdIj09YSYmQyhuKSl7aWYoIUModCkpcmV0dXJuITE7YT1obn1zd2l0Y2goYSl7Y2FzZSJbb2JqZWN0IFJlZ0V4cF0iOmNhc2UiW29iamVjdCBTdHJpbmddIjppZigiIituPT0iIit0KWNvbnRpbnVlO3JldHVybiExO2Nhc2UiW29iamVjdCBOdW1iZXJdIjpyLnB1c2goe2E6K24sYjordH0pO2NvbnRpbnVlO2Nhc2UiW29iamVjdCBEYXRlXSI6Y2FzZSJbb2JqZWN0IEJvb2xlYW5dIjppZigrbj09K3QpY29udGludWU7cmV0dXJuITE7Y2FzZSJbb2JqZWN0IFN5bWJvbF0iOmlmKGMudmFsdWVPZi5jYWxsKG4pPT09Yy52YWx1ZU9mLmNhbGwodCkpY29udGludWU7cmV0dXJuITE7Y2FzZSJbb2JqZWN0IEFycmF5QnVmZmVyXSI6Y2FzZSBobjpyLnB1c2goe2E6cG4obiksYjpwbih0KX0pO2NvbnRpbnVlfXZhciBmPSJbb2JqZWN0IEFycmF5XSI9PT1hO2lmKCFmJiZ1bihuKSl7aWYodG4obikhPT10bih0KSlyZXR1cm4hMTtpZihuLmJ1ZmZlcj09PXQuYnVmZmVyJiZuLmJ5dGVPZmZzZXQ9PT10LmJ5dGVPZmZzZXQpY29udGludWU7Zj0hMH1pZighZil7aWYoIm9iamVjdCIhPXR5cGVvZiBufHwib2JqZWN0IiE9dHlwZW9mIHQpcmV0dXJuITE7dmFyIGw9bi5jb25zdHJ1Y3RvcixwPXQuY29uc3RydWN0b3I7aWYobCE9PXAmJiEoVyhsKSYmbCBpbnN0YW5jZW9mIGwmJlcocCkmJnAgaW5zdGFuY2VvZiBwKSYmImNvbnN0cnVjdG9yImluIG4mJiJjb25zdHJ1Y3RvciJpbiB0KXJldHVybiExfWZvcih2YXIgaD1lLmxlbmd0aDtoLS07KWlmKGVbaF09PT1uKXtpZih1W2hdPT09dClicmVhaztyZXR1cm4hMX1pZighKGg+PTApKWlmKGUucHVzaChuKSx1LnB1c2godCksci5wdXNoKCEwKSxmKXtpZigoaD1uLmxlbmd0aCkhPT10Lmxlbmd0aClyZXR1cm4hMQo7Zm9yKDtoLS07KXIucHVzaCh7YTpuW2hdLGI6dFtoXX0pfWVsc2V7dmFyIHYsZD1jbihuKTtpZihoPWQubGVuZ3RoLGNuKHQpLmxlbmd0aCE9PWgpcmV0dXJuITE7Zm9yKDtoLS07KXtpZighSih0LHY9ZFtoXSkpcmV0dXJuITE7ci5wdXNoKHthOm5bdl0sYjp0W3ZdfSl9fX1lbHNlIGUucG9wKCksdS5wb3AoKX1yZXR1cm4hMH1mdW5jdGlvbiBkbihuKXtpZighUyhuKSlyZXR1cm5bXTt2YXIgdD1bXTtmb3IodmFyIHIgaW4gbil0LnB1c2gocik7cmV0dXJuIGomJmFuKG4sdCksdH1mdW5jdGlvbiB5bihuKXt2YXIgdD1vbihuKTtyZXR1cm4gZnVuY3Rpb24ocil7aWYobnVsbD09cilyZXR1cm4hMTt2YXIgZT1kbihyKTtpZihvbihlKSlyZXR1cm4hMTtmb3IodmFyIHU9MDt1PHQ7dSsrKWlmKCFXKHJbblt1XV0pKXJldHVybiExO3JldHVybiBuIT09am58fCFXKHJbZ25dKX19dmFyIGduPSJmb3JFYWNoIixtbj1bImNsZWFyIiwiZGVsZXRlIl0sYm49WyJnZXQiLCJoYXMiLCJzZXQiXSx3bj1tbi5jb25jYXQoZ24sYm4pLGpuPW1uLmNvbmNhdChibikseG49WyJhZGQiXS5jb25jYXQobW4sZ24sImhhcyIpO2NvbnN0IEFuPUs/eW4od24pOkIoIk1hcCIpLF9uPUs/eW4oam4pOkIoIldlYWtNYXAiKSxTbj1LP3luKHhuKTpCKCJTZXQiKSxPbj1CKCJXZWFrU2V0Iik7ZnVuY3Rpb24gRW4obil7Zm9yKHZhciB0PWNuKG4pLHI9dC5sZW5ndGgsZT1BcnJheShyKSx1PTA7dTxyO3UrKyllW3VdPW5bdFt1XV07cmV0dXJuIGV9ZnVuY3Rpb24ga24obil7Zm9yKHZhciB0PWNuKG4pLHI9dC5sZW5ndGgsZT1BcnJheShyKSx1PTA7dTxyO3UrKyllW3VdPVt0W3VdLG5bdFt1XV1dO3JldHVybiBlfWZ1bmN0aW9uIE1uKG4pe2Zvcih2YXIgdD17fSxyPWNuKG4pLGU9MCx1PXIubGVuZ3RoO2U8dTtlKyspdFtuW3JbZV1dXT1yW2VdO3JldHVybiB0fWZ1bmN0aW9uIEJuKG4pe3ZhciB0PVtdO2Zvcih2YXIgciBpbiBuKVcobltyXSkmJnQucHVzaChyKTtyZXR1cm4gdC5zb3J0KCl9ZnVuY3Rpb24gSW4obix0KXtyZXR1cm4gZnVuY3Rpb24ocil7dmFyIGU9YXJndW1lbnRzLmxlbmd0aDtpZih0JiYocj1PYmplY3QocikpLGU8Mnx8bnVsbD09cilyZXR1cm4gcjtmb3IodmFyIHU9MTt1PGU7dSsrKWZvcih2YXIgaT1hcmd1bWVudHNbdV0sbz1uKGkpLGE9by5sZW5ndGgsYz0wO2M8YTtjKyspe3ZhciBmPW9bY107dCYmdm9pZCAwIT09cltmXXx8KHJbZl09aVtmXSl9cmV0dXJuIHJ9fWNvbnN0IE5uPUluKGRuKSxEbj1JbihjbiksUm49SW4oZG4sITApO2Z1bmN0aW9uIFRuKG4pe2lmKCFTKG4pKXJldHVybnt9O2lmKGcpcmV0dXJuIGcobik7dmFyIHQ9ZnVuY3Rpb24oKXt9O3QucHJvdG90eXBlPW47dmFyIHI9bmV3IHQ7cmV0dXJuIHQucHJvdG90eXBlPW51bGwscn1mdW5jdGlvbiBWbihuLHQpe3ZhciByPVRuKG4pO3JldHVybiB0JiZEbihyLHQpLHJ9ZnVuY3Rpb24gRm4obil7cmV0dXJuIFMobik/JChuKT9uLnNsaWNlKCk6Tm4oe30sbik6bn1mdW5jdGlvbiBxbihuLHQpe3JldHVybiB0KG4pLG59ZnVuY3Rpb24gem4obil7cmV0dXJuICQobik/bjpbbl19ZnVuY3Rpb24gV24obil7cmV0dXJuIHNuLnRvUGF0aChuKX1mdW5jdGlvbiBQbihuLHQpe2Zvcih2YXIgcj10Lmxlbmd0aCxlPTA7ZTxyO2UrKyl7aWYobnVsbD09bilyZXR1cm47bj1uW3RbZV1dfXJldHVybiByP246dm9pZCAwfWZ1bmN0aW9uIFVuKG4sdCxyKXt2YXIgZT1QbihuLFduKHQpKTtyZXR1cm4gRShlKT9yOmV9ZnVuY3Rpb24gS24obix0KXtmb3IodmFyIHI9KHQ9V24odCkpLmxlbmd0aCxlPTA7ZTxyO2UrKyl7dmFyIHU9dFtlXTtpZighSihuLHUpKXJldHVybiExO249blt1XX1yZXR1cm4hIXJ9ZnVuY3Rpb24gTG4obil7cmV0dXJuIG59ZnVuY3Rpb24gQ24obil7cmV0dXJuIG49RG4oe30sbiksZnVuY3Rpb24odCl7cmV0dXJuIGxuKHQsbil9fWZ1bmN0aW9uICRuKG4pe3JldHVybiBuPVduKG4pLGZ1bmN0aW9uKHQpe3JldHVybiBQbih0LG4pfX1mdW5jdGlvbiBKbihuLHQscil7aWYodm9pZCAwPT09dClyZXR1cm4gbjtzd2l0Y2gocj8/Myl7Y2FzZSAxOnJldHVybiBmdW5jdGlvbihyKXtyZXR1cm4gbi5jYWxsKHQscil9O2Nhc2UgMzpyZXR1cm4gZnVuY3Rpb24ocixlLHUpe3JldHVybiBuLmNhbGwodCxyLGUsdSl9O2Nhc2UgNDpyZXR1cm4gZnVuY3Rpb24ocixlLHUsaSl7cmV0dXJuIG4uY2FsbCh0LHIsZSx1LGkpfX1yZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gbi5hcHBseSh0LGFyZ3VtZW50cyl9fWZ1bmN0aW9uIEduKG4sdCxyKXtyZXR1cm4gbnVsbD09bj9MbjpXKG4pP0puKG4sdCxyKTpTKG4pJiYhJChuKT9DbihuKTokbihuKX1mdW5jdGlvbiBIbihuLHQpe3JldHVybiBHbihuLHQsMS8wKX1mdW5jdGlvbiBRbihuLHQscil7cmV0dXJuIHNuLml0ZXJhdGVlIT09SG4/c24uaXRlcmF0ZWUobix0KTpHbihuLHQscil9ZnVuY3Rpb24gWG4obix0LHIpe3Q9UW4odCxyKTtmb3IodmFyIGU9Y24obiksdT1lLmxlbmd0aCxpPXt9LG89MDtvPHU7bysrKXt2YXIgYT1lW29dO2lbYV09dChuW2FdLGEsbil9cmV0dXJuIGl9ZnVuY3Rpb24gWW4oKXt9ZnVuY3Rpb24gWm4obil7cmV0dXJuIG51bGw9PW4/WW46ZnVuY3Rpb24odCl7cmV0dXJuIFVuKG4sdCl9fWZ1bmN0aW9uIG50KG4sdCxyKXt2YXIgZT1BcnJheShNYXRoLm1heCgwLG4pKTt0PUpuKHQsciwxKTtmb3IodmFyIHU9MDt1PG47dSsrKWVbdV09dCh1KTtyZXR1cm4gZX1mdW5jdGlvbiB0dChuLHQpe3JldHVybiBudWxsPT10JiYodD1uLG49MCksbitNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqKHQtbisxKSl9c24udG9QYXRoPXpuLHNuLml0ZXJhdGVlPUhuO2NvbnN0IHJ0PURhdGUubm93fHxmdW5jdGlvbigpe3JldHVybihuZXcgRGF0ZSkuZ2V0VGltZSgpfTtmdW5jdGlvbiBldChuKXt2YXIgdD1mdW5jdGlvbih0KXtyZXR1cm4gblt0XX0scj0iKD86IitjbihuKS5qb2luKCJ8IikrIikiLGU9UmVnRXhwKHIpLHU9UmVnRXhwKHIsImciKTtyZXR1cm4gZnVuY3Rpb24obil7cmV0dXJuIG49bnVsbD09bj8iIjoiIituLGUudGVzdChuKT9uLnJlcGxhY2UodSx0KTpufX1jb25zdCB1dD17IiYiOiImYW1wOyIsCiI8IjoiJmx0OyIsIj4iOiImZ3Q7IiwnIic6IiZxdW90OyIsIiciOiImI3gyNzsiLCJgIjoiJiN4NjA7In0saXQ9ZXQodXQpLG90PWV0KE1uKHV0KSksYXQ9c24udGVtcGxhdGVTZXR0aW5ncz17ZXZhbHVhdGU6LzwlKFtcc1xTXSs/KSU+L2csaW50ZXJwb2xhdGU6LzwlPShbXHNcU10rPyklPi9nLGVzY2FwZTovPCUtKFtcc1xTXSs/KSU+L2d9O3ZhciBjdD0vKC4pXi8sZnQ9eyInIjoiJyIsIlxcIjoiXFwiLCJcciI6InIiLCJcbiI6Im4iLCJcdTIwMjgiOiJ1MjAyOCIsIlx1MjAyOSI6InUyMDI5In0sbHQ9L1xcfCd8XHJ8XG58XHUyMDI4fFx1MjAyOS9nO2Z1bmN0aW9uIHN0KG4pe3JldHVybiJcXCIrZnRbbl19dmFyIHB0PS9eXHMqKFx3fFwkKStccyokLztmdW5jdGlvbiBodChuLHQscil7IXQmJnImJih0PXIpLHQ9Um4oe30sdCxzbi50ZW1wbGF0ZVNldHRpbmdzKTt2YXIgZT1SZWdFeHAoWyh0LmVzY2FwZXx8Y3QpLnNvdXJjZSwodC5pbnRlcnBvbGF0ZXx8Y3QpLnNvdXJjZSwodC5ldmFsdWF0ZXx8Y3QpLnNvdXJjZV0uam9pbigifCIpKyJ8JCIsImciKSx1PTAsaT0iX19wKz0nIjtuLnJlcGxhY2UoZSwoZnVuY3Rpb24odCxyLGUsbyxhKXtyZXR1cm4gaSs9bi5zbGljZSh1LGEpLnJlcGxhY2UobHQsc3QpLHU9YSt0Lmxlbmd0aCxyP2krPSInK1xuKChfX3Q9KCIrcisiKSk9PW51bGw/Jyc6Xy5lc2NhcGUoX190KSkrXG4nIjplP2krPSInK1xuKChfX3Q9KCIrZSsiKSk9PW51bGw/Jyc6X190KStcbiciOm8mJihpKz0iJztcbiIrbysiXG5fX3ArPSciKSx0fSkpLGkrPSInO1xuIjt2YXIgbyxhPXQudmFyaWFibGU7aWYoYSl7aWYoIXB0LnRlc3QoYSkpdGhyb3cgbmV3IEVycm9yKCJ2YXJpYWJsZSBpcyBub3QgYSBiYXJlIGlkZW50aWZpZXI6ICIrYSl9ZWxzZSBpPSJ3aXRoKG9ianx8e30pe1xuIitpKyJ9XG4iLGE9Im9iaiI7aT0idmFyIF9fdCxfX3A9JycsX19qPUFycmF5LnByb3RvdHlwZS5qb2luLHByaW50PWZ1bmN0aW9uKCl7X19wKz1fX2ouY2FsbChhcmd1bWVudHMsJycpO307XG4iK2krInJldHVybiBfX3A7XG4iO3RyeXtvPW5ldyBGdW5jdGlvbihhLCJfIixpKX1jYXRjaChuKXt0aHJvdyBuLnNvdXJjZT1pLG59dmFyIGM9ZnVuY3Rpb24obil7cmV0dXJuIG8uY2FsbCh0aGlzLG4sc24pfTtyZXR1cm4gYy5zb3VyY2U9ImZ1bmN0aW9uKCIrYSsiKXtcbiIraSsifSIsY31mdW5jdGlvbiB2dChuLHQscil7dmFyIGU9KHQ9V24odCkpLmxlbmd0aDtpZighZSlyZXR1cm4gVyhyKT9yLmNhbGwobik6cjtmb3IodmFyIHU9MDt1PGU7dSsrKXt2YXIgaT1udWxsPT1uP3ZvaWQgMDpuW3RbdV1dO3ZvaWQgMD09PWkmJihpPXIsdT1lKSxuPVcoaSk/aS5jYWxsKG4pOml9cmV0dXJuIG59dmFyIGR0PTA7ZnVuY3Rpb24geXQobil7dmFyIHQ9KytkdCsiIjtyZXR1cm4gbj9uK3Q6dH1mdW5jdGlvbiBndChuKXt2YXIgdD1zbihuKTtyZXR1cm4gdC5fY2hhaW49ITAsdH1mdW5jdGlvbiBtdChuLHQscixlLHUpe2lmKCEoZSBpbnN0YW5jZW9mIHQpKXJldHVybiBuLmFwcGx5KHIsdSk7dmFyIGk9VG4obi5wcm90b3R5cGUpLG89bi5hcHBseShpLHUpO3JldHVybiBTKG8pP286aX12YXIgYnQ9XygoZnVuY3Rpb24obix0KXt2YXIgcj1idC5wbGFjZWhvbGRlcixlPWZ1bmN0aW9uKCl7Zm9yKHZhciB1PTAsaT10Lmxlbmd0aCxvPUFycmF5KGkpLGE9MDthPGk7YSsrKW9bYV09dFthXT09PXI/YXJndW1lbnRzW3UrK106dFthXTtmb3IoO3U8YXJndW1lbnRzLmxlbmd0aDspby5wdXNoKGFyZ3VtZW50c1t1KytdKTtyZXR1cm4gbXQobixlLHRoaXMsdGhpcyxvKX07cmV0dXJuIGV9KSk7YnQucGxhY2Vob2xkZXI9c247Y29uc3Qgd3Q9YnQsanQ9XygoZnVuY3Rpb24obix0LHIpe2lmKCFXKG4pKXRocm93IG5ldyBUeXBlRXJyb3IoIkJpbmQgbXVzdCBiZSBjYWxsZWQgb24gYSBmdW5jdGlvbiIpO3ZhciBlPV8oKGZ1bmN0aW9uKHUpe3JldHVybiBtdChuLGUsdCx0aGlzLHIuY29uY2F0KHUpKX0pKTtyZXR1cm4gZX0pKSx4dD1aKG9uKTtmdW5jdGlvbiBBdChuLHQscil7dHx8MD09PXR8fCh0PTEvMCk7Zm9yKHZhciBlPVtdLHU9MCxpPTAsbz1vbihuKXx8MCxhPVtdOzspaWYoaT49byl7aWYoIWEubGVuZ3RoKWJyZWFrO3ZhciBjPWEucG9wKCk7aT1jLmksbj1jLnYsbz1vbihuKX1lbHNle3ZhciBmPW5baSsrXTthLmxlbmd0aD49dD9lW3UrK109Zjp4dChmKSYmKCQoZil8fEgoZikpPyhhLnB1c2goe2ksdjpufSksaT0wLG89b24obj1mKSk6cnx8KGVbdSsrXT1mKX1yZXR1cm4gZX1jb25zdCBfdD1fKChmdW5jdGlvbihuLHQpe3ZhciByPSh0PUF0KHQsITEsITEpKS5sZW5ndGg7aWYocjwxKXRocm93IG5ldyBFcnJvcigiYmluZEFsbCBtdXN0IGJlIHBhc3NlZCBmdW5jdGlvbiBuYW1lcyIpO2Zvcig7ci0tOyl7dmFyIGU9dFtyXTtuW2VdPWp0KG5bZV0sbil9cmV0dXJuIG59KSk7ZnVuY3Rpb24gU3Qobix0KXt2YXIgcj1mdW5jdGlvbihlKXt2YXIgdT1yLmNhY2hlLGk9IiIrKHQ/dC5hcHBseSh0aGlzLGFyZ3VtZW50cyk6ZSk7cmV0dXJuIEoodSxpKXx8KHVbaV09bi5hcHBseSh0aGlzLGFyZ3VtZW50cykpLHVbaV19O3JldHVybiByLmNhY2hlPXt9LHJ9Y29uc3QgT3Q9XygoZnVuY3Rpb24obix0LHIpe3JldHVybiBzZXRUaW1lb3V0KChmdW5jdGlvbigpe3JldHVybiBuLmFwcGx5KG51bGwscil9KSx0KX0pKSxFdD13dChPdCxzbiwxKTtmdW5jdGlvbiBrdChuLHQscil7dmFyIGUsdSxpLG8sYT0wO3J8fChyPXt9KTt2YXIgYz1mdW5jdGlvbigpe2E9ITE9PT1yLmxlYWRpbmc/MDpydCgpLGU9bnVsbCxvPW4uYXBwbHkodSxpKSxlfHwodT1pPW51bGwpfSxmPWZ1bmN0aW9uKCl7dmFyIGY9cnQoKTthfHwhMSE9PXIubGVhZGluZ3x8KGE9Zik7dmFyIGw9dC0oZi1hKTtyZXR1cm4gdT10aGlzLGk9YXJndW1lbnRzLGw8PTB8fGw+dD8oZSYmKGNsZWFyVGltZW91dChlKSxlPW51bGwpLGE9ZixvPW4uYXBwbHkodSxpKSxlfHwodT1pPW51bGwpKTplfHwhMT09PXIudHJhaWxpbmd8fChlPXNldFRpbWVvdXQoYyxsKSksb307cmV0dXJuIGYuY2FuY2VsPWZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KGUpLGE9MCxlPXU9aT1udWxsfSxmfQpmdW5jdGlvbiBNdChuLHQscil7dmFyIGUsdSxpLG8sYSxjPWZ1bmN0aW9uKCl7dmFyIGY9cnQoKS11O3Q+Zj9lPXNldFRpbWVvdXQoYyx0LWYpOihlPW51bGwscnx8KG89bi5hcHBseShhLGkpKSxlfHwoaT1hPW51bGwpKX0sZj1fKChmdW5jdGlvbihmKXtyZXR1cm4gYT10aGlzLGk9Zix1PXJ0KCksZXx8KGU9c2V0VGltZW91dChjLHQpLHImJihvPW4uYXBwbHkoYSxpKSkpLG99KSk7cmV0dXJuIGYuY2FuY2VsPWZ1bmN0aW9uKCl7Y2xlYXJUaW1lb3V0KGUpLGU9aT1hPW51bGx9LGZ9ZnVuY3Rpb24gQnQobix0KXtyZXR1cm4gd3QodCxuKX1mdW5jdGlvbiBJdChuKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4hbi5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fWZ1bmN0aW9uIE50KCl7dmFyIG49YXJndW1lbnRzLHQ9bi5sZW5ndGgtMTtyZXR1cm4gZnVuY3Rpb24oKXtmb3IodmFyIHI9dCxlPW5bdF0uYXBwbHkodGhpcyxhcmd1bWVudHMpO3ItLTspZT1uW3JdLmNhbGwodGhpcyxlKTtyZXR1cm4gZX19ZnVuY3Rpb24gRHQobix0KXtyZXR1cm4gZnVuY3Rpb24oKXtpZigtLW48MSlyZXR1cm4gdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fWZ1bmN0aW9uIFJ0KG4sdCl7dmFyIHI7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuLS1uPjAmJihyPXQuYXBwbHkodGhpcyxhcmd1bWVudHMpKSxuPD0xJiYodD1udWxsKSxyfX1jb25zdCBUdD13dChSdCwyKTtmdW5jdGlvbiBWdChuLHQscil7dD1Rbih0LHIpO2Zvcih2YXIgZSx1PWNuKG4pLGk9MCxvPXUubGVuZ3RoO2k8bztpKyspaWYodChuW2U9dVtpXV0sZSxuKSlyZXR1cm4gZX1mdW5jdGlvbiBGdChuKXtyZXR1cm4gZnVuY3Rpb24odCxyLGUpe3I9UW4ocixlKTtmb3IodmFyIHU9b24odCksaT1uPjA/MDp1LTE7aT49MCYmaTx1O2krPW4paWYocih0W2ldLGksdCkpcmV0dXJuIGk7cmV0dXJuLTF9fWNvbnN0IHF0PUZ0KDEpLHp0PUZ0KC0xKTtmdW5jdGlvbiBXdChuLHQscixlKXtmb3IodmFyIHU9KHI9UW4ocixlLDEpKSh0KSxpPTAsbz1vbihuKTtpPG87KXt2YXIgYT1NYXRoLmZsb29yKChpK28pLzIpO3IoblthXSk8dT9pPWErMTpvPWF9cmV0dXJuIGl9ZnVuY3Rpb24gUHQobix0LHIpe3JldHVybiBmdW5jdGlvbihlLHUsaSl7dmFyIG89MCxhPW9uKGUpO2lmKCJudW1iZXIiPT10eXBlb2YgaSluPjA/bz1pPj0wP2k6TWF0aC5tYXgoaSthLG8pOmE9aT49MD9NYXRoLm1pbihpKzEsYSk6aSthKzE7ZWxzZSBpZihyJiZpJiZhKXJldHVybiBlW2k9cihlLHUpXT09PXU/aTotMTtpZih1IT11KXJldHVybihpPXQobC5jYWxsKGUsbyxhKSxYKSk+PTA/aStvOi0xO2ZvcihpPW4+MD9vOmEtMTtpPj0wJiZpPGE7aSs9bilpZihlW2ldPT09dSlyZXR1cm4gaTtyZXR1cm4tMX19Y29uc3QgVXQ9UHQoMSxxdCxXdCksS3Q9UHQoLTEsenQpO2Z1bmN0aW9uIEx0KG4sdCxyKXt2YXIgZT0oeHQobik/cXQ6VnQpKG4sdCxyKTtpZih2b2lkIDAhPT1lJiYtMSE9PWUpcmV0dXJuIG5bZV19ZnVuY3Rpb24gQ3Qobix0KXtyZXR1cm4gTHQobixDbih0KSl9ZnVuY3Rpb24gJHQobix0LHIpe3ZhciBlLHU7aWYodD1Kbih0LHIpLHh0KG4pKWZvcihlPTAsdT1uLmxlbmd0aDtlPHU7ZSsrKXQobltlXSxlLG4pO2Vsc2V7dmFyIGk9Y24obik7Zm9yKGU9MCx1PWkubGVuZ3RoO2U8dTtlKyspdChuW2lbZV1dLGlbZV0sbil9cmV0dXJuIG59ZnVuY3Rpb24gSnQobix0LHIpe3Q9UW4odCxyKTtmb3IodmFyIGU9IXh0KG4pJiZjbihuKSx1PShlfHxuKS5sZW5ndGgsaT1BcnJheSh1KSxvPTA7bzx1O28rKyl7dmFyIGE9ZT9lW29dOm87aVtvXT10KG5bYV0sYSxuKX1yZXR1cm4gaX1mdW5jdGlvbiBHdChuKXtyZXR1cm4gZnVuY3Rpb24odCxyLGUsdSl7dmFyIGk9YXJndW1lbnRzLmxlbmd0aD49MztyZXR1cm4gZnVuY3Rpb24odCxyLGUsdSl7dmFyIGk9IXh0KHQpJiZjbih0KSxvPShpfHx0KS5sZW5ndGgsYT1uPjA/MDpvLTE7Zm9yKHV8fChlPXRbaT9pW2FdOmFdLGErPW4pO2E+PTAmJmE8bzthKz1uKXt2YXIgYz1pP2lbYV06YTtlPXIoZSx0W2NdLGMsdCl9cmV0dXJuIGV9KHQsSm4ocix1LDQpLGUsaSl9fWNvbnN0IEh0PUd0KDEpLFF0PUd0KC0xKTtmdW5jdGlvbiBYdChuLHQscil7dmFyIGU9W107cmV0dXJuIHQ9UW4odCxyKSwkdChuLChmdW5jdGlvbihuLHIsdSl7dChuLHIsdSkmJmUucHVzaChuKX0pKSxlfWZ1bmN0aW9uIFl0KG4sdCxyKXtyZXR1cm4gWHQobixJdChRbih0KSkscil9ZnVuY3Rpb24gWnQobix0LHIpe3Q9UW4odCxyKTtmb3IodmFyIGU9IXh0KG4pJiZjbihuKSx1PShlfHxuKS5sZW5ndGgsaT0wO2k8dTtpKyspe3ZhciBvPWU/ZVtpXTppO2lmKCF0KG5bb10sbyxuKSlyZXR1cm4hMX1yZXR1cm4hMH1mdW5jdGlvbiBucihuLHQscil7dD1Rbih0LHIpO2Zvcih2YXIgZT0heHQobikmJmNuKG4pLHU9KGV8fG4pLmxlbmd0aCxpPTA7aTx1O2krKyl7dmFyIG89ZT9lW2ldOmk7aWYodChuW29dLG8sbikpcmV0dXJuITB9cmV0dXJuITF9ZnVuY3Rpb24gdHIobix0LHIsZSl7cmV0dXJuIHh0KG4pfHwobj1FbihuKSksKCJudW1iZXIiIT10eXBlb2Ygcnx8ZSkmJihyPTApLFV0KG4sdCxyKT49MH1jb25zdCBycj1fKChmdW5jdGlvbihuLHQscil7dmFyIGUsdTtyZXR1cm4gVyh0KT91PXQ6KHQ9V24odCksZT10LnNsaWNlKDAsLTEpLHQ9dFt0Lmxlbmd0aC0xXSksSnQobiwoZnVuY3Rpb24obil7dmFyIGk9dTtpZighaSl7aWYoZSYmZS5sZW5ndGgmJihuPVBuKG4sZSkpLG51bGw9PW4pcmV0dXJuO2k9blt0XX1yZXR1cm4gbnVsbD09aT9pOmkuYXBwbHkobixyKX0pKX0pKTtmdW5jdGlvbiBlcihuLHQpe3JldHVybiBKdChuLCRuKHQpKX1mdW5jdGlvbiB1cihuLHQpe3JldHVybiBYdChuLENuKHQpKX1mdW5jdGlvbiBpcihuLHQscil7dmFyIGUsdSxpPS0xLzAsbz0tMS8wO2lmKG51bGw9PXR8fCJudW1iZXIiPT10eXBlb2YgdCYmIm9iamVjdCIhPXR5cGVvZiBuWzBdJiZudWxsIT1uKWZvcih2YXIgYT0wLGM9KG49eHQobik/bjpFbihuKSkubGVuZ3RoO2E8YzthKyspbnVsbCE9KGU9blthXSkmJmU+aSYmKGk9ZSk7ZWxzZSB0PVFuKHQsciksJHQobiwoZnVuY3Rpb24obixyLGUpewooKHU9dChuLHIsZSkpPm98fHU9PT0tMS8wJiZpPT09LTEvMCkmJihpPW4sbz11KX0pKTtyZXR1cm4gaX1mdW5jdGlvbiBvcihuLHQscil7dmFyIGUsdSxpPTEvMCxvPTEvMDtpZihudWxsPT10fHwibnVtYmVyIj09dHlwZW9mIHQmJiJvYmplY3QiIT10eXBlb2YgblswXSYmbnVsbCE9bilmb3IodmFyIGE9MCxjPShuPXh0KG4pP246RW4obikpLmxlbmd0aDthPGM7YSsrKW51bGwhPShlPW5bYV0pJiZlPGkmJihpPWUpO2Vsc2UgdD1Rbih0LHIpLCR0KG4sKGZ1bmN0aW9uKG4scixlKXsoKHU9dChuLHIsZSkpPG98fHU9PT0xLzAmJmk9PT0xLzApJiYoaT1uLG89dSl9KSk7cmV0dXJuIGl9dmFyIGFyPS9bXlx1ZDgwMC1cdWRmZmZdfFtcdWQ4MDAtXHVkYmZmXVtcdWRjMDAtXHVkZmZmXXxbXHVkODAwLVx1ZGZmZl0vZztmdW5jdGlvbiBjcihuKXtyZXR1cm4gbj8kKG4pP2wuY2FsbChuKTpJKG4pP24ubWF0Y2goYXIpOnh0KG4pP0p0KG4sTG4pOkVuKG4pOltdfWZ1bmN0aW9uIGZyKG4sdCxyKXtpZihudWxsPT10fHxyKXJldHVybiB4dChuKXx8KG49RW4obikpLG5bdHQobi5sZW5ndGgtMSldO3ZhciBlPWNyKG4pLHU9b24oZSk7dD1NYXRoLm1heChNYXRoLm1pbih0LHUpLDApO2Zvcih2YXIgaT11LTEsbz0wO288dDtvKyspe3ZhciBhPXR0KG8saSksYz1lW29dO2Vbb109ZVthXSxlW2FdPWN9cmV0dXJuIGUuc2xpY2UoMCx0KX1mdW5jdGlvbiBscihuKXtyZXR1cm4gZnIobiwxLzApfWZ1bmN0aW9uIHNyKG4sdCxyKXt2YXIgZT0wO3JldHVybiB0PVFuKHQsciksZXIoSnQobiwoZnVuY3Rpb24obixyLHUpe3JldHVybnt2YWx1ZTpuLGluZGV4OmUrKyxjcml0ZXJpYTp0KG4scix1KX19KSkuc29ydCgoZnVuY3Rpb24obix0KXt2YXIgcj1uLmNyaXRlcmlhLGU9dC5jcml0ZXJpYTtpZihyIT09ZSl7aWYocj5lfHx2b2lkIDA9PT1yKXJldHVybiAxO2lmKHI8ZXx8dm9pZCAwPT09ZSlyZXR1cm4tMX1yZXR1cm4gbi5pbmRleC10LmluZGV4fSkpLCJ2YWx1ZSIpfWZ1bmN0aW9uIHByKG4sdCl7cmV0dXJuIGZ1bmN0aW9uKHIsZSx1KXt2YXIgaT10P1tbXSxbXV06e307cmV0dXJuIGU9UW4oZSx1KSwkdChyLChmdW5jdGlvbih0LHUpe3ZhciBvPWUodCx1LHIpO24oaSx0LG8pfSkpLGl9fWNvbnN0IGhyPXByKChmdW5jdGlvbihuLHQscil7SihuLHIpP25bcl0ucHVzaCh0KTpuW3JdPVt0XX0pKSx2cj1wcigoZnVuY3Rpb24obix0LHIpe25bcl09dH0pKSxkcj1wcigoZnVuY3Rpb24obix0LHIpe0oobixyKT9uW3JdKys6bltyXT0xfSkpLHlyPXByKChmdW5jdGlvbihuLHQscil7bltyPzA6MV0ucHVzaCh0KX0pLCEwKTtmdW5jdGlvbiBncihuKXtyZXR1cm4gbnVsbD09bj8wOnh0KG4pP24ubGVuZ3RoOmNuKG4pLmxlbmd0aH1mdW5jdGlvbiBtcihuLHQscil7cmV0dXJuIHQgaW4gcn1jb25zdCBicj1fKChmdW5jdGlvbihuLHQpe3ZhciByPXt9LGU9dFswXTtpZihudWxsPT1uKXJldHVybiByO1coZSk/KHQubGVuZ3RoPjEmJihlPUpuKGUsdFsxXSkpLHQ9ZG4obikpOihlPW1yLHQ9QXQodCwhMSwhMSksbj1PYmplY3QobikpO2Zvcih2YXIgdT0wLGk9dC5sZW5ndGg7dTxpO3UrKyl7dmFyIG89dFt1XSxhPW5bb107ZShhLG8sbikmJihyW29dPWEpfXJldHVybiByfSkpLHdyPV8oKGZ1bmN0aW9uKG4sdCl7dmFyIHIsZT10WzBdO3JldHVybiBXKGUpPyhlPUl0KGUpLHQubGVuZ3RoPjEmJihyPXRbMV0pKToodD1KdChBdCh0LCExLCExKSxTdHJpbmcpLGU9ZnVuY3Rpb24obixyKXtyZXR1cm4hdHIodCxyKX0pLGJyKG4sZSxyKX0pKTtmdW5jdGlvbiBqcihuLHQscil7cmV0dXJuIGwuY2FsbChuLDAsTWF0aC5tYXgoMCxuLmxlbmd0aC0obnVsbD09dHx8cj8xOnQpKSl9ZnVuY3Rpb24geHIobix0LHIpe3JldHVybiBudWxsPT1ufHxuLmxlbmd0aDwxP251bGw9PXR8fHI/dm9pZCAwOltdOm51bGw9PXR8fHI/blswXTpqcihuLG4ubGVuZ3RoLXQpfWZ1bmN0aW9uIEFyKG4sdCxyKXtyZXR1cm4gbC5jYWxsKG4sbnVsbD09dHx8cj8xOnQpfWZ1bmN0aW9uIF9yKG4sdCxyKXtyZXR1cm4gbnVsbD09bnx8bi5sZW5ndGg8MT9udWxsPT10fHxyP3ZvaWQgMDpbXTpudWxsPT10fHxyP25bbi5sZW5ndGgtMV06QXIobixNYXRoLm1heCgwLG4ubGVuZ3RoLXQpKX1mdW5jdGlvbiBTcihuKXtyZXR1cm4gWHQobixCb29sZWFuKX1mdW5jdGlvbiBPcihuLHQpe3JldHVybiBBdChuLHQsITEpfWNvbnN0IEVyPV8oKGZ1bmN0aW9uKG4sdCl7cmV0dXJuIHQ9QXQodCwhMCwhMCksWHQobiwoZnVuY3Rpb24obil7cmV0dXJuIXRyKHQsbil9KSl9KSksa3I9XygoZnVuY3Rpb24obix0KXtyZXR1cm4gRXIobix0KX0pKTtmdW5jdGlvbiBNcihuLHQscixlKXtrKHQpfHwoZT1yLHI9dCx0PSExKSxudWxsIT1yJiYocj1RbihyLGUpKTtmb3IodmFyIHU9W10saT1bXSxvPTAsYT1vbihuKTtvPGE7bysrKXt2YXIgYz1uW29dLGY9cj9yKGMsbyxuKTpjO3QmJiFyPyhvJiZpPT09Znx8dS5wdXNoKGMpLGk9Zik6cj90cihpLGYpfHwoaS5wdXNoKGYpLHUucHVzaChjKSk6dHIodSxjKXx8dS5wdXNoKGMpfXJldHVybiB1fWNvbnN0IEJyPV8oKGZ1bmN0aW9uKG4pe3JldHVybiBNcihBdChuLCEwLCEwKSl9KSk7ZnVuY3Rpb24gSXIobil7Zm9yKHZhciB0PVtdLHI9YXJndW1lbnRzLmxlbmd0aCxlPTAsdT1vbihuKTtlPHU7ZSsrKXt2YXIgaT1uW2VdO2lmKCF0cih0LGkpKXt2YXIgbztmb3Iobz0xO288ciYmdHIoYXJndW1lbnRzW29dLGkpO28rKyk7bz09PXImJnQucHVzaChpKX19cmV0dXJuIHR9ZnVuY3Rpb24gTnIobil7Zm9yKHZhciB0PW4mJmlyKG4sb24pLmxlbmd0aHx8MCxyPUFycmF5KHQpLGU9MDtlPHQ7ZSsrKXJbZV09ZXIobixlKTtyZXR1cm4gcn1jb25zdCBEcj1fKE5yKTtmdW5jdGlvbiBScihuLHQpe2Zvcih2YXIgcj17fSxlPTAsdT1vbihuKTtlPHU7ZSsrKXQ/cltuW2VdXT10W2VdOnJbbltlXVswXV09bltlXVsxXTtyZXR1cm4gcn1mdW5jdGlvbiBUcihuLHQscil7bnVsbD09dCYmKHQ9bnx8MCxuPTApLHJ8fChyPXQ8bj8tMToxKTtmb3IodmFyIGU9TWF0aC5tYXgoTWF0aC5jZWlsKCh0LW4pL3IpLDApLHU9QXJyYXkoZSksaT0wO2k8ZTtpKyssbis9cil1W2ldPW4KO3JldHVybiB1fWZ1bmN0aW9uIFZyKG4sdCl7aWYobnVsbD09dHx8dDwxKXJldHVybltdO2Zvcih2YXIgcj1bXSxlPTAsdT1uLmxlbmd0aDtlPHU7KXIucHVzaChsLmNhbGwobixlLGUrPXQpKTtyZXR1cm4gcn1mdW5jdGlvbiBGcihuLHQpe3JldHVybiBuLl9jaGFpbj9zbih0KS5jaGFpbigpOnR9ZnVuY3Rpb24gcXIobil7cmV0dXJuICR0KEJuKG4pLChmdW5jdGlvbih0KXt2YXIgcj1zblt0XT1uW3RdO3NuLnByb3RvdHlwZVt0XT1mdW5jdGlvbigpe3ZhciBuPVt0aGlzLl93cmFwcGVkXTtyZXR1cm4gZi5hcHBseShuLGFyZ3VtZW50cyksRnIodGhpcyxyLmFwcGx5KHNuLG4pKX19KSksc259JHQoWyJwb3AiLCJwdXNoIiwicmV2ZXJzZSIsInNoaWZ0Iiwic29ydCIsInNwbGljZSIsInVuc2hpZnQiXSwoZnVuY3Rpb24obil7dmFyIHQ9b1tuXTtzbi5wcm90b3R5cGVbbl09ZnVuY3Rpb24oKXt2YXIgcj10aGlzLl93cmFwcGVkO3JldHVybiBudWxsIT1yJiYodC5hcHBseShyLGFyZ3VtZW50cyksInNoaWZ0IiE9PW4mJiJzcGxpY2UiIT09bnx8MCE9PXIubGVuZ3RofHxkZWxldGUgclswXSksRnIodGhpcyxyKX19KSksJHQoWyJjb25jYXQiLCJqb2luIiwic2xpY2UiXSwoZnVuY3Rpb24obil7dmFyIHQ9b1tuXTtzbi5wcm90b3R5cGVbbl09ZnVuY3Rpb24oKXt2YXIgbj10aGlzLl93cmFwcGVkO3JldHVybiBudWxsIT1uJiYobj10LmFwcGx5KG4sYXJndW1lbnRzKSksRnIodGhpcyxuKX19KSk7Y29uc3QgenI9c247dmFyIFdyPXFyKGUpO1dyLl89V3I7Y29uc3QgUHI9V3J9fV0pOw=="}},"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.tradingview-widget.com/static/bundles/embed/30288.59207aa2607ea1597287.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:17.372Z","timestamp":1785126257372,"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-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/30288.59207aa2607ea1597287.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/crypto-mkt-screener/?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 04:24:17 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-c680\"\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:17:22\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: 6201868779d2510440f6b409af80fc7e\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":50816,"size_decoded":20318,"mime_type":"application/javascript; charset=utf-8","magic":"JavaScript source, Unicode text, UTF-8 text, with very long lines (3072)","md5":"ea1d9d8d3342c88f33ec3b530e0573ef","sha1":"d655950fc76c40243ee9494c5fcc45e069dbaad3","sha256":"5c4b42f42930e52d140aec5e82b967b86ea0bc4581cfea3ecd33ca21c156520f","sha512":"4a85bff8bc70939b4386535712fa0ce2eae8d2f970a7e4c0f966b40eef502520b53f0bcc55b8062e0d4154ec40c589d4be511f57f11176afdb68166e3b090436","ssdeep":"1536:M/5WmDah7ltfnbgA/bllhJ9AwCh85Q9BO9X/tH78kJM:MZilpvbAR9By/5M","tlshash":"6e330ac572d6f0ab03d605e584bb5042f33d49a9b80d84a1f658e9d13c66c9e63b3fac","first_seen":"2026-07-23T22:46:45.786098Z","last_seen":"2026-07-27T07:14:43.747539Z","times_seen":158,"resource_available":true,"data":"KHNlbGYud2VicGFja0NodW5rdHJhZGluZ3ZpZXc9c2VsZi53ZWJwYWNrQ2h1bmt0cmFkaW5ndmlld3x8W10pLnB1c2goW1szMDI4OF0sezg2MDAyNShlKXtlLmV4cG9ydHM9e3BhaXI6InBhaXIteHdHc1NYUjAiLHh4Y2VwdGlvbmFsbHlzbWFsbGRvbm90dXNlYnJ2MTAyMzoieHhjZXB0aW9uYWxseXNtYWxsZG9ub3R1c2VicnYxMDIzLXh3R3NTWFIwIix4eHh4c21hbGw6Inh4eHhzbWFsbC14d0dzU1hSMCIseHh4c21hbGw6Inh4eHNtYWxsLXh3R3NTWFIwIix4eHNtYWxsOiJ4eHNtYWxsLXh3R3NTWFIwIix4c21hbGw6InhzbWFsbC14d0dzU1hSMCIsc21hbGw6InNtYWxsLXh3R3NTWFIwIixtZWRpdW06Im1lZGl1bS14d0dzU1hSMCIsbGFyZ2U6ImxhcmdlLXh3R3NTWFIwIix4bGFyZ2U6InhsYXJnZS14d0dzU1hSMCIseHhsYXJnZToieHhsYXJnZS14d0dzU1hSMCIseHh4bGFyZ2U6Inh4eGxhcmdlLXh3R3NTWFIwIixsb2dvOiJsb2dvLXh3R3NTWFIwIixza2VsZXRvbjoic2tlbGV0b24teHdHc1NYUjAiLGVtcHR5OiJlbXB0eS14d0dzU1hSMCJ9fSwxNDAwMTcoZSl7ZS5leHBvcnRzPXtsb2dvOiJsb2dvLVZDTkt1YldxIixoaWRkZW46ImhpZGRlbi1WQ05LdWJXcSIseHhjZXB0aW9uYWxseXNtYWxsZG9ub3R1c2VicnYxMDIzOiJ4eGNlcHRpb25hbGx5c21hbGxkb25vdHVzZWJydjEwMjMtVkNOS3ViV3EiLHh4eHNtYWxsOiJ4eHhzbWFsbC1WQ05LdWJXcSIseHhzbWFsbDoieHhzbWFsbC1WQ05LdWJXcSIseHNtYWxsOiJ4c21hbGwtVkNOS3ViV3EiLHNtYWxsOiJzbWFsbC1WQ05LdWJXcSIsbWVkaXVtOiJtZWRpdW0tVkNOS3ViV3EiLGxhcmdlOiJsYXJnZS1WQ05LdWJXcSIseGxhcmdlOiJ4bGFyZ2UtVkNOS3ViV3EiLHh4bGFyZ2U6Inh4bGFyZ2UtVkNOS3ViV3EiLHh4eGxhcmdlOiJ4eHhsYXJnZS1WQ05LdWJXcSIsc2tlbGV0b246InNrZWxldG9uLVZDTkt1YldxIixsZXR0ZXI6ImxldHRlci1WQ05LdWJXcSJ9fSw5NzUyODUoZSl7ZS5leHBvcnRzPXt3cmFwcGVyOiJ3cmFwcGVyLWhjdDJ5SnZLIixhbmltYXRlZDoiYW5pbWF0ZWQtaGN0MnlKdksiLHB1bHNhdGlvbjoicHVsc2F0aW9uLWhjdDJ5SnZLIn19LDM5OTA5MihlKXtlLmV4cG9ydHM9eyJjc3MtdmFsdWUtY29weXJpZ2h0LXRyYW5zaXRpb24tcGFyYW1zIjoiLjZzIDBzIGN1YmljLWJlemllciguNCwgLjAxLCAuMjIsIDEpIiwiY3NzLXZhbHVlLWNvcHlyaWdodC10cmFuc2l0aW9uLXBhcmFtcy1oYWxmLXRpbWUiOiIuM3MgMHMgY3ViaWMtYmV6aWVyKC40LCAuMDEsIC4yMiwgMSkiLGxhYmVsOiJsYWJlbC1kemJkN2x5ViIsbG9nb1dyYXA6ImxvZ29XcmFwLWR6YmQ3bHlWIixleHBhbmRlZFdpdGhUcmFuc2l0aW9uOiJleHBhbmRlZFdpdGhUcmFuc2l0aW9uLWR6YmQ3bHlWIixleHBhbmRlZEJ5Q2xpY2s6ImV4cGFuZGVkQnlDbGljay1kemJkN2x5ViIsc3RhcnQ6InN0YXJ0LWR6YmQ3bHlWIixlbmQ6ImVuZC1kemJkN2x5ViIsc25hcDoic25hcC1kemJkN2x5ViIsdG9wOiJ0b3AtZHpiZDdseVYiLGJvdHRvbToiYm90dG9tLWR6YmQ3bHlWIixsYXJnZToibGFyZ2UtZHpiZDdseVYiLGV4cGFuZGVkOiJleHBhbmRlZC1kemJkN2x5ViIsbGFiZWxfX2xpbms6ImxhYmVsX19saW5rLWR6YmQ3bHlWIn19LDU2OTM5OChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtpc0ZlYXR1cmVFbmFibGVkOigpPT5wLG9uRmVhdHVyZXNTdGF0ZUNoYW5nZWQ6KCk9PmN9KTt2YXIgcj1uKDk0ODM4MCksaT1uKDM3NzIyNiksbz1uKDg1NjE5Nikscz1uKDkzMjM2NSk7Y29uc3QgYT1uZXcgci5EZWxlZ2F0ZSxjPSgpPT5hLGw9ImZvcmNlZmVhdHVyZXRvZ2dsZS4iO2NvbnN0IHU9bmV3IGNsYXNze2VuYWJsZUZlYXR1cmUoZSl7cy5UVkxvY2FsU3RvcmFnZS5zZXRJdGVtKGwrZSwidHJ1ZSIpLGEuZmlyZShlKX1kaXNhYmxlRmVhdHVyZShlKXtzLlRWTG9jYWxTdG9yYWdlLnNldEl0ZW0obCtlLCJmYWxzZSIpLGEuZmlyZShlKX1yZXNldEZlYXR1cmUoZSl7cy5UVkxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGwrZSksYS5maXJlKGUpfW9uRmVhdHVyZXNTdGF0ZUNoYW5nZWQoKXtyZXR1cm4gYX19O2Z1bmN0aW9uIGQoZSx0KXtyZXR1cm4oIWVbdF18fC0xIT09ZVt0XSkmJighISgidHJ1ZSI9PT1zLlRWTG9jYWxTdG9yYWdlLmdldEl0ZW0obCt0KXx8d2luZG93LmlzX2F1dGhlbnRpY2F0ZWQmJiJ0cnVlIj09PXdpbmRvdy51c2VyPy5zZXR0aW5ncz8uW2wrdF0pfHwhKCJmYWxzZSI9PT1zLlRWTG9jYWxTdG9yYWdlLmdldEl0ZW0obCt0KXx8d2luZG93LmlzX2F1dGhlbnRpY2F0ZWQmJiJmYWxzZSI9PT13aW5kb3cudXNlcj8uc2V0dGluZ3M/LltsK3RdKSYmKCEhZVt0XSYmKDE9PT1lW3RdfHwoMCxvLnNob3VsZEFmZmVjdFVzZXIpKHQsZVt0XSkpKSl9d2luZG93LlRyYWRpbmdWaWV3PXdpbmRvdy5UcmFkaW5nVmlld3x8e30sd2luZG93LlRyYWRpbmdWaWV3LkZlYXR1cmVUb2dnbGU9dTtjb25zdCBwPShnPXdpbmRvdy5mZWF0dXJlVG9nZ2xlU3RhdGV8fHt9LCgwLGkub25XaWRnZXQpKCl8fFByb21pc2UuYWxsKFtuLmUoODU0MzQpLG4uZSg3Mjg1KSxuLmUoMTM5OTMpXSkudGhlbihuLmJpbmQobiw1MDcyODUpKS50aGVuKChlPT57ZS5wdXNoU3RyZWFtTXVsdGlwbGV4ZXIub24oImZlYXR1cmV0b2dnbGUiLChlPT57Y29uc3QgdD1kKGcsZS5uYW1lKTtnW2UubmFtZV09ZS5zdGF0ZSx0IT09ZChnLGUubmFtZSkmJmEuZmlyZShlLm5hbWUpfSkpfSkpLGQuYmluZChudWxsLGcpKTt2YXIgZzt3aW5kb3cuVHJhZGluZ1ZpZXcuaXNGZWF0dXJlRW5hYmxlZD1wfSw3OTI2MTIoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Z2V0RnJlc2hJbml0RGF0YTooKT0+bCxnZXRJbml0RGF0YTooKT0+Yyx1cGRhdGVJbml0RGF0YTooKT0+YX0pO3ZhciByPW4oMTM4NjM4KTtjb25zdCBpPSgwLG4oMjIxMDYxKS5nZXRMb2dnZXIpKCJDb21tb24uSW5pdERhdGEiKSxvPXdpbmRvdy5pbml0RGF0YXx8e307ZnVuY3Rpb24gcygpeyFmdW5jdGlvbigpe2NvbnN0IGU9d2luZG93O2UuaW5pdERhdGEmJmUuaW5pdERhdGEhPT1vJiYoT2JqZWN0LmFzc2lnbihvLGUuaW5pdERhdGEpLGUuaW5pdERhdGE9bykKfSgpO2NvbnN0IGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnc2NyaXB0W3R5cGU9ImFwcGxpY2F0aW9uL3Bycy5pbml0LWRhdGEranNvbiJdJyk7Zm9yKGxldCB0PTA7dDxlLmxlbmd0aDt0Kyspe2NvbnN0IG49ZVt0XTt0cnl7Y29uc3QgZT1KU09OLnBhcnNlKCgwLHIuZW5zdXJlTm90TnVsbCkobi50ZXh0Q29udGVudCkpO09iamVjdC5hc3NpZ24obyxlKX1jYXRjaChlKXtpLmxvZ1dhcm4oYEZhaWxlZCB0byBwYXJzZSBpbml0RGF0YSBlbGVtZW50LiAke2V9YCl9ZmluYWxseXsoMCxyLmVuc3VyZU5vdE51bGwpKG4ucGFyZW50Tm9kZSkucmVtb3ZlQ2hpbGQobil9fWNvbnN0IHQ9by5jb250ZW50O3QmJm8uc3R1ZHlfbWV0YV9pbmZvX21hcCYmKHQuc3R1ZHlNZXRhSW5mb01hcD17Li4udC5zdHVkeU1ldGFJbmZvTWFwLC4uLm8uc3R1ZHlfbWV0YV9pbmZvX21hcH0pfWZ1bmN0aW9uIGEoKXtzKCl9ZnVuY3Rpb24gYygpe3JldHVybiBvfWZ1bmN0aW9uIGwoKXtyZXR1cm4gcygpLG99fSwxMTczMTMoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7aXNPbk1vYmlsZUFwcFBhZ2U6KCk9PmksdXJsV2l0aE1vYmlsZUFwcFBhcmFtczooKT0+b30pO3ZhciByPW4oNTg3NDM2KTtmdW5jdGlvbiBpKGUsdD0hMSl7Y29uc3R7c2VhcmNoUGFyYW1zOm59PW5ldyBVUkwoU3RyaW5nKGxvY2F0aW9uKSk7bGV0IGk9InRydWUiPT09bi5nZXQoIm1vYmlsZWFwcF9uZXciKSxvPSJ0cnVlIj09PW4uZ2V0KCJtb2JpbGVhcHAiKTtpZighdCl7Y29uc3QgZT1yLmdldCgidHZfYXBwIil8fCIiO2l8fD1bImFuZHJvaWQiLCJhbmRyb2lkX25wcyJdLmluY2x1ZGVzKGUpLG98fD0iaW9zIj09PWV9cmV0dXJuISgibmV3IiE9PWUmJiJhbnkiIT09ZXx8IWkpfHwhKCJuZXciPT09ZXx8IW8pfWZ1bmN0aW9uIG8oZSx0PSExKXtpZihpKCJuZXciLHQpKXtjb25zdCB0PW5ldyBVUkwoZSxsb2NhdGlvbi5ocmVmKTt0LnNlYXJjaFBhcmFtcy5zZXQoIm1vYmlsZWFwcF9uZXciLCJ0cnVlIiksZT10LnRvU3RyaW5nKCl9aWYoaSgib2xkIix0KSl7Y29uc3QgdD1uZXcgVVJMKGUsbG9jYXRpb24uaHJlZik7dC5zZWFyY2hQYXJhbXMuc2V0KCJtb2JpbGVhcHAiLCJ0cnVlIiksZT10LnRvU3RyaW5nKCl9cmV0dXJuIGV9fSw5MzA1NjYoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLnIodCksbi5kKHQse2RlZmF1bHQ6KCk9PkosZ2V0Qm9vbDooKT0+SSxnZXRGbG9hdDooKT0+TyxnZXRJbnQ6KCk9PkQsZ2V0SlNPTjooKT0+TSxnZXRWYWx1ZTooKT0+TixrZXlzOigpPT5CLGtleXNNYXNrOigpPT5XLGxvYWRlZDooKT0+Ryxsb2FkZWRNb2RlbDooKT0+cSxvblN5bmM6KCk9PmoscmVtb3ZlOigpPT5WLHNldEpTT046KCk9PkEsc2V0U2V0dGluZ3NBZGFwdGVyOigpPT5LLHNldFZhbHVlOigpPT5SLHN5bmM6KCk9Pkh9KTt2YXIgcj1uKDk0ODM4MCksaT1uKDIyMTA2MSksbz1uKDU0MDU3OCkscz1uKDkzMDIzMSksYT1uKDU2OTM5OCksYz1uKDkwOTc5OCksbD1uKDM3NzIyNiksdT1uKDM4NDAxNyksZD1uKDE1MjY5OSkscD1uKDkzMjM2NSk7d2luZG93LlRyYWRpbmdWaWV3PXdpbmRvdy5UcmFkaW5nVmlld3x8e307Y29uc3QgZz1bInMudHJhZGluZ3ZpZXcuY29tIiwiYmV0YWNkbi50cmFkaW5ndmlldy5jb20iXSxmPSgoMCxzLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJ1c2VfbG9jYWxzdG9yYWdlX2Zvcl9zZXR0aW5ncyIpLCJsb2NhbCI9PT13aW5kb3cuZW52aXJvbm1lbnQ/NWUzOjEyZTQpLG09KDAsbC5vbldpZGdldCkoKT8idHJhZGluZ3ZpZXctd2lkZ2V0IjoidHJhZGluZ3ZpZXciLGg9bSsiLiI7bGV0IHksdix3LGI9ITEsXz1udWxsLHg9e30sUz1bXTtjb25zdCBrPVsvXndpZGdldGJhclwud2lkZ2V0XC53YXRjaGxpc3QuKy8sLy4rcXVpY2tzJC8sL153aWRnZXRiYXJcLmxheW91dC1zZXR0aW5ncyQvLC9eQ2hhcnRTaWRlVG9vbGJhcldpZGdldFwudmlzaWJsZSQvLC9eb253aWRnZXRcLndhdGNobGlzdCQvLC9eY2hhcnRcLmZhdm9yaXRlRHJhd2luZ3MkLywvXmNoYXJ0XC5mYXZvcml0ZURyYXdpbmdzUG9zaXRpb24kLywvXmNoYXJ0XC5mYXZvcml0ZUxpYnJhcnlJbmRpY2F0b3JzJC8sL15sb2FkQ2hhcnREaWFsb2cuZmF2b3JpdGVzJC8sL15DaGFydEZhdm9yaXRlRHJhd2luZ1Rvb2xiYXJXaWRnZXRcLnZpc2libGUvLC9edHJhZGluZ1wuY2hhcnRcLnByb3RlcnR5JC8sL150cmFkaW5nX2Zsb2F0aW5nX3Rvb2xiYXJcLnBvc2l0aW9uJC8sL150cmFkaW5nXC5vcmRlcldpZGdldE1vZGVcLi8sL15zeW1ib2xXYXRlcm1hcmskLywvXnBpbmVyZWZlcmVuY2VcLnNpemUkLywvXnBpbmVyZWZlcmVuY2VcLnBvc2l0aW9uJC8sL15oaW50XC4rLywvXkNoYXJ0RHJhd2luZ1Rvb2xiYXJXaWRnZXRcLnZpc2libGUvXTtjb25zdCBUPSgpPT4hKF98fHdpbmRvdy5pc19hdXRoZW50aWNhdGVkKSxQPWU9PmgrZSxDPSgwLGkuZ2V0TG9nZ2VyKSgiTGliLlRWU2V0dGluZ3MiKSxFPWU9PntpZihifHx3KXJldHVybjtpZigoMCxhLmlzRmVhdHVyZUVuYWJsZWQpKCJkaXNhYmxlX3NhdmVfc2V0dGluZ3MiKSlyZXR1cm4gdm9pZCBDPy5sb2dXYXJuKCJTZXR0aW5ncyBmbGFzaGluZyBoYXMgYmVlbiBza2lwcGVkIGJlY2F1c2Ugb2YgZGlzYWJsZV9zYXZlX3NldHRpbmdzIGZlYXR1cmV0b2dnbGUiKTtpZigoMCxzLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJ3aWRnZXQiKSlyZXR1cm47aWYoVCgpKXJldHVybjtpZigwPT09Uy5sZW5ndGgpcmV0dXJuO2NvbnN0IHQ9UztTPVtdO2NvbnN0IG49e307Zm9yKGxldCBlPXQubGVuZ3RoO2UtLTspe2NvbnN0IHI9dFtlXTtuW3JdPXhbcl0/P251bGx9Y29uc3Qgcj1uZXcgRm9ybURhdGE7ci5hcHBlbmQoImRlbHRhIixKU09OLnN0cmluZ2lmeShuKSksZSYmbmF2aWdhdG9yLnNlbmRCZWFjb24/bmF2aWdhdG9yLnNlbmRCZWFjb24oIi9zYXZlc2V0dGluZ3MvIixyKTooMCx1LmZldGNoKSgiL3NhdmVzZXR0aW5ncy8iLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJpbmNsdWRlIixib2R5OnJ9KS50aGVuKChuPT57aWYobi5va3x8KFM9Uy5jb25jYXQodCkpLFs0MjksNTAzXS5pbmNsdWRlcyhuLnN0YXR1cykpewpjb25zdCB0PTFlMyorKG4uaGVhZGVycy5nZXQoInJldHJ5LWFmdGVyIil8fDApfHwzZTU7dz1zZXRUaW1lb3V0KCgoKT0+e3c9dm9pZCAwLEUoZSl9KSx0KX19KSkuY2F0Y2goKCgpPT57Uz1TLmNvbmNhdCh0KX0pKX0sRj0oKT0+e3k9dm9pZCAwLFMubGVuZ3RoJiZFKCl9LEw9KGUsdD17fSk9PntpZihfKW51bGw9PXhbZV0/Xy5yZW1vdmVWYWx1ZShlKTpfLnNldFZhbHVlKGUseFtlXSk7ZWxzZSBpZihUKCkpdHJ5e251bGw9PXhbZV0/cC5UVkxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKFAoZSkpOnAuVFZMb2NhbFN0b3JhZ2Uuc2V0SXRlbShQKGUpLHhbZV0pfWNhdGNoKGUpe31lbHNlIFMucHVzaChlKSx5fHwoeT1zZXRUaW1lb3V0KEYsZikpO3Quc2tpcENyb3NzV2luZG93RXZlbnR8fGQuVFZYV2luZG93RXZlbnRzLmVtaXQoInNldHRpbmdzIixKU09OLnN0cmluZ2lmeSh7a2V5OmUsdmFsdWU6eFtlXX0pKX07ZnVuY3Rpb24gTihlLHQpe2NvbnN0IG49eFtlXTtyZXR1cm4gbj8/dH1mdW5jdGlvbiBNKGUsdCl7Y29uc3Qgbj1OKGUpO2lmKG51bGw9PW4pcmV0dXJuIHQ7dHJ5e3JldHVybiBKU09OLnBhcnNlKG4pfWNhdGNoKG4pe3JldHVybiBWKGUpLHR9fWZ1bmN0aW9uIFYoZSx0PXt9KXtyZXR1cm4gbnVsbCE9eFtlXSYmKGRlbGV0ZSB4W2VdLEwoZSkpLHQuZm9yY2VGbHVzaCYmRSgpLFh9ZnVuY3Rpb24gSShlLHQpe2NvbnN0IG49TihlKTtyZXR1cm4gbnVsbD09bj90OiEoIW58fCJmYWxzZSI9PT1ufHwwPT0rbil9ZnVuY3Rpb24gTyhlLHQpe2NvbnN0IG49TihlKTtpZihudWxsPT1uKXJldHVybiB0O2NvbnN0IHI9cGFyc2VGbG9hdChuKTtpZighaXNGaW5pdGUocikpdGhyb3cgbmV3IFR5cGVFcnJvcignIicrbisnIiBpcyBub3QgZmxvYXQgKGtleTogIicrZSsnIiknKTtyZXR1cm4gcn1mdW5jdGlvbiBEKGUsdCl7Y29uc3Qgbj1OKGUpO2lmKG51bGw9PW4pcmV0dXJuIHQ7Y29uc3Qgcj1wYXJzZUludChuLDEwKTtpZighaXNGaW5pdGUocikpdGhyb3cgbmV3IFR5cGVFcnJvcignIicrbisnIiBpcyBub3QgaW50IChrZXk6ICInK2UrJyIpJyk7cmV0dXJuIHJ9ZnVuY3Rpb24gUihlLHQsbj17fSl7Y29uc3Qgcj0iIit0O3JldHVybiB4W2VdIT09ciYmKHhbZV09cixMKGUsbikpLG4uZm9yY2VGbHVzaCYmIXYmJih2PXNldFRpbWVvdXQoKCgpPT57dj12b2lkIDAsRSgpfSksMTApKSxYfWZ1bmN0aW9uIEEoZSx0LG4pe3JldHVybiBSKGUsSlNPTi5zdHJpbmdpZnkodCksbiksWH1mdW5jdGlvbiBCKCl7cmV0dXJuIE9iamVjdC5rZXlzKHgpfWZ1bmN0aW9uIFcoZSl7Y29uc3QgdD1CKCksbj1bXSxyPW5ldyBSZWdFeHAoIl4iKygwLG8ucmVnRXhwRXNjYXBlKShlKS5yZXBsYWNlKC9cXFwqXFxcKi9naSwiLisiKS5yZXBsYWNlKC9cXFwqL2dpLCJbXi5dKyIpKyIkIiwiZ2kiKTtmb3IobGV0IGU9dC5sZW5ndGgtMTtlPj0wO2UtLSlyLnRlc3QodFtlXSkmJm4ucHVzaCh0W2VdKSxyLmxhc3RJbmRleD0wO3JldHVybiBufWQuVFZYV2luZG93RXZlbnRzLm9uKCJzZXR0aW5ncyIsKGU9Pntjb25zdCB0PUpTT04ucGFyc2UoZSk7bnVsbD09dC52YWx1ZT9kZWxldGUgeFt0LmtleV06eFt0LmtleV09dC52YWx1ZX0pKTtjb25zdCBVPWU9Pntmb3IobGV0IHQ9MDt0PGsubGVuZ3RoOysrdClpZihrW3RdLmV4ZWMoZSkpcmV0dXJuITA7cmV0dXJuITF9LCQ9ZT0+ZS5zdWJzdHJpbmcoMCxoLmxlbmd0aCk9PT1oLHo9ZT0+e3g9e307Y29uc3QgdD0wPT09T2JqZWN0LmtleXMoZSkubGVuZ3RoO3R8fChlPT57T2JqZWN0LmtleXMoZSkuZm9yRWFjaCgodD0+e3hbdF09ZVt0XSsiIn0pKX0pKGUpLChlPT57Zm9yKGxldCB0PXAuVFZMb2NhbFN0b3JhZ2UubGVuZ3RoO3QtLTspe2NvbnN0IG49cC5UVkxvY2FsU3RvcmFnZS5rZXkodCk7biYmJChuKSYmKGUmJlIobi5zdWJzdHJpbmcoaC5sZW5ndGgpLHAuVFZMb2NhbFN0b3JhZ2UuZ2V0SXRlbShuKSkscC5UVkxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKG4pKX19KSh0KX0saj1uZXcgci5EZWxlZ2F0ZTtmdW5jdGlvbiBIKGUpe251bGwhPT1lPyhfP3ooXy5pbml0aWFsU2V0dGluZ3N8fHt9KTpUKCk/KCgoKT0+e2lmKCEoMCxsLm9uV2lkZ2V0KSgpfHwhZy5pbmNsdWRlcyh3aW5kb3cubG9jYXRpb24uaG9zdCkpcmV0dXJuO2NvbnN0IGU9InRyYWRpbmd2aWV3LiI7Zm9yKGxldCB0PXAuVFZMb2NhbFN0b3JhZ2UubGVuZ3RoO3QtLTspe2NvbnN0IG49cC5UVkxvY2FsU3RvcmFnZS5rZXkodCk7aWYoMD09PW4uaW5kZXhPZihlKSl7Y29uc3QgdD1uLnJlcGxhY2UoZSxtKyIuIik7cC5UVkxvY2FsU3RvcmFnZS5zZXRJdGVtKHQscC5UVkxvY2FsU3RvcmFnZS5nZXRJdGVtKG4pKSxwLlRWTG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0obil9fX0pKCksKCgpPT57eD17fTtjb25zdCBlPSEoMCxzLmlzRmVhdHVyZXNldEVuYWJsZWQpKCJzYXZlX2NoYXJ0X3Byb3BlcnRpZXNfdG9fbG9jYWxfc3RvcmFnZSIpO2ZvcihsZXQgdD1wLlRWTG9jYWxTdG9yYWdlLmxlbmd0aDt0LS07KXtjb25zdCBuPXAuVFZMb2NhbFN0b3JhZ2Uua2V5KHQpO2lmKCFufHwhJChuKSljb250aW51ZTtjb25zdCByPW4uc3Vic3RyaW5nKGgubGVuZ3RoKTtlJiYhVShyKXx8KHhbcl09cC5UVkxvY2FsU3RvcmFnZS5nZXRJdGVtKG4pKX19KSgpKTp6KGV8fHt9KSxqLmZpcmUoKSk6Yj0hMH1mdW5jdGlvbiBLKGUpe189ZX1jb25zdCBHPSExLHE9ITEsWD17bG9hZGVkOkcsbG9hZGVkTW9kZWw6cSxnZXRWYWx1ZTpOLGdldEpTT046TSxnZXRCb29sOkksZ2V0RmxvYXQ6TyxnZXRJbnQ6RCxzZXRWYWx1ZTpSLHNldEpTT046QSxyZW1vdmU6VixrZXlzOkIsa2V5c01hc2s6VyxzeW5jOkgsb25TeW5jOmosc2V0U2V0dGluZ3NBZGFwdGVyOkt9LEo9WDt3aW5kb3cuVFZTZXR0aW5ncz1YLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInZpc2liaWxpdHljaGFuZ2UiLCgoKT0+eyJoaWRkZW4iIT09ZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlJiYhMCE9PWRvY3VtZW50LmhpZGRlbnx8RSgpfSkpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJwYWdlaGlkZSIsKCgpPT57RSghMCl9KSksCndpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJiZWZvcmV1bmxvYWQiLCgoKT0+e0UoITApfSkpLGMuZmx1c2hEZWxlZ2F0ZS5zdWJzY3JpYmUobnVsbCwoKCk9PntFKCl9KSksc2V0VGltZW91dCgoYXN5bmMoKT0+e2NvbnN0e2NsZWFyT2xkU2V0dGluZ3M6ZX09YXdhaXQgbi5lKDM1OTgwKS50aGVuKG4uYmluZChuLDc1NDE4NSkpO2UoKX0pLDNlNCl9LDE1MjE4MihlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtnZXRDaXJjbGVMb2dvUGFpckh0bWw6KCk9Pml9KTt2YXIgcj1uKDYyNzg0OCk7ZnVuY3Rpb24gaShlKXtjb25zdHtwcmltYXJ5TG9nb1VybDp0LHNlY29uZGFyeUxvZ29Vcmw6bixzaXplOmksY2xhc3NOYW1lOnN9PWU7cmV0dXJuYDxzcGFuIGNsYXNzPSIkeygwLHIuZ2V0QmxvY2tTdHlsZUNsYXNzZXMpKGkscyl9Ij5cblx0XHRcdCR7byh7bG9nb1VybDpuLHNpemU6aX0pfVxuXHRcdFx0JHtvKHtsb2dvVXJsOnQsc2l6ZTppfSl9XG5cdFx0PC9zcGFuPmB9ZnVuY3Rpb24gbyhlKXtjb25zdHtsb2dvVXJsOnQsc2l6ZTpufT1lLGk9KDAsci5nZXRMb2dvU3R5bGVDbGFzc2VzKShuLDIsQm9vbGVhbih0KSk7cmV0dXJuIHZvaWQgMD09PXQ/YDxzcGFuIGNsYXNzPSIke2l9Ij48L3NwYW4+YDpgPGltZyBjbGFzcz0iJHtpfSIgY3Jvc3NvcmlnaW4gc3JjPSIke3R9IiBhbHQ9IiIgLz5gfX0sNjI3ODQ4KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse2dldEJsb2NrU3R5bGVDbGFzc2VzOigpPT5jLGdldExvZ29TdHlsZUNsYXNzZXM6KCk9Pmx9KTt2YXIgcj1uKDkxNDQ4NyksaT1uLm4ociksbz1uKDEzNjQpLHM9big4NjAwMjUpLGE9bi5uKHMpO2Z1bmN0aW9uIGMoZSx0KXtyZXR1cm4gaSgpKGEoKS5wYWlyLGEoKVtlXSx0KX1mdW5jdGlvbiBsKGUsdD0yLG49ITApe3JldHVybiBpKCkoYSgpLmxvZ28sYSgpW2VdLGEoKS5za2VsZXRvbixvLnNrZWxldG9uVGhlbWUud3JhcHBlciwhbiYmYSgpLmVtcHR5LDE9PT10JiZpKCkoby5za2VsZXRvblRoZW1lLmFuaW1hdGVkKSl9fSw4ODQ3OTgoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Z2V0Q2lyY2xlTG9nb0h0bWw6KCk9Pml9KTt2YXIgcj1uKDc5NDE4Nyk7bigxNDAwMTcpO2Z1bmN0aW9uIGkoZSl7Y29uc3QgdD0oMCxyLmdldFN0eWxlQ2xhc3NlcykoZS5zaXplLDIsZS5jbGFzc05hbWUpO3JldHVybigwLHIuaXNDaXJjbGVMb2dvV2l0aFVybFByb3BzKShlKT9gPGltZyBjbGFzcz0iJHt0fSIgY3Jvc3NvcmlnaW4gc3JjPSIke2UubG9nb1VybH0iIGFsdD0iIj5gOmA8c3BhbiBjbGFzcz0iJHt0fSI+JHtlLnBsYWNlaG9sZGVyTGV0dGVyfHwiIn08L3NwYW4+YH19LDc5NDE4NyhlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtnZXRTdHlsZUNsYXNzZXM6KCk9PmMsaXNDaXJjbGVMb2dvV2l0aFVybFByb3BzOigpPT5sfSk7dmFyIHI9big5MTQ0ODcpLGk9bi5uKHIpLG89bigxMzY0KSxzPW4oMTQwMDE3KSxhPW4ubihzKTtmdW5jdGlvbiBjKGUsdD0yLG4pe3JldHVybiBpKCkoYSgpLmxvZ28sYSgpW2VdLG4sMD09PXR8fDE9PT10P2koKShvLnNrZWxldG9uVGhlbWUud3JhcHBlcixhKCkuc2tlbGV0b24pOmEoKS5sZXR0ZXIsMT09PXQmJm8uc2tlbGV0b25UaGVtZS5hbmltYXRlZCl9ZnVuY3Rpb24gbChlKXtyZXR1cm4ibG9nb1VybCJpbiBlJiZudWxsIT09ZS5sb2dvVXJsJiZ2b2lkIDAhPT1lLmxvZ29VcmwmJjAhPT1lLmxvZ29VcmwubGVuZ3RofX0sMzA5OTIwKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse0N1c3RvbUJlaGF2aW91ckNvbnRleHQ6KCk9PnJ9KTtjb25zdCByPSgwLG4oNzc5NDc0KS5jcmVhdGVDb250ZXh0KSh7ZW5hYmxlQWN0aXZlU3RhdGVTdHlsZXM6ITB9KTtyLmRpc3BsYXlOYW1lPSJDdXN0b21CZWhhdmlvdXJDb250ZXh0In0sMjczMzEwKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse0ljb246KCk9Pml9KTt2YXIgcj1uKDc3OTQ3NCk7Y29uc3QgaT1yLmZvcndhcmRSZWYoKChlLHQpPT57Y29uc3R7aWNvbjpuPSIiLHRpdGxlOmksYXJpYUxhYmVsOm8sYXJpYUxhYmVsbGVkYnk6cyxhcmlhSGlkZGVuOmEsLi4uY309ZSxsPSEhKGl8fG98fHMpO3JldHVybiByLmNyZWF0ZUVsZW1lbnQoInNwYW4iLHtyb2xlOiJpbWciLC4uLmMscmVmOnQsImFyaWEtbGFiZWwiOm8sImFyaWEtbGFiZWxsZWRieSI6cywiYXJpYS1oaWRkZW4iOmF8fCFsLHRpdGxlOmksZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUw6e19faHRtbDpufX0pfSkpfSwxMzY0KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse3NrZWxldG9uVGhlbWU6KCk9Pml9KTt2YXIgcj1uKDk3NTI4NSk7Y29uc3QgaT1uLm4ocikoKX0sMzQ0MTAzKGUpeyJ1c2Ugc3RyaWN0Ijt2YXIgdD1be2Q6IkUtTWluaSBTJlAgNTAwIix0OiJFUyJ9LHtkOiJFLU1pbmkgTmFzZGFxIDEwMCIsdDoiTlEifSx7ZDoiR29sZCIsdDoiR0MifSx7ZDoiU2lsdmVyIix0OiJTSSJ9LHtkOiJDcnVkZSBPaWwgV1RJIix0OiJDTCJ9LHtkOiJOYXR1cmFsIEdhcyIsdDoiTkcifSx7ZDoiQXVzdHJhbGlhbiBEb2xsYXIiLHQ6IjZBIn0se2Q6IkF1c3RyYWxpYW4gRG9sbGFyIChGbG9vcikiLHQ6IkFEIn0se2Q6IkV1cm8gRlgiLHQ6IjZFIn0se2Q6IkV1cm8gRlggKEZsb29yKSIsdDoiRUMifSx7ZDoiQ29ybiIsdDoiWkMifSx7ZDoiQ29ybiAoRmxvb3IpIix0OiJDIn0se2Q6IkV1cm9kb2xsYXIiLHQ6IkdFIn0se2Q6IkV1cm9kb2xsYXIgKEZsb29yKSIsdDoiRUQifV0sbj1mdW5jdGlvbigpe3ZhciBlPVt7cGF0dGVybjoiKCIsY3RvcjpvfSx7cGF0dGVybjoiKSIsY3RvcjpzfSx7cGF0dGVybjoiKyIsY3RvcjpjfSx7cGF0dGVybjoiLSIsY3RvcjpsfSx7cGF0dGVybjoiKiIsY3Rvcjp1fSx7cGF0dGVybjoiLyIsY3RvcjpkfSx7cGF0dGVybjoiXiIsY3RvcjpwfSx7cGF0dGVybjovXGQrKD86XC5cZCp8KD8hW2EtekEtWjAtOV8hOi4mXSkpfFwuXGQrLyxjdG9yOmh9LHtwYXR0ZXJuOi9cLi8sY3Rvcjp3fSx7cGF0dGVybjovW2EtekEtWjAtOV9cdTAzNzAtXHUxRkZGX1x1MkU4MC1cdUZGRkZdW2EtekEtWjAtOV9cdTAwMjBcdTAzNzAtXHUxRkZGX1x1MkU4MC1cdUZGRkZfIXw6LiZdKnwnLis/Jy8sY3RvcjptfSx7CnBhdHRlcm46LydbXiddKi8sY3Rvcjp2fSx7cGF0dGVybjovW1wwLVx4MjBcc10rLyxjdG9yOml9XTtmdW5jdGlvbiBuKGUsdCl7dmFyIG49ZnVuY3Rpb24oKXt9O3JldHVybiBuLnByb3RvdHlwZT10LnByb3RvdHlwZSxlLnByb3RvdHlwZT1uZXcgbixlfWZ1bmN0aW9uIHIoKXt9ZnVuY3Rpb24gaShlKXt0aGlzLnZhbHVlPWV9ZnVuY3Rpb24gbygpe31mdW5jdGlvbiBzKCl7fWZ1bmN0aW9uIGEoKXt9ZnVuY3Rpb24gYygpe31mdW5jdGlvbiBsKCl7fWZ1bmN0aW9uIHUoKXt9ZnVuY3Rpb24gZCgpe31mdW5jdGlvbiBwKCl7fXIucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWV9LG4oaSxyKSxuKG8sciksby5wcm90b3R5cGUudmFsdWU9IigiLG4ocyxyKSxzLnByb3RvdHlwZS52YWx1ZT0iKSIsbihhLHIpLG4oYyxhKSxjLnByb3RvdHlwZS52YWx1ZT0iKyIsYy5wcm90b3R5cGUucHJlY2VkZW5jZT0wLGMucHJvdG90eXBlLmNvbW11dGF0aXZlPSEwLG4obCxhKSxsLnByb3RvdHlwZS52YWx1ZT0iLSIsbC5wcm90b3R5cGUucHJlY2VkZW5jZT0wLGwucHJvdG90eXBlLmNvbW11dGF0aXZlPSExLG4odSxhKSx1LnByb3RvdHlwZS52YWx1ZT0iKiIsdS5wcm90b3R5cGUucHJlY2VkZW5jZT0xLHUucHJvdG90eXBlLmNvbW11dGF0aXZlPSEwLG4oZCxhKSxkLnByb3RvdHlwZS52YWx1ZT0iLyIsZC5wcm90b3R5cGUucHJlY2VkZW5jZT0xLGQucHJvdG90eXBlLmNvbW11dGF0aXZlPSExLG4ocCxhKSxwLnByb3RvdHlwZS52YWx1ZT0iXiIscC5wcm90b3R5cGUucHJlY2VkZW5jZT0yLHAucHJvdG90eXBlLmNvbW11dGF0aXZlPSExO3ZhciBnPS9eJz8oPzooW0EtWjAtOV9dKyk6KT8oLio/KSc/JC9pLGY9L1srXC0vKl0vO2Z1bmN0aW9uIG0oZSl7dGhpcy52YWx1ZT1lfWZ1bmN0aW9uIGgoZSl7dGhpcy52YWx1ZT1lfWZ1bmN0aW9uIHkoZSl7dGhpcy52YWx1ZT1lfWZ1bmN0aW9uIHYoKXttLmFwcGx5KHRoaXMsYXJndW1lbnRzKX1mdW5jdGlvbiB3KCl7aC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9bihtLHIpLG0ucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7aWYodGhpcy5oYXNPd25Qcm9wZXJ0eSgiX3RpY2tlciIpKXt2YXIgZT1mLnRlc3QodGhpcy5fdGlja2VyKT8iJyI6IiI7cmV0dXJuIGUrKHRoaXMuX2V4Y2hhbmdlP3RoaXMuX2V4Y2hhbmdlKyI6IjoiIikrdGhpcy5fdGlja2VyK2V9cmV0dXJuIHRoaXMudmFsdWV9LG0ucHJvdG90eXBlLnBhcnNlPWZ1bmN0aW9uKCl7dmFyIGU9Zy5leGVjKHRoaXMudmFsdWUpO2VbMV0mJih0aGlzLl9leGNoYW5nZT1lWzFdKSx0aGlzLl90aWNrZXI9ZVsyXX0sbS5wcm90b3R5cGUucGFyc2VBc0Z1dHVyZXM9ZnVuY3Rpb24oKXt0aGlzLmhhc093blByb3BlcnR5KCJfdGlja2VyIil8fHRoaXMucGFyc2UoKTtmb3IodmFyIGU9ZnVuY3Rpb24oZSl7cmV0dXJuIHQuc29tZSgoZnVuY3Rpb24odCl7cmV0dXJuIHQudD09PWV9KSl9LG49MjtuPj0xOy0tbil7dmFyIHI9dGhpcy5fdGlja2VyLnNsaWNlKDAsbik7aWYoZShyKSl7dGhpcy5fcm9vdD1yLHRoaXMuX2NvbnRyYWN0PXRoaXMuX3RpY2tlci5zbGljZShuKTticmVha319fSxtLnByb3RvdHlwZS5leGNoYW5nZT1mdW5jdGlvbihlKXtpZih0aGlzLmhhc093blByb3BlcnR5KCJfdGlja2VyIil8fHRoaXMucGFyc2UoKSwhKGFyZ3VtZW50cy5sZW5ndGg+MCkpcmV0dXJuIHRoaXMuX2V4Y2hhbmdlO251bGw9PWU/ZGVsZXRlIHRoaXMuX2V4Y2hhbmdlOnRoaXMuX2V4Y2hhbmdlPWUrIiJ9LG0ucHJvdG90eXBlLnRpY2tlcj1mdW5jdGlvbihlKXtpZih0aGlzLmhhc093blByb3BlcnR5KCJfdGlja2VyIil8fHRoaXMucGFyc2UoKSwhKGFyZ3VtZW50cy5sZW5ndGg+MCkpcmV0dXJuIHRoaXMuX3RpY2tlcjtudWxsPT1lP2RlbGV0ZSB0aGlzLl90aWNrZXI6dGhpcy5fdGlja2VyPWUrIiIsZGVsZXRlIHRoaXMuX3Jvb3QsZGVsZXRlIHRoaXMuX2NvbnRyYWN0fSxtLnByb3RvdHlwZS5yb290PWZ1bmN0aW9uKGUpe2lmKHRoaXMuaGFzT3duUHJvcGVydHkoIl9yb290Iil8fHRoaXMucGFyc2VBc0Z1dHVyZXMoKSwhKGFyZ3VtZW50cy5sZW5ndGg+MCkpcmV0dXJuIHRoaXMuX3Jvb3Q7bnVsbD09ZT9kZWxldGUgdGhpcy5fcm9vdDoodGhpcy5fcm9vdD1lKyIiLHRoaXMuX3Jvb3QmJih0aGlzLl90aWNrZXI9dGhpcy5fcm9vdCsodGhpcy5fY29udHJhY3R8fCIiKSkpfSxtLnByb3RvdHlwZS5jb250cmFjdD1mdW5jdGlvbihlKXtpZih0aGlzLmhhc093blByb3BlcnR5KCJfY29udHJhY3QiKXx8dGhpcy5wYXJzZUFzRnV0dXJlcygpLCEoYXJndW1lbnRzLmxlbmd0aD4wKSlyZXR1cm4gdGhpcy5fcm9vdDtudWxsPT1lP2RlbGV0ZSB0aGlzLl9jb250cmFjdDoodGhpcy5fY29udHJhY3Q9ZSsiIix0aGlzLl9yb290JiYodGhpcy5fdGlja2VyPXRoaXMuX3Jvb3QrdGhpcy5fY29udHJhY3QpKX0sbihoLHIpLGgucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuaGFzT3duUHJvcGVydHkoIl9ub3JtYWxpemVkVmFsdWUiKT90aGlzLl9ub3JtYWxpemVkVmFsdWU6dGhpcy52YWx1ZX0saC5wcm90b3R5cGUucGFyc2U9ZnVuY3Rpb24oKXt0aGlzLl9ub3JtYWxpemVkVmFsdWU9dGhpcy52YWx1ZS5yZXBsYWNlKC9eMCt8XC4wKiQvZywiIikucmVwbGFjZSgvKFwuXGQqPykwKyQvLCIkMSIpLnJlcGxhY2UoL14oXC58JCkvLCIwJDEiKX0seS5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZX0sbih2LG0pLHYucHJvdG90eXBlLmlzSW5jb21wbGV0ZT0hMCx2LnByb3RvdHlwZS5pbmNvbXBsZXRlU3VnZ2VzdD1mdW5jdGlvbigpe2lmKCInIiE9PXRoaXMudmFsdWUpcmV0dXJuIFN0cmluZygiJyIpfSxuKHcsaCksdy5wcm90b3R5cGUuaXNJbmNvbXBsZXRlPSEwO3ZhciBiPW5ldyBSZWdFeHAoZS5tYXAoKGZ1bmN0aW9uKGUpe3JldHVybiIoIisoInN0cmluZyI9PXR5cGVvZiBlLnBhdHRlcm4/ZS5wYXR0ZXJuLnJlcGxhY2UoL1tcXiQoKVtcXXt9Kis/fFxcXS9nLCJcXCQmIik6ZS5wYXR0ZXJuLnNvdXJjZSkrIikifSkpLmNvbmNhdCgiLiIpLmpvaW4oInwiKSwiZyIpCjtmdW5jdGlvbiBfKHQsbil7dmFyIHIsbz1bXTtlOmZvcig7cj1iLmV4ZWModCk7KXtmb3IodmFyIHM9ZS5sZW5ndGg7cy0tOylpZihyW3MrMV0pe2lmKGVbc10uY3Rvcil7dmFyIGE9bmV3IGVbc10uY3RvcihyW3MrMV0pO2EuX29mZnNldD1yLmluZGV4LG8ucHVzaChhKX1jb250aW51ZSBlfXZhciBjPW5ldyB5KHJbMF0pO2MuX29mZnNldD1yLmluZGV4LG8ucHVzaChjKX1pZihuJiZuLnJlY292ZXIpe3ZhciBsO2ZvcihzPW8ubGVuZ3RoO3MtLTspe3ZhciB1PW9bc107aWYodSBpbnN0YW5jZW9mIGh8fHUgaW5zdGFuY2VvZiBtKXtpZih2b2lkIDAhPT1sKXt2YXIgZD1uZXcgbSgiIikscD1vLnNwbGljZShzLGwtcysxLGQpO2QudmFsdWU9cC5tYXAoKGZ1bmN0aW9uKGUpe3JldHVybiBlLnZhbHVlfSkpLmpvaW4oIiIpfWw9c31lbHNlIHUgaW5zdGFuY2VvZiBpfHwobD12b2lkIDApfX1yZXR1cm4gb31mdW5jdGlvbiB4KGUpe2Zvcih2YXIgdD1bXSxuPTA7bjxlLmxlbmd0aDtuKyspZVtuXWluc3RhbmNlb2YgaXx8dC5wdXNoKGVbbl0pO3JldHVybiB0fWZ1bmN0aW9uIFMoZSl7ZT14KGUpO2Zvcih2YXIgdCxuPVtdLHI9W10saT0wO2k8ZS5sZW5ndGg7aSsrKXt2YXIgYz1lW2ldO2lmKGMgaW5zdGFuY2VvZiBhKXIubGVuZ3RoJiZyW3IubGVuZ3RoLTFdLm1pblByZWNlZGVuY2U+Yy5wcmVjZWRlbmNlJiYocltyLmxlbmd0aC0xXS5taW5QcmVjZWRlbmNlPWMucHJlY2VkZW5jZSk7ZWxzZSBpZihjIGluc3RhbmNlb2YgbylyLnB1c2godD17bWluUHJlY2VkZW5jZToxLzAsb3BlbkJyYWNlSW5kZXg6aX0pO2Vsc2UgaWYoYyBpbnN0YW5jZW9mIHMpe3ZhciBsPWVbKHQ9ci5wb3AoKSkub3BlbkJyYWNlSW5kZXgtMV0sdT1lW2krMV07dSBpbnN0YW5jZW9mIGEmJiEodS5wcmVjZWRlbmNlPD10Lm1pblByZWNlZGVuY2UpfHwhKCEobCBpbnN0YW5jZW9mIGEpfHxsLnByZWNlZGVuY2U8dC5taW5QcmVjZWRlbmNlfHxsLnByZWNlZGVuY2U9PT10Lm1pblByZWNlZGVuY2UmJmwuY29tbXV0YXRpdmUpfHwobi51bnNoaWZ0KHQub3BlbkJyYWNlSW5kZXgpLG4ucHVzaChpKSxyLmxlbmd0aCYmcltyLmxlbmd0aC0xXS5taW5QcmVjZWRlbmNlPnQubWluUHJlY2VkZW5jZSYmKHJbci5sZW5ndGgtMV0ubWluUHJlY2VkZW5jZT10Lm1pblByZWNlZGVuY2UpKX19Zm9yKGk9bi5sZW5ndGg7aS0tOyllLnNwbGljZShuW2ldLDEpO3JldHVybiBlfWZ1bmN0aW9uIGsoZSl7aWYoInN0cmluZyIhPXR5cGVvZiBlKXRocm93IG5ldyBUeXBlRXJyb3IoImV4cHJlc3Npb24gbXVzdCBiZSBhIHN0cmluZyIpO3JldHVybihlPV8oZSkpLmZpbHRlcigoZnVuY3Rpb24oZSl7cmV0dXJuIGUgaW5zdGFuY2VvZiBtfSkpLm1hcCgoZnVuY3Rpb24oZSl7cmV0dXJuIGUuZXhjaGFuZ2UoKX0pKS5maWx0ZXIoKGZ1bmN0aW9uKGUpe3JldHVybiBlfSkpfWZ1bmN0aW9uIFQoZSl7cmV0dXJuIDEhPT0oZT1rKGUpKS5sZW5ndGg/bnVsbDplWzBdfWZ1bmN0aW9uIFAoZSx0KXtyZXR1cm4oZT1rKGUpKS5zb21lKChmdW5jdGlvbihlKXtyZXR1cm4gdC5pbmNsdWRlcygoZXx8IiIpLnRvVXBwZXJDYXNlKCkpfSkpfWZ1bmN0aW9uIEMoZSl7cmV0dXJuIGUuam9pbigiIil9cmV0dXJue3Rva2VuaXplOl8sdmFsaWRhdGU6ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PSJpbml0IixuPSJ2YXIiLHI9dCxjPXt3YXJuaW5nczpbXSxlcnJvcnM6W10saXNFbXB0eTohMH0sbD1bXSx1PTA7dTxlLmxlbmd0aDt1Kyspe2lmKCEoKHA9ZVt1XSlpbnN0YW5jZW9mIGkpKXtpZihkZWxldGUgYy5pc0VtcHR5LHAuaXNJbmNvbXBsZXRlKXt2YXIgZD17c3RhdHVzOiJpbmNvbXBsZXRlIixyZWFzb246ImluY29tcGxldGVfdG9rZW4iLG9mZnNldDpwLl9vZmZzZXQsdG9rZW46cH07aWYocC5pbmNvbXBsZXRlU3VnZ2VzdCYmKGQucmVjb3Zlcj17YXBwZW5kOnAuaW5jb21wbGV0ZVN1Z2dlc3QoKX0pLGMud2FybmluZ3MucHVzaChkKSx1IT09ZS5sZW5ndGgtMSl7ZC5zdGF0dXM9ImVycm9yIjtjb250aW51ZX19aWYocCBpbnN0YW5jZW9mIG18fHAgaW5zdGFuY2VvZiBoKXtpZihyPT09bil7Yy5lcnJvcnMucHVzaCh7c3RhdHVzOiJlcnJvciIscmVhc29uOiJ1bmV4cGVjdGVkX3Rva2VuIixvZmZzZXQ6cC5fb2Zmc2V0LHRva2VuOnB9KTtjb250aW51ZX1yPW59ZWxzZSBpZihwIGluc3RhbmNlb2YgYSl7aWYociE9PW4pe2MuZXJyb3JzLnB1c2goe3N0YXR1czoiZXJyb3IiLHJlYXNvbjoidW5leHBlY3RlZF90b2tlbiIsb2Zmc2V0OnAuX29mZnNldCx0b2tlbjpwfSk7Y29udGludWV9cj0ib3BlcmF0b3IifWVsc2UgaWYocCBpbnN0YW5jZW9mIG8pe2lmKHI9PT1uKXtjLmVycm9ycy5wdXNoKHtzdGF0dXM6ImVycm9yIixyZWFzb246InVuZXhwZWN0ZWRfdG9rZW4iLG9mZnNldDpwLl9vZmZzZXQsdG9rZW46cH0pO2NvbnRpbnVlfWwucHVzaChwKSxyPXR9ZWxzZSBpZihwIGluc3RhbmNlb2Ygcyl7aWYociE9PW4pe2MuZXJyb3JzLnB1c2goe3N0YXR1czoiZXJyb3IiLHJlYXNvbjoidW5leHBlY3RlZF90b2tlbiIsb2Zmc2V0OnAuX29mZnNldCx0b2tlbjpwfSk7Y29udGludWV9bC5wb3AoKXx8Yy5lcnJvcnMucHVzaCh7c3RhdHVzOiJlcnJvciIscmVhc29uOiJ1bmJhbGFuY2VkX2JyYWNlIixvZmZzZXQ6cC5fb2Zmc2V0LHRva2VuOnAscmVjb3Zlcjp7cHJlcGVuZDpuZXcgb319KSxyPW59ZWxzZSBwIGluc3RhbmNlb2YgeSYmYy5lcnJvcnMucHVzaCh7c3RhdHVzOiJlcnJvciIscmVhc29uOiJ1bnBhcnNlZF9lbnRpdHkiLG9mZnNldDpwLl9vZmZzZXQsdG9rZW46cH0pfX1mb3IoYy5icmFjZUJhbGFuY2U9bC5sZW5ndGgsciE9PW4mJmMud2FybmluZ3MucHVzaCh7c3RhdHVzOiJpbmNvbXBsZXRlIn0pO2wubGVuZ3RoOyl7dmFyIHA7ZD17c3RhdHVzOiJpbmNvbXBsZXRlIixyZWFzb246InVuYmFsYW5jZWRfYnJhY2UiLG9mZnNldDoocD1sLnBvcCgpKS5fb2Zmc2V0LHRva2VuOnB9O3I9PT1uJiYoZC5yZWNvdmVyPXthcHBlbmQ6bmV3IHN9KSxjLndhcm5pbmdzLnB1c2goZCl9cmV0dXJuIGMuY3VycmVudFN0YXRlPXIsMD09PWMud2FybmluZ3MubGVuZ3RoJiZkZWxldGUgYy53YXJuaW5ncywKMD09PWMuZXJyb3JzLmxlbmd0aCYmZGVsZXRlIGMuZXJyb3JzLGN9LGZhY3Rvck91dEJyYWNlczpTLG5vcm1hbGl6ZVRva2VuczpmdW5jdGlvbihlKXtmb3IodmFyIHQ9MDt0PGUubGVuZ3RoO3QrKyllW3RdLnBhcnNlJiZlW3RdLnBhcnNlKCk7cmV0dXJuIGV9LGZsaXA6ZnVuY3Rpb24oZSl7dmFyIHQ9ZnVuY3Rpb24oZSl7Zm9yKHZhciB0LG49MCxyPTEsYz0yLGw9Myx1PW4scD0wLGc9MDtnPGUubGVuZ3RoO2crKyl7dmFyIGY9ZVtnXTtpZighKGYgaW5zdGFuY2VvZiBpKSlzd2l0Y2godSl7Y2FzZSBuOmlmKCEoZiBpbnN0YW5jZW9mIGgmJjE9PStmLnZhbHVlKSlyZXR1cm4hMTt1PXI7YnJlYWs7Y2FzZSByOmlmKCEodT09PXImJmYgaW5zdGFuY2VvZiBkKSlyZXR1cm4hMTt1PWMsdD1nKzE7YnJlYWs7Y2FzZSBjOmlmKGYgaW5zdGFuY2VvZiBvKXU9bCxwPTE7ZWxzZSBpZihmIGluc3RhbmNlb2YgYSlyZXR1cm4hMTticmVhaztjYXNlIGw6ZiBpbnN0YW5jZW9mIG8/cCsrOmYgaW5zdGFuY2VvZiBzJiYtLXA8PTAmJih1PWMpfX1yZXR1cm4gZS5zbGljZSh0KX0oZSk7cmV0dXJuIFModHx8W25ldyBoKCIxIiksbmV3IGQsbmV3IG9dLmNvbmNhdChlKS5jb25jYXQobmV3IHMpKX0saGFzQmF0c1N5bWJvbHM6ZnVuY3Rpb24oZSl7cmV0dXJuIFAoZSxbIkJBVFMiXSl9LGhhc0VvZFN5bWJvbHM6ZnVuY3Rpb24oZSl7cmV0dXJuKGU9VChlKSkmJi0xIT09ZS50b1VwcGVyQ2FzZSgpLmluZGV4T2YoIl9FT0QiKX0saGFzQ2h4anB5U3ltYm9sczpmdW5jdGlvbihlKXtyZXR1cm4gUChlLFsiQ0hYSlBZIl0pfSxoYXNGcmVlRGVsYXlTeW1ib2xzOmZ1bmN0aW9uKGUpe3JldHVybiBQKGUscHJvLmdldFByb2R1Y3RzQnlUeXBlKHByby5QUk9EVUNUX1RZUEVTLmV4Y2hhbmdlKS5tYXAoKGZ1bmN0aW9uKGUpe3JldHVybiBlLmV4Y2hhbmdlLnRvVXBwZXJDYXNlKCkrIl9ETFkifSkpKX0sZ2V0RXhjaGFuZ2U6VCxnZXRFeGNoYW5nZXM6ayxpc0V4Y2hhbmdlOmZ1bmN0aW9uKGUsdCl7cmV0dXJuISEoZT1UKGUpKSYmZS5zdWJzdHJpbmcoMCx0Lmxlbmd0aCk9PT10fSxTeW1ib2xUb2tlbjptLEluY29tcGxldGVTeW1ib2xUb2tlbjp2LE51bWJlclRva2VuOmgsQmluYXJ5T3BlcmF0b3JUb2tlbjphLE9wZW5CcmFjZVRva2VuOm8sQ2xvc2VCcmFjZVRva2VuOnMsdGlja2VyOmZ1bmN0aW9uKGUpe3JldHVybiBuZXcgbShlKS50aWNrZXIoKX0sc2hvcnROYW1lOmZ1bmN0aW9uKGUpe2lmKCJzdHJpbmciIT10eXBlb2YgZSl0aHJvdyBuZXcgVHlwZUVycm9yKCJleHByZXNzaW9uIG11c3QgYmUgYSBzdHJpbmciKTt2YXIgdD1TKHgoXyhlKSkpO3JldHVybiB0LmZvckVhY2goKGZ1bmN0aW9uKGUpe2UgaW5zdGFuY2VvZiBtJiZlLmV4Y2hhbmdlKG51bGwpfSkpLEModCl9LG5vcm1hbGl6ZTpmdW5jdGlvbihlKXtpZigic3RyaW5nIiE9dHlwZW9mIGUpdGhyb3cgbmV3IFR5cGVFcnJvcigiZXhwcmVzc2lvbiBtdXN0IGJlIGEgc3RyaW5nIik7cmV0dXJuIEMoUyh4KF8oZSkpKSl9fX0oKTtlLmV4cG9ydHM9bn0sMjMyOTQ4KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse2dldFByb2R1Y3RJZDooKT0+dSxpc0V4Y2hhbmdlOigpPT5sLGlzUGFpZFBybzooKT0+YSxpc1BsYW46KCk9PmMsaXNQcm86KCk9PnMsaXNQcm9kdWN0RGVmaW5lZDooKT0+aSxpc1RyaWFsOigpPT5vfSk7dmFyIHI9big1ODE4OTMpO2Z1bmN0aW9uIGkoZSl7cmV0dXJuISghZXx8IU9iamVjdC5rZXlzKGUpLmxlbmd0aCl9ZnVuY3Rpb24gbyhlKXtyZXR1cm4hIWUuaXNfdHJpYWx9ZnVuY3Rpb24gcyhlKXtyZXR1cm4hIWU/LnByb19wbGFufWZ1bmN0aW9uIGEoZSl7cmV0dXJuIHMoZSkmJiFvKGUpfWZ1bmN0aW9uIGMoZSl7cmV0dXJuIGUudHlwZT09PXIuUHJvZHVjdFR5cGUuUHJvUGxhbn1mdW5jdGlvbiBsKGUpe3JldHVybiBlLnR5cGU9PT1yLlByb2R1Y3RUeXBlLkV4Y2hhbmdlfWZ1bmN0aW9uIHUoZSl7cmV0dXJuIGU/bChlKXx8ZnVuY3Rpb24oZSl7cmV0dXJuIGUudHlwZT09PXIuUHJvZHVjdFR5cGUuQ29pbnN9KGUpP2UudGV4dF9pZD8/IiI6ZS5kaXNjb3VudF90ZXh0X2lkPz9lLnRleHRfaWQ/PyIiOiIifX0sODY0MDM0KGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI7bi5kKHQse0JpbGxpbmdDeWNsZTooKT0+cixNT05USExZX1NVQlNDUklQVElPTl9EQVlTX0xFTjooKT0+byxXRUVLTFlfU1VCU0NSSVBUSU9OX0RBWVNfTEVOOigpPT5pfSksZnVuY3Rpb24oZSl7ZS5Nb250aGx5PSJtIixlLlRocmVlTW9udGhzPSIzbSIsZS5PbmVZZWFyPSJ5In0ocnx8KHI9e30pKTtjb25zdCBpPTcsbz0zMH0sNTgxODkzKGUsdCxuKXsidXNlIHN0cmljdCI7dmFyIHI7bi5kKHQse1Byb2R1Y3RUeXBlOigpPT5yfSksZnVuY3Rpb24oZSl7ZVtlLlByb1BsYW49MV09IlByb1BsYW4iLGVbZS5OZXdzRmVlZD0zXT0iTmV3c0ZlZWQiLGVbZS5FeGNoYW5nZT00XT0iRXhjaGFuZ2UiLGVbZS5Db25uZWN0aW9uPTZdPSJDb25uZWN0aW9uIixlW2UuQ29pbnM9OF09IkNvaW5zIixlW2UuU2NyaXB0UGFja2FnZT05XT0iU2NyaXB0UGFja2FnZSJ9KHJ8fChyPXt9KSl9LDQ5ODY1MShlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtpc0lEQ0V4Y2hhbmdlOigpPT5pfSk7dmFyIHI9bigyMzI5NDgpO2Z1bmN0aW9uIGkoZSx0PSExKXtpZihlJiZlLnN0YXJ0c1dpdGgoImV4Y2hhbmdlLSIpKXJldHVybiBmdW5jdGlvbihlLHQ9ITEpe2NvbnN0IG49d2luZG93LnBybz8uZ2V0UHJvZHVjdChlKTtyZXR1cm4hKHZvaWQgMD09PW58fCEoMCxyLmlzUHJvZHVjdERlZmluZWQpKG4pfHwodD8hbi5pZGNfc2VydmljZV9jb2Rlc19kZWxheTohbi5pZGNfc2VydmljZV9jb2RlcykpfShlLHQpO2NvbnN0IG49KGV8fCIiKS50b0xvd2VyQ2FzZSgpO3JldHVybiB3aW5kb3cucHJvPy5nZXRJRENFeGNoYW5nZXModCk/LmluY2x1ZGVzKG4pPz8hMX19LDk1MjkwMChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHthY2N1bXVsYXRlOigpPT5zLGNvbWJpbmU6KCk9Pm99KTt2YXIgcj1uKDIzMjM2NCk7ZnVuY3Rpb24gaShlLHQsLi4ubil7bGV0IGk9bnVsbAo7Y29uc3Qgbz0oLi4udCk9PmUoLi4udC5tYXAoKGU9PmUudmFsdWUoKSkpLGk/LnZhbHVlKCkpLHM9aT1uZXcgci5XYXRjaGVkVmFsdWUobyguLi5uKSksYT0oKT0+e2NvbnN0IGU9bi5tYXAoKChlLHQpPT5lLnZhbHVlKCkpKTt0KC4uLmUpJiZzLnNldFZhbHVlKG8oLi4ubikpfSxjPW4ubWFwKChlPT5lLnNwYXduKCkpKTtmb3IoY29uc3QgZSBvZiBjKWUuc3Vic2NyaWJlKGEpO3JldHVybiBzLnJlYWRvbmx5KCkuc3Bhd24oKCgpPT57Yy5mb3JFYWNoKChlPT5lLmRlc3Ryb3koKSkpLG4uZm9yRWFjaCgoZT0+ZS5yZWxlYXNlKCkpKX0pKX1mdW5jdGlvbiBvKGUsLi4udCl7cmV0dXJuIGkoZSwoKCk9PiEwKSwuLi50KX1mdW5jdGlvbiBzKGUsdCwuLi5uKXtsZXQgaT1udWxsO2NvbnN0IHM9bygoKC4uLmUpPT4oZS5zcGxpY2UoLTEpLGUpKSwuLi5uKSxhPXQuc3Bhd24oKSxjPSh0LC4uLm4pPT57Y29uc3Qgcj10Lm1hcCgoZT0+ZS52YWx1ZSgpKSk7cmV0dXJuIGUociwuLi5uLGk/LnZhbHVlKCkpfSxsPWk9bmV3IHIuV2F0Y2hlZFZhbHVlKGMoYS52YWx1ZSgpLC4uLnMudmFsdWUoKSkpO2xldCB1PVtdO2NvbnN0IGQ9KCk9PntsLnNldFZhbHVlKGModSwuLi5zLnZhbHVlKCkpKX0scD1lPT57dS5mb3JFYWNoKChlPT5lLmRlc3Ryb3koKSkpLHU9ZS5tYXAoKGU9PmUuc3Bhd24oKSkpLHUuZm9yRWFjaCgoZT0+ZS5zdWJzY3JpYmUoZCkpKSxkKCl9O3AoYS52YWx1ZSgpKSxhLnN1YnNjcmliZShwKSxzLnN1YnNjcmliZShkKTtyZXR1cm4gbC5yZWFkb25seSgpLnNwYXduKCgoKT0+e3UuZm9yRWFjaCgoZT0+ZS5kZXN0cm95KCkpKSxhLmRlc3Ryb3koKSxzLmRlc3Ryb3koKSx0LnJlbGVhc2UoKX0pKX19LDE1MDE1MChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtndWlkOigpPT5pLHJhbmRvbUhhc2g6KCk9Pm8scmFuZG9tSGFzaE46KCk9PnN9KTtjb25zdCByPSIwMTIzNDU2Nzg5YWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWiI7ZnVuY3Rpb24gaSgpe3JldHVybiJ4eHh4eHh4eC14eHh4LTR4eHgteXh4eC14eHh4eHh4eHh4eHgiLnJlcGxhY2UoL1t4eV0vZywoZT0+e2NvbnN0IHQ9MTYqTWF0aC5yYW5kb20oKXwwO3JldHVybigieCI9PT1lP3Q6MyZ0fDgpLnRvU3RyaW5nKDE2KX0pKX1mdW5jdGlvbiBvKCl7cmV0dXJuIHMoMTIpfWZ1bmN0aW9uIHMoZSl7bGV0IHQ9IiI7Zm9yKGxldCBuPTA7bjxlOysrbil7Y29uc3QgZT1NYXRoLmZsb29yKDYyKk1hdGgucmFuZG9tKCkpO3QrPXJbZV19cmV0dXJuIHR9fSw2NDA3NDQoZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKGUsdCxuKXtyZXR1cm4gTWF0aC5taW4oTWF0aC5tYXgoZSx0KSxuKX1mdW5jdGlvbiBpKGUpe2NvbnN0IHQ9TWF0aC5jZWlsKGUpO3JldHVybiB0JTIhPTA/dC0xOnR9ZnVuY3Rpb24gbyhlKXtjb25zdCB0PU1hdGguY2VpbChlKTtyZXR1cm4gdCUyPT0wP3QtMTp0fWZ1bmN0aW9uIHMoZSl7cmV0dXJuIGU+MD9NYXRoLmZsb29yKGUpOk1hdGguY2VpbChlKX1mdW5jdGlvbiBhKGUpe3JldHVybiBlJTI9PTB9bi5kKHQse2NlaWxlZEV2ZW46KCk9PmksY2VpbGVkT2RkOigpPT5vLGNsYW1wOigpPT5yLGlzRXZlbjooKT0+YSx0b0ludDooKT0+c30pfSwyNDE5NTYoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Y3JlYXRlV1ZGcm9tR2V0dGVyQW5kU3Vic2NyaXB0aW9uOigpPT5pfSk7dmFyIHI9bigyMzIzNjQpO2Z1bmN0aW9uIGkoZSx0KXtjb25zdCBuPW5ldyByLldhdGNoZWRWYWx1ZShlKCkpLGk9e307dC5zdWJzY3JpYmUoaSwoKCk9PntuLnNldFZhbHVlKGUobi52YWx1ZSgpKSl9KSk7cmV0dXJuIG4ucmVhZG9ubHkoKS5zcGF3bigoKCk9PnQudW5zdWJzY3JpYmVBbGwoaSkpKX19LDYwMTg0MShlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtjbG9uZTooKT0+cyxkZWVwRXF1YWxzOigpPT5kLGhhc1Byb3BlcnR5OigpPT5sLGlzQXJyYXk6KCk9PnAsaXNFeGlzdGVudDooKT0+Zixpc0ludGVnZXI6KCk9Pm0saXNOYU46KCk9PmcsaXNOdW1iZXI6KCk9Pm8saXNPYmplY3Q6KCk9PmMsaXNTdHJpbmc6KCk9PmgsbWVyZ2U6KCk9PmEsbm90TnVsbDooKT0+eX0pO2NvbnN0IHI9bmV3IFNldChbIl9fcHJvdG9fXyIsInByb3RvdHlwZSIsImNvbnN0cnVjdG9yIl0pO2Z1bmN0aW9uIGkoZSl7cmV0dXJuIHIuaGFzKGUpfWZ1bmN0aW9uIG8oZSl7cmV0dXJuIm51bWJlciI9PXR5cGVvZiBlJiZpc0Zpbml0ZShlKX1mdW5jdGlvbiBzKGUpe2lmKCFlfHwib2JqZWN0IiE9dHlwZW9mIGUpcmV0dXJuIGU7bGV0IHQ7dD1BcnJheS5pc0FycmF5KGUpP1tdOnt9O2Zvcihjb25zdCBuIGluIGUpaWYoZS5oYXNPd25Qcm9wZXJ0eShuKSl7Y29uc3Qgcj1lW25dO3Rbbl09ciYmIm9iamVjdCI9PXR5cGVvZiByP3Mocik6cn1yZXR1cm4gdH1mdW5jdGlvbiBhKGUsdCl7aWYoIWMoZSl8fCFjKHQpKXJldHVybiBlO2Zvcihjb25zdFtuLHJdb2YgT2JqZWN0LmVudHJpZXModCkpaShuKXx8KHImJih1KHIpfHwhcChyKSYmT2JqZWN0LmdldFByb3RvdHlwZU9mKHIpIT09T2JqZWN0LnByb3RvdHlwZSk/ZVtuXT1yOihlLmhhc093blByb3BlcnR5KG4pJiZjKGVbbl0pfHwhYyhyKXx8KGVbbl09QXJyYXkuaXNBcnJheShyKT9bXTp7fSksYyhyKSYmYyhlW25dKT9hKGVbbl0scik6ZVtuXT1yKSk7cmV0dXJuIGV9ZnVuY3Rpb24gYyhlKXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIGUmJm51bGwhPT1lfWZ1bmN0aW9uIGwoZSx0KXtyZXR1cm4gdCBpbiBlfWZ1bmN0aW9uIHUoZSl7cmV0dXJuIG51bGwhPWUmJihlLmNvbnN0cnVjdG9yPT09RnVuY3Rpb258fCJbb2JqZWN0IEZ1bmN0aW9uXSI9PT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZSkpfWZ1bmN0aW9uIGQoZSx0LG49IiIpe2lmKGU9PT10KXJldHVyblshMCxuXTtpZih1KGUpJiYoZT12b2lkIDApLHUodCkmJih0PXZvaWQgMCksbnVsbD09ZXx8bnVsbD09dClyZXR1cm5bZT09PXQsbl07aWYoIm9iamVjdCIhPXR5cGVvZiBlJiYib2JqZWN0IiE9dHlwZW9mIHQpcmV0dXJuW2U9PT10LG5dO2lmKEFycmF5LmlzQXJyYXkoZSkmJkFycmF5LmlzQXJyYXkodCkpewpjb25zdCByPWUubGVuZ3RoO2lmKHIhPT10Lmxlbmd0aClyZXR1cm5bITEsbl07Zm9yKGxldCBpPTA7aTxyO2krKyl7Y29uc3Qgcj1kKGVbaV0sdFtpXSxuKyJbIitpKyJdIik7aWYoIXJbMF0pcmV0dXJuIHJ9cmV0dXJuWyEwLG5dfWlmKEFycmF5LmlzQXJyYXkoZSl8fEFycmF5LmlzQXJyYXkodCkpcmV0dXJuWyExLG5dO2lmKE9iamVjdC5rZXlzKGUpLmxlbmd0aCE9PU9iamVjdC5rZXlzKHQpLmxlbmd0aClyZXR1cm5bITEsbl07Zm9yKGNvbnN0IHIgaW4gZSl7Y29uc3QgaT1kKGVbcl0sdFtyXSxuKyJbIityKyJdIik7aWYoIWlbMF0pcmV0dXJuIGl9cmV0dXJuWyEwLG5dfWNvbnN0IHA9QXJyYXkuaXNBcnJheXx8ZnVuY3Rpb24oZSl7cmV0dXJuIltvYmplY3QgQXJyYXldIj09PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChlKX07ZnVuY3Rpb24gZyhlKXtyZXR1cm4hKGU8PTB8fGU+MCl9ZnVuY3Rpb24gZihlKXtyZXR1cm4gbnVsbCE9ZX1mdW5jdGlvbiBtKGUpe3JldHVybiJudW1iZXIiPT10eXBlb2YgZSYmZSUxPT0wfWZ1bmN0aW9uIGgoZSl7cmV0dXJuIG51bGwhPWUmJmUuY29uc3RydWN0b3I9PT1TdHJpbmd9ZnVuY3Rpb24geShlKXtyZXR1cm4gbnVsbCE9PWV9TnVtYmVyLmlzTmFOPU51bWJlci5pc05hTnx8ZnVuY3Rpb24oZSl7cmV0dXJuIGUhPWV9fSw0OTI2NzcoZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiByKGUpe3JldHVybiBkZWNvZGVVUklDb21wb25lbnQoZS5yZXBsYWNlKC9cKy9nLCIgIikpLnJlcGxhY2UoLzxcLz9bXj5dKyg+fCQpL2csIiIpfWZ1bmN0aW9uIGkoZSl7Y29uc3QgdD0vKFteJj1dKyk9PyhbXiZdKikvZyxuPXt9O2lmKCFlKXJldHVybiBuO2xldCBpPXQuZXhlYyhlKTtmb3IoO2k7KW5bcihpWzFdKV09cihpWzJdKSxpPXQuZXhlYyhlKTtyZXR1cm4gbn1mdW5jdGlvbiBvKCl7cmV0dXJuIGkod2luZG93LmxvY2F0aW9uLnNlYXJjaC5zdWJzdHJpbmcoMSkpfWZ1bmN0aW9uIHMoKXtjb25zdCBlPXdpbmRvdy5sb2NhdGlvbi5ocmVmLnNwbGl0KCIjIilbMF07d2luZG93Lmhpc3RvcnkucmVwbGFjZVN0YXRlKCIiLGRvY3VtZW50LnRpdGxlLGUpfWZ1bmN0aW9uIGEoZSl7Y29uc3QgdD1bXTtmb3IoY29uc3QgbiBpbiBlKWlmKGUuaGFzT3duUHJvcGVydHkobikmJm51bGwhPWVbbl0pe2NvbnN0IHI9ZVtuXSxpPSJvYmplY3QiPT10eXBlb2Ygcj9KU09OLnN0cmluZ2lmeShyKTpTdHJpbmcocik7dC5wdXNoKHtrZXk6bixwYWlyOmVuY29kZVVSSUNvbXBvbmVudChuKSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KGkpfSl9cmV0dXJuIHQuc29ydCgoKGUsdCk9PmUua2V5PnQua2V5PzE6ZS5rZXk8dC5rZXk/LTE6MCkpLm1hcCgoZT0+ZS5wYWlyKSkuam9pbigiJiIpfW4uZCh0LHtjcmVhdGVVcmxQYXJhbXM6KCk9PmEsZ2V0VXJsUGFyYW1zOigpPT5vLHJlbW92ZUhhc2hGcm9tVXJsOigpPT5zfSl9LDEwNzA0NShlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtOdW1lcmljRm9ybWF0dGVyOigpPT5vfSk7dmFyIHI9big1OTg5MjIpLGk9big1NDY0ODUpO2NsYXNzIG97Y29uc3RydWN0b3IoZT17fSl7dGhpcy5fb3B0aW9ucz1lfWZvcm1hdChlLHQ9e30pe2lmKCFOdW1iZXIuaXNGaW5pdGUoZSkpcmV0dXJuIFN0cmluZyhlKTtjb25zdHtpZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ6bj10aGlzLl9vcHRpb25zLmlnbm9yZUxvY2FsZU51bWJlckZvcm1hdCxub0V4cG9uZW50aWFsRm9ybTpzPXRoaXMuX29wdGlvbnMubm9FeHBvbmVudGlhbEZvcm19PXQse21pblByZWNpc2lvbjphLHByZWNpc2lvbjpjfT10aGlzLl9vcHRpb25zLGw9KDAsaS5nZXROdW1iZXJGb3JtYXQpKG4pO3JldHVybiB2b2lkIDA9PT1jP28uX2Zvcm1hdE5vRUltcGwoZSxsLGMsYSk6KDAsci5mb3JtYXROdW1iZXIpKGUsbCxjLHMsYSl9cGFyc2UoZSx0KXtjb25zdHtpZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ6bixwcmVjaXNpb246b309dGhpcy5fb3B0aW9ucyxzPSgwLGkuZ2V0TnVtYmVyRm9ybWF0KShufHx0Py5pZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQpO2xldCBhPSgwLHIucGFyc2VOdW1iZXIpKGUscyk7cmV0dXJuIE51bWJlci5pc0Zpbml0ZShhKT8obyYmKGE9K2EudG9GaXhlZChvKSkse3JlczohMCx2YWx1ZTphfSk6e3JlczohMX19c3RhdGljIGZvcm1hdE5vRShlLHQpe3JldHVybiB0aGlzLl9mb3JtYXROb0VJbXBsKGUsdCl9c3RhdGljIF9mb3JtYXROb0VJbXBsKGUsdCxuLGkpe3JldHVybiBOdW1iZXIuaXNGaW5pdGUoZSk/KHQ9dD8/e2dyb3VwaW5nU2VwYXJhdG9yOiIiLGRlY2ltYWxTaWduOiIuIn0sKDAsci5mb3JtYXROdW1iZXIpKGUsdCxuLCEwLGkpKTpTdHJpbmcoZSl9fX0sMTI1MjE4KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse1BlcmNlbnRhZ2VGb3JtYXR0ZXI6KCk9Pm99KTt2YXIgcj1uKDExNTI5MyksaT1uKDc1NTYyNyk7Y2xhc3MgbyBleHRlbmRzIGkuUHJpY2VGb3JtYXR0ZXJ7Y29uc3RydWN0b3IoZT17fSl7dm9pZCAwIT09ZS5kZWNpbWFsUGxhY2VzJiYoZS5wcmljZVNjYWxlPU1hdGgucG93KDEwLGUuZGVjaW1hbFBsYWNlcykpLHN1cGVyKGUpLHRoaXMudHlwZT0icGVyY2VudGFnZSJ9c3RhdGUoKXtyZXR1cm57Li4uc3VwZXIuc3RhdGUoKSxwZXJjZW50OiEwfX1wYXJzZShlLHQpe3JldHVybiBlPWUucmVwbGFjZSgiJSIsIiIpLHN1cGVyLnBhcnNlKGUsdCl9Zm9ybWF0KGUsdD17fSl7Y29uc3R7dXNlUnRsRm9ybWF0Om49ITB9PXQsaT1zdXBlci5mb3JtYXQoZSx7Li4udCx1c2VSdGxGb3JtYXQ6ITF9KSsiJSI7cmV0dXJuIG4/KDAsci5mb3JjZUxUUlN0cikoaSk6aX1zdGF0aWMgc2VyaWFsaXplKGUpe3JldHVybiBlLnN0YXRlKCl9c3RhdGljIGRlc2VyaWFsaXplKGUpe3JldHVybiBuZXcgbyhlKX19fSw5ODQzNzYoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7UExBQ0VfSE9MREVSOigpPT5zLFZvbHVtZUZvcm1hdHRlcjooKT0+bH0pO3ZhciByPW4oNzgzMjU0KSxpPW4oNjAxODQxKSxvPW4oMTA3MDQ1KTtjb25zdCBzPSItLS0iLGE9W3t2YWx1ZTozLGxldHRlcjoiSyJ9LHt2YWx1ZTo2LGxldHRlcjoiTSJ9LHt2YWx1ZTo5LGxldHRlcjoiQiJ9LHsKdmFsdWU6MTIsbGV0dGVyOiJUIn1dO2Z1bmN0aW9uIGMoZSx0KXtjb25zdCBuPWUtdDtyZXR1cm4gYS5maW5kKChlPT5lLnZhbHVlPj1uKSk/P2FbYS5sZW5ndGgtMV19Y2xhc3MgbHtjb25zdHJ1Y3RvcihlPXt9KXt0aGlzLnR5cGU9InZvbHVtZSI7Y29uc3R7cHJlY2lzaW9uOnQ9MCxtaW5QcmVjaXNpb246bj0wLGRpbWVuc2lvblByZWNpc2lvbjpyPTIsZGltZW5zaW9uTWluUHJlY2lzaW9uOmk9MCxzaWduaWZpY2FudERpZ2l0czpzPTMsaWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0OmEsbm9FeHBvbmVudGlhbEZvcm06YyxyZW1vdmVTcGFjZUJlZm9yZURpbWVuc2lvbjpsfT1lO3RoaXMuX3ByZWNpc2lvbj10LHRoaXMuX2Zvcm1hdHRlcj1uZXcgby5OdW1lcmljRm9ybWF0dGVyKHtpZ25vcmVMb2NhbGVOdW1iZXJGb3JtYXQ6YSxwcmVjaXNpb246dGhpcy5fcHJlY2lzaW9uLG1pblByZWNpc2lvbjpuLG5vRXhwb25lbnRpYWxGb3JtOmN9KSx0aGlzLl9kaW1lbnNpb25QcmVjaXNpb249cix0aGlzLl9kaW1lbnNpb25Gb3JtYXR0ZXI9bmV3IG8uTnVtZXJpY0Zvcm1hdHRlcih7aWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0OmEscHJlY2lzaW9uOnRoaXMuX2RpbWVuc2lvblByZWNpc2lvbixtaW5QcmVjaXNpb246aSxub0V4cG9uZW50aWFsRm9ybTpjfSksdGhpcy5fc2lnbmlmaWNhbnREaWdpdHM9cyx0aGlzLl9mcmFjdGlvbmFsVmFsdWVzPXZvaWQgMCE9PXQmJnQ+MCx0aGlzLl9zcGFjZUJlZm9yZURpbWVuc2lvbj1sPyIiOiLigK8iLHRoaXMuX29wdGlvbnM9ZX1zdGF0ZSgpe2NvbnN0e2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdDplLC4uLnR9PXRoaXMuX29wdGlvbnM7cmV0dXJuIHR9Zm9ybWF0KGUsdCl7aWYoISgwLGkuaXNOdW1iZXIpKGUpKXJldHVybiBzO2lmKE1hdGguYWJzKGUpPj0xZTEwMClyZXR1cm4gci50KG51bGwse2NvbnRleHQ6InZvbHVtZS1mb3JtYXR0ZXIifSxuKDU3MDYyKSk7bGV0IG89IiI7TWF0aC5hYnMoZSk8MSYmKGU9K2UudG9GaXhlZCh0aGlzLl9wcmVjaXNpb24pKSxlPDA/bz0i4oiSIjplPjAmJnQ/LnNpZ25Qb3NpdGl2ZSYmKG89IisiKSxlPU1hdGguYWJzKGUpO2NvbnN0IGE9ISEodD8uaWdub3JlTG9jYWxlTnVtYmVyRm9ybWF0Pz90aGlzLl9vcHRpb25zLmlnbm9yZUxvY2FsZU51bWJlckZvcm1hdCk7bGV0IGwsdSxkPU1hdGguZmxvb3IoTWF0aC5sb2cxMChlKSkrMTtpZihkPD10aGlzLl9zaWduaWZpY2FudERpZ2l0cyYmKGU9K2UudG9GaXhlZCh0aGlzLl9wcmVjaXNpb24pLGQ9TWF0aC5mbG9vcihNYXRoLmxvZzEwKGUpKSsxKSxkPD10aGlzLl9zaWduaWZpY2FudERpZ2l0cylsPXRoaXMuX2Zvcm1hdE51bWJlcihlLGEsdGhpcy5fZm9ybWF0dGVyKTtlbHNle2xldCB0PWMoZCx0aGlzLl9zaWduaWZpY2FudERpZ2l0cyk7Y29uc3Qgbj1NYXRoLnBvdygxMCx0LnZhbHVlKTtlPSsoZS9uKS50b0ZpeGVkKHRoaXMuX2RpbWVuc2lvblByZWNpc2lvbikqbix0PWMoTWF0aC5mbG9vcihNYXRoLmxvZzEwKGUpKSsxLHRoaXMuX3NpZ25pZmljYW50RGlnaXRzKSxsPXRoaXMuX2Zvcm1hdE51bWJlcihlL01hdGgucG93KDEwLHQudmFsdWUpLGEsdGhpcy5fZGltZW5zaW9uRm9ybWF0dGVyKSx1PXQubGV0dGVyfXJldHVybiB1P2Ake299JHtsfSR7dGhpcy5fc3BhY2VCZWZvcmVEaW1lbnNpb259JHt1fWA6YCR7b30ke2x9YH1wYXJzZShlLHQpe2lmKGU9PT1zKXJldHVybntlcnJvcjoibm90IGEgbnVtYmVyIixyZXM6ITEsdmFsdWU6TmFOfTtjb25zdCBuPXtLOjFlMyxNOjFlNixCOjFlOSxUOjFlMTJ9LHI9KGU9ZS5yZXBsYWNlKCLiiJIiLCItIikpLnNsaWNlKC0xKTtpZihuLmhhc093blByb3BlcnR5KHIpKXtjb25zdCBvPXRoaXMuX2Zvcm1hdHRlci5wYXJzZShlLnNsaWNlKDAsLTEpLnRyaW0oKSx0KSxzPW8ucmVzP28udmFsdWU6TmFOO3JldHVybigwLGkuaXNOdW1iZXIpKHMpP3tyZXM6ITAsdmFsdWU6cypuW3JdfTp7ZXJyb3I6Im5vdCBhIG51bWJlciIscmVzOiExLHZhbHVlOk5hTn19e2NvbnN0IG49dGhpcy5fZm9ybWF0dGVyLnBhcnNlKGUudHJpbSgpLHQpO2xldCByPW4ucmVzP24udmFsdWU6TmFOO3JldHVybi0wPT09ciYmKHI9MCksKDAsaS5pc051bWJlcikocik/e3JlczohMCx2YWx1ZTpyfTp7ZXJyb3I6Im5vdCBhIG51bWJlciIscmVzOiExLHZhbHVlOk5hTn19fXN0YXRpYyBzZXJpYWxpemUoZSl7cmV0dXJuIGUuc3RhdGUoKX1zdGF0aWMgZGVzZXJpYWxpemUoZSl7cmV0dXJuIG5ldyBsKGUpfV9mb3JtYXROdW1iZXIoZSx0LG4pe2lmKHRoaXMuX2ZyYWN0aW9uYWxWYWx1ZXMmJjAhPT1lKXtjb25zdCB0PTE0LU1hdGguY2VpbChNYXRoLmxvZzEwKGUpKSxuPU1hdGgucG93KDEwLHQpO2U9TWF0aC5yb3VuZChlKm4pL259cmV0dXJuIG4uZm9ybWF0KGUse2lnbm9yZUxvY2FsZU51bWJlckZvcm1hdDp0fSl9fX0sOTAxMDIyKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse1NFUEFSQVRPUl9QUkVGSVg6KCk9PnIsaXNTZXBhcmF0b3JJdGVtOigpPT5pfSk7Y29uc3Qgcj0iIyMjIjtmdW5jdGlvbiBpKGUpe3JldHVybiBlLnN0YXJ0c1dpdGgocil9fSw2NDE1OTMoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7Y2FwaXRhbGl6ZUZpcnN0TGV0dGVySW5Xb3JkOigpPT5kLGRlY29kZUhUTUxFbnRpdGllczooKT0+YyxnZXRGaXJzdFNlZ21lbnRPckNvZGVQb2ludFN0cmluZzooKT0+cCxodG1sRXNjYXBlOigpPT5sLHJlbW92ZVRhZ3M6KCk9PnV9KTtjb25zdCByPS9bPCInJj5dL2csaT1lPT5gJiMke2UuY2hhckNvZGVBdCgwKX07YCxvPXsiJmx0OyI6IjwiLCImZ3Q7IjoiPiIsIiZxdW90OyI6JyInLCImYXBvczsiOiInIiwiJmFtcDsiOiImIiwiJiM2MDsiOiI8IiwiJiM2MjsiOiI+IiwiJiMzNDsiOiciJywiJiMzOTsiOiInIiwiJiMwMzk7IjoiJyIsIiYjMzg7IjoiJiJ9LHM9T2JqZWN0LmFzc2lnbih7fSwuLi5PYmplY3QuZW50cmllcyhvKS5tYXAoKChbZSx0XSk9Pih7W3RdOmV9KSkpKSxhPW5ldyBSZWdFeHAoT2JqZWN0LmtleXMobykuam9pbigifCIpLCJnIik7bmV3IFJlZ0V4cChPYmplY3Qua2V5cyhzKS5qb2luKCJ8IiksImciKTtmdW5jdGlvbiBjKGUpewpyZXR1cm4gZS5yZXBsYWNlKGEsKGU9Pm9bZV18fGUpKX1mdW5jdGlvbiBsKGUpe3JldHVybiBlLnJlcGxhY2UocixpKX1mdW5jdGlvbiB1KGU9IiIpe3JldHVybiBlLnJlcGxhY2UoLyg8KFtePl0rKT4pL2dpLCIiKX1mdW5jdGlvbiBkKGU9IiIpe3JldHVybiBlLnJlcGxhY2UoL1xiXHcvZywoZT0+ZS50b1VwcGVyQ2FzZSgpKSl9ZnVuY3Rpb24gcChlKXtjb25zdCB0PUludGwuU2VnbWVudGVyO2lmKHQpe2NvbnN0IG49bmV3IHQodm9pZCAwLHtncmFudWxhcml0eToiZ3JhcGhlbWUifSksW3tzZWdtZW50OnJ9PXtzZWdtZW50Om51bGx9XT1uLnNlZ21lbnQoZSk7cmV0dXJuIHI/LnRvVXBwZXJDYXNlKCk/P251bGx9e2NvbnN0IHQ9ZS5jb2RlUG9pbnRBdCgwKTtyZXR1cm4gdD9TdHJpbmcuZnJvbUNvZGVQb2ludCh0KS50b1VwcGVyQ2FzZSgpOm51bGx9fX0sMTM2OTkxKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse0NvcHlyaWdodFBvc2l0aW9uOigpPT5yLGNvcHlyaWdodExhYmVsOigpPT51fSk7dmFyIHIsaT1uKDE4NTI3MSksbz1uKDkxNDQ4Nykscz1uLm4obyksYT1uKDYwMTg0MSksYz1uKDM4NzIzMSksbD1uKDM5OTA5Mik7ZnVuY3Rpb24gdSh7c3ZnVGV4dDplLGljb246dCx0aGVtZTpvLHVybDp1LG1vZGU6ZCx2ZXJ0aWNhbFBvc2l0aW9uOnA9ci5WZXJ0aWNhbC5Cb3R0b20saG9yaXpvbnRhbFBvc2l0aW9uOmc9ci5Ib3Jpem9udGFsLkVuZCxzbmFwVG9FZGdlOmY9ITAsaXNFeHBhbmRlZDptPSExLGNsYXNzTmFtZTpofSl7bGV0IHk7c3dpdGNoKGQpe2Nhc2UibmV3IjpjYXNlIndpdGhfYm9yZGVyIjpjYXNlImxhcmdlX3RyYWRlIjp5PSgwLGEuY2xvbmUpKG8pO2JyZWFrO2RlZmF1bHQ6eT0oMCxjLm1lcmdlVGhlbWVzKSgoMCxhLmNsb25lKShsKSxvKX1jb25zdCB2PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTtsZXQgdzt1JiYodz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhIiksdy5jbGFzc0xpc3QuYWRkKC4uLnkubGFiZWxfX2xpbmsuc3BsaXQoL1xzLykpLHcuaHJlZj11LHcudGFyZ2V0PSJfYmxhbmsiLHcucmVsPSJub29wZW5lciBub3JlZmVycmVyIix3LnNldEF0dHJpYnV0ZSgiZGF0YS10YXJnZXQtdHlwZSIsImNvcHlyaWdodCIpLHcuYXJpYUxhYmVsPWkudChudWxsLHZvaWQgMCxuKDUxNzg1OSkpLHYuYXBwZW5kKHcpKSx2LmNsYXNzTmFtZT1zKCkoeS5sYWJlbCxnPT09ci5Ib3Jpem9udGFsLlN0YXJ0JiZ5LnN0YXJ0LGc9PT1yLkhvcml6b250YWwuRW5kJiZ5LmVuZCxwPT09ci5WZXJ0aWNhbC5Ub3AmJnkudG9wLHA9PT1yLlZlcnRpY2FsLkJvdHRvbSYmeS5ib3R0b20sZiYmImxhcmdlX3RyYWRlIiE9PWQmJnkuc25hcCwibGFyZ2Vfb2xkIj09PWQmJnkubGFyZ2UsKG18fCJsYXJnZV90cmFkZSI9PT1kKSYmeS5leHBhbmRlZCxoLCJqcy1jb3B5cmlnaHQtbGFiZWwiKSx2LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwoKCk9PntmdW5jdGlvbiBlKCl7di5jbGFzc0xpc3QucmVtb3ZlKHkuZXhwYW5kZWRCeUNsaWNrKSx2LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLGUpfXYuY2xhc3NMaXN0LmNvbnRhaW5zKHkuZXhwYW5kZWRXaXRoVHJhbnNpdGlvbil8fHYuY2xhc3NMaXN0LmNvbnRhaW5zKHkuZXhwYW5kZWQpfHwodi5jbGFzc0xpc3QuY29udGFpbnMoeS5leHBhbmRlZEJ5Q2xpY2spP3V8fGUoKToodi5jbGFzc0xpc3QuYWRkKHkuZXhwYW5kZWRCeUNsaWNrKSx2LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLGUpKSl9KSk7Y29uc3QgYj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7Yi5jbGFzc05hbWU9eS5sb2dvV3JhcCxiLmlubmVySFRNTD10O2NvbnN0IF89ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO3JldHVybiBfLmNsYXNzTmFtZT15LnN2Z1RleHRXcmFwLF8uaW5uZXJIVE1MPWUsdi5hcHBlbmQoYixfKSxbdix5XX0hZnVuY3Rpb24oZSl7bGV0IHQsbjshZnVuY3Rpb24oZSl7ZVtlLkJvdHRvbT0wXT0iQm90dG9tIixlW2UuVG9wPTFdPSJUb3AifSh0PWUuVmVydGljYWx8fChlLlZlcnRpY2FsPXt9KSksZnVuY3Rpb24oZSl7ZVtlLlN0YXJ0PTBdPSJTdGFydCIsZVtlLkVuZD0xXT0iRW5kIn0obj1lLkhvcml6b250YWx8fChlLkhvcml6b250YWw9e30pKX0ocnx8KHI9e30pKX0sNjUzODE3KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse0NvcHlyaWdodFBvc2l0aW9uOigpPT5vLkNvcHlyaWdodFBvc2l0aW9uLGNyZWF0ZUNvcHlyaWdodExhYmVsOigpPT5hfSk7dmFyIHI9big5MTQ0ODcpLGk9bi5uKHIpLG89bigxMzY5OTEpLHM9big1Mjg4NjQpO2Z1bmN0aW9uIGEoe3NoZXJpZmZPcHRpb25zOmUsLi4udH0pe2NvbnN0W24scl09KDAsby5jb3B5cmlnaHRMYWJlbCkodCksYT1lJiZlLmluY2x1ZGVzKHMuS25vd25BY3Rpb24uRXhwYW5kKSxjPWUmJmUuaW5jbHVkZXMocy5Lbm93bkFjdGlvbi5MYXJnZVRyYWRlTG9nbyk7cmV0dXJuIG4uY2xhc3NOYW1lPWkoKShuLmNsYXNzTmFtZSwoYXx8YykmJnIuZXhwYW5kZWRXaXRoVHJhbnNpdGlvbiksbn19LDc0MjU3NyhlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIHIoZSx0KXtyZXR1cm4gZSYmZS51dG1fY2FtcGFpZ24mJihlLnV0bV9jYW1wYWlnbis9YC0ke3R9YCksZX1hc3luYyBmdW5jdGlvbiBpKGUsdCxyLGkpe2lmKCJsZW50YXJ1Ij09PWUpe2NvbnN0e2dldExlbnRhQ29weXJpZ2h0RGF0YTplfT1hd2FpdCBQcm9taXNlLmFsbChbbi5lKDQ0MjUzKSxuLmUoODUwMzgpXSkudGhlbihuLmJpbmQobiwyODQwNDEpKTtyZXR1cm4gZSgpfWlmKCJjbW9uZXljb210dyI9PT1lKXtjb25zdHtnZXRDbW9uZXljb210d0NvcHlyaWdodERhdGE6ZX09YXdhaXQgUHJvbWlzZS5hbGwoW24uZSg1OTk0MSksbi5lKDY0NDUpLG4uZSg3MTM5NCldKS50aGVuKG4uYmluZChuLDc3Nzc2OSkpO3JldHVybiBlKHQscil9aWYoIm5ldyI9PT1pKXtjb25zdHtnZXRUcmFkaW5nVmlld0NvcHlyaWdodERhdGE6ZX09YXdhaXQgUHJvbWlzZS5hbGwoW24uZSg5Nzc5Nyksbi5lKDc2MDQwKV0pLnRoZW4obi5iaW5kKG4sOTgxMTU3KSk7cmV0dXJuIGUodCxyKX1pZigid2l0aF9ib3JkZXIiPT09aSl7CmNvbnN0e2dldFRyYWRpbmdWaWV3Q29weXJpZ2h0RGF0YTplfT1hd2FpdCBQcm9taXNlLmFsbChbbi5lKDUzNTIxKSxuLmUoMTY4MTMpXSkudGhlbihuLmJpbmQobiw4NTI2NjkpKTtyZXR1cm4gZSh0LHIpfWlmKCJsYXJnZV90cmFkZSI9PT1pKXtjb25zdHtnZXRUcmFkaW5nVmlld0NvcHlyaWdodERhdGE6ZX09YXdhaXQgUHJvbWlzZS5hbGwoW24uZSg3NDAxMSksbi5lKDc5MDQxKV0pLnRoZW4obi5iaW5kKG4sNDkzNTU5KSk7cmV0dXJuIGUodCxyKX17Y29uc3R7Z2V0VHJhZGluZ1ZpZXdDb3B5cmlnaHREYXRhOmV9PWF3YWl0IFByb21pc2UuYWxsKFtuLmUoNTk5NDEpLG4uZSg5NzUwOSldKS50aGVuKG4uYmluZChuLDcwNTc5MCkpO3JldHVybiBlKHQscil9fW4uZCh0LHthZGRVdG1DYW1wYWlnblNvdXJjZTooKT0+cixnZXRDdXN0b21lckNvcHlyaWdodERhdGE6KCk9Pml9KX0sNzQ4MDAyKGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse2dldFdpZGdldFNoZXJpZmZBY3Rpb25zOigpPT5sfSk7dmFyIHI9bigyMjEwNjEpLGk9bigzODQwMTcpLG89big1Mjg4NjQpO2NvbnN0IHM9d2luZG93LldJREdFVF9TSEVSSUZGX0hPU1R8fCJodHRwczovL3dpZGdldC1zaGVyaWZmLnhzdGFnaW5nLXdpZGdldC50diIsYT0oMCxyLmdldExvZ2dlcikoIldpZGdldFNoZXJpZmYuV2lkZ2V0Iik7bGV0IGM9bnVsbDthc3luYyBmdW5jdGlvbiBsKCl7cmV0dXJuIG51bGw9PT1jJiYoYz1hd2FpdCBhc3luYyBmdW5jdGlvbigpe2NvbnN0IGU9ZnVuY3Rpb24oKXtpZihkb2N1bWVudC5sb2NhdGlvbi5hbmNlc3Rvck9yaWdpbnMmJmRvY3VtZW50LmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucy5sZW5ndGgpcmV0dXJuIGRvY3VtZW50LmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2luc1tkb2N1bWVudC5sb2NhdGlvbi5hbmNlc3Rvck9yaWdpbnMubGVuZ3RoLTFdO3RyeXtyZXR1cm4gbmV3IFVSTChkb2N1bWVudC5yZWZlcnJlcikub3JpZ2lufWNhdGNoKGUpe3JldHVybiBkb2N1bWVudC5sb2NhdGlvbi5vcmlnaW58fG51bGx9fSgpO2lmKG51bGw9PT1lKXJldHVybiBhLmxvZ1dhcm4oImFuY2VzdG9yT3JpZ2luIGlzIHVuZGVmaW5lZCIpLFByb21pc2UucmVzb2x2ZShbXSk7Y29uc3QgdD1uZXcgVVJMKCIvc2hlcmlmZi9hcGkvdjEvcnVsZXMvc2VhcmNoIixzKTt0LnNlYXJjaFBhcmFtcy5hcHBlbmQoIm9yaWdpbiIsZSk7cmV0dXJuKGF3YWl0KDAsaS5mZXRjaCkodC50b0pTT04oKSkudGhlbigoZT0+e2lmKCFlLm9rKXRocm93IG5ldyBFcnJvcigiR3VhcmQgcmVxdWVzdCBlcnJvciBvY2N1cmVkIik7cmV0dXJuIDIwND09PWUuc3RhdHVzP1Byb21pc2UucmVzb2x2ZSh7YWN0aW9uczpbXX0pOmUuanNvbigpfSkpLmNhdGNoKChlPT4oYS5sb2dXYXJuKGUubWVzc2FnZSksUHJvbWlzZS5yZXNvbHZlKHthY3Rpb25zOltdfSkpKSkpLmFjdGlvbnMuZmlsdGVyKChlPT5vLndpZGdldFNoZXJpZmZBY3Rpb25zLmhhcyhlKSkpfSgpKSxQcm9taXNlLnJlc29sdmUoYyl9fSw1Mjg4NjQoZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcjtuLmQodCx7S25vd25BY3Rpb246KCk9PnIsd2lkZ2V0U2hlcmlmZkFjdGlvbnM6KCk9Pml9KSxmdW5jdGlvbihlKXtlLkV4cGFuZD0iZXhwYW5kLWxvZ28iLGUuTGFyZ2VUcmFkZUxvZ289ImxhcmdlLXRyYWRlLWxvZ28ifShyfHwocj17fSkpO2NvbnN0IGk9bmV3IFNldChbci5FeHBhbmQsci5MYXJnZVRyYWRlTG9nb10pfSw0NzkzNChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtlbmFibGVkOigpPT5jLGdldENvbmZpZzooKT0+dSxnZXRQcm9kdWN0SWQ6KCk9PmF9KTt2YXIgcj1uKDUwMjU4NyksaT1uKDEyNzcxMSksbz1uKDMxODk3NCkscz1uKDIxMjIyOSk7ZnVuY3Rpb24gYShlKXtsZXQgdD13aW5kb3cudXNlcjsidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdyYmd2luZG93LnVzZXImJih0PXdpbmRvdy51c2VyKSxlJiYodD1lKTtsZXQgbj10Py5wcm9fcGxhbnx8ImZyZWUiO3JldHVybiJmcmVlIiE9PW4mJiEoMCxzLmlzVHJpYWxQcm9kdWN0KShuKXx8KG49KDAscy5nZXRQcm9kdWN0Rm9yVHJpYWwpKG4pKSxufWZ1bmN0aW9uIGMoZSx0LG4pe2xldCByPXdpbmRvdy51c2VyO24mJihyPW4pO2NvbnN0IGk9dShlLHQscik7aWYoIWkpcmV0dXJuITE7aWYoaS5kaXNhYmxlX29uX3RyaWFsJiYoIXJ8fHIuaXNfdHJpYWwpKXJldHVybiExO2NvbnN0IHM9aS5kaXNhYmxlX29uX2xpdGVfcGxhbjtpZihzJiZyLmlzX2xpdGVfcGxhbil7aWYoImFsbCI9PT1zKXJldHVybiExO2lmKCJleGNsdWRlX21vYmlsZSI9PT1zJiYhby5DaGVja01vYmlsZS5hbnkoKSlyZXR1cm4hMX1yZXR1cm4hMH1mdW5jdGlvbiBsKGUpe2NvbnN0IHQ9cltlXTtyZXR1cm4gdD90LmV4dGVuZHM/T2JqZWN0LmFzc2lnbih7fSxsKHQuZXh0ZW5kcyksdCk6dDpudWxsfWZ1bmN0aW9uIHUoZSx0LG4pe2xldCByPWwodHx8KGEobik/PyIiKSk7aWYoIXIpcmV0dXJuIG51bGw7Y29uc3Qgbz13aW5kb3cuVHJhZGluZ1ZpZXc/LndpZGdldEN1c3RvbWVyO3JldHVybiBvJiZpW29dJiYocj1PYmplY3QuYXNzaWduKHt9LHIsaVtvXSkpLHImJnJbZV18fG51bGx9fSw0Mjk2NihlLHQsbil7InVzZSBzdHJpY3QiO24ucih0KTt2YXIgcj1uKDg1NjMyNCksaT1uKDk2MzA5OCk7KDAsci5yZWdpc3Rlckxhbmd1YWdlR2V0dGVyKSgoKCk9PndpbmRvdy5sYW5ndWFnZXx8IiIpKSwoMCxyLnJlZ2lzdGVyTGFuZ3VhZ2VDb2RlTWFwcGVyKShpLmdldElzb0xhbmd1YWdlQ29kZUZyb21MYW5ndWFnZSl9LDYzMTYzNChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtnZXRGcmVzaEluaXREYXRhOigpPT5zLGdldEluaXREYXRhOigpPT5vLHVwZGF0ZUluaXREYXRhOigpPT5pfSk7dmFyIHI9big3OTI2MTIpO2Z1bmN0aW9uIGkoKXsoMCxyLnVwZGF0ZUluaXREYXRhKSgpfWZ1bmN0aW9uIG8oKXtyZXR1cm4oMCxyLmdldEluaXREYXRhKSgpfWZ1bmN0aW9uIHMoKXtyZXR1cm4oMCxyLmdldEZyZXNoSW5pdERhdGEpKCl9fSw4NjIyMTMoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7TG9nb1NpemU6KCk9PnIuTG9nb1NpemUsZ2V0TG9nb1VybFJlc29sdmVyOigpPT51fSkKO3ZhciByPW4oNjIwMzU0KSxpPW4oMTM4NjM4KSxvPW4oNjMxNjM0KSxzPW4oODEwNDEpO2NvbnN0IGE9KDAsbigyMjEwNjEpLmdldExvZ2dlcikoIkxvZ29VcmxSZXNvbHZlciIpO2NsYXNzIGN7Y29uc3RydWN0b3IoZSl7KDAsaS5hc3NlcnQpKCIiIT09ZSwiUzMgYmFzZSB1cmwgbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmciKSx0aGlzLl9iYXNlVXJsPWV9Z2V0U3ltYm9sTG9nb1VybChlLHQpe2lmKCIiPT09ZSlyZXR1cm4gYS5sb2dXYXJuKCJsb2dvIGlkIG11c3QgYmUgYSBub24tZW1wdHkgc3RyaW5nIiksIiI7c3dpdGNoKHQpe2Nhc2Ugci5Mb2dvU2l6ZS5NZWRpdW06cmV0dXJuIHRoaXMuX2Jhc2VVcmwrYCR7ZX0uc3ZnYDtjYXNlIHIuTG9nb1NpemUuTGFyZ2U6cmV0dXJuIHRoaXMuX2Jhc2VVcmwrYCR7ZX0tLWJpZy5zdmdgfX1nZXRDb3VudHJ5RmxhZ1VybChlLHQpe3JldHVybiB0aGlzLmdldFN5bWJvbExvZ29VcmwoImNvdW50cnkvIitlLHQpfWdldFByb3ZpZGVyTG9nb1VybChlLHQpe3JldHVybiB0aGlzLmdldFN5bWJvbExvZ29VcmwoInByb3ZpZGVyLyIrZSx0KX1nZXRTb3VyY2VMb2dvVXJsKGUsdCl7cmV0dXJuIHRoaXMuZ2V0U3ltYm9sTG9nb1VybCgic291cmNlLyIrZSx0KX1nZXRCbG9ja2NoYWluQ29udHJhY3RMb2dvVXJsKGUsdCl7cmV0dXJuIHRoaXMuZ2V0U3ltYm9sTG9nb1VybCgiYmxvY2tjaGFpbi8iK2UsdCl9Z2V0Q2FuZGxlc3RpY2tQYXR0ZXJuTG9nb1VybChlLHQ9cy5TdGRUaGVtZS5MaWdodCl7cmV0dXJuIHRoaXMuZ2V0U3ltYm9sTG9nb1VybChgY2FuZGxlcGF0dGVybi8ke2V9LSR7dH1gLHIuTG9nb1NpemUuTWVkaXVtKX19bGV0IGw7ZnVuY3Rpb24gdSgpe3JldHVybiBmdW5jdGlvbigpe2lmKCFsKXtjb25zdCBlPSgwLG8uZ2V0SW5pdERhdGEpKCksdD1lLnNldHRpbmdzP2Uuc2V0dGluZ3MuUzNfTE9HT19TRVJWSUNFX0JBU0VfVVJMOiIiO2w9bmV3IGModCl9cmV0dXJuIGx9KCl9fSw0MDAxODEoZSx0LG4peyJ1c2Ugc3RyaWN0Ijthc3luYyBmdW5jdGlvbiByKCl7Y29uc3R7Z2V0VHJhY2tlckluc3RhbmNlOmV9PWF3YWl0IFByb21pc2UuYWxsKFtuLmUoNzA2NDQpLG4uZSg5NTIwNyldKS50aGVuKG4uYmluZChuLDQ3NzE1MCkpO3JldHVybiBlKCl9bi5kKHQse2dldFRyYWNrZXI6KCk9PnJ9KX0sMTU2ODI5KGUsdCxuKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gcihlKXtyZXR1cm4gdm9pZCAwIT09ZSYmZS5pbmNsdWRlcygiY3J5cHRvIil9ZnVuY3Rpb24gaShlKXtyZXR1cm4iYm9uZCI9PT1lfWZ1bmN0aW9uIG8oZSl7cmV0dXJuImVjb25vbWljIj09PWV9ZnVuY3Rpb24gcyhlKXtyZXR1cm4iZnV0dXJlcyI9PT1lfW4uZCh0LHtoYXNDcnlwdG9UeXBlc3BlYzooKT0+cixpc0JvbmQ6KCk9PmksaXNFY29ub21pY1N5bWJvbDooKT0+byxpc0Z1dHVyZXM6KCk9PnN9KX0sODUxNDU4KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse3Rva2VuaXplOigpPT5jfSk7dmFyIHIsaT1uKDkwMTAyMiksbz1uKDU2OTM5OCk7IWZ1bmN0aW9uKGUpe2UuU3ltYm9sPSJzeW1ib2wiLGUuSW5jb21wbGV0ZVN5bWJvbD0iaW5jb21wbGV0ZVN5bWJvbCIsZS5OdW1iZXI9Im51bWJlciIsZS5JbmNvbXBsZXRlTnVtYmVyPSJpbmNvbXBsZXRlTnVtYmVyIixlLlNlcGFyYXRvclByZWZpeD0ic2VwYXJhdG9yUHJlZml4IixlLk9wZW5CcmFjZT0ib3BlbkJyYWNlIixlLkNsb3NlQnJhY2U9ImNsb3NlQnJhY2UiLGUuUGx1cz0icGx1cyIsZS5NaW51cz0ibWludXMiLGUuTXVsdGlwbHk9Im11bHRpcGx5IixlLkRpdmlkZT0iZGl2aWRlIixlLlBvd2VyPSJwb3dlciIsZS5XaGl0ZXNwYWNlPSJ3aGl0ZXNwYWNlIixlLlVucGFyc2VkPSJ1bnBhcnNlZCJ9KHJ8fChyPXt9KSk7Y29uc3Qgcz0vKD86W14tK1wvKl5cc10nfFthLXpBLVowLTlfXHUwMzcwLVx1MUZGRl9cdTJFODAtXHVGRkZGXSkoPzpbXi0rXC8qXlxzXSd8W2EtekEtWjAtOV9cdTAwMjBcdTAzNzAtXHUxRkZGX1x1MkU4MC1cdUZGRkZfIXw6LiZdKSp8Jy4rPycvLGE9KGU9KDAsby5pc0ZlYXR1cmVFbmFibGVkKSgiYWxsb3dfdHJhaWxpbmdfd2hpdGVzcGFjZV9pbl9udW1iZXJfdG9rZW4iKSk9Pih7bnVtYmVyOmU/L1xkKyg/OlwuXGQqfCg/IVthLXpBLVowLTlfITouJl0pKSg/OlxzKig/PVxzKiQpKT98XC5cZCsoPzpccyooPz1ccyokKSk/LzovXGQrKD86XC5cZCp8KD8hW2EtekEtWjAtOV8hOi4mXSkpfFwuXGQrLyxpbmNvbXBsZXRlTnVtYmVyOi9cLi8sc3ltYm9sOnMsaW5jb21wbGV0ZVN5bWJvbDovJ1teJ10qLyxzZXBhcmF0b3JQcmVmaXg6aS5TRVBBUkFUT1JfUFJFRklYLG9wZW5CcmFjZToiKCIsY2xvc2VCcmFjZToiKSIscGx1czoiKyIsbWludXM6Ii0iLG11bHRpcGx5OiIqIixkaXZpZGU6Ii8iLHBvd2VyOiJeIix3aGl0ZXNwYWNlOi9bXDAtXHgyMFxzXSsvLHVucGFyc2VkOm51bGx9KTtmdW5jdGlvbiBjKGUsdD1hKCkpe2lmKCFlKXJldHVybltdO2NvbnN0IG49W10scj1PYmplY3Qua2V5cyh0KTtsZXQgaTtjb25zdCBvPSgoZT1hKCkpPT5uZXcgUmVnRXhwKE9iamVjdC52YWx1ZXMoZSkubWFwKChlPT57cmV0dXJuIG51bGw9PT1lPyIiOmAoJHsic3RyaW5nIj09dHlwZW9mIGU/KHQ9ZSx0LnJlcGxhY2UoL1tcXiQoKVtcXXt9Kis/fFxcXS9nLCJcXCQmIikpOmUuc291cmNlfSlgO3ZhciB0fSkpLmZpbHRlcigoZT0+IiIhPT1lKSkuY29uY2F0KCIuIikuam9pbigifCIpLCJnIikpKHQpO2Zvcig7aT1vLmV4ZWMoZSk7KXtsZXQgZT0hMTtmb3IobGV0IHQ9ci5sZW5ndGg7dC0tOylpZihpW3QrMV0pe3JbdF0mJm4ucHVzaCh7dmFsdWU6aVt0KzFdLHR5cGU6clt0XSxwcmVjZWRlbmNlOjAsb2Zmc2V0OmkuaW5kZXh9KSxlPSEwO2JyZWFrfWV8fG4ucHVzaCh7dmFsdWU6aVswXSx0eXBlOiJ1bnBhcnNlZCIscHJlY2VkZW5jZTowLG9mZnNldDppLmluZGV4fSl9cmV0dXJuIG59fSw3OTUzODMoZSx0LG4pe24oMzYzMjY5KS5zZXRDbGFzc2VzKCksbig0Mjk2Niksbig2MTAyNjgpO3ZhciByPW4oNzQ5NjQ4KS53aGVuRG9jdW1lbnRSZWFkeSxpPW4oOTMxMTk4KS5oYW5kbGVUVkxpbmtzQ2xpY2s7cigoKCk9PntpKCl9KSl9LAo3OTgzOChlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtTVFlMRV9TSE9SVF9OQU1FUzooKT0+cyxTWU1CT0xfU1RSSU5HX0RBVEE6KCk9PmwsaXNDaGFydFN0eWxlU3R1ZHlJbmZvQ29tcGxleDooKT0+YX0pO24oNTgwMzcpO3ZhciByPW4oNzI4NDM2KSxpPW4oNzc3NjYxKSxvPW4oNTUwMzkzKTtuZXcgU2V0KFszLDYsNyw4LDksMTFdKSxuZXcgU2V0KFsxLDJdKTtjb25zdCBzPXswOiJiYXIiLDE6ImNhbmRsZSIsOToiaG9sbG93Q2FuZGxlIiwyOiJsaW5lIiwxNDoibGluZVdpdGhNYXJrZXJzIiwxNToic3RlcGxpbmUiLDM6ImFyZWEiLDE2OiJobGNBcmVhIiw0OiJyZW5rbyIsNzoicGIiLDU6ImthZ2kiLDY6InBuZiIsODoiaGEiLDEwOiJiYXNlbGluZSIsMTE6InJhbmdlIiwxMjoiaGlsbyIsMTM6ImNvbHVtbiIsMTc6InZvbEZvb3RwcmludCIsMTg6InRwbyIsMTk6InZvbENhbmRsZXMiLDIwOiJzdnAiLDIxOiJobGNCYXJzIn07ZnVuY3Rpb24gYShlKXtyZXR1cm4idmFyaWFudHMiaW4gZX1jb25zdCBjPVt7dHlwZTppLnN0dWR5VHBvUHJlcmlvZGljSWQsYmFzaWNTdHVkeVZlcnNpb246MTA0fSx7dHlwZTppLnN0dWR5VHBvU2Vzc2lvbnNJZCxiYXNpY1N0dWR5VmVyc2lvbjoxMDR9XSxsPXs0Ont0eXBlOiJCYXJTZXRSZW5rb0B0di1wcm9zdHVkaWVzIixiYXNpY1N0dWR5VmVyc2lvbjo3M30sNzp7dHlwZToiQmFyU2V0UHJpY2VCcmVha0B0di1wcm9zdHVkaWVzIixiYXNpY1N0dWR5VmVyc2lvbjozNH0sNTp7dHlwZToiQmFyU2V0S2FnaUB0di1wcm9zdHVkaWVzIixiYXNpY1N0dWR5VmVyc2lvbjo3M30sNjp7dHlwZToiQmFyU2V0UG5GQHR2LXByb3N0dWRpZXMiLGJhc2ljU3R1ZHlWZXJzaW9uOjczfSw4Ont0eXBlOiJCYXJTZXRIZWlrZW5Bc2hpQHR2LWJhc2ljc3R1ZGllcyIsYmFzaWNTdHVkeVZlcnNpb246NjB9LDExOnt0eXBlOiJCYXJTZXRSYW5nZUB0di1iYXNpY3N0dWRpZXMiLGJhc2ljU3R1ZHlWZXJzaW9uOjcyfSwxNzp7dHlwZTpyLnN0dWR5Vm9sRm9vdHByaW50SWQsYmFzaWNTdHVkeVZlcnNpb246MTA0fSwxODp7dmFyaWFudHM6YyxzZWxlY3RvcjplPT57Y29uc3QgdD1lO3JldHVybiJEYXkiPT09dC5wZXJpb2QmJjE9PT10LnBlcmlvZHNOdW0/Y1sxXTpjWzBdfX0sMjA6e3R5cGU6by5zdHVkeVZiUFNlc3Npb25zSWQsYmFzaWNTdHVkeVZlcnNpb246MTI2fX19LDYxMDI2OChlLHQsbil7InVzZSBzdHJpY3QiO24ucih0KSwoMCxuKDExNTI5Mykuc2V0RG9jdW1lbnREaXJHZXR0ZXIpKCgoKT0+d2luZG93LmRvY3VtZW50LmRpcikpfSw5NjM5MDAoZSx0LG4peyJ1c2Ugc3RyaWN0Ijt2YXIgcjshZnVuY3Rpb24oZSl7ZS5FbXB0eT0iIixlLlRlY2huaWNhbHNQYXRoPSJ0ZWNobmljYWxzLyIsZS5GaW5hbmNpYWxzT3ZlcnZpZXdQYXRoPSJmaW5hbmNpYWxzLW92ZXJ2aWV3LyIsZS5UaW1lbGluZVBhdGg9Imhpc3RvcnktdGltZWxpbmUvIixlLk5ld3NQYXRoPSJuZXdzLyIsZS5PcHRpb25zUGF0aD0ib3B0aW9ucy8iLGUuUHJvZmlsZVBhdGg9InByb2ZpbGUvIixlLkhvbGRpbmdzUGF0aD0iaG9sZGluZ3MvIn0ocnx8KHI9e30pKX0sMjEyMjI5KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse0NVU1RPTV9TVUZGSVg6KCk9PmEsRUFfU1VGRklYOigpPT5zLFRSSUFMX1NVRkZJWDooKT0+byxiaWxsaW5nQ3ljbGVUb01vbnRoOigpPT52LGJpbGxpbmdDeWNsZVRvVGltZVVuaXQ6KCk9PmMsY291bnREaXNjb3VudEJ5QmlsbGluZ0N5Y2xlOigpPT55LGdldERpc2NvdW50UHJvZHVjdElkOigpPT5nLGdldFBsYW5OYW1lOigpPT54LGdldFByb2R1Y3RGb3JUcmlhbDooKT0+cCxnZXRSZWFkYWJsZUN5Y2xlOigpPT5sLGdldFJlYWRhYmxlTnVtZXJpY0N5Y2xlOigpPT51LGdldFJlbGF0aXZlQW1vdW50T2ZEYXlzRnJvbUJpbGxpbmdDeWNsZTooKT0+aCxodW1hbml6ZUNhcmRQbGFuOigpPT5tLGh1bWFuaXplUHJvUGxhbjooKT0+Zixpc1RyaWFsUHJvZHVjdDooKT0+ZCxyb3VuZDA6KCk9PmIscm91bmQyOigpPT53LHJvdW5kMm9yMDooKT0+X30pO24oODI5MTgwKTt2YXIgcj1uKDE4NTI3MSksaT1uKDg2NDAzNCk7Y29uc3Qgbz0iX3RyaWFsIixzPSJfZGlzY291bnQiLGE9Il9jdXN0b20iO2Z1bmN0aW9uIGMoZSl7cmV0dXJue3k6ci50KG51bGwse3BsdXJhbDoieWVhcnMiLGNvdW50OjF9LG4oNDQyNjY2KSksbTpyLnQobnVsbCx7cGx1cmFsOiJtb250aHMiLGNvdW50OjF9LG4oMzIzNDg1KSksIjNtIjpyLnQobnVsbCx2b2lkIDAsbig4NjM4NTIpKX1bZV18fCIifWZ1bmN0aW9uIGwoZSl7cmV0dXJue206ci50KG51bGwsdm9pZCAwLG4oNTU2NTY4KSkseTpyLnQobnVsbCx2b2lkIDAsbig3MjExMTgpKSwiM20iOnIudChudWxsLHZvaWQgMCxuKDMyODAzMCkpfVtlXXx8IiJ9ZnVuY3Rpb24gdShlKXtyZXR1cm57W2kuQmlsbGluZ0N5Y2xlLk1vbnRobHldOnIudChudWxsLHZvaWQgMCxuKDU1NjU2OCkpLFtpLkJpbGxpbmdDeWNsZS5PbmVZZWFyXTpyLnQobnVsbCx2b2lkIDAsbigxMTE5NzYpKSxbaS5CaWxsaW5nQ3ljbGUuVGhyZWVNb250aHNdOnIudChudWxsLHZvaWQgMCxuKDMyODAzMCkpfVtlXXx8IiJ9ZnVuY3Rpb24gZChlKXtyZXR1cm4gbmV3IFJlZ0V4cChvKyIkIikudGVzdChlKX1mdW5jdGlvbiBwKGUpe3JldHVybiBlLnNwbGl0KG8pWzBdfWZ1bmN0aW9uIGcoZSx0LG4pe3JldHVybmAke2V9XyR7dH0ke259YH1mdW5jdGlvbiBmKGUsdCl7bGV0IGk9ZTtzd2l0Y2goZSl7Y2FzZSJmcmVlIjppPSJCYXNpYyI7YnJlYWs7Y2FzZSJwcm8iOmk9IkVzc2VudGlhbCI7YnJlYWs7Y2FzZSJwcm9fcmVhbHRpbWUiOmk9IlBsdXMiO2JyZWFrO2Nhc2UicHJvX3ByZW1pdW0iOmk9IlByZW1pdW0iO2JyZWFrO2Nhc2UicHJvX2V4cGVydCI6aT0iRXhwZXJ0IjticmVhaztjYXNlInByb19wcmVtaXVtX2V4cGVydCI6aT0iVWx0aW1hdGUifXJldHVybiB0JiYoaSs9IiAiK3IudChudWxsLHZvaWQgMCxuKDgzNTgpKSksaX1mdW5jdGlvbiBtKGUpe2xldCB0PWU7c3dpdGNoKGUpe2Nhc2UicHJvIjp0PSJFc3NlbnRpYWwiO2JyZWFrO2Nhc2UicHJvX3JlYWx0aW1lIjp0PSJQbHVzIjticmVhawo7Y2FzZSJwcm9fcHJlbWl1bSI6dD0iUHJlbWl1bSI7YnJlYWs7Y2FzZSJwcm9fZXhwZXJ0Ijp0PSJFeHBlcnQiO2JyZWFrO2Nhc2UicHJvX3ByZW1pdW1fZXhwZXJ0Ijp0PSJVbHRpbWF0ZSI7YnJlYWs7Y2FzZSJmcmVlIjp0PSJCYXNpYyJ9cmV0dXJuIHR9ZnVuY3Rpb24gaChlLHQpe2NvbnN0IG49dHx8bmV3IERhdGUscj12KGUpLGk9bi5nZXRNb250aCgpK3Isbz1uZXcgRGF0ZShuZXcgRGF0ZShuKS5zZXRNb250aChpKSk7cmV0dXJuIG8uZ2V0TW9udGgoKT5pJTEyJiZvLnNldERhdGUoMCksZnVuY3Rpb24oZSx0KXtjb25zdCBuPXQuZ2V0VGltZSgpLWUuZ2V0VGltZSgpO3JldHVybiBNYXRoLnJvdW5kKG4vMWUzLzYwLzYwLzI0KX0obixvKX1mdW5jdGlvbiB5KGUsdCxuKXtyZXR1cm4gTWF0aC5yb3VuZCgodC1lKSp2KG4pKX1mdW5jdGlvbiB2KGUpe3N3aXRjaChlKXtjYXNlIGkuQmlsbGluZ0N5Y2xlLk9uZVllYXI6cmV0dXJuIDEyO2Nhc2UgaS5CaWxsaW5nQ3ljbGUuVGhyZWVNb250aHM6cmV0dXJuIDM7ZGVmYXVsdDpyZXR1cm4gMX19ZnVuY3Rpb24gdyhlKXtyZXR1cm4oTWF0aC5yb3VuZCgxMDAqZSkvMTAwKS50b0ZpeGVkKDIpfWZ1bmN0aW9uIGIoZSl7Y29uc3QgdD1NYXRoLnJvdW5kKDEwMCplKS8xMDA7cmV0dXJuIE1hdGgucm91bmQodCkudG9GaXhlZCgwKX1mdW5jdGlvbiBfKGUpe2NvbnN0IHQ9TWF0aC5yb3VuZCgxMDAqZSkvMTAwLG49TWF0aC5yb3VuZCh0KTtyZXR1cm4gTWF0aC5hYnModC1uKT4wP3QudG9GaXhlZCgyKTpuLnRvRml4ZWQoMCl9ZnVuY3Rpb24geChlKXtjb25zdCB0PXIudChudWxsLHZvaWQgMCxuKDE1Mzc2NikpO2lmKGQoZSkpe2NvbnN0IG49ZihwKGUpKTtyZXR1cm4gdC5mb3JtYXQoe3Byb1BsYW5OYW1lOm59KX1yZXR1cm4gZihlKX19LDQ0MzU1NyhlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtwYXJzZUh0bWw6KCk9Pm8scGFyc2VIdG1sRWxlbWVudDooKT0+c30pO2NvbnN0IHI9bmV3IFdlYWtNYXA7dmFyIGk7ZnVuY3Rpb24gbyhlLHQpe2xldCBuLGk7cmV0dXJuIG49bnVsbD09dD9kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ6OT09PXQubm9kZVR5cGU/dC5kb2N1bWVudEVsZW1lbnQ6dCxyJiYoaT1yLmdldChuKSksaXx8KGk9bi5vd25lckRvY3VtZW50LmNyZWF0ZVJhbmdlKCksaS5zZWxlY3ROb2RlQ29udGVudHMobiksciYmci5zZXQobixpKSksaS5jcmVhdGVDb250ZXh0dWFsRnJhZ21lbnQoZSl9ZnVuY3Rpb24gcyhlLHQpe2NvbnN0IG49byhlLHQpLHI9bi5maXJzdEVsZW1lbnRDaGlsZDtyZXR1cm4gbnVsbCE9PXImJm4ucmVtb3ZlQ2hpbGQocikscn0hZnVuY3Rpb24oZSl7ZVtlLkVsZW1lbnQ9MV09IkVsZW1lbnQiLGVbZS5Eb2N1bWVudD05XT0iRG9jdW1lbnQifShpfHwoaT17fSkpfSw5MzExOTgoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7aGFuZGxlVFZMaW5rc0NsaWNrOigpPT5hfSk7dmFyIHI9big0MDAxODEpLGk9big2MDE1ODcpLG89big3MzA2NDUpO2NvbnN0IHM9ImlnbHU6Y29tLnRyYWRpbmd2aWV3L3dpZGdldF90dl9saW5rX2NsaWNrL2pzb25zY2hlbWEvMS0wLTAiO2Z1bmN0aW9uIGEoKXtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsKGU9Pntjb25zdCB0PWUudGFyZ2V0LmNsb3Nlc3QoIjpsaW5rIik7dD8uaG9zdG5hbWUmJigwLG8uaXNJbnRlcm5hbEhvc3QpKHQuaG9zdG5hbWUsInRyYWRpbmd2aWV3LmNvbSIpJiZhc3luYyBmdW5jdGlvbihlLHQpe2NvbnN0IG49ZnVuY3Rpb24oKXtjb25zdCBlPXdpbmRvdy5pbml0RGF0YS5oYXNoU2V0dGluZ3M7aWYoT2JqZWN0LmtleXMoZSkubGVuZ3RoPjApcmV0dXJuKDAsaS5maWx0ZXJVdG1JbmZvKShlKTtjb25zdCB0PW5ldyBVUkxTZWFyY2hQYXJhbXMobG9jYXRpb24uaHJlZik7cmV0dXJue3V0bV9jYW1wYWlnbjp0LmdldCgidXRtX2NhbXBhaWduIil8fHZvaWQgMCx1dG1fc291cmNlOnQuZ2V0KCJ1dG1fc291cmNlIil8fHZvaWQgMH19KCk7KGF3YWl0KDAsci5nZXRUcmFja2VyKSgpKT8udHJhY2tTZWxmRGVzYyhzLHt3aWRnZXRfdHlwZTpsKG4pLGRvbWFpbjpjKG4pLGxpbms6ZSx0YXJnZXRfdHlwZTp0fSl9KHQuaHJlZix0LmRhdGFzZXQudGFyZ2V0VHlwZXx8bnVsbCl9KSl9ZnVuY3Rpb24gYyhlKXtjb25zdCB0PWxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucz8uWzBdfHxkb2N1bWVudC5yZWZlcnJlcjtyZXR1cm4gZS51dG1fc291cmNlfHxmdW5jdGlvbihlKXt0cnl7cmV0dXJuIG5ldyBVUkwoZSkuaG9zdH1jYXRjaChlKXtyZXR1cm4iIn19KHQpfWZ1bmN0aW9uIGwoZSl7aWYoZS51dG1fY2FtcGFpZ24pcmV0dXJuIGUudXRtX2NhbXBhaWduO2NvbnN0IHQ9bG9jYXRpb24ucGF0aG5hbWU7cmV0dXJuIHQuaW5jbHVkZXMoImVtYmVkLXdpZGdldCIpP3Quc3BsaXQoIi8iKVsyXTp0fX0sMzg5Mjk4KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse3RyYWNrV2lkZ2V0TG9hZE1ldGFJbmZvOigpPT5pfSk7dmFyIHI9big0MDAxODEpO2FzeW5jIGZ1bmN0aW9uIGkoZSl7TWF0aC5yYW5kb20oKT4uMDA1fHwoYXdhaXQoMCxyLmdldFRyYWNrZXIpKCkpPy50cmFja1NlbGZEZXNjKCJpZ2x1OmNvbS50cmFkaW5ndmlldy93aWRnZXRfbG9hZF9tZXRhX2luZm8vanNvbnNjaGVtYS8xLTAtMCIsZSl9fSw5MDIxMDAoZSx0LG4peyJ1c2Ugc3RyaWN0IjtuLmQodCx7ZXh0cmFjdFdpZGdldFNldHRpbmdzOigpPT5pfSk7Y29uc3Qgcj17d2hpdGVsYWJlbDohMCxwZXJtaXNzaW9uT3ZlcnJpZGVzOiEwLGxpbmtDYXB0dXJpbmdBbGxvd2VkOiEwLHN5bWJvbF9zZWFyY2hfZGVmYXVsdF9leGNoYW5nZTohMCxzeW1ib2xfc2VhcmNoX2FsbG93ZWRfZXhjaGFuZ2VzOiEwfTtmdW5jdGlvbiBpKGUsdD1bXSxuKXtyZXR1cm4gZnVuY3Rpb24oZSx0LG4saT1bXSxvKXtjb25zdCBzPW4uc2xpY2UoMSksYT1kZWNvZGVVUklDb21wb25lbnQocyk7bGV0IGM9e307dHJ5eyIiIT09YSYmKGM9SlNPTi5wYXJzZShhKSx2b2lkIDAhPT1vJiZvKGUsYyksT2JqZWN0LmtleXMoYykuZm9yRWFjaCgoZT0+eyhyW2VdfHxpLmluY2x1ZGVzKGUpKSYmZGVsZXRlIGNbZV19KSkpfWNhdGNoKGUpe2M9e30sCmNvbnNvbGUud2FybigiSGFzaCBwYXJhbXMgcGFyc2luZyBlcnJvciEgSGFzaCBwYXJhbXMgaWdub3JlZC4iKX1jb25zdCBsPXQuc2xpY2UoMSksdT10LmluY2x1ZGVzKCIlIik/ZGVjb2RlVVJJQ29tcG9uZW50KGwpOnQsZD1uZXcgVVJMU2VhcmNoUGFyYW1zKHUpO2xldCBwPXt9O3RyeXtkLmZvckVhY2goKChlLHQpPT57aS5pbmNsdWRlcyh0KXx8KHBbdF09ZSl9KSksdm9pZCAwIT09byYmbyhlLHApfWNhdGNoKGUpe3A9e30sY29uc29sZS53YXJuKCJTZWFyY2ggcXVlcnkgcGFyYW1zIHBhcnNpbmcgZXJyb3IhIFNlYXJjaCBxdWVyeSBwYXJhbXMgaWdub3JlZC4iKX1yZXR1cm4gT2JqZWN0LmFzc2lnbih7fSxlLGMscCl9KGUsbG9jYXRpb24uc2VhcmNoLGxvY2F0aW9uLmhhc2gsdCxuKX19LDI1NDY3MyhlLHQsbil7InVzZSBzdHJpY3QiO24uZCh0LHtJbnRlcnZhbDooKT0+dSxSZXNvbHV0aW9uS2luZDooKT0+byxTcGVjaWFsUmVzb2x1dGlvbktpbmQ6KCk9PnN9KTtjb25zdCByPS9eKFxkKikoW1RTSERXTVJdKSQvLGk9L14oXGQrKSQvO3ZhciBvLHM7IWZ1bmN0aW9uKGUpe2UuVGlja3M9InRpY2tzIixlLlNlY29uZHM9InNlY29uZHMiLGUuTWludXRlcz0ibWludXRlcyIsZS5EYXlzPSJkYXlzIixlLldlZWtzPSJ3ZWVrcyIsZS5Nb250aHM9Im1vbnRocyIsZS5SYW5nZT0icmFuZ2UiLGUuSW52YWxpZD0iaW52YWxpZCJ9KG98fChvPXt9KSksZnVuY3Rpb24oZSl7ZS5Ib3Vycz0iaG91cnMifShzfHwocz17fSkpO2NvbnN0IGE9e307YVtvLlRpY2tzXT0xZTMsYVtvLlNlY29uZHNdPTFlMyxhW28uTWludXRlc109NjAqYVtvLlNlY29uZHNdLGFbby5EYXlzXT0xNDQwKmFbby5NaW51dGVzXSxhW28uV2Vla3NdPTcqYVtvLkRheXNdO2NvbnN0IGM9e1Q6by5UaWNrcyxTOm8uU2Vjb25kcyxEOm8uRGF5cyxXOm8uV2Vla3MsTTpvLk1vbnRocyxSOm8uUmFuZ2V9LGw9bmV3IFNldChbby5UaWNrcyxvLlNlY29uZHMsby5NaW51dGVzXSk7Y2xhc3MgdXtjb25zdHJ1Y3RvcihlLHQpe3RoaXMuX2tpbmQ9by5JbnZhbGlkLHRoaXMuX211bHRpcGxpZXI9MCxlIT09by5JbnZhbGlkJiZ0PjAmJih0aGlzLl9raW5kPWUsdGhpcy5fbXVsdGlwbGllcj10KX1raW5kKCl7cmV0dXJuIHRoaXMuX2tpbmR9Z3VpS2luZCgpe3JldHVybiB0aGlzLmlzTWludXRlSG91cnMoKT9zLkhvdXJzOnRoaXMuX2tpbmR9bXVsdGlwbGllcigpe3JldHVybiB0aGlzLl9tdWx0aXBsaWVyfWlzVmFsaWQoKXtyZXR1cm4gdGhpcy5raW5kKCkhPT1vLkludmFsaWQmJnRoaXMubXVsdGlwbGllcigpPjB9aXNEV00oKXtyZXR1cm4gdGhpcy5pc1ZhbGlkKCkmJiF0aGlzLmlzUmFuZ2UoKSYmIXRoaXMuaXNJbnRyYWRheSgpJiYhdGhpcy5pc1RpY2tzKCl9aXNJbnRyYWRheSgpe2NvbnN0IGU9bC5oYXModGhpcy5raW5kKCkpO3JldHVybiB0aGlzLmlzVmFsaWQoKSYmZX1pc1NlY29uZHMoKXtyZXR1cm4gdGhpcy5raW5kKCk9PT1vLlNlY29uZHN9aXNNaW51dGVzKCl7cmV0dXJuIHRoaXMua2luZCgpPT09by5NaW51dGVzfWlzTWludXRlSG91cnMoKXtyZXR1cm4gdGhpcy5raW5kKCk9PT1vLk1pbnV0ZXMmJigoZT10aGlzLm11bHRpcGxpZXIoKSk+PTYwJiYhKGUlNjApKTt2YXIgZX1pc0RheXMoKXtyZXR1cm4gdGhpcy5raW5kKCk9PT1vLkRheXN9aXNXZWVrcygpe3JldHVybiB0aGlzLmtpbmQoKT09PW8uV2Vla3N9aXNNb250aHMoKXtyZXR1cm4gdGhpcy5raW5kKCk9PT1vLk1vbnRoc31pc1JhbmdlKCl7cmV0dXJuIHRoaXMua2luZCgpPT09by5SYW5nZX1pc1RpY2tzKCl7cmV0dXJuIHRoaXMua2luZCgpPT09by5UaWNrc31pczFUaWNrKCl7cmV0dXJuIHRoaXMuaXNUaWNrcygpJiYxPT09dGhpcy5tdWx0aXBsaWVyKCl9aXNUaW1lQmFzZWQoKXtyZXR1cm4hdGhpcy5pc1JhbmdlKCl9bGV0dGVyKCl7cmV0dXJuIHRoaXMuaXNWYWxpZCgpJiZ0aGlzLmtpbmQoKSE9PW8uTWludXRlcz90aGlzLmtpbmQoKVswXS50b1VwcGVyQ2FzZSgpOiIifXZhbHVlKCl7cmV0dXJuIHRoaXMuaXNWYWxpZCgpP3RoaXMua2luZCgpPT09by5NaW51dGVzP3RoaXMubXVsdGlwbGllcigpKyIiOnRoaXMubXVsdGlwbGllcigpK3RoaXMubGV0dGVyKCk6IiJ9aXNFcXVhbFRvKGUpe2lmKCEoZSBpbnN0YW5jZW9mIHUpKXRocm93IG5ldyBFcnJvcigiQXJndW1lbnQgaXMgbm90IGFuIEludGVydmFsIik7cmV0dXJuISghdGhpcy5pc1ZhbGlkKCl8fCFlLmlzVmFsaWQoKSkmJih0aGlzLmtpbmQoKT09PWUua2luZCgpJiZ0aGlzLm11bHRpcGxpZXIoKT09PWUubXVsdGlwbGllcigpKX1pbk1pbGxpc2Vjb25kcyhlPURhdGUubm93KCkpe2lmKCF0aGlzLmlzVmFsaWQoKXx8dGhpcy5pc1JhbmdlKCkpcmV0dXJuIE5hTjtpZih0aGlzLmlzTW9udGhzKCkpe2NvbnN0IHQ9bmV3IERhdGUoZSk7dC5zZXRVVENNb250aCh0LmdldFVUQ01vbnRoKCkrKHRoaXMubXVsdGlwbGllcigpfHwxKSk7cmV0dXJuK3QtZX1jb25zdCB0PXRoaXMubXVsdGlwbGllcigpO3JldHVybiBhW3RoaXMua2luZCgpXSp0fXN0YXRpYyBpc0VxdWFsKGUsdCl7cmV0dXJuIGU9PT10fHx1LnBhcnNlKGUpLmlzRXF1YWxUbyh1LnBhcnNlKHQpKX1zdGF0aWMgcGFyc2VFeHQoZSl7ZT0oZSsiIikudG9VcHBlckNhc2UoKS5zcGxpdCgiLCIpWzBdO2xldCB0PXIuZXhlYyhlKTtyZXR1cm4gbnVsbCE9PXQ/IkgiPT09dFsyXT97aW50ZXJ2YWw6bmV3IHUoby5NaW51dGVzLDYwKmQodFsxXSkpLGd1aVJlc29sdXRpb25LaW5kOnMuSG91cnN9OntpbnRlcnZhbDpuZXcgdShjW3RbMl1dLGQodFsxXSkpLGd1aVJlc29sdXRpb25LaW5kOmNbdFsyXV19Oih0PWkuZXhlYyhlKSxudWxsIT09dD97aW50ZXJ2YWw6bmV3IHUoby5NaW51dGVzLGQodFsxXSkpLGd1aVJlc29sdXRpb25LaW5kOm8uTWludXRlc306e2ludGVydmFsOm5ldyB1KG8uSW52YWxpZCwwKSxndWlSZXNvbHV0aW9uS2luZDpvLkludmFsaWR9KX1zdGF0aWMgcGFyc2UoZSl7cmV0dXJuIHUucGFyc2VFeHQoZSkuaW50ZXJ2YWx9c3RhdGljIGtpbmQoZSl7cmV0dXJuIHUucGFyc2UoZSkua2luZCgpfXN0YXRpYyBpc1ZhbGlkKGUpe3JldHVybiB1LnBhcnNlKGUpLmlzVmFsaWQoKQp9c3RhdGljIGlzRFdNKGUpe3JldHVybiB1LnBhcnNlKGUpLmlzRFdNKCl9c3RhdGljIGlzSW50cmFkYXkoZSl7cmV0dXJuIHUucGFyc2UoZSkuaXNJbnRyYWRheSgpfXN0YXRpYyBpc1NlY29uZHMoZSl7cmV0dXJuIHUucGFyc2UoZSkuaXNTZWNvbmRzKCl9c3RhdGljIGlzTWludXRlcyhlKXtyZXR1cm4gdS5wYXJzZShlKS5pc01pbnV0ZXMoKX1zdGF0aWMgaXNNaW51dGVIb3VycyhlKXtyZXR1cm4gdS5wYXJzZShlKS5pc01pbnV0ZUhvdXJzKCl9c3RhdGljIGlzRGF5cyhlKXtyZXR1cm4gdS5wYXJzZShlKS5pc0RheXMoKX1zdGF0aWMgaXNXZWVrcyhlKXtyZXR1cm4gdS5wYXJzZShlKS5pc1dlZWtzKCl9c3RhdGljIGlzTW9udGhzKGUpe3JldHVybiB1LnBhcnNlKGUpLmlzTW9udGhzKCl9c3RhdGljIGlzUmFuZ2UoZSl7cmV0dXJuIHUucGFyc2UoZSkuaXNSYW5nZSgpfXN0YXRpYyBpc1RpY2tzKGUpe3JldHVybiB1LnBhcnNlKGUpLmlzVGlja3MoKX1zdGF0aWMgaXNUaW1lQmFzZWQoZSl7cmV0dXJuIHUucGFyc2UoZSkuaXNUaW1lQmFzZWQoKX1zdGF0aWMgbm9ybWFsaXplKGUpe2NvbnN0IHQ9dS5wYXJzZShlKTtyZXR1cm4gdC5pc1ZhbGlkKCk/dC52YWx1ZSgpOm51bGx9fWZ1bmN0aW9uIGQoZSl7cmV0dXJuIDA9PT1lLmxlbmd0aD8xOnBhcnNlSW50KGUsMTApfX0sNzM4NDU4KGUsdCxuKXsidXNlIHN0cmljdCI7bi5kKHQse2lzQW5kcm9pZDooKT0+Zyxpc0FueU1vYmlsZTooKT0+dixpc0JsYWNrQmVycnk6KCk9PmYsaXNDaHJvbWU6KCk9PmEsaXNFZGdlOigpPT5sLGlzRkY6KCk9PmMsaXNJT1M6KCk9Pm0saXNJUGFkOigpPT55LGlzTGludXg6KCk9PnAsaXNNYWM6KCk9PmQsaXNPcGVyYU1pbmk6KCk9PmgsaXNTYWZhcmk6KCk9PnUsbW9iaWxldG91Y2g6KCk9Pm8sdG91Y2g6KCk9PnN9KTtjb25zdCByPSJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiYidW5kZWZpbmVkIiE9dHlwZW9mIG5hdmlnYXRvcixpPXImJiJvbnRvdWNoc3RhcnQiaW4gd2luZG93LG89ciYmaSYmIm9ub3JpZW50YXRpb25jaGFuZ2UiaW4gd2luZG93LHM9ciYmKGl8fCEhbmF2aWdhdG9yLm1heFRvdWNoUG9pbnRzKSxhPXImJndpbmRvdy5jaHJvbWUmJndpbmRvdy5jaHJvbWUucnVudGltZSxjPXImJndpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkuaW5kZXhPZigiZmlyZWZveCIpPi0xLGw9ciYmL1xzRWRnZVwvXGRcZFxiLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLHU9ciYmQm9vbGVhbihuYXZpZ2F0b3IudmVuZG9yKSYmbmF2aWdhdG9yLnZlbmRvci5pbmRleE9mKCJBcHBsZSIpPi0xJiYtMT09PW5hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZigiQ3JpT1MiKSYmLTE9PT1uYXZpZ2F0b3IudXNlckFnZW50LmluZGV4T2YoIkZ4aU9TIiksZD1yJiYvbWFjL2kudGVzdChuYXZpZ2F0b3IucGxhdGZvcm0pLHA9KHImJi9XaW4zMnxXaW42NC9pLnRlc3QobmF2aWdhdG9yLnBsYXRmb3JtKSxyJiYvTGludXgvaS50ZXN0KG5hdmlnYXRvci5wbGF0Zm9ybSkpLGc9ciYmL0FuZHJvaWQvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLGY9ciYmL0JsYWNrQmVycnkvaS50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLG09ciYmL2lQaG9uZXxpUGFkfGlQb2QvLnRlc3QobmF2aWdhdG9yLnBsYXRmb3JtKSxoPXImJi9PcGVyYSBNaW5pL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSx5PXImJigiTWFjSW50ZWwiPT09bmF2aWdhdG9yLnBsYXRmb3JtJiZuYXZpZ2F0b3IubWF4VG91Y2hQb2ludHM+MXx8L2lQYWQvLnRlc3QobmF2aWdhdG9yLnBsYXRmb3JtKSksdj1nfHxmfHxtfHxofX1dKTs="}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCTAOB.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.600Z","timestamp":1785126258600,"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 /crypto/XTVCTAOB.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=4, 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 04:24:18 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: \"04b8f162c84e44bdf84cd2be3af6440e\"\r\nlast-modified: Fri, 05 May 2023 11:05:18 GMT\r\ncdn-cachedat: 08/14/2025 09:15:00\r\nx-amz-id-2: FbbajaOyHG6mPc4QypfirtJ53D+Xr6Ri8WhMBxubY9AljgPAq0a9XUmxtEATJupzfV0BkTOQyUY=\r\nx-amz-request-id: JCTTHQACZD72X79S\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: 04b8f162c84e44bdf84cd2be3af6440e\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: df88c3d625b3182cecd6bda115b01f16\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":318,"size_decoded":1165,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (318), with no line terminators","md5":"04b8f162c84e44bdf84cd2be3af6440e","sha1":"556cb1e39d2645a8f3322958a31afe7a7fc0254d","sha256":"9e27771c0c35f6d7576aa9cbe9de6ffd8b4390b205c8e4247464b9fe01205adc","sha512":"5a78ac91874cb1228edee0a3280d289251f96568fd745c1f1ab8b9aa1ee619e18011b3efe5135f2624f333854db16a5b8aae2d6a009c7f3a84d1825afb8b30fc","ssdeep":"","tlshash":"bce07d966728a048b00297f4cdb4198134bb50e3f3ae49e6f04551b872064f7fd1082c","first_seen":"2024-10-12T23:01:09.281197Z","last_seen":"2026-07-27T07:05:43.348448Z","times_seen":796,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiNGMEYzRkEiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNNSA3YzAtMS4xLjY2LTIgMS40Ni0ySDEzYzAgMS4xLS42NiAyLTEuNDYgMkg1Wm0zIDB2NS40N0M4IDEzLjYyIDkuMjUgMTQgMTAuMDIgMTRjLjY0IDAgMS0uMDkgMS40NC0uMzItMS4yMi0uMS0xLjQ2LS42OC0xLjQ2LTEuNzNWOC42NEMxMCA3Ljc0IDkuMTYgNyA4IDdaIi8+PC9zdmc+"}},"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":"s3-symbol-logo.tradingview.com/crypto/XTVCMMTMO.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/crypto-mkt-screener/?locale=en#%7B%22width%22%3A%22100%25%22%2C%22height%22%3A600%2C%22defaultColumn%22%3A%22overview%22%2C%22screener_type%22%3A%22crypto_mkt%22%2C%22displayCurrency%22%3A%22BTC%22%2C%22colorTheme%22%3A%22dark%22%2C%22isTransparent%22%3Afalse%2C%22market%22%3A%22crypto%22%2C%22enableScrolling%22%3Atrue%2C%22utm_source%22%3A%22besttrader.live%22%2C%22utm_medium%22%3A%22widget%22%2C%22utm_campaign%22%3A%22cryptomktscreener%22%2C%22page-uri%22%3A%22besttrader.live%2F%22%7D","date":"2026-07-27T04:24:18.753Z","timestamp":1785126258753,"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 /crypto/XTVCMMTMO.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 04:24:18 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: \"ba165f995b9e32f8380eb7f74e83d323\"\r\nlast-modified: Wed, 21 Jan 2026 16:22:13 GMT\r\nx-amz-id-2: 6/FIrLaojq1Wv+azZfPjN5wTUh0en9tWujImF1By7QxF7NQhm2DJXqA6qf62fB1ZUrSrlm+34y8=\r\nx-amz-request-id: Z9DMDGC5SBKFCHNW\r\nx-amz-server-side-encryption: AES256\r\nx-amz-meta-hash: ba165f995b9e32f8380eb7f74e83d323\r\ncdn-proxyver: 1.43\r\ncdn-requestpullcode: 200\r\ncdn-requestpullsuccess: True\r\ncdn-edgestorageid: 830\r\ncdn-cachedat: 01/21/2026 17:46:21\r\ncdn-status: 200\r\ncdn-requesttime: 0\r\ncdn-requestid: e41aaf3e7da0065a44c9487295ff02e9\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":1223,"mime_type":"image/svg+xml","magic":"exported SGML document, ASCII text, with very long lines (434), with no line terminators","md5":"ba165f995b9e32f8380eb7f74e83d323","sha1":"4e6a12fc7288edab2eaadea54261c5b6bdabaae2","sha256":"dff2201f247b11963e787abfd3f1e12340ac60457d66c177e5ee3e091fd1264d","sha512":"e4e0d2b7d17d016c25cf6e46371a4adb5e6cba1397d437479e291c704cdfb3be06a4df39fa34364273794b1a836eac281cd417f3930b093f8cb6b8662e95babd","ssdeep":"","tlshash":"bae05cbb5918b00c445b2a655bfd8913615a3052f1ae1395b9c157a5b1021eeec92e1c","first_seen":"2026-05-29T07:08:04.210044Z","last_seen":"2026-07-27T07:05:43.329814Z","times_seen":181,"resource_available":false,"data":"PCEtLSBieSBUcmFkaW5nVmlldyAtLT48c3ZnIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9IiMwMjQ2RkYiIGQ9Ik0wIDBoMTh2MThIMHoiLz48cGF0aCBkPSJNOC4yNSA2di4wMWwtMi4yMyA2Ljk3di4wMWwtLjAzLjAxSDQuMDF2LS4wMkw1Ljg3IDcuMmMuMS0uMzQtLjEyLS42My0uNDUtLjYzYTE5NC45MiAxOTQuOTIgMCAwIDEtMS40MSAwTDQgNi41NXYtLjU0SDguMjZabTIuODcgMGguMDF2LjAyTDkuNDcgMTFsLS4wMi4wMUg3LjQ4YS4wMi4wMiAwIDAgMS0uMDIgMHYtLjAyTDkuMTMgNiA5LjE0IDZoMS45OFpNMTQgNmwuMDEuMDF2LjAxbC0xLjAzIDIuOTctLjAxLjAxaC0xLjg0di0uMDFMMTIuMTQgNkgxNFoiIGZpbGw9IiNmZmYiLz48L3N2Zz4="}},"time_used":1,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":1,"receive":0,"ssl":0},"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://besttrader.live/","date":"2026-07-27T04:24:20.378Z","timestamp":1785126260378,"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://besttrader.live/\r\nOrigin: https://besttrader.live\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 04:24:23 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: 0dd3c95f86cdb6b59a0dad25ffcd406aa7c7723b\r\nx-77-nzt: k11C/o21yVdCCXvji/fSS/4lriRu/qfLxioGtVUDP/JHN2Xkd/Plnpok+ZjUeqfkqIREzt0\r\nx-77-nzt-ray: fdb54123304f600777dd666aa7f5e42a\r\nx-77-cache: HIT\r\nx-77-age: 124\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":7216,"size_decoded":3346,"mime_type":"application/json; charset=utf-8","magic":"JSON text data","md5":"05d7604a60456ab25eb809557b353edc","sha1":"e32135b721636e7994e42748da35341e03dfd123","sha256":"5892aca834fe3f9f8fb66f68c8a3eb2295708a3b428cf355d7f3e3c1a0b7b62e","sha512":"db4124c008e22597192e1f07b44575ff191a03322f763bffb1efd129152e0f6f1546d98f5016967b32cc71a8252fefc0546aef0be258e8343fbba4ae2afe00da","ssdeep":"192:Ccdft/hc4l6WKHSY8pZcqq+jT0UHAfoW/Ymz8:CgF/hcbWbYKZcF+jhqoWQmw","tlshash":"48e1b54f9a144ea987c6438276cfb84675bc80734250993afd8cc8b842697cda3e3b94","first_seen":"2026-04-01T12:23:41.393805Z","last_seen":"2026-07-27T07:05:43.33611Z","times_seen":4465,"resource_available":false,"data":"eyJhZ2VudFJhdGluZy5hbGwucGxhY2Vob2xkZXIiOiJMZWF2ZSB1cyBmZWVkYmFjayIsImFnZW50UmF0aW5nLmJhZC5mb3JtVGV4dCI6IlNvIHNvcnJ5IPCfmJMgV2hhdCB3ZW50IHdyb25nPyIsImFnZW50UmF0aW5nLmdvb2QuZm9ybVRleHQiOiJUaGFua3Mg8J+kqSBXaGF0IHdhcyBzbyBncmVhdD8iLCJhZ2VudFJhdGluZy5ub3JtYWwuZm9ybVRleHQiOiJUaGFua3Mg8J+RjSBIb3cgY2FuIHdlIGltcHJvdmU/IiwiYWdlbnRUcmFuc2Zlci5kZWZhdWx0VGV4dCI6IkFnZW50IiwiYWdlbnRUcmFuc2Zlci5qb2luZWQiOiJqb2luZWQgdGhlIGNoYXQiLCJhZ2VudFRyYW5zZmVyLmxlZnQiOiJsZWZ0IiwiYWdlbnRUcmFuc2Zlci5yZWRpcmVjdGVkIjoiaXMgeW91ciBuZXcgYWdlbnQiLCJhcmlhTGFiZWwuYWdlbnRBdmF0YXIiOiJBZ2VudCBhdmF0YXIiLCJhcmlhTGFiZWwuY2FyZCI6IlByb2R1Y3QgY2FyZCIsImFyaWFMYWJlbC5jaGF0Q29udGVudCI6IkNoYXQgY29udGVudCIsImFyaWFMYWJlbC5jaGF0Ym90QXZhdGFyIjoiQ2hhdGJvdCBhdmF0YXIiLCJhcmlhTGFiZWwuZHJhd2VyLmNvbnRlbnQiOiJEcmF3ZXIgY29udGVudCIsImFyaWFMYWJlbC5kcmF3ZXIub3ZlcmxheSI6IkRyYXdlciBvdmVybGF5IiwiYXJpYUxhYmVsLmlubGluZUVtb2ppUGlja2VyLmRlc2NyaXB0aW9uIjoiU2hvd2luZyB7Y291bnR9IGVtb2ppcyIsImFyaWFMYWJlbC5pbmxpbmVFbW9qaVBpY2tlci5sYWJlbCI6IkVtb2ppIHN1Z2dlc3Rpb25zIiwiYXJpYUxhYmVsLmxlZnQiOiJMZWZ0IiwiYXJpYUxhYmVsLm9wZW5DaGF0IjoiT3BlbiBTbWFydHN1cHAgY2hhdCIsImFyaWFMYWJlbC5wb3B1cCI6IlNtYXJ0c3VwcCBjaGF0IHBvcHVwIiwiYXJpYUxhYmVsLnJhdGVDaGF0LmJhZCI6IlJhdGUgY2hhdCBuZWdhdGl2ZWxseSIsImFyaWFMYWJlbC5yYXRlQ2hhdC5nb29kIjoiUmF0ZSBjaGF0IHBvc2l0aXZlbHkiLCJhcmlhTGFiZWwucmF0ZUNoYXQubmV1dHJhbCI6IlJhdGUgY2hhdCBuZXV0cmFsbHkiLCJhcmlhTGFiZWwucmVtb3ZlQXR0YWNobWVudCI6IlJlbW92ZSBhdHRhY2htZW50IiwiYXJpYUxhYmVsLnJpZ2h0IjoiUmlnaHQiLCJhcmlhTGFiZWwuc2Nyb2xsRG93biI6IlNjcm9sbCBkb3duIiwiYXJpYUxhYmVsLnN1Y2Nlc3MiOiJTdWNjZXNzIiwiYXJpYUxhYmVsLnVwbG9hZGluZyI6IlVwbG9hZGluZy4uLiIsImFyaWFMYWJlbC53aWRnZXRCcmFuZGluZyI6IlNtYXJ0c3VwcCBicmFuZGluZyIsImF1dGhGb3JtLmFjY2VwdFRlcm1zIjoiSSBhZ3JlZSB3aXRoIHByaXZhY3kgcG9saWN5IiwiYXV0aEZvcm0uYnV0dG9uLnNlbmQiOiJTZW5kIG1lc3NhZ2UiLCJhdXRoRm9ybS5kZXNjcmlwdGlvbiI6Ildl4oCZbGwgdXNlIHlvdXIgY29udGFjdCBpbmZvIG9ubHkgaWYgYWxsIHRoZSBhZ2VudHMgYXJlIGJ1c3kgYXQgdGhlIG1vbWVudCBhbmQgY2Fubm90IGltbWVkaWF0ZWx5IHJlcGx5LiIsImF1dGhGb3JtLmdyZWV0aW5nIjoi8J+RiyBQbGVhc2UgaW50cm9kdWNlIHlvdXJzZWxmIiwiYXV0aEZvcm0uZ3JvdXAiOiJDaG9vc2UgYSBncm91cCIsImF1dGhGb3JtLmxhYmVsLmVtYWlsIjoiRS1tYWlsIiwiYXV0aEZvcm0ubGFiZWwuZ3JvdXAiOiJHcm91cCIsImF1dGhGb3JtLmxhYmVsLm5hbWUiOiJOYW1lIiwiYXV0aEZvcm0ubGFiZWwucGhvbmUiOiJQaG9uZSIsImF1dGhGb3JtLnN1Ym1pdC5lcnJvciI6IkF1dGhlbnRpY2F0aW9uIGZhaWxlZCIsImF1dGhGb3JtLnN1Ym1pdC5zdWNjZXNzIjoiQXV0aGVudGljYXRpb24gd2FzIHN1Y2Nlc3NmdWwiLCJhdXRoRm9ybS55b3VyRW1haWwiOiJZb3VyIGVtYWlsIiwiYXV0aEZvcm0ueW91ck5hbWUiOiJZb3VyIG5hbWUiLCJhdXRoRm9ybS55b3VyUGhvbmUiOiJQaG9uZSBudW1iZXIiLCJidXR0b24uZ3JlZXRpbmciOiJDaGF0IiwiY2FyZC5saW5rc0xpbWl0UmVhY2hlZCI6IlVuYWJsZSB0byBzZW5kIG1vcmUgdGhhbiAyMCBVUkwgbGlua3MuIiwiY2FyZC5ub1ByZXZpZXdUaXRsZSI6IlByZXZpZXcgbm90IGF2YWlsYWJsZSIsImNhcmQub3BlblVybFRpdGxlIjoiUmVhZCBtb3JlIiwiY2FyZC5zZW5kaW5nSW5Qcm9ncmVzcyI6IlNlbmRpbmcgaW4gcHJvZ3Jlc3MsIHBsZWFzZSB3YWl04oCmIiwiY2hhdElucHV0LnBsYWNlaG9sZGVyIjoiVHlwZSB5b3VyIG1lc3NhZ2UgaGVyZSIsImNoYXRQcmV2aWV3Lm1lc3NhZ2UxIjoiSGksIGlzIGFueWJvZHkgaGVyZT8iLCJjaGF0UHJldmlldy5tZXNzYWdlMiI6IkhlbGxvLCB5ZXMgd2UgYXJlIGhlcmUiLCJjaGF0UHJldmlldy5tZXNzYWdlMyI6Ik9rLCB0aGFua3MiLCJjaGF0Ym90LmdvQmFjayI6IkdvIGJhY2siLCJjbG9zZUNvbnZlcnNhdGlvbk1vZGFsLmJ1dHRvbiI6IlllcywgZW5kIGNoYXQiLCJjbG9zZUNvbnZlcnNhdGlvbk1vZGFsLnRleHQiOiJJcyB0aGF0IHJlYWxseSBhbGw/IElmIHNvbWV0aGluZyBlbHNlIGNvbWVzIHRvIG1pbmQsIHlvdSBjYW4gYWx3YXlzIHJldHVybiB0byB0aGUgY29udmVyc2F0aW9uLiIsImNsb3NlQ29udmVyc2F0aW9uTW9kYWwudGl0bGUiOiJFbmQgY2hhdCIsImRyYWdBbmREcm9wLmRyb3BIZXJlIjoiRHJvcCB5b3VyIGZpbGUocykgaGVyZSIsImVtYWlsVHJhbnNjcmlwdC5wb3NpdGl2ZUZlZWRiYWNrIjoiVHJhbnNjcmlwdCBoYXMgYmVlbiBzZW50IiwiZW1haWxUcmFuc2NyaXB0LnNlbmRDb3B5IjoiU2VuZCBjb252ZXJzYXRpb24gY29weSIsImVycm9yLmZpbGVVcGxvYWQiOiJGaWxlIHVwbG9hZCBmYWlsdXJlIiwiZXJyb3Iubm9JbnRlcm5ldCI6IkludGVybmV0IGNvbm5lY3Rpb24gbG9zdCIsImVycm9yLnNlcnZlckVycm9yIjoiU2VydmVyIGVycm9yIG9jY3VycmVkIiwiZmlsZVVwbG9hZC5iYWRGaWxlVHlwZSI6IlRoaXMgZmlsZSB0eXBlIGlzIG5vdCBzdXBwb3J0ZWQuIiwiZmlsZVVwbG9hZC5maWxlVG9vQmlnIjoiVGhlIGZpbGUgaXMgYmlnZ2VyIHRoYW4gdGhlIGFsbG93ZWQgbGltaXQiLCJmaWxlVXBsb2FkLmZpbGVzV2VyZW50UHJvY2Vzc2VkIjoiU29tZSBmaWxlcyBjb3VsZCBub3QgYmUgcHJvY2Vzc2VkIiwiZmlsZVVwbG9hZC5pbWFnZUVycm9yIjoiVGhpcyBpbWFnZSBpcyBub3QgdmFsaWQiLCJmaWxlVXBsb2FkLnRvb01hbnlGaWxlcyI6IkxpbWl0IGZvciB1cGxvYWRpbmcgZmlsZXMgaXMgIiwiZmlsZVVwbG9hZC51cGxvYWRGaWxlIjoiVXBsb2FkIGZpbGUiLCJmb3JtLnN1Ym1pdC5lcnJvciI6IlNvbWV0aGluZyB3ZW50IHdyb25nLiBQbGVhc2UgdHJ5IGFnYWluLiIsImZvcm0uc3VibWl0LnN1Y2Nlc3MiOiJTdWNjZXNzZnVsbHkgZG9uZSIsImdkcHIuZGF0YVByaXZhY3lIZWFkbGluZSI6IlBlcnNvbmFsIGRhdGEgcHJvY2Vzc2luZyIsImdkcHIuZGF0YVByaXZhY3lUZXh0IjoiU21hcnRzdXBwLmNvbSwgcy5yLm8sIHByb2Nlc3NlcyBwZXJzb25hbCBkYXRhLiwgVkFUIElEIENaMDM2Njg2ODEgKGZ1cnRoZXIgYXMgXCJTbWFydHN1cHBcIikgYXMgYSBkYXRhIHByb2Nlc3NvciB3aG8gYWN0cyBvbiBiZWhhbGYgb2YgdGhlIHdlYnNpdGUgb3duZXIgd2hvIGlzIHRoZSBkYXRhIGNvbnRyb2xsZXIuIFxuXG5TbWFydHN1cHAgaXMgR0RQUiBjb21wbGlhbnQuIFlvdSBjYW4gZmluZCBpbmZvcm1hdGlvbiBhYm91dCBTbWFydHN1cHAgcGVyc29uYWwgZGF0YSBwcml2YWN5IGFuZCBwcm9jZXNzaW5nIG9uIGhlbHAuc21hcnRzdXBwLmNvbS9lbl9VUy9wcml2YWN5LiBcblxuUHJvY2Vzc2luZyBvZiB5b3VyIHBlcnNvbmFsIGRhdGEgaXMgbmVjZXNzYXJ5IGluIG9yZGVyIHRvIHByb3ZpZGUgY3VzdG9tZXIgc2VydmljZS4gQWR2YW5jZWQgZmVhdHVyZXMgd2lsbCBvbmx5IGJlIHR1cm5lZCBvbiBpZiB5b3UgaGF2ZSBhZ3JlZWQgdG8gdGhlbS4gXG5cblBsZWFzZSBjb250YWN0IHRoZSB3ZWJzaXRlIG93bmVyIGlmIHlvdSBoYXZlIHF1ZXN0aW9ucyBhYm91dCB0aGUgcHJvY2Vzc2luZyBvZiBwZXJzb25hbCBkYXRhIG9yIGlmIHlvdSB3YW50IHRvIHJlcXVlc3Qgb3IgZXJhc2UgeW91ciBwZXJzb25hbCBkYXRhLiIsImdlbmVyYWwuYmFjayI6IkJhY2siLCJnZW5lcmFsLm5ld01lc3NhZ2VzIjoiTmV3IG1lc3NhZ2VzIiwiZ2VuZXJhbC5zZW5kIjoiU2VuZCIsIm9wdGlvbnMuYWNjZXNzaWJpbGl0eSI6IkFjY2Vzc2liaWxpdHkiLCJvcHRpb25zLmNvcHlyaWdodCI6IsKpIHt5ZWFyfSBTbWFydHN1cHAuY29tIiwib3B0aW9ucy5lbWFpbFRyYW5zY3JpcHQiOiJTZW5kIGVtYWlsIHRyYW5zY3JpcHQiLCJvcHRpb25zLmZlZWRiYWNrIjoiRGlkIHlvdSBmaW5kIGEgYnVnPyIsIm9wdGlvbnMuZ2RwciI6IkdEUFIgYW5kIHByaXZhY3kiLCJvcHRpb25zLnBkZlRyYW5zY3JpcHQiOiJEb3dubG9hZCB0cmFuc2NyaXB0Iiwib3B0aW9ucy5wbGF5U291bmRzIjoiUGxheSB0aGUgc291bmRzIiwib3B0aW9ucy50aXRsZSI6Ik9wdGlvbnMiLCJyYXRpbmcuYnV0dG9uLnJhdGUuYWdlbnQiOiJSYXRlIGNoYXQiLCJyYXRpbmcuYnV0dG9uLnJhdGUuYWkiOiJSYXRlIEFJIGNoYXRib3QiLCJyYXRpbmcuc3VibWl0LnN1Y2Nlc3MiOiJSYXRpbmcgc2VudCIsInJhdGluZy5zdWJtaXRGZWVkYmFjay5zdWNjZXNzIjoiVGhhbmsgeW91IGZvciB5b3VyIGZlZWRiYWNrIiwicmF0aW5nLndhc0l0SGVscGZ1bC5hZ2VudCI6IkhvdyB3b3VsZCB5b3UgcmF0ZSBvdXIgc3VwcG9ydD8iLCJyYXRpbmcud2FzSXRIZWxwZnVsLmFpIjoiSG93IHdvdWxkIHlvdSByYXRlIHRoZSBBSSBjaGF0Ym90IGV4cGVyaWVuY2U/Iiwic3RhdHVzQmFyLmJvdElkZW50aXR5IjoiQUkgYXNzaXN0YW50Iiwic3RhdHVzQmFyLm9mZmxpbmVUZXh0IjoiSGFwcHkgdG8gYW5zd2VyIHlvdSBsYXRlciIsInN0YXR1c0Jhci5vbmxpbmVUZXh0IjoiV2UgcmVwbHkgaW1tZWRpYXRlbHkiLCJzeXN0ZW1NZXNzYWdlLmNoYXRDbG9zZWQiOiJDaGF0IHdhcyBjbG9zZWQiLCJzeXN0ZW1NZXNzYWdlLmNoYXRSZXNvbHZlZCI6InJlc29sdmVkIGNvbnZlcnNhdGlvbiIsInRpY2tldEZvcm0ubGFiZWwubWVzc2FnZSI6IldoYXQgY2FuIHdlIGhlbHAgeW91IHdpdGg/IiwidGlja2V0Rm9ybS5tZXNzYWdlLnBsYWNlaG9sZGVyIjoiRGVzY3JpYmUgeW91ciBwcm9ibGVtIiwidGlja2V0Rm9ybS5zdWJtaXQuYnV0dG9uIjoi4pyJ77iPIENvbnRhY3QgdGhlIGFnZW50IGJ5IGVtYWlsIiwidGltZWFnby5YRGF5c0FnbyI6IiclcyBkYXlzIGFnbyIsInRpbWVhZ28uWEhvdXJzQWdvIjoiJXMgaG91cnMgYWdvIiwidGltZWFnby5YTWludXRlc0FnbyI6IiVzIG1pbnV0ZXMgYWdvIiwidGltZWFnby5YTW9udGhzQWdvIjoiJXMgbW9udGhzIGFnbyIsInRpbWVhZ28uWFNlY29uZHNBZ28iOiIlcyBzZWNvbmRzIGFnbyIsInRpbWVhZ28uWFdlZWtzQWdvIjoiJXMgd2Vla3MgYWdvIiwidGltZWFnby5YWWVhcnNBZ28iOiIlcyB5ZWFycyBhZ28iLCJ0aW1lYWdvLmp1c3ROb3ciOiJqdXN0IG5vdyIsInRpbWVhZ28ub25lRGF5QWdvIjoiMSBkYXkgYWdvIiwidGltZWFnby5vbmVIb3VyQWdvIjoiMSBob3VyIGFnbyIsInRpbWVhZ28ub25lTWludXRlQWdvIjoiMSBtaW51dGUgYWdvIiwidGltZWFnby5vbmVNb250aEFnbyI6IjEgbW9udGggYWdvIiwidGltZWFnby5vbmVXZWVrQWdvIjoiMSB3ZWVrIGFnbyIsInRpbWVhZ28ub25lWWVhckFnbyI6IjEgeWVhciBhZ28iLCJ0aW1lYWdvLnJpZ2h0Tm93IjoicmlnaHQgbm93IiwidGltZWFnby5zZWNvbmRzIjoiaW4gJXMgc2Vjb25kcyIsInRvb2x0aXAuYXR0YWNobWVudCI6IkF0dGFjaG1lbnQiLCJ0b29sdGlwLmNsb3NlIjoiQ2xvc2UiLCJ0b29sdGlwLmNvbGxhcHNlIjoiQ29sbGFwc2UgY2hhdCIsInRvb2x0aXAuZW1vamkiOiJFbW9qaSIsInRvb2x0aXAuZXhwYW5kIjoiRXhwYW5kIGNoYXQiLCJ0b29sdGlwLm1pbmltaXplIjoiTWluaW1pemUgY2hhdCIsInRvb2x0aXAubW9yZSI6IlNob3cgbW9yZSIsInRvb2x0aXAubW9yZUJ1dHRvbiI6IlNob3cgTW9yZSIsInRvb2x0aXAucmF0ZUNoYXQiOiJSYXRlIENoYXQiLCJ0b29sdGlwLnNlbmQiOiJTZW5kIiwidG9wQmFyLmVtYWlsVHJhbnNjcmlwdCI6IlNlbmQgZW1haWwgdHJhbnNjcmlwdCIsInRvcEJhci5nZHByVGl0bGUiOiJHRFBSIGFuZCBwcml2YWN5IiwidG9wQmFyLm9mZmxpbmUuaGVsbG8iOiJTZW5kIHVzIGEgbWVzc2FnZSIsInRvcEJhci5vbmxpbmUuaGVsbG8iOiJIb3cgY2FuIHdlIGhlbHA/IiwidG9wQmFyLnR1cm5PZmZTb3VuZHMiOiJUdXJuIG9mZiBzb3VuZHMiLCJ0b3BCYXIudHVybk9uU291bmRzIjoiVHVybiBvbiBzb3VuZHMiLCJ0cmlnZ2VyLm9wZW5DaGF0QnV0dG9uIjoiTGV0J3MgY2hhdCIsInRyaWdnZXIucmVwbHlCdXR0b24iOiJSZXBseSIsInZhbGlkYXRpb25zLmNoZWNrZWRUZXJtcyI6IllvdSBtdXN0IGFncmVlIHdpdGggdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIHRvIGNvbnRpbnVlIiwidmFsaWRhdGlvbnMuaXNFbWFpbCI6IlBsZWFzZSBlbnRlciB2YWxpZCBlbWFpbCIsInZhbGlkYXRpb25zLnBob25lIjoiUGxlYXNlIGVudGVyIGEgdmFsaWQgcGhvbmUgbnVtYmVyIiwidmFsaWRhdGlvbnMucmVxdWlyZWQiOiJQbGVhc2UgZmlsbCBvdXQgdGhpcyBmaWVsZCIsIndhcm5pbmdCYXIubWF4TGVuZ3RoIjoiWW91IGhhdmUgcmVhY2hlZCB0aGUgbWF4aW11bSBhbGxvd2VkIG51bWJlciBvZiBjaGFyYWN0ZXJzICgyMDAwKSIsIndhcm5pbmdCYXIuc2FtZU1lc3NhZ2VUd2ljZSI6IkNhbm5vdCBzZW5kIHRoZSBzYW1lIG1lc3NhZ2UgdHdpY2UgaW4gYSByb3cuIiwid2FybmluZ0Jhci5zcGFtUHJvdGVjdGlvbiI6IllvdXIgbWVzc2FnZXMgaGF2ZSBiZWVuIGlkZW50aWZpZWQgYXMgc3BhbS4gUGxlYXNlIHdhaXQgZm9yIDMwIHNlY29uZHMgYmVmb3JlIHNlbmRpbmcgYW5vdGhlciBtZXNzYWdlLiIsIndhcm5pbmdCYXIudXBsb2FkRmlsZU5vdEZpcnN0IjoiRmlyc3QgbWVzc2FnZSBjYW5ub3QgYmUgYSBmaWxlIiwid2lkZ2V0UHJldmlldy5jb250YWN0TWVzc2FnZSI6IvCfjokgTG9va3MgZmFudGFzdGljISDwn5Kq8J+PuyBMZXTCtHMgcm9jayB0aG9zZSBjb252ZXJzYXRpb25zIGFuZCBsZWF2ZSBhIGxhc3RpbmcgaW1wcmVzc2lvbiEg8J+agCIsIndpZGdldFByZXZpZXcud2VsY29tZU1lc3NhZ2UiOiLwn5GL8J+PuyBXZWxjb21lISBUaGlzIGlzIGEgc25lYWsgcGVlayBvZiB5b3VyIGNoYXQgYm94LiBHZXQgcmVhZHkgdG8gc2hpbmUg4pyoIGluIGN1c3RvbWVyIGludGVyYWN0aW9ucyEiLCJtZXNzYWdlLmRlbGV0ZWQiOiJUaGlzIG1lc3NhZ2Ugd2FzIHJlbW92ZWQifQ=="}},"time_used":3345,"timings":{"blocked":0,"dns":31,"connect":8,"send":0,"wait":9,"receive":0,"ssl":3297},"alerts":{"ids":null,"analyzer":null,"urlquery":null}},{"url":{"schema":"https","addr":"besttrader.live/aos/dist/aos.js","fqdn":"besttrader.live","domain":"besttrader.live","tld":"live"},"ip":{"addr":"50.6.200.60","port":443,"asn":19871,"as":"NETWORK-SOLUTIONS-HOSTING","country":"United States","country_code":"US"},"is_navigation_request":false,"resource_type":"script","requested_by":"https://besttrader.live/","date":"2026-07-27T04:24:16.060Z","timestamp":1785126256060,"http_version":"HTTP/2","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":"besttrader.live","organization":""},"issuer":{"commonName":"YR1","organization":"Let's Encrypt"},"validity":{"start":"Thu, 11 Jun 2026 04:22:29 GMT","end":"Wed, 09 Sep 2026 04:22:28 GMT"},"fingerprint":{"sha1":"E2:B4:3A:7E:14:38:77:B1:BD:57:ED:5E:BE:80:4A:F2:2A:5C:CE:FD","sha256":"62:50:3D:40:09:6C:C2:1A:B9:A6:BD:0E:F2:B4:BF:5E:5F:98:24:5F:57:49:16:B4:54:29:33:63:EF:6C:77:E2"}}},"request":{"raw":"GET /aos/dist/aos.js HTTP/1.1\r\nHost: besttrader.live\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://besttrader.live/\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\nserver: nginx\r\ndate: Mon, 27 Jul 2026 04:24:16 GMT\r\ncontent-type: application/javascript\r\nlast-modified: Sat, 07 Oct 2023 09:01:36 GMT\r\netag: W/\"65211e70-3962\"\r\nx-powered-by: PleskLin\r\ncontent-encoding: br\r\nX-Firefox-Spdy: h2\r\n\r\n","headers":null,"cookies":null,"status_code":"200","status_text":"","fingerprints":[{"name":"Nginx","description":"Nginx is a web server that can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.","website":"https://nginx.org/en","common_platform_enumeration":"cpe:2.3:a:f5:nginx:*:*:*:*:*:*:*:*","icon":"Nginx.svg","categories":["Web servers","Reverse proxies"]},{"name":"Plesk","description":"Plesk is a web hosting and server data centre automation software with a control panel developed for Linux and Windows-based retail hosting service providers.","website":"https://www.plesk.com","common_platform_enumeration":"cpe:2.3:a:parallels:parallels_plesk_panel:*:*:*:*:*:*:*:*","icon":"Plesk.svg","categories":["Hosting panels"]}],"data":{"size":14690,"size_decoded":4660,"mime_type":"application/javascript","magic":"JavaScript source, ASCII text, with very long lines (14690), with no line terminators","md5":"d3718e34eeb0355be8e3179a2e2bccb7","sha1":"850ee2e5c9fba610840137c6c4e92b5abbc428fe","sha256":"a5005b2e414770fd5ccb40bc221a12771966d02b5c1f9c89da48bd8e3811d377","sha512":"03b0189357c6297e92d92b07cb098f92b9f34d91eb822553ec671090b1837b67afd1a59bf337a3cadcd2f308e8ecf1845caa893ab8d0e28391b678a6211641b7","ssdeep":"384:3IJfNa+yGZHbXPgJT7UKEgMt1sH6GCZy54:4JfNa+yGZHbfgJT7URgesaGCZy54","tlshash":"d162e8dc3691f0a617a790f782bf600ff2f04874245d9090d269c4e63eb58ae8673e5e","first_seen":"2023-03-07T01:19:08Z","last_seen":"2026-07-27T06:49:58.632378Z","times_seen":10219,"resource_available":true,"data":"IWZ1bmN0aW9uKGUsdCl7Im9iamVjdCI9PXR5cGVvZiBleHBvcnRzJiYib2JqZWN0Ij09dHlwZW9mIG1vZHVsZT9tb2R1bGUuZXhwb3J0cz10KCk6ImZ1bmN0aW9uIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZD9kZWZpbmUoW10sdCk6Im9iamVjdCI9PXR5cGVvZiBleHBvcnRzP2V4cG9ydHMuQU9TPXQoKTplLkFPUz10KCl9KHRoaXMsZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oZSl7ZnVuY3Rpb24gdChvKXtpZihuW29dKXJldHVybiBuW29dLmV4cG9ydHM7dmFyIGk9bltvXT17ZXhwb3J0czp7fSxpZDpvLGxvYWRlZDohMX07cmV0dXJuIGVbb10uY2FsbChpLmV4cG9ydHMsaSxpLmV4cG9ydHMsdCksaS5sb2FkZWQ9ITAsaS5leHBvcnRzfXZhciBuPXt9O3JldHVybiB0Lm09ZSx0LmM9bix0LnA9ImRpc3QvIix0KDApfShbZnVuY3Rpb24oZSx0LG4peyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBvKGUpe3JldHVybiBlJiZlLl9fZXNNb2R1bGU/ZTp7ZGVmYXVsdDplfX12YXIgaT1PYmplY3QuYXNzaWdufHxmdW5jdGlvbihlKXtmb3IodmFyIHQ9MTt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKXt2YXIgbj1hcmd1bWVudHNbdF07Zm9yKHZhciBvIGluIG4pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG4sbykmJihlW29dPW5bb10pfXJldHVybiBlfSxyPW4oMSksYT0obyhyKSxuKDYpKSx1PW8oYSksYz1uKDcpLHM9byhjKSxmPW4oOCksZD1vKGYpLGw9big5KSxwPW8obCksbT1uKDEwKSxiPW8obSksdj1uKDExKSx5PW8odiksZz1uKDE0KSxoPW8oZyksdz1bXSxrPSExLHg9e29mZnNldDoxMjAsZGVsYXk6MCxlYXNpbmc6ImVhc2UiLGR1cmF0aW9uOjQwMCxkaXNhYmxlOiExLG9uY2U6ITEsc3RhcnRFdmVudDoiRE9NQ29udGVudExvYWRlZCIsdGhyb3R0bGVEZWxheTo5OSxkZWJvdW5jZURlbGF5OjUwLGRpc2FibGVNdXRhdGlvbk9ic2VydmVyOiExfSxqPWZ1bmN0aW9uKCl7dmFyIGU9YXJndW1lbnRzLmxlbmd0aD4wJiZ2b2lkIDAhPT1hcmd1bWVudHNbMF0mJmFyZ3VtZW50c1swXTtpZihlJiYoaz0hMCksaylyZXR1cm4gdz0oMCx5LmRlZmF1bHQpKHcseCksKDAsYi5kZWZhdWx0KSh3LHgub25jZSksd30sTz1mdW5jdGlvbigpe3c9KDAsaC5kZWZhdWx0KSgpLGooKX0sTT1mdW5jdGlvbigpe3cuZm9yRWFjaChmdW5jdGlvbihlLHQpe2Uubm9kZS5yZW1vdmVBdHRyaWJ1dGUoImRhdGEtYW9zIiksZS5ub2RlLnJlbW92ZUF0dHJpYnV0ZSgiZGF0YS1hb3MtZWFzaW5nIiksZS5ub2RlLnJlbW92ZUF0dHJpYnV0ZSgiZGF0YS1hb3MtZHVyYXRpb24iKSxlLm5vZGUucmVtb3ZlQXR0cmlidXRlKCJkYXRhLWFvcy1kZWxheSIpfSl9LFM9ZnVuY3Rpb24oZSl7cmV0dXJuIGU9PT0hMHx8Im1vYmlsZSI9PT1lJiZwLmRlZmF1bHQubW9iaWxlKCl8fCJwaG9uZSI9PT1lJiZwLmRlZmF1bHQucGhvbmUoKXx8InRhYmxldCI9PT1lJiZwLmRlZmF1bHQudGFibGV0KCl8fCJmdW5jdGlvbiI9PXR5cGVvZiBlJiZlKCk9PT0hMH0sXz1mdW5jdGlvbihlKXt4PWkoeCxlKSx3PSgwLGguZGVmYXVsdCkoKTt2YXIgdD1kb2N1bWVudC5hbGwmJiF3aW5kb3cuYXRvYjtyZXR1cm4gUyh4LmRpc2FibGUpfHx0P00oKTooeC5kaXNhYmxlTXV0YXRpb25PYnNlcnZlcnx8ZC5kZWZhdWx0LmlzU3VwcG9ydGVkKCl8fChjb25zb2xlLmluZm8oJ1xuICAgICAgYW9zOiBNdXRhdGlvbk9ic2VydmVyIGlzIG5vdCBzdXBwb3J0ZWQgb24gdGhpcyBicm93c2VyLFxuICAgICAgY29kZSBtdXRhdGlvbnMgb2JzZXJ2aW5nIGhhcyBiZWVuIGRpc2FibGVkLlxuICAgICAgWW91IG1heSBoYXZlIHRvIGNhbGwgInJlZnJlc2hIYXJkKCkiIGJ5IHlvdXJzZWxmLlxuICAgICcpLHguZGlzYWJsZU11dGF0aW9uT2JzZXJ2ZXI9ITApLGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImJvZHkiKS5zZXRBdHRyaWJ1dGUoImRhdGEtYW9zLWVhc2luZyIseC5lYXNpbmcpLGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImJvZHkiKS5zZXRBdHRyaWJ1dGUoImRhdGEtYW9zLWR1cmF0aW9uIix4LmR1cmF0aW9uKSxkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJib2R5Iikuc2V0QXR0cmlidXRlKCJkYXRhLWFvcy1kZWxheSIseC5kZWxheSksIkRPTUNvbnRlbnRMb2FkZWQiPT09eC5zdGFydEV2ZW50JiZbImNvbXBsZXRlIiwiaW50ZXJhY3RpdmUiXS5pbmRleE9mKGRvY3VtZW50LnJlYWR5U3RhdGUpPi0xP2ooITApOiJsb2FkIj09PXguc3RhcnRFdmVudD93aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcih4LnN0YXJ0RXZlbnQsZnVuY3Rpb24oKXtqKCEwKX0pOmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoeC5zdGFydEV2ZW50LGZ1bmN0aW9uKCl7aighMCl9KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIiwoMCxzLmRlZmF1bHQpKGoseC5kZWJvdW5jZURlbGF5LCEwKSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9yaWVudGF0aW9uY2hhbmdlIiwoMCxzLmRlZmF1bHQpKGoseC5kZWJvdW5jZURlbGF5LCEwKSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsKDAsdS5kZWZhdWx0KShmdW5jdGlvbigpeygwLGIuZGVmYXVsdCkodyx4Lm9uY2UpfSx4LnRocm90dGxlRGVsYXkpKSx4LmRpc2FibGVNdXRhdGlvbk9ic2VydmVyfHxkLmRlZmF1bHQucmVhZHkoIltkYXRhLWFvc10iLE8pLHcpfTtlLmV4cG9ydHM9e2luaXQ6XyxyZWZyZXNoOmoscmVmcmVzaEhhcmQ6T319LGZ1bmN0aW9uKGUsdCl7fSwsLCwsZnVuY3Rpb24oZSx0KXsoZnVuY3Rpb24odCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG4oZSx0LG4pe2Z1bmN0aW9uIG8odCl7dmFyIG49YixvPXY7cmV0dXJuIGI9dj12b2lkIDAsaz10LGc9ZS5hcHBseShvLG4pfWZ1bmN0aW9uIHIoZSl7cmV0dXJuIGs9ZSxoPXNldFRpbWVvdXQoZix0KSxNP28oZSk6Z31mdW5jdGlvbiBhKGUpe3ZhciBuPWUtdyxvPWUtayxpPXQtbjtyZXR1cm4gUz9qKGkseS1vKTppfWZ1bmN0aW9uIGMoZSl7dmFyIG49ZS13LG89ZS1rO3JldHVybiB2b2lkIDA9PT13fHxuPj10fHxuPDB8fFMmJm8+PXl9ZnVuY3Rpb24gZigpe3ZhciBlPU8oKTtyZXR1cm4gYyhlKT9kKGUpOnZvaWQoaD1zZXRUaW1lb3V0KGYsYShlKSkpfWZ1bmN0aW9uIGQoZSl7cmV0dXJuIGg9dm9pZCAwLF8mJmI/byhlKTooYj12PXZvaWQgMCxnKX1mdW5jdGlvbiBsKCl7dm9pZCAwIT09aCYmY2xlYXJUaW1lb3V0KGgpLGs9MCxiPXc9dj1oPXZvaWQgMH1mdW5jdGlvbiBwKCl7cmV0dXJuIHZvaWQgMD09PWg/ZzpkKE8oKSl9ZnVuY3Rpb24gbSgpe3ZhciBlPU8oKSxuPWMoZSk7aWYoYj1hcmd1bWVudHMsdj10aGlzLHc9ZSxuKXtpZih2b2lkIDA9PT1oKXJldHVybiByKHcpO2lmKFMpcmV0dXJuIGg9c2V0VGltZW91dChmLHQpLG8odyl9cmV0dXJuIHZvaWQgMD09PWgmJihoPXNldFRpbWVvdXQoZix0KSksZ312YXIgYix2LHksZyxoLHcsaz0wLE09ITEsUz0hMSxfPSEwO2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBlKXRocm93IG5ldyBUeXBlRXJyb3Iocyk7cmV0dXJuIHQ9dSh0KXx8MCxpKG4pJiYoTT0hIW4ubGVhZGluZyxTPSJtYXhXYWl0ImluIG4seT1TP3godShuLm1heFdhaXQpfHwwLHQpOnksXz0idHJhaWxpbmciaW4gbj8hIW4udHJhaWxpbmc6XyksbS5jYW5jZWw9bCxtLmZsdXNoPXAsbX1mdW5jdGlvbiBvKGUsdCxvKXt2YXIgcj0hMCxhPSEwO2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBlKXRocm93IG5ldyBUeXBlRXJyb3Iocyk7cmV0dXJuIGkobykmJihyPSJsZWFkaW5nImluIG8/ISFvLmxlYWRpbmc6cixhPSJ0cmFpbGluZyJpbiBvPyEhby50cmFpbGluZzphKSxuKGUsdCx7bGVhZGluZzpyLG1heFdhaXQ6dCx0cmFpbGluZzphfSl9ZnVuY3Rpb24gaShlKXt2YXIgdD0idW5kZWZpbmVkIj09dHlwZW9mIGU/InVuZGVmaW5lZCI6YyhlKTtyZXR1cm4hIWUmJigib2JqZWN0Ij09dHx8ImZ1bmN0aW9uIj09dCl9ZnVuY3Rpb24gcihlKXtyZXR1cm4hIWUmJiJvYmplY3QiPT0oInVuZGVmaW5lZCI9PXR5cGVvZiBlPyJ1bmRlZmluZWQiOmMoZSkpfWZ1bmN0aW9uIGEoZSl7cmV0dXJuInN5bWJvbCI9PSgidW5kZWZpbmVkIj09dHlwZW9mIGU/InVuZGVmaW5lZCI6YyhlKSl8fHIoZSkmJmsuY2FsbChlKT09ZH1mdW5jdGlvbiB1KGUpe2lmKCJudW1iZXIiPT10eXBlb2YgZSlyZXR1cm4gZTtpZihhKGUpKXJldHVybiBmO2lmKGkoZSkpe3ZhciB0PSJmdW5jdGlvbiI9PXR5cGVvZiBlLnZhbHVlT2Y/ZS52YWx1ZU9mKCk6ZTtlPWkodCk/dCsiIjp0fWlmKCJzdHJpbmciIT10eXBlb2YgZSlyZXR1cm4gMD09PWU/ZTorZTtlPWUucmVwbGFjZShsLCIiKTt2YXIgbj1tLnRlc3QoZSk7cmV0dXJuIG58fGIudGVzdChlKT92KGUuc2xpY2UoMiksbj8yOjgpOnAudGVzdChlKT9mOitlfXZhciBjPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKGUpe3JldHVybiB0eXBlb2YgZX06ZnVuY3Rpb24oZSl7cmV0dXJuIGUmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJmUuY29uc3RydWN0b3I9PT1TeW1ib2wmJmUhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiBlfSxzPSJFeHBlY3RlZCBhIGZ1bmN0aW9uIixmPU5hTixkPSJbb2JqZWN0IFN5bWJvbF0iLGw9L15ccyt8XHMrJC9nLHA9L15bLStdMHhbMC05YS1mXSskL2ksbT0vXjBiWzAxXSskL2ksYj0vXjBvWzAtN10rJC9pLHY9cGFyc2VJbnQseT0ib2JqZWN0Ij09KCJ1bmRlZmluZWQiPT10eXBlb2YgdD8idW5kZWZpbmVkIjpjKHQpKSYmdCYmdC5PYmplY3Q9PT1PYmplY3QmJnQsZz0ib2JqZWN0Ij09KCJ1bmRlZmluZWQiPT10eXBlb2Ygc2VsZj8idW5kZWZpbmVkIjpjKHNlbGYpKSYmc2VsZiYmc2VsZi5PYmplY3Q9PT1PYmplY3QmJnNlbGYsaD15fHxnfHxGdW5jdGlvbigicmV0dXJuIHRoaXMiKSgpLHc9T2JqZWN0LnByb3RvdHlwZSxrPXcudG9TdHJpbmcseD1NYXRoLm1heCxqPU1hdGgubWluLE89ZnVuY3Rpb24oKXtyZXR1cm4gaC5EYXRlLm5vdygpfTtlLmV4cG9ydHM9b30pLmNhbGwodCxmdW5jdGlvbigpe3JldHVybiB0aGlzfSgpKX0sZnVuY3Rpb24oZSx0KXsoZnVuY3Rpb24odCl7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG4oZSx0LG4pe2Z1bmN0aW9uIGkodCl7dmFyIG49YixvPXY7cmV0dXJuIGI9dj12b2lkIDAsTz10LGc9ZS5hcHBseShvLG4pfWZ1bmN0aW9uIHIoZSl7cmV0dXJuIE89ZSxoPXNldFRpbWVvdXQoZix0KSxNP2koZSk6Z31mdW5jdGlvbiB1KGUpe3ZhciBuPWUtdyxvPWUtTyxpPXQtbjtyZXR1cm4gUz94KGkseS1vKTppfWZ1bmN0aW9uIHMoZSl7dmFyIG49ZS13LG89ZS1PO3JldHVybiB2b2lkIDA9PT13fHxuPj10fHxuPDB8fFMmJm8+PXl9ZnVuY3Rpb24gZigpe3ZhciBlPWooKTtyZXR1cm4gcyhlKT9kKGUpOnZvaWQoaD1zZXRUaW1lb3V0KGYsdShlKSkpfWZ1bmN0aW9uIGQoZSl7cmV0dXJuIGg9dm9pZCAwLF8mJmI/aShlKTooYj12PXZvaWQgMCxnKX1mdW5jdGlvbiBsKCl7dm9pZCAwIT09aCYmY2xlYXJUaW1lb3V0KGgpLE89MCxiPXc9dj1oPXZvaWQgMH1mdW5jdGlvbiBwKCl7cmV0dXJuIHZvaWQgMD09PWg/ZzpkKGooKSl9ZnVuY3Rpb24gbSgpe3ZhciBlPWooKSxuPXMoZSk7aWYoYj1hcmd1bWVudHMsdj10aGlzLHc9ZSxuKXtpZih2b2lkIDA9PT1oKXJldHVybiByKHcpO2lmKFMpcmV0dXJuIGg9c2V0VGltZW91dChmLHQpLGkodyl9cmV0dXJuIHZvaWQgMD09PWgmJihoPXNldFRpbWVvdXQoZix0KSksZ312YXIgYix2LHksZyxoLHcsTz0wLE09ITEsUz0hMSxfPSEwO2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBlKXRocm93IG5ldyBUeXBlRXJyb3IoYyk7cmV0dXJuIHQ9YSh0KXx8MCxvKG4pJiYoTT0hIW4ubGVhZGluZyxTPSJtYXhXYWl0ImluIG4seT1TP2soYShuLm1heFdhaXQpfHwwLHQpOnksXz0idHJhaWxpbmciaW4gbj8hIW4udHJhaWxpbmc6XyksbS5jYW5jZWw9bCxtLmZsdXNoPXAsbX1mdW5jdGlvbiBvKGUpe3ZhciB0PSJ1bmRlZmluZWQiPT10eXBlb2YgZT8idW5kZWZpbmVkIjp1KGUpO3JldHVybiEhZSYmKCJvYmplY3QiPT10fHwiZnVuY3Rpb24iPT10KX1mdW5jdGlvbiBpKGUpe3JldHVybiEhZSYmIm9iamVjdCI9PSgidW5kZWZpbmVkIj09dHlwZW9mIGU/InVuZGVmaW5lZCI6dShlKSl9ZnVuY3Rpb24gcihlKXtyZXR1cm4ic3ltYm9sIj09KCJ1bmRlZmluZWQiPT10eXBlb2YgZT8idW5kZWZpbmVkIjp1KGUpKXx8aShlKSYmdy5jYWxsKGUpPT1mfWZ1bmN0aW9uIGEoZSl7aWYoIm51bWJlciI9PXR5cGVvZiBlKXJldHVybiBlO2lmKHIoZSkpcmV0dXJuIHM7aWYobyhlKSl7dmFyIHQ9ImZ1bmN0aW9uIj09dHlwZW9mIGUudmFsdWVPZj9lLnZhbHVlT2YoKTplO2U9byh0KT90KyIiOnR9aWYoInN0cmluZyIhPXR5cGVvZiBlKXJldHVybiAwPT09ZT9lOitlO2U9ZS5yZXBsYWNlKGQsIiIpO3ZhciBuPXAudGVzdChlKTtyZXR1cm4gbnx8bS50ZXN0KGUpP2IoZS5zbGljZSgyKSxuPzI6OCk6bC50ZXN0KGUpP3M6K2V9dmFyIHU9ImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PXR5cGVvZiBTeW1ib2wuaXRlcmF0b3I/ZnVuY3Rpb24oZSl7cmV0dXJuIHR5cGVvZiBlfTpmdW5jdGlvbihlKXtyZXR1cm4gZSYmImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmZS5jb25zdHJ1Y3Rvcj09PVN5bWJvbCYmZSE9PVN5bWJvbC5wcm90b3R5cGU/InN5bWJvbCI6dHlwZW9mIGV9LGM9IkV4cGVjdGVkIGEgZnVuY3Rpb24iLHM9TmFOLGY9IltvYmplY3QgU3ltYm9sXSIsZD0vXlxzK3xccyskL2csbD0vXlstK10weFswLTlhLWZdKyQvaSxwPS9eMGJbMDFdKyQvaSxtPS9eMG9bMC03XSskL2ksYj1wYXJzZUludCx2PSJvYmplY3QiPT0oInVuZGVmaW5lZCI9PXR5cGVvZiB0PyJ1bmRlZmluZWQiOnUodCkpJiZ0JiZ0Lk9iamVjdD09PU9iamVjdCYmdCx5PSJvYmplY3QiPT0oInVuZGVmaW5lZCI9PXR5cGVvZiBzZWxmPyJ1bmRlZmluZWQiOnUoc2VsZikpJiZzZWxmJiZzZWxmLk9iamVjdD09PU9iamVjdCYmc2VsZixnPXZ8fHl8fEZ1bmN0aW9uKCJyZXR1cm4gdGhpcyIpKCksaD1PYmplY3QucHJvdG90eXBlLHc9aC50b1N0cmluZyxrPU1hdGgubWF4LHg9TWF0aC5taW4saj1mdW5jdGlvbigpe3JldHVybiBnLkRhdGUubm93KCl9O2UuZXhwb3J0cz1ufSkuY2FsbCh0LGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9KCkpfSxmdW5jdGlvbihlLHQpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBuKGUpe3ZhciB0PXZvaWQgMCxvPXZvaWQgMCxpPXZvaWQgMDtmb3IodD0wO3Q8ZS5sZW5ndGg7dCs9MSl7aWYobz1lW3RdLG8uZGF0YXNldCYmby5kYXRhc2V0LmFvcylyZXR1cm4hMDtpZihpPW8uY2hpbGRyZW4mJm4oby5jaGlsZHJlbikpcmV0dXJuITB9cmV0dXJuITF9ZnVuY3Rpb24gbygpe3JldHVybiB3aW5kb3cuTXV0YXRpb25PYnNlcnZlcnx8d2luZG93LldlYktpdE11dGF0aW9uT2JzZXJ2ZXJ8fHdpbmRvdy5Nb3pNdXRhdGlvbk9ic2VydmVyfWZ1bmN0aW9uIGkoKXtyZXR1cm4hIW8oKX1mdW5jdGlvbiByKGUsdCl7dmFyIG49d2luZG93LmRvY3VtZW50LGk9bygpLHI9bmV3IGkoYSk7dT10LHIub2JzZXJ2ZShuLmRvY3VtZW50RWxlbWVudCx7Y2hpbGRMaXN0OiEwLHN1YnRyZWU6ITAscmVtb3ZlZE5vZGVzOiEwfSl9ZnVuY3Rpb24gYShlKXtlJiZlLmZvckVhY2goZnVuY3Rpb24oZSl7dmFyIHQ9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZS5hZGRlZE5vZGVzKSxvPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGUucmVtb3ZlZE5vZGVzKSxpPXQuY29uY2F0KG8pO2lmKG4oaSkpcmV0dXJuIHUoKX0pfU9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgdT1mdW5jdGlvbigpe307dC5kZWZhdWx0PXtpc1N1cHBvcnRlZDppLHJlYWR5OnJ9fSxmdW5jdGlvbihlLHQpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBuKGUsdCl7aWYoIShlIGluc3RhbmNlb2YgdCkpdGhyb3cgbmV3IFR5cGVFcnJvcigiQ2Fubm90IGNhbGwgYSBjbGFzcyBhcyBhIGZ1bmN0aW9uIil9ZnVuY3Rpb24gbygpe3JldHVybiBuYXZpZ2F0b3IudXNlckFnZW50fHxuYXZpZ2F0b3IudmVuZG9yfHx3aW5kb3cub3BlcmF8fCIifU9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgaT1mdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSx0KXtmb3IodmFyIG49MDtuPHQubGVuZ3RoO24rKyl7dmFyIG89dFtuXTtvLmVudW1lcmFibGU9by5lbnVtZXJhYmxlfHwhMSxvLmNvbmZpZ3VyYWJsZT0hMCwidmFsdWUiaW4gbyYmKG8ud3JpdGFibGU9ITApLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLG8ua2V5LG8pfX1yZXR1cm4gZnVuY3Rpb24odCxuLG8pe3JldHVybiBuJiZlKHQucHJvdG90eXBlLG4pLG8mJmUodCxvKSx0fX0oKSxyPS8oYW5kcm9pZHxiYlxkK3xtZWVnbykuK21vYmlsZXxhdmFudGdvfGJhZGFcL3xibGFja2JlcnJ5fGJsYXplcnxjb21wYWx8ZWxhaW5lfGZlbm5lY3xoaXB0b3B8aWVtb2JpbGV8aXAoaG9uZXxvZCl8aXJpc3xraW5kbGV8bGdlIHxtYWVtb3xtaWRwfG1tcHxtb2JpbGUuK2ZpcmVmb3h8bmV0ZnJvbnR8b3BlcmEgbShvYnxpbilpfHBhbG0oIG9zKT98cGhvbmV8cChpeGl8cmUpXC98cGx1Y2tlcnxwb2NrZXR8cHNwfHNlcmllcyg0fDYpMHxzeW1iaWFufHRyZW98dXBcLihicm93c2VyfGxpbmspfHZvZGFmb25lfHdhcHx3aW5kb3dzIGNlfHhkYXx4aWluby9pLGE9LzEyMDd8NjMxMHw2NTkwfDNnc298NHRocHw1MFsxLTZdaXw3NzBzfDgwMnN8YSB3YXxhYmFjfGFjKGVyfG9vfHNcLSl8YWkoa298cm4pfGFsKGF2fGNhfGNvKXxhbW9pfGFuKGV4fG55fHl3KXxhcHR1fGFyKGNofGdvKXxhcyh0ZXx1cyl8YXR0d3xhdShkaXxcLW18ciB8cyApfGF2YW58YmUoY2t8bGx8bnEpfGJpKGxifHJkKXxibChhY3xheil8YnIoZXx2KXd8YnVtYnxid1wtKG58dSl8YzU1XC98Y2FwaXxjY3dhfGNkbVwtfGNlbGx8Y2h0bXxjbGRjfGNtZFwtfGNvKG1wfG5kKXxjcmF3fGRhKGl0fGxsfG5nKXxkYnRlfGRjXC1zfGRldml8ZGljYXxkbW9ifGRvKGN8cClvfGRzKDEyfFwtZCl8ZWwoNDl8YWkpfGVtKGwyfHVsKXxlcihpY3xrMCl8ZXNsOHxleihbNC03XTB8b3N8d2F8emUpfGZldGN8Zmx5KFwtfF8pfGcxIHV8ZzU2MHxnZW5lfGdmXC01fGdcLW1vfGdvKFwud3xvZCl8Z3IoYWR8dW4pfGhhaWV8aGNpdHxoZFwtKG18cHx0KXxoZWlcLXxoaShwdHx0YSl8aHAoIGl8aXApfGhzXC1jfGh0KGMoXC18IHxffGF8Z3xwfHN8dCl8dHApfGh1KGF3fHRjKXxpXC0oMjB8Z298bWEpfGkyMzB8aWFjKCB8XC18XC8pfGlicm98aWRlYXxpZzAxfGlrb218aW0xa3xpbm5vfGlwYXF8aXJpc3xqYSh0fHYpYXxqYnJvfGplbXV8amlnc3xrZGRpfGtlaml8a2d0KCB8XC8pfGtsb258a3B0IHxrd2NcLXxreW8oY3xrKXxsZShub3x4aSl8bGcoIGd8XC8oa3xsfHUpfDUwfDU0fFwtW2Etd10pfGxpYnd8bHlueHxtMVwtd3xtM2dhfG01MFwvfG1hKHRlfHVpfHhvKXxtYygwMXwyMXxjYSl8bVwtY3J8bWUocmN8cmkpfG1pKG84fG9hfHRzKXxtbWVmfG1vKDAxfDAyfGJpfGRlfGRvfHQoXC18IHxvfHYpfHp6KXxtdCg1MHxwMXx2ICl8bXdicHxteXdhfG4xMFswLTJdfG4yMFsyLTNdfG4zMCgwfDIpfG41MCgwfDJ8NSl8bjcoMCgwfDEpfDEwKXxuZSgoY3xtKVwtfG9ufHRmfHdmfHdnfHd0KXxub2soNnxpKXxuenBofG8yaW18b3AodGl8d3YpfG9yYW58b3dnMXxwODAwfHBhbihhfGR8dCl8cGR4Z3xwZygxM3xcLShbMS04XXxjKSl8cGhpbHxwaXJlfHBsKGF5fHVjKXxwblwtMnxwbyhja3xydHxzZSl8cHJveHxwc2lvfHB0XC1nfHFhXC1hfHFjKDA3fDEyfDIxfDMyfDYwfFwtWzItN118aVwtKXxxdGVrfHIzODB8cjYwMHxyYWtzfHJpbTl8cm8odmV8em8pfHM1NVwvfHNhKGdlfG1hfG1tfG1zfG55fHZhKXxzYygwMXxoXC18b298cFwtKXxzZGtcL3xzZShjKFwtfDB8MSl8NDd8bWN8bmR8cmkpfHNnaFwtfHNoYXJ8c2llKFwtfG0pfHNrXC0wfHNsKDQ1fGlkKXxzbShhbHxhcnxiM3xpdHx0NSl8c28oZnR8bnkpfHNwKDAxfGhcLXx2XC18diApfHN5KDAxfG1iKXx0MigxOHw1MCl8dDYoMDB8MTB8MTgpfHRhKGd0fGxrKXx0Y2xcLXx0ZGdcLXx0ZWwoaXxtKXx0aW1cLXx0XC1tb3x0byhwbHxzaCl8dHMoNzB8bVwtfG0zfG01KXx0eFwtOXx1cChcLmJ8ZzF8c2kpfHV0c3R8djQwMHx2NzUwfHZlcml8dmkocmd8dGUpfHZrKDQwfDVbMC0zXXxcLXYpfHZtNDB8dm9kYXx2dWxjfHZ4KDUyfDUzfDYwfDYxfDcwfDgwfDgxfDgzfDg1fDk4KXx3M2MoXC18ICl8d2ViY3x3aGl0fHdpKGcgfG5jfG53KXx3bWxifHdvbnV8eDcwMHx5YXNcLXx5b3VyfHpldG98enRlXC0vaSx1PS8oYW5kcm9pZHxiYlxkK3xtZWVnbykuK21vYmlsZXxhdmFudGdvfGJhZGFcL3xibGFja2JlcnJ5fGJsYXplcnxjb21wYWx8ZWxhaW5lfGZlbm5lY3xoaXB0b3B8aWVtb2JpbGV8aXAoaG9uZXxvZCl8aXJpc3xraW5kbGV8bGdlIHxtYWVtb3xtaWRwfG1tcHxtb2JpbGUuK2ZpcmVmb3h8bmV0ZnJvbnR8b3BlcmEgbShvYnxpbilpfHBhbG0oIG9zKT98cGhvbmV8cChpeGl8cmUpXC98cGx1Y2tlcnxwb2NrZXR8cHNwfHNlcmllcyg0fDYpMHxzeW1iaWFufHRyZW98dXBcLihicm93c2VyfGxpbmspfHZvZGFmb25lfHdhcHx3aW5kb3dzIGNlfHhkYXx4aWlub3xhbmRyb2lkfGlwYWR8cGxheWJvb2t8c2lsay9pLGM9LzEyMDd8NjMxMHw2NTkwfDNnc298NHRocHw1MFsxLTZdaXw3NzBzfDgwMnN8YSB3YXxhYmFjfGFjKGVyfG9vfHNcLSl8YWkoa298cm4pfGFsKGF2fGNhfGNvKXxhbW9pfGFuKGV4fG55fHl3KXxhcHR1fGFyKGNofGdvKXxhcyh0ZXx1cyl8YXR0d3xhdShkaXxcLW18ciB8cyApfGF2YW58YmUoY2t8bGx8bnEpfGJpKGxifHJkKXxibChhY3xheil8YnIoZXx2KXd8YnVtYnxid1wtKG58dSl8YzU1XC98Y2FwaXxjY3dhfGNkbVwtfGNlbGx8Y2h0bXxjbGRjfGNtZFwtfGNvKG1wfG5kKXxjcmF3fGRhKGl0fGxsfG5nKXxkYnRlfGRjXC1zfGRldml8ZGljYXxkbW9ifGRvKGN8cClvfGRzKDEyfFwtZCl8ZWwoNDl8YWkpfGVtKGwyfHVsKXxlcihpY3xrMCl8ZXNsOHxleihbNC03XTB8b3N8d2F8emUpfGZldGN8Zmx5KFwtfF8pfGcxIHV8ZzU2MHxnZW5lfGdmXC01fGdcLW1vfGdvKFwud3xvZCl8Z3IoYWR8dW4pfGhhaWV8aGNpdHxoZFwtKG18cHx0KXxoZWlcLXxoaShwdHx0YSl8aHAoIGl8aXApfGhzXC1jfGh0KGMoXC18IHxffGF8Z3xwfHN8dCl8dHApfGh1KGF3fHRjKXxpXC0oMjB8Z298bWEpfGkyMzB8aWFjKCB8XC18XC8pfGlicm98aWRlYXxpZzAxfGlrb218aW0xa3xpbm5vfGlwYXF8aXJpc3xqYSh0fHYpYXxqYnJvfGplbXV8amlnc3xrZGRpfGtlaml8a2d0KCB8XC8pfGtsb258a3B0IHxrd2NcLXxreW8oY3xrKXxsZShub3x4aSl8bGcoIGd8XC8oa3xsfHUpfDUwfDU0fFwtW2Etd10pfGxpYnd8bHlueHxtMVwtd3xtM2dhfG01MFwvfG1hKHRlfHVpfHhvKXxtYygwMXwyMXxjYSl8bVwtY3J8bWUocmN8cmkpfG1pKG84fG9hfHRzKXxtbWVmfG1vKDAxfDAyfGJpfGRlfGRvfHQoXC18IHxvfHYpfHp6KXxtdCg1MHxwMXx2ICl8bXdicHxteXdhfG4xMFswLTJdfG4yMFsyLTNdfG4zMCgwfDIpfG41MCgwfDJ8NSl8bjcoMCgwfDEpfDEwKXxuZSgoY3xtKVwtfG9ufHRmfHdmfHdnfHd0KXxub2soNnxpKXxuenBofG8yaW18b3AodGl8d3YpfG9yYW58b3dnMXxwODAwfHBhbihhfGR8dCl8cGR4Z3xwZygxM3xcLShbMS04XXxjKSl8cGhpbHxwaXJlfHBsKGF5fHVjKXxwblwtMnxwbyhja3xydHxzZSl8cHJveHxwc2lvfHB0XC1nfHFhXC1hfHFjKDA3fDEyfDIxfDMyfDYwfFwtWzItN118aVwtKXxxdGVrfHIzODB8cjYwMHxyYWtzfHJpbTl8cm8odmV8em8pfHM1NVwvfHNhKGdlfG1hfG1tfG1zfG55fHZhKXxzYygwMXxoXC18b298cFwtKXxzZGtcL3xzZShjKFwtfDB8MSl8NDd8bWN8bmR8cmkpfHNnaFwtfHNoYXJ8c2llKFwtfG0pfHNrXC0wfHNsKDQ1fGlkKXxzbShhbHxhcnxiM3xpdHx0NSl8c28oZnR8bnkpfHNwKDAxfGhcLXx2XC18diApfHN5KDAxfG1iKXx0MigxOHw1MCl8dDYoMDB8MTB8MTgpfHRhKGd0fGxrKXx0Y2xcLXx0ZGdcLXx0ZWwoaXxtKXx0aW1cLXx0XC1tb3x0byhwbHxzaCl8dHMoNzB8bVwtfG0zfG01KXx0eFwtOXx1cChcLmJ8ZzF8c2kpfHV0c3R8djQwMHx2NzUwfHZlcml8dmkocmd8dGUpfHZrKDQwfDVbMC0zXXxcLXYpfHZtNDB8dm9kYXx2dWxjfHZ4KDUyfDUzfDYwfDYxfDcwfDgwfDgxfDgzfDg1fDk4KXx3M2MoXC18ICl8d2ViY3x3aGl0fHdpKGcgfG5jfG53KXx3bWxifHdvbnV8eDcwMHx5YXNcLXx5b3VyfHpldG98enRlXC0vaSxzPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gZSgpe24odGhpcyxlKX1yZXR1cm4gaShlLFt7a2V5OiJwaG9uZSIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgZT1vKCk7cmV0dXJuISghci50ZXN0KGUpJiYhYS50ZXN0KGUuc3Vic3RyKDAsNCkpKX19LHtrZXk6Im1vYmlsZSIsdmFsdWU6ZnVuY3Rpb24oKXt2YXIgZT1vKCk7cmV0dXJuISghdS50ZXN0KGUpJiYhYy50ZXN0KGUuc3Vic3RyKDAsNCkpKX19LHtrZXk6InRhYmxldCIsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tb2JpbGUoKSYmIXRoaXMucGhvbmUoKX19XSksZX0oKTt0LmRlZmF1bHQ9bmV3IHN9LGZ1bmN0aW9uKGUsdCl7InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj1mdW5jdGlvbihlLHQsbil7dmFyIG89ZS5ub2RlLmdldEF0dHJpYnV0ZSgiZGF0YS1hb3Mtb25jZSIpO3Q+ZS5wb3NpdGlvbj9lLm5vZGUuY2xhc3NMaXN0LmFkZCgiYW9zLWFuaW1hdGUiKToidW5kZWZpbmVkIiE9dHlwZW9mIG8mJigiZmFsc2UiPT09b3x8IW4mJiJ0cnVlIiE9PW8pJiZlLm5vZGUuY2xhc3NMaXN0LnJlbW92ZSgiYW9zLWFuaW1hdGUiKX0sbz1mdW5jdGlvbihlLHQpe3ZhciBvPXdpbmRvdy5wYWdlWU9mZnNldCxpPXdpbmRvdy5pbm5lckhlaWdodDtlLmZvckVhY2goZnVuY3Rpb24oZSxyKXtuKGUsaStvLHQpfSl9O3QuZGVmYXVsdD1vfSxmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG8oZSl7cmV0dXJuIGUmJmUuX19lc01vZHVsZT9lOntkZWZhdWx0OmV9fU9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgaT1uKDEyKSxyPW8oaSksYT1mdW5jdGlvbihlLHQpe3JldHVybiBlLmZvckVhY2goZnVuY3Rpb24oZSxuKXtlLm5vZGUuY2xhc3NMaXN0LmFkZCgiYW9zLWluaXQiKSxlLnBvc2l0aW9uPSgwLHIuZGVmYXVsdCkoZS5ub2RlLHQub2Zmc2V0KX0pLGV9O3QuZGVmYXVsdD1hfSxmdW5jdGlvbihlLHQsbil7InVzZSBzdHJpY3QiO2Z1bmN0aW9uIG8oZSl7cmV0dXJuIGUmJmUuX19lc01vZHVsZT9lOntkZWZhdWx0OmV9fU9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgaT1uKDEzKSxyPW8oaSksYT1mdW5jdGlvbihlLHQpe3ZhciBuPTAsbz0wLGk9d2luZG93LmlubmVySGVpZ2h0LGE9e29mZnNldDplLmdldEF0dHJpYnV0ZSgiZGF0YS1hb3Mtb2Zmc2V0IiksYW5jaG9yOmUuZ2V0QXR0cmlidXRlKCJkYXRhLWFvcy1hbmNob3IiKSxhbmNob3JQbGFjZW1lbnQ6ZS5nZXRBdHRyaWJ1dGUoImRhdGEtYW9zLWFuY2hvci1wbGFjZW1lbnQiKX07c3dpdGNoKGEub2Zmc2V0JiYhaXNOYU4oYS5vZmZzZXQpJiYobz1wYXJzZUludChhLm9mZnNldCkpLGEuYW5jaG9yJiZkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKGEuYW5jaG9yKSYmKGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChhLmFuY2hvcilbMF0pLG49KDAsci5kZWZhdWx0KShlKS50b3AsYS5hbmNob3JQbGFjZW1lbnQpe2Nhc2UidG9wLWJvdHRvbSI6YnJlYWs7Y2FzZSJjZW50ZXItYm90dG9tIjpuKz1lLm9mZnNldEhlaWdodC8yO2JyZWFrO2Nhc2UiYm90dG9tLWJvdHRvbSI6bis9ZS5vZmZzZXRIZWlnaHQ7YnJlYWs7Y2FzZSJ0b3AtY2VudGVyIjpuKz1pLzI7YnJlYWs7Y2FzZSJib3R0b20tY2VudGVyIjpuKz1pLzIrZS5vZmZzZXRIZWlnaHQ7YnJlYWs7Y2FzZSJjZW50ZXItY2VudGVyIjpuKz1pLzIrZS5vZmZzZXRIZWlnaHQvMjticmVhaztjYXNlInRvcC10b3AiOm4rPWk7YnJlYWs7Y2FzZSJib3R0b20tdG9wIjpuKz1lLm9mZnNldEhlaWdodCtpO2JyZWFrO2Nhc2UiY2VudGVyLXRvcCI6bis9ZS5vZmZzZXRIZWlnaHQvMitpfXJldHVybiBhLmFuY2hvclBsYWNlbWVudHx8YS5vZmZzZXR8fGlzTmFOKHQpfHwobz10KSxuK299O3QuZGVmYXVsdD1hfSxmdW5jdGlvbihlLHQpeyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGVydHkodCwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSk7dmFyIG49ZnVuY3Rpb24oZSl7Zm9yKHZhciB0PTAsbj0wO2UmJiFpc05hTihlLm9mZnNldExlZnQpJiYhaXNOYU4oZS5vZmZzZXRUb3ApOyl0Kz1lLm9mZnNldExlZnQtKCJCT0RZIiE9ZS50YWdOYW1lP2Uuc2Nyb2xsTGVmdDowKSxuKz1lLm9mZnNldFRvcC0oIkJPRFkiIT1lLnRhZ05hbWU/ZS5zY3JvbGxUb3A6MCksZT1lLm9mZnNldFBhcmVudDtyZXR1cm57dG9wOm4sbGVmdDp0fX07dC5kZWZhdWx0PW59LGZ1bmN0aW9uKGUsdCl7InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KTt2YXIgbj1mdW5jdGlvbihlKXtyZXR1cm4gZT1lfHxkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCJbZGF0YS1hb3NdIiksQXJyYXkucHJvdG90eXBlLm1hcC5jYWxsKGUsZnVuY3Rpb24oZSl7cmV0dXJue25vZGU6ZX19KX07dC5kZWZhdWx0PW59XSl9KTs="}},"time_used":344,"timings":{"blocked":-1,"dns":0,"connect":0,"send":0,"wait":344,"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":"besttrader.live","verdict":"malicious","severity":"medium","comment":"","link":"https://www.joindns4.eu/","meta":null},{"sensor_name":"opendns","sensor_type":"DNS","title":"OpenDNS","description":"OpenDNS","scan_date":"2026-07-27","alert":"Phishing Block","trigger":"besttrader.live","verdict":"phishing","severity":"medium","comment":"","link":"https://www.opendns.com/","meta":null}],"urlquery":null}}]}
